summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrian Evans <grknight@gentoo.org>2018-11-20 10:51:06 -0500
committerBrian Evans <grknight@gentoo.org>2018-11-20 10:51:06 -0500
commit1ea74fa59d8d1c6c12d20be6c8e7d5ac7f370fdb (patch)
treead113bd05db878a61b503938c05fe046eca25ee0
parentLinkAttributes: Update to v0.2 (diff)
downloadextensions-1ea74fa59d8d1c6c12d20be6c8e7d5ac7f370fdb.tar.gz
extensions-1ea74fa59d8d1c6c12d20be6c8e7d5ac7f370fdb.tar.bz2
extensions-1ea74fa59d8d1c6c12d20be6c8e7d5ac7f370fdb.zip
Update to MediaWikiLanguageExtensionBundle-2018.10
Signed-off-by: Brian Evans <grknight@gentoo.org>
-rw-r--r--MLEB/Babel/Babel.class.php512
-rw-r--r--MLEB/Babel/Babel.i18n.magic.php215
-rw-r--r--MLEB/Babel/Babel.i18n.php35
-rw-r--r--MLEB/Babel/Babel.php87
-rw-r--r--MLEB/Babel/BabelAutoCreate.class.php102
-rw-r--r--MLEB/Babel/BabelLanguageCodes.class.php79
-rw-r--r--MLEB/Babel/BabelStatic.class.php26
-rw-r--r--MLEB/Babel/COPYING8
-rw-r--r--MLEB/Babel/RELEASE-NOTES9
-rw-r--r--MLEB/Babel/codes.cdbbin238136 -> 242786 bytes
-rw-r--r--MLEB/Babel/codes.txt715
-rw-r--r--MLEB/Babel/composer.json25
-rw-r--r--MLEB/Babel/i18n/af.json10
-rw-r--r--MLEB/Babel/i18n/aln.json6
-rw-r--r--MLEB/Babel/i18n/am.json12
-rw-r--r--MLEB/Babel/i18n/an.json1
-rw-r--r--MLEB/Babel/i18n/anp.json36
-rw-r--r--MLEB/Babel/i18n/ar.json7
-rw-r--r--MLEB/Babel/i18n/arn.json1
-rw-r--r--MLEB/Babel/i18n/ary.json1
-rw-r--r--MLEB/Babel/i18n/arz.json1
-rw-r--r--MLEB/Babel/i18n/as.json1
-rw-r--r--MLEB/Babel/i18n/ast.json9
-rw-r--r--MLEB/Babel/i18n/avk.json1
-rw-r--r--MLEB/Babel/i18n/awa.json1
-rw-r--r--MLEB/Babel/i18n/ay.json1
-rw-r--r--MLEB/Babel/i18n/azb.json17
-rw-r--r--MLEB/Babel/i18n/ba.json6
-rw-r--r--MLEB/Babel/i18n/bar.json1
-rw-r--r--MLEB/Babel/i18n/bcc.json1
-rw-r--r--MLEB/Babel/i18n/bcl.json1
-rw-r--r--MLEB/Babel/i18n/be-tarask.json10
-rw-r--r--MLEB/Babel/i18n/be.json9
-rw-r--r--MLEB/Babel/i18n/bew.json1
-rw-r--r--MLEB/Babel/i18n/bg.json6
-rw-r--r--MLEB/Babel/i18n/bgn.json13
-rw-r--r--MLEB/Babel/i18n/bho.json8
-rw-r--r--MLEB/Babel/i18n/bjn.json1
-rw-r--r--MLEB/Babel/i18n/bn.json9
-rw-r--r--MLEB/Babel/i18n/bpy.json1
-rw-r--r--MLEB/Babel/i18n/br.json8
-rw-r--r--MLEB/Babel/i18n/bs.json8
-rw-r--r--MLEB/Babel/i18n/ca.json15
-rw-r--r--MLEB/Babel/i18n/cdo.json1
-rw-r--r--MLEB/Babel/i18n/ce.json14
-rw-r--r--MLEB/Babel/i18n/ckb.json19
-rw-r--r--MLEB/Babel/i18n/cps.json1
-rw-r--r--MLEB/Babel/i18n/crh.json24
-rw-r--r--MLEB/Babel/i18n/cs.json42
-rw-r--r--MLEB/Babel/i18n/csb.json7
-rw-r--r--MLEB/Babel/i18n/cv.json2
-rw-r--r--MLEB/Babel/i18n/cy.json11
-rw-r--r--MLEB/Babel/i18n/da.json9
-rw-r--r--MLEB/Babel/i18n/de.json41
-rw-r--r--MLEB/Babel/i18n/diq.json28
-rw-r--r--MLEB/Babel/i18n/dsb.json1
-rw-r--r--MLEB/Babel/i18n/dtp.json1
-rw-r--r--MLEB/Babel/i18n/dty.json13
-rw-r--r--MLEB/Babel/i18n/egl.json3
-rw-r--r--MLEB/Babel/i18n/el.json18
-rw-r--r--MLEB/Babel/i18n/eml.json3
-rw-r--r--MLEB/Babel/i18n/en-gb.json12
-rw-r--r--MLEB/Babel/i18n/en.json70
-rw-r--r--MLEB/Babel/i18n/eo.json9
-rw-r--r--MLEB/Babel/i18n/es.json14
-rw-r--r--MLEB/Babel/i18n/et.json1
-rw-r--r--MLEB/Babel/i18n/eu.json12
-rw-r--r--MLEB/Babel/i18n/fa.json10
-rw-r--r--MLEB/Babel/i18n/fi.json8
-rw-r--r--MLEB/Babel/i18n/fo.json1
-rw-r--r--MLEB/Babel/i18n/fr.json50
-rw-r--r--MLEB/Babel/i18n/frp.json1
-rw-r--r--MLEB/Babel/i18n/frr.json29
-rw-r--r--MLEB/Babel/i18n/fur.json1
-rw-r--r--MLEB/Babel/i18n/fy.json1
-rw-r--r--MLEB/Babel/i18n/ga.json1
-rw-r--r--MLEB/Babel/i18n/gan.json52
-rw-r--r--MLEB/Babel/i18n/gbz.json17
-rw-r--r--MLEB/Babel/i18n/gd.json1
-rw-r--r--MLEB/Babel/i18n/gl.json12
-rw-r--r--MLEB/Babel/i18n/gom-latn.json2
-rw-r--r--MLEB/Babel/i18n/gor.json2
-rw-r--r--MLEB/Babel/i18n/got.json28
-rw-r--r--MLEB/Babel/i18n/grc.json1
-rw-r--r--MLEB/Babel/i18n/gsw.json1
-rw-r--r--MLEB/Babel/i18n/gu.json10
-rw-r--r--MLEB/Babel/i18n/gv.json1
-rw-r--r--MLEB/Babel/i18n/haw.json1
-rw-r--r--MLEB/Babel/i18n/he.json11
-rw-r--r--MLEB/Babel/i18n/hi.json20
-rw-r--r--MLEB/Babel/i18n/hif-latn.json1
-rw-r--r--MLEB/Babel/i18n/hil.json1
-rw-r--r--MLEB/Babel/i18n/hr.json11
-rw-r--r--MLEB/Babel/i18n/hsb.json1
-rw-r--r--MLEB/Babel/i18n/hu-formal.json1
-rw-r--r--MLEB/Babel/i18n/hu.json10
-rw-r--r--MLEB/Babel/i18n/hy.json19
-rw-r--r--MLEB/Babel/i18n/ia.json13
-rw-r--r--MLEB/Babel/i18n/id.json13
-rw-r--r--MLEB/Babel/i18n/ie.json1
-rw-r--r--MLEB/Babel/i18n/ig.json23
-rw-r--r--MLEB/Babel/i18n/ilo.json9
-rw-r--r--MLEB/Babel/i18n/inh.json27
-rw-r--r--MLEB/Babel/i18n/io.json24
-rw-r--r--MLEB/Babel/i18n/is.json10
-rw-r--r--MLEB/Babel/i18n/it.json11
-rw-r--r--MLEB/Babel/i18n/ja.json13
-rw-r--r--MLEB/Babel/i18n/jam.json20
-rw-r--r--MLEB/Babel/i18n/jbo.json5
-rw-r--r--MLEB/Babel/i18n/jv.json37
-rw-r--r--MLEB/Babel/i18n/ka.json6
-rw-r--r--MLEB/Babel/i18n/kea.json8
-rw-r--r--MLEB/Babel/i18n/kg.json1
-rw-r--r--MLEB/Babel/i18n/khw.json33
-rw-r--r--MLEB/Babel/i18n/kiu.json6
-rw-r--r--MLEB/Babel/i18n/kk-cyrl.json7
-rw-r--r--MLEB/Babel/i18n/km.json2
-rw-r--r--MLEB/Babel/i18n/ko.json21
-rw-r--r--MLEB/Babel/i18n/krc.json4
-rw-r--r--MLEB/Babel/i18n/ksh.json43
-rw-r--r--MLEB/Babel/i18n/ku-latn.json10
-rw-r--r--MLEB/Babel/i18n/kw.json1
-rw-r--r--MLEB/Babel/i18n/ky.json1
-rw-r--r--MLEB/Babel/i18n/la.json1
-rw-r--r--MLEB/Babel/i18n/lad.json6
-rw-r--r--MLEB/Babel/i18n/lb.json8
-rw-r--r--MLEB/Babel/i18n/lez.json5
-rw-r--r--MLEB/Babel/i18n/lfn.json5
-rw-r--r--MLEB/Babel/i18n/li.json23
-rw-r--r--MLEB/Babel/i18n/lij.json45
-rw-r--r--MLEB/Babel/i18n/liv.json1
-rw-r--r--MLEB/Babel/i18n/lki.json45
-rw-r--r--MLEB/Babel/i18n/lmo.json1
-rw-r--r--MLEB/Babel/i18n/lo.json1
-rw-r--r--MLEB/Babel/i18n/lrc.json43
-rw-r--r--MLEB/Babel/i18n/lt.json15
-rw-r--r--MLEB/Babel/i18n/lus.json1
-rw-r--r--MLEB/Babel/i18n/luz.json30
-rw-r--r--MLEB/Babel/i18n/lv.json9
-rw-r--r--MLEB/Babel/i18n/lzz.json1
-rw-r--r--MLEB/Babel/i18n/mai.json3
-rw-r--r--MLEB/Babel/i18n/map-bms.json1
-rw-r--r--MLEB/Babel/i18n/mg.json5
-rw-r--r--MLEB/Babel/i18n/mhr.json11
-rw-r--r--MLEB/Babel/i18n/min.json1
-rw-r--r--MLEB/Babel/i18n/mk.json11
-rw-r--r--MLEB/Babel/i18n/ml.json1
-rw-r--r--MLEB/Babel/i18n/mn.json1
-rw-r--r--MLEB/Babel/i18n/mo.json28
-rw-r--r--MLEB/Babel/i18n/mr.json20
-rw-r--r--MLEB/Babel/i18n/ms.json8
-rw-r--r--MLEB/Babel/i18n/mt.json1
-rw-r--r--MLEB/Babel/i18n/mwl.json13
-rw-r--r--MLEB/Babel/i18n/my.json10
-rw-r--r--MLEB/Babel/i18n/nah.json50
-rw-r--r--MLEB/Babel/i18n/nap.json44
-rw-r--r--MLEB/Babel/i18n/nb.json46
-rw-r--r--MLEB/Babel/i18n/nds-nl.json1
-rw-r--r--MLEB/Babel/i18n/nds.json1
-rw-r--r--MLEB/Babel/i18n/ne.json14
-rw-r--r--MLEB/Babel/i18n/new.json1
-rw-r--r--MLEB/Babel/i18n/nl-informal.json3
-rw-r--r--MLEB/Babel/i18n/nl.json11
-rw-r--r--MLEB/Babel/i18n/nn.json38
-rw-r--r--MLEB/Babel/i18n/nso.json1
-rw-r--r--MLEB/Babel/i18n/oc.json3
-rw-r--r--MLEB/Babel/i18n/or.json15
-rw-r--r--MLEB/Babel/i18n/os.json1
-rw-r--r--MLEB/Babel/i18n/pa.json3
-rw-r--r--MLEB/Babel/i18n/pcd.json1
-rw-r--r--MLEB/Babel/i18n/pdc.json1
-rw-r--r--MLEB/Babel/i18n/pfl.json1
-rw-r--r--MLEB/Babel/i18n/pl.json11
-rw-r--r--MLEB/Babel/i18n/pms.json1
-rw-r--r--MLEB/Babel/i18n/pnb.json33
-rw-r--r--MLEB/Babel/i18n/pnt.json1
-rw-r--r--MLEB/Babel/i18n/ps.json1
-rw-r--r--MLEB/Babel/i18n/pt-br.json18
-rw-r--r--MLEB/Babel/i18n/pt.json35
-rw-r--r--MLEB/Babel/i18n/qqq.json15
-rw-r--r--MLEB/Babel/i18n/qu.json1
-rw-r--r--MLEB/Babel/i18n/rgn.json1
-rw-r--r--MLEB/Babel/i18n/rm.json1
-rw-r--r--MLEB/Babel/i18n/ro.json12
-rw-r--r--MLEB/Babel/i18n/roa-tara.json9
-rw-r--r--MLEB/Babel/i18n/ru.json14
-rw-r--r--MLEB/Babel/i18n/rue.json1
-rw-r--r--MLEB/Babel/i18n/rw.json1
-rw-r--r--MLEB/Babel/i18n/sa.json22
-rw-r--r--MLEB/Babel/i18n/sah.json7
-rw-r--r--MLEB/Babel/i18n/sat.json38
-rw-r--r--MLEB/Babel/i18n/sc.json1
-rw-r--r--MLEB/Babel/i18n/scn.json1
-rw-r--r--MLEB/Babel/i18n/sco.json1
-rw-r--r--MLEB/Babel/i18n/sd.json20
-rw-r--r--MLEB/Babel/i18n/sg.json1
-rw-r--r--MLEB/Babel/i18n/sh.json40
-rw-r--r--MLEB/Babel/i18n/shi.json32
-rw-r--r--MLEB/Babel/i18n/si.json1
-rw-r--r--MLEB/Babel/i18n/sk.json25
-rw-r--r--MLEB/Babel/i18n/sl.json15
-rw-r--r--MLEB/Babel/i18n/sli.json1
-rw-r--r--MLEB/Babel/i18n/sq.json34
-rw-r--r--MLEB/Babel/i18n/sr-ec.json6
-rw-r--r--MLEB/Babel/i18n/sr-el.json6
-rw-r--r--MLEB/Babel/i18n/stq.json1
-rw-r--r--MLEB/Babel/i18n/su.json1
-rw-r--r--MLEB/Babel/i18n/sv.json14
-rw-r--r--MLEB/Babel/i18n/sw.json1
-rw-r--r--MLEB/Babel/i18n/szl.json10
-rw-r--r--MLEB/Babel/i18n/ta.json1
-rw-r--r--MLEB/Babel/i18n/te.json1
-rw-r--r--MLEB/Babel/i18n/tg-cyrl.json13
-rw-r--r--MLEB/Babel/i18n/th.json1
-rw-r--r--MLEB/Babel/i18n/tk.json1
-rw-r--r--MLEB/Babel/i18n/tl.json1
-rw-r--r--MLEB/Babel/i18n/tly.json1
-rw-r--r--MLEB/Babel/i18n/tokipona.json19
-rw-r--r--MLEB/Babel/i18n/tr.json1
-rw-r--r--MLEB/Babel/i18n/ts.json1
-rw-r--r--MLEB/Babel/i18n/tt-cyrl.json8
-rw-r--r--MLEB/Babel/i18n/tt.json34
-rw-r--r--MLEB/Babel/i18n/ttt.json7
-rw-r--r--MLEB/Babel/i18n/tyv.json11
-rw-r--r--MLEB/Babel/i18n/udm.json8
-rw-r--r--MLEB/Babel/i18n/ug-arab.json1
-rw-r--r--MLEB/Babel/i18n/uk.json13
-rw-r--r--MLEB/Babel/i18n/ur.json45
-rw-r--r--MLEB/Babel/i18n/uz.json6
-rw-r--r--MLEB/Babel/i18n/vec.json1
-rw-r--r--MLEB/Babel/i18n/vep.json1
-rw-r--r--MLEB/Babel/i18n/vi.json1
-rw-r--r--MLEB/Babel/i18n/vmf.json14
-rw-r--r--MLEB/Babel/i18n/vo.json1
-rw-r--r--MLEB/Babel/i18n/vot.json1
-rw-r--r--MLEB/Babel/i18n/wa.json1
-rw-r--r--MLEB/Babel/i18n/war.json1
-rw-r--r--MLEB/Babel/i18n/wuu.json8
-rw-r--r--MLEB/Babel/i18n/xmf.json1
-rw-r--r--MLEB/Babel/i18n/yi.json3
-rw-r--r--MLEB/Babel/i18n/yue.json11
-rw-r--r--MLEB/Babel/i18n/zh-cn.json24
-rw-r--r--MLEB/Babel/i18n/zh-hans.json10
-rw-r--r--MLEB/Babel/i18n/zh-hant.json15
-rw-r--r--MLEB/Babel/i18n/zh-hk.json32
-rw-r--r--MLEB/Babel/i18n/zh-sg.json24
-rw-r--r--MLEB/Babel/i18n/zh-tw.json54
-rw-r--r--MLEB/Babel/i18n/zh.json12
-rw-r--r--MLEB/Babel/names.cdbbin285951 -> 291838 bytes
-rw-r--r--MLEB/Babel/resources/ext.babel.css198
-rw-r--r--MLEB/Babel/tab2txt.php7
-rw-r--r--MLEB/Babel/txt2cdb.php7
-rw-r--r--MLEB/CleanChanges/.idea/.name1
-rw-r--r--MLEB/CleanChanges/.idea/CleanChanges.iml9
-rw-r--r--MLEB/CleanChanges/.idea/encodings.xml5
-rw-r--r--MLEB/CleanChanges/.idea/misc.xml5
-rw-r--r--MLEB/CleanChanges/.idea/modules.xml9
-rw-r--r--MLEB/CleanChanges/.idea/scopes/scope_settings.xml5
-rw-r--r--MLEB/CleanChanges/.idea/vcs.xml7
-rw-r--r--MLEB/CleanChanges/.idea/workspace.xml172
-rw-r--r--MLEB/CleanChanges/.jshintrc21
-rw-r--r--MLEB/CleanChanges/CleanChanges.i18n.php35
-rw-r--r--MLEB/CleanChanges/CleanChanges.php65
-rw-r--r--MLEB/CleanChanges/CleanChanges_body.php191
-rw-r--r--MLEB/CleanChanges/Filters.php143
-rw-r--r--MLEB/CleanChanges/RELEASE-NOTES8
-rw-r--r--MLEB/CleanChanges/Resources.php17
-rw-r--r--MLEB/CleanChanges/composer.json25
-rw-r--r--MLEB/CleanChanges/i18n/ar.json5
-rw-r--r--MLEB/CleanChanges/i18n/azb.json5
-rw-r--r--MLEB/CleanChanges/i18n/ce.json2
-rw-r--r--MLEB/CleanChanges/i18n/diq.json8
-rw-r--r--MLEB/CleanChanges/i18n/en.json22
-rw-r--r--MLEB/CleanChanges/i18n/es.json5
-rw-r--r--MLEB/CleanChanges/i18n/gl.json7
-rw-r--r--MLEB/CleanChanges/i18n/hi.json7
-rw-r--r--MLEB/CleanChanges/i18n/hr.json7
-rw-r--r--MLEB/CleanChanges/i18n/kk-cyrl.json1
-rw-r--r--MLEB/CleanChanges/i18n/km.json4
-rw-r--r--MLEB/CleanChanges/i18n/ko.json2
-rw-r--r--MLEB/CleanChanges/i18n/krc.json3
-rw-r--r--MLEB/CleanChanges/i18n/ksh.json6
-rw-r--r--MLEB/CleanChanges/i18n/lt.json2
-rw-r--r--MLEB/CleanChanges/i18n/nah.json15
-rw-r--r--MLEB/CleanChanges/i18n/nb.json3
-rw-r--r--MLEB/CleanChanges/i18n/pa.json4
-rw-r--r--MLEB/CleanChanges/i18n/pl.json5
-rw-r--r--MLEB/CleanChanges/i18n/ps.json6
-rw-r--r--MLEB/CleanChanges/i18n/pt.json2
-rw-r--r--MLEB/CleanChanges/i18n/qqq.json5
-rw-r--r--MLEB/CleanChanges/i18n/rif.json7
-rw-r--r--MLEB/CleanChanges/i18n/ru.json5
-rw-r--r--MLEB/CleanChanges/i18n/su.json2
-rw-r--r--MLEB/CleanChanges/i18n/zh-hans.json5
-rw-r--r--MLEB/CleanChanges/i18n/zh-hant.json7
-rw-r--r--MLEB/CleanChanges/images/Arr_.pngbin96 -> 82 bytes
-rw-r--r--MLEB/CleanChanges/images/Arr_d.pngbin205 -> 190 bytes
-rw-r--r--MLEB/CleanChanges/images/Arr_l.pngbin205 -> 205 bytes
-rw-r--r--MLEB/CleanChanges/images/Arr_r.pngbin206 -> 204 bytes
-rw-r--r--MLEB/CleanChanges/images/Arr_u.pngbin207 -> 195 bytes
-rw-r--r--MLEB/CleanChanges/images/showuserlinks.pngbin204 -> 148 bytes
-rw-r--r--MLEB/CleanChanges/resources/cleanchanges.js41
-rw-r--r--MLEB/CleanChanges/resources/cleanchanges.uls.css20
-rw-r--r--MLEB/CleanChanges/resources/cleanchanges.uls.js18
-rw-r--r--MLEB/LocalisationUpdate/Autoload.php31
-rw-r--r--MLEB/LocalisationUpdate/LocalisationUpdate.class.php99
-rw-r--r--MLEB/LocalisationUpdate/LocalisationUpdate.i18n.php35
-rw-r--r--MLEB/LocalisationUpdate/LocalisationUpdate.php60
-rw-r--r--MLEB/LocalisationUpdate/QuickArrayReader.php204
-rw-r--r--MLEB/LocalisationUpdate/README2
-rw-r--r--MLEB/LocalisationUpdate/RELEASE-NOTES9
-rw-r--r--MLEB/LocalisationUpdate/Updater.php194
-rw-r--r--MLEB/LocalisationUpdate/fetcher/Fetcher.php26
-rw-r--r--MLEB/LocalisationUpdate/fetcher/FetcherFactory.php24
-rw-r--r--MLEB/LocalisationUpdate/fetcher/FileSystemFetcher.php35
-rw-r--r--MLEB/LocalisationUpdate/fetcher/GitHubFetcher.php38
-rw-r--r--MLEB/LocalisationUpdate/fetcher/HttpFetcher.php40
-rw-r--r--MLEB/LocalisationUpdate/finder/Finder.php107
-rw-r--r--MLEB/LocalisationUpdate/i18n/ca.json5
-rw-r--r--MLEB/LocalisationUpdate/i18n/de.json4
-rw-r--r--MLEB/LocalisationUpdate/i18n/en.json13
-rw-r--r--MLEB/LocalisationUpdate/i18n/es.json5
-rw-r--r--MLEB/LocalisationUpdate/i18n/mk.json1
-rw-r--r--MLEB/LocalisationUpdate/i18n/nb.json4
-rw-r--r--MLEB/LocalisationUpdate/i18n/pt.json2
-rw-r--r--MLEB/LocalisationUpdate/i18n/qqq.json1
-rw-r--r--MLEB/LocalisationUpdate/i18n/sr-ec.json5
-rw-r--r--MLEB/LocalisationUpdate/reader/JSONReader.php30
-rw-r--r--MLEB/LocalisationUpdate/reader/PHPReader.php54
-rw-r--r--MLEB/LocalisationUpdate/reader/Reader.php19
-rw-r--r--MLEB/LocalisationUpdate/reader/ReaderFactory.php36
-rw-r--r--MLEB/LocalisationUpdate/tests/phpunit/UpdaterTest.php47
-rw-r--r--MLEB/LocalisationUpdate/tests/phpunit/finder/FinderTest.php47
-rw-r--r--MLEB/LocalisationUpdate/tests/phpunit/reader/JSONReaderTest.php33
-rw-r--r--MLEB/LocalisationUpdate/tests/phpunit/reader/ReaderFactoryTest.php33
-rw-r--r--MLEB/LocalisationUpdate/update.php42
-rw-r--r--MLEB/Translate/.jshintignore4
-rw-r--r--MLEB/Translate/.jshintrc29
-rw-r--r--MLEB/Translate/.rubocop.yml1
-rw-r--r--MLEB/Translate/.rubocop_todo.yml110
-rw-r--r--MLEB/Translate/Autoload.php104
-rw-r--r--MLEB/Translate/CHANGELOG793
-rw-r--r--MLEB/Translate/Gemfile7
-rw-r--r--MLEB/Translate/Gemfile.lock81
-rw-r--r--MLEB/Translate/MediaWikiMessageChecker.php125
-rw-r--r--MLEB/Translate/Message.php40
-rw-r--r--MLEB/Translate/MessageChecks.php130
-rw-r--r--MLEB/Translate/MessageCollection.php219
-rw-r--r--MLEB/Translate/MessageGroupConfigurationParser.php15
-rw-r--r--MLEB/Translate/MessageGroups.php455
-rw-r--r--MLEB/Translate/MetaYamlSchemaExtender.php2
-rw-r--r--MLEB/Translate/PageTranslation.i18n.php35
-rw-r--r--MLEB/Translate/RELEASE-NOTES17
-rw-r--r--MLEB/Translate/Resources.php681
-rw-r--r--MLEB/Translate/Translate.MyLanguage.alias.php309
-rw-r--r--MLEB/Translate/Translate.alias.php1998
-rw-r--r--MLEB/Translate/Translate.i18n.magic.php12
-rw-r--r--MLEB/Translate/Translate.i18n.php35
-rw-r--r--MLEB/Translate/Translate.php451
-rw-r--r--MLEB/Translate/TranslateEditAddons.php225
-rw-r--r--MLEB/Translate/TranslateGroupDescriptions.i18n.php35
-rw-r--r--MLEB/Translate/TranslateHooks.php539
-rw-r--r--MLEB/Translate/TranslateSandbox.i18n.php35
-rw-r--r--MLEB/Translate/TranslateSearch.i18n.php35
-rw-r--r--MLEB/Translate/TranslateTasks.php427
-rw-r--r--MLEB/Translate/TranslateUtils.php286
-rw-r--r--MLEB/Translate/api/ApiAggregateGroups.php163
-rw-r--r--MLEB/Translate/api/ApiGroupReview.php138
-rw-r--r--MLEB/Translate/api/ApiHardMessages.php193
-rw-r--r--MLEB/Translate/api/ApiQueryLanguageStats.php59
-rw-r--r--MLEB/Translate/api/ApiQueryMessageCollection.php225
-rw-r--r--MLEB/Translate/api/ApiQueryMessageGroupStats.php59
-rw-r--r--MLEB/Translate/api/ApiQueryMessageGroups.php188
-rw-r--r--MLEB/Translate/api/ApiQueryMessageTranslations.php98
-rw-r--r--MLEB/Translate/api/ApiQueryTranslationAids.php110
-rw-r--r--MLEB/Translate/api/ApiStatsQuery.php76
-rw-r--r--MLEB/Translate/api/ApiTTMServer.php77
-rw-r--r--MLEB/Translate/api/ApiTranslateSandbox.php129
-rw-r--r--MLEB/Translate/api/ApiTranslateUser.php86
-rw-r--r--MLEB/Translate/api/ApiTranslationReview.php125
-rw-r--r--MLEB/Translate/api/ApiTranslationStash.php108
-rw-r--r--MLEB/Translate/composer.json32
-rw-r--r--MLEB/Translate/data/group-yaml-schema.yaml13
-rw-r--r--MLEB/Translate/ffs/AmdFFS.php38
-rw-r--r--MLEB/Translate/ffs/AndroidXmlFFS.php165
-rw-r--r--MLEB/Translate/ffs/AppleFFS.php23
-rw-r--r--MLEB/Translate/ffs/DtdFFS.php18
-rw-r--r--MLEB/Translate/ffs/FFS.php28
-rw-r--r--MLEB/Translate/ffs/FlatPhpFFS.php49
-rw-r--r--MLEB/Translate/ffs/GettextFFS.php153
-rw-r--r--MLEB/Translate/ffs/IniFFS.php18
-rw-r--r--MLEB/Translate/ffs/IntuitionTextdomains.php20
-rw-r--r--MLEB/Translate/ffs/JavaFFS.php50
-rw-r--r--MLEB/Translate/ffs/JavaScriptFFS.php50
-rw-r--r--MLEB/Translate/ffs/JsonFFS.php98
-rw-r--r--MLEB/Translate/ffs/MediaWikiComplexMessages.php173
-rw-r--r--MLEB/Translate/ffs/MediaWikiExtensionFFS.php289
-rw-r--r--MLEB/Translate/ffs/MediaWikiExtensions.php122
-rw-r--r--MLEB/Translate/ffs/RubyYamlFFS.php170
-rw-r--r--MLEB/Translate/ffs/SimpleFFS.php43
-rw-r--r--MLEB/Translate/ffs/XliffFFS.php15
-rw-r--r--MLEB/Translate/ffs/YamlFFS.php188
-rw-r--r--MLEB/Translate/hooks.txt37
-rw-r--r--MLEB/Translate/i18n/api/ar.json127
-rw-r--r--MLEB/Translate/i18n/api/ast.json108
-rw-r--r--MLEB/Translate/i18n/api/ca.json6
-rw-r--r--MLEB/Translate/i18n/api/de.json81
-rw-r--r--MLEB/Translate/i18n/api/en.json85
-rw-r--r--MLEB/Translate/i18n/api/es.json72
-rw-r--r--MLEB/Translate/i18n/api/eu.json10
-rw-r--r--MLEB/Translate/i18n/api/fy.json5
-rw-r--r--MLEB/Translate/i18n/api/gl.json106
-rw-r--r--MLEB/Translate/i18n/api/he.json96
-rw-r--r--MLEB/Translate/i18n/api/ia.json6
-rw-r--r--MLEB/Translate/i18n/api/it.json59
-rw-r--r--MLEB/Translate/i18n/api/ka.json4
-rw-r--r--MLEB/Translate/i18n/api/ksh.json28
-rw-r--r--MLEB/Translate/i18n/api/lb.json31
-rw-r--r--MLEB/Translate/i18n/api/lv.json13
-rw-r--r--MLEB/Translate/i18n/api/mk.json85
-rw-r--r--MLEB/Translate/i18n/api/ms.json3
-rw-r--r--MLEB/Translate/i18n/api/nl.json26
-rw-r--r--MLEB/Translate/i18n/api/pl.json39
-rw-r--r--MLEB/Translate/i18n/api/ps.json16
-rw-r--r--MLEB/Translate/i18n/api/pt-br.json128
-rw-r--r--MLEB/Translate/i18n/api/pt.json129
-rw-r--r--MLEB/Translate/i18n/api/qqq.json80
-rw-r--r--MLEB/Translate/i18n/api/ru.json87
-rw-r--r--MLEB/Translate/i18n/api/sv.json45
-rw-r--r--MLEB/Translate/i18n/api/uk.json125
-rw-r--r--MLEB/Translate/i18n/api/zh-hans.json95
-rw-r--r--MLEB/Translate/i18n/api/zh-hant.json126
-rw-r--r--MLEB/Translate/i18n/core/ace.json8
-rw-r--r--MLEB/Translate/i18n/core/aeb-latn.json5
-rw-r--r--MLEB/Translate/i18n/core/af.json53
-rw-r--r--MLEB/Translate/i18n/core/aln.json4
-rw-r--r--MLEB/Translate/i18n/core/ar.json201
-rw-r--r--MLEB/Translate/i18n/core/arc.json5
-rw-r--r--MLEB/Translate/i18n/core/arq.json5
-rw-r--r--MLEB/Translate/i18n/core/ary.json7
-rw-r--r--MLEB/Translate/i18n/core/arz.json41
-rw-r--r--MLEB/Translate/i18n/core/as.json28
-rw-r--r--MLEB/Translate/i18n/core/ast.json70
-rw-r--r--MLEB/Translate/i18n/core/av.json4
-rw-r--r--MLEB/Translate/i18n/core/awa.json4
-rw-r--r--MLEB/Translate/i18n/core/az.json17
-rw-r--r--MLEB/Translate/i18n/core/azb.json58
-rw-r--r--MLEB/Translate/i18n/core/ba.json28
-rw-r--r--MLEB/Translate/i18n/core/bar.json2
-rw-r--r--MLEB/Translate/i18n/core/bcl.json7
-rw-r--r--MLEB/Translate/i18n/core/be-tarask.json75
-rw-r--r--MLEB/Translate/i18n/core/be.json27
-rw-r--r--MLEB/Translate/i18n/core/bg.json119
-rw-r--r--MLEB/Translate/i18n/core/bgn.json9
-rw-r--r--MLEB/Translate/i18n/core/bho.json9
-rw-r--r--MLEB/Translate/i18n/core/bn.json134
-rw-r--r--MLEB/Translate/i18n/core/bo.json4
-rw-r--r--MLEB/Translate/i18n/core/br.json53
-rw-r--r--MLEB/Translate/i18n/core/bs.json208
-rw-r--r--MLEB/Translate/i18n/core/ca.json56
-rw-r--r--MLEB/Translate/i18n/core/cdo.json6
-rw-r--r--MLEB/Translate/i18n/core/ce.json83
-rw-r--r--MLEB/Translate/i18n/core/ckb.json39
-rw-r--r--MLEB/Translate/i18n/core/cs.json65
-rw-r--r--MLEB/Translate/i18n/core/csb.json5
-rw-r--r--MLEB/Translate/i18n/core/cu.json2
-rw-r--r--MLEB/Translate/i18n/core/cv.json19
-rw-r--r--MLEB/Translate/i18n/core/cy.json21
-rw-r--r--MLEB/Translate/i18n/core/da.json63
-rw-r--r--MLEB/Translate/i18n/core/de-ch.json3
-rw-r--r--MLEB/Translate/i18n/core/de-formal.json5
-rw-r--r--MLEB/Translate/i18n/core/de.json86
-rw-r--r--MLEB/Translate/i18n/core/diq.json246
-rw-r--r--MLEB/Translate/i18n/core/dsb.json33
-rw-r--r--MLEB/Translate/i18n/core/ee.json1
-rw-r--r--MLEB/Translate/i18n/core/el.json74
-rw-r--r--MLEB/Translate/i18n/core/en-gb.json4
-rw-r--r--MLEB/Translate/i18n/core/en.json76
-rw-r--r--MLEB/Translate/i18n/core/eo.json126
-rw-r--r--MLEB/Translate/i18n/core/es.json114
-rw-r--r--MLEB/Translate/i18n/core/et.json55
-rw-r--r--MLEB/Translate/i18n/core/eu.json43
-rw-r--r--MLEB/Translate/i18n/core/fa.json144
-rw-r--r--MLEB/Translate/i18n/core/fi.json72
-rw-r--r--MLEB/Translate/i18n/core/fo.json28
-rw-r--r--MLEB/Translate/i18n/core/fr.json141
-rw-r--r--MLEB/Translate/i18n/core/frp.json33
-rw-r--r--MLEB/Translate/i18n/core/frr.json1
-rw-r--r--MLEB/Translate/i18n/core/fur.json16
-rw-r--r--MLEB/Translate/i18n/core/fy.json33
-rw-r--r--MLEB/Translate/i18n/core/ga.json3
-rw-r--r--MLEB/Translate/i18n/core/gl.json133
-rw-r--r--MLEB/Translate/i18n/core/gom-latn.json3
-rw-r--r--MLEB/Translate/i18n/core/grc.json6
-rw-r--r--MLEB/Translate/i18n/core/gsw.json35
-rw-r--r--MLEB/Translate/i18n/core/gu.json102
-rw-r--r--MLEB/Translate/i18n/core/ha.json9
-rw-r--r--MLEB/Translate/i18n/core/hak.json3
-rw-r--r--MLEB/Translate/i18n/core/he.json97
-rw-r--r--MLEB/Translate/i18n/core/hi.json102
-rw-r--r--MLEB/Translate/i18n/core/hr.json244
-rw-r--r--MLEB/Translate/i18n/core/hsb.json33
-rw-r--r--MLEB/Translate/i18n/core/ht.json7
-rw-r--r--MLEB/Translate/i18n/core/hu.json96
-rw-r--r--MLEB/Translate/i18n/core/hy.json9
-rw-r--r--MLEB/Translate/i18n/core/ia.json72
-rw-r--r--MLEB/Translate/i18n/core/id.json81
-rw-r--r--MLEB/Translate/i18n/core/ig.json21
-rw-r--r--MLEB/Translate/i18n/core/ilo.json54
-rw-r--r--MLEB/Translate/i18n/core/io.json99
-rw-r--r--MLEB/Translate/i18n/core/is.json149
-rw-r--r--MLEB/Translate/i18n/core/it.json81
-rw-r--r--MLEB/Translate/i18n/core/ja.json89
-rw-r--r--MLEB/Translate/i18n/core/jam.json9
-rw-r--r--MLEB/Translate/i18n/core/jbo.json25
-rw-r--r--MLEB/Translate/i18n/core/jv.json475
-rw-r--r--MLEB/Translate/i18n/core/ka.json70
-rw-r--r--MLEB/Translate/i18n/core/kaa.json1
-rw-r--r--MLEB/Translate/i18n/core/kab.json238
-rw-r--r--MLEB/Translate/i18n/core/kiu.json6
-rw-r--r--MLEB/Translate/i18n/core/kk-arab.json1
-rw-r--r--MLEB/Translate/i18n/core/kk-cyrl.json293
-rw-r--r--MLEB/Translate/i18n/core/kk-kz.json5
-rw-r--r--MLEB/Translate/i18n/core/kk-latn.json1
-rw-r--r--MLEB/Translate/i18n/core/km.json153
-rw-r--r--MLEB/Translate/i18n/core/kn.json8
-rw-r--r--MLEB/Translate/i18n/core/ko.json124
-rw-r--r--MLEB/Translate/i18n/core/krc.json4
-rw-r--r--MLEB/Translate/i18n/core/krl.json11
-rw-r--r--MLEB/Translate/i18n/core/ksh.json124
-rw-r--r--MLEB/Translate/i18n/core/ku-latn.json45
-rw-r--r--MLEB/Translate/i18n/core/ky.json2
-rw-r--r--MLEB/Translate/i18n/core/la.json6
-rw-r--r--MLEB/Translate/i18n/core/lb.json69
-rw-r--r--MLEB/Translate/i18n/core/li.json80
-rw-r--r--MLEB/Translate/i18n/core/lki.json164
-rw-r--r--MLEB/Translate/i18n/core/lmo.json1
-rw-r--r--MLEB/Translate/i18n/core/lrc.json18
-rw-r--r--MLEB/Translate/i18n/core/lt.json97
-rw-r--r--MLEB/Translate/i18n/core/ltg.json1
-rw-r--r--MLEB/Translate/i18n/core/lus.json34
-rw-r--r--MLEB/Translate/i18n/core/lv.json54
-rw-r--r--MLEB/Translate/i18n/core/lzh.json20
-rw-r--r--MLEB/Translate/i18n/core/mai.json5
-rw-r--r--MLEB/Translate/i18n/core/map-bms.json7
-rw-r--r--MLEB/Translate/i18n/core/mg.json9
-rw-r--r--MLEB/Translate/i18n/core/min.json1
-rw-r--r--MLEB/Translate/i18n/core/mk.json89
-rw-r--r--MLEB/Translate/i18n/core/ml.json38
-rw-r--r--MLEB/Translate/i18n/core/mo.json37
-rw-r--r--MLEB/Translate/i18n/core/mr.json47
-rw-r--r--MLEB/Translate/i18n/core/ms.json37
-rw-r--r--MLEB/Translate/i18n/core/mt.json12
-rw-r--r--MLEB/Translate/i18n/core/my.json271
-rw-r--r--MLEB/Translate/i18n/core/myv.json1
-rw-r--r--MLEB/Translate/i18n/core/nah.json18
-rw-r--r--MLEB/Translate/i18n/core/nb.json89
-rw-r--r--MLEB/Translate/i18n/core/nds.json5
-rw-r--r--MLEB/Translate/i18n/core/ne.json95
-rw-r--r--MLEB/Translate/i18n/core/nl.json95
-rw-r--r--MLEB/Translate/i18n/core/nn.json53
-rw-r--r--MLEB/Translate/i18n/core/oc.json195
-rw-r--r--MLEB/Translate/i18n/core/or.json14
-rw-r--r--MLEB/Translate/i18n/core/pa.json24
-rw-r--r--MLEB/Translate/i18n/core/pam.json3
-rw-r--r--MLEB/Translate/i18n/core/pdc.json1
-rw-r--r--MLEB/Translate/i18n/core/pfl.json35
-rw-r--r--MLEB/Translate/i18n/core/pl.json92
-rw-r--r--MLEB/Translate/i18n/core/pms.json33
-rw-r--r--MLEB/Translate/i18n/core/pnb.json6
-rw-r--r--MLEB/Translate/i18n/core/ps.json135
-rw-r--r--MLEB/Translate/i18n/core/pt-br.json140
-rw-r--r--MLEB/Translate/i18n/core/pt.json106
-rw-r--r--MLEB/Translate/i18n/core/qqq.json95
-rw-r--r--MLEB/Translate/i18n/core/qu.json34
-rw-r--r--MLEB/Translate/i18n/core/rif.json7
-rw-r--r--MLEB/Translate/i18n/core/rm.json5
-rw-r--r--MLEB/Translate/i18n/core/ro.json42
-rw-r--r--MLEB/Translate/i18n/core/roa-tara.json100
-rw-r--r--MLEB/Translate/i18n/core/ru.json87
-rw-r--r--MLEB/Translate/i18n/core/rue.json9
-rw-r--r--MLEB/Translate/i18n/core/sa.json95
-rw-r--r--MLEB/Translate/i18n/core/sah.json35
-rw-r--r--MLEB/Translate/i18n/core/sc.json3
-rw-r--r--MLEB/Translate/i18n/core/scn.json21
-rw-r--r--MLEB/Translate/i18n/core/sco.json34
-rw-r--r--MLEB/Translate/i18n/core/sh.json12
-rw-r--r--MLEB/Translate/i18n/core/si.json32
-rw-r--r--MLEB/Translate/i18n/core/sk.json68
-rw-r--r--MLEB/Translate/i18n/core/sl.json82
-rw-r--r--MLEB/Translate/i18n/core/so.json3
-rw-r--r--MLEB/Translate/i18n/core/sq.json13
-rw-r--r--MLEB/Translate/i18n/core/sr-ec.json424
-rw-r--r--MLEB/Translate/i18n/core/sr-el.json435
-rw-r--r--MLEB/Translate/i18n/core/stq.json2
-rw-r--r--MLEB/Translate/i18n/core/su.json14
-rw-r--r--MLEB/Translate/i18n/core/sv.json80
-rw-r--r--MLEB/Translate/i18n/core/sw.json14
-rw-r--r--MLEB/Translate/i18n/core/ta.json44
-rw-r--r--MLEB/Translate/i18n/core/tcy.json48
-rw-r--r--MLEB/Translate/i18n/core/te.json45
-rw-r--r--MLEB/Translate/i18n/core/tg-cyrl.json10
-rw-r--r--MLEB/Translate/i18n/core/tg-latn.json1
-rw-r--r--MLEB/Translate/i18n/core/th.json279
-rw-r--r--MLEB/Translate/i18n/core/tk.json2
-rw-r--r--MLEB/Translate/i18n/core/tl.json42
-rw-r--r--MLEB/Translate/i18n/core/tly.json3
-rw-r--r--MLEB/Translate/i18n/core/tr.json73
-rw-r--r--MLEB/Translate/i18n/core/tt-cyrl.json143
-rw-r--r--MLEB/Translate/i18n/core/ug-arab.json54
-rw-r--r--MLEB/Translate/i18n/core/uk.json89
-rw-r--r--MLEB/Translate/i18n/core/ur.json225
-rw-r--r--MLEB/Translate/i18n/core/uz.json37
-rw-r--r--MLEB/Translate/i18n/core/vec.json5
-rw-r--r--MLEB/Translate/i18n/core/vep.json12
-rw-r--r--MLEB/Translate/i18n/core/vi.json80
-rw-r--r--MLEB/Translate/i18n/core/vo.json1
-rw-r--r--MLEB/Translate/i18n/core/wa.json37
-rw-r--r--MLEB/Translate/i18n/core/xal.json4
-rw-r--r--MLEB/Translate/i18n/core/xmf.json6
-rw-r--r--MLEB/Translate/i18n/core/yi.json58
-rw-r--r--MLEB/Translate/i18n/core/yue.json13
-rw-r--r--MLEB/Translate/i18n/core/zh-hans.json111
-rw-r--r--MLEB/Translate/i18n/core/zh-hant.json140
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/af.json25
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/aln.json9
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/ar.json21
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/arc.json8
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/arz.json16
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/ast.json62
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/az.json8
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/azb.json7
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/ba.json14
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/bcc.json8
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/be-tarask.json44
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/bg.json13
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/bn.json8
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/br.json44
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/bs.json44
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/ca.json13
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/ce.json18
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/cs.json66
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/da.json53
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/de.json67
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/diq.json16
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/dsb.json57
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/el.json18
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/en-gb.json9
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/en.json59
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/eo.json22
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/es.json73
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/et.json10
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/eu.json8
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/fa.json55
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/fi.json34
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/fo.json22
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/fr.json78
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/frp.json30
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/fur.json8
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/gl.json61
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/gsw.json41
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/he.json65
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/hr.json20
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/hsb.json58
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/hu.json31
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/ia.json47
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/id.json42
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/it.json65
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/ja.json63
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/ka.json22
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/kbd-cyrl.json8
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/km.json8
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/kn.json8
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/ko.json60
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/ksh.json63
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/lb.json52
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/lrc.json8
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/lt.json15
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/lv.json8
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/mk.json62
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/ml.json10
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/mr.json27
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/ms.json58
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/mt.json9
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/nb.json56
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/ne.json8
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/nl.json67
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/nn.json14
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/oc.json26
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/pfl.json40
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/pl.json55
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/pms.json49
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/ps.json10
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/pt-br.json50
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/pt.json67
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/qqq.json41
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/qu.json8
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/ro.json42
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/roa-tara.json21
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/ru.json72
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/rue.json18
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/sco.json56
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/si.json17
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/sk.json25
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/sl.json51
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/sq.json8
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/sr-ec.json39
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/sr-el.json37
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/sv.json69
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/ta.json8
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/te.json11
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/th.json14
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/tl.json42
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/tr.json10
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/tt-cyrl.json16
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/uk.json68
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/uz.json9
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/vep.json14
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/vi.json64
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/yi.json19
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/zh-hans.json72
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/zh-hant.json65
-rw-r--r--MLEB/Translate/i18n/pagetranslation/af.json8
-rw-r--r--MLEB/Translate/i18n/pagetranslation/ar.json157
-rw-r--r--MLEB/Translate/i18n/pagetranslation/arz.json12
-rw-r--r--MLEB/Translate/i18n/pagetranslation/as.json6
-rw-r--r--MLEB/Translate/i18n/pagetranslation/ast.json51
-rw-r--r--MLEB/Translate/i18n/pagetranslation/av.json5
-rw-r--r--MLEB/Translate/i18n/pagetranslation/awa.json3
-rw-r--r--MLEB/Translate/i18n/pagetranslation/az.json6
-rw-r--r--MLEB/Translate/i18n/pagetranslation/azb.json17
-rw-r--r--MLEB/Translate/i18n/pagetranslation/ba.json8
-rw-r--r--MLEB/Translate/i18n/pagetranslation/bar.json3
-rw-r--r--MLEB/Translate/i18n/pagetranslation/bcl.json10
-rw-r--r--MLEB/Translate/i18n/pagetranslation/be-tarask.json30
-rw-r--r--MLEB/Translate/i18n/pagetranslation/be.json6
-rw-r--r--MLEB/Translate/i18n/pagetranslation/bg.json27
-rw-r--r--MLEB/Translate/i18n/pagetranslation/bn.json59
-rw-r--r--MLEB/Translate/i18n/pagetranslation/br.json16
-rw-r--r--MLEB/Translate/i18n/pagetranslation/bs.json167
-rw-r--r--MLEB/Translate/i18n/pagetranslation/ca.json18
-rw-r--r--MLEB/Translate/i18n/pagetranslation/ce.json15
-rw-r--r--MLEB/Translate/i18n/pagetranslation/ckb.json10
-rw-r--r--MLEB/Translate/i18n/pagetranslation/cs.json29
-rw-r--r--MLEB/Translate/i18n/pagetranslation/cy.json2
-rw-r--r--MLEB/Translate/i18n/pagetranslation/da.json51
-rw-r--r--MLEB/Translate/i18n/pagetranslation/de.json45
-rw-r--r--MLEB/Translate/i18n/pagetranslation/diq.json16
-rw-r--r--MLEB/Translate/i18n/pagetranslation/dsb.json6
-rw-r--r--MLEB/Translate/i18n/pagetranslation/el.json72
-rw-r--r--MLEB/Translate/i18n/pagetranslation/en-gb.json5
-rw-r--r--MLEB/Translate/i18n/pagetranslation/en.json49
-rw-r--r--MLEB/Translate/i18n/pagetranslation/eo.json16
-rw-r--r--MLEB/Translate/i18n/pagetranslation/es.json64
-rw-r--r--MLEB/Translate/i18n/pagetranslation/et.json21
-rw-r--r--MLEB/Translate/i18n/pagetranslation/eu.json9
-rw-r--r--MLEB/Translate/i18n/pagetranslation/fa.json197
-rw-r--r--MLEB/Translate/i18n/pagetranslation/fi.json63
-rw-r--r--MLEB/Translate/i18n/pagetranslation/fr.json54
-rw-r--r--MLEB/Translate/i18n/pagetranslation/frp.json7
-rw-r--r--MLEB/Translate/i18n/pagetranslation/fur.json4
-rw-r--r--MLEB/Translate/i18n/pagetranslation/fy.json11
-rw-r--r--MLEB/Translate/i18n/pagetranslation/ga.json4
-rw-r--r--MLEB/Translate/i18n/pagetranslation/gl.json58
-rw-r--r--MLEB/Translate/i18n/pagetranslation/gsw.json6
-rw-r--r--MLEB/Translate/i18n/pagetranslation/gu.json10
-rw-r--r--MLEB/Translate/i18n/pagetranslation/he.json55
-rw-r--r--MLEB/Translate/i18n/pagetranslation/hi.json43
-rw-r--r--MLEB/Translate/i18n/pagetranslation/hr.json29
-rw-r--r--MLEB/Translate/i18n/pagetranslation/hsb.json6
-rw-r--r--MLEB/Translate/i18n/pagetranslation/ht.json10
-rw-r--r--MLEB/Translate/i18n/pagetranslation/hu.json113
-rw-r--r--MLEB/Translate/i18n/pagetranslation/ia.json22
-rw-r--r--MLEB/Translate/i18n/pagetranslation/id.json12
-rw-r--r--MLEB/Translate/i18n/pagetranslation/ig.json11
-rw-r--r--MLEB/Translate/i18n/pagetranslation/io.json10
-rw-r--r--MLEB/Translate/i18n/pagetranslation/is.json181
-rw-r--r--MLEB/Translate/i18n/pagetranslation/it.json51
-rw-r--r--MLEB/Translate/i18n/pagetranslation/ja.json39
-rw-r--r--MLEB/Translate/i18n/pagetranslation/jam.json10
-rw-r--r--MLEB/Translate/i18n/pagetranslation/jv.json169
-rw-r--r--MLEB/Translate/i18n/pagetranslation/ka.json56
-rw-r--r--MLEB/Translate/i18n/pagetranslation/kk-cyrl.json120
-rw-r--r--MLEB/Translate/i18n/pagetranslation/km.json7
-rw-r--r--MLEB/Translate/i18n/pagetranslation/kn.json30
-rw-r--r--MLEB/Translate/i18n/pagetranslation/ko.json119
-rw-r--r--MLEB/Translate/i18n/pagetranslation/krc.json3
-rw-r--r--MLEB/Translate/i18n/pagetranslation/ksh.json71
-rw-r--r--MLEB/Translate/i18n/pagetranslation/ku-latn.json37
-rw-r--r--MLEB/Translate/i18n/pagetranslation/ky.json1
-rw-r--r--MLEB/Translate/i18n/pagetranslation/lb.json45
-rw-r--r--MLEB/Translate/i18n/pagetranslation/lt.json87
-rw-r--r--MLEB/Translate/i18n/pagetranslation/lv.json11
-rw-r--r--MLEB/Translate/i18n/pagetranslation/lzh.json4
-rw-r--r--MLEB/Translate/i18n/pagetranslation/mai.json2
-rw-r--r--MLEB/Translate/i18n/pagetranslation/mg.json3
-rw-r--r--MLEB/Translate/i18n/pagetranslation/mk.json45
-rw-r--r--MLEB/Translate/i18n/pagetranslation/ml.json3
-rw-r--r--MLEB/Translate/i18n/pagetranslation/mr.json42
-rw-r--r--MLEB/Translate/i18n/pagetranslation/ms.json14
-rw-r--r--MLEB/Translate/i18n/pagetranslation/myv.json6
-rw-r--r--MLEB/Translate/i18n/pagetranslation/nah.json8
-rw-r--r--MLEB/Translate/i18n/pagetranslation/nb.json84
-rw-r--r--MLEB/Translate/i18n/pagetranslation/nds-nl.json2
-rw-r--r--MLEB/Translate/i18n/pagetranslation/ne.json20
-rw-r--r--MLEB/Translate/i18n/pagetranslation/nl.json60
-rw-r--r--MLEB/Translate/i18n/pagetranslation/nn.json28
-rw-r--r--MLEB/Translate/i18n/pagetranslation/oc.json54
-rw-r--r--MLEB/Translate/i18n/pagetranslation/or.json1
-rw-r--r--MLEB/Translate/i18n/pagetranslation/pa.json4
-rw-r--r--MLEB/Translate/i18n/pagetranslation/pam.json1
-rw-r--r--MLEB/Translate/i18n/pagetranslation/pdc.json1
-rw-r--r--MLEB/Translate/i18n/pagetranslation/pfl.json6
-rw-r--r--MLEB/Translate/i18n/pagetranslation/pl.json72
-rw-r--r--MLEB/Translate/i18n/pagetranslation/pms.json6
-rw-r--r--MLEB/Translate/i18n/pagetranslation/ps.json29
-rw-r--r--MLEB/Translate/i18n/pagetranslation/pt-br.json104
-rw-r--r--MLEB/Translate/i18n/pagetranslation/pt.json78
-rw-r--r--MLEB/Translate/i18n/pagetranslation/qqq.json62
-rw-r--r--MLEB/Translate/i18n/pagetranslation/rm.json6
-rw-r--r--MLEB/Translate/i18n/pagetranslation/ro.json6
-rw-r--r--MLEB/Translate/i18n/pagetranslation/roa-tara.json43
-rw-r--r--MLEB/Translate/i18n/pagetranslation/ru.json56
-rw-r--r--MLEB/Translate/i18n/pagetranslation/rue.json3
-rw-r--r--MLEB/Translate/i18n/pagetranslation/sa.json35
-rw-r--r--MLEB/Translate/i18n/pagetranslation/sah.json4
-rw-r--r--MLEB/Translate/i18n/pagetranslation/scn.json9
-rw-r--r--MLEB/Translate/i18n/pagetranslation/sco.json10
-rw-r--r--MLEB/Translate/i18n/pagetranslation/shn.json5
-rw-r--r--MLEB/Translate/i18n/pagetranslation/si.json11
-rw-r--r--MLEB/Translate/i18n/pagetranslation/sk.json6
-rw-r--r--MLEB/Translate/i18n/pagetranslation/sl.json33
-rw-r--r--MLEB/Translate/i18n/pagetranslation/sr-ec.json145
-rw-r--r--MLEB/Translate/i18n/pagetranslation/sr-el.json25
-rw-r--r--MLEB/Translate/i18n/pagetranslation/su.json13
-rw-r--r--MLEB/Translate/i18n/pagetranslation/sv.json29
-rw-r--r--MLEB/Translate/i18n/pagetranslation/ta.json4
-rw-r--r--MLEB/Translate/i18n/pagetranslation/tcy.json39
-rw-r--r--MLEB/Translate/i18n/pagetranslation/te.json6
-rw-r--r--MLEB/Translate/i18n/pagetranslation/th.json54
-rw-r--r--MLEB/Translate/i18n/pagetranslation/tl.json11
-rw-r--r--MLEB/Translate/i18n/pagetranslation/tr.json38
-rw-r--r--MLEB/Translate/i18n/pagetranslation/tt-cyrl.json6
-rw-r--r--MLEB/Translate/i18n/pagetranslation/tzm.json1
-rw-r--r--MLEB/Translate/i18n/pagetranslation/ug-arab.json3
-rw-r--r--MLEB/Translate/i18n/pagetranslation/uk.json53
-rw-r--r--MLEB/Translate/i18n/pagetranslation/ur.json31
-rw-r--r--MLEB/Translate/i18n/pagetranslation/vec.json3
-rw-r--r--MLEB/Translate/i18n/pagetranslation/vep.json4
-rw-r--r--MLEB/Translate/i18n/pagetranslation/vi.json35
-rw-r--r--MLEB/Translate/i18n/pagetranslation/wuu.json7
-rw-r--r--MLEB/Translate/i18n/pagetranslation/yi.json36
-rw-r--r--MLEB/Translate/i18n/pagetranslation/zh-hans.json71
-rw-r--r--MLEB/Translate/i18n/pagetranslation/zh-hant.json112
-rw-r--r--MLEB/Translate/i18n/sandbox/af.json4
-rw-r--r--MLEB/Translate/i18n/sandbox/ar.json50
-rw-r--r--MLEB/Translate/i18n/sandbox/ast.json6
-rw-r--r--MLEB/Translate/i18n/sandbox/bg.json7
-rw-r--r--MLEB/Translate/i18n/sandbox/bn.json14
-rw-r--r--MLEB/Translate/i18n/sandbox/ce.json2
-rw-r--r--MLEB/Translate/i18n/sandbox/cs.json8
-rw-r--r--MLEB/Translate/i18n/sandbox/de.json16
-rw-r--r--MLEB/Translate/i18n/sandbox/diq.json19
-rw-r--r--MLEB/Translate/i18n/sandbox/en.json13
-rw-r--r--MLEB/Translate/i18n/sandbox/es.json6
-rw-r--r--MLEB/Translate/i18n/sandbox/eu.json20
-rw-r--r--MLEB/Translate/i18n/sandbox/fa.json14
-rw-r--r--MLEB/Translate/i18n/sandbox/fi.json23
-rw-r--r--MLEB/Translate/i18n/sandbox/fr.json21
-rw-r--r--MLEB/Translate/i18n/sandbox/gl.json6
-rw-r--r--MLEB/Translate/i18n/sandbox/gu.json5
-rw-r--r--MLEB/Translate/i18n/sandbox/he.json6
-rw-r--r--MLEB/Translate/i18n/sandbox/ia.json8
-rw-r--r--MLEB/Translate/i18n/sandbox/it.json2
-rw-r--r--MLEB/Translate/i18n/sandbox/ja.json13
-rw-r--r--MLEB/Translate/i18n/sandbox/ko.json21
-rw-r--r--MLEB/Translate/i18n/sandbox/ksh.json17
-rw-r--r--MLEB/Translate/i18n/sandbox/lb.json5
-rw-r--r--MLEB/Translate/i18n/sandbox/mk.json8
-rw-r--r--MLEB/Translate/i18n/sandbox/mr.json48
-rw-r--r--MLEB/Translate/i18n/sandbox/ms.json5
-rw-r--r--MLEB/Translate/i18n/sandbox/ne.json4
-rw-r--r--MLEB/Translate/i18n/sandbox/nl.json19
-rw-r--r--MLEB/Translate/i18n/sandbox/oc.json8
-rw-r--r--MLEB/Translate/i18n/sandbox/pl.json16
-rw-r--r--MLEB/Translate/i18n/sandbox/ps.json15
-rw-r--r--MLEB/Translate/i18n/sandbox/pt-br.json50
-rw-r--r--MLEB/Translate/i18n/sandbox/pt.json16
-rw-r--r--MLEB/Translate/i18n/sandbox/qqq.json10
-rw-r--r--MLEB/Translate/i18n/sandbox/ro.json21
-rw-r--r--MLEB/Translate/i18n/sandbox/ru.json14
-rw-r--r--MLEB/Translate/i18n/sandbox/sr-ec.json14
-rw-r--r--MLEB/Translate/i18n/sandbox/sv.json6
-rw-r--r--MLEB/Translate/i18n/sandbox/uk.json11
-rw-r--r--MLEB/Translate/i18n/sandbox/vi.json8
-rw-r--r--MLEB/Translate/i18n/sandbox/zh-hans.json20
-rw-r--r--MLEB/Translate/i18n/sandbox/zh-hant.json17
-rw-r--r--MLEB/Translate/i18n/search/ar.json22
-rw-r--r--MLEB/Translate/i18n/search/ast.json15
-rw-r--r--MLEB/Translate/i18n/search/az.json1
-rw-r--r--MLEB/Translate/i18n/search/be-tarask.json8
-rw-r--r--MLEB/Translate/i18n/search/bg.json12
-rw-r--r--MLEB/Translate/i18n/search/bn.json16
-rw-r--r--MLEB/Translate/i18n/search/br.json3
-rw-r--r--MLEB/Translate/i18n/search/ca.json17
-rw-r--r--MLEB/Translate/i18n/search/ce.json17
-rw-r--r--MLEB/Translate/i18n/search/cs.json15
-rw-r--r--MLEB/Translate/i18n/search/da.json16
-rw-r--r--MLEB/Translate/i18n/search/de.json13
-rw-r--r--MLEB/Translate/i18n/search/diq.json28
-rw-r--r--MLEB/Translate/i18n/search/dsb.json1
-rw-r--r--MLEB/Translate/i18n/search/el.json18
-rw-r--r--MLEB/Translate/i18n/search/en.json15
-rw-r--r--MLEB/Translate/i18n/search/es.json15
-rw-r--r--MLEB/Translate/i18n/search/et.json10
-rw-r--r--MLEB/Translate/i18n/search/eu.json7
-rw-r--r--MLEB/Translate/i18n/search/fa.json19
-rw-r--r--MLEB/Translate/i18n/search/fi.json16
-rw-r--r--MLEB/Translate/i18n/search/fo.json1
-rw-r--r--MLEB/Translate/i18n/search/fr.json24
-rw-r--r--MLEB/Translate/i18n/search/fy.json4
-rw-r--r--MLEB/Translate/i18n/search/gl.json18
-rw-r--r--MLEB/Translate/i18n/search/gu.json10
-rw-r--r--MLEB/Translate/i18n/search/he.json13
-rw-r--r--MLEB/Translate/i18n/search/hsb.json1
-rw-r--r--MLEB/Translate/i18n/search/ia.json5
-rw-r--r--MLEB/Translate/i18n/search/ilo.json7
-rw-r--r--MLEB/Translate/i18n/search/it.json19
-rw-r--r--MLEB/Translate/i18n/search/ja.json17
-rw-r--r--MLEB/Translate/i18n/search/ka.json9
-rw-r--r--MLEB/Translate/i18n/search/ko.json13
-rw-r--r--MLEB/Translate/i18n/search/krc.json3
-rw-r--r--MLEB/Translate/i18n/search/ksh.json15
-rw-r--r--MLEB/Translate/i18n/search/ku-latn.json9
-rw-r--r--MLEB/Translate/i18n/search/lb.json13
-rw-r--r--MLEB/Translate/i18n/search/lrc.json1
-rw-r--r--MLEB/Translate/i18n/search/mk.json15
-rw-r--r--MLEB/Translate/i18n/search/mr.json16
-rw-r--r--MLEB/Translate/i18n/search/ms.json1
-rw-r--r--MLEB/Translate/i18n/search/nb.json27
-rw-r--r--MLEB/Translate/i18n/search/nl.json19
-rw-r--r--MLEB/Translate/i18n/search/nn.json13
-rw-r--r--MLEB/Translate/i18n/search/oc.json14
-rw-r--r--MLEB/Translate/i18n/search/pl.json11
-rw-r--r--MLEB/Translate/i18n/search/pms.json1
-rw-r--r--MLEB/Translate/i18n/search/ps.json14
-rw-r--r--MLEB/Translate/i18n/search/pt-br.json27
-rw-r--r--MLEB/Translate/i18n/search/pt.json16
-rw-r--r--MLEB/Translate/i18n/search/qqq.json17
-rw-r--r--MLEB/Translate/i18n/search/qu.json6
-rw-r--r--MLEB/Translate/i18n/search/ro.json6
-rw-r--r--MLEB/Translate/i18n/search/roa-tara.json15
-rw-r--r--MLEB/Translate/i18n/search/ru.json19
-rw-r--r--MLEB/Translate/i18n/search/sk.json9
-rw-r--r--MLEB/Translate/i18n/search/sr-ec.json17
-rw-r--r--MLEB/Translate/i18n/search/sv.json13
-rw-r--r--MLEB/Translate/i18n/search/tr.json9
-rw-r--r--MLEB/Translate/i18n/search/uk.json18
-rw-r--r--MLEB/Translate/i18n/search/vi.json15
-rw-r--r--MLEB/Translate/i18n/search/yi.json13
-rw-r--r--MLEB/Translate/i18n/search/zh-hans.json13
-rw-r--r--MLEB/Translate/i18n/search/zh-hant.json18
-rw-r--r--MLEB/Translate/insertables/Insertable.php2
-rw-r--r--MLEB/Translate/insertables/InsertablesSuggester.php2
-rw-r--r--MLEB/Translate/insertables/MediaWikiInsertablesSuggester.php21
-rw-r--r--MLEB/Translate/insertables/TranslatablePageInsertablesSuggester.php4
-rw-r--r--MLEB/Translate/libs/spyc/COPYING21
-rw-r--r--MLEB/Translate/libs/spyc/spyc.php1148
-rw-r--r--MLEB/Translate/messagegroups/AggregateMessageGroup.php30
-rw-r--r--MLEB/Translate/messagegroups/FileBasedMessageGroup.php66
-rw-r--r--MLEB/Translate/messagegroups/MediaWikiExtensionMessageGroup.php8
-rw-r--r--MLEB/Translate/messagegroups/MessageGroup.php13
-rw-r--r--MLEB/Translate/messagegroups/MessageGroupBase.php88
-rw-r--r--MLEB/Translate/messagegroups/MessageGroupOld.php61
-rw-r--r--MLEB/Translate/messagegroups/RecentAdditionsMessageGroup.php20
-rw-r--r--MLEB/Translate/messagegroups/RecentMessageGroup.php43
-rw-r--r--MLEB/Translate/messagegroups/SandboxMessageGroup.php12
-rw-r--r--MLEB/Translate/messagegroups/WikiMessageGroup.php8
-rw-r--r--MLEB/Translate/messagegroups/WikiPageMessageGroup.php74
-rw-r--r--MLEB/Translate/messagegroups/WorkflowStatesMessageGroup.php4
-rw-r--r--MLEB/Translate/resources/css/ext.translate.css68
-rw-r--r--MLEB/Translate/resources/css/ext.translate.dropdownmenu.css8
-rw-r--r--MLEB/Translate/resources/css/ext.translate.editor.css233
-rw-r--r--MLEB/Translate/resources/css/ext.translate.groupselector.css222
-rw-r--r--MLEB/Translate/resources/css/ext.translate.helplink.css21
-rw-r--r--MLEB/Translate/resources/css/ext.translate.loader.css18
-rw-r--r--MLEB/Translate/resources/css/ext.translate.messagetable.css382
-rw-r--r--MLEB/Translate/resources/css/ext.translate.navitoggle.css12
-rw-r--r--MLEB/Translate/resources/css/ext.translate.pagemode.css41
-rw-r--r--MLEB/Translate/resources/css/ext.translate.proofread.css60
-rw-r--r--MLEB/Translate/resources/css/ext.translate.quickedit.css66
-rw-r--r--MLEB/Translate/resources/css/ext.translate.special.aggregategroups.css33
-rw-r--r--MLEB/Translate/resources/css/ext.translate.special.languagestats.css4
-rw-r--r--MLEB/Translate/resources/css/ext.translate.special.managetranslatorsandbox.css81
-rw-r--r--MLEB/Translate/resources/css/ext.translate.special.pagemigration.css54
-rw-r--r--MLEB/Translate/resources/css/ext.translate.special.searchtranslations.css97
-rw-r--r--MLEB/Translate/resources/css/ext.translate.special.supportedlanguages.css2
-rw-r--r--MLEB/Translate/resources/css/ext.translate.special.translate.css147
-rw-r--r--MLEB/Translate/resources/css/ext.translate.special.translationstash.css21
-rw-r--r--MLEB/Translate/resources/css/ext.translate.statsbar.css13
-rw-r--r--MLEB/Translate/resources/css/ext.translate.workflowselector.css33
-rw-r--r--MLEB/Translate/resources/images/action-edit.pngbin393 -> 0 bytes
-rw-r--r--MLEB/Translate/resources/images/action-edit.svg38
-rw-r--r--MLEB/Translate/resources/images/add.pngbin816 -> 0 bytes
-rw-r--r--MLEB/Translate/resources/images/add.svg24
-rw-r--r--MLEB/Translate/resources/images/check-small.pngbin366 -> 0 bytes
-rw-r--r--MLEB/Translate/resources/images/check-small.svg30
-rw-r--r--MLEB/Translate/resources/images/check-sprite-ltr.pngbin5906 -> 0 bytes
-rw-r--r--MLEB/Translate/resources/images/check-sprite-ltr.svg102
-rw-r--r--MLEB/Translate/resources/images/check-sprite-rtl.pngbin6168 -> 0 bytes
-rw-r--r--MLEB/Translate/resources/images/check-sprite-rtl.svg97
-rw-r--r--MLEB/Translate/resources/images/close.pngbin180 -> 0 bytes
-rw-r--r--MLEB/Translate/resources/images/close.svg43
-rw-r--r--MLEB/Translate/resources/images/contract-ltr.pngbin390 -> 0 bytes
-rw-r--r--MLEB/Translate/resources/images/contract-ltr.svg55
-rw-r--r--MLEB/Translate/resources/images/contract-rtl.pngbin390 -> 0 bytes
-rw-r--r--MLEB/Translate/resources/images/contract-rtl.svg57
-rw-r--r--MLEB/Translate/resources/images/edit-mark.pngbin480 -> 0 bytes
-rw-r--r--MLEB/Translate/resources/images/edit-mark.svg34
-rw-r--r--MLEB/Translate/resources/images/expand-ltr.pngbin425 -> 0 bytes
-rw-r--r--MLEB/Translate/resources/images/expand-ltr.svg55
-rw-r--r--MLEB/Translate/resources/images/expand-rtl.pngbin423 -> 0 bytes
-rw-r--r--MLEB/Translate/resources/images/expand-rtl.svg57
-rw-r--r--MLEB/Translate/resources/images/help.pngbin428 -> 0 bytes
-rw-r--r--MLEB/Translate/resources/images/help.svg1
-rw-r--r--MLEB/Translate/resources/images/label-clock.pngbin364 -> 0 bytes
-rw-r--r--MLEB/Translate/resources/images/label-clock.svg33
-rw-r--r--MLEB/Translate/resources/images/label-flag.pngbin233 -> 0 bytes
-rw-r--r--MLEB/Translate/resources/images/label-flag.svg33
-rw-r--r--MLEB/Translate/resources/images/label-page-tick.pngbin441 -> 0 bytes
-rw-r--r--MLEB/Translate/resources/images/label-page-tick.svg40
-rw-r--r--MLEB/Translate/resources/images/label-page.pngbin300 -> 0 bytes
-rw-r--r--MLEB/Translate/resources/images/label-page.svg42
-rw-r--r--MLEB/Translate/resources/images/label-pen.pngbin362 -> 0 bytes
-rw-r--r--MLEB/Translate/resources/images/label-pen.svg33
-rw-r--r--MLEB/Translate/resources/images/label-tick.pngbin412 -> 0 bytes
-rw-r--r--MLEB/Translate/resources/images/label-tick.svg33
-rw-r--r--MLEB/Translate/resources/images/loading.svg44
-rw-r--r--MLEB/Translate/resources/images/outdated-ltr.pngbin743 -> 0 bytes
-rw-r--r--MLEB/Translate/resources/images/outdated-ltr.svg38
-rw-r--r--MLEB/Translate/resources/images/outdated-rtl.pngbin971 -> 0 bytes
-rw-r--r--MLEB/Translate/resources/images/outdated-rtl.svg38
-rw-r--r--MLEB/Translate/resources/images/paste.pngbin3271 -> 0 bytes
-rw-r--r--MLEB/Translate/resources/images/paste.svg20
-rw-r--r--MLEB/Translate/resources/images/plus_darkgray.pngbin733 -> 0 bytes
-rw-r--r--MLEB/Translate/resources/images/plus_darkgray.svg5
-rw-r--r--MLEB/Translate/resources/images/prog-3.pngbin315 -> 315 bytes
-rw-r--r--MLEB/Translate/resources/images/prog-4.pngbin311 -> 308 bytes
-rw-r--r--MLEB/Translate/resources/images/prog-5.pngbin239 -> 236 bytes
-rw-r--r--MLEB/Translate/resources/images/project.pngbin1016 -> 0 bytes
-rw-r--r--MLEB/Translate/resources/images/project.svg75
-rw-r--r--MLEB/Translate/resources/images/remove.pngbin787 -> 0 bytes
-rw-r--r--MLEB/Translate/resources/images/remove.svg24
-rw-r--r--MLEB/Translate/resources/images/search.pngbin664 -> 0 bytes
-rw-r--r--MLEB/Translate/resources/images/search.svg34
-rw-r--r--MLEB/Translate/resources/images/switch.pngbin6395 -> 0 bytes
-rw-r--r--MLEB/Translate/resources/images/switch.svg6
-rw-r--r--MLEB/Translate/resources/images/translate-ltr.pngbin586 -> 0 bytes
-rw-r--r--MLEB/Translate/resources/images/translate-ltr.svg34
-rw-r--r--MLEB/Translate/resources/images/translate-rtl.pngbin723 -> 0 bytes
-rw-r--r--MLEB/Translate/resources/images/translate-rtl.svg34
-rw-r--r--MLEB/Translate/resources/images/trash_darkgray.pngbin1037 -> 0 bytes
-rw-r--r--MLEB/Translate/resources/images/trash_darkgray.svg5
-rw-r--r--MLEB/Translate/resources/images/user-small.pngbin304 -> 0 bytes
-rw-r--r--MLEB/Translate/resources/images/user-small.svg14
-rw-r--r--MLEB/Translate/resources/images/view-list-hi.pngbin239 -> 0 bytes
-rw-r--r--MLEB/Translate/resources/images/view-list-hi.svg54
-rw-r--r--MLEB/Translate/resources/images/view-list.pngbin239 -> 0 bytes
-rw-r--r--MLEB/Translate/resources/images/view-list.svg55
-rw-r--r--MLEB/Translate/resources/images/view-page-hi.pngbin271 -> 0 bytes
-rw-r--r--MLEB/Translate/resources/images/view-page-hi.svg42
-rw-r--r--MLEB/Translate/resources/images/view-page.pngbin271 -> 0 bytes
-rw-r--r--MLEB/Translate/resources/images/view-page.svg51
-rw-r--r--MLEB/Translate/resources/images/view-proofread-hi.pngbin336 -> 0 bytes
-rw-r--r--MLEB/Translate/resources/images/view-proofread-hi.svg38
-rw-r--r--MLEB/Translate/resources/images/view-proofread.pngbin415 -> 0 bytes
-rw-r--r--MLEB/Translate/resources/images/view-proofread.svg38
-rw-r--r--MLEB/Translate/resources/js/ext.translate.base.js67
-rw-r--r--MLEB/Translate/resources/js/ext.translate.dropdownmenu.js4
-rw-r--r--MLEB/Translate/resources/js/ext.translate.editor.helpers.js145
-rw-r--r--MLEB/Translate/resources/js/ext.translate.editor.js390
-rw-r--r--MLEB/Translate/resources/js/ext.translate.editor.shortcuts.js22
-rw-r--r--MLEB/Translate/resources/js/ext.translate.groupselector.js217
-rw-r--r--MLEB/Translate/resources/js/ext.translate.hooks.js16
-rw-r--r--MLEB/Translate/resources/js/ext.translate.messagetable.js505
-rw-r--r--MLEB/Translate/resources/js/ext.translate.multiselectautocomplete.js22
-rw-r--r--MLEB/Translate/resources/js/ext.translate.navitoggle.js36
-rw-r--r--MLEB/Translate/resources/js/ext.translate.pagemode.js16
-rw-r--r--MLEB/Translate/resources/js/ext.translate.pagetranslation.uls.js14
-rw-r--r--MLEB/Translate/resources/js/ext.translate.parsers.js19
-rw-r--r--MLEB/Translate/resources/js/ext.translate.proofread.js65
-rw-r--r--MLEB/Translate/resources/js/ext.translate.quickedit.js394
-rw-r--r--MLEB/Translate/resources/js/ext.translate.selecttoinput.js22
-rw-r--r--MLEB/Translate/resources/js/ext.translate.special.aggregategroups.js135
-rw-r--r--MLEB/Translate/resources/js/ext.translate.special.importtranslations.js6
-rw-r--r--MLEB/Translate/resources/js/ext.translate.special.languagestats.js222
-rw-r--r--MLEB/Translate/resources/js/ext.translate.special.managetranslatorsandbox.js135
-rw-r--r--MLEB/Translate/resources/js/ext.translate.special.pagemigration.js187
-rw-r--r--MLEB/Translate/resources/js/ext.translate.special.pagepreparation.js192
-rw-r--r--MLEB/Translate/resources/js/ext.translate.special.pagetranslation.js26
-rw-r--r--MLEB/Translate/resources/js/ext.translate.special.searchtranslations.js280
-rw-r--r--MLEB/Translate/resources/js/ext.translate.special.translate.js396
-rw-r--r--MLEB/Translate/resources/js/ext.translate.special.translationstash.js41
-rw-r--r--MLEB/Translate/resources/js/ext.translate.special.translationstats.js75
-rw-r--r--MLEB/Translate/resources/js/ext.translate.statsbar.js107
-rw-r--r--MLEB/Translate/resources/js/ext.translate.storage.js15
-rw-r--r--MLEB/Translate/resources/js/ext.translate.translationstashstorage.js30
-rw-r--r--MLEB/Translate/resources/js/ext.translate.workflowselector.js42
-rw-r--r--MLEB/Translate/resources/js/jquery.ajaxdispatcher.js20
-rw-r--r--MLEB/Translate/resources/js/jquery.autosize.js415
-rw-r--r--MLEB/Translate/resources/js/jquery.textchange.js9
-rw-r--r--MLEB/Translate/resources/js/jquery.ui.position.js498
-rw-r--r--MLEB/Translate/scripts/characterEditStats.php83
-rw-r--r--MLEB/Translate/scripts/create-language-models.php51
-rw-r--r--MLEB/Translate/scripts/createCheckIndex.php25
-rw-r--r--MLEB/Translate/scripts/createMessageIndex.php6
-rw-r--r--MLEB/Translate/scripts/export.php19
-rw-r--r--MLEB/Translate/scripts/fallbacks-graph.php30
-rw-r--r--MLEB/Translate/scripts/fuzzy.php137
-rw-r--r--MLEB/Translate/scripts/groupStatistics.php222
-rw-r--r--MLEB/Translate/scripts/languageeditstats.php10
-rw-r--r--MLEB/Translate/scripts/magic-export.php126
-rw-r--r--MLEB/Translate/scripts/migrate-schema2.php14
-rw-r--r--MLEB/Translate/scripts/mwcore-export.php10
-rw-r--r--MLEB/Translate/scripts/plural-comparison.php18
-rw-r--r--MLEB/Translate/scripts/poimport.php28
-rw-r--r--MLEB/Translate/scripts/populateFuzzy.php37
-rw-r--r--MLEB/Translate/scripts/processMessageChanges.php69
-rw-r--r--MLEB/Translate/scripts/refresh-translatable-pages.php30
-rw-r--r--MLEB/Translate/scripts/sync-group.php28
-rw-r--r--MLEB/Translate/scripts/translator-stats-process.php26
-rw-r--r--MLEB/Translate/scripts/translator-stats.php64
-rw-r--r--MLEB/Translate/scripts/ttmserver-export.php51
-rw-r--r--MLEB/Translate/scripts/yaml-tests.php20
-rw-r--r--MLEB/Translate/specials/SpecialAggregateGroups.php105
-rw-r--r--MLEB/Translate/specials/SpecialImportTranslations.php59
-rw-r--r--MLEB/Translate/specials/SpecialLanguageStats.php268
-rw-r--r--MLEB/Translate/specials/SpecialMagic.php53
-rw-r--r--MLEB/Translate/specials/SpecialManageGroups.php114
-rw-r--r--MLEB/Translate/specials/SpecialManageTranslatorSandbox.php59
-rw-r--r--MLEB/Translate/specials/SpecialMessageGroupStats.php185
-rw-r--r--MLEB/Translate/specials/SpecialMyLanguage.php78
-rw-r--r--MLEB/Translate/specials/SpecialPageMigration.php58
-rw-r--r--MLEB/Translate/specials/SpecialPagePreparation.php57
-rw-r--r--MLEB/Translate/specials/SpecialSearchTranslations.php395
-rw-r--r--MLEB/Translate/specials/SpecialSupportedLanguages.php186
-rw-r--r--MLEB/Translate/specials/SpecialTranslate.php844
-rw-r--r--MLEB/Translate/specials/SpecialTranslationStash.php42
-rw-r--r--MLEB/Translate/specials/SpecialTranslationStats.php273
-rw-r--r--MLEB/Translate/specials/SpecialTranslations.php208
-rw-r--r--MLEB/Translate/specials/TranslateSpecialPage.php37
-rw-r--r--MLEB/Translate/sql/translate_reviews.sql7
-rw-r--r--MLEB/Translate/sql/translate_tm.sql4
-rw-r--r--MLEB/Translate/stash/StashedTranslation.php18
-rw-r--r--MLEB/Translate/stash/TranslationStashStorage.php29
-rw-r--r--MLEB/Translate/stringmangler/StringMangler.php9
-rw-r--r--MLEB/Translate/stringmangler/StringMatcher.php91
-rw-r--r--MLEB/Translate/tag/PageTranslationHooks.php963
-rw-r--r--MLEB/Translate/tag/PageTranslationLogFormatter.php8
-rw-r--r--MLEB/Translate/tag/SpecialPageTranslation.php474
-rw-r--r--MLEB/Translate/tag/SpecialPageTranslationDeletePage.php231
-rw-r--r--MLEB/Translate/tag/SpecialPageTranslationMovePage.php319
-rw-r--r--MLEB/Translate/tag/TPException.php4
-rw-r--r--MLEB/Translate/tag/TPParse.php77
-rw-r--r--MLEB/Translate/tag/TPSection.php99
-rw-r--r--MLEB/Translate/tag/TranslatablePage.php263
-rw-r--r--MLEB/Translate/tag/TranslateDeleteJob.php52
-rw-r--r--MLEB/Translate/tag/TranslateMoveJob.php32
-rw-r--r--MLEB/Translate/tag/TranslateRenderJob.php27
-rw-r--r--MLEB/Translate/tests/browser/README.md1
-rw-r--r--MLEB/Translate/tests/browser/features/manage_translator_sandbox.feature287
-rw-r--r--MLEB/Translate/tests/browser/features/special_translate.feature25
-rw-r--r--MLEB/Translate/tests/browser/features/step_definitions/manage_translator_sandbox_steps.rb214
-rw-r--r--MLEB/Translate/tests/browser/features/step_definitions/special_translate_steps.rb23
-rw-r--r--MLEB/Translate/tests/browser/features/step_definitions/translation_stash_steps.rb68
-rw-r--r--MLEB/Translate/tests/browser/features/support/env.rb1
-rw-r--r--MLEB/Translate/tests/browser/features/support/hooks.rb3
-rw-r--r--MLEB/Translate/tests/browser/features/support/pages/manage_translator_sandbox_page.rb144
-rw-r--r--MLEB/Translate/tests/browser/features/support/pages/stash_page.rb34
-rw-r--r--MLEB/Translate/tests/browser/features/support/pages/translate_page.rb9
-rw-r--r--MLEB/Translate/tests/browser/features/support/pages/user_page.rb13
-rw-r--r--MLEB/Translate/tests/browser/features/translation_stash.feature44
-rw-r--r--MLEB/Translate/tests/generateRandomSandboxData.php31
-rw-r--r--MLEB/Translate/tests/phpunit/BlackListTest.php36
-rw-r--r--MLEB/Translate/tests/phpunit/HookDocTest.php42
-rw-r--r--MLEB/Translate/tests/phpunit/Makefile2
-rw-r--r--MLEB/Translate/tests/phpunit/MediaWikiExtensionTest.php40
-rw-r--r--MLEB/Translate/tests/phpunit/MediaWikiMessageCheckerTest.php102
-rw-r--r--MLEB/Translate/tests/phpunit/MessageCollectionTest.php32
-rw-r--r--MLEB/Translate/tests/phpunit/MessageGroupBaseTest.php98
-rw-r--r--MLEB/Translate/tests/phpunit/MessageGroupStatesUpdaterJobTest.php92
-rw-r--r--MLEB/Translate/tests/phpunit/MessageGroupsTest.php72
-rw-r--r--MLEB/Translate/tests/phpunit/MessageIndexRebuildJobTest.php32
-rw-r--r--MLEB/Translate/tests/phpunit/MessageIndexTest.php150
-rw-r--r--MLEB/Translate/tests/phpunit/MockFileBasedMessageGroup.php4
-rw-r--r--MLEB/Translate/tests/phpunit/MockMessageCollectionForExport.php10
-rw-r--r--MLEB/Translate/tests/phpunit/MockWikiMessageGroup.php2
-rw-r--r--MLEB/Translate/tests/phpunit/PageTranslationParserTest.php13
-rw-r--r--MLEB/Translate/tests/phpunit/PageTranslationTaggingTest.php33
-rw-r--r--MLEB/Translate/tests/phpunit/ResourcesOrderTest.php6
-rw-r--r--MLEB/Translate/tests/phpunit/SolrTTMServerTest.php55
-rw-r--r--MLEB/Translate/tests/phpunit/SpecialPagesTest.php31
-rw-r--r--MLEB/Translate/tests/phpunit/StringMatcherTest.php72
-rw-r--r--MLEB/Translate/tests/phpunit/TPParseTest.php6
-rw-r--r--MLEB/Translate/tests/phpunit/TTMServerTest.php40
-rw-r--r--MLEB/Translate/tests/phpunit/TranslateHooksTest.php49
-rw-r--r--MLEB/Translate/tests/phpunit/TranslateSandboxTest.php11
-rw-r--r--MLEB/Translate/tests/phpunit/TranslationFuzzyUpdaterTest.php34
-rw-r--r--MLEB/Translate/tests/phpunit/TranslationStashStorageTest.php6
-rw-r--r--MLEB/Translate/tests/phpunit/api/ApiGroupReviewTest.php13
-rw-r--r--MLEB/Translate/tests/phpunit/api/ApiQueryMessageGroupsTest.php36
-rw-r--r--MLEB/Translate/tests/phpunit/api/ApiTokensTest.php57
-rw-r--r--MLEB/Translate/tests/phpunit/api/ApiTranslationReviewTest.php55
-rw-r--r--MLEB/Translate/tests/phpunit/data/Example-result.i18n.php3
-rw-r--r--MLEB/Translate/tests/phpunit/data/Example.i18n.php3
-rw-r--r--MLEB/Translate/tests/phpunit/data/MediaWikiExtensionTest-conf1.yaml26
-rw-r--r--MLEB/Translate/tests/phpunit/data/MediaWikiExtensionTest-conf2.yaml7
-rw-r--r--MLEB/Translate/tests/phpunit/data/MediaWikiExtensionTest-conf3.yaml6
-rw-r--r--MLEB/Translate/tests/phpunit/data/MediaWikiExtensionTest-conf4.yaml8
-rw-r--r--MLEB/Translate/tests/phpunit/data/mediawiki-extensions.txt11
-rw-r--r--MLEB/Translate/tests/phpunit/ffs/AmdFFSTest.php44
-rw-r--r--MLEB/Translate/tests/phpunit/ffs/AndroidXmlFFSTest.php65
-rw-r--r--MLEB/Translate/tests/phpunit/ffs/AppleFFSTest.php63
-rw-r--r--MLEB/Translate/tests/phpunit/ffs/DtdFFSTest.php20
-rw-r--r--MLEB/Translate/tests/phpunit/ffs/GettextFFSTest.php152
-rw-r--r--MLEB/Translate/tests/phpunit/ffs/IniFFSTest.php24
-rw-r--r--MLEB/Translate/tests/phpunit/ffs/JavaFFSTest.php50
-rw-r--r--MLEB/Translate/tests/phpunit/ffs/JsonFFSTest.php52
-rw-r--r--MLEB/Translate/tests/phpunit/ffs/MediaWikiExtensionFFSTest.php110
-rw-r--r--MLEB/Translate/tests/phpunit/ffs/RubyYamlFFSTest.php125
-rw-r--r--MLEB/Translate/tests/phpunit/ffs/XliffFFSTest.php27
-rw-r--r--MLEB/Translate/tests/phpunit/insertables/MediaWikiInsertablesSuggesterTest.php23
-rw-r--r--MLEB/Translate/tests/phpunit/insertables/TranslatablePageInsertablesSuggesterTest.php24
-rw-r--r--MLEB/Translate/tests/qunit/ext.translate.parsers.test.js7
-rw-r--r--MLEB/Translate/tests/qunit/ext.translate.special.pagemigration.test.js55
-rw-r--r--MLEB/Translate/translationaids/CurrentTranslationAid.php9
-rw-r--r--MLEB/Translate/translationaids/DocumentationAid.php6
-rw-r--r--MLEB/Translate/translationaids/GettextDocumentationAid.php13
-rw-r--r--MLEB/Translate/translationaids/InOtherLanguagesAid.php14
-rw-r--r--MLEB/Translate/translationaids/InsertablesAid.php15
-rw-r--r--MLEB/Translate/translationaids/MachineTranslationAid.php77
-rw-r--r--MLEB/Translate/translationaids/MessageDefinitionAid.php8
-rw-r--r--MLEB/Translate/translationaids/SupportAid.php59
-rw-r--r--MLEB/Translate/translationaids/TTMServerAid.php65
-rw-r--r--MLEB/Translate/translationaids/TranslationAid.php94
-rw-r--r--MLEB/Translate/translationaids/UnsupportedTranslationAid.php2
-rw-r--r--MLEB/Translate/translationaids/UpdatedDefinitionAid.php32
-rw-r--r--MLEB/Translate/ttmserver/DatabaseTTMServer.php65
-rw-r--r--MLEB/Translate/ttmserver/ElasticSearchTTMServer.php621
-rw-r--r--MLEB/Translate/ttmserver/FakeTTMServer.php12
-rw-r--r--MLEB/Translate/ttmserver/Interfaces.php37
-rw-r--r--MLEB/Translate/ttmserver/RemoteTTMServer.php4
-rw-r--r--MLEB/Translate/ttmserver/SolrTTMServer.php80
-rw-r--r--MLEB/Translate/ttmserver/TTMServer.php97
-rw-r--r--MLEB/Translate/ttmserver/TTMServerMessageUpdateJob.php322
-rw-r--r--MLEB/Translate/utils/ExternalMessageSourceStateComparator.php68
-rw-r--r--MLEB/Translate/utils/Font.php15
-rw-r--r--MLEB/Translate/utils/FuzzyBot.php9
-rw-r--r--MLEB/Translate/utils/HTMLJsSelectToInputField.php20
-rw-r--r--MLEB/Translate/utils/JsSelectToInput.php38
-rw-r--r--MLEB/Translate/utils/MemProfile.php14
-rw-r--r--MLEB/Translate/utils/MessageGroupCache.php16
-rw-r--r--MLEB/Translate/utils/MessageGroupStates.php4
-rw-r--r--MLEB/Translate/utils/MessageGroupStatesUpdaterJob.php24
-rw-r--r--MLEB/Translate/utils/MessageGroupStats.php340
-rw-r--r--MLEB/Translate/utils/MessageHandle.php107
-rw-r--r--MLEB/Translate/utils/MessageIndex.php422
-rw-r--r--MLEB/Translate/utils/MessageIndexRebuildJob.php26
-rw-r--r--MLEB/Translate/utils/MessageTable.php418
-rw-r--r--MLEB/Translate/utils/MessageUpdateJob.php42
-rw-r--r--MLEB/Translate/utils/MessageWebImporter.php188
-rw-r--r--MLEB/Translate/utils/RcFilter.php194
-rw-r--r--MLEB/Translate/utils/ResourceLoader.php8
-rw-r--r--MLEB/Translate/utils/RevTag.php83
-rw-r--r--MLEB/Translate/utils/StatsBar.php38
-rw-r--r--MLEB/Translate/utils/StatsTable.php155
-rw-r--r--MLEB/Translate/utils/ToolBox.php21
-rw-r--r--MLEB/Translate/utils/TranslateLogFormatter.php12
-rw-r--r--MLEB/Translate/utils/TranslateMetadata.php29
-rw-r--r--MLEB/Translate/utils/TranslateSandbox.php163
-rw-r--r--MLEB/Translate/utils/TranslateSandboxEmailJob.php18
-rw-r--r--MLEB/Translate/utils/TranslateYaml.php81
-rw-r--r--MLEB/Translate/utils/TranslationEditPage.php314
-rw-r--r--MLEB/Translate/utils/TranslationHelpers.php1136
-rw-r--r--MLEB/Translate/utils/TranslationStats.php14
-rw-r--r--MLEB/Translate/utils/TuxMessageTable.php19
-rw-r--r--MLEB/Translate/utils/UserToggles.php42
-rw-r--r--MLEB/Translate/webservices/ApertiumWebService.php73
-rw-r--r--MLEB/Translate/webservices/CxserverWebService.php67
-rw-r--r--MLEB/Translate/webservices/MicrosoftWebService.php152
-rw-r--r--MLEB/Translate/webservices/RemoteTTMServerWebService.php55
-rw-r--r--MLEB/Translate/webservices/TranslationWebService.php244
-rw-r--r--MLEB/Translate/webservices/TranslationWebServiceException.php2
-rw-r--r--MLEB/Translate/webservices/YandexWebService.php84
-rw-r--r--MLEB/UniversalLanguageSelector/.gitignore7
-rw-r--r--MLEB/UniversalLanguageSelector/.gitreview6
-rw-r--r--MLEB/UniversalLanguageSelector/.jshintignore4
-rw-r--r--MLEB/UniversalLanguageSelector/.jshintrc32
-rw-r--r--MLEB/UniversalLanguageSelector/.rubocop.yml1
-rw-r--r--MLEB/UniversalLanguageSelector/.rubocop_todo.yml125
-rw-r--r--MLEB/UniversalLanguageSelector/CREDITS2
-rw-r--r--MLEB/UniversalLanguageSelector/Gemfile7
-rw-r--r--MLEB/UniversalLanguageSelector/Gemfile.lock97
-rw-r--r--MLEB/UniversalLanguageSelector/Gruntfile.js72
-rw-r--r--MLEB/UniversalLanguageSelector/README2
-rw-r--r--MLEB/UniversalLanguageSelector/Resources.php272
-rw-r--r--MLEB/UniversalLanguageSelector/UniversalLanguageSelector.hooks.php421
-rw-r--r--MLEB/UniversalLanguageSelector/UniversalLanguageSelector.php233
-rw-r--r--MLEB/UniversalLanguageSelector/api/ApiLanguageSearch.php57
-rw-r--r--MLEB/UniversalLanguageSelector/api/ApiULSLocalization.php51
-rw-r--r--MLEB/UniversalLanguageSelector/composer.json27
-rw-r--r--MLEB/UniversalLanguageSelector/composer.lock118
-rw-r--r--MLEB/UniversalLanguageSelector/data/LanguageNameIndexer.php132
-rw-r--r--MLEB/UniversalLanguageSelector/data/LanguageNameSearch.php139
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/TODO1
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/AbyssinicaSIL/AbyssinicaSIL-R.eotbin220135 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Akkadian/Akkadian.eotbin680510 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Akkadian/font.ini2
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Alef/Alef-Bold.eotbin36162 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Alef/Alef-Regular.eotbin37311 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Alef/font.ini4
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/AnjaliOldLipi/AnjaliOldLipi.eotbin130193 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/AnjaliOldLipi/AnjaliOldLipi.ttfbin430056 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/AnjaliOldLipi/AnjaliOldLipi.woffbin176756 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/AnjaliOldLipi/font.ini6
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Artaxerxes/Artaxerxes.eotbin4428 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Artaxerxes/font.ini2
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Autonym/Autonym.eotbin47118 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Autonym/Autonym.ttfbin85592 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Autonym/Autonym.woffbin54516 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Autonym/font.ini6
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/CharisSIL/CharisSIL-R.eotbin442882 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/ComicNeue/ComicNeue-Bold.eotbin19331 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/ComicNeue/ComicNeue-Regular-Oblique.eotbin21502 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/ComicNeue/ComicNeue-Regular.eotbin19966 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/ComicNeue/font.ini6
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/DoulosSIL/DoulosSIL-R.eotbin471459 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/EastSyriacAdiabene/SyrCOMAdiabene.eotbin35840 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/EstrangeloEdessa/SyrCOMEdessa.eotbin35160 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/FreeFontThana/FreeFont-Thaana-Bold.eotbin91378 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/FreeFontThana/FreeFont-Thaana.eotbin100501 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/FreeFontThana/font.ini6
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/GentiumPlus/GentiumPlus-I.eotbin503859 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/GentiumPlus/GentiumPlus-R.eotbin482493 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/GentiumPlus/font.ini4
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Gubbi/Gubbi.eotbin41454 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Gubbi/Gubbi.ttfbin128132 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Gubbi/Gubbi.woffbin55260 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Gubbi/font.ini6
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Hanuman/Hanuman.eotbin111034 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Hanuman/Hanumanb.eotbin105390 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Hanuman/font.ini4
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/HussainiNastaleeq/hussaini-nastaleeq.eotbin135331 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSans/font.ini4
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSans/irsans.eotbin28344 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSans/irsansb.eotbin28311 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSerif/font.ini2
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSerif/irseri.eotbin30200 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Jomolhari/Jomolhari.eotbin264587 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode-Bold.eotbin73957 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode-BoldItalic.eotbin67962 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode-Italic.eotbin148718 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode.eotbin224517 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/font.ini8
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/KhmerOS/KhmerOS.eotbin89468 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/KhmerOS/font.ini2
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/KhmerOSbattambang/KhmerOSbattambang.eotbin62477 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/KhmerOSbattambang/font.ini2
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Lateef/LateefRegOT.eotbin89396 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Lateef/font.ini2
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_RBIah.eotbin181187 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_RBah.eotbin250795 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_RIah.eotbin263077 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_Rah.eotbin290281 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/font.ini8
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitAssamese/Lohit-Assamese.eotbin58971 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitAssamese/Lohit-Assamese.ttfbin139396 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitAssamese/Lohit-Assamese.woffbin68640 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitAssamese/font.ini6
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitBengali/Lohit-Bengali.eotbin58976 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitBengali/Lohit-Bengali.ttfbin139448 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitBengali/Lohit-Bengali.woffbin68660 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitBengali/font.ini6
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitDevanagari/Lohit-Devanagari.eotbin33747 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitDevanagari/Lohit-Devanagari.ttfbin70380 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitDevanagari/Lohit-Devanagari.woffbin38188 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitDevanagari/font.ini8
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitGujarati/Lohit-Gujarati.eotbin24642 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitGujarati/Lohit-Gujarati.ttfbin60572 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitGujarati/Lohit-Gujarati.woffbin28636 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitGujarati/font.ini7
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitKannada/Lohit-Kannada.eotbin38567 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitKannada/Lohit-Kannada.ttfbin197872 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitKannada/Lohit-Kannada.woffbin49248 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitKannada/font.ini7
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitMarathi/Lohit-Marathi.eotbin32990 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitMarathi/Lohit-Marathi.ttfbin68768 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitMarathi/Lohit-Marathi.woffbin37284 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitMarathi/font.ini8
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitNepali/Lohit-Nepali.eotbin33045 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitNepali/Lohit-Nepali.ttfbin68912 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitNepali/Lohit-Nepali.woffbin37340 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitNepali/font.ini8
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitOdia/Lohit-Odia.eotbin44472 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitOdia/Lohit-Odia.ttfbin97912 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitOdia/Lohit-Odia.woffbin48916 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitOdia/font.ini7
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitPunjabi/Lohit-Punjabi.eotbin11029 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitPunjabi/Lohit-Punjabi.ttfbin23912 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitPunjabi/Lohit-Punjabi.woffbin12900 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitPunjabi/font.ini7
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamil/Lohit-Tamil.eotbin22168 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamil/Lohit-Tamil.ttfbin62248 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamil/Lohit-Tamil.woffbin26860 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamil/font.ini6
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamilClassical/Lohit-Tamil-Classical.eotbin22983 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamilClassical/Lohit-Tamil-Classical.ttfbin65608 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamilClassical/Lohit-Tamil-Classical.woffbin27716 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamilClassical/font.ini6
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTelugu/Lohit-Telugu.eotbin49491 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTelugu/Lohit-Telugu.ttfbin170776 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTelugu/Lohit-Telugu.woffbin57760 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTelugu/font.ini7
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Meera/Meera.eotbin126508 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Meera/Meera.ttfbin310536 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Meera/Meera.woffbin144984 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Meera/font.ini6
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/MiriamCLM/MiriamCLM-Book.eotbin8691 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/MiriamCLM/font.ini2
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Myanmar3/Myanmar3.eotbin40843 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Myanmar3/font.ini2
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/NafeesWeb/NafeesWeb.eotbin74723 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/NafeesWeb/font.ini2
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nazli/Nazli-bold.eotbin28395 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nazli/Nazli.eotbin56111 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nazli/font.ini6
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nokora/Nokora-Bold.eotbin15756 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nokora/Nokora-Regular.eotbin15983 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nokora/font.ini4
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/NuosuSIL/NuosuSIL.eotbin112158 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/NuosuSIL/font.ini2
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Bold.eotbin25654 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Bold.woffbin33116 -> 60708 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-BoldItalic.eotbin45581 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-BoldItalic.woffbin62012 -> 113124 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Italic.eotbin45098 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Italic.woffbin59932 -> 110192 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Regular.eotbin28234 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Regular.woffbin34948 -> 59148 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/font.ini14
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/font.ini10
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskie.eotbin125221 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskiebold.eotbin129051 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskiebolditalic.eotbin134770 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskieitalic.eotbin138592 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Padauk/Padauk-Regular.eotbin91986 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Padauk/Padauk-Regular.ttfbin337632 -> 445176 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Padauk/Padauk-Regular.woffbin116768 -> 121092 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Padauk/font.ini2
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Pagul/Pagul.eotbin68618 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Pagul/font.ini2
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Pangururan/Pangururan.eotbin45668 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Pangururan/font.ini2
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Phetsarath/Phetsarath-Bold.eotbin29830 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Phetsarath/Phetsarath-Regular.eotbin13554 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Phetsarath/font.ini4
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/README26
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/RailwaySans/RailwaySans.eotbin21291 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/RailwaySans/font.ini2
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Saab/Saab.eotbin43231 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Saab/Saab.ttfbin114092 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Saab/Saab.woffbin44648 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Saab/font.ini6
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Scheherazade/Scheherazade-R.eotbin152162 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Scheherazade/font.ini2
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/SertoUrhoy/SyrCOMUrhoy.eotbin46868 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Shapour/Shapour.eotbin3679 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Shapour/font.ini2
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/SiyamRupali/SiyamRupali.eotbin147367 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/SiyamRupali/font.ini2
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Skeirs/Skeirs II.eotbin14961 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Skeirs/Skeirs II.ttfbin36112 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Skeirs/Skeirs II.woffbin17340 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Skeirs/font.ini6
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Suwannaphum/Suwannaphum.eotbin23034 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Suwannaphum/font.ini2
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TaameyFrankCLM/TaameyFrankCLM.eotbin34032 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TaameyFrankCLM/font.ini2
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TharLon/TharLon.eotbin99664 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thendral/ThendralUni.eotbin44921 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thendral/ThendralUni.ttfbin100904 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thendral/ThendralUni.woffbin47004 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thendral/font.ini6
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thenee/TheneeUni.eotbin59340 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thenee/TheneeUni.ttfbin185436 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thenee/TheneeUni.woffbin66968 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thenee/font.ini6
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TuladhaJejeg/TuladhaJejeg_gr.eotbin238065 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/UnifrakturMaguntia/UnifrakturMaguntia.eotbin46788 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/UnifrakturMaguntia/font.ini2
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-bold.eotbin200158 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-bold.ttfbin604688 -> 526500 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-bold.woffbin232032 -> 220528 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-boldslanted.eotbin210489 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-boldslanted.ttfbin616596 -> 530664 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-boldslanted.woffbin244524 -> 227284 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-regular.eotbin204929 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-regular.ttfbin610836 -> 547000 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-regular.woffbin237376 -> 233252 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-slanted.eotbin216757 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-slanted.ttfbin631872 -> 532656 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-slanted.woffbin250648 -> 229560 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/font.ini10
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/lklug/font.ini4
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/lklug/lklug.eotbin66682 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/madan/font.ini6
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/madan/madan.eotbin79726 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/madan/madan.ttfbin254796 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/madan/madan.woffbin106504 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/madan/madan_license.txt16
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/saweri/font.ini4
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/saweri/saweri.eotbin2870 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/utkal/font.ini6
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/utkal/utkal.eotbin72405 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/utkal/utkal.ttfbin169888 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/utkal/utkal.woffbin92056 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/licenses/README15
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/scripts/compile.php102
-rw-r--r--MLEB/UniversalLanguageSelector/data/langnames.ser1
-rw-r--r--MLEB/UniversalLanguageSelector/extension.json282
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/ace.json4
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/af.json10
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/ang.json4
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/ar.json19
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/arq.json3
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/ast.json20
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/awa.json5
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/az.json13
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/azb.json10
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/bcl.json5
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/be-tarask.json19
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/bg.json24
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/bho.json4
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/bn.json34
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/br.json5
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/bs.json32
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/ca.json5
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/ce.json13
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/ckb.json11
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/co.json4
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/cs.json13
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/cu.json6
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/cy.json5
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/da.json4
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/de.json15
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/diq.json44
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/dsb.json5
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/el.json5
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/en.json15
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/eo.json12
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/es.json20
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/et.json14
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/eu.json44
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/fa.json11
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/fi.json26
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/fr.json26
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/frp.json4
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/frr.json12
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/fur.json4
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/fy.json7
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/gd.json5
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/gl.json22
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/gsw.json17
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/gu.json14
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/gv.json4
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/he.json17
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/hi.json6
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/hr.json16
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/hsb.json5
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/hu.json9
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/hy.json17
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/ia.json9
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/id.json48
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/ilo.json14
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/it.json10
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/ja.json13
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/ka.json5
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/kk-cyrl.json10
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/km.json3
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/ko.json28
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/krc.json3
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/ksh.json20
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/ku-latn.json22
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/kw.json4
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/la.json18
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/lb.json5
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/lrc.json8
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/lt.json18
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/lv.json45
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/lzh.json9
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/mk.json19
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/mn.json4
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/mr.json44
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/mt.json4
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/nap.json19
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/nb.json25
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/nds-nl.json15
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/ne.json4
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/nl.json39
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/nn.json21
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/oc.json11
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/olo.json3
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/or.json6
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/os.json4
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/pa.json5
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/pl.json11
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/ps.json8
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/pt-br.json17
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/pt.json84
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/qqq.json25
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/qu.json3
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/ro.json9
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/roa-tara.json11
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/ru.json25
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/sa.json15
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/scn.json4
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/sd.json60
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/sk.json3
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/sl.json15
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/so.json4
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/sq.json17
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/sr-ec.json30
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/sr-el.json16
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/sv.json19
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/sw.json5
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/ta.json4
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/te.json14
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/tl.json23
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/tr.json12
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/tt-cyrl.json20
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/uk.json17
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/ur.json55
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/vi.json15
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/vo.json4
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/xmf.json5
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/yi.json5
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/zh-hans.json18
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/zh-hant.json19
-rw-r--r--MLEB/UniversalLanguageSelector/includes/ResourceLoaderULSJsonMessageModule.php43
-rw-r--r--MLEB/UniversalLanguageSelector/includes/ResourceLoaderULSModule.php61
-rw-r--r--MLEB/UniversalLanguageSelector/includes/ULSJsonMessageLoader.php12
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.i18n/CREDITS9
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.i18n/GPL-LICENSE342
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.i18n/MIT-LICENSE21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.i18n/README.md432
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.i18n/jquery.i18n.emitter.bidi.js88
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.i18n/jquery.i18n.emitter.js168
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.i18n/jquery.i18n.fallbacks.js186
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.i18n/jquery.i18n.js287
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.i18n/jquery.i18n.language.js472
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.i18n/jquery.i18n.messagestore.js125
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.i18n/jquery.i18n.parser.js309
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/bs.js22
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/dsb.js22
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/fi.js49
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/ga.js38
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/he.js31
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/hsb.js21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/hu.js26
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/hy.js25
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/la.js54
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/ml.js98
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/os.js76
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/ru.js29
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/sl.js26
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/uk.js39
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.i18n/package.json47
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/css/jquery.ime.css5
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/jquery.ime.js1361
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/README.md62
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/am/am-transliteration.js6
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ar/ar-kbd.js178
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/as/as-avro.js298
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/as/as-bornona.js130
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/as/as-inscript.js206
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/as/as-inscript2.js216
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/as/as-phonetic.js188
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/as/as-transliteration.js164
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/azb/azb-kbd.js166
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/be/be-kbd.js164
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/be/be-transliteration.js148
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ber/ber-tfng.js72
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bgn/bgn-kbd.js166
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bn/bn-avro.js350
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bn/bn-inscript.js206
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bn/bn-inscript2.js216
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bn/bn-nkb.js200
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bn/bn-probhat.js152
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bo/bo-ewts.js509
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/brx/brx-inscript.js184
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/brx/brx-inscript2.js198
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ckb/ckb-transliteration-arkbd.js156
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ckb/ckb-transliteration-fakbd.js158
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ckb/ckb-transliteration-lakbd.js150
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/cv/cv-cyr-altgr.js168
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/cv/cv-cyr-numbers.js170
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/cv/cv-lat-altgr.js20
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/doi/doi-inscript2.js202
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/el/el-kbd.js156
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-h-f.js84
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-h.js72
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-plena.js156
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-q.js74
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-transliteration.js5
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-vi.js96
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-x.js72
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/fa/fa-kbd.js270
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/fi/fi-transliteration.js20
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/fonipa/ipa-sil.js390
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/fonipa/ipa-x-sampa.js306
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/gom/gom-inscript2.js200
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/gu/gu-inscript.js188
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/gu/gu-inscript2.js198
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/gu/gu-phonetic.js188
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/gu/gu-transliteration.js254
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/he/he-standard-2012-extonly.js72
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hi/hi-inscript2.js216
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hi/hi-phonetic.js188
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hr/hr-kbd.js84
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hy/hy-emslegacy.js270
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hy/hy-ephonetic.js270
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hy/hy-ephoneticalt.js270
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hy/hy-typewriter.js270
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hy/hy-wmslegacy.js270
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/jv/jv-transliteration.js400
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ka/ka-kbd.js78
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ka/ka-transliteration.js72
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/kk/kk-arabic.js88
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/kk/kk-kbd.js180
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/kn/kn-inscript.js188
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/kn/kn-inscript2.js200
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/kn/kn-kgp.js168
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/kn/kn-transliteration.js254
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ks/ks-inscript.js216
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ks/ks-kbd.js190
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ku/ku-h.js56
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ku/ku-tr.js26
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ky/ky-cyrl-alt.js12
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/lo/lo-kbd.js208
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/lrc/lrc-kbd.js166
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/lud/lud-transliteration.js18
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mai/mai-inscript.js2
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mai/mai-inscript2.js2
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mh/mh.js32
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ml/ml-inscript2.js220
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mn/mn-cyrl.js184
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mni/mni-inscript2.js212
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mr/mr-inscript.js196
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mr/mr-inscript2.js204
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mr/mr-phonetic.js186
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mr/mr-transliteration.js238
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/my/my-xkb.js364
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/nb/nb-normforms.js2
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/nb/nb-tildeforms.js4
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ne/ne-inscript.js190
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ne/ne-inscript2.js198
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ne/ne-rom.js180
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ne/ne-trad.js180
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ne/ne-transliteration.js284
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/or/or-inscript.js174
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/or/or-inscript2.js196
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/or/or-lekhani.js291
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/or/or-phonetic.js186
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/or/or-transliteration.js73
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/pa/pa-inscript.js160
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/pa/pa-inscript2.js184
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/pa/pa-jhelum.js224
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/pa/pa-phonetic.js164
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/pa/pa-transliteration.js176
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ru/ru-jcuken.js148
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ru/ru-kbd.js164
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ru/ru-phonetic.js132
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ru/ru-yawerty.js182
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sa/sa-iast.js78
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sa/sa-inscript.js188
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sa/sa-inscript2.js196
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sa/sa-transliteration.js282
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sah/sah-transliteration.js164
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sat/sat-inscript2.js178
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sd/sd-inscript2.js210
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sdh/sdh-kbd.js166
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/se/se-normforms.js6
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/si/si-singlish.js164
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/si/si-wijesekara.js168
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sk/sk-kbd.js160
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sr/sr-kbd.js160
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ta/ta-99.js23
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ta/ta-inscript2.js174
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/te/te-apple.js256
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/te/te-inscript.js190
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/te/te-inscript2.js214
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/te/te-modular.js272
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/te/te-transliteration.js324
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/th/th-kedmanee.js188
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/th/th-pattachote.js188
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/udm/udm-alt.js36
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ug/ug-kbd.js122
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/uk/uk-kbd.js164
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ur/ur-phonetic.js172
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ur/ur-transliteration.js162
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/uz/uz-kbd.js168
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/vec/vec-GVU.js30
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/css/jquery.uls.compact.css73
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/css/jquery.uls.css219
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/css/jquery.uls.grid.css40
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/css/jquery.uls.lcd.css136
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/css/jquery.uls.mobile.css46
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/aeb-latn.json1
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/af.json18
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/am.json1
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ar.json13
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/as.json1
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ast.json6
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/av.json1
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/awa.json1
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/az.json8
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/azb.json15
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/bbc-latn.json1
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/bcc.json1
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/bcl.json1
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/be-tarask.json10
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/be.json9
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/bg.json8
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/bgn.json11
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/bn.json12
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/br.json8
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/bs.json6
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ca.json9
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ce.json9
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ckb.json10
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/cs.json12
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/cv.json4
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/cy.json11
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/da.json12
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/de.json9
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/diq.json13
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/dsb.json1
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/dty.json10
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/el.json9
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/en-gb.json9
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/en.json6
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/eo.json10
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/es.json4
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/et.json4
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/eu.json12
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/fa.json10
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/fi.json23
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/fo.json1
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/fr.json14
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/fur.json1
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/fy.json4
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ga.json1
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/gd.json9
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/gl.json10
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/gn.json16
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/gom-latn.json6
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/got.json3
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/gsw.json12
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/gu.json8
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/hak.json1
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/haw.json1
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/he.json9
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/hi.json11
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/hr.json7
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/hrx.json1
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/hsb.json3
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/hu.json9
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/hy.json1
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ia.json8
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/id.json9
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ie.json9
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ilo.json1
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/inh.json23
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/is.json6
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/it.json11
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ja.json12
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ka.json6
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/kab.json24
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/khw.json1
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/kk-cyrl.json1
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/km.json13
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/kn.json1
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ko.json10
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/krc.json1
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ksh.json3
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ku-latn.json12
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ky.json1
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/lb.json6
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/lez.json1
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/li.json12
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/lki.json16
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/lrc.json1
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/lt.json13
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/lv.json11
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/map-bms.json1
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/mg.json8
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/min.json1
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/mk.json8
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ml.json1
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/mn.json1
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/mr.json11
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ms.json1
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/mt.json7
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/mzn.json1
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nap.json11
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nb.json8
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nds-nl.json1
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ne.json8
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nl-informal.json4
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nl.json12
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nn.json7
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nso.json3
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/oc.json6
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/olo.json2
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/om.json1
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/or.json9
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/os.json1
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/pa.json8
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/pl.json4
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/pms.json3
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ps.json13
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/pt-br.json11
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/pt.json13
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/qqq.json4
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ro.json12
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ru.json7
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/rup.json1
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sa.json5
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sc.json8
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sco.json11
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sdh.json1
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/shn.json5
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/si.json3
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sk.json5
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sl.json11
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sq.json10
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sr-ec.json9
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sr-el.json9
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sv.json9
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sw.json4
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ta.json7
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/te.json9
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/th.json9
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/tly.json16
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/tr.json14
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/tt-cyrl.json6
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/tzm.json1
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/udm.json9
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ug-arab.json9
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/uk.json10
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ur.json15
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/uz.json1
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/vec.json10
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/vep.json1
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/vi.json6
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/war.json6
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/zea.json3
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/zh-hans.json6
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/zh-hant.json12
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/images/close.pngbin180 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/images/close.svg1
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/images/icon-language.pngbin802 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/images/icon-language.svg1
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/images/search.pngbin664 -> 709 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/images/search.svg5
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/src/jquery.uls.core.js367
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/src/jquery.uls.data.js5701
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/src/jquery.uls.data.utils.js320
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/src/jquery.uls.languagefilter.js304
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/src/jquery.uls.lcd.js263
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/src/jquery.uls.regionfilter.js130
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.webfonts.js517
-rw-r--r--MLEB/UniversalLanguageSelector/lib/rangy/rangy-core.js5561
-rw-r--r--MLEB/UniversalLanguageSelector/package.json22
-rw-r--r--MLEB/UniversalLanguageSelector/resources/css/ext.uls-monobook.css2
-rw-r--r--MLEB/UniversalLanguageSelector/resources/css/ext.uls.buttons.css158
-rw-r--r--MLEB/UniversalLanguageSelector/resources/css/ext.uls.compactlinks.css40
-rw-r--r--MLEB/UniversalLanguageSelector/resources/css/ext.uls.css46
-rw-r--r--MLEB/UniversalLanguageSelector/resources/css/ext.uls.displaysettings.css93
-rw-r--r--MLEB/UniversalLanguageSelector/resources/css/ext.uls.inputsettings.css147
-rw-r--r--MLEB/UniversalLanguageSelector/resources/css/ext.uls.interlanguage.css21
-rw-r--r--MLEB/UniversalLanguageSelector/resources/css/ext.uls.languagesettings.css137
-rw-r--r--MLEB/UniversalLanguageSelector/resources/css/ext.uls.nojs.css4
-rw-r--r--MLEB/UniversalLanguageSelector/resources/css/ext.uls.pt.css57
-rw-r--r--MLEB/UniversalLanguageSelector/resources/images/cog-sprite.pngbin475 -> 475 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/resources/images/cog-sprite.svg9
-rw-r--r--MLEB/UniversalLanguageSelector/resources/images/cog.pngbin336 -> 297 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/resources/images/cog.svg5
-rw-r--r--MLEB/UniversalLanguageSelector/resources/images/compact-links-ltr.pngbin7424 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/resources/images/compact-links-ltr.svg30
-rw-r--r--MLEB/UniversalLanguageSelector/resources/images/compact-links-rtl.pngbin7301 -> 0 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/resources/images/compact-links-rtl.svg30
-rw-r--r--MLEB/UniversalLanguageSelector/resources/images/compact-links-trigger.svg5
-rw-r--r--MLEB/UniversalLanguageSelector/resources/images/display.pngbin526 -> 348 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/resources/images/display.svg5
-rw-r--r--MLEB/UniversalLanguageSelector/resources/images/help.pngbin401 -> 297 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/resources/images/help.svg5
-rw-r--r--MLEB/UniversalLanguageSelector/resources/images/input.svg5
-rw-r--r--MLEB/UniversalLanguageSelector/resources/images/remove-input.pngbin599 -> 373 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/resources/images/remove-input.svg6
-rw-r--r--MLEB/UniversalLanguageSelector/resources/js/ext.uls.compactlinks.js724
-rw-r--r--MLEB/UniversalLanguageSelector/resources/js/ext.uls.displaysettings.js217
-rw-r--r--MLEB/UniversalLanguageSelector/resources/js/ext.uls.eventlogger.js98
-rw-r--r--MLEB/UniversalLanguageSelector/resources/js/ext.uls.geoclient.js47
-rw-r--r--MLEB/UniversalLanguageSelector/resources/js/ext.uls.i18n.js14
-rw-r--r--MLEB/UniversalLanguageSelector/resources/js/ext.uls.ime.js68
-rw-r--r--MLEB/UniversalLanguageSelector/resources/js/ext.uls.init.js258
-rw-r--r--MLEB/UniversalLanguageSelector/resources/js/ext.uls.inputsettings.js182
-rw-r--r--MLEB/UniversalLanguageSelector/resources/js/ext.uls.interface.js682
-rw-r--r--MLEB/UniversalLanguageSelector/resources/js/ext.uls.languagesettings.js122
-rw-r--r--MLEB/UniversalLanguageSelector/resources/js/ext.uls.mediawiki.js18
-rw-r--r--MLEB/UniversalLanguageSelector/resources/js/ext.uls.preferences.js69
-rw-r--r--MLEB/UniversalLanguageSelector/resources/js/ext.uls.webfonts.js135
-rw-r--r--MLEB/UniversalLanguageSelector/resources/js/ext.uls.webfonts.mobile.js10
-rw-r--r--MLEB/UniversalLanguageSelector/resources/js/ext.uls.webfonts.repository.js767
-rwxr-xr-xMLEB/UniversalLanguageSelector/scripts/update-jquery-i18n.sh17
-rwxr-xr-xMLEB/UniversalLanguageSelector/scripts/update-jquery-ime.sh33
-rwxr-xr-xMLEB/UniversalLanguageSelector/scripts/update-jquery-uls.sh25
-rwxr-xr-xMLEB/UniversalLanguageSelector/scripts/update-jquery-webfonts.sh25
-rw-r--r--MLEB/UniversalLanguageSelector/tests/autonym.html117
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/README.md1
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/accept_language.feature14
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/autonym.feature39
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/font_selection_default_disabled.feature98
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/font_selection_default_enabled.feature78
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/ime.feature68
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/live_preview_of_display_language.feature44
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/persistent_settings.feature37
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/settings_panel.feature92
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/accept_language_steps.rb12
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/autonym_steps.rb15
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/cog_sidebar_user_steps.rb106
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/common_steps.rb39
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/font_selection_steps.rb47
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/ime_steps.rb77
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/live_preview_of_display_language_steps.rb24
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/panel_steps.rb89
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/persistent_settings_steps.rb16
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/textarea_font_steps.rb23
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/triggers_steps.rb10
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/support/env.rb1
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/support/hooks.rb3
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/support/modules/interlanguage_module.rb23
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/support/modules/language_module.rb22
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/support/pages/edit_page.rb5
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/support/pages/ime_page.rb26
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/support/pages/interlanguage_page.rb10
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/support/pages/main_page.rb25
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/support/pages/no_interlanguage_page.rb11
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/support/pages/panel_page.rb81
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/support/pages/preferences_page.rb12
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/textarea_font.feature47
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/triggers.feature56
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/tags.txt16
-rw-r--r--MLEB/UniversalLanguageSelector/tests/phpunit/LanguageSearchTest.php127
-rw-r--r--MLEB/UniversalLanguageSelector/tests/phpunit/Makefile2
-rw-r--r--MLEB/UniversalLanguageSelector/tests/phpunit/ResourceLoaderULSTest.php49
-rw-r--r--MLEB/UniversalLanguageSelector/tests/qunit/ext.uls.tests.js36
-rw-r--r--MLEB/UniversalLanguageSelector/tests/webfonts.html10
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/autoload.php7
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/ClassLoader.php413
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/autoload_classmap.php9
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/autoload_namespaces.php10
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/autoload_psr4.php9
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/autoload_real.php50
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installed.json102
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/.editorconfig10
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/.gitignore3
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/.travis.yml21
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/LICENSE19
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/README.md193
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/composer.json80
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/phpunit.xml.dist25
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/AglInstaller.php21
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/AimeosInstaller.php9
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/AnnotateCmsInstaller.php11
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/AsgardInstaller.php45
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/BaseInstaller.php135
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/BitrixInstaller.php89
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/BonefishInstaller.php9
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/CakePHPInstaller.php84
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/ChefInstaller.php11
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/ClanCatsFrameworkInstaller.php10
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/CodeIgniterInstaller.php11
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/Concrete5Installer.php12
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/CraftInstaller.php35
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/CroogoInstaller.php21
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/DokuWikiInstaller.php50
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/DolibarrInstaller.php16
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/DrupalInstaller.php14
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/ElggInstaller.php9
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/FuelInstaller.php11
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/FuelphpInstaller.php9
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/GravInstaller.php30
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/HuradInstaller.php25
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/Installer.php176
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/JoomlaInstaller.php15
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/KirbyInstaller.php9
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/KodiCMSInstaller.php10
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/KohanaInstaller.php9
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/LaravelInstaller.php9
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/LithiumInstaller.php10
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/MODULEWorkInstaller.php9
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/MODXEvoInstaller.php16
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/MagentoInstaller.php11
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/MakoInstaller.php9
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/MediaWikiInstaller.php50
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/MicroweberInstaller.php111
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/MoodleInstaller.php56
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/OctoberInstaller.php46
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/OxidInstaller.php11
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/PPIInstaller.php9
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/PhpBBInstaller.php11
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/PimcoreInstaller.php21
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/PiwikInstaller.php32
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/Plugin.php17
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/PrestashopInstaller.php10
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/PuppetInstaller.php11
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/RedaxoInstaller.php10
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/RoundcubeInstaller.php22
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/SMFInstaller.php10
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/ShopwareInstaller.php58
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/SilverStripeInstaller.php36
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/Symfony1Installer.php26
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/TYPO3CmsInstaller.php14
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/TYPO3FlowInstaller.php38
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/TheliaInstaller.php12
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/TuskInstaller.php14
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/WHMCSInstaller.php10
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/WolfCMSInstaller.php9
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/WordPressInstaller.php11
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/ZendInstaller.php11
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/ZikulaInstaller.php10
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/src/bootstrap.php13
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/tests/Composer/Installers/Test/AsgardInstallerTest.php61
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/tests/Composer/Installers/Test/CakePHPInstallerTest.php115
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/tests/Composer/Installers/Test/CraftInstallerTest.php83
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/tests/Composer/Installers/Test/DokuWikiInstallerTest.php89
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/tests/Composer/Installers/Test/GravInstallerTest.php63
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/tests/Composer/Installers/Test/InstallerTest.php428
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/tests/Composer/Installers/Test/MediaWikiInstallerTest.php66
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/tests/Composer/Installers/Test/OctoberInstallerTest.php66
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/tests/Composer/Installers/Test/PimcoreInstallerTest.php44
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/tests/Composer/Installers/Test/PiwikInstallerTest.php63
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/tests/Composer/Installers/Test/TestCase.php64
-rw-r--r--MLEB/UniversalLanguageSelector/vendor/composer/installers/tests/bootstrap.php4
-rw-r--r--MLEB/UniversalLanguageSelector/version4
-rw-r--r--MLEB/cldr/COPYING11
-rw-r--r--MLEB/cldr/CldrCurrencies.php31
-rw-r--r--MLEB/cldr/CldrCurrency/Symbols.php4418
-rw-r--r--MLEB/cldr/CldrNames.php30
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesAa.php11
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesAf.php443
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesAk.php23
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesAm.php430
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesAr.php1063
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesAs.php1185
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesAst.php780
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesAz.php848
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesBe.php1123
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesBg.php340
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesBm.php19
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesBn.php400
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesBo.php38
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesBr.php816
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesBs.php545
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesCa.php332
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesChr.php1075
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesCs.php280
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesCy.php1102
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesDa.php523
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesDe.php404
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesDe_ch.php36
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesDsb.php36
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesDz.php23
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesEe.php298
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesEl.php486
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesEn.php171
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesEn_ca.php130
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesEn_gb.php24
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesEo.php23
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesEs.php249
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesEs_mx.php138
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesEt.php616
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesEu.php478
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesFa.php398
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesFf.php19
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesFi.php192
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesFo.php1051
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesFr.php422
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesFur.php20
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesFy.php64
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesGa.php755
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesGd.php639
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesGl.php778
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesGsw.php39
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesGu.php457
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesGv.php8
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesHa.php25
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesHaw.php12
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesHe.php551
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesHi.php304
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesHr.php462
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesHsb.php36
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesHu.php273
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesHy.php871
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesIa.php715
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesId.php266
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesIg.php18
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesIi.php12
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesIs.php450
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesIt.php301
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesJa.php257
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesKa.php269
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesKab.php1101
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesKea.php628
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesKi.php23
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesKk_cyrl.php899
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesKl.php24
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesKm.php859
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesKn.php406
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesKo.php235
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesKs.php30
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesKsf.php335
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesKsh.php335
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesKw.php32
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesKy.php626
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesLb.php43
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesLg.php23
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesLkt.php184
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesLn.php127
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesLo.php258
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesLt.php381
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesLv.php278
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesMfe.php340
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesMg.php23
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesMk.php329
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesMl.php321
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesMn.php743
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesMr.php340
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesMs.php300
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesMt.php1360
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesMy.php1085
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesNb.php381
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesNe.php690
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesNl.php191
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesNl_be.php6
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesNn.php1047
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesNso.php5
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesOm.php16
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesOr.php894
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesOs.php22
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesPa.php416
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesPl.php406
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesPs.php1082
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesPt.php373
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesPt_br.php535
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesQu.php120
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesRm.php45
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesRn.php23
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesRo.php302
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesRu.php754
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesRw.php14
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesSah.php118
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesSe.php27
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesSes.php19
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesSg.php19
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesShi.php21
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesShi_latn.php109
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesSi.php492
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesSk.php799
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesSl.php518
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesSmn.php85
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesSn.php19
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesSo.php654
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesSq.php912
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesSr_ec.php895
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesSs.php5
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesSt.php97
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesSv.php239
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesSw.php673
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesTa.php558
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesTe.php575
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesTg_cyrl.php486
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesTh.php203
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesTi.php304
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesTn.php83
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesTo.php128
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesTr.php440
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesTs.php29
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesTzm.php21
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesUg.php270
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesUk.php563
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesUr.php424
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesUz.php1119
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesUz_cyrl.php525
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesVe.php5
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesVi.php323
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesVo.php27
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesXh.php17
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesYi.php37
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesYo.php27
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesZgh.php18
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesZh_hans.php1182
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesZh_hant.php211
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesZu.php646
-rw-r--r--MLEB/cldr/CldrSupplemental/Supplemental.php1371
-rw-r--r--MLEB/cldr/CountryNames.body.php84
-rw-r--r--MLEB/cldr/CurrencyNames.body.php84
-rw-r--r--MLEB/cldr/LanguageNames.body.php142
-rw-r--r--MLEB/cldr/LocalNames/LocalNamesBe_tarask.php13
-rw-r--r--MLEB/cldr/LocalNames/LocalNamesEn.php251
-rw-r--r--MLEB/cldr/LocalNames/LocalNamesFa.php299
-rw-r--r--MLEB/cldr/LocalNames/LocalNamesJa.php368
-rw-r--r--MLEB/cldr/LocalNames/LocalNamesNds.php5
-rw-r--r--MLEB/cldr/LocalNames/LocalNamesSh.php5
-rw-r--r--MLEB/cldr/Makefile2
-rw-r--r--MLEB/cldr/README2
-rw-r--r--MLEB/cldr/RELEASE-NOTES9
-rw-r--r--MLEB/cldr/TimeUnits.body.php181
-rw-r--r--MLEB/cldr/cldr.i18n.php35
-rw-r--r--MLEB/cldr/cldr.php36
-rw-r--r--MLEB/cldr/composer.json27
-rw-r--r--MLEB/cldr/i18n/af.json5
-rw-r--r--MLEB/cldr/i18n/ce.json2
-rw-r--r--MLEB/cldr/i18n/en.json8
-rw-r--r--MLEB/cldr/i18n/fy.json3
-rw-r--r--MLEB/cldr/i18n/kea.json5
-rw-r--r--MLEB/cldr/i18n/ksh.json2
-rw-r--r--MLEB/cldr/i18n/li.json5
-rw-r--r--MLEB/cldr/i18n/lt.json5
-rw-r--r--MLEB/cldr/i18n/ug.json12
-rw-r--r--MLEB/cldr/i18n/yue.json6
-rw-r--r--MLEB/cldr/rebuild.php87
-rw-r--r--MLEB/cldr/tests/TimeUnitsTest.php158
2345 files changed, 101957 insertions, 84671 deletions
diff --git a/MLEB/Babel/Babel.class.php b/MLEB/Babel/Babel.class.php
deleted file mode 100644
index 36a50c9f..00000000
--- a/MLEB/Babel/Babel.class.php
+++ /dev/null
@@ -1,512 +0,0 @@
-<?php
-/**
- * Contains main code.
- *
- * @file
- * @author Robert Leverington
- * @author Robin Pepermans
- * @author Niklas Laxström
- * @author Brian Wolff
- * @author Purodha Blissenbach
- * @author Sam Reed
- * @author Siebrand Mazeland
- * @license http://www.gnu.org/copyleft/gpl.html GNU General Public License 2.0 or later
- */
-
-/**
- * Main class for the Babel extension.
- */
-class Babel {
- /**
- * @var Title
- */
- protected static $title;
-
- /**
- * Render the Babel tower.
- *
- * @param $parser Parser.
- * @return string: Babel tower.
- */
- public static function Render( $parser ) {
- global $wgBabelUseUserLanguage;
- $parameters = func_get_args();
- array_shift( $parameters );
- self::$title = $parser->getTitle();
-
- self::mTemplateLinkBatch( $parameters );
-
- $parser->getOutput()->addModuleStyles( 'ext.babel' );
-
- $content = '';
- $templateParameters = array(); // collects name=value parameters to be passed to wiki templates.
- $createCategories = !$parser->mOptions->mIsPreview;
- foreach ( $parameters as $name ) {
- if ( strpos( $name, '=' ) !== false ) {
- $templateParameters[] = $name;
- continue;
- }
- $components = self::mParseParameter( $name );
- $template = wfMessage( 'babel-template', $name )->inContentLanguage()->text();
- if ( $name === '' ) {
- continue;
- } elseif ( $components !== false ) {
- // Valid parameter syntax (with lowercase language code), babel box
- $content .= self::mGenerateBox( $components['code'], $components['level'] );
- $content .= self::mGenerateCategories(
- $components['code'],
- $components['level'],
- $createCategories
- );
- } elseif ( self::mPageExists( $template ) ) {
- // Check for an existing template
- $templateParameters[0] = $template;
- $template = implode( '|', $templateParameters );
- $content .= self::mGenerateNotaBox( $parser->replaceVariables( "{{{$template}}}" ) );
- } elseif ( self::mValidTitle( $template ) ) {
- // Non-existing page, so try again as a babel box,
- // with converting the code to lowercase
- $components2 = self::mParseParameter( $name, /* code to lowercase */
- true );
- if ( $components2 !== false ) {
- $content .= self::mGenerateBox( $components2['code'], $components2['level'] );
- $content .= self::mGenerateCategories(
- $components2['code'],
- $components2['level'],
- $createCategories
- );
- } else {
- // Non-existent page and invalid parameter syntax, red link.
- $content .= self::mGenerateNotaBox( '[[' . $template . ']]' );
- }
- } else {
- // Invalid title, output raw.
- $content .= self::mGenerateNotaBox( $template );
- }
- }
-
- if ( $wgBabelUseUserLanguage ) {
- $uiLang = $parser->getOptions()->getUserLangObj();
- } else {
- $uiLang = self::$title->getPageLanguage();
- }
-
- $top = wfMessage( 'babel', self::$title->getDBkey() )->inLanguage( $uiLang );
-
- if ( $top->isDisabled() ) {
- $top = '';
- } else {
- $top = $top->text();
- $url = wfMessage( 'babel-url' )->inContentLanguage();
- if ( !$url->isDisabled() ) {
- $top = '[[' . $url->text() . '|' . $top . ']]';
- }
- $top = '! class="mw-babel-header" | ' . $top;
- }
- $footer = wfMessage( 'babel-footer', self::$title->getDBkey() )->inLanguage( $uiLang );
-
- $url = wfMessage( 'babel-footer-url' )->inContentLanguage();
- $showfooter = '';
- if ( !$footer->isDisabled() && !$url->isDisabled() ) {
- $showfooter = '! class="mw-babel-footer" | [[' .
- $url->text() . '|' . $footer->text() . ']]';
- }
- $spacing = Babel::mCssAttrib( 'border-spacing', 'babel-box-cellspacing', true );
- $padding = Babel::mCssAttrib( 'padding', 'babel-box-cellpadding', true );
-
- if ( $spacing === '' ) {
- $style = ( $padding === '' ) ? '' : ( 'style="' . $padding . '"' );
- } else {
- $style = ( $padding === '' ) ?
- 'style="' . $spacing . '"' :
- 'style="' . $padding . ' ' . $spacing . '"';
- }
-
- $tower = <<<EOT
-{|$style class="mw-babel-wrapper"
-$top
-|-
-| $content
-|-
-$showfooter
-|}
-EOT;
-
- return $tower;
- }
-
- /**
- * Performs a link batch on a series of templates.
- *
- * @param $parameters Array: Templates to perform the link batch on.
- */
- protected static function mTemplateLinkBatch( $parameters ) {
- $titles = array();
- foreach ( $parameters as $name ) {
- $title = Title::newFromText( wfMessage( 'babel-template', $name )->inContentLanguage()->text() );
- if ( is_object( $title ) ) {
- $titles[] = $title;
- }
- }
-
- $batch = new LinkBatch( $titles );
- $batch->setCaller( __METHOD__ );
- $batch->execute();
- }
-
- /**
- * Identify whether or not a page exists.
- *
- * @param $name String: Name of the page to check.
- * @return Boolean: Indication of whether the page exists.
- */
- protected static function mPageExists( $name ) {
- $titleObj = Title::newFromText( $name );
-
- return ( is_object( $titleObj ) && $titleObj->exists() );
- }
-
- /**
- * Identify whether or not the passed string would make a valid page name.
- *
- * @param $name string: Name of page to check.
- * @return Boolean: Indication of whether or not the title is valid.
- */
- protected static function mValidTitle( $name ) {
- $titleObj = Title::newFromText( $name );
-
- return is_object( $titleObj );
- }
-
- /**
- * Parse a parameter, getting a language code and level.
- *
- * @param $parameter String: Parameter.
- * @param $strtolower Boolean: Whether to convert the language code to lowercase
- * @return Array: { 'code' => xx, 'level' => xx }
- */
- protected static function mParseParameter( $parameter, $strtolower = false ) {
- global $wgBabelDefaultLevel, $wgBabelCategoryNames;
- $return = array();
-
- $babelcode = $strtolower ? strtolower( $parameter ) : $parameter;
- // Try treating the paramter as a language code (for default level).
- $code = BabelLanguageCodes::getCode( $babelcode );
- if ( $code !== false ) {
- $return['code'] = $code;
- $return['level'] = $wgBabelDefaultLevel;
- return $return;
- }
- // Try splitting the paramter in to language and level, split on last hyphen.
- $lastSplit = strrpos( $parameter, '-' );
- if ( $lastSplit === false ) {
- return false;
- }
- $code = substr( $parameter, 0, $lastSplit );
- $level = substr( $parameter, $lastSplit + 1 );
-
- $babelcode = $strtolower ? strtolower( $code ) : $code;
- // Validate code.
- $return['code'] = BabelLanguageCodes::getCode( $babelcode );
- if ( $return['code'] === false ) {
- return false;
- }
- // Validate level.
- $level = strtoupper( $level );
- if ( !isset( $wgBabelCategoryNames[$level] ) ) {
- return false;
- }
- $return['level'] = $level;
-
- return $return;
- }
-
- /**
- * Generate an inner item which is not a babel box.
- *
- * @param $content String: what's inside the box, in wikitext format.
- * @return String: A single non-babel box, in wikitext format.
- */
- protected static function mGenerateNotaBox( $content ) {
- $dir_head = self::$title->getPageLanguage()->getDir();
- $notabox = <<<EOT
-<div class="mw-babel-notabox" dir="$dir_head">$content</div>
-EOT;
-
- return $notabox;
- }
-
- /**
- * Generate a babel box for the given language and level.
- *
- * @param $code String: Language code to use.
- * @param $level String or Integer: Level of ability to use.
- * @return String: A single babel box, in wikitext format.
- */
- protected static function mGenerateBox( $code, $level ) {
- $lang = wfBCP47( $code );
- $portal = wfMessage( 'babel-portal', $code )->inContentLanguage()->plain();
- if ( $portal !== '' ) {
- $portal = "[[$portal|$lang]]";
- } else {
- $portal = $lang;
- }
- $header = "$portal<span class=\"mw-babel-box-level-$level\">-$level</span>";
-
- $code = strtolower( $code );
- $name = BabelLanguageCodes::getName( $code );
- $code = BabelLanguageCodes::getCode( $code );
- $text = self::mGetText( $name, $code, $level );
-
- $dir_current = Language::factory( $code )->getDir();
-
- $spacing = Babel::mCssAttrib( 'border-spacing', 'babel-cellspacing', true );
- $padding = Babel::mCssAttrib( 'padding', 'babel-cellpadding', true );
-
- if ( $spacing === '' ) {
- $style = ( $padding === '' ) ? '' : ( 'style="' . $padding . '"' );
- } else {
- $style = ( $padding === '' ) ?
- 'style="' . $spacing . '"' :
- 'style="' . $padding . ' ' . $spacing . '"';
- }
-
- $dir_head = self::$title->getPageLanguage()->getDir();
-
- $box = <<<EOT
-<div class="mw-babel-box mw-babel-box-$level" dir="$dir_head">
-{|$style
-! dir="$dir_head" | $header
-| dir="$dir_current" lang="$lang" | $text
-|}
-</div>
-EOT;
-
- return $box;
- }
-
- /**
- * Get the text to display in the language box for specific language and
- * level.
- *
- * @param $name string
- * @param $language String: Language code of language to use.
- * @param $level String: Level to use.
- * @return String: Text for display, in wikitext format.
- */
- protected static function mGetText( $name, $language, $level ) {
- global $wgBabelMainCategory, $wgBabelCategoryNames;
-
- if ( $wgBabelCategoryNames[$level] === false ) {
- $categoryLevel = self::$title->getFullText();
- } else {
- $categoryLevel = ':Category:' .
- self::mReplaceCategoryVariables( $wgBabelCategoryNames[$level], $language );
- }
-
- if ( $wgBabelMainCategory === false ) {
- $categoryMain = self::$title->getFullText();
- } else {
- $categoryMain = ':Category:' .
- self::mReplaceCategoryVariables( $wgBabelMainCategory, $language );
- }
-
- // Give grep a chance to find the usages:
- // babel-0-n, babel-1-n, babel-2-n, babel-3-n, babel-4-n, babel-5-n, babel-N-n
- $text = wfMessage( "babel-$level-n",
- $categoryLevel, $categoryMain, '', self::$title->getDBkey()
- )->inLanguage( $language )->text();
-
- $fallbackLanguage = Language::getFallbackfor( $language );
- $fallback = wfMessage( "babel-$level-n",
- $categoryLevel, $categoryMain, '', self::$title->getDBkey()
- )->inLanguage( $fallbackLanguage ? $fallbackLanguage : $language )->text();
-
- // Give grep a chance to find the usages:
- // babel-0, babel-1, babel-2, babel-3, babel-4, babel-5, babel-N
- if ( $text == $fallback ) {
- $text = wfMessage( "babel-$level",
- $categoryLevel, $categoryMain, $name, self::$title->getDBkey()
- )->inLanguage( $language )->text();
- }
-
- return $text;
- }
-
- /**
- * Generate categories for the given language and level.
- *
- * @param $code String: Language code to use.
- * @param $level String or Integer: Level of ability to use.
- * @param $createCategories Boolean: If true, creates non existing categories;
- * otherwise, doesn't create them.
- * @return String: Wikitext to add categories.
- */
- protected static function mGenerateCategories( $code, $level, $createCategories = true ) {
- global $wgBabelMainCategory, $wgBabelCategoryNames;
-
- $r = '';
-
- # Add main category
- if ( $wgBabelMainCategory !== false ) {
- $category = self::mReplaceCategoryVariables( $wgBabelMainCategory, $code );
- $r .= "[[Category:$category|$level]]";
- if ( $createCategories ) {
- BabelAutoCreate::create( $category, $code );
- }
- }
-
- # Add level category
- if ( $wgBabelCategoryNames[$level] !== false ) {
- $category = self::mReplaceCategoryVariables( $wgBabelCategoryNames[$level], $code );
- $r .= "[[Category:$category]]";
- if ( $createCategories ) {
- BabelAutoCreate::create( $category, $code, $level );
- }
- }
-
- return $r;
- }
-
- /**
- * Replace the placeholder variables from the category names configurtion
- * array with actual values.
- *
- * @param $category String: Category name (containing variables).
- * @param $code String: Language code of category.
- * @return String: Category name with variables replaced.
- */
- protected static function mReplaceCategoryVariables( $category, $code ) {
- global $wgLanguageCode;
- $category = strtr( $category, array(
- '%code%' => $code,
- '%wikiname%' => BabelLanguageCodes::getName( $code, $wgLanguageCode ),
- '%nativename%' => BabelLanguageCodes::getName( $code )
- ) );
-
- return $category;
- }
-
- /**
- * Determine a CSS attribute, such as "border-spacing", from a localizeable message.
- *
- * @param $name String: name of CSS attribute.
- * @param $key String: Message key of attribute value.
- * @param $assumeNumbersArePixels Boolean: if true, treat numbers values as pixels;
- * otherwise, keep values as is (default: false).
- * @todo Move this function to a more appropriate place, likely outside the class.
- * @return Message|string
- */
- protected static function mCssAttrib( $name, $key, $assumeNumbersArePixels = false ) {
- $value = wfMessage( $key )->inContentLanguage();
- if ( $value->isDisabled() ) {
- $value = '';
- } else {
- $value = htmlentities( $value->text(), ENT_COMPAT, 'UTF-8' );
- if ( $assumeNumbersArePixels && is_numeric( $value ) && $value !== "0" ) {
- //Compatibility: previous babel-box-cellpadding and
- //babel-box-cellspacing entries were in HTML, not CSS
- //and so used numbers without unity as pixels.
- $value .= 'px';
- }
- $value = ' ' . $name . ': ' . $value . ';';
- }
-
- return $value;
- }
-
- /**
- * Determine an HTML attribute, such as "cellspacing" or "title", from a localizeable message.
- *
- * @param $name String: name of HTML attribute.
- * @param $key String: Message key of attribute value.
- * TODO: move this function to a more appropriate place, likely outside the class.
- * or consider to deprecate it as it's not used anymore.
- * @return Message|string
- */
- protected static function mHtmlAttrib( $name, $key ) {
- $value = wfMessage( $key )->inContentLanguage();
- if ( $value->isDisabled() ) {
- $value = '';
- } else {
- $value = ' ' . $name . '="' . htmlentities( $value->text(), ENT_COMPAT, 'UTF-8' ) .
- '"'; // must get rid of > and " inside value
- }
-
- return $value;
- }
-
- /**
- * Gets the list of languages a user has set up with Babel
- *
- * TODO Can be done much smarter, e.g. by saving the languages in the DB and getting them there
- * TODO There could be an API module that returns the result of this function
- *
- * @param User $user
- * @param string $level minimal level as given in $wgBabelCategoryNames
- * @return string[] List of language codes
- *
- * @since Version 1.9.0
- */
- public static function getUserLanguages( User $user, $level = null ) {
- // Right now the function only returns something if the user is categorized appropriately
- // (as defined by the $wgBabelMainCategory setting). If categorization is off, this function
- // will return an empty array.
- // If Babel would save the languages of the user in a Database table, this workaround using
- // the categories would not be needed.
- global $wgBabelMainCategory;
- // If Babel is not configured as required, return nothing.
- // Note also that "Set to false to disable main category".
- if ( $wgBabelMainCategory === false ) {
- return array();
- }
-
- // The string we construct here will be a pony, it will not be a valid category
- $babelCategoryTitle = Title::makeTitle( NS_CATEGORY, $wgBabelMainCategory );
- // Quote everything to avoid unexpected matches due to parenthesis form
- // It is not necessary to quote any additional chars except the special chars for the regex
- // and perhaps the limiting char, but that should not be respected as anything other than
- // edge delimiter.
- $babelCategoryString = preg_quote( $babelCategoryTitle->getPrefixedDBkey(), '/' );
- // Look for the %code% inside the string and put a group match in the same place
- // This will only work if the previous works so the string isn't misinterpreted as a regular
- // expression itself
- $codeRegex = '/^' . preg_replace( '/%code%/', '(.+?)(-([0-5N]))?', $babelCategoryString ) . '$/';
-
- $categories = array_keys( $user->getUserPage()->getParentCategories() );
-
- // We sort on proficiency level
- $result = array();
- foreach ( $categories as $category ) {
- // Only process categories that matches, $match will be created if necessary
- $res = preg_match( $codeRegex, $category, $match );
- if ( $res ) {
- // lowercase the first char, but stay away from the others in case of region codes
- $code = BabelLanguageCodes::getCode( lcfirst( $match[1] ) );
- if ( $code !== false ) {
- $result[$code] = isset( $match[3] ) ? $match[3] : 'N';
- }
- }
- }
-
- if ( isset( $level ) ) {
- $level = (string)$level;
- // filter down the set, note that this uses a text sort!
- $result = array_filter(
- $result,
- function ( $value ) use ( $level ) {
- return ( strcmp( $value, $level ) >= 0 );
- }
- );
- // sort and retain keys
- uasort(
- $result,
- function ( $a, $b ) {
- return -strcmp( $a, $b );
- }
- );
- }
-
- return array_keys( $result );
- }
-}
diff --git a/MLEB/Babel/Babel.i18n.magic.php b/MLEB/Babel/Babel.i18n.magic.php
index 00b54cd7..f1226dc1 100644
--- a/MLEB/Babel/Babel.i18n.magic.php
+++ b/MLEB/Babel/Babel.i18n.magic.php
@@ -6,174 +6,179 @@
* @ingroup Extensions
*/
-$magicWords = array();
+$magicWords = [];
/** English (English) */
-$magicWords['en'] = array(
- 'babel' => array( 0, 'babel' ),
-);
+$magicWords['en'] = [
+ 'babel' => [ 0, 'babel' ],
+];
/** Arabic (العربية) */
-$magicWords['ar'] = array(
- 'babel' => array( 0, 'بابل' ),
-);
+$magicWords['ar'] = [
+ 'babel' => [ 0, 'بابل' ],
+];
/** Aramaic (ܐܪܡܝܐ) */
-$magicWords['arc'] = array(
- 'babel' => array( 0, 'ܒܒܠ' ),
-);
+$magicWords['arc'] = [
+ 'babel' => [ 0, 'ܒܒܠ' ],
+];
-/** Egyptian Spoken Arabic (مصرى) */
-$magicWords['arz'] = array(
- 'babel' => array( 0, 'بابل' ),
-);
+/** Egyptian Arabic (مصرى) */
+$magicWords['arz'] = [
+ 'babel' => [ 0, 'بابل' ],
+];
/** Chechen (нохчийн) */
-$magicWords['ce'] = array(
- 'babel' => array( 0, 'вавилон' ),
-);
+$magicWords['ce'] = [
+ 'babel' => [ 0, 'вавилон' ],
+];
+
+/** Chuvash (Чӑвашла) */
+$magicWords['cv'] = [
+ 'babel' => [ 0, 'babel' ],
+];
/** Zazaki (Zazaki) */
-$magicWords['diq'] = array(
- 'babel' => array( 0, 'babil' ),
-);
+$magicWords['diq'] = [
+ 'babel' => [ 0, 'babil' ],
+];
/** Esperanto (Esperanto) */
-$magicWords['eo'] = array(
- 'babel' => array( 0, 'babelo' ),
-);
+$magicWords['eo'] = [
+ 'babel' => [ 0, 'babelo' ],
+];
/** Spanish (español) */
-$magicWords['es'] = array(
- 'babel' => array( 0, 'babel' ),
-);
+$magicWords['es'] = [
+ 'babel' => [ 0, 'babel' ],
+];
/** Estonian (eesti) */
-$magicWords['et'] = array(
- 'babel' => array( 0, 'paabel' ),
-);
+$magicWords['et'] = [
+ 'babel' => [ 0, 'paabel' ],
+];
/** Persian (فارسی) */
-$magicWords['fa'] = array(
- 'babel' => array( 0, 'بابل' ),
-);
+$magicWords['fa'] = [
+ 'babel' => [ 0, 'بابل' ],
+];
/** French (français) */
-$magicWords['fr'] = array(
- 'babel' => array( 0, 'Babel' ),
-);
+$magicWords['fr'] = [
+ 'babel' => [ 0, 'Babel' ],
+];
-/** Franco-Provençal (arpetan) */
-$magicWords['frp'] = array(
- 'babel' => array( 0, 'babél' ),
-);
+/** Arpitan (arpetan) */
+$magicWords['frp'] = [
+ 'babel' => [ 0, 'babél' ],
+];
/** Hawaiian (Hawai`i) */
-$magicWords['haw'] = array(
- 'babel' => array( 0, 'babela' ),
-);
+$magicWords['haw'] = [
+ 'babel' => [ 0, 'babela' ],
+];
/** Hebrew (עברית) */
-$magicWords['he'] = array(
- 'babel' => array( 0, 'בבל' ),
-);
+$magicWords['he'] = [
+ 'babel' => [ 0, 'בבל' ],
+];
/** Hindi (हिन्दी) */
-$magicWords['hi'] = array(
- 'babel' => array( 0, 'बेबल' ),
-);
+$magicWords['hi'] = [
+ 'babel' => [ 0, 'बेबल' ],
+];
/** Japanese (日本語) */
-$magicWords['ja'] = array(
- 'babel' => array( 0, 'バベル' ),
-);
+$magicWords['ja'] = [
+ 'babel' => [ 0, 'バベル' ],
+];
/** Georgian (ქართული) */
-$magicWords['ka'] = array(
- 'babel' => array( 0, 'ბაბილონი' ),
-);
+$magicWords['ka'] = [
+ 'babel' => [ 0, 'ბაბილონი' ],
+];
/** Korean (한국어) */
-$magicWords['ko'] = array(
- 'babel' => array( 0, '바벨' ),
-);
+$magicWords['ko'] = [
+ 'babel' => [ 0, '바벨' ],
+];
/** Minangkabau (Baso Minangkabau) */
-$magicWords['min'] = array(
- 'babel' => array( 0, 'bhs' ),
-);
+$magicWords['min'] = [
+ 'babel' => [ 0, 'bhs' ],
+];
/** Macedonian (македонски) */
-$magicWords['mk'] = array(
- 'babel' => array( 0, 'вавилон' ),
-);
+$magicWords['mk'] = [
+ 'babel' => [ 0, 'вавилон' ],
+];
/** Malayalam (മലയാളം) */
-$magicWords['ml'] = array(
- 'babel' => array( 0, 'ബാബേൽ' ),
-);
+$magicWords['ml'] = [
+ 'babel' => [ 0, 'ബാബേൽ' ],
+];
/** Marathi (मराठी) */
-$magicWords['mr'] = array(
- 'babel' => array( 0, 'बॅबेल' ),
-);
+$magicWords['mr'] = [
+ 'babel' => [ 0, 'बॅबेल' ],
+];
/** Pashto (پښتو) */
-$magicWords['ps'] = array(
- 'babel' => array( 0, 'بابېل', 'babel' ),
-);
+$magicWords['ps'] = [
+ 'babel' => [ 0, 'بابېل', 'babel' ],
+];
/** Russian (русский) */
-$magicWords['ru'] = array(
- 'babel' => array( 0, 'вавилон' ),
-);
+$magicWords['ru'] = [
+ 'babel' => [ 0, 'вавилон' ],
+];
/** Sinhala (සිංහල) */
-$magicWords['si'] = array(
- 'babel' => array( 0, 'බාබෙල්', 'babel' ),
-);
+$magicWords['si'] = [
+ 'babel' => [ 0, 'බාබෙල්', 'babel' ],
+];
/** Slovak (slovenčina) */
-$magicWords['sk'] = array(
- 'babel' => array( 0, 'babylon' ),
-);
+$magicWords['sk'] = [
+ 'babel' => [ 0, 'babylon' ],
+];
/** Serbian (Cyrillic script) (српски (ћирилица)‎) */
-$magicWords['sr-ec'] = array(
- 'babel' => array( 0, 'бабел' ),
-);
+$magicWords['sr-ec'] = [
+ 'babel' => [ 0, 'бабел' ],
+];
/** Serbian (Latin script) (srpski (latinica)‎) */
-$magicWords['sr-el'] = array(
- 'babel' => array( 0, 'babel' ),
-);
+$magicWords['sr-el'] = [
+ 'babel' => [ 0, 'babel' ],
+];
/** Turkish (Türkçe) */
-$magicWords['tr'] = array(
- 'babel' => array( 0, 'babil' ),
-);
+$magicWords['tr'] = [
+ 'babel' => [ 0, 'babil' ],
+];
/** Tuvinian (тыва дыл) */
-$magicWords['tyv'] = array(
- 'babel' => array( 0, 'вавилон' ),
-);
+$magicWords['tyv'] = [
+ 'babel' => [ 0, 'вавилон' ],
+];
/** Ukrainian (українська) */
-$magicWords['uk'] = array(
- 'babel' => array( 0, 'вавилон', 'вавілон' ),
-);
+$magicWords['uk'] = [
+ 'babel' => [ 0, 'вавилон', 'вавілон' ],
+];
/** Urdu (اردو) */
-$magicWords['ur'] = array(
- 'babel' => array( 0, 'بابل' ),
-);
+$magicWords['ur'] = [
+ 'babel' => [ 0, 'بابل' ],
+];
/** Simplified Chinese (中文(简体)‎) */
-$magicWords['zh-hans'] = array(
- 'babel' => array( 0, '巴别' ),
-);
+$magicWords['zh-hans'] = [
+ 'babel' => [ 0, '巴别' ],
+];
/** Traditional Chinese (中文(繁體)‎) */
-$magicWords['zh-hant'] = array(
- 'babel' => array( 0, '巴別' ),
-); \ No newline at end of file
+$magicWords['zh-hant'] = [
+ 'babel' => [ 0, '巴別' ],
+];
diff --git a/MLEB/Babel/Babel.i18n.php b/MLEB/Babel/Babel.i18n.php
deleted file mode 100644
index ad3c8f37..00000000
--- a/MLEB/Babel/Babel.i18n.php
+++ /dev/null
@@ -1,35 +0,0 @@
-<?php
-/**
- * This is a backwards-compatibility shim, generated by:
- * https://git.wikimedia.org/blob/mediawiki%2Fcore.git/HEAD/maintenance%2FgenerateJsonI18n.php
- *
- * Beginning with MediaWiki 1.23, translation strings are stored in json files,
- * and the EXTENSION.i18n.php file only exists to provide compatibility with
- * older releases of MediaWiki. For more information about this migration, see:
- * https://www.mediawiki.org/wiki/Requests_for_comment/Localisation_format
- *
- * This shim maintains compatibility back to MediaWiki 1.17.
- */
-$messages = array();
-if ( !function_exists( 'wfJsonI18nShim746acc9867bbb334' ) ) {
- function wfJsonI18nShim746acc9867bbb334( $cache, $code, &$cachedData ) {
- $codeSequence = array_merge( array( $code ), $cachedData['fallbackSequence'] );
- foreach ( $codeSequence as $csCode ) {
- $fileName = dirname( __FILE__ ) . "/i18n/$csCode.json";
- if ( is_readable( $fileName ) ) {
- $data = FormatJson::decode( file_get_contents( $fileName ), true );
- foreach ( array_keys( $data ) as $key ) {
- if ( $key === '' || $key[0] === '@' ) {
- unset( $data[$key] );
- }
- }
- $cachedData['messages'] = array_merge( $data, $cachedData['messages'] );
- }
-
- $cachedData['deps'][] = new FileDependency( $fileName );
- }
- return true;
- }
-
- $GLOBALS['wgHooks']['LocalisationCacheRecache'][] = 'wfJsonI18nShim746acc9867bbb334';
-}
diff --git a/MLEB/Babel/Babel.php b/MLEB/Babel/Babel.php
index c8166ffc..d69d16b4 100644
--- a/MLEB/Babel/Babel.php
+++ b/MLEB/Babel/Babel.php
@@ -12,80 +12,19 @@
*
* @author Robert Leverington <robert@rhl.me.uk>
* @copyright Copyright © 2008 - 2011 Robert Leverington.
- * @license http://www.gnu.org/copyleft/gpl.html GNU General Public License 2.0 or later
+ * @license GPL-2.0-or-later
*/
-if ( !defined( 'MEDIAWIKI' ) ) {
- die( 'Invalid entry point.' );
-}
-
-$GLOBALS['wgExtensionCredits']['parserhook'][] = array(
- 'path' => __FILE__,
- 'name' => 'Babel',
- 'version' => '[https://www.mediawiki.org/wiki/MLEB MLEB 2015.04]',
- 'author' => 'Robert Leverington',
- 'url' => 'https://www.mediawiki.org/wiki/Extension:Babel',
- 'descriptionmsg' => 'babel-desc',
- 'license-name' => 'GPL-2.0+',
-);
-
-$GLOBALS['wgHooks']['ParserFirstCallInit'][] = 'BabelStatic::onParserFirstCallInit';
-$GLOBALS['wgHooks']['UserGetReservedNames'][] = 'BabelAutoCreate::onUserGetReservedNames';
-
-$GLOBALS['wgMessagesDirs']['Babel'] = __DIR__ . '/i18n';
-$GLOBALS['wgExtensionMessagesFiles']['Babel'] = __DIR__ . '/Babel.i18n.php';
-$GLOBALS['wgExtensionMessagesFiles']['BabelMagic'] = __DIR__ . '/Babel.i18n.magic.php';
-
-$GLOBALS['wgAutoloadClasses']['Babel'] = __DIR__ . '/Babel.class.php';
-$GLOBALS['wgAutoloadClasses']['BabelLanguageCodes'] = __DIR__ . '/BabelLanguageCodes.class.php';
-$GLOBALS['wgAutoloadClasses']['BabelStatic'] = __DIR__ . '/BabelStatic.class.php';
-$GLOBALS['wgAutoloadClasses']['BabelAutoCreate'] = __DIR__ . '/BabelAutoCreate.class.php';
-
-$GLOBALS['wgResourceModules']['ext.babel'] = array(
- 'position' => 'top',
- 'styles' => 'resources/ext.babel.css',
- 'localBasePath' => __DIR__,
- 'remoteExtPath' => 'Babel',
-);
-
-// Configuration setttings.
-// Language names and codes constant database files, the defaults should suffice.
-$GLOBALS['wgBabelLanguageCodesCdb'] = __DIR__ . '/codes.cdb';
-$GLOBALS['wgBabelLanguageNamesCdb'] = __DIR__ . '/names.cdb';
-// Array of possible levels, and their category name - variables: %code% %wikiname% %nativename%
-// Set to false to disable categories for a particular level.
-// Alphabetical levels should be in upper case.
-$GLOBALS['wgBabelCategoryNames'] = array(
- '0' => '%code%-0',
- '1' => '%code%-1',
- '2' => '%code%-2',
- '3' => '%code%-3',
- '4' => '%code%-4',
- '5' => '%code%-5',
- 'N' => '%code%-N'
-);
-// Category name for the main (non-level) category of each language.
-// Set to false to disable main category.
-$GLOBALS['wgBabelMainCategory'] = '%code%';
-// Default level.
-$GLOBALS['wgBabelDefaultLevel'] = 'N';
-// Use the viewing user's language for babel box header's and footer's
-// May fragment parser cache, but otherwise shouldn't cause problems
-$GLOBALS['wgBabelUseUserLanguage'] = false;
-// A boolean (true or false) indicating whether ISO 639-3 codes should be
-// preferred over ISO 639-1 codes.
-$GLOBALS['wgBabelPreferISO639_3'] = false; // Not yet used.
-
-/* Other settings, to be made in-wiki:
-MediaWiki:Babel-template
- The name format of template names used in the babel extension.
-MediaWiki:Babel-portal
- The name format of the portal link for each language.
-*/
-
-// BC MW <= 1.24
-if ( !class_exists( 'Cdb\Exception' ) && class_exists( 'CdbException' ) ) {
- class_alias( 'CdbException', 'Cdb\Exception' );
- class_alias( 'CdbReader', 'Cdb\Reader' );
- class_alias( 'CdbWriter', 'Cdb\Writer' );
+if ( function_exists( 'wfLoadExtension' ) ) {
+ wfLoadExtension( 'Babel' );
+ // Keep i18n globals so mergeMessageFileList.php doesn't break
+ $GLOBALS['wgMessagesDirs']['Babel'] = __DIR__ . '/i18n';
+ $GLOBALS['wgExtensionMessagesFiles']['BabelMagic'] = __DIR__ . '/Babel.i18n.magic.php';
+ wfWarn(
+ 'Deprecated PHP entry point used for Babel extension. Please use wfLoadExtension instead, ' .
+ 'see https://www.mediawiki.org/wiki/Extension_registration for more details.'
+ );
+ return;
+} else {
+ die( 'This version of the Babel extension requires MediaWiki 1.25+' );
}
diff --git a/MLEB/Babel/BabelAutoCreate.class.php b/MLEB/Babel/BabelAutoCreate.class.php
deleted file mode 100644
index 3a30c411..00000000
--- a/MLEB/Babel/BabelAutoCreate.class.php
+++ /dev/null
@@ -1,102 +0,0 @@
-<?php
-/**
- * Code for automatic creation of categories.
- *
- * @file
- * @author Robert Leverington
- * @author Robin Pepermans
- * @author Niklas Laxström
- * @author Brian Wolff
- * @author Purodha Blissenbach
- * @author Sam Reed
- * @author Siebrand Mazeland
- * @license http://www.gnu.org/copyleft/gpl.html GNU General Public License 2.0 or later
- */
-
-/**
- * Class for automatic creation of Babel category pages.
- */
-class BabelAutoCreate {
- /**
- * @var User
- */
- protected static $user = false;
-
- public static function onUserGetReservedNames( &$names ) {
- $names[] = 'msg:babel-autocreate-user';
-
- return true;
- }
-
- /**
- * Create category.
- *
- * @param $category String: Name of category to create.
- * @param $code String: Code of language that the category is for.
- * @param $level String: Level that the category is for.
- */
- public static function create( $category, $code, $level = null ) {
- $category = strip_tags( $category );
- $title = Title::makeTitleSafe( NS_CATEGORY, $category );
- if ( $title === null || $title->exists() ) {
- return;
- }
- global $wgLanguageCode;
- $language = BabelLanguageCodes::getName( $code, $wgLanguageCode );
- $params = array( $language, $code );
- if ( $level === null ) {
- $text = wfMessage( 'babel-autocreate-text-main', $params )->inContentLanguage()->text();
- } else {
- array_unshift( $params, $level );
- $text = wfMessage( 'babel-autocreate-text-levels', $params )->inContentLanguage()->text();
- }
-
- $user = self::user();
- # Do not add a message if the username is invalid or if the account that adds it, is blocked
- if ( !$user || $user->isBlocked() ) {
- return;
- }
-
- if ( !$title->quickUserCan( 'create', $user ) ) {
- return; # The Babel AutoCreate account is not allowed to create the page
- }
-
- /* $article->doEdit will call $wgParser->parse.
- * Calling Parser::parse recursively is baaaadd... (bug 29245)
- * @todo FIXME: surely there is a better way?
- */
- global $wgParser, $wgParserConf;
- $oldParser = $wgParser;
- $parserClass = $wgParserConf['class'];
- $wgParser = new $parserClass( $wgParserConf );
-
- $url = wfMessage( 'babel-url' )->inContentLanguage()->plain();
- $article = new WikiPage( $title );
- $article->doEdit(
- $text,
- wfMessage( 'babel-autocreate-reason', $url )->text(),
- EDIT_FORCE_BOT,
- false,
- $user
- );
-
- $wgParser = $oldParser;
- }
-
- /**
- * Get user object.
- *
- * @return User object: User object for autocreate user.
- */
- public static function user() {
- if ( !self::$user ) {
- $userName = wfMessage( 'babel-autocreate-user' )->inContentLanguage()->plain();
- self::$user = User::newFromName( $userName );
- if ( self::$user && !self::$user->isLoggedIn() ) {
- self::$user->addToDatabase();
- }
- }
-
- return self::$user;
- }
-}
diff --git a/MLEB/Babel/BabelLanguageCodes.class.php b/MLEB/Babel/BabelLanguageCodes.class.php
deleted file mode 100644
index 2092076b..00000000
--- a/MLEB/Babel/BabelLanguageCodes.class.php
+++ /dev/null
@@ -1,79 +0,0 @@
-<?php
-/**
- * Code for language code and name processing.
- *
- * @file
- * @author Robert Leverington
- * @license http://www.gnu.org/copyleft/gpl.html GNU General Public License 2.0 or later
- */
-
-/**
- * Handle language code and name processing for the Babel extension, it can also
- * be used by other extension which need such functionality.
- */
-class BabelLanguageCodes {
- /**
- * Takes a language code, and attempt to obtain a better variant of it,
- * checks the MediaWiki language codes for a match, otherwise checks the
- * Babel language codes CDB (preferring ISO 639-1 over ISO 639-3).
- *
- * @param $code String: Code to try and get a "better" code for.
- * @return String (language code) or false (invalid language code).
- */
- public static function getCode( $code ) {
- global $wgBabelLanguageCodesCdb;
-
- $mediawiki = Language::fetchLanguageName( $code );
- if ( $mediawiki !== '' ) {
- return $code;
- }
-
- $codes = false;
- try {
- $codesCdb = Cdb\Reader::open( $wgBabelLanguageCodesCdb );
- $codes = $codesCdb->get( $code );
- } catch ( Cdb\Exception $e ) {
- wfDebug( __METHOD__ . ": CdbException caught, error message was "
- . $e->getMessage() );
- }
-
- return $codes;
- }
-
- /**
- * Take a code as input, and search a language name for it in
- * a given language via Language::fetchLanguageNames() or
- * else via the Babel language names CDB
- *
- * @param $code String: Code to get name for.
- * @param $language String: Code of language to attempt to get name in,
- * defaults to language of code.
- * @return String (name of language) or false (invalid language code).
- */
- public static function getName( $code, $language = null ) {
- global $wgBabelLanguageNamesCdb;
-
- // Get correct code, even though it should already be correct.
- $code = self::getCode( $code );
- if ( $code === false ) {
- return false;
- }
-
- $language = $language === null ? $code : $language;
- $names = Language::fetchLanguageNames( $language, 'all' );
- if ( isset( $names[$code] ) ) {
- return $names[$code];
- }
-
- $codes = false;
- try {
- $namesCdb = Cdb\Reader::open( $wgBabelLanguageNamesCdb );
- $codes = $namesCdb->get( $code );
- } catch ( Cdb\Exception $e ) {
- wfDebug( __METHOD__ . ": CdbException caught, error message was "
- . $e->getMessage() );
- }
-
- return $codes;
- }
-}
diff --git a/MLEB/Babel/BabelStatic.class.php b/MLEB/Babel/BabelStatic.class.php
deleted file mode 100644
index 5fd0b21d..00000000
--- a/MLEB/Babel/BabelStatic.class.php
+++ /dev/null
@@ -1,26 +0,0 @@
-<?php
-/**
- * Static functions for extension.
- *
- * @file
- * @author Robert Leverington
- * @license http://www.gnu.org/copyleft/gpl.html GNU General Public License 2.0 or later
- */
-
-/**
- * Static functions for Babel extension.
- */
-class BabelStatic {
- /**
- * Registers the parser function hook.
- *
- * @param $parser Parser
- *
- * @return Boolean: True.
- */
- public static function onParserFirstCallInit( $parser ) {
- $parser->setFunctionHook( 'babel', array( 'Babel', 'Render' ) );
-
- return true;
- }
-}
diff --git a/MLEB/Babel/COPYING b/MLEB/Babel/COPYING
index f1537d13..d159169d 100644
--- a/MLEB/Babel/COPYING
+++ b/MLEB/Babel/COPYING
@@ -1,11 +1,3 @@
-The license text below "----" applies to all files within this distribution, other
-than those that are in a directory which contains files named "LICENSE" or
-"COPYING", or a subdirectory thereof. For those files, the license text contained in
-said file overrides any license information contained in directories of smaller depth.
-Alternative licenses are typically used for software that is provided by external
-parties, and merely packaged with the Semantic MediaWiki release for convenience.
-----
-
GNU GENERAL PUBLIC LICENSE
Version 2, June 1991
diff --git a/MLEB/Babel/RELEASE-NOTES b/MLEB/Babel/RELEASE-NOTES
index e0238673..a6a39e7d 100644
--- a/MLEB/Babel/RELEASE-NOTES
+++ b/MLEB/Babel/RELEASE-NOTES
@@ -1,5 +1,6 @@
-== Babel 2015.04 ==
-Released at 2015-04-30.
+== Babel 2018.10 ==
+Released at 2018-10-29.
-=== Highlights ===
-* T95157: Restore compatibility with MediaWiki 1.24 and older version.
+=== Noteworthy changes ===
+* Update ISO 639 database from iso639-3.sil.org
+* Keep BCP 47 and MediaWiki-internal codes separate (T199941)
diff --git a/MLEB/Babel/codes.cdb b/MLEB/Babel/codes.cdb
index bc766b4b..887e5609 100644
--- a/MLEB/Babel/codes.cdb
+++ b/MLEB/Babel/codes.cdb
Binary files differ
diff --git a/MLEB/Babel/codes.txt b/MLEB/Babel/codes.txt
index 7c6636db..f0619947 100644
--- a/MLEB/Babel/codes.txt
+++ b/MLEB/Babel/codes.txt
@@ -9,7 +9,6 @@
- aai "Arifama-Miniafia"
- aak "Ankave"
- aal "Afade"
-- aam "Aramanik"
- aan "Anambé"
- aao "Algerian Saharan Arabic"
- aap "Pará Arára"
@@ -71,7 +70,7 @@ ab abk "Abkhazian"
- acz "Acheron"
- ada "Adangme"
- adb "Adabe"
-- add "Dzodinka"
+- add "Lidzonka"
- ade "Adele"
- adf "Dhofari Arabic"
- adg "Andegerebinha"
@@ -81,7 +80,6 @@ ab abk "Abkhazian"
- adl "Galo"
- adn "Adang"
- ado "Abu"
-- adp "Adap"
- adq "Adangbe"
- adr "Adonara"
- ads "Adamorobe Sign Language"
@@ -95,7 +93,7 @@ ab abk "Abkhazian"
- aeb "Tunisian Arabic"
- aec "Saidi Arabic"
- aed "Argentine Sign Language"
-- aee "Northeast Pashayi"
+- aee "Northeast Pashai"
- aek "Haeke"
- ael "Ambele"
- aem "Arem"
@@ -184,9 +182,10 @@ af afr "Afrikaans"
- aiw "Aari"
- aix "Aighon"
- aiy "Ali"
-- aja "Aja (Sudan)"
+- aja "Aja (South Sudan)"
- ajg "Aja (Benin)"
- aji "Ajië"
+- ajn "Andajin"
- ajp "South Levantine Arabic"
- ajt "Judeo-Tunisian Arabic"
- aju "Judeo-Moroccan Arabic"
@@ -245,7 +244,7 @@ ak aka "Akan"
- amc "Amahuaca"
- ame "Yanesha'"
- amf "Hamer-Banna"
-- amg "Amarag"
+- amg "Amurdak"
am amh "Amharic"
- ami "Amis"
- amj "Amdang"
@@ -276,7 +275,7 @@ am amh "Amharic"
- ani "Andi"
- anj "Anor"
- ank "Goemai"
-- anl "Anu"
+- anl "Anu-Hkongso Chin"
- anm "Anal"
- ann "Obolo"
- ano "Andoque"
@@ -307,7 +306,8 @@ am amh "Amharic"
- aon "Bumbita Arapesh"
- aor "Aore"
- aos "Taikat"
-- aot "A'tong"
+- aot "Atong (India)"
+- aou "A'ou"
- aox "Atorada"
- aoz "Uab Meto"
- apb "Sa'a"
@@ -323,7 +323,7 @@ am amh "Amharic"
- apl "Lipan Apache"
- apm "Mescalero-Chiricahua Apache"
- apn "Apinayé"
-- apo "Apalik"
+- apo "Ambul"
- app "Apma"
- apq "A-Pucikwar"
- apr "Arop-Lokep"
@@ -336,11 +336,13 @@ am amh "Amharic"
- apy "Apalaí"
- apz "Safeyoka"
- aqc "Archi"
+- aqd "Ampari Dogon"
- aqg "Arigidi"
- aqm "Atohwaim"
- aqn "Northern Alta"
- aqp "Atakapa"
- aqr "Arhâ"
+- aqt "Angaité"
- aqz "Akuntsu"
ar ara "Arabic"
- arb "Standard Arabic"
@@ -370,11 +372,11 @@ an arg "Aragonese"
- asc "Casuarina Coast Asmat"
- asd "Asas"
- ase "American Sign Language"
-- asf "Australian Sign Language"
+- asf "Auslan"
- asg "Cishingini"
- ash "Abishira"
- asi "Buruwai"
-- asj "Nsari"
+- asj "Sari"
- ask "Ashkun"
- asl "Asilulu"
as asm "Assamese"
@@ -403,7 +405,7 @@ as asm "Assamese"
- atl "Mt. Iraya Agta"
- atm "Ata"
- atn "Ashtiani"
-- ato "Atong"
+- ato "Atong (Cameroon)"
- atp "Pudtol Atta"
- atq "Aralle-Tabulahan"
- atr "Waimiri-Atroari"
@@ -419,7 +421,6 @@ as asm "Assamese"
- aub "Alugu"
- auc "Waorani"
- aud "Anuta"
-- aue "=/Kx'au//'ein"
- aug "Aguna"
- auh "Aushi"
- aui "Anuki"
@@ -445,6 +446,7 @@ ae ave "Avestan"
- avi "Avikam"
- avk "Kotava"
- avl "Eastern Egyptian Bedawi Arabic"
+- avm "Angkamuthi"
- avn "Avatime"
- avo "Agavotaguerra"
- avs "Aushiri"
@@ -455,6 +457,7 @@ ae ave "Avestan"
- awb "Awa (Papua New Guinea)"
- awc "Cicipu"
- awe "Awetí"
+- awg "Anguthimri"
- awh "Awbono"
- awi "Aekyom"
- awk "Awabakal"
@@ -470,10 +473,12 @@ ae ave "Avestan"
- awx "Awara"
- awy "Edera Awyu"
- axb "Abipon"
+- axe "Ayerrerenge"
- axg "Mato Grosso Arára"
- axk "Yaka (Central African Republic)"
+- axl "Lower Southern Aranda"
- axm "Middle Armenian"
-- axx "Xaragure"
+- axx "Xârâgurè"
- aya "Awar"
- ayb "Ayizo Gbe"
- ayc "Southern Aymara"
@@ -493,15 +498,16 @@ ay aym "Aymara"
- ays "Sorsogon Ayta"
- ayt "Magbukun Ayta"
- ayu "Ayu"
-- ayx "Ayi (China)"
- ayy "Tayabas Ayta"
- ayz "Mai Brat"
- aza "Azha"
- azb "South Azerbaijani"
+- azd "Eastern Durango Nahuatl"
az aze "Azerbaijani"
- azg "San Pedro Amuzgos Amuzgo"
- azj "North Azerbaijani"
- azm "Ipalapa Amuzgo"
+- azn "Western Durango Nahuatl"
- azo "Awing"
- azt "Faire Atta"
- azz "Highland Puebla Nahuatl"
@@ -526,7 +532,6 @@ bm bam "Bambara"
- baw "Bambili-Bambui"
- bax "Bamun"
- bay "Batuley"
-- baz "Tunen"
- bba "Baatonum"
- bbb "Barai"
- bbc "Batak Toba"
@@ -559,12 +564,12 @@ bm bam "Bambara"
- bcd "North Babar"
- bce "Bamenyam"
- bcf "Bamu"
-- bcg "Baga Binari"
+- bcg "Baga Pokur"
- bch "Bariai"
- bci "Baoulé"
- bcj "Bardi"
- bck "Bunaba"
-- bcl "Central Bicolano"
+- bcl "Central Bikol"
- bcm "Bannoni"
- bcn "Bali (Nigeria)"
- bco "Kaluli"
@@ -585,9 +590,9 @@ bm bam "Bambara"
- bde "Bade"
- bdf "Biage"
- bdg "Bonggi"
-- bdh "Baka (Sudan)"
+- bdh "Baka (South Sudan)"
- bdi "Burun"
-- bdj "Bai"
+- bdj "Bai (South Sudan)"
- bdk "Budukh"
- bdl "Indonesian Bajau"
- bdm "Buduma"
@@ -631,7 +636,7 @@ bn ben "Bengali"
- bez "Bena (Tanzania)"
- bfa "Bari"
- bfb "Pauri Bareli"
-- bfc "Northern Bai"
+- bfc "Panyi Bai"
- bfd "Bafut"
- bfe "Betaf"
- bff "Bofi"
@@ -665,7 +670,6 @@ bn ben "Bengali"
- bgj "Bangolan"
- bgk "Bit"
- bgl "Bo (Laos)"
-- bgm "Baga Mboteni"
- bgn "Western Balochi"
- bgo "Baga Koga"
- bgp "Eastern Balochi"
@@ -731,7 +735,6 @@ bi bis "Bislama"
- bja "Budza"
- bjb "Banggarla"
- bjc "Bariji"
-- bjd "Bandjigali"
- bje "Biao-Jiao Mien"
- bjf "Barzani Jewish Neo-Aramaic"
- bjg "Bidyogo"
@@ -743,7 +746,7 @@ bi bis "Bislama"
- bjm "Bajelani"
- bjn "Banjar"
- bjo "Mid-Southern Banda"
-- bjq "Southern Betsimisaraka Malagasy"
+- bjp "Fanamaket"
- bjr "Binumarien"
- bjs "Bajan"
- bjt "Balanta-Ganja"
@@ -773,7 +776,7 @@ bi bis "Bislama"
- bkt "Boloki"
- bku "Buhid"
- bkv "Bekwarra"
-- bkw "Bekwil"
+- bkw "Bekwel"
- bkx "Baikeno"
- bky "Bokyi"
- bkz "Bungku"
@@ -789,15 +792,15 @@ bi bis "Bislama"
- blj "Bolongan"
- blk "Pa'o Karen"
- bll "Biloxi"
-- blm "Beli (Sudan)"
-- bln "Southern Catanduanes Bicolano"
+- blm "Beli (South Sudan)"
+- bln "Southern Catanduanes Bikol"
- blo "Anii"
- blp "Blablanga"
- blq "Baluan-Pam"
- blr "Blang"
- bls "Balaesang"
- blt "Tai Dam"
-- blv "Bolo"
+- blv "Kibala"
- blw "Balangao"
- blx "Mag-Indi Ayta"
- bly "Notre"
@@ -807,7 +810,7 @@ bi bis "Bislama"
- bmc "Biem"
- bmd "Baga Manduri"
- bme "Limassa"
-- bmf "Bom"
+- bmf "Bom-Kim"
- bmg "Bamwe"
- bmh "Kein"
- bmi "Bagirmi"
@@ -822,11 +825,10 @@ bi bis "Bislama"
- bmr "Muinane"
- bms "Bilma Kanuri"
- bmt "Biao Mon"
-- bmu "Burum-Mindik"
+- bmu "Somba-Siawari"
- bmv "Bum"
- bmw "Bomwali"
- bmx "Baimak"
-- bmy "Bemba (Democratic Republic of Congo)"
- bmz "Baramu"
- bna "Bonerate"
- bnb "Bookan"
@@ -877,7 +879,7 @@ bs bos "Bosnian"
- box "Buamu"
- boy "Bodo (Central African Republic)"
- boz "Tiéyaxo Bozo"
-- bpa "Dakaka"
+- bpa "Daakaka"
- bpb "Barbacoas"
- bpd "Banda-Banda"
- bpg "Bonggo"
@@ -920,7 +922,7 @@ bs bos "Bosnian"
- bqs "Bosngun"
- bqt "Bamukumbit"
- bqu "Boguru"
-- bqv "Begbere-Ejar"
+- bqv "Koro Wachi"
- bqw "Buru (Nigeria)"
- bqx "Baangi"
- bqy "Bengkala Sign Language"
@@ -984,7 +986,6 @@ br bre "Breton"
- bth "Biatah Bidayuh"
- bti "Burate"
- btj "Bacanese Malay"
-- btl "Bhatola"
- btm "Batak Mandailing"
- btn "Ratagnon"
- bto "Rinconada Bikol"
@@ -1039,6 +1040,7 @@ bg bul "Bulgarian"
- bvm "Bamunka"
- bvn "Buna"
- bvo "Bolgo"
+- bvp "Bumang"
- bvq "Birri"
- bvr "Burarra"
- bvt "Bati (Indonesia)"
@@ -1073,7 +1075,7 @@ bg bul "Bulgarian"
- bwx "Bu-Nao Bunu"
- bwy "Cwi Bwamu"
- bwz "Bwisi"
-- bxa "Bauro"
+- bxa "Tairaha"
- bxb "Belanda Bor"
- bxc "Molengue"
- bxd "Pela"
@@ -1095,7 +1097,6 @@ bg bul "Bulgarian"
- bxu "China Buriat"
- bxv "Berakou"
- bxw "Bankagooma"
-- bxx "Borna (Democratic Republic of Congo)"
- bxz "Binahari"
- bya "Batak"
- byb "Bikya"
@@ -1120,10 +1121,10 @@ bg bul "Bulgarian"
- byv "Medumba"
- byw "Belhariya"
- byx "Qaqet"
-- byy "Buya"
- byz "Banaro"
- bza "Bandi"
- bzb "Andio"
+- bzc "Southern Betsimisaraka Malagasy"
- bzd "Bribri"
- bze "Jenaama Bozo"
- bzf "Boikin"
@@ -1142,9 +1143,9 @@ bg bul "Bulgarian"
- bzs "Brazilian Sign Language"
- bzt "Brithenig"
- bzu "Burmeso"
-- bzv "Bebe"
+- bzv "Naami"
- bzw "Basa (Nigeria)"
-- bzx "Hainyaxo Bozo"
+- bzx "Kɛlɛngaxo Bozo"
- bzy "Obanliku"
- bzz "Evant"
- caa "Chortí"
@@ -1174,15 +1175,14 @@ ca cat "Catalan"
- cbb "Cabiyarí"
- cbc "Carapana"
- cbd "Carijona"
-- cbe "Chipiajes"
- cbg "Chimila"
-- cbh "Cagua"
- cbi "Chachi"
- cbj "Ede Cabe"
- cbk "Chavacano"
- cbl "Bualkhaw Chin"
- cbn "Nyahkur"
- cbo "Izora"
+- cbq "Tsucuba"
- cbr "Cashibo-Cacataibo"
- cbs "Cashinahua"
- cbt "Chayahuita"
@@ -1201,7 +1201,6 @@ ca cat "Catalan"
- ccm "Malaccan Creole Malay"
- cco "Comaltepec Chinantec"
- ccp "Chakma"
-- ccq "Chaungtha"
- ccr "Cacaopera"
- cda "Choni"
- cde "Chenchu"
@@ -1220,6 +1219,7 @@ ca cat "Catalan"
- cea "Lower Chehalis"
- ceb "Cebuano"
- ceg "Chamacoco"
+- cek "Eastern Khumi Chin"
- cen "Cen"
cs ces "Czech"
- cet "Centúúm"
@@ -1280,10 +1280,10 @@ cv chv "Chuvash"
- cjs "Shor"
- cjv "Chuave"
- cjy "Jinyu Chinese"
-- cka "Khumi Awa Chin"
- ckb "Central Kurdish"
- ckh "Chak"
- ckl "Cibak"
+- ckn "Kaang Chin"
- cko "Anufo"
- ckq "Kajakse"
- ckr "Kairak"
@@ -1300,10 +1300,12 @@ cv chv "Chuvash"
- cle "Lealao Chinantec"
- clh "Chilisso"
- cli "Chakali"
+- clj "Laitu Chin"
- clk "Idu-Mishmi"
- cll "Chala"
- clm "Clallam"
- clo "Lowland Oaxaca Chontal"
+- clt "Lautu Chin"
- clu "Caluyanun"
- clw "Chulym"
- cly "Eastern Highland Chatino"
@@ -1315,18 +1317,19 @@ cv chv "Chuvash"
- cmm "Michigamea"
- cmn "Mandarin Chinese"
- cmo "Central Mnong"
-- cmr "Mro Chin"
+- cmr "Mro-Khimi Chin"
- cms "Messapic"
- cmt "Camtho"
- cna "Changthang"
- cnb "Chinbon Chin"
- cnc "Côông"
- cng "Northern Qiang"
-- cnh "Haka Chin"
+- cnh "Hakha Chin"
- cni "Asháninka"
- cnk "Khumi Chin"
- cnl "Lalana Chinantec"
- cno "Con"
+- cnr "Montenegrin"
- cns "Central Asmat"
- cnt "Tepetotutla Chinantec"
- cnu "Chenoua"
@@ -1355,7 +1358,6 @@ co cos "Corsican"
- cov "Cao Miao"
- cow "Cowlitz"
- cox "Nanti"
-- coy "Coyaima"
- coz "Chochotec"
- cpa "Palantla Chinantec"
- cpb "Ucayali-Yurúa Ashéninka"
@@ -1363,12 +1365,12 @@ co cos "Corsican"
- cpg "Cappadocian Greek"
- cpi "Chinese Pidgin English"
- cpn "Cherepon"
+- cpo "Kpeego"
- cps "Capiznon"
- cpu "Pichis Ashéninka"
- cpx "Pu-Xian Chinese"
- cpy "South Ucayali Ashéninka"
- cqd "Chuanqiandian Cluster Miao"
-- cqu "Chilean Quechua"
- cra "Chara"
- crb "Island Carib"
- crc "Lonwolwol"
@@ -1402,6 +1404,7 @@ cr cre "Cree"
- csg "Chilean Sign Language"
- csh "Asho Chin"
- csi "Coast Miwok"
+- csj "Songlai Chin"
- csk "Jola-Kasa"
- csl "Chinese Sign Language"
- csm "Central Sierra Miwok"
@@ -1411,6 +1414,7 @@ cr cre "Cree"
- csr "Costa Rican Sign Language"
- css "Southern Ohlone"
- cst "Northern Ohlone"
+- csv "Sumtu Chin"
- csw "Swampy Cree"
- csy "Siyin Chin"
- csz "Coos"
@@ -1419,25 +1423,25 @@ cr cre "Cree"
- ctd "Tedim Chin"
- cte "Tepinapa Chinantec"
- ctg "Chittagonian"
+- cth "Thaiphum Chin"
- ctl "Tlacoatzintepec Chinantec"
- ctm "Chitimacha"
- ctn "Chhintange"
- cto "Emberá-Catío"
- ctp "Western Highland Chatino"
-- cts "Northern Catanduanes Bicolano"
+- cts "Northern Catanduanes Bikol"
- ctt "Wayanad Chetti"
- ctu "Chol"
- ctz "Zacatepec Chatino"
- cua "Cua"
- cub "Cubeo"
- cuc "Usila Chinantec"
-- cug "Cung"
+- cug "Chungmboko"
- cuh "Chuka"
- cui "Cuiba"
- cuj "Mashco Piro"
- cuk "San Blas Kuna"
- cul "Culina"
-- cum "Cumeral"
- cuo "Cumanagoto"
- cup "Cupeño"
- cuq "Cun"
@@ -1447,6 +1451,7 @@ cr cre "Cree"
- cuv "Cuvok"
- cuw "Chukwa"
- cux "Tepeuxila Cuicatec"
+- cuy "Cuitlatec"
- cvg "Chug"
- cvn "Valle Nacional Chinantec"
- cwa "Kabwa"
@@ -1468,7 +1473,6 @@ cy cym "Welsh"
- dac "Dambi"
- dad "Marik"
- dae "Duupa"
-- daf "Dan"
- dag "Dagbani"
- dah "Gwahatike"
- dai "Day"
@@ -1478,7 +1482,6 @@ cy cym "Welsh"
- dam "Damakawa"
da dan "Danish"
- dao "Daai Chin"
-- dap "Nisi (India)"
- daq "Dandami Maria"
- dar "Dargwa"
- das "Daho-Doo"
@@ -1487,7 +1490,7 @@ da dan "Danish"
- daw "Davawenyo"
- dax "Dayi"
- daz "Dao"
-- dba "Bangi Me"
+- dba "Bangime"
- dbb "Deno"
- dbd "Dadiya"
- dbe "Dabe"
@@ -1502,11 +1505,14 @@ da dan "Danish"
- dbp "Duwai"
- dbq "Daba"
- dbr "Dabarre"
+- dbt "Ben Tey Dogon"
- dbu "Bondum Dom Dogon"
- dbv "Dungu"
+- dbw "Bankan Tey Dogon"
- dby "Dibiyaso"
- dcc "Deccan"
- dcr "Negerhollands"
+- dda "Dadi Dadi"
- ddd "Dongotono"
- dde "Doondo"
- ddg "Fataluku"
@@ -1514,6 +1520,7 @@ da dan "Danish"
- ddj "Jaru"
- ddn "Dendi (Benin)"
- ddo "Dido"
+- ddr "Dhudhuroa"
- dds "Donno So Dogon"
- ddw "Dawera-Daweloor"
- dec "Dagik"
@@ -1543,16 +1550,18 @@ de deu "German"
- dgh "Dghwede"
- dgi "Northern Dagara"
- dgk "Dagba"
+- dgl "Andaandi"
- dgn "Dagoman"
- dgo "Dogri (individual language)"
- dgr "Dogrib"
- dgs "Dogoso"
+- dgt "Ndra'ngith"
- dgu "Degaru"
+- dgw "Daungwurrung"
- dgx "Doghoro"
- dgz "Daga"
-- dha "Dhanwar (India)"
- dhd "Dhundari"
-- dhg "Dhangu"
+- dhg "Dhangu-Djangu"
- dhi "Dhimal"
- dhl "Dhalandji"
- dhm "Zemba"
@@ -1563,6 +1572,7 @@ de deu "German"
- dhu "Dhurga"
- dhv "Dehu"
- dhw "Dhanwar (Nepal)"
+- dhx "Dhungaloo"
- dia "Dia"
- dib "South Central Dinka"
- dic "Lakota Dida"
@@ -1588,6 +1598,7 @@ dv div "Dhivehi"
- dix "Dixon Reef"
- diy "Diuwe"
- diz "Ding"
+- dja "Djadjawurrung"
- djb "Djinba"
- djc "Dar Daju Daju"
- djd "Djamindjung"
@@ -1596,7 +1607,6 @@ dv div "Dhivehi"
- dji "Djinang"
- djj "Djeebbana"
- djk "Eastern Maroon Creole"
-- djl "Djiwarli"
- djm "Jamsay Dogon"
- djn "Djauan"
- djo "Jangkang"
@@ -1605,25 +1615,28 @@ dv div "Dhivehi"
- djw "Djawi"
- dka "Dakpakha"
- dkk "Dakka"
-- dkl "Kolum So Dogon"
- dkr "Kuijau"
- dks "Southeastern Dinka"
- dkx "Mazagway"
- dlg "Dolgan"
+- dlk "Dahalik"
- dlm "Dalmatian"
- dln "Darlong"
- dma "Duma"
-- dmc "Dimir"
+- dmb "Mombo Dogon"
+- dmc "Gavak"
+- dmd "Madhi Madhi"
- dme "Dugwor"
- dmg "Upper Kinabatangan"
- dmk "Domaaki"
- dml "Dameli"
- dmm "Dama"
-- dmo "Kemezung"
+- dmo "Kemedzung"
- dmr "East Damar"
- dms "Dampelas"
- dmu "Dubu"
- dmv "Dumpas"
+- dmw "Mudburra"
- dmx "Dema"
- dmy "Demta"
- dna "Upper Grand Valley Dani"
@@ -1631,11 +1644,14 @@ dv div "Dhivehi"
- dne "Ndendeule"
- dng "Dungan"
- dni "Lower Grand Valley Dani"
+- dnj "Dan"
- dnk "Dengka"
- dnn "Dzùùngoo"
+- dno "Ndrulo"
- dnr "Danaru"
- dnt "Mid Grand Valley Dani"
- dnu "Danau"
+- dnv "Danu"
- dnw "Western Dani"
- dny "Dení"
- doa "Dom"
@@ -1661,11 +1677,12 @@ dv div "Dhivehi"
- doz "Dorze"
- dpp "Papar"
- drb "Dair"
+- drc "Minderico"
- drd "Darmiya"
- dre "Dolpo"
- drg "Rungus"
-- dri "C'lela"
-- drl "Darling"
+- dri "C'Lela"
+- drl "Paakantyi"
- drn "West Damar"
- dro "Daro-Matu Melanau"
- drq "Dura"
@@ -1684,14 +1701,19 @@ dv div "Dhivehi"
- dsq "Tadaksahak"
- dta "Daur"
- dtb "Labuk-Kinabatangan Kadazan"
+- dtd "Ditidaht"
+- dth "Adithinngithigh"
- dti "Ana Tinga Dogon"
- dtk "Tene Kan Dogon"
- dtm "Tomo Kan Dogon"
-- dtp "Central Dusun"
+- dtn "Daatsʼíin"
+- dto "Tommo So Dogon"
+- dtp "Kadazan Dusun"
- dtr "Lotud"
- dts "Toro So Dogon"
- dtt "Toro Tegu Dogon"
- dtu "Tebul Ure Dogon"
+- dty "Dotyali"
- dua "Duala"
- dub "Dubli"
- duc "Duna"
@@ -1701,8 +1723,7 @@ dv div "Dhivehi"
- dug "Duruma"
- duh "Dungra Bhil"
- dui "Dumun"
-- duj "Dhuwal"
-- duk "Duduela"
+- duk "Uyajitaya"
- dul "Alabat Island Agta"
- dum "Middle Dutch (ca. 1050-1350)"
- dun "Dusun Deyah"
@@ -1716,13 +1737,15 @@ dv div "Dhivehi"
- duw "Dusun Witu"
- dux "Duungooma"
- duy "Dicamay Agta"
-- duz "Duli"
+- duz "Duli-Gey"
- dva "Duau"
- dwa "Diri"
-- dwl "Walo Kumbe Dogon"
- dwr "Dawro"
- dws "Dutton World Speedwords"
+- dwu "Dhuwal"
- dww "Dawawa"
+- dwy "Dhuwaya"
+- dwz "Dewas Rai"
- dya "Dyan"
- dyb "Dyaberdyaber"
- dyd "Dyugun"
@@ -1734,11 +1757,12 @@ dv div "Dhivehi"
- dyu "Dyula"
- dyy "Dyaabugay"
- dza "Tunzu"
-- dzd "Daza"
+- dze "Djiwarli"
- dzg "Dazaga"
- dzl "Dzalakha"
- dzn "Dzando"
dz dzo "Dzongkha"
+- eaa "Karenggapa"
- ebg "Ebughu"
- ebk "Eastern Bontok"
- ebo "Teke-Ebo"
@@ -1761,11 +1785,12 @@ dz dzo "Dzongkha"
- eiv "Askopan"
- eja "Ejamat"
- eka "Ekajuk"
+- ekc "Eastern Karnic"
- eke "Ekit"
- ekg "Ekari"
- eki "Eki"
- ekk "Standard Estonian"
-- ekl "Kol"
+- ekl "Kol (Bangladesh)"
- ekm "Elip"
- eko "Koti"
- ekp "Ekpeye"
@@ -1778,7 +1803,6 @@ dz dzo "Dzongkha"
el ell "Modern Greek (1453-)"
- elm "Eleme"
- elo "El Molo"
-- elp "Elpaputih"
- elu "Elu"
- elx "Elamite"
- ema "Emai-Iuleha-Ora"
@@ -1789,7 +1813,6 @@ el ell "Modern Greek (1453-)"
- emk "Eastern Maninkakan"
- emm "Mamulique"
- emn "Eman"
-- emo "Emok"
- emp "Northern Emberá"
- ems "Pacific Gulf Yupik"
- emu "Eastern Muria"
@@ -1803,6 +1826,7 @@ el ell "Modern Greek (1453-)"
- enf "Forest Enets"
en eng "English"
- enh "Tundra Enets"
+- enl "Enlhet"
- enm "Middle English (1100-1500)"
- enn "Engenni"
- eno "Enggano"
@@ -1811,6 +1835,7 @@ en eng "English"
- enu "Enu"
- env "Enwan (Edu State)"
- enw "Enwan (Akwa Ibom State)"
+- enx "Enxet"
- eot "Beti (Côte d'Ivoire)"
- epi "Epie"
eo epo "Esperanto"
@@ -1825,6 +1850,7 @@ eo epo "Esperanto"
- ert "Eritai"
- erw "Erokwanas"
- ese "Ese Ejja"
+- esg "Aheri Gondi"
- esh "Eshtehardi"
- esi "North Alaskan Inupiatun"
- esk "Northwest Alaska Inupiatun"
@@ -1836,6 +1862,7 @@ eo epo "Esperanto"
- ess "Central Siberian Yupik"
et est "Estonian"
- esu "Central Yupik"
+- esy "Eskayan"
- etb "Etebi"
- etc "Etchemin"
- eth "Ethiopian Sign Language"
@@ -1856,9 +1883,10 @@ ee ewe "Ewe"
- ext "Extremaduran"
- eya "Eyak"
- eyo "Keiyo"
+- eza "Ezaa"
- eze "Uzekwe"
- faa "Fasu"
-- fab "Fa D'ambu"
+- fab "Fa d'Ambu"
- fad "Wagi"
- faf "Fagani"
- fag "Finongan"
@@ -1870,7 +1898,7 @@ ee ewe "Ewe"
- fam "Fam"
- fan "Fang (Equatorial Guinea)"
fo fao "Faroese"
-- fap "Palor"
+- fap "Paloor"
- far "Fataleka"
fa fas "Persian"
- fat "Fanti"
@@ -1893,6 +1921,7 @@ fi fin "Finnish"
- fir "Firan"
- fit "Tornedalen Finnish"
- fiw "Fiwaga"
+- fkk "Kirya-Konzəl"
- fkv "Kven Finnish"
- fla "Kalispel-Pend d'Oreille"
- flh "Foau"
@@ -1900,9 +1929,10 @@ fi fin "Finnish"
- fll "North Fali"
- fln "Flinders Island"
- flr "Fuliiru"
-- fly "Tsotsitaal"
+- fly "Flaaitaal"
- fmp "Fe'fe'"
- fmu "Far Western Muria"
+- fnb "Fanbak"
- fng "Fanagalo"
- fni "Fania"
- fod "Foodo"
@@ -1959,7 +1989,7 @@ ff ful "Fulah"
- gai "Borei"
- gaj "Gadsup"
- gak "Gamkonora"
-- gal "Galoli"
+- gal "Galolen"
- gam "Kandawo"
- gan "Gan Chinese"
- gao "Gants"
@@ -1975,7 +2005,6 @@ ff ful "Fulah"
- gaz "West Central Oromo"
- gba "Gbaya (Central African Republic)"
- gbb "Kaytetye"
-- gbc "Garawa"
- gbd "Karadjeri"
- gbe "Niksek"
- gbf "Gaikundi"
@@ -1994,6 +2023,7 @@ ff ful "Fulah"
- gbs "Gbesi Gbe"
- gbu "Gagadu"
- gbv "Gbanu"
+- gbw "Gabi-Gabi"
- gbx "Eastern Xwla Gbe"
- gby "Gbari"
- gbz "Zoroastrian Dari"
@@ -2022,6 +2052,8 @@ ff ful "Fulah"
- gdo "Ghodoberi"
- gdq "Mehri"
- gdr "Wipi"
+- gds "Ghandruk Sign Language"
+- gdt "Kungardutyi"
- gdu "Gudu"
- gdx "Godwari"
- gea "Geruma"
@@ -2032,10 +2064,11 @@ ff ful "Fulah"
- geh "Hutterite German"
- gei "Gebe"
- gej "Gen"
-- gek "Yiwom"
-- gel "Kag-Fer-Jiir-Koor-Ror-Us-Zuksun"
+- gek "Ywom"
+- gel "ut-Ma'in"
- geq "Geme"
- ges "Geser-Gorom"
+- gev "Eviya"
- gew "Gera"
- gex "Garre"
- gey "Enya"
@@ -2049,9 +2082,6 @@ ff ful "Fulah"
- ggg "Gurgula"
- ggk "Kungarakany"
- ggl "Ganglau"
-- ggn "Eastern Gurung"
-- ggo "Southern Gondi"
-- ggr "Aghu Tharnggalu"
- ggt "Gitua"
- ggu "Gagu"
- ggw "Gogodala"
@@ -2065,42 +2095,50 @@ ff ful "Fulah"
- gho "Ghomara"
- ghr "Ghera"
- ghs "Guhu-Samane"
-- ght "Kutang Ghale"
+- ght "Kuke"
- gia "Kitja"
- gib "Gibanawa"
- gic "Gail"
- gid "Gidar"
+- gie "Gaɓogbo"
- gig "Goaria"
+- gih "Githabul"
- gil "Gilbertese"
- gim "Gimi (Eastern Highlands)"
- gin "Hinukh"
-- gio "Gelao"
- gip "Gimi (West New Britain)"
- giq "Green Gelao"
- gir "Red Gelao"
- gis "North Giziga"
- git "Gitxsan"
+- giu "Mulao"
- giw "White Gelao"
- gix "Gilima"
- giy "Giyug"
- giz "South Giziga"
- gji "Geji"
- gjk "Kachi Koli"
+- gjm "Gunditjmara"
- gjn "Gonja"
+- gjr "Gurindji Kriol"
- gju "Gujari"
- gka "Guya"
+- gkd "Magɨ (Madang Province)"
- gke "Ndai"
- gkn "Gokana"
+- gko "Kok-Nar"
- gkp "Guinea Kpelle"
+- gku "ǂUngkue"
gd gla "Scottish Gaelic"
- glc "Bon Gula"
- gld "Nanai"
ga gle "Irish"
gl glg "Galician"
-- glh "Northwest Pashayi"
+- glh "Northwest Pashai"
- gli "Guliguli"
- glj "Gula Iro"
- glk "Gilaki"
+- gll "Garlali"
- glo "Galambu"
- glr "Glaro-Twabo"
- glu "Gula (Chad)"
@@ -2110,6 +2148,7 @@ gv glv "Manx"
- gma "Gambera"
- gmb "Gula'alaa"
- gmd "Mághdì"
+- gmg "Magɨyi"
- gmh "Middle High German (ca. 1050-1500)"
- gml "Middle Low German"
- gmm "Gbaya-Mbodomo"
@@ -2118,6 +2157,7 @@ gv glv "Manx"
- gmv "Gamo"
- gmx "Magoma"
- gmy "Mycenaean Greek"
+- gmz "Mgbolizhia"
- gna "Kaansa"
- gnb "Gangte"
- gnc "Guanche"
@@ -2126,7 +2166,8 @@ gv glv "Manx"
- gng "Ngangam"
- gnh "Lere"
- gni "Gooniyandi"
-- gnk "//Gana"
+- gnj "Ngen"
+- gnk "||Gana"
- gnl "Gangulu"
- gnm "Ginuman"
- gnn "Gumatj"
@@ -2163,11 +2204,13 @@ gv glv "Manx"
- goy "Goundo"
- goz "Gozarkhani"
- gpa "Gupa-Abawa"
+- gpe "Ghanaian Pidgin English"
- gpn "Taiap"
- gqa "Ga'anda"
- gqi "Guiqiong"
- gqn "Guana (Brazil)"
- gqr "Gor"
+- gqu "Qau"
- gra "Rajput Garasia"
- grb "Grebo"
- grc "Ancient Greek (to 1453)"
@@ -2193,13 +2236,13 @@ gn grn "Guarani"
- gsg "German Sign Language"
- gsl "Gusilay"
- gsm "Guatemalan Sign Language"
-- gsn "Gusan"
+- gsn "Nema"
- gso "Southwest Gbaya"
- gsp "Wasembo"
- gss "Greek Sign Language"
- gsw "Swiss German"
- gta "Guató"
-- gti "Gbati-ri"
+- gtu "Aghu-Tharnggala"
- gua "Shiki"
- gub "Guajajára"
- guc "Wayuu"
@@ -2221,7 +2264,6 @@ gu guj "Gujarati"
- gus "Guinean Sign Language"
- gut "Maléku Jaíka"
- guu "Yanomamö"
-- guv "Gey"
- guw "Gun"
- gux "Gourmanchéma"
- guz "Gusii"
@@ -2235,7 +2277,7 @@ gu guj "Gujarati"
- gvn "Kuku-Yalanji"
- gvo "Gavião Do Jiparaná"
- gvp "Pará Gavião"
-- gvr "Western Gurung"
+- gvr "Gurung"
- gvs "Gumawana"
- gvy "Guyani"
- gwa "Mbato"
@@ -2246,7 +2288,8 @@ gu guj "Gujarati"
- gwf "Gowro"
- gwg "Moo"
- gwi "Gwichʼin"
-- gwj "/Gwi"
+- gwj "ǀGwi"
+- gwm "Awngthim"
- gwn "Gwandara"
- gwr "Gwere"
- gwt "Gawar-Bati"
@@ -2264,6 +2307,7 @@ gu guj "Gujarati"
- gyl "Gayil"
- gym "Ngäbere"
- gyn "Guyanese Creole English"
+- gyo "Gyalsumdo"
- gyr "Guarayu"
- gyy "Gunya"
- gza "Ganza"
@@ -2314,7 +2358,7 @@ he heb "Hebrew"
- hei "Heiltsuk"
- hem "Hemba"
hz her "Herero"
-- hgm "Hai//om"
+- hgm "Haiǁom"
- hgw "Haigwai"
- hhi "Hoia Hoia"
- hhr "Kerak"
@@ -2339,12 +2383,13 @@ hi hin "Hindi"
- hka "Kahe"
- hke "Hunde"
- hkk "Hunjara-Kaina Ke"
+- hkn "Mel-Khaonh"
- hks "Hong Kong Sign Language"
- hla "Halia"
- hlb "Halbi"
- hld "Halang Doan"
- hle "Hlersu"
-- hlt "Nga La"
+- hlt "Matu Chin"
- hlu "Hieroglyphic Luwian"
- hma "Southern Mashan Hmong"
- hmb "Humburi Senni Songhay"
@@ -2374,7 +2419,7 @@ ho hmo "Hiri Motu"
- hna "Mina (Cameroon)"
- hnd "Southern Hindko"
- hne "Chhattisgarhi"
-- hnh "//Ani"
+- hnh "ǁAni"
- hni "Hani"
- hnj "Hmong Njua"
- hnn "Hanunoo"
@@ -2401,16 +2446,18 @@ ho hmo "Hiri Motu"
- hoy "Holiya"
- hoz "Hozo"
- hpo "Hpon"
-- hps "Hawai'i Pidgin Sign Language"
+- hps "Hawai'i Sign Language (HSL)"
- hra "Hrangkhol"
+- hrc "Niwer Mil"
- hre "Hre"
- hrk "Haruku"
- hrm "Horned Miao"
- hro "Haroi"
-- hrr "Horuru"
+- hrp "Nhirrpi"
- hrt "Hértevin"
- hru "Hruso"
hr hrv "Croatian"
+- hrw "Warwar Feni"
- hrx "Hunsrik"
- hrz "Harzani"
- hsb "Upper Sorbian"
@@ -2424,7 +2471,7 @@ hr hrv "Croatian"
- htu "Hitu"
- htx "Middle Hittite"
- hub "Huambisa"
-- huc "=/Hua"
+- huc "ǂHua"
- hud "Huaulu"
- hue "San Francisco Del Mar Huave"
- huf "Humene"
@@ -2458,16 +2505,16 @@ hu hun "Hungarian"
- hwo "Hwana"
- hya "Hya"
hy hye "Armenian"
+- hyw "Western Armenian"
- iai "Iaai"
- ian "Iatmul"
-- iap "Iapama"
- iar "Purari"
- iba "Iban"
- ibb "Ibibio"
- ibd "Iwaidja"
- ibe "Akpes"
- ibg "Ibanag"
-- ibi "Ibilo"
+- ibh "Bih"
- ibl "Ibaloi"
- ibm "Agoi"
- ibn "Ibino"
@@ -2510,7 +2557,9 @@ io ido "Ido"
- ihb "Iha Based Pidgin"
- ihi "Ihievbe"
- ihp "Iha"
+- ihw "Bidhawal"
ii iii "Sichuan Yi"
+- iin "Thiin"
- ijc "Izon"
- ije "Biseni"
- ijj "Ede Ije"
@@ -2522,7 +2571,9 @@ ii iii "Sichuan Yi"
- ikl "Ikulu"
- iko "Olulumo-Ikom"
- ikp "Ikpeshi"
-- ikt "Western Canadian Inuktitut"
+- ikr "Ikaranggal"
+- iks "Inuit Sign Language"
+- ikt "Inuinnaqtun"
iu iku "Inuktitut"
- ikv "Iku-Gora-Ankwa"
- ikw "Ikwere"
@@ -2534,14 +2585,13 @@ ie ile "Interlingue"
- ilg "Garig-Ilgar"
- ili "Ili Turki"
- ilk "Ilongot"
-- ill "Iranun"
+- ilm "Iranun (Malaysia)"
- ilo "Iloko"
+- ilp "Iranun (Philippines)"
- ils "International Sign"
- ilu "Ili'uun"
- ilv "Ilue"
-- ilw "Talur"
- ima "Mala Malasar"
-- ime "Imeraguen"
- imi "Anamgura"
- iml "Miluk"
- imn "Imonda"
@@ -2570,9 +2620,10 @@ id ind "Indonesian"
ik ipk "Inupiaq"
- ipo "Ipiko"
- iqu "Iquito"
+- iqw "Ikwo"
- ire "Iresim"
- irh "Irarutu"
-- iri "Irigwe"
+- iri "Rigwe"
- irk "Iraqw"
- irn "Irántxe"
- irr "Ir"
@@ -2596,6 +2647,7 @@ is isl "Icelandic"
- isu "Isu (Menchum Division)"
it ita "Italian"
- itb "Binongan Itneg"
+- itd "Southern Tidung"
- ite "Itene"
- iti "Inlaod Itneg"
- itk "Judeo-Italian"
@@ -2623,8 +2675,8 @@ it ita "Italian"
- iyo "Mesaka"
- iyx "Yaka (Congo)"
- izh "Ingrian"
-- izi "Izi-Ezaa-Ikwo-Mgbo"
- izr "Izere"
+- izz "Izii"
- jaa "Jamamadí"
- jab "Hyam"
- jac "Popti'"
@@ -2636,9 +2688,9 @@ it ita "Italian"
- jak "Jakun"
- jal "Yalahatan"
- jam "Jamaican Creole English"
+- jan "Jandai"
- jao "Yanyuwa"
- jaq "Yaqay"
-- jar "Jarawa (Nigeria)"
- jas "New Caledonian Javanese"
- jat "Jakati"
- jau "Yaur"
@@ -2647,12 +2699,15 @@ jv jav "Javanese"
- jay "Yan-nhangu"
- jaz "Jawe"
- jbe "Judeo-Berber"
+- jbi "Badjiri"
- jbj "Arandai"
+- jbk "Barikewa"
- jbn "Nafusi"
- jbo "Lojban"
- jbr "Jofotek-Bromnya"
- jbt "Jabutí"
- jbu "Jukun Takum"
+- jbw "Yawijibaya"
- jcs "Jamaican Country Sign Language"
- jct "Krymchak"
- jda "Jad"
@@ -2660,7 +2715,6 @@ jv jav "Javanese"
- jdt "Judeo-Tat"
- jeb "Jebero"
- jee "Jerung"
-- jeg "Jeng"
- jeh "Jeh"
- jei "Yei"
- jek "Jeri Kuo"
@@ -2671,6 +2725,7 @@ jv jav "Javanese"
- jeu "Jonkor Bourmataguil"
- jgb "Ngbee"
- jge "Judeo-Georgian"
+- jgk "Gwak"
- jgo "Ngomba"
- jhi "Jehai"
- jhs "Jhankot Sign Language"
@@ -2680,7 +2735,7 @@ jv jav "Javanese"
- jid "Bu"
- jie "Jilbe"
- jig "Djingili"
-- jih "Shangzhai"
+- jih "sTodsde"
- jii "Jiiddu"
- jil "Jilim"
- jim "Jimi (Cameroon)"
@@ -2690,7 +2745,13 @@ jv jav "Javanese"
- jiu "Youle Jinuo"
- jiv "Shuar"
- jiy "Buyuan Jinuo"
+- jje "Jejueo"
+- jjr "Bankal"
+- jka "Kaera"
+- jkm "Mobwa Karen"
- jko "Kubo"
+- jkp "Paku Karen"
+- jkr "Koro (India)"
- jku "Labir"
- jle "Ngile"
- jls "Jamaican Sign Language"
@@ -2703,6 +2764,7 @@ jv jav "Javanese"
- jmn "Makuri Naga"
- jmr "Kamara"
- jms "Mashi (Nigeria)"
+- jmw "Mouwase"
- jmx "Western Juxtlahuaca Mixtec"
- jna "Jangshung"
- jnd "Jandavra"
@@ -2713,6 +2775,7 @@ jv jav "Javanese"
- jns "Jaunsari"
- job "Joba"
- jod "Wojenaka"
+- jog "Jogi"
- jor "Jorá"
- jos "Jordanian Sign Language"
- jow "Jowulu"
@@ -2731,6 +2794,7 @@ ja jpn "Japanese"
- juc "Jurchen"
- jud "Worodougou"
- juh "Hõne"
+- jui "Ngadjuri"
- juk "Wapan"
- jul "Jirel"
- jum "Jumjum"
@@ -2752,14 +2816,14 @@ ja jpn "Japanese"
- kaa "Kara-Kalpak"
- kab "Kabyle"
- kac "Kachin"
-- kad "Kadara"
+- kad "Adara"
- kae "Ketangalan"
- kaf "Katso"
- kag "Kajaman"
- kah "Kara (Central African Republic)"
- kai "Karekare"
- kaj "Jju"
-- kak "Kayapa Kallahan"
+- kak "Kalanguya"
kl kal "Kalaallisut"
- kam "Kamba (Kenya)"
kn kan "Kannada"
@@ -2779,7 +2843,6 @@ kk kaz "Kazakh"
- kbc "Kadiwéu"
- kbd "Kabardian"
- kbe "Kanju"
-- kbf "Kakauhua"
- kbg "Khamba"
- kbh "Camsá"
- kbi "Kaptiau"
@@ -2835,7 +2898,7 @@ kk kaz "Kazakh"
- kdh "Tem"
- kdi "Kumam"
- kdj "Karamojong"
-- kdk "Numee"
+- kdk "Numèè"
- kdl "Tsikimba"
- kdm "Kagoma"
- kdn "Kunda"
@@ -2844,7 +2907,6 @@ kk kaz "Kazakh"
- kdr "Karaim"
- kdt "Kuy"
- kdu "Kadaru"
-- kdv "Kado"
- kdw "Koneraw"
- kdx "Kam"
- kdy "Keder"
@@ -2892,7 +2954,7 @@ kk kaz "Kazakh"
- kfo "Koro (Côte d'Ivoire)"
- kfp "Korwa"
- kfq "Korku"
-- kfr "Kachchi"
+- kfr "Kachhi"
- kfs "Bilaspuri"
- kft "Kanjari"
- kfu "Katkari"
@@ -2903,12 +2965,9 @@ kk kaz "Kazakh"
- kfz "Koromfé"
- kga "Koyaga"
- kgb "Kawe"
-- kgc "Kasseng"
-- kgd "Kataang"
- kge "Komering"
- kgf "Kube"
- kgg "Kusunda"
-- kgh "Upper Tanudan Kalinga"
- kgi "Selangor Sign Language"
- kgj "Gamale Kham"
- kgk "Kaiwá"
@@ -2937,7 +2996,7 @@ kk kaz "Kazakh"
- khj "Kuturmi"
- khk "Halh Mongolian"
- khl "Lusi"
-km khm "Central Khmer"
+km khm "Khmer"
- khn "Khandesi"
- kho "Khotanese"
- khp "Kapori"
@@ -2998,6 +3057,7 @@ ky kir "Kirghiz"
- kjs "East Kewa"
- kjt "Phrae Pwo Karen"
- kju "Kashaya"
+- kjv "Kaikavian Literary Language"
- kjx "Ramopa"
- kjy "Erave"
- kjz "Bumthangkha"
@@ -3049,7 +3109,7 @@ ky kir "Kirghiz"
- klt "Nukna"
- klu "Klao"
- klv "Maskelynes"
-- klw "Lindu"
+- klw "Tado"
- klx "Koluwawa"
- kly "Kalao"
- klz "Kabola"
@@ -3064,7 +3124,7 @@ ky kir "Kirghiz"
- kmi "Kami (Nigeria)"
- kmj "Kumarbhag Paharia"
- kmk "Limos Kalinga"
-- kml "Lower Tanudan Kalinga"
+- kml "Tanudan Kalinga"
- kmm "Kom (India)"
- kmn "Awtuw"
- kmo "Kwoma"
@@ -3112,13 +3172,12 @@ ky kir "Kirghiz"
- kog "Cogui"
- koh "Koyo"
- koi "Komi-Permyak"
-- koj "Sara Dunjo"
- kok "Konkani (macrolanguage)"
- kol "Kol (Papua New Guinea)"
kv kom "Komi"
kg kon "Kongo"
- koo "Konzo"
-- kop "Kwato"
+- kop "Waube"
- koq "Kota (Gabon)"
ko kor "Korean"
- kos "Kosraean"
@@ -3126,7 +3185,6 @@ ko kor "Korean"
- kou "Koke"
- kov "Kudu-Camo"
- kow "Kugama"
-- kox "Coxima"
- koy "Koyukon"
- koz "Korak"
- kpa "Kutto"
@@ -3144,7 +3202,6 @@ ko kor "Korean"
- kpm "Koho"
- kpn "Kepkiriwát"
- kpo "Ikposo"
-- kpp "Paku Karen"
- kpq "Korupun-Sela"
- kpr "Korafe-Yegha"
- kps "Tehit"
@@ -3192,10 +3249,9 @@ ko kor "Korean"
- krj "Kinaray-A"
- krk "Kerek"
- krl "Karelian"
-- krm "Krim"
- krn "Sapo"
- krp "Korop"
-- krr "Kru'ng 2"
+- krr "Krung"
- krs "Gbaya (Sudan)"
- krt "Tumari Kanuri"
- kru "Kurukh"
@@ -3247,7 +3303,6 @@ ko kor "Korean"
- kto "Kuot"
- ktp "Kaduo"
- ktq "Katabaga"
-- ktr "Kota Marudu Tinagas"
- kts "South Muyu"
- ktt "Ketum"
- ktu "Kituba (Democratic Republic of Congo)"
@@ -3255,12 +3310,12 @@ ko kor "Korean"
- ktw "Kato"
- ktx "Kaxararí"
- kty "Kango (Bas-Uélé District)"
-- ktz "Ju/'hoan"
+- ktz "Juǀʼhoan"
kj kua "Kuanyama"
- kub "Kutep"
- kuc "Kwinsu"
- kud "'Auhelawa"
-- kue "Kuman"
+- kue "Kuman (Papua New Guinea)"
- kuf "Western Katu"
- kug "Kupa"
- kuh "Kushi"
@@ -3293,14 +3348,13 @@ ku kur "Kurdish"
- kvi "Kwang"
- kvj "Psikye"
- kvk "Korean Sign Language"
-- kvl "Brek Karen"
+- kvl "Kayaw"
- kvm "Kendem"
- kvn "Border Kuna"
- kvo "Dobel"
- kvp "Kompane"
- kvq "Geba Karen"
- kvr "Kerinci"
-- kvs "Kunggara"
- kvt "Lahta Karen"
- kvu "Yinbaw Karen"
- kvv "Kola"
@@ -3324,7 +3378,6 @@ ku kur "Kurdish"
- kwn "Kwangali"
- kwo "Kwomtari"
- kwp "Kodia"
-- kwq "Kwak"
- kwr "Kwer"
- kws "Kwese"
- kwt "Kwesten"
@@ -3338,7 +3391,6 @@ ku kur "Kurdish"
- kxb "Krobu"
- kxc "Konso"
- kxd "Brunei"
-- kxe "Kakihum"
- kxf "Manumanaw Karen"
- kxh "Karo (Ethiopia)"
- kxi "Keningau Murut"
@@ -3392,9 +3444,7 @@ ku kur "Kurdish"
- kze "Kosena"
- kzf "Da'a Kaili"
- kzg "Kikai"
-- kzh "Kenuzi-Dongola"
- kzi "Kelabit"
-- kzj "Coastal Kadazan"
- kzk "Kazukuru"
- kzl "Kayeli"
- kzm "Kais"
@@ -3404,7 +3454,6 @@ ku kur "Kurdish"
- kzq "Kaike"
- kzr "Karang"
- kzs "Sugut Dusun"
-- kzt "Tambunan Dusun"
- kzu "Kayupulau"
- kzv "Komyandaret"
- kzw "Karirí-Xocó"
@@ -3435,7 +3484,7 @@ la lat "Latin"
lv lav "Latvian"
- law "Lauje"
- lax "Tiwa"
-- lay "Lama (Myanmar)"
+- lay "Lama Bai"
- laz "Aribwatsa"
- lba "Lui"
- lbb "Label"
@@ -3451,7 +3500,7 @@ lv lav "Latvian"
- lbn "Lamet"
- lbo "Laven"
- lbq "Wampar"
-- lbr "Northern Lorung"
+- lbr "Lohorung"
- lbs "Libyan Sign Language"
- lbt "Lachi"
- lbu "Labu"
@@ -3470,7 +3519,8 @@ lv lav "Latvian"
- lcp "Western Lawa"
- lcq "Luhu"
- lcs "Lisabata-Nuniali"
-- ldb "Idun"
+- lda "Kla-Dan"
+- ldb "Dũya"
- ldd "Luri"
- ldg "Lenyima"
- ldh "Lamja-Dengsa-Tola"
@@ -3489,7 +3539,6 @@ lv lav "Latvian"
- led "Lendu"
- lee "Lyélé"
- lef "Lelemi"
-- leg "Lengua"
- leh "Lenje"
- lei "Lemio"
- lej "Lengola"
@@ -3519,7 +3568,7 @@ lv lav "Latvian"
- lgk "Lingarak"
- lgl "Wala"
- lgm "Lega-Mwenga"
-- lgn "Opuuo"
+- lgn "T'apo"
- lgq "Logba"
- lgr "Lengo"
- lgt "Pahi"
@@ -3543,7 +3592,6 @@ lv lav "Latvian"
- lif "Limbu"
- lig "Ligbi"
- lih "Lihir"
-- lii "Lingkhim"
- lij "Ligurian"
- lik "Lika"
- lil "Lillooet"
@@ -3561,10 +3609,13 @@ lt lit "Lithuanian"
- lix "Liabuku"
- liy "Banda-Bambari"
- liz "Libinza"
+- lja "Golpa"
- lje "Rampi"
- lji "Laiyolo"
- ljl "Li'o"
- ljp "Lampung Api"
+- ljw "Yirandali"
+- ljx "Yuru"
- lka "Lakalei"
- lkb "Kabras"
- lkc "Kucong"
@@ -3574,11 +3625,13 @@ lt lit "Lithuanian"
- lki "Laki"
- lkj "Remun"
- lkl "Laeko-Libuat"
+- lkm "Kalaamaya"
- lkn "Lakon"
- lko "Khayo"
- lkr "Päri"
- lks "Kisa"
- lkt "Lakota"
+- lku "Kungkari"
- lky "Lokoya"
- lla "Lala-Roba"
- llb "Lolo"
@@ -3589,6 +3642,7 @@ lt lit "Lithuanian"
- llg "Lole"
- llh "Lamu"
- lli "Teke-Laali"
+- llj "Ladji Ladji"
- llk "Lelak"
- lll "Lilau"
- llm "Lasalimu"
@@ -3611,7 +3665,6 @@ lt lit "Lithuanian"
- lmj "West Lembata"
- lmk "Lamkang"
- lml "Hano"
-- lmm "Lamam"
- lmn "Lambadi"
- lmo "Lombard"
- lmp "Limbum"
@@ -3633,9 +3686,10 @@ lt lit "Lithuanian"
- lnl "South Central Banda"
- lnm "Langam"
- lnn "Lorediakarkar"
-- lno "Lango (Sudan)"
+- lno "Lango (South Sudan)"
- lns "Lamnso'"
- lnu "Longuda"
+- lnw "Lanima"
- lnz "Lonzo"
- loa "Loloda"
- lob "Lobi"
@@ -3656,11 +3710,11 @@ lt lit "Lithuanian"
- lor "Téén"
- los "Loniu"
- lot "Otuho"
-- lou "Louisiana Creole French"
+- lou "Louisiana Creole"
- lov "Lopi"
- low "Tampias Lobu"
- lox "Loun"
-- loy "Lowa"
+- loy "Loke"
- loz "Lozi"
- lpa "Lelepa"
- lpe "Lepki"
@@ -3677,14 +3731,13 @@ lt lit "Lithuanian"
- lrm "Marama"
- lrn "Lorang"
- lro "Laro"
-- lrr "Southern Lorung"
+- lrr "Southern Yamphu"
- lrt "Larantuka Malay"
- lrv "Larevat"
- lrz "Lemerig"
- lsa "Lasgerdi"
- lsd "Lishana Deni"
- lse "Lusengo"
-- lsg "Lyons Sign Language"
- lsh "Lish"
- lsi "Lashi"
- lsl "Latvian Sign Language"
@@ -3697,6 +3750,7 @@ lt lit "Lithuanian"
- lsy "Mauritian Sign Language"
- ltc "Late Middle Chinese"
- ltg "Latgalian"
+- lth "Thur"
- lti "Leti (Indonesia)"
- ltn "Latundê"
- lto "Tsotso"
@@ -3738,7 +3792,9 @@ lg lug "Ganda"
- lwl "Eastern Lawa"
- lwm "Laomian"
- lwo "Luwo"
+- lws "Malawian Sign Language"
- lwt "Lewotobi"
+- lwu "Lawu"
- lww "Lewo"
- lya "Layakha"
- lyg "Lyngngam"
@@ -3846,12 +3902,11 @@ mr mar "Marathi"
- mdy "Male (Ethiopia)"
- mdz "Suruí Do Pará"
- mea "Menka"
-- meb "Ikobi-Mena"
+- meb "Ikobi"
- mec "Mara"
- med "Melpa"
- mee "Mengen"
- mef "Megam"
-- meg "Mea"
- meh "Southwestern Tlaxiaco Mixtec"
- mei "Midob"
- mej "Meyah"
@@ -3866,7 +3921,7 @@ mr mar "Marathi"
- mes "Masmaje"
- met "Mato"
- meu "Motu"
-- mev "Mann"
+- mev "Mano"
- mew "Maaka"
- mey "Hassaniyya"
- mez "Menominee"
@@ -3876,7 +3931,7 @@ mr mar "Marathi"
- mfd "Mendankwe-Nkwen"
- mfe "Morisyen"
- mff "Naki"
-- mfg "Mixifore"
+- mfg "Mogofin"
- mfh "Matal"
- mfi "Wandala"
- mfj "Mefele"
@@ -3902,7 +3957,7 @@ mr mar "Marathi"
- mgd "Moru"
- mge "Mango"
- mgf "Maklew"
-- mgg "Mpongmpong"
+- mgg "Mpumpong"
- mgh "Makhuwa-Meetto"
- mgi "Lijili"
- mgj "Abureni"
@@ -3919,7 +3974,6 @@ mr mar "Marathi"
- mgu "Mailu"
- mgv "Matengo"
- mgw "Matumbi"
-- mgx "Omati"
- mgy "Mbunga"
- mgz "Mbugwe"
- mha "Manda (India)"
@@ -3929,7 +3983,6 @@ mr mar "Marathi"
- mhe "Besisi"
- mhf "Mamaa"
- mhg "Margu"
-- mhh "Maskoy Pidgin"
- mhi "Ma'di"
- mhj "Mogholi"
- mhk "Mungaka"
@@ -3972,7 +4025,7 @@ mr mar "Marathi"
- mix "Mixtepec Mixtec"
- miy "Ayutla Mixtec"
- miz "Coatzospan Mixtec"
-- mja "Mahei"
+- mjb "Makalero"
- mjc "San Juan Colorado Mixtec"
- mjd "Northwest Maidu"
- mje "Muskum"
@@ -4024,7 +4077,6 @@ mk mkd "Macedonian"
- mla "Malo"
- mlb "Mbule"
- mlc "Cao Lan"
-- mld "Malakhel"
- mle "Manambu"
- mlf "Mal"
mg mlg "Malagasy"
@@ -4089,7 +4141,6 @@ mt mlt "Maltese"
- mnq "Minriq"
- mnr "Mono (USA)"
- mns "Mansi"
-- mnt "Maykulan"
- mnu "Mer"
- mnv "Rennell-Bellona"
- mnw "Mon"
@@ -4141,7 +4192,7 @@ mn mon "Mongolian"
- mpu "Makuráp"
- mpv "Mungkip"
- mpw "Mapidian"
-- mpx "Misima-Paneati"
+- mpx "Misima-Panaeati"
- mpy "Mapia"
- mpz "Mpi"
- mqa "Maba (Indonesia)"
@@ -4168,14 +4219,14 @@ mn mon "Mongolian"
- mqw "Murupi"
- mqx "Mamuju"
- mqy "Manggarai"
-- mqz "Malasanga"
+- mqz "Pano"
- mra "Mlabri"
- mrb "Marino"
- mrc "Maricopa"
- mrd "Western Magar"
- mre "Martha's Vineyard Sign Language"
- mrf "Elseng"
-- mrg "Miri"
+- mrg "Mising"
- mrh "Mara Chin"
mi mri "Maori"
- mrj "Western Mari"
@@ -4247,7 +4298,7 @@ ms msa "Malay (macrolanguage)"
- mty "Nabi"
- mua "Mundang"
- mub "Mubi"
-- muc "Mbu'"
+- muc "Ajumbu"
- mud "Mednyj Aleut"
- mue "Media Lengua"
- mug "Musgu"
@@ -4274,7 +4325,7 @@ ms msa "Malay (macrolanguage)"
- mve "Marwari (Pakistan)"
- mvf "Peripheral Mongolian"
- mvg "Yucuañe Mixtec"
-- mvh "Mire"
+- mvh "Mulgi"
- mvi "Miyako"
- mvk "Mekmek"
- mvl "Mbara (Australia)"
@@ -4295,13 +4346,11 @@ ms msa "Malay (macrolanguage)"
- mwa "Mwatebu"
- mwb "Juwal"
- mwc "Are"
-- mwd "Mudbura"
- mwe "Mwera (Chimwera)"
- mwf "Murrinh-Patha"
- mwg "Aiklep"
- mwh "Mouk-Aria"
- mwi "Labo"
-- mwj "Maligo"
- mwk "Kita Maninkakan"
- mwl "Mirandese"
- mwm "Sar"
@@ -4315,8 +4364,6 @@ ms msa "Malay (macrolanguage)"
- mwu "Mittu"
- mwv "Mentawai"
- mww "Hmong Daw"
-- mwx "Mediak"
-- mwy "Mosiro"
- mwz "Moingi"
- mxa "Northwest Oaxaca Mixtec"
- mxb "Tezoatlán Mixtec"
@@ -4359,7 +4406,6 @@ my mya "Burmese"
- mym "Me'en"
- myo "Anfillo"
- myp "Pirahã"
-- myq "Forest Maninka"
- myr "Muniche"
- mys "Mesmes"
- myu "Mundurukú"
@@ -4396,21 +4442,20 @@ my mya "Burmese"
- naa "Namla"
- nab "Southern Nambikuára"
- nac "Narak"
-- nad "Nijadali"
- nae "Naka'ela"
- naf "Nabak"
- nag "Naga Pidgin"
- naj "Nalu"
- nak "Nakanai"
- nal "Nalik"
-- nam "Nangikurrunggurr"
+- nam "Ngan'gityemerri"
- nan "Min Nan Chinese"
- nao "Naaba"
- nap "Neapolitan"
-- naq "Nama (Namibia)"
+- naq "Khoekhoe"
- nar "Iguta"
- nas "Naasioi"
-- nat "Hungworo"
+- nat "Ca̱hungwa̱rya̱"
na nau "Nauru"
nv nav "Navajo"
- naw "Nawuri"
@@ -4422,7 +4467,6 @@ nv nav "Navajo"
- nbc "Chang Naga"
- nbd "Ngbinda"
- nbe "Konyak Naga"
-- nbf "Naxi"
- nbg "Nagarchal"
- nbh "Ngamo"
- nbi "Mao Naga"
@@ -4440,7 +4484,6 @@ nr nbl "South Ndebele"
- nbu "Rongmei Naga"
- nbv "Ngamambo"
- nbw "Southern Ngbandi"
-- nbx "Ngura"
- nby "Ningera"
- nca "Iyo"
- ncb "Central Nicobarese"
@@ -4457,7 +4500,7 @@ nr nbl "South Ndebele"
- ncm "Nambo"
- ncn "Nauna"
- nco "Sibe"
-- ncp "Ndaktup"
+- ncq "Northern Katang"
- ncr "Ncane"
- ncs "Nicaraguan Sign Language"
- nct "Chothe Naga"
@@ -4494,7 +4537,7 @@ ng ndo "Ndonga"
- neb "Toura (Côte d'Ivoire)"
- nec "Nedebang"
- ned "Nde-Gbite"
-- nee "Kumak"
+- nee "Nêlêmwa-Nixumwak"
- nef "Nefamese"
- neg "Negidal"
- neh "Nyenkha"
@@ -4504,11 +4547,12 @@ ng ndo "Ndonga"
- nem "Nemi"
- nen "Nengone"
- neo "Ná-Meo"
-ne nep "Nepali"
+ne nep "Nepali (macrolanguage)"
- neq "North Central Mixe"
- ner "Yahadian"
- nes "Bhoti Kinnauri"
- net "Nete"
+- neu "Neo"
- nev "Nyaheun"
- new "Newari"
- nex "Neme"
@@ -4525,19 +4569,19 @@ ne nep "Nepali"
- ngd "Ngando (Central African Republic)"
- nge "Ngemba"
- ngg "Ngbaka Manza"
-- ngh "N/u"
+- ngh "Nǀu"
- ngi "Ngizim"
- ngj "Ngie"
-- ngk "Ngalkbun"
+- ngk "Dalabon"
- ngl "Lomwe"
- ngm "Ngatik Men's Creole"
- ngn "Ngwo"
- ngo "Ngoni"
- ngp "Ngulu"
- ngq "Ngurimi"
-- ngr "Nanggu"
+- ngr "Engdewu"
- ngs "Gvoko"
-- ngt "Ngeq"
+- ngt "Kriang"
- ngu "Guerrero Nahuatl"
- ngv "Nagumi"
- ngw "Ngwaba"
@@ -4568,7 +4612,7 @@ ne nep "Nepali"
- nhy "Northern Oaxaca Nahuatl"
- nhz "Santa María La Alta Nahuatl"
- nia "Nias"
-- nib "Nakama"
+- nib "Nakame"
- nid "Ngandi"
- nie "Niellim"
- nif "Nek"
@@ -4607,6 +4651,7 @@ ne nep "Nepali"
- nju "Ngadjunmaya"
- njx "Kunyi"
- njy "Njyem"
+- njz "Nyishi"
- nka "Nkoya"
- nkb "Khoibu Naga"
- nkc "Nkongho"
@@ -4640,11 +4685,12 @@ nl nld "Dutch"
- nlj "Nyali"
- nlk "Ninia Yali"
- nll "Nihali"
-- nln "Durango Nahuatl"
+- nlm "Mankiyali"
- nlo "Ngul"
-- nlr "Ngarla"
+- nlq "Lao Naga"
- nlu "Nchumbulu"
- nlv "Orizaba Nahuatl"
+- nlw "Walangama"
- nlx "Nahali"
- nly "Nyamal"
- nlz "Nalögo"
@@ -4653,7 +4699,7 @@ nl nld "Dutch"
- nmc "Ngam"
- nmd "Ndumu"
- nme "Mzieme Naga"
-- nmf "Tangkhul Naga"
+- nmf "Tangkhul Naga (India)"
- nmg "Kwasio"
- nmh "Monsang Naga"
- nmi "Nyam"
@@ -4697,7 +4743,6 @@ nn nno "Norwegian Nynorsk"
- nnu "Dwang"
- nnv "Nugunu (Australia)"
- nnw "Southern Nuni"
-- nnx "Ngong"
- nny "Nyangga"
- nnz "Nda'nda'"
- noa "Woun Meu"
@@ -4711,9 +4756,9 @@ nb nob "Norwegian Bokmål"
- noi "Noiri"
- noj "Nonuya"
- nok "Nooksack"
+- nol "Nomlaki"
- nom "Nocamán"
- non "Old Norse"
-- noo "Nootka"
- nop "Numanggang"
- noq "Ngongo"
no nor "Norwegian"
@@ -4726,36 +4771,46 @@ no nor "Norwegian"
- noz "Nayi"
- npa "Nar Phu"
- npb "Nupbikha"
+- npg "Ponyo-Gongwang Naga"
- nph "Phom Naga"
+- npi "Nepali (individual language)"
- npl "Southeastern Puebla Nahuatl"
- npn "Mondropolon"
- npo "Pochuri Naga"
- nps "Nipsan"
- npu "Puimei Naga"
+- npx "Noipx"
- npy "Napu"
- nqg "Southern Nago"
- nqk "Kura Ede Nago"
+- nql "Ngendelengo"
- nqm "Ndom"
- nqn "Nen"
- nqo "N'Ko"
+- nqq "Kyan-Karyaw Naga"
+- nqy "Akyaung Ari Naga"
- nra "Ngom"
- nrb "Nara"
- nrc "Noric"
- nre "Southern Rengma Naga"
+- nrf "Jèrriais"
- nrg "Narango"
- nri "Chokri Naga"
+- nrk "Ngarla"
- nrl "Ngarluma"
- nrm "Narom"
- nrn "Norn"
- nrp "North Picene"
- nrr "Norra"
- nrt "Northern Kalapuya"
+- nru "Narua"
- nrx "Ngurmbur"
- nrz "Lala"
- nsa "Sangtam Naga"
- nsc "Nshi"
- nsd "Southern Nisu"
- nse "Nsenga"
+- nsf "Northwestern Nisu"
- nsg "Ngasa"
- nsh "Ngoshie"
- nsi "Nigerian Sign Language"
@@ -4775,7 +4830,9 @@ no nor "Norwegian"
- nsx "Nsongo"
- nsy "Nasal"
- nsz "Nisenan"
+- ntd "Northern Tidung"
- nte "Nathembo"
+- ntg "Ngantangarra"
- nti "Natioro"
- ntj "Ngaanyatjarra"
- ntk "Ikoma-Nata-Isenye"
@@ -4783,12 +4840,12 @@ no nor "Norwegian"
- nto "Ntomba"
- ntp "Northern Tepehuan"
- ntr "Delo"
-- nts "Natagaimas"
- ntu "Natügu"
- ntw "Nottoway"
+- ntx "Tangkhul Naga (Myanmar)"
- nty "Mantsi"
- ntz "Natanzi"
-- nua "Yuaga"
+- nua "Yuanga"
- nuc "Nukuini"
- nud "Ngala"
- nue "Ngundu"
@@ -4797,9 +4854,10 @@ no nor "Norwegian"
- nuh "Ndunda"
- nui "Ngumbi"
- nuj "Nyole"
+- nuk "Nuu-chah-nulth"
- nul "Nusa Laut"
- num "Niuafo'ou"
-- nun "Nung (Myanmar)"
+- nun "Anong"
- nuo "Nguôn"
- nup "Nupe-Nupe-Tako"
- nuq "Nukumanu"
@@ -4814,12 +4872,15 @@ no nor "Norwegian"
- nuz "Tlamacazapa Nahuatl"
- nvh "Nasarian"
- nvm "Namiae"
+- nvo "Nyokon"
- nwa "Nawathinehena"
- nwb "Nyabwa"
- nwc "Classical Newari"
- nwe "Ngwe"
+- nwg "Ngayawung"
- nwi "Southwest Tanna"
- nwm "Nyamusa-Molo"
+- nwo "Nauo"
- nwr "Nawaru"
- nwx "Middle Newar"
- nwy "Nottoway-Meherrin"
@@ -4828,9 +4889,12 @@ no nor "Norwegian"
- nxe "Nage"
- nxg "Ngad'a"
- nxi "Nindi"
+- nxk "Koki Naga"
- nxl "South Nuaulu"
- nxm "Numidian"
- nxn "Ngawun"
+- nxo "Ndambomo"
+- nxq "Naxi"
- nxr "Ninggerum"
- nxu "Narau"
- nxx "Nafri"
@@ -4861,6 +4925,7 @@ ny nya "Nyanja"
- nyy "Nyakyusa-Ngonde"
- nza "Tigon Mbembe"
- nzb "Njebi"
+- nzd "Nzadi"
- nzi "Nzima"
- nzk "Nzakara"
- nzm "Zeme Naga"
@@ -4914,6 +4979,7 @@ oj oji "Ojibwa"
- okb "Okobo"
- okd "Okodia"
- oke "Okpe (Southwestern Edo)"
+- okg "Koko Babangk"
- okh "Koresh-e Rostam"
- oki "Okiek"
- okj "Oko-Juwoi"
@@ -4930,13 +4996,15 @@ oj oji "Ojibwa"
- ola "Walungge"
- old "Mochi"
- ole "Olekha"
+- olk "Olkol"
- olm "Oloma"
- olo "Livvi"
- olr "Olrat"
+- olt "Old Lithuanian"
+- olu "Kuvale"
- oma "Omaha-Ponca"
- omb "East Ambae"
- omc "Mochica"
-- ome "Omejes"
- omg "Omagua"
- omi "Omi"
- omk "Omok"
@@ -4981,7 +5049,7 @@ oj oji "Ojibwa"
- ore "Orejón"
- org "Oring"
- orh "Oroqen"
-or ori "Oriya"
+or ori "Oriya (macrolanguage)"
om orm "Oromo"
- orn "Orang Kanaq"
- oro "Orokolo"
@@ -4992,6 +5060,7 @@ om orm "Oromo"
- orv "Old Russian"
- orw "Oro Win"
- orx "Oro"
+- ory "Odia"
- orz "Ormu"
- osa "Osage"
- osc "Oscan"
@@ -5022,10 +5091,10 @@ os oss "Ossetian"
- otz "Ixtenco Otomi"
- oua "Tagargrent"
- oub "Glio-Oubi"
-- oue "Ounge"
+- oue "Oune"
- oui "Old Uighur"
- oum "Ouma"
-- oun "!O!ung"
+- ovd "Elfdalian"
- owi "Owiniga"
- owl "Old Welsh"
- oyb "Oy"
@@ -5065,6 +5134,7 @@ pa pan "Panjabi"
- pbh "E'ñapa Woromaipu"
- pbi "Parkwa"
- pbl "Mak (Nigeria)"
+- pbm "Puebla Mazatec"
- pbn "Kpasam"
- pbo "Papel"
- pbp "Badyara"
@@ -5073,8 +5143,7 @@ pa pan "Panjabi"
- pbt "Southern Pashto"
- pbu "Northern Pashto"
- pbv "Pnar"
-- pby "Pyu"
-- pbz "Palu"
+- pby "Pyu (Papua New Guinea)"
- pca "Santa Inés Ahuatempan Popoloca"
- pcb "Pear"
- pcc "Bouyei"
@@ -5090,7 +5159,6 @@ pa pan "Panjabi"
- pcm "Nigerian Pidgin"
- pcn "Piti"
- pcp "Pacahuara"
-- pcr "Panang"
- pcw "Pyapun"
- pda "Anam"
- pdc "Pennsylvania German"
@@ -5123,13 +5191,15 @@ pa pan "Panjabi"
- pfe "Peere"
- pfl "Pfaelzisch"
- pga "Sudanese Creole Arabic"
+- pgd "Gāndhārī"
- pgg "Pangwali"
- pgi "Pagi"
- pgk "Rerep"
+- pgl "Primitive Irish"
- pgn "Paelignian"
- pgs "Pangseng"
- pgu "Pagu"
-- pgy "Pongyong"
+- pgz "Papua New Guinean Sign Language"
- pha "Pa-Hng"
- phd "Phudagi"
- phg "Phuong"
@@ -5198,7 +5268,7 @@ pi pli "Pali"
- plp "Palpa"
- plq "Palaic"
- plr "Palaka Senoufo"
-- pls "San Marcos Tlalcoyalco Popoloca"
+- pls "San Marcos Tlacoyalco Popoloca"
- plt "Plateau Malagasy"
- plu "Palikúr"
- plv "Southwest Palawano"
@@ -5207,7 +5277,7 @@ pi pli "Pali"
- plz "Paluan"
- pma "Paama"
- pmb "Pambia"
-- pmc "Palumata"
+- pmd "Pallanganmiddang"
- pme "Pwaamei"
- pmf "Pamona"
- pmh "Māhārāṣṭri Prākrit"
@@ -5222,7 +5292,6 @@ pi pli "Pali"
- pmr "Paynamar"
- pms "Piemontese"
- pmt "Tuamotuan"
-- pmu "Mirpur Panjabi"
- pmw "Plains Miwok"
- pmx "Poumei Naga"
- pmy "Papuan Malay"
@@ -5234,6 +5303,9 @@ pi pli "Pali"
- png "Pongu"
- pnh "Penrhyn"
- pni "Aoheng"
+- pnj "Pinjarup"
+- pnk "Paunaka"
+- pnl "Paleni"
- pnm "Punan Batu 1"
- pnn "Pinai-Hagahai"
- pno "Panobo"
@@ -5249,7 +5321,6 @@ pi pli "Pali"
- pny "Pinyin"
- pnz "Pana (Central African Republic)"
- poc "Poqomam"
-- pod "Ponares"
- poe "San Juan Atzingo Popoloca"
- pof "Poke"
- pog "Potiguára"
@@ -5260,7 +5331,7 @@ pl pol "Polish"
- pom "Southeastern Pomo"
- pon "Pohnpeian"
- poo "Central Pomo"
-- pop "Pwapwa"
+- pop "Pwapwâ"
- poq "Texistepec Popoluca"
pt por "Portuguese"
- pos "Sayula Popoluca"
@@ -5269,7 +5340,6 @@ pt por "Portuguese"
- pow "San Felipe Otlaltepec Popoloca"
- pox "Polabian"
- poy "Pogolo"
-- ppa "Pao"
- ppe "Papi"
- ppi "Paipai"
- ppk "Uma"
@@ -5279,13 +5349,11 @@ pt por "Portuguese"
- ppo "Folopa"
- ppp "Pelende"
- ppq "Pei"
-- ppr "Piru"
- pps "San Luís Temalacayuca Popoloca"
- ppt "Pare"
- ppu "Papora"
- pqa "Pa'a"
- pqm "Malecite-Passamaquoddy"
-- prb "Lua'"
- prc "Parachi"
- prd "Parsi-Dari"
- pre "Principense"
@@ -5306,15 +5374,14 @@ pt por "Portuguese"
- pru "Puragi"
- prw "Parawen"
- prx "Purik"
-- pry "Pray 3"
- prz "Providencia Sign Language"
- psa "Asue Awyu"
- psc "Persian Sign Language"
- psd "Plains Indian Sign Language"
- pse "Central Malay"
- psg "Penang Sign Language"
-- psh "Southwest Pashayi"
-- psi "Southeast Pashayi"
+- psh "Southwest Pashai"
+- psi "Southeast Pashai"
- psl "Puerto Rican Sign Language"
- psm "Pauserna"
- psn "Panasuan"
@@ -5333,6 +5400,7 @@ pt por "Portuguese"
- ptn "Patani"
- pto "Zo'é"
- ptp "Patep"
+- ptq "Pattapu"
- ptr "Piamatsina"
- ptt "Enrekang"
- ptu "Bambam"
@@ -5348,7 +5416,6 @@ pt por "Portuguese"
- pug "Phuie"
- pui "Puinave"
- puj "Punan Tubu"
-- puk "Pu Ko"
- pum "Puma"
- puo "Puoc"
- pup "Pulabu"
@@ -5360,10 +5427,10 @@ ps pus "Pushto"
- puw "Puluwatese"
- pux "Puare"
- puy "Purisimeño"
-- puz "Purum Naga"
- pwa "Pawaia"
- pwb "Panawa"
- pwg "Gapapaiwa"
+- pwi "Patwin"
- pwm "Molbog"
- pwn "Paiwan"
- pwo "Pwo Western Karen"
@@ -5464,6 +5531,7 @@ qu que "Quechua"
- rbb "Rumai Palaung"
- rbk "Northern Bontok"
- rbl "Miraya Bikol"
+- rbp "Barababaraba"
- rcf "Réunion Creole French"
- rdb "Rudbari"
- rea "Rerau"
@@ -5489,7 +5557,6 @@ qu que "Quechua"
- rhg "Rohingya"
- rhp "Yahang"
- ria "Riang (India)"
-- rie "Rien"
- rif "Tarifit"
- ril "Riang (Myanmar)"
- rim "Nyaturu"
@@ -5506,6 +5573,7 @@ qu que "Quechua"
- rki "Rakhine"
- rkm "Marka"
- rkt "Rangpuri"
+- rkw "Arakwal"
- rma "Rama"
- rmb "Rembarunga"
- rmc "Carpathian Romani"
@@ -5530,12 +5598,12 @@ qu que "Quechua"
- rmx "Romam"
- rmy "Vlax Romani"
- rmz "Marma"
-- rna "Runa"
- rnd "Ruund"
- rng "Ronga"
- rnl "Ranglong"
- rnn "Roon"
- rnp "Rongpo"
+- rnr "Nari Nari"
- rnw "Rungwa"
- rob "Tae'"
- roc "Cacgia Roglai"
@@ -5556,11 +5624,14 @@ ro ron "Romanian"
- rpt "Rapting"
- rri "Ririo"
- rro "Waima"
+- rrt "Arritinngithigh"
- rsb "Romano-Serbian"
-- rsi "Rennellese Sign Language"
- rsl "Russian Sign Language"
+- rsm "Miriwoong Sign Language"
+- rtc "Rungtu Chin"
- rth "Ratahan"
- rtm "Rotuman"
+- rts "Yurats"
- rtw "Rathawi"
- rub "Gungu"
- ruc "Ruuli"
@@ -5584,9 +5655,12 @@ ru rus "Russian"
- rwm "Amba (Uganda)"
- rwo "Rawa"
- rwr "Marwari (India)"
+- rxd "Ngardi"
+- rxw "Karuwali"
- ryn "Northern Amami-Oshima"
- rys "Yaeyama"
- ryu "Central Okinawan"
+- rzh "Rāziḥī"
- saa "Saba"
- sab "Buglere"
- sac "Meskwaki"
@@ -5600,7 +5674,6 @@ sg sag "Sango"
- sam "Samaritan Aramaic"
sa san "Sanskrit"
- sao "Sause"
-- sap "Sanapaná"
- saq "Samburu"
- sar "Saraveca"
- sas "Sasak"
@@ -5616,7 +5689,7 @@ sa san "Sanskrit"
- sbc "Kele (Papua New Guinea)"
- sbd "Southern Samo"
- sbe "Saliba"
-- sbf "Shabo"
+- sbf "Chabu"
- sbg "Seget"
- sbh "Sori-Harengan"
- sbi "Seti"
@@ -5637,7 +5710,6 @@ sa san "Sanskrit"
- sbx "Seberuang"
- sby "Soli"
- sbz "Sara Kaba"
-- sca "Sansu"
- scb "Chut"
- sce "Dongxiang"
- scf "San Miguel Creole French"
@@ -5648,9 +5720,10 @@ sa san "Sanskrit"
- scl "Shina"
- scn "Sicilian"
- sco "Scots"
-- scp "Helambu Sherpa"
+- scp "Hyolmo"
- scq "Sa'och"
- scs "North Slavey"
+- sct "Southern Katang"
- scu "Shumcho"
- scv "Sheni"
- scw "Sha"
@@ -5700,6 +5773,7 @@ sa san "Sanskrit"
- sey "Secoya"
- sez "Senthang Chin"
- sfb "Langue des signes de Belgique Francophone"
+- sfe "Eastern Subanen"
- sfm "Small Flowery Miao"
- sfs "South African Sign Language"
- sfw "Sehwi"
@@ -5711,9 +5785,9 @@ sa san "Sanskrit"
- sgg "Swiss-German Sign Language"
- sgh "Shughni"
- sgi "Suga"
+- sgj "Surgujia"
- sgk "Sangkong"
- sgm "Singa"
-- sgo "Songa"
- sgp "Singpho"
- sgr "Sangisari"
- sgs "Samogitian"
@@ -5789,7 +5863,7 @@ si sin "Sinhala"
- sjw "Shawnee"
- ska "Skagit"
- skb "Saek"
-- skc "Sauk"
+- skc "Ma Manda"
- skd "Southern Sierra Miwok"
- ske "Seke (Vanuatu)"
- skf "Sakirabiá"
@@ -5797,13 +5871,12 @@ si sin "Sinhala"
- skh "Sikule"
- ski "Sika"
- skj "Seke (Nepal)"
-- skk "Sok"
-- skm "Sakam"
+- skm "Kutong"
- skn "Kolibugan Subanon"
- sko "Seko Tengah"
- skp "Sekapan"
- skq "Sininkere"
-- skr "Seraiki"
+- skr "Saraiki"
- sks "Maia"
- skt "Sakata"
- sku "Sakao"
@@ -5867,7 +5940,6 @@ sd snd "Sindhi"
- sne "Bau Bidayuh"
- snf "Noon"
- sng "Sanga (Democratic Republic of Congo)"
-- snh "Shinabo"
- sni "Sensi"
- snj "Riverain Sango"
- snk "Soninke"
@@ -5906,7 +5978,7 @@ st sot "Southern Sotho"
- sou "Southern Thai"
- sov "Sonsorol"
- sow "Sowanda"
-- sox "So (Cameroon)"
+- sox "Swo"
- soy "Miyobe"
- soz "Temi"
es spa "Spanish"
@@ -5918,7 +5990,8 @@ es spa "Spanish"
- spi "Saponi"
- spk "Sengo"
- spl "Selepet"
-- spm "Sepen"
+- spm "Akukem"
+- spn "Sanapaná"
- spo "Spokane"
- spp "Supyire Senoufo"
- spq "Loreto-Ucayali Spanish"
@@ -5926,11 +5999,13 @@ es spa "Spanish"
- sps "Saposa"
- spt "Spiti Bhoti"
- spu "Sapuan"
+- spv "Sambalpuri"
- spx "South Picene"
- spy "Sabaot"
- sqa "Shama-Sambuga"
- sqh "Shau"
sq sqi "Albanian"
+- sqk "Albanian Sign Language"
- sqm "Suma"
- sqn "Susquehannock"
- sqo "Sorkhei"
@@ -6011,6 +6086,7 @@ ss ssw "Swati"
- stu "Samtao"
- stv "Silt'e"
- stw "Satawalese"
+- sty "Siberian Tatar"
- sua "Sulka"
- sub "Suku"
- suc "Western Subanon"
@@ -6024,7 +6100,7 @@ su sun "Sundanese"
- sur "Mwaghavul"
- sus "Susu"
- sut "Subtiaba"
-- suv "Sulung"
+- suv "Puroik"
- suw "Sumbwa"
- sux "Sumerian"
- suy "Suyá"
@@ -6034,7 +6110,7 @@ su sun "Sundanese"
- svc "Vincentian Creole English"
- sve "Serili"
- svk "Slovakian Sign Language"
-- svr "Savara"
+- svm "Slavomolisano"
- svs "Savosavo"
- svx "Skalvian"
sw swa "Swahili (macrolanguage)"
@@ -6064,7 +6140,7 @@ sv swe "Swedish"
- sxb "Suba"
- sxc "Sicanian"
- sxe "Sighu"
-- sxg "Shixing"
+- sxg "Shuhi"
- sxk "Southern Kalapuya"
- sxl "Selian"
- sxm "Samre"
@@ -6086,6 +6162,7 @@ sv swe "Swedish"
- syr "Syriac"
- sys "Sinyar"
- syw "Kagate"
+- syx "Samay"
- syy "Al-Sayyid Bedouin Sign Language"
- sza "Semelai"
- szb "Ngalum"
@@ -6096,6 +6173,7 @@ sv swe "Swedish"
- szl "Silesian"
- szn "Sula"
- szp "Suabo"
+- szs "Solomon Islands Sign Language"
- szv "Isu (Fako Division)"
- szw "Sawai"
- taa "Lower Tanana"
@@ -6183,13 +6261,13 @@ tt tat "Tatar"
- tdj "Tajio"
- tdk "Tambas"
- tdl "Sur"
+- tdm "Taruma"
- tdn "Tondano"
- tdo "Teme"
- tdq "Tita"
- tdr "Todrah"
- tds "Doutai"
- tdt "Tetun Dili"
-- tdu "Tempasuk Dusun"
- tdv "Toro"
- tdx "Tandroy-Mahafaly Malagasy"
- tdy "Tadyawan"
@@ -6217,6 +6295,7 @@ te tel "Telugu"
- tew "Tewa (USA)"
- tex "Tennet"
- tey "Tulishi"
+- tez "Tetserret"
- tfi "Tofin Gbe"
- tfn "Tanaina"
- tfo "Tefaro"
@@ -6228,9 +6307,9 @@ te tel "Telugu"
- tgd "Ciwogai"
- tge "Eastern Gorkha Tamang"
- tgf "Chalikha"
-- tgg "Tangga"
- tgh "Tobagonian Creole English"
- tgi "Lawunuia"
+- tgj "Tagin"
tg tgk "Tajik"
tl tgl "Tagalog"
- tgn "Tandaganon"
@@ -6245,8 +6324,8 @@ tl tgl "Tagalog"
- tgw "Tagwana Senoufo"
- tgx "Tagish"
- tgy "Togoyo"
+- tgz "Tagalaka"
th tha "Thai"
-- thc "Tai Hang Tong"
- thd "Thayore"
- the "Chitwania Tharu"
- thf "Thangmi"
@@ -6264,13 +6343,10 @@ th tha "Thai"
- thu "Thuri"
- thv "Tahaggart Tamahaq"
- thw "Thudam"
-- thx "The"
- thy "Tha"
- thz "Tayart Tamajeq"
- tia "Tidikelt Tamazight"
- tic "Tira"
-- tid "Tidong"
-- tie "Tingal"
- tif "Tifal"
- tig "Tigre"
- tih "Timugon Murut"
@@ -6295,17 +6371,19 @@ ti tir "Tigrinya"
- tja "Tajuasohn"
- tjg "Tunjung"
- tji "Northern Tujia"
+- tjl "Tai Laing"
- tjm "Timucua"
- tjn "Tonjon"
- tjo "Temacine Tamazight"
- tjs "Southern Tujia"
- tju "Tjurruru"
+- tjw "Djabwurrung"
- tka "Truká"
- tkb "Buksa"
- tkd "Tukudede"
- tke "Takwane"
- tkf "Tukumanféd"
-- tkk "Takpa"
+- tkg "Tesaka Malagasy"
- tkl "Tokelau"
- tkm "Takelma"
- tkn "Toku-No-Shima"
@@ -6315,6 +6393,7 @@ ti tir "Tigrinya"
- tks "Takestani"
- tkt "Kathoriya Tharu"
- tku "Upper Necaxa Totonac"
+- tkv "Mur Pano"
- tkw "Teanu"
- tkx "Tangko"
- tkz "Takua"
@@ -6336,10 +6415,9 @@ ti tir "Tigrinya"
- tlq "Tai Loi"
- tlr "Talise"
- tls "Tambotalo"
-- tlt "Teluti"
+- tlt "Sou Nama"
- tlu "Tulehu"
- tlv "Taliabu"
-- tlw "South Wemale"
- tlx "Khehek"
- tly "Talysh"
- tma "Tama (Chad)"
@@ -6357,7 +6435,6 @@ ti tir "Tigrinya"
- tmm "Tai Thanh"
- tmn "Taman (Indonesia)"
- tmo "Temoq"
-- tmp "Tai Mène"
- tmq "Tumleo"
- tmr "Jewish Babylonian Aramaic (ca. 200-1200 CE)"
- tms "Tima"
@@ -6371,7 +6448,6 @@ ti tir "Tigrinya"
- tnb "Western Tunebo"
- tnc "Tanimuca-Retuarã"
- tnd "Angosturas Tunebo"
-- tne "Tinoc Kallahan"
- tng "Tobanga"
- tnh "Maiani"
- tni "Tandia"
@@ -6382,7 +6458,7 @@ ti tir "Tigrinya"
- tno "Toromono"
- tnp "Whitesands"
- tnq "Taino"
-- tnr "Bedik"
+- tnr "Ménik"
- tns "Tenis"
- tnt "Tontemboan"
- tnu "Tay Khang"
@@ -6390,11 +6466,10 @@ ti tir "Tigrinya"
- tnw "Tonsawang"
- tnx "Tanema"
- tny "Tongwe"
-- tnz "Tonga (Thailand)"
+- tnz "Ten'edn"
- tob "Toba"
- toc "Coyutla Totonac"
- tod "Toma"
-- toe "Tomedes"
- tof "Gizrra"
- tog "Tonga (Nyasa)"
- toh "Gitonga"
@@ -6477,7 +6552,6 @@ to ton "Tonga (Tonga Islands)"
- tsc "Tswa"
- tsd "Tsakonian"
- tse "Tunisian Sign Language"
-- tsf "Southwestern Tamang"
- tsg "Tausug"
- tsh "Tsuvan"
- tsi "Tsimshian"
@@ -6491,6 +6565,7 @@ ts tso "Tsonga"
- tsq "Thai Sign Language"
- tsr "Akei"
- tss "Taiwan Sign Language"
+- tst "Tondi Songway Kiini"
- tsu "Tsou"
- tsv "Tsogo"
- tsw "Tsishingini"
@@ -6555,6 +6630,7 @@ tr tur "Turkish"
- tvo "Tidore"
- tvs "Taveta"
- tvt "Tutsa Naga"
+- tvu "Tunen"
- tvw "Sedoa"
- tvy "Timor Pidgin"
- twa "Twana"
@@ -6585,6 +6661,7 @@ tw twi "Twi"
- txg "Tangut"
- txh "Thracian"
- txi "Ikpeng"
+- txj "Tarjumo"
- txm "Tomini"
- txn "West Tarangan"
- txo "Toto"
@@ -6596,7 +6673,7 @@ tw twi "Twi"
- txx "Tatana"
- txy "Tanosy Malagasy"
- tya "Tauya"
-- tye "Kyenga"
+- tye "Kyanga"
- tyh "O'du"
- tyi "Teke-Tsaayi"
- tyj "Tai Do"
@@ -6613,6 +6690,7 @@ tw twi "Twi"
- tza "Tanzanian Sign Language"
- tzh "Tzeltal"
- tzj "Tz'utujil"
+- tzl "Talossan"
- tzm "Central Atlas Tamazight"
- tzn "Tugun"
- tzo "Tzotzil"
@@ -6651,6 +6729,7 @@ ug uig "Uighur"
- uka "Kaburi"
- ukg "Ukuriguma"
- ukh "Ukhwejo"
+- ukk "Muak Sa-aak"
- ukl "Ukrainian Sign Language"
- ukp "Ukpe-Bayobiri"
- ukq "Ukwa"
@@ -6658,9 +6737,11 @@ uk ukr "Ukrainian"
- uks "Urubú-Kaapor Sign Language"
- uku "Ukue"
- ukw "Ukwuani-Aboh-Ndoni"
+- uky "Kuuk-Yak"
- ula "Fungwa"
- ulb "Ulukwumi"
- ulc "Ulch"
+- ule "Lule"
- ulf "Usku"
- uli "Ulithian"
- ulk "Meriam"
@@ -6688,11 +6769,11 @@ uk ukr "Ukrainian"
- ung "Ngarinyin"
- unk "Enawené-Nawé"
- unm "Unami"
-- unp "Worora"
+- unn "Kurnai"
- unr "Mundari"
+- unu "Unubahe"
- unx "Munda"
- unz "Unde Kaili"
-- uok "Uokha"
- upi "Umeda"
- upv "Uripiv-Wala-Rano-Atchin"
- ura "Urarina"
@@ -6747,7 +6828,7 @@ uz uzb "Uzbek"
- vag "Vagla"
- vah "Varhadi-Nagpuri"
- vai "Vai"
-- vaj "Vasekela Bushman"
+- vaj "Sekele"
- val "Vehes"
- vam "Vanimo"
- van "Valman"
@@ -6793,12 +6874,12 @@ vi vie "Vietnamese"
- vlp "Valpei"
- vls "Vlaams"
- vma "Martuyhunira"
-- vmb "Mbabaram"
+- vmb "Barbaram"
- vmc "Juxtlahuaca Mixtec"
- vmd "Mudu Koraga"
- vme "East Masela"
- vmf "Mainfränkisch"
-- vmg "Minigir"
+- vmg "Lungalunga"
- vmh "Maraghei"
- vmi "Miwa"
- vmj "Ixtayutla Mixtec"
@@ -6871,6 +6952,7 @@ vo vol "Volapük"
- wbp "Warlpiri"
- wbq "Waddar"
- wbr "Wagdi"
+- wbs "West Bengal Sign Language"
- wbt "Wanman"
- wbv "Wajarri"
- wbw "Woi"
@@ -6879,19 +6961,22 @@ vo vol "Volapük"
- wdd "Wandji"
- wdg "Wadaginam"
- wdj "Wadjiginy"
+- wdk "Wadikali"
- wdu "Wadjigu"
+- wdy "Wadjabangayi"
- wea "Wewaw"
- wec "Wè Western"
- wed "Wedau"
+- weg "Wergaia"
- weh "Weh"
-- wei "Were"
+- wei "Kiunum"
- wem "Weme Gbe"
-- weo "North Wemale"
+- weo "Wemale"
- wep "Westphalien"
- wer "Weri"
- wes "Cameroon Pidgin"
- wet "Perai"
-- weu "Welaung"
+- weu "Rawngtu Chin"
- wew "Wejewa"
- wfg "Yafi"
- wga "Wagaya"
@@ -6899,8 +6984,9 @@ vo vol "Volapük"
- wgg "Wangganguru"
- wgi "Wahgi"
- wgo "Waigeo"
+- wgu "Wirangu"
- wgy "Warrgamay"
-- wha "Manusela"
+- wha "Sou Upaa"
- whg "North Wahgi"
- whk "Wahau Kenyah"
- whu "Wahau Kayan"
@@ -6917,10 +7003,8 @@ vo vol "Volapük"
- wim "Wik-Mungkan"
- win "Ho-Chunk"
- wir "Wiraféd"
-- wit "Wintu"
- wiu "Wiru"
-- wiv "Muduapa"
-- wiw "Wirangu"
+- wiv "Vitu"
- wiy "Wiyot"
- wja "Waja"
- wji "Warji"
@@ -6930,6 +7014,7 @@ vo vol "Volapük"
- wkl "Kalanadi"
- wku "Kunduvadi"
- wkw "Wakawaka"
+- wky "Wangkayutyuru"
- wla "Walio"
- wlc "Mwali Comorian"
- wle "Wolane"
@@ -6969,9 +7054,12 @@ wa wln "Walloon"
- wni "Ndzwani Comorian"
- wnk "Wanukaka"
- wnm "Wanggamala"
+- wnn "Wunumara"
- wno "Wano"
- wnp "Wanap"
- wnu "Usan"
+- wnw "Wintu"
+- wny "Wanyi"
- woa "Tyaraity"
- wob "Wè Northern"
- woc "Wogeo"
@@ -6996,9 +7084,11 @@ wo wol "Wolof"
- wrg "Warungu"
- wrh "Wiradhuri"
- wri "Wariyangga"
+- wrk "Garrwa"
- wrl "Warlmanpa"
- wrm "Warumungu"
- wrn "Warnang"
+- wro "Worrorra"
- wrp "Waropen"
- wrr "Wardaman"
- wrs "Waris"
@@ -7009,13 +7099,15 @@ wo wol "Wolof"
- wry "Merwari"
- wrz "Waray (Australia)"
- wsa "Warembori"
+- wsg "Adilabad Gondi"
- wsi "Wusi"
- wsk "Waskia"
- wsr "Owenia"
- wss "Wasa"
- wsu "Wasu"
- wsv "Wotapuri-Katarqalai"
-- wtf "Dumpu"
+- wtf "Watiwa"
+- wth "Wathawurrung"
- wti "Berta"
- wtk "Watakataui"
- wtm "Mewati"
@@ -7034,12 +7126,15 @@ wo wol "Wolof"
- wux "Wulna"
- wuy "Wauyai"
- wwa "Waama"
+- wwb "Wakabunga"
- wwo "Wetamut"
- wwr "Warrwa"
- www "Wawa"
- wxa "Waxianghua"
+- wxw "Wardandi"
- wya "Wyandot"
- wyb "Wangaaybuwan-Ngiyambaa"
+- wyi "Woiwurrung"
- wym "Wymysorys"
- wyr "Wayoró"
- wyy "Western Fijian"
@@ -7050,8 +7145,10 @@ wo wol "Wolof"
- xae "Aequian"
- xag "Aghwan"
- xai "Kaimbé"
+- xaj "Ararandewára"
+- xak "Máku"
- xal "Kalmyk"
-- xam "/Xam"
+- xam "ǀXam"
- xan "Xamtanga"
- xao "Khao"
- xap "Apalachee"
@@ -7063,16 +7160,20 @@ wo wol "Wolof"
- xav "Xavánte"
- xaw "Kawaiisu"
- xay "Kayan Mahakam"
-- xba "Kamba (Brazil)"
- xbb "Lower Burdekin"
- xbc "Bactrian"
+- xbd "Bindal"
+- xbe "Bigambal"
+- xbg "Bunganditj"
- xbi "Kombio"
+- xbj "Birrpayi"
- xbm "Middle Breton"
- xbn "Kenaboi"
- xbo "Bolgarian"
+- xbp "Bibbulman"
- xbr "Kambera"
- xbw "Kambiwá"
-- xbx "Kabixí"
+- xby "Batyala"
- xcb "Cumbric"
- xcc "Camunic"
- xce "Celtiberian"
@@ -7088,12 +7189,15 @@ wo wol "Wolof"
- xcv "Chuvantsy"
- xcw "Coahuilteco"
- xcy "Cayuse"
+- xda "Darkinyung"
- xdc "Dacian"
+- xdk "Dharuk"
- xdm "Edomite"
+- xdo "Kwandu"
- xdy "Malayic Dayak"
- xeb "Eblan"
- xed "Hdi"
-- xeg "//Xegwi"
+- xeg "ǁXegwi"
- xel "Kelo"
- xem "Kembayan"
- xep "Epi-Olmec"
@@ -7103,9 +7207,16 @@ wo wol "Wolof"
- xeu "Keoru-Ahia"
- xfa "Faliscan"
- xga "Galatian"
+- xgb "Gbin"
+- xgd "Gudang"
- xgf "Gabrielino-Fernandeño"
+- xgg "Goreng"
+- xgi "Garingbal"
- xgl "Galindan"
+- xgm "Dharumbal"
- xgr "Garza"
+- xgu "Unggumi"
+- xgw "Guwa"
- xha "Harami"
- xhc "Hunnic"
- xhd "Hadrami"
@@ -7115,15 +7226,16 @@ xh xho "Xhosa"
- xht "Hattic"
- xhu "Hurrian"
- xhv "Khua"
-- xia "Xiandao"
- xib "Iberian"
- xii "Xiri"
- xil "Illyrian"
- xin "Xinca"
-- xip "Xipináwa"
- xir "Xiriâna"
+- xis "Kisan"
- xiv "Indus Valley Language"
- xiy "Xipaya"
+- xjb "Minjungbal"
+- xjt "Jaitmatang"
- xka "Kalkoti"
- xkb "Northern Nago"
- xkc "Kho'ini"
@@ -7131,7 +7243,6 @@ xh xho "Xhosa"
- xke "Kereho"
- xkf "Khengkha"
- xkg "Kagoro"
-- xkh "Karahawyana"
- xki "Kenyan Sign Language"
- xkj "Kajali"
- xkk "Kaco'"
@@ -7165,7 +7276,7 @@ xh xho "Xhosa"
- xma "Mushungulu"
- xmb "Mbonga"
- xmc "Makhuwa-Marrevone"
-- xmd "Mbedam"
+- xmd "Mbudum"
- xme "Median"
- xmf "Mingrelian"
- xmg "Mengaka"
@@ -7191,11 +7302,16 @@ xh xho "Xhosa"
- xnb "Kanakanabu"
- xng "Middle Mongolian"
- xnh "Kuanhua"
+- xni "Ngarigu"
+- xnk "Nganakarti"
- xnn "Northern Kankanay"
- xno "Anglo-Norman"
- xnr "Kangri"
- xns "Kanashi"
- xnt "Narragansett"
+- xnu "Nukunul"
+- xny "Nyiyaparli"
+- xnz "Kenzi"
- xoc "O'chi'chi'"
- xod "Kokoda"
- xog "Soga"
@@ -7207,10 +7323,12 @@ xh xho "Xhosa"
- xop "Kopar"
- xor "Korubo"
- xow "Kowaki"
+- xpa "Pirriya"
- xpc "Pecheneg"
- xpe "Liberia Kpelle"
- xpg "Phrygian"
- xpi "Pictish"
+- xpj "Mpalitjanh"
- xpk "Kulina Pano"
- xpm "Pumpokol"
- xpn "Kapinawá"
@@ -7219,28 +7337,31 @@ xh xho "Xhosa"
- xpq "Mohegan-Pequot"
- xpr "Parthian"
- xps "Pisidian"
+- xpt "Punthamara"
- xpu "Punic"
- xpy "Puyo"
- xqa "Karakhanid"
- xqt "Qatabanian"
- xra "Krahô"
- xrb "Eastern Karaboro"
+- xrd "Gundungurra"
- xre "Kreye"
+- xrg "Minang"
- xri "Krikati-Timbira"
- xrm "Armazic"
- xrn "Arin"
+- xrq "Karranga"
- xrr "Raetic"
- xrt "Aranama-Tamique"
- xru "Marriammu"
- xrw "Karawa"
- xsa "Sabaean"
-- xsb "Tinà Sambal"
+- xsb "Sambal"
- xsc "Scythian"
- xsd "Sidetic"
- xse "Sempan"
- xsh "Shamang"
- xsi "Sio"
-- xsj "Subi"
- xsl "South Slavey"
- xsm "Kasem"
- xsn "Sanga (Nigeria)"
@@ -7258,6 +7379,7 @@ xh xho "Xhosa"
- xtd "Diuxi-Tilantongo Mixtec"
- xte "Ketengban"
- xtg "Transalpine Gaulish"
+- xth "Yitha Yitha"
- xti "Sinicahua Mixtec"
- xtj "San Juan Teita Mixtec"
- xtl "Tijaltepec Mixtec"
@@ -7270,14 +7392,18 @@ xh xho "Xhosa"
- xts "Sindihui Mixtec"
- xtt "Tacahua Mixtec"
- xtu "Cuyamecalco Mixtec"
+- xtv "Thawa"
- xtw "Tawandê"
- xty "Yoloxochitl Mixtec"
- xtz "Tasmanian"
- xua "Alu Kurumba"
- xub "Betta Kurumba"
+- xud "Umiida"
- xug "Kunigami"
- xuj "Jennu Kurumba"
+- xul "Ngunawal"
- xum "Umbrian"
+- xun "Unggaranggu"
- xuo "Kuo"
- xup "Upper Umpqua"
- xur "Urartian"
@@ -7290,16 +7416,28 @@ xh xho "Xhosa"
- xvs "Vestinian"
- xwa "Kwaza"
- xwc "Woccon"
+- xwd "Wadi Wadi"
- xwe "Xwela Gbe"
- xwg "Kwegu"
+- xwj "Wajuk"
+- xwk "Wangkumara"
- xwl "Western Xwla Gbe"
- xwo "Written Oirat"
- xwr "Kwerba Mamberamo"
+- xwt "Wotjobaluk"
+- xww "Wemba Wemba"
- xxb "Boro (Ghana)"
- xxk "Ke'o"
+- xxm "Minkin"
- xxr "Koropó"
- xxt "Tambora"
+- xya "Yaygir"
+- xyb "Yandjibara"
+- xyj "Mayi-Yapi"
+- xyk "Mayi-Kulan"
- xyl "Yalakalore"
+- xyt "Mayi-Thakurti"
+- xyy "Yorta Yorta"
- xzh "Zhang-Zhung"
- xzm "Zemgalian"
- xzp "Ancient Zapotec"
@@ -7331,7 +7469,6 @@ xh xho "Xhosa"
- yaz "Lokaa"
- yba "Yala"
- ybb "Yemba"
-- ybd "Yangbye"
- ybe "West Yugur"
- ybh "Yakha"
- ybi "Yamphu"
@@ -7347,32 +7484,36 @@ xh xho "Xhosa"
- ycl "Lolopo"
- ycn "Yucuna"
- ycp "Chepya"
+- yda "Yanda"
- ydd "Eastern Yiddish"
- yde "Yangum Dey"
- ydg "Yidgha"
- ydk "Yoidik"
-- yds "Yiddish Sign Language"
- yea "Ravula"
- yec "Yeniche"
- yee "Yimas"
- yei "Yeni"
- yej "Yevanic"
- yel "Yela"
-- yen "Yendang"
- yer "Tarok"
-- yes "Yeskwa"
+- yes "Nyankpa"
- yet "Yetfa"
- yeu "Yerukula"
- yev "Yapunda"
- yey "Yeyi"
+- yga "Malyangapa"
+- ygi "Yiningayi"
- ygl "Yangum Gel"
- ygm "Yagomi"
- ygp "Gepo"
- ygr "Yagaria"
+- ygs "Yolŋu Sign Language"
+- ygu "Yugul"
- ygw "Yagwoia"
- yha "Baha Buyang"
- yhd "Judeo-Iraqi Arabic"
- yhl "Hlepho Phowa"
+- yhs "Yan-nhaŋu Sign Language"
- yia "Yinggarda"
yi yid "Yiddish"
- yif "Ache"
@@ -7392,7 +7533,6 @@ yi yid "Yiddish"
- yiu "Awu"
- yiv "Northern Nisu"
- yix "Axi Yi"
-- yiy "Yir Yoront"
- yiz "Azhe"
- yka "Yakan"
- ykg "Northern Yukaghir"
@@ -7400,9 +7540,11 @@ yi yid "Yiddish"
- ykk "Yakaikeke"
- ykl "Khlula"
- ykm "Kap"
+- ykn "Kua-nsi"
- yko "Yasa"
- ykr "Yekora"
- ykt "Kathu"
+- yku "Kuamasi"
- yky "Yakoma"
- yla "Yaul"
- ylb "Yaleba"
@@ -7416,7 +7558,6 @@ yi yid "Yiddish"
- ylr "Yalarnnga"
- ylu "Aribwaung"
- yly "Nyâlayu"
-- yma "Yamphe"
- ymb "Yambes"
- ymc "Southern Muji"
- ymd "Muda"
@@ -7433,18 +7574,17 @@ yi yid "Yiddish"
- ymq "Qila Muji"
- ymr "Malasar"
- yms "Mysian"
-- ymt "Mator-Taygi-Karagas"
- ymx "Northern Muji"
- ymz "Muzi"
- yna "Aluo"
- ynd "Yandruwandha"
- yne "Lang'e"
- yng "Yango"
-- ynh "Yangho"
- ynk "Naukan Yupik"
- ynl "Yangulam"
- ynn "Yana"
- yno "Yong"
+- ynq "Yendang"
- yns "Yansi"
- ynu "Yahuna"
- yob "Yoba"
@@ -7453,9 +7593,9 @@ yi yid "Yiddish"
- yok "Yokuts"
- yol "Yola"
- yom "Yombe"
-- yon "Yonggom"
+- yon "Yongkom"
yo yor "Yoruba"
-- yos "Yos"
+- yot "Yotti"
- yox "Yoron"
- yoy "Yoy"
- ypa "Phala"
@@ -7470,14 +7610,17 @@ yo yor "Yoruba"
- yra "Yerakai"
- yrb "Yareba"
- yre "Yaouré"
-- yri "Yarí"
- yrk "Nenets"
- yrl "Nhengatu"
+- yrm "Yirrk-Mel"
- yrn "Yerong"
+- yro "Yaroamë"
- yrs "Yarsun"
- yrw "Yarawata"
+- yry "Yarluyandi"
- ysc "Yassic"
- ysd "Samatao"
+- ysg "Sonaga"
- ysl "Yugoslavian Sign Language"
- ysn "Sani"
- yso "Nisi (China)"
@@ -7489,6 +7632,7 @@ yo yor "Yoruba"
- ytl "Tanglang"
- ytp "Thopho"
- ytw "Yout Wam"
+- yty "Yatay"
- yua "Yucateco"
- yub "Yugambal"
- yuc "Yuchi"
@@ -7506,7 +7650,6 @@ yo yor "Yoruba"
- yuq "Yuqui"
- yur "Yurok"
- yut "Yopno"
-- yuu "Yugh"
- yuw "Yau (Morobe Province)"
- yux "Southern Yukaghir"
- yuy "East Yugur"
@@ -7514,6 +7657,7 @@ yo yor "Yoruba"
- yva "Yawa"
- yvt "Yavitero"
- ywa "Kalou"
+- ywg "Yinhawangka"
- ywl "Western Lalu"
- ywn "Yawanawa"
- ywq "Wuding-Luquan Yi"
@@ -7521,12 +7665,19 @@ yo yor "Yoruba"
- ywt "Xishanba Lalo"
- ywu "Wumeng Nasu"
- yww "Yawarawarga"
+- yxa "Mayawali"
+- yxg "Yagara"
+- yxl "Yardliyawarra"
+- yxm "Yinwum"
+- yxu "Yuyu"
+- yxy "Yabula Yabula"
+- yyr "Yir Yoront"
- yyu "Yau (Sandaun Province)"
- yyz "Ayizi"
- yzg "E'ma Buyang"
- yzk "Zokhuo"
- zaa "Sierra de Juárez Zapotec"
-- zab "San Juan Guelavía Zapotec"
+- zab "Western Tlacolula Valley Zapotec"
- zac "Ocotlán Zapotec"
- zad "Cajonos Zapotec"
- zae "Yareni Zapotec"
@@ -7564,6 +7715,7 @@ yo yor "Yoruba"
- zen "Zenaga"
- zga "Kinga"
- zgb "Guibei Zhuang"
+- zgh "Standard Moroccan Tamazight"
- zgm "Minz Zhuang"
- zgn "Guibian Zhuang"
- zgr "Magori"
@@ -7577,6 +7729,7 @@ zh zho "Chinese"
- zia "Zia"
- zib "Zimbabwe Sign Language"
- zik "Zimakani"
+- zil "Zialo"
- zim "Mesme"
- zin "Zinza"
- zir "Ziriya"
@@ -7584,9 +7737,11 @@ zh zho "Chinese"
- ziz "Zizilivakan"
- zka "Kaimbulawa"
- zkb "Koibal"
+- zkd "Kadu"
- zkg "Koguryo"
- zkh "Khorezmian"
- zkk "Karankawa"
+- zkn "Kanan"
- zko "Kott"
- zkp "São Paulo Kaingáng"
- zkr "Zakhring"
@@ -7699,6 +7854,6 @@ zu zul "Zulu"
- zyg "Yang Zhuang"
- zyj "Youjiang Zhuang"
- zyn "Yongnan Zhuang"
-- zyp "Zyphe"
+- zyp "Zyphe Chin"
- zza "Zaza"
- zzj "Zuojiang Zhuang"
diff --git a/MLEB/Babel/composer.json b/MLEB/Babel/composer.json
index a1327f2d..b6573913 100644
--- a/MLEB/Babel/composer.json
+++ b/MLEB/Babel/composer.json
@@ -7,7 +7,7 @@
"Language"
],
"homepage": "https://www.mediawiki.org/wiki/Extension:Babel",
- "license": "GPL-2.0+",
+ "license": "GPL-2.0-or-later",
"authors": [
{
"name": "Robert Leverington",
@@ -19,9 +19,28 @@
"irc": "irc://irc.freenode.net/mediawiki-i18n"
},
"require": {
+ "php": ">=5.5.9",
"composer/installers": ">=1.0.1"
},
- "autoload": {
- "files": ["Babel.php"]
+ "require-dev": {
+ "jakub-onderka/php-parallel-lint": "1.0.0",
+ "mediawiki/mediawiki-codesniffer": "19.1.0",
+ "jakub-onderka/php-console-highlighter": "0.3.2",
+ "mediawiki/minus-x": "0.3.1",
+ "mediawiki/mediawiki-phan-config": "0.3.0"
+ },
+ "scripts": {
+ "fix": [
+ "phpcbf",
+ "minus-x fix ."
+ ],
+ "test": [
+ "parallel-lint . --exclude vendor --exclude node_modules --exclude extensions",
+ "phpcs -p -s",
+ "minus-x check ."
+ ]
+ },
+ "extra": {
+ "phan-taint-check-plugin": "1.5.0"
}
}
diff --git a/MLEB/Babel/i18n/af.json b/MLEB/Babel/i18n/af.json
index d9f37fe5..086fc63b 100644
--- a/MLEB/Babel/i18n/af.json
+++ b/MLEB/Babel/i18n/af.json
@@ -4,17 +4,17 @@
"Arnobarnard",
"Naudefj",
"SPQRobin",
- "Winstonza"
+ "Winstonza",
+ "Fwolff"
]
},
"babel": "Babel-gebruikersinligting",
"babel-desc": "Voeg die <code>#babel</code>-ontlederfunksie by om outomatiese generasie van 'n babel-gebruikersboks moontlik te maak met die funksionaliteit om doelgemaakte sjablone in te plaas.",
"babel-url": "Project:Babel",
"babel-footer-url": ":Category:Babel - Gebruikers volgens taal",
- "babel-autocreate-abort": "Die gebruikersnaam wat u gespesifiseer het word gebruik vir die outomatiese skep van [[$1|Babel]]-kategorieë en kan nie geregistreer word nie.",
"babel-autocreate-reason": "[[$1|Babel]]-kategorie word outomaties geskep.",
"babel-autocreate-text-levels": "Gebruikers in hierdie kategorie dui aan dat hul vaardigheidsvlak vir die taal $2 $1 is.",
- "babel-autocreate-text-main": "Gebruikers in hierdie kategorie dui aan dat hulle kennis van die taal $1 het.",
+ "babel-autocreate-text-main": "Gebruikers in hierdie kategorie dui hul kennis van die taal $1 aan.",
"babel-0": "Hierdie gebruiker het [[$1|geen]] kennis van [[$2|$3]] nie (of verstaan dit met groot moeite).",
"babel-1": "Hierdie gebruiker het ’n [[$1|basiese]] kennis van [[$2|$3]].",
"babel-2": "Hierdie gebruiker het ’n [[$1|middelbare]] kennis van [[$2|$3]].",
@@ -29,5 +29,7 @@
"babel-4-n": "Hierdie gebruiker het kennis van [[$2|Afrikaans]] op [[$1|byna-moedertaalvlak]].",
"babel-5-n": "Hierdie gebruiker het [[$1|professionele]] kennis van [[$2|Afrikaans]].",
"babel-N-n": "Hierdie gebruiker het kennis van [[$2|Afrikaans]] op [[$1|moedertaalvlak]].",
- "babel-footer": "Gebruikers per taal"
+ "babel-footer": "Gebruikers per taal",
+ "apihelp-query+babel-description": "Kry inligting oor watter tale die gebruiker ken",
+ "apihelp-query+babel-summary": "Kry inligting oor watter tale die gebruiker ken"
}
diff --git a/MLEB/Babel/i18n/aln.json b/MLEB/Babel/i18n/aln.json
index b59a5fda..0ad70e87 100644
--- a/MLEB/Babel/i18n/aln.json
+++ b/MLEB/Babel/i18n/aln.json
@@ -1,13 +1,13 @@
{
"@metadata": {
"authors": [
- "Bresta"
+ "Bresta",
+ "Ammartivari"
]
},
"babel": "Informatat e përdoruesit në babel",
"babel-desc": "Shton funksionin interpretues <code>#babel</code> për m'e lejue gjenerimine kutisë babel të përdoruesit me mundësi të përfshimjes së shabllonave të përshtatun",
"babel-url": "Project:Babel",
- "babel-autocreate-abort": "Emni i përdoruesit që e keni dhânë âsht i përdorun në kategorinë [[$1|Babel]] vetë-krijo dhe nuk mundet me u regjistrue.",
"babel-autocreate-reason": "Tue krijue faqen e kategorisë në [[$1|Babel]]",
"babel-autocreate-text-levels": "Përdoruesit në këtë kategori bâjnë me dije se kanë njohuni të nivelit $1 të gjuhës $2.",
"babel-autocreate-text-main": "Përdoruesit në këtë kategori bâjnë me dije se kanë njohuni të gjuhës $1.",
@@ -19,7 +19,7 @@
"babel-5": "Ky përdorues ka njohuni [[$1|profesionale]] në [[$2|$3]].",
"babel-N": "Ky përdorues e kupton [[$2|$3]] si gjuhë [[$1|amtare]].",
"babel-0-n": "Ky përdorues [[$1|nuk ka]] njohuni në [[$2|Gegnisht]] (apo e kupton me shumë fshtirësi).",
- "babel-1-n": "Ky përdorues ka njohuni [[$1|bazike]] në [[$2|Gegnisht]].",
+ "babel-1-n": "Ky përdorues ka njohuni [[$1|themelore]] në [[$2|Gegnisht]].",
"babel-2-n": "Ky përdorues ka njohuni [[$1|mesatare]] në [[$2|Gegnisht]].",
"babel-3-n": "Ky përdorues ka njohuni [[$1|të përparueme]] në [[$2|Gegnisht]].",
"babel-4-n": "Ky përdorues ka njohuni [[$1|të afërta me nji folës amtar]] në [[$2|Gegnisht]].",
diff --git a/MLEB/Babel/i18n/am.json b/MLEB/Babel/i18n/am.json
index 2ec4a7c2..e59c172d 100644
--- a/MLEB/Babel/i18n/am.json
+++ b/MLEB/Babel/i18n/am.json
@@ -1,8 +1,16 @@
{
"@metadata": {
"authors": [
- "Purodha"
+ "Purodha",
+ "Elfalem",
+ "Liuxinyu970226"
]
},
- "babel-url": "Project:ልሳናት"
+ "babel-url": "Project:ልሳናት",
+ "babel-0": "{{GENDER:$4|ይህ|ይች}} አባል [[$2|$3]] [[$1|ምንም]] አይችሉም።",
+ "babel-1": "ይህ/ች አባል [[$1|በቀላል]] ደረጃ [[$2|$3]] ማቀነባበር ይችላሉ።",
+ "babel-2": "ይህ/ች አባል [[$1|በመካከለኛ]] ደረጃ [[$2|$3]] ማቀነባበር ይችላሉ።",
+ "babel-3": "ይህ/ች አባል [[$1|በከፍተኛ]] ደረጃ [[$2|$3]] ማቀነባበር ይችላሉ።",
+ "babel-4": "ይህ/ች አባል [[$2|$3]] የሚናገሩት [[$1|የልደት ቋንቋ ያህል]] ነው።",
+ "babel-N": "[[$2|$3]] የዚህ/ች አባል [[$1|ልደት ቋንቋ]] ነው።"
}
diff --git a/MLEB/Babel/i18n/an.json b/MLEB/Babel/i18n/an.json
index fa6389b9..23560390 100644
--- a/MLEB/Babel/i18n/an.json
+++ b/MLEB/Babel/i18n/an.json
@@ -8,7 +8,6 @@
"babel-desc": "Adibe a función <code>#babel</code> de parseyo ta premitir a cheneración automatica d'una colunna de caixas d'usuario de babel, con a posibilidat d'encluyir-ie plantillas personalizatas",
"babel-url": "Project:Babel",
"babel-footer-url": ":Category:Babel - Usuarios por idioma",
- "babel-autocreate-abort": "O nombre d'usuario especificau ye emplegau ta la creyación automatica de categorías [[$1|Babel]] y no se puede rechistrar.",
"babel-autocreate-reason": "Creyando automaticament a pachina de categoría [[$1|Babel]].",
"babel-autocreate-text-levels": "Os usuarios d'ista categoría declaran que tienen un ran de dominio $1 de l'idioma $2.",
"babel-autocreate-text-main": "Os usuarios en ista categoría declaran que tienen conoixencia de l'idioma $1.",
diff --git a/MLEB/Babel/i18n/anp.json b/MLEB/Babel/i18n/anp.json
index a8a6d5de..7e28b3aa 100644
--- a/MLEB/Babel/i18n/anp.json
+++ b/MLEB/Babel/i18n/anp.json
@@ -4,26 +4,26 @@
"Angpradesh"
]
},
- "babel": "बाबेल सदस्य ज़ानकारी",
- "babel-desc": "एगॊ सदस्य के बाबेल सदस्य-बक्सा अपने आप दै लेली उपयुक्त ऐसनॊ <code>#babel</code> पार्सर क्रिया बढाबै छै. जेकरा मॆ खुद बनैलॊ सदस्यबक्सा भी देलॊ जाबॆ सकॆ छै.",
+ "babel": "बाबेल यूजर ज़ानकारी",
+ "babel-desc": "एगऽ सदस्य केरऽ बाबेल सदस्य-बक्सा अपनय आप दै लेली उपयुक्त ऐसनऽ <code>#babel</code> पार्सर क्रिया बढाबै छै. जेकरा मं॑ खुद बनैलऽ सदस्यबक्सा भी देलॊ जाब॑ सकै छै.",
"babel-url": "Project:बाबेल",
"babel-footer-url": ":Category:बाबेल - भाषावार सदस्य",
- "babel-autocreate-abort": "आपनॆ द्वारा इंगित सदस्यनाम [[$1|Babel]] श्रेणी स्व-निर्माण लेली उपयोग मॆ छै आरू निबंधित नै करलॊ जाबॆ सकॆ छै.",
"babel-autocreate-reason": "स्वत: निर्मित [[$1|Babel]] श्रेणी पन्ना.",
- "babel-autocreate-text-levels": "इ श्रेणी केरॊ सदस्य दर्शाबै छै कि हुनकॊ निपुणता स्तर $1 छै $2 लेली.",
- "babel-autocreate-text-main": "इ श्रेणी केरॊ सदस्य दर्शाबै छै कि हुनका $1 भाषा के ज्ञान छै.",
- "babel-0": "इ सदस्य कॆ [[$1|नं.]] $1 ज्ञान छै [[$2|$3]] केरॊ (या एकरा बहुत कठिनाई सॆं समझै छै).",
- "babel-1": "इस सदस्य कॆ [[$2|$3]] केरॊ [[$1|प्राथमिक]] ज्ञान छै.",
- "babel-2": "इस सदस्य कॆ [[$2|$3]] केरॊ [[$1|मध्यम स्तर]] के ज्ञान छै.",
- "babel-3": "इस सदस्य कॆ [[$2|$3]] के [[$1|उच्च स्तर]] के ज्ञान छै.",
- "babel-4": "इस सदस्य कॆ [[$2|$3]] के [[$1|अति-उच्च स्तर]] के ज्ञान छै.",
- "babel-5": "इस सदस्य कॆ [[$2|$3]] के [[$1|व्यावसायिक स्तर]] के ज्ञान छै.",
- "babel-N": "इ सदस्य कॆ [[$2|$3]] के [[$1|स्थानिक स्तर]] के ज्ञान छै.",
- "babel-0-n": "इ सदस्य कॆ [[$2|अंगिका]] के ज्ञान [[$1|नै]] छै (या समझै लेली बहुत प्रयास करै लॆ पड़ै छै.)",
- "babel-1-n": "इ सदस्य कॆ [[$2|अंगिका]] के [[$1|प्राथमिक]] ज्ञान छै.",
- "babel-2-n": "इ सदस्य कॆ [[$2|अंगिका]] के [[$1|मध्यम स्तर]] के ज्ञान छै.",
- "babel-3-n": "इ सदस्य कॆ [[$2|अंगिका]] के [[$1|उच्च स्तर]] के ज्ञान छै.",
- "babel-4-n": "इस सदस्य कॆ [[$2|अगिका]] के [[$1|अति-उच्च स्तर]] के ज्ञान छै.",
+ "babel-autocreate-text-levels": "इ श्रेणी केरऽ सदस्य दर्शाबै छै कि हुनकऽ निपुणता स्तर $1 छै $2 लेली.",
+ "babel-autocreate-text-main": "इ श्रेणी केरऽ सदस्य दर्शाबै छै कि हुनका $1 भाषा के ज्ञान छै.",
+ "babel-0": "इ सदस्य क॑ [[$1|नं.]] $1 ज्ञान छै [[$2|$3]] केरऽ (या एकरा बड़ी कठिनाई सं॑ समझै छै).",
+ "babel-1": "इ सदस्य क॑ [[$2|$3]] केरऽ [[$1|प्राथमिक]] ज्ञान छै.",
+ "babel-2": "इ सदस्य क॑ [[$2|$3]] केरऽ [[$1|मध्यम स्तर]] के ज्ञान छै.",
+ "babel-3": "इ सदस्य क॑ [[$2|$3]] केरऽ [[$1|उच्च स्तर]] के ज्ञान छै.",
+ "babel-4": "इ सदस्य क॑ [[$2|$3]] केरऽ [[$1|अति-उच्च स्तर]] के ज्ञान छै.",
+ "babel-5": "इ सदस्य क॑ [[$2|$3]] केरऽ [[$1|व्यावसायिक स्तर]] के ज्ञान छै.",
+ "babel-N": "इ सदस्य क॑ [[$2|$3]] केरऽ [[$1|स्थानिक स्तर]] के ज्ञान छै.",
+ "babel-0-n": "इ सदस्य क॑ [[$2|अंगिका]] केरऽ ज्ञान [[$1|नै]] छै (या समझै लेली बहुत प्रयास करै ल॑ पड़ै छै.)",
+ "babel-1-n": "इ सदस्य क॑ [[$2|अंगिका]] केरऽ [[$1|प्राथमिक]] ज्ञान छै.",
+ "babel-2-n": "इ सदस्य क॑ [[$2|अंगिका]] केरऽ [[$1|मध्यम स्तर]] के ज्ञान छै.",
+ "babel-3-n": "इ सदस्य क॑ [[$2|अंगिका]] केरऽ [[$1|उच्च स्तर]] के ज्ञान छै.",
+ "babel-4-n": "इस सदस्य क॑ [[$2|अगिका]] केरऽ [[$1|अति-उच्च स्तर]] के ज्ञान छै.",
"babel-5-n": "इ सदस्य कॆ [[$2|अंगिका]] के [[$1|व्यावसायिक स्तर]] के ज्ञान छै.",
- "babel-N-n": "इ सदस्य कॆ [[$2|अंगिका]] के [[$1|स्थानिक स्तर]] के ज्ञान छै."
+ "babel-N-n": "इ सदस्य क॑ [[$2|अंगिका]] केरऽ [[$1|स्थानिक स्तर]] के ज्ञान छै.",
+ "babel-footer": "भाषा केरऽ अनुसार सदस्य"
}
diff --git a/MLEB/Babel/i18n/ar.json b/MLEB/Babel/i18n/ar.json
index 011cec90..26c7aa41 100644
--- a/MLEB/Babel/i18n/ar.json
+++ b/MLEB/Babel/i18n/ar.json
@@ -12,7 +12,6 @@
"babel-desc": "يضيف دالة المحلل <code>#babel</code> للسماح بالتوليد التلقائي لعامود صندوق بابل مع إمكانية تضمين قوالب أخرى",
"babel-url": "Project:بابل",
"babel-footer-url": ":Category:بابل - المستخدمون حسب اللغة",
- "babel-autocreate-abort": "اسم المستخدم الذي حددته مستخدم للإنشاء التلقائي لتصنيفات [[$1|بابل]] ولا يمكن تسجيله.",
"babel-autocreate-reason": "إنشاء صفحة تصنيف [[$1|بابل]] تلقائيا.",
"babel-autocreate-text-levels": "المستخدمون في هذا التصنيف مستوى مهارتهم $1 للغة $2.",
"babel-autocreate-text-main": "المستخدمون في هذا التصنيف لديهم معرفة باللغة $1.",
@@ -31,5 +30,9 @@
"babel-4-n": "{{GENDER:{{PAGENAME}}|هذا المستخدم لديه|هذه المستخدمة لديها}} معرفة [[$1|تقترب من مستوى اللغة الأم]] ب[[$2|العربية]].",
"babel-5-n": "{{GENDER:{{PAGENAME}}|هذا المستخدم لديه|هذه المستخدمة لديها}} معرفة [[$1|احترافية]] ب[[$2|العربية]].",
"babel-N-n": "{{GENDER:{{PAGENAME}}|هذا المستخدم|هذه المستخدمة}} [[$1|{{GENDER:{{PAGENAME}}|لغته|لغتها}} الأم]] هي [[$2|العربية]].",
- "babel-footer": "المستخدمون حسب اللغة"
+ "babel-footer": "المستخدمون حسب اللغة",
+ "apihelp-query+babel-description": "الحصول على معلومات حول اللغات التي يعرفها المستخدم",
+ "apihelp-query+babel-summary": "الحصول على معلومات حول اللغات التي يعرفها المستخدم.",
+ "apihelp-query+babel-param-user": "المستخدم المطلوب الحصول على المعلومات عنه",
+ "apihelp-query+babel-example-1": "الحصول على معلومات بابل للمستخدم <kbd>مثال</kbd>"
}
diff --git a/MLEB/Babel/i18n/arn.json b/MLEB/Babel/i18n/arn.json
index be9f8dd7..9d52e1df 100644
--- a/MLEB/Babel/i18n/arn.json
+++ b/MLEB/Babel/i18n/arn.json
@@ -9,7 +9,6 @@
"babel-desc": "Yomvmpe ti <code>#babel</code> gvnezuamvn kamañ ñi kisu pepi zewmawam kiñe Babel kvzawfe ñi columna de cuadro pepi nvrvftvkukelu kisu ñi plantilla",
"babel-url": "Project: Babel",
"babel-footer-url": ":Xokiñ:Babel - Kvzawfe zugun mew",
- "babel-autocreate-abort": "Tici kvzawfe vy tami zicolvn niegey [[$1|Babel]] xokiñ ñi kisu zewmawam, pepi cijkantvkugelay.",
"babel-autocreate-reason": "Kisu zewmaley [[$1|Babel]] xokiñ ñi aztapvl.",
"babel-autocreate-text-levels": "Kvzawkvlelu faci xokiñ mu feypi ñi kimniefiñ $1 pvrawe mew ti $2 cezugun mew",
"babel-autocreate-text-main": "Kvzawfe faci xokiñ mu feypi ñi kimniefi tici $1 cezugun",
diff --git a/MLEB/Babel/i18n/ary.json b/MLEB/Babel/i18n/ary.json
index efd2302a..be78c08d 100644
--- a/MLEB/Babel/i18n/ary.json
+++ b/MLEB/Babel/i18n/ary.json
@@ -8,7 +8,6 @@
"babel": "Meĝlomaṫ Babil ĝel l-mosṫeĥdim",
"babel-desc": "Zid l-fonksyon <code>#babel</code> baċ ṫṣayeb otomaṫikiyan sendoq Babil o ṫeĝmel fih modélaṫ maḫelliyin.",
"babel-url": "Project:Babel",
- "babel-autocreate-abort": "Smiyṫ l-mosṫeĥdim li deĥĥelṫi mosṫeĥdama le l-ĥṫiraĝ l-'otomaṫiki dyal l-katégoryaṫ [[$1|Babil]] o ma imkenlikċ ṫċejlo.",
"babel-autocreate-reason": "Ĥṫiraĝ otomaṫiki dyal l-katégori [[$1|Babel]].",
"babel-autocreate-text-levels": "L-mosṫeĥdimin li fe had n-noĝ ĝendhom mosṫawa $1 fe had l-loġa : $2.",
"babel-autocreate-text-main": "L-mosṫeĥdimin li fe had n-noĝ ĝendhom meĝrifa fe had l-loġa : $1.",
diff --git a/MLEB/Babel/i18n/arz.json b/MLEB/Babel/i18n/arz.json
index 7bd5cc6c..82871de2 100644
--- a/MLEB/Babel/i18n/arz.json
+++ b/MLEB/Babel/i18n/arz.json
@@ -9,7 +9,6 @@
"babel": "معلومات Babel بتاعة اليوزرات",
"babel-desc": "زوّد <code>#babel</code> علشان تسمح يإن يتعمل اوتوماتيكى علبة عامود بابل بإمكانية تزويد قوالب مخصوصه",
"babel-url": "Project:بابل",
- "babel-autocreate-abort": "اسم اليوزر اللى حددته مستعمل من [[$1|بابل]] علشان يعمل تصنيفات اوتوماتيكى و ما ينفعش يتسجل.",
"babel-autocreate-reason": "بيعمل صفحة تصنيف [[$1|بابل]] اوتوماتيكى.",
"babel-autocreate-text-levels": "اليوزرات فى التصنيف ده بيبيّنو ان مستواهم $1 فى اللغه $2.",
"babel-autocreate-text-main": "اليوزرات اللى فى التصنيف ده بيبيّنو ان عندهم معرفه باللغه $1.",
diff --git a/MLEB/Babel/i18n/as.json b/MLEB/Babel/i18n/as.json
index 6d68b382..42b37745 100644
--- a/MLEB/Babel/i18n/as.json
+++ b/MLEB/Babel/i18n/as.json
@@ -11,7 +11,6 @@
"babel-desc": "নিজৰ টেম্পলেটত স্বয়ংক্ৰিয় বাবেল ব্যবহাৰকাৰী বক্স যোগ কৰিবলৈ <code>#babel</code> পাৰ্চাৰ ফাংচন যোগ কৰক",
"babel-url": "Project:বাবেল",
"babel-footer-url": ":শ্ৰেণী:Babel - ভাষা অনুযায়ী ব্যৱহাৰকাৰী",
- "babel-autocreate-abort": "আপুনি উল্লেখ কৰা ব্যৱহাৰকাৰী নামটো (ইউজাৰনেম) [[$1|Babel]]ৰ স্বয়ংক্ৰিয় শ্ৰেণীকৰণ কৰিবলৈ ব্যৱহাৰ কৰা হৈছে আৰু পঞ্জীভূক্ত কৰিব পৰা নাযায় ।",
"babel-autocreate-reason": "স্বয়ংক্ৰিয়ভাৱে [[$1|বাবেল]] শ্ৰেণীৰ পৃষ্ঠা সৃষ্টি কৰা হৈছে।",
"babel-autocreate-text-levels": "এই শ্ৰেণীৰ ব্যৱহাৰকাৰীৰ $2 ভাষাৰ $1 পৰ্য্যায়ৰ জ্ঞান থকা সূচায় ।",
"babel-autocreate-text-main": "এই শ্ৰেণীত অন্তৰ্ভূক্ত সকলোবোৰ ব্যৱহাৰকাৰীৰে $1 ভাষাৰ জ্ঞান থকা সূচায় ।",
diff --git a/MLEB/Babel/i18n/ast.json b/MLEB/Babel/i18n/ast.json
index 4a4897fd..926c67f3 100644
--- a/MLEB/Babel/i18n/ast.json
+++ b/MLEB/Babel/i18n/ast.json
@@ -9,10 +9,9 @@
"babel-desc": "Añade la función d'análisis sintáuticu <code>#babel</code> pa permitir la xeneración automática d'una columna userbox babel cola capacidá d'incluyir plantíes al gustu d'ún",
"babel-url": "Project:Babel",
"babel-footer-url": ":Category:Babel - Usuarios por llingua",
- "babel-autocreate-abort": "L'usuariu que conseñasti s'usa pa la creación automática de la categoría [[$1|Babel]] y nun se pue rexistrar.",
"babel-autocreate-reason": "Creando automáticamente la páxina de la categoría [[$1|Babel]].",
"babel-autocreate-text-levels": "Los usuarios d'esta categoría indiquen que tienen un nivel de conocimientu $1 de la llingua $2.",
- "babel-autocreate-text-main": "Los usuarios d'esta categoría indiquen que tienen conocimientos de la llingua $1.",
+ "babel-autocreate-text-main": "Los usuarios d'esta categoría indiquen la so conocencia de la llingua $1.",
"babel-0": "{{GENDER:$4|Esti usuariu|Esta usuaria}} [[$1|nun]] tien conocimientos de [[$2|$3]] (o entiendelo con gran dificultá).",
"babel-1": "{{GENDER:$4|Esti usuariu|Esta usuaria}} tien un conocimientu [[$1|básicu]] de [[$2|$3]].",
"babel-2": "{{GENDER:$4|Esti usuariu|Esta usuaria}} tien un conocimientu [[$1|intermediu]] de [[$2|$3]].",
@@ -27,5 +26,9 @@
"babel-4-n": "{{GENDER:$4|Esti usuariu|Esta usuaria}} tien un conocimientu [[$1|cuasi nativu]] d'[[$2|asturianu]].",
"babel-5-n": "{{GENDER:$4|Esti usuariu|Esta usuaria}} tien un conocimientu [[$1|profesional]] d'[[$2|asturianu]].",
"babel-N-n": "{{GENDER:$4|Esti usuariu|Esta usuaria}} ye {{GENDER:$4|un|una}} falante [[$1|{{GENDER:$4|nativu|nativa}}]] d'[[$2|asturianu]].",
- "babel-footer": "Usuarios por llingua"
+ "babel-footer": "Usuarios por llingua",
+ "apihelp-query+babel-description": "Algamar información de les llingües que sabe l'usuariu",
+ "apihelp-query+babel-summary": "Ver información de les llingües que conoz l'usuariu",
+ "apihelp-query+babel-param-user": "Usuariu del que recibir información",
+ "apihelp-query+babel-example-1": "Algamar la información de Babel del usuariu <kbd>Exemplu</kbd>"
}
diff --git a/MLEB/Babel/i18n/avk.json b/MLEB/Babel/i18n/avk.json
index cc1874d0..a5e10ef4 100644
--- a/MLEB/Babel/i18n/avk.json
+++ b/MLEB/Babel/i18n/avk.json
@@ -9,7 +9,6 @@
"babel-desc": "Batcoba va <code>#babel</code> exulerafli loplekur ta mivaskafa gononasbara va Babel webesikborbriz do rotira va doplekura va ilkateza",
"babel-url": "Project:Babel",
"babel-footer-url": "Webesik kare ava",
- "babel-autocreate-abort": "Ruidan webesikyolt joke [[$1|Babel]] mivredurafa loma zo faver nume me zo vertokar.",
"babel-autocreate-reason": "Mivaskafa redura va [[$1|Babel]] lomabu.",
"babel-autocreate-text-levels": "Webesik ke bata loma bazed da tid $1 ekastinaf icde $2 ava.",
"babel-autocreate-text-main": "Webesik ke bata loma bazed da kan $1 ava grugoled.",
diff --git a/MLEB/Babel/i18n/awa.json b/MLEB/Babel/i18n/awa.json
index 53637c56..e214e3d1 100644
--- a/MLEB/Babel/i18n/awa.json
+++ b/MLEB/Babel/i18n/awa.json
@@ -8,7 +8,6 @@
"babel-desc": "बेबल सदस्य बक्सा कय कॉलम कय स्वचालित रूप से बनावो कय लिए <code>#babel</code> पार्सर फ़ंक्शन जोड़त है। एहमा विशिष्ट सदस्य बक्सा साँचा भी दई जाय सकत है।",
"babel-url": "Project:बेबल",
"babel-footer-url": ":Category:बेबल - भाषा कय आधार पे सदस्य",
- "babel-autocreate-abort": "आप कय द्वारा निर्दिष्ट सदस्यनावँ [[$1|बेबल]] द्वारा स्वचालित श्रेणी निर्माण कय लिए प्रयोग होत है अउर पंजीकृत नाई कई जाय सकत हय।",
"babel-autocreate-reason": "स्वचालित रूप से बनावल [[$1|बेबल]] श्रेणी पन्ना।",
"babel-autocreate-text-levels": "इ श्रेणी में श्रेणीबद्ध सदस्य लोग ई बताए हँय कि $2 भाषा में ओनकय कुशलता स्तर $1 है।",
"babel-autocreate-text-main": "इ श्रेणी में श्रेणीबद्ध सदस्य लोग ई बताए हँय कि ओन्हय $1 भाषा कय ज्ञान है।",
diff --git a/MLEB/Babel/i18n/ay.json b/MLEB/Babel/i18n/ay.json
index 6d9c7756..eb6a4d53 100644
--- a/MLEB/Babel/i18n/ay.json
+++ b/MLEB/Babel/i18n/ay.json
@@ -7,7 +7,6 @@
"babel": "Wawil apnaqirxata uñt'ayawi",
"babel-desc": "<code>#babel</code> arthapi suk'atat uñakipawi lurt'awix yapxatiwa, mäwawil apnaqirina llatatax uñacht'arawi turkatax apantachi q'aphawimpiwa achurpayachayiti luräni.",
"babel-url": "Project:Wawil",
- "babel-autocreate-abort": "Jumaxa apnaqirina sutima [[$1|Wawil]]-na patawi uñstayarachayawi mirq'ta jani qillqr'ayasiway.",
"babel-autocreate-reason": "[[$1|Wawil]]-na patawi uñstawi uñstayarachayaski.",
"babel-autocreate-text-levels": "Patawinax apnaqiripacha $1 q'aphawi $2 arutakiwa sistu.",
"babel-autocreate-text-main": "Patawinax apnaqiripacha $1 aru yatiniwa sistu.",
diff --git a/MLEB/Babel/i18n/azb.json b/MLEB/Babel/i18n/azb.json
index c449c7f7..14cc5f11 100644
--- a/MLEB/Babel/i18n/azb.json
+++ b/MLEB/Babel/i18n/azb.json
@@ -3,30 +3,31 @@
"authors": [
"Arjanizary",
"E THP",
- "Mousa"
+ "Mousa",
+ "Koroğlu",
+ "Alp Er Tunqa"
]
},
- "babel": "بابیل ایستیفاده‌چی بیلگیلری",
+ "babel": "بابیل ایشلدن بیلگی‌لری",
"babel-desc": "اؤزل شابلونلاری یئرلشدیرمه اؤزل‌لیگی اولان بابیل ایستیفاده‌چی قوتوسو سوتونون اوتوماتیک تؤرَنمه‌سی اوچون <code>#babel</code> آیریشدیران دستورونو آرتیرار",
"babel-url": "Project:بابیل",
"babel-footer-url": ":بؤلمه:بابیل - دیل‌لره گؤره ایستیفاده‌چیلر",
- "babel-autocreate-abort": "وئردیگیز ایستیفاده‌چی آدی [[$1|بابیل]] بؤلمه‌نین اوتوماتیک يارادیلماسی اوچون ایشلدیلیب‌دیر و یازدیریلا بیلمز.",
"babel-autocreate-reason": "اوتوماتیک [[$1|بابیل]] بؤلمه صحیفه‌سی یارادیلیر.",
"babel-autocreate-text-levels": "بو بؤلمه‌ده‌کی ایستیفاده‌چیلر $1 سَوییه‌ده $2 دیلینی بیلدیکلرینی گؤستریرلر.",
"babel-autocreate-text-main": "بو بؤلمه‌ده‌کی ایستیفاده‌چیلر $1 دیلینی بیلدیکلرینی گؤستریرلر.",
"babel-0": "بو ایستیفاده‌چی [[$1|هئچ]] [[$2|$3]] بیلمیر (یا دا چتین آنلاییر).",
- "babel-1": "بو ایستیفاده‌چی [[$1|آزاراق]] [[$2|$3]] بیلیر.",
+ "babel-1": "بو ایشلدن [[$1|آزاراق]] [[$2|$3]] بیلیر.",
"babel-2": "بو ایستیفاده‌چی [[$1|اورتا]] [[$2|$3]] بیلیر.",
"babel-3": "بو ایستیفاده‌چی [[$1|یاخشی]] [[$2|$3]] بیلیر.",
- "babel-4": "بو ایستیفاده‌چی [[$1|آنا دیلی کیمی]] [[$2|$3]] بیلیر.",
- "babel-5": "بو ایستیفاده‌چی [[$1|چوخ یاخشی]] [[$2|$3]] بیلیر.",
- "babel-N": "بو ایستیفاده‌چینین [[$1|آنادیلی]] [[$2|$3]]-دیر.",
+ "babel-4": "بو ایشلدن [[$1|آنا دیلی کیمی]] [[$2|$3]] بیلیر.",
+ "babel-5": "بو ایشلدن [[$1|چوخ یاخشی]] [[$2|$3]] بیلیر.",
+ "babel-N": "بو ایشلدنین [[$1|آنادیلی]] [[$2|$3]]-دیر.",
"babel-0-n": "بو ایستیفاده‌چی [[$1|هئچ]] [[$2|تورکجه]] بیلمیر (یا دا چتین آنلاییر).",
"babel-1-n": "بو ایستیفاده‌چی [[$1|آزاراق]] [[$2|تورکجه]] بیلیر.",
"babel-2-n": "بو ایستیفاده‌چی [[$1|اورتاجا]] [[$2|تورکجه]] بیلیر.",
"babel-3-n": "بو ایستیفاده‌چی [[$1|یاخشی]] [[$2|تورکجه]] بیلیر.",
"babel-4-n": "بو ایستیفاده‌چی [[$1|آنا دیلی کیمی]] [[$2|تورکجه]] بیلیر.",
"babel-5-n": "بو ایستیفاده‌چی [[$1|چوخ یاخشی]] [[$2|تورکجه]] بیلیر.",
- "babel-N-n": "بو ایستیفاده‌چینین [[$1|آنادیلی]] [[$2|تورکجه]]‌دیر.",
+ "babel-N-n": "بو ایشلدنین [[$1|آنادیلی]] [[$2|تورکجه]]‌دیر.",
"babel-footer": "دیل‌لره گؤره ایستیفاده‌چیلر"
}
diff --git a/MLEB/Babel/i18n/ba.json b/MLEB/Babel/i18n/ba.json
index af228ec8..41b86e0b 100644
--- a/MLEB/Babel/i18n/ba.json
+++ b/MLEB/Babel/i18n/ba.json
@@ -3,17 +3,17 @@
"authors": [
"Assele",
"Gleb Borisov",
- "Haqmar"
+ "Haqmar",
+ "Вильданова Гюзель"
]
},
"babel": "Ҡулланыусы телдәре (Вавилон)",
"babel-desc": "Телдәр тураһында мәғлүмәт менән, икенсе ҡалыптар өҫтәргә мөмкинлек биргән Вавилон бағанаһын булдырыусы <code>#babel</code> уҡыу ҡоралын өҫтәй.",
"babel-url": "Project:Вавилон",
"babel-footer-url": ":Category:Ҡатнашыусы телдәре",
- "babel-autocreate-abort": "Һеҙ һайлаған исем [[$1|Вавилон]] категорияларын булдырыу өсөн ҡулланыла һәм теркәлә алмай.",
"babel-autocreate-reason": "[[$1|Вавилон]] категорияһы битен булдырыу",
"babel-autocreate-text-levels": "Был категориялағы ҡатнашыусылар $2 телен $1 дәрәжәлә белеүен күрһәткән.",
- "babel-autocreate-text-main": "Был категориялағы ҡатнашыусылар $1 телен белеүен күрһәткән.",
+ "babel-autocreate-text-main": "Был төркөмдәге ҡатнашыусылар $1 телен белеүен күрһәткән.",
"babel-0": "Был ҡулланыусы [[$2|$3]] [[$1|белмәй]] (йәки бик насар аңлай).",
"babel-1": "Был ҡатнашыусының [[$2|$3]] белеме [[$1|башланғыс]] дәрәжәлә.",
"babel-2": "Был ҡатнашыусының [[$2|$3]] белеме [[$1|урта]] дәрәжәлә.",
diff --git a/MLEB/Babel/i18n/bar.json b/MLEB/Babel/i18n/bar.json
index 80bb7b19..f0740989 100644
--- a/MLEB/Babel/i18n/bar.json
+++ b/MLEB/Babel/i18n/bar.json
@@ -9,7 +9,6 @@
"babel-desc": "Ergänzd dé <code>#babel</code>-Parserfunkzión fyr d' automaatische Erstöung voh Babel-Benutzerboxen-Zeun mid da Méglichkeid, daas ma eigerne Vurlong eihbindt",
"babel-url": "Project:Babel",
"babel-footer-url": ":Category:Babel - Benutzer noch Sprooch",
- "babel-autocreate-abort": "Da ausgwöde Benutzernåm werd fyr d' automaatische Erstöung voh [[$1|Babel]]-Kategorien braucht. Désswéng kå a néd registrird wern.",
"babel-autocreate-reason": "Autómaatisch erstöde [[$1|Babel]]-Kategorie.",
"babel-autocreate-text-levels": "Benutzer in derer Kategorie håm Kenntniss in da Stufm $1 in da Sprooch $2.",
"babel-autocreate-text-main": "Benutzer in derer Kategorie håm Kenntniss voh da Sprooch $1.",
diff --git a/MLEB/Babel/i18n/bcc.json b/MLEB/Babel/i18n/bcc.json
index c5fede72..7fb5ea2e 100644
--- a/MLEB/Babel/i18n/bcc.json
+++ b/MLEB/Babel/i18n/bcc.json
@@ -10,7 +10,6 @@
"babel-desc": "اضافه کنت <code>#babel</code> عملگر وانوک په اجازه داتن په یک ستون جعبه کاربری گون توانایی اضافه کتن وتی تمپلتان",
"babel-url": "Project:بابل",
"babel-footer-url": ":Category:بابل - کار زوروکان گون زبانان",
- "babel-autocreate-abort": "نام کاربری که مالوم کتگیت پر وتکارین تیارکتن ردهٔ [[$1|بابل]] کارمرز بیتگ انت و نبیت که ثبت بیت.",
"babel-autocreate-reason": "وتکارین اڈکتن ردهٔ تاکء[[$1|بابل]].",
"babel-autocreate-text-levels": "ائ ردهء کاربران مان زبان $2 کارزانتی$1 دارنت.",
"babel-autocreate-text-main": "ائ ردهء کاربران زانشت چه زبان $1 رء دارنت.",
diff --git a/MLEB/Babel/i18n/bcl.json b/MLEB/Babel/i18n/bcl.json
index edfea6f4..c2f909fa 100644
--- a/MLEB/Babel/i18n/bcl.json
+++ b/MLEB/Babel/i18n/bcl.json
@@ -8,7 +8,6 @@
"babel-desc": "Nagdudugang nin <code>#babel</code> sa punksyon nin parabangay tanganing itugot an automatikadong henerasyon kan sarong babel na kahon nin paragamit na kolum na magkaigwa nin abilidad sa pagbali kan mga templatong kustombre",
"babel-url": "Project:Babel",
"babel-footer-url": ":Kategorya:Babel-Mga paragamit uyon sa lengguwahe",
- "babel-autocreate-abort": "An pangaran nin paragamit na saimong pinagsasambit pinaggagamit para sa [[$1|Babel]] na kategorya nin awtomatikong pagmumukna asin dae puwedeng mairehistro.",
"babel-autocreate-reason": "Automatikong maimumukna an [[$1|Babel]] na kategoryang pahina.",
"babel-autocreate-text-levels": "An mga paragamit sa kategoryang ini minapasabot na sinda igwal nin kakayanan na yaon sa grado $1 para sa lengguwaheng $2.",
"babel-autocreate-text-main": "Mga paragamit sa kategoryang ini minapasabot na sinda igwa nin kaaraman sa lengguwaheng $1.",
diff --git a/MLEB/Babel/i18n/be-tarask.json b/MLEB/Babel/i18n/be-tarask.json
index dcb1badd..8dd245c8 100644
--- a/MLEB/Babel/i18n/be-tarask.json
+++ b/MLEB/Babel/i18n/be-tarask.json
@@ -4,14 +4,14 @@
"EugeneZelenko",
"Jim-by",
"Wizardist",
- "Zedlik"
+ "Zedlik",
+ "Red Winged Duck"
]
},
"babel": "Мовы, якімі валодае {{GENDER:$1|ўдзельнік|ўдзельніца}}",
"babel-desc": "Дадае функцыю парсэра <code>#babel</code>, якая дазваляе аўтаматычна ствараць слупок з інфармацыяй пра мовы з магчымасьцю даданьня нестандартных шаблёнаў",
"babel-url": "Project:Бабілёнская вежа",
"babel-footer-url": ":Category:Бабілёнская вежа — удзельнікі па мовах",
- "babel-autocreate-abort": "Імя ўдзельніка, якое Вы пазначылі, выкарыстоўваецца для аўтаматычнага стварэньня катэгорыяў [[$1|Бабілёнскай вежы]] і ня можа быць зарэгістравана.",
"babel-autocreate-reason": "Аўтаматычнае стварэньне катэгорыі для [[$1|Бабілёнскай вежы]].",
"babel-autocreate-text-levels": "Удзельнікі з гэтай катэгорыі пазначылі ўзровень ведаў $1 для мовы $2.",
"babel-autocreate-text-main": "Удзельнікі ў гэтай катэгорыі пазначылі веданьне мовы $1.",
@@ -29,5 +29,9 @@
"babel-4-n": "{{GENDER:$4|Гэты ўдзельнік|Гэтая ўдзельніца}} ведае [[$2|беларускую мову]] амаль [[$1|як родную]].",
"babel-5-n": "{{GENDER:$4|Гэты ўдзельнік|Гэтая ўдзельніца}} ведае [[$2|беларускую мову]] на [[$1|прафэсійным]] узроўні.",
"babel-N-n": "[[$2|Беларуская мова]] — [[$1|родная мова]] {{GENDER:$4|гэтага ўдзельніка|гэтай ўдзельніцы}}.",
- "babel-footer": "Удзельнікі паводле мовы"
+ "babel-footer": "Удзельнікі паводле мовы",
+ "apihelp-query+babel-description": "Атрымаць зьвесткі, якімі мовамі валодае ўдзельнік",
+ "apihelp-query+babel-summary": "Атрымаць інфармацыю пра мовы, якія ведае ўдзельнік",
+ "apihelp-query+babel-param-user": "Удзельнік, пра якога атрымаць інфармацыю",
+ "apihelp-query+babel-example-1": "Атрымаць зьвесткі Бабілёнскай вежы для ўдзельніка <kbd>Example</kbd>"
}
diff --git a/MLEB/Babel/i18n/be.json b/MLEB/Babel/i18n/be.json
index 03df64be..89c4f154 100644
--- a/MLEB/Babel/i18n/be.json
+++ b/MLEB/Babel/i18n/be.json
@@ -4,14 +4,14 @@
"Yury Tarasievich",
"Тест",
"Хомелка",
- "Mikalai Udodau"
+ "Mikalai Udodau",
+ "Mechanizatar"
]
},
"babel": "Моўныя звесткі ўдзельніка",
"babel-desc": "Дадае парсеру здольнасць разбіраць <code>#babel</code> і аўтаматычна генераваць паласу юзербоксаў і ўлучаць свае шаблоны",
"babel-url": "Project:Babel",
"babel-footer-url": ":Category:Вавілонская вежа — удзельнікі паводле моў",
- "babel-autocreate-abort": "Указанае імя ўдзельніка выкарыстоўваецца для аўтаматычнага стварэння катэгорыі [[$1|Вавілонскай вежы]] і не можа быць зарэгістравана.",
"babel-autocreate-reason": "Аўтаматычнае стварэнне старонкі для катэгорыі [[$1|Вавілон]].",
"babel-autocreate-text-levels": "Удзельнікі ў гэтай катэгорыі паказначылі, што яны маюць навык ўзроўню $1 мовы $2.",
"babel-autocreate-text-main": "Карыстальнікі ў гэтай катэгорыі паказваюць, што яны валодаюць ведамі мовы $1.",
@@ -29,5 +29,8 @@
"babel-4-n": "Ведаю [[$2|беларускую]] мову [[$1|амаль як родную]].",
"babel-5-n": "Ведаю [[$2|беларускую]] мову [[$1|прафесійна]].",
"babel-N-n": "[[$2|Беларуская]] — [[$1|родная]] мова ўдзельніка.",
- "babel-footer": "Удзельнікі паводле моў"
+ "babel-footer": "Удзельнікі паводле моў",
+ "apihelp-query+babel-description": "Атрымаць звесткі пра тое, якімі мовамі валодае ўдзельнік",
+ "apihelp-query+babel-param-user": "Удзельнік, пра якога атрымаць інфармацыю",
+ "apihelp-query+babel-example-1": "Атрымаць інфармацыю пра валоданне моваў для ўдзельніка <kbd>Example</kbd>"
}
diff --git a/MLEB/Babel/i18n/bew.json b/MLEB/Babel/i18n/bew.json
index 1c0ea4c2..6ddd9f55 100644
--- a/MLEB/Babel/i18n/bew.json
+++ b/MLEB/Babel/i18n/bew.json
@@ -8,7 +8,6 @@
"babel-desc": "Nambahin fungsi parser <code>#babel</code> untuk nampilin kolom kotak penggune babel secare otomatis, dengan templat nyang bise diobah sesuei keinginan (custom)",
"babel-url": "Proyek:Babel",
"babel-footer-url": "Kategori:Babel - Penggune menurut bahase",
- "babel-autocreate-abort": "Name penggune nyang ente pilih udah dipake untuk ngebuat kategori otomatis [[$1|Babel]] dan kagak bise didaptarin",
"babel-autocreate-reason": "Secare otomatis nyiptain halaman kategori [[$1|Babel]].",
"babel-autocreate-text-levels": "Penggune di kategori eni nganggep die udah punye kemampuan tingkat $1 untuk bahase $2.",
"babel-autocreate-text-main": "Penggune di kategori eni nganggep die udah punye pengetahuan bahase $1",
diff --git a/MLEB/Babel/i18n/bg.json b/MLEB/Babel/i18n/bg.json
index f1ece771..5285dfaf 100644
--- a/MLEB/Babel/i18n/bg.json
+++ b/MLEB/Babel/i18n/bg.json
@@ -4,14 +4,14 @@
"DCLXVI",
"Spiritia",
"Vladimir Penov",
- "Петър Петров"
+ "Петър Петров",
+ "StanProg"
]
},
- "babel": "Вавилонски данни за потребителя",
+ "babel": "Информация за езиците на потребителите",
"babel-desc": "Прибавяне на парсерна функция <code>#babel</code>, която позволява автоматично създаване на вавилонски потребителски кутийки, а може също да включва и други потребителски шаблони",
"babel-url": "Project:Вавилон",
"babel-footer-url": ":Category:Вавилон – потребители по език",
- "babel-autocreate-abort": "Посоченото от вас потребителско име се използва за автоматично създаване на [[$1|вавилонски категории]] и не може да бъде регистрирано.",
"babel-autocreate-reason": "Автоматично създаване на [[$1|вавилонска категория]].",
"babel-autocreate-text-levels": "Потребителите в тази категория са посочили, че владеят $2 език на $1 ниво.",
"babel-autocreate-text-main": "Потребителите в тази категория са посочили, че имат познания по $1 език.",
diff --git a/MLEB/Babel/i18n/bgn.json b/MLEB/Babel/i18n/bgn.json
index b8f4dd20..96f0c420 100644
--- a/MLEB/Babel/i18n/bgn.json
+++ b/MLEB/Babel/i18n/bgn.json
@@ -1,9 +1,20 @@
{
"@metadata": {
"authors": [
- "Baloch Afghanistan"
+ "Baloch Afghanistan",
+ "Ibrahim khashrowdi"
]
},
+ "babel": "بابلئ کار زُوروکین مالومات",
"babel-url": "Project:بابل",
+ "babel-footer-url": ":Category:بابل - کار زُوروکان شه زبانئ روگا",
+ "babel-autocreate-reason": "[[$1|بابل]]ئ تهرِ تاکدیمئ اتوماتیکین جۆڑ کورتین.",
+ "babel-0": "ای کار زُورۆک [[$2|$3]]ێ زوبانا [[$1|نه زانت]] ( یا په سکي ئه زانت).",
+ "babel-1": "ای کار زُورۆک [[$2|$3]]ێ زوبانا بِه [[$1|ابتدائین]] رقما زانت.",
+ "babel-2": "ای کار زُورۆک [[$2|$3]]ێ زوبانا بِه [[$1|متوسطین]] رقما زانت.",
+ "babel-3": "ای کار زُورۆک [[$2|$3]]ێ زوبانا بِه [[$1|پیشرفته ئین]] رقما زانت.",
+ "babel-4": "ای کار زُورۆک [[$2|$3]]ێ زوبانا [[$1|نزینک بِه ماسین]] زبانئ رقما زانت.",
+ "babel-5": "ای کار زُورۆک [[$2|$3]]ێ زوبانا بِه [[$1|تخصصین]] رقما زانت.",
+ "babel-N": "ای کار زُورۆک [[$2|$3]]ێ زوبانا بِه [[$1|ماسین زبانئ]] رقما زانت.",
"babel-footer": "کار زوروکان بئ اساس زبان"
}
diff --git a/MLEB/Babel/i18n/bho.json b/MLEB/Babel/i18n/bho.json
index f88ee6e3..76fa9567 100644
--- a/MLEB/Babel/i18n/bho.json
+++ b/MLEB/Babel/i18n/bho.json
@@ -1,8 +1,12 @@
{
"@metadata": {
"authors": [
- "Ganesh"
+ "Ganesh",
+ "SatyamMishra"
]
},
- "babel": "बैबेल प्रयोगकर्ता जानकारी"
+ "babel": "बैबेल प्रयोगकर्ता जानकारी",
+ "babel-N": "एह प्रयोगकर्ता के [[$2|$3]] के [[$1|मूलभाषा]] के रूप में ज्ञान बाटे।",
+ "babel-N-n": "एह प्रयोगकर्ता के [[$2|भोजपुरी]] भाषा के [[$1|महतारी भाषा]] के रूप में ज्ञान बा।",
+ "babel-footer": "भाषा अनुसार प्रयोगकर्ता"
}
diff --git a/MLEB/Babel/i18n/bjn.json b/MLEB/Babel/i18n/bjn.json
index da24d3f8..743aa721 100644
--- a/MLEB/Babel/i18n/bjn.json
+++ b/MLEB/Babel/i18n/bjn.json
@@ -10,7 +10,6 @@
"babel-desc": "Manambahi pungsi parser <code>#babel</code> gasan mambulihakan paulahan sabuah kutak pamakai utumatis lawan kamampuan gasan mamakai citakan nang dikustomisasiakan",
"babel-url": "Pruyik:Babel",
"babel-footer-url": "Tumbung:Babel - Pamakai bapadal bahasa",
- "babel-autocreate-abort": "Ngaran pamakai Pian naya dipakai gasan tumbung utumatis [[$1|Babel]] wan kada kawa didaptarakan.",
"babel-autocreate-reason": "Utumatis maulah tumbung tungkaran [[$1|Babel]].",
"babel-autocreate-text-levels": "Pamakai dalam tumbung naya artinya sidin baisi kamampuan $1 gasan bahasa $2.",
"babel-autocreate-text-main": "Pamakai dalam tumbung naya artinya sidin baisi ilmu gasan bahasa $1.",
diff --git a/MLEB/Babel/i18n/bn.json b/MLEB/Babel/i18n/bn.json
index 24498e9b..7b396b33 100644
--- a/MLEB/Babel/i18n/bn.json
+++ b/MLEB/Babel/i18n/bn.json
@@ -2,15 +2,16 @@
"@metadata": {
"authors": [
"Bellayet",
- "RIPENDIL"
+ "RIPENDIL",
+ "Aftabuzzaman",
+ "আফতাবুজ্জামান"
]
},
"babel": "ব্যবহারকারীর বাবেল তথ্য",
"babel-desc": "নিজের করা টেম্পলেটে সয়ংক্রিয় বাবেল ব্যবহারকারী বাক্স কলাম যোগ করতে <code>#babel</code> পার্সার ফাংসন যোগ করুন",
"babel-url": "Project:বাবেল",
- "babel-footer-url": ":Category:Babel - ভাষা অনুযায়ী ব্যবহারকারী",
- "babel-autocreate-abort": "যে ব্যবহারকারী নামটি আপনি নির্দিষ্ট করেছেন তা [[$1|Babel]] শ্রেনীর স্বয়ংক্রিয়-সৃষ্টিতে ব্যবহৃত হয়েছে এবং নিবন্ধন করা সম্ভব হচ্ছে না।",
- "babel-autocreate-reason": "স্বয়ংক্রিয়ভাবে [[$1|Babel]] শ্রেনীর পৃষ্ঠাটি তৈরী হচ্ছে।",
+ "babel-footer-url": ":Category:বাবেল - ভাষা অনুযায়ী ব্যবহারকারী",
+ "babel-autocreate-reason": "স্বয়ংক্রিয়ভাবে [[$1|বাবেল]] শ্রেনীর পৃষ্ঠাটি তৈরী হচ্ছে।",
"babel-autocreate-text-levels": "এই শ্রেনীর ব্যবহারকারীরা নির্দেশ করে $2 ভাষার জন্য তাদের দক্ষতার ধাপ $1 ।",
"babel-autocreate-text-main": "এই শ্রেনীর ব্যবহারকারীরা নির্দেশ করে $1 ভাষার উপরে তাদের জ্ঞান রয়েছে।",
"babel-0": "এই ব্যবহারকারীর [[$2|$3]] এর উপর কোন ধারনা [[$1|নেই]] (অথবা তা কষ্ট সহকারে বুঝতে পারেন)।",
diff --git a/MLEB/Babel/i18n/bpy.json b/MLEB/Babel/i18n/bpy.json
index 02f49b26..1210f150 100644
--- a/MLEB/Babel/i18n/bpy.json
+++ b/MLEB/Babel/i18n/bpy.json
@@ -8,7 +8,6 @@
"babel-desc": "নিজর করা টেম্পলেটরমা সয়ংক্রিয় বাবেল আতাকুরার বাক্স কলামগত তিলকরানিত <code>#babel</code> পার্সার ফাংসন তিলকর",
"babel-url": "Project:বাবেল",
"babel-footer-url": ":Category:Babel - ঠারর মাতুঙে আতাকুরা",
- "babel-autocreate-abort": "যে আতাকুরার নাঙহান তি রেপকরিসত অহান [[$1|Babel]] থাকরমা আপ্পানে মিহিল বারো নিবন্ধন করানি সম্ভব নাইল।",
"babel-autocreate-reason": "আপ্পানে [[$1|Babel]] থাকর পাতাহান হঙিল।",
"babel-autocreate-text-levels": "এরে থাকর আতাকুরার হেইনিঙপাহান $2 ঠাররকা তানুর হেইনিঙর থাকহান $1।",
"babel-autocreate-text-main": "এরে থাকর আতাকুরারতা $1 ঠারহানর গজে জ্ঞানহান আসে।",
diff --git a/MLEB/Babel/i18n/br.json b/MLEB/Babel/i18n/br.json
index 72adcf0c..2756a336 100644
--- a/MLEB/Babel/i18n/br.json
+++ b/MLEB/Babel/i18n/br.json
@@ -9,10 +9,9 @@
"babel-desc": "Ouzhpennañ an arc'hwel parser <code>#babel</code> da c'henel ent emgefre ur voest implijer Babel a c'haller lakaat patromoù personelaet enni",
"babel-url": "Project:Babel",
"babel-footer-url": ":Rummad:Wikipedourien hervez o yezhoù",
- "babel-autocreate-abort": "Implijet eo an anv implijer merket ganeoc'h evit sevel ent emgefre rummadoù [[$1|Babel]]; setu, n'haller ket e enrollañ.",
"babel-autocreate-reason": "Krouidigezh emgefre ur bajenn eus ar rummad [[$1|Babel]].",
"babel-autocreate-text-levels": "Disklêriet o deus implijerien ar rummad-mañ mestroniañ al live $1 evit ar yezh $2.",
- "babel-autocreate-text-main": "Implijerien ar rummad-mañ a zisklêr kaout anaouedegezh eus ar yezh $1",
+ "babel-autocreate-text-main": "Implijerien ar rummad-mañ a zisklêr gouzout ar yezh $1",
"babel-0": "Ne oar an impljer-mañ [[$1|tamm]] [[$2|$3]] ebet (pe en deus mil boan o kompren anezhañ).",
"babel-1": "Ul live [[$2|brezhoneg]] [[$1|diazez]] zo gant an implijer-mañ.",
"babel-2": "Ul live [[$2|brezhoneg]] [[$1|etre]] zo gant an implijer-mañ.",
@@ -27,5 +26,8 @@
"babel-4-n": "[[$2|Brezhoneg]] a oar an implijer-mañ [[$1|evel pa vefe bet desket gantañ war barlenn e vamm]].",
"babel-5-n": "Ul live [[$2|Brezhoneg]] [[$1|a-vicher]] zo gant an implijer-mañ.",
"babel-N-n": "[[$1|A-vihanik]] e oar [[$2|brezhoneg]] an implijer-mañ.",
- "babel-footer": "Implijerien dre yezh"
+ "babel-footer": "Implijerien dre yezh",
+ "apihelp-query+babel-description": "Gouzout peseurt yezhoù a oar an implijer",
+ "apihelp-query+babel-param-user": "Implijer da gaout titouroù diwar e benn",
+ "apihelp-query+babel-example-1": "Gouzout an titouroù Babel evit an implijer <kbd>Example</kbd>"
}
diff --git a/MLEB/Babel/i18n/bs.json b/MLEB/Babel/i18n/bs.json
index b7d58136..071114cc 100644
--- a/MLEB/Babel/i18n/bs.json
+++ b/MLEB/Babel/i18n/bs.json
@@ -2,17 +2,17 @@
"@metadata": {
"authors": [
"CERminator",
- "Palapa"
+ "Palapa",
+ "Srdjan m"
]
},
"babel": "Babel korisničke informacije",
"babel-desc": "Dodaje <code>#babel</code> parsersku funkciju koja omogućava automatsko pravljenje babel korisničke kutije u stupcu sa mogućnostima uključivanja prilagođenih šablona",
"babel-url": "Project:Babel",
"babel-footer-url": ":Category:Babel - Korisnici po jeziku",
- "babel-autocreate-abort": "Korisničko ime koje ste naveli se koristi za automatsko pravljenje [[$1|Babel]] kategorija i ne može biti registrovano.",
"babel-autocreate-reason": "Automatski napravljena stranica [[$1|Babel]] kategorije.",
"babel-autocreate-text-levels": "Korisnici u ovoj kategoriji su naveli da imaju nivo $1 znanja $2 jezika.",
- "babel-autocreate-text-main": "Korisnici u ovoj kategoriji su označeni da imaju znanje $1 jezika.",
+ "babel-autocreate-text-main": "Korisnici u ovoj kategoriji naznačili su da znaju $1 jezik.",
"babel-0": "Ovaj korisnik [[$1|ne]] govori [[$2|$3]] (ili ga razumije sa velikim poteškoćama).",
"babel-1": "Ovaj korisnik ima [[$1|osnovno]] poznavanje [[$2|$3]] jezika.",
"babel-2": "Ovaj korisnik [[$1|dobro]] poznaje [[$2|$3]].",
@@ -26,6 +26,6 @@
"babel-3-n": "Ovaj korisnik ima [[$1|napredno]] znanje [[$2|bosanskog jezika]].",
"babel-4-n": "Ovaj korisnik ima [[$1|odlično]] znanje [[$2|bosanskog jezika]].",
"babel-5-n": "Ovaj korisnik ima [[$1|profesionalno]] znanje [[$2|bosanskog jezika]].",
- "babel-N-n": "Ovaj korisnik ima znanje [[$2|bosanskog]] na nivou [[$1|maternjeg jezika]].",
+ "babel-N-n": "{{GENDER:$4|Ovom korisniku|Ovoj korisnici}} [[$2|bosanski]] je [[$1|maternji jezik]].",
"babel-footer": "Korisnici po jezicima"
}
diff --git a/MLEB/Babel/i18n/ca.json b/MLEB/Babel/i18n/ca.json
index c33b5c84..fa294a0d 100644
--- a/MLEB/Babel/i18n/ca.json
+++ b/MLEB/Babel/i18n/ca.json
@@ -4,17 +4,18 @@
"Aleator",
"SMP",
"Toniher",
- "Vriullop"
+ "Vriullop",
+ "Fitoschido",
+ "Ssola"
]
},
"babel": "Informació Babel de {{GENDER:$1|l'usuari|la usuària}}",
"babel-desc": "Afegeix la funció d'anàlisi <code>#babel</code> per a permetre la generació automàtica d'una columna babel de quadres d'usuari amb l'habilitat d'incloure plantilles personalitzades.",
"babel-url": "Project:Babel",
"babel-footer-url": ":Category:Usuaris per idioma",
- "babel-autocreate-abort": "El nom d'usuari especificat s'utilitza per a la creació automàtica de categories [[$1|Babel]].",
- "babel-autocreate-reason": "Creant automàticament la categoria de [[$1|Babel]].",
+ "babel-autocreate-reason": "Creació automàtica de la categoria de [[$1|Babel]].",
"babel-autocreate-text-levels": "Els usuaris d'aquesta categoria indiquen que tenen un nivell $1 per l'idioma $2.",
- "babel-autocreate-text-main": "Els usuaris d'aquesta categoria indiquen que tenen coneixements de l'idioma $1.",
+ "babel-autocreate-text-main": "Els usuaris d'aquesta categoria indiquen el seu coneixement de l'idioma $1.",
"babel-0": "{{GENDER:$4|Aquest usuari|Aquesta usuària}} [[$1|no té]] cap coneixement de l'idioma [[$2|$3]] (o bé l'entén amb moltes dificultats).",
"babel-1": "{{GENDER:$4|Aquest usuari|Aquesta usuària}} té un coneixement [[$1|bàsic]] de l'idioma [[$2|$3]].",
"babel-2": "{{GENDER:$4|Aquest usuari|Aquesta usuària}} té un coneixement [[$1|mitjà]] de l'idioma [[$2|$3]].",
@@ -29,5 +30,9 @@
"babel-4-n": "{{GENDER:$4|Aquest usuari|Aquesta usuària}} té un coneixement [[$1|gairebé natiu]] de [[$2|català]].",
"babel-5-n": "{{GENDER:$4|Aquest usuari|Aquesta usuària}} té coneixement [[$1|professional]] de la llengua [[$2|catalana]].",
"babel-N-n": "{{GENDER:$4|Aquest usuari és un|Aquesta usuària és una}} parlant [[$1|{{GENDER:$4|natiu|nativa}}]] de [[$2|català]].",
- "babel-footer": "Usuaris per idioma"
+ "babel-footer": "Usuaris per idioma",
+ "apihelp-query+babel-description": "Obtenció d'informació sobre les llengües que l'usuari coneix",
+ "apihelp-query+babel-summary": "Obté informació sobre les llengües que l'usuari coneix",
+ "apihelp-query+babel-param-user": "Usuari del qual obtenir informació",
+ "apihelp-query+babel-example-1": "Obtenir la informació Babel per a l'usuari <kbd>Example</kbd>"
}
diff --git a/MLEB/Babel/i18n/cdo.json b/MLEB/Babel/i18n/cdo.json
index 29443c7d..8dce16f9 100644
--- a/MLEB/Babel/i18n/cdo.json
+++ b/MLEB/Babel/i18n/cdo.json
@@ -9,7 +9,6 @@
"babel-desc": "添加<code>#babel</code>解析器功能,來支持自動形成蜀萆用戶框,固加會使包括自定義模板。",
"babel-url": "Project:用戶信息",
"babel-footer-url": ":類別:用戶信息——用戶使語言分類",
- "babel-autocreate-abort": "汝指定其用戶名已經廮[[$1|用戶信息]]類別自動生成器𡅏敆𡅏使,故此𣍐來註冊茲蜀萆用戶名。",
"babel-autocreate-reason": "自動創建[[$1|用戶信息]]類別頁面。",
"babel-autocreate-text-levels": "敆茲蜀萆分類下底其用戶表示伊各儂對$2語言都有$1其水平。",
"babel-autocreate-text-main": "敆茲蜀萆分類下底其用戶表示伊各儂對$1語言都會會意仂囝。",
diff --git a/MLEB/Babel/i18n/ce.json b/MLEB/Babel/i18n/ce.json
index 2281f150..0d3e89bd 100644
--- a/MLEB/Babel/i18n/ce.json
+++ b/MLEB/Babel/i18n/ce.json
@@ -3,19 +3,21 @@
"authors": [
"Purodha",
"Sasan700",
- "Умар"
+ "Умар",
+ "Исмаил Садуев"
]
},
"babel": "Декъашхошна хууш болу меттанийн хаам",
"babel-desc": "ТӀетуху функци <code>#babel</code>, оцу автоматически кхуллу блок декъашхошна хууш болу меттанаш билгалбеш кхин кепаш юкъа тоха йиш йолуш.",
"babel-url": "Project:Вавилон",
"babel-footer-url": ":Category:{{ns:Project}}:Декъашхой метташца",
+ "babel-autocreate-text-main": "ХӀокху категори чура декъашхошна хууш бу «$1» мотт.",
"babel-0-n": "Хlокху декъашхочуна [[$2|Нохчйин мотт]] [[$1|хууш бац]].",
- "babel-1-n": "Хlокху декъашхочо [[$1|кlеззиг]] буьйцу хьан [[$2|Нохчийн мотт]].",
+ "babel-1-n": "ХӀокху декъашхочо [[$1|кӀеззиг]] буьйцу хьан [[$2|Нохчийн мотт]].",
"babel-2-n": "Хlокху декъашхочо [[$1|къамеляхь]] буьйцу хьан [[$2|Нохчийн мотт]].",
- "babel-3-n": "Хlокху декъашхочо [[$1|дика]] буьйцу хьан [[$2|Нохчийн мотт]].",
- "babel-4-n": "Хlокху декъашхочо [[$2|Нохчийн мотт]] ше [[$1|нена]] мотт санна буьйцу.",
- "babel-5-n": "Хlокху декъашхочо [[$1|чlогlа дика]] буьйцу хьан [[$2|Нохчийн мотт]].",
- "babel-N-n": "Хlокху декъашхочо [[$1|шейра]] буьйцу шай [[$2|Нохчийн]] мотт.",
+ "babel-3-n": "{{GENDER:$4|ХӀокху декъашхочо}} [[$1|шера]] буьйцу [[$2|нохчийн мотт]].",
+ "babel-4-n": "ХӀокху декъашхочо [[$2|нохчийн мотт]] шен [[$1|ненан]] мотт санна буьйцу.",
+ "babel-5-n": "{{GENDER:$4|ХIокху декъашхочо}} [[$1|чIогIа говза]] буьйцу [[$2|нохчийн мотт]].",
+ "babel-N-n": "[[$2|Нохчийн мотт]] {{GENDER:$4|хIокху декъашхочуьнан}} [[$1|ненан мотт]] бу.",
"babel-footer": "Декъашхой метташца"
}
diff --git a/MLEB/Babel/i18n/ckb.json b/MLEB/Babel/i18n/ckb.json
index 98ba26f9..147b6e21 100644
--- a/MLEB/Babel/i18n/ckb.json
+++ b/MLEB/Babel/i18n/ckb.json
@@ -11,7 +11,6 @@
"babel-desc": "کرداری شیکەری <code>#babel</code> زیاد دەکات بۆ ڕێگا دان بە خۆکار دروست بوونی ستوونی سندوقی بەکارھێنەری بابل لەگەڵ توانایی بۆ لەخۆ گرتنی داڕێژە دڵخوازەکان",
"babel-url": "Project:بابل",
"babel-footer-url": ":Category:بابل - بەکارھێنەران بەپێی زمان",
- "babel-autocreate-abort": "ناوی بەکارھێنەرییەک کە دەستنیشانتکردووە بۆ دروستکردنی خۆکار پۆلی [[$1|بابل]] بەکارھێنراوە و تۆمار ناکرێ.",
"babel-autocreate-reason": "دروستکردنی خۆکاری پەڕەی پۆلی [[$1|بابل]].",
"babel-autocreate-text-levels": "بەکارھێنەران لەم پۆلەدا توانایییان لە زمانی $2 دا لە ئاستی $1 دایە.",
"babel-autocreate-text-main": "بەکارھێنەران لەم پۆلەدا ئاگادارییان لە زمانی $1 دا ھەیە.",
@@ -19,15 +18,15 @@
"babel-1": "ئەم بەکارھێنەرە زانینێکی [[$1|سەرەتایی]] لە [[$2|$3]]دا ھەیە.",
"babel-2": "ئەم بەکارھێنەرە زانینێکی [[$1|ناوەنجی]] لە [[$2|$3]]دا ھەیە.",
"babel-3": "ئەم بەکارھێنەرە زانینێکی [[$1|پێشکەوتوو]]ی لە [[$2|$3]]دا ھەیە.",
- "babel-4": "ئەم بەکارھێنەرە لە ئاستێکی [[$1|نزیک بە زمانی دایکی]] [[$2|$3]] دەزانێت.",
+ "babel-4": "ئەم بەکارھێنەرە [[$1|وەک زمانی دایکی]] [[$2|$3]] دەزانێت.",
"babel-5": "ئەم بەکارھێنەرە لە ئاستێکی [[$1|پیشەیی]]دا [[$2|$3]] دەزانێت.",
- "babel-N": "ئەم بەکارھێنەرە وەک [[$1|زمانی دایکی]] لە [[$2|$3]] تێدەگات.",
- "babel-0-n": "ئەم بەکارھێنەرە [[$2|کوردی (ناوەندی)]] [[$1|نازانێ]] (یان زۆر بەدژواری تێدەگات).",
- "babel-1-n": "ئەم بەکارھێنەرە زانینێکی [[$1|سەرەتایی]] لە [[$2|کوردی (سۆرانی)]]دا ھەیە.",
- "babel-2-n": "ئەم بەکارھێنەرە زانینێکی [[$1|ناوەنجی]] لە [[$2|کوردی (سۆرانی)]]دا ھەیە.",
- "babel-3-n": "ئەم بەکارھێنەرە زانینێکی [[$1|پێشکەوتوو]]ی لە [[$2|کوردی (سۆرانی)]]دا ھەیە.",
- "babel-4-n": "ئەم بەکارھێنەرە لە ئاستێکی [[$1|نزیک بە زمانی دایکی]] [[$2|کوردی (سۆرانی)]] دەزانێت.",
- "babel-5-n": "ئەم بەکارھێنەرە ئاگادارییەکی [[$1|پیشەیی]]ی لە [[$2|کوردی (سۆرانی)]] ھەیە.",
- "babel-N-n": "ئەم بەکارھێنەرە وەک [[$1|زمانی دایکی]] لە [[$2|کوردی (سۆرانی)]] تێدەگات.",
+ "babel-N": "[[$2|$3]] [[$1|زمانی دایکی]]ی ئەم بەکارھێنەرەیە.",
+ "babel-0-n": "ئەم بەکارھێنەرە ھیچ لە [[$2|کوردیی ناوەندی]] [[$1|نازانێت]] (یان زۆر بەدژواری تێدەگات).",
+ "babel-1-n": "ئەم بەکارھێنەرە زانینێکی [[$1|سەرەتایی]]ی لە [[$2|کوردیی ناوەندی]]دا ھەیە.",
+ "babel-2-n": "ئەم بەکارھێنەرە زانینێکی [[$1|ناوەنجی]] لە [[$2|کوردیی ناوەندی]]دا ھەیە.",
+ "babel-3-n": "ئەم بەکارھێنەرە زانینێکی [[$1|پێشکەوتوو]]ی لە [[$2|کوردیی ناوەندی]]دا ھەیە.",
+ "babel-4-n": "ئەم بەکارھێنەرە [[$1|وەک زمانی دایکی]] [[$2|کوردیی ناوەندی]] دەزانێت.",
+ "babel-5-n": "ئەم بەکارھێنەرە ئاگادارییەکی [[$1|پیشەیی]]ی لە [[$2|کوردیی ناوەندی]]دا ھەیە.",
+ "babel-N-n": "[[$2|کوردیی ناوەندی]] [[$1|زمانی دایکی]] ئەم بەکارھێنەرەیە.",
"babel-footer": "بەکارهێنەران بەپێی زمان"
}
diff --git a/MLEB/Babel/i18n/cps.json b/MLEB/Babel/i18n/cps.json
index 7e47466d..7baf8de0 100644
--- a/MLEB/Babel/i18n/cps.json
+++ b/MLEB/Babel/i18n/cps.json
@@ -8,7 +8,6 @@
"babel": "Inpormasyon sa naga usar sang Babel",
"babel-desc": "Ginadugang ang <code>#babel</code> paggana parser para mapasugtan ang automated generation sang kahon sang manug-usar sang Babel sa kolum nga may abilidad sa pag-upod sang mga kostumbre nga templeyt",
"babel-url": "Project:Babel",
- "babel-autocreate-abort": "Ang hayo (username) nga imo gina-klaro ginagamit para sa [[$1|Babel]] auto-himo nga kategorya kag indi ni pwede marehistro.",
"babel-autocreate-reason": "Automatiko nga ginahimo ang [[$1|Babel]] nga pahina kategorya.",
"babel-autocreate-text-levels": "Ang mga naga-usar sa mini nga kategorya nagapakita nga may ara sila kasarang lebel $1 para sa lenggwahe nga $2.",
"babel-autocreate-text-main": "Mga user sa mini nga kategorya nagapakita nga may-ara sila ka-alam lebel $1.",
diff --git a/MLEB/Babel/i18n/crh.json b/MLEB/Babel/i18n/crh.json
index e1d67d75..0e1df8db 100644
--- a/MLEB/Babel/i18n/crh.json
+++ b/MLEB/Babel/i18n/crh.json
@@ -1,14 +1,14 @@
{
- "@metadata": {
- "authors": [
- "Don Alessandro"
- ]
- },
- "babel-0": "Bu qullanıcı [[$2|Qırımtatar tili]]ni [[$1|iç bilmey]].",
- "babel-1": "Bu qullanıcı [[$2|Qırımtatar tili]]ni [[$1|başlanğıç seviyede]] bile.",
- "babel-2": "Bu qullanıcı [[$2|Qırımtatar tili]]ni [[$1|orta seviyede]] bile.",
- "babel-3": "Bu qullanıcı [[$2|Qırımtatar tili]]ni [[$1|yahşı]] bile.",
- "babel-4": "Bu qullanıcı [[$2|Qırımtatar tili]]ni [[$1|ana tili kibi]] bile.",
- "babel-5": "Bu qullanıcı [[$2|Qırımtatar tili]]ni [[$1|ihtisasiy seviyede]] bile.",
- "babel-N": "Bu qullanıcınıñ [[$1|ana tili]] [[$2|Qırımtatar tili]]dir."
+ "@metadata": {
+ "authors": [
+ "Don Alessandro"
+ ]
+ },
+ "babel-0": "Bu qullanıcı [[$2|Qırımtatar tili]]ni [[$1|iç bilmey]].",
+ "babel-1": "Bu qullanıcı [[$2|Qırımtatar tili]]ni [[$1|başlanğıç seviyede]] bile.",
+ "babel-2": "Bu qullanıcı [[$2|Qırımtatar tili]]ni [[$1|orta seviyede]] bile.",
+ "babel-3": "Bu qullanıcı [[$2|Qırımtatar tili]]ni [[$1|yahşı]] bile.",
+ "babel-4": "Bu qullanıcı [[$2|Qırımtatar tili]]ni [[$1|ana tili kibi]] bile.",
+ "babel-5": "Bu qullanıcı [[$2|Qırımtatar tili]]ni [[$1|ihtisasiy seviyede]] bile.",
+ "babel-N": "Bu qullanıcınıñ [[$1|ana tili]] [[$2|Qırımtatar tili]]dir."
} \ No newline at end of file
diff --git a/MLEB/Babel/i18n/cs.json b/MLEB/Babel/i18n/cs.json
index 505e21ea..a253239a 100644
--- a/MLEB/Babel/i18n/cs.json
+++ b/MLEB/Babel/i18n/cs.json
@@ -7,30 +7,32 @@
"Littledogboy",
"Matěj Grabovský",
"Mormegil",
- "Mr. Richard Bolla"
+ "Mr. Richard Bolla",
+ "Matěj Suchánek",
+ "Clon"
]
},
- "babel": "Babel – jazykové znalosti {{GENDER:$1|uživatele|uživatelky|uživatele}}",
+ "babel": "Babylon – informace o&nbsp;{{GENDER:$1|uživateli|uživatelce|uživateli}}",
"babel-desc": "Přidává funkci <code><nowiki>{{#babel:}}</nowiki></code>, umožňující automatickou tvorbu rámečku s informacemi o jazykových schopnostech uživatele s možností používat vlastní šablony.",
"babel-url": "Project:Babylon",
- "babel-footer-url": ":Kategorie:Babylón – Uživatelé podle jazyka",
- "babel-autocreate-abort": "Vámi uvedené uživatelské jméno se používá pro automatické zakládání kategorií pro [[$1|Babel]] a nelze si ho registrovat.",
- "babel-autocreate-reason": "Automatické založení stránky kategorie pro [[$1|Babel]]",
+ "babel-footer-url": ":Kategorie:Babylon – Uživatelé podle jazyka",
+ "babel-autocreate-reason": "Automatické založení stránky kategorie pro [[$1|Babylon]]",
"babel-autocreate-text-levels": "Uživatelé v této kategorii označili svou úroveň znalostí jazyka $2 jako $1.",
- "babel-autocreate-text-main": "Uživatelé v této kategorii prohlásili, že mají jisté znalosti jazyka $1.",
+ "babel-autocreate-text-main": "Uživatelé v této kategorii se přihlásili ke znalosti jazyka $1.",
"babel-0": "{{GENDER:$4|Tento uživatel|Tato uživatelka|Tento uživatel}} [[$1|nerozumí]] [[$2|$3]] (nebo rozumí se značnými problémy).",
- "babel-1": "Tento uživatel má [[$1|základní]] znalosti [[$2|{{GRAMMAR:2sg|$3}}]].",
- "babel-2": "Tento uživatel má znalosti [[$2|{{GRAMMAR:2sg|$3}}]] na [[$1|středně pokročilé]] úrovni.",
- "babel-3": "Tento uživatel má znalosti [[$2|{{GRAMMAR:2sg|$3}}]] na [[$1|pokročilé]] úrovni.",
- "babel-4": "Tento uživatel má znalosti [[$2|{{GRAMMAR:2sg|$3}}]] srovnatelné s [[$1|rodilým mluvčím]].",
- "babel-5": "Tento uživatel má znalosti [[$2|{{GRAMMAR:2sg|$3}}]] na [[$1|profesionální]] úrovni.",
- "babel-N": "Tento uživatel je [[$1|rodilý]] mluvčí [[$2|$3]].",
- "babel-0-n": "Tento uživatel [[$1|nerozumí]] [[$2|česky]] (nebo rozumí se značnými problémy).",
- "babel-1-n": "Tento uživatel má [[$1|základní]] znalosti [[$2|češtiny]].",
- "babel-2-n": "Tento uživatel má [[$1|střední]] znalosti [[$2|češtiny]].",
- "babel-3-n": "Tento uživatel má [[$1|pokročilé]] znalosti [[$2|češtiny]].",
- "babel-4-n": "Tento uživatel má znalosti [[$2|češtiny]] [[$1|téměř na úrovni rodilého mluvčího]].",
- "babel-5-n": "Tento uživatel má [[$1|profesionální]] znalosti [[$2|češtiny]].",
- "babel-N-n": "Tento uživatel je [[$1|rodilý mluvčí]] [[$2|češtiny]].",
- "babel-footer": "Uživatelé podle jazyka"
+ "babel-1": "{{GENDER:$4|Tento uživatel|Tato uživatelka}} má [[$1|základní]] znalosti [[$2|{{GRAMMAR:2sg|$3}}]].",
+ "babel-2": "{{GENDER:$4|Tento uživatel|Tato uživatelka}} má znalosti [[$2|{{GRAMMAR:2sg|$3}}]] na [[$1|středně pokročilé]] úrovni.",
+ "babel-3": "{{GENDER:$4|Tento uživatel|Tato uživatelka}} má znalosti [[$2|{{GRAMMAR:2sg|$3}}]] na [[$1|pokročilé]] úrovni.",
+ "babel-4": "{{GENDER:$4|Tento uživatel|Tato uživatelka}} má znalosti [[$2|{{GRAMMAR:2sg|$3}}]] srovnatelné s [[$1|rodilým mluvčím]].",
+ "babel-5": "{{GENDER:$4|Tento uživatel|Tato uživatelka}} má znalosti [[$2|{{GRAMMAR:2sg|$3}}]] na [[$1|profesionální]] úrovni.",
+ "babel-N": "{{GENDER:$4|Tento uživatel je [[$1|rodilý]]|Tato uživatelka je [[$1|rodilá]]}} mluvčí [[$2|$3]].",
+ "babel-0-n": "{{GENDER:$4|Tento uživatel|Tato uživatelka}} [[$1|nerozumí]] [[$2|česky]] (nebo rozumí se značnými problémy).",
+ "babel-1-n": "{{GENDER:$4|Tento uživatel|Tato uživatelka}} má [[$1|základní]] znalosti [[$2|češtiny]].",
+ "babel-2-n": "{{GENDER:$4|Tento uživatel|Tato uživatelka}} má [[$1|střední]] znalosti [[$2|češtiny]].",
+ "babel-3-n": "{{GENDER:$4|Tento uživatel|Tato uživatelka}} má [[$1|pokročilé]] znalosti [[$2|češtiny]].",
+ "babel-4-n": "{{GENDER:$4|Tento uživatel|Tato uživatelka}} má znalosti [[$2|češtiny]] [[$1|téměř na úrovni rodilého mluvčího]].",
+ "babel-5-n": "{{GENDER:$4|Tento uživatel|Tato uživatelka}} má [[$1|profesionální]] znalosti [[$2|češtiny]].",
+ "babel-N-n": "{{GENDER:$4|Tento uživatel|Tato uživatelka}} je [[$1|{{GENDER:$4|rodilý|rodilá}} mluvčí]] [[$2|češtiny]].",
+ "babel-footer": "Uživatelé podle jazyka",
+ "apihelp-query+babel-description": "Získat informace o tom, jaké jazyky uživatel zná"
}
diff --git a/MLEB/Babel/i18n/csb.json b/MLEB/Babel/i18n/csb.json
index 2e71aa83..d7f48bbf 100644
--- a/MLEB/Babel/i18n/csb.json
+++ b/MLEB/Babel/i18n/csb.json
@@ -9,7 +9,6 @@
"babel-desc": "Dodôwô fùnkcëjã parsera <code>#babel</code> zezwalającą na aùtomatné ùsôdzanié kastczi brëkòwnika z mòżnotą wstôwianiô swòjich szblonów",
"babel-url": "Project:Wieżô Babel",
"babel-footer-url": ":Kategòrëjô:Jãzëczi brëkòwników",
- "babel-autocreate-abort": "Wëbróné miono brëkòwnika je brëkòwóné do aùtomatnegò ùsôdzaniô kategòrëji [[$1|wieżë Babel]] ë ni mòże bëc registrowóné.",
"babel-autocreate-reason": "Starna aùtomatno ùsôdzony kategòrëji [[$1|wieżë Babel]].",
"babel-autocreate-text-levels": "Brëkòwnicë w ti kategòrëji zeswiôdczają znajemòtã jãzëka $2 jakno $1.",
"babel-autocreate-text-main": "Brëkòwnicë w ti kategòrëji zeswiôdczają znajemòtã jãzëka $1.",
@@ -27,5 +26,9 @@
"babel-4-n": "Nen brëkòwnik rozmieje [[$2|kaszëbsczi jãzëk]] wnetka jakno [[$1|rodną mòwã]].",
"babel-5-n": "Nen brëkòwnik rozmieje [[$2|kaszëbsczi jãzëk]] na równi z [[$1|rodną mòwą]].",
"babel-N-n": "[[$2|Kaszëbsczi jãzëk]] je [[$1|rodną mòwą]] negò brëkòwnika.",
- "babel-footer": "Jãzëczi brëkòwników"
+ "babel-footer": "Jãzëczi brëkòwników",
+ "apihelp-query+babel-description": "Dobiwô wëdowiédzã ò tim, jaczé jãzëczi znaje nen brëkòwnik.",
+ "apihelp-query+babel-summary": "Dobiwô wëdowiédzã ò tim, jaczé jãzëczi znaje nen brëkòwnik",
+ "apihelp-query+babel-param-user": "Brëkòwnik do dobicô ò nim wëdowiédzë",
+ "apihelp-query+babel-example-1": "Dibiwô wëdowiédzã Babel dlô brëkòwnika <kbd>Przëmiôr</kbd>"
}
diff --git a/MLEB/Babel/i18n/cv.json b/MLEB/Babel/i18n/cv.json
index 0531ec68..49c1ee8c 100644
--- a/MLEB/Babel/i18n/cv.json
+++ b/MLEB/Babel/i18n/cv.json
@@ -7,7 +7,7 @@
"Chuvash2014"
]
},
- "babel": "Чĕлхе пĕлĕвĕ",
+ "babel": "Хутшăнакан çинчен",
"babel-url": "Project:Вавилон",
"babel-footer-url": ":Category:Babel - Чĕлхепе усă куракансем",
"babel-0": "Ку хутшӑнакан [[$2|$3]] [[$1|пĕлмест]] (е ӑна чӗлхене ӑнланма йывӑр).",
diff --git a/MLEB/Babel/i18n/cy.json b/MLEB/Babel/i18n/cy.json
index 30d7e386..91c9456c 100644
--- a/MLEB/Babel/i18n/cy.json
+++ b/MLEB/Babel/i18n/cy.json
@@ -9,23 +9,22 @@
"babel-desc": "Yn ychwanegu'r ffwythiant dosrannu <code>#babel</code> er mwyn gosod blwch ieithoedd y defnyddiwr yn awtomatig, a chyda'r modd i gynnwys nodiadau pwrpasol",
"babel-url": "Project:Babel",
"babel-footer-url": ":Categori:Ieithoedd defnyddwyr",
- "babel-autocreate-abort": "Defnyddir yr enw defnyddiwr y dewisoch ar gyfer creu categori [[$1|Babel]] yn awtomatig, ac ni ellir ei gofrestri.",
"babel-autocreate-reason": "Yn creu tudalen gategoreiddio [[$1|Babel]] yn awtomatig.",
"babel-autocreate-text-levels": "Mae defnyddwyr yn y categori hwn yn crybwyll bod ganddynt gallu ieithyddol ar lefel $1 mewn $2.",
"babel-autocreate-text-main": "Mae defnyddwyr yn y categori hwn yn crybwyll bod rhywfaint o allu $1 ganddynt.",
"babel-0": "[[$1|Nid]] yw{{GENDER:$4| hwn| hon|'r defnyddiwr yma}} yn deall [[$2|$3]].",
- "babel-1": "Mae{{GENDER:$4| hwn| hon|'r defnyddiwr yma}} yn medru [[$2|$3]] ar lefel [[$1|syml]].",
+ "babel-1": "Mae {{GENDER:$4|hwn|hon|'r defnyddiwr yma}} yn medru [[$2|$3]] ar lefel [[$1|syml]].",
"babel-2": "Mae{{GENDER:$4| hwn| hon|'r defnyddiwr yma}} yn medru [[$2|$3]] ar lefel [[$1|ganolradd]].",
"babel-3": "Mae{{GENDER:$4| hwn| hon|'r defnyddiwr yma}} yn medru [[$2|$3]] ar lefel [[$1|uwchradd]].",
- "babel-4": "Mae [[$2|$3]] [[$1|rhugl]] gan {{GENDER:$4|hwn|hon|y defnyddiwr 'ma}}.",
+ "babel-4": "Mae [[$2|$3]] [[$1|rhugl]] gan {{GENDER:$4|hwn|hon|y defnyddiwr yma}}.",
"babel-5": "Mae{{GENDER:$4| hwn| hon|'r defnyddiwr yma}} yn medru [[$2|$3]] ar lefel [[$1|broffesiynol]].",
- "babel-N": "[[$2|$3]] yw [[$1|mamiaith]] {{GENDER:$4|hwn|hon|y defnyddiwr 'ma}}.",
+ "babel-N": "[[$2|$3]] yw [[$1|mamiaith]] {{GENDER:$4|hwn|hon|y defnyddiwr yma}}.",
"babel-0-n": "[[$1|Nid]] yw{{GENDER:$4| hwn| hon|'r defnyddiwr 'ma}} yn medru'r [[$2|Gymraeg]] (neu mae'n cael hi'n anodd iawn ei deall).",
"babel-1-n": "Mae{{GENDER:$4| hwn| hon|'r defnyddiwr 'ma}} yn medru'r [[$2|Gymraeg]] ar lefel [[$1|syml]].",
"babel-2-n": "Mae{{GENDER:$4| hwn| hon|'r defnyddiwr 'ma}} yn medru'r [[$2|Gymraeg]] ar lefel [[$1|ganolradd]].",
"babel-3-n": "Mae{{GENDER:$4| hwn| hon|'r defnyddiwr 'ma}} yn medru'r [[$2|Gymraeg]] ar lefel [[$1|uwchradd]].",
- "babel-4-n": "Mae [[$2|Cymraeg]] [[$1|rhugl]] gan {{GENDER:$4|hwn|hon|y defnyddiwr 'ma}}.",
+ "babel-4-n": "Mae [[$2|Cymraeg]] [[$1|rhugl]] gan {{GENDER:$4|hwn|hon|y defnyddiwr yma}}.",
"babel-5-n": "Mae{{GENDER:$4| hwn| hon|'r defnyddiwr 'ma}} yn medru'r [[$2|Gymraeg]] ar lefel [[$1|broffesiynol]].",
- "babel-N-n": "[[$2|Cymraeg]] yw [[$1|mamiaith]] {{GENDER:$4|hwn|hon|y defnyddiwr 'ma}}.",
+ "babel-N-n": "[[$2|Cymraeg]] yw [[$1|mamiaith]] {{GENDER:$4|hwn|hon|y defnyddiwr yma}}.",
"babel-footer": "Ieithoedd defnyddwyr"
}
diff --git a/MLEB/Babel/i18n/da.json b/MLEB/Babel/i18n/da.json
index 17386fcb..378bd174 100644
--- a/MLEB/Babel/i18n/da.json
+++ b/MLEB/Babel/i18n/da.json
@@ -6,17 +6,17 @@
"Froztbyte",
"Jan Friberg",
"Peter Alberti",
- "Sarrus"
+ "Sarrus",
+ "Saederup92"
]
},
"babel": "Babel brugeroplysninger",
"babel-desc": "Tilføjer parserfunktionen <code>#babel</code> for at tillade automatisk at generere en babelboks med mulighed for at inkludere tilpassede skabeloner",
"babel-url": "Project:Babel",
"babel-footer-url": ":Category:Babel - Brugere efter sprog",
- "babel-autocreate-abort": "Brugernavnet du har angivet benyttes til automatisk oprettelse af [[$1|Babel]]-kategorier og kan ikke registreres.",
"babel-autocreate-reason": "Opretter automatisk [[$1|Babel]] kategoriside.",
"babel-autocreate-text-levels": "Brugere i denne kategori angiver, at deres kendskab til $2 er på niveau $1",
- "babel-autocreate-text-main": "Brugere i denne kategori angiver, at de har kendskab til $1.",
+ "babel-autocreate-text-main": "Brugere i denne kategori angiver, at de har kendskab til sproget $1.",
"babel-0": "Denne bruger har [[$1|ingen]] kendskab til [[$2|$3]] (eller har meget svært ved at forstå det).",
"babel-1": "Denne bruger har [[$1|grundlæggende]] kendskab til [[$2|$3]].",
"babel-2": "Denne bruger har et [[$1|godt]] kendskab til [[$2|$3]].",
@@ -32,5 +32,6 @@
"babel-5-n": "Denne bruger har [[$1|professionelt]] kendskab til [[$2|dansk]].",
"babel-N-n": "Denne bruger har [[$2|dansk]] som [[$1|modersmål]].",
"babel-template": "Template:Bruger $1",
- "babel-footer": "Brugere efter sprog"
+ "babel-footer": "Brugere efter sprog",
+ "apihelp-query+babel-param-user": "Bruger der skal hentes information om"
}
diff --git a/MLEB/Babel/i18n/de.json b/MLEB/Babel/i18n/de.json
index 2b729c14..e4b19bb4 100644
--- a/MLEB/Babel/i18n/de.json
+++ b/MLEB/Babel/i18n/de.json
@@ -10,32 +10,37 @@
"Raimond Spekking",
"Revolus",
"The Evil IP address",
- "Umherirrender"
+ "Umherirrender",
+ "J. 'mach' wust",
+ "Crazy1880"
]
},
"babel": "Babel – Benutzerinformationen",
- "babel-desc": "Ergänzt die Funktion <code>#babel</code> zur automatischen Erstellung von „Babel“-Benutzerboxen und erlaubt, selbstdefinierte Vorlagen einzubinden",
+ "babel-desc": "Ergänzt die Funktion <code>#babel</code> zum automatischen Erstellen von „Babel“-Benutzerboxen und erlaubt, selbstdefinierte Vorlagen einzubinden",
"babel-url": "Project:Babel",
"babel-footer-url": ":Category:Babel - Benutzer nach Sprache",
- "babel-autocreate-abort": "Der angegebene Benutzername wird für die automatische Erstellung von [[$1|Babel]]-Kategorien benötigt und kann nicht registriert werden.",
"babel-autocreate-reason": "Erstelle automatisch die [[$1|Babel]]-Kategorie.",
"babel-autocreate-text-levels": "Benutzer in dieser Kategorie haben Kenntnisse der Stufe $1 in der Sprache $2.",
"babel-autocreate-text-main": "Benutzer in dieser Kategorie haben Kenntnisse der Sprache $1.",
"babel-autocreate-user": "Babel AutoCreate",
- "babel-0": "{{GENDER:$4|Dieser Benutzer|Dieser Benutzerin|Dieser Benutzer}} beherrscht [[$2|$3]] [[$1|nicht]] (oder versteht es nur mit beträchtlichen Schwierigkeiten).",
- "babel-1": "{{GENDER:$4|Dieser Benutzer|Diese Benutzerin|Dieser Benutzer}} beherrscht [[$2|$3]] auf [[$1|grundlegendem]] Niveau.",
- "babel-2": "{{GENDER:$4|Dieser Benutzer|Diese Benutzerin|Dieser Benutzer}} beherrscht [[$2|$3]] auf [[$1|fortgeschrittenem]] Niveau.",
- "babel-3": "{{GENDER:$4|Dieser Benutzer|Diese Benutzerin|Dieser Benutzer}} beherrscht [[$2|$3]] auf [[$1|hohem]] Niveau.",
- "babel-4": "{{GENDER:$4|Dieser Benutzer|Diese Benutzerin|Dieser Benutzer}} beherrscht [[$2|$3]] auf [[$1|muttersprachlichem Niveau]].",
- "babel-5": "{{GENDER:$4|Dieser Benutzer|Diese Benutzerin|Dieser Benutzer}} beherrscht [[$2|$3]] auf [[$1|professionellem]] Niveau.",
- "babel-N": "{{GENDER:$4|Dieser Benutzer|Diese Benutzerin|Dieser Benutzer}} spricht [[$2|$3]] als [[$1|Muttersprache]].",
- "babel-0-n": "{{GENDER:$4|Dieser Benutzer|Diese Benutzerin|Dieser Benutzer}} beherrscht [[$2|Deutsch]] [[$1|nicht]] (oder versteht es nur mit beträchtlichen Schwierigkeiten).",
- "babel-1-n": "{{GENDER:$4|Dieser Benutzer|Diese Benutzerin|Dieser Benutzer}} beherrscht [[$2|Deutsch]] auf [[$1|grundlegendem]] Niveau.",
- "babel-2-n": "{{GENDER:$4|Dieser Benutzer|Diese Benutzerin|Dieser Benutzer}} beherrscht [[$2|Deutsch]] auf [[$1|fortgeschrittenem]] Niveau.",
- "babel-3-n": "{{GENDER:$4|Dieser Benutzer|Diese Benutzerin|Dieser Benutzer}} beherrscht [[$2|Deutsch]] auf [[$1|hohem]] Niveau.",
- "babel-4-n": "{{GENDER:$4|Dieser Benutzer|Diese Benutzerin|Dieser Benutzer}} beherrscht [[$2|Deutsch]] auf [[$1|muttersprachlichem Niveau]].",
- "babel-5-n": "{{GENDER:$4|Dieser Benutzer|Diese Benutzerin|Dieser Benutzer}} beherrscht [[$2|Deutsch]] auf [[$1|professionellem]] Niveau.",
- "babel-N-n": "{{GENDER:$4|Dieser Benutzer|Diese Benutzerin|Dieser Benutzer}} spricht [[$2|Deutsch]] als [[$1|Muttersprache]].",
+ "babel-0": "{{GENDER:$4|Dieser Benutzer|Diese Benutzerin}} beherrscht [[$2|$3]] [[$1|nicht]] (oder versteht es nur mit beträchtlichen Schwierigkeiten).",
+ "babel-1": "{{GENDER:$4|Dieser Benutzer|Diese Benutzerin}} beherrscht [[$2|$3]] auf [[$1|grundlegendem]] Niveau.",
+ "babel-2": "{{GENDER:$4|Dieser Benutzer|Diese Benutzerin}} beherrscht [[$2|$3]] auf [[$1|fortgeschrittenem]] Niveau.",
+ "babel-3": "{{GENDER:$4|Dieser Benutzer|Diese Benutzerin}} beherrscht [[$2|$3]] auf [[$1|hohem]] Niveau.",
+ "babel-4": "{{GENDER:$4|Dieser Benutzer|Diese Benutzerin}} beherrscht [[$2|$3]] auf [[$1|muttersprachlichem Niveau]].",
+ "babel-5": "{{GENDER:$4|Dieser Benutzer|Diese Benutzerin}} beherrscht [[$2|$3]] auf [[$1|professionellem]] Niveau.",
+ "babel-N": "{{GENDER:$4|Dieser Benutzer|Diese Benutzerin}} spricht [[$2|$3]] als [[$1|Muttersprache]].",
+ "babel-0-n": "{{GENDER:$4|Dieser Benutzer|Diese Benutzerin}} beherrscht [[$2|Deutsch]] [[$1|nicht]] (oder versteht es nur mit beträchtlichen Schwierigkeiten).",
+ "babel-1-n": "{{GENDER:$4|Dieser Benutzer|Diese Benutzerin}} beherrscht [[$2|Deutsch]] auf [[$1|grundlegendem]] Niveau.",
+ "babel-2-n": "{{GENDER:$4|Dieser Benutzer|Diese Benutzerin}} beherrscht [[$2|Deutsch]] auf [[$1|fortgeschrittenem]] Niveau.",
+ "babel-3-n": "{{GENDER:$4|Dieser Benutzer|Diese Benutzerin}} beherrscht [[$2|Deutsch]] auf [[$1|hohem]] Niveau.",
+ "babel-4-n": "{{GENDER:$4|Dieser Benutzer|Diese Benutzerin}} beherrscht [[$2|Deutsch]] auf [[$1|muttersprachlichem Niveau]].",
+ "babel-5-n": "{{GENDER:$4|Dieser Benutzer|Diese Benutzerin}} beherrscht [[$2|Deutsch]] auf [[$1|professionellem]] Niveau.",
+ "babel-N-n": "{{GENDER:$4|Dieser Benutzer|Diese Benutzerin}} spricht [[$2|Deutsch]] als [[$1|Muttersprache]].",
"babel-template": "Template:User $1",
- "babel-footer": "Benutzer nach Sprache"
+ "babel-footer": "Benutzer nach Sprache",
+ "apihelp-query+babel-description": "Ruft Informationen darüber ab, welche Sprachen der Benutzer beherrscht.",
+ "apihelp-query+babel-summary": "Ruft Informationen darüber ab, welche Sprachen der Benutzer beherrscht.",
+ "apihelp-query+babel-param-user": "Benutzer, für den die Informationen abgerufen werden sollen.",
+ "apihelp-query+babel-example-1": "Ruft die Babel-Informationen für den Benutzer <kbd>Beispiel</kbd> ab"
}
diff --git a/MLEB/Babel/i18n/diq.json b/MLEB/Babel/i18n/diq.json
index 817ddaf7..9899fd54 100644
--- a/MLEB/Babel/i18n/diq.json
+++ b/MLEB/Babel/i18n/diq.json
@@ -5,32 +5,38 @@
"Gorizon",
"Mirzali",
"Neribij",
- "Marmase"
+ "Marmase",
+ "Kumkumuk",
+ "1917 Ekim Devrimi",
+ "Gırd",
+ "Gambollar"
]
},
- "babel": "Melumatê karberiyê Babili",
+ "babel": "Zanışekê babilê karberi",
"babel-desc": "Menıne de otomatik désé karberi vırazşten da şablonan ré, fonksiyona <code>#babil</code>i kena de",
"babel-url": "Project:Babil",
- "babel-footer-url": ":Kategoriye:Babil - Goreyê zıwanan ra karberi",
- "babel-autocreate-abort": "Nameyê karberio ke şıma areze kerdo, seba otomatik vıraştışê kategoriya [[$1|Babil]]i gureniyeno û nêşeno bıgêriyo.",
+ "babel-footer-url": ":Kategori:Babil - Hetê zıwanan ra karberi",
"babel-autocreate-reason": "Kategoriya [[$1|Babil]]i otomaik vırazéna.",
- "babel-autocreate-text-levels": "Karberé ke na kategoride yé, $1 sewiye dê zıwané $2 zané.",
- "babel-autocreate-text-main": "Karberé ke na kategoride yê vané ma zıwané $1 zam.",
+ "babel-autocreate-text-levels": "Karberé ke na kategori de yé, $1 sewiye dê zıwané $2 zané.",
+ "babel-autocreate-text-main": "Karberé ke na kategori de yê vané ma zıwané $1 zam.",
"babel-autocreate-user": "Babil OtomatikVıraştış",
"babel-0": "No/Na karber [[$1|héç]] [[$2|$3]] nézana (yana çetın fahm kena).",
"babel-1": "No/Na karber [[$1|zayıf]] sewiya de [[$2|$3]] zana.",
"babel-2": "No karber sewiya [[$1|miyanêne]] de [[$2|$3]] zano.",
"babel-3": "No/Na karber [[$1|weş]] sewiya de [[$2|$3]] zana.",
- "babel-4": "Na/Na karber [[$2|$3]] [[$1|Zey zıwan dé ğo]] qısey keno",
+ "babel-4": "No karber/Na karbere [[$2|$3]] zey [[$1|zıwanê ma u piyê xo]] fam keno.",
"babel-5": "No/Na karber [[$1|profesyonel]] sewiya de [[$2|$3]] zano.",
"babel-N": "Zıwané [[$1|may u pérdé]] na/né karberi [[$2|$3]] yo.",
"babel-0-n": "No/Na karber [[$1|héç]] [[$2|Zazaki]] nézana (yana çetın fahm kena).",
"babel-1-n": "No/Na karber [[$1|zayıf]] sewiya de [[$2|Zazaki]] zana.",
"babel-2-n": "No karber sewiya [[$1|miyanêne]] de [[$2|Zazaki]] zano.",
- "babel-3-n": "No/Na karber [[$1|weş]] sewiya de [[$2|Zazaki]] zana.",
+ "babel-3-n": "{{GENDER:$4|No karber|Na karbere}} sewiya [[$1|aver]]i de [[$2|Zazaki]] zano/zana.",
"babel-4-n": "Na/Na karber [[$1|Zey zıwan dé ğo]] [[$2|Zazaki]] qısey keno",
- "babel-5-n": "No/Na karber [[$1|profesyonel]] sewiya de [[$2|Zazaki]] zano.",
- "babel-N-n": "Zıwané [[$1|may u pérdé]] na/né karberi [[$2|Zazaki]] yo.",
+ "babel-5-n": "Karber [[$1|profesyonel]] sewiya de [[$2|Zazaki]] zano.",
+ "babel-N-n": "Zıwané [[$1|may u pér]] dê karberi [[$2|Zazaki]] yo.",
"babel-template": "Template:User $1",
- "babel-footer": "Goreyê zıwanan ra karberi"
+ "babel-footer": "Zıwana deyne karberi",
+ "apihelp-query+babel-description": "Karbero kı çı zıwan zano şo heqdë cı malumat bıvin",
+ "apihelp-query+babel-param-user": "Şo heqdë karberi malumat",
+ "apihelp-query+babel-example-1": "<kbd>Misal</kbd> şo Babil malumata karberi"
}
diff --git a/MLEB/Babel/i18n/dsb.json b/MLEB/Babel/i18n/dsb.json
index 9b2c0f0e..5b2a9835 100644
--- a/MLEB/Babel/i18n/dsb.json
+++ b/MLEB/Babel/i18n/dsb.json
@@ -8,7 +8,6 @@
"babel-desc": "Pśidawa parserowu funkciju <code>#babel</code> za awtomatiske twórjenje słupa babelowych wužywarskich kašćikow, z móžnosću, swójske pśedłogi zapśěgnuś",
"babel-url": "Project:Babel",
"babel-footer-url": ":Category:Babel - Wužywarje pó rěcy",
- "babel-autocreate-abort": "Pódane wužywarske mě wužywa se za awtomatiske wutwórjenje [[$1|Babelowych]] kategorijow a njedajo se registrěrowaś.",
"babel-autocreate-reason": "Awtomatiske wutwórjenje [[$1|Babeloweje]] kategorije.",
"babel-autocreate-text-levels": "Wužywarje w toś tej kategoriji pódawaju, až maju stopjeń znajobnosćow $1 za rěc $2.",
"babel-autocreate-text-main": "Wužywarje w toś tej kategoriji pódawaju, až maju znajobnosći rěcy $1.",
diff --git a/MLEB/Babel/i18n/dtp.json b/MLEB/Babel/i18n/dtp.json
index 2783ae91..a5f246cc 100644
--- a/MLEB/Babel/i18n/dtp.json
+++ b/MLEB/Babel/i18n/dtp.json
@@ -9,7 +9,6 @@
"babel-desc": "Poruhango <code>#babel</code> parsaor gugunoon popomilo tutumanud mimpopori bogian kutak momomoguno babaol miampai komilaan poposuang kouroson pongitanan.",
"babel-url": "Project:Babaol",
"babel-footer-url": ":Katogori:Babil - Momomoguno maya woyoboros",
- "babel-autocreate-abort": "Momomoguno di pinilinu minomoguno do katogori mimpopori-monsoi[[$1|Babil]] om awu milo porijistoron.",
"babel-autocreate-reason": "Mimpopori momonsoi katogori bolikon [[$1|Babil]].",
"babel-autocreate-text-levels": "Momomoguno id katogori tinandaan do kitingkat toilaan $1 montok woyoboros $2.",
"babel-autocreate-text-main": "Momomoguno id katogori tinandaan do kitingkat toilaan do woyoboros $1.",
diff --git a/MLEB/Babel/i18n/dty.json b/MLEB/Babel/i18n/dty.json
index 51f5923b..202c4f32 100644
--- a/MLEB/Babel/i18n/dty.json
+++ b/MLEB/Babel/i18n/dty.json
@@ -1,8 +1,17 @@
{
"@metadata": {
"authors": [
- "बिप्लब आनन्द"
+ "बिप्लब आनन्द",
+ "राम प्रसाद जोशी"
]
},
- "babel-N": "यो प्रयोगकर्ताको [[$1|मातृभाषा]] [[$2|$3]] हो।"
+ "babel-footer-url": "श्रेणी:बेबल - भाषा अनुसारका प्रयोगकर्ताहरू",
+ "babel-0": "यै प्रयोगकर्तालाई [[$2|$3]]को जानकारी [[$1|नाईथिन्]] अथवा बुझ्दाइ कठिन हुनोछ ।",
+ "babel-1": "यै प्रयोगकर्तालाई[[$2|$3]]को [[$1|आधारभुत]] जानकारी छ ।",
+ "babel-2": "यै प्रयोगकर्तालाई [[$2|$3]]को [[$1|मध्यम]] स्तरको जानकारी छ ।",
+ "babel-3": "यै प्रयोगकर्तालाई [[$2|$3]]को [[$1|उच्च]] स्तरको जानकारी छ ।",
+ "babel-4": "यै प्रयोगकर्तालाई [[$2|$3]]को [[$1|मातृभाषा जसो]] जानकारी छ ।",
+ "babel-5": "यै प्रयोगकर्तालाई [[$2|$3]]को [[$1|व्यावसायिक स्तरको]] जानकारी छ ।",
+ "babel-N": "यै प्रयोगकर्ताको [[$1|मातृभाषा]] [[$2|$3]] हो।",
+ "babel-footer": "भाषा अनुसारका प्रयोगकर्ताहरू"
}
diff --git a/MLEB/Babel/i18n/egl.json b/MLEB/Babel/i18n/egl.json
index 5c076857..6fe635b7 100644
--- a/MLEB/Babel/i18n/egl.json
+++ b/MLEB/Babel/i18n/egl.json
@@ -10,10 +10,9 @@
"babel-desc": "Al zûnta la 'parser function' <code>#babel</code> per permèter ed fêr in avtomâtic 'na caşèla utèin 'babèl' cun la pusibilitê ed zuntêregh di mudē personêl fât a piaşèir.",
"babel-url": "Project:Babel",
"babel-footer-url": ":Categoria:Lèngui d'uteint",
- "babel-autocreate-abort": "Al nòm més dèinter, l'é druvê per fêr in avtomâtich al categoréi [[$1|Babel]] e an pōl mìa èser registrê.",
"babel-autocreate-reason": "A fâgh in avtomâtich la pàgina 'd la categoréia [[$1|Babel]].",
"babel-autocreate-text-levels": "J utèint ed cla categoréia ché dîşen che pōlen comunichêr in $2 cun un livèl ed cgnusèinsa $1.",
- "babel-autocreate-text-main": "J utèint in cla categoréia ché dîşen che pōlen comunichêr in $1",
+ "babel-autocreate-text-main": "J utèint in cla categoréia ché dîşen che al lōr livèl ed cgnusèinsa l'é $1",
"babel-0": "Cl' utèint ché [[$1|an n'é mia bòun ed comunichêr ]] in [[$2|$3]] (o la 'l capés sōl cun grôsi dificultê)",
"babel-1": "Cl'utèint ché al pōl dêr 'na mân cun un livèl [[$1|bâs]] in [[$2|$3]].",
"babel-2": "Cl' utèint ché al pōl dêr 'na mân cun un livèl [[$1|bòun]] in [[$2|$3]].",
diff --git a/MLEB/Babel/i18n/el.json b/MLEB/Babel/i18n/el.json
index 14b458b4..bee60e1d 100644
--- a/MLEB/Babel/i18n/el.json
+++ b/MLEB/Babel/i18n/el.json
@@ -4,17 +4,18 @@
"AK",
"Consta",
"Glavkos",
- "Omnipaedista"
+ "Omnipaedista",
+ "Αντιγόνη",
+ "Nikosgranturismogt"
]
},
"babel": "Πληροφορίες Βαβέλ Χρήστη",
"babel-desc": "Προσθέτει την #babel λεξιαναλυτική λειτουργία η οποία επιτρέπει την αυτόματη παραγωγή στήλης βαβέλ με την δυνατότητα περίληψης προκαθορισμένων προτύπων",
"babel-url": "Project:Βαβέλ",
- "babel-footer-url": "Κατηγορία: Βαβέλ - Χρήστες ανά γλώσσα",
- "babel-autocreate-abort": "Το όνομα χρήστη που έδωσες χρησιμοποιείται για τη κατηγορία αυτοδημιουργίας [[$1|Βαβέλ]] και δεν μπορεί να κατοχυρωθεί.",
+ "babel-footer-url": ":Κατηγορία:Βαβέλ - Χρήστες ανά γλώσσα",
"babel-autocreate-reason": "Αυτόματη δημιουργία σελίδας κατηγορίας [[$1|Βαβέλ]].",
- "babel-autocreate-text-levels": "Οι χρήστες στην κατηγορία αυτή δηλώνουν πως ομιλούν την γλώσσα $2 σε επίπεδο $1",
- "babel-autocreate-text-main": "Οι χρήστες σε αυτή την κατηγορία δηλώνουν ότι γνωρίζουν τη γλώσσα σε επίπεδο $1.",
+ "babel-autocreate-text-levels": "Οι χρήστες σε αυτή την κατηγορία δηλώνουν ότι γνωρίζουν $2 σε επίπεδο $1.",
+ "babel-autocreate-text-main": "Οι χρήστες σε αυτή την κατηγορία δηλώνουν ότι γνωρίζουν $1.",
"babel-0": "Αυτός ο χρήστης [[$1|δεν καταλαβαίνει]] τα [[$2|$3]] (ή με μεγάλη δυσκολία).",
"babel-1": "Αυτός ο χρήστης μπορεί να συνεισφέρει σε [[$1|βασικού]] επιπέδου [[$2|$3]].",
"babel-2": "Αυτός ο χρήστης μπορεί να συνεισφέρει σε [[$1|μετρίου]] επιπέδου [[$2|$3]].",
@@ -29,5 +30,10 @@
"babel-4-n": "Αυτός ο χρήστης έχει [[$1|σχεδόν ως μητρική]] του γλώσσα τα [[$2|Ελληνικά]].",
"babel-5-n": "Αυτός ο χρήστης μπορεί να συνεισφέρει σε [[$1|επαγγελματικού]] επιπέδου [[$2|Ελληνικά]].",
"babel-N-n": "Αυτός ο χρήστης έχει ως [[$1|μητρική]] του γλώσσα τα [[$2|Ελληνικά]].",
- "babel-footer": "Χρήστες ανά γλώσσα"
+ "babel-template": "Template:Χρήστης $1",
+ "babel-footer": "Χρήστες ανά γλώσσα",
+ "apihelp-query+babel-description": "Λάβετε πληροφορίες για το ποιες γλώσσες ξέρει ο χρήστης",
+ "apihelp-query+babel-summary": "Λάβετε πληροφορίες για το ποιες γλώσσες ξέρει ο χρήστης",
+ "apihelp-query+babel-param-user": "Χρήστης για τον οποίο θα ληφθούν πληροφορίες",
+ "apihelp-query+babel-example-1": "Λάβετε πληροφορίες Βαβέλ για τον χρήστη <kbd>Παράδειγμα</kbd>"
}
diff --git a/MLEB/Babel/i18n/eml.json b/MLEB/Babel/i18n/eml.json
index 39876d69..f56d7185 100644
--- a/MLEB/Babel/i18n/eml.json
+++ b/MLEB/Babel/i18n/eml.json
@@ -10,10 +10,9 @@
"babel-desc": "Al zûnta la funsiòun 'parser' <code>#babel</code> ch' la permèt la créasiòun automàtica ed 'na caśèla d'utàint Bàbel cun la pòsibilitè ed śountèregh dj modé lochèl",
"babel-url": "Project:Babel",
"babel-footer-url": ":Categoria:Lèngui d'uteint",
- "babel-autocreate-abort": "Al nòm utèint ch'é stê més dèinter l'é druvê per fêr in avtomâtich al categoréi [[$1|Babel]] e 'l pōl mia èser registrê.",
"babel-autocreate-reason": "A fâgh in avtomâtich la pàgina 'd la categoréia [[$1|Babel]].",
"babel-autocreate-text-levels": "J utèint in cla categoréia ché a dîsen che pōlen comunichêr a un livèl $1 per la léngua $2.",
- "babel-autocreate-text-main": "J utèint int cla categorìa chè a dìşen che pōlen comunichêr a livèl $1.",
+ "babel-autocreate-text-main": "J utèint int cla categorìa chè a dìşen che cgnùsen la lengva a livèl $1.",
"babel-0": "Cl'utèint ché [[$1|an n'é mìa in grêd ed comunichêr]] in [[$2|$3]] (o i capés sōl cun grôsa dificultê).",
"babel-1": "Cl'utèint ché al pōl dêr 'na mân cun un livèl [[$1|bâs]] in [[$2|$3]].",
"babel-2": "Cl'utèint ché al pōl dêr 'na mân cun un [[$1|bòun]] livèl in [[$2|$3]].",
diff --git a/MLEB/Babel/i18n/en-gb.json b/MLEB/Babel/i18n/en-gb.json
index 7acae6d5..dfd3aaaa 100644
--- a/MLEB/Babel/i18n/en-gb.json
+++ b/MLEB/Babel/i18n/en-gb.json
@@ -3,17 +3,18 @@
"authors": [
"Jdforrester",
"Pooja.srivastava",
- "Chase me ladies, I'm the Cavalry"
+ "Chase me ladies, I'm the Cavalry",
+ "Andibing",
+ "Dejavu"
]
},
"babel": "Babel user information",
"babel-desc": "Adds the <code>#babel</code> parser function to allow automated generation of a babel userbox column with the ability to include custom templates",
"babel-url": "Project:Babel",
"babel-footer-url": ":Category:Babel - Users by language",
- "babel-autocreate-abort": "The username you specified is used for [[$1|Babel]] category auto-creation and cannot be registered.",
"babel-autocreate-reason": "Automatically creating [[$1|Babel]] category page.",
"babel-autocreate-text-levels": "Users in this category indicate they have skill level $1 for language $2.",
- "babel-autocreate-text-main": "Users in this category indicate they have knowledge of language $1.",
+ "babel-autocreate-text-main": "Users in this category indicate their knowledge of language $1.",
"babel-0": "This user has [[$1|no]] knowledge of [[$2|$3]] (or understands it with considerable difficulty).",
"babel-1": "This user has [[$1|basic]] knowledge of [[$2|$3]].",
"babel-2": "This user has [[$1|intermediate]] knowledge of [[$2|$3]].",
@@ -28,5 +29,8 @@
"babel-4-n": "This user has [[$1|near native speaker]] knowledge of [[$2|English]].",
"babel-5-n": "This user has [[$1|professional]] knowledge of [[$2|English]].",
"babel-N-n": "This user has a [[$1|native]] understanding of [[$2|English]].",
- "babel-footer": "Users by language"
+ "babel-footer": "Users by language",
+ "apihelp-query+babel-description": "Get information about what languages the user knows",
+ "apihelp-query+babel-param-user": "User to get information about",
+ "apihelp-query+babel-example-1": "Get the Babel information for user <kbd>Example</kbd>"
}
diff --git a/MLEB/Babel/i18n/en.json b/MLEB/Babel/i18n/en.json
index a8341de0..dbb3de78 100644
--- a/MLEB/Babel/i18n/en.json
+++ b/MLEB/Babel/i18n/en.json
@@ -1,37 +1,37 @@
{
- "@metadata": {
- "authors": [
- "Siebrand",
- "Purodha"
- ]
- },
- "babel": "Babel user information",
- "babel-desc": "Adds the <code>#babel</code> parser function to allow automated generation of a babel userbox column with the ability to include custom templates",
- "babel-url": "Project:Babel",
- "babel-footer-url": ":Category:Babel - Users by language",
- "babel-autocreate-reason": "Automatically creating [[$1|Babel]] category page.",
- "babel-autocreate-text-levels": "Users in this category indicate they have skill level $1 for language $2.",
- "babel-autocreate-text-main": "Users in this category indicate they have knowledge of language $1.",
- "babel-autocreate-user": "Babel AutoCreate",
- "babel-0": "This user has [[$1|no]] knowledge of [[$2|$3]] (or understands it with considerable difficulty).",
- "babel-1": "This user has [[$1|basic]] knowledge of [[$2|$3]].",
- "babel-2": "This user has [[$1|intermediate]] knowledge of [[$2|$3]].",
- "babel-3": "This user has [[$1|advanced]] knowledge of [[$2|$3]].",
- "babel-4": "This user has [[$1|near native speaker]] knowledge of [[$2|$3]].",
- "babel-5": "This user has [[$1|professional]] knowledge of [[$2|$3]].",
- "babel-N": "This user has a [[$1|native]] understanding of [[$2|$3]].",
- "babel-0-n": "This user has [[$1|no]] knowledge of [[$2|English]] (or understands it with considerable difficulty).",
- "babel-1-n": "This user has [[$1|basic]] knowledge of [[$2|English]].",
- "babel-2-n": "This user has [[$1|intermediate]] knowledge of [[$2|English]].",
- "babel-3-n": "This user has [[$1|advanced]] knowledge of [[$2|English]].",
- "babel-4-n": "This user has [[$1|near native speaker]] knowledge of [[$2|English]].",
- "babel-5-n": "This user has [[$1|professional]] knowledge of [[$2|English]].",
- "babel-N-n": "This user has a [[$1|native]] understanding of [[$2|English]].",
- "babel-box-cellspacing": "0",
- "babel-box-cellpadding": "0",
- "babel-cellspacing": "0",
- "babel-cellpadding": "0",
- "babel-portal": "",
- "babel-template": "Template:User $1",
- "babel-footer": "Users by language"
+ "@metadata": {
+ "authors": [
+ "Siebrand",
+ "Purodha"
+ ]
+ },
+ "babel": "Babel user information",
+ "babel-desc": "Adds the <code>#babel</code> parser function to allow automated generation of a babel userbox column with the ability to include custom templates",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Babel - Users by language",
+ "babel-autocreate-reason": "Automatically creating [[$1|Babel]] category page.",
+ "babel-autocreate-text-levels": "Users in this category indicate they have skill level $1 for language $2.",
+ "babel-autocreate-text-main": "Users in this category indicate their knowledge of language $1.",
+ "babel-autocreate-user": "Babel AutoCreate",
+ "babel-0": "This user has [[$1|no]] knowledge of [[$2|$3]] (or understands it with considerable difficulty).",
+ "babel-1": "This user has [[$1|basic]] knowledge of [[$2|$3]].",
+ "babel-2": "This user has [[$1|intermediate]] knowledge of [[$2|$3]].",
+ "babel-3": "This user has [[$1|advanced]] knowledge of [[$2|$3]].",
+ "babel-4": "This user has [[$1|near native speaker]] knowledge of [[$2|$3]].",
+ "babel-5": "This user has [[$1|professional]] knowledge of [[$2|$3]].",
+ "babel-N": "This user has a [[$1|native]] understanding of [[$2|$3]].",
+ "babel-0-n": "This user has [[$1|no]] knowledge of [[$2|English]] (or understands it with considerable difficulty).",
+ "babel-1-n": "This user has [[$1|basic]] knowledge of [[$2|English]].",
+ "babel-2-n": "This user has [[$1|intermediate]] knowledge of [[$2|English]].",
+ "babel-3-n": "This user has [[$1|advanced]] knowledge of [[$2|English]].",
+ "babel-4-n": "This user has [[$1|near native speaker]] knowledge of [[$2|English]].",
+ "babel-5-n": "This user has [[$1|professional]] knowledge of [[$2|English]].",
+ "babel-N-n": "This user has a [[$1|native]] understanding of [[$2|English]].",
+ "babel-portal": "",
+ "babel-template": "Template:User $1",
+ "babel-footer": "Users by language",
+ "apihelp-query+babel-description": "Get information about what languages the user knows",
+ "apihelp-query+babel-summary": "Get information about what languages the user knows",
+ "apihelp-query+babel-param-user": "User to get information about",
+ "apihelp-query+babel-example-1": "Get the Babel information for user <kbd>Example</kbd>"
}
diff --git a/MLEB/Babel/i18n/eo.json b/MLEB/Babel/i18n/eo.json
index 9fd34c7e..af37733c 100644
--- a/MLEB/Babel/i18n/eo.json
+++ b/MLEB/Babel/i18n/eo.json
@@ -4,20 +4,21 @@
"KuboF",
"Malafaya",
"Michawiki",
- "Yekrats"
+ "Yekrats",
+ "Robin van der Vliet",
+ "Joao Xavier"
]
},
"babel": "Babela informo pri uzanto",
"babel-desc": "Aldonas la <code>#babel</code> sintaksanalizilan funkcion por aŭtomate generi kolumnon de babel-uzantoskatolo kun la ebleco inkluzivi sxablonojn de uzanto.",
"babel-url": "Project:Babel",
"babel-footer-url": ":Category:Babelo - Uzantoj laŭ lingvoj",
- "babel-autocreate-abort": "La salutnomo, kiun vi specifis, estas uzata por [[$1|Babel]]-kategoria aŭtomata kreado, kaj ne povas esti registrita.",
"babel-autocreate-reason": "Aŭtomate kreante kategorio-paĝo por [[$1|Babel]].",
"babel-autocreate-text-levels": "Uzantoj en ĉi tiu kategorio indikas ke ili havas spertnivelo $1 por $2.",
- "babel-autocreate-text-main": "Uzantoj en ĉi tiu kategorio indikas ke ili havas lingvoscio de $1.",
+ "babel-autocreate-text-main": "Uzantoj en ĉi tiu kategorio indikas, ke ili havas lingvoscion de $1.",
"babel-0": "Ĉi tiu uzanto [[$1|ne komprenas]] la lingvon [[$2|$3]], aŭ tre malfacile komprenas.",
"babel-1": "Ĉi tiu uzanto povas komuniki per [[$1|baza]] nivelo de [[$2|$3]].",
- "babel-2": "Tiu ĉi uzanto havas [[$1|meznivelan]] scion de [[$2|$3]].",
+ "babel-2": "Ĉi tiu uzanto havas [[$1|meznivelan]] scion de [[$2|$3]].",
"babel-3": "Ĉi tiu uzanto povas komuniki per [[$1|alta aŭ flua]] nivelo de [[$2|$3]].",
"babel-4": "Ĉi tiu uzanto parolas kun [[$1|preskaŭ denaska]] scio de [[$2|$3]].",
"babel-5": "Ĉi tiu uzanto estas [[$1|profesia]] parolanto de [[$2|$3]].",
diff --git a/MLEB/Babel/i18n/es.json b/MLEB/Babel/i18n/es.json
index 25663ad7..122b667a 100644
--- a/MLEB/Babel/i18n/es.json
+++ b/MLEB/Babel/i18n/es.json
@@ -7,17 +7,17 @@
"Fluence",
"GerardM",
"Sanbec",
- "Vivaelcelta"
+ "Vivaelcelta",
+ "Macofe"
]
},
- "babel": "Información de idiomas de usuario",
+ "babel": "Información de idiomas {{GENDER:$1|del usuario|de la usuaria}}",
"babel-desc": "Añade la función del analizador <code>#babel</code> para permitir la generación automática de una caja de usuario (userbox) «babel» con la posibilidad de incluir plantillas personalizadas",
"babel-url": "Project:Babel",
"babel-footer-url": ":Category:Babel - Usuarios por idioma",
- "babel-autocreate-abort": "El nombre de usuario especificado es usado para la creación automática de categorías [[$1|Babel]] y no puede registrarse.",
"babel-autocreate-reason": "Creando automáticamente la página de categoría [[$1|Babel]].",
"babel-autocreate-text-levels": "Los usuarios de esta categoría indican que tienen un nivel de dominio $1 del idioma $2.",
- "babel-autocreate-text-main": "Los usuarios en esta categoría indican que tienen conocimiento del idioma $1.",
+ "babel-autocreate-text-main": "Los usuarios en esta categoría indican su conocimiento del idioma $1.",
"babel-0": "{{GENDER:$4|Este usuario|Esta usuaria}} [[$1|no]] tiene ningún conocimiento del [[$2|$3]] (o lo entiende con mucha dificultad).",
"babel-1": "{{GENDER:$4|Este usuario|Esta usuaria}} tiene un conocimiento [[$1|básico]] del [[$2|$3]].",
"babel-2": "{{GENDER:$4|Este usuario|Esta usuaria}} tiene un conocimiento [[$1|intermedio]] del [[$2|$3]].",
@@ -32,5 +32,9 @@
"babel-4-n": "{{GENDER:$4|Este usuario|Esta usuaria}} tiene un conocimiento [[$1|casi nativo]] del [[$2|español]].",
"babel-5-n": "{{GENDER:$4|Este usuario|Esta usuaria}} tiene un conocimiento [[$1|profesional]] del [[$2|español]].",
"babel-N-n": "{{GENDER:$4|Este usuario|Esta usuaria}} tiene una comprensión [[$1|nativa]] del [[$2|español]].",
- "babel-footer": "Usuarios por idioma"
+ "babel-footer": "Usuarios por idioma",
+ "apihelp-query+babel-description": "Obtener información sobre los idiomas que el usuario sabe",
+ "apihelp-query+babel-summary": "Obtener información sobre los idiomas que conoce el usuario",
+ "apihelp-query+babel-param-user": "Usuario del cual obtener información",
+ "apihelp-query+babel-example-1": "Obtener la información de Babel del usuario <kbd>Example</kbd>"
}
diff --git a/MLEB/Babel/i18n/et.json b/MLEB/Babel/i18n/et.json
index 0ef098bf..60468f05 100644
--- a/MLEB/Babel/i18n/et.json
+++ b/MLEB/Babel/i18n/et.json
@@ -9,7 +9,6 @@
"babel-desc": "Lisab parsimisfunktsiooni <code>#babel</code>, mis võimaldab kasutaja keelteoskuse infokasti lisamist.",
"babel-url": "Project:Babel",
"babel-footer-url": ":Category:Babel – Kasutajad keelteoskuse järgi",
- "babel-autocreate-abort": "Kasutajanime, mille sisestasid, kasutatakse [[$1|Babeli]] kategooriate automaatseks genereerimiseks, mistõttu seda ei ole võimalik registreerida.",
"babel-autocreate-reason": "[[$1|Babeli]] kategoorialehe automaatne genereerimine.",
"babel-autocreate-text-levels": "Kasutajad selles kategoorias on märkinud, et valdavad $2 keelt tasemel $1.",
"babel-autocreate-text-main": "Kasutajad selles kategoorias on märkinud, et valdavad $1 keelt.",
diff --git a/MLEB/Babel/i18n/eu.json b/MLEB/Babel/i18n/eu.json
index 8c22f8de..e8442740 100644
--- a/MLEB/Babel/i18n/eu.json
+++ b/MLEB/Babel/i18n/eu.json
@@ -3,17 +3,17 @@
"authors": [
"An13sa",
"Kobazulo",
- "Theklan"
+ "Theklan",
+ "Sator"
]
},
"babel": "Lankideen babel informazioa",
"babel-desc": "<code>#babel</code> sintaxi-analizatzaile (parser) funtzioa gehitzen du automatikoki sorturiko babel lankide-kutxen zutabea baimeduz eta lankide txantiloiak sartzea baimenduz",
"babel-url": "Project:Babel",
"babel-footer-url": ":Category:Babel - Erabiltzaileak hizkuntzaren arabear",
- "babel-autocreate-abort": "Sartu duzun lankide izena [[$1|Babel]] kategorien auto-sorkuntzarako erabiltzen da eta ezin da erregistratu.",
"babel-autocreate-reason": "Automatikoki sorturiko [[$1|Babel]] kategoria orrialdea.",
"babel-autocreate-text-levels": "Kategoria honetako lankideek $1 maila dutela $2 hizkuntzan adierazten du.",
- "babel-autocreate-text-main": "Kategoria honetan dauden lankideek $1 hizkuntzaren jakintza dute.",
+ "babel-autocreate-text-main": "Kategoria honetan dauden lankideek $1 hizkuntzaren ezagutza dute.",
"babel-autocreate-user": "Babel AutoSorrera",
"babel-0": "Lankide honek [[$1|ez daki]] [[$2|$3]]z (edo oso zaila da berarentzat ulertzea).",
"babel-1": "Lankide honek [[$2|$3]]zko [[$1|oinarrizko ezagutza]] du.",
@@ -29,5 +29,9 @@
"babel-4-n": "Erabiltzaile honek [[$1|euskaldun zahar baten antzeko mailan]] lagun dezake [[$2|euskara]]z.",
"babel-5-n": "Erabiltzaile honek [[$2|euskara]] [[$1|aditu]] mailan erabiltzen du.",
"babel-N-n": "Erabiltzaile hau [[$1|euskaldun zaharra]] da ([[$2|euskara]] du ama hizkuntza).",
- "babel-footer": "Lankideak hizkuntzaren arabera"
+ "babel-footer": "Lankideak hizkuntzaren arabera",
+ "apihelp-query+babel-description": "Eskuratu lakideak dakizkien hizkuntzen inguruko informazioa",
+ "apihelp-query+babel-summary": "Lankideak dakizkien hizkuntzen inguruko informazioa jaso",
+ "apihelp-query+babel-param-user": "Zein lankideren informazioa lortu",
+ "apihelp-query+babel-example-1": "<kbd>Adibide</kbd> lankidearen Babel informazioa lortu"
}
diff --git a/MLEB/Babel/i18n/fa.json b/MLEB/Babel/i18n/fa.json
index d5391abf..d0f64d3f 100644
--- a/MLEB/Babel/i18n/fa.json
+++ b/MLEB/Babel/i18n/fa.json
@@ -7,14 +7,14 @@
"Ladsgroup",
"Mjbmr",
"Reza1615",
- "ZxxZxxZ"
+ "ZxxZxxZ",
+ "Rtemis"
]
},
"babel": "اطلاعات کاربری بابل",
"babel-desc": "دستور تجزیه‌گر <code>#babel</code> را اضافه می‌کند که امکان ایجاد خودکار جعبه‌های کاربری بابل را با قابلیت گنجاندن الگوهای دلخواه فراهم می‌کند",
"babel-url": "Project:بابل",
"babel-footer-url": ":Category:بابل - کاربران بر اساس زبان",
- "babel-autocreate-abort": "نام کاربری که مشخص کرده‌اید برای ایجاد خودکار ردهٔ [[$1|بابل]] استفاده شده‌است و نمی‌تواند ثبت شود.",
"babel-autocreate-reason": "ایجاد خودکار صفحهٔ ردهٔ [[$1|بابل]].",
"babel-autocreate-text-levels": "کاربران این رده در زبان $2 توانایی $1 دارند",
"babel-autocreate-text-main": "کاربران این رده دانش زبان $1 را دارند.",
@@ -33,5 +33,9 @@
"babel-5-n": "این کاربر [[$2|فارسی]] را در حد [[$1|حرفه‌ای]] می‌فهمد.",
"babel-N-n": "این کاربر [[$2|فارسی]] را در حد [[$1|زبان مادری]] می‌فهمد.",
"babel-template": "Template:User $1",
- "babel-footer": "کاربران بر پایهٔ زبان"
+ "babel-footer": "کاربران بر پایهٔ زبان",
+ "apihelp-query+babel-description": "درباره اینکه کاربر چه زبان‌هایی می‌داند اطلاعات دریافت کن",
+ "apihelp-query+babel-summary": "درباره زبان‌هایی که کاربر می‌داند اطلاعاتی بگیر",
+ "apihelp-query+babel-param-user": "کاربر برای دریافت اطلاعات",
+ "apihelp-query+babel-example-1": "گرفتن اطلاعات زبانی برای کاربر <kbd>Example</kbd>"
}
diff --git a/MLEB/Babel/i18n/fi.json b/MLEB/Babel/i18n/fi.json
index 5873ccdf..2cc95316 100644
--- a/MLEB/Babel/i18n/fi.json
+++ b/MLEB/Babel/i18n/fi.json
@@ -7,14 +7,14 @@
"Linnea",
"Nedergard",
"Nike",
- "Pxos"
+ "Pxos",
+ "4shadoww"
]
},
"babel": "Käyttäjän kielitaito",
"babel-desc": "Lisää <code>#babel</code>-funktion, jotta käyttäjän kielitaidosta kertova babel-käyttäjälaatikkosarake voidaan luoda automaattisesti ja sisällyttää räätälöityihin mallineisiin.",
"babel-url": "Project:Kielitaito",
"babel-footer-url": ":Category:Babel - Käyttäjät kielittäin",
- "babel-autocreate-abort": "Antamasi käyttäjätunnus on varattu [[$1|kielitaitoluokkien]] automaattiseen luomiseen, joten et voi rekisteröidä sitä.",
"babel-autocreate-reason": "[[$1|Kielitaidon]] luokkasivun automaattinen luonti.",
"babel-autocreate-text-levels": "Käyttäjät tässä luokassa ovat ilmoittaneet osaavansa kieltä $2 tasolla $1.",
"babel-autocreate-text-main": "Käyttäjät tässä luokassa ovat ilmoittaneet ymmärtävänsä kieltä $1.",
@@ -24,13 +24,13 @@
"babel-3": "Tämä käyttäjä osaa kieltä [[$2|$3]] [[$1|erinomaisesti]].",
"babel-4": "Tämä käyttäjä osaa kieltä [[$2|$3]] [[$1|lähes äidinkielen tavoin]].",
"babel-5": "Tämä käyttäjä osaa käyttää kieltä [[$2|$3]] [[$1|ammattimaisesti]].",
- "babel-N": "Tämä käyttäjä puhuu kieltä [[$2|$3]] [[$1|äidinkielenään]].",
+ "babel-N": "Tämän käyttäjän [[$1|äidinkieli]] on [[$2|$3]].",
"babel-0-n": "Tämä käyttäjä osaa [[$1|hyvin vähän tai ei lainkaan]] [[$2|suomea]].",
"babel-1-n": "Tämä käyttäjä puhuu [[$2|suomea]] [[$1|vähän]].",
"babel-2-n": "Tämä käyttäjä osaa [[$2|suomea]] [[$1|kohtalaisesti]].",
"babel-3-n": "Tämä käyttäjä osaa [[$2|suomea]] [[$1|erinomaisesti]].",
"babel-4-n": "Tämä käyttäjä osaa [[$2|suomea]] [[$1|melkein äidinkielen tavoin]].",
"babel-5-n": "Tämä käyttäjä käyttää [[$2|suomea]] [[$1|ammattimaisesti]].",
- "babel-N-n": "Tämä käyttäjä puhuu [[$2|suomea]] [[$1|äidinkielenään]].",
+ "babel-N-n": "Tämän käyttäjän [[$1|äidinkieli]] on [[$2|suomi]].",
"babel-footer": "Käyttäjät kielittäin"
}
diff --git a/MLEB/Babel/i18n/fo.json b/MLEB/Babel/i18n/fo.json
index fdc3ed8c..99e67006 100644
--- a/MLEB/Babel/i18n/fo.json
+++ b/MLEB/Babel/i18n/fo.json
@@ -10,7 +10,6 @@
"babel-desc": "Leggur afturat <code>#babel</code> parsarafunksjón fyri at loyva sjálvvirkandi upprættan av babel brúkarakassa við møguleika fyri at taka við tilevnaðar fyrimyndir (skapilónir)",
"babel-url": "Project:Babel",
"babel-footer-url": ":Category:Babel - Brúkari eftir máli",
- "babel-autocreate-abort": "Brúkaranavnið, sum tú valdi, verður brúkt til [[$1|Babel]] bólkin til sjálv-upprættan og kann ikki skrásetast.",
"babel-autocreate-reason": "Sjálvvirkandi skapan av [[$1|Babel]] bólka síða.",
"babel-autocreate-text-levels": "Brúkarir í hesum bólki vísa at tey hava vitan á stigi $1 fyri máli $2.",
"babel-autocreate-text-main": "Brúkarir í hesum bólki vísa at teir hava vitan um mál $1.",
diff --git a/MLEB/Babel/i18n/fr.json b/MLEB/Babel/i18n/fr.json
index 4cb072ae..99c1b9a2 100644
--- a/MLEB/Babel/i18n/fr.json
+++ b/MLEB/Babel/i18n/fr.json
@@ -10,31 +10,39 @@
"Louperivois",
"UV",
"Urhixidur",
- "Verdy p"
+ "Verdy p",
+ "Zebulon84",
+ "Gomoko",
+ "TTO",
+ "Wladek92",
+ "JackPotte"
]
},
- "babel": "Informations Babel sur l’utilisateur",
- "babel-desc": "Ajoute une fonction d’analyseur syntaxique <code>#babel</code> permettant la création automatique d’une boîte utilisateur Babel avec la possibilité d’y inclure des modèles locaux",
+ "babel": "Informations Babel sur l’{{GENDER:$1|utilisateur|utilisatrice|utilisateur}}",
+ "babel-desc": "Ajoute la fonction de l’analyseur syntaxique <code>#babel</code> permettant la création automatique d’une colonne de boîtes utilisateur Babel avec la possibilité d’inclure des modèles locaux",
"babel-url": "Project:Babel",
"babel-footer-url": ":Catégorie:Babel - Utilisateurs par langue",
- "babel-autocreate-abort": "Le nom d’utilisateur que vous avez entré est utilisé pour créer automatiquement les catégories [[$1|Babel]] et ne peut pas être enregistré.",
- "babel-autocreate-reason": "Création automatique de la catégorie [[$1|Babel]].",
+ "babel-autocreate-reason": "Création automatique de la page des catégories [[$1|Babel]].",
"babel-autocreate-text-levels": "Les utilisateurs dans cette catégorie ont indiqué qu’ils ont le niveau $1 pour la langue $2.",
- "babel-autocreate-text-main": "Les utilisateurs dans cette catégorie ont indiqué qu’ils ont une connaissance en $1.",
- "babel-0": "Cet utilisateur n’a [[$1|aucune]] connaissance en [[$2|$3]] (ou le comprend avec de grandes difficultés).",
- "babel-1": "Cet utilisateur peut contribuer avec un niveau [[$1|élémentaire]] en [[$2|$3]].",
- "babel-2": "Cet utilisateur a une connaissance [[$1|moyenne]] en [[$2|$3]].",
- "babel-3": "Cet utilisation dispose d’une connaissance [[$1|avancée]] en [[$2|$3]].",
- "babel-4": "Cet utilisateur a une connaissance proche de la [[$1|langue maternelle]] en [[$2|$3]].",
- "babel-5": "Ce contributeur a une connaissance [[$1|professionnelle]] en [[$2|$3]].",
- "babel-N": "Cet utilisateur dispose d’une compréhension comme [[$1|langue maternelle]] en [[$2|$3]].",
- "babel-0-n": "Cet utilisateur n’a [[$1|aucune]] connaissance en [[$2|français]] (ou le comprend avec de grandes difficultés).",
- "babel-1-n": "Cet utilisateur dispose de connaissances [[$1|de base]] en [[$2|français]].",
- "babel-2-n": "Cet utilisateur dispose d’un [[$1|niveau intermédiaire]] de connaissance en [[$2|français]].",
- "babel-3-n": "Cet utilisateur dispose de connaissances [[$1|avancées]] en [[$2|français]].",
- "babel-4-n": "Cet utilisateur dispose de connaissances proches de la [[$1|langue maternelle]] en [[$2|français]].",
- "babel-5-n": "Cet utilisateur dispose d’un niveau de connaissances [[$1|professionnel]] du [[$2|français]].",
- "babel-N-n": "Cet utilisateur a pour [[$1|langue maternelle]] le [[$2|français]].",
+ "babel-autocreate-text-main": "Les utilisateurs dans cette catégorie ont indiqué leur connaissance de la langue $1.",
+ "babel-0": "{{GENDER:$4|Cet utilisateur|Cette utilisatrice}} n’a [[$1|aucune]] connaissance en [[$2|$3]] (ou le comprend avec de grandes difficultés).",
+ "babel-1": "{{GENDER:$4|Cet utilisateur|Cette utilisatrice}} peut contribuer avec un niveau [[$1|élémentaire]] en [[$2|$3]].",
+ "babel-2": "{{GENDER:$4|Cet utilisateur|Cette utilisatrice}} a une connaissance [[$1|moyenne]] en [[$2|$3]].",
+ "babel-3": "{{GENDER:$4|Cet utilisateur|Cette utilisatrice}} dispose d’une connaissance [[$1|avancée]] en [[$2|$3]].",
+ "babel-4": "{{GENDER:$4|Cet utilisateur|Cette utilisatrice}} a une connaissance proche de la [[$1|langue maternelle]] en [[$2|$3]].",
+ "babel-5": "{{GENDER:$4|Cet utilisateur|Cette utilisatrice}} a un niveau de connaissance [[$1|professionnel]] en [[$2|$3]].",
+ "babel-N": "{{GENDER:$4|Cet utilisateur|Cette utilisatrice}} parle en [[$2|$3]] comme [[$1|langue maternelle]].",
+ "babel-0-n": "{{GENDER:$4|Cet utilisateur|Cette utilisatrice}} n’a [[$1|aucune]] connaissance en [[$2|français]] (ou le comprend avec de grandes difficultés).",
+ "babel-1-n": "{{GENDER:$4|Cet utilisateur|Cette utilisatrice}} dispose de connaissances [[$1|de base]] en [[$2|français]].",
+ "babel-2-n": "{{GENDER:$4|Cet utilisateur|Cette utilisatrice}} dispose d’un [[$1|niveau intermédiaire]] de connaissance en [[$2|français]].",
+ "babel-3-n": "{{GENDER:$4|Cet utilisateur|Cette utilisatrice}} dispose de connaissances [[$1|avancées]] en [[$2|français]].",
+ "babel-4-n": "{{GENDER:$4|Cet utilisateur|Cette utilisatrice}} dispose de connaissances proches de la [[$1|langue maternelle]] en [[$2|français]].",
+ "babel-5-n": "{{GENDER:$4|Cet utilisateur|Cette utilisatrice}} dispose d’un niveau de connaissances [[$1|professionnel]] du [[$2|français]].",
+ "babel-N-n": "{{GENDER:$4|Cet utilisateur|Cette utilisatrice}} a pour [[$1|langue maternelle]] le [[$2|français]].",
"babel-template": "Modèle:User $1",
- "babel-footer": "Utilisateurs par langue"
+ "babel-footer": "Utilisateurs par langue",
+ "apihelp-query+babel-description": "Obtenir des informations sur les langues connues de l’utilisateur",
+ "apihelp-query+babel-summary": "Obtenir des informations sur les langues que connaît l’utilisateur",
+ "apihelp-query+babel-param-user": "Utilisateur à propos duquel obtenir des informations",
+ "apihelp-query+babel-example-1": "Obtenir les informations de Babel pour l’utilisateur <kbd>Example</kbd>"
}
diff --git a/MLEB/Babel/i18n/frp.json b/MLEB/Babel/i18n/frp.json
index f38e8268..6cb72fd6 100644
--- a/MLEB/Babel/i18n/frp.json
+++ b/MLEB/Babel/i18n/frp.json
@@ -8,7 +8,6 @@
"babel-desc": "Apond la fonccion du parsor <code>#babel</code> que pèrmèt la crèacion ôtomatica d’una bouèta usanciér Babél avouéc la possibilitât d’y encllure des modèlos locals.",
"babel-url": "Project:Babél",
"babel-footer-url": ":Category:Babél - Usanciérs per lengoua",
- "babel-autocreate-abort": "Lo nom d’usanciér que vos éd buchiê est utilisâ por fâre ôtomaticament les catègories [[$1|Babél]] et pôt pas étre encartâ.",
"babel-autocreate-reason": "Crèacion ôtomatica de la catègorie [[$1|Babél]].",
"babel-autocreate-text-levels": "Los usanciérs dens ceta catègorie ont endicâ qu’ont lo nivél $1 por la lengoua $2.",
"babel-autocreate-text-main": "Los usanciérs dens ceta catègorie ont endicâ qu’ont des cognessences en $1.",
diff --git a/MLEB/Babel/i18n/frr.json b/MLEB/Babel/i18n/frr.json
index 627f882b..fa10ae29 100644
--- a/MLEB/Babel/i18n/frr.json
+++ b/MLEB/Babel/i18n/frr.json
@@ -10,23 +10,22 @@
"babel-desc": "Saat det <code>#babel</code>-funktjuun diartu. Diarmä kön \"Babel\"-brükerfialen maaget, an uk aanj föörlaagen iinbünjen wurd.",
"babel-url": "Project:Babel",
"babel-footer-url": ":Category:Babel - Brükern efter spriak",
- "babel-autocreate-abort": "Didiar nööm woort för [[$1|Babel]]-kategoriin brükt an koon ei üs brükernööm nimen wurd.",
"babel-autocreate-reason": "Automaatisch mååged [[$1|Babel]]-kategorii.",
"babel-autocreate-text-levels": "Brükern uun detdiar kategorii haa weden üüb di peegel $1 faan det spriak $2.",
"babel-autocreate-text-main": "Brükern uun detdiar kategorii haa weden faan det spriak $1.",
- "babel-0": "Dideere brüker reet [[$1|ai]] ouer [[$2|$3]] (unti ferstoont dåt mån ma duuchti swiirihäide).",
- "babel-1": "Dideere brüker koon [[$1|lait]] [[$2|$3]] snååke en leese.",
- "babel-2": "Dideere brüker heet [[$1|ordi]] waasen foon [[$2|$3]].",
- "babel-3": "Dideere brüker reet ham ma [[$2|$3]] aw [[$1|huuge]] schuchte.",
- "babel-4": "Dideere brüker reet ham ma [[$2|$3]] aw [[$1|mamenspräklike]] schuchte.",
- "babel-5": "Dideere brüker reet ham ma [[$2|$3]] aw [[$1|profäsjonäle]] schuchte.",
- "babel-N": "Dideere brüker snååket [[$2|$3]] as [[$1|mamenspräke]].",
- "babel-0-n": "Dideere brüker reet ham [[$1|ai]] ma [[$2|Nordfriisk]] (unti ferstoont dåt mån ma duuchti swiirihäide).",
- "babel-1-n": "Dideere brüker koon [[$1|lait]] [[$2|Nordfriisk]] snååke en leese.",
- "babel-2-n": "Dideere brüker heet [[$1|ordi]] waasen foon [[$2|Nordfriisk]].",
- "babel-3-n": "Dideere brüker reet ham ma [[$2|Nordfriisk]] aw [[$1|huuge]] schuchte.",
- "babel-4-n": "Dideere brüker reet ham ma [[$2|Nordfriisk]] aw [[$1|mamenspräklike]] schuchte.",
- "babel-5-n": "Dideere brüker reet ham ma [[$2|Nordfriisk]] aw [[$1|profäsjonäle]] schuchte.",
- "babel-N-n": "Dideere brüker snååket [[$2|Nordfriisk]] as [[$1|mamenspräke]].",
+ "babel-0": "{{GENDER:$4|Didiar brüker}} hää [[$1|nian]] weden faan [[$2|$3]] (of ferstäänt det man jüst so).",
+ "babel-1": "{{GENDER:$4|Didiar brüker}} hää [[$1|en betj]] weden faan [[$2|$3]].",
+ "babel-2": "{{GENDER:$4|Didiar brüker}} koon [[$1|en betj]] lees an skriiw üüb [[$2|$3]].",
+ "babel-3": "{{GENDER:$4|Didiar brüker}} koon [[$1|gud]] lees an skriiw üüb [[$2|$3]].",
+ "babel-4": "{{GENDER:$4|Didiar brüker}} snaaket [[$2|$3]], bal üs wan't sin [[$1|mamenspriak]] wiar.",
+ "babel-5": "{{GENDER:$4|Didiar brüker}} hää en [[$1|auer a miaten]] gud weden faan [[$2|$3]].",
+ "babel-N": "{{GENDER:$4|Didiar brüker}} snaaket [[$2|$3]] üs [[$1|mamenspriak]].",
+ "babel-0-n": "{{GENDER:$4|Didiar brüker}} hää [[$1|nian]] weden faan [[$2|Nordfriisk]] (of ferstäänt det man jüst so).",
+ "babel-1-n": "{{GENDER:$4|Didiar brüker}} hää [[$1|en betj]] weden faan [[$2|Nordfriisk]].",
+ "babel-2-n": "{{GENDER:$4|Didiar brüker}} koon [[$1|en betj]] lees an skriiw üüb [[$2|Nordfriisk]].",
+ "babel-3-n": "{{GENDER:$4|Didiar brüker}} koon [[$1|gud]] lees an skriiw üüb [[$2|Nordfriisk]].",
+ "babel-4-n": "{{GENDER:$4|Didiar brüker}} snaaket [[$2|Nordfriisk]], bal üs wan't sin [[$1|mamenspriak]] wiar.",
+ "babel-5-n": "{{GENDER:$4|Didiar brüker}} hää en [[$1|auer a miaten]] gud weden faan [[$2|Nordfriisk]].",
+ "babel-N-n": "{{GENDER:$4|Didiar brüker}} snaaket [[$2|Nordfriisk]] üs [[$1|mamenspriak]].",
"babel-footer": "Brükern efter spriak"
}
diff --git a/MLEB/Babel/i18n/fur.json b/MLEB/Babel/i18n/fur.json
index ae0cf3d7..e79e204f 100644
--- a/MLEB/Babel/i18n/fur.json
+++ b/MLEB/Babel/i18n/fur.json
@@ -8,7 +8,6 @@
"babel-desc": "Zonte la funzion di analisi <code>#babel</code> par permeti la generazion in automatic di une colone box utent babel, cu la pussibitât di includi modei personalizâts",
"babel-url": "Project:Babel",
"babel-footer-url": ":Category:Utents par lenghe",
- "babel-autocreate-abort": "Il non utent specificât al è doprât pe creazion automatiche di categoriis [[$1|Babel]] e nol pues jessi regjistrât.",
"babel-autocreate-reason": "Creant in automatic la categorie di [[$1|Babel]].",
"babel-autocreate-text-levels": "I utents in cheste categorie a disin di vê un nivel $1 pe lenghe $2.",
"babel-autocreate-text-main": "I utents in cheste categorie a disin di cognossi la lenghe $1",
diff --git a/MLEB/Babel/i18n/fy.json b/MLEB/Babel/i18n/fy.json
index c85fffb3..7665b1a3 100644
--- a/MLEB/Babel/i18n/fy.json
+++ b/MLEB/Babel/i18n/fy.json
@@ -9,7 +9,6 @@
"babel": "Babel-meidoggersynformaasje",
"babel-desc": "Foeget de <code>#babel</code> automatyske opdielerfunksje ta om it automatysk meitsjen fan in Babel meidoggerskolom ta stean mei de mooglikheid om eigen berjochten ta te foegjen.",
"babel-url": "Project:Babel",
- "babel-autocreate-abort": "De meidoggersnamme dy't jo opjûn hawwe wurdt al brûkt foar it automatysk meitsjen fan [[$1|Babel]]-kategoryen en kin net oanmeld wurden.",
"babel-autocreate-reason": "Makket automatysk in [[$1|Babel]]-kategory oan.",
"babel-autocreate-text-levels": "Meidoggers yn dizze kategory jouwe oan dat harren taalkennis foar $2 $1 is.",
"babel-autocreate-text-main": "Meidoggers yn dizze kategory jouwe oan dat hja kennis fan $1 hawwe.",
diff --git a/MLEB/Babel/i18n/ga.json b/MLEB/Babel/i18n/ga.json
index 70427c4d..f9e6c4d6 100644
--- a/MLEB/Babel/i18n/ga.json
+++ b/MLEB/Babel/i18n/ga.json
@@ -11,7 +11,6 @@
"babel": "Eolas d'úsáideoirí maidir le Báibil",
"babel-desc": "Cruthaíonn sé seo an fheidhm pharsálaí <code>#babel</code> a chuireann ar chumas an úsáideora colún a ghiniúint go huathoibríoch i mbosca Báibil agus teimpléid saincheaptha a chur ann.",
"babel-url": "Project:Báibil",
- "babel-autocreate-abort": "Ní féidir leat an t-ainm úsáideora a shonraigh tú a chlárú, mar úsáidtear é chun catagóirí [[$1|Báibil]] a uathchruthú.",
"babel-autocreate-reason": "Leathanach catagóire [[$1|Báibil]] á uathchruthú.",
"babel-autocreate-text-levels": "Cuireann úsáideoirí sa chatagóir seo in iúl go bhfuil an scil-leibhéal $1 acu maidir leis an dteanga seo, $2.",
"babel-autocreate-text-main": "Tá $1 ag na húsáideoirí seo.",
diff --git a/MLEB/Babel/i18n/gan.json b/MLEB/Babel/i18n/gan.json
index fb256583..1b83d0bc 100644
--- a/MLEB/Babel/i18n/gan.json
+++ b/MLEB/Babel/i18n/gan.json
@@ -1,28 +1,28 @@
{
- "@metadata": {
- "authors": [
- "Symane"
- ]
- },
- "babel": "巴別用戶資料",
- "babel-desc": "加隻<code>#babel</code>處理功能去容許自動產生一隻巴別用戶盒欄,同到含到可自定化嗰模板",
- "babel-url": "Project:巴別",
- "babel-autocreate-abort": "倷特試要求嗰用戶名已經自動係[[$1|Babel]]嗰分類,咁就登記不正。",
- "babel-autocreate-reason": "自動建立[[$1|Babel]]分類頁。",
- "babel-autocreate-text-levels": "箇隻分類嗰用戶都有 $2 語言嗰 $1 水平嗰交流能力。",
- "babel-autocreate-text-main": "箇隻分類嗰用戶都有 $1 語言嗰知識。",
- "babel-0": "箇隻用戶[[$1|冇滴子]][[$2|$3]]嗰水平(或者好艱難去聽轉佢)。",
- "babel-1": "箇隻用戶有[[$1|滴把子]]嗰[[$2|$3]]水平。",
- "babel-2": "箇隻用戶有[[$1|一般子]]嗰[[$2|$3]]水平。",
- "babel-3": "箇隻用戶有[[$1|蠻靚]]嗰[[$2|$3]]水平。",
- "babel-4": "箇隻用戶有[[$1|好喫價]]嗰[[$2|$3]]水平。",
- "babel-5": "箇隻用戶有[[$1|專業]]嗰[[$2|$3]]能力。",
- "babel-N": "箇隻用戶曉得[[$2|$3]]嗰[[$1|母語]]。",
- "babel-0-n": "箇隻用戶[[$1|冇滴子]][[$2|贛語]]嗰水平(或者好艱難去聽轉佢)。",
- "babel-1-n": "箇隻用戶有[[$1|滴把子]]嗰[[$2|贛語]]水平。",
- "babel-2-n": "箇隻用戶有[[$1|一般子]]嗰[[$2|贛語]]水平。",
- "babel-3-n": "箇隻用戶有[[$1|蠻靚]]嗰[[$2|贛語]]水平。",
- "babel-4-n": "箇隻用戶有[[$1|好喫價]]嗰[[$2|贛語]]水平。",
- "babel-5-n": "箇隻用戶有[[$1|專業]]嗰[[$2|贛語]]能力。",
- "babel-N-n": "箇隻用戶曉得[[$2|贛語]]嗰[[$1|母語]]。"
+ "@metadata": {
+ "authors": [
+ "Symane"
+ ]
+ },
+ "babel": "巴別用戶資料",
+ "babel-desc": "加隻<code>#babel</code>處理功能去容許自動產生一隻巴別用戶盒欄,同到含到可自定化嗰模板",
+ "babel-url": "Project:巴別",
+ "babel-autocreate-abort": "倷特試要求嗰用戶名已經自動係[[$1|Babel]]嗰分類,咁就登記不正。",
+ "babel-autocreate-reason": "自動建立[[$1|Babel]]分類頁。",
+ "babel-autocreate-text-levels": "箇隻分類嗰用戶都有 $2 語言嗰 $1 水平嗰交流能力。",
+ "babel-autocreate-text-main": "箇隻分類嗰用戶都有 $1 語言嗰知識。",
+ "babel-0": "箇隻用戶[[$1|冇滴子]][[$2|$3]]嗰水平(或者好艱難去聽轉佢)。",
+ "babel-1": "箇隻用戶有[[$1|滴把子]]嗰[[$2|$3]]水平。",
+ "babel-2": "箇隻用戶有[[$1|一般子]]嗰[[$2|$3]]水平。",
+ "babel-3": "箇隻用戶有[[$1|蠻靚]]嗰[[$2|$3]]水平。",
+ "babel-4": "箇隻用戶有[[$1|好喫價]]嗰[[$2|$3]]水平。",
+ "babel-5": "箇隻用戶有[[$1|專業]]嗰[[$2|$3]]能力。",
+ "babel-N": "箇隻用戶曉得[[$2|$3]]嗰[[$1|母語]]。",
+ "babel-0-n": "箇隻用戶[[$1|冇滴子]][[$2|贛語]]嗰水平(或者好艱難去聽轉佢)。",
+ "babel-1-n": "箇隻用戶有[[$1|滴把子]]嗰[[$2|贛語]]水平。",
+ "babel-2-n": "箇隻用戶有[[$1|一般子]]嗰[[$2|贛語]]水平。",
+ "babel-3-n": "箇隻用戶有[[$1|蠻靚]]嗰[[$2|贛語]]水平。",
+ "babel-4-n": "箇隻用戶有[[$1|好喫價]]嗰[[$2|贛語]]水平。",
+ "babel-5-n": "箇隻用戶有[[$1|專業]]嗰[[$2|贛語]]能力。",
+ "babel-N-n": "箇隻用戶曉得[[$2|贛語]]嗰[[$1|母語]]。"
} \ No newline at end of file
diff --git a/MLEB/Babel/i18n/gbz.json b/MLEB/Babel/i18n/gbz.json
index 9bb529d9..e9bebeeb 100644
--- a/MLEB/Babel/i18n/gbz.json
+++ b/MLEB/Babel/i18n/gbz.json
@@ -4,6 +4,19 @@
"Mjbmr"
]
},
- "babel-1": "Mā ror-ber-e [[$2|$3]] rā [[$1|yānog-e]] pāmā.",
- "babel-1-n": "Mā ror-ber-e [[$2|Dari-e Mazdeyasnā]] rā [[$1|yānog-e]] pāmā."
+ "babel-0": "In karber [[$2|$3]] rā [[$1|na]] pama yā došvār pama.",
+ "babel-1": "In karber [[$2|$3]] rā [[$1|kem]] pama.",
+ "babel-2": "In karber [[$2|$3]] rā [[$1|miāngin]] pama.",
+ "babel-3": "In karber [[$2|$3]] rā [[$1|pišrapta]] pama.",
+ "babel-4": "In karber [[$2|$3]] rā [[$1|dar nezdiki zebun māderi]] pama.",
+ "babel-5": "In karber [[$2|$3]] rā [[$1|ziad]] pama.",
+ "babel-N": "In karber [[$2|$3]] rā [[$1|māderzādi]] pama.",
+ "babel-0-n": "In karber [[$2|Dari-e Mazdeyasnā]] rā [[$1|na]] pama yā došvār pama.",
+ "babel-1-n": "In karber [[$2|Dari-e Mazdeyasnā]] rā [[$1|kem]] pama.",
+ "babel-2-n": "In karber [[$2|Dari-e Mazdeyasnā]] rā [[$1|miāngin]] pama.",
+ "babel-3-n": "In karber [[$2|Dari-e Mazdeyasnā]] rā [[$1|pišrapta]] pama.",
+ "babel-4-n": "In karber [[$2|Dari-e Mazdeyasnā]] rā [[$1|dar nezdiki zebun māderi]] pama.",
+ "babel-5-n": "In karber [[$2|Dari-e Mazdeyasnā]] rā [[$1|ziad]] pama.",
+ "babel-N-n": "In karber [[$2|Dari-e Mazdeyasnā]] rā [[$1|māderzādi]] pama.",
+ "babel-footer": "Karberhā bar pāye zabān"
}
diff --git a/MLEB/Babel/i18n/gd.json b/MLEB/Babel/i18n/gd.json
index 2789798a..c2681931 100644
--- a/MLEB/Babel/i18n/gd.json
+++ b/MLEB/Babel/i18n/gd.json
@@ -12,7 +12,6 @@
"babel-desc": "Cuiridh seo am parser function <code>#babel</code> ris an duilleag gus an dèid colbh babel a chruthachadh mun chleachdaiche seo, le comas gus teamplaidean sònraichte a ghabhail a-steach.",
"babel-url": "Project:Babel",
"babel-footer-url": ":Category:Babel - Cleachdaichean a-rèir cànain",
- "babel-autocreate-abort": "Tha an t-ainm-cleachdaiche a shònraich thu 'ga chleachdadh airson fèin-chrutheachadh na roinne [[$1|Babel]] agus cha ghabh a chlàrachadh.",
"babel-autocreate-reason": "A' cruthachadh duilleag roinne [[$1|Babel]] leis fhèin.",
"babel-autocreate-text-levels": "Tha na cleachdaichean san roinn seo ag innse gu bheil comas ìre $1 aca ann an $2.",
"babel-autocreate-text-main": "Tha na cleachdaichean san roinn seo ag innse gu bheil iad eòlach air a' chànan a leanas: $1.",
diff --git a/MLEB/Babel/i18n/gl.json b/MLEB/Babel/i18n/gl.json
index 5eea3cfa..f12093bc 100644
--- a/MLEB/Babel/i18n/gl.json
+++ b/MLEB/Babel/i18n/gl.json
@@ -1,17 +1,17 @@
{
"@metadata": {
"authors": [
- "Toliño"
+ "Toliño",
+ "Elisardojm"
]
},
"babel": "Información Babel {{GENDER:$1|do usuario|da usuaria}}",
"babel-desc": "Engade a función analítica <code>#babel</code> para permitir a xeración automática dunha caixa de usuario Babel coa posibilidade de incluír modelos personalizados",
"babel-url": "Project:Babel",
"babel-footer-url": ":Categoría:Babel - Usuarios por lingua",
- "babel-autocreate-abort": "O nome de usuario especificado é usado para a creación automática de categorías [[$1|Babel]], polo que non pode ser rexistrado.",
"babel-autocreate-reason": "Creación automática da categoría [[$1|Babel]].",
"babel-autocreate-text-levels": "Os usuarios que están nesta categoría teñen un nivel $1 de destreza en lingua $2.",
- "babel-autocreate-text-main": "Os usuarios desta categoría teñen un alto coñecemento da lingua $1.",
+ "babel-autocreate-text-main": "Os usuarios desta categoría indican o seu coñecemento da lingua $1.",
"babel-0": "{{GENDER:$4|Este usuario|Esta usuaria}} [[$1|non]] ten ningún coñecemento de [[$2|$3]] (ou ten dificultades para entendelo).",
"babel-1": "{{GENDER:$4|Este usuario|Esta usuaria}} ten un coñecemento [[$1|básico]] de [[$2|$3]].",
"babel-2": "{{GENDER:$4|Este usuario|Esta usuaria}} ten un coñecemento [[$1|intermedio]] de [[$2|$3]].",
@@ -26,5 +26,9 @@
"babel-4-n": "{{GENDER:$4|Este usuario|Esta usuaria}} ten un coñecemento [[$1|similar ao dun nativo]] de [[$2|galego]].",
"babel-5-n": "{{GENDER:$4|Este usuario|Esta usuaria}} ten un coñecemento [[$1|profesional]] de [[$2|galego]].",
"babel-N-n": "{{GENDER:$4|Este usuario|Esta usuaria}} é {{GENDER:$4|un|unha}} falante [[$1|{{GENDER:$4|nativo|nativa}}]] de [[$2|galego]].",
- "babel-footer": "Usuarios por lingua"
+ "babel-footer": "Usuarios por lingua",
+ "apihelp-query+babel-description": "Obter información sobre as linguas que o usuario coñece",
+ "apihelp-query+babel-summary": "Obter información sobre as linguas que coñece o usuario",
+ "apihelp-query+babel-param-user": "Usuario do cal obter a información",
+ "apihelp-query+babel-example-1": "Obtener a información de Babel do usuario <kbd>Example</kbd>"
}
diff --git a/MLEB/Babel/i18n/gom-latn.json b/MLEB/Babel/i18n/gom-latn.json
index acf764c9..02ee51f9 100644
--- a/MLEB/Babel/i18n/gom-latn.json
+++ b/MLEB/Babel/i18n/gom-latn.json
@@ -8,7 +8,7 @@
"babel-url": "Project:Babel",
"babel-footer-url": ":Category:Babel - Bhase pormonnem vapurpi",
"babel-autocreate-text-levels": "Hea vorgacheo vapurpeanim khunnaila ki $2 bhasen kushaltaiche $1 pavlar asat",
- "babel-autocreate-text-main": "Hea vorgacheo vapurpeanim khunnaila ki tenka $1 bhas kollta.",
+ "babel-autocreate-text-main": "Hea vorgacheo vapurpeanim tenka $1 bhas kitli kollta ti khunnaila.",
"babel-0": "Hea vangddiak [[$2|$3]] [[$1|kollna]]",
"babel-1": "Hea vangddiak [[$1|thodi]] [[$2|$3]] kollta",
"babel-2": "Hea vangddeak [[$2|$3]] [[$1|sadhi]] sthorar kollta",
diff --git a/MLEB/Babel/i18n/gor.json b/MLEB/Babel/i18n/gor.json
index 2cc08931..1f63939c 100644
--- a/MLEB/Babel/i18n/gor.json
+++ b/MLEB/Babel/i18n/gor.json
@@ -4,5 +4,5 @@
"Marwan Mohamad"
]
},
- "babel-url": "Proyek Babel"
+ "babel-url": "Project:Babel"
}
diff --git a/MLEB/Babel/i18n/got.json b/MLEB/Babel/i18n/got.json
index 8acbeaa3..9d29caed 100644
--- a/MLEB/Babel/i18n/got.json
+++ b/MLEB/Babel/i18n/got.json
@@ -1,8 +1,22 @@
{
- "@metadata": {
- "authors": [
- "Purodha"
- ]
- },
- "babel-url": "Project:Babilu"
-} \ No newline at end of file
+ "@metadata": {
+ "authors": [
+ "Purodha",
+ "Gothicspeaker",
+ "Od1n"
+ ]
+ },
+ "babel-url": "Project:𐌱𐌰𐌱𐍅𐌻𐌰𐌿𐌽",
+ "babel-0": "{{GENDER:$4|𐍃𐌰 𐌱𐍂𐌿𐌺𐌾𐌰𐌽𐌳𐍃|𐍃𐍉 𐌱𐍂𐌿𐌺𐌾𐌰𐌽𐌳𐌹}} [[$1|𐌽𐌹]] 𐌷𐌰𐌱𐌰𐌹𐌸 𐌺𐌿𐌽𐌸𐌹 𐍂𐌰𐌶𐌳𐍉𐍃 [[$2|$3]] (𐌸𐌰𐌿 𐍆𐍂𐌰𐌸𐌾𐌹𐌸 𐌸𐌹𐌶𐌰𐌹 𐌼𐌹𐌸 𐍆𐌹𐌻𐌿 𐌺𐌰𐌿𐍂𐌴𐌹𐌽).",
+ "babel-1": "𐍃𐌰 𐌽𐌹𐌿𐍄𐌰𐌽𐌳𐍃 𐍂𐍉𐌳𐌴𐌹𐌸 [[$1|𐌿𐌱𐌹𐌻𐌰𐌱𐌰]] [[$2|$3]].",
+ "babel-2": "{{GENDER:$4|𐍃𐌰 𐌱𐍂𐌿𐌺𐌾𐌰𐌽𐌳𐍃|𐍃𐍉 𐌱𐍂𐌿𐌺𐌾𐌰𐌽𐌳𐌹}} 𐌷𐌰𐌱𐌰𐌹𐌸 [[$1|𐌼𐌹𐌸 𐌲𐍉𐌳𐌰𐌹 𐌼𐌰𐌷𐍄𐌰𐌹]] 𐌺𐌿𐌽𐌸𐌹 𐍂𐌰𐌶𐌳𐍉𐍃 [[$2|$3]].",
+ "babel-3": "{{GENDER:$4|𐍃𐌰 𐌱𐍂𐌿𐌺𐌾𐌰𐌽𐌳𐍃|𐍃𐍉 𐌱𐍂𐌿𐌺𐌾𐌰𐌽𐌳𐌹}} 𐌷𐌰𐌱𐌰𐌹𐌸 [[$1|𐍆𐌹𐌻𐌿]] 𐌺𐌿𐌽𐌸𐌹 𐍂𐌰𐌶𐌳𐍉𐍃 [[$2|$3]].",
+ "babel-4": "{{GENDER:$4|𐍃𐌰 𐌱𐍂𐌿𐌺𐌾𐌰𐌽𐌳𐍃|𐍃𐍉 𐌱𐍂𐌿𐌺𐌾𐌰𐌽𐌳𐌹}} 𐌽𐌴𐍈𐌰 𐌷𐌰𐌱𐌰𐌹𐌸 [[$1|𐌺𐌿𐌽𐌸𐌹 𐍃𐍅𐌰𐍃𐍅𐌴 𐍆𐍂𐌿𐌼𐌹𐍃𐍄𐍃 𐍂𐍉𐌳𐌾𐌰𐌽𐌳𐍃]] 𐍂𐌰𐌶𐌳𐍉𐍃 [[$2|$3]].",
+ "babel-N": "𐍃𐌰 𐌽𐌹𐌿𐍄𐌰𐌽𐌳𐍃 𐍂𐍉𐌳𐌴𐌹𐌸 [[$2|$3]] 𐍃𐍅𐌴 [[$1|𐍅𐌹𐍃𐌿𐌲𐌿𐍄𐌰]].",
+ "babel-0-n": "{{GENDER:$4|𐍃𐌰 𐌱𐍂𐌿𐌺𐌾𐌰𐌽𐌳𐍃|𐍃𐍉 𐌱𐍂𐌿𐌺𐌾𐌰𐌽𐌳𐌹}} [[$1|𐌽𐌹]] 𐌷𐌰𐌱𐌰𐌹𐌸 𐌺𐌿𐌽𐌸𐌹 [[$2|𐌲𐌿𐍄𐌹𐍃𐌺𐌰𐌹𐌶𐍉𐍃]] 𐍂𐌰𐌶𐌳𐍉𐍃 (𐌸𐌰𐌿 𐍆𐍂𐌰𐌸𐌾𐌹𐌸 𐌸𐌹𐌶𐌰𐌹 𐌼𐌹𐌸 𐍆𐌹𐌻𐌿 𐌺𐌰𐌿𐍂𐌴𐌹𐌽).",
+ "babel-1-n": "𐍃𐌰 𐌽𐌹𐌿𐍄𐌰𐌽𐌳𐍃 𐍂𐍉𐌳𐌴𐌹𐌸 [[$1|𐌿𐌱𐌹𐌻𐌰𐌱𐌰]] [[$2|𐌲𐌿𐍄𐍂𐌰𐌶𐌳𐌰𐌹]].",
+ "babel-2-n": "{{GENDER:$4|𐍃𐌰 𐌱𐍂𐌿𐌺𐌾𐌰𐌽𐌳𐍃|𐍃𐍉 𐌱𐍂𐌿𐌺𐌾𐌰𐌽𐌳𐌹}} 𐌷𐌰𐌱𐌰𐌹𐌸 [[$1|𐌲𐍉𐌳𐌰𐌹𐌼 𐌼𐌰𐌷𐍄𐌹𐌼]] 𐌺𐌿𐌽𐌸𐌹 [[$2|𐌲𐌿𐍄𐌹𐍃𐌺𐌰𐌹𐌶𐍉𐍃 𐍂𐌰𐌶𐌳𐍉𐍃]].",
+ "babel-3-n": "𐍃𐌰 𐌽𐌹𐌿𐍄𐌰𐌽𐌳𐍃 𐍂𐍉𐌳𐌴𐌹𐌸 [[$1|𐍅𐌰𐌹𐌻𐌰]] [[$2|𐌲𐌿𐍄𐍂𐌰𐌶𐌳𐌰𐌹]].",
+ "babel-4-n": "{{GENDER:$4|𐍃𐌰 𐌱𐍂𐌿𐌺𐌾𐌰𐌽𐌳𐍃|𐍃𐍉 𐌱𐍂𐌿𐌺𐌾𐌰𐌽𐌳𐌹}} 𐌷𐌰𐌱𐌰𐌹𐌸 𐌺𐌿𐌽𐌸𐌹 [[$1|𐌽𐌴𐍈𐌰 𐍃𐍅𐌰 𐌼𐌰𐌽𐍃 𐌸𐌰𐌹𐌴𐌹 𐍂𐍉𐌳𐌾𐌰𐌽𐌳 𐌹𐌽𐌿𐌷 𐌰𐌹𐍂𐌶𐌴𐌹𐌽𐍃]] [[$2|𐌲𐌿𐍄𐌹𐍃𐌺𐌰𐌹 𐍂𐌰𐌶𐌳𐌰𐌹]].",
+ "babel-N-n": "𐍃𐌰 𐌽𐌹𐌿𐍄𐌰𐌽𐌳𐍃 𐍂𐍉𐌳𐌴𐌹𐌸 [[$2|𐌲𐌿𐍄𐍂𐌰𐌶𐌳𐌰𐌹]] 𐍃𐍅𐌴 [[$1|𐍅𐌹𐍃𐌿𐌲𐌿𐍄𐌰]]."
+}
diff --git a/MLEB/Babel/i18n/grc.json b/MLEB/Babel/i18n/grc.json
index e3c1fa38..cf584dc4 100644
--- a/MLEB/Babel/i18n/grc.json
+++ b/MLEB/Babel/i18n/grc.json
@@ -9,7 +9,6 @@
"babel": "Πληροφορίαι \"Βαβὲλ\" Χρωμένου",
"babel-desc": "Προσθέτει τὴν <code>#babel</code> λεξιαναλυτικὴν λειτουργίαν ἐπιτρέπουσαν τὴν αὐτόματον δημιουργίαν στήλης κυτίων χρωμένου τινός, ἐχούσης τὴν δυνατότητα περίληψεως συνήθων προτύπων",
"babel-url": "Project:Βαβέλ",
- "babel-autocreate-abort": "Tὸ ὄνομα χρωμένου τὸ καθωρισμένον ὑπἔσοῦ χρήσιμον ἐστὶ ἐν τῇ αὐτομάτῳ ποιήσει κατηγοριῶν [[$1|Βαβὲλ]] ἄρα οὐκ ἔξεστι τούτῳ ἐγγεγραμμένον ἐστίν.",
"babel-autocreate-reason": "Ποιεῖν αύτομάτως δέλτον κατηγοριῶν [[$1|Βαβέλ]].",
"babel-autocreate-text-levels": "Χρώμενοι ἐν τοιαύτῃ τῇ κατηγορίᾳ δηλοῦσι τὴν ἑαυτῶν κλίμακα ἱκανοτητος $1 διὰ τὴν γλῶσσαν $2.",
"babel-autocreate-text-main": "Χρώμενοι ἐν τοιαύτῃ τῇ κατηγορίᾳ δηλοῦσι τὴν ἑαυτῶν γνῶσιν τῆς γλώσσης $1.",
diff --git a/MLEB/Babel/i18n/gsw.json b/MLEB/Babel/i18n/gsw.json
index d5648b7b..cd1ab513 100644
--- a/MLEB/Babel/i18n/gsw.json
+++ b/MLEB/Babel/i18n/gsw.json
@@ -9,7 +9,6 @@
"babel-desc": "Ergänzt d <code>#babel</code>-Parserfunktion fir s automatisch Aalege vu Babel-Benutzerchäschtli-Zyyle mit dr Megligkeit, eigeni Vorlagen yyzbinde",
"babel-url": "Project:Babel",
"babel-footer-url": ":Category:Babel - Benutzer no Sproch",
- "babel-autocreate-abort": "Dr uusgwählt Benutzername wird fir s automatisch Aalege vu [[$1|Babel]]-Kategorie bruucht un cha nit regischtriert wäre.",
"babel-autocreate-reason": "Automatisch aagleiti [[$1|Babel]]-Kategorie.",
"babel-autocreate-text-levels": "Benutzer in däre Kategorii hän s Chänntnis-Level $1 fir d Sproch $2.",
"babel-autocreate-text-main": "Benutzer in däre Kategorii hän Chänntnis vu dr Sproch $1.",
diff --git a/MLEB/Babel/i18n/gu.json b/MLEB/Babel/i18n/gu.json
index a49dbadc..a7e676c4 100644
--- a/MLEB/Babel/i18n/gu.json
+++ b/MLEB/Babel/i18n/gu.json
@@ -11,10 +11,9 @@
"babel-desc": "કસ્ટમ ઢાંચા સહીત, સ્વસંચાલિત બબેલ સભ્યબોકસ કૉલમ બનાવવા માટે <code>#babel</code> પાર્સર વિધેય ઉમેરે છે.",
"babel-url": "Project:Babel",
"babel-footer-url": ":Category:Babel - ભાષાવાર સભ્યો",
- "babel-autocreate-abort": "તમે જે સભ્યનામ દર્શાવ્યું છે તે [[$1|બબેલ]] શ્રેણીના સ્વયંભુ પ્રાકટ્ય માટે આરક્ષિત છે અને તે નામ પર નોંધણી શક્ય નથી.",
- "babel-autocreate-reason": "[[$1|બબેલ]]નું સ્વયંભુ પ્રાકટ્ય થઇ રહ્યું છે.",
+ "babel-autocreate-reason": "આપમેળે [[$1|બાબેલ]] શ્રેણી પાનું બનાવી રહ્યા છીએ.",
"babel-autocreate-text-levels": "આ શ્રેણીના સભ્યોને $2 ભાષામાં $1 જેટલી પ્રવીણતા છે.",
- "babel-autocreate-text-main": "આ શ્રેણીના સભ્યો $1 ભાષા જાણે છે.",
+ "babel-autocreate-text-main": "આ શ્રેણીના સભ્યો $1 ભાષાનું જ્ઞાન પ્રગટ કરે છે.",
"babel-0": "આ સભ્યને [[$2|$3]] ભાષાની [[$1|જરાપણ]] જાણકારી નથી (અથવા મહામુશ્કેલીથી સમજી શકે છે).",
"babel-1": "આ સભ્યને [[$2|$3]]ની [[$1|પ્રાથમિક]] જાણકારી છે.",
"babel-2": "આ સભ્યને [[$2|$3]]ની [[$1|થોડીક]] જાણકારી છે.",
@@ -29,5 +28,8 @@
"babel-4-n": "[[$2|ગુજરાતી]]ની આ સભ્યને [[$1|માતૃભાષા]] જેટલી જાણકારી છે.",
"babel-5-n": "આ સભ્યને [[$2|ગુજરાતી]] ઉપર [[$1|પ્રભુત્વ]] છે.",
"babel-N-n": "[[$2|ગુજરાતી]] આ સભ્યની [[$1|માતૃભાષા]] છે.",
- "babel-footer": "ભાષાવાર સભ્યો"
+ "babel-footer": "ભાષાવાર સભ્યો",
+ "apihelp-query+babel-description": "સભ્ય કઇ ભાષા જાણે છે તે વિશે માહિતી મેળવો",
+ "apihelp-query+babel-param-user": "સભ્ય આ વિશે માહિતી મેળવશે",
+ "apihelp-query+babel-example-1": "સભ્ય માટે બાબેલ માહિતી મેળવો <kbd>ઉદાહરણ</kbd>"
}
diff --git a/MLEB/Babel/i18n/gv.json b/MLEB/Babel/i18n/gv.json
index 1dacdd2e..fd01785f 100644
--- a/MLEB/Babel/i18n/gv.json
+++ b/MLEB/Babel/i18n/gv.json
@@ -7,7 +7,6 @@
},
"babel": "Fys ymmydeyr Babel",
"babel-url": "Project:Babel",
- "babel-autocreate-abort": "Yn ennym ymmydeyr hug shiu stiagh, cha nod shiu goaill eh; ta ymmyd jeant jeh son hene-chrooaght ronnaghyn [[$1|Babel]].",
"babel-autocreate-reason": "Croo duillag ronney [[$1|Babel]] dy seyr-obbragh.",
"babel-autocreate-text-levels": "Ymmydeyryn ayns y ronneys shoh, t'ad cowraghey dy vel schlei $1 oc er $2.",
"babel-autocreate-text-main": "Ymmydeyryn ayns y ronney shoh, t'ad cowraghey dy vel $1 ennagh oc.",
diff --git a/MLEB/Babel/i18n/haw.json b/MLEB/Babel/i18n/haw.json
index 2eb19c4e..691d1c8b 100644
--- a/MLEB/Babel/i18n/haw.json
+++ b/MLEB/Babel/i18n/haw.json
@@ -9,7 +9,6 @@
"babel-desc": "Ho‘ohui i ka <code>#babel</code> hana pāsā e ho‘oku‘u i ka hikahana o ke kolamu pahu mea ho‘ohana Babel, me ka hiki ʻana e hoʻohui i nā anakuhi pilikino",
"babel-url": "Project:Babel",
"babel-footer-url": ":Mahele:Babel - Mea hoʻohana e ka ʻōlelo",
- "babel-autocreate-abort": "Ke hoʻohana nei i ka inoa mea hoʻohana no ka māhele hikahana [[$1|Babel]] a hiki ʻole ke kāinoa ʻia.",
"babel-autocreate-reason": "Ke hikahana nei i ka ʻaoʻao mahele [[$1|Babel]].",
"babel-autocreate-text-levels": "Hōʻike i nā mea hoʻohana i loko o kēia māhele, loaʻa iā lākou i ke kalamania mākau $1 no ka ʻōlelo $2.",
"babel-autocreate-text-main": "Hōʻike i nā mea hoʻohana i loko o kēia māhele, loaʻa iā lākou i ka ʻike o ka ʻōlelo $1.",
diff --git a/MLEB/Babel/i18n/he.json b/MLEB/Babel/i18n/he.json
index 1af2d818..fbc2b5fb 100644
--- a/MLEB/Babel/i18n/he.json
+++ b/MLEB/Babel/i18n/he.json
@@ -10,13 +10,12 @@
]
},
"babel": "מידע על כישורי שפה של המשתמש",
- "babel-desc": "הוספת הפונקציה <code>#babel</code> כדי לאפשר יצירה אוטומטית של תיבות משתמש לציון כישורי שפה, עם אפשרות להכללת תבניות מותאמות אישית",
+ "babel-desc": "הוספת הפונקציה <code dir=\"ltr\">#babel</code> כדי לאפשר יצירה אוטומטית של תיבות משתמש לציון כישורי שפה, עם אפשרות להכללת תבניות מותאמות אישית",
"babel-url": "Project:כישורי שפה",
"babel-footer-url": ":קטגוריה:בבל: משתמשים לפי שפה",
- "babel-autocreate-abort": "שם המשתמש שציינת משמש ליצירה אוטומטית של קטגוריות [[$1|כישורי שפה]], ולכן לא ניתן לרשום אותו.",
"babel-autocreate-reason": "מתבצעת יצירה אוטומטית של דף קטגוריה ל[[$1|כישורי שפה]].",
"babel-autocreate-text-levels": "המשתמשים בקטגוריה זו מציינים כי הרמה שלהם ב{{GRAMMAR:תחילית|$2}} היא $1.",
- "babel-autocreate-text-main": "המשתמשים בקטגוריה זו מציינים כי יש להם ידע ב{{GRAMMAR:תחילית|$1}}.",
+ "babel-autocreate-text-main": "המשתמשים בקטגוריה זו מציינים את הידע שלהם ב{{GRAMMAR:תחילית|$1}}.",
"babel-autocreate-user": "יצירה אוטומטית של כישורי שפה",
"babel-0": "{{GENDER:$4|משתמש זה [[$1|אינו מבין]]|משתמשת זו [[$1|אינה מבינה]]}} [[$2|$3]] (או {{GENDER:$4|מבין|מבינה}} אותה בקשיים ניכרים).",
"babel-1": "{{GENDER:$4|משתמש זה יודע|משתמשת זו יודעת}} [[$2|$3]] ברמה [[$1|בסיסית]].",
@@ -32,5 +31,9 @@
"babel-4-n": "{{GENDER:$4|משתמש זה יודע|משתמשת זו יודעת}} [[$2|עברית]] ברמה [[$1|קרובה לשפת אם]].",
"babel-5-n": "{{GENDER:$4|משתמש זה יודע|משתמשת זו יודעת}} [[$2|עברית]] ברמה [[$1|מקצועית]].",
"babel-N-n": "{{GENDER:$4|משתמש זה דובר|משתמשת זו דוברת}} [[$2|עברית]] כ[[$1|שפת אם]].",
- "babel-footer": "משתמשים לפי שפה"
+ "babel-footer": "משתמשים לפי שפה",
+ "apihelp-query+babel-description": "קבלת מידע על שפות שהמשתמש יודע",
+ "apihelp-query+babel-summary": "קבלת מידע על השפות שהמשתמש יודע",
+ "apihelp-query+babel-param-user": "על איזה משתמש לקבל מידע",
+ "apihelp-query+babel-example-1": "קבלת מידע Babel על המשתמש <kbd>Example</kbd>"
}
diff --git a/MLEB/Babel/i18n/hi.json b/MLEB/Babel/i18n/hi.json
index 0466c011..b34608ec 100644
--- a/MLEB/Babel/i18n/hi.json
+++ b/MLEB/Babel/i18n/hi.json
@@ -5,31 +5,37 @@
"Bhawani Gautam Rhk",
"Kaustubh",
"Pooja.srivastava",
- "Siddhartha Ghai"
+ "Siddhartha Ghai",
+ "Sfic",
+ "Innocentbunny"
]
},
"babel": "बेबल सदस्य जानकारी",
"babel-desc": "बेबल सदस्य बक्से के कॉलम को स्वचालित रूप से बनाने के लिए <code>#babel</code> पार्सर फ़ंक्शन जोड़ता है। इसमें विशिष्ट सदस्य बक्से साँचे भी दिये जा सकते हैं।",
"babel-url": "Project:बेबल",
"babel-footer-url": ":Category:बेबल - भाषा के आधार पर सदस्य",
- "babel-autocreate-abort": "आपके द्वारा निर्दिष्ट सदस्यनाम [[$1|बेबल]] द्वारा स्वचालित श्रेणी निर्माण के लिए प्रयोग होता है और पंजीकृत नहीं किया जा सकता।",
"babel-autocreate-reason": "स्वचालित रूप से बनाया गया [[$1|बेबल]] श्रेणी पृष्ठ।",
"babel-autocreate-text-levels": "इस श्रेणी में श्रेणीबद्ध सदस्यों ने यह बताया है कि $2 भाषा में उनका कुशलता स्तर $1 है।",
"babel-autocreate-text-main": "इस श्रेणी में श्रेणीबद्ध सदस्यों ने यह बताया है कि उन्हें $1 भाषा का ज्ञान है।",
+ "babel-autocreate-user": "बबल स्वतःनिर्मित",
"babel-0": "इस सदस्य को [[$2|$3]] का ज्ञान [[$1|नहीं]] है (अथवा समझने में बहुत परेशानी होती है)।",
"babel-1": "इस सदस्य को [[$2|$3]] का [[$1|प्राथमिक]] ज्ञान है।",
"babel-2": "इस सदस्य को [[$2|$3]] का [[$1|मध्यम स्तर]] का ज्ञान है।",
"babel-3": "इस सदस्य को [[$2|$3]] का [[$1|उच्च स्तर]] का ज्ञान है।",
- "babel-4": "इस सदस्य को [[$2|$3]] का [[$1|लगभग मातृभाषी स्तर]] का ज्ञान है।",
+ "babel-4": "इस सदस्य को [[$2|$3]] का [[$1|लगभग मातृभाषा स्तर]] का ज्ञान है।",
"babel-5": "इस सदस्य को [[$2|$3]] का [[$1|व्यावसायिक स्तर]] का ज्ञान है।",
- "babel-N": "इस सदस्य को [[$2|$3]] का [[$1|मातृभाषी के सामान]] ज्ञान है।",
+ "babel-N": "इस सदस्य को [[$2|$3]] का [[$1|मातृभाषा के समान]] ज्ञान है।",
"babel-0-n": "इस सदस्य को [[$2|हिन्दी]] का ज्ञान [[$1|नहीं]] है (अथवा समझने में बहुत परेशानी होती है)।",
"babel-1-n": "इस सदस्य को [[$2|हिन्दी]] का [[$1|प्राथमिक]] ज्ञान है।",
"babel-2-n": "इस सदस्य को [[$2|हिन्दी]] का [[$1|मध्यम स्तर]] का ज्ञान है।",
"babel-3-n": "इस सदस्य को [[$2|हिन्दी]] का [[$1|उच्च स्तर]] का ज्ञान है।",
- "babel-4-n": "इस सदस्य को [[$2|हिन्दी]] का [[$1|लगभग मातृभाषी स्तर]] का ज्ञान है।",
+ "babel-4-n": "इस सदस्य को [[$2|हिन्दी]] का [[$1|लगभग मातृभाषा स्तर]] का ज्ञान है।",
"babel-5-n": "इस सदस्य को [[$2|हिन्दी]] का [[$1|व्यावसायिक स्तर]] का ज्ञान है।",
- "babel-N-n": "इस सदस्य को [[$2|हिन्दी]] का [[$1|मातृभाषी के सामान]] ज्ञान है।",
+ "babel-N-n": "इस सदस्य को [[$2|हिन्दी]] का [[$1|मातृभाषा के समान]] ज्ञान है।",
"babel-template": "Template:सदस्य $1",
- "babel-footer": "भाषा अनुसार सदस्य"
+ "babel-footer": "भाषा अनुसार सदस्य",
+ "apihelp-query+babel-description": "सदस्य कितनी भाषाओं को जानता है, इस बारे में जानकारी लें",
+ "apihelp-query+babel-summary": "उपयोक्ता द्वारा ज्ञात भाषाओँ की सूचना अर्जित करें",
+ "apihelp-query+babel-param-user": "सदस्य के बारे में जानकारी लें",
+ "apihelp-query+babel-example-1": "सदस्य <kbd>उदाहरण</kbd> के बारे में बबेल जानकारी लें"
}
diff --git a/MLEB/Babel/i18n/hif-latn.json b/MLEB/Babel/i18n/hif-latn.json
index a72708bc..f47ae6b7 100644
--- a/MLEB/Babel/i18n/hif-latn.json
+++ b/MLEB/Babel/i18n/hif-latn.json
@@ -8,7 +8,6 @@
"babel-desc": "Ii <code>#babel</code> parser function ke jorre hae jisse babel ke sadasya box ke column apne se ban jaawe hae, aue isse custom template banawa jaae sake hae",
"babel-url": "Project:Babel",
"babel-footer-url": ":Category:Babel - Bhasa ke aadhar pe sadasya",
- "babel-autocreate-abort": "Jon sadasya ke naam ke aap diya hae ke [[$1|Babel]] category auto-creation ke khaatir kaam me lawa jaawe hae aur register nai karaa jaae sake hae.",
"babel-autocreate-reason": "Apne se [[$1|Babel]] vibhag ke banawa jaae hae",
"babel-autocreate-text-levels": "Ii vibhag ke sadasya ke lage $2 bhasa ke khaatir $1 ke baraabar ke jaankari hae.",
"babel-autocreate-text-main": "Ii vibhag ke sadasya ii batae hae ki uske lage bhasa $1 ke jaankari hae.",
diff --git a/MLEB/Babel/i18n/hil.json b/MLEB/Babel/i18n/hil.json
index 3858b087..fc9eca7c 100644
--- a/MLEB/Babel/i18n/hil.json
+++ b/MLEB/Babel/i18n/hil.json
@@ -8,7 +8,6 @@
"babel": "Inpormasyon sang Babel naga-usar",
"babel-desc": "Gadugang sang <code>#babel</code> parser nga gagana para magamit nga henerasyon automatiko sang babel userbox kolum upod sang abilidad para maintra sa kustom templeyts",
"babel-url": "Project:Babel",
- "babel-autocreate-abort": "Ang usarngalan nga imo gina-klaro ay ginagamit para [[$1|Babel]] auto-himo nga kategorya kag indi ni pwede marehistro.",
"babel-autocreate-reason": "Automatiko nga ginahimo [[$1|Babel]] pahina kategorya.",
"babel-autocreate-text-levels": "Mga naga-usar sa sini nga kategorya nagapakita nga may-ara sila kasarang lebel $1 para sa lengwahe $2.",
"babel-autocreate-text-main": "Mga user sa sini nga kategorya nagapakita nga may-ara sila ka-alam lebel $1.",
diff --git a/MLEB/Babel/i18n/hr.json b/MLEB/Babel/i18n/hr.json
index 48ac4a45..16d1e52f 100644
--- a/MLEB/Babel/i18n/hr.json
+++ b/MLEB/Babel/i18n/hr.json
@@ -3,17 +3,18 @@
"authors": [
"Ex13",
"Herr Mlinka",
- "Conquistador"
+ "Conquistador",
+ "Bugoslav",
+ "MaGa"
]
},
- "babel": "babilonske suradničke informacije",
+ "babel": "Babilonske suradničke informacije",
"babel-desc": "Dodaje parsersku funkciju <code>#babel</code> da omogući automatsko generiranje stupca s babilonskim suradničkim okvirima s mogućnošću uključenja predložaka po želji",
"babel-url": "Project:Babilon",
"babel-footer-url": ":Kategorija:Suradnički jezici",
- "babel-autocreate-abort": "Navedeno suradničko ime rabi se za automatsko stvaranje kategorije [[$1|Babilon]] i ne može se registrirati.",
"babel-autocreate-reason": "Automatsko stvaranje stranice kategorije [[$1|babel]].",
"babel-autocreate-text-levels": "Suradnici u ovoj kategoriji ukazuju da su vješti na razini $1 za jezik $2.",
- "babel-autocreate-text-main": "Suradnici u ovoj kategoriji ukazuju da imaju znanje jezika $1.",
+ "babel-autocreate-text-main": "Suradnici u ovoj kategoriji naznačili su poznavanje jezika: $1.",
"babel-0": "{{GENDER:$4|Ovaj suradnik|Ova suradnica}} [[$1|ne]] zna [[$2|$3]] (ili ga razumije prilično otežano).",
"babel-1": "{{GENDER:$4|Ovaj suradnik|Ova suradnica}} ima [[$1|osnovno]] znanje [[$2|$3]].",
"babel-2": "{{GENDER:$4|Ovaj suradnik|Ova suradnica}} ima [[$1|osrednje]] znanje [[$2|$3]].",
@@ -28,5 +29,5 @@
"babel-4-n": "{{GENDER:$4|Ovaj suradnik|Ova suradnica}} poznaje [[$2|hrvatski jezik]] [[$1|gotovo kao izvorni govornik]].",
"babel-5-n": "{{GENDER:$4|Ovaj suradnik|Ova suradnica}} posjeduje [[$1|profesionalno]] znanje [[$2|hrvatskog jezika]].",
"babel-N-n": "{{GENDER:$4|Ovaj suradnik|Ova suradnica}} govori [[$2|hrvatski]] kao [[$1|materinski jezik]].",
- "babel-footer": "suradnici po jeziku"
+ "babel-footer": "Suradnici prema jeziku"
}
diff --git a/MLEB/Babel/i18n/hsb.json b/MLEB/Babel/i18n/hsb.json
index f26d792b..e916ed9e 100644
--- a/MLEB/Babel/i18n/hsb.json
+++ b/MLEB/Babel/i18n/hsb.json
@@ -8,7 +8,6 @@
"babel-desc": "Přidawa parserowu funkciju <code>#babel</code> za awtomatiske wutworjenje špalty z babelowymi wužiwarskimi kašćikami, z móžnosću, swójske předłohi zapřijeć",
"babel-url": "Project:Babel",
"babel-footer-url": ":Category:Babel - Wužiwarjo po rěči",
- "babel-autocreate-abort": "Podate wužiwarske mjeno wužiwa so za awtomatiske wutworjenje [[$1|Babelowych]] kategorijow a njeda so registrować.",
"babel-autocreate-reason": "Awtomatiske wutworjenje [[$1|Babeloweje]] kategorije.",
"babel-autocreate-text-levels": "Wužiwarjo w tutej kategoriji podawaja, zo maja stopjeń znajomosćow $1 za rěč $2.",
"babel-autocreate-text-main": "Wužiwarjo w tutej kategoriji podawaja, zo maja znajomosće rěče $1.",
diff --git a/MLEB/Babel/i18n/hu-formal.json b/MLEB/Babel/i18n/hu-formal.json
index 763cdbd2..2c85b5d4 100644
--- a/MLEB/Babel/i18n/hu-formal.json
+++ b/MLEB/Babel/i18n/hu-formal.json
@@ -4,7 +4,6 @@
"Tacsipacsi"
]
},
- "babel-autocreate-abort": "Az ön által választott nevet a [[$1|bábelkategóriák]] automatikus létrehozásához használjuk, így nem lehet regisztrálni.",
"babel-0": "Ez a szerkesztő [[$1|nem]] beszéli a(z) [[$2|$3]] nyelvet (vagy csak nagy nagyon nehezen érti meg).",
"babel-1": "Ez a szerkesztő [[$1|alapszinten]] beszéli a(z) [[$2|$3]] nyelvet.",
"babel-2": "Ez a szerkesztő [[$1|középszinten]] beszéli a(z) [[$2|$3]] nyelvet.",
diff --git a/MLEB/Babel/i18n/hu.json b/MLEB/Babel/i18n/hu.json
index b525aa65..c1ceee11 100644
--- a/MLEB/Babel/i18n/hu.json
+++ b/MLEB/Babel/i18n/hu.json
@@ -4,14 +4,14 @@
"Dani",
"Dj",
"Glanthor Reviol",
- "Xbspiro"
+ "Xbspiro",
+ "Tacsipacsi"
]
},
"babel": "Bábel szerkesztői információk",
"babel-desc": "<code>#babel</code> értelmes függvény bábel-információkat tartalmazó oszlop automatikus generálásához, saját sablononok beillesztésének lehetőségével",
"babel-url": "Project:Bábel",
"babel-footer-url": ":Category:Bábel – Felhasználók nyelvek szerint",
- "babel-autocreate-abort": "Az általad választott nevet a [[$1|bábelkategóriák]] automatikus létrehozásához használjuk, így nem lehet regisztrálni.",
"babel-autocreate-reason": "[[$1|Bábel]]kategória-oldal automatikus létrehozása.",
"babel-autocreate-text-levels": "Az ebben a kategóriában szereplő szerkesztők $1 szinten beszélik a(z) $2 nyelvet.",
"babel-autocreate-text-main": "Az ebben a kategóriában szereplő szerkesztők valamilyen szinten beszélik a(z) $1 nyelvet.",
@@ -29,5 +29,9 @@
"babel-4-n": "Ez a szerkesztő [[$1|közel anyanyelvi]] szinten beszéli a [[$2|magyar]] nyelvet.",
"babel-5-n": "Ez a szerkesztő [[$1|professzionális]] szinten beszéli a [[$2|magyar]] nyelvet.",
"babel-N-n": "Ennek a szerkesztőnek [[$2|magyar]] az [[$1|anyanyelve]].",
- "babel-footer": "Szerkesztők nyelvek szerint"
+ "babel-footer": "Szerkesztők nyelvek szerint",
+ "apihelp-query+babel-description": "Információk lekérése a felhasználó által beszélt nyelvekről",
+ "apihelp-query+babel-summary": "Információk lekérése a felhasználó által beszélt nyelvekről",
+ "apihelp-query+babel-param-user": "Lekérdezendő felhasználó",
+ "apihelp-query+babel-example-1": "Bábel-információk lekérése <kbd>Example</kbd>-ről"
}
diff --git a/MLEB/Babel/i18n/hy.json b/MLEB/Babel/i18n/hy.json
index afcfbc25..3e721e7c 100644
--- a/MLEB/Babel/i18n/hy.json
+++ b/MLEB/Babel/i18n/hy.json
@@ -3,13 +3,14 @@
"authors": [
"Pandukht",
"Teak",
- "Togaed"
+ "Togaed",
+ "Vahe Gharakhanyan",
+ "Դավիթ Սարոյան"
]
},
- "babel": "Մասնակցի լեզուների տվյլաները (Բաբելոն)",
+ "babel": "Տեղեկություն մասնակցի լեզուների մասին (Բաբելոն)",
"babel-desc": "Ավելացնում է <code>#babel</code> պարսեր ֆունկցիան, որը թույլ է տալիս ավտոմատիկ կերպով ստեղծել մասնակցի լեզուների տվյալներով սյունյակ՝ այլ կաղապարների ընդգրկման հնարավորությամբ",
"babel-url": "Project:Բաբելոն",
- "babel-autocreate-abort": "Նշված մասնակցի անունը օգտագործվում է Բաբելոն կատեգորիաների ավտոմատիկ ստեղծման համար և չի կարող գրանցվել։",
"babel-autocreate-reason": "Բաբելոն կատեգորիաների էջերի ավտոմատիկ ստեղծում։",
"babel-autocreate-text-levels": "Այս կատեգորիայի մասնակիցները նշել են մակարդակ $1 իմացություն $2 լեզվի համար։",
"babel-autocreate-text-main": "Այս կատեգորիայի մասնակիցները նշել են $1 լեզվի իմացություն։",
@@ -20,11 +21,11 @@
"babel-4": "[[$2|$3]] — [[$1|համարյա մայրենի իմացություն]]",
"babel-5": "[[$2|$3]] — [[$1|մասնագետի իմացություն]]",
"babel-N": "[[$2|$3]] — [[$1|մայրենի տիրապետում]]",
- "babel-0-n": "[[$2|Հայերեն]] — [[$1|չի տիրապետում]] (կամ հասկանում է դժվարությամբ)։",
- "babel-1-n": "[[$2|Հայերեն]] ― [[$1|սկզբնական իմացություն]]",
- "babel-2-n": "[[$2|Հայերեն]] — [[$1|միջին իմացություն]]",
- "babel-3-n": "[[$2|Հայերեն]] — [[$1|լավ իմացություն]]",
- "babel-4-n": "[[$2|Հայերեն]] — [[$1|համարյա մայրենի իմացություն]]",
- "babel-5-n": "[[$2|Հայերեն]] — [[$1|մասնագետի իմացություն]]",
+ "babel-0-n": "Այս մասնակիցը չունի [[$2|հայերենի]] [[$1|իմացություն]] (կամ հասկանում է շատ դժվարությամբ)։",
+ "babel-1-n": "Այս մասնակիցն ունի [[$2|հայերենի]] [[$1|սկզբնական իմացություն]]։",
+ "babel-2-n": "Այս մասնակիցն ունի [[$2|հայերենի]] [[$1|միջին իմացություն]]։",
+ "babel-3-n": "Այս մասնակիցն ունի [[$2|հայերենի]] [[$1|զարգացած իմացություն]]։",
+ "babel-4-n": "Այս մասնակիցն ունի [[$2|հայերենի]] [[$1|մայրենի լեզվին մոտ իմացություն]]։",
+ "babel-5-n": "Այս մասնակիցն ունի [[$2|հայերենի]] [[$1|մասնագիտական իմացություն]]։",
"babel-N-n": "[[$2|Հայերենը]] այս անձի [[$1|մայրենի լեզուն]] է։"
}
diff --git a/MLEB/Babel/i18n/ia.json b/MLEB/Babel/i18n/ia.json
index 505452ca..638f6704 100644
--- a/MLEB/Babel/i18n/ia.json
+++ b/MLEB/Babel/i18n/ia.json
@@ -5,21 +5,20 @@
"McDutchie"
]
},
- "babel": "Informationes Babel del usator",
+ "babel": "Babel",
"babel-desc": "Adde le function <code>#babel</code> al analysator syntactic, pro permitter le generation automatic de un columna con un quadro de usator 'Babel' con le capacitate de includer patronos personalisate.",
"babel-url": "Project:Babel",
"babel-footer-url": ":Category:Babel - Usatores per lingua",
- "babel-autocreate-abort": "Le nomine de usator que tu ha specificate es usate pro le creation automatic de categorias [[$1|Babel]] e non pote esser registrate.",
"babel-autocreate-reason": "Le pagina del categoria [[$1|Babel]] ha essite create automaticamente.",
"babel-autocreate-text-levels": "Le usatores in iste categoria declara haber un nivello de cognoscentia $1 del lingua $2.",
- "babel-autocreate-text-main": "Le usatores in iste categoria declara haber cognoscentia del lingua $1.",
+ "babel-autocreate-text-main": "Le usatores in iste categoria indica lor cognoscentia del lingua $1.",
"babel-0": "Iste usator ha [[$1|nulle]] cognoscentia de [[$2|$3]] (o lo comprende con difficultates considerabile).",
"babel-1": "Iste usator ha cognoscentias [[$1|de base]] de [[$2|$3]].",
"babel-2": "Iste usator ha cognoscentias [[$1|medie]] de [[$2|$3]].",
"babel-3": "Iste usator ha cognoscentias [[$1|avantiate]] de [[$2|$3]].",
"babel-4": "Iste usator ha cognoscentias a nivello [[$1|quasi native]] de [[$2|$3]].",
"babel-5": "Iste usator ha cognoscentias [[$1|professional]] de [[$2|$3]].",
- "babel-N": "Iste usator ha cognoscentias a nivello [[$1|native]] de [[$2|$3]].",
+ "babel-N": "Iste usator ha [[$2|$3]] como lingua [[$1|materne]].",
"babel-0-n": "Iste usator ha [[$1|nulle]] cognoscentia de [[$2|interlingua]] (o lo comprende con difficultate considerabile).",
"babel-1-n": "Iste usator ha cognoscentias [[$1|de base]] de [[$2|interlingua]].",
"babel-2-n": "Iste usator ha cognoscentias [[$1|medie]] de [[$2|interlingua]].",
@@ -28,5 +27,9 @@
"babel-5-n": "Iste usator ha cognoscentias [[$1|professional]] de [[$2|interlingua]].",
"babel-N-n": "Iste usator ha cognoscentias a nivello [[$1|native]] de [[$2|interlingua]].",
"babel-template": "Template:$1",
- "babel-footer": "Usatores per lingua"
+ "babel-footer": "Usatores per lingua",
+ "apihelp-query+babel-description": "Obtener information sur le linguas que le usator cognosce",
+ "apihelp-query+babel-summary": "Obtener information sur le linguas que le usator cognosce",
+ "apihelp-query+babel-param-user": "Le usator sur le qual obtener information",
+ "apihelp-query+babel-example-1": "Obtener information Babel pro usator <kbd>Example</kbd>"
}
diff --git a/MLEB/Babel/i18n/id.json b/MLEB/Babel/i18n/id.json
index 5c1b1851..3f9bb750 100644
--- a/MLEB/Babel/i18n/id.json
+++ b/MLEB/Babel/i18n/id.json
@@ -6,17 +6,18 @@
"IvanLanin",
"Iwan Novirion",
"Meursault2004",
- "Rex"
+ "Rex",
+ "Rachmat04",
+ "Gombang"
]
},
"babel": "Informasi pengguna Babel",
"babel-desc": "Menambahkan fungsi parser <code>#babel</code> untuk menampilkan kolom kotak pengguna babel secara otomatis dengan kemampuan menggunakan templat yang dikustomisasi",
"babel-url": "Project:Babel",
"babel-footer-url": ":Category:Babel - Pengguna menurut bahasa",
- "babel-autocreate-abort": "Nama pengguna yang Anda masukkan digunakan untuk pembuatan otomatis kategori [[$1|Babel]] dan tidak dapat didaftarkan.",
"babel-autocreate-reason": "Otomatis membuat halaman kategori [[$1|Babel]].",
"babel-autocreate-text-levels": "Pengguna di kategori ini menandakan mereka memiliki kemampuan $1 untuk bahasa $2.",
- "babel-autocreate-text-main": "Pengguna di kategori ini menandakan mereka memiliki kemampuan berbahasa $1.",
+ "babel-autocreate-text-main": "Pengguna dalam kategori ini menandakan mereka memiliki kemampuan berbahasa $1.",
"babel-autocreate-user": "Babel AutoCreate",
"babel-0": "Pengguna ini [[$1|tidak]] mengerti [[$2|$3]] (atau hanya dengan sangat sulit).",
"babel-1": "Pengguna ini mampu bersumbangsih dengan [[$2|$3]] tingkat [[$1|dasar]].",
@@ -33,5 +34,9 @@
"babel-5-n": "Pengguna ini memiliki pengetahuan [[$1|profesional]] [[$2|bahasa Indonesia]].",
"babel-N-n": "Pengguna ini adalah [[$1|penutur ibu]] [[$2|bahasa Indonesia]].",
"babel-template": "Template:User $1",
- "babel-footer": "Pengguna berdasarkan bahasa"
+ "babel-footer": "Pengguna berdasarkan bahasa",
+ "apihelp-query+babel-description": "Dapatkan informasi mengenai bahasa apa yang diketahui oleh pengguna ini",
+ "apihelp-query+babel-summary": "Dapatkan informasi mengenai bahasa apa yang diketahui oleh pengguna ini",
+ "apihelp-query+babel-param-user": "Pengguna yang informasinya akan didapatkan",
+ "apihelp-query+babel-example-1": "Dapatkan informasi Babel untuk pengguna <kbd>Contoh</kbd>"
}
diff --git a/MLEB/Babel/i18n/ie.json b/MLEB/Babel/i18n/ie.json
index dc36b3ad..9f825a3b 100644
--- a/MLEB/Babel/i18n/ie.json
+++ b/MLEB/Babel/i18n/ie.json
@@ -9,7 +9,6 @@
"babel-desc": "Addí li syntax-analysator <code>#babel</code> por automatic generation de usatoral buxes de »Babel« con li possibilitá includer self-definit avises.",
"babel-url": "Project:Babel",
"babel-footer-url": ":Category:Babel - Usatores secun lingue",
- "babel-autocreate-abort": "Li usatoral nómine, quel tu ha specificat, es usat por li auto-creation de [[$1|Babel]]-categories e ne posse esser registrat.",
"babel-autocreate-reason": "Automaticamen creant li págine del [[$1|Babel]]-categories.",
"babel-autocreate-text-levels": "Usatores in ti categorie indica, que ili have un nivelle de habilitá $1 por lingue $2.",
"babel-autocreate-text-main": "Usatores in ti categorie indica, que ili have conossenties de lingue $1.",
diff --git a/MLEB/Babel/i18n/ig.json b/MLEB/Babel/i18n/ig.json
index 2b7f0b52..d8947aa8 100644
--- a/MLEB/Babel/i18n/ig.json
+++ b/MLEB/Babel/i18n/ig.json
@@ -7,22 +7,21 @@
"babel": "Ihe Babul ejiá mari onyeá",
"babel-desc": "Nè tí <code>#babel</code> ihe ndotù Í nyé uzor maka okìké nke orúnotu nke ogologo babel nweríkí tinyé ihü nka nke ékèrè eké",
"babel-url": "Project:Babul",
- "babel-autocreate-abort": "Ọ'bànifé Í kpàtàrà dị maka [[$1|Babel]] nké né ké ébéanọr nà onwé yá, na o nwéghíkí bú nkẹ ọ'bànifé.",
"babel-autocreate-reason": "Odạlạ né ké [[$1|Babel]] ébé ihü nọr.",
"babel-autocreate-text-levels": "Ndi na banife nọr na ébé nke sị há nwèrè ǹkà rúrú $1 màkà asụsụ $2.",
"babel-autocreate-text-main": "Ọ'bànifé nor na ébéanọr á sị hé nwèrè ómárí màkà asụsụ $1.",
- "babel-0": "Onyéá [[$1|enweghị]] ómárí maka [[$2|$3]] (mä o wu ó na gé yá nsogbu dikwa elú ya).",
- "babel-1": "Onyéá nwere ómárí [[$1|ntakịrị]] maka [[$2|$3]].",
+ "babel-0": "Òjìème â [[$1|amaà]] nghọta asụ̀sụ̀ [[$2|Ìgbò]] (mà ọ̀ bụ̀ nà ị ghọta ya nà à rasịka ya ike).",
+ "babel-1": "Òjìème â nwèrè nghọta asụ̀sụ̀ [[$2|Ìgbò]] ǹkè [[$1|ụ̀dị̀ǹkịtị̀]].",
"babel-2": "Onyéá nwere ómárí [[$1|ditu mmá]] maka [[$2|$3]].",
"babel-3": "Onyéá nwere ómárí [[$1|ukwu]] maka [[$2|$3]].",
- "babel-4": "Onyéá nwere ómárí di kà [[$1|díàlà]] maka [[$2|$3]].",
- "babel-5": "Onyéá nwere ómárí di [[$1|mkpà]] maka [[$2|$3]].",
+ "babel-4": "Òjìème â nà à ghọtàsụrụtụ [[$2|Ìgbò]] dịkà [[$1|diàlà]].",
+ "babel-5": "Òjìème â nwèrè nghọta asụ̀sụ̀ [[$2|Ìgbò]] ǹkè [[$1|akaọrụ]].",
"babel-N": "Onyéá nwere ómárí [[$1|díàlà]] maka [[$2|$3]].",
- "babel-0-n": "Onyéá [[$1|enweghị]] ómárí maka [[$2|Ìgbọ]] (mä o wu ó na gé yá nsogbu dikwa elú ya).",
- "babel-1-n": "Onyéá nwere ómárí [[$1|ntakịrị]] maka [[$2|Ìgbọ]].",
- "babel-2-n": "Onyéá nwere ómárí [[$1|ditu mmá]] maka [[$2|Ìgbọ]].",
- "babel-3-n": "Onyéá nwere ómárí [[$1|ukwu]] maka [[$2|Ìgbọ]].",
- "babel-4-n": "Onyéá nwere ómárí di kà [[$1|díàlà]] maka [[$2|Ìgbọ]].",
- "babel-5-n": "Onyéá nwere ómárí di [[$1|mkpà]] maka [[$2|Ìgbọ]].",
- "babel-N-n": "Onyéá nwere ómárí [[$1|díàlà]] maka [[$2|Ìgbọ]]."
+ "babel-0-n": "Òjìème â [[$1|amaà]] nghọta asụ̀sụ̀ [[$2|Ìgbò]] (mà ọ̀ bụ̀ nà ị ghọta ya nà à rasịka ya ike).",
+ "babel-1-n": "Òjìème â nwèrè nghọta asụ̀sụ̀ [[$2|Ìgbò]] ǹkè [[$1|ụ̀dị̀ǹkịtị̀]].",
+ "babel-2-n": "Òjìème â nwèrè nghọta asụ̀sụ̀ [[$2|Ìgbò]] ǹkè [[$1|ụ̀dị̀n'ètitì]].",
+ "babel-3-n": "Òjìème â nwèrè nghọta asụ̀sụ̀ [[$2|Ìgbò]] ǹkè [[$1|ọ̀kàkâ]].",
+ "babel-4-n": "Òjìème â nà à ghọtàsụrụtụ [[$2|Ìgbò]] dịkà [[$1|diàlà]].",
+ "babel-5-n": "Òjìème â nwèrè nghọta asụ̀sụ̀ [[$2|Ìgbò]] ǹkè [[$1|akaọrụ]].",
+ "babel-N-n": "Òjìème â nà à ghọtàsụrụ [[$2|Ìgbò]] kà [[$1|diàlà]]."
}
diff --git a/MLEB/Babel/i18n/ilo.json b/MLEB/Babel/i18n/ilo.json
index 0abedf24..0a8c1a2e 100644
--- a/MLEB/Babel/i18n/ilo.json
+++ b/MLEB/Babel/i18n/ilo.json
@@ -9,10 +9,9 @@
"babel-desc": "Aginayon ti <code>#babel</code> a \"parser\" a pamay-an tapno agpalubos ti atomatiko a panagpartuat ti babel a kahon ti agar-aramat nga adda ti abilidad nga agiraman kadagiti naiduma a plantilia.",
"babel-url": "Project:Babel",
"babel-footer-url": ":Category:Babel - Dagiti agar-aramat babaen ti pagsasao",
- "babel-autocreate-abort": "Ti nagan ti agar-aramat nga intedmo ket ususaren para iti atomatiko a panagpartuat ti [[$1|Babel]] a kategoria ken saan a mabalin a mairehistro.",
"babel-autocreate-reason": "Atomatiko nga agar-aramid iti panid ti [[$1|Babel]] a kategoria.",
"babel-autocreate-text-levels": "Dagiti agar-aramat iti daytoy a kategoria ket maipatudo nga adda ti kalaingda ti agpang a $1 para iti $2 a pagsasao.",
- "babel-autocreate-text-main": "Dagiti agararamat iti daytoy a kategoria ket maipatudo nga adda pannnakaammoda ti $1 a pagsasao.",
+ "babel-autocreate-text-main": "Dagiti agar-aramat iti daytoy a kategoria ket ipatudoda ti pannnakaammoda ti $1 a pagsasao.",
"babel-0": "Daytoy nga agar-aramat ket [[$1|awan]] ti pannakaammona iti [[$2|$3]] (wenno marigatan unay a makaawat) .",
"babel-1": "Daytoy nga agar-aramat ket [[$1|nababa]] ti pannakaammona iti [[$2|$3]].",
"babel-2": "Daytoy nga agar-aramat ket [[$1|agpakatengnga]] ti pannakaammona iti [[$2|$3]].",
@@ -27,5 +26,9 @@
"babel-4-n": "Daytoy nga agar-aramat ket [[$1|kasla patneng nga agsasao]] ti pannakaammona iti [[$2|Ilokano]].",
"babel-5-n": "Daytoy nga agar-aramat ket [[$1|propesional]] ti pannakaammona iti [[$2|Ilokano]].",
"babel-N-n": "Daytoy nga agar-aramat ket [[$1|patneng]] ti pannakaawatna iti [[$2|Ilokano]].",
- "babel-footer": "Dagiti agar-aramat babaen ti pagsasao"
+ "babel-footer": "Dagiti agar-aramat babaen ti pagsasao",
+ "apihelp-query+babel-description": "Agala ti pakaammo a maipanggep no ania dagiti pagsasao nga ammo ti agar-aramat",
+ "apihelp-query+babel-summary": "Agala iti pakaammo a maipanggep kadagiti pagsasao nga ammo ti agar-aramat",
+ "apihelp-query+babel-param-user": "Ti agar-aramat a pagalaan iti pakaammo",
+ "apihelp-query+babel-example-1": "Alaen ti pakaammo ti Babel para kenni agar-aramat <kbd>Pagarigan</kbd>"
}
diff --git a/MLEB/Babel/i18n/inh.json b/MLEB/Babel/i18n/inh.json
index fb53a7e2..d877b166 100644
--- a/MLEB/Babel/i18n/inh.json
+++ b/MLEB/Babel/i18n/inh.json
@@ -1,8 +1,31 @@
{
"@metadata": {
"authors": [
- "Sapral Mikail"
+ "Sapral Mikail",
+ "Adam-Yourist",
+ "ElizaMag"
]
},
- "babel-footer": "Меттий дакъалаьцархой"
+ "babel": "Доакъашхочун метташ",
+ "babel-desc": "Укхо <code>#babel</code> яха парсера функци тIатох. Цо йиш хулийт доакъашхочунна ховш долча меттаех лаьца хоам тIа болаш ше-ше блок хьакхоллар, иштта кхыдоа лераш юкъедáха аьттув болаш.",
+ "babel-url": "Project:Бабил",
+ "babel-footer-url": ":Category:{{ns:Project}}:Доакъашхойи царна довза метташи",
+ "babel-autocreate-reason": "[[$1|Бабил]] оагӀата оагӀув ше-ше хьакхоллар.",
+ "babel-autocreate-text-levels": "Укх оагӀата чура доакъашхоша белгалдаьккхад $2 мотт шоашта «$1» хов аьнна.",
+ "babel-autocreate-text-main": "Укх оагӀата чура доакъашхоша белгалдаьккхад шоашта «$1» мотт ховш хилар.",
+ "babel-0": "[[$2|$3]] — [[$1|хац]] (е хала кхетабу)",
+ "babel-1": "[[$2|$3]] — [[$1|хьалхара лагIа]]",
+ "babel-2": "[[$2|$3]] — [[$1|юкъера лагIа]]",
+ "babel-3": "[[$2|$3]] — [[$1|дика лагIа]]",
+ "babel-4": "[[$2|$3]] — [[$1|гаргга Наьна мотт санна хар]]",
+ "babel-5": "[[$2|$3]] — [[$1|тIех дика лагIа]]",
+ "babel-N": "[[$2|$3]] — [[$1|Наьна мотт]]",
+ "babel-0-n": "Укх доакъашхочун [[$2|ГӀалгӀай мотт]] [[$1|хац]] (е кхетабе хала ба).",
+ "babel-1-n": "Укх доакъашхочунна [[$1|хьалхара лагIах]] хов [[$2|ГIалгIай мотт]].",
+ "babel-2-n": "Укх доакъашхочунна [[$1|юкъера лагӀах]] хов [[$2|ГӀалгӀай мотт]].",
+ "babel-3-n": "Укх доакъашхочунна [[$1|дика]] хов [[$2|ГӀалгӀай мотт]].",
+ "babel-4-n": "Укх доакъашхочунна гаргга ший [[$1|Наьна мотт санна]] хов [[$2|ГӀалгӀай мотт]].",
+ "babel-5-n": "Укх доакъашхочунна [[$1|тӀех дика]] хов [[$2|ГӀалгӀай мотт]].",
+ "babel-N-n": "Укх {{GENDER:$4|доакъашхочоа}} [[$2|ГӀалгӀай мотт]] [[$1|Наьна мотт]] ба.",
+ "babel-footer": "Доакъашхойи царна довза метташи"
}
diff --git a/MLEB/Babel/i18n/io.json b/MLEB/Babel/i18n/io.json
index f1132d1e..e7e2efa6 100644
--- a/MLEB/Babel/i18n/io.json
+++ b/MLEB/Babel/i18n/io.json
@@ -1,13 +1,25 @@
{
"@metadata": {
"authors": [
- "Malafaya"
+ "Malafaya",
+ "Robin van der Vliet",
+ "Joao Xavier"
]
},
"babel-url": "Project:Babel",
- "babel-0": "Ca uzanto havas [[$1|nula]] savo pri [[$2|$3]] (o komprenas olu kun kelka desfacileso).",
- "babel-1": "Ca uzanto havas [[$1|bazala]] savo pri [[$2|$3]].",
- "babel-2": "Ca uzanto havas [[$1|meza]] savo pri [[$2|$3]].",
- "babel-3": "Ca uzanto havas [[$1|bona]] savo pri [[$2|$3]].",
- "babel-5": "Ca uzanto havas [[$1|profesionala]] savo pri [[$2|$3]]."
+ "babel-footer-url": "Kategorio:Babel - Uzeri segun linguo",
+ "babel-0": "Ca uzero havas [[$1|nula]] savo pri [[$2|$3]] (o komprenas olu kun kelka desfacileso).",
+ "babel-1": "Ca uzero havas [[$1|bazala]] savo pri [[$2|$3]].",
+ "babel-2": "Ca uzero havas [[$1|meza]] savo pri [[$2|$3]].",
+ "babel-3": "Ca uzero havas [[$1|bona]] savo pri [[$2|$3]].",
+ "babel-4": "Ica uzero konocas [[$2|$3]] [[$1|preske quale nativa parolanto]].",
+ "babel-5": "Ca uzero havas [[$1|profesionala]] savo pri [[$2|$3]].",
+ "babel-N": "Ica uzero esas parolanto [[$1|nativa]] di [[$2|$3]].",
+ "babel-1-n": "Ca uzero havas [[$1|bazala]] savo pri [[$2|Ido]].",
+ "babel-2-n": "Ca uzero havas [[$1|meza]] savo pri [[$2|Ido]].",
+ "babel-3-n": "Ca uzero havas [[$1|bona]] savo pri [[$2|Ido]].",
+ "babel-4-n": "Ica uzero konocas [[$2|Ido]] [[$1|preske quale nativa parolanto]].",
+ "babel-5-n": "Ca uzero havas [[$1|profesionala]] savo pri [[$2|Ido]].",
+ "babel-N-n": "Ica uzero esas parolanto [[$1|nativa]] di [[$2|Ido]].",
+ "babel-footer": "Uzeri segun linguo"
}
diff --git a/MLEB/Babel/i18n/is.json b/MLEB/Babel/i18n/is.json
index c7b20ae0..c9a6f8c6 100644
--- a/MLEB/Babel/i18n/is.json
+++ b/MLEB/Babel/i18n/is.json
@@ -2,25 +2,25 @@
"@metadata": {
"authors": [
"Purodha",
- "Snævar"
+ "Snævar",
+ "Sveinn í Felli"
]
},
"babel": "Málkassi",
"babel-url": "Project:Málkassi",
"babel-footer-url": ":Category:Notendur eftir tungumáli",
- "babel-autocreate-abort": "Þetta notendanafn er frátekið fyrir sjálfvirka stofnun [[$1|Málkassa]] flokka og getur ekki verið skráð.",
"babel-autocreate-reason": "Bý sjálfkrafa til [[$1|Málkassa]] flokk.",
"babel-autocreate-text-levels": "Notendur í þessum flokk hafa gefið upp að þeir hafi $1-stigs kunnáttu á $2",
- "babel-autocreate-text-main": "Notendur í þessum flokk hafa gefið upp að þeir hafi kunnáttu á $1 máli.",
+ "babel-autocreate-text-main": "Notendur í þessum flokk hafa gefið upp þeirra kunnáttu á $1 máli.",
"babel-0": "Þessi notandi talar [[$1|ekki]] [[$2|$3]] (á erfitt með að skilja hana eða kýs að tala hana ekki).",
- "babel-1": "Þessi notandi hefur [[$1|grundvallar]]-kunnáttu á [[$2|$3]] máli.",
+ "babel-1": "Þessi notandi hefur [[$1|grunnkunnáttu]] í [[$2|$3]] máli.",
"babel-2": "Þessi notandi hefur [[$1|miðlungs]]-kunnáttu á [[$2|$3]] máli.",
"babel-3": "Þessi notandi hefur [[$1|yfirburðar]]-kunnáttu á [[$2|$3]] máli.",
"babel-4": "Þessi notandi talar [[$2|$3]] eins og [[$1|innfæddur]].",
"babel-5": "Þessi notandi hefur [[$1|atvinnu]]-færni á [[$2|$3]] máli.",
"babel-N": "Þessi notandi hefur [[$2|$3]] að [[$1|móðurmáli]].",
"babel-0-n": "Þessi notandi talar [[$1|ekki]] [[$2|íslensku]] (á erfitt með að skilja hana eða kýs að tala hana ekki).",
- "babel-1-n": "Þessi notandi hefur [[$1|grundvallar]]-kunnáttu á [[$2|íslensku]] máli.",
+ "babel-1-n": "Þessi notandi hefur [[$1|grunnkunnáttu]] í [[$2|íslensku]] máli.",
"babel-2-n": "Þessi notandi hefur [[$1|miðlungs]]-kunnáttu á [[$2|íslensku]] máli.",
"babel-3-n": "Þessi notandi hefur [[$1|yfirburðar]]-kunnáttu á [[$2|íslensku]] máli.",
"babel-4-n": "Þessi notandi talar [[$2|íslensku]] eins og [[$1|innfæddur]].",
diff --git a/MLEB/Babel/i18n/it.json b/MLEB/Babel/i18n/it.json
index 22f4a3ca..c5d05e2b 100644
--- a/MLEB/Babel/i18n/it.json
+++ b/MLEB/Babel/i18n/it.json
@@ -8,17 +8,17 @@
"McDutchie",
"Melos",
"Morel",
- "Nemo bis"
+ "Nemo bis",
+ "Anto"
]
},
"babel": "Babel utente",
"babel-desc": "Aggiunge la parser function <code>#babel</code> per permettere la generazione automatica di una colonna box utente babel con la possibilità di includere template personalizzati",
"babel-url": "Project:Babel",
"babel-footer-url": ":Category:Utenti per lingua",
- "babel-autocreate-abort": "Il nome utente specificato è usato per la creazione automatica di categorie [[$1|Babel]] e non può essere registrato.",
"babel-autocreate-reason": "Creo automaticamente la pagina della categoria [[$1|Babel]].",
"babel-autocreate-text-levels": "Gli utenti in questa categoria indicano che riescono a comunicare in $2 con un livello di conoscenza $1.",
- "babel-autocreate-text-main": "Gli utenti in questa categoria indicano che riescono a comunicare in $1.",
+ "babel-autocreate-text-main": "Gli utenti in questa categoria indicano il loro livello di conoscenza in $1.",
"babel-0": "Questo utente [[$1|non è in grado di comunicare]] in [[$2|$3]] (o lo capisce solo con notevole difficoltà).",
"babel-1": "Questo utente può contribuire con un livello [[$1|elementare]] in [[$2|$3]].",
"babel-2": "Questo utente può contribuire con un livello [[$1|intermedio]] in [[$2|$3]].",
@@ -34,5 +34,8 @@
"babel-5-n": "Questo utente può contribuire con un livello [[$1|professionale]] in [[$2|italiano]].",
"babel-N-n": "Questo utente può contribuire con un livello [[$1|madrelingua]] in [[$2|italiano]].",
"babel-template": "Template:Utente $1",
- "babel-footer": "Utenti per lingua"
+ "babel-footer": "Utenti per lingua",
+ "apihelp-query+babel-description": "Ottenere informazioni su quali lingue l'utente conosce",
+ "apihelp-query+babel-param-user": "Utente sul quale ottenere informazioni",
+ "apihelp-query+babel-example-1": "Ottieni informazioni Babel per l'utente <kbd>Example</kbd>"
}
diff --git a/MLEB/Babel/i18n/ja.json b/MLEB/Babel/i18n/ja.json
index fda11c23..286c8987 100644
--- a/MLEB/Babel/i18n/ja.json
+++ b/MLEB/Babel/i18n/ja.json
@@ -8,17 +8,19 @@
"Ohgi",
"Shirayuki",
"Vigorous action",
- "青子守歌"
+ "青子守歌",
+ "Sujiniku",
+ "ネイ",
+ "Yusuke1109"
]
},
"babel": "バベル利用者情報",
"babel-desc": "カスタム テンプレートを埋め込めるバベル ユーザーボックスを、自動的に生成する関数 <code>#babel</code> を追加する",
"babel-url": "Project:バベル",
"babel-footer-url": ":カテゴリ:バベル - 言語別の利用者",
- "babel-autocreate-abort": "指定した利用者名は[[$1|バベル]]用カテゴリの自動作成に使用されているため登録できません。",
"babel-autocreate-reason": "[[$1|バベル]]用カテゴリのページを自動作成しています。",
"babel-autocreate-text-levels": "このカテゴリに属している利用者は$2についてレベル $1 の能力を有しています。",
- "babel-autocreate-text-main": "このカテゴリに属している利用者は$1についての自身の能力について表明しています。",
+ "babel-autocreate-text-main": "このカテゴリに属している利用者は、自身の$1の言語能力について、表明しています。",
"babel-autocreate-user": "バベル自動作成係",
"babel-0": "この利用者は[[$2|$3]]が[[$1|分かりません]](または理解するのがかなり困難です)。",
"babel-1": "この利用者は[[$1|初級]]の[[$2|$3]]ができます。",
@@ -35,5 +37,8 @@
"babel-5-n": "この利用者は[[$1|専門的な]][[$2|日本語]]の知識を有しています。",
"babel-N-n": "この利用者は[[$2|日本語]]を[[$1|母語]]としています。",
"babel-template": "Template:利用者 $1",
- "babel-footer": "言語別の利用者"
+ "babel-footer": "言語別の利用者",
+ "apihelp-query+babel-description": "利用者が知識を有する言語の情報を取得",
+ "apihelp-query+babel-summary": "ユーザーが知っている言語に関する情報を取得する",
+ "apihelp-query+babel-example-1": "利用者<kbd>Example</kbd>のバベル情報を取得"
}
diff --git a/MLEB/Babel/i18n/jam.json b/MLEB/Babel/i18n/jam.json
index e8167185..061db6cf 100644
--- a/MLEB/Babel/i18n/jam.json
+++ b/MLEB/Babel/i18n/jam.json
@@ -1,13 +1,13 @@
{
"@metadata": {
"authors": [
- "Yocahuna"
+ "Yocahuna",
+ "StevenJ81"
]
},
"babel": "Biebl yuuza infamieshan",
"babel-desc": "Ad di <code>#babel</code> paaza fongshan fi lou aatamietid jinarieshan a biebl yuuzabax kalom wid di abiliti fi inkluud kostom templit",
"babel-url": "Project:Biebl",
- "babel-autocreate-abort": "Di yuuzaniem yu spesifai yuuz fi [[$1|Babel]] kiatigari aato-krieshan ahn kyaahn regista.",
"babel-autocreate-reason": "Aatamatikali a kriet [[$1|Babel]] kiatigari piej.",
"babel-autocreate-text-levels": "Yuuza ina dis kiatigeri indikiet se dehn ab skil lebl $1 fi langwij $2.",
"babel-autocreate-text-main": "Yuuza ina dis kiatigeri indikiet se dehn ab nalij a langwij $1.",
@@ -17,12 +17,12 @@
"babel-3": "Di yuuza ab [[$1|advans]] nalij a [[$2|$3]].",
"babel-4": "Di yuuza ab [[$1|nier nietib]] nalij a [[$2|$3]].",
"babel-5": "Di yuuza ab [[$1|profeshanal]] nalij a [[$2|$3]].",
- "babel-N": "Di yuuza ab a [[$1|nietib]] andastanin a [[$2|$3]].",
- "babel-0-n": "Dis yuuza ab [[$1|no]] nalij a [[$2|Ingglish]] (ar andastani wid kansidarobl difikolti).",
- "babel-1-n": "Di yuuza ab [[$1|biesik]] nalij a [[$2|Ingglish]].",
- "babel-2-n": "Di yuuza ab [[$1|intamidiet]] nalij a [[$2|Ingglish]].",
- "babel-3-n": "Di yuuza ab [[$1|advans]] nalij a [[$2|Ingglish]].",
- "babel-4-n": "Di yuuza ab [[$1|nier nietib]] nalij a [[$2|Ingglish]].",
- "babel-5-n": "Di yuuza ab [[$1|profeshanal]] nalij a [[$2|Ingglish]].",
- "babel-N-n": "Di yuuza ab a [[$1|nietib]] andastanin a [[$2|Ingglish]]."
+ "babel-N": "Di yuuza ab a [[$1|nietib]] andastanin a [[$2|Jumiekan]].",
+ "babel-0-n": "Dis yuuza ab [[$1|no]] nalij a [[$2|Jumiekan]] (ar andastani wid kansidarobl difikolti).",
+ "babel-1-n": "Di yuuza ab [[$1|biesik]] nalij a [[$2|Jumiekan]].",
+ "babel-2-n": "Di yuuza ab [[$1|intamidiet]] nalij a [[$2|Jumiekan]].",
+ "babel-3-n": "Di yuuza ab [[$1|advans]] nalij a [[$2|Jumiekan]].",
+ "babel-4-n": "Di yuuza ab [[$1|nier nietib]] nalij a [[$2|Jumiekan]].",
+ "babel-5-n": "Di yuuza ab [[$1|profeshanal]] nalij a [[$2|Jumiekan]].",
+ "babel-N-n": "Di yuuza ab a [[$1|nietib]] andastanin a [[$2|Jumiekan]]."
}
diff --git a/MLEB/Babel/i18n/jbo.json b/MLEB/Babel/i18n/jbo.json
index 24cf9877..48f7dd5d 100644
--- a/MLEB/Babel/i18n/jbo.json
+++ b/MLEB/Babel/i18n/jbo.json
@@ -1,9 +1,10 @@
{
"@metadata": {
"authors": [
- "Malafaya"
+ "Malafaya",
+ "Xbony2"
]
},
"babel-1": "ti poi prenu cu ka'e cusku je jimpe [[$1|lo sampu]] bau [[$2|la $3]]",
- "babel-1-n": "ti poi prenu cu ka'e cusku je jimpe [[$1|lo sampu]] bau [[$2|la lojban]]"
+ "babel-1-n": "ti poi prenu cu ka'e cusku je jimpe [[$1|lo sampu]] bau [[$2|la .lojban.]]"
}
diff --git a/MLEB/Babel/i18n/jv.json b/MLEB/Babel/i18n/jv.json
index d91641ca..072ccb43 100644
--- a/MLEB/Babel/i18n/jv.json
+++ b/MLEB/Babel/i18n/jv.json
@@ -7,29 +7,32 @@
"NoiX180"
]
},
- "babel": "Informasi Babel Panganggo",
- "babel-desc": "Nambahaké fungsi parse <code>#babel</code> sing marengaké générasi otomatis kolom kothak panganggo babel mawa kamungkinan nglebokaké cithakan kustomisasi",
+ "babel": "Katerangan panganggo Babel",
+ "babel-desc": "Nambah fungsi parser <code>#babel</code> supaya bisa ngasilaké kolem userbox kanthi otomatis uga bisa ngatutaké cithakan-cithakan kustomisasi",
"babel-url": "Project:Babel",
- "babel-footer-url": ":Katégori:Babèl - Panganggo miturut basané",
- "babel-autocreate-abort": "Jeneng panganggo sing Sampéyan lebokaké dianggo kanggo panggawéan otomatis katègori [[$1|Babel]] lan ora bisa didaptaraké.",
- "babel-autocreate-reason": "Otomatis nggawé kaca katègori [[$1|Babel]].",
+ "babel-footer-url": ":Kategori:Babèl - Panganggo miturut basané",
+ "babel-autocreate-reason": "Otomatis nggawé kaca kategori [[$1|Babèl]].",
"babel-autocreate-text-levels": "Panganggo saka katégori iki dianggep nduwèni kawruh basa $2 undhak $1.",
- "babel-autocreate-text-main": "Panganggo saka katégori iki dianggep nduwèni kawruh basa $1.",
+ "babel-autocreate-text-main": "Panganggo ing kategori iki tegesé wong-wong kang padha bisa basa $1",
"babel-autocreate-user": "Babel AutoCreate",
- "babel-0": "Panganggo iki [[$1|ora]] duwé kawruh [[$2|$3]] (utawa angèl banget mangertèni).",
- "babel-1": "Panganggo iki duwé kawruh [[$1|dhasar]] [[$2|$3]].",
- "babel-2": "Panganggo iki duwé kawruh [[$1|madya]] [[$2|$3]].",
- "babel-3": "Panganggo iki duwé kawruh [[$1|dhuwur]] [[$2|$3]].",
- "babel-4": "Panganggo iki duwé kawruh [[$1|sing nyedhaki panutur ibu]] saka [[$2|$3]].",
- "babel-5": "Panganggo iki duwé kawruh [[$1|profésional]] [[$2|$3]].",
+ "babel-0": "Panganggo iki [[$1|ora]] duwé kawruh bab [[$2|$3]] (utawa angèl banget mangertèni basa iku).",
+ "babel-1": "Panganggo iki duwé kawruh [[$1|dhasar]] bab [[$2|$3]].",
+ "babel-2": "Panganggo iki duwé kawruh [[$1|sedhengan]] bab [[$2|$3]].",
+ "babel-3": "Panganggo iki duwé kawruh [[$1|dhuwur]] bab [[$2|$3]].",
+ "babel-4": "Panganggo iki duwé kawruh [[$1|sing nyedhaki panutur ibu]] [[$2|$3]].",
+ "babel-5": "Panganggo iki duwé kawruh [[$1|profésional]] bab [[$2|$3]].",
"babel-N": "Panganggo iki [[$1|panutur ibu]] [[$2|$3]].",
- "babel-0-n": "Panganggo iki [[$1|ora]] bisa [[$2|basa Jawa]] (utawa angèl banget mangertèni).",
- "babel-1-n": "Panganggo iki duwé kawruh [[$1|dhasar]] [[$2|basa Jawa]].",
- "babel-2-n": "Panganggo iki duwé kawruh [[$1|madya]] [[$2|basa Jawa]].",
- "babel-3-n": "Panganggo iki duwé kawruh [[$1|dhuwur]] [[$2|basa Jawa]].",
+ "babel-0-n": "Panganggo iki [[$1|ora]] bisa [[$2|basa Jawa]] (utawa angèl banget mangertèni basa iku).",
+ "babel-1-n": "Panganggo iki duwé kawruh [[$1|dhasar]] bab [[$2|basa Jawa]].",
+ "babel-2-n": "Panganggo iki duwé kawruh [[$1|sedhengan]] bab [[$2|basa Jawa]].",
+ "babel-3-n": "Panganggo iki duwé kawruh [[$1|dhuwur]] bab [[$2|basa Jawa]].",
"babel-4-n": "Panganggo iki duwé kawruh [[$1|sing nyedhaki panutur ibu]] saka [[$2|basa Jawa]].",
"babel-5-n": "Panganggo iki duwé kawruh [[$1|profésional]] [[$2|basa Jawa]].",
"babel-N-n": "Panganggo iki [[$1|panutur ibu]] [[$2|basa Jawa]].",
"babel-template": "Template:User $1",
- "babel-footer": "Panganggo miturut basané"
+ "babel-footer": "Panganggo miturut basané",
+ "apihelp-query+babel-description": "Golèk katerangan bab basa sing dingertèni panganggo",
+ "apihelp-query+babel-summary": "Golèk katerangan bab basa sing dingertèni panganggo",
+ "apihelp-query+babel-param-user": "Panganggo sing arep digolèki katerangané",
+ "apihelp-query+babel-example-1": "Golèk katerangan Babel tumrap panganggo <kbd>Conto</kbd>"
}
diff --git a/MLEB/Babel/i18n/ka.json b/MLEB/Babel/i18n/ka.json
index f4a04d6e..4f56bde6 100644
--- a/MLEB/Babel/i18n/ka.json
+++ b/MLEB/Babel/i18n/ka.json
@@ -13,10 +13,9 @@
"babel-desc": "დაამატეთ <code>#babel</code> პარსერის ფუნქცია babel userbox ის სვეტის ავტომატიურად შესაქმენლად, რომელსაც ექნება შესაძლებლობა მოიცვას შაბლონები.",
"babel-url": "Project:ბაბილონი",
"babel-footer-url": ":კატეგორია:მომხმარებლები ენების მიხედვით",
- "babel-autocreate-abort": "თქვენს მიერ არჩული მომხმარებელი გამოყენებულია [[$1|Babel]] კატეგორიაში ავტომატიურად და მისი შეცვლა შეუძლებელია.",
"babel-autocreate-reason": "ავტომატურად იქმნება [[$1|Babel]] კატეგორიის გვერდი",
"babel-autocreate-text-levels": "ამ კატეგორიის მომხმარებლები იდენტიფიცირდებიან როგორც $1 დონის მომხმარებლები $2 ენისათვის.",
- "babel-autocreate-text-main": "ამ კატეგორიის მომხმარებლები იდენტიფიცირდებიან როგორც $1 ენის მცოდნეები.",
+ "babel-autocreate-text-main": "ამ კატეგორიის მომხმარებლები თავს მიიჩნევენ შემდეგი ენის მცოდნედ: $1.",
"babel-autocreate-user": "Babel - ის ავტო კორექცია",
"babel-0": "ამ მომხმარებელს [[$1|არ ესმის]] [[$2|$3]].",
"babel-1": "ამ მომხმარებელს შეუძლია წვლილი შეიტანოს [[$2|$3 ენის]] ცოდნის [[$1|ელემენტარულ]] დონეზე.",
@@ -33,5 +32,6 @@
"babel-5-n": "ამ მომხმარებელს შეუძლია წვლილი შეიტანოს [[$2|ქართული ენის]] ცოდნის [[$1|პროფესიონალურ]] დონეზე.",
"babel-N-n": "ამ მომხმარებლის [[$1|მშობლიური ენა]] არის [[$2|ქართული]].",
"babel-template": "თარგი:მომხმარებელი $1",
- "babel-footer": "მომხმარებლები ენის მიხედვით"
+ "babel-footer": "მომხმარებლები ენის მიხედვით",
+ "apihelp-query+babel-param-user": "მომხმარებელი, რომელზეც გვინდა ვნახოთ ინფორმაცია"
}
diff --git a/MLEB/Babel/i18n/kea.json b/MLEB/Babel/i18n/kea.json
index 08172f93..7cde1814 100644
--- a/MLEB/Babel/i18n/kea.json
+++ b/MLEB/Babel/i18n/kea.json
@@ -1,14 +1,14 @@
{
"@metadata": {
"authors": [
- "Waldir"
+ "Waldir",
+ "Quintino Lopes Castro Tavares"
]
},
"babel": "Informason di línguas di utilizador",
"babel-desc": "Ta adisiona funsãu di analizador <code>#babel</code>, ki ta permiti kria automatikamenti un kuluna ku kaixas \"babel\", i tambe inklui predefinisons personalizadu",
"babel-url": "Project:Babel",
"babel-footer-url": ":Katiguria:Babel - Utilizadoris pur língua",
- "babel-autocreate-abort": "Nomi di utilizador ki bu skodji e uzadu pa kriason automátiku di katigurias [[$1|Babel]], pur isu el ka podi ser rijistadu.",
"babel-autocreate-reason": "Ta kria pájina di katiguria [[$1|Babel]] automatikamenti.",
"babel-autocreate-text-levels": "Utilizadoris nes katiguria li ta afirma ki es ten un nível di konhesimentu $1 na língua $2.",
"babel-autocreate-text-main": "Utilizadoris nes katiguria li ta afirma ki es ten konhesimentu di língua $1.",
@@ -19,12 +19,12 @@
"babel-4": "Kel utilizador li ta papia [[$2|$3]] [[$1|kuazi sima un falanti nativu]].",
"babel-5": "Kel utilizador li ta papia [[$2|$3]] ku un nível [[$1|prifisiunal]].",
"babel-N": "Kel utilizador li se língua [[$1|maternu]] e [[$2|$3]].",
- "babel-0-n": "Kel utilizador li [[$1|ka ta entende]] [[$2|kriolu]] (o e' ta entendê-l ku txeu difikuldadi).",
+ "babel-0-n": "Kel utilizador li [[$1|ka ta entende]] [[$2|kriolu]] (o e ta entendê-l ku txeu difikuldadi).",
"babel-1-n": "Kel utilizador li ta papia [[$2|kriolu]] ku un nível [[$1|báziku]].",
"babel-2-n": "Kel utilizador li ta papia [[$2|kriolu]] ku un nível [[$1|médiu]].",
"babel-3-n": "Kel utilizador li ta papia [[$2|kriolu]] ku un nível [[$1|avansadu]].",
"babel-4-n": "Kel utilizador li ta papia [[$2|kriolu]] [[$1|kuazi sima un falanti nativu]].",
- "babel-5-n": "Kel utilizador li ta papia [[$2|kriolu]] ku un nível [[$1|prufisiunal]].",
+ "babel-5-n": "Kel utilizador li ta papia [[$2|kriolu]] na un nível [[$1|prufisiunal]].",
"babel-N-n": "Kel utilizador li se língua [[$1|maternu]] e [[$2|kriolu]].",
"babel-footer": "Utilizadoris pur língua"
}
diff --git a/MLEB/Babel/i18n/kg.json b/MLEB/Babel/i18n/kg.json
index 1475eba7..d98ade37 100644
--- a/MLEB/Babel/i18n/kg.json
+++ b/MLEB/Babel/i18n/kg.json
@@ -7,7 +7,6 @@
"babel": "Babilone: luzâbu ya bandînga",
"babel-url": "Project:Babilone",
"babel-footer-url": ":Category:Babilone - Basadi na bandînga",
- "babel-autocreate-abort": "Nkûmbu ya sadi yina nge me pesa, yawu me bakama samu na [[$1|Babilone]]. Nge lênda sadila yawu ve.",
"babel-autocreate-text-levels": "Bântu ya kimvuka yayi bâwu zâbisaka ti bâwu zâba tuba ndînga $2 na nivô ya $1",
"babel-autocreate-text-main": "Bântu ya kimvuka yayi bâwu zâbisaka ti bâwu ke zâbaka ndînga $1.",
"babel-0": "Mûntu yayi zâba tuba [[$2|$3]] [[$1|ve]] (to yandi ke kuwaka yawu na mpasi)",
diff --git a/MLEB/Babel/i18n/khw.json b/MLEB/Babel/i18n/khw.json
index ef041d32..26bcca7b 100644
--- a/MLEB/Babel/i18n/khw.json
+++ b/MLEB/Babel/i18n/khw.json
@@ -4,20 +4,25 @@
"Rachitrali"
]
},
+ "babel": "بابل معلومات صارف",
"babel-url": "Project:بابل",
+ "babel-footer-url": ":زمرہ:بابل - صارف بلحاظ زبان",
+ "babel-autocreate-reason": "[[$1|بابل]]و زمرہ خودکار ساوز بونیان۔",
+ "babel-autocreate-text-levels": "ھیہ زمرو صارف $2 زبانہ $1 درجو مہارتو لاکھونیان۔",
"babel-autocreate-text-main": "ھیہ زمرو صارفین ھیہ نشاندہیو کورونیان کہ ھیت $1 زبانو علم لاکھونیان.",
- "babel-0": "ھیہ صارف [[$2|$3]] کوریکو [[$1|نو]] بویان (یا ھیہ زبانو کافی مشکلو سورا ھوش کویان).",
- "babel-1": "ھیہ صارف [[$2|$3]] و [[$1|بنیادی]] علم لاکھویان.",
- "babel-2": "ھیہ صارف [[$2|$3]] و [[$1|متوسط]] علم لاکھویان.",
- "babel-3": "ھیہ صارف [[$2|$3]] و [[$1|اعلیٰ]] علم لاکھویان.",
- "babel-4": "ھیہ صارف [[$2|$3]] و [[$1|پیدائشی لودیاکو قریب قریب]] علم لاکھویان.",
- "babel-5": "ھیہ صارف [[$2|$3]] و [[$1|پیشہ‌ورانہ]] علم لاکھویان.",
- "babel-N": "ھیہ صارف [[$2|$3]] و [[$1|پیدائشی]] متکلم آسور.",
- "babel-0-n": "ھیہ صارف [[$2|انگریزی]] کوریکو [[$1|نو]] بویان (یا انگریزی زبانو کافی مشکلو سورا ھوش کویان",
- "babel-1-n": "ھیہ صارف [[$2|انگریزی]] زبانو [[$1|بنیادی]] علم لاکھویان.",
- "babel-2-n": "ھیہ صارف [[$2|انگریزی]] زبانو [[$1|متوسط]] علم لاکھویان.",
- "babel-3-n": "ھیہ صارف [[$2|انگریزی]] زبانو [[$1|اعلیٰ]] علم لاکھویان.",
- "babel-4-n": "ھیہ صارف [[$2|انگریزی]] زبانو باریا [[$1|پیدائشی متکلم]]و قریب قریب علم لاکھویان.",
- "babel-5-n": "ھیہ صارف [[$2|انگریزی]] زبانو [[$1|پیشہ ورانہ]] علم لاکھویان.",
- "babel-N-n": "ھیہ صارف [[$2|انگریزی]] زبانو [[$1|پیدائشی متکلم]] آسور."
+ "babel-0": "ھیہ صارف [[$2|کھوار]] کوریکو [[$1|نو]] بویان (یا ھیہ زبانو کافی مشکلو سورا ھوݰ کویان).",
+ "babel-1": "ھیہ صارف [[$2|کھوار]] زبانو [[$1|بنیادی]] علم لاکھویان.",
+ "babel-2": "ھیہ صارف [[$2|کھوار]] زبانو [[$1|متوسط]] علم لاکھویان.",
+ "babel-3": "ھیہ صارف [[$2|کھوار]] زبانو [[$1|اعلیٰ]] علم لاکھویان.",
+ "babel-4": "ھیہ صارف [[$2|کھوار]] زبانو [[$1|پیدائشی لودیاکاکن غون]] علم لاکھویان.",
+ "babel-5": "ھیہ صارف [[$2|کھوار]] زبانو [[$1|پیشہ ورانہ]] علم لاکھویان.",
+ "babel-N": "ھیہ صارف [[$2|کھوار]] زبانو [[$1|پیدائشی لو دیاک]] آسور.",
+ "babel-0-n": "ھیہ صارف [[$2|کھوار]] کوریکو [[$1|نو]] بویان (یا کھوار زبانو کافی مشکلو سورا ھوݰ کویان",
+ "babel-1-n": "ھیہ صارف [[$2|کھوار]] زبانو [[$1|بنیادی]] علم لاکھویان.",
+ "babel-2-n": "ھیہ صارف [[$2|کھوار]] زبانو [[$1|متوسط]] علم لاکھویان.",
+ "babel-3-n": "ھیہ صارف [[$2|کھوار]] زبانو [[$1|اعلیٰ]] علم لاکھویان.",
+ "babel-4-n": "ھیہ صارف [[$2|کھوار]] زبانو باریا [[$1|پیدائشی لودیاکو]]و غون قریب قریب علم لاکھویان.",
+ "babel-5-n": "ھیہ صارف [[$2|کھوار]] زبانو [[$1|پیشہ ورانہ]] علم لاکھویان.",
+ "babel-N-n": "ھیہ صارف [[$2|کھوار]] زبانو [[$1|پیدائشی لودیاک]] آسور.",
+ "babel-footer": "صارف بلحاظ زبان"
}
diff --git a/MLEB/Babel/i18n/kiu.json b/MLEB/Babel/i18n/kiu.json
index 5263ec0b..933e5ed4 100644
--- a/MLEB/Babel/i18n/kiu.json
+++ b/MLEB/Babel/i18n/kiu.json
@@ -2,14 +2,14 @@
"@metadata": {
"authors": [
"Erdemaslancan",
- "Mirzali"
+ "Mirzali",
+ "Gırd"
]
},
"babel": "Melumatê karberê Babili",
"babel-desc": "Xulusa da sablonan dı dêsê babilê karberi otomatik vışatıştı, fonksiyonê <code>#babil</code>i fêno de",
"babel-url": "Project:Babil",
"babel-footer-url": ":Kategoriye:Babil - Gorê zonu ra karberi",
- "babel-autocreate-abort": "Karbero kı şıma belı kerdo, kategoriya dı [[$1|Babil]]i dı ca gêno u peyd zi nê gêrêno.",
"babel-autocreate-reason": "Kategoriye [[$1|Babil]]i otomatik vırazêno.",
"babel-autocreate-text-levels": "Karberê ke na kategorideyê, nê zıwani sewiye dê $1 u $2 derece zanê.",
"babel-autocreate-text-main": "Karberê ke na kategorideyê $1 zuwani zanê.",
@@ -20,7 +20,7 @@
"babel-4": "No karber [[$1|Zey zıwan]] dê xo [[$2|$3]] zano.",
"babel-5": "No karber [[$1|profesyonel]] sewiye dı [[$2|$3]] zano.",
"babel-N": "[[$1|Zıwanè ]] marda nê karberi [[$2|$3]]o.",
- "babel-0-n": "No karber [[$1|hêç]] [[$2|Zazaki]] nêzano (ya zi fahm keno feqet nêzano qısey bıkero).",
+ "babel-0-n": "No karber/Na karbere [[$1|hêç]] [[$2|Zazaki]] nêzano/nêzana (ya zi fam keno/kena feqet nêzano/nêzana qısey bıkero).",
"babel-1-n": "No karber [[$1|tenekê]] [[$2|Zazaki]] zano.",
"babel-2-n": "[[$2|Zazakiya]] nê karberi [[$1|hewla]].",
"babel-3-n": "No karber [[$1|weş]] [[$2|zazaki]] zano.",
diff --git a/MLEB/Babel/i18n/kk-cyrl.json b/MLEB/Babel/i18n/kk-cyrl.json
index 2ea904dc..e2cb372b 100644
--- a/MLEB/Babel/i18n/kk-cyrl.json
+++ b/MLEB/Babel/i18n/kk-cyrl.json
@@ -4,7 +4,8 @@
"AlefZet",
"GaiJin",
"Arystanbek",
- "Нұрлан Рахымжанов"
+ "Нұрлан Рахымжанов",
+ "Mirgulkali"
]
},
"babel": "Бабыл қатысушы ақпараты",
@@ -28,5 +29,7 @@
"babel-4-n": "Бұл қатысушы [[$2|қазақ тілін]] [[$1|ана тіліне жақын деңгейде]] меңгереді.",
"babel-5-n": "Бұл қатысушы [[$2|қазақ тілін]] [[$1|кәсіби деңгейде]] меңгереді.",
"babel-N-n": "[[$2|Қазақ тілі]] бұл қатысушының [[$1|ана тілі]] боп саналады.",
- "babel-footer": "Тілдері бойынша қатысушылар"
+ "babel-footer": "Тілдері бойынша қатысушылар",
+ "apihelp-query+babel-description": "Пайдаланушы білетін тілдер туралы мәлімет тауып алу",
+ "apihelp-query+babel-example-1": "Пайдаланушы <kbd>Example</kbd> үшін Бабыл мәліметтерін тауып алу"
}
diff --git a/MLEB/Babel/i18n/km.json b/MLEB/Babel/i18n/km.json
index cab79d38..917805c1 100644
--- a/MLEB/Babel/i18n/km.json
+++ b/MLEB/Babel/i18n/km.json
@@ -13,7 +13,7 @@
"babel-footer-url": ":Category:Babel - អ្នកប្រើប្រាស់តាមភាសា",
"babel-autocreate-reason": "កំពុង​បង្កើត​ទំព័រ​ចំណាត់​ថ្នាក់​ក្រុម [[$1|Babel]] ដោយ​ស្វ័យ​ប្រវត្តិ​។​",
"babel-autocreate-text-levels": "អ្នកប្រើប្រាស់​ទាំងឡាយណា ដែល​ស្ថិតនៅក្នុង​ចំណាត់ថ្នាក់ក្រុម​នេះ បញ្ជាក់​ថា​ពួកគេ​មាន​ការយល់ដឹង​កម្រិត​ $1 សម្រាប់​ភាសា $2 ។",
- "babel-autocreate-text-main": "អ្នកប្រើប្រាស់​ទាំងឡាយណា ដែល​ស្ថិតនៅក្នុង​ចំណាត់ថ្នាក់ក្រុម​នេះ បញ្ជាក់​ថា​ពួកគេ​ចេះ​និយាយ​​ភាសា $1 ។",
+ "babel-autocreate-text-main": "អ្នកប្រើប្រាស់នៅក្នុង​ចំណាត់ថ្នាក់ក្រុម​នេះ បញ្ជាក់​ថា​ពួកគេ​ចេះ​និយាយ​​ភាសា $1 ។",
"babel-0": "អ្នកប្រើប្រាស់នេះ[[$1|មិនមាន]]ចំណេះដឹង [[$2|$3]] (ឬយល់បានខ្លះៗទាំងលំបាក)។",
"babel-1": "អ្នកប្រើប្រាស់នេះចេះ [[$2|$3]] [[$1|ថ្នាក់មូលដ្ឋាន]]​។",
"babel-2": "អ្នកប្រើប្រាស់នេះចេះ [[$2|$3]] [[$1|ថ្នាក់មធ្យម]]។",
diff --git a/MLEB/Babel/i18n/ko.json b/MLEB/Babel/i18n/ko.json
index fa4161a1..78d7f85b 100644
--- a/MLEB/Babel/i18n/ko.json
+++ b/MLEB/Babel/i18n/ko.json
@@ -4,14 +4,17 @@
"Gapo",
"Kwj2772",
"아라",
- "IRTC1015"
+ "IRTC1015",
+ "Revi",
+ "Ykhwong",
+ "Delim",
+ "Nuevo Paso"
]
},
"babel": "사용자 언어 정보",
"babel-desc": "사용자 지정 틀을 포함할 수 있는 바벨 유저박스 단을 만들 수 있도록 <code>#babel</code> 파서 함수를 추가합니다",
"babel-url": "Project:바벨",
"babel-footer-url": ":분류:언어별 사용자",
- "babel-autocreate-abort": "입력한 계정 이름은 [[$1|바벨]] 분류 자동 만들기를 위해 사용되고 있어서 등록할 수 없습니다.",
"babel-autocreate-reason": "[[$1|사용자 언어]] 분류를 자동으로 만들었습니다.",
"babel-autocreate-text-levels": "이 분류 안에 있는 사용자는 $2를 $1단계 수준으로 구사할 수 있다는 것을 나타냅니다.",
"babel-autocreate-text-main": "이 분류 안에 있는 사용자는 $1를 구사할 수 있습니다.",
@@ -20,15 +23,19 @@
"babel-1": "이 사용자는 [[$2|$3]]를 [[$1|조금]] 할 수 있습니다.",
"babel-2": "이 사용자는 [[$2|$3]]를 [[$1|어느 정도]] 할 수 있습니다.",
"babel-3": "이 사용자는 [[$2|$3]]를 [[$1|유창하게]] 할 수 있습니다.",
- "babel-4": "이 사용자는 [[$2|$3]]를 [[$1|모국어에 준하는 수준]]으로 할 수 있습니다.",
+ "babel-4": "이 사용자는 [[$2|$3]]를 [[$1|모어에 준하는 수준]]으로 할 수 있습니다.",
"babel-5": "이 사용자는 [[$2|$3]]를 [[$1|전문가 수준]]으로 할 수 있습니다.",
- "babel-N": "이 사용자는 [[$2|$3]]가 [[$1|모국어]]입니다.",
+ "babel-N": "이 사용자는 [[$2|$3]]가 [[$1|모어]]입니다.",
"babel-0-n": "이 사용자는 [[$2|한국어]]를 [[$1|모르거나]], 이해하는 데 어려움이 있습니다.",
"babel-1-n": "이 사용자는 [[$2|한국어]]를 [[$1|조금]] 할 수 있습니다.",
"babel-2-n": "이 사용자는 [[$2|한국어]]를 [[$1|어느 정도]] 할 수 있습니다.",
"babel-3-n": "이 사용자는 [[$2|한국어]]를 [[$1|유창하게]] 할 수 있습니다.",
- "babel-4-n": "이 사용자는 [[$2|한국어]]를 [[$1|모국어에 준하는 수준]]으로 할 수 있습니다.",
+ "babel-4-n": "이 사용자는 [[$2|한국어]]를 [[$1|모어에 준하는 수준]]으로 할 수 있습니다.",
"babel-5-n": "이 사용자는 [[$2|한국어]]를 [[$1|전문가 수준]]으로 할 수 있습니다.",
- "babel-N-n": "이 사용자는 [[$2|한국어]]가 [[$1|모국어]]입니다.",
- "babel-footer": "언어별 사용자"
+ "babel-N-n": "이 사용자는 [[$2|한국어]]가 [[$1|모어]]입니다.",
+ "babel-footer": "언어별 사용자",
+ "apihelp-query+babel-description": "사용자가 알고 있는 언어에 관한 정보를 가져옵니다",
+ "apihelp-query+babel-summary": "사용자가 알고 있는 언어에 관한 정보를 가져옵니다",
+ "apihelp-query+babel-param-user": "정보를 받아올 대상 사용자",
+ "apihelp-query+babel-example-1": "사용자 <kbd>Example</kbd>의 바벨 정보를 불러오기"
}
diff --git a/MLEB/Babel/i18n/krc.json b/MLEB/Babel/i18n/krc.json
index 8197c4f1..6cceaa94 100644
--- a/MLEB/Babel/i18n/krc.json
+++ b/MLEB/Babel/i18n/krc.json
@@ -1,14 +1,14 @@
{
"@metadata": {
"authors": [
- "Iltever"
+ "Iltever",
+ "Ernác"
]
},
"babel": "Къошулуучуну тиллерини юсюнден информация (Вавилон)",
"babel-desc": "Башха шаблонланыда къошаргъа болгъан информация бла колонканы автомат къураргъа берген парсерни <code>#babel</code> функциясын къошады.",
"babel-url": "Project:Вавилон",
"babel-footer-url": ":Category:Википедия:Тиллеге кёре къошулуучула",
- "babel-autocreate-abort": "Белгиленнген аты къошулгъанны [[$1|Вавилон]] категорияны бетлерин автомат къураргъа хайырланады, регистрация этилинмейди.",
"babel-autocreate-reason": "[[$1|Вавилон]] категорияны бетлерин автомат къурау",
"babel-autocreate-text-levels": "Бу категориядагъы къошулуучула $2 тилге билгенлерине $1 дараджа белгилегендиле.",
"babel-autocreate-text-main": "Бу категориядагъы къошулуучула $1 тилни билгенлерин белгилегендиле.",
diff --git a/MLEB/Babel/i18n/ksh.json b/MLEB/Babel/i18n/ksh.json
index 724b7c93..ce1d48cb 100644
--- a/MLEB/Babel/i18n/ksh.json
+++ b/MLEB/Babel/i18n/ksh.json
@@ -4,29 +4,28 @@
"Purodha"
]
},
- "babel": "{{GENDER:$1|Däm $1 sing|Däm $1 sing|Däm Medmaacher $1 sing|Däm $1 sing|Dä Metmaacheren $1 ier}} Shprooche-Weße",
- "babel-desc": "Brengk de <code>#babel</code>-Paaserfongxjohn, womet me automatesch ene Babel-Medmaacher-Kaste opboue kann, un dobeij och selfßjemaate Schabloone nozze kan.",
+ "babel": "{{GENDER:$1|Däm $1 sing|Däm $1 sing|Däm Metmaacher $1 sing|Däm $1 sing|Dä Metmaacheren $1 ier}} Schprohche_Weße",
+ "babel-desc": "Brengk de Paaserfongxjohn <code lang=\"en\" xml:lang=\"en\" dir=\"ltr\">#babel</code>, womet me automatesch ene Babel-Metmaacher-Kaßte opboue kann, un dohbeij och selfßjemahte Schablohne nöze kann.",
"babel-url": "Project:Babel",
- "babel-footer-url": ":Category:Babel - Metmaacher noh Shprooche",
- "babel-autocreate-abort": "Dä Metmaachername es ald verjovve för [[$1|Babel]]-{{int:categories}} automattesch aanzelääje, dä kanns De nit han.",
- "babel-autocreate-reason": "En Saachjrupp fum [[$1|Babel]]-Süßteem es automattesch aanjelaat woode.",
- "babel-autocreate-text-levels": "De Metmaacher un Metmaacherėnne en heh dä Saachjropp han jesaat, se künnte di Schprohch $1 $2.",
+ "babel-footer-url": ":Category:Babel - Metmaacher noh Schprohche",
+ "babel-autocreate-reason": "En Saachjropp fum [[$1|Babel]]-Süßtehm es automattesch aanjelaat woode.",
+ "babel-autocreate-text-levels": "De Metmaacher un Metmaacherėnne en heh dä Saachjropp han jesaat, se künnte di Schprohch $2 om Nivoh $1.",
"babel-autocreate-text-main": "Metmaacher en heh dä Saachjropp han jesaat, se künnte jät $1.",
- "babel-autocreate-user": "Automattesche Babel-Jroppe-Aanlääjer",
- "babel-0": "Heh {{GENDER:$4|dä|dat|dä Medmaacher|dat|di}} hät [[$1|kein]] Ahnong vun [[$2|$3]], udder ferschteiht di Schprohch esu joht wi jaa nit.",
- "babel-1": "Heh {{GENDER:$4|dä|dat|dä Medmaacher|dat|di}} hät [[$1|Jrondlaare]] fon [[$2|$3]] drop.",
- "babel-2": "Heh {{GENDER:$4|dä|dat|dä Medmaacher|dat|di}} kann [[$1|meddeljoot]] met [[$2|$3]] ömjonn.",
- "babel-3": "Heh {{GENDER:$4|dä|dat|dä Medmaacher|dat|di}} kann [[$2|$3]] [[$1|reschtesch joot]].",
- "babel-4": "För heh {{GENDER:$4|dä|dat|dä Medmaacher|dat|di}} eß [[$2|$3]] [[$1|bahl wi {{GENDER:$4|sing|däm sing|en|en|ier}} Mottershprooch]].",
- "babel-5": "Heh {{GENDER:$4|dä|dat|dä Medmaacher|dat|di}} bruch [[$2|$3]] [[$1|berohflesh]].",
- "babel-N": "{{GENDER:$4\n|Heh däm sing [[$1|Mottershprooch]] eß [[$2|$3]]\n|Heh däm sing [[$1|Mottershprooch]] eß [[$2|$3]]\n|För heh dä Medmaacher eß [[$2|$3]] de [[$1|Mottershprooch]]\n|För dat heh eß [[$2|$3]] de [[$1|Mottershprooch]]\n|Heh dä ier [[$1|Mottershprooch]] eß [[$2|$3]]\n}}.",
- "babel-0-n": "Heh {{GENDER:$4|dä|dat|dä Medmaacher|dat|di}} hät [[$1|keij Aahnong]] fon enne [[$2|ripoaresche Schprohch]], udder ferschteijt fum ripoaresch Pladd esu joot wi nix.",
- "babel-1-n": "Heh {{GENDER:$4|dä|dat|dä Medmaacher|dat|di}} hät [[$1|Jrondlaare]] fon ennem [[$2|ripoaresch Platt]] drop.",
- "babel-2-n": "Heh {{GENDER:$4|dä|dat|dä Medmaacher|dat|di}} kann med_ennem [[$2|ripoaresch Platt]] [[$1|meddeljoot]] ömjonn.",
- "babel-3-n": "Heh {{GENDER:$4|dä|dat|dä Medmaacher|dat|di}} kann [[$2|en ripoaresche Schprohch]] [[$1|reschtesch joot]].",
- "babel-4-n": "För heh {{GENDER:$4|dä|dat|dä Medmaacher|dat|di}} es [[$2|e ripoaresch Platt]] [[$1|bahl wi {{GENDER:$4|sing|sing|de|de|ier}} Mottershprooch]].",
- "babel-5-n": "Heh {{GENDER:$4|dä|dat|dä Medmaacher|dat|di}} brur_en [[$2|ripoaresche Sprohr]]_[[$1|em Berohf]].",
- "babel-N-n": "{{GENDER:$4\n|Heh däm sing [[$1|Motterschprohch]] es_en [[$2|ripoaresche Schprohch]]\n|Heh däm sing [[$1|Motterschprohch]] es_en [[$2|ripoaresche Schprohch]]\n|För heh dä Medmaacher es_en [[$2|ripoaresche Schprohch]] de [[$1|Motterschprohch]]\n|För dat heh es_en [[$2|ripoaresche Schprooch]] de [[$1|Motterschprohch]]\n|Heh dä ier [[$1|Motterschprohch]] es_en [[$2|ripoaresche Schprohch]]\n}}.",
+ "babel-autocreate-user": "Automattesche Babel-Jroppe-Aanlähjer",
+ "babel-0": "Heh {{GENDER:$4|dä|dat|dä Metmaacher|di|dat}} hät [[$1|kein]] Ahnong vun [[$2|$3]], udder ferschteiht di Schprohch esu joht wi jaa nit.",
+ "babel-1": "Heh {{GENDER:$4|dä|dat|dä Metmaacher|di|dat}} hät [[$1|Jrondlahre]] fon [[$2|$3]] drop.",
+ "babel-2": "Heh {{GENDER:$4|dä|dat|dä Metmaacher|di|dat}} kann [[$1|meddeljoht]] met [[$2|$3]] ömjonn.",
+ "babel-3": "Heh {{GENDER:$4|dä|dat|dä Metmaacher|di|dat}} kann [[$2|$3]] [[$1|reschtesch joot]].",
+ "babel-4": "För heh {{GENDER:$4|dä|dat|dä Metmaacher|di|dat}} eß [[$2|$3]] [[$1|bahl wi {{GENDER:$4|sing|däm sing|en|ier|en}} Motterschprohch]].",
+ "babel-5": "Heh {{GENDER:$4|dä|dat|dä Metmaacher|di|dat}} bruch [[$2|$3]] [[$1|berohflesh]].",
+ "babel-N": "{{GENDER:$4\n|Heh däm sing [[$1|Motterschprohch]] eß [[$2|$3]]\n|Heh däm sing [[$1|Motterschprohch]] eß [[$2|$3]]\n|För heh dä Metmaacher eß [[$2|$3]] de [[$1|Motterschprohch]]\n|Heh dä ier [[$1|Motterschprohch]] eß [[$2|$3]]\n|För dat heh eß [[$2|$3]] de [[$1|Motterschprohch]]\n}}.",
+ "babel-0-n": "Heh {{GENDER:$4|dä|dat|dä Metmaacher|di|dat}} hät [[$1|keij Aahnong]] fon enne [[$2|ripoahresche Schprohch]], udder ferschteijt fum ripoahresch Pladd esu joht wi nix.",
+ "babel-1-n": "Heh {{GENDER:$4|dä|dat|dä Metmaacher|di|dat}} hät [[$1|Jrondlahre]] fon ennem [[$2|ripoahresch Platt]] drop.",
+ "babel-2-n": "Heh {{GENDER:$4|dä|dat|dä Metmaacher|di|dat}} kann med_ennem [[$2|ripoahresch Platt]] [[$1|meddeljohd]] ömjonn.",
+ "babel-3-n": "Heh {{GENDER:$4|dä|dat|dä Metmaacher|di|dat}} kann [[$2|en ripoaresche Schprohch]] [[$1|reschtesch joht]].",
+ "babel-4-n": "För heh {{GENDER:$4|dä|dat|dä Metmaacher|di|dat}} es [[$2|e ripoahresch Platt]] [[$1|bahl wi {{GENDER:$4|sing|sing|de|ier|de}} Motterschprohch]].",
+ "babel-5-n": "Heh {{GENDER:$4|dä|dat|dä Metmaacher|di|dat}} brur_en [[$2|ripoaresche Sprohr]]_[[$1|em Berohf]].",
+ "babel-N-n": "{{GENDER:$4\n|Heh däm sing [[$1|Motterschprohch]] es_en [[$2|ripoahresche Schprohch]]\n|Heh däm sing [[$1|Motterschprohch]] es_en [[$2|ripoahresche Schprohch]]\n|För heh dä Metmaacher es_en [[$2|ripoahresche Schprohch]] de [[$1|Motterschprohch]]\n|Heh dä ier [[$1|Motterschprohch]] es_en [[$2|ripoahresche Schprohch]]\n|Dat heh hädd_en [[$2|ripoahresche]] [[$1|Motterschprohch]]\n}}.",
"babel-template": "Template:{{ns:2}} $1",
- "babel-footer": "Metmaacher noh Shprooche"
+ "babel-footer": "Metmaacher noh Schprohche"
}
diff --git a/MLEB/Babel/i18n/ku-latn.json b/MLEB/Babel/i18n/ku-latn.json
index 33180f65..419c0afd 100644
--- a/MLEB/Babel/i18n/ku-latn.json
+++ b/MLEB/Babel/i18n/ku-latn.json
@@ -1,9 +1,15 @@
{
"@metadata": {
"authors": [
- "George Animal"
+ "George Animal",
+ "Bikarhêner",
+ "Ghybu"
]
},
+ "babel": "Agahiyên bikarhênerê Babîlê",
+ "babel-url": "Project:Babîl",
+ "babel-footer-url": ":Kategorî:Babîl - Bikarhênerên li gorî zimanê",
+ "babel-N": "Zimanê [[$1|zikmakî]] yê {{GENDER:{{BASEPAGENAME}}|vî bikarhênerî|vê bikarhênerê|vî/vê bikarhênerî/ê}} [[$2|$3]] ye.",
"babel-template": "Template:$1",
- "babel-footer": "Bikarhêner li gorî ziman"
+ "babel-footer": "Bikarhêner li gorî zimanê"
}
diff --git a/MLEB/Babel/i18n/kw.json b/MLEB/Babel/i18n/kw.json
index e356c193..c3073ed6 100644
--- a/MLEB/Babel/i18n/kw.json
+++ b/MLEB/Babel/i18n/kw.json
@@ -11,7 +11,6 @@
"babel-desc": "Keworra an gwythres styryer <code>#babel</code> rag alowa denethyans awtomategys a goloven gist-devnydhyer babel gans an gallos a ynkludya skantlyns personelhes",
"babel-url": "Project:Babel",
"babel-footer-url": ":Category:Babel - Devnydhyoryon herwydh yeth",
- "babel-autocreate-abort": "Devnydhys yw an hanow-devnydhyer res genowgh rag awto-gwruthyl skantlyns [[$1|Babel]] ha ny yllir y govskrifa.",
"babel-autocreate-reason": "Ow kwruthyl yn awtomatek folen an klass [[$1|Babel]].",
"babel-autocreate-text-levels": "Devnydhyoryon y'n klass-ma a dheklar y's teves niver $1 rag $2.",
"babel-autocreate-text-main": "Devnydhyoryon y'n klass-ma a dheklar y's teves godhvos a $1.",
diff --git a/MLEB/Babel/i18n/ky.json b/MLEB/Babel/i18n/ky.json
index 3e843f21..58c09a70 100644
--- a/MLEB/Babel/i18n/ky.json
+++ b/MLEB/Babel/i18n/ky.json
@@ -9,7 +9,6 @@
"babel-desc": "Башка калыптарга кошконго мүмкүн болгон, колдонуучунун Вавилон жадыбалын автоматтык түрдө түзүүчү <code>#babel</code> парсер функциясын кошот.",
"babel-url": "Project:Вавилон",
"babel-footer-url": ":Category:Вавилон - колдонуучулар тилдери боюнча",
- "babel-autocreate-abort": "Сиз көрсөткөн колдонуучун аты [[$1|Babel]] категориясын автоматтык түрдө түзүүдө колдонулат жана каттаганга болбойт.",
"babel-autocreate-reason": "[[$1|Babel]] категория барагын автоматтык түрдө түзүү.",
"babel-autocreate-text-levels": "Бул категориядагы колдонуучулар $1 деңгээлде $2 тилин билгендигин белгилешүүдө.",
"babel-autocreate-text-main": "Бул категориядагы колдонуучулар $1 тилин билгендигин белгилешүүдө.",
diff --git a/MLEB/Babel/i18n/la.json b/MLEB/Babel/i18n/la.json
index 003c0507..fbd2704c 100644
--- a/MLEB/Babel/i18n/la.json
+++ b/MLEB/Babel/i18n/la.json
@@ -14,7 +14,6 @@
"babel-desc": "<code>#babel</code> functio additur ut capsa linguarum scientiam usoris describens se ipsa creetur. Formulae aliae ac linguas describentes includi possunt",
"babel-url": "Project:Babel",
"babel-footer-url": ":Category:Usores lingua digesti",
- "babel-autocreate-abort": "Nomen a te electum, quod utilis est ad [[$1|Babel]] categorias creandas, inscribi non potest.",
"babel-autocreate-reason": "[[$1|Babel]] Categoriae pagina ipsa mox creabitur. Expecta, quaeso.",
"babel-autocreate-text-levels": "Usores in hac categoria inclusi nuntiant sibi gradum $1 utendi linguam $2 esse",
"babel-autocreate-text-main": "Usores in hac categoria inclusi nuntiant se contribuere posse cum lingua $1",
diff --git a/MLEB/Babel/i18n/lad.json b/MLEB/Babel/i18n/lad.json
index 1af952a7..56ca3c2f 100644
--- a/MLEB/Babel/i18n/lad.json
+++ b/MLEB/Babel/i18n/lad.json
@@ -4,14 +4,14 @@
"Jewbask",
"Maor X",
"Purodha",
- "Universal Life"
+ "Universal Life",
+ "StevenJ81"
]
},
"babel": "Enformasyón de usador de Babel",
"babel-desc": "Ajustar la <code>#babel</code> fonksyón analitika para dar lecencia a la generancia otomatika de un columna de caxa de usador babel con la abilidad de tener xabblones propios",
"babel-url": "Project:Babel",
- "babel-footer-url": ":Category:Babel - Usadores por lîngua",
- "babel-autocreate-abort": "El nombre de usador que escogites se usa para la oto-criación de katēggorías [[$1|Babel]] i no puede ser rejistrado.",
+ "babel-footer-url": ":Kateggoría:Babel - Usadores por lîngua",
"babel-autocreate-reason": "Criando otomatika mente, la hoja de katēggorías [[$1|Babel]].",
"babel-autocreate-text-levels": "Usadores en este katēggoría declaran que tienen un nivel de kapachidad $1 de la lingua $2.",
"babel-autocreate-text-main": "Usadores en este katēggoría declaran que saben la lingua $1.",
diff --git a/MLEB/Babel/i18n/lb.json b/MLEB/Babel/i18n/lb.json
index 971c590c..c3e77c2d 100644
--- a/MLEB/Babel/i18n/lb.json
+++ b/MLEB/Babel/i18n/lb.json
@@ -9,10 +9,9 @@
"babel-desc": "Setzt d'<code>#babel</code> Parserfunktioun derbäi, fir déi automatesch Generatioun vun enger Babel-Benotzerbox Kolonn, mat der Méiglechkeet fir eege Schablounen anzebannen",
"babel-url": "Project:Babel",
"babel-footer-url": ":Kategorie:Babel - Benotzer no Sprooch",
- "babel-autocreate-abort": "De Benotzernumm deen Dir uginn hutt, gëtt fir d'automatescht Uleeë vu [[$1|Babel]]-Kategorië benotzt a kann net gespäichert ginn.",
"babel-autocreate-reason": "Automatesch eng [[$1|Babel]]-Kategorie-Säit maachen.",
"babel-autocreate-text-levels": "Benotzer an dëser Kategorie ginn un datt si an der Sprooch $2 den Niveau $1 hunn.",
- "babel-autocreate-text-main": "Benotzer an dëser Kategorie ginn un datt si Kenntnesser vun der Sprooch $1 hunn.",
+ "babel-autocreate-text-main": "Benotzer an dëser Kategorie ginn hir Kenntnesser an der Sprooch $1 un.",
"babel-autocreate-user": "Babel automatesch uleeën",
"babel-0": "Dëse Benotzer huet [[$1|keng]] Kenntnesser vun [[$2|$3]] (oder versteet et just mat grousse Schwieregkeeten).",
"babel-1": "Dëse Benotzer huet [[$1|Grondkenntnesser]] vun [[$2|$3]].",
@@ -28,5 +27,8 @@
"babel-4-n": "Dëse Benotzer beherrscht [[$2|Lëtzebuergesch]] [[$1|bal wéi seng Mammesprooch]].",
"babel-5-n": "Dëse Benotzer huet [[$1|professionnell]] Kenntnesser vum [[$2|Lëtzebuergeschen]].",
"babel-N-n": "Dësem Benotzer seng [[$1|Mammesprooch]] ass [[$2|Lëtzebuergesch]].",
- "babel-footer": "Benotzer pro Sprooch"
+ "babel-footer": "Benotzer pro Sprooch",
+ "apihelp-query+babel-description": "Informatioune kréien iwwer déi Sproochen déi de Benotzer kann",
+ "apihelp-query+babel-param-user": "Benotzer fir den d'Informatiounen ugefrot ginn",
+ "apihelp-query+babel-example-1": "Babel-Informatioun fir de Benotzer <kbd>Beispill</kbd> kréien"
}
diff --git a/MLEB/Babel/i18n/lez.json b/MLEB/Babel/i18n/lez.json
index 61db0405..533e383d 100644
--- a/MLEB/Babel/i18n/lez.json
+++ b/MLEB/Babel/i18n/lez.json
@@ -6,10 +6,9 @@
]
},
"babel": "Уртахдин чlаларикай малумат",
- "babel-desc": "<code>#babel</code> парсер-функция алава йийзва ва и функция муькуь чешнеяр кутадай мумкинвал галаз чIаларикай малумат квай колонка автоматдаказ туькIуьрун мумкинвал гузва",
+ "babel-desc": "<code>#babel</code> парсер-функция алава йийзва ва и функция муькуь чешнеяр кутадай мумкинвал галаз чӀаларикай малумат квай колонка автоматдаказ туькӀуьрун мумкинвал гузва",
"babel-url": "Project:Бабил",
"babel-footer-url": "Категория:Бабил — чӀалариз килигна уртахар",
- "babel-autocreate-abort": "Уртахдин къалурай тlвар [[$1|Вавилон]] категория автоматдаказ туькlуьрун патал кардик кутазва ва гьа тlвар регистрация йийз жедач.",
"babel-autocreate-reason": "[[$1|Babel]] категориядин ччин автоматдаказ туькlуьрун",
"babel-autocreate-text-levels": "И категориядин уртахар $2 чlалан $1-й чирвилин дережа къалурна.",
"babel-autocreate-text-main": "И категориядин уртахар $1 чlалан чирвал къалурна.",
@@ -27,5 +26,5 @@
"babel-4-n": "И уртахдиз [[$2|Лезги чlал]] [[$1|хайи чlал хьиз]] чизва.",
"babel-5-n": "И уртахдиз [[$2|Лезги чlалан]] [[$1|пешекарвилин]] чирвилер ава.",
"babel-N-n": "[[$2|Лезги чlал]] и уртахдин [[$1|хайи чlал]] я.",
- "babel-footer": "ЧIалариз килигна уртахар"
+ "babel-footer": "ЧӀалариз килигна уртахар"
}
diff --git a/MLEB/Babel/i18n/lfn.json b/MLEB/Babel/i18n/lfn.json
index d8d2c009..069c6d3e 100644
--- a/MLEB/Babel/i18n/lfn.json
+++ b/MLEB/Babel/i18n/lfn.json
@@ -1,7 +1,8 @@
{
"@metadata": {
"authors": [
- "Purodha"
+ "Purodha",
+ "StevenJ81"
]
},
"babel-url": "Project:Babel",
@@ -11,9 +12,11 @@
"babel-3": "Esta usor es [[$1|bon capas]] de [[$2|$3]].",
"babel-4": "Esta usor es [[$1|la plu perfeta capas]] de [[$2|$3]].",
"babel-N": "Esta usor ave [[$2|$3]] se [[$1|lingua propre]].",
+ "babel-0-n": "This user has [[$1|no]] knowledge of [[$2|Elefen (Lingua Franca Nova)]] (or understands it with considerable difficulty).",
"babel-1-n": "Esta usor es [[$1|poca capas]] de [[$2|Lingua Franca Nova]].",
"babel-2-n": "Esta usor es [[$1|medial capas]] de [[$2|Lingua Franca Nova]].",
"babel-3-n": "Esta usor es [[$1|bon capas]] de [[$2|Lingua Franca Nova]].",
"babel-4-n": "Esta usor es [[$1|la plu perfeta capas]] de [[$2|Lingua Franca Nova]].",
+ "babel-5-n": "This user has [[$1|professional]] knowledge of [[$2|Elefen (Lingua Franca Nova)]].",
"babel-N-n": "Esta usor ave [[$2|Lingua Franca Nova]] se [[$1|lingua propre]]."
}
diff --git a/MLEB/Babel/i18n/li.json b/MLEB/Babel/i18n/li.json
index f72737fb..f3ee8cf2 100644
--- a/MLEB/Babel/i18n/li.json
+++ b/MLEB/Babel/i18n/li.json
@@ -9,7 +9,6 @@
"babel-desc": "Voog de <code>#babel</code>-parserfónksie toe óm automatische generatie van 'ne babelgebroekersbóks mäögelik te make mit de mäögelikheid óm aangepasde sjablone in te voge",
"babel-url": "Project:Babel",
"babel-footer-url": ":Category:Babel - Gebroekers nao sjpraok",
- "babel-autocreate-abort": "De opgegaeve gebroekersnaam weurt gebroek veur 't automatisch aanmake van [[$1|Babel]]-categorieë en kan neet geregistreerd waere.",
"babel-autocreate-reason": "Automatisch aanmake [[$1|Babel]]-categoriepagina.",
"babel-autocreate-text-levels": "Gebroekers in dees categorie gaeve aan dat hun niveau veur de taal $2 $1 is.",
"babel-autocreate-text-main": "Gebroekers in dees categorie gaeve aan dat zie benöl höbbe vaan de taol $1.",
@@ -19,13 +18,17 @@
"babel-3": "Deze gebroeker haet [[$1|good]] benöl van 't [[$2|$3]].",
"babel-4": "Deze gebroeker haet benöl van 't [[$2|$3]] op [[$1|bekans-mojerspraokniveau]].",
"babel-5": "Deze gebroeker haet [[$1|perfesjeneel]] benöl van 't [[$2|$3]].",
- "babel-N": "Deze gebroeker haet benöl van 't [[$2|$3]] op [[$1|mojerspraokniveau]].",
- "babel-0-n": "Deze gebroeker haet [[$1|gein]] benöl van 't [[$2|Limburgs]] (of haet groete meujte 't te begriepe).",
- "babel-1-n": "Deze gebroeker haet op [[$1|basisniveau]] benöl van 't [[$2|Limburgs]].",
- "babel-2-n": "Deze gebroeker haet [[$1|gemiddeld]] benöl van 't [[$2|Limburgs]].",
- "babel-3-n": "Deze gebroeker haet [[$1|good]] benöl van 't [[$2|Limburgs]].",
- "babel-4-n": "Deze gebroeker haet benöl van 't [[$2|Limburgs]] op [[$1|bekans-mojerspraokniveau]].",
- "babel-5-n": "Deze gebroeker haet [[$1|perfesjeneel]] benöl van 't [[$2|Limburgs]].",
- "babel-N-n": "Deze gebroeker haet benöl van 't [[$2|Limburgs]] op [[$1|mojerspraokniveau]].",
- "babel-footer": "Gebroekers per sjpraok"
+ "babel-N": "Deze gebroeker haet 't [[$2|$3]] es [[$1|moderspraok]].",
+ "babel-0-n": "Deze gebroeker haet [[$1|gein]] kènnis van 't [[$2|Limburgs]] (of haet groete meujte 't te begriepe).",
+ "babel-1-n": "Deze gebroeker haet 'n [[$1|elementair kènnis]] van 't [[$2|Limburgs]].",
+ "babel-2-n": "Deze gebroeker haet [[$1|gemiddelde]] kènnis van 't [[$2|Limburgs]].",
+ "babel-3-n": "Deze gebroeker haet 'n [[$1|gevörderde]] kènnis van 't [[$2|Limburgs]].",
+ "babel-4-n": "Deze gebroeker behiersj 't [[$2|Limburgs]] ofwen 't zien [[$1|moderspraok]] woor.",
+ "babel-5-n": "Deze gebroeker haet 'n [[$1|perfesjeneel]] kènnis van 't [[$2|Limburgs]].",
+ "babel-N-n": "Deze gebroeker haet 't [[$2|Limburgs]] es zien [[$1|moderspraok]].",
+ "babel-footer": "Gebroekers per sjpraok",
+ "apihelp-query+babel-description": "Krieg infermasie euver welche spraoke de gebroeker kèntj",
+ "apihelp-query+babel-summary": "Krieg infermasie euver welche spraoke de gebroeker kèntj",
+ "apihelp-query+babel-param-user": "Gebroeker wo me infermasie euver krieg",
+ "apihelp-query+babel-example-1": "Veure Babel-infermasie veure gebroeker <kbd>Veurbild</kbd>"
}
diff --git a/MLEB/Babel/i18n/lij.json b/MLEB/Babel/i18n/lij.json
index d57a78e3..f3828ecd 100644
--- a/MLEB/Babel/i18n/lij.json
+++ b/MLEB/Babel/i18n/lij.json
@@ -1,15 +1,34 @@
{
- "@metadata": [],
- "babel-0": "St'utente ô [[$1|no]] capisce o [[$2|$3]] (o capisce con ben-ben de difficultæ).",
- "babel-1": "St'utente ô l'è'n [[$1|prinçipiante]] de [[$2|$3]].",
- "babel-2": "St'utenteô l'è a [[$1|mediô]] levellu de [[$2|$3]].",
- "babel-3": "St'utente ô sa asæ de [[$2|$3]], ô l'è [[$1|avançou]].",
- "babel-4": "St'utente ô parla [[$2|$3]] quæxi [[$1|comme ûn d'o paize]].",
- "babel-N": "St'utentel'è [[$1|nustran]] [[$2|$3]].",
- "babel-0-n": "St'utente ô [[$1|no]] capisce o [[$2|lìggûre]] (o capisce con ben-ben de difficultæ).",
- "babel-1-n": "St'utente ô l'è'n [[$1|prinçipiante]] de [[$2|lìggûre]].",
- "babel-2-n": "St'utenteô l'è a [[$1|mediô]] levellu de [[$2|lìggûre]].",
- "babel-3-n": "St'utente ô sa asæ de [[$2|lìggûre]], ô l'è [[$1|avançou]].",
- "babel-4-n": "St'utente ô parla [[$2|lìggûre]] quæxi [[$1|comme ûn d'o paize]].",
- "babel-N-n": "St'utentel'è [[$1|nustran]] [[$2|lìggûre]]."
+ "@metadata": {
+ "authors": [
+ "Giromin Cangiaxo",
+ "S4b1nuz E.656",
+ "Luensu1959"
+ ]
+ },
+ "babel": "Babel uténte",
+ "babel-desc": "O l'azonze a parser function <code>#babel</code> pe permette a generaçion aotomatica de 'na colonna box utente babel co-a poscibilitæ d'includde di template personalizæ",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Utenti pe lengua",
+ "babel-autocreate-reason": "Creo aotomaticamente a pagina da categoria [[$1|Babel]].",
+ "babel-autocreate-text-levels": "I utenti inte questa categoria indican ch'ariescian a comunicâ in $2 co-in livello de conoscensa $1.",
+ "babel-autocreate-text-main": "I utenti inte sta categoria indican o so livello de conoscensa in $1.",
+ "babel-0": "St'uténte o [[$1|no l'é in gràddo de comunicâ]] in [[$2|$3]] (ò o capisce sôlo con tanta dificoltæ).",
+ "babel-1": "St'uténte chi o peu contriboî co-in livéllo [[$1|elementâre]] in [[$2|$3]].",
+ "babel-2": "St'uténte chi o peu contriboî co-in livéllo [[$1|intermedio]] in [[$2|$3]].",
+ "babel-3": "St'uténte chi o peu contriboî co-in livéllo [[$1|avansòu]] in [[$2|$3]].",
+ "babel-4": "St'uténte chi o peu contriboî co-in livéllo [[$1|squæxi madreléngoa]] in [[$2|$3]].",
+ "babel-5": "St'uténte chi o peu contriboî co-in livéllo [[$1|profescionâle]] in [[$2|$3]].",
+ "babel-N": "St'uténte chi o peu contriboî co-in livéllo de [[$1|madreléngoa]] in [[$2|$3]].",
+ "babel-0-n": "St'uténte o [[$1|no l'é in gràddo de comunicâ]] in [[$2|lìgure]] (ò o capisce sôlo con tanta dificoltæ).",
+ "babel-1-n": "St'uténte chi o peu contriboî co-in livéllo [[$1|elementâre]] in [[$2|lìgure]].",
+ "babel-2-n": "St'uténte chi o peu contriboî co-in livéllo [[$1|intermedio]] in [[$2|lìgure]].",
+ "babel-3-n": "St'uténte chi o peu contriboî co-in livéllo [[$1|avansòu]] in [[$2|lìgure]].",
+ "babel-4-n": "St'uténte chi o peu contriboî co-in livéllo [[$1|squæxi madreléngoa]] in [[$2|lìgure]].",
+ "babel-5-n": "St'uténte chi o peu contriboî co-in livéllo [[$1|profescionâle]] in [[$2|lìgure]].",
+ "babel-N-n": "St'uténte chi o peu contriboî co-in livéllo de [[$1|madreléngoa]] in [[$2|lìgure]].",
+ "babel-footer": "Uténti pe léngoa",
+ "apihelp-query+babel-description": "Otegni informaçioin insce quæ lengue l'utente o conosce",
+ "apihelp-query+babel-param-user": "Utente in sciô quæ otegnî informaçioin",
+ "apihelp-query+babel-example-1": "Otegni informaçioin Babel pe l'utente <kbd>Example</kbd>"
}
diff --git a/MLEB/Babel/i18n/liv.json b/MLEB/Babel/i18n/liv.json
index aa01674a..9b9ae001 100644
--- a/MLEB/Babel/i18n/liv.json
+++ b/MLEB/Babel/i18n/liv.json
@@ -8,7 +8,6 @@
"babel-desc": "Panāb jūrõ <code>#babel</code> funktsij, laz lūodõg automātlistiz Bābõl kȭlbatijiz kast ummist mallõdõks",
"babel-url": "Project:Bābõl",
"babel-footer-url": ":Category:Bābõl - Kȭlbatijizt kīeld mõistimi",
- "babel-autocreate-abort": "Kȭlbatijiznimmõ, mis tēg paņtõ sīezõ, kȭlbatõbõd kategōrijõd [[$1|Babel]] automātlizõks lūomizõks. Sīepierāst tēg äb sōţõ siedā kȭlbatõ.",
"babel-autocreate-reason": "[[$1|Babel]] kategōrij līed automātli lūomi.",
"babel-autocreate-text-levels": "Kȭlbatijizt sīesõ kategōrijs ātõ kītõnd, ku mūoštabõd kīeldõ \"$2\" astāmõks $1.",
"babel-autocreate-text-main": "Kȭlbatijizt sīesõ kategōrijs ātõ kītõnd, ku ne mūoštabõd kīeldõ \"$1\".",
diff --git a/MLEB/Babel/i18n/lki.json b/MLEB/Babel/i18n/lki.json
index 68a1039d..a11e9f3b 100644
--- a/MLEB/Babel/i18n/lki.json
+++ b/MLEB/Babel/i18n/lki.json
@@ -1,30 +1,31 @@
{
"@metadata": {
"authors": [
- "Hosseinblue"
+ "Hosseinblue",
+ "Arash71",
+ "Lakzon"
]
},
- "babel": "زانستن دربارۀ بهرۀگر-کاربر بابل",
+ "babel": "زانستن دربارۀ کاربةر بابل",
"babel-desc": "دستور تجزیه گر<code>#babel</code> اضافۀ مۀکه گه مآوو یه سرۀ جعبۀل کاربری بابل دؤرس که گه توانایی سازین الگؤۀل تازۀ درئ",
"babel-url": "Project:بابل",
- "babel-footer-url": ":Category: بابل-بهرۀگر یا کاربرۀل ئه رؤی زوون",
- "babel-autocreate-abort": "نؤم کاربری-بهرۀگرئ گه دیارت کردئۀ ئۀرا دؤرس کردن یه سرۀ رزگ-دسۀ[[$1|بابل]] استفادۀ بیۀ نمآوو نؤم نؤیسی بوو.",
- "babel-autocreate-reason": "[[$1|babel]] دؤرس کردن یه سرۀ-خؤدکار ولگۀ رِزگی-ردیفی",
- "babel-autocreate-text-levels": "بهرۀگرۀل-کاربرۀل ئئ رزگۀ-دسۀ ئۀ زوون $2 کارزؤنی سطح $1درن",
- "babel-autocreate-text-main": "کاربرۀل-بهرۀگرۀل ئئ رزگۀ-دسۀ زوون $1 مزانن",
- "babel-0": "ئئ کاربرۀ-بهرۀگرۀ[[$2|$3]] [[$1|نمۀزانئ]] یا (سخت حالّیۀ مآووتئ).",
- "babel-1": "ئئ کاربرۀ-بهرۀگرۀ[[$2|$3]] چنۀ-درحد[[$1|پائۀای]]مۀزانئ",
- "babel-2": "ئئ کاربرۀ-بهرۀگرۀ[[$2|$3]] چنۀدرحد[[$1|نیمچۀ -متوسط]]مۀزانئ",
- "babel-3": "ئئ کاربرۀ-بهرۀگرۀ[[$2|$3]] درحد-چنۀ[[$1|ترختی کریا-پیشرفتۀ]]مۀزانئ",
- "babel-4": "ئئ کاربرۀ-بهرۀگرۀ[[$2|$3]] چنۀ-درحد[[$1|نۀزیک زوون وژمانی-دآئ]]مۀزانئ",
- "babel-5": "ئئ کاربرۀ-بهرۀگرۀ[[$2|$3]] چنۀ-درحد[[$1|فرۀ خوو]]مۀزانئ",
- "babel-N": "ئئ کاربرۀ-بهرۀگرۀ[[$2|$3]] چنۀ-درحد[[$1|زوون وژمانی-دآئ]]مۀزانئ",
- "babel-0-n": "ئئ کاربرۀ-بهرۀگرۀ[[$2|له کی]] [[$1|نمۀزانئ]] یا (سخت حالّیۀ مآووتئ).",
- "babel-1-n": "ئئ کاربرۀ-بهرۀگرۀ[[$2|له کی]] چنۀ-درحد[[$1|پائۀای]]مۀزانئ",
- "babel-2-n": "ئئ کاربرۀ-بهرۀگرۀ[[$2|له کی]]چنۀ-درحد[[$1|نیمچۀ -متوسط]]مۀزانئ",
- "babel-3-n": "ئئ کاربرۀ-بهرۀگرۀ[[$2|له کی]] چنۀ-درحد[[$1|ترختی کریا-پیشرفتۀ]]مۀزانئ",
- "babel-4-n": "ئئ کاربرۀ-بهرۀگرۀ[[$2|له کی]] چنۀ-درحد[[$1|نۀزیک زوون وژمانی-دآئ]]مۀزانئ",
- "babel-5-n": "ئئ کاربرۀ-بهرۀگرۀ[[$2|$3]] چنۀ-درحد[[$1|فرۀ خوو]]مۀزانئ",
- "babel-N-n": "ئئ کاربرۀ-بهرۀگرۀ[[$2|$3]] چنۀ-درحد[[$1|زوون وژمانی-دآئ]]مۀزانئ",
- "babel-footer": "کاربرۀل-بهرۀگرۀل ئه رؤی زوون"
+ "babel-footer-url": ":Category: بابل-کاربةرةل براساس زوون",
+ "babel-autocreate-reason": "خودکار سازین/ایجارده/ڕِزگ [[$1|بابل]]",
+ "babel-autocreate-text-levels": "کاربةرةل ئئ رده/ڕِزگة وة زوون $2 توانایی $1 دِرِن",
+ "babel-autocreate-text-main": "کاربةرةل ئئ رده/ڕِزگة دانش زوون $1 دِرِن",
+ "babel-0": "ئێ کاربەرە [[$2|$3]] [[$1|نمەزانێ]] (یاگە سەختە مەزانێ).",
+ "babel-1": "ئێ کاربەرە [[$2|$3]] چنە [[$1|گەلێ]] مەزانێ.",
+ "babel-2": "ئئ کاربةر[[$2|$3]] چنة[[$1|نیمچة/متوسط]]مةزانێ",
+ "babel-3": "ئێ کاربەرە [[$2|$3]] چنە [[$1|ترەختی کِریا]] مەزانێ.",
+ "babel-4": "ئێ کاربەرە [[$2|$3]] چنە [[$1|نەزیک زوون داڵکەئ]] مەزانێ.",
+ "babel-5": "ئێ کاربەرە [[$2|$3]] چنە [[$1|فرە خوو]] مەزانێ.",
+ "babel-N": "ئێ کاربەرە [[$2|$3]] چنە [[$1|زوون داڵکەئ]] مەزانێ.",
+ "babel-0-n": "ئێ کاربرە [[$2|لەکی]] [[$1|نمەزانێ]] (یاگە سەخت مەزانێ).",
+ "babel-1-n": "ئێ کاربەرە[[$2|لەکی]] چنە [[$1|گەڵێ]] مەزانێ.",
+ "babel-2-n": "ئێ کاربرە [[$2|لەکی]] چنە [[$1|نیمچە(متوسط)]] مەزانێ.",
+ "babel-3-n": "ئێ کاربرە [[$2|لەکی]] چنە [[$1|ترەختی کِریا]] مەزانێ.",
+ "babel-4-n": "اێ کاربەرە [[$2|لەکی]] چنە [[$1|نەزیک زوون داڵکەئ]] مەزانێ.",
+ "babel-5-n": "ئێ کاربرە [[$2|لەکی]] چنە [[$1|فرە خوو]] مەزانێ.",
+ "babel-N-n": "ئێ کاربەرە [[$2|لەکی]] چنە [[$1|زوون داڵکەئ]] مەزانێ.",
+ "babel-footer": "کاربةرةل إرؤی زوون"
}
diff --git a/MLEB/Babel/i18n/lmo.json b/MLEB/Babel/i18n/lmo.json
index ff46ff61..c0f062e9 100644
--- a/MLEB/Babel/i18n/lmo.json
+++ b/MLEB/Babel/i18n/lmo.json
@@ -10,7 +10,6 @@
"babel-desc": "Gionta la 'parser function' <code>#babel</code> per permet la generazion utumatega d'un quader \"druvat Babel\" cun la pussibilità da metegh denter 'l templat persunalizaa",
"babel-url": "Project:Babel",
"babel-footer-url": ":Catégorja:Babel - Druvat per lingua",
- "babel-autocreate-abort": "'L suranom che t'hee specificaa a l'è druvaa per l'auto-creazion de categurij [[$1|Babel]] e 'l pör mía vess registraa.",
"babel-autocreate-reason": "Creazion utumatega de la pagina de la categurìa [[$1|Babel]].",
"babel-autocreate-text-levels": "I druvat in quela categuria chì i mustren d'avegh un nivel de cunuscenza $1 de la lengua $2.",
"babel-autocreate-text-main": "I druvat in quela categuria chì i mustren ch'i cugnussen la lengua $1.",
diff --git a/MLEB/Babel/i18n/lo.json b/MLEB/Babel/i18n/lo.json
index cb4f8ba1..3bdf834c 100644
--- a/MLEB/Babel/i18n/lo.json
+++ b/MLEB/Babel/i18n/lo.json
@@ -8,7 +8,6 @@
"babel-desc": "ຕື່ມລະຫັດ <code>#babel</code> parser function ເພື່ອໃຫ້ສາມາດສ້າງ a babel userbox column with the ability to include custom templates ແບບອະໂຕມາຕິກ",
"babel-url": "ໂຄງການ: Babel",
"babel-footer-url": "ປະເພດ: Babel - ຜູ້ໃຊ້ງານຈາມພາສາ",
- "babel-autocreate-abort": "The username ທີ່ທ່ານເຈາະຈົງແມ່ນໃຊ້ສຳລັບ [[$1|Babel]] ປະເພດ ສ້າງແບບອັດຕະໂນມັດ -ການສ້າງນີ້ແມ່ນບໍສາມາດລົງທະບຽນໄດ້",
"babel-autocreate-reason": "ປະເພດໜ້າ [[$1|Babel]] ສ້າງແບບອັດຕະໂນມັດ",
"babel-autocreate-text-levels": "ຜູ້ໍ້ໃຊ້ໃນໝວດນີ້ ສະແດວງ່າ ພວກເຂົາມີທັກສະລະດັບ $1 ສຳລັບພາສາ $2.",
"babel-autocreate-text-main": "ຜູ້ໍ້ໃຊ້ໃນໝວດນີ້ ສະແດງວ່າ ພວກເຂົາມີຄວາມຮູ້ຂອງພາສາ $1.",
diff --git a/MLEB/Babel/i18n/lrc.json b/MLEB/Babel/i18n/lrc.json
index 9ef288b4..fc0a9b89 100644
--- a/MLEB/Babel/i18n/lrc.json
+++ b/MLEB/Babel/i18n/lrc.json
@@ -6,27 +6,26 @@
"Hosseinblue"
]
},
- "babel": "دونسمنیا کارور بابل",
- "babel-desc": "<کد>#بابل<کد/> نه وه تابع حیردکننه سی اجازه دئن سی خودکار راس کردن ستین جعوه کاروری وا فعال کردن قالویا مرسوم اضاف بکید",
+ "babel": "دۊنسمٱنیا کاریار بابل",
+ "babel-desc": "<رازینٱ>#بابل<رازینٱ/> ناٛ ڤا آلشتیار هیردکار سی سئلا دٱئن سی خودکار راس کردن ستین جٱڤٱ کاریاری ڤا کونشتکار کردن چۊٱیا پایدار اٛزاف بٱکیت.",
"babel-url": "Project:بابل",
- "babel-footer-url": ":Category:بابل-کاریاریا وا زون",
- "babel-autocreate-abort": "نوم کاریاری که شما سی دسه خودساخته[[$1|Babel]] د نظر گرتیته و نبوئه ثوت نام با.",
- "babel-autocreate-reason": "دسه بلگه [[$1|Babel]]راس کردن د حالت خودانجم",
- "babel-autocreate-text-levels": "کاریاریا ای دسته نشو می ئن که کاردونی د سطح $1 سی زون $2 دارن",
- "babel-autocreate-text-main": "کاریاریاای دسه نشو می ئن که زونه $1 بللن",
- "babel-0": "ای کاریار فئمسنی د حد [[$1|no]] سی [[$2|$3]] داره(یا وه سختی ونه حالینش بوئه)",
- "babel-1": "ای کاریار دونسمندی د [[$1|basic]]تا [[$2|$3]]داره.",
- "babel-2": "ای کاریار دونسمنی د [[$1|intermediate]]تا [[$2|$3]] داره.",
- "babel-3": "ای کاریار دونسمنی د [[$1|advanced]] تا [[$2|$3]]داره.",
- "babel-4": "ای کاریار [[$1|د حد زون دا]]،[[$2|$3]]نه بلله.",
- "babel-5": "ای کاریار د حد[[$1|فره خو]]،[[$2|$3]] نه بلله.",
- "babel-N": "ای کاریار [[$1|native]] د حد زون دا تونه[[$2|$3]] بئفمه .",
- "babel-0-n": "ای کاریار [[$1|هیچ]] دونسمنی د [[$2|لوری]] ناره (یا وه سختی حالینش بوئه)",
- "babel-1-n": "ای کاریار [[$1|کم و کوتی]] دونسمنی د [[$2|لوری]] داره.",
- "babel-2-n": "ای کاریار [[$1|د حد مینجایی]]دونسمنی د [[$2|لوری]]داره.",
- "babel-3-n": "ای کاریار [[$1|فره]] [[$2|لوری]] دونه.",
- "babel-4-n": "ای کاریار [[$1|د حد نزیک وه یه زون بلل ]][[$2|لوری]] دونه.",
- "babel-5-n": "ای کاریار [[$1|د حد فره خوئی]] [[$2|لوری]] حالینش بوئه.",
- "babel-N-n": "ای کاریار [[$1|زون داش]] [[$2|لوری]] یه.",
- "babel-footer": "کاریار وا زون"
+ "babel-footer-url": ":Category:بابل-کاریاریا ڤا زۊن",
+ "babel-autocreate-reason": "دٱسٱ بٱلگٱ [[$1|Babel]]راس کردن د هال و بال خودٱنجوم",
+ "babel-autocreate-text-levels": "کاریاریا ای دٱسٱ دیاری میکٱن کاٛ کاردۊنی د ریتراز $1 سی زۊن $2 دارن",
+ "babel-autocreate-text-main": "کاریاریاای دٱسٱ دیار میکٱن کاٛ زۊن $1 بٱلٱلن",
+ "babel-0": "ای کاریار فٱمئسنی د ٱنازٱ [[$1|no]] سی [[$2|$3]] دارٱ (یا فئرٱ کم هالینش بۊٱ)",
+ "babel-1": "ای کاریار دۊنسمٱنی د [[$1|basic]]تا [[$2|$3]]دارٱ.",
+ "babel-2": "ای کاریار دۊنسمٱنی د [[$1|intermediate]] تا [[$2|$3]] دارٱ.",
+ "babel-3": "ای کاریار دۊنسمٱنی د [[$1|advanced]] تا [[$2|$3]]دارٱ.",
+ "babel-4": "ای کاریار [[$1|نزیک ڤ زۊن دا]]،[[$2|$3]]نٱ دۊنٱ.",
+ "babel-5": "ای کاریار د ٱنازٱ [[$1|فئرٱ خۊ]]،[[$2|$3]] نٱ دۊنٱ.",
+ "babel-N": "ای کاریار [[$1|native]] چی زۊن دا می تۊنٱ [[$2|$3]] بٱفٱمٱ.",
+ "babel-0-n": "ای کاریار [[$1|هیچ]] دۊنسمٱنی د [[$2|لۏری مینجایی]] نارٱ (یا فئره کم لۏری مینجایی می فٱمٱ)",
+ "babel-1-n": "ای کاریار [[$1|کم و کوتی]] دۊنسمٱنی د [[$2|لۏری مینجایی]] دارٱ.",
+ "babel-2-n": "ای کاریار [[$1|چی ریتراز میۊنٱ]] دۊنسمٱنی د [[$2|لۏری مینجایی]]دارٱ.",
+ "babel-3-n": "ای کاریار [[$1|فئرٱ]] [[$2|لۏری مینجایی]] دۊنٱ.",
+ "babel-4-n": "ای کاریار [[$1|چی یاٛ زۊن بٱلٱل]][[$2|لۏری مینجایی]] دۊنٱ.",
+ "babel-5-n": "ای کاریار [[$1|فئرٱ خۊ]] [[$2|لۏری مینجایی]] هالیش مۊٱ.",
+ "babel-N-n": "ای کاریار [[$1|زۊن داش]] [[$2|لۏری مینجایی]] ٱ.",
+ "babel-footer": "کاریار ڤا زۊن"
}
diff --git a/MLEB/Babel/i18n/lt.json b/MLEB/Babel/i18n/lt.json
index f2140fbe..7b79b4bd 100644
--- a/MLEB/Babel/i18n/lt.json
+++ b/MLEB/Babel/i18n/lt.json
@@ -6,17 +6,19 @@
"Homo",
"Hugo.arg",
"Matasg",
- "Vpovilaitis"
+ "Vpovilaitis",
+ "Albertas",
+ "Zygimantus",
+ "Manvydasz"
]
},
"babel": "Naudotojo informacijos Babelio bokštas",
"babel-desc": "Prideda parserio funkciją <code>#babel</code>, leidžiančią automatiškai sudaryti stulpelį su informacija apie kalbas su gailmybe įtraukti kitus šablonus",
"babel-url": "Project:Babelis",
"babel-footer-url": ": Kategorija: Babelis - Vartotojai pagal kalbas",
- "babel-autocreate-abort": "Nurodytas naudotojo vardas naudojamas automatiškam kategorijos „[[$1|Babel]]“ sudarymui, todėl negali būti užregistruotas",
"babel-autocreate-reason": "Automatiškas kategorijos „[[$1|Babel]]“ puslapio sukūrimas.",
"babel-autocreate-text-levels": "Naudotojai, esantys šioje kategorijoje, yra nurodę kad geba $1 lygiu naudoti $2 kalbą.",
- "babel-autocreate-text-main": "Naudotojai, esantys šioje kategorijoje, nurodę, kad supranta $1 kalbą.",
+ "babel-autocreate-text-main": "Naudotojai šioje kategorijoje parodo savo $1 kalbos žinias.",
"babel-0": "Šis naudotojas [[$1|ne]]supranta [[$2|$3]] (arba supranta labai ribotai).",
"babel-1": "Šis naudotojas turi [[$2|lietuvių kalbos]] [[$1|pradinio lygio]] žinias.",
"babel-2": "Šis naudotojas turi [[$2|lietuvių kalbos]] [[$1|vidutinio lygio]] žinias.",
@@ -30,6 +32,9 @@
"babel-3-n": "Šis naudotojas gali rašyti ir skaityti [[$1|aukšto]] lygio [[$2|lietuvių]] kalba",
"babel-4-n": "Šis naudotojas gali rašyti ir skaityti [[$2|lietuvių]] kalba [[$1|beveik kaip gimtąja]]",
"babel-5-n": "Šis naudotojas gali rašyti ir skaityti [[$1|profesionalia]] [[$2|lietuvių]] kalba",
- "babel-N-n": "Šis naudotojas gali rašyti ir skaityti [[$1|gimtąja]] [[$2|lietuvių]] kalba",
- "babel-footer": "Vartotojai pagal kalbą"
+ "babel-N-n": "Šis naudotojas gali rašyti ir skaityti [[$1|gimtąja]] [[$2|lietuvių]] kalba.",
+ "babel-footer": "Naudotojai pagal kalbą",
+ "apihelp-query+babel-description": "Gauti informaciją, kokias kalbas naudotojas žino",
+ "apihelp-query+babel-param-user": "Vartotojas, apie kurį gausite informaciją",
+ "apihelp-query+babel-example-1": "Gauti Babelio informaciją vartotojui <kbd>Example</kbd>"
}
diff --git a/MLEB/Babel/i18n/lus.json b/MLEB/Babel/i18n/lus.json
index 580c2722..dfb5cba2 100644
--- a/MLEB/Babel/i18n/lus.json
+++ b/MLEB/Babel/i18n/lus.json
@@ -9,7 +9,6 @@
"babel-desc": "<code>#babel</code> chhuifiahtu hian hmangtubawm, siamsa thlansa telh thieh turin a belh",
"babel-url": "Project:Babel",
"babel-footer-url": ":Category:Babel - Ţawng azira hmangtute thliarna tihlanna",
- "babel-autocreate-abort": "Hmangtuhming i pêk hi [[$1|Babel]] pawl insiamtirna atana hman a ni a, ziahluh theih a ni lo.",
"babel-autocreate-reason": "[[$1|Babel]] pawl phek insiamtir.",
"babel-autocreate-text-levels": "He pawla hmangtute hian $2 ṭawng $1 an thiam tih an sawi.",
"babel-autocreate-text-main": "He pawla hmangtute hian $1 ṭawng an thiam tih an sawi.",
diff --git a/MLEB/Babel/i18n/luz.json b/MLEB/Babel/i18n/luz.json
index 03de6324..50843c71 100644
--- a/MLEB/Babel/i18n/luz.json
+++ b/MLEB/Babel/i18n/luz.json
@@ -5,19 +5,19 @@
"Mogoeilor"
]
},
- "babel": "دونسمندیل کارور بابل",
- "babel-0": "ای کارور [[$1|هیچ]] فئمسنی ز [[$2|لری جنووی]] ناره ( یا وه جخت ونه حالینش بوئه )",
- "babel-1": "ای کارور [[$1|کم و کوتی]] ز [[$2|لری جنووی]] داره",
- "babel-2": "ای کارور دونسمنی د حد [[$1|واسی]] ز [[$2|لری جنووی]] داره",
- "babel-3": "ای کارور دونسمنی د حد [[$1|هفره]] ز [[$2|لری جنووی]] داره",
- "babel-4": "ای کارور [[$1|د حد زوون داس]] [[$2|لری جنووی]] نه بلله",
- "babel-5": "ای کارور د حد [[$1| فره خوه]] [[$2|لری جنووی]] نه بلله",
- "babel-N": "ای کارور [[$1|زوون داس]] [[$2|لری جنووی]] هسس",
- "babel-0-n": "ای کارور [[$1|هیچ]] فئمسنی ز [[$2|لری جنووی]] ناره ( یا وه جخت ونه حالینش بوئه )",
- "babel-1-n": "ای کارور [[$1|کم و کوتی]] دونسمنی ز [[$2|لری جنووی]] داره",
- "babel-2-n": "ای کارور دونسمنی د حد [[$1|واسی]] ز [[$2|لری جنووی]] داره",
- "babel-3-n": "ای کارور دونسمنی د حد [[$1|هفره]] ز [[$2|لری جنووی]] داره",
- "babel-4-n": "ای کارور [[$1|د حد زوون داس]] [[$2|لری جنووی]] نه بلله",
- "babel-5-n": "ای کارور د حد [[$1| فره خوه]] [[$2|لری جنووی]] نه بلله",
- "babel-N-n": "ای کارور [[$1|زوون داس]] [[$2|لری جنووی]] هسس"
+ "babel": "دوٙنیسمأنل کارڤأر بابیل",
+ "babel-0": "ئی کارڤأر [[$1|هیش]] فأعمئسی زھ [[$2|دوٙمینی]] نارھ ( یا ڤە جأخت حالیش ئیڤأ )",
+ "babel-1": "ئی کارڤأر [[$1|کأم ڤأ کوٙتی]] زھ [[$2|دوٙمینی]] دوٙنە",
+ "babel-2": "ئی کارڤأر [[$2|$3]] نە د حأد [[$1|مینجآڤ]] ئیفأمە.",
+ "babel-3": "ئی کارڤأر [[$2|$3]] نە د حأد [[$1|فأرھ]] ئیفأمە.",
+ "babel-4": "ئی کارڤأر [[$2|$3]] نە د حأد [[$1|نأزیک ڤە زوٙوٙن داس]] ئیفأمە.",
+ "babel-5": "ئی کارڤأر [[$2|$3]] نە [[$1|فأرھ]] ئیفأمە.",
+ "babel-N": "ئی کارڤأر [[$2|$3]] نە قأد ھ [[$1|زوٙوٙن دا]] ئیفأمە.",
+ "babel-0-n": "ئی کارڤأر [[$2|دوٙمینی]] نە [[$1|نیفأمأ]] (یا ڤە جأخت حالیش ئیڤا).",
+ "babel-1-n": "ئی کارڤأر [[$2|دوٙمینی]] نە د حأد [[$1|ئیبتیدایی]] ئیفأمە.",
+ "babel-2-n": "ئی کارڤأر [[$2|دوٙمینی]] نە د حأد [[$1|مینجاڤی]] ئیفأمە.",
+ "babel-3-n": "ئی کارڤأر [[$2|دوٙمینی]] نە د حأد [[$1|فأرھ]] ئیفأمە.",
+ "babel-4-n": "ئی کارڤأر [[$2|دوٙمینی]] نە د حأد [[$1|نأزیک ڤە زوٙوٙن دا]] ئیفأمە.",
+ "babel-5-n": "ئی کارڤأر [[$2|دوٙمینی]] نە [[$1|فأرھ]] ئیفأمە.",
+ "babel-N-n": "ئی کارڤأر [[$1|زوٙوٙن داس]] [[$2|دوٙمینی]] ھی."
}
diff --git a/MLEB/Babel/i18n/lv.json b/MLEB/Babel/i18n/lv.json
index c3d27111..645d1b3c 100644
--- a/MLEB/Babel/i18n/lv.json
+++ b/MLEB/Babel/i18n/lv.json
@@ -11,10 +11,9 @@
"babel-desc": "Pievieno parsera funkciju <code>#babel</code>, automātiskai kolonnu ar valodu informāciju veidošanai, ka arī ar citu veidņu ievietošanas iespēju",
"babel-url": "Project:Babel",
"babel-footer-url": ":Category:Lietotāju valodas",
- "babel-autocreate-abort": "Tevis norādītais lietotājvārds tiek lietots [[$1|Babel]] kategoriju automātiskai izveidošanai, tāpēc to nevar piereģistrēt.",
"babel-autocreate-reason": "Automātiski izveido [[$1|Babel]] kategorijas lapu.",
"babel-autocreate-text-levels": "Lietotāji šajā kategorijā ir norādījuši, ka tie pārzina $2 valodu $1 līmenī.",
- "babel-autocreate-text-main": "Lietotāji šajā kategorijā ir norādījuši ka tiem ir $1 valodas zināšanas.",
+ "babel-autocreate-text-main": "Lietotāji šajā kategorijā ir norādījuši savas $1 valodas zināšanas.",
"babel-0": "Šis lietotājs [[$2|$3]] valodu [[$1|neprot]]. (vai saprot ar ievērojamām grūtībām).",
"babel-1": "Šis lietotājs [[$2|$3]] valodu prot [[$1|pamatlīmenī]].",
"babel-2": "Šis lietotājs [[$2|$3]] valodu prot [[$1|vidējā]] līmenī.",
@@ -29,5 +28,9 @@
"babel-4-n": "Šis lietotājs [[$2|latviešu valodu]] pārzina [[$1|gandrīz kā dzimto valodu]].",
"babel-5-n": "Šis lietotājs [[$2|latviešu valodu]] pārzina [[$1|profesionālā]] līmenī.",
"babel-N-n": "Šim lietotājam [[$2|latviešu valoda]] ir [[$1|dzimtā valoda]].",
- "babel-footer": "Lietotāji pēc valodas"
+ "babel-footer": "Lietotāji pēc valodas",
+ "apihelp-query+babel-description": "Iegūsti informāciju par to, kādas valodas pārzina lietotājs",
+ "apihelp-query+babel-summary": "Iegūsti informāciju par to, kādas valodas pārzina lietotājs",
+ "apihelp-query+babel-param-user": "Lietotājs, par ko iegūt informāciju",
+ "apihelp-query+babel-example-1": "Iegūt Babel informāciju par lietotāju <kbd>Piemērs</kbd>"
}
diff --git a/MLEB/Babel/i18n/lzz.json b/MLEB/Babel/i18n/lzz.json
index c16d31db..9aad006c 100644
--- a/MLEB/Babel/i18n/lzz.json
+++ b/MLEB/Babel/i18n/lzz.json
@@ -7,7 +7,6 @@
"babel": "Babel Maxmareş çkinape",
"babel-desc": "Doxmeli şablonepe na uğun Babel maxmareş kut'işi sut'uni otomatikurot ok'idu şeni <code>#babel</code> derleyici fonk'sioni uk'ataps",
"babel-url": "Project:Babeli",
- "babel-autocreate-abort": "Na mo3'iri maxmareşi coxo [[$1|Babel]]-ş k'at'egorii otomatikurot ok'idu şeni ixmarinen.",
"babel-autocreate-reason": "Otomatikurot [[$1|Babil]] k'at'egoriş but'k'a ik'iden.",
"babel-autocreate-text-levels": "Am k'at'egoris na renan maxmarepe, $1 seviyes, $2 nena miçkinan yado t'ani mo3'irapan.",
"babel-autocreate-text-main": "Am k'at'egoris na renan maxmarepe, $1 nena miçkinan yado t'ani mo3'irapan.",
diff --git a/MLEB/Babel/i18n/mai.json b/MLEB/Babel/i18n/mai.json
index af62b155..089c2fb0 100644
--- a/MLEB/Babel/i18n/mai.json
+++ b/MLEB/Babel/i18n/mai.json
@@ -9,10 +9,9 @@
"babel-desc": "एकटा सदस्यक बाबेल सदस्यपेटीमे स्वतः देबाक लेल उपयुक्त एहन <code>#babel</code> पार्सर क्रिया बढाबैछ। एकरामें स्वतः बनाएल सदस्यपेटी सेहो देल जाए सकैत अछि।",
"babel-url": "Project:बाबेल",
"babel-footer-url": ":Category:बाबेल -भाषा के आधार पर प्रयोक्तासभ",
- "babel-autocreate-abort": "अहाँक द्वारा निर्दिष्ट प्रयोक्तानाम केँ [[$1|Babel]] श्रेणीक स्वतः निर्माणक लेल उपयोग मे आबैछ आओर एकरा पंजीकृत नहि कएल जाए सकएत अछि।",
"babel-autocreate-reason": "स्वतः बनाओल गेल [[$1|Babel]] संवर्गक पन्ना ।",
"babel-autocreate-text-levels": "ई संवर्गक प्रयोक्ता बताबएत जे इलोकनिसभकेँ भाषा $2 कलेल कौशलस्तर $1 अछि।",
- "babel-autocreate-text-main": "ई संवर्गक प्रयोक्ता बताबएत अछि जे हुनका भाषा $1 क' ज्ञान अछि।",
+ "babel-autocreate-text-main": "ई श्रेणीक प्रयोक्ता बताबएत अछि जे हुनका भाषा $1 क' ज्ञान अछि।",
"babel-0": "ई प्रयोक्ताक [[$2|$3]] कए कोनो ज्ञान [[$1|नहि]] अछि (अथवा एकरा समझबमे दिक्कत होइछ)।",
"babel-1": "ई प्रयोक्ताकेँ [[$2|$3]] क [[$1|प्राथमिक]] ज्ञान अछि।",
"babel-2": "ई प्रयोक्ताकेँ [[$2|$3]] कए [[$1|मध्यम स्तर]] क ज्ञान अछि।",
diff --git a/MLEB/Babel/i18n/map-bms.json b/MLEB/Babel/i18n/map-bms.json
index 1d3f0aea..bdc383ed 100644
--- a/MLEB/Babel/i18n/map-bms.json
+++ b/MLEB/Babel/i18n/map-bms.json
@@ -8,7 +8,6 @@
"babel-desc": "Nambahna fungsi parser <code>#babel</code> sing marengaké générasi otomatis kolom kothak panganggo babel mawa kamungkinan nglebokna cithakan kustomisasi",
"babel-url": "Project:Babel",
"babel-footer-url": ":Kategori:Panganggo miturut basa",
- "babel-autocreate-abort": "Jeneng panganggo sing Rika lebokna kuwe digunakna nggo nggawe kategori otomatis [[$1|Babel]] lan ora teyeng didaftarna.",
"babel-autocreate-reason": "Otomatis nggawe kaca kategori [[$1|Babel]].",
"babel-autocreate-text-levels": "Panganggo nang kategori kiye nandakna nek dheweke nduwe kemampuan $1 nggo basa $2.",
"babel-autocreate-text-main": "Panganggo nang kategori kiye nandakna nek dheweke nduwe kemampuan basa $1.",
diff --git a/MLEB/Babel/i18n/mg.json b/MLEB/Babel/i18n/mg.json
index 08245377..3a9adb88 100644
--- a/MLEB/Babel/i18n/mg.json
+++ b/MLEB/Babel/i18n/mg.json
@@ -8,7 +8,6 @@
"babel-desc": "Manampy ny Parser function <code>#babel</code> mampamela ny fanamboarana userbox hoazy. Afaka mampiditra endrika tsy natao tany amin'ny mediawiki ilay izy",
"babel-url": "Project:Babel",
"babel-footer-url": ":Sokajy:Babel - Mpikambana araka ny tenim-pirenena",
- "babel-autocreate-abort": "Ilay anaram-pikambana nampidirinao mba hanao sokajy [[$1|Babel]] hoazy tsy afaka tehirizina",
"babel-autocreate-reason": "Natao hoazy ilay sokajy [[$1|Babel]].",
"babel-autocreate-text-levels": "Niteny ny mpikambana anatin'ity sokajy ity fa $1 hono ny lentany amin'ny fiteny $2.",
"babel-autocreate-text-main": "Ny mpikambana anatin'ity sokajy ity niteny fa $1 hono ny fahaizany.",
@@ -17,14 +16,14 @@
"babel-2": "[[$1|Antonontonony]] ny lenta n'ity mpikambana ity amin'ny teny [[$2|$3]].",
"babel-3": "Ity mpikambana ity dia [[$1|havanana]] amin'ny teny [[$2|$3]].",
"babel-4": "Ity mpikambana ity dia miteny [[$2|$3]] [[$1|mira-lenta amin'ny tenin-dreniny]].",
- "babel-5": "Ity mpikambana ity dia miteny [[$2|$3]] [[$1|ara-asa]].",
+ "babel-5": "Ity mpikambana ity dia manana fahaizana [[$1|matihanina]] amin'ny teny [[$2|$3]] .",
"babel-N": "Ny teny [[$2|$3]] no [[$1|teny nibeazan']]ity mpikambana ity.",
"babel-0-n": "Ity mpikambana ity dia [[$1|tsy mahay]] miteny [[$2|malagasy]] (na sarotra aminy no miteny azy).",
"babel-1-n": "Ity mpikambana ity dia miteny [[$2|malagasy]] [[$1|tsotsotra]].",
"babel-2-n": "Ity mpikambana ity dia miteny [[$2|Malagasy]] [[$1|antonontonony]].",
"babel-3-n": "Ity mpikambana ity dia [[$1|havanana]] amin'ny teny [[$2|frantsay]].",
"babel-4-n": "Ity mpikambana ity dia miteny [[$2|malagasy]] [[$1|mira-lenta amin'ny tenin-dreniny]].",
- "babel-5-n": "Ity mpikambana ity dia miteny [[$2|malagasy]] [[$1|ara-asa]]",
+ "babel-5-n": "Ity mpikambana ity dia manana fahaizana [[$1|matihanina]] amin'ny teny [[$2|malagasy]]",
"babel-N-n": "Ny teny [[$2|malagasy]] no [[$1|tenim-pirenena nahabe]] ity mpikambana ity.",
"babel-footer": "Mpikambana araka ny tenim-pirenena"
}
diff --git a/MLEB/Babel/i18n/mhr.json b/MLEB/Babel/i18n/mhr.json
index 7bde5eab..8854dfdb 100644
--- a/MLEB/Babel/i18n/mhr.json
+++ b/MLEB/Babel/i18n/mhr.json
@@ -9,7 +9,6 @@
"babel": "Пайдаланышын йылмым палымаш (Вавилон)",
"babel-desc": "<code>#babel</code> парсерын фунцкцийым ешара. Тудо колонкым пайдаланыше йылмым палымаш дене автоматический ыштымашым пуа. Вес ямдылык-влакым ешараш тоже лиеш.",
"babel-url": "Project:Бабилон",
- "babel-autocreate-abort": "Пайдаланыныш лӱмжо, кудыжым тый возышыч, [[$1|Вавилон]] категорийым авто-ыштымашлан пайдаланен шога. Тиде лӱм дене регистрацийым эрташ ок лий.",
"babel-autocreate-reason": "[[$1|Бабилон]] категориян лаштыкым автоматик ыштымаш.",
"babel-autocreate-text-levels": "Тиде категорийыште $1-танлан «$2» йылмым палыше-влакым чумырымо.",
"babel-autocreate-text-main": "Тиде категорийыште «$1»-танлан йылмым палыше-влакым чумырымо.",
@@ -21,10 +20,10 @@
"babel-5": "[[$2|$3]] — [[$1|профессионал кӱкшыт]]",
"babel-N": "Тиде пайдаланышылан [[$2|$3]] — [[$1|шочмо йылме]] улеш.",
"babel-0-n": "Тиде пайдаланыше [[$2|марий йылмым]] [[$1|ок пале]].",
- "babel-1-n": "Тиде пайдаланышын [[$2|марий йылмым]] [[$1|тӱҥалтыш шинчымаш]] уло.",
- "babel-2-n": "Тиде пайдаланышын [[$2|марий йылмым]] [[$1|кокла кӱкшытан шинчымашыже]] уло.",
- "babel-3-n": "Тиде пайдаланыше [[$2|марла]] [[$1|куштылгын]] мошта.",
- "babel-4-n": "Тиде пайдаланыше [[$2|марий йылмым]] [[$1|шке шочмо йылме семын]] пала.",
- "babel-5-n": "Тиде пайдаланышын [[$2|марий йылмым]] [[$1|профессионал шинчымаш]] уло.",
+ "babel-1-n": "Тиде пайдаланышын [[$2|марий йылмым]] [[$1|тӱҥалтыш шинчымашыж]] уло.",
+ "babel-2-n": "Тиде пайдаланышын [[$2|марий йылмыште]] [[$1|кокла кӱкшытан шинчымашыже]] уло.",
+ "babel-3-n": "Тиде пайдаланыше [[$2|марла]] [[$1|куштылгын]] кутырен кертеш.",
+ "babel-4-n": "Тиде пайдаланыше [[$2|марий йылмым]] [[$1|шке шочмо йылмыже семын]] пала.",
+ "babel-5-n": "Тиде пайдаланышын [[$2|марий йылмым]] [[$1|профессионал шинчымашыже]] уло.",
"babel-N-n": "Тиде пайдаланышылан [[$2|марий йылме]] [[$1|шочмо]] улеш."
}
diff --git a/MLEB/Babel/i18n/min.json b/MLEB/Babel/i18n/min.json
index ea0aec54..717b3afb 100644
--- a/MLEB/Babel/i18n/min.json
+++ b/MLEB/Babel/i18n/min.json
@@ -9,7 +9,6 @@
"babel-desc": "Menambah fungsi parser <code>#babel</code> untuak manampilan kotak pangguno babel sacaro otomatih jo kamampuan manggunoan templat surang",
"babel-url": "Project:Babel",
"babel-footer-url": ":Kategori:Pangguno manuruik bahaso",
- "babel-autocreate-abort": "Namo pangguno Sanak digunoan untuak mambuek kategori [[$1|Babel]] otomatis dan indak dapek didaftarkan.",
"babel-autocreate-reason": "Otomatih mambuek laman kategori [[$1|Babel]].",
"babel-autocreate-text-levels": "Pangguno di kategori ko manandoan punyo kamampuan $1 untuak bahaso $2.",
"babel-autocreate-text-main": "Pangguno di kategori ko punyo kamampuan babahaso $1.",
diff --git a/MLEB/Babel/i18n/mk.json b/MLEB/Babel/i18n/mk.json
index 3554047e..1365b009 100644
--- a/MLEB/Babel/i18n/mk.json
+++ b/MLEB/Babel/i18n/mk.json
@@ -7,13 +7,12 @@
]
},
"babel": "Кориснички информации за јазици",
- "babel-desc": "Ја додава расчленувачка функција <code>#babel</code> со што се дозволува автоматизирано создавање на колони со кориснички кутии од типот „Вавилон“, со можноста да се додаваат сопствени шаблони",
+ "babel-desc": "Ја додава расчленувачка функција <code>#babel</code> со што се дозволува автоматизирано создавање на столбови со кориснички кутии од типот „Вавилон“, со можноста да се додаваат сопствени шаблони",
"babel-url": "Project:Вавилон",
"babel-footer-url": ":Category:Вавилон - Корисници по јазик",
- "babel-autocreate-abort": "Корисничкото име кое го наведовте се користи за автоматско создавање на [[$1|Babel]] категорија и затоа не може да се регистрира.",
"babel-autocreate-reason": "Автоматско создавање на [[$1|Вавилон]] категорија.",
"babel-autocreate-text-levels": "Корисниците во оваа категорија навеле дека имаат $1 ниво на познавање на $2 јазик.",
- "babel-autocreate-text-main": "Корисниците во оваа категорија навеле дека имаат познавање на $1 јазик.",
+ "babel-autocreate-text-main": "Корисниците во категоријава укажуваат познавање на јазикот „$1“.",
"babel-autocreate-user": "Вавилон - Автосоздавање",
"babel-0": "Овој корисник [[$1|не]] разбира [[$2|$3]] (или разбира со значајни потешкотии).",
"babel-1": "Овој корисник разбира [[$2|$3]] на [[$1|основно]] ниво.",
@@ -30,5 +29,9 @@
"babel-5-n": "Овој корисник го владее [[$2|македонскиот]] на [[$1|професионално]] ниво.",
"babel-N-n": "Овој корисник зборува [[$2|македонски]] како [[$1|мајчин јазик]].",
"babel-template": "Template:Корисник $1",
- "babel-footer": "Корисници по јазик"
+ "babel-footer": "Корисници по јазик",
+ "apihelp-query+babel-description": "Дава информации за тоа кои јазици ги знае корисникот",
+ "apihelp-query+babel-summary": "Дава сознанија кои јазици корисникот ги познава",
+ "apihelp-query+babel-param-user": "За кој корисник да се дадат информациите",
+ "apihelp-query+babel-example-1": "Давање на информации од „Вавилон“ за корисникот <kbd>Пример</kbd>"
}
diff --git a/MLEB/Babel/i18n/ml.json b/MLEB/Babel/i18n/ml.json
index e5cdde81..7dd30a2f 100644
--- a/MLEB/Babel/i18n/ml.json
+++ b/MLEB/Babel/i18n/ml.json
@@ -10,7 +10,6 @@
"babel-desc": "<code>#babel</code> എന്ന പാഴ്‌സർ ഫങ്ഷൻ ചേർക്കുന്നു. ഇതു ബാബേൽ ഉപയോക്തൃ പെട്ടി യാന്ത്രികമായി സൃഷ്ടിക്കുന്നതിനും ഇച്ഛാനുസരണമുള്ള ഫലകങ്ങൾ ഉൾപ്പെടുത്തുവാനും സഹായകമാകുന്നു.",
"babel-url": "Project:ബാബേൽ",
"babel-footer-url": ":Category:ബാബേൽ - ഉപയോക്താക്കൾ ഭാഷയനുസരിച്ച്",
- "babel-autocreate-abort": "താങ്കൾ നൽകിയ ഉപയോക്തൃനാമം [[$1|ബാബേൽ]] വർഗ്ഗത്തിൽ സ്വയം സൃഷ്ടിക്കപ്പെടുന്നതാണ്, അങ്ങനെയൊന്ന് ഉണ്ടാക്കാനാവില്ല.",
"babel-autocreate-reason": "സ്വയം [[$1|ബാബേൽ]] വർഗ്ഗ താൾ സൃഷ്ടിക്കുന്നു.",
"babel-autocreate-text-levels": "ഈ വർഗ്ഗത്തിലുള്ള ഉപയോക്താക്കൾ അവർക്ക് $2 ഭാഷയിൽ $1 തലത്തിലുള്ള നിപുണത ഉണ്ടെന്ന് കുറിക്കുന്നു.",
"babel-autocreate-text-main": "ഈ വർഗ്ഗത്തിലുള്ള ഉപയോക്താക്കൾ അവർക്ക് $1 ഭാഷയിൽ അറിവുണ്ടെന്ന് കുറിക്കുന്നു.",
diff --git a/MLEB/Babel/i18n/mn.json b/MLEB/Babel/i18n/mn.json
index 15147959..738f9943 100644
--- a/MLEB/Babel/i18n/mn.json
+++ b/MLEB/Babel/i18n/mn.json
@@ -8,7 +8,6 @@
"babel-desc": "Тохируулсан темплэйт оруулах боломж бүхий Babel хэрэглэгчийн хайрцгийн багана автомат үүсгэлтийг боломжтой болгох <code>#babel</code> парсер функц нэмнэ",
"babel-url": "Project:Babel",
"babel-footer-url": ":Категори:Babel - Хэрэглэгч хэлээр",
- "babel-autocreate-abort": "Таны сонгосон хэрэглэгч [[$1|Babel]] категорийн авто-үүсгэлтэд зориулсагдсан бөгөөд бүртгэгдэх боломжгүй.",
"babel-autocreate-reason": "Автоматаар [[$1|Babel]] категорийн хуудас үүсгэж байна.",
"babel-autocreate-text-levels": "Энэ ангиллын хэрэглэгчид $2 хэлийг $1 төвшинд эзэмшсэн гэж мэдүүлсэн.",
"babel-autocreate-text-main": "Энэ ангиллын хэрэглэгчид $1 хэлний мэдлэгтэй гэж мэдүүлсэн.",
diff --git a/MLEB/Babel/i18n/mo.json b/MLEB/Babel/i18n/mo.json
index f7fd8273..10fcbc3c 100644
--- a/MLEB/Babel/i18n/mo.json
+++ b/MLEB/Babel/i18n/mo.json
@@ -1,18 +1,30 @@
{
"@metadata": {
"authors": [
- "Node ue"
+ "Node ue",
+ "Cybernenea11"
]
},
"babel": "Информаций Бабел деспре утилизатор",
"babel-desc": "Адаугэ функция де парсаре <code>#babel</code> пентру ӂенераря аутоматэ а колоаней де кутии де утилизатор бабел ку посибилитатя де а инклуде шаблоане персонализате",
"babel-url": "Project:Бабел",
+ "babel-footer-url": ":Category:Babel - Утилизаторь дупэ лимбэ",
+ "babel-autocreate-reason": "Креаря аутоматэ а паӂиний категорией [[$1|Бабел]].",
"babel-autocreate-text-levels": "Утилизаторий дин ачаста категорие аратэ кэ ачестия ау ун нивел де калификаре $1 пентру лимба $2.",
- "babel-autocreate-text-main": "Утилизаторий дин ачаста категорие аратэ кэ ачестия ау куноштинце де лимба $1.",
- "babel-0": "Ачест утилизатор [[$1|ну]] аре куноштинце де [[$2|$3]] (сау ынцелеӂе ку маре дификултате).",
- "babel-1": "Ачест утилизатор куноаште [[$2|$3]] [[$1|де базэ]].",
- "babel-2": "Ачест утилизатор куноаште [[$2|$3]] [[$1|интермедиарэ]].",
- "babel-3": "Ачест утилизатор куноаште [[$2|$3]] [[$1|авансатэ]].",
- "babel-4": "Ачест утилизатор куноаште [[$2|$3]] [[$1|апроапе нативэ]].",
- "babel-5": "Ачест утилизатор куноаште [[$2|$3]] [[$1|професионалэ]]."
+ "babel-autocreate-text-main": "Утилизаторий дин ачастэ категорие ау индикат кэ куноск лимба $1.",
+ "babel-0": "Ачест утилизатор [[$1|ну куноаште]] [[$2|$3]] (сау ынцелеӂе ку маре дификултате).",
+ "babel-1": "Ачест утилизатор куноаште [[$2|$3]] ла нивел [[$1|де базэ]].",
+ "babel-2": "Ачест утилизатор куноаште [[$2|$3]] ла нивел [[$1|интермедиар]].",
+ "babel-3": "Ачест утилизатор куноаште [[$2|$3]] ла нивел [[$1|авансат]].",
+ "babel-4": "Ачест утилизатор куноаште [[$2|$3]] ла нивел [[$1|апроапе натив]].",
+ "babel-5": "Ачест утилизатор куноаште [[$2|$3]] ла нивел [[$1|професионал]].",
+ "babel-N": "Пентру ачест утилизатор [[$2|$3]] есте лимба [[$1|матернэ]].",
+ "babel-0-n": "Ачест утилизатор [[$1|ну куноаште]] [[$2|лимба молдовеняскэ]] (сау о ынцелеӂе ку маре дификултате).",
+ "babel-1-n": "Ачест утилизатор куноаште [[$2|лимба молдовеняскэ]] ла нивел [[$1|де базэ]].",
+ "babel-2-n": "Ачест утилизатор куноаште [[$2|лимба молдовеняскэ]] ла нивел [[$1|интермедиар]].",
+ "babel-3-n": "Ачест утилизатор куноаште [[$2|лимба молдовеняскэ]] ла нивел [[$1|авансат]].",
+ "babel-4-n": "Ачест утилизатор куноаште [[$2|лимба молдовеняскэ]] ла нивел [[$1|апроапе натив]].",
+ "babel-5-n": "Ачест утилизатор куноаште [[$2|лимба молдовеняскэ]] ла нивел [[$1|професионал]].",
+ "babel-N-n": "Пентру ачест утилизатор [[$2|лимба молдовеняскэ]] есте лимба [[$1|матернэ]].",
+ "babel-footer": "Утилизаторь дупэ лимбэ"
}
diff --git a/MLEB/Babel/i18n/mr.json b/MLEB/Babel/i18n/mr.json
index 5341073c..4bd3afc3 100644
--- a/MLEB/Babel/i18n/mr.json
+++ b/MLEB/Babel/i18n/mr.json
@@ -6,17 +6,17 @@
"Mahitgar",
"Pravins",
"Rahuldeshmukh101",
- "V.narsikar"
+ "V.narsikar",
+ "Sureshkhole"
]
},
- "babel": "बाबेल सदस्य माहिती",
- "babel-desc": "एखाद्या सदस्याच्या बाबेल सदस्यपेट्या आपोआप देण्यासाठी उपयुक्त अशी <code>#babel</code> पार्सर क्रिया वाढवितो. यामध्ये स्वत: निर्माण केलेले सदस्य साचे सुद्धा देता येतात.",
- "babel-url": "Project:बाबेल",
- "babel-footer-url": "Category:भाषेप्रमाणे वापरकर्ते",
- "babel-autocreate-abort": "आपण सुचविलेले सदस्यनाव [[$1|बाबेल]] या प्रवर्गाच्या स्वयंनिर्मिती साठी वापरले जाते, त्यामुळे त्याची नोंदणी होऊ शकत नाही.",
+ "babel": "बॅबेल सदस्य माहिती",
+ "babel-desc": "एखाद्या सदस्याच्या बॅबेल सदस्यपेट्या आपोआप देण्यासाठी उपयुक्त अशी <code>#babel</code> पार्सर क्रिया वाढवितो. यामध्ये स्वत: निर्माण केलेले सदस्य साचे सुद्धा देता येतात.",
+ "babel-url": "Project:बॅबेल",
+ "babel-footer-url": "Category:Project-भाषेप्रमाणे वापरकर्ते",
"babel-autocreate-reason": "[[$1|बॅबेल]] प्रवर्ग पानाची स्वयं निर्मिती होते आहे",
"babel-autocreate-text-levels": "या वर्गीकरणातील सदस्य $2 भाषेकरिता $1 कौशल्य पातळी असल्याचे दर्शवीतात",
- "babel-autocreate-text-main": "या वर्गीकरणातील सदस्य $1 भाषेचे ज्ञान असल्याचे दर्शवीतात",
+ "babel-autocreate-text-main": "या वर्गीकरणातील सदस्य त्यांना $1 भाषेचे ज्ञान असल्याचे दर्शवितात.",
"babel-0": "या सदस्याला [[$2|$3]] चे ज्ञान [[$1|नाही]] (किंवा समजण्यासाठी खूप कष्ट पडतात).",
"babel-1": "या सदस्याला [[$2|$3]] चे [[$1|प्राथमिक]] ज्ञान आहे.",
"babel-2": "या सदस्याला [[$2|$3]] चे [[$1|मध्यम स्तराचे]] ज्ञान आहे.",
@@ -31,5 +31,9 @@
"babel-4-n": "या सदस्याला [[$2|मराठी]] चे [[$1|अति उच्च स्तराचे]] ज्ञान आहे.",
"babel-5-n": "या सदस्याला [[$2|मराठी]] चे [[$1|व्यावसायिक स्तराचे]] ज्ञान आहे.",
"babel-N-n": "या सदस्याला [[$2|मराठी]] चे [[$1|स्थानिक स्तराचे]] ज्ञान आहे.",
- "babel-footer": "भाषेनुसार सदस्य"
+ "babel-footer": "भाषेनुसार सदस्य",
+ "apihelp-query+babel-description": "सदस्य कोणती भाषा जाणतो याबद्दल माहिती मिळवा",
+ "apihelp-query+babel-summary": "सदस्य कोणती भाषा जाणतो याबद्दल माहिती मिळवा",
+ "apihelp-query+babel-param-user": "सदस्याने ही माहिती प्राप्त करावी",
+ "apihelp-query+babel-example-1": "<kbd>उदाहरण</kbd>या सदस्याबद्दलची बॅबेल माहिती मिळवा"
}
diff --git a/MLEB/Babel/i18n/ms.json b/MLEB/Babel/i18n/ms.json
index 4d23f6ea..e606fc20 100644
--- a/MLEB/Babel/i18n/ms.json
+++ b/MLEB/Babel/i18n/ms.json
@@ -4,14 +4,14 @@
"Anakmalaysia",
"Aviator",
"Iwan Novirion",
- "Kurniasan"
+ "Kurniasan",
+ "Jeluang Terluang"
]
},
"babel": "Maklumat bahasa pengguna",
"babel-desc": "Menambah fungsi penghurai <code>#babel</code> untuk membolehkan penjanaan automatik kotak bahasa pengguna dan tempahan templat",
"babel-url": "Project:Babel",
"babel-footer-url": ":Category:Babel - Pengguna mengikut bahasa",
- "babel-autocreate-abort": "Nama pengguna yang anda nyatakan telah ditempah untuk penciptaan automatik kategori [[$1|Bahasa]] dan tidak boleh didaftarkan.",
"babel-autocreate-reason": "Mencipta laman kategori [[$1|Bahasa]] secara automatik.",
"babel-autocreate-text-levels": "Pengguna yang tergolong dalam kategori ini mengisyaratkan bahawa mereka memiliki kemahiran aras $1 dalam bahasa $2.",
"babel-autocreate-text-main": "Pengguna yang tergolong dalam kategori ini mengisyaratkan bahawa mereka memiliki pengetahuan dalam bahasa $1.",
@@ -22,14 +22,14 @@
"babel-3": "Pengguna ini memiliki kemahiran [[$1|tinggi]] dalam [[$2|$3]].",
"babel-4": "Pengguna ini memiliki kemahiran [[$1|hampir sempurna]] dalam [[$2|$3]].",
"babel-5": "Pengguna ini memiliki kemahiran [[$1|profesional]] dalam [[$2|$3]].",
- "babel-N": "Pengguna ini adalah penutur [[$1|asli]] [[$2|$3]].",
+ "babel-N": "Pengguna ini ialah penutur [[$1|asli]] [[$2|$3]].",
"babel-0-n": "Pengguna ini [[$1|tidak mampu]] bertutur dalam (atau sukar memahami) [[$2|bahasa Melayu]].",
"babel-1-n": "Pengguna ini memiliki kemahiran [[$1|asas]] dalam [[$2|bahasa Melayu]].",
"babel-2-n": "Pengguna ini memiliki kemahiran [[$1|sederhana]] dalam [[$2|bahasa Melayu]].",
"babel-3-n": "Pengguna ini memiliki kemahiran [[$1|tinggi]] dalam [[$2|bahasa Melayu]].",
"babel-4-n": "Pengguna ini memiliki kemahiran [[$1|hampir sempurna]] dalam [[$2|bahasa Melayu]].",
"babel-5-n": "Pengguna ini memiliki kemahiran [[$1|profesional]] dalam [[$2|bahasa Melayu]].",
- "babel-N-n": "Pengguna ini adalah penutur [[$1|asli]] [[$2|bahasa Melayu]].",
+ "babel-N-n": "Pengguna ini ialah penutur [[$1|asli]] [[$2|bahasa Melayu]].",
"babel-template": "Template:Pengguna $1",
"babel-footer": "Pengguna mengikut bahasa"
}
diff --git a/MLEB/Babel/i18n/mt.json b/MLEB/Babel/i18n/mt.json
index a9f7f794..5d53e731 100644
--- a/MLEB/Babel/i18n/mt.json
+++ b/MLEB/Babel/i18n/mt.json
@@ -8,7 +8,6 @@
"babel-desc": "Iżżid il-funzjoni parser <code>#babel</code> sabiex tippermetti l-ġenerazzjoni awtomatika ta' kolonna ta' kaxxa tal-utent babel bil-possibilità li tinkludi mudelli personalizzati",
"babel-url": "Project:Babel",
"babel-footer-url": ":Category:Babel - Utenti skont il-lingwa",
- "babel-autocreate-abort": "L-isem tal-utent li speċifikajt hu wżat għall-ħolqien awtomatiku ta' kategoriji [[$1|Babel]] u ma jistsax jiġi reġistrat.",
"babel-autocreate-reason": "Ħolqien awtomatiku tal-paġna tal-kategorija [[$1|Babel]].",
"babel-autocreate-text-levels": "Utenti f'din il-kategorija jindikaw li għandhom livell ta' għarfien $1 għal-lingwa $2.",
"babel-autocreate-text-main": "Utenti f'din il-kategorija jindikaw li għandhom għarfien tal-lingwa $1.",
diff --git a/MLEB/Babel/i18n/mwl.json b/MLEB/Babel/i18n/mwl.json
index 63630fa5..2bb83d02 100644
--- a/MLEB/Babel/i18n/mwl.json
+++ b/MLEB/Babel/i18n/mwl.json
@@ -1,13 +1,15 @@
{
"@metadata": {
"authors": [
- "Cecílio"
+ "Cecílio",
+ "MokaAkashiyaPT",
+ "Athena in Wonderland"
]
},
"babel": "Anformaçon Babel de Outelizador",
- "babel-desc": "Ajunta la funçon de l analisador parser <code>#babel</code> pa premitir la criaçon outomatica dua coluna de caixas de outelizador babel cula possiblidade de ancluir modelos pessonalizadas",
+ "babel-desc": "Ajunta la funçon de l analisador parser <code>#babel</code> pa premitir la criaçon outomática dua queluna de caixas de outelizador babel cula possiblidade de ancluir modelos personalizados",
"babel-url": "Project:Babel",
- "babel-autocreate-abort": "L nome de outelizador que deziste ye ousado pula criaçon outomática de catadories [[$1|Babel]] i, por esso, nun puode ser registrado.",
+ "babel-footer-url": ":Catadorie:Babel - Outelizadores por lhéngua",
"babel-autocreate-reason": "A criar outomaticamiente la páigina de la catadorie [[$1|Babel]].",
"babel-autocreate-text-levels": "Ls outelizadores nesta catadorie dízen que ténen un nible de coincimiento $1 na lhéngua $2.",
"babel-autocreate-text-main": "Ls outelizadores nesta catadorie dízen que ténen coincimientos de la lhéngua $1.",
@@ -18,11 +20,12 @@
"babel-4": "{{GENDER:$4|Este outelizador|Esta outelizadora}} puode ajudar cun un nible [[$1|quaijeque cumo de quien l mamou a la nacença]] de [[$2|$3]].",
"babel-5": "{{GENDER:$4|Este outelizador|Esta outelizadora}} puode ajudar cun un nible [[$1|porfissional]] de [[$2|$3]].",
"babel-N": "{{GENDER:$4|Este outelizador|Esta outelizadora}} ten cumo lhéngua [[$1|de nacença]] l [[$2|$3]].",
- "babel-0-n": "{{GENDER:$4|Este outelizador|Esta outelizadora}} [[$1|nun antende]] [[$2|Mirandés]] (ó antende cun algun custo).",
+ "babel-0-n": "{{GENDER:$4|Este outelizador|Esta outelizadora}} [[$1|nun antende]] l [[$2|mirandés]] (ó antende cun algun custo).",
"babel-1-n": "{{GENDER:$4|Este outelizador|Esta outelizadora}} puode ajudar cun un nible [[$1|básico]] de [[$2|mirandés]].",
"babel-2-n": "{{GENDER:$4|Este outelizador|Esta outelizadora}} puode ajudar cun un nible [[$1|médio]] de [[$2|mirandés]].",
"babel-3-n": "{{GENDER:$4|Este outelizador|Esta outelizadora}} puode ajudar cun un nible [[$1|abançado]] de [[$2|mirandés]].",
"babel-4-n": "{{GENDER:$4|Este outelizador|Esta outelizadora}} puode ajudar cun un nible [[$1|quaijeque cumo de quien l mamou a la nacença]] de [[$2|mirandés]].",
"babel-5-n": "{{GENDER:$4|Este outelizador|Esta outelizadora}} puode ajudar cun un nible [[$1|porfissional]] de [[$2|mirandés]].",
- "babel-N-n": "{{GENDER:$4|Este outelizador|Esta outelizadora}} ten cumo lhéngua [[$1|de nacença]] l [[$2|mirandés]]."
+ "babel-N-n": "{{GENDER:$4|Este outelizador|Esta outelizadora}} ten cumo lhéngua [[$1|de nacença]] l [[$2|mirandés]].",
+ "babel-footer": "Outelizadores por lhéngua"
}
diff --git a/MLEB/Babel/i18n/my.json b/MLEB/Babel/i18n/my.json
index f4e28fe0..6ed3a4b4 100644
--- a/MLEB/Babel/i18n/my.json
+++ b/MLEB/Babel/i18n/my.json
@@ -1,16 +1,17 @@
{
"@metadata": {
"authors": [
- "Lionslayer"
+ "Lionslayer",
+ "Ninjastrikers",
+ "Dr Lotus Black"
]
},
"babel": "အသုံးပြုသူ၏ ဘေဘယ်ပေါ်မှ သတင်းအချက်အလက်",
"babel-desc": "စိတ်ကြိုက် တမ်းပလိတ်များ ထည့်သွင်းနိုင်စေသည့် ဘေဘယ် userbox ကော်လံ ကို အလိုအလျောက် ထွက်ပေါ်လာစေရန် <code>#babel</code> parser function ကို ထည့်ရေးပါ။",
"babel-url": "Project:ဘေဘယ်",
- "babel-autocreate-abort": "သင်ဖော်ပြခဲ့သော အသုံးပြုသူ အမည်သည် [[$1|ဘေဘယ်]] အမျိုးအစား အလိုအလျောက်ဖန်တီးခြင်း အတွက် သုံးထားပြီး မှတ်ပုံတင်မရနိုင်ပါ။",
"babel-autocreate-reason": "[[$1|ဘေဘယ်]] အမျိုးအစား စာမျက်နှာကို အလိုအလျောက် ဖန်တီးနေသည်။",
"babel-autocreate-text-levels": "ဤအမျိုးအစားမှ အသုံးပြုသူများသည် $2 ဘာသာအတွက် ကျွမ်းကျင်မှုအဆင့် $1 ရှိသည်ကို ဆိုလိုသည်။",
- "babel-autocreate-text-main": "ဤအမျိုးအစားမှ အသုံးပြုသူများသည် $1 ဘာသာကို ကြားဖူးနားဝရှိသည်ကို ဆိုလိုသည်။",
+ "babel-autocreate-text-main": "ဤကဏ္ဍမှ အသုံးပြုသူများသည် $1 ဘာသာကို ကြားဖူးနားဝရှိသည်ကို ဆိုလိုသည်။",
"babel-0": "ဤ အသုံးပြုသူသည် [[$2|$3]] တွင် ဗဟုသုတအဆင့် [[$1|မရှိသလောက်]] ရှိသည် (သို့ အခက်အခဲတစ်စုံတရာရှိသော်လည်း နားလည်နိုင်သည်)။",
"babel-1": "ဤအသုံးပြုသူသည် [[$2|$3]] အတွက် [[$1|အခြေခံ]] ဗဟုသုတ ရှိသည်။",
"babel-2": "ဤအသုံးပြုသည် [[$2|$3]] အတွက် ဗဟုသုတအဆင့် [[$1|အလယ်အလတ်]] ရှိသည်။",
@@ -24,5 +25,6 @@
"babel-3-n": "ဤအသုံးပြုသူသည် [[$2|မြန်မာဘာသာ]] အတွက် ဗဟုသုတအဆင့် [[$1|အဆင့်မြင့်မြင့်]] ရှိသည်။",
"babel-4-n": "ဤအသုံးပြုသူသည် [[$2|မြန်မာဘာသာ]] အတွက် [[$1|ဒေသခံနီးပါး]]ဗဟုသုတ ရှိသည်။",
"babel-5-n": "ဤအသုံးပြုသူသည် [[$2|မြန်မာဘာသာ]] အတွက် [[$1|ပရိုအဆင့်]] ဗဟုသုတ ရှိသည်။",
- "babel-N-n": "ဤအသုံးပြုသူသည် [[$2|မြန်မာဘာသာ]] အပေါ်တွင် [[$1|ဒေသခံအဆင့်]] ကျွမ်းကျင်စွာ နားလည်သည်။"
+ "babel-N-n": "ဤအသုံးပြုသူသည် [[$2|မြန်မာဘာသာ]] အပေါ်တွင် [[$1|ဒေသခံအဆင့်]] ကျွမ်းကျင်စွာ နားလည်သည်။",
+ "babel-footer": "ဘာသာစကားအလိုက် အသုံးပြုသူများ"
}
diff --git a/MLEB/Babel/i18n/nah.json b/MLEB/Babel/i18n/nah.json
index 394e5558..f1f05b11 100644
--- a/MLEB/Babel/i18n/nah.json
+++ b/MLEB/Babel/i18n/nah.json
@@ -4,30 +4,34 @@
"Fluence",
"Purodha",
"Ricardo gs",
- "Teòtlalili"
+ "Teòtlalili",
+ "Akapochtli"
]
},
- "babel": "Ìteìxmatilòka in motekìuhtiàni ìpan Babel",
- "babel-desc": "Ìka san ìsèl monèxtìs in ìbabelpal in motekìuhtiàni wan kualli motlàlilìs tènemáchiòuh, mà motlàlili in tlaìxnênewiliskàtekitki <code>#babel</code>",
+ "babel": "Iteixmatiloca itech tequitiuhqui ipan Babel",
+ "babel-desc": "Ica zan icel monextiz in ibabelpal in tequitiuhqui huan cualli motlaliliz tenemachiouh, ma motlalili in tlaixnehnehuilizcatequitqui <code>#babel</code>",
"babel-url": "Project:Babel",
- "babel-footer-url": ":Category:Babel - Motekìuhtiànimë ìpal ìntlâtòl",
- "babel-autocreate-abort": "In tekìuhkàtokâtli tlen timonekìltia awel mîkuilòs, motekitìltia ìpampa in mosèlchìhki tlaìxmatkàtlàlilòtl [[$1|Babel]]",
- "babel-autocreate-reason": "Mosèlchîchìuhtíkä in [[$1|Babel]]tlaìxmatkàtlàlilòmë tlaìxtlapalli",
- "babel-autocreate-text-levels": "In motekìuhtiànimë ìpan inìn tlaìxmatkàtlàlilòtl kîtowâkë mach $1 kinênewiliâkë in $2",
- "babel-autocreate-text-main": "In motekìuhtiànimë ìpan inìn tlaìxmatkàtlàlilòtl kîtowâkë mach kìxmatîkë in $1 tlâtòlli",
- "babel-0": "Inìn motekìuhtiàni [[$1|âmò kinênewilia]] in [[$2|$3]] (nòso molwi kitekiyòmati).",
- "babel-1": "Inìn motekìuhtiàni [[$1|semi chîtòn]] kìxmati in [[$2|$3]].",
- "babel-2": "Inìn motekìuhtiàni [[$1|kimàmati]] tlâtòs ìka in [[$2|$3]].",
- "babel-3": "Inìn motekìuhtiàni [[$1|kualli]] tlâtowa ìka in [[$2|$3]].",
- "babel-4": "Inìn motekìuhtiàni tlâtowa in [[$2|$3]] kâxa kèn sè [[$1|chànë]].",
- "babel-5": "Inìn motekìuhtiàni [[$1|nàwaìxmatki]], ìka motekìuhtia in [[$2|nàwatlâtòlli]].",
- "babel-N": "In [[$2|$3]], [[$1|ìtlàkatkàtlâtòl]] inìn motekìuhtiàni, kiyèknênewilia.",
- "babel-0-n": "Inìn motekìuhtiàni [[$1|âmò kinênewilia]] in [[$2|nàwatlâtòlli]] (nòso molwi kitekiyòmati).",
- "babel-1-n": "Inìn motekìuhtiàni [[$1|semi chîtòn]] kìxmati in [[$2|nàwatlâtòlli]].",
- "babel-2-n": "Inìn motekìuhtiàni [[$1|kimàmati]] tlâtòs ìka in [[$2|nàwatlâtòlli]].",
- "babel-3-n": "Inìn motekìuhtiàni [[$1|kualli]] tlâtowa ìka in [[$2|nàwatlâtòlli]].",
- "babel-4-n": "Inìn motekìuhtiàni tlâtowa in [[$2|nàwatl]] kâxa kèn sè [[$1|chànë]].",
- "babel-5-n": "Inìn motekìuhtiàni [[$1|nàwaìxmatki]], ìka motekìuhtia in [[$2|nàwatlâtòlli]].",
- "babel-N-n": "In [[$2|nàwatlâtòlli]], [[$1|ìtlàkatkàtlâtòl]] inìn motekìuhtiàni, kiyèknênewilia.",
- "babel-footer": "Tlatequitiltilīltin īpal īntlahtōl"
+ "babel-footer-url": ":Category:Babel - Tequitiuhqueh ipal intlahtol",
+ "babel-autocreate-reason": "Mocelchihchiuhtica in [[$1|Babel]]tlahcuilolli ineneuhcayo",
+ "babel-autocreate-text-levels": "In tequitiuhqueh ipan inin neneuhcayotl quihtohqueh mach quimonehnehuilia $1 iuhqui ica tlahtolli $2",
+ "babel-autocreate-text-main": "In tequitiuhqueh ipan inin neneuhcayotl oquihtohqueh mach quixmatih in $1 tlahtolli",
+ "babel-0": "Inin tequitiuhqui [[$1|ahmo quinehnehuilia]] in [[$2|$3]] (nozo molhui quitequiyomati).",
+ "babel-1": "Inin tequitiuhqui [[$1|cemi chihton]] quixmati in [[$2|$3]].",
+ "babel-2": "Inin tequitiuhqui [[$1|quimamati]] tlahtoz ica in [[$2|$3]].",
+ "babel-3": "Inin tequitiuhqui [[$1|cualli]] tlahtoa ica in [[$2|$3]].",
+ "babel-4": "Inin tequitiuhqui tlahtoa in [[$2|$3]] cahxa quen ce [[$1|chaneh]].",
+ "babel-5": "Inin tequitiuhqui quipiya [[$1|tetlamachilli]] tlaixihmachiliztli itech [[$2|nahuatlahtolli]].",
+ "babel-N": "Inin tequitiuhqui quipiya quen [[$1|nantlahtolli]] in [[$2|$3]].",
+ "babel-0-n": "Inin tequitiuhqui [[$1|ahmo quinehnehuilia]] in [[$2|nahuatlahtolli]] (nozo molhui quitequiyomati).",
+ "babel-1-n": "Inin tequitiuhqui [[$1|cemi chihton]] quixmati in [[$2|nahuatlahtolli]].",
+ "babel-2-n": "Inin tequitiuhqui [[$1|quimamati]] tlahtoz ica in [[$2|nahuatlahtolli]].",
+ "babel-3-n": "Inin tequitiuhqui [[$1|cualli]] tlahtoa ica in [[$2|nahuatlahtolli]].",
+ "babel-4-n": "Inin tequitiuhqui tlahtoa in [[$2|nahuatl]] cahxa quen ce [[$1|chaneh]].",
+ "babel-5-n": "Inin tequitiuhqui quipiya [[$1|tetlamachilli]] tlaixihmachiliztli itech [[$2|nahuatlahtolli]].",
+ "babel-N-n": "Inin tequitiuhqui quipiya quen [[$1|nantlahtolli]] in [[$2|nahuatlahtolli]].",
+ "babel-footer": "Tequitiuhqueh ipal intlahtol",
+ "apihelp-query+babel-description": "Ticahxiltiz in neixmachiliztli itechpa tlahtolli in quixmati",
+ "apihelp-query+babel-summary": "Ticahxiltiz in neixmachiliztli itechpa tlahtolli in quixmati",
+ "apihelp-query+babel-param-user": "Inin tequitiuhqui quipiya neixmachiliztli",
+ "apihelp-query+babel-example-1": "Ticahxiltiz ineixmachiliz itech tequitiuhqui <kbd>Example</kbd>"
}
diff --git a/MLEB/Babel/i18n/nap.json b/MLEB/Babel/i18n/nap.json
index 36ebf871..070f6b4e 100644
--- a/MLEB/Babel/i18n/nap.json
+++ b/MLEB/Babel/i18n/nap.json
@@ -1,30 +1,34 @@
{
"@metadata": {
"authors": [
- "C.R."
+ "C.R.",
+ "Sannita"
]
},
"babel": "Nfurmaziune babel utente",
"babel-desc": "Jògne 'a funzione d'analise <code>#babel</code> pe' ve permettere 'a generazione automatezzata 'e 'na culonna babel cu 'a possibbeletà 'e 'ncludere template personalizzate",
"babel-url": "Project:Babel",
- "babel-footer-url": ":Category:Babel - Utente pe' llengua",
- "babel-autocreate-abort": "'O nomme utente c'avite specificato è ausato p' 'a categurìa d'auto crijazione 'e [[$1|Babel]] e nun se pùo riggistra.",
- "babel-autocreate-reason": "Automatecamente crianno 'a paggena 'e categurìa [[$1|Babel]].",
- "babel-autocreate-text-levels": "L'utente ca stann'a dint'a sta categurìa indicano c'avessero nu buono livello $1 p' 'a lengua $2.",
- "babel-autocreate-text-main": "L'utente ca stann'a dint'a sta categurìa indicano c'avessero nu buono livello d' 'a lengua $1.",
- "babel-0": "Chist'utente [[$1|nun]] ave canuscenza 'e [[$2|$3]] (o 'a capisce malamente).",
- "babel-1": "St'utente ave nu livello [[$1|base]] 'e [[$2|$3]].",
- "babel-2": "St'utente ave nu livello [[$1|mezo]] 'e [[$2|$3]].",
- "babel-3": "St'utente ave nu livello [[$1|aveto]] 'e [[$2|$3]].",
- "babel-4": "St'utente ave nu livello comme fosse quase [[$1|nativo]] 'e [[$2|$3]].",
- "babel-5": "St'utente ave na canuscenza [[$1|professionale]] 'e [[$2|$3]].",
+ "babel-footer-url": ":Category:Utente pe' llengua",
+ "babel-autocreate-reason": "Stong' crianno automatecamente 'a categurìa [[$1|Babel]].",
+ "babel-autocreate-text-levels": "L'utente dint'a sta categurìa riceno ca tengono nu livello $1 p' 'a lengua $2.",
+ "babel-autocreate-text-main": "L'utente dint'a sta categurìa riceno 'e canoscere 'a lengua $1.",
+ "babel-0": "Chist'utente [[$1|nun]] sape parlà [[$2|$3]] (o capisce malamente 'a lengua).",
+ "babel-1": "St'utente tene nu livello [[$1|base]] 'e [[$2|$3]].",
+ "babel-2": "St'utente tene nu livello [[$1|mezo]] 'e [[$2|$3]].",
+ "babel-3": "St'utente tene nu livello [[$1|aveto]] 'e [[$2|$3]].",
+ "babel-4": "St'utente tene nu livello comme fosse quase [[$1|nativo]] 'e [[$2|$3]].",
+ "babel-5": "St'utente tene na canuscenza [[$1|professionale]] 'e [[$2|$3]].",
"babel-N": "St'utente è de [[$1|madrelengua]] [[$2|$3]].",
- "babel-0-n": "St'utente nun ave [[$1|nisciuna]] canoscenza 'e lengua [[$2|napulitana]] (o pure 'a capisce ma facesse troppa fatica).",
- "babel-1-n": "St'utente ave nu livello [[$1|base]] 'e llengua [[$2|napulitana]].",
- "babel-2-n": "St'utente ave nu livello [[$1|mezo]] 'e llengua [[$2|napulitana]].",
- "babel-3-n": "St'utente ave nu livello [[$1|aveto]] 'e llengua [[$2|napulitana]].",
- "babel-4-n": "St'utente ave nu livello comme fosse quase [[$1|nativo]] 'e [[$2|napulitano]].",
- "babel-5-n": "St'utente ave na canuscenza [[$1|professionale]] 'e [[$2|napulitano]].",
- "babel-N-n": "St'utente è de [[$1|madrelèngua]] [[$2|napulitano]].",
- "babel-footer": "Utente pe' llengua"
+ "babel-0-n": "St'utente [[$1|nun]] sape 'o [[$2|napulitano]] (o pure 'u capisce malamente).",
+ "babel-1-n": "St'utente tene nu livello [[$1|base]] 'e [[$2|napulitano]].",
+ "babel-2-n": "St'utente tene nu livello [[$1|mezo]] 'e [[$2|napulitano]].",
+ "babel-3-n": "St'utente tene nu livello [[$1|aveto]] 'e [[$2|napulitano]].",
+ "babel-4-n": "St'utente tene nu livello comme fosse quase [[$1|nativo]] 'e [[$2|napulitano]].",
+ "babel-5-n": "St'utente tene na canuscenza [[$1|professionale]] 'e [[$2|napulitano]].",
+ "babel-N-n": "St'utente è de [[$1|madrelèngua]] [[$2|napulitana]].",
+ "babel-footer": "Utente pe' lengua",
+ "apihelp-query+babel-description": "Piglia nfurmaziune ncopp' 'e llengue ca sapesse l'utente",
+ "apihelp-query+babel-summary": "Piglia 'e nfurmaziune ncopp' 'e llengue ca l'utente canosce",
+ "apihelp-query+babel-param-user": "Utente a se piglià nfurmaziune",
+ "apihelp-query+babel-example-1": "Piglia 'infurmaziune Babbel 'a ll'utente <kbd>Esempio</kbd>"
}
diff --git a/MLEB/Babel/i18n/nb.json b/MLEB/Babel/i18n/nb.json
index 3464deae..1a76bc4f 100644
--- a/MLEB/Babel/i18n/nb.json
+++ b/MLEB/Babel/i18n/nb.json
@@ -3,31 +3,37 @@
"authors": [
"Event",
"Laaknor",
- "Nghtwlkr"
+ "Nghtwlkr",
+ "Jeblad",
+ "Danmichaelo",
+ "Jon Harald Søby"
]
},
- "babel": "Babelinformasjon",
- "babel-desc": "Legger til parserfunksjonen <code>#babel</code> for å automatisk generere en babelboks med mulighet for å inkludere egendefinerte maler",
+ "babel": "Babel brukerinformasjon",
+ "babel-desc": "Legger til parserfunksjonen <code>#babel</code> for å automatisk generere en babelboks med mulighet for å inkludere egendefinerte maler",
"babel-url": "Project:Babel",
"babel-footer-url": ":Category:Babel - Brukere etter språk",
- "babel-autocreate-abort": "Brukernavnet du valgte er i bruk for automatisk oppretting av [[$1|Babel]]-kategorier og kan derfor ikke registreres.",
"babel-autocreate-reason": "Oppretter automatisk en [[$1|Babel]]-kategoriside.",
- "babel-autocreate-text-levels": "Brukeren i denne kategorien har et språkkunnskapsnivå på $1 for $2.",
- "babel-autocreate-text-main": "Brukeren i denne kategorien kjenner til $1.",
+ "babel-autocreate-text-levels": "Brukere i denne kategorien viser at de har kjennskap til språket $2 på nivå $1.",
+ "babel-autocreate-text-main": "Brukere i denne kategorien viser at de har kjennskap til språket $1.",
"babel-0": "Denne brukeren har [[$1|lite eller ingen]] kjennskap til [[$2|$3]] (eller har svært vanskelig for å forstå det).",
- "babel-1": "Denne brukeren kan [[$1|litt]] [[$2|$3]].",
- "babel-2": "Denne brukeren har [[$1|god]] kjennskap til [[$2|$3]].",
- "babel-3": "Denne brukeren behersker [[$2|$3]] [[$1|flytende]].",
- "babel-4": "Denne brukeren snakker [[$2|$3]] på [[$1|morsmålsnivå]].",
- "babel-5": "Denne brukeren bruker [[$2|$3]] [[$1|profesjonelt]].",
- "babel-N": "Denne brukeren har [[$2|$3]] som [[$1|morsmål]].",
- "babel-0-n": "Denne brukeren [[$1|kan ikke]] skrive eller lese [[$2|norsk]] (eller forstår det kun med store vanskeligheter).",
- "babel-1-n": "Denne brukeren kan [[$1|litt]] [[$2|norsk (bokmål)]].",
- "babel-2-n": "Denne brukeren har [[$1|god kjennskap]] til [[$2|norsk (bokmål)]].",
- "babel-3-n": "Denne brukeren behersker [[$2|norsk (bokmål)]] [[$1|flytende]].",
- "babel-4-n": "Denne brukeren snakker og skriver [[$2|norsk (bokmål)]] på [[$1|morsmålsnivå]].",
- "babel-5-n": "Denne brukeren bruker [[$2|norsk (bokmål)]] [[$1|profesjonelt]].",
- "babel-N-n": "Denne brukeren har [[$2|norsk]] som [[$1|morsmål]] og behersker bokmål.",
+ "babel-1": "Denne brukeren har [[$1|grunnleggende]] kjennskap til [[$2|$3]].",
+ "babel-2": "Denne brukeren har [[$1|nokså god]] kjennskap til [[$2|$3]].",
+ "babel-3": "Denne brukeren har [[$1|omfattende]] kjennskap til [[$2|$3]].",
+ "babel-4": "Denne brukeren behersker [[$2|$3]] på [[$1|nær morsmålsnivå]].",
+ "babel-5": "Denne brukeren behersker [[$2|$3]] på [[$1|profesjonelt]] nivå.",
+ "babel-N": "Denne brukeren behersker [[$2|$3]] på [[$1|morsmålsnivå]].",
+ "babel-0-n": "Denne brukeren har [[$1|lite eller ingen]] kjennskap til [[$2|norsk (bokmål)]] (eller har svært vanskelig for å forstå det).",
+ "babel-1-n": "Denne brukeren har [[$1|grunnleggende]] kjennskap til [[$2|norsk (bokmål)]].",
+ "babel-2-n": "Denne brukeren har [[$1|nokså god]] kjennskap til [[$2|norsk (bokmål)]].",
+ "babel-3-n": "Denne brukeren har [[$1|omfattende]] kjennskap til [[$2|norsk (bokmål)]].",
+ "babel-4-n": "Denne brukeren har kjennskap til [[$2|norsk (bokmål)]] på [[$1|nær morsmålsnivå]].",
+ "babel-5-n": "Denne brukeren behersker [[$2|norsk (bokmål)]] på [[$1|profesjonelt]] nivå.",
+ "babel-N-n": "Denne brukeren behersker [[$2|norsk (bokmål)]] på [[$1|morsmålsnivå]].",
"babel-template": "Template:Bruker $1",
- "babel-footer": "Brukere etter språk"
+ "babel-footer": "Brukere etter språk",
+ "apihelp-query+babel-description": "Få informasjon om hvilke språk brukeren kan",
+ "apihelp-query+babel-summary": "Hent informasjon om hvilke språk brukeren kan",
+ "apihelp-query+babel-param-user": "Bruker det skal hentes informasjon om",
+ "apihelp-query+babel-example-1": "Hent Babel-informasjon for brukeren <kbd>Eksempel</kbd>"
}
diff --git a/MLEB/Babel/i18n/nds-nl.json b/MLEB/Babel/i18n/nds-nl.json
index 98194d8e..fba7decb 100644
--- a/MLEB/Babel/i18n/nds-nl.json
+++ b/MLEB/Babel/i18n/nds-nl.json
@@ -8,7 +8,6 @@
"babel-desc": "Voegt de <code>#babel</code>-ontlejerfunksie toe um de automatiese anmaak van de babelgebrukerskolom meugelik te maken mit de meugelikheid um spesiale mallen in te voegen.",
"babel-url": "Project:Babel",
"babel-footer-url": ":Category:Babel - Gebrukers naor taal",
- "babel-autocreate-abort": "De gebrukersnaam die'j op-egeven hebben, wörden gebruukt veur t automaties anmaken van [[$1|Babel]]-kategorieën en kan niet eregistreerd wörden.",
"babel-autocreate-reason": "Automaties an-emaakten [[$1|Babel]]-kategorie.",
"babel-autocreate-text-levels": "De gebrukers in disse kategorie geven an dat hulen nivo van t $2 $1 is.",
"babel-autocreate-text-main": "De gebrukers in disse kategorie geven an dat ze kennis hebben van t $1.",
diff --git a/MLEB/Babel/i18n/nds.json b/MLEB/Babel/i18n/nds.json
index c9247e5a..244a53ad 100644
--- a/MLEB/Babel/i18n/nds.json
+++ b/MLEB/Babel/i18n/nds.json
@@ -9,7 +9,6 @@
"babel-desc": "Föögt de <code>#babel</code>-Parserfunkschoon för dat automaatsche Opstellen vun Babel-Brukerboxen to. Verlöövt ok dat Inbinnen vun egene Vörlagen.",
"babel-url": "Project:Babel",
"babel-footer-url": ":Kategorie:Babel - Bruker noh Spraak",
- "babel-autocreate-abort": "De utwählt Brukernaam warrt för dat automaatsch Opstellen vun [[$1|Babel]]-Kategorien bruukt un kann nich registreert warrn.",
"babel-autocreate-reason": "Automaatsch opstellt [[$1|Babel]]-Kategorie.",
"babel-autocreate-text-levels": "Brukers in disse Kategorie köönt de Spraak $2 op Niveau $1 snacken.",
"babel-autocreate-text-main": "Brukers in disse Kategorie kennt vun de Spraak $1 wat af.",
diff --git a/MLEB/Babel/i18n/ne.json b/MLEB/Babel/i18n/ne.json
index fd26d382..9e44c44f 100644
--- a/MLEB/Babel/i18n/ne.json
+++ b/MLEB/Babel/i18n/ne.json
@@ -3,17 +3,17 @@
"authors": [
"Bhawani Gautam",
"Bhawani Gautam Rhk",
- "सरोज कुमार ढकाल"
+ "सरोज कुमार ढकाल",
+ "राम प्रसाद जोशी"
]
},
"babel": "Babel प्रयोगकर्ता जानकारी",
"babel-desc": "<code>#babel</code> पार्सर क्रिया जोड़छ जसले स्वतः प्रयोगकर्ता बाकस बेबल कलमको निर्माणमा अनुकूलित ढाँचालाई योग्यतापूर्वक संलग्न गर्ने अनुमति दिन्छ।",
"babel-url": "Project:ब्याबल",
- "babel-footer-url": ":श्रेणी:बेबल -प्रयोगकर्ताहरु भाषाको आधारमा",
- "babel-autocreate-abort": "तपाईंले दिएको प्रयोगकर्ता नाम [[$1|बेबल]] श्रेणी स्वतः निर्माणको निम्ति प्रयोग भएकोछ र यसलाई पञ्जीकरण गर्न सकिंदैन।",
- "babel-autocreate-reason": "[[$1|ब्याबल]] श्रेणी पृष्ठ स्वत:सृजना गरिँदै।",
- "babel-autocreate-text-levels": "यस श्रेणीका प्रयोगकर्ताहरुबाट संकेत पाइन्छ कि $2 भाषामा तिनीहरुको कौशल स्तर $1 छ।",
- "babel-autocreate-text-main": "यस श्रेणीका प्रयोगकर्ताहरुबाट संकेत पाइन्छ कि तिनीहरुमा $1भाषाको ज्ञान छ।",
+ "babel-footer-url": ":श्रेणी:बेबल -प्रयोगकर्ताहरू भाषाको आधारमा",
+ "babel-autocreate-reason": "[[$1|ब्याबल]] श्रेणी पृष्ठ स्वत:सृजना गरिदै ।",
+ "babel-autocreate-text-levels": "यस श्रेणीका प्रयोगकर्ताहरूबाट संकेत पाइन्छ कि $2 भाषामा तिनीहरूको कौशल स्तर $1 छ।",
+ "babel-autocreate-text-main": "यस श्रेणीका प्रयोगकर्ताहरूबाट संकेत पाइन्छ कि तिनीहरूसँग$1भाषाको ज्ञान छ।",
"babel-0": "यो प्रयोगकर्तासँग [[$2|$3]] को कुनै ज्ञान [[$1|छैन]] ( अथवा धेरै कठिनताका साथ बुझ्ने गर्छ )।",
"babel-1": "यो प्रयोगकर्तासँग [[$2|$3]]को [[$1|साधारण]] ज्ञान छ ।",
"babel-2": "यो प्रयोगकर्तासँग [[$2|$3]] को [[$1|मध्यम स्तर]]को ज्ञान छ।",
@@ -28,5 +28,5 @@
"babel-4-n": "यी प्रयोगकर्तासित [[$2|नेपाली]] भाषाको [[$1|पैदायसी निकट]]को ज्ञान छ।",
"babel-5-n": "यो प्रयोगकर्तासित [[$2|नेपाली]] भाषामा [[$1|विशेषज्ञता]]को ज्ञान छ ।",
"babel-N-n": "यो प्रयोगकर्तासँग [[$2|नेपाली]] [[$1|पैदायसी]] ज्ञान छ ।",
- "babel-footer": "भाषा अनुसार प्रयोगकर्ताहरु"
+ "babel-footer": "भाषा अनुसार प्रयोगकर्ताहरू"
}
diff --git a/MLEB/Babel/i18n/new.json b/MLEB/Babel/i18n/new.json
index aadc2dbd..eccc369c 100644
--- a/MLEB/Babel/i18n/new.json
+++ b/MLEB/Babel/i18n/new.json
@@ -7,7 +7,6 @@
"babel": "ब्याबेल छ्यलामि सूचं",
"babel-url": "ज्याझ्वःब्याबेल",
"babel-footer-url": ":Category:ब्याबेल - भाषा कथंया छ्यलामि",
- "babel-autocreate-abort": "छिं बियादिगु छ्यलामि नां [[$1|ब्याबेल]] पुचः अटो-क्रियशनय् छ्यलिगु जुलिं दर्ता यायेमछिं।",
"babel-autocreate-reason": "[[$1|ब्याबेल]] पुचः पौ स्वतः दयेकाच्वंगु।",
"babel-autocreate-text-levels": "थ्व पुचःया छ्यलामितयेसं $2 भासय् इमिगु दक्षता $1 दु धका धयातःगु दु।",
"babel-autocreate-text-main": "थ्व पुचःया छ्यलामितयेसं इमिके $1भाय्‌या ज्ञान दु धका धयातःगु दु।",
diff --git a/MLEB/Babel/i18n/nl-informal.json b/MLEB/Babel/i18n/nl-informal.json
index 772dd8c8..d2b6736d 100644
--- a/MLEB/Babel/i18n/nl-informal.json
+++ b/MLEB/Babel/i18n/nl-informal.json
@@ -3,6 +3,5 @@
"authors": [
"Siebrand"
]
- },
- "babel-autocreate-abort": "De gebruikersnaam die je hebt opgegeven wordt gebruikt voor het automatisch aanmaken van [[$1|Babel]]-categorieën en kan niet geregistreerd worden."
+ }
}
diff --git a/MLEB/Babel/i18n/nl.json b/MLEB/Babel/i18n/nl.json
index 83df32d7..7a579558 100644
--- a/MLEB/Babel/i18n/nl.json
+++ b/MLEB/Babel/i18n/nl.json
@@ -7,14 +7,15 @@
"MarkAHershberger",
"McDutchie",
"SPQRobin",
- "Siebrand"
+ "Siebrand",
+ "Mainframe98",
+ "Huhbakker"
]
},
"babel": "Taalvaardigheid",
"babel-desc": "Voegt de parserfunctie <code>#babel</code> toe om automatische generatie van een babelgebruikersbox mogelijk te maken met de mogelijkheid om aangepaste sjablonen in te voegen",
"babel-url": "Project:Babel",
"babel-footer-url": ":Category:Babel - Gebruikers naar taal",
- "babel-autocreate-abort": "De gebruikersnaam die u hebt opgegeven wordt gebruikt voor het automatisch aanmaken van [[$1|Babel]]-categorieën en kan niet geregistreerd worden.",
"babel-autocreate-reason": "Automatisch aangemaakte [[$1|Babel]]-categorie.",
"babel-autocreate-text-levels": "Gebruikers in deze categorie geven aan dat hun niveau voor de taal $2 $1 is.",
"babel-autocreate-text-main": "Gebruikers in deze categorie geven aan dat zij kennis van de taal $1 hebben.",
@@ -32,5 +33,9 @@
"babel-4-n": "Deze gebruiker beheerst het [[$2|Nederlands]] als ware het zijn [[$1|moedertaal]].",
"babel-5-n": "Deze gebruiker heeft [[$1|professionele]] kennis van het [[$2|Nederlands]].",
"babel-N-n": "Deze gebruiker heeft het [[$2|Nederlands]] als [[$1|moedertaal]].",
- "babel-footer": "Gebruikers per taal"
+ "babel-footer": "Gebruikers per taal",
+ "apihelp-query+babel-description": "Informatie verkrijgen over de talen die de gebruiker kent",
+ "apihelp-query+babel-summary": "Informatie verkrijgen over de talen die de gebruiker kent",
+ "apihelp-query+babel-param-user": "Gebruiker om informatie over te verkrijgen",
+ "apihelp-query+babel-example-1": "Voor de Babel informatie voor de gebruiker <kbd>Voorbeeld</kbd>"
}
diff --git a/MLEB/Babel/i18n/nn.json b/MLEB/Babel/i18n/nn.json
index 28dfb5b2..909c73e1 100644
--- a/MLEB/Babel/i18n/nn.json
+++ b/MLEB/Babel/i18n/nn.json
@@ -6,30 +6,30 @@
"Gunnernett",
"Harald Khan",
"Njardarlogar",
- "Ranveig"
+ "Ranveig",
+ "Jeblad"
]
},
- "babel": "Babelinformasjon",
+ "babel": "Babel-brukarinformasjon",
"babel-desc": "Legg til parserfunksjonen <code>#babel</code> for å automatisk lage ein babelboks der ein kan bruka sjølvlaga malar",
"babel-url": "Project:Babel",
"babel-footer-url": ":Kategori:Babel/Brukarar etter språk",
- "babel-autocreate-abort": "Brukarnamnet du valte er i bruk for automatisk oppretting av [[$1|Babel]]-kategoriar og kan difor ikkje verta registrert.",
- "babel-autocreate-reason": "Oprettar automatisk ei [[$1|Babel]]-kategori-sida.",
+ "babel-autocreate-reason": "Oppretta automatisk ei [[$1|Babel]]-kategoriside.",
"babel-autocreate-text-levels": "Brukarar i denne kategorien har eit språkdugleiksnivå på $1 for $2.",
- "babel-autocreate-text-main": "Brukarar i denne kategorien kjenner til $1.",
- "babel-0": "Denne brukaren har [[$1|små eller ingen]] kunnskapar i [[$2|$3]].",
- "babel-1": "Denne brukaren har [[$1|litt]] kjennskap til [[$2|$3]].",
- "babel-2": "Denne brukaren kan [[$1|ganske godt]] [[$2|$3]].",
- "babel-3": "Denne brukaren kan [[$1|svært godt]] [[$2|$3]].",
- "babel-4": "Denne brukaren kan [[$2|$3]] nesten på [[$1|morsmålnivå]]",
- "babel-5": "Denne brukaren nyttar [[$2|$3]] [[$1|profesjonelt]].",
- "babel-N": "Denne brukaren har [[$2|$3]] som [[$1|morsmål]].",
- "babel-0-n": "Denne brukaren har [[$1|ingen]] kjennskap til [[$2|nynorsk]] (eller forstår det berre så vidt).",
- "babel-1-n": "Denne brukaren kan [[$1|litt]] [[$2|nynorsk]].",
- "babel-2-n": "Denne brukaren har [[$1|god kjennskap]] til [[$2|nynorsk]].",
- "babel-3-n": "Denne brukaren meistrar [[$2|nynorsk]] [[$1|flytande]].",
- "babel-4-n": "Denne brukaren snakkar og skriv [[$2|nynorsk]] om lag på [[$1|morsmålsnivå]].",
- "babel-5-n": "Denne brukaren har [[$1|profesjonell]] kjennskap til [[$2|nynorsk]].",
- "babel-N-n": "Denne brukaren har [[$2|norsk]] som [[$1|morsmål]] og meistrar nynorsk.",
+ "babel-autocreate-text-main": "Brukarar i denne kategorien viser kva evner dei har i språket $1.",
+ "babel-0": "Denne brukaren meistrar [[$1|ikkje]] [[$2|$3]] (eller skjøner det med store vanskar)",
+ "babel-1": "Denne brukaren meistrar [[$2|$3]] på eit [[$1|grunnleggjande]] nivå.",
+ "babel-2": "Denne brukaren meistrar [[$2|$3]] på eit [[$1|middels]] nivå.",
+ "babel-3": "Denne brukaren meistrar [[$2|$3]] på eit [[$1|høgt]] nivå.",
+ "babel-4": "Denne brukaren meistrar [[$2|$3]] på eit [[$1|morsmålsnært]] nivå.",
+ "babel-5": "Denne brukaren meistrar [[$2|$3]] på eit [[$1|profesjonelt]] nivå.",
+ "babel-N": "Denne brukaren meistrar [[$2|$3]] på [[$1|morsmålsnivå]].",
+ "babel-0-n": "Denne brukaren meistrar [[$1|ikkje]] [[$2|nynorsk]] (eller skjøner det med store vanskar)",
+ "babel-1-n": "Denne brukaren meistrar [[$2|nynorsk]] på eit [[$1|grunnleggjande]] nivå.",
+ "babel-2-n": "Denne brukaren meistrar [[$2|nynorsk]] på eit [[$1|middels]] nivå.",
+ "babel-3-n": "Denne brukaren meistrar [[$2|nynorsk]] på eit [[$1|høgt]] nivå.",
+ "babel-4-n": "Denne brukaren meistrar [[$2|nynorsk]] på eit [[$1|morsmålsnært]] nivå.",
+ "babel-5-n": "Denne brukaren meistrar [[$2|nynorsk]] på eit [[$1|profesjonelt]] nivå.",
+ "babel-N-n": "Denne brukaren meistrar [[$2|nynorsk]] på [[$1|morsmålsnivå]].",
"babel-footer": "Brukarar etter språk"
}
diff --git a/MLEB/Babel/i18n/nso.json b/MLEB/Babel/i18n/nso.json
index b2de54cc..e8382da4 100644
--- a/MLEB/Babel/i18n/nso.json
+++ b/MLEB/Babel/i18n/nso.json
@@ -8,7 +8,6 @@
"babel-desc": "Thwanya <code>#babel</code> \"parser function\" go dumelela \"babel userbox\" yeo e dumelalago go hloma \"custom templates\"",
"babel-url": "Project:Babel",
"babel-footer-url": ":Category:Babel - Bašomiši ka mmolelo",
- "babel-autocreate-abort": "Leina-šomiši lago kgethwa ke wena le a šomišwa go sehlopha sa [[$1|Babel]] ka gona go ngwadiša ga go kgonagake.",
"babel-autocreate-reason": "Ka noši hloma [[$1|Babel]] sa letlakala la sehlopha.",
"babel-autocreate-text-levels": "Bašomiši go sehlopha se ba e hlalosa bane tsebo ya seemo sa $1 go leleme la $2.",
"babel-autocreate-text-main": "Bašomiši go sehlopha se ba e hlalosa bane tsebo go leleme la $1.",
diff --git a/MLEB/Babel/i18n/oc.json b/MLEB/Babel/i18n/oc.json
index 0a6d3974..9be8c8a9 100644
--- a/MLEB/Babel/i18n/oc.json
+++ b/MLEB/Babel/i18n/oc.json
@@ -9,10 +9,9 @@
"babel-desc": "Apond una foncion parser <code>#babel</code> que permet la creacion automatica d'una bóstia d’utilizaire Babèl amb la possibilitat d’i enclure de modèls locals.",
"babel-url": "Project:Babel",
"babel-footer-url": ":Category:Babel - Utilizaires per lenga",
- "babel-autocreate-abort": "Lo nom d'utilizaire qu'avètz picat es utilizat per crear automaticament las categorias [[$1|Babel]] e pòt pas èsser enregistrat.",
"babel-autocreate-reason": "Creacion automatica de la categoria [[$1|Babel]].",
"babel-autocreate-text-levels": "Los utilizaires dins aquesta categoria an indicat qu'an lo nivèl $1 per la lenga $2.",
- "babel-autocreate-text-main": "Los utilizaires dins aquesta categoria an indicat qu'an una coneissença en $1.",
+ "babel-autocreate-text-main": "Los utilizaires dins aquesta categoria an indicat qu'an una coneissença en lenga $1.",
"babel-0": "Aqueste utilizaire a [[$1|pas cap]] de coneissença en [[$2|$3]] (o comprend amb de dificultats grandas).",
"babel-1": "Aqueste utilizaire pòt contribuir amb un nivèl [[$1|elementari]] en [[$2|$3]].",
"babel-2": "Aqueste utilizaire a una coneissença [[$1|mejana]] en [[$2|$3]].",
diff --git a/MLEB/Babel/i18n/or.json b/MLEB/Babel/i18n/or.json
index 55afc715..93faafb9 100644
--- a/MLEB/Babel/i18n/or.json
+++ b/MLEB/Babel/i18n/or.json
@@ -11,7 +11,6 @@
"babel-desc": "ଆପେଆପେ ବାବେଲ ଇଉଜରବକ୍ସ ସ୍ତମ୍ଭ ତିଆରିବା ନିମନ୍ତେ <code>#babel</code> ପାର୍ସର କାମଟି ଯୋଡ଼ିଥାଏ ଯେଉଁଥିରେ ନିଜେ ଛାଞ୍ଚ ସବୁ ତିଆରି କରି ଖଞ୍ଜିବା ସୁବିଧା ଥାଏ",
"babel-url": "Project:ବାବେଲ",
"babel-footer-url": ":ଶ୍ରେଣୀ:ବାବେଲ - ଭାଷା ଅନୁସାରେ ଇଉଜର",
- "babel-autocreate-abort": "ଆପଣ ଦେଇଥିବା ଇଉଜର ନାମଟି [[$1|ବାବେଲ]] ଶ୍ରେଣୀ ପାଇଁ ବ୍ୟବହାର କରାଯାଇଛି ଓ ଆଉଥରେ ତିଆରି କରାଯାଇପାରିବ ନାହିଁ ।",
"babel-autocreate-reason": "ଆପେଆପେ [[$1|Babel]] ଶ୍ରେଣୀଟିଏ ତିଆରି କରୁଅଛୁଁ ।",
"babel-autocreate-text-levels": "ଏହି ଶ୍ରେଣୀରେ ଥିବା ସଭ୍ୟମାନେ $2 ଭାଷାରେ $1 ନିପୁଣ ।",
"babel-autocreate-text-main": "ଏହି ଶ୍ରେଣୀରେ ଥିବା ସଭ୍ୟମାନେ $1 ଭାଷା ଜାଣିଛନ୍ତି ବୋଲି ଜଣାଇଅଛନ୍ତି ।",
@@ -22,12 +21,12 @@
"babel-4": "ଏହି ଇଉଜର [[$2|$3]] ଭାଷା ତାହାର [[$1|ମୁଳ ଲୋକଙ୍କ]] ଭଳି ଜାଣନ୍ତି ।",
"babel-5": "ଏହି ସଭ୍ୟ [[$2|$3]] ଭାଷା [[$1|ଭଲ ଭାବରେ]] ଜାଣନ୍ତି ।",
"babel-N": "ଏହି ବ୍ୟବହାରକାରିଙ୍କ [[$1|ନିଜ ଭାଷା]] ହେଲା [[$2|$3]] ।",
- "babel-0-n": "ଏହି ସଭ୍ୟ [[$2|ଇଂରାଜି]] ଜମାରୁ [[$1|ବୁଝନ୍ତି ନାହିଁ]] ବା ଟିକେ ଟିକେ ବୁଝିପାରନ୍ତି ।",
- "babel-1-n": "ଏହି ସଭ୍ୟଙ୍କୁଙ୍କୁ [[$2|ଇଂରାଜୀ]] ଭାଷା [[$1|ଅଳ୍ପ]] ଜଣାଅଛି ।",
- "babel-2-n": "ଏହି ଇଉଜର [[$2|ଇଂରାଜି]] ଭାଷା [[$1|ଚଳିବା ଭଳି]] ଜାଣନ୍ତି ।",
- "babel-3-n": "ଏହି ଇଉଜର [[$2|ଇଂରାଜି]] ଭାଷା [[$1|ଭଲକରି]] ଜାଣନ୍ତି ।",
- "babel-4-n": "ଏହି ଇଉଜର [[$2|ଇଂରାଜି]] ଭାଷା ତାହାର [[$1|ମୁଳ ଲୋକଙ୍କ]] ଭଳି ଜାଣନ୍ତି ।",
- "babel-5-n": "ଏହି ସଭ୍ୟଙ୍କୁ [[$2|ଇଂରାଜୀ]] ଭାଷା [[$1|ଭଲ ଭାବରେ]] ଜଣାଅଛି ।",
- "babel-N-n": "ଏହି ବ୍ୟବହାରକାରିଙ୍କ [[$1|ନିଜ]] ଭାଷା ହେଲା [[$2|ଓଡ଼ିଆ]]।",
+ "babel-0-n": "ଏହି ସଭ୍ୟ [[$2|ଓଡ଼ିଆ]] ଜମାରୁ [[$1|ବୁଝନ୍ତି ନାହିଁ]] ବା ଟିକେ ଟିକେ ବୁଝିପାରନ୍ତି ।",
+ "babel-1-n": "ଏହି ବ୍ୟବହାରକାରୀଙ୍କୁ [[$2|ଓଡ଼ିଆ]] ଭାଷା [[$1|ଅଳ୍ପ]] ଜଣାଅଛି ।",
+ "babel-2-n": "ଏହି ବ୍ୟବହାରକାରୀ [[$2|ଓଡ଼ିଆ]] ଭାଷା [[$1|ଚଳିବା ଭଳି]] ଜାଣନ୍ତି ।",
+ "babel-3-n": "ଏହି ବ୍ୟବହାରକାରୀ [[$2|ଓଡ଼ିଆ]] ଭାଷା [[$1|ଭଲକରି]] ଜାଣନ୍ତି ।",
+ "babel-4-n": "ଏହି ବ୍ୟବହାରକାରୀ [[$2|ଓଡ଼ିଆ]] ଭାଷା ତାହାର [[$1|ମୂଳ ଲୋକଙ୍କ]] ଭଳି ଜାଣନ୍ତି ।",
+ "babel-5-n": "ଏହି ବ୍ୟବହାରକାରୀଙ୍କୁ [[$2|ଓଡ଼ିଆ]] ଭାଷା [[$1|ଭଲ ଭାବରେ]] ଜଣାଅଛି ।",
+ "babel-N-n": "ଏହି ବ୍ୟବହାରକାରୀଙ୍କ [[$1|ମାତୃଭାଷା]] ହେଲା [[$2|ଓଡ଼ିଆ]]।",
"babel-footer": "ଭାଷା ଅନୁସାରେ ସଭ୍ୟ"
}
diff --git a/MLEB/Babel/i18n/os.json b/MLEB/Babel/i18n/os.json
index 5a989595..ab0ed4fe 100644
--- a/MLEB/Babel/i18n/os.json
+++ b/MLEB/Babel/i18n/os.json
@@ -9,7 +9,6 @@
"babel-desc": "Æфтауы <code>#babel</code> парсер функци, цæмæй æвзæгты тыххæй къæрт йæхæдæг æвзæра, æндæр шаблонтæ иукæныны фадатимæ.",
"babel-url": "Project:Вавилон",
"babel-footer-url": ":Category:Вавилон - архайджытæ, æвзæгтæм гæсгæ",
- "babel-autocreate-abort": "Ды цы фæсномыг бацамыдтай, уый [[$1|Вавилоны]] категорийы хæдарæзтæн у, æмæ йæ нæй гæнæн срегистраци кæнын.",
"babel-autocreate-reason": "[[$1|Вавилоны]] категорийы фарсы хæдарæзт.",
"babel-autocreate-text-levels": "Ацы категорийы архайджытæ амонынц сæ $2 æвзаг $1-мæ кæй зонынц, уый.",
"babel-autocreate-text-main": "Ацы категорийы архайджытæ амонынц $1 æвзаг кæй зонынц, уый.",
diff --git a/MLEB/Babel/i18n/pa.json b/MLEB/Babel/i18n/pa.json
index 88279eef..673b7a52 100644
--- a/MLEB/Babel/i18n/pa.json
+++ b/MLEB/Babel/i18n/pa.json
@@ -12,7 +12,6 @@
"babel-desc": "<code>#babel</code> ਪਾਰਸਰ ਫੰਕਸ਼ਨ ਜੋੜਨ ਨਾਲ ਬਬੇਲ ਯੂਜ਼ਰ-ਬਾਕਸ ਕਾਲਮ ਵਿੱਚ ਪਸੰਦੀਦਾ ਟੈਪਲੇਟ ਦੀ ਸਮੱਰਥਾ ਤਿਆਰ ਕਰਨ ਲਈ ਸਹਾਇਕ ਹੈ",
"babel-url": "Project:ਬਬੇਲ",
"babel-footer-url": ":Category:ਬੈਬਲ - ਬੋਲੀ ਮੁਤਾਬਕ ਵਰਤੋਂਕਾਰ",
- "babel-autocreate-abort": "ਤੁਹਾਡੇ ਵਲੋਂ ਦਿੱਤਾ ਵਰਤੋਂਕਾਰ-ਨਾਂ [[$1|ਬੈਬਲ]] ਵਰਗ ਦੀ ਸਵੈ-ਉਸਾਰੀ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ ਅਤੇ ਲੇਖਬੱਧ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਦਾ।",
"babel-autocreate-reason": "ਆਟਮੋਟਿਕ ਹੀ [[$1|Babel]] ਕੈਟਾਗਰੀ ਪੇਜ਼ ਬਣਾਓ।",
"babel-autocreate-text-levels": "ਇਹ ਵਰਗ ਦੇ ਵਰਤੋਂਕਾਰ ਦਰਸਾਉਂਦੇ ਹਨ ਕਿ ਉਹਨਾਂ ਕੋਲ $2 ਬੋਲੀ ਵਾਸਤੇ $1 ਪੱਧਰ ਦਾ ਤਜਰਬਾ ਹੈ।",
"babel-autocreate-text-main": "ਇਸ ਵਰਗ ਦੇ ਵਰਤੋਂਕਾਰ ਦਰਸਾਉਂਦੇ ਹਨ ਕਿ ਉਹਨਾਂ ਕੋਲ $1 ਬੋਲੀ ਦਾ ਗਿਆਨ ਹੈ।",
@@ -29,6 +28,6 @@
"babel-3-n": "ਇਹ ਯੂਜ਼ਰ ਨੂੰ [[$2|ਪੰਜਾਬੀ]] ਦਾ [[$1|ਮਾਹਿਰ]] ਗਿਆਨ ਹੈ।",
"babel-4-n": "ਇਸ ਵਰਤੋਂਕਾਰ ਕੋਲ਼ [[$2|ਪੰਜਾਬੀ]] ਦਾ [[$1|ਲਗਭਗ ਮੂਲ ਬੁਲਾਰਾ]] ਹੋਣ ਦਾ ਗਿਆਨ ਹੈ।",
"babel-5-n": "ਇਸ ਵਰਤੋਂਕਾਰ ਕੋਲ਼ [[$2|ਪੰਜਾਬੀ]] ਦਾ [[$1|ਪੇਸ਼ੇਵਰ]] ਗਿਆਨ ਹੈ।",
- "babel-N-n": "[[$2|ਪੰਜਾਬੀ]] ਇਸ ਮੈਂਬਰ ਦੀ [[$1|ਮਾਂ ਭਾਸ਼ਾ]] ਹੈ।",
+ "babel-N-n": "[[$2|ਪੰਜਾਬੀ]] ਇਸ ਮੈਂਬਰ ਦੀ [[$1|ਮਾਂ ਬੋਲੀ]] ਹੈ।",
"babel-footer": "ਬੋਲੀ ਮੁਤਾਬਕ ਵਰਤੋਂਕਾਰ"
}
diff --git a/MLEB/Babel/i18n/pcd.json b/MLEB/Babel/i18n/pcd.json
index 1b1fa56f..d52c0f96 100644
--- a/MLEB/Babel/i18n/pcd.json
+++ b/MLEB/Babel/i18n/pcd.json
@@ -9,7 +9,6 @@
"babel-desc": "Érquértche el foncchon \"analise <code>#babel</code>\" pou avoèr el généracion d'eune colonne \"uzeu-boète babel\" aveuc el pochibilité éd mètte chés modèles pérsonèls",
"babel-url": "Project:Babel",
"babel-footer-url": ":Catégorie:Uzeus pèr langue",
- "babel-autocreate-abort": "Ech nom d'uzeu avinché est imploéïé pou el oeto-créachon del catégorie [[$1|Babel]] don i n'put poin éte inrégistré.",
"babel-autocreate-reason": "Pache éd créachon oetomatike del catégorie [[$1|Babel]].",
"babel-autocreate-text-levels": "Ches uzeus din l'catégorie-lo, is déloufette qu'is ont un nivieu avinché $1 din l'langue $2.",
"babel-autocreate-text-main": "Chés uzeus din l'catégorie-lo, is déloufette qu'is bavette din l'langue $1.",
diff --git a/MLEB/Babel/i18n/pdc.json b/MLEB/Babel/i18n/pdc.json
index a820ebfd..d35a48b7 100644
--- a/MLEB/Babel/i18n/pdc.json
+++ b/MLEB/Babel/i18n/pdc.json
@@ -8,7 +8,6 @@
"babel-desc": "Ennert die <code>#babel</code>-Parserfunktion fer zum automatische Aalege vun Babel-Yuuserbox-Columns damit eigene Vorlage dezu ze duh meeglich sinn",
"babel-url": "Project:Babel",
"babel-footer-url": ":Category:Benutzer natt Schprooche",
- "babel-autocreate-abort": "De Yuuser-Name, wu Du gewaehlt hoscht, werd geyuust fer es automatisch Aalege vun [[$1|Babel]]-Abdeelinge unn kann net regischtriert werre.",
"babel-autocreate-reason": "Automatisch aagelegte [[$1|Babel]]-Abdeeling.",
"babel-autocreate-text-levels": "Yuuser in derre Abdeeling henn Kenntnis-Level $1 fer die Sprooch $2.",
"babel-autocreate-text-main": "Yuuser in derre Abdeeling schwetze $1.",
diff --git a/MLEB/Babel/i18n/pfl.json b/MLEB/Babel/i18n/pfl.json
index 56ba1465..c445d0dd 100644
--- a/MLEB/Babel/i18n/pfl.json
+++ b/MLEB/Babel/i18n/pfl.json
@@ -9,7 +9,6 @@
"babel-desc": "Fieschd die <code>#babel</code>-Parserfunktion fas audomadische Oaleesche vun Babel-B'nudzakäschdel-Zaile dzu, mide Meschlischkaid, aischini Vorlache oizbinne",
"babel-url": "Project:Babel",
"babel-footer-url": ":Category:Babel - Bnudza noch Schbrooch",
- "babel-autocreate-abort": "De Bnudzanoame, wu'd g'wehld hoschd, wead fas audomadische Oalesche vun [[$1|Babel]]-Kadegorije gbrauchd un konn ned regischdriad werre.",
"babel-autocreate-reason": "Audomadisch oagleschdi [[$1|Babel]]-Kadegorije.",
"babel-autocreate-text-levels": "Bnudza inde Kadegorie hawen Fehjischkaide $1 fa die Schbrooch $2.",
"babel-autocreate-text-main": "Bnudza in de Kadegorie hawen Wisse vunde Schbrooch $1.",
diff --git a/MLEB/Babel/i18n/pl.json b/MLEB/Babel/i18n/pl.json
index 7752f9f7..a55fe77f 100644
--- a/MLEB/Babel/i18n/pl.json
+++ b/MLEB/Babel/i18n/pl.json
@@ -3,14 +3,15 @@
"authors": [
"Karol007",
"Sp5uhe",
- "Ymar"
+ "Ymar",
+ "Woytecr",
+ "InternerowyGołąb"
]
},
"babel": "Wieża Babel użytkownika",
"babel-desc": "Dodaje funkcję parsera <code>#babel</code> ułatwiającą tworzenie ramki informującej o językowych lub innych umiejętnościach użytkownika",
"babel-url": "Project:Wieża Babel",
"babel-footer-url": ":Category:Babel",
- "babel-autocreate-abort": "Wybrana nazwa użytkownika jest wykorzystywana do automatycznego tworzenia kategorii [[$1|wieży Babel]] i nie może zostać zarejestrowana.",
"babel-autocreate-reason": "Strona automatycznie utworzonej kategorii [[$1|wieży Babel]].",
"babel-autocreate-text-levels": "Użytkownicy znajdujący się w tej kategorii deklarują znajomość języka $2 na poziomie $1.",
"babel-autocreate-text-main": "Użytkownicy znajdujący się w tej kategorii deklarują znajomość języka $1.",
@@ -28,5 +29,9 @@
"babel-4-n": "{{GENDER:$4|Ten użytkownik|Ta użytkowniczka}} posługuje się [[$2|językiem polskim]] prawie tak samo biegle, jak [[$1|językiem ojczystym]].",
"babel-5-n": "{{GENDER:$4|Ten użytkownik|Ta użytkowniczka}} posługuje się [[$2|językiem polskim]] na równi z [[$1|językiem ojczystym]].",
"babel-N-n": "[[$2|Polski]] jest [[$1|językiem ojczystym]] {{GENDER:$4|tego użytkownika|tej użytkowniczki}}.",
- "babel-footer": "Użytkownicy według języka"
+ "babel-footer": "Użytkownicy według języka",
+ "apihelp-query+babel-description": "Pobiera informacje o tym, jakie użytkownik zna języki",
+ "apihelp-query+babel-summary": "Uzyskaj informacje o językach, które zna użytkownik",
+ "apihelp-query+babel-param-user": "Użytkownik, o którym pobrać informacje",
+ "apihelp-query+babel-example-1": "Pobranie informacji Babel dla użytkownika <kbd>Example</kbd>"
}
diff --git a/MLEB/Babel/i18n/pms.json b/MLEB/Babel/i18n/pms.json
index 79f5bac2..8dc2970d 100644
--- a/MLEB/Babel/i18n/pms.json
+++ b/MLEB/Babel/i18n/pms.json
@@ -9,7 +9,6 @@
"babel-desc": "A gionta la parser function <code>#babel</code> për përmëtte la generassion automàtica ëd na colòna babel userbox con la possibilità d'anserì djë stamp përsonalisà",
"babel-url": "Project:Babel",
"babel-footer-url": ":Category:Babel - Utent për lenga",
- "babel-autocreate-abort": "Lë stranòm ch'it l'has spessificà a l'é dovrà për l'auto-creassion ëd categorìe [[$1|Babel]] e a peul nen esse registrà.",
"babel-autocreate-reason": "Creassion automàtica dla pàgina dla categorìa [[$1|Babel]].",
"babel-autocreate-text-levels": "J'utent an sta categorìa-sì a mosto che a l'han un livel ëd conossensa $1 dla lenga $2.",
"babel-autocreate-text-main": "J'utent an sta categorìa-sì a mosto che a conosso la lenga $1.",
diff --git a/MLEB/Babel/i18n/pnb.json b/MLEB/Babel/i18n/pnb.json
index 5a0fbe45..57e75f1c 100644
--- a/MLEB/Babel/i18n/pnb.json
+++ b/MLEB/Babel/i18n/pnb.json
@@ -1,30 +1,31 @@
{
"@metadata": {
"authors": [
- "Khalid Mahmood"
+ "Khalid Mahmood",
+ "عرفان ارشد",
+ "Abbas dhothar"
]
},
"babel": "بابل ورتن والے بارے",
"babel-desc": "<code>#babel</code>جوڑو پارسر فنکشن بابل ورتن ڈبہ کالم کسٹم ٹمپلیٹ دی اسانی نال",
"babel-url": "ویونت: بابل",
"babel-footer-url": "گٹھ: بابل - بولی نال ورتن والے",
- "babel-autocreate-abort": "ورتن ناں جیہڑا تےاں دسیا اے اوہ [[$1|بابل]] گٹھ آپ بنان لئی ورتیا جاندا اے تے رجسٹر نئیں ہوسکدا۔",
"babel-autocreate-reason": "اپنے آپ ای [[$1|بابل]] گٹھ صفحہ بنایا جاریا اے۔",
"babel-autocreate-text-levels": "اس گٹھ چ مجود ورتن آلے $2 بولی دے بارے چ $1 بوتا جاندے نیں۔",
"babel-autocreate-text-main": "اس گٹھ چ مجود ورتن آلے $1 بولی دے بارے چ جاندے نیں۔",
"babel-0": "اے ورتن آلا [[$2|$3]] نوں [[$1|نئیں]] جاندا (یا اینوں مشکل نال سمجدا اے)۔",
- "babel-1": "اے ورتن آلا [[$2|$3]] دے بارے چ [[$1|پدری]] جانکاری رکھدا اے۔",
- "babel-2": "اے ورتن آلا [[$2|$3]] دے بارے چ [[$1|درمیانی]] جانکاری رکھدا اے۔",
- "babel-3": "اے ورتن آلا [[$2|$3]] دے بارے چ [[$1|چوکھی]] جانکاری رکھدا اے۔",
- "babel-4": "اے ورتن آلا [[$2|$3]] دے بارے چ [[$1|چنگی پلی]] جانکاری رکھدا اے۔",
- "babel-5": "اے ورتن آلا [[$2|$3]] دے بارے چ [[$1|پروفشنل]] جانکاری رکھدا اے۔",
- "babel-N": "اے ورتن آلا [[$2|$3]] دے بارے چ [[$1|ماں بولی]] جڈی جانکاری رکھدا اے۔",
- "babel-0-n": "اے ورتن آلا [[$2|انگریزی]] نوں [[$1|نئیں]] جاندا (یا اینوں مشکل نال سمجدا اے)۔",
- "babel-1-n": "اے ورتن آلا [[$2|انگریزی]] دے بارے چ [[$1|پدری]] جانکاری رکھدا اے۔",
- "babel-2-n": "اے ورتن آلا [[$2|انگریزی]] دے بارے چ [[$1|درمیانی]] جانکاری رکھدا اے۔",
- "babel-3-n": "اے ورتن آلا [[$2|انگریزی]] دے بارے چ [[$1|چوکھی]] جانکاری رکھدا اے۔",
- "babel-4-n": "اے ورتن آلا [[$2|انگریزی]] دے بارے چ [[$1|چنگی پلی]] جانکاری رکھدا اے۔",
- "babel-5-n": "اے ورتن آلا [[$2|انگریزی]] دے بارے چ [[$1|پروفشنل]] جانکاری رکھدا اے۔",
- "babel-N-n": "اے ورتن آلا [[$2|انگریزی]] دے بارے چ [[$1|ماں بولی]] جڈی جانکاری رکھدا اے۔",
- "babel-footer": "بولی سعاب نال ورتن والے"
+ "babel-1": "اے ورتنوالا [[$2|$3]] دے بارے وچ [[$1|بنیادی]] جانکاری رکھدا اے۔",
+ "babel-2": "ایہ ورتنوالا [[$2|$3]] دے بارے وچ [[$1|درمیانی]] جانکاری رکھدا اے۔",
+ "babel-3": "ایہ ورتنوالا [[$2|$3]] دے بارے وچ [[$1|چوکھی]] جانکاری رکھدا اے۔",
+ "babel-4": "ایہ ورتنوالا [[$2|$3]] دے بارے وچ [[$1|چنگی بھلی]] جانکاری رکھدا اے۔",
+ "babel-5": "ایہ ورتنوالا [[$2|$3]] دے بارے وچ [[$1|پروفشنل]] جانکاری رکھدا اے۔",
+ "babel-N": "ایہ ورتنوالا [[$2|$3]] دے بارے وچ [[$1|ماں بولی]] جڈی جانکاری رکھدا اے۔",
+ "babel-0-n": "ایہ ورتنوالا [[$2|پنجابی]] نوں [[$1|نئیں]] جاندا (یا اینوں مشکل نال سمجھدا اے)۔",
+ "babel-1-n": "اے ورتن آلا [[$2|پنجابی]] دے بارے چ [[$1|پدری]] جانکاری رکھدا اے۔",
+ "babel-2-n": "اے ورتن آلا [[$2|پنجابی]] دے بارے چ [[$1|درمیانی]] جانکاری رکھدا اے۔",
+ "babel-3-n": "اے ورتن آلا [[$2|پنجابی]] دے بارے چ [[$1|چوکھی]] جانکاری رکھدا اے۔",
+ "babel-4-n": "اے ورتن آلا [[$2|پنجابی]] دے بارے چ [[$1|چنگی پلی]] جانکاری رکھدا اے۔",
+ "babel-5-n": "اے ورتن آلا [[$2|پنجابی]] دے بارے چ [[$1|پروفشنل]] جانکاری رکھدا اے۔",
+ "babel-N-n": "اے ورتن آلا [[$2|پنجابی]] دے بارے چ [[$1|ماں بولی]] جڈی جانکاری رکھدا اے۔",
+ "babel-footer": "بولی حساب نال ورتن والے"
}
diff --git a/MLEB/Babel/i18n/pnt.json b/MLEB/Babel/i18n/pnt.json
index 909c8945..2ab4417c 100644
--- a/MLEB/Babel/i18n/pnt.json
+++ b/MLEB/Babel/i18n/pnt.json
@@ -11,7 +11,6 @@
"babel": "Πληροφορίας Βαβέλ τη χρήστε",
"babel-desc": "Προστέτει την <code>#babel</code> λεξιαναλυτικήν λειτουργίαν ας αφήκει την αυτόματην παραγωγήν στήλης βαβέλ με την δυνατότηταν περίληψης παραγγελτών προτυπίων",
"babel-url": "Project:Βαβέλ",
- "babel-autocreate-abort": "Τ' όνεμα χρήστε π' εδώθεν εν όνεμα για την κατηγορίαν αυτόματου δημιουργίας [[$1|Βαβέλ]] και 'κ επορεί να κατοχυρωνέται.",
"babel-autocreate-reason": "Αυτόματα εγέντον η σελίδα κατηγορίας [[$1|Βαβέλ]].",
"babel-autocreate-text-levels": "Οι χρήστς ση κατηγορίαν ατή λέν' πως μιλούν την γλώσσαν $2 σ' επίπεδον $1.",
"babel-autocreate-text-main": "Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν $1.",
diff --git a/MLEB/Babel/i18n/ps.json b/MLEB/Babel/i18n/ps.json
index b9f1040a..091182ee 100644
--- a/MLEB/Babel/i18n/ps.json
+++ b/MLEB/Babel/i18n/ps.json
@@ -8,7 +8,6 @@
"babel-desc": "د <code>#babel</code> شننونکې کړنه په دې موخه ده چې په خپلسري توگه د بابل د کارنبکس ستنه رامېنځ ته کړي چېرته چې څوک خپل د خوښې کينډۍ ورټومبلی شي",
"babel-url": "Project:بابل",
"babel-footer-url": ":Category:بابل - کارنان د ژبې له مخې",
- "babel-autocreate-abort": "کوم کارن-نوم چې تاسو خوښ کړی هغه د [[$1|بابل]] د خپلسري-جوړښت وېشنيزې کې کارېږي او د ثبتولو وړ نه ده.",
"babel-autocreate-reason": "په اتوماتيک ډول د [[$1|بابل]] وېشنيزې مخ جوړوي.",
"babel-autocreate-text-levels": "د دې وېشنيزې کارنان دا څرګندوي چې دوي د $1 کچې وړتياوې د $2 ژبې په برخه کې لري.",
"babel-autocreate-text-main": "د دې وېشنيزې کارنان دا څرګندوي چې دوي د $1 په ژبه کې پوهاوی لري.",
diff --git a/MLEB/Babel/i18n/pt-br.json b/MLEB/Babel/i18n/pt-br.json
index 558e254b..f90d2a3b 100644
--- a/MLEB/Babel/i18n/pt-br.json
+++ b/MLEB/Babel/i18n/pt-br.json
@@ -4,17 +4,20 @@
"Brunoy Anastasiya Seryozhenko",
"Eduardo.mps",
"Giro720",
- "555"
+ "555",
+ "Opraco",
+ "TheEduGobi",
+ "Felipe L. Ewald"
]
},
- "babel": "Informação Babel de Usuário",
+ "babel": "Informação do usuário Babel",
"babel-desc": "Adiciona a função do analisador parser <code>#babel</code> para permitir a geração automática de um coluna de caixas de babel de um usuário coma possibilidade de incluir predefinições personalizadas",
"babel-url": "Project:Babel",
"babel-footer-url": ":Categoria:Babel - Usuários por língua",
- "babel-autocreate-abort": "O nome de usuário que especificou é usado pela criação automática de categorias [[$1|Babel]] e, por isso, não pode ser registrado.",
"babel-autocreate-reason": "Criando automaticamente a página da categoria [[$1|Babel]].",
"babel-autocreate-text-levels": "Os usuários nesta categoria indicam que possuem um nível de conhecimento $1 na língua $2.",
- "babel-autocreate-text-main": "Os usuários nesta categoria indicam que possuem conhecimentos da língua $1.",
+ "babel-autocreate-text-main": "Os usuários nesta categoria indicam que possuem conhecimento de $1.",
+ "babel-autocreate-user": "Babel AutoCreate",
"babel-0": "Este usuário [[$1|não]] têm conhecimento de [[$2|$3]] (ou compreende com dificuldades consideráveis).",
"babel-1": "Este usuário têm um [[$1|básico]] conhecimento de [[$2|$3]].",
"babel-2": "Este usuário têm um conhecimento [[$1|intermediário]] de [[$2|$3]].",
@@ -29,5 +32,10 @@
"babel-4-n": "{{GENDER:$4|Este usuário|Esta usuária}} pode contribuir com um nível [[$1|quase nativo]] de [[$2|português no dialeto brasileiro]].",
"babel-5-n": "{{GENDER:$4|Este usuário|Esta usuária}} pode contribuir com um nível [[$1|profissional]] de [[$2|português no dialeto brasileiro]].",
"babel-N-n": "{{GENDER:$4|Este usuário|Esta usuária}} tem como língua [[$1|materna]] o [[$2|dialeto brasileiro da língua portuguesa]].",
- "babel-footer": "Usuários por língua"
+ "babel-template": "Template:Usuário $1",
+ "babel-footer": "Usuários por língua",
+ "apihelp-query+babel-description": "Obter informações sobre quais línguas o(a) usuário(a) conhece",
+ "apihelp-query+babel-summary": "Obter informações sobre quais línguas o(a) usuário(a) conhece",
+ "apihelp-query+babel-param-user": "Usuário(a) do(a) qual serão obtidas as informações",
+ "apihelp-query+babel-example-1": "Obter informações do Babel sobre <kbd>Example</kbd>"
}
diff --git a/MLEB/Babel/i18n/pt.json b/MLEB/Babel/i18n/pt.json
index f7799c3b..304d196e 100644
--- a/MLEB/Babel/i18n/pt.json
+++ b/MLEB/Babel/i18n/pt.json
@@ -4,30 +4,35 @@
"Hamilton Abreu",
"Malafaya",
"Waldir",
- "555"
+ "555",
+ "Opraco",
+ "Vitorvicentevalente"
]
},
- "babel": "Informação Babel de Utilizador",
- "babel-desc": "Adiciona a função <code>#babel</code> ao analisador sintáctico, para permitir a geração automatizada de uma coluna de caixas babel com a possibilidade de incluir predefinições personalizadas",
+ "babel": "Informação Babel {{GENDER:$1|do utilizador|da utilizadora}}",
+ "babel-desc": "Adiciona a função <code>#babel</code> ao analisador sintático, para permitir a geração automatizada de uma coluna de caixas babel com a possibilidade de incluir predefinições personalizadas",
"babel-url": "Project:Babel",
"babel-footer-url": ":Categoria:Babel - Utilizadores por língua",
- "babel-autocreate-abort": "O nome de utilizador que especificou é usado pela criação automática de categorias [[$1|Babel]] e, por isso, não pode ser registado.",
"babel-autocreate-reason": "A criar automaticamente a página da categoria [[$1|Babel]].",
"babel-autocreate-text-levels": "Os utilizadores nesta categoria indicam que têm um nível de conhecimento $1 na língua $2.",
"babel-autocreate-text-main": "Os utilizadores nesta categoria indicam que têm conhecimentos da língua $1.",
"babel-0": "{{GENDER:$4|Este utilizador|Esta utilizadora}} [[$1|não compreende]] [[$2|$3]] (ou compreende com dificuldades consideráveis).",
- "babel-1": "{{GENDER:$4|Este utilizador|Esta utilizadora}} pode contribuir com um nível [[$1|básico]] de [[$2|$3]].",
- "babel-2": "{{GENDER:$4|Este utilizador|Esta utilizadora}} pode contribuir com um nível [[$1|médio]] de [[$2|$3]].",
- "babel-3": "{{GENDER:$4|Este utilizador|Esta utilizadora}} pode contribuir com um nível [[$1|avançado]] de [[$2|$3]].",
- "babel-4": "{{GENDER:$4|Este utilizador|Esta utilizadora}} pode contribuir com um nível [[$1|quase nativo]] de [[$2|$3]].",
- "babel-5": "{{GENDER:$4|Este utilizador|Esta utilizadora}} pode contribuir com um nível [[$1|profissional]] de [[$2|$3]].",
+ "babel-1": "{{GENDER:$4|Este utilizador|Esta utilizadora}} tem um nível [[$1|básico]] de [[$2|$3]].",
+ "babel-2": "{{GENDER:$4|Este utilizador|Esta utilizadora}} tem um nível [[$1|médio]] de [[$2|$3]].",
+ "babel-3": "{{GENDER:$4|Este utilizador|Esta utilizadora}} tem um nível [[$1|avançado]] de [[$2|$3]].",
+ "babel-4": "{{GENDER:$4|Este utilizador|Esta utilizadora}} tem um nível [[$1|quase nativo]] de [[$2|$3]].",
+ "babel-5": "{{GENDER:$4|Este utilizador|Esta utilizadora}} tem um nível [[$1|profissional]] de [[$2|$3]].",
"babel-N": "{{GENDER:$4|Este utilizador|Esta utilizadora}} tem como língua [[$1|materna]] o [[$2|$3]].",
"babel-0-n": "{{GENDER:$4|Este utilizador|Esta utilizadora}} [[$1|não compreende]] [[$2|português]] (ou compreende com dificuldades consideráveis).",
- "babel-1-n": "{{GENDER:$4|Este utilizador|Esta utilizadora}} pode contribuir com um nível [[$1|básico]] de [[$2|português]].",
- "babel-2-n": "{{GENDER:$4|Este utilizador|Esta utilizadora}} pode contribuir com um nível [[$1|médio]] de [[$2|português]].",
- "babel-3-n": "{{GENDER:$4|Este utilizador|Esta utilizadora}} pode contribuir com um nível [[$1|avançado]] de [[$2|português]].",
- "babel-4-n": "{{GENDER:$4|Este utilizador|Esta utilizadora}} pode contribuir com um nível [[$1|quase nativo]] de [[$2|português]].",
- "babel-5-n": "{{GENDER:$4|Este utilizador|Esta utilizadora}} pode contribuir com um nível [[$1|profissional]] de [[$2|português]].",
+ "babel-1-n": "{{GENDER:$4|Este utilizador|Esta utilizadora}} tem um nível [[$1|básico]] de [[$2|português]].",
+ "babel-2-n": "{{GENDER:$4|Este utilizador|Esta utilizadora}} tem um nível [[$1|médio]] de [[$2|português]].",
+ "babel-3-n": "{{GENDER:$4|Este utilizador|Esta utilizadora}} tem um nível [[$1|avançado]] de [[$2|português]].",
+ "babel-4-n": "{{GENDER:$4|Este utilizador|Esta utilizadora}} tem um nível [[$1|quase nativo]] de [[$2|português]].",
+ "babel-5-n": "{{GENDER:$4|Este utilizador|Esta utilizadora}} tem um nível [[$1|profissional]] de [[$2|português]].",
"babel-N-n": "{{GENDER:$4|Este utilizador|Esta utilizadora}} tem como língua [[$1|materna]] o [[$2|português]].",
- "babel-footer": "Utilizadores por língua"
+ "babel-footer": "Utilizadores por língua",
+ "apihelp-query+babel-description": "Obter informação sobre as línguas que o utilizador conhece",
+ "apihelp-query+babel-summary": "Obter informação sobre as línguas que o utilizador conhece",
+ "apihelp-query+babel-param-user": "O utilizador sobre o qual a informação será recolhida",
+ "apihelp-query+babel-example-1": "Obter a informação Babel para o utilizador <kbd>Example</kbd>"
}
diff --git a/MLEB/Babel/i18n/qqq.json b/MLEB/Babel/i18n/qqq.json
index f3548dc4..a099e5e4 100644
--- a/MLEB/Babel/i18n/qqq.json
+++ b/MLEB/Babel/i18n/qqq.json
@@ -12,7 +12,8 @@
"Shirayuki",
"Siebrand",
"The Evil IP address",
- "Umherirrender"
+ "Umherirrender",
+ "KartikMistry"
]
},
"babel": "Header of Babel box. Parameters:\n* $1 - (Optional) the name of the page it is used on, for GENDER support",
@@ -21,7 +22,7 @@
"babel-footer-url": "Unless this message is empty, this is used as link target in the last entry,\nalso known as the footer, of the outer Babel-box,\nprovided that the installation chooses to have a footer.\nThe corresponding link anchor is the message [[MediaWiki:babel-footer/{{UILANGCODE}}|babel-footer]] {{msg-mw|Babel-footer|notext=}}.\n\nFor installations having a 'Babel users per language' category tree, its root should be entered here.\nWhen translating, you can copy the category name from existing Babel systems in your language, but you can as well use a more generic name and leave it to individual installations, how to deal with it.\n\nThere is no need to alter the name space name <code lang=\"en\">Category</code>.",
"babel-autocreate-reason": "Edit summary for an automatically created Babel category page. Parameters:\n* $1 is a page title for information on Babel.",
"babel-autocreate-text-levels": "Text describing a category, at the top of the category page.\n\n* $1 is the level (0 to 5, or N).\n* $2 is a language name.\n* $3 is a language code (optional; for customisation).",
- "babel-autocreate-text-main": "Text describing a category, at the top of the category page.\n\n* $1 is a language name.\n* $2 is a language code (optional; for customisation).",
+ "babel-autocreate-text-main": "Text describing a category, at the top of the category page.\n\n* $1 is a language name.",
"babel-autocreate-user": "{{optional}}",
"babel-0": "{{Babel Message Description|0}}",
"babel-1": "{{Babel Message Description|1}}",
@@ -37,11 +38,11 @@
"babel-4-n": "{{Babel Message Description|4|native=yes}}",
"babel-5-n": "{{Babel Message Description|5|native=yes}}",
"babel-N-n": "{{Babel Message Description|N|native=yes}}",
- "babel-box-cellspacing": "{{notranslate}}\nInserted as the value of the <code>cellspacing</code> attribute in the HTML table of the outer box.",
- "babel-box-cellpadding": "{{notranslate}}\nInserted as the value of the <code>cellpadding</code> attribute in the HTML table of the outer box.",
- "babel-cellspacing": "{{notranslate}}\nInserted as the value of the <code>cellspacing</code> attribute in the HTML tables of the inner boxes.",
- "babel-cellpadding": "{{notranslate}}\nInserted as the value of the <code>cellpadding</code> attribute in the HTML tables of the inner boxes.",
"babel-portal": "{{notranslate}}",
"babel-template": "{{Optional}}{{doc-important|Do not translate \"Template:\".}}\nThis message contains the template schema for additional templates that can be used in Babel. Parameters:\n* $1 is the parameter value used in the <nowiki>#babel</nowiki> parser tag.",
- "babel-footer": "This text is used in the last entry (footer) of the outer box. It is a link anchor, if {{msg-mw|babel-footer-url}} is not empty, otherwise, it is only text. No footer is generated, when this text is empty."
+ "babel-footer": "This text is used in the last entry (footer) of the outer box. It is a link anchor, if {{msg-mw|babel-footer-url}} is not empty, otherwise, it is only text. No footer is generated, when this text is empty.",
+ "apihelp-query+babel-description": "{{doc-apihelp-description|query+babel}}",
+ "apihelp-query+babel-summary": "{{doc-apihelp-summary|query+babel}}",
+ "apihelp-query+babel-param-user": "{{doc-apihelp-param|query+babel|user}}",
+ "apihelp-query+babel-example-1": "{{doc-apihelp-example|query+babel}}"
}
diff --git a/MLEB/Babel/i18n/qu.json b/MLEB/Babel/i18n/qu.json
index 5d7d8776..862aeefc 100644
--- a/MLEB/Babel/i18n/qu.json
+++ b/MLEB/Babel/i18n/qu.json
@@ -8,7 +8,6 @@
"babel-desc": "<code>#babel</code> k'uskina antachatam yapan ruraqpa babel t'asranpi wachu kikinmanta kamariyta saqillanapaq kikinchasqa plantillakunata ch'aqtana atichinapaqpas",
"babel-url": "Project:Babel",
"babel-footer-url": ":Category:Babel - Ruraqkuna rimayninkama",
- "babel-autocreate-abort": "Nisqayki ruraqpa sutinqa [[$1|Babel]] nisqapaq kikinmanta katiguriya kamarinapaq llamk'aptinmi manam kamariyta atinkichu.",
"babel-autocreate-reason": "Kikinmanta kamarispa [[$1|Babel]] katiguriya p'anqata.",
"babel-autocreate-text-levels": "Kay katiguriyapi ruraqkunaqa $2 nisqatam $1 yachaywan rimanku nisqankama.",
"babel-autocreate-text-main": "Kay katiguriyapi ruraqkunaqa $1 nisqatam rimanku nisqankama.",
diff --git a/MLEB/Babel/i18n/rgn.json b/MLEB/Babel/i18n/rgn.json
index 7d520049..9da4ec28 100644
--- a/MLEB/Babel/i18n/rgn.json
+++ b/MLEB/Babel/i18n/rgn.json
@@ -8,7 +8,6 @@
"babel": "Babel d'e' navigador",
"babel-desc": "Chèrga so la 'funziòn parser' <code>#babel</code> par fè in mod che tòt i navigadur j épa e su schema Babel, acsè e' po mett dentar dj 'template'.",
"babel-url": "Prugèt:Babel",
- "babel-autocreate-abort": "E' soranòm ch'te mess e' serv par la creaziòn automàtica dal categurej [[$1|Babel]] e anciòn u l' po druvè.",
"babel-autocreate-reason": "Creaziòn automàtica dla pàgina dla categurèja [[$1|Babel]].",
"babel-autocreate-text-levels": "Al persôn in sta categurèja j à la capacitè $1 d'savé la lèngua $2.",
"babel-autocreate-text-main": "Al parsôn in sta categurèja j fà vdè ch'j cnòs la lèngua $1.",
diff --git a/MLEB/Babel/i18n/rm.json b/MLEB/Babel/i18n/rm.json
index ced76408..46f7eb47 100644
--- a/MLEB/Babel/i18n/rm.json
+++ b/MLEB/Babel/i18n/rm.json
@@ -9,7 +9,6 @@
"babel-desc": "Agiunta la funcziun da generar automaticamain ina chascha cun las indicaziuns da babel davart l'utilisader e che pussibilitescha d'includer agens templates.",
"babel-url": "Project:Babel",
"babel-footer-url": ":Category:Babel - Utilisaders tenor lingua",
- "babel-autocreate-abort": "Il num d'utilisader tschernì vegn utilisà per la creaziun automatica da categorias da [[$1|Babel]] e na po betg vegnir registrà.",
"babel-autocreate-reason": "Categoria da [[$1|Babel]] creada automaticamain.",
"babel-autocreate-text-levels": "Ils utilisaders en questa categoria han inditgà il nivel $1 per la lingua $2.",
"babel-autocreate-text-main": "Utilisaders en questa categoria han conuschientscha da la lingua $1.",
diff --git a/MLEB/Babel/i18n/ro.json b/MLEB/Babel/i18n/ro.json
index 162ff474..2f49ae7c 100644
--- a/MLEB/Babel/i18n/ro.json
+++ b/MLEB/Babel/i18n/ro.json
@@ -4,17 +4,17 @@
"Cin",
"Firilacroco",
"KlaudiuMihaila",
- "Minisarm"
+ "Minisarm",
+ "Strainu"
]
},
"babel": "Informații Babel despre utilizator",
"babel-desc": "Adaugă funcția de parsare <code>#babel</code> pentru generarea automată a coloanei de cutii de utilizator babel, cu posibilitatea de a include formate personalizate",
"babel-url": "Project:Babel",
"babel-footer-url": ":Categorie:Babel - Utilizatori după limbă",
- "babel-autocreate-abort": "Numele de utilizator specificat este folosit pentru crearea automată a categoriilor [[$1|Babel]] și nu poate fi înregistrat.",
"babel-autocreate-reason": "Crearea automată a categoriei [[$1|Babel]].",
"babel-autocreate-text-levels": "Utilizatorii din această categorie cunosc limba $2 la nivelul $1.",
- "babel-autocreate-text-main": "Utilizatorii din această categorie cunosc limba $1.",
+ "babel-autocreate-text-main": "Utilizatorii din această categorie cunosc limba $1.",
"babel-0": "Acest utilizator [[$1|nu]] are cunoștințe de [[$2|$3]] (sau înțelege cu mare dificultate).",
"babel-1": "Acest utilizator poate contribui cu un nivel [[$1|de bază]] de [[$2|$3]].",
"babel-2": "Acest utilizator poate contribui cu un nivel [[$1|intermediar]] de [[$2|$3]].",
@@ -29,5 +29,9 @@
"babel-4-n": "Acest utilizator poate contribui cu un nivel [[$1|aproape nativ]] de [[$2|română]].",
"babel-5-n": "Acest utilizator contribuie folosind un nivel [[$1|profesional]] de [[$2|română]].",
"babel-N-n": "Acest utilizator este un vorbitor [[$1|nativ]] al [[$2|limbii române]].",
- "babel-footer": "Utilizatori după limbă"
+ "babel-footer": "Utilizatori după limbă",
+ "apihelp-query+babel-description": "Obține informații despre limbile cunoscute de utilizator",
+ "apihelp-query+babel-summary": "Obține informații despre limbile cunoscute de utilizator",
+ "apihelp-query+babel-param-user": "Utilizatorul despre care să se obțină informații",
+ "apihelp-query+babel-example-1": "Obțineți informații Babel pentru utilizatorul <kbd>Exemplu</kbd>"
}
diff --git a/MLEB/Babel/i18n/roa-tara.json b/MLEB/Babel/i18n/roa-tara.json
index 7d7bccfa..f9d1b0c1 100644
--- a/MLEB/Babel/i18n/roa-tara.json
+++ b/MLEB/Babel/i18n/roa-tara.json
@@ -9,10 +9,9 @@
"babel-desc": "Aggiunge 'a funzione de analise <code>#babel</code> pe permettere 'a generazione automatezzate de 'na culonne babel cu 'a possibbeletà de 'ngludere template personalizzare",
"babel-url": "Project:Babel",
"babel-footer-url": ":Category:Babel - Utinde pe lènghe",
- "babel-autocreate-abort": "'U nome de l'utende ca tu è specificate jè ausate pa categorije de auto ccrejazione de [[$1|Babel]] e non ge pò essere reggistrate.",
"babel-autocreate-reason": "Stoche a ccreje automatecamende 'a pàgene de categorije [[$1|Babel]].",
"babel-autocreate-text-levels": "L'utinde jndr'à sta categorije indichescene ca lore onne 'nu levèlle $1 pa lènghe $2.",
- "babel-autocreate-text-main": "L'utinde jndr'à sta categorije indichescene ca onne 'na canoscenze d'a lènghe $1.",
+ "babel-autocreate-text-main": "Le utinde jndr'à sta categorije indichescene ca onne 'na canoscenze d'a lènghe $1.",
"babel-0": "'Stu crestiáne ste'''[[$1|'nderre a le carvune]]''' cu 'u '''[[$2|$3]]'''.",
"babel-1": "'Stu crestiáne pô ajutà' cu 'na canoscènze '''[[$1|tèrra-tèrre]]''' d'u '''[[$2|$3]]'''.",
"babel-2": "'Stu crestiáne pô ajutà' cu 'nna canoscènze '''[[$1|'ndermèdie]]''' d'u '''[[$2|$3]]'''.",
@@ -27,5 +26,9 @@
"babel-4-n": "Stu crestiáne quase quase parle 'u '''[[$2|tarandine]]''' cumme a 'a '''[[$1|lènga madre]]'''.",
"babel-5-n": "Stu crestiáne è proprie 'nu '''[[$1|professore]]''' de '''[[$2|tarandine]]'''.",
"babel-N-n": "Quìste utende jè de [[$1|madrelènga]] [[$2|tarandine]].",
- "babel-footer": "Utinde pe lènghe"
+ "babel-footer": "Utinde pe lènghe",
+ "apihelp-query+babel-description": "Pigghie 'mbormaziune sus a quale lènghe l'utende canosce",
+ "apihelp-query+babel-summary": "Pigghie le 'mbormazziune sus a quale lènghe l'utende canosce",
+ "apihelp-query+babel-param-user": "Utende sus a 'u quale pigghià 'mbormaziune",
+ "apihelp-query+babel-example-1": "Pigghie 'mbormaziune de Babel pe l'utende <kbd>Example</kbd>"
}
diff --git a/MLEB/Babel/i18n/ru.json b/MLEB/Babel/i18n/ru.json
index af747e88..5595d536 100644
--- a/MLEB/Babel/i18n/ru.json
+++ b/MLEB/Babel/i18n/ru.json
@@ -9,17 +9,21 @@
"Kaganer",
"Ole Yves",
"Spiritia",
- "Александр Сигачёв"
+ "Александр Сигачёв",
+ "Туллук",
+ "Irus",
+ "Facenapalm",
+ "Stjn"
]
},
"babel": "Сведения о языках участников (Вавилон)",
"babel-desc": "Добавляет функцию парсера <code>#babel</code>, позволяющую автоматически создавать блок с информацией о языках, которыми владеет участник, с возможностью подключения и других шаблонов.",
"babel-url": "Project:Вавилон",
"babel-footer-url": ":Category:{{ns:Project}}:Участники по языкам",
- "babel-autocreate-abort": "Указанное имя участника используется для автоматического создания категорий [[$1|Вавилон]] и не может быть зарегистрировано.",
"babel-autocreate-reason": "Автоматическое создание страницы категории [[$1|Вавилон]].",
"babel-autocreate-text-levels": "Участники из этой категории указали уровень знаний $1 для языка «$2».",
"babel-autocreate-text-main": "Участники в этой категории указали знание языка «$1».",
+ "babel-autocreate-user": "Babel AutoCreate",
"babel-0": "[[$2|$3]] — [[$1|не владеет]] (или с трудом понимает)",
"babel-1": "[[$2|$3]] — [[$1|начальный уровень]]",
"babel-2": "[[$2|$3]] — [[$1|средний уровень]]",
@@ -35,5 +39,9 @@
"babel-5-n": "{{GENDER:$4|Этот участник|Эта участница}} [[$1|профессионально]] владеет [[$2|русским языком]].",
"babel-N-n": "Для {{GENDER:$4|этого участника|этой участницы}} [[$2|русский язык]] является [[$1|родным]].",
"babel-template": "Template:Участник $1",
- "babel-footer": "Участники по языкам"
+ "babel-footer": "Участники по языкам",
+ "apihelp-query+babel-description": "Получение информации о том, какими языками участник владеет",
+ "apihelp-query+babel-summary": "Получение информации о том, какими языками участник владеет",
+ "apihelp-query+babel-param-user": "Участник, о котором необходимо получить информацию",
+ "apihelp-query+babel-example-1": "Получить сведения о языках участника <kbd>Example</kbd>"
}
diff --git a/MLEB/Babel/i18n/rue.json b/MLEB/Babel/i18n/rue.json
index 90c4a241..da288b09 100644
--- a/MLEB/Babel/i18n/rue.json
+++ b/MLEB/Babel/i18n/rue.json
@@ -9,7 +9,6 @@
"babel-desc": "Придавать функцію <code><nowiki>{{#babel:}}</nowiki></code>, котра доволює автоматічну творбу рамків з інформаціями о языковых способностях хоснователя з можностёв хосновати властны шаблоны.",
"babel-url": "Project:Бабілон",
"babel-footer-url": ":Катеґорія:Вавілон – Хоснователї за языками",
- "babel-autocreate-abort": "Зазначене імя хоснователя ся хоснує на катеґорію [[$1|Бабілон]] і не може быти реґістроване",
"babel-autocreate-reason": "Автоматічне створїня сторінкы катеґорії [[$1|Бабілон]].",
"babel-autocreate-text-levels": "Хоснователї у тій катеґорії означіли свою рівень {{GRAMMAR:genitiv|$2}} як $1.",
"babel-autocreate-text-main": "Участници в тій катеґорії вказали знаня языка $1.",
diff --git a/MLEB/Babel/i18n/rw.json b/MLEB/Babel/i18n/rw.json
index 378b566a..8dc18fd6 100644
--- a/MLEB/Babel/i18n/rw.json
+++ b/MLEB/Babel/i18n/rw.json
@@ -6,7 +6,6 @@
},
"babel": "Informasiyo z'ukoresha za Babel",
"babel-footer-url": ":Icyiciro:Babel - Abakoresha hakurikijwe indimi",
- "babel-autocreate-abort": "Izina ry'ukoresha wahisemo rirakoreshwa guhanga icyiciro cya [[$1|Babel]] byikora rero ntabwo rishobora kwandikishwa.",
"babel-autocreate-reason": "Guhanga ipaje y'icyiciro cya [[$1|Babel]] byikora.",
"babel-autocreate-text-levels": "Abakoresha muri iki cyiciro bagaragaza ko bagira urwego $1 rw'ubumenyi bw'ururimi $2.",
"babel-autocreate-text-main": "Abakoresha muri iki cyiciro bagaragaza ko bagira ubumenyi bw'ururimi $1.",
diff --git a/MLEB/Babel/i18n/sa.json b/MLEB/Babel/i18n/sa.json
index 014cefec..f99793f7 100644
--- a/MLEB/Babel/i18n/sa.json
+++ b/MLEB/Babel/i18n/sa.json
@@ -2,17 +2,17 @@
"@metadata": {
"authors": [
"Kaustubh",
- "Shubha"
+ "Shubha",
+ "NehalDaveND"
]
},
- "babel": "'बाबेल'योजकस्य विवरणम्",
+ "babel": "'बाबेल'सदस्यस्य विवरणम्",
"babel-desc": "<code>#babel</code> इत्येतत् पार्सर्-क्रियां योजयति येन कस्टं-फलकानि योजयितुं शक्तस्य बाबेल्-उपयोक्तृमञ्जूषापङ्क्तेः स्वयमुत्पादन सहकरोति ।",
"babel-url": "Project:बाबेल्",
"babel-footer-url": ":Category:बाबेल् - भाषाशः उपयोक्तारः",
- "babel-autocreate-abort": "निर्दिष्टं योजकनाम [[$1|Babel]] वर्गस्य स्वयं निर्माणाय उपयुक्तम् । अतः पञ्जीकरणं न शक्यते ।",
"babel-autocreate-reason": "[[$1|बाबेल्]] इत्येतत् वर्गपृष्ठं स्वयं निर्मीयमाणमस्ति ।",
"babel-autocreate-text-levels": "अस्मिन् वर्गे विद्यमानानां योजकानां कौशलं $2 भाषायां $1 स्तरयुतः इत्यर्थः ।",
- "babel-autocreate-text-main": "अस्मिन् वर्गे विद्यमानाः योजकाः $1 भाषां जानन्ति इत्यर्थः ।",
+ "babel-autocreate-text-main": "अस्मिन् वर्गे विद्यमानाः सदस्याः $1 भाषां जानन्ति इत्यर्थः ।",
"babel-0": "एष उपयोजक: [[$2|$3]] लिखितुं [[$1|न]] शक्नोति (अतीव प्रयत्नान्ते पढितुं शक्नोति च)।",
"babel-1": "एष उपयोजक: [[$1|प्राथमिक]]-[[$2|$3]] लिखितुं शक्नोति।",
"babel-2": "एष उपयोजक: [[$1|मध्यम]]-[[$2|$3]] लिखितुं शक्नोति।",
@@ -20,12 +20,12 @@
"babel-4": "एष उपयोजक: [[$1|उच्चतम]]-[[$2|$3]] लिखितुं शक्नोति।",
"babel-5": "एष उपयोजक: [[$1|अति-उच्चतम]]-[[$2|$3]] लिखितुं शक्नोति।",
"babel-N": "एष उपयोजकस्य [[$1|मातृभाषा]] [[$2|$3]] अस्ति।",
- "babel-0-n": "एष उपयोजक: [[$2|संस्कृते]] लिखितुं [[$1|न]] शक्नोति (अतीव प्रयत्नान्ते पढितुं शक्नोति च)।",
- "babel-1-n": "एष उपयोजक: [[$1|प्राथमिक]]-[[$2|संस्कृते]] लिखितुं शक्नोति।",
- "babel-2-n": "एष उपयोजक: [[$1|मध्यम]]-[[$2|संस्कृते]] लिखितुं शक्नोति।",
- "babel-3-n": "एष उपयोजकः [[$1|उत्तम]]-[[$2|संस्कृते]] लिखितुं शक्नोति।",
- "babel-4-n": "एष उपयोजक: [[$1|उच्चतम]]-[[$2|संस्कृते]] लिखितुं शक्नोति।",
- "babel-5-n": "एष उपयोजक: [[$1|अति-उच्चतम]]-[[$2|संस्कृते]] लिखितुं शक्नोति।",
- "babel-N-n": "एष उपयोजकस्य [[$1|मातृभाषा]] [[$2|संस्कृतम्‌]] अस्ति।",
+ "babel-0-n": "एषः सदस्यः [[$2|संस्कृतेन]] लेखितुं [[$1|न]] शक्नोति (अथवा तु बहुकष्टेन ज्ञातुं प्रभवति ।)।",
+ "babel-1-n": "एषः सदस्यः [[$1|सरल]]-[[$2|संस्कृतेन]] लेखितुं शक्नोति ।",
+ "babel-2-n": "एषः सदस्यः [[$1|माध्यमिक]]-[[$2|संस्कृतेन]] लेखितुं शक्नोति ।",
+ "babel-3-n": "एषः सदस्यः [[$1|उत्तमतया]] [[$2|संस्कृतेन]] लेखितुं शक्नोति ।",
+ "babel-4-n": "एषः सदस्यः [[$1|मातृभाषावत्]]-[[$2|संस्कृतम्]] अवगच्छति ।",
+ "babel-5-n": "एषः सदस्यः [[$1|उत्कृष्टरीत्या]]-[[$2|संस्कृतेन]] लेखितुं शक्नोति ।",
+ "babel-N-n": "एतस्य सदस्यस्य [[$1|मातृभाषा]] [[$2|संस्कृतम्‌]] अस्ति ।",
"babel-footer": "भाषाशः उपयोक्तारः"
}
diff --git a/MLEB/Babel/i18n/sah.json b/MLEB/Babel/i18n/sah.json
index 6a41c596..8940051a 100644
--- a/MLEB/Babel/i18n/sah.json
+++ b/MLEB/Babel/i18n/sah.json
@@ -1,14 +1,14 @@
{
"@metadata": {
"authors": [
- "HalanTul"
+ "HalanTul",
+ "Туллук"
]
},
"babel": "Кыттааччы тылы билиитэ (Вавилон)",
"babel-desc": "<code>#babel</code> парсер функциятын эбэр, ол атын халыыптары туһанан тыллары билии туһунан колуоҥканы оҥорого туттуллар.",
"babel-url": "Project:Вавилон",
"babel-footer-url": ":Category:Babel - кыттааччылар тылы билиилэринэн",
- "babel-autocreate-abort": "Талбыт аатыҥ [[$1|Вавилон]] категорияларын аптамаатынан оҥорорго туттуллар эбит, онон туттуллар кыаҕа суох.",
"babel-autocreate-reason": "[[$1|Вавилон]] категориятын аптамаатынан оҥоруу.",
"babel-autocreate-text-levels": "Бу категорияҕа киирээччилэр $2 тылы маннык таһымынан билэбит диэбиттэр: $1.",
"babel-autocreate-text-main": "Бу категорияҕа киирээччилэр тылы билиилэрин таһыма $1.",
@@ -26,5 +26,6 @@
"babel-4-n": "{{GENDER:$4|Бу кыттааччы эр киһи|Бу кыттааччы дьахтар}} [[$2|саха тылын]] [[$1|төрөөбүт тылын курдук]] билэр.",
"babel-5-n": "{{GENDER:$4|Бу кыттааччы эр киһи|Бу кыттааччы дьахтар}} [[$2|саха тылын]] [[$1|тыл үөрэхтээҕин таһымынан]] билэр.",
"babel-N-n": "{{GENDER:$4|Бу кыттааччы эр киһиэхэ|Бу кыттааччы дьахтарга}} [[$2|саха тыла]] [[$1|төрөөбүт тыла]] буолар.",
- "babel-footer": "Кыттааччылар тылларынан"
+ "babel-footer": "Кыттааччылар тылларынан",
+ "apihelp-query+babel-description": "Туттааччы ханнык эбии тыллары билэрин туһунан бил"
}
diff --git a/MLEB/Babel/i18n/sat.json b/MLEB/Babel/i18n/sat.json
index 56906428..c439e1f4 100644
--- a/MLEB/Babel/i18n/sat.json
+++ b/MLEB/Babel/i18n/sat.json
@@ -1,14 +1,36 @@
{
"@metadata": {
"authors": [
- "Salvator"
+ "Salvator",
+ "Ramjit Tudu",
+ "Manik Soren",
+ "Fagunkoyel Hansdah",
+ "Amire80"
]
},
- "babel": "Luguburu beboharkoaḱ badae lạgit́",
- "babel-url": "Project:Luguburu",
- "babel-footer-url": ":Category:Luguburu - pạrsi beboharko leka",
- "babel-autocreate-text-levels": "Noa dhara/ketagoriren hoṛkodo kạmidare $1 pạrsi lạgit́ $2.",
- "babel-autocreate-text-main": "Bujhauḱkana noa dhararen hoṛkodo $1 pạrsiko baḍaegea.",
- "babel-0": "Nui hoṛdo [[$1|bae]] baḍaekana [[$2|$3]] ( se thoṛagan kosṭo ńõḱté bujhạwa).",
- "babel-1": "Nuido hoṛdo [[$1|buṭa]] reaḱ [[$2|$3]] baḍae menaḱtaya."
+ "babel": "ᱵᱮᱵᱮᱞ ᱵᱮᱵᱷᱟᱨᱤᱭᱟᱹ ᱠᱟᱛᱷᱟ",
+ "babel-url": "Project:ᱵᱮᱵᱮᱞ",
+ "babel-footer-url": ":ᱛᱷᱚᱠ:ᱵᱟᱵᱮᱞ- ᱯᱟᱹᱨᱥᱤ ᱞᱮᱠᱟᱛᱮ ᱵᱮᱵᱦᱟᱹᱨᱤᱠᱚ",
+ "babel-autocreate-reason": "ᱟᱡᱛᱮ ᱛᱮᱭᱟᱨᱮᱜ-ᱟ [[$1|ᱵᱮᱵᱮᱞ]] ᱜᱚᱴ ᱥᱟᱦᱴᱟ ᱾",
+ "babel-autocreate-text-levels": "ᱱᱚᱣᱟ ᱜᱚᱴ ᱨᱮᱱ ᱦᱚᱲᱠᱚᱭᱟᱜ ᱵᱟᱰᱟᱭ ᱥᱟᱲᱮ $1 ᱞᱮᱵᱮᱞ $2 ᱯᱟᱹᱨᱥᱤ ᱨᱮ ᱾",
+ "babel-autocreate-text-main": "ᱱᱚᱶ ᱜᱚᱴᱨᱤᱱ ᱵᱮᱵᱷᱟᱨᱩᱭᱟᱹ ᱩᱫᱩᱜᱮᱜ-ᱟ ᱠᱚ ᱟᱠᱚᱣᱟᱜ ᱵᱟᱰᱟᱭᱥᱟᱲᱮ ᱢᱮᱱᱟᱜ-ᱟ $1 ᱯᱟᱹᱨᱥᱤ ᱨᱮ ᱾",
+ "babel-0": "ᱱᱩᱭ ᱵᱮᱵᱷᱟᱨᱤᱭᱟᱹ ᱫᱚ [[$1|ᱵᱟᱹᱱᱩᱜ-ᱟ]] ᱜᱮᱭᱟᱱ [[$2|$3]] ᱨᱮᱱᱟᱜ ( ᱟᱨᱵᱟᱝ ᱱᱟᱥᱮ ᱟᱸᱴ ᱫᱷᱟᱨᱟᱛᱮᱭ ᱵᱩᱡᱷᱟᱹᱣ-ᱟ) ᱾",
+ "babel-1": "ᱱᱩᱭ ᱵᱮᱵᱷᱟᱨᱤᱭᱟᱹ ᱫᱚ [[$1|ᱱᱟᱥᱮ]] ᱜᱮᱭᱟᱱ ᱢᱮᱱᱟᱜ ᱛᱟᱭᱟ [[$2|$3]] ᱨᱮᱱᱟᱜ ᱾",
+ "babel-2": "ᱱᱩᱭ ᱵᱮᱵᱷᱟᱨᱤᱭᱟᱹ ᱦᱟᱜ ᱫᱚ [[$1|ᱛᱟᱞᱟᱢᱟᱞᱟ]] ᱜᱮᱭᱟᱱ ᱢᱮᱱᱟᱜ-ᱟ [[$2|$3]] ᱨᱮᱱᱟᱜ ᱾",
+ "babel-3": "ᱱᱩᱭ ᱵᱮᱵᱷᱟᱨᱤᱭᱟᱹ ᱦᱟᱜ ᱫᱚ [[$1|ᱫᱟᱫᱚᱱ]] ᱜᱮᱭᱟᱱ ᱢᱮᱱᱟᱜ-ᱟ [[$2|$3]] ᱨᱮᱱᱟᱜ ᱾",
+ "babel-4": "ᱱᱩᱭ ᱵᱮᱵᱷᱟᱨᱤᱭᱟᱹ ᱦᱟᱜ ᱫᱚ [[$1|ᱟᱭᱳ ᱟᱲᱟᱝ ᱥᱩᱯᱩᱨ]] ᱜᱮᱭᱟᱱ ᱢᱮᱱᱟᱜ-ᱟ [[$2|$3]] ᱨᱮᱱᱟᱜ ᱾",
+ "babel-5": "ᱱᱩᱭ ᱵᱮᱵᱷᱟᱨᱤᱭᱟᱹ ᱦᱟᱜ ᱫᱚ [[$1|ᱩᱫᱟᱹᱢ]] ᱜᱮᱭᱟᱱ ᱢᱮᱱᱟᱜ-ᱟ [[$2|$3]] ᱨᱮᱱᱟᱜ ᱾",
+ "babel-N": "ᱱᱩᱭ ᱵᱮᱵᱷᱟᱨᱤᱭᱟᱹ ᱦᱟᱜ ᱫᱚ [[$1|ᱟᱭᱳ ᱟᱲᱟᱝ ᱞᱮᱠᱟ]] ᱵᱩᱯᱩᱡᱷᱟᱹᱣ ᱢᱮᱱᱟᱜ-ᱟ [[$2|$3]] ᱨᱮᱱᱟᱜ ᱾",
+ "babel-0-n": "ᱱᱩᱭ ᱵᱮᱵᱷᱟᱨᱤᱭᱟᱹ ᱦᱟᱜ ᱫᱚ ᱜᱮᱭᱟᱱ [[$1|ᱵᱟᱹᱱᱩᱜ-ᱟ]] [[$2|ᱥᱟᱱᱛᱟᱲᱤ]] ᱨᱮ ᱫᱚ (ᱟᱨᱵᱟᱝ ᱟᱹᱰᱤ ᱢᱩᱥᱠᱤᱞ ᱛᱮ ᱵᱩᱡᱷᱹᱣ ᱫᱟᱲᱮᱭᱟᱜ-ᱟ ) ᱾",
+ "babel-1-n": "ᱱᱩᱭ ᱵᱮᱵᱷᱟᱨᱤᱭᱟᱹ ᱦᱟᱜ ᱫᱚ [[$1|ᱱᱟᱥᱮ ᱫᱷᱟᱨᱟ]] ᱜᱮᱭᱟᱱ ᱢᱮᱱᱟᱜ-ᱟ [[$2|ᱥᱟᱱᱛᱟᱲᱤ]] ᱨᱮᱱᱟᱜ ᱾",
+ "babel-2-n": "ᱱᱩᱭ ᱵᱮᱵᱷᱟᱨᱤᱭᱟᱹ ᱦᱟᱜ ᱫᱚ [[$1|ᱛᱟᱞᱟᱢᱟᱞᱟ]] ᱜᱮᱭᱟᱱ ᱢᱮᱱᱟᱜ-ᱟ [[$2|ᱥᱟᱱᱛᱟᱲᱤ]] ᱨᱮᱱᱟᱜ ᱾",
+ "babel-3-n": "ᱱᱩᱭ ᱵᱮᱵᱷᱟᱨᱤᱭᱟᱹ ᱦᱟᱜ ᱫᱚ [[$1|ᱫᱟᱫᱚᱱ]] ᱜᱮᱭᱟᱱ ᱢᱮᱱᱟᱜ-ᱟ [[$2|ᱥᱟᱱᱛᱟᱲᱤ]] ᱨᱮᱱᱟᱜ ᱾",
+ "babel-4-n": "ᱱᱩᱭ ᱵᱮᱵᱷᱟᱨᱤᱭᱟᱹ ᱦᱟᱜ ᱫᱚ [[$1|ᱟᱭᱳ ᱟᱲᱟᱝ ᱥᱩᱯᱩᱨ]] ᱜᱮᱭᱟᱱ ᱢᱮᱱᱟᱜ-ᱟ [[$2|ᱥᱟᱱᱛᱟᱲᱤ]] ᱨᱮᱱᱟᱜ ᱾",
+ "babel-5-n": "ᱱᱩᱭ ᱵᱮᱵᱷᱟᱨᱤᱭᱟᱹ ᱦᱟᱜ ᱫᱚ [[$1|ᱩᱫᱟᱹᱢ]] ᱜᱮᱭᱟᱱ ᱢᱮᱱᱟᱜ-ᱟ [[$2|ᱥᱟᱱᱛᱟᱲᱤ]] ᱨᱮᱱᱟᱜ ᱾",
+ "babel-N-n": "ᱱᱩᱭ ᱵᱮᱵᱷᱟᱨᱤᱭᱟᱹ ᱦᱟᱜ ᱫᱚ [[$1|ᱟᱭᱳ ᱟᱲᱟᱝ ᱞᱮᱠᱟ]] ᱵᱩᱯᱩᱡᱷᱟᱹᱣ ᱢᱮᱱᱟᱜ-ᱟ [[$2|ᱥᱟᱱᱛᱟᱲᱤ]] ᱨᱮᱱᱟᱜ ᱾",
+ "babel-footer": "ᱯᱟᱹᱨᱥᱤ ᱞᱮᱠᱟᱛᱮ ᱵᱮᱵᱷᱟᱨᱤᱭᱟᱹᱠᱚ",
+ "apihelp-query+babel-description": "ᱡᱚᱛᱚ ᱠᱷᱚᱵᱚᱨ ᱧᱟᱢ ᱢᱮ ᱵᱮᱵᱷᱟᱨᱤᱭᱟᱹ ᱚᱠᱟ ᱯᱟᱹᱨᱥᱤ ᱵᱟᱰᱟᱭᱟᱭ",
+ "apihelp-query+babel-summary": "ᱡᱚᱛᱚ ᱠᱷᱚᱵᱚᱨ ᱧᱟᱢ ᱢᱮ ᱵᱮᱵᱷᱟᱨᱤᱭᱟᱹ ᱚᱠᱟ ᱯᱟᱹᱨᱥᱤ ᱵᱟᱰᱟᱭᱟᱭ",
+ "apihelp-query+babel-param-user": "ᱵᱮᱵᱷᱟᱨᱤᱭᱟᱹ ᱠᱷᱚᱵᱚᱨ ᱵᱟᱰᱟᱭ ᱞᱟᱹᱜᱤᱫ",
+ "apihelp-query+babel-example-1": "ᱧᱟᱢ ᱢᱮ ᱵᱟᱵᱮᱞ ᱥᱩᱪᱚᱱᱟ ᱵᱮᱵᱷᱟᱨᱤᱭᱟᱹ ᱞᱟᱹᱜᱤᱫ <kbd>ᱫᱟᱹᱭᱠᱟᱹ</kbd>"
}
diff --git a/MLEB/Babel/i18n/sc.json b/MLEB/Babel/i18n/sc.json
index bde2676d..eb0cbd36 100644
--- a/MLEB/Babel/i18n/sc.json
+++ b/MLEB/Babel/i18n/sc.json
@@ -11,7 +11,6 @@
"babel-desc": "Aciungit sa funtzioni parser <code>#babel</code> pro permitiri sa generatzioni automatica de una colunna box impitadore babel cun sa possibilidade de insertai templates personalitzaus",
"babel-url": "Project:Babel",
"babel-footer-url": ":Category:Babel - Impitadores pro limba",
- "babel-autocreate-abort": "Su nùmene impitadore ispetzificau est impreadu pro sa creatzione automatiga de is categorias [[$1|Babel]] e non podet èssere registradu.",
"babel-autocreate-reason": "Crea automatigamente sa pàgina de sa categoria [[$1|Babel]]",
"babel-autocreate-text-levels": "Is impitadores in custa categoria indicant de arrenèschere a comunicare in $2 cun unu livellu de connoschèntzia $1.",
"babel-autocreate-text-main": "Is impitadores de custa categoria indicant de arrenèschere a comunicare in $1.",
diff --git a/MLEB/Babel/i18n/scn.json b/MLEB/Babel/i18n/scn.json
index 005fbdac..4a2e614f 100644
--- a/MLEB/Babel/i18n/scn.json
+++ b/MLEB/Babel/i18n/scn.json
@@ -10,7 +10,6 @@
"babel-desc": "Junci la parser function <code>#babel</code> pi fari la ginirazzioni autumàtica di na culonna babel utenti cu la pussibbilitati di nclùdiri template pirsunalizzati",
"babel-url": "Project:Babel",
"babel-footer-url": ":Category:Babel - Utenti pi lingua",
- "babel-autocreate-abort": "Lu nomu utenti spicificatu è usatu pâ criazzioni autumàtica di catigurìi [[$1|Babel]] e non pò èssiri riggistratu.",
"babel-autocreate-reason": "Criu autumàticamenti la pàggina dâ catigurìa [[$1|Babel]].",
"babel-autocreate-text-levels": "L'utenti nti sta catigurìa dìciunu ca d'aviri nu liveddu di canuscenza $1 dâ lingua $2.",
"babel-autocreate-text-main": "L'utenti nti sta catigurìa dìciunu ca canùsciunu la lingua $1.",
diff --git a/MLEB/Babel/i18n/sco.json b/MLEB/Babel/i18n/sco.json
index d0622276..f2b7c4b9 100644
--- a/MLEB/Babel/i18n/sco.json
+++ b/MLEB/Babel/i18n/sco.json
@@ -9,7 +9,6 @@
"babel-desc": "Eiks the <code>#babel</code> parser function tae allou autæmatit generation o ae babel uiserkist column wi the abeelitie tae incluid custom templates",
"babel-url": "Project:Babel",
"babel-footer-url": ":Categerie:Babel - Uisers bi leid",
- "babel-autocreate-abort": "The uisername that ye speceefied is uised fer [[$1|Babel]] categerie autæ-creaution n canna be registert.",
"babel-autocreate-reason": "Autæmateeclie creautin ae [[$1|Babel]] categerie page.",
"babel-autocreate-text-levels": "Uisers in this categerie indicate that thay'v skill level $1 fer the leid $2.",
"babel-autocreate-text-main": "Uisers in this categerie indicate that thay'v knawledge o the leid $1.",
diff --git a/MLEB/Babel/i18n/sd.json b/MLEB/Babel/i18n/sd.json
index 8211765d..ac97a9b1 100644
--- a/MLEB/Babel/i18n/sd.json
+++ b/MLEB/Babel/i18n/sd.json
@@ -1,10 +1,22 @@
{
"@metadata": {
"authors": [
- "Aursani"
+ "Aursani",
+ "عرفان ارشد",
+ "Mehtab ahmed",
+ "Tweety"
]
},
- "babel-5": "هن يُوزر کي [[$2|$3]] جي [[$1|پيشورانه]] ڄاڻ آهي.",
- "babel-1-n": "هن يُوزر کي [[$2|انگريزي]]ءَ جي [[$1|بنيادي]] ڄاڻ آهي.",
- "babel-5-n": "هن يُوزر کي [[$2|انگريزي]]ءَ جي [[$1|پيشورانه]] ڄاڻ آهي."
+ "babel": "واپرائيندڙ جي ٻولي بابت ڄاڻ",
+ "babel-5": "هن واپرائيندڙ کي [[$2|$3]] جي [[$1|پيشورانہ]] ڄاڻ آهي.",
+ "babel-N": "ھن واپرائيندڙ کي [[$2|$3]] جي [[$1|ڏيھي]] پروڙ آھي.",
+ "babel-0-n": "هن واپرائيندڙ کي [[$2|سنڌيءَ]] جي ڪا ڄاڻ ناهي (يا تمام مشڪل سان سمجهندو آهي).",
+ "babel-1-n": "هن واپرائيندڙ کي [[$2|سنڌي]]ءَ جي [[$1|بنيادي]] ڄاڻ آهي.",
+ "babel-2-n": "هن واپرائيندڙ کي [[$2|سنڌيءِ]] جي [[$1|وچولي]] ڄاڻ آهي.",
+ "babel-3-n": "هن واپرائيندڙ کي [[$2|سنڌيءَ]] جي [[$1|سٺي]] ڄاڻ آهي.",
+ "babel-4-n": "هن واپرائيندڙ کي [[$2|سنڌي]] سان تقريبن [[$1|مادري زبان]] جيتري واقفيت آهي.",
+ "babel-5-n": "هن واپرائيندڙ کي [[$2|سنڌي]]ءَ جي [[$1|پيشورانہ]] ڄاڻ آهي.",
+ "babel-N-n": "هن واپرائيندڙ جي [[$1|مادري زبان]] [[$2|سنڌي]] آهي.",
+ "babel-footer": "واپرائيندڙ بلحاظ ٻولي",
+ "apihelp-query+babel-description": "ڄاڻ وٺو ته واپرائيندڙ ڪهڙيون ٻوليون ڄاڻي ٿو"
}
diff --git a/MLEB/Babel/i18n/sg.json b/MLEB/Babel/i18n/sg.json
index 80cbfd96..3331f3d8 100644
--- a/MLEB/Babel/i18n/sg.json
+++ b/MLEB/Babel/i18n/sg.json
@@ -8,7 +8,6 @@
"babel-desc": "Zîa mbênî likua tî kïröngö sêndïäyângâ <code>#babel</code> daä, tîtene aseka bîakü bîakü mbênî kopu tî wasärängö-kua na Bäbêle, sï alîngbi ngâ tî zîa na yâ nî ângôbo tî sêndo.",
"babel-url": "Project:Bäbêle",
"babel-footer-url": ":Fündä:Bäbêle - Âwasärängö-kua tî ¨yângâködörö ôko ôko",
- "babel-autocreate-abort": "Ïrï tî mo tî wasimbä sô mo fa sô ayeke gï tî seka na âfündä tî [[$1|Babel]], a yeke sûnga nî tî bata pëpe.",
"babel-autocreate-reason": "Sëkängö lêmbëtï tî fündä tî [[$1|Babel]] bîakü bîakü.",
"babel-autocreate-text-levels": "Ânyîmbâ tî yâ tî fündä sô afa atene ânï yângâ tî $2 $1.",
"babel-autocreate-text-main": "Ânyîmbâ tî yâ tî fündä sô afa atene ânï hînga yângâ tî $1",
diff --git a/MLEB/Babel/i18n/sh.json b/MLEB/Babel/i18n/sh.json
index 005f32b9..8a4958f5 100644
--- a/MLEB/Babel/i18n/sh.json
+++ b/MLEB/Babel/i18n/sh.json
@@ -2,30 +2,30 @@
"@metadata": {
"authors": [
"OC Ripper",
- "Kolega2357"
+ "Kolega2357",
+ "Conquistador"
]
},
- "babel": "Babel korisničke informacije\n\nБабел корисничке информације",
- "babel-desc": "Dodaje <code>#babel</code> parsersku funkciju koja omogućava automatsko pravljenje babel korisničke kutije u stupcu sa mogućnostima uključivanja prilagođenih šablona/predložaka",
+ "babel": "Babilonske korisničke informacije",
+ "babel-desc": "Dodaje parsersku funkciju <code>#babel</code> da omogući automatsko generiranje stupca s babilonskim korisničkim okvirima s mogućnošću uključenja predložaka po želji",
"babel-url": "Project:Babel",
"babel-footer-url": ":Kategorija:Babel - Korisnici po jeziku",
- "babel-autocreate-abort": "Korisničko ime koje ste naveli se koristi za automatsko pravljenje [[$1|Babel]] kategorija i ne može se registrirati.",
- "babel-autocreate-reason": "Automatsko stvaranje stranica [[$1|Babel]] kategorija.",
- "babel-autocreate-text-levels": "Korisnici u ovoj kategoriji su označeni da imaju nivo $1 znanja $2 jezika.",
+ "babel-autocreate-reason": "Automatsko stvaranje stranice kategorije [[$1|Babel]].",
+ "babel-autocreate-text-levels": "Korisnici u ovoj kategoriji ukazuju da su vješti na razini $1 za jezik $2.",
"babel-autocreate-text-main": "Korisnici u ovoj kategoriji su označeni da imaju znanje $1 jezika.",
- "babel-0": "Ovaj korisnik [[$1|ne]] razum(ij)e [[$2|$3]] srpskohrvatski jezik.\n\nОвај корисник [[$1|не]] разум(иj)е [[$2|$3]] српскохрватски језик.",
- "babel-1": "Ovaj korisnik posjeduje [[$1|osnovno]] razumijevanje [[$2|$3]] jezika.\n\nОвај корисник поседује [[$1|основно]] разuмевање [[$2|$3]] језика.",
- "babel-2": "Ovaj korisnik [[$1|srednje]] razumije [[$2|$3]].\n\nОвај корисник [[$1|средње]] разуме [[$2|$3]].",
- "babel-3": "Ovaj korisnik [[$1|napredno]] razumije [[$2|$3]].\n\nОвај корисник [[$1|напредно]] разуме [[$2|$3]].",
- "babel-4": "Ovaj korisnik razumije [[$2|$3]] [[$1|gotovo kao maternji]] jezik.\n\nОвај корисник разуме [[$2|$3]] [[$1|готово као матерњи]] језик.",
- "babel-5": "Ovaj korisnik [[$2|$3]] na [[$1|profesionalnom]] nivou.\n\nОвај корисник [[$2|$3]] на [[$1|професионалном]] нивоу.",
- "babel-N": "Ovaj korisnik razumije [[$2|$3]] kao [[$1|maternji]] jezik.\n\nОвај корисник разуме [[$2|$3]] као [[$1|матерњи]] језик.",
- "babel-0-n": "Ovaj korisnik [[$1|ne razumije]] [[$2|srpskohrvatski]] (ili ga razumije s velikim poteškoćama).\n\nОвај корисник [[$1|не разуме]] [[$2|српскохрватски]] (или га разуме са великим потешкоћама).",
- "babel-1-n": "Ovaj korisnik ima [[$1|osnovno]] poznavanje [[$2|srpskohrvatskog jezika]].\n\nОвај корисник има [[$1|основно]] познавање [[$2|српскохрватског језика]].",
- "babel-2-n": "Ovaj korisnik [[$1|srednje]] razumije [[$2|srpskohrvatski jezik]].\n\nОвај корисник [[$1|средње]] разуме [[$2|српскохрватски језик]].",
- "babel-3-n": "Ovaj korisnik ima [[$1|napredno]] poznavanje [[$2|srpskohrvatskog jezika]].\n\nОвај корисник има [[$1|напредно]] познавање [[$2|српскохрватског језика]].",
- "babel-4-n": "Ovaj korisnik razumije [[$2|srpskohrvatski]] [[$1|gotovo kao maternji jezik]].",
- "babel-5-n": "Ovaj korisnik govori [[$2|srpskohrvatski jezik]] na [[$1|profesionalnoj]] razini.",
- "babel-N-n": "Ovaj korisnik razumije [[$2|srpskohrvatski]] kao [[$1|maternji]] jezik.",
+ "babel-0": "Ovaj korisnik [[$1|ne]] zna [[$2|$3]] (ili razumije sa znatnim poteškoćama).",
+ "babel-1": "Ovaj korisnik zna [[$2|$3]] na [[$1|osnovnoj]] razini.",
+ "babel-2": "Ovaj korisnik zna [[$2|$3]] na [[$1|srednjoj]] razini.",
+ "babel-3": "Ovaj korisnik zna [[$2|$3]] na [[$1|naprednoj]] razini.",
+ "babel-4": "Ovaj korisnik zna [[$2|$3]] na razini [[$1|skoro izvornoga govornika]].",
+ "babel-5": "Ovaj korisnik zna [[$2|$3]] na [[$1|profesionalnoj]] razini.",
+ "babel-N": "Ovaj korisnik govori [[$2|$3]] kao [[$1|materinski jezik]].",
+ "babel-0-n": "Ovaj korisnik [[$1|ne]] zna [[$2|srpskohrvatski]] (ili razumije sa znatnim poteškoćama).",
+ "babel-1-n": "Ovaj korisnik zna [[$2|srpskohrvatski]] na [[$1|osnovnoj]] razini.",
+ "babel-2-n": "Ovaj korisnik zna [[$2|srpskohrvatski]] na [[$1|srednjoj]] razini.",
+ "babel-3-n": "Ovaj korisnik zna [[$2|srpskohrvatski]] na [[$1|naprednoj]] razini.",
+ "babel-4-n": "Ovaj korisnik zna [[$2|srpskohrvatski]] na razini [[$1|skoro izvornoga govornika]].",
+ "babel-5-n": "Ovaj korisnik zna [[$2|srpskohrvatski]] na [[$1|profesionalnoj]] razini.",
+ "babel-N-n": "Ovaj korisnik govori [[$2|srpskohrvatski]] kao [[$1|materinski jezik]].",
"babel-footer": "Korisnici po jeziku"
}
diff --git a/MLEB/Babel/i18n/shi.json b/MLEB/Babel/i18n/shi.json
index 91bfeaaa..a4602787 100644
--- a/MLEB/Babel/i18n/shi.json
+++ b/MLEB/Babel/i18n/shi.json
@@ -1,28 +1,28 @@
{
"@metadata": {
"authors": [
- "Dalinanir"
+ "Dalinanir",
+ "Amara-Amaziɣ"
]
},
- "babel": "Inɣmas Babel f umsqdac",
+ "babel": "ⵓⵎⵍⴰⵏ ⴱⴰⴱⵉⵍ ⵏ ⵓⵙⵎⵔⴰⵙ",
"babel-desc": "Zayd awur <code>#babel</code> lli radd immurzm s utumatik yat tanaka (taznbilt) nu umsqdac Babil d mas rad yaf an ig timuḍimin n idɣarn.",
- "babel-url": "Project:Babel",
- "babel-autocreate-abort": "Assaɣ n usqdac llin tskcmt ittuyskar bac an ig utumatik tilɣiwin [[$1|Babel]] d ur ikls (iqqiyd)",
+ "babel-url": "Project:ⴱⴰⴱⵉⵍ",
"babel-autocreate-reason": "Askr utumatik n [[$1|Babel]] talɣa .",
"babel-autocreate-text-levels": "Mdn v talɣa yad ar mmaln mas llan ɣ uswir n $1 i tutlayt n $2.",
"babel-autocreate-text-main": " Imqdacn ɣ talɣa yad ar mlan masd darsn tusna ɣ tutlayt $1.",
- "babel-0": "Amdan ad ur dar n tusna ɣ [[$1|walu]] (niɣd dars tamukrist iggutn ɣ tusna n tutlayt ad)[[$2|$3]].",
- "babel-1": "Amdan ad ittaws s uswir [[$1|idrusn]] s [[$2|$3]].",
+ "babel-0": "ⴰⵙⵎⵔⴰⵙ ⴰⴷ [[$1|ⵓⵔ]] ⴷⴰⵔⵙ ⵜⵓⵙⵙⵏⴰ ⴳ [[$2|$3]] (ⵏⵖ ⴰⵔ ⵜⵜ ⵉⵜⵜⵔⵎⴰⵙ ⵙ ⵜⵎⴰⵔⴰ ⵉⴳⴳⵓⵜⵏ).",
+ "babel-1": "{{GENDER:$4|ⴰⵙⵎⵔⴰⵙ|ⵜⴰⵙⵎⵔⴰⵙⵜ}} ⴰⴷ ⴷⴰⵔⵙ ⵢⴰⵜ ⵜⵓⵙⵙⵏⴰ [[$1|ⵜⴰⵙⵉⵍⴰⵏⵜ]] ⵏ [[$2|$3]].",
"babel-2": "Amdan ad dars tusna s uswir [[$2|$3]] ɣ [[$1|anamas]].",
- "babel-3": "Amdan dar tusna s uswir [[$1|n yittin]] ɣ [[$2|$3]].",
- "babel-4": "Amdan ad dar tusna n yaẓn i [[$1|tutlayt tamzwarut]] ɣ [[$2|$3]].",
- "babel-5": "Amdan ad dars tusna [[$1|bahra yattuyn]] ɣ [[$2|$3]].",
- "babel-N": "Amdan tga [[$2|$3]] [[$1|ils amzwarut]] ns",
- "babel-0-n": "Amdan ad ur dars [[$1|ḥtta kra]] kra n tusna ɣ [[$2|tamaziɣ tasusit]]",
- "babel-1-n": "Amsqdac ad dar tusna [[$1|tamzwarut]] ɣ [[$2|Tasussit]].",
+ "babel-3": "{{GENDER:$4|ⴰⵙⵎⵔⴰⵙ|ⵜⴰⵙⵎⵔⴰⵙⵜ}} ⴰⴷ ⴷⴰⵔⵙ ⵢⴰⵜ ⵜⵓⵙⵙⵏⴰ [[$1|ⵢⴰⵜⵜⵓⵢⵏ]] ⵏ [[$2|$3]].",
+ "babel-4": "{{GENDER:$4|ⴰⵙⵎⵔⴰⵙ|ⵜⴰⵙⵎⵔⴰⵙⵜ}} ⴰⴷ ⴷⴰⵔⵙ ⵢⴰⵜ ⵜⵓⵙⵙⵏⴰ ⵢⴰⵥⵏ ⵉ [[$1|ⵜⵉⵏ ⵓⵎⵙⵙⵉⵡⵍ ⴰⵏⵚⵍⵉ]] ⵏ [[$2|$3]].",
+ "babel-5": "{{GENDER:$4|ⴰⵙⵎⵔⴰⵙ|ⵜⴰⵙⵎⵔⴰⵙⵜ}} ⴰⴷ ⴷⴰⵔⵙ ⵢⴰⵜ ⵜⵓⵙⵙⵏⴰ ⵉⴳⴰⵏ [[$1|ⴲⵔⵓⴼⵉⵙⵢⵓⵏⵉⵍ]] ⵏ [[$2|$3]].",
+ "babel-N": "{{GENDER:$4|ⴰⵙⵎⵔⴰⵙ|ⵜⴰⵙⵎⵔⴰⵙⵜ}} ⴰⴷ ⵜⴳⴰ ⴷⴰⵔⵙ [[$2|$3]] [[$1|ⵜⵓⵜⵍⴰⵢⵜ ⵜⴰⵢⵎⵎⴰⵜ]].",
+ "babel-0-n": "{{GENDER:$4|ⴰⵙⵎⵔⴰⵙ|ⵜⴰⵙⵎⵔⴰⵙⵜ}} ⴰⴷ [[$1|ⵓⵔ]] ⴷⴰⵔⵙ ⴽⵔⴰ ⵏ ⵜⵓⵙⵙⵏⴰ ⵖ [[$2|ⵜⵎⴰⵣⵉⵖⵜ (ⵜⴰⵛⵍⵃⵉⵜ)]] (ⵏⵖ ⴰⵔ ⵜⵜ ⵉⵜⵜⵔⵎⴰⵙ ⵙ ⵜⵎⴰⵔⴰ ⵉⴳⴳⵓⵜⵏ).",
+ "babel-1-n": "{{GENDER:$4|ⴰⵙⵎⵔⴰⵙ|ⵜⴰⵙⵎⵔⴰⵙⵜ}} ⴰⴷ ⴷⴰⵔⵙ ⵢⴰⵜ ⵜⵓⵙⵙⵏⴰ [[$1|ⵜⴰⵙⵉⵍⴰⵏⵜ]] ⵖ [[$2|ⵜⵎⴰⵣⵉⵖⵜ (ⵜⴰⵛⵍⵃⵉⵜ)]].",
"babel-2-n": "Amdan ad dars tusna s [[$1|uswir anamas]] ɣ [[$2|Tamaziɣt tasusit]].",
- "babel-3-n": "Amdan ad dars tusna n [[$1|bahra yattuyn ]] ɣ [[$2|tamaziɣt tasusit]].",
- "babel-4-n": "Amdan ad dars tusna nn yazn i [[$1|ils ns amzwaru ]] [[$2|tamaziɣt tasusit]].",
- "babel-5-n": "Amdan ad dars yan uswir iɣatrn n [[$1|uslmad]] s [[$2|ils amaziɣ asusi]]",
- "babel-N-n": "Amdan tga [[$2|tamaziɣt tasusit]] [[$1|ils amzwaru]] ns"
+ "babel-3-n": "{{GENDER:$4|ⴰⵙⵎⵔⴰⵙ|ⵜⴰⵙⵎⵔⴰⵙⵜ}} ⴰⴷ ⴷⴰⵔⵙ ⵢⴰⵜ ⵜⵓⵙⵙⵏⴰ [[$1|ⵢⴰⵜⵜⵓⵢⵏ]] ⵖ [[$2|ⵜⵎⴰⵣⵉⵖⵜ (ⵜⴰⵛⵍⵃⵉⵜ)]].",
+ "babel-4-n": "{{GENDER:$4|ⴰⵙⵎⵔⴰⵙ|ⵜⴰⵙⵎⵔⴰⵙⵜ}} ⴰⴷ ⴷⴰⵔⵙ ⵢⴰⵜ ⵜⵓⵙⵙⵏⴰ ⵢⴰⵥⵏ ⵉ [[$1|ⵜⵉⵏ ⵓⵎⵙⵙⵉⵡⵍ ⴰⵏⵚⵍⵉ]] ⵖ [[$2|ⵜⵎⴰⵣⵉⵖⵜ (ⵜⴰⵛⵍⵃⵉⵜ)]].",
+ "babel-5-n": "{{GENDER:$4|ⴰⵙⵎⵔⴰⵙ|ⵜⴰⵙⵎⵔⴰⵙⵜ}} ⴰⴷ ⴷⴰⵔⵙ ⵢⴰⵜ ⵜⵓⵙⵙⵏⴰ ⵉⴳⴰⵏ [[$1|ⴲⵔⵓⴼⵉⵙⵢⵓⵏⵉⵍ]] ⵖ [[$2|ⵜⵎⴰⵣⵉⵖⵜ (ⵜⴰⵛⵍⵃⵉⵜ)]].",
+ "babel-N-n": "{{GENDER:$4|ⴰⵙⵎⵔⴰⵙ|ⵜⴰⵙⵎⵔⴰⵙⵜ}} ⴰⴷ ⵜⴳⴰ ⴷⴰⵔⵙ [[$2|ⵜⴰⵎⴰⵣⵉⵖⵜ (ⵜⴰⵛⵍⵃⵉⵜ)]] [[$1|ⵜⵓⵜⵍⴰⵢⵜ ⵜⴰⵢⵎⵎⴰⵜ]]."
}
diff --git a/MLEB/Babel/i18n/si.json b/MLEB/Babel/i18n/si.json
index 9affacf4..097e083f 100644
--- a/MLEB/Babel/i18n/si.json
+++ b/MLEB/Babel/i18n/si.json
@@ -13,7 +13,6 @@
"babel-desc": "බාබෙල් පරිශීලකකොටු තීරුව සමඟ ව්‍යවහාර සැකිලි අඩංගු කිරීමේ හැකියාව ස්වයංක්‍රීයව ජනනය කිරීමට ඉඩදීම සඳහා <code>#babel</code> ව්‍යාකරණ විග්‍රහ කාර්යය එක් කරන්න",
"babel-url": "Project:බාබෙල්",
"babel-footer-url": ":ප්‍රවර්ගය:බාබෙල් - භාෂාව අනුව පරිශීලකයින්",
- "babel-autocreate-abort": "ඔබ විශේෂණය කෙරූ පරිශීලක නාමය [[$1|බාබෙල්]] ප්‍රවර්ග ස්වයං-තැනීම සඳහා භාවිතා කරන අතර ලියාපදිංචි කල නොහැක.",
"babel-autocreate-reason": "[[$1|බාබෙල්]] ප්‍රවර්ග පිටුව ස්වයංක්‍රීයව තනමින්.",
"babel-autocreate-text-levels": "මෙම ප්‍රවර්ගයෙහි සිටින පරිශීලකයන් $2 භාෂාව සඳහා $1 මට්ටමක් තිබෙන බව පෙන්නුම් කරනු ලබයි.",
"babel-autocreate-text-main": "මෙම ප්‍රවර්ගයෙහි සිටින පරිශීලකයන් $1 භාෂාව සඳහා දැනුමක් තිබෙන බව පෙන්නුම් කරනු ලබයි.",
diff --git a/MLEB/Babel/i18n/sk.json b/MLEB/Babel/i18n/sk.json
index c0c6e008..045174ee 100644
--- a/MLEB/Babel/i18n/sk.json
+++ b/MLEB/Babel/i18n/sk.json
@@ -4,14 +4,15 @@
"Helix84",
"Meno25",
"Rudko",
- "Sudo77(new)"
+ "Sudo77(new)",
+ "Danny B.",
+ "Teslaton"
]
},
- "babel": "Babylon - informácie o používateľovi",
+ "babel": "Babylon – informácie o&nbsp;{{GENDER:$1|používateľovi|používateľke}}",
"babel-desc": "Pridáva funkciu syntaktického analyzátora <code>#babel</code>, ktorá umožňuje automatickú tvorbu babylonských šablón používateľov s možnosťou používať prispôsobené šablóny.",
"babel-url": "Project:Babylon",
- "babel-footer-url": ":Kategória:Wikipédia:Redaktori podľa jazyka",
- "babel-autocreate-abort": "Používateľ, ktorého ste zadali sa používa na automatickú tvorbu kategórií [[$1|Babylonu]] a nie je možné ho zaregistrovať.",
+ "babel-footer-url": ":Kategória:Babylon – Používatelia podľa jazyka",
"babel-autocreate-reason": "Automaticky sa vytvára stránka kategórie [[$1|Babylon]].",
"babel-autocreate-text-levels": "Používatelia v tejto kategórii označili svoju úroveň v jazyku $2 ako $1.",
"babel-autocreate-text-main": "Používatelia v tejto kategórii označili, že poznajú jazyk $1.",
@@ -22,12 +23,12 @@
"babel-4": "Tento používateľ má znalosti [[$2|{{GRAMMAR:genitív|$3}}]] takmer na úrovni [[$1|rodného jazyka]].",
"babel-5": "Tento používateľ má [[$1|profesionálne]] znalosti [[$2|{{GRAMMAR:genitív|$3}}]].",
"babel-N": "Tento používateľ má [[$2|{{GRAMMAR:akuzatív|$3}}]] ako [[$1|rodný jazyk]].",
- "babel-0-n": "Tento redaktor [[$1|nerozumie]] po [[$2|slovensky]] (alebo rozumie so značnými problémami).",
- "babel-1-n": "Tento redaktor má [[$1|základné]] znalosti [[$2|slovenčiny]].",
- "babel-2-n": "Tento redaktor má [[$1|stredné]] znalosti [[$2|slovenčiny]].",
- "babel-3-n": "Tento redaktor má [[$1|pokročilé]] znalosti [[$2|slovenčiny]].",
- "babel-4-n": "Tento redaktor má znalosti [[$2|slovenčiny]] [[$1|takmer na úrovni materinského jazyka]].",
- "babel-5-n": "Tento redaktor má [[$1|profesionálne]] znalosti [[$2|slovenčiny]].",
- "babel-N-n": "Tento redaktor má [[$2|slovenčinu]] ako [[$1|materinský jazyk]].",
- "babel-footer": "Redaktori podľa jazyka"
+ "babel-0-n": "Tento užívateľ [[$1|nerozumie]] po [[$2|slovensky]] (alebo rozumie so značnými problémami).",
+ "babel-1-n": "Tento užívateľ má [[$1|základné]] znalosti [[$2|slovenčiny]].",
+ "babel-2-n": "Tento užívateľ má [[$1|stredné]] znalosti [[$2|slovenčiny]].",
+ "babel-3-n": "Tento užívateľ má [[$1|pokročilé]] znalosti [[$2|slovenčiny]].",
+ "babel-4-n": "Tento užívateľ má znalosti [[$2|slovenčiny]] [[$1|takmer na úrovni materinského jazyka]].",
+ "babel-5-n": "Tento užívateľ má [[$1|profesionálne]] znalosti [[$2|slovenčiny]].",
+ "babel-N-n": "Tento užívateľ má [[$2|slovenčinu]] ako [[$1|materinský jazyk]].",
+ "babel-footer": "Užívatelia podľa jazyka"
}
diff --git a/MLEB/Babel/i18n/sl.json b/MLEB/Babel/i18n/sl.json
index 58425386..b59b7763 100644
--- a/MLEB/Babel/i18n/sl.json
+++ b/MLEB/Babel/i18n/sl.json
@@ -2,17 +2,18 @@
"@metadata": {
"authors": [
"Dbc334",
- "Smihael"
+ "Smihael",
+ "Daimona Eaytoy",
+ "Yerpo"
]
},
"babel": "Uporabnikov Babilon",
"babel-desc": "Doda funkcijo <code>#babel</code>, ki omogoča avtomatizirano ustvarjanje babilonskih uporabniških polj z zmožnostjo vključevanja predlog po meri",
"babel-url": "Project:Babilon",
- "babel-footer-url": ":Kategorija:Babel – Uporabniki po jeziku",
- "babel-autocreate-abort": "Uporabniško ime, ki ste ga določili, se uporablja za samodejno ustvarjanje kategorij [[$1|Babel]] in ga ni mogoče registirati.",
+ "babel-footer-url": ":Kategorija:Uporabniški jeziki",
"babel-autocreate-reason": "Samodejno ustvarjanje [[$1|babilonske]] kategorije.",
"babel-autocreate-text-levels": "Uporabniki navedeni v tej kategoriji imajo naslednjo jezikovno sposobnost $1 $2.",
- "babel-autocreate-text-main": "Uporabniki navedeni v tej kategoriji imajo znanje jezika »$1«.",
+ "babel-autocreate-text-main": "Uporabniki navedeni v tej kategoriji imajo znanje jezika $1.",
"babel-0": "Ta uporabnik [[$1|nima]] znanja [[$2|$3]] (ali pa ima težave z razumevanjem).",
"babel-1": "Ta uporabnik ima [[$1|osnovno]] znanje [[$2|$3]].",
"babel-2": "Uporabnik [[$1|srednje dobro]] govori [[$2|$3]].",
@@ -21,9 +22,9 @@
"babel-5": "Uporabnik govori [[$2|$3]] na [[$1|profesionalni]] ravni.",
"babel-N": "Ta uporabnik govori [[$2|{{GRAMMAR:akuzativ|$3}}]] kot [[$1|materni jezik]].",
"babel-0-n": "Uporabnik [[$1|ne govori]] [[$2|slovenščine]] oz. ima velike težave pri razumevanju.",
- "babel-1-n": "Uporabnik pozna '''[[$1|osnove]]''' '''[[$2|slovenskega jezika]].",
- "babel-2-n": "Uporabnik '''[[$1|srednje dobro]]''' govori '''[[$2|slovenščino]].",
- "babel-3-n": "Uporabnik '''[[$1|zelo dobro]]''' govori '''[[$2|slovenščino]].",
+ "babel-1-n": "Uporabnik pozna '''[[$1|osnove]]''' '''[[$2|slovenskega jezika]]'''.",
+ "babel-2-n": "Uporabnik '''[[$1|srednje dobro]]''' govori '''[[$2|slovenščino]]'''.",
+ "babel-3-n": "Uporabnik '''[[$1|zelo dobro]]''' govori '''[[$2|slovenščino]]'''.",
"babel-4-n": "Uporabnik govori '''[[$1|slovensko]]''' skoraj '''[[$2|enako dobro kakor prvi jezik]]'''.",
"babel-5-n": "Uporabnik govori [[$2|slovenščino]] na [[$1|profesionalni]] ravni.",
"babel-N-n": "Uporabnik govori '''[[$1|slovenščino]]''' kot '''[[$2|materni jezik]]'''.",
diff --git a/MLEB/Babel/i18n/sli.json b/MLEB/Babel/i18n/sli.json
index 0478e4cb..c5461266 100644
--- a/MLEB/Babel/i18n/sli.json
+++ b/MLEB/Babel/i18n/sli.json
@@ -8,7 +8,6 @@
"babel": "Babel-Benutzer-Information",
"babel-desc": "Ergänzt de <code>#babel</code>-Parserfunktion zur automatischen Erstellung vo Babel-Benutzerboxen-Zeilen mit der Möglichkeit, eigene Vorlagen einzubinden",
"babel-url": "Project:Babel",
- "babel-autocreate-abort": "Dar oausgewählte Nutzername werd fier de automatische Arstellung voo [[$1|Babel]]-Kategoria benötigt un kaon nä registriert werda.",
"babel-autocreate-reason": "Automatisch arstellte [[$1|Babel]]-Kategorie.",
"babel-autocreate-text-levels": "Benutzer ei dieser Kategorie haben den Kenntnis-Level $1 für die Sproache $2.",
"babel-autocreate-text-main": "Benutzer ei dieser Kategorie haben Kenntnisse der Sproache $1.",
diff --git a/MLEB/Babel/i18n/sq.json b/MLEB/Babel/i18n/sq.json
index 35e8cc55..144f428a 100644
--- a/MLEB/Babel/i18n/sq.json
+++ b/MLEB/Babel/i18n/sq.json
@@ -4,30 +4,30 @@
"Dori",
"Eagleal",
"Olsi",
- "Vinie007"
+ "Vinie007",
+ "Arianit"
]
},
"babel": "Informacioni Babel i Përdoruesit",
"babel-desc": "Shton mundësinë <code>#babel</code> për të lejuar krijimin automatik të kutive babel me mundësinë për të shtuar stampa vetjake.",
"babel-url": "Project:Babel",
"babel-footer-url": ": Category: Babel - Përdorues sipas gjuhës",
- "babel-autocreate-abort": "Emrin që ju specifikuar është përdorur për [[$1|Babel]] auto kategori per krijimit dhe nuk mund të regjistruar.",
"babel-autocreate-reason": "automatikisht per krijimin e [[$1|Babel]] faqe kategori.",
"babel-autocreate-text-levels": "Përdoruesit në këtë kategori tregojnë se ata kanë aftësi të nivelit $1 për gjuhën e $2 .",
- "babel-autocreate-text-main": "Përdoruesit në këtë kategori tregojnë se ata kanë njohuri të gjuhës $1 .",
- "babel-0": "Ky përdorues [[$1|nuk ka]] njohuri të [[$2|$3]] (ose e kupton me shumë vështirësi).",
- "babel-1": "Ky përdorues ka njohuri [[$1|të kufizuar]] të [[$2|$3]].",
- "babel-2": "Ky përdorues ka njohuri [[$1|thelbësore]] të [[$2|$3]].",
- "babel-3": "Ky përdorues ka njohuri [[$1|të thellë]] të [[$2|$3]].",
- "babel-4": "Ky përdorues ka njohuri [[$1|afërsisht amtare]] të [[$2|$3]].",
- "babel-5": "Ky përdorues ka njohuri [[$1|profesionale]] të [[$2|$3]].",
- "babel-N": "Ky përdorues ka njohuri [[$1|amtare]] të [[$2|$3]].",
- "babel-0-n": "Ky përdorues [[$1|nuk ka]] njohuri të [[$2|anglishtes]] (ose e kupton me vështirësi të madhe).",
- "babel-1-n": "Ky përdorues ka njohuri [[$1|të kufizuar]] të [[$2|gjuhës Shqipe]].",
- "babel-2-n": "Ky përdorues ka njohuri [[$1|thelbësore]] të [[$2|gjuhës Shqipe]].",
- "babel-3-n": "Ky përdorues ka njohuri [[$1|të thellë]] të [[$2|gjuhës Shqipe]].",
- "babel-4-n": "Ky përdorues ka njohuri [[$1|afërsisht amtare]] të [[$2|gjuhës Shqipe]].",
- "babel-5-n": "Ky përdorues ka njohuri [[$1|profesionale]] të [[$2|gjuhës Shqipe]].",
- "babel-N-n": "Ky përdorues ka njohuri [[$1|amtare]] të [[$2|gjuhës Shqipe]].",
+ "babel-autocreate-text-main": "Përdoruesit në këtë kategori tregojnë se kanë njohuri të gjuhës $1.",
+ "babel-0": "{{GENDER:$4|Ky përdorues|Kjo përdoruese}} [[$1|nuk ka]] njohuri të [[$2|$3]] (ose e kupton me shumë vështirësi).",
+ "babel-1": "{{GENDER:$4|Ky përdorues|Kjo përdoruese}} ka njohuri [[$1|të kufizuar]] të [[$2|$3]].",
+ "babel-2": "{{GENDER:$4|Ky përdorues|Kjo përdoruese}} ka njohuri [[$1|thelbësore]] të [[$2|$3]].",
+ "babel-3": "{{GENDER:$4|Ky përdorues|Kjo përdoruese}} ka njohuri [[$1|të thellë]] të [[$2|$3]].",
+ "babel-4": "{{GENDER:$4|Ky përdorues|Kjo përdoruese}} ka njohuri [[$1|afërsisht amtare]] të [[$2|$3]].",
+ "babel-5": "{{GENDER:$4|Ky përdorues|Kjo përdoruese}} ka njohuri [[$1|profesionale]] të [[$2|$3]].",
+ "babel-N": "{{GENDER:$4|Ky përdorues|Kjo përdoruese}} ka njohuri [[$1|amtare]] të [[$2|$3]].",
+ "babel-0-n": "{{GENDER:$4|Ky përdorues|Kjo përdoruese}} [[$1|nuk ka]] njohuri të [[$2|gjuhës shqipe]] (ose e kupton me vështirësi të madhe).",
+ "babel-1-n": "{{GENDER:$4|Ky përdorues|Kjo përdoruese}} ka njohuri [[$1|të kufizuar]] të [[$2|gjuhës shqipe]].",
+ "babel-2-n": "{{GENDER:$4|Ky përdorues|Kjo përdoruese}} ka njohuri [[$1|thelbësore]] të [[$2|gjuhës shqipe]].",
+ "babel-3-n": "{{GENDER:$4|Ky përdorues|Kjo përdoruese}} ka njohuri [[$1|të thellë]] të [[$2|gjuhës shqipe]].",
+ "babel-4-n": "{{GENDER:$4|Ky përdorues|Kjo përdoruese}} ka njohuri [[$1|afërsisht amtare]] të [[$2|gjuhës shqipe]].",
+ "babel-5-n": "{{GENDER:$4|Ky përdorues|Kjo përdoruese}} ka njohuri [[$1|profesionale]] të [[$2|gjuhës shqipe]].",
+ "babel-N-n": "{{GENDER:$4|Ky përdorues|Kjo përdoruese}} ka njohuri [[$1|amtare]] të [[$2|gjuhës shqipe]].",
"babel-footer": "Përdorues sipas gjuhës"
}
diff --git a/MLEB/Babel/i18n/sr-ec.json b/MLEB/Babel/i18n/sr-ec.json
index 04470175..28fcc9d8 100644
--- a/MLEB/Babel/i18n/sr-ec.json
+++ b/MLEB/Babel/i18n/sr-ec.json
@@ -2,20 +2,20 @@
"@metadata": {
"authors": [
"Rancher",
- "Михајло Анђелковић"
+ "Михајло Анђелковић",
+ "Josep Maria Roca Peña"
]
},
"babel": "Језичке кутијице",
"babel-desc": "Додаје функцију рашчлањивача <code>#babel</code> која омогућава самостално стварање колоне с језичком кутијицом уз могућност додавања прилагођених шаблона",
"babel-url": "Project:Вавилон",
"babel-footer-url": ":Category:Вавилон – Корисници по језику",
- "babel-autocreate-abort": "Корисничко име које сте унели користи се за самостално стварање категорије [[$1|Вавилон]] и зато се не може уписати.",
"babel-autocreate-reason": "Самостално стварање категорије [[$1|Вавилон]].",
"babel-autocreate-text-levels": "Корисници у овој категорији имају знање $1 $2 језика.",
"babel-autocreate-text-main": "Корисници у овој категорији имају знање $1 језика.",
"babel-autocreate-user": "Вавилон – самостварање",
"babel-0": "{{GENDER:$4|Овај корисник|Ова корисница|Овај корисник}} [[$1|не]] зна [[$2|$3]] језик (или га разуме са знатним потешкоћама).",
- "babel-1": "{{GENDER:$4|Овај корисник|Ова корисница|Овај корисник}} разуме [[$2|$3]] језик на [[$1|основном]] нивоу.",
+ "babel-1": "{{GENDER:$4|Овај корисник|Ова корисница|Овај корисник}} има [[$1|основно]] знање [[$2|српског језика]].",
"babel-2": "{{GENDER:$4|Овај корисник|Ова корисница|Овај корисник}} разуме [[$2|$3]] језик на [[$1|средњем]] нивоу.",
"babel-3": "{{GENDER:$4|Овај корисник|Ова корисница|Овај корисник}} разуме [[$2|$3]] језик на [[$1|напредном]] нивоу.",
"babel-4": "{{GENDER:$4|Овај корисник|Ова корисница|Овај корисник}} [[$1|течно]] говори [[$2|$3]] језик.",
diff --git a/MLEB/Babel/i18n/sr-el.json b/MLEB/Babel/i18n/sr-el.json
index cbac5e6e..f8e4dc6a 100644
--- a/MLEB/Babel/i18n/sr-el.json
+++ b/MLEB/Babel/i18n/sr-el.json
@@ -2,20 +2,20 @@
"@metadata": {
"authors": [
"Michaello",
- "Rancher"
+ "Rancher",
+ "Josep Maria Roca Peña"
]
},
"babel": "Jezičke kutijice",
"babel-desc": "Dodaje funkciju raščlanjivača <code>#babel</code> koja omogućava samostalno stvaranje kolone s jezičkom kutijicom uz mogućnost dodavanja prilagođenih šablona",
"babel-url": "Project:Vavilon",
"babel-footer-url": ":Category:Vavilon – Korisnici po jeziku",
- "babel-autocreate-abort": "Korisničko ime koje ste uneli koristi se za samostalno stvaranje kategorije [[$1|Vavilon]] i zato se ne može upisati.",
"babel-autocreate-reason": "Samostalno stvaranje kategorije [[$1|Vavilon]].",
"babel-autocreate-text-levels": "Korisnici u ovoj kategoriji imaju znanje $1 $2 jezika.",
"babel-autocreate-text-main": "Korisnici u ovoj kategoriji imaju znanje $1 jezika.",
"babel-autocreate-user": "Vavilon – samostvaranje",
"babel-0": "{{GENDER:$4|Ovaj korisnik|Ova korisnica|Ovaj korisnik}} [[$1|ne]] zna [[$2|$3]] jezik (ili ga razume sa znatnim poteškoćama).",
- "babel-1": "{{GENDER:$4|Ovaj korisnik|Ova korisnica|Ovaj korisnik}} razume [[$2|$3]] jezik na [[$1|osnovnom]] nivou.",
+ "babel-1": "{{GENDER:$4|Ovaj korisnik|Ova korisnica|Ovaj korisnik}} ima [[$1|osnovno]] znanje [[$2|srpskog jezika]].",
"babel-2": "{{GENDER:$4|Ovaj korisnik|Ova korisnica|Ovaj korisnik}} razume [[$2|$3]] jezik na [[$1|srednjem]] nivou.",
"babel-3": "{{GENDER:$4|Ovaj korisnik|Ova korisnica|Ovaj korisnik}} razume [[$2|$3]] jezik na [[$1|naprednom]] nivou.",
"babel-4": "{{GENDER:$4|Ovaj korisnik|Ova korisnica|Ovaj korisnik}} [[$1|tečno]] govori [[$2|$3]] jezik.",
diff --git a/MLEB/Babel/i18n/stq.json b/MLEB/Babel/i18n/stq.json
index 00293e91..479012c6 100644
--- a/MLEB/Babel/i18n/stq.json
+++ b/MLEB/Babel/i18n/stq.json
@@ -10,7 +10,6 @@
"babel-desc": "Föiget an ju <code>#babel</code>-Parserfunktion foar automatisk Deerstaalen fon Babel-Benutserboxen-Riegen ju Muugelkhaid tou, oaine Foarloagen ientoubienden",
"babel-url": "Project:Babel",
"babel-footer-url": ":Category:Babel - Benutsere ätter Sproake",
- "babel-autocreate-abort": "Die uutwäälde Benutsernoome wäd foar dät automatisk Moakjen fon [[$1|Babel]]-Kategorien benöödiged un kon nit registrierd wäide.",
"babel-autocreate-reason": "Automatisk moakede [[$1|Babel]]-Kategorie.",
"babel-autocreate-text-levels": "Benutsere in disse Kategorie hääbe ju Kunde-Ieuwene $1 foar ju Sproake $2.",
"babel-autocreate-text-main": "Benutsere in disse Kategorie hääbe Kunde fon ju Sproake $1.",
diff --git a/MLEB/Babel/i18n/su.json b/MLEB/Babel/i18n/su.json
index b05dbc7a..e1abbc5c 100644
--- a/MLEB/Babel/i18n/su.json
+++ b/MLEB/Babel/i18n/su.json
@@ -9,7 +9,6 @@
"babel-desc": "Nambahan fungsi parser <code>#babel</code> pikeun mintonkeun lajur babel kotak pamaké sacara otomatis jeung pangabisa ngagunakeun citakan dinamis",
"babel-url": "Project:Babel",
"babel-footer-url": ":Katégori:Babel - Kontributor dumadar basana",
- "babel-autocreate-abort": "Ngaran pamaké anu diasupkeun dipaké pikeun nyieun otomatis kategori [[$1|Babel]] sarta henteu bisa didaftarkeun.",
"babel-autocreate-reason": "Otomatis nyieun kaca kategori [[$1|Babel]].",
"babel-autocreate-text-levels": "Pamaké di kategori ieu nandakeun maranéhanana ngabogaan pangabisa $1 pikeun basa $2.",
"babel-autocreate-text-main": "Pamaké di kategori ieu nandakeun maranéhanana ngabogaan pangabisa basa $1.",
diff --git a/MLEB/Babel/i18n/sv.json b/MLEB/Babel/i18n/sv.json
index 127cc07f..b3aa70ea 100644
--- a/MLEB/Babel/i18n/sv.json
+++ b/MLEB/Babel/i18n/sv.json
@@ -9,17 +9,17 @@
"Lokal Profil",
"M.M.S.",
"Najami",
- "WikiPhoenix"
+ "WikiPhoenix",
+ "Skalman"
]
},
"babel": "Babel-användarinformation",
"babel-desc": "Lägger till parserfunktionen <code>#babel</code> för att tillåta att det automatiskt skapas en babelboxkolumn med möjligheten att lägga till anpassade mallar",
"babel-url": "Project:Babel",
"babel-footer-url": ":Kategori:Babel - Användare efter språk",
- "babel-autocreate-abort": "Användarnamnet du valde används för automatiskt skapande av [[$1|Babel]]-kategorier och kan därför inte registreras.",
"babel-autocreate-reason": "Skapar automatiskt en [[$1|Babel]]-kategorisida.",
- "babel-autocreate-text-levels": "Användare i den här kategorin visar att de kan språket $2 på en kunskapsnivå av $1.",
- "babel-autocreate-text-main": "Användare i den här kategorin visar att de har kunskap i språket $1.",
+ "babel-autocreate-text-levels": "Användare i den här kategorin indikerar att de kan språket $2 på en kunskapsnivå av $1.",
+ "babel-autocreate-text-main": "Användare i den här kategorin indikerar att de har kunskap i språket $1.",
"babel-0": "Den här användaren förstår [[$1|inte]] [[$2|$3]] (eller förstår det bara med stor svårighet).",
"babel-1": "Den här användaren har [[$1|grundläggande]] kunskaper i [[$2|$3]].",
"babel-2": "Den här användaren har [[$1|medelgoda]] kunskaper i [[$2|$3]].",
@@ -35,5 +35,9 @@
"babel-5-n": "Den här användaren har [[$1|professionella]] kunskaper i [[$2|svenska]].",
"babel-N-n": "Den här användaren har [[$2|svenska]] som [[$1|modersmål]].",
"babel-template": "Template:Användare $1",
- "babel-footer": "Användare efter språk"
+ "babel-footer": "Användare efter språk",
+ "apihelp-query+babel-description": "Hämta information om vilka språk användaren kan",
+ "apihelp-query+babel-summary": "Hämta information om vilka språk användaren kan",
+ "apihelp-query+babel-param-user": "Användare att hämta information om",
+ "apihelp-query+babel-example-1": "Hämta Babel-information för användaren <kbd>Example</kbd>"
}
diff --git a/MLEB/Babel/i18n/sw.json b/MLEB/Babel/i18n/sw.json
index 1c850abe..4e6925ee 100644
--- a/MLEB/Babel/i18n/sw.json
+++ b/MLEB/Babel/i18n/sw.json
@@ -8,7 +8,6 @@
"babel": "Maelezo ya Babeli ya mtumiaji",
"babel-url": "Project:Babeli",
"babel-footer-url": ":Jamii:Wanawikipedia lugha kwa lugha",
- "babel-autocreate-abort": "Huwezi kusajili jina la mtumiaji ulilotaja kwa sababu linatumika tayari katika shughuli ya kuanzisha jamii za [[$1|Babeli]] kiotomati.",
"babel-autocreate-reason": "Ukurasa wa jamii ya [[$1|Babeli]] unaanzishwa moja kwa moja.",
"babel-autocreate-text-levels": "Watumiaji katika jamii hii wanaonyesha kwamba wanaongea lugha ya $2 kwa kiwango cha $1.",
"babel-autocreate-text-main": "Watumiaji katika jamii hii wanadai kwamba wana ujuzi wa lugha ya $1.",
diff --git a/MLEB/Babel/i18n/szl.json b/MLEB/Babel/i18n/szl.json
index 797deef7..8d7e3a40 100644
--- a/MLEB/Babel/i18n/szl.json
+++ b/MLEB/Babel/i18n/szl.json
@@ -2,16 +2,16 @@
"@metadata": {
"authors": [
"Przemub",
- "Purodha"
+ "Purodha",
+ "Uostofchuodnego"
]
},
- "babel": "Wjeża Babel używacza",
- "babel-desc": "Wkludzuje funkcyje <code>#babel</code> kera automatyczńy tworzi wjeży Babel lo używaczy na jejich zajty.",
+ "babel": "Wieża Babel ôd używŏcza",
+ "babel-desc": "Przidŏwŏ fōnkcyjõ parsera <code>#babel</code>, coby przizwolić na autōmatycznõ gyneracyjõ rōmki z informacyjami ô gŏdkowych abo inkszych szprymach ôd używŏcza.",
"babel-url": "Project:Babel",
"babel-footer-url": "Kategoria:Wikipedysty podug godki",
- "babel-autocreate-abort": "Mjano używacza kere podałżeś je używane lo Wjeży [[$1|Babel]] a ńy może być zaregistrowane.",
"babel-autocreate-reason": "Zajta kategoryji [[$1|Wjeży Babel]]",
- "babel-autocreate-text-levels": "Używacze kerzi sům w tej kategoryji poradzům godać w godce $2 na poźome $1.",
+ "babel-autocreate-text-levels": "Używŏcze we tyj kategoryji ôznŏczyli swoje szprymy we gŏdce $2 za $1.",
"babel-autocreate-text-main": "Używacze kerzi sům w tej kategoryji poradzům godać w godce $1.",
"babel-0": "Tyn użytkowńik [[$1|ńy godo]] w godce [[$2|$3]] (abo mo s ńům wjelge trudnośći).",
"babel-1": "Tyn użytkowńik wjy ino [[$1|źdźebko]] godke [[$2|$3]].",
diff --git a/MLEB/Babel/i18n/ta.json b/MLEB/Babel/i18n/ta.json
index 48cd7021..1f537a41 100644
--- a/MLEB/Babel/i18n/ta.json
+++ b/MLEB/Babel/i18n/ta.json
@@ -13,7 +13,6 @@
"babel-desc": "தனிப்பட்ட வார்ப்புருக்கள் உள்ளடக்கங்களாக தானியக்கமாக பாபேல் பயனர் பெட்டிகளை ஆக்குவதை முடுக்கும் வகையில் <code>#babel</code> இலக்கணப் பாகுபடுத்தி சார்பை இணைக்கிறது.",
"babel-url": "Project:பாபேல்",
"babel-footer-url": ": வகை: Babel - பயனீட்டாளர்கள் மொழி மூலம்.",
- "babel-autocreate-abort": "தாங்கள் குறிப்பிட்ட பயனர் பெயர் [[$1|Babel]] பகுப்பில் பயன்படுத்தப்படும் மேலும் தாங்கள் இதைவைத்து பதிவு செய்யமுடியாது.",
"babel-autocreate-reason": "தானியக்கமாக [[$1|Babel]] பகுப்பு பக்கம் உருவாக்கபடுகிறது.",
"babel-autocreate-text-levels": "இப்பகுப்பில் உள்ள பயனர்கள் $2 மொழியில் $1 அளவுக்கு திறமை படைத்தவர்கள் என்பதனைக் குறிப்பிடுகிறது.",
"babel-autocreate-text-main": "இப்பகுப்பில் உள்ள பயனர்கள் $1 மொழியறிவை படைத்தவர்கள் என்பதனைக் குறிப்பிடுகிறது.",
diff --git a/MLEB/Babel/i18n/te.json b/MLEB/Babel/i18n/te.json
index 0060c73b..f7dba2cd 100644
--- a/MLEB/Babel/i18n/te.json
+++ b/MLEB/Babel/i18n/te.json
@@ -10,7 +10,6 @@
"babel-desc": "<code>#babel</code> పార్సరు ఫంక్సనుని కలపటం ద్వారా, బేబెల్ వాడుకరి పెట్టెల వరుసలో, ఇతర మూసలను కూడా జతపరచగలిగేటటు సృష్టిస్తుంది",
"babel-url": "Project:బేబెల్",
"babel-footer-url": ":Category:Babel - భాషల వారీగా వాడుకరులు",
- "babel-autocreate-abort": "మీరు పేర్కొన్న వాడుకరిపేరుని ఆటోమెటిగ్గా [[$1|బేబెల్]] వర్గాలని సృష్టించడానికి ఉపయోగిస్తారు కనుక ఆ పేరుతో నమోదు చేసుకోలేరు.",
"babel-autocreate-reason": "[[$1|బేబెల్]] వర్గ పుటని ఆటోమాటిగ్గా సృష్టిస్తున్నాము.",
"babel-autocreate-text-levels": "ఈ వర్గం లోని వాడుకరులు తమకు $2 భాషలో $1 స్థాయి నైపుణ్యం ఉంది అని తెలిపారు.",
"babel-autocreate-text-main": "ఈ వర్గం లోని వాడుకరులు తమకు $1 భాష తెలుసునని తెలిపారు.",
diff --git a/MLEB/Babel/i18n/tg-cyrl.json b/MLEB/Babel/i18n/tg-cyrl.json
index 5fa5be7e..de71a642 100644
--- a/MLEB/Babel/i18n/tg-cyrl.json
+++ b/MLEB/Babel/i18n/tg-cyrl.json
@@ -2,14 +2,23 @@
"@metadata": {
"authors": [
"Ibrahim",
- "ZxxZxxZ"
+ "ZxxZxxZ",
+ "Curasao"
]
},
"babel": "Иттилооти Корбари Бобул",
"babel-desc": "Дастури таҷзеҳгарро <code>#babel</code> изофа мекунад, ки имкони эҷоди худкори ҷаъбаҳои коргарии бобул бо қобилияти ғунҷонидани шаблонҳои дихоҳро фароҳам мекунад",
"babel-url": "Project:Бобул",
+ "babel-footer-url": ":Гурӯҳ:Бобил - корбарон ба забонҳо",
+ "babel-autocreate-reason": "Сохтани автоматӣ саҳифаи гурӯҳӣ [[$1|Бобил]].",
+ "babel-autocreate-text-levels": "Корбарон дар ин гурӯҳ нишон медиҳандки, дар унҳо ҳунарӣ $1 барои забони $2 ҳаст.",
+ "babel-autocreate-text-main": "Корбарони ин гурӯҳ нишон медиҳанд дониши забони $1.",
"babel-0": "Ин корбар [[$2|$3]]ро [[$1|намефаҳмад]] (ё онро бо душворӣ мефаҳмад).",
"babel-1": "Ин корбар [[$2|$3]]ро дар сатҳи [[$1|муқаддамотӣ]] мефаҳмад.",
"babel-2": "Ин корбар [[$2|$3]]ро дар сатҳи [[$1|миёна]] мефаҳмад.",
- "babel-4": "Корбари мазкур ба '''[[$2|тоҷикӣ]]''' дар сатҳи '''[[$1|хуб]]''' монанди қариб забони модариаш медонад."
+ "babel-3": "[[$2|$3]] — [[$1|бо сатҳи дониши озоди]]",
+ "babel-4": "Корбари мазкур ба '''[[$2|тоҷикӣ]]''' дар сатҳи '''[[$1|хуб]]''' монанди қариб забони модариаш медонад.",
+ "babel-5": "[[$2|$3]] — [[$1|бо сатҳи дониши олии]]",
+ "babel-N": "[[$2|$3]] — [[$1|забони модари]]",
+ "babel-N-n": "Забони [[$1|модарии]] ин корбар [[$2|тоҷикӣ]] аст."
}
diff --git a/MLEB/Babel/i18n/th.json b/MLEB/Babel/i18n/th.json
index 9dc8d7c1..05da442c 100644
--- a/MLEB/Babel/i18n/th.json
+++ b/MLEB/Babel/i18n/th.json
@@ -11,7 +11,6 @@
"babel-desc": "ใส่ฟังก์ชัน <code>#babel</code> เพื่อที่จะใส่คอลัมน์กล่องผู้ใช้บาเบลอัตโนมัติ รวมทั้งความสามารถที่จะใส่แม่แบบที่ต้องการได้ด้วย",
"babel-url": "Project:บาเบล",
"babel-footer-url": ":หมวดหมู่:บาเบล - ผู้ใช้ตามภาษา",
- "babel-autocreate-abort": "ผู้้้ใช้ที่คุณระบุถูกใช้ในการสร้างหน้าหมวดหมู่[[$1|บาเบล]]อัตโนมัติ และไม่สามารถสมัครได้",
"babel-autocreate-reason": "สร้างหน้าหมวดหมู่[[$1|บาเบล]]อัตโนมัติ",
"babel-autocreate-text-levels": "ผู้ใช้ในหมวดหมู่นี้ มีทักษะในการใช้ภาษา$2 ในระดับที่ $1",
"babel-autocreate-text-main": "ผู้ใช้ในหมวดหมมู่นี้ มีความรู้เกี่ยวกับภาษา$1",
diff --git a/MLEB/Babel/i18n/tk.json b/MLEB/Babel/i18n/tk.json
index 3b74cf0b..9e823f1b 100644
--- a/MLEB/Babel/i18n/tk.json
+++ b/MLEB/Babel/i18n/tk.json
@@ -7,7 +7,6 @@
"babel": "Babyl ulanyjy maglumaty",
"babel-desc": "Ýörite şablonlary öz içine almak häsiýeti bar bolan Babyl ulanyjy gutusy sütüniniň awtomatik usulda döredilmegi üçin <code>#babel</code> parser funksiýasyny goşýar",
"babel-url": "Project:Babyl",
- "babel-autocreate-abort": "Görkezen ulanyjy adyňyz [[$1|Babyl]] kategoriýasynyň awtomatik usulda döredilmeginde ulanylýar we ony alyp bolmaýar.",
"babel-autocreate-reason": "Awtomatik usulda [[$1|Babyl]] kategoriýa sahypasy döredilýär.",
"babel-autocreate-text-levels": "Bu kategoriýadaky ulanyjylar $1 derejede $2 dilini bilýändiklerini görkezýär.",
"babel-autocreate-text-main": "Bu kategoriýadaky ulanyjylar $1 dilini bilýändiklerini görkezýär.",
diff --git a/MLEB/Babel/i18n/tl.json b/MLEB/Babel/i18n/tl.json
index 0a01e8f4..a9e55abe 100644
--- a/MLEB/Babel/i18n/tl.json
+++ b/MLEB/Babel/i18n/tl.json
@@ -8,7 +8,6 @@
"babel-desc": "Nagdaragdag ng tungkuling pambanghay (''parser'') na <code>#babel</code> para payagan ang kusang paglitaw ng isang hanay sa kahong pantagagamit ng babel na may kakayahang magsali ng nakahandang mga suleras",
"babel-url": "Project:Babel",
"babel-footer-url": ":Category:Babel - Mga tagagamit ayon sa wika",
- "babel-autocreate-abort": "Ang tinukoy mong pangalan ng tagagamit ay ginagamit para sa kusang paglikha ng kauriang pam-[[$1|Babel]] at hindi maitatala.",
"babel-autocreate-reason": "Kusang lumilikha ng pahina ng kauriang pam-[[$1|Babel]].",
"babel-autocreate-text-levels": "Nagpapakita na may kakayahang pang-antas $1 sa wikang $2 ang mga tagagamit na nasa kauriang ito.",
"babel-autocreate-text-main": "Nagpapakitang may kaalaman sa wikang $1 ang mga tagagamit na nasa kauriang ito.",
diff --git a/MLEB/Babel/i18n/tly.json b/MLEB/Babel/i18n/tly.json
index c6d3b2fa..6123debb 100644
--- a/MLEB/Babel/i18n/tly.json
+++ b/MLEB/Babel/i18n/tly.json
@@ -10,7 +10,6 @@
"babel-desc": "Ziyod kardeydə analiz kardey funksiyə <code>#babel</code>, haşteydə avtomatik ofəye sun de zıvonon barədə məlumoti iyən de mımkunoti co ğəlibon daxıl karde",
"babel-url": "Project:Babil",
"babel-footer-url": ":Category:Babil- iştirokəkon zıvononədə",
- "babel-autocreate-abort": "Nişo doə bıə iştirokəkə nom oko beydə bo [[$1|Babil]] tispiron avtomatik ofəye iyən nıbəzne ğeyd be.",
"babel-autocreate-reason": "Səhifə avtomatik ofəye [[$1|Babil]] tispirədə.",
"babel-autocreate-text-levels": "İştirokəkon çe ın tispiriku işorә kardəşone zınəyon səviyyə $1 bo zıvoni $2.",
"babel-autocreate-text-main": "İştirokəkon bı tispirədə zıvoni zınəy işorə kardəşone $1.",
diff --git a/MLEB/Babel/i18n/tokipona.json b/MLEB/Babel/i18n/tokipona.json
deleted file mode 100644
index 4dc9dace..00000000
--- a/MLEB/Babel/i18n/tokipona.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Purodha"
- ]
- },
- "babel-0": "jan ni li [[$1|toki ala]] e [[$2|$3]].",
- "babel-1": "jan ni li [[$1|toki lili]] e [[$2|$3]].",
- "babel-2": "jan ni li [[$1|toki]] e [[$2|$3]].",
- "babel-3": "jan ni li [[$1|toki pona]] e [[$2|$3]].",
- "babel-4": "jan ni li [[$1|toki pona mute]] e [[$2|$3]].",
- "babel-N": "[[$1|tenpo ona ali]] la jan ni li toki e [[$2|$3]].",
- "babel-0-n": "jan ni li [[$1|toki ala]] e [[$2|toki pona]].",
- "babel-1-n": "jan ni li [[$1|toki lili]] e [[$2|toki pona]].",
- "babel-2-n": "jan ni li [[$1|toki]] e [[$2|toki pona]].",
- "babel-3-n": "jan ni li [[$1|toki pona]] e [[$2|toki pona]].",
- "babel-4-n": "jan ni li [[$1|toki pona mute]] e [[$2|toki pona]].",
- "babel-N-n": "[[$1|tenpo ona ali]] la jan ni li toki e [[$2|toki pona]]."
-}
diff --git a/MLEB/Babel/i18n/tr.json b/MLEB/Babel/i18n/tr.json
index 8c236a13..7464c4fb 100644
--- a/MLEB/Babel/i18n/tr.json
+++ b/MLEB/Babel/i18n/tr.json
@@ -12,7 +12,6 @@
"babel-desc": "Özel şablonlar içerme özelliği olan Babil kullanıcı kutusu sütununun otomatik oluşturulması için <code>#babel</code> derleyici fonksiyonunu ekler",
"babel-url": "Project:Babil",
"babel-footer-url": ":Kategori:Babil - dillere göre kullanıcılar",
- "babel-autocreate-abort": "Belirttiğiniz kullanıcı adı [[$1|Babil]] kategorisinin otomatik oluşturulması için kullanılıyor ve alınamaz.",
"babel-autocreate-reason": "Otomatik olarak [[$1|Babil]] kategori sayfası oluşturuluyor.",
"babel-autocreate-text-levels": "Bu kategorideki kullanıcılar $1 seviyede $2 dilini bildiklerini belirtiyor.",
"babel-autocreate-text-main": "Bu kategorideki kullanıcılar $1 dilini bildiklerini belirtiyor.",
diff --git a/MLEB/Babel/i18n/ts.json b/MLEB/Babel/i18n/ts.json
index 74bc5dff..e61b07f6 100644
--- a/MLEB/Babel/i18n/ts.json
+++ b/MLEB/Babel/i18n/ts.json
@@ -8,7 +8,6 @@
"babel-desc": "Yi engetela <code>#babel</code> xiangarhi lexi pfumelelaka xipfuneti kutumbuluxa xirhapa eka bokisa ramutirhisi ra Babele lexi kotaka ku nghenisa swivumbiwa-ntirho leswi tolovelekeke",
"babel-url": "Project:Babele",
"babel-footer-url": ":Category:Babele - Vatirhisi kuya hiririmi",
- "babel-autocreate-abort": "Vito ra mutirhisi leri u ritsaleke ritirhiseriwa xiyenge [[$1|xa Babele]] lexititumbulukelaka naswona aritsariseki.",
"babel-autocreate-reason": "Tluka ra ntlawa [[$1|wa Babel]] ratitumbuluxa.",
"babel-autocreate-text-levels": "Vatirhisi eka ntlawa lowu vana vuthsila bya $1 eka ririmi ra xi $2.",
"babel-autocreate-text-main": "Vatirhisi eka ntlawa lowu vana vutivi bya ririmi ra xi $1.",
diff --git a/MLEB/Babel/i18n/tt-cyrl.json b/MLEB/Babel/i18n/tt-cyrl.json
index 8876fd1d..830c8fd0 100644
--- a/MLEB/Babel/i18n/tt-cyrl.json
+++ b/MLEB/Babel/i18n/tt-cyrl.json
@@ -6,7 +6,12 @@
]
},
"babel": "Катнашучының телләр белү турындагы мәгълумат",
+ "babel-desc": "Кулланучы белгән телләр буенча автоматик калып ясаучы парсер <code>#babel</code> коралын өсти.",
"babel-url": "Project:Вавилон",
+ "babel-footer-url": ":Category:Телләр буенча кулланучылар",
+ "babel-autocreate-reason": "[[$1|Вавилон]] төркемендә автоматик бит ясау.",
+ "babel-autocreate-text-levels": "Әлеге төркемдәге кулланучылар «$2» телен $1 дәрәҗәдә белүен күрсәткән.",
+ "babel-autocreate-text-main": "Әлеге төркемдәге кулланучылар «$1» телен белүен күрсәткән.",
"babel-0": "[[$2|$3]] — [[$1|белми]] (яисә бөтенләй дә аңламый)",
"babel-1": "[[$2|$3]] — [[$1|башлангыч]] дәрәҗә.",
"babel-2": "[[$2|$3]] — [[$1|уратача]] дәрәҗә.",
@@ -20,5 +25,6 @@
"babel-3-n": "Бу кулланучы [[$2|татарча]] [[$1|ирекле дәрәҗәдә]] сөйләшә.",
"babel-4-n": "Бу кулланучы [[$2|татарча]] [[$1|бик әйбәт]] белә.",
"babel-5-n": "Бу кулланучы [[$2|татарча]] [[$1|һөнәри дәрәҗәдә]] белә.",
- "babel-N-n": "Бу кулланучы өчен [[$2|татар теле]] [[$1|туган тел]]."
+ "babel-N-n": "Бу кулланучы өчен [[$2|татар теле]] [[$1|туган тел]].",
+ "babel-footer": "Телләр буенча кулланучылар"
}
diff --git a/MLEB/Babel/i18n/tt.json b/MLEB/Babel/i18n/tt.json
index dbae801e..c42a4c1e 100644
--- a/MLEB/Babel/i18n/tt.json
+++ b/MLEB/Babel/i18n/tt.json
@@ -1,19 +1,19 @@
{
- "@metadata": {
- "authors": [
- "Ильнар"
- ]
- },
- "babel-autocreate-text-main": "Бу төркемдәге кулланучылар үзләренең $1 белүләрен күрсәтәләр.",
- "babel-0": "Бу кулланучы [[$1|белми]] яисә [[$2|$3]] бөтенләй дә аңламый.",
- "babel-1": "Бу кулланучы [[$2|$3]] [[$1|башлангыч]] дәрәҗәдә белә.",
- "babel-5": "[[$2|$3]] — [[$1|һөнәри дәрәҗәдә]] белә.",
- "babel-N": "[[$2|$3]] — [[$1|туган теле]]",
- "babel-0-n": "Бу кулланучы [[$2|татарча]] [[$1|белми]] (яисә бөтенләй дә аңламый).",
- "babel-1-n": "Бу кулланучы [[$2|татарча]] [[$1|башлангыч дәрәҗәдә]] белә.",
- "babel-2-n": "Бу кулланучы [[$2|татарча]] [[$1|уртача дәрәҗәдә]] белә.",
- "babel-3-n": "Бу кулланучы [[$2|татарча]] [[$1|ирекле дәрәҗәдә]] сөйләшә.",
- "babel-4-n": "Бу кулланучы [[$2|татарча]] [[$1|бик әйбәт]] белә.",
- "babel-5-n": "Бу кулланучы [[$2|татарча]] [[$1|һөнәри дәрәҗәдә]] белә.",
- "babel-N-n": "Бу кулланучы өчен [[$2|татар теле]] [[$1|туган тел]]."
+ "@metadata": {
+ "authors": [
+ "Ильнар"
+ ]
+ },
+ "babel-autocreate-text-main": "Бу төркемдәге кулланучылар үзләренең $1 белүләрен күрсәтәләр.",
+ "babel-0": "Бу кулланучы [[$1|белми]] яисә [[$2|$3]] бөтенләй дә аңламый.",
+ "babel-1": "Бу кулланучы [[$2|$3]] [[$1|башлангыч]] дәрәҗәдә белә.",
+ "babel-5": "[[$2|$3]] — [[$1|һөнәри дәрәҗәдә]] белә.",
+ "babel-N": "[[$2|$3]] — [[$1|туган теле]]",
+ "babel-0-n": "Бу кулланучы [[$2|татарча]] [[$1|белми]] (яисә бөтенләй дә аңламый).",
+ "babel-1-n": "Бу кулланучы [[$2|татарча]] [[$1|башлангыч дәрәҗәдә]] белә.",
+ "babel-2-n": "Бу кулланучы [[$2|татарча]] [[$1|уртача дәрәҗәдә]] белә.",
+ "babel-3-n": "Бу кулланучы [[$2|татарча]] [[$1|ирекле дәрәҗәдә]] сөйләшә.",
+ "babel-4-n": "Бу кулланучы [[$2|татарча]] [[$1|бик әйбәт]] белә.",
+ "babel-5-n": "Бу кулланучы [[$2|татарча]] [[$1|һөнәри дәрәҗәдә]] белә.",
+ "babel-N-n": "Бу кулланучы өчен [[$2|татар теле]] [[$1|туган тел]]."
} \ No newline at end of file
diff --git a/MLEB/Babel/i18n/ttt.json b/MLEB/Babel/i18n/ttt.json
index 764600cd..56a3e1c0 100644
--- a/MLEB/Babel/i18n/ttt.json
+++ b/MLEB/Babel/i18n/ttt.json
@@ -1,7 +1,8 @@
{
"@metadata": {
"authors": [
- "Erdemaslancan"
+ "Erdemaslancan",
+ "Gırd"
]
},
"babel": "Zonoşe babila karwani",
@@ -11,14 +12,14 @@
"babel-2": "Va karwan [[$1|hol]] zonon [[$2|$3]].",
"babel-3": "Va karwan [[$1|Zehef]] zonon [[$2|$3]].",
"babel-4": "Va karwan [[$1|Zey zon]] dê co [[$2|$3]].",
- "babel-5": "Va karwan [[$1|tor zehf]] sewiyon de [[$2|$3]] zonon.",
+ "babel-5": "No karber sewiya [[$1|profesonal]]e dı [[$2|$3]] zano.",
"babel-N": "[[$1|Zone mordon]] va karwani [[$2|$3]].",
"babel-0-n": "Va karwan nê zoni ya [[$1|hêç]] nozone yonne [[$2|$3]] (fehem keron feqet vat nezonon).",
"babel-1-n": "Va karwan [[$1|teynekon]] [[$2|Tatiki]] zonon.",
"babel-2-n": "[[$2|Tatikiya]] va karwani [[$1|holon]].",
"babel-3-n": "Va karwan [[$1|voş]] [[$2|tatiki]] zonon.",
"babel-4-n": "Va karwan [[$2|Tatiki]] zey [[$1|zoy zondo morda]] xo zonon.",
- "babel-5-n": "Va karwan [[$1|tor zehf]] sewiyon de [[$2|Tatiki]] zonon.",
+ "babel-5-n": "No karber sewiya [[$1|profesyonale]] dı [[$2|Tatiki]] zano.",
"babel-N-n": "[[$1|Zone mordon]] va karwani [[$2|Tatikiyon]].",
"babel-footer": "Zon dehon karwan"
}
diff --git a/MLEB/Babel/i18n/tyv.json b/MLEB/Babel/i18n/tyv.json
index 2f8e25be..1f8eaceb 100644
--- a/MLEB/Babel/i18n/tyv.json
+++ b/MLEB/Babel/i18n/tyv.json
@@ -2,14 +2,15 @@
"@metadata": {
"authors": [
"Agilight",
- "Sborsody"
+ "Sborsody",
+ "Монгуш Салим"
]
},
- "babel": "Вавилон киржикчиниң дугайында медеглел",
+ "babel": "Вавилоннуң киржикчилериниң дугайында медээ (Вавилон)",
"babel-desc": "Өске шаблоннар киирер магалыг дылдар дугайында колонкалар кылыр Парсер функциязын <code>#babel</code> немээри.",
"babel-url": "Project:Вавилон",
- "babel-footer-url": ":Category:Дылдарга чарган киржикчилер",
- "babel-autocreate-reason": "[[$1|Вавилон]] деп бөлүктүң арынын авто-чаяары.",
+ "babel-footer-url": ":Аңгылал:{{ns:Project}}:Дылдарга чарган киржикчилер",
+ "babel-autocreate-reason": "[[$1|Вавилон]] категориялыг чаа арынны кылыры",
"babel-autocreate-text-levels": "Бо бөлүктүң киржикчилери $2 дылга билиглериниң бедиин $1 хире деп айтыкан.",
"babel-autocreate-text-main": "Бо бөлүктүң киржикчилери дылының билиглериниң бедиин $1 хире деп айтыкан.",
"babel-0": "[[$2|$3]] — [[$1|билбес]] (азы багай билир)",
@@ -26,5 +27,5 @@
"babel-4-n": "Киржикчиниң [[$2|тывалаары]] [[$1| төрээн чыгам]].",
"babel-5-n": "Киржикчи [[$1|профессионал]] [[$2|тывалаар]]",
"babel-N-n": "Киржикчиге [[$2|Тыва дыл]] — [[$1|төрээн дыл]].",
- "babel-footer": "Дылдарга чарган киржикчилер\n\nКиржикчилер даңзылары дыл коду ёзугаар хуваатынган.<br />\nКандыг-бир очулга кылыр дээр болзуңарза, өске дылдан очулдурарда [[Википедия:Очулга дилеглери]] аңгылалды көрүңер, азы кыска сөзүглел очулдурарда [[Википедия:Төндүрбээн очулга]] аңгылалын көрүңер.\n\nДылдар майыктары дугайында моон көрүңер: [[Википедия:Вавилон]] база [[Киржикчилер майыктары:Дылдар ёзугаар]].\n{{Commonscat|Wikipedians}}\n\n[[Аңгылал:Википедия:Киржикчилер|Дылдар]]\n[[Аңгылал:Википедия:Киржикчилер, мергежили ёзугаар]]"
+ "babel-footer": "Киржикчилер, дыл аайы-биле"
}
diff --git a/MLEB/Babel/i18n/udm.json b/MLEB/Babel/i18n/udm.json
index 75e800b2..42eb1e05 100644
--- a/MLEB/Babel/i18n/udm.json
+++ b/MLEB/Babel/i18n/udm.json
@@ -2,9 +2,15 @@
"@metadata": {
"authors": [
"Kaganer",
- "Purodha"
+ "Purodha",
+ "Irus",
+ "Wadorgurt"
]
},
"babel-url": "Project:Вавилон",
+ "babel-autocreate-reason": "[[$1|Вавилон]] категорилэсь бамзэ автоматической кылдытон.",
+ "babel-autocreate-text-levels": "Та категорие пырись викиавторъёс дунъязы $1 уровеньлы «$2» кылэз тодон-валанзэс.",
+ "babel-autocreate-text-main": "Та категорие пырись викиавторъёс пусйизы асьсэлэсь «$1» кылэз тодон-валанзэс.",
+ "babel-autocreate-user": "Babel AutoCreate",
"babel-footer": "Викиавторъёс кылъёссыя"
}
diff --git a/MLEB/Babel/i18n/ug-arab.json b/MLEB/Babel/i18n/ug-arab.json
index ae46a686..8fe7bd5b 100644
--- a/MLEB/Babel/i18n/ug-arab.json
+++ b/MLEB/Babel/i18n/ug-arab.json
@@ -9,7 +9,6 @@
"babel-desc": "ئانالىز فۇنكىسىيىسى <code>#babel</code> نى قوشسىڭىز، شەخسىي قېلىپقا ئاپتوماتىك ھالدا بابىل ئىشلەتكۈچىلەر رامكىسىنى شەكىللەندۈرۈپ بېرىدۇ.",
"babel-url": "Project:بابىل",
"babel-footer-url": ":تۈر:بابىل - ئىشلەتكۈچىلەر تىلى بويىچە",
- "babel-autocreate-abort": "سىز كىرگۈزگەن ئىشلەتكۈچى نامى [[$1|بابىل]] تۈرىنى ئاپتوماتىك قۇرۇش ئۈچۈن ئىشلىتىلگەن ۋە تىزىملىتالمايسىز.",
"babel-autocreate-reason": "[[$1|بابىل]] تۈرىنى ئاپتوماتىك قۇرۇش.",
"babel-autocreate-text-levels": "بۇ تۈردىكى ئىشلەتكۈچىلەر $2 تىلىنى $1 سەۋىيىدە بىلىدىغانلىقىنى كۆرسىتىدۇ.",
"babel-autocreate-text-main": "بۇ تۈردىكى ئىشلەتكۈچىلەر $1 تىلىنى بىلىدىغانلىقىنى كۆرسىتىدۇ.",
diff --git a/MLEB/Babel/i18n/uk.json b/MLEB/Babel/i18n/uk.json
index f5c14071..d18d0621 100644
--- a/MLEB/Babel/i18n/uk.json
+++ b/MLEB/Babel/i18n/uk.json
@@ -9,14 +9,15 @@
"Microcell",
"Olvin",
"Sodmy",
- "Тест"
+ "Тест",
+ "Ата",
+ "Piramidion"
]
},
- "babel": "Відомості про мови учасника (Вавилон)",
+ "babel": "Відомості про мови користувача (Вавилон)",
"babel-desc": "Додає функцію парсера <code>#babel</code>, яка дозволяє автоматично створювати стовпець про володіння мовами з можливістю включення інших шаблонів",
"babel-url": "Project:Вавилон",
"babel-footer-url": ":Category:Користувачі за мовою",
- "babel-autocreate-abort": "Зазначене ім'я користувача використовується для автоматичного створення категорій [[$1|Babel]] і не може бути зареєстровано.",
"babel-autocreate-reason": "Автоматичне створення сторінки категорії [[$1|Вавилон]].",
"babel-autocreate-text-levels": "Користувачі із цієї категорії вказали рівень знань $1 для мови $2.",
"babel-autocreate-text-main": "Користувачі в цій категорії вказали знання мови $1.",
@@ -35,5 +36,9 @@
"babel-5-n": "{{GENDER:$4|Цей користувач|Ця користувачка}} [[$1|професійно]] володіє [[$2|українською мовою]].",
"babel-N-n": "Для {{GENDER:$4|цього користувача|цієї користувачки}} [[$2|українська мова]] є [[$1|рідною]].",
"babel-template": "Template:User $1",
- "babel-footer": "Користувачі за мовою"
+ "babel-footer": "Користувачі за мовою",
+ "apihelp-query+babel-description": "Отримати інформацію про мови, якими володіє користувач",
+ "apihelp-query+babel-summary": "Отримати інформацію про те, якими мовами володіє користувач",
+ "apihelp-query+babel-param-user": "Користувач, про якого отримати інформацію",
+ "apihelp-query+babel-example-1": "Отримати Babel-інформацію про користувача <kbd>Example</kbd>"
}
diff --git a/MLEB/Babel/i18n/ur.json b/MLEB/Babel/i18n/ur.json
index f2f9cfd8..12c9c5bf 100644
--- a/MLEB/Babel/i18n/ur.json
+++ b/MLEB/Babel/i18n/ur.json
@@ -6,29 +6,30 @@
"Noor2020",
"محبوب عالم",
"Hindustanilanguage",
- "Stryn"
+ "Stryn",
+ "عرفان ارشد",
+ "Muhammad Shuaib"
]
},
- "babel": "بابل معلوماتِ صارف",
- "babel-url": "منصوبہ: بابل",
+ "babel": "بابل معلومات صارف",
+ "babel-url": "Project:بابل",
"babel-footer-url": ":زمرہ:بابل - صارفین بلحاظ زبان",
- "babel-autocreate-abort": "آپ کا مختص کردہ صارف کا نام خودکار [[$1|بابل]] زمرہ تخلیق کیلئے مستعمل ہے اور یہ درج نہیں کیا جاسکتا.",
- "babel-autocreate-reason": "[[$1|بابل]] زمرہ‌جاتی صفحہ کی خودکار تخلیق ہورہی ہے.",
- "babel-autocreate-text-levels": "اِس زمرہ کے صارفین یہ نشاندہی کرتے ہیں کہ $2 زبان کیلئے اُن کی مہارتی سطح $1 ہے.",
- "babel-autocreate-text-main": "اِس زمرہ کے صارفین یہ نشاندہی کرتے ہیں کہ وہ $1 زبان کا علم رکھتے ہیں.",
- "babel-0": "یہ صارف [[$2|اردو]] [[$1|نہیں]] جانتا (یا اِسے کافی مشکل سے سمجھتا ہے).",
- "babel-1": "یہ صارف [[$2|اردو]] کا [[$1|بنیادی]] علم رکھتا ہے.",
- "babel-2": "یہ صارف [[$2|اردو]] کا [[$1|متوسط]] علم رکھتا ہے.",
- "babel-3": "یہ صارف [[$2|اردو]] کا [[$1|اعلیٰ]] علم رکھتا ہے.",
- "babel-4": "یہ صارف [[$2|اردو]] کا [[$1|پیدائشی بولنے والے کے قریب]] علم رکھتا ہے.",
- "babel-5": "یہ صارف [[$2|اردو]] کا [[$1|پیشہ‌ورانہ]] علم رکھتا ہے.",
- "babel-N": "یہ صارف [[$2|اردو]] کا [[$1|پیدائشی]] متکلم ہے.",
- "babel-0-n": "یہ صارف [[$2|اردو]] [[$1|نہیں]] جانتا (یا اِسے کافی مشکل سے سمجھتا ہے).",
- "babel-1-n": "یہ صارف [[$2|اردو]] کا [[$1|بنیادی]] علم رکھتا ہے.",
- "babel-2-n": "یہ صارف [[$2|اردو]] کا [[$1|متوسط]] علم رکھتا ہے.",
- "babel-3-n": "یہ صارف [[$2|اردو]] کا [[$1|اعلیٰ]] علم رکھتا ہے.",
- "babel-4-n": "یہ صارف [[$2|اردو]] کے بارے میں [[$1|پیدائشی متکلم]] کے قریب قریب دانش رکھتا ہے.",
- "babel-5-n": "یہ صارف [[$2|اردو]] کا [[$1|پیشہ ورانہ]] دانش رکھتا ہے.",
- "babel-N-n": "یہ صارف [[$2|اردو]] کا [[$1|پیدائشی متکلم]] ہے.",
- "babel-footer": "زبان کے اعتبار سے صارف"
+ "babel-autocreate-reason": "[[$1|بابل]] کے زمروں کی خودکار تخلیق ہو رہی ہے۔",
+ "babel-autocreate-text-levels": "اِس زمرہ کے صارفین $2 زبان میں $1 درجہ کی مہارت رکھتے ہیں۔",
+ "babel-autocreate-text-main": "اس زمرے میں موجود صارفین $1 سے واقفیت رکھتے ہیں۔",
+ "babel-0": "یہ صارف [[$2|$3]] سے [[$1|نابلد]] ہے (یا اسے مشکل سے سمجھ پاتا ہے)۔",
+ "babel-1": "یہ صارف [[$2|$3]] کا [[$1|بنیادی]] علم رکھتا ہے۔",
+ "babel-2": "یہ صارف [[$2|$3]] کا [[$1|متوسط]] علم رکھتا ہے۔",
+ "babel-3": "اس صارف کو [[$2|$3]] سے [[$1|خاصی]] واقفیت ہے۔",
+ "babel-4": "اس صارف کو [[$2|$3]] سے [[$1|تقریباً مادری زبان]] کے درجہ کی واقفیت ہے۔",
+ "babel-5": "یہ صارف [[$2|$3]] کا [[$1|پیشہ ورانہ]] علم رکھتا ہے۔",
+ "babel-N": "[[$2|$3]] اس صارف کی [[$1|مادری زبان]] ہے۔",
+ "babel-0-n": "یہ صارف [[$2|اردو]] سے [[$1|نابلد]] ہے (یا اسے مشکل سے سمجھ پاتا ہے)۔",
+ "babel-1-n": "یہ صارف [[$2|اردو]] کا [[$1|بنیادی]] علم رکھتا ہے۔",
+ "babel-2-n": "یہ صارف [[$2|اردو]] کا [[$1|متوسط]] علم رکھتا ہے۔",
+ "babel-3-n": "اس صارف کو [[$2|اردو]] سے [[$1|خاصی]] واقفیت ہے۔",
+ "babel-4-n": "اس صارف کو [[$2|اردو]] سے [[$1|تقریباً مادری زبان]] کے درجہ کی واقفیت ہے۔",
+ "babel-5-n": "یہ صارف [[$2|اردو]] کا [[$1|پیشہ ورانہ]] علم رکھتا ہے۔",
+ "babel-N-n": "[[$2|اردو]] اس صارف کی [[$1|مادری زبان]] ہے۔",
+ "babel-footer": "صارفین بلحاظ زبان"
}
diff --git a/MLEB/Babel/i18n/uz.json b/MLEB/Babel/i18n/uz.json
index d3356779..0eebb7c2 100644
--- a/MLEB/Babel/i18n/uz.json
+++ b/MLEB/Babel/i18n/uz.json
@@ -3,17 +3,17 @@
"authors": [
"Nataev",
"Purodha",
- "Sociologist"
+ "Sociologist",
+ "Ximik1991"
]
},
"babel": "Foydalanuvchi bilgan tillar haqida maʼlumot (Bobil)",
"babel-desc": "Avtomatik ravishda tillar haqida oʻzgartirsa boʻladigan maʼlumot ustunini yaratadigan <code>#babel</code> parseri funksiyasini qoʻshadi",
"babel-url": "Project:Bobil",
"babel-footer-url": ":Category:Bobil - Foydalanuvchilar tillar boʻyicha",
- "babel-autocreate-abort": "Siz koʻrsatgan foydalanuvchi nomi avtomatik ravishda [[$1|Bobil]] turkumlarini yaratish uchun qoʻllaniladi va uni qayd qilsa boʻlmaydi.",
"babel-autocreate-reason": "Avtomatik ravishda [[$1|Bolbil]] turkum sahifasini yaratish.",
"babel-autocreate-text-levels": "Bu turkumdagi foydalanuvchilar $2 til uchun $1 bilim darajasini koʻrsatishgan.",
- "babel-autocreate-text-main": "Bu turkumdagi foydalanuvchilar $1 tilni bilishlarini koʻrsatishgan.",
+ "babel-autocreate-text-main": "Bu turkumdagi foydalanuvchilar $1 tilini bilishlarini koʻrsatishgan.",
"babel-0": "[[$2|$3]] — [[$1|bilmaydi]] (yoki qiyinchilik bilan tushunadi)",
"babel-1": "[[$2|$3]] — [[$1|boshlangʻich daraja]]",
"babel-2": "[[$2|$3]] — [[$1|oʻrtacha daraja]]",
diff --git a/MLEB/Babel/i18n/vec.json b/MLEB/Babel/i18n/vec.json
index a7363576..386dbe74 100644
--- a/MLEB/Babel/i18n/vec.json
+++ b/MLEB/Babel/i18n/vec.json
@@ -9,7 +9,6 @@
"babel-desc": "Zonta la funsion parser <code>#babel</code> par permétar la generazion automatica de un riquadro \"utente Babel\" con la possibilità de inserir template personalizà",
"babel-url": "Project:Babel",
"babel-footer-url": ":Category:Babel - Utenti par lengua",
- "babel-autocreate-abort": "El nome utente speçificà el xe doparà par la creassion automàtega de categorie [[$1|Babel]] e no se pol registrarlo.",
"babel-autocreate-reason": "Creo automaticamente la pàxena de la categoria [[$1|Babel]].",
"babel-autocreate-text-levels": "I utenti in sta categoria i gà indicà de verghe un livèl de conossensa $1 de la lengua $2.",
"babel-autocreate-text-main": "I utenti in sta categoria i gà indicà che i conosse la lengua $1.",
diff --git a/MLEB/Babel/i18n/vep.json b/MLEB/Babel/i18n/vep.json
index e24321e0..7b6048e6 100644
--- a/MLEB/Babel/i18n/vep.json
+++ b/MLEB/Babel/i18n/vep.json
@@ -8,7 +8,6 @@
"babel-desc": "Ližadab <code>#babel</code>-parseran funkcii, kudamb laskeb säta avtomatižešti pacaz informacijanke keliš, kudambha sab ližata toižid-ki šablonoid",
"babel-url": "Project:Vavilon",
"babel-footer-url": ":Category:Babel - Kävutajad keliden mödhe",
- "babel-autocreate-abort": "Teil kirjutadud ühtnijan nimi kävutadas [[$1|Babel]]-projektan kategorijoiden avtomatižen sädandan täht, i sikš sidä ei sa registriruida.",
"babel-autocreate-reason": "[[$1|Babel]]-projektan avtomatine lehtpolen sädand.",
"babel-autocreate-text-levels": "Necen kategorijan kävutajad oma ozutadud tedonmär $1 $2-kelen täht.",
"babel-autocreate-text-main": "Necen kategorijan kävutajad ozutiba $1-kelen tedmine.",
diff --git a/MLEB/Babel/i18n/vi.json b/MLEB/Babel/i18n/vi.json
index 06730d1d..78b43622 100644
--- a/MLEB/Babel/i18n/vi.json
+++ b/MLEB/Babel/i18n/vi.json
@@ -9,7 +9,6 @@
"babel-desc": "Thêm hàm cú pháp <code>#babel</code> để cho phép tự động sinh ra một hộp thông tin ngôn ngữ thành viên và có thể thêm vào những bản mẫu tùy chọn",
"babel-url": "Project:Ngôn ngữ",
"babel-footer-url": ":Category:Babel – Thành viên theo ngôn ngữ",
- "babel-autocreate-abort": "Bạn không thể mở tài khoản với tên bạn đã yêu cầu vì nó dùng để tự động tạo thể loại [[$1|Babel]].",
"babel-autocreate-reason": "Tự động tạo trang thể loại [[$1|Babel]].",
"babel-autocreate-text-levels": "Người dùng trong thể loại này cho thấy họ thành thạo ngôn ngữ $2 ở mức $1.",
"babel-autocreate-text-main": "Người dùng trong thể loại này cho thấy họ có kiến thức về ngôn ngữ $1.",
diff --git a/MLEB/Babel/i18n/vmf.json b/MLEB/Babel/i18n/vmf.json
index 02966787..ea6cba47 100644
--- a/MLEB/Babel/i18n/vmf.json
+++ b/MLEB/Babel/i18n/vmf.json
@@ -1,17 +1,17 @@
{
"@metadata": {
"authors": [
- "Silvicola"
+ "Silvicola",
+ "SabineCretella"
]
},
- "babel": "Babel-bajdreechâr-ôôgaawâ",
- "babel-desc": "Fiichd â <code>#babel</code>-bhaarsâr-fungdsjoon âu, mid därâ mr dan audomaadisch â schbaldâ mid ghäschdlâ aus bearbajdâr-ôôgaawâ bäschdlâ ghôô. Fir diâ ghäschdlâ ghôô mr dâbaj ajchâne foorlaachâ âjsedsâ.",
+ "babel": "Babel - dös ko dä Benudsä väschdeh unn schbrech",
+ "babel-desc": "Dound dii <code>#babel</code> Fungzion von Barsä derzou dun, damid mä audomadisch dii Sachn oozeich ko, dii a Benudsä ko unn mö ko aa einchena Vorlaachn mach.",
"babel-url": "Project:Babel",
- "babel-autocreate-abort": "Däär bearbajdârnôômâ, den'd ôôgääwâ hasch, wird fir d'audomaadische erdsajchung fon [[$1|Babel]]-ghadegôriiâ gnumâ, den ghâu mr dan awâr ned regischdriirâ.",
- "babel-autocreate-reason": "Audomaadische erdsajchung fon'râr [[$1|Babel]]-ghadegôrii.",
+ "babel-autocreate-reason": "Gadegorie [[$1|Babel]]werd audomadisch gmachd.",
"babel-autocreate-text-levels": "Bearbajdâr, diâ diâ ghadegorii beôôschbruchâ, sôôchâ damid, dase in dr schbrôôch $2 ôôgääblich dâ ghendnis-schdand $1 hen.",
- "babel-autocreate-text-main": "D'bearbajdr in därâ ghadegorii beôôschbruchâ, dase $1 ghenâ.",
- "babel-0": "Dr bearbajdâr ghôô [[$2|$3]] [[$1|gôôr ned]] odr fârschdeds doch nôr gands arch schwäär.",
+ "babel-autocreate-text-main": "Dii Benudsä von dä Kaddegorie doun zeich wii guud sa a Schbrooch könna dun.",
+ "babel-0": "Dä Benudsä ko [[$2|$3]] [[$1|gor ned]] oddä douds nuä arch schwar väschdeh.",
"babel-1": "Dr bearbajdâr ghôô [[$2|$3]] iwârhaabd âmôôl uf'm [[$1|grund-niwoo]].",
"babel-2": "Dr bearbajdâr ghôô [[$2|$3]] nôr uf [[$1|midlmääsichâm]] niwoo.",
"babel-3": "Dr bearbajdâr ghôô [[$2|$3]] doch scho uf rächd [[$1|hoâm]] niwoo.",
diff --git a/MLEB/Babel/i18n/vo.json b/MLEB/Babel/i18n/vo.json
index 5e012230..6d56962a 100644
--- a/MLEB/Babel/i18n/vo.json
+++ b/MLEB/Babel/i18n/vo.json
@@ -8,7 +8,6 @@
"babel": "Gebananüns-Babel",
"babel-url": "Project:Babel",
"babel-footer-url": ":Category:Babel - Gebans ma pük",
- "babel-autocreate-abort": "Gebananem fa ol pavilöl pagebon pö jafam itjäfidik [[$1|Babel]]-kladas e no dalon paregistarön.",
"babel-autocreate-reason": "[[$1|Babel]]-kladapad pajafon itjäfidiko",
"babel-autocreate-text-levels": "Gebans in klad at sagons, das labons nivoda: $1 tefü pük: $2.",
"babel-autocreate-text-main": "Gebans in klad at sagons, das sevons püki: $1.",
diff --git a/MLEB/Babel/i18n/vot.json b/MLEB/Babel/i18n/vot.json
index 88481aa8..0c563599 100644
--- a/MLEB/Babel/i18n/vot.json
+++ b/MLEB/Babel/i18n/vot.json
@@ -7,7 +7,6 @@
"babel": "Tšäüttijää tšeelesnorofka",
"babel-desc": "Lissäb <code>#babel</code>-funkttsiaa, kumpa annab tšäüttijää luvaa tšeelisnorofka-škatulkaa lissämä.",
"babel-url": "Project:Babel",
- "babel-autocreate-abort": "Tšäüttijänimi, kumpa õõd antõnnu, on zańimoitõttu [[$1|Babelii]] meelegruppaa avtomattskoi loomizõõ, sissi ed või registriiroitta sitä.",
"babel-autocreate-reason": "[[$1|Babelii]] meelegruppatšüľľee avtomattskoi loomin.",
"babel-autocreate-text-levels": "Tšäüttijäd kassen gruppaza õmad kuulutõttu, jot nämä tunta $2 tšeelt $1 uroveńńalla.",
"babel-autocreate-text-main": "Tšäüttijäd kassen gruppaza õmad kuulutõttu, jot nämä saa arvoa $1 tšeelt.",
diff --git a/MLEB/Babel/i18n/wa.json b/MLEB/Babel/i18n/wa.json
index a95dfd1d..1c46e235 100644
--- a/MLEB/Babel/i18n/wa.json
+++ b/MLEB/Babel/i18n/wa.json
@@ -9,7 +9,6 @@
"babel-desc": "Radjoute ene fonccion d' analijhe sintacsike <code>#babel</code> ki permete li fjhaedje otomatike di boesses ''Babel'' po-z indiker les lingaedjes k' èn uzeu cnoxhe; avou l' possibilité di radjouter locålmint des modeles",
"babel-url": "Project:Babel",
"babel-footer-url": ":Category:Babel - Uzeus pa lingaedje",
- "babel-autocreate-abort": "Li no d' uzeu ki vos avoz dné est ddja eployî dins l' categoreye [[$1|Babel]] \"oto-askepiaedje\"; dabôrd, i n' såreut esse ritnou.",
"babel-autocreate-reason": "Askepiaedje otomatike del categoreye [[$1|Babel]].",
"babel-autocreate-text-levels": "Les uzeus d' cisse categoreye ci ont-st ene kinoxhance di livea $1 do lingaedje $2.",
"babel-autocreate-text-main": "Les uzeus d' cisse categoreye ci ont-st ene kinoxhance do lingaedje $1.",
diff --git a/MLEB/Babel/i18n/war.json b/MLEB/Babel/i18n/war.json
index e1aca5be..4a14cb6e 100644
--- a/MLEB/Babel/i18n/war.json
+++ b/MLEB/Babel/i18n/war.json
@@ -9,7 +9,6 @@
"babel-desc": "Nadugang hin <code>#babel</code> katungdangan sintaktiko nga natugot hinn lugaring nga paghatag hin uska rumbay hin babel nga kahon-han-gumaramit nga may-ada akos maglakip hin mga batakan hin tinuyoan nga paghimo",
"babel-url": "Project:Babel",
"babel-footer-url": ":Category:Babel - Mga gumaramit ha pinulongan",
- "babel-autocreate-abort": "An ngaran-han-gumaramit nga imo ginpiho in gingagamit ha [[$1|Babel]] kaarangay hit lugaring-nga-paghimo ngan diri marerehistro.",
"babel-autocreate-reason": "Lugaring nga naghihimo hin [[$1|Babel]] kaarangay nga pakli.",
"babel-autocreate-text-levels": "An mga gumaramit hinin nga kaarangay in nagpapasabot hin ira katupngan $1 nga kabatiran para ha yinaknan nga $2.",
"babel-autocreate-text-main": "An mga gumaramit hinin nga kaarangay in nagpapasabot nga maaram han pinulongan nga $1.",
diff --git a/MLEB/Babel/i18n/wuu.json b/MLEB/Babel/i18n/wuu.json
index 7f8ede8d..bd1753ab 100644
--- a/MLEB/Babel/i18n/wuu.json
+++ b/MLEB/Babel/i18n/wuu.json
@@ -1,13 +1,14 @@
{
"@metadata": {
"authors": [
- "Wu-chinese.com"
+ "Wu-chinese.com",
+ "飞舞回堂前"
]
},
"babel": "Babel用户信息",
"babel-desc": "加只<code>#babel</code>处理功能,允许自动产生一只babel用户框栏,包含可自定义个模版",
"babel-url": "Project:Babel",
- "babel-autocreate-abort": "箇只用户名弗好注册,因其畀用作[[$1|Babel]]分类个自动创建。",
+ "babel-footer-url": ":Category:巴别-用户(按闲话)",
"babel-autocreate-reason": "自动建立[[$1|Babel]]分类页。",
"babel-autocreate-text-levels": "垃拉箇只分类里向个用户具有语言$2个$1能力。",
"babel-autocreate-text-main": "箇只分类里向个用户能够理解语言$1。",
@@ -24,5 +25,6 @@
"babel-3-n": "箇位用户个[[$2|吴语]]能力达到[[$1|高等水平]]。",
"babel-4-n": "箇位用户个[[$2|吴语]]能力达到[[$1|接近母语水平]]。",
"babel-5-n": "箇位用户个[[$2|吴语]]能力达到[[$1|专业水平]]。",
- "babel-N-n": "箇位用户个[[$2|吴语]]能力达到[[$1|母语水平]]。"
+ "babel-N-n": "箇位用户个[[$2|吴语]]能力达到[[$1|母语水平]]。",
+ "babel-footer": "用户(按闲话)"
}
diff --git a/MLEB/Babel/i18n/xmf.json b/MLEB/Babel/i18n/xmf.json
index fcd0a990..ab27130d 100644
--- a/MLEB/Babel/i18n/xmf.json
+++ b/MLEB/Babel/i18n/xmf.json
@@ -9,7 +9,6 @@
"babel-desc": "გითმუძინანს <code>#babel</code> სინტაქსურ ანალიზატორიშ ფუნქციას ბაბელიშ მახვარებუშ ჭკუდიშ ძეკვენიშ ავტომატურ გენერირაფაშ ოღოლამარო, ნამუსით შეალებე იკათუას ინდივიდუალიზირაფილ თანგეფ",
"babel-url": "Project:ბაბელ",
"babel-footer-url": ":Category:ბაბელ - მახვარებუეფიშ ერკებულ ნინაშ მეჯინათ",
- "babel-autocreate-abort": "თქვან მუნათხუა მახვარებუშ ჯოხო გჷმორინაფილ რე [[$1|Babel]] კატეგორიაშ ავტომატურ დორცხუაფას დო თეშ გურშენ ათე ჯოხოშ რეგისტრირაფა ვა შილებე.",
"babel-autocreate-reason": "ავტომატურო დითმირცხუაფუ [[$1|Babel]] კატეგორიაშ ხასილა",
"babel-autocreate-text-levels": "ათე კატეგორიაშ მახვარებუეფქ დაკონკრეტეს, ნამდა $2 ნინა უჩქჷნა $1 დონეშა.",
"babel-autocreate-text-main": "ათე კატეგორიაშ მახვარებუეფქ დაკონკრეტეს, ნამდა უჩქჷნა $1 ნინა.",
diff --git a/MLEB/Babel/i18n/yi.json b/MLEB/Babel/i18n/yi.json
index 3bb7e682..035a502e 100644
--- a/MLEB/Babel/i18n/yi.json
+++ b/MLEB/Babel/i18n/yi.json
@@ -10,10 +10,9 @@
"babel-desc": "לייגט צו די <code>#babel</code> פארזער פונקציע צו דערלויבן אויטאמאטישע גענערירונג פון א באבעל באניצער-קעסטל זייל, מיט דער מעגלעכקייט איינשליסן אייגענע מוסטערן",
"babel-url": "Project:באבעל",
"babel-footer-url": "קאטעגאריע:באבעל - באניצער לויט שפראך",
- "babel-autocreate-abort": "דעם באניצער נאמען וואס איר האט ספעציפירט ווערט באניצט פאר [[$1|באבעל]] קאטעגאריע אויטאמאטיש שאפן און מ'קען אים נישט איינשרייבן.",
"babel-autocreate-reason": "שאפֿן אויטאמאטיש [[$1|באבעל]] קאטעגאריע בלאט.",
"babel-autocreate-text-levels": "באניצער אין דער קאטעגאריע ווײַזן אָן אז זיי האָבן פֿעיקייט ניוואָ $1 פֿאַר שפראך $2.",
- "babel-autocreate-text-main": "באַניצער אין דער קאַטעגאָריע ווייזן אָן, אַז זיי האָבן אַ ידיעה אין דער שפּראַך $1.",
+ "babel-autocreate-text-main": "באַניצער אין דער קאַטעגאָריע ווייזן אָן זייער ידיעה אין דער שפּראַך $1.",
"babel-0": "דער באניצער האט [[$1|נישט קיין]] ידיעה אין [[$2|$3]] (אדער פארשטייט די שפראך מיט גרויסע שוועריקייט).",
"babel-1": "דער באניצער האט א [[$1|גרונטיקע]] ידיעה אין [[$2|$3]].",
"babel-2": "דער באניצער האט א [[$1|מיטלע]] ידיעה אין [[$2|$3]].",
diff --git a/MLEB/Babel/i18n/yue.json b/MLEB/Babel/i18n/yue.json
index dc3e7c1f..56f0751d 100644
--- a/MLEB/Babel/i18n/yue.json
+++ b/MLEB/Babel/i18n/yue.json
@@ -2,17 +2,17 @@
"@metadata": {
"authors": [
"Deryck Chan",
- "Shinjiman"
+ "Shinjiman",
+ "Ktchankt"
]
},
"babel": "巴別用戶資料",
"babel-desc": "裝<code>#babel</code>功能,整啲巴別用戶盒仔出嚟。可以加埋自訂模落去。",
"babel-url": "Project:巴別",
"babel-footer-url": ":Category:巴别 - 跟語言分類用戶",
- "babel-autocreate-abort": "呢個用戶名已經畀[[$1|巴別]]自動分類系統霸咗,註冊唔到。",
"babel-autocreate-reason": "自動建立緊[[$1|巴別]]分類頁。",
"babel-autocreate-text-levels": "呢個分類入面嘅用戶話佢哋識$2程度嘅$1。",
- "babel-autocreate-text-main": "呢個分類入面嘅用戶話佢哋識講$1。",
+ "babel-autocreate-text-main": "呢個分類入面嘅用戶話佢哋對 $1 嘅熟悉程度。",
"babel-0": "呢位用戶[[$1|完全唔識]](或者唔係好明)[[$2|$3]]。",
"babel-1": "呢位用戶有[[$1|基本]]嘅[[$2|$3]]知識。",
"babel-2": "呢位用戶有[[$1|中等]]嘅[[$2|$3]]知識。",
@@ -27,5 +27,8 @@
"babel-4-n": "呢位用戶有[[$1|接近母語程度]]嘅[[$2|廣東話]]知識。",
"babel-5-n": "呢位用戶有[[$1|專業]]嘅[[$2|廣東話]]知識。",
"babel-N-n": "呢位用戶嘅[[$1|母語]]係[[$2|廣東話]]。",
- "babel-footer": "用戶(跟語言分類)"
+ "babel-footer": "用戶(跟語言分類)",
+ "apihelp-query+babel-description": "攞用戶識咩嘢語言嘅資訊",
+ "apihelp-query+babel-param-user": "要攞相關資訊嘅用戶",
+ "apihelp-query+babel-example-1": "攞用戶 <kbd>Example</kbd> 嘅 Babel 資訊"
}
diff --git a/MLEB/Babel/i18n/zh-cn.json b/MLEB/Babel/i18n/zh-cn.json
index eac771a1..51ba73f3 100644
--- a/MLEB/Babel/i18n/zh-cn.json
+++ b/MLEB/Babel/i18n/zh-cn.json
@@ -1,14 +1,14 @@
{
- "@metadata": {
- "authors": [
- "Shinjiman"
- ]
- },
- "babel-0-n": "这位用户[[$1|无]][[$2|大陆式中文]]的知识(或很难地去明白它)。",
- "babel-1-n": "这位用户有[[$1|基本]]的[[$2|大陆式中文]]知识。",
- "babel-2-n": "这位用户有[[$1|中等]]的[[$2|大陆式中文]]知识。",
- "babel-3-n": "这位用户有[[$1|高等]]的[[$2|大陆式中文]]知识。",
- "babel-4-n": "这位用户有[[$1|接近母语讲者]]的[[$2|大陆式中文]]知识。",
- "babel-5-n": "这位用户有[[$1|专业]]的[[$2|大陆式中文]]知识。",
- "babel-N-n": "这位用户明白以[[$1|母语]]为主的[[$2|大陆式中文]]。"
+ "@metadata": {
+ "authors": [
+ "Shinjiman"
+ ]
+ },
+ "babel-0-n": "这位用户[[$1|无]][[$2|大陆式中文]]的知识(或很难地去明白它)。",
+ "babel-1-n": "这位用户有[[$1|基本]]的[[$2|大陆式中文]]知识。",
+ "babel-2-n": "这位用户有[[$1|中等]]的[[$2|大陆式中文]]知识。",
+ "babel-3-n": "这位用户有[[$1|高等]]的[[$2|大陆式中文]]知识。",
+ "babel-4-n": "这位用户有[[$1|接近母语讲者]]的[[$2|大陆式中文]]知识。",
+ "babel-5-n": "这位用户有[[$1|专业]]的[[$2|大陆式中文]]知识。",
+ "babel-N-n": "这位用户明白以[[$1|母语]]为主的[[$2|大陆式中文]]。"
} \ No newline at end of file
diff --git a/MLEB/Babel/i18n/zh-hans.json b/MLEB/Babel/i18n/zh-hans.json
index 622540f6..a8969fb3 100644
--- a/MLEB/Babel/i18n/zh-hans.json
+++ b/MLEB/Babel/i18n/zh-hans.json
@@ -8,14 +8,14 @@
"Shinjiman",
"Shizhao",
"Xiaomingyan",
- "Yfdyh000"
+ "Yfdyh000",
+ "Liuxinyu970226"
]
},
"babel": "用户巴别信息",
"babel-desc": "增加一个<code>#babel</code>处理功能以支持自动产生一个巴别用户框栏及包含可自定化的模版",
"babel-url": "Project:巴别",
"babel-footer-url": ":Category:巴别-用户(按语言)",
- "babel-autocreate-abort": "您所指定的用户名不能被注册,因其被用作[[$1|巴别]]分类的自动创建。",
"babel-autocreate-reason": "自动建立[[$1|巴别]]分类页。",
"babel-autocreate-text-levels": "在此分类中的用户具有$2的$1级能力。",
"babel-autocreate-text-main": "此分类中的用户能理解$1。",
@@ -33,5 +33,9 @@
"babel-4-n": "这位用户的[[$2|简体中文]]达到[[$1|接近母语水平]]。",
"babel-5-n": "这位用户的[[$2|简体中文]]达到[[$1|专业水平]]。",
"babel-N-n": "[[$2|简体中文]]是这位用户的[[$1|母语]]。",
- "babel-footer": "用户(按语言)"
+ "babel-footer": "用户(按语言)",
+ "apihelp-query+babel-description": "获取有关用户理解的语言的信息",
+ "apihelp-query+babel-summary": "获取有关用户可以理解语言的信息",
+ "apihelp-query+babel-param-user": "要获取相关信息的用户",
+ "apihelp-query+babel-example-1": "获取用户<kbd>Example</kbd>的巴别信息"
}
diff --git a/MLEB/Babel/i18n/zh-hant.json b/MLEB/Babel/i18n/zh-hant.json
index 1eaf4906..5f1b668e 100644
--- a/MLEB/Babel/i18n/zh-hant.json
+++ b/MLEB/Babel/i18n/zh-hant.json
@@ -9,16 +9,19 @@
"Wrightbus",
"Cwlin0416",
"Cwek",
- "LNDDYL"
+ "LNDDYL",
+ "Zhxy 519",
+ "Liuxinyu970226",
+ "Kly"
]
},
"babel": "Babel 使用者資訊",
- "babel-desc": "提供 <code>#babel</code> 分析函數可自動產生一個能夠使用自訂樣板的使用者語言資訊欄。",
+ "babel-desc": "提供 <code>#babel</code> 分析函數可自動產生一個能夠使用自訂模板的使用者語言資訊欄",
"babel-url": "Project:Babel",
"babel-footer-url": ":Category:Babel - 使用者 (依語言)",
"babel-autocreate-reason": "自動建立 [[$1|Babel]] 分類頁面。",
"babel-autocreate-text-levels": "在此分類中的使用者代表其擁有等級 $1 的 $2 語言能力。",
- "babel-autocreate-text-main": "在此分類中的使用者代表其瞭解語言 $1。",
+ "babel-autocreate-text-main": "在此分類中的使用者代表其對語言 $1 的瞭解程度。",
"babel-0": "此使用者[[$1|不]]瞭解或很難理解 [[$2|$3]] (或者有一定程度難以理解)。",
"babel-1": "這位使用者會[[$1|基本]]水準的 [[$2|$3]]。",
"babel-2": "這位使用者會[[$1|中等]]水準的 [[$2|$3]]。",
@@ -33,5 +36,9 @@
"babel-4-n": "這位使用者會[[$1|接近母語]]水準的 [[$2|繁體中文]]。",
"babel-5-n": "這位使用者會[[$1|專業]]水準的 [[$2|繁體中文]]。",
"babel-N-n": "這位使用者會[[$1|母語]]水準的 [[$2|繁體中文]]。",
- "babel-footer": "使用者 (依語言)"
+ "babel-footer": "使用者 (依語言)",
+ "apihelp-query+babel-description": "取得有關使用者瞭解何種語言的資訊",
+ "apihelp-query+babel-summary": "獲得關於使用者所能理解語言的資訊",
+ "apihelp-query+babel-param-user": "要取得相關資訊的使用者",
+ "apihelp-query+babel-example-1": "取得使用者 <kbd>Example</kbd> 的 Babel 資訊"
}
diff --git a/MLEB/Babel/i18n/zh-hk.json b/MLEB/Babel/i18n/zh-hk.json
index add8362b..d6bfee73 100644
--- a/MLEB/Babel/i18n/zh-hk.json
+++ b/MLEB/Babel/i18n/zh-hk.json
@@ -1,16 +1,18 @@
{
- "@metadata": {
- "authors": [
- "Oapbtommy",
- "Shinjiman"
- ]
- },
- "babel": "巴別用戶資訊",
- "babel-0-n": "這位用戶[[$1|無]][[$2|港式中文]]的知識(或很難地去明白它)。",
- "babel-1-n": "這位用戶有[[$1|基本]]的[[$2|港式中文]]知識。",
- "babel-2-n": "這位用戶有[[$1|中等]]的[[$2|港式中文]]知識。",
- "babel-3-n": "這位用戶有[[$1|高等]]的[[$2|港式中文]]知識。",
- "babel-4-n": "這位用戶有[[$1|接近母語講者]]的[[$2|港式中文]]知識。",
- "babel-5-n": "這位用戶有[[$1|專業]]的[[$2|港式中文]]知識。",
- "babel-N-n": "這位用戶明白以[[$1|母語]]為主的[[$2|港式中文]]。"
-} \ No newline at end of file
+ "@metadata": {
+ "authors": [
+ "Oapbtommy",
+ "Shinjiman",
+ "Liuxinyu970226"
+ ]
+ },
+ "babel": "巴別用戶資訊",
+ "babel-desc": "提供 <code>#babel</code> 分析函數可自動產生一個能夠使用自訂模板的用戶語言資訊欄。",
+ "babel-0-n": "這位用戶[[$1|無]][[$2|港式中文]]的知識(或很難地去明白它)。",
+ "babel-1-n": "這位用戶有[[$1|基本]]的[[$2|港式中文]]知識。",
+ "babel-2-n": "這位用戶有[[$1|中等]]的[[$2|港式中文]]知識。",
+ "babel-3-n": "這位用戶有[[$1|高等]]的[[$2|港式中文]]知識。",
+ "babel-4-n": "這位用戶有[[$1|接近母語講者]]的[[$2|港式中文]]知識。",
+ "babel-5-n": "這位用戶有[[$1|專業]]的[[$2|港式中文]]知識。",
+ "babel-N-n": "這位用戶明白以[[$1|母語]]為主的[[$2|港式中文]]。"
+}
diff --git a/MLEB/Babel/i18n/zh-sg.json b/MLEB/Babel/i18n/zh-sg.json
index 1726ee40..fdc3a571 100644
--- a/MLEB/Babel/i18n/zh-sg.json
+++ b/MLEB/Babel/i18n/zh-sg.json
@@ -1,14 +1,14 @@
{
- "@metadata": {
- "authors": [
- "Shinjiman"
- ]
- },
- "babel-0-n": "这位用户[[$1|无]][[$2|星式中文]]的知识(或很难地去明白它)。",
- "babel-1-n": "这位用户有[[$1|基本]]的[[$2|星式中文]]知识。",
- "babel-2-n": "这位用户有[[$1|中等]]的[[$2|星式中文]]知识。",
- "babel-3-n": "这位用户有[[$1|高等]]的[[$2|星式中文]]知识。",
- "babel-4-n": "这位用户有[[$1|接近母语讲者]]的[[$2|星式中文]]知识。",
- "babel-5-n": "这位用户有[[$1|专业]]的[[$2|星式中文]]知识。",
- "babel-N-n": "这位用户明白以[[$1|母语]]为主的[[$2|星式中文]]。"
+ "@metadata": {
+ "authors": [
+ "Shinjiman"
+ ]
+ },
+ "babel-0-n": "这位用户[[$1|无]][[$2|星式中文]]的知识(或很难地去明白它)。",
+ "babel-1-n": "这位用户有[[$1|基本]]的[[$2|星式中文]]知识。",
+ "babel-2-n": "这位用户有[[$1|中等]]的[[$2|星式中文]]知识。",
+ "babel-3-n": "这位用户有[[$1|高等]]的[[$2|星式中文]]知识。",
+ "babel-4-n": "这位用户有[[$1|接近母语讲者]]的[[$2|星式中文]]知识。",
+ "babel-5-n": "这位用户有[[$1|专业]]的[[$2|星式中文]]知识。",
+ "babel-N-n": "这位用户明白以[[$1|母语]]为主的[[$2|星式中文]]。"
} \ No newline at end of file
diff --git a/MLEB/Babel/i18n/zh-tw.json b/MLEB/Babel/i18n/zh-tw.json
index 4531fe87..7b658742 100644
--- a/MLEB/Babel/i18n/zh-tw.json
+++ b/MLEB/Babel/i18n/zh-tw.json
@@ -1,29 +1,29 @@
{
- "@metadata": {
- "authors": [
- "Pbdragonwang",
- "Shinjiman"
- ]
- },
- "babel": "巴別用戶資料",
- "babel-desc": "添加一個<code>#babel</code>處理功能以自動產生一個包含可自定化模版的巴別用戶框欄",
- "babel-url": "Project:巴別",
- "babel-autocreate-abort": "您所指定的用戶名因被用作自動創建的[[$1|巴別]]分類而不能被註冊。",
- "babel-autocreate-reason": "自動建立[[$1|巴別]]分類頁。",
- "babel-autocreate-text-levels": "在此分類中的用戶具有語言$2的$1能力。",
- "babel-autocreate-text-main": "此分類中的用戶能理解語言$1。",
- "babel-0": "這位用戶[[$1|無]][[$2|$3]]的知識(或很難去理解它)。",
- "babel-1": "這位用戶有[[$1|基本]]的[[$2|$3]]知識。",
- "babel-2": "這位用戶有[[$1|中等]]的[[$2|$3]]知識。",
- "babel-3": "這位用戶有[[$1|高等]]的[[$2|$3]]知識。",
- "babel-4": "這位用戶有[[$1|接近母語使用者]]的[[$2|$3]]知識。",
- "babel-5": "這位用戶有[[$1|專業]]的[[$2|$3]]知識。",
- "babel-N": "[[$2|$3]]是這位用戶的的[[$1|母語]]。",
- "babel-0-n": "這位用戶[[$1|無]][[$2|台式中文]]的知識(或很難去理解它)。",
- "babel-1-n": "這位用戶有[[$1|基本]]的[[$2|台式中文]]知識。",
- "babel-2-n": "這位用戶有[[$1|中等]]的[[$2|台式中文]]知識。",
- "babel-3-n": "這位用戶有[[$1|高等]]的[[$2|台式中文]]知識。",
- "babel-4-n": "這位用戶有[[$1|接近母語講者]]的[[$2|台式中文]]知識。",
- "babel-5-n": "這位用戶有[[$1|專業]]的[[$2|台式中文]]知識。",
- "babel-N-n": "[[$2|台式中文]]是這位用戶的的[[$1|母語]]。"
+ "@metadata": {
+ "authors": [
+ "Pbdragonwang",
+ "Shinjiman"
+ ]
+ },
+ "babel": "巴別用戶資料",
+ "babel-desc": "添加一個<code>#babel</code>處理功能以自動產生一個包含可自定化模版的巴別用戶框欄",
+ "babel-url": "Project:巴別",
+ "babel-autocreate-abort": "您所指定的用戶名因被用作自動創建的[[$1|巴別]]分類而不能被註冊。",
+ "babel-autocreate-reason": "自動建立[[$1|巴別]]分類頁。",
+ "babel-autocreate-text-levels": "在此分類中的用戶具有語言$2的$1能力。",
+ "babel-autocreate-text-main": "此分類中的用戶能理解語言$1。",
+ "babel-0": "這位用戶[[$1|無]][[$2|$3]]的知識(或很難去理解它)。",
+ "babel-1": "這位用戶有[[$1|基本]]的[[$2|$3]]知識。",
+ "babel-2": "這位用戶有[[$1|中等]]的[[$2|$3]]知識。",
+ "babel-3": "這位用戶有[[$1|高等]]的[[$2|$3]]知識。",
+ "babel-4": "這位用戶有[[$1|接近母語使用者]]的[[$2|$3]]知識。",
+ "babel-5": "這位用戶有[[$1|專業]]的[[$2|$3]]知識。",
+ "babel-N": "[[$2|$3]]是這位用戶的的[[$1|母語]]。",
+ "babel-0-n": "這位用戶[[$1|無]][[$2|台式中文]]的知識(或很難去理解它)。",
+ "babel-1-n": "這位用戶有[[$1|基本]]的[[$2|台式中文]]知識。",
+ "babel-2-n": "這位用戶有[[$1|中等]]的[[$2|台式中文]]知識。",
+ "babel-3-n": "這位用戶有[[$1|高等]]的[[$2|台式中文]]知識。",
+ "babel-4-n": "這位用戶有[[$1|接近母語講者]]的[[$2|台式中文]]知識。",
+ "babel-5-n": "這位用戶有[[$1|專業]]的[[$2|台式中文]]知識。",
+ "babel-N-n": "[[$2|台式中文]]是這位用戶的的[[$1|母語]]。"
} \ No newline at end of file
diff --git a/MLEB/Babel/i18n/zh.json b/MLEB/Babel/i18n/zh.json
index 56405100..34e73d99 100644
--- a/MLEB/Babel/i18n/zh.json
+++ b/MLEB/Babel/i18n/zh.json
@@ -1,8 +1,8 @@
{
- "@metadata": {
- "authors": [
- "Purodha"
- ]
- },
- "babel-url": "Project:巴別"
+ "@metadata": {
+ "authors": [
+ "Purodha"
+ ]
+ },
+ "babel-url": "Project:巴別"
} \ No newline at end of file
diff --git a/MLEB/Babel/names.cdb b/MLEB/Babel/names.cdb
index cb13b4dc..f59ab46c 100644
--- a/MLEB/Babel/names.cdb
+++ b/MLEB/Babel/names.cdb
Binary files differ
diff --git a/MLEB/Babel/resources/ext.babel.css b/MLEB/Babel/resources/ext.babel.css
index d3855429..a06e109d 100644
--- a/MLEB/Babel/resources/ext.babel.css
+++ b/MLEB/Babel/resources/ext.babel.css
@@ -9,150 +9,178 @@
*/
/* Babel wrapper layout. */
-/* @noflip */table.mw-babel-wrapper {
- width: 238px;
- float: right;
- clear: right;
- margin: 0;
- background-color: white;
- border: 1px solid #99B3FF;
+/* @noflip */
+.mw-babel-wrapper {
+ background-color: #fff;
+ border: 1px solid #99b3ff;
+ border-spacing: 0;
+ box-sizing: border-box;
+ padding: 0;
+ margin: 1px;
+ width: 100%;
}
-/* @noflip */.mw-content-ltr table.mw-babel-wrapper {
- float: right;
- clear: right;
+/* header and footer */
+.mw-babel-header {
+ font-weight: bold;
+ text-align: center;
}
-/* @noflip */.mw-content-rtl table.mw-babel-wrapper {
- float: left;
- clear: left;
+
+.mw-babel-footer {
+ font-size: 85%;
+ font-weight: normal;
+ text-align: center;
}
/* Babel box layout */
-/* @noflip */div.mw-babel-box {
- float: left;
- clear: left;
+.mw-babel-box {
margin: 1px;
}
-/* @noflip */.mw-content-ltr table.mw-babel-box {
- float: left;
- clear: left;
-}
-
-/* @noflip */.mw-content-rtl table.mw-babel-box {
- float: right;
- clear: right;
-}
-
-div.mw-babel-box table {
- width: 238px;
+.mw-babel-box table {
+ border-spacing: 0;
+ width: 100%;
+ margin: 0 !important; /* stylelint-disable-line declaration-no-important */
}
-div.mw-babel-box table th {
- width: 45px;
- height: 45px;
+.mw-babel-box th {
font-size: 14pt;
- font-family: monospace;
+ height: 45px;
+ min-width: 45px;
+ text-align: center;
+ width: 45px;
}
-div.mw-babel-box table td {
+.mw-babel-box td {
+ line-height: 1.25em;
font-size: 8pt;
padding: 4pt;
- line-height: 1.25em;
+ width: 100%;
}
-/* Babel box colours. */
-div.mw-babel-box-0 {
- border: 1px solid #FFBBBB;
-}
+@media all and ( min-width: 480px ) {
+
+ /* @noflip */
+ .mw-babel-wrapper {
+ float: right;
+ clear: right;
+ width: 238px;
+ }
+
+ /* @noflip */
+ .mw-content-ltr .mw-babel-wrapper {
+ float: right;
+ clear: right;
+ }
+
+ /* @noflip */
+ .mw-content-rtl .mw-babel-wrapper {
+ float: left;
+ clear: left;
+ }
+
+ /* @noflip */
+ .mw-babel-box {
+ float: right;
+ clear: right;
+ width: 238px;
+ }
+
+ /* @noflip */
+ .mw-content-ltr .mw-babel-box {
+ float: right;
+ clear: right;
+ }
+
+ /* @noflip */
+ .mw-content-rtl .mw-babel-box {
+ float: left;
+ clear: left;
+ }
-div.mw-babel-box-1 {
- border: 1px solid #E0C0E0;
}
-div.mw-babel-box-2 {
- border: 1px solid #BCB9EF;
+/* Babel box colours. */
+.mw-babel-box-0 {
+ border: 1px solid #fbb;
}
-div.mw-babel-box-3 {
- border: 1px solid #99B3FF;
+.mw-babel-box-1 {
+ border: 1px solid #e0c0e0;
}
-div.mw-babel-box-4 {
- border: 1px solid #77E0E8;
+.mw-babel-box-2 {
+ border: 1px solid #bcb9ef;
}
-div.mw-babel-box-5 {
- border: 1px solid #CCCC00;
+.mw-babel-box-3 {
+ border: 1px solid #99b3ff;
}
-div.mw-babel-box-N {
- border: 1px solid #6EF7A7;
+.mw-babel-box-4 {
+ border: 1px solid #77e0e8;
}
-div.mw-babel-box-0 table th {
- background-color: #FFBBBB;
+.mw-babel-box-5 {
+ border: 1px solid #ffcf4d;
}
-div.mw-babel-box-1 table th {
- background-color: #E0C0E0;
+.mw-babel-box-N {
+ border: 1px solid #6ef7a7;
}
-div.mw-babel-box-2 table th {
- background-color: #BCB9EF;
+.mw-babel-box-0 table th {
+ background-color: #fbb;
}
-div.mw-babel-box-3 table th {
- background-color: #99B3FF;
+.mw-babel-box-1 table th {
+ background-color: #e0c0e0;
}
-div.mw-babel-box-4 table th {
- background-color: #77E0E8;
+.mw-babel-box-2 table th {
+ background-color: #bcb9ef;
}
-div.mw-babel-box-5 table th {
- background-color: #CCCC00;
+.mw-babel-box-3 table th {
+ background-color: #99b3ff;
}
-div.mw-babel-box-N table th {
- background-color: #6EF7A7;
+.mw-babel-box-4 table th {
+ background-color: #77e0e8;
}
-div.mw-babel-box-0 table {
- background-color: #FFEEEE;
+.mw-babel-box-5 table th {
+ background-color: #ffcf4d;
}
-div.mw-babel-box-1 table {
- background-color: #F3E0F3;
+.mw-babel-box-N table th {
+ background-color: #6ef7a7;
}
-div.mw-babel-box-2 table {
- background-color: #E9E5F9;
+.mw-babel-box-0 table {
+ background-color: #fee;
}
-div.mw-babel-box-3 table {
- background-color: #E0E8FF;
+.mw-babel-box-1 table {
+ background-color: #f3e0f3;
}
-div.mw-babel-box-4 table {
- background-color: #D0F8FF;
+.mw-babel-box-2 table {
+ background-color: #e9e5f9;
}
-div.mw-babel-box-5 table {
- background-color: #FFFF99;
+.mw-babel-box-3 table {
+ background-color: #e0e8ff;
}
-div.mw-babel-box-N table {
- background-color: #C5FCDC;
+.mw-babel-box-4 table {
+ background-color: #d0f8ff;
}
-/* header and footer */
-.mw.babel-box th.mw-babel-header {
- text-align: center;
- font-weight: bold;
+.mw-babel-box-5 table {
+ background-color: #ffefa6;
}
-.mw.babel-box th.mw-babel-footer {
- text-align: center;
- font-weight: normal;
+.mw-babel-box-N table {
+ background-color: #c5fcdc;
}
diff --git a/MLEB/Babel/tab2txt.php b/MLEB/Babel/tab2txt.php
index e1266d13..a1388fbd 100644
--- a/MLEB/Babel/tab2txt.php
+++ b/MLEB/Babel/tab2txt.php
@@ -16,7 +16,12 @@ $fw = fopen( 'php://stdout', 'w' );
// Read and discard header line.
fgets( $fr );
-while ( $line = fgets( $fr ) ) {
+while ( true ) {
+ $line = fgets( $fr );
+ if ( !$line ) {
+ break;
+ }
+
$line = explode( "\t", $line );
$iso1 = trim( $line[3] );
if ( $iso1 === '' ) {
diff --git a/MLEB/Babel/txt2cdb.php b/MLEB/Babel/txt2cdb.php
index 317acc71..a15b13d8 100644
--- a/MLEB/Babel/txt2cdb.php
+++ b/MLEB/Babel/txt2cdb.php
@@ -19,7 +19,12 @@ try {
$names = Cdb\Writer::open( $names );
$codes = Cdb\Writer::open( $codes );
- while ( $line = fgets( $fr ) ) {
+ while ( true ) {
+ $line = fgets( $fr );
+ if ( !$line ) {
+ break;
+ }
+
// Format is code1 code2 "language name"
$line = explode( ' ', $line, 3 );
$iso1 = trim( $line[0] );
diff --git a/MLEB/CleanChanges/.idea/.name b/MLEB/CleanChanges/.idea/.name
deleted file mode 100644
index 9de73e2d..00000000
--- a/MLEB/CleanChanges/.idea/.name
+++ /dev/null
@@ -1 +0,0 @@
-CleanChanges \ No newline at end of file
diff --git a/MLEB/CleanChanges/.idea/CleanChanges.iml b/MLEB/CleanChanges/.idea/CleanChanges.iml
deleted file mode 100644
index 6b8184f8..00000000
--- a/MLEB/CleanChanges/.idea/CleanChanges.iml
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<module type="WEB_MODULE" version="4">
- <component name="NewModuleRootManager">
- <content url="file://$MODULE_DIR$" />
- <orderEntry type="inheritedJdk" />
- <orderEntry type="sourceFolder" forTests="false" />
- </component>
-</module>
-
diff --git a/MLEB/CleanChanges/.idea/encodings.xml b/MLEB/CleanChanges/.idea/encodings.xml
deleted file mode 100644
index e206d70d..00000000
--- a/MLEB/CleanChanges/.idea/encodings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project version="4">
- <component name="Encoding" useUTFGuessing="true" native2AsciiForPropertiesFiles="false" />
-</project>
-
diff --git a/MLEB/CleanChanges/.idea/misc.xml b/MLEB/CleanChanges/.idea/misc.xml
deleted file mode 100644
index 1162f438..00000000
--- a/MLEB/CleanChanges/.idea/misc.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project version="4">
- <component name="ProjectRootManager" version="2" />
-</project>
-
diff --git a/MLEB/CleanChanges/.idea/modules.xml b/MLEB/CleanChanges/.idea/modules.xml
deleted file mode 100644
index 7f086057..00000000
--- a/MLEB/CleanChanges/.idea/modules.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project version="4">
- <component name="ProjectModuleManager">
- <modules>
- <module fileurl="file://$PROJECT_DIR$/.idea/CleanChanges.iml" filepath="$PROJECT_DIR$/.idea/CleanChanges.iml" />
- </modules>
- </component>
-</project>
-
diff --git a/MLEB/CleanChanges/.idea/scopes/scope_settings.xml b/MLEB/CleanChanges/.idea/scopes/scope_settings.xml
deleted file mode 100644
index 922003b8..00000000
--- a/MLEB/CleanChanges/.idea/scopes/scope_settings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<component name="DependencyValidationManager">
- <state>
- <option name="SKIP_IMPORT_STATEMENTS" value="false" />
- </state>
-</component> \ No newline at end of file
diff --git a/MLEB/CleanChanges/.idea/vcs.xml b/MLEB/CleanChanges/.idea/vcs.xml
deleted file mode 100644
index c80f2198..00000000
--- a/MLEB/CleanChanges/.idea/vcs.xml
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project version="4">
- <component name="VcsDirectoryMappings">
- <mapping directory="$PROJECT_DIR$" vcs="Git" />
- </component>
-</project>
-
diff --git a/MLEB/CleanChanges/.idea/workspace.xml b/MLEB/CleanChanges/.idea/workspace.xml
deleted file mode 100644
index bb21c3f6..00000000
--- a/MLEB/CleanChanges/.idea/workspace.xml
+++ /dev/null
@@ -1,172 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project version="4">
- <component name="ChangeListManager">
- <list default="true" id="476fbbcd-ad4f-42c2-9dc7-904fc7d5c9b9" name="Default" comment="" />
- <ignored path="CleanChanges.iws" />
- <ignored path=".idea/workspace.xml" />
- <option name="TRACKING_ENABLED" value="true" />
- <option name="SHOW_DIALOG" value="false" />
- <option name="HIGHLIGHT_CONFLICTS" value="true" />
- <option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
- <option name="LAST_RESOLUTION" value="IGNORE" />
- </component>
- <component name="ChangesViewManager" flattened_view="true" show_ignored="false" />
- <component name="CreatePatchCommitExecutor">
- <option name="PATCH_PATH" value="" />
- </component>
- <component name="DaemonCodeAnalyzer">
- <disable_hints />
- </component>
- <component name="ExecutionTargetManager" SELECTED_TARGET="default_target" />
- <component name="FavoritesManager">
- <favorites_list name="CleanChanges" />
- </component>
- <component name="FileEditorManager">
- <leaf />
- </component>
- <component name="FindManager">
- <FindUsagesManager>
- <setting name="OPEN_NEW_TAB" value="false" />
- </FindUsagesManager>
- </component>
- <component name="Git.Settings">
- <option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$" />
- </component>
- <component name="PhpWorkspaceProjectConfiguration" backward_compatibility_performed="true" />
- <component name="ProjectFrameBounds">
- <option name="y" value="14" />
- <option name="width" value="1278" />
- <option name="height" value="770" />
- </component>
- <component name="ProjectLevelVcsManager" settingsEditedManually="false">
- <OptionsSetting value="true" id="Add" />
- <OptionsSetting value="true" id="Remove" />
- <OptionsSetting value="true" id="Checkout" />
- <OptionsSetting value="true" id="Update" />
- <OptionsSetting value="true" id="Status" />
- <OptionsSetting value="true" id="Edit" />
- <ConfirmationsSetting value="0" id="Add" />
- <ConfirmationsSetting value="0" id="Remove" />
- </component>
- <component name="ProjectReloadState">
- <option name="STATE" value="0" />
- </component>
- <component name="ProjectView">
- <navigator currentView="ProjectPane" proportions="" version="1" splitterProportion="0.5">
- <flattenPackages />
- <showMembers />
- <showModules />
- <showLibraryContents />
- <hideEmptyPackages />
- <abbreviatePackageNames />
- <autoscrollToSource />
- <autoscrollFromSource />
- <sortByType />
- </navigator>
- <panes>
- <pane id="Scope" />
- <pane id="ProjectPane">
- <subPane>
- <PATH>
- <PATH_ELEMENT>
- <option name="myItemId" value="CleanChanges" />
- <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
- </PATH_ELEMENT>
- </PATH>
- <PATH>
- <PATH_ELEMENT>
- <option name="myItemId" value="CleanChanges" />
- <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
- </PATH_ELEMENT>
- <PATH_ELEMENT>
- <option name="myItemId" value="CleanChanges" />
- <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
- </PATH_ELEMENT>
- </PATH>
- </subPane>
- </pane>
- </panes>
- </component>
- <component name="PropertiesComponent">
- <property name="options.lastSelected" value="web-ide.project.structure" />
- <property name="options.splitter.main.proportions" value="0.3" />
- <property name="options.splitter.details.proportions" value="0.2" />
- <property name="options.searchVisible" value="true" />
- <property name="WebServerToolWindowFactoryState" value="false" />
- </component>
- <component name="RunManager">
- <configuration default="true" type="PHPUnitRunConfigurationType" factoryName="PHPUnit">
- <TestRunner />
- <method />
- </configuration>
- <configuration default="true" type="PhpLocalRunConfigurationType" factoryName="PHP Console">
- <method />
- </configuration>
- <configuration default="true" type="JavascriptDebugType" factoryName="JavaScript Debug" singleton="true">
- <method />
- </configuration>
- <configuration default="true" type="PhpUnitRemoteRunConfigurationType" factoryName="PHPUnit on Server">
- <method />
- </configuration>
- <list size="0" />
- </component>
- <component name="ShelveChangesManager" show_recycled="false" />
- <component name="TaskManager">
- <task active="true" id="Default" summary="Default task">
- <changelist id="476fbbcd-ad4f-42c2-9dc7-904fc7d5c9b9" name="Default" comment="" />
- <created>1387983990054</created>
- <updated>1387983990054</updated>
- </task>
- <servers />
- </component>
- <component name="ToolWindowManager">
- <frame x="0" y="14" width="1278" height="770" extended-state="0" />
- <editor active="false" />
- <layout>
- <window_info id="Changes" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
- <window_info id="Terminal" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
- <window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="6" side_tool="false" content_ui="tabs" />
- <window_info id="Find" active="true" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.32892805" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
- <window_info id="Database" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
- <window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
- <window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.25" sideWeight="0.5" order="0" side_tool="false" content_ui="combo" />
- <window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.4" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
- <window_info id="Favorites" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="-1" side_tool="true" content_ui="tabs" />
- <window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="-1" side_tool="true" content_ui="tabs" />
- <window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
- <window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
- <window_info id="Cvs" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="4" side_tool="false" content_ui="tabs" />
- <window_info id="Message" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
- <window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
- <window_info id="Commander" active="false" anchor="right" auto_hide="false" internal_type="SLIDING" type="SLIDING" visible="false" weight="0.4" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
- <window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="2" side_tool="false" content_ui="combo" />
- <window_info id="Inspection" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.4" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" />
- </layout>
- </component>
- <component name="Vcs.Log.UiProperties">
- <option name="RECENTLY_FILTERED_USERS">
- <collection />
- </option>
- </component>
- <component name="VcsContentAnnotationSettings">
- <option name="myLimit" value="2678400000" />
- </component>
- <component name="VcsManagerConfiguration">
- <option name="myTodoPanelSettings">
- <TodoPanelSettings />
- </option>
- </component>
- <component name="XDebuggerManager">
- <breakpoint-manager />
- </component>
- <component name="editorHistoryManager">
- <entry file="file://$PROJECT_DIR$/CleanChanges_body.php">
- <provider selected="true" editor-type-id="text-editor">
- <state line="85" column="23" selection-start="1859" selection-end="1859" vertical-scroll-proportion="0.33333334" vertical-offset="1153" max-vertical-offset="9990">
- <folding />
- </state>
- </provider>
- </entry>
- </component>
-</project>
-
diff --git a/MLEB/CleanChanges/.jshintrc b/MLEB/CleanChanges/.jshintrc
index 0967ef42..31ce9424 100644
--- a/MLEB/CleanChanges/.jshintrc
+++ b/MLEB/CleanChanges/.jshintrc
@@ -1 +1,20 @@
-{}
+{
+ "bitwise": true,
+ "curly": true,
+ "eqeqeq": true,
+ "forin": false,
+ "freeze": true,
+ "latedef": true,
+ "noarg": true,
+ "nonew": true,
+ "onevar": true,
+ "strict": true,
+ "undef": true,
+ "unused": true,
+ "browser": true,
+ "predef": [
+ "mediaWiki",
+ "jQuery",
+ "QUnit"
+ ]
+}
diff --git a/MLEB/CleanChanges/CleanChanges.i18n.php b/MLEB/CleanChanges/CleanChanges.i18n.php
deleted file mode 100644
index 17bcda67..00000000
--- a/MLEB/CleanChanges/CleanChanges.i18n.php
+++ /dev/null
@@ -1,35 +0,0 @@
-<?php
-/**
- * This is a backwards-compatibility shim, generated by:
- * https://git.wikimedia.org/blob/mediawiki%2Fcore.git/HEAD/maintenance%2FgenerateJsonI18n.php
- *
- * Beginning with MediaWiki 1.23, translation strings are stored in json files,
- * and the EXTENSION.i18n.php file only exists to provide compatibility with
- * older releases of MediaWiki. For more information about this migration, see:
- * https://www.mediawiki.org/wiki/Requests_for_comment/Localisation_format
- *
- * This shim maintains compatibility back to MediaWiki 1.17.
- */
-$messages = array();
-if ( !function_exists( 'wfJsonI18nShimd87671d4445e53f6' ) ) {
- function wfJsonI18nShimd87671d4445e53f6( $cache, $code, &$cachedData ) {
- $codeSequence = array_merge( array( $code ), $cachedData['fallbackSequence'] );
- foreach ( $codeSequence as $csCode ) {
- $fileName = dirname( __FILE__ ) . "/i18n/$csCode.json";
- if ( is_readable( $fileName ) ) {
- $data = FormatJson::decode( file_get_contents( $fileName ), true );
- foreach ( array_keys( $data ) as $key ) {
- if ( $key === '' || $key[0] === '@' ) {
- unset( $data[$key] );
- }
- }
- $cachedData['messages'] = array_merge( $data, $cachedData['messages'] );
- }
-
- $cachedData['deps'][] = new FileDependency( $fileName );
- }
- return true;
- }
-
- $GLOBALS['wgHooks']['LocalisationCacheRecache'][] = 'wfJsonI18nShimd87671d4445e53f6';
-}
diff --git a/MLEB/CleanChanges/CleanChanges.php b/MLEB/CleanChanges/CleanChanges.php
index 7a9d5c5c..fe520cd8 100644
--- a/MLEB/CleanChanges/CleanChanges.php
+++ b/MLEB/CleanChanges/CleanChanges.php
@@ -1,55 +1,14 @@
<?php
-if ( !defined( 'MEDIAWIKI' ) ) die();
-/**
- * An extension to show a nice compact changes list and few extra filters for
- * Special:RecentChanges.php
- *
- * @file
- * @ingroup Extensions
- *
- * @author Niklas Laxström
- * @copyright Copyright © 2008-2012, Niklas Laxström
- * @license http://www.gnu.org/copyleft/gpl.html GNU General Public License 2.0 or later
- */
-
-/* Set up messages and includes */
-$dir = __DIR__;
-$wgMessagesDirs['CleanChanges'] = __DIR__ . '/i18n';
-$wgExtensionMessagesFiles['CleanChanges'] = "$dir/CleanChanges.i18n.php";
-$wgAutoloadClasses['NCL'] = "$dir/CleanChanges_body.php";
-
-require_once __DIR__ . '/Resources.php';
-
-/* Hook into code */
-$wgHooks['FetchChangesList'][] = 'NCL::hook';
-$wgHooks['MakeGlobalVariablesScript'][] = 'NCL::addScriptVariables';
-
-/* Extension information */
-$wgExtensionCredits['other'][] = array(
- 'path' => __FILE__,
- 'name' => 'Clean Changes',
- 'version' => '[https://www.mediawiki.org/wiki/MLEB MLEB 2015.04]',
- 'author' => 'Niklas Laxström',
- 'descriptionmsg' => 'cleanchanges-desc',
- 'url' => 'https://www.mediawiki.org/wiki/Extension:CleanChanges',
- 'license-name' => 'GPL-2.0+',
-);
-
-$wgCCUserFilter = true;
-$wgCCTrailerFilter = false;
-
-$wgExtensionFunctions[] = 'ccSetupFilters';
-$wgAutoloadClasses['CCFilters'] = "$dir/Filters.php";
-
-function ccSetupFilters() {
- global $wgCCUserFilter, $wgCCTrailerFilter, $wgHooks;
-
- if ( $wgCCUserFilter ) {
- $wgHooks['SpecialRecentChangesQuery'][] = 'CCFilters::user';
- $wgHooks['SpecialRecentChangesPanel'][] = 'CCFilters::userForm';
- }
- if ( $wgCCTrailerFilter ) {
- $wgHooks['SpecialRecentChangesQuery'][] = 'CCFilters::trailer';
- $wgHooks['SpecialRecentChangesPanel'][] = 'CCFilters::trailerForm';
- }
+if ( function_exists( 'wfLoadExtension' ) ) {
+ wfLoadExtension( 'CleanChanges' );
+ // Keep i18n globals so mergeMessageFileList.php doesn't break
+ $wgMessagesDirs['CleanChanges'] = __DIR__ . '/i18n';
+ /* wfWarn(
+ 'Deprecated PHP entry point used for CleanChanges extension. ' .
+ 'Please use wfLoadExtension instead, ' .
+ 'see https://www.mediawiki.org/wiki/Extension_registration for more details.'
+ ); */
+ return;
+} else {
+ die( 'This version of the CleanChanges extension requires MediaWiki 1.25+' );
}
diff --git a/MLEB/CleanChanges/CleanChanges_body.php b/MLEB/CleanChanges/CleanChanges_body.php
index 05806614..a9e6a967 100644
--- a/MLEB/CleanChanges/CleanChanges_body.php
+++ b/MLEB/CleanChanges/CleanChanges_body.php
@@ -6,14 +6,24 @@
class NCL extends EnhancedChangesList {
/**
* Determines which version of changes list to provide, or none.
+ * @param User $user
+ * @param Skin $skin
+ * @param array &$list
+ * @return bool
*/
- public static function hook( User $user, Skin &$skin, &$list ) {
+ public static function hook( User $user, Skin $skin, &$list ) {
+ global $wgCCTrailerFilter, $wgCCFiltersOnly;
+
$list = null;
- if ( defined( 'ULS_VERSION' ) ) {
+ if ( $wgCCTrailerFilter && defined( 'ULS_VERSION' ) ) {
$skin->getOutput()->addModules( 'ext.cleanchanges.uls' );
}
+ if ( $wgCCFiltersOnly ) {
+ return;
+ }
+
/* allow override */
$request = $skin->getRequest();
if ( $request->getBool( 'cleanrc' ) ) {
@@ -38,10 +48,10 @@ class NCL extends EnhancedChangesList {
return $list === null;
}
- protected static $userinfo = array();
+ protected static $userinfo = [];
/**
- * @param $vars array
+ * @param array &$vars
* @return bool
*/
public static function addScriptVariables( &$vars ) {
@@ -76,10 +86,9 @@ class NCL extends EnhancedChangesList {
public function beginRecentChangesList() {
parent::beginRecentChangesList();
$dir = $this->direction ? 'ltr' : 'rtl';
- return
- Xml::openElement(
+ return Xml::openElement(
'div',
- array( 'style' => "direction: $dir" )
+ [ 'style' => "direction: $dir" ]
);
}
@@ -91,7 +100,7 @@ class NCL extends EnhancedChangesList {
}
/**
- * @param RCCacheEntry $rc
+ * @param RCCacheEntry|null $rc
* @return int
*/
protected function isLog( RCCacheEntry $rc = null ) {
@@ -116,11 +125,12 @@ class NCL extends EnhancedChangesList {
/**
* Format a line for enhanced recentchange (aka with JavaScript and block of lines).
- * @param RecentChange $baseRC
+ * @param RecentChange &$baseRC
* @param bool $watched
+ * @param int|null $linenumber
* @return string
*/
- public function recentChangesLine( &$baseRC, $watched = false ) {
+ public function recentChangesLine( &$baseRC, $watched = false, $linenumber = null ) {
# Create a specialised object
$rc = RCCacheEntry::newFromParent( $baseRC );
@@ -144,8 +154,8 @@ class NCL extends EnhancedChangesList {
$clink = linker::linkKnown(
$titleObj,
null,
- array(),
- array( 'rcid' => $rc_id )
+ [],
+ [ 'rcid' => $rc_id ]
);
} else {
$clink = Linker::linkKnown( $titleObj );
@@ -156,15 +166,17 @@ class NCL extends EnhancedChangesList {
$rc->timestamp = $time;
$rc->numberofWatchingusers = $baseRC->numberofWatchingusers;
- $rc->_reqCurId = array( 'curid' => $rc->getAttribute( 'rc_cur_id' ) );
- $rc->_reqOldId = array( 'oldid' => $rc->getAttribute( 'rc_this_oldid' ) );
+ $rc->_reqCurId = [ 'curid' => $rc->getAttribute( 'rc_cur_id' ) ];
+ $rc->_reqOldId = [ 'oldid' => $rc->getAttribute( 'rc_this_oldid' ) ];
$this->makeLinks( $rc );
// Make user links
- if ( $this->isDeleted( $rc, Revision::DELETED_USER ) ) {
- $rc->_user = ' <span class="history-deleted">' . $this->msg( 'rev-deleted-user' )->escaped() . '</span>';
+ if ( self::isDeleted( $rc, Revision::DELETED_USER ) ) {
+ $rc->_user = ' <span class="history-deleted">' .
+ $this->msg( 'rev-deleted-user' )->escaped() .
+ '</span>';
$rc->_userInfo = '';
- self::$userinfo += array();
+ self::$userinfo += [];
} else {
$rc->_user = Linker::userLink(
$rc->getAttribute( 'rc_user' ),
@@ -190,7 +202,7 @@ class NCL extends EnhancedChangesList {
if ( $date !== $this->lastdate ) {
# Process current cache
$ret = $this->recentChangesBlock();
- $this->rc_cache = array();
+ $this->rc_cache = [];
$ret .= Xml::element( 'h4', null, $date ) . "\n";
$this->lastdate = $date;
}
@@ -219,30 +231,30 @@ class NCL extends EnhancedChangesList {
if ( !$this->isLog( $rc ) ) {
# Make cur, diff and last links
- $querycur = array( 'diff' => 0 ) + $rc->_reqCurId + $rc->_reqOldId;
- $querydiff = array(
+ $querycur = [ 'diff' => 0 ] + $rc->_reqCurId + $rc->_reqOldId;
+ $querydiff = [
'diff' => $rc->getAttribute( 'rc_this_oldid' ),
'oldid' => $rc->getAttribute( 'rc_last_oldid' ),
'rcid' => $rc->unpatrolled ? $rc->getAttribute( 'rc_id' ) : '',
- ) + $rc->_reqCurId;
+ ] + $rc->_reqCurId;
$rc->_curLink = Linker::linkKnown( $rc->getTitle(),
- $this->message['cur'], array(), $querycur );
+ $this->message['cur'], [], $querycur );
if ( $rc->getAttribute( 'rc_type' ) != RC_NEW ) {
$rc->_diffLink = Linker::linkKnown( $rc->getTitle(),
- $this->message['diff'], array(), $querydiff );
+ $this->message['diff'], [], $querydiff );
}
if ( $rc->getAttribute( 'rc_last_oldid' ) != 0 ) {
// This is not the first revision
$rc->_lastLink = Linker::linkKnown( $rc->getTitle(),
- $this->message['last'], array(), $querydiff );
+ $this->message['last'], [], $querydiff );
}
$rc->_histLink = Linker::link( $rc->getTitle(),
- $this->message['hist'], array(),
- $rc->_reqCurId + array( 'action' => 'history' )
+ $this->message['hist'], [],
+ $rc->_reqCurId + [ 'action' => 'history' ]
);
}
}
@@ -255,8 +267,8 @@ class NCL extends EnhancedChangesList {
protected function recentChangesBlockGroup( $block ) {
# Collate list of users
$isnew = false;
- $userlinks = array();
- $overrides = array( 'minor' => false, 'bot' => false );
+ $userlinks = [];
+ $overrides = [ 'minor' => false, 'bot' => false ];
$oldid = 0;
foreach ( $block as $rcObj ) {
$oldid = $rcObj->mAttribs['rc_last_oldid'];
@@ -281,12 +293,20 @@ class NCL extends EnhancedChangesList {
$rci = 'RCI' . $this->rcCacheIndex;
$rcl = 'RCL' . $this->rcCacheIndex;
$rcm = 'RCM' . $this->rcCacheIndex;
- $toggleLink = "javascript:toggleVisibilityE('$rci', '$rcm', '$rcl', 'block')";
+ $linkAttribs = [
+ 'data-mw-cleanchanges-level' => $rci,
+ 'data-mw-cleanchanges-other' => $rcm,
+ 'data-mw-cleanchanges-link' => $rcl,
+ 'tabindex' => '0',
+ 'role' => 'button',
+ 'class' => 'mw-cleanchanges-showblock'
+ ];
$tl =
- Xml::tags( 'span', array( 'id' => $rcm ),
- Xml::tags( 'a', array( 'href' => $toggleLink ), $this->arrow( $this->direction ? 'r' : 'l' ) ) ) .
- Xml::tags( 'span', array( 'id' => $rcl, 'style' => 'display: none;' ),
- Xml::tags( 'a', array( 'href' => $toggleLink ), $this->downArrow() ) );
+ Xml::tags( 'span', [ 'id' => $rcm ],
+ Xml::tags( 'a', $linkAttribs,
+ $this->arrow( $this->direction ? 'r' : 'l' ) ) ) .
+ Xml::tags( 'span', [ 'id' => $rcl, 'style' => 'display: none;' ],
+ Xml::tags( 'a', $linkAttribs, $this->downArrow() ) );
$items[] = $tl . $info;
@@ -297,7 +317,7 @@ class NCL extends EnhancedChangesList {
if ( !$log ) {
# Changes
$n = count( $block );
- static $nchanges = array();
+ static $nchanges = [];
if ( !isset( $nchanges[$n] ) ) {
$nchanges[$n] = $this->msg( 'nchanges' )->numParams( $n )->escaped();
}
@@ -306,18 +326,18 @@ class NCL extends EnhancedChangesList {
$changes = Linker::linkKnown(
$block[0]->getTitle(),
$nchanges[$n],
- array(),
- array(
+ [],
+ [
'curid' => $block[0]->mAttribs['rc_cur_id'],
'diff' => $block[0]->mAttribs['rc_this_oldid'],
'oldid' => $oldid
- )
+ ]
);
} else {
$changes = $nchanges[$n];
}
- $size = $this->getCharacterDifference( $block[0], $block[count( $block ) -1] );
+ $size = $this->getCharacterDifference( $block[0], $block[count( $block ) - 1] );
$items[] = $this->changeInfo( $changes, $block[0]->_histLink, $size );
}
@@ -327,11 +347,11 @@ class NCL extends EnhancedChangesList {
$items[] = $this->makeUserlinks( $userlinks );
$items[] = $block[0]->_watching;
- $lines = Xml::tags( 'div', null, implode( " {$this->dir}", $items ) ) . "\n" ;
+ $lines = Xml::tags( 'div', null, implode( " {$this->dir}", $items ) ) . "\n";
# Sub-entries
$lines .= Xml::tags( 'div',
- array( 'id' => $rci, 'style' => 'display: none;' ),
+ [ 'id' => $rci, 'style' => 'display: none;' ],
$this->subEntries( $block )
) . "\n";
@@ -348,11 +368,17 @@ class NCL extends EnhancedChangesList {
*/
protected function arrow( $dir, $alt = '', $title = '' ) {
global $wgExtensionAssetsPath;
- $encUrl = htmlspecialchars( $wgExtensionAssetsPath . '/CleanChanges/images/Arr_' . $dir . '.png' );
- $encAlt = htmlspecialchars( $alt );
- $encTitle = htmlspecialchars( $title );
- return "<img src=\"$encUrl\" width=\"12\" height=\"12\" alt=\"$encAlt\" title=\"$encTitle\" />";
+ return Html::element(
+ 'img',
+ [
+ 'src' => "$wgExtensionAssetsPath/CleanChanges/images/Arr_$dir.png",
+ 'width' => 12,
+ 'height' => 12,
+ 'alt' => $alt,
+ 'title' => $title,
+ ]
+ );
}
/**
@@ -380,7 +406,7 @@ class NCL extends EnhancedChangesList {
* @return string HTML "<img>" tag
*/
protected function spacerArrow() {
- return $this->arrow( '', codepointToUtf8( 0xa0 ) ); // non-breaking space
+ return $this->arrow( '', UtfNormal\Utils::codepointToUtf8( 0xa0 ) ); // non-breaking space
}
/**
@@ -390,7 +416,7 @@ class NCL extends EnhancedChangesList {
protected function subEntries( array $block ) {
$lines = '';
foreach ( $block as $rcObj ) {
- $items = array();
+ $items = [];
$log = $this->isLog( $rcObj );
$time = $rcObj->timestamp;
@@ -398,7 +424,7 @@ class NCL extends EnhancedChangesList {
$time = Linker::linkKnown(
$rcObj->getTitle(),
$rcObj->timestamp,
- array(),
+ [],
$rcObj->_reqOldId + $rcObj->_reqCurId
);
}
@@ -443,7 +469,7 @@ class NCL extends EnhancedChangesList {
if ( is_int( $size ) ) {
$size = $this->wrapCharacterDifference( $size );
// FIXME: i18n: Hard coded parentheses and spaces.
- return $this->msg( 'cleanchanges-rcinfo-3' )->rawParams( $diff, $hist, $size)->escaped();
+ return $this->msg( 'cleanchanges-rcinfo-3' )->rawParams( $diff, $hist, $size )->escaped();
} else {
return $this->msg( 'cleanchanges-rcinfo-2' )->rawParams( $diff, $hist )->escaped();
}
@@ -491,12 +517,16 @@ class NCL extends EnhancedChangesList {
$action = '';
if ( $comment === '' ) {
return $action;
- } elseif ( $this->isDeleted( $rc, LogPage::DELETED_COMMENT ) ) {
+ } elseif ( self::isDeleted( $rc, LogPage::DELETED_COMMENT ) ) {
$priviledged = $this->getUser()->isAllowed( 'deleterevision' );
if ( $priviledged ) {
- return $action . ' <span class="history-deleted">' . Linker::formatComment( $comment ) . '</span>';
+ return $action . ' <span class="history-deleted">' .
+ Linker::formatComment( $comment ) .
+ '</span>';
}
- return $action . ' <span class="history-deleted">' . $this->msg( 'rev-deleted-comment' )->escaped() . '</span>';
+ return $action . ' <span class="history-deleted">' .
+ $this->msg( 'rev-deleted-comment' )->escaped() .
+ '</span>';
}
return $action . Linker::commentBlock( $comment, $rc->getTitle() );
}
@@ -506,7 +536,7 @@ class NCL extends EnhancedChangesList {
* @param int $userId user id, 0 for anons
* @param string $userText username
* @return array|string Either an array of html and array of messages, or ''
- * [0]: html span and links to user tools
+ * [0]: html span and links to user tools
* [1]: array of escaped message strings
*/
public function userToolLinks( $userId, $userText ) {
@@ -525,32 +555,39 @@ class NCL extends EnhancedChangesList {
static $linkindex = 0;
$linkindex++;
- static $users = array();
+ static $users = [];
$userindex = array_search( $userText, $users, true );
if ( $userindex === false ) {
$users[] = $userText;
- $userindex = count( $users ) -1;
+ $userindex = count( $users ) - 1;
}
global $wgExtensionAssetsPath;
- $image = Xml::element( 'img', array(
+ $image = Xml::element( 'img', [
'src' => $wgExtensionAssetsPath . '/CleanChanges/images/showuserlinks.png',
'alt' => $this->msg( 'cleanchanges-showuserlinks' )->text(),
'title' => $this->msg( 'cleanchanges-showuserlinks' )->text(),
'width' => '15',
'height' => '11',
- )
+ ]
);
$rci = 'RCUI' . $userindex;
$rcl = 'RCUL' . $linkindex;
$rcm = 'RCUM' . $linkindex;
- $toggleLink = "javascript:showUserInfo('wgUserInfo$rci', '$rcl' )";
- $tl = Xml::tags( 'span', array( 'id' => $rcm ),
- Xml::tags( 'a', array( 'href' => $toggleLink ), $image ) );
- $tl .= Xml::element( 'span', array( 'id' => $rcl ), ' ' );
+ $linkAttribs = [
+ 'tabindex' => '0',
+ 'role' => 'button',
+ 'class' => 'mw-cleanchanges-showuserinfo',
+ 'data-mw-userinfo-id' => $rci,
+ 'data-mw-userinfo-target' => $rcl
+ ];
+ $tl = Xml::tags( 'span', [ 'id' => $rcm ],
+ Xml::tags( 'a', $linkAttribs, $image )
+ );
+ $tl .= Xml::element( 'span', [ 'id' => $rcl ], ' ' );
- $items = array();
+ $items = [];
if ( $talkable ) {
$items[] = Linker::userTalkLink( $userId, $userText );
}
@@ -575,9 +612,9 @@ class NCL extends EnhancedChangesList {
$msg = $this->msg( 'parentheses' )
->rawParams( $this->getLanguage()->pipeList( $items ) )
->escaped();
- $data = array( "wgUserInfo$rci" => $msg );
+ $data = [ "wgUserInfo$rci" => $msg ];
- return array( $tl, $data );
+ return [ $tl, $data ];
} else {
return '';
}
@@ -586,6 +623,8 @@ class NCL extends EnhancedChangesList {
/**
* Makes aggregated list of contributors for a changes group.
* Example: [Usera; AnotherUser; ActiveUser ‎(2×); Userabc ‎(6×)]
+ * @param array $userlinks
+ * @return string
*/
protected function makeUserlinks( $userlinks ) {
/*
@@ -595,7 +634,7 @@ class NCL extends EnhancedChangesList {
krsort( $userlinks );
asort( $userlinks );
- $users = array();
+ $users = [];
foreach ( $userlinks as $userlink => $count ) {
$text = $userlink;
if ( $count > 1 ) {
@@ -611,21 +650,21 @@ class NCL extends EnhancedChangesList {
/**
* @param RCCacheEntry $rc
- * @param array $overrides
+ * @param array|null $overrides
* @return string
*/
protected function getFlags( $rc, array $overrides = null ) {
// @todo We assume all characters are of equal width, which they may be not
- $map = array(
+ $map = [
# item => field letter-or-something
- 'new' => array( 'rc_new', self::flag( 'newpage' ) ),
- 'minor' => array( 'rc_minor', self::flag( 'minor' ) ),
- 'bot' => array( 'rc_bot', self::flag( 'bot' ) ),
- );
+ 'new' => [ 'rc_new', self::flag( 'newpage' ) ],
+ 'minor' => [ 'rc_minor', self::flag( 'minor' ) ],
+ 'bot' => [ 'rc_bot', self::flag( 'bot' ) ],
+ ];
static $nothing = "\xc2\xa0";
- $items = array();
+ $items = [];
foreach ( $map as $item => $data ) {
list( $field, $flag ) = $data;
$bool = isset( $overrides[$item] ) ? $overrides[$item] : $rc->getAttribute( $field );
@@ -671,7 +710,7 @@ class NCL extends EnhancedChangesList {
*/
public function wrapCharacterDifference( $szdiff ) {
global $wgRCChangedSizeThreshold;
- static $cache = array();
+ static $cache = [];
if ( !isset( $cache[$szdiff] ) ) {
// @todo FIXME: Hard coded text (+).
$prefix = $szdiff > 0 ? '+' : '';
@@ -694,16 +733,16 @@ class NCL extends EnhancedChangesList {
}
/**
- * @param $class
- * @param $content
+ * @param string $class
+ * @param string $content
* @param string $tag
* @param bool $escape
* @return string
*/
protected function XMLwrapper( $class, $content, $tag = 'span', $escape = true ) {
if ( $escape ) {
- return Xml::element( $tag, array( 'class' => $class ), $content );
+ return Xml::element( $tag, [ 'class' => $class ], $content );
}
- return Xml::tags( $tag, array( 'class' => $class ), $content );
+ return Xml::tags( $tag, [ 'class' => $class ], $content );
}
}
diff --git a/MLEB/CleanChanges/Filters.php b/MLEB/CleanChanges/Filters.php
index d6e9939e..477c6d91 100644
--- a/MLEB/CleanChanges/Filters.php
+++ b/MLEB/CleanChanges/Filters.php
@@ -3,93 +3,139 @@
class CCFilters {
/**
- * @param array $conds
- * @param array $tables
- * @param array $join_conds
+ * Hook: ChangesListSpecialPageQuery
+ * @param string $name
+ * @param array &$tables
+ * @param array &$fields
+ * @param array &$conds
+ * @param array &$query_options
+ * @param array &$join_conds
* @param FormOptions $opts
- * @return bool
*/
- public static function user( &$conds, &$tables, &$join_conds, FormOptions $opts ) {
- global $wgRequest;
+ public static function user(
+ $name,
+ &$tables,
+ &$fields,
+ &$conds,
+ &$query_options,
+ &$join_conds,
+ FormOptions $opts
+ ) {
+ global $wgRequest, $wgCCUserFilter;
+
+ if ( !$wgCCUserFilter ) {
+ return;
+ }
+
$opts->add( 'users', '' );
$users = $wgRequest->getVal( 'users' );
if ( $users === null ) {
- return true;
+ return;
}
- $idfilters = array();
- $userArr = explode( '|', $users );
- foreach ( $userArr as $u ) {
- $id = User::idFromName( $u );
- if ( $id !== null ) {
- $idfilters[] = $id;
+ $userArr = UserArray::newFromNames( explode( '|', $users ) );
+ if ( $userArr->count() ) {
+ $dbr = wfGetDB( DB_REPLICA );
+ if ( class_exists( 'ActorMigration' ) ) {
+ $conds[] = ActorMigration::newMigration()
+ ->getWhere( $dbr, 'rc_user', iterator_to_array( $userArr ) )['conds'];
+ } else {
+ $ids = [];
+ foreach ( $userArr as $user ) {
+ $ids[] = $user->getId();
+ }
+ $conds['rc_user'] = $ids;
}
- }
- if ( count( $idfilters ) ) {
- $dbr = wfGetDB( DB_SLAVE );
- $conds[] = 'rc_user IN (' . $dbr->makeList( $idfilters ) . ')';
$opts->setValue( 'users', $users );
}
-
- return true;
}
/**
- * @param $items array
- * @param $opts FormOptions
- * @return bool
+ * Hook: SpecialRecentChangesPanel
+ * @param array &$items
+ * @param FormOptions $opts
*/
public static function userForm( &$items, FormOptions $opts ) {
+ global $wgRequest, $wgCCUserFilter;
+
+ if ( !$wgCCUserFilter ) {
+ return;
+ }
+
$opts->consumeValue( 'users' );
- global $wgRequest;
$default = $wgRequest->getVal( 'users', '' );
- $items['users'] = Xml::inputLabelSep( wfMessage( 'cleanchanges-users' )->text(), 'users',
- 'mw-users', 40, $default );
- return true;
+ $items['users'] = Xml::inputLabelSep(
+ wfMessage( 'cleanchanges-users' )->text(),
+ 'users',
+ 'mw-users',
+ 40,
+ $default
+ );
}
/**
- * @param array $conds
- * @param array $tables
- * @param array $join_conds
+ * Hook: ChangesListSpecialPageQuery
+ * @param string $name
+ * @param array &$tables
+ * @param array &$fields
+ * @param array &$conds
+ * @param array &$query_options
+ * @param array &$join_conds
* @param FormOptions $opts
- * @return bool
*/
- public static function trailer( &$conds, &$tables, &$join_conds, FormOptions $opts ) {
- global $wgRequest;
+ public static function trailer(
+ $name,
+ &$tables,
+ &$fields,
+ &$conds,
+ &$query_options,
+ &$join_conds,
+ FormOptions $opts
+ ) {
+ global $wgRequest, $wgCCTrailerFilter;
+
+ if ( !$wgCCTrailerFilter ) {
+ return;
+ }
+
$opts->add( 'trailer', '' );
$trailer = $wgRequest->getVal( 'trailer' );
- if ( $trailer === null ) return true;
+ if ( $trailer === null ) {
+ return;
+ }
- $dbr = wfGetDB( DB_SLAVE );
+ $dbr = wfGetDB( DB_REPLICA );
$conds[] = 'rc_title ' . $dbr->buildLike( $dbr->anyString(), $trailer );
$opts->setValue( 'trailer', $trailer );
-
- return true;
}
/**
- * @param array $items
+ * Hook: SpecialRecentChangesPanel
+ * @param array &$items
* @param FormOptions $opts
- * @return bool
*/
public static function trailerForm( &$items, FormOptions $opts ) {
- $opts->consumeValue( 'trailer' );
-
- global $wgRequest;
- $default = $wgRequest->getVal( 'trailer', '' );
/**
* @var Language $wgLang
*/
- global $wgLang;
- if ( is_callable( array( 'LanguageNames', 'getNames' ) ) ) {
+ global $wgLang, $wgRequest, $wgCCTrailerFilter;
+
+ if ( !$wgCCTrailerFilter ) {
+ return;
+ }
+
+ $opts->consumeValue( 'trailer' );
+
+ $default = $wgRequest->getVal( 'trailer', '' );
+
+ if ( is_callable( [ 'LanguageNames', 'getNames' ] ) ) {
$languages = LanguageNames::getNames( $wgLang->getCode(),
LanguageNames::FALLBACK_NORMAL,
LanguageNames::LIST_MW
);
} else {
- $languages = Language::getLanguageNames( false );
+ $languages = Language::fetchLanguageNames( null, 'mw' );
}
ksort( $languages );
$options = Xml::option( wfMessage( 'cleanchanges-language-na' )->text(), '', $default === '' );
@@ -98,15 +144,14 @@ class CCFilters {
$options .= Xml::option( "$code - $name", "/$code", $selected ) . "\n";
}
$str =
- Xml::openElement( 'select', array(
+ Xml::openElement( 'select', [
'name' => 'trailer',
'class' => 'mw-language-selector',
'id' => 'sp-rc-language',
- ) ) .
+ ] ) .
$options .
Xml::closeElement( 'select' );
- $items['tailer'] = array( wfMessage( 'cleanchanges-language' )->escaped(), $str );
- return true;
+ $items['tailer'] = [ wfMessage( 'cleanchanges-language' )->escaped(), $str ];
}
}
diff --git a/MLEB/CleanChanges/RELEASE-NOTES b/MLEB/CleanChanges/RELEASE-NOTES
index deca1487..0778ac1d 100644
--- a/MLEB/CleanChanges/RELEASE-NOTES
+++ b/MLEB/CleanChanges/RELEASE-NOTES
@@ -1,5 +1,5 @@
-== CleanChanges 2015.04 ==
-Released at 2015-04-30.
+== CleanChanges 2018.10 ==
+Released at 2018-10-29.
-=== Highlights ===
-* Localisation updates only.
+=== Noteworthy changes ===
+* Maintainance updates only.
diff --git a/MLEB/CleanChanges/Resources.php b/MLEB/CleanChanges/Resources.php
deleted file mode 100644
index 2a8b36c5..00000000
--- a/MLEB/CleanChanges/Resources.php
+++ /dev/null
@@ -1,17 +0,0 @@
-<?php
-
-global $wgResourceModules;
-
-$resourcePaths = array(
- 'localBasePath' => __DIR__,
- 'remoteExtPath' => 'CleanChanges'
-);
-
-$wgResourceModules['ext.cleanchanges'] = array(
- 'scripts' => 'resources/cleanchanges.js',
-) + $resourcePaths;
-
-$wgResourceModules['ext.cleanchanges.uls'] = array(
- 'scripts' => 'resources/cleanchanges.uls.js',
- 'styles' => 'resources/cleanchanges.uls.css',
-) + $resourcePaths;
diff --git a/MLEB/CleanChanges/composer.json b/MLEB/CleanChanges/composer.json
index beb266f8..330098d2 100644
--- a/MLEB/CleanChanges/composer.json
+++ b/MLEB/CleanChanges/composer.json
@@ -1,11 +1,28 @@
{
- "name": "mediawiki/cleanchanges",
+ "name": "mediawiki/clean-changes",
"type": "mediawiki-extension",
"description": "More compact display of recent changes lists",
"homepage": "https://www.mediawiki.org/wiki/Extension:CleanChanges",
- "license": "GPL-2.0+",
-
+ "license": "GPL-2.0-or-later",
"require": {
- "composer/installers": "*"
+ "php": ">=5.5.9",
+ "composer/installers": ">=1.0.1"
+ },
+ "require-dev": {
+ "jakub-onderka/php-parallel-lint": "1.0.0",
+ "mediawiki/mediawiki-codesniffer": "19.1.0",
+ "jakub-onderka/php-console-highlighter": "0.3.2",
+ "mediawiki/minus-x": "0.3.1"
+ },
+ "scripts": {
+ "fix": [
+ "phpcbf",
+ "minus-x fix ."
+ ],
+ "test": [
+ "parallel-lint . --exclude vendor --exclude node_modules",
+ "phpcs -p -s",
+ "minus-x check ."
+ ]
}
}
diff --git a/MLEB/CleanChanges/i18n/ar.json b/MLEB/CleanChanges/i18n/ar.json
index ab6e677e..d384829a 100644
--- a/MLEB/CleanChanges/i18n/ar.json
+++ b/MLEB/CleanChanges/i18n/ar.json
@@ -2,11 +2,12 @@
"@metadata": {
"authors": [
"Meno25",
- "OsamaK"
+ "OsamaK",
+ "ديفيد"
]
},
"cleanchanges-changerightslink": "تغيير المجموعات",
- "cleanchanges-desc": "عرض أكثر ضغطا ل [[Special:RecentChanges|قائمة أحدث التغييرات]]",
+ "cleanchanges-desc": "عرض أكثر ضغطا [[Special:RecentChanges|لقائمة أحدث التغييرات]]",
"cleanchanges-language": "اللغة:",
"cleanchanges-language-na": "الكل",
"cleanchanges-users": "المستخدمون (للفصل: |):",
diff --git a/MLEB/CleanChanges/i18n/azb.json b/MLEB/CleanChanges/i18n/azb.json
index 6588f322..be51f28e 100644
--- a/MLEB/CleanChanges/i18n/azb.json
+++ b/MLEB/CleanChanges/i18n/azb.json
@@ -2,10 +2,11 @@
"@metadata": {
"authors": [
"Ebrahimi-amir",
- "පසිඳු කාවින්ද"
+ "පසිඳු කාවින්ද",
+ "Koroğlu"
]
},
"cleanchanges-language": "دیل:",
"cleanchanges-language-na": "بوتون",
- "cleanchanges-users": "ایستیفاده‌چی‌لر (آییرماق: |):"
+ "cleanchanges-users": "ایشلدن‌لر (آییرماق: |):"
}
diff --git a/MLEB/CleanChanges/i18n/ce.json b/MLEB/CleanChanges/i18n/ce.json
index ba3f844b..5523689f 100644
--- a/MLEB/CleanChanges/i18n/ce.json
+++ b/MLEB/CleanChanges/i18n/ce.json
@@ -9,6 +9,6 @@
"cleanchanges-desc": "Алсамо тIеIовдан гайтар [[Special:RecentChanges|керла нисдарийн могӀам]]",
"cleanchanges-language": "Мотт:",
"cleanchanges-language-na": "Массо",
- "cleanchanges-users": "Декъашхой (буькъарг: |):",
+ "cleanchanges-users": "Декъашхой (дӀасакъасторг: |):",
"cleanchanges-showuserlinks": "Декъашхойн хьажоргаш гойту"
}
diff --git a/MLEB/CleanChanges/i18n/diq.json b/MLEB/CleanChanges/i18n/diq.json
index 08648f02..44269051 100644
--- a/MLEB/CleanChanges/i18n/diq.json
+++ b/MLEB/CleanChanges/i18n/diq.json
@@ -2,10 +2,14 @@
"@metadata": {
"authors": [
"Erdemaslancan",
- "Mirzali"
+ "Mirzali",
+ "Kumkumuk"
]
},
+ "cleanchanges-changerightslink": "Gruban bıvurnê",
+ "cleanchanges-desc": "Dehena asayışa kompakta [[Special:RecentChanges|Listey vurriyayışanê peyênan ]]",
"cleanchanges-language": "Zıwan:",
"cleanchanges-language-na": "Pêro",
- "cleanchanges-users": "Karberi (Ciya: |):"
+ "cleanchanges-users": "Karberi (Ciya: |):",
+ "cleanchanges-showuserlinks": "Linkanê Karberan bıasne"
}
diff --git a/MLEB/CleanChanges/i18n/en.json b/MLEB/CleanChanges/i18n/en.json
index 8eab9667..dbb3572e 100644
--- a/MLEB/CleanChanges/i18n/en.json
+++ b/MLEB/CleanChanges/i18n/en.json
@@ -1,13 +1,13 @@
{
- "@metadata": {
- "authors": []
- },
- "cleanchanges-changerightslink": "change groups",
- "cleanchanges-desc": "More compact display of the [[Special:RecentChanges|recent changes list]]",
- "cleanchanges-language": "Language:",
- "cleanchanges-language-na": "All",
- "cleanchanges-users": "Users (Sep: |):",
- "cleanchanges-showuserlinks": "Show user links",
- "cleanchanges-rcinfo-2": "($1; $2)",
- "cleanchanges-rcinfo-3": "($1; $2; $3)"
+ "@metadata": {
+ "authors": []
+ },
+ "cleanchanges-changerightslink": "change groups",
+ "cleanchanges-desc": "More compact display of the [[Special:RecentChanges|recent changes list]]",
+ "cleanchanges-language": "Language:",
+ "cleanchanges-language-na": "All",
+ "cleanchanges-users": "Users (Sep: |):",
+ "cleanchanges-showuserlinks": "Show user links",
+ "cleanchanges-rcinfo-2": "($1; $2)",
+ "cleanchanges-rcinfo-3": "($1; $2; $3)"
} \ No newline at end of file
diff --git a/MLEB/CleanChanges/i18n/es.json b/MLEB/CleanChanges/i18n/es.json
index 5fedd987..3a194e40 100644
--- a/MLEB/CleanChanges/i18n/es.json
+++ b/MLEB/CleanChanges/i18n/es.json
@@ -1,13 +1,14 @@
{
"@metadata": {
"authors": [
- "Sanbec"
+ "Sanbec",
+ "Fitoschido"
]
},
"cleanchanges-changerightslink": "cambiar grupos",
"cleanchanges-desc": "Visualización más compacta de la [[Special:RecentChanges|lista de cambios recientes]]",
"cleanchanges-language": "Idioma:",
"cleanchanges-language-na": "Todos",
- "cleanchanges-users": "Usuarios (Sep: |):",
+ "cleanchanges-users": "Usuarios (sep.: |):",
"cleanchanges-showuserlinks": "Mostrar enlaces de usuario"
}
diff --git a/MLEB/CleanChanges/i18n/gl.json b/MLEB/CleanChanges/i18n/gl.json
index c26b043e..2b84982c 100644
--- a/MLEB/CleanChanges/i18n/gl.json
+++ b/MLEB/CleanChanges/i18n/gl.json
@@ -2,13 +2,14 @@
"@metadata": {
"authors": [
"Alma",
- "Toliño"
+ "Toliño",
+ "Elisardojm"
]
},
"cleanchanges-changerightslink": "mudar grupos",
- "cleanchanges-desc": "Unha mostra máis compacta da [[Special:RecentChanges|lista de cambios recentes]]",
+ "cleanchanges-desc": "Unha presentación máis compacta da [[Special:RecentChanges|lista de cambios recentes]]",
"cleanchanges-language": "Lingua:",
"cleanchanges-language-na": "Todas",
"cleanchanges-users": "Usuarios (separados por |):",
- "cleanchanges-showuserlinks": "Mostrar as ligazóns de usuario"
+ "cleanchanges-showuserlinks": "Amosar as ligazóns de usuario"
}
diff --git a/MLEB/CleanChanges/i18n/hi.json b/MLEB/CleanChanges/i18n/hi.json
index 3ebdb2fc..4228c788 100644
--- a/MLEB/CleanChanges/i18n/hi.json
+++ b/MLEB/CleanChanges/i18n/hi.json
@@ -2,11 +2,14 @@
"@metadata": {
"authors": [
"Ansumang",
- "Kaustubh"
+ "Kaustubh",
+ "Innocentbunny"
]
},
"cleanchanges-changerightslink": "ग्रुप बदलें",
"cleanchanges-desc": "[[Special:RecentChanges|हाल में हुए बदलाव]] संक्षिप्त रूपमें दर्शायें",
"cleanchanges-language": "भाषा:",
- "cleanchanges-language-na": "सभी"
+ "cleanchanges-language-na": "सभी",
+ "cleanchanges-users": "उपयोक्तागण (\"|\" से विभक्त)",
+ "cleanchanges-showuserlinks": "उपयोक्ता कड़ियाँ दिखाएँ"
}
diff --git a/MLEB/CleanChanges/i18n/hr.json b/MLEB/CleanChanges/i18n/hr.json
index bf44b03d..bd12157a 100644
--- a/MLEB/CleanChanges/i18n/hr.json
+++ b/MLEB/CleanChanges/i18n/hr.json
@@ -1,13 +1,14 @@
{
"@metadata": {
"authors": [
- "Ex13"
+ "Ex13",
+ "Bugoslav"
]
},
- "cleanchanges-changerightslink": "promijeni grupe",
+ "cleanchanges-changerightslink": "promijeni skupine",
"cleanchanges-desc": "Kompaktniji prikaz [[Special:RecentChanges|nedavnih promjena]]",
"cleanchanges-language": "Jezik:",
"cleanchanges-language-na": "Svi",
- "cleanchanges-users": "Suradnici (Raz: |):",
+ "cleanchanges-users": "Suradnici (razdjeljivač: |):",
"cleanchanges-showuserlinks": "Prikaži poveznice suradnika"
}
diff --git a/MLEB/CleanChanges/i18n/kk-cyrl.json b/MLEB/CleanChanges/i18n/kk-cyrl.json
index a6f98b32..70a12a02 100644
--- a/MLEB/CleanChanges/i18n/kk-cyrl.json
+++ b/MLEB/CleanChanges/i18n/kk-cyrl.json
@@ -7,5 +7,6 @@
"cleanchanges-changerightslink": "Топтарды өзгерту",
"cleanchanges-language": "Тіл:",
"cleanchanges-language-na": "Барлығы",
+ "cleanchanges-users": "Қатысушылар (Бөл: |):",
"cleanchanges-showuserlinks": "Қатысушы сілтемелерін көрсету"
}
diff --git a/MLEB/CleanChanges/i18n/km.json b/MLEB/CleanChanges/i18n/km.json
index 0955eb4f..19f6d3c5 100644
--- a/MLEB/CleanChanges/i18n/km.json
+++ b/MLEB/CleanChanges/i18n/km.json
@@ -3,10 +3,12 @@
"authors": [
"Chhorran",
"Lovekhmer",
- "Thearith"
+ "Thearith",
+ "គីមស៊្រុន"
]
},
"cleanchanges-changerightslink": "ផ្លាស់ប្តូរក្រុម",
+ "cleanchanges-desc": "[[Special:RecentChanges|បញ្ជីបន្លាស់ប្ដូរថ្មីៗ]]ខ្នាតខ្លី",
"cleanchanges-language": "ភាសា៖",
"cleanchanges-language-na": "ទាំងអស់",
"cleanchanges-users": "អ្នកប្រើប្រាស់​(ខណ្ឌដោយ |)៖",
diff --git a/MLEB/CleanChanges/i18n/ko.json b/MLEB/CleanChanges/i18n/ko.json
index 52213937..07d7d81d 100644
--- a/MLEB/CleanChanges/i18n/ko.json
+++ b/MLEB/CleanChanges/i18n/ko.json
@@ -6,7 +6,7 @@
]
},
"cleanchanges-changerightslink": "그룹 바꾸기",
- "cleanchanges-desc": "[[Special:RecentChanges|최근 바뀜 목록]]을 더 조밀하게 보이기",
+ "cleanchanges-desc": "[[Special:RecentChanges|최근 바뀜 목록]]을 더 조밀하게 표시합니다",
"cleanchanges-language": "언어:",
"cleanchanges-language-na": "모두",
"cleanchanges-users": "사용자 (구분선: |):",
diff --git a/MLEB/CleanChanges/i18n/krc.json b/MLEB/CleanChanges/i18n/krc.json
index f50ab82b..f4e189d3 100644
--- a/MLEB/CleanChanges/i18n/krc.json
+++ b/MLEB/CleanChanges/i18n/krc.json
@@ -1,7 +1,8 @@
{
"@metadata": {
"authors": [
- "Iltever"
+ "Iltever",
+ "Ernác"
]
},
"cleanchanges-language": "Тил:"
diff --git a/MLEB/CleanChanges/i18n/ksh.json b/MLEB/CleanChanges/i18n/ksh.json
index 2d2d2fde..292aadd3 100644
--- a/MLEB/CleanChanges/i18n/ksh.json
+++ b/MLEB/CleanChanges/i18n/ksh.json
@@ -4,10 +4,10 @@
"Purodha"
]
},
- "cleanchanges-changerightslink": "Jruppe aanpasse",
+ "cleanchanges-changerightslink": "Jroppe aanpasse",
"cleanchanges-desc": "Määt en köötere [[Special:RecentChanges|Leß met de {{lcfirst:{{int:Recentchanges}}}}]].",
"cleanchanges-language": "Schprohch:",
- "cleanchanges-language-na": "all",
- "cleanchanges-users": "Metmaacher (donn | dozwesche, wann et zwei udder mieh sen):",
+ "cleanchanges-language-na": "jehde",
+ "cleanchanges-users": "Metmaacher (donn | dozwesche, wann et zwei udder mih sen):",
"cleanchanges-showuserlinks": "Links op Metmaacher zeije"
}
diff --git a/MLEB/CleanChanges/i18n/lt.json b/MLEB/CleanChanges/i18n/lt.json
index a8537044..91106818 100644
--- a/MLEB/CleanChanges/i18n/lt.json
+++ b/MLEB/CleanChanges/i18n/lt.json
@@ -5,7 +5,9 @@
]
},
"cleanchanges-changerightslink": "pakeisti grupes",
+ "cleanchanges-desc": "Labiau kompaktiškas [[Special:RecentChanges|naujausių pakeitimų sąrašo]] rodinys",
"cleanchanges-language": "Kalba:",
"cleanchanges-language-na": "Visi",
+ "cleanchanges-users": "Vartotojai (Atskirti: |):",
"cleanchanges-showuserlinks": "Rodyti vartotojo nuorodas"
}
diff --git a/MLEB/CleanChanges/i18n/nah.json b/MLEB/CleanChanges/i18n/nah.json
index f41a49cb..8780b5aa 100644
--- a/MLEB/CleanChanges/i18n/nah.json
+++ b/MLEB/CleanChanges/i18n/nah.json
@@ -2,13 +2,14 @@
"@metadata": {
"authors": [
"Fluence",
- "Teòtlalili"
+ "Teòtlalili",
+ "Akapochtli"
]
},
- "cleanchanges-changerightslink": "tlátlasèntlàlìlpátlalòs",
- "cleanchanges-desc": "Monèxtìs okachi tepitòn in [[Special:RecentChanges|welok tlapátlalli pàmitl]]",
- "cleanchanges-language": "Tlâtòlli:",
- "cleanchanges-language-na": "Mochtìn",
- "cleanchanges-users": "Motekìuhtiànimë (Sep: |):",
- "cleanchanges-showuserlinks": "Mà monèxti ìnetzòwìlwàn in motekìuhtiàni"
+ "cleanchanges-changerightslink": "ticpatlaz tlatlacentlaliliztli",
+ "cleanchanges-desc": "Monextiz ocachi tepiton in [[Special:RecentChanges|yancuic tlapatlaliztli ipan tlahtoltecpanaliztli]]",
+ "cleanchanges-language": "Tlahtolli:",
+ "cleanchanges-language-na": "Mochtin",
+ "cleanchanges-users": "Tequitiuhqueh (Sep: |):",
+ "cleanchanges-showuserlinks": "Monextia inetzohuilhuan in tequitiuhqui"
}
diff --git a/MLEB/CleanChanges/i18n/nb.json b/MLEB/CleanChanges/i18n/nb.json
index 705ae2eb..21246324 100644
--- a/MLEB/CleanChanges/i18n/nb.json
+++ b/MLEB/CleanChanges/i18n/nb.json
@@ -1,7 +1,8 @@
{
"@metadata": {
"authors": [
- "Nghtwlkr"
+ "Nghtwlkr",
+ "Jon Harald Søby"
]
},
"cleanchanges-changerightslink": "endre grupper",
diff --git a/MLEB/CleanChanges/i18n/pa.json b/MLEB/CleanChanges/i18n/pa.json
index 938a30bf..cb6f2556 100644
--- a/MLEB/CleanChanges/i18n/pa.json
+++ b/MLEB/CleanChanges/i18n/pa.json
@@ -1,8 +1,10 @@
{
"@metadata": {
"authors": [
- "Gman124"
+ "Gman124",
+ "Tow"
]
},
+ "cleanchanges-language": "ਭਾਸ਼ਾ:",
"cleanchanges-language-na": "ਸਭ"
}
diff --git a/MLEB/CleanChanges/i18n/pl.json b/MLEB/CleanChanges/i18n/pl.json
index 15409248..6c13e6b0 100644
--- a/MLEB/CleanChanges/i18n/pl.json
+++ b/MLEB/CleanChanges/i18n/pl.json
@@ -6,11 +6,12 @@
"Masti",
"McMonster",
"Sp5uhe",
- "Wpedzich"
+ "Wpedzich",
+ "Railfail536"
]
},
"cleanchanges-changerightslink": "zmień grupy",
- "cleanchanges-desc": "Bardziej zwarta wersja „[[Special:RecentChanges|Ostatnich zmian]]”",
+ "cleanchanges-desc": "Bardziej zwarta wersja [[Special:RecentChanges|ostatnich zmian]]",
"cleanchanges-language": "Język:",
"cleanchanges-language-na": "Wszystkie",
"cleanchanges-users": "Użytkownicy (rozdziel znakiem „|”):",
diff --git a/MLEB/CleanChanges/i18n/ps.json b/MLEB/CleanChanges/i18n/ps.json
index 13e06305..f1c5ee3a 100644
--- a/MLEB/CleanChanges/i18n/ps.json
+++ b/MLEB/CleanChanges/i18n/ps.json
@@ -1,7 +1,8 @@
{
"@metadata": {
"authors": [
- "Ahmed-Najib-Biabani-Ibrahimkhel"
+ "Ahmed-Najib-Biabani-Ibrahimkhel",
+ "Baloch Khan"
]
},
"cleanchanges-changerightslink": "ډلې بدلول",
@@ -9,5 +10,6 @@
"cleanchanges-language": "ژبه:",
"cleanchanges-language-na": "ټول",
"cleanchanges-users": "کارن (بېلول: |):",
- "cleanchanges-showuserlinks": "د کارن تړنې ښکاره کول"
+ "cleanchanges-showuserlinks": "د کارن تړنې ښکاره کول",
+ "cleanchanges-rcinfo-3": "($1؛ $2؛ $3)"
}
diff --git a/MLEB/CleanChanges/i18n/pt.json b/MLEB/CleanChanges/i18n/pt.json
index 0a5b286f..60201a5f 100644
--- a/MLEB/CleanChanges/i18n/pt.json
+++ b/MLEB/CleanChanges/i18n/pt.json
@@ -10,5 +10,5 @@
"cleanchanges-language": "Língua:",
"cleanchanges-language-na": "Todas",
"cleanchanges-users": "Utilizadores (Sep: |):",
- "cleanchanges-showuserlinks": "Mostrar links de utilizador"
+ "cleanchanges-showuserlinks": "Mostrar hiperligações de utilizador"
}
diff --git a/MLEB/CleanChanges/i18n/qqq.json b/MLEB/CleanChanges/i18n/qqq.json
index 4eb2d860..e39f1d9a 100644
--- a/MLEB/CleanChanges/i18n/qqq.json
+++ b/MLEB/CleanChanges/i18n/qqq.json
@@ -5,11 +5,12 @@
"Jon Harald Søby",
"Meno25",
"Purodha",
- "Shirayuki"
+ "Shirayuki",
+ "Umherirrender"
]
},
"cleanchanges-changerightslink": "Link text for a link in the recent changes page to manage user rights for a user.\nIt is shown after clicking on the \"Show user links\"-picture if you are allowed to manage user rights.",
- "cleanchanges-desc": "Shown in [[Special:Version]]",
+ "cleanchanges-desc": "{{desc|name=CleanChanges|url=https://www.mediawiki.org/wiki/Extension:CleanChanges}}",
"cleanchanges-language": "{{Identical|Language}}",
"cleanchanges-language-na": "Used in the trailer selection of [[Special:RecentChanges]] to not filter on any trailer.\n\n{{Identical|All}}",
"cleanchanges-users": "Used as label for \"Users\" input box.\n\n\"Sep: |\" stands for \"Separate with |\" or \"|-separated\".",
diff --git a/MLEB/CleanChanges/i18n/rif.json b/MLEB/CleanChanges/i18n/rif.json
index 89d8cf5d..0ce0c51c 100644
--- a/MLEB/CleanChanges/i18n/rif.json
+++ b/MLEB/CleanChanges/i18n/rif.json
@@ -2,9 +2,10 @@
"@metadata": {
"authors": [
"Aryaz",
- "Jose77"
+ "Jose77",
+ "Amara-Amaziɣ"
]
},
- "cleanchanges-language": "Tutlayt:",
- "cleanchanges-language-na": "Marra"
+ "cleanchanges-language": "ⵜⵓⵜⵍⴰⵢⵜ:",
+ "cleanchanges-language-na": "ⵎⴰⵔⵔⴰ"
}
diff --git a/MLEB/CleanChanges/i18n/ru.json b/MLEB/CleanChanges/i18n/ru.json
index 91d5515e..d62d35c2 100644
--- a/MLEB/CleanChanges/i18n/ru.json
+++ b/MLEB/CleanChanges/i18n/ru.json
@@ -3,7 +3,8 @@
"authors": [
"Ferrer",
"Innv",
- "Александр Сигачёв"
+ "Александр Сигачёв",
+ "RDmitriyS"
]
},
"cleanchanges-changerightslink": "изменить группы",
@@ -11,5 +12,5 @@
"cleanchanges-language": "Язык:",
"cleanchanges-language-na": "Все",
"cleanchanges-users": "Участники (разделитель: |):",
- "cleanchanges-showuserlinks": "Показывать ссылки участников"
+ "cleanchanges-showuserlinks": "Показать ссылки участника"
}
diff --git a/MLEB/CleanChanges/i18n/su.json b/MLEB/CleanChanges/i18n/su.json
index 2d39b581..5b5a0672 100644
--- a/MLEB/CleanChanges/i18n/su.json
+++ b/MLEB/CleanChanges/i18n/su.json
@@ -10,5 +10,5 @@
"cleanchanges-language": "Basa:",
"cleanchanges-language-na": "Kabéh",
"cleanchanges-users": "Pamaké (Pisah: |):",
- "cleanchanges-showuserlinks": "Témbongkeun tumbu pamaké"
+ "cleanchanges-showuserlinks": "Témbongkeun tutumbu pamaké"
}
diff --git a/MLEB/CleanChanges/i18n/zh-hans.json b/MLEB/CleanChanges/i18n/zh-hans.json
index 69275d09..a6b1dd6a 100644
--- a/MLEB/CleanChanges/i18n/zh-hans.json
+++ b/MLEB/CleanChanges/i18n/zh-hans.json
@@ -4,13 +4,14 @@
"Chenxiaoqino",
"Chenzw",
"Liangent",
- "Xiaomingyan"
+ "Xiaomingyan",
+ "Liuxinyu970226"
]
},
"cleanchanges-changerightslink": "更改群组",
"cleanchanges-desc": "更简洁的显示[[Special:RecentChanges|最近更改清单]]",
"cleanchanges-language": "语言:",
"cleanchanges-language-na": "所有",
- "cleanchanges-users": "用户 (Sep: |):",
+ "cleanchanges-users": "用户(分隔符:|):",
"cleanchanges-showuserlinks": "显示用户链接"
}
diff --git a/MLEB/CleanChanges/i18n/zh-hant.json b/MLEB/CleanChanges/i18n/zh-hant.json
index 6097c238..3d55b40b 100644
--- a/MLEB/CleanChanges/i18n/zh-hant.json
+++ b/MLEB/CleanChanges/i18n/zh-hant.json
@@ -4,10 +4,13 @@
"Alexsh",
"Liangent",
"Mark85296341",
- "Cwlin0416"
+ "Cwlin0416",
+ "LNDDYL",
+ "Sanmosa",
+ "A2093064"
]
},
- "cleanchanges-changerightslink": "更改群組",
+ "cleanchanges-changerightslink": "變更群組",
"cleanchanges-desc": "更精簡的顯示 [[Special:RecentChanges|最近變更清單]]",
"cleanchanges-language": "語言:",
"cleanchanges-language-na": "全部",
diff --git a/MLEB/CleanChanges/images/Arr_.png b/MLEB/CleanChanges/images/Arr_.png
index bc67a4b6..c0384e4e 100644
--- a/MLEB/CleanChanges/images/Arr_.png
+++ b/MLEB/CleanChanges/images/Arr_.png
Binary files differ
diff --git a/MLEB/CleanChanges/images/Arr_d.png b/MLEB/CleanChanges/images/Arr_d.png
index 58a9fc66..d476a168 100644
--- a/MLEB/CleanChanges/images/Arr_d.png
+++ b/MLEB/CleanChanges/images/Arr_d.png
Binary files differ
diff --git a/MLEB/CleanChanges/images/Arr_l.png b/MLEB/CleanChanges/images/Arr_l.png
index 2246254f..970c0e55 100644
--- a/MLEB/CleanChanges/images/Arr_l.png
+++ b/MLEB/CleanChanges/images/Arr_l.png
Binary files differ
diff --git a/MLEB/CleanChanges/images/Arr_r.png b/MLEB/CleanChanges/images/Arr_r.png
index 467a555a..82f5369a 100644
--- a/MLEB/CleanChanges/images/Arr_r.png
+++ b/MLEB/CleanChanges/images/Arr_r.png
Binary files differ
diff --git a/MLEB/CleanChanges/images/Arr_u.png b/MLEB/CleanChanges/images/Arr_u.png
index 1aa543af..8566f6b7 100644
--- a/MLEB/CleanChanges/images/Arr_u.png
+++ b/MLEB/CleanChanges/images/Arr_u.png
Binary files differ
diff --git a/MLEB/CleanChanges/images/showuserlinks.png b/MLEB/CleanChanges/images/showuserlinks.png
index 00a9cee1..872a40f5 100644
--- a/MLEB/CleanChanges/images/showuserlinks.png
+++ b/MLEB/CleanChanges/images/showuserlinks.png
Binary files differ
diff --git a/MLEB/CleanChanges/resources/cleanchanges.js b/MLEB/CleanChanges/resources/cleanchanges.js
index c11ec80b..6775572c 100644
--- a/MLEB/CleanChanges/resources/cleanchanges.js
+++ b/MLEB/CleanChanges/resources/cleanchanges.js
@@ -1,4 +1,4 @@
-(function ( mw, $ ) {
+( function ( mw, $ ) {
'use strict';
window.toggleVisibilityE = function ( levelId, otherId, linkId, type ) {
@@ -20,4 +20,43 @@
window.showUserInfo = function ( sourceVar, targetId ) {
$( '#' + targetId ).html( mw.config.get( sourceVar ) );
};
+
+ $( function () {
+ $( '.mw-cleanchanges-showuserinfo' ).each( function () {
+ var $this, id, target;
+
+ $this = $( this );
+ id = $this.data( 'mw-userinfo-id' );
+ target = $this.data( 'mw-userinfo-target' );
+ if ( id !== undefined ) {
+ $this.on( 'click keypress', function ( e ) {
+ if (
+ e.type === 'click' ||
+ e.type === 'keypress' && e.which === 13
+ ) {
+ window.showUserInfo( 'wgUserInfo' + id, target );
+ }
+ } );
+ }
+ } );
+ $( '.mw-cleanchanges-showblock' ).each( function () {
+ var $this, level, other, link;
+
+ $this = $( this );
+ level = $this.data( 'mw-cleanchanges-level' );
+ other = $this.data( 'mw-cleanchanges-other' );
+ link = $this.data( 'mw-cleanchanges-link' );
+ if ( level !== undefined ) {
+ $this.on( 'click keypress', function ( e ) {
+ if (
+ e.type === 'click' ||
+ e.type === 'keypress' && e.which === 13
+ ) {
+ window.toggleVisibilityE( level, other, link, 'block' );
+ }
+ } );
+ }
+ } );
+
+ } );
}( mediaWiki, jQuery ) );
diff --git a/MLEB/CleanChanges/resources/cleanchanges.uls.css b/MLEB/CleanChanges/resources/cleanchanges.uls.css
index 3e902cc4..f188c855 100644
--- a/MLEB/CleanChanges/resources/cleanchanges.uls.css
+++ b/MLEB/CleanChanges/resources/cleanchanges.uls.css
@@ -1,21 +1,27 @@
.ext-cc-language-selector__trigger {
- color: #0645AD;
cursor: pointer;
+
+ color: #0645ad;
}
.ext-cc-language-selector__trigger:after {
- margin-left: 4px;
- border-left: 4px solid transparent;
- border-right: 4px solid transparent;
- border-top: 4px solid #0645AD;
- content: "";
display: inline-block;
+
+ margin-left: 4px;
+
+ content: '';
vertical-align: middle;
+
+ border-top: 4px solid #0645ad;
+ border-right: 4px solid transparent;
+ border-left: 4px solid transparent;
}
.ext-cc-language-selector__clear {
- padding-left: 10px;
font-weight: bold;
+
+ padding-left: 10px;
+
cursor: pointer;
}
diff --git a/MLEB/CleanChanges/resources/cleanchanges.uls.js b/MLEB/CleanChanges/resources/cleanchanges.uls.js
index 45673416..88631cf9 100644
--- a/MLEB/CleanChanges/resources/cleanchanges.uls.js
+++ b/MLEB/CleanChanges/resources/cleanchanges.uls.js
@@ -1,7 +1,7 @@
-/**
+/*!
*
* @author Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
( function ( $, mw ) {
'use strict';
@@ -16,7 +16,6 @@
.text( 'X' )
.addClass( 'ext-cc-language-selector__clear' );
-
$trigger.hide().after(
$( '<span>' )
.addClass( 'ext-cc-language-selector' )
@@ -47,13 +46,18 @@
$trigger.val( '/' + language );
update( language );
},
+ ulsPurpose: 'clean-changes',
quickList: mw.uls.getFrequentLanguageList
} );
}
- $( document ).ready( function () {
- mw.loader.using( 'ext.uls.mediawiki', function () {
- useULS( $( '#sp-rc-language' ) );
- } );
+ $( function () {
+ var $trigger = $( '#sp-rc-language' );
+
+ if ( $trigger.length ) {
+ mw.loader.using( 'ext.uls.mediawiki', function () {
+ useULS( $trigger );
+ } );
+ }
} );
}( jQuery, mediaWiki ) );
diff --git a/MLEB/LocalisationUpdate/Autoload.php b/MLEB/LocalisationUpdate/Autoload.php
deleted file mode 100644
index 0b3f14dc..00000000
--- a/MLEB/LocalisationUpdate/Autoload.php
+++ /dev/null
@@ -1,31 +0,0 @@
-<?php
-/**
- * @file
- * @author Niklas Laxström
- * @license GPL-2.0+
- */
-
-global $wgAutoloadClasses;
-$dir = __DIR__;
-
-$wgAutoloadClasses += array(
- 'LocalisationUpdate' => "$dir/LocalisationUpdate.class.php",
- 'LU_Updater' => "$dir/Updater.php",
- 'QuickArrayReader' => "$dir/QuickArrayReader.php",
-
- # fetcher
- 'LU_Fetcher' => "$dir/fetcher/Fetcher.php",
- 'LU_FetcherFactory' => "$dir/fetcher/FetcherFactory.php",
- 'LU_FileSystemFetcher' => "$dir/fetcher/FileSystemFetcher.php",
- 'LU_GitHubFetcher' => "$dir/fetcher/GitHubFetcher.php",
- 'LU_HttpFetcher' => "$dir/fetcher/HttpFetcher.php",
-
- # finder
- 'LU_Finder' => "$dir/finder/Finder.php",
-
- # reader
- 'LU_JSONReader' => "$dir/reader/JSONReader.php",
- 'LU_PHPReader' => "$dir/reader/PHPReader.php",
- 'LU_Reader' => "$dir/reader/Reader.php",
- 'LU_ReaderFactory' => "$dir/reader/ReaderFactory.php",
-);
diff --git a/MLEB/LocalisationUpdate/LocalisationUpdate.class.php b/MLEB/LocalisationUpdate/LocalisationUpdate.class.php
deleted file mode 100644
index d4413ed7..00000000
--- a/MLEB/LocalisationUpdate/LocalisationUpdate.class.php
+++ /dev/null
@@ -1,99 +0,0 @@
-<?php
-
-/**
- * Class for localization update hooks and static methods.
- */
-class LocalisationUpdate {
- /** @todo Remove this once pre-1.24 versions of MW are no longer supported. */
- private static $onRecacheFallbackCalled = false;
-
- /**
- * Hook: LocalisationCacheRecacheFallback
- */
- public static function onRecacheFallback( LocalisationCache $lc, $code, array &$cache ) {
- self::$onRecacheFallbackCalled = true;
-
- $dir = LocalisationUpdate::getDirectory();
- if ( !$dir ) {
- return true;
- }
-
- $fileName = "$dir/" . self::getFilename( $code );
- if ( is_readable( $fileName ) ) {
- $data = FormatJson::decode( file_get_contents( $fileName ), true );
- $cache['messages'] = array_merge( $cache['messages'], $data );
- }
-
- return true;
- }
-
- /**
- * Hook: LocalisationCacheRecache
- */
- public static function onRecache( LocalisationCache $lc, $code, array &$cache ) {
- $dir = LocalisationUpdate::getDirectory();
- if ( !$dir ) {
- return true;
- }
-
- $codeSequence = array_merge( array( $code ), $cache['fallbackSequence'] );
- foreach ( $codeSequence as $csCode ) {
- $fileName = "$dir/" . self::getFilename( $csCode );
- if ( !self::$onRecacheFallbackCalled && is_readable( $fileName ) ) {
- // We're on an old version of MW that doesn't have the hook
- // needed to do things correctly. L10n will be broken here in
- // certain reasonably-common situations (see bug 68781), but
- // there's nothing we can do about it.
- $data = FormatJson::decode( file_get_contents( $fileName ), true );
- $cache['messages'] = array_merge( $cache['messages'], $data );
- }
- $cache['deps'][] = new FileDependency( $fileName );
- }
-
- return true;
- }
-
- /**
- * Returns a directory where updated translations are stored.
- *
- * @return string|false False if not configured.
- * @since 1.1
- */
- public static function getDirectory() {
- global $wgLocalisationUpdateDirectory, $wgCacheDirectory;
-
- // ?: can be used once we drop support for MW 1.19
- return $wgLocalisationUpdateDirectory ?
- $wgLocalisationUpdateDirectory :
- $wgCacheDirectory;
- }
-
- /**
- * Returns a filename where updated translations are stored.
- *
- * @param string $language Language tag
- * @return string
- * @since 1.1
- */
- public static function getFilename( $language ) {
- return "l10nupdate-$language.json";
- }
-
- /**
- * Hook: UnitTestsList
- */
- public static function setupUnitTests( array &$files ) {
- $dir = __DIR__ . '/tests/phpunit';
- $directoryIterator = new RecursiveDirectoryIterator( $dir );
- $fileIterator = new RecursiveIteratorIterator( $directoryIterator );
-
- /// @var SplFileInfo $fileInfo
- foreach ( $fileIterator as $fileInfo ) {
- if ( substr( $fileInfo->getFilename(), -8 ) === 'Test.php' ) {
- $files[] = $fileInfo->getPathname();
- }
- }
-
- return true;
- }
-}
diff --git a/MLEB/LocalisationUpdate/LocalisationUpdate.i18n.php b/MLEB/LocalisationUpdate/LocalisationUpdate.i18n.php
deleted file mode 100644
index f715d123..00000000
--- a/MLEB/LocalisationUpdate/LocalisationUpdate.i18n.php
+++ /dev/null
@@ -1,35 +0,0 @@
-<?php
-/**
- * This is a backwards-compatibility shim, generated by:
- * https://git.wikimedia.org/blob/mediawiki%2Fcore.git/HEAD/maintenance%2FgenerateJsonI18n.php
- *
- * Beginning with MediaWiki 1.23, translation strings are stored in json files,
- * and the EXTENSION.i18n.php file only exists to provide compatibility with
- * older releases of MediaWiki. For more information about this migration, see:
- * https://www.mediawiki.org/wiki/Requests_for_comment/Localisation_format
- *
- * This shim maintains compatibility back to MediaWiki 1.17.
- */
-$messages = array();
-if ( !function_exists( 'wfJsonI18nShim2520f8a069e9942f' ) ) {
- function wfJsonI18nShim2520f8a069e9942f( $cache, $code, &$cachedData ) {
- $codeSequence = array_merge( array( $code ), $cachedData['fallbackSequence'] );
- foreach ( $codeSequence as $csCode ) {
- $fileName = dirname( __FILE__ ) . "/i18n/$csCode.json";
- if ( is_readable( $fileName ) ) {
- $data = FormatJson::decode( file_get_contents( $fileName ), true );
- foreach ( array_keys( $data ) as $key ) {
- if ( $key === '' || $key[0] === '@' ) {
- unset( $data[$key] );
- }
- }
- $cachedData['messages'] = array_merge( $data, $cachedData['messages'] );
- }
-
- $cachedData['deps'][] = new FileDependency( $fileName );
- }
- return true;
- }
-
- $GLOBALS['wgHooks']['LocalisationCacheRecache'][] = 'wfJsonI18nShim2520f8a069e9942f';
-}
diff --git a/MLEB/LocalisationUpdate/LocalisationUpdate.php b/MLEB/LocalisationUpdate/LocalisationUpdate.php
index b3eb3acb..e69de29b 100644
--- a/MLEB/LocalisationUpdate/LocalisationUpdate.php
+++ b/MLEB/LocalisationUpdate/LocalisationUpdate.php
@@ -1,60 +0,0 @@
-<?php
-
-/**
- * Directory to store serialized cache files in. Defaults to $wgCacheDirectory.
- * It's OK to share this directory among wikis as long as the wiki you run
- * update.php on has all extensions the other wikis using the same directory
- * have.
- * NOTE: If this variable and $wgCacheDirectory are both false, this extension
- * WILL NOT WORK.
- */
-$wgLocalisationUpdateDirectory = false;
-
-/**
- * Default repository source to use.
- * @since 2014-03
- */
-$wgLocalisationUpdateRepository = 'github';
-
-/**
- * Available repository sources.
- * @since 2014-03
- */
-$wgLocalisationUpdateRepositories = array();
-$wgLocalisationUpdateRepositories['github'] = array(
- 'mediawiki' =>
- 'https://raw.github.com/wikimedia/mediawiki/master/%PATH%',
- 'extension' =>
- 'https://raw.github.com/wikimedia/mediawiki-extensions-%NAME%/master/%PATH%',
- 'skin' =>
- 'https://raw.github.com/wikimedia/mediawiki-skins-%NAME%/master/%PATH%',
-);
-
-// Example for local filesystem configuration
-#$wgLocalisationUpdateRepositories['local'] = array(
-# 'mediawiki' =>
-# 'file:///resources/projects/mediawiki/master/%PATH%',
-# 'extension' =>
-# 'file:///resources/projects/mediawiki-extensions/extensions/%NAME%/%PATH%',
-# 'skin' =>
-# 'file:///resources/projects/mediawiki-skins/skins/%NAME%/%PATH%',
-#);
-
-$wgExtensionCredits['other'][] = array(
- 'path' => __FILE__,
- 'name' => 'LocalisationUpdate',
- 'author' => array( 'Tom Maaswinkel', 'Niklas Laxström', 'Roan Kattouw' ),
- 'version' => '[https://www.mediawiki.org/wiki/MLEB MLEB 2015.04]',
- 'url' => 'https://www.mediawiki.org/wiki/Extension:LocalisationUpdate',
- 'descriptionmsg' => 'localisationupdate-desc',
-);
-
-$wgHooks['LocalisationCacheRecache'][] = 'LocalisationUpdate::onRecache';
-$wgHooks['LocalisationCacheRecacheFallback'][] = 'LocalisationUpdate::onRecacheFallback';
-$GLOBALS['wgHooks']['UnitTestsList'][] = 'LocalisationUpdate::setupUnitTests';
-
-$dir = __DIR__;
-$wgMessagesDirs['LocalisationUpdate'] = __DIR__ . '/i18n';
-$wgExtensionMessagesFiles['LocalisationUpdate'] = "$dir/LocalisationUpdate.i18n.php";
-
-require "$dir/Autoload.php";
diff --git a/MLEB/LocalisationUpdate/QuickArrayReader.php b/MLEB/LocalisationUpdate/QuickArrayReader.php
deleted file mode 100644
index 691f4a6b..00000000
--- a/MLEB/LocalisationUpdate/QuickArrayReader.php
+++ /dev/null
@@ -1,204 +0,0 @@
-<?php
-
-/**
- * Quickie parser class that can happily read the subset of PHP we need
- * for our localization arrays safely.
- *
- * Still an order of magnitude slower than eval().
- */
-class QuickArrayReader {
- private $vars = array();
-
- /**
- * @param $string string
- */
- function __construct( $string ) {
- $scalarTypes = array(
- T_LNUMBER => true,
- T_DNUMBER => true,
- T_STRING => true,
- T_CONSTANT_ENCAPSED_STRING => true,
- );
- $skipTypes = array(
- T_WHITESPACE => true,
- T_COMMENT => true,
- T_DOC_COMMENT => true,
- );
- $tokens = token_get_all( $string );
- $count = count( $tokens );
- for ( $i = 0; $i < $count; ) {
- while ( isset( $skipTypes[$tokens[$i][0]] ) ) {
- $i++;
- }
- switch ( $tokens[$i][0] ) {
- case T_OPEN_TAG:
- $i++;
- continue;
- case T_VARIABLE:
- // '$messages' -> 'messages'
- $varname = trim( substr( $tokens[$i][1], 1 ) );
- $varindex = null;
-
- while ( isset( $skipTypes[$tokens[++$i][0]] ) );
-
- if ( $tokens[$i] === '[' ) {
- while ( isset( $skipTypes[$tokens[++$i][0]] ) );
-
- if ( isset( $scalarTypes[$tokens[$i][0]] ) ) {
- $varindex = $this->parseScalar( $tokens[$i] );
- } else {
- throw $this->except( $tokens[$i], 'scalar index' );
- }
- while ( isset( $skipTypes[$tokens[++$i][0]] ) );
-
- if ( $tokens[$i] !== ']' ) {
- throw $this->except( $tokens[$i], ']' );
- }
- while ( isset( $skipTypes[$tokens[++$i][0]] ) );
- }
-
- if ( $tokens[$i] !== '=' ) {
- throw $this->except( $tokens[$i], '=' );
- }
- while ( isset( $skipTypes[$tokens[++$i][0]] ) );
-
- if ( isset( $scalarTypes[$tokens[$i][0]] ) ) {
- $buildval = $this->parseScalar( $tokens[$i] );
- } elseif ( $tokens[$i][0] === T_ARRAY ) {
- while ( isset( $skipTypes[$tokens[++$i][0]] ) );
- if ( $tokens[$i] !== '(' ) {
- throw $this->except( $tokens[$i], '(' );
- }
- $buildval = array();
- do {
- while ( isset( $skipTypes[$tokens[++$i][0]] ) );
-
- if ( $tokens[$i] === ')' ) {
- break;
- }
- if ( isset( $scalarTypes[$tokens[$i][0]] ) ) {
- $key = $this->parseScalar( $tokens[$i] );
- }
- while ( isset( $skipTypes[$tokens[++$i][0]] ) );
-
- if ( $tokens[$i][0] !== T_DOUBLE_ARROW ) {
- throw $this->except( $tokens[$i], '=>' );
- }
- while ( isset( $skipTypes[$tokens[++$i][0]] ) );
-
- if ( isset( $scalarTypes[$tokens[$i][0]] ) ) {
- $val = $this->parseScalar( $tokens[$i] );
- }
- wfSuppressWarnings();
- $buildval[$key] = $val;
- wfRestoreWarnings();
- while ( isset( $skipTypes[$tokens[++$i][0]] ) );
-
- if ( $tokens[$i] === ',' ) {
- continue;
- } elseif ( $tokens[$i] === ')' ) {
- break;
- } else {
- throw $this->except( $tokens[$i], ', or )' );
- }
- } while ( true );
- } else {
- throw $this->except( $tokens[$i], 'scalar or array' );
- }
- if ( is_null( $varindex ) ) {
- $this->vars[$varname] = $buildval;
- } else {
- wfSuppressWarnings();
- $this->vars[$varname][$varindex] = $buildval;
- wfRestoreWarnings();
- }
- while ( isset( $skipTypes[$tokens[++$i][0]] ) );
- if ( $tokens[$i] !== ';' ) {
- throw $this->except( $tokens[$i], ';' );
- }
- $i++;
- break;
- default:
- throw $this->except( $tokens[$i], 'open tag, whitespace, or variable.' );
- }
- }
- }
-
- /**
- * @param $got string
- * @param $expected string
- * @return Exception
- */
- private function except( $got, $expected ) {
- if ( is_array( $got ) ) {
- $got = token_name( $got[0] ) . " ('" . $got[1] . "')";
- } else {
- $got = "'" . $got . "'";
- }
-
- return new Exception( "Expected $expected, got $got" );
- }
-
- /**
- * Parse a scalar value in PHP
- *
- * @param $token string
- *
- * @return mixed Parsed value
- */
- function parseScalar( $token ) {
- if ( is_array( $token ) ) {
- $str = $token[1];
- } else {
- $str = $token;
- }
- if ( $str !== '' && $str[0] == '\'' ) {
- // Single-quoted string
- // @fixme trim() call is due to mystery bug where whitespace gets
- // appended to the token; without it we ended up reading in the
- // extra quote on the end!
- return strtr( substr( trim( $str ), 1, -1 ),
- array( '\\\'' => '\'', '\\\\' => '\\' ) );
- }
-
- wfSuppressWarnings();
- if ( $str !== '' && $str[0] == '"' ) {
- // Double-quoted string
- // @fixme trim() call is due to mystery bug where whitespace gets
- // appended to the token; without it we ended up reading in the
- // extra quote on the end!
- wfRestoreWarnings();
- return stripcslashes( substr( trim( $str ), 1, -1 ) );
- }
- wfRestoreWarnings();
-
- if ( substr( $str, 0, 4 ) === 'true' ) {
- return true;
- }
-
- if ( substr( $str, 0, 5 ) === 'false' ) {
- return false;
- }
-
- if ( substr( $str, 0, 4 ) === 'null' ) {
- return null;
- }
-
- // Must be some kind of numeric value, so let PHP's weak typing
- // be useful for a change
- return $str;
- }
-
- /**
- * @param $varname string
- * @return null|string
- */
- function getVar( $varname ) {
- if ( isset( $this->vars[$varname] ) ) {
- return $this->vars[$varname];
- } else {
- return null;
- }
- }
-}
-
diff --git a/MLEB/LocalisationUpdate/README b/MLEB/LocalisationUpdate/README
index 3df784b5..c5e2f72e 100644
--- a/MLEB/LocalisationUpdate/README
+++ b/MLEB/LocalisationUpdate/README
@@ -8,7 +8,7 @@ For more information see:
== Installation ==
1. Add the following to LocalSettings.php of your MediaWiki setup:
- require_once "$IP/extensions/LocalisationUpdate/LocalisationUpdate.php";
+ wfLoadExtension( 'LocalisationUpdate' );
$wgLocalisationUpdateDirectory = "$IP/cache";
2. Create a cache folder in the installation directory, and be sure the server
diff --git a/MLEB/LocalisationUpdate/RELEASE-NOTES b/MLEB/LocalisationUpdate/RELEASE-NOTES
index 0b409a26..e63a2996 100644
--- a/MLEB/LocalisationUpdate/RELEASE-NOTES
+++ b/MLEB/LocalisationUpdate/RELEASE-NOTES
@@ -1,5 +1,6 @@
-== LocalisationUpdate 2015.04 ==
-Released at 2015-04-30.
+== LocalisationUpdate 2018.10 ==
+Released at 2018-10-29.
-=== Highlights ===
-* Localisation updates only.
+=== Noteworthy changes ===
+* Remove PHP entry point. Please update your configuration!
+* Fix handling of exception from GitHubFetcher. If l10n directory is not found, it logs message and continue.
diff --git a/MLEB/LocalisationUpdate/Updater.php b/MLEB/LocalisationUpdate/Updater.php
deleted file mode 100644
index bae492dd..00000000
--- a/MLEB/LocalisationUpdate/Updater.php
+++ /dev/null
@@ -1,194 +0,0 @@
-<?php
-/**
- * @file
- * @author Niklas Laxström
- * @license GPL-2.0+
- */
-
-/**
- * Executes the localisation update.
- */
-class LU_Updater {
- /**
- * Whether the path is a pattern and thus we need to use appropriate
- * code for fetching directories.
- *
- * @param string $path Url
- * @return bool
- */
- public function isDirectory( $path ) {
- $filename = basename( $path );
- return strpos( $filename, '*' ) !== false;
- }
-
- /**
- * Expands repository relative path to full url with the given repository
- * patterns. Extra variables in $info are used as variables and will be
- * replaced the pattern.
- *
- * @param array $info Component information.
- * @param array $repos Repository information.
- * @return string
- */
- public function expandRemotePath( $info, $repos ) {
- $pattern = $repos[$info['repo']];
- unset( $info['repo'], $info['orig'] );
-
- // This assumes all other keys are used as variables
- // in the pattern. For example name -> %NAME%.
- $keys = array();
- foreach ( array_keys( $info ) as $key ) {
- $keys[] = '%' . strtoupper( $key ) . '%';
- }
-
- $values = array_values( $info );
- return str_replace( $keys, $values, $pattern );
- }
-
- /**
- * Parses translations from given list of files.
- *
- * @param LU_ReaderFactory $readerFactory Factory to construct parsers.
- * @param array $files List of files with their contents as array values.
- * @return array List of translations indexed by language code.
- */
- public function readMessages( LU_ReaderFactory $readerFactory, array $files ) {
- $messages = array();
-
- foreach ( $files as $filename => $contents ) {
- $reader = $readerFactory->getReader( $filename );
- try {
- $parsed = $reader->parse( $contents );
- } catch ( Exception $e ) {
- trigger_error( __METHOD__ . ": Unable to parse messages from $filename", E_USER_WARNING );
- continue;
- }
-
- foreach ( $parsed as $code => $langMessages ) {
- if ( !isset( $messages[$code] ) ) {
- $messages[$code] = array();
- }
- $messages[$code] = array_merge( $messages[$code], $langMessages );
- }
-
- $c = array_sum( array_map( 'count', $parsed ) );
- // Useful for debugging, maybe create interface to pass this to the script?
- #echo "$filename with " . get_class( $reader ) . " and $c\n";
- }
-
- return $messages;
- }
-
- /**
- * Find new and changed translations in $remote and returns them.
- *
- * @param array $origin
- * @param array $remote
- * @param array [$blacklist] Array of message keys to ignore, keys as as array keys.
- * @return array
- */
- public function findChangedTranslations( $origin, $remote, $blacklist = array() ) {
- $changed = array();
- foreach ( $remote as $key => $value ) {
- if ( isset( $blacklist[$key] ) ) {
- continue;
- }
-
- if ( !isset( $origin[$key] ) || $value !== $origin[$key] ) {
- $changed[$key] = $value;
- }
- }
- return $changed;
- }
-
- /**
- * Fetches files from given Url pattern.
- *
- * @param LU_FetcherFactory $factory Factory to construct fetchers.
- * @param string $path Url to the file or pattern of files.
- * @return array List of Urls with file contents as path.
- */
- public function fetchFiles( LU_FetcherFactory $factory, $path ) {
- $fetcher = $factory->getFetcher( $path );
-
- if ( $this->isDirectory( $path ) ) {
- $files = $fetcher->fetchDirectory( $path );
- } else {
- $files = array( $path => $fetcher->fetchFile( $path ) );
- }
-
- // Remove files which were not found
- return array_filter( $files );
- }
-
- public function execute(
- LU_Finder $finder,
- LU_ReaderFactory $readerFactory,
- LU_FetcherFactory $fetcherFactory,
- array $repos
- ) {
-
- $components = $finder->getComponents();
-
- $updatedMessages = array();
-
- foreach ( $components as $key => $info ) {
- $originFiles = $this->fetchFiles( $fetcherFactory, $info['orig'] );
- $remoteFiles = $this->fetchFiles( $fetcherFactory, $this->expandRemotePath( $info, $repos ) );
-
- if ( $remoteFiles === array() ) {
- // Small optimization: if nothing to compare with, skip
- continue;
- }
-
- $originMessages = $this->readMessages( $readerFactory, $originFiles );
- $remoteMessages = $this->readMessages( $readerFactory, $remoteFiles );
-
- if ( !isset( $remoteMessages['en'] ) ) {
- // Could not find remote messages
- continue;
- }
-
- // If remote translation in English is not present or differs, we do not want
- // translations for other languages for those messages, as they are either not
- // used in this version of code or can be incompatible.
- $forbiddenKeys = $this->findChangedTranslations(
- $originMessages['en'],
- $remoteMessages['en']
- );
-
- // We never accept updates for English strings
- unset( $originMessages['en'], $remoteMessages['en'] );
-
- // message: string in all languages; translation: string in one language.
- foreach ( $remoteMessages as $language => $remoteTranslations ) {
- // Check for completely new languages
- $originTranslations = array();
- if ( isset( $originMessages[$language] ) ) {
- $originTranslations = $originMessages[$language];
- }
-
- $updatedTranslations = $this->findChangedTranslations(
- $originTranslations,
- $remoteTranslations,
- $forbiddenKeys
- );
-
- // Avoid empty arrays
- if ( $updatedTranslations === array() ) {
- continue;
- }
-
- if ( !isset( $updatedMessages[$language] ) ) {
- $updatedMessages[$language] = array();
- }
-
- // In case of conflicts, which should not exist, this prefers the
- // first translation seen.
- $updatedMessages[$language] += $updatedTranslations;
- }
- }
-
- return $updatedMessages;
- }
-}
diff --git a/MLEB/LocalisationUpdate/fetcher/Fetcher.php b/MLEB/LocalisationUpdate/fetcher/Fetcher.php
deleted file mode 100644
index 9c06c105..00000000
--- a/MLEB/LocalisationUpdate/fetcher/Fetcher.php
+++ /dev/null
@@ -1,26 +0,0 @@
-<?php
-/**
- * @file
- * @author Niklas Laxström
- * @license GPL-2.0+
- */
-
-/**
- * Interface for classes which fetch files over different protocols and ways.
- */
-interface LU_Fetcher {
- /**
- * Fetches a single resource.
- *
- * @return bool|string False on failure.
- */
- public function fetchFile( $url );
-
- /**
- * Fetch a list of resources. This has the benefit of being able to pick up
- * new languages as they appear if languages are stored in separate files.
- *
- * @return array
- */
- public function fetchDirectory( $pattern );
-}
diff --git a/MLEB/LocalisationUpdate/fetcher/FetcherFactory.php b/MLEB/LocalisationUpdate/fetcher/FetcherFactory.php
deleted file mode 100644
index 4e26dc15..00000000
--- a/MLEB/LocalisationUpdate/fetcher/FetcherFactory.php
+++ /dev/null
@@ -1,24 +0,0 @@
-<?php
-/**
- * @file
- * @author Niklas Laxström
- * @license GPL-2.0+
- */
-
-/**
- * Constructs fetchers based on the repository urls.
- */
-class LU_FetcherFactory {
- public function getFetcher( $path ) {
-
- if ( strpos( $path, 'https://raw.github.com/' ) === 0 ) {
- return new LU_GitHubFetcher();
- } elseif ( strpos( $path, 'http://' ) === 0 ) {
- return new LU_HttpFetcher();
- } elseif ( strpos( $path, 'https://' ) === 0 ) {
- return new LU_HttpFetcher();
- } else {
- return new LU_FileSystemFetcher();
- }
- }
-}
diff --git a/MLEB/LocalisationUpdate/fetcher/FileSystemFetcher.php b/MLEB/LocalisationUpdate/fetcher/FileSystemFetcher.php
deleted file mode 100644
index a463d6cd..00000000
--- a/MLEB/LocalisationUpdate/fetcher/FileSystemFetcher.php
+++ /dev/null
@@ -1,35 +0,0 @@
-<?php
-/**
- * @file
- * @author Niklas Laxström
- * @license GPL-2.0+
- */
-
-/**
- * Accesses file system directly.
- */
-class LU_FileSystemFetcher implements LU_Fetcher {
- public function fetchFile( $url ) {
- // Remove the protocol prefix
- $url = preg_replace( '~^file://~', '', $url );
-
- if ( !is_readable( $url ) ) {
- return false;
- }
-
- return file_get_contents( $url );
- }
-
- public function fetchDirectory( $pattern ) {
- // Remove the protocol prefix
- $pattern = preg_replace( '~^file://~', '', $pattern );
-
- $data = array();
- foreach ( glob( $pattern ) as $file ) {
- if ( is_readable( $file ) ) {
- $data["file://$file"] = file_get_contents( $file );
- }
- }
- return $data;
- }
-}
diff --git a/MLEB/LocalisationUpdate/fetcher/GitHubFetcher.php b/MLEB/LocalisationUpdate/fetcher/GitHubFetcher.php
deleted file mode 100644
index 5d25257a..00000000
--- a/MLEB/LocalisationUpdate/fetcher/GitHubFetcher.php
+++ /dev/null
@@ -1,38 +0,0 @@
-<?php
-/**
- * @file
- * @author Niklas Laxström
- * @license GPL-2.0+
- */
-
-/**
- * This class uses GitHub api to obtain a list of files present in a directory
- * to avoid fetching files that don't exist.
- *
- * @todo Could use file hashes to 1) avoid fetching files with same hash as
- * the source. 2) avoid fetching files which haven't changed since last check
- * if we store them.
- */
-class LU_GitHubFetcher extends LU_HttpFetcher {
-
- public function fetchDirectory( $pattern ) {
- $p = '~^https://raw.github\.com/(?P<org>[^/]+)/(?P<repo>[^/]+)/(?P<branch>[^/]+)/(?P<path>.+)/.+$~';
- preg_match( $p, $pattern, $m );
-
- $json = Http::get( "https://api.github.com/repos/{$m['org']}/{$m['repo']}/contents/{$m['path']}" );
- if ( !$json ) {
- throw new Exception( "Unable to get directory listing for {$m['org']}/{$m['repo']}" );
- }
-
- $files = array();
- $json = FormatJson::decode( $json, true );
- foreach ( $json as $fileinfo ) {
- $fileurl = dirname( $pattern ) . '/' . $fileinfo['name'];
- $file = $this->fetchFile( $fileurl );
- if ( $file ) {
- $files[$fileurl] = $file;
- }
- }
- return $files;
- }
-}
diff --git a/MLEB/LocalisationUpdate/fetcher/HttpFetcher.php b/MLEB/LocalisationUpdate/fetcher/HttpFetcher.php
deleted file mode 100644
index 9dfed8db..00000000
--- a/MLEB/LocalisationUpdate/fetcher/HttpFetcher.php
+++ /dev/null
@@ -1,40 +0,0 @@
-<?php
-/**
- * @file
- * @author Niklas Laxström
- * @license GPL-2.0+
- */
-
-/**
- * Fetches files over HTTP(s).
- */
-class LU_HttpFetcher implements LU_Fetcher {
- public function fetchFile( $url ) {
- return Http::get( $url );
- }
-
- /**
- * This is horribly inefficient. Subclasses have more efficient
- * implementation of this.
- */
- public function fetchDirectory( $pattern ) {
- $files = array();
-
- $languages = Language::fetchLanguageNames( null, 'mwfile' );
-
- foreach( array_keys( $languages ) as $code ) {
- // Hack for core
- if ( strpos( $pattern, 'Messages*.php' ) !== false ) {
- $code = ucfirst( strtr( $code, '-', '_' ) );
- }
-
- $url = str_replace( '*', $code, $pattern );
- $file = $this->fetchFile( $url );
- if ( $file ) {
- $files[$url] = $file;
- }
- }
-
- return $files;
- }
-}
diff --git a/MLEB/LocalisationUpdate/finder/Finder.php b/MLEB/LocalisationUpdate/finder/Finder.php
deleted file mode 100644
index dc3a7f69..00000000
--- a/MLEB/LocalisationUpdate/finder/Finder.php
+++ /dev/null
@@ -1,107 +0,0 @@
-<?php
-/**
- * @file
- * @author Niklas Laxström
- * @license GPL-2.0+
- */
-
-/**
- * Interface for classes which provide list of components, which should be
- * included for l10n updates.
- */
-class LU_Finder {
- /**
- * @param array $php See $wgExtensionMessagesFiles
- * @param array $json See $wgMessagesDirs
- * @param string $core Absolute path to MediaWiki core
- */
- public function __construct( $php, $json, $core ) {
- $this->php = $php;
- $this->json = $json;
- $this->core = $core;
- }
-
- /**
- * @return array
- */
- public function getComponents() {
- $components = array();
-
- // For older versions of Mediawiki, pull json updates even though its still using php
- if ( !isset( $this->json['core'] ) ) {
- $components['core'] = array(
- 'repo' => 'mediawiki',
- 'orig' => "file://{$this->core}/languages/messages/Messages*.php",
- 'path' => 'languages/messages/i18n/*.json',
- );
- }
-
- foreach ( $this->json as $key => $value ) {
- // Json should take priority if both exist
- unset( $this->php[$key] );
-
- foreach ( (array)$value as $subkey => $subvalue ) {
- // Mediawiki core files
- $matches = array();
- if ( preg_match( '~/(?P<path>(?:includes|languages|resources)/.*)$~', $subvalue, $matches ) ) {
- $components["$key-$subkey"] = array(
- 'repo' => 'mediawiki',
- 'orig' => "file://$value/*.json",
- 'path' => "{$matches['path']}/*.json",
- );
- continue;
- }
-
- $item = $this->getItem( 'extensions', $subvalue );
- if ( $item !== null ) {
- $item['repo'] = 'extension';
- $components["$key-$subkey"] = $item;
- continue;
- }
-
- $item = $this->getItem( 'skins', $subvalue );
- if ( $item !== null ) {
- $item['repo'] = 'skin';
- $components["$key-$subkey"] = $item;
- continue;
- }
- }
- }
-
- foreach ( $this->php as $key => $value ) {
- $matches = array();
- $ok = preg_match( '~/extensions/(?P<name>[^/]+)/(?P<path>.*\.i18n\.php)$~', $value, $matches );
- if ( !$ok ) {
- continue;
- }
-
- $components[$key] = array(
- 'repo' => 'extension',
- 'name' => $matches['name'],
- 'orig' => "file://$value",
- 'path' => $matches['path'],
- );
- }
-
- return $components;
- }
-
- /**
- * @param string $dir extensions or skins
- * @param string $subvalue
- * @return array|null
- */
- private function getItem( $dir, $subvalue ) {
- // This ignores magic, alias etc. non message files
- $matches = array();
- if ( !preg_match( "~/$dir/(?P<name>[^/]+)/(?P<path>.*)$~", $subvalue, $matches ) ) {
- return null;
- }
-
- return array(
- 'name' => $matches['name'],
- 'orig' => "file://$subvalue/*.json",
- 'path' => "{$matches['path']}/*.json",
- );
- }
-}
diff --git a/MLEB/LocalisationUpdate/i18n/ca.json b/MLEB/LocalisationUpdate/i18n/ca.json
index d37e93a9..4b4ac0af 100644
--- a/MLEB/LocalisationUpdate/i18n/ca.json
+++ b/MLEB/LocalisationUpdate/i18n/ca.json
@@ -1,8 +1,9 @@
{
"@metadata": {
"authors": [
- "Paucabot"
+ "Paucabot",
+ "Fitoschido"
]
},
- "localisationupdate-desc": "Manté els missatges localitzats tan actualitzats com sigui possible"
+ "localisationupdate-desc": "Manté els missatges traduïts tan actualitzats com sigui possible"
}
diff --git a/MLEB/LocalisationUpdate/i18n/de.json b/MLEB/LocalisationUpdate/i18n/de.json
index 3f1d3fbc..98f9dc14 100644
--- a/MLEB/LocalisationUpdate/i18n/de.json
+++ b/MLEB/LocalisationUpdate/i18n/de.json
@@ -2,8 +2,10 @@
"@metadata": {
"authors": [
"Kghbln",
- "Purodha"
+ "Purodha",
+ "Metalhead64"
]
},
+ "localisationupdate-extensionname": "LocalisationUpdate",
"localisationupdate-desc": "Ermöglicht es lokalisierte Texte und Nachrichten so aktuell wie möglich zu halten"
}
diff --git a/MLEB/LocalisationUpdate/i18n/en.json b/MLEB/LocalisationUpdate/i18n/en.json
index 813a9e74..a15cef56 100644
--- a/MLEB/LocalisationUpdate/i18n/en.json
+++ b/MLEB/LocalisationUpdate/i18n/en.json
@@ -1,8 +1,9 @@
{
- "@metadata": {
- "authors": [
- "Tom Maaswinkel"
- ]
- },
- "localisationupdate-desc": "Keeps the localised messages as up to date as possible"
+ "@metadata": {
+ "authors": [
+ "Tom Maaswinkel"
+ ]
+ },
+ "localisationupdate-extensionname": "LocalisationUpdate",
+ "localisationupdate-desc": "Keeps the localised messages as up to date as possible"
} \ No newline at end of file
diff --git a/MLEB/LocalisationUpdate/i18n/es.json b/MLEB/LocalisationUpdate/i18n/es.json
index 2526e852..aea82b47 100644
--- a/MLEB/LocalisationUpdate/i18n/es.json
+++ b/MLEB/LocalisationUpdate/i18n/es.json
@@ -1,8 +1,9 @@
{
"@metadata": {
"authors": [
- "Crazymadlover"
+ "Crazymadlover",
+ "Fitoschido"
]
},
- "localisationupdate-desc": "Mantiene los mensajes localizados tan actualizados como sea posible"
+ "localisationupdate-desc": "Mantiene los mensajes traducidos tan actualizados como sea posible"
}
diff --git a/MLEB/LocalisationUpdate/i18n/mk.json b/MLEB/LocalisationUpdate/i18n/mk.json
index 10eb0966..3ac7e4df 100644
--- a/MLEB/LocalisationUpdate/i18n/mk.json
+++ b/MLEB/LocalisationUpdate/i18n/mk.json
@@ -4,5 +4,6 @@
"Bjankuloski06"
]
},
+ "localisationupdate-extensionname": "Поднова на локализацијата",
"localisationupdate-desc": "Ги одржува локализираните пораки колку што е можно пообновени и повеќе во тек со настаните"
}
diff --git a/MLEB/LocalisationUpdate/i18n/nb.json b/MLEB/LocalisationUpdate/i18n/nb.json
index c7978a78..e9db5be1 100644
--- a/MLEB/LocalisationUpdate/i18n/nb.json
+++ b/MLEB/LocalisationUpdate/i18n/nb.json
@@ -1,8 +1,10 @@
{
"@metadata": {
"authors": [
- "Nghtwlkr"
+ "Nghtwlkr",
+ "Jon Harald Søby"
]
},
+ "localisationupdate-extensionname": "LocalisationUpdate",
"localisationupdate-desc": "Holder de lokaliserte meldingene så oppdaterte som mulig"
}
diff --git a/MLEB/LocalisationUpdate/i18n/pt.json b/MLEB/LocalisationUpdate/i18n/pt.json
index 07fa8c3d..bbda7981 100644
--- a/MLEB/LocalisationUpdate/i18n/pt.json
+++ b/MLEB/LocalisationUpdate/i18n/pt.json
@@ -6,5 +6,5 @@
"Malafaya"
]
},
- "localisationupdate-desc": "Mantém as mensagens localizadas tão atualizadas quanto possível"
+ "localisationupdate-desc": "Mantém as mensagens traduzidas tão atualizadas quanto possível"
}
diff --git a/MLEB/LocalisationUpdate/i18n/qqq.json b/MLEB/LocalisationUpdate/i18n/qqq.json
index c08af070..99da1a04 100644
--- a/MLEB/LocalisationUpdate/i18n/qqq.json
+++ b/MLEB/LocalisationUpdate/i18n/qqq.json
@@ -7,5 +7,6 @@
"Umherirrender"
]
},
+ "localisationupdate-extensionname": "{{name}}",
"localisationupdate-desc": "{{desc|name=Localisation Update|url=https://www.mediawiki.org/wiki/Extension:LocalisationUpdate}}"
}
diff --git a/MLEB/LocalisationUpdate/i18n/sr-ec.json b/MLEB/LocalisationUpdate/i18n/sr-ec.json
index dfd900a4..599334a9 100644
--- a/MLEB/LocalisationUpdate/i18n/sr-ec.json
+++ b/MLEB/LocalisationUpdate/i18n/sr-ec.json
@@ -1,8 +1,9 @@
{
"@metadata": {
"authors": [
- "Михајло Анђелковић"
+ "Михајло Анђелковић",
+ "BadDog"
]
},
- "localisationupdate-desc": "Ажурира локализоване поруке колико је то могуће"
+ "localisationupdate-desc": "Задржава локализоване поруке ажурираним колико год је то могуће"
}
diff --git a/MLEB/LocalisationUpdate/reader/JSONReader.php b/MLEB/LocalisationUpdate/reader/JSONReader.php
deleted file mode 100644
index 636168c8..00000000
--- a/MLEB/LocalisationUpdate/reader/JSONReader.php
+++ /dev/null
@@ -1,30 +0,0 @@
-<?php
-/**
- * @file
- * @author Niklas Laxström
- * @license GPL-2.0+
- */
-
-/**
- * Reads MediaWiki JSON i18n files.
- */
-class LU_JSONReader implements LU_Reader {
- /// @var string Language tag
- protected $code;
-
- public function __construct( $code = null ) {
- $this->code = $code;
- }
-
- public function parse( $contents ) {
- $messages = FormatJson::decode( $contents, true );
- unset( $messages['@metadata'] );
-
- if ( $this->code ) {
- return array( $this->code => $messages );
- }
-
- // Assuming that the array is keyed by language codes
- return $messages;
- }
-}
diff --git a/MLEB/LocalisationUpdate/reader/PHPReader.php b/MLEB/LocalisationUpdate/reader/PHPReader.php
deleted file mode 100644
index 986d7b52..00000000
--- a/MLEB/LocalisationUpdate/reader/PHPReader.php
+++ /dev/null
@@ -1,54 +0,0 @@
-<?php
-/**
- * @file
- * @author Niklas Laxström
- * @license GPL-2.0+
- */
-
-/**
- * Reads MediaWiki PHP i18n files.
- */
-class LU_PHPReader implements LU_Reader {
- /// @var string Language tag
- protected $code;
-
- public function __construct( $code = null ) {
- $this->code = $code;
- }
-
- public function parse( $contents ) {
- if ( strpos( $contents, '$messages' ) === false ) {
- // This happens for some core languages that only have a fallback.
- return array();
- }
-
- $php = $this->cleanupFile( $contents );
- $reader = new QuickArrayReader( "<?php $php" );
- $messages = $reader->getVar( 'messages' );
-
- if ( $this->code ) {
- return array( $this->code => $messages );
- }
-
- // Assuming that the array is keyed by language codes
- return $messages;
- }
-
- /**
- * Removes all unneeded content from a file and returns it.
- *
- * @param string $contents String
- * @return string PHP code without PHP tags
- */
- protected function cleanupFile( $contents ) {
- // We hate the windows vs linux linebreaks.
- $contents = preg_replace( '/\r\n?/', "\n", $contents );
-
- // We only want message arrays.
- $results = array();
- preg_match_all( '/\$messages(?:.*\s)*?\);/', $contents, $results );
-
- // But we want them all in one string.
- return implode( "\n\n", $results[0] );
- }
-}
diff --git a/MLEB/LocalisationUpdate/reader/Reader.php b/MLEB/LocalisationUpdate/reader/Reader.php
deleted file mode 100644
index f55a9372..00000000
--- a/MLEB/LocalisationUpdate/reader/Reader.php
+++ /dev/null
@@ -1,19 +0,0 @@
-<?php
-/**
- * @file
- * @author Niklas Laxström
- * @license GPL-2.0+
- */
-
-/**
- * Interface for file readers.
- */
-interface LU_Reader {
- /**
- * Returns a list of messages indexed by language code. Example
- * array( 'en' => array( 'key' => 'value' ) );
- * @param string $contents File contents as a string.
- * @return array
- */
- public function parse( $contents );
-}
diff --git a/MLEB/LocalisationUpdate/reader/ReaderFactory.php b/MLEB/LocalisationUpdate/reader/ReaderFactory.php
deleted file mode 100644
index 983ec314..00000000
--- a/MLEB/LocalisationUpdate/reader/ReaderFactory.php
+++ /dev/null
@@ -1,36 +0,0 @@
-<?php
-/**
- * @file
- * @author Niklas Laxström
- * @license GPL-2.0+
- */
-
-/**
- * Constructs readers for files based on the names.
- */
-class LU_ReaderFactory {
- /**
- * Constructs a suitable reader for a given path.
- * @param string $filename Usually a relative path to the file name.
- * @return LU_Reader
- * @throw Exception
- */
- public function getReader( $filename ) {
- if ( preg_match( '/i18n\.php$/', $filename ) ) {
- return new LU_PHPReader();
- }
-
- // Ugly hack for core i18n files
- if ( preg_match( '/Messages(.*)\.php$/', $filename ) ) {
- $code = Language::getCodeFromFileName( basename( $filename ), 'Messages' );
- return new LU_PHPReader( $code );
- }
-
- if ( preg_match( '/\.json/', $filename ) ) {
- $code = basename( $filename, '.json' );
- return new LU_JSONReader( $code );
- }
-
- throw new Exception( "Unknown file format: " . $filename );
- }
-}
diff --git a/MLEB/LocalisationUpdate/tests/phpunit/UpdaterTest.php b/MLEB/LocalisationUpdate/tests/phpunit/UpdaterTest.php
index ce742cba..00c45e12 100644
--- a/MLEB/LocalisationUpdate/tests/phpunit/UpdaterTest.php
+++ b/MLEB/LocalisationUpdate/tests/phpunit/UpdaterTest.php
@@ -2,12 +2,21 @@
/**
* @file
* @author Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
-class LU_UpdaterTest extends MediaWikiTestCase {
+namespace LocalisationUpdate;
+
+use PHPUnit4And6Compat;
+
+/**
+ * @covers \LocalisationUpdate\Updater
+ */
+class UpdaterTest extends \PHPUnit\Framework\TestCase {
+ use PHPUnit4And6Compat;
+
public function testIsDirectory() {
- $updater = new LU_Updater();
+ $updater = new Updater();
$this->assertTrue(
$updater->isDirectory( '/IP/extensions/Translate/i18n/*.json' ),
@@ -21,14 +30,14 @@ class LU_UpdaterTest extends MediaWikiTestCase {
}
public function testExpandRemotePath() {
- $updater = new LU_Updater();
- $repos = array( 'main' => 'file:///repos/%NAME%/%SOME-VAR%' );
+ $updater = new Updater();
+ $repos = [ 'main' => 'file:///repos/%NAME%/%SOME-VAR%' ];
- $info = array(
+ $info = [
'repo' => 'main',
'name' => 'product',
'some-var' => 'file',
- );
+ ];
$this->assertEquals(
'file:///repos/product/file',
$updater->expandRemotePath( $info, $repos ),
@@ -37,18 +46,18 @@ class LU_UpdaterTest extends MediaWikiTestCase {
}
public function testReadMessages() {
- $updater = $updater = new LU_Updater();
+ $updater = $updater = new Updater();
- $input = array( 'file' => 'Hello World!' );
- $output = array( 'en' => array( 'key' => $input['file'] ) );
+ $input = [ 'file' => 'Hello World!' ];
+ $output = [ 'en' => [ 'key' => $input['file'] ] ];
- $reader = $this->getMock( 'LU_Reader' );
+ $reader = $this->getMock( 'LocalisationUpdate\Reader' );
$reader
->expects( $this->once() )
->method( 'parse' )
->will( $this->returnValue( $output ) );
- $factory = $this->getMock( 'LU_ReaderFactory' );
+ $factory = $this->getMock( 'LocalisationUpdate\ReaderFactory' );
$factory
->expects( $this->once() )
->method( 'getReader' )
@@ -59,21 +68,21 @@ class LU_UpdaterTest extends MediaWikiTestCase {
}
public function testFindChangedTranslations() {
- $updater = $updater = new LU_Updater();
+ $updater = $updater = new Updater();
- $origin = array(
+ $origin = [
'A' => '1',
'C' => '3',
'D' => '4',
- );
- $remote = array(
+ ];
+ $remote = [
'A' => '1', // No change key
'B' => '2', // New key
'C' => '33', // Changed key
'D' => '44', // Blacklisted key
- );
- $blacklist = array( 'D' => 0 );
- $expected = array( 'B' => '2', 'C' => '33' );
+ ];
+ $blacklist = [ 'D' => 0 ];
+ $expected = [ 'B' => '2', 'C' => '33' ];
$observed = $updater->findChangedTranslations( $origin, $remote, $blacklist );
$this->assertEquals( $expected, $observed, 'Changed and new keys returned' );
}
diff --git a/MLEB/LocalisationUpdate/tests/phpunit/finder/FinderTest.php b/MLEB/LocalisationUpdate/tests/phpunit/finder/FinderTest.php
index b8213bac..1b4db0f4 100644
--- a/MLEB/LocalisationUpdate/tests/phpunit/finder/FinderTest.php
+++ b/MLEB/LocalisationUpdate/tests/phpunit/finder/FinderTest.php
@@ -2,79 +2,84 @@
/**
* @file
* @author Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
-class LU_FinderTest extends MediaWikiTestCase {
+namespace LocalisationUpdate;
+
+/**
+ * @covers \LocalisationUpdate\Finder
+ */
+class FinderTest extends \PHPUnit\Framework\TestCase {
public function testGetComponents() {
- $finder = new LU_Finder(
- array(
+ $finder = new Finder(
+ [
'TranslateSearch' => '/IP/extensions/Translate/TranslateSearch.i18n.php',
'Babel' => '/IP/extensions/Babel/Babel.i18n.php',
- ),
- array(
+ ],
+ [
'Babel' => '/IP/extensions/Babel/i18n',
- 'Door' => array(
+ 'Door' => [
'core' => '/IP/extensions/Door/i18n/core',
'extra' => '/IP/extensions/Door/i18n/extra',
- ),
+ ],
'Vector' => '/IP/skins/Vector/i18n',
- ),
+ ],
'/IP'
);
$observed = $finder->getComponents();
- $expected = array(
+ $expected = [
'repo' => 'mediawiki',
'orig' => "file:///IP/languages/messages/Messages*.php",
'path' => 'languages/messages/i18n/*.json',
- );
+ ];
$this->assertArrayHasKey( 'core', $observed );
$this->assertEquals( $expected, $observed['core'], 'Core php file' );
- $expected = array(
+ $expected = [
'repo' => 'extension',
'name' => 'Translate',
'orig' => 'file:///IP/extensions/Translate/TranslateSearch.i18n.php',
'path' => 'TranslateSearch.i18n.php'
- );
+ ];
$this->assertArrayHasKey( 'TranslateSearch', $observed );
$this->assertEquals( $expected, $observed['TranslateSearch'], 'PHP only extension' );
- $expected = array(
+ $expected = [
'repo' => 'extension',
'name' => 'Babel',
'orig' => 'file:///IP/extensions/Babel/i18n/*.json',
'path' => 'i18n/*.json'
- );
+ ];
$this->assertArrayHasKey( 'Babel-0', $observed );
$this->assertEquals( $expected, $observed['Babel-0'], 'PHP&JSON extension' );
- $expected = array(
+ $expected = [
'repo' => 'extension',
'name' => 'Door',
'orig' => 'file:///IP/extensions/Door/i18n/core/*.json',
'path' => 'i18n/core/*.json'
- );
+ ];
$this->assertArrayHasKey( 'Door-core', $observed );
$this->assertEquals( $expected, $observed['Door-core'], 'Multidir json extension' );
- $expected = array(
+ $expected = [
'repo' => 'extension',
'name' => 'Door',
'orig' => 'file:///IP/extensions/Door/i18n/extra/*.json',
'path' => 'i18n/extra/*.json'
- );
+ ];
$this->assertArrayHasKey( 'Door-extra', $observed );
$this->assertEquals( $expected, $observed['Door-extra'], 'Multidir json extension' );
- $expected = array(
+ $expected = [
'repo' => 'skin',
'name' => 'Vector',
'orig' => 'file:///IP/skins/Vector/i18n/*.json',
'path' => 'i18n/*.json'
- );
+ ];
$this->assertArrayHasKey( 'Vector-0', $observed );
$this->assertEquals( $expected, $observed['Vector-0'], 'Json skin' );
}
diff --git a/MLEB/LocalisationUpdate/tests/phpunit/reader/JSONReaderTest.php b/MLEB/LocalisationUpdate/tests/phpunit/reader/JSONReaderTest.php
index 4bb53af9..11f0a03b 100644
--- a/MLEB/LocalisationUpdate/tests/phpunit/reader/JSONReaderTest.php
+++ b/MLEB/LocalisationUpdate/tests/phpunit/reader/JSONReaderTest.php
@@ -2,36 +2,41 @@
/**
* @file
* @author Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
-class LU_JSONReaderTest extends MediaWikiTestCase {
+namespace LocalisationUpdate;
+
+/**
+ * @covers \LocalisationUpdate\JSONReader
+ */
+class JSONReaderTest extends \PHPUnit\Framework\TestCase {
/**
* @dataProvider parseProvider
*/
public function testParse( $input, $expected, $comment ) {
- $reader = new LU_JSONReader( 'xx' );
+ $reader = new JSONReader( 'xx' );
$observed = $reader->parse( $input );
$this->assertEquals( $expected, $observed['xx'], $comment );
}
public function parseProvider() {
- return array(
- array(
+ return [
+ [
'{}',
- array(),
+ [],
'empty file',
- ),
- array(
+ ],
+ [
'{"key":"value"}',
- array( 'key' => 'value' ),
+ [ 'key' => 'value' ],
'file with one string',
- ),
- array(
+ ],
+ [
'{"@metadata":{"authors":["Nike"]},"key":"value2"}',
- array( 'key' => 'value2' ),
+ [ 'key' => 'value2' ],
'@metadata is ignored',
- )
- );
+ ]
+ ];
}
}
diff --git a/MLEB/LocalisationUpdate/tests/phpunit/reader/ReaderFactoryTest.php b/MLEB/LocalisationUpdate/tests/phpunit/reader/ReaderFactoryTest.php
index ee155b3a..86776395 100644
--- a/MLEB/LocalisationUpdate/tests/phpunit/reader/ReaderFactoryTest.php
+++ b/MLEB/LocalisationUpdate/tests/phpunit/reader/ReaderFactoryTest.php
@@ -2,37 +2,42 @@
/**
* @file
* @author Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
-class LU_ReaderFactoryTest extends MediaWikiTestCase {
+namespace LocalisationUpdate;
+
+/**
+ * @covers \LocalisationUpdate\ReaderFactory
+ */
+class ReaderFactoryTest extends \PHPUnit\Framework\TestCase {
/**
* @dataProvider getReaderProvider
*/
public function testGetReader( $input, $expected, $comment ) {
- $factory = new LU_ReaderFactory();
+ $factory = new ReaderFactory();
$reader = $factory->getReader( $input );
$observed = get_class( $reader );
$this->assertEquals( $expected, $observed, $comment );
}
public function getReaderProvider() {
- return array(
- array(
+ return [
+ [
'languages/messages/MessagesFi.php',
- 'LU_PHPReader',
+ 'LocalisationUpdate\PHPReader',
'core php file',
- ),
- array(
+ ],
+ [
'extensions/Translate/Translate.i18n.php',
- 'LU_PHPReader',
+ 'LocalisationUpdate\PHPReader',
'extension php file',
- ),
- array(
+ ],
+ [
'extension/Translate/i18n/core/de.json',
- 'LU_JSONReader',
+ 'LocalisationUpdate\JSONReader',
'extension json file',
- ),
- );
+ ],
+ ];
}
}
diff --git a/MLEB/LocalisationUpdate/update.php b/MLEB/LocalisationUpdate/update.php
index 1f5eaa77..a8ed7ead 100644
--- a/MLEB/LocalisationUpdate/update.php
+++ b/MLEB/LocalisationUpdate/update.php
@@ -2,12 +2,11 @@
$IP = strval( getenv( 'MW_INSTALL_PATH' ) ) !== ''
? getenv( 'MW_INSTALL_PATH' )
- : realpath( dirname( __FILE__ ) . "/../../" );
-// Can use __DIR__ once we drop support for MW 1.19
+ : realpath( __DIR__ . '/../../' );
require "$IP/maintenance/Maintenance.php";
-class LU extends Maintenance {
+class Update extends Maintenance {
public function __construct() {
parent::__construct();
$this->mDescription = 'Fetches translation updates to MediaWiki core, skins and extensions.';
@@ -17,6 +16,8 @@ class LU extends Maintenance {
false, /*required*/
true /*has arg*/
);
+
+ $this->requireExtension( 'LocalisationUpdate' );
}
public function execute() {
@@ -25,7 +26,8 @@ class LU extends Maintenance {
ini_set( "max_execution_time", 0 );
ini_set( 'memory_limit', -1 );
- global $wgExtensionMessagesFiles, $IP;
+ global $IP;
+ global $wgExtensionMessagesFiles;
global $wgLocalisationUpdateRepositories;
global $wgLocalisationUpdateRepository;
@@ -36,16 +38,11 @@ class LU extends Maintenance {
}
$lc = Language::getLocalisationCache();
- if ( is_callable( array( $lc, 'getMessagesDirs' ) ) ) { // Introduced in 1.25
- $messagesDirs = $lc->getMessagesDirs();
- } else {
- global $wgMessagesDirs;
- $messagesDirs = $wgMessagesDirs;
- }
+ $messagesDirs = $lc->getMessagesDirs();
- $finder = new LU_Finder( $wgExtensionMessagesFiles, $messagesDirs, $IP );
- $readerFactory = new LU_ReaderFactory();
- $fetcherFactory = new LU_FetcherFactory();
+ $finder = new LocalisationUpdate\Finder( $wgExtensionMessagesFiles, $messagesDirs, $IP );
+ $readerFactory = new LocalisationUpdate\ReaderFactory();
+ $fetcherFactory = new LocalisationUpdate\FetcherFactory();
$repoid = $this->getOption( 'repoid', $wgLocalisationUpdateRepository );
if ( !isset( $wgLocalisationUpdateRepositories[$repoid] ) ) {
@@ -55,13 +52,18 @@ class LU extends Maintenance {
}
$repos = $wgLocalisationUpdateRepositories[$repoid];
+ // output and error methods are protected, hence we add logInfo and logError
+ // public methods, that hopefully won't conflict in the future with the base class.
+ $logger = $this;
+
// Do it ;)
- $updater = new LU_Updater();
+ $updater = new LocalisationUpdate\Updater();
$updatedMessages = $updater->execute(
$finder,
$readerFactory,
$fetcherFactory,
- $repos
+ $repos,
+ $logger
);
// Store it ;)
@@ -77,7 +79,15 @@ class LU extends Maintenance {
}
$this->output( "Saved $count new translations\n" );
}
+
+ public function logInfo( $msg ) {
+ $this->output( $msg . "\n" );
+ }
+
+ public function logError( $msg ) {
+ $this->error( $msg );
+ }
}
-$maintClass = 'LU';
+$maintClass = Update::class;
require_once RUN_MAINTENANCE_IF_MAIN;
diff --git a/MLEB/Translate/.jshintignore b/MLEB/Translate/.jshintignore
deleted file mode 100644
index 23710946..00000000
--- a/MLEB/Translate/.jshintignore
+++ /dev/null
@@ -1,4 +0,0 @@
-# upstream libs
-resources/js/jquery.autosize.js
-resources/js/jquery.ui.position.js
-resources/jquery.chosen/
diff --git a/MLEB/Translate/.jshintrc b/MLEB/Translate/.jshintrc
deleted file mode 100644
index d7649a35..00000000
--- a/MLEB/Translate/.jshintrc
+++ /dev/null
@@ -1,29 +0,0 @@
-{
- "camelcase": true,
- "curly": true,
- "eqeqeq": true,
- "immed": true,
- "latedef": true,
- "newcap": true,
- "noarg": true,
- "noempty": true,
- "nonew": true,
- "quotmark": "single",
- "trailing": true,
- "undef": true,
- "unused": true,
- "onevar": true,
- "bitwise": true,
- "forin": false,
- "regexp": false,
- "strict": true,
- "laxbreak": true,
- "smarttabs": true,
- "multistr": true,
- "browser": true,
- "predef": [
- "mediaWiki",
- "jQuery",
- "QUnit"
- ]
-}
diff --git a/MLEB/Translate/.rubocop.yml b/MLEB/Translate/.rubocop.yml
deleted file mode 100644
index cc32da4b..00000000
--- a/MLEB/Translate/.rubocop.yml
+++ /dev/null
@@ -1 +0,0 @@
-inherit_from: .rubocop_todo.yml
diff --git a/MLEB/Translate/.rubocop_todo.yml b/MLEB/Translate/.rubocop_todo.yml
deleted file mode 100644
index 99d902e1..00000000
--- a/MLEB/Translate/.rubocop_todo.yml
+++ /dev/null
@@ -1,110 +0,0 @@
-# This configuration was generated by `rubocop --auto-gen-config`
-# on 2014-10-21 16:00:13 +0200 using RuboCop version 0.26.1.
-# The point is for the user to remove these configuration records
-# one by one as the offenses are removed from the code base.
-# Note that changes in the inspected code, or installation of new
-# versions of RuboCop, may require this file to be generated again.
-
-# Offense count: 1
-# Cop supports --auto-correct.
-Lint/UnusedBlockArgument:
- Enabled: false
-
-# Offense count: 1
-Lint/UselessAssignment:
- Enabled: false
-
-# Offense count: 3
-Lint/Void:
- Enabled: false
-
-# Offense count: 1
-# Configuration parameters: CountComments.
-Metrics/ClassLength:
- Max: 101
-
-# Offense count: 50
-# Configuration parameters: AllowURI, URISchemes.
-Metrics/LineLength:
- Max: 127
-
-# Offense count: 2
-# Cop supports --auto-correct.
-# Configuration parameters: PreferredMethods.
-Style/CollectionMethods:
- Enabled: false
-
-# Offense count: 4
-Style/Documentation:
- Enabled: false
-
-# Offense count: 3
-# Cop supports --auto-correct.
-# Configuration parameters: AllowAdjacentOneLineDefs.
-Style/EmptyLineBetweenDefs:
- Enabled: false
-
-# Offense count: 1
-# Cop supports --auto-correct.
-Style/EmptyLinesAroundBody:
- Enabled: false
-
-# Offense count: 24
-# Cop supports --auto-correct.
-# Configuration parameters: EnforcedStyle, SupportedStyles.
-Style/HashSyntax:
- Enabled: false
-
-# Offense count: 117
-# Cop supports --auto-correct.
-Style/IndentationWidth:
- Enabled: false
-
-# Offense count: 2
-# Cop supports --auto-correct.
-Style/LeadingCommentSpace:
- Enabled: false
-
-# Offense count: 1
-# Cop supports --auto-correct.
-Style/Not:
- Enabled: false
-
-# Offense count: 1
-# Cop supports --auto-correct.
-# Configuration parameters: PreferredDelimiters.
-Style/PercentLiteralDelimiters:
- Enabled: false
-
-# Offense count: 2
-# Cop supports --auto-correct.
-Style/RedundantSelf:
- Enabled: false
-
-# Offense count: 14
-# Cop supports --auto-correct.
-# Configuration parameters: EnforcedStyleForEmptyBraces, SupportedStyles.
-Style/SpaceInsideHashLiteralBraces:
- EnforcedStyle: no_space
-
-# Offense count: 76
-# Cop supports --auto-correct.
-# Configuration parameters: EnforcedStyle, SupportedStyles.
-Style/StringLiterals:
- Enabled: false
-
-# Offense count: 1
-# Cop supports --auto-correct.
-# Configuration parameters: IgnoredMethods.
-Style/SymbolProc:
- Enabled: false
-
-# Offense count: 250
-# Cop supports --auto-correct.
-Style/Tab:
- Enabled: false
-
-# Offense count: 1
-# Cop supports --auto-correct.
-Style/WordArray:
- MinSize: 5
diff --git a/MLEB/Translate/Autoload.php b/MLEB/Translate/Autoload.php
index 3d522e8c..7d4bef03 100644
--- a/MLEB/Translate/Autoload.php
+++ b/MLEB/Translate/Autoload.php
@@ -4,17 +4,15 @@
*
* @file
* @author Niklas Laxström
- * @copyright Copyright © 2008-2014, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/** @cond file_level_code */
-$dir = dirname( __FILE__ );
+$dir = __DIR__;
/** @endcond */
/**
* @name "Core Translate classes"
- * @{
*/
$al['FatMessage'] = "$dir/Message.php";
$al['MediaWikiMessageChecker'] = "$dir/MediaWikiMessageChecker.php";
@@ -28,25 +26,19 @@ $al['TMessage'] = "$dir/Message.php";
$al['ThinMessage'] = "$dir/Message.php";
$al['TranslateEditAddons'] = "$dir/TranslateEditAddons.php";
$al['TranslateHooks'] = "$dir/TranslateHooks.php";
-$al['TranslateTasks'] = "$dir/TranslateTasks.php";
$al['TranslateUtils'] = "$dir/TranslateUtils.php";
-/**@}*/
/**
* @name "Special pages"
* There are few more special pages in page translation section.
- * @{
*/
-$al['TranslateSpecialPage'] = "$dir/specials/TranslateSpecialPage.php";
$al['SpecialAggregateGroups'] = "$dir/specials/SpecialAggregateGroups.php";
$al['SpecialImportTranslations'] = "$dir/specials/SpecialImportTranslations.php";
+$al['SpecialExportTranslations'] = "$dir/specials/SpecialExportTranslations.php";
$al['SpecialLanguageStats'] = "$dir/specials/SpecialLanguageStats.php";
$al['SpecialMagic'] = "$dir/specials/SpecialMagic.php";
$al['SpecialManageGroups'] = "$dir/specials/SpecialManageGroups.php";
$al['SpecialMessageGroupStats'] = "$dir/specials/SpecialMessageGroupStats.php";
-$al['SpecialMyLanguage'] = "$dir/specials/SpecialMyLanguage.php";
-$al['SpecialPageMigration'] = "$dir/specials/SpecialPageMigration.php";
-$al['SpecialPagePreparation'] = "$dir/specials/SpecialPagePreparation.php";
$al['SpecialSearchTranslations'] = "$dir/specials/SpecialSearchTranslations.php";
$al['SpecialSupportedLanguages'] = "$dir/specials/SpecialSupportedLanguages.php";
$al['SpecialTranslate'] = "$dir/specials/SpecialTranslate.php";
@@ -55,22 +47,25 @@ $al['SpecialManageTranslatorSandbox'] =
$al['SpecialTranslationStats'] = "$dir/specials/SpecialTranslationStats.php";
$al['SpecialTranslations'] = "$dir/specials/SpecialTranslations.php";
$al['SpecialTranslationStash'] = "$dir/specials/SpecialTranslationStash.php";
-/**@}*/
/**
* @name "Various utilities"
- * @{
*/
+$al['ArrayFlattener'] = "$dir/utils/ArrayFlattener.php";
$al['CDBMessageIndex'] = "$dir/utils/MessageIndex.php";
$al['CachedMessageIndex'] = "$dir/utils/MessageIndex.php";
$al['DatabaseMessageIndex'] = "$dir/utils/MessageIndex.php";
$al['ExternalMessageSourceStateComparator'] =
"$dir/utils/ExternalMessageSourceStateComparator.php";
+$al['ExternalMessageSourceStateImporter'] =
+ "$dir/utils/ExternalMessageSourceStateImporter.php";
$al['FCFontFinder'] = "$dir/utils/Font.php";
$al['FileCachedMessageIndex'] = "$dir/utils/MessageIndex.php";
$al['FuzzyBot'] = "$dir/utils/FuzzyBot.php";
$al['HTMLJsSelectToInputField'] = "$dir/utils/HTMLJsSelectToInputField.php";
+$al['HashMessageIndex'] = "$dir/utils/MessageIndex.php";
$al['JsSelectToInput'] = "$dir/utils/JsSelectToInput.php";
+$al['MessageChangeStorage'] = "$dir/utils/MessageChangeStorage.php";
$al['MessageGroupCache'] = "$dir/utils/MessageGroupCache.php";
$al['MessageGroupStates'] = "$dir/utils/MessageGroupStates.php";
$al['MessageGroupStatesUpdaterJob'] = "$dir/utils/MessageGroupStatesUpdaterJob.php";
@@ -78,7 +73,6 @@ $al['MessageGroupStats'] = "$dir/utils/MessageGroupStats.php";
$al['MessageHandle'] = "$dir/utils/MessageHandle.php";
$al['MessageIndex'] = "$dir/utils/MessageIndex.php";
$al['MessageIndexRebuildJob'] = "$dir/utils/MessageIndexRebuildJob.php";
-$al['MessageTable'] = "$dir/utils/MessageTable.php";
$al['MessageUpdateJob'] = "$dir/utils/MessageUpdateJob.php";
$al['MessageWebImporter'] = "$dir/utils/MessageWebImporter.php";
$al['PHPVariableLoader'] = "$dir/utils/ResourceLoader.php";
@@ -87,7 +81,6 @@ $al['ReviewPerLanguageStats'] = "$dir/specials/SpecialTranslationStats.php";
$al['SerializedMessageIndex'] = "$dir/utils/MessageIndex.php";
$al['StatsBar'] = "$dir/utils/StatsBar.php";
$al['StatsTable'] = "$dir/utils/StatsTable.php";
-$al['TTMServer'] = "$dir/utils/TTMServer.php";
$al['TranslateLogFormatter'] = "$dir/utils/TranslateLogFormatter.php";
$al['TranslateMetadata'] = "$dir/utils/TranslateMetadata.php";
$al['TranslatePerLanguageStats'] = "$dir/specials/SpecialTranslationStats.php";
@@ -97,45 +90,43 @@ $al['TranslateRegistrationStats'] = "$dir/specials/SpecialTranslationStats.php";
$al['TranslateSandbox'] = "$dir/utils/TranslateSandbox.php";
$al['TranslateSandboxEmailJob'] = "$dir/utils/TranslateSandboxEmailJob.php";
$al['TranslateStatsOutput'] = "$dir/scripts/TranslateStatsOutput.php";
+$al['TranslateCliLogger'] = "$dir/scripts/TranslateCliLogger.php";
$al['TranslateToolbox'] = "$dir/utils/ToolBox.php";
$al['TranslateYaml'] = "$dir/utils/TranslateYaml.php";
-$al['TranslationEditPage'] = "$dir/utils/TranslationEditPage.php";
$al['TranslationHelperException'] = "$dir/utils/TranslationHelpers.php";
$al['TranslationHelpers'] = "$dir/utils/TranslationHelpers.php";
$al['TranslationStats'] = "$dir/utils/TranslationStats.php";
$al['TranslationStatsBase'] = "$dir/specials/SpecialTranslationStats.php";
$al['TranslationStatsInterface'] = "$dir/specials/SpecialTranslationStats.php";
$al['TuxMessageTable'] = "$dir/utils/TuxMessageTable.php";
-/**@}*/
/**
* @name "Classes for predefined non-managed message groups"
- * @{
*/
$al['PremadeMediawikiExtensionGroups'] = "$dir/ffs/MediaWikiExtensions.php";
$al['PremadeIntuitionTextdomains'] = "$dir/ffs/IntuitionTextdomains.php";
-/**@}*/
/**
* @name "Support for MediaWiki non-message features"
- * @{
*/
$al['ComplexMessages'] = "$dir/ffs/MediaWikiComplexMessages.php";
$al['MagicWordsCM'] = "$dir/ffs/MediaWikiComplexMessages.php";
$al['NamespaceCM'] = "$dir/ffs/MediaWikiComplexMessages.php";
$al['SpecialPageAliasesCM'] = "$dir/ffs/MediaWikiComplexMessages.php";
-/**@}*/
/**
* @name "Classes for page translation feature"
* @ingroup PageTranslation
- * @{
*/
+$al['TranslatablePageMoveJob'] = "$dir/tag/TranslatablePageMoveJob.php";
$al['TranslateDeleteJob'] = "$dir/tag/TranslateDeleteJob.php";
$al['TranslateMoveJob'] = "$dir/tag/TranslateMoveJob.php";
+$al['SpecialPageMigration'] = "$dir/tag/SpecialPageMigration.php";
+$al['SpecialPagePreparation'] = "$dir/tag/SpecialPagePreparation.php";
$al['PageTranslationHooks'] = "$dir/tag/PageTranslationHooks.php";
$al['PageTranslationLogFormatter'] = "$dir/tag/PageTranslationLogFormatter.php";
$al['TranslateRenderJob'] = "$dir/tag/TranslateRenderJob.php";
+$al['TranslationsUpdateJob'] = "$dir/tag/TranslationsUpdateJob.php";
$al['SpecialPageTranslation'] = "$dir/tag/SpecialPageTranslation.php";
$al['SpecialPageTranslationDeletePage'] =
"$dir/tag/SpecialPageTranslationDeletePage.php";
@@ -145,12 +136,10 @@ $al['TPException'] = "$dir/tag/TPException.php";
$al['TPParse'] = "$dir/tag/TPParse.php";
$al['TPSection'] = "$dir/tag/TPSection.php";
$al['TranslatablePage'] = "$dir/tag/TranslatablePage.php";
-/**@}*/
/**
* @name "Classes for TTMServer"
* @ingroup TTMServer
- * @{
*/
$al['ReadableTTMServer'] = "$dir/ttmserver/Interfaces.php";
$al['SearchableTTMServer'] = "$dir/ttmserver/Interfaces.php";
@@ -160,16 +149,17 @@ $al['TTMServerException'] = "$dir/ttmserver/Exceptions.php";
$al['DatabaseTTMServer'] = "$dir/ttmserver/DatabaseTTMServer.php";
$al['ElasticSearchTTMServer'] = "$dir/ttmserver/ElasticSearchTTMServer.php";
+$al['FuzzyLikeThis'] = "$dir/ttmserver/FuzzyLikeThis.php";
$al['FakeTTMServer'] = "$dir/ttmserver/FakeTTMServer.php";
$al['RemoteTTMServer'] = "$dir/ttmserver/RemoteTTMServer.php";
$al['SolrTTMServer'] = "$dir/ttmserver/SolrTTMServer.php";
$al['TTMServer'] = "$dir/ttmserver/TTMServer.php";
$al['TTMServerMessageUpdateJob'] = "$dir/ttmserver/TTMServerMessageUpdateJob.php";
-/**@}*/
+$al['CrossLanguageTranslationSearchQuery'] =
+ "$dir/ttmserver/CrossLanguageTranslationSearchQuery.php";
/**
* @name "Classes for file format support (FFS)"
- * @{
*/
$al['AmdFFS'] = "$dir/ffs/AmdFFS.php";
$al['AndroidXmlFFS'] = "$dir/ffs/AndroidXmlFFS.php";
@@ -183,21 +173,16 @@ $al['IniFFS'] = "$dir/ffs/IniFFS.php";
$al['JavaFFS'] = "$dir/ffs/JavaFFS.php";
$al['JavaScriptFFS'] = "$dir/ffs/JavaScriptFFS.php";
$al['JsonFFS'] = "$dir/ffs/JsonFFS.php";
-$al['MediaWikiExtensionFFS'] = "$dir/ffs/MediaWikiExtensionFFS.php";
-$al['RubyYamlFFS'] = "$dir/ffs/RubyYamlFFS.php";
$al['ShapadoJsFFS'] = "$dir/ffs/JavaScriptFFS.php";
$al['SimpleFFS'] = "$dir/ffs/SimpleFFS.php";
$al['XliffFFS'] = "$dir/ffs/XliffFFS.php";
$al['YamlFFS'] = "$dir/ffs/YamlFFS.php";
-/**@}*/
/**
* @name "API modules"
- * @{
*/
$al['ApiAggregateGroups'] = "$dir/api/ApiAggregateGroups.php";
$al['ApiGroupReview'] = "$dir/api/ApiGroupReview.php";
-$al['ApiHardMessages'] = "$dir/api/ApiHardMessages.php";
$al['ApiQueryLanguageStats'] = "$dir/api/ApiQueryLanguageStats.php";
$al['ApiQueryMessageCollection'] = "$dir/api/ApiQueryMessageCollection.php";
$al['ApiQueryMessageGroupStats'] = "$dir/api/ApiQueryMessageGroupStats.php";
@@ -205,33 +190,15 @@ $al['ApiQueryMessageGroups'] = "$dir/api/ApiQueryMessageGroups.php";
$al['ApiQueryMessageTranslations'] = "$dir/api/ApiQueryMessageTranslations.php";
$al['ApiStatsQuery'] = "$dir/api/ApiStatsQuery.php";
$al['ApiTTMServer'] = "$dir/api/ApiTTMServer.php";
+$al['ApiSearchTranslations'] = "$dir/api/ApiSearchTranslations.php";
$al['ApiTranslateSandbox'] = "$dir/api/ApiTranslateSandbox.php";
-$al['ApiTranslateUser'] = "$dir/api/ApiTranslateUser.php";
$al['ApiTranslationAids'] = "$dir/api/ApiQueryTranslationAids.php";
+$al['ApiTranslationCheck'] = "$dir/api/ApiTranslationCheck.php";
$al['ApiTranslationReview'] = "$dir/api/ApiTranslationReview.php";
$al['ApiTranslationStash'] = "$dir/api/ApiTranslationStash.php";
-/**@}*/
-
-/**
- * @name "Task classes"
- * @{
- */
-$al['AcceptQueueMessagesTask'] = "$dir/TranslateTasks.php";
-$al['CustomFilteredMessagesTask'] = "$dir/TranslateTasks.php";
-$al['ExportAsPoMessagesTask'] = "$dir/TranslateTasks.php";
-$al['ExportMessagesTask'] = "$dir/TranslateTasks.php";
-$al['ExportToFileMessagesTask'] = "$dir/TranslateTasks.php";
-$al['ReviewAllMessagesTask'] = "$dir/TranslateTasks.php";
-$al['ReviewMessagesTask'] = "$dir/TranslateTasks.php";
-$al['TranslateTask'] = "$dir/TranslateTasks.php";
-$al['ViewMessagesTask'] = "$dir/TranslateTasks.php";
-$al['ViewOptionalTask'] = "$dir/TranslateTasks.php";
-$al['ViewUntranslatedTask'] = "$dir/TranslateTasks.php";
-/**@}*/
/**
* @name "Message group classes"
- * @{
*/
$al['AggregateMessageGroup'] = "$dir/messagegroups/AggregateMessageGroup.php";
$al['FileBasedMessageGroup'] = "$dir/messagegroups/FileBasedMessageGroup.php";
@@ -248,19 +215,15 @@ $al['WikiMessageGroup'] = "$dir/messagegroups/WikiMessageGroup.php";
$al['WikiPageMessageGroup'] = "$dir/messagegroups/WikiPageMessageGroup.php";
$al['WorkflowStatesMessageGroup'] =
"$dir/messagegroups/WorkflowStatesMessageGroup.php";
-/**@}*/
/**
* @name "Stash"
- * @{
*/
$al['StashedTranslation'] = "$dir/stash/StashedTranslation.php";
$al['TranslationStashStorage'] = "$dir/stash/TranslationStashStorage.php";
-/**@}*/
/**
* @name "Test classes"
- * @{
*/
$al['MockFileBasedMessageGroup'] =
"$dir/tests/phpunit/MockFileBasedMessageGroup.php";
@@ -268,14 +231,9 @@ $al['MockMessageCollectionForExport'] =
"$dir/tests/phpunit/MockMessageCollectionForExport.php";
$al['MockSuperUser'] = "$dir/tests/phpunit/MockSuperUser.php";
$al['MockWikiMessageGroup'] = "$dir/tests/phpunit/MockWikiMessageGroup.php";
-$al['MediaWikiInsertablesSuggesterTest'] =
- "$dir/tests/phpunit/insertables/MediaWikiInsertablesSuggesterTest.php";
-
-/**@}*/
/**
* @name "Translation aids"
- * @{
*/
$al['CurrentTranslationAid'] = "$dir/translationaids/CurrentTranslationAid.php";
$al['DocumentationAid'] = "$dir/translationaids/DocumentationAid.php";
@@ -284,47 +242,55 @@ $al['InOtherLanguagesAid'] = "$dir/translationaids/InOtherLanguagesAid.php";
$al['InsertablesAid'] = "$dir/translationaids/InsertablesAid.php";
$al['MachineTranslationAid'] = "$dir/translationaids/MachineTranslationAid.php";
$al['MessageDefinitionAid'] = "$dir/translationaids/MessageDefinitionAid.php";
+$al['QueryAggregatorAwareTranslationAid'] =
+ "$dir/translationaids/QueryAggregatorAwareTranslationAid.php";
$al['SupportAid'] = "$dir/translationaids/SupportAid.php";
$al['TTMServerAid'] = "$dir/translationaids/TTMServerAid.php";
$al['TranslationAid'] = "$dir/translationaids/TranslationAid.php";
-$al['UnsupportedTranslationAid'] =
- "$dir/translationaids/UnsupportedTranslationAid.php";
+$al['TranslationAidDataProvider'] = "$dir/translationaids/TranslationAidDataProvider.php";
+$al['UnsupportedTranslationAid'] = "$dir/translationaids/UnsupportedTranslationAid.php";
$al['UpdatedDefinitionAid'] = "$dir/translationaids/UpdatedDefinitionAid.php";
-/**@}*/
/**
* @name "Translation web services"
- * @{
*/
$al['ApertiumWebService'] = "$dir/webservices/ApertiumWebService.php";
+$al['CaighdeanWebService'] = "$dir/webservices/CaighdeanWebService.php";
$al['CxserverWebService'] = "$dir/webservices/CxserverWebService.php";
$al['MicrosoftWebService'] = "$dir/webservices/MicrosoftWebService.php";
$al['RemoteTTMServerWebService'] = "$dir/webservices/RemoteTTMServerWebService.php";
+$al['RESTBaseWebService'] = "$dir/webservices/RESTBaseWebService.php";
+$al['TranslationQuery'] = "$dir/webservices/TranslationQuery.php";
+$al['TranslationQueryResponse'] = "$dir/webservices/TranslationQueryResponse.php";
$al['TranslationWebService'] = "$dir/webservices/TranslationWebService.php";
+$al['TranslationWebServiceConfigurationException'] =
+ "$dir/webservices/TranslationWebServiceConfigurationException.php";
$al['TranslationWebServiceException'] =
"$dir/webservices/TranslationWebServiceException.php";
+$al['TranslationWebServiceInvalidInputException'] =
+ "$dir/webservices/TranslationWebServiceInvalidInputException.php";
+$al['QueryAggregator'] = "$dir/webservices/QueryAggregator.php";
+$al['QueryAggregatorAware'] = "$dir/webservices/QueryAggregatorAware.php";
$al['YandexWebService'] = "$dir/webservices/YandexWebService.php";
-/**@}*/
/**
* @name "Insertables"
- * @{
*/
$al['Insertable'] = "$dir/insertables/Insertable.php";
$al['InsertablesSuggester'] = "$dir/insertables/InsertablesSuggester.php";
+$al['CombinedInsertablesSuggester'] = "$dir/insertables/CombinedInsertablesSuggester.php";
$al['MediaWikiInsertablesSuggester'] =
"$dir/insertables/MediaWikiInsertablesSuggester.php";
+$al['NumericalParameterInsertablesSuggester'] =
+ "$dir/insertables/NumericalParameterInsertablesSuggester.php";
$al['TranslatablePageInsertablesSuggester'] =
"$dir/insertables/TranslatablePageInsertablesSuggester.php";
-/**@}*/
/**
* @name "StringMangler"
- * @{
*/
$al['StringMangler'] = "$dir/stringmangler/StringMangler.php";
$al['StringMatcher'] = "$dir/stringmangler/StringMatcher.php";
-/**@}*/
global $wgAutoloadClasses;
$wgAutoloadClasses = array_merge( $wgAutoloadClasses, $al );
diff --git a/MLEB/Translate/CHANGELOG b/MLEB/Translate/CHANGELOG
deleted file mode 100644
index 89665fe8..00000000
--- a/MLEB/Translate/CHANGELOG
+++ /dev/null
@@ -1,793 +0,0 @@
-For newer recent changes, please refer the MediaWiki Language Extension Bundle
-release announcements or the git log.
- https://www.mediawiki.org/wiki/MediaWiki_Language_Extension_Bundle
-
-== Change log ==
-* 2012-11-11
-- Dynamic message groups are now shown in list=messagecollection WebAPI.
-* 2012-11-10
-- Add RecentAdditionsMessageGroup:
- Like RecentMessageGroup, but instead of proofreading
- you can translate new message as they come in. Make this
- view the home page of your browser, for example.
-* 2012-11-09
-- Unbalanced translate tags on translatable pages now fail gracefully again.
-* 2012-11-08
-- MediaWiki 1.19 or later is now required: support for 1.18 was dropped.
-* 2012-11-06
-- Add prop=revision to list=messagecollection WebAPI.
-* 2012-11-05
-- Avoid fatal errors with empty aggregate groups
-* 2012-10-29
-- Add support for Yandex machine translation service.
-* 2012-10-29
-- Sort order of the statistics tables is now included in the URL to make it linkable.
- Enhances both LanguageStats and MessageGroupStats.
-* 2012-10-24
-- The lists of messages are now rendered faster and with less memory.
- For a table of 5000 messages in Special:Translate, from 175M to 12M.
-- Better performance also for proofreading and page moves.
-* 2012-10-22
-- Ignored messages are no longer exported.
- Except for source language or message documentation
-* 2012-10-21
-- Dropdown items on Special:AggregateGroups are now sorted alphabetically.
-* 2012-10-21
-- MediaWiki i18n now with modern support format: MediaWikiExtensionFFS.
-- You should check your config so that the second parameter
- to the PremadeMediawikiExtensionsGroups constructor is correct.
-- Label and desc of message groups now have $context parameter.
-* 2012-10-18
-- Fixed infinite loop in MediaWikiMessageChecker with unbalanced
- {{PLURAL}} in translations which gave fatal error on editing.
-* 2012-10-18
-- The page translation languages lists no longer overlaps other elements.
-* 2012-10-18
-- Added framework for key generation algorithms in GettextFFS.
- Can be invoked in YAML config; backwards compatibility preserved.
-* 2012-10-16
-- Narayam now works in translation editors.
-* 2012-10-10
-- Inline translation editor is now the default.
-* 2012-10-08
-- New JsonFFS and related changes. Useful for jquery.i18n.
-* 2012-10-04
-- Added the concept of events in several places.
- Useful for future CentralNotice integration.
-* 2012-10-02
-- Page translation is now enabled by default.
- Still restricted by user group rights, which are not set by default.
-* 2012-09-22
-- Framework for automatic group workflow state changes.
-* 2012-09-21
-- Added collection of stats of proofread messages.
-* 2012-09-20
-- Added checker for too many or redundant plural forms in MediaWiki translations.
-* 2012-09-17
-- New script to create pretty graphs of MediaWiki language fallbacks.
-- Also rewritten plural-comparison.php.
-- Performance fixes to reduce timeouts when translating.
-* 2012-09-07
-- Special:ManageMessageGroups now shows new messages
- conflicting with existing pages in the wiki as changes.
-* 2012-09-05
-- Completed integration with the new TranslateSvg extension.
-* 2012-08-31
-- Interface usability: for page translation, export tab now
- shows the wikitext source of the translatable page.
-* 2012-08-19
-- Added support for AndroidXml (Android apps' string.xml).
-* 2012-08-19
-- $wgTranslateRcFilterDefault can be used to show
- translation changes in the RecentChanges by default.
-* 2012-08-17
-- Fixes to avoid double counting of messages in statistics.
-* 2012-08-07
-- Deleting a translatable page no longer deletes
- translatable pages which are subpages of it.
-* 2012-08-02
-- Page translation no longer reuses deleted translation unit identifiers.
-* 2012-08-02
-- Special:ManageMessageGroups is now more efficient,
- able to manage groups with more than 10 000 messages.
-* 2012-08-02
-- GettextFFS now handles messages ending in \ better
-* 2012-07-30
-- Restored compatibility with MediaWiki 1.18.
-* 2012-07-29
-- Dollar signs ($) can now be used in translatable pages without problems.
-* 2012-07-26
-- Introduction of and many improvements to
- Solr TTMServer (translation memory).
-* 2012-07-09
-- Special:TranslationStats now has a date picker to easily fill
- starting date field; it replaces the manual input of all the zeros.
-* 2012-07-02
-- Special:MessageGroupStats now doesn't show
- languages under 2 % of translation by default.
-* 2012-06-27
-- Fixed fatal errors in Special:MessageGroupStats
-* 2012-06-21
-- Fixed recent incompatibility with MW 1.19.
-- Improved hiding of blacklisted groups on Special:LanguageStats.
-* 2012-06-11
-- Allow setting message group state for a group only for specific user right.
- This redefines $wgTranslateWorkflowStates to hold the rights required for
- a state transition.
-- Allow black listing and white listing of languages in YAML configuration. YAML
- files will have new top level section called LANGUAGES. LANGUAGES can have
- optional subsections whitelist and blacklist, which take an array of language
- codes. If a subsection is not specified, the white/blacklist value will
- default to *, meaning all known languages. Whitelist overrides blacklist.
-* 2012-06-04
-- Show the priority languages in Special:Translate.
-* 2012-06-03
-- Option skipgroup added to export.php to filter wildcard groups.
-* 2012-06-02
-- $wgTranslateDisablePreSaveTransform added to make the disabling of PST for
- message pages configurable, so that mediawiki.org etc. isn't broken.
-* 2012-05-29
-- Implemented and used convertWhiteSpaceToHTML in JavaScript.
-- Dynamic groups are ignored in Special:MessageGroupStats.
-* 2012-05-18
-- Fatal error on Special:AggregateGroups fixed.
-- Sort aggregates and their subgroups on Special:AggregateGroups.
-- Outdated caches were not recreated when file and wiki state matched.
-- Page translation icons are now 264dpi.
-- Unnecessary token check removed from Special:AggregateGroups.
-* 2012-05-14
-- Made link appearance in <languages/> bar saner for edge cases. Links to
- existing, but untranslated pages are not shown as red anymore.
-- Fixed bug where fields for new aggregate groups on Special:AggregateGroups
- were sometimes pre-filled.
-- When translation editor is open, a warning is displayed when trying to leave
- the page.
-- OpenLayersFFS was removed.
-- Administrative pages are now links in tabs.
-* 2012-05-10
-- Fix to prevent page protection from confusing page translation feature.
-* 2012-05-09
-- Decimals on Special:LanguageStats and Special:MessageGroupStats were removed
- for improved readability.
-* 2012-05-08
-- processMessageChanges was updated to reduce the number of false positives of
- changed or deleted messages.
-- Deprecated languages are no longer displayed in the language selector on
- Special:Translate.
-* 2012-05-07
-- FFS.php was split into several files.
-* 2012-05-03
-- $wgTranslateDelayedMessageIndexRebuild was added. If you have lots of message
- groups, especially file based ones, and the message index rebuilding gets
- slow, set this to true to delay the rebuilding via JobQueue. This only makes
- sense if you have configured jobs to be processed outside of requests via cron
- or similar.
-- API tokens are provided in a saner way now.
-- "ignore" option was added to Special:ManageMessageGroups (regression fixed).
-* 2012-04-30
-- Comparison of fuzzied translations was improved.
-* 2012-04-25
-- Special:ManageMessageGroups was improved so that the update process takes less
- time. scripts/processMessageChanges.php should be run from the command line.
- This stages all required changes. After that, the stated changes can be
- assessed on Special:ManageMessageGroups. Processing takes place using the
- job queue.
-* 2012-04-16
-- TMessage::setTag renamed to TMessage::addTag.
-* 2012-04-11
-- Option codemaponly added to export.php to so that only code mapped languages
- can be exported.
-- Script autoexport.php was removed. Use export.php.
-* 2012-04-10
-- New MessageIndex backends: database and cdb.
-- Fixed an out of memory issue with page translation feature on MW 1.18 and
- older.
-* 2012-04-05
-- JavaFFS was made more robust.
-* 2012-04-03
-- Profiling updates for message index related function calls.
-- Exception on diff pages fixed.
-* 2012-04-02
-- Improved metadata handling when renaming and deleting translatable pages.
-* 2012-03-27
-- Switch "hours" added to export.php.
-- Bug fix for inline editor to remove the "untranslated" class.
-* 2012-03-26
-- Deleting an aggregate group must be confirmed.
-* 2012-03-24
-- list-mwext-i18n-files.php was simplified.
-* 2012-03-22
-- $wgTranslateAddMWExtensionGroups was removed.
-- Messages are loaded using parent::getDefinitions() to allow decoupling
- MediaWiki message groups from live wiki code.
-* 2012-03-21
-- ext.translate.special.languagestats.js no longer uses onclick.
-- Some issues with overcounting because of aggregate groups were resolved.
-* 2012-03-20
-- ext.translate.special.pagetranslation.js made more reusable: The generic
- autocompletion funcionality is in ext.translate.multiselectautocomplete.js and
- ext.translate.special.pagetranslation.js only apply it to
- Special:PageTranslation.
-* 2012-03-19
-- Group ID prefix for aggregate groups through Special:AggregateGroup was
- updated from "ag-" to "agg-".
-* 2012-03-16
-- A bug was fixed when renaming a translatable page with priority languages.
-- Plural rules were updates to CLDR 21.0.
-- More validations added to Special:AggregateGroup input.
-* 2012-03-14
-- Adding and removing a group from an aggregate group is now logged.
-* 2012-03-13
-- Removed groupprefix option from export.php and sync-group.php. Use * wildcard
- with group option.
-- Page translation widget was made more easily reusable.
-- sync-group.php can now find the timestamp for git checkouts.
-- export.php no longer requires definitionFile when using gettext post processing
- with ppgettext.
-* 2012-03-12
-- Special:LanguageStats group collapsing now supports nested subgroups.
-* 2012-03-11
-- Support for shared TTMServer databases was added.
-- Suggestions from different TTMServers are now grouped.
-- Output of TTMServer api module has changed.
-- TTMServer configs can override the link symbol by adding value for symbol in
- the config.
-* 2012-03-07
-- $wgTranslateGroupStructure is no longer used. If you are using aggregate
- message groups, you can remove the old settings and everything still works as
- expected. If you are not yet using aggregate message groups, you should do
- that to not confuse users.
-- Gettext file were not shown in translation editor when using recent
- translations task.
-- New Special page AggregateGroups where translation administrator can group
- pages into subgroups.
-* 2012-03-06
-- Translation administrator can now suggest languages translatable page should
- be primarily translated into with a note or preventing other language
- translations.
-* 2012-03-05
-- Support for using remote TTMServers via API interface added.
-- Support for tmserver was removed. Translate comes with TTMServer enabled by
- default. To bootstrap it with current translations, run php
- scripts/ttmserver-export.php.
-- Message documentation was not shown when translating for subgroups nested more
- than one level deep.
-- Special:TranslationStats can now graph review and reviewer activity.
-* 2012-03-02
-- Encourage/discourage changes of translatable pages are now logged.
-* 2012-03-01
-- Added upper length for translation memory suggestions because of performance
- concerns.
-* 2012-02-29
-- Configuring wgMainCache is no longer necessary. Translate extension will use
- any available caching mechanism automatically when needed.
-- Support for Google Translate was removed, as the free service is no more.
-- Special:LanguageStats' default value derived from current interface language
- now works also for anonymous users (only relevant when using
- LanguageSelector).
-* 2012-02-24
-- Help link is no longer added twice in Special:SupportedLanguages.
-* 2012-02-21
-- Gettext headers can now be customised with Translate:GettextFFS:headerFields
- hook. Less headers are modified by default.
-- Message index no longer goes into recursive loop on some cases when creating
- the index the first time.
-- Improved the position of help links in Monobook skin.
-* 2012-02-19
-- MediaWiki 1.18 or later is now required.
-- Group description of translatable pages can be extended by adding content to
- [[MediaWiki:Tp-custom-<group id>]].
-* 2012-02-13
-- Updated some deprecated function calls
-- New translation memory called TTMServer comes with the extension and is
- enabled by default.
-* 2012-02-11
-- Some missing action- messages added.
-* 2012-02-10
-- New tabbed task-based UI on Special:Translate.
-* 2012-02-06
-- API module for message group stats written by Tim Gerundt.
-* 2012-02-01
-- Missing JavaScript dependency added to messagetable.
-- No more logging state changes where the state didn't actually change.
-- Allow syntax like
- {{Special:MessageGroupStats|group=page-Main/sub|suppresscomplete=1}}.
-* 2012-01-31
-- export.php: switch "grouptrail" renamed to "groupprefix" and switch "groups".
- was dropped. "group" now takes a comma separated list of groups IDs, too.
-- sync-group.php: switch "groupprefix" added.
-- Double counting of messages when adding message groups and aggregate groups to
- another aggregate group was partially resolved.
-- Messages for translatable pages for which translation is discouraged, are no
- longer added to aggregate message groups to avoid mismatches in statistics.
-- Special:MessageGroupStats now works for group IDs with spaces.
-- Updates were made for the translation memory service, to avoid serving
- incorrect or outdated suggestions.
-* 2012-01-30
-- Statictics issues introduced recently were resolved.
-- "lang" attributes were added to Special:SupportedLanguages.
-- [[Special:Translate/groupname]] links for translatable pages with spaces or
- colons in them are now possible. For page "Some page" it is:
- [[Special:Translate/page-Some_page]].
-- The JavaScript translation editor now shows the code browser and gettext
- comments when translating aggregate message groups.
-- Logging was added group statistics caching to determine if cache purges happen
- too often.
-* 2012-01-29
-- Update functionality for the translation memory was added.
-* 2012-01-28
-- Code readability improvements were made.
-- A translation memory service was added, including a bootstrap script.
-* 2012-01-22
-- Message groups are no longer forced to implement getBools. getTags is the
- official way to do this.
-- getDefinitions was added to the MessageGroupInterface.
-- The public $namespaces variable in MessageGroup was removed.
-* 2012-01-20
-- Browser compatibility updates were made in CSS.
-* 2012-01-19
-- Deprecated hook LanguageGetMagic was removed.
-* 2012-01-16
-- Help icons linking to documentation at
- https://www.mediawiki.org/Help:Extension:Translate or sub pages were added to
- extension functionality.
-- Backward compatibility with MediaWiki 1.18 was restored.
-* 2012-01-13
-- export.php has a switch "no-fuzzy" that will filter out fuzzy messages for
- file based message groups.
-- Special:PageTranslation has now better error checking for invalid and
- duplicate translation unit names.
-- Special pages have now help links.
-- Images were moved to a resources sub folder.
-* 2012-01-11
-- Translate page group id prefix was changed from page| to page-. Some old
- links need to be updated, some still work.
-* 2012-01-10
-- Translate extension no longer unconditionally suppresses edit intros
-- Fixed compatibility issue with logs on < MW 1.18
-* 2012-01-06
-- Fixes to the sizing of the translation editor dialog
-* 2012-01-05
-- Fixed a fatal error that sometimes occurred when translation page title used
- GRAMMAR and the page was viewed with English UI.
-* 2012-01-04
-- The summary row in Special:LanguageStats and Special:MessageGroupStats is no
- longer sorted with rest of the rows.
-- There is now new message group for recent translations intented for reviewing
- new translations
-- Fixed a bug that prevented changing workflow state of page translation
- message group
-* 2012-01-02
-- Special:MyLanguage can now be used with language subpage to use that as the
- default fallback instead of untranslated version
-- The flash of unstylized content effect is reduced
-- FuzzyBot user was not always created, leading to missing log entries
- for example
-- export.php fixed after it was broken due to recent refactorings
-* 2011-12-26
-- Added {{#translationdialog:title}} for creating a link to the translation
- dialog
-* 2011-12-25
-- Made the extension work without legacy JavaScript globals
-- PythonSingleFFS now respects codemap
-* 2011-12-23
-- Translatable pages can now be discouraged, meaning that they won't show up in
- the usually places so that translators don't translate them needlessy.
-* 2011-11-06
-- Rewrote Special:ImportTranslations JavaScript so that it actually works
-- Fixed compatibility with MW 1.17 in JavaScript
-* 2011-11-04
-- The 'no translations' RC filter options was lost when navigating
-- Made MessageCache more robust
-- fuzzy.php can now take optional namespace prefix for each message
-* 2011-10-30
-- The script referenced at 2011-08-26 is now included in the source
-- Fixed compatibility with MW 1.17
-* 2011-10-28
-- New configuration variable $wgTranslatePermissionUrl
-- Message review feature, available to users in translate-proofr group
-- Message collections can now have properties and allow filtering on them
- This is still work in progress and is likely to get improvements over time
-* 2011-10-14
-- New API module: messagetranslations
-* 2011-10-12
-- Multiple bug fixes and improvements to translatable page moving feature
-* 2011-10-07
-- $wgTranslateNewsletterPreference was introduced (default: false). Setting this
- to true, will once again add the "Do not send me e-mail newsletters"
- preference.
-* 2011-10-03
-- MessageIndex can now be stored in object cache (default) or in a file.
-- Fixed an error that sometimes prevented translating messages that had
- been renamed
-* 2011-10-01
-- Changed index on translate_sections database table
-- Fixed escaping in PythonSingleFFS parser
-- Fixed a bug in getSourceLanguage for certain message group classes
-* 2011-09-29
-- Groups folder was cleaned. See groups/README for more information.
-- Fixed PHP notice when marking page for Translation with MW 1.19
-- Fixed a bug in RubyYamlFFS::unflattenPlural, added unit tests
-* 2011-09-28
-- Special:AdvancedTranslate is not enabled by default anymore
-- Special:TranslationChanges was removed
-- Started taking PHP code out of the groups/ folder anticipating Wikimedia
- review. Later we will move all content of the groups folder elsewhere to
- reduce the number of changes of changes to the Translate extension
- considerably.
-* 2011-09-26
-- Special:SupportedLanguages can now show site specific messages in
- supportedlanguages-localsummary message
-* 2011-09-23
-- Change log up to date
-* 2011-09-21
-- It is now possible to nest AggregateMessageGroups
-* 2011-09-19
-- New statistics backend considered stable
-- Special:MessageGroupStatistics
-- Translations that were recognized as redirect by MediaWiki no longer cause PHP notices
-- Made groupStatistics.php script more efficient
-* 2011-09-16
-- Languages are now sorted correctly on Special:LanguageStats for groups > 10k messages
-- It is now possible to specify starting point for graphs in Special:TranslationStats
-* 2011-09-15
-- All code is now using the MessageHandle class
-- ArrayMemoryCache removed due to new Statistics backend
-- New database table translate_groupstats
-* 2011-09-14
-- Sql files moved to a subfolder
-* 2011-09-13
-- Magic words exporter is no longer compatible with MediaWiki <=1.15
-* 2011-09-11
-- Log message for translatable page deletion was incorrect
-- Made page translation log compatible with the new logging system
-* 2011-09-06
-- If magic-export.php does not find a header, output a basic header rather than exitting
-* 2011-09-02
-- Fixed table border display issue on chrome for rtl messages
-- Everything converted to use ResoureLoader framework
-- js directory renamed to resources
-- Officially dropped support for MediaWiki 1.16
-* 2011-09-01
-- Message definition changes were not always displayed for fuzzy messages
-- Dropped embedded jQuery ui
-* 2011-08-31
-- Fixed issues with protocol relative urls
-* 2011-08-30
-- Special page TranslationChanges disabled, pending for removal
-- Got rid of MSG constants
-- Introduces TranslateHooks class
-- Removed efTranslateCheckPT() - please make sure you run update.php when needed
-* 2011-08-29
-- Message and rtl related fixes
-* 2011-08-26
-- revtag_type table is now obsolete - run scripts/migrate-schema2.php to update schema
- the wiki will continue working even if this script is not run immediately
-* 2011-08-22
-- Partial update to CLDR and Gettext plural forms
-* 2011-08-18
-- Made compatible with new fallback method in MW
-* 2011-08-05
-- Translate will use MW page content language feature is available
-* 2011-08-02
-- Do not export TRANSLATE_FUZZY in PythonSingleFFS class
-* 2011-07-23
-- Many rtl related fixes, some only used when MW supports them
-* 2011-07-15
-- Collapsible javascript caused errors with older MWs
-* 2011-07-11
-- Rtl and font related fixes
-- Special:SupportLanguages is now listed on Special:SpecialPages
-- Google suggestions should obey the group source language
-- Update limit selector values. Either people want to show a little by default, or they want to see all of them.
-* 2011-07-10
-- Added some phpunit tests
-* 2011-07-09
-- Rtl fixes
-- Groups can now have source language different from wiki content language
-- action=purge on Special:LanguageStats clears cached stats
-* 2011-07-01
-- Fixed ResourceLoader issue with certain MW versions
-* 2011-06-30
-- Rtl and language tagging fixes
-* 2011-06-26
-- Marking pages for translation the first time works again
-* 2011-06-24
-- Updated bundled spyc library to the latest version
-* 2011-06-22
-- Fixed page translation marking related bug
-* 2011-06-20
-- Improved the UI of Special:ManageMessageGroups somewhat
-* 2011-06-17
-- Page translation now generates hidden markup-less source page versions
-* 2011-06-09
-- Added language cloud to Special:SupportedLanguages
-* 2011-06-08
-- Mark this page for translation link was not always shown
-* 2011-06-07
-- Restored compatibility with MW 1.16
-* 2011-06-05
-- Varios fixes to translatable/translation page deletion
-- Gettext documentation counts against translated messages for message documentation language
-* 2011-06-04
-- Added a special page that allows deleting translatable pages or parts of them.
-- Hack for making Special:MyLanguage links red if target doesn't exists
-* 2011-06-03
-- Handle Chihuahua skin
-* 2011-06-02
-- New hook which tries to do the right thing for subpagelist when viewing translatable pages
-* 2011-04-25
-- Javascript and rtl fixes
-* 2011-04-22
-- With recent MW, the extension now provides form for searching in translations only
- Can also limit to certain language only
-* 2011-04-18
-- Show the ajax editor also for users without rights, as it contains useful information
-- Fixed compatibility issue with CologneBlue skin
-* 2011-04-16
-- Improve style loading to avoid page flash
-* 2011-04-13
-- Splitted Translate.css into smaller files
-* 2011-04-04
-- Updated gettext plural rule for cy
-- Fixed usability issue with summary field
-- Updated spyc from upstream repo
-- Armenian (hy) needs plural in some cases. MediaWiki already has it, also add to gettext
-- Don't use syck-pecl for dumping, the output is horrible
-- In translation dialog, made input elements grow automatically.
-* 2011-04-03
-- Updated plural data for new CLDR
-* 2011-03-16
-- Added ask question button also in the basic editor (still needs javascript to work :(
-* 2011-03-14
-- Fixed message group caching for single file based message groups.
-- Hooked diff pages to provide more information about the message.
- Useful for those who follow recent changes feeds in review purposes
-- New class MessageHandle
-* 2011-03-11
-- In Special:ManageMessageGroups - don't expose actions to users who are not allowed to do them
-- Encourage translators to ask for help with a button
-* 2011-03-08
-- Added support for pecl syck, which is magnitudes faster and uses less memory.
- Like all the other supported yaml implementations, this one has its own bugs that need to be worked around.
-* 2011-03-06
-- Speed and memory improvements to Special:LangugeStats
-* 2011-02-28
-- Special:LanguageStats: Fix IE-bug. Element creation must have valid syntax, does not accept shortcuts
-* 2011-02-01
-- Allow TRANSLATE_FUZZY to be redefined to a nonstandard value in LocalSettings.php
-* 2011-01-24
-- Moved all Special*.php files to specials/ folder. Update autoloader to match
-* 2011-01-22
-- Fixed character escpaing in Python FFS writer.
-* 2011-01-19
-- Improved suport for multi-line messages in OpenLayers FFS
-* 2011-01-17
-- Use the new ArticlePrepareTextForEdit hook to disable pre-save transformation on all message pages except for the message documentation language.
-* 2011-01-15
-- Read authors from python message files.
-* 2011-01-05
-- Use the new jquery.colorUtil to make the brightness 30% higher when cells are hovered on Special:LanguageStats
-
-=== 2010 ===
-
-* 2010-12-31
-- Use new hook to translate message documentation language code
-- Some improvements to Special:Translations: display language name, enable sorting, display count
-* 2010-12-24
-- Last bits of mw-js conventions
-* 2010-12-10
-- Transform translated page titles
-* 2010-11-05
-- Renamed TranslatePage to SpecialTranslate to follow the naming pattern
-- ViewUntranslated task was showing wrong table header
-* 2010-10-24
-- Support for Microsoft Translator
-* 2010-10-06
-- Fixed two bugs in translatable pages parsing which caused non-translatable pages to be considered as tagged
-- Performance improvements and bug fixes to message group cache
-* 2010-10-02
-- Fixed huge text in translation dialog
-* 2010-09-30
-- Fix X-POT-Import-date formatting
-* 2010-09-29
-- Lots of code cleanup related to message groups
-* 2010-09-27
-- Added parameter 'skip' to make it possible to export * but not 'en' and 'qqq' for example.
-* 2010-09-26
-- Allow translation of titles of translatable pages
-- Avoid Fatal when someone tries to export AggregateMessageGroup
-* 2010-09-25
-- First Api Query Module messagecollection
-* 2010-08-23
-- Fixed multiple bugs in Special:TranslationStats
-* 2010-08-20
-- Documentation updated a lot, added doxygen spec file.
-* 2010-06-12
-- Removed $wgGoogleApiKey, $wgTranslateTM and $wgTranslateApertium
-- You need to migrate to $wgTranslateTranslationServices
-- Page translation has been improved a lot
-- translation memory suggestions can now be loaded asynchronously
-* 2010-03-27
-- Improvements to js edit, like save and open next
-* 2010-02-24
-- Dropped $wgTranslateCssLocation. In MW 1.16 and later you can use $wgExtensionAssetsPath
-* 2010-01-24
-- Support for Apertium machine translation service
-- Fixed issue with jQuery and Vector skin
-* 2010-01-22
-- Support for using Google's translation api as a source for tm suggestions
-- Interface element for copying tm suggestion into text area
-* 2010-01-16 Translation memory suggestions are aggregated intelligently to save space
- There is link back to the original message in tm suggestions
- tm-export superceded dump-tm
-
-=== Changes in version 12 ===
-- Page translation
-- New fuzzy system, should be faster now
-- Edit are consistently filled when starting translation
-
-=== Changes in version 11 ===
-* 2009-05-09
-- Support added for OpenLayers
-- Page translation feature updated. Not backwards compatible
-* 2009-04-28 Tweaks for new preferences system
-* 2009-04-27 Updated preferences handling; only show when relevant
-* 2009-04-24 Updated preferences handling to work with MediaWiki 1.15a r49790 and up
-* 2009-04-23 Link added to message group in the source message fieldset description
-* 2009-04-15 Added class 'mw-sp-translate-[id]' to all message groups on Special:Translate
-* 2009-04-04:2 Support added for NOCC
-* 2009-04-04:1 PhpVariables Mantis header inconsistency fixed
-* 2009-03-29 Table header on Special:LanguageStats suppressed when all translations are complete
-
-=== Changes in version 10 ===
-* 2009-03-24 Also 2 decimals for fuzzy in Special:LanguageStats
-* 2009-03-23 Localised number formatting in Special:LanguageStats
-* 2009-02-22
-- Intro suppressed
-- message documentation no longer show warnings
-- improved keeping track of the language that is being translated in
-* 2009-02-14 Export header for MantisBT updated
-* 2009-01-18:1 Bug in autoexport fixed. Provides realiable output again
-* 2009-01-17:2 Content translation was disabled
-* 2009-01-17:1 Headers in gettext files no longer multiply
-* 2009-01-15 Support structure for Commonist added
-* 2009-01-11:4 Export time checks for special page aliases and updated FreeCol problematic checks
-* 2009-01-11:3 Skip optionals and ignored messages in previous/next to avoid accidental translations
-* 2009-01-11:2 wgMaxShellMemory increased for sync-group.php to avoid out of memory issues
-* 2009-01-11:1 New options added to and performance improvements for autoexport.php
-* 2008-12-31 XHTML fixes in Special:LanguageStats
-* 2008-12-18 Special:TranslationStats allow passing a language parameter now and uses fontconfig if available
-* 2008-12-16 Miscellaneous problematic checks updated
-* 2008-12-15:2 Export headers for MantisBT updated
-* 2008-12-15:1 task to display untranslation optional messages was added
-* 2008-12-07 bug in export to file in web interface caused empty translations to be exported
-* 2008-11-30:1 added Special:LanguageStats for real-time translation statistics
-* 2008-11-24:2 fallback messages in the edit screen now have an edit link
-* 2008-11-24:1 added Special:Translations to show all translations of a message
-* 2008-09-09:1 add message checks for Mantis
-* 2008-09-07 add support for Mantis
-* 2008-09-05 add languageeditstats.php to provide a top list of edits per language
-* 2008-09-05 add import for groups containing "." like core-1.13
-* 2008-08-08:1 experimental sync-group to import external changes and keep them in sync
-* 2008-08-04:1 add "Other translations" link to Special:Prefexindex in sidebar toolbox
-* 2008-07-29:2 support for variables and purging and fallbacks in page translation
-* 2008-07-29:1 bug fixes and enhanced magic word support for AdvancedTranslate
-* 2008-07-26:2 proper parents for branched messages
-* 2008-07-26:1
- - improved speed and memory usage
- - experimental <translate> tag for wikipage translation
-* 2008-07-17:1
-- simple form to generate graphs
-- scale and count parameters for graphs
-* 2008-07-15:2 new check for unaltered namespaces in pagename messages of MediaWiki
-* 2008-07-15:1
- - improved message checks
- - can now work for meta groups too
- - fixed messages not shown in the list anymore, but script still needed to find
- the broken ones
-* 2008-07-13:2 group filter for graphs
-* 2008-07-13:1 experimental alias-export for extensions
-* 2008-07-08:1 simple edit stats with phplot
-* 2008-07-05:1 fuzzy.php was ignoring the namespace
-* 2008-07-04:2
- - use an existing hook for quick links
- - possible fix for Windows
-* 2008-07-04:1 poimport uses correct namespace
-* 2008-07-01:1
- - Fix gettext message name snippets: filter / and trim after trailing
- - Load normal comments from gettext files
- - Quick links for viewing, using a private hook
-* 2008-06-30:3 Check for unknown vars for mediawiki type
-* 2008-06-30:2 Checks for missing and unknown variables for FreeCol
-* 2008-06-30:1 More contrast in the new default page for Special translate
-* 2008-06-29:2 Branched core messages now load translations from trunk files too
-
-=== Changes in version 9 ===
-* Released 2008-06-29
-* (bug 12955) Numbers should be localized in Translate extension
-* Support branches for core messages
-* fuzzy.php got support for --comment and --skiplanguages
-* untranslated is now the default task
-* truncate very long message names in table view
-* show definition closer to edit area
-* show the group of message when editing
-* branched core messages should now export properly
-* $wgTranslateBlacklist added to prevent edits to certain language/group combinations
-* new exporters
-* changed the way of adding MediaWiki extensions
-* support for having messages in namespaces other than NS_MEDIAWIKi
-* try to load qqq from files if not found from the database
-* added $wgTranslateAuthorBlacklist
-* new options to groupStatistics.php: --fuzzy and --skipzero
-* fuzzy respects now $wgTranslateMessageNamespaces
-* freecol not added by default
-* Messages keys can now start with capital letter, but have to be unique after normalising case and spaces
-* poimport will no longer replace translation in database with empty string
-* Support for exporting very basic Xliff files (no import yet)
-* Task for listing problematic messages
-* CreateCheckIndex.php maintenance script for creating a list of problematic messsages
-* Aliases for special pages
-* improvements to Special:Magic and support for translating special page aliases for extensions
-* more generic check framework
-* new front page for Special:Translate
-* desc and descmsg support for mediawiki extension group definitions
-
-=== Changes in version 8 ===
-* Released 2008-02-06
-* export.php for even faster exporting (only core messages supported currently)
-* Message groups can now have description or notes for translations
-* Enhanced edit view with fieldsets and message documentation
-* New variable $wgTranslateDocumentationLanguageCode
-* Fixed Special:Magic form submission and selector bug
-* --skiplanguages option for groupStatistics.php
-* Force keys to lower case in serialised index to avoid misses due to case
-* Changed fuzzy.php to assume location of commandline.inc, so that it can be run from any location
-* Preserve whitespace also in Special:Translate table
-* Run checks on editing view (current translation or submitted translation in preview) and display them to user
-* Fixed a bug where empty text area would be filled with current translation even after first page load
-* Don't fuzzy Documentation language
-* Export task was erronously outputting as plain
-* New variable $wgTranslateCC for adding custom groups
-* WikiMessageGroup class, which is easy to use class for defining a message group for wiki's custom user interface elements
-* Array keys in $wgTranslateEC and $wgTranslateAC are not used for alphabetical sorting only. MessageGroup::$id and MessageGroup::getId() are used for everything else.
-* Export documentation messages as "extracted comments" in po export
-* Import fuzzy messages as fuzzy in po import
-* Experimental support for some extensions in export.php
-* export.php can now export most supported groups
-* autoexport.php helper
-* Content-Disposition header for po export
-* Link to Special:Translate added in Special:Version
-* Possibility to add comments when editing with Special:magic
-
-=== Changes in version 7 ===
-* Released 2007-12-29
-* New HTMLSelector class
-* Cleaned user interface of Special:Translate
-* Special:TranslationChanges remembers hours option
-* Removed for a while unused setting $wgTranslateTryLoad
-* TranslateTasks::getTask returns null for invalid keys instead of throwing en error
-* New member function TranslateTask::plainOutput - Tasks can use it to request plain text output
-* Add css as a separate file instead of adding it to request output and new setting for it: $wgTranslateCssLocation
-* Filled readme for old changes a bit
-* Experimental po import
-* groupStatistics.php for creating statistics for groups
-
-=== Changes in version 6 ===
-* Released 2007-12-21
-* New classes MessageCollection and TMessage
-* Experimental po export
-* MessageGroup::fillBools has changed to getBools and usage changed a little
-* New member function MessageGroup::isMeta
-* Lots of new extensions supported
-
-=== Changes in version 5 ===
-* Released 2007-11-14
-* CreateMessageIndex.php which creates serialised index of message key -> group
-
-=== Changes in version 4 ===
-* New "task-based" interface
-* Paging of messages
-* Separation of translation and interface language
-* New mediawiki extensions available for translation
-* Support for extensions which use splitted i18n files
diff --git a/MLEB/Translate/Gemfile b/MLEB/Translate/Gemfile
deleted file mode 100644
index 5306ecab..00000000
--- a/MLEB/Translate/Gemfile
+++ /dev/null
@@ -1,7 +0,0 @@
-#ruby=ruby-2.1.2
-#ruby-gemset=Translate
-
-source "https://rubygems.org"
-
-gem "mediawiki_selenium"
-gem "rubocop", require: false
diff --git a/MLEB/Translate/Gemfile.lock b/MLEB/Translate/Gemfile.lock
deleted file mode 100644
index 80a0ef81..00000000
--- a/MLEB/Translate/Gemfile.lock
+++ /dev/null
@@ -1,81 +0,0 @@
-GEM
- remote: https://rubygems.org/
- specs:
- ast (2.0.0)
- astrolabe (1.3.0)
- parser (>= 2.2.0.pre.3, < 3.0)
- builder (3.2.2)
- childprocess (0.5.3)
- ffi (~> 1.0, >= 1.0.11)
- cucumber (1.3.15)
- builder (>= 2.1.2)
- diff-lcs (>= 1.1.3)
- gherkin (~> 2.12)
- multi_json (>= 1.7.5, < 2.0)
- multi_test (>= 0.1.1)
- data_magic (0.19)
- faker (>= 1.1.2)
- yml_reader (>= 0.3)
- diff-lcs (1.2.5)
- faker (1.3.0)
- i18n (~> 0.5)
- ffi (1.9.3)
- gherkin (2.12.2)
- multi_json (~> 1.3)
- headless (1.0.2)
- i18n (0.6.9)
- json (1.8.1)
- mediawiki_selenium (0.2.23)
- cucumber (~> 1.3, >= 1.3.10)
- headless (~> 1.0, >= 1.0.1)
- json (~> 1.8, >= 1.8.1)
- net-http-persistent (~> 2.9, >= 2.9.1)
- page-object (~> 1.0)
- rest-client (~> 1.6, >= 1.6.7)
- rspec-expectations (~> 2.14, >= 2.14.4)
- syntax (~> 1.2, >= 1.2.0)
- mime-types (2.3)
- multi_json (1.10.1)
- multi_test (0.1.1)
- net-http-persistent (2.9.4)
- page-object (1.0)
- page_navigation (>= 0.9)
- selenium-webdriver (>= 2.42.0)
- watir-webdriver (>= 0.6.9)
- page_navigation (0.9)
- data_magic (>= 0.14)
- parser (2.2.0.pre.4)
- ast (>= 1.1, < 3.0)
- slop (~> 3.4, >= 3.4.5)
- powerpack (0.0.9)
- rainbow (2.0.0)
- rest-client (1.6.7)
- mime-types (>= 1.16)
- rspec-expectations (2.99.0)
- diff-lcs (>= 1.1.3, < 2.0)
- rubocop (0.26.1)
- astrolabe (~> 1.3)
- parser (>= 2.2.0.pre.4, < 3.0)
- powerpack (~> 0.0.6)
- rainbow (>= 1.99.1, < 3.0)
- ruby-progressbar (~> 1.4)
- ruby-progressbar (1.6.0)
- rubyzip (1.1.4)
- selenium-webdriver (2.42.0)
- childprocess (>= 0.5.0)
- multi_json (~> 1.0)
- rubyzip (~> 1.0)
- websocket (~> 1.0.4)
- slop (3.6.0)
- syntax (1.2.0)
- watir-webdriver (0.6.9)
- selenium-webdriver (>= 2.18.0)
- websocket (1.0.7)
- yml_reader (0.3)
-
-PLATFORMS
- ruby
-
-DEPENDENCIES
- mediawiki_selenium
- rubocop
diff --git a/MLEB/Translate/MediaWikiMessageChecker.php b/MLEB/Translate/MediaWikiMessageChecker.php
index 8da9d2da..14e06180 100644
--- a/MLEB/Translate/MediaWikiMessageChecker.php
+++ b/MLEB/Translate/MediaWikiMessageChecker.php
@@ -5,7 +5,7 @@
* @file
* @author Niklas Laxström
* @copyright Copyright © 2008-2010, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -20,7 +20,7 @@ class MediaWikiMessageChecker extends MessageChecker {
*
* @param TMessage[] $messages Iterable list of TMessage objects.
* @param string $code Language code of the translations.
- * @param array $warnings Array where warnings are appended to.
+ * @param array &$warnings Array where warnings are appended to.
*/
protected function wikiParameterCheck( $messages, $code, &$warnings ) {
parent::parameterCheck( $messages, $code, $warnings, '/\$[1-9]/' );
@@ -34,7 +34,7 @@ class MediaWikiMessageChecker extends MessageChecker {
*
* @param TMessage[] $messages Iterable list of TMessage objects.
* @param string $code Language code of the translations.
- * @param array $warnings Array where warnings are appended to.
+ * @param array &$warnings Array where warnings are appended to.
*/
protected function wikiLinksCheck( $messages, $code, &$warnings ) {
$tc = Title::legalChars() . '#%{}';
@@ -45,7 +45,7 @@ class MediaWikiMessageChecker extends MessageChecker {
$translation = $message->translation();
$subcheck = 'extra';
- $matches = $links = array();
+ $matches = $links = [];
preg_match_all( "/\[\[([{$tc}]+)(\\|(.+?))?]]/sDu", $translation, $matches );
$count = count( $matches[0] );
for ( $i = 0; $i < $count; $i++ ) {
@@ -59,16 +59,16 @@ class MediaWikiMessageChecker extends MessageChecker {
}
if ( count( $links ) ) {
- $warnings[$key][] = array(
- array( 'links', $subcheck, $key, $code ),
+ $warnings[$key][] = [
+ [ 'links', $subcheck, $key, $code ],
'translate-checks-links',
- array( 'PARAMS', $links ),
- array( 'COUNT', count( $links ) ),
- );
+ [ 'PARAMS', $links ],
+ [ 'COUNT', count( $links ) ],
+ ];
}
$subcheck = 'missing';
- $matches = $links = array();
+ $matches = $links = [];
preg_match_all( "/\[\[([{$tc}]+)(\\|(.+?))?]]/sDu", $definition, $matches );
$count = count( $matches[0] );
for ( $i = 0; $i < $count; $i++ ) {
@@ -82,12 +82,12 @@ class MediaWikiMessageChecker extends MessageChecker {
}
if ( count( $links ) ) {
- $warnings[$key][] = array(
- array( 'links', $subcheck, $key, $code ),
+ $warnings[$key][] = [
+ [ 'links', $subcheck, $key, $code ],
'translate-checks-links-missing',
- array( 'PARAMS', $links ),
- array( 'COUNT', count( $links ) ),
- );
+ [ 'PARAMS', $links ],
+ [ 'COUNT', count( $links ) ],
+ ];
}
}
}
@@ -97,7 +97,7 @@ class MediaWikiMessageChecker extends MessageChecker {
*
* @param TMessage[] $messages Iterable list of TMessage objects.
* @param string $code Language code of the translations.
- * @param array $warnings Array where warnings are appended to.
+ * @param array &$warnings Array where warnings are appended to.
*/
protected function XhtmlCheck( $messages, $code, &$warnings ) {
foreach ( $messages as $message ) {
@@ -108,31 +108,38 @@ class MediaWikiMessageChecker extends MessageChecker {
}
$subcheck = 'invalid';
- $tags = array(
+ $tags = [
'~<hr *(\\\\)?>~suDi' => '<hr />', // Wrong syntax
'~<br *(\\\\)?>~suDi' => '<br />',
'~<hr/>~suDi' => '<hr />', // Wrong syntax
'~<br/>~suDi' => '<br />',
'~<(HR|Hr|hR) />~su' => '<hr />', // Case
'~<(BR|Br|bR) />~su' => '<br />',
- );
+ ];
- $wrongTags = array();
+ $definition = $message->definition();
+
+ $wrongTags = [];
foreach ( $tags as $wrong => $correct ) {
- $matches = array();
+ $matches = [];
preg_match_all( $wrong, $translation, $matches, PREG_PATTERN_ORDER );
foreach ( $matches[0] as $wrongMatch ) {
+ if ( strpos( $definition, $wrongMatch ) !== false ) {
+ // If the message definition contains a
+ // non-strict string, do not enforce it
+ continue;
+ }
$wrongTags[$wrongMatch] = "$wrongMatch → $correct";
}
}
if ( count( $wrongTags ) ) {
- $warnings[$key][] = array(
- array( 'xhtml', $subcheck, $key, $code ),
+ $warnings[$key][] = [
+ [ 'xhtml', $subcheck, $key, $code ],
'translate-checks-xhtml',
- array( 'PARAMS', $wrongTags ),
- array( 'COUNT', count( $wrongTags ) ),
- );
+ [ 'PARAMS', $wrongTags ],
+ [ 'COUNT', count( $wrongTags ) ],
+ ];
}
}
}
@@ -142,7 +149,7 @@ class MediaWikiMessageChecker extends MessageChecker {
*
* @param TMessage[] $messages Iterable list of TMessage objects.
* @param string $code Language code of the translations.
- * @param array $warnings Array where warnings are appended to.
+ * @param array &$warnings Array where warnings are appended to.
*/
protected function pluralCheck( $messages, $code, &$warnings ) {
foreach ( $messages as $message ) {
@@ -155,10 +162,10 @@ class MediaWikiMessageChecker extends MessageChecker {
stripos( $definition, '{{plural:' ) !== false &&
stripos( $translation, '{{plural:' ) === false
) {
- $warnings[$key][] = array(
- array( 'plural', $subcheck, $key, $code ),
+ $warnings[$key][] = [
+ [ 'plural', $subcheck, $key, $code ],
'translate-checks-plural',
- );
+ ];
}
}
}
@@ -167,7 +174,7 @@ class MediaWikiMessageChecker extends MessageChecker {
* Checks if the translation uses too many plural forms
* @param TMessage[] $messages
* @param string $code
- * @param array $warnings
+ * @param array &$warnings
* @since 2012-09-19
*/
protected function pluralFormsCheck( $messages, $code, &$warnings ) {
@@ -188,18 +195,18 @@ class MediaWikiMessageChecker extends MessageChecker {
$provided = count( $forms );
if ( $provided > $allowed ) {
- $warnings[$key][] = array(
- array( 'plural', 'forms', $key, $code ),
+ $warnings[$key][] = [
+ [ 'plural', 'forms', $key, $code ],
'translate-checks-plural-forms', $provided, $allowed
- );
+ ];
}
// Are the last two forms identical?
if ( $provided > 1 && $forms[$provided - 1] === $forms[$provided - 2] ) {
- $warnings[$key][] = array(
- array( 'plural', 'dupe', $key, $code ),
+ $warnings[$key][] = [
+ [ 'plural', 'dupe', $key, $code ],
'translate-checks-plural-dupe'
- );
+ ];
}
}
}
@@ -225,14 +232,14 @@ class MediaWikiMessageChecker extends MessageChecker {
* returns array of invokations having array of forms.
* @since 2012-09-19
* @param string $translation
- * @return array[array]
+ * @return array[]
*/
public static function getPluralForms( $translation ) {
// Stores the forms from plural invocations
- $plurals = array();
+ $plurals = [];
$cb = function ( $parser, $frame, $args ) use ( &$plurals ) {
- $forms = array();
+ $forms = [];
foreach ( $args as $index => $form ) {
// The first arg is the number, we skip it
@@ -287,7 +294,7 @@ class MediaWikiMessageChecker extends MessageChecker {
*
* @param TMessage[] $messages Iterable list of TMessage objects.
* @param string $code Language code of the translations.
- * @param array $warnings Array where warnings are appended to.
+ * @param array &$warnings Array where warnings are appended to.
*/
protected function pagenameMessagesCheck( $messages, $code, &$warnings ) {
foreach ( $messages as $message ) {
@@ -297,14 +304,14 @@ class MediaWikiMessageChecker extends MessageChecker {
$subcheck = 'namespace';
$namespaces = 'help|project|\{\{ns:project}}|mediawiki';
- $matches = array();
- if ( preg_match( "/^($namespaces):[\w\s]+$/ui", $definition, $matches ) ) {
- if ( !preg_match( "/^{$matches[1]}:.+$/u", $translation ) ) {
- $warnings[$key][] = array(
- array( 'pagename', $subcheck, $key, $code ),
- 'translate-checks-pagename',
- );
- }
+ $matches = [];
+ if ( preg_match( "/^($namespaces):[\w\s]+$/ui", $definition, $matches ) &&
+ !preg_match( "/^{$matches[1]}:.+$/u", $translation )
+ ) {
+ $warnings[$key][] = [
+ [ 'pagename', $subcheck, $key, $code ],
+ 'translate-checks-pagename',
+ ];
}
}
}
@@ -314,10 +321,10 @@ class MediaWikiMessageChecker extends MessageChecker {
*
* @param TMessage[] $messages Iterable list of TMessage objects.
* @param string $code Language code of the translations.
- * @param array $warnings Array where warnings are appended to.
+ * @param array &$warnings Array where warnings are appended to.
*/
protected function miscMWChecks( $messages, $code, &$warnings ) {
- $timeList = array( 'protect-expiry-options', 'ipboptions' );
+ $timeList = [ 'protect-expiry-options', 'ipboptions' ];
foreach ( $messages as $message ) {
$key = $message->key();
@@ -332,12 +339,12 @@ class MediaWikiMessageChecker extends MessageChecker {
$defCount = count( $defArray );
$traCount = count( $traArray );
if ( $defCount !== $traCount ) {
- $warnings[$key][] = array(
- array( 'miscmw', $subcheck, $key, $code ),
+ $warnings[$key][] = [
+ [ 'miscmw', $subcheck, $key, $code ],
'translate-checks-format',
wfMessage( 'translate-checks-parametersnotequal' )
->numParams( $traCount, $defCount )->text()
- );
+ ];
continue;
}
@@ -348,24 +355,24 @@ class MediaWikiMessageChecker extends MessageChecker {
$subcheck = 'timelist-format';
if ( count( $traItems ) !== 2 ) {
- $warnings[$key][] = array(
- array( 'miscmw', $subcheck, $key, $code ),
+ $warnings[$key][] = [
+ [ 'miscmw', $subcheck, $key, $code ],
'translate-checks-format',
wfMessage(
'translate-checks-malformed',
$traArray[$i]
)->text()
- );
+ ];
continue;
}
$subcheck = 'timelist-format-value';
if ( $traItems[1] !== $defItems[1] ) {
- $warnings[$key][] = array(
- array( 'miscmw', $subcheck, $key, $code ),
+ $warnings[$key][] = [
+ [ 'miscmw', $subcheck, $key, $code ],
'translate-checks-format',
"<samp><nowiki>$traItems[1] !== $defItems[1]</nowiki></samp>", // @todo FIXME: i18n missing.
- );
+ ];
continue;
}
}
diff --git a/MLEB/Translate/Message.php b/MLEB/Translate/Message.php
index 3a5b18de..fc5f810b 100644
--- a/MLEB/Translate/Message.php
+++ b/MLEB/Translate/Message.php
@@ -5,31 +5,31 @@
* @file
* @author Niklas Laxström
* @copyright Copyright © 2008-2010, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
* Interface for message objects used by MessageCollection.
*/
abstract class TMessage {
- /// \string Message display key.
+ /** @var string Message display key. */
protected $key;
- /// \string Message definition.
+ /** @var string Message definition. */
protected $definition;
- /// \string Committed in-file translation.
+ /** @var string Committed in-file translation. */
protected $infile;
- /// \list{String} Message tags.
- protected $tags = array();
- /// \array Message properties.
- protected $props = array();
- /// \list{String} Message reviewers.
- protected $reviewers = array();
+ /** @var string[] Message tags. */
+ protected $tags = [];
+ /** @var array Message properties. */
+ protected $props = [];
+ /** @var string[] Message reviewers. */
+ protected $reviewers = [];
/**
* Creates new message object.
*
- * @param $key string Unique key identifying this message.
- * @param $definition string The authoritave definition of this message.
+ * @param string $key Unique key identifying this message.
+ * @param string $definition The authoritave definition of this message.
*/
public function __construct( $key, $definition ) {
$this->key = $key;
@@ -60,7 +60,7 @@ abstract class TMessage {
/**
* Set the committed translation.
- * @param $text \string
+ * @param string $text
*/
public function setInfile( $text ) {
$this->infile = $text;
@@ -76,7 +76,7 @@ abstract class TMessage {
/**
* Add a tag for this message.
- * @param $tag \string
+ * @param string $tag
*/
public function addTag( $tag ) {
$this->tags[] = $tag;
@@ -84,8 +84,8 @@ abstract class TMessage {
/**
* Check if this message has a given tag.
- * @param $tag \string
- * @return \bool
+ * @param string $tag
+ * @return bool
*/
public function hasTag( $tag ) {
return in_array( $tag, $this->tags, true );
@@ -105,7 +105,7 @@ abstract class TMessage {
public function appendProperty( $key, $value ) {
if ( !isset( $this->props[$key] ) ) {
- $this->props[$key] = array();
+ $this->props[$key] = [];
}
$this->props[$key][] = $value;
}
@@ -131,10 +131,10 @@ abstract class TMessage {
*/
class ThinMessage extends TMessage {
// This maps properties to fields in the database result row
- protected static $propertyMap = array(
+ protected static $propertyMap = [
'last-translator-text' => 'rev_user_text',
'last-translator-id' => 'rev_user',
- );
+ ];
/**
* @var stdClass Database Result Row
@@ -182,7 +182,7 @@ class ThinMessage extends TMessage {
* Hence the name fat. Authors are not supported.
*/
class FatMessage extends TMessage {
- /// \string Stored translation.
+ /** @var string Stored translation. */
protected $translation;
/**
diff --git a/MLEB/Translate/MessageChecks.php b/MLEB/Translate/MessageChecks.php
index df6d6046..27037847 100644
--- a/MLEB/Translate/MessageChecks.php
+++ b/MLEB/Translate/MessageChecks.php
@@ -5,8 +5,7 @@
* @file
* @defgroup MessageCheckers Message Checkers
* @author Niklas Laxström
- * @copyright Copyright © 2008-2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -45,23 +44,23 @@
* @ingroup MessageCheckers
*/
class MessageChecker {
- protected $checks = array();
- protected $group = null;
- private static $globalBlacklist = null;
+ protected $checks = [];
+ protected $group;
+ private static $globalBlacklist;
/**
* Constructs a suitable checker for given message group.
- * @param $group MessageGroup
+ * @param MessageGroup $group
*/
public function __construct( MessageGroup $group ) {
global $wgTranslateCheckBlacklist;
if ( $wgTranslateCheckBlacklist === false ) {
- self::$globalBlacklist = array();
+ self::$globalBlacklist = [];
} elseif ( self::$globalBlacklist === null ) {
$file = $wgTranslateCheckBlacklist;
$list = PHPVariableLoader::loadVariableFromPHPFile( $file, 'checkBlacklist' );
- $keys = array( 'group', 'check', 'subcheck', 'code', 'message' );
+ $keys = [ 'group', 'check', 'subcheck', 'code', 'message' ];
foreach ( $list as $key => $pattern ) {
foreach ( $keys as $checkKey ) {
@@ -69,7 +68,7 @@ class MessageChecker {
$list[$key][$checkKey] = '#';
} elseif ( is_array( $pattern[$checkKey] ) ) {
$list[$key][$checkKey] =
- array_map( array( $this, 'foldValue' ), $pattern[$checkKey] );
+ array_map( [ $this, 'foldValue' ], $pattern[$checkKey] );
} else {
$list[$key][$checkKey] = $this->foldValue( $pattern[$checkKey] );
}
@@ -95,7 +94,7 @@ class MessageChecker {
* Set the tests for this checker. Array of callables with descriptive keys.
* @param array $checks List of checks (suitable methods in this class)
*/
- public function setChecks( $checks ) {
+ public function setChecks( array $checks ) {
foreach ( $checks as $k => $c ) {
if ( !is_callable( $c ) ) {
unset( $checks[$k] );
@@ -110,10 +109,8 @@ class MessageChecker {
* @see setChecks()
* @param callable $check
*/
- public function addCheck( $check ) {
- if ( is_callable( $check ) ) {
- $this->checks[] = $check;
- }
+ public function addCheck( callable $check ) {
+ $this->checks[] = $check;
}
/**
@@ -125,16 +122,16 @@ class MessageChecker {
* @return array
*/
public function checkMessage( TMessage $message, $code ) {
- $warningsArray = array();
- $messages = array( $message );
+ $warningsArray = [];
+ $messages = [ $message ];
foreach ( $this->checks as $check ) {
- call_user_func_array( $check, array( $messages, $code, &$warningsArray ) );
+ call_user_func_array( $check, [ $messages, $code, &$warningsArray ] );
}
$warningsArray = $this->filterWarnings( $warningsArray );
if ( !count( $warningsArray ) ) {
- return array();
+ return [];
}
$warnings = $warningsArray[$message->key()];
@@ -150,11 +147,11 @@ class MessageChecker {
* @return bool True if there is a problem, false otherwise.
*/
public function checkMessageFast( TMessage $message, $code ) {
- $warningsArray = array();
- $messages = array( $message );
+ $warningsArray = [];
+ $messages = [ $message ];
foreach ( $this->checks as $check ) {
- call_user_func_array( $check, array( $messages, $code, &$warningsArray ) );
+ call_user_func_array( $check, [ $messages, $code, &$warningsArray ] );
if ( count( $warningsArray ) ) {
return true;
}
@@ -168,7 +165,7 @@ class MessageChecker {
* @param array $warningsArray List of warnings produces by checkMessage().
* @return array List of filtered warnings.
*/
- protected function filterWarnings( $warningsArray ) {
+ protected function filterWarnings( array $warningsArray ) {
$groupId = $this->group->getId();
// There is an array of messages...
@@ -226,12 +223,12 @@ class MessageChecker {
* @throws MWException
* @return array List of warning messages with parameters.
*/
- protected function fixMessageParams( $warnings ) {
+ protected function fixMessageParams( array $warnings ) {
$lang = RequestContext::getMain()->getLanguage();
foreach ( $warnings as $wkey => $warning ) {
array_shift( $warning );
- $message = array( array_shift( $warning ) );
+ $message = [ array_shift( $warning ) ];
foreach ( $warning as $param ) {
if ( !is_array( $param ) ) {
@@ -259,8 +256,8 @@ class MessageChecker {
* @param array $trans
* @return array Items of $defs that are not in $trans.
*/
- protected static function compareArrays( $defs, $trans ) {
- $missing = array();
+ protected static function compareArrays( array $defs, array $trans ) {
+ $missing = [];
foreach ( $defs as $defVar ) {
if ( !in_array( $defVar, $trans ) ) {
@@ -276,7 +273,7 @@ class MessageChecker {
* translations.
* @param TMessage[] $messages Iterable list of TMessage objects.
* @param string $code Language code
- * @param array $warnings Array where warnings are appended to.
+ * @param array &$warnings Array where warnings are appended to.
*/
protected function printfCheck( $messages, $code, array &$warnings ) {
$this->parameterCheck( $messages, $code, $warnings, '/%(\d+\$)?[sduf]/U' );
@@ -287,7 +284,7 @@ class MessageChecker {
* translations.
* @param TMessage[] $messages Iterable list of TMessage objects.
* @param string $code Language code
- * @param array $warnings Array where warnings are appended to.
+ * @param array &$warnings Array where warnings are appended to.
*/
protected function rubyVariableCheck( $messages, $code, array &$warnings ) {
$this->parameterCheck( $messages, $code, $warnings, '/%{[a-zA-Z_]+}/' );
@@ -298,7 +295,7 @@ class MessageChecker {
* translations.
* @param TMessage[] $messages Iterable list of TMessage objects.
* @param string $code Language code
- * @param array $warnings Array where warnings are appended to.
+ * @param array &$warnings Array where warnings are appended to.
*/
protected function pythonInterpolationCheck( $messages, $code, array &$warnings ) {
$pattern = '/\%\([a-zA-Z0-9]*?\)[diouxXeEfFgGcrs]/U';
@@ -308,9 +305,12 @@ class MessageChecker {
/**
* Checks if the translation has even number of opening and closing
* parentheses. {, [ and ( are checked.
+ * Note that this will not add a warning if the message definition
+ * has an unbalanced amount of braces.
+ *
* @param TMessage[] $messages Iterable list of TMessage objects.
* @param string $code Language code
- * @param array $warnings Array where warnings are appended to.
+ * @param array &$warnings Array where warnings are appended to.
*/
protected function braceBalanceCheck( $messages, $code, array &$warnings ) {
foreach ( $messages as $message ) {
@@ -319,11 +319,11 @@ class MessageChecker {
$translation = preg_replace( '/[^{}[\]()]/u', '', $translation );
$subcheck = 'brace';
- $counts = array(
+ $counts = [
'{' => 0, '}' => 0,
'[' => 0, ']' => 0,
'(' => 0, ')' => 0,
- );
+ ];
$len = strlen( $translation );
for ( $i = 0; $i < $len; $i++ ) {
@@ -331,36 +331,48 @@ class MessageChecker {
$counts[$char]++;
}
- $balance = array();
- if ( $counts['['] !== $counts[']'] ) {
+ $definition = $message->definition();
+
+ $balance = [];
+ if ( $counts['['] !== $counts[']'] && self::checkStringCountEqual( $definition, '[', ']' ) ) {
$balance[] = '[]: ' . ( $counts['['] - $counts[']'] );
}
- if ( $counts['{'] !== $counts['}'] ) {
+ if ( $counts['{'] !== $counts['}'] && self::checkStringCountEqual( $definition, '{', '}' ) ) {
$balance[] = '{}: ' . ( $counts['{'] - $counts['}'] );
}
- if ( $counts['('] !== $counts[')'] ) {
+ if ( $counts['('] !== $counts[')'] && self::checkStringCountEqual( $definition, '(', ')' ) ) {
$balance[] = '(): ' . ( $counts['('] - $counts[')'] );
}
if ( count( $balance ) ) {
- $warnings[$key][] = array(
- array( 'balance', $subcheck, $key, $code ),
+ $warnings[$key][] = [
+ [ 'balance', $subcheck, $key, $code ],
'translate-checks-balance',
- array( 'PARAMS', $balance ),
- array( 'COUNT', count( $balance ) ),
- );
+ [ 'PARAMS', $balance ],
+ [ 'COUNT', count( $balance ) ],
+ ];
}
}
}
/**
+ * @param string $source
+ * @param string $str1
+ * @param string $str2
+ * @return bool whether $source has an equal number of occurences of $str1 and $str2
+ */
+ protected static function checkStringCountEqual( $source, $str1, $str2 ) {
+ return substr_count( $source, $str1 ) === substr_count( $source, $str2 );
+ }
+
+ /**
* Checks for missing and unknown printf formatting characters in
* translations.
* @param TMessage[] $messages Iterable list of TMessage objects.
* @param string $code Language code
- * @param array $warnings Array where warnings are appended to.
+ * @param array &$warnings Array where warnings are appended to.
* @param string $pattern Regular expression for matching variables.
*/
protected function parameterCheck( $messages, $code, array &$warnings, $pattern ) {
@@ -377,12 +389,12 @@ class MessageChecker {
$params = self::compareArrays( $defVars[0], $transVars[0] );
if ( count( $params ) ) {
- $warnings[$key][] = array(
- array( 'variable', $subcheck, $key, $code ),
+ $warnings[$key][] = [
+ [ 'variable', $subcheck, $key, $code ],
'translate-checks-parameters',
- array( 'PARAMS', $params ),
- array( 'COUNT', count( $params ) ),
- );
+ [ 'PARAMS', $params ],
+ [ 'COUNT', count( $params ) ],
+ ];
}
// Check for unknown variables in the translatio
@@ -390,12 +402,12 @@ class MessageChecker {
$params = self::compareArrays( $transVars[0], $defVars[0] );
if ( count( $params ) ) {
- $warnings[$key][] = array(
- array( 'variable', $subcheck, $key, $code ),
+ $warnings[$key][] = [
+ [ 'variable', $subcheck, $key, $code ],
'translate-checks-parameters-unknown',
- array( 'PARAMS', $params ),
- array( 'COUNT', count( $params ) ),
- );
+ [ 'PARAMS', $params ],
+ [ 'COUNT', count( $params ) ],
+ ];
}
}
}
@@ -403,7 +415,7 @@ class MessageChecker {
/**
* @param TMessage[] $messages Iterable list of TMessage objects.
* @param string $code Language code
- * @param array $warnings Array where warnings are appended to.
+ * @param array &$warnings Array where warnings are appended to.
*/
protected function balancedTagsCheck( $messages, $code, array &$warnings ) {
foreach ( $messages as $message ) {
@@ -418,7 +430,7 @@ class MessageChecker {
}
$errors = libxml_get_errors();
- $params = array();
+ $params = [];
foreach ( $errors as $error ) {
if ( $error->code !== 76 && $error->code !== 73 ) {
continue;
@@ -430,12 +442,12 @@ class MessageChecker {
continue;
}
- $warnings[$key][] = array(
- array( 'tags', 'balance', $key, $code ),
+ $warnings[$key][] = [
+ [ 'tags', 'balance', $key, $code ],
'translate-checks-format',
- array( 'PARAMS', $params ),
- array( 'COUNT', count( $params ) ),
- );
+ [ 'PARAMS', $params ],
+ [ 'COUNT', count( $params ) ],
+ ];
}
libxml_clear_errors();
diff --git a/MLEB/Translate/MessageCollection.php b/MLEB/Translate/MessageCollection.php
index 07572867..9d158310 100644
--- a/MLEB/Translate/MessageCollection.php
+++ b/MLEB/Translate/MessageCollection.php
@@ -5,9 +5,11 @@
* @file
* @author Niklas Laxström
* @copyright Copyright © 2007-2011, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
+use Wikimedia\Rdbms\IResultWrapper;
+
/**
* Core message collection class.
*
@@ -24,25 +26,25 @@ class MessageCollection implements ArrayAccess, Iterator, Countable {
/**
* @var MessageDefinitions
- * */
+ */
protected $definitions = null;
/**
* @var array array( %Message key => translation, ... )
*/
- protected $infile = array();
+ protected $infile = [];
// Keys and messages.
/**
* @var array array( %Message display key => database key, ... )
*/
- protected $keys = array();
+ protected $keys = [];
/**
* @var array array( %Message String => TMessage, ... )
*/
- protected $messages = array();
+ protected $messages = [];
/**
* @var array
@@ -51,30 +53,32 @@ class MessageCollection implements ArrayAccess, Iterator, Countable {
// Database resources
- /// \type{Database Result Resource} Stored message existence and fuzzy state.
- protected $dbInfo = null;
+ /** @var IResultWrapper Stored message existence and fuzzy state. */
+ protected $dbInfo;
- /// \type{Database Result Resource} Stored translations in database.
- protected $dbData = null;
+ /** @var IResultWrapper Stored translations in database. */
+ protected $dbData;
- /// \type{Database Result Resource} Stored reviews in database.
- protected $dbReviewData = array();
+ /** @var IResultWrapper Stored reviews in database. */
+ protected $dbReviewData = [];
/**
* Tags, copied to thin messages
* tagtype => keys
+ * @var array[]
*/
- protected $tags = array();
+ protected $tags = [];
/**
* Properties, copied to thin messages
+ * @var array[]
*/
- protected $properties = array();
+ protected $properties = [];
/**
* @var string[] Authors.
*/
- protected $authors = array();
+ protected $authors = [];
/**
* Constructors. Use newFromDefinitions() instead.
@@ -118,10 +122,9 @@ class MessageCollection implements ArrayAccess, Iterator, Countable {
/**
* Set translation from file, as opposed to translation which only exists
* in the wiki because they are not exported and committed yet.
- * @param array $messages \arrayof{String,String} Array of translations indexed
- * by display key.
+ * @param string[] $messages Array of translations indexed by display key.
*/
- public function setInfile( array $messages ) {
+ public function setInFile( array $messages ) {
$this->infile = $messages;
}
@@ -166,7 +169,7 @@ class MessageCollection implements ArrayAccess, Iterator, Countable {
* @return string[] List of keys with given tag.
*/
public function getTags( $type ) {
- return isset( $this->tags[$type] ) ? $this->tags[$type] : array();
+ return isset( $this->tags[$type] ) ? $this->tags[$type] : [];
}
/**
@@ -207,7 +210,7 @@ class MessageCollection implements ArrayAccess, Iterator, Countable {
}
}
- return isset( $filteredAuthors ) ? $filteredAuthors : array();
+ return isset( $filteredAuthors ) ? $filteredAuthors : [];
}
/**
@@ -234,14 +237,12 @@ class MessageCollection implements ArrayAccess, Iterator, Countable {
/**
* Loads all message data. Must be called before accessing the messages
- * with ArrayAccess or iteration. Must be called before filtering for
- * $dbtype to have an effect.
- * @param int $dbtype One of DB_* constants.
- */
- public function loadTranslations( $dbtype = DB_SLAVE ) {
- $this->loadData( $this->keys, $dbtype );
- $this->loadInfo( $this->keys, $dbtype );
- $this->loadReviewInfo( $this->keys, $dbtype );
+ * with ArrayAccess or iteration.
+ */
+ public function loadTranslations() {
+ $this->loadData( $this->keys );
+ $this->loadInfo( $this->keys );
+ $this->loadReviewInfo( $this->keys );
$this->initMessages();
}
@@ -255,10 +256,10 @@ class MessageCollection implements ArrayAccess, Iterator, Countable {
$this->keys = $this->fixKeys();
$this->dbInfo = null;
$this->dbData = null;
- $this->dbReviewData = array();
+ $this->dbReviewData = [];
$this->messages = null;
- $this->infile = array();
- $this->authors = array();
+ $this->infile = [];
+ $this->authors = [];
unset( $this->tags['fuzzy'] );
$this->reverseMap = null;
@@ -279,7 +280,7 @@ class MessageCollection implements ArrayAccess, Iterator, Countable {
}
// Handle string offsets
- if ( !ctype_digit( strval( $offset ) ) ) {
+ if ( !ctype_digit( (string)$offset ) ) {
$count = 0;
foreach ( array_keys( $this->keys ) as $index ) {
if ( $index === $offset ) {
@@ -302,7 +303,7 @@ class MessageCollection implements ArrayAccess, Iterator, Countable {
// max(). And finally make the offsets to be strings even if
// they are numbers in this case.
if ( $offset > 0 ) {
- $backwardsOffset = strval( max( 0, $offset - $limit ) );
+ $backwardsOffset = (string)( max( 0, $offset - $limit ) );
}
// Forwards paging uses keys. If user opens view Untranslated,
@@ -321,7 +322,7 @@ class MessageCollection implements ArrayAccess, Iterator, Countable {
$this->keys = array_slice( $this->keys, $offset, $limit, true );
- return array( $backwardsOffset, $forwardsOffset, $offset );
+ return [ $backwardsOffset, $forwardsOffset, $offset ];
}
/**
@@ -344,7 +345,7 @@ class MessageCollection implements ArrayAccess, Iterator, Countable {
* (INFILE, TRANSLATIONS)
* @param bool $condition Whether to return messages which do not satisfy
* the given filter condition (true), or only which do (false).
- * @param mixed $value Value for properties filtering.
+ * @param mixed|null $value Value for properties filtering.
* @throws MWException If given invalid filter name.
*/
public function filter( $type, $condition = true, $value = null ) {
@@ -358,7 +359,7 @@ class MessageCollection implements ArrayAccess, Iterator, Countable {
* @return array
*/
public static function getAvailableFilters() {
- return array(
+ return [
'fuzzy',
'optional',
'ignored',
@@ -367,7 +368,7 @@ class MessageCollection implements ArrayAccess, Iterator, Countable {
'translated',
'reviewer',
'last-translator',
- );
+ ];
}
/**
@@ -402,7 +403,7 @@ class MessageCollection implements ArrayAccess, Iterator, Countable {
if ( $filter !== 'optional' && $filter !== 'ignored' ) {
throw new MWException( "No tagged messages for custom filter $filter" );
}
- $keys = $this->filterOnCondition( $keys, array(), $condition );
+ $keys = $this->filterOnCondition( $keys, [], $condition );
} else {
$taggedKeys = array_flip( $this->tags[$filter] );
$keys = $this->filterOnCondition( $keys, $taggedKeys, $condition );
@@ -455,7 +456,7 @@ class MessageCollection implements ArrayAccess, Iterator, Countable {
protected function filterFuzzy( array $keys, $condition ) {
$this->loadInfo( $keys );
- $origKeys = array();
+ $origKeys = [];
if ( $condition === false ) {
$origKeys = $keys;
}
@@ -483,7 +484,7 @@ class MessageCollection implements ArrayAccess, Iterator, Countable {
protected function filterHastranslation( array $keys, $condition ) {
$this->loadInfo( $keys );
- $origKeys = array();
+ $origKeys = [];
if ( $condition === false ) {
$origKeys = $keys;
}
@@ -516,7 +517,7 @@ class MessageCollection implements ArrayAccess, Iterator, Countable {
protected function filterChanged( array $keys, $condition ) {
$this->loadData( $keys );
- $origKeys = array();
+ $origKeys = [];
if ( $condition === false ) {
$origKeys = $keys;
}
@@ -556,9 +557,9 @@ class MessageCollection implements ArrayAccess, Iterator, Countable {
/* This removes messages from the list which have certain
* reviewer (among others) */
- $userId = intval( $user );
+ $userId = (int)$user;
foreach ( $this->dbReviewData as $row ) {
- if ( $user === null || intval( $row->trr_user ) === $userId ) {
+ if ( $user === null || (int)$row->trr_user === $userId ) {
unset( $keys[$this->rowToKey( $row )] );
}
}
@@ -581,9 +582,9 @@ class MessageCollection implements ArrayAccess, Iterator, Countable {
$this->loadData( $keys );
$origKeys = $keys;
- $user = intval( $user );
+ $user = (int)$user;
foreach ( $this->dbData as $row ) {
- if ( intval( $row->rev_user ) === $user ) {
+ if ( (int)$row->rev_user === $user ) {
unset( $keys[$this->rowToKey( $row )] );
}
}
@@ -600,13 +601,13 @@ class MessageCollection implements ArrayAccess, Iterator, Countable {
* @return array ( string => string ) Array of keys in database format indexed by display format.
*/
protected function fixKeys() {
- $newkeys = array();
+ $newkeys = [];
// array( namespace, pagename )
$pages = $this->definitions->getPages();
$code = $this->code;
foreach ( $pages as $key => $page ) {
- list ( $namespace, $pagename ) = $page;
+ list( $namespace, $pagename ) = $page;
$title = Title::makeTitleSafe( $namespace, "$pagename/$code" );
if ( !$title ) {
wfWarn( "Invalid title $namespace:$pagename/$code" );
@@ -621,98 +622,104 @@ class MessageCollection implements ArrayAccess, Iterator, Countable {
/**
* Loads existence and fuzzy state for given list of keys.
* @param string[] $keys List of keys in database format.
- * @param int $dbtype One of DB_* constants.
*/
- protected function loadInfo( array $keys, $dbtype = DB_SLAVE ) {
+ protected function loadInfo( array $keys ) {
if ( $this->dbInfo !== null ) {
return;
}
- $this->dbInfo = array();
+ $this->dbInfo = [];
if ( !count( $keys ) ) {
return;
}
- $dbr = wfGetDB( $dbtype );
- $tables = array( 'page', 'revtag' );
- $fields = array( 'page_namespace', 'page_title', 'rt_type' );
+ $dbr = TranslateUtils::getSafeReadDB();
+ $tables = [ 'page', 'revtag' ];
+ $fields = [ 'page_namespace', 'page_title', 'rt_type' ];
$conds = $this->getTitleConds( $dbr );
- $joins = array( 'revtag' =>
- array(
+ $joins = [ 'revtag' =>
+ [
'LEFT JOIN',
- array( 'page_id=rt_page', 'page_latest=rt_revision', 'rt_type' => RevTag::getType( 'fuzzy' ) )
- )
- );
+ [ 'page_id=rt_page', 'page_latest=rt_revision', 'rt_type' => RevTag::getType( 'fuzzy' ) ]
+ ]
+ ];
- $this->dbInfo = $dbr->select( $tables, $fields, $conds, __METHOD__, array(), $joins );
+ $this->dbInfo = $dbr->select( $tables, $fields, $conds, __METHOD__, [], $joins );
}
/**
* Loads reviewers for given messages.
* @param string[] $keys List of keys in database format.
- * @param int $dbtype One of DB_* constants.
*/
- protected function loadReviewInfo( array $keys, $dbtype = DB_SLAVE ) {
- if ( $this->dbReviewData !== array() ) {
+ protected function loadReviewInfo( array $keys ) {
+ if ( $this->dbReviewData !== [] ) {
return;
}
- $this->dbReviewData = array();
+ $this->dbReviewData = [];
if ( !count( $keys ) ) {
return;
}
- $dbr = wfGetDB( $dbtype );
- $tables = array( 'page', 'translate_reviews' );
- $fields = array( 'page_namespace', 'page_title', 'trr_user' );
+ $dbr = TranslateUtils::getSafeReadDB();
+ $tables = [ 'page', 'translate_reviews' ];
+ $fields = [ 'page_namespace', 'page_title', 'trr_user' ];
$conds = $this->getTitleConds( $dbr );
- $joins = array( 'translate_reviews' =>
- array(
+ $joins = [ 'translate_reviews' =>
+ [
'JOIN',
- array( 'page_id=trr_page', 'page_latest=trr_revision' )
- )
- );
+ [ 'page_id=trr_page', 'page_latest=trr_revision' ]
+ ]
+ ];
- $this->dbReviewData = $dbr->select( $tables, $fields, $conds, __METHOD__, array(), $joins );
+ $this->dbReviewData = $dbr->select( $tables, $fields, $conds, __METHOD__, [], $joins );
}
/**
* Loads translation for given list of keys.
* @param string[] $keys List of keys in database format.
- * @param int $dbtype One of DB_* constants.
*/
- protected function loadData( array $keys, $dbtype = DB_SLAVE ) {
+ protected function loadData( array $keys ) {
if ( $this->dbData !== null ) {
return;
}
- $this->dbData = array();
+ $this->dbData = [];
if ( !count( $keys ) ) {
return;
}
- $dbr = wfGetDB( $dbtype );
+ $dbr = TranslateUtils::getSafeReadDB();
- $tables = array( 'page', 'revision', 'text' );
- $fields = array(
- 'page_namespace',
- 'page_title',
- 'page_latest',
- 'rev_user',
- 'rev_user_text',
- 'old_flags',
- 'old_text'
- );
- $conds = array(
- 'page_latest = rev_id',
- 'old_id = rev_text_id',
- );
+ if ( is_callable( Revision::class, 'getQueryInfo' ) ) {
+ $revQuery = Revision::getQueryInfo( [ 'page', 'text' ] );
+ } else {
+ $revQuery = [
+ 'tables' => [ 'page', 'revision', 'text' ],
+ 'fields' => [
+ 'page_namespace',
+ 'page_title',
+ 'page_latest',
+ 'rev_user',
+ 'rev_user_text',
+ 'old_flags',
+ 'old_text'
+ ],
+ 'joins' => [
+ 'revision' => [ 'JOIN', 'page_latest = rev_id' ],
+ 'text' => [ 'JOIN', 'old_id = rev_text_id' ],
+ ],
+ ];
+ }
+ $conds = [ 'page_latest = rev_id' ];
$conds[] = $this->getTitleConds( $dbr );
- $res = $dbr->select( $tables, $fields, $conds, __METHOD__ );
+ $res = $dbr->select(
+ $revQuery['tables'], $revQuery['fields'], $conds, __METHOD__, [], $revQuery['joins']
+ );
$this->dbData = $res;
}
@@ -720,24 +727,24 @@ class MessageCollection implements ArrayAccess, Iterator, Countable {
/**
* Of the current set of keys, construct database query conditions.
* @since 2011-12-28
- * @param DatabaseBase $db
+ * @param \Wikimedia\Rdbms\IDatabase $db
* @return string
*/
protected function getTitleConds( $db ) {
// Array of array( namespace, pagename )
- $byNamespace = array();
+ $byNamespace = [];
foreach ( $this->getTitles() as $title ) {
$namespace = $title->getNamespace();
- $pagename = $title->getDBKey();
+ $pagename = $title->getDBkey();
$byNamespace[$namespace][] = $pagename;
}
- $conds = array();
+ $conds = [];
foreach ( $byNamespace as $namespaces => $pagenames ) {
- $cond = array(
+ $cond = [
'page_namespace' => $namespaces,
'page_title' => $pagenames,
- );
+ ];
$conds[] = $db->makeList( $cond, LIST_AND );
}
@@ -750,6 +757,8 @@ class MessageCollection implements ArrayAccess, Iterator, Countable {
* database fields page_namespace and page_title as keys and returns
* the value for those indexes.
* @since 2011-12-23
+ * @param stdClass $row
+ * @return string|null
*/
protected function rowToKey( $row ) {
$map = $this->getReverseMap();
@@ -765,21 +774,23 @@ class MessageCollection implements ArrayAccess, Iterator, Countable {
/**
* Creates a two-dimensional map of namespace and pagenames.
* @since 2011-12-23
+ * @return array
*/
public function getReverseMap() {
if ( isset( $this->reverseMap ) ) {
return $this->reverseMap;
}
- $map = array();
+ $map = [];
/**
* @var Title $title
*/
foreach ( $this->keys as $mkey => $title ) {
- $map[$title->getNamespace()][$title->getDBKey()] = $mkey;
+ $map[$title->getNamespace()][$title->getDBkey()] = $mkey;
}
- return $this->reverseMap = $map;
+ $this->reverseMap = $map;
+ return $this->reverseMap;
}
/**
@@ -791,7 +802,7 @@ class MessageCollection implements ArrayAccess, Iterator, Countable {
return;
}
- $messages = array();
+ $messages = [];
$definitions = $this->definitions->getDefinitions();
foreach ( array_keys( $this->keys ) as $mkey ) {
$messages[$mkey] = new ThinMessage( $mkey, $definitions[$mkey] );
@@ -810,7 +821,7 @@ class MessageCollection implements ArrayAccess, Iterator, Countable {
}
if ( $this->dbInfo !== null ) {
- $fuzzy = array();
+ $fuzzy = [];
foreach ( $this->dbInfo as $row ) {
if ( $row->rt_type !== null ) {
$fuzzy[] = $this->rowToKey( $row );
@@ -888,7 +899,7 @@ class MessageCollection implements ArrayAccess, Iterator, Countable {
/**
* @param mixed $offset
- * @param $value
+ * @param mixed $value
*/
public function offsetSet( $offset, $value ) {
$this->messages[$offset] = $value;
@@ -974,13 +985,13 @@ class MessageDefinitions {
*/
public function getPages() {
$namespace = $this->namespace;
- $pages = array();
+ $pages = [];
foreach ( array_keys( $this->messages ) as $key ) {
if ( $namespace === false ) {
// pages are in format ex. "8:jan"
$pages[$key] = explode( ':', $key, 2 );
} else {
- $pages[$key] = array( $namespace, $key );
+ $pages[$key] = [ $namespace, $key ];
}
}
diff --git a/MLEB/Translate/MessageGroupConfigurationParser.php b/MLEB/Translate/MessageGroupConfigurationParser.php
index 48870836..d86f2565 100644
--- a/MLEB/Translate/MessageGroupConfigurationParser.php
+++ b/MLEB/Translate/MessageGroupConfigurationParser.php
@@ -3,7 +3,7 @@
*
* @file
* @author Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -25,7 +25,7 @@ class MessageGroupConfigurationParser {
* schema will be ignored, if schema validation is enabled.
*
* @param string $data Yaml
- * @param callable $callback Optional callback which is called on errors. Parameters are
+ * @param callable|null $callback Optional callback which is called on errors. Parameters are
* document index, processed configuration and error message.
* @return array Group configurations indexed by message group id.
*/
@@ -38,7 +38,7 @@ class MessageGroupConfigurationParser {
$documents = self::getDocumentsFromYaml( $data );
$configurations = self::parseDocuments( $documents );
- $groups = array();
+ $groups = [];
if ( is_array( $this->baseSchema ) ) {
foreach ( $configurations as $index => $config ) {
@@ -76,12 +76,13 @@ class MessageGroupConfigurationParser {
* Returns group configurations from YAML documents. If there is document containing template,
* it will be merged with other configurations.
*
- * @param string $data
+ * @param array $documents
* @return array Unvalidated group configurations
*/
public function parseDocuments( array $documents ) {
- $groups = array();
- $template = false;
+ $groups = [];
+ $template = [];
+
foreach ( $documents as $document ) {
$document = TranslateYaml::loadString( $document );
@@ -129,7 +130,7 @@ class MessageGroupConfigurationParser {
continue;
}
- $extra = call_user_func( array( $class, 'getExtraSchema' ) );
+ $extra = call_user_func( [ $class, 'getExtraSchema' ] );
$schema = array_replace_recursive( $schema, $extra );
}
diff --git a/MLEB/Translate/MessageGroups.php b/MLEB/Translate/MessageGroups.php
index 279439b5..92ba97fa 100644
--- a/MLEB/Translate/MessageGroups.php
+++ b/MLEB/Translate/MessageGroups.php
@@ -6,7 +6,7 @@
* @author Niklas Laxström
* @author Siebrand Mazeland
* @copyright Copyright © 2008-2013, Niklas Laxström, Siebrand Mazeland
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -16,36 +16,67 @@
*/
class MessageGroups {
/**
- * @var Array Cache for message group priorities
+ * @var string[]|null Cache for message group priorities
*/
- protected static $prioritycache = null;
+ protected static $prioritycache;
- protected static $groups = null;
-
- /// Initialises the list of groups (but not the groups itself if possible).
- public static function init() {
- if ( is_array( self::$groups ) ) {
- return;
- }
+ /**
+ * @var array|null
+ */
+ protected $groups;
- self::$groups = array();
+ /**
+ * @var BagOStuff|null
+ */
+ protected $cache;
+ /**
+ * Initialises the list of groups
+ */
+ protected function init() {
global $wgAutoloadClasses;
+ if ( is_array( $this->groups ) ) {
+ return;
+ }
+
$key = wfMemcKey( 'translate-groups' );
- $value = DependencyWrapper::getValueFromCache( self::getCache(), $key );
+ $value = DependencyWrapper::getValueFromCache( $this->getCache(), $key );
if ( $value === null ) {
wfDebug( __METHOD__ . "-nocache\n" );
- self::loadGroupDefinitions();
+ $groups = $this->loadGroupDefinitions();
} else {
wfDebug( __METHOD__ . "-withcache\n" );
- self::$groups = $value['cc'];
+ $groups = $value['cc'];
+ self::appendAutoloader( $value['autoload'], $wgAutoloadClasses );
+ }
+
+ $this->postInit( $groups );
+ }
- foreach ( $value['autoload'] as $class => $file ) {
- $wgAutoloadClasses[$class] = $file;
+ /**
+ * @param array $groups
+ */
+ protected function postInit( $groups ) {
+ // Expand groups to objects
+ foreach ( $groups as $id => $mixed ) {
+ if ( !is_object( $mixed ) ) {
+ $groups[$id] = call_user_func( $mixed, $id );
}
}
+
+ $this->groups = $groups;
+ }
+
+ /**
+ * Immediately update the cache.
+ *
+ * @since 2015.04
+ */
+ public function recache() {
+ $groups = $this->loadGroupDefinitions();
+ $this->postInit( $groups );
}
/**
@@ -54,68 +85,133 @@ class MessageGroups {
* Use when automatic dependency tracking fails.
*/
public static function clearCache() {
- $key = wfMemckey( 'translate-groups' );
- self::getCache()->delete( $key );
- self::$groups = null;
+ $self = self::singleton();
+ $self->getCache()->delete( wfMemcKey( 'translate-groups' ) );
+ $self->clearProcessCache();
+ }
+
+ /**
+ * Manually reset the process cache.
+ *
+ * This is helpful for long running scripts where the process cache might get stale
+ * even though the global cache is updated.
+ * @since 2016.08
+ */
+ public function clearProcessCache() {
+ $this->groups = null;
}
/**
* Returns a cacher object.
+ *
* @return BagOStuff
*/
- protected static function getCache() {
- return wfGetCache( CACHE_ANYTHING );
+ protected function getCache() {
+ if ( $this->cache === null ) {
+ return wfGetCache( CACHE_ANYTHING );
+ } else {
+ return $this->cache;
+ }
+ }
+
+ /**
+ * Override cache, for example during tests.
+ *
+ * @param BagOStuff|null $cache
+ */
+ public function setCache( BagOStuff $cache = null ) {
+ $this->cache = $cache;
+ }
+
+ /**
+ * Safely merges first array to second array, throwing warning on duplicates and removing
+ * duplicates from the first array.
+ * @param array &$additions Things to append
+ * @param array &$to Where to append
+ */
+ protected static function appendAutoloader( array &$additions, array &$to ) {
+ foreach ( $additions as $class => $file ) {
+ if ( isset( $to[$class] ) && $to[$class] !== $file ) {
+ $msg = "Autoload conflict for $class: {$to[$class]} !== $file";
+ trigger_error( $msg, E_USER_WARNING );
+ continue;
+ }
+
+ $to[$class] = $file;
+ }
}
/**
* This constructs the list of all groups from multiple different
* sources. When possible, a cache dependency is created to automatically
* recreate the cache when configuration changes.
- * @todo Reduce the ways of which messages can be added. Target is just
- * to have three ways: Yaml files, translatable pages and with the hook.
+ * @return array
*/
- protected static function loadGroupDefinitions() {
+ protected function loadGroupDefinitions() {
+ global $wgAutoloadClasses;
- global $wgEnablePageTranslation, $wgTranslateGroupFiles;
- global $wgTranslateCC, $wgAutoloadClasses, $wgTranslateWorkflowStates;
+ $groups = $deps = $autoload = [];
- $deps = array();
- $deps[] = new GlobalDependency( 'wgEnablePageTranslation' );
- $deps[] = new GlobalDependency( 'wgTranslateGroupFiles' );
- $deps[] = new GlobalDependency( 'wgTranslateCC' );
- $deps[] = new GlobalDependency( 'wgTranslateWorkflowStates' );
+ Hooks::run( 'TranslatePostInitGroups', [ &$groups, &$deps, &$autoload ] );
+
+ // Register autoloaders for this request, both values modified by reference
+ self::appendAutoloader( $autoload, $wgAutoloadClasses );
+
+ $key = wfMemcKey( 'translate-groups' );
+ $value = [
+ 'ts' => wfTimestamp( TS_MW ),
+ 'cc' => $groups,
+ 'autoload' => $autoload,
+ ];
- self::$groups = $wgTranslateCC;
+ $wrapper = new DependencyWrapper( $value, $deps );
+ $wrapper->storeToCache( $this->getCache(), $key, 60 * 60 * 2 );
- if ( $wgEnablePageTranslation ) {
- wfProfileIn( __METHOD__ . '-pt' );
- $dbr = wfGetDB( DB_MASTER );
+ return $groups;
+ }
- $tables = array( 'page', 'revtag' );
- $vars = array( 'page_id', 'page_namespace', 'page_title' );
- $conds = array( 'page_id=rt_page', 'rt_type' => RevTag::getType( 'tp:mark' ) );
- $options = array( 'GROUP BY' => 'rt_page' );
- $res = $dbr->select( $tables, $vars, $conds, __METHOD__, $options );
+ /**
+ * Hook: TranslatePostInitGroups
+ * @param array &$groups
+ * @param array &$deps
+ * @param array &$autoload
+ */
+ public static function getTranslatablePages( array &$groups, array &$deps, array &$autoload ) {
+ global $wgEnablePageTranslation;
- foreach ( $res as $r ) {
- $title = Title::newFromRow( $r );
- $id = TranslatablePage::getMessageGroupIdFromTitle( $title );
- self::$groups[$id] = new WikiPageMessageGroup( $id, $title );
- self::$groups[$id]->setLabel( $title->getPrefixedText() );
- }
- wfProfileOut( __METHOD__ . '-pt' );
+ $deps[] = new GlobalDependency( 'wgEnablePageTranslation' );
+
+ if ( !$wgEnablePageTranslation ) {
+ return;
}
- if ( $wgTranslateWorkflowStates ) {
- self::$groups['translate-workflow-states'] = new WorkflowStatesMessageGroup();
+ $db = TranslateUtils::getSafeReadDB();
+
+ $tables = [ 'page', 'revtag' ];
+ $vars = [ 'page_id', 'page_namespace', 'page_title' ];
+ $conds = [ 'page_id=rt_page', 'rt_type' => RevTag::getType( 'tp:mark' ) ];
+ $options = [ 'GROUP BY' => 'rt_page' ];
+ $res = $db->select( $tables, $vars, $conds, __METHOD__, $options );
+
+ foreach ( $res as $r ) {
+ $title = Title::newFromRow( $r );
+ $id = TranslatablePage::getMessageGroupIdFromTitle( $title );
+ $groups[$id] = new WikiPageMessageGroup( $id, $title );
+ $groups[$id]->setLabel( $title->getPrefixedText() );
}
+ }
- wfProfileIn( __METHOD__ . '-hook' );
- $autoload = array();
- wfRunHooks( 'TranslatePostInitGroups', array( &self::$groups, &$deps, &$autoload ) );
- wfProfileOut( __METHOD__ . '-hook' );
+ /**
+ * Hook: TranslatePostInitGroups
+ * @param array &$groups
+ * @param array &$deps
+ * @param array &$autoload
+ */
+ public static function getConfiguredGroups( array &$groups, array &$deps, array &$autoload ) {
+ global $wgTranslateGroupFiles;
+
+ $deps[] = new GlobalDependency( 'wgTranslateGroupFiles' );
- wfProfileIn( __METHOD__ . '-yaml' );
$parser = new MessageGroupConfigurationParser();
foreach ( $wgTranslateGroupFiles as $configFile ) {
$deps[] = new FileDependency( realpath( $configFile ) );
@@ -131,61 +227,72 @@ class MessageGroups {
foreach ( $fgroups as $id => $conf ) {
if ( !empty( $conf['AUTOLOAD'] ) && is_array( $conf['AUTOLOAD'] ) ) {
$dir = dirname( $configFile );
- foreach ( $conf['AUTOLOAD'] as $class => $file ) {
- // For this request and for caching.
- $wgAutoloadClasses[$class] = "$dir/$file";
- $autoload[$class] = "$dir/$file";
- }
+ $additions = array_map( function ( $file ) use ( $dir ) {
+ return "$dir/$file";
+ }, $conf['AUTOLOAD'] );
+ self::appendAutoloader( $additions, $autoload );
}
- $group = MessageGroupBase::factory( $conf );
- self::$groups[$id] = $group;
+
+ $groups[$id] = MessageGroupBase::factory( $conf );
}
}
- wfProfileOut( __METHOD__ . '-yaml' );
+ }
+
+ /**
+ * Hook: TranslatePostInitGroups
+ * @param array &$groups
+ * @param array &$deps
+ * @param array &$autoload
+ */
+ public static function getWorkflowGroups( array &$groups, array &$deps, array &$autoload ) {
+ global $wgTranslateWorkflowStates;
+
+ $deps[] = new GlobalDependency( 'wgTranslateWorkflowStates' );
- wfProfileIn( __METHOD__ . '-agg' );
- $aggregateGroups = self::getAggregateGroups();
- foreach ( $aggregateGroups as $id => $group ) {
- self::$groups[$id] = $group;
+ if ( $wgTranslateWorkflowStates ) {
+ $groups['translate-workflow-states'] = new WorkflowStatesMessageGroup();
}
- wfProfileOut( __METHOD__ . '-agg' );
+ }
- $key = wfMemckey( 'translate-groups' );
- $value = array(
- 'cc' => self::$groups,
- 'autoload' => $autoload,
- );
+ /**
+ * Hook: TranslatePostInitGroups
+ * @param array &$groups
+ * @param array &$deps
+ * @param array &$autoload
+ */
+ public static function getAggregateGroups( array &$groups, array &$deps, array &$autoload ) {
+ $groups += self::loadAggregateGroups();
+ }
- wfProfileIn( __METHOD__ . '-save' );
- $wrapper = new DependencyWrapper( $value, $deps );
- $wrapper->storeToCache( self::getCache(), $key, 60 * 60 * 2 );
- wfProfileOut( __METHOD__ . '-save' );
+ /**
+ * Hook: TranslatePostInitGroups
+ * @param array &$groups
+ * @param array &$deps
+ * @param array &$autoload
+ */
+ public static function getCCGroups( array &$groups, array &$deps, array &$autoload ) {
+ global $wgTranslateCC;
+
+ $deps[] = new GlobalDependency( 'wgTranslateCC' );
- wfDebug( __METHOD__ . "-end\n" );
+ $groups += $wgTranslateCC;
}
/**
* Fetch a message group by id.
+ *
* @param string $id Message group id.
* @return MessageGroup|null if it doesn't exist.
*/
public static function getGroup( $id ) {
- // BC with page| which is now page-
- $id = strtr( $id, '|', '-' );
- /* Translatable pages use spaces, but MW occasionally likes to
- * normalize spaces to underscores */
- if ( strpos( $id, 'page-' ) === 0 ) {
- $id = strtr( $id, '_', ' ' );
- }
- self::init();
+ $groups = self::singleton()->getGroups();
+ $id = self::normalizeId( $id );
- if ( isset( self::$groups[$id] ) ) {
- if ( is_callable( self::$groups[$id] ) ) {
- return call_user_func( self::$groups[$id], $id );
- }
+ if ( isset( $groups[$id] ) ) {
+ return $groups[$id];
+ }
- return self::$groups[$id];
- } elseif ( strval( $id ) !== '' && $id[0] === '!' ) {
+ if ( (string)$id !== '' && $id[0] === '!' ) {
$dynamic = self::getDynamicGroups();
if ( isset( $dynamic[$id] ) ) {
return new $dynamic[$id];
@@ -196,6 +303,28 @@ class MessageGroups {
}
/**
+ * Fixes the id and resolves aliases.
+ *
+ * @param string $id
+ * @return string
+ * @since 2016.01
+ */
+ public static function normalizeId( $id ) {
+ /* Translatable pages use spaces, but MW occasionally likes to
+ * normalize spaces to underscores */
+ if ( strpos( $id, 'page-' ) === 0 ) {
+ $id = strtr( $id, '_', ' ' );
+ }
+
+ global $wgTranslateGroupAliases;
+ if ( isset( $wgTranslateGroupAliases[$id] ) ) {
+ $id = $wgTranslateGroupAliases[$id];
+ }
+
+ return $id;
+ }
+
+ /**
* @param string $id
* @return bool
*/
@@ -203,14 +332,13 @@ class MessageGroups {
return (bool)self::getGroup( $id );
}
-
/**
* Check if a particular aggregate group label exists
* @param string $name
* @return bool
*/
public static function labelExists( $name ) {
- $groups = MessageGroups::getAggregateGroups();
+ $groups = self::loadAggregateGroups();
$labels = array_map( function ( $g ) {
return $g->getLabel();
}, $groups );
@@ -236,12 +364,12 @@ class MessageGroups {
*/
public static function getPriority( $group ) {
if ( !isset( self::$prioritycache ) ) {
- self::$prioritycache = array();
+ self::$prioritycache = [];
// Abusing this table originally intented for other purposes
- $db = wfGetDB( DB_MASTER );
+ $db = wfGetDB( DB_REPLICA );
$table = 'translate_groupreviews';
- $fields = array( 'tgr_group', 'tgr_state' );
- $conds = array( 'tgr_lang' => '*priority' );
+ $fields = [ 'tgr_group', 'tgr_state' ];
+ $conds = [ 'tgr_lang' => '*priority' ];
$res = $db->select( $table, $fields, $conds, __METHOD__ );
foreach ( $res as $row ) {
self::$prioritycache[$row->tgr_group] = $row->tgr_state;
@@ -251,7 +379,7 @@ class MessageGroups {
if ( $group instanceof MessageGroup ) {
$id = $group->getId();
} else {
- $id = $group;
+ $id = self::normalizeId( $group );
}
return isset( self::$prioritycache[$id] ) ? self::$prioritycache[$id] : '';
@@ -269,33 +397,37 @@ class MessageGroups {
if ( $group instanceof MessageGroup ) {
$id = $group->getId();
} else {
- $id = $group;
+ $id = self::normalizeId( $group );
}
self::$prioritycache[$id] = $priority;
$dbw = wfGetDB( DB_MASTER );
$table = 'translate_groupreviews';
- $row = array(
+ $row = [
'tgr_group' => $id,
'tgr_lang' => '*priority',
'tgr_state' => $priority,
- );
+ ];
if ( $priority === '' ) {
unset( $row['tgr_state'] );
$dbw->delete( $table, $row, __METHOD__ );
} else {
- $index = array( 'tgr_group', 'tgr_lang' );
- $dbw->replace( $table, array( $index ), $row, __METHOD__ );
+ $index = [ 'tgr_group', 'tgr_lang' ];
+ $dbw->replace( $table, [ $index ], $row, __METHOD__ );
}
}
- /// @since 2011-12-28
+ /**
+ * @since 2011-12-28
+ * @param MessageGroup $group
+ * @return bool
+ */
public static function isDynamic( MessageGroup $group ) {
$id = $group->getId();
- return strval( $id ) !== '' && $id[0] === '!';
+ return (string)$id !== '' && $id[0] === '!';
}
/**
@@ -332,8 +464,8 @@ class MessageGroups {
*/
public static function getParentGroups( MessageGroup $targetGroup ) {
$ids = self::getSharedGroups( $targetGroup );
- if ( $ids === array() ) {
- return array();
+ if ( $ids === [] ) {
+ return [];
}
$targetId = $targetGroup->getId();
@@ -353,7 +485,7 @@ class MessageGroups {
/* Now that we have all related groups, use them to find all paths
* from top-level groups to target group with any number of subgroups
* in between. */
- $paths = array();
+ $paths = [];
/* This function recursively finds paths to the target group */
$pathFinder = function ( &$paths, $group, $targetId, $prefix = '' )
@@ -404,9 +536,6 @@ class MessageGroups {
return $paths;
}
- private function __construct() {
- }
-
/**
* Constructor function.
* @return MessageGroups
@@ -422,18 +551,13 @@ class MessageGroups {
/**
* Get all enabled non-dynamic message groups.
+ *
* @return array
*/
public function getGroups() {
- self::init();
- // Expand groups to objects
- foreach ( self::$groups as $id => $mixed ) {
- if ( !is_object( $mixed ) ) {
- self::$groups[$id] = call_user_func( $mixed, $id );
- }
- }
+ $this->init();
- return self::$groups;
+ return $this->groups;
}
/**
@@ -445,7 +569,7 @@ class MessageGroups {
* @since 2012-02-13
*/
public static function getGroupsById( array $ids, $skipMeta = false ) {
- $groups = array();
+ $groups = [];
foreach ( $ids as $id ) {
$group = self::getGroup( $id );
@@ -472,9 +596,26 @@ class MessageGroups {
* @since 2012-02-13
*/
public static function expandWildcards( $ids ) {
- $all = array();
+ $all = [];
+
+ $ids = (array)$ids;
+ foreach ( $ids as $index => $id ) {
+ // Fast path, no wildcards
+ if ( strcspn( $id, '*?' ) === strlen( $id ) ) {
+ $g = self::getGroup( $id );
+ if ( $g ) {
+ $all[] = $g->getId();
+ }
+ unset( $ids[$index] );
+ }
+ }
- $matcher = new StringMatcher( '', (array)$ids );
+ if ( $ids === [] ) {
+ return $all;
+ }
+
+ // Slow path for the ones with wildcards
+ $matcher = new StringMatcher( '', $ids );
foreach ( self::getAllGroups() as $id => $_ ) {
if ( $matcher->match( $id ) ) {
$all[] = $id;
@@ -487,13 +628,14 @@ class MessageGroups {
/**
* Contents on these groups changes on a whim.
* @since 2011-12-28
+ * @return array
*/
public static function getDynamicGroups() {
- return array(
+ return [
'!recent' => 'RecentMessageGroup',
'!additions' => 'RecentAdditionsMessageGroup',
'!sandbox' => 'SandboxMessageGroup',
- );
+ ];
}
/**
@@ -519,6 +661,7 @@ class MessageGroups {
* other code might not handle more than two (or even one) nesting levels.
* One group can exist multiple times in differents parts of the tree.
* In other words: [Group1, Group2, [AggGroup, Group3, Group4]]
+ *
* @throws MWException If cyclic structure is detected.
* @return array
*/
@@ -548,9 +691,9 @@ class MessageGroups {
// Work around php bug: https://bugs.php.net/bug.php?id=50688
// Triggered by ApiQueryMessageGroups for example
- wfSuppressWarnings();
- usort( $tree, array( __CLASS__, 'groupLabelSort' ) );
- wfRestoreWarnings();
+ MediaWiki\suppressWarnings();
+ usort( $tree, [ __CLASS__, 'groupLabelSort' ] );
+ MediaWiki\restoreWarnings();
/* Now we have two things left in $tree array:
* - solitaries: top-level non-aggregate message groups
@@ -565,9 +708,9 @@ class MessageGroups {
* groups not be included at all, because they have all unset each
* other in the first loop. So now we check if there are groups left
* over. */
- $used = array();
+ $used = [];
// Hack to allow passing by reference
- array_walk_recursive( $tree, array( __CLASS__, 'collectGroupIds' ), array( &$used ) );
+ array_walk_recursive( $tree, [ __CLASS__, 'collectGroupIds' ], [ &$used ] );
$unused = array_diff( array_keys( $groups ), array_keys( $used ) );
if ( count( $unused ) ) {
foreach ( $unused as $index => $id ) {
@@ -584,12 +727,22 @@ class MessageGroups {
return $tree;
}
- /// See getGroupStructure, just collects ids into array
- public static function collectGroupIds( $value, $key, $used ) {
+ /**
+ * See getGroupStructure, just collects ids into array
+ * @param MessageGroup $value
+ * @param string $key
+ * @param bool $used
+ */
+ public static function collectGroupIds( MessageGroup $value, $key, $used ) {
$used[0][$value->getId()] = true;
}
- /// Sorts groups by label value
+ /**
+ * Sorts groups by label value
+ * @param string $a
+ * @param string $b
+ * @return int
+ */
public static function groupLabelSort( $a, $b ) {
$al = $a->getLabel();
$bl = $b->getLabel();
@@ -607,12 +760,12 @@ class MessageGroups {
* @since Public since 2012-11-29
*/
public static function subGroups( AggregateMessageGroup $parent ) {
- static $recursionGuard = array();
+ static $recursionGuard = [];
$pid = $parent->getId();
if ( isset( $recursionGuard[$pid] ) ) {
$tid = $pid;
- $path = array( $tid );
+ $path = [ $tid ];
do {
$tid = $recursionGuard[$tid];
$path[] = $tid;
@@ -624,7 +777,7 @@ class MessageGroups {
// We don't care about the ids.
$tree = array_values( $parent->getGroups() );
- usort( $tree, array( __CLASS__, 'groupLabelSort' ) );
+ usort( $tree, [ __CLASS__, 'groupLabelSort' ] );
// Expand aggregate groups (if any left) after sorting to form a tree
foreach ( $tree as $index => $group ) {
if ( $group instanceof AggregateMessageGroup ) {
@@ -664,29 +817,29 @@ class MessageGroups {
/**
* Get all the aggregate messages groups defined in translate_metadata table.
+ *
* @return array
- * @since 2012-05-09 return value changed
*/
- protected static function getAggregateGroups() {
- $dbw = wfGetDB( DB_MASTER );
- $tables = array( 'translate_metadata' );
- $fields = array( 'tmd_group', 'tmd_value' );
- $conds = array( 'tmd_key' => 'subgroups' );
+ protected static function loadAggregateGroups() {
+ $dbw = TranslateUtils::getSafeReadDB();
+ $tables = [ 'translate_metadata' ];
+ $fields = [ 'tmd_group', 'tmd_value' ];
+ $conds = [ 'tmd_key' => 'subgroups' ];
$res = $dbw->select( $tables, $fields, $conds, __METHOD__ );
- $groups = array();
+ $groups = [];
foreach ( $res as $row ) {
$id = $row->tmd_group;
- $conf = array();
- $conf['BASIC'] = array(
+ $conf = [];
+ $conf['BASIC'] = [
'id' => $id,
'label' => TranslateMetadata::get( $id, 'name' ),
'description' => TranslateMetadata::get( $id, 'description' ),
'meta' => 1,
'class' => 'AggregateMessageGroup',
'namespace' => NS_TRANSLATIONS,
- );
+ ];
$conf['GROUPS'] = TranslateMetadata::getSubgroups( $id );
$group = MessageGroupBase::factory( $conf );
@@ -701,11 +854,11 @@ class MessageGroups {
* conditions.
*
* @param MessageHandle $handle Handle for the translation target.
- * @return boolean
+ * @return bool
* @since 2013.10
*/
public static function isTranslatableMessage( MessageHandle $handle ) {
- static $cache = array();
+ static $cache = [];
if ( !$handle->isValid() ) {
return false;
@@ -737,13 +890,13 @@ class MessageGroups {
}
}
- $cache[$cacheKey] = array(
+ $cache[$cacheKey] = [
'relevant' => $allowed && !$discouraged,
- 'tags' => array(),
- );
+ 'tags' => [],
+ ];
$groupTags = $group->getTags();
- foreach ( array( 'ignored', 'optional' ) as $tag ) {
+ foreach ( [ 'ignored', 'optional' ] as $tag ) {
if ( isset( $groupTags[$tag] ) ) {
foreach ( $groupTags[$tag] as $key ) {
// TODO: ucfirst should not be here
diff --git a/MLEB/Translate/MetaYamlSchemaExtender.php b/MLEB/Translate/MetaYamlSchemaExtender.php
index 8891f830..b1fc5cd5 100644
--- a/MLEB/Translate/MetaYamlSchemaExtender.php
+++ b/MLEB/Translate/MetaYamlSchemaExtender.php
@@ -5,7 +5,7 @@
* because they are parsed to PHP arrays anyway. The configuration consists of sections, and in some
* section there is key 'class' which defines the class implementing that part of behavior. These
* classes can take custom parameters, so in essense our configuration format is open-ended. To
- * implement proper validation, those classes can extend the schema runtime by implemeting this
+ * implement proper validation, those classes can extend the schema runtime by implementing this
* interface. Validation is implemented with the MetaYaml library.
*
* Because neither is_a nor instanceof accept class names, validation code will check directly
diff --git a/MLEB/Translate/PageTranslation.i18n.php b/MLEB/Translate/PageTranslation.i18n.php
deleted file mode 100644
index 2a4719bd..00000000
--- a/MLEB/Translate/PageTranslation.i18n.php
+++ /dev/null
@@ -1,35 +0,0 @@
-<?php
-/**
- * This is a backwards-compatibility shim, generated by:
- * https://git.wikimedia.org/blob/mediawiki%2Fcore.git/HEAD/maintenance%2FgenerateJsonI18n.php
- *
- * Beginning with MediaWiki 1.23, translation strings are stored in json files,
- * and the EXTENSION.i18n.php file only exists to provide compatibility with
- * older releases of MediaWiki. For more information about this migration, see:
- * https://www.mediawiki.org/wiki/Requests_for_comment/Localisation_format
- *
- * This shim maintains compatibility back to MediaWiki 1.17.
- */
-$messages = array();
-if ( !function_exists( 'wfJsonI18nShimc5096afb82829a9f' ) ) {
- function wfJsonI18nShimc5096afb82829a9f( $cache, $code, &$cachedData ) {
- $codeSequence = array_merge( array( $code ), $cachedData['fallbackSequence'] );
- foreach ( $codeSequence as $csCode ) {
- $fileName = dirname( __FILE__ ) . "/i18n/pagetranslation/$csCode.json";
- if ( is_readable( $fileName ) ) {
- $data = FormatJson::decode( file_get_contents( $fileName ), true );
- foreach ( array_keys( $data ) as $key ) {
- if ( $key === '' || $key[0] === '@' ) {
- unset( $data[$key] );
- }
- }
- $cachedData['messages'] = array_merge( $data, $cachedData['messages'] );
- }
-
- $cachedData['deps'][] = new FileDependency( $fileName );
- }
- return true;
- }
-
- $GLOBALS['wgHooks']['LocalisationCacheRecache'][] = 'wfJsonI18nShimc5096afb82829a9f';
-}
diff --git a/MLEB/Translate/RELEASE-NOTES b/MLEB/Translate/RELEASE-NOTES
index dc9923d1..cadb8699 100644
--- a/MLEB/Translate/RELEASE-NOTES
+++ b/MLEB/Translate/RELEASE-NOTES
@@ -1,8 +1,11 @@
-== Translate 2015.04 ==
-Released at 2015-04-30.
+== Translate 2018.10 ==
+Released at 2018-10-29.
-=== Highlights ===
-* Avoid unneeded warnings on stable MediaWiki releases.
-* T54728: Small optimizations to Special:SupportedLanguages
-* Styled search result navigation buttons in Special:SearchTranslations
-* Fixed Special:PagePreparation, now works better and has autocompletion
+=== Noteworthy changes ===
+* Show regular deletion form for pages that are never marked for translation.
+* Page translation languages can be displayed in the sidebar.
+* Various maintenance and stability updates.
+* Fixed an error that prevented Special:PageMigration from working.
+* TranslationStats' graphs now support high DPI displays using srcset.
+* Database usage optimizations (run update.php!).
+* Many special pages now look more consistent with other pages (OOUI).
diff --git a/MLEB/Translate/Resources.php b/MLEB/Translate/Resources.php
index 2cfd1d50..923b8928 100644
--- a/MLEB/Translate/Resources.php
+++ b/MLEB/Translate/Resources.php
@@ -4,550 +4,539 @@
* JavaScript and CSS resource definitions.
*
* @file
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
global $wgResourceModules;
-$resourcePaths = array(
+$resourcePaths = [
'localBasePath' => __DIR__,
'remoteExtPath' => 'Translate',
-);
+ 'targets' => [ 'desktop', 'mobile' ],
+];
-$wgResourceModules['ext.translate'] = array(
+$wgResourceModules['ext.translate'] = [
'styles' => 'resources/css/ext.translate.css',
- 'position' => 'top',
-) + $resourcePaths;
+] + $resourcePaths;
-$wgResourceModules['ext.translate.base'] = array(
+$wgResourceModules['ext.translate.base'] = [
'scripts' => 'resources/js/ext.translate.base.js',
- 'dependencies' => array(
- 'mediawiki.util',
- 'mediawiki.api',
+ 'dependencies' => [
'ext.translate.hooks',
- ),
- 'messages' => array(
+ 'mediawiki.api',
+ 'mediawiki.util',
+ ],
+ 'messages' => [
'translate-js-support-unsaved-warning',
- ),
-) + $resourcePaths;
+ ],
+] + $resourcePaths;
-$wgResourceModules['ext.translate.dropdownmenu'] = array(
+$wgResourceModules['ext.translate.dropdownmenu'] = [
'styles' => 'resources/css/ext.translate.dropdownmenu.css',
'scripts' => 'resources/js/ext.translate.dropdownmenu.js',
-) + $resourcePaths;
+] + $resourcePaths;
-$wgResourceModules['ext.translate.editor'] = array(
- 'scripts' => array(
- 'resources/js/ext.translate.editor.js',
+$wgResourceModules['ext.translate.editor'] = [
+ 'scripts' => [
'resources/js/ext.translate.editor.helpers.js',
+ 'resources/js/ext.translate.editor.js',
'resources/js/ext.translate.editor.shortcuts.js',
- 'resources/js/ext.translate.proofread.js',
'resources/js/ext.translate.pagemode.js',
- ),
- 'styles' => array(
+ 'resources/js/ext.translate.proofread.js',
+ ],
+ 'styles' => [
'resources/css/ext.translate.editor.css',
- 'resources/css/ext.translate.proofread.css',
'resources/css/ext.translate.pagemode.css',
- ),
- 'dependencies' => array(
+ 'resources/css/ext.translate.proofread.css',
+ ],
+ 'dependencies' => [
'ext.translate.base',
- 'ext.translate.storage',
- 'ext.translate.hooks',
'ext.translate.dropdownmenu',
- 'ext.uls.buttons',
- 'jquery.uls.grid',
- 'mediawiki.util',
+ 'ext.translate.hooks',
+ 'ext.translate.storage',
+ 'jquery.accessKeyLabel',
+ 'jquery.autosize',
+ 'jquery.makeCollapsible',
+ 'jquery.textSelection',
+ 'jquery.textchange',
'mediawiki.Uri',
'mediawiki.api',
'mediawiki.api.parse',
- 'mediawiki.user',
'mediawiki.jqueryMsg',
- 'jquery.makeCollapsible',
- 'jquery.tipsy',
- 'jquery.textchange',
- 'jquery.autosize',
- 'jquery.textSelection',
- ),
- 'messages' => array(
- 'tux-status-translated',
- 'tux-status-saving',
- 'tux-status-unsaved',
- 'tux-editor-placeholder',
- 'tux-editor-paste-original-button-label',
- 'tux-editor-discard-changes-button-label',
- 'tux-editor-save-button-label',
- 'tux-editor-skip-button-label',
+ 'mediawiki.language',
+ 'mediawiki.user',
+ 'mediawiki.util',
+ ],
+ 'messages' => [
+ 'translate-edit-askpermission',
+ 'translate-edit-nopermission',
+ 'tux-editor-add-desc',
+ 'tux-editor-ask-help',
'tux-editor-cancel-button-label',
+ 'tux-editor-close-tooltip',
+ 'tux-editor-collapse-tooltip',
'tux-editor-confirm-button-label',
- 'tux-editor-shortcut-info',
+ 'tux-editor-discard-changes-button-label',
+ 'tux-editor-doc-editor-cancel',
+ 'tux-editor-doc-editor-placeholder',
+ 'tux-editor-doc-editor-save',
'tux-editor-edit-desc',
- 'tux-editor-add-desc',
- 'tux-editor-message-desc-more',
- 'tux-editor-message-desc-less',
- 'tux-editor-suggestions-title',
+ 'tux-editor-expand-tooltip',
'tux-editor-in-other-languages',
- 'tux-editor-need-more-help',
- 'tux-editor-ask-help',
- 'tux-editor-tm-match',
- 'tux-warnings-more',
- 'tux-warnings-hide',
- 'tux-editor-save-failed',
+ 'tux-editor-loading',
+ 'tux-editor-message-desc-less',
+ 'tux-editor-message-desc-more',
+ 'tux-editor-message-tools-show-editor',
+ 'tux-editor-message-tools-delete',
+ 'tux-editor-message-tools-history',
+ 'tux-editor-message-tools-translations',
+ 'tux-editor-message-tools-linktothis',
'tux-editor-n-uses',
- 'tux-editor-doc-editor-placeholder',
- 'tux-editor-doc-editor-save',
- 'tux-editor-doc-editor-cancel',
- 'translate-edit-nopermission',
- 'translate-edit-askpermission',
+ 'tux-editor-need-more-help',
'tux-editor-outdated-warning',
'tux-editor-outdated-warning-diff-link',
+ 'tux-editor-paste-original-button-label',
+ 'tux-editor-placeholder',
+ 'tux-editor-editsummary-placeholder',
+ 'tux-editor-proofread-button-label',
+ 'tux-editor-save-button-label',
+ 'tux-editor-save-failed',
+ 'tux-editor-shortcut-info',
+ 'tux-editor-skip-button-label',
+ 'tux-editor-suggestions-title',
+ 'tux-editor-tm-match',
'tux-proofread-action-tooltip',
'tux-proofread-edit-label',
'tux-proofread-translated-by-self',
- 'tux-editor-close-tooltip',
- 'tux-editor-expand-tooltip',
- 'tux-editor-collapse-tooltip',
- 'tux-editor-message-tools-history',
- 'tux-editor-message-tools-delete',
- 'tux-editor-message-tools-translations',
- 'tux-editor-loading',
'tux-session-expired',
- ),
- 'position' => 'top',
-) + $resourcePaths;
+ 'tux-status-saving',
+ 'tux-status-translated',
+ 'tux-status-unsaved',
+ 'tux-save-unknown-error',
+ 'tux-warnings-hide',
+ 'tux-warnings-more',
+ 'spamprotectiontext',
+ ],
+] + $resourcePaths;
-$wgResourceModules['ext.translate.groupselector'] = array(
- 'styles' => 'resources/css/ext.translate.groupselector.css',
+$wgResourceModules['ext.translate.groupselector'] = [
+ 'styles' => 'resources/css/ext.translate.groupselector.less',
'scripts' => 'resources/js/ext.translate.groupselector.js',
- 'position' => 'top',
- 'dependencies' => array(
+ 'dependencies' => [
'ext.translate.base',
- 'jquery.uls.grid',
+ 'ext.translate.loader',
'ext.translate.statsbar',
+ 'jquery.ui.position',
'mediawiki.jqueryMsg',
- 'ext.translate.loader',
- 'jquery.ui.position.custom',
- ),
- 'messages' => array(
- 'translate-msggroupselector-projects',
- 'translate-msggroupselector-search-placeholder',
+ ],
+ 'messages' => [
'translate-msggroupselector-search-all',
+ 'translate-msggroupselector-search-placeholder',
'translate-msggroupselector-search-recent',
'translate-msggroupselector-view-subprojects',
- ),
-) + $resourcePaths;
-
-$wgResourceModules['ext.translate.helplink'] = array(
- 'styles' => 'resources/css/ext.translate.helplink.css',
- 'position' => 'top',
-) + $resourcePaths;
+ ],
+] + $resourcePaths;
-$wgResourceModules['ext.translate.hooks'] = array(
+$wgResourceModules['ext.translate.hooks'] = [
'scripts' => 'resources/js/ext.translate.hooks.js',
- 'position' => 'top',
-) + $resourcePaths;
+] + $resourcePaths;
-$wgResourceModules['ext.translate.loader'] = array(
+$wgResourceModules['ext.translate.legacy'] = [
+ 'styles' => 'resources/css/ext.translate.legacy.css',
+] + $resourcePaths;
+
+$wgResourceModules['ext.translate.loader'] = [
'styles' => 'resources/css/ext.translate.loader.css',
- 'position' => 'top',
-) + $resourcePaths;
+] + $resourcePaths;
-$wgResourceModules['ext.translate.messagetable'] = array(
+$wgResourceModules['ext.translate.messagetable'] = [
'scripts' => 'resources/js/ext.translate.messagetable.js',
- 'styles' => 'resources/css/ext.translate.messagetable.css',
- 'position' => 'top',
- 'dependencies' => array(
+ 'styles' => 'resources/css/ext.translate.messagetable.less',
+ 'dependencies' => [
'ext.translate.base',
'ext.translate.hooks',
- 'mediawiki.Uri',
- 'mediawiki.util',
- 'jquery.appear',
- 'mediawiki.jqueryMsg',
- 'ext.translate.parsers',
'ext.translate.loader',
- 'ext.uls.buttons',
+ 'ext.translate.parsers',
'jquery.textchange',
- ),
- 'messages' => array(
- 'translate-messagereview-progress',
- 'translate-messagereview-failure',
- 'translate-messagereview-done',
+ 'jquery.throttle-debounce',
+ 'mediawiki.Uri',
+ 'mediawiki.jqueryMsg',
+ 'mediawiki.util',
+ ],
+ 'messages' => [
'api-error-badtoken',
'api-error-emptypage',
- 'api-error-fuzzymessage',
- 'api-error-invalidrevision',
- 'api-error-owntranslation',
- 'api-error-unknownmessage',
'api-error-unknownerror',
'tpt-unknown-page',
- 'tux-edit',
- 'tux-status-fuzzy',
- 'tux-status-optional',
- 'tux-status-translated',
- 'tux-status-proofread',
'translate-edit-title',
- 'tux-messagetable-more-messages',
- 'tux-messagetable-loading-messages',
- 'tux-message-filter-result',
- 'tux-message-filter-advanced-button',
+ 'tux-edit',
'tux-empty-list-all',
'tux-empty-list-all-guide',
- 'tux-empty-list-translated',
- 'tux-empty-list-translated-guide',
- 'tux-empty-list-translated-action',
'tux-empty-list-other',
- 'tux-empty-list-other-guide',
'tux-empty-list-other-action',
+ 'tux-empty-list-other-guide',
'tux-empty-list-other-link',
+ 'tux-empty-list-translated',
+ 'tux-empty-list-translated-action',
+ 'tux-empty-list-translated-guide',
'tux-empty-no-messages-to-display',
- 'tux-empty-show-optional-messages',
- 'tux-message-filter-placeholder',
- 'translate-language-disabled',
'tux-empty-no-outdated-messages',
'tux-empty-nothing-new-to-proofread',
- 'tux-empty-you-can-help-providing',
- 'tux-empty-you-can-review-already-proofread',
'tux-empty-nothing-to-proofread',
+ 'tux-empty-show-optional-messages',
'tux-empty-there-are-optional',
- ),
-) + $resourcePaths;
+ 'tux-empty-you-can-help-providing',
+ 'tux-empty-you-can-review-already-proofread',
+ 'tux-message-filter-advanced-button',
+ 'tux-message-filter-placeholder',
+ 'tux-message-filter-result',
+ 'tux-messagetable-loading-messages',
+ 'tux-messagetable-more-messages',
+ 'tux-status-fuzzy',
+ 'tux-status-optional',
+ 'tux-status-proofread',
+ 'tux-status-translated',
+ ],
+] + $resourcePaths;
-$wgResourceModules['ext.translate.messagewebimporter'] = array(
+$wgResourceModules['ext.translate.messagewebimporter'] = [
'styles' => 'resources/css/ext.translate.messagewebimporter.css',
- 'position' => 'top',
-) + $resourcePaths;
+] + $resourcePaths;
-$wgResourceModules['ext.translate.multiselectautocomplete'] = array(
+$wgResourceModules['ext.translate.multiselectautocomplete'] = [
'scripts' => 'resources/js/ext.translate.multiselectautocomplete.js',
- 'dependencies' => array(
+ 'dependencies' => [
'jquery.ui.autocomplete',
- ),
- 'position' => 'top',
-) + $resourcePaths;
+ ],
+ 'targets' => [ 'desktop' ],
+] + $resourcePaths;
-$wgResourceModules['ext.translate.navitoggle'] = array(
- 'skinScripts' => array(
+$wgResourceModules['ext.translate.navitoggle'] = [
+ 'skinScripts' => [
'vector' => 'resources/js/ext.translate.navitoggle.js',
- ),
- 'skinStyles' => array(
+ ],
+ 'skinStyles' => [
'vector' => 'resources/css/ext.translate.navitoggle.css',
- ),
-) + $resourcePaths;
+ ],
+] + $resourcePaths;
-$wgResourceModules['ext.translate.pagetranslation.uls'] = array(
+$wgResourceModules['ext.translate.pagetranslation.uls'] = [
'scripts' => 'resources/js/ext.translate.pagetranslation.uls.js',
- 'dependencies' => array(
+ 'dependencies' => [
'ext.uls.mediawiki',
- 'mediawiki.Uri',
'mediawiki.util',
- ),
-) + $resourcePaths;
+ ],
+] + $resourcePaths;
-$wgResourceModules['ext.translate.parsers'] = array(
+$wgResourceModules['ext.translate.parsers'] = [
'scripts' => 'resources/js/ext.translate.parsers.js',
- 'dependencies' => array(
+ 'dependencies' => [
'mediawiki.util',
- ),
-) + $resourcePaths;
+ ],
+] + $resourcePaths;
-$wgResourceModules['ext.translate.quickedit'] = array(
- 'scripts' => 'resources/js/ext.translate.quickedit.js',
+$wgResourceModules['ext.translate.quickedit'] = [
'styles' => 'resources/css/ext.translate.quickedit.css',
- 'messages' => array( 'translate-js-nonext', 'translate-js-save-failed' ),
- 'dependencies' => array(
- 'jquery.form',
- 'jquery.ui.dialog',
- 'jquery.autosize',
- 'mediawiki.util',
- ),
-) + $resourcePaths;
+] + $resourcePaths;
-$wgResourceModules['ext.translate.selecttoinput'] = array(
+$wgResourceModules['ext.translate.selecttoinput'] = [
'scripts' => 'resources/js/ext.translate.selecttoinput.js',
-) + $resourcePaths;
+] + $resourcePaths;
-$wgResourceModules['ext.translate.special.aggregategroups'] = array(
+$wgResourceModules['ext.translate.special.aggregategroups'] = [
'scripts' => 'resources/js/ext.translate.special.aggregategroups.js',
- 'styles' => 'resources/css/ext.translate.special.aggregategroups.css',
- 'position' => 'top',
- 'dependencies' => array(
+ 'dependencies' => [
'jquery.ui.autocomplete',
'mediawiki.api',
'mediawiki.util',
- ),
- 'messages' => array(
- 'tpt-aggregategroup-remove-confirm',
- 'tpt-aggregategroup-edit-name',
+ ],
+ 'messages' => [
+ 'tpt-aggregategroup-add',
'tpt-aggregategroup-edit-description',
+ 'tpt-aggregategroup-edit-name',
+ 'tpt-aggregategroup-remove-confirm',
'tpt-aggregategroup-update',
'tpt-aggregategroup-update-cancel',
'tpt-invalid-group',
- 'tpt-aggregategroup-add',
- ),
-) + $resourcePaths;
+ ],
+ 'targets' => [ 'desktop' ],
+] + $resourcePaths;
+
+$wgResourceModules['ext.translate.special.aggregategroups.styles'] = [
+ 'styles' => 'resources/css/ext.translate.special.aggregategroups.css',
+] + $resourcePaths;
-$wgResourceModules['ext.translate.special.importtranslations'] = array(
+$wgResourceModules['ext.translate.special.importtranslations'] = [
'scripts' => 'resources/js/ext.translate.special.importtranslations.js',
- 'dependencies' => array(
+ 'dependencies' => [
'jquery.ui.autocomplete',
- ),
-) + $resourcePaths;
+ ],
+ 'targets' => [ 'desktop' ],
+] + $resourcePaths;
-$wgResourceModules['ext.translate.special.languagestats'] = array(
+$wgResourceModules['ext.translate.special.languagestats'] = [
'scripts' => 'resources/js/ext.translate.special.languagestats.js',
'styles' => 'resources/css/ext.translate.special.languagestats.css',
- 'messages' => array(
- 'translate-langstats-expandall',
+ 'messages' => [
+ 'translate-langstats-collapse',
'translate-langstats-collapseall',
'translate-langstats-expand',
- 'translate-langstats-collapse',
- ),
+ 'translate-langstats-expandall',
+ ],
'dependencies' => 'jquery.tablesorter',
-) + $resourcePaths;
+ 'targets' => [ 'desktop' ],
+] + $resourcePaths;
-$wgResourceModules['ext.translate.special.managegroups'] = array(
+$wgResourceModules['ext.translate.special.managegroups'] = [
'styles' => 'resources/css/ext.translate.special.managegroups.css',
- 'position' => 'top',
-) + $resourcePaths;
+] + $resourcePaths;
-$wgResourceModules['ext.translate.special.managetranslatorsandbox'] = array(
+$wgResourceModules['ext.translate.special.managetranslatorsandbox'] = [
'scripts' => 'resources/js/ext.translate.special.managetranslatorsandbox.js',
- 'styles' => 'resources/css/ext.translate.special.managetranslatorsandbox.css',
- 'position' => 'top',
- 'dependencies' => array(
+ 'dependencies' => [
'ext.translate.loader',
'ext.translate.translationstashstorage',
- 'ext.uls.buttons',
'ext.uls.mediawiki',
+ 'jquery.ui.dialog',
'mediawiki.api',
'mediawiki.jqueryMsg',
'mediawiki.language',
- 'jquery.ui.dialog',
- ),
- 'messages' => array(
- 'tsb-all-languages-button-label',
+ ],
+ 'messages' => [
+ 'tsb-accept-all-button-label',
'tsb-accept-button-label',
- 'tsb-reject-button-label',
- 'tsb-selected-count',
+ 'tsb-reject-confirmation',
+ 'tsb-accept-confirmation',
+ 'tsb-all-languages-button-label',
+ 'tsb-didnt-make-any-translations',
+ 'tsb-no-requests-from-new-users',
'tsb-older-requests',
- 'tsb-accept-all-button-label',
'tsb-reject-all-button-label',
- 'tsb-user-posted-a-comment',
+ 'tsb-reject-button-label',
+ 'tsb-reminder-failed',
'tsb-reminder-link-text',
'tsb-reminder-sending',
'tsb-reminder-sent',
'tsb-reminder-sent-new',
- 'tsb-reminder-failed',
- 'tsb-didnt-make-any-translations',
+ 'tsb-request-count',
+ 'tsb-selected-count',
+ 'tsb-translations-current',
'tsb-translations-source',
'tsb-translations-user',
- 'tsb-translations-current',
- 'tsb-request-count',
- 'tsb-no-requests-from-new-users',
- ),
-) + $resourcePaths;
+ 'tsb-user-posted-a-comment',
+ ],
+ 'targets' => [ 'desktop' ],
+] + $resourcePaths;
-$wgResourceModules['ext.translate.special.pagemigration'] = array(
- 'styles' => 'resources/css/ext.translate.special.pagemigration.css',
+$wgResourceModules['ext.translate.special.managetranslatorsandbox.styles'] = [
+ 'styles' => 'resources/css/ext.translate.special.managetranslatorsandbox.css',
+] + $resourcePaths;
+
+$wgResourceModules['ext.translate.special.pagemigration'] = [
'scripts' => 'resources/js/ext.translate.special.pagemigration.js',
- 'dependencies' => array(
+ 'dependencies' => [
+ 'jquery.ajaxdispatcher',
'mediawiki.api',
+ 'mediawiki.Title',
+ 'mediawiki.ui',
'mediawiki.ui.button',
- 'jquery.ajaxdispatcher',
- ),
- 'messages' => array(
- 'pm-page-does-not-exist',
- 'pm-old-translations-missing',
- 'pm-extra-units-warning',
- 'pm-pagename-missing',
- 'pm-langcode-missing',
+ ],
+ 'messages' => [
'pm-add-icon-hover-text',
- 'pm-swap-icon-hover-text',
'pm-delete-icon-hover-text',
+ 'pm-extra-units-warning',
+ 'pm-langcode-missing',
+ 'pm-old-translations-missing',
+ 'pm-page-does-not-exist',
+ 'pm-pagename-missing',
'pm-pagetitle-invalid',
- ),
-) + $resourcePaths;
+ 'pm-pagetitle-missing',
+ 'pm-swap-icon-hover-text',
+ 'pm-on-import-message-text',
+ 'pm-on-save-message-text',
+ 'pm-savepages-button-label',
+ 'pm-cancel-button-label',
+ 'tpt-unknown-page',
+ ],
+] + $resourcePaths;
+
+$wgResourceModules['ext.translate.special.pagemigration.styles'] = [
+ 'styles' => 'resources/css/ext.translate.special.pagemigration.css',
+] + $resourcePaths;
-$wgResourceModules['ext.translate.special.pagepreparation'] = array(
+$wgResourceModules['ext.translate.special.pagepreparation'] = [
'scripts' => 'resources/js/ext.translate.special.pagepreparation.js',
- 'messages' => array(
- 'pp-save-message',
- 'pp-prepare-message',
- 'pp-already-prepared-message',
- 'pp-pagename-missing',
- ),
- 'dependencies' => array(
- 'jquery.mwExtension',
+ 'dependencies' => [
+ 'mediawiki.RegExp',
'mediawiki.Title',
- 'mediawiki.action.history.diff',
+ 'mediawiki.diff.styles',
'mediawiki.api',
'mediawiki.jqueryMsg',
'mediawiki.ui',
- ),
-) + $resourcePaths;
+ ],
+ 'messages' => [
+ 'pp-already-prepared-message',
+ 'pp-pagename-missing',
+ 'pp-prepare-message',
+ 'pp-save-button-label',
+ 'pp-save-message',
+ ],
+] + $resourcePaths;
+
+$wgResourceModules['ext.translate.special.pagepreparation.styles'] = [
+ 'styles' => 'resources/css/ext.translate.special.pagepreparation.css',
+] + $resourcePaths;
-$wgResourceModules['ext.translate.special.pagetranslation'] = array(
+$wgResourceModules['ext.translate.special.pagetranslation'] = [
'scripts' => 'resources/js/ext.translate.special.pagetranslation.js',
- 'styles' => 'resources/css/ext.translate.special.pagetranslation.css',
- 'dependencies' => array(
+ 'dependencies' => [
'ext.translate.multiselectautocomplete',
'mediawiki.ui.button',
- ),
- 'position' => 'top',
-) + $resourcePaths;
+ 'mediawiki.Uri',
+ 'user.tokens',
+ ],
+ 'targets' => [ 'desktop' ],
+] + $resourcePaths;
+
+$wgResourceModules['ext.translate.special.pagetranslation.styles'] = [
+ 'styles' => 'resources/css/ext.translate.special.pagetranslation.css',
+] + $resourcePaths;
-$wgResourceModules['ext.translate.special.searchtranslations'] = array(
+$wgResourceModules['ext.translate.special.searchtranslations'] = [
'scripts' => 'resources/js/ext.translate.special.searchtranslations.js',
- 'styles' => 'resources/css/ext.translate.special.searchtranslations.css',
- 'dependencies' => array(
+ 'dependencies' => [
'ext.translate.editor',
- 'ext.uls.mediawiki',
- 'ext.uls.geoclient',
'ext.translate.groupselector',
+ 'ext.uls.mediawiki',
'mediawiki.Uri',
- ),
- 'messages' => array(
- 'translate-documentation-language',
- 'translate-search-more-languages-info',
+ 'mediawiki.language',
+ ],
+ 'messages' => [
'translate-search-more-groups-info',
- ),
- 'position' => 'top',
-) + $resourcePaths;
+ 'translate-search-more-languages-info',
+ ],
+] + $resourcePaths;
+
+$wgResourceModules['ext.translate.special.searchtranslations.operatorsuggest'] = [
+ 'scripts' => 'resources/js/ext.translate.special.operatorsuggest.js',
+ 'dependencies' => [
+ 'jquery.ui.autocomplete',
+ ],
+ 'targets' => [ 'desktop' ],
+] + $resourcePaths;
+
+$wgResourceModules['ext.translate.special.searchtranslations.styles'] = [
+ 'styles' => 'resources/css/ext.translate.special.searchtranslations.css',
+] + $resourcePaths;
-$wgResourceModules['ext.translate.special.supportedlanguages'] = array(
+$wgResourceModules['ext.translate.special.supportedlanguages'] = [
'styles' => 'resources/css/ext.translate.special.supportedlanguages.css',
- 'position' => 'top',
-) + $resourcePaths;
+] + $resourcePaths;
-$wgResourceModules['ext.translate.special.translate'] = array(
- 'styles' => 'resources/css/ext.translate.special.translate.css',
+$wgResourceModules['ext.translate.special.translate'] = [
'scripts' => 'resources/js/ext.translate.special.translate.js',
- 'position' => 'top',
- 'dependencies' => array(
- 'mediawiki.jqueryMsg',
- 'mediawiki.Uri',
- 'mediawiki.api',
- 'mediawiki.api.parse',
+ 'dependencies' => [
'ext.translate.base',
+ 'ext.translate.editor',
'ext.translate.groupselector',
'ext.translate.messagetable',
'ext.translate.navitoggle',
+ 'ext.translate.recentgroups',
'ext.translate.workflowselector',
- 'ext.uls.mediawiki',
- ),
- 'messages' => array(
- 'translate-workflow-set-do',
- 'translate-workflow-set-doing',
- 'translate-workflow-set-done',
- 'translate-workflow-set-error-alreadyset',
- 'translate-documentation-language',
- 'translate-workflow-state-',
- 'tpt-discouraged-language-force-header',
+ 'jquery.uls.data',
+ 'mediawiki.Uri',
+ 'mediawiki.api',
+ 'mediawiki.api.parse',
+ 'mediawiki.jqueryMsg',
+ ],
+ 'messages' => [
+ 'tpt-discouraged-language-content',
'tpt-discouraged-language-force-content',
+ 'tpt-discouraged-language-force-header',
'tpt-discouraged-language-header',
- 'tpt-discouraged-language-content',
'tux-editor-proofreading-hide-own-translations',
'tux-editor-proofreading-show-own-translations',
- ),
-) + $resourcePaths;
+ ],
+] + $resourcePaths;
-$wgResourceModules['ext.translate.special.translationstash'] = array(
+$wgResourceModules['ext.translate.special.translate.styles'] = [
+ 'styles' => 'resources/css/ext.translate.special.translate.css',
+] + $resourcePaths;
+
+$wgResourceModules['ext.translate.special.translationstash'] = [
'scripts' => 'resources/js/ext.translate.special.translationstash.js',
'styles' => 'resources/css/ext.translate.special.translationstash.css',
- 'position' => 'top',
- 'dependencies' => array(
+ 'dependencies' => [
'ext.translate.editor',
'ext.translate.messagetable',
'ext.translate.translationstashstorage',
+ 'ext.uls.mediawiki',
'mediawiki.api',
'mediawiki.language',
- 'ext.uls.mediawiki',
- ),
- 'messages' => array(
- 'translate-translationstash-translations',
+ ],
+ 'messages' => [
'translate-translationstash-skip-button-label',
- 'tsb-limit-reached-title',
+ 'translate-translationstash-translations',
'tsb-limit-reached-body',
- ),
-) + $resourcePaths;
+ 'tsb-limit-reached-title',
+ ],
+] + $resourcePaths;
-$wgResourceModules['ext.translate.special.translationstats'] = array(
+$wgResourceModules['ext.translate.special.translationstats'] = [
'scripts' => 'resources/js/ext.translate.special.translationstats.js',
- 'dependencies' => array(
- 'jquery.ui.datepicker',
- ),
-) + $resourcePaths;
+] + $resourcePaths;
-$wgResourceModules['ext.translate.statsbar'] = array(
+$wgResourceModules['ext.translate.statsbar'] = [
'styles' => 'resources/css/ext.translate.statsbar.css',
'scripts' => 'resources/js/ext.translate.statsbar.js',
- 'messages' => array(
+ 'messages' => [
'translate-statsbar-tooltip',
'translate-statsbar-tooltip-with-fuzzy',
- ),
- 'position' => 'top',
-) + $resourcePaths;
+ ],
+] + $resourcePaths;
-$wgResourceModules['ext.translate.storage'] = array(
+$wgResourceModules['ext.translate.storage'] = [
'scripts' => 'resources/js/ext.translate.storage.js',
-) + $resourcePaths;
+] + $resourcePaths;
-
-$wgResourceModules['ext.translate.tabgroup'] = array(
+$wgResourceModules['ext.translate.tabgroup'] = [
'styles' => 'resources/css/ext.translate.tabgroup.css',
- 'position' => 'top',
-) + $resourcePaths;
+] + $resourcePaths;
+
+$wgResourceModules['ext.translate.tag.languages'] = [
+ 'styles' => 'resources/css/ext.translate.tag.languages.css',
+] + $resourcePaths;
-$wgResourceModules['ext.translate.translationstashstorage'] = array(
+$wgResourceModules['ext.translate.translationstashstorage'] = [
'scripts' => 'resources/js/ext.translate.translationstashstorage.js',
- 'dependencies' => array(
+ 'dependencies' => [
'mediawiki.api',
- ),
-) + $resourcePaths;
+ ],
+] + $resourcePaths;
-$wgResourceModules['ext.translate.workflowselector'] = array(
+$wgResourceModules['ext.translate.workflowselector'] = [
'styles' => 'resources/css/ext.translate.workflowselector.css',
'scripts' => 'resources/js/ext.translate.workflowselector.js',
- 'messages' => array(
+ 'messages' => [
'translate-workflow-set-doing',
+ 'translate-workflow-state-',
'translate-workflowstatus',
- ),
- 'dependencies' => array(
+ ],
+ 'dependencies' => [
'ext.translate.dropdownmenu',
'mediawiki.api',
- ),
-) + $resourcePaths;
+ ],
+] + $resourcePaths;
// Third party module
-$wgResourceModules['jquery.ajaxdispatcher'] = array(
+$wgResourceModules['jquery.ajaxdispatcher'] = [
'scripts' => 'resources/js/jquery.ajaxdispatcher.js',
-) + $resourcePaths;
+] + $resourcePaths;
-$wgResourceModules['jquery.autosize'] = array(
+$wgResourceModules['jquery.autosize'] = [
'scripts' => 'resources/js/jquery.autosize.js',
-) + $resourcePaths;
+] + $resourcePaths;
-$wgResourceModules['jquery.textchange'] = array(
+$wgResourceModules['jquery.textchange'] = [
'scripts' => 'resources/js/jquery.textchange.js',
-) + $resourcePaths;
-
-// Use different name to not conflict with core.
-// MediaWiki <= 1.23 has 1.8.x, which is too old for us.
-$wgResourceModules['jquery.ui.position.custom'] = array(
- 'scripts' => 'resources/js/jquery.ui.position.js',
-) + $resourcePaths;
-
-$wgHooks['ResourceLoaderTestModules'][] =
- // Dependencies must be arrays here
- function ( array &$modules ) use ( $resourcePaths ) {
- $modules['qunit']['ext.translate.parsers.test'] = array(
- 'scripts' => array( 'tests/qunit/ext.translate.parsers.test.js' ),
- 'dependencies' => array( 'ext.translate.parsers' ),
- ) + $resourcePaths;
-
- $modules['qunit']['ext.translate.special.pagemigration.test'] = array(
- 'scripts' => array( 'tests/qunit/ext.translate.special.pagemigration.test.js' ),
- 'dependencies' => array( 'ext.translate.special.pagemigration' ),
- ) + $resourcePaths;
-
- return true;
- };
+] + $resourcePaths;
diff --git a/MLEB/Translate/Translate.MyLanguage.alias.php b/MLEB/Translate/Translate.MyLanguage.alias.php
deleted file mode 100644
index c767c95a..00000000
--- a/MLEB/Translate/Translate.MyLanguage.alias.php
+++ /dev/null
@@ -1,309 +0,0 @@
-<?php
-/**
- * Aliases for the Special:MyLanguage of Translate extension.
- * This is a backwards compatibility file that separates the translations
- * in the extension from the translations of the same page's name
- * in core MediaWiki. For more information see the following bug:
- * https://phabricator.wikimedia.org/T71461
- *
- * @file
- * @license GPL-2.0+
- */
-// @codingStandardsIgnoreFile
-
-$specialPageAliases = array();
-
-/** English (English) */
-$specialPageAliases['en'] = array(
- 'MyLanguage' => array( 'MyLanguage' ),
-);
-
-/** Afrikaans (Afrikaans) */
-$specialPageAliases['af'] = array(
- 'MyLanguage' => array( 'MyTaal' ),
-);
-
-/** Arabic (العربية) */
-$specialPageAliases['ar'] = array(
- 'MyLanguage' => array( 'لغتي' ),
-);
-
-/** Aramaic (ܐܪܡܝܐ) */
-$specialPageAliases['arc'] = array(
- 'MyLanguage' => array( 'ܠܫܢܐ_ܕܝܠܝ' ),
-);
-
-/** Egyptian Spoken Arabic (مصرى) */
-$specialPageAliases['arz'] = array(
- 'MyLanguage' => array( 'اللغة_بتاعتى' ),
-);
-
-/** Assamese (অসমীয়া) */
-$specialPageAliases['as'] = array(
- 'MyLanguage' => array( 'মোৰ_ভাষা' ),
-);
-
-/** Banjar (Bahasa Banjar) */
-$specialPageAliases['bjn'] = array(
- 'MyLanguage' => array( 'Bahasa_ulun' ),
-);
-
-/** Breton (brezhoneg) */
-$specialPageAliases['br'] = array(
- 'MyLanguage' => array( 'MaYezh' ),
-);
-
-/** буряад (буряад) */
-$specialPageAliases['bxr'] = array(
- 'MyLanguage' => array( 'Минии_хэлэн' ),
-);
-
-/** Min Dong Chinese (Mìng-dĕ̤ng-ngṳ̄) */
-$specialPageAliases['cdo'] = array(
- 'MyLanguage' => array( '我其語言' ),
-);
-
-/** Chechen (нохчийн) */
-$specialPageAliases['ce'] = array(
- 'MyLanguage' => array( 'Сан_мотт' ),
-);
-
-/** German (Deutsch) */
-$specialPageAliases['de'] = array(
- 'MyLanguage' => array( 'Meine_Sprache' ),
-);
-
-/** Zazaki (Zazaki) */
-$specialPageAliases['diq'] = array(
- 'MyLanguage' => array( 'ZıwaneMe' ),
-);
-
-/** Greek (Ελληνικά) */
-$specialPageAliases['el'] = array(
- 'MyLanguage' => array( 'ΗΓλώσσαΜου' ),
-);
-
-/** Esperanto (Esperanto) */
-$specialPageAliases['eo'] = array(
- 'MyLanguage' => array( 'Mia_lingvo' ),
-);
-
-/** Spanish (español) */
-$specialPageAliases['es'] = array(
- 'MyLanguage' => array( 'MiIdioma', 'Mi_idioma' ),
-);
-
-/** Persian (فارسی) */
-$specialPageAliases['fa'] = array(
- 'MyLanguage' => array( 'زبان‌های_من' ),
-);
-
-/** Finnish (suomi) */
-$specialPageAliases['fi'] = array(
- 'MyLanguage' => array( 'Oma_kieli' ),
-);
-
-/** French (français) */
-$specialPageAliases['fr'] = array(
- 'MyLanguage' => array( 'MaLangue', 'Ma_langue' ),
-);
-
-/** Swiss German (Alemannisch) */
-$specialPageAliases['gsw'] = array(
- 'MyLanguage' => array( 'Myyni_Sprooch' ),
-);
-
-/** Hebrew (עברית) */
-$specialPageAliases['he'] = array(
- 'MyLanguage' => array( 'השפה_שלי' ),
-);
-
-/** Upper Sorbian (hornjoserbsce) */
-$specialPageAliases['hsb'] = array(
- 'MyLanguage' => array( 'Moja_rěč' ),
-);
-
-/** Haitian (Kreyòl ayisyen) */
-$specialPageAliases['ht'] = array(
- 'MyLanguage' => array( 'LangMwen' ),
-);
-
-/** Interlingua (interlingua) */
-$specialPageAliases['ia'] = array(
- 'MyLanguage' => array( 'Mi_lingua' ),
-);
-
-/** Indonesian (Bahasa Indonesia) */
-$specialPageAliases['id'] = array(
- 'MyLanguage' => array( 'Bahasa_saya' ),
-);
-
-/** Italian (italiano) */
-$specialPageAliases['it'] = array(
- 'MyLanguage' => array( 'MiaLingua' ),
-);
-
-/** Japanese (日本語) */
-$specialPageAliases['ja'] = array(
- 'MyLanguage' => array( '自分の言語' ),
-);
-
-/** Georgian (ქართული) */
-$specialPageAliases['ka'] = array(
- 'MyLanguage' => array( 'ჩემი_ენა' ),
-);
-
-/** Khmer (ភាសាខ្មែរ) */
-$specialPageAliases['km'] = array(
- 'MyLanguage' => array( 'ភាសារបស់ខ្ញុំ' ),
-);
-
-/** Korean (한국어) */
-$specialPageAliases['ko'] = array(
- 'MyLanguage' => array( '내언어' ),
-);
-
-/** Karachay-Balkar (къарачай-малкъар) */
-$specialPageAliases['krc'] = array(
- 'MyLanguage' => array( 'Мени_тилим' ),
-);
-
-/** Kurdish (Latin script) (Kurdî (latînî)‎) */
-$specialPageAliases['ku-latn'] = array(
- 'MyLanguage' => array( 'Zimanê_Min' ),
-);
-
-/** Cornish (kernowek) */
-$specialPageAliases['kw'] = array(
- 'MyLanguage' => array( 'OwYeth' ),
-);
-
-/** Luxembourgish (Lëtzebuergesch) */
-$specialPageAliases['lb'] = array(
- 'MyLanguage' => array( 'Meng_Sprooch' ),
-);
-
-/** Macedonian (македонски) */
-$specialPageAliases['mk'] = array(
- 'MyLanguage' => array( 'МојЈазик' ),
-);
-
-/** Malayalam (മലയാളം) */
-$specialPageAliases['ml'] = array(
- 'MyLanguage' => array( 'എന്റെഭാഷ' ),
-);
-
-/** Marathi (मराठी) */
-$specialPageAliases['mr'] = array(
- 'MyLanguage' => array( 'माझीभाषा' ),
-);
-
-/** Erzya (эрзянь) */
-$specialPageAliases['myv'] = array(
- 'MyLanguage' => array( 'Келем' ),
-);
-
-/** Norwegian Bokmål (norsk bokmål) */
-$specialPageAliases['nb'] = array(
- 'MyLanguage' => array( 'Mitt_språk' ),
-);
-
-/** Low Saxon (Netherlands) (Nedersaksies) */
-$specialPageAliases['nds-nl'] = array(
- 'MyLanguage' => array( 'Mien_taal' ),
-);
-
-/** Dutch (Nederlands) */
-$specialPageAliases['nl'] = array(
- 'MyLanguage' => array( 'MijnTaal' ),
-);
-
-/** Norwegian Nynorsk (norsk nynorsk) */
-$specialPageAliases['nn'] = array(
- 'MyLanguage' => array( 'Språket_mitt' ),
-);
-
-/** Punjabi (ਪੰਜਾਬੀ) */
-$specialPageAliases['pa'] = array(
- 'MyLanguage' => array( 'ਮੇਰੀ_ਭਾਸ਼ਾ', 'ਮੇਰੀ_ਬੋਲੀ' ),
-);
-
-/** Polish (polski) */
-$specialPageAliases['pl'] = array(
- 'MyLanguage' => array( 'Mój_język' ),
-);
-
-/** Quechua (Runa Simi) */
-$specialPageAliases['qu'] = array(
- 'MyLanguage' => array( 'Rimayniy' ),
-);
-
-/** Russian (русский) */
-$specialPageAliases['ru'] = array(
- 'MyLanguage' => array( 'Мой_язык' ),
-);
-
-/** Sicilian (sicilianu) */
-$specialPageAliases['scn'] = array(
- 'MyLanguage' => array( 'MiaLingua' ),
-);
-
-/** Serbian (Cyrillic script) (српски (ћирилица)‎) */
-$specialPageAliases['sr-ec'] = array(
- 'MyLanguage' => array( 'Мој_језик' ),
-);
-
-/** Swedish (svenska) */
-$specialPageAliases['sv'] = array(
- 'MyLanguage' => array( 'Mitt_språk' ),
-);
-
-/** Thai (ไทย) */
-$specialPageAliases['th'] = array(
- 'MyLanguage' => array( 'ภาษาของฉัน' ),
-);
-
-/** толышә зывон (толышә зывон) */
-$specialPageAliases['tly'] = array(
- 'MyLanguage' => array( 'Чымы_зывон' ),
-);
-
-/** Turkish (Türkçe) */
-$specialPageAliases['tr'] = array(
- 'MyLanguage' => array( 'Dilim', 'BenimDilim' ),
-);
-
-/** Tatar (Cyrillic script) (татарча) */
-$specialPageAliases['tt-cyrl'] = array(
- 'MyLanguage' => array( 'Телем' ),
-);
-
-/** Tuvinian (тыва дыл) */
-$specialPageAliases['tyv'] = array(
- 'MyLanguage' => array( 'Дылым' ),
-);
-
-/** Ukrainian (українська) */
-$specialPageAliases['uk'] = array(
- 'MyLanguage' => array( 'Моя_мова' ),
-);
-
-/** Vietnamese (Tiếng Việt) */
-$specialPageAliases['vi'] = array(
- 'MyLanguage' => array( 'Ngôn_ngữ_tôi' ),
-);
-
-/** Cantonese (粵語) */
-$specialPageAliases['yue'] = array(
- 'MyLanguage' => array( '我個話' ),
-);
-
-/** Simplified Chinese (中文(简体)‎) */
-$specialPageAliases['zh-hans'] = array(
- 'MyLanguage' => array( '我的语言' ),
-);
-
-/** Traditional Chinese (中文(繁體)‎) */
-$specialPageAliases['zh-hant'] = array(
- 'MyLanguage' => array( '我的語言' ),
-);
diff --git a/MLEB/Translate/Translate.alias.php b/MLEB/Translate/Translate.alias.php
index 0b1cdd30..2008d703 100644
--- a/MLEB/Translate/Translate.alias.php
+++ b/MLEB/Translate/Translate.alias.php
@@ -3,1176 +3,1230 @@
* Aliases for special pages of Translate extension.
*
* @file
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
-// @codingStandardsIgnoreFile
-$specialPageAliases = array();
+$specialPageAliases = [];
/** English (English) */
-$specialPageAliases['en'] = array(
- 'AggregateGroups' => array( 'AggregateGroups' ),
- 'ImportTranslations' => array( 'ImportTranslations' ),
- 'LanguageStats' => array( 'LanguageStats' ),
- 'Magic' => array( 'AdvancedTranslate', 'Magic' ),
- 'ManageMessageGroups' => array( 'ManageMessageGroups' ),
- 'ManageTranslatorSandbox' => array( 'ManageTranslatorSandbox', 'TranslateSandbox' ),
- 'MessageGroupStats' => array( 'MessageGroupStats' ),
- 'PageTranslation' => array( 'PageTranslation' ),
- 'PageTranslationDeletePage' => array( 'PageTranslationDeletePage' ),
- 'SearchTranslations' => array( 'SearchTranslations' ),
- 'SupportedLanguages' => array( 'SupportedLanguages' ),
- 'Translate' => array( 'Translate' ),
- 'TranslationStash' => array( 'TranslationStash' ),
- 'TranslationStats' => array( 'TranslationStats', 'TranslationStatistics' ),
- 'Translations' => array( 'Translations' ),
- 'PageMigration' => array( 'PageMigration' ),
- 'PagePreparation' => array( 'PagePreparation' ),
-);
+$specialPageAliases['en'] = [
+ 'AggregateGroups' => [ 'AggregateGroups' ],
+ 'ImportTranslations' => [ 'ImportTranslations' ],
+ 'ExportTranslations' => [ 'ExportTranslations' ],
+ 'LanguageStats' => [ 'LanguageStats' ],
+ 'Magic' => [ 'AdvancedTranslate', 'Magic' ],
+ 'ManageMessageGroups' => [ 'ManageMessageGroups' ],
+ 'ManageTranslatorSandbox' => [ 'ManageTranslatorSandbox', 'TranslateSandbox' ],
+ 'MessageGroupStats' => [ 'MessageGroupStats' ],
+ 'PageTranslation' => [ 'PageTranslation' ],
+ 'PageTranslationDeletePage' => [ 'PageTranslationDeletePage' ],
+ 'SearchTranslations' => [ 'SearchTranslations' ],
+ 'SupportedLanguages' => [ 'SupportedLanguages' ],
+ 'Translate' => [ 'Translate' ],
+ 'TranslationStash' => [ 'TranslationStash' ],
+ 'TranslationStats' => [ 'TranslationStats', 'TranslationStatistics' ],
+ 'Translations' => [ 'Translations' ],
+ 'PageMigration' => [ 'PageMigration' ],
+ 'PagePreparation' => [ 'PagePreparation' ],
+];
/** Afrikaans (Afrikaans) */
-$specialPageAliases['af'] = array(
- 'LanguageStats' => array( 'TaalStatsistieke' ),
- 'Magic' => array( 'GevorderdeVertaal' ),
- 'PageTranslation' => array( 'BladsyVertaling' ),
- 'Translate' => array( 'Vertaal' ),
- 'TranslationStats' => array( 'VertaalStatistieke' ),
- 'Translations' => array( 'Vertalings' ),
-);
+$specialPageAliases['af'] = [
+ 'LanguageStats' => [ 'TaalStatsistieke' ],
+ 'Magic' => [ 'GevorderdeVertaal' ],
+ 'PageTranslation' => [ 'BladsyVertaling' ],
+ 'Translate' => [ 'Vertaal' ],
+ 'TranslationStats' => [ 'VertaalStatistieke' ],
+ 'Translations' => [ 'Vertalings' ],
+];
/** Arabic (العربية) */
-$specialPageAliases['ar'] = array(
- 'AggregateGroups' => array( 'مجموعات_مجمعة' ),
- 'ImportTranslations' => array( 'استيراد_الترجمات' ),
- 'LanguageStats' => array( 'إحصاءات_اللغات' ),
- 'Magic' => array( 'ترجمة_متقدمة', 'ماجيك' ),
- 'ManageMessageGroups' => array( 'التحكم_بمجموعات_الرسائل' ),
- 'ManageTranslatorSandbox' => array( 'التحكم_بملعب_المترجم', 'ملعب_الترجمة' ),
- 'MessageGroupStats' => array( 'إحصاءات_مجموعات_الرسائل' ),
- 'PageTranslation' => array( 'ترجمة_صفحة' ),
- 'PageTranslationDeletePage' => array( 'صفحة_حذف_ترجمة_الصفحة' ),
- 'SearchTranslations' => array( 'بحث_الترجمات' ),
- 'SupportedLanguages' => array( 'اللغات_المدعومة' ),
- 'Translate' => array( 'ترجمة' ),
- 'TranslationStash' => array( 'ستاش_الترجمة' ),
- 'TranslationStats' => array( 'إحصاءات_الترجمة' ),
- 'Translations' => array( 'ترجمات' ),
- 'PageMigration' => array( 'هجرة_الصفحة' ),
- 'PagePreparation' => array( 'تحضير_الصفحة' ),
-);
+$specialPageAliases['ar'] = [
+ 'AggregateGroups' => [ 'مجموعات_مجمعة' ],
+ 'ImportTranslations' => [ 'استيراد_الترجمات' ],
+ 'LanguageStats' => [ 'إحصاءات_اللغات' ],
+ 'Magic' => [ 'ترجمة_متقدمة', 'ماجيك' ],
+ 'ManageMessageGroups' => [ 'التحكم_بمجموعات_الرسائل' ],
+ 'ManageTranslatorSandbox' => [ 'التحكم_بملعب_المترجم', 'ملعب_الترجمة' ],
+ 'MessageGroupStats' => [ 'إحصاءات_مجموعات_الرسائل' ],
+ 'PageTranslation' => [ 'ترجمة_صفحة' ],
+ 'PageTranslationDeletePage' => [ 'صفحة_حذف_ترجمة_الصفحة' ],
+ 'SearchTranslations' => [ 'بحث_الترجمات' ],
+ 'SupportedLanguages' => [ 'اللغات_المدعومة' ],
+ 'Translate' => [ 'ترجمة' ],
+ 'TranslationStash' => [ 'ستاش_الترجمة' ],
+ 'TranslationStats' => [ 'إحصاءات_الترجمة' ],
+ 'Translations' => [ 'ترجمات' ],
+ 'PageMigration' => [ 'هجرة_الصفحة' ],
+ 'PagePreparation' => [ 'تحضير_الصفحة' ],
+];
/** Aramaic (ܐܪܡܝܐ) */
-$specialPageAliases['arc'] = array(
- 'PageTranslation' => array( 'ܬܘܪܓܡܐ_ܕܦܐܬܐ' ),
- 'SupportedLanguages' => array( 'ܠܫܢ̈ܐ_ܣܡܝܟ̈ܐ' ),
- 'Translate' => array( 'ܬܪܓܡ' ),
- 'Translations' => array( 'ܬܘܪ̈ܓܡܐ' ),
-);
-
-/** Egyptian Spoken Arabic (مصرى) */
-$specialPageAliases['arz'] = array(
- 'AggregateGroups' => array( 'مجموعات_متجمعه' ),
- 'ImportTranslations' => array( 'استوراد_الترجمات' ),
- 'LanguageStats' => array( 'احصائيات_اللغات' ),
- 'Magic' => array( 'ترجمة_متقدمة', 'ماجيك' ),
- 'ManageMessageGroups' => array( 'التحكم_بمجموعات_الرسايل' ),
- 'ManageTranslatorSandbox' => array( 'التحكم_بسبوره_المترجم', 'سبوره_الترجمه' ),
- 'MessageGroupStats' => array( 'احصاءات_مجموعات_الرسايل' ),
- 'PageTranslation' => array( 'ترجمة_صفحه' ),
- 'PageTranslationDeletePage' => array( 'صفحه_حذف_ترجمه_الصفحه' ),
- 'SearchTranslations' => array( 'تدوير_الترجمات' ),
- 'SupportedLanguages' => array( 'اللغات_المتدعمه' ),
- 'Translate' => array( 'ترجمه' ),
- 'TranslationStash' => array( 'ستاش_الترجمه' ),
- 'TranslationStats' => array( 'احصائيات_الترجمه' ),
- 'Translations' => array( 'ترجمات' ),
- 'PageMigration' => array( 'هجره_الصفحه' ),
-);
+$specialPageAliases['arc'] = [
+ 'PageTranslation' => [ 'ܬܘܪܓܡܐ_ܕܦܐܬܐ' ],
+ 'SupportedLanguages' => [ 'ܠܫܢ̈ܐ_ܣܡܝܟ̈ܐ' ],
+ 'Translate' => [ 'ܬܪܓܡ' ],
+ 'Translations' => [ 'ܬܘܪ̈ܓܡܐ' ],
+];
+
+/** Egyptian Arabic (مصرى) */
+$specialPageAliases['arz'] = [
+ 'AggregateGroups' => [ 'مجموعات_متجمعه' ],
+ 'ImportTranslations' => [ 'استوراد_الترجمات' ],
+ 'LanguageStats' => [ 'احصائيات_اللغات' ],
+ 'Magic' => [ 'ترجمة_متقدمة', 'ماجيك' ],
+ 'ManageMessageGroups' => [ 'التحكم_بمجموعات_الرسايل' ],
+ 'ManageTranslatorSandbox' => [ 'التحكم_بسبوره_المترجم', 'سبوره_الترجمه' ],
+ 'MessageGroupStats' => [ 'احصاءات_مجموعات_الرسايل' ],
+ 'PageTranslation' => [ 'ترجمة_صفحه' ],
+ 'PageTranslationDeletePage' => [ 'صفحه_حذف_ترجمه_الصفحه' ],
+ 'SearchTranslations' => [ 'تدوير_الترجمات' ],
+ 'SupportedLanguages' => [ 'اللغات_المتدعمه' ],
+ 'Translate' => [ 'ترجمه' ],
+ 'TranslationStash' => [ 'ستاش_الترجمه' ],
+ 'TranslationStats' => [ 'احصائيات_الترجمه' ],
+ 'Translations' => [ 'ترجمات' ],
+ 'PageMigration' => [ 'هجره_الصفحه' ],
+];
/** Assamese (অসমীয়া) */
-$specialPageAliases['as'] = array(
- 'ImportTranslations' => array( 'অনুবাদ_আমদানি_কৰক' ),
- 'LanguageStats' => array( 'ভাষাৰ_পৰিসংখ্যা' ),
- 'Magic' => array( 'উন্নত_অনুবাদ', 'যাদু' ),
- 'MessageGroupStats' => array( 'বাৰ্তাৰ_গোট_পৰিসংখ্যা' ),
- 'PageTranslation' => array( 'পৃষ্ঠা_অনুবাদ' ),
- 'SupportedLanguages' => array( 'সমৰ্থিত_ভাষাসমূহ' ),
- 'Translate' => array( 'অনুবাদ_কৰক' ),
- 'TranslationStats' => array( 'অনুবাদ_পৰিসংখ্যা' ),
- 'Translations' => array( 'অনুবাদসমূহ' ),
-);
+$specialPageAliases['as'] = [
+ 'ImportTranslations' => [ 'অনুবাদ_আমদানি_কৰক' ],
+ 'LanguageStats' => [ 'ভাষাৰ_পৰিসংখ্যা' ],
+ 'Magic' => [ 'উন্নত_অনুবাদ', 'যাদু' ],
+ 'MessageGroupStats' => [ 'বাৰ্তাৰ_গোট_পৰিসংখ্যা' ],
+ 'PageTranslation' => [ 'পৃষ্ঠা_অনুবাদ' ],
+ 'SupportedLanguages' => [ 'সমৰ্থিত_ভাষাসমূহ' ],
+ 'Translate' => [ 'অনুবাদ_কৰক' ],
+ 'TranslationStats' => [ 'অনুবাদ_পৰিসংখ্যা' ],
+ 'Translations' => [ 'অনুবাদসমূহ' ],
+];
/** Asturian (asturianu) */
-$specialPageAliases['ast'] = array(
- 'Translate' => array( 'Traducir' ),
-);
+$specialPageAliases['ast'] = [
+ 'Translate' => [ 'Traducir' ],
+];
/** Avaric (авар) */
-$specialPageAliases['av'] = array(
- 'AggregateGroups' => array( 'Агрегированные_группы' ),
- 'ImportTranslations' => array( 'Импорт_переводов' ),
- 'LanguageStats' => array( 'Статистика_языка' ),
- 'Magic' => array( 'Расширенный_перевод' ),
- 'ManageMessageGroups' => array( 'Управление_группами_сообщений' ),
- 'MessageGroupStats' => array( 'Статистика_группы_сообщений' ),
- 'PageTranslation' => array( 'Перевод_страниц' ),
- 'PageTranslationDeletePage' => array( 'Удаление_переводимой_страницы' ),
- 'SearchTranslations' => array( 'Поиск_переводов' ),
- 'SupportedLanguages' => array( 'Поддерживаемые_языки' ),
- 'Translate' => array( 'Перевести' ),
- 'TranslationStats' => array( 'Статистика_переводов' ),
- 'Translations' => array( 'Переводы' ),
-);
+$specialPageAliases['av'] = [
+ 'AggregateGroups' => [ 'Агрегированные_группы' ],
+ 'ImportTranslations' => [ 'Импорт_переводов' ],
+ 'LanguageStats' => [ 'Статистика_языка' ],
+ 'Magic' => [ 'Расширенный_перевод' ],
+ 'ManageMessageGroups' => [ 'Управление_группами_сообщений' ],
+ 'MessageGroupStats' => [ 'Статистика_группы_сообщений' ],
+ 'PageTranslation' => [ 'Перевод_страниц' ],
+ 'PageTranslationDeletePage' => [ 'Удаление_переводимой_страницы' ],
+ 'SearchTranslations' => [ 'Поиск_переводов' ],
+ 'SupportedLanguages' => [ 'Поддерживаемые_языки' ],
+ 'Translate' => [ 'Перевести' ],
+ 'TranslationStats' => [ 'Статистика_переводов' ],
+ 'Translations' => [ 'Переводы' ],
+];
/** Azerbaijani (azərbaycanca) */
-$specialPageAliases['az'] = array(
- 'PageTranslation' => array( 'SəhifəTərcüməsi' ),
- 'Translations' => array( 'Tərcümələr' ),
-);
+$specialPageAliases['az'] = [
+ 'PageTranslation' => [ 'SəhifəTərcüməsi' ],
+ 'Translations' => [ 'Tərcümələr' ],
+];
-/** South Azerbaijani (تورکجه) */
-$specialPageAliases['azb'] = array(
- 'PageTranslation' => array( 'صحیفه_چئویرمه‌سی' ),
- 'Translations' => array( 'چئویرمه‌لر' ),
-);
+/** South Azerbaijani (تۆرکجه) */
+$specialPageAliases['azb'] = [
+ 'PageTranslation' => [ 'صحیفه_چئویرمه‌سی' ],
+ 'Translations' => [ 'چئویرمه‌لر' ],
+];
/** Bashkir (башҡортса) */
-$specialPageAliases['ba'] = array(
- 'Magic' => array( 'AdvancedTranslate' ),
- 'Translate' => array( 'Translate' ),
- 'Translations' => array( 'Translations' ),
-);
+$specialPageAliases['ba'] = [
+ 'Magic' => [ 'AdvancedTranslate' ],
+ 'Translate' => [ 'Translate' ],
+ 'Translations' => [ 'Translations' ],
+];
/** Southern Balochi (بلوچی مکرانی) */
-$specialPageAliases['bcc'] = array(
- 'Magic' => array( 'پیشرپتگین ترجمه' ),
- 'Translate' => array( 'ترجمه' ),
-);
+$specialPageAliases['bcc'] = [
+ 'Magic' => [ 'پیشرپتگین ترجمه' ],
+ 'Translate' => [ 'ترجمه' ],
+];
/** Bulgarian (български) */
-$specialPageAliases['bg'] = array(
- 'Translate' => array( 'Превеждане' ),
- 'Translations' => array( 'Преводи' ),
-);
+$specialPageAliases['bg'] = [
+ 'Translate' => [ 'Превеждане' ],
+ 'Translations' => [ 'Преводи' ],
+];
/** Western Balochi (بلوچی رخشانی) */
-$specialPageAliases['bgn'] = array(
- 'AggregateGroups' => array( 'گروپ_ئآنی_جم' ),
- 'ImportTranslations' => array( 'ترجمه_ئانی_درون_بررّگ' ),
- 'LanguageStats' => array( 'زبان_ئانی_سرجم' ),
- 'Magic' => array( 'پیشرپته_ئین_ترجمه' ),
- 'ManageMessageGroups' => array( 'پیامی_گروپ_ئانی_مدیریت' ),
- 'ManageTranslatorSandbox' => array( 'ترجمه_ئی_تمرین_ئی_تاکدیمی_مدیریت' ),
- 'MessageGroupStats' => array( 'پیام_ی_گروپ_ئی_سرجم' ),
- 'PageTranslation' => array( 'ترجمه_ئی_تاکدیم' ),
- 'PageTranslationDeletePage' => array( 'تاکدیمی_پاک_کورتین' ),
- 'SearchTranslations' => array( 'ترجمه_ئانی_گشتین' ),
- 'SupportedLanguages' => array( 'پُشتیوانی_بوته_ئین_زبانان' ),
- 'Translate' => array( 'ترجمه' ),
- 'TranslationStats' => array( 'ترجمه_ئانی_سرجم' ),
- 'Translations' => array( 'ترجمه_ئان' ),
- 'PageMigration' => array( 'تاکدیمی_لَڑ_و_بار' ),
-);
+$specialPageAliases['bgn'] = [
+ 'AggregateGroups' => [ 'گروپ_ئآنی_جم' ],
+ 'ImportTranslations' => [ 'ترجمه_ئانی_درون_بررّگ' ],
+ 'LanguageStats' => [ 'زبان_ئانی_سرجم' ],
+ 'Magic' => [ 'پیشرپته_ئین_ترجمه' ],
+ 'ManageMessageGroups' => [ 'پیامی_گروپ_ئانی_مدیریت' ],
+ 'ManageTranslatorSandbox' => [ 'ترجمه_ئی_تمرین_ئی_تاکدیمی_مدیریت' ],
+ 'MessageGroupStats' => [ 'پیام_ی_گروپ_ئی_سرجم' ],
+ 'PageTranslation' => [ 'ترجمه_ئی_تاکدیم' ],
+ 'PageTranslationDeletePage' => [ 'تاکدیمی_پاک_کورتین' ],
+ 'SearchTranslations' => [ 'ترجمه_ئانی_گشتین' ],
+ 'SupportedLanguages' => [ 'پُشتیوانی_بوته_ئین_زبانان' ],
+ 'Translate' => [ 'ترجمه' ],
+ 'TranslationStats' => [ 'ترجمه_ئانی_سرجم' ],
+ 'Translations' => [ 'ترجمه_ئان' ],
+ 'PageMigration' => [ 'تاکدیمی_لَڑ_و_بار' ],
+];
/** Banjar (Bahasa Banjar) */
-$specialPageAliases['bjn'] = array(
- 'ImportTranslations' => array( 'Impor_tarjamahan' ),
- 'LanguageStats' => array( 'Statistik_bahasa' ),
- 'Magic' => array( 'Tarjamahakan_lanjut' ),
- 'PageTranslation' => array( 'Tarjamahan_tungkaran' ),
- 'Translate' => array( 'Tarjamahakan' ),
- 'TranslationStats' => array( 'Statistik_tarjamahan' ),
- 'Translations' => array( 'Tarjamahan' ),
-);
+$specialPageAliases['bjn'] = [
+ 'ImportTranslations' => [ 'Impor_tarjamahan' ],
+ 'LanguageStats' => [ 'Statistik_bahasa' ],
+ 'Magic' => [ 'Tarjamahakan_lanjut' ],
+ 'PageTranslation' => [ 'Tarjamahan_tungkaran' ],
+ 'Translate' => [ 'Tarjamahakan' ],
+ 'TranslationStats' => [ 'Statistik_tarjamahan' ],
+ 'Translations' => [ 'Tarjamahan' ],
+];
+
+/** Bengali (বাংলা) */
+$specialPageAliases['bn'] = [
+ 'AggregateGroups' => [ 'সমষ্টিগত_গোষ্ঠীসমূহ' ],
+ 'ImportTranslations' => [ 'অনুবাদ_আমদানি' ],
+ 'ExportTranslations' => [ 'অনুবাদ_রপ্তানি' ],
+ 'LanguageStats' => [ 'ভাষার_পরিসংখ্যান' ],
+ 'Magic' => [ 'উন্নত_অনুবাদ', 'জাদু' ],
+ 'ManageMessageGroups' => [ 'বার্তার_গোষ্ঠী_পরিচালনা' ],
+ 'ManageTranslatorSandbox' => [ 'অনুবাদকের_খেলাঘর_পরিচালনা', 'অনুবাদের_খেলাঘর' ],
+ 'MessageGroupStats' => [ 'বার্তা_দলের_পরিসংখ্যান' ],
+ 'PageTranslation' => [ 'পাতা_অনুবাদ' ],
+ 'PageTranslationDeletePage' => [ 'পাতা_অনুবাদের_পাতা_অপসারণ' ],
+ 'SearchTranslations' => [ 'অনুবাদ_অনুসন্ধান' ],
+ 'SupportedLanguages' => [ 'সমর্থিত_ভাষা' ],
+ 'Translate' => [ 'অনুবাদ' ],
+ 'TranslationStash' => [ 'অনুবাদের_স্টাশ' ],
+ 'TranslationStats' => [ 'অনুবাদের_পরিসংখ্যান' ],
+ 'Translations' => [ 'অনুবাদসমূহ' ],
+ 'PageMigration' => [ 'পাতা_অভিপ্রায়ণ', 'পৃষ্ঠা_অভিপ্রায়ণ' ],
+ 'PagePreparation' => [ 'পাতা_প্রস্তুতি', 'পৃষ্ঠা_প্রস্তুতি' ],
+];
/** Breton (brezhoneg) */
-$specialPageAliases['br'] = array(
- 'ImportTranslations' => array( 'EnporzhiañTroidigezhioù' ),
- 'LanguageStats' => array( 'StadegoùYezh' ),
- 'Magic' => array( 'TreiñAraokaet' ),
- 'PageTranslation' => array( 'TroidigezhPajenn' ),
- 'SupportedLanguages' => array( 'Yezhoùskoret' ),
- 'Translate' => array( 'Treiñ' ),
- 'TranslationStats' => array( 'StadegoùTreiñ' ),
- 'Translations' => array( 'Troidigezhioù' ),
-);
+$specialPageAliases['br'] = [
+ 'ImportTranslations' => [ 'EnporzhiañTroidigezhioù' ],
+ 'LanguageStats' => [ 'StadegoùYezh' ],
+ 'Magic' => [ 'TreiñAraokaet' ],
+ 'PageTranslation' => [ 'TroidigezhPajenn' ],
+ 'SupportedLanguages' => [ 'Yezhoùskoret' ],
+ 'Translate' => [ 'Treiñ' ],
+ 'TranslationStats' => [ 'StadegoùTreiñ' ],
+ 'Translations' => [ 'Troidigezhioù' ],
+];
/** Bosnian (bosanski) */
-$specialPageAliases['bs'] = array(
- 'ImportTranslations' => array( 'UvozPrijevoda' ),
- 'LanguageStats' => array( 'StatistikeJezika' ),
- 'Magic' => array( 'NaprednoPrevodjenje' ),
- 'PageTranslation' => array( 'PrijevodStranice' ),
- 'Translate' => array( 'Prevedi' ),
- 'TranslationStats' => array( 'StatistikePrevoda' ),
- 'Translations' => array( 'Prijevodi' ),
-);
+$specialPageAliases['bs'] = [
+ 'ImportTranslations' => [ 'UvozPrijevoda' ],
+ 'ExportTranslations' => [ 'IzvozPrijevoda' ],
+ 'LanguageStats' => [ 'StatistikeJezika' ],
+ 'Magic' => [ 'NaprednoPrevodjenje' ],
+ 'PageTranslation' => [ 'PrijevodStranice' ],
+ 'Translate' => [ 'Prevedi' ],
+ 'TranslationStats' => [ 'StatistikePrevoda' ],
+ 'Translations' => [ 'Prijevodi' ],
+];
/** буряад (буряад) */
-$specialPageAliases['bxr'] = array(
- 'PageTranslation' => array( 'Хуудаһанай_оршуулга' ),
- 'SupportedLanguages' => array( 'Дэмжэдэг_хэлэн' ),
- 'Translate' => array( 'Оршуулха' ),
- 'Translations' => array( 'Оршуулганууд' ),
-);
+$specialPageAliases['bxr'] = [
+ 'PageTranslation' => [ 'Хуудаһанай_оршуулга' ],
+ 'SupportedLanguages' => [ 'Дэмжэдэг_хэлэн' ],
+ 'Translate' => [ 'Оршуулха' ],
+ 'Translations' => [ 'Оршуулганууд' ],
+];
/** Min Dong Chinese (Mìng-dĕ̤ng-ngṳ̄) */
-$specialPageAliases['cdo'] = array(
- 'ImportTranslations' => array( '導底翻譯' ),
- 'LanguageStats' => array( '語言統計' ),
- 'Magic' => array( '高級翻譯' ),
- 'ManageMessageGroups' => array( '管理信息組' ),
- 'MessageGroupStats' => array( '信息組統計' ),
- 'PageTranslation' => array( '頁面翻譯' ),
- 'SupportedLanguages' => array( '支持其語言' ),
- 'Translate' => array( '翻譯' ),
- 'TranslationStats' => array( '翻譯統計' ),
-);
+$specialPageAliases['cdo'] = [
+ 'ImportTranslations' => [ '導底翻譯' ],
+ 'LanguageStats' => [ '語言統計' ],
+ 'Magic' => [ '高級翻譯' ],
+ 'ManageMessageGroups' => [ '管理信息組' ],
+ 'MessageGroupStats' => [ '信息組統計' ],
+ 'PageTranslation' => [ '頁面翻譯' ],
+ 'SupportedLanguages' => [ '支持其語言' ],
+ 'Translate' => [ '翻譯' ],
+ 'TranslationStats' => [ '翻譯統計' ],
+];
/** Chechen (нохчийн) */
-$specialPageAliases['ce'] = array(
- 'AggregateGroups' => array( 'Агрегированни_тобанаш' ),
- 'ImportTranslations' => array( 'Гоч_йинарш_импорт_яр' ),
- 'LanguageStats' => array( 'Меттан_статистика' ),
- 'Magic' => array( 'Шордина_гочдар' ),
- 'ManageMessageGroups' => array( 'Хаамийн_тобанийн_урхалла_дар' ),
- 'MessageGroupStats' => array( 'Хаамийн_тобанийн_статистика' ),
- 'PageTranslation' => array( 'АгӀонаш_гоч_яр' ),
- 'PageTranslationDeletePage' => array( 'Гоч_еш_йолу_агӀо_дӀаяккхар' ),
- 'SearchTranslations' => array( 'Гоч_йинарш_лахар' ),
- 'SupportedLanguages' => array( 'Ловш_долу_меттанаш' ),
- 'Translate' => array( 'Гоч_де' ),
- 'TranslationStats' => array( 'Гочдаран_статистика' ),
- 'Translations' => array( 'Гоч_дарш' ),
-);
+$specialPageAliases['ce'] = [
+ 'AggregateGroups' => [ 'Агрегированни_тобанаш' ],
+ 'ImportTranslations' => [ 'Гоч_йинарш_импорт_яр' ],
+ 'LanguageStats' => [ 'Меттан_статистика' ],
+ 'Magic' => [ 'Шордина_гочдар' ],
+ 'ManageMessageGroups' => [ 'Хаамийн_тобанийн_урхалла_дар' ],
+ 'MessageGroupStats' => [ 'Хаамийн_тобанийн_статистика' ],
+ 'PageTranslation' => [ 'АгӀонаш_гоч_яр' ],
+ 'PageTranslationDeletePage' => [ 'Гоч_еш_йолу_агӀо_дӀаяккхар' ],
+ 'SearchTranslations' => [ 'Гоч_йинарш_лахар' ],
+ 'SupportedLanguages' => [ 'Ловш_долу_меттанаш' ],
+ 'Translate' => [ 'Гоч_де' ],
+ 'TranslationStats' => [ 'Гочдаран_статистика' ],
+ 'Translations' => [ 'Гоч_дарш' ],
+];
/** Cebuano (Cebuano) */
-$specialPageAliases['ceb'] = array(
- 'Translate' => array( 'Hubara' ),
-);
+$specialPageAliases['ceb'] = [
+ 'Translate' => [ 'Hubara' ],
+];
/** Czech (čeština) */
-$specialPageAliases['cs'] = array(
- 'Translate' => array( 'Přeložit' ),
-);
+$specialPageAliases['cs'] = [
+ 'Translate' => [ 'Přeložit' ],
+];
/** Danish (dansk) */
-$specialPageAliases['da'] = array(
- 'PageTranslation' => array( 'Sideoversættelse' ),
- 'Translate' => array( 'Oversæt' ),
-);
+$specialPageAliases['da'] = [
+ 'PageTranslation' => [ 'Sideoversættelse' ],
+ 'Translate' => [ 'Oversæt' ],
+];
/** German (Deutsch) */
-$specialPageAliases['de'] = array(
- 'AggregateGroups' => array( 'Zusammenfassende_Nachrichtengruppen' ),
- 'ImportTranslations' => array( 'Übersetzungen_importieren' ),
- 'LanguageStats' => array( 'Sprachstatistiken' ),
- 'Magic' => array( 'Erweitertes_Übersetzen' ),
- 'ManageMessageGroups' => array( 'Nachrichtengruppen_verwalten' ),
- 'ManageTranslatorSandbox' => array( 'Übersetzerspielwiese_verwalten' ),
- 'MessageGroupStats' => array( 'Nachrichtengruppenstatistiken' ),
- 'PageTranslation' => array( 'Übersetzung_von_Seiten' ),
- 'PageTranslationDeletePage' => array( 'Löschseite_für_Übersetzungen' ),
- 'SearchTranslations' => array( 'Übersetzungen_suchen' ),
- 'SupportedLanguages' => array( 'Unterstützte_Sprachen' ),
- 'Translate' => array( 'Übersetzen' ),
- 'TranslationStash' => array( 'Übersetzungsversteck' ),
- 'TranslationStats' => array( 'Übersetzungsstatistik' ),
- 'Translations' => array( 'Übersetzungen' ),
- 'PageMigration' => array( 'Seitenmigration' ),
- 'PagePreparation' => array( 'Seitenvorbereitung' ),
-);
+$specialPageAliases['de'] = [
+ 'AggregateGroups' => [ 'Zusammenfassende_Nachrichtengruppen' ],
+ 'ImportTranslations' => [ 'Übersetzungen_importieren' ],
+ 'LanguageStats' => [ 'Sprachstatistiken' ],
+ 'Magic' => [ 'Erweitertes_Übersetzen' ],
+ 'ManageMessageGroups' => [ 'Nachrichtengruppen_verwalten' ],
+ 'ManageTranslatorSandbox' => [ 'Übersetzerspielwiese_verwalten' ],
+ 'MessageGroupStats' => [ 'Nachrichtengruppenstatistiken' ],
+ 'PageTranslation' => [ 'Übersetzung_von_Seiten' ],
+ 'PageTranslationDeletePage' => [ 'Löschseite_für_Übersetzungen' ],
+ 'SearchTranslations' => [ 'Übersetzungen_suchen' ],
+ 'SupportedLanguages' => [ 'Unterstützte_Sprachen' ],
+ 'Translate' => [ 'Übersetzen' ],
+ 'TranslationStash' => [ 'Übersetzungsversteck' ],
+ 'TranslationStats' => [ 'Übersetzungsstatistik' ],
+ 'Translations' => [ 'Übersetzungen' ],
+ 'PageMigration' => [ 'Seitenmigration' ],
+ 'PagePreparation' => [ 'Seitenvorbereitung' ],
+];
/** Zazaki (Zazaki) */
-$specialPageAliases['diq'] = array(
- 'AggregateGroups' => array( 'GrubéAggregate' ),
- 'ImportTranslations' => array( 'AçarnayışaZerrefi' ),
- 'LanguageStats' => array( 'İstatistikêZıwani' ),
- 'Magic' => array( 'AçarnayışoHerayen' ),
- 'ManageMessageGroups' => array( 'GrubanéMesacanİdareke' ),
- 'ManageTranslatorSandbox' => array( 'İdareyaQumdorAçarnayış', 'QumdorAçarnayış' ),
- 'MessageGroupStats' => array( 'İstatistikêGrubaMesacan' ),
- 'PageTranslation' => array( 'Açarnayışê_Pele' ),
- 'PageTranslationDeletePage' => array( 'PerraAçarnayışéPerraBesternayış' ),
- 'SearchTranslations' => array( 'AçarnayışaCıgeyreyış' ),
- 'SupportedLanguages' => array( 'ZıwanêkeDestegnênê' ),
- 'Translate' => array( 'Açarnayış' ),
- 'TranslationStash' => array( 'AçarnayışiNımnanyış' ),
- 'TranslationStats' => array( 'İstatistikêAçarnayışi' ),
- 'Translations' => array( 'Açarnayoği' ),
-);
+$specialPageAliases['diq'] = [
+ 'AggregateGroups' => [ 'GrubéAggregate' ],
+ 'ImportTranslations' => [ 'AçarnayışaZerrefi' ],
+ 'LanguageStats' => [ 'İstatistikêZıwani' ],
+ 'Magic' => [ 'AçarnayışoHerayen' ],
+ 'ManageMessageGroups' => [ 'GrubanéMesacanİdareke' ],
+ 'ManageTranslatorSandbox' => [ 'İdareyaQumdorAçarnayış', 'QumdorAçarnayış' ],
+ 'MessageGroupStats' => [ 'İstatistikêGrubaMesacan' ],
+ 'PageTranslation' => [ 'Açarnayışê_Pele' ],
+ 'PageTranslationDeletePage' => [ 'PerraAçarnayışéPerraBesternayış' ],
+ 'SearchTranslations' => [ 'AçarnayışaCıgeyreyış' ],
+ 'SupportedLanguages' => [ 'ZıwanêkeDestegnênê' ],
+ 'Translate' => [ 'Açarnayış' ],
+ 'TranslationStash' => [ 'AçarnayışiNımnanyış' ],
+ 'TranslationStats' => [ 'İstatistikêAçarnayışi' ],
+ 'Translations' => [ 'Açarnayoği' ],
+];
/** Lower Sorbian (dolnoserbski) */
-$specialPageAliases['dsb'] = array(
- 'LanguageStats' => array( 'Rěcne statistiki' ),
- 'Magic' => array( 'Rozšyrjone pśełožowanje' ),
- 'Translate' => array( 'Přełožiś' ),
- 'TranslationStats' => array( 'Statistika pśełožkow' ),
- 'Translations' => array( 'Pśełožki' ),
-);
+$specialPageAliases['dsb'] = [
+ 'LanguageStats' => [ 'Rěcne statistiki' ],
+ 'Magic' => [ 'Rozšyrjone pśełožowanje' ],
+ 'Translate' => [ 'Přełožiś' ],
+ 'TranslationStats' => [ 'Statistika pśełožkow' ],
+ 'Translations' => [ 'Pśełožki' ],
+];
/** Divehi (ދިވެހިބަސް) */
-$specialPageAliases['dv'] = array(
- 'Translate' => array( 'ތަރުޖަމާކުރައްވާ' ),
- 'Translations' => array( 'ތަރުޖަމާތައް' ),
-);
+$specialPageAliases['dv'] = [
+ 'Translate' => [ 'ތަރުޖަމާކުރައްވާ' ],
+ 'Translations' => [ 'ތަރުޖަމާތައް' ],
+];
/** Greek (Ελληνικά) */
-$specialPageAliases['el'] = array(
- 'AggregateGroups' => array( 'ΣυγκεντρωτικέςΟμάδες' ),
- 'ImportTranslations' => array( 'ΕισαγωγήΜεταφράσεων' ),
- 'LanguageStats' => array( 'ΣτατιστικάΓλώσσας' ),
- 'Magic' => array( 'ΠροχωρημένηΜετάφραση', 'ΜαγικέςΛέξεις' ),
- 'ManageMessageGroups' => array( 'ΔιαχείρισηΟμάδωνΜηνυμάτων' ),
- 'ManageTranslatorSandbox' => array( 'ΔιαχείρισηΑμμοδοχείουΜεταφραστή', 'ΑμμοδοχείοΜετάφρασης' ),
- 'MessageGroupStats' => array( 'ΣτατιστικάΟμάδαςΜηνυμάτων' ),
- 'PageTranslation' => array( 'ΜετάφρασηΣελίδας' ),
- 'PageTranslationDeletePage' => array( 'ΔιαγραφήΣελίδαςΜετάφρασηςΣελίδων' ),
- 'SearchTranslations' => array( 'ΑναζήτησηΜεταφράσεων' ),
- 'SupportedLanguages' => array( 'ΥποστηριζόμενεςΓλώσσες' ),
- 'Translate' => array( 'Μετάφραση' ),
- 'TranslationStats' => array( 'ΣτατιστικάΜετάφρασης' ),
- 'Translations' => array( 'Μεταφράσεις' ),
-);
+$specialPageAliases['el'] = [
+ 'AggregateGroups' => [ 'ΣυγκεντρωτικέςΟμάδες' ],
+ 'ImportTranslations' => [ 'ΕισαγωγήΜεταφράσεων' ],
+ 'LanguageStats' => [ 'ΣτατιστικάΓλώσσας' ],
+ 'Magic' => [ 'ΠροχωρημένηΜετάφραση', 'ΜαγικέςΛέξεις' ],
+ 'ManageMessageGroups' => [ 'ΔιαχείρισηΟμάδωνΜηνυμάτων' ],
+ 'ManageTranslatorSandbox' => [ 'ΔιαχείρισηΑμμοδοχείουΜεταφραστή', 'ΑμμοδοχείοΜετάφρασης' ],
+ 'MessageGroupStats' => [ 'ΣτατιστικάΟμάδαςΜηνυμάτων' ],
+ 'PageTranslation' => [ 'ΜετάφρασηΣελίδας' ],
+ 'PageTranslationDeletePage' => [ 'ΔιαγραφήΣελίδαςΜετάφρασηςΣελίδων' ],
+ 'SearchTranslations' => [ 'ΑναζήτησηΜεταφράσεων' ],
+ 'SupportedLanguages' => [ 'ΥποστηριζόμενεςΓλώσσες' ],
+ 'Translate' => [ 'Μετάφραση' ],
+ 'TranslationStats' => [ 'ΣτατιστικάΜετάφρασης' ],
+ 'Translations' => [ 'Μεταφράσεις' ],
+];
/** Esperanto (Esperanto) */
-$specialPageAliases['eo'] = array(
- 'ImportTranslations' => array( 'Enporti_tradukojn', 'Importi_tradukojn' ),
- 'LanguageStats' => array( 'Lingvaj_statistikoj' ),
- 'Magic' => array( 'Altnivela_tradukado' ),
- 'SearchTranslations' => array( 'Serĉi_tradukojn' ),
- 'SupportedLanguages' => array( 'Subtenataj_lingvoj' ),
- 'Translate' => array( 'Traduki' ),
- 'TranslationStats' => array( 'Statistikol_pri_tradukado' ),
- 'Translations' => array( 'Tradukoj' ),
-);
+$specialPageAliases['eo'] = [
+ 'ImportTranslations' => [ 'Enporti_tradukojn', 'Importi_tradukojn' ],
+ 'LanguageStats' => [ 'Lingvaj_statistikoj' ],
+ 'Magic' => [ 'Altnivela_tradukado' ],
+ 'SearchTranslations' => [ 'Serĉi_tradukojn' ],
+ 'SupportedLanguages' => [ 'Subtenataj_lingvoj' ],
+ 'Translate' => [ 'Traduki' ],
+ 'TranslationStats' => [ 'Statistikol_pri_tradukado' ],
+ 'Translations' => [ 'Tradukoj' ],
+];
/** Spanish (español) */
-$specialPageAliases['es'] = array(
- 'Magic' => array( 'Traducción_avanzada' ),
- 'SupportedLanguages' => array( 'IdiomasAdmitidos' ),
- 'Translate' => array( 'Traducir' ),
- 'Translations' => array( 'Traducciones' ),
-);
+$specialPageAliases['es'] = [
+ 'Magic' => [ 'Traducción_avanzada' ],
+ 'SupportedLanguages' => [ 'IdiomasAdmitidos' ],
+ 'Translate' => [ 'Traducir' ],
+ 'Translations' => [ 'Traducciones' ],
+];
/** Persian (فارسی) */
-$specialPageAliases['fa'] = array(
- 'AggregateGroups' => array( 'جمع_گروه‌ها' ),
- 'ImportTranslations' => array( 'درون‌بری_ترجمه‌ها' ),
- 'LanguageStats' => array( 'آمار_زبان‌ها' ),
- 'Magic' => array( 'ترجمه_پیشرفته' ),
- 'ManageMessageGroups' => array( 'مدیریت_گروه‌های_پیغام' ),
- 'ManageTranslatorSandbox' => array( 'مدیریت_صفحهٔ_تمرین_ترجمه', 'صفحهٔ_تمرین_ترجمه' ),
- 'MessageGroupStats' => array( 'آمار_گروه_پیغام' ),
- 'PageTranslation' => array( 'ترجمه_صفحه' ),
- 'PageTranslationDeletePage' => array( 'صفحه_حذف_ترجمه_صفحه' ),
- 'SearchTranslations' => array( 'جستجوی_ترجمه‌ها' ),
- 'SupportedLanguages' => array( 'زبان‌های_پشتیبانی‌شده' ),
- 'Translate' => array( 'ترجمه' ),
- 'TranslationStats' => array( 'آمار_ترجمه‌ها' ),
- 'Translations' => array( 'ترجمه‌ها' ),
- 'PageMigration' => array( 'مهاجرت_صفحه' ),
-);
+$specialPageAliases['fa'] = [
+ 'AggregateGroups' => [ 'جمع_گروه‌ها' ],
+ 'ImportTranslations' => [ 'درون‌بری_ترجمه‌ها' ],
+ 'LanguageStats' => [ 'آمار_زبان‌ها' ],
+ 'Magic' => [ 'ترجمه_پیشرفته' ],
+ 'ManageMessageGroups' => [ 'مدیریت_گروه‌های_پیغام' ],
+ 'ManageTranslatorSandbox' => [ 'مدیریت_صفحهٔ_تمرین_ترجمه', 'صفحهٔ_تمرین_ترجمه' ],
+ 'MessageGroupStats' => [ 'آمار_گروه_پیغام' ],
+ 'PageTranslation' => [ 'ترجمه_صفحه' ],
+ 'PageTranslationDeletePage' => [ 'صفحه_حذف_ترجمه_صفحه' ],
+ 'SearchTranslations' => [ 'جستجوی_ترجمه‌ها' ],
+ 'SupportedLanguages' => [ 'زبان‌های_پشتیبانی‌شده' ],
+ 'Translate' => [ 'ترجمه' ],
+ 'TranslationStats' => [ 'آمار_ترجمه‌ها' ],
+ 'Translations' => [ 'ترجمه‌ها' ],
+ 'PageMigration' => [ 'مهاجرت_صفحه' ],
+];
/** Finnish (suomi) */
-$specialPageAliases['fi'] = array(
- 'ImportTranslations' => array( 'Käännösten_tuonti' ),
- 'LanguageStats' => array( 'Kielitilastot' ),
- 'Magic' => array( 'Laajennettu_kääntäminen' ),
- 'ManageMessageGroups' => array( 'Viestiryhmien_hallinta' ),
- 'PageTranslation' => array( 'Sivujen_kääntäminen' ),
- 'SupportedLanguages' => array( 'Tuetut_kielet' ),
- 'Translate' => array( 'Käännä' ),
- 'TranslationStats' => array( 'Käännöstilastot' ),
- 'Translations' => array( 'Käännökset' ),
-);
+$specialPageAliases['fi'] = [
+ 'ImportTranslations' => [ 'Käännösten_tuonti' ],
+ 'LanguageStats' => [ 'Kielitilastot' ],
+ 'Magic' => [ 'Laajennettu_kääntäminen' ],
+ 'ManageMessageGroups' => [ 'Viestiryhmien_hallinta' ],
+ 'PageTranslation' => [ 'Sivujen_kääntäminen' ],
+ 'SupportedLanguages' => [ 'Tuetut_kielet' ],
+ 'Translate' => [ 'Käännä' ],
+ 'TranslationStats' => [ 'Käännöstilastot' ],
+ 'Translations' => [ 'Käännökset' ],
+];
/** French (français) */
-$specialPageAliases['fr'] = array(
- 'LanguageStats' => array( 'StatistiquesDesLangues', 'Statistiques_des_langues' ),
- 'Magic' => array( 'Traduction_avancée', 'Traductionavancée', 'Traduction_avancee', 'Traductionavancee' ),
- 'Translate' => array( 'Traduire' ),
- 'TranslationStats' => array( 'StatistiquesDesTraductions', 'Statistiques_des_traductions' ),
- 'Translations' => array( 'Traductions' ),
-);
-
-/** Franco-Provençal (arpetan) */
-$specialPageAliases['frp'] = array(
- 'LanguageStats' => array( 'Statistiques_de_les_lengoues', 'StatistiquesDeLesLengoues' ),
- 'Magic' => array( 'Traduccion_avanciê', 'TraduccionAavanciê' ),
- 'Translate' => array( 'Traduire' ),
- 'TranslationStats' => array( 'Statistiques_de_traduccion', 'StatistiquesDeTraduccion' ),
- 'Translations' => array( 'Traduccions' ),
-);
+$specialPageAliases['fr'] = [
+ 'LanguageStats' => [ 'StatistiquesDesLangues', 'Statistiques_des_langues' ],
+ 'Magic' => [ 'Traduction_avancée', 'Traductionavancée', 'Traduction_avancee', 'Traductionavancee' ],
+ 'Translate' => [ 'Traduire' ],
+ 'TranslationStats' => [ 'StatistiquesDesTraductions', 'Statistiques_des_traductions' ],
+ 'Translations' => [ 'Traductions' ],
+];
+
+/** Arpitan (arpetan) */
+$specialPageAliases['frp'] = [
+ 'LanguageStats' => [ 'Statistiques_de_les_lengoues', 'StatistiquesDeLesLengoues' ],
+ 'Magic' => [ 'Traduccion_avanciê', 'TraduccionAavanciê' ],
+ 'Translate' => [ 'Traduire' ],
+ 'TranslationStats' => [ 'Statistiques_de_traduccion', 'StatistiquesDeTraduccion' ],
+ 'Translations' => [ 'Traduccions' ],
+];
/** Western Frisian (Frysk) */
-$specialPageAliases['fy'] = array(
- 'ImportTranslations' => array( 'OersettingsYmportearje' ),
- 'LanguageStats' => array( 'Taalstatistiken' ),
- 'PageTranslation' => array( 'Sideoersetting' ),
- 'SearchTranslations' => array( 'OersettingsSykje' ),
- 'Translate' => array( 'Oersette' ),
- 'Translations' => array( 'Oersettings' ),
-);
+$specialPageAliases['fy'] = [
+ 'ImportTranslations' => [ 'OersettingsYmportearje' ],
+ 'LanguageStats' => [ 'Taalstatistiken' ],
+ 'PageTranslation' => [ 'Sideoersetting' ],
+ 'SearchTranslations' => [ 'OersettingsSykje' ],
+ 'Translate' => [ 'Oersette' ],
+ 'Translations' => [ 'Oersettings' ],
+];
/** Galician (galego) */
-$specialPageAliases['gl'] = array(
- 'ImportTranslations' => array( 'Importar_traducións' ),
- 'LanguageStats' => array( 'Estatísticas_da_lingua' ),
- 'Magic' => array( 'Tradución_avanzada' ),
- 'PageTranslation' => array( 'Tradución_de_páxinas' ),
- 'Translate' => array( 'Traducir' ),
- 'TranslationStats' => array( 'Estatísticas_da_tradución' ),
- 'Translations' => array( 'Traducións' ),
-);
+$specialPageAliases['gl'] = [
+ 'ImportTranslations' => [ 'Importar_traducións' ],
+ 'LanguageStats' => [ 'Estatísticas_da_lingua' ],
+ 'Magic' => [ 'Tradución_avanzada' ],
+ 'PageTranslation' => [ 'Tradución_de_páxinas' ],
+ 'Translate' => [ 'Traducir' ],
+ 'TranslationStats' => [ 'Estatísticas_da_tradución' ],
+ 'Translations' => [ 'Traducións' ],
+];
/** Swiss German (Alemannisch) */
-$specialPageAliases['gsw'] = array(
- 'ImportTranslations' => array( 'Übersetzige_importiere' ),
- 'LanguageStats' => array( 'Sprochstatischtik' ),
- 'Magic' => array( 'Usgwytets_Ibersetze' ),
- 'ManageMessageGroups' => array( 'Noochrichtegruppe_verwalte' ),
- 'MessageGroupStats' => array( 'Noochrichtegruppestatistike' ),
- 'PageTranslation' => array( 'Übersetzig_vo_Syte' ),
- 'PageTranslationDeletePage' => array( 'Löschsyte_für_Übersetzige' ),
- 'SupportedLanguages' => array( 'Sprooche_wo_unterstützt_werde' ),
- 'Translate' => array( 'Ibersetze' ),
- 'TranslationStats' => array( 'Ibersetzigsstatischtik' ),
- 'Translations' => array( 'Ibersetzige' ),
-);
+$specialPageAliases['gsw'] = [
+ 'ImportTranslations' => [ 'Übersetzige_importiere' ],
+ 'LanguageStats' => [ 'Sprochstatischtik' ],
+ 'Magic' => [ 'Usgwytets_Ibersetze' ],
+ 'ManageMessageGroups' => [ 'Noochrichtegruppe_verwalte' ],
+ 'MessageGroupStats' => [ 'Noochrichtegruppestatistike' ],
+ 'PageTranslation' => [ 'Übersetzig_vo_Syte' ],
+ 'PageTranslationDeletePage' => [ 'Löschsyte_für_Übersetzige' ],
+ 'SupportedLanguages' => [ 'Sprooche_wo_unterstützt_werde' ],
+ 'Translate' => [ 'Ibersetze' ],
+ 'TranslationStats' => [ 'Ibersetzigsstatischtik' ],
+ 'Translations' => [ 'Ibersetzige' ],
+];
/** Hebrew (עברית) */
-$specialPageAliases['he'] = array(
- 'AggregateGroups' => array( 'קבוצות_משולבות' ),
- 'ImportTranslations' => array( 'ייבוא_תרגומים' ),
- 'LanguageStats' => array( 'סטטיסטיקות_שפה' ),
- 'Magic' => array( 'תרגום_מתקדם' ),
- 'ManageMessageGroups' => array( 'ניהול_קבוצות_הודעות' ),
- 'ManageTranslatorSandbox' => array( 'ניהול_ארגז_חול_של_מתרגמים' ),
- 'MessageGroupStats' => array( 'סטטיסטיקות_של_קבוצות_הודעות' ),
- 'PageTranslation' => array( 'תרגום_דף' ),
- 'PageTranslationDeletePage' => array( 'מחיקת_דף_מתורגם' ),
- 'SearchTranslations' => array( 'חיפוש_תרגומים' ),
- 'SupportedLanguages' => array( 'שפות_נתמכות' ),
- 'Translate' => array( 'תרגום' ),
- 'TranslationStash' => array( 'מחסן_תרגומים' ),
- 'TranslationStats' => array( 'סטטיסטיקות_תרגום' ),
- 'Translations' => array( 'תרגומים' ),
- 'PageMigration' => array( 'המרת_דף' ),
- 'PagePreparation' => array( 'הכנת_דף' ),
-);
+$specialPageAliases['he'] = [
+ 'AggregateGroups' => [ 'קבוצות_משולבות' ],
+ 'ImportTranslations' => [ 'ייבוא_תרגומים' ],
+ 'LanguageStats' => [ 'סטטיסטיקות_שפה' ],
+ 'Magic' => [ 'תרגום_מתקדם' ],
+ 'ManageMessageGroups' => [ 'ניהול_קבוצות_הודעות' ],
+ 'ManageTranslatorSandbox' => [ 'ניהול_ארגז_חול_של_מתרגמים' ],
+ 'MessageGroupStats' => [ 'סטטיסטיקות_של_קבוצות_הודעות' ],
+ 'PageTranslation' => [ 'תרגום_דף' ],
+ 'PageTranslationDeletePage' => [ 'מחיקת_דף_מתורגם' ],
+ 'SearchTranslations' => [ 'חיפוש_תרגומים' ],
+ 'SupportedLanguages' => [ 'שפות_נתמכות' ],
+ 'Translate' => [ 'תרגום' ],
+ 'TranslationStash' => [ 'מחסן_תרגומים' ],
+ 'TranslationStats' => [ 'סטטיסטיקות_תרגום' ],
+ 'Translations' => [ 'תרגומים' ],
+ 'PageMigration' => [ 'המרת_דף' ],
+ 'PagePreparation' => [ 'הכנת_דף' ],
+];
/** Hindi (हिन्दी) */
-$specialPageAliases['hi'] = array(
- 'Translate' => array( 'अनुवाद' ),
-);
+$specialPageAliases['hi'] = [
+ 'Translate' => [ 'अनुवाद' ],
+];
/** Croatian (hrvatski) */
-$specialPageAliases['hr'] = array(
- 'Translate' => array( 'Prevedi' ),
-);
+$specialPageAliases['hr'] = [
+ 'Translate' => [ 'Prevedi' ],
+];
/** Upper Sorbian (hornjoserbsce) */
-$specialPageAliases['hsb'] = array(
- 'ImportTranslations' => array( 'Přełožki_importować' ),
- 'LanguageStats' => array( 'Rěčne_statistiki' ),
- 'Magic' => array( 'Rozšěrjene_přełožowanje', 'Magiske' ),
- 'PageTranslation' => array( 'Přełožowanje_stronow' ),
- 'SearchTranslations' => array( 'Přełožki_pytać' ),
- 'SupportedLanguages' => array( 'Podpěrane_rěče' ),
- 'Translate' => array( 'Přełožić' ),
- 'TranslationStats' => array( 'Statistika_přełožkow' ),
- 'Translations' => array( 'Přełožki' ),
-);
+$specialPageAliases['hsb'] = [
+ 'ImportTranslations' => [ 'Přełožki_importować' ],
+ 'LanguageStats' => [ 'Rěčne_statistiki' ],
+ 'Magic' => [ 'Rozšěrjene_přełožowanje', 'Magiske' ],
+ 'PageTranslation' => [ 'Přełožowanje_stronow' ],
+ 'SearchTranslations' => [ 'Přełožki_pytać' ],
+ 'SupportedLanguages' => [ 'Podpěrane_rěče' ],
+ 'Translate' => [ 'Přełožić' ],
+ 'TranslationStats' => [ 'Statistika_přełožkow' ],
+ 'Translations' => [ 'Přełožki' ],
+];
/** Haitian (Kreyòl ayisyen) */
-$specialPageAliases['ht'] = array(
- 'ImportTranslations' => array( 'EnpòteTradiksyon' ),
- 'LanguageStats' => array( 'EstatistikLang' ),
- 'Magic' => array( 'TradiksyonAvanse', 'Magik' ),
- 'ManageMessageGroups' => array( 'GereGwoupMesaj' ),
- 'PageTranslation' => array( 'TradiksyonPaj' ),
- 'SupportedLanguages' => array( 'LangSipòte' ),
- 'Translate' => array( 'Tradui' ),
- 'TranslationStats' => array( 'EstatistikTradiksyon' ),
- 'Translations' => array( 'TradiksyonYo' ),
-);
+$specialPageAliases['ht'] = [
+ 'ImportTranslations' => [ 'EnpòteTradiksyon' ],
+ 'LanguageStats' => [ 'EstatistikLang' ],
+ 'Magic' => [ 'TradiksyonAvanse', 'Magik' ],
+ 'ManageMessageGroups' => [ 'GereGwoupMesaj' ],
+ 'PageTranslation' => [ 'TradiksyonPaj' ],
+ 'SupportedLanguages' => [ 'LangSipòte' ],
+ 'Translate' => [ 'Tradui' ],
+ 'TranslationStats' => [ 'EstatistikTradiksyon' ],
+ 'Translations' => [ 'TradiksyonYo' ],
+];
/** Hungarian (magyar) */
-$specialPageAliases['hu'] = array(
- 'LanguageStats' => array( 'Nyelvi_statisztika' ),
- 'Magic' => array( 'Fejlettebb_fordító' ),
- 'Translate' => array( 'Fordítás' ),
- 'TranslationStats' => array( 'Fordítási_statisztika' ),
- 'Translations' => array( 'Fordítások' ),
-);
+$specialPageAliases['hu'] = [
+ 'LanguageStats' => [ 'Nyelvi_statisztika' ],
+ 'Magic' => [ 'Fejlettebb_fordító' ],
+ 'Translate' => [ 'Fordítás' ],
+ 'TranslationStats' => [ 'Fordítási_statisztika' ],
+ 'Translations' => [ 'Fordítások' ],
+];
/** Interlingua (interlingua) */
-$specialPageAliases['ia'] = array(
- 'ImportTranslations' => array( 'Importar_traductiones' ),
- 'LanguageStats' => array( 'Statisticas_de_linguas' ),
- 'Magic' => array( 'Traduction_avantiate', 'Magia' ),
- 'ManageMessageGroups' => array( 'Gerer_gruppos_de_messages' ),
- 'MessageGroupStats' => array( 'Statisticas_de_gruppos_de_messages' ),
- 'PageTranslation' => array( 'Traduction_de_paginas' ),
- 'PageTranslationDeletePage' => array( 'Deler_pagina_traducite' ),
- 'SupportedLanguages' => array( 'Linguas_supportate' ),
- 'Translate' => array( 'Traducer' ),
- 'TranslationStats' => array( 'Statisticas_de_traduction' ),
- 'Translations' => array( 'Traductiones' ),
-);
+$specialPageAliases['ia'] = [
+ 'ImportTranslations' => [ 'Importar_traductiones' ],
+ 'LanguageStats' => [ 'Statisticas_de_linguas' ],
+ 'Magic' => [ 'Traduction_avantiate', 'Magia' ],
+ 'ManageMessageGroups' => [ 'Gerer_gruppos_de_messages' ],
+ 'MessageGroupStats' => [ 'Statisticas_de_gruppos_de_messages' ],
+ 'PageTranslation' => [ 'Traduction_de_paginas' ],
+ 'PageTranslationDeletePage' => [ 'Deler_pagina_traducite' ],
+ 'SupportedLanguages' => [ 'Linguas_supportate' ],
+ 'Translate' => [ 'Traducer' ],
+ 'TranslationStats' => [ 'Statisticas_de_traduction' ],
+ 'Translations' => [ 'Traductiones' ],
+];
/** Indonesian (Bahasa Indonesia) */
-$specialPageAliases['id'] = array(
- 'ImportTranslations' => array( 'Impor_terjemahan', 'ImporTerjemahan' ),
- 'LanguageStats' => array( 'Statistik_bahasa', 'StatistikBahasa' ),
- 'Magic' => array( 'Terjemahkan_lanjut', 'TerjemahkanLanjut' ),
- 'ManageMessageGroups' => array( 'Kelola_pesan_grup', 'KelolaPesanGrup' ),
- 'MessageGroupStats' => array( 'Statistik_pesan_grup', 'StatistikPesanGrup' ),
- 'PageTranslation' => array( 'Terjemahan_halaman', 'TerjemahanHalaman' ),
- 'SearchTranslations' => array( 'Cari_terjemahan', 'CariTerjemahan' ),
- 'SupportedLanguages' => array( 'Bahasa_yang_didukung', 'BahasaDidukung' ),
- 'Translate' => array( 'Terjemahkan' ),
- 'TranslationStats' => array( 'Statistik_terjemahan', 'StatistikTerjemahan' ),
- 'Translations' => array( 'Terjemahan' ),
-);
+$specialPageAliases['id'] = [
+ 'ImportTranslations' => [ 'Impor_terjemahan', 'ImporTerjemahan' ],
+ 'LanguageStats' => [ 'Statistik_bahasa', 'StatistikBahasa' ],
+ 'Magic' => [ 'Terjemahkan_lanjut', 'TerjemahkanLanjut' ],
+ 'ManageMessageGroups' => [ 'Kelola_pesan_grup', 'KelolaPesanGrup' ],
+ 'MessageGroupStats' => [ 'Statistik_pesan_grup', 'StatistikPesanGrup' ],
+ 'PageTranslation' => [ 'Terjemahan_halaman', 'TerjemahanHalaman' ],
+ 'SearchTranslations' => [ 'Cari_terjemahan', 'CariTerjemahan' ],
+ 'SupportedLanguages' => [ 'Bahasa_yang_didukung', 'BahasaDidukung' ],
+ 'Translate' => [ 'Terjemahkan' ],
+ 'TranslationStats' => [ 'Statistik_terjemahan', 'StatistikTerjemahan' ],
+ 'Translations' => [ 'Terjemahan' ],
+];
/** Icelandic (íslenska) */
-$specialPageAliases['is'] = array(
- 'Translate' => array( 'Þýða' ),
-);
+$specialPageAliases['is'] = [
+ 'Translate' => [ 'Þýða' ],
+];
/** Italian (italiano) */
-$specialPageAliases['it'] = array(
- 'AggregateGroups' => array( 'GruppiAggregati' ),
- 'ImportTranslations' => array( 'ImportaTraduzioni' ),
- 'LanguageStats' => array( 'StatisticheLingua' ),
- 'Magic' => array( 'TraduciAvanzato' ),
- 'ManageMessageGroups' => array( 'GestisciGruppiMessaggio' ),
- 'MessageGroupStats' => array( 'StatisticheGruppiMessaggio' ),
- 'PageTranslation' => array( 'TraduzionePagina' ),
- 'SearchTranslations' => array( 'CercaTraduzioni' ),
- 'SupportedLanguages' => array( 'LingueSupportate' ),
- 'Translate' => array( 'Traduci' ),
- 'TranslationStats' => array( 'StatisticheTraduzione' ),
- 'Translations' => array( 'Traduzioni' ),
-);
+$specialPageAliases['it'] = [
+ 'AggregateGroups' => [ 'GruppiAggregati' ],
+ 'ImportTranslations' => [ 'ImportaTraduzioni' ],
+ 'LanguageStats' => [ 'StatisticheLingua' ],
+ 'Magic' => [ 'TraduciAvanzato' ],
+ 'ManageMessageGroups' => [ 'GestisciGruppiMessaggio' ],
+ 'MessageGroupStats' => [ 'StatisticheGruppiMessaggio' ],
+ 'PageTranslation' => [ 'TraduzionePagina' ],
+ 'SearchTranslations' => [ 'CercaTraduzioni' ],
+ 'SupportedLanguages' => [ 'LingueSupportate' ],
+ 'Translate' => [ 'Traduci' ],
+ 'TranslationStats' => [ 'StatisticheTraduzione' ],
+ 'Translations' => [ 'Traduzioni' ],
+];
/** Japanese (日本語) */
-$specialPageAliases['ja'] = array(
- 'AggregateGroups' => array( '集約群' ),
- 'ImportTranslations' => array( '翻訳取り込み', '翻訳インポート' ),
- 'LanguageStats' => array( '言語統計' ),
- 'Magic' => array( '高度な翻訳' ),
- 'ManageMessageGroups' => array( 'メッセージ群の管理' ),
- 'ManageTranslatorSandbox' => array( '翻訳者サンドボックスの管理' ),
- 'MessageGroupStats' => array( 'メッセージグループ統計' ),
- 'PageTranslation' => array( 'ページ翻訳' ),
- 'PageTranslationDeletePage' => array( 'ページ翻訳削除ページ' ),
- 'SearchTranslations' => array( '翻訳の検索' ),
- 'SupportedLanguages' => array( 'サポートしている言語' ),
- 'Translate' => array( '翻訳' ),
- 'TranslationStats' => array( '翻訳統計' ),
- 'Translations' => array( '翻訳結果' ),
-);
+$specialPageAliases['ja'] = [
+ 'AggregateGroups' => [ '集約群' ],
+ 'ImportTranslations' => [ '翻訳取り込み', '翻訳インポート' ],
+ 'LanguageStats' => [ '言語統計' ],
+ 'Magic' => [ '高度な翻訳' ],
+ 'ManageMessageGroups' => [ 'メッセージ群の管理' ],
+ 'ManageTranslatorSandbox' => [ '翻訳者サンドボックスの管理' ],
+ 'MessageGroupStats' => [ 'メッセージグループ統計' ],
+ 'PageTranslation' => [ 'ページ翻訳' ],
+ 'PageTranslationDeletePage' => [ 'ページ翻訳削除ページ' ],
+ 'SearchTranslations' => [ '翻訳の検索' ],
+ 'SupportedLanguages' => [ 'サポートしている言語' ],
+ 'Translate' => [ '翻訳' ],
+ 'TranslationStats' => [ '翻訳統計' ],
+ 'Translations' => [ '翻訳結果' ],
+];
/** Georgian (ქართული) */
-$specialPageAliases['ka'] = array(
- 'LanguageStats' => array( 'ენის_სტატისტიკა' ),
- 'SupportedLanguages' => array( 'მხარდაჭერილი_ენები' ),
- 'Translate' => array( 'თარგმნა' ),
- 'TranslationStats' => array( 'თარგმნის_სტატისტიკა' ),
- 'Translations' => array( 'თარგმანები' ),
-);
+$specialPageAliases['ka'] = [
+ 'LanguageStats' => [ 'ენის_სტატისტიკა' ],
+ 'SupportedLanguages' => [ 'მხარდაჭერილი_ენები' ],
+ 'Translate' => [ 'თარგმნა' ],
+ 'TranslationStats' => [ 'თარგმნის_სტატისტიკა' ],
+ 'Translations' => [ 'თარგმანები' ],
+];
/** Khmer (ភាសាខ្មែរ) */
-$specialPageAliases['km'] = array(
- 'ImportTranslations' => array( 'ការបកប្រែនាំចូល' ),
- 'LanguageStats' => array( 'ស្ថិតិភាសា' ),
- 'Magic' => array( 'បកប្រែថ្នាក់ខ្ពស់' ),
- 'ManageMessageGroups' => array( 'គ្រប់គ្រងក្រុមសារ' ),
- 'PageTranslation' => array( 'ការបកប្រែទំព័រ' ),
- 'SupportedLanguages' => array( 'ភាសាដែលអាចប្រើបាន' ),
- 'Translate' => array( 'បកប្រែ' ),
- 'TranslationStats' => array( 'ស្ថិតិការបកប្រែ' ),
- 'Translations' => array( 'ការបកប្រែ' ),
-);
+$specialPageAliases['km'] = [
+ 'ImportTranslations' => [ 'ការបកប្រែនាំចូល' ],
+ 'LanguageStats' => [ 'ស្ថិតិភាសា' ],
+ 'Magic' => [ 'បកប្រែថ្នាក់ខ្ពស់' ],
+ 'ManageMessageGroups' => [ 'គ្រប់គ្រងក្រុមសារ' ],
+ 'PageTranslation' => [ 'ការបកប្រែទំព័រ' ],
+ 'SupportedLanguages' => [ 'ភាសាដែលអាចប្រើបាន' ],
+ 'Translate' => [ 'បកប្រែ' ],
+ 'TranslationStats' => [ 'ស្ថិតិការបកប្រែ' ],
+ 'Translations' => [ 'ការបកប្រែ' ],
+];
/** Korean (한국어) */
-$specialPageAliases['ko'] = array(
- 'AggregateGroups' => array( '집계그룹' ),
- 'ImportTranslations' => array( '번역가져오기' ),
- 'LanguageStats' => array( '언어통계' ),
- 'Magic' => array( '고급번역' ),
- 'ManageMessageGroups' => array( '메시지그룹관리' ),
- 'ManageTranslatorSandbox' => array( '번역자연습장관리', '번역연습장' ),
- 'MessageGroupStats' => array( '메시지그룹통계' ),
- 'PageTranslation' => array( '문서번역' ),
- 'PageTranslationDeletePage' => array( '문서번역삭제문서' ),
- 'SearchTranslations' => array( '번역검색', '번역찾기' ),
- 'SupportedLanguages' => array( '지원하는언어' ),
- 'Translate' => array( '번역' ),
- 'TranslationStash' => array( '비공개번역' ),
- 'TranslationStats' => array( '번역통계' ),
- 'Translations' => array( '번역목록' ),
- 'PageMigration' => array( '문서이주' ),
-);
+$specialPageAliases['ko'] = [
+ 'AggregateGroups' => [ '집계그룹' ],
+ 'ImportTranslations' => [ '번역가져오기' ],
+ 'LanguageStats' => [ '언어통계' ],
+ 'Magic' => [ '고급번역' ],
+ 'ManageMessageGroups' => [ '메시지그룹관리' ],
+ 'ManageTranslatorSandbox' => [ '번역자연습장관리', '번역연습장' ],
+ 'MessageGroupStats' => [ '메시지그룹통계' ],
+ 'PageTranslation' => [ '문서번역' ],
+ 'PageTranslationDeletePage' => [ '문서번역삭제문서' ],
+ 'SearchTranslations' => [ '번역검색', '번역찾기' ],
+ 'SupportedLanguages' => [ '지원하는언어' ],
+ 'Translate' => [ '번역' ],
+ 'TranslationStash' => [ '비공개번역' ],
+ 'TranslationStats' => [ '번역통계' ],
+ 'Translations' => [ '번역목록' ],
+ 'PageMigration' => [ '문서이주' ],
+];
/** Colognian (Ripoarisch) */
-$specialPageAliases['ksh'] = array(
- 'LanguageStats' => array( 'Shtatistike_vu_de_Shprooche' ),
- 'Magic' => array( 'Extras', 'Extras Översäze', 'ExtrasÖversäze' ),
- 'Translate' => array( 'Övversäze' ),
- 'TranslationStats' => array( 'Statistik vun fun de Övversäzung', 'Övversäzungszahle', 'Statistik vun fun de Övversäzong', 'Övversäzongszahle' ),
- 'Translations' => array( 'Övversätzunge' ),
-);
+$specialPageAliases['ksh'] = [
+ 'LanguageStats' => [ 'Shtatistike_vu_de_Shprooche' ],
+ 'Magic' => [ 'Extras', 'Extras Översäze', 'ExtrasÖversäze' ],
+ 'Translate' => [ 'Övversäze' ],
+ 'TranslationStats' => [ 'Statistik vun fun de Övversäzung', 'Övversäzungszahle', 'Statistik vun fun de Övversäzong', 'Övversäzongszahle' ],
+ 'Translations' => [ 'Övversätzunge' ],
+];
/** Kurdish (Latin script) (Kurdî (latînî)‎) */
-$specialPageAliases['ku-latn'] = array(
- 'Translate' => array( 'Wergerîne' ),
- 'Translations' => array( 'Werger' ),
-);
+$specialPageAliases['ku-latn'] = [
+ 'Translate' => [ 'Wergerîne' ],
+ 'Translations' => [ 'Werger' ],
+];
/** Cornish (kernowek) */
-$specialPageAliases['kw'] = array(
- 'ImportTranslations' => array( 'YmperthiTreylyansow' ),
- 'LanguageStats' => array( 'StatystygyonYeth' ),
- 'Magic' => array( 'TreylyaAvonsys' ),
- 'PageTranslation' => array( 'TreylyansFolennow' ),
- 'SupportedLanguages' => array( 'YethowSkoodhys' ),
- 'Translate' => array( 'Treylya' ),
- 'TranslationStats' => array( 'StatystygronTreylya' ),
- 'Translations' => array( 'Treylyansow' ),
-);
+$specialPageAliases['kw'] = [
+ 'ImportTranslations' => [ 'YmperthiTreylyansow' ],
+ 'LanguageStats' => [ 'StatystygyonYeth' ],
+ 'Magic' => [ 'TreylyaAvonsys' ],
+ 'PageTranslation' => [ 'TreylyansFolennow' ],
+ 'SupportedLanguages' => [ 'YethowSkoodhys' ],
+ 'Translate' => [ 'Treylya' ],
+ 'TranslationStats' => [ 'StatystygronTreylya' ],
+ 'Translations' => [ 'Treylyansow' ],
+];
/** Luxembourgish (Lëtzebuergesch) */
-$specialPageAliases['lb'] = array(
- 'ImportTranslations' => array( 'Iwwersetzungen_importéieren' ),
- 'LanguageStats' => array( 'Sproochestatistiken' ),
- 'Magic' => array( 'Erweidert_Iwwersetzung' ),
- 'ManageMessageGroups' => array( 'Gruppe_vu_Message_geréieren' ),
- 'ManageTranslatorSandbox' => array( 'Iwwersetzungssandkëscht_geréieren' ),
- 'MessageGroupStats' => array( 'Statistike_vun_de_Gruppe_vu_Messagen' ),
- 'PageTranslation' => array( 'Säiten-Iwwersetzung' ),
- 'PageTranslationDeletePage' => array( 'Läschsäit_fir_Iwwersetzungen' ),
- 'SearchTranslations' => array( 'Iwwersetzunge_sichen' ),
- 'SupportedLanguages' => array( 'Ënnerstetzt_Sproochen' ),
- 'Translate' => array( 'Iwwersetzen' ),
- 'TranslationStats' => array( 'Iwwersetzungsstatistiken' ),
- 'Translations' => array( 'Iwwersetzungen' ),
- 'PageMigration' => array( 'Säite-Migratioun' ),
- 'PagePreparation' => array( 'Säitevirbereedung' ),
-);
+$specialPageAliases['lb'] = [
+ 'ImportTranslations' => [ 'Iwwersetzungen_importéieren' ],
+ 'LanguageStats' => [ 'Sproochestatistiken' ],
+ 'Magic' => [ 'Erweidert_Iwwersetzung' ],
+ 'ManageMessageGroups' => [ 'Gruppe_vu_Message_geréieren' ],
+ 'ManageTranslatorSandbox' => [ 'Iwwersetzungssandkëscht_geréieren' ],
+ 'MessageGroupStats' => [ 'Statistike_vun_de_Gruppe_vu_Messagen' ],
+ 'PageTranslation' => [ 'Säiten-Iwwersetzung' ],
+ 'PageTranslationDeletePage' => [ 'Läschsäit_fir_Iwwersetzungen' ],
+ 'SearchTranslations' => [ 'Iwwersetzunge_sichen' ],
+ 'SupportedLanguages' => [ 'Ënnerstetzt_Sproochen' ],
+ 'Translate' => [ 'Iwwersetzen' ],
+ 'TranslationStats' => [ 'Iwwersetzungsstatistiken' ],
+ 'Translations' => [ 'Iwwersetzungen' ],
+ 'PageMigration' => [ 'Säite-Migratioun' ],
+ 'PagePreparation' => [ 'Säitevirbereedung' ],
+];
/** Lombard (lumbaart) */
-$specialPageAliases['lmo'] = array(
- 'Translate' => array( 'Volta' ),
- 'Translations' => array( 'Tradüzion' ),
-);
+$specialPageAliases['lmo'] = [
+ 'Translate' => [ 'Volta' ],
+ 'Translations' => [ 'Tradüzion' ],
+];
/** Lithuanian (lietuvių) */
-$specialPageAliases['lt'] = array(
- 'PageTranslation' => array( 'Puslapio_vertimas' ),
- 'Translate' => array( 'Vertimas' ),
-);
+$specialPageAliases['lt'] = [
+ 'PageTranslation' => [ 'Puslapio_vertimas' ],
+ 'Translate' => [ 'Vertimas' ],
+];
/** Literary Chinese (文言) */
-$specialPageAliases['lzh'] = array(
- 'Translate' => array( '譯' ),
-);
+$specialPageAliases['lzh'] = [
+ 'Translate' => [ '譯' ],
+];
/** Macedonian (македонски) */
-$specialPageAliases['mk'] = array(
- 'AggregateGroups' => array( 'ЗбирниГрупи' ),
- 'ImportTranslations' => array( 'УвезиПреводи' ),
- 'LanguageStats' => array( 'СтатистикиЗаЈазик' ),
- 'Magic' => array( 'НапредноПреведување' ),
- 'ManageMessageGroups' => array( 'РаководењеСоГрупиНаПораки' ),
- 'ManageTranslatorSandbox' => array( 'РаководиПреведувачкиПесочник' ),
- 'MessageGroupStats' => array( 'СтатистикиЗаГупиПораки' ),
- 'PageTranslation' => array( 'ПреводНаСтраницата' ),
- 'PageTranslationDeletePage' => array( 'ПреводНаСтраницаИзбришиСтраница' ),
- 'SearchTranslations' => array( 'ПребарајПреводи' ),
- 'SupportedLanguages' => array( 'ПоддржаниЈазици' ),
- 'Translate' => array( 'Преведување' ),
- 'TranslationStash' => array( 'ПреведувачкиСклад' ),
- 'TranslationStats' => array( 'СтатистикиЗаПреведување' ),
- 'Translations' => array( 'Преводи' ),
- 'PageMigration' => array( 'СелењеСтраници' ),
- 'PagePreparation' => array( 'ПодготовнаНаСтраници' ),
-);
+$specialPageAliases['mk'] = [
+ 'AggregateGroups' => [ 'ЗбирниГрупи' ],
+ 'ImportTranslations' => [ 'УвезиПреводи' ],
+ 'LanguageStats' => [ 'СтатистикиЗаЈазик' ],
+ 'Magic' => [ 'НапредноПреведување' ],
+ 'ManageMessageGroups' => [ 'РаководењеСоГрупиНаПораки' ],
+ 'ManageTranslatorSandbox' => [ 'РаководиПреведувачкиПесочник' ],
+ 'MessageGroupStats' => [ 'СтатистикиЗаГупиПораки' ],
+ 'PageTranslation' => [ 'ПреводНаСтраницата' ],
+ 'PageTranslationDeletePage' => [ 'ПреводНаСтраницаИзбришиСтраница' ],
+ 'SearchTranslations' => [ 'ПребарајПреводи' ],
+ 'SupportedLanguages' => [ 'ПоддржаниЈазици' ],
+ 'Translate' => [ 'Преведување' ],
+ 'TranslationStash' => [ 'ПреведувачкиСклад' ],
+ 'TranslationStats' => [ 'СтатистикиЗаПреведување' ],
+ 'Translations' => [ 'Преводи' ],
+ 'PageMigration' => [ 'СелењеСтраници' ],
+ 'PagePreparation' => [ 'ПодготовнаНаСтраници' ],
+];
/** Malayalam (മലയാളം) */
-$specialPageAliases['ml'] = array(
- 'ImportTranslations' => array( 'പരിഭാഷാ_ഇറക്കുമതി' ),
- 'LanguageStats' => array( 'ഭാഷാസ്ഥിതിവിവരം' ),
- 'Magic' => array( 'വിപുലീകൃതപരിഭാഷ', 'മായാജാലം' ),
- 'ManageMessageGroups' => array( 'സന്ദേശസംഘങ്ങളുടെകൈകാര്യം' ),
- 'MessageGroupStats' => array( 'സന്ദേശഗണസ്ഥിതിവിവരം' ),
- 'PageTranslation' => array( 'താളിന്റെപരിഭാഷ' ),
- 'SearchTranslations' => array( 'പരിഭാഷകളിൽതിരയുക' ),
- 'SupportedLanguages' => array( 'പിന്തുണയുള്ളഭാഷകൾ' ),
- 'Translate' => array( 'പരിഭാഷ' ),
- 'TranslationStats' => array( 'പരിഭാഷാസ്ഥിതിവിവരം' ),
- 'Translations' => array( 'പരിഭാഷകൾ' ),
-);
+$specialPageAliases['ml'] = [
+ 'ImportTranslations' => [ 'പരിഭാഷാ_ഇറക്കുമതി' ],
+ 'LanguageStats' => [ 'ഭാഷാസ്ഥിതിവിവരം' ],
+ 'Magic' => [ 'വിപുലീകൃതപരിഭാഷ', 'മായാജാലം' ],
+ 'ManageMessageGroups' => [ 'സന്ദേശസംഘങ്ങളുടെകൈകാര്യം' ],
+ 'MessageGroupStats' => [ 'സന്ദേശഗണസ്ഥിതിവിവരം' ],
+ 'PageTranslation' => [ 'താളിന്റെപരിഭാഷ' ],
+ 'SearchTranslations' => [ 'പരിഭാഷകളിൽതിരയുക' ],
+ 'SupportedLanguages' => [ 'പിന്തുണയുള്ളഭാഷകൾ' ],
+ 'Translate' => [ 'പരിഭാഷ' ],
+ 'TranslationStats' => [ 'പരിഭാഷാസ്ഥിതിവിവരം' ],
+ 'Translations' => [ 'പരിഭാഷകൾ' ],
+];
/** Marathi (मराठी) */
-$specialPageAliases['mr'] = array(
- 'ImportTranslations' => array( 'भाषांतराआयात' ),
- 'LanguageStats' => array( 'भाषासांख्यिकी' ),
- 'Magic' => array( 'प्रगतभाषांतर', 'जादुई' ),
- 'PageTranslation' => array( 'पृष्ठभाषांतर', 'पृष्ठअनुवाद' ),
- 'SearchTranslations' => array( 'अनुवाद_शोधा' ),
- 'Translate' => array( 'भाषांतर' ),
- 'TranslationStats' => array( 'भाषांतरसांख्यिकी' ),
- 'Translations' => array( 'भाषांतरणे' ),
-);
+$specialPageAliases['mr'] = [
+ 'ImportTranslations' => [ 'भाषांतराआयात' ],
+ 'LanguageStats' => [ 'भाषासांख्यिकी' ],
+ 'Magic' => [ 'प्रगतभाषांतर', 'जादुई' ],
+ 'PageTranslation' => [ 'पृष्ठभाषांतर', 'पृष्ठअनुवाद' ],
+ 'SearchTranslations' => [ 'अनुवाद_शोधा' ],
+ 'Translate' => [ 'भाषांतर' ],
+ 'TranslationStats' => [ 'भाषांतरसांख्यिकी' ],
+ 'Translations' => [ 'भाषांतरणे' ],
+];
/** Malay (Bahasa Melayu) */
-$specialPageAliases['ms'] = array(
- 'Translate' => array( 'Terjemah' ),
- 'Translations' => array( 'Terjemahan' ),
-);
+$specialPageAliases['ms'] = [
+ 'Translate' => [ 'Terjemah' ],
+ 'Translations' => [ 'Terjemahan' ],
+];
/** Maltese (Malti) */
-$specialPageAliases['mt'] = array(
- 'LanguageStats' => array( 'StatistikaLingwa' ),
- 'Magic' => array( 'TraduzzjoniAvvanzata' ),
- 'PageTranslation' => array( 'TraduzzjoniPaġna' ),
- 'Translate' => array( 'Traduzzjoni' ),
- 'TranslationStats' => array( 'StatistikaTraduzzjoni' ),
- 'Translations' => array( 'Traduzzjonijiet' ),
-);
+$specialPageAliases['mt'] = [
+ 'LanguageStats' => [ 'StatistikaLingwa' ],
+ 'Magic' => [ 'TraduzzjoniAvvanzata' ],
+ 'PageTranslation' => [ 'TraduzzjoniPaġna' ],
+ 'Translate' => [ 'Traduzzjoni' ],
+ 'TranslationStats' => [ 'StatistikaTraduzzjoni' ],
+ 'Translations' => [ 'Traduzzjonijiet' ],
+];
/** Mirandese (Mirandés) */
-$specialPageAliases['mwl'] = array(
- 'Magic' => array( 'Traduçon Abançada' ),
- 'Translate' => array( 'Traduzir' ),
- 'TranslationStats' => array( 'Stado de la traduçon' ),
- 'Translations' => array( 'Traduçones' ),
-);
+$specialPageAliases['mwl'] = [
+ 'Magic' => [ 'Traduçon Abançada' ],
+ 'Translate' => [ 'Traduzir' ],
+ 'TranslationStats' => [ 'Stado de la traduçon' ],
+ 'Translations' => [ 'Traduçones' ],
+];
/** Erzya (эрзянь) */
-$specialPageAliases['myv'] = array(
- 'Magic' => array( 'ПревейстэЮтавтомс', 'Магия' ),
- 'Translate' => array( 'Ютавтомс' ),
- 'TranslationStats' => array( 'ЮтавтомадоСтатистика' ),
-);
+$specialPageAliases['myv'] = [
+ 'Magic' => [ 'ПревейстэЮтавтомс', 'Магия' ],
+ 'Translate' => [ 'Ютавтомс' ],
+ 'TranslationStats' => [ 'ЮтавтомадоСтатистика' ],
+];
/** Nāhuatl (Nāhuatl) */
-$specialPageAliases['nah'] = array(
- 'Translate' => array( 'Tlahtōlcuepāz', 'Traducir' ),
-);
+$specialPageAliases['nah'] = [
+ 'Translate' => [ 'Tlahtōlcuepāz', 'Traducir' ],
+];
/** Norwegian Bokmål (norsk bokmål) */
-$specialPageAliases['nb'] = array(
- 'AggregateGroups' => array( 'Samlingsgrupper' ),
- 'ImportTranslations' => array( 'Importer_oversettelser' ),
- 'LanguageStats' => array( 'Språkstatistikk' ),
- 'Magic' => array( 'Avansert_oversettelse', 'Avansert_oversetting', 'Magi' ),
- 'ManageMessageGroups' => array( 'Behandle_meldingsgrupper' ),
- 'MessageGroupStats' => array( 'Meldingsgruppestatistikk' ),
- 'PageTranslation' => array( 'Sideoversettelse' ),
- 'SearchTranslations' => array( 'Søk_i_oversettelser' ),
- 'SupportedLanguages' => array( 'Støttede_språk' ),
- 'Translate' => array( 'Oversett' ),
- 'TranslationStats' => array( 'Oversettelsesstatistikk' ),
- 'Translations' => array( 'Oversettelser' ),
-);
+$specialPageAliases['nb'] = [
+ 'AggregateGroups' => [ 'Samlingsgrupper' ],
+ 'ImportTranslations' => [ 'Importer_oversettelser' ],
+ 'LanguageStats' => [ 'Språkstatistikk' ],
+ 'Magic' => [ 'Avansert_oversettelse', 'Avansert_oversetting', 'Magi' ],
+ 'ManageMessageGroups' => [ 'Behandle_meldingsgrupper' ],
+ 'MessageGroupStats' => [ 'Meldingsgruppestatistikk' ],
+ 'PageTranslation' => [ 'Sideoversettelse' ],
+ 'SearchTranslations' => [ 'Søk_i_oversettelser' ],
+ 'SupportedLanguages' => [ 'Støttede_språk' ],
+ 'Translate' => [ 'Oversett' ],
+ 'TranslationStats' => [ 'Oversettelsesstatistikk' ],
+ 'Translations' => [ 'Oversettelser' ],
+];
/** Low German (Plattdüütsch) */
-$specialPageAliases['nds'] = array(
- 'Translate' => array( 'Översetten' ),
-);
+$specialPageAliases['nds'] = [
+ 'Translate' => [ 'Översetten' ],
+];
/** Low Saxon (Netherlands) (Nedersaksies) */
-$specialPageAliases['nds-nl'] = array(
- 'AggregateGroups' => array( 'Samen-evoegden_groepen' ),
- 'ImportTranslations' => array( 'Vertalingen_invoeren' ),
- 'LanguageStats' => array( 'Taalstaotistieken' ),
- 'Magic' => array( 'Uutgebreid_vertalen' ),
- 'ManageMessageGroups' => array( 'Berichtengroepen_beheren' ),
- 'ManageTranslatorSandbox' => array( 'Vertalers_zaandkule_beheren' ),
- 'PageTranslation' => array( 'Ziedvertaling' ),
- 'PageTranslationDeletePage' => array( 'Ziedvertaling_zied_vortdoon' ),
- 'SearchTranslations' => array( 'Vertalingen_zeuken' ),
- 'SupportedLanguages' => array( 'Ondersteunde_talen' ),
- 'Translate' => array( 'Vertalen' ),
- 'TranslationStats' => array( 'Vertaalstaotistieken' ),
- 'Translations' => array( 'Vertalingen' ),
-);
+$specialPageAliases['nds-nl'] = [
+ 'AggregateGroups' => [ 'Samen-evoegden_groepen' ],
+ 'ImportTranslations' => [ 'Vertalingen_invoeren' ],
+ 'LanguageStats' => [ 'Taalstaotistieken' ],
+ 'Magic' => [ 'Uutgebreid_vertalen' ],
+ 'ManageMessageGroups' => [ 'Berichtengroepen_beheren' ],
+ 'ManageTranslatorSandbox' => [ 'Vertalers_zaandkule_beheren' ],
+ 'PageTranslation' => [ 'Ziedvertaling' ],
+ 'PageTranslationDeletePage' => [ 'Ziedvertaling_zied_vortdoon' ],
+ 'SearchTranslations' => [ 'Vertalingen_zeuken' ],
+ 'SupportedLanguages' => [ 'Ondersteunde_talen' ],
+ 'Translate' => [ 'Vertalen' ],
+ 'TranslationStats' => [ 'Vertaalstaotistieken' ],
+ 'Translations' => [ 'Vertalingen' ],
+];
/** Dutch (Nederlands) */
-$specialPageAliases['nl'] = array(
- 'AggregateGroups' => array( 'SamengevoegdeGroepen' ),
- 'ImportTranslations' => array( 'VertalingenImporteren' ),
- 'LanguageStats' => array( 'Taalstatistieken' ),
- 'Magic' => array( 'UitgebreidVertalen', 'VertalenUitgebreid' ),
- 'ManageMessageGroups' => array( 'BerichtengroepenBeheren' ),
- 'ManageTranslatorSandbox' => array( 'VertalerszandbakBeheren' ),
- 'MessageGroupStats' => array( 'Berichtengroepstatistieken' ),
- 'PageTranslation' => array( 'Paginavertaling' ),
- 'PageTranslationDeletePage' => array( 'PaginavertalingpaginaVerwijderen' ),
- 'SearchTranslations' => array( 'VertalingenZoeken' ),
- 'SupportedLanguages' => array( 'OndersteundeTalen' ),
- 'Translate' => array( 'Vertalen' ),
- 'TranslationStats' => array( 'Vertaalstatistieken', 'Vertalingsstatistieken' ),
- 'Translations' => array( 'Vertalingen' ),
- 'PageMigration' => array( 'PaginaMigreren' ),
-);
+$specialPageAliases['nl'] = [
+ 'AggregateGroups' => [ 'SamengevoegdeGroepen' ],
+ 'ImportTranslations' => [ 'VertalingenImporteren' ],
+ 'LanguageStats' => [ 'Taalstatistieken' ],
+ 'Magic' => [ 'UitgebreidVertalen', 'VertalenUitgebreid' ],
+ 'ManageMessageGroups' => [ 'BerichtengroepenBeheren' ],
+ 'ManageTranslatorSandbox' => [ 'VertalerszandbakBeheren' ],
+ 'MessageGroupStats' => [ 'Berichtengroepstatistieken' ],
+ 'PageTranslation' => [ 'Paginavertaling' ],
+ 'PageTranslationDeletePage' => [ 'PaginavertalingpaginaVerwijderen' ],
+ 'SearchTranslations' => [ 'VertalingenZoeken' ],
+ 'SupportedLanguages' => [ 'OndersteundeTalen' ],
+ 'Translate' => [ 'Vertalen' ],
+ 'TranslationStats' => [ 'Vertaalstatistieken', 'Vertalingsstatistieken' ],
+ 'Translations' => [ 'Vertalingen' ],
+ 'PageMigration' => [ 'PaginaMigreren' ],
+];
/** Norwegian Nynorsk (norsk nynorsk) */
-$specialPageAliases['nn'] = array(
- 'Magic' => array( 'Avansert_omsetjing' ),
- 'Translate' => array( 'Set_om' ),
- 'Translations' => array( 'Omsetjingar' ),
-);
+$specialPageAliases['nn'] = [
+ 'Magic' => [ 'Avansert_omsetjing' ],
+ 'Translate' => [ 'Set_om' ],
+ 'Translations' => [ 'Omsetjingar' ],
+];
/** Occitan (occitan) */
-$specialPageAliases['oc'] = array(
- 'Magic' => array( 'Traduccion avançada', 'Traduccionavançada', 'Traduccion avancada', 'Traduccionavancada' ),
- 'Translate' => array( 'Traduire', 'Tradusir' ),
- 'Translations' => array( 'Traduccions', 'Reviradas' ),
-);
+$specialPageAliases['oc'] = [
+ 'Magic' => [ 'Traduccion avançada', 'Traduccionavançada', 'Traduccion avancada', 'Traduccionavancada' ],
+ 'Translate' => [ 'Traduire', 'Tradusir' ],
+ 'Translations' => [ 'Traduccions', 'Reviradas' ],
+];
/** Oriya (ଓଡ଼ିଆ) */
-$specialPageAliases['or'] = array(
- 'Translate' => array( 'ଅନୁବାଦ' ),
- 'Translations' => array( 'ଅନୁବାଦସମୂହ' ),
-);
+$specialPageAliases['or'] = [
+ 'Translate' => [ 'ଅନୁବାଦ' ],
+ 'Translations' => [ 'ଅନୁବାଦସମୂହ' ],
+];
/** Punjabi (ਪੰਜਾਬੀ) */
-$specialPageAliases['pa'] = array(
- 'Magic' => array( 'ਉੱਚੇ_ਦਰਜੇ_ਦਾ_ਉਲਥਾ', 'ਜਾਦੂ' ),
- 'PageTranslation' => array( 'ਸਫ਼ੇ_ਦਾ_ਉਲਥਾ', 'ਸਫ਼ੇ_ਦਾ_ਤਰਜਮਾ' ),
- 'Translate' => array( 'ਉਲਥਾਓ', 'ਤਰਜਮਾ_ਕਰੋ' ),
-);
+$specialPageAliases['pa'] = [
+ 'Magic' => [ 'ਉੱਚੇ_ਦਰਜੇ_ਦਾ_ਉਲਥਾ', 'ਜਾਦੂ' ],
+ 'PageTranslation' => [ 'ਸਫ਼ੇ_ਦਾ_ਉਲਥਾ', 'ਸਫ਼ੇ_ਦਾ_ਤਰਜਮਾ' ],
+ 'Translate' => [ 'ਉਲਥਾਓ', 'ਤਰਜਮਾ_ਕਰੋ' ],
+];
/** Polish (polski) */
-$specialPageAliases['pl'] = array(
- 'AggregateGroups' => array( 'Grupy_zbiorcze' ),
- 'ImportTranslations' => array( 'Import_tłumaczeń' ),
- 'LanguageStats' => array( 'Statystyka_językowa' ),
- 'Magic' => array( 'Rozszerzone_tłumaczenie_MediaWiki' ),
- 'ManageMessageGroups' => array( 'Zarządzanie_grupami_komunikatów' ),
- 'PageTranslation' => array( 'Tłumaczenie_strony' ),
- 'SupportedLanguages' => array( 'Wspierane_języki' ),
- 'Translate' => array( 'Przetłumacz' ),
- 'TranslationStats' => array( 'Statystyki_tłumaczenia' ),
- 'Translations' => array( 'Tłumaczenia' ),
- 'PageMigration' => array( 'Migracja_strony' ),
- 'PagePreparation' => array( 'Przygotowanie_strony' ),
-);
+$specialPageAliases['pl'] = [
+ 'AggregateGroups' => [ 'Grupy_zbiorcze' ],
+ 'ImportTranslations' => [ 'Import_tłumaczeń' ],
+ 'LanguageStats' => [ 'Statystyka_językowa' ],
+ 'Magic' => [ 'Rozszerzone_tłumaczenie_MediaWiki' ],
+ 'ManageMessageGroups' => [ 'Zarządzanie_grupami_komunikatów' ],
+ 'PageTranslation' => [ 'Tłumaczenie_strony' ],
+ 'SupportedLanguages' => [ 'Wspierane_języki' ],
+ 'Translate' => [ 'Przetłumacz' ],
+ 'TranslationStats' => [ 'Statystyki_tłumaczenia' ],
+ 'Translations' => [ 'Tłumaczenia' ],
+ 'PageMigration' => [ 'Migracja_strony' ],
+ 'PagePreparation' => [ 'Przygotowanie_strony' ],
+];
/** Pashto (پښتو) */
-$specialPageAliases['ps'] = array(
- 'Magic' => array( 'پرمختللې ژباړه، کوډګريز' ),
- 'Translate' => array( 'ژباړل' ),
- 'Translations' => array( 'ژباړې' ),
-);
+$specialPageAliases['ps'] = [
+ 'Magic' => [ 'پرمختللې ژباړه، کوډګريز' ],
+ 'Translate' => [ 'ژباړل' ],
+ 'Translations' => [ 'ژباړې' ],
+];
/** Portuguese (português) */
-$specialPageAliases['pt'] = array(
- 'ImportTranslations' => array( 'Importar_traduções' ),
- 'LanguageStats' => array( 'Estatísticas_de_línguas' ),
- 'Magic' => array( 'Tradução_avançada' ),
- 'PageTranslation' => array( 'Tradução_de_páginas' ),
- 'Translate' => array( 'Traduzir' ),
- 'TranslationStats' => array( 'Estatísticas_de_traduções' ),
- 'Translations' => array( 'Traduções' ),
-);
+$specialPageAliases['pt'] = [
+ 'ImportTranslations' => [ 'Importar_traduções' ],
+ 'LanguageStats' => [ 'Estatísticas_de_línguas' ],
+ 'Magic' => [ 'Tradução_avançada' ],
+ 'PageTranslation' => [ 'Tradução_de_páginas' ],
+ 'Translate' => [ 'Traduzir' ],
+ 'TranslationStats' => [ 'Estatísticas_de_traduções' ],
+ 'Translations' => [ 'Traduções' ],
+];
/** Brazilian Portuguese (português do Brasil) */
-$specialPageAliases['pt-br'] = array(
- 'Magic' => array( 'Tradução_avançada' ),
- 'Translate' => array( 'Traduzir' ),
- 'TranslationStats' => array( 'Estado_da_tradução', 'Status_da_tradução' ),
-);
+$specialPageAliases['pt-br'] = [
+ 'Magic' => [ 'Tradução_avançada' ],
+ 'Translate' => [ 'Traduzir' ],
+ 'TranslationStats' => [ 'Estado_da_tradução', 'Status_da_tradução' ],
+];
/** Quechua (Runa Simi) */
-$specialPageAliases['qu'] = array(
- 'Magic' => array( 'NawparikusqaTikray' ),
- 'ManageTranslatorSandbox' => array( 'TikranaPukllana' ),
- 'Translate' => array( 'Tikray' ),
-);
+$specialPageAliases['qu'] = [
+ 'Magic' => [ 'NawparikusqaTikray' ],
+ 'ManageTranslatorSandbox' => [ 'TikranaPukllana' ],
+ 'Translate' => [ 'Tikray' ],
+];
/** Romanian (română) */
-$specialPageAliases['ro'] = array(
- 'ImportTranslations' => array( 'Importare_traduceri' ),
- 'LanguageStats' => array( 'Statistici_limbă' ),
- 'Magic' => array( 'Traducere_avansată' ),
- 'PageTranslation' => array( 'Traducere_pagină' ),
- 'Translate' => array( 'Traducere' ),
- 'TranslationStats' => array( 'Statistici_traduceri' ),
- 'Translations' => array( 'Traduceri' ),
-);
+$specialPageAliases['ro'] = [
+ 'ImportTranslations' => [ 'Importare_traduceri' ],
+ 'LanguageStats' => [ 'Statistici_limbă' ],
+ 'Magic' => [ 'Traducere_avansată' ],
+ 'PageTranslation' => [ 'Traducere_pagină' ],
+ 'Translate' => [ 'Traducere' ],
+ 'TranslationStats' => [ 'Statistici_traduceri' ],
+ 'Translations' => [ 'Traduceri' ],
+];
/** Russian (русский) */
-$specialPageAliases['ru'] = array(
- 'AggregateGroups' => array( 'Агрегированные_группы' ),
- 'ImportTranslations' => array( 'Импорт_переводов' ),
- 'LanguageStats' => array( 'Статистика_языка' ),
- 'Magic' => array( 'Расширенный_перевод' ),
- 'ManageMessageGroups' => array( 'Управление_группами_сообщений' ),
- 'MessageGroupStats' => array( 'Статистика_группы_сообщений' ),
- 'PageTranslation' => array( 'Перевод_страниц' ),
- 'PageTranslationDeletePage' => array( 'Удаление_переводимой_страницы' ),
- 'SearchTranslations' => array( 'Поиск_переводов' ),
- 'SupportedLanguages' => array( 'Поддерживаемые_языки' ),
- 'Translate' => array( 'Перевести' ),
- 'TranslationStats' => array( 'Статистика_переводов' ),
- 'Translations' => array( 'Переводы' ),
-);
+$specialPageAliases['ru'] = [
+ 'AggregateGroups' => [ 'Агрегированные_группы' ],
+ 'ImportTranslations' => [ 'Импорт_переводов' ],
+ 'LanguageStats' => [ 'Статистика_языка' ],
+ 'Magic' => [ 'Расширенный_перевод' ],
+ 'ManageMessageGroups' => [ 'Управление_группами_сообщений' ],
+ 'MessageGroupStats' => [ 'Статистика_группы_сообщений' ],
+ 'PageTranslation' => [ 'Перевод_страниц' ],
+ 'PageTranslationDeletePage' => [ 'Удаление_переводимой_страницы' ],
+ 'SearchTranslations' => [ 'Поиск_переводов' ],
+ 'SupportedLanguages' => [ 'Поддерживаемые_языки' ],
+ 'Translate' => [ 'Перевести' ],
+ 'TranslationStats' => [ 'Статистика_переводов' ],
+ 'Translations' => [ 'Переводы' ],
+];
/** Sanskrit (संस्कृतम्) */
-$specialPageAliases['sa'] = array(
- 'LanguageStats' => array( 'भाषासांख्यिकी' ),
- 'Magic' => array( 'प्रगतभाषांतरमाया' ),
- 'Translate' => array( 'भाषांतर' ),
- 'TranslationStats' => array( 'भाषांतरसांख्यिकी' ),
- 'Translations' => array( 'भाषांतरानि' ),
-);
+$specialPageAliases['sa'] = [
+ 'LanguageStats' => [ 'भाषासांख्यिकी' ],
+ 'Magic' => [ 'प्रगतभाषांतरमाया' ],
+ 'Translate' => [ 'भाषांतर' ],
+ 'TranslationStats' => [ 'भाषांतरसांख्यिकी' ],
+ 'Translations' => [ 'भाषांतरानि' ],
+];
/** Sicilian (sicilianu) */
-$specialPageAliases['scn'] = array(
- 'AggregateGroups' => array( 'GruppiAggregati' ),
- 'ImportTranslations' => array( 'ImportaTraduzioni' ),
- 'LanguageStats' => array( 'StatisticheLingua' ),
- 'Magic' => array( 'TraduciAvanzato' ),
- 'ManageMessageGroups' => array( 'GestisciGruppiMessaggio' ),
- 'MessageGroupStats' => array( 'MessaggioGruppoStat' ),
- 'PageTranslation' => array( 'TraduzionePagina' ),
- 'SupportedLanguages' => array( 'LingueSupportate' ),
- 'Translate' => array( 'Traduci' ),
- 'TranslationStats' => array( 'StatisticheTraduzione' ),
- 'Translations' => array( 'Traduzioni' ),
-);
+$specialPageAliases['scn'] = [
+ 'AggregateGroups' => [ 'GruppiAggregati' ],
+ 'ImportTranslations' => [ 'ImportaTraduzioni' ],
+ 'LanguageStats' => [ 'StatisticheLingua' ],
+ 'Magic' => [ 'TraduciAvanzato' ],
+ 'ManageMessageGroups' => [ 'GestisciGruppiMessaggio' ],
+ 'MessageGroupStats' => [ 'MessaggioGruppoStat' ],
+ 'PageTranslation' => [ 'TraduzionePagina' ],
+ 'SupportedLanguages' => [ 'LingueSupportate' ],
+ 'Translate' => [ 'Traduci' ],
+ 'TranslationStats' => [ 'StatisticheTraduzione' ],
+ 'Translations' => [ 'Traduzioni' ],
+];
/** Sinhala (සිංහල) */
-$specialPageAliases['si'] = array(
- 'Translate' => array( 'පරිවර්තනය' ),
-);
+$specialPageAliases['si'] = [
+ 'Translate' => [ 'පරිවර්තනය' ],
+];
/** Slovak (slovenčina) */
-$specialPageAliases['sk'] = array(
- 'LanguageStats' => array( 'ŠtatistikyJazykov' ),
- 'Magic' => array( 'RozšírenéPreložiť' ),
- 'PageTranslation' => array( 'PrekladStránky' ),
- 'Translate' => array( 'Preložiť' ),
- 'TranslationStats' => array( 'ŠtatistikyPrekladov' ),
- 'Translations' => array( 'Preklady' ),
-);
+$specialPageAliases['sk'] = [
+ 'LanguageStats' => [ 'ŠtatistikyJazykov' ],
+ 'Magic' => [ 'RozšírenéPreložiť' ],
+ 'PageTranslation' => [ 'PrekladStránky' ],
+ 'Translate' => [ 'Preložiť' ],
+ 'TranslationStats' => [ 'ŠtatistikyPrekladov' ],
+ 'Translations' => [ 'Preklady' ],
+];
/** Albanian (shqip) */
-$specialPageAliases['sq'] = array(
- 'Translate' => array( 'Përkthe' ),
-);
-
-/** Serbian (Cyrillic script) (српски (ћирилица)‎) */
-$specialPageAliases['sr-ec'] = array(
- 'ImportTranslations' => array( 'Увоз_превода' ),
- 'LanguageStats' => array( 'Статистика_језика' ),
- 'Magic' => array( 'Напредно_превођење' ),
- 'ManageMessageGroups' => array( 'Управљање_групама_порука' ),
- 'PageTranslation' => array( 'Превод_странице' ),
- 'SupportedLanguages' => array( 'Подржани_језици' ),
- 'Translate' => array( 'Преведи' ),
- 'TranslationStats' => array( 'Статистика_превода' ),
- 'Translations' => array( 'Преводи' ),
-);
+$specialPageAliases['sq'] = [
+ 'Translate' => [ 'Përkthe' ],
+];
+
+/** Serbian (Cyrillic script) (српски (ћирилица)) */
+$specialPageAliases['sr-ec'] = [
+ 'AggregateGroups' => [ 'Спојене_групе' ],
+ 'ImportTranslations' => [ 'Увоз_превода' ],
+ 'ExportTranslations' => [ 'Извоз_превода' ],
+ 'LanguageStats' => [ 'Статистика_језика' ],
+ 'Magic' => [ 'Напредно_превођење' ],
+ 'ManageMessageGroups' => [ 'Управљање_групама_порука' ],
+ 'ManageTranslatorSandbox' => [ 'Управљање_песком_преводиоца', 'Песак_за_преводе' ],
+ 'MessageGroupStats' => [ 'Статистике_група_превода' ],
+ 'PageTranslation' => [ 'Превод_странице' ],
+ 'PageTranslationDeletePage' => [ 'Обриши_страницу_превода' ],
+ 'SearchTranslations' => [ 'Претрага_превода' ],
+ 'SupportedLanguages' => [ 'Подржани_језици' ],
+ 'Translate' => [ 'Преведи' ],
+ 'TranslationStash' => [ 'Складиште_превода' ],
+ 'TranslationStats' => [ 'Статистика_превода' ],
+ 'Translations' => [ 'Преводи' ],
+ 'PageMigration' => [ 'Сеоба_странице' ],
+ 'PagePreparation' => [ 'Припрема_странице' ],
+];
+
+/** Serbian (Latin script) (srpski (latinica)) */
+$specialPageAliases['sr-el'] = [
+ 'AggregateGroups' => [ 'Spojene_grupe' ],
+ 'ImportTranslations' => [ 'Uvoz_prevoda' ],
+ 'ExportTranslations' => [ 'Izvoz_prevoda' ],
+ 'LanguageStats' => [ 'Statistika_jezika' ],
+ 'Magic' => [ 'Napredno_prevođenje' ],
+ 'ManageMessageGroups' => [ 'Upravljanje_grupama_poruka' ],
+ 'ManageTranslatorSandbox' => [ 'Upravljanje_peskom_prevodioca', 'Pesak_za_prevode' ],
+ 'MessageGroupStats' => [ 'Statistike_grupa_prevoda' ],
+ 'PageTranslation' => [ 'Prevod_stranice' ],
+ 'PageTranslationDeletePage' => [ 'Obriši_stranicu_prevoda' ],
+ 'SearchTranslations' => [ 'Pretraga_prevoda' ],
+ 'SupportedLanguages' => [ 'Podržani_jezici' ],
+ 'Translate' => [ 'Prevedi' ],
+ 'TranslationStash' => [ 'Skladište_prevoda' ],
+ 'TranslationStats' => [ 'Statistika_prevoda' ],
+ 'Translations' => [ 'Prevodi' ],
+ 'PageMigration' => [ 'Seoba_stranice' ],
+ 'PagePreparation' => [ 'Priprema_stranice' ],
+];
/** Sundanese (Basa Sunda) */
-$specialPageAliases['su'] = array(
- 'LanguageStats' => array( 'StatBasa' ),
- 'Magic' => array( 'TarjamahTeleb' ),
- 'Translate' => array( 'Tarjamah' ),
- 'TranslationStats' => array( 'StatTarjamah' ),
- 'Translations' => array( 'Tarjamahan' ),
-);
+$specialPageAliases['su'] = [
+ 'LanguageStats' => [ 'StatBasa' ],
+ 'Magic' => [ 'TarjamahTeleb' ],
+ 'Translate' => [ 'Tarjamah' ],
+ 'TranslationStats' => [ 'StatTarjamah' ],
+ 'Translations' => [ 'Tarjamahan' ],
+];
/** Swedish (svenska) */
-$specialPageAliases['sv'] = array(
- 'ImportTranslations' => array( 'Importera_översättningar' ),
- 'LanguageStats' => array( 'Språkstatistik' ),
- 'Magic' => array( 'Avancerad_översättning' ),
- 'Translate' => array( 'Översätt' ),
- 'TranslationStats' => array( 'Översättningsstatistik' ),
- 'Translations' => array( 'Översättningar' ),
- 'PageMigration' => array( 'Sidmigrering' ),
-);
+$specialPageAliases['sv'] = [
+ 'ImportTranslations' => [ 'Importera_översättningar' ],
+ 'LanguageStats' => [ 'Språkstatistik' ],
+ 'Magic' => [ 'Avancerad_översättning' ],
+ 'Translate' => [ 'Översätt' ],
+ 'TranslationStats' => [ 'Översättningsstatistik' ],
+ 'Translations' => [ 'Översättningar' ],
+ 'PageMigration' => [ 'Sidmigrering' ],
+];
/** Swahili (Kiswahili) */
-$specialPageAliases['sw'] = array(
- 'Magic' => array( 'TasfiriyaJuu', 'Uchawi' ),
- 'Translate' => array( 'Tafsiri' ),
- 'TranslationStats' => array( 'TakwimuzaTafsiri' ),
- 'Translations' => array( 'Tafsiri' ),
-);
+$specialPageAliases['sw'] = [
+ 'Magic' => [ 'TasfiriyaJuu', 'Uchawi' ],
+ 'Translate' => [ 'Tafsiri' ],
+ 'TranslationStats' => [ 'TakwimuzaTafsiri' ],
+ 'Translations' => [ 'Tafsiri' ],
+];
/** Telugu (తెలుగు) */
-$specialPageAliases['te'] = array(
- 'ImportTranslations' => array( 'అనువాదాలదిగుమతి' ),
- 'LanguageStats' => array( 'భాషాలెక్కలు' ),
- 'PageTranslation' => array( 'పేజిఅనువాదము' ),
- 'Translate' => array( 'అనువాదం' ),
- 'TranslationStats' => array( 'అనువాదలెక్కలు' ),
- 'Translations' => array( 'అనువాదాలు' ),
-);
+$specialPageAliases['te'] = [
+ 'ImportTranslations' => [ 'అనువాదాలదిగుమతి' ],
+ 'LanguageStats' => [ 'భాషాలెక్కలు' ],
+ 'PageTranslation' => [ 'పేజిఅనువాదము' ],
+ 'Translate' => [ 'అనువాదం' ],
+ 'TranslationStats' => [ 'అనువాదలెక్కలు' ],
+ 'Translations' => [ 'అనువాదాలు' ],
+];
/** Thai (ไทย) */
-$specialPageAliases['th'] = array(
- 'LanguageStats' => array( 'สถิติภาษา' ),
- 'Magic' => array( 'การแปลขั้นสูง' ),
- 'SupportedLanguages' => array( 'ภาษาที่รองรับ' ),
- 'Translate' => array( 'แปล' ),
- 'TranslationStats' => array( 'สถิติการแปล' ),
- 'Translations' => array( 'การแปล' ),
-);
+$specialPageAliases['th'] = [
+ 'LanguageStats' => [ 'สถิติภาษา' ],
+ 'Magic' => [ 'การแปลขั้นสูง' ],
+ 'SupportedLanguages' => [ 'ภาษาที่รองรับ' ],
+ 'Translate' => [ 'แปล' ],
+ 'TranslationStats' => [ 'สถิติการแปล' ],
+ 'Translations' => [ 'การแปล' ],
+];
/** Tagalog (Tagalog) */
-$specialPageAliases['tl'] = array(
- 'LanguageStats' => array( 'Mga_estadistika_ng_wika' ),
- 'Magic' => array( 'Mas_masulong_na_pagsasalinwika', 'Salamangka' ),
- 'Translate' => array( 'Isalinwika' ),
- 'TranslationStats' => array( 'Mga_estadistika_ng_salinwika' ),
- 'Translations' => array( 'Mga_salinwika' ),
-);
+$specialPageAliases['tl'] = [
+ 'LanguageStats' => [ 'Mga_estadistika_ng_wika' ],
+ 'Magic' => [ 'Mas_masulong_na_pagsasalinwika', 'Salamangka' ],
+ 'Translate' => [ 'Isalinwika' ],
+ 'TranslationStats' => [ 'Mga_estadistika_ng_salinwika' ],
+ 'Translations' => [ 'Mga_salinwika' ],
+];
/** Turkish (Türkçe) */
-$specialPageAliases['tr'] = array(
- 'AggregateGroups' => array( 'GruplarıBirleştirme' ),
- 'ImportTranslations' => array( 'ÇevirileriİçeAktar' ),
- 'LanguageStats' => array( 'Dilİstatistikleri' ),
- 'Magic' => array( 'GelişmişÇeviri' ),
- 'ManageMessageGroups' => array( 'MesajGruplarınıYönet', 'İletiGruplarınıYönet' ),
- 'MessageGroupStats' => array( 'MesajGrubuİstatistikleri', 'İletiGrubuİstatistikleri' ),
- 'PageTranslation' => array( 'SayfaÇevirisi' ),
- 'PageTranslationDeletePage' => array( 'SayfaÇevirisiSayfaSilme' ),
- 'SupportedLanguages' => array( 'DesteklenenDiller' ),
- 'Translate' => array( 'Çevir', 'Çeviri' ),
- 'TranslationStats' => array( 'Çeviriİstatistikleri' ),
- 'Translations' => array( 'Çeviriler' ),
-);
+$specialPageAliases['tr'] = [
+ 'AggregateGroups' => [ 'GruplarıBirleştirme' ],
+ 'ImportTranslations' => [ 'ÇevirileriİçeAktar' ],
+ 'LanguageStats' => [ 'Dilİstatistikleri' ],
+ 'Magic' => [ 'GelişmişÇeviri' ],
+ 'ManageMessageGroups' => [ 'MesajGruplarınıYönet', 'İletiGruplarınıYönet' ],
+ 'MessageGroupStats' => [ 'MesajGrubuİstatistikleri', 'İletiGrubuİstatistikleri' ],
+ 'PageTranslation' => [ 'SayfaÇevirisi' ],
+ 'PageTranslationDeletePage' => [ 'SayfaÇevirisiSayfaSilme' ],
+ 'SupportedLanguages' => [ 'DesteklenenDiller' ],
+ 'Translate' => [ 'Çevir', 'Çeviri' ],
+ 'TranslationStats' => [ 'Çeviriİstatistikleri' ],
+ 'Translations' => [ 'Çeviriler' ],
+];
/** Tatar (Cyrillic script) (татарча) */
-$specialPageAliases['tt-cyrl'] = array(
- 'LanguageStats' => array( 'Телләр_хисабы' ),
- 'PageTranslation' => array( 'Битне_тәрҗемә_итү' ),
- 'Translate' => array( 'Тәрҗемә' ),
- 'TranslationStats' => array( 'Тәрҗемәләр_хисабы' ),
- 'Translations' => array( 'Тәрҗемәләр' ),
-);
+$specialPageAliases['tt-cyrl'] = [
+ 'LanguageStats' => [ 'Телләр_хисабы' ],
+ 'PageTranslation' => [ 'Битне_тәрҗемә_итү' ],
+ 'Translate' => [ 'Тәрҗемә' ],
+ 'TranslationStats' => [ 'Тәрҗемәләр_хисабы' ],
+ 'Translations' => [ 'Тәрҗемәләр' ],
+];
/** Tuvinian (тыва дыл) */
-$specialPageAliases['tyv'] = array(
- 'PageTranslation' => array( 'Арын_очулгазы' ),
- 'PageTranslationDeletePage' => array( 'Очулдуругда_арынны_казыыр' ),
- 'SearchTranslations' => array( 'Очулгалар_дилээр' ),
- 'SupportedLanguages' => array( 'Дөгүмнээн_дылдар' ),
- 'Translate' => array( 'Очулдурар' ),
- 'TranslationStats' => array( 'Очулга_статистиказы' ),
- 'Translations' => array( 'Очулгалар' ),
-);
+$specialPageAliases['tyv'] = [
+ 'PageTranslation' => [ 'Арын_очулгазы' ],
+ 'PageTranslationDeletePage' => [ 'Очулдуругда_арынны_казыыр' ],
+ 'SearchTranslations' => [ 'Очулгалар_дилээр' ],
+ 'SupportedLanguages' => [ 'Дөгүмнээн_дылдар' ],
+ 'Translate' => [ 'Очулдурар' ],
+ 'TranslationStats' => [ 'Очулга_статистиказы' ],
+ 'Translations' => [ 'Очулгалар' ],
+];
/** Ukrainian (українська) */
-$specialPageAliases['uk'] = array(
- 'AggregateGroups' => array( 'Агреговані_групи' ),
- 'ImportTranslations' => array( 'Імпорт_перекладів' ),
- 'LanguageStats' => array( 'Статистика_мови' ),
- 'Magic' => array( 'Поглиблений_переклад' ),
- 'ManageMessageGroups' => array( 'Керування_групами_повідомлень' ),
- 'MessageGroupStats' => array( 'Статистика_групи_повідомлень' ),
- 'PageTranslation' => array( 'Переклад' ),
- 'PageTranslationDeletePage' => array( 'Вилучення_перекладабельної_сторінки' ),
- 'SearchTranslations' => array( 'Пошук_перекладів' ),
- 'SupportedLanguages' => array( 'Підтримувані_мови' ),
- 'Translate' => array( 'Перекласти' ),
- 'TranslationStats' => array( 'Статистика_перекладів' ),
- 'Translations' => array( 'Переклади' ),
-);
+$specialPageAliases['uk'] = [
+ 'AggregateGroups' => [ 'Агреговані_групи', 'Агрегированные_группы' ],
+ 'ImportTranslations' => [ 'Імпорт_перекладів', 'Импорт_переводов' ],
+ 'LanguageStats' => [ 'Статистика_мови', 'Статистика_языка' ],
+ 'Magic' => [ 'Поглиблений_переклад', 'Расширенный_перевод' ],
+ 'ManageMessageGroups' => [ 'Керування_групами_повідомлень', 'Управление_группами_сообщений' ],
+ 'MessageGroupStats' => [ 'Статистика_групи_повідомлень', 'Статистика_группы_сообщений' ],
+ 'PageTranslation' => [ 'Переклад', 'Перевод_страниц' ],
+ 'PageTranslationDeletePage' => [ 'Вилучення_перекладабельної_сторінки', 'Удаление_переводимой_страницы' ],
+ 'SearchTranslations' => [ 'Пошук_перекладів', 'Поиск_переводов' ],
+ 'SupportedLanguages' => [ 'Підтримувані_мови', 'Поддерживаемые_языки' ],
+ 'Translate' => [ 'Перекласти', 'Перевести' ],
+ 'TranslationStats' => [ 'Статистика_перекладів', 'Статистика_переводов' ],
+ 'Translations' => [ 'Переклади', 'Переводы' ],
+];
/** Venetian (vèneto) */
-$specialPageAliases['vec'] = array(
- 'Translate' => array( 'Tradusi' ),
- 'Translations' => array( 'Tradussioni' ),
-);
+$specialPageAliases['vec'] = [
+ 'Translate' => [ 'Tradusi' ],
+ 'Translations' => [ 'Tradussioni' ],
+];
/** Vietnamese (Tiếng Việt) */
-$specialPageAliases['vi'] = array(
- 'ImportTranslations' => array( 'Nhập_bản_dịch' ),
- 'LanguageStats' => array( 'Thống_kê_ngôn_ngữ' ),
- 'Magic' => array( 'Dịch_nâng_cao' ),
- 'ManageMessageGroups' => array( 'Quản_lý_nhóm_thông_điệp', 'Quản_lý_nhóm', 'Quản_lí_nhóm_thông_điệp', 'Quản_lí_nhóm' ),
- 'ManageTranslatorSandbox' => array( 'Quản_lý_chỗ_thử_biên_dịch', 'Quản_lí_chỗ_thử_biên_dịch' ),
- 'MessageGroupStats' => array( 'Thống_kê_nhóm_thông_điệp', 'Thống_kê_nhóm' ),
- 'PageTranslation' => array( 'Dịch_trang', 'Biên_dịch_trang' ),
- 'SearchTranslations' => array( 'Tìm_kiếm_bản_dịch' ),
- 'SupportedLanguages' => array( 'Ngôn_ngữ_đuọc_hỗ_trợ' ),
- 'Translate' => array( 'Dịch', 'Biên_dịch' ),
- 'TranslationStats' => array( 'Thống_kê_biên_dịch' ),
- 'Translations' => array( 'Bản_dịch' ),
- 'PagePreparation' => array( 'Sửa_soạn_trang' ),
-);
+$specialPageAliases['vi'] = [
+ 'ImportTranslations' => [ 'Nhập_bản_dịch' ],
+ 'LanguageStats' => [ 'Thống_kê_ngôn_ngữ' ],
+ 'Magic' => [ 'Dịch_nâng_cao' ],
+ 'ManageMessageGroups' => [ 'Quản_lý_nhóm_thông_điệp', 'Quản_lý_nhóm', 'Quản_lí_nhóm_thông_điệp', 'Quản_lí_nhóm' ],
+ 'ManageTranslatorSandbox' => [ 'Quản_lý_chỗ_thử_biên_dịch', 'Quản_lí_chỗ_thử_biên_dịch' ],
+ 'MessageGroupStats' => [ 'Thống_kê_nhóm_thông_điệp', 'Thống_kê_nhóm' ],
+ 'PageTranslation' => [ 'Dịch_trang', 'Biên_dịch_trang' ],
+ 'SearchTranslations' => [ 'Tìm_kiếm_bản_dịch' ],
+ 'SupportedLanguages' => [ 'Ngôn_ngữ_đuọc_hỗ_trợ' ],
+ 'Translate' => [ 'Dịch', 'Biên_dịch' ],
+ 'TranslationStats' => [ 'Thống_kê_biên_dịch' ],
+ 'Translations' => [ 'Bản_dịch' ],
+ 'PagePreparation' => [ 'Sửa_soạn_trang' ],
+];
/** Wolof (Wolof) */
-$specialPageAliases['wo'] = array(
- 'Translate' => array( 'Tekki' ),
-);
+$specialPageAliases['wo'] = [
+ 'Translate' => [ 'Tekki' ],
+];
/** Yiddish (ייִדיש) */
-$specialPageAliases['yi'] = array(
- 'Translate' => array( 'פֿארטײַטש' ),
-);
+$specialPageAliases['yi'] = [
+ 'Translate' => [ 'פֿארטײַטש' ],
+];
/** Cantonese (粵語) */
-$specialPageAliases['yue'] = array(
- 'Translate' => array( '譯' ),
-);
+$specialPageAliases['yue'] = [
+ 'Translate' => [ '譯' ],
+];
/** Chinese (中文) */
-$specialPageAliases['zh'] = array(
- 'Translate' => array( '翻译', '翻譯' ),
-);
-
-/** Simplified Chinese (中文(简体)‎) */
-$specialPageAliases['zh-hans'] = array(
- 'AggregateGroups' => array( '信息组总计' ),
- 'ImportTranslations' => array( '导入翻译' ),
- 'LanguageStats' => array( '语言统计' ),
- 'Magic' => array( '高级翻译' ),
- 'ManageMessageGroups' => array( '信息组管理' ),
- 'ManageTranslatorSandbox' => array( '管理译者沙盒' ),
- 'MessageGroupStats' => array( '信息组状态' ),
- 'PageTranslation' => array( '页面翻译' ),
- 'PageTranslationDeletePage' => array( '页面翻译删除页面' ),
- 'SearchTranslations' => array( '搜索翻译' ),
- 'SupportedLanguages' => array( '支持的语言' ),
- 'Translate' => array( '翻译' ),
- 'TranslationStash' => array( '翻译隐藏' ),
- 'TranslationStats' => array( '翻译统计' ),
- 'Translations' => array( '译文' ),
- 'PageMigration' => array( '页面迁移' ),
- 'PagePreparation' => array( '页面预备' ),
-);
-
-/** Traditional Chinese (中文(繁體)‎) */
-$specialPageAliases['zh-hant'] = array(
- 'AggregateGroups' => array( '集合群組' ),
- 'ImportTranslations' => array( '匯入翻譯' ),
- 'LanguageStats' => array( '語言統計' ),
- 'Magic' => array( '進階翻譯' ),
- 'ManageMessageGroups' => array( '管理訊息群組' ),
- 'ManageTranslatorSandbox' => array( '管理翻譯人員沙盒' ),
- 'MessageGroupStats' => array( '訊息群組統計' ),
- 'PageTranslation' => array( '頁面翻譯' ),
- 'PageTranslationDeletePage' => array( '頁面翻譯刪除頁面' ),
- 'SearchTranslations' => array( '搜尋翻譯' ),
- 'SupportedLanguages' => array( '支援的語言' ),
- 'Translate' => array( '翻譯' ),
- 'TranslationStash' => array( '翻譯儲藏庫' ),
- 'TranslationStats' => array( '翻譯統計' ),
- 'Translations' => array( '翻譯清單' ),
- 'PageMigration' => array( '頁面轉移' ),
- 'PagePreparation' => array( '頁面準備' ),
-); \ No newline at end of file
+$specialPageAliases['zh'] = [
+ 'Translate' => [ '翻译', '翻譯' ],
+];
+
+/** Simplified Chinese (中文(简体)) */
+$specialPageAliases['zh-hans'] = [
+ 'AggregateGroups' => [ '信息组总计' ],
+ 'ImportTranslations' => [ '导入翻译' ],
+ 'LanguageStats' => [ '语言统计' ],
+ 'Magic' => [ '高级翻译' ],
+ 'ManageMessageGroups' => [ '信息组管理' ],
+ 'ManageTranslatorSandbox' => [ '管理译者沙盒' ],
+ 'MessageGroupStats' => [ '信息组状态' ],
+ 'PageTranslation' => [ '页面翻译' ],
+ 'PageTranslationDeletePage' => [ '页面翻译删除页面' ],
+ 'SearchTranslations' => [ '搜索翻译' ],
+ 'SupportedLanguages' => [ '支持的语言' ],
+ 'Translate' => [ '翻译' ],
+ 'TranslationStash' => [ '翻译隐藏' ],
+ 'TranslationStats' => [ '翻译统计' ],
+ 'Translations' => [ '译文' ],
+ 'PageMigration' => [ '页面迁移' ],
+ 'PagePreparation' => [ '页面预备' ],
+];
+
+/** Traditional Chinese (中文(繁體)) */
+$specialPageAliases['zh-hant'] = [
+ 'AggregateGroups' => [ '集合群組' ],
+ 'ImportTranslations' => [ '匯入翻譯' ],
+ 'LanguageStats' => [ '語言統計' ],
+ 'Magic' => [ '進階翻譯' ],
+ 'ManageMessageGroups' => [ '管理訊息群組' ],
+ 'ManageTranslatorSandbox' => [ '管理翻譯人員沙盒' ],
+ 'MessageGroupStats' => [ '訊息群組統計' ],
+ 'PageTranslation' => [ '頁面翻譯' ],
+ 'PageTranslationDeletePage' => [ '頁面翻譯刪除頁面' ],
+ 'SearchTranslations' => [ '搜尋翻譯' ],
+ 'SupportedLanguages' => [ '支援的語言' ],
+ 'Translate' => [ '翻譯' ],
+ 'TranslationStash' => [ '翻譯儲藏庫' ],
+ 'TranslationStats' => [ '翻譯統計' ],
+ 'Translations' => [ '翻譯清單' ],
+ 'PageMigration' => [ '頁面轉移' ],
+ 'PagePreparation' => [ '頁面準備' ],
+];
diff --git a/MLEB/Translate/Translate.i18n.magic.php b/MLEB/Translate/Translate.i18n.magic.php
index 8aaa515f..891c11e7 100644
--- a/MLEB/Translate/Translate.i18n.magic.php
+++ b/MLEB/Translate/Translate.i18n.magic.php
@@ -6,10 +6,14 @@
* @ingroup Extensions
*/
-$magicWords = array();
+$magicWords = [];
/** English (English) */
-$magicWords['en'] = array(
- 'translation' => array( 0, 'translation' ),
-);
+$magicWords['en'] = [
+ 'translation' => [ 0, 'translation' ],
+];
+/** Urdu (اردو) */
+$magicWords['ur'] = [
+ 'translation' => [ 0, 'ترجمہ', 'translation' ],
+];
diff --git a/MLEB/Translate/Translate.i18n.php b/MLEB/Translate/Translate.i18n.php
deleted file mode 100644
index ac594e1a..00000000
--- a/MLEB/Translate/Translate.i18n.php
+++ /dev/null
@@ -1,35 +0,0 @@
-<?php
-/**
- * This is a backwards-compatibility shim, generated by:
- * https://git.wikimedia.org/blob/mediawiki%2Fcore.git/HEAD/maintenance%2FgenerateJsonI18n.php
- *
- * Beginning with MediaWiki 1.23, translation strings are stored in json files,
- * and the EXTENSION.i18n.php file only exists to provide compatibility with
- * older releases of MediaWiki. For more information about this migration, see:
- * https://www.mediawiki.org/wiki/Requests_for_comment/Localisation_format
- *
- * This shim maintains compatibility back to MediaWiki 1.17.
- */
-$messages = array();
-if ( !function_exists( 'wfJsonI18nShim2a9d547473babbda' ) ) {
- function wfJsonI18nShim2a9d547473babbda( $cache, $code, &$cachedData ) {
- $codeSequence = array_merge( array( $code ), $cachedData['fallbackSequence'] );
- foreach ( $codeSequence as $csCode ) {
- $fileName = dirname( __FILE__ ) . "/i18n/core/$csCode.json";
- if ( is_readable( $fileName ) ) {
- $data = FormatJson::decode( file_get_contents( $fileName ), true );
- foreach ( array_keys( $data ) as $key ) {
- if ( $key === '' || $key[0] === '@' ) {
- unset( $data[$key] );
- }
- }
- $cachedData['messages'] = array_merge( $data, $cachedData['messages'] );
- }
-
- $cachedData['deps'][] = new FileDependency( $fileName );
- }
- return true;
- }
-
- $GLOBALS['wgHooks']['LocalisationCacheRecache'][] = 'wfJsonI18nShim2a9d547473babbda';
-}
diff --git a/MLEB/Translate/Translate.php b/MLEB/Translate/Translate.php
index 1276fa0f..8eb45a4c 100644
--- a/MLEB/Translate/Translate.php
+++ b/MLEB/Translate/Translate.php
@@ -10,31 +10,32 @@ if ( !defined( 'MEDIAWIKI' ) ) {
*
* @author Niklas Laxström
* @author Siebrand Mazeland
- * @copyright Copyright © 2006-2015, Niklas Laxström, Siebrand Mazeland
- * @license GPL-2.0+
+ * @copyright Copyright © 2006-2018, Niklas Laxström, Siebrand Mazeland
+ * @license GPL-2.0-or-later
*/
/**
* Version number used in extension credits and in other places where needed.
*/
-define( 'TRANSLATE_VERSION', '2015-04-29' );
+define( 'TRANSLATE_VERSION', '2018-10-26' );
/**
* Extension credits properties.
*/
-$GLOBALS['wgExtensionCredits']['specialpage'][] = array(
+$wgExtensionCredits['specialpage'][] = [
'path' => __FILE__,
'name' => 'Translate',
- 'version' => '[https://www.mediawiki.org/wiki/MLEB MLEB 2015.04]',
- 'author' => array(
+ 'namemsg' => 'translate-extensionname',
+ 'version' => TRANSLATE_VERSION,
+ 'author' => [
'Niklas Laxström',
'Santhosh Thottingal',
'Siebrand Mazeland'
- ),
+ ],
'descriptionmsg' => 'translate-desc',
'url' => 'https://www.mediawiki.org/wiki/Extension:Translate',
- 'license-name' => 'GPL-2.0+',
-);
+ 'license-name' => 'GPL-2.0-or-later',
+];
/**
* @cond file_level_code
@@ -49,187 +50,164 @@ require_once "$dir/Autoload.php";
* @cond file_level_code
*/
-$GLOBALS['wgMessagesDirs']['PageTranslation'] = __DIR__ . "/i18n/pagetranslation";
-$GLOBALS['wgMessagesDirs']['Translate'] = __DIR__ . "/i18n/core";
-$GLOBALS['wgMessagesDirs']['TranslateGroupDescriptions'] = __DIR__ . "/i18n/groupdescriptions";
-$GLOBALS['wgMessagesDirs']['TranslateSearch'] = __DIR__ . "/i18n/search";
-$GLOBALS['wgMessagesDirs']['TranslateSandbox'] = __DIR__ . "/i18n/sandbox";
-$GLOBALS['wgMessagesDirs']['TranslateApi'] = __DIR__ . "/i18n/api";
-
-// Register extension messages and other localisation.
-$GLOBALS['wgExtensionMessagesFiles']['Translate'] = "$dir/Translate.i18n.php";
-$GLOBALS['wgExtensionMessagesFiles']['PageTranslation'] = "$dir/PageTranslation.i18n.php";
-$GLOBALS['wgExtensionMessagesFiles']['TranslateGroupDescriptions'] =
- "$dir/TranslateGroupDescriptions.i18n.php";
-$GLOBALS['wgExtensionMessagesFiles']['TranslateSearch'] = "$dir/TranslateSearch.i18n.php";
-$GLOBALS['wgExtensionMessagesFiles']['TranslateSandbox'] = "$dir/TranslateSandbox.i18n.php";
-$GLOBALS['wgExtensionMessagesFiles']['TranslateAlias'] = "$dir/Translate.alias.php";
-// Backwards compatibility:
-// If Special:MyLanguage is not in core, load translations of its name
-// from the Translate extension's code.
-// See https://phabricator.wikimedia.org/T71461
-// Can be removed when MW 1.23 is no longer supported
-if ( !isset( $GLOBALS['wgAutoloadLocalClasses']['SpecialMyLanguage'] ) ) {
- $GLOBALS['wgExtensionMessagesFiles']['TranslateMyLanguageAlias'] =
- "$dir/Translate.MyLanguage.alias.php";
-}
-
-$GLOBALS['wgExtensionMessagesFiles']['TranslateMagic'] = "$dir/Translate.i18n.magic.php";
+$wgMessagesDirs['PageTranslation'] = __DIR__ . '/i18n/pagetranslation';
+$wgMessagesDirs['Translate'] = __DIR__ . '/i18n/core';
+$wgMessagesDirs['TranslateSearch'] = __DIR__ . '/i18n/search';
+$wgMessagesDirs['TranslateSandbox'] = __DIR__ . '/i18n/sandbox';
+$wgMessagesDirs['TranslateApi'] = __DIR__ . '/i18n/api';
+$wgExtensionMessagesFiles['TranslateAlias'] = "$dir/Translate.alias.php";
+$wgExtensionMessagesFiles['TranslateMagic'] = "$dir/Translate.i18n.magic.php";
// Register initialization code
-$GLOBALS['wgExtensionFunctions'][] = 'TranslateHooks::setupTranslate';
-$GLOBALS['wgHooks']['CanonicalNamespaces'][] = 'TranslateHooks::setupNamespaces';
-$GLOBALS['wgHooks']['UnitTestsList'][] = 'TranslateHooks::setupUnitTests';
-$GLOBALS['wgHooks']['LoadExtensionSchemaUpdates'][] = 'TranslateHooks::schemaUpdates';
-$GLOBALS['wgHooks']['ParserTestTables'][] = 'TranslateHooks::parserTestTables';
-$GLOBALS['wgHooks']['PageContentLanguage'][] = 'TranslateHooks::onPageContentLanguage';
+$wgExtensionFunctions[] = 'TranslateHooks::setupTranslate';
+$wgHooks['CanonicalNamespaces'][] = 'TranslateHooks::setupNamespaces';
+$wgHooks['ResourceLoaderTestModules'][] = 'TranslateHooks::onResourceLoaderTestModules';
+$wgHooks['UnitTestsList'][] = 'TranslateHooks::setupUnitTests';
+$wgHooks['LoadExtensionSchemaUpdates'][] = 'TranslateHooks::schemaUpdates';
+$wgHooks['ParserTestTables'][] = 'TranslateHooks::parserTestTables';
+$wgHooks['PageContentLanguage'][] = 'TranslateHooks::onPageContentLanguage';
+$wgHooks['ResourceLoaderRegisterModules'][] = 'TranslateHooks::onResourceLoaderRegisterModules';
// Register special pages into MediaWiki
-$GLOBALS['wgSpecialPages']['Translate'] = 'SpecialTranslate';
-$GLOBALS['wgSpecialPages']['Translations'] = 'SpecialTranslations';
+$wgSpecialPages['Translate'] = 'SpecialTranslate';
+$wgSpecialPages['Translations'] = 'SpecialTranslations';
// Disabled by default
-// $GLOBALS['wgSpecialPages']['Magic'] = 'SpecialMagic';
-$GLOBALS['wgSpecialPages']['TranslationStats'] = 'SpecialTranslationStats';
-$GLOBALS['wgSpecialPages']['LanguageStats'] = 'SpecialLanguageStats';
-$GLOBALS['wgSpecialPages']['MessageGroupStats'] = 'SpecialMessageGroupStats';
-$GLOBALS['wgSpecialPages']['ImportTranslations'] = 'SpecialImportTranslations';
-$GLOBALS['wgSpecialPages']['ManageMessageGroups'] = 'SpecialManageGroups';
-$GLOBALS['wgSpecialPages']['SupportedLanguages'] = 'SpecialSupportedLanguages';
-
-// Unlisted special page; does not need $wgSpecialPageGroups.
-$GLOBALS['wgSpecialPages']['MyLanguage'] = 'SpecialMyLanguage';
-$GLOBALS['wgSpecialPages']['AggregateGroups'] = 'SpecialAggregateGroups';
-$GLOBALS['wgSpecialPages']['SearchTranslations'] = 'SpecialSearchTranslations';
-$GLOBALS['wgSpecialPages']['ManageTranslatorSandbox'] = 'SpecialManageTranslatorSandbox';
-$GLOBALS['wgSpecialPages']['TranslationStash'] = 'SpecialTranslationStash';
+// $wgSpecialPages['Magic'] = 'SpecialMagic';
+$wgSpecialPages['TranslationStats'] = 'SpecialTranslationStats';
+$wgSpecialPages['LanguageStats'] = 'SpecialLanguageStats';
+$wgSpecialPages['MessageGroupStats'] = 'SpecialMessageGroupStats';
+$wgSpecialPages['ImportTranslations'] = 'SpecialImportTranslations';
+$wgSpecialPages['ExportTranslations'] = 'SpecialExportTranslations';
+$wgSpecialPages['ManageMessageGroups'] = 'SpecialManageGroups';
+$wgSpecialPages['SupportedLanguages'] = 'SpecialSupportedLanguages';
+$wgSpecialPages['AggregateGroups'] = 'SpecialAggregateGroups';
+$wgSpecialPages['SearchTranslations'] = 'SpecialSearchTranslations';
// API
-$GLOBALS['wgAPIGeneratorModules']['messagecollection'] = 'ApiQueryMessageCollection';
-$GLOBALS['wgAPIListModules']['messagecollection'] = 'ApiQueryMessageCollection';
-$GLOBALS['wgAPIMetaModules']['languagestats'] = 'ApiQueryLanguageStats';
-$GLOBALS['wgAPIMetaModules']['messagegroups'] = 'ApiQueryMessageGroups';
-$GLOBALS['wgAPIMetaModules']['messagegroupstats'] = 'ApiQueryMessageGroupStats';
-$GLOBALS['wgAPIMetaModules']['messagetranslations'] = 'ApiQueryMessageTranslations';
-$GLOBALS['wgAPIModules']['aggregategroups'] = 'ApiAggregateGroups';
-$GLOBALS['wgAPIModules']['groupreview'] = 'ApiGroupReview';
-$GLOBALS['wgAPIModules']['hardmessages'] = 'ApiHardMessages';
-$GLOBALS['wgAPIModules']['translatesandbox'] = 'ApiTranslateSandbox';
-$GLOBALS['wgAPIModules']['translateuser'] = 'ApiTranslateUser';
-$GLOBALS['wgAPIModules']['translationaids'] = 'ApiTranslationAids';
-$GLOBALS['wgAPIModules']['translationreview'] = 'ApiTranslationReview';
-$GLOBALS['wgAPIModules']['translationstash'] = 'ApiTranslationStash';
-$GLOBALS['wgAPIModules']['ttmserver'] = 'ApiTTMServer';
-$GLOBALS['wgHooks']['ApiTokensGetTokenTypes'][] = 'ApiTranslationReview::injectTokenFunction';
-$GLOBALS['wgHooks']['ApiTokensGetTokenTypes'][] = 'ApiGroupReview::injectTokenFunction';
-$GLOBALS['wgHooks']['ApiTokensGetTokenTypes'][] = 'ApiAggregateGroups::injectTokenFunction';
-$GLOBALS['wgHooks']['ApiTokensGetTokenTypes'][] = 'ApiHardMessages::injectTokenFunction';
-$GLOBALS['wgHooks']['ApiTokensGetTokenTypes'][] = 'ApiTranslateSandbox::injectTokenFunction';
-$GLOBALS['wgHooks']['ApiTokensGetTokenTypes'][] = 'ApiTranslationStash::injectTokenFunction';
+$wgAPIListModules['messagecollection'] = 'ApiQueryMessageCollection';
+$wgAPIMetaModules['languagestats'] = 'ApiQueryLanguageStats';
+$wgAPIMetaModules['messagegroups'] = 'ApiQueryMessageGroups';
+$wgAPIMetaModules['messagegroupstats'] = 'ApiQueryMessageGroupStats';
+$wgAPIMetaModules['messagetranslations'] = 'ApiQueryMessageTranslations';
+$wgAPIModules['aggregategroups'] = 'ApiAggregateGroups';
+$wgAPIModules['groupreview'] = 'ApiGroupReview';
+$wgAPIModules['translationaids'] = 'ApiTranslationAids';
+$wgAPIModules['translationreview'] = 'ApiTranslationReview';
+$wgAPIModules['translationcheck'] = 'ApiTranslationCheck';
+$wgAPIModules['ttmserver'] = 'ApiTTMServer';
+$wgAPIModules['searchtranslations'] = 'ApiSearchTranslations';
// Register hooks.
-$GLOBALS['wgHooks']['EditPage::showEditForm:initial'][] = 'TranslateEditAddons::addTools';
-$GLOBALS['wgHooks']['AlternateEdit'][] = 'TranslateEditAddons::intro';
-$GLOBALS['wgHooks']['EditPageBeforeEditButtons'][] = 'TranslateEditAddons::buttonHack';
-$GLOBALS['wgHooks']['LanguageGetTranslatedLanguageNames'][] =
+$wgHooks['EditPage::showEditForm:initial'][] = 'TranslateEditAddons::addTools';
+$wgHooks['AlternateEdit'][] = 'TranslateEditAddons::suppressIntro';
+$wgHooks['getUserPermissionsErrorsExpensive'][] = 'TranslateEditAddons::disallowLangTranslations';
+$wgHooks['EditPageBeforeEditButtons'][] = 'TranslateEditAddons::buttonHack';
+$wgHooks['LanguageGetTranslatedLanguageNames'][] =
'TranslateHooks::translateMessageDocumentationLanguage';
-$GLOBALS['wgHooks']['TranslateSupportedLanguages'][] =
+$wgHooks['TranslateSupportedLanguages'][] =
'TranslateHooks::translateMessageDocumentationLanguage';
-$GLOBALS['wgHooks']['ArticlePrepareTextForEdit'][] = 'TranslateEditAddons::disablePreSaveTransform';
-$GLOBALS['wgHooks']['ParserFirstCallInit'][] = 'TranslateHooks::setupTranslateParserFunction';
-$GLOBALS['wgHooks']['UserGetReservedNames'][] = 'TranslateHooks::onUserGetReservedNames';
+$wgHooks['ArticlePrepareTextForEdit'][] = 'TranslateEditAddons::disablePreSaveTransform';
+$wgHooks['ParserFirstCallInit'][] = 'TranslateHooks::setupTranslateParserFunction';
+$wgHooks['UserGetReservedNames'][] = 'TranslateHooks::onUserGetReservedNames';
// Prevent translations creating bogus categories
-$GLOBALS['wgHooks']['LinksUpdate'][] = 'TranslateHooks::preventCategorization';
+$wgHooks['LinksUpdate'][] = 'TranslateHooks::preventCategorization';
// Fuzzy tags for speed.
-$GLOBALS['wgHooks']['PageContentSaveComplete'][] = 'TranslateEditAddons::onSave';
+$wgHooks['PageContentSaveComplete'][] = 'TranslateEditAddons::onSave';
-$GLOBALS['wgHooks']['Translate:newTranslation'][] = 'TranslateEditAddons::updateTransverTag';
+$wgHooks['Translate:newTranslation'][] = 'TranslateEditAddons::updateTransverTag';
-$GLOBALS['wgHooks']['SkinTemplateNavigation::SpecialPage'][] = 'SpecialTranslate::tabify';
-$GLOBALS['wgHooks']['SkinTemplateNavigation::SpecialPage'][] = 'SpecialManageGroups::tabify';
+$wgHooks['SkinTemplateNavigation::SpecialPage'][] = 'SpecialTranslate::tabify';
+$wgHooks['SkinTemplateNavigation::SpecialPage'][] = 'SpecialManageGroups::tabify';
// Custom preferences
-$GLOBALS['wgDefaultUserOptions']['translate'] = 0;
-$GLOBALS['wgDefaultUserOptions']['translate-editlangs'] = 'default';
-$GLOBALS['wgDefaultUserOptions']['translate-recent-groups'] = '';
-$GLOBALS['wgHooks']['GetPreferences'][] = 'TranslatePreferences::onGetPreferences';
-$GLOBALS['wgHooks']['GetPreferences'][] = 'TranslatePreferences::translationAssistLanguages';
+$wgDefaultUserOptions['translate'] = 0;
+$wgDefaultUserOptions['translate-editlangs'] = 'default';
+$wgDefaultUserOptions['translate-recent-groups'] = '';
+$wgHooks['GetPreferences'][] = 'TranslatePreferences::onGetPreferences';
+$wgHooks['GetPreferences'][] = 'TranslatePreferences::translationAssistLanguages';
// Recent changes filters
-$GLOBALS['wgHooks']['SpecialRecentChangesQuery'][] = 'TranslateRcFilter::translationFilter';
-$GLOBALS['wgHooks']['SpecialRecentChangesPanel'][] = 'TranslateRcFilter::translationFilterForm';
-$GLOBALS['wgHooks']['SkinTemplateToolboxEnd'][] = 'TranslateToolbox::toolboxAllTranslations';
-$GLOBALS['wgHooks']['AbortEmailNotification'][] = 'TranslateHooks::onAbortEmailNotificationReview';
+$wgHooks['ChangesListSpecialPageQuery'][] = 'TranslateRcFilter::translationFilter';
+$wgHooks['SpecialRecentChangesPanel'][] = 'TranslateRcFilter::translationFilterForm';
+$wgHooks['ChangesListSpecialPageStructuredFilters'][] =
+ 'TranslateRcFilter::onChangesListSpecialPageStructuredFilters';
+$wgHooks['BaseTemplateToolbox'][] = 'TranslateToolbox::toolboxAllTranslations';
+$wgHooks['AbortEmailNotification'][] = 'TranslateHooks::onAbortEmailNotificationReview';
// Translation memory related
-$GLOBALS['wgHooks']['ArticleDeleteComplete'][] = 'TTMServer::onDelete';
-$GLOBALS['wgHooks']['TranslateEventMessageMembershipChange'][] = 'TTMServer::onGroupChange';
+$wgHooks['ArticleDeleteComplete'][] = 'TTMServer::onDelete';
+$wgHooks['TranslateEventMessageMembershipChange'][] = 'TTMServer::onGroupChange';
// Translation display related
-$GLOBALS['wgHooks']['ArticleContentOnDiff'][] = 'TranslateEditAddons::displayOnDiff';
+$wgHooks['ArticleContentOnDiff'][] = 'TranslateEditAddons::displayOnDiff';
// Search profile
-$GLOBALS['wgHooks']['SpecialSearchProfiles'][] = 'TranslateHooks::searchProfile';
-$GLOBALS['wgHooks']['SpecialSearchProfileForm'][] = 'TranslateHooks::searchProfileForm';
-$GLOBALS['wgHooks']['SpecialSearchSetupEngine'][] = 'TranslateHooks::searchProfileSetupEngine';
+$wgHooks['SpecialSearchProfiles'][] = 'TranslateHooks::searchProfile';
+$wgHooks['SpecialSearchProfileForm'][] = 'TranslateHooks::searchProfileForm';
+$wgHooks['SpecialSearchSetupEngine'][] = 'TranslateHooks::searchProfileSetupEngine';
-$GLOBALS['wgHooks']['LinkBegin'][] = 'TranslateHooks::linkfix';
+$wgHooks['TitleIsAlwaysKnown'][] = 'TranslateHooks::onTitleIsAlwaysKnown';
// Stats table manipulation
-$GLOBALS['wgHooks']['Translate:MessageGroupStats:isIncluded'][] =
+$wgHooks['Translate:MessageGroupStats:isIncluded'][] =
'TranslateHooks::hideDiscouragedFromStats';
-$GLOBALS['wgHooks']['Translate:MessageGroupStats:isIncluded'][] =
+$wgHooks['Translate:MessageGroupStats:isIncluded'][] =
'TranslateHooks::hideRestrictedFromStats';
-$GLOBALS['wgHooks']['MakeGlobalVariablesScript'][] = 'TranslateHooks::addConfig';
-
-// Sandbox
-$GLOBALS['wgDefaultUserOptions']['translate-sandbox'] = '';
-$GLOBALS['wgHooks']['GetPreferences'][] = 'TranslateSandbox::onGetPreferences';
-$GLOBALS['wgHooks']['UserGetRights'][] = 'TranslateSandbox::enforcePermissions';
-$GLOBALS['wgHooks']['ApiCheckCanExecute'][] = 'TranslateSandbox::onApiCheckCanExecute';
+$wgHooks['MakeGlobalVariablesScript'][] = 'TranslateHooks::addConfig';
// Internal event listeners
-$GLOBALS['wgHooks']['TranslateEventTranslationEdit'][] = 'MessageGroupStats::clear';
-$GLOBALS['wgHooks']['TranslateEventTranslationReview'][] = 'MessageGroupStats::clear';
-$GLOBALS['wgHooks']['TranslateEventTranslationEdit'][] = 'MessageGroupStatesUpdaterJob::onChange';
-$GLOBALS['wgHooks']['TranslateEventTranslationReview'][] = 'MessageGroupStatesUpdaterJob::onChange';
+$wgHooks['TranslateEventTranslationReview'][] = 'MessageGroupStats::clear';
+$wgHooks['TranslateEventTranslationReview'][] = 'MessageGroupStatesUpdaterJob::onChange';
+
+// Internal groups registers
+$wgHooks['TranslatePostInitGroups'][] = 'MessageGroups::getCCGroups';
+$wgHooks['TranslatePostInitGroups'][] = 'MessageGroups::getTranslatablePages';
+$wgHooks['TranslatePostInitGroups'][] = 'MessageGroups::getConfiguredGroups';
+$wgHooks['TranslatePostInitGroups'][] = 'MessageGroups::getWorkflowGroups';
+$wgHooks['TranslatePostInitGroups'][] = 'MessageGroups::getAggregateGroups';
// Other extensions
-$GLOBALS['wgHooks']['AdminLinks'][] = 'TranslateHooks::onAdminLinks';
-$GLOBALS['wgHooks']['MergeAccountFromTo'][] = 'TranslateHooks::onMergeAccountFromTo';
-$GLOBALS['wgHooks']['DeleteAccount'][] = 'TranslateHooks::onDeleteAccount';
+$wgHooks['AdminLinks'][] = 'TranslateHooks::onAdminLinks';
+$wgHooks['MergeAccountFromTo'][] = 'TranslateHooks::onMergeAccountFromTo';
+$wgHooks['DeleteAccount'][] = 'TranslateHooks::onDeleteAccount';
+$wgHooks['AbuseFilter-filterAction'][] = 'TranslateHooks::onAbuseFilterFilterAction';
+$wgHooks['AbuseFilter-computeVariable'][] = 'TranslateHooks::onAbuseFilterComputeVariable';
+$wgHooks['AbuseFilter-builder'][] = 'TranslateHooks::onAbuseFilterBuilder';
// New rights
-$GLOBALS['wgAvailableRights'][] = 'translate';
-$GLOBALS['wgAvailableRights'][] = 'translate-import';
-$GLOBALS['wgAvailableRights'][] = 'translate-manage';
-$GLOBALS['wgAvailableRights'][] = 'translate-messagereview';
-$GLOBALS['wgAvailableRights'][] = 'translate-groupreview';
-$GLOBALS['wgAvailableRights'][] = 'translate-sandboxmanage';
+// right-translate
+$wgAvailableRights[] = 'translate';
+// right-translate-import action-translate-import
+$wgAvailableRights[] = 'translate-import';
+// right-translate-manage action-translate-manage
+$wgAvailableRights[] = 'translate-manage';
+// right-translate-messagereview
+$wgAvailableRights[] = 'translate-messagereview';
+// right-translate-groupreview
+$wgAvailableRights[] = 'translate-groupreview';
+
+$wgGrantPermissions['editpage']['translate'] = true;
// Logs. More logs are defined in TranslateHooks::setupTranslate
-$GLOBALS['wgLogTypes'][] = 'translationreview';
-$GLOBALS['wgLogActionsHandlers']['translationreview/message'] = 'TranslateLogFormatter';
-$GLOBALS['wgLogActionsHandlers']['translationreview/group'] = 'TranslateLogFormatter';
-
-$GLOBALS['wgLogTypes'][] = 'translatorsandbox';
-$GLOBALS['wgLogActionsHandlers']['translatorsandbox/promoted'] = 'TranslateLogFormatter';
-$GLOBALS['wgLogActionsHandlers']['translatorsandbox/rejected'] = 'TranslateLogFormatter';
-$GLOBALS['wgLogActionsHandlers']['newusers/tsbpromoted'] = 'LogFormatter';
+// log-name-translationreview log-descriptionmsg-translationreview
+$wgLogTypes[] = 'translationreview';
+// logentry-translationreview-message logentry-translationreview-group
+$wgLogActionsHandlers['translationreview/message'] = 'TranslateLogFormatter';
+$wgLogActionsHandlers['translationreview/group'] = 'TranslateLogFormatter';
// New jobs
-$GLOBALS['wgJobClasses']['MessageIndexRebuildJob'] = 'MessageIndexRebuildJob';
-$GLOBALS['wgJobClasses']['MessageUpdateJob'] = 'MessageUpdateJob';
-$GLOBALS['wgJobClasses']['MessageGroupStatesUpdaterJob'] = 'MessageGroupStatesUpdaterJob';
-$GLOBALS['wgJobClasses']['TTMServerMessageUpdateJob'] = 'TTMServerMessageUpdateJob';
-$GLOBALS['wgJobClasses']['TranslateSandboxEmailJob'] = 'TranslateSandboxEmailJob';
+$wgJobClasses['MessageIndexRebuildJob'] = 'MessageIndexRebuildJob';
+$wgJobClasses['MessageUpdateJob'] = 'MessageUpdateJob';
+$wgJobClasses['MessageGroupStatesUpdaterJob'] = 'MessageGroupStatesUpdaterJob';
+$wgJobClasses['TTMServerMessageUpdateJob'] = 'TTMServerMessageUpdateJob';
-$GLOBALS['wgParserTestFiles'][] = "$dir/tests/parser/translateParserTests.txt";
+$wgParserTestFiles[] = "$dir/tests/parser/translateParserTests.txt";
require "$dir/Resources.php";
-/** @endcond */
+/** @endcond */
# == Configuration variables ==
@@ -239,19 +217,19 @@ require "$dir/Resources.php";
* Language code for message documentation. Suggested values are qqq or info.
* If set to false (default), message documentation feature is disabled.
*/
-$GLOBALS['wgTranslateDocumentationLanguageCode'] = false;
+$wgTranslateDocumentationLanguageCode = false;
/**
* Name of the bot which will invalidate translations and do maintenance
* for page translation feature. Also used for importing messages from external
* sources.
*/
-$GLOBALS['wgTranslateFuzzyBotName'] = 'FuzzyBot';
+$wgTranslateFuzzyBotName = 'FuzzyBot';
/**
* Add a preference "Do not send me email newsletters" in the email preferences.
*/
-$GLOBALS['wgTranslateNewsletterPreference'] = false;
+$wgTranslateNewsletterPreference = false;
/**
* Default values for list of languages to show translators as an aid when
@@ -260,7 +238,7 @@ $GLOBALS['wgTranslateNewsletterPreference'] = false;
* $wgTranslateLanguageFallbacks['fi'] = 'sv';
* $wgTranslateLanguageFallbacks['sv'] = array( 'da', 'no', 'nn' );
*/
-$GLOBALS['wgTranslateLanguageFallbacks'] = array();
+$wgTranslateLanguageFallbacks = [];
/**
* Text that will be shown in translations if the translation is outdated.
@@ -292,63 +270,58 @@ if ( !defined( 'TRANSLATE_FUZZY' ) ) {
* - source text to translate
* - private API key if provided
*/
-$GLOBALS['wgTranslateTranslationServices'] = array();
-$GLOBALS['wgTranslateTranslationServices']['TTMServer'] = array(
+$wgTranslateTranslationDefaultService = 'TTMServer';
+$wgTranslateTranslationServices = [];
+$wgTranslateTranslationServices['TTMServer'] = [
'database' => false, // Passed to wfGetDB
'cutoff' => 0.75,
'type' => 'ttmserver',
'public' => false,
-);
-$GLOBALS['wgTranslateTranslationServices']['Microsoft'] = array(
+];
+$wgTranslateTranslationServices['Microsoft'] = [
'url' => 'http://api.microsofttranslator.com/V2/Http.svc/Translate',
'key' => null,
'timeout' => 3,
'type' => 'microsoft',
-);
-$GLOBALS['wgTranslateTranslationServices']['Apertium'] = array(
- 'url' => 'http://api.apertium.org/json/translate',
- 'pairs' => 'http://api.apertium.org/json/listPairs',
+];
+$wgTranslateTranslationServices['Apertium'] = [
+ 'url' => 'http://apy.projectjj.com/translate',
+ 'pairs' => 'http://apy.projectjj.com/listPairs',
'key' => null,
'timeout' => 3,
'type' => 'apertium',
-);
-$GLOBALS['wgTranslateTranslationServices']['Yandex'] = array(
+];
+$wgTranslateTranslationServices['Yandex'] = [
'url' => 'https://translate.yandex.net/api/v1.5/tr.json/translate',
'key' => null,
'pairs' => 'https://translate.yandex.net/api/v1.5/tr.json/getLangs',
'timeout' => 3,
- 'langorder' => array( 'en', 'ru', 'uk', 'de', 'fr', 'pl', 'it', 'es', 'tr' ),
+ 'langorder' => [ 'en', 'ru', 'uk', 'de', 'fr', 'pl', 'it', 'es', 'tr' ],
'langlimit' => 1,
'type' => 'yandex',
-);
+];
/**
- * List of tasks in Special:Translate. If you are only using page translation
- * feature, you might want to disable 'optional' task. Example:
- * unset($wgTranslateTasks['optional']);
- */
-$GLOBALS['wgTranslateTasks'] = array(
- 'view' => 'ViewMessagesTask',
- 'untranslated' => 'ViewUntranslatedTask',
- 'optional' => 'ViewOptionalTask',
- 'acceptqueue' => 'AcceptQueueMessagesTask',
- 'reviewall' => 'ReviewAllMessagesTask',
- 'export-as-po' => 'ExportasPoMessagesTask',
- 'export-to-file' => 'ExportToFileMessagesTask',
- 'custom' => 'CustomFilteredMessagesTask',
-);
-
-/**
- * Experimental support for Ask help button.
- * Might change into hook later on.
- * This is an array with keys page and params.
+ * Experimental support for an "Ask" help button.
+ * Might change into a hook later on.
+ * This is an array with keys page, url and params.
* - page is a title of a local wiki page
+ * - url is an URL to use as is (e.g. an issue tracker submission form)
+ * which will override the page if set
* - params is an array of key-value pairs of request params
- * -- param value can contain variable %MESSAGE% which will be replaced with
- * full page name.
+ * -- each param value can contain the variable %MESSAGE%
+ * which will be replaced with the full page name.
* @since 2011-03-11
*/
-$GLOBALS['wgTranslateSupportUrl'] = false;
+$wgTranslateSupportUrl = false;
+
+/**
+ * Like $wgTranslateSupportUrl, but for a specific namespace.
+ * Each $wgTranslateSupportUrl-like array needs to be the value
+ * assigned to the numerical ID of a namespace of the wiki.
+ * @since 2015.09
+ */
+$wgTranslateSupportUrlNamespace = [];
/**
* When unprivileged users open a translation editor, they will
@@ -358,8 +331,8 @@ $GLOBALS['wgTranslateSupportUrl'] = false;
* The target needs to be reiterated with the second variable to have
* the same result with sandbox enabled where users can't enter the sandbox.
*/
-$GLOBALS['wgTranslatePermissionUrl'] = 'Project:Translator';
-$GLOBALS['wgTranslateSecondaryPermissionUrl'] = 'Project:Translator';
+$wgTranslatePermissionUrl = 'Project:Translator';
+$wgTranslateSecondaryPermissionUrl = 'Project:Translator';
# </source>
# === Page translation feature ===
@@ -373,13 +346,13 @@ $GLOBALS['wgTranslateSecondaryPermissionUrl'] = 'Project:Translator';
* @defgroup PageTranslation Page Translation
* @see https://www.mediawiki.org/wiki/Help:Extension:Translate/Page_translation_administration
*/
-$GLOBALS['wgEnablePageTranslation'] = true;
+$wgEnablePageTranslation = true;
/**
* Number for the Translations namespace. Change this if it conflicts with
* other namespace in your wiki.
*/
-$GLOBALS['wgPageTranslationNamespace'] = 1198;
+$wgPageTranslationNamespace = 1198;
/**
* If set to true, when a user selects an interface language via ULS (Universal
@@ -392,7 +365,31 @@ $GLOBALS['wgPageTranslationNamespace'] = 1198;
* Special:MyLanguage syntax).
* @since 2013-03-10
*/
-$GLOBALS['wgTranslatePageTranslationULS'] = false;
+$wgTranslatePageTranslationULS = false;
+
+/**
+ * If set to true, when a translated page has some units marked as outdated, the
+ * outdated translation will be shown. If set to false, the original updated unit
+ * in the original language will be shown.
+ *
+ * Changing this setting requires the following script to be run to take effect on
+ * existing changes: scripts/refresh-translatable-pages.php
+ * @since 2016.12
+ */
+$wgTranslateKeepOutdatedTranslations = true;
+
+/**
+ * How language list for translatable pages is shown. Allowed values:
+ * tag-only: Only display languages with the \<languages /> tag.
+ * sidebar-only: Display languages as interlanguage links only and ignore the
+ * tag even if present on the page.
+ * sidebar-fallback: Display languages as interlanguage links if no tag is on
+ * the page.
+ * sidebar-always: Display languages as interlanguage links and also in tag if
+ * it is present on the page.
+ * @since 2018.07
+ */
+$wgPageTranslationLanguageList = 'tag-only';
# </source>
# === Message group configuration ===
@@ -418,7 +415,7 @@ $GLOBALS['wgTranslatePageTranslationULS'] = false;
* );
*/
-$GLOBALS['wgTranslateBlacklist'] = array();
+$wgTranslateBlacklist = [];
/**
* File containing checks that are to be skipped. See
@@ -427,7 +424,7 @@ $GLOBALS['wgTranslateBlacklist'] = array();
*
* @since 2012-10-15
*/
-$GLOBALS['wgTranslateCheckBlacklist'] = false;
+$wgTranslateCheckBlacklist = false;
/**
* Two-dimensional array of rules that blacklists certain authors from appearing
@@ -441,14 +438,14 @@ $GLOBALS['wgTranslateCheckBlacklist'] = false;
* As an example by default we have rule that ignores all authors whose name
* ends in a bot for all languages and all groups.
*/
-$GLOBALS['wgTranslateAuthorBlacklist'] = array();
-$GLOBALS['wgTranslateAuthorBlacklist'][] = array( 'black', '/^.*;.*;.*Bot$/Ui' );
+$wgTranslateAuthorBlacklist = [];
+$wgTranslateAuthorBlacklist[] = [ 'black', '/^.*;.*;.*Bot$/Ui' ];
/**
* List of namespace that contain messages. No talk namespaces.
* @see https://www.mediawiki.org/wiki/Help:Extension:Translate/Group_configuration
*/
-$GLOBALS['wgTranslateMessageNamespaces'] = array();
+$wgTranslateMessageNamespaces = [];
/**
* CC = Custom classes.
@@ -457,12 +454,12 @@ $GLOBALS['wgTranslateMessageNamespaces'] = array();
* or callable function.
* @deprecated Use TranslatePostInitGroups hook instead.
*/
-$GLOBALS['wgTranslateCC'] = array();
+$wgTranslateCC = [];
/**
* Location in the filesystem to which paths are relative in custom groups.
*/
-$GLOBALS['wgTranslateGroupRoot'] = '/var/www/externals';
+$wgTranslateGroupRoot = '/var/www/externals';
/**
* The newest and recommended way of adding custom groups is YAML files.
@@ -470,7 +467,7 @@ $GLOBALS['wgTranslateGroupRoot'] = '/var/www/externals';
* Usage example:
* $wgTranslateGroupFiles[] = "$IP/extensions/Translate/groups/Shapado/Shapado.yml";
*/
-$GLOBALS['wgTranslateGroupFiles'] = array();
+$wgTranslateGroupFiles = [];
/**
* List of possible message group review workflow states and properties
@@ -495,7 +492,13 @@ $GLOBALS['wgTranslateGroupFiles'] = array();
* ),
* );
*/
-$GLOBALS['wgTranslateWorkflowStates'] = false;
+$wgTranslateWorkflowStates = false;
+
+/**
+ * Map from deprecated group IDs to their current ID
+ * Example value: array( 'core' => 'mediawiki-core' )
+ */
+$wgTranslateGroupAliases = [];
# </source>
# === System setup related configuration ===
@@ -503,13 +506,13 @@ $GLOBALS['wgTranslateWorkflowStates'] = false;
/**
* Set location of cache files. Defaults to $wgCacheDirectory.
*/
-$GLOBALS['wgTranslateCacheDirectory'] = false;
+$wgTranslateCacheDirectory = false;
/**
* Configures how the message index is stored.
* The other backends need $wgCacheDirectory to be functional.
*/
-$GLOBALS['wgTranslateMessageIndex'] = array( 'DatabaseMessageIndex' );
+$wgTranslateMessageIndex = [ 'DatabaseMessageIndex' ];
// $wgTranslateMessageIndex = array( 'SerializedMessageIndex' );
// $wgTranslateMessageIndex = array( 'CDBMessageIndex' );
@@ -520,7 +523,7 @@ $GLOBALS['wgTranslateMessageIndex'] = array( 'DatabaseMessageIndex' );
* processed outside of requests via cron or similar.
* @since 2012-05-03
*/
-$GLOBALS['wgTranslateDelayedMessageIndexRebuild'] = false;
+$wgTranslateDelayedMessageIndexRebuild = false;
# </source>
# ==== PHPlot ====
@@ -529,7 +532,7 @@ $GLOBALS['wgTranslateDelayedMessageIndexRebuild'] = false;
* For Special:TranslationStats PHPlot is needed to produce graphs.
* Set this the location of phplot.php.
*/
-$GLOBALS['wgTranslatePHPlot'] = false;
+$wgTranslatePHPlot = false;
/**
* The default font for PHPlot for drawing text. Only used if the automatic
@@ -539,7 +542,7 @@ $GLOBALS['wgTranslatePHPlot'] = false;
* to change the code to use hard-coded font, or copy fonts to location PHP
* can access them, and make sure fc-match returns only those fonts.
*/
-$GLOBALS['wgTranslatePHPlotFont'] = '/usr/share/fonts/truetype/ttf-dejavu/DejaVuSans.ttf';
+$wgTranslatePHPlotFont = '/usr/share/fonts/truetype/ttf-dejavu/DejaVuSans.ttf';
# </source>
# ==== YAML driver ====
@@ -547,7 +550,7 @@ $GLOBALS['wgTranslatePHPlotFont'] = '/usr/share/fonts/truetype/ttf-dejavu/DejaVu
/**
* Currently supported YAML drivers are phpyaml, spyc and syck.
*
- * For phpyaml see http://php.net/manual/en/book.yaml.php.
+ * For phpyaml see https://secure.php.net/manual/en/book.yaml.php.
*
* For syck we're shelling out to perl. So you need:
*
@@ -567,8 +570,10 @@ $GLOBALS['wgTranslatePHPlotFont'] = '/usr/share/fonts/truetype/ttf-dejavu/DejaVu
* phpyaml is the fastest and based on libyaml so the output should be most
* compatible. spyc output format is least compatible. syck is slowest but
* almost as good as phpyaml.
+ *
+ * spyc needs to be installed using composer. See https://www.mediawiki.org/wiki/Composer
*/
-$GLOBALS['wgTranslateYamlLibrary'] = 'spyc';
+$wgTranslateYamlLibrary = function_exists( 'yaml_parse' ) ? 'phpyaml' : 'spyc';
# </source>
# ==== Sandbox ====
@@ -576,30 +581,32 @@ $GLOBALS['wgTranslateYamlLibrary'] = 'spyc';
/**
* Whether to allow users to sign up via a sandbox. Sandboxed users cannot do
- * much until approved and thus they can be get rid of easily. Only works with
- * MediaWiki 1.22 or newer.
+ * much until approved and thus they can be get rid of easily. This only works
+ * with MediaWiki 1.27 and newer, and only if registration is configured to not
+ * use account creation providers which give REDIRECT or UI responses or
+ * require any other field than the default username/password/email.
* @since 2013.04
*/
-$GLOBALS['wgTranslateUseSandbox'] = false;
+$wgTranslateUseSandbox = false;
/**
* To which group the translators are promoted. If left at false, they will just
* be removed from sandbox and become normal users.
* @since 2013.04
*/
-$GLOBALS['wgTranslateSandboxPromotedGroup'] = false;
+$wgTranslateSandboxPromotedGroup = false;
/**
* List of page names to always suggest for sandboxed users.
* @since 2013.10
*/
-$GLOBALS['wgTranslateSandboxSuggestions'] = array();
+$wgTranslateSandboxSuggestions = [];
/**
* Maximum number of translations a user can make in the sandbox.
* @since 2013.10
*/
-$GLOBALS['wgTranslateSandboxLimit'] = 20;
+$wgTranslateSandboxLimit = 20;
# </source>
# === Unsorted ===
@@ -610,28 +617,28 @@ $GLOBALS['wgTranslateSandboxLimit'] = 20;
* false it allows users to put untransformed syntax such as "~~~~" into
* a page without having them be transformed upon save.
*/
-$GLOBALS['wgTranslateUsePreSaveTransform'] = false;
+$wgTranslateUsePreSaveTransform = false;
/**
* Default action for the RecentChanges filter, which makes it possible to filter
* translations away or show them only.
* Possible values: ('noaction', 'only', 'filter', 'site')
*/
-$GLOBALS['wgTranslateRcFilterDefault'] = 'filter';
+$wgTranslateRcFilterDefault = 'filter';
/**
* Set this to config like $wgTranslateTranslationServices if you want to run
* SolrTTMServer tests.
* @since 2013-01-04
*/
-$GLOBALS['wgTranslateTestTTMServer'] = null;
+$wgTranslateTestTTMServer = null;
/**
* List of user names that are allowed to alter their privileges and do other
* things. Used for supporting integration testing.
* @since 2013.10
*/
-$GLOBALS['wgTranslateTestUsers'] = array();
+$wgTranslateTestUsers = [];
# </source>
@@ -640,14 +647,18 @@ $GLOBALS['wgTranslateTestUsers'] = array();
*
* It defines constants for the namespace (and talk namespace) and sets up
* restrictions and some other configuration.
- * @param $id \int Namespace number
- * @param $name \string Name of the namespace
+ * @param int $id Namespace number
+ * @param string $name Name of the namespace
+ * @param string|null $constant (optional) name of namespace constant, defaults to
+ * NS_ followed by upper case version of $name, e.g., NS_MEDIAWIKI
*/
-function wfAddNamespace( $id, $name ) {
+function wfAddNamespace( $id, $name, $constant = null ) {
global $wgExtraNamespaces, $wgContentNamespaces, $wgTranslateMessageNamespaces,
$wgNamespaceProtection, $wgNamespacesWithSubpages, $wgNamespacesToBeSearchedDefault;
- $constant = strtoupper( "NS_$name" );
+ if ( is_null( $constant ) ) {
+ $constant = strtoupper( "NS_$name" );
+ }
define( $constant, $id );
define( $constant . '_TALK', $id + 1 );
@@ -661,9 +672,13 @@ function wfAddNamespace( $id, $name ) {
$wgNamespacesWithSubpages[$id] = true;
$wgNamespacesWithSubpages[$id + 1] = true;
- $wgNamespaceProtection[$id] = array( 'translate' );
+ $wgNamespaceProtection[$id] = [ 'translate' ];
$wgNamespacesToBeSearchedDefault[$id] = true;
}
/** @defgroup TranslateSpecialPage Special pages of Translate extension */
+
+if ( file_exists( __DIR__ . '/vendor/autoload.php' ) ) {
+ require_once __DIR__ . '/vendor/autoload.php';
+}
diff --git a/MLEB/Translate/TranslateEditAddons.php b/MLEB/Translate/TranslateEditAddons.php
index e26a306b..d128ee6d 100644
--- a/MLEB/Translate/TranslateEditAddons.php
+++ b/MLEB/Translate/TranslateEditAddons.php
@@ -6,7 +6,7 @@
* @file
* @author Niklas Laxström
* @author Siebrand Mazeland
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -16,32 +16,66 @@
*/
class TranslateEditAddons {
/**
- * Keep the usual diiba daaba hidden from translators.
+ * Do not show the usual introductory messages on edit page for messages.
* Hook: AlternateEdit
+ * @param EditPage $editPage
*/
- public static function intro( EditPage $editpage ) {
- $handle = new MessageHandle( $editpage->getTitle() );
+ public static function suppressIntro( EditPage $editPage ) {
+ $handle = new MessageHandle( $editPage->getTitle() );
if ( $handle->isValid() ) {
- $editpage->suppressIntro = true;
- $group = $handle->getGroup();
- $languages = $group->getTranslatableLanguages();
- if ( $handle->getCode() && $languages !== null && !isset( $languages[$handle->getCode()] ) ) {
- $editpage->getArticle()->getContext()->getOutput()->wrapWikiMsg(
- "<div class='error'>$1</div>", 'translate-language-disabled'
- );
+ $editPage->suppressIntro = true;
+ }
+ }
- return false;
- }
+ /**
+ * Prevent translations to non-translatable languages for the group
+ * Hook: getUserPermissionsErrorsExpensive
+ *
+ * @param Title $title
+ * @param User $user
+ * @param string $action
+ * @param mixed &$result
+ * @return bool
+ */
+ public static function disallowLangTranslations( Title $title, User $user,
+ $action, &$result
+ ) {
+ global $wgTranslateBlacklist;
+ if ( $action !== 'edit' ) {
return true;
}
- $msg = wfMessage( 'translate-edit-tag-warning' )->inContentLanguage();
- if ( !$msg->isDisabled() &&
- TranslatablePage::isSourcePage( $editpage->getTitle() )
- ) {
- $editpage->editFormTextTop .= $editpage->getArticle()->getContext()
- ->getOutput()->parse( $msg->plain() );
+ $handle = new MessageHandle( $title );
+ if ( !$handle->isValid() ) {
+ return true;
+ }
+
+ if ( $user->isAllowed( 'translate-manage' ) ) {
+ return true;
+ }
+
+ $group = $handle->getGroup();
+ $languages = $group->getTranslatableLanguages();
+ $langCode = $handle->getCode();
+ if ( $languages !== null && $langCode && !isset( $languages[$langCode] ) ) {
+ $result = [ 'translate-language-disabled' ];
+ return false;
+ }
+
+ $groupId = $group->getId();
+ $checks = [
+ $groupId,
+ strtok( $groupId, '-' ),
+ '*'
+ ];
+
+ foreach ( $checks as $check ) {
+ if ( isset( $wgTranslateBlacklist[$check][$langCode] ) ) {
+ $reason = $wgTranslateBlacklist[$check][$langCode];
+ $result = [ 'translate-page-disabled', $reason ];
+ return false;
+ }
}
return true;
@@ -50,8 +84,10 @@ class TranslateEditAddons {
/**
* Adds the translation aids and navigation to the normal edit page.
* Hook: EditPage::showEditForm:initial
+ * @param EditPage $object
+ * @return true
*/
- static function addTools( EditPage $object ) {
+ public static function addTools( EditPage $object ) {
$handle = new MessageHandle( $object->getTitle() );
if ( !$handle->isValid() ) {
return true;
@@ -66,11 +102,15 @@ class TranslateEditAddons {
* Replace the normal save button with one that says if you are editing
* message documentation to try to avoid accidents.
* Hook: EditPageBeforeEditButtons
+ *
+ * @param EditPage $editpage
+ * @param array &$buttons
+ * @param int $tabindex
*/
- static function buttonHack( EditPage $editpage, &$buttons, $tabindex ) {
+ public static function buttonHack( EditPage $editpage, &$buttons, $tabindex ) {
$handle = new MessageHandle( $editpage->getTitle() );
if ( !$handle->isValid() ) {
- return true;
+ return;
}
$context = $editpage->getArticle()->getContext();
@@ -78,47 +118,43 @@ class TranslateEditAddons {
if ( $handle->isDoc() ) {
$langCode = $context->getLanguage()->getCode();
$name = TranslateUtils::getLanguageName( $handle->getCode(), $langCode );
- $accessKey = $context->msg( 'accesskey-save' )->plain();
- $temp = array(
+ $attribs = [
'id' => 'wpSave',
'name' => 'wpSave',
- 'type' => 'submit',
'tabindex' => ++$tabindex,
- 'value' => $context->msg( 'translate-save', $name )->text(),
- 'accesskey' => $accessKey,
- 'title' => $context->msg( 'tooltip-save' )->text() . ' [' . $accessKey . ']',
- );
- $buttons['save'] = Xml::element( 'input', $temp, '' );
- }
-
- global $wgTranslateSupportUrl;
- if ( !$wgTranslateSupportUrl ) {
- return true;
- }
-
- $supportTitle = Title::newFromText( $wgTranslateSupportUrl['page'] );
- if ( !$supportTitle ) {
- return true;
+ ] + Linker::tooltipAndAccesskeyAttribs( 'save' );
+
+ $saveConfig = OOUI\Element::configFromHtmlAttributes( $attribs );
+ $buttons['save'] = new OOUI\ButtonInputWidget( [
+ // Support: IE 6 – Use <input>, otherwise it can't distinguish which button was clicked
+ 'useInputTag' => true,
+ 'flags' => [ 'progressive', 'primary' ],
+ 'label' => $context->msg( 'translate-save', $name )->text(),
+ 'type' => 'submit',
+ ] + $saveConfig );
}
- $supportParams = $wgTranslateSupportUrl['params'];
- foreach ( $supportParams as &$value ) {
- $value = str_replace( '%MESSAGE%', $handle->getTitle()->getPrefixedText(), $value );
+ try {
+ $supportUrl = SupportAid::getSupportUrl( $handle->getTitle() );
+ } catch ( TranslationHelperException $e ) {
+ return;
}
- $temp = array(
+ $attribs = [
'id' => 'wpSupport',
'name' => 'wpSupport',
'type' => 'button',
'tabindex' => ++$tabindex,
- 'value' => $context->msg( 'translate-js-support' )->text(),
'title' => $context->msg( 'translate-js-support-title' )->text(),
- 'data-load-url' => $supportTitle->getLocalUrl( $supportParams ),
- 'onclick' => "window.open( jQuery(this).attr('data-load-url') );",
- );
- $buttons['ask'] = Html::element( 'input', $temp, '' );
-
- return true;
+ ];
+
+ $attribs += [
+ 'label' => $context->msg( 'translate-js-support' )->text(),
+ 'href' => $supportUrl,
+ 'target' => '_blank',
+ ];
+ $saveConfig = OOUI\Element::configFromHtmlAttributes( $attribs );
+ $buttons['ask'] = new OOUI\ButtonWidget( $saveConfig );
}
/**
@@ -149,18 +185,28 @@ class TranslateEditAddons {
/**
* Runs message checks, adds tp:transver tags and updates statistics.
* Hook: PageContentSaveComplete
+ * @param WikiPage $wikiPage
+ * @param User $user
+ * @param Content $content
+ * @param string $summary
+ * @param bool $minor
+ * @param string $_1
+ * @param bool $_2
+ * @param int $flags
+ * @param Revision $revision
+ * @return true
*/
public static function onSave( WikiPage $wikiPage, $user, $content, $summary,
- $minor, $_, $_, $flags, $revision
+ $minor, $_1, $_2, $flags, $revision
) {
+ global $wgEnablePageTranslation;
- if ( $content instanceof TextContent ) {
- $text = $content->getNativeData();
- } else {
+ if ( !$content instanceof TextContent ) {
// Screw it, not interested
return true;
}
+ $text = $content->getNativeData();
$title = $wikiPage->getTitle();
$handle = new MessageHandle( $title );
@@ -170,21 +216,38 @@ class TranslateEditAddons {
// Update it.
if ( $revision === null ) {
- $rev = $wikiPage->getTitle()->getLatestRevId();
+ $rev = $wikiPage->getTitle()->getLatestRevID();
} else {
$rev = $revision->getID();
}
$fuzzy = self::checkNeedsFuzzy( $handle, $text );
self::updateFuzzyTag( $title, $rev, $fuzzy );
- wfRunHooks( 'TranslateEventTranslationEdit', array( $handle ) );
+
+ $group = $handle->getGroup();
+ // Update translation stats - source language should always be up to date
+ if ( $handle->getCode() !== $group->getSourceLanguage() ) {
+ MessageGroupStats::forItem(
+ $group->getId(),
+ $handle->getCode(),
+ MessageGroupStats::FLAG_NO_CACHE
+ );
+ }
+
+ MessageGroupStatesUpdaterJob::onChange( $handle );
if ( $fuzzy === false ) {
- wfRunHooks( 'Translate:newTranslation', array( $handle, $rev, $text, $user ) );
+ Hooks::run( 'Translate:newTranslation', [ $handle, $rev, $text, $user ] );
}
TTMServer::onChange( $handle, $text, $fuzzy );
+ if ( $wgEnablePageTranslation && $handle->isPageTranslation() ) {
+ // Updates for translatable pages only
+ PageTranslationHooks::onSectionSave( $wikiPage, $user, $content,
+ $summary, $minor, $flags, $revision, $handle );
+ }
+
return true;
}
@@ -227,24 +290,27 @@ class TranslateEditAddons {
/**
* @param Title $title
* @param int $revision
- * @param bool $fuzzy
+ * @param bool $fuzzy Whether to fuzzy or not
+ * @return bool Whether status changed
*/
protected static function updateFuzzyTag( Title $title, $revision, $fuzzy ) {
$dbw = wfGetDB( DB_MASTER );
- $conds = array(
+ $conds = [
'rt_page' => $title->getArticleID(),
'rt_type' => RevTag::getType( 'fuzzy' ),
'rt_revision' => $revision
- );
+ ];
// Replace the existing fuzzy tag, if any
if ( $fuzzy !== false ) {
$index = array_keys( $conds );
- $dbw->replace( 'revtag', array( $index ), $conds, __METHOD__ );
+ $dbw->replace( 'revtag', [ $index ], $conds, __METHOD__ );
} else {
$dbw->delete( 'revtag', $conds, __METHOD__ );
}
+
+ return (bool)$dbw->affectedRows();
}
/**
@@ -278,14 +344,14 @@ class TranslateEditAddons {
$dbw = wfGetDB( DB_MASTER );
- $conds = array(
+ $conds = [
'rt_page' => $title->getArticleID(),
'rt_type' => RevTag::getType( 'tp:transver' ),
'rt_revision' => $revision,
'rt_value' => $definitionRevision,
- );
- $index = array( 'rt_type', 'rt_page', 'rt_revision' );
- $dbw->replace( 'revtag', array( $index ), $conds, __METHOD__ );
+ ];
+ $index = [ 'rt_type', 'rt_page', 'rt_revision' ];
+ $dbw->replace( 'revtag', [ $index ], $conds, __METHOD__ );
return true;
}
@@ -296,7 +362,7 @@ class TranslateEditAddons {
* @param ParserOptions $popts
* @return bool
*/
- public static function disablePreSaveTransform( $wikiPage, ParserOptions $popts ) {
+ public static function disablePreSaveTransform( WikiPage $wikiPage, ParserOptions $popts ) {
global $wgTranslateUsePreSaveTransform;
if ( !$wgTranslateUsePreSaveTransform ) {
@@ -311,6 +377,9 @@ class TranslateEditAddons {
/**
* Hook: ArticleContentOnDiff
+ * @param DifferenceEngine $de
+ * @param OutputPage $out
+ * @return true
*/
public static function displayOnDiff( DifferenceEngine $de, OutputPage $out ) {
$title = $de->getTitle();
@@ -324,26 +393,32 @@ class TranslateEditAddons {
$th->setEditMode( false );
$de->loadNewText();
- if ( $de->mNewContent instanceof TextContent ) {
- $th->setTranslation( $de->mNewContent->getNativeData() );
+ if ( method_exists( $de, 'getNewRevision' ) ) {
+ $newRevision = $de->getNewRevision();
+ $newContent = $newRevision ? $newRevision->getContent( 'main' ) : null;
+ } else {
+ $newContent = $de->mNewRev ? $de->mNewRev->getContent() : null;
+ }
+ if ( $newContent instanceof TextContent ) {
+ $th->setTranslation( $newContent->getNativeData() );
} else {
// Screw you, not interested.
return true;
}
TranslationHelpers::addModules( $out );
- $boxes = array();
- $boxes[] = $th->callBox( 'documentation', array( $th, 'getDocumentationBox' ) );
- $boxes[] = $th->callBox( 'definition', array( $th, 'getDefinitionBox' ) );
- $boxes[] = $th->callBox( 'translation', array( $th, 'getTranslationDisplayBox' ) );
+ $boxes = [];
+ $boxes[] = $th->callBox( 'documentation', [ $th, 'getDocumentationBox' ] );
+ $boxes[] = $th->callBox( 'definition', [ $th, 'getDefinitionBox' ] );
+ $boxes[] = $th->callBox( 'translation', [ $th, 'getTranslationDisplayBox' ] );
$output = implode( "\n", $boxes );
$output = Html::rawElement(
'div',
- array( 'class' => 'mw-sp-translate-edit-fields' ),
+ [ 'class' => 'mw-sp-translate-edit-fields' ],
$output
);
- $out->addHtml( $output );
+ $out->addHTML( $output );
return true;
}
diff --git a/MLEB/Translate/TranslateGroupDescriptions.i18n.php b/MLEB/Translate/TranslateGroupDescriptions.i18n.php
deleted file mode 100644
index 50c43918..00000000
--- a/MLEB/Translate/TranslateGroupDescriptions.i18n.php
+++ /dev/null
@@ -1,35 +0,0 @@
-<?php
-/**
- * This is a backwards-compatibility shim, generated by:
- * https://git.wikimedia.org/blob/mediawiki%2Fcore.git/HEAD/maintenance%2FgenerateJsonI18n.php
- *
- * Beginning with MediaWiki 1.23, translation strings are stored in json files,
- * and the EXTENSION.i18n.php file only exists to provide compatibility with
- * older releases of MediaWiki. For more information about this migration, see:
- * https://www.mediawiki.org/wiki/Requests_for_comment/Localisation_format
- *
- * This shim maintains compatibility back to MediaWiki 1.17.
- */
-$messages = array();
-if ( !function_exists( 'wfJsonI18nShim396ebc2df3c99c1e' ) ) {
- function wfJsonI18nShim396ebc2df3c99c1e( $cache, $code, &$cachedData ) {
- $codeSequence = array_merge( array( $code ), $cachedData['fallbackSequence'] );
- foreach ( $codeSequence as $csCode ) {
- $fileName = dirname( __FILE__ ) . "/i18n/groupdescriptions/$csCode.json";
- if ( is_readable( $fileName ) ) {
- $data = FormatJson::decode( file_get_contents( $fileName ), true );
- foreach ( array_keys( $data ) as $key ) {
- if ( $key === '' || $key[0] === '@' ) {
- unset( $data[$key] );
- }
- }
- $cachedData['messages'] = array_merge( $data, $cachedData['messages'] );
- }
-
- $cachedData['deps'][] = new FileDependency( $fileName );
- }
- return true;
- }
-
- $GLOBALS['wgHooks']['LocalisationCacheRecache'][] = 'wfJsonI18nShim396ebc2df3c99c1e';
-}
diff --git a/MLEB/Translate/TranslateHooks.php b/MLEB/Translate/TranslateHooks.php
index 41c2ab1a..7f5b1b07 100644
--- a/MLEB/Translate/TranslateHooks.php
+++ b/MLEB/Translate/TranslateHooks.php
@@ -4,8 +4,7 @@
*
* @file
* @author Niklas Laxström
- * @copyright Copyright © 2011-2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -13,11 +12,31 @@
*/
class TranslateHooks {
/**
+ * Hook: ResourceLoaderTestModules
+ * @param array &$modules
+ */
+ public static function onResourceLoaderTestModules( array &$modules ) {
+ $modules['qunit']['ext.translate.parsers.test'] = [
+ 'scripts' => [ 'tests/qunit/ext.translate.parsers.test.js' ],
+ 'dependencies' => [ 'ext.translate.parsers' ],
+ 'localBasePath' => __DIR__,
+ 'remoteExtPath' => 'Translate',
+ ];
+
+ $modules['qunit']['ext.translate.special.pagemigration.test'] = [
+ 'scripts' => [ 'tests/qunit/ext.translate.special.pagemigration.test.js' ],
+ 'dependencies' => [ 'ext.translate.special.pagemigration' ],
+ 'localBasePath' => __DIR__,
+ 'remoteExtPath' => 'Translate',
+ ];
+ }
+
+ /**
* Hook: CanonicalNamespaces
- * @param $list array
- * @return bool
+ *
+ * @param array &$list
*/
- public static function setupNamespaces( &$list ) {
+ public static function setupNamespaces( array &$list ) {
global $wgPageTranslationNamespace, $wgNamespaceRobotPolicies;
if ( !defined( 'NS_TRANSLATIONS' ) ) {
define( 'NS_TRANSLATIONS', $wgPageTranslationNamespace );
@@ -26,8 +45,6 @@ class TranslateHooks {
$list[NS_TRANSLATIONS] = 'Translations';
$list[NS_TRANSLATIONS_TALK] = 'Translations_talk';
$wgNamespaceRobotPolicies[NS_TRANSLATIONS] = 'noindex';
-
- return true;
}
/**
@@ -46,20 +63,25 @@ class TranslateHooks {
global $wgEnablePageTranslation;
if ( $wgEnablePageTranslation ) {
// Special page and the right to use it
- global $wgSpecialPages, $wgAvailableRights, $wgSpecialPageGroups;
+ global $wgSpecialPages, $wgAvailableRights;
$wgSpecialPages['PageTranslation'] = 'SpecialPageTranslation';
- $wgSpecialPageGroups['PageTranslation'] = 'pagetools';
$wgSpecialPages['PageTranslationDeletePage'] = 'SpecialPageTranslationDeletePage';
- $wgSpecialPageGroups['PageTranslationDeletePage'] = 'pagetools';
+ // right-pagetranslation action-pagetranslation
$wgAvailableRights[] = 'pagetranslation';
$wgSpecialPages['PageMigration'] = 'SpecialPageMigration';
- $wgSpecialPageGroups['PageMigration'] = 'wiki';
$wgSpecialPages['PagePreparation'] = 'SpecialPagePreparation';
- $wgSpecialPageGroups['PagePreparation'] = 'wiki';
- global $wgLogActionsHandlers, $wgLogTypes;
+ global $wgActionFilteredLogs, $wgLogActionsHandlers, $wgLogTypes;
+
+ // log-description-pagetranslation log-name-pagetranslation logentry-pagetranslation-mark
+ // logentry-pagetranslation-unmark logentry-pagetranslation-moveok
+ // logentry-pagetranslation-movenok logentry-pagetranslation-deletefok
+ // logentry-pagetranslation-deletefnok logentry-pagetranslation-deletelok
+ // logentry-pagetranslation-deletelnok logentry-pagetranslation-encourage
+ // logentry-pagetranslation-discourage logentry-pagetranslation-prioritylanguages
+ // logentry-pagetranslation-associate logentry-pagetranslation-dissociate
$wgLogTypes[] = 'pagetranslation';
$wgLogActionsHandlers['pagetranslation/mark'] = 'PageTranslationLogFormatter';
$wgLogActionsHandlers['pagetranslation/unmark'] = 'PageTranslationLogFormatter';
@@ -75,14 +97,26 @@ class TranslateHooks {
'PageTranslationLogFormatter';
$wgLogActionsHandlers['pagetranslation/associate'] = 'PageTranslationLogFormatter';
$wgLogActionsHandlers['pagetranslation/dissociate'] = 'PageTranslationLogFormatter';
+ $wgActionFilteredLogs['pagetranslation'] = [
+ 'mark' => [ 'mark' ],
+ 'unmark' => [ 'unmark' ],
+ 'move' => [ 'moveok', 'movenok' ],
+ 'delete' => [ 'deletefok', 'deletefnok', 'deletelok', 'deletelnok' ],
+ 'encourage' => [ 'encourage' ],
+ 'discourage' => [ 'discourage' ],
+ 'prioritylanguages' => [ 'prioritylanguages' ],
+ 'aggregategroups' => [ 'associate', 'dissociate' ],
+ ];
global $wgJobClasses;
$wgJobClasses['TranslateRenderJob'] = 'TranslateRenderJob';
$wgJobClasses['RenderJob'] = 'TranslateRenderJob';
+ $wgJobClasses['TranslatablePageMoveJob'] = 'TranslatablePageMoveJob';
$wgJobClasses['TranslateMoveJob'] = 'TranslateMoveJob';
$wgJobClasses['MoveJob'] = 'TranslateMoveJob';
$wgJobClasses['TranslateDeleteJob'] = 'TranslateDeleteJob';
$wgJobClasses['DeleteJob'] = 'TranslateDeleteJob';
+ $wgJobClasses['TranslationsUpdateJob'] = 'TranslationsUpdateJob';
// Namespaces
global $wgPageTranslationNamespace;
@@ -99,7 +133,7 @@ class TranslateHooks {
$wgNamespacesWithSubpages[NS_TRANSLATIONS_TALK] = true;
// Standard protection and register it for filtering
- $wgNamespaceProtection[NS_TRANSLATIONS] = array( 'translate' );
+ $wgNamespaceProtection[NS_TRANSLATIONS] = [ 'translate' ];
$wgTranslateMessageNamespaces[] = NS_TRANSLATIONS;
/// Page translation hooks
@@ -107,9 +141,6 @@ class TranslateHooks {
/// @todo Register our css, is there a better place for this?
$wgHooks['OutputPageBeforeHTML'][] = 'PageTranslationHooks::injectCss';
- // Add transver tags and update translation target pages
- $wgHooks['PageContentSaveComplete'][] = 'PageTranslationHooks::onSectionSave';
-
// Check syntax for \<translate>
$wgHooks['PageContentSave'][] = 'PageTranslationHooks::tpSyntaxCheck';
$wgHooks['EditFilterMergedContent'][] =
@@ -120,21 +151,22 @@ class TranslateHooks {
$wgHooks['RevisionInsertComplete'][] =
'PageTranslationHooks::updateTranstagOnNullRevisions';
- // Register \<languages/>
+ // Register different ways to show language links
$wgHooks['ParserFirstCallInit'][] = 'TranslateHooks::setupParserHooks';
+ $wgHooks['LanguageLinks'][] = 'PageTranslationHooks::addLanguageLinks';
+ $wgHooks['SkinTemplateGetLanguageLink'][] = 'PageTranslationHooks::formatLanguageLink';
// Strip \<translate> tags etc. from source pages when rendering
$wgHooks['ParserBeforeStrip'][] = 'PageTranslationHooks::renderTagPage';
+ $wgHooks['ParserOutputPostCacheTransform'][] =
+ 'PageTranslationHooks::onParserOutputPostCacheTransform';
// Set the page content language
$wgHooks['PageContentLanguage'][] = 'PageTranslationHooks::onPageContentLanguage';
- // Prevent editing of unknown pages in Translations namespace
+ // Prevent editing of certain pages in translations namespace
$wgHooks['getUserPermissionsErrorsExpensive'][] =
- 'PageTranslationHooks::preventUnknownTranslations';
- // Prevent editing of translation in restricted languages
- $wgHooks['getUserPermissionsErrorsExpensive'][] =
- 'PageTranslationHooks::preventRestrictedTranslations';
+ 'PageTranslationHooks::onGetUserPermissionsErrorsExpensive';
// Prevent editing of translation pages directly
$wgHooks['getUserPermissionsErrorsExpensive'][] =
'PageTranslationHooks::preventDirectEditing';
@@ -145,6 +177,9 @@ class TranslateHooks {
// Our custom header for translation pages
$wgHooks['ArticleViewHeader'][] = 'PageTranslationHooks::translatablePageHeader';
+ // Edit notice shown on translatable pages
+ $wgHooks['TitleGetEditNotices'][] = 'PageTranslationHooks::onTitleGetEditNotices';
+
// Custom move page that can move all the associated pages too
$wgHooks['SpecialPage_initList'][] = 'PageTranslationHooks::replaceMovePage';
// Locking during page moves
@@ -156,219 +191,317 @@ class TranslateHooks {
// Replace subpage logic behavior
$wgHooks['SkinSubPageSubtitle'][] = 'PageTranslationHooks::replaceSubtitle';
- // Show page source code when export tab is opened
- $wgHooks['SpecialTranslate::executeTask'][] = 'PageTranslationHooks::sourceExport';
-
// Replaced edit tab with translation tab for translation pages
$wgHooks['SkinTemplateNavigation'][] = 'PageTranslationHooks::translateTab';
// Update translated page when translation unit is moved
$wgHooks['TitleMoveComplete'][] = 'PageTranslationHooks::onMoveTranslationUnits';
+
+ // Update translated page when translation unit is deleted
+ $wgHooks['ArticleDeleteComplete'][] = 'PageTranslationHooks::onDeleteTranslationUnit';
+ }
+
+ global $wgTranslateUseSandbox;
+ if ( $wgTranslateUseSandbox ) {
+ global $wgSpecialPages, $wgAvailableRights, $wgDefaultUserOptions;
+
+ $wgSpecialPages['ManageTranslatorSandbox'] = 'SpecialManageTranslatorSandbox';
+ $wgSpecialPages['TranslationStash'] = 'SpecialTranslationStash';
+ $wgDefaultUserOptions['translate-sandbox'] = '';
+ // right-translate-sandboxmanage action-translate-sandboxmanage
+ $wgAvailableRights[] = 'translate-sandboxmanage';
+
+ $wgHooks['GetPreferences'][] = 'TranslateSandbox::onGetPreferences';
+ $wgHooks['UserGetRights'][] = 'TranslateSandbox::enforcePermissions';
+ $wgHooks['ApiCheckCanExecute'][] = 'TranslateSandbox::onApiCheckCanExecute';
+ $wgHooks['UserGetRights'][] = 'TranslateSandbox::allowAccountCreation';
+
+ global $wgLogTypes, $wgLogActionsHandlers;
+ // log-name-translatorsandbox log-description-translatorsandbox
+ $wgLogTypes[] = 'translatorsandbox';
+ // logentry-translatorsandbox-promoted logentry-translatorsandbox-rejected
+ $wgLogActionsHandlers['translatorsandbox/promoted'] = 'TranslateLogFormatter';
+ $wgLogActionsHandlers['translatorsandbox/rejected'] = 'TranslateLogFormatter';
+
+ // This is no longer used for new entries since 2016.07.
+ // logentry-newusers-tsbpromoted
+ $wgLogActionsHandlers['newusers/tsbpromoted'] = 'LogFormatter';
+
+ global $wgJobClasses;
+ $wgJobClasses['TranslateSandboxEmailJob'] = 'TranslateSandboxEmailJob';
+
+ global $wgAPIModules;
+ $wgAPIModules['translationstash'] = 'ApiTranslationStash';
+ $wgAPIModules['translatesandbox'] = 'ApiTranslateSandbox';
}
}
/**
* Hook: UserGetReservedNames
* Prevents anyone from registering or logging in as FuzzyBot
- * @param array $names
+ *
+ * @param array &$names
*/
- public static function onUserGetReservedNames( &$names ) {
+ public static function onUserGetReservedNames( array &$names ) {
global $wgTranslateFuzzyBotName;
$names[] = $wgTranslateFuzzyBotName;
}
/**
+ * Used for setting an AbuseFilter variable.
+ *
+ * @param AbuseFilterVariableHolder &$vars
+ * @param Title|null $title
+ */
+ public static function onAbuseFilterFilterAction( &$vars, $title ) {
+ if ( !$title instanceof Title ) {
+ wfDebugLog( 'T143073', 'Got non-Title in ' . wfGetAllCallers( 5 ) );
+ return;
+ }
+
+ $handle = new MessageHandle( $title );
+
+ // Only set this variable if we are in a proper namespace to avoid
+ // unnecessary overhead in non-translation pages
+ if ( $handle->isMessageNamespace() ) {
+ $vars->setLazyLoadVar(
+ 'translate_source_text',
+ 'translate-get-source',
+ [ 'handle' => $handle ]
+ );
+ }
+ }
+
+ /**
+ * Computes the translate_source_text AbuseFilter variable
+ * @param string $method
+ * @param AbuseFilterVariableHolder $vars
+ * @param array $parameters
+ * @param null &$result
+ * @return bool
+ */
+ public static function onAbuseFilterComputeVariable( $method, $vars, $parameters, &$result ) {
+ if ( $method !== 'translate-get-source' ) {
+ return true;
+ }
+
+ $handle = $parameters['handle'];
+ $source = '';
+ if ( $handle->isValid() ) {
+ $group = $handle->getGroup();
+ $source = $group->getMessage( $handle->getKey(), $group->getSourceLanguage() );
+ }
+
+ $result = $source;
+
+ return false;
+ }
+
+ /**
+ * Register AbuseFilter variables provided by Translate.
+ * @param array &$builderValues
+ */
+ public static function onAbuseFilterBuilder( &$builderValues ) {
+ // Uses: 'abusefilter-edit-builder-vars-translate-source-text'
+ $builderValues['vars']['translate_source_text'] = 'translate-source-text';
+ }
+
+ /**
* Hook: ParserFirstCallInit
* Registers \<languages> tag with the parser.
*
- * @param $parser Parser
- *
- * @return bool
+ * @param Parser $parser
*/
- public static function setupParserHooks( $parser ) {
+ public static function setupParserHooks( Parser $parser ) {
// For nice language list in-page
- $parser->setHook( 'languages', array( 'PageTranslationHooks', 'languages' ) );
-
- return true;
+ $parser->setHook( 'languages', [ 'PageTranslationHooks', 'languages' ] );
}
/**
* Hook: UnitTestsList
- * @param $files array
- * @return bool
+ *
+ * @param array &$files
*/
public static function setupUnitTests( array &$files ) {
$dir = __DIR__ . '/tests/phpunit';
$directoryIterator = new RecursiveDirectoryIterator( $dir );
$fileIterator = new RecursiveIteratorIterator( $directoryIterator );
- /// @var SplFileInfo $fileInfo
+ /** @var SplFileInfo $fileInfo */
foreach ( $fileIterator as $fileInfo ) {
if ( substr( $fileInfo->getFilename(), -8 ) === 'Test.php' ) {
$files[] = $fileInfo->getPathname();
}
}
-
- return true;
}
/**
* Hook: LoadExtensionSchemaUpdates
- * @param $updater DatabaseUpdater
- * @return bool
+ *
+ * @param DatabaseUpdater $updater
*/
public static function schemaUpdates( DatabaseUpdater $updater ) {
$dir = __DIR__ . '/sql';
- $updater->addExtensionUpdate( array(
+ $updater->addExtensionUpdate( [
'addTable',
'translate_sections',
"$dir/translate_sections.sql",
true
- ) );
- $updater->addExtensionUpdate( array(
+ ] );
+ $updater->addExtensionUpdate( [
'addField',
'translate_sections',
'trs_order',
"$dir/translate_sections-trs_order.patch.sql",
true
- ) );
- $updater->addExtensionUpdate( array(
+ ] );
+ $updater->addExtensionUpdate( [
'addTable',
'revtag', "$dir/revtag.sql",
true
- ) );
- $updater->addExtensionUpdate( array(
+ ] );
+ $updater->addExtensionUpdate( [
'addTable',
'translate_groupstats',
"$dir/translate_groupstats.sql",
true
- ) );
- $updater->addExtensionUpdate( array(
+ ] );
+ $updater->addExtensionUpdate( [
'addIndex',
'translate_sections',
'trs_page_order',
"$dir/translate_sections-indexchange.sql",
true
- ) );
- $updater->addExtensionUpdate( array(
+ ] );
+ $updater->addExtensionUpdate( [
'dropIndex',
'translate_sections',
'trs_page',
"$dir/translate_sections-indexchange2.sql",
true
- ) );
- $updater->addExtensionUpdate( array(
+ ] );
+ $updater->addExtensionUpdate( [
'addTable',
'translate_reviews',
"$dir/translate_reviews.sql",
true
- ) );
- $updater->addExtensionUpdate( array(
+ ] );
+ $updater->addExtensionUpdate( [
'addTable',
'translate_groupreviews',
"$dir/translate_groupreviews.sql",
true
- ) );
- $updater->addExtensionUpdate( array(
+ ] );
+ $updater->addExtensionUpdate( [
'addTable',
'translate_tms',
"$dir/translate_tm.sql",
true
- ) );
- $updater->addExtensionUpdate( array(
+ ] );
+ $updater->addExtensionUpdate( [
'addTable',
'translate_metadata',
"$dir/translate_metadata.sql",
true
- ) );
- $updater->addExtensionUpdate( array(
+ ] );
+ $updater->addExtensionUpdate( [
'addTable', 'translate_messageindex',
"$dir/translate_messageindex.sql",
true
- ) );
- $updater->addExtensionUpdate( array(
+ ] );
+ $updater->addExtensionUpdate( [
'addIndex',
'translate_groupstats',
'tgs_lang',
"$dir/translate_groupstats-indexchange.sql",
true
- ) );
- $updater->addExtensionUpdate( array(
+ ] );
+ $updater->addExtensionUpdate( [
'addField', 'translate_groupstats',
'tgs_proofread',
"$dir/translate_groupstats-proofread.sql",
true
- ) );
+ ] );
- $updater->addExtensionUpdate( array(
+ $updater->addExtensionUpdate( [
'addTable',
'translate_stash',
"$dir/translate_stash.sql",
true
- ) );
+ ] );
- return true;
+ // This also adds a PRIMARY KEY
+ $updater->addExtensionUpdate( [
+ 'renameIndex',
+ 'translate_reviews',
+ 'trr_user_page_revision',
+ 'PRIMARY',
+ false,
+ "$dir/translate_reviews-patch-01-primary-key.sql",
+ true
+ ] );
}
/**
* Hook: ParserTestTables
+ * @param array &$tables
*/
public static function parserTestTables( array &$tables ) {
$tables[] = 'revtag';
$tables[] = 'translate_groupstats';
$tables[] = 'translate_messageindex';
$tables[] = 'translate_stash';
-
- return true;
}
/**
- * Set the correct page content language for translation units.
* Hook: PageContentLanguage
- * @param $title Title
- * @param $pageLang
- * @return bool
+ * Set the correct page content language for translation units.
+ *
+ * @param Title $title
+ * @param Language &$pageLang
*/
public static function onPageContentLanguage( Title $title, &$pageLang ) {
$handle = new MessageHandle( $title );
if ( $handle->isMessageNamespace() ) {
- $pageLang = $handle->getEffectiveLanguageCode();
+ $pageLang = $handle->getEffectiveLanguage();
}
-
- return true;
}
/**
* Hook: LanguageGetTranslatedLanguageNames
* Hook: TranslateSupportedLanguages
+ * @param array &$names
+ * @param string $code
*/
- public static function translateMessageDocumentationLanguage( &$names, $code ) {
+ public static function translateMessageDocumentationLanguage( array &$names, $code ) {
global $wgTranslateDocumentationLanguageCode;
if ( $wgTranslateDocumentationLanguageCode ) {
- // Special case the native name, assuming it is given as a string
- if ( $wgTranslateDocumentationLanguageCode === $code ) {
+ // Special case the autonyms
+ if (
+ $wgTranslateDocumentationLanguageCode === $code ||
+ $code === null
+ ) {
$code = 'en';
}
$names[$wgTranslateDocumentationLanguageCode] =
wfMessage( 'translate-documentation-language' )->inLanguage( $code )->plain();
}
-
- return true;
}
/**
* Hook: SpecialSearchProfiles
+ * @param array &$profiles
*/
public static function searchProfile( array &$profiles ) {
global $wgTranslateMessageNamespaces;
- $insert = array();
- $insert['translation'] = array(
+ $insert = [];
+ $insert['translation'] = [
'message' => 'translate-searchprofile',
'tooltip' => 'translate-searchprofile-tooltip',
'namespaces' => $wgTranslateMessageNamespaces,
- );
+ ];
// Insert translations before 'all'
$index = array_search( 'all', array_keys( $profiles ) );
@@ -384,20 +517,40 @@ class TranslateHooks {
$insert,
array_slice( $profiles, $index )
);
-
- return true;
}
/**
* Hook: SpecialSearchProfileForm
+ * @param SpecialSearch $search
+ * @param string &$form
+ * @param string $profile
+ * @param string $term
+ * @param array $opts
+ * @return bool
*/
- public static function searchProfileForm( SpecialSearch $search, &$form,
- /*string*/$profile, $term, array $opts
+ public static function searchProfileForm(
+ SpecialSearch $search,
+ /*string*/&$form,
+ /*string*/$profile,
+ /*string*/$term,
+ array $opts
) {
if ( $profile !== 'translation' ) {
return true;
}
+ $server = TTMServer::primary();
+ if ( TTMServer::primary() instanceof SearchableTTMServer ) {
+ $href = SpecialPage::getTitleFor( 'SearchTranslations' )
+ ->getFullUrl( [ 'query' => $term ] );
+ $wrapper = new RawMessage( '<div class="successbox plainlinks">$1</div>' );
+ $form = $wrapper
+ ->params( $search->msg( 'translate-searchprofile-note', $href )->plain() )
+ ->parse();
+
+ return false;
+ }
+
if ( !$search->getSearchEngine()->supports( 'title-suffix-filter' ) ) {
return false;
}
@@ -411,15 +564,7 @@ class TranslateHooks {
$code = $context->getLanguage()->getCode();
$selected = $context->getRequest()->getVal( 'languagefilter' );
- if ( is_callable( array( 'LanguageNames', 'getNames' ) ) ) {
- $languages = LanguageNames::getNames( $code,
- LanguageNames::FALLBACK_NORMAL,
- LanguageNames::LIST_MW
- );
- } else {
- $languages = Language::fetchLanguageNames();
- }
-
+ $languages = TranslateUtils::getLanguageNames( $code );
ksort( $languages );
$selector = new XmlSelect( 'languagefilter', 'languagefilter' );
@@ -435,7 +580,7 @@ class TranslateHooks {
wfMessage( 'translate-search-languagefilter' )->text(),
'languagefilter'
) . '&#160;';
- $params = array( 'id' => 'mw-searchoptions' );
+ $params = [ 'id' => 'mw-searchoptions' ];
$form = Xml::fieldset( false, false, $params ) .
$hidden . $label . $selector .
@@ -444,12 +589,19 @@ class TranslateHooks {
return false;
}
- /// Hook: SpecialSearchSetupEngine
- public static function searchProfileSetupEngine( SpecialSearch $search,
- /*string*/$profile, SearchEngine $engine
+ /**
+ * Hook: SpecialSearchSetupEngine
+ * @param SpecialSearch $search
+ * @param string $profile
+ * @param SearchEngine $engine
+ */
+ public static function searchProfileSetupEngine(
+ SpecialSearch $search,
+ /*string*/$profile,
+ SearchEngine $engine
) {
if ( $profile !== 'translation' ) {
- return true;
+ return;
}
$context = $search->getContext();
@@ -458,17 +610,25 @@ class TranslateHooks {
$engine->setFeatureData( 'title-suffix-filter', "/$selected" );
$search->setExtraParam( 'languagefilter', $selected );
}
-
- return true;
}
- /// Hook: Translate:MessageGroupStats:isIncluded
+ /**
+ * Hook: Translate:MessageGroupStats:isIncluded
+ * @param int $id
+ * @param string $code
+ * @return bool
+ */
public static function hideDiscouragedFromStats( $id, $code ) {
// Return true to keep, false to exclude
return MessageGroups::getPriority( $id ) !== 'discouraged';
}
- /// Hook: Translate:MessageGroupStats:isIncluded
+ /**
+ * Hook: Translate:MessageGroupStats:isIncluded
+ * @param int $id
+ * @param string $code
+ * @return false
+ */
public static function hideRestrictedFromStats( $id, $code ) {
$filterLangs = TranslateMetadata::get( $id, 'prioritylangs' );
if ( strlen( $filterLangs ) === 0 ) {
@@ -482,14 +642,15 @@ class TranslateHooks {
return isset( $filter[$code] );
}
- /// Hook LinksUpdate
+ /**
+ * Hook: LinksUpdate
+ * @param LinksUpdate $updater
+ */
public static function preventCategorization( LinksUpdate $updater ) {
$handle = new MessageHandle( $updater->getTitle() );
if ( $handle->isMessageNamespace() && !$handle->isDoc() ) {
- $updater->mCategories = array();
+ $updater->mCategories = [];
}
-
- return true;
}
/**
@@ -497,14 +658,15 @@ class TranslateHooks {
*
* Adds $wgTranslateDocumentationLanguageCode to ResourceLoader configuration
* when Special:Translate is shown.
+ * @param array &$vars
+ * @param OutputPage $out
*/
- public static function addConfig( &$vars, OutputPage $out ) {
+ public static function addConfig( array &$vars, OutputPage $out ) {
$request = $out->getRequest();
$title = $out->getTitle();
- list( $alias, ) = SpecialPageFactory::resolveAlias( $title->getText() );
+ list( $alias, ) = TranslateUtils::resolveSpecialPageAlias( $title->getText() );
- if ( SpecialTranslate::isBeta( $request )
- && $title->isSpecialPage()
+ if ( $title->isSpecialPage()
&& ( $alias === 'Translate'
|| $alias === 'TranslationStash'
|| $alias === 'SearchTranslations' )
@@ -519,14 +681,13 @@ class TranslateHooks {
$vars['wgTranslatePermissionUrl'] = $wgTranslatePermissionUrl;
$vars['wgTranslateUseSandbox'] = $wgTranslateUseSandbox;
}
-
- return true;
}
/**
* Hook: AdminLinks
+ * @param ALTree $tree
*/
- public static function onAdminLinks( &$tree ) {
+ public static function onAdminLinks( ALTree $tree ) {
global $wgTranslateUseSandbox;
if ( $wgTranslateUseSandbox ) {
@@ -534,131 +695,126 @@ class TranslateHooks {
$row = $tree->getSection( $sectionLabel )->getRow( 'main' );
$row->addItem( ALItem::newFromSpecialPage( 'TranslateSandbox' ) );
}
-
- return true;
}
- private static $userMergeTables = array(
+ /**
+ * Any user of this list should make sure that the tables
+ * actually exist, since they may be optional
+ *
+ * @var array
+ */
+ private static $userMergeTables = [
'translate_stash' => 'ts_user',
'translate_reviews' => 'trr_user',
- );
+ ];
/**
- * Handler for E:UserMerge's MergeAccountFromTo hook
+ * Hook: MergeAccountFromTo
+ * For UserMerge extension.
*
* @param User $oldUser
* @param User $newUser
- * @return bool
*/
- public static function onMergeAccountFromTo( User &$oldUser, User &$newUser ) {
+ public static function onMergeAccountFromTo( User $oldUser, User $newUser ) {
$dbw = wfGetDB( DB_MASTER );
// Update the non-duplicate rows, we'll just delete
// the duplicate ones later
foreach ( self::$userMergeTables as $table => $field ) {
- $dbw->update(
- $table,
- array( $field => $newUser->getId() ),
- array( $field => $oldUser->getId() ),
- __METHOD__,
- array( 'IGNORE' )
- );
+ if ( $dbw->tableExists( $table ) ) {
+ $dbw->update(
+ $table,
+ [ $field => $newUser->getId() ],
+ [ $field => $oldUser->getId() ],
+ __METHOD__,
+ [ 'IGNORE' ]
+ );
+ }
}
-
- return true;
}
/**
- * Handler for E:UserMerge's DeleteAccount hook
+ * Hook: DeleteAccount
+ * For UserMerge extension.
*
* @param User $oldUser
- * @return bool
*/
- public static function onDeleteAccount( User &$oldUser ) {
+ public static function onDeleteAccount( User $oldUser ) {
$dbw = wfGetDB( DB_MASTER );
// Delete any remaining rows that didn't get merged
foreach ( self::$userMergeTables as $table => $field ) {
- $dbw->delete(
- $table,
- array( $field => $oldUser->getId() ),
- __METHOD__
- );
+ if ( $dbw->tableExists( $table ) ) {
+ $dbw->delete(
+ $table,
+ [ $field => $oldUser->getId() ],
+ __METHOD__
+ );
+ }
}
-
- return true;
}
/**
* Hook: AbortEmailNotification
*
* False aborts the email.
+ * @param User $editor
+ * @param Title $title
+ * @param RecentChange $rc
+ * @return bool
*/
- public static function onAbortEmailNotificationReview( $editor, $title, $rc = null ) {
- # In MediaWiki 1.20–23 we don't have the third parameter.
- if ( $rc === null ) {
- return true;
- }
-
+ public static function onAbortEmailNotificationReview(
+ User $editor,
+ Title $title,
+ RecentChange $rc
+ ) {
if ( $rc->mAttribs['rc_log_type'] === 'translationreview' ) {
return false;
}
-
- return true;
}
/**
- * Make Special:MyLanguage links red if the target page doesn't exists.
+ * Hook: TitleIsAlwaysKnown
+ * Make Special:MyLanguage links red if the target page doesn't exist.
* A bit hacky because the core code is not so flexible.
*
- * Hook: LinkBegin
- *
- * @param $dummy
* @param Title $target
- * @param string $html
- * @param array $customAttribs
- * @param array $query
- * @param array $options
- * @param string|null $ret
+ * @param bool &$isKnown
+ * @return bool
*/
- public static function linkfix( $dummy, $target, &$html, &$customAttribs,
- &$query, &$options, &$ret
- ) {
+ public static function onTitleIsAlwaysKnown( Title $target, &$isKnown ) {
if ( !$target->inNamespace( NS_SPECIAL ) ) {
- return;
+ return true;
}
- list( $name, $subpage ) = SpecialPageFactory::resolveAlias( $target->getDBkey() );
+ list( $name, $subpage ) = TranslateUtils::resolveSpecialPageAlias( $target->getDBkey() );
if ( $name !== 'MyLanguage' ) {
- return;
+ return true;
}
if ( (string)$subpage === '' ) {
- return;
+ return true;
}
$realTarget = Title::newFromText( $subpage );
if ( !$realTarget || !$realTarget->exists() ) {
- $options[] = 'broken';
- $index = array_search( 'known', $options, true );
- if ( $index !== false ) {
- unset( $options[$index] );
- }
+ $isKnown = false;
- $index = array_search( 'noclasses', $options, true );
- if ( $index !== false ) {
- unset( $options[$index] );
- }
+ return false;
}
+
+ return true;
}
- public static function setupTranslateParserFunction( &$parser ) {
+ /**
+ * Hook: ParserFirstCallInit
+ * @param Parser $parser
+ */
+ public static function setupTranslateParserFunction( Parser $parser ) {
$parser->setFunctionHook( 'translation', 'TranslateHooks::translateRenderParserFunction' );
-
- return true;
}
- public static function translateRenderParserFunction( $parser ) {
+ public static function translateRenderParserFunction( Parser $parser ) {
$pageTitle = $parser->getTitle();
$handle = new MessageHandle( $pageTitle );
@@ -668,4 +824,19 @@ class TranslateHooks {
}
return '';
}
+
+ public static function onResourceLoaderRegisterModules( ResourceLoader $resourceLoader ) {
+ $modules = [];
+ $modules['ext.translate.recentgroups'] = [
+ 'scripts' => 'resources/js/ext.translate.recentgroups.js',
+ 'dependencies' => [
+ 'mediawiki.storage'
+ ],
+ 'localBasePath' => __DIR__,
+ 'remoteExtPath' => 'Translate',
+ 'targets' => [ 'desktop', 'mobile' ],
+ ];
+
+ $resourceLoader->register( $modules );
+ }
}
diff --git a/MLEB/Translate/TranslateSandbox.i18n.php b/MLEB/Translate/TranslateSandbox.i18n.php
deleted file mode 100644
index c0a7d0d1..00000000
--- a/MLEB/Translate/TranslateSandbox.i18n.php
+++ /dev/null
@@ -1,35 +0,0 @@
-<?php
-/**
- * This is a backwards-compatibility shim, generated by:
- * https://git.wikimedia.org/blob/mediawiki%2Fcore.git/HEAD/maintenance%2FgenerateJsonI18n.php
- *
- * Beginning with MediaWiki 1.23, translation strings are stored in json files,
- * and the EXTENSION.i18n.php file only exists to provide compatibility with
- * older releases of MediaWiki. For more information about this migration, see:
- * https://www.mediawiki.org/wiki/Requests_for_comment/Localisation_format
- *
- * This shim maintains compatibility back to MediaWiki 1.17.
- */
-$messages = array();
-if ( !function_exists( 'wfJsonI18nShimdf5425e6dc1f5f9b' ) ) {
- function wfJsonI18nShimdf5425e6dc1f5f9b( $cache, $code, &$cachedData ) {
- $codeSequence = array_merge( array( $code ), $cachedData['fallbackSequence'] );
- foreach ( $codeSequence as $csCode ) {
- $fileName = dirname( __FILE__ ) . "/i18n/sandbox/$csCode.json";
- if ( is_readable( $fileName ) ) {
- $data = FormatJson::decode( file_get_contents( $fileName ), true );
- foreach ( array_keys( $data ) as $key ) {
- if ( $key === '' || $key[0] === '@' ) {
- unset( $data[$key] );
- }
- }
- $cachedData['messages'] = array_merge( $data, $cachedData['messages'] );
- }
-
- $cachedData['deps'][] = new FileDependency( $fileName );
- }
- return true;
- }
-
- $GLOBALS['wgHooks']['LocalisationCacheRecache'][] = 'wfJsonI18nShimdf5425e6dc1f5f9b';
-}
diff --git a/MLEB/Translate/TranslateSearch.i18n.php b/MLEB/Translate/TranslateSearch.i18n.php
deleted file mode 100644
index 7ad8ea3e..00000000
--- a/MLEB/Translate/TranslateSearch.i18n.php
+++ /dev/null
@@ -1,35 +0,0 @@
-<?php
-/**
- * This is a backwards-compatibility shim, generated by:
- * https://git.wikimedia.org/blob/mediawiki%2Fcore.git/HEAD/maintenance%2FgenerateJsonI18n.php
- *
- * Beginning with MediaWiki 1.23, translation strings are stored in json files,
- * and the EXTENSION.i18n.php file only exists to provide compatibility with
- * older releases of MediaWiki. For more information about this migration, see:
- * https://www.mediawiki.org/wiki/Requests_for_comment/Localisation_format
- *
- * This shim maintains compatibility back to MediaWiki 1.17.
- */
-$messages = array();
-if ( !function_exists( 'wfJsonI18nShimf45fd309dae09aac' ) ) {
- function wfJsonI18nShimf45fd309dae09aac( $cache, $code, &$cachedData ) {
- $codeSequence = array_merge( array( $code ), $cachedData['fallbackSequence'] );
- foreach ( $codeSequence as $csCode ) {
- $fileName = dirname( __FILE__ ) . "/i18n/search/$csCode.json";
- if ( is_readable( $fileName ) ) {
- $data = FormatJson::decode( file_get_contents( $fileName ), true );
- foreach ( array_keys( $data ) as $key ) {
- if ( $key === '' || $key[0] === '@' ) {
- unset( $data[$key] );
- }
- }
- $cachedData['messages'] = array_merge( $data, $cachedData['messages'] );
- }
-
- $cachedData['deps'][] = new FileDependency( $fileName );
- }
- return true;
- }
-
- $GLOBALS['wgHooks']['LocalisationCacheRecache'][] = 'wfJsonI18nShimf45fd309dae09aac';
-}
diff --git a/MLEB/Translate/TranslateTasks.php b/MLEB/Translate/TranslateTasks.php
deleted file mode 100644
index 312bf767..00000000
--- a/MLEB/Translate/TranslateTasks.php
+++ /dev/null
@@ -1,427 +0,0 @@
-<?php
-/**
- * Tasks which encapsulate the processing of messages to requested
- * format for the web interface.
- *
- * @file
- * @author Niklas Laxström
- * @license GPL-2.0+
- */
-
-/**
- * Basic implementation and interface for tasks.
- * Task is a combination of filters and output format that are applied to
- * messages of given message group in given language.
- */
-abstract class TranslateTask {
- /// @var string Task identifier.
- protected $id = '__BUG__';
-
- // We need $id here because staticness prevents subclass overriding.
- /**
- * Get label for task.
- * @param string $id Task id
- * @return string
- */
- public static function labelForTask( $id ) {
- return wfMessage( 'translate-task-' . $id )->text();
- }
-
- /**
- * Get task identifier.
- * @return string
- */
- public function getId() {
- return $this->id;
- }
-
- /**
- * Indicates whether the task itself will hand the full output page,
- * including headers. If false, the resulting html should be embedded
- * to the page of calling context.
- * @return bool
- */
- public function plainOutput() {
- return false;
- }
-
- /**
- * @var MessageGroup
- */
- protected $group;
-
- /**
- * @var MessageCollection
- */
- protected $collection;
-
- /**
- * @var array
- */
- protected $options;
-
- /**
- * @var array
- */
- protected $nondefaults;
-
- /**
- * @var IContextSource
- */
- protected $context;
-
- /**
- * @var array Offsets stored after the collection has been paged.
- */
- protected $offsets;
-
- /**
- * Constructor.
- * @param MessageGroup $group Message group.
- * @param array $options Options.
- * @param array $nondefaults List of non-default options for links.
- * @param IContextSource $context
- */
- final public function init( MessageGroup $group, array $options, array $nondefaults,
- IContextSource $context
- ) {
- $this->group = $group;
- $this->options = $options;
- $this->nondefaults = $nondefaults;
- $this->context = $context;
- }
-
- /**
- * Outputs the results.
- * @return string
- */
- abstract protected function output();
-
- /// Processes messages before paging is done.
- abstract protected function preinit();
-
- /// Processes messages after paging is done.
- abstract protected function postinit();
-
- /**
- * Executes the task with given options and outputs the results.
- * @return string Partial or full html.
- * @see plainOutput()
- */
- final public function execute() {
- $this->preinit();
- $this->doPaging();
- $this->postinit();
-
- return $this->output();
- }
-
- /**
- * Takes a slice of messages according to limit and offset given
- * in option at initialisation time. Calls the callback to provide
- * information how much messages there is.
- */
- protected function doPaging() {
- $total = count( $this->collection );
- $offsets = $this->collection->slice(
- $this->options['offset'],
- $this->options['limit']
- );
- $left = count( $this->collection );
-
- $this->offsets = array(
- 'backwardsOffset' => $offsets[0],
- 'forwardsOffset' => $offsets[1],
- 'start' => $offsets[2],
- 'count' => $left,
- 'total' => $total,
- );
- }
-
- /**
- * Determine whether this user can use this task.
- * Override this method if the task depends on user rights.
- * @param User $user
- * @return string
- */
- public function isAllowedFor( User $user ) {
- return true;
- }
-}
-
-/**
- * Provides essentially free-form filtering access via tasks.
- * This essentially makes all other tasks redundant, and once
- * TUX is finished and everything is using WebAPI we can get
- * rid of these.
- * @since 2012-12-12
- */
-class CustomFilteredMessagesTask extends TranslateTask {
- protected $id = 'custom';
-
- protected function preinit() {
- }
-
- protected function postinit() {
- }
-
- protected function doPaging() {
- }
-
- protected function output() {
- $table = new TuxMessageTable( $this->context, $this->group, $this->options['language'] );
-
- return $table->fullTable();
- }
-}
-
-/**
- * Lists all non-optional messages with translations if any.
- */
-class ViewMessagesTask extends TranslateTask {
- protected $id = 'view';
-
- protected function preinit() {
- $code = $this->options['language'];
- $this->collection = $this->group->initCollection( $code );
- $this->collection->filter( 'ignored' );
- $this->collection->filter( 'optional' );
- }
-
- protected function postinit() {
- $this->collection->loadTranslations();
- }
-
- protected function output() {
- $table = MessageTable::newFromContext( $this->context, $this->collection, $this->group );
-
- return $table->fullTable( $this->offsets, $this->nondefaults );
- }
-}
-
-/**
- * Basic task class for review mode.
- */
-class ReviewMessagesTask extends ViewMessagesTask {
- protected $id = 'review';
-
- protected function preinit() {
- $code = $this->options['language'];
- $this->collection = $this->group->initCollection( $code );
- $this->collection->filter( 'ignored' );
- }
-
- protected function output() {
- $table = MessageTable::newFromContext( $this->context, $this->collection, $this->group );
- $table->setReviewMode();
-
- return $table->fullTable( $this->offsets, $this->nondefaults );
- }
-}
-
-/**
- * Lists untranslated non-optional messages. This is often good default
- * task when translating.
- */
-class ViewUntranslatedTask extends ViewMessagesTask {
- protected $id = 'untranslated';
-
- protected function preinit() {
- $code = $this->options['language'];
- $this->collection = $this->group->initCollection( $code );
- $this->collection->filter( 'ignored' );
- $this->collection->filter( 'optional' );
- $this->collection->filter( 'translated' );
- }
-}
-
-/**
- * Lists optional messages.
- */
-class ViewOptionalTask extends ViewMessagesTask {
- protected $id = 'optional';
-
- protected function preinit() {
- $code = $this->options['language'];
- $this->collection = $this->group->initCollection( $code );
- $this->collection->filter( 'ignored' );
- $this->collection->filter( 'optional', false );
- }
-}
-
-/**
- * Lists all translations for reviewing.
- */
-class ReviewAllMessagesTask extends ReviewMessagesTask {
- protected $id = 'reviewall';
-
- protected function preinit() {
- parent::preinit();
- $this->collection->filter( 'ignored' );
- $this->collection->filter( 'hastranslation', false );
- }
-}
-
-/**
- * Lists all translations the user can accept.
- */
-class AcceptQueueMessagesTask extends ReviewMessagesTask {
- protected $id = 'acceptqueue';
-
- protected function preinit() {
- $user = $this->context->getUser();
- parent::preinit();
- $this->collection->filter( 'ignored' );
- $this->collection->filter( 'hastranslation', false );
- $this->collection->filter( 'fuzzy' );
- $this->collection->filter( 'reviewer', true, $user->getId() );
- $this->collection->filter( 'last-translator', true, $user->getId() );
- }
-
- public function isAllowedFor( User $user ) {
- return $user->isAllowed( 'translate-messagereview' );
- }
-}
-
-/**
- * Exports messages to their native format with embedded textarea.
- */
-class ExportMessagesTask extends ViewMessagesTask {
- protected $id = 'export';
-
- protected function preinit() {
- $code = $this->options['language'];
- $this->collection = $this->group->initCollection( $code );
- // Don't export ignored, unless it is the source language
- // or message documentation
- global $wgTranslateDocumentationLanguageCode;
- if ( $code !== $wgTranslateDocumentationLanguageCode
- && $code !== $this->group->getSourceLanguage()
- ) {
- $this->collection->filter( 'ignored' );
- }
- }
-
- // No paging should be done.
- protected function doPaging() {
- }
-
- public function output() {
- return Html::element(
- 'textarea',
- array( 'id' => 'wpTextbox1', 'rows' => '50' ),
- $this->group->getFFS()->writeIntoVariable( $this->collection )
- );
- }
-}
-
-/**
- * Exports messages to their native format as whole page.
- */
-class ExportToFileMessagesTask extends ExportMessagesTask {
- protected $id = 'export-to-file';
-
- public function plainOutput() {
- return true;
- }
-
- public function output() {
- if ( !$this->group instanceof FileBasedMessageGroup ) {
- return 'Not supported';
- }
-
- $ffs = $this->group->getFFS();
- $data = $ffs->writeIntoVariable( $this->collection );
-
- $filename = basename( $this->group->getSourceFilePath( $this->collection->getLanguage() ) );
- header( "Content-Disposition: attachment; filename=\"$filename\"" );
-
- return $data;
- }
-}
-
-/**
- * Exports messages as special Gettext format that is suitable for off-line
- * translation with tools that support Gettext. These files can later be
- * imported back to the wiki.
- */
-class ExportAsPoMessagesTask extends ExportMessagesTask {
- protected $id = 'export-as-po';
-
- public function plainOutput() {
- return true;
- }
-
- public function output() {
- if ( MessageGroups::isDynamic( $this->group ) ) {
- return 'Not supported';
- }
-
- $ffs = null;
- if ( $this->group instanceof FileBasedMessageGroup ) {
- $ffs = $this->group->getFFS();
- }
-
- if ( !$ffs instanceof GettextFFS ) {
- $group = FileBasedMessageGroup::newFromMessageGroup( $this->group );
- $ffs = new GettextFFS( $group );
- }
-
- $ffs->setOfflineMode( 'true' );
-
- $code = $this->options['language'];
- $id = $this->group->getID();
- $filename = "${id}_$code.po";
- header( "Content-Disposition: attachment; filename=\"$filename\"" );
-
- return $ffs->writeIntoVariable( $this->collection );
- }
-}
-
-/**
- * Collection of functions to get tasks.
- */
-class TranslateTasks {
- /**
- * Return list of available tasks.
- * @param bool $pageTranslation Whether this group is page translation group.
- * @todo Make the above parameter a group and check its class?
- * @return string[] Task identifiers.
- */
- public static function getTasks( $pageTranslation = false ) {
- global $wgTranslateTasks;
-
- // Tasks not to be available in page translation.
- $filterTasks = array(
- 'optional',
- 'export-to-file',
- );
-
- $allTasks = array_keys( $wgTranslateTasks );
-
- if ( $pageTranslation ) {
- $allTasks = array_diff( $allTasks, $filterTasks );
- }
-
- return $allTasks;
- }
-
- /**
- * Get task by id.
- * @param string $id Unique task identifier.
- * @return TranslateTask|null Null if no such task.
- */
- public static function getTask( $id ) {
- global $wgTranslateTasks;
-
- if ( array_key_exists( $id, $wgTranslateTasks ) ) {
- if ( is_callable( $wgTranslateTasks[$id] ) ) {
- return call_user_func( $wgTranslateTasks[$id], $id );
- }
-
- return new $wgTranslateTasks[$id];
- }
-
- return null;
- }
-}
diff --git a/MLEB/Translate/TranslateUtils.php b/MLEB/Translate/TranslateUtils.php
index 09243a36..f9aa5a56 100644
--- a/MLEB/Translate/TranslateUtils.php
+++ b/MLEB/Translate/TranslateUtils.php
@@ -4,10 +4,11 @@
*
* @file
* @author Niklas Laxström
- * @copyright Copyright © 2007-2013 Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
+use MediaWiki\MediaWikiServices;
+
/**
* Essentially random collection of helper functions, similar to GlobalFunctions.php.
*/
@@ -22,7 +23,7 @@ class TranslateUtils {
*/
public static function title( $message, $code, $ns = NS_MEDIAWIKI ) {
// Cache some amount of titles for speed.
- static $cache = array();
+ static $cache = [];
$key = $ns . ':' . $message;
if ( !isset( $cache[$key] ) ) {
@@ -47,7 +48,7 @@ class TranslateUtils {
$code = substr( $text, $pos + 1 );
$key = substr( $text, 0, $pos );
- return array( $key, $code );
+ return [ $key, $code ];
}
/**
@@ -59,7 +60,7 @@ class TranslateUtils {
*/
public static function getMessageContent( $key, $language, $namespace = NS_MEDIAWIKI ) {
$title = self::title( $key, $language, $namespace );
- $data = self::getContents( array( $title ), $namespace );
+ $data = self::getContents( [ $title ], $namespace );
return isset( $data[$title][0] ) ? $data[$title][0] : null;
}
@@ -73,24 +74,41 @@ class TranslateUtils {
* text and last author indexed by page name.
*/
public static function getContents( $titles, $namespace ) {
- $dbr = wfGetDB( DB_SLAVE );
- $rows = $dbr->select( array( 'page', 'revision', 'text' ),
- array( 'page_title', 'old_text', 'old_flags', 'rev_user_text' ),
- array(
+ $dbr = wfGetDB( DB_REPLICA );
+
+ if ( class_exists( ActorMigration::class ) ) {
+ $actorQuery = ActorMigration::newMigration()->getJoin( 'rev_user' );
+ } else {
+ $actorQuery = [
+ 'tables' => [],
+ 'fields' => [ 'rev_user_text' => 'rev_user_text' ],
+ 'joins' => [],
+ ];
+ }
+
+ $rows = $dbr->select( [ 'page', 'revision', 'text' ] + $actorQuery['tables'],
+ [
+ 'page_title', 'old_text', 'old_flags',
+ 'rev_user_text' => $actorQuery['fields']['rev_user_text']
+ ],
+ [
'page_namespace' => $namespace,
- 'page_latest=rev_id',
- 'rev_text_id=old_id',
'page_title' => $titles
- ),
- __METHOD__
+ ],
+ __METHOD__,
+ [],
+ [
+ 'revision' => [ 'JOIN', 'page_latest=rev_id' ],
+ 'text' => [ 'JOIN', 'rev_text_id=old_id' ],
+ ] + $actorQuery['joins']
);
- $titles = array();
+ $titles = [];
foreach ( $rows as $row ) {
- $titles[$row->page_title] = array(
+ $titles[$row->page_title] = [
Revision::getRevisionText( $row ),
$row->rev_user_text
- );
+ ];
}
$rows->free();
@@ -107,36 +125,66 @@ class TranslateUtils {
* @return array List of recent changes.
*/
public static function translationChanges(
- $hours = 24, $bots = false, $ns = null, $extraFields = array()
+ $hours = 24, $bots = false, $ns = null, array $extraFields = []
) {
global $wgTranslateMessageNamespaces;
- $dbr = wfGetDB( DB_SLAVE );
- $recentchanges = $dbr->tableName( 'recentchanges' );
- $hours = intval( $hours );
+ $dbr = wfGetDB( DB_REPLICA );
+
+ if ( class_exists( ActorMigration::class ) ) {
+ $actorQuery = ActorMigration::newMigration()->getJoin( 'rc_user' );
+ } else {
+ $actorQuery = [
+ 'tables' => [],
+ 'fields' => [ 'rc_user_text' => 'rc_user_text' ],
+ 'joins' => [],
+ ];
+ }
+
+ $hours = (int)$hours;
$cutoff_unixtime = time() - ( $hours * 3600 );
$cutoff = $dbr->timestamp( $cutoff_unixtime );
- $namespaces = $dbr->makeList( $wgTranslateMessageNamespaces );
- if ( $ns ) {
- $namespaces = $dbr->makeList( $ns );
+ $conds = [
+ 'rc_timestamp >= ' . $dbr->addQuotes( $cutoff ),
+ 'rc_namespace' => $ns ?: $wgTranslateMessageNamespaces,
+ ];
+ if ( $bots ) {
+ $conds['rc_bot'] = 0;
}
- $fields = array_merge(
- array( 'rc_title', 'rc_timestamp', 'rc_user_text', 'rc_namespace' ),
- $extraFields
+ $res = $dbr->select(
+ [ 'recentchanges' ] + $actorQuery['tables'],
+ array_merge( [
+ 'rc_namespace', 'rc_title', 'rc_timestamp',
+ 'rc_user_text' => $actorQuery['fields']['rc_user_text'],
+ ], $extraFields ),
+ $conds,
+ __METHOD__,
+ [],
+ $actorQuery['joins']
);
- $fields = implode( ',', $fields );
- // @todo Raw SQL
- $sql = "SELECT $fields, substring_index(rc_title, '/', -1) as lang FROM $recentchanges " .
- "WHERE rc_timestamp >= '{$cutoff}' " .
- ( $bots ? '' : 'AND rc_bot = 0 ' ) .
- "AND rc_namespace in ($namespaces) " .
- "ORDER BY lang ASC, rc_timestamp DESC";
-
- $res = $dbr->query( $sql, __METHOD__ );
$rows = iterator_to_array( $res );
+ // Calculate 'lang', then sort by it and rc_timestamp
+ foreach ( $rows as &$row ) {
+ $pos = strrpos( $row->rc_title, '/' );
+ $row->lang = $pos === false ? $row->rc_title : substr( $row->rc_title, $pos + 1 );
+ }
+ unset( $row );
+
+ usort( $rows, function ( $a, $b ) {
+ $x = strcmp( $a->lang, $b->lang );
+ if ( !$x ) {
+ // descending order
+ $x = strcmp(
+ wfTimestamp( TS_MW, $b->rc_timestamp ),
+ wfTimestamp( TS_MW, $a->rc_timestamp )
+ );
+ }
+ return $x;
+ } );
+
return $rows;
}
@@ -145,11 +193,11 @@ class TranslateUtils {
/**
* Returns a localised language name.
* @param string $code Language code.
- * @param string $language Language code of language the the name should be in.
+ * @param null|string $language Language code of the language that the name should be in.
* @return string Best-effort localisation of wanted language name.
*/
public static function getLanguageName( $code, $language = 'en' ) {
- $languages = TranslateUtils::getLanguageNames( $language );
+ $languages = self::getLanguageNames( $language );
if ( isset( $languages[$code] ) ) {
return $languages[$code];
@@ -170,7 +218,7 @@ class TranslateUtils {
$selector->setAttribute( 'id', 'language' );
$selector->setAttribute( 'name', 'language' );
- return $selector->getHtml();
+ return $selector->getHTML();
}
/**
@@ -199,10 +247,10 @@ class TranslateUtils {
* Get translated language names for the languages generally supported for
* translation in the current wiki. Message groups can have further
* exclusions.
- * @param string $code
+ * @param null|string $code
* @return array ( language code => language name )
*/
- public static function getLanguageNames( /*string */$code ) {
+ public static function getLanguageNames( $code ) {
$languageNames = Language::fetchLanguageNames( $code );
// Remove languages with deprecated codes (bug T37475)
@@ -212,12 +260,25 @@ class TranslateUtils {
unset( $languageNames[$dummyLanguageCode] );
}
- wfRunHooks( 'TranslateSupportedLanguages', array( &$languageNames, $code ) );
+ Hooks::run( 'TranslateSupportedLanguages', [ &$languageNames, $code ] );
return $languageNames;
}
/**
+ * Get the normalised IETF language tag.
+ * @param string $code The language code.
+ * @deprecated This provides backward compatibility; replace with
+ * \LanguageCode::bcp47() once MW 1.30 is no longer supported.
+ */
+ public static function bcp47( $code ) {
+ if ( !is_callable( [ 'LanguageCode', 'bcp47' ] ) ) {
+ return wfBCP47( $code );
+ }
+ return LanguageCode::bcp47( $code );
+ }
+
+ /**
* Returns the primary group message belongs to.
* @param int $namespace
* @param string $key
@@ -242,7 +303,7 @@ class TranslateUtils {
if ( isset( $mi[$normkey] ) ) {
return (array)$mi[$normkey];
} else {
- return array();
+ return [];
}
}
@@ -255,7 +316,7 @@ class TranslateUtils {
public static function normaliseKey( $namespace, $key ) {
$key = lcfirst( $key );
- return strtr( "$namespace:$key", " ", "_" );
+ return strtr( "$namespace:$key", ' ', '_' );
}
/**
@@ -265,7 +326,7 @@ class TranslateUtils {
* @param array $attributes Html attributes for the fieldset.
* @return string Html.
*/
- public static function fieldset( $legend, $contents, $attributes = array() ) {
+ public static function fieldset( $legend, $contents, array $attributes = [] ) {
return Xml::openElement( 'fieldset', $attributes ) .
Xml::tags( 'legend', null, $legend ) . $contents .
Xml::closeElement( 'fieldset' );
@@ -324,51 +385,6 @@ class TranslateUtils {
}
/**
- * Adds help link with an icon to upper right corner.
- * @param OutputPage $out
- * @param string $to
- * @param bool $overrideBaseUrl
- * @since 2012-01-12
- */
- public static function addSpecialHelpLink( OutputPage $out, $to, $overrideBaseUrl = false ) {
- $out->addModuleStyles( 'ext.translate.helplink' );
- $text = wfMessage( 'translate-gethelp' )->escaped();
-
- if ( $overrideBaseUrl ) {
- $helpUrl = $to;
- } else {
- $helpUrl = "//www.mediawiki.org/wiki/Special:MyLanguage/$to";
- }
-
- $link = Html::rawElement(
- 'a',
- array(
- 'href' => $helpUrl,
- 'target' => '_blank',
- 'class' => 'mw-translate-helplink',
- ),
- $text
- );
-
- if ( method_exists( $out, 'addIndicators' ) ) {
- $out->addIndicators( array( 'translate-help' => $link ) );
- } else {
- $wrapper = Html::rawElement( 'div', array( 'class' => 'mw-translate-helplink-wrapper' ), $link );
- $out->addHtml( $wrapper );
- }
- }
-
- /**
- * Convenience function to get API query string for retrieving a token.
- * @param string $token
- * @return string
- * @since 2012-05-03
- */
- public static function getTokenAction( $token ) {
- return "action=tokens&type=$token";
- }
-
- /**
* Returns a random string that can be used as placeholder in strings.
* @return string
* @since 2012-07-31
@@ -393,7 +409,7 @@ class TranslateUtils {
return null;
}
- $formats = array();
+ $formats = [];
$filename = substr( $icon, 7 );
$file = wfFindFile( $filename );
@@ -427,4 +443,94 @@ class TranslateUtils {
return $langs;
}
+
+ /**
+ * Get a DB handle suitable for read and read-for-write cases
+ *
+ * @return \Wikimedia\Rdbms\IDatabase Master for HTTP POST, CLI, DB already changed;
+ * slave otherwise
+ */
+ public static function getSafeReadDB() {
+ $lb = MediaWikiServices::getInstance()->getDBLoadBalancer();
+ // Parsing APIs need POST for payloads but are read-only, so avoid spamming
+ // the master then. No good way to check this at the moment...
+ if ( PageTranslationHooks::$renderingContext ) {
+ $index = DB_REPLICA;
+ } else {
+ $index = (
+ PHP_SAPI === 'cli' ||
+ RequestContext::getMain()->getRequest()->wasPosted() ||
+ $lb->hasOrMadeRecentMasterChanges()
+ ) ? DB_MASTER : DB_REPLICA;
+ }
+
+ return $lb->getConnection( $index );
+ }
+
+ /**
+ * Get an URL that points to an editor for this message handle.
+ * @param MessageHandle $handle
+ * @return string Domain relative URL
+ * @since 2017.10
+ */
+ public static function getEditorUrl( MessageHandle $handle ) {
+ if ( !$handle->isValid() ) {
+ return $handle->getTitle()->getLocalURL( [ 'action' => 'edit' ] );
+ }
+
+ $title = self::getSpecialPage( 'Translate' )->getPageTitle();
+ return $title->getLocalURL( [
+ 'showMessage' => $handle->getInternalKey(),
+ 'group' => $handle->getGroup()->getId(),
+ 'language' => $handle->getCode(),
+ ] );
+ }
+
+ /**
+ * Compatibility for pre-1.32, when SpecialPageFactory methods were static.
+ *
+ * @see SpecialPageFactory::resolveAlias
+ * @param string $text
+ * @return array
+ */
+ public static function resolveSpecialPageAlias( $text ) : array {
+ if ( method_exists( MediaWikiServices::class, 'getSpecialPageFactory' ) ) {
+ return MediaWikiServices::getInstance()->getSpecialPageFactory()->resolveAlias( $text );
+ }
+ return SpecialPageFactory::resolveAlias( $text );
+ }
+
+ /**
+ * Compatibility for pre-1.32, when SpecialPageFactory methods were static.
+ *
+ * @see SpecialPageFactory::getPage
+ * @param string $name
+ * @return SpecialPage|null
+ */
+ public static function getSpecialPage( $name ) {
+ if ( method_exists( MediaWikiServices::class, 'getSpecialPageFactory' ) ) {
+ return MediaWikiServices::getInstance()->getSpecialPageFactory()->getPage( $name );
+ }
+ return SpecialPageFactory::getPage( $name );
+ }
+
+ /**
+ * Compatibility for pre-1.32, before OutputPage::addWikiTextAsInterface()
+ *
+ * @see OutputPage::addWikiTextAsInterface
+ * @param OutputPage $out
+ * @param string $text The wikitext to add to the output.
+ */
+ public static function addWikiTextAsInterface( OutputPage $out, $text ) {
+ if ( is_callable( [ $out, 'addWikiTextAsInterface' ] ) ) {
+ $out->addWikiTextAsInterface( $text );
+ } else {
+ // $out->addWikiTextTitle is deprecated in 1.32, but has existed
+ // since (at least) MW 1.21, so use that as a fallback.
+ $out->addWikiTextTitle(
+ $text, $out->getTitle(),
+ /*linestart*/true, /*tidy*/true, /*interface*/true
+ );
+ }
+ }
}
diff --git a/MLEB/Translate/api/ApiAggregateGroups.php b/MLEB/Translate/api/ApiAggregateGroups.php
index 4ca03d13..a8a259df 100644
--- a/MLEB/Translate/api/ApiAggregateGroups.php
+++ b/MLEB/Translate/api/ApiAggregateGroups.php
@@ -5,7 +5,7 @@
* @author Santhosh Thottingal
* @author Niklas Laxström
* @copyright Copyright © 2012-2013, Santhosh Thottingal
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -17,33 +17,30 @@
*/
class ApiAggregateGroups extends ApiBase {
protected static $right = 'translate-manage';
- protected static $salt = 'translate-manage';
public function execute() {
- if ( !$this->getUser()->isAllowed( self::$right ) ) {
- $this->dieUsage( 'Permission denied', 'permissiondenied' );
- }
+ $this->checkUserRightsAny( self::$right );
$params = $this->extractRequestParams();
$action = $params['do'];
- $output = array();
+ $output = [];
if ( $action === 'associate' || $action === 'dissociate' ) {
// Group is mandatory only for these two actions
if ( !isset( $params['group'] ) ) {
- $this->dieUsageMsg( array( 'missingparam', 'group' ) );
+ $this->dieWithError( [ 'apierror-missingparam', 'group' ] );
}
if ( !isset( $params['aggregategroup'] ) ) {
- $this->dieUsageMsg( array( 'missingparam', 'aggregategroup' ) );
+ $this->dieWithError( [ 'apierror-missingparam', 'aggregategroup' ] );
}
$aggregateGroup = $params['aggregategroup'];
$subgroups = TranslateMetadata::getSubgroups( $aggregateGroup );
- if ( count( $subgroups ) === 0 ) {
+ if ( !$subgroups ) {
// For newly created groups the subgroups value might be empty,
// but check that.
if ( TranslateMetadata::get( $aggregateGroup, 'name' ) === false ) {
- $this->dieUsage( 'Invalid aggregate message group', 'invalidaggregategroup' );
+ $this->dieWithError( 'apierror-translate-invalidaggregategroup', 'invalidaggregategroup' );
}
- $subgroups = array();
+ $subgroups = [];
}
$subgroupId = $params['group'];
@@ -52,7 +49,7 @@ class ApiAggregateGroups extends ApiBase {
// Add or remove from the list
if ( $action === 'associate' ) {
if ( !$group instanceof WikiPageMessageGroup ) {
- $this->dieUsage( 'Group does not exist or invalid', 'invalidgroup' );
+ $this->dieWithError( 'apierror-translate-invalidgroup', 'invalidgroup' );
}
$subgroups[] = $subgroupId;
@@ -66,10 +63,10 @@ class ApiAggregateGroups extends ApiBase {
TranslateMetadata::setSubgroups( $aggregateGroup, $subgroups );
- $logParams = array(
+ $logParams = [
'aggregategroup' => TranslateMetadata::get( $aggregateGroup, 'name' ),
'aggregategroup-id' => $aggregateGroup,
- );
+ ];
/* Note that to allow removing no longer existing groups from
* aggregate message groups, the message group object $group
@@ -90,22 +87,24 @@ class ApiAggregateGroups extends ApiBase {
$entry->publish( $logid );
} elseif ( $action === 'remove' ) {
if ( !isset( $params['aggregategroup'] ) ) {
- $this->dieUsageMsg( array( 'missingparam', 'aggregategroup' ) );
+ $this->dieWithError( [ 'apierror-missingparam', 'aggregategroup' ] );
}
TranslateMetadata::deleteGroup( $params['aggregategroup'] );
// @todo Logging
} elseif ( $action === 'add' ) {
if ( !isset( $params['groupname'] ) ) {
- $this->dieUsageMsg( array( 'missingparam', 'groupname' ) );
+ $this->dieWithError( [ 'apierror-missingparam', 'groupname' ] );
}
$name = trim( $params['groupname'] );
if ( strlen( $name ) === 0 ) {
- $this->dieUsage( 'Invalid aggregate message group name', 'invalidaggregategroupname' );
+ $this->dieWithError(
+ 'apierror-translate-invalidaggregategroupname', 'invalidaggregategroupname'
+ );
}
if ( !isset( $params['groupdescription'] ) ) {
- $this->dieUsageMsg( array( 'missingparam', 'groupdescription' ) );
+ $this->dieWithError( [ 'apierror-missingparam', 'groupdescription' ] );
}
$desc = trim( $params['groupdescription'] );
@@ -114,7 +113,7 @@ class ApiAggregateGroups extends ApiBase {
// Throw error if group already exists
$nameExists = MessageGroups::labelExists( $name );
if ( $nameExists ) {
- $this->dieUsage( 'Message group already exists', 'duplicateaggregategroup' );
+ $this->dieWithError( 'apierror-translate-duplicateaggregategroup', 'duplicateaggregategroup' );
}
// ID already exists- Generate a new ID by adding a number to it.
@@ -122,7 +121,7 @@ class ApiAggregateGroups extends ApiBase {
if ( $idExists ) {
$i = 1;
while ( $idExists ) {
- $tempId = $aggregateGroupId . "-" . $i;
+ $tempId = $aggregateGroupId . '-' . $i;
$idExists = MessageGroups::getGroup( $tempId );
$i++;
}
@@ -131,7 +130,7 @@ class ApiAggregateGroups extends ApiBase {
TranslateMetadata::set( $aggregateGroupId, 'name', $name );
TranslateMetadata::set( $aggregateGroupId, 'description', $desc );
- TranslateMetadata::setSubgroups( $aggregateGroupId, array() );
+ TranslateMetadata::setSubgroups( $aggregateGroupId, [] );
// Once new aggregate group added, we need to show all the pages that can be added to that.
$output['groups'] = self::getAllPages();
@@ -139,11 +138,13 @@ class ApiAggregateGroups extends ApiBase {
// @todo Logging
} elseif ( $action === 'update' ) {
if ( !isset( $params['groupname'] ) ) {
- $this->dieUsageMsg( array( 'missingparam', 'groupname' ) );
+ $this->dieWithError( [ 'apierror-missingparam', 'groupname' ] );
}
$name = trim( $params['groupname'] );
if ( strlen( $name ) === 0 ) {
- $this->dieUsage( 'Invalid aggregate message group name', 'invalidaggregategroupname' );
+ $this->dieWithError(
+ 'apierror-translate-invalidaggregategroupname', 'invalidaggregategroupname'
+ );
}
$desc = trim( $params['groupdescription'] );
$aggregateGroupId = $params['aggregategroup'];
@@ -154,11 +155,11 @@ class ApiAggregateGroups extends ApiBase {
// Error if the label exists already
$exists = MessageGroups::labelExists( $name );
if ( $exists && $oldName !== $name ) {
- $this->dieUsage( 'Message group name already exists', 'duplicateaggregategroup' );
+ $this->dieWithError( 'apierror-translate-duplicateaggregategroup', 'duplicateaggregategroup' );
}
if ( $oldName === $name && $oldDesc === $desc ) {
- $this->dieUsage( 'Invalid update', 'invalidupdate' );
+ $this->dieWithError( 'apierror-translate-invalidupdate', 'invalidupdate' );
}
TranslateMetadata::set( $aggregateGroupId, 'name', $name );
TranslateMetadata::set( $aggregateGroupId, 'description', $desc );
@@ -168,11 +169,11 @@ class ApiAggregateGroups extends ApiBase {
$output['result'] = 'ok';
$this->getResult()->addValue( null, $this->getModuleName(), $output );
// Cache needs to be cleared after any changes to groups
- MessageGroups::clearCache();
- MessageIndexRebuildJob::newJob()->insert();
+ MessageGroups::singleton()->recache();
+ MessageIndexRebuildJob::newJob()->insertIntoJobQueue();
}
- protected function generateAggregateGroupId( $aggregateGroupName, $prefix = "agg-" ) {
+ protected function generateAggregateGroupId( $aggregateGroupName, $prefix = 'agg-' ) {
// The database field has maximum limit of 200 bytes
if ( strlen( $aggregateGroupName ) + strlen( $prefix ) >= 200 ) {
return $prefix . substr( sha1( $aggregateGroupName ), 0, 5 );
@@ -186,93 +187,46 @@ class ApiAggregateGroups extends ApiBase {
return true;
}
- public function getTokenSalt() {
- return self::$salt;
- }
-
public function needsToken() {
return 'csrf';
}
- // This function maintains backwards compatibility with self::getToken()
- // below. If salt is removed from self::getToken() and nothing else (e.g.
- // JS) generates the token directly, this could probably be removed.
- protected function getWebUITokenSalt( array $params ) {
- return self::$salt;
- }
-
public function getAllowedParams() {
- return array(
- 'do' => array(
- ApiBase::PARAM_TYPE => array( 'associate', 'dissociate', 'remove', 'add', 'update' ),
+ return [
+ 'do' => [
+ ApiBase::PARAM_TYPE => [ 'associate', 'dissociate', 'remove', 'add', 'update' ],
ApiBase::PARAM_REQUIRED => true,
- ),
- 'aggregategroup' => array(
+ ],
+ 'aggregategroup' => [
ApiBase::PARAM_TYPE => 'string',
- ),
- 'group' => array(
+ ],
+ 'group' => [
// Not providing list of values, to allow dissociation of unknown groups
ApiBase::PARAM_TYPE => 'string',
- ),
- 'groupname' => array(
+ ],
+ 'groupname' => [
ApiBase::PARAM_TYPE => 'string',
- ),
- 'groupdescription' => array(
+ ],
+ 'groupdescription' => [
ApiBase::PARAM_TYPE => 'string',
- ),
- 'token' => array(
+ ],
+ 'token' => [
ApiBase::PARAM_TYPE => 'string',
- ApiBase::PARAM_REQUIRED => false,
- ),
- );
- }
-
- /**
- * @deprecated since MediaWiki core 1.25
- */
- public function getParamDescription() {
- $action = TranslateUtils::getTokenAction( 'aggregategroups' );
-
- return array(
- 'do' => 'What to do with aggregate message group',
- 'group' => 'Message group id',
- 'aggregategroup' => 'Aggregate message group id',
- 'groupname' => 'Aggregate message group name',
- 'groupdescription' => 'Aggregate message group description',
- 'token' => "A token previously acquired with $action",
- );
- }
-
- /**
- * @deprecated since MediaWiki core 1.25
- */
- public function getDescription() {
- return 'Manage aggregate message groups. You can add and remove aggregate message' .
- 'groups and associate or dissociate message groups from them (one at a time).';
- }
-
- /**
- * @deprecated since MediaWiki core 1.25
- */
- public function getExamples() {
- return array(
- "api.php?action=aggregategroups&do=associate&group=groupId&aggregategroup=aggregateGroupId",
- );
+ ApiBase::PARAM_REQUIRED => true,
+ ],
+ ];
}
- /**
- * @see ApiBase::getExamplesMessages()
- */
protected function getExamplesMessages() {
- return array(
+ return [
'action=aggregategroups&do=associate&group=groupId&aggregategroup=aggregateGroupId'
=> 'apihelp-aggregategroups-example-1',
- );
+ ];
}
public static function getAllPages() {
$groups = MessageGroups::getAllGroups();
- $pages = array();
+ $pages = [];
foreach ( $groups as $group ) {
if ( $group instanceof WikiPageMessageGroup ) {
$pages[$group->getId()] = $group->getTitle()->getPrefixedText();
@@ -281,25 +235,4 @@ class ApiAggregateGroups extends ApiBase {
return $pages;
}
-
- // These two functions implement pre-1.24 token fetching via the
- // ApiTokensGetTokenTypes hook, kept for backwards compatibility.
- public static function getToken() {
- $user = RequestContext::getMain()->getUser();
- if ( !$user->isAllowed( self::$right ) ) {
- return false;
- }
-
- return $user->getEditToken( self::$salt );
- }
-
- public static function injectTokenFunction( &$list ) {
- $list['aggregategroups'] = array( __CLASS__, 'getToken' );
-
- return true; // Hooks must return bool
- }
-
- public static function getRight() {
- return self::$right;
- }
}
diff --git a/MLEB/Translate/api/ApiGroupReview.php b/MLEB/Translate/api/ApiGroupReview.php
index 7fa3cf1e..67583854 100644
--- a/MLEB/Translate/api/ApiGroupReview.php
+++ b/MLEB/Translate/api/ApiGroupReview.php
@@ -3,8 +3,7 @@
* API module for switching workflow states for message groups
* @file
* @author Niklas Laxström
- * @copyright Copyright © 2011, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -14,7 +13,6 @@
*/
class ApiGroupReview extends ApiBase {
protected static $right = 'translate-groupreview';
- protected static $salt = 'translate-groupreview';
public function execute() {
$user = $this->getUser();
@@ -24,47 +22,44 @@ class ApiGroupReview extends ApiBase {
$code = $requestParams['language'];
if ( !$group || MessageGroups::isDynamic( $group ) ) {
- $this->dieUsageMsg( array( 'missingparam', 'group' ) );
+ $this->dieWithError( [ 'apierror-missingparam', 'group' ] );
}
$stateConfig = $group->getMessageGroupStates()->getStates();
if ( !$stateConfig ) {
- $this->dieUsage( 'Message group review not in use', 'disabled' );
+ $this->dieWithError( 'apierror-translate-groupreviewdisabled', 'disabled' );
}
- if ( !$user->isAllowed( self::$right ) ) {
- $this->dieUsage( 'Permission denied', 'permissiondenied' );
- }
+ $this->checkUserRightsAny( self::$right );
if ( $user->isBlocked() ) {
- $this->dieUsage( 'You have been blocked', 'blocked' );
+ $this->dieBlocked( $user->getBlock() );
}
$requestParams = $this->extractRequestParams();
$languages = Language::fetchLanguageNames();
if ( !isset( $languages[$code] ) ) {
- $this->dieUsageMsg( array( 'missingparam', 'language' ) );
+ $this->dieWithError( [ 'apierror-missingparam', 'language' ] );
}
$targetState = $requestParams['state'];
if ( !isset( $stateConfig[$targetState] ) ) {
- $this->dieUsage( 'The requested state is invalid', 'invalidstate' );
+ $this->dieWithError( 'apierror-translate-invalidstate', 'invalidstate' );
}
if ( is_array( $stateConfig[$targetState] )
&& isset( $stateConfig[$targetState]['right'] )
- && !$user->isAllowed( $stateConfig[$targetState]['right'] )
) {
- $this->dieUsage( 'Permission denied', 'permissiondenied' );
+ $this->checkUserRightsAny( $stateConfig[$targetState]['right'] );
}
self::changeState( $group, $code, $targetState, $user );
- $output = array( 'review' => array(
+ $output = [ 'review' => [
'group' => $group->getId(),
'language' => $code,
'state' => $targetState,
- ) );
+ ] ];
$this->getResult()->addValue( null, $this->getModuleName(), $output );
}
@@ -74,10 +69,10 @@ class ApiGroupReview extends ApiBase {
$table = 'translate_groupreviews';
$field = 'tgr_state';
- $conds = array(
+ $conds = [
'tgr_group' => $group->getId(),
'tgr_lang' => $code
- );
+ ];
return $dbw->selectField( $table, $field, $conds, __METHOD__ );
}
@@ -89,33 +84,33 @@ class ApiGroupReview extends ApiBase {
}
$table = 'translate_groupreviews';
- $index = array( 'tgr_group', 'tgr_language' );
- $row = array(
+ $index = [ 'tgr_group', 'tgr_language' ];
+ $row = [
'tgr_group' => $group->getId(),
'tgr_lang' => $code,
'tgr_state' => $newState,
- );
+ ];
$dbw = wfGetDB( DB_MASTER );
- $dbw->replace( $table, array( $index ), $row, __METHOD__ );
+ $dbw->replace( $table, [ $index ], $row, __METHOD__ );
$entry = new ManualLogEntry( 'translationreview', 'group' );
$entry->setPerformer( $user );
$entry->setTarget( SpecialPage::getTitleFor( 'Translate', $group->getId() ) );
// @todo
// $entry->setComment( $comment );
- $entry->setParameters( array(
+ $entry->setParameters( [
'4::language' => $code,
'5::group-label' => $group->getLabel(),
'6::old-state' => $currentState,
'7::new-state' => $newState,
- ) );
+ ] );
$logid = $entry->insert();
$entry->publish( $logid );
- wfRunHooks( 'TranslateEventMessageGroupStateChange',
- array( $group, $code, $currentState, $newState ) );
+ Hooks::run( 'TranslateEventMessageGroupStateChange',
+ [ $group, $code, $currentState, $newState ] );
return true;
}
@@ -128,100 +123,31 @@ class ApiGroupReview extends ApiBase {
return 'csrf';
}
- // This function exists for backwards compatibility with MediaWiki before
- // 1.24
- public function getTokenSalt() {
- return self::$salt;
- }
-
- // This function maintains backwards compatibility with self::getToken()
- // below. If salt is removed from self::getToken() and nothing else (e.g.
- // JS) generates the token directly, this could probably be removed.
- protected function getWebUITokenSalt( array $params ) {
- return self::$salt;
- }
-
public function getAllowedParams() {
- return array(
- 'group' => array(
+ return [
+ 'group' => [
ApiBase::PARAM_TYPE => 'string',
ApiBase::PARAM_REQUIRED => true,
- ),
- 'language' => array(
+ ],
+ 'language' => [
ApiBase::PARAM_TYPE => 'string',
ApiBase::PARAM_DFLT => 'en',
- ),
- 'state' => array(
+ ],
+ 'state' => [
ApiBase::PARAM_TYPE => 'string',
ApiBase::PARAM_REQUIRED => true,
- ),
- 'token' => array(
+ ],
+ 'token' => [
ApiBase::PARAM_TYPE => 'string',
ApiBase::PARAM_REQUIRED => true,
- ),
- );
- }
-
- /**
- * @deprecated since MediaWiki core 1.25
- */
- public function getParamDescription() {
- $action = TranslateUtils::getTokenAction( 'groupreview' );
-
- return array(
- 'group' => 'Message group',
- 'language' => 'Language code',
- 'state' => 'The new state for the group',
- 'token' => "A token previously acquired with $action",
- );
- }
-
- /**
- * @deprecated since MediaWiki core 1.25
- */
- public function getDescription() {
- return 'Set message group workflow states';
- }
-
- /**
- * @deprecated since MediaWiki core 1.25
- */
- public function getExamples() {
- $group = 'page-Example';
-
- return array(
- "api.php?action=groupreview&group=$group&language=de&state=ready&token=foo",
- );
+ ],
+ ];
}
- /**
- * @see ApiBase::getExamplesMessages()
- */
protected function getExamplesMessages() {
- return array(
+ return [
'action=groupreview&group=page-Example&language=de&state=ready&token=foo'
=> 'apihelp-groupreview-example-1',
- );
- }
-
- // These two functions implement pre-1.24 token fetching via the
- // ApiTokensGetTokenTypes hook, kept for backwards compatibility.
- public static function getToken() {
- $user = RequestContext::getMain()->getUser();
- if ( !$user->isAllowed( self::$right ) ) {
- return false;
- }
-
- return $user->getEditToken( self::$salt );
- }
-
- public static function injectTokenFunction( &$list ) {
- $list['groupreview'] = array( __CLASS__, 'getToken' );
-
- return true; // Hooks must return bool
- }
-
- public static function getRight() {
- return self::$right;
+ ];
}
}
diff --git a/MLEB/Translate/api/ApiHardMessages.php b/MLEB/Translate/api/ApiHardMessages.php
deleted file mode 100644
index b7b96130..00000000
--- a/MLEB/Translate/api/ApiHardMessages.php
+++ /dev/null
@@ -1,193 +0,0 @@
-<?php
-/**
- * API module for marking translations hard
- * @file
- * @author Santhosh Thottingal
- * @copyright Copyright © 2012-2013, Santhosh Thottingal
- * @license GPL-2.0+
- */
-
-/**
- * API module for marking translations hard
- * Records the skip count for the message.
- * Assumption: the more the translators skip a message, the more hard it is to translate.
- *
- * @since 2012-12-20
- * @ingroup API TranslateAPI
- */
-class ApiHardMessages extends ApiBase {
- protected static $right = 'translate';
-
- public function execute() {
- if ( !$this->getUser()->isAllowed( self::$right ) ) {
- $this->dieUsage( 'Permission denied', 'permissiondenied' );
- }
-
- $params = $this->extractRequestParams();
- $title = Title::newFromText( $params['title'] );
-
- if ( !$title ) {
- $this->dieUsage( 'Invalid title', 'invalidtitle' );
- }
-
- $handle = new MessageHandle( $title );
- if ( !$handle->isValid() ) {
- $this->dieUsage( 'Invalid title', 'invalidtitle' );
- }
-
- $baseTitle = Title::makeTitle( $title->getNamespace(),
- $handle->getKey() . '/' . $handle->getGroup()->getSourceLanguage() );
- $revision = Revision::newFromTitle( $baseTitle );
-
- if ( !$revision ) {
- // This can fail. See https://phabricator.wikimedia.org/T45286
- $this->dieUsage( 'Invalid revision', 'invalidrevision' );
- }
-
- $count = self::getHardCount( $revision ) + 1;
- self::doMarkHard( $revision, $count );
-
- $output = array(
- 'title' => $baseTitle->getPrefixedText(),
- 'pageid' => $revision->getPage(),
- 'revision' => $revision->getId(),
- 'count' => $count
- );
-
- $this->getResult()->addValue( null, $this->getModuleName(), $output );
- }
-
- /**
- * Mark the message skip count
- * @param Revision $revision
- * @param int $count
- */
- public static function doMarkHard( Revision $revision, $count ) {
- $dbw = wfGetDB( DB_MASTER );
- $table = 'revtag';
-
- if ( $count === 1 ) {
- $row = array(
- 'rt_type' => 'hard',
- 'rt_page' => $revision->getPage(),
- 'rt_revision' => $revision->getId(),
- 'rt_value' => $count
- );
- $options = array( 'IGNORE' );
- $dbw->insert( $table, $row, __METHOD__, $options );
- } else {
- $dbw->update( $table,
- array(
- 'rt_value' => $count
- ),
- array(
- 'rt_type' => 'hard',
- 'rt_page' => $revision->getPage(),
- ),
- __METHOD__
- );
- }
- }
-
- /**
- * Get the number of times the message was skipped
- * @param Revision $revision
- *
- * @return int How many times the message was skipped
- */
- public static function getHardCount( Revision $revision ) {
- $dbr = wfGetDB( DB_SLAVE );
- $res = $dbr->selectField(
- 'revtag',
- 'rt_value',
- array( 'rt_type = "hard"',
- 'rt_page = ' . $revision->getPage(),
- ),
- __METHOD__
- );
-
- $count = intval( $res );
-
- return $count;
- }
-
- public function isWriteMode() {
- return true;
- }
-
- public function needsToken() {
- return 'csrf';
- }
-
- public function getAllowedParams() {
- return array(
- 'title' => array(
- ApiBase::PARAM_TYPE => 'string',
- ApiBase::PARAM_REQUIRED => true,
- ),
- 'token' => array(
- ApiBase::PARAM_TYPE => 'string',
- ApiBase::PARAM_REQUIRED => true,
- ),
- );
- }
-
- /**
- * @deprecated since MediaWiki core 1.25
- */
- public function getParamDescription() {
- $action = TranslateUtils::getTokenAction( 'hardmessages' );
-
- return array(
- 'title' => 'The title of the message to mark hard',
- 'token' => "A token previously acquired with $action",
- );
- }
-
- /**
- * @deprecated since MediaWiki core 1.25
- */
- public function getDescription() {
- return 'Mark translations hard';
- }
-
- /**
- * @deprecated since MediaWiki core 1.25
- */
- public function getExamples() {
- return array(
- 'api.php?action=hardmessages&title=SampleTitle&token=foo',
- );
- }
-
- /**
- * @see ApiBase::getExamplesMessages()
- */
- protected function getExamplesMessages() {
- return array(
- 'action=hardmessages&title=SampleTitle&token=foo'
- => 'apihelp-hardmessages-example-1',
- );
- }
-
- // These two functions implement pre-1.24 token fetching via the
- // ApiTokensGetTokenTypes hook, kept for backwards compatibility.
- public static function getToken() {
- $user = RequestContext::getMain()->getUser();
- if ( !$user->isAllowed( self::$right ) ) {
- return false;
- }
-
- return $user->getEditToken();
- }
-
- public static function injectTokenFunction( &$list ) {
- $list['hardmessage'] = array( __CLASS__, 'getToken' );
-
- return true;
- }
-
- public static function getRight() {
- return self::$right;
- }
-}
diff --git a/MLEB/Translate/api/ApiQueryLanguageStats.php b/MLEB/Translate/api/ApiQueryLanguageStats.php
index 220b281f..a25cda21 100644
--- a/MLEB/Translate/api/ApiQueryLanguageStats.php
+++ b/MLEB/Translate/api/ApiQueryLanguageStats.php
@@ -3,8 +3,8 @@
* Api module for language group stats.
*
* @file
- * @copyright Copyright © 2012-2013, Niklas Laxström
- * @license GPL-2.0+
+ * @author Niklas Laxström
+ * @license GPL-2.0-or-later
*/
/**
@@ -18,10 +18,21 @@ class ApiQueryLanguageStats extends ApiStatsQuery {
parent::__construct( $query, $moduleName, 'ls' );
}
- protected function getData() {
- $params = $this->extractRequestParams();
+ /// Overwritten from ApiStatsQuery
+ protected function validateTargetParamater( array $params ) {
+ $all = TranslateUtils::getLanguageNames( null );
+ $requested = $params[ 'language' ];
- return MessageGroupStats::forLanguage( $params['language'] );
+ if ( !isset( $all[ $requested ] ) ) {
+ $this->dieWithError( [ 'apierror-translate-invalidlanguage' ] );
+ }
+
+ return $requested;
+ }
+
+ /// Overwritten from ApiStatsQuery
+ protected function loadStatistics( $target, $flags = 0 ) {
+ return MessageGroupStats::forLanguage( $target, $flags );
}
protected function makeItem( $item, $stats ) {
@@ -33,48 +44,18 @@ class ApiQueryLanguageStats extends ApiStatsQuery {
public function getAllowedParams() {
$params = parent::getAllowedParams();
- $params['language'] = array(
+ $params['language'] = [
ApiBase::PARAM_TYPE => 'string',
ApiBase::PARAM_REQUIRED => true,
- );
+ ];
return $params;
}
- /**
- * @deprecated since MediaWiki core 1.25
- */
- public function getParamDescription() {
- $desc = parent::getParamDescription();
- $desc['language'] = 'Language code';
-
- return $desc;
- }
-
- /**
- * @deprecated since MediaWiki core 1.25
- */
- public function getDescription() {
- return 'Query language stats';
- }
-
- /**
- * @deprecated since MediaWiki core 1.25
- */
- protected function getExamples() {
- return array(
- "api.php?action=query&meta=languagestats&lslanguage=fi List of translation " .
- "completion statistics for language fi",
- );
- }
-
- /**
- * @see ApiBase::getExamplesMessages()
- */
protected function getExamplesMessages() {
- return array(
+ return [
'action=query&meta=languagestats&lslanguage=fi'
=> 'apihelp-query+languagestats-example-1',
- );
+ ];
}
}
diff --git a/MLEB/Translate/api/ApiQueryMessageCollection.php b/MLEB/Translate/api/ApiQueryMessageCollection.php
index 20c819c1..b1e6d055 100644
--- a/MLEB/Translate/api/ApiQueryMessageCollection.php
+++ b/MLEB/Translate/api/ApiQueryMessageCollection.php
@@ -4,8 +4,7 @@
*
* @file
* @author Niklas Laxström
- * @copyright Copyright © 2010-2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -31,15 +30,48 @@ class ApiQueryMessageCollection extends ApiQueryGeneratorBase {
$this->run( $resultPageSet );
}
- /**
- * @param $resultPageSet ApiPageSet
- */
- private function run( $resultPageSet = null ) {
+ private function validateLanguageCode( $code ) {
+ if ( !Language::isValidBuiltInCode( $code ) ) {
+ $this->dieWithError( [ 'apierror-translate-invalidlanguage' ] );
+ }
+ }
+
+ private function run( ApiPageSet $resultPageSet = null ) {
+ global $wgTranslateBlacklist;
+
$params = $this->extractRequestParams();
$group = MessageGroups::getGroup( $params['group'] );
if ( !$group ) {
- $this->dieUsageMsg( array( 'missingparam', 'mcgroup' ) );
+ $this->dieWithError( [ 'apierror-missingparam', 'mcgroup' ] );
+ }
+
+ $languageCode = $params[ 'language' ];
+ $this->validateLanguageCode( $languageCode );
+ if ( $group->getSourceLanguage() === $languageCode ) {
+ $name = Language::fetchLanguageName( $languageCode, $this->getLanguage()->getCode() );
+ $this->dieWithError( [ 'apierror-translate-language-disabled-source', $name ] );
+ }
+ $languages = $group->getTranslatableLanguages();
+ if ( $languages !== null ) {
+ if ( !isset( $languages[ $languageCode ] ) ) {
+ $name = Language::fetchLanguageName( $languageCode, $this->getLanguage()->getCode() );
+ $this->dieWithError( [ 'apierror-translate-language-disabled', $name ] );
+ }
+ } else {
+ $checks = [
+ $group->getId(),
+ strtok( $group->getId(), '-' ),
+ '*'
+ ];
+
+ foreach ( $checks as $check ) {
+ if ( isset( $wgTranslateBlacklist[ $check ][ $languageCode ] ) ) {
+ $name = Language::fetchLanguageName( $languageCode, $this->getLanguage()->getCode() );
+ $reason = $wgTranslateBlacklist[ $check ][ $languageCode ];
+ $this->dieWithError( [ 'apierror-translate-language-disabled-reason', $name, $reason ] );
+ }
+ }
}
if ( MessageGroups::isDynamic( $group ) ) {
@@ -49,17 +81,6 @@ class ApiQueryMessageCollection extends ApiQueryGeneratorBase {
$group->setLanguage( $params['language'] );
}
- $result = $this->getResult();
-
- $languages = $group->getTranslatableLanguages();
-
- if ( $languages !== null && !isset( $languages[$params['language']] ) ) {
- $this->dieUsage(
- 'Translation to this language is disabled',
- 'translate-language-disabled'
- );
- }
-
$messages = $group->initCollection( $params['language'] );
foreach ( $params['filter'] as $filter ) {
@@ -76,8 +97,11 @@ class ApiQueryMessageCollection extends ApiQueryGeneratorBase {
} else {
$messages->filter( $filter, false, $value );
}
- } catch ( MWException $e) {
- $this->dieUsage( $e->getMessage(), 'invalidfilter');
+ } catch ( MWException $e ) {
+ $this->dieWithError(
+ [ 'apierror-translate-invalidfilter', wfEscapeWikiText( $e->getMessage() ) ],
+ 'invalidfilter'
+ );
}
}
@@ -86,22 +110,23 @@ class ApiQueryMessageCollection extends ApiQueryGeneratorBase {
$batchSize = count( $messages );
list( /*$backwardsOffset*/, $forwardsOffset, $startOffset ) = $offsets;
+ $result = $this->getResult();
$result->addValue(
- array( 'query', 'metadata' ),
+ [ 'query', 'metadata' ],
'state',
self::getWorkflowState( $group->getId(), $params['language'] )
);
- $result->addValue( array( 'query', 'metadata' ), 'resultsize', $resultSize );
+ $result->addValue( [ 'query', 'metadata' ], 'resultsize', $resultSize );
$result->addValue(
- array( 'query', 'metadata' ),
+ [ 'query', 'metadata' ],
'remaining',
$resultSize - $startOffset - $batchSize
);
$messages->loadTranslations();
- $pages = array();
+ $pages = [];
if ( $forwardsOffset !== false ) {
$this->setContinueEnumParameter( 'offset', $forwardsOffset );
@@ -114,34 +139,32 @@ class ApiQueryMessageCollection extends ApiQueryGeneratorBase {
if ( is_null( $resultPageSet ) ) {
$data = $this->extractMessageData( $result, $props, $messages[$mkey] );
$data['title'] = $title->getPrefixedText();
+ $handle = new MessageHandle( $title );
+
+ if ( $handle->isValid() ) {
+ $data['primaryGroup'] = $handle->getGroup()->getId();
+ }
- $result->addValue( array( 'query', $this->getModuleName() ), null, $data );
+ $result->addValue( [ 'query', $this->getModuleName() ], null, $data );
} else {
$pages[] = $title;
}
}
if ( is_null( $resultPageSet ) ) {
- if ( defined( 'ApiResult::META_CONTENT' ) ) {
- $result->addIndexedTagName(
- array( 'query', $this->getModuleName() ),
- 'message'
- );
- } else {
- $result->setIndexedTagName_internal(
- array( 'query', $this->getModuleName() ),
- 'message'
- );
- }
+ $result->addIndexedTagName(
+ [ 'query', $this->getModuleName() ],
+ 'message'
+ );
} else {
$resultPageSet->populateFromTitles( $pages );
}
}
/**
- * @param $result ApiResult
- * @param $props array
- * @param $message ThinMessage
+ * @param ApiResult $result
+ * @param array $props
+ * @param ThinMessage $message
* @return array
*/
public function extractMessageData( $result, $props, $message ) {
@@ -169,11 +192,7 @@ class ApiQueryMessageCollection extends ApiQueryGeneratorBase {
if ( isset( $props['properties'] ) ) {
foreach ( $message->getPropertyNames() as $prop ) {
$data['properties'][$prop] = $message->getProperty( $prop );
- if ( defined( 'ApiResult::META_CONTENT' ) ) {
- ApiResult::setIndexedTagNameRecursive( $data['properties'], 'val' );
- } else {
- $result->setIndexedTagName_recursive( $data['properties'], 'val' );
- }
+ ApiResult::setIndexedTagNameRecursive( $data['properties'], 'val' );
}
}
@@ -188,134 +207,64 @@ class ApiQueryMessageCollection extends ApiQueryGeneratorBase {
* @return string|bool State id or false.
*/
protected static function getWorkflowState( $groupId, $language ) {
- $dbr = wfGetDB( DB_SLAVE );
+ $dbr = wfGetDB( DB_REPLICA );
return $dbr->selectField(
'translate_groupreviews',
'tgr_state',
- array(
+ [
'tgr_group' => $groupId,
'tgr_lang' => $language
- ),
+ ],
__METHOD__
);
}
public function getAllowedParams() {
- /** @todo Once support for MediaWiki < 1.25 is dropped, just
- * use ApiBase::PARAM_HELP_MSG directly
- */
- $helpmsg = defined( 'ApiBase::PARAM_HELP_MSG' ) ? ApiBase::PARAM_HELP_MSG : '';
- return array(
- 'group' => array(
+ return [
+ 'group' => [
ApiBase::PARAM_TYPE => 'string',
ApiBase::PARAM_REQUIRED => true,
- ),
- 'language' => array(
+ ],
+ 'language' => [
ApiBase::PARAM_TYPE => 'string',
ApiBase::PARAM_DFLT => 'en',
- ),
- 'limit' => array(
+ ],
+ 'limit' => [
ApiBase::PARAM_DFLT => 500,
ApiBase::PARAM_TYPE => 'limit',
ApiBase::PARAM_MIN => 1,
ApiBase::PARAM_MAX => ApiBase::LIMIT_BIG2,
ApiBase::PARAM_MAX2 => ApiBase::LIMIT_BIG2,
- ),
- 'offset' => array(
+ ],
+ 'offset' => [
ApiBase::PARAM_DFLT => '',
ApiBase::PARAM_TYPE => 'string',
- $helpmsg => 'api-help-param-continue',
- ),
- 'filter' => array(
+ ApiBase::PARAM_HELP_MSG => 'api-help-param-continue',
+ ],
+ 'filter' => [
ApiBase::PARAM_TYPE => 'string',
ApiBase::PARAM_DFLT => '!optional|!ignored',
ApiBase::PARAM_ISMULTI => true,
- ),
- 'prop' => array(
- ApiBase::PARAM_TYPE => array(
+ ],
+ 'prop' => [
+ ApiBase::PARAM_TYPE => [
'definition',
'translation',
'tags',
'revision',
'properties'
- ),
+ ],
ApiBase::PARAM_DFLT => 'definition|translation',
ApiBase::PARAM_ISMULTI => true,
- $helpmsg => array( 'apihelp-query+messagecollection-param-prop', '!!FUZZY!!' ),
- ),
- );
- }
-
- /**
- * @deprecated since MediaWiki core 1.25
- */
- public function getParamDescription() {
- return array(
- 'group' => 'Message group',
- 'language' => 'Language code',
- 'offset' => 'Integer or key offset for start',
- 'limit' => 'How many messages to show (after filtering)',
- 'prop' => array(
- 'Which properties to get',
- 'definition - message definition',
- 'translation - current translation (without !!FUZZY!! string if any, ' .
- 'use the tags to check for outdated or broken translations)',
- 'tags - message tags, like optional, ignored and fuzzy',
- 'properties - message properties, like status, revision, ' .
- 'last-translator. Can vary between messages.',
- 'revision - deprecated! use properties!',
- ),
- 'filter' => array(
- 'Message collection filters. Use ! to negate condition. For example ' .
- '!fuzzy means list only all non-fuzzy messages. Filters are ' .
- 'applied in the order given.',
- 'fuzzy - messages with fuzzy tag',
- 'optional - messages which should be translated only if ' .
- 'changes are necessary',
- 'ignored - messages which are never translated',
- 'hastranslation - messages which have a translation regardless if it ' .
- 'is fuzzy or not',
- 'translated - messages which have a translation which is not fuzzy',
- 'changed - messages which has been translated or changed since ' .
- 'last export',
- 'reviewer:# - messages where given userid # is among reviewers',
- 'last-translator:# - messages where given userid # is the last translator',
- ),
- );
+ ApiBase::PARAM_HELP_MSG =>
+ [ 'apihelp-query+messagecollection-param-prop', '!!FUZZY!!' ],
+ ],
+ ];
}
- /**
- * @deprecated since MediaWiki core 1.25
- */
- public function getDescription() {
- return 'Query MessageCollection about translations';
- }
-
- /**
- * @deprecated since MediaWiki core 1.25
- */
- protected function getExamples() {
- $group = 'page-Example';
-
- return array(
- 'api.php?action=query&meta=siteinfo&siprop=languages List of supported languages',
- "api.php?action=query&list=messagecollection&mcgroup=$group " .
- "List of non-optional message definitions for group $group",
- "api.php?action=query&list=messagecollection&mcgroup=$group&mclanguage=fi&" .
- "mcprop=definition|translation|tags&mcfilter=optional " .
- "List of optional messages in Finnish with tags for group $group",
- "api.php?action=query&generator=messagecollection&gmcgroup=$group" .
- "&gmclanguage=nl&prop=revisions " .
- "More information about latest translation revisions for group $group",
- );
- }
-
- /**
- * @see ApiBase::getExamplesMessages()
- */
protected function getExamplesMessages() {
- return array(
+ return [
'action=query&meta=siteinfo&siprop=languages'
=> 'apihelp-query+messagecollection-example-1',
'action=query&list=messagecollection&mcgroup=page-Example'
@@ -325,6 +274,6 @@ class ApiQueryMessageCollection extends ApiQueryGeneratorBase {
=> 'apihelp-query+messagecollection-example-3',
'action=query&generator=messagecollection&gmcgroup=page-Example&gmclanguage=nl&prop=revisions'
=> 'apihelp-query+messagecollection-example-4',
- );
+ ];
}
}
diff --git a/MLEB/Translate/api/ApiQueryMessageGroupStats.php b/MLEB/Translate/api/ApiQueryMessageGroupStats.php
index a1059fcb..3f9ea6c4 100644
--- a/MLEB/Translate/api/ApiQueryMessageGroupStats.php
+++ b/MLEB/Translate/api/ApiQueryMessageGroupStats.php
@@ -4,9 +4,9 @@
*
* @file
* @author Tim Gerundt
+ * @author Niklas Laxström
* @copyright Copyright © 2012-2013, Tim Gerundt
- * @copyright Copyright © 2012-2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -19,16 +19,21 @@ class ApiQueryMessageGroupStats extends ApiStatsQuery {
parent::__construct( $query, $moduleName, 'mgs' );
}
- protected function getData() {
- $params = $this->extractRequestParams();
+ /// Overwritten from ApiStatsQuery
+ protected function validateTargetParamater( array $params ) {
$group = MessageGroups::getGroup( $params['group'] );
if ( !$group ) {
- $this->dieUsageMsg( array( 'missingparam', 'mcgroup' ) );
+ $this->dieWithError( [ 'apierror-missingparam', 'mgsgroup' ] );
} elseif ( MessageGroups::isDynamic( $group ) ) {
- $this->dieUsage( 'Dynamic message groups are not supported here', 'invalidparam' );
+ $this->dieWithError( 'apierror-translate-nodynamicgroups', 'invalidparam' );
}
- return MessageGroupStats::forGroup( $group->getId() );
+ return $group->getId();
+ }
+
+ /// Overwritten from ApiStatsQuery
+ protected function loadStatistics( $target, $flags = 0 ) {
+ return MessageGroupStats::forGroup( $target, $flags );
}
protected function makeItem( $item, $stats ) {
@@ -41,50 +46,18 @@ class ApiQueryMessageGroupStats extends ApiStatsQuery {
public function getAllowedParams() {
$params = parent::getAllowedParams();
- $params['group'] = array(
+ $params['group'] = [
ApiBase::PARAM_TYPE => 'string',
ApiBase::PARAM_REQUIRED => true,
- );
+ ];
return $params;
}
- /**
- * @deprecated since MediaWiki core 1.25
- */
- public function getParamDescription() {
- $desc = parent::getParamDescription();
- $desc['group'] = 'Message group id';
-
- return $desc;
- }
-
- /**
- * @deprecated since MediaWiki core 1.25
- */
- public function getDescription() {
- return 'Query message group stats';
- }
-
- /**
- * @deprecated since MediaWiki core 1.25
- */
- protected function getExamples() {
- $group = 'page-Example';
-
- return array(
- "api.php?action=query&meta=messagegroupstats&mgsgroup=$group List of " .
- "translation completion statistics for group $group",
- );
- }
-
- /**
- * @see ApiBase::getExamplesMessages()
- */
protected function getExamplesMessages() {
- return array(
+ return [
'action=query&meta=messagegroupstats&mgsgroup=page-Example'
=> 'apihelp-query+messagegroupstats-example-1',
- );
+ ];
}
}
diff --git a/MLEB/Translate/api/ApiQueryMessageGroups.php b/MLEB/Translate/api/ApiQueryMessageGroups.php
index a9484783..b916d3cb 100644
--- a/MLEB/Translate/api/ApiQueryMessageGroups.php
+++ b/MLEB/Translate/api/ApiQueryMessageGroups.php
@@ -5,9 +5,8 @@
* @file
* @author Niklas Laxström
* @author Harry Burt
- * @copyright Copyright © 2010-2013, Niklas Laxström
* @copyright Copyright © 2012-2013, Harry Burt
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -25,7 +24,7 @@ class ApiQueryMessageGroups extends ApiQueryBase {
$params = $this->extractRequestParams();
$filter = $params['filter'];
- $groups = array();
+ $groups = [];
// Parameter root as all for all pages subgroups
if ( $params['root'] === 'all' ) {
@@ -43,16 +42,12 @@ class ApiQueryMessageGroups extends ApiQueryBase {
}
} else {
$groups = MessageGroups::getAllGroups();
- foreach ( MessageGroups::getDynamicGroups() as $id => $unused ) {
- $groups[$id] = MessageGroups::getGroup( $id );
- }
+ // Not sorted by default, so do it now
+ // Work around php bug: https://bugs.php.net/bug.php?id=50688
+ MediaWiki\suppressWarnings();
+ usort( $groups, [ 'MessageGroups', 'groupLabelSort' ] );
+ MediaWiki\restoreWarnings();
}
-
- // Not sorted by default, so do it now
- // Work around php bug: https://bugs.php.net/bug.php?id=50688
- wfSuppressWarnings();
- usort( $groups, array( 'MessageGroups', 'groupLabelSort' ) );
- wfRestoreWarnings();
} elseif ( $params['root'] !== '' ) {
// format=tree from now on, as it is the only other valid option
$group = MessageGroups::getGroup( $params['root'] );
@@ -63,9 +58,15 @@ class ApiQueryMessageGroups extends ApiQueryBase {
}
} else {
$groups = MessageGroups::getGroupStructure();
- foreach ( MessageGroups::getDynamicGroups() as $id => $unused ) {
- $groups[$id] = MessageGroups::getGroup( $id );
+ }
+
+ if ( $params['root'] === '' ) {
+ $dynamicGroups = [];
+ foreach ( array_keys( MessageGroups::getDynamicGroups() ) as $id ) {
+ $dynamicGroups[$id] = MessageGroups::getGroup( $id );
}
+ // Have dynamic groups appear first in the list
+ $groups = $dynamicGroups + $groups;
}
// Do not list the sandbox group. The code that knows it
@@ -82,7 +83,7 @@ class ApiQueryMessageGroups extends ApiQueryBase {
* @var MessageGroup $mixed
*/
foreach ( $groups as $mixed ) {
- if ( $filter !== array() && !$matcher->match( $mixed->getId() ) ) {
+ if ( $filter !== [] && !$matcher->match( $mixed->getId() ) ) {
continue;
}
@@ -91,20 +92,15 @@ class ApiQueryMessageGroups extends ApiQueryBase {
$result->setIndexedTagName( $a, 'group' );
// @todo Add a continue?
- $fit = $result->addValue( array( 'query', $this->getModuleName() ), null, $a );
+ $fit = $result->addValue( [ 'query', $this->getModuleName() ], null, $a );
if ( !$fit ) {
- $this->setWarning( 'Could not fit all groups in the resultset.' );
// Even if we're not going to give a continue, no point carrying on
// if the result is full
break;
}
}
- if ( defined( 'ApiResult::META_CONTENT' ) ) {
- $result->addIndexedTagName( array( 'query', $this->getModuleName() ), 'group' );
- } else {
- $result->setIndexedTagName_internal( array( 'query', $this->getModuleName() ), 'group' );
- }
+ $result->addIndexedTagName( [ 'query', $this->getModuleName() ], 'group' );
}
/**
@@ -115,10 +111,11 @@ class ApiQueryMessageGroups extends ApiQueryBase {
*/
protected function formatGroup( $mixed, $props, $depth = 0 ) {
$params = $this->extractRequestParams();
+ $context = $this->getContext();
// Default
$g = $mixed;
- $subgroups = array();
+ $subgroups = [];
// Format = tree and has subgroups
if ( is_array( $mixed ) ) {
@@ -126,23 +123,20 @@ class ApiQueryMessageGroups extends ApiQueryBase {
$subgroups = $mixed;
}
- wfProfileIn( __METHOD__ . '-' . get_class( $g ) );
-
- $a = array();
+ $a = [];
$groupId = $g->getId();
- wfProfileIn( __METHOD__ . '-basic' );
if ( isset( $props['id'] ) ) {
$a['id'] = $groupId;
}
if ( isset( $props['label'] ) ) {
- $a['label'] = $g->getLabel();
+ $a['label'] = $g->getLabel( $context );
}
if ( isset( $props['description'] ) ) {
- $a['description'] = $g->getDescription();
+ $a['description'] = $g->getDescription( $context );
}
if ( isset( $props['class'] ) ) {
@@ -152,24 +146,18 @@ class ApiQueryMessageGroups extends ApiQueryBase {
if ( isset( $props['namespace'] ) ) {
$a['namespace'] = $g->getNamespace();
}
- wfProfileOut( __METHOD__ . '-basic' );
- wfProfileIn( __METHOD__ . '-exists' );
if ( isset( $props['exists'] ) ) {
$a['exists'] = $g->exists();
}
- wfProfileOut( __METHOD__ . '-exists' );
- wfProfileIn( __METHOD__ . '-icon' );
if ( isset( $props['icon'] ) ) {
$formats = TranslateUtils::getIcon( $g, $params['iconsize'] );
if ( $formats ) {
$a['icon'] = $formats;
}
}
- wfProfileOut( __METHOD__ . '-icon' );
- wfProfileIn( __METHOD__ . '-priority' );
if ( isset( $props['priority'] ) ) {
$priority = MessageGroups::getPriority( $g );
$a['priority'] = $priority ?: 'default';
@@ -183,21 +171,16 @@ class ApiQueryMessageGroups extends ApiQueryBase {
if ( isset( $props['priorityforce'] ) ) {
$a['priorityforce'] = ( TranslateMetadata::get( $groupId, 'priorityforce' ) === 'on' );
}
- wfProfileOut( __METHOD__ . '-priority' );
- wfProfileIn( __METHOD__ . '-workflowstates' );
if ( isset( $props['workflowstates'] ) ) {
$a['workflowstates'] = $this->getWorkflowStates( $g );
}
- wfProfileOut( __METHOD__ . '-workflowstates' );
- wfRunHooks(
+ Hooks::run(
'TranslateProcessAPIMessageGroupsProperties',
- array( &$a, $props, $params, $g )
+ [ &$a, $props, $params, $g ]
);
- wfProfileOut( __METHOD__ . '-' . get_class( $g ) );
-
// Depth only applies to tree format
if ( $depth >= $params['depth'] && $params['format'] === 'tree' ) {
$a['groupcount'] = count( $subgroups );
@@ -207,7 +190,7 @@ class ApiQueryMessageGroups extends ApiQueryBase {
}
// Always empty array for flat format, only sometimes for tree format
- if ( $subgroups !== array() ) {
+ if ( $subgroups !== [] ) {
foreach ( $subgroups as $sg ) {
$a['groups'][] = $this->formatGroup( $sg, $props );
}
@@ -222,7 +205,7 @@ class ApiQueryMessageGroups extends ApiQueryBase {
* Get the workflow states applicable to the given message group
*
* @param MessageGroup $group
- * @return boolean|array Associative array with states as key and localized state
+ * @return bool|array Associative array with states as key and localized state
* labels as values
*/
protected function getWorkflowStates( MessageGroup $group ) {
@@ -232,7 +215,7 @@ class ApiQueryMessageGroups extends ApiQueryBase {
$stateConfig = $group->getMessageGroupStates()->getStates();
- if ( !is_array( $stateConfig ) || $stateConfig === array() ) {
+ if ( !is_array( $stateConfig ) || $stateConfig === [] ) {
return false;
}
@@ -247,8 +230,11 @@ class ApiQueryMessageGroups extends ApiQueryBase {
$allowed = $user->isAllowed( $config['right'] );
}
- $stateConfig[$state]['_canchange'] = $allowed;
- $stateConfig[$state]['_name'] =
+ if ( $allowed ) {
+ $stateConfig[$state]['canchange'] = 1;
+ }
+
+ $stateConfig[$state]['name'] =
$this->msg( "translate-workflow-state-$state" )->text();
}
}
@@ -257,90 +243,46 @@ class ApiQueryMessageGroups extends ApiQueryBase {
}
public function getAllowedParams() {
- $allowedParams = array(
- 'depth' => array(
+ $allowedParams = [
+ 'depth' => [
ApiBase::PARAM_TYPE => 'integer',
- ApiBase::PARAM_DFLT => '100',
- ),
- 'filter' => array(
+ ApiBase::PARAM_DFLT => 100,
+ ],
+ 'filter' => [
ApiBase::PARAM_TYPE => 'string',
ApiBase::PARAM_DFLT => '',
ApiBase::PARAM_ISMULTI => true,
- ),
- 'format' => array(
- ApiBase::PARAM_TYPE => array( 'flat', 'tree' ),
+ ],
+ 'format' => [
+ ApiBase::PARAM_TYPE => [ 'flat', 'tree' ],
ApiBase::PARAM_DFLT => 'flat',
- ),
- 'iconsize' => array(
+ ],
+ 'iconsize' => [
ApiBase::PARAM_TYPE => 'integer',
ApiBase::PARAM_DFLT => 64,
- ),
- 'prop' => array(
+ ],
+ 'prop' => [
ApiBase::PARAM_TYPE => array_keys( self::getPropertyList() ),
ApiBase::PARAM_DFLT => 'id|label|description|class|exists',
ApiBase::PARAM_ISMULTI => true,
- ),
- 'root' => array(
+ ],
+ 'root' => [
ApiBase::PARAM_TYPE => 'string',
ApiBase::PARAM_DFLT => '',
- ),
- );
- wfRunHooks( 'TranslateGetAPIMessageGroupsParameterList', array( &$allowedParams ) );
+ ],
+ ];
+ Hooks::run( 'TranslateGetAPIMessageGroupsParameterList', [ &$allowedParams ] );
return $allowedParams;
}
/**
- * @deprecated since MediaWiki core 1.25
- */
- public function getParamDescription() {
- $depth = <<<TEXT
-When using the tree format, limit the depth to this many levels. Value 0 means
-that no subgroups are shown. If the limit is reached, a prop groupcount is
-added and it states the number of direct children.
-TEXT;
- $root = <<<TEXT
-When using the tree format, instead of starting from top level start from the
-given message group, which must be an aggregate message group. When using flat
-format only the specified group is returned.
-TEXT;
- $filter = <<<TEXT
-Only return messages with IDs that match one or more of the input(s) given
-(case-insensitive, separated by pipes, * wildcard).
-TEXT;
-
- $propIntro = array( 'What translation-related information to get:' );
-
- $paramDescs = array(
- 'depth' => $depth,
- 'format' => 'In a tree format message groups can exist multiple places in the tree.',
- 'iconsize' => 'Preferred size of rasterised group icon',
- 'root' => $root,
- 'filter' => $filter,
- 'prop' => array_merge( $propIntro, self::getPropertyList() ),
- );
-
- $p = $this->getModulePrefix(); // Can be useful for documentation
- wfRunHooks( 'TranslateGetAPIMessageGroupsParameterDescs', array( &$paramDescs, $p ) );
-
- $indent = "\n" . str_repeat( ' ', 24 );
- $wrapWidth = 104 - 24;
- foreach ( $paramDescs as &$val ) {
- if ( is_string( $val ) ) {
- $val = wordwrap( str_replace( "\n", ' ', $val ), $wrapWidth, $indent );
- }
- }
-
- return $paramDescs;
- }
-
- /**
* Returns array of key value pairs of properties and their descriptions
*
* @return array
*/
protected static function getPropertyList() {
- $properties = array(
+ $properties = [
'id' => ' id - Include id of the group',
'label' => ' label - Include label of the group',
'description' => ' description - Include description of the group',
@@ -359,37 +301,17 @@ TEXT;
'setting forced',
'workflowstates' =>
' workflowstates - Include the workflow states for the message group',
- );
+ ];
- wfRunHooks( 'TranslateGetAPIMessageGroupsPropertyDescs', array( &$properties ) );
+ Hooks::run( 'TranslateGetAPIMessageGroupsPropertyDescs', [ &$properties ] );
return $properties;
}
- /**
- * @deprecated since MediaWiki core 1.25
- */
- public function getDescription() {
- return 'Return information about message groups. Note that uselang parameter ' .
- 'affects the output of language dependent parts.';
- }
-
- /**
- * @deprecated since MediaWiki core 1.25
- */
- protected function getExamples() {
- return array(
- 'api.php?action=query&meta=messagegroups',
- );
- }
-
- /**
- * @see ApiBase::getExamplesMessages()
- */
protected function getExamplesMessages() {
- return array(
+ return [
'action=query&meta=messagegroups'
=> 'apihelp-query+messagegroups-example-1',
- );
+ ];
}
}
diff --git a/MLEB/Translate/api/ApiQueryMessageTranslations.php b/MLEB/Translate/api/ApiQueryMessageTranslations.php
index 6b5aa6e2..13eed8b6 100644
--- a/MLEB/Translate/api/ApiQueryMessageTranslations.php
+++ b/MLEB/Translate/api/ApiQueryMessageTranslations.php
@@ -4,8 +4,7 @@
*
* @file
* @author Niklas Laxström
- * @copyright Copyright © 2011-2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -14,7 +13,6 @@
* @ingroup API TranslateAPI
*/
class ApiQueryMessageTranslations extends ApiQueryBase {
-
public function __construct( $query, $moduleName ) {
parent::__construct( $query, $moduleName, 'mt' );
}
@@ -33,28 +31,28 @@ class ApiQueryMessageTranslations extends ApiQueryBase {
$namespace = $handle->getTitle()->getNamespace();
$base = $handle->getKey();
- $dbr = wfGetDB( DB_SLAVE );
+ $dbr = wfGetDB( DB_REPLICA );
$res = $dbr->select( 'page',
- array( 'page_namespace', 'page_title' ),
- array(
+ [ 'page_namespace', 'page_title' ],
+ [
'page_namespace' => $namespace,
'page_title ' . $dbr->buildLike( "$base/", $dbr->anyString() ),
- ),
+ ],
__METHOD__,
- array(
+ [
'ORDER BY' => 'page_title',
'USE INDEX' => 'name_title',
- )
+ ]
);
- $titles = array();
+ $titles = [];
foreach ( $res as $row ) {
$titles[] = $row->page_title;
}
- if ( $titles === array() ) {
- return array();
+ if ( $titles === [] ) {
+ return [];
}
$pageInfo = TranslateUtils::getContents( $titles, $namespace );
@@ -67,15 +65,12 @@ class ApiQueryMessageTranslations extends ApiQueryBase {
$title = Title::newFromText( $params['title'] );
if ( !$title ) {
- $this->dieUsage( 'Invalid title', 'invalidtitle' );
+ $this->dieWithError( [ 'apierror-invalidtitle', wfEscapeWikiText( $params['title'] ) ] );
}
$handle = new MessageHandle( $title );
if ( !$handle->isValid() ) {
- $this->dieUsage(
- 'Title does not correspond to a translatable message',
- 'nomessagefortitle'
- );
+ $this->dieWithError( 'apierror-translate-nomessagefortitle', 'nomessagefortitle' );
}
$namespace = $title->getNamespace();
@@ -92,11 +87,11 @@ class ApiQueryMessageTranslations extends ApiQueryBase {
$tTitle = Title::makeTitle( $namespace, $key );
$tHandle = new MessageHandle( $tTitle );
- $data = array(
+ $data = [
'title' => $tTitle->getPrefixedText(),
'language' => $tHandle->getCode(),
'lasttranslator' => $info[1],
- );
+ ];
$fuzzy = MessageHandle::hasFuzzyString( $info[0] ) || $tHandle->isFuzzy();
@@ -105,77 +100,36 @@ class ApiQueryMessageTranslations extends ApiQueryBase {
}
$translation = str_replace( TRANSLATE_FUZZY, '', $info[0] );
- if ( defined( 'ApiResult::META_CONTENT' ) ) {
- ApiResult::setContentValue( $data, 'translation', $translation );
- } else {
- ApiResult::setContent( $data, $translation );
- }
+ ApiResult::setContentValue( $data, 'translation', $translation );
- $fit = $result->addValue( array( 'query', $this->getModuleName() ), null, $data );
+ $fit = $result->addValue( [ 'query', $this->getModuleName() ], null, $data );
if ( !$fit ) {
$this->setContinueEnumParameter( 'offset', $count );
break;
}
}
- if ( defined( 'ApiResult::META_CONTENT' ) ) {
- $result->addIndexedTagName( array( 'query', $this->getModuleName() ), 'message' );
- } else {
- $result->setIndexedTagName_internal( array( 'query', $this->getModuleName() ), 'message' );
- }
+ $result->addIndexedTagName( [ 'query', $this->getModuleName() ], 'message' );
}
public function getAllowedParams() {
- return array(
- 'title' => array(
+ return [
+ 'title' => [
ApiBase::PARAM_TYPE => 'string',
ApiBase::PARAM_REQUIRED => true,
- ),
- 'offset' => array(
+ ],
+ 'offset' => [
ApiBase::PARAM_DFLT => 0,
ApiBase::PARAM_TYPE => 'integer',
- /** @todo Once support for MediaWiki < 1.25 is dropped, just
- * use ApiBase::PARAM_HELP_MSG directly
- */
- defined( 'ApiBase::PARAM_HELP_MSG' ) ? ApiBase::PARAM_HELP_MSG : '' =>
- 'api-help-param-continue',
- ),
- );
+ ApiBase::PARAM_HELP_MSG => 'api-help-param-continue',
+ ],
+ ];
}
- /**
- * @deprecated since MediaWiki core 1.25
- */
- public function getParamDescription() {
- return array(
- 'title' => 'Full title of a known message',
- );
- }
-
- /**
- * @deprecated since MediaWiki core 1.25
- */
- public function getDescription() {
- return 'Query all translations for a single message';
- }
-
- /**
- * @deprecated since MediaWiki core 1.25
- */
- protected function getExamples() {
- return array(
- "api.php?action=query&meta=messagetranslations&mttitle=MediaWiki:January " .
- "List of translations in the wiki for MediaWiki:January",
- );
- }
-
- /**
- * @see ApiBase::getExamplesMessages()
- */
protected function getExamplesMessages() {
- return array(
+ return [
'action=query&meta=messagetranslations&mttitle=MediaWiki:January'
=> 'apihelp-query+messagetranslations-example-1',
- );
+ ];
}
}
diff --git a/MLEB/Translate/api/ApiQueryTranslationAids.php b/MLEB/Translate/api/ApiQueryTranslationAids.php
index c44fcc0a..67560df1 100644
--- a/MLEB/Translate/api/ApiQueryTranslationAids.php
+++ b/MLEB/Translate/api/ApiQueryTranslationAids.php
@@ -4,8 +4,7 @@
*
* @file
* @author Niklas Laxström
- * @copyright Copyright © 2012-2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -19,48 +18,76 @@ class ApiTranslationAids extends ApiBase {
$title = Title::newFromText( $params['title'] );
if ( !$title ) {
- $this->dieUsage( 'Invalid title', 'invalidtitle' );
+ $this->dieWithError( [ 'apierror-invalidtitle', wfEscapeWikiText( $params['title'] ) ] );
}
$handle = new MessageHandle( $title );
if ( !$handle->isValid() ) {
- $this->dieUsage(
- 'Title does not correspond to a translatable message',
- 'nomessagefortitle'
- );
+ $this->dieWithError( 'apierror-translate-nomessagefortitle', 'nomessagefortitle' );
}
- if ( strval( $params['group'] ) !== '' ) {
+ if ( (string)$params['group'] !== '' ) {
$group = MessageGroups::getGroup( $params['group'] );
} else {
$group = $handle->getGroup();
}
if ( !$group ) {
- $this->dieUsage( 'Invalid group', 'invalidgroup' );
+ $this->dieWithError( 'apierror-translate-invalidgroup', 'invalidgroup' );
}
- $data = array();
- $times = array();
+ $data = [];
+ $times = [];
$props = $params['prop'];
+ $aggregator = new QueryAggregator();
+ // Figure out the intersection of supported and requested aids
$types = $group->getTranslationAids();
+ $props = array_intersect( $props, array_keys( $types ) );
+
$result = $this->getResult();
+
+ // Create list of aids, populate web services queries
+ $aids = [];
+
+ $dataProvider = new TranslationAidDataProvider( $handle );
foreach ( $props as $type ) {
// Do not proceed if translation aid is not supported for this message group
if ( !isset( $types[$type] ) ) {
- continue;
+ $types[$type] = 'UnsupportedTranslationAid';
}
- $start = microtime( true );
$class = $types[$type];
- $obj = new $class( $group, $handle, $this );
+ $obj = new $class( $group, $handle, $this, $dataProvider );
+
+ if ( $obj instanceof QueryAggregatorAware ) {
+ $obj->setQueryAggregator( $aggregator );
+ try {
+ $obj->populateQueries();
+ } catch ( TranslationHelperException $e ) {
+ $data[$type] = [ 'error' => $e->getMessage() ];
+ // Prevent processing this aids and thus overwriting our error
+ continue;
+ }
+ }
+
+ $aids[$type] = $obj;
+ }
+
+ // Execute all web service queries asynchronously to save time
+ $start = microtime( true );
+ $aggregator->run();
+ $times['query_aggregator'] = round( microtime( true ) - $start, 3 );
+
+ // Construct the result data structure
+ foreach ( $aids as $type => $obj ) {
+ $start = microtime( true );
try {
$aid = $obj->getData();
} catch ( TranslationHelperException $e ) {
- $aid = array( 'error' => $e->getMessage() );
+ $aid = [ 'error' => $e->getMessage() ];
}
if ( isset( $aid['**'] ) ) {
@@ -78,59 +105,28 @@ class ApiTranslationAids extends ApiBase {
public function getAllowedParams() {
$props = array_keys( TranslationAid::getTypes() );
- wfRunHooks( 'TranslateTranslationAids', array( &$props ) );
+ Hooks::run( 'TranslateTranslationAids', [ &$props ] );
- return array(
- 'title' => array(
+ return [
+ 'title' => [
ApiBase::PARAM_TYPE => 'string',
ApiBase::PARAM_REQUIRED => true,
- ),
- 'group' => array(
+ ],
+ 'group' => [
ApiBase::PARAM_TYPE => 'string',
- ),
- 'prop' => array(
+ ],
+ 'prop' => [
ApiBase::PARAM_DFLT => implode( '|', $props ),
ApiBase::PARAM_TYPE => $props,
ApiBase::PARAM_ISMULTI => true,
- ),
- );
- }
-
- /**
- * @deprecated since MediaWiki core 1.25
- */
- public function getParamDescription() {
- return array(
- 'title' => 'Full title of a known message',
- 'group' => 'Message group the message belongs to. If empty then ' .
- 'primary group is used.',
- 'prop' => 'Which translation helpers to include.',
- );
- }
-
- /**
- * @deprecated since MediaWiki core 1.25
- */
- public function getDescription() {
- return 'Query all translations aids';
- }
-
- /**
- * @deprecated since MediaWiki core 1.25
- */
- protected function getExamples() {
- return array(
- "api.php?action=translationaids&title=MediaWiki:January/fi",
- );
+ ],
+ ];
}
- /**
- * @see ApiBase::getExamplesMessages()
- */
protected function getExamplesMessages() {
- return array(
+ return [
'action=translationaids&title=MediaWiki:January/fi'
=> 'apihelp-translationaids-example-1',
- );
+ ];
}
}
diff --git a/MLEB/Translate/api/ApiStatsQuery.php b/MLEB/Translate/api/ApiStatsQuery.php
index bf1e1e9f..3dbb4ede 100644
--- a/MLEB/Translate/api/ApiStatsQuery.php
+++ b/MLEB/Translate/api/ApiStatsQuery.php
@@ -3,8 +3,8 @@
* A base module for querying message group related stats.
*
* @file
- * @copyright Copyright © 2012-2013, Niklas Laxström
- * @license GPL-2.0+
+ * @author Niklas Laxström
+ * @license GPL-2.0-or-later
*/
/**
@@ -18,12 +18,30 @@ abstract class ApiStatsQuery extends ApiQueryBase {
return 'public';
}
+ /**
+ * Implement this to implement input validation and return the name of the target that
+ * is then given to loadStats.
+ * @param array $params
+ * @return string
+ */
+ abstract protected function validateTargetParamater( array $params );
+
+ /**
+ * Implement this to load stats.
+ * @param string $target
+ * @param int $flags See MessageGroupStats for possible flags
+ * @return array[]
+ */
+ abstract protected function loadStatistics( $target, $flags );
+
public function execute() {
$params = $this->extractRequestParams();
- MessageGroupStats::setTimeLimit( $params['timelimit'] );
- $cache = $this->getData();
+ $target = $this->validateTargetParamater( $params );
+ $cache = $this->loadStatistics( $target, MessageGroupStats::FLAG_CACHE_ONLY );
+
$result = $this->getResult();
+ $incomplete = false;
foreach ( $cache as $item => $stats ) {
if ( $item < $params['offset'] ) {
@@ -31,59 +49,47 @@ abstract class ApiStatsQuery extends ApiQueryBase {
}
if ( $stats[MessageGroupStats::TOTAL] === null ) {
+ $incomplete = true;
$this->setContinueEnumParameter( 'offset', $item );
break;
}
$data = $this->makeItem( $item, $stats );
- $result->addValue( array( 'query', $this->getModuleName() ), null, $data );
+ $result->addValue( [ 'query', $this->getModuleName() ], null, $data );
}
- if ( defined( 'ApiResult::META_CONTENT' ) ) {
- $result->addIndexedTagName( array( 'query', $this->getModuleName() ), 'stats' );
- } else {
- $result->setIndexedTagName_internal( array( 'query', $this->getModuleName() ), 'stats' );
+ $result->addIndexedTagName( [ 'query', $this->getModuleName() ], 'stats' );
+
+ if ( $incomplete ) {
+ DeferredUpdates::addCallableUpdate( function () use ( $target ) {
+ $this->loadStatistics( $target );
+ } );
}
}
protected function makeItem( $item, $stats ) {
- return array(
+ return [
'total' => $stats[MessageGroupStats::TOTAL],
'translated' => $stats[MessageGroupStats::TRANSLATED],
'fuzzy' => $stats[MessageGroupStats::FUZZY],
'proofread' => $stats[MessageGroupStats::PROOFREAD],
- );
+ ];
}
public function getAllowedParams() {
- return array(
- 'offset' => array(
- ApiBase::PARAM_DFLT => 0,
+ return [
+ 'offset' => [
+ ApiBase::PARAM_DFLT => '0',
ApiBase::PARAM_TYPE => 'string',
- /** @todo Once support for MediaWiki < 1.25 is dropped, just
- * use ApiBase::PARAM_HELP_MSG directly
- */
- defined( 'ApiBase::PARAM_HELP_MSG' ) ? ApiBase::PARAM_HELP_MSG : '' =>
- 'api-help-param-continue',
- ),
- 'timelimit' => array(
+ ApiBase::PARAM_HELP_MSG => 'api-help-param-continue',
+ ],
+ 'timelimit' => [
ApiBase::PARAM_DFLT => 8,
ApiBase::PARAM_TYPE => 'integer',
ApiBase::PARAM_MAX => 10,
ApiBase::PARAM_MIN => 0,
- ),
- );
- }
-
- /**
- * @deprecated since MediaWiki core 1.25
- */
- public function getParamDescription() {
- return array(
- 'offset' => 'If not all stats are calculated, you will get a query-continue ' .
- 'parameter for offset you can use to get more.',
- 'timelimit' => 'Maximum time to spend calculating missing statistics. If ' .
- 'zero, only the cached results from the beginning are returned.',
- );
+ ApiBase::PARAM_DEPRECATED => true, // Since 2018.10
+ ],
+ ];
}
}
diff --git a/MLEB/Translate/api/ApiTTMServer.php b/MLEB/Translate/api/ApiTTMServer.php
index 4fdc5625..bedc0270 100644
--- a/MLEB/Translate/api/ApiTTMServer.php
+++ b/MLEB/Translate/api/ApiTTMServer.php
@@ -4,8 +4,7 @@
*
* @file
* @author Niklas Laxström
- * @copyright Copyright © 2012-2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -18,6 +17,11 @@ class ApiTTMServer extends ApiBase {
public function execute() {
global $wgTranslateTranslationServices;
+
+ if ( !$this->getAvailableTranslationServices() ) {
+ $this->dieWithError( 'apierror-translate-notranslationservices' );
+ }
+
$params = $this->extractRequestParams();
$config = $wgTranslateTranslationServices[$params['service']];
@@ -36,17 +40,13 @@ class ApiTTMServer extends ApiBase {
$result->addValue( $this->getModuleName(), null, $sug );
}
- if ( defined( 'ApiResult::META_CONTENT' ) ) {
- $result->addIndexedTagName( $this->getModuleName(), 'suggestion' );
- } else {
- $result->setIndexedTagName_internal( $this->getModuleName(), 'suggestion' );
- }
+ $result->addIndexedTagName( $this->getModuleName(), 'suggestion' );
}
protected function getAvailableTranslationServices() {
global $wgTranslateTranslationServices;
- $good = array();
+ $good = [];
foreach ( $wgTranslateTranslationServices as $id => $config ) {
if ( isset( $config['public'] ) && $config['public'] === true ) {
$good[] = $id;
@@ -57,63 +57,40 @@ class ApiTTMServer extends ApiBase {
}
public function getAllowedParams() {
+ global $wgTranslateTranslationDefaultService;
$available = $this->getAvailableTranslationServices();
- return array(
- 'service' => array(
+ $ret = [
+ 'service' => [
ApiBase::PARAM_TYPE => $available,
- ApiBase::PARAM_DFLT => 'TTMServer',
- ),
- 'sourcelanguage' => array(
+ ],
+ 'sourcelanguage' => [
ApiBase::PARAM_TYPE => 'string',
ApiBase::PARAM_REQUIRED => true,
- ),
- 'targetlanguage' => array(
+ ],
+ 'targetlanguage' => [
ApiBase::PARAM_TYPE => 'string',
ApiBase::PARAM_REQUIRED => true,
- ),
- 'text' => array(
+ ],
+ 'text' => [
ApiBase::PARAM_TYPE => 'string',
ApiBase::PARAM_REQUIRED => true,
- ),
- );
- }
+ ],
+ ];
- /**
- * @deprecated since MediaWiki core 1.25
- */
- public function getParamDescription() {
- return array(
- 'service' => 'Which of the available translation services to use.',
- 'sourcelanguage' => 'A language code of the source text',
- 'targetlanguage' => 'A language code of the suggestion',
- 'text' => 'The text to find suggestions for',
- );
- }
-
- /**
- * @deprecated since MediaWiki core 1.25
- */
- public function getDescription() {
- return 'Query suggestions from translation memories';
- }
+ if ( $available ) {
+ // Don't add this if no services are available, it makes
+ // ApiStructureTest unhappy
+ $ret['service'][ApiBase::PARAM_DFLT] = $wgTranslateTranslationDefaultService;
+ }
- /**
- * @deprecated since MediaWiki core 1.25
- */
- public function getExamples() {
- return array(
- 'api.php?action=ttmserver&sourcelanguage=en&targetlanguage=fi&text=Help',
- );
+ return $ret;
}
- /**
- * @see ApiBase::getExamplesMessages()
- */
protected function getExamplesMessages() {
- return array(
+ return [
'action=ttmserver&sourcelanguage=en&targetlanguage=fi&text=Help'
=> 'apihelp-ttmserver-example-1',
- );
+ ];
}
}
diff --git a/MLEB/Translate/api/ApiTranslateSandbox.php b/MLEB/Translate/api/ApiTranslateSandbox.php
index 07fcce64..3aed7170 100644
--- a/MLEB/Translate/api/ApiTranslateSandbox.php
+++ b/MLEB/Translate/api/ApiTranslateSandbox.php
@@ -4,7 +4,7 @@
*
* @file
* @author Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -15,7 +15,7 @@ class ApiTranslateSandbox extends ApiBase {
public function execute() {
global $wgTranslateUseSandbox;
if ( !$wgTranslateUseSandbox ) {
- $this->dieUsage( 'Sandbox feature is not in use', 'sandboxdisabled' );
+ $this->dieWithError( 'apierror-translate-sandboxdisabled', 'sandboxdisabled' );
}
$params = $this->extractRequestParams();
@@ -41,35 +41,35 @@ class ApiTranslateSandbox extends ApiBase {
// Do validations
foreach ( explode( '|', 'username|password|email' ) as $field ) {
if ( !isset( $params[$field] ) ) {
- $this->dieUsage( "Missing parameter $field", 'missingparam' );
+ $this->dieWithError( [ 'apierror-missingparam', $field ], 'missingparam' );
}
}
$username = $params['username'];
if ( User::getCanonicalName( $username, 'creatable' ) === false ) {
- $this->dieUsage( "User name is not acceptable", 'invalidusername' );
+ $this->dieWithError( 'noname', 'invalidusername' );
}
$user = User::newFromName( $username );
- if ( $user->getID() !== 0 ) {
- $this->dieUsage( "User name is in use", 'nonfreeusername' );
+ if ( $user->getId() !== 0 ) {
+ $this->dieWithError( 'userexists', 'nonfreeusername' );
}
$password = $params['password'];
if ( !$user->isValidPassword( $password ) ) {
- $this->dieUsage( "Password is not acceptable", 'invalidpassword' );
+ $this->dieWithError( 'apierror-translate-sandbox-invalidpassword', 'invalidpassword' );
}
$email = $params['email'];
if ( !Sanitizer::validateEmail( $email ) ) {
- $this->dieUsage( "Email is not acceptable", 'invalidemail' );
+ $this->dieWithError( 'invalidemailaddress', 'invalidemail' );
}
$user = TranslateSandbox::addUser( $username, $email, $password );
- $output = array( 'user' => array(
+ $output = [ 'user' => [
'name' => $user->getName(),
'id' => $user->getId(),
- ) );
+ ] ];
$user->setOption( 'language', $this->getContext()->getLanguage()->getCode() );
$user->saveSettings();
@@ -78,9 +78,7 @@ class ApiTranslateSandbox extends ApiBase {
}
protected function doDelete() {
- if ( !$this->getUser()->isAllowed( 'translate-sandboxmanage' ) ) {
- $this->dieUsage( 'Access denied', 'missingperms' );
- }
+ $this->checkUserRightsAny( 'translate-sandboxmanage' );
$params = $this->extractRequestParams();
@@ -93,7 +91,10 @@ class ApiTranslateSandbox extends ApiBase {
try {
TranslateSandbox::deleteUser( $user );
} catch ( MWException $e ) {
- $this->dieUsage( $e->getMessage(), 'invalidparam' );
+ $this->dieWithError(
+ [ 'apierror-translate-sandbox-invalidparam', wfEscapeWikiText( $e->getMessage() ) ],
+ 'invalidparam'
+ );
}
$logEntry = new ManualLogEntry( 'translatorsandbox', 'rejected' );
@@ -105,9 +106,7 @@ class ApiTranslateSandbox extends ApiBase {
}
protected function doPromote() {
- if ( !$this->getUser()->isAllowed( 'translate-sandboxmanage' ) ) {
- $this->dieUsage( 'Access denied', 'missingperms' );
- }
+ $this->checkUserRightsAny( 'translate-sandboxmanage' );
$params = $this->extractRequestParams();
@@ -117,7 +116,10 @@ class ApiTranslateSandbox extends ApiBase {
try {
TranslateSandbox::promoteUser( $user );
} catch ( MWException $e ) {
- $this->dieUsage( $e->getMessage(), 'invalidparam' );
+ $this->dieWithError(
+ [ 'apierror-translate-sandbox-invalidparam', wfEscapeWikiText( $e->getMessage() ) ],
+ 'invalidparam'
+ );
}
TranslateSandbox::sendEmail( $this->getUser(), $user, 'promotion' );
@@ -125,15 +127,13 @@ class ApiTranslateSandbox extends ApiBase {
$logEntry = new ManualLogEntry( 'translatorsandbox', 'promoted' );
$logEntry->setPerformer( $this->getUser() );
$logEntry->setTarget( $user->getUserPage() );
- $logEntry->setParameters( array(
+ $logEntry->setParameters( [
'4::userid' => $user->getId(),
- ) );
+ ] );
$logid = $logEntry->insert();
$logEntry->publish( $logid );
- $user->addNewUserLogEntry( 'tsbpromoted' );
$this->createUserPage( $user );
- wfRunHooks( 'AddNewAccount', array( $user, false ) );
}
}
@@ -146,7 +146,10 @@ class ApiTranslateSandbox extends ApiBase {
try {
TranslateSandbox::sendEmail( $this->getUser(), $user, 'reminder' );
} catch ( MWException $e ) {
- $this->dieUsage( $e->getMessage(), 'invalidparam' );
+ $this->dieWithError(
+ [ 'apierror-translate-sandbox-invalidparam', wfEscapeWikiText( $e->getMessage() ) ],
+ 'invalidparam'
+ );
}
}
}
@@ -179,10 +182,6 @@ class ApiTranslateSandbox extends ApiBase {
return $editResult;
}
- public function mustBePosted() {
- return true;
- }
-
public function isWriteMode() {
return true;
}
@@ -191,76 +190,24 @@ class ApiTranslateSandbox extends ApiBase {
return 'csrf';
}
- // This function exists for backwards compatibility with MediaWiki before
- // 1.24
- public function getTokenSalt() {
- return 'sandbox';
- }
-
- // This function maintains backwards compatibility with self::getToken()
- // below. If salt is removed from self::getToken() and nothing else (e.g.
- // JS) generates the token directly, this could probably be removed.
- protected function getWebUITokenSalt( array $params ) {
- return 'sandbox';
- }
-
- // This function implements pre-1.24 token fetching via the
- // ApiTokensGetTokenTypes hook, kept for backwards compatibility.
- public static function getToken() {
- // Who designed this?!?!?!
- $user = RequestContext::getMain()->getUser();
- return $user->getEditToken( 'sandbox' );
- }
-
public function getAllowedParams() {
- return array(
- 'do' => array(
- ApiBase::PARAM_TYPE => array( 'create', 'delete', 'promote', 'remind' ),
+ return [
+ 'do' => [
+ ApiBase::PARAM_TYPE => [ 'create', 'delete', 'promote', 'remind' ],
ApiBase::PARAM_REQUIRED => true,
- ),
- 'userid' => array(
+ ],
+ 'userid' => [
ApiBase::PARAM_TYPE => 'integer',
ApiBase::PARAM_DFLT => 0,
ApiBase::PARAM_ISMULTI => true,
- ),
- 'token' => array(
+ ],
+ 'token' => [
ApiBase::PARAM_TYPE => 'string',
ApiBase::PARAM_REQUIRED => true,
- ),
- 'username' => array( ApiBase::PARAM_TYPE => 'string' ),
- 'password' => array( ApiBase::PARAM_TYPE => 'string' ),
- 'email' => array( ApiBase::PARAM_TYPE => 'string' ),
- );
- }
-
- /**
- * @deprecated since MediaWiki core 1.25
- */
- public function getParamDescription() {
- $action = TranslateUtils::getTokenAction( 'translatesandbox' );
-
- return array(
- 'do' => 'What to do',
- 'userid' => 'User ids of the users being managed. Use 0 for creations.',
- 'token' => "A token previously acquired with $action",
- 'username' => 'Username when creating user',
- 'password' => 'Password when creating user',
- 'email' => 'Email when creating user',
- );
- }
-
- /**
- * @deprecated since MediaWiki core 1.25
- */
- public function getDescription() {
- return 'Signup and manage sandboxed users';
- }
-
- // This function implements pre-1.24 token fetching via the
- // ApiTokensGetTokenTypes hook, kept for backwards compatibility.
- public static function injectTokenFunction( &$list ) {
- $list['translatesandbox'] = array( __CLASS__, 'getToken' );
-
- return true;
+ ],
+ 'username' => [ ApiBase::PARAM_TYPE => 'string' ],
+ 'password' => [ ApiBase::PARAM_TYPE => 'string' ],
+ 'email' => [ ApiBase::PARAM_TYPE => 'string' ],
+ ];
}
}
diff --git a/MLEB/Translate/api/ApiTranslateUser.php b/MLEB/Translate/api/ApiTranslateUser.php
deleted file mode 100644
index 95ab3322..00000000
--- a/MLEB/Translate/api/ApiTranslateUser.php
+++ /dev/null
@@ -1,86 +0,0 @@
-<?php
-/**
- * API module.
- * @file
- * @author Niklas Laxström
- * @copyright Copyright © 2012-2013, Niklas Laxström
- * @license GPL-2.0+
- */
-
-/**
- * API module for collecting and accessing translation related
- * information about the user.
- *
- * @ingroup API TranslateAPI
- * @since 2012-11-30
- */
-class ApiTranslateUser extends ApiBase {
- public function execute() {
- $output = array();
-
- $user = $this->getUser();
- $groups = $user->getOption( 'translate-recent-groups', '' );
- $output['recentgroups'] = array();
- if ( strval( $groups ) !== '' ) {
- $output['recentgroups'] = explode( '|', $groups );
- $this->getResult()->setIndexedTagName( $output['recentgroups'], 'group' );
- }
- $this->getResult()->addValue( null, $this->getModuleName(), $output );
- }
-
- /**
- * @deprecated since MediaWiki core 1.25
- */
- public function getDescription() {
- return 'Translation related information about the user. Experimental.';
- }
-
- /**
- * @deprecated since MediaWiki core 1.25
- */
- public function getExamples() {
- return array(
- 'api.php?action=translateuser',
- );
- }
-
- /**
- * @see ApiBase::getExamplesMessages()
- */
- protected function getExamplesMessages() {
- return array(
- 'action=translateuser'
- => 'apihelp-translateuser-example-1',
- );
- }
-
- /**
- * Keeps track of recently used message groups per user.
- */
- public static function trackGroup( MessageGroup $group, User $user ) {
- if ( $user->isAnon() ) {
- return true;
- }
-
- $groups = $user->getOption( 'translate-recent-groups', '' );
-
- if ( $groups === '' ) {
- $groups = array();
- } else {
- $groups = explode( '|', $groups );
- }
-
- if ( isset( $groups[0] ) && $groups[0] === $group->getId() ) {
- return true;
- }
-
- array_unshift( $groups, $group->getId() );
- $groups = array_unique( $groups );
- $groups = array_slice( $groups, 0, 5 );
-
- $user->setOption( 'translate-recent-groups', implode( '|', $groups ) );
- $user->saveSettings();
-
- return true;
- }
-}
diff --git a/MLEB/Translate/api/ApiTranslationReview.php b/MLEB/Translate/api/ApiTranslationReview.php
index 53e4af1b..d8fb8045 100644
--- a/MLEB/Translate/api/ApiTranslationReview.php
+++ b/MLEB/Translate/api/ApiTranslationReview.php
@@ -3,8 +3,7 @@
* API module for marking translations as reviewed
* @file
* @author Niklas Laxström
- * @copyright Copyright © 2011-2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -14,18 +13,15 @@
*/
class ApiTranslationReview extends ApiBase {
protected static $right = 'translate-messagereview';
- protected static $salt = 'translate-messagereview';
public function execute() {
- if ( !$this->getUser()->isAllowed( self::$right ) ) {
- $this->dieUsage( 'Permission denied', 'permissiondenied' );
- }
+ $this->checkUserRightsAny( self::$right );
$params = $this->extractRequestParams();
$revision = Revision::newFromId( $params['revision'] );
if ( !$revision ) {
- $this->dieUsage( 'Invalid revision', 'invalidrevision' );
+ $this->dieWithError( [ 'apierror-nosuchrevid', $params['revision'] ], 'invalidrevision' );
}
$error = self::getReviewBlockers( $this->getUser(), $revision );
@@ -34,34 +30,34 @@ class ApiTranslationReview extends ApiBase {
// Everything is okay
break;
case 'permissiondenied':
- $this->dieUsage( 'Permission denied', $error );
+ $this->dieWithError( 'apierror-permissiondenied-generic', 'permissiondenied' );
break; // Unreachable, but throws off code analyzer.
case 'blocked':
- $this->dieUsage( 'You have been blocked', $error );
+ $this->dieBlocked( $this->getUser()->getBlock() );
break; // Unreachable, but throws off code analyzer.
case 'unknownmessage':
- $this->dieUsage( 'Unknown message', $error );
+ $this->dieWithError( 'apierror-translate-unknownmessage', $error );
break; // Unreachable, but throws off code analyzer.
case 'owntranslation':
- $this->dieUsage( 'Cannot review own translations', $error );
+ $this->dieWithError( 'apierror-translate-owntranslation', $error );
break; // Unreachable, but throws off code analyzer.
case 'fuzzymessage':
- $this->dieUsage( 'Cannot review fuzzy translations', $error );
+ $this->dieWithError( 'apierror-translate-fuzzymessage', $error );
break; // Unreachable, but throws off code analyzer.
default:
- $this->dieUsage( 'Unknown error', $error );
+ $this->dieWithError( [ 'apierror-unknownerror', $error ], $error );
}
$ok = self::doReview( $this->getUser(), $revision );
if ( !$ok ) {
- $this->setWarning( 'Already marked as reviewed by you' );
+ $this->addWarning( 'apiwarn-translate-alreadyreviewedbyyou' );
}
- $output = array( 'review' => array(
+ $output = [ 'review' => [
'title' => $revision->getTitle()->getPrefixedText(),
'pageid' => $revision->getPage(),
'revision' => $revision->getId()
- ) );
+ ] ];
$this->getResult()->addValue( null, $this->getModuleName(), $output );
}
@@ -71,17 +67,17 @@ class ApiTranslationReview extends ApiBase {
* @param User $user
* @param Revision $revision
* @param null|string $comment
- * @return Bool, whether the action was recorded.
+ * @return bool whether the action was recorded.
*/
public static function doReview( User $user, Revision $revision, $comment = null ) {
$dbw = wfGetDB( DB_MASTER );
$table = 'translate_reviews';
- $row = array(
+ $row = [
'trr_user' => $user->getId(),
'trr_page' => $revision->getPage(),
'trr_revision' => $revision->getId(),
- );
- $options = array( 'IGNORE' );
+ ];
+ $options = [ 'IGNORE' ];
$dbw->insert( $table, $row, __METHOD__, $options );
if ( !$dbw->affectedRows() ) {
@@ -94,15 +90,15 @@ class ApiTranslationReview extends ApiBase {
$entry->setPerformer( $user );
$entry->setTarget( $title );
$entry->setComment( $comment );
- $entry->setParameters( array(
+ $entry->setParameters( [
'4::revision' => $revision->getId(),
- ) );
+ ] );
$logid = $entry->insert();
$entry->publish( $logid );
$handle = new MessageHandle( $title );
- wfRunHooks( 'TranslateEventTranslationReview', array( $handle ) );
+ Hooks::run( 'TranslateEventTranslationReview', [ $handle ] );
return true;
}
@@ -129,7 +125,7 @@ class ApiTranslationReview extends ApiBase {
return 'unknownmessage';
}
- if ( $revision->getUser() == $user->getId() ) {
+ if ( $revision->getUser() === $user->getId() ) {
return 'owntranslation';
}
@@ -148,88 +144,23 @@ class ApiTranslationReview extends ApiBase {
return 'csrf';
}
- // This function exists for backwards compatibility with MediaWiki before
- // 1.24
- public function getTokenSalt() {
- return self::$salt;
- }
-
- // This function maintains backwards compatibility with self::getToken()
- // below. If salt is removed from self::getToken() and nothing else (e.g.
- // JS) generates the token directly, this could probably be removed.
- protected function getWebUITokenSalt( array $params ) {
- return self::$salt;
- }
-
public function getAllowedParams() {
- return array(
- 'revision' => array(
+ return [
+ 'revision' => [
ApiBase::PARAM_TYPE => 'integer',
ApiBase::PARAM_REQUIRED => true,
- ),
- 'token' => array(
+ ],
+ 'token' => [
ApiBase::PARAM_TYPE => 'string',
ApiBase::PARAM_REQUIRED => true,
- ),
- );
- }
-
- /**
- * @deprecated since MediaWiki core 1.25
- */
- public function getParamDescription() {
- $action = TranslateUtils::getTokenAction( 'translationreview' );
-
- return array(
- 'revision' => 'The revision number to review',
- 'token' => "A token previously acquired with $action",
- );
- }
-
- /**
- * @deprecated since MediaWiki core 1.25
- */
- public function getDescription() {
- return 'Mark translations reviewed';
+ ],
+ ];
}
- /**
- * @deprecated since MediaWiki core 1.25
- */
- public function getExamples() {
- return array(
- 'api.php?action=translationreview&revision=1&token=foo',
- );
- }
-
- /**
- * @see ApiBase::getExamplesMessages()
- */
protected function getExamplesMessages() {
- return array(
+ return [
'action=translationreview&revision=1&token=foo'
=> 'apihelp-translationreview-example-1',
- );
- }
-
- // These two functions implement pre-1.24 token fetching via the
- // ApiTokensGetTokenTypes hook, kept for backwards compatibility.
- public static function getToken() {
- $user = RequestContext::getMain()->getUser();
- if ( !$user->isAllowed( self::$right ) ) {
- return false;
- }
-
- return $user->getEditToken( self::$salt );
- }
-
- public static function injectTokenFunction( &$list ) {
- $list['translationreview'] = array( __CLASS__, 'getToken' );
-
- return true; // Hooks must return bool
- }
-
- public static function getRight() {
- return self::$right;
+ ];
}
}
diff --git a/MLEB/Translate/api/ApiTranslationStash.php b/MLEB/Translate/api/ApiTranslationStash.php
index 72c0e299..dad11719 100644
--- a/MLEB/Translate/api/ApiTranslationStash.php
+++ b/MLEB/Translate/api/ApiTranslationStash.php
@@ -4,7 +4,7 @@
*
* @file
* @author Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -19,14 +19,14 @@ class ApiTranslationStash extends ApiBase {
// The user we are operating on, not necessarly the user making the request
$user = $this->getUser();
- if ( isset( $params['username'] ) ){
+ if ( isset( $params['username'] ) ) {
if ( $this->getUser()->isAllowed( 'translate-sandboxmanage' ) ) {
$user = User::newFromName( $params['username'] );
if ( !$user ) {
- $this->dieUsageMsg( array( 'invalidparam', 'username' ) );
+ $this->dieWithError( [ 'apierror-badparameter', 'username' ], 'invalidparam' );
}
} else {
- $this->dieUsageMsg( array( 'invalidparam', 'username' ) );
+ $this->dieWithError( [ 'apierror-badparameter', 'username' ], 'invalidparam' );
}
}
@@ -35,10 +35,10 @@ class ApiTranslationStash extends ApiBase {
if ( $action === 'add' ) {
if ( !isset( $params['title'] ) ) {
- $this->dieUsageMsg( array( 'missingparam', 'title' ) );
+ $this->dieWithError( [ 'apierror-missingparam', 'title' ] );
}
if ( !isset( $params['translation'] ) ) {
- $this->dieUsageMsg( array( 'missingparam', 'translation' ) );
+ $this->dieWithError( [ 'apierror-missingparam', 'translation' ] );
}
// @todo: Return value of Title::newFromText not checked
@@ -52,7 +52,7 @@ class ApiTranslationStash extends ApiBase {
}
if ( $action === 'query' ) {
- $output['translations'] = array();
+ $output['translations'] = [];
$translations = $stash->getTranslations( $user );
foreach ( $translations as $translation ) {
@@ -82,106 +82,54 @@ class ApiTranslationStash extends ApiBase {
$comparison = $group->getMessage( $key, $handle->getCode() );
}
- return array(
+ return [
'title' => $title->getPrefixedText(),
'definition' => $definition,
'translation' => $translation->getValue(),
'comparison' => $comparison,
'metadata' => $translation->getMetadata(),
- );
+ ];
}
-
public function isWriteMode() {
return true;
}
- public function getTokenSalt() {
- return 'translationstash';
- }
-
- public static function getToken() {
- $user = RequestContext::getMain()->getUser();
-
- return $user->getEditToken( 'translationstash' );
- }
-
- public static function injectTokenFunction( &$list ) {
- $list['translationstash'] = array( __CLASS__, 'getToken' );
-
- return true;
+ public function needsToken() {
+ return 'csrf';
}
public function getAllowedParams() {
- return array(
- 'subaction' => array(
- ApiBase::PARAM_TYPE => array( 'add', 'query' ),
+ return [
+ 'subaction' => [
+ ApiBase::PARAM_TYPE => [ 'add', 'query' ],
ApiBase::PARAM_REQUIRED => true,
- ),
- 'title' => array(
+ ],
+ 'title' => [
ApiBase::PARAM_TYPE => 'string',
- ),
- 'translation' => array(
+ ],
+ 'translation' => [
ApiBase::PARAM_TYPE => 'string',
- ),
- 'metadata' => array(
+ ],
+ 'metadata' => [
ApiBase::PARAM_TYPE => 'string',
- ApiBase::PARAM_DFLT => null,
- ),
- 'token' => array(
+ ],
+ 'token' => [
ApiBase::PARAM_TYPE => 'string',
ApiBase::PARAM_REQUIRED => true,
- ),
- 'username' => array(
+ ],
+ 'username' => [
ApiBase::PARAM_TYPE => 'string',
- ),
- );
- }
-
- /**
- * @deprecated since MediaWiki core 1.25
- */
- public function getParamDescription() {
- $action = TranslateUtils::getTokenAction( 'translationstash' );
-
- return array(
- 'subaction' => 'Action',
- 'title' => 'Title of the translation unit page',
- 'translation' => 'Translation made by the user',
- 'metadata' => 'Json object',
- 'token' => "A token previously acquired with $action",
- 'username' => 'Optionally the user whose stash to get. '
- . 'Only privileged users can do this',
- );
- }
-
- /**
- * @deprecated since MediaWiki core 1.25
- */
- public function getDescription() {
- return 'Add translations to stash';
- }
-
- /**
- * @deprecated since MediaWiki core 1.25
- */
- public function getExamples() {
- return array(
- "api.php?action=translationstash&subaction=add&title=MediaWiki:Jan/fi&" .
- "translation=tammikuu&metadata={}",
- "api.php?action=translationstash&subaction=query",
- );
+ ],
+ ];
}
- /**
- * @see ApiBase::getExamplesMessages()
- */
protected function getExamplesMessages() {
- return array(
+ return [
'action=translationstash&subaction=add&title=MediaWiki:Jan/fi&translation=tammikuu&metadata={}'
=> 'apihelp-translationstash-example-1',
'action=translationstash&subaction=query'
=> 'apihelp-translationstash-example-2',
- );
+ ];
}
}
diff --git a/MLEB/Translate/composer.json b/MLEB/Translate/composer.json
index 07863595..82f49cc7 100644
--- a/MLEB/Translate/composer.json
+++ b/MLEB/Translate/composer.json
@@ -14,7 +14,7 @@
"translatewiki.net"
],
"homepage": "https://www.mediawiki.org/wiki/Extension:Translate",
- "license": "GPL-2.0+",
+ "license": "GPL-2.0-or-later",
"authors": [
{
"name": "Niklas Laxström",
@@ -23,7 +23,7 @@
},
{
"name": "Siebrand Mazeland",
- "email": "s.mazeland@xs4all.nl",
+ "email": "siebrand@kitano.nl",
"role": "Developer"
}
],
@@ -34,17 +34,35 @@
"wiki": "https://www.mediawiki.org/wiki/Extension:Translate"
},
"require": {
- "php": ">=5.3.0",
+ "php": ">=5.4",
"composer/installers": ">=1.0.1",
- "mediawiki/universal-language-selector": "*"
+ "mediawiki/universal-language-selector": "*",
+ "mustangostang/spyc": "0.6.2",
+ "davefx/phplot": "6.2.1"
+ },
+ "require-dev": {
+ "jakub-onderka/php-parallel-lint": "1.0.0",
+ "mediawiki/mediawiki-codesniffer": "19.1.0",
+ "jakub-onderka/php-console-highlighter": "0.3.2",
+ "mediawiki/minus-x": "0.3.1"
},
"suggest": {
"mediawiki/babel": "Users can easily indicate their language proficiency on their user page",
"mediawiki/translation-notifications": "Manage communication with translators",
- "mustangostang/spyc": "More recent version of the bundled spyc library",
"romaricdrigon/metayaml": "If you want to validate message group configurations"
},
- "autoload": {
- "files": ["Translate.php"]
+ "scripts": {
+ "fix": [
+ "phpcbf",
+ "minus-x fix ."
+ ],
+ "test": [
+ "parallel-lint . --exclude vendor --exclude node_modules --exclude extensions",
+ "phpcs -p -s",
+ "minus-x check ."
+ ]
+ },
+ "extra": {
+ "phan-taint-check-plugin": "1.5.0"
}
}
diff --git a/MLEB/Translate/data/group-yaml-schema.yaml b/MLEB/Translate/data/group-yaml-schema.yaml
index ed13ff95..445a7ab9 100644
--- a/MLEB/Translate/data/group-yaml-schema.yaml
+++ b/MLEB/Translate/data/group-yaml-schema.yaml
@@ -27,6 +27,12 @@ root:
sourcelanguage:
_type: text
_description: defaults to "en"
+ projectPage:
+ _type: text
+ _description: Title of the page that explains the group
+ translatorCategory:
+ _type: text
+ _description: Name of the category for translators of this group
MANGLER:
_type: array
_children:
@@ -46,9 +52,12 @@ root:
INSERTABLES:
_type: array
_children:
- class:
+ class: # for supplying one class
_type: text
- _not_empty: true
+ classes: # for supplying multiple
+ _type: prototype
+ _prototype:
+ _type: text
TAGS:
_type: prototype
_prototype:
diff --git a/MLEB/Translate/ffs/AmdFFS.php b/MLEB/Translate/ffs/AmdFFS.php
index d6caa9fc..bd759e8f 100644
--- a/MLEB/Translate/ffs/AmdFFS.php
+++ b/MLEB/Translate/ffs/AmdFFS.php
@@ -17,7 +17,7 @@
* "key2": "anothervalue"
* });
*
- * It also supports the the top-level bundle with a root construction and language indicators.
+ * It also supports the top-level bundle with a root construction and language indicators.
* The following example will give the same messages as above:
* define({
* "root": {
@@ -34,7 +34,7 @@
* @file
* @author Matthias Palmér
* @copyright Copyright © 2011-2015, MetaSolutions AB
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -51,23 +51,23 @@ class AmdFFS extends SimpleFFS {
* @return bool
*/
public static function isValid( $data ) {
- $data = AmdFFS::extractMessagePart( $data );
- return is_array( FormatJSON::decode( $data, /*as array*/true ) );
+ $data = self::extractMessagePart( $data );
+ return is_array( FormatJson::decode( $data, /*as array*/true ) );
}
public function getFileExtensions() {
- return array( '.js' );
+ return [ '.js' ];
}
/**
- * @param array $data
+ * @param string $data
* @return array Parsed data.
*/
public function readFromVariable( $data ) {
- $authors = AmdFFS::extractAuthors( $data );
- $data = AmdFFS::extractMessagePart( $data );
- $messages = (array) FormatJSON::decode( $data, /*as array*/true );
- $metadata = array();
+ $authors = self::extractAuthors( $data );
+ $data = self::extractMessagePart( $data );
+ $messages = (array)FormatJson::decode( $data, /*as array*/true );
+ $metadata = [];
// Take care of regular language bundles, as well as the root bundle.
if ( isset( $messages['root'] ) ) {
@@ -76,11 +76,11 @@ class AmdFFS extends SimpleFFS {
$messages = $this->group->getMangler()->mangle( $messages );
}
- return array(
+ return [
'MESSAGES' => $messages,
'AUTHORS' => $authors,
'METADATA' => $metadata,
- );
+ ];
}
/**
@@ -88,12 +88,10 @@ class AmdFFS extends SimpleFFS {
* @return string
*/
protected function writeReal( MessageCollection $collection ) {
- $messages = array();
- $template = $this->read( $collection->getLanguage() );
-
+ $messages = [];
$mangler = $this->group->getMangler();
- /// @var $m ThinMessage
+ /** @var ThinMessage $m */
foreach ( $collection as $key => $m ) {
$value = $m->translation();
if ( $value === null ) {
@@ -113,7 +111,7 @@ class AmdFFS extends SimpleFFS {
return '';
}
$header = $this->header( $collection->code, $collection->getAuthors() );
- return $header . FormatJSON::encode( $messages, "\t", FormatJson::UTF8_OK ) . ");\n";
+ return $header . FormatJson::encode( $messages, "\t", FormatJson::UTF8_OK ) . ");\n";
}
/**
@@ -161,15 +159,15 @@ EOT;
}
/**
- * @param array $authors
+ * @param string[] $authors
* @return string
*/
private function authorsList( array $authors ) {
- if ( count( $authors ) === 0 ) {
+ if ( $authors === [] ) {
return '';
}
- $prefix = " * - ";
+ $prefix = ' * - ';
$authorList = implode( "\n$prefix", $authors );
return " * Translators:\n$prefix$authorList";
}
diff --git a/MLEB/Translate/ffs/AndroidXmlFFS.php b/MLEB/Translate/ffs/AndroidXmlFFS.php
index 636cb3b4..2e947c61 100644
--- a/MLEB/Translate/ffs/AndroidXmlFFS.php
+++ b/MLEB/Translate/ffs/AndroidXmlFFS.php
@@ -4,7 +4,7 @@
*
* @file
* @author Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -13,21 +13,17 @@
* @ingroup FFS
*/
class AndroidXmlFFS extends SimpleFFS {
- protected static $pluralWords = array(
- 'zero' => 1,
- 'one' => 1,
- 'two' => 1,
- 'few' => 1,
- 'many' => 1,
- 'other' => 1,
- );
+ public function __construct( FileBasedMessageGroup $group ) {
+ parent::__construct( $group );
+ $this->flattener = $this->getFlattener();
+ }
public function supportsFuzzy() {
return 'yes';
}
public function getFileExtensions() {
- return array( '.xml' );
+ return [ '.xml' ];
}
/**
@@ -37,7 +33,7 @@ class AndroidXmlFFS extends SimpleFFS {
public function readFromVariable( $data ) {
$reader = new SimpleXMLElement( $data );
- $messages = array();
+ $messages = [];
$mangler = $this->group->getMangler();
/** @var SimpleXMLElement $element */
@@ -47,11 +43,11 @@ class AndroidXmlFFS extends SimpleFFS {
if ( $element->getName() === 'string' ) {
$value = $this->readElementContents( $element );
} elseif ( $element->getName() === 'plurals' ) {
- $forms = array();
+ $forms = [];
foreach ( $element as $item ) {
$forms[(string)$item['quantity']] = $this->readElementContents( $item );
}
- $value = $this->flattenPlural( $forms );
+ $value = $this->flattener->flattenCLDRPlurals( $forms );
} else {
wfDebug( __METHOD__ . ': Unknown XML element name.' );
continue;
@@ -64,10 +60,26 @@ class AndroidXmlFFS extends SimpleFFS {
$messages[$key] = $value;
}
- return array(
- 'AUTHORS' => array(), // @todo
+ return [
+ 'AUTHORS' => $this->scrapeAuthors( $data ),
'MESSAGES' => $mangler->mangle( $messages ),
- );
+ ];
+ }
+
+ protected function scrapeAuthors( $string ) {
+ $match = [];
+ preg_match( '~<!-- Authors:\n((?:\* .*\n)*)-->~', $string, $match );
+ if ( !$match ) {
+ return [];
+ }
+
+ $authors = $matches = [];
+ preg_match_all( '~\* (.*)~', $match[ 1 ], $matches );
+ foreach ( $matches[1] as $author ) {
+ // PHP7: \u{2011}
+ $authors[] = str_replace( "\xE2\x80\x91\xE2\x80\x91", '--', $author );
+ }
+ return $authors;
}
protected function readElementContents( $element ) {
@@ -82,14 +94,41 @@ class AndroidXmlFFS extends SimpleFFS {
// Add backslash to escape it too.
$escaped = '\\' . $escaped;
}
+ // All html entities seen would be inserted by translators themselves.
+ // Treat them as plain text.
+ $escaped = str_replace( '&', '&amp;', $escaped );
+
+ // Newlines must be escaped
+ $escaped = str_replace( "\n", '\n', $escaped );
return $escaped;
}
+ protected function doAuthors( MessageCollection $collection ) {
+ $authors = $collection->getAuthors();
+ $authors = $this->filterAuthors( $authors, $collection->code );
+
+ if ( !$authors ) {
+ return '';
+ }
+
+ $output = "\n<!-- Authors:\n";
+
+ foreach ( $authors as $author ) {
+ // Since -- is not allowed in XML comments, we rewrite them to
+ // U+2011 (non-breaking hyphen). PHP7: \u{2011}
+ $author = str_replace( '--', "\xE2\x80\x91\xE2\x80\x91", $author );
+ $output .= "* $author\n";
+ }
+
+ $output .= "-->\n";
+
+ return $output;
+ }
+
protected function writeReal( MessageCollection $collection ) {
- $template = <<<XML
-<?xml version="1.0" encoding="utf-8"?>
-<resources></resources>
-XML;
+ $template = '<?xml version="1.0" encoding="utf-8"?>';
+ $template .= $this->doAuthors( $collection );
+ $template .= '<resources></resources>';
$writer = new SimpleXMLElement( $template );
$mangler = $this->group->getMangler();
@@ -108,13 +147,13 @@ XML;
$value = $m->translation();
$value = str_replace( TRANSLATE_FUZZY, '', $value );
- // Handle plurals
- if ( strpos( $value, '{{PLURAL' ) === false ) {
+ $plurals = $this->flattener->unflattenCLDRPlurals( '', $value );
+
+ if ( $plurals === false ) {
$element = $writer->addChild( 'string', $this->formatElementContents( $value ) );
} else {
$element = $writer->addChild( 'plurals' );
- $forms = $this->unflattenPlural( $value );
- foreach ( $forms as $quantity => $content ) {
+ foreach ( $plurals as $quantity => $content ) {
$item = $element->addChild( 'item', $this->formatElementContents( $content ) );
$item->addAttribute( 'quantity', $quantity );
}
@@ -135,80 +174,12 @@ XML;
return $dom->saveXML();
}
- /**
- * Flattens array of plurals into string.
- *
- * @param array $forms array
- * @return string
- */
- protected function flattenPlural( array $forms ) {
- $pls = '{{PLURAL';
- foreach ( $forms as $key => $value ) {
- $pls .= "|$key=$value";
- }
-
- $pls .= "}}";
- return $pls;
+ protected function getFlattener() {
+ $flattener = new ArrayFlattener( '', true );
+ return $flattener;
}
- /**
- * Converts the flattened plural into messages
- *
- * @param string $message
- * @return array
- */
- protected function unflattenPlural( $message ) {
- $regex = '~\{\{PLURAL\|(.*?)}}~s';
- $matches = array();
- $match = array();
-
- while ( preg_match( $regex, $message, $match ) ) {
- $uniqkey = TranslateUtils::getPlaceholder();
- $matches[$uniqkey] = $match;
- $message = preg_replace( $regex, $uniqkey, $message, 1 );
- }
-
- // No plurals, should not happen.
- if ( !count( $matches ) ) {
- return array();
- }
-
- // The final array of alternative plurals forms.
- $alts = array();
-
- /*
- * Then loop trough each plural block and replacing the placeholders
- * to construct the alternatives. Produces invalid output if there is
- * multiple plural bocks which don't have the same set of keys.
- */
- $pluralChoice = implode( '|', array_keys( self::$pluralWords ) );
- $regex = "~($pluralChoice)\s*=\s*(.+)~s";
- foreach ( $matches as $ph => $plu ) {
- $forms = explode( '|', $plu[1] );
-
- foreach ( $forms as $form ) {
- if ( $form === '' ) {
- continue;
- }
-
- $match = array();
- if ( !preg_match( $regex, $form, $match ) ) {
- // No quantity key was provided
- continue;
- }
-
- $formWord = $match[1];
- $value = $match[2];
- if ( !isset( $alts[$formWord] ) ) {
- $alts[$formWord] = $message;
- }
-
- $string = $alts[$formWord];
-
- $alts[$formWord] = str_replace( $ph, $value, $string );
- }
- }
-
- return $alts;
+ public function isContentEqual( $a, $b ) {
+ return $this->flattener->compareContent( $a, $b );
}
}
diff --git a/MLEB/Translate/ffs/AppleFFS.php b/MLEB/Translate/ffs/AppleFFS.php
index 3926151b..0465d7b7 100644
--- a/MLEB/Translate/ffs/AppleFFS.php
+++ b/MLEB/Translate/ffs/AppleFFS.php
@@ -17,19 +17,19 @@ class AppleFFS extends SimpleFFS {
}
public function getFileExtensions() {
- return array( '.strings' );
+ return [ '.strings' ];
}
// READ
/**
- * @param array $data
+ * @param string $data
* @return array Parsed data.
* @throws MWException
*/
public function readFromVariable( $data ) {
$lines = explode( "\n", $data );
- $authors = $messages = array();
+ $authors = $messages = [];
$linecontinuation = false;
$value = '';
@@ -45,7 +45,7 @@ class AppleFFS extends SimpleFFS {
if ( substr( $line, 0, 2 ) === '//' ) {
// Single-line comment
- $match = array();
+ $match = [];
$ok = preg_match( '~//\s*Author:\s*(.*)~', $line, $match );
if ( $ok ) {
$authors[] = $match[1];
@@ -67,27 +67,27 @@ class AppleFFS extends SimpleFFS {
$messages = $this->group->getMangler()->mangle( $messages );
- return array(
+ return [
'AUTHORS' => $authors,
'MESSAGES' => $messages,
- );
+ ];
}
/**
* Parses non-empty strings file row to key and value.
* @param string $line
* @throws MWException
- * @return array( string $key, string $val )
+ * @return array array( string $key, string $val )
*/
public static function readRow( $line ) {
- $match = array();
+ $match = [];
if ( preg_match( '/^"((?:\\\"|[^"])*)"\s*=\s*"((?:\\\"|[^"])*)"\s*;\s*$/', $line, $match ) ) {
$key = self::unescapeString( $match[1] );
$value = self::unescapeString( $match[2] );
if ( $key === '' ) {
throw new MWException( "Empty key in line $line" );
}
- return array( $key, $value );
+ return [ $key, $value ];
} else {
throw new MWException( "Unrecognized line format: $line" );
}
@@ -147,7 +147,10 @@ class AppleFFS extends SimpleFFS {
}
/**
- * Quote and escape Obj-C-style strings for .strings format
+ * Quote and escape Obj-C-style strings for .strings format.
+ *
+ * @param string $str
+ * @return string
*/
protected static function quoteString( $str ) {
return '"' . self::escapeString( $str ) . '"';
diff --git a/MLEB/Translate/ffs/DtdFFS.php b/MLEB/Translate/ffs/DtdFFS.php
index cab36efd..aed82fca 100644
--- a/MLEB/Translate/ffs/DtdFFS.php
+++ b/MLEB/Translate/ffs/DtdFFS.php
@@ -7,7 +7,7 @@
* @author Niklas Laxström
* @author Siebrand Mazeland
* @copyright Copyright © 2009-2010, Guillaume Duhamel, Niklas Laxström, Siebrand Mazeland
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -17,16 +17,16 @@
*/
class DtdFFS extends SimpleFFS {
public function getFileExtensions() {
- return array( '.dtd' );
+ return [ '.dtd' ];
}
/**
- * @param $data string
+ * @param string $data
* @return array Parsed data.
*/
public function readFromVariable( $data ) {
preg_match_all( ',# Author: ([^\n]+)\n,', $data, $matches );
- $authors = array();
+ $authors = [];
$count = count( $matches[1] );
for ( $i = 0; $i < $count; $i++ ) {
@@ -38,22 +38,22 @@ class DtdFFS extends SimpleFFS {
$keys = $matches[1];
$values = $matches[2];
- $messages = array();
+ $messages = [];
$count = count( $matches[1] );
for ( $i = 0; $i < $count; $i++ ) {
$messages[$keys[$i]] = str_replace(
- array( '&quot;', '&#34;', '&#39;' ),
- array( '"', '"', "'" ),
+ [ '&quot;', '&#34;', '&#39;' ],
+ [ '"', '"', "'" ],
$values[$i] );
}
$messages = $this->group->getMangler()->mangle( $messages );
- return array(
+ return [
'AUTHORS' => $authors,
'MESSAGES' => $messages,
- );
+ ];
}
protected function writeReal( MessageCollection $collection ) {
diff --git a/MLEB/Translate/ffs/FFS.php b/MLEB/Translate/ffs/FFS.php
index 3c425e9e..2c89f736 100644
--- a/MLEB/Translate/ffs/FFS.php
+++ b/MLEB/Translate/ffs/FFS.php
@@ -9,7 +9,7 @@
* @defgroup FFS File format support
* @author Niklas Laxström
* @copyright Copyright © 2008-2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -52,7 +52,7 @@ interface FFS {
* Writes to the location provided with setWritePath and group specific
* directory structure. Exports translations included in the given
* collection with any special handling needed.
- * @param $collection MessageCollection
+ * @param MessageCollection $collection
*/
public function write( MessageCollection $collection );
@@ -76,10 +76,34 @@ interface FFS {
public function supportsFuzzy();
/**
+ * Checks whether two strings are equal. Sometimes same content might
+ * have multiple representations. The main case are inline plurals,
+ * which in some formats require expansion at export time.
+ *
+ * @param string $a
+ * @param string $b
+ * @return bool
+ * @since 2016.11
+ */
+ public function isContentEqual( $a, $b );
+
+ /**
* Return the commonly used file extensions for these formats.
* Include the dot.
* @return string[]
* @since 2013-04
*/
public function getFileExtensions();
+
+ /**
+ * Allows to skip writing the export output into a file. This is useful
+ * to skip updates that would only update irrelevant parts, such as the
+ * timestamp of the export.
+ *
+ * @param string $a The existing content.
+ * @param string $b The new export content.
+ * @return bool
+ * @since 2017.04
+ */
+ public function shouldOverwrite( $a, $b );
}
diff --git a/MLEB/Translate/ffs/FlatPhpFFS.php b/MLEB/Translate/ffs/FlatPhpFFS.php
index 4dbab6b8..ff8e6e4a 100644
--- a/MLEB/Translate/ffs/FlatPhpFFS.php
+++ b/MLEB/Translate/ffs/FlatPhpFFS.php
@@ -6,7 +6,7 @@
* @author Niklas Laxström
* @author Siebrand Mazeland
* @copyright Copyright © 2008-2010, Niklas Laxström, Siebrand Mazeland
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -15,12 +15,10 @@
*/
class FlatPhpFFS extends SimpleFFS implements MetaYamlSchemaExtender {
public function getFileExtensions() {
- return array( '.php' );
+ return [ '.php' ];
}
- //
// READ
- //
/**
* @param string $data
@@ -28,39 +26,38 @@ class FlatPhpFFS extends SimpleFFS implements MetaYamlSchemaExtender {
*/
public function readFromVariable( $data ) {
# Authors first
- $matches = array();
+ $matches = [];
preg_match_all( '/^ \* @author\s+(.+)$/m', $data, $matches );
$authors = $matches[1];
# Then messages
- $matches = array();
+ $matches = [];
$regex = '/^\$(.*?)\s*=\s*[\'"](.*?)[\'"];.*?$/mus';
preg_match_all( $regex, $data, $matches, PREG_SET_ORDER );
- $messages = array();
+ $messages = [];
foreach ( $matches as $_ ) {
$legal = Title::legalChars();
$key = preg_replace_callback( "/([^$legal]|\\\\)/u",
- function( $m ) {
+ function ( $m ) {
return '\x' . dechex( ord( $m[0] ) );
},
$_[1]
);
- $value = str_replace( array( "\'", "\\\\" ), array( "'", "\\" ), $_[2] );
+ $value = str_replace( [ "\'", "\\\\" ], [ "'", "\\" ], $_[2] );
$messages[$key] = $value;
}
$messages = $this->group->getMangler()->mangle( $messages );
- return array(
+ return [
'AUTHORS' => $authors,
'MESSAGES' => $messages,
- );
+ ];
}
- //
// WRITE
- //
+
protected function writeReal( MessageCollection $collection ) {
if ( isset( $this->extra['header'] ) ) {
$output = $this->extra['header'];
@@ -102,7 +99,7 @@ class FlatPhpFFS extends SimpleFFS implements MetaYamlSchemaExtender {
if ( $wgTranslateDocumentationLanguageCode ) {
$docu = "\n * See the $wgTranslateDocumentationLanguageCode 'language' for " .
- "message documentation incl. usage of parameters";
+ 'message documentation incl. usage of parameters';
} else {
$docu = '';
}
@@ -138,21 +135,21 @@ PHP;
}
public static function getExtraSchema() {
- $schema = array(
- 'root' => array(
+ $schema = [
+ 'root' => [
'_type' => 'array',
- '_children' => array(
- 'FILES' => array(
+ '_children' => [
+ 'FILES' => [
'_type' => 'array',
- '_children' => array(
- 'header' => array(
+ '_children' => [
+ 'header' => [
'_type' => 'text',
- ),
- )
- )
- )
- )
- );
+ ],
+ ]
+ ]
+ ]
+ ]
+ ];
return $schema;
}
diff --git a/MLEB/Translate/ffs/GettextFFS.php b/MLEB/Translate/ffs/GettextFFS.php
index f1e8e4d0..7176e953 100644
--- a/MLEB/Translate/ffs/GettextFFS.php
+++ b/MLEB/Translate/ffs/GettextFFS.php
@@ -5,14 +5,14 @@
* @author Niklas Laxström
* @author Siebrand Mazeland
* @copyright Copyright © 2008-2010, Niklas Laxström, Siebrand Mazeland
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
* @file
*/
/**
* Identifies Gettext plural exceptions.
*/
-class GettextPluralException extends MwException {
+class GettextPluralException extends MWException {
}
/**
@@ -25,13 +25,13 @@ class GettextFFS extends SimpleFFS implements MetaYamlSchemaExtender {
}
public function getFileExtensions() {
- return array( '.pot', '.po' );
+ return [ '.pot', '.po' ];
}
protected $offlineMode = false;
/**
- * @param $value bool
+ * @param bool $value
*/
public function setOfflineMode( $value ) {
$this->offlineMode = $value;
@@ -43,7 +43,7 @@ class GettextFFS extends SimpleFFS implements MetaYamlSchemaExtender {
*/
public function readFromVariable( $data ) {
# Authors first
- $matches = array();
+ $matches = [];
preg_match_all( '/^#\s*Author:\s*(.*)$/m', $data, $matches );
$authors = $matches[1];
@@ -63,7 +63,7 @@ class GettextFFS extends SimpleFFS implements MetaYamlSchemaExtender {
public function parseGettext( $data ) {
$mangler = $this->group->getMangler();
$useCtxtAsKey = isset( $this->extra['CtxtAsKey'] ) && $this->extra['CtxtAsKey'];
- $keyAlgorithm = 'legacy';
+ $keyAlgorithm = 'simple';
if ( isset( $this->extra['keyAlgorithm'] ) ) {
$keyAlgorithm = $this->extra['keyAlgorithm'];
}
@@ -111,11 +111,11 @@ class GettextFFS extends SimpleFFS implements MetaYamlSchemaExtender {
throw new MWException( "Gettext file header was not found:\n\n$data" );
}
- $template = array();
- $messages = array();
+ $template = [];
+ $messages = [];
// Extract some metadata from headers for easier use
- $metadata = array();
+ $metadata = [];
if ( isset( $headers['X-Language-Code'] ) ) {
$metadata['code'] = $headers['X-Language-Code'];
}
@@ -127,15 +127,14 @@ class GettextFFS extends SimpleFFS implements MetaYamlSchemaExtender {
/* At this stage we are only interested how many plurals forms we should
* be expecting when parsing the rest of this file. */
$pluralCount = false;
- if ( isset( $headers['Plural-Forms'] ) ) {
- if ( preg_match( '/nplurals=([0-9]+).*;/', $headers['Plural-Forms'], $matches ) ) {
- $pluralCount = $metadata['plural'] = $matches[1];
- }
+ if ( isset( $headers['Plural-Forms'] ) &&
+ preg_match( '/nplurals=([0-9]+).*;/', $headers['Plural-Forms'], $matches )
+ ) {
+ $pluralCount = $metadata['plural'] = $matches[1];
}
// Then parse the messages
foreach ( $sections as $section ) {
-
$item = self::parseGettextSection( $section, $pluralCount, $metadata );
if ( $item === false ) {
continue;
@@ -156,16 +155,15 @@ class GettextFFS extends SimpleFFS implements MetaYamlSchemaExtender {
$template[$key] = $item;
}
- return array(
+ return [
'MESSAGES' => $messages,
'TEMPLATE' => $template,
'METADATA' => $metadata,
'HEADERS' => $headers
- );
+ ];
}
public static function parseGettextSection( $section, $pluralCount, &$metadata ) {
-
if ( trim( $section ) === '' ) {
return false;
}
@@ -178,13 +176,13 @@ class GettextFFS extends SimpleFFS implements MetaYamlSchemaExtender {
return false;
}
- $item = array(
+ $item = [
'ctxt' => false,
'id' => '',
'str' => '',
- 'flags' => array(),
- 'comments' => array(),
- );
+ 'flags' => [],
+ 'comments' => [],
+ ];
$match = self::expectKeyword( 'msgid', $section );
if ( $match !== null ) {
@@ -233,7 +231,7 @@ class GettextFFS extends SimpleFFS implements MetaYamlSchemaExtender {
$item['flags'] = $flags;
// Rest of the comments
- $matches = array();
+ $matches = [];
if ( preg_match_all( '/^#(.?) (.*)$/m', $section, $matches, PREG_SET_ORDER ) ) {
foreach ( $matches as $match ) {
if ( $match[1] !== ',' && strpos( $match[1], '[Wiki]' ) !== 0 ) {
@@ -246,7 +244,7 @@ class GettextFFS extends SimpleFFS implements MetaYamlSchemaExtender {
}
public static function processGettextPluralMessage( $pluralCount, $section ) {
- $actualForms = array();
+ $actualForms = [];
for ( $i = 0; $i < $pluralCount; $i++ ) {
$match = self::expectKeyword( "msgstr\\[$i\\]", $section );
@@ -267,11 +265,11 @@ class GettextFFS extends SimpleFFS implements MetaYamlSchemaExtender {
}
public static function parseFlags( $section ) {
- $matches = array();
+ $matches = [];
if ( preg_match( '/^#,(.*)$/mu', $section, $matches ) ) {
return array_map( 'trim', explode( ',', $matches[1] ) );
} else {
- return array();
+ return [];
}
}
@@ -281,7 +279,7 @@ class GettextFFS extends SimpleFFS implements MetaYamlSchemaExtender {
*/
$poformat = '".*"\n?(^".*"$\n?)*';
- $matches = array();
+ $matches = [];
if ( preg_match( "/^$name\s($poformat)/mx", $section, $matches ) ) {
return $matches[1];
} else {
@@ -296,7 +294,7 @@ class GettextFFS extends SimpleFFS implements MetaYamlSchemaExtender {
* @param string $algorithm Algorithm used to generate message keys: simple or legacy
* @return string
*/
- public static function generateKeyFromItem( array $item, $algorithm = 'legacy' ) {
+ public static function generateKeyFromItem( array $item, $algorithm = 'simple' ) {
$lang = Language::factory( 'en' );
if ( $item['ctxt'] === '' ) {
@@ -310,15 +308,27 @@ class GettextFFS extends SimpleFFS implements MetaYamlSchemaExtender {
if ( $algorithm === 'simple' ) {
$hash = substr( $hash, 0, 6 );
- $snippet = $lang->truncate( $item['id'], 30, '' );
+ if ( !is_callable( [ $lang, 'truncateForDatabase' ] ) ) {
+ // Backwards compatibility code; remove once MW 1.30 is
+ // no longer supported (aka once MW 1.33 is released)
+ $snippet = $lang->truncate( $item['id'], 30, '' );
+ } else {
+ $snippet = $lang->truncateForDatabase( $item['id'], 30, '' );
+ }
$snippet = str_replace( ' ', '_', trim( $snippet ) );
} else { // legacy
global $wgLegalTitleChars;
$snippet = $item['id'];
$snippet = preg_replace( "/[^$wgLegalTitleChars]/", ' ', $snippet );
$snippet = preg_replace( "/[:&%\/_]/", ' ', $snippet );
- $snippet = preg_replace( "/ {2,}/", ' ', $snippet );
- $snippet = $lang->truncate( $snippet, 30, '' );
+ $snippet = preg_replace( '/ {2,}/', ' ', $snippet );
+ if ( !is_callable( [ $lang, 'truncateForDatabase' ] ) ) {
+ // Backwards compatibility code; remove once MW 1.30 is
+ // no longer supported (aka once MW 1.33 is released)
+ $snippet = $lang->truncate( $snippet, 30, '' );
+ } else {
+ $snippet = $lang->truncateForDatabase( $snippet, 30, '' );
+ }
$snippet = str_replace( ' ', '_', trim( $snippet ) );
}
@@ -330,8 +340,8 @@ class GettextFFS extends SimpleFFS implements MetaYamlSchemaExtender {
* not allowed in MediaWiki pages, the default action is to append
* \-character at the end of the message. You can also choose to ignore it
* and use the trim action instead.
- * @param $data
- * @param $whitespace string
+ * @param string $data
+ * @param string $whitespace
* @throws MWException
* @return string
*/
@@ -355,7 +365,7 @@ class GettextFFS extends SimpleFFS implements MetaYamlSchemaExtender {
}
public static function parseHeaderTags( $headers ) {
- $tags = array();
+ $tags = [];
foreach ( explode( "\n", $headers ) as $line ) {
if ( strpos( $line, ':' ) === false ) {
error_log( __METHOD__ . ": $line" );
@@ -376,9 +386,9 @@ class GettextFFS extends SimpleFFS implements MetaYamlSchemaExtender {
/** @var TMessage $m */
foreach ( $collection as $key => $m ) {
$transTemplate = isset( $template['TEMPLATE'][$key] ) ?
- $template['TEMPLATE'][$key] : array();
+ $template['TEMPLATE'][$key] : [];
$potTemplate = isset( $pot['TEMPLATE'][$key] ) ?
- $pot['TEMPLATE'][$key] : array();
+ $pot['TEMPLATE'][$key] : [];
$output .= $this->formatMessageBlock( $key, $m, $transTemplate, $potTemplate, $pluralCount );
}
@@ -409,7 +419,7 @@ PHP;
// Make sure there is no empty line before msgid
$output = trim( $output ) . "\n";
- $specs = isset( $template['HEADERS'] ) ? $template['HEADERS'] : array();
+ $specs = isset( $template['HEADERS'] ) ? $template['HEADERS'] : [];
$timestamp = wfTimestampNow();
$specs['PO-Revision-Date'] = self::formatTime( $timestamp );
@@ -420,8 +430,8 @@ PHP;
}
$specs['Content-Type'] = 'text/plain; charset=UTF-8';
$specs['Content-Transfer-Encoding'] = '8bit';
- $specs['Language'] = wfBCP47( $this->group->mapCode( $code ) );
- wfRunHooks( 'Translate:GettextFFS:headerFields', array( &$specs, $this->group, $code ) );
+ $specs['Language'] = TranslateUtils::bcp47( $this->group->mapCode( $code ) );
+ Hooks::run( 'Translate:GettextFFS:headerFields', [ &$specs, $this->group, $code ] );
$specs['X-Generator'] = $this->getGenerator();
if ( $this->offlineMode ) {
@@ -436,7 +446,7 @@ PHP;
$specs['Plural-Forms'] = 'nplurals=2; plural=(n != 1);';
}
- $match = array();
+ $match = [];
preg_match( '/nplurals=(\d+);/', $specs['Plural-Forms'], $match );
$pluralCount = $match[1];
@@ -477,14 +487,14 @@ PHP;
$header = $this->formatDocumentation( $key );
$content = '';
- $comments = self::chainGetter( 'comments', $pot, $trans, array() );
+ $comments = self::chainGetter( 'comments', $pot, $trans, [] );
foreach ( $comments as $type => $typecomments ) {
foreach ( $typecomments as $comment ) {
$header .= "#$type $comment\n";
}
}
- $flags = self::chainGetter( 'flags', $pot, $trans, array() );
+ $flags = self::chainGetter( 'flags', $pot, $trans, [] );
$flags = array_merge( $m->getTags(), $flags );
if ( $this->offlineMode ) {
@@ -506,13 +516,13 @@ PHP;
if ( preg_match( '/{{PLURAL:GETTEXT/i', $msgid ) ) {
$forms = $this->splitPlural( $msgid, 2 );
- $content .= 'msgid ' . $this->escape( $forms[0] ) . "\n";
- $content .= 'msgid_plural ' . $this->escape( $forms[1] ) . "\n";
+ $content .= 'msgid ' . self::escape( $forms[0] ) . "\n";
+ $content .= 'msgid_plural ' . self::escape( $forms[1] ) . "\n";
try {
$forms = $this->splitPlural( $msgstr, $pluralCount );
foreach ( $forms as $index => $form ) {
- $content .= "msgstr[$index] " . $this->escape( $form ) . "\n";
+ $content .= "msgstr[$index] " . self::escape( $form ) . "\n";
}
} catch ( GettextPluralException $e ) {
$flags[] = 'invalid-plural';
@@ -527,7 +537,7 @@ PHP;
if ( $flags ) {
sort( $flags );
- $header .= "#, " . implode( ', ', array_unique( $flags ) ) . "\n";
+ $header .= '#, ' . implode( ', ', array_unique( $flags ) ) . "\n";
}
$output = $header ? $header : "#\n";
@@ -567,7 +577,7 @@ PHP;
protected function getGenerator() {
return 'MediaWiki ' . SpecialVersion::getVersion() .
- "; Translate " . TRANSLATE_VERSION;
+ '; Translate ' . TRANSLATE_VERSION;
}
protected function formatDocumentation( $key ) {
@@ -608,8 +618,8 @@ PHP;
/**
* Returns plural rule for Gettext.
- * @param $code \string Language code.
- * @return \string
+ * @param string $code Language code.
+ * @return string
*/
public static function getPluralRule( $code ) {
$rulefile = __DIR__ . '/../data/plural-gettext.txt';
@@ -636,13 +646,13 @@ PHP;
# |/| is commonly used in KDE to support inflections
$text = str_replace( '|/|', $placeholder, $text );
- $plurals = array();
+ $plurals = [];
$match = preg_match_all( '/{{PLURAL:GETTEXT\|(.*)}}/iUs', $text, $plurals );
if ( !$match ) {
throw new GettextPluralException( "Failed to find plural in: $text" );
}
- $splitPlurals = array();
+ $splitPlurals = [];
for ( $i = 0; $i < $forms; $i++ ) {
# Start with the hole string
$pluralForm = $text;
@@ -665,29 +675,38 @@ PHP;
return $splitPlurals;
}
+ public function shouldOverwrite( $a, $b ) {
+ $regex = '/^"(.+)-Date: \d\d\d\d-\d\d-\d\d \d\d:\d\d:\d\d\+\d\d\d\d\\\\n"$/m';
+
+ $a = preg_replace( $regex, '', $a );
+ $b = preg_replace( $regex, '', $b );
+
+ return $a !== $b;
+ }
+
public static function getExtraSchema() {
- $schema = array(
- 'root' => array(
+ $schema = [
+ 'root' => [
'_type' => 'array',
- '_children' => array(
- 'FILES' => array(
+ '_children' => [
+ 'FILES' => [
'_type' => 'array',
- '_children' => array(
- 'header' => array(
+ '_children' => [
+ 'header' => [
'_type' => 'text',
- ),
- 'keyAlgorithm' => array(
+ ],
+ 'keyAlgorithm' => [
'_type' => 'enum',
- '_values' => array( 'simple', 'legacy' ),
- ),
- 'CtxtAsKey' => array(
+ '_values' => [ 'simple', 'legacy' ],
+ ],
+ 'CtxtAsKey' => [
'_type' => 'boolean',
- ),
- )
- )
- )
- )
- );
+ ],
+ ]
+ ]
+ ]
+ ]
+ ];
return $schema;
}
diff --git a/MLEB/Translate/ffs/IniFFS.php b/MLEB/Translate/ffs/IniFFS.php
index 355c8ac7..ee3c2427 100644
--- a/MLEB/Translate/ffs/IniFFS.php
+++ b/MLEB/Translate/ffs/IniFFS.php
@@ -5,7 +5,7 @@
* @file
* @author Niklas Laxström
* @copyright Copyright © 2012-2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -17,18 +17,18 @@
*/
class IniFFS extends SimpleFFS {
public static function isValid( $data ) {
- $conf = array( 'BASIC' => array( 'class' => 'FileBasedMessageGroup', 'namespace' => 8 ) );
+ $conf = [ 'BASIC' => [ 'class' => 'FileBasedMessageGroup', 'namespace' => 8 ] ];
/**
* @var FileBasedMessageGroup $group
*/
$group = MessageGroupBase::factory( $conf );
- wfSuppressWarnings();
+ MediaWiki\suppressWarnings();
$ffs = new IniFFS( $group );
$parsed = $ffs->readFromVariable( $data );
- wfRestoreWarnings();
+ MediaWiki\restoreWarnings();
- return !!count( $parsed['MESSAGES'] );
+ return (bool)count( $parsed['MESSAGES'] );
}
public function supportsFuzzy() {
@@ -36,7 +36,7 @@ class IniFFS extends SimpleFFS {
}
public function getFileExtensions() {
- return array( '.ini' );
+ return [ '.ini' ];
}
/**
@@ -44,7 +44,7 @@ class IniFFS extends SimpleFFS {
* @return array Parsed data.
*/
public function readFromVariable( $data ) {
- $authors = array();
+ $authors = [];
preg_match_all( '/^; Author: (.*)$/m', $data, $matches, PREG_SET_ORDER );
foreach ( $matches as $match ) {
$authors[] = $match[1];
@@ -62,10 +62,10 @@ class IniFFS extends SimpleFFS {
$messages = null;
}
- return array(
+ return [
'MESSAGES' => $messages,
'AUTHORS' => $authors,
- );
+ ];
}
protected function writeReal( MessageCollection $collection ) {
diff --git a/MLEB/Translate/ffs/IntuitionTextdomains.php b/MLEB/Translate/ffs/IntuitionTextdomains.php
index 97261897..c3f637d2 100644
--- a/MLEB/Translate/ffs/IntuitionTextdomains.php
+++ b/MLEB/Translate/ffs/IntuitionTextdomains.php
@@ -7,7 +7,7 @@
* @author Krinkle
* @copyright Copyright © 2008-2013, Niklas Laxström
* @copyright Copyright © 2011, Krinkle
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -20,10 +20,10 @@ class PremadeIntuitionTextdomains extends PremadeMediawikiExtensionGroups {
protected $namespace = NS_INTUITION;
protected function processGroups( $groups ) {
- $fixedGroups = array();
+ $fixedGroups = [];
foreach ( $groups as $g ) {
if ( !is_array( $g ) ) {
- $g = array( $g );
+ $g = [ $g ];
}
$name = $g['name'];
@@ -55,12 +55,12 @@ class PremadeIntuitionTextdomains extends PremadeMediawikiExtensionGroups {
$url = false;
}
- $newgroup = array(
+ $newgroup = [
'name' => 'Intuition - ' . $name,
'file' => $file,
'descmsg' => $descmsg,
'url' => $url,
- );
+ ];
// Prefix is required, if not customized use the sanitized name
if ( !isset( $g['prefix'] ) ) {
@@ -68,21 +68,21 @@ class PremadeIntuitionTextdomains extends PremadeMediawikiExtensionGroups {
}
// All messages are prefixed with their groupname
- $g['mangle'] = array( '*' );
+ $g['mangle'] = [ '*' ];
// Prevent E_NOTICE undefined index.
// PremadeMediawikiExtensionGroups::factory should probably check this better instead
if ( !isset( $g['ignored'] ) ) {
- $g['ignored'] = array();
+ $g['ignored'] = [];
}
if ( !isset( $g['optional'] ) ) {
- $g['optional'] = array();
+ $g['optional'] = [];
}
$g['format'] = 'json';
- $copyvars = array(
+ $copyvars = [
'aliasfile',
'desc',
'format',
@@ -92,7 +92,7 @@ class PremadeIntuitionTextdomains extends PremadeMediawikiExtensionGroups {
'optional',
'prefix',
'var',
- );
+ ];
foreach ( $copyvars as $var ) {
if ( isset( $g[$var] ) ) {
diff --git a/MLEB/Translate/ffs/JavaFFS.php b/MLEB/Translate/ffs/JavaFFS.php
index 227d27df..87d9b1bd 100644
--- a/MLEB/Translate/ffs/JavaFFS.php
+++ b/MLEB/Translate/ffs/JavaFFS.php
@@ -15,13 +15,13 @@ class JavaFFS extends SimpleFFS implements MetaYamlSchemaExtender {
}
public function getFileExtensions() {
- return array( '.properties' );
+ return [ '.properties' ];
}
protected $keySeparator = '=';
/**
- * @param $group FileBasedMessageGroup
+ * @param FileBasedMessageGroup $group
*/
public function __construct( FileBasedMessageGroup $group ) {
parent::__construct( $group );
@@ -34,14 +34,14 @@ class JavaFFS extends SimpleFFS implements MetaYamlSchemaExtender {
// READ
/**
- * @param $data array
+ * @param string $data
* @return array Parsed data.
* @throws MWException
*/
public function readFromVariable( $data ) {
$data = self::fixNewLines( $data );
$lines = array_map( 'ltrim', explode( "\n", $data ) );
- $authors = $messages = array();
+ $authors = $messages = [];
$linecontinuation = false;
$key = '';
@@ -58,7 +58,7 @@ class JavaFFS extends SimpleFFS implements MetaYamlSchemaExtender {
}
if ( $line[0] === '#' || $line[0] === '!' ) {
- $match = array();
+ $match = [];
$ok = preg_match( '/#\s*Author:\s*(.*)/', $line, $match );
if ( $ok ) {
@@ -89,16 +89,16 @@ class JavaFFS extends SimpleFFS implements MetaYamlSchemaExtender {
$messages = $this->group->getMangler()->mangle( $messages );
- return array(
+ return [
'AUTHORS' => $authors,
'MESSAGES' => $messages,
- );
+ ];
}
// Write
/**
- * @param $collection MessageCollection
+ * @param MessageCollection $collection
* @return string
*/
protected function writeReal( MessageCollection $collection ) {
@@ -212,11 +212,11 @@ class JavaFFS extends SimpleFFS implements MetaYamlSchemaExtender {
$value = ltrim( $value );
$value = str_replace( '\n', "\n", $value );
- return array( $key, $value );
+ return [ $key, $value ];
}
/**
- * @param $collection MessageCollection
+ * @param MessageCollection $collection
* @return string
*/
protected function doHeader( MessageCollection $collection ) {
@@ -236,7 +236,7 @@ class JavaFFS extends SimpleFFS implements MetaYamlSchemaExtender {
}
/**
- * @param $collection MessageCollection
+ * @param MessageCollection $collection
* @return string
*/
protected function doAuthors( MessageCollection $collection ) {
@@ -252,24 +252,24 @@ class JavaFFS extends SimpleFFS implements MetaYamlSchemaExtender {
}
public static function getExtraSchema() {
- $schema = array(
- 'root' => array(
+ $schema = [
+ 'root' => [
'_type' => 'array',
- '_children' => array(
- 'FILES' => array(
+ '_children' => [
+ 'FILES' => [
'_type' => 'array',
- '_children' => array(
- 'header' => array(
+ '_children' => [
+ 'header' => [
'_type' => 'text',
- ),
- 'keySeparator' => array(
+ ],
+ 'keySeparator' => [
'_type' => 'text',
- ),
- )
- )
- )
- )
- );
+ ],
+ ]
+ ]
+ ]
+ ]
+ ];
return $schema;
}
diff --git a/MLEB/Translate/ffs/JavaScriptFFS.php b/MLEB/Translate/ffs/JavaScriptFFS.php
index ecbec780..e77724f2 100644
--- a/MLEB/Translate/ffs/JavaScriptFFS.php
+++ b/MLEB/Translate/ffs/JavaScriptFFS.php
@@ -6,13 +6,13 @@
*/
abstract class JavaScriptFFS extends SimpleFFS {
public function getFileExtensions() {
- return array( '.js' );
+ return [ '.js' ];
}
/**
* Message keys format.
*
- * @param $key string
+ * @param string $key
*
* @return string
*/
@@ -21,10 +21,10 @@ abstract class JavaScriptFFS extends SimpleFFS {
/**
* Header of message file.
*
- * @param $code string
- * @param $authors array
+ * @param string $code
+ * @param string[] $authors
*/
- abstract protected function header( $code, $authors );
+ abstract protected function header( $code, array $authors );
/**
* Footer of message file.
@@ -32,14 +32,14 @@ abstract class JavaScriptFFS extends SimpleFFS {
abstract protected function footer();
/**
- * @param $data array
+ * @param string $data
* @return array Parsed data.
*/
public function readFromVariable( $data ) {
/* Parse authors list */
$authors = preg_replace( "#/\* Translators\:\n(.*?)\n \*/(.*)#s", '$1', $data );
if ( $authors === $data ) {
- $authors = array();
+ $authors = [];
} else {
$authors = explode( "\n", $authors );
$count = count( $authors );
@@ -86,7 +86,7 @@ abstract class JavaScriptFFS extends SimpleFFS {
*/
$data = explode( "\",\n", $data );
- $messages = array();
+ $messages = [];
foreach ( $data as $segment ) {
/**
* Add back trailing quote, removed by explosion.
@@ -128,14 +128,14 @@ abstract class JavaScriptFFS extends SimpleFFS {
$messages = $this->group->getMangler()->mangle( $messages );
- return array(
+ return [
'AUTHORS' => $authors,
'MESSAGES' => $messages
- );
+ ];
}
/**
- * @param $collection MessageCollection
+ * @param MessageCollection $collection
* @return string
*/
public function writeReal( MessageCollection $collection ) {
@@ -177,11 +177,11 @@ abstract class JavaScriptFFS extends SimpleFFS {
}
/**
- * @param $authors array
+ * @param string[] $authors
* @return string
*/
- protected function authorsList( $authors ) {
- if ( count( $authors ) === 0 ) {
+ protected function authorsList( array $authors ) {
+ if ( $authors === [] ) {
return '';
}
@@ -195,7 +195,7 @@ abstract class JavaScriptFFS extends SimpleFFS {
}
// See ECMA 262 section 7.8.4 for string literal format
- private static $pairs = array(
+ private static $pairs = [
"\\" => "\\\\",
"\"" => "\\\"",
"'" => "\\'",
@@ -203,11 +203,11 @@ abstract class JavaScriptFFS extends SimpleFFS {
"\r" => "\\r",
// To avoid closing the element or CDATA section.
- "<" => "\\x3c",
- ">" => "\\x3e",
+ '<' => "\\x3c",
+ '>' => "\\x3e",
// To avoid any complaints about bad entity refs.
- "&" => "\\x26",
+ '&' => "\\x26",
/*
* Work around https://bugzilla.mozilla.org/show_bug.cgi?id=274152
@@ -217,10 +217,10 @@ abstract class JavaScriptFFS extends SimpleFFS {
*/
"\xe2\x80\x8c" => "\\u200c", // ZERO WIDTH NON-JOINER
"\xe2\x80\x8d" => "\\u200d", // ZERO WIDTH JOINER
- );
+ ];
/**
- * @param $string string
+ * @param string $string
* @return string
*/
protected static function escapeJsString( $string ) {
@@ -228,7 +228,7 @@ abstract class JavaScriptFFS extends SimpleFFS {
}
/**
- * @param $string string
+ * @param string $string
* @return string
*/
protected static function unescapeJsString( $string ) {
@@ -243,7 +243,7 @@ abstract class JavaScriptFFS extends SimpleFFS {
class ShapadoJsFFS extends JavaScriptFFS {
/**
- * @param $key string
+ * @param string $key
*
* @return string
*/
@@ -252,11 +252,11 @@ class ShapadoJsFFS extends JavaScriptFFS {
}
/**
- * @param $code string
- * @param $authors array
+ * @param string $code
+ * @param string[] $authors
* @return string
*/
- protected function header( $code, $authors ) {
+ protected function header( $code, array $authors ) {
global $wgSitename;
$name = TranslateUtils::getLanguageName( $code );
diff --git a/MLEB/Translate/ffs/JsonFFS.php b/MLEB/Translate/ffs/JsonFFS.php
index 7534582d..58642bef 100644
--- a/MLEB/Translate/ffs/JsonFFS.php
+++ b/MLEB/Translate/ffs/JsonFFS.php
@@ -4,8 +4,7 @@
*
* @file
* @author Niklas Laxström
- * @copyright Copyright © 2012-2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -18,25 +17,33 @@
*/
class JsonFFS extends SimpleFFS {
/**
- * @param $data
+ * @param string $data
* @return bool
*/
public static function isValid( $data ) {
- return is_array( FormatJSON::decode( $data, /*as array*/true ) );
+ return is_array( FormatJson::decode( $data, /*as array*/true ) );
+ }
+
+ /**
+ * @param FileBasedMessageGroup $group
+ */
+ public function __construct( FileBasedMessageGroup $group ) {
+ parent::__construct( $group );
+ $this->flattener = $this->getFlattener();
}
public function getFileExtensions() {
- return array( '.json' );
+ return [ '.json' ];
}
/**
- * @param array $data
+ * @param string $data
* @return array Parsed data.
*/
public function readFromVariable( $data ) {
- $messages = (array) FormatJSON::decode( $data, /*as array*/true );
- $authors = array();
- $metadata = array();
+ $messages = (array)FormatJson::decode( $data, /*as array*/true );
+ $authors = [];
+ $metadata = [];
if ( isset( $messages['@metadata']['authors'] ) ) {
$authors = (array)$messages['@metadata']['authors'];
@@ -49,13 +56,17 @@ class JsonFFS extends SimpleFFS {
unset( $messages['@metadata'] );
+ if ( $this->flattener ) {
+ $messages = $this->flattener->flatten( $messages );
+ }
+
$messages = $this->group->getMangler()->mangle( $messages );
- return array(
+ return [
'MESSAGES' => $messages,
'AUTHORS' => $authors,
'METADATA' => $metadata,
- );
+ ];
}
/**
@@ -63,9 +74,10 @@ class JsonFFS extends SimpleFFS {
* @return string
*/
protected function writeReal( MessageCollection $collection ) {
- $messages = array();
+ $messages = [];
$template = $this->read( $collection->getLanguage() );
+ $messages['@metadata'] = [];
if ( isset( $template['METADATA'] ) ) {
$messages['@metadata'] = $template['METADATA'];
}
@@ -77,7 +89,7 @@ class JsonFFS extends SimpleFFS {
$authors = array_unique( array_merge( $template['AUTHORS'], $authors ) );
}
- if ( $authors !== array() ) {
+ if ( $authors !== [] ) {
$messages['@metadata']['authors'] = array_values( $authors );
}
@@ -100,11 +112,65 @@ class JsonFFS extends SimpleFFS {
$messages[$key] = $value;
}
- // Do not create empty files
- if ( !count( $messages ) ) {
+ // Do not create empty files. Check that something besides @metadata is present.
+ if ( count( $messages ) < 2 ) {
return '';
}
- return FormatJSON::encode( $messages, "\t", FormatJson::ALL_OK ) . "\n";
+ if ( $this->flattener ) {
+ $messages = $this->flattener->unflatten( $messages );
+ }
+
+ if ( isset( $this->extra['includeMetadata'] ) && !$this->extra['includeMetadata'] ) {
+ unset( $messages['@metadata'] );
+ }
+
+ return FormatJson::encode( $messages, "\t", FormatJson::ALL_OK ) . "\n";
+ }
+
+ protected function getFlattener() {
+ if ( !isset( $this->extra['nestingSeparator'] ) ) {
+ return null;
+ }
+
+ $parseCLDRPlurals = isset( $this->extra['parseCLDRPlurals'] ) ?
+ $this->extra['parseCLDRPlurals'] : false;
+ $flattener = new ArrayFlattener( $this->extra['nestingSeparator'], $parseCLDRPlurals );
+
+ return $flattener;
+ }
+
+ public function isContentEqual( $a, $b ) {
+ if ( $this->flattener ) {
+ return $this->flattener->compareContent( $a, $b );
+ } else {
+ return parent::isContentEqual( $a, $b );
+ }
+ }
+
+ public static function getExtraSchema() {
+ $schema = [
+ 'root' => [
+ '_type' => 'array',
+ '_children' => [
+ 'FILES' => [
+ '_type' => 'array',
+ '_children' => [
+ 'nestingSeparator' => [
+ '_type' => 'text',
+ ],
+ 'parseCLDRPlurals' => [
+ '_type' => 'boolean',
+ ],
+ 'includeMetadata' => [
+ '_type' => 'boolean',
+ ]
+ ]
+ ]
+ ]
+ ]
+ ];
+
+ return $schema;
}
}
diff --git a/MLEB/Translate/ffs/MediaWikiComplexMessages.php b/MLEB/Translate/ffs/MediaWikiComplexMessages.php
index 3034b8e8..0d7e2d6c 100644
--- a/MLEB/Translate/ffs/MediaWikiComplexMessages.php
+++ b/MLEB/Translate/ffs/MediaWikiComplexMessages.php
@@ -5,7 +5,7 @@
* @file
* @author Niklas Laxström
* @copyright Copyright © 2008-2010, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -19,29 +19,31 @@ abstract class ComplexMessages {
const LANG_CURRENT = 2;
const PLACEHOLDER = 'languagecodeplaceholder';
- protected $language = null;
- protected $targetDir = null;
+ protected $language;
+ protected $targetHtmlCode;
+ protected $targetDir;
protected $id = '__BUG__';
protected $variable = '__BUG__';
- protected $data = array();
+ protected $data = [];
protected $elementsInArray = true;
protected $databaseMsg = '__BUG__';
protected $chainable = false;
protected $firstMagic = false;
- protected $constants = array();
+ protected $constants = [];
- protected $tableAttributes = array(
+ protected $tableAttributes = [
'class' => 'wikitable',
'border' => '2',
'cellpadding' => '4',
'cellspacing' => '0',
'style' => 'background-color: #F9F9F9; border: 1px #AAAAAA solid; border-collapse: collapse;',
- );
+ ];
public function __construct( $langCode ) {
$this->language = $langCode;
$language = Language::factory( $langCode );
+ $this->targetHtmlCode = $language->getHtmlCode();
$this->targetDir = $language->getDir();
}
@@ -51,9 +53,7 @@ abstract class ComplexMessages {
return wfMessage( 'translate-magic-' . $this->id )->text();
}
- #
- # Data retrieval
- #
+ // Data retrieval
protected $init = false;
public function getGroups() {
@@ -79,10 +79,11 @@ abstract class ComplexMessages {
continue;
}
- foreach ( $values as $index => $value )
+ foreach ( $values as $index => $value ) {
if ( in_array( $value, $defs[$item], true ) ) {
unset( $current[$item][$index] );
}
+ }
}
return $current;
@@ -123,7 +124,7 @@ abstract class ComplexMessages {
$chain = $this->mergeMagic( $defs, $chain );
}
- $data = $group['data'] = array( $defs, $chain, $current );
+ $data = $group['data'] = [ $defs, $chain, $current ];
return $data;
}
@@ -131,7 +132,7 @@ abstract class ComplexMessages {
/**
* Gets data from request. Needs to be run before the form is displayed and
* validation. Not needed for export, which uses request directly.
- * @param $request WebRequest
+ * @param WebRequest $request
*/
public function loadFromRequest( WebRequest $request ) {
$saved = $this->parse( $this->formatForSave( $request ) );
@@ -148,7 +149,7 @@ abstract class ComplexMessages {
$data = TranslateUtils::getMessageContent( $this->databaseMsg, $this->language );
if ( !$data ) {
- return array();
+ return [];
} else {
return $this->parse( $data );
}
@@ -156,7 +157,7 @@ abstract class ComplexMessages {
protected function parse( $data ) {
$lines = array_map( 'trim', explode( "\n", $data ) );
- $array = array();
+ $array = [];
foreach ( $lines as $line ) {
if ( $line === '' || $line[0] === '#' || $line[0] === '<' ) {
continue;
@@ -180,7 +181,7 @@ abstract class ComplexMessages {
/**
* Return an array of keys that can be used to iterate over all keys
- * @param $group
+ * @param string $group
* @return Array of keys for data
*/
protected function getIterator( $group ) {
@@ -191,29 +192,29 @@ abstract class ComplexMessages {
protected function val( $group, $type, $key ) {
$array = $this->getGroups();
- wfSuppressWarnings();
+ MediaWiki\suppressWarnings();
$subarray = $array[$group]['data'][$type][$key];
- wfRestoreWarnings();
+ MediaWiki\restoreWarnings();
if ( $this->elementsInArray ) {
if ( !$subarray || !count( $subarray ) ) {
- return array();
+ return [];
}
} else {
if ( !$subarray ) {
- return array();
+ return [];
}
}
if ( !is_array( $subarray ) ) {
- $subarray = array( $subarray );
+ $subarray = [ $subarray ];
}
return $subarray;
}
/**
- * @param $group
- * @param $code
+ * @param string $group
+ * @param string $code
* @return array
*/
protected function readVariable( $group, $code ) {
@@ -222,15 +223,15 @@ abstract class ComplexMessages {
$file = str_ireplace( self::PLACEHOLDER, str_replace( '-', '_', ucfirst( $code ) ), $file );
}
- ${$group['var']} = array(); # Initialize
+ ${$group['var']} = []; # Initialize
if ( file_exists( $file ) ) {
require $file; # Include
}
if ( $group['code'] ) {
- wfSuppressWarnings();
- $data = (array) ${$group['var']} [$code];
- wfRestoreWarnings();
+ MediaWiki\suppressWarnings();
+ $data = (array)${$group['var']} [$code];
+ MediaWiki\restoreWarnings();
} else {
$data = ${$group['var']};
}
@@ -250,15 +251,11 @@ abstract class ComplexMessages {
return $data;
}
- #
- # /Data retrieval
- #
+ // Data retrieval
- #
- # Output
- #
+ // Output
public function header( $title ) {
- $colspan = array( 'colspan' => 3 );
+ $colspan = [ 'colspan' => 3 ];
$header = Xml::element( 'th', $colspan, $this->getTitle() . ' - ' . $title );
$subheading[] = '<th>' . wfMessage( 'translate-magic-cm-original' )->escaped() . '</th>';
$subheading[] = '<th>' . wfMessage( 'translate-magic-cm-current' )->escaped() . '</th>';
@@ -269,7 +266,7 @@ abstract class ComplexMessages {
}
public function output() {
- $colspan = array( 'colspan' => 3 );
+ $colspan = [ 'colspan' => 3 ];
$s = Xml::openElement( 'table', $this->tableAttributes );
@@ -307,7 +304,7 @@ abstract class ComplexMessages {
$rowContents .= $this->editElement( $key, $this->formatElement( $value ) );
$rowContents .= '</td>';
- $s .= Xml::tags( 'tr', array( 'id' => "mw-sp-magic-$key" ), $rowContents );
+ $s .= Xml::tags( 'tr', [ 'id' => "mw-sp-magic-$key" ], $rowContents );
}
}
@@ -321,10 +318,10 @@ abstract class ComplexMessages {
return Xml::tags(
'form',
- array(
+ [
'method' => 'post',
'action' => $context->getRequest()->getRequestURL()
- ),
+ ],
$s
);
}
@@ -337,7 +334,7 @@ abstract class ComplexMessages {
) .
Xml::submitButton(
wfMessage( 'translate-magic-cm-save' )->text(),
- array( 'name' => 'savetodb' )
+ [ 'name' => 'savetodb' ]
);
}
@@ -354,26 +351,22 @@ abstract class ComplexMessages {
return trim( $element );
}
- function getKeyForEdit( $key ) {
+ protected function getKeyForEdit( $key ) {
return Sanitizer::escapeId( 'sp-translate-magic-cm-' . $this->id . $key );
}
public function editElement( $key, $contents ) {
- return Xml::input( $this->getKeyForEdit( $key ), 40, $contents, array(
- 'lang' => $this->language,
+ return Xml::input( $this->getKeyForEdit( $key ), 40, $contents, [
+ 'lang' => $this->targetHtmlCode,
'dir' => $this->targetDir,
- ) );
+ ] );
}
- #
- # /Output
- #
+ // Output
- #
- # Save to database
- #
+ // Save to database
- function getKeyForSave() {
+ protected function getKeyForSave() {
return $this->databaseMsg . '/' . $this->language;
}
@@ -381,7 +374,7 @@ abstract class ComplexMessages {
* @param WebRequest $request
* @return string
*/
- function formatForSave( WebRequest $request ) {
+ protected function formatForSave( WebRequest $request ) {
$text = '';
// Do not replace spaces by underscores for magic words. See bug T48613
@@ -436,15 +429,11 @@ abstract class ComplexMessages {
$this->init = false;
}
- #
- # !Save to database
- #
+ // Save to database
- #
- # Export
- #
- public function validate( &$errors = array(), $filter = false ) {
- $used = array();
+ // Export
+ public function validate( array &$errors, $filter = false ) {
+ $used = [];
foreach ( array_keys( $this->data ) as $group ) {
if ( $filter !== false && !in_array( $group, (array)$filter, true ) ) {
continue;
@@ -454,10 +443,10 @@ abstract class ComplexMessages {
}
}
- protected function validateEach( &$errors = array(), $group, &$used ) {
+ protected function validateEach( array &$errors, $group, &$used ) {
foreach ( $this->getIterator( $group ) as $key ) {
$values = $this->val( $group, self::LANG_CURRENT, $key );
- $link = Xml::element( 'a', array( 'href' => "#mw-sp-magic-$key" ), $key );
+ $link = Xml::element( 'a', [ 'href' => "#mw-sp-magic-$key" ], $key );
if ( count( $values ) !== count( array_filter( $values ) ) ) {
$errors[] = "There is empty value in $link.";
@@ -468,7 +457,7 @@ abstract class ComplexMessages {
$otherkey = $used[$v];
$first = Xml::element(
'a',
- array( 'href' => "#mw-sp-magic-$otherkey" ),
+ [ 'href' => "#mw-sp-magic-$otherkey" ],
$otherkey
);
$errors[] = "Translation <strong>$v</strong> is used more than once " .
@@ -482,9 +471,11 @@ abstract class ComplexMessages {
public function export( $filter = false ) {
$text = '';
- $errors = array();
+ $errors = [];
$this->validate( $errors, $filter );
- foreach ( $errors as $_ ) $text .= "#!!# $_\n";
+ foreach ( $errors as $_ ) {
+ $text .= "#!!# $_\n";
+ }
foreach ( $this->getGroups() as $group => $data ) {
if ( $filter !== false && !in_array( $group, (array)$filter, true ) ) {
@@ -505,7 +496,7 @@ abstract class ComplexMessages {
$out = '';
- $indexKeys = array();
+ $indexKeys = [];
foreach ( array_keys( $items[self::LANG_MASTER] ) as $key ) {
$indexKeys[$key] = isset( $this->constants[$key] ) ?
$this->constants[$key] :
@@ -552,11 +543,11 @@ abstract class ComplexMessages {
continue;
}
- $normalized = array_map( array( $this, 'normalize' ), $val );
+ $normalized = array_map( [ $this, 'normalize' ], $val );
if ( $this->elementsInArray ) {
- $temp .= "=> array( " . implode( ', ', $normalized ) . " ),";
+ $temp .= '=> array( ' . implode( ', ', $normalized ) . ' ),';
} else {
- $temp .= "=> " . implode( ', ', $normalized ) . ",";
+ $temp .= '=> ' . implode( ', ', $normalized ) . ',';
}
$out .= $temp . "\n";
}
@@ -573,7 +564,7 @@ abstract class ComplexMessages {
/**
* Returns string with quotes that should be valid php
- * @param $data string
+ * @param string $data
* @throws MWException
* @return string
*/
@@ -587,9 +578,7 @@ abstract class ComplexMessages {
return "'$data'";
}
- #
- # /Export
- #
+ // Export
public function highlight( $key, $values ) {
return $values;
}
@@ -606,12 +595,12 @@ class SpecialPageAliasesCM extends ComplexMessages {
public function __construct( $code ) {
parent::__construct( $code );
- $this->data['core'] = array(
+ $this->data['core'] = [
'label' => 'MediaWiki Core',
'var' => 'specialPageAliases',
'file' => Language::getMessagesFileName( self::PLACEHOLDER ),
'code' => false,
- );
+ ];
$groups = MessageGroups::singleton()->getGroups();
foreach ( $groups as $g ) {
@@ -624,12 +613,12 @@ class SpecialPageAliasesCM extends ComplexMessages {
}
$file = $g->replaceVariables( $conf['FILES']['aliasFileSource'], 'en' );
if ( file_exists( $file ) ) {
- $this->data[$g->getId()] = array(
+ $this->data[$g->getId()] = [
'label' => $g->getLabel(),
'var' => 'specialPageAliases',
'file' => $file,
'code' => $code,
- );
+ ];
}
}
}
@@ -637,7 +626,7 @@ class SpecialPageAliasesCM extends ComplexMessages {
public function highlight( $key, $values ) {
if ( count( $values ) ) {
if ( !isset( $values[0] ) ) {
- throw new MWException( "Something missing from values: " .
+ throw new MWException( 'Something missing from values: ' .
print_r( $values, true ) );
}
@@ -647,16 +636,16 @@ class SpecialPageAliasesCM extends ComplexMessages {
return $values;
}
- protected function validateEach( &$errors = array(), $group, &$used ) {
+ protected function validateEach( array &$errors, $group, &$used ) {
parent::validateEach( $errors, $group, $used );
foreach ( $this->getIterator( $group ) as $key ) {
$values = $this->val( $group, self::LANG_CURRENT, $key );
foreach ( $values as $_ ) {
- wfSuppressWarnings();
+ MediaWiki\suppressWarnings();
$title = SpecialPage::getTitleFor( $_ );
- wfRestoreWarnings();
- $link = Xml::element( 'a', array( 'href' => "#mw-sp-magic-$key" ), $key );
+ MediaWiki\restoreWarnings();
+ $link = Xml::element( 'a', [ 'href' => "#mw-sp-magic-$key" ], $key );
if ( $title === null ) {
if ( $_ !== '' ) {
// Empty values checked elsewhere
@@ -687,12 +676,12 @@ class MagicWordsCM extends ComplexMessages {
public function __construct( $code ) {
parent::__construct( $code );
- $this->data['core'] = array(
+ $this->data['core'] = [
'label' => 'MediaWiki Core',
'var' => 'magicWords',
'file' => Language::getMessagesFileName( self::PLACEHOLDER ),
'code' => false,
- );
+ ];
$groups = MessageGroups::singleton()->getGroups();
foreach ( $groups as $g ) {
@@ -705,12 +694,12 @@ class MagicWordsCM extends ComplexMessages {
}
$file = $g->replaceVariables( $conf['FILES']['magicFileSource'], 'en' );
if ( file_exists( $file ) ) {
- $this->data[$g->getId()] = array(
+ $this->data[$g->getId()] = [
'label' => $g->getLabel(),
'var' => 'magicWords',
'file' => $file,
'code' => $code,
- );
+ ];
}
}
}
@@ -735,15 +724,15 @@ class NamespaceCM extends ComplexMessages {
public function __construct( $code ) {
parent::__construct( $code );
- $this->data['core'] = array(
+ $this->data['core'] = [
'label' => 'MediaWiki Core',
'var' => 'namespaceNames',
'file' => Language::getMessagesFileName( self::PLACEHOLDER ),
'code' => false,
- );
+ ];
}
- protected $constants = array(
+ protected $constants = [
-2 => 'NS_MEDIA',
-1 => 'NS_SPECIAL',
0 => 'NS_MAIN',
@@ -762,17 +751,17 @@ class NamespaceCM extends ComplexMessages {
13 => 'NS_HELP_TALK',
14 => 'NS_CATEGORY',
15 => 'NS_CATEGORY_TALK',
- );
+ ];
- protected function validateEach( &$errors = array(), $group, &$used ) {
+ protected function validateEach( array &$errors, $group, &$used ) {
parent::validateEach( $errors, $group, $used );
foreach ( $this->getIterator( $group ) as $key ) {
$values = $this->val( $group, self::LANG_CURRENT, $key );
if ( count( $values ) > 1 ) {
- $link = Xml::element( 'a', array( 'href' => "#mw-sp-magic-$key" ), $key );
+ $link = Xml::element( 'a', [ 'href' => "#mw-sp-magic-$key" ], $key );
$errors[] = "Namespace $link can have only one translation. Replace the " .
- "translation with a new one, and notify staff about the change.";
+ 'translation with a new one, and notify staff about the change.';
}
}
}
diff --git a/MLEB/Translate/ffs/MediaWikiExtensionFFS.php b/MLEB/Translate/ffs/MediaWikiExtensionFFS.php
deleted file mode 100644
index 2df5b56a..00000000
--- a/MLEB/Translate/ffs/MediaWikiExtensionFFS.php
+++ /dev/null
@@ -1,289 +0,0 @@
-<?php
-/**
- * Support for the ugly file format that is used by MediaWiki extensions.
- *
- * @file
- * @author Niklas Laxström
- * @copyright Copyright © 2012-2013, Niklas Laxström
- * @license GPL-2.0+
- */
-
-/**
- * Manipulates ExtensionName.i18n.php style files.
- *
- * @ingroup FFS
- * @since 2012-10-20
- */
-class MediaWikiExtensionFFS extends SimpleFFS {
- public function supportsFuzzy() {
- return 'write';
- }
-
- public function getFileExtensions() {
- return array( '.i18n.php' );
- }
-
- /**
- * To avoid parsing full files again and again when reading or exporting
- * multiple languages, keep cache of the sections of the latest active file.
- * @var array
- */
- protected static $cache = array();
-
- /**
- * @param string $data Full file contents
- * @param string $filename Full path to file for debugging
- * @return string[] Sections indexed by language code, or 0 for header section
- * @throws MWException
- */
- protected function splitSections( $data, $filename = 'unknown' ) {
- $data = SimpleFFS::fixNewLines( $data );
-
- $splitter = '$messages = array();';
-
- $pos = strpos( $data, $splitter );
- if ( $pos === false ) {
- throw new MWException( "MWEFFS1: File $filename: splitter not found" );
- }
-
- $offset = $pos + strlen( $splitter );
- $header = substr( $data, 0, $offset );
-
- $pattern = '(?: /\*\* .*? \*/ \n )? (?: \\$.*? \n\);(?:\n\n|\s+\z) )';
- $regexp = "~$pattern~xsu";
- $matches = array();
- preg_match_all( $regexp, $data, $matches, PREG_SET_ORDER, $offset );
-
- $sections = array();
- $sections[] = $header;
-
- foreach ( $matches as $data ) {
- $pattern = "\\\$messages\['([a-z-]+)'\]";
- $regexp = "~$pattern~su";
- $matches = array();
- if ( !preg_match( $regexp, $data[0], $matches ) ) {
- throw new MWException( "MWEFFS2: File $filename: malformed section: {$data[0]}" );
- }
- $code = $matches[1];
- // Normalize number of newlines after each section
- $sections[$code] = rtrim( $data[0] );
- }
-
- return $sections;
- }
-
- /**
- * @param string $code Language code.
- * @return array|bool
- */
- public function read( $code ) {
- $filename = $this->group->getSourceFilePath( $code );
- if ( !file_exists( $filename ) ) {
- return false;
- }
-
- if ( isset( self::$cache[$filename]['parsed'][$code] ) ) {
- return self::$cache[$filename]['parsed'][$code];
- }
-
- if ( !isset( self::$cache[$filename] ) ) {
- // Clear the cache if the filename changes to reduce memory use
- self::$cache = array();
-
- $contents = file_get_contents( $filename );
- self::$cache[$filename]['sections'] =
- $this->splitSections( $contents, $filename );
- }
-
- // Shorten
- $cache = &self::$cache[$filename];
-
- $value = false;
- if ( isset( $cache['sections'][$code] ) ) {
- $value = $this->readFromVariable( $cache['sections'][$code] );
- }
-
- $cache['parsed'][$code] = $value;
-
- return $value;
- }
-
- /**
- * @param string $data
- * @return array Parsed data.
- * @throws MWException
- */
- public function readFromVariable( $data ) {
- $messages = array();
- eval( $data );
-
- $c = count( $messages );
- if ( $c !== 1 ) {
- throw new MWException( "MWEFFS3: Expected 1, got $c: $data" );
- }
-
- $messages = array_shift( $messages );
- $mangler = $this->group->getMangler();
- $messages = $mangler->mangle( $messages );
-
- return array(
- 'MESSAGES' => $messages,
- );
- }
-
- // Handled in writeReal
- protected function tryReadSource( $filename, MessageCollection $collection ) {
- return;
- }
-
- /**
- * @param MessageCollection $collection
- * @return string
- */
- protected function writeReal( MessageCollection $collection ) {
- $mangler = $this->group->getMangler();
- $code = $collection->getLanguage();
-
- $block = $this->generateMessageBlock( $collection, $mangler );
- if ( $block === false ) {
- return '';
- }
-
- // Ugly code, relies on side effects
- // Avoid parsing stuff with fake language code
- // Premature optimization
- $this->read( 'mul' );
- $filename = $this->group->getSourceFilePath( $code );
- $cache = &self::$cache[$filename];
-
- // Generating authors
- if ( isset( $cache['sections'][$code] ) ) {
- // More premature optimization
- $fromFile = self::parseAuthorsFromString( $cache['sections'][$code] );
- $collection->addCollectionAuthors( $fromFile );
- }
-
- $authors = $collection->getAuthors();
- $authors = $this->filterAuthors( $authors, $code );
-
- $authorList = '';
- foreach ( $authors as $author ) {
- $authorList .= "\n * @author $author";
- }
-
- // And putting all together
- $name = TranslateUtils::getLanguageName( $code );
- $native = TranslateUtils::getLanguageName( $code, $code );
-
- $section = <<<PHP
-/** $name ($native)$authorList
- */
-\$messages['$code'] = array($block);
-PHP;
-
- // Store the written part, so that when next language is called,
- // the new version will be used (instead of the old parsed version
- $cache['sections'][$code] = $section;
-
- // Make a copy we can alter
- $sections = $cache['sections'];
- $priority = array();
-
- global $wgTranslateDocumentationLanguageCode;
- $codes = array(
- 0, // File header
- $this->group->getSourceLanguage(),
- $wgTranslateDocumentationLanguageCode,
- );
- foreach ( $codes as $pcode ) {
- if ( isset( $sections[$pcode] ) ) {
- $priority[] = $sections[$pcode];
- unset( $sections[$pcode] );
- }
- }
-
- ksort( $sections );
-
- return implode( "\n\n", $priority ) . "\n\n" . implode( "\n\n", $sections ) . "\n";
- }
-
- protected function generateMessageBlock( MessageCollection $collection, StringMatcher $mangler ) {
- $block = '';
- /**
- * @var TMessage $m
- */
- foreach ( $collection as $key => $m ) {
- $value = $m->translation();
- if ( $value === null ) {
- continue;
- }
-
- $key = $mangler->unmangle( $key );
- $value = str_replace( TRANSLATE_FUZZY, '', $value );
- $fuzzy = $m->hasTag( 'fuzzy' ) ? ' # Fuzzy' : '';
-
- $key = self::quote( $key );
- $value = self::quote( $value );
- $block .= "\t$key => $value,$fuzzy\n";
- }
-
- // Do not create empty sections
- if ( $block === '' ) {
- return false;
- }
-
- return "\n$block";
- }
-
- /**
- * Scans for \@author tags in the string.
- * @param string $string String containing the comments of a section
- * @return string[] List of authors
- */
- protected static function parseAuthorsFromString( $string ) {
- preg_match_all( '/@author (.*)/', $string, $m );
-
- return $m[1];
- }
-
- /**
- * Tries to find optimal way to quote a string by choosing
- * either double quotes or single quotes depending on how
- * many escapes are needed.
- * @param string $value The string to quote.
- * @return string String suitable for inclusion in PHP code
- */
- protected static function quote( $value ) {
- # Check for the appropriate apostrophe and add the value
- # Quote \ here, because it needs always escaping
- $value = addcslashes( $value, '\\' );
-
- # For readability
- $single = "'";
- $double = '"';
- $quote = $single; // Default
-
- # It is safe to use '-quoting, unless there is '-quote in the text
- if ( strpos( $value, $single ) !== false ) {
- # In case there are no variables that need to be escaped, just use "-quote
- if ( strpos( $value, $double ) === false && !preg_match( '/\$[^0-9]/', $value ) ) {
- $quote = $double;
- } else {
- # Something needs quoting, so pick the quote which causes less quoting
- $doubleEsc = substr_count( $value, $double ) + substr_count( $value, '$' );
- $singleEsc = substr_count( $value, $single );
-
- if ( $doubleEsc < $singleEsc ) {
- $quote = $double;
- $extra = '$';
- } else {
- $extra = '';
- }
-
- $value = addcslashes( $value, $quote . $extra );
- }
- }
-
- return $quote . $value . $quote;
- }
-}
diff --git a/MLEB/Translate/ffs/MediaWikiExtensions.php b/MLEB/Translate/ffs/MediaWikiExtensions.php
index 231a730f..123c5012 100644
--- a/MLEB/Translate/ffs/MediaWikiExtensions.php
+++ b/MLEB/Translate/ffs/MediaWikiExtensions.php
@@ -4,16 +4,20 @@
*
* @file
* @author Niklas Laxström
- * @copyright Copyright © 2008-2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
- * Class which handles special definition format for %MediaWiki extensions.
+ * Class which handles special definition format for %MediaWiki extensions and skins.
*/
class PremadeMediawikiExtensionGroups {
+ /** @var bool */
protected $useConfigure = true;
+
+ /** @var string */
protected $idPrefix = 'ext-';
+
+ /** @var int */
protected $namespace = NS_MEDIAWIKI;
/**
@@ -43,7 +47,9 @@ class PremadeMediawikiExtensionGroups {
/**
* Whether to use the Configure extension to load extension home pages.
+ *
* @since 2012-03-22
+ * @param bool $value Whether Configure should be used.
*/
public function setUseConfigure( $value ) {
$this->useConfigure = $value;
@@ -51,26 +57,39 @@ class PremadeMediawikiExtensionGroups {
/**
* How to prefix message group ids.
+ *
* @since 2012-03-22
+ * @param string $value
*/
public function setGroupPrefix( $value ) {
$this->idPrefix = $value;
}
/**
- * What namespace holds the messages.
+ * Which namespace holds the messages.
+ *
* @since 2012-03-22
+ * @param int $value
*/
public function setNamespace( $value ) {
$this->namespace = $value;
}
- /// Makes an group id from extension name
- static function foldId( $name ) {
+ /**
+ * Makes an group id from extension name
+ * @param string $name
+ * @return string
+ */
+ public static function foldId( $name ) {
return preg_replace( '/\s+/', '', strtolower( $name ) );
}
- /// Hook: TranslatePostInitGroups
+ /**
+ * Hook: TranslatePostInitGroups
+ * @param array &$list
+ * @param array &$deps
+ * @return true
+ */
public function register( array &$list, array &$deps ) {
$groups = $this->parseFile();
$groups = $this->processGroups( $groups );
@@ -90,7 +109,7 @@ class PremadeMediawikiExtensionGroups {
* @return MediaWikiExtensionMessageGroup
*/
protected function createMessageGroup( $id, $info ) {
- $conf = array();
+ $conf = [];
$conf['BASIC']['class'] = 'MediaWikiExtensionMessageGroup';
$conf['BASIC']['id'] = $id;
$conf['BASIC']['namespace'] = $this->namespace;
@@ -103,12 +122,7 @@ class PremadeMediawikiExtensionGroups {
$conf['BASIC']['extensionurl'] = $info['url'];
}
- if ( $info['format'] === 'json' ) {
- $conf['FILES']['class'] = 'JsonFFS';
- } else {
- $conf['FILES']['class'] = 'MediaWikiExtensionFFS';
- }
-
+ $conf['FILES']['class'] = 'JsonFFS';
$conf['FILES']['sourcePattern'] = $this->path . '/' . $info['file'];
// @todo Find a better way
@@ -136,16 +150,15 @@ class PremadeMediawikiExtensionGroups {
}
$conf['CHECKER']['class'] = 'MediaWikiMessageChecker';
- $conf['CHECKER']['checks'] = array(
+ $conf['CHECKER']['checks'] = [
'pluralCheck',
'pluralFormsCheck',
'wikiParameterCheck',
'wikiLinksCheck',
- 'XhtmlCheck',
'braceBalanceCheck',
'pagenameMessagesCheck',
'miscMWChecks',
- );
+ ];
$conf['INSERTABLES']['class'] = 'MediaWikiInsertablesSuggester';
@@ -156,6 +169,27 @@ class PremadeMediawikiExtensionGroups {
$conf['TAGS']['ignored'] = $info['ignored'];
}
+ if ( isset( $info['languages'] ) ) {
+ $conf['LANGUAGES'] = [
+ 'whitelist' => [],
+ 'blacklist' => [],
+ ];
+
+ foreach ( $info['languages'] as $tagSpec ) {
+ if ( preg_match( '/^([+-])?(.+)$/', $tagSpec, $m ) ) {
+ list( , $sign, $tag ) = $m;
+ if ( $sign === '+' ) {
+ $conf['LANGUAGES']['whitelist'][] = $tag;
+ } elseif ( $sign === '-' ) {
+ $conf['LANGUAGES']['blacklist'][] = $tag;
+ } else {
+ $conf['LANGUAGES']['blacklist'] = '*';
+ $conf['LANGUAGES']['whitelist'][] = $tag;
+ }
+ }
+ }
+ }
+
return MessageGroupBase::factory( $conf );
}
@@ -166,11 +200,11 @@ class PremadeMediawikiExtensionGroups {
'trim',
preg_split( "/$linefeed{2,}/", $defines, -1, PREG_SPLIT_NO_EMPTY )
);
- $groups = array();
+ $groups = [];
foreach ( $sections as $section ) {
$lines = array_map( 'trim', preg_split( "/$linefeed/", $section ) );
- $newgroup = array();
+ $newgroup = [];
foreach ( $lines as $line ) {
if ( $line === '' || $line[0] === '#' ) {
@@ -181,7 +215,7 @@ class PremadeMediawikiExtensionGroups {
if ( empty( $newgroup['name'] ) ) {
$newgroup['name'] = $line;
} else {
- throw new MWException( "Trying to define name twice: " . $line );
+ throw new MWException( 'Trying to define name twice: ' . $line );
}
} else {
list( $key, $value ) = array_map( 'trim', explode( '=', $line, 2 ) );
@@ -190,7 +224,6 @@ class PremadeMediawikiExtensionGroups {
case 'desc':
case 'descmsg':
case 'file':
- case 'format':
case 'id':
case 'magicfile':
case 'var':
@@ -198,9 +231,10 @@ class PremadeMediawikiExtensionGroups {
break;
case 'optional':
case 'ignored':
+ case 'languages':
$values = array_map( 'trim', explode( ',', $value ) );
if ( !isset( $newgroup[$key] ) ) {
- $newgroup[$key] = array();
+ $newgroup[$key] = [];
}
$newgroup[$key] = array_merge( $newgroup[$key], $values );
break;
@@ -217,14 +251,14 @@ class PremadeMediawikiExtensionGroups {
$newgroup['prefix'] = $prefix;
if ( !isset( $newgroup['mangle'] ) ) {
- $newgroup['mangle'] = array();
+ $newgroup['mangle'] = [];
}
$messages = array_map( 'trim', explode( ',', $messages ) );
$newgroup['mangle'] = array_merge( $newgroup['mangle'], $messages );
break;
default:
- throw new MWException( "Unknown key:" . $key );
+ throw new MWException( 'Unknown key:' . $key );
}
}
}
@@ -242,10 +276,10 @@ class PremadeMediawikiExtensionGroups {
protected function processGroups( $groups ) {
$configureData = $this->loadConfigureExtensionData();
- $fixedGroups = array();
+ $fixedGroups = [];
foreach ( $groups as $g ) {
if ( !is_array( $g ) ) {
- $g = array( $g );
+ $g = [ $g ];
}
$name = $g['name'];
@@ -256,17 +290,8 @@ class PremadeMediawikiExtensionGroups {
$id = $this->idPrefix . preg_replace( '/\s+/', '', strtolower( $name ) );
}
- // Default message file format is currently php
- if ( !isset( $g['format'] ) ) {
- $g['format'] = 'json';
- }
-
if ( !isset( $g['file'] ) ) {
- if ( $g['format'] === 'json' ) {
- $file = preg_replace( '/\s+/', '', "$name/i18n/%CODE%.json" );
- } else {
- $file = preg_replace( '/\s+/', '', "$name/$name.i18n.php" );
- }
+ $file = preg_replace( '/\s+/', '', "$name/i18n/%CODE%.json" );
} else {
$file = $g['file'];
}
@@ -284,24 +309,24 @@ class PremadeMediawikiExtensionGroups {
$url = false;
}
- $newgroup = array(
+ $newgroup = [
'name' => $name,
'file' => $file,
'descmsg' => $descmsg,
'url' => $url,
- );
+ ];
- $copyvars = array(
+ $copyvars = [
'aliasfile',
'desc',
- 'format',
'ignored',
+ 'languages',
'magicfile',
'mangle',
'optional',
'prefix',
'var',
- );
+ ];
foreach ( $copyvars as $var ) {
if ( isset( $g[$var] ) ) {
@@ -309,6 +334,15 @@ class PremadeMediawikiExtensionGroups {
}
}
+ // Mark some fixed form optional messages automatically
+ if ( !isset( $newgroup['optional' ] ) ) {
+ $newgroup['optional'] = [];
+ }
+
+ // Mark extension name and skin names optional.
+ $newgroup['optional'][] = '*-extensionname';
+ $newgroup['optional'][] = 'skinname-*';
+
$fixedGroups[$id] = $newgroup;
}
@@ -317,21 +351,21 @@ class PremadeMediawikiExtensionGroups {
protected function loadConfigureExtensionData() {
if ( !$this->useConfigure ) {
- return array();
+ return [];
}
global $wgAutoloadClasses;
$postfix = 'Configure/load_txt_def/TxtDef.php';
if ( !file_exists( "{$this->path}/$postfix" ) ) {
- return array();
+ return [];
}
$wgAutoloadClasses['TxtDef'] = "{$this->path}/$postfix";
$tmp = TxtDef::loadFromFile( "{$this->path}/Configure/settings/Settings-ext.txt" );
return array_combine(
- array_map( array( __CLASS__, 'foldId' ), array_keys( $tmp ) ),
+ array_map( [ __CLASS__, 'foldId' ], array_keys( $tmp ) ),
array_values( $tmp )
);
}
diff --git a/MLEB/Translate/ffs/RubyYamlFFS.php b/MLEB/Translate/ffs/RubyYamlFFS.php
deleted file mode 100644
index f0c978db..00000000
--- a/MLEB/Translate/ffs/RubyYamlFFS.php
+++ /dev/null
@@ -1,170 +0,0 @@
-<?php
-
-/**
- * Extends YamlFFS with Ruby (on Rails) style plural support. Supports subkeys
- * zero, one, many, few, other and two for each message using plural with
- * {{count}} variable.
- * @ingroup FFS
- */
-class RubyYamlFFS extends YamlFFS {
- protected static $pluralWords = array(
- 'zero' => 1,
- 'one' => 1,
- 'many' => 1,
- 'few' => 1,
- 'other' => 1,
- 'two' => 1
- );
-
- public function getFileExtensions() {
- return array( '.yml', '.yaml' );
- }
-
- /**
- * Flattens ruby plural arrays into special plural syntax.
- *
- * @param array $messages Array of keys and values
- *
- * @throws MWException
- * @return bool|string
- */
- public function flattenPlural( $messages ) {
-
- $pluralKeys = false;
- $nonPluralKeys = false;
- foreach ( $messages as $key => $value ) {
- if ( is_array( $value ) ) {
- # Plurals can only happen in the lowest level of the structure
- return false;
- }
-
- # Check if we find any reserved plural keyword
- if ( isset( self::$pluralWords[$key] ) ) {
- $pluralKeys = true;
- } else {
- $nonPluralKeys = true;
- }
- }
-
- # No plural keys at all, we can skip
- if ( !$pluralKeys ) {
- return false;
- }
-
- # Mixed plural keys with other keys, should not happen
- if ( $nonPluralKeys ) {
- $keys = implode( ', ', array_keys( $messages ) );
- throw new MWException( "Reserved plural keywords mixed with other keys: $keys." );
- }
-
- $pls = '{{PLURAL';
- foreach ( $messages as $key => $value ) {
- if ( $key === 'other' ) {
- continue;
- }
-
- $pls .= "|$key=$value";
- }
-
- // Put the "other" alternative last, without other= prefix.
- $other = isset( $messages['other'] ) ? '|' . $messages['other'] : '';
- $pls .= "$other}}";
-
- return $pls;
- }
-
- /**
- * Converts the special plural syntax to array or ruby style plurals
- *
- * @param string $key Message key prefix
- * @param string $message The plural string
- *
- * @return bool|array
- */
- public function unflattenPlural( $key, $message ) {
- // Quick escape.
- if ( strpos( $message, '{{PLURAL' ) === false ) {
- return array( $key => $message );
- }
-
- /*
- * Replace all variables with placeholders. Possible source of bugs
- * if other characters that given below are used.
- */
- $regex = '~\{[a-zA-Z_-]+}~';
- $placeholders = array();
- $match = array();
-
- while ( preg_match( $regex, $message, $match ) ) {
- $uniqkey = TranslateUtils::getPlaceholder();
- $placeholders[$uniqkey] = $match[0];
- $search = preg_quote( $match[0], '~' );
- $message = preg_replace( "~$search~", $uniqkey, $message );
- }
-
- // Then replace (possible multiple) plural instances into placeholders.
- $regex = '~\{\{PLURAL\|(.*?)}}~s';
- $matches = array();
- $match = array();
-
- while ( preg_match( $regex, $message, $match ) ) {
- $uniqkey = TranslateUtils::getPlaceholder();
- $matches[$uniqkey] = $match;
- $message = preg_replace( $regex, $uniqkey, $message, 1 );
- }
-
- // No plurals, should not happen.
- if ( !count( $matches ) ) {
- return false;
- }
-
- // The final array of alternative plurals forms.
- $alts = array();
-
- /*
- * Then loop trough each plural block and replacing the placeholders
- * to construct the alternatives. Produces invalid output if there is
- * multiple plural bocks which don't have the same set of keys.
- */
- $pluralChoice = implode( '|', array_keys( self::$pluralWords ) );
- $regex = "~($pluralChoice)\s*=\s*(.+)~s";
- foreach ( $matches as $ph => $plu ) {
- $forms = explode( '|', $plu[1] );
-
- foreach ( $forms as $form ) {
- if ( $form === '' ) {
- continue;
- }
-
- $match = array();
- if ( preg_match( $regex, $form, $match ) ) {
- $formWord = "$key.{$match[1]}";
- $value = $match[2];
- } else {
- $formWord = "$key.other";
- $value = $form;
- }
-
- if ( !isset( $alts[$formWord] ) ) {
- $alts[$formWord] = $message;
- }
-
- $string = $alts[$formWord];
- $alts[$formWord] = str_replace( $ph, $value, $string );
- }
- }
-
- // Replace other variables.
- foreach ( $alts as &$value ) {
- $value = str_replace( array_keys( $placeholders ), array_values( $placeholders ), $value );
- }
-
- if ( !isset( $alts["$key.other"] ) ) {
- wfWarn( "Other not set for key $key" );
-
- return false;
- }
-
- return $alts;
- }
-}
diff --git a/MLEB/Translate/ffs/SimpleFFS.php b/MLEB/Translate/ffs/SimpleFFS.php
index 444cd2e6..53bc9b71 100644
--- a/MLEB/Translate/ffs/SimpleFFS.php
+++ b/MLEB/Translate/ffs/SimpleFFS.php
@@ -12,13 +12,16 @@
* Other FFS classes can extend SimpleFFS and override suitable methods.
* @ingroup FFS
*/
+
+use UtfNormal\Validator;
+
class SimpleFFS implements FFS {
public function supportsFuzzy() {
return 'no';
}
public function getFileExtensions() {
- return array();
+ return [];
}
/**
@@ -117,7 +120,7 @@ class SimpleFFS implements FFS {
throw new MWException( "Contents of $filename are not valid utf-8." );
}
- $input = UtfNormal::cleanUp( $input );
+ $input = Validator::cleanUp( $input );
try {
return $this->readFromVariable( $input );
@@ -143,7 +146,7 @@ class SimpleFFS implements FFS {
list( $authorsPart, $messagesPart ) = $parts;
$authors = explode( self::RECORD_SEPARATOR, $authorsPart );
- $messages = array();
+ $messages = [];
foreach ( explode( self::RECORD_SEPARATOR, $messagesPart ) as $line ) {
if ( $line === '' ) {
@@ -163,10 +166,10 @@ class SimpleFFS implements FFS {
$messages = $this->group->getMangler()->mangle( $messages );
- return array(
+ return [
'AUTHORS' => $authors,
'MESSAGES' => $messages,
- );
+ ];
}
/**
@@ -192,7 +195,9 @@ class SimpleFFS implements FFS {
$targetFile = $writePath . '/' . $this->group->getTargetFilename( $collection->code );
- if ( file_exists( $targetFile ) ) {
+ $targetFileExists = file_exists( $targetFile );
+
+ if ( $targetFileExists ) {
$this->tryReadSource( $targetFile, $collection );
} else {
$sourceFile = $this->group->getSourceFilePath( $collection->code );
@@ -200,10 +205,22 @@ class SimpleFFS implements FFS {
}
$output = $this->writeReal( $collection );
- if ( $output ) {
- wfMkdirParents( dirname( $targetFile ), null, __METHOD__ );
- file_put_contents( $targetFile, $output );
+ if ( !$output ) {
+ return;
+ }
+
+ // Some file formats might have changing parts, such as timestamp.
+ // This allows the file handler to skip updating files, where only
+ // the timestamp would change.
+ if ( $targetFileExists ) {
+ $oldContent = $this->tryReadFile( $targetFile );
+ if ( !$this->shouldOverwrite( $oldContent, $output ) ) {
+ return;
+ }
}
+
+ wfMkdirParents( dirname( $targetFile ), null, __METHOD__ );
+ file_put_contents( $targetFile, $output );
}
/**
@@ -351,4 +368,12 @@ class SimpleFFS implements FFS {
return $data;
}
+
+ public function isContentEqual( $a, $b ) {
+ return $a === $b;
+ }
+
+ public function shouldOverwrite( $a, $b ) {
+ return true;
+ }
}
diff --git a/MLEB/Translate/ffs/XliffFFS.php b/MLEB/Translate/ffs/XliffFFS.php
index e84aaa7f..cef5d5bb 100644
--- a/MLEB/Translate/ffs/XliffFFS.php
+++ b/MLEB/Translate/ffs/XliffFFS.php
@@ -4,7 +4,7 @@
*
* @file
* @author Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -33,7 +33,7 @@ class XliffFFS extends SimpleFFS {
}
public function getFileExtensions() {
- return array( '.xlf', '.xliff', '.xml' );
+ return [ '.xlf', '.xliff', '.xml' ];
}
/**
@@ -42,7 +42,7 @@ class XliffFFS extends SimpleFFS {
* @return array Parsed data.
*/
public function readFromVariable( $data, $element = 'target' ) {
- $messages = array();
+ $messages = [];
$mangler = $this->group->getMangler();
$reader = new SimpleXMLElement( $data );
@@ -69,7 +69,7 @@ class XliffFFS extends SimpleFFS {
/* In case there are tags inside the element, preserve
* them. */
$dom = new DOMDocument( '1.0' );
- $dom->loadXML( $source->asXml() );
+ $dom->loadXML( $source->asXML() );
$value = self::getInnerXml( $dom->documentElement );
/* This might not be 100% according to the spec, but
@@ -86,9 +86,9 @@ class XliffFFS extends SimpleFFS {
$messages[$key] = $value;
}
- return array(
+ return [
'MESSAGES' => $mangler->mangle( $messages ),
- );
+ ];
}
/**
@@ -114,6 +114,9 @@ class XliffFFS extends SimpleFFS {
/**
* Gets the html inside en element without the element itself.
+ *
+ * @param DomElement $node
+ * @return string
*/
public static function getInnerXml( DomElement $node ) {
$text = '';
diff --git a/MLEB/Translate/ffs/YamlFFS.php b/MLEB/Translate/ffs/YamlFFS.php
index 3a64f2e0..8d2096fa 100644
--- a/MLEB/Translate/ffs/YamlFFS.php
+++ b/MLEB/Translate/ffs/YamlFFS.php
@@ -8,17 +8,25 @@
* @ingroup FFS
*/
class YamlFFS extends SimpleFFS implements MetaYamlSchemaExtender {
+ /**
+ * @param FileBasedMessageGroup $group
+ */
+ public function __construct( FileBasedMessageGroup $group ) {
+ parent::__construct( $group );
+ $this->flattener = $this->getFlattener();
+ }
+
public function getFileExtensions() {
- return array( '.yaml', '.yml' );
+ return [ '.yaml', '.yml' ];
}
/**
- * @param $data
+ * @param string $data
* @return array Parsed data.
*/
public function readFromVariable( $data ) {
// Authors first.
- $matches = array();
+ $matches = [];
preg_match_all( '/^#\s*Author:\s*(.*)$/m', $data, $matches );
$authors = $matches[1];
@@ -36,14 +44,14 @@ class YamlFFS extends SimpleFFS implements MetaYamlSchemaExtender {
$value = rtrim( $value, "\n" );
}
- return array(
+ return [
'AUTHORS' => $authors,
'MESSAGES' => $messages,
- );
+ ];
}
/**
- * @param $collection MessageCollection
+ * @param MessageCollection $collection
* @return string
*/
protected function writeReal( MessageCollection $collection ) {
@@ -52,7 +60,7 @@ class YamlFFS extends SimpleFFS implements MetaYamlSchemaExtender {
$mangler = $this->group->getMangler();
- $messages = array();
+ $messages = [];
/**
* @var $m TMessage
*/
@@ -77,7 +85,7 @@ class YamlFFS extends SimpleFFS implements MetaYamlSchemaExtender {
// Some groups have messages under language code.
if ( isset( $this->extra['codeAsRoot'] ) ) {
$code = $this->group->mapCode( $collection->code );
- $messages = array( $code => $messages );
+ $messages = [ $code => $messages ];
}
$output .= TranslateYaml::dump( $messages );
@@ -86,7 +94,7 @@ class YamlFFS extends SimpleFFS implements MetaYamlSchemaExtender {
}
/**
- * @param $collection MessageCollection
+ * @param MessageCollection $collection
* @return string
*/
protected function doHeader( MessageCollection $collection ) {
@@ -107,7 +115,7 @@ class YamlFFS extends SimpleFFS implements MetaYamlSchemaExtender {
}
/**
- * @param $collection MessageCollection
+ * @param MessageCollection $collection
* @return string
*/
protected function doAuthors( MessageCollection $collection ) {
@@ -123,147 +131,71 @@ class YamlFFS extends SimpleFFS implements MetaYamlSchemaExtender {
}
/**
+ * Obtains object used to flatten and unflatten arrays. In this implementation
+ * we use the ArrayFlattener class which also supports CLDR pluralization rules.
+ *
+ * @return object with flatten, unflatten methods
+ */
+ protected function getFlattener() {
+ $nestingSeparator = isset( $this->extra['nestingSeparator'] ) ?
+ $this->extra['nestingSeparator'] : '.';
+ $parseCLDRPlurals = isset( $this->extra['parseCLDRPlurals'] ) ?
+ $this->extra['parseCLDRPlurals'] : false;
+
+ // Instantiate helper class for flattening and unflattening nested arrays
+ return new ArrayFlattener( $nestingSeparator, $parseCLDRPlurals );
+ }
+
+ /**
* Flattens multidimensional array by using the path to the value as key
* with each individual key separated by a dot.
*
- * @param $messages array
+ * @param array $messages
*
* @return array
*/
protected function flatten( $messages ) {
- $flat = true;
-
- foreach ( $messages as $v ) {
- if ( !is_array( $v ) ) {
- continue;
- }
-
- $flat = false;
- break;
- }
-
- if ( $flat ) {
- return $messages;
- }
-
- $array = array();
- foreach ( $messages as $key => $value ) {
- if ( !is_array( $value ) ) {
- $array[$key] = $value;
- } else {
- $plural = $this->flattenPlural( $value );
- if ( $plural ) {
- $array[$key] = $plural;
- } else {
- $newArray = array();
- foreach ( $value as $newKey => $newValue ) {
- $newArray["$key.$newKey"] = $newValue;
- }
- $array += $this->flatten( $newArray );
- }
- }
-
- /**
- * Can as well keep only one copy around.
- */
- unset( $messages[$key] );
- }
-
- return $array;
+ return $this->flattener->flatten( $messages );
}
/**
- * Performs the reverse operation of flatten. Each dot in the key starts a
- * new subarray in the final array.
+ * Performs the reverse operation of flatten. Each dot (or custom separator)
+ * in the key starts a new subarray in the final array.
*
- * @param $messages array
+ * @param array $messages
*
* @return array
*/
protected function unflatten( $messages ) {
- $array = array();
- foreach ( $messages as $key => $value ) {
- $plurals = $this->unflattenPlural( $key, $value );
-
- if ( $plurals === false ) {
- continue;
- }
-
- foreach ( $plurals as $keyPlural => $valuePlural ) {
- $path = explode( '.', $keyPlural );
- if ( count( $path ) == 1 ) {
- $array[$keyPlural] = $valuePlural;
- continue;
- }
-
- $pointer = &$array;
- do {
- /**
- * Extract the level and make sure it exists.
- */
- $level = array_shift( $path );
- if ( !isset( $pointer[$level] ) ) {
- $pointer[$level] = array();
- }
-
- /**
- * Update the pointer to the new reference.
- */
- $tmpPointer = &$pointer[$level];
- unset( $pointer );
- $pointer = &$tmpPointer;
- unset( $tmpPointer );
-
- /**
- * If next level is the last, add it into the array.
- */
- if ( count( $path ) === 1 ) {
- $lastKey = array_shift( $path );
- $pointer[$lastKey] = $valuePlural;
- }
- } while ( count( $path ) );
- }
- }
-
- return $array;
- }
-
- /**
- * @param $value
- * @return bool
- */
- public function flattenPlural( $value ) {
- return false;
+ return $this->flattener->unflatten( $messages );
}
- /**
- * Override this. Return false to skip processing this value. Otherwise
- *
- * @param $key string
- * @param $value string
- *
- * @return array with keys and values.
- */
- public function unflattenPlural( $key, $value ) {
- return array( $key => $value );
+ public function isContentEqual( $a, $b ) {
+ return $this->flattener->compareContent( $a, $b );
}
public static function getExtraSchema() {
- $schema = array(
- 'root' => array(
+ $schema = [
+ 'root' => [
'_type' => 'array',
- '_children' => array(
- 'FILES' => array(
+ '_children' => [
+ 'FILES' => [
'_type' => 'array',
- '_children' => array(
- 'codeAsRoot' => array(
+ '_children' => [
+ 'codeAsRoot' => [
+ '_type' => 'boolean',
+ ],
+ 'nestingSeparator' => [
+ '_type' => 'text',
+ ],
+ 'parseCLDRPlurals' => [
'_type' => 'boolean',
- ),
- )
- )
- )
- )
- );
+ ]
+ ]
+ ]
+ ]
+ ]
+ ];
return $schema;
}
diff --git a/MLEB/Translate/hooks.txt b/MLEB/Translate/hooks.txt
index 45b2f94a..e026085c 100644
--- a/MLEB/Translate/hooks.txt
+++ b/MLEB/Translate/hooks.txt
@@ -46,12 +46,6 @@ Post processing step to format in wiki
=== PHP events ===
-;SpecialTranslate::executeTask: You can output the default task output
- RequestContext $context: For adding output, accessing current interface language etc.
- TranslateTask $task = null: Current task if any
- MessageGroup $group
- array $options: Active options
-
;Translate:MessageGroupStats:isIncluded: Controls whether message group is shown for a given language in language or message group statistics. Mostly used internally by Translate to hide discouraged groups and groups restricted to certain languages.
string $groupId: Message group id
string $code: Language code
@@ -70,37 +64,19 @@ Post processing step to format in wiki
string $oldState
string $newState
-;TranslateEventTranslationEdit: Event triggered when a translation is created or changed
- MessageHandle $handle
-
;TranslateEventTranslationReview: Event triggered when a translation is proofread
MessageHandle $handle
-;TranslateFormatMessageBeforeTable: Provides an opportunity to manipulate the display of translation strings (messages) in the main table
- string &$message: The message that will be displayed
- TMessage $m: Object representing the source object, useful for $m->original() and $m->translation()
- MessageGroup $group: The source message group
- string $targetLanguage: The language for which translations are being shown
- array &$extraAttribs: An array of attributes that will be added to the table row
-
;TranslateGetBoxes: Provides an opportunity to add or remove "boxes" (translation helpers) from the translation interface
MessageGroup $group: The message group being worked on
MessageHandle $handle: An object representing the translation page (e.g. 'MediaWiki:Example/qqq')
array &$boxes: An associative array to be appended to (format: 'name' => 'some HTML string')
-;TranslateGetAPIMessageGroupsParameterDescs: Provides an opportunity to document any parameters added with 'TranslateGetAPIMessageGroupsParameterList'.
- array &$paramDescs: An associative array of parameters, name => description.
- string $p: The prefix for action=query&meta=messagegroups (currently mg, but could change), useful for documentation
-
;TranslateGetAPIMessageGroupsParameterList: Allows extra parameters to be added to the action=query&meta=messagegroups module
array &$params: An associative array of possible parameters (name => details; see ApiQueryMessageGroups.php for correct spacing)
;TranslateGetAPIMessageGroupsPropertyDescs: Allows extra properties to be added to captured by action=query&meta=messagegroups&mgprop=foo|bar|bat module
- array &$properties: An associative array of properties, name => description.
-
-;TranslateGetExtraInputs: Provides an opportunity to add extra form inputs to to the default translation editor
- string &$translation: The translation as it stands
- string &$extraInputs: The extra input space, ready for HTML to be appended
+ array &$properties: An associative array of properties, name => description (which is ignored).
;TranslateGetSpecialTranslateOptions: Provides an opportunity for overriding task values
array &$defaults: Associative array of default values
@@ -115,12 +91,6 @@ Post processing step to format in wiki
MessageGroup $group
array &$variables: Variable name => replacement
-;TranslateMessageTableInit: When creating new MessageTable
- MessageTable &$table: Default implementation that can be accessed or even replaced
- IContextSource $context:
- MessageCollection $collection
- MessageGroup $group
-
;Translate:newTranslation: Event triggered when non-fuzzy translation has been made
MessageHandle $handle
int $revisionId
@@ -149,13 +119,14 @@ Post processing step to format in wiki
;TranslateTranslationAids: Make new translation aids available to any message group (which must choose an implementation in its getTranslationAids() method).
array &$types: List of translation aid identifiers, numerically indexed
-;AddNewAccount: Replica of the core hook, see https://www.mediawiki.org/wiki/Manual:Hooks/AddNewAccount
-
=== JavaScript events ===
;afterSubmit: Provides an opportunity to modify a Translate translation form immediately after it is submitted
jQuery form: The form that has just been submitted
+;afterEditorShown: Provides an opportunity to manipulate the editing interface once it's shown
+ jQuery translateEditor.$editor: The current translation-editing form
+
;beforeSubmit: Provides an opportunity to modify a Translate translation form immediately before it is submitted
jQuery form: The form being submitted
diff --git a/MLEB/Translate/i18n/api/ar.json b/MLEB/Translate/i18n/api/ar.json
index dea50c7c..99fce547 100644
--- a/MLEB/Translate/i18n/api/ar.json
+++ b/MLEB/Translate/i18n/api/ar.json
@@ -1,8 +1,131 @@
{
"@metadata": {
"authors": [
- "محمد أحمد عبد الفتاح"
+ "محمد أحمد عبد الفتاح",
+ "Meno25",
+ "ديفيد"
]
},
- "apihelp-query+messagegroups-example-1": "أظهر مجموعات الرسائل"
+ "apihelp-aggregategroups-description": "إدارة مجموعات الرسائل المجمعة.\n\nأنت يمكنك إضافة وإزالة مجموعات الرسائل المجمعة وجعل مجموعات الرسائل مقترنة أو غير مقترنة بها (واحدة كل مرة).",
+ "apihelp-aggregategroups-summary": "إدارة مجموعات الرسائل المجمعة.",
+ "apihelp-aggregategroups-extended-description": "يمكنك إضافة مجموعات رسائل مجمعة وإزالتها، وإقران مجموعات رسائل أو فصلها عنها (واحدة تلو الأخرى).",
+ "apihelp-aggregategroups-param-do": "ما ينبغي عمله مع مجموعة الرسائل المجمعة.",
+ "apihelp-aggregategroups-param-aggregategroup": "رقم مجموعة الرسائل المجمعة.",
+ "apihelp-aggregategroups-param-group": "معرف مجموعة الرسائل.",
+ "apihelp-aggregategroups-param-groupname": "اسم مجموعة الرسائل المجمعة.",
+ "apihelp-aggregategroups-param-groupdescription": "وصف مجموعة الرسائل المجمعة.",
+ "apihelp-aggregategroups-example-1": "اجعل المجموعة مقترنة",
+ "apihelp-groupreview-description": "اضبط حالات عمل مجموعات الرسائل.",
+ "apihelp-groupreview-summary": "تعيين حالات سير عمل مجموعة الرسائل.",
+ "apihelp-groupreview-param-group": "مجموعة الرسائل.",
+ "apihelp-groupreview-param-language": "كود اللغة.",
+ "apihelp-groupreview-param-state": "الحالة الجديدة للمجموعة.",
+ "apihelp-groupreview-example-1": "علم على حالة الترجمة الألمانية لمجموعة الرسائل \"group-Example\" كجاهزة",
+ "apihelp-query+languagestats-description": "استعلم عن إحصاءات اللغة.",
+ "apihelp-query+languagestats-summary": "إحصائيات لغة الاستعلام.",
+ "apihelp-query+languagestats-param-timelimit": "الوقت الأقصى لإمضائه في حساب الإحصاءات المفقودة. لو صفر، فقط النتائج المخزنة من البداية سيتم إرجاعها.",
+ "apihelp-query+languagestats-param-language": "كود اللغة.",
+ "apihelp-query+languagestats-example-1": "قائمة إحصاءات إكمال الترجمة للفنلندية",
+ "apihelp-query+messagecollection-description": "استعلم MessageCollection حول الترجمات.",
+ "apihelp-query+messagecollection-summary": "استعلام MessageCollection حول الترجمات.",
+ "apihelp-query+messagecollection-param-group": "مجموعة الرسائل.",
+ "apihelp-query+messagecollection-param-language": "كود اللغة.",
+ "apihelp-query+messagecollection-param-limit": "كم عدد الرسائل ليتم عرضها (بعد الفلترة).",
+ "apihelp-query+messagecollection-param-offset": "عدد صحيح أو مفتاح الإزاحة للبدء.",
+ "apihelp-query+messagecollection-param-filter": "فلاتر مموعات الرسائل. استخدم <kbd>!</kbd> لنفي الشرط. على سبيل المثال <kbd>!fuzzy</kbd> تعني اعرض فقط كل الرسائل ال non-fuzzy. الفلاتر يتم تطبيقها بالترتيب المعطى.\n;fuzzy:الرسائل بالوسم fuzzy.\n;optional:الرسائل التي ينبغي أن تتم ترجمتها فقط لو أن التغييرات ضرورية.\n;ignored:الرسائل التي لا ينبغي أن تتم ترجمتها أبدا.\n;hastranslation:الرسائل التي لديها ترجمة بغض النظر عما إذا كانت fuzzy أم لا.\n;translated:الرسائل التي لديها ترجمة ليست fuzzy.\n;changed:الرسائل التي تمت ترجمتها أو تغييرها منذ آخر تصدير.\n;reviewer&#58;N:الرسائل حيث رقم المستخدم <kbd>N</kbd> ضمن المراجعين.\n;last-translator&#58;N:الرسائل حيث رقم المستخدم <kbd>N</kbd> هو آخر مترجم.",
+ "apihelp-query+messagecollection-param-prop": "أي الخصائص للحصول عليها:\n;definition:تعريف الرسالة.\n;translation:الترجمة الحالية (بدون سلسلة الحروف $1، استخدم الوسوم للتحقق من الترجمات غير المحدثة أو المكسورة).\n;tags:وسوم الرسالة، مثل optional, ignored و fuzzy.\n;properties:خصائص الرسالة، مثل status, revision, last-translator. يمكن أن تختلف بين الرسائل.\n;revision:<span class=\"deprecated\">Deprecated!</span> استخدم $2prop=properties.",
+ "apihelp-query+messagecollection-example-1": "قائمة اللغات المدعومة",
+ "apihelp-query+messagecollection-example-2": "قائمة بتعريفات الرسائل غير الاختيارية للمجموعة \"page-Example\"",
+ "apihelp-query+messagecollection-example-3": "قائمة بالرسائل الاختيارية بالفنلندية مع الوسوم للمجموعة \"page-Example\"",
+ "apihelp-query+messagecollection-example-4": "المزيد من المعلومات حول آخر مراجعات الترجمة للمجموعة \"page-Example\"",
+ "apihelp-query+messagegroups-description": "إرجاع المعلومات حول مجموعات الرسائل.\n\nلاحظ أن معامل uselang يؤثر على خرج الأجزاء المعتمدة على اللغة.",
+ "apihelp-query+messagegroups-summary": "إرجاع المعلومات حول مجموعات الرسائل.",
+ "apihelp-query+messagegroups-extended-description": "لاحظ أن الوسيط uselang يؤثر على إخراج الأجزاء المعتمدة على اللغة.",
+ "apihelp-query+messagegroups-param-depth": "عند استخدام صيغة الشجرة، حدد العمق لهذا العدد من المستويات. القيمة 0 تعني أنه لا توجد مجموعات فرعية معروضة. لو أن الحد تم الوصول إليه، فالخرج يحتوي على قيمة \"groupcount\"، والتي تحدد عدد الأبناء المباشرين.",
+ "apihelp-query+messagegroups-param-filter": "فقط أرجع الرسائل ذوات الأرقام التي تطابق واحدا أو أكثر من المدخلات المعطاة (case-insensitive, separated by pipes, * wildcard).",
+ "apihelp-query+messagegroups-param-format": "في صيغة الشجرة مجموعات الرسائل يمكن أن تتواجد في أماكن متعددة من الشجرة.",
+ "apihelp-query+messagegroups-param-iconsize": "الحجم المفضل لأيقونة المجموعة بالراستر.",
+ "apihelp-query+messagegroups-param-prop": "أي المعلومات المتعلقة بالترجمة للحصول عليها:\n;id:ضمن رقم المجموعة.\n;label:ضمن علامة المجموعة.\n;description:ضمن وصف المجموعة.\n;class:ضمن اسم الكلاس للمجموعة.\n;namespace:ضمن نطاق المجموعة. ليس كل المجموعات تنتمي لنطاق وحيد.\n;exists:ضمن خاصية وجود محسوبة ذاتيا للمجموعة.\n;icon:ضمن مسار لأيقونة المجموعة.\n;priority:ضمن حالة الأولوية مثل discouraged.\n;prioritylangs:ضمن اللغات المفضلة. لو غير مضبوط، فهذا يرجع false.\n;priorityforce:ضمن حالة الأولوية - هو إعداد لغات الأولوية إجباري.\n;workflowstates:ضمن حالات العمل لمجموعة الرسائل.",
+ "apihelp-query+messagegroups-param-root": "عند استخدام صيغة الشجرة، بدلا من البدء من المستوى الأعلى ابدأ من مجموعة الرسائل المعطاة، والت يجب أن تكون مجموعة رسائل مجمعة. عند استخدام الصيغة المسطحة فقط المجموعة المحددة يتم إرجاعها.",
+ "apihelp-query+messagegroups-example-1": "أظهر مجموعات الرسائل",
+ "apihelp-query+messagegroupstats-description": "استعلم عن إحصاءات مجموعة الرسائل.",
+ "apihelp-query+messagegroupstats-summary": "استعلم عن مجموعة الرسائل.",
+ "apihelp-query+messagegroupstats-param-timelimit": "الوقت الأقصى لإمضائه في حساب الإحصاءات المفقودة. لو صفر، فقط النتائج المخزنة من البداية سيتم إرجاعها.",
+ "apihelp-query+messagegroupstats-param-group": "معرف مجموعة الرسائل.",
+ "apihelp-query+messagegroupstats-example-1": "قائمة بإحصاءات إكمال الترجمة للمجموعة \"page-Example\"",
+ "apihelp-query+messagetranslations-description": "استعلم في كل الترجمات عن رسالة واحدة.",
+ "apihelp-query+messagetranslations-summary": "الاستعلام عن كل الترجمات لرسالة واحدة.",
+ "apihelp-query+messagetranslations-param-title": "العنوان الكامل لرسالة معروفة.",
+ "apihelp-query+messagetranslations-example-1": "قائمة بالترجمات في الويكي عن \"MediaWiki:January\"",
+ "apihelp-translatesandbox-description": "سجل الدخول وأدر المستخدمين في الملعب.",
+ "apihelp-translatesandbox-summary": "سجل الدخول وأدر المستخدمين في الملعب.",
+ "apihelp-translatesandbox-param-do": "ما يجب فعله.",
+ "apihelp-translatesandbox-param-userid": "أرقام المستخدمين للمستخدمين الذين تتم إدارتهم. استخدم 0 للإنشاء.",
+ "apihelp-translatesandbox-param-username": "اسم المستخدم عند إنشاء مستخدم.",
+ "apihelp-translatesandbox-param-password": "كلمة السر عند إنشاء المستخدم.",
+ "apihelp-translatesandbox-param-email": "البريد الإلكتروني عند إنشاء المستخدم.",
+ "apihelp-translationaids-description": "استعلم عن كل مساعدات الترجمة.",
+ "apihelp-translationaids-summary": "الاستعلام عن كل الترجمات.",
+ "apihelp-translationaids-param-title": "العنوان الكامل لرسالة معروفة.",
+ "apihelp-translationaids-param-group": "مجموعة الرسائل التي تنتمي الرسالة إليها. لو فارغة إذا سيتم استخدام المجموعة الأساسية.",
+ "apihelp-translationaids-param-prop": "ما هي مساعدات الترجمة للتضمين.",
+ "apihelp-translationaids-example-1": "اعرض المساعدات ل[[MediaWiki:January/fi]]",
+ "apihelp-translationreview-description": "علم على الترجمات كمراجعة.",
+ "apihelp-translationreview-summary": "علم مارك كمراجعة.",
+ "apihelp-translationreview-param-revision": "رقم المراجعة لمراجعتها.",
+ "apihelp-translationreview-example-1": "مراجعة المراجعة 1",
+ "apihelp-translationstash-description": "أضف الترجمات للستاش.",
+ "apihelp-translationstash-summary": "أضف ترجمات إلى stash.",
+ "apihelp-translationstash-param-subaction": "الفعل.",
+ "apihelp-translationstash-param-title": "عنوان صفحة وحدة الترجمة.",
+ "apihelp-translationstash-param-translation": "الترجمة بواسطة المستخدم.",
+ "apihelp-translationstash-param-metadata": "كائن JSON.",
+ "apihelp-translationstash-param-username": "اختياريا المستخدم للحصول على الستاش الخاص به. فقط المستخدمون المخولون يمكنهم عمل هذا.",
+ "apihelp-translationstash-example-1": "أضف ترجمة للستاش ل[[MediaWiki:Jan/fi]]",
+ "apihelp-translationstash-example-2": "استعلم الستاش",
+ "apihelp-ttmserver-description": "استعلم عن الاقتراحات من ذاكرات الترجمة.",
+ "apihelp-ttmserver-summary": "استعلم عن الاقتراحات من ذاكرات الترجمة.",
+ "apihelp-ttmserver-param-service": "أي من خدمات الترجمة المتوفرة يتم استخدامها",
+ "apihelp-ttmserver-param-sourcelanguage": "كود اللغة للنص المصدر.",
+ "apihelp-ttmserver-param-targetlanguage": "كود اللغة للاقتراح.",
+ "apihelp-ttmserver-param-text": "النص لإيجاد الاقتراحات له.",
+ "apihelp-ttmserver-example-1": "الحصول على الاقتراحات لترجمة \"Help\" من الإنجليزية للألمانية",
+ "apihelp-searchtranslations-description": "ابحث في الترجمات.",
+ "apihelp-searchtranslations-summary": "بحث في الترجمات.",
+ "apihelp-searchtranslations-param-service": "أي من خدمات الترجمة المتوفرة يتم استخدامها.",
+ "apihelp-searchtranslations-param-query": "سلسلة الحروف للبحث عنها.",
+ "apihelp-searchtranslations-param-sourcelanguage": "كود اللغة للنص المصدر.",
+ "apihelp-searchtranslations-param-language": "كود اللغة للبحث في سلسلة الحروف عنه.",
+ "apihelp-searchtranslations-param-group": "رقم المجموعة للبحث عن سلسلة الحروف فيه.",
+ "apihelp-searchtranslations-param-filter": "فلتر حالة ترجمة الرسائل.",
+ "apihelp-searchtranslations-param-match": "طابق أي/كل كلمات البحث.",
+ "apihelp-searchtranslations-param-case": "بحث حساس (غير حساس) لحالة الحروف.",
+ "apihelp-searchtranslations-param-offset": "الإزاحة للترجمات.",
+ "apihelp-searchtranslations-param-limit": "حجم النتيجة.",
+ "apihelp-searchtranslations-example-1": "اعرض الترجمات للغة.",
+ "apihelp-searchtranslations-example-2": "اعرض الرسائل غير المترجمة التي تطابق الاستعلام في اللغة المصدر.",
+ "apihelp-translationcheck-description": "التحقق من صحة المدخلات المترجمة ضد مدققي الرسائل.",
+ "apihelp-translationcheck-summary": "التحقق من صحة الترجمات.",
+ "apihelp-translationcheck-param-title": "عنوان الصفحة بالنطاق ورمز اللغة.",
+ "apihelp-translationcheck-param-translation": "ترجمة للتحقق.",
+ "apierror-translate-duplicateaggregategroup": "مجموعة الرسائل موجودة بالفعل",
+ "apierror-translate-fuzzymessage": "لا يمكن مراجعة الترجمات الضبابية",
+ "apierror-translate-groupreviewdisabled": "مراجعة مجموعة الرسائل غير مستخدمة.",
+ "apierror-translate-invalidaggregategroup": "مجموعة رسائل مجمعة غير صالحة",
+ "apierror-translate-invalidaggregategroupname": "اسم مجموعة رسائل مجمعة غير صالح",
+ "apierror-translate-invalidgroup": "المجموعة غير موجودة أو غير صالحة",
+ "apierror-translate-invalidstate": "الحالة المطلوبة غير صالحة.",
+ "apierror-translate-invalidlanguage": "اللغة المطلوبة غير صالحة.",
+ "apierror-translate-invalidupdate": "تحديث غير صالح",
+ "apierror-translate-language-disabled": "الترجمة إلى $1 معطلة.",
+ "apierror-translate-language-disabled-reason": "الترجمة إلى $1 معطلة:$2",
+ "apierror-translate-language-disabled-source": "لغة المصدر لهذه المجموعة هي $1; يُرجَى تحديد لغة أخرى للترجمة إليها.",
+ "apierror-translate-nodynamicgroups": "مجموعات الرسائل الديناميكية غير مدعومة هنا",
+ "apierror-translate-nomessagefortitle": "العنوان لا يتوافق مع رسالة قابلة للترجمة",
+ "apierror-translate-notranslationservices": "لم يتم تكوين أية خدمات ترجمة عامة; يحتاج إداري الويكي إلى تعيين <var>$wgTranslateTranslationServices</var> بشكل مناسب قبل استخدام هذه الميزة.",
+ "apierror-translate-owntranslation": "لا يمكن مراجعة الترجمات الخاصة",
+ "apierror-translate-sandboxdisabled": "ميزة الملعب ليست قيد الاستخدام",
+ "apierror-translate-sandbox-invalidppassword": "كلمة سر خاطئة",
+ "apierror-translate-unknownmessage": "رسالة غير معروفة",
+ "apiwarn-translate-alreadyreviewedbyyou": "تم تعليمها كمراجعة من قبلك"
}
diff --git a/MLEB/Translate/i18n/api/ast.json b/MLEB/Translate/i18n/api/ast.json
index d118a10c..511ed458 100644
--- a/MLEB/Translate/i18n/api/ast.json
+++ b/MLEB/Translate/i18n/api/ast.json
@@ -1,10 +1,13 @@
{
"@metadata": {
"authors": [
- "Xuacu"
+ "Xuacu",
+ "Fitoschido"
]
},
"apihelp-aggregategroups-description": "Xestionar grupos de mensaxes agregaos.\n\nPues amestar y desaniciar grupos de mensaxes agregaos y asociar o disociar grupos de mensaxes d'ellos (unu de cada vez).",
+ "apihelp-aggregategroups-summary": "Alministrar grupos de mensaxes agregaos.",
+ "apihelp-aggregategroups-extended-description": "Pues amestar y desaniciar grupos de mensaxes agregaos y asociar o disociar grupos de mensaxes d'ellos (unu de cada vez).",
"apihelp-aggregategroups-param-do": "Qué facer col grupu de mensaxes agregaos.",
"apihelp-aggregategroups-param-aggregategroup": "ID del grupu de mensaxes agregaos.",
"apihelp-aggregategroups-param-group": "ID del grupu de mensaxes.",
@@ -12,15 +15,116 @@
"apihelp-aggregategroups-param-groupdescription": "Descripción del grupu de mensaxes agregaos.",
"apihelp-aggregategroups-example-1": "Asociar un grupu",
"apihelp-groupreview-description": "Configurar los estaos del fluxu de trabayu del grupu de mensaxes.",
+ "apihelp-groupreview-summary": "Configurar los estaos del fluxu de trabayu del grupu de mensaxes.",
"apihelp-groupreview-param-group": "Grupu de mensaxes.",
"apihelp-groupreview-param-language": "Códigu de llingua.",
"apihelp-groupreview-param-state": "El nuevu estáu pal grupu.",
+ "apihelp-groupreview-example-1": "Marcar l'estáu de la traducción al alemán del grupu de mensaxes «grupu-Exemplu» como preparáu",
+ "apihelp-query+languagestats-description": "Consultar les estadístiques de llingua.",
+ "apihelp-query+languagestats-summary": "Consultar les estadístiques de llingua.",
+ "apihelp-query+languagestats-param-timelimit": "Tiempu máximu pa pasar calculando les estadístiques que falten. Si ye cero, sólo se devuelven los resultaos guardaos en caché dende'l principiu.",
"apihelp-query+languagestats-param-language": "Códigu de llingua.",
"apihelp-query+languagestats-example-1": "Llista d'estadístiques de completáu de traducciones pal finés.",
"apihelp-query+messagecollection-description": "Consultar MessageCollection sobro les traducciones.",
+ "apihelp-query+messagecollection-summary": "Consultar MessageCollection sobro les traducciones.",
"apihelp-query+messagecollection-param-group": "Grupu de mensaxes.",
"apihelp-query+messagecollection-param-language": "Códigu de llingua.",
"apihelp-query+messagecollection-param-limit": "Cantidá de mensaxes a amosar (después de filtriar).",
+ "apihelp-query+messagecollection-param-offset": "Enteru o ralura de clave pa principiar.",
+ "apihelp-query+messagecollection-param-filter": "Filtros de coleiciones de mensaxes. Usa <kbd>!</kbd> pa negar la condición. Por exemplu, <kbd>!fuzzy</kbd> quier dicir facer sólo la llista de tolos mensaxes non aproximaos. Los filtros aplíquense nel orde dau.\n;fuzzy:Mensaxes cola etiqueta fuzzy (aproximao).\n;optional:Mensaxes que tienen de traducise sólo si los cambios son necesarios.\n;ignored:Mensaxes que nunca se traducen.\n;hastranslation:Mensaxes que tienen una traducción seya aproximada o non.\n;translated:Mensaxes que tienen una traducción que nun ye aproximada.\n;changed:Mensaxes traducíos o cambiaos dende la última esportación.\n;reviewer&#58;N:Mensaxes onde'l númberu d'usuariu <kbd>N</kbd> ta ente los revisores.\n;last-translator&#58;N:Mensaxes onde'l númberu d'usuariu <kbd>N</kbd> ye l'últimu traductor.",
+ "apihelp-query+messagecollection-param-prop": "Qué propiedaes obtener:\n;definition:Definición del mensaxe.\n;translation:Traducción actual (sin cadena de testu $1 si hai dalguna, usa les etiquetes pa buscar traducciones anticuaes o frañaes)\n;tags:Etiquetes del mensaxe, como opcional, inoráu y aproximáu.\n;properties:Propiedaes del mensaxe, como estáu, revisión, últimu traductor. Pue variar ente mensaxes.\n;revision:<span class=\"deprecated\">¡Anticuáu!</span> Usa $2prop=properties.",
"apihelp-query+messagecollection-example-1": "Llista de llingües con encontu",
- "apihelp-translationstash-param-subaction": "Aición."
+ "apihelp-query+messagecollection-example-2": "Llista de definiciones obligatories de mensaxes del grupu «page-Exemplu»",
+ "apihelp-query+messagecollection-example-3": "Llista de mensaxes opcionales en finlandés con etiquetes pal grupu «page-Exemplu»",
+ "apihelp-query+messagecollection-example-4": "Más información tocante a les últimes revisiones de traducciones pal grupu «page-Exemplu»",
+ "apihelp-query+messagegroups-description": "Devuelve información sobro grupos de mensaxes.\n\nTen en cuenta que'l parámetru «uselang» afeuta a la salida de les partes dependientes de la llingua.",
+ "apihelp-query+messagegroups-summary": "Devolver información de los grupos de mensaxes.",
+ "apihelp-query+messagegroups-extended-description": "Alvierte que'l parámetru uselang afeuta a la salida de les páxines dependientes de la llingua.",
+ "apihelp-query+messagegroups-param-depth": "Al utilizar el formatu d'árbol, llendar la fondura a esta cantidá de niveles. El valor 0 significa que nun s'amuesen subgrupos. Si se llega a la llende, el resultáu incluye un valor de \"cuenta de grupos\", qu'indica'l númberu de fíos direutos.",
+ "apihelp-query+messagegroups-param-filter": "Devolver sólo mensaxes con IDs que casen con una o más de les entraes daes (sin diferenciar mayúscules, separaos por barres verticales, * ye'l comodín).",
+ "apihelp-query+messagegroups-param-format": "Nel formatu d'árbol, los grupos de mensaxes pueden existir en múltiples llugares del árbol.",
+ "apihelp-query+messagegroups-param-iconsize": "Tamañu preferíu del iconu rasterizáu del grupu.",
+ "apihelp-query+messagegroups-param-prop": "Que información de la traducción algamar:\n;id:Incluye la ID del grupu.\n;label:Incluye la etiqueta del grupu.\n;description:Incluye la descripción del grupu.\n;class:Incluye'l nome de clase del grupu.\n;namespace:Incluye l'espaciu de nomes del grupu. Non tolos grupos pertenecen a un únicu espaciu de nomes.\n;exists:Incluye la propiedá auto-calculada d'esistencia del grupu.\n;icon:Incluye les URL al iconu del grupu.\n;priority:Incluye l'estáu de prioridá como desaconseyao.\n;prioritylangs:Incluye les llingües preferíes. Si nun tien nengún valor, devuelve falso.\n;priorityforce:Incluye l'estáu de prioridá - ye la configuración de prioridá de llingües forzada.\n;workflowstates:Incluye los estaos del fluxu de trabayu pa los mensaxes del grupu.",
+ "apihelp-query+messagegroups-param-root": "Al usar el formatu d'árbol, en llugar de principiar pol nivel superior, principiar pol grupu de mensaxes indicáu, que tien de ser un grupu de mensaxes agregáu. Al usar el formatu planu sólo se devuelve'l grupu especificáu.",
+ "apihelp-query+messagegroups-example-1": "Amosar grupos de mensaxes",
+ "apihelp-query+messagegroupstats-description": "Consultar les estadístiques del grupu de mensaxes.",
+ "apihelp-query+messagegroupstats-summary": "Consultar les estadístiques del grupu de mensaxes.",
+ "apihelp-query+messagegroupstats-param-timelimit": "Tiempu máximu pa pasar calculando les estadístiques que falten. Si ye cero, sólo se devuelven los resultaos guardaos en caché dende'l principiu.",
+ "apihelp-query+messagegroupstats-param-group": "ID del grupu de mensaxes.",
+ "apihelp-query+messagegroupstats-example-1": "Llista d'estadístiques d'acabamientu de traducciones pal grupu \"page-Example\"",
+ "apihelp-query+messagetranslations-description": "Consultar toles traducciones pa un únicu mensaxe.",
+ "apihelp-query+messagetranslations-summary": "Consultar toles traducciones pa un únicu mensaxe.",
+ "apihelp-query+messagetranslations-param-title": "Títulu completu d'un mensaxe conocíu.",
+ "apihelp-query+messagetranslations-example-1": "Llista de traducciones na wiki pa \"MediaWiki:January\"",
+ "apihelp-translatesandbox-description": "Rexistrar y xestionar usuarios aislaos (en \"sandbox\").",
+ "apihelp-translatesandbox-summary": "Rexistrar y xestionar usuarios aisllaos (en \"sandbox\").",
+ "apihelp-translatesandbox-param-do": "Qué facer.",
+ "apihelp-translatesandbox-param-userid": "IDs de los usuarios que tan siendo xestionaos. Usa 0 pa les creaciones.",
+ "apihelp-translatesandbox-param-username": "Nome d'usuariu al crear l'usuariu.",
+ "apihelp-translatesandbox-param-password": "Contraseña al crear l'usuariu.",
+ "apihelp-translatesandbox-param-email": "Corréu electrónicu al crear l'usuariu.",
+ "apihelp-translationaids-description": "Consultar toles ayudes a la traducción.",
+ "apihelp-translationaids-summary": "Consultar toles ayudes a la traducción.",
+ "apihelp-translationaids-param-title": "Títulu completu d'un mensaxe conocíu.",
+ "apihelp-translationaids-param-group": "Grupu de mensaxes al que pertenez el mensaxe. Si ta vacío, usase'l grupu primariu.",
+ "apihelp-translationaids-param-prop": "Qué ayudes a la traducción incluir.",
+ "apihelp-translationaids-example-1": "Ver les ayudes pa [[MediaWiki:January/fi]]",
+ "apihelp-translationreview-description": "Marcar les traducciones como revisaes.",
+ "apihelp-translationreview-summary": "Marcar les traducciones como revisaes.",
+ "apihelp-translationreview-param-revision": "El númberu de revisión a revisar.",
+ "apihelp-translationreview-example-1": "Revisar revisión 1",
+ "apihelp-translationstash-description": "Amestar traducciones a la reserva.",
+ "apihelp-translationstash-summary": "Amestar traducciones a la reserva.",
+ "apihelp-translationstash-param-subaction": "Aición.",
+ "apihelp-translationstash-param-title": "Títulu de la páxina de la unidá de traducción.",
+ "apihelp-translationstash-param-translation": "Traducción fecha pol usuariu.",
+ "apihelp-translationstash-param-metadata": "Oxetu JSON.",
+ "apihelp-translationstash-param-username": "Opcionalmente, l'usuariu del que coyer la reserva. Esto sólo pueden facelo los usuarios privilexaos.",
+ "apihelp-translationstash-example-1": "Amestar una traducción a la reserva pa [[MediaWiki:Jan/fi]]",
+ "apihelp-translationstash-example-2": "Consultar la reserva",
+ "apihelp-ttmserver-description": "Consultar les suxerencies de les memories de traducción.",
+ "apihelp-ttmserver-summary": "Consultar les suxerencies de les memories de traducción.",
+ "apihelp-ttmserver-param-service": "Que servicios de traducción usar d'ente los disponibles.",
+ "apihelp-ttmserver-param-sourcelanguage": "El códigu de llingua del testu fonte.",
+ "apihelp-ttmserver-param-targetlanguage": "El códigu de llingua de la suxerencia.",
+ "apihelp-ttmserver-param-text": "El testu pal qu'alcontrar suxerencies.",
+ "apihelp-ttmserver-example-1": "Recibir suxerencies pa traducir «Help» del inglés al finés",
+ "apihelp-searchtranslations-description": "Buscar traducciones.",
+ "apihelp-searchtranslations-summary": "Buscar traducciones.",
+ "apihelp-searchtranslations-param-service": "Que servicios de traducción usar d'ente los disponibles.",
+ "apihelp-searchtranslations-param-query": "La cadena que buscar.",
+ "apihelp-searchtranslations-param-sourcelanguage": "El códigu de llingua del testu fonte.",
+ "apihelp-searchtranslations-param-language": "El códigu de llingua pal que buscar la cadena.",
+ "apihelp-searchtranslations-param-group": "La id de grupu nel que buscar la cadena.",
+ "apihelp-searchtranslations-param-filter": "Filtru d'estáu de traducción del mensaxe",
+ "apihelp-searchtranslations-param-match": "Coincide con cualquier/toles palabres de busca.",
+ "apihelp-searchtranslations-param-case": "Coincidir (o non) les mayúscules.",
+ "apihelp-searchtranslations-param-offset": "Desplazamientu pa les traducciones.",
+ "apihelp-searchtranslations-param-limit": "Tamañu del resultáu.",
+ "apihelp-searchtranslations-example-1": "Amosar les traducciones de la llingua.",
+ "apihelp-searchtranslations-example-2": "Amosar los mensaxes sin traducir que casen cola consulta na llingua orixinal",
+ "apihelp-translationcheck-description": "Validar la entrada de traducción dada escontra comprobadores de mensaxes.",
+ "apihelp-translationcheck-summary": "Validar traducciones.",
+ "apihelp-translationcheck-param-title": "Títulu de páxina con espaciu de nomes y códigu de llingua.",
+ "apihelp-translationcheck-param-translation": "La traducción a validar.",
+ "apierror-translate-duplicateaggregategroup": "El grupu de mensaxes yá existe",
+ "apierror-translate-fuzzymessage": "Nun pueden revisase les traducciones aproximaes",
+ "apierror-translate-groupreviewdisabled": "La revisión del grupu de mensaxes nun ta n'usu.",
+ "apierror-translate-invalidaggregategroup": "Grupu de mensaxes agregaos inválidu",
+ "apierror-translate-invalidaggregategroupname": "Nome de grupu de mensaxes agregaos inválidu",
+ "apierror-translate-invalidgroup": "El grupu nun esiste o nun ye válidu",
+ "apierror-translate-invalidstate": "L'estáu solicitáu nun ye válidu.",
+ "apierror-translate-invalidlanguage": "La llingua solicitada ye inválida.",
+ "apierror-translate-invalidupdate": "Anovamientu inválidu",
+ "apierror-translate-language-disabled": "La traducción a $1 ta desactivada",
+ "apierror-translate-language-disabled-reason": "La traducción a $1 ta desactivada: $2",
+ "apierror-translate-language-disabled-source": "L'idioma orixinal d'esti grupu ye $1. Escueye otru idioma al que traducir.",
+ "apierror-translate-nodynamicgroups": "Nun s'almiten equí los grupos de mensaxes dinámicos",
+ "apierror-translate-nomessagefortitle": "El títulu nun casa con un mensaxe traducible",
+ "apierror-translate-notranslationservices": "Nun se configuró nengún serviciu públicu de traducciones. L'alministrador de la wiki tien de configurar <var>$wgTranslateTranslationServices</var> afechiscamente pa poder utilizar esta función.",
+ "apierror-translate-owntranslation": "Nun pueden revisase les traducciones propies",
+ "apierror-translate-sandboxdisabled": "La función de zona de pruebes nun ta n'usu",
+ "apierror-translate-sandbox-invalidppassword": "Contraseña inválida",
+ "apierror-translate-unknownmessage": "Mensaxe desconocíu",
+ "apiwarn-translate-alreadyreviewedbyyou": "Yá ta marcada como revisada por ti"
}
diff --git a/MLEB/Translate/i18n/api/ca.json b/MLEB/Translate/i18n/api/ca.json
index 790ef4a9..774811b1 100644
--- a/MLEB/Translate/i18n/api/ca.json
+++ b/MLEB/Translate/i18n/api/ca.json
@@ -1,7 +1,8 @@
{
"@metadata": {
"authors": [
- "Alvaro Vidal-Abarca"
+ "Alvaro Vidal-Abarca",
+ "Fitoschido"
]
},
"apihelp-aggregategroups-example-1": "Associar un grup",
@@ -19,5 +20,6 @@
"apihelp-translationstash-param-metadata": "Objecte JSON.",
"apihelp-ttmserver-param-targetlanguage": "Un codi d'idioma de la proposta.",
"apihelp-ttmserver-param-text": "El text per trobar suggeriments.",
- "apihelp-ttmserver-example-1": "Obtenir suggeriments per a la traducció de \"Ajuda\" de l'anglès al finès"
+ "apihelp-ttmserver-example-1": "Obtenir suggeriments per a la traducció de \"Ajuda\" de l'anglès al finès",
+ "apierror-translate-sandbox-invalidppassword": "La contrasenya no és vàlida"
}
diff --git a/MLEB/Translate/i18n/api/de.json b/MLEB/Translate/i18n/api/de.json
index 7e8b0255..84cb0129 100644
--- a/MLEB/Translate/i18n/api/de.json
+++ b/MLEB/Translate/i18n/api/de.json
@@ -1,27 +1,100 @@
{
"@metadata": {
"authors": [
- "Metalhead64"
+ "Metalhead64",
+ "Colfin 96",
+ "Ljonka",
+ "Predatorix"
]
},
+ "apihelp-aggregategroups-summary": "Verwaltet zusammengefasste Nachrichtengruppen.",
+ "apihelp-aggregategroups-param-do": "Was mit der zusammengefassten Nachrichtengruppe getan werden soll.",
+ "apihelp-aggregategroups-param-aggregategroup": "Kennung der zusammengefassten Nachrichtengruppe.",
"apihelp-aggregategroups-param-group": "Nachrichtengruppenkennung.",
+ "apihelp-aggregategroups-param-groupname": "Name der zusammengefassten Nachrichtengruppe.",
+ "apihelp-aggregategroups-param-groupdescription": "Beschreibung der zusammengefassten Nachrichtengruppe.",
+ "apihelp-aggregategroups-example-1": "Verknüpft eine Gruppe",
+ "apihelp-groupreview-param-group": "Nachrichtengruppe.",
+ "apihelp-groupreview-param-language": "Sprachcode.",
+ "apihelp-groupreview-param-state": "Der neue Status für die Gruppe.",
+ "apihelp-query+languagestats-description": "Ruft Sprachstatistiken ab.",
"apihelp-query+languagestats-param-language": "Sprachcode.",
+ "apihelp-query+messagecollection-description": "Ruft die Nachrichtensammlung über Übersetzungen ab.",
"apihelp-query+messagecollection-param-group": "Nachrichtengruppe.",
+ "apihelp-query+messagecollection-param-language": "Sprachcode.",
+ "apihelp-query+messagecollection-param-limit": "Wie viele Nachrichten angezeigt werden sollen (nach der Filterung).",
+ "apihelp-query+messagecollection-param-offset": "Ganzzahl oder Schlüsselversatz für den Start.",
"apihelp-query+messagecollection-example-1": "Liste unterstützter Sprachen",
+ "apihelp-query+messagecollection-example-2": "Listet nicht-optionale Nachrichtendefinitionen für die Gruppe „page-Example“ auf",
+ "apihelp-query+messagecollection-example-3": "Listet optionale Nachrichten in Finnisch mit Markierungen für die Gruppe „page-Example“ auf",
+ "apihelp-query+messagecollection-example-4": "Weitere Informationen über die aktuellsten Übersetzungsversionen für die Gruppe „page-Example“",
+ "apihelp-query+messagegroups-param-iconsize": "Bevorzugte Größe des Rastergruppensymbols.",
"apihelp-query+messagegroups-example-1": "Nachrichtengruppen anzeigen",
+ "apihelp-query+messagegroupstats-description": "Ruft Statistiken zu Nachrichtengruppen ab.",
"apihelp-query+messagegroupstats-param-group": "Nachrichtengruppenkennung.",
+ "apihelp-query+messagegroupstats-example-1": "Liste von Übersetzungs-Vollständigkeits-Statistiken für die Gruppe „page-Example“",
+ "apihelp-query+messagetranslations-description": "Ruft alle Übersetzungen für eine einzelne Nachricht ab.",
"apihelp-query+messagetranslations-param-title": "Vollständiger Titel einer bekannten Nachricht.",
- "apihelp-query+messagetranslations-example-1": "Liste der Übersetzungen im Wiki für MediaWiki:January",
+ "apihelp-query+messagetranslations-example-1": "Liste der Übersetzungen im Wiki für „MediaWiki:January“",
+ "apihelp-translatesandbox-description": "Registriert und verwaltet Spielwiesenbenutzer.",
+ "apihelp-translatesandbox-param-do": "Was ist zu tun?",
+ "apihelp-translatesandbox-param-userid": "Kennungen der zu verwaltenden Benutzer. 0 für Erstellungen verwenden.",
"apihelp-translatesandbox-param-username": "Benutzername beim Erstellen des Benutzers.",
"apihelp-translatesandbox-param-password": "Passwort beim Erstellen des Benutzers.",
"apihelp-translatesandbox-param-email": "E-Mail beim Erstellen des Benutzers.",
+ "apihelp-translationaids-description": "Ruft alle Übersetzungshilfen ab.",
"apihelp-translationaids-param-title": "Vollständiger Titel einer bekannten Nachricht.",
+ "apihelp-translationaids-param-prop": "Die einzuschließenden Übersetzungshelfer.",
"apihelp-translationaids-example-1": "Hilfen für [[MediaWiki:January/fi]] anzeigen",
+ "apihelp-translationreview-description": "Markiert Übersetzungen als überprüft.",
+ "apihelp-translationreview-param-revision": "Die zu überprüfende Versionsnummer.",
"apihelp-translationreview-example-1": "Überprüft die Version 1",
"apihelp-translationstash-description": "Fügt Übersetzungen dem Speicher hinzu.",
"apihelp-translationstash-param-subaction": "Aktion.",
+ "apihelp-translationstash-param-title": "Titel der Übersetzungseinheitsseite.",
"apihelp-translationstash-param-translation": "Übersetzung erstellt vom Benutzer.",
+ "apihelp-translationstash-param-metadata": "JSON-Objekt.",
"apihelp-translationstash-example-1": "Fügt eine Übersetzung zum Übersetzungsspeicher für [[MediaWiki:Jan/fi]] hinzu",
- "apihelp-ttmserver-param-sourcelanguage": "Ein Sprachcode des Quelltextes.",
- "apihelp-ttmserver-param-text": "Der Text, für den Vorschläge gefunden werden sollen."
+ "apihelp-translationstash-example-2": "Ruft den Speicher ab.",
+ "apihelp-ttmserver-description": "Frage Vorschläge aus den gespeicherten Übersetzungen ab.",
+ "apihelp-ttmserver-param-service": "Welche der verfügbaren Übersetzungsdienste verwendet werden sollen.",
+ "apihelp-ttmserver-param-sourcelanguage": "Der Sprachcode des Quelltextes.",
+ "apihelp-ttmserver-param-targetlanguage": "Der Sprachcode des Vorschlags.",
+ "apihelp-ttmserver-param-text": "Der Text, für den Vorschläge gefunden werden sollen.",
+ "apihelp-ttmserver-example-1": "Erhalte Vorschläge für die Übersetzung von \"Help\" aus dem Englischen ins Finnische",
+ "apihelp-searchtranslations-description": "Übersetzungen suchen.",
+ "apihelp-searchtranslations-param-service": "Welcher der verfügbaren Übersetzungsdienste genutzt werden sollte.",
+ "apihelp-searchtranslations-param-query": "Die Zeichenfolge, nach der gesucht werden soll.",
+ "apihelp-searchtranslations-param-sourcelanguage": "Der Sprachcode des Quelltextes.",
+ "apihelp-searchtranslations-param-language": "Der Sprachcode, in dem die Zeichenfolge gesucht werden soll.",
+ "apihelp-searchtranslations-param-group": "Die Gruppenkennung, in der die Zeichenfolge gesucht werden soll.",
+ "apihelp-searchtranslations-param-filter": "Nachrichtenübersetzungsstatusfilter.",
+ "apihelp-searchtranslations-param-match": "Nach allen Wörtern suchen.",
+ "apihelp-searchtranslations-param-case": "Suche (un)abhängig von Groß- und Kleinschreibung.",
+ "apihelp-searchtranslations-param-offset": "Versatz für die Übersetzungen.",
+ "apihelp-searchtranslations-param-limit": "Größe des Ergebnisses.",
+ "apihelp-searchtranslations-example-1": "Übersetzungen für die Sprache anzeigen.",
+ "apihelp-translationcheck-summary": "Validiert Übersetzungen.",
+ "apihelp-translationcheck-param-title": "Seitentitel mit Namensraum und Sprachcode.",
+ "apihelp-translationcheck-param-translation": "Die zu validierende Übersetzung.",
+ "apierror-translate-duplicateaggregategroup": "Die Nachrichtengruppe ist bereits vorhanden",
+ "apierror-translate-fuzzymessage": "Veraltete Übersetzungen können nicht überprüft werden",
+ "apierror-translate-groupreviewdisabled": "Die Nachrichtengruppenüberprüfung ist nicht in Verwendung.",
+ "apierror-translate-invalidaggregategroup": "Ungültige zusammengefasste Nachrichtengruppe",
+ "apierror-translate-invalidaggregategroupname": "Ungültiger zusammengefasster Nachrichtengruppenname",
+ "apierror-translate-invalidgroup": "Die Gruppe ist nicht vorhanden oder ist ungültig",
+ "apierror-translate-invalidstate": "Der angeforderte Status ist ungültig.",
+ "apierror-translate-invalidlanguage": "Die angeforderte Sprache ist ungültig.",
+ "apierror-translate-invalidupdate": "Ungültige Aktualisierung",
+ "apierror-translate-language-disabled": "Übersetzungen nach $1 sind deaktiviert.",
+ "apierror-translate-language-disabled-reason": "Übersetzungen nach $1 sind deaktiviert: $2",
+ "apierror-translate-language-disabled-source": "Die Quellsprache dieser Nachrichtengruppe ist $1. Bitte wähle eine andere Sprache zur Übersetzung aus.",
+ "apierror-translate-nodynamicgroups": "Dynamische Nachrichtengruppen werden hier nicht unterstützt",
+ "apierror-translate-nomessagefortitle": "Der Titel entspricht nicht einer übersetzbaren Nachricht",
+ "apierror-translate-notranslationservices": "Es wurden keine öffentlichen Übersetzungsdienste konfiguriert. Der Administrator des Wikis muss <var>$wgTranslateTranslationServices</var> passend festlegen, bevor diese Funktion verwendet werden kann.",
+ "apierror-translate-owntranslation": "Eigene Übersetzungen können nicht überprüft werden",
+ "apierror-translate-sandboxdisabled": "Die Spielwiesenfunktion ist nicht in Verwendung",
+ "apierror-translate-sandbox-invalidppassword": "Ungültiges Passwort",
+ "apierror-translate-unknownmessage": "Unbekannte Nachricht",
+ "apiwarn-translate-alreadyreviewedbyyou": "Von dir bereits als überprüft markiert"
}
diff --git a/MLEB/Translate/i18n/api/en.json b/MLEB/Translate/i18n/api/en.json
index 8c18b516..cd4dd22a 100644
--- a/MLEB/Translate/i18n/api/en.json
+++ b/MLEB/Translate/i18n/api/en.json
@@ -3,7 +3,9 @@
"authors": [
]
},
- "apihelp-aggregategroups-description": "Manage aggregate message groups.\n\nYou can add and remove aggregate messagegroups and associate or dissociate message groups from them (one at a time).",
+ "apihelp-aggregategroups-description": "Manage aggregate message groups.\n\nYou can add and remove aggregate message groups and associate or dissociate message groups from them (one at a time).",
+ "apihelp-aggregategroups-summary": "Manage aggregate message groups.",
+ "apihelp-aggregategroups-extended-description": "You can add and remove aggregate message groups and associate or dissociate message groups from them (one at a time).",
"apihelp-aggregategroups-param-do": "What to do with aggregate message group.",
"apihelp-aggregategroups-param-aggregategroup": "Aggregate message group ID.",
"apihelp-aggregategroups-param-group": "Message group ID.",
@@ -11,60 +13,66 @@
"apihelp-aggregategroups-param-groupdescription": "Aggregate message group description.",
"apihelp-aggregategroups-example-1": "Associate a group",
"apihelp-groupreview-description": "Set message group workflow states.",
+ "apihelp-groupreview-summary": "Set message group workflow states.",
"apihelp-groupreview-param-group": "Message group.",
"apihelp-groupreview-param-language": "Language code.",
"apihelp-groupreview-param-state": "The new state for the group.",
- "apihelp-groupreview-example-1": "Mark group \"group-Example\" as ready for German",
- "apihelp-hardmessages-description": "Mark translations hard.",
- "apihelp-hardmessages-param-title": "The title of the message to mark hard.",
- "apihelp-hardmessages-example-1": "Mark \"SampleTitle\" as hard",
+ "apihelp-groupreview-example-1": "Mark the state of the German translation for the message group \"group-Example\" as ready",
"apihelp-query+languagestats-description": "Query language stats.",
+ "apihelp-query+languagestats-summary": "Query language stats.",
"apihelp-query+languagestats-param-timelimit": "Maximum time to spend calculating missing statistics. If zero, only the cached results from the beginning are returned.",
"apihelp-query+languagestats-param-language": "Language code.",
"apihelp-query+languagestats-example-1": "List of translation completion statistics for Finnish",
"apihelp-query+messagecollection-description": "Query MessageCollection about translations.",
+ "apihelp-query+messagecollection-summary": "Query MessageCollection about translations.",
"apihelp-query+messagecollection-param-group": "Message group.",
"apihelp-query+messagecollection-param-language": "Language code.",
"apihelp-query+messagecollection-param-limit": "How many messages to show (after filtering).",
"apihelp-query+messagecollection-param-offset": "Integer or key offset for start.",
- "apihelp-query+messagecollection-param-filter": "Message collection filters. Use ! to negate condition. For example !fuzzy means list only all non-fuzzy messages. Filters are applied in the order given.\n;fuzzy:Messages with fuzzy tag.\n;optional:Messages which should be translated only if changes are necessary.\n;ignored:Messages which are never translated.\n;hastranslation:Messages which have a translation regardless if it is fuzzy or not.\n;translated:Messages which have a translation which is not fuzzy.\n;changed:Messages which has been translated or changed since last export.\n;reviewer&#58;#:Messages where given user ID # is among reviewers.\n;last-translator&#58;#:Messages where given user ID # is the last translator.",
+ "apihelp-query+messagecollection-param-filter": "Message collection filters. Use <kbd>!</kbd> to negate condition. For example <kbd>!fuzzy</kbd> means list only all non-fuzzy messages. Filters are applied in the order given.\n;fuzzy:Messages with fuzzy tag.\n;optional:Messages which should be translated only if changes are necessary.\n;ignored:Messages which are never translated.\n;hastranslation:Messages which have a translation regardless if it is fuzzy or not.\n;translated:Messages which have a translation which is not fuzzy.\n;changed:Messages which have been translated or changed since last export.\n;reviewer&#58;N:Messages where the user number <kbd>N</kbd> is among reviewers.\n;last-translator&#58;N:Messages where the user number <kbd>N</kbd> is the last translator.",
"apihelp-query+messagecollection-param-prop": "Which properties to get:\n;definition:Message definition.\n;translation:Current translation (without $1 string if any, use the tags to check for outdated or broken translations).\n;tags:Message tags, like optional, ignored and fuzzy.\n;properties:Message properties, like status, revision, last-translator. Can vary between messages.\n;revision:<span class=\"deprecated\">Deprecated!</span> Use $2prop=properties.",
"apihelp-query+messagecollection-example-1": "List of supported languages",
- "apihelp-query+messagecollection-example-2": "List of non-optional message definitions for group page-Example",
- "apihelp-query+messagecollection-example-3": "List of optional messages in Finnish with tags for group page-Example",
- "apihelp-query+messagecollection-example-4": "More information about latest translation revisions for group page-Example",
+ "apihelp-query+messagecollection-example-2": "List of non-optional message definitions for the group \"page-Example\"",
+ "apihelp-query+messagecollection-example-3": "List of optional messages in Finnish with tags for the group \"page-Example\"",
+ "apihelp-query+messagecollection-example-4": "More information about latest translation revisions for the group \"page-Example\"",
"apihelp-query+messagegroups-description": "Return information about message groups.\n\nNote that the uselang parameter affects the output of language dependent parts.",
- "apihelp-query+messagegroups-param-depth": "When using the tree format, limit the depth to this many levels. Value 0 means that no subgroups are shown. If the limit is reached, a prop groupcount is added and it states the number of direct children.",
+ "apihelp-query+messagegroups-summary": "Return information about message groups.",
+ "apihelp-query+messagegroups-extended-description": "Note that the uselang parameter affects the output of language dependent parts.",
+ "apihelp-query+messagegroups-param-depth": "When using the tree format, limit the depth to this many levels. Value 0 means that no subgroups are shown. If the limit is reached, the output includes a \"groupcount\" value, which states the number of direct children.",
"apihelp-query+messagegroups-param-filter": "Only return messages with IDs that match one or more of the inputs given (case-insensitive, separated by pipes, * wildcard).",
- "apihelp-query+messagegroups-param-format": "In a tree format message groups can exist multiple places in the tree.",
+ "apihelp-query+messagegroups-param-format": "In the tree format message groups can exist in multiple places in the tree.",
"apihelp-query+messagegroups-param-iconsize": "Preferred size of rasterised group icon.",
"apihelp-query+messagegroups-param-prop": "What translation-related information to get:\n;id:Include ID of the group.\n;label:Include label of the group.\n;description:Include description of the group.\n;class:Include class name of the group.\n;namespace:Include namespace of the group. Not all groups belong to a single namespace.\n;exists:Include self-calculated existence property of the group.\n;icon:Include URLs to icon of the group.\n;priority:Include priority status like discouraged.\n;prioritylangs:Include preferred languages. If not set, this returns false.\n;priorityforce:Include priority status - is the priority languages setting forced.\n;workflowstates:Include the workflow states for the message group.",
"apihelp-query+messagegroups-param-root": "When using the tree format, instead of starting from top level start from the given message group, which must be an aggregate message group. When using flat format only the specified group is returned.",
"apihelp-query+messagegroups-example-1": "Show message groups",
"apihelp-query+messagegroupstats-description": "Query message group stats.",
+ "apihelp-query+messagegroupstats-summary": "Query message group stats.",
"apihelp-query+messagegroupstats-param-timelimit": "Maximum time to spend calculating missing statistics. If zero, only the cached results from the beginning are returned.",
"apihelp-query+messagegroupstats-param-group": "Message group ID.",
- "apihelp-query+messagegroupstats-example-1": "List of translation completion statistics for group page-Example",
+ "apihelp-query+messagegroupstats-example-1": "List of translation completion statistics for the group \"page-Example\"",
"apihelp-query+messagetranslations-description": "Query all translations for a single message.",
+ "apihelp-query+messagetranslations-summary": "Query all translations for a single message.",
"apihelp-query+messagetranslations-param-title": "Full title of a known message.",
- "apihelp-query+messagetranslations-example-1": "List of translations in the wiki for MediaWiki:January",
+ "apihelp-query+messagetranslations-example-1": "List of translations in the wiki for \"MediaWiki:January\"",
"apihelp-translatesandbox-description": "Signup and manage sandboxed users.",
+ "apihelp-translatesandbox-summary": "Signup and manage sandboxed users.",
"apihelp-translatesandbox-param-do": "What to do.",
"apihelp-translatesandbox-param-userid": "User IDs of the users being managed. Use 0 for creations.",
"apihelp-translatesandbox-param-username": "Username when creating user.",
"apihelp-translatesandbox-param-password": "Password when creating user.",
"apihelp-translatesandbox-param-email": "Email when creating user.",
- "apihelp-translateuser-description": "Translation related information about the user.",
- "apihelp-translateuser-example-1": "Show information about the user",
"apihelp-translationaids-description": "Query all translations aids.",
+ "apihelp-translationaids-summary": "Query all translations aids.",
"apihelp-translationaids-param-title": "Full title of a known message.",
"apihelp-translationaids-param-group": "Message group the message belongs to. If empty then primary group is used.",
"apihelp-translationaids-param-prop": "Which translation helpers to include.",
"apihelp-translationaids-example-1": "Show aids for [[MediaWiki:January/fi]]",
"apihelp-translationreview-description": "Mark translations reviewed.",
+ "apihelp-translationreview-summary": "Mark translations reviewed.",
"apihelp-translationreview-param-revision": "The revision number to review.",
"apihelp-translationreview-example-1": "Review revision 1",
"apihelp-translationstash-description": "Add translations to stash.",
+ "apihelp-translationstash-summary": "Add translations to stash.",
"apihelp-translationstash-param-subaction": "Action.",
"apihelp-translationstash-param-title": "Title of the translation unit page.",
"apihelp-translationstash-param-translation": "Translation made by the user.",
@@ -73,9 +81,50 @@
"apihelp-translationstash-example-1": "Add a translation to the stash for [[MediaWiki:Jan/fi]]",
"apihelp-translationstash-example-2": "Query the stash",
"apihelp-ttmserver-description": "Query suggestions from translation memories.",
+ "apihelp-ttmserver-summary": "Query suggestions from translation memories.",
"apihelp-ttmserver-param-service": "Which of the available translation services to use.",
- "apihelp-ttmserver-param-sourcelanguage": "A language code of the source text.",
- "apihelp-ttmserver-param-targetlanguage": "A language code of the suggestion.",
+ "apihelp-ttmserver-param-sourcelanguage": "The language code of the source text.",
+ "apihelp-ttmserver-param-targetlanguage": "The language code of the suggestion.",
"apihelp-ttmserver-param-text": "The text to find suggestions for.",
- "apihelp-ttmserver-example-1": "Get suggestions for translating \"Help\" from English to Finnish"
+ "apihelp-ttmserver-example-1": "Get suggestions for translating \"Help\" from English to Finnish",
+ "apihelp-searchtranslations-description": "Search translations.",
+ "apihelp-searchtranslations-summary": "Search translations.",
+ "apihelp-searchtranslations-param-service": "Which of the available translation services to use.",
+ "apihelp-searchtranslations-param-query": "The string to search for.",
+ "apihelp-searchtranslations-param-sourcelanguage": "The language code of the source text.",
+ "apihelp-searchtranslations-param-language": "The language code to search string for.",
+ "apihelp-searchtranslations-param-group": "The group ID to search string in.",
+ "apihelp-searchtranslations-param-filter": "Message translation status filter.",
+ "apihelp-searchtranslations-param-match": "Match any/all search words.",
+ "apihelp-searchtranslations-param-case": "Case (in)sensitive search.",
+ "apihelp-searchtranslations-param-offset": "Offset for the translations.",
+ "apihelp-searchtranslations-param-limit": "Size of the result.",
+ "apihelp-searchtranslations-example-1": "Show translations for the language.",
+ "apihelp-searchtranslations-example-2": "Show untranslated messages matching the query in the source language.",
+ "apihelp-translationcheck-description": "Validate given translation input against message checkers.",
+ "apihelp-translationcheck-summary": "Validate translations.",
+ "apihelp-translationcheck-param-title": "Page title with namespace and language code.",
+ "apihelp-translationcheck-param-translation": "The translation to validate.",
+ "apierror-translate-duplicateaggregategroup": "Message group already exists",
+ "apierror-translate-fuzzymessage": "Cannot review fuzzy translations",
+ "apierror-translate-groupreviewdisabled": "Message group review not in use.",
+ "apierror-translate-invalidaggregategroup": "Invalid aggregate message group",
+ "apierror-translate-invalidaggregategroupname": "Invalid aggregate message group name",
+ "apierror-translate-invalidfilter": "$1",
+ "apierror-translate-invalidgroup": "Group does not exist or invalid",
+ "apierror-translate-invalidstate": "The requested state is invalid.",
+ "apierror-translate-invalidlanguage": "The requested language is invalid.",
+ "apierror-translate-invalidupdate": "Invalid update",
+ "apierror-translate-language-disabled": "Translation to $1 is disabled.",
+ "apierror-translate-language-disabled-reason": "Translation to $1 is disabled: $2",
+ "apierror-translate-language-disabled-source": "The source language of this group is $1. Please select another language to translate into.",
+ "apierror-translate-nodynamicgroups": "Dynamic message groups are not supported here",
+ "apierror-translate-nomessagefortitle": "Title does not correspond to a translatable message",
+ "apierror-translate-notranslationservices": "No public translation services have been configured. The wiki administrator needs to set <var>$wgTranslateTranslationServices</var> appropriately before this feature can be used.",
+ "apierror-translate-owntranslation": "Cannot review own translations",
+ "apierror-translate-sandboxdisabled": "Sandbox feature is not in use",
+ "apierror-translate-sandbox-invalidparam": "$1",
+ "apierror-translate-sandbox-invalidppassword": "Invalid password",
+ "apierror-translate-unknownmessage": "Unknown message",
+ "apiwarn-translate-alreadyreviewedbyyou": "Already marked as reviewed by you"
}
diff --git a/MLEB/Translate/i18n/api/es.json b/MLEB/Translate/i18n/api/es.json
index 105f3533..879c404e 100644
--- a/MLEB/Translate/i18n/api/es.json
+++ b/MLEB/Translate/i18n/api/es.json
@@ -2,7 +2,10 @@
"@metadata": {
"authors": [
"Macofe",
- "Fitoschido"
+ "Fitoschido",
+ "Csbotero",
+ "Lemondoge",
+ "Dgstranz"
]
},
"apihelp-aggregategroups-description": "Administrar grupos de mensajes agregados.\n\nPuedes agregar y quitar grupos de mensajes agregados, y asociar o disociar a ellos grupos de mensajes (uno a la vez).",
@@ -12,52 +15,93 @@
"apihelp-aggregategroups-param-groupname": "Nombre del grupo de mensajes agregado.",
"apihelp-aggregategroups-param-groupdescription": "Descripción del grupo de mensajes agregado.",
"apihelp-aggregategroups-example-1": "Asociar un grupo",
+ "apihelp-groupreview-description": "Establecer los estados de flujo de trabajo de los grupos de mensajes.",
"apihelp-groupreview-param-group": "Grupo de mensajes.",
"apihelp-groupreview-param-language": "Código de idioma.",
"apihelp-groupreview-param-state": "El estado nuevo para el grupo.",
- "apihelp-groupreview-example-1": "Marcar al grupo \"grupo-Ejemplo\" como listo para el alemán",
+ "apihelp-groupreview-example-1": "Marcar como leído el estado de la traducción al alemán del grupo de mensajes \"group-Example\"",
"apihelp-query+languagestats-description": "Consultar estadísticas de idioma.",
"apihelp-query+languagestats-param-language": "Código de idioma.",
"apihelp-query+languagestats-example-1": "Lista de estadísticas de traducciones completadas en finés.",
+ "apihelp-query+messagecollection-description": "Consultar a MessageCollection acerca de las traducciones.",
"apihelp-query+messagecollection-param-group": "Grupo de mensajes.",
"apihelp-query+messagecollection-param-language": "Código de idioma.",
"apihelp-query+messagecollection-param-limit": "El número de mensajes que mostrar (después de filtrar).",
"apihelp-query+messagecollection-example-1": "Lista de idiomas admitidos",
+ "apihelp-query+messagecollection-example-2": "Lista de definiciones obligatorias de mensajes del grupo \"page-Example\"",
+ "apihelp-query+messagecollection-example-3": "Lista de mensajes opcionales en finlandés con etiquetas para el grupo \"page-Example\"",
+ "apihelp-query+messagecollection-example-4": "Más información acerca de las últimas revisiones de traducción para el grupo \"page-Example\"",
"apihelp-query+messagegroups-description": "Devolver información sobre grupos de mensajes.\n\nNota que el parámetro \"uselang\" afecta la salida de las partes dependientes del idioma.",
+ "apihelp-query+messagegroups-param-depth": "Cuando se utiliza el formato de árbol, limitar la profundidad a esta cantidad de niveles. El valor 0 significa que no se muestran subgrupos. Si se alcanza el límite, el resultado incluye un valor de \"cuenta de grupal\", que indica el número de hijos directos.",
+ "apihelp-query+messagegroups-param-root": "Cuando se utiliza el formato de árbol, en lugar de partir de nivel superior empezar desde el mensaje del grupo, que debe ser un agregado de mensaje de grupo. Cuando se utiliza plano formato de sólo el grupo especificado se devuelve.",
"apihelp-query+messagegroups-example-1": "Mostrar grupos de mensajes",
"apihelp-query+messagegroupstats-description": "Consultar estadísticas del grupo de mensajes.",
"apihelp-query+messagegroupstats-param-group": "Identificador del grupo de mensajes.",
- "apihelp-query+messagegroupstats-example-1": "Lista de estadísticas de finalización de traducciones para el grupo página-Ejemplo",
+ "apihelp-query+messagegroupstats-example-1": "Lista de estadísticas de finalización de traducciones para el grupo \"page-Example\"",
"apihelp-query+messagetranslations-description": "Consultar todas las traducciones para un único mensaje.",
"apihelp-query+messagetranslations-param-title": "Título completo de un mensaje conocido.",
- "apihelp-query+messagetranslations-example-1": "Lista de traducciones en el wiki de MediaWiki:January",
+ "apihelp-query+messagetranslations-example-1": "Lista de traducciones en el wiki de \"MediaWiki:January\"",
"apihelp-translatesandbox-description": "Registrar y gestionar usuarios aislados (en \"sandbox\").",
"apihelp-translatesandbox-param-do": "Lo que hacer",
+ "apihelp-translatesandbox-param-userid": "Identificadores de los usuarios que se gestionan. Usa 0 para las creaciones.",
"apihelp-translatesandbox-param-username": "Nombre de usuario al crear el usuario.",
"apihelp-translatesandbox-param-password": "Contraseña al crear el usuario.",
"apihelp-translatesandbox-param-email": "Correo electrónico al crear el usuario.",
- "apihelp-translateuser-description": "Información relacionada a traducción acerca del usuario.",
- "apihelp-translateuser-example-1": "Mostrar información sobre el usuario",
"apihelp-translationaids-description": "Consultar todas las asistencias de traducciones.",
"apihelp-translationaids-param-title": "Título completo de un mensaje conocido.",
"apihelp-translationaids-param-group": "Grupo de mensajes al que pertenece el mensaje. Si está vacío se usa el grupo primario.",
"apihelp-translationaids-param-prop": "Cuáles asistentes de traducción incluir.",
"apihelp-translationaids-example-1": "Mostrar ayuda para [[MediaWiki:January/fi]]",
"apihelp-translationreview-description": "Marcar traducciones como revisadas.",
+ "apihelp-translationreview-summary": "Marcar traducciones como revisadas.",
"apihelp-translationreview-param-revision": "El número de revisión que revisar.",
"apihelp-translationreview-example-1": "Revisar revisión 1",
- "apihelp-translationstash-description": "Añadir traducciones a la reserva.",
+ "apihelp-translationstash-description": "Añadir traducciones al almacén provisional.",
+ "apihelp-translationstash-summary": "Añadir traducciones al almacén provisional.",
"apihelp-translationstash-param-subaction": "Acción",
"apihelp-translationstash-param-title": "Título de la página de la unidad de traducción.",
"apihelp-translationstash-param-translation": "Traducción realizada por el usuario.",
"apihelp-translationstash-param-metadata": "Objeto JSON.",
- "apihelp-translationstash-param-username": "Opcionalmente, la reserva del usuario que obtener. Esto solo lo pueden hacer usuarios privilegiados.",
- "apihelp-translationstash-example-1": "Añadir una traducción en la reserva para [[MediaWiki:Jan/fi]]",
- "apihelp-translationstash-example-2": "Consultar la reserva",
- "apihelp-ttmserver-description": "Consultar sugerencias de la memoria de traducción.",
+ "apihelp-translationstash-param-username": "Opcionalmente, el usuario cuyo almacén provisional se debe obtener. Esto solo lo pueden realizar usuarios privilegiados.",
+ "apihelp-translationstash-example-1": "Añadir una traducción al almacén provisional de [[MediaWiki:Jan/fi]]",
+ "apihelp-translationstash-example-2": "Consultar el almacén provisional",
+ "apihelp-ttmserver-description": "Consultar sugerencias de memorias de traducción.",
+ "apihelp-ttmserver-summary": "Consultar sugerencias de memorias de traducción.",
"apihelp-ttmserver-param-service": "Qué servicios de traducción disponibles usar.",
- "apihelp-ttmserver-param-sourcelanguage": "Un código de idioma del texto fuente.",
- "apihelp-ttmserver-param-targetlanguage": "Un código de idioma de la sugerencia.",
+ "apihelp-ttmserver-param-sourcelanguage": "El código de idioma del texto fuente.",
+ "apihelp-ttmserver-param-targetlanguage": "El código de idioma de la sugerencia.",
"apihelp-ttmserver-param-text": "El texto para el cual buscar sugerencias.",
- "apihelp-ttmserver-example-1": "Obtener sugerencias para traducir «Help» del inglés al finés"
+ "apihelp-ttmserver-example-1": "Obtener sugerencias para traducir «Help» del inglés al finés",
+ "apihelp-searchtranslations-description": "Buscar traducciones.",
+ "apihelp-searchtranslations-summary": "Buscar en las traducciones.",
+ "apihelp-searchtranslations-param-service": "Qué servicios de traducción disponibles usar.",
+ "apihelp-searchtranslations-param-query": "La cadena que buscar.",
+ "apihelp-searchtranslations-param-sourcelanguage": "El código de idioma del texto fuente.",
+ "apihelp-searchtranslations-param-language": "Código de idioma para el cual buscar la cadena.",
+ "apihelp-searchtranslations-param-group": "El identificador de grupo en el que buscar la cadena.",
+ "apihelp-searchtranslations-param-filter": "Filtro de estado de traducción de mensajes.",
+ "apihelp-searchtranslations-param-match": "Coincide con cualquier/todas las palabras de búsqueda.",
+ "apihelp-searchtranslations-param-case": "Búsqueda que distingue (o no) el uso de mayúsculas.",
+ "apihelp-searchtranslations-param-offset": "Desfase para las traducciones.",
+ "apihelp-searchtranslations-param-limit": "Tamaño del resultado.",
+ "apihelp-searchtranslations-example-1": "Mostrar las traducciones para el idioma.",
+ "apihelp-searchtranslations-example-2": "Mostrar mensajes sin traducir que coincidan con la consulta en el idioma de origen.",
+ "apihelp-translationcheck-summary": "Validar traducciones.",
+ "apihelp-translationcheck-param-title": "Título de página con espacio de nombres y código de idioma.",
+ "apihelp-translationcheck-param-translation": "La traducción que validar.",
+ "apierror-translate-duplicateaggregategroup": "El grupo de mensajes ya existe",
+ "apierror-translate-invalidgroup": "El grupo no existe o no es válido",
+ "apierror-translate-invalidstate": "El estado solicitado no es válido.",
+ "apierror-translate-invalidlanguage": "El idioma solicitado no es válido.",
+ "apierror-translate-invalidupdate": "Actualización no válida",
+ "apierror-translate-language-disabled": "Se ha desactivado la traducción al $1.",
+ "apierror-translate-language-disabled-reason": "Se ha desactivado la traducción al $1: $2",
+ "apierror-translate-language-disabled-source": "El idioma original de este grupo es el $1. Selecciona otro idioma al cual traducir.",
+ "apierror-translate-nodynamicgroups": "No se admiten aquí los grupos de mensajes dinámicos",
+ "apierror-translate-nomessagefortitle": "El título no se corresponde con un mensaje traducible",
+ "apierror-translate-notranslationservices": "No se ha configurado ningún servicio público de traducciones. Los administradores del wiki deben configurar <var>$wgTranslateTranslationServices</var> adecuadamente para poder utilizar esta función.",
+ "apierror-translate-owntranslation": "No se pueden revisar las traducciones propias",
+ "apierror-translate-sandbox-invalidppassword": "La contraseña no es válida",
+ "apierror-translate-unknownmessage": "Mensaje desconocido",
+ "apiwarn-translate-alreadyreviewedbyyou": "Ya la marcaste como revisada"
}
diff --git a/MLEB/Translate/i18n/api/eu.json b/MLEB/Translate/i18n/api/eu.json
index 5ba7ac64..126d3f7f 100644
--- a/MLEB/Translate/i18n/api/eu.json
+++ b/MLEB/Translate/i18n/api/eu.json
@@ -1,14 +1,20 @@
{
"@metadata": {
"authors": [
- "Subi"
+ "Subi",
+ "Sator"
]
},
+ "apihelp-aggregategroups-param-group": "Mezu-taldearen IDa",
"apihelp-groupreview-param-language": "Hizkuntza-kodea.",
"apihelp-query+languagestats-param-language": "Hizkuntza-kodea.",
"apihelp-query+messagecollection-param-language": "Hizkuntza-kodea.",
+ "apihelp-query+messagecollection-example-1": "Onartutako hizkuntzen zerrenda",
+ "apihelp-query+messagegroups-example-1": "Erakutsi mezu-taldeak",
"apihelp-translatesandbox-param-do": "Egin beharrekoa.",
"apihelp-translationstash-param-subaction": "Ekintza.",
"apihelp-translationstash-param-translation": "Erabiltzaileak egindako itzulpena.",
- "apihelp-translationstash-param-metadata": "JSON objektua."
+ "apihelp-translationstash-param-metadata": "JSON objektua.",
+ "apihelp-searchtranslations-description": "Itzulpenak bilatu",
+ "apierror-translate-unknownmessage": "Mezu ezezaguna"
}
diff --git a/MLEB/Translate/i18n/api/fy.json b/MLEB/Translate/i18n/api/fy.json
index ff903c84..07ce2545 100644
--- a/MLEB/Translate/i18n/api/fy.json
+++ b/MLEB/Translate/i18n/api/fy.json
@@ -1,11 +1,14 @@
{
"@metadata": {
"authors": [
- "Robin0van0der0vliet"
+ "Robin0van0der0vliet",
+ "Robin van der Vliet"
]
},
+ "apihelp-groupreview-param-group": "Berjochtgroep.",
"apihelp-groupreview-param-language": "Taalkoade.",
"apihelp-query+languagestats-param-language": "Taalkoade.",
+ "apihelp-query+messagecollection-param-group": "Berjochtgroep.",
"apihelp-query+messagecollection-param-language": "Taalkoade.",
"apihelp-translationstash-param-subaction": "Hanneling."
}
diff --git a/MLEB/Translate/i18n/api/gl.json b/MLEB/Translate/i18n/api/gl.json
index 3e8a9c97..e0803c4c 100644
--- a/MLEB/Translate/i18n/api/gl.json
+++ b/MLEB/Translate/i18n/api/gl.json
@@ -2,7 +2,8 @@
"@metadata": {
"authors": [
"Banjo",
- "Elisardojm"
+ "Elisardojm",
+ "Toliño"
]
},
"apihelp-aggregategroups-description": "Xestionar grupos de mensaxes agregados.\n\nPode engadir e eliminar grupos de mensaxes agregados, e asociar ou disociar a eles grupos de mensaxes (un de cada vez).",
@@ -12,15 +13,110 @@
"apihelp-aggregategroups-param-groupname": "Nome do grupo de mensaxes agregado.",
"apihelp-aggregategroups-param-groupdescription": "Descrición do grupo de mensaxes agregado.",
"apihelp-aggregategroups-example-1": "Asociar un grupo",
+ "apihelp-groupreview-description": "Establecer os estados de fluxo de traballo dos grupos de mensaxes.",
+ "apihelp-groupreview-summary": "Establecer os estados de fluxo de traballo dos grupos de mensaxes.",
"apihelp-groupreview-param-group": "Grupo de mensaxes.",
"apihelp-groupreview-param-language": "Código da lingua.",
"apihelp-groupreview-param-state": "Novo estado para o grupo.",
- "apihelp-groupreview-example-1": "Marcar ó grupo \"grupo-Exemplo\" como listo para o alemán",
- "apihelp-hardmessages-param-title": "Título da mensaxe a marcar como complicada.",
- "apihelp-hardmessages-example-1": "Marcar \"SampleTitle\" como complicado",
+ "apihelp-groupreview-example-1": "Marcar o estado da tradución alemán do grupo de mensaxes \"grupo-Exemplo\" como listo",
"apihelp-query+languagestats-description": "Consultar estatísticas de idioma.",
+ "apihelp-query+languagestats-summary": "Consultar estatísticas de idioma.",
+ "apihelp-query+languagestats-param-timelimit": "Tempo máximo para calcular as estatísticas que faltan. Se cero, só se devolven os resultados almacenados ó comezo.",
"apihelp-query+languagestats-param-language": "Código da lingua.",
+ "apihelp-query+languagestats-example-1": "Lista de estatíticas de traducións completadas en finés.",
+ "apihelp-query+messagecollection-description": "Consultar MessageCollection sobre traducións.",
+ "apihelp-query+messagecollection-summary": "Consultar MessageCollection sobre traducións.",
+ "apihelp-query+messagecollection-param-group": "Grupo de mensaxes.",
"apihelp-query+messagecollection-param-language": "Código da lingua.",
+ "apihelp-query+messagecollection-param-limit": "Número de mensaxes a amosar (despois de filtrar).",
+ "apihelp-query+messagecollection-param-offset": "Enteiro ou desprazamento clave para comezar.",
+ "apihelp-query+messagecollection-param-filter": "Filtros de coleccións de mensaxes. Use <kbd>!</kbd> para negar a condición. Por exemplo, <kbd>!fuzzy</kbd> quere dicir que se listen só todas as mensaxes non confusas. Os filtros aplícanse na orde dada.\n;fuzzy:Mensaxes coa etiqueta fuzzy (confuso).\n;optional:Mensaxes que deben ser traducido só se son necesarios cambios.\n;ignored:Mensaxes que nunca son traducidos.\n;hastranslation:Mensaxes que teñen unha tradución sen ter en conta se é confusa ou non.\n;translated:Mensaxes que teñen unha tradución que non é confusa.\n;changed:Mensaxes que foron traducidos ou cambiados desde a última exportación.\n;reviewer&#58;N:Mensaxes onde o número de usuario <kbd>N</kbd> está entre os revisores.\n;last-translator&#58;N:Mensaxes onde o número de usuario <kbd>N</kbd> é o último tradutor.",
+ "apihelp-query+messagecollection-param-prop": "Que propiedades obter:\n;definition:Definición da mensaxe.\n;translation:Tradución actual (sen cadea de texto $1 se hai algunha, usando as etiquetas para marcar traducións anticuadas ou rotas)\n;tags:Etiquetas da mensaxe, como opcional, ignorado e confuso.\n;properties:Propiedades da mensaxe, como estado, revisión, último tradutor. Pode variar entre mensaxes.\n;revision:<span class=\"deprecated\">Obsoleto!</span> Use $2prop=properties.",
+ "apihelp-query+messagecollection-example-1": "Lista de idiomas admitidos",
+ "apihelp-query+messagecollection-example-2": "Lista de definicións de mensaxes obrigatorias do grupo \"page-Example\"",
+ "apihelp-query+messagecollection-example-3": "Lista de mensaxes opcionais en finlandés con etiquetas para o grupo \"page-Example\"",
+ "apihelp-query+messagecollection-example-4": "Máis información acerca das últimas revisións de tradución para o grupo \"page-Example\"",
+ "apihelp-query+messagegroups-description": "Devolver información sobre grupos de mensaxes.\n\nTeña en conta que o parámetro \"uselang\" afecta á saída das partes dependentes do idioma.",
+ "apihelp-query+messagegroups-summary": "Devolver información sobre grupos de mensaxes.",
+ "apihelp-query+messagegroups-param-depth": "Candos se usa o formato en árbore, limitar a profundidade ós seus niveis. O valor 0 indica que non se amosan subgrupos. Se o límite é alcanzado, a saída inclúe un valor \"groupcount\" (conta de grupos) que indica o número de fillos directos.",
+ "apihelp-query+messagegroups-param-filter": "Só devolver mensaxes con identificadores que se correspondan cunha ou máis das entradas indicadas (sen diferenciar maiúsculas e minúsculas, separados por barras verticais, comodín *).",
+ "apihelp-query+messagegroups-param-format": "Nos grupos de mensaxes en forma de árbore poden existir en múltiples lugares na árbore.",
+ "apihelp-query+messagegroups-param-iconsize": "Tamaño preferido da icona de grupo rasterizada.",
+ "apihelp-query+messagegroups-param-prop": "Que información obter sobre a tradución:\n;id:Inclúe o identificador do grupo.\n;label:Inclúe a etiqueta do grupo.\n;description:Inclúe a descrición do grupo.\n;class:Inclúe o nome de clase do grupo.\n;namespace:Inclúe o espazo de nomes do grupo. Non todos os grupos pertencen a un único espazo de nomes.\n;exists:Inclúe a propiedade de existencia auto-calculada do grupo.\n;icon:Inclúe as URLs á icona do grupo.\n;priority:Inclúe o estado de prioridade como discouraged.\n;prioritylangs:Inclúe linguas preferidas. Se non ten valor, devolve falso.\n;priorityforce:Inclúe o estado de prioridade - se a configuración de prioridade de linguas está activo.\n;workflowstates:Inclúe os estados do fluxo de traballo para as mensaxes do grupo.",
+ "apihelp-query+messagegroups-param-root": "Cando se usa o formato en árbore, no canto de comezar dende o nivel superior comezar dende o grupo de mensaxes indicado, que debe ser un grupo de mensaxes agregado. Cando se usa o formato plano só se devolve o grupo especificado.",
+ "apihelp-query+messagegroups-example-1": "Amosar grupos de mensaxes",
+ "apihelp-query+messagegroupstats-description": "Consultar estatísticas do grupo de mensaxes.",
+ "apihelp-query+messagegroupstats-summary": "Consultar estatísticas do grupo de mensaxes.",
+ "apihelp-query+messagegroupstats-param-timelimit": "Tempo máximo para calcular as estatísticas que faltan. Se cero, só se devolven os resultados almacenados ó comezo.",
+ "apihelp-query+messagegroupstats-param-group": "Identificador do grupo de mensaxes.",
+ "apihelp-query+messagegroupstats-example-1": "Lista de estatísticas de finalización de traducións para o grupo \"páxina-Exemplo\"",
+ "apihelp-query+messagetranslations-description": "Consultar todas as traducións para unha única mensaxe.",
+ "apihelp-query+messagetranslations-summary": "Consultar todas as traducións para unha única mensaxe.",
+ "apihelp-query+messagetranslations-param-title": "Título completo dunha mensaxe coñecida.",
+ "apihelp-query+messagetranslations-example-1": "Lista de traducións na wiki para \"MediaWiki:January\"",
+ "apihelp-translatesandbox-description": "Rexistrar e xestionar usuarios illados (en \"sandbox\").",
+ "apihelp-translatesandbox-summary": "Rexistrar e xestionar usuarios illados (en \"sandbox\").",
+ "apihelp-translatesandbox-param-do": "Que facer.",
+ "apihelp-translatesandbox-param-userid": "Identificadores de usuario dos usuarios a xestionar. Use 0 para creacións.",
+ "apihelp-translatesandbox-param-username": "Nome de usuario ó crear o usuario.",
+ "apihelp-translatesandbox-param-password": "Contrasinal ó crear o usuario.",
+ "apihelp-translatesandbox-param-email": "Correo electrónico ó crear o usuario.",
+ "apihelp-translationaids-description": "Consultar todas as asistencias de traducións.",
+ "apihelp-translationaids-summary": "Consultar todas as asistencias de traducións.",
+ "apihelp-translationaids-param-title": "Título completo dunha mensaxe coñecida.",
+ "apihelp-translationaids-param-group": "Grupo de mensaxes ó que pertence a mensaxe. Se está baleiro úsase o grupo primario.",
+ "apihelp-translationaids-param-prop": "Que asistentes de tradución incluír.",
+ "apihelp-translationaids-example-1": "Amosar axudas para [[MediaWiki:January/fi]]",
+ "apihelp-translationreview-description": "Marcar traducións como revisadas.",
+ "apihelp-translationreview-summary": "Marcar traducións como revisadas.",
+ "apihelp-translationreview-param-revision": "Número de revisión a revisar.",
+ "apihelp-translationreview-example-1": "Revisar revisión 1",
+ "apihelp-translationstash-description": "Engadir traducións á reserva.",
+ "apihelp-translationstash-summary": "Engadir traducións á reserva.",
"apihelp-translationstash-param-subaction": "Acción.",
- "apihelp-translationstash-param-metadata": "Obxecto JSON."
+ "apihelp-translationstash-param-title": "Título da páxina da unidade de tradución.",
+ "apihelp-translationstash-param-translation": "Tradución realizada polo usuario.",
+ "apihelp-translationstash-param-metadata": "Obxecto JSON.",
+ "apihelp-translationstash-param-username": "Opcionalmente a reserva do usuario que coller. Isto só o poden facer usuarios privilexiados.",
+ "apihelp-translationstash-example-1": "Engadir unha tradución á reserva para [[MediaWiki:Jan/fi]]",
+ "apihelp-translationstash-example-2": "Consultar a reserva",
+ "apihelp-ttmserver-description": "Consultar as suxestións da memoria de tradución.",
+ "apihelp-ttmserver-summary": "Consultar as suxestións da memoria de tradución.",
+ "apihelp-ttmserver-param-service": "Que servizos de tradución usar, entre os dispoñibles.",
+ "apihelp-ttmserver-param-sourcelanguage": "O código de lingua do texto fonte.",
+ "apihelp-ttmserver-param-targetlanguage": "O código de lingua da suxestión.",
+ "apihelp-ttmserver-param-text": "Texto para o cal buscar suxestións.",
+ "apihelp-ttmserver-example-1": "Obter suxestións para traducir \"Help\" do inglés ao finés",
+ "apihelp-searchtranslations-description": "Procurar nas traducións.",
+ "apihelp-searchtranslations-summary": "Procurar nas traducións.",
+ "apihelp-searchtranslations-param-service": "O servizo de tradución a utilizar.",
+ "apihelp-searchtranslations-param-query": "A cadea que buscar.",
+ "apihelp-searchtranslations-param-sourcelanguage": "O código de lingua do texto fonte.",
+ "apihelp-searchtranslations-param-language": "O código da lingua na que procurar a cadea.",
+ "apihelp-searchtranslations-param-group": "O identificador do grupo no que procurar a cadea.",
+ "apihelp-searchtranslations-param-filter": "Filtro do estado de tradución das mensaxes.",
+ "apihelp-searchtranslations-param-match": "Coincide con calquera/todas as palabras de busca.",
+ "apihelp-searchtranslations-param-case": "Busca sensible/non sensible a maiúsculas.",
+ "apihelp-searchtranslations-param-offset": "Desprazamento para as traducións.",
+ "apihelp-searchtranslations-param-limit": "Tamaño do resultado.",
+ "apihelp-searchtranslations-example-1": "Amosar as traducións para a lingua.",
+ "apihelp-searchtranslations-example-2": "Amosar as mensaxes non traducidas que coincidan coa pescuda na lingua de orixe.",
+ "apihelp-translationcheck-summary": "Validar traducións.",
+ "apihelp-translationcheck-param-translation": "A tradución a validar.",
+ "apierror-translate-duplicateaggregategroup": "O grupo de mensaxes xa existe",
+ "apierror-translate-groupreviewdisabled": "A revisión do grupo de mensaxes non está en uso.",
+ "apierror-translate-invalidaggregategroup": "Grupo de mensaxes agregadas non válido",
+ "apierror-translate-invalidaggregategroupname": "Nome do grupo de mensaxes agregadas non válido",
+ "apierror-translate-invalidgroup": "O grupo non existe ou non é válido",
+ "apierror-translate-invalidstate": "O estado solicitado non é válido.",
+ "apierror-translate-invalidlanguage": "A lingua solicitada non é válida.",
+ "apierror-translate-invalidupdate": "Actualización non válida",
+ "apierror-translate-language-disabled": "A tradución a esta lingua está desactivada",
+ "apierror-translate-nodynamicgroups": "Aquí non están admitidos os grupos de mensaxes dinámicas",
+ "apierror-translate-nomessagefortitle": "O título non se corresponde cunha mensaxe traducible",
+ "apierror-translate-owntranslation": "Non pode revisar as súas traducións",
+ "apierror-translate-sandboxdisabled": "A función de zona de probas non está en uso",
+ "apierror-translate-sandbox-invalidppassword": "O contrasinal non é válido",
+ "apierror-translate-unknownmessage": "Mensaxe descoñecida",
+ "apiwarn-translate-alreadyreviewedbyyou": "Xa marcada como revisada por vostede"
}
diff --git a/MLEB/Translate/i18n/api/he.json b/MLEB/Translate/i18n/api/he.json
index 5f617648..f7e40c77 100644
--- a/MLEB/Translate/i18n/api/he.json
+++ b/MLEB/Translate/i18n/api/he.json
@@ -2,35 +2,80 @@
"@metadata": {
"authors": [
"Amire80",
- "Guycn2"
+ "Guycn2",
+ "המקיסט"
]
},
+ "apihelp-aggregategroups-description": "ניהול קבוצות הודעות משולבות.\n\nאפשר להוסיף ולהסיר קבוצות משולבות ולשייך אליהן קבוצות הודעות או להסיר אותן (אחת‏־אחת).",
+ "apihelp-aggregategroups-summary": "ניהול קבוצות הודעות משולבות.",
+ "apihelp-aggregategroups-extended-description": "באפשרותך להוסיף ולהסיר הודעות בקבוצות משולבות. בנוסף, ניתן לשייך הודעות לקבוצות אלו או לבטל שיוך של הודעות אליהן (הודעה אחת בכל פעם).",
+ "apihelp-aggregategroups-param-do": "מה לעשות עם קבוצות ההודעות המשולבת.",
+ "apihelp-aggregategroups-param-aggregategroup": "מזהה קבוצת ההודעות המשולבת.",
+ "apihelp-aggregategroups-param-group": "מזהה קבוצת הודעות.",
+ "apihelp-aggregategroups-param-groupname": "שם קבוצת ההודעות המשולבת.",
+ "apihelp-aggregategroups-param-groupdescription": "תיאור קבוצת ההודעות המשולבת.",
+ "apihelp-aggregategroups-example-1": "שיוך קבוצה",
+ "apihelp-groupreview-description": "הגדרת מצבי זרימת עבודה של קבוצת הודעות.",
+ "apihelp-groupreview-summary": "הגדרת מצבי זרימת עבודה של קבוצת הודעות.",
+ "apihelp-groupreview-param-group": "קבוצת הודעות.",
"apihelp-groupreview-param-language": "קוד השפה.",
+ "apihelp-groupreview-param-state": "המצב החדש עבור הקבוצה.",
+ "apihelp-groupreview-example-1": "לסמן את המצב של התרגום לגרמנית של קבוצת ההודעות \"group-Example\" כמוכן",
+ "apihelp-query+languagestats-description": "לעשות שאילתה על סטטיסטיקות של שפה.",
+ "apihelp-query+languagestats-summary": "ביצוע שאילתה על סטטיסטיקות של שפה.",
+ "apihelp-query+languagestats-param-timelimit": "הזמן המרבי שיוקדש לחישוב סטטיסטיקות חסרות. אם זה אפס, מוחזרות רק תוצאות מוטמנות מההתחלה.",
"apihelp-query+languagestats-param-language": "קוד השפה.",
+ "apihelp-query+languagestats-example-1": "רשימת סטטיסטיקות השלמות תרגומים עבור פינית",
+ "apihelp-query+messagecollection-description": "לעשות שאילתה ל־MessageCollection על תרגומים.",
+ "apihelp-query+messagecollection-summary": "שאילתה של MessageCollection על תרגומים.",
+ "apihelp-query+messagecollection-param-group": "קבוצת הודעות.",
"apihelp-query+messagecollection-param-language": "קוד השפה.",
+ "apihelp-query+messagecollection-param-limit": "כמה הודעות להציג (אחרי סינון).",
+ "apihelp-query+messagecollection-param-offset": "מספר שלם או היסט מפתח להתחלה.",
+ "apihelp-query+messagecollection-param-filter": "מסנני אוסף הודעות. יש להשתמש ב־<kbd>!</kbd> כדי לשלול תנאי. למשל, <kbd dir=\"ltr\">!fuzzy</kbd> אומר להביא רשימה רק של הודעות לא פסולות. המסננים מוּחלים לפי הסדר שבו נכתבו.\n;fuzzy:הודעות עם תג fuzzy (פסולות).\n;optional:הודעות שצריך לתרגם רק אם דרוש בהם שינוי.\n;ignored:הודעות שלעולם אין צורך לתרגם.\n;hastranslation:הודעות שיש להן תרגום, אם הוא פסול ואם לא.\n;translated:הודעות שיש להן תרגום שאינו פסול.\n;changed:הודעות שתורגמו או שונו מאז היצוא האחרון.\n;reviewer&#58;N:הודעות שבהן משתמש מספר <kbd>N</kbd> הוא אחד מהסוקרים.\n;last-translator&#58;N:הודעות שבהן משתמש מספר <kbd>N</kbd> הוא המתרגם האחרון.",
+ "apihelp-query+messagecollection-param-prop": "אילו מאפיינים לקבל:\n;definition:הגדרת ההודעה.\n;translation:התרגום הנוכחי (ללא מחרוזת $1 אם יש כזאת, להשתמש בתגים כדי לבדוק תרגומים מיושנים או מקולקלים).\n;tags:תגי הודעה, כמו optional‏, ignored ו־fuzzy.\n;properties:מאפייני הודעה, כמו status‏, revision‏, last-translator. יכול להיות שונה בהודעות שונות.\n;revision:<span class=\"deprecated\">מיושן!</span> השתמשו ב־$2prop=properties.",
"apihelp-query+messagecollection-example-1": "רשימת שפות נתמכות",
+ "apihelp-query+messagecollection-example-2": "רשימת הגדרות הודעות לא אופציונליות עבור הקבוצה \"page-Example\"",
+ "apihelp-query+messagecollection-example-3": "רשימת הודעות אופציונליות בפינית עם תגים עבור הקבוצה \"page-Example\"",
+ "apihelp-query+messagecollection-example-4": "יותר מידע על סקירות התרגום האחרונות עבור הקבוצה \"page-Example\"",
+ "apihelp-query+messagegroups-description": "החזרת מידע על קבוצות הודעות.\n\nשימו לב שהפרמטר uselang משפיע על הפלט של החלקים שתלויים בשפה.",
+ "apihelp-query+messagegroups-summary": "החזרת מידע על קבוצות של הודעות.",
+ "apihelp-query+messagegroups-extended-description": "יש לשים לב לכך שהפרמטר uselang משפיע על הפלט של החלקים התלויים בשפה.",
+ "apihelp-query+messagegroups-param-depth": "בעת שימוש בתסדיר עץ, להגביל את העומק למספר כזה של רמות. ערך 0 אומר שלא תוצג שום תת־קבוצה. כשמושגת ההגבלה, הפלט כולל ערך \"groupcount\", שמציין את מספר הילדים הישיר.",
+ "apihelp-query+messagegroups-param-filter": "להחזיר רק הודעות עם מזים שמתאימים לאחד מהקלטים שניתנו (אינו תלוי־רישיות, מופרד בתווי '|', תו־כול *).",
+ "apihelp-query+messagegroups-param-format": "בתסדיר עץ קבוצות הודעות יכולות להתקיים במספר מקומות בעץ.",
+ "apihelp-query+messagegroups-param-iconsize": "גודל מועדף של סמל קבוצה רשתי.",
+ "apihelp-query+messagegroups-param-prop": "איזה מידע על תרגום לקבל:\n;id:לכלול את המזהה של הקבוצה.\n;label:לכלול את התווית של הקבוצה.\n;description:לכלול את התיאור של הקבוצה.\n;class:לכלול את שם המחלקה של הקבוצה.\n;namespace:לכלול את מרחב השם של הקבוצה. לא כל הקבוצות שייכות למרחב שם אחד.\n;exists:לכלול את מאפיים הקיום המחושב עצמית של הקבוצה.\n;icon:לכלול את ה־URL־ים לסמל של הקבוצה.\n;priority:לכלול מצב עדיפות, כמו \"לא מומלץ\".\n;prioritylangs:לכלול שפות מועדפות. אם זה לא מוגדר, יוחזר false.\n;priorityforce:לכלול מצב עדיפות – האם השפות המועדפות כפויות.\n;workflowstates:לכלול את מצבי זרימת העבודה עבור קבוצת ההודעות.",
+ "apihelp-query+messagegroups-param-root": "בעת שימוש בתסדיר עץ, במקום להתחיל מהרמה העליונה, להתחיל מקבוצת ההודעות הנתונה, שצריכה להיות קבוצת הודעות משולבת. בעת שימוש בתסדיר שטוח רק הקבוצה שצוינה תוחזר.",
+ "apihelp-query+messagegroups-example-1": "להציג קבוצות הודעות",
+ "apihelp-query+messagegroupstats-description": "לעשות שאילתה של סטטיסטיקת קבוצת הודעות.",
+ "apihelp-query+messagegroupstats-summary": "לבצע שאילתה על סטטיסטיקות של קבוצת הודעות.",
+ "apihelp-query+messagegroupstats-param-timelimit": "הזמן המרבי שיוקדש לחישוב סטטיסטיקות חסרות. אם זה אפס, מוחזרות רק תוצאות מוטמנות מההתחלה.",
"apihelp-query+messagegroupstats-param-group": "מזהה קבוצת הודעות.",
- "apihelp-query+messagegroupstats-example-1": "רשימה של סטטיסטיקת השלמת תרגומים עבור הדף page-Example",
+ "apihelp-query+messagegroupstats-example-1": "רשימה של סטטיסטיקת השלמת תרגומים עבור הקבוצה \"page-Example\"",
"apihelp-query+messagetranslations-description": "שאילתה של כל התרגומים של הודעה אחת.",
+ "apihelp-query+messagetranslations-summary": "שאילתה על כל התרגומים של הודעה אחת.",
"apihelp-query+messagetranslations-param-title": "כותרת שלמה של הודעה ידועה.",
- "apihelp-query+messagetranslations-example-1": "רשימת תרגומים בוויקי עבור MediaWiki:January",
+ "apihelp-query+messagetranslations-example-1": "רשימת תרגומים בוויקי עבור \"MediaWiki:January\"",
"apihelp-translatesandbox-description": "רשיום וניהול משתמשים בארגז חול.",
+ "apihelp-translatesandbox-summary": "רישום וניהול משתמשים בארגז חול.",
"apihelp-translatesandbox-param-do": "מה לעשות.",
"apihelp-translatesandbox-param-userid": "מזהי משתמשים של המשתמשים המנוהלים. יש להשתם ב־0 בשביל יצירה.",
"apihelp-translatesandbox-param-username": "שם משתמש בעת יצירת משתמש.",
"apihelp-translatesandbox-param-password": "ססמה בעת יצירת משתמש.",
"apihelp-translatesandbox-param-email": "דואל אלקטרוני בעת יצירת משתמש.",
- "apihelp-translateuser-description": "מידע בנושא תרגום על המשתמש.",
- "apihelp-translateuser-example-1": "הצגת מידע על המשתמש",
"apihelp-translationaids-description": "שאילתה על כל עזרי התרגום.",
+ "apihelp-translationaids-summary": "שאילתה על כל עזרי התרגום.",
"apihelp-translationaids-param-title": "כותרת מלאה של הודעה ידועה.",
"apihelp-translationaids-param-group": "לאיזו קבוצת הודעות ההודעה שייכת. אם זה ריק, תשמש הקבוצה הראשית.",
"apihelp-translationaids-param-prop": "אילו עזרי תרגום לכלול.",
"apihelp-translationaids-example-1": "הצגת עזרים עבור [[MediaWiki:January/fi]]",
"apihelp-translationreview-description": "סימון תרגומים בתור נסקרים.",
+ "apihelp-translationreview-summary": "סימון תרגומים בתור נסקרים.",
"apihelp-translationreview-param-revision": "מספר הגרסה לסקירה.",
"apihelp-translationreview-example-1": "סקירת גרסה 1",
"apihelp-translationstash-description": "הוספת תרגומים למחסן.",
+ "apihelp-translationstash-summary": "הוספת תרגומים למחסן.",
"apihelp-translationstash-param-subaction": "פעולה.",
"apihelp-translationstash-param-title": "כותרת דף יחידת התרגום.",
"apihelp-translationstash-param-translation": "תרגומים שעשה המשתמש.",
@@ -39,9 +84,48 @@
"apihelp-translationstash-example-1": "הוספת למחסן של התרגום של [[MediaWiki:Jan/fi]].",
"apihelp-translationstash-example-2": "שאילתה למחסן",
"apihelp-ttmserver-description": "שאילתת הצעות מזיכרון תרגום.",
+ "apihelp-ttmserver-summary": "שאילתה על הצעות מזיכרון התרגום.",
"apihelp-ttmserver-param-service": "באיזה משירותי התרגום הזמינים להשתמש.",
"apihelp-ttmserver-param-sourcelanguage": "קוד השפה של טקסט המקור.",
"apihelp-ttmserver-param-targetlanguage": "קוד השפה של ההצעה.",
"apihelp-ttmserver-param-text": "עבור איזה טקסט למצוא הצעות.",
- "apihelp-ttmserver-example-1": "קבלת הצעות לתרגום המחרוזת \"Help\" מאנגלית לפינית"
+ "apihelp-ttmserver-example-1": "קבלת הצעות לתרגום המחרוזת \"Help\" מאנגלית לפינית",
+ "apihelp-searchtranslations-description": "חיפוש תרגומים.",
+ "apihelp-searchtranslations-summary": "חפש תרגומים",
+ "apihelp-searchtranslations-param-service": "באילו משירותי התרגום הזמינים להשתמש.",
+ "apihelp-searchtranslations-param-query": "איזו מחרוזת לחפש.",
+ "apihelp-searchtranslations-param-sourcelanguage": "קוד השפה של טקסט המקור.",
+ "apihelp-searchtranslations-param-language": "קוד השפה לחיפוש מחרוזת.",
+ "apihelp-searchtranslations-param-group": "מזהה הקבוצה לחיפוש המחרוזת.",
+ "apihelp-searchtranslations-param-filter": "מסנן מצב תרגום הודעה.",
+ "apihelp-searchtranslations-param-match": "להתאים מילים כלשהם או את כל המילים.",
+ "apihelp-searchtranslations-param-case": "חיפוש תלוי־רישיות או לאו.",
+ "apihelp-searchtranslations-param-offset": "היסט לתרגומים.",
+ "apihelp-searchtranslations-param-limit": "גודל התוצאה.",
+ "apihelp-searchtranslations-example-1": "הצגת תרגומים בשפה.",
+ "apihelp-searchtranslations-example-2": "הצגת הודעות לא מתורגמות שמתאימות לשאילתה בשפת המקור.",
+ "apihelp-translationcheck-description": "בדיקת תרגום נתון מול בודקי הודעות.",
+ "apihelp-translationcheck-summary": "אימות תרגומים.",
+ "apihelp-translationcheck-param-title": "שם הדף עם מרחב השם וקוד השפה.",
+ "apihelp-translationcheck-param-translation": "התרגום שיאומת.",
+ "apierror-translate-duplicateaggregategroup": "קבוצת ההודעות כבר קיימת",
+ "apierror-translate-fuzzymessage": "לא ניתן לסקור תרגומים שאינם מעודכנים",
+ "apierror-translate-groupreviewdisabled": "סקירת קבוצת ההודעות אינה בשימוש.",
+ "apierror-translate-invalidaggregategroup": "קבוצת הודעות משולבת בלתי־תקינה",
+ "apierror-translate-invalidaggregategroupname": "שם קבוצת הודעות משולבת בלתי־תקין",
+ "apierror-translate-invalidgroup": "הקבוצה אינה קיימת או בלתי־תקינה",
+ "apierror-translate-invalidstate": "השם המבוקש אינו תקין.",
+ "apierror-translate-invalidlanguage": "השפה המבוקשת אינה תקינה.",
+ "apierror-translate-invalidupdate": "עדכון בלתי־תקין",
+ "apierror-translate-language-disabled": "התרגום לשפה $1 מבוטל.",
+ "apierror-translate-language-disabled-reason": "התרגום לשפה $1 מבוטל: $2",
+ "apierror-translate-language-disabled-source": "שפת המקור של הקבוצה הזו היא $1. נא לבחור שפה אחרת לתרגום.",
+ "apierror-translate-nodynamicgroups": "קבוצת הודעות דינמיות אינן נתמכות כאן",
+ "apierror-translate-nomessagefortitle": "הכותרת אינה מתאימה לשום הודעה בת־תרגום",
+ "apierror-translate-notranslationservices": "לא הוגדרו שירותי תרגום ציבוריים. מנהל אתר הוויקי צריך להגדיר את <var dir=\"ltr\">$wgTranslateTranslationServices</var> באופן תקין כדי שניתן יהיה להשתמש בתכונה זו.",
+ "apierror-translate-owntranslation": "לא ניתן לסקור את ההודעות של עצמך",
+ "apierror-translate-sandboxdisabled": "ארגז החול אינו בשימוש",
+ "apierror-translate-sandbox-invalidppassword": "ססמה בלתי־תקינה",
+ "apierror-translate-unknownmessage": "הודעה בלתי־ידועה",
+ "apiwarn-translate-alreadyreviewedbyyou": "כבר סומנה בתור הודעה הודעה שנסקרה על־ידיך"
}
diff --git a/MLEB/Translate/i18n/api/ia.json b/MLEB/Translate/i18n/api/ia.json
index cf673db6..cd76d8d4 100644
--- a/MLEB/Translate/i18n/api/ia.json
+++ b/MLEB/Translate/i18n/api/ia.json
@@ -4,12 +4,14 @@
"McDutchie"
]
},
+ "apihelp-aggregategroups-description": "Gerer le gruppos de messages aggregate.\n\nTu pote adder e mover gruppos de messages aggregate e associar o dissociar gruppos de messages a illos (un al vice).",
+ "apihelp-aggregategroups-summary": "Gerer gruppos de messages aggregate.",
"apihelp-query+messagecollection-param-limit": "Numero de messages a monstrar (post filtration).",
- "apihelp-query+messagecollection-example-3": "Lista de messages optional in finnese con etiquettas pro le pagina del gruppo - Exemplo",
+ "apihelp-query+messagecollection-example-3": "Lista de messages optional in finnese con etiquettas pro le gruppo \"page-Example\"",
"apihelp-query+messagegroups-param-iconsize": "Dimension preferite del icone de gruppo rasterisate.",
"apihelp-translatesandbox-param-username": "Nomine de usator al momento de creation del usator.",
"apihelp-translationaids-description": "Consultar tote le adjutas de traduction.",
"apihelp-translationstash-param-metadata": "Objecto JSON.",
- "apihelp-ttmserver-param-targetlanguage": "Un codice de lingua del suggestion.",
+ "apihelp-ttmserver-param-targetlanguage": "Le codice de lingua del suggestion.",
"apihelp-ttmserver-param-text": "Le texto pro le qual cercar suggestiones."
}
diff --git a/MLEB/Translate/i18n/api/it.json b/MLEB/Translate/i18n/api/it.json
index 4a5ccf62..23f08114 100644
--- a/MLEB/Translate/i18n/api/it.json
+++ b/MLEB/Translate/i18n/api/it.json
@@ -1,8 +1,63 @@
{
"@metadata": {
"authors": [
- "Ricordisamoa"
+ "Ricordisamoa",
+ "F. Cosoleto",
+ "Statix64",
+ "Beta16",
+ "Anto"
]
},
- "apihelp-query+messagecollection-example-1": "Elenco delle lingue supportate"
+ "apihelp-aggregategroups-description": "Gestisci gruppi di messaggi aggregati.\n\nPuoi aggiungere e rimuovere gruppi di messaggi aggregati e associare o dissociare i gruppi di messaggi l'uno dall'altro (uno alla volta).",
+ "apihelp-aggregategroups-param-do": "Cosa fare il gruppo messaggi aggregato.",
+ "apihelp-aggregategroups-param-aggregategroup": "ID gruppo messaggi aggregato.",
+ "apihelp-aggregategroups-param-group": "ID gruppo messaggi.",
+ "apihelp-aggregategroups-param-groupname": "Nome gruppo messaggi aggregato.",
+ "apihelp-aggregategroups-param-groupdescription": "Descrizione gruppo messaggi aggregato.",
+ "apihelp-aggregategroups-example-1": "Associa un gruppo",
+ "apihelp-groupreview-param-group": "Gruppo di messaggi.",
+ "apihelp-groupreview-param-language": "Codice lingua.",
+ "apihelp-groupreview-param-state": "Il nuovo stato per il gruppo.",
+ "apihelp-groupreview-example-1": "Imposta lo stato della traduzione in tedesco per il gruppo messaggi \"group-Example\" come pronto",
+ "apihelp-query+languagestats-param-language": "Codice lingua.",
+ "apihelp-query+languagestats-example-1": "Elenco delle statistiche di completamento traduzione per il finlandese",
+ "apihelp-query+messagecollection-param-group": "Gruppo di messaggi.",
+ "apihelp-query+messagecollection-param-language": "Codice lingua.",
+ "apihelp-query+messagecollection-param-limit": "Il numero di messaggi da visualizzare (dopo applicazione del filtro).",
+ "apihelp-query+messagecollection-example-1": "Elenco delle lingue supportate",
+ "apihelp-query+messagegroups-summary": "Restituisce informazioni sui gruppi di messaggi.",
+ "apihelp-query+messagegroups-example-1": "Mostra gruppi di messaggi",
+ "apihelp-query+messagegroupstats-param-group": "ID gruppo messaggi.",
+ "apihelp-query+messagetranslations-summary": "Interroga tutte le traduzioni per un singolo messaggio.",
+ "apihelp-query+messagetranslations-param-title": "Titolo completo di un messaggio conosciuto.",
+ "apihelp-translatesandbox-param-do": "Che cosa fare.",
+ "apihelp-translationaids-param-title": "Titolo completo di un messaggio conosciuto.",
+ "apihelp-translationstash-param-subaction": "Azione.",
+ "apihelp-translationstash-param-metadata": "Oggetto JSON.",
+ "apihelp-ttmserver-param-service": "Quale dei disponibili servizi di traduzione usare.",
+ "apihelp-ttmserver-param-sourcelanguage": "Il codice della lingua del testo di partenza.",
+ "apihelp-ttmserver-param-targetlanguage": "Il codice della lingua del suggerimento.",
+ "apihelp-ttmserver-param-text": "Testo per il quale trovare suggerimenti.",
+ "apihelp-ttmserver-example-1": "Ottieni suggerimenti per la traduzione di \"help\" dall'inglese al finlandese",
+ "apihelp-searchtranslations-description": "Cerca traduzioni.",
+ "apihelp-searchtranslations-summary": "Cerca traduzioni.",
+ "apihelp-searchtranslations-param-limit": "Dimensione del risultato.",
+ "apihelp-searchtranslations-example-1": "Mostra le traduzioni per la lingua.",
+ "apierror-translate-duplicateaggregategroup": "Il gruppo messaggi esiste già.",
+ "apierror-translate-fuzzymessage": "Non puoi revisionare traduzioni da aggiornare",
+ "apierror-translate-groupreviewdisabled": "Revisione gruppo messaggi non in uso.",
+ "apierror-translate-invalidaggregategroup": "Gruppo messaggi aggregati non valido",
+ "apierror-translate-invalidaggregategroupname": "Nome del gruppo messaggi aggregati non valido",
+ "apierror-translate-invalidgroup": "Gruppo non esistente o non valido",
+ "apierror-translate-invalidstate": "Lo stato richiesto non è valido.",
+ "apierror-translate-invalidlanguage": "La lingua richiesta non è valida.",
+ "apierror-translate-invalidupdate": "Aggiornamento non valido",
+ "apierror-translate-language-disabled": "Le traduzioni in $1 sono disabilitate.",
+ "apierror-translate-nodynamicgroups": "I gruppi messaggi dinamici non sono supportati qui",
+ "apierror-translate-nomessagefortitle": "Il titolo non corrisponde a un messaggio traducibile",
+ "apierror-translate-owntranslation": "Non puoi revisionare le tue traduzioni",
+ "apierror-translate-sandboxdisabled": "La funzione Sandbox non è in uso",
+ "apierror-translate-sandbox-invalidppassword": "Password non valida",
+ "apierror-translate-unknownmessage": "Messaggio sconosciuto",
+ "apiwarn-translate-alreadyreviewedbyyou": "Già contrassegnata come revisionata da te"
}
diff --git a/MLEB/Translate/i18n/api/ka.json b/MLEB/Translate/i18n/api/ka.json
index 7c96d63e..96218fcb 100644
--- a/MLEB/Translate/i18n/api/ka.json
+++ b/MLEB/Translate/i18n/api/ka.json
@@ -1,10 +1,12 @@
{
"@metadata": {
"authors": [
- "MIKHEIL"
+ "MIKHEIL",
+ "David1010"
]
},
"apihelp-aggregategroups-param-group": "შეტყობინების ჯგუფის ID.",
+ "apihelp-groupreview-param-group": "შეტყობინების ჯგუფი.",
"apihelp-groupreview-param-language": "ენის კოდი.",
"apihelp-query+languagestats-param-language": "ენის კოდი.",
"apihelp-query+messagecollection-param-group": "შეტყობინების ჯგუფი.",
diff --git a/MLEB/Translate/i18n/api/ksh.json b/MLEB/Translate/i18n/api/ksh.json
index f8b045f0..2ecca084 100644
--- a/MLEB/Translate/i18n/api/ksh.json
+++ b/MLEB/Translate/i18n/api/ksh.json
@@ -16,11 +16,8 @@
"apihelp-groupreview-param-language": "Et Shprohcheköözel.",
"apihelp-groupreview-param-state": "Der neue Zohschtand för di Jropp.",
"apihelp-groupreview-example-1": "Makehr, dat de Jropp „<code lang=\"en\" xml:lang=\"en\" dir=\"ltr\">group-Example</code>“ parraht för Deutsch wöhr.",
- "apihelp-hardmessages-description": "Makehr Övversäzonge hatt.<!-- https://translatewiki.net/wiki/Thread:Support/About_MediaWiki:Apihelp-hardmessages-description/ksh -->",
- "apihelp-hardmessages-param-title": "De Övverschreff vun däm Täx udder dä Nohesch för et hatt Makehre.\n<!-- \nhttps://translatewiki.net/wiki/Thread:Support/About_MediaWiki:Apihelp-hardmessages-description/ksh -->",
- "apihelp-hardmessages-example-1": "Makehr „<code lang=\"en\" xml:lang=\"en\" dir=\"ltr\">SampleTitle</code>“ als hatt.\n<!-- \nhttps://translatewiki.net/wiki/Thread:Support/About_MediaWiki:Apihelp-hardmessages-description/ksh -->",
"apihelp-query+languagestats-description": "Frohch noh de Schtateßeke vun de Schprohche.",
- "apihelp-query+languagestats-param-timelimit": "De längste Zigg, di för et Berääschne vun zohsäzlejje Schtateßteke jebruch wähde darref. Wann se Noll es, kritt mer blohß ahle Dahte zerök, die alld em Schpeischer wohre.",
+ "apihelp-query+languagestats-param-timelimit": "De längste Zigg, di för et Berääschne vun zohsäzlejje Schtateßteke jebruch wähde darref. Wann se Noll es, kritt mer blohß ahle Dahte zerök, di alld em Schpeischer wohre.",
"apihelp-query+languagestats-param-language": "Et Shprohcheköözel.",
"apihelp-query+languagestats-example-1": "En Lesß met de Schtateßteke för Finnesch",
"apihelp-query+messagecollection-description": "Frohch noh de Övversäzonge en dä Jropp <code lang=\"en\" xml:lang=\"en\" dir=\"ltr\">MessageCollection</code>.",
@@ -28,14 +25,14 @@
"apihelp-query+messagecollection-param-language": "Et Shprohcheköözel.",
"apihelp-query+messagecollection-param-limit": "Wi vill vun de ußjesöhk Täxte un Nohreeschte sull aanjezeisch wääde?",
"apihelp-query+messagecollection-param-offset": "Nommer udder Övverschreff vum Täx udder dä Nohreescht, vun woh aanfange.",
- "apihelp-query+messagecollection-param-filter": "Message collection filters. Use ! to negate condition. For example !fuzzy means list only all non-fuzzy messages. Filters are applied in the order given.\n;fuzzy:Messages with fuzzy tag.\n;optional:Messages which should be translated only if changes are necessary.\n;ignored:Messages which are never translated.\n;hastranslation:Messages which have a translation regardless if it is fuzzy or not.\n;translated:Messages which have a translation which is not fuzzy.\n;changed:Messages which has been translated or changed since last export.\n;reviewer&#58;#:Messages where given user ID # is among reviewers.\n;last-translator&#58;#:Messages where given user ID # is the last translator.\n<!-- \nhttps://translatewiki.net/wiki/Thread:Support/About_MediaWiki:Apihelp-query%2Bmessagecollection-param-filter/en\n-->",
+ "apihelp-query+messagecollection-param-filter": "Message collection filters. Use ! to negate condition. För e Beijschpell bedügg <kbd lang=\"en\" xml:lang=\"en\" dir=\"ltr\">!fuzzy</kbd> dt mer blohß alle di - list non-fuzzy messages. Filters kumme zom drahre en däsällve Reihjefollesch wi se aanjejovve sin.\n;<kbd lang=\"en\" xml:lang=\"en\" dir=\"ltr\">fuzzy</kbd>:Messages with fuzzy Makkehrong.\n;<kbd lang=\"en\" xml:lang=\"en\" dir=\"ltr\">optional</kbd>:Messages which should be translated blohß wann Änderonge nühdesch sin.\n;<kbd lang=\"en\" xml:lang=\"en\" dir=\"ltr\">ignored</kbd>:Messages which are nimmohls övversaz.\n;<kbd lang=\"en\" xml:lang=\"en\" dir=\"ltr\">hastranslation</kbd>:Messages which have a translation regardless if it is fuzzy or not.\n;<kbd lang=\"en\" xml:lang=\"en\" dir=\"ltr\">translated</kbd>:Messages which have a translation which is not fuzzy.\n;<kbd lang=\"en\" xml:lang=\"en\" dir=\"ltr\">changed</kbd>:Messages which has been translated or changed since last export.\n;<kbd lang=\"en\" xml:lang=\"en\" dir=\"ltr\">reviewer&#58;</kbd>#:Messages where given user ID # is among reviewers.\n;<kbd lang=\"en\" xml:lang=\"en\" dir=\"ltr\">last-translator&#58</kbd>;#:Messages where given user ID # is the last Övversäzer.\n<!-- \nhttps://translatewiki.net/wiki/Thread:Support/About_MediaWiki:Apihelp-query%2Bmessagecollection-param-filter/en\n-->",
"apihelp-query+messagecollection-param-prop": "Wat för en Eijeschaffte ze holle:\n;definition:De definition vun däm Täxt udder dä Nohreesch.\n;translation:De aktoälle Övversäzong (without $1 string if any, use the tags to check for övverhöllte udder kappodde Övversäzonge).\n;tags:tags vun Täxte udder Nohreeschte, wi optional, ignored and fuzzy.\n;properties:Eijeschaffte vun Täxte udder Nohreeschte, wi status, revision, last-translator. Kann sesch zwesche de einzel Täxte un Nohreeschte ongerscheide.\n;revision:<span class=\"deprecated\">Deprecated!</span> Nemm $2prop=properties.\n<!-- \nhttps://translatewiki.net/wiki/Thread:Support/About_MediaWiki:Apihelp-query%2Bmessagegroups-param-prop/ksh \n-->",
"apihelp-query+messagecollection-example-1": "Leß med ongerschtöz Schprohche",
"apihelp-query+messagecollection-example-2": "Donn de nühdejje Täxte un Nohreeschte en dä Jropp „<code lang=\"en\" xml:lang=\"en\" dir=\"ltr\">page-Example</code>“ opleste. <!--\nhttps://translatewiki.net/wiki/Thread:Support/About_MediaWiki:Apihelp-query%2Bmessagecollection-example-4/ksh\n-->",
"apihelp-query+messagecollection-example-3": "Donn de nit esu nühdejje fennesche Täxte un Nohreeschte en dä Jropp „<code lang=\"en\" xml:lang=\"en\" dir=\"ltr\">page-Example</code>“ opleste. <!--\nhttps://translatewiki.net/wiki/Thread:Support/About_MediaWiki:Apihelp-query%2Bmessagecollection-example-4/ksh\n-->",
- "apihelp-query+messagecollection-example-4": "Mieh Aanjahbe övver e neuste Övversäzonge vun dä Täxte un Nohreeschte en dä Jropp „<code lang=\"en\" xml:lang=\"en\" dir=\"ltr\">page-Example</code>“. <!--\nhttps://translatewiki.net/wiki/Thread:Support/About_MediaWiki:Apihelp-query%2Bmessagecollection-example-4/ksh\n-->",
+ "apihelp-query+messagecollection-example-4": "Mih Aanjahbe övver de neuste Övversäzonge vun dä Täxte un Nohreeschte en dä Jropp „<code lang=\"en\" xml:lang=\"en\" dir=\"ltr\">page-Example</code>“.",
"apihelp-query+messagegroups-description": "Jiv Enfommazjuhne övver Jroppe vun Täxte un Nohreeschte us.\n\nObacht: Dä Parramehter <code lang=\"en\" xml:lang=\"en\" dir=\"ltr\">uselang</code> hädd ene Enfloss op di Aandeile, di vun de Schprohch afhange.",
- "apihelp-query+messagegroups-param-depth": "Em Boumfommaht bejränz dat de Dehfe vun dä Leß. Dä Wäät 0 bedügg, dat kein Ongerjroppe jezeijsch wähde. If the limit is reached, a prop groupcount is added and it states the number of direct children.",
+ "apihelp-query+messagegroups-param-depth": "Em Boumfommaht bejränz dat de Dehfe vun dä Leß. Dä Wäät 0 bedügg, dat kein Ongerjroppe jezeijsch wähde. If the limit is reached, a prop groupcount is added and it states the number of direct children. <!-- https://translatewiki.net/wiki/Thread:Support/About_MediaWiki:Apihelp-query%2Bmessagegroups-param-depth/en\n-->",
"apihelp-query+messagegroups-param-filter": "Jiv blohß Täxte un Nohreeschte us, dänne ier Kännonge op eine vun heh dä Ennjahbe paße. Jruhß- un Kleinschrevv es derbei ejahl, * schteiht för en onjenante Zahl onjenante Zeische, zwesche de Kännonge küdd et „|“-Zeijsche.",
"apihelp-query+messagegroups-param-format": "Em Boum-Fommaht künne Nohreeschtejroppe mieh wie eijmohl, alsu aan ongerscheidlejje Schtälle em Boum, opdouche.",
"apihelp-query+messagegroups-param-prop": "Wat för en Aanjahbe em Zersammehang med Övversäzonge ze holle:\n;id:Donn de Kännong vun dä Jropp derbei.\n;label:Include label vun dä Jropp.\n;description:Include description vun dä Jropp.\n;class:Include class name vun dä Jropp.\n;namespace:Include Appachtemang vun dä Jropp. Not all groups belong to a single Appachtemang.\n;exists:Include self-calculated existence Eijeschaff vun dä Jropp.\n;icon:Include URLs to icon vun dä Jropp.\n;priority:Include priority status like discouraged.\n;prioritylangs:Include preferred Schprohche. If not set, this returns false.\n;priorityforce:Include priority status - is the priority Schprohchesetting forced.\n;workflowstates:Include the workflow states vun dä Jropp vun Täxte un Nohreeschte.\n<!-- \nhttps://translatewiki.net/wiki/Thread:Support/About_MediaWiki:Apihelp-query%2Bmessagegroups-param-prop/ksh\n-->",
@@ -54,8 +51,6 @@
"apihelp-translatesandbox-param-username": "Der Nahme, wann ene Metmaacher neu aanjelaht weed.",
"apihelp-translatesandbox-param-password": "Et Paßwoot, wann ene Metmaacher neu aanjelaht weed.",
"apihelp-translatesandbox-param-email": "De Adräß för de <i lang=\"en\" xml:lang=\"en\" dir=\"ltr\">e-mail</i> wann ene Metmaacher aanjelaht weed.",
- "apihelp-translateuser-description": "Aanjahbe övve dä Metmaacher em Zersammehang mem Övversäze.",
- "apihelp-translateuser-example-1": "Aanjahbe övver dä Metmaacher aanzeije",
"apihelp-translationaids-description": "Frohch alle Zoote Hölper vum Övversäze.",
"apihelp-translationaids-param-title": "De kumplätte Övverschreff vun ene bikannte Nohreesch udder enem bikanne Täx.",
"apihelp-translationaids-param-group": "Di Jropp, woh dä Täx udder de Nohreesch dren es.\nDe primary group <!--\nhttps://translatewiki.net/wiki/Thread:Support/About_MediaWiki:Apihelp-translationaids-param-group/ksh\n--> weed jenumme, wann se läddesch es.",
@@ -66,7 +61,7 @@
"apihelp-translationreview-example-1": "Lohr de Nommer 1 noh.",
"apihelp-translationstash-description": "Donn Övversäzonge en the stash\n<!-- \nhttps://translatewiki.net/wiki/Thread:Support/About_MediaWiki:Apihelp-translationstash-description/en_and_MediaWiki:Apihelp-translationstash-example-2/en_and_MediaWiki:Apihelp-translationstash-example-1/en_and_MediaWiki:Apihelp-translationstash-param-username/en\n-->",
"apihelp-translationstash-param-subaction": "Vörjang udder Opdraacht.",
- "apihelp-translationstash-param-title": "Övverschreff vun dä translation unit page.\n<!--\nhttps://translatewiki.net/wiki/Thread:Support/About_MediaWiki:Apihelp-query%2Bgeosearch-example-1/ksh\n-->",
+ "apihelp-translationstash-param-title": "Övverschreff vun dä Sigg för de Övversäzongeijnheijd.",
"apihelp-translationstash-param-translation": "Övversäzonge vun däm Metmaacher.",
"apihelp-translationstash-param-metadata": "Et <i lang=\"en\" xml:lang=\"en\" dir=\"ltr\" title=\"JavaScript Object Notation\">JSON<i>-Objäk",
"apihelp-translationstash-param-username": "Optionally the user whose stash to get. Only privileged users can do this.\n<!-- \nhttps://translatewiki.net/wiki/Thread:Support/About_MediaWiki:Apihelp-translationstash-description/en_and_MediaWiki:Apihelp-translationstash-example-2/en_and_MediaWiki:Apihelp-translationstash-example-1/en_and_MediaWiki:Apihelp-translationstash-param-username/en\n-->",
@@ -74,8 +69,15 @@
"apihelp-translationstash-example-2": "befrohch the stash\n<!-- \nhttps://translatewiki.net/wiki/Thread:Support/About_MediaWiki:Apihelp-translationstash-description/en_and_MediaWiki:Apihelp-translationstash-example-2/en_and_MediaWiki:Apihelp-translationstash-example-1/en_and_MediaWiki:Apihelp-translationstash-param-username/en\n-->",
"apihelp-ttmserver-description": "Frohch noh Vörschlähsch uß de Övversäzongsjedääschneße.",
"apihelp-ttmserver-param-service": "Wällsche Övversäzongsdeens jenumme wääde sull.",
- "apihelp-ttmserver-param-sourcelanguage": "E Schprohcheköözel vun dämm Quälltäx.",
- "apihelp-ttmserver-param-targetlanguage": "E Schprohcheköözel vun dämm Vörschlaach.",
+ "apihelp-ttmserver-param-sourcelanguage": "Dat Schprohcheköözel vun dämm Quälltäx.",
+ "apihelp-ttmserver-param-targetlanguage": "Dat Schprohcheköözel vun dämm Vörschlaach.",
"apihelp-ttmserver-param-text": "Dä Täx för Vörschlähsch för ze fenge.",
- "apihelp-ttmserver-example-1": "Donn Vörschlähsch holle för „Hölp“ us em Änglesche en et Fennesche ze övversäze."
+ "apihelp-ttmserver-example-1": "Donn Vörschlähsch holle för „Hölp“ us em Änglesche en et Fennesche ze övversäze.",
+ "apihelp-searchtranslations-description": "Övversäzonge söhke.",
+ "apihelp-searchtranslations-param-query": "Der Täx, dä jesöhk wähde sull.",
+ "apihelp-searchtranslations-param-language": "Et Köözel för di Schprohch för dä Täx dren ze söhke.",
+ "apihelp-searchtranslations-param-group": "De Kännong för di Jropp för dä Täx dren ze söhke.",
+ "apihelp-searchtranslations-param-match": "Jehdes udder öhnds e Woot fenge.",
+ "apihelp-searchtranslations-param-offset": "De Nommer för der Bejenn vun dä Leß vun de Övversäzonge.",
+ "apihelp-searchtranslations-example-1": "Donn de Övversäzonge för heh di Schprohch aanzeije"
}
diff --git a/MLEB/Translate/i18n/api/lb.json b/MLEB/Translate/i18n/api/lb.json
index 0ef24b58..1e6b6f1a 100644
--- a/MLEB/Translate/i18n/api/lb.json
+++ b/MLEB/Translate/i18n/api/lb.json
@@ -8,12 +8,39 @@
"apihelp-query+languagestats-param-language": "Sproochcode.",
"apihelp-query+messagecollection-param-language": "Sproochcode.",
"apihelp-query+messagecollection-example-1": "Lëscht vun den ënnerstëtzte Sproochen",
+ "apihelp-query+messagecollection-example-4": "Méi Informatioun iwwer déi lescht Iwwersetzungsversioun fir de Grupp \"Beispill-Säit\"",
+ "apihelp-query+messagegroups-param-format": "Am Baamformat kënne Gruppe vu Messagen op verschiddene Plazen am Bam existéieren.",
"apihelp-query+messagetranslations-param-title": "Kompletten Titel vun engem bekannte Message.",
+ "apihelp-query+messagetranslations-example-1": "Lëscht vun Iwwersetzungen an der Wiki fir \"MediaWiki:January\"",
"apihelp-translatesandbox-param-do": "Wat maachen.",
- "apihelp-translateuser-example-1": "Informatioun iwwer de Benotzer weisen",
+ "apihelp-translationaids-description": "All Iwwersetzungshëllefen ofruffen.",
"apihelp-translationaids-param-title": "Kompletten Titel vun engem bekannte Message.",
+ "apihelp-translationreview-description": "Iwwersetzungen als nogekuckt markéieren.",
+ "apihelp-translationreview-summary": "Nogekuckt Iwwersetzunge markéieren.",
"apihelp-translationreview-param-revision": "D'Nummer vun der Versioun fir nozekucken.",
"apihelp-translationreview-example-1": "Versioun 1 nokucken",
"apihelp-translationstash-param-subaction": "Aktioun.",
- "apihelp-translationstash-param-metadata": "JSON-Objet."
+ "apihelp-translationstash-param-translation": "Iwwersetzung vum Benotzer.",
+ "apihelp-translationstash-param-metadata": "JSON-Objet.",
+ "apihelp-ttmserver-param-sourcelanguage": "De Sproochcode vum Quelltext.",
+ "apihelp-ttmserver-param-targetlanguage": "De Sproochcode vum Virschlag.",
+ "apihelp-searchtranslations-description": "Iwwersetzunge sichen.",
+ "apihelp-searchtranslations-summary": "Iwwersetzunge sichen.",
+ "apihelp-searchtranslations-param-service": "Wat fir ee vun den disponibelen Iwwersetzungsservicer benotzt gi soll.",
+ "apihelp-searchtranslations-param-query": "D'Zeechen no deene gesicht gi soll.",
+ "apihelp-searchtranslations-param-limit": "Gréisst vum Resultat",
+ "apihelp-searchtranslations-example-1": "Iwwersetzunge fir d'Sprooch weisen.",
+ "apihelp-translationcheck-summary": "Iwwersetzunge validéieren.",
+ "apihelp-translationcheck-param-translation": "D'Iwweersetzung fir ze validéieren.",
+ "apierror-translate-duplicateaggregategroup": "De Grupp vu Message gëtt et schonn",
+ "apierror-translate-fuzzymessage": "Fuzzy Iwwersetzunge kënnen net nogekuckt ginn",
+ "apierror-translate-invalidlanguage": "Déi gefrot Sprooch ass net valabel.",
+ "apierror-translate-invalidupdate": "Net valabel Datum",
+ "apierror-translate-language-disabled": "Iwwersetzung op $1 ass ausgeschalt.",
+ "apierror-translate-language-disabled-reason": "Iwwersetzung op $1 ass desaktivéiert: $2",
+ "apierror-translate-owntranslation": "Eegen Iwwersetzunge kënnen net nogekuckt ginn",
+ "apierror-translate-sandboxdisabled": "Sandkëscht-Funktioun gëtt net benotzt",
+ "apierror-translate-sandbox-invalidppassword": "Net valabelt Passwuert",
+ "apierror-translate-unknownmessage": "Onbekannte Message",
+ "apiwarn-translate-alreadyreviewedbyyou": "Scho markéiert wéi wann et vun Iech nogekuckt ass"
}
diff --git a/MLEB/Translate/i18n/api/lv.json b/MLEB/Translate/i18n/api/lv.json
index 966ec69a..fd237241 100644
--- a/MLEB/Translate/i18n/api/lv.json
+++ b/MLEB/Translate/i18n/api/lv.json
@@ -8,5 +8,16 @@
"apihelp-groupreview-param-group": "Ziņojumu grupa.",
"apihelp-groupreview-param-language": "Valodas kods.",
"apihelp-query+languagestats-param-language": "Valodas kods.",
- "apihelp-query+messagecollection-param-language": "Valodas kods."
+ "apihelp-query+messagecollection-param-group": "Ziņojumu grupa.",
+ "apihelp-query+messagecollection-param-language": "Valodas kods.",
+ "apihelp-query+messagecollection-example-1": "Atbalstīto valodu saraksts",
+ "apihelp-query+messagegroups-example-1": "Rādīt ziņojumu grupas",
+ "apihelp-query+messagegroupstats-param-group": "Ziņojumu grupas ID.",
+ "apihelp-translatesandbox-param-do": "Ko darīt.",
+ "apihelp-translationstash-param-subaction": "Darbība.",
+ "apihelp-translationstash-param-metadata": "JSON objekts.",
+ "apihelp-searchtranslations-description": "Meklēt tulkojumus.",
+ "apihelp-searchtranslations-summary": "Meklēt tulkojumus.",
+ "apihelp-searchtranslations-param-limit": "Rezultāta izmērs.",
+ "apierror-translate-sandbox-invalidppassword": "Nederīga parole"
}
diff --git a/MLEB/Translate/i18n/api/mk.json b/MLEB/Translate/i18n/api/mk.json
index 91034793..9d867a11 100644
--- a/MLEB/Translate/i18n/api/mk.json
+++ b/MLEB/Translate/i18n/api/mk.json
@@ -4,7 +4,9 @@
"Bjankuloski06"
]
},
- "apihelp-aggregategroups-description": "Раководење со насобрани групи пораки.\n\nМожете да додавате или отстранувате насобрани групи пораки и да ги придружување во или отстранувате од збировите (една по една).",
+ "apihelp-aggregategroups-description": "Раководење со насобрани групи пораки.\n\nМожете да додавате или отстранувате насобрани групи пораки и да ги придружувате во или отстранувате од збировите (една по една).",
+ "apihelp-aggregategroups-summary": "Управување со насобрани групи пораки.",
+ "apihelp-aggregategroups-extended-description": "Можете да додавате или отстранувате насобрани групи пораки и да ги придружувате во или отстранувате од збировите (една по една).",
"apihelp-aggregategroups-param-do": "Што да се прави во насобрана група пораки.",
"apihelp-aggregategroups-param-aggregategroup": "Назнака на насобраната група пораки.",
"apihelp-aggregategroups-param-group": "Назнака на групата пораки.",
@@ -12,30 +14,32 @@
"apihelp-aggregategroups-param-groupdescription": "Опис на насобраната група пораки.",
"apihelp-aggregategroups-example-1": "Придружи група.",
"apihelp-groupreview-description": "Задај состојби на разработеност на групата пораки.",
+ "apihelp-groupreview-summary": "Задај состојби на разработеност на групата пораки.",
"apihelp-groupreview-param-group": "Група пораки.",
"apihelp-groupreview-param-language": "Јазичен код.",
"apihelp-groupreview-param-state": "Новата состојба на групата.",
- "apihelp-groupreview-example-1": "Означи ја групата „група-Пример“ како готова за германски",
- "apihelp-hardmessages-description": "Означување на преводи како тешки.",
- "apihelp-hardmessages-param-title": "Наслов на пораката што сакате да ја означите како тешка.",
- "apihelp-hardmessages-example-1": "Означи ја „SampleTitle“ како тешка",
+ "apihelp-groupreview-example-1": "Означи ја состојбата на германскиот превод на групата пораки „група-Пример“ како готов",
"apihelp-query+languagestats-description": "Статистики за јазикот на барањето.",
- "apihelp-query+languagestats-param-timelimit": "Максимално време што треба да се потроши за пресметување на отустните статистики. Ако е нула, ќе се дадат само меѓускладираните резултати од почетокот.",
+ "apihelp-query+languagestats-summary": "Статистики за јазикот на барањето.",
+ "apihelp-query+languagestats-param-timelimit": "Највеќе време што може да се потроши за пресметување на отустните статистики. Ако е нула, ќе се даде само меѓускладираниот исход од почетокот.",
"apihelp-query+languagestats-param-language": "Јазичен код.",
"apihelp-query+languagestats-example-1": "Список на статистики за потполноста на преводите на фински",
"apihelp-query+messagecollection-description": "Побарај преводи од Збирка пораки",
+ "apihelp-query+messagecollection-summary": "Побарај преводи од Збирка пораки",
"apihelp-query+messagecollection-param-group": "Група пораки.",
"apihelp-query+messagecollection-param-language": "Јазичен код.",
"apihelp-query+messagecollection-param-limit": "Колку страници да се прикажат (по филтрирањето).",
"apihelp-query+messagecollection-param-offset": "Цел број или отстапување со клуч за почетокот.",
- "apihelp-query+messagecollection-param-filter": "Филтри за собирање пораки. Користете ! за да одрекнете некој услов. На пример !fuzzy значи да се испишат сите пораки што не се неисправни. Филтрите се применуваат по укажаниот редослед.\n;fuzzy: Неисправни пораки (со ознака „fuzzy“).\n;optional: Пораки што треба да се преведат само ако се потребни промени.\n;ignored: Пораки што никогаш не се преведуваат.\n;hastranslation: Пораки што имаат превод без оглед дали се неисправни.\n;translated: Пораки што имаат превод кој не е неисправен.\n;changed: Пораки преведени или изменети од последната пријава.\n;reviewer&#58;#: Пораки проверувани од корисник со дадена назнака.\n;last-translator&#58;#: Пораки чиј последен преведувач е корисник со дадена назнака.",
+ "apihelp-query+messagecollection-param-filter": "Филтри за собирање пораки. Користете <kbd>!</kbd> за да одрекнете некој услов. На пример, <kbd>!fuzzy</kbd> значи да се испишат сите пораки што не се неисправни. Филтрите се применуваат по укажаниот редослед.\n;fuzzy: Неисправни пораки (со ознака „fuzzy“).\n;optional: Пораки што треба да се преведат само ако се потребни промени.\n;ignored: Пораки што никогаш не се преведуваат.\n;hastranslation: Пораки што имаат превод без оглед дали се неисправни.\n;translated: Пораки што имаат превод кој не е неисправен.\n;changed: Пораки преведени или изменети од последната пријава.\n;reviewer&#58;N: Пораки каде корисникот со број <kbd>N</kbd> е меѓу оценувачите.\n;last-translator&#58;N: Пораки каде корисникот со број <kbd>N</kbd> е последниот преведувач.",
"apihelp-query+messagecollection-param-prop": "Кои својства да се дадат:\n;definition: Определба на пораката.\n;translation: Тековен превод (без низата $1, ако ја има, користеет ги ознаките за да проверите дали има застарени или расипани преводи).\n;tags: Ознаки за пораката, како незадолжителна, занемарена или неисправна (fuzzy).\n;properties: Својства на пораката како статус, преработка, последен преведувач. Може да се разликува од порака до порака.\n;revision: <span class=\"deprecated\">Застарено!</span> Користете $2prop=properties.",
"apihelp-query+messagecollection-example-1": "Список на поддржани јазици",
- "apihelp-query+messagecollection-example-2": "Список на определби на задолжителните пораки за групата „страница-Пример“",
- "apihelp-query+messagecollection-example-3": "Список на незадолжителни пораки на фински со ознаки за групата страница-Пример",
- "apihelp-query+messagecollection-example-4": "Повеќе информации за најновите преработки на преводот за групата страница-Пример",
+ "apihelp-query+messagecollection-example-2": "Список на определби на задолжителните пораки за групата „page-Example“",
+ "apihelp-query+messagecollection-example-3": "Список на незадолжителни пораки на фински со ознаки за групата „page-Example“",
+ "apihelp-query+messagecollection-example-4": "Повеќе информации за најновите преработки на преводот за групата „page-Example“",
"apihelp-query+messagegroups-description": "Дај информации за групите пораки.\n\nИмајте на ум дека параметарот „uselang“ влијае врз јазично-зависните делови.",
- "apihelp-query+messagegroups-param-depth": "Кога го користите форматот „дрво“, ограничете ја длабочината на олку нивоа. Вредноста 0 значи дека нема да се покажат подгрупи. Ако се достигне границата, ќе се појави порака која ќе го наведе бројот на непосредни подгрупи.",
+ "apihelp-query+messagegroups-summary": "Дај информации за групи пораки.",
+ "apihelp-query+messagegroups-extended-description": "Имајте на ум дека параметарот „uselang“ го засега изводот на јазично зависните делови.",
+ "apihelp-query+messagegroups-param-depth": "Кога го користите форматот „дрво“, ограничете ја длабочината на олку нивоа. Вредноста 0 значи дека нема да се покажат подгрупи. Ако се достигне границата, во изводот ќе има и вредност „groupcount“, која ќе го наведе бројот на непосредни подгрупи.",
"apihelp-query+messagegroups-param-filter": "Давај само пораки со назнаки што одговараат на еден или повеќе зададени вносови (не разликува голема/мала буква, одделете со исправени црти, џокер *)",
"apihelp-query+messagegroups-param-format": "Во форматот „дрво“, групите пораки можат да постојат на повеќе места во дрвото.",
"apihelp-query+messagegroups-param-iconsize": "Претпочитана големина на растеризираната икона на групата.",
@@ -43,29 +47,33 @@
"apihelp-query+messagegroups-param-root": "Кога се користи форматот „дрво“, наместо да се започне од најгоното ниво, започни од дадената група пораки, која мора да биде насобрана. Кога се користи рамен формат, ќе се даде само укажаната група.",
"apihelp-query+messagegroups-example-1": "Прикажи групи пораки",
"apihelp-query+messagegroupstats-description": "Побарај статистики за група пораки.",
- "apihelp-query+messagegroupstats-param-timelimit": "Максимално време што треба да се потроши за пресметување на отустните статистики. Ако е нула, ќе се дадат само меѓускладираните резултати од почетокот.",
+ "apihelp-query+messagegroupstats-summary": "Побарај статистики за група пораки.",
+ "apihelp-query+messagegroupstats-param-timelimit": "Највеќе време што може да се потрошиНајвеќе време што може да се потроши за пресметување на отустните статистики. Ако е нула, ќе се дадае само меѓускладираните исход од почетокот.",
"apihelp-query+messagegroupstats-param-group": "Назнака на групата пораки.",
- "apihelp-query+messagegroupstats-example-1": "Список на статистики за потполност на преводите за групата страница-Пример",
+ "apihelp-query+messagegroupstats-example-1": "Список на статистики за потполност на преводите за групата „page-Example“",
"apihelp-query+messagetranslations-description": "Побарај ги сите преводи на една порака.",
+ "apihelp-query+messagetranslations-summary": "Побарај ги сите преводи на една порака.",
"apihelp-query+messagetranslations-param-title": "Целосен наслов на позната порака.",
- "apihelp-query+messagetranslations-example-1": "Список на преводи во викито за MediaWiki:January",
+ "apihelp-query+messagetranslations-example-1": "Список на преводи во викито за „MediaWiki:January“",
"apihelp-translatesandbox-description": "Регистрација и управување со корисници во песочникот.",
+ "apihelp-translatesandbox-summary": "Регистрација и управување со корисници во песочникот.",
"apihelp-translatesandbox-param-do": "Што да се прави.",
"apihelp-translatesandbox-param-userid": "Кориснички назнаки на корисниците што се раководени. Користете 0 за создавања.",
"apihelp-translatesandbox-param-username": "Корисничко име при создавање на корисникот.",
"apihelp-translatesandbox-param-password": "Лозинка при создавање на корисникот.",
"apihelp-translatesandbox-param-email": "Е-пошта при создавање на корисникот.",
- "apihelp-translateuser-description": "Преведувачки информации за корисникот.",
- "apihelp-translateuser-example-1": "Прикажи информации за корисникот",
"apihelp-translationaids-description": "Барај по сите преводни помагала.",
+ "apihelp-translationaids-summary": "Барај по сите преводни помагала.",
"apihelp-translationaids-param-title": "Целосен наслов на позната порака.",
"apihelp-translationaids-param-group": "На која група припаѓа пораката. Ако е празно, тогаш се користи главнатагрупа.",
"apihelp-translationaids-param-prop": "Кои преводни помагала да се вклучат.",
"apihelp-translationaids-example-1": "Прикажи помагала за [[MediaWiki:January/fi]]",
"apihelp-translationreview-description": "Означи ги преводите како проверени.",
+ "apihelp-translationreview-summary": "Означи ги преводите како проверени.",
"apihelp-translationreview-param-revision": "Број на преработката за проверување.",
"apihelp-translationreview-example-1": "Оцени преработка 1",
"apihelp-translationstash-description": "Додај преводи во складот.",
+ "apihelp-translationstash-summary": "Додај преводи во складот.",
"apihelp-translationstash-param-subaction": "Дејство.",
"apihelp-translationstash-param-title": "Наслов на страницата на преводната единица.",
"apihelp-translationstash-param-translation": "Превод направен од корисникот.",
@@ -74,9 +82,48 @@
"apihelp-translationstash-example-1": "Додај превод во складот за [[MediaWiki:Jan/fi]]",
"apihelp-translationstash-example-2": "Побарај во складот",
"apihelp-ttmserver-description": "Побарај предлози од преводните помнила.",
+ "apihelp-ttmserver-summary": "Побарај предлози од преводните помнила.",
"apihelp-ttmserver-param-service": "Која од расположивите преводни служби да се користи.",
- "apihelp-ttmserver-param-sourcelanguage": "Јазичен код на изворниот текст.",
- "apihelp-ttmserver-param-targetlanguage": "Јазичен код на предлогот.",
+ "apihelp-ttmserver-param-sourcelanguage": "Јазичниот код на изворниот текст.",
+ "apihelp-ttmserver-param-targetlanguage": "Јазичниот код на предлогот.",
"apihelp-ttmserver-param-text": "За кој текст да се најдат предлози.",
- "apihelp-ttmserver-example-1": "Дај предлози за преведување на „Help“ од англиски на фински"
+ "apihelp-ttmserver-example-1": "Дај предлози за преведување на „Help“ од англиски на фински",
+ "apihelp-searchtranslations-description": "Пребарајте преводи.",
+ "apihelp-searchtranslations-summary": "Пребарајте преводи.",
+ "apihelp-searchtranslations-param-service": "Која од расположивите преводни служби да се користи.",
+ "apihelp-searchtranslations-param-query": "Низата што треба да се побара.",
+ "apihelp-searchtranslations-param-sourcelanguage": "Јазичниот код на изворниот текст.",
+ "apihelp-searchtranslations-param-language": "На кој јазичен код се бара низата.",
+ "apihelp-searchtranslations-param-group": "Назнака на групата во која се бара низата.",
+ "apihelp-searchtranslations-param-filter": "Филтер за статус на преводи.",
+ "apihelp-searchtranslations-param-match": "Најди соодветства на било кој/сите зборови",
+ "apihelp-searchtranslations-param-case": "Пребарување што разликува големи/мали букви",
+ "apihelp-searchtranslations-param-offset": "Отстап за преводите.",
+ "apihelp-searchtranslations-param-limit": "Големина на исходот.",
+ "apihelp-searchtranslations-example-1": "Прикажи преводи на овој јазик.",
+ "apihelp-searchtranslations-example-2": "Приказ на непреведени статии што одвораваат на бараното на изворниот јазик.",
+ "apihelp-translationcheck-description": "Потврди даден преводен внос според проверувачите на пораки.",
+ "apihelp-translationcheck-summary": "Потврди преводи.",
+ "apihelp-translationcheck-param-title": "Наслов на страницата со именски простор и јазичен код.",
+ "apihelp-translationcheck-param-translation": "Превод за потврда.",
+ "apierror-translate-duplicateaggregategroup": "Групата пораки веќе постои",
+ "apierror-translate-fuzzymessage": "Не можете да проверувате застарени пораки",
+ "apierror-translate-groupreviewdisabled": "Проверката на групи пораки не е во употреба.",
+ "apierror-translate-invalidaggregategroup": "Неважечка група збирни пораки",
+ "apierror-translate-invalidaggregategroupname": "Неважечки назив за групата збирни пораки",
+ "apierror-translate-invalidgroup": "Групата не постои или е неважечка",
+ "apierror-translate-invalidstate": "Побараната состојба е неважечка.",
+ "apierror-translate-invalidlanguage": "Бараниот јазик е неважечки.",
+ "apierror-translate-invalidupdate": "Неважечка поднова",
+ "apierror-translate-language-disabled": "Преведувањето на $1 е оневозможено.",
+ "apierror-translate-language-disabled-reason": "Преведувањето на $1 е оневозможено: $2",
+ "apierror-translate-language-disabled-source": "Изворниот јазик на оваа група е $1. Изберете на кој јазик сакате да преведувате.",
+ "apierror-translate-nodynamicgroups": "Динамичките групи пораки не се поддржани овде",
+ "apierror-translate-nomessagefortitle": "Насловот не соодветствува на преводлива порака",
+ "apierror-translate-notranslationservices": "Нема поставено јавни преводни служби. Администраторот на викито треба соодветно да го постави <var>$wgTranslateTranslationServices</var> пред да може да се користи оваа можност.",
+ "apierror-translate-owntranslation": "Не можете да проверувате свои преводи",
+ "apierror-translate-sandboxdisabled": "Песочничката функција не е во употреба",
+ "apierror-translate-sandbox-invalidppassword": "Неважечка лозинка",
+ "apierror-translate-unknownmessage": "Непозната порака",
+ "apiwarn-translate-alreadyreviewedbyyou": "Веќе ја имате означено како проверена"
}
diff --git a/MLEB/Translate/i18n/api/ms.json b/MLEB/Translate/i18n/api/ms.json
index 93867560..038190df 100644
--- a/MLEB/Translate/i18n/api/ms.json
+++ b/MLEB/Translate/i18n/api/ms.json
@@ -4,6 +4,5 @@
"Anakmalaysia"
]
},
- "apihelp-query+languagestats-param-language": "Kod bahasa.",
- "apihelp-translateuser-example-1": "Paparkan maklumat mengenai pengguna ini"
+ "apihelp-query+languagestats-param-language": "Kod bahasa."
}
diff --git a/MLEB/Translate/i18n/api/nl.json b/MLEB/Translate/i18n/api/nl.json
index 0f06c648..3f101926 100644
--- a/MLEB/Translate/i18n/api/nl.json
+++ b/MLEB/Translate/i18n/api/nl.json
@@ -2,8 +2,30 @@
"@metadata": {
"authors": [
"Sjoerddebruin",
- "Siebrand"
+ "Siebrand",
+ "Robin0van0der0vliet",
+ "Mainframe98",
+ "Robin van der Vliet",
+ "Mar(c)"
]
},
- "apihelp-translationstash-param-metadata": "JSON-object."
+ "apihelp-groupreview-param-group": "Berichtgroep.",
+ "apihelp-groupreview-param-language": "Taalcode.",
+ "apihelp-query+languagestats-param-language": "Taalcode.",
+ "apihelp-query+messagecollection-param-group": "Berichtgroep.",
+ "apihelp-query+messagecollection-param-language": "Taalcode.",
+ "apihelp-query+messagecollection-example-1": "Lijst van ondersteunde talen",
+ "apihelp-query+messagecollection-example-2": "Lijst met niet-optionele berichtdefinities voor de groep \"page-Example\"",
+ "apihelp-query+messagecollection-example-3": "Lijst met optionele berichten in het Fins met labels voor de groep \"page-Example\"",
+ "apihelp-query+messagecollection-example-4": "Meer informatie over de nieuwste vertaalde versies voor de groep \"page-Example\"",
+ "apihelp-query+messagegroupstats-example-1": "Lijst met vertalingsstatistieken voor de groep \"page-Example\"",
+ "apihelp-query+messagetranslations-example-1": "Lijst met vertalingen in de wiki voor \"MediaWiki:January\"",
+ "apihelp-translationstash-param-subaction": "Handeling.",
+ "apihelp-translationstash-param-metadata": "JSON-object.",
+ "apihelp-searchtranslations-description": "Vertalingen doorzoeken.",
+ "apihelp-searchtranslations-summary": "Vertalingen doorzoeken.",
+ "apierror-translate-invalidgroup": "Groep bestaat niet of is ongeldig",
+ "apierror-translate-language-disabled": "Vertalen naar deze taal is uitgeschakeld",
+ "apierror-translate-sandbox-invalidppassword": "Ongeldig wachtwoord",
+ "apierror-translate-unknownmessage": "Onbekend bericht"
}
diff --git a/MLEB/Translate/i18n/api/pl.json b/MLEB/Translate/i18n/api/pl.json
index 24b6346c..4d99a1fd 100644
--- a/MLEB/Translate/i18n/api/pl.json
+++ b/MLEB/Translate/i18n/api/pl.json
@@ -4,15 +4,50 @@
"Chrumps"
]
},
+ "apihelp-aggregategroups-summary": "Zarządzaj grupami zbiorczymi komunikatów.",
+ "apihelp-aggregategroups-param-groupname": "Nazwa zbiorczej grupy komunikatów.",
+ "apihelp-aggregategroups-param-groupdescription": "Opis zbiorczej grupy komunikatów.",
"apihelp-groupreview-param-group": "Grupa komunikatów.",
"apihelp-groupreview-param-language": "Kod języka.",
"apihelp-query+languagestats-param-language": "Kod języka.",
+ "apihelp-query+messagecollection-param-group": "Grupa komunikatów.",
"apihelp-query+messagecollection-param-language": "Kod języka.",
+ "apihelp-query+messagecollection-param-limit": "Liczba komunikatów do pokazania (po filtrowaniu).",
"apihelp-query+messagecollection-example-1": "Lista obsługiwanych języków",
"apihelp-query+messagegroups-param-iconsize": "Preferowany rozmiar zrasteryzowanej grupy ikon.",
"apihelp-query+messagegroups-example-1": "Pokaż grupy komunikatów",
- "apihelp-translateuser-example-1": "Pokaż informacje o użytkowniku",
+ "apihelp-translatesandbox-param-username": "Nazwa użytkownika podczas tworzenia użytkownika.",
+ "apihelp-translatesandbox-param-password": "Hasło podczas tworzenia użytkownika.",
+ "apihelp-translatesandbox-param-email": "E-mail podczas tworzenia użytkownika.",
+ "apihelp-translationreview-description": "Oznacz tłumaczenia jako przejrzane.",
+ "apihelp-translationreview-summary": "Oznacz tłumaczenia jako przejrzane.",
+ "apihelp-translationstash-param-subaction": "Działanie.",
+ "apihelp-translationstash-param-title": "Tytuł strony jednostki tłumaczeniowej.",
"apihelp-translationstash-param-translation": "Tłumaczenia wykonane przez użytkownika.",
"apihelp-translationstash-param-metadata": "Obiekt JSON.",
- "apihelp-ttmserver-param-sourcelanguage": "Kod języka tekstu źródłowego."
+ "apihelp-ttmserver-param-sourcelanguage": "Kod języka tekstu źródłowego.",
+ "apihelp-searchtranslations-description": "Wyszukiwanie tłumaczeń.",
+ "apihelp-searchtranslations-param-query": "Łańcuch znaków do wyszukania.",
+ "apihelp-searchtranslations-param-sourcelanguage": "Kod języka tekstu źródłowego.",
+ "apihelp-searchtranslations-param-language": "Kod języka do wyszukiwania ciąg znaków.",
+ "apihelp-searchtranslations-param-limit": "Rozmiar wyniku.",
+ "apihelp-searchtranslations-example-1": "Pokaż tłumaczenia dla języka.",
+ "apihelp-translationcheck-param-title": "Tytuł strony z przestrzenią nazw i kodem języka.",
+ "apihelp-translationcheck-param-translation": "Tłumaczenie do sprawdzenia poprawności.",
+ "apierror-translate-duplicateaggregategroup": "Grupa komunikatów już istnieje",
+ "apierror-translate-groupreviewdisabled": "Przeglądanie grup komunikatów nie jest używane.",
+ "apierror-translate-invalidaggregategroup": "Nieprawidłowa zbiorcza grupa komunikatów",
+ "apierror-translate-invalidaggregategroupname": "Nieprawidłowa nazwa zbiorczej grupy komunikatów",
+ "apierror-translate-invalidgroup": "Grupa nie istnieje lub jest nieprawidłowa",
+ "apierror-translate-invalidupdate": "Nieprawidłowa aktualizacja",
+ "apierror-translate-language-disabled": "Tłumaczenie na $1 jest wyłączone.",
+ "apierror-translate-language-disabled-reason": "Tłumaczenie na $1 jest wyłączone: $2",
+ "apierror-translate-language-disabled-source": "Językiem źródłowym tej grupy jest $1. Wybierz inny język, na który chcesz tłumaczyć.",
+ "apierror-translate-nodynamicgroups": "Dynamiczne grupy komunikatów nie są tutaj obsługiwane",
+ "apierror-translate-nomessagefortitle": "Tytuł nie odpowiada komunikatowi do tłumaczenia",
+ "apierror-translate-owntranslation": "Nie można przeglądać własnych tłumaczeń",
+ "apierror-translate-sandboxdisabled": "Funkcja brudnopisu nie jest używana",
+ "apierror-translate-sandbox-invalidppassword": "Nieprawidłowe hasło",
+ "apierror-translate-unknownmessage": "Nieznany komunikat",
+ "apiwarn-translate-alreadyreviewedbyyou": "Już oznaczono jako przejrzane przez ciebie"
}
diff --git a/MLEB/Translate/i18n/api/ps.json b/MLEB/Translate/i18n/api/ps.json
index c657dcc3..30add5b4 100644
--- a/MLEB/Translate/i18n/api/ps.json
+++ b/MLEB/Translate/i18n/api/ps.json
@@ -4,9 +4,23 @@
"Ahmed-Najib-Biabani-Ibrahimkhel"
]
},
+ "apihelp-aggregategroups-param-do": "د پيغام ډلې راغونډولو سره څه کولی شو.",
+ "apihelp-aggregategroups-param-aggregategroup": "د پيغام ډلې پېژند راغونډول.",
"apihelp-aggregategroups-param-group": "د پيغام ډلې پېژند.",
+ "apihelp-aggregategroups-param-groupname": "د پيغام ډلې نوم راغونډول.",
+ "apihelp-aggregategroups-param-groupdescription": "د پيغام ډلې څرگندونه راغونډول.",
+ "apihelp-aggregategroups-example-1": "يوه ډله اړوندول",
"apihelp-groupreview-param-group": "پيغام ډله.",
+ "apihelp-groupreview-param-language": "د ژبې کوډ.",
+ "apihelp-query+languagestats-param-language": "د ژبې کوډ.",
"apihelp-query+messagecollection-param-group": "پيغام ډله.",
+ "apihelp-query+messagecollection-param-language": "د ژبې کوډ.",
+ "apihelp-query+messagecollection-example-1": "د ملاتړو ژبو لړليک",
"apihelp-query+messagegroups-example-1": "پيغام ډلې ښکاره کول",
- "apihelp-query+messagegroupstats-param-group": "د پيغام ډلې پېژند."
+ "apihelp-query+messagegroupstats-param-group": "د پيغام ډلې پېژند.",
+ "apihelp-translatesandbox-param-do": "څه کولی شم.",
+ "apihelp-translationstash-param-subaction": "کړنه.",
+ "apihelp-searchtranslations-description": "ژباړې پلټل.",
+ "apihelp-searchtranslations-param-limit": "د پايلې کچه.",
+ "apihelp-searchtranslations-example-1": "د ټاکلې ژبې ژباړې ښکاره کول."
}
diff --git a/MLEB/Translate/i18n/api/pt-br.json b/MLEB/Translate/i18n/api/pt-br.json
index 50093fb4..db508a72 100644
--- a/MLEB/Translate/i18n/api/pt-br.json
+++ b/MLEB/Translate/i18n/api/pt-br.json
@@ -1,10 +1,132 @@
{
"@metadata": {
"authors": [
- "Mordecool"
+ "Mordecool",
+ "Dianakc",
+ "Felipe L. Ewald",
+ "Eduardo Addad de Oliveira"
]
},
- "apihelp-query+languagestats-param-language": "Código da linguagem",
+ "apihelp-aggregategroups-description": "Gerencie grupos de mensagens agregadas.\n\nVocê pode adicionar e remover grupos de mensagens agregadas e associar ou dissociar grupos de mensagens deles (um de cada vez).",
+ "apihelp-aggregategroups-summary": "Gerencie grupos de mensagens agregadas.",
+ "apihelp-aggregategroups-extended-description": "Você pode adicionar e remover grupos de mensagens agregados e associar ou dissociar grupos de mensagens deles (um de cada vez).",
+ "apihelp-aggregategroups-param-do": "O que fazer com o grupo de mensagens agregadas.",
+ "apihelp-aggregategroups-param-aggregategroup": "ID agregada do grupo de mensagens.",
+ "apihelp-aggregategroups-param-group": "ID do grupo de mensagens.",
+ "apihelp-aggregategroups-param-groupname": "Agregar grupo de mensagens por nome.",
+ "apihelp-aggregategroups-param-groupdescription": "Descrição agregada do grupo de mensagens.",
+ "apihelp-aggregategroups-example-1": "Associar um grupo",
+ "apihelp-groupreview-description": "Defina estados de fluxo de trabalho do grupo de mensagens.",
+ "apihelp-groupreview-summary": "Defina estados de fluxo de trabalho do grupo de mensagens.",
+ "apihelp-groupreview-param-group": "Grupo de mensagens.",
+ "apihelp-groupreview-param-language": "Código da linguagem.",
+ "apihelp-groupreview-param-state": "O novo estado para o grupo.",
+ "apihelp-groupreview-example-1": "Marque o estado da tradução alemã para o grupo de mensagens \"group-Example\" como preparado",
+ "apihelp-query+languagestats-description": "Consultar estatísticas de idioma.",
+ "apihelp-query+languagestats-summary": "Consultar estatísticas de idioma.",
+ "apihelp-query+languagestats-param-timelimit": "Tempo máximo para gastar no cálculo das estatísticas faltantes. Se zero, apenas os resultados em cache desde o início são retornados.",
+ "apihelp-query+languagestats-param-language": "Código da linguagem.",
+ "apihelp-query+languagestats-example-1": "Lista de estatísticas de conclusão de tradução para finlandês",
+ "apihelp-query+messagecollection-description": "Consultar MessageCollection sobre traduções.",
+ "apihelp-query+messagecollection-summary": "Consultar MessageCollection sobre traduções.",
+ "apihelp-query+messagecollection-param-group": "Grupo de mensagens.",
+ "apihelp-query+messagecollection-param-language": "Código da linguagem.",
+ "apihelp-query+messagecollection-param-limit": "Quantas mensagem mostrar (após a filtragem).",
+ "apihelp-query+messagecollection-param-offset": "Inteiro ou deslocamento da chave para o início.",
+ "apihelp-query+messagecollection-param-filter": "Filtros de cobrança de mensagens. Use <kbd>!</Kbd> para negar a condição. Por exemplo, <kbd>!fuzzy</kbd> significa listar apenas todas as mensagens não difusas. Os filtros são aplicados na ordem indicada.\n;fuzzy:Mensagens com tag fuzzy.\n;opcional:Mensagens que devem ser traduzidas somente se forem necessárias alterações.\n;ignoradas:Mensagens que nunca são traduzidas.\n;hastranslation:Mensagens que têm uma tradução, independentemente se for difusa ou não.\n;traduzido:Mensagens que têm uma tradução que não é difusa.\n;alterada:Mensagens que foram traduzidas ou alteradas desde a última exportação.\n;reviewer&#58;N:Mensagens onde o número de usuário <kbd>N</kbd> está entre os revisores.\n;last-translator&#58;N:Mensagens onde o número de usuário <kbd>N</kbd> é o último tradutor.",
+ "apihelp-query+messagecollection-param-prop": "Quais propriedades obter:\n;definição:Definição da mensagem.\n;tradução:Tradução atual (sem a string $1, se houver, use as tags para verificar traduções desatualizadas ou quebradas).\n;tags:Tags de mensagens, como opcionais, ignorado e fuzzy.\n;properties:Propriedades da mensagem, como status, revisão, último tradutor. Pode variar entre as mensagens.\n;revision:<span class=\"deprecated\">Obsoleto!</span> Use $2prop=properties.",
+ "apihelp-query+messagecollection-example-1": "Lista de idiomas suportados",
+ "apihelp-query+messagecollection-example-2": "Lista de definições de mensagens não-opcionais para o grupo \"page-Example\"",
+ "apihelp-query+messagecollection-example-3": "Lista de mensagens opcionais em finlandês com tags para o grupo \"page-Example\"",
+ "apihelp-query+messagecollection-example-4": "Mais informações sobre revisões de tradução mais recentes para o grupo \"page-Example\"",
+ "apihelp-query+messagegroups-description": "Retorna informações sobre grupos de mensagens.\n\nNote que o parâmetro uselang afeta a saída de partes dependentes do idioma.",
+ "apihelp-query+messagegroups-summary": "Retorna informações sobre grupos de mensagens.",
+ "apihelp-query+messagegroups-extended-description": "Observe que o parâmetro uselang afeta a saída de partes dependentes do idioma.",
+ "apihelp-query+messagegroups-param-depth": "Ao usar o formato da árvore, limite a profundidade para esses vários níveis. O valor 0 significa que nenhum subgrupo é mostrado. Se o limite for atingido, a saída inclui um valor de \"goupcount\", que indica o número de crianças diretas.",
+ "apihelp-query+messagegroups-param-filter": "Somente retornar mensagens com IDs que correspondem a uma ou mais das entradas fornecidas (sem diferenciação de maiúsculas e minúsculas, separadas por pipes, * curinga).",
+ "apihelp-query+messagegroups-param-format": "No formato da árvore, os grupos de mensagens podem existir em vários lugares na árvore.",
+ "apihelp-query+messagegroups-param-iconsize": "Tamanho preferido do ícone do grupo rasterizado.",
+ "apihelp-query+messagegroups-param-prop": "Qual informação relacionada à tradução para obter:\n;id:Incluir ID do grupo.\n;rótulo:Incluir rótulo do grupo.\n;descrição:Incluir descrição do grupo.\n;classe:Incluir nome da classe do grupo.\n;namespace:Incluir espaço nominal do grupo. Nem todos os grupos pertencem a um único espaço nominal.\n;existe:Incluir propriedade de existência auto-calculada do grupo.\n;ícone:Incluir URLs para o ícone do grupo.\n;prioridade:incluir status de prioridade como desencorajado.\n;prioritylangs:Incluir idiomas preferenciais. Se não for definido, isso retorna false.\n;priorityforce:Incluir status de prioridade - é a configuração de idioma de prioridade forçada.\n;workflowstates:Inclua os estados de fluxo de trabalho para o grupo de mensagens.",
+ "apihelp-query+messagegroups-param-root": "Ao usar o formato da árvore, em vez de começar do início do nível superior do grupo de mensagens fornecido, que deve ser um grupo de mensagens agregado. Ao usar apenas o formato plano, o grupo especificado é retornado.",
+ "apihelp-query+messagegroups-example-1": "Mostrar grupos de mensagens",
+ "apihelp-query+messagegroupstats-description": "Consultar estatísticas do grupo de mensagens.",
+ "apihelp-query+messagegroupstats-summary": "Consultar estatísticas do grupo de mensagens.",
+ "apihelp-query+messagegroupstats-param-timelimit": "Tempo máximo para gastar no cálculo das estatísticas faltantes. Se zero, apenas os resultados em cache desde o início são retornados.",
+ "apihelp-query+messagegroupstats-param-group": "ID do grupo de mensagens.",
+ "apihelp-query+messagegroupstats-example-1": "Lista de estatísticas de conclusão de tradução para o grupo \"page-Example\"",
+ "apihelp-query+messagetranslations-description": "Consultar todas as traduções para uma única mensagem.",
+ "apihelp-query+messagetranslations-summary": "Consultar todas as traduções para uma única mensagem.",
+ "apihelp-query+messagetranslations-param-title": "Título completo de uma mensagem conhecida.",
+ "apihelp-query+messagetranslations-example-1": "Lista de traduções na wiki para \"MediaWiki:January\"",
+ "apihelp-translatesandbox-description": "Inscreva-se e gerencie usuários da sandbox.",
+ "apihelp-translatesandbox-summary": "Inscreva-se e gerencie usuários da sandbox.",
"apihelp-translatesandbox-param-do": "O que fazer.",
- "apihelp-translationstash-param-subaction": "Ação."
+ "apihelp-translatesandbox-param-userid": "IDs de usuários dos usuários que estão sendo gerenciados. Use 0 para criações.",
+ "apihelp-translatesandbox-param-username": "Nome de usuário ao criar usuário.",
+ "apihelp-translatesandbox-param-password": "Senha ao criar usuário.",
+ "apihelp-translatesandbox-param-email": "E-mail ao criar usuário.",
+ "apihelp-translationaids-description": "Consultar todas as ajudas de tradução.",
+ "apihelp-translationaids-summary": "Consultar todas as ajudas de tradução.",
+ "apihelp-translationaids-param-title": "Título completo de uma mensagem conhecida.",
+ "apihelp-translationaids-param-group": "O grupo de mensagens à qual a mensagem pertence. Se estiver vazio, o grupo primário é usado.",
+ "apihelp-translationaids-param-prop": "Que ajudantes de tradução incluir.",
+ "apihelp-translationaids-example-1": "Mostrar ajudas para [[MediaWiki:January/fi]]",
+ "apihelp-translationreview-description": "Marcar traduções revisadas.",
+ "apihelp-translationreview-summary": "Marcar traduções revisadas.",
+ "apihelp-translationreview-param-revision": "O número da revisão a ser revisado.",
+ "apihelp-translationreview-example-1": "Revisar revisão 1",
+ "apihelp-translationstash-description": "Adicione traduções para o stash.",
+ "apihelp-translationstash-summary": "Adicione traduções para o stash.",
+ "apihelp-translationstash-param-subaction": "Ação.",
+ "apihelp-translationstash-param-title": "Título da página da unidade de tradução.",
+ "apihelp-translationstash-param-translation": "Tradução feita pelo usuário.",
+ "apihelp-translationstash-param-metadata": "Objeto JSON.",
+ "apihelp-translationstash-param-username": "Opcionalmente, o usuário cujo stash obter. Somente os usuários privilegiados podem fazer isso.",
+ "apihelp-translationstash-example-1": "Adiciona uma tradução ao stash para [[MediaWiki:Jan/fi]]",
+ "apihelp-translationstash-example-2": "Consulta o stash",
+ "apihelp-ttmserver-description": "Consultar sugestões das memórias de tradução.",
+ "apihelp-ttmserver-summary": "Consultar sugestões das memórias de tradução.",
+ "apihelp-ttmserver-param-service": "Qual dos serviços de tradução disponíveis para usar.",
+ "apihelp-ttmserver-param-sourcelanguage": "O código de idioma do texto original.",
+ "apihelp-ttmserver-param-targetlanguage": "O código de idioma da sugestão.",
+ "apihelp-ttmserver-param-text": "O texto para o qual encontrar sugestões.",
+ "apihelp-ttmserver-example-1": "Obtenha sugestões para traduzir \"Help\" do inglês para o finlandês",
+ "apihelp-searchtranslations-description": "Pesquisa traduções.",
+ "apihelp-searchtranslations-summary": "Pesquisa traduções.",
+ "apihelp-searchtranslations-param-service": "Qual dos serviços de tradução disponíveis para usar.",
+ "apihelp-searchtranslations-param-query": "A string pela qual procurar.",
+ "apihelp-searchtranslations-param-sourcelanguage": "O código de idioma do texto original.",
+ "apihelp-searchtranslations-param-language": "O código de idioma para o qual procurar string.",
+ "apihelp-searchtranslations-param-group": "O ID do grupo para pesquisar a string.",
+ "apihelp-searchtranslations-param-filter": "Filtro de status da tradução de mensagens.",
+ "apihelp-searchtranslations-param-match": "Corresponder qualquer/todas as palavras da pesquisa.",
+ "apihelp-searchtranslations-param-case": "Pesquisa caso (não)sensitiva.",
+ "apihelp-searchtranslations-param-offset": "Offset para as traduções.",
+ "apihelp-searchtranslations-param-limit": "Tamanho do resultado.",
+ "apihelp-searchtranslations-example-1": "Mostrar traduções para o idioma.",
+ "apihelp-searchtranslations-example-2": "Mostre mensagens não traduzidas correspondentes à consulta no idioma de origem.",
+ "apihelp-translationcheck-description": "Validar a tradução fornecida contra os verificadores de mensagens.",
+ "apihelp-translationcheck-summary": "Validar traduções.",
+ "apihelp-translationcheck-param-title": "Título de página com espaço nominal e código de língua.",
+ "apihelp-translationcheck-param-translation": "A tradução para validar.",
+ "apierror-translate-duplicateaggregategroup": "Grupo de mensagens já existe",
+ "apierror-translate-fuzzymessage": "Não é possível revisar as traduções imprecisas",
+ "apierror-translate-groupreviewdisabled": "Revisão do grupo de mensagens não está em uso.",
+ "apierror-translate-invalidaggregategroup": "Grupo de mensagens agregadas inválido",
+ "apierror-translate-invalidaggregategroupname": "Nome do grupo de mensagens agregado inválido",
+ "apierror-translate-invalidgroup": "O grupo não existe ou é inválido",
+ "apierror-translate-invalidstate": "O estado solicitado é inválido.",
+ "apierror-translate-invalidlanguage": "O idioma solicitado é inválido.",
+ "apierror-translate-invalidupdate": "Atualização inválida",
+ "apierror-translate-language-disabled": "A tradução para $1 foi impossibilitada.",
+ "apierror-translate-language-disabled-reason": "A tradução para $1 foi impossibilitada: $2",
+ "apierror-translate-language-disabled-source": "O idioma de origem deste grupo é $1. Selecione outro idioma, para a qual irá traduzir, por favor.",
+ "apierror-translate-nodynamicgroups": "Os grupos de mensagens dinâmicas não são suportados aqui",
+ "apierror-translate-nomessagefortitle": "O título não corresponde a uma mensagem traduzível",
+ "apierror-translate-notranslationservices": "Não foram configurados serviços públicos de tradução. O administrador da wiki precisa de definir <var>$wgTranslateTranslationServices</var> devidamente para esta funcionalidade poder ser usada.",
+ "apierror-translate-owntranslation": "Não é possível revisar as próprias traduções",
+ "apierror-translate-sandboxdisabled": "O recurso sandbox não está em uso",
+ "apierror-translate-sandbox-invalidppassword": "Senha inválida",
+ "apierror-translate-unknownmessage": "Mensagem desconhecida",
+ "apiwarn-translate-alreadyreviewedbyyou": "Já marcado como revisado por você"
}
diff --git a/MLEB/Translate/i18n/api/pt.json b/MLEB/Translate/i18n/api/pt.json
index a0f0795c..fca1296c 100644
--- a/MLEB/Translate/i18n/api/pt.json
+++ b/MLEB/Translate/i18n/api/pt.json
@@ -1,14 +1,131 @@
{
"@metadata": {
"authors": [
- "Vitorvicentevalente"
+ "Vitorvicentevalente",
+ "Fúlvio",
+ "Hamilton Abreu"
]
},
- "apihelp-groupreview-param-language": "Código de idioma.",
- "apihelp-query+languagestats-param-language": "Código de idioma.",
- "apihelp-query+messagecollection-param-language": "Código de idioma.",
- "apihelp-query+messagecollection-example-1": "Lista de idiomas suportados.",
+ "apihelp-aggregategroups-description": "Administrar grupos agregadores de mensagens.\n\nPode adicionar e remover grupos agregadores de mensagens e associar-lhes ou desassociar-lhes grupos de mensagens (um de cada vez).",
+ "apihelp-aggregategroups-summary": "Administrar grupos agregadores de mensagens.",
+ "apihelp-aggregategroups-extended-description": "Pode adicionar e remover grupos agregadores de mensagens e associar-lhes ou desassociar-lhes grupos de mensagens (um de cada vez).",
+ "apihelp-aggregategroups-param-do": "O que fazer com o grupo agregador de mensagens.",
+ "apihelp-aggregategroups-param-aggregategroup": "Identificador do grupo agregador de mensagens.",
+ "apihelp-aggregategroups-param-group": "Identificador do grupo de mensagens.",
+ "apihelp-aggregategroups-param-groupname": "Nome do grupo agregador de mensagens.",
+ "apihelp-aggregategroups-param-groupdescription": "Descrição do grupo agregador de mensagens.",
+ "apihelp-aggregategroups-example-1": "Associar um grupo",
+ "apihelp-groupreview-description": "Definir estados do fluxo de trabalho dos grupos de mensagens.",
+ "apihelp-groupreview-summary": "Definir estados do fluxo de trabalho dos grupos de mensagens.",
+ "apihelp-groupreview-param-group": "Grupo de mensagens.",
+ "apihelp-groupreview-param-language": "Código de língua.",
+ "apihelp-groupreview-param-state": "O novo estado do grupo.",
+ "apihelp-groupreview-example-1": "Marcar o estado da tradução para alemão do grupo de mensagens \"group-Example\" como pronta",
+ "apihelp-query+languagestats-description": "Consultar estatísticas de línguas.",
+ "apihelp-query+languagestats-summary": "Consultar estatísticas de línguas.",
+ "apihelp-query+languagestats-param-timelimit": "Máximo de tempo a usar para calcular estatísticas em falta. Se zero, só são devolvidos os resultados armazenados na ''cache'' desde o início.",
+ "apihelp-query+languagestats-param-language": "Código de língua.",
+ "apihelp-query+languagestats-example-1": "Lista das estatísticas de finalização de traduções para finlandês",
+ "apihelp-query+messagecollection-description": "Consultar MessageCollection sobre traduções.",
+ "apihelp-query+messagecollection-summary": "Consultar MessageCollection sobre traduções.",
+ "apihelp-query+messagecollection-param-group": "Grupo de mensagens.",
+ "apihelp-query+messagecollection-param-language": "Código de língua.",
+ "apihelp-query+messagecollection-param-limit": "Número de mensagens a serem mostradas (após filtragem).",
+ "apihelp-query+messagecollection-param-offset": "Número inteiro ou posição da chave de início.",
+ "apihelp-query+messagecollection-param-filter": "Filtros de recolha de mensagens. Use <kbd>!</kbd> para negar uma condição. Por exemplo, <kbd>!fuzzy</kbd> significa listar só as mensagens não sinalizadas com FUZZY. Os filtros são aplicados na ordem fornecida.\n;fuzzy:Mensagens com a etiqueta FUZZY.\n;optional:Mensagens que só devem ser traduzidas se forem necessárias mudanças.\n;ignored:Mensagens que nunca são traduzidas.\n;hastranslation:Mensagens que têm uma tradução, sinalizada ou não com a etiqueta FUZZY.\n;translated:Mensagens que têm uma tradução não sinalizada com a etiqueta FUZZY.\n;changed:Mensagens que foram traduzidas ou alteradas desde a última exportação.\n;reviewer&#58;N:Mensagens onde o utilizador nº <kbd>N</kbd> está entre os revisores.\n;last-translator&#58;N:Mensagens onde o utilizador nº <kbd>N</kbd> é o último tradutor.",
+ "apihelp-query+messagecollection-param-prop": "As propriedades que serão obtidas:\n;definition:Definição da mensagem.\n;translation:Tradução atual (sem o texto $1, se existir, usar as etiquetas para verificar se as traduções são antigas ou incorretas).\n;tags:Etiquetas da mensagem, como \"optional\" (opcional), \"ignored\" (ignorada) e \"fuzzy\".\n;properties:Propriedades da mensagem, como \"status\" (estado), \"revision\" (revisão), \"last-translator\" (último tradutor). Pode variar entre mensagens.\n;revision:<span class=\"deprecated\">Obsoleto!</span> Usar $2prop=properties.",
+ "apihelp-query+messagecollection-example-1": "Lista de línguas suportadas.",
+ "apihelp-query+messagecollection-example-2": "Lista de definições obrigatórias de mensagens do grupo \"page-Example\"",
+ "apihelp-query+messagecollection-example-3": "Lista de mensagens opcionais em finlandês com etiquetas para o grupo \"page-Example\"",
+ "apihelp-query+messagecollection-example-4": "Mais informação sobre as últimas revisões de traduções para o grupo \"page-Example\"",
+ "apihelp-query+messagegroups-description": "Devolver informação sobre grupos de mensagens.\n\nNota que o parâmetro \"uselang\" afeta o resultado das partes dependentes da língua.",
+ "apihelp-query+messagegroups-summary": "Devolver informação sobre grupos de mensagens.",
+ "apihelp-query+messagegroups-extended-description": "Nota que o parâmetro \"uselang\" afeta o resultado das partes dependentes da língua.",
+ "apihelp-query+messagegroups-param-depth": "Quando for usado o formato de árvore, limitar a profundidade a esta quantidade de níveis. O valor 0 significa que não serão mostrados subgrupos. Se o limite for atingido, o resultado inclui um valor de \"contagem de grupo\", que indica o número de filhos diretos.",
+ "apihelp-query+messagegroups-param-filter": "Só devolver mensagens com identificadores que correspondam a uma ou mais das entradas fornecidas (sem diferenciar maiúsculas e minúsculas, separados por barras verticais, * como carácter de substituição).",
+ "apihelp-query+messagegroups-param-format": "Em forma de árvore, os grupos de mensagens podem existir em mais do que um lugar na árvore.",
+ "apihelp-query+messagegroups-param-iconsize": "Tamanho preferido do ícone de grupo em formato ''raster''.",
+ "apihelp-query+messagegroups-param-prop": "Que informação será obtida sobre a tradução:\n;id:Incluir o identificador do grupo.\n;label:Incluir a etiqueta do grupo.\n;description:Incluir a descrição do grupo.\n;class:Incluir o nome de classe do grupo.\n;namespace:Incluir o espaço nominal do grupo. Nem todos os grupos pertencem a um único espaço nominal.\n;exists:Incluir a propriedade de existência autocalculada do grupo.\n;icon:Incluir URL para ícone do grupo.\n;priority:Incluir o estado de prioridade, como desencorajado.\n;prioritylangs:Incluir línguas preferidas. Se não estiver definido, devolve \"false\" (falso).\n;priorityforce:Incluir o estado da prioridade - se a definição de prioridade de línguas é forçada.\n;workflowstates:Incluir os estados do fluxo de trabalho do grupo de mensagens.",
+ "apihelp-query+messagegroups-param-root": "Quando for usado o formato de árvore, em vez de começar pelo nível de topo, começar pelo grupo de mensagens fornecido, que tem de ser um grupo agregador de mensagens. Quando for usado o formato simples só é devolvido o grupo especificado.",
+ "apihelp-query+messagegroups-example-1": "Mostrar grupos de mensagens",
+ "apihelp-query+messagegroupstats-description": "Consultar estatísticas do grupo de mensagens.",
+ "apihelp-query+messagegroupstats-summary": "Consultar estatísticas do grupo de mensagens.",
+ "apihelp-query+messagegroupstats-param-timelimit": "Máximo de tempo a usar para calcular estatísticas em falta. Se zero, só são devolvidos os resultados armazenados na ''cache'' desde o início.",
+ "apihelp-query+messagegroupstats-param-group": "Identificador do grupo de mensagens.",
+ "apihelp-query+messagegroupstats-example-1": "Lista das estatísticas de finalização de traduções para o grupo \"page-Example\"",
+ "apihelp-query+messagetranslations-description": "Consultar todas as traduções de uma única mensagem.",
+ "apihelp-query+messagetranslations-summary": "Consultar todas as traduções de uma única mensagem.",
+ "apihelp-query+messagetranslations-param-title": "Título completo de uma mensagem conhecida.",
+ "apihelp-query+messagetranslations-example-1": "Lista de traduções na wiki de \"MediaWiki:January\"",
+ "apihelp-translatesandbox-description": "Registar e gerir os utilizadores em teste.",
+ "apihelp-translatesandbox-summary": "Registar e gerir os utilizadores em teste.",
+ "apihelp-translatesandbox-param-do": "O que fazer.",
+ "apihelp-translatesandbox-param-userid": "Identificadores dos utilizadores a serem geridos. Use 0 para criá-los.",
+ "apihelp-translatesandbox-param-username": "Nome de utilizador ao criá-lo.",
+ "apihelp-translatesandbox-param-password": "Palavra-passe ao criar o utilizador.",
+ "apihelp-translatesandbox-param-email": "Correio eletrónico ao criar o utilizador.",
+ "apihelp-translationaids-description": "Consultar todos os auxiliares de tradução.",
+ "apihelp-translationaids-summary": "Consultar todos os auxiliares de tradução.",
+ "apihelp-translationaids-param-title": "Título completo de uma mensagem conhecida.",
+ "apihelp-translationaids-param-group": "Grupo de mensagens ao qual a mensagem pertence. Se vazio, será usado o grupo principal.",
+ "apihelp-translationaids-param-prop": "Os auxiliares de tradução a serem incluídos.",
+ "apihelp-translationaids-example-1": "Mostrar auxílios para [[MediaWiki:January/fi]]",
+ "apihelp-translationreview-description": "Marcar as traduções como revistas.",
+ "apihelp-translationreview-summary": "Marcar as traduções como revistas.",
+ "apihelp-translationreview-param-revision": "O número da revisão a ser revista.",
+ "apihelp-translationreview-example-1": "Revisar a revisão 1",
+ "apihelp-translationstash-description": "Adicionar traduções à área temporária.",
+ "apihelp-translationstash-summary": "Adicionar traduções à área temporária.",
"apihelp-translationstash-param-subaction": "Ação.",
+ "apihelp-translationstash-param-title": "Título da página da unidade de tradução.",
+ "apihelp-translationstash-param-translation": "Tradução realizada pelo utilizador.",
"apihelp-translationstash-param-metadata": "Objeto JSON.",
- "apihelp-ttmserver-param-targetlanguage": "Um código de idioma da sugestão."
+ "apihelp-translationstash-param-username": "Opcionalmente, o utilizador cuja área temporária de traduções será obtida. Só os utilizadores privilegiados podem fazer isto.",
+ "apihelp-translationstash-example-1": "Adicionar à área temporária de traduções uma tradução para [[MediaWiki:Jan/fi]]",
+ "apihelp-translationstash-example-2": "Consultar a área temporária de traduções",
+ "apihelp-ttmserver-description": "Consultar as sugestões das memórias de tradução.",
+ "apihelp-ttmserver-summary": "Consultar as sugestões das memórias de tradução.",
+ "apihelp-ttmserver-param-service": "Que serviços de tradução disponíveis usar.",
+ "apihelp-ttmserver-param-sourcelanguage": "O código de língua do texto de origem.",
+ "apihelp-ttmserver-param-targetlanguage": "O código de língua da sugestão.",
+ "apihelp-ttmserver-param-text": "O texto para o qual procurar sugestões.",
+ "apihelp-ttmserver-example-1": "Obter sugestões para traduzir \"Help\" de inglês para finlandês",
+ "apihelp-searchtranslations-description": "Pesquisar nas traduções.",
+ "apihelp-searchtranslations-summary": "Pesquisar nas traduções.",
+ "apihelp-searchtranslations-param-service": "Que serviços de tradução disponíveis usar.",
+ "apihelp-searchtranslations-param-query": "O texto a pesquisar.",
+ "apihelp-searchtranslations-param-sourcelanguage": "O código de língua do texto de origem.",
+ "apihelp-searchtranslations-param-language": "O código da língua na qual pesquisar o texto.",
+ "apihelp-searchtranslations-param-group": "O identificador do grupo no qual pesquisar o texto.",
+ "apihelp-searchtranslations-param-filter": "Filtro do estado de tradução de mensagens.",
+ "apihelp-searchtranslations-param-match": "Coincide com qualquer ou todos os termos de pesquisa.",
+ "apihelp-searchtranslations-param-case": "Pesquisa com ou sem distinção de maiúsculas e minúsculas.",
+ "apihelp-searchtranslations-param-offset": "Posição de início para as traduções.",
+ "apihelp-searchtranslations-param-limit": "Tamanho do resultado.",
+ "apihelp-searchtranslations-example-1": "Mostrar as traduções para a língua.",
+ "apihelp-searchtranslations-example-2": "Mostrar as mensagens não traduzidas que coincidam com a consulta na língua de origem.",
+ "apihelp-translationcheck-description": "Validar a tradução fornecida contra os verificadores de mensagens.",
+ "apihelp-translationcheck-summary": "Validar traduções.",
+ "apihelp-translationcheck-param-title": "Título de página com espaço nominal e código de língua.",
+ "apihelp-translationcheck-param-translation": "A tradução para ser validada.",
+ "apierror-translate-duplicateaggregategroup": "O grupo de mensagens já existe",
+ "apierror-translate-fuzzymessage": "Não se pode rever traduções sinalizadas com FUZZY",
+ "apierror-translate-groupreviewdisabled": "A revisão de grupos de mensagens não está em uso.",
+ "apierror-translate-invalidaggregategroup": "O grupo agregador de mensagens é inválido",
+ "apierror-translate-invalidaggregategroupname": "O nome do grupo agregador de mensagens é inválido",
+ "apierror-translate-invalidgroup": "O grupo não existe ou é inválido",
+ "apierror-translate-invalidstate": "O estado pedido é inválido.",
+ "apierror-translate-invalidlanguage": "A língua pedida é inválida.",
+ "apierror-translate-invalidupdate": "Atualização inválida",
+ "apierror-translate-language-disabled": "A tradução para $1 foi impossibilitada.",
+ "apierror-translate-language-disabled-reason": "A tradução para $1 foi impossibilitada: $2",
+ "apierror-translate-language-disabled-source": "A língua de origem deste grupo é $1. Selecione outra língua, para a qual irá traduzir, por favor.",
+ "apierror-translate-nodynamicgroups": "Não são suportados aqui grupos de mensagens dinâmicos",
+ "apierror-translate-nomessagefortitle": "O título não corresponde a uma mensagem traduzível",
+ "apierror-translate-notranslationservices": "Não foram configurados serviços públicos de tradução. O administrador da wiki precisa de definir <var>$wgTranslateTranslationServices</var> devidamente para esta funcionalidade poder ser usada.",
+ "apierror-translate-owntranslation": "Não pode rever as suas traduções",
+ "apierror-translate-sandboxdisabled": "A função de utilizadores em teste não está a ser usada",
+ "apierror-translate-sandbox-invalidppassword": "Palavra-passe inválida",
+ "apierror-translate-unknownmessage": "Mensagem desconhecida",
+ "apiwarn-translate-alreadyreviewedbyyou": "Já marcada como revista por si"
}
diff --git a/MLEB/Translate/i18n/api/qqq.json b/MLEB/Translate/i18n/api/qqq.json
index c65d6bfb..979ccaac 100644
--- a/MLEB/Translate/i18n/api/qqq.json
+++ b/MLEB/Translate/i18n/api/qqq.json
@@ -4,10 +4,13 @@
"Robby",
"Liuxinyu970226",
"Amire80",
- "Nemo bis"
+ "Nemo bis",
+ "Purodha"
]
},
"apihelp-aggregategroups-description": "{{doc-apihelp-description|aggregategroups}}",
+ "apihelp-aggregategroups-summary": "{{doc-apihelp-summary|aggregategroups}}",
+ "apihelp-aggregategroups-extended-description": "{{doc-apihelp-extended-description|aggregategroups}}",
"apihelp-aggregategroups-param-do": "{{doc-apihelp-param|aggregategroups|do}}",
"apihelp-aggregategroups-param-aggregategroup": "{{doc-apihelp-param|aggregategroups|aggregategroup}}",
"apihelp-aggregategroups-param-group": "{{doc-apihelp-param|aggregategroups|group}}",
@@ -15,29 +18,31 @@
"apihelp-aggregategroups-param-groupdescription": "{{doc-apihelp-param|aggregategroups|groupdescription}}",
"apihelp-aggregategroups-example-1": "{{doc-apihelp-example|aggregategroups}}",
"apihelp-groupreview-description": "{{doc-apihelp-description|groupreview}}",
+ "apihelp-groupreview-summary": "{{doc-apihelp-summary|groupreview}}",
"apihelp-groupreview-param-group": "{{doc-apihelp-param|groupreview|group}}",
"apihelp-groupreview-param-language": "{{doc-apihelp-param|groupreview|language}}\n{{Identical|Language code}}",
"apihelp-groupreview-param-state": "{{doc-apihelp-param|groupreview|state}}",
"apihelp-groupreview-example-1": "{{doc-apihelp-example|groupreview}}",
- "apihelp-hardmessages-description": "{{doc-apihelp-description|hardmessages}}",
- "apihelp-hardmessages-param-title": "{{doc-apihelp-param|hardmessages|title}}",
- "apihelp-hardmessages-example-1": "{{doc-apihelp-example|hardmessages}}",
"apihelp-query+languagestats-description": "{{doc-apihelp-description|query+languagestats}}",
+ "apihelp-query+languagestats-summary": "{{doc-apihelp-summary|query+languagestats}}",
"apihelp-query+languagestats-param-timelimit": "{{doc-apihelp-param|query+languagestats|timelimit}}",
"apihelp-query+languagestats-param-language": "{{doc-apihelp-param|query+languagestats|language}}\n{{Identical|Language code}}",
"apihelp-query+languagestats-example-1": "{{doc-apihelp-example|query+languagestats}}",
"apihelp-query+messagecollection-description": "{{doc-apihelp-description|query+messagecollection}}",
+ "apihelp-query+messagecollection-summary": "{{doc-apihelp-summary|query+messagecollection}}",
"apihelp-query+messagecollection-param-group": "{{doc-apihelp-param|query+messagecollection|group}}",
"apihelp-query+messagecollection-param-language": "{{doc-apihelp-param|query+messagecollection|language}}\n{{Identical|Language code}}",
"apihelp-query+messagecollection-param-limit": "{{doc-apihelp-param|query+messagecollection|limit}}",
"apihelp-query+messagecollection-param-offset": "{{doc-apihelp-param|query+messagecollection|offset}}",
- "apihelp-query+messagecollection-param-filter": "{{doc-apihelp-param|query+messagecollection|filter}}",
- "apihelp-query+messagecollection-param-prop": "{{doc-apihelp-param|query+messagecollection|prop}}",
+ "apihelp-query+messagecollection-param-filter": "Copy \"&amp;#58;N\", which appears twice towards the end as is. It is the character \":\", which cannot be used because it would be considered markup.\n\n{{doc-apihelp-param|query+messagecollection|filter}}",
+ "apihelp-query+messagecollection-param-prop": "{{doc-apihelp-param|query+messagecollection|prop}}\n{{doc-important|You can translate the word \"Deprecated\", but please do not alter the <code><nowiki>class=\"deprecated\"</nowiki></code> attribute}}",
"apihelp-query+messagecollection-example-1": "{{doc-apihelp-example|query+messagecollection}}",
"apihelp-query+messagecollection-example-2": "{{doc-apihelp-example|query+messagecollection}}",
"apihelp-query+messagecollection-example-3": "{{doc-apihelp-example|query+messagecollection}}",
"apihelp-query+messagecollection-example-4": "{{doc-apihelp-example|query+messagecollection}}",
"apihelp-query+messagegroups-description": "{{doc-apihelp-description|query+messagegroups}}",
+ "apihelp-query+messagegroups-summary": "{{doc-apihelp-summary|query+messagegroups}}",
+ "apihelp-query+messagegroups-extended-description": "{{doc-apihelp-extended-description|query+messagegroups}}",
"apihelp-query+messagegroups-param-depth": "{{doc-apihelp-param|query+messagegroups|depth}}",
"apihelp-query+messagegroups-param-filter": "{{doc-apihelp-param|query+messagegroups|filter}}",
"apihelp-query+messagegroups-param-format": "{{doc-apihelp-param|query+messagegroups|format}}",
@@ -46,40 +51,85 @@
"apihelp-query+messagegroups-param-root": "{{doc-apihelp-param|query+messagegroups|root}}",
"apihelp-query+messagegroups-example-1": "{{doc-apihelp-example|query+messagegroups}}",
"apihelp-query+messagegroupstats-description": "{{doc-apihelp-description|query+messagegroupstats}}",
+ "apihelp-query+messagegroupstats-summary": "{{doc-apihelp-summary|query+messagegroupstats}}",
"apihelp-query+messagegroupstats-param-timelimit": "{{doc-apihelp-param|query+messagegroupstats|timelimit}}",
"apihelp-query+messagegroupstats-param-group": "{{doc-apihelp-param|query+messagegroupstats|group}}",
"apihelp-query+messagegroupstats-example-1": "{{doc-apihelp-example|query+messagegroupstats}}",
"apihelp-query+messagetranslations-description": "{{doc-apihelp-description|query+messagetranslations}}",
+ "apihelp-query+messagetranslations-summary": "{{doc-apihelp-summary|query+messagetranslations}}",
"apihelp-query+messagetranslations-param-title": "{{doc-apihelp-param|query+messagetranslations|title}}",
"apihelp-query+messagetranslations-example-1": "Don't translate \"MediaWiki:January\".\n\n{{doc-apihelp-example|query+messagetranslations}}",
"apihelp-translatesandbox-description": "{{doc-apihelp-description|translatesandbox}}",
+ "apihelp-translatesandbox-summary": "{{doc-apihelp-summary|translatesandbox}}",
"apihelp-translatesandbox-param-do": "{{doc-apihelp-param|translatesandbox|do}}",
"apihelp-translatesandbox-param-userid": "{{doc-apihelp-param|translatesandbox|userid}}",
"apihelp-translatesandbox-param-username": "{{doc-apihelp-param|translatesandbox|username}}",
"apihelp-translatesandbox-param-password": "{{doc-apihelp-param|translatesandbox|password}}",
"apihelp-translatesandbox-param-email": "{{doc-apihelp-param|translatesandbox|email}}",
- "apihelp-translateuser-description": "{{doc-apihelp-description|translateuser}}",
- "apihelp-translateuser-example-1": "{{doc-apihelp-example|translateuser}}",
"apihelp-translationaids-description": "{{doc-apihelp-description|translationaids}}",
+ "apihelp-translationaids-summary": "{{doc-apihelp-summary|translationaids}}",
"apihelp-translationaids-param-title": "{{doc-apihelp-param|translationaids|title}}",
- "apihelp-translationaids-param-group": "{{doc-apihelp-param|translationaids|group}}",
+ "apihelp-translationaids-param-group": "{{doc-apihelp-param|translationaids|group}}\n\nThe term \"primary group\" is explained at https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary\nas \"primary message group\".",
"apihelp-translationaids-param-prop": "{{doc-apihelp-param|translationaids|prop}}",
"apihelp-translationaids-example-1": "Don't translate \"<nowiki>[[MediaWiki:January/fi]]</nowiki>\".\n\n{{doc-apihelp-example|translationaids}}",
"apihelp-translationreview-description": "{{doc-apihelp-description|translationreview}}",
+ "apihelp-translationreview-summary": "{{doc-apihelp-summary|translationreview}}",
"apihelp-translationreview-param-revision": "{{doc-apihelp-param|translationreview|revision}}",
"apihelp-translationreview-example-1": "{{doc-apihelp-example|translationreview}}",
- "apihelp-translationstash-description": "{{doc-apihelp-description|translationstash}}",
+ "apihelp-translationstash-description": "See the [[mw:Help:Extension:Translate/Glossary|glossary item for \"stash\"]].\n----\n{{doc-apihelp-description|translationstash}}",
+ "apihelp-translationstash-summary": "See the [[mw:Help:Extension:Translate/Glossary|glossary item for \"stash\"]].\n----\n{{doc-apihelp-summary|translationstash}}",
"apihelp-translationstash-param-subaction": "{{doc-apihelp-param|translationstash|subaction}}\n{{Identical|Action}}",
- "apihelp-translationstash-param-title": "{{doc-apihelp-param|translationstash|title}}",
+ "apihelp-translationstash-param-title": "See the [[mw:Help:Extension:Translate/Glossary|Translate glossary]] for a definition.\n----\n{{doc-apihelp-param|translationstash|title}}",
"apihelp-translationstash-param-translation": "{{doc-apihelp-param|translationstash|translation}}",
"apihelp-translationstash-param-metadata": "{{doc-apihelp-param|translationstash|metadata}}",
- "apihelp-translationstash-param-username": "{{doc-apihelp-param|translationstash|username}}\nThe stash is also called [[mw:Translation_UX/Specification#Translation_sandbox|sandbox]].",
- "apihelp-translationstash-example-1": "{{doc-apihelp-example|translationstash}}\nThe stash is also called [[mw:Translation_UX/Specification#Translation_sandbox|sandbox]].",
- "apihelp-translationstash-example-2": "{{doc-apihelp-example|translationstash}}\nThe stash is also called [[mw:Translation_UX/Specification#Translation_sandbox|sandbox]].",
+ "apihelp-translationstash-param-username": "See the [[mw:Help:Extension:Translate/Glossary|glossary item for \"stash\"]].\n----\n{{doc-apihelp-param|translationstash|username}}\nThe stash is also called [[mw:Translation_UX/Specification#Translation_sandbox|sandbox]].",
+ "apihelp-translationstash-example-1": "See the [[mw:Help:Extension:Translate/Glossary|glossary item for \"stash\"]].\n----\n{{doc-apihelp-example|translationstash}}\nThe stash is also called [[mw:Translation_UX/Specification#Translation_sandbox|sandbox]].",
+ "apihelp-translationstash-example-2": "See the [[mw:Help:Extension:Translate/Glossary|glossary item for \"stash\"]].\n----\n{{doc-apihelp-example|translationstash}}\nThe stash is also called [[mw:Translation_UX/Specification#Translation_sandbox|sandbox]].",
"apihelp-ttmserver-description": "{{doc-apihelp-description|ttmserver}}",
+ "apihelp-ttmserver-summary": "{{doc-apihelp-summary|ttmserver}}",
"apihelp-ttmserver-param-service": "{{doc-apihelp-param|ttmserver|service}}",
"apihelp-ttmserver-param-sourcelanguage": "{{doc-apihelp-param|ttmserver|sourcelanguage}}",
"apihelp-ttmserver-param-targetlanguage": "{{doc-apihelp-param|ttmserver|targetlanguage}}",
"apihelp-ttmserver-param-text": "{{doc-apihelp-param|ttmserver|text}}",
- "apihelp-ttmserver-example-1": "{{doc-apihelp-example|ttmserver}}"
+ "apihelp-ttmserver-example-1": "{{doc-apihelp-example|ttmserver}}",
+ "apihelp-searchtranslations-description": "{{doc-apihelp-description|searchtranslations}}",
+ "apihelp-searchtranslations-summary": "{{doc-apihelp-summary|searchtranslations}}",
+ "apihelp-searchtranslations-param-service": "{{doc-apihelp-param|searchtranslations|service}}",
+ "apihelp-searchtranslations-param-query": "{{doc-apihelp-param|searchtranslations|query}}",
+ "apihelp-searchtranslations-param-sourcelanguage": "{{doc-apihelp-param|searchtranslations|sourcelanguage}}",
+ "apihelp-searchtranslations-param-language": "{{doc-apihelp-param|searchtranslations|language}}",
+ "apihelp-searchtranslations-param-group": "{{doc-apihelp-param|searchtranslations|group}}",
+ "apihelp-searchtranslations-param-filter": "{{doc-apihelp-param|searchtranslations|filter}}",
+ "apihelp-searchtranslations-param-match": "{{doc-apihelp-param|searchtranslations|match}}",
+ "apihelp-searchtranslations-param-case": "{{doc-apihelp-param|searchtranslations|case}}",
+ "apihelp-searchtranslations-param-offset": "{{doc-apihelp-param|searchtranslations|offset}}",
+ "apihelp-searchtranslations-param-limit": "{{doc-apihelp-param|searchtranslations|limit}}",
+ "apihelp-searchtranslations-example-1": "{{doc-apihelp-example|searchtranslations}}",
+ "apihelp-searchtranslations-example-2": "{{doc-apihelp-example|searchtranslations}}",
+ "apihelp-translationcheck-description": "{{doc-apihelp-description|translationcheck}}",
+ "apihelp-translationcheck-summary": "{{doc-apihelp-summary|translationcheck}}",
+ "apihelp-translationcheck-param-title": "{{doc-apihelp-param|translationcheck|title}}",
+ "apihelp-translationcheck-param-translation": "{{doc-apihelp-param|translationcheck|translation}}",
+ "apierror-translate-duplicateaggregategroup": "{{doc-apierror}}",
+ "apierror-translate-fuzzymessage": "{{doc-apierror}}",
+ "apierror-translate-groupreviewdisabled": "{{doc-apierror}}",
+ "apierror-translate-invalidaggregategroup": "{{doc-apierror}}",
+ "apierror-translate-invalidaggregategroupname": "{{doc-apierror}}",
+ "apierror-translate-invalidfilter": "{{doc-apierror}}\n\nParameters:\n* $1 - Filter provided",
+ "apierror-translate-invalidgroup": "{{doc-apierror}}",
+ "apierror-translate-invalidstate": "{{doc-apierror}}",
+ "apierror-translate-invalidlanguage": "{{doc-apierror}}",
+ "apierror-translate-invalidupdate": "{{doc-apierror}}",
+ "apierror-translate-language-disabled": "{{doc-apierror}}",
+ "apierror-translate-language-disabled-reason": "{{doc-apierror}}\n\nParameters:\n* $1 - language name\n* $2 - reason, probably in English",
+ "apierror-translate-language-disabled-source": "{{doc-apierror}}\n\nParameters:\n* $1 - language name",
+ "apierror-translate-nodynamicgroups": "{{doc-apierror}}",
+ "apierror-translate-nomessagefortitle": "{{doc-apierror}}",
+ "apierror-translate-notranslationservices": "{{doc-apierror}}",
+ "apierror-translate-owntranslation": "{{doc-apierror}}",
+ "apierror-translate-sandboxdisabled": "{{doc-apierror}}",
+ "apierror-translate-sandbox-invalidparam": "{{doc-apierror}}\n\nParameters:\n* $1 - Exception message, probably in English",
+ "apierror-translate-sandbox-invalidppassword": "{{doc-apierror}}",
+ "apierror-translate-unknownmessage": "{{doc-apierror}}",
+ "apiwarn-translate-alreadyreviewedbyyou": "{{doc-apierror}}"
}
diff --git a/MLEB/Translate/i18n/api/ru.json b/MLEB/Translate/i18n/api/ru.json
index cfae7577..0b8a4be4 100644
--- a/MLEB/Translate/i18n/api/ru.json
+++ b/MLEB/Translate/i18n/api/ru.json
@@ -2,12 +2,95 @@
"@metadata": {
"authors": [
"Okras",
- "Kaganer"
+ "Kaganer",
+ "Дмитрий",
+ "Туллук",
+ "Kareyac",
+ "ЛосЯш",
+ "Putnik",
+ "Ole Yves",
+ "Stjn",
+ "Movses"
]
},
+ "apihelp-aggregategroups-description": "Вы можете добавлять и удалять агрегированные группы сообщений, группировать и разгруппировывать сообщения в них (по одному за раз) .",
+ "apihelp-aggregategroups-summary": "Управлять агрегированными группами сообщений.",
+ "apihelp-aggregategroups-extended-description": "Вы можете добавлять и удалять агрегированные группы сообщений, ассоциировать и диссоциировать сообщения в них (по одному за раз).",
+ "apihelp-aggregategroups-param-do": "Что нужно сделать с агрегированной группой сообщений.",
"apihelp-aggregategroups-param-aggregategroup": "ID агрегированной группы сообщений",
"apihelp-aggregategroups-param-group": "ID группы сообщений",
+ "apihelp-aggregategroups-param-groupname": "Название агрегированной группы сообщений.",
+ "apihelp-aggregategroups-param-groupdescription": "Описание агрегированной группы сообщений.",
+ "apihelp-aggregategroups-example-1": "Ассоциировать группу",
+ "apihelp-groupreview-description": "Задать состояния рабочего процесса группы сообщений.",
+ "apihelp-groupreview-summary": "Задать состояния рабочего процесса группы сообщений.",
+ "apihelp-groupreview-param-group": "Группа сообщений.",
+ "apihelp-groupreview-param-language": "Код языка.",
+ "apihelp-groupreview-param-state": "Новое состояние группы.",
+ "apihelp-groupreview-example-1": "Задать состояние немецкого перевода для группы сообщений «group-Example» как готовое",
+ "apihelp-query+languagestats-description": "Запросить статистику языка.",
+ "apihelp-query+languagestats-summary": "Запросить статистику языка.",
+ "apihelp-query+languagestats-param-timelimit": "Максимальное время, которое следует затрачивать на подсчёт отсутствующей статистики. Если равно нулю, будут возвращены только кэшированные с самого начала результаты.",
+ "apihelp-query+languagestats-param-language": "Код языка.",
+ "apihelp-query+languagestats-example-1": "Список статистики завершённости перевода для финского.",
+ "apihelp-query+messagecollection-description": "Запросить MessageCollection о переводах.",
+ "apihelp-query+messagecollection-summary": "Запросить MessageCollection о переводах.",
+ "apihelp-query+messagecollection-param-group": "Группа сообщений.",
+ "apihelp-query+messagecollection-param-language": "Код языка.",
+ "apihelp-query+messagecollection-param-limit": "Сколько сообщений показывать (после фильтрации).",
+ "apihelp-query+messagecollection-param-offset": "Целое число или ключ, с которого следует начать.",
+ "apihelp-query+messagecollection-example-1": "Список поддерживаемых языков",
+ "apihelp-query+messagecollection-example-2": "Список обязательных определений сообщений для группы «page-Example»",
+ "apihelp-query+messagecollection-example-3": "Список необязательных сообщений на финском языке с метками для группы «page-Example»",
+ "apihelp-query+messagecollection-example-4": "Больше информации о последних версиях перевода для группы «page-Example»",
+ "apihelp-query+messagegroups-description": "Получить информацию о группах сообщений.\n\nУчтите, что параметр uselang влияет на вывод языкозависимых частей.",
+ "apihelp-query+messagegroups-summary": "Получить информацию о группах сообщений.",
+ "apihelp-query+messagegroups-extended-description": "Учтите, что параметр uselang влияет на вывод языкозависимых частей.",
+ "apihelp-query+messagegroups-example-1": "Показать группы сообщений",
+ "apihelp-query+messagegroupstats-description": "Запросить статистику группы сообщений",
+ "apihelp-query+messagegroupstats-summary": "Запросить статистику группы сообщений.",
+ "apihelp-query+messagegroupstats-param-group": "ID группы сообщений.",
+ "apihelp-query+messagetranslations-description": "Запросить все переводы для одного сообщения.",
+ "apihelp-query+messagetranslations-summary": "Запросить все переводы для одного сообщения.",
+ "apihelp-query+messagetranslations-param-title": "Полный заголовок известного сообщения.",
+ "apihelp-query+messagetranslations-example-1": "Список переводов в вики для «MediaWiki:January»",
+ "apihelp-translatesandbox-description": "Зарегистрировать и управлять пользователями в песочнице.",
+ "apihelp-translatesandbox-summary": "Зарегистрировать и управлять пользователями в песочнице.",
"apihelp-translatesandbox-param-do": "Что делать.",
+ "apihelp-translatesandbox-param-username": "Имя учётной записи при её создании.",
+ "apihelp-translatesandbox-param-password": "Пароль при создании учётной записи.",
+ "apihelp-translatesandbox-param-email": "Электронная почта при создании учётной записи.",
+ "apihelp-translationaids-description": "Запросить всю справку по переводу.",
+ "apihelp-translationaids-summary": "Запросить всю справку по переводу.",
+ "apihelp-translationaids-param-title": "Полный заголовок известного сообщения.",
+ "apihelp-translationaids-param-prop": "Каких помощников перевода следует включить.",
+ "apihelp-translationaids-example-1": "Показать справку по [[MediaWiki:January/fi]]",
+ "apihelp-translationreview-description": "Пометить переводы как проверенные.",
+ "apihelp-translationreview-summary": "Пометить переводы как проверенные.",
+ "apihelp-translationreview-param-revision": "Номер версии для проверки.",
+ "apihelp-translationreview-example-1": "Проверить версию 1",
"apihelp-translationstash-param-subaction": "Действие.",
- "apihelp-translationstash-param-metadata": "Объект JSON."
+ "apihelp-translationstash-param-translation": "Перевод, сделанный участником.",
+ "apihelp-translationstash-param-metadata": "Объект JSON.",
+ "apihelp-ttmserver-param-sourcelanguage": "Код языка исходного текста.",
+ "apihelp-searchtranslations-description": "Поиск переводов.",
+ "apihelp-searchtranslations-summary": "Поиск переводов.",
+ "apihelp-searchtranslations-param-service": "Какие из доступных сервисов перевода следует использовать.",
+ "apihelp-searchtranslations-param-query": "Строка для поиска.",
+ "apihelp-searchtranslations-param-sourcelanguage": "Код языка исходного текста.",
+ "apihelp-searchtranslations-param-language": "Языковой код, на котором следует искать строку.",
+ "apihelp-searchtranslations-param-group": "Идентификатор группы, в которой следует искать строку.",
+ "apihelp-searchtranslations-param-filter": "Фильтр статуса перевода сообщения.",
+ "apihelp-searchtranslations-param-limit": "Размер результата.",
+ "apihelp-searchtranslations-example-1": "Показать переводы на язык.",
+ "apihelp-searchtranslations-example-2": "Показать непереведённые сообщения, соответствующие запросу на исходном языке.",
+ "apierror-translate-invalidupdate": "Недопустимое обновление.",
+ "apierror-translate-language-disabled": "Перевод на $1 отключён.",
+ "apierror-translate-nodynamicgroups": "Динамические группы сообщений здесь не поддерживаются.",
+ "apierror-translate-nomessagefortitle": "Заголовок не соответствует переводимому сообщению.",
+ "apierror-translate-owntranslation": "Не может проверять собственные переводы",
+ "apierror-translate-sandboxdisabled": "Функция песочницы не используется.",
+ "apierror-translate-sandbox-invalidppassword": "Неверный пароль",
+ "apierror-translate-unknownmessage": "Неизвестное сообщение",
+ "apiwarn-translate-alreadyreviewedbyyou": "Уже отмечены как просмотренные Вами"
}
diff --git a/MLEB/Translate/i18n/api/sv.json b/MLEB/Translate/i18n/api/sv.json
index 485a37b5..94744830 100644
--- a/MLEB/Translate/i18n/api/sv.json
+++ b/MLEB/Translate/i18n/api/sv.json
@@ -4,7 +4,9 @@
"Lokal Profil",
"WikiPhoenix",
"Dan Koehl",
- "Victorsa"
+ "Victorsa",
+ "Josve05a",
+ "Bengtsson96"
]
},
"apihelp-aggregategroups-param-group": "Meddelandegrupp-ID.",
@@ -12,23 +14,50 @@
"apihelp-groupreview-param-group": "Meddelandegrupp.",
"apihelp-groupreview-param-language": "Språkkod.",
"apihelp-groupreview-example-1": "Markera gruppen \"group-Example\" som redo för tyska",
- "apihelp-hardmessages-description": "Markera översättningar som svåra.",
- "apihelp-hardmessages-param-title": "Titel på det meddelande som ska markeras som svårt.",
- "apihelp-hardmessages-example-1": "Markera \"SampleTitle\" som svår",
"apihelp-query+languagestats-param-language": "Språkkod.",
"apihelp-query+messagecollection-param-group": "Meddelandegrupp.",
"apihelp-query+messagecollection-param-language": "Språkkod.",
"apihelp-query+messagecollection-example-1": "Lista över språk som stöds",
+ "apihelp-query+messagecollection-example-3": "List över valfria meddelanden på finska med märken i gruppen \"page-Example\"",
"apihelp-query+messagegroups-example-1": "Visa meddelandegrupper",
"apihelp-query+messagegroupstats-param-group": "Meddelandegrupp-ID.",
+ "apihelp-query+messagetranslations-example-1": "Lista över översättningar i wikin för \"MediaWiki:January\"",
"apihelp-translatesandbox-param-username": "Användarnamn när du skapar en användare.",
"apihelp-translatesandbox-param-password": "Lösenord när du skapar en användare.",
"apihelp-translatesandbox-param-email": "E-post när du skapar en användare.",
- "apihelp-translateuser-example-1": "Visa information om användaren",
+ "apihelp-translationaids-param-title": "Fullständig titel på ett känt meddelande.",
+ "apihelp-translationaids-example-1": "Visa hjälp för [[MediaWiki:January/fi]]",
+ "apihelp-translationreview-description": "Markera översättningar som granskade.",
+ "apihelp-translationreview-param-revision": "Sidversionsnumret att granska.",
+ "apihelp-translationreview-example-1": "Granska sidversion 1",
+ "apihelp-translationstash-param-subaction": "Åtgärd.",
+ "apihelp-translationstash-param-translation": "Översättning som gjorts av användaren.",
"apihelp-translationstash-param-metadata": "JSON-objekt.",
+ "apihelp-ttmserver-description": "Förfråga förslag från översättningsminnen.",
"apihelp-ttmserver-param-service": "Vilken av de tillgängliga översättningstjänsterna som bör användas.",
- "apihelp-ttmserver-param-sourcelanguage": "En språkkod för källtexten.",
- "apihelp-ttmserver-param-targetlanguage": "En språkkod för förslaget.",
+ "apihelp-ttmserver-param-sourcelanguage": "Språkkoden för källtexten.",
+ "apihelp-ttmserver-param-targetlanguage": "Språkkoden för förslaget.",
"apihelp-ttmserver-param-text": "Texten att hitta förslag på.",
- "apihelp-ttmserver-example-1": "Få förslag för att översätta \"Hjälp\" från engelska till finska"
+ "apihelp-ttmserver-example-1": "Få förslag för att översätta \"Hjälp\" från engelska till finska",
+ "apihelp-searchtranslations-description": "Sök översättningar.",
+ "apihelp-searchtranslations-summary": "Sök översättningar.",
+ "apihelp-searchtranslations-param-service": "Vilka tillgängliga översättningstjänster att använda.",
+ "apihelp-searchtranslations-param-query": "Strängen att söka efter.",
+ "apihelp-searchtranslations-param-sourcelanguage": "Språkkoden för källtexten.",
+ "apihelp-searchtranslations-param-match": "Matcha något/alla sökord.",
+ "apihelp-searchtranslations-param-case": "Skiftläges(o)känslig sökning.",
+ "apihelp-searchtranslations-param-limit": "Resultatets storlek.",
+ "apihelp-searchtranslations-example-1": "Visa översättningar för språket.",
+ "apihelp-searchtranslations-example-2": "Visa oöversatta meddelanden som överensstämmer förfrågan i källkoden.",
+ "apierror-translate-duplicateaggregategroup": "Meddelandegruppen finns redan",
+ "apierror-translate-fuzzymessage": "Kan inte granska föråldrade översättningar",
+ "apierror-translate-invalidlanguage": "Det begärda språket är inte giltigt.",
+ "apierror-translate-invalidupdate": "Ogiltig uppdatering",
+ "apierror-translate-language-disabled": "Översättning till $1 är inaktiverat.",
+ "apierror-translate-language-disabled-reason": "Översättning till $1 är inaktiverat: $2",
+ "apierror-translate-notranslationservices": "Inga offentliga översättningstjänster har konfigurerats. Wikiadministratörerna behöver ändra set <var>$wgTranslateTranslationServices</var> på lämpligt sätt innan denna funktion kan användas.",
+ "apierror-translate-owntranslation": "Kan inte granska egna översättningar",
+ "apierror-translate-sandbox-invalidppassword": "Ogiltigt lösenord",
+ "apierror-translate-unknownmessage": "Okänt meddelande",
+ "apiwarn-translate-alreadyreviewedbyyou": "Har redan markerats som granskad av dig"
}
diff --git a/MLEB/Translate/i18n/api/uk.json b/MLEB/Translate/i18n/api/uk.json
index c58e6db2..0844991d 100644
--- a/MLEB/Translate/i18n/api/uk.json
+++ b/MLEB/Translate/i18n/api/uk.json
@@ -1,12 +1,133 @@
{
"@metadata": {
"authors": [
- "Ypryima"
+ "Ypryima",
+ "Base",
+ "Ата",
+ "Dars",
+ "Piramidion"
]
},
+ "apihelp-aggregategroups-description": "Керування агрегованими групами повідомлень.\n\nВи можете додавати або вилучати агреговані групи повідомлень та додавати чи вилучати повідомлення з них (одне за раз).",
+ "apihelp-aggregategroups-summary": "Керування агрегованими групами повідомлень.",
+ "apihelp-aggregategroups-extended-description": "Ви можете додавати або вилучати агреговані групи повідомлень та додавати чи вилучати повідомлення з них (одне за раз).",
+ "apihelp-aggregategroups-param-do": "Що робити з агрегованою групою повідомлень.",
+ "apihelp-aggregategroups-param-aggregategroup": "Ідентифікатор агрегованої групи повідомлень.",
+ "apihelp-aggregategroups-param-group": "Ідентифікатор групи повідомлень.",
+ "apihelp-aggregategroups-param-groupname": "Назва агрегованої групи повідомлень.",
+ "apihelp-aggregategroups-param-groupdescription": "Опис агрегованої групи повідомлень.",
+ "apihelp-aggregategroups-example-1": "Додати до групи",
+ "apihelp-groupreview-description": "Встановити повідомлення робочого процесу групи.",
+ "apihelp-groupreview-summary": "Встановити повідомлення робочого процесу групи.",
+ "apihelp-groupreview-param-group": "Група повідомлень.",
"apihelp-groupreview-param-language": "Мовний код.",
+ "apihelp-groupreview-param-state": "Новий стан для групи",
+ "apihelp-groupreview-example-1": "Позначити стан німецького перекладу групи повідомлень «group-Example» як «готово»",
+ "apihelp-query+languagestats-description": "Запитати мовну статистику.",
+ "apihelp-query+languagestats-summary": "Запитати мовну статистику.",
+ "apihelp-query+languagestats-param-timelimit": "Максимальний час, який витратити на обчислення пропущеної статистики. Якщо нуль, лише кешовані результати з початку буде повернено.",
+ "apihelp-query+languagestats-param-language": "Код мови.",
+ "apihelp-query+languagestats-example-1": "Перелічити статистику завершеності перекладу фінською",
+ "apihelp-query+messagecollection-description": "Запитати MessageCollection про переклади.",
+ "apihelp-query+messagecollection-summary": "Запитати MessageCollection про переклади.",
+ "apihelp-query+messagecollection-param-group": "Група повідомлень.",
+ "apihelp-query+messagecollection-param-language": "Код мови.",
"apihelp-query+messagecollection-param-limit": "Скільки повідомлень показувати (після фільтрації)",
+ "apihelp-query+messagecollection-param-offset": "Цілочислове зміщення або його ключ для початку.",
+ "apihelp-query+messagecollection-param-filter": "Фільтри збірок повідомлень. Використовуйте <kbd>!</kbd>, щоб відкинути умову. Наприклад, <kbd>!fuzzy</kbd> означатиме виведення списку лише не застарілих повідомлень. Фільтри застосовуються у поданому порядку.\n;fuzzy:Повідомлення з міткою застарілості.\n;optional:Повідомлення, які треба перекладати, лише зміни необхідні.\n;ignored:Повідомлення, які не перекладаються.\n;hastranslation:Повідомлення, для яких є переклад не залежно від того, застарілий чи ні.\n;translated:Повідомлення, які мають актуальні переклади.\n;changed:Повідомлення, які було перекладено чи змінено з часу попереднього звіту.\n;reviewer&#58;N:Повідомлення, які перевіряв користувач номер <kbd>N</kbd>.\n;last-translator&#58;N:Повідомлення, для яких користувач номер <kbd>N</kbd> є останнім перекладачем.",
+ "apihelp-query+messagecollection-param-prop": "Які властивості отримати:\n;definition:Повідомлення.\n;translation:Поточний переклад (без рядка $1, якщо є, використати теґи для перевірки застарілих чи поламаних перекладів).\n;tags:Теґи повідомлення, наприклад optional, ignored чи fuzzy.\n;properties:Властивості повідомлення: status, revision, last-translator. Можуть відрізнятися у різних повідомлень.\n;revision:<span class=\"deprecated\">Застаріло!</span> Використати $2prop=properties.",
+ "apihelp-query+messagecollection-example-1": "Список підтримуваних мов",
+ "apihelp-query+messagecollection-example-2": "Список не додаткових повідомлень для групи «page-Example»",
+ "apihelp-query+messagecollection-example-3": "Список додаткових повідомлень фінською мовою з теґами для групи «page-Example»",
+ "apihelp-query+messagecollection-example-4": "Більше інформації про останні версії перекладів для групи «page-Example»",
+ "apihelp-query+messagegroups-description": "Видати інформацію про групи повідомлень.\n\nЗверніть увагу, що параметр uselang впливає на результати частин, що залежать від мови.",
+ "apihelp-query+messagegroups-summary": "Вивести інформацію про групи повідомлень.",
+ "apihelp-query+messagegroups-extended-description": "Зверніть увагу, що параметр uselang впливає на результат відображення частин, які залежать від мови.",
+ "apihelp-query+messagegroups-param-depth": "При використанні формату дерева, обмежити глибину до такої кількості рівнів. Значення 0 означає, що жодні підгрупи не відображаються. Якщо ліміту досягнуто, результат включає значення «groupcount», яке містить кількість безпосередніх підгруп.",
+ "apihelp-query+messagegroups-param-filter": "Видавати лише повідомлення з ідентифікаторами, які відповідають одному або кільком поданим характеристикам (без урахування регістру, розділені вертикальною рискою, байдужий символ *).",
+ "apihelp-query+messagegroups-param-format": "У деревоподібному форматі групи повідомлень можуть існувати в декількох місцях дерева.",
+ "apihelp-query+messagegroups-param-iconsize": "Бажаний розмір растеризованої іконки групи.",
+ "apihelp-query+messagegroups-param-prop": "Яку інформацію, пов'язану з перекладами, отримати:\n;id:Включити ідентифікатор групи.\n;label:Включити мітку групи.\n;description:Включити опис групи.\n;class:Включити назву класу групи.\n;namespace:Включити простір назв групи. Не всі групи належать до одного простору назв.\n;exists:Включити самообраховану властивість існування групи.\n;icon:Включити URL-адреси іконки групи.\n;priority:Включити статус пріоритетності, наприклад, заборонені.\n;prioritylangs:Включити пріоритетні мови. Якщо не вказані, параметр виводиться як хибний.\n;priorityforce:Включити статус пріоритетності — чи вказані пріоритетні мови примусово.\n;workflowstates:Включити робочий стан для груп повідомлень.",
+ "apihelp-query+messagegroups-param-root": "При використанні деревоподібного формату, замість починати від верхнього, почати з даної групи повідомлень, яка має бути агрегованою групою повідомлень. При використанні плоского формату видається лише зазначена група.",
+ "apihelp-query+messagegroups-example-1": "Показати групи повідомлень",
+ "apihelp-query+messagegroupstats-description": "Зробити запит на статистику групи повідомлень.",
+ "apihelp-query+messagegroupstats-summary": "Зробити запит на статистику групи повідомлень.",
+ "apihelp-query+messagegroupstats-param-timelimit": "Максимальний час, який витратити на обчислення пропущеної статистики. Якщо нуль, лише кешовані результати з початку буде повернено.",
+ "apihelp-query+messagegroupstats-param-group": "Ідентифікатор групи повідомлень.",
+ "apihelp-query+messagegroupstats-example-1": "Список статистики завершеності перекладів для групи «page-Example»",
+ "apihelp-query+messagetranslations-description": "Зробити запит на всі переклади одного повідомлення.",
+ "apihelp-query+messagetranslations-summary": "Зробити запит на всі переклади одного повідомлення.",
+ "apihelp-query+messagetranslations-param-title": "Повна назва відомого повідомлення.",
+ "apihelp-query+messagetranslations-example-1": "Список перекладів у вікі для «MediaWiki:January»",
+ "apihelp-translatesandbox-description": "Зареєструватися й управляти користувачами в пісочниці.",
+ "apihelp-translatesandbox-summary": "Зареєструватися й управляти користувачами в пісочниці.",
+ "apihelp-translatesandbox-param-do": "Що робити.",
+ "apihelp-translatesandbox-param-userid": "Ідентифікатори користувачів, управління якими здійснюється. Використайте 0 для створюваних.",
"apihelp-translatesandbox-param-username": "Ім'я користувача при створенні користувача.",
+ "apihelp-translatesandbox-param-password": "Пароль при створенні користувача.",
+ "apihelp-translatesandbox-param-email": "Електронна пошта при створенні користувача.",
+ "apihelp-translationaids-description": "Зробити запит на усі підказки перекладу.",
+ "apihelp-translationaids-summary": "Зробити запит на усі підказки перекладу.",
+ "apihelp-translationaids-param-title": "Повна назва відомого повідомлення.",
+ "apihelp-translationaids-param-group": "Група повідомлень, до якої належить повідомлення. Якщо порожня, то буде використано первинну групу.",
+ "apihelp-translationaids-param-prop": "Яких помічників перекладу включати.",
+ "apihelp-translationaids-example-1": "Показати підказки для [[MediaWiki:January/fi]]",
+ "apihelp-translationreview-description": "Позначити переклади як перевірені.",
+ "apihelp-translationreview-summary": "Позначити переклади як перевірені.",
+ "apihelp-translationreview-param-revision": "Номер версії для перевірки.",
"apihelp-translationreview-example-1": "Перевірка версій",
- "apihelp-translationstash-param-metadata": "JSON об'єкт"
+ "apihelp-translationstash-description": "Додати переклади у стеш.",
+ "apihelp-translationstash-summary": "Додати переклади у сховок.",
+ "apihelp-translationstash-param-subaction": "Дія.",
+ "apihelp-translationstash-param-title": "Заголовок сторінки блоку перекладу.",
+ "apihelp-translationstash-param-translation": "Переклад, зроблений користувачем.",
+ "apihelp-translationstash-param-metadata": "JSON об'єкт",
+ "apihelp-translationstash-param-username": "Необов'язково, користувач, чий стеш отримати. Лише привілейовані користувачі можуть це робити.",
+ "apihelp-translationstash-example-1": "Додати переклад у стеш для [[MediaWiki:Jan/fi]]",
+ "apihelp-translationstash-example-2": "Зробити запит на стеш",
+ "apihelp-ttmserver-description": "Зробити запит на пропозиції з пам'яті перекладів",
+ "apihelp-ttmserver-summary": "Зробити запит на пропозиції з пам'яті перекладів",
+ "apihelp-ttmserver-param-service": "Який з доступних сервісів перекладу використати.",
+ "apihelp-ttmserver-param-sourcelanguage": "Код мови вихідного тексту.",
+ "apihelp-ttmserver-param-targetlanguage": "Код мови пропозиції.",
+ "apihelp-ttmserver-param-text": "Текст, для якого знайти пропозиції.",
+ "apihelp-ttmserver-example-1": "Отримати пропозиції для перекладу «Help» з англійської на фінську",
+ "apihelp-searchtranslations-description": "Пошук перекладів.",
+ "apihelp-searchtranslations-summary": "Пошук перекладів.",
+ "apihelp-searchtranslations-param-service": "Який з доступних сервісів перекладу використати.",
+ "apihelp-searchtranslations-param-query": "Рядок для пошуку.",
+ "apihelp-searchtranslations-param-sourcelanguage": "Код мови вихідного тексту.",
+ "apihelp-searchtranslations-param-language": "Код мови, для якої шукати рядок.",
+ "apihelp-searchtranslations-param-group": "ID групи, в якій шукати рядок.",
+ "apihelp-searchtranslations-param-filter": "Фільтр стану перекладу повідомлення.",
+ "apihelp-searchtranslations-param-match": "Відповідність одного із/всіх пошукових слів.",
+ "apihelp-searchtranslations-param-case": "Пошук (не)чутливий до регістру.",
+ "apihelp-searchtranslations-param-offset": "Зміщення для перекладів.",
+ "apihelp-searchtranslations-param-limit": "Розмір результату.",
+ "apihelp-searchtranslations-example-1": "Показати переклади для мови.",
+ "apihelp-searchtranslations-example-2": "Показати запит на подібні неперекладені збіги мовою оригіналу.",
+ "apihelp-translationcheck-description": "Перевірити введений переклад за допомогою засобів перевірки повідомлень.",
+ "apihelp-translationcheck-summary": "Перевірити переклади.",
+ "apihelp-translationcheck-param-title": "Назва сторінки з простором назв та кодом мови.",
+ "apihelp-translationcheck-param-translation": "Переклад, який слід перевірити.",
+ "apierror-translate-duplicateaggregategroup": "Група повідомлень вже існує",
+ "apierror-translate-fuzzymessage": "Не вдалося переглянути застарілі переклади",
+ "apierror-translate-groupreviewdisabled": "Група повідомлень не використовується.",
+ "apierror-translate-invalidaggregategroup": "Недійсна загальна група повідомлень",
+ "apierror-translate-invalidaggregategroupname": "Недійсна назва загальної групи повідомлень",
+ "apierror-translate-invalidgroup": "Група не існує або є недійсною",
+ "apierror-translate-invalidstate": "Запитуваний стан недійсний.",
+ "apierror-translate-invalidlanguage": "Запитувана мова є недійсною.",
+ "apierror-translate-invalidupdate": "Недійсне оновлення",
+ "apierror-translate-language-disabled": "Переклад мовою «$1» вимкнено",
+ "apierror-translate-language-disabled-reason": "Переклад мовою «$1» вимкнено: $2",
+ "apierror-translate-language-disabled-source": "Вихідна мова цієї групи — $1. Будь ласка, виберіть іншу мову для перекладу.",
+ "apierror-translate-nodynamicgroups": "Динамічні групи повідомлень не підтримуються тут",
+ "apierror-translate-nomessagefortitle": "Назва не відповідає перекладному повідомленню",
+ "apierror-translate-notranslationservices": "Не налаштовано ще жодного публічного сервісу перекладу. Адміністратор цієї вікі повинен належним чином налаштувати <var>$wgTranslateTranslationServices</var>, перш ніж цю функцію можна буде використовувати.",
+ "apierror-translate-owntranslation": "Не вдалося перевірити власні переклади",
+ "apierror-translate-sandboxdisabled": "Функція пісочниці не використовується",
+ "apierror-translate-sandbox-invalidppassword": "Недійсний пароль",
+ "apierror-translate-unknownmessage": "Невідоме повідомлення",
+ "apiwarn-translate-alreadyreviewedbyyou": "Вже позначено Вами як перевірено"
}
diff --git a/MLEB/Translate/i18n/api/zh-hans.json b/MLEB/Translate/i18n/api/zh-hans.json
index ca7ca708..99a94abc 100644
--- a/MLEB/Translate/i18n/api/zh-hans.json
+++ b/MLEB/Translate/i18n/api/zh-hans.json
@@ -3,64 +3,80 @@
"authors": [
"Liuxinyu970226",
"HERAN",
- "Yfdyh000"
+ "Yfdyh000",
+ "LNDDYL"
]
},
- "apihelp-aggregategroups-description": "管理聚合信息组。\n\n您可以添加和移除聚合信息组,以及从组中关联或分离信息(一次一个)。",
- "apihelp-aggregategroups-param-do": "想要操作哪个聚合信息组。",
- "apihelp-aggregategroups-param-aggregategroup": "聚合信息组ID。",
- "apihelp-aggregategroups-param-group": "信息组ID。",
- "apihelp-aggregategroups-param-groupname": "聚合信息组名称。",
- "apihelp-aggregategroups-param-groupdescription": "聚合信息组说明。",
- "apihelp-aggregategroups-example-1": "定义一个群组",
+ "apihelp-aggregategroups-description": "管理聚合消息组。\n\n您可以添加和移除聚合消息组,以及从组中关联或分离消息(一次一个)。",
+ "apihelp-aggregategroups-summary": "管理聚合消息组。",
+ "apihelp-aggregategroups-extended-description": "您可以添加和移除聚合消息组,以及从组中关联或分离消息(一次一个)。",
+ "apihelp-aggregategroups-param-do": "想要操作哪个聚合消息组。",
+ "apihelp-aggregategroups-param-aggregategroup": "聚合消息组ID。",
+ "apihelp-aggregategroups-param-group": "消息组ID。",
+ "apihelp-aggregategroups-param-groupname": "聚合消息组的名称。",
+ "apihelp-aggregategroups-param-groupdescription": "聚合消息组的描述。",
+ "apihelp-aggregategroups-example-1": "关联一个群组",
"apihelp-groupreview-description": "设置信息组工作流状态。",
+ "apihelp-groupreview-summary": "设置信息组工作流状态。",
"apihelp-groupreview-param-group": "信息组。",
"apihelp-groupreview-param-language": "语言代码。",
"apihelp-groupreview-param-state": "组的新状态。",
- "apihelp-groupreview-example-1": "标记组“group-Example”为对德语就绪",
- "apihelp-hardmessages-description": "将翻译标记为困难。",
- "apihelp-hardmessages-param-title": "要标记为困难的信息的标题。",
- "apihelp-hardmessages-example-1": "将“SampleTitle”标记为困难",
+ "apihelp-groupreview-example-1": "将用于消息组“group-Example”的德语翻译状态标记为已就绪",
"apihelp-query+languagestats-description": "查询语言状态。",
+ "apihelp-query+languagestats-summary": "查询语言状态。",
"apihelp-query+languagestats-param-timelimit": "花费在统计缺失信息上的最长时间。如果为零,立即返回缓存的结果。",
"apihelp-query+languagestats-param-language": "语言代码。",
"apihelp-query+languagestats-example-1": "芬兰语的翻译完成统计列表",
"apihelp-query+messagecollection-description": "查询有关翻译的MessageCollection。",
+ "apihelp-query+messagecollection-summary": "查询有关翻译的MessageCollection。",
"apihelp-query+messagecollection-param-group": "信息组。",
"apihelp-query+messagecollection-param-language": "语言代码。",
"apihelp-query+messagecollection-param-limit": "显示的消息数量(过滤后)。",
"apihelp-query+messagecollection-param-offset": "起始的整数或键值。",
- "apihelp-query+messagecollection-param-filter": "消息集合过滤器。使用“!”否定条件。例如!fuzzy意思是只列出所有未过期消息。过滤器以特定顺序应用。\n;fuzzy:带fuzzy标签的消息。\n;optional:只应在需要更改时翻译的消息。\n;ignored:不应翻译的消息。\n;hastranslation:无论过期与否,带翻译的消息。\n;translated:带有未过期翻译的消息。\n;changed:自从上次导出之日起,已翻译或更改的消息。\n;reviewer&#58;#:当指定用户ID在复核者之间时的消息。\n;last-translator&#58;#:当指定用户ID是最终翻译者时的消息。",
+ "apihelp-query+messagecollection-param-filter": "消息集合过滤器。使用<kbd>!</kbd>否定条件。例如<kbd>!fuzzy</kbd>意思是只列出所有未过期消息。过滤器以特定顺序应用。\n;fuzzy:带fuzzy标签的消息。\n;optional:只应在需要更改时翻译的消息。\n;ignored:不应翻译的消息。\n;hastranslation:无论过期与否,带翻译的消息。\n;translated:带有未过期翻译的消息。\n;changed:自从上次导出之日起,已翻译或更改的消息。\n;reviewer&#58;N:当用户数字<kbd>N</kbd>在复核者之间时的消息。\n;last-translator&#58;N:当用户数字<kbd>N</kbd>是最终翻译者时的消息。",
+ "apihelp-query+messagecollection-param-prop": "要获取的属性:\n;definition:信息定义。\n;translation:当前翻译(如果有则不带$1字符串,使用标签以检查已过时或损坏的翻译)。\n;tags:信息标签,例如可选、已忽略和过时。\n;properties:信息属性,例如状态、修订、最后翻译者。可在信息间变化。\n;revision:<span class=\"deprecated\">已弃用!</span>请改用$2prop=properties。",
"apihelp-query+messagecollection-example-1": "支持的语言列表",
- "apihelp-query+messagecollection-example-2": "定义用于page-Example的非可选消息列表",
- "apihelp-query+messagecollection-example-3": "芬兰语中的可选消息列表,带有用于page-Example组的标签",
- "apihelp-query+messagecollection-example-4": "更多有关page-Example组最近翻译修订的信息",
+ "apihelp-query+messagecollection-example-2": "定义用于组“page-Example”的非可选消息列表",
+ "apihelp-query+messagecollection-example-3": "芬兰语中的可选消息列表,带有用于“page-Example”组的标签",
+ "apihelp-query+messagecollection-example-4": "更多有关“page-Example”组最近翻译修订的信息",
"apihelp-query+messagegroups-description": "返回有关消息组的信息。\n\n注意uselang参数会影响语言相关部分的输出。",
+ "apihelp-query+messagegroups-summary": "返回有关消息组的信息。",
+ "apihelp-query+messagegroups-extended-description": "注意uselang测试影响语言依赖部分的输出。",
+ "apihelp-query+messagegroups-param-depth": "当使用树形格式时,限制深度至如此多水平。值0意味着不会显示子组。如果达到限制,输出会包含一个“groupcount”值,它指出直系子组的数值。",
+ "apihelp-query+messagegroups-param-filter": "只返回匹配一个或更多输入内容的ID的消息(不区分大小写,以逗号分隔,* 通配符)。",
+ "apihelp-query+messagegroups-param-format": "在树格式信息组可以存在于树中的多个位置。",
"apihelp-query+messagegroups-param-iconsize": "栅格化群组图标的首选大小。",
"apihelp-query+messagegroups-param-prop": "要获得的有关翻译的信息:\n;id:包含组ID。\n;label:包含组标签。\n;description:包含组描述。\n;class:包含组分类名。\n;namespace:包含组名字空间。不是所有组都属于单一名字空间。\n;exists:包含自计算的组实际属性。\n;icon:包含至URL的组图标。\n;priority:包含优先状态,例如劝阻。\n;prioritylangs:包含首选语言。如果未设置,这将返回否。\n;priorityforce:包含优先状态——优先语言是否被强制设置。\n;workflowstates:包含用于消息组的工作流状态。",
+ "apihelp-query+messagegroups-param-root": "何时使用树形格式,而不是从来自指定信息组最高级开始,那样必须是一个聚合信息组。当使用单调格式时只有指定组被返回。",
"apihelp-query+messagegroups-example-1": "显示信息组",
"apihelp-query+messagegroupstats-description": "查询信息组状态。",
+ "apihelp-query+messagegroupstats-summary": "查询信息组状态。",
+ "apihelp-query+messagegroupstats-param-timelimit": "计算缺失统计所花费的最长时间。如果为零,则只有从开始起缓存的结果会被返回。",
"apihelp-query+messagegroupstats-param-group": "信息组ID。",
+ "apihelp-query+messagegroupstats-example-1": "用于“page-Example”组的翻译完成统计列表",
"apihelp-query+messagetranslations-description": "查询单个信息的所有翻译。",
+ "apihelp-query+messagetranslations-summary": "查询单个信息的所有翻译。",
"apihelp-query+messagetranslations-param-title": "已知消息的完整标题。",
- "apihelp-query+messagetranslations-example-1": "Wiki中用于MediaWiki:January的翻译列表",
+ "apihelp-query+messagetranslations-example-1": "Wiki中用于“MediaWiki:January”的翻译列表",
"apihelp-translatesandbox-description": "注册和管理沙盒化用户。",
+ "apihelp-translatesandbox-summary": "注册和管理沙盒化用户。",
"apihelp-translatesandbox-param-do": "要干什么。",
"apihelp-translatesandbox-param-userid": "要管理的用户的用户ID。0用于创建者。",
"apihelp-translatesandbox-param-username": "创建用户时的用户名。",
"apihelp-translatesandbox-param-password": "创建用户时的密码。",
"apihelp-translatesandbox-param-email": "创建用户时发送电子邮件。",
- "apihelp-translateuser-description": "与该用户相关的翻译信息",
- "apihelp-translateuser-example-1": "显示有关用户的信息",
"apihelp-translationaids-description": "查询所有翻译帮助。",
+ "apihelp-translationaids-summary": "查询所有翻译帮助。",
"apihelp-translationaids-param-title": "已知消息的完整标题。",
"apihelp-translationaids-param-group": "信息属于哪个信息组。如果为空则使用首要组。",
"apihelp-translationaids-param-prop": "包含的翻译助手。",
"apihelp-translationaids-example-1": "显示[[MediaWiki:January/fi]]的建议",
"apihelp-translationreview-description": "标记该翻译为已复核。",
+ "apihelp-translationreview-summary": "标记该翻译为已复核。",
"apihelp-translationreview-param-revision": "要复核的修订版本号。",
"apihelp-translationreview-example-1": "复核修订版本1",
"apihelp-translationstash-description": "将译文放在藏匿处。",
+ "apihelp-translationstash-summary": "将译文放在藏匿处。",
"apihelp-translationstash-param-subaction": "操作。",
"apihelp-translationstash-param-title": "翻译单位页面的标题。",
"apihelp-translationstash-param-translation": "由用户做出的翻译。",
@@ -69,9 +85,48 @@
"apihelp-translationstash-example-1": "加入[[MediaWiki:Jan/fi]]的一次翻译至藏匿处",
"apihelp-translationstash-example-2": "查询藏匿",
"apihelp-ttmserver-description": "从翻译记忆库查询建议。",
+ "apihelp-ttmserver-summary": "从翻译记忆库查询建议。",
"apihelp-ttmserver-param-service": "哪些翻译服务可供使用。",
"apihelp-ttmserver-param-sourcelanguage": "原始文本的语言代码。",
"apihelp-ttmserver-param-targetlanguage": "建议的语言代码。",
"apihelp-ttmserver-param-text": "用于寻找建议的文本。",
- "apihelp-ttmserver-example-1": "获取有关将“Help”从英语翻译成芬兰语的建议"
+ "apihelp-ttmserver-example-1": "获取有关将“Help”从英语翻译成芬兰语的建议",
+ "apihelp-searchtranslations-description": "搜索译文。",
+ "apihelp-searchtranslations-summary": "搜索译文。",
+ "apihelp-searchtranslations-param-service": "哪些翻译服务可供使用。",
+ "apihelp-searchtranslations-param-query": "要搜索的字符串。",
+ "apihelp-searchtranslations-param-sourcelanguage": "原始文本的语言代码。",
+ "apihelp-searchtranslations-param-language": "要搜索字符串的语言代码。",
+ "apihelp-searchtranslations-param-group": "要搜索字符串的组id。",
+ "apihelp-searchtranslations-param-filter": "消息译文状态过滤器。",
+ "apihelp-searchtranslations-param-match": "匹配任何/所有搜索词。",
+ "apihelp-searchtranslations-param-case": "(不)区分大小写的搜索。",
+ "apihelp-searchtranslations-param-offset": "用于译文的偏移。",
+ "apihelp-searchtranslations-param-limit": "结果的大小。",
+ "apihelp-searchtranslations-example-1": "显示用于语言的翻译。",
+ "apihelp-searchtranslations-example-2": "显示在原始语言中匹配查询未翻译信息。",
+ "apihelp-translationcheck-description": "验证提供的翻译是否符合消息检查者的要求。",
+ "apihelp-translationcheck-summary": "验证翻译。",
+ "apihelp-translationcheck-param-title": "带名字空间和语言代码的页面标题。",
+ "apihelp-translationcheck-param-translation": "要验证的翻译。",
+ "apierror-translate-duplicateaggregategroup": "消息组已存在",
+ "apierror-translate-fuzzymessage": "不能复核模糊翻译",
+ "apierror-translate-groupreviewdisabled": "未使用消息组复核。",
+ "apierror-translate-invalidaggregategroup": "无效的聚合消息组",
+ "apierror-translate-invalidaggregategroupname": "无效的聚合消息组名称",
+ "apierror-translate-invalidgroup": "组不存在或无效",
+ "apierror-translate-invalidstate": "请求的状态无效。",
+ "apierror-translate-invalidlanguage": "请求的语言无效。",
+ "apierror-translate-invalidupdate": "无效更新",
+ "apierror-translate-language-disabled": "至$1的翻译已禁用。",
+ "apierror-translate-language-disabled-reason": "至$1的翻译已禁用:$2",
+ "apierror-translate-language-disabled-source": "此组的原始语言是$1。请选择另一语言进行翻译。",
+ "apierror-translate-nodynamicgroups": "动态消息组在此不支持",
+ "apierror-translate-nomessagefortitle": "标题与可翻译消息不一致",
+ "apierror-translate-notranslationservices": "未配置公开翻译服务。在此功能可以使用前,wiki管理员需要适当设置<var>$wgTranslateTranslationServices</var>。",
+ "apierror-translate-owntranslation": "不能复核自己的翻译",
+ "apierror-translate-sandboxdisabled": "未使用沙盒功能",
+ "apierror-translate-sandbox-invalidppassword": "无效密码",
+ "apierror-translate-unknownmessage": "未知消息",
+ "apiwarn-translate-alreadyreviewedbyyou": "已被您标记为已复核"
}
diff --git a/MLEB/Translate/i18n/api/zh-hant.json b/MLEB/Translate/i18n/api/zh-hant.json
index 3afa6f24..ea7d5a18 100644
--- a/MLEB/Translate/i18n/api/zh-hant.json
+++ b/MLEB/Translate/i18n/api/zh-hant.json
@@ -1,9 +1,131 @@
{
"@metadata": {
"authors": [
- "Liuxinyu970226"
+ "Liuxinyu970226",
+ "LNDDYL",
+ "Kly"
]
},
+ "apihelp-aggregategroups-description": "管理集合訊息群組。\n\n您可以添加或移除集合訊息群組,以及從其中來關聯或取消關聯訊息群組(每一次一個)。",
+ "apihelp-aggregategroups-summary": "管理集合訊息群組。",
+ "apihelp-aggregategroups-extended-description": "您可以添加或移除集合訊息群組,以及從其中來關聯或取消關聯訊息群組(每一次一個)。",
+ "apihelp-aggregategroups-param-do": "要與集合訊息群組做的項目。",
+ "apihelp-aggregategroups-param-aggregategroup": "集合訊息群組 ID。",
+ "apihelp-aggregategroups-param-group": "訊息群組 ID。",
+ "apihelp-aggregategroups-param-groupname": "集合訊息群組名稱。",
+ "apihelp-aggregategroups-param-groupdescription": "集合訊息群組描述。",
+ "apihelp-aggregategroups-example-1": "關聯群組",
+ "apihelp-groupreview-description": "設定訊息群組的工作流狀態。",
+ "apihelp-groupreview-summary": "設定訊息群組的工作流狀態。",
+ "apihelp-groupreview-param-group": "訊息群組。",
"apihelp-groupreview-param-language": "語言代碼。",
- "apihelp-query+messagecollection-param-language": "語言代碼。"
+ "apihelp-groupreview-param-state": "群組的新狀態。",
+ "apihelp-groupreview-example-1": "標記訊息群組「group-Example」的德語翻譯狀態為就緒",
+ "apihelp-query+languagestats-description": "查詢語言統計。",
+ "apihelp-query+languagestats-summary": "查詢語言統計。",
+ "apihelp-query+languagestats-param-timelimit": "花費計算遺失統計資料的最長時間。若為零,僅會回傳從起始快取的內容。",
+ "apihelp-query+languagestats-param-language": "語言代碼。",
+ "apihelp-query+languagestats-example-1": "芬蘭語的翻譯完成統計狀態清單",
+ "apihelp-query+messagecollection-description": "查詢有關翻譯的 MessageCollection。",
+ "apihelp-query+messagecollection-summary": "查詢有關翻譯的 MessageCollection。",
+ "apihelp-query+messagecollection-param-group": "訊息群組。",
+ "apihelp-query+messagecollection-param-language": "語言代碼。",
+ "apihelp-query+messagecollection-param-limit": "要顯示的訊息多寡(在篩選後)。",
+ "apihelp-query+messagecollection-param-offset": "起始的整數或鍵值偏差。",
+ "apihelp-query+messagecollection-param-filter": "訊息集合篩選。使用 <kbd>!</kbd> 來使條件無效。例如 <kbd>!fuzzy</kbd> 代表僅列出未過時的訊息。篩選是以指定的排序來套用。\n;fuzzy:帶有已過時標籤的訊息。\n;optional:僅在需要更改時翻譯的訊息。\n;ignored:不需翻譯的訊息。\n;hastranslation:有被翻譯到的訊息,無論是否過時。\n;translated:有被翻譯到且非過時的訊息。\n;changed:自上一次匯出時,有被翻譯或更改的訊息。\n;reviewer&#58;N:在複審員裡使用者編號為 <kbd>N</kbd> 的訊息。\n;last-translator&#58;N:最後一位翻譯者之使用者編號為 <kbd>N</kbd> 的訊息。",
+ "apihelp-query+messagecollection-param-prop": "要取得的參數:\n;definition:訊息定義。\n;translation:目前翻譯(若不帶有 $1 字串,使用標籤來檢查舊有或損壞翻譯)。\n;tags:訊息標籤,像是可選用、已忽略和已過時。\n;properties:訊息參數,像是狀態、修訂、最後的翻譯者。可在訊息間變動。\n;revision:<span class=\"deprecated\">已棄用!</span>請改用 $2prop=properties。",
+ "apihelp-query+messagecollection-example-1": "支援語言清單",
+ "apihelp-query+messagecollection-example-2": "群組「group-Example」的非選用群組定義清單",
+ "apihelp-query+messagecollection-example-3": "用於群組「group-Example」,芬蘭語中帶標籤的選用群組清單",
+ "apihelp-query+messagecollection-example-4": "更多有關群組「group-Example」最新翻譯修訂的資訊",
+ "apihelp-query+messagegroups-description": "回傳有關訊息群組的資訊。\n\n請注意 uselang 參數會影響語言相依部份的輸出內容。",
+ "apihelp-query+messagegroups-summary": "回傳有關訊息群組的資訊。",
+ "apihelp-query+messagegroups-extended-description": "請注意 uselang 參數會影響語言相依部份的輸出內容。",
+ "apihelp-query+messagegroups-param-depth": "當使用樹狀格式,會限制到這樣多層級的深度。值 0 代表著不會顯示子群組。如果已達到限制,輸出內容會包含一個「groupcount」值,此代表著直系子組的數目。",
+ "apihelp-query+messagegroups-param-filter": "僅回傳符合一個或多個所提供輸入內容的帶 ID 訊息(不區分大小寫、以豎線符號分隔、* 萬用字元)。",
+ "apihelp-query+messagegroups-param-format": "樹狀格式訊息群組可存在於樹狀的多個位置裡。",
+ "apihelp-query+messagegroups-param-iconsize": "點陣化群組圖標首選尺寸大小。",
+ "apihelp-query+messagegroups-param-prop": "要取得的翻譯相關資訊:\n;id:包含群組的 ID。\n;label:包含群組的標籤。\n;description:包含群組的描述。\n;class:包含群組的類別名稱。\n;namespace:包含群組的命名空間。並非所有群組都屬於單一命名空間。\n;exists:包含自我估計的群組存有屬性。\n;icon:包含至群組圖標的 URL。\n;priority:包含的優先狀態,例如像是不建議。\n;prioritylangs:包含首選的語言。若未設定,則回傳 false。\n;priorityforce:包含的優先狀態 - 優先語言是否被強制設定。\n;workflowstates:包含群組訊息的工作流狀態。",
+ "apihelp-query+messagegroups-param-root": "當使用樹狀格式時,不要從所提供訊息群組起始的最高層級來開始,這必須是個集合訊息群組。當使用平面格式時僅會回傳指定群組。",
+ "apihelp-query+messagegroups-example-1": "顯示訊息群組",
+ "apihelp-query+messagegroupstats-description": "查詢訊息群組統計。",
+ "apihelp-query+messagegroupstats-summary": "查詢訊息群組統計。",
+ "apihelp-query+messagegroupstats-param-timelimit": "花費計算遺失統計資料的最長時間。若為零,僅會回傳從起始快取的內容。",
+ "apihelp-query+messagegroupstats-param-group": "訊息群組 ID。",
+ "apihelp-query+messagegroupstats-example-1": "針對「page-Example」群組的翻譯完成度統計清單",
+ "apihelp-query+messagetranslations-description": "查詢單一訊息的所有翻譯。",
+ "apihelp-query+messagetranslations-summary": "查詢單一訊息的所有翻譯。",
+ "apihelp-query+messagetranslations-param-title": "已知訊息的完整標題。",
+ "apihelp-query+messagetranslations-example-1": "Wiki 裡用於「MediaWiki:January」的翻譯清單",
+ "apihelp-translatesandbox-description": "註冊並管理沙盒使用者。",
+ "apihelp-translatesandbox-summary": "註冊並管理沙盒使用者。",
+ "apihelp-translatesandbox-param-do": "要做什麼。",
+ "apihelp-translatesandbox-param-userid": "要管理的使用者 ID。0 用於創建。",
+ "apihelp-translatesandbox-param-username": "建立使用者時的使用者名稱。",
+ "apihelp-translatesandbox-param-password": "建立使用者時的密碼。",
+ "apihelp-translatesandbox-param-email": "建立使用者時發送電子郵件。",
+ "apihelp-translationaids-description": "查詢所有翻譯協助。",
+ "apihelp-translationaids-summary": "查詢所有翻譯協助。",
+ "apihelp-translationaids-param-title": "已知訊息的完整標題。",
+ "apihelp-translationaids-param-group": "訊息所屬於訊息群組。若為空則使用主群組。",
+ "apihelp-translationaids-param-prop": "要包含的翻譯助手。",
+ "apihelp-translationaids-example-1": "顯示 [[MediaWiki:January/fi]] 的協助",
+ "apihelp-translationreview-description": "標記翻譯為已審查。",
+ "apihelp-translationreview-summary": "標記翻譯為已審查。",
+ "apihelp-translationreview-param-revision": "要審查的修訂號碼。",
+ "apihelp-translationreview-example-1": "審查修訂 1",
+ "apihelp-translationstash-description": "添加翻譯至暫存區。",
+ "apihelp-translationstash-summary": "添加翻譯至暫存區。",
+ "apihelp-translationstash-param-subaction": "操作。",
+ "apihelp-translationstash-param-title": "翻譯單元頁面的標題。",
+ "apihelp-translationstash-param-translation": "由使用者所做出的翻譯。",
+ "apihelp-translationstash-param-metadata": "JSON 物件。",
+ "apihelp-translationstash-param-username": "選用的暫存區取得使用者。僅帶有特定權限的使用者可以執行此操作。",
+ "apihelp-translationstash-example-1": "添加翻譯到 [[MediaWiki:Jan/fi]] 的暫存區",
+ "apihelp-translationstash-example-2": "查詢暫存區",
+ "apihelp-ttmserver-description": "從翻譯記憶查詢建議。",
+ "apihelp-ttmserver-summary": "從翻譯記憶查詢建議。",
+ "apihelp-ttmserver-param-service": "可供使用的翻譯服務。",
+ "apihelp-ttmserver-param-sourcelanguage": "原始文字的語言代碼。",
+ "apihelp-ttmserver-param-targetlanguage": "建議的語言代碼。",
+ "apihelp-ttmserver-param-text": "用於尋找建議的文字。",
+ "apihelp-ttmserver-example-1": "取得將「Help」從英語翻譯成芬蘭語的建議",
+ "apihelp-searchtranslations-description": "搜尋翻譯。",
+ "apihelp-searchtranslations-summary": "搜尋翻譯。",
+ "apihelp-searchtranslations-param-service": "可供使用的翻譯服務。",
+ "apihelp-searchtranslations-param-query": "欲搜尋的字串。",
+ "apihelp-searchtranslations-param-sourcelanguage": "原始文字的語言碼。",
+ "apihelp-searchtranslations-param-language": "要搜尋字串的語言代碼。",
+ "apihelp-searchtranslations-param-group": "要搜尋字串的群組 ID。",
+ "apihelp-searchtranslations-param-filter": "訊息翻譯狀態篩選器。",
+ "apihelp-searchtranslations-param-match": "符合任何/所有搜尋文字。",
+ "apihelp-searchtranslations-param-case": "(不)區分大小寫搜尋。",
+ "apihelp-searchtranslations-param-offset": "翻譯偏差",
+ "apihelp-searchtranslations-param-limit": "結果的大小。",
+ "apihelp-searchtranslations-example-1": "顯示用於語言的翻譯。",
+ "apihelp-searchtranslations-example-2": "顯示在來源語言裡符合查詢的尚未翻譯訊息。",
+ "apihelp-translationcheck-description": "驗證提供的翻譯輸入內容是否符合訊息檢查者要求。",
+ "apihelp-translationcheck-summary": "驗證翻譯。",
+ "apihelp-translationcheck-param-title": "帶有命名空間與語言代碼的頁面標題。",
+ "apihelp-translationcheck-param-translation": "要驗證的翻譯。",
+ "apierror-translate-duplicateaggregategroup": "訊息群組已存在",
+ "apierror-translate-fuzzymessage": "不能審查已過時翻譯",
+ "apierror-translate-groupreviewdisabled": "未使用訊息群組審查。",
+ "apierror-translate-invalidaggregategroup": "無效集合訊息群組",
+ "apierror-translate-invalidaggregategroupname": "無效集合訊息群組名稱",
+ "apierror-translate-invalidgroup": "群組不存在或無效",
+ "apierror-translate-invalidstate": "請求的狀態無效。",
+ "apierror-translate-invalidlanguage": "請求的語言無效。",
+ "apierror-translate-invalidupdate": "無效更新",
+ "apierror-translate-language-disabled": "對$1的翻譯已停用。",
+ "apierror-translate-language-disabled-reason": "對$1的翻譯已停用:$2",
+ "apierror-translate-language-disabled-source": "此群組的來源語言是$1。請選擇其它的語言來翻譯。",
+ "apierror-translate-nodynamicgroups": "在此不支援動態訊息群組",
+ "apierror-translate-nomessagefortitle": "標題與可翻譯訊息不一致",
+ "apierror-translate-notranslationservices": "未設置開放翻譯服務。在此功能可使用前,Wiki 管理員需適當設定 <var>$wgTranslateTranslationServices</var>。",
+ "apierror-translate-owntranslation": "不能審查自己的翻譯",
+ "apierror-translate-sandboxdisabled": "未使用沙盒功能",
+ "apierror-translate-sandbox-invalidppassword": "無效密碼",
+ "apierror-translate-unknownmessage": "未知訊息",
+ "apiwarn-translate-alreadyreviewedbyyou": "已由您標記為已審查"
}
diff --git a/MLEB/Translate/i18n/core/ace.json b/MLEB/Translate/i18n/core/ace.json
index 8e60231a..57e1aec8 100644
--- a/MLEB/Translate/i18n/core/ace.json
+++ b/MLEB/Translate/i18n/core/ace.json
@@ -3,14 +3,12 @@
"authors": [
"Rachmat.Wahidi",
"Ayie7791",
- "Si Gam Acèh"
+ "Si Gam Acèh",
+ "Rachmat04"
]
},
"translate": "Teujeumah",
"translate-desc": "[[Special:Translate|Laman kusuih]] keu neuteujeumah MediaWiki ngön nyang la'én",
- "translate-taskui-view": "Peudeuh ban dum peusan",
- "translate-taskui-untranslated": "Peudeuh peusan nyang gohlom meuteujeumah",
- "translate-taskui-reviewall": "Kalön ban dum teujeumah",
"translate-taction-translate": "Teujeumah",
"translate-taction-proofread": "Kalön",
"translate-taction-lstats": "Keunira bahsa",
@@ -34,7 +32,6 @@
"translate-prev": "Laman u likôt",
"translate-page-description-legend": "Hareutoe bhah kawan nyoe",
"translate-page-edit": "andam",
- "translate-ext-url": "<hr />Alamat wèb: $1",
"translate-optional": "(teunamah)",
"translate-ignored": "(hana peuhiröe)",
"translate-edit-title": "Andam \"$1\"",
@@ -43,6 +40,5 @@
"translate-edit-contribute": "beuneuri",
"translate-edit-information": "Hareutoe bhah peusan ($1)",
"translate-edit-in-other-languages": "Peusan bak bahsa la'én",
- "translate-edit-committed": "Teujeumah lam peukakah leumiek jinoe",
"translate-documentation-language": "Dokumentasi peusan"
}
diff --git a/MLEB/Translate/i18n/core/aeb-latn.json b/MLEB/Translate/i18n/core/aeb-latn.json
index 7db18d0a..7ee879b6 100644
--- a/MLEB/Translate/i18n/core/aeb-latn.json
+++ b/MLEB/Translate/i18n/core/aeb-latn.json
@@ -1,8 +1,9 @@
{
"@metadata": {
"authors": [
- "GeekEmad"
+ "GeekEmad",
+ "Csisc"
]
},
- "translate-documentation-language": "Id-dokümoñtesyoñ mteģ il-mêssâj"
+ "translate-documentation-language": "Id-dokümoñtesyoñ mtēģ il-mēssāj"
}
diff --git a/MLEB/Translate/i18n/core/af.json b/MLEB/Translate/i18n/core/af.json
index 2b07966f..ae714128 100644
--- a/MLEB/Translate/i18n/core/af.json
+++ b/MLEB/Translate/i18n/core/af.json
@@ -6,16 +6,12 @@
"Byeboer",
"Naudefj",
"SPQRobin",
- "පසිඳු කාවින්ද"
+ "පසිඳු කාවින්ද",
+ "Fwolff"
]
},
"translate": "Vertaal",
- "translate-desc": "[[Special:Translate|Spesiale bladsy]] vir vertaal van MediaWiki en meer",
- "translate-taskui-view": "Wys alle boodskappe",
- "translate-taskui-untranslated": "Wys onvertaalde boodskappe",
- "translate-taskui-optional": "Wys opsionele boodskappe.",
- "translate-taskui-acceptqueue": "Slegs boodskappe wat ek kan aanvaar",
- "translate-taskui-reviewall": "Kontroleer alle vertalings",
+ "translate-desc": "[[Special:Translate|Spesiale bladsy]] om MediaWiki en meer te vertaal",
"translate-taction-translate": "Vertaal",
"translate-taction-proofread": "Proeflees",
"translate-taction-lstats": "Taalstatistieke",
@@ -41,7 +37,6 @@
"translate-page-description-legend": "Inligting oor hierdie groep",
"translate-page-description-hasoptional-open": "Wys opsionele boodskappe.",
"translate-page-edit": "wysig",
- "translate-ext-url": "<hr />Webwerf: $1",
"translate-optional": "(opsioneel)",
"translate-ignored": "(geïgnoreer)",
"translate-edit-title": "Wysig \"$1\"",
@@ -51,9 +46,7 @@
"translate-edit-no-information": "''Die boodskap het geen dokumentasie nie.''\n''As u weet waar die boodskap gebruik word, kan u ander gebruikers help deur dokumentasie by te voeg.''",
"translate-edit-information": "Inligting oor boodskap ($1)",
"translate-edit-in-other-languages": "Boodskap in ander tale",
- "translate-edit-committed": "Huidige vertaling in sagteware",
"translate-edit-warnings": "Waarskuwings oor onvoltooide vertalings",
- "translate-edit-tmsugs": "Voorstelle uit die vertaalgeheue",
"translate-edit-tmmatch-source": "Bronteks vir vertaling: $1",
"translate-edit-tmmatch": "$1% ooreenkoms",
"translate-use-suggestion": "Vervang die huidige vertaling met hierdie voorstel.",
@@ -104,7 +97,7 @@
"translate-rc-translation-filter": "Filter vertalings:",
"translate-rc-translation-filter-no": "Doen niks nie",
"translate-rc-translation-filter-only": "Wys slegs vertalings",
- "translate-rc-translation-filter-filter": "Filter vertalings uit",
+ "translate-rc-translation-filter-filter": "Filtreer vertalings uit",
"translate-rc-translation-filter-site": "Slegs veranderinge aan werfboodskappe",
"translationstats": "Vertaalstatistieke",
"translate-stats-edits": "Wysigings",
@@ -132,7 +125,6 @@
"translate-statsf-language": "Kommageskeide lys van taalkodes:",
"translate-statsf-group": "Kommageskeide lys van groepkodes:",
"translate-statsf-submit": "Voorskou",
- "translate-tag-category": "Vertaalbare bladsye",
"translate-tag-page-desc": "Vertaling van die wikibladsy [[$2|$1]].",
"translate-sidebar-alltrans": "In ander tale",
"translations": "Alle vertalings",
@@ -161,7 +153,7 @@
"translate-language": "Taal",
"translate-total": "Boodskappe",
"translate-untranslated": "Onvertaal",
- "translate-percentage-complete": "Vertaal",
+ "translate-percentage-complete": "Vertaald",
"translate-percentage-fuzzy": "Verouderd",
"translate-languagestats-overall": "Alle boodskapgroepe saam",
"translate-ls-submit": "Wys statistieke",
@@ -181,7 +173,7 @@
"supportedlanguages-translators": "{{PLURAL:$2|Vertaler|Vertalers}}: $1",
"supportedlanguages-recenttranslations": "onlangse vertalings",
"supportedlanguages-count": "$1 {{PLURAL:$1|taal|tale}} in totaal.",
- "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|wysiging|wysigings}} - laaste wysiging {{PLURAL:$3|gister|$1 dae}} gelede",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|wysiging|wysigings}} - laaste wysiging {{PLURAL:$3|gister|$3 dae gelede}}",
"translate-save": "Stoor ($1)",
"translate-jssti-add": "Voeg by lys",
"managemessagegroups": "Beheer boodskapgroepe",
@@ -203,7 +195,6 @@
"translate-manage-toolong": "Die maksimum verwerkingstyd van $1 {{PLURAL:$1|sekonde|sekondes}} is oorskry.\nDien die opdrag asseblief weer in.",
"translate-manage-import-summary": "Besig met die importering van 'n nuwe weergawe vanuit 'n eksterne bron",
"translate-manage-conflict-summary": "Besig met die importering van 'n nuwe weergawe vanuit 'n eksterne bron.\nKontroleer die wysiging.",
- "translate-manage-fuzzy-summary": "Die boodskap se definisie is gewysig",
"translate-manage-submit": "Voer uit",
"translate-manage-import-ok": "Nuwe weergawe van die bladsy $1 is gelaai.",
"translate-manage-import-done": "Klaar!",
@@ -220,9 +211,7 @@
"translate-js-summary": "Samevatting:",
"translate-js-save": "Stoor",
"translate-js-next": "Stoor en open die volgende",
- "translate-js-nonext": "Dit was die laaste boodskap op hierdie bladsy.",
"translate-js-skip": "Slaan oor en volgende",
- "translate-js-save-failed": "Stoor het misluk. Rapporteer asb. hierdie fout.",
"translate-js-history": "Vertaalgeskiedenis",
"translate-js-support": "Vra 'n vraag",
"translate-js-support-title": "Vra vir hulp as daar nie genoeg inligting is om hierdie boodskap korrek te vertaal nie.",
@@ -239,21 +228,9 @@
"translate-documentation-language": "Boodskapbeskrywing",
"translate-searchprofile": "Vertalings",
"translate-searchprofile-tooltip": "Soek in alle vertalings",
- "translate-search-languagefilter": "Filter deur taal:",
+ "translate-searchprofile-note": "Die [$1 vertalingssoekfunsie] bied meer opsies.",
+ "translate-search-languagefilter": "Filtreer volgens taal:",
"translate-search-nofilter": "Geen filter",
- "translate-messagereview-submit": "Aanvaar",
- "translate-messagereview-progress": "Besig om te aanvaar...",
- "translate-messagereview-failure": "Besig om te aanvaar... Gefaal: $1",
- "translate-messagereview-done": "Aanvaar",
- "translate-messagereview-reviews": "Aanvaar deur {{PLURAL:$1|'n gebruiker|$1 gebruikers}}",
- "translate-messagereview-reviewswithyou": "Aanvaar deur {{PLURAL:$1|u|$1 gebruikers, insluitende uself}}",
- "api-error-invalidrevision": "Die vertaling is nie gevind nie.",
- "api-error-unknownmessage": "Die boodskap is nie gevind nie.",
- "api-error-fuzzymessage": "Die vertaling is gemerk 'n fuzzy",
- "api-error-owntranslation": "Jy kan nie jou eie vertalings aanvaar",
- "translate-messagereview-no-fuzzy": "Fuzzy vertalings kan nie aanvaar word nie.",
- "translate-messagereview-no-own": "Jy kan nie jou eie vertalings aanvaar.",
- "translate-messagereview-doit": "Aanvaar hierdie vertaling as 'n korrekte vertaling.",
"log-name-translationreview": "Vertaling review log",
"log-description-translationreview": "Logboek met alle kontroles van vertalings en boodskapgroepe.",
"logentry-translationreview-message": "$1 {{GENDER:$2|het}} die vertaling $3 aanvaar",
@@ -262,19 +239,11 @@
"group-translate-sandboxed-member": "{{GENDER:$1|aspirant vertaler}}",
"translate-workflow-state-": "(nie gesetel)",
"translate-workflowstatus": "Status: $1",
- "translate-workflow-set-do": "Stel",
"translate-workflow-set-doing": "Besig om te stel...",
- "translate-workflow-set-done": "Gestel!",
- "translate-workflow-set-error-alreadyset": "De opgegewe status is identies aan die huidige status.",
"translate-stats-workflow": "Status",
"translate-dynagroup-recent-label": "onlangse vertalings",
"translate-dynagroup-additions-label": "Onlangse toevoegings",
"translate-dynagroup-additions-desc": "Hierdie boodskapgroep wys nuwe en gewysigde boodskappe:",
- "translate-dynagroup-by": "Vertalings gemaak deur {{GENDER:$1|$1}}",
- "translate-dynagroup-byc": "Vertalings gemaak deur {{GENDER:$1|$1}} ($2)",
- "translate-dynagroup-last": "Laaste wysiging deur {{GENDER:$1|$1}}",
- "translate-dynagroup-lastc": "Laaste wysiging deur {{GENDER:$1|$1}} ($2)",
- "translate-gethelp": "Hulp",
"translate-msggroupselector-projects": "Boodskapgroep",
"translate-msggroupselector-search-placeholder": "Soek groepe",
"translate-msggroupselector-search-all": "Alle",
@@ -284,13 +253,13 @@
"tux-tab-all": "Alle",
"tux-tab-untranslated": "Onvertaald",
"tux-tab-outdated": "Verouderd",
- "tux-tab-translated": "Vertaal",
+ "tux-tab-translated": "Vertaald",
"tux-tab-unproofread": "Ongekontroleerd",
"tux-edit": "Wysig",
"tux-status-optional": "Opsioneel",
"tux-status-fuzzy": "Verouderd",
"tux-status-proofread": "Gekontroleerd",
- "tux-status-translated": "Vertaal",
+ "tux-status-translated": "Vertaald",
"tux-status-saving": "Stoor...",
"tux-status-unsaved": "Ongestoor",
"tux-editor-placeholder": "U vertaling",
@@ -329,7 +298,7 @@
"tux-editor-doc-editor-cancel": "Kanselleer",
"tux-messagetable-more-messages": "Nog {{PLURAL:$1|een boodskap|$1 boodskappe}}",
"tux-messagetable-loading-messages": "Besig met laai van {{PLURAL:$1|boodskap|boodskappe}}...",
- "tux-message-filter-placeholder": "Filter lys",
+ "tux-message-filter-placeholder": "Filtreer lys",
"tux-message-filter-result": "{{PLURAL:$1|Een resultaat|$1 resultate}} gevind vir \"$2\"",
"tux-message-filter-advanced-button": "Uitgebreide soektog",
"tux-message-filter-optional-messages-label": "Opsionele boodskappe",
diff --git a/MLEB/Translate/i18n/core/aln.json b/MLEB/Translate/i18n/core/aln.json
index 1ec63243..b37e7122 100644
--- a/MLEB/Translate/i18n/core/aln.json
+++ b/MLEB/Translate/i18n/core/aln.json
@@ -21,7 +21,6 @@
"translate-prev": "Faqja e mëparshme",
"translate-page-description-legend": "Informata për grupin e",
"translate-page-edit": "redaktoj",
- "translate-ext-url": "<hr /> Website: $1",
"translate-optional": "(Optional)",
"translate-ignored": "(Injorohen)",
"translate-edit-definition": "përkufizim Mesazh",
@@ -29,9 +28,7 @@
"translate-edit-no-information": "''Ky mesazh nuk ka asnjë dokumentacion. Nëse ju e dini se ku apo se si ky mesazh është përdorur, ju mund të ndihmoni përkthyes të tjerë duke dokumentacionin në këtë mesazh.''",
"translate-edit-information": "Informacion rreth mesazh \"$2\" ($1)",
"translate-edit-in-other-languages": "Mesazhi \"$1\" në gjuhë të tjera",
- "translate-edit-committed": "përkthimin e tanishme në softuer",
"translate-edit-warnings": "Paralajmërimet për përkthime të plota",
- "translate-edit-tmsugs": "Sugjerime nga memorie përkthimi",
"translate-edit-tmmatch": "ndeshje $1%",
"translate-manage-import-diff": "Mesazhi $1 | Veprimi: $2",
"translate-manage-import-new": "mesazh i ri $1",
@@ -46,7 +43,6 @@
"translate-manage-toolong": "Përpunimit kohë maksimale prej $1 {{PLURAL:$1|sekonda|dytë}} tejkalohen. Ju lutemi të rikthejë formën për të vazhduar të përpunimit.",
"translate-manage-import-summary": "Importimi i një version të ri nga burimet e jashtme",
"translate-manage-conflict-summary": "Importimi i një version të ri nga burimi i jashtëm. Ju lutem kontrolloni.",
- "translate-manage-fuzzy-summary": "Përkufizimi ka ndryshuar",
"translate-manage-submit": "Kryej",
"translate-manage-intro-other": "Më poshtë është lista e ndryshimeve të përkthimit në gjuhën e $1. Ju lutemi të shqyrtuar ndryshimet dhe të zgjidhni një veprim që ju doni të bëni për çdo përkthim. Nëse ju vendosni të injorojë ndryshime, ata do të kapërcehet në eksportin e ardhshme.",
"translate-manage-import-ok": "version i importuar i ri i faqes $1.",
diff --git a/MLEB/Translate/i18n/core/ar.json b/MLEB/Translate/i18n/core/ar.json
index 5981bd1c..0ec771f6 100644
--- a/MLEB/Translate/i18n/core/ar.json
+++ b/MLEB/Translate/i18n/core/ar.json
@@ -14,23 +14,28 @@
"لطرش أحمد الهاشمي",
"لطرش احمد الهاشمي",
"Gagnabil",
- "محمد أحمد عبد الفتاح"
+ "محمد أحمد عبد الفتاح",
+ "Maroen1990",
+ "Mr. Ibrahem",
+ "ديفيد",
+ "Hhaboh162002"
]
},
"translate": "ترجمة",
"translate-desc": "[[Special:Translate|صفحة خاصة]] لترجمة الميدياويكي وما بعده",
- "translate-taskui-view": "أظهر كل الرسائل",
- "translate-taskui-untranslated": "أظهر الرسائل غير المترجمة",
- "translate-taskui-optional": "أظهر الرسائل الاختيارية",
- "translate-taskui-reviewall": "مراجعة كل الترجمات",
+ "translate-fuzzybot-desc": "هذا حساب نظام خاص يستخدمه [https://www.mediawiki.org/wiki/Extension:Translate امتداد ترجمة] ميدياويكي ومستخدم للحفاظ على الترجمات،\nهذا الحساب جزء من برنامج ميدياويكي وليس مملوك لأي مستخدم.",
+ "translate-taskui-export-to-file": "صدر في صيغة أصلية",
+ "translate-taskui-export-as-po": "تصدير للترجمة بدون إنترنت",
"translate-taction-translate": "ترجم",
"translate-taction-proofread": "راجع",
"translate-taction-lstats": "إحصاءات اللغة",
"translate-taction-mstats": "إحصاءات مجموعة الرسائل",
"translate-taction-export": "صدّر",
+ "translate-taction-disabled": "هذا التصرف معطل على هذا الويكي.",
"translate-page-no-such-language": "لم تكن اللغة المحددة صحيحة.",
"translate-page-no-such-group": "المجموعة المحددة غير صحيحة.",
"translate-page-disabled": "الترجمات إلى هذه اللغة في هذه المجموعة تم تعطيلها. السبب:\n\n<em>$1</em>",
+ "translate-language-disabled": "الترجمات إلى هذه اللغة غير مفعلة.",
"translate-page-settings-legend": "الإعدادات",
"translate-page-group": "المجموعة",
"translate-page-language": "اللغة",
@@ -44,27 +49,32 @@
"translate-next": "الصفحة التالية",
"translate-prev": "الصفحة السابقة",
"translate-page-description-legend": "معلومات حول المجموعة",
- "translate-page-description-hasoptional": "مجموعة الرسائل هذه تحتوي على رسائل اختيارية.\n\nتترجم الرسائل الاختيارية عندما تكون لغتك بحاجة الى متطلبات خاصة\n\nمثل عدم استخدام مسافات أو ترجمة اسماء فريدة. $1",
+ "translate-page-description-hasoptional": "مجموعة الرسائل هذه تحتوي على رسائل اختيارية.\n\nيجب أن تترجم الرسائل الاختيارية فقط حينما تكون لغتك لها متطلبات خاصة\n\nمثل عدم استخدام مسافات أو الترجمة الحرفية لأسماء العلم. $1",
"translate-page-description-hasoptional-open": "إظهار الرسائل الاختيارية.",
"translate-page-edit": "عدل",
- "translate-ext-url": "<hr />موقع الوب: $1",
"translate-optional": "(اختياري)",
"translate-ignored": "(متجاهل)",
"translate-edit-title": "عدل \"$1\"",
"translate-edit-definition": "تعريف الرسالة",
"translate-edit-translation": "الترجمة",
"translate-edit-contribute": "ساهم",
- "translate-edit-no-information": "''ليس لهذه الرسالة توثيق.\nإذا كنت تعرف أين أو كيف يتم استخدام هذه الرسالة، فيمكنك مساعدة المترجمين الآخرين بإضافة توثيق إلى هذه الرسالة.''",
+ "translate-edit-no-information": "<em>ليس لهذه الرسالة توثيق.\nإذا كنت تعرف أين أو كيف تستخدم هذه الرسالة، يمكنك مساعدة المترجمين الآخرين بإضافة توثيق إلى هذه الرسالة.</em>",
"translate-edit-information": "معلومات عن الرسالة ($1)",
"translate-edit-in-other-languages": "الرسالة بلغات أخرى",
- "translate-edit-committed": "الترجمة الحالية في البرنامج",
- "translate-edit-warnings": "التحذيرات حول الترجمات غير المكتملة",
- "translate-edit-tmsugs": "مقترحات من ذاكرة الترجمة",
+ "translate-edit-warnings": "التحذيرات الخاصة بالترجمات غير المكتملة",
+ "translate-edit-tmmatch-source": "نص المصدر للترجمة: $1",
"translate-edit-tmmatch": "$1% مطابقة",
"translate-use-suggestion": "استبدال الترجمة الحالية بهذا الاقتراح.",
+ "translate-edit-nopermission": "تحتاج صلاحيات الترجمة لترجمة الرسائل.",
+ "translate-edit-askpermission": "احصل على الإذن",
+ "exporttranslations": "تصدير الترجمات",
+ "translate-export-form-format": "الصيغة",
+ "translate-export-invalid-format": "من فضلك حدد صيغة صحيحة.",
+ "translate-export-not-supported": "تصدير الترجمات غير مدعوم.",
+ "translate-export-format-notsupported": "صيغة التصدير المحددة لا تدعمها مجموعة الرسائل.",
"translate-magic-pagename": "ترجمة ميدياويكي الممتدة",
- "translate-magic-help": "يمكنك ترجمة أسماء الصفحات الخاصة، والكلمات السحرية، وأسماء النطاقات.\n\nأسماء الصفحات الخاصة والكلمات السحرية يمكن أن يكون لها ترجمات متعددة.\nالترجمات تفصل بواسطة فاصلة (,).\nأسماء النطاقات يمكن أن يكون لها ترجمة واحدة فقط.\n\nفي ترجمات النطاقات <code>$1 talk</code> خاص. <code>$1</code> يتم استبدالها باسم الموقع (على سبيل المثال <code>{{ns:project_talk}}</code>).\nلو أنه من غير الممكن في لغتك صياغة تعبير صحيح بدون تغيير اسم الموقع، من فضلك اتصل بمطور.\n\nتحتاج إلى أن تكون في مجموعة المترجمين لحفظ التغييرات.\nالتغييرات لن يتم حفظها حتى تضغط زر الحفظ بالأسفل.",
- "translate-magic-module": "مكونة:",
+ "translate-magic-help": "يمكنك ترجمة أسماء الصفحات الخاصة، والكلمات السحرية، وأسماء النطاقات.\n\nأسماء الصفحات الخاصة والكلمات السحرية يمكن أن يكون لها ترجمات متعددة.\nالترجمات تفصل بواسطة فاصلة (,).\nأسماء النطاقات يمكن أن يكون لها ترجمة واحدة فقط.\n\nترجمة نطاق نقاش المشروع <code>$1 talk</code> من الممكن أن تكون معقدة.\n<code>$1</code> يتم استبدالها باسم الموقع (على سبيل المثال <code>{{ns:project_talk}}</code>).\nلو أنه من غير الممكن في لغتك صياغة تعبير صحيح بدون تغيير اسم الموقع، من فضلك دعنا نعرف في [[Support]].\n\nتحتاج إلى أن تكون في مجموعة المترجمين لحفظ التغييرات.\nالتغييرات لن يتم حفظها حتى تضغط زر الحفظ بالأسفل.",
+ "translate-magic-module": "وحدة:",
"translate-magic-submit": "اجلب",
"translate-magic-cm-export": "صدّر",
"translate-magic-nothing-to-export": "لا يوجد شيء يمكن تصديره.",
@@ -74,13 +84,13 @@
"translate-magic-cm-comment": "تعليق:",
"translate-magic-cm-save": "احفظ",
"translate-magic-cm-updatedusing": "حدث باستخدام [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
- "translate-magic-cm-savefailed": "الحفظ فشل",
+ "translate-magic-cm-savefailed": "فشل الحفظ",
"translate-magic-special": "أسماء الصفحات الخاصة",
"translate-magic-words": "كلمات سحرية",
"translate-magic-namespace": "أسماء النطاقات",
"translate-magic-notsaved": "تعديلك لم يُحفظ!",
"translate-magic-errors": "من فضلك أصلح {{PLURAL:$1||الخطأ|الخطأين|الأخطاء}} التالية في الترجمات:",
- "translate-magic-saved": "حُفظت تعديلاتك بنجاح.",
+ "translate-magic-saved": "تم حفظ تعديلاتك.",
"translate-checks-parameters": "{{PLURAL:$2||المحدد التالي غير مستخدم|المحددان التاليان غير مستخدمان|المحددات التالية غير مستخدمة}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-parameters-unknown": "{{PLURAL:$2||المحدد التالي غير معروف|المحددان التاليان غير معروفان|المحددات التالية غير معروفة}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-balance": "يوجد عدد غير زوجي من {{PLURAL:$2|الأقواس}}:\n<strong><nowiki>$1</nowiki></strong>",
@@ -88,19 +98,35 @@
"translate-checks-links-missing": "{{PLURAL:$2||الوصلة التالية مفقودة|الوصلتان التاليتان مفقودتان|ال$2 وصلات التالية مفقودة|ال$2 وصلة التالية مفقودة}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-xhtml": "من فضلك استبدل {{PLURAL:$2||الوسم التالي|الوسمين التاليين|الوسوم التالية}} بالوسوم الصحيحة:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-plural": "التعريف يستخدم <nowiki>{{PLURAL:}}</nowiki> لكن الترجمة لا.",
+ "translate-checks-plural-forms": "<nowiki>{{PLURAL:}}</nowiki> تم إعطاؤه {{PLURAL:$1|إستمارة واحدة|$1 إستمارات}} لكن {{PLURAL:$2|فقط إستمارة واحدة|$2 إستمارات}} مدعومة (باستثناء إستمارات 0= و 1=).",
+ "translate-checks-plural-dupe": "<nowiki>{{PLURAL:}}</nowiki> لديها إستمارات مزدوجة في النهاية. <nowiki>{{PLURAL:$1|sheep|sheep}}</nowiki> ينبغي أن تتم كتابتها ك <nowiki>{{PLURAL:$1|sheep}}</nowiki>.",
"translate-checks-pagename": "النطاق تغير من التعريف",
- "translate-checks-format": "هذه الترجمة لا تتبع التعريف أو لديها صياغة خاطئة: $1",
+ "translate-checks-format": "هذه الترجمة لا تتبع التعريف أو تحتوي على صياغة خاطئة: $1",
"translate-checks-escape": "عمليات الهروب التالية ربما تكون حدثت بالصدفة: <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "عدد المتغيرات هو {{PLURAL:$1|$1}}؛ ينبغي أن يكون {{PLURAL:$2|$2}}.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> صيغته غير صحيحة.",
"translate-checks-fudforum-syntax": "استخدم <nowiki>$1</nowiki> بدلًا من <nowiki>$2</nowiki> في هذا المشروع.",
- "translate-pref-nonewsletter": "لا ترسل إليّ إخطارات بريدية بالبريد الإلكتروني",
+ "translate-pref-nonewsletter": "لا ترسل إليّ نشرات إخبارية عن طريق البريد الإلكتروني",
"translate-pref-editassistlang": "لغات المساعد:",
"prefs-translate": "خيارات الترجمة",
"translate-pref-editassistlang-help": "قائمة برموز اللغات مفصولة بفواصل.\nتُعرض ترجمة الرسالة بهذه اللغات عندما تترجم.\nقائمة اللغات المبدئية تعتمد على لغتك.",
"translate-pref-editassistlang-bad": "رمز لغة غير صالح في القائمة:\n<nowiki>$1</nowiki>.",
"right-translate": "التعديل باستخدام واجهة الترجمة",
- "right-translate-manage": "إدارة مجموعات الترجمة",
+ "right-translate-manage": "إدارة مجموعات الرسائل",
+ "action-translate-manage": "إدارة مجموعات الرسائل",
"right-translate-import": "استيراد الترجمات من الخارج",
+ "action-translate-import": "استيراد الترجمات من الخارج",
"right-translate-messagereview": "مراجعة الترجمات",
+ "action-translate-messagereview": "مراجعة الترجمات",
+ "right-translate-groupreview": "غير حالة العمل لمجموعات الرسائل",
+ "action-translate-groupreview": "غير حالة العمل لمجموعات الرسائل",
+ "translate-rcfilters-translations": "ترجمات",
+ "translate-rcfilters-translations-only-label": "ترجمات",
+ "translate-rcfilters-translations-only-desc": "غيره إلى الصفحات المترجمة.",
+ "translate-rcfilters-translations-filter-label": "لا ترجمات",
+ "translate-rcfilters-translations-filter-desc": "كافة التغييرات التي ليست ترجمات.",
+ "translate-rcfilters-translations-site-label": "رسائل الموقع",
+ "translate-rcfilters-translations-site-desc": "تخصيص رسائل الموقع داخل اسم نطاق ميدياويكي.",
"translate-rc-translation-filter": "رشّح الترجمات:",
"translate-rc-translation-filter-no": "لا تفعل شيئا",
"translate-rc-translation-filter-only": "اعرض الترجمات فقط",
@@ -110,8 +136,10 @@
"translate-stats-edits": "التعديلات",
"translate-stats-users": "المترجمون",
"translate-stats-registrations": "التسجيلات",
- "translate-statsf-intro": "يمكنك توليد إحصاءات بسيطة بهذه الاستمارة. كل القيم لها حدود عليا وسفلى.",
- "translate-statsf-options": "خيارات الرسم",
+ "translate-stats-reviews": "المراجعات",
+ "translate-stats-reviewers": "المراجعون",
+ "translate-statsf-intro": "يمكنك توليد إحصاءات بسيطة مستخدما هذا النموذج.\nكل القيم لها حدود قصوى ودنيا.",
+ "translate-statsf-options": "خيارات الرسم البياني",
"translate-statsf-width": "العرض بالبكسل:",
"translate-statsf-height": "الارتفاع بالبكسل:",
"translate-statsf-days": "فترة زمنية باليوم:",
@@ -126,24 +154,25 @@
"translate-statsf-count-users": "المترجمون النشطون",
"translate-statsf-count-registrations": "مستخدمون جدد",
"translate-statsf-count-reviews": "مراجعات الترجمة",
+ "translate-statsf-count-reviewers": "المراجعون",
"translate-statsf-language": "قائمة بأكواد اللغات مفصولة بفاصلة:",
"translate-statsf-group": "قائمة بأكواد المجموعات مفصولة بفاصلة:",
"translate-statsf-submit": "عرض مسبق",
- "translate-tag-category": "صفحات قابلة للترجمة",
- "translate-tag-page-desc": "ترجمة صفحة الويكي [[$2|$1]].",
+ "translate-tag-page-desc": "ترجمة صفحة الويكي [[$2|$1]] من $3 ($4).",
"translate-sidebar-alltrans": "بلغات أخرى",
"translations": "كل الترجمات",
"translations-summary": "أدخل اسم رسالة أسفله لعرض كل الترجمات المتوفرة.",
"translate-translations-no-message": "\"$1\" ليست رسالة قابلة للترجمة",
"translate-translations-none": "لا يوجد ترجمات ل\"$1\"",
- "translate-translations-count": "عثر {{PLURAL:$1|one translation|$1 translations}}.",
+ "translate-translations-count": "عثر على {{PLURAL:$1|ترجمة واحدة|$1 ترجمة}}.",
"translate-translations-fieldset-title": "الرسالة",
"translate-translations-messagename": "الاسم:",
"translate-translations-project": "المشروع:",
- "translate-translations-including-no-param": "من فضلك حدد مفتاح رسالة صحيح في معامل الصفحة الفرعية",
+ "translate-translations-including-no-param": "من فضلك حدد مفتاح رسالة صحيح في متغير الصفحة الفرعية",
"translate-translations-history-short": "ت",
"languagestats": "إحصاءات اللغة",
"languagestats-summary": "هذه الصفحة تعرض إحصاءات الترجمة لكل مجموعات الرسائل للغة.",
+ "messagegroupstats-summary": "تظهر هذه الصفحة إحصاءات مجموعة الرسائل.",
"languagestats-stats-for": "إحصاءات الترجمة للغة $1 ($2).",
"languagestats-recenttranslations": "ترجمات حديثة",
"translate-langstats-incomplete": "بعض الإحصاءات الموجودة على هذه الصفحة غير مكتملة. يرجى إعادة تحميل الصفحة للحصول على مزيد من الإحصاءات.",
@@ -154,31 +183,44 @@
"translate-language-code": "رمز اللغة",
"translate-language-code-field-name": "رمز اللغة:",
"translate-suppress-complete": "تخطَ مجموعات الرسائل المترجمة كليا",
- "translate-ls-noempty": "تخطَ مجموعات الرسائل الغير مترجمة كليا",
+ "translate-ls-noempty": "تخطَ مجموعات الرسائل غير المترجمة كليا",
"translate-language": "اللغة",
"translate-total": "الرسائل",
- "translate-untranslated": "غير المترجمة",
- "translate-percentage-complete": "المكتمل",
- "translate-percentage-fuzzy": "غير المحدث",
- "translate-languagestats-overall": "جميع مجموعات الرسالة معا",
+ "translate-untranslated": "غير مترجمة",
+ "translate-percentage-complete": "مكتملة",
+ "translate-percentage-fuzzy": "غير محدثة",
+ "translate-languagestats-overall": "جميع مجموعات الرسائل معا",
"translate-ls-submit": "أظهر الإحصاءات",
- "translate-ls-column-group": "رسالة المجموعة",
+ "translate-ls-column-group": "مجموعة الرسائل",
"translate-mgs-pagename": "إحصاءات مجموعة الرسائل",
"translate-mgs-fieldset": "عرض التفضيلات",
- "translate-mgs-group": "رسالة المجموعة:",
- "translate-mgs-nocomplete": "لا تعرض اللغات التي أنجزت ترجمتها",
- "translate-mgs-noempty": "لا تعرض اللغات التي لم تنجز ترجمتها",
+ "translate-mgs-group": "مجموعة الرسائل:",
+ "translate-mgs-nocomplete": "لا تعرض اللغات التي تحتوي على ترجمات مكتملة",
+ "translate-mgs-noempty": "لا تعرض اللغات التي لا تحتوي على أية ترجمة",
"translate-mgs-submit": "أظهر الإحصاءات",
"translate-mgs-column-language": "اللغة",
- "translate-mgs-totals": "كل اللغات معا",
- "translate-mgs-invalid-group": "المجموعة المحددة $1 موجود على.",
- "translate-mgs-nothing": "لا شيء لاظهار الاحصاءات المطلوبة.",
+ "translate-mgs-totals": "كل $1 {{PLURAL:$1|لغة|لغات}} سويا",
+ "translate-mgs-invalid-group": "المجموعة المحددة $1 ليست موجودة.",
+ "translate-mgs-nothing": "لا يوجد شيء يعرض للإحصاءات المطلوبة.",
"supportedlanguages": "اللغات المدعومة",
+ "supportedlanguages-summary": "تظهر هذه الصفحة قائمة بكل اللغات التي يدعمها {{SITENAME}}،\nمع أسماء المترجمين الذين يعملون على هذه اللغة.\nكلما ظهر اسم المترجم بخط أكبر، كان عدد تعديلاته أكثر.\nويشير لون الخط السفلي إلى حداثة نشاط المترجم هنا.",
+ "supportedlanguages-colorlegend": "مفتاح الألوان: آخر ترجمة منذ $1 يوم.",
+ "supportedlanguages-sqlite-error": "SQLite غير مدعوم",
+ "supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|مترجم|مترجمة}}|مترجمون}}: $1",
"supportedlanguages-recenttranslations": "الترجمات الأخيرة",
+ "supportedlanguages-count": "$1 {{PLURAL:$1|لغة|لغات}} إجمالا.",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|تعديل|تعديلات}} - آخر تعديل منذ $3 {{PLURAL:$3|يوم|أيام}}",
+ "abusefilter-edit-builder-vars-translate-source-text": "النص المصدر لوحدة الترجمة",
"translate-save": "احفظ ($1)",
"translate-jssti-add": "أضف إلى القائمة",
"managemessagegroups": "إدارة مجموعة الرسائل",
- "translate-smg-notallowed": "غير مسموح لك بتنفيذ هذا الفعل.",
+ "translate-smg-notallowed": "غير مسموح لك بتنفيذ هذا التصرف.",
+ "translate-smg-nochanges": "لا توجد تغييرات لمعالجتها.",
+ "translate-smg-submit": "إرسال التغييرات للمعالجة",
+ "translate-smg-submitted": "تعريفات الرسائل تم تحديثها. التغييرات تتم معالجتها في الخلفية.",
+ "translate-smg-more": "ستكون هناك المزيد من التغييرات للعملية بعد إرسال هذه التغييرات.",
+ "translate-smg-left": "محتوى الرسائل في الويكي",
+ "translate-smg-right": "التغييرات القادمة",
"translate-manage-import-diff": "الرسالة $1 | الإجراءات: $2",
"translate-manage-import-new": "رسالة جديدة $1",
"translate-manage-import-deleted": "رسالة محذوفة $1",
@@ -192,16 +234,15 @@
"translate-manage-toolong": "زمن المعالجة الأقصى ل$1 {{PLURAL:$1|second|seconds}} تم تجاوزه.\nمن فضلك أعد تنفيذ التموذج لإكمال المعالجة.",
"translate-manage-import-summary": "استيراد نسخة جديدة من مصدر خارجي",
"translate-manage-conflict-summary": "استيراد نسخة جديدة من مصدر خارجي.\nمن فضلك تحقق.",
- "translate-manage-fuzzy-summary": "التعريف تغير",
"translate-manage-submit": "نفّذ",
- "translate-manage-intro-other": "بالأسفل قائمة بتغييرات الترجمة في لغة $1.\nمن فضلك راجع التغييرات واختر فعلا تريد فعله لكل ترجمة.\nلو اخترت تجاهل التغييرات، ستتم الكتابة عليها عند التصدير التالي.",
- "translate-manage-import-ok": "استوردت نسخة جديدة من الصفحة $1.",
+ "translate-manage-intro-other": "بالأسفل قائمة بتغييرات الترجمة في لغة $1.\nمن فضلك راجع التغييرات واختر فعلا تريد فعله لكل ترجمة.\nلو اخترت تجاهل التغييرات، فهذا الفعل مؤقت فقط.",
+ "translate-manage-import-ok": "استوردت: $1",
"translate-manage-import-done": "استيراد كامل!",
"importtranslations": "استورد ترجمات",
"translate-import-from-local": "رفع ملف محلي:",
"translate-import-load": "حمّل الملف",
"translate-import-err-dl-failed": "تعذّر جلب الملف:\n$1",
- "translate-import-err-ul-failed": "لم ينجح رفع الملف",
+ "translate-import-err-ul-failed": "فشل رفع الملف",
"translate-import-err-invalid-title": "اسم الملف المعطى <nowiki>$1</nowiki> غير صالح.",
"translate-import-err-no-such-file": "الملف <nowiki>$1</nowiki> غير موجود أو لم يرفع محليًا.",
"translate-import-err-stale-group": "مجموعة الرسائل المنتمية إلى هذا الملف غير موجود.",
@@ -210,12 +251,11 @@
"translate-js-summary": "ملخص:",
"translate-js-save": "احفظ",
"translate-js-next": "احفظ وافتح التالية",
- "translate-js-nonext": "كانت هذه آخر رسالة على هذه الصفحة.",
"translate-js-skip": "تخطَ إلى التالية",
- "translate-js-save-failed": "فشل الحفظ. من فضلك بلّغ عن هذا الخطأ.",
"translate-js-history": "تاريخ الترجمة",
"translate-js-support": "اطرح سؤالا",
"translate-js-support-title": "اطلب المساعدة إذا لم تكن لديك معلومات كافية لترجمة هذه الرسالة بشكل صحيح.",
+ "translate-js-support-unsaved-warning": "لديك ترجمات غير محفوظة.",
"translate-gs-pos": "الترتيب",
"translate-gs-code": "الرمز",
"translate-gs-continent": "القارة",
@@ -225,38 +265,38 @@
"translate-gs-count": "العدد",
"translate-gs-total": "المجموع",
"translate-gs-avgscore": "معدل الدرجات",
- "translate-documentation-language": "رسالة التوثيق",
+ "translate-documentation-language": "توثيق الرسالة",
"translate-searchprofile": "ترجمات",
"translate-searchprofile-tooltip": "البحث عن كل الترجمات",
+ "translate-searchprofile-note": "المزيد من خيارات البحث متوفرة مع [$1 بحث الترجمة].",
"translate-search-languagefilter": "فلترة حسب اللغة",
"translate-search-nofilter": "لا فلترة",
- "translate-messagereview-submit": "قبول",
- "translate-messagereview-progress": "الموافقة...",
- "translate-messagereview-failure": "جاري الموافقة... فشل: $1",
- "translate-messagereview-done": "مقبول",
- "translate-messagereview-reviews": "قبلها {{PLURAL:$1|مستخدم واحد|$1 مستخدمين}}",
- "translate-messagereview-reviewswithyou": "قبلها {{PLURAL:$1|مستخدم واحد|$1 مستخدمين}} بمن فيهم أنت",
- "api-error-invalidrevision": "لم يتم العثور على الترجمة",
- "api-error-unknownmessage": "لم يتم العثور على الرسالة",
- "api-error-fuzzymessage": "علمت الترجمة كغامضة",
- "api-error-owntranslation": "لا يمكنك قبول الترجمات الخاصة بك",
- "translate-messagereview-no-fuzzy": "الترجمات الغامضة لا يمكن قبولها.",
- "translate-messagereview-no-own": "لا يجوز لك قبول ترجماتك الشخصية.",
- "translate-messagereview-doit": "قبول هذه الترجمة بوصفها ترجمة صحيحة.",
"log-name-translationreview": "سجل مراجعة الترجمة",
"log-description-translationreview": "سجل كل مراجعات الترجمة ورسائل المجموعات.",
- "logentry-translationreview-message": "$1 {{GENDER:$2|قبلت}} الترجمة $3",
+ "logentry-translationreview-message": "$1 {{GENDER:$2|راجع|راجعت}} الترجمة $3",
+ "logentry-translationreview-group": "$1 {{GENDER:$2|غير|غيرت}} حالة ترجمات $4 ل$3 من $6 إلى $7",
+ "group-translate-sandboxed": "مترجمون غير موافق عليهم",
+ "group-translate-sandboxed-member": "{{GENDER:$1|مترجم غير موافق عليه|مترجمة غير موافق عليها}}",
+ "right-translate-sandboxmanage": "إدارة المستخدمين في الملعب",
+ "action-translate-sandboxmanage": "إدارة المستخدمين في الملعب",
+ "right-translate-sandboxaction": "نفذ الأفعال في القائمة البيضاء للمستخدمين في الملعب",
+ "action-translate-sandboxaction": "نفذ الأفعال في القائمة البيضاء للمستخدمين في الملعب",
"translate-workflow-state-": "(إلغاء المحدد)",
"translate-workflowstatus": "الحالة: $1",
- "translate-workflow-set-do": "وضع",
"translate-workflow-set-doing": "إعداد...",
- "translate-workflow-set-done": "وضع!",
+ "translate-workflow-autocreated-summary": "إنشاء تلقائي للصفحة لحالة العمل $1",
"translate-stats-workflow": "الحالة",
- "translate-gethelp": "مساعدة",
+ "translate-workflowgroup-label": "حالات العمل",
+ "translate-workflowgroup-desc": "مجموعة الرسائل هذه تعرض حالات عمل الترجمة.\nالحالات معرفة في متغير الضبط $wgTranslateWorkflowStates.",
+ "translate-dynagroup-recent-label": "أحدث الترجمات",
+ "translate-dynagroup-recent-desc": "تظهر مجموعة الرسائل هذه كل الترجمات الحديثة لهذه اللغة. مفيدة لمهام المراجعة.",
+ "translate-dynagroup-additions-label": "الإضافات الأخيرة",
+ "translate-dynagroup-additions-desc": "تعرض مجموعة الرسائل هذه الرسائل الجديدة والمغيرة.",
"translate-msggroupselector-projects": "مجموعة الرسائل",
"translate-msggroupselector-search-placeholder": "ابحث عن المجموعات",
"translate-msggroupselector-search-all": "الكل",
"translate-msggroupselector-search-recent": "الأخيرة",
+ "translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|مجموعة فرعية|مجموعات فرعية}}",
"tux-languageselector": "ترجم إلى",
"tux-tab-all": "الكل",
"tux-tab-untranslated": "غير المترجمة",
@@ -267,53 +307,86 @@
"tux-status-optional": "اختيارية",
"tux-status-fuzzy": "غير محدثة",
"tux-status-proofread": "جرى مراجعتها",
- "tux-status-translated": "ترجمت",
+ "tux-status-translated": "تُرجمت",
"tux-status-saving": "يحفظ...",
"tux-status-unsaved": "غير محفوظة",
+ "tux-save-unknown-error": "خطأ غير معروف حدث.",
"tux-editor-placeholder": "ترجمتك",
+ "tux-editor-editsummary-placeholder": "ملخص اختياري",
"tux-editor-paste-original-button-label": "الصق النص المصدر",
"tux-editor-discard-changes-button-label": "تجاهل التغييرات",
"tux-editor-save-button-label": "احفظ الترجمة",
"tux-editor-skip-button-label": "تخط إلى التالية",
"tux-editor-cancel-button-label": "ألغ",
"tux-editor-confirm-button-label": "أكد الترجمة",
+ "tux-editor-proofread-button-label": "قبول الترجمة",
+ "tux-editor-shortcut-info": "اضغط \"$1\" للحفظ أو \"$2\" للمتابعة للرسالة القادمة أو \"$4\" لتوفير ملخص أو \"$3\" للاختصارات الأخرى.",
"tux-editor-edit-desc": "عدل التوثيق",
+ "tux-editor-add-desc": "إضافة توثيق",
"tux-editor-suggestions-title": "اقتراحات",
"tux-editor-in-other-languages": "بلغات أخرى",
"tux-editor-need-more-help": "تحتاج إلى مزيد من المساعدة؟",
"tux-editor-ask-help": "اطلب المزيد من المعلومات",
"tux-editor-tm-match": "مطابقة بنسبة %$1",
+ "tux-warnings-more": "{{PLURAL:$1|لا تنبيه|تنبيه واحد|تنبيهان|$1 تنبيهات|$1 تنبيه}}",
"tux-warnings-hide": "أخف",
+ "tux-editor-save-failed": "تعذر حفظ الترجمة: $1",
+ "tux-editor-n-uses": "مستخدمة {{PLURAL:$1|ولا مرة|مرة واحدة|مرتين|$1 مرات|$1 مرة}}",
"tux-editor-message-desc-more": "أظهر المزيد",
+ "tux-editor-message-desc-less": "أظهر أقل",
"tux-editor-clear-translated": "أخف المترجمة",
"tux-editor-proofreading-mode": "مراجعة",
"tux-editor-translate-mode": "قائمة",
"tux-editor-proofreading-hide-own-translations": "أخف ترجماتك",
"tux-editor-proofreading-show-own-translations": "أظهر ترجماتك",
+ "tux-proofread-action-tooltip": "قبول الترجمة",
"tux-proofread-edit-label": "عدل",
"tux-editor-page-mode": "صفحة",
+ "tux-editor-outdated-warning": "قد تحتاج هذه الترجمة إلى تحديث.",
"tux-editor-outdated-warning-diff-link": "أظهر الفروق",
"tux-editor-doc-editor-placeholder": "توثيق الرسالة",
"tux-editor-doc-editor-save": "احفظ التوثيق",
"tux-editor-doc-editor-cancel": "ألغ",
- "tux-message-filter-placeholder": "صف القائمة",
+ "tux-messagetable-more-messages": "{{PLURAL:$1|رسالة أخرى|رسالتان أخرتان|$1 رسائل أخرى|$1 رسالة أخرى}}",
+ "tux-messagetable-loading-messages": "جار تحميل {{PLURAL:$1|الرسالة|الرسائل}}...",
+ "tux-message-filter-placeholder": "صفِّ القائمة",
+ "tux-message-filter-result": "وجد {{PLURAL:$1|لا نتائج|نتيجة واحدة|نتيجتين اثنين|$1 نتائج|$1 نتيجة}} في البحث عن \"$2\"",
"tux-message-filter-advanced-button": "بحث متقدم",
"tux-message-filter-optional-messages-label": "الرسائل الاختيارية",
"tux-proofread-translated-by-self": "ترجمتها أنت",
+ "tux-empty-list-all": "مجموعة الرسائل هذه فارغة",
"tux-empty-list-all-guide": "اختر مجموعة رسائل أخرى للترجمة",
+ "tux-translate-page-no-such-group": "<strong>المجموعة المختارة غير موجودة.</strong> اختر مجموعة رسائل أخرى.",
"tux-empty-list-translated": "لا رسائل مترجمة",
+ "tux-empty-list-translated-guide": "يمكنك المساعدة في الترجمة",
"tux-empty-list-translated-action": "ترجم",
+ "tux-empty-no-messages-to-display": "لا رسائل للعرض.",
+ "tux-empty-there-are-optional": "توجد رسائل اختيارية لا تظهر في القائمة",
"tux-empty-show-optional-messages": "أظهر الرسائل الاختيارية",
"tux-empty-no-outdated-messages": "لا توجد رسائل غير محدثة",
"tux-empty-nothing-to-proofread": "لا شيء لمراجعته",
+ "tux-empty-you-can-help-providing": "يمكنك المساعدة بإضافة ترجمات جديدة",
"tux-empty-nothing-new-to-proofread": "لا شيء جديد لمراجعته",
+ "tux-empty-you-can-review-already-proofread": "يمكنك مراجعة الترجمات التي راجعها آخرون بالفعل.",
+ "tux-empty-list-other": "لا شيء لترجمته",
+ "tux-empty-list-other-guide": "يمكنك المساعدة بمراجعة الترجمات الموجودة.",
+ "tux-empty-list-other-action": "راجع الترجمات",
"tux-empty-list-other-link": "أظهر كل الرسائل",
"tux-editor-close-tooltip": "أغلق",
"tux-editor-expand-tooltip": "وسع",
"tux-editor-collapse-tooltip": "اطو",
+ "tux-editor-message-tools-show-editor": "عرض في محرر الويكي",
"tux-editor-message-tools-history": "تاريخ",
"tux-editor-message-tools-delete": "احذف",
"tux-editor-message-tools-translations": "كل الترجمات",
+ "tux-editor-message-tools-linktothis": "وصلة لهذه الرسالة",
"tux-editor-loading": "تحميل...",
- "translate-ulsdep-title": "خطأ في الضبط"
+ "translate-search-more-languages-info": "{{PLURAL:$1|لغة واحدة أخرى|لغتان أخريان|$1 لغات أخرى|$1 لغة أخرى}}",
+ "translate-statsbar-tooltip": "$1% مترجمة، $2% مراجعة",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% مترجمة، $2% مراجعة، $3% غير محدثة",
+ "translate-search-more-groups-info": "$1 {{PLURAL:$1|مجموعة|مجموعات}} أخرى",
+ "translate-ulsdep-title": "خطأ في الضبط",
+ "translate-ulsdep-body": "امتداد Translate يعتمد على [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector امتداد Universal Language Selector].",
+ "tux-session-expired": "أنت لم تعد مسجل الدخول. من فضلك سجل الدخول في لسان منفصل. أو يمكنك عمل نسخة من الترجمات غير المحفوظة، تسجيل الدخول، العودة لهذه الصفحة وإدخال ترجماتك مجددا.",
+ "tux-nojs": "هذه الأداة لا تعمل بدون جافا سكريبت. الجافا سكريبت معطلة، فشلت في العمل، أو هذا المتصفح غير مدعوم."
}
diff --git a/MLEB/Translate/i18n/core/arc.json b/MLEB/Translate/i18n/core/arc.json
index 7ad7e646..4fe4fcaf 100644
--- a/MLEB/Translate/i18n/core/arc.json
+++ b/MLEB/Translate/i18n/core/arc.json
@@ -6,9 +6,6 @@
},
"translate": "ܬܪܓܡ",
"translate-desc": "[[Special:Translate|ܦܐܬܐ ܕܝܠܢܝܬܐ]] ܠܬܘܪܓܡܐ ܕܡܝܕܝܐܘܝܩܝ ܘܒܬܪ ܗܟܢ",
- "translate-taskui-view": "ܚܘܝ ܟܠ ܐܓܪ̈ܬܐ",
- "translate-taskui-untranslated": "ܚܘܝ ܐܓܪ̈ܬܐ ܠܐ ܬܘܪ̈ܓܡܐ",
- "translate-taskui-optional": "ܚܘܝ ܐܓܪ̈ܬܐ ܓܒܝܬ̈ܐ",
"translate-taction-translate": "ܬܪܓܡ",
"translate-taction-proofread": "ܬܢܝ",
"translate-taction-lstats": "ܚܒܝܫܘܬ ܡܢܝܢܐ ܕܠܫܢܐ",
@@ -36,7 +33,6 @@
"translate-edit-information": "ܝܕ̈ܥܬܐ ܥܠ ܦܐܬܐ ($1)",
"translate-edit-in-other-languages": "ܐܓܪܬܐ ܒܠܫܢ̈ܐ ܐܚܪ̈ܢܐ",
"translate-edit-warnings": "ܙܘܗܪ̈ܐ ܥܠ ܬܘܪ̈ܓܡܐ ܠܐ ܓܡܝܪ̈ܐ",
- "translate-edit-tmsugs": "ܡܚܫܚܬ̈ܐ ܡܢ ܥܘܗܕܢܐ ܕܬܘܪܓܡܐ",
"translate-edit-tmmatch": "$1% ܠܚܡܐ",
"translate-edit-askpermission": "ܫܩܘܠ ܦܣܣܐ",
"translate-magic-pagename": "ܬܘܪܓܡܐ ܕܡܝܕܝܐܘܝܩܝ ܡܬܝܚܬܐ",
@@ -93,7 +89,6 @@
"translate-js-summary": "ܦܣܝܩܬ̈ܐ:",
"translate-js-save": "ܠܒܘܟ",
"translate-js-next": "ܠܒܘܟ ܘܦܬܘܚ ܕܒܬܪܗ",
- "translate-js-nonext": "ܗܕܐ ܐܝܬܝܗܝ ܗܘܐ ܐܓܪܬܐ ܐܚܪܝܬܐ ܒܦܐܬܐ ܗܕܐ.",
"translate-js-skip": "ܫܘܪ ܠܒܬܪܗ",
"translate-js-history": "ܬܫܥܝܬܐ ܕܬܘܪܓܡܐ",
"translate-js-support": "ܫܐܠ ܫܘܐܠܐ",
diff --git a/MLEB/Translate/i18n/core/arq.json b/MLEB/Translate/i18n/core/arq.json
index f0c97e2f..7c5566cc 100644
--- a/MLEB/Translate/i18n/core/arq.json
+++ b/MLEB/Translate/i18n/core/arq.json
@@ -4,5 +4,8 @@
"Oldstoneage"
]
},
- "translate-documentation-language": "التوتاق تاع الميساج"
+ "translate-documentation-language": "التوتاق تاع الميساج",
+ "translate-dynagroup-recent-desc": "هاد الباكيّة تاع الميساجات تورّي كامل الطرجمات الجديدة ف هاد اللوغة. واش راه الموهم كامل فل خديمات تاع المراجعة.",
+ "tux-empty-you-can-help-providing": "تنجم تعاون و تزيد شي طرجمات جديدة",
+ "tux-empty-nothing-new-to-proofread": "ما كاين حتا حاجة جديدة باش تراجعها"
}
diff --git a/MLEB/Translate/i18n/core/ary.json b/MLEB/Translate/i18n/core/ary.json
index 94b1f0c3..af782d3c 100644
--- a/MLEB/Translate/i18n/core/ary.json
+++ b/MLEB/Translate/i18n/core/ary.json
@@ -1,9 +1,12 @@
{
"@metadata": {
"authors": [
- "Enzoreg"
+ "Enzoreg",
+ "Reda Benkhadra"
]
},
"translate-manage-import-new": "Méṣaj jdid $1",
- "translate-manage-import-deleted": "Méṣaj memḫi $1"
+ "translate-manage-import-deleted": "Méṣaj memḫi $1",
+ "translate-msggroupselector-search-all": "كلشي",
+ "tux-tab-all": "كلشي"
}
diff --git a/MLEB/Translate/i18n/core/arz.json b/MLEB/Translate/i18n/core/arz.json
index 4cc84a5e..6950ebe5 100644
--- a/MLEB/Translate/i18n/core/arz.json
+++ b/MLEB/Translate/i18n/core/arz.json
@@ -9,6 +9,7 @@
},
"translate": "ترجمة",
"translate-desc": "[[Special:Translate|صفحه خاصة]] لترجمه الميدياويكى وما بعده",
+ "translate-taction-lstats": "إحصاءات اللغه",
"translate-page-no-such-language": "لم تكن اللغه المحدده صحيحه.",
"translate-page-no-such-group": "المجموعه المحدده غير صحيحه.",
"translate-page-disabled": "الترجمات إلى هذه اللغه فى هذه المجموعه تم تعطيلها. السبب:\n\n<em>$1</em>",
@@ -22,21 +23,20 @@
"translate-page-showing": "عرض الرسائل من $1 إلى $2 ل $3.",
"translate-page-showing-all": "عرض {{PLURAL:$1||رساله واحدة|رسالتين|$1 رسائل|$1 رسالة}}.",
"translate-page-showing-none": "لا رسائل للعرض.",
+ "translate-page-paging-links": "[ $1 ] [ $2 ]",
"translate-next": "الصفحه التالية",
"translate-prev": "الصفحه السابقة",
"translate-page-description-legend": "معلومات حول المجموعة",
"translate-page-edit": "عدل",
- "translate-ext-url": "<hr />موقع الوب: $1",
"translate-optional": "(اختياري)",
"translate-ignored": "(متجاهل)",
"translate-edit-definition": "تعريف الرسالة",
"translate-edit-contribute": "ساهم",
"translate-edit-no-information": "''ليس لهذه الرساله توثيق.\nإذا كنت تعرف أين أو كيف يتم استخدام هذه الرساله، فيمكنك مساعده المترجمين الآخرين بإضافه توثيق إلى هذه الرساله.''",
- "translate-edit-information": "معلومات حول الرساله \"$2\" ($1)",
- "translate-edit-in-other-languages": "الرساله \"$1\" بلغات أخرى",
- "translate-edit-committed": "الترجمه الحاليه فى البرنامج",
+ "translate-edit-information": "معلومات عن الرساله ($1)",
+ "translate-edit-in-other-languages": "الرساله \"$1\" بلغات تانيه",
"translate-edit-warnings": "التحذيرات حول الترجمات غير المكتملة",
- "translate-edit-tmsugs": "مقترحات من ذاكره الترجمة",
+ "translate-edit-tmmatch-source": "نص المصدر للترجمه: $1",
"translate-edit-tmmatch": "$1% مطابقة",
"translate-magic-pagename": "ترجمه ميدياويكى الممتدة",
"translate-magic-help": "يمكنك ترجمه أسماء الصفحات الخاصه، والكلمات السحريه، وأسماء النطاقات.\n\nأسماء الصفحات الخاصه والكلمات السحريه يمكن أن يكون لها ترجمات متعدده.\nالترجمات تفصل بواسطه فاصله (,).\nأسماء النطاقات يمكن أن يكون لها ترجمه واحده فقط.\n\nفى ترجمات النطاقات <code>$1 talk</code> خاص. <code>$1</code> يتم استبدالها باسم الموقع (على سبيل المثال <code>{{ns:project_talk}}</code>).\nلو أنه من غير الممكن فى لغتك صياغه تعبير صحيح بدون تغيير اسم الموقع، من فضلك اتصل بمطور.\n\nتحتاج إلى أن تكون فى مجموعه المترجمين لحفظ التغييرات.\nالتغييرات لن يتم حفظها حتى تضغط زر الحفظ بالأسفل.",
@@ -56,7 +56,7 @@
"translate-magic-namespace": "أسماء النطاقات",
"translate-magic-notsaved": "تعديلك لم يُحفظ!",
"translate-magic-errors": "من فضلك أصلح {{PLURAL:$1||الخطأ|الخطأين|الأخطاء}} التاليه فى الترجمات:",
- "translate-magic-saved": "حُفظت تعديلاتك بنجاح.",
+ "translate-magic-saved": "تعديلاتك اتحفظت .",
"translate-checks-parameters": "{{PLURAL:$2||المحدد التالى غير مستخدم|المحددان التاليان غير مستخدمان|المحددات التاليه غير مستخدمة}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-parameters-unknown": "{{PLURAL:$2||المحدد التالى غير معروف|المحددان التاليان غير معروفان|المحددات التاليه غير معروفة}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-balance": "يوجد عدد غير زوجى من {{PLURAL:$2|الأقواس}}:\n<strong><nowiki>$1</nowiki></strong>",
@@ -74,8 +74,11 @@
"translate-pref-editassistlang-help": "قائمه برموز اللغات مفصوله بفواصل.\nتُعرض ترجمه الرساله بهذه اللغات عندما تترجم.\nقائمه اللغات المبدئيه تعتمد على لغتك.",
"translate-pref-editassistlang-bad": "رمز لغه غير صالح فى القائمة:\n<nowiki>$1</nowiki>.",
"right-translate": "التعديل باستخدام واجهه الترجمة",
- "right-translate-manage": "إداره مجموعات الترجمة",
+ "right-translate-manage": "إدارة مجموعات الرسايل",
+ "action-translate-manage": "إدارة مجموعات الرسايل",
"right-translate-import": "استيراد الترجمات من الخارج",
+ "action-translate-import": "استيراد الترجمات من بره",
+ "right-translate-messagereview": "مراجعة الترجمات",
"translate-rc-translation-filter": "رشّح الترجمات:",
"translate-rc-translation-filter-no": "لا تفعل شيئا",
"translate-rc-translation-filter-only": "اعرض الترجمات فقط",
@@ -89,18 +92,20 @@
"translate-statsf-width": "العرض بالبكسل:",
"translate-statsf-height": "الارتفاع بالبكسل:",
"translate-statsf-days": "فتره زمنيه باليوم:",
- "translate-statsf-start": "فتره زمنيه باليوم:",
+ "translate-statsf-start": "تاريخ البدايه:",
"translate-statsf-scale": "التدريج:",
+ "translate-statsf-scale-months": "شهور",
+ "translate-statsf-scale-weeks": "اسابيع",
"translate-statsf-scale-days": "أيام",
"translate-statsf-scale-hours": "ساعات",
"translate-statsf-count": "قياس:",
"translate-statsf-count-edits": "عدد التعديلات",
"translate-statsf-count-users": "المترجمون النشطون",
+ "translate-statsf-count-registrations": "يوزرز جداد",
"translate-statsf-language": "قائمه بأكواد اللغات مفصوله بفاصلة:",
"translate-statsf-group": "قائمه بأكواد المجموعات مفصوله بفاصلة:",
"translate-statsf-submit": "عاين",
- "translate-tag-category": "صفحات قابله للترجمة",
- "translate-tag-page-desc": "ترجمه صفحه الويكى [[$2|$1]].",
+ "translate-tag-page-desc": "ترجمة صفحة الويكى [[$2|$1]] من $3 ($4).",
"translate-sidebar-alltrans": "بلغات أخرى",
"translations": "كل الترجمات",
"translations-summary": "أدخل اسم رساله أسفله لعرض كل الترجمات المتوفره.",
@@ -110,6 +115,7 @@
"translate-translations-messagename": "الاسم:",
"translate-translations-project": "المشروع:",
"translate-translations-including-no-param": "من فضلك حدد مفتاح رساله صحيح فى معامل الصفحه الفرعية",
+ "translate-translations-history-short": "ت",
"languagestats": "إحصاءات اللغة",
"languagestats-summary": "هذه الصفحه تعرض إحصاءات الترجمه لكل مجموعات الرسائل للغه.",
"translate-language-code": "رمز اللغة",
@@ -120,6 +126,9 @@
"translate-untranslated": "غير المترجمة",
"translate-percentage-complete": "المكتمل",
"translate-percentage-fuzzy": "غير المحدث",
+ "supportedlanguages-portallink": "[$1] $2 - $3",
+ "supportedlanguages-portallink-nocldr": "[$1] $2",
+ "supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|مترجم|مترجمه}}|مترجمين}}: $1",
"translate-save": "احفظ ($1)",
"translate-jssti-add": "أضف إلى القائمة",
"translate-manage-import-diff": "الرساله $1 | الإجراءات: $2",
@@ -135,20 +144,20 @@
"translate-manage-toolong": "زمن المعالجه الأقصى ل$1 {{PLURAL:$1|second|seconds}} تم تجاوزه.\nمن فضلك أعد تنفيذ التموذج لإكمال المعالجه.",
"translate-manage-import-summary": "استيراد نسخه جديده من مصدر خارجي",
"translate-manage-conflict-summary": "استيراد نسخه جديده من مصدر خارجى.\nمن فضلك تحقق.",
- "translate-manage-fuzzy-summary": "التعريف تغير",
"translate-manage-submit": "نفّذ",
"translate-manage-intro-other": "بالأسفل قائمه بتغييرات الترجمه فى لغه $1.\nمن فضلك راجع التغييرات واختر فعلا تريد فعله لكل ترجمه.\nلو اخترت تجاهل التغييرات، ستتم الكتابه عليها عند التصدير التالى.",
- "translate-manage-import-ok": "استوردت نسخه جديده من الصفحه $1.",
- "translate-manage-import-done": "انتهى الكل!",
+ "translate-manage-import-ok": "استوردت: $1",
+ "translate-manage-import-done": "استيراد كامل!",
"importtranslations": "استورد ترجمات",
"translate-import-from-local": "رفع ملف محلي:",
"translate-import-load": "حمّل الملف",
"translate-import-err-dl-failed": "تعذّر جلب الملف:\n$1",
- "translate-import-err-ul-failed": "لم ينجح رفع الملف",
+ "translate-import-err-ul-failed": "فشل رفع الملف",
"translate-import-err-invalid-title": "اسم الملف المعطى <nowiki>$1</nowiki> غير صالح.",
"translate-import-err-no-such-file": "الملف <nowiki>$1</nowiki> غير موجود أو لم يرفع محليًا.",
"translate-import-err-no-headers": "الملف ليس ملف Gettext صحيح بصيغه امتداد الترجمة:\nغير قادر على تحديد المجموعه واللغه من مقدمه الملف.",
"translate-import-err-warnings": "الملف ليس مكونا بشكل صحيح.\nتأكد من أن محررك لا يزيل حقول msgctxt .\nالتفاصيل: $1",
+ "translate-js-save": "سييف",
"translate-gs-pos": "الترتيب",
"translate-gs-code": "الرمز",
"translate-gs-continent": "القارة",
@@ -157,5 +166,7 @@
"translate-gs-multiple": "عديدة",
"translate-gs-count": "العدد",
"translate-gs-total": "المجموع",
- "translate-gs-avgscore": "معدل الدرجات"
+ "translate-gs-avgscore": "معدل الدرجات",
+ "translate-documentation-language": "رسالة التوثيق",
+ "translate-searchprofile": "ترجمات"
}
diff --git a/MLEB/Translate/i18n/core/as.json b/MLEB/Translate/i18n/core/as.json
index 5c2bbcfd..0d4cbe98 100644
--- a/MLEB/Translate/i18n/core/as.json
+++ b/MLEB/Translate/i18n/core/as.json
@@ -7,16 +7,12 @@
"Gitartha.bordoloi",
"Jaminianurag",
"Nilamdyuti",
- "Xqt"
+ "Xqt",
+ "Dibya Dutta"
]
},
"translate": "অনুবাদ কৰক",
"translate-desc": "মিডিয়াৱিকি আৰু অন্য ভাঙনিৰ কাৰণে [[Special:Translate|বিশেষ পৃষ্ঠা]]",
- "translate-taskui-view": "সকলো বাৰ্তা দেখুৱাওক",
- "translate-taskui-untranslated": "ভাঙনি নোহোৱা বাৰ্তাসমূহ দেখুৱাওক",
- "translate-taskui-optional": "বৈকল্পিক বাৰ্তাসমূহ দেখুৱাওক",
- "translate-taskui-acceptqueue": "কেৱল ম‍ই পুনৰীক্ষণ হোৱা বুলি চিহ্নিত কৰিব পৰা কৰা বাৰ্তাসমূহ",
- "translate-taskui-reviewall": "ভাঙনিসমূহ পুনৰীক্ষণ কৰক",
"translate-taction-translate": "অনুবাদ কৰক",
"translate-taction-proofread": "পুনৰীক্ষণ",
"translate-taction-lstats": "ভাষাৰ পৰিসংখ্যা",
@@ -41,7 +37,6 @@
"translate-page-description-legend": "এই গোটটোৰ বিষয়ে সবিশেষ",
"translate-page-description-hasoptional-open": "বৈকল্পিক বাৰ্তাসমূহ দেখুৱাওক",
"translate-page-edit": "সম্পাদনা",
- "translate-ext-url": "<hr />ৱেবছাইট: $1",
"translate-optional": "(বিকল্পিত)",
"translate-ignored": "(উপেক্ষিত)",
"translate-edit-title": "\"$1\" সম্পাদন কৰক",
@@ -50,7 +45,6 @@
"translate-edit-contribute": "বৰঙণি",
"translate-edit-information": "বাৰ্তাটোৰৰ বিষয়ে সবিশেষ ($1)",
"translate-edit-in-other-languages": "আন ভাষাত বাৰ্তা",
- "translate-edit-committed": "ছফ্টৱেৰৰ বৰ্তমানৰ ভাঙনি",
"translate-edit-warnings": "অসমাপ্ত ভাঙনিৰ বিষয়ে সতৰ্ক বানী",
"translate-edit-tmmatch-source": "অনুবাদৰ উত্স পাঠ্য: $1",
"translate-edit-tmmatch": "$1% ৰজিতা খাইছে",
@@ -102,7 +96,6 @@
"translate-statsf-count-reviews": "ভাঙনি পুনৰীক্ষণ",
"translate-statsf-count-reviewers": "নিৰীক্ষকসকল",
"translate-statsf-submit": "খচৰা চাওক",
- "translate-tag-category": "ভাঙনি-উপযুক্ত পৃষ্ঠা",
"translate-tag-page-desc": "[[$2|$1]] ৱিকি পৃষ্ঠাৰ ভাঙনি।",
"translate-sidebar-alltrans": "আন ভাষাত",
"translations": "সকলোবোৰ ভাঙনি",
@@ -113,6 +106,7 @@
"translate-translations-project": "প্ৰকল্প:",
"translate-translations-history-short": "ই",
"languagestats": "ভাষাৰ পৰিসংখ্যা",
+ "messagegroupstats-summary": "এই পৃষ্ঠাখনে বাৰ্তা গোটসমুহৰ পৰিসংখ্যা দেখুৱাইছে।",
"languagestats-stats-for": "$1 ($2)’ৰ বাবে ভাঙনি পৰিসংখ্যা",
"languagestats-recenttranslations": "শেহতীয়া ভাঙনিসমূহ",
"translate-langstats-expand": "বহলাওক",
@@ -159,9 +153,7 @@
"translate-js-summary": "সাৰাংশ:",
"translate-js-save": "সাঁচি থওক",
"translate-js-next": "সাঁচক আৰু পৰৱৰ্তী বাৰ্তা খোলক",
- "translate-js-nonext": "এই পৃষ্ঠাটোৰ এইটোৱেই অন্তিম বাৰ্তা ।",
"translate-js-skip": "বাতিল কৰি পৱৱৰ্তী বাৰ্তালৈ যাওক",
- "translate-js-save-failed": "সংৰক্ষণ বিফল হৈছে। অনুগ্ৰহ কৰি এই ত্ৰুটিৰ বিষয়ে জনাওক।",
"translate-js-history": "ভাঙনিৰ খতিয়ান",
"translate-js-support": "প্ৰশ্ন সোধক",
"translate-gs-code": "কোড",
@@ -173,21 +165,11 @@
"translate-gs-avgscore": "গড় নম্বৰ",
"translate-documentation-language": "বাৰ্তা নথিকৰণ",
"translate-searchprofile": "ভাঙনিসমূহ",
- "translate-messagereview-submit": "স্বীকাৰ",
- "translate-messagereview-progress": "গ্ৰহণ কৰি আছে . . .",
- "translate-messagereview-done": "স্বীকাৰ কৰা হ’ল",
- "api-error-invalidrevision": "ভাঙনি পোৱা নগ’ল",
- "api-error-unknownmessage": "বাৰ্তাটো পোৱা নগ’ল",
- "api-error-owntranslation": "আপুনি নিজেই আপোনাৰ অনুবাদসমূহ স্বীকৃতি দিব নোৱাৰে",
- "translate-messagereview-doit": "এই ভাঙনিটো শুদ্ধ ভাঙনিৰূপে স্বীকৃতি দিয়্ক",
"log-name-translationreview": "ভাঙনি পুনৰীক্ষণ অভিলেখ",
"translate-workflowstatus": "স্থিতি: $1",
"translate-workflow-set-doing": "পছন্দসমূহ . . .",
"translate-stats-workflow": "স্থিতি",
"translate-dynagroup-recent-label": "শেহতীয়া ভাঙনিসমূহ",
- "translate-dynagroup-by": "ভাঙনিকৰ্তা {{GENDER:$1|$1}}",
- "translate-dynagroup-byc": "ভাঙনিকৰ্তা {{GENDER:$1|$1}}",
- "translate-dynagroup-last": "শেহতীয়া সালসলনিকৰ্তা {{GENDER:$1|$1}}",
- "translate-dynagroup-lastc": "শেহতীয়া সালসলনিকৰ্তা {{GENDER:$1|$1}} ($2)",
- "translate-gethelp": "সহায়"
+ "tux-languageselector": "অনুবাদ কৰক:",
+ "tux-editor-proofreading-mode": "পুনঃৰীক্ষণ"
}
diff --git a/MLEB/Translate/i18n/core/ast.json b/MLEB/Translate/i18n/core/ast.json
index 805c6e95..2e124e18 100644
--- a/MLEB/Translate/i18n/core/ast.json
+++ b/MLEB/Translate/i18n/core/ast.json
@@ -9,11 +9,7 @@
},
"translate": "Traducir",
"translate-desc": "[[Special:Translate|Páxina especial]] pa traducir MediaWiki y más",
- "translate-taskui-view": "Ver tolos mensaxes",
- "translate-taskui-untranslated": "Ver los mensaxes ensin traducir",
- "translate-taskui-optional": "Ver los mensaxes opcionales",
- "translate-taskui-acceptqueue": "Sólo los mensaxes que yo pueda marcar como revisaos",
- "translate-taskui-reviewall": "Revisar toles traducciones",
+ "translate-fuzzybot-desc": "Esta ye una cuenta especial del sistema qu'usa la [https://www.mediawiki.org/wiki/Extension:Translate estensión Translate] de MediaWiki que s'utiliza pa caltener les traducciones.\nEsta cuenta ye parte del software MediaWiki y nun pertenez a nengún usuariu.",
"translate-taskui-export-to-file": "Esportar en formatu nativu",
"translate-taskui-export-as-po": "Esportar pa traducir ensin conexón",
"translate-taction-translate": "Traducir",
@@ -42,7 +38,6 @@
"translate-page-description-hasoptional": "Esti grupu de mensaxes contien mensaxes opcionales.\nLos mensaxes opcionales sólo deberíen traducise cuando la llingua tenga necesidaes especiales,\ncomo nun usar espacios o pa treslliterar nomes propios. $1",
"translate-page-description-hasoptional-open": "Amosar los mensaxes opcionales.",
"translate-page-edit": "editar",
- "translate-ext-url": "<hr />Sitiu web: $1",
"translate-optional": "(opcional)",
"translate-ignored": "(inoráu)",
"translate-edit-title": "Editar \"$1\"",
@@ -52,14 +47,17 @@
"translate-edit-no-information": "<em>Esti mensaxe nun tien documentación. Si sabe ú o cómo s'usa esti mensaxe, pue ayudar a otros traductores amestando documentación a esti mensaxe.</em>",
"translate-edit-information": "Información tocante a esti mensaxe ($1)",
"translate-edit-in-other-languages": "Mensaxe n'otres llingües",
- "translate-edit-committed": "Traducción actual nel software",
"translate-edit-warnings": "Avisos sobre traducciones incompletes",
- "translate-edit-tmsugs": "Suxerencies de la memoria de traducción",
"translate-edit-tmmatch-source": "Testu orixinal de la traducción: $1",
"translate-edit-tmmatch": "$1 % de coincidencia",
"translate-use-suggestion": "Sustituir la traducción actual por esta suxerencia.",
"translate-edit-nopermission": "Necesita permisu de traducción pa traducir mensaxes.",
"translate-edit-askpermission": "Pidir permisu",
+ "exporttranslations": "Esportar traducciones",
+ "translate-export-form-format": "Formatu",
+ "translate-export-invalid-format": "Especifica un formatu válidu.",
+ "translate-export-not-supported": "Nun s'almite la esportación de traducciones.",
+ "translate-export-format-notsupported": "El formatu d'esportación especificáu nun s'almite pol grupu de mensaxes.",
"translate-magic-pagename": "Traducción estendida de MediaWiki",
"translate-magic-help": "Pues traducir los nomatos de les páxines especiales, les pallabres máxiques y los nomes de los espacios de nome.\n\nLos nomatos de les páxines especiales y les pallabres máxiques puen tener múltiples traducciones.\nLes traducciones se separten con una coma (,).\nLos espacios de nome namái puen tener una traducción.\n\nTraducir l'espaciu de nomes d'alderique del proyeutu <code>$1 talk</code> pue ser abegoso. <code>$1</code> se sustituye pol nome del sitiu (por exemplu <code>{{ns:project_talk}}</code>).\nSi na to llingua nun ye posible formar una espresión válida ensin camudar el nome del sitiu, por favor informa d'ello en [[Support]].\n\nNecesites tar nel grupu de traductores pa guardar los cambios.\nLos cambios nun se graben fasta que calques nel botón guardar d'abaxo.",
"translate-magic-module": "Módulu:",
@@ -78,7 +76,7 @@
"translate-magic-namespace": "Nomes d'espacios de nome",
"translate-magic-notsaved": "¡La edición nun se guardó!",
"translate-magic-errors": "Por favor, igua{{PLURAL:$1|'l fallu| los fallos}} darréu nes traducciones:",
- "translate-magic-saved": "Los cambeos guardaronse correutamente.",
+ "translate-magic-saved": "Guardáronse los cambeos.",
"translate-checks-parameters": "{{PLURAL:$2|El siguiente parámetru nun s'usa|Los siguientes parámetros nun s'usen}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-parameters-unknown": "{{PLURAL:$2|El siguiente parámetru ye desconocíu|Los siguientes parámetros son desconocíos}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-balance": "Hai un númberu impar de {{PLURAL:$2|paréntesis|paréntesis}}:\n<strong><nowiki>$1</nowiki></strong>",
@@ -105,7 +103,16 @@
"right-translate-import": "Importar les traducciones ensin conexón",
"action-translate-import": "Importar les traducciones ensin conexón",
"right-translate-messagereview": "Revisar les traducciones",
+ "action-translate-messagereview": "revisar traducciones",
"right-translate-groupreview": "Camudar l'estáu d'organización del trabayu de los grupos de mensaxes",
+ "action-translate-groupreview": "camudar l'estáu del fluxu de trabayu de los grupos de mensaxes",
+ "translate-rcfilters-translations": "Traducciones",
+ "translate-rcfilters-translations-only-label": "Traducciones",
+ "translate-rcfilters-translations-only-desc": "Cambeos nes páxines traducíes.",
+ "translate-rcfilters-translations-filter-label": "Nun son traducciones",
+ "translate-rcfilters-translations-filter-desc": "Tolos cambeos que nun son traducciones.",
+ "translate-rcfilters-translations-site-label": "Mensaxes del sitiu",
+ "translate-rcfilters-translations-site-desc": "Personalizaciones de los mensaxes del sitiu nel espaciu de nomes MediaWiki.",
"translate-rc-translation-filter": "Filtrar traducciones:",
"translate-rc-translation-filter-no": "Nun facer nada",
"translate-rc-translation-filter-only": "Amosar traducciones namái",
@@ -137,7 +144,6 @@
"translate-statsf-language": "Llista de códigos de llingua separtaos por comes:",
"translate-statsf-group": "Llista de códigos de grupu separtaos por comes:",
"translate-statsf-submit": "Vista previa",
- "translate-tag-category": "Páxines traducibles",
"translate-tag-page-desc": "Traducción de la páxina wiki [[$2|$1]] dende'l $3 ($4).",
"translate-sidebar-alltrans": "Otres llingües",
"translations": "Toles traducciones",
@@ -179,7 +185,7 @@
"translate-mgs-noempty": "Nun amosar les llingües que nun tengan traducción dala",
"translate-mgs-submit": "Amosar estadístiques",
"translate-mgs-column-language": "Llingua",
- "translate-mgs-totals": "Toles llingües xuntes",
+ "translate-mgs-totals": "{{PLURAL:$1|La llingua|Toles $1 llingües}} en xunto",
"translate-mgs-invalid-group": "El grupu $1 especificáu nun esiste.",
"translate-mgs-nothing": "Nada qu'amosar pa les estadístiques que se pidieron.",
"supportedlanguages": "Llingües sofitaes",
@@ -189,6 +195,7 @@
"supportedlanguages-recenttranslations": "traducciones recientes",
"supportedlanguages-count": "$1 {{PLURAL:$1|llingua|llingües}} en total.",
"supportedlanguages-activity": "$1: $2 {{PLURAL:$2|edición|ediciones}}; cabera edición hai $3 {{PLURAL:$3|día|díes}}",
+ "abusefilter-edit-builder-vars-translate-source-text": "Testu d'orixe de la unidá de traducción",
"translate-save": "Guardar ($1)",
"translate-jssti-add": "Amestar a la llista",
"managemessagegroups": "Xestión de grupos de mensaxes",
@@ -212,7 +219,6 @@
"translate-manage-toolong": "Pasose'l tiempu máximu de procesamentu de $1 {{PLURAL:$1|segundu|segundos}}.\nVuelvi a unviar el formulariu pa continuar procesandolu.",
"translate-manage-import-summary": "Importando una versión nueva d'una fonte esterna",
"translate-manage-conflict-summary": "Importando una versión nueva d'una fonte esterna.\nPor favor, compruebala.",
- "translate-manage-fuzzy-summary": "La definición del mensaxe camudó",
"translate-manage-submit": "Executar",
"translate-manage-intro-other": "Debaxo ta la llista de cambios nes traducciones de la llingua $1.\nPor favor, revise los cambios y escueya l'aición que quier facer pa cada anovamientu.\nSi escueye inorar los cambios, esta aición ye sólo temporal.",
"translate-manage-import-ok": "Importada: $1",
@@ -221,7 +227,7 @@
"translate-import-from-local": "Xubir un ficheru llocal:",
"translate-import-load": "Xubir ficheru",
"translate-import-err-dl-failed": "Nun se pudo obtener el ficheru:\n$1",
- "translate-import-err-ul-failed": "La xuba del ficheru nun tuvo éxitu",
+ "translate-import-err-ul-failed": "Falló la xuba del ficheru",
"translate-import-err-invalid-title": "El nome de ficheru proporcionáu \"<nowiki>$1</nowiki>\" nun ye válidu.",
"translate-import-err-no-such-file": "El ficheru \"<nowiki>$1</nowiki>\" nun esiste o nun se xubió de mou llocal.",
"translate-import-err-stale-group": "El grupu de mensaxes al que pertenez esti ficheru nun esiste.",
@@ -230,9 +236,7 @@
"translate-js-summary": "Resume:",
"translate-js-save": "Guardar",
"translate-js-next": "Guardar y abrir el siguiente",
- "translate-js-nonext": "Esti yera'l caberu mensaxe d'esta páxina.",
"translate-js-skip": "Saltar al siguiente",
- "translate-js-save-failed": "Falló'l guardáu. Por favor, informa d'esti fallu.",
"translate-js-history": "Historial de traducciones",
"translate-js-support": "Facer una entruga",
"translate-js-support-title": "Pidir ayuda si nun hai información bastante pa traducir esti mensaxe correutamente.",
@@ -249,21 +253,9 @@
"translate-documentation-language": "Documentación del mensaxe",
"translate-searchprofile": "Traducciones",
"translate-searchprofile-tooltip": "Guetar en toles traducciones",
+ "translate-searchprofile-note": "Hai más opciones de busca disponibles con [$1 busca de traducciones].",
"translate-search-languagefilter": "Peñerar por llingua:",
"translate-search-nofilter": "Ensin peñera",
- "translate-messagereview-submit": "Marcar como revisao",
- "translate-messagereview-progress": "Marcando como revisao...",
- "translate-messagereview-failure": "Error al marcar como revisao: $1",
- "translate-messagereview-done": "Revisao",
- "translate-messagereview-reviews": "Revisao por {{PLURAL:$1|un usuariu|$1 usuarios}}",
- "translate-messagereview-reviewswithyou": "Revisao por {{PLURAL:$1|vusté|$1 usuarios, incluíu vusté}}",
- "api-error-invalidrevision": "Nun s'alcontró la traducción",
- "api-error-unknownmessage": "Nun s'alcontró'l mensaxe",
- "api-error-fuzzymessage": "La traducción ta marcada como aproximada",
- "api-error-owntranslation": "Nun pue marcar les traducciones propies como revisaes.",
- "translate-messagereview-no-fuzzy": "Les traducciones aproximaes nun puen marcase como revisaes.",
- "translate-messagereview-no-own": "Nun pue marcar les traducciones propies como revisaes.",
- "translate-messagereview-doit": "Marcar esta traducción como revisada.",
"log-name-translationreview": "Rexistru de revisión de la traducción",
"log-description-translationreview": "Rexistru de toles revisiones de les traducciones y grupos de mensaxes.",
"logentry-translationreview-message": "$1 {{GENDER:$2|revisó}} la traducción $3",
@@ -276,10 +268,7 @@
"action-translate-sandboxaction": "executar aiciones de la llista blanca pa los usuarios de la zona de pruebes",
"translate-workflow-state-": "(desactiváu)",
"translate-workflowstatus": "Estáu: $1",
- "translate-workflow-set-do": "Activar",
"translate-workflow-set-doing": "Activando...",
- "translate-workflow-set-done": "¡Activáu!",
- "translate-workflow-set-error-alreadyset": "L'estáu solicitáu ye idénticu al estáu actual.",
"translate-workflow-autocreated-summary": "Creación automática de la páxina pal estáu \"$1\" del fluxu de trabayu",
"translate-stats-workflow": "Estáu",
"translate-workflowgroup-label": "Estaos del fluxu de trabayu",
@@ -288,11 +277,6 @@
"translate-dynagroup-recent-desc": "Esti grupu de mensaxes amuesa toles traducciones más nueves nesta llingua.\nYe enforma afayadizo pa les xeres de revisión.",
"translate-dynagroup-additions-label": "Novedaes",
"translate-dynagroup-additions-desc": "Esti grupu de mensaxes amuesa los mensaxes nuevos y camudaos.",
- "translate-dynagroup-by": "Traducción fecha por {{GENDER:$1|$1}}",
- "translate-dynagroup-byc": "Traducción fecha por {{GENDER:$1|$1}} ($2)",
- "translate-dynagroup-last": "Caberu cambiu fechu por {{GENDER:$1|$1}}",
- "translate-dynagroup-lastc": "Caberu cambiu fechu por {{GENDER:$1|$1}} ($2)",
- "translate-gethelp": "Ayuda",
"translate-msggroupselector-projects": "Grupu de mensaxes",
"translate-msggroupselector-search-placeholder": "Guetar nos grupos",
"translate-msggroupselector-search-all": "Toos",
@@ -311,14 +295,17 @@
"tux-status-translated": "Traducíu",
"tux-status-saving": "Guardando...",
"tux-status-unsaved": "Ensin guardar",
+ "tux-save-unknown-error": "Hebo un error desconocíu.",
"tux-editor-placeholder": "La to traducción",
+ "tux-editor-editsummary-placeholder": "Resume opcional",
"tux-editor-paste-original-button-label": "Apegar el testu fonte",
"tux-editor-discard-changes-button-label": "Descartar los cambeos",
"tux-editor-save-button-label": "Guardar la traducción",
"tux-editor-skip-button-label": "Saltar a la siguiente",
"tux-editor-cancel-button-label": "Encaboxar",
"tux-editor-confirm-button-label": "Confirmar la traducción",
- "tux-editor-shortcut-info": "Calque \"$1\" pa guardar, \"$2\" pa saltar al siguiente mensaxe o $3 pa otros atayos.",
+ "tux-editor-proofread-button-label": "Marcar como revisao",
+ "tux-editor-shortcut-info": "Pulsia «$1» pa guardar, «$2» pa dir al siguiente mensaxe, «$4» p'apurrir un resume o «$3» pa más atayos.",
"tux-editor-edit-desc": "Editar la documentación",
"tux-editor-add-desc": "Amestar la documentación",
"tux-editor-suggestions-title": "Suxerencies",
@@ -340,7 +327,7 @@
"tux-proofread-action-tooltip": "Marcar como revisao",
"tux-proofread-edit-label": "Editar",
"tux-editor-page-mode": "Páxina",
- "tux-editor-outdated-warning": "Esta traducción pue necesitar un anovamientu.",
+ "tux-editor-outdated-warning": "Esta traducción puede necesitar anovase.",
"tux-editor-outdated-warning-diff-link": "Amosar les diferencies",
"tux-editor-doc-editor-placeholder": "Documentación del mensaxe",
"tux-editor-doc-editor-save": "Guardar documentación",
@@ -367,15 +354,17 @@
"tux-empty-nothing-new-to-proofread": "Nun hai nada nuevo pa revisar",
"tux-empty-you-can-review-already-proofread": "Pue revisar les traducciones que yá revisaron otres persones.",
"tux-empty-list-other": "Nun hai ren que traducir",
- "tux-empty-list-other-guide": "Pue ayudar a revisar les traducciones esistentes",
+ "tux-empty-list-other-guide": "Puedes ayudar a revisar les traducciones qu'esisten",
"tux-empty-list-other-action": "Revisar les traducciones",
"tux-empty-list-other-link": "Ver tolos mensaxes",
"tux-editor-close-tooltip": "Zarrar",
"tux-editor-expand-tooltip": "Espander",
"tux-editor-collapse-tooltip": "Plegar",
+ "tux-editor-message-tools-show-editor": "Amosar nel editor wiki",
"tux-editor-message-tools-history": "Historial",
"tux-editor-message-tools-delete": "Desaniciar",
"tux-editor-message-tools-translations": "Toles traducciones",
+ "tux-editor-message-tools-linktothis": "Enllaz a esti mensaxe",
"tux-editor-loading": "Cargando...",
"translate-search-more-languages-info": "$1 {{PLURAL:$1|llingua|llingües}} más",
"translate-statsbar-tooltip": "$1% traducíos, $2% revisaos",
@@ -383,5 +372,6 @@
"translate-search-more-groups-info": "$1 {{PLURAL:$1|grupu|grupos}} más",
"translate-ulsdep-title": "Error de configuración",
"translate-ulsdep-body": "La estensión Translate depende de la [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector estensión Universal Language Selector].",
- "tux-session-expired": "La sesión zarróse yá. Anicia sesión nuna llingüeta aparte. Alternativamente, copia les traducciones ensin guardar, anicia sesión y vuelvi a esta páxina."
+ "tux-session-expired": "La sesión zarróse yá. Anicia sesión n'una llingüeta aparte. Alternativamente, copia les traducciones ensin guardar, anicia sesión, vuelvi a esta páxina y escribi les traducciones otra vuelta.",
+ "tux-nojs": "Esta ferramienta nun funciona sin JavaScript. JavaScript ta desactiváu, nun funcionó, o nun hai encontu pa esti restolador."
}
diff --git a/MLEB/Translate/i18n/core/av.json b/MLEB/Translate/i18n/core/av.json
index be7b4922..215061b9 100644
--- a/MLEB/Translate/i18n/core/av.json
+++ b/MLEB/Translate/i18n/core/av.json
@@ -1,11 +1,13 @@
{
"@metadata": {
"authors": [
- "Gazimagomedov"
+ "Gazimagomedov",
+ "Аль-Гимравий"
]
},
"translate-total": "Кагътал",
"translate-untranslated": "Таржама гьабичӀел",
"translate-mgs-group": "Кагътазул дандбакӀари:",
+ "translate-manage-submit": "ТІубазабизе",
"translate-msggroupselector-projects": "Кагътазул сияхӀ"
}
diff --git a/MLEB/Translate/i18n/core/awa.json b/MLEB/Translate/i18n/core/awa.json
index f035cc41..010c203c 100644
--- a/MLEB/Translate/i18n/core/awa.json
+++ b/MLEB/Translate/i18n/core/awa.json
@@ -6,10 +6,6 @@
},
"translate": "अनुवाद करा जाय",
"translate-desc": "[[Special:Translate| खाश पन्ना]] मीडीयाविकि कय अनुवादन खत्तिर",
- "translate-taskui-view": "कुल सनेशा देखाव जाय",
- "translate-taskui-untranslated": "अअनुवादित सन्देश देखावा जाय",
- "translate-taskui-optional": "वैकल्पिक सन्देश देखावा जाय",
- "translate-taskui-reviewall": "कुल अनुवाद कय समीक्षा करा जाय",
"translate-taskui-export-to-file": "मूल स्वरूप में निर्यात करा जाय",
"translate-taskui-export-as-po": "ऑफ़लाइन अनुवाद खत्तिर निर्यात करा जाय",
"translate-taction-translate": "अनुवाद करा जाय",
diff --git a/MLEB/Translate/i18n/core/az.json b/MLEB/Translate/i18n/core/az.json
index 336305d0..59202a97 100644
--- a/MLEB/Translate/i18n/core/az.json
+++ b/MLEB/Translate/i18n/core/az.json
@@ -9,11 +9,6 @@
},
"translate": "Tərcümə et",
"translate-desc": "MediaViki və əlavələrini tərcümə etmək üçün [[Special:Translate|Xüsusi səhifə]]",
- "translate-taskui-view": "Bütün mesajları göstər",
- "translate-taskui-untranslated": "Tərcümə olunmayanları göstər",
- "translate-taskui-optional": "İstənilən mesajları göstər",
- "translate-taskui-acceptqueue": "Yalnız mənim yoxlamağımı gözləyən mesajlar",
- "translate-taskui-reviewall": "Bütün tərcümələri gözdən keçir",
"translate-taskui-export-to-file": "Yerli formatda ixrac et",
"translate-taction-translate": "Tərcümə et",
"translate-taction-proofread": "Yoxla",
@@ -40,7 +35,6 @@
"translate-page-description-legend": "Qrup haqqında məlumat",
"translate-page-description-hasoptional-open": "İstənilən mesajları göstər.",
"translate-page-edit": "redaktə et",
- "translate-ext-url": "<hr />Veb səhifəsi: $1",
"translate-optional": "(məcburi deyil)",
"translate-ignored": "(sayılmayan)",
"translate-edit-title": "Redaktə et \"$1\"",
@@ -51,7 +45,6 @@
"translate-edit-information": "Mesaj haqqında məlumat(lar) ($1)",
"translate-edit-in-other-languages": "Digər dillərdəki mesaj",
"translate-edit-warnings": "Yarımçıq tərcümələr haqqında xəbərdarlıqlar",
- "translate-edit-tmsugs": "Tərcümə yaddaşı və tərcümə maşınından təkliflər",
"translate-edit-tmmatch-source": "Tərcümə mənbəsi mətni: $1",
"translate-edit-tmmatch": "$1% oxşar",
"translate-use-suggestion": "Cari tərcüməni bu təkliflə dəyişdir.",
@@ -112,7 +105,6 @@
"translate-statsf-language": "Dil kodlarının vergül ilə ayrılmış siyahısı:",
"translate-statsf-group": "Qrup kodlarının vergül ilə ayrılmış siyahısı:",
"translate-statsf-submit": "Ön izləmə",
- "translate-tag-category": "Tərcümə oluna bilən səhifələr",
"translate-tag-page-desc": "[[$2|$1]] viki-səhifəsinin $3 ($4) dilindən tərcüməsi.",
"translate-sidebar-alltrans": "Başqa dillərdə",
"translations": "Bütün tərcümələr",
@@ -124,6 +116,7 @@
"translate-translations-project": "Layihə:",
"translate-translations-history-short": "t",
"languagestats": "Dil statistikaları",
+ "languagestats-stats-for": "$1 üçün tərcümə statistikası ($2).",
"languagestats-recenttranslations": "son tərcümələr",
"translate-langstats-expand": "genişləndir",
"translate-langstats-collapse": "gizlə",
@@ -171,9 +164,7 @@
"translate-js-summary": "Açıqlama:",
"translate-js-save": "Saxla",
"translate-js-next": "Saxla və sonrakını aç",
- "translate-js-nonext": "Bu səhifədəki son mesaj idi.",
"translate-js-skip": "Sonrakına keç",
- "translate-js-save-failed": "Saxlama uğursuz oldu. Lütfən bu xətanı bildirin.",
"translate-js-history": "Tərcümə tarixi",
"translate-js-support": "Sual ver",
"translate-gs-code": "Kod",
@@ -183,11 +174,7 @@
"translate-gs-total": "Ümumi",
"translate-documentation-language": "Mesaj sənədləşməsi",
"translate-searchprofile": "Tərcümələr",
- "translate-searchprofile-tooltip": "Bütün tərcümələrdən axtar",
- "translate-messagereview-submit": "Yoxlanılmış kimi işarələ",
- "translate-messagereview-progress": "Yoxlanılmış kimi işarələnir...",
- "translate-messagereview-done": "Yoxlanıldı",
- "translate-gethelp": "Kömək",
+ "translate-searchprofile-tooltip": "Bütün tərcümələrdə axtar",
"translate-msggroupselector-projects": "Mesaj qrupu",
"translate-msggroupselector-search-placeholder": "Qrupları axtar",
"translate-msggroupselector-search-all": "Hamısı",
diff --git a/MLEB/Translate/i18n/core/azb.json b/MLEB/Translate/i18n/core/azb.json
index ecd77471..0da25654 100644
--- a/MLEB/Translate/i18n/core/azb.json
+++ b/MLEB/Translate/i18n/core/azb.json
@@ -5,19 +5,17 @@
"E THP",
"Ebrahimi-amir",
"Mousa",
- "Reza1615"
+ "Reza1615",
+ "Koroğlu",
+ "Alp Er Tunqa",
+ "Ilğım"
]
},
"translate": "ترجومه ائت",
"translate-desc": "مئدیاویکی و سونرانی چئویرمک اوچون [[Special:Translate|اؤزل صحیفه]]",
- "translate-taskui-view": "بوتون مئساژلاری گؤستر",
- "translate-taskui-untranslated": "چئویریلمه‌میش مئساژلاری گؤستر",
- "translate-taskui-optional": "ایستگه باغلی مئساژلاری گؤستر",
- "translate-taskui-acceptqueue": "یالنیز من قبول ائده بیلن مئساژلاری",
- "translate-taskui-reviewall": "بوتون چئویریلری گؤزدن گئچیت",
"translate-taskui-export-to-file": "دوغما فورمت‌ده چیخارت",
"translate-taskui-export-as-po": "آفلاین چئویرمک اوچون چیخارت",
- "translate-taction-translate": "چئویرمک",
+ "translate-taction-translate": "چئویرمه",
"translate-taction-proofread": "یئنی‌دن باخیش",
"translate-taction-lstats": "دیل آماری",
"translate-taction-mstats": "مئساژ قروپ آماری",
@@ -28,7 +26,7 @@
"translate-page-disabled": "بو دیل‌ده بو گروپون چئویرمه‌سی باغلانیب‌دیر.\nدلیل:\n\n<em>$1</em>",
"translate-language-disabled": "بو دیله چئویرمک باغلانیب‌دیر.",
"translate-page-settings-legend": "تنظیملر",
- "translate-page-group": "قروپ",
+ "translate-page-group": "گروه",
"translate-page-language": "دیل",
"translate-page-limit": "سینیر",
"translate-page-limit-option": "صحیفه‌ده {{PLURAL:$1|بیر|$1}} مئساژ",
@@ -37,13 +35,12 @@
"translate-page-showing": "$3 مئساژ ایچینده $1-دن $2-ه گؤستریلیر.",
"translate-page-showing-all": "{{PLURAL:$1|بیر|$1}} مئساژ گؤستریلیر.",
"translate-page-showing-none": "گؤسترمک اوچون بیر مئساژ یوخدور.",
- "translate-next": "سونراکی صحیفه",
+ "translate-next": "سونراکی صفحه",
"translate-prev": "قاباقکی صحیفه",
"translate-page-description-legend": "بو قروپ اوچون بیلگیلر",
"translate-page-description-hasoptional": "بو مئساژ گروپوندا، ایستگه باغلی مئساژلار واردیر.\nایستگه باغلی مئساژلار یالنیز دیلین خاص شرطلری اولاندا چئویرمه‌لی‌دیرلر، مثلاً اگر دیل‌ده سؤزجوک آراسی بوشلوق یوخدور، یا بعضی آدلار گرک چئویریله. $1",
"translate-page-description-hasoptional-open": "ایستگه باغلی مئساژلاری گؤستر.",
"translate-page-edit": "دَییشدیر",
- "translate-ext-url": "<hr />سایت: $1",
"translate-optional": "(ایستگه باغلی)",
"translate-ignored": "(یوخ ساییلمیش)",
"translate-edit-title": "«$1»-ی دَییشدیر",
@@ -53,9 +50,7 @@
"translate-edit-no-information": "''بو مئساژ اوچون سندلندیرمه یوخدور.''\n''اگر سیز بیلیرسیز بو مئساژ نئجه ایشلنیب‌دیر، بو مئساژی سندلندیرمک‌له، آیری ترجومه‌چیلره یاردیم ائده بیلرسیز.''",
"translate-edit-information": "مئساژ اوچون بیلگیلر ($1)",
"translate-edit-in-other-languages": "مئساژ آیری دیل‌لرده",
- "translate-edit-committed": "یازیلیم‌دا ایندیکی ترجومه",
"translate-edit-warnings": "قورتاریلمامیش چئویرمه‌لره گؤره ایخطار",
- "translate-edit-tmsugs": "چئویرمک حافیظه‌سی و اوتوماتیک چئویرمه‌دن اؤنرلر",
"translate-edit-tmmatch-source": "چئویرمک قایناق یازی‌سی: $1",
"translate-edit-tmmatch": "$1٪ تطبیق",
"translate-use-suggestion": "ایندیکی چئویرمه‌نی بو اؤنره دَییشدیر.",
@@ -96,7 +91,7 @@
"translate-checks-malformed": "<nowiki>$1</nowiki> پیس فورم‌دادیر.",
"translate-checks-fudforum-syntax": "بو پروژه‌ده <nowiki>$2</nowiki> یئرینه <nowiki>$1</nowiki>-ی ایشلدین.",
"translate-pref-nonewsletter": "منه ایمیل خبرنامه‌لری گؤندرمه",
- "translate-pref-editassistlang": "یاردیمچی دیل‌لر:",
+ "translate-pref-editassistlang": "کؤمکچی دیل‌لر:",
"prefs-translate": "چئویرمک سئچمه‌لری",
"translate-pref-editassistlang-help": "کاما ایله آیریلمیش دیل کودلاری.\nسیز چئویرنده، بو دیل‌ده مئساژلارین چئویرمه‌لری گؤستریلر.\nدیل‌لری ایلک لیستی، سیزین دیل‌لرینیزه باغلی‌دیر.",
"translate-pref-editassistlang-bad": "لیست‌ده گئچرسیز دیل کودو واردیر:\n<nowiki>$1</nowiki>.",
@@ -138,7 +133,6 @@
"translate-statsf-language": "کاما ایله آیریلمیش دیل کودلار لیستی:",
"translate-statsf-group": "کاما ایله آیریلمیش قروپ کودلاری لیستی:",
"translate-statsf-submit": "اؤن‌گؤستریش",
- "translate-tag-category": "چئویریله بیلن صحیفه‌لر",
"translate-tag-page-desc": "[[$2|$1]] ویکی صحیفه‌سی چئویرمه‌سی.",
"translate-sidebar-alltrans": "آیری دیل‌لرده",
"translations": "بوتون چئویرمه‌لر",
@@ -158,7 +152,7 @@
"translate-langstats-incomplete": "بو صحیفه‌ده بعضی آمارلار باشا چاتمامیش‌دیلار. لوطفاً چوخ آمار اله گتیرمک اوچون یئنی‌دن یوکله‌یین.",
"translate-langstats-expand": "گئنیشلندیر",
"translate-langstats-collapse": "گیزلت",
- "translate-langstats-expandall": "هامیسینی گئنیشلت",
+ "translate-langstats-expandall": "هامی‌سینی گؤستر",
"translate-langstats-collapseall": "هامیسینی گیزلت",
"translate-language-code": "دیلین کودو",
"translate-language-code-field-name": "دیلین کودو:",
@@ -182,7 +176,7 @@
"translate-mgs-totals": "بوتون دیل‌لر بیرلیک‌ده",
"translate-mgs-invalid-group": "بیلیندیریلمیش $1 گروپو یوخدور.",
"translate-mgs-nothing": "ایسته‌نیلمیش آمار اوچون گؤسترمه‌لی بیر شئی یوخدور.",
- "supportedlanguages": "دستکلنن دیل‌لر",
+ "supportedlanguages": "ساپورتلانان دیل‌لر",
"supportedlanguages-summary": "بو صحیفه {{SITENAME}}-ده دستکلنن بوتون دیل‌لرین لیستینی،\nهر دیل‌ده چالیشان چئویرن‌لرله بیرلیک‌ده گؤستریر.\nنه قدر بیر چئویرن چوخ چالیشماسی اولسا، اونون آدی یئکه‌رک گؤرسنیر.\nآلت‌خطی‌نین رنگی، چئویرنین نه قدر یاخین زامان‌دا بوردا چالیشقان اولماغینی گؤستریر.",
"supportedlanguages-colorlegend": "رنگ اوچون توضیح: سون چئویرمک $1 گون قاباق.",
"supportedlanguages-translators": "{{PLURAL:$2|بیر|$2}} چئویرن: $1",
@@ -211,7 +205,6 @@
"translate-manage-toolong": "{{PLURAL:$1|بیر|$1}} ثانیه ان چون ایشلتمه سینیری آشدی.\nلوطفاً ایشلتماغین قالانی‌نی گئتمک اوچون فورمو یئنی‌دن گؤندرین.",
"translate-manage-import-summary": "ائشیک قایناق‌دان بیر یئنی نوسخه ایچری گتیریلیر",
"translate-manage-conflict-summary": "ائشیک قایناق‌دان بیر یئنی نوسخه ایچری گتیریلیر.\nلوطفاً یوخلایین.",
- "translate-manage-fuzzy-summary": "قایناق مئساژ دَییشدیریلیب‌دیر",
"importtranslations": "چئویرمه‌لری ایچری گتیر",
"translate-import-from-local": "یئرلی فایل یوکله:",
"translate-import-load": "یئرلی فایل",
@@ -223,11 +216,9 @@
"translate-import-err-no-headers": "فایلین ترجومه اوزانتی فورمتینده دوزگون Gettext فورمو یوخدور.\nفایل باشلیقلاریندان دیل و مئساژ گروپونو بیلمک اولمور.",
"translate-import-err-warnings": "فایلین دوزگون فورمو یوخدور.\nآرخایین اولون سیزین دَییشدیرَنیز msgctxt‌ فیلدلرینی سیلمیر.\nبیلگیلر: $1",
"translate-js-summary": "آچیقلاما:",
- "translate-js-save": "قئید ائت",
+ "translate-js-save": "ذخیره ائت",
"translate-js-next": "قئید ائت و سونراکینی آچ",
- "translate-js-nonext": "بو صحیفه‌ده سون مئساژ ایدی.",
"translate-js-skip": "سونراکینا آتلان",
- "translate-js-save-failed": "قئید ائدیلنمه‌دی. لوطفاً بو خطانی بیلدیرین.",
"translate-js-history": "چئویرمک گئچمیشی",
"translate-js-support": "سورغو سوروش",
"translate-js-support-title": "بو مئساژی دوزگون چئویرمک اوچون کیفایت قدر بیلگی اولماسا، یاردیم ایسته‌یین.",
@@ -246,29 +237,13 @@
"translate-searchprofile-tooltip": "بوتون چئویرمه‌لردن آختار",
"translate-search-languagefilter": "دیل ایله فیلترله:",
"translate-search-nofilter": "فیلتر یوخ",
- "translate-messagereview-submit": "قبول ائت",
- "translate-messagereview-progress": "قبول ائدیلیر...",
- "translate-messagereview-failure": "قبول ائدیلیر... اوغورسوز اولدو: $1",
- "translate-messagereview-done": "قبول ائدیلدی",
- "translate-messagereview-reviews": "{{PLURAL:$1|بیر|$1}} ایستیفاده‌چی ایله قبول ائدیلیب‌دیر",
- "translate-messagereview-reviewswithyou": "{{PLURAL:$1|سیز|$1 ایستیفاده‌چی، ایچینده سیز}} ایله قبول ائدیلیب‌دیر",
- "api-error-invalidrevision": "چئویرمه تاپیلانمادی",
- "api-error-unknownmessage": "مئساژ تاپیلانمادی",
- "api-error-fuzzymessage": "چئویرمه موبهم نیشانلانیب‌دیر",
- "api-error-owntranslation": "سیز اؤز چئویرمه‌لرینیزی قبول ائده بیلنمزسینیز",
- "translate-messagereview-no-fuzzy": "موبهم چئویرمه‌لر قبول اولونانمازلار.",
- "translate-messagereview-no-own": "سیز اؤز چئویرمه‌لرینیزی قبول ائده بیلنمزسینیز.",
- "translate-messagereview-doit": "بو چئویرمه‌نی بیر دوزگون چئویرمه اولاراق قبول ائت.",
"log-name-translationreview": "چئویرمه گؤزدن گئچیتمک قئیدلری",
"log-description-translationreview": "بوتون چئویرمه‌لر و مئساژ گروپلاری گؤزدن گئچیتمک قئیدلری.",
"logentry-translationreview-message": "$1، $3 چئویرمه‌سینی {{GENDER:$2|قبول ائتدی}}",
"logentry-translationreview-group": "$1، $3-ین $4 ترجومه‌لرینین وضعیتی‌نی $6-دن $7-ه {{GENDER:$2|دَییشدیردی}}",
"translate-workflow-state-": "(وئریلمه‌میش)",
"translate-workflowstatus": "وضعیت: $1",
- "translate-workflow-set-do": "تنظیم‌له",
"translate-workflow-set-doing": "تنظیم‌لنیر...",
- "translate-workflow-set-done": "تنظیملندی!",
- "translate-workflow-set-error-alreadyset": "ایسته‌نیلمیش وضعیت، ایندیکی وضعیت ایله بیردیر.",
"translate-workflow-autocreated-summary": "$1 وضعیتی ایش-آخیمی اوچون اوتوماتیک صحیفه یاراتما",
"translate-stats-workflow": "وضعیت",
"translate-workflowgroup-label": "ایش-آخیمی وضعیتلری",
@@ -277,15 +252,10 @@
"translate-dynagroup-recent-desc": "بو مئساژ قروپو، بو دیلین بوتون سون چئویرمه‌لرینی گؤستریر.\nتصحیح ائتمه ایشلرینه ایشه گلن‌دیر.",
"translate-dynagroup-additions-label": "سون آرتیرمالار",
"translate-dynagroup-additions-desc": "بو مئساژ گروپو، یئنی و دَییشدیریلمیش مئساژلاری گؤستریر.",
- "translate-dynagroup-by": "{{GENDER:$1|$1}} ایله چئویریلیب‌دیر",
- "translate-dynagroup-byc": "{{GENDER:$1|$1}} ایله چئویریلیب‌دیر ($2)",
- "translate-dynagroup-last": "سون دفعه {{GENDER:$1|$1}} ایله دَییشدیریلیب‌دیر",
- "translate-dynagroup-lastc": "سون دفعه {{GENDER:$1|$1}} ایله دَییشدیریلیب‌دیر ($2)",
- "translate-gethelp": "یاردیم",
"translate-msggroupselector-projects": "مئساژ قروپو",
"translate-msggroupselector-search-placeholder": "گروپلاری آختار",
"translate-msggroupselector-search-all": "هامیسی",
- "translate-msggroupselector-search-recent": "سون",
+ "translate-msggroupselector-search-recent": "سوْن",
"translate-msggroupselector-view-subprojects": "{{PLURAL:$1|بیر|$1}} آلت‌گروپ",
"tux-languageselector": "بونا چئویرمک",
"tux-tab-all": "هامیسی",
@@ -327,12 +297,12 @@
"tux-editor-proofreading-show-own-translations": "اؤز چئویرمه‌لرینیزی گؤستر",
"tux-proofread-action-tooltip": "چئویرمه‌نی قبول ائت",
"tux-proofread-edit-label": "دَییشدیر",
- "tux-editor-page-mode": "صحیفه",
+ "tux-editor-page-mode": "صفحه",
"tux-editor-outdated-warning": "بو چئویرمه‌نی گونجل‌له‌مک گرکلی اولا بیلر.",
"tux-editor-outdated-warning-diff-link": "فرقلری گؤستر",
"tux-editor-doc-editor-placeholder": "مئساژ سندلندیرمه‌سی",
"tux-editor-doc-editor-save": "سندلندیرمه‌نی قئید ائت",
- "tux-editor-doc-editor-cancel": "لغو ائت",
+ "tux-editor-doc-editor-cancel": "وازگئچ",
"tux-messagetable-more-messages": "$1 داها {{PLURAL:$1|مئساژ}}",
"tux-messagetable-loading-messages": "{{PLURAL:$1|مئساژ|مئساژلار}} یوکله‌نیلیر...",
"tux-message-filter-placeholder": "لیستی فیلترله",
diff --git a/MLEB/Translate/i18n/core/ba.json b/MLEB/Translate/i18n/core/ba.json
index 1888a913..c7a6a6b8 100644
--- a/MLEB/Translate/i18n/core/ba.json
+++ b/MLEB/Translate/i18n/core/ba.json
@@ -4,7 +4,10 @@
"Assele",
"Haqmar",
"Roustammr",
- "Рустам Нурыев"
+ "Рустам Нурыев",
+ "Вильданова Гюзель",
+ "Ләйсән",
+ "Ансар"
]
},
"translate": "Тәржемә",
@@ -16,31 +19,28 @@
"translate-page-group": "Төркөм",
"translate-page-language": "Тел",
"translate-page-limit": "Сикләү",
- "translate-page-limit-option": "Бер биткә $1 {{PLURAL:$1|яҙма}}",
+ "translate-page-limit-option": " $1 битенә {{PLURAL:$1|хат}}",
"translate-submit": "Сығарырға",
"translate-page-navigation-legend": "Төп йүнәлештәр",
"translate-page-showing": "$3 яҙманан $1 - $2 эсендәгеһе сығарылған.",
- "translate-page-showing-all": "$1 {{PLURAL:$1|яҙма}} сығарылған.",
+ "translate-page-showing-all": "$1 {{PLURAL:$1|хат}} күрһәтелгән.",
"translate-page-showing-none": "Яҙмалар юҡ.",
"translate-next": "Киләһе бит",
"translate-prev": "Алдағы бит",
"translate-page-description-legend": "Төркөм тураһында мәғлүмәт",
"translate-page-edit": "үҙгәртергә",
- "translate-ext-url": "<hr />Сайт: $1",
"translate-optional": "(мөһим түгел)",
"translate-ignored": "(иғтибарға алынмай)",
"translate-edit-title": "Мөхәрирләү \"$1\"",
"translate-edit-definition": "Яҙманың билдәләмәһе",
"translate-edit-translation": "Тәржемә",
"translate-edit-contribute": "үҙгәртергә",
- "translate-edit-no-information": "''Был яҙманың тасуирламаһы юҡ. Әгәр һеҙ был яҙманың ҡайҙа һәм нисек ҡулланылғанын белһәгеҙ, был яҙмаға тасуирлама өҫтәп, бүтән тәржемәселәргә ярҙам итә алаһығыҙ.''",
+ "translate-edit-no-information": "''Был яҙманың тасуирламаһы юҡ. Әгәр ҙә һеҙ был яҙманың ҡайҙа һәм нисек ҡулланылғанын белһәгеҙ, был яҙмаға тасуирлама өҫтәп, бүтән тәржемәселәргә ярҙам итә алаһығыҙ.''",
"translate-edit-information": "Яҙма тураһында мәғлүмәт ($1)",
"translate-edit-in-other-languages": "Ошо яҙма башҡа телдәрҙә",
- "translate-edit-committed": "Программала хәҙерге тәржемәһе",
"translate-edit-warnings": "Тулы булмаған тәржемәләр тураһында иҫкәртеү",
- "translate-edit-tmsugs": "Тәржемәләр хәтеренән тәҡдимдәр",
"translate-edit-tmmatch": "$1% тап килеү",
- "translate-use-suggestion": "Был тәҡдимде тәржемә өлкәһенә ҡуйырға. Был бөтә хәҙерге эстәлекте алыштырасаҡ.",
+ "translate-use-suggestion": "Әлеге тәржемәнең тексын ошо күрһәтелгән менән алмаштырырға.",
"translate-magic-pagename": "MediaWiki тәрәнәйтелгән тәржемәһе",
"translate-magic-module": "Модуль:",
"translate-magic-submit": "Сығарырға",
@@ -56,7 +56,7 @@
"translate-magic-special": "Махсус биттәрҙең псевдонимдары",
"translate-magic-namespace": "Исемдәр арауығы",
"translate-magic-notsaved": "Һеҙҙең үҙгәртеүҙәрегеҙ һаҡланманы!",
- "translate-magic-errors": "Түбәндәге {{PLURAL:$1|1=хатаны|хаталарҙы}} төҙәтегеҙ, зинһар:",
+ "translate-magic-errors": "Зинһар, түбәндәге {{PLURAL:$1|1=хатаны|хаталарҙы}} төҙәтегеҙ:",
"translate-magic-saved": "Һеҙҙең үҙгәртеүҙәрегеҙ уңышлы һаҡланды.",
"translate-checks-parameters": "Түбәндәге {{PLURAL:$2|1=параметр|параметрҙар}} ҡулланылмай:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-parameters-unknown": "Түбәндәге {{PLURAL:$2|1=параметр|параметрҙар}} билдәһеҙ:\n<strong><nowiki>$1</nowiki></strong>",
@@ -81,7 +81,7 @@
"translate-rc-translation-filter-only": "Тәржемәләр генә",
"translate-rc-translation-filter-filter": "Тәржемәләрҙән башҡалар",
"translate-rc-translation-filter-site": "Cайттың система яҙмалары ғына",
- "translationstats": "Тәржемәләр статисикаһы",
+ "translationstats": "Тәржемәләр статистикаһы",
"translate-stats-edits": "Үҙгәртеүҙәр",
"translate-stats-users": "Тәржемәселәр",
"translate-stats-registrations": "Теркәүҙәр",
@@ -103,7 +103,6 @@
"translate-statsf-language": "Тел кодтары өтөр аша:",
"translate-statsf-group": "Төркөм кодтары өтөр аша:",
"translate-statsf-submit": "Ҡарап сығырға",
- "translate-tag-category": "Тәржемә ителә торған биттәр",
"translate-tag-page-desc": "[[$2|$1]] вики-битенең тәржемәһе",
"translate-sidebar-alltrans": "Башҡа телдәрҙә",
"translations": "Бөтә тәржемәләр",
@@ -152,7 +151,6 @@
"translate-manage-toolong": "$1 һорауында мөмкин булған үтәү ваҡыты — {{PLURAL:$1|1=секунд|секунд}} үтте.\nДауам итеү өсөн, форма мәғлүмәтен ҡабаттан ебәрегеҙ, зинһар.",
"translate-manage-import-summary": "Тышҡы сығанаҡтан яңы өлгө индереү",
"translate-manage-conflict-summary": "Тышҡы сығанаҡтан яңы өлгө индереү.\nЗинһар, тикшерегеҙ.",
- "translate-manage-fuzzy-summary": "Билдәләмә үҙгәрҙе",
"translate-manage-submit": "Үтәргә",
"translate-manage-intro-other": "Түбәндә — $1 теленә тәржемә үҙгәрештәре исемлеге.\nҺәр тәржемә өсөн үҙгәрештәрҙе тикшерегеҙ һәм был тәржемә менән ни эшләргә теләгәнегеҙҙе һайлағыҙ, зинһар.\nӘгәр һеҙ үҙгәрештәрҙе иғтибарһыҙ ҡалдырһағыҙ, улар икенсе сығарыуға күсереләсәк.",
"translate-manage-import-ok": "$1 битенең яңы өлгөһө индерелгән.",
@@ -168,9 +166,7 @@
"translate-import-err-no-headers": "Файл —Translate киңәйеүе форматында дөрөҫ Gettext-файл түгел:\nФайлдың башлыҡтарынан төркөмдө һәм телде билдәләп булмай.",
"translate-import-err-warnings": "Файл дөрөҫ төҙөлмәгән.\nҺеҙҙең мөхәррирләүсегеҙ msgctxt юлдарын юймай икәнен тикшерегеҙ.\nТулыраҡ: $1",
"translate-js-next": "Һаҡларға һәм сираттағыны асырға",
- "translate-js-nonext": "Был яҙма әлеге биттә аҙаҡҡыһы булды.",
"translate-js-skip": "Сираттағыға күсергә",
- "translate-js-save-failed": "Яҙҙырып ҡуйыу үтәлмәне. Был хата тураһында хәбәр итегеҙ, зинһар.",
"translate-js-history": "Тәржемә тарихы",
"translate-js-support": "Һорау бирергә",
"translate-js-support-title": "Был яҙманы дөрөҫ тәржемә итер өсөн мәғлүмәт етмәһә, ярҙам һорап мөрәжәғәт итегеҙ.",
@@ -187,7 +183,5 @@
"translate-searchprofile": "Тәржемәләр",
"translate-search-languagefilter": "Тел буйынса фильтр:",
"translate-search-nofilter": "Фильтрһыҙ",
- "translate-messagereview-submit": "Ҡабул итергә",
- "translate-messagereview-progress": "Ҡабул итеү...",
- "translate-messagereview-done": "Ҡабул ителде"
+ "tux-nojs": "Был ҡорал JavaScript-һыҙ эшләмәй."
}
diff --git a/MLEB/Translate/i18n/core/bar.json b/MLEB/Translate/i18n/core/bar.json
index 1dc68279..e16b74f2 100644
--- a/MLEB/Translate/i18n/core/bar.json
+++ b/MLEB/Translate/i18n/core/bar.json
@@ -30,7 +30,7 @@
"translate-js-history": "Ywersétzungsgschicht",
"translate-js-support": "A Frog stön",
"translate-searchprofile": "Ywersétzungen",
- "translate-searchprofile-tooltip": "Suach in olle Ywersétzungen",
+ "translate-searchprofile-tooltip": "Suach in Iwasetzunga",
"tux-editor-expand-tooltip": "Auskloppn",
"tux-editor-collapse-tooltip": "eikloppn"
}
diff --git a/MLEB/Translate/i18n/core/bcl.json b/MLEB/Translate/i18n/core/bcl.json
index ff717087..102547ef 100644
--- a/MLEB/Translate/i18n/core/bcl.json
+++ b/MLEB/Translate/i18n/core/bcl.json
@@ -1,7 +1,8 @@
{
"@metadata": {
"authors": [
- "Filipinayzd"
+ "Filipinayzd",
+ "Geopoet"
]
},
"translate": "Sangliân",
@@ -14,5 +15,7 @@
"translate-magic-cm-current": "Presente",
"translate-magic-cm-original": "Orihinal",
"translate-magic-cm-save": "Itagama",
- "translate-magic-cm-savefailed": "Bigô an pagtagama"
+ "translate-magic-cm-savefailed": "Bigô an pagtagama",
+ "translate-documentation-language": "Dokumentasyon kan mensahe",
+ "tux-session-expired": "Ika dae na tabi nakalaog. Pakilaog na sana sa sarong separadong tab. Sa alternatibong paagi, humimo nin sarong kopya kan dae pa natatagamang mga dakit-taramon, maglaog, magbalik sa pahinang ini asin ilaog giraray an saimong dinakit-taramon."
}
diff --git a/MLEB/Translate/i18n/core/be-tarask.json b/MLEB/Translate/i18n/core/be-tarask.json
index 56a4a82a..41a75911 100644
--- a/MLEB/Translate/i18n/core/be-tarask.json
+++ b/MLEB/Translate/i18n/core/be-tarask.json
@@ -11,12 +11,8 @@
]
},
"translate": "Пераклад",
+ "translate-extensionname": "Перакласьці",
"translate-desc": "[[Special:Translate|Спэцыяльная старонка]] для перакладу MediaWiki і іншых праграмаў",
- "translate-taskui-view": "Паказаць усе паведамленьні",
- "translate-taskui-untranslated": "Паказаць неперакладзеныя паведамленьні",
- "translate-taskui-optional": "Паказаць неабавязковыя паведамленьні.",
- "translate-taskui-acceptqueue": "Толькі паведамленьні для вычыткі",
- "translate-taskui-reviewall": "Праверыць усе пераклады",
"translate-taskui-export-to-file": "Экспартаваць у родным фармаце",
"translate-taskui-export-as-po": "Экспартаваць для оф-лайнавага перакладу",
"translate-taction-translate": "Пераклад",
@@ -45,24 +41,22 @@
"translate-page-description-hasoptional": "Гэтая група паведамленьняў утрымлівае неабавязковыя паведамленьні.\nНеабавязковыя паведамленьні мусяць перакладацца толькі ў тым выпадку, калі Вашая мова мае асаблівыя патрабаваньні, кшталту напісаньня без прагалаў, ці трансьлітарацыі ўласных імёнаў ці назваў. $1",
"translate-page-description-hasoptional-open": "Паказаць неабавязковыя паведамленьні.",
"translate-page-edit": "рэдагаваць",
- "translate-ext-url": "<hr />Сайт: $1",
"translate-optional": "(неабавязковае)",
"translate-ignored": "(ігнараванае)",
"translate-edit-title": "Рэдагаваньне «$1»",
"translate-edit-definition": "Тэкст паведамленьня",
"translate-edit-translation": "Пераклад",
"translate-edit-contribute": "рэдагаваць",
- "translate-edit-no-information": "''Гэтае паведамленьне ня мае дакумэнтацыі.\nКалі Вы ведаеце, дзе ці як выкарыстоўваецца гэтае паведамленьне, то Вы можаце дапамагчы іншым перакладчыкам, дадаўшы дакумэнтацыю да гэтага паведамленьня.''",
+ "translate-edit-no-information": "<em>Гэтае паведамленьне ня мае дакумэнтацыі.\nКалі Вы ведаеце, дзе ці як выкарыстоўваецца гэтае паведамленьне, то Вы можаце дапамагчы іншым перакладчыкам, дадаўшы дакумэнтацыю да гэтага паведамленьня.</em>",
"translate-edit-information": "Інфармацыя пра паведамленьне ($1)",
"translate-edit-in-other-languages": "Паведамленьне на іншых мовах",
- "translate-edit-committed": "Цяперашні пераклад у праграме",
"translate-edit-warnings": "Папярэджаньне аб няпоўных перакладах",
- "translate-edit-tmsugs": "Прапановы з памяці перакладу",
"translate-edit-tmmatch-source": "Тэкст крыніцы перакладу: $1",
"translate-edit-tmmatch": "$1% супадзеньне",
"translate-use-suggestion": "Замяніць цяперашні пераклад на гэтую прапанову.",
- "translate-edit-nopermission": "Для перакладу паведамленьняў неабходны дазвол.",
- "translate-edit-askpermission": "Запытаць дазвол",
+ "translate-edit-nopermission": "Для перакладу паведамленьняў неабходныя правы перакладніка.",
+ "translate-edit-askpermission": "Атрымаць дазвол",
+ "translate-export-form-format": "Фармат",
"translate-magic-pagename": "Пашыраны пераклад MediaWiki",
"translate-magic-help": "Вы можаце перакладаць псэўданімы спэцыяльных старонак, магічныя словы і прасторы назваў.\n\nПсэўданімы спэцыяльных старонак і магічныя словы могуць мець некалькі перакладаў, якія разьдзяляюцца коскай (,).\nПрасторы назваў могуць мець толькі адзін пераклад.\n\nУ перакладах прастораў назваў радок <code>абмеркаваньне $1</code> мае спэцыяльнае значэньне. <code>$1</code> будзе замененае на назву сайта (напрыклад, <code>{{ns:project_talk}}</code>).\nКалі для Вашай мовы немагчыма стварыць адпаведны выраз бязь зьмены назвы сайта, калі ласка, [[Support|зьвяжыцеся з распрацоўшчыкамі]].\n\nВам неабходна ўваходзіць у групу перакладчыкаў, каб захаваць зьмены.\nЗьмены ня будуць захаваныя, пакуль Вы не націсьніце кнопку ўнізе.",
"translate-magic-module": "Модуль:",
@@ -80,18 +74,18 @@
"translate-magic-words": "Магічныя словы",
"translate-magic-namespace": "Прасторы назваў",
"translate-magic-notsaved": "Ваша рэдагаваньне не было захавана!",
- "translate-magic-errors": "Калі ласка, выпраўце {{PLURAL:$1|1=наступную памылку|наступныя памылкі}} у перакладах:",
- "translate-magic-saved": "Вашыя зьмены былі пасьпяхова захаваны.",
+ "translate-magic-errors": "Калі ласка, выпраўце {{PLURAL:$1|1=наступную памылку|наступныя памылкі}} ў перакладах:",
+ "translate-magic-saved": "Вашыя зьмены былі захаваныя.",
"translate-checks-parameters": "{{PLURAL:$2|1=Наступны парамэтар не выкарыстоўваецца|Наступныя парамэтры не выкарыстоўваюцца}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-parameters-unknown": "{{PLURAL:$2|1=Невядомы парамэтар|Невядомыя парамэтры}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-balance": "Няпарная колькасьць {{PLURAL:$2|дужкі|дужак|дужак}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-links": "{{PLURAL:$2|1=Праблематычная спасылка|Праблематычныя спасылкі}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-links-missing": "{{PLURAL:$2|Адсутнічае наступная $2 спасылка|Адсутнічаюць наступныя $2 спасылкі|Адсутнічаюць наступныя $2 спасылак}}:\n<strong><nowiki>$1</nowiki></strong>",
- "translate-checks-xhtml": "Калі ласка, выпраўце {{PLURAL:$2|1=наступны тэг|наступныя тэгі}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Калі ласка, выпраўце {{PLURAL:$2|1=наступную метку|наступныя меткі}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-plural": "Крынічны тэкст выкарыстоўвае <nowiki>{{PLURAL:}}</nowiki>, а пераклад — не.",
- "translate-checks-plural-forms": "<nowiki>{{PLURAL:}}</nowiki> быў выкарыстаны {{PLURAL:$1|1=з адной формай|з $1 формамі}}, але {{PLURAL:$2|1=падтрымліваецца толькі адна форма|падтрымліваюцца $2 формаў}} (за выняткам формаў 0= і 1=).",
+ "translate-checks-plural-forms": "<nowiki>{{PLURAL:}}</nowiki> быў выкарыстаны {{PLURAL:$1|1=з адной формай|з $1 формамі}}, але {{PLURAL:$2|падтрымліваецца $2 форма|падтрымліваюцца $2 формы|падтрымліваюцца $2 формаў}} (за выняткам формаў 0= і 1=).",
"translate-checks-plural-dupe": "<nowiki>{{PLURAL:}}</nowiki> мае аднолькавыя формы на канцы. <nowiki>{{PLURAL:$1|мэтро|мэтро}}</nowiki> мусіць быць замененае на <nowiki>{{PLURAL:$1|мэтро}}</nowiki>.",
- "translate-checks-pagename": "Прастора назваў зьменена ў крынічным тэксьце",
+ "translate-checks-pagename": "Прастора назваў зьмененая ў крынічным тэксьце",
"translate-checks-format": "Гэты пераклад няслушна перакладае крынічны тэкст альбо ўтрымлівае сынтаксычныя памылкі: $1",
"translate-checks-escape": "Наступнае выдзяленьне можа быць выпадковым: <strong>$1</strong>",
"translate-checks-parametersnotequal": "Колькасьць парамэтраў — {{PLURAL:$1|$1}}, а мусіць быць — $2.",
@@ -108,7 +102,11 @@
"right-translate-import": "імпартаваньне вонкавых перакладаў",
"action-translate-import": "імпартаваньне выкананых у оф-лайне перакладаў",
"right-translate-messagereview": "рэцэнзаваньне перакладаў",
+ "action-translate-messagereview": "рэцэнзаваньне перакладаў",
"right-translate-groupreview": "зьмена стану апрацоўкі групаў паведамленьняў",
+ "translate-rcfilters-translations": "Пераклады",
+ "translate-rcfilters-translations-only-label": "Пераклады",
+ "translate-rcfilters-translations-filter-label": "Не пераклады",
"translate-rc-translation-filter": "Фільтраваць пераклады:",
"translate-rc-translation-filter-no": "Не",
"translate-rc-translation-filter-only": "Паказваць толькі пераклады",
@@ -140,8 +138,7 @@
"translate-statsf-language": "Сьпіс кодаў моваў, падзеленых коскамі:",
"translate-statsf-group": "Сьпіс групаў кодаў, падзелены коскамі:",
"translate-statsf-submit": "Папярэдні прагляд",
- "translate-tag-category": "Старонкі на пераклад",
- "translate-tag-page-desc": "Пераклад вікі-старонкі [[$2|$1]].",
+ "translate-tag-page-desc": "Пераклад вікі-старонкі [[$2|$1]] з $3 ($4).",
"translate-sidebar-alltrans": "На іншых мовах",
"translations": "Усе пераклады",
"translations-summary": "Увядзіце ўнізе назву паведамленьня, каб паглядзець усе даступныя пераклады.",
@@ -181,13 +178,13 @@
"translate-mgs-noempty": "Не паказваць мовы, для якіх няма ніякіх перакладаў",
"translate-mgs-submit": "Паказаць статыстыку",
"translate-mgs-column-language": "Мова",
- "translate-mgs-totals": "Усе мовы разам",
+ "translate-mgs-totals": "Усе $1 {{PLURAL:$1|мова|мовы|моваў}} разам",
"translate-mgs-invalid-group": "Пазначаная група «$1» не існуе.",
"translate-mgs-nothing": "Па вашым запыце статыстыка адсутнічае.",
"supportedlanguages": "Мовы перакладу",
"supportedlanguages-summary": "На гэтай старонцы пададзены сьпіс усіх моваў, якія падтрымлівае {{SITENAME}},\nразам з імёнамі перакладчыкаў, якія перакладаюць на гэтыя мовы.\nТым большым выглядае імя перакладчыка, чым больш перакладаў ён зрабіў.\nКолер падкрэсьленьня сьведчыць, як даўно перакладчык быў актыўны.",
"supportedlanguages-colorlegend": "Значэньне колеру: апошні пераклад выкананы $1 дзень/дні/дзён таму.",
- "supportedlanguages-translators": "{{PLURAL:$2|1=Перакладчык|Перакладчыкі}}: $1",
+ "supportedlanguages-translators": "{{PLURAL:$2|1={{GENDER:$3|Перакладчык|Перакладчыца}}|Перакладчыкі}}: $1",
"supportedlanguages-recenttranslations": "апошнія пераклады",
"supportedlanguages-count": "$1 {{PLURAL:$1|мова|мовы|моваў}} агулам.",
"supportedlanguages-activity": "$1: $2 {{PLURAL:$2|праўка|праўкі|правак}}, апошняя — $3 {{PLURAL:$3|дзень|дні|дзён}} таму",
@@ -213,16 +210,15 @@
"translate-manage-toolong": "Перавышаны максымальны час апрацоўкі у $1 {{PLURAL:$1|сэкунду|сэкунды|сэкундаў}}.\nКалі ласка, адпраўце форму ізноў для працягу апрацоўкі.",
"translate-manage-import-summary": "Імпартаваньне новай вэрсіі з вонкавай крыніцы",
"translate-manage-conflict-summary": "Імпартаваньне новай вэрсіі з вонкавай крыніцы. Калі ласка, праверце яе.",
- "translate-manage-fuzzy-summary": "Азначэньне паведамленьня зьмененае",
"translate-manage-submit": "Выканаць",
"translate-manage-intro-other": "Ніжэй пададзены сьпіс зьменаў у перакладах для мовы $1.\nКалі ласка, праглядзіце зьмены і выберыце пажаданае дзеяньне для кожнага абнаўленьня.\nКалі вы праігнаруеце зьмены, гэта будзе мець толькі часовы эфэкт.",
- "translate-manage-import-ok": "Імпартаваная новая вэрсія старонкі $1.",
- "translate-manage-import-done": "Усё выканана!",
+ "translate-manage-import-ok": "Імпартаваная: $1.",
+ "translate-manage-import-done": "Імпарт выкананы!",
"importtranslations": "Імпарт перакладаў",
"translate-import-from-local": "Загрузіць лякальны файл:",
"translate-import-load": "Загрузіць файл",
"translate-import-err-dl-failed": "Немагчыма загрузіць файл:\n$1",
- "translate-import-err-ul-failed": "Загрузка файла не атрымалася",
+ "translate-import-err-ul-failed": "Не атрымалася загрузіць файл",
"translate-import-err-invalid-title": "Пададзеная назва файла <nowiki>$1</nowiki> — няслушная.",
"translate-import-err-no-such-file": "Файл <nowiki>$1</nowiki> не існуе альбо не загружаны лякальна.",
"translate-import-err-stale-group": "Група паведамленьняў, да якой належыць гэты файл, не існуе.",
@@ -231,9 +227,7 @@
"translate-js-summary": "Апісаньне:",
"translate-js-save": "Захаваць",
"translate-js-next": "Захаваць і адкрыць наступнае",
- "translate-js-nonext": "Гэта было апошняе паведамленьне на гэтай старонцы.",
"translate-js-skip": "Адкрыць наступнае",
- "translate-js-save-failed": "Немагчыма захаваць. Калі ласка, паведаміце пра гэтую памылку.",
"translate-js-history": "Гісторыя перакладу",
"translate-js-support": "Задаць пытаньне",
"translate-js-support-title": "Можаце задаць пытаньне, калі Вам бракуе інфармацыі пра кантэкст паведамленьня.",
@@ -252,19 +246,6 @@
"translate-searchprofile-tooltip": "Шукаць па ўсіх перакладах",
"translate-search-languagefilter": "Мова паведамленьняў:",
"translate-search-nofilter": "любая",
- "translate-messagereview-submit": "Ухваліць",
- "translate-messagereview-progress": "Ухваляем...",
- "translate-messagereview-failure": "Немагчыма ўхваліць: $1",
- "translate-messagereview-done": "Ухваленае",
- "translate-messagereview-reviews": "Ухваленае $1 {{PLURAL:$1|1=удзельнікам|удзельнікамі}}",
- "translate-messagereview-reviewswithyou": "Ухваленае {{PLURAL:$1|1=вамі|$1 удзельнікамі, разам з вамі}}",
- "api-error-invalidrevision": "Пераклад ня знойдзены",
- "api-error-unknownmessage": "Паведамленьне ня знойдзена",
- "api-error-fuzzymessage": "Пераклад пазначаны як недакладны",
- "api-error-owntranslation": "Вы ня можаце ўхваліць уласныя пераклады",
- "translate-messagereview-no-fuzzy": "Няпэўныя пераклады (FUZZY) ня могуць быць ухваленыя.",
- "translate-messagereview-no-own": "Вы ня можаце ўхваліць уласныя пераклады.",
- "translate-messagereview-doit": "Ухваліць гэты пераклад.",
"log-name-translationreview": "Журнал рэцэнзіяў перакладаў",
"log-description-translationreview": "Журнал усіх рэцэнзіяў перакладаў і групаў паведамленьняў.",
"logentry-translationreview-message": "$1 {{GENDER:$2|ухваліў|ухваліла}} пераклад $3",
@@ -277,10 +258,7 @@
"action-translate-sandboxaction": "ажыцьцяўляць ухваленыя дзеяньні адносна ўдзельнікаў у пясочніцы",
"translate-workflow-state-": "(не зададзена)",
"translate-workflowstatus": "Статус: $1",
- "translate-workflow-set-do": "Усталяваць",
"translate-workflow-set-doing": "Адпраўка…",
- "translate-workflow-set-done": "Усталявана!",
- "translate-workflow-set-error-alreadyset": "Запытаны стан ідэнтычны цяперашняму.",
"translate-workflow-autocreated-summary": "Аўтаматычнае стварэньне старонкі стану перакладу «$1»",
"translate-stats-workflow": "Статус",
"translate-workflowgroup-label": "Станы перакладаў",
@@ -289,11 +267,6 @@
"translate-dynagroup-recent-desc": "Гэтая група паведамленьняў зьмяшчае ўсе апошнія пераклады на гэтую мову.\nКарысьней усяго для вычыткі.",
"translate-dynagroup-additions-label": "Апошнія дапаўненьні",
"translate-dynagroup-additions-desc": "Гэтая група зьмяшчае новыя і зьмененыя паведамленьні.",
- "translate-dynagroup-by": "Пераклад выкананы {{GENDER:$1|ўдзельнікам|ўдзельніцай}} $1",
- "translate-dynagroup-byc": "Пераклад выкананы {{GENDER:$1|ўдзельнікам|ўдзельніцай}} $1 ($2)",
- "translate-dynagroup-last": "Апошняе зьмяненьне выкананае {{GENDER:$1|ўдзельнікам|ўдзельніцай}} $1",
- "translate-dynagroup-lastc": "Апошняе зьмяненьне выкананае {{GENDER:$1|ўдзельнікам|ўдзельніцай}} $1 ( $2 )",
- "translate-gethelp": "Дапамога",
"translate-msggroupselector-projects": "Група паведамленьняў",
"translate-msggroupselector-search-placeholder": "Шукаць групы",
"translate-msggroupselector-search-all": "Усе",
@@ -319,7 +292,7 @@
"tux-editor-skip-button-label": "Да наступнага",
"tux-editor-cancel-button-label": "Скасаваць",
"tux-editor-confirm-button-label": "Зацьвердзіць пераклад",
- "tux-editor-shortcut-info": "Націсьніце $1, каб захаваць, або $2, каб прапусьціць і перайсьці да наступнага паведамленьня",
+ "tux-editor-shortcut-info": "Націсьніце «$1», каб захаваць, «$2», каб прапусьціць і перайсьці да наступнага паведамленьня, «$4», каб увесьці апісаньне ці «$3», каб пабачыць іншыя скароты.",
"tux-editor-edit-desc": "Зьмяніць дакумэнтацыю",
"tux-editor-add-desc": "Дадаць дакумэнтацыю",
"tux-editor-suggestions-title": "Прапановы",
@@ -347,7 +320,7 @@
"tux-editor-doc-editor-save": "Захаваць дакумэнтацыю",
"tux-editor-doc-editor-cancel": "Скасаваць",
"tux-messagetable-more-messages": "Яшчэ $1 {{PLURAL:$1|паведамленьне|паведамленьні|паведамленьняў}}",
- "tux-messagetable-loading-messages": "Загрузка {{PLURAL:$1|1=паведамленьня|паведамленьняў}}...",
+ "tux-messagetable-loading-messages": "Загрузка {{PLURAL:$1|1=паведамленьня|паведамленьняў}}…",
"tux-message-filter-placeholder": "Адфільтраваць сьпіс",
"tux-message-filter-result": "$1 {{PLURAL:$1|вынік|вынікі|вынікаў}} на запыт «$2»",
"tux-message-filter-advanced-button": "Пашыраны пошук",
@@ -355,7 +328,7 @@
"tux-proofread-translated-by-self": "Перакладзена вамі",
"tux-empty-list-all": "Гэтая група паведамленьняў пустая",
"tux-empty-list-all-guide": "Выберыце для перакладу іншую групу паведамленьняў",
- "tux-translate-page-no-such-group": "'''Запытаная група не існуе.''' Выберыце іншую групу паведамленьняў.",
+ "tux-translate-page-no-such-group": "<strong>Запытаная група не існуе.</strong> Выберыце іншую групу паведамленьняў.",
"tux-empty-list-translated": "Няма перакладзеных паведамленьняў",
"tux-empty-list-translated-guide": "Вы можаце дапамагчы зь перакладам",
"tux-empty-list-translated-action": "Перакласьці",
@@ -377,7 +350,7 @@
"tux-editor-message-tools-history": "Гісторыя",
"tux-editor-message-tools-translations": "Усе пераклады",
"tux-editor-loading": "Загрузка...",
- "translate-search-more-languages-info": "Яшчэ на $1 {{PLURAL:$1|1=мове|мовах}}",
+ "translate-search-more-languages-info": "Яшчэ на $1 {{PLURAL:$1|мове|мовах}}",
"translate-statsbar-tooltip": "$1% перакладзена, $2% вычытана",
"translate-statsbar-tooltip-with-fuzzy": "$1% перакладзена, $2% вычытана, $3% састарэла",
"translate-search-more-groups-info": "Яшчэ $1 {{PLURAL:$1|група|групы|груп}}"
diff --git a/MLEB/Translate/i18n/core/be.json b/MLEB/Translate/i18n/core/be.json
index 6800c97d..5a4a6617 100644
--- a/MLEB/Translate/i18n/core/be.json
+++ b/MLEB/Translate/i18n/core/be.json
@@ -4,16 +4,13 @@
"Nemo bis",
"Чаховіч Уладзіслаў",
"Дзяніс Тутэйшы",
- "Mikalai Udodau"
+ "Mikalai Udodau",
+ "Irus",
+ "Artsiom91"
]
},
"translate": "Пераклад",
"translate-desc": "[[Special:Translate|Адмысловая старонка]] для перакладу MediaWiki і іншых праграм",
- "translate-taskui-view": "Паказаць усе паведамленні",
- "translate-taskui-untranslated": "Паказаць неперакладзеныя паведамленні",
- "translate-taskui-optional": "Паказаць дадатковыя паведамленні",
- "translate-taskui-acceptqueue": "Толькі паведамленні, якія патрабуюць майго ўхвалення",
- "translate-taskui-reviewall": "Праверыць усе пераклады",
"translate-taskui-export-to-file": "Экспарт у родным фармаце",
"translate-taskui-export-as-po": "Экспарт для афлайнавага перакладу",
"translate-taction-translate": "Пераклад",
@@ -42,7 +39,6 @@
"translate-page-description-hasoptional": "У гэтай групе ўтрымліваюцца дадатковыя паведамленні.\nДадатковыя паведамленні перакладаюцца толькі ў тых выпадках, калі ваша мова прад'яўляе нейкія дадатковыя патрабаванні, — напрыклад, калі дзесьці не павінны выкарыстоўвацца прабелы, ці пры транслітарацыі уласных імёнаў. $1",
"translate-page-description-hasoptional-open": "Паказваць дадатковыя паведамленні.",
"translate-page-edit": "правіць",
- "translate-ext-url": "<hr />Сайт: $1",
"translate-optional": "(неабавязковае)",
"translate-ignored": "(ігнаруемае)",
"translate-edit-title": "Правіць «$1»",
@@ -52,9 +48,7 @@
"translate-edit-no-information": "''Гэта паведамленне не мае апісанні. Калі вы ведаеце, дзе ці як гэта паведамленне выкарыстоўваецца, то можаце дапамагчы іншым перакладчыкам, дадаўшы да яго апісанне.''",
"translate-edit-information": "Інфармацыя пра паведамленне ($1)",
"translate-edit-in-other-languages": "Паведамленне на іншых мовах",
- "translate-edit-committed": "Бягучы пераклад у праграме",
"translate-edit-warnings": "Папярэджанні пра няпоўныя пераклады",
- "translate-edit-tmsugs": "Прапановы з памяці перакладаў",
"translate-edit-tmmatch-source": "Тэкст зыходнага паведамлення для перакладу: $1",
"translate-edit-tmmatch": "$1% адпаведнасць",
"translate-use-suggestion": "Замяніць бягучы тэкст перакладу на гэту падказку.",
@@ -74,7 +68,7 @@
"translate-magic-cm-savefailed": "Не атрымалася запісаць",
"translate-magic-special": "Псеўданімы адмысловых старонак",
"translate-magic-words": "Магічныя словы",
- "translate-magic-namespace": "Прасторы імёнаў",
+ "translate-magic-namespace": "Прасторы назваў",
"translate-magic-notsaved": "Ваша праўка не запісана!",
"translate-magic-errors": "Калі ласка, выправіце {{PLURAL:$1|наступную памылку|наступныя памылкі}} ў перакладзе:",
"translate-magic-saved": "Зробленыя праўкі паспяхова запісаны.",
@@ -87,7 +81,7 @@
"translate-checks-plural": "Арыгінал выкарыстоўвае <nowiki>{{PLURAL:}}</nowiki>, а пераклад — не.",
"translate-checks-plural-forms": "Выразу <nowiki>{{PLURAL:}}</nowiki> {{PLURAL:$1|была дадзена адна форма|былі дадзены $1 формы|былі дадзены $1 формаў}}, але {{PLURAL:$2|падтрымліваецца толькі адна форма|падтрымліваюцца $2 формы|падтрымліваюцца $2 формаў}} (акрамя формаў 0= і 1=).",
"translate-checks-plural-dupe": "У канцы выразу <nowiki>{{PLURAL:}}</nowiki> дзве аднолькавых формы. Замест <nowiki>{{PLURAL:$1|паліто|паліто}}</nowiki> лепш напісаць <nowiki>{{PLURAL:$1|паліто}}</nowiki>.",
- "translate-checks-pagename": "Змянілася вызначэнне прасторы імёнаў",
+ "translate-checks-pagename": "Змянілася вызначэнне прасторы назваў",
"translate-checks-format": "Гэты пераклад не адпавядае вызначэнню ці ўтрымлівае сінтаксічную памылку: $1",
"translate-checks-parametersnotequal": "Колькасць параметраў — $1, а {{PLURAL:$2|павінен|павінна}} быць — $2.",
"translate-checks-malformed": "<nowiki>$1</nowiki> некарэктны.",
@@ -104,6 +98,8 @@
"action-translate-import": "імпарт перакладаў, зробленых у афлайне",
"right-translate-messagereview": "дадгляд перакладаў",
"right-translate-groupreview": "змяняць стан апрацоўкі груп паведамленняў",
+ "translate-rcfilters-translations": "Пераклады",
+ "translate-rcfilters-translations-only-label": "Пераклады",
"translate-rc-translation-filter": "Фільтраваць пераклады:",
"translate-rc-translation-filter-no": "Без абмежаванняў",
"translate-rc-translation-filter-only": "Паказаць толькі пераклады",
@@ -132,6 +128,13 @@
"translate-statsf-count-registrations": "Новыя ўдзельнікі",
"translate-statsf-count-reviews": "Рэцэнзенты перакладу",
"translate-statsf-count-reviewers": "Рэцэнзенты",
+ "supportedlanguages": "Падтрымліваюцца мовы",
+ "supportedlanguages-summary": "На гэтай старонцы прыведзены спіс падтрымоўваных праектам {{SITENAME}} моў\nразам з імёнамі тых, хто тут працуе над перакладамі на гэтыя мовы.\nІмя перакладчыка адлюстроўваецца тым буйней, чым больш правак ён зрабіў.\nПа колер падкрэслення можна зразумець, наколькі даўно перакладчык апошні раз здзяйсняў тут якое-небудзь дзеянне.",
+ "supportedlanguages-count": "Усяго $1 {{PLURAL:$1|мова|мовы|моў}}.",
+ "abusefilter-edit-builder-vars-translate-source-text": "Зыходны тэкст элемента перакладу",
"translate-js-support": "Задаць пытанне",
- "translate-documentation-language": "Дакументацыя паведамлення"
+ "translate-documentation-language": "Дакументацыя паведамлення",
+ "translate-searchprofile": "Пераклады",
+ "tux-editor-in-other-languages": "На іншых мовах",
+ "tux-editor-close-tooltip": "Закрыць"
}
diff --git a/MLEB/Translate/i18n/core/bg.json b/MLEB/Translate/i18n/core/bg.json
index fd1d4169..26e015ce 100644
--- a/MLEB/Translate/i18n/core/bg.json
+++ b/MLEB/Translate/i18n/core/bg.json
@@ -5,17 +5,19 @@
"පසිඳු කාවින්ද",
"StanProg",
"Vodnokon4e",
- "Spiritia"
+ "Spiritia",
+ "ShockD"
]
},
"translate": "Превеждане",
- "translate-desc": "[[Special:Translate|Специална страница]] за превеждане на MediaWiki и др.",
- "translate-taskui-view": "Показване на всички съобщения",
- "translate-taskui-untranslated": "Показване на непреведените съобщения",
- "translate-taskui-optional": "Показване на допълнителните съобщения",
+ "translate-desc": "[[Special:Translate|Специална страница]] за превеждане на МедияУики и др.",
+ "translate-taskui-export-to-file": "Експортиране в собствен формат",
+ "translate-taskui-export-as-po": "Експортиране за офлайн превод",
"translate-taction-translate": "Превеждане",
+ "translate-taction-proofread": "Проверка",
"translate-taction-lstats": "Езикови статистики",
- "translate-taction-export": "Изнасяне",
+ "translate-taction-mstats": "Статистики за групи съобщения",
+ "translate-taction-export": "Експортиране",
"translate-taction-disabled": "Това действие е изключено в това уики.",
"translate-page-no-such-language": "Избраният език е невалиден.",
"translate-page-no-such-group": "Избраната група е невалидна",
@@ -36,7 +38,6 @@
"translate-page-description-legend": "Информация за групата",
"translate-page-description-hasoptional-open": "Показване на допълнителни съобщения.",
"translate-page-edit": "редактиране",
- "translate-ext-url": "<hr />Уебсайт: $1",
"translate-optional": "(незадължително)",
"translate-ignored": "(пренебрегнато)",
"translate-edit-title": "Редактиране на „$1“",
@@ -46,17 +47,20 @@
"translate-edit-no-information": "<em>За това съобщение няма документация.\nАко знаете къде и как се използва, можете да помогнете на останалите преводачи като добавите документация за това съобщение.</em>",
"translate-edit-information": "Информация за съобщението ($1)",
"translate-edit-in-other-languages": "Съобщението на други езици",
- "translate-edit-committed": "Текущ превод в софтуера",
- "translate-edit-warnings": "Забележки за непълни преводи",
+ "translate-edit-warnings": "Предупреждения за непълни преводи",
"translate-edit-tmmatch": "$1% съвпадение",
"translate-use-suggestion": "Заместване на текущия превод с предложението.",
"translate-edit-nopermission": "За превеждане на съобщения са необходими права на преводач.",
"translate-edit-askpermission": "Получаване на позволение",
+ "exporttranslations": "Експортиране на преводи",
+ "translate-export-form-format": "Формат",
+ "translate-export-invalid-format": "Моля, посочете валиден формат.",
+ "translate-export-not-supported": "Експортирането на превод не се поддържа.",
"translate-magic-pagename": "Разширено превеждане на МедияУики",
"translate-magic-module": "Модул:",
"translate-magic-submit": "Извличане",
- "translate-magic-cm-export": "Изнасяне",
- "translate-magic-nothing-to-export": "Няма нищо за изнасяне.",
+ "translate-magic-cm-export": "Експортиране",
+ "translate-magic-nothing-to-export": "Няма нищо за експортиране.",
"translate-magic-cm-to-be": "Желано",
"translate-magic-cm-current": "Текущо",
"translate-magic-cm-original": "Оригинално",
@@ -69,7 +73,7 @@
"translate-magic-namespace": "Имена на именни пространства",
"translate-magic-notsaved": "Редакцията не беше съхранена!",
"translate-magic-errors": "Необходимо е да {{PLURAL:$1|се отстрани следната грешка|се отстранят следните грешки}} в преводите:",
- "translate-magic-saved": "Промените бяха съхранени успешно.",
+ "translate-magic-saved": "Направени от вас промени са съхранени.",
"translate-checks-parameters": "{{PLURAL:$2|Следният параметър не се използва|Следните параметри не се използват}}: <strong><nowiki>$1</nowiki></strong>",
"translate-checks-parameters-unknown": "{{PLURAL:$2|Следният параметър е непознат|Следните параметри са непознати}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-balance": "Съобщението съдържа необичаен брой {{PLURAL:$2|скоби|скоби}}:\n<strong><nowiki>$1</nowiki></strong>",
@@ -78,35 +82,51 @@
"translate-checks-xhtml": "Необходимо е заместване на {{PLURAL:$2|посочения етикет с правилен|посочените етикети с правилни}}: <strong><nowiki>$1</nowiki></strong>",
"translate-checks-plural": "Оригиналното съобщение използва <nowiki>{{PLURAL:}}</nowiki>, а преводът — не.",
"translate-pref-nonewsletter": "Без получаване на бюлетин по е-поща",
+ "translate-pref-editassistlang": "Помощни езици:",
+ "prefs-translate": "Настройки на превеждането",
"right-translate": "Редактиране чрез интерфейса за превод",
+ "right-translate-import": "Импортиране на офлайн превод",
+ "action-translate-import": "импортиране на офлайн превод",
+ "right-translate-messagereview": "Проверка на преводи",
+ "action-translate-messagereview": "проверка на преводи",
+ "translate-rcfilters-translations": "Преводи",
+ "translate-rcfilters-translations-only-label": "Преводи",
+ "translate-rcfilters-translations-only-desc": "Промени от преведни страници.",
+ "translate-rcfilters-translations-filter-label": "Непреводи",
+ "translate-rcfilters-translations-filter-desc": "Всички промени, които не са преводи.",
+ "translate-rcfilters-translations-site-label": "Съобщения от сайта",
+ "translate-rcfilters-translations-site-desc": "Персонализации на съобщения от сайта в именното пространство MediaWiki.",
"translate-rc-translation-filter": "Филтриране на преводите:",
"translate-rc-translation-filter-no": "Без действие",
"translate-rc-translation-filter-only": "Само на преводите",
"translate-rc-translation-filter-filter": "Филтриране на преводите",
"translate-rc-translation-filter-site": "Промени само в съобщенията за сайта",
- "translationstats": "Статистики за преводите",
+ "translationstats": "Статистика за преводите",
"translate-stats-edits": "Редакции",
"translate-stats-users": "Преводачи",
"translate-stats-registrations": "Регистрации",
- "translate-statsf-intro": "Формулярът по-долу слуижи за създаване на статистика. Всички възможности имат минимални и максимални стойности.",
+ "translate-statsf-intro": "Формулярът по-долу служи за генериране на статистика. Всички възможности имат минимални и максимални стойности.",
"translate-statsf-options": "Графични настройки",
"translate-statsf-width": "Ширина в пиксели:",
"translate-statsf-height": "Височина в пиксели:",
"translate-statsf-days": "Времеви период в дни:",
- "translate-statsf-start": "Времеви период в дни:",
+ "translate-statsf-start": "Начална дата:",
+ "translate-statsf-scale": "Прецизност:",
"translate-statsf-scale-months": "Месеци",
"translate-statsf-scale-weeks": "Седмици",
"translate-statsf-scale-days": "Дни",
"translate-statsf-scale-hours": "Часове",
+ "translate-statsf-count": "Мярка:",
"translate-statsf-count-edits": "Брой редакции",
"translate-statsf-count-users": "Активни преводачи",
"translate-statsf-count-registrations": "Нови потребители",
"translate-statsf-language": "Списък с езикови кодове, разделени със запетаи:",
"translate-statsf-group": "Списък с групови кодове, разделени със запетаи:",
"translate-statsf-submit": "Преглед",
- "translate-tag-page-desc": "Превод на страницата [[$2|$1]].",
+ "translate-tag-page-desc": "Превод на страницата [[$2|$1]] от $3 ($4).",
"translate-sidebar-alltrans": "На други езици",
"translations": "Всички преводи",
+ "translations-summary": "Въведете име на съобщение, за да видите наличните му преводи на всички езици.",
"translate-translations-no-message": "\"Съобщение \"$1\" не е достъпно за превод",
"translate-translations-none": "Не съществуват преводи за „$1“",
"translate-translations-count": "{{PLURAL:$1|Открит е $1 превод|Открити са $1 превода}}.",
@@ -136,22 +156,28 @@
"translate-languagestats-overall": "Съобщения за всички групи",
"translate-ls-submit": "Показване на статистики",
"translate-ls-column-group": "Група съобщения",
+ "translate-mgs-pagename": "Статистика за групата съобщения",
"translate-mgs-group": "Група съобщения:",
- "translate-mgs-nocomplete": "Не показвай езици с напълно завършен превод",
- "translate-mgs-noempty": "Не показвай езици, които нямат започнат превод",
+ "translate-mgs-nocomplete": "Скриване на езици с напълно завършен превод",
+ "translate-mgs-noempty": "Скриване на езици без започнат превод",
"translate-mgs-submit": "Показване на статистики",
"translate-mgs-column-language": "Език",
- "translate-mgs-totals": "Всички езици заедно",
+ "translate-mgs-totals": "{{PLURAL:$1|Всеки език|Всички $1 езици заедно}}",
"supportedlanguages": "Поддържани езици",
- "supportedlanguages-translators": "{{PLURAL:$2|Преводач|Преводачи}}: $1",
+ "supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|Преводач|Преводачка}}|Преводачи}}: $1",
"supportedlanguages-recenttranslations": "последни преводи",
"supportedlanguages-count": "$1 {{PLURAL:$1|език|езици}} общо.",
"translate-save": "Съхраняване ($1)",
"translate-jssti-add": "Добавяне към списъка",
+ "translate-smg-notallowed": "Не ви е позволено да извършите това действие.",
+ "translate-smg-nochanges": "Няма промени за обработка.",
+ "translate-smg-right": "Предстоящи промени",
+ "translate-manage-import-diff": "Съобщение $1 | Действия: $2",
"translate-manage-action-import": "Внасяне",
"translate-manage-action-ignore": "Пренебрегване",
"translate-manage-submit": "Изпълняване",
- "translate-manage-import-done": "Всичко е готово!",
+ "translate-manage-intro-other": "По-долу е даден списък на промените по превода на $1.\nМоля, прегледайте промените и изберете желаното действие за всяка промяна.\nАко изберете да игнорирате промените, то това ще бъде временно действие.",
+ "translate-manage-import-done": "Внасянето завърши!",
"importtranslations": "Внасяне на преводи",
"translate-import-load": "Зареждане на файла",
"translate-import-err-ul-failed": "Качването на файла не беше успешно",
@@ -159,37 +185,78 @@
"translate-js-summary": "Резюме:",
"translate-js-save": "Съхраняване",
"translate-js-next": "Съхраняване и отваряне на следващото",
- "translate-js-nonext": "Това беше последното съобщение на тази страница.",
+ "translate-js-skip": "Направо към следващото",
"translate-js-support": "Задаване на въпрос",
"translate-js-support-unsaved-warning": "Имате несъхранени преводи.",
"translate-gs-code": "Код",
"translate-gs-total": "Общо",
"translate-documentation-language": "Документация на съобщението",
"translate-searchprofile": "Преводи",
+ "translate-search-languagefilter": "Филтриране по език:",
+ "log-name-translationreview": "Дневник на проверките на преводи",
+ "log-description-translationreview": "Дневник на всички проверки на преводи и групи съобщения.",
+ "logentry-translationreview-message": "$1 {{GENDER:$2|провери}} превод $3",
"logentry-translationreview-group": "$1 {{GENDER:$2|промени}} състоянието на преводите на $3 на $4 език от „$6“ на „$7“",
+ "group-translate-sandboxed": "Неодобрени преводачи",
"translate-stats-workflow": "Статут",
"translate-dynagroup-recent-label": "Последни преводи",
- "translate-gethelp": "Помощ",
+ "translate-dynagroup-recent-desc": "Тази група съобщения показва всички скорошни преводи на избрания език.\nНай-често се използва при проверка на преводи.",
+ "translate-dynagroup-additions-label": "Последни допълнения",
+ "translate-msggroupselector-projects": "Група съобщения",
+ "translate-msggroupselector-search-placeholder": "Търсене на групи",
"translate-msggroupselector-search-all": "Всички",
+ "translate-msggroupselector-search-recent": "Последни",
+ "translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|подгрупа|подгрупи}}",
"tux-languageselector": "Превеждане на",
"tux-tab-all": "Всички",
+ "tux-tab-untranslated": "Непреведени",
+ "tux-tab-outdated": "Неактуални",
+ "tux-tab-translated": "Преведени",
+ "tux-tab-unproofread": "Непроверени",
"tux-edit": "Редактиране",
"tux-status-optional": "Незадължително",
+ "tux-status-fuzzy": "Неактуален",
"tux-status-translated": "Преведено",
"tux-status-saving": "Съхраняване...",
+ "tux-editor-editsummary-placeholder": "Незадължително резюме",
"tux-editor-save-button-label": "Съхраняване на превода",
- "tux-editor-cancel-button-label": "Отказване",
+ "tux-editor-skip-button-label": "Направо към следващото",
+ "tux-editor-cancel-button-label": "Отказ",
+ "tux-editor-confirm-button-label": "Потвърждаване на превода",
+ "tux-editor-proofread-button-label": "Отбелязване като проверено",
"tux-editor-suggestions-title": "Предложения",
"tux-editor-in-other-languages": "На други езици",
"tux-editor-need-more-help": "Нуждаете се от допълнителна помощ?",
+ "tux-warnings-more": "{{PLURAL:$1|$1 още}}",
"tux-warnings-hide": "скриване",
+ "tux-editor-clear-translated": "Скриване на преведените",
+ "tux-editor-proofreading-mode": "Проверка",
+ "tux-editor-translate-mode": "Списък",
+ "tux-editor-proofreading-hide-own-translations": "Скриване на вашите преводи",
+ "tux-proofread-action-tooltip": "Отбелязване като проверено",
"tux-proofread-edit-label": "Редактиране",
- "tux-editor-doc-editor-cancel": "Отказване",
+ "tux-editor-page-mode": "Страница",
+ "tux-editor-doc-editor-cancel": "Отказ",
+ "tux-messagetable-more-messages": "Още $1 {{PLURAL:$1|съобщение|съобщения}}",
+ "tux-messagetable-loading-messages": "Зареждане на {{PLURAL:$1|съобщение|съобщения}}...",
+ "tux-message-filter-placeholder": "Филтриране на списъка",
"tux-message-filter-advanced-button": "Разширено търсене",
+ "tux-proofread-translated-by-self": "Преведено от Вас",
"tux-empty-list-translated-action": "Превеждане",
+ "tux-empty-no-outdated-messages": "Няма неактуални съобщения",
+ "tux-empty-you-can-help-providing": "Можете да помогнете с нови преводи",
+ "tux-empty-nothing-new-to-proofread": "Няма нищо ново за проверка",
+ "tux-empty-you-can-review-already-proofread": "Можете да проверите преводите, които вече са проверени от други.",
+ "tux-empty-list-other-action": "Проверка на преводите",
"tux-empty-list-other-link": "Показване на всички съобщения",
"tux-editor-close-tooltip": "Затваряне",
+ "tux-editor-expand-tooltip": "Разгръщане",
+ "tux-editor-collapse-tooltip": "Свиване",
+ "tux-editor-message-tools-show-editor": "Показване в уики редактор",
"tux-editor-message-tools-history": "История",
+ "tux-editor-message-tools-delete": "Изтриване",
"tux-editor-message-tools-translations": "Всички преводи",
- "tux-editor-loading": "Зареждане..."
+ "tux-editor-loading": "Зареждане...",
+ "translate-search-more-languages-info": "още $1 {{PLURAL:$1|език|езика}}",
+ "translate-search-more-groups-info": "още $1 {{PLURAL:$1|група|групи}}"
}
diff --git a/MLEB/Translate/i18n/core/bgn.json b/MLEB/Translate/i18n/core/bgn.json
index 21328478..2674ddfe 100644
--- a/MLEB/Translate/i18n/core/bgn.json
+++ b/MLEB/Translate/i18n/core/bgn.json
@@ -1,8 +1,13 @@
{
"@metadata": {
"authors": [
- "Baloch Afghanistan"
+ "Baloch Afghanistan",
+ "Ibrahim khashrowdi"
]
},
- "translate-documentation-language": "پیامی مستندان"
+ "translate-edit-in-other-languages": "ای پیام به دیگه زباناني تا",
+ "translate-sidebar-alltrans": "بِه دیگه زباناني تا",
+ "translate-documentation-language": "پیامی مستندان",
+ "translate-msggroupselector-search-all": "موچین",
+ "tux-tab-all": "موچین"
}
diff --git a/MLEB/Translate/i18n/core/bho.json b/MLEB/Translate/i18n/core/bho.json
index 8d0b7b28..d29fde81 100644
--- a/MLEB/Translate/i18n/core/bho.json
+++ b/MLEB/Translate/i18n/core/bho.json
@@ -2,16 +2,12 @@
"@metadata": {
"authors": [
"Anshumangupta21",
- "Nepaboy"
+ "Nepaboy",
+ "SatyamMishra"
]
},
"translate": "अनुवादन करीं",
"translate-desc": "[[Special:Translate| विशेष पन्ना]] मीडीयाविकि के अनुवादन खातिर",
- "translate-taskui-view": "सभी सन्देश दिखाईं",
- "translate-taskui-untranslated": "अअनुवादित सन्देश दिखाईं",
- "translate-taskui-optional": "वैकल्पिक सन्देश दिखाईं",
- "translate-taskui-acceptqueue": "संदेश, जे केवल हम स्वीकार कर सकीं",
- "translate-taskui-reviewall": "सभी अनुवाद के समीक्षा करीं",
"translate-taskui-export-to-file": "मूल स्वरूप में निर्यात करीं",
"translate-taskui-export-as-po": "ऑफ़लाइन अनुवाद के खातिर निर्यात करीं",
"translate-taction-translate": "अनुवाद करीं",
@@ -50,5 +46,6 @@
"translate-magic-nothing-to-export": "निर्यात करै खातिर किछु नइखे बा।",
"translate-magic-cm-current": "वर्तमान",
"translate-magic-cm-original": "मूल",
+ "translate-documentation-language": "संदेस परलेखन",
"tux-editor-message-tools-delete": "मिटाईं"
}
diff --git a/MLEB/Translate/i18n/core/bn.json b/MLEB/Translate/i18n/core/bn.json
index 1882f92a..3988ef43 100644
--- a/MLEB/Translate/i18n/core/bn.json
+++ b/MLEB/Translate/i18n/core/bn.json
@@ -8,14 +8,13 @@
"Leemon2010",
"Zaheen",
"Tauhid16",
- "Aftabuzzaman"
+ "Aftabuzzaman",
+ "আজিজ",
+ "আফতাবুজ্জামান"
]
},
"translate": "অনুবাদ",
- "translate-taskui-view": "সব বার্তা দেখাও",
- "translate-taskui-untranslated": "অনুবাদ হয়নি এমন বার্তা দেখাও",
- "translate-taskui-optional": "ঐচ্ছিক বার্তা দেখাও",
- "translate-taskui-reviewall": "সমস্ত অনুবাদ পর্যালোচনা করুন",
+ "translate-extensionname": "অনুবাদ",
"translate-taskui-export-to-file": "স্থানীয় ফরম্যাটে আমদানী করুন।",
"translate-taskui-export-as-po": "অফলাইন অনুবাদের জন্য আমদানী করুন",
"translate-taction-translate": "অনুবাদ",
@@ -26,6 +25,8 @@
"translate-taction-disabled": "এই উইকিতে এই কাজ নিস্ক্রিয় রয়েছে।",
"translate-page-no-such-language": "নির্দিস্টকৃত ভাষাটি অবৈধ ছিল।",
"translate-page-no-such-group": "নির্দিস্টকৃত সংঘটি অবৈধ ছিল।",
+ "translate-page-disabled": "এই দলে এই ভাষাটির অনুবাদ অক্ষম করা হয়েছে।\nকারণ:\n\n<em>$1</em>",
+ "translate-language-disabled": "এই ভাষায় অনুবাদ নিষ্ক্রিয় করা হয়েছে।",
"translate-page-settings-legend": "সেটিং",
"translate-page-group": "দল",
"translate-page-language": "ভাষা",
@@ -33,31 +34,37 @@
"translate-page-limit-option": "পাতা প্রতি $1টি {{PLURAL:$1|বার্তা}}",
"translate-submit": "বের করো",
"translate-page-navigation-legend": "পরিভ্রমণ",
- "translate-page-showing": "$3 বার্তার মধ্যে $1 থেকে $2 বার্তা দেখাও",
+ "translate-page-showing": "$3 বার্তার মধ্যে $1 থেকে $2 বার্তা দেখান।",
"translate-page-showing-all": "$1টি {{PLURAL:$1|বার্তা}} দেখাচ্ছে।",
"translate-page-showing-none": "প্রদর্শনের জন্য কোন বার্তা নাই।",
"translate-next": "পরবর্তী পাতা",
"translate-prev": "পূর্ববর্তী পাতা",
"translate-page-description-legend": "দলের তথ্য",
- "translate-page-description-hasoptional-open": "ঐচ্ছিক বার্তা দেখাও।",
+ "translate-page-description-hasoptional-open": "ঐচ্ছিক বার্তাগুলি দেখান।",
"translate-page-edit": "সম্পাদনা",
- "translate-ext-url": "<hr />ওয়েবসাইট: $1",
"translate-optional": "(ঐচ্ছিক)",
"translate-ignored": "(উপেক্ষিত)",
- "translate-edit-title": "সম্পাদনা \"$1\"",
- "translate-edit-definition": "বার্তা সংজ্ঞা",
+ "translate-edit-title": "\"$1\" সম্পাদনা করুন",
+ "translate-edit-definition": "বার্তার সংজ্ঞা",
"translate-edit-translation": "অনুবাদ",
"translate-edit-contribute": "অবদান",
+ "translate-edit-no-information": "<em>এই বার্তাটির কোন নথি নেই।\nআপনি যদি জানেন এই বার্তাটি কোথায় বা কিভাবে ব্যবহার করা হয়েছে, আপনি এই বার্তায় নথি যোগ করে অন্যান্য অনুবাদকদের সাহায্য করতে পারেন।</em>",
"translate-edit-information": "বার্তা সম্পর্কে তথ্য ($1)",
"translate-edit-in-other-languages": "অন্যান্য ভাষায় বার্তা",
- "translate-edit-committed": "সফটওয়্যারে বর্তমান অনুবাদ",
"translate-edit-warnings": "অসম্পূর্ণ অনুবাদের ওপর সতর্কবার্তা",
+ "translate-edit-tmmatch-source": "অনুবাদের জন্য উৎস পাঠ্য: $1",
"translate-edit-tmmatch": "{{formatnum:$1}}% মিল রয়েছে",
+ "translate-use-suggestion": "বর্তমান অনুবাদকে এই পরামর্শটি দ্বারা প্রতিস্থাপন করুন।",
+ "translate-edit-nopermission": "বার্তা অনুবাদ করতে আপনার অনুবাদ অধিকার প্রয়োজন।",
"translate-edit-askpermission": "অনুমতি পান",
+ "exporttranslations": "অনুবাদসমূহ আমদানি",
+ "translate-export-form-format": "বিন্যাস",
+ "translate-magic-pagename": "সম্প্রসারিত মিডিয়াউইকি অনুবাদ",
"translate-magic-module": "মডিউল:",
"translate-magic-submit": "বের করো",
"translate-magic-cm-export": "রপ্তানি",
"translate-magic-nothing-to-export": "এখানে রপ্তানি করার মত কিছু নেই।",
+ "translate-magic-cm-to-be": "নতুন",
"translate-magic-cm-current": "বর্তমান",
"translate-magic-cm-original": "মূল",
"translate-magic-cm-comment": "মন্তব্য:",
@@ -68,22 +75,39 @@
"translate-magic-namespace": "নেমস্পেসের নাম",
"translate-magic-notsaved": "আপনার সম্পাদনা সংরক্ষিত হয়নি!",
"translate-magic-errors": "অনুবাদের মধ্যে নিম্নলিখিত {{PLURAL:$1|ত্রুটি|ত্রুটিসমূহ}} ঠিক করুন:",
- "translate-magic-saved": "আপনার পরিবর্তনসমূহ সফলভাবে সংরক্ষিত হয়েছে।",
+ "translate-magic-saved": "আপনার পরিবর্তনসমূহ সংরক্ষিত হয়েছে।",
"translate-checks-parameters": "নিম্নলিখিত {{PLURAL:$2|প্যারামিটারটি|প্যারামিটারসমূহ}} ব্যবহার করা হয়নি:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-parameters-unknown": "নিম্নলিখিত {{PLURAL:$2|প্যারামিটারটি|প্যারামিটারসমূহ}} অজানা:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "সঠিক পরিমাণে {{PLURAL:$2|বন্ধনী}} দেয়া হয়নি:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "নিম্নলিখিত {{PLURAL:$2|সংযোগটি|$2টি সংযোগ}} সমস্যাসঙ্কুল:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "নিম্নলিখিত {{PLURAL:$2|সংযোগটি|$2টি সংযোগ}} অনুপস্থিত:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "দয়া করে নিম্নলিখিত {{PLURAL:$2|ট্যাগ|ট্যাগগুলি}} সঠিকটি দিয়ে প্রতিস্থাপন করুন:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "সংজ্ঞা <nowiki>{{PLURAL:}}</nowiki> ব্যবহার করেছে কিন্তু অনুবাদ তা করে নি।",
"translate-checks-plural-dupe": "<nowiki>{{PLURAL:}}</nowiki>-এর শেষে অনুরূপ ফরম রয়েছে। <nowiki>{{PLURAL:$1|ভেড়া|ভেড়া}}</nowiki> কে <nowiki>{{PLURAL:$1|ভেড়া}}</nowiki> হিসাবে লিখতে হবে।",
+ "translate-checks-parametersnotequal": "অনুবাদে ব্যবহৃত প্যারামিটার হচ্ছে {{PLURAL:$1|$1}}টি; হওয়া উচিত {{PLURAL:$2|$2}}টি।",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> সঠিক নয়।",
+ "translate-checks-fudforum-syntax": "এই প্রকল্পে <nowiki>$2</nowiki>-এর পরিবর্তে <nowiki>$1</nowiki> ব্যবহার করুন।",
"translate-pref-nonewsletter": "আমাকে ইমেইল নিউজলেটার প্রেরণ করবেন না",
"translate-pref-editassistlang": "সহযোগী ভাষা:",
"prefs-translate": "অনুবাদ অপশন",
+ "right-translate": "অনুবাদ ইন্টারফেস ব্যবহার করে সম্পাদনা",
"right-translate-manage": "বার্তা দল ব্যবস্থাপনা",
"action-translate-manage": "বার্তা দল ব্যবস্থাপনা",
"right-translate-import": "অফলাইন অনুবাদ আমদানি",
"action-translate-import": "অফলাইন অনুবাদসমূহ আমদানি করুন",
"right-translate-messagereview": "অনুবাদ পর্যালোচনা",
+ "action-translate-messagereview": "অনুবাদ পর্যালোচনা করার",
+ "translate-rcfilters-translations": "অনুবাদ",
+ "translate-rcfilters-translations-only-label": "অনুবাদসমূহ",
+ "translate-rcfilters-translations-filter-label": "অনুবাদ নয়",
+ "translate-rcfilters-translations-filter-desc": "সমস্ত পরিবর্তনগুলি যা অনুবাদ নয়।",
+ "translate-rcfilters-translations-site-label": "সাইটের বার্তাসমূহ",
"translate-rc-translation-filter": "অনুবাদ পরিশোধক:",
"translate-rc-translation-filter-no": "কিছু করা হবে না",
- "translate-rc-translation-filter-only": "শুধুমাত্র অনুবাদগুলো দেখাও",
- "translationstats": "অনুবাদ পরিসংখ্যান",
+ "translate-rc-translation-filter-only": "শুধুমাত্র অনুবাদ দেখান",
+ "translate-rc-translation-filter-filter": "অনুবাদ দেখাবেন না",
+ "translate-rc-translation-filter-site": "শুধুমাত্র সাইটের বার্তার পরিবর্তনগুলি",
+ "translationstats": "অনুবাদের পরিসংখ্যান",
"translate-stats-edits": "সম্পাদনাসমূহ",
"translate-stats-users": "অনুবাদক",
"translate-stats-registrations": "নিবন্ধন",
@@ -95,22 +119,25 @@
"translate-statsf-scale-weeks": "সপ্তাহ",
"translate-statsf-scale-days": "দিন",
"translate-statsf-scale-hours": "ঘণ্টা",
+ "translate-statsf-count": "মাপ:",
"translate-statsf-count-edits": "সম্পাদনা সংখ্যা",
"translate-statsf-count-users": "সক্রিয় অনুবাদক",
"translate-statsf-count-registrations": "নতুন ব্যবহারকারী",
"translate-statsf-count-reviews": "অনুবাদ নিরীক্ষকগণ",
"translate-statsf-count-reviewers": "নিরীক্ষকগণ",
"translate-statsf-submit": "প্রাকদর্শন",
- "translate-tag-category": "অনুবাদযোগ্য পাতা",
- "translate-tag-page-desc": "$3 ($4) থেকে উইকি পাতা [[$2|$1]]-এর অনুবাদ।",
+ "translate-tag-page-desc": "$3 ($4) থেকে [[$2|$1]] উইকি পাতার অনুবাদ।",
"translate-sidebar-alltrans": "অন্যান্য ভাষায়",
"translations": "সমস্ত অনুবাদ",
+ "translate-translations-no-message": "\"$1\" অনুবাদযোগ্য বার্তা নয়",
+ "translate-translations-none": "\"$1\"-এর জন্য কোন অনুবাদ নেই",
+ "translate-translations-count": "{{PLURAL:$1|একটি অনুবাদ|$1টি অনুবাদ}} পাওয়া গেছে।",
"translate-translations-fieldset-title": "বার্তা",
"translate-translations-messagename": "নাম:",
"translate-translations-project": "প্রকল্প:",
"translate-translations-history-short": "ই",
"languagestats": "ভাষার পরিসংখ্যান",
- "languagestats-stats-for": "$1 অনুবাদ পরিসংখ্যান ($2)।",
+ "languagestats-stats-for": "$1 অনুবাদের পরিসংখ্যান ($2)।",
"languagestats-recenttranslations": "সাম্প্রতিক অনুবাদ",
"translate-langstats-expand": "প্রসারণ",
"translate-langstats-collapse": "সংকোচন",
@@ -123,37 +150,41 @@
"translate-untranslated": "অনুবাদ হয়নি",
"translate-percentage-complete": "সম্পন্ন",
"translate-percentage-fuzzy": "পুরাতন",
- "translate-ls-submit": "পরিসংখ্যান দেখাও",
+ "translate-ls-submit": "পরিসংখ্যান দেখান",
"translate-ls-column-group": "বার্তা দল",
"translate-mgs-pagename": "বার্তা দলের পরিসংখ্যান",
"translate-mgs-fieldset": "প্রদর্শন পছন্দসমূহ",
"translate-mgs-group": "বার্তা দল:",
- "translate-mgs-submit": "পরিসংখ্যান দেখাও",
+ "translate-mgs-submit": "পরিসংখ্যান দেখান",
"translate-mgs-column-language": "ভাষা",
- "translate-mgs-totals": "সকল ভাষায় একসাথে",
+ "translate-mgs-totals": "একসাথে $1টি {{PLURAL:$1|ভাষায়}}।",
"supportedlanguages": "সমর্থিত ভাষাসমূহ",
"supportedlanguages-colorlegend": "রঙের ব্যাখ্যা: সর্বশেষ অনুবাদ $1 দিন আগে।",
"supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|অনুবাদক}}|অনুবাদকগণ}}: $1",
"supportedlanguages-recenttranslations": "সাম্প্রতিক অনুবাদ",
"supportedlanguages-count": "সর্বমোট $1টি {{PLURAL:$1|ভাষায়}}।",
"supportedlanguages-activity": "$1: $2 {{PLURAL:$2|টি সম্পাদনা}} - সর্বশেষ সম্পাদনা $3 {{PLURAL:$3|দিন}} আগে",
+ "abusefilter-edit-builder-vars-translate-source-text": "অনুবাদ ইউনিটের উৎস পাঠ্য",
"translate-save": "সংরক্ষণ ($1)",
"translate-jssti-add": "তালিকায় যোগ করো",
"managemessagegroups": "বার্তা দল ব্যবস্থাপনা",
"translate-smg-notallowed": "আপনাকে এই কর্ম সঞ্চালনের অনুমতি দেওয়া হয়নি।",
+ "translate-manage-import-diff": "$1 বার্তা | কর্ম: $2",
"translate-manage-import-new": "নতুন বার্তা $1",
"translate-manage-import-deleted": "অপসারিত বার্তা $1",
"translate-manage-action-import": "আমদানি",
"translate-manage-action-ignore": "উপেক্ষা",
+ "translate-manage-import-summary": "বাহ্যিক উৎস থেকে একটি নতুন সংস্করণ আমদানি করা হয়েছে",
+ "translate-manage-conflict-summary": "বাহ্যিক উৎস থেকে একটি নতুন সংস্করণ আমদানি করা হয়েছে।\nপরীক্ষা করুন।",
+ "translate-manage-import-ok": "আমদানিকৃত: $1",
"translate-manage-import-done": "আমদানি সম্পন্ন!",
"importtranslations": "অনুবাদসমূহ আমদানি করুন",
"translate-import-from-local": "স্থানীয় পাতা আপলোড:",
"translate-import-load": "ফাইল লোড কর",
- "translate-import-err-ul-failed": "ফাইল আপলোড সফল হয়নি",
+ "translate-import-err-ul-failed": "ফাইল আপলোড ব্যর্থ হয়েছে",
"translate-js-summary": "সারাংশ:",
"translate-js-save": "সংরক্ষণ",
"translate-js-next": "সংরক্ষণ এবং পরবর্তী",
- "translate-js-nonext": "এটি এই পাতার শেষ বার্তা ছিল।",
"translate-js-skip": "বাতিল ও পরবর্তী",
"translate-js-history": "অনুবাদ ইতিহাস",
"translate-js-support": "প্রশ্ন জিজ্ঞাসা করুন",
@@ -170,32 +201,25 @@
"translate-documentation-language": "বার্তার নথি",
"translate-searchprofile": "অনুবাদসমূহ",
"translate-searchprofile-tooltip": "সকল অনুবাদে অনুসন্ধান",
- "translate-search-languagefilter": "ভাষা অনুযায়ী ফিল্টার:",
- "translate-messagereview-submit": "পর্যালোচিত হিসেবে চিহ্নিত করুন",
- "translate-messagereview-progress": "পর্যালোচিত হিসেবে চিহ্নিত করা হচ্ছে...",
- "translate-messagereview-failure": "পর্যালোচিত হিসেবে চিহ্নিত করা ব্যর্থ হয়েছে: $1",
- "translate-messagereview-done": "পর্যালোচিত",
- "api-error-invalidrevision": "অনুবাদ খুঁজে পাওয়া যায়নি",
- "api-error-unknownmessage": "বার্তা খুঁজে পাওয়া যায়নি",
- "translate-messagereview-no-own": "আপনি আপনার নিজের অনুবাদ পর্যালোচিত হিসাবে চিহ্নিত করতে পারবেন না।",
- "translate-messagereview-doit": "এই অনুবাদটি নিরীক্ষিত হিসবে টীকা দিন।",
+ "translate-searchprofile-note": "[$1 অনুবাদ অনুসন্ধানে] আরও অনুসন্ধান বিকল্প পাওয়া যাবে।",
+ "translate-search-languagefilter": "ভাষা অনুযায়ী ছাঁকনি:",
"log-name-translationreview": "অনুবাদ নিরীক্ষণ লগ",
"logentry-translationreview-message": "$1 $3 অনুবাদ {{GENDER:$2|পর্যালোচনা করেছেন}}",
+ "group-translate-sandboxed": "অননুমোদিত অনুবাদকগণ",
+ "group-translate-sandboxed-member": "{{GENDER:$1|অননুমোদিত অনুবাদক}}",
+ "translate-workflow-state-": "(অনির্ধারিত)",
+ "translate-workflowstatus": "অবস্থা: $1",
"translate-workflow-set-doing": "সেটিং...",
"translate-stats-workflow": "অবস্থা",
"translate-dynagroup-recent-label": "সাম্প্রতিক অনুবাদ",
"translate-dynagroup-additions-label": "সাম্প্রতিক সংযোজনসমূহ",
- "translate-dynagroup-by": "অনুবাদ করেছেন {{GENDER:$1|$1}}",
- "translate-dynagroup-byc": "অনুবাদ করেছেন {{GENDER:$1|$1}} ($2)",
- "translate-dynagroup-last": "সর্বশেষ পরিবর্তন করেছেন {{GENDER:$1|$1}}",
- "translate-dynagroup-lastc": "সর্বশেষ পরিবর্তন করেছেন {{GENDER:$1|$1}} ($2)",
- "translate-gethelp": "সাহায্য",
+ "translate-dynagroup-additions-desc": "এই বার্তার দল নতুন এবং পরিবর্তিত বার্তাগুলি দেখায়।",
"translate-msggroupselector-projects": "বার্তা দল",
"translate-msggroupselector-search-placeholder": "দল অনুসন্ধান",
"translate-msggroupselector-search-all": "সমস্ত",
"translate-msggroupselector-search-recent": "সাম্প্রতিক",
"translate-msggroupselector-view-subprojects": "$1টি {{PLURAL:$1|উপদল}}",
- "tux-languageselector": "যে ভাষায় অনুবাদ করা হচ্ছে:",
+ "tux-languageselector": "অনুবাদের ভাষা",
"tux-tab-all": "সকল",
"tux-tab-untranslated": "অনুবাদ হয়নি",
"tux-tab-outdated": "পুরাতন",
@@ -208,27 +232,31 @@
"tux-status-translated": "অনূদিত",
"tux-status-saving": "সংরক্ষণ করা হচ্ছে ...",
"tux-status-unsaved": "সংরক্ষণ করা হয়নি",
+ "tux-save-unknown-error": "অজানা ত্রুটি দেখা দিয়েছে।",
"tux-editor-placeholder": "আপনার অনুবাদ",
+ "tux-editor-editsummary-placeholder": "ঐচ্ছিক সারাংশ",
"tux-editor-paste-original-button-label": "মূল লেখা যোগ করো",
"tux-editor-discard-changes-button-label": "পরিবর্তন বাতিল",
"tux-editor-save-button-label": "অনুবাদ সংরক্ষণ",
"tux-editor-skip-button-label": "বাতিল ও পরবর্তী",
"tux-editor-cancel-button-label": "বাতিল",
- "tux-editor-confirm-button-label": "অনুবাদ নিশ্চিত করো",
+ "tux-editor-confirm-button-label": "অনুবাদ নিশ্চিত করুন",
+ "tux-editor-proofread-button-label": "পর্যালোচিত হিসেবে চিহ্নিত করুন",
+ "tux-editor-shortcut-info": "সংরক্ষণ করতে \"$1\" চাপুন বা পরবর্তী বার্তায় যেতে \"$2\" চাপুন বা সারাংশ প্রদান করতে \"$4\" চাপুন বা অন্যান্য শর্টকাটের জন্য \"$3\" চাপুন।",
"tux-editor-edit-desc": "নথি সম্পাদনা",
- "tux-editor-add-desc": "নথি যোগ",
+ "tux-editor-add-desc": "নথি যোগ করুন",
"tux-editor-suggestions-title": "পরামর্শসমূহ",
"tux-editor-in-other-languages": "অন্যান্য ভাষায়",
"tux-editor-need-more-help": "আরও সাহায্যের প্রয়োজন?",
"tux-editor-ask-help": "আরও তথ্যের জন্য জিজ্ঞাসা করুন",
"tux-editor-tm-match": "{{formatnum:$1}}% মিল রয়েছে",
- "tux-warnings-more": "{{PLURAL:$1|আরও $1}}",
+ "tux-warnings-more": "{{PLURAL:$1|আরও $1টি}}",
"tux-warnings-hide": "আড়ালে রাখো",
"tux-editor-save-failed": "অনুবাদ সংরক্ষণ ব্যর্থ হয়েছে: $1",
"tux-editor-n-uses": "$1 {{PLURAL:$1|বার}} ব্যবহৃত হয়েছে",
- "tux-editor-message-desc-more": "আরও দেখাও",
- "tux-editor-message-desc-less": "কম দেখাও",
- "tux-editor-clear-translated": "অনূদিত আড়াল করো",
+ "tux-editor-message-desc-more": "আরও দেখান",
+ "tux-editor-message-desc-less": "কম দেখান",
+ "tux-editor-clear-translated": "অনূদিত আড়াল করুন",
"tux-editor-proofreading-mode": "পর্যালোচনা",
"tux-editor-translate-mode": "তালিকা",
"tux-editor-proofreading-hide-own-translations": "আপনার অনুবাদসমূহ আড়াল করুন",
@@ -236,15 +264,15 @@
"tux-proofread-action-tooltip": "পর্যালোচিত হিসেবে চিহ্নিত করুন",
"tux-proofread-edit-label": "সম্পাদনা",
"tux-editor-page-mode": "পাতা",
- "tux-editor-outdated-warning": "এই অনুবাদটি হালনাগাদ করা প্রয়োজন হতে পারে।",
- "tux-editor-outdated-warning-diff-link": "পার্থক্য দেখাও",
+ "tux-editor-outdated-warning": "এই অনুবাদটি হালনাগাদ করার প্রয়োজন হতে পারে।",
+ "tux-editor-outdated-warning-diff-link": "পার্থক্য দেখান",
"tux-editor-doc-editor-placeholder": "বার্তার নথি",
"tux-editor-doc-editor-save": "নথি সংরক্ষণ",
"tux-editor-doc-editor-cancel": "বাতিল",
"tux-messagetable-more-messages": "আরও {{formatnum:$1}}টি {{PLURAL:$1|বার্তা}}",
"tux-messagetable-loading-messages": "{{PLURAL:$1|বার্তা}} লোড হচ্ছে...",
- "tux-message-filter-placeholder": "ফিল্টার তালিকা:",
- "tux-message-filter-result": "\"$2\" এর জন্য $1টি {{PLURAL:$1|ফলাফল}} পাওয়া গেছে",
+ "tux-message-filter-placeholder": "তালিকা ছাঁকুন:",
+ "tux-message-filter-result": "\"$2\"-এর জন্য $1টি {{PLURAL:$1|ফলাফল}} পাওয়া গেছে",
"tux-message-filter-advanced-button": "উন্নত অনুসন্ধান",
"tux-message-filter-optional-messages-label": "ঐচ্ছিক বার্তাগুলি",
"tux-proofread-translated-by-self": "আপনার দ্বারা অনূদিত",
@@ -254,24 +282,28 @@
"tux-empty-list-translated-guide": "আপনি অনুবাদে সাহায্য করতে পারেন",
"tux-empty-list-translated-action": "অনুবাদ",
"tux-empty-no-messages-to-display": "প্রদর্শন করার বার্তা নেই।",
- "tux-empty-show-optional-messages": "ঐচ্ছিক বার্তাগুলি দেখাও",
+ "tux-empty-show-optional-messages": "ঐচ্ছিক বার্তাগুলি দেখান",
"tux-empty-no-outdated-messages": "কোন পুরাতন বার্তা নেই",
"tux-empty-nothing-to-proofread": "পর্যালোচনা করার কিছু নেই",
"tux-empty-you-can-help-providing": "আপনি নতুন অনুবাদ প্রদান করে সাহায্য করতে পারেন",
- "tux-empty-nothing-new-to-proofread": "পর্যালোচনা করার নতুন কিছু নেই",
+ "tux-empty-nothing-new-to-proofread": "পর্যালোচনা করার মত নতুন কিছু নেই",
+ "tux-empty-you-can-review-already-proofread": "আপনি অন্যদের দ্বারা ইতিমধ্যে পর্যালোচিত অনুবাদগুলি পর্যালোচনা করতে পারেন।",
"tux-empty-list-other": "অনুবাদ করার মতো কিছু নেই",
"tux-empty-list-other-guide": "আপনি বিদ্যমান অনুবাদ পর্যালোচনা করে সাহায্য করতে পারেন",
"tux-empty-list-other-action": "অনুবাদ পর্যালোচনা",
- "tux-empty-list-other-link": "সব বার্তা দেখাও",
+ "tux-empty-list-other-link": "সব বার্তা দেখান",
"tux-editor-close-tooltip": "বন্ধ",
"tux-editor-expand-tooltip": "প্রসারণ",
"tux-editor-collapse-tooltip": "সংকোচন",
+ "tux-editor-message-tools-show-editor": "উইকি সম্পাদকে দেখান",
"tux-editor-message-tools-history": "ইতিহাস",
"tux-editor-message-tools-delete": "অপসারণ",
"tux-editor-message-tools-translations": "সমস্ত অনুবাদসমূহ",
+ "tux-editor-message-tools-linktothis": "এই বার্তায় সংযোগ",
"tux-editor-loading": "লোডিং...",
"translate-search-more-languages-info": "আরও $1টি {{PLURAL:$1|ভাষা}}",
"translate-statsbar-tooltip": "{{formatnum:$1}}% অনূদিত, {{formatnum:$2}}% পর্যালোচিত",
"translate-statsbar-tooltip-with-fuzzy": "{{formatnum:$1}}% অনূদিত, {{formatnum:$2}}% পর্যালোচিত, {{formatnum:$3}}% মেয়াদোত্তীর্ণ",
- "translate-search-more-groups-info": "আরও $1টি {{PLURAL:$1|দল}}"
+ "translate-search-more-groups-info": "আরও $1টি {{PLURAL:$1|দল}}",
+ "tux-nojs": "এই সরঞ্জামটি জাভাস্ক্রিপ্ট ছাড়া কাজ করে না। জাভাস্ক্রিপ্ট অক্ষম আছে, তাই কাজ করতে ব্যর্থ হয়েছে, বা এই ব্রাউজারটি অসমর্থিত।"
}
diff --git a/MLEB/Translate/i18n/core/bo.json b/MLEB/Translate/i18n/core/bo.json
index 070f5f58..40844045 100644
--- a/MLEB/Translate/i18n/core/bo.json
+++ b/MLEB/Translate/i18n/core/bo.json
@@ -6,9 +6,6 @@
]
},
"translate": "ཡིག་སྒྱུར།",
- "translate-taskui-view": "ཆ་འཕྲིན་ཧྲིལ་པོ་སྟོན།",
- "translate-taskui-untranslated": "ཡིག་བསྒྱུར་མ་བྱས་པའི་བརྡ་འཕྲིན་སྟོན།",
- "translate-taskui-optional": "འདམ་ཀའི་བརྡ་འཕྲིན་སྟོན།",
"translate-page-disabled": "སྡེ་ཁག་འདིའི་ནང་དུ་སྐད་རིགས་འདིའི་ཡིག་སྒྱུར་ནུས་མེད་ཆགས་འདུག \nརྒྱུ་མཚན་ནི། <em>$1</em>",
"translate-page-settings-legend": "སྒྲིག་བཀོད།",
"translate-page-group": "སྡེ་ཁག",
@@ -24,7 +21,6 @@
"translate-prev": "ཤོག་ངོས་གོང་མ།",
"translate-page-description-legend": "སྡེ་ཁག་ཆ་འཕྲིན།",
"translate-page-edit": "རྩོམ་སྒྲིག",
- "translate-ext-url": "<hr />དྲ་ཚིགས། $1",
"translate-optional": "(འདེམས་ཚན་ཅན།)",
"translate-ignored": "(སྣང་མེད་བྱས་པ།)",
"translate-edit-title": "\"$1\"ལ་རྩོམ་སྒྲིག་བྱེད་པ།",
diff --git a/MLEB/Translate/i18n/core/br.json b/MLEB/Translate/i18n/core/br.json
index dc3a87cb..ecb1a4cd 100644
--- a/MLEB/Translate/i18n/core/br.json
+++ b/MLEB/Translate/i18n/core/br.json
@@ -9,11 +9,6 @@
},
"translate": "Treiñ",
"translate-desc": "[[Special:Translate|Pajenn dibar]] evit treiñ MediaWiki ha pelloc'h",
- "translate-taskui-view": "Diskouez an holl gemennadennoù",
- "translate-taskui-untranslated": "Diskouez ar c'hemennadennoù da dreiñ",
- "translate-taskui-optional": "Diskouez ar c'hemennadennoù diret",
- "translate-taskui-acceptqueue": "Kemennadennoù a c'hallan degemer hepken",
- "translate-taskui-reviewall": "Adwelet an holl droidigezhioù",
"translate-taskui-export-to-file": "Ezporzhiañ er furmad orin",
"translate-taskui-export-as-po": "Ezporzhiañ evit treiñ ezlinenn",
"translate-taction-translate": "Treiñ",
@@ -39,10 +34,9 @@
"translate-next": "Pajenn da-heul",
"translate-prev": "Pajenn gent",
"translate-page-description-legend": "Titouroù diwar-benn ar strollad",
- "translate-page-description-hasoptional": "Kemennadennoù diret zo er strollad kemennadennoù-mañ.\nNe zle ar c'hemennadennoù diret bezañ troet nemet pa vez ezhommoù dibar gant ho yezh evel pa vez arabat ober gant esaouennoù pe evit treuzlizherennañ anvioù divoutin. $1",
+ "translate-page-description-hasoptional": "Kemennadennoù diret zo er strollad kemennadennoù-mañ.\nNe zlefe ar c'hemennadennoù diret bezañ troet nemet pa vez ezhommoù dibar gant ho yezh evel pa vez arabat ober gant esaouennoù pe evit treuzlizherennañ anvioù divoutin. $1",
"translate-page-description-hasoptional-open": "Diskouez ar c'hemennadennoù diret.",
"translate-page-edit": "kemmañ",
- "translate-ext-url": "<hr />Lec'hienn Web : $1",
"translate-optional": "(diret)",
"translate-ignored": "(laosket a-gostez)",
"translate-edit-title": "Kemmañ \"$1\"",
@@ -52,13 +46,11 @@
"translate-edit-no-information": "''N'eus tamm titour ebet diwar-benn ar gemennadenn-mañ. Ma ouzit pelec'h pe benaos emañ da vezañ implijet e c'hallit harpañ troourien all en ur ouzhpennañ titouroù diwar he fenn.''",
"translate-edit-information": "Titouroù diwar-benn ar gemennadenn ($1)",
"translate-edit-in-other-languages": "An hevelep kemennadenn e yezhoù all",
- "translate-edit-committed": "Troidigezh er meziant evit poent",
- "translate-edit-warnings": "Kemennoù diwall diwar-benn an troidigezhioù diglok",
- "translate-edit-tmsugs": "Kinnig a-berzh ar memor treiñ",
+ "translate-edit-warnings": "Kemennoù-diwall diwar-benn an troidigezhioù diglok",
"translate-edit-tmmatch-source": "Testenn orin da dreiñ : $1",
"translate-edit-tmmatch": "$1% kenglotañ",
"translate-use-suggestion": "Erlec'hiañ an droidigezh a-vremañ gant ar c'hinnig-mañ.",
- "translate-edit-nopermission": "Ret eo deoc'h bezañ aotreet a-raok gallout treiñ kemennadennoù.",
+ "translate-edit-nopermission": "Ret eo deoc'h kaout gwirioù treiñ a-raok gallout treiñ kemennadennoù.",
"translate-edit-askpermission": "Kaout an aotre",
"translate-magic-pagename": "Troidigezh MediaWiki astennet",
"translate-magic-help": "Gallout a rit treiñ aliasoù ar pajennoù dibar, ar gerioù burzhudus hag anvioù an esaouennoù anv.\n\nAliasoù ar pajennoù dibar hag ar gerioù burzhudus a c'hall kaout meur a droidigezh.\nDispartiet eo an troidigezhioù dre skejoù (,).\nN'hall anvioù an esaouennoù anv kaout nemet un droidigezh.\n\nTreiñ esaouennoù anv ar raktres <code>$1 talk</code> a c'hall bezañ luziet.\nErlec'hiet eo <code>$1</code> gant anv al lec'hienn (da skouer <code>{{ns:project_talk}}</code>).\nMa n'haller ket sevel lavarennoù reizh en ho yezh hep kemmañ anv al lec'hienn, kit e darempred gant un diorroer [[Support]].\n\nRet eo deoc'h bezañ ezel eus ar strollad troerien evit gallout enrollañ ar c'hemmoù.\nNe vo ket enrollet ar c'hemmoù e-keit ha ne vo ket bet pouezet war ar bouton enrollañ dindan.",
@@ -84,7 +76,7 @@
"translate-checks-balance": "Ampar eo an niver a {{PLURAL:$2|grommelloù|grommelloù}} : <strong>$1</strong>",
"translate-checks-links": "Kudennek eo al {{PLURAL:$2|liamm|liammoù}} da-heul : <strong>$1</strong>",
"translate-checks-links-missing": "Mankout a ra {{PLURAL:$2|al liamm|an $2 liamm}} da-heul :\n<strong><nowiki>$1</nowiki></strong>",
- "translate-checks-xhtml": "Erlec'hiit ar {{PLURAL:$2|valizenn|balizennoù}} da-heul gant ar re a zegouezh mar plij : <strong>$1</strong>",
+ "translate-checks-xhtml": "Erlec'hiit an {{PLURAL:$2|dikedenn|tikedennoù}} da-heul gant ar re a zegouezh : <strong>$1</strong>",
"translate-checks-plural": "Ober a ra an termenadur gant <nowiki>{{PLURAL:}}</nowiki> padal an droidigezh ne ra ket.",
"translate-checks-pagename": "Anv esaouenn kemmet adalek an termenadur",
"translate-checks-format": "Ne glot ket an droidigezh-mañ gant an termenadur pe faziek eo an ereadurezh anezhi : $1",
@@ -135,7 +127,6 @@
"translate-statsf-language": "Roll kodoù yezh, dispartiet gant skejoù :",
"translate-statsf-group": "Roll kodoù strolladoù, dispartiet gant skejoù :",
"translate-statsf-submit": "Rakwelet",
- "translate-tag-category": "Pajennoù da dreiñ",
"translate-tag-page-desc": "Troidigezh ar bajenn wiki [[$2|$1]].",
"translate-sidebar-alltrans": "E yezhoù all",
"translations": "An holl droidigezhioù",
@@ -146,7 +137,7 @@
"translate-translations-fieldset-title": "Kemenn",
"translate-translations-messagename": "Anv :",
"translate-translations-project": "Raktres :",
- "translate-translations-including-no-param": "Merkit un alc'hwez kemenn reizh en arventenn ''ispajenn''",
+ "translate-translations-including-no-param": "Merkit un alc'hwez kemennadenn reizh en arventenn ispajenn",
"translate-translations-history-short": "h",
"languagestats": "Stadegoù yezh",
"languagestats-summary": "Diskouez a ra ar bajenn-mañ ar stadegoù treiñ evit an holl strolladoù kemennadennoù en ur yezh bennak.",
@@ -154,13 +145,13 @@
"languagestats-recenttranslations": "troidigezhioù diwezhañ",
"translate-langstats-incomplete": "Diglok eo darn eus stadegoù ar bajenn-mañ. Ret eo hec'h adkargañ evit kaout stadegoù all.",
"translate-langstats-expand": "dispakañ",
- "translate-langstats-collapse": "Pakañ",
+ "translate-langstats-collapse": "pakañ",
"translate-langstats-expandall": "Dispakañ pep tra",
"translate-langstats-collapseall": "Pakañ pep tra",
"translate-language-code": "Kod yezh",
"translate-language-code-field-name": "Kod yezh :",
"translate-suppress-complete": "Arabat diskouez ar strolladoù kemennadennoù zo bet troet penn-da-benn.",
- "translate-ls-noempty": "Diverkañ penn-da-benn ar strolladoù kemennadennoù n'int ket bet troet",
+ "translate-ls-noempty": "Arabat diskouez ar strolladoù kemennadennoù n'int ket bet troet",
"translate-language": "Yezh",
"translate-total": "Kemennadennoù",
"translate-untranslated": "Didro",
@@ -195,7 +186,7 @@
"translate-smg-submitted": "Hizivaet eo bet termenadurioù an troidigezhioù. Plediñ a reer gant ar c'hemmoù en drekleur.",
"translate-manage-import-diff": "Kemennadenn $1 | Oberoù : $2",
"translate-manage-import-new": "Kemennadenn nevez $1",
- "translate-manage-import-deleted": "Kemennadennoù diverket $1",
+ "translate-manage-import-deleted": "Kemennadenn diverket $1",
"translate-manage-action-import": "Enporzhiañ",
"translate-manage-action-conflict": "Enporzhiañ ha merkañ evel strafuilhet",
"translate-manage-action-ignore": "Lezel a-gostez",
@@ -206,7 +197,6 @@
"translate-manage-toolong": "Aet eur dreist d'an termen pellañ a $1 {{PLURAL:$1|eilenn|eilenn}}.\nAdkasit ar furmskrid evit kenderc'hel gant an tretiñ.",
"translate-manage-import-summary": "Enporzhiañ ur stumm nevez adalek ur vammenn ziavaez.",
"translate-manage-conflict-summary": "Enporzhiañ ur stumm nevez adalek ur vammenn ziavaez.\nGwiriit mar plij.",
- "translate-manage-fuzzy-summary": "Cheñchet eo termenadur ar gemennadenn",
"translate-manage-submit": "Erounit",
"translate-manage-intro-other": "A-is emañ roll ar c'hemmoù treiñ e $1.\nGwiriit anezho ha dibabit ar pezh a fell deoc'h ober evit pep troidigezh.\nMa tibabit chom hep kemer ar c'hemmoù e kont e vint riñset-lip kentañ tro ma vo un ezporzhiadenn nevez.",
"translate-manage-import-ok": "Enporzhiet ez eus bet ur stumm nevez eus ar bajenn $1",
@@ -224,9 +214,7 @@
"translate-js-summary": "Diverrañ :",
"translate-js-save": "Enrollañ",
"translate-js-next": "Enrollañ ha digeriñ an hini da-heul",
- "translate-js-nonext": "Ar gemenadenn ziwezhañ er bajenn-mañ e oa.",
"translate-js-skip": "Mont d'an hini da-heul",
- "translate-js-save-failed": "Ur gudenn zo bet gant an enrollañ. Sachit hon evezh war ar gudenn-mañ.",
"translate-js-history": "Istor an droidigezh",
"translate-js-support": "Sevel ur goulenn",
"translate-js-support-title": "Goulennit un tamm skoazell ma vank titouroù evit treiñ ar gemennadenn-mañ evel m'eo dleet.",
@@ -245,19 +233,6 @@
"translate-searchprofile-tooltip": "Klask en holl droidigezhioù",
"translate-search-languagefilter": "Sil dre yezh :",
"translate-search-nofilter": "Tamm sil ebet",
- "translate-messagereview-submit": "Merkañ evel adwelet",
- "translate-messagereview-progress": "O verkañ evel adwelet...",
- "translate-messagereview-failure": "Oc'h aprouiñ... c'hwitet: $1",
- "translate-messagereview-done": "Adwelet",
- "translate-messagereview-reviews": "Asantet gant {{PLURAL:$1|un implijer|$1 implijer}}",
- "translate-messagereview-reviewswithyou": "Asantet gant {{PLURAL:$1|un implijer|$1 implijer}} o kontañ ac'hanoc'h ivez",
- "api-error-invalidrevision": "N'eo ket bet kavet an droidigezh",
- "api-error-unknownmessage": "N'eo ket bet kavet ar gemennadenn",
- "api-error-fuzzymessage": "Merket eo ar gemennadenn evel strafuilhet",
- "api-error-owntranslation": "N'hallit ket asantiñ d'an troidigezhioù graet ganeoc'h.",
- "translate-messagereview-no-fuzzy": "N'haller ket asantiñ d'an troidigezhioù strafuilhet",
- "translate-messagereview-no-own": "N'hallit ket asantiñ d'ho troidigezhioù graet ganeoc'h.",
- "translate-messagereview-doit": "Degemer an droidigezh-mañ evel un droidigezh reizh.",
"log-name-translationreview": "Marilh adlenn an troidigezhioù",
"log-description-translationreview": "Marilh holl adlennadennoù an troidigezhioù hag ar strolladoù kemennadennoù.",
"logentry-translationreview-message": "$1 {{GENDER:$2|en|he}} deus adwelet troidigezh $3",
@@ -265,23 +240,15 @@
"group-translate-sandboxed-member": "{{GENDER:$1|troer nann-aprouet|troerez nann-aprouet}}",
"translate-workflow-state-": "(diweredekaet)",
"translate-workflowstatus": "Statud: $1",
- "translate-workflow-set-do": "Gweredekaet",
"translate-workflow-set-doing": "O weredekaat...",
- "translate-workflow-set-done": "Gweredekaet !",
- "translate-workflow-set-error-alreadyset": "Heñvel eo ar stad goulennet ouzh an hini zo bremañ.",
"translate-workflow-autocreated-summary": "Krouidigezh emgefre ar bajenn evit stad al lusk labour $1",
"translate-stats-workflow": "Statud",
"translate-workflowgroup-label": "Stad an argerzh labour",
"translate-workflowgroup-desc": "Diskouez a ra ar strollad kemennadennoù-mañ stad lusk labour an troidigezhioù.\nTermenet eo ar stadoù en argemenn gefluniañ $wgTranslateWorkflowStates.",
"translate-dynagroup-recent-label": "Troidigezhioù diwezhañ",
- "translate-dynagroup-recent-desc": "Diskouez a ra ar strollad kemennadennoù-mañ an holl droidigezhioù diwezhañ evit ar yezh-se.\nTalvoudus evit adlenn ha reizhañ.",
+ "translate-dynagroup-recent-desc": "Diskouez a ra ar strollad kemennadennoù-mañ an holl droidigezhioù diwezhañ evit ar yezh-mañ.\nTalvoudus evit al labour reizhañ.",
"translate-dynagroup-additions-label": "Ouzhpennadennoù diwezhañ",
"translate-dynagroup-additions-desc": "Diskouez a ra ar strollad kemennadennoù-mañ ar c'hemennadennoù nevez pe ar re bet kemmet.",
- "translate-dynagroup-by": "Troidigezh graet gant {{GENDER:$1|$1}}",
- "translate-dynagroup-byc": "Troidigezh graet gant {{GENDER:$1|$1}} ($2)",
- "translate-dynagroup-last": "Kemm diwezhañ graet gant {{GENDER:$1|$1}}",
- "translate-dynagroup-lastc": "Kemm diwezhañ graet gant {{GENDER:$1|$1}} ($2)",
- "translate-gethelp": "Skoazell",
"translate-msggroupselector-projects": "Strollad kemennadennoù",
"translate-msggroupselector-search-placeholder": "Klask strolladoù",
"translate-msggroupselector-search-all": "An holl",
@@ -343,7 +310,7 @@
"tux-proofread-translated-by-self": "Troet ganeoc'h",
"tux-empty-list-all": "Goullo eo ar strollad kemennadennoù-mañ",
"tux-empty-list-all-guide": "Dibab ur strollad kemennadennoù all da dreiñ",
- "tux-translate-page-no-such-group": "'''N'eus ket eus ar strollad merket.''' Dibab ur strollad kemennadennoù all.",
+ "tux-translate-page-no-such-group": "<strong>N'eus ket eus ar strollad merket.</strong> Dibab ur strollad kemennadennoù all.",
"tux-empty-list-translated": "Kemennadenn ebet bet troet",
"tux-empty-list-translated-guide": "Hor skoazellañ gant an treiñ a c'hallit ober",
"tux-empty-list-translated-action": "Treiñ",
diff --git a/MLEB/Translate/i18n/core/bs.json b/MLEB/Translate/i18n/core/bs.json
index 20eaaee4..18a40cd4 100644
--- a/MLEB/Translate/i18n/core/bs.json
+++ b/MLEB/Translate/i18n/core/bs.json
@@ -5,24 +5,31 @@
"DzWiki",
"Edinwiki",
"KWiki",
- "Palapa"
+ "Palapa",
+ "Srdjan m",
+ "Semso98"
]
},
"translate": "Prijevod",
"translate-desc": "[[Special:Translate|Posebna stranica]] za prevođenje MediaWiki i još mnogo više",
- "translate-taskui-view": "Pokaži sve poruke",
- "translate-taskui-untranslated": "Pokaži neprevedene poruke",
- "translate-taction-proofread": "Provjeri",
+ "translate-taskui-export-to-file": "Izvezi u izvornom formatu",
+ "translate-taskui-export-as-po": "Izvezi za vanmrežno prevođenje",
+ "translate-taction-translate": "Prijevod",
+ "translate-taction-proofread": "Pregledaj",
"translate-taction-lstats": "Statistike jezika",
+ "translate-taction-mstats": "Statistika grupe",
+ "translate-taction-export": "Izvoz",
+ "translate-taction-disabled": "Radnja je onemogućena na ovom wikiju.",
"translate-page-no-such-language": "Navedeni jezik ne postoji.",
"translate-page-no-such-group": "Navedena grupa ne postoji.",
"translate-page-disabled": "Prijevodi na ovaj jezik u ovoj grupi su onemogućeni. Razlog:\n\n<em>$1</em>",
+ "translate-language-disabled": "Prijevod na ovaj jezik je onemogućen.",
"translate-page-settings-legend": "Postavke",
"translate-page-group": "Grupa",
"translate-page-language": "Jezik",
"translate-page-limit": "Ograničenja",
"translate-page-limit-option": "$1 {{PLURAL:$1|poruka|poruke|poruka}} po stranici",
- "translate-submit": "Pronađi",
+ "translate-submit": "Dobavi",
"translate-page-navigation-legend": "Navigacija",
"translate-page-showing": "Prikazane su poruke od $1 do $2 iz $3.",
"translate-page-showing-all": "Prikaz $1 {{PLURAL:$1|poruke|poruke|poruka}}.",
@@ -30,26 +37,31 @@
"translate-next": "slijedeća stranica",
"translate-prev": "Prethodna stranica",
"translate-page-description-legend": "Informacije o ovoj grupi",
+ "translate-page-description-hasoptional": "Ova grupa sadrži neobavezne poruke.\nNeobavezne poruke treba prevoditi samo kad Vaš jezik ima posebne potrebe;\nnaprimjer, ako ne treba koristiti razmake ili ako treba preslovljavati imena. $1",
+ "translate-page-description-hasoptional-open": "Prikaži neobavezne poruke.",
"translate-page-edit": "uredi",
- "translate-ext-url": "<hr />Web stranica: $1",
"translate-optional": "(opcionalno)",
"translate-ignored": "(zanemareno)",
"translate-edit-title": "Uređivanje \"$1\"",
"translate-edit-definition": "Definicija poruke",
"translate-edit-translation": "Prijevod",
"translate-edit-contribute": "doprinesi",
- "translate-edit-no-information": "''Ova poruka nema pripadajuće dokumentacije. Ako znate gdje ili kako se ova poruka koristi, možete pomoći drugim prevodiocima tako što ćete dodati dokumentaciju za ovu poruku.''",
+ "translate-edit-no-information": "<em>Ova poruka nema pripadajuće dokumentacije.\nAko znate gdje ili kako se ova poruka koristi, možete pomoći drugim prevodiocima tako što ćete dodati dokumentaciju za ovu poruku.</em>",
"translate-edit-information": "Informacije o poruci ($1)",
"translate-edit-in-other-languages": "Poruka na ostalim jezicima",
- "translate-edit-committed": "Trenutni prijevodi softvera",
"translate-edit-warnings": "Upozorenja o nepotpunim prijevodima",
- "translate-edit-tmsugs": "Prijedlozi iz prevodilačke memorije",
+ "translate-edit-tmmatch-source": "Izvorni tekst: $1",
"translate-edit-tmmatch": "$1% slaganja",
"translate-use-suggestion": "Zamijenite trenutni prijevod ovim prijedlogom.",
- "translate-edit-nopermission": "Treba vam dozvola da prevodite poruke.",
+ "translate-edit-nopermission": "Trebaju Vam prevodilačka prava da biste prevodili poruke.",
"translate-edit-askpermission": "Zatraži dozvolu",
+ "exporttranslations": "Izvoz prijevoda",
+ "translate-export-form-format": "Format",
+ "translate-export-invalid-format": "Navedite ispravan format.",
+ "translate-export-not-supported": "Izvoz prijevoda nije podržan.",
+ "translate-export-format-notsupported": "Grupa poruka ne podržava navedeni izvozni format.",
"translate-magic-pagename": "Prošireni MediaWiki prijevod",
- "translate-magic-help": "Možete prevoditi skraćenice posebnih stranica, magične riječi i imena imenskih prostora.\n\nSkraćenice posebnih stranica i magične riječi mogu imati višestruke prijevode.\nPrijevodi su odvojeni zarezom (,).\nImenski prostori mogu imati samo jedan prijevod.\n\nU prijevodima imenskih prostora <code>$1 razgovor</code> je poseban. <code>$1</code> je zamijenjeno sa imenom sajta (naprimjer <code>{{ns:project_talk}}</code>).\nAko nije moguće na Vašem jeziku da se obrazuje valjan izraz bez promjene imena sajta, molimo da kontaktirate razvojnog programera.\n\nMorate pripadati grupi prevodioca da bi spremili promjene.\nPromjene nisu spremljene sve dok ne kliknete dugme spremi koje se nalazi ispod.",
+ "translate-magic-help": "Možete prevoditi pseudonime posebnih stranica, magične riječi i nazive imenskih prostora.\n\nPseudonimi posebnih stranica i magične riječi mogu imati višestruke prijevode.\nPrijevodi su odvojeni zarezom (,).\nImenski prostori mogu imati samo jedan prijevod.\n\nPrevođenje imenskog prostora za razgovor o projektu <code>Razgovor o $1</code> moglo bi biti složeno.\n<code>$1</code> se zamjenjuje s imenom sajta (naprimjer, <code>{{ns:project_talk}}</code>).\nAko na Vašem jeziku nije moguće oblikovati pravilan izraz bez promjene imena sajta, obavijestite nas na stranici [[Support]].\n\nMorate biti prevodilac da biste sačuvali izmjene.\nIzmjene se neće sačuvati sve dok ne kliknete na donje dugme \"Sačuvaj\".",
"translate-magic-module": "Modul:",
"translate-magic-submit": "Pronađi",
"translate-magic-cm-export": "Izvoz",
@@ -66,26 +78,36 @@
"translate-magic-namespace": "Nazivi imenskih prostora",
"translate-magic-notsaved": "Vaše uređivanje nije spremljeno!",
"translate-magic-errors": "Molimo ispravite {{PLURAL:$1|slijedeću grešku|slijedeće greške}} u prevodima:",
- "translate-magic-saved": "Vaše promjene su uspješno sačuvane.",
- "translate-checks-parameters": "Slijedeći {{PLURAL:$2|parametar nije iskorišten|parametri nisu iskorišteni}}:\n<strong><nowiki>$1</nowiki></strong>",
- "translate-checks-parameters-unknown": "Slijedeći {{PLURAL:$2|parametar je nepoznat|parametri su nepoznati}}:\n<strong><nowiki>$1</nowiki></strong>",
- "translate-checks-balance": "Postoji nejednak broj vrsta {{PLURAL:$2|zagrade|zagrada}}:\n<strong><nowiki>$1</nowiki></strong>",
- "translate-checks-links": "{{PLURAL:$2|Slijedeći link je problematičan|Slijedeća $2 linka su problematični|Slijedećih $2 linkova je problematično}}:\n<strong><nowiki>$1</nowiki></strong>",
- "translate-checks-links-missing": "{{PLURAL:$2|Slijedeći link|Slijedeća $2 linka|Slijedeći $2 linkova}} nedostaje:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-magic-saved": "Vaše izmjene su sačuvane.",
+ "translate-checks-parameters": "Sljedeći {{PLURAL:$2|parametar nije iskorišten|parametri nisu iskorišteni}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "Sljedeći {{PLURAL:$2|parametar je nepoznat|parametri su nepoznati}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Neparan broj {{PLURAL:$2|zagrada}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "{{PLURAL:$2|Sljedeći link je problematičan|Sljedeća $2 linka su problematični|Sljedećih $2 linkova je problematično}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "{{PLURAL:$2|Sljedeći link|Sljedeća $2 linka|Sljedeći $2 linkova}} nedostaje:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-xhtml": "Molimo Vas da zamijenite {{PLURAL:$2|slijedeću oznaku|slijedeće oznake}} sa ispravnim:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-plural": "Definicija poruke koristi <nowiki>{{PLURAL:}}</nowiki> ali ga nema u prijevodu.",
+ "translate-checks-plural-forms": "U <nowiki>{{PLURAL:}}</nowiki> {{PLURAL:$1|je upisan jedan oblik|su upisana $1 oblika|je upisano $1 oblika}}, ali on {{PLURAL:$2|podržava samo jedan|podržava samo $2}} (izuzimajući oblike 0= i 1=).",
+ "translate-checks-plural-dupe": "<nowiki>{{PLURAL:}}</nowiki> ima duplicirane oblike na kraju. <nowiki>{{PLURAL:$1|vrata|vrata}}</nowiki> trebalo bi pisati kao <nowiki>{{PLURAL:$1|vrata}}</nowiki>.",
"translate-checks-pagename": "Imenski prostor je promijenjen u odnosu na definiciju",
"translate-checks-format": "Ovaj prijevod nije usklađen sa definicijom ili nema validnu sintaksu: $1",
"translate-checks-escape": "Slijedeće escape-sekvence mogle bi biti slučajne: <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "Broj parametara iznosi {{PLURAL:$1|$1}}; trebao bi biti {{PLURAL:$2|$2}}.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> je pogrešno upisano.",
"translate-checks-fudforum-syntax": "Koristite nowiki>$1</nowiki>umjesto <nowiki>$2</nowiki> u ovom projektu.",
- "translate-pref-nonewsletter": "Ne šalji mi pismo o vijestima putem e-maila",
+ "translate-pref-nonewsletter": "Ne šalji mi pismo s vijestima putem e-pošte",
"translate-pref-editassistlang": "Pomoćni jezici:",
"prefs-translate": "Opcije prevođenja",
"translate-pref-editassistlang-help": "Spisak kodova jezika razdvojenih zarezom.\nPrijevod neke poruke na ovim jezicima prikazuje se dok prevodite.\nPretpostavljeni spisak jezika zavisi od Vašeg jezika.",
"translate-pref-editassistlang-bad": "Nevaljan kod jezika u spisku:\n<nowiki>$1</nowiki>.",
"right-translate": "Uređivanje korištenjem prevodilačkog interfejsa",
"right-translate-manage": "Upravljanje grupama poruka",
+ "action-translate-manage": "upravljate grupama poruka",
"right-translate-import": "Uvoz vanmrežnih prijevoda",
+ "action-translate-import": "uvozite vanmrežne prijevode",
+ "right-translate-messagereview": "Pregled prijevoda",
+ "action-translate-messagereview": "pregledavate prijevode",
+ "right-translate-groupreview": "Mijenjanje stanja radnog toka za grupe poruka",
+ "action-translate-groupreview": "mijenjate stanje radnog toka za grupe poruka",
"translate-rc-translation-filter": "Izdvoji prevode:",
"translate-rc-translation-filter-no": "Ne čini ništa",
"translate-rc-translation-filter-only": "Prikaži samo prijevode",
@@ -95,6 +117,8 @@
"translate-stats-edits": "uređivanja",
"translate-stats-users": "Prevodioci",
"translate-stats-registrations": "Registracije",
+ "translate-stats-reviews": "Pregledi",
+ "translate-stats-reviewers": "Pregledavači",
"translate-statsf-intro": "Možete generisati jednostavnu statistiku uz pomoć ovog obrasca. Sve vrijednosti imaju gornja i donja ograničenja.",
"translate-statsf-options": "Postavke grafikona",
"translate-statsf-width": "Širina u pikselima:",
@@ -110,11 +134,12 @@
"translate-statsf-count-edits": "Broj izmjena",
"translate-statsf-count-users": "Aktivni prevodioci",
"translate-statsf-count-registrations": "Novi korisnici",
+ "translate-statsf-count-reviews": "Pregledi prijevoda",
+ "translate-statsf-count-reviewers": "Pregledavači",
"translate-statsf-language": "Spisak jezičnih kodova razdvojenih zarezom:",
"translate-statsf-group": "Spisak kodova grupa razdvojenih zarezima:",
"translate-statsf-submit": "Pregled",
- "translate-tag-category": "Stranice koje se mogu prevesti",
- "translate-tag-page-desc": "Prijevod wiki stranice [[$2|$1]].",
+ "translate-tag-page-desc": "Prijevod wiki stranice [[$2|$1]] sa $3 ($4).",
"translate-sidebar-alltrans": "Na drugim jezicima",
"translations": "Svi prijevodi",
"translations-summary": "Unesite naziv poruke ispod da bi prikazali sve dostupne prijevode.",
@@ -128,8 +153,10 @@
"translate-translations-history-short": "h",
"languagestats": "Statistike jezika",
"languagestats-summary": "Ova stranica prikazuje statistike prijevoda za sve grupe poruka na određenom jeziku.",
+ "messagegroupstats-summary": "Ova stranica prikazuje statistike o grupi poruka.",
"languagestats-stats-for": "Statistike prevoda za $1 ($2).",
"languagestats-recenttranslations": "nedavni prijevodi",
+ "translate-langstats-incomplete": "Neke statistike navedene na stranici su nepotpune. Ponovo učitajte stranicu da dobijete potpuni pregled.",
"translate-langstats-expand": "proširi",
"translate-langstats-collapse": "sakrij",
"translate-langstats-expandall": "raširi sve",
@@ -137,39 +164,60 @@
"translate-language-code": "Kod jezika",
"translate-language-code-field-name": "Kod jezika:",
"translate-suppress-complete": "Sakrij potpuno prevedene grupe poruka",
+ "translate-ls-noempty": "Ne prikazuj potpuno prevedene grupe poruka",
"translate-language": "Jezik",
"translate-total": "Poruke",
"translate-untranslated": "Neprevedeno",
"translate-percentage-complete": "Završeno",
- "translate-percentage-fuzzy": "Zastarijelo",
+ "translate-percentage-fuzzy": "Zastarjelo",
"translate-languagestats-overall": "Sve grupe poruka zajedno",
+ "translate-ls-submit": "Prikaži statistiku",
+ "translate-ls-column-group": "Grupa poruka",
+ "translate-mgs-pagename": "Statistika grupe",
+ "translate-mgs-fieldset": "Postavke prikaza",
+ "translate-mgs-group": "Grupa poruka:",
+ "translate-mgs-nocomplete": "Ne prikazuj jezike s potpunim prijevodom",
+ "translate-mgs-noempty": "Ne prikazuj jezike bez ikakvih prijevoda",
+ "translate-mgs-submit": "Prikaži statistiku",
"translate-mgs-column-language": "Jezik",
+ "translate-mgs-totals": "Svi jezici zajedno",
+ "translate-mgs-invalid-group": "Navedena grupa $1 ne postoji.",
+ "translate-mgs-nothing": "Nema se šta prikazati za zahtijevane statistike.",
"supportedlanguages": "Podržani jezici",
- "supportedlanguages-summary": "Ova stranica prikazuje spisak svih jezika podržanih na {{SITENAME}}, zajedno sa imenima prevodioca koji rade na tom jeziku.\nAko želite više podataka o pojedinom jeziku, možete kliknuti na link portala tog jezika.\nKlikom na ime prevodioca će vas odvesti na korisničku stranicu tog prevodioca.\n\nAko jezik nije naveden, možete potražiti kako možete početi lokalizacijski projekat za taj jezik putem stranice \"[[Translating:Process|Novi Jezik]]\".\n\nAko prevodite na određeni jezik, a vaše ime nije prikazano, molimo dodajte vaše ime na spisak prevodioca na [[:Category:Languages|portal]] za taj jezik.\nPogledajte traku menija za link na portal za jezik koji ste naveli u svojim postavkama.",
- "supportedlanguages-translators": "{{PLURAL:$2|Prevodioc|Prevodioci}}: $1",
+ "supportedlanguages-summary": "Ova stranica prikazuje sve jezike koji podržavaju {{SITENAME}},\nkao i imena prevodilaca koji rade na tim jezicima.\nVeličina korisničkih imena prevodilaca zavisi od toga koliko je ko poruka preveo.\nBoja linije kojom su podvučena imena naznačava koliko je prevodilac aktivan u posljednje vrijeme.",
+ "supportedlanguages-colorlegend": "Legenda za boju: Posljednji prijevod izvršen prije $1 dana.",
+ "supportedlanguages-portallink": "[$1] $2 – $3",
+ "supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|Prevodilac|Prevoditeljica}}|Prevodioci}}: $1",
"supportedlanguages-recenttranslations": "nedavni prijevodi",
"supportedlanguages-count": "$1 {{PLURAL:$1|jezik|jezika}} ukupno.",
"supportedlanguages-activity": "$1: $2 {{PLURAL:$2|izmjena|izmjene}} - posljednja izmjena prije $3 {{PLURAL:$3|dan|dana}}",
+ "abusefilter-edit-builder-vars-translate-source-text": "Izvorni tekst prevodilačke jedinice",
"translate-save": "Spremi ($1)",
"translate-jssti-add": "Dodaj na spisak",
"managemessagegroups": "Upravljanje grupama poruka",
+ "translate-smg-notallowed": "Nije Vam dozvoljeno da izvršite ovu radnju.",
+ "translate-smg-nochanges": "Nema izmjena koje treba obraditi.",
+ "translate-smg-submit": "Proslijedi izmjene za obradu",
+ "translate-smg-submitted": "Definicije poruka su ažurirane. Izmjene se obrađuju u pozadini.",
+ "translate-smg-more": "Bit će još izmjena za obradu nakon što podnesete ove.",
+ "translate-smg-left": "Sadržaj poruke na wikiju",
+ "translate-smg-right": "Predstojeće izmjene",
"translate-manage-import-diff": "Poruka $1 | Akcije: $2",
"translate-manage-import-new": "Nova poruka $1",
"translate-manage-import-deleted": "Obrisana poruka $1",
"translate-manage-action-import": "Uvezi",
- "translate-manage-action-conflict": "Uvezi i označi za provjeru",
+ "translate-manage-action-conflict": "Uvezi i označi kao zastarjelo",
"translate-manage-action-ignore": "Zanemeri",
- "translate-manage-action-fuzzy": "Uvezi prijevode i označi ih za provjeru",
+ "translate-manage-action-fuzzy": "Uvezi prijevode i označi ih zastarjelim",
"translate-manage-nochanges": "Nema promjena u definicijama poruka u ovoj grupi.",
"translate-manage-nochanges-other": "Nema promjena za ovaj jezik.\nUpotrijebite link ispod za povratak na pregled detalja grupe.",
- "translate-manage-inconsistent": "Otkrivene nedoslijednosti u zahtjevu.\nMolimo provjerite promjene i pokušajte opet.\nDetalji: $1.",
+ "translate-manage-inconsistent": "Otkrivene nedosljednosti u zahtjevu.\nProvjerite izmjene i pokušajte ponovo.\nDetalji: $1.",
"translate-manage-toolong": "Isteklo je maksimalno vrijeme za obradu od $1 {{PLURAL:$1|sekunde|sekunde|sekundi}}.\nMolimo ponovo pošaljite obrazac za nastavak obrade.",
"translate-manage-import-summary": "Uvozim novu verziju iz vanjskog izvora",
"translate-manage-conflict-summary": "Uvozi se nova verzija iz vanjskog izvora. Molimo provjerite.",
- "translate-manage-fuzzy-summary": "Definicija je izmijenjena",
"translate-manage-submit": "Izvrši",
- "translate-manage-intro-other": "Ispod je spisak izmjena na prevodima na $1 jeziku.\nMolimo provjerite izmjene i izaberite akciju koju želite da uradite za svaki prevod.\nAko odaberete da zanemarite izmjene, one će biti prepisane pri slijedećem izvozu.",
- "translate-manage-import-ok": "Uvezena nova verzija stranice $1.",
+ "translate-manage-intro-other": "Ispod je spisak izmjena prijevoda na $1 jezik.\nPregledajte izmjene i izaberite radnju koju želite poduzeti za svaki prijevod.\nAko izaberete zanemariti izmjene, ta će radnja biti samo privremena.",
+ "translate-manage-import-ok": "Uvezeno: $1.",
"translate-manage-import-done": "Uvoz završen!",
"importtranslations": "Uvoz prijevoda",
"translate-import-from-local": "Postavljanje lokalne datoteke:",
@@ -184,12 +232,11 @@
"translate-js-summary": "Sažetak:",
"translate-js-save": "Sačuvaj",
"translate-js-next": "Spremi i idi na slijedeću",
- "translate-js-nonext": "Ovo je bila posljednja poruka na ovoj stranici.",
- "translate-js-skip": "Preskoči na slijedeću",
- "translate-js-save-failed": "Spremanje nije uspjelo. Molimo prijavite ovu grešku.",
- "translate-js-history": "Historija prevoda",
+ "translate-js-skip": "Pređi na sljedeću poruku",
+ "translate-js-history": "Historija prijevoda",
"translate-js-support": "Postavi pitanje",
"translate-js-support-title": "Traži pomoć ako nema dovoljno informacija za pravilan prevod ove poruke.",
+ "translate-js-support-unsaved-warning": "Imate nesačuvanih prijevoda.",
"translate-gs-pos": "Mj.",
"translate-gs-code": "Kôd",
"translate-gs-continent": "Kontinent",
@@ -202,14 +249,32 @@
"translate-documentation-language": "Dokumentacija poruke",
"translate-searchprofile": "Prijevodi",
"translate-searchprofile-tooltip": "Traženje iz svih prevoda",
+ "translate-searchprofile-note": "Dostupno je više opcija za pretragu na [$1 pretrazi prijevoda].",
"translate-search-languagefilter": "Filtriranje po jeziku:",
"translate-search-nofilter": "Bez filtriranja",
- "translate-messagereview-submit": "Označi provjereno",
- "translate-messagereview-done": "Provjereno",
+ "log-name-translationreview": "Zapisnik pregleda prijevoda",
+ "log-description-translationreview": "Zapisnik svih pregleda prijevoda i grupa poruka.",
+ "logentry-translationreview-message": "$1 {{GENDER:$2|potvrdio|potvrdila}} je prijevod $3",
+ "logentry-translationreview-group": "$1 {{GENDER:$2|promijenio|promijenila}} je stanje $4 prijevoda $3 sa $6 na $7",
+ "group-translate-sandboxed": "Neodobreni prevodioci",
+ "group-translate-sandboxed-member": "{{GENDER:$1|neodobreni prevodilac|neodobrena prevoditeljica}}",
+ "right-translate-sandboxmanage": "Upravljanje korisnicima u pješčaniku",
+ "action-translate-sandboxmanage": "upravljate korisnicima u pješčaniku",
+ "right-translate-sandboxaction": "Vršenje radnji na bijeloj listi za korisnike u pješčaniku",
+ "action-translate-sandboxaction": "vršite radnje na bijeloj listi za korisnike u pješčaniku",
+ "translate-workflow-state-": "(nepostavljen)",
+ "translate-workflowstatus": "Status: $1",
+ "translate-workflow-set-doing": "Postavljam...",
+ "translate-workflow-autocreated-summary": "Automatsko stvaranje stranice za radno stanje $1",
"translate-stats-workflow": "Stanje",
+ "translate-workflowgroup-label": "Radna stanja",
+ "translate-workflowgroup-desc": "Ova grupa poruka prikazuje radno stanje prijevoda.\nStanja se određuju varijablom $wgTranslateWorkflowStates.",
+ "translate-dynagroup-recent-label": "Nedavni prijevodi",
+ "translate-dynagroup-recent-desc": "Ova grupa poruka prikazuje sve nedavne prijevode na ovaj jezik.\nOvo je najkorisnije za pregled prijevoda.",
+ "translate-dynagroup-additions-label": "Nedavna dodavanja",
"translate-dynagroup-additions-desc": "Ova grupa poruka prikazuje nove i izmijenjene poruke.",
- "translate-gethelp": "Pomoć",
"translate-msggroupselector-projects": "Grupa poruka",
+ "translate-msggroupselector-search-placeholder": "Pretraži grupe",
"translate-msggroupselector-search-all": "Sve",
"translate-msggroupselector-search-recent": "Nedavne",
"translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|podgrupa|podgrupe}}",
@@ -220,44 +285,89 @@
"tux-tab-translated": "Prevedeno",
"tux-tab-unproofread": "Nepotvrđeno",
"tux-edit": "Uredi",
- "tux-status-optional": "Opcionalno",
+ "tux-status-optional": "Neobavezno",
"tux-status-fuzzy": "Zastarjelo",
- "tux-status-proofread": "Provjereno",
+ "tux-status-proofread": "Pregledano",
"tux-status-translated": "Prevedeno",
"tux-status-saving": "Čuvanje...",
"tux-status-unsaved": "Nesačuvano",
+ "tux-save-unknown-error": "Desila se nepoznata greška.",
"tux-editor-placeholder": "Vaš prijevod",
+ "tux-editor-editsummary-placeholder": "Neobavezan sažetak",
+ "tux-editor-paste-original-button-label": "Zalijepi izvorni tekst",
+ "tux-editor-discard-changes-button-label": "Odbaci izmjene",
"tux-editor-save-button-label": "Sačuvaj prijevod",
- "tux-editor-skip-button-label": "Preskoči na slijedeću",
- "tux-editor-cancel-button-label": "Odustani",
+ "tux-editor-skip-button-label": "Pređi na sljedeću poruku",
+ "tux-editor-cancel-button-label": "Otkaži",
"tux-editor-confirm-button-label": "Potvrdi prijevod",
- "tux-editor-shortcut-info": "Pritisnite \"$1\" kako biste sačuvali ili \"$2\" da pređete na sljedeću poruku ili \"$3\" za druge prečice.",
+ "tux-editor-proofread-button-label": "Označi pregledanim",
+ "tux-editor-shortcut-info": "Pritisnite \"$1\" da sačuvate, \"$2\" da pređete na sljedeću poruku, \"$4\" da upišete sažetak ili \"$3\" za druge prečice.",
"tux-editor-edit-desc": "Uredi dokumentaciju",
"tux-editor-add-desc": "Dodaj dokumentaciju",
"tux-editor-suggestions-title": "Prijedlozi",
"tux-editor-in-other-languages": "Na drugim jezicima",
+ "tux-editor-need-more-help": "Trebate pomoć?",
+ "tux-editor-ask-help": "Zatražite više informacija",
"tux-editor-tm-match": "$1% slaganja",
+ "tux-warnings-more": "{{PLURAL:$1|još $1}}",
"tux-warnings-hide": "sakrij",
- "tux-editor-n-uses": "korišćeno $1 {{PLURAL:$1|put|puta}}",
- "tux-editor-message-desc-more": "Prikaži još",
+ "tux-editor-save-failed": "Čuvanje prijevoda nije uspjelo: $1",
+ "tux-editor-n-uses": "korišteno $1 {{PLURAL:$1|put|puta}}",
+ "tux-editor-message-desc-more": "Prikaži više",
"tux-editor-message-desc-less": "Prikaži manje",
- "tux-editor-proofreading-mode": "Provjeri",
+ "tux-editor-clear-translated": "Sakrij prevedeno",
+ "tux-editor-proofreading-mode": "Pregledaj",
"tux-editor-translate-mode": "Spisak",
- "tux-proofread-action-tooltip": "Označi kao provjereno",
+ "tux-editor-proofreading-hide-own-translations": "Sakrij moje prijevode",
+ "tux-editor-proofreading-show-own-translations": "Prikaži moje prijevode",
+ "tux-proofread-action-tooltip": "Označi pregledanim",
"tux-proofread-edit-label": "Uredi",
"tux-editor-page-mode": "Stranica",
- "tux-editor-outdated-warning-diff-link": "Pokaži razlike",
+ "tux-editor-outdated-warning": "Možda bi trebalo ažurirati ovaj prijevod.",
+ "tux-editor-outdated-warning-diff-link": "Prikaži razlike",
"tux-editor-doc-editor-placeholder": "Dokumentacija poruke",
"tux-editor-doc-editor-save": "Sačuvaj dokumentaciju",
"tux-editor-doc-editor-cancel": "Otkaži",
+ "tux-messagetable-more-messages": "još $1 {{PLURAL:$1|poruka|poruke|poruka}}",
+ "tux-messagetable-loading-messages": "Učitavam {{PLURAL:$1|poruku|poruke}}...",
+ "tux-message-filter-placeholder": "Filtriraj spisak",
+ "tux-message-filter-result": "{{PLURAL:$1|Pronađen $1 rezultat|Pronađena $1 rezultata|Pronađeno $1 rezultata}} za \"$2\"",
"tux-message-filter-advanced-button": "Napredna pretraga",
- "tux-empty-nothing-new-to-proofread": "Ništa novo za provjeru",
+ "tux-message-filter-optional-messages-label": "Neobavezne poruke",
+ "tux-proofread-translated-by-self": "Vaš prijevod",
+ "tux-empty-list-all": "Ova grupa poruka je prazna",
+ "tux-empty-list-all-guide": "Izaberite drugu grupu poruka za prevođenje",
+ "tux-translate-page-no-such-group": "<strong>Naznačena grupa ne postoji.</strong> Izaberite drugu.",
+ "tux-empty-list-translated": "Nema prevedenih poruka",
+ "tux-empty-list-translated-guide": "Možete pomoći u prevođenju",
+ "tux-empty-list-translated-action": "Prevedi",
+ "tux-empty-no-messages-to-display": "Nema poruka za prikazivanje.",
+ "tux-empty-there-are-optional": "Ima neobaveznih poruka koje nisu prikazane na spisku",
+ "tux-empty-show-optional-messages": "Prikaži neobavezne poruke",
+ "tux-empty-no-outdated-messages": "Nema zastarjelih poruka",
+ "tux-empty-nothing-to-proofread": "Nema ništa za pregled",
+ "tux-empty-you-can-help-providing": "Možete pomoći pružanjem novih prijevoda",
+ "tux-empty-nothing-new-to-proofread": "Ništa novo za pregled",
+ "tux-empty-you-can-review-already-proofread": "Možete pregledati prijevode koje su drugi već pregledali.",
+ "tux-empty-list-other": "Nema ništa za prevođenje",
+ "tux-empty-list-other-guide": "Možete pomoći pregledom postojećih prijevoda",
+ "tux-empty-list-other-action": "Pregledaj prijevode",
+ "tux-empty-list-other-link": "Prikaži sve poruke",
"tux-editor-close-tooltip": "Zatvori",
"tux-editor-expand-tooltip": "Proširi",
"tux-editor-collapse-tooltip": "Sklopi",
+ "tux-editor-message-tools-show-editor": "Prikaži u wiki uređivaču",
"tux-editor-message-tools-history": "Historija",
+ "tux-editor-message-tools-delete": "Obriši",
"tux-editor-message-tools-translations": "Svi prijevodi",
- "tux-editor-loading": "Učitavanje...",
+ "tux-editor-message-tools-linktothis": "Link ka poruci",
+ "tux-editor-loading": "Učitavam...",
+ "translate-search-more-languages-info": "još $1 {{PLURAL:$1|jezik|jezika}}",
"translate-statsbar-tooltip": "$1% prevedeno, $2% pregledano",
- "translate-statsbar-tooltip-with-fuzzy": "‎$1% prevedeno, $2% pregledano, $3% zastareno"
+ "translate-statsbar-tooltip-with-fuzzy": "‎$1% prevedeno, $2% pregledano, $3% zastareno",
+ "translate-search-more-groups-info": "još $1 {{PLURAL:$1|grupa|grupe|grupa}}",
+ "translate-ulsdep-title": "Greška u konfiguraciji",
+ "translate-ulsdep-body": "Proširenje Translate ovisi o [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector Univerzalnom jezičkom selektoru].",
+ "tux-session-expired": "Više niste prijavljeni. Prijavite se u drugoj kartici. Druga mogućnost je da prekopirate nesačuvane prijevode, prijavite se, vratite se na ovu stranicu i ponovo upišete svoje prijevode.",
+ "tux-nojs": "Ova stranica zahtijeva JavaScript."
}
diff --git a/MLEB/Translate/i18n/core/ca.json b/MLEB/Translate/i18n/core/ca.json
index 1cbbf612..0eb8e7c4 100644
--- a/MLEB/Translate/i18n/core/ca.json
+++ b/MLEB/Translate/i18n/core/ca.json
@@ -14,16 +14,13 @@
"Vriullop",
"XVEC",
"පසිඳු කාවින්ද",
- "Jmarchn"
+ "Jmarchn",
+ "Macofe",
+ "Cedric31"
]
},
"translate": "Tradueix",
"translate-desc": "[[Special:Translate|Pàgina especial]] per a traduir el MediaWiki i altres coses",
- "translate-taskui-view": "Mostra tots els missatges",
- "translate-taskui-untranslated": "Mostra missatges per traduir",
- "translate-taskui-optional": "Mostra missatges opcionals",
- "translate-taskui-acceptqueue": "Només els missatges que pugui marcar com a revisats",
- "translate-taskui-reviewall": "Revisa totes les traduccions",
"translate-taskui-export-to-file": "Exporta a format natiu",
"translate-taskui-export-as-po": "Exporta-ho per traduir-ho fora de línia",
"translate-taction-translate": "Tradueix",
@@ -52,7 +49,6 @@
"translate-page-description-hasoptional": "Aquest grup de missatges conté missatges adicionals.\nEls missatges opcionals només s'han de traduir quan el vostre idioma tingui requeriments especials\ncom ara no fer servir espais o transliterant noms propis. $1",
"translate-page-description-hasoptional-open": "Mostra els missatges opcionals.",
"translate-page-edit": "modifica",
- "translate-ext-url": "<hr />Lloc web: $1",
"translate-optional": "(opcional)",
"translate-ignored": "(ignorat)",
"translate-edit-title": "Edita «$1»",
@@ -62,14 +58,14 @@
"translate-edit-no-information": "<em>Aquest missatge no té documentació.\nSi sabeu on o com és usat aquest missatge podeu ajudar la resta de traductors afegint-hi la documentació.</em>",
"translate-edit-information": "Informació sobre el missatge ($1)",
"translate-edit-in-other-languages": "El missatge en altres idiomes",
- "translate-edit-committed": "Traducció utilitzada actualment pel programa",
"translate-edit-warnings": "Avisos de traducció incompleta",
- "translate-edit-tmsugs": "Suggeriments de la memòria de traducció",
"translate-edit-tmmatch-source": "Text original de la traducció: $1",
"translate-edit-tmmatch": "coincidència del $1%",
"translate-use-suggestion": "Substitueixi la traducció actual amb aquest suggeriment.",
"translate-edit-nopermission": "Necessiteu permisos de traducció per a traduir missatges.",
"translate-edit-askpermission": "Obté permís",
+ "exporttranslations": "Exporta les traduccions",
+ "translate-export-form-format": "Format",
"translate-magic-pagename": "Traducció ampliada del MediaWiki",
"translate-magic-help": "Aquí podeu traduir els àlies de les pàgines especials, les paraules màgiques i els títols dels diferents espais de noms (''namespaces'').\n\nEls àlies de les pàgines especials i les paraules màgiques poden tenir múltiples traduccions. Separeu-les per una coma (,). Els espais de noms només poden tenir una traducció.\n\nDins les traduccions dels espais de noms, la <code>$1 talk</code> és especial. <code>$1</code> es substitueix pel nom del projecte (per exemple <code>{{ns:project_talk}}</code>). Si no és possible fer-ho així en el vostre idioma sense canviar la forma gramatical del nom del projecte, siusplau contacteu amb nosaltres: [[Support]].\n\nHeu de tenir permisos de traductor per a desar els canvis, que no es guardaran fins que no cliqueu el botó corresponent.",
"translate-magic-module": "Mòdul:",
@@ -97,6 +93,7 @@
"translate-checks-xhtml": "{{PLURAL:$2|Reemplaceu l'etiqueta següent per la correcta|Reemplaceu les etiquetes següents per les correctes}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-plural": "La definició utilitza <nowiki>{{PLURAL:}}</nowiki> i en canvi la traducció no.",
"translate-checks-plural-forms": "<nowiki>{{PLURAL:}}</nowiki> es va donar {{PLURAL:$1|una forma|$1 formes}} però {{PLURAL:$2|només una forma és|$2 formes són}} compatible/s (excloent les formes 0= i 1=)",
+ "translate-checks-plural-dupe": "<nowiki>{{PLURAL:}}</nowiki> conté una forma duplicada al final. <nowiki>{{PLURAL:$1|atles|atles}}</nowiki> s'hauria d'escriure <nowiki>{{PLURAL:$1|atles}}</nowiki>.",
"translate-checks-pagename": "S’ha canviat l’espai de noms de la definició",
"translate-checks-format": "Aquesta traducció no segueix la definició o té una sintaxi invàlida: $1",
"translate-checks-escape": "Les següents seqüències d'escapament poden ser accidentals: <strong>$1</strong>",
@@ -114,6 +111,7 @@
"right-translate-import": "Importar traduccions fora de línia",
"action-translate-import": "importa les traduccions fetes fora de línia",
"right-translate-messagereview": "Revisa les traduccions",
+ "action-translate-messagereview": "revisa les traduccions",
"right-translate-groupreview": "Canvia l'estat del flux de treball dels grups de missatges",
"translate-rc-translation-filter": "Filtra traduccions:",
"translate-rc-translation-filter-no": "No facis res",
@@ -146,7 +144,6 @@
"translate-statsf-language": "Codis d'idiomes separats per comes:",
"translate-statsf-group": "Codis de grups separats per comes:",
"translate-statsf-submit": "Previsualització",
- "translate-tag-category": "Pàgines traduïbles",
"translate-tag-page-desc": "Traducció de la pàgina wiki [[$2|$1]] des de $3 ($4).",
"translate-sidebar-alltrans": "En altres idiomes",
"translations": "Totes les traduccions",
@@ -191,7 +188,7 @@
"translate-mgs-totals": "Tots els idiomes junts",
"translate-mgs-invalid-group": "El grup $1 especificat no existeix.",
"translate-mgs-nothing": "Res a mostrar per l'estadística soŀlicitada.",
- "supportedlanguages": "Idiomes compatibles",
+ "supportedlanguages": "Llengües admeses",
"supportedlanguages-summary": "Aquesta pàgina mostra una llista de tots els idiomes que es poden utilitzar a {{SITENAME}} juntament amb els noms dels traductors que treballen en cadascun d'ells.\nEl nom del traductor apareix més gran com més traduccions hagi contribuït a fer.\nEl color del subratllat indica si el traductor ha estat actiu recentment.",
"supportedlanguages-colorlegend": "Llegenda per al color: La darrera traducció va ser fa $1 dies.",
"supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|Traductor}}|Traductors}}: $1",
@@ -202,7 +199,7 @@
"translate-jssti-add": "Afegeix a la llista",
"managemessagegroups": "Gestió del grup de missatges",
"translate-smg-notallowed": "No teniu permís per dur a terme aquesta acció.",
- "translate-smg-nochanges": "No hi han canvis a processar.",
+ "translate-smg-nochanges": "No hi ha canvis per processar.",
"translate-smg-submit": "Penja els canvis per al seu processament",
"translate-smg-submitted": "Les definicions dels missatges s'han actualitzat. Els canvis estàn sent processats al rerefons.",
"translate-smg-left": "Contingut del missatge al wiki",
@@ -220,7 +217,6 @@
"translate-manage-toolong": "El temps màxim de processament de $1 s'ha excedit {{PLURAL:$1|segon|segons}} \nSiusplau reintroduiu el formulari per continuar el processament.",
"translate-manage-import-summary": "Important una nova versió des d'una font externa",
"translate-manage-conflict-summary": "Important una nova versió des d'una font externa.\nSiusplau, comproveu-ho.",
- "translate-manage-fuzzy-summary": "La definició del missatge ha canviat",
"translate-manage-submit": "Executa",
"translate-manage-import-ok": "Importat: $1",
"translate-manage-import-done": "S'ha completat la importació!",
@@ -232,14 +228,12 @@
"translate-import-err-invalid-title": "El nom del fitxer <nowiki>$1</nowiki> no és vàlid.",
"translate-import-err-no-such-file": "El fitxer <nowiki>$1</nowiki>no existeix o no s'ha carregat localment.",
"translate-import-err-stale-group": "El grup de missatges al qual aquest fitxer pertany no existeix.",
- "translate-import-err-no-headers": "El fitxer no és un arxiu Gettext ben formatejat en el format de l'extensió de traducció:\n\nImpossible determinar el grup de missatges i l'idioma des dels encapçalaments.",
+ "translate-import-err-no-headers": "Aquest no és un fitxer Gettext ben formatat en el format d’extensió del Translate:\n\nNo s’ha pogut determinar el grup de missatges i l’idioma des dels encapçalaments.",
"translate-import-err-warnings": "El fitxer no està correctament formatejat.\nAssegureu-vos que el vostre editor no elimini els camps msgctxt.\nDetalls: $1",
"translate-js-summary": "Resum:",
"translate-js-save": "Desa",
"translate-js-next": "Desa i passa al següent",
- "translate-js-nonext": "Aquest era el darrer missatge d'aquesta pàgina.",
"translate-js-skip": "Salta al següent",
- "translate-js-save-failed": "S’ha produït un error en desar. Informeu d’aquest error.",
"translate-js-history": "Historial de traducció",
"translate-js-support": "Feu una pregunta",
"translate-js-support-title": "Demaneu ajuda si trobeu que no hi ha prou informació per a traduir correctament aquest missatge.",
@@ -258,19 +252,6 @@
"translate-searchprofile-tooltip": "Cerca a totes les traduccions",
"translate-search-languagefilter": "Filtra per idioma:",
"translate-search-nofilter": "Sense filtrat",
- "translate-messagereview-submit": "Marca-ho com a revisat",
- "translate-messagereview-progress": "Marcant-ho com a revisat...",
- "translate-messagereview-failure": "Error en marcar-ho com a revisat: $1",
- "translate-messagereview-done": "Revisat",
- "translate-messagereview-reviews": "Revisat per {{PLURAL:$1|un usuari|$1 usuaris}}",
- "translate-messagereview-reviewswithyou": "Revisat per {{PLURAL:$1|tu|$1 usuaris, tu inclòs}}",
- "api-error-invalidrevision": "No s'ha trobat la traducció",
- "api-error-unknownmessage": "No s'ha trobat el missatge",
- "api-error-fuzzymessage": "La traducció està marcada com a imprecisa",
- "api-error-owntranslation": "No podeu marcar com a revisades les vostres pròpies traduccions",
- "translate-messagereview-no-fuzzy": "Les traduccions imprecises no es poden marcar com a revisades.",
- "translate-messagereview-no-own": "No podeu marcar com a revisades les vostres pròpies traduccions.",
- "translate-messagereview-doit": "Marca aquesta traducció com a revisada.",
"log-name-translationreview": "Historial de revisió de la traducció",
"log-description-translationreview": "Historial de totes les revisions a les traduccions i als grups de missatges.",
"logentry-translationreview-message": "$1 {{GENDER:$2|ha acceptat}} la traducció $3",
@@ -283,10 +264,7 @@
"action-translate-sandboxaction": "executa les accions específiques per els usuaris amb mode sandbox.",
"translate-workflow-state-": "(no especificat)",
"translate-workflowstatus": "Estat: $1",
- "translate-workflow-set-do": "Especificar",
"translate-workflow-set-doing": "Especificant...",
- "translate-workflow-set-done": "Especificat!",
- "translate-workflow-set-error-alreadyset": "L'estat que demaneu és idèntic al estat actual.",
"translate-workflow-autocreated-summary": "Creació automàtica d'una pàgina per l'estat del flux de treball $1",
"translate-stats-workflow": "Estat",
"translate-workflowgroup-label": "Estats dels fluxs de treball",
@@ -294,11 +272,6 @@
"translate-dynagroup-recent-desc": "Aquest grup de missatges mostra totes les traduccions recents a aquest idioma.\nEl més útil per a les tasques de revisió.",
"translate-dynagroup-additions-label": "Adicions recents",
"translate-dynagroup-additions-desc": "Aquest grup de missatges mostra els missatges nous i els que han estat canviats",
- "translate-dynagroup-by": "Traduït per {{GENDER:$1|$1}}",
- "translate-dynagroup-byc": "Traducció feta per {{GENDER:$1|$1}} ($2)",
- "translate-dynagroup-last": "Últim canvi fet per {{GENDER:$1|$1}}",
- "translate-dynagroup-lastc": "Últim canvi per {{GENDER:$1|$1}} ($2)",
- "translate-gethelp": "Ajuda",
"translate-msggroupselector-projects": "Grup de missatges",
"translate-msggroupselector-search-placeholder": "Cerca als grups",
"translate-msggroupselector-search-all": "Tots",
@@ -317,14 +290,17 @@
"tux-status-translated": "Traduït",
"tux-status-saving": "S’està desant…",
"tux-status-unsaved": "No desat",
+ "tux-save-unknown-error": "S'ha produït un error desconegut.",
"tux-editor-placeholder": "La vostra traducció",
+ "tux-editor-editsummary-placeholder": "Resum opcional",
"tux-editor-paste-original-button-label": "Enganxa el text original",
"tux-editor-discard-changes-button-label": "Descarta els canvis",
"tux-editor-save-button-label": "Desa la traducció",
"tux-editor-skip-button-label": "Vés al següent",
"tux-editor-cancel-button-label": "Cancel·la",
"tux-editor-confirm-button-label": "Confirma la traducció",
- "tux-editor-shortcut-info": "Premeu «$1» per desar, «$2» per anar al següent missatge o bé «$3» per més dreceres.",
+ "tux-editor-proofread-button-label": "Marca com a revisada",
+ "tux-editor-shortcut-info": "Premeu «$1» per desar, «$2» per anar al següent missatge, «$4» per proporcionar un resum o «$3» per a altres dreceres.",
"tux-editor-edit-desc": "Edita la documentació",
"tux-editor-add-desc": "Afegiu documentació",
"tux-editor-suggestions-title": "Suggeriments",
@@ -379,6 +355,7 @@
"tux-editor-close-tooltip": "Tanca",
"tux-editor-expand-tooltip": "Amplia",
"tux-editor-collapse-tooltip": "Tanca",
+ "tux-editor-message-tools-show-editor": "Mostra en l'editor wiki",
"tux-editor-message-tools-history": "Historial",
"tux-editor-message-tools-delete": "Suprimeix",
"tux-editor-message-tools-translations": "Totes les traduccions",
@@ -387,5 +364,6 @@
"translate-statsbar-tooltip": "$1% traduït, $2% revisat",
"translate-statsbar-tooltip-with-fuzzy": "$1% traduït, $2 % revisat, $3% desfasat",
"translate-search-more-groups-info": "$1 {{PLURAL:$1|grup|grups}} més",
- "translate-ulsdep-title": "Error de configuració"
+ "translate-ulsdep-title": "Error de configuració",
+ "tux-nojs": "Aquesta pàgina requereix JavaScript."
}
diff --git a/MLEB/Translate/i18n/core/cdo.json b/MLEB/Translate/i18n/core/cdo.json
index 68553864..95e42165 100644
--- a/MLEB/Translate/i18n/core/cdo.json
+++ b/MLEB/Translate/i18n/core/cdo.json
@@ -1,8 +1,10 @@
{
"@metadata": {
"authors": [
- "唐吉訶德的侍從"
+ "唐吉訶德的侍從",
+ "Davidzdh"
]
},
- "translate-pref-editassistlang-help": "使逗號來分隔語言代碼。敆汝翻譯其辰候,會同時顯示茲幾隻語言其訊息。 預設會使汝其語言。"
+ "translate-pref-editassistlang-help": "使逗號來分隔語言代碼。敆汝翻譯其辰候,會同時顯示茲幾隻語言其訊息。 預設會使汝其語言。",
+ "translate-documentation-language": "Séng-sék suók-mìng-cṳ̄"
}
diff --git a/MLEB/Translate/i18n/core/ce.json b/MLEB/Translate/i18n/core/ce.json
index 0ab25704..56312b9f 100644
--- a/MLEB/Translate/i18n/core/ce.json
+++ b/MLEB/Translate/i18n/core/ce.json
@@ -2,16 +2,12 @@
"@metadata": {
"authors": [
"Sasan700",
- "Умар"
+ "Умар",
+ "Исмаил Садуев"
]
},
"translate": "Гоч",
- "translate-desc": "[[Special:Translate|Белхан агӀо]] MediaWiki гочян а кхин программийн а",
- "translate-taskui-view": "Гайта берриге хаамаш",
- "translate-taskui-untranslated": "Гочбанза хаамаш гайта",
- "translate-taskui-optional": "Кхин тӀе хаамаш гайта",
- "translate-taskui-acceptqueue": "Со хьажаре хьоьжуш болу хаамаш бен",
- "translate-taskui-reviewall": "Массо гочдиначарга хьажар",
+ "translate-desc": "[[Special:Translate|Белхан агӀо]] MediaWiki гочян а, кхин программийн а",
"translate-taskui-export-to-file": "Шин форматехь экспорт",
"translate-taskui-export-as-po": "Оффлайн гочдаран экспорт",
"translate-taction-translate": "Гоч",
@@ -22,7 +18,7 @@
"translate-taction-disabled": "ХӀара дешдерг хӀокху вики чохь дӀадайана ду.",
"translate-page-no-such-language": "Меттан код нийса яц",
"translate-page-no-such-group": "Тоба нийса билгалйина яц.",
- "translate-page-disabled": "ХӀокху декъан чохь хӀокху меттан гочдарш дӀадайана ду. Бахьна:\n\n<em>$1</em>",
+ "translate-page-disabled": "ХӀокху декъан чохь хӀокху меттан гочдарш дӀадайана ду. Бахьана:\n\n<em>$1</em>",
"translate-language-disabled": "ХӀокху матте гоч ян йиш дӀаяйина.",
"translate-page-settings-legend": "Параметраш",
"translate-page-group": "Тоба",
@@ -39,7 +35,6 @@
"translate-page-description-legend": "Тобанах хаам",
"translate-page-description-hasoptional-open": "Кхин тӀе хаамаш гайта.",
"translate-page-edit": "Нисъе",
- "translate-ext-url": "<hr />Сайт: $1",
"translate-optional": "(тӀехь дац)",
"translate-ignored": "(игнорирян)",
"translate-edit-title": "Хийца «$1»",
@@ -48,9 +43,7 @@
"translate-edit-contribute": "нисъе",
"translate-edit-information": "Хаамах лаьцна ($1)",
"translate-edit-in-other-languages": "Хаам кхечу меттанашкахь",
- "translate-edit-committed": "Программан карара гоч",
"translate-edit-warnings": "ДӀахаийтар кхочуш гоч йин ца хилар",
- "translate-edit-tmsugs": "ДогӀуш хила там болу гочдар кховдор",
"translate-edit-tmmatch": "$1% цхьаьнадогӀуш",
"translate-edit-askpermission": "Бакъо яккха",
"translate-magic-pagename": "Къоргера MediaWiki гочяр",
@@ -67,23 +60,28 @@
"translate-magic-cm-savefailed": "Ӏалашъян цаелира",
"translate-magic-special": "Белхан агӀонийн псевдонимаш",
"translate-magic-words": "Бозбуунчаллин дешнаш",
- "translate-magic-namespace": "ЦӀерийн ана",
+ "translate-magic-namespace": "ЦӀерийн меттигаш",
"translate-magic-notsaved": "Хьан нисдар дӏайазъдина дац!",
"translate-magic-errors": "Дехар до, {{PLURAL:$1|1=хӀара гӀалат|хӀара гӀалаташ}} нисдар гочдар чохь:",
"translate-magic-saved": "Хийцамаш кхиамца Ӏалашбина.",
"translate-checks-parameters": "{{PLURAL:$2|1=Параметр лелош яц|Параметраш лелош яц}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-parameters-unknown": "{{PLURAL:$2|1=Евзаш йоцу параметр|Евзаш йоцу параметраш}}:\n<strong><nowiki>$1</nowiki></strong>",
- "translate-checks-balance": "Елла а дӀакъовла а {{PLURAL:$2|къовларш}} нийса яц:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Елла а, дӀакъовла а {{PLURAL:$2|къовларш}} нийса яц:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "{{PLURAL:$2|1=Хьалхара хьажорго халонаш йо|Хьалхара хьажоргаш халонаш йо}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-links-missing": "{{PLURAL:$2|$2 хьажоргаш яц}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-plural": "Оригинал чохь лелош ю <nowiki>{{PLURAL:}}</nowiki>, кхузахь — яц.",
"translate-checks-plural-dupe": "МогӀан юьхьигехь <nowiki>{{PLURAL:}}</nowiki> цхьатерра шиъ дош ду, <nowiki>{{PLURAL:$1|пальто|пальто}} меттан</nowiki> <nowiki>{{PLURAL:$1|пальто}} яздича дика ду</nowiki>.",
+ "translate-pref-editassistlang": "ГӀоьнан меттанаш:",
+ "prefs-translate": "Гочдаран нисдар",
"action-translate-manage": "хаамийн тобанийн урхалладар",
+ "translate-rcfilters-translations": "Гочдарш",
+ "translate-rcfilters-translations-only-label": "Гочдарш",
"translate-rc-translation-filter": "Литта гочдарш:",
"translate-rc-translation-filter-no": "Доза доцуш",
"translate-rc-translation-filter-only": "Гочдарш бен ма гайта",
"translate-rc-translation-filter-filter": "Къайладаха гочдарш",
"translate-rc-translation-filter-site": "Сайтан системан хаамаш бен",
- "translationstats": "Гочдаршан статистика",
+ "translationstats": "Гочдаран статистика",
"translate-stats-edits": "Нисдарш",
"translate-stats-users": "Гочдархой",
"translate-stats-registrations": "ДӀаязбалар",
@@ -105,7 +103,6 @@
"translate-statsf-count-reviews": "Гочдаре хьажар",
"translate-statsf-count-reviewers": "Хьажархой",
"translate-statsf-submit": "Хьалха хьажар",
- "translate-tag-category": "Гочъеш йолу агӀонаш",
"translate-tag-page-desc": "Вики-агӀонаш гочяр [[$2|$1]].",
"translate-sidebar-alltrans": "Кхечу меттанашкахь",
"translations": "Массо а гочдарш",
@@ -117,7 +114,7 @@
"translate-translations-messagename": "ЦӀе:",
"translate-translations-project": "Проект:",
"languagestats": "Меттан статистика",
- "languagestats-summary": "ХӀокху агӀонехь ю гочдаран статистика хӀокху меттан массо групашан чура хаамашан.",
+ "languagestats-summary": "ХӀокху агӀонехь ю гочдаран статистика, хӀокху меттан массо тобанийн чура хаамашна.",
"messagegroupstats-summary": "ХӀокху агӀонгахь гойту хаамийн тобанийн статистика.",
"languagestats-stats-for": "Нохчийн меттан гочдаран статистика ($2).",
"languagestats-recenttranslations": "дукха хан йоццуш гоч динарш",
@@ -128,13 +125,13 @@
"translate-langstats-collapseall": "къайлаяха массо",
"translate-language-code": "Метта код",
"translate-language-code-field-name": "Метта код:",
- "translate-suppress-complete": "Ма гайта юьззина гочдина йолу хаамашан группанаш",
- "translate-ls-noempty": "Ма гайта юьззина гоч дийна доцу хаамашан группанаш",
+ "translate-suppress-complete": "Ма гайта юьззина гочйина хаамийн тобанаш",
+ "translate-ls-noempty": "Ма гайта юьззина гочянза хаамийн тобанаш",
"translate-language": "Мотт",
"translate-total": "Хаам",
- "translate-untranslated": "Гоч янцарш",
+ "translate-untranslated": "Гочянзарш",
"translate-percentage-complete": "Кхочушдина",
- "translate-percentage-fuzzy": "Шира елла",
+ "translate-percentage-fuzzy": "Ширъелла",
"translate-languagestats-overall": "Массо тобанийн чура хаамаш",
"translate-ls-submit": "Гайта статистика",
"translate-ls-column-group": "Хаамийн тоба",
@@ -151,7 +148,7 @@
"supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|Гочдархо}}|Гочдархой}}: $1",
"supportedlanguages-recenttranslations": "дукха хан йоццуш гоч динарш",
"supportedlanguages-count": "Бериг $1 {{PLURAL:$1|мотт}}",
- "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|1=нисдар}} — тӀаьххьарлера нисдар $3 {{PLURAL:$3|де}} хьалха",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|нисдар}} — тӀаьххьара нисдар $3 {{PLURAL:$3|де}} хьалха",
"translate-save": "Ӏалашдан ($1)",
"translate-jssti-add": "ТӀетоха могӀан чу",
"managemessagegroups": "Хаамийн тобанийн урхалладар",
@@ -182,32 +179,23 @@
"translate-gs-continent": "Дуьнена дакъа",
"translate-gs-speakers": "Лелораш",
"translate-gs-score": "Мах хадор",
- "translate-gs-multiple": "Маситта",
+ "translate-gs-multiple": "Масех",
"translate-gs-count": "Дукхалла",
"translate-gs-total": "Ерриг",
"translate-gs-avgscore": "Юкъ. мах хадор",
"translate-documentation-language": "Хаамийн документаци",
"translate-searchprofile": "Гочдинарш",
"translate-searchprofile-tooltip": "Массо гочдарш чохь лахар",
- "translate-search-languagefilter": "Меттаца литтар:",
+ "translate-search-languagefilter": "Меттаца луьттург:",
"translate-search-nofilter": "Литтар доцуш",
- "translate-messagereview-submit": "Теллина сана билгалъе",
- "translate-messagereview-progress": "Талланза сана билгалъе",
- "translate-messagereview-done": "Теллина",
- "translate-messagereview-reviews": "Теллина {{PLURAL:$1|$1 декъашхочо|$1 декъашхоша|1=кхечу декъашхочо}}",
- "translate-messagereview-reviewswithyou": "Теллина {{PLURAL:$1|$1 декъашхочо, ахьа цхьан|$1 декъашхоша, ахьа цхьан}}",
- "api-error-invalidrevision": "Гочйинарг карлаяьккхина яц",
- "api-error-unknownmessage": "Хаам цакарий",
"logentry-translationreview-group": "$1 {{GENDER:$2|хийцина}} «$3» агӀона гочдаран хьал $4 мотт «$6» → «$7»",
"group-translate-sandboxed": "ЧӀагӀбина гочдархой",
"translate-workflow-set-doing": "ДӀахӀоттош ю...",
- "translate-workflow-set-done": "ДӀахӀоттйна!",
"translate-stats-workflow": "Статус",
"translate-dynagroup-recent-label": "Дукха хан йоццуш гоч динарш",
"translate-dynagroup-recent-desc": "ХӀокху тобан чохь гучу йолу дукха хан йоцуш гоч йина хӀокху меттан хаамаш.\n\nХӀара дӀахӀоттам пайдане бу хьажа.",
"translate-dynagroup-additions-label": "Дукху хан йоцуш тӀетоьхнарш",
- "translate-dynagroup-additions-desc": "ХӀокху тобан чохь ю керла а хийцам бина а хаамаш.",
- "translate-gethelp": "ГӀо",
+ "translate-dynagroup-additions-desc": "ХӀокху тобано гойту керла а, хийцам бина а хаамаш.",
"translate-msggroupselector-projects": "Хаамийн тоба",
"translate-msggroupselector-search-placeholder": "Тобанаш лахар",
"translate-msggroupselector-search-all": "Массо",
@@ -215,29 +203,30 @@
"translate-msggroupselector-view-subprojects": "{{PLURAL:$1|1=Цхьаъ бухара тоба|$1 бухара тобанаш}}",
"tux-languageselector": "Гочдар тӀе",
"tux-tab-all": "Массо",
- "tux-tab-untranslated": "Гоч янцарш",
- "tux-tab-outdated": "Шира елларш",
- "tux-tab-translated": "Гоч йинарш",
- "tux-tab-unproofread": "Хьажанза ерш",
+ "tux-tab-untranslated": "Гочянзарш",
+ "tux-tab-outdated": "Ширъелларш",
+ "tux-tab-translated": "Гочйинарш",
+ "tux-tab-unproofread": "Талламбанзарш",
"tux-edit": "Нисдар",
"tux-status-optional": "ТӀехь дац",
- "tux-status-fuzzy": "Шира елла",
+ "tux-status-fuzzy": "Ширъелла",
"tux-status-proofread": "Таллар",
"tux-status-translated": "Гоч йина",
"tux-status-saving": "Ӏалашъеш ю...",
"tux-status-unsaved": "Ӏалаш цайина",
"tux-editor-placeholder": "Хьан гочдар",
+ "tux-editor-editsummary-placeholder": "ТӀехь йоцу коммент",
"tux-editor-paste-original-button-label": "Дилла дӀадолалун йоза",
"tux-editor-discard-changes-button-label": "Цаоьшу хийцамаш",
"tux-editor-save-button-label": "Ӏалаш де гоч динарг",
- "tux-editor-skip-button-label": "ТӀехьа догӀург",
+ "tux-editor-skip-button-label": "ТӀаьхьа догӀург",
"tux-editor-cancel-button-label": "Цаоьшу",
"tux-editor-confirm-button-label": "Бакъде гочдар",
"tux-editor-shortcut-info": "ТӀетаӀе «$1» Ӏалашъян я «$2» таӀа яй дехьагӀо.",
"tux-editor-edit-desc": "Хийца документаци",
"tux-editor-add-desc": "ТӀетоха документаци",
"tux-editor-suggestions-title": "ДӀаалар",
- "tux-editor-in-other-languages": "Кхечу маттахь дерш",
+ "tux-editor-in-other-languages": "Кхечу меттанашкахь",
"tux-editor-need-more-help": "ГӀо оьшу?",
"tux-editor-ask-help": "Деха кхин тӀедиллинарг",
"tux-editor-tm-match": "$1% цхьаьнадогӀуш",
@@ -247,16 +236,16 @@
"tux-editor-n-uses": "{{PLURAL:$1|лелина}} $1",
"tux-editor-message-desc-more": "Гайта мадарра",
"tux-editor-message-desc-less": "Гайта компактни",
- "tux-editor-clear-translated": "Къайлаяха гоч йинарш",
+ "tux-editor-clear-translated": "Къайлаяха гочйинарш",
"tux-editor-proofreading-mode": "Таллар",
"tux-editor-translate-mode": "МогӀа",
- "tux-editor-proofreading-hide-own-translations": "Къайлаяха хьой гоч йинарш",
- "tux-editor-proofreading-show-own-translations": "Гайта хьой гоч йинарш",
+ "tux-editor-proofreading-hide-own-translations": "Шен гочдарш къайладаха",
+ "tux-editor-proofreading-show-own-translations": "Шен гочдарш гайта",
"tux-proofread-action-tooltip": "Теллина сана билгалъе",
"tux-proofread-edit-label": "Хийцам бе",
"tux-editor-page-mode": "АгӀо",
"tux-editor-outdated-warning": "ХӀара гочдар карладаккха дезаш хила мега.",
- "tux-editor-outdated-warning-diff-link": "Схьагайта башхалла",
+ "tux-editor-outdated-warning-diff-link": "Схьагайта башхаллонаш",
"tux-editor-doc-editor-placeholder": "хаамийн документаци",
"tux-editor-doc-editor-save": "Ӏалашъе документаци",
"tux-editor-doc-editor-cancel": "Цаоьшу",
@@ -267,7 +256,7 @@
"tux-message-filter-advanced-button": "Шуьйра лахар",
"tux-message-filter-optional-messages-label": "Кхин тӀе хаамаш",
"tux-proofread-translated-by-self": "Ахьа гочйина",
- "tux-empty-list-all": "ХӀара хаамийн тоба есса ю",
+ "tux-empty-list-all": "ХӀара хаамийн тоба яьсса ю",
"tux-empty-list-all-guide": "Гочян харжа кхин хаамийн тоба",
"tux-translate-page-no-such-group": "<strong>Билгалйина тоба яц.</strong> Харжа кхин хаамийн тоба.",
"tux-empty-list-translated": "Гочбина хаамаш бац",
@@ -280,14 +269,14 @@
"tux-empty-nothing-to-proofread": "ХӀума яц хьажа езаш",
"tux-empty-you-can-help-providing": "Хьан йиш ю гӀо дан хаамаш гоч бина",
"tux-empty-nothing-new-to-proofread": "Керла хӀума яц хьажа езаш",
- "tux-empty-you-can-review-already-proofread": "Хьан йиш ю цхьам гоч йинарш юху хьажа",
+ "tux-empty-you-can-review-already-proofread": "Хьан йиш ю цхьам гочйинарш юху хьажа",
"tux-empty-list-other": "ХӀума дац гочдан",
"tux-empty-list-other-guide": "Хьан йиш ю долуш долу гочдаршка хьажа",
"tux-empty-list-other-action": "Гочдиначарга хьажар",
"tux-empty-list-other-link": "Гайта берриге хаамаш",
"tux-editor-close-tooltip": "ДӀачӀагӀа",
"tux-editor-expand-tooltip": "Схьаяста",
- "tux-editor-collapse-tooltip": "Къайлаяккха",
+ "tux-editor-collapse-tooltip": "ДӀахьарчо",
"tux-editor-message-tools-history": "Истори",
"tux-editor-message-tools-delete": "ДӀаяккха",
"tux-editor-message-tools-translations": "Массо а гочдарш",
diff --git a/MLEB/Translate/i18n/core/ckb.json b/MLEB/Translate/i18n/core/ckb.json
index 1adf93f8..9b63f270 100644
--- a/MLEB/Translate/i18n/core/ckb.json
+++ b/MLEB/Translate/i18n/core/ckb.json
@@ -5,14 +5,14 @@
"Calak",
"Marmzok",
"Muhammed taha",
- "رزگار"
+ "رزگار",
+ "Sarchia",
+ "Lost Whispers",
+ "Épine"
]
},
"translate": "وەرگێڕان",
"translate-desc": "[[Special:Translate|پەڕەی تایبەت]] بۆ وەرگێڕانی میدیاویکی و ئەولاتر",
- "translate-taskui-view": "گشت پەیامەکان نیشان بدە",
- "translate-taskui-untranslated": "پەیامە وەرنەگێردراوەکان نیشانبدە",
- "translate-taskui-optional": "پەیامە دڵخوازانەکان نیشان بدە",
"translate-taction-translate": "وەری بگێڕەوە",
"translate-taction-proofread": "پێداچوونەوە",
"translate-taction-lstats": "ئامارەکانی زمان",
@@ -23,7 +23,7 @@
"translate-page-language": "زمان",
"translate-page-limit": "سنوور",
"translate-page-limit-option": "$1 {{PLURAL:$1|پەیام|پەیام}} لەھەر پەڕەیکدا",
- "translate-submit": "",
+ "translate-submit": "گەڕان",
"translate-page-navigation-legend": "ڕێدۆزی",
"translate-page-showing": "نیشاندانی پەیامەکانی $1 تا $2 لە کۆی $3.",
"translate-page-showing-all": "نیشاندانی $1 {{PLURAL:$1|پەیام|پەیام}}.",
@@ -33,7 +33,6 @@
"translate-page-description-legend": "زانیاری سەبارەت بە گرووپەکە",
"translate-page-description-hasoptional-open": "پەیامە دڵخوازانەکان نیشان بدە.",
"translate-page-edit": "دەستکاریی بکە",
- "translate-ext-url": "<hr />ماڵپەڕ: $1",
"translate-optional": "(دڵخوازانه‌)",
"translate-edit-title": "«$1» دەستکاری بکە",
"translate-edit-definition": "پێناسەی پەیام",
@@ -43,7 +42,7 @@
"translate-edit-in-other-languages": "پەیام لە زمانەکانی تردا",
"translate-edit-warnings": "ئاگادارییەکان سەبارەت بە وەرگێڕانی ناتەواو",
"translate-edit-tmmatch": "$1% یەکسانی",
- "translate-magic-module": "مۆدیوول:",
+ "translate-magic-module": "Module:",
"translate-magic-submit": "بەدەستی بهێنە",
"translate-magic-cm-export": "هەناردن",
"translate-magic-nothing-to-export": "هیچ شتێک نیە بۆ هەناردن.",
@@ -60,7 +59,9 @@
"translate-checks-parameters-unknown": "ئەم {{PLURAL:$2|پارامەترە نەناسراوە|پارامەترانە نەناسراون}} :\n<strong><nowiki>$1</nowiki></strong>",
"translate-pref-nonewsletter": "ئی‌مێڵی هەواڵ‌نامە بۆ من مەنێرە",
"prefs-translate": "هەڵبژاردەکانی وەرگێڕان",
- "right-translate": "دەستکاری بە کەڵك وەرگرتن لە ڕووکاری وەرگێڕان",
+ "right-translate": "دەستکاری کردن بە کەڵک وەرگرتن لە ڕووکاری وەرگێڕانەوە",
+ "translate-rcfilters-translations": "وەرگێڕانەکان",
+ "translate-rcfilters-translations-only-label": "وەرگێڕانەکان",
"translate-rc-translation-filter": "پاڵاوتنی وەرگێڕاوەکان:",
"translate-rc-translation-filter-no": "ھیچ مەکە",
"translate-rc-translation-filter-only": "ھەر وەرگێڕاوەکان نیشان بدە",
@@ -70,6 +71,7 @@
"translate-stats-registrations": "ناونووسکردنەکان",
"translate-stats-reviews": "پیاچوونەوەکان",
"translate-stats-reviewers": "پیاچوونەوەکارەکان",
+ "translate-statsf-options": "بژاردەکانی ھێڵکاری",
"translate-statsf-start": "ڕێکەوتی دەستپێکردن:",
"translate-statsf-scale-months": "مانگ",
"translate-statsf-scale-weeks": "ھەفتە",
@@ -82,7 +84,6 @@
"translate-statsf-count-reviews": "پیاچوونەوەکانی وەرگێڕان",
"translate-statsf-count-reviewers": "پیاچوونەوەکارەکان",
"translate-statsf-submit": "پێشبینین",
- "translate-tag-category": "ئەو لاپەڕانەی توانای وەرگێڕانیان هەیە",
"translate-sidebar-alltrans": "لە زمانەکانی دیکەدا",
"translations": "هەموو وەرگێرانەکان",
"translate-translations-fieldset-title": "پەیام",
@@ -126,37 +127,40 @@
"translate-gs-code": "کۆد",
"translate-gs-speakers": "قسەکەرەکان",
"translate-gs-total": "سەرجەم",
+ "translate-documentation-language": "پەیامی بەڵگەنامە",
"translate-searchprofile": "وەرگێڕانەکان",
"translate-workflowstatus": "ڕەوش: $1",
- "translate-workflow-set-do": "ڕێک بخە",
"translate-workflow-set-doing": "ڕێکخستن...",
- "translate-workflow-set-done": "ڕێکخرا!",
"translate-stats-workflow": "ڕەوش",
- "translate-gethelp": "یارمەتی",
"translate-msggroupselector-projects": "پەیامی گرووپ",
"translate-msggroupselector-search-all": "ھەموو",
"translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|ژێرگرووپ|ژێرگرووپەکان}}",
+ "tux-languageselector": "وەرگێڕان بۆ",
"tux-tab-all": "ھەموو",
"tux-tab-untranslated": "وەرنەگێڕراو",
- "tux-tab-translated": "وەرگێڕراو",
+ "tux-tab-translated": "وەرگێڕدراو",
"tux-edit": "دەستکاری",
- "tux-status-translated": "وەرگێڕراو",
+ "tux-status-translated": "وەرگێڕدراو",
"tux-status-saving": "دەپارێزرێت...",
+ "tux-editor-placeholder": "وەرگێڕانەکانت",
"tux-editor-paste-original-button-label": "دەقی بنەڕەتی دابنێ",
- "tux-editor-save-button-label": "وەرگێڕان بپارێزە",
+ "tux-editor-save-button-label": "پاشەکەوتکردنی وەرگێڕانەکە",
"tux-editor-skip-button-label": "باز ببە بۆ دواتر",
- "tux-editor-cancel-button-label": "ھەڵیوەشێنەوە",
+ "tux-editor-cancel-button-label": "ھەڵوەشاندنەوە",
"tux-editor-suggestions-title": "پێشنیارەکان",
"tux-editor-in-other-languages": "بە زمانەکانی تر",
"tux-warnings-more": "{{PLURAL:$1|$1 زیاتر}}",
"tux-warnings-hide": "بیشارەوە",
+ "tux-editor-n-uses": "$1 جار بەکارھاتووە",
"tux-editor-message-desc-more": "زیاتر ببینە",
"tux-editor-message-desc-less": "کەمتر ببینە",
+ "tux-editor-clear-translated": "شاردنەوەی وەرگێڕدراوەکان",
"tux-editor-proofreading-mode": "پێداچوونەوە",
"tux-editor-translate-mode": "پێرست",
"tux-proofread-edit-label": "دەستکاری",
"tux-editor-page-mode": "پەڕە",
- "tux-editor-doc-editor-cancel": "ھەڵیوەشێنەوە",
+ "tux-editor-outdated-warning-diff-link": "جیاوازییەکان نیشان بدە",
+ "tux-editor-doc-editor-cancel": "ھەڵوەشاندنەوە",
"tux-messagetable-loading-messages": "بارکردنی {{PLURAL:$1|پەیام|پەیامەکان}}...",
"tux-message-filter-result": "$1 {{PLURAL:$1|ئاکام}} دۆزرایەوە بۆ «$2»",
"tux-message-filter-advanced-button": "گەڕانی پێشکەوتوو",
@@ -166,6 +170,7 @@
"tux-editor-expand-tooltip": "بڵاویبکەوە",
"tux-editor-collapse-tooltip": "کۆیبکەوە",
"tux-editor-message-tools-history": "مێژوو",
+ "tux-editor-message-tools-delete": "سڕینەوە",
"tux-editor-message-tools-translations": "هەموو وەرگێرانەکان",
"tux-editor-loading": "باركردن‌ ...",
"translate-statsbar-tooltip": "$1% وەرگێڕدراوە, $2% پێداجوونەوەی بۆ کراوە"
diff --git a/MLEB/Translate/i18n/core/cs.json b/MLEB/Translate/i18n/core/cs.json
index 5c5a0b9c..ef4ca18d 100644
--- a/MLEB/Translate/i18n/core/cs.json
+++ b/MLEB/Translate/i18n/core/cs.json
@@ -9,16 +9,16 @@
"Mormegil",
"Vks",
"Matěj Suchánek",
- "Utar"
+ "Utar",
+ "Clon",
+ "Marek Pavlica",
+ "Dvorapa",
+ "Ilimanaq29"
]
},
"translate": "Překládání",
"translate-desc": "[[Special:Translate|Speciální stránka]] zjednodušující překládání systémových hlášení MediaWiki",
- "translate-taskui-view": "Zobrazit všechny zprávy",
- "translate-taskui-untranslated": "Zobrazit nepřeložené zprávy",
- "translate-taskui-optional": "Zobrazit volitelné zprávy",
- "translate-taskui-acceptqueue": "Jen zprávy, které mohu označit za zkontrolované",
- "translate-taskui-reviewall": "Hodnotit všechny překlady",
+ "translate-fuzzybot-desc": "Toto je speciální systémový účet používaný [https://www.mediawiki.org/wiki/Extension:Translate rozšířením MediaWiki pro překlady], používaný pro údržbu překladů.\nTento účet je součástí softwaru MediaWiki a nepatří žádnému uživateli.",
"translate-taskui-export-to-file": "Exportovat v nativním formátu",
"translate-taskui-export-as-po": "Exportovat pro off-line překlad",
"translate-taction-translate": "Překlad",
@@ -47,7 +47,6 @@
"translate-page-description-hasoptional": "Tato skupina zpráv obsahuje volitelné zprávy.\nVolitelné zprávy se mají překládat, pouze pokud má váš jazyk zvláštní potřeby\njako nepoužívání mezer nebo transkripce vlastních jmen. $1",
"translate-page-description-hasoptional-open": "Zobrazit volitelné zprávy.",
"translate-page-edit": "editovat",
- "translate-ext-url": "<hr />Webová stránka: $1",
"translate-optional": "(volitelné)",
"translate-ignored": "(ignorované)",
"translate-edit-title": "Editovat „$1“",
@@ -57,9 +56,7 @@
"translate-edit-no-information": "<em>K této zprávě není dokumentace. Pokud víte, kde nebo jak se zpráva používá, můžete pomoci dalším překladatelům tím, že přidáte dokumentaci k této zprávě.</em>",
"translate-edit-information": "Informace o zprávě ($1)",
"translate-edit-in-other-languages": "Zpráva v jiných jazycích",
- "translate-edit-committed": "Současný překlad v úložišti",
"translate-edit-warnings": "Upozornění na neúplný překlad",
- "translate-edit-tmsugs": "Návrhy z překladové paměti",
"translate-edit-tmmatch-source": "Zdrojový text překladu: $1",
"translate-edit-tmmatch": "$1% shoda",
"translate-use-suggestion": "Nahradit stávající překlad tímto návrhem.",
@@ -91,7 +88,7 @@
"translate-checks-links-missing": "{{PLURAL:$2|Následující odkaz|Následující $2 odkazy|Následujících $2 odkazů}} chybí:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-xhtml": "Opravte následující {{PLURAL:$2|značku|značky}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-plural": "Zdroj používá <nowiki>{{PLURAL:}}</nowiki>, ale překlad nikoliv.",
- "translate-checks-plural-forms": "Do <nowiki>{{PLURAL:}}</nowiki> {{PLURAL:$1|byla vložena 1 varianta|byly vloženy $1 varianty|bylo vloženo $1 variant}}, ale {{PLURAL:$2|je podporována pouze jedna|jsou podporovány pouze $2|je podporováno pouze $2}} (kromě variant 0= a 1=).",
+ "translate-checks-plural-forms": "Do <nowiki>{{PLURAL:}}</nowiki> {{PLURAL:$1|byla vložena jedna varianta|byly vloženy $1 varianty|bylo vloženo $1 variant}}, ale {{PLURAL:$2|podporována je pouze jedna|podporovány jsou pouze $2|podporováno je pouze $2}} (kromě variant 0= a 1=).",
"translate-checks-plural-dupe": "Na konci <nowiki>{{PLURAL:}}</nowiki> jsou uvedeny duplicitní varianty. Místo <nowiki>{{PLURAL:$1|náměstí|náměstí|náměstí}}</nowiki> má být zadáno jen <nowiki>{{PLURAL:$1|náměstí}}</nowiki>.",
"translate-checks-pagename": "Oproti definici se změnil jmenný prostor",
"translate-checks-format": "Tento překlad neodpovídá definici nebo má neplatnou syntaxi: $1",
@@ -111,6 +108,13 @@
"action-translate-import": "importovat offline překlady",
"right-translate-messagereview": "Hodnocení překladů",
"right-translate-groupreview": "Změna stavu zpracování skupin zpráv",
+ "translate-rcfilters-translations": "Překlady",
+ "translate-rcfilters-translations-only-label": "Překlady",
+ "translate-rcfilters-translations-only-desc": "Změny překládaných stránek.",
+ "translate-rcfilters-translations-filter-label": "Bez překladů",
+ "translate-rcfilters-translations-filter-desc": "Všechny změny, které nejsou překlady.",
+ "translate-rcfilters-translations-site-label": "Systémová hlášení",
+ "translate-rcfilters-translations-site-desc": "Úpravy systémových hlášení ve jmenném prostoru MediaWiki.",
"translate-rc-translation-filter": "Filtr překladů:",
"translate-rc-translation-filter-no": "Nijak nefiltrovat",
"translate-rc-translation-filter-only": "Zobrazit jen překlady",
@@ -142,7 +146,6 @@
"translate-statsf-language": "Čárkami oddělený seznam kódu jazyků:",
"translate-statsf-group": "Čárkami oddělený seznam kódů skupin:",
"translate-statsf-submit": "Náhled",
- "translate-tag-category": "Přeložitelné stránky",
"translate-tag-page-desc": "Překlad wiki stránky [[$2|$1]] z jazyka $3 ($4).",
"translate-sidebar-alltrans": "V jiných jazycích",
"translations": "Všechny překlady",
@@ -184,7 +187,7 @@
"translate-mgs-noempty": "Nezobrazovat jazyky neobsahující žádný překlad",
"translate-mgs-submit": "Zobrazit statistiky",
"translate-mgs-column-language": "Jazyk",
- "translate-mgs-totals": "Všechny jazyky dohromady",
+ "translate-mgs-totals": "{{PLURAL:$1|Celkem jediný jazyk|Všechny $1 jazyky dohromady|Všech $1 jazyků dohromady|2=Oba dva jazyky dohromady}}",
"translate-mgs-invalid-group": "Zadaná skupina $1 neexistuje.",
"translate-mgs-nothing": "U požadovaných statistik není co zobrazit.",
"supportedlanguages": "Podporované jazyky",
@@ -195,6 +198,7 @@
"supportedlanguages-recenttranslations": "nedávné překlady",
"supportedlanguages-count": "Celkem $1 {{PLURAL:$1|jazyk|jazyky|jazyků}}.",
"supportedlanguages-activity": "$1: $2 editace – poslední editace před $3 {{PLURAL:$3|dnem|dny}}",
+ "abusefilter-edit-builder-vars-translate-source-text": "Zdrojový text překladové jednotky",
"translate-save": "Uložit ($1)",
"translate-jssti-add": "Přidat do seznamu",
"managemessagegroups": "Správa skupin zpráv",
@@ -218,7 +222,6 @@
"translate-manage-toolong": "Překročen maximální čas zpracování $1 {{PLURAL:$1|sekunda|sekundy|sekund}}.\nPro pokračování odešlete formulář ještě jednou.",
"translate-manage-import-summary": "Importuje se nová verze z vnějšího zdroje",
"translate-manage-conflict-summary": "Importuje se nová verze z vnějšího zdroje.\nProsím, zkontrolujte ji.",
- "translate-manage-fuzzy-summary": "Definice zprávy se změnila",
"translate-manage-submit": "Provést",
"translate-manage-intro-other": "Níže je zobrazen seznam změn v překladech do jazyka $1.\nZkontrolujte změny a vyberte si, co se má pro každou aktualizaci provést.\nPokud se rozhodnete změny ignorovat, je tato akce pouze dočasná.",
"translate-manage-import-ok": "Naimportováno: $1",
@@ -227,7 +230,7 @@
"translate-import-from-local": "Načtení lokálního souboru:",
"translate-import-load": "Načíst soubor",
"translate-import-err-dl-failed": "Nepodařilo se načíst soubor:\n$1",
- "translate-import-err-ul-failed": "Načtení souboru se nezdařilo.",
+ "translate-import-err-ul-failed": "Nahrávání souboru selhalo",
"translate-import-err-invalid-title": "Zadané jméno souboru <nowiki>$1</nowiki> není platné.",
"translate-import-err-no-such-file": "Soubor <nowiki>$1</nowiki> neexistuje nebo nebyl načten lokálně.",
"translate-import-err-stale-group": "Skupina zpráv, do které tento soubor patří, neexistuje.",
@@ -236,9 +239,7 @@
"translate-js-summary": "Shrnutí:",
"translate-js-save": "Uložit",
"translate-js-next": "Uložit a otevřít další",
- "translate-js-nonext": "Toto byla poslední zpráva na této stránce.",
"translate-js-skip": "Přeskočit na další",
- "translate-js-save-failed": "Uložení se nezdařilo. Nahlaste prosím tuto chybu.",
"translate-js-history": "Historie překladů",
"translate-js-support": "Položit dotaz",
"translate-js-support-title": "Požádat o pomoc, pokud není k dispozici dostatek informací pro správný překlad této zprávy.",
@@ -255,21 +256,9 @@
"translate-documentation-language": "dokumentace k hlášením",
"translate-searchprofile": "Překlady",
"translate-searchprofile-tooltip": "Hledat ve všech překladech",
+ "translate-searchprofile-note": "Více možností vyhledávání je dostupné na [$1 hledání překladů].",
"translate-search-languagefilter": "Filtr podle jazyka:",
"translate-search-nofilter": "Nefiltrovat",
- "translate-messagereview-submit": "Označit za zkontrolované",
- "translate-messagereview-progress": "Označuje se za zkontrolované…",
- "translate-messagereview-failure": "Nepodařilo se označit za zkontrolované: $1",
- "translate-messagereview-done": "Zkontrolováno",
- "translate-messagereview-reviews": "Zkontrolováno {{PLURAL:$1|1 uživatelem|$1 uživateli}}",
- "translate-messagereview-reviewswithyou": "Zkontrolováno {{PLURAL:$1|vámi|$1 uživateli včetně vás}}",
- "api-error-invalidrevision": "Překlad nebyl nalezen",
- "api-error-unknownmessage": "Hlášení nebylo nalezeno",
- "api-error-fuzzymessage": "Překlad je označen jako „fuzzy“",
- "api-error-owntranslation": "Vlastní překlady nemůžete označovat za zkontrolované.",
- "translate-messagereview-no-fuzzy": "„Fuzzy“ překlady nelze označit za zkontrolované.",
- "translate-messagereview-no-own": "Vlastní překlady nemůžete označovat za zkontrolované.",
- "translate-messagereview-doit": "Označit tento překlad jako zkontrolovaný.",
"log-name-translationreview": "Kniha hodnocení překladů",
"log-description-translationreview": "Protokol všech hodnocení překladů a skupin zpráv.",
"logentry-translationreview-message": "$1 {{GENDER:$2|zkontroloval|zkontrolovala}} překlad $3",
@@ -278,10 +267,7 @@
"group-translate-sandboxed-member": "{{GENDER:$1|neschválený překladatel|neschválená překladatelka}}",
"translate-workflow-state-": "(nenastaven)",
"translate-workflowstatus": "Stav: $1",
- "translate-workflow-set-do": "Nastavit",
"translate-workflow-set-doing": "Nastavuje se…",
- "translate-workflow-set-done": "Nastaveno!",
- "translate-workflow-set-error-alreadyset": "Požadovaný stav je roven aktuálnímu.",
"translate-stats-workflow": "Stav",
"translate-workflowgroup-label": "Stavy zpracování",
"translate-workflowgroup-desc": "Tato skupina zpráv obsahuje stavy zpracování překladů.\nStavy jsou definovány v konfigurační proměnné $wgTranslateWorkflowStates.",
@@ -289,11 +275,6 @@
"translate-dynagroup-recent-desc": "Tato skupina zpráv zobrazuje všechny nedávné překlady do tohoto jazyka.\nUžitečné hlavně pro korektury.",
"translate-dynagroup-additions-label": "Nedávné přírůstky",
"translate-dynagroup-additions-desc": "Tato skupina zpráv zobrazuje nové a změněné zprávy.",
- "translate-dynagroup-by": "Překlad od {{GENDER:$1|uživatele|uživatelky|}} $1",
- "translate-dynagroup-byc": "Překlad od {{GENDER:$1|uživatele|uživatelky|}} $1 ($2)",
- "translate-dynagroup-last": "Poslední změna od {{GENDER:$1|uživatele|uživatelky|}} $1",
- "translate-dynagroup-lastc": "Poslední změna od {{GENDER:$1|uživatele|uživatelky|}} $1 ($2)",
- "translate-gethelp": "Nápověda",
"translate-msggroupselector-projects": "Skupina zpráv",
"translate-msggroupselector-search-placeholder": "Hledání skupiny",
"translate-msggroupselector-search-all": "Všechno",
@@ -312,14 +293,17 @@
"tux-status-translated": "Přeložená",
"tux-status-saving": "Ukládá se…",
"tux-status-unsaved": "Neuloženo",
+ "tux-save-unknown-error": "Došlo k neznámé chybě.",
"tux-editor-placeholder": "Váš překlad",
+ "tux-editor-editsummary-placeholder": "Nepovinné shrnutí",
"tux-editor-paste-original-button-label": "Vložit zdrojový text",
"tux-editor-discard-changes-button-label": "Zahodit změny",
"tux-editor-save-button-label": "Uložit překlad",
"tux-editor-skip-button-label": "Přeskočit na další",
"tux-editor-cancel-button-label": "Storno",
"tux-editor-confirm-button-label": "Potvrdit překlad",
- "tux-editor-shortcut-info": "Stiskněte „$1“ pro uložení, „$2“ pro přeskočení na další zprávu nebo „$3“ pro další zkratky.",
+ "tux-editor-proofread-button-label": "Označit jako zkontrolované",
+ "tux-editor-shortcut-info": "Stiskněte „$1“ pro uložení, „$2“ pro přeskočení na další zprávu, „$4“ pro zadání shrnutí nebo „$3“ pro další zkratky.",
"tux-editor-edit-desc": "Upravit dokumentaci",
"tux-editor-add-desc": "Přidat dokumentaci",
"tux-editor-suggestions-title": "Návrhy",
@@ -374,9 +358,11 @@
"tux-editor-close-tooltip": "Zavřít",
"tux-editor-expand-tooltip": "Roztáhnout",
"tux-editor-collapse-tooltip": "Sbalit",
+ "tux-editor-message-tools-show-editor": "Zobrazit v editoru wiki",
"tux-editor-message-tools-history": "Historie",
"tux-editor-message-tools-delete": "Smazat",
"tux-editor-message-tools-translations": "Všechny překlady",
+ "tux-editor-message-tools-linktothis": "Odkaz na tuto zprávu",
"tux-editor-loading": "Načítá se…",
"translate-search-more-languages-info": "$1 {{PLURAL:$1|další jazyk|další jazyky|dalších jazyků}}",
"translate-statsbar-tooltip": "$1 % přeloženo, $2 % zkontrolováno",
@@ -384,5 +370,6 @@
"translate-search-more-groups-info": "$1 {{PLURAL:$1|další skupina|další skupiny|dalších skupin}}",
"translate-ulsdep-title": "Chyba konfigurace",
"translate-ulsdep-body": "Rozšíření Translate závisí na [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector rozšíření Universal Language Selector].",
- "tux-session-expired": "Již nejste přihlášen(a). Přihlašte se prosím v jiné záložce. Anebo si okopírujte neuložené překlady, přihlaste se a vraťte se na tuto stránku."
+ "tux-session-expired": "Již nejste přihlášen(a). Přihlaste se prosím v jiné záložce. Anebo si okopírujte neuložené překlady, přihlaste se, vraťte se na tuto stránku a zadejte je znovu.",
+ "tux-nojs": "Tento nástroj nefunguje bez JavaScriptu. JavaScript je buď vypnut, nebo zkolaboval anebo není podporován tento prohlížeč."
}
diff --git a/MLEB/Translate/i18n/core/csb.json b/MLEB/Translate/i18n/core/csb.json
index 74a32c48..ac4929cc 100644
--- a/MLEB/Translate/i18n/core/csb.json
+++ b/MLEB/Translate/i18n/core/csb.json
@@ -5,6 +5,7 @@
]
},
"translate": "Dolmôczë",
- "translate-edit-in-other-languages": "Wiadło \"$1\" w jinych jãzëkach",
- "translate-sidebar-alltrans": "W jinych jãzëkach"
+ "translate-edit-in-other-languages": "Wiadło w jinych jãzëkach",
+ "translate-sidebar-alltrans": "W jinych jãzëkach",
+ "translate-documentation-language": "òpisënk wiadła"
}
diff --git a/MLEB/Translate/i18n/core/cu.json b/MLEB/Translate/i18n/core/cu.json
index 242c3d38..eee30a4d 100644
--- a/MLEB/Translate/i18n/core/cu.json
+++ b/MLEB/Translate/i18n/core/cu.json
@@ -5,7 +5,7 @@
]
},
"translate-page-language": "ѩꙁꙑкъ",
- "translate-page-edit": "исправи",
+ "translate-page-edit": "исправлѥниѥ",
"translate-edit-title": "исправлѥниѥ ⁖ $1 ⁖",
"translate-stats-edits": "мѣнꙑ",
"translate-translations-messagename": "имѧ :",
diff --git a/MLEB/Translate/i18n/core/cv.json b/MLEB/Translate/i18n/core/cv.json
index 441a191d..03643149 100644
--- a/MLEB/Translate/i18n/core/cv.json
+++ b/MLEB/Translate/i18n/core/cv.json
@@ -1,21 +1,36 @@
{
"@metadata": {
"authors": [
- "Chuvash2014"
+ "Chuvash2014",
+ "Chuvash"
]
},
"translate": "Куçарни",
"translate-taction-translate": "Куçарни",
"translate-next": "Урăх страницă",
"translate-prev": "Унчченхи страницă",
+ "translationstats": "Куçарнисен статистики",
+ "languagestats-stats-for": "$1 куçарнă статистики ($2).",
+ "languagestats-recenttranslations": "нумай пулмасть куçарнисем",
"translate-langstats-expand": "сар",
+ "translate-langstats-collapse": "хуп",
+ "translate-langstats-expandall": "пĕтĕмпине сар",
+ "translate-langstats-collapseall": "пĕтĕмпи хуп",
"translate-language-code": "Чĕлхен кодчĕ",
"translate-language-code-field-name": "Чĕлхен кодчĕ:",
"translate-untranslated": "Куçарманнисем",
+ "translate-percentage-complete": "Куçарнă",
"translate-percentage-fuzzy": "Кивелнĕ",
+ "translate-ls-submit": "Статистикине кăтарт",
+ "translate-mgs-submit": "Статистикине кăтарт",
+ "supportedlanguages-recenttranslations": "нумай пулмасть куçарнисем",
+ "translate-dynagroup-recent-label": "Нумай пулмасть куçарнисем",
"tux-languageselector": "Куçармалла",
"tux-tab-all": "Пурте",
"tux-tab-untranslated": "Куçарманнисем",
"tux-tab-outdated": "Кивелнисем",
- "tux-tab-translated": "Куçарнисем"
+ "tux-tab-translated": "Куçарнисем",
+ "tux-tab-unproofread": "Тĕрĕслеменисем",
+ "tux-empty-list-other": "Куçармалли çук.",
+ "tux-empty-list-other-action": "Куçарнисене тĕрĕслемелли"
}
diff --git a/MLEB/Translate/i18n/core/cy.json b/MLEB/Translate/i18n/core/cy.json
index bcad5925..c752e49f 100644
--- a/MLEB/Translate/i18n/core/cy.json
+++ b/MLEB/Translate/i18n/core/cy.json
@@ -8,11 +8,6 @@
},
"translate": "Cyfieithu",
"translate-desc": "[[Special:Translate|Tudalen arbennig]] at ddiben cyfieithu MediaWiki a mwy",
- "translate-taskui-view": "Dangos pob neges",
- "translate-taskui-untranslated": "Dangos negeseuon sydd heb eu cyfieithu eto",
- "translate-taskui-optional": "Dangos negeseuon opsiynol",
- "translate-taskui-acceptqueue": "Dim ond y negeseuon y gallaf nodi iddynt gael eu hadolygu",
- "translate-taskui-reviewall": "Adolygu pob cyfieithiad",
"translate-taskui-export-to-file": "Allforio yn ei fformat cynhenid",
"translate-taskui-export-as-po": "Allforio i'w cyfieithu all-lein",
"translate-taction-translate": "Cyfieithu",
@@ -41,7 +36,6 @@
"translate-page-description-hasoptional": "Mae'r grŵp hwn yn cynnwys negeseuon opsiynol.\nDoes dim ond angen eu cyfieithu pan fod orgraff eich iaith yn gofyn am eu cyfieithu, e.e. os oes rhaid osgoi defnyddio bylchau neu wrth drawslythrennu enwau priod. $1",
"translate-page-description-hasoptional-open": "Dangos negeseuon opsiynol.",
"translate-page-edit": "golygu",
- "translate-ext-url": "<hr />Gwefan: $1",
"translate-optional": "(dewisol)",
"translate-ignored": "(anwybyddwyd)",
"translate-edit-title": "Golygu \"$1\"",
@@ -51,9 +45,7 @@
"translate-edit-no-information": "<em>Nid oes unrhyw wybodaeth wedi ei chofnodi am y neges hon eto.\nOs ydych yn gwybod ymhle neu ym mha fodd y defnyddir y neges hon, gallwch hwyluso gwaith y cyfieithwyr drwy gofnodi eglurhad arni.</em>",
"translate-edit-information": "Gwybodaeth am y neges ($1)",
"translate-edit-in-other-languages": "Y neges mewn ieithoedd eraill",
- "translate-edit-committed": "Y cyfieithiad cyfredol yn y meddalwedd",
"translate-edit-warnings": "Rhybudd am gyfieithiad anghyflawn",
- "translate-edit-tmsugs": "Cynigion gan gronfeydd cof cyfieithu a thrwy chyfieithu awtomatig",
"translate-edit-tmmatch-source": "Y testun gwreiddiol i'w gyfieithu: $1",
"translate-edit-tmmatch": "yn cyd-fynd $1%",
"translate-use-suggestion": "Bydd y cynnig hwn yn disodli'r cyfieithiad cyfredol.",
@@ -129,7 +121,6 @@
"translate-statsf-language": "Rhestr coma-wahanedig o godau iaith:",
"translate-statsf-group": "Rhestr coma-wahanedig o godau grŵp:",
"translate-statsf-submit": "Rhagolwg",
- "translate-tag-category": "Tudalennau y gellir eu cyfieithu",
"translate-tag-page-desc": "Cyfieithiad o dudalen wici [[$2|$1]] o $3 ($4).",
"translate-sidebar-alltrans": "Ieithoedd eraill",
"translations": "Yr holl gyfieithiadau",
@@ -188,7 +179,6 @@
"translate-js-summary": "Crynodeb:",
"translate-js-save": "Cadw",
"translate-js-next": "Cadwer ac agorer y nesaf",
- "translate-js-nonext": "Dyma'r neges olaf ar y dudalen hon.",
"translate-js-skip": "Neidio i'r nesaf",
"translate-js-history": "Hynt y cyfieithu",
"translate-js-support": "Ceisio cymorth",
@@ -207,24 +197,13 @@
"translate-searchprofile-tooltip": "Chwilio ymhlith yr holl gyfieithiadau",
"translate-search-languagefilter": "Hidlo yn ôl iaith:",
"translate-search-nofilter": "Dim hidlo",
- "translate-messagereview-submit": "Nodi iddi gael ei hadolygu",
- "translate-messagereview-progress": "Wrthi'n nodi...",
- "translate-messagereview-done": "Adolygwyd",
- "translate-messagereview-reviews": "Adolygwyd gan {{PLURAL:$1|neb|$1 defnyddiwr|$1 ddefnyddiwr|$1 defnyddiwr}}",
- "api-error-invalidrevision": "Ni chafwyd hyd i'r cyfieithiad",
- "api-error-unknownmessage": "Ni chafwyd hyd i'r neges",
- "api-error-fuzzymessage": "Dynodwyd y cyfieithiad gyda fuzzy",
"log-name-translationreview": "Lòg adolygu cyfieithiadau",
"translate-workflow-state-": "(heb ei osod)",
"translate-workflowstatus": "Cyflwr: $1",
- "translate-workflow-set-do": "Gosoder",
"translate-workflow-set-doing": "Wrthi'n gosod...",
- "translate-workflow-set-done": "Gosodwyd!",
- "translate-workflow-set-error-alreadyset": "Mae'r cyflwr gofynedig yn union debyg i'r cyflwr presennol.",
"translate-stats-workflow": "Cyflwr",
"translate-workflowgroup-label": "Cyflyrau'r llif gwaith",
"translate-dynagroup-recent-label": "Cyfieithiadau diweddar",
- "translate-gethelp": "Cymorth",
"translate-msggroupselector-search-all": "Oll",
"translate-msggroupselector-search-recent": "Diweddar",
"tux-tab-all": "Oll",
diff --git a/MLEB/Translate/i18n/core/da.json b/MLEB/Translate/i18n/core/da.json
index 11c61112..e4fed7e7 100644
--- a/MLEB/Translate/i18n/core/da.json
+++ b/MLEB/Translate/i18n/core/da.json
@@ -10,16 +10,13 @@
"MGA73",
"Nghtwlkr",
"Peter Alberti",
- "Sarrus"
+ "Sarrus",
+ "Saederup92"
]
},
"translate": "Oversæt",
+ "translate-extensionname": "Oversæt",
"translate-desc": "[[Special:Translate|Specialside]] til oversættelse af MediaWiki og andet",
- "translate-taskui-view": "Vis alle beskeder",
- "translate-taskui-untranslated": "Vis uoversatte beskeder",
- "translate-taskui-optional": "Vis valgfrie beskeder",
- "translate-taskui-acceptqueue": "Kun beskeder som jeg kan korrekturlæse",
- "translate-taskui-reviewall": "Lav korrekturlæsning af alle oversættelser",
"translate-taskui-export-to-file": "Eksportér i oprindeligt format",
"translate-taskui-export-as-po": "Eksportér til offline oversættelse",
"translate-taction-translate": "Oversæt",
@@ -48,7 +45,6 @@
"translate-page-description-hasoptional": "Denne beskedgruppe indeholder valgfrie beskeder.\nValgfrie beskeder bør kun oversættes, hvis dit sprog har særlige krav som for eksempel ikke at bruge mellemrum eller at transskribere egennavne. $1",
"translate-page-description-hasoptional-open": "Vis valgfrie beskeder.",
"translate-page-edit": "redigér",
- "translate-ext-url": "<hr />Webside: $1",
"translate-optional": "(valgfri)",
"translate-ignored": "(ignoreres)",
"translate-edit-title": "Rediger \"$1\"",
@@ -58,14 +54,15 @@
"translate-edit-no-information": "<em>Denne besked har ingen dokumentation.\nHvis du ved hvor eller hvordan denne besked bruges, kan du hjælpe andre oversættere ved at tilføje dokumentation til beskeden.</em>",
"translate-edit-information": "Information om beskeden ($1)",
"translate-edit-in-other-languages": "Beskeden på andre sprog",
- "translate-edit-committed": "Nuværende oversættelse i programmet",
"translate-edit-warnings": "Advarsler om ufuldstændige oversættelser",
- "translate-edit-tmsugs": "Forslag fra oversættelseshukommelsen",
"translate-edit-tmmatch-source": "Kildetekst til oversættelse: $1",
"translate-edit-tmmatch": "$1 % overensstemmelse",
"translate-use-suggestion": "Erstat den nuværende oversættelse med dette forslag.",
"translate-edit-nopermission": "Du skal have oversættelsesrettigheder for at kunne oversætte besekeder.",
"translate-edit-askpermission": "Få tilladelse",
+ "exporttranslations": "Eksporter oversættelser",
+ "translate-export-form-format": "Format",
+ "translate-export-not-supported": "Eksportering af oversættelser understøttes ikke.",
"translate-magic-pagename": "Udvidet MediaWiki-oversættelse",
"translate-magic-help": "Du kan oversætte specialsiders aliaser, magiske ord og navnerumsnavne.\n\nSpecialsiders aliaser og magiske ord kan have flere oversættelser.\nOversættelserne adskilles med komma (,).\nNavnerum kan kun have én oversættelse.\n\nOversættelse af projektdiskussionsnavnerummet <code>$1 talk</code> kan være kompliceret.\n<code>$1</code> erstattes af projektets webstedsnavn (eksempelvis <code>{{ns:project_talk}}</code>).\nHvis det ikke er muligt på dit sprog, at danne en meningsgivende sætning uden at ændre webstedsnavnet, så giv os besked på [[Support]].\n\nDu skal være oversætter for at kunne gemme ændringer.\nÆndringerne gemmes ikke før du klikker på gem-knappen herunder.",
"translate-magic-module": "Modul:",
@@ -84,7 +81,7 @@
"translate-magic-namespace": "Navnerumsnavne",
"translate-magic-notsaved": "Din redigering er ikke gemt!",
"translate-magic-errors": "Ret venligst følgende {{PLURAL:$1|fejl|fejl}} i oversættelserne:",
- "translate-magic-saved": "Dine ændringer er gemt.",
+ "translate-magic-saved": "Dine ændringer er blevet gemt.",
"translate-checks-parameters": "Følgende {{PLURAL:$2|parameter|parametre}} bruges ikke:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-parameters-unknown": "Følgende {{PLURAL:$2|parameter er ukendt|parametre er ukendte}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-balance": "Der er et ulige antal {{PLURAL:$2|parenteser|parenteser}}:\n<strong><nowiki>$1</nowiki></strong>",
@@ -111,7 +108,14 @@
"right-translate-import": "Importere offline oversættelser",
"action-translate-import": "importere offline oversættelser",
"right-translate-messagereview": "Læs korrektur",
+ "action-translate-messagereview": "læs korrektur",
"right-translate-groupreview": "Ændring af workflowstatus på meddelelsesgrupper",
+ "action-translate-groupreview": "ændre arbejdsflow statussen for beskedgrupper",
+ "translate-rcfilters-translations": "Oversættelser",
+ "translate-rcfilters-translations-only-label": "Oversættelser",
+ "translate-rcfilters-translations-only-desc": "Ændringer til oversatte sider.",
+ "translate-rcfilters-translations-filter-label": "Ikke oversættelser",
+ "translate-rcfilters-translations-filter-desc": "Alle ændringer som ikke er oversættelser.",
"translate-rc-translation-filter": "Filtrér oversættelser:",
"translate-rc-translation-filter-no": "Gør ingenting",
"translate-rc-translation-filter-only": "Vis kun oversættelser",
@@ -143,8 +147,7 @@
"translate-statsf-language": "Kommasepareret liste med sprogkoder:",
"translate-statsf-group": "Kommasepareret liste med gruppekoder:",
"translate-statsf-submit": "Forhåndsvisning",
- "translate-tag-category": "Sider som kan oversættes",
- "translate-tag-page-desc": "Oversættelse af wikisiden [[$2|$1]].",
+ "translate-tag-page-desc": "Oversættelse af wikisiden [[$2|$1]] fra $3 ($4).",
"translate-sidebar-alltrans": "På andre sprog",
"translations": "Alle oversættelser",
"translations-summary": "Skriv navnet på en besked nedenfor for at vise alle tilgængelige oversættelser.",
@@ -184,7 +187,7 @@
"translate-mgs-noempty": "Vis ikke sprog, som ikke har nogen oversættelser",
"translate-mgs-submit": "Vis statistik",
"translate-mgs-column-language": "Sprog",
- "translate-mgs-totals": "Alle sprog sammenlagt",
+ "translate-mgs-totals": "Alle {{PLURAL:$1|sprog}} sammenlagt",
"translate-mgs-invalid-group": "Den angivne gruppe, $1, findes ikke.",
"translate-mgs-nothing": "Der er intet at vise for den ønskede statistik.",
"supportedlanguages": "Understøttede sprog",
@@ -217,7 +220,6 @@
"translate-manage-toolong": "Den maksimale udførelsestid på $1 {{PLURAL:$1|sekund|sekunder}} er overskredet.\nSend venligst formularen igen for at fortsætte behandlingen.",
"translate-manage-import-summary": "Importerer en ny version fra ekstern kilde",
"translate-manage-conflict-summary": "Importerer en ny version fra en ekstern kilde.\nTjek venligst.",
- "translate-manage-fuzzy-summary": "Definitionen af beskeden er blevet ændret",
"translate-manage-submit": "Udfør",
"translate-manage-intro-other": "Nedenfor er listen over ændringer af oversættelser for sproget $1.\nGennemgå venligst ændringerne og vælg en handling du ønsker at foretage for hver ændring.\nHvis du vælger at ignorere ændringer, er denne handling kun midlertidig.",
"translate-manage-import-ok": "Importeret: $1",
@@ -226,7 +228,7 @@
"translate-import-from-local": "Upload af lokal fil:",
"translate-import-load": "Indlæs fil",
"translate-import-err-dl-failed": "Kunne ikke hente filen:\n$1",
- "translate-import-err-ul-failed": "Fil upload lykkedes ikke",
+ "translate-import-err-ul-failed": "Fil kunne ikke uploades",
"translate-import-err-invalid-title": "Det angivne filnavn <nowiki>$1</nowiki> var ugyldig.",
"translate-import-err-no-such-file": "Fil <nowiki>$1</nowiki> eksisterer ikke eller er ikke blevet uploadet lokalt.",
"translate-import-err-stale-group": "Beskedgruppen, som denne fil tilhører, findes ikke.",
@@ -235,9 +237,7 @@
"translate-js-summary": "Beskrivelse:",
"translate-js-save": "Gem",
"translate-js-next": "Gem og åben næste",
- "translate-js-nonext": "Dette var den sidste besked på denne side.",
"translate-js-skip": "Gå til næste",
- "translate-js-save-failed": "Lagring mislykkedes. Rapporter venligst denne fejl.",
"translate-js-history": "Oversættelseshistorik",
"translate-js-support": "Stil spørgsmål",
"translate-js-support-title": "Spørg om hjælp, hvis der ikke er nok information til at oversætte denne besked korrekt.",
@@ -256,19 +256,6 @@
"translate-searchprofile-tooltip": "Søg i alle oversættelser",
"translate-search-languagefilter": "Filtrer efter sprog:",
"translate-search-nofilter": "Ingen filtrering",
- "translate-messagereview-submit": "Markér som korrekturlæst",
- "translate-messagereview-progress": "Markerer som korrekturlæst ...",
- "translate-messagereview-failure": "Markering som korrekturlæst mislykkedes: $1",
- "translate-messagereview-done": "Korrekturlæst",
- "translate-messagereview-reviews": "Korrekturlæst af {{PLURAL:$1|én bruger|$1 brugere}}",
- "translate-messagereview-reviewswithyou": "Korrekturlæst af {{PLURAL:$1|dig|$1 brugere inklusive dig}}",
- "api-error-invalidrevision": "Oversættelsen blev ikke fundet",
- "api-error-unknownmessage": "Beskeden blev ikke fundet",
- "api-error-fuzzymessage": "Oversættelse er markeret som forældet",
- "api-error-owntranslation": "Du kan ikke korrekturlæse dine egne oversættelser",
- "translate-messagereview-no-fuzzy": "Forældede meddelelser kan ikke markeres som korrekturlæste.",
- "translate-messagereview-no-own": "Du kan ikke korrekturlæse dine egne oversættelser.",
- "translate-messagereview-doit": "Markér denne oversættelse som korrekturlæst.",
"log-name-translationreview": "Log for oversættelseskorrektur",
"log-description-translationreview": "Log over alle korrekturlæsninger af oversættelser og meddelelsesgrupper.",
"logentry-translationreview-message": "$1 {{GENDER:$2|korrekturlæste}} oversættelsen $3",
@@ -281,10 +268,7 @@
"action-translate-sandboxaction": "udføre handlinger der er tilladt for brugere i sandkassen",
"translate-workflow-state-": "(ikke sat)",
"translate-workflowstatus": "Status: $1",
- "translate-workflow-set-do": "Sæt",
"translate-workflow-set-doing": "Sætter ...",
- "translate-workflow-set-done": "Sat!",
- "translate-workflow-set-error-alreadyset": "Den ønskede status er identisk med den aktuelle status.",
"translate-workflow-autocreated-summary": "Automatisk oprettelse af side til workflowstatus $1",
"translate-stats-workflow": "Status",
"translate-workflowgroup-label": "Workflowstatusser",
@@ -293,11 +277,6 @@
"translate-dynagroup-recent-desc": "Denne meddelelsesgruppe viser alle nylige oversættelser til dette sprog.\nDet er mest nyttigt til korrekturlæsningsopgaver.",
"translate-dynagroup-additions-label": "De seneste tilføjelser",
"translate-dynagroup-additions-desc": "Denne meddelelsesgruppe viser nye og ændrede meddelelser.",
- "translate-dynagroup-by": "Oversat af {{GENDER:$1|$1}}",
- "translate-dynagroup-byc": "Oversat af {{GENDER:$1|$1}} ($2)",
- "translate-dynagroup-last": "Sidste ændring af {{GENDER:$1|$1}}",
- "translate-dynagroup-lastc": "Sidste ændring af {{GENDER:$1|$1}} ($2)",
- "translate-gethelp": "Hjælp",
"translate-msggroupselector-projects": "Beskedgruppe",
"translate-msggroupselector-search-placeholder": "Søg efter grupper",
"translate-msggroupselector-search-all": "Alle",
@@ -316,6 +295,7 @@
"tux-status-translated": "Oversat",
"tux-status-saving": "Gemmer ...",
"tux-status-unsaved": "Ikke gemt",
+ "tux-save-unknown-error": "Der opstod en ukendt fejl.",
"tux-editor-placeholder": "Din oversættelse",
"tux-editor-paste-original-button-label": "Indsæt kildeteksten",
"tux-editor-discard-changes-button-label": "Fjern alle ændringer",
@@ -323,6 +303,7 @@
"tux-editor-skip-button-label": "Spring til næste",
"tux-editor-cancel-button-label": "Annullér",
"tux-editor-confirm-button-label": "Bekræft oversættelse",
+ "tux-editor-proofread-button-label": "Markér som korrekturlæst",
"tux-editor-shortcut-info": "Tryk på \"$1\" for at gemme, eller \"$2\" for at springe til næste meddelelse",
"tux-editor-edit-desc": "Redigér dokumentation",
"tux-editor-add-desc": "Tilføj dokumentation",
@@ -378,11 +359,15 @@
"tux-editor-close-tooltip": "Luk",
"tux-editor-expand-tooltip": "Fold ud",
"tux-editor-collapse-tooltip": "Slå sammen",
+ "tux-editor-message-tools-show-editor": "Vis i wikieditoren",
"tux-editor-message-tools-history": "Historik",
+ "tux-editor-message-tools-delete": "Slet",
"tux-editor-message-tools-translations": "Alle oversættelser",
+ "tux-editor-message-tools-linktothis": "Link til denne besked",
"tux-editor-loading": "Indlæser ...",
"translate-search-more-languages-info": "$1 {{PLURAL:$1|mere sprog|flere sprog}}",
"translate-statsbar-tooltip": "$1% oversatte, $2% korrekturlæste",
"translate-statsbar-tooltip-with-fuzzy": "$1% oversatte, $2% korrekturlæste, $3% forældede",
- "translate-search-more-groups-info": "$1 {{PLURAL:$1|mere gruppe|flere grupper}}"
+ "translate-search-more-groups-info": "$1 {{PLURAL:$1|mere gruppe|flere grupper}}",
+ "translate-ulsdep-body": "Oversættelseudvidelsen er afhængig af [https://www.mediawiki.stjæle/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector udvidelsen Universal Language Selector]."
}
diff --git a/MLEB/Translate/i18n/core/de-ch.json b/MLEB/Translate/i18n/core/de-ch.json
index f0fd53c3..db6330de 100644
--- a/MLEB/Translate/i18n/core/de-ch.json
+++ b/MLEB/Translate/i18n/core/de-ch.json
@@ -8,6 +8,5 @@
]
},
"translate-page-description-hasoptional": "Diese Nachrichtengruppe enthält optionale Nachrichten.\nOptionale Nachrichten sollten nur dann übersetzt werden, sofern es in deiner Sprache Bedarf für sie gibt,\nwie beispielsweise die Nichtverwendung von Leerschlägen oder die Transkription von Eigennamen. $1",
- "translate-edit-no-information": "<em>Zu dieser Nachricht ist keine Dokumentation vorhanden.\nSofern du weisst, wo und in welchem Zusammenhang sie genutzt wird, kannst du anderen Übersetzern bei ihrer Arbeit helfen, indem du eine Dokumentation hinzufügst.</em>",
- "translate-messagereview-reviewswithyou": "Überprüft von {{PLURAL:$1|dir selbst|$1 Benutzern, einschliesslich dir selbst}}"
+ "translate-edit-no-information": "<em>Zu dieser Nachricht ist keine Dokumentation vorhanden.\nSofern du weisst, wo und in welchem Zusammenhang sie genutzt wird, kannst du anderen Übersetzern bei ihrer Arbeit helfen, indem du eine Dokumentation hinzufügst.</em>"
}
diff --git a/MLEB/Translate/i18n/core/de-formal.json b/MLEB/Translate/i18n/core/de-formal.json
index f99292dc..317ed050 100644
--- a/MLEB/Translate/i18n/core/de-formal.json
+++ b/MLEB/Translate/i18n/core/de-formal.json
@@ -24,8 +24,5 @@
"translate-manage-inconsistent": "Es wurden Inkonsistenzen in der Anfrage festgestellt.\nBitte überprüfen Sie Ihre Änderungen und versuchen Sie es erneut.\nDetails: $1",
"translate-manage-toolong": "Die maximale Verarbeitungszeit von $1 {{PLURAL:$1|Sekunde|Sekunden}} ist abgelaufen.\nBitte schicken Sie das Formular noch einmal ab, um die Verarbeitung fortzusetzen.",
"translate-manage-intro-other": "Hier ist eine Liste von Übersetzungsänderungen der Sprache $1.\nBitte kontrollieren Sie die Änderungen und wählen Sie je eine Aktion, die Sie auf die Übersetzungen anwenden möchten.\nWenn Sie sich entscheiden, Änderungen zu ignorieren, werden sie mit dem nächsten Export überschrieben.",
- "translate-import-err-warnings": "Die Datei entspricht nicht dem erwarteten Format.\nStellen Sie sicher, dass der Editor keine <code>msgctxt</code>-Felder entfernt.\nDetails: $1",
- "translate-messagereview-reviewswithyou": "Akzeptiert von {{PLURAL:$1|Ihnen selbst|$1 Benutzern, einschließlich Ihnen selbst}}",
- "api-error-owntranslation": "Sie können Ihre eigenen Übersetzungen nicht akzeptieren.",
- "translate-messagereview-no-own": "Sie können Ihre eigenen Übersetzungen nicht akzeptieren."
+ "translate-import-err-warnings": "Die Datei entspricht nicht dem erwarteten Format.\nStellen Sie sicher, dass der Editor keine <code>msgctxt</code>-Felder entfernt.\nDetails: $1"
}
diff --git a/MLEB/Translate/i18n/core/de.json b/MLEB/Translate/i18n/core/de.json
index 6fa231b6..69c8a73f 100644
--- a/MLEB/Translate/i18n/core/de.json
+++ b/MLEB/Translate/i18n/core/de.json
@@ -24,18 +24,15 @@
]
},
"translate": "Übersetzen",
- "translate-desc": "Ergänzt eine [[Special:Translate|Spezialseite]] zum Übersetzen von MediaWiki und weiterem",
- "translate-taskui-view": "Alle Nachrichten anzeigen",
- "translate-taskui-untranslated": "Alle nicht übersetzten Nachrichten anzeigen",
- "translate-taskui-optional": "Alle optionalen Nachrichten anzeigen",
- "translate-taskui-acceptqueue": "Nur Nachrichten anzeigen, die ich als überprüft markieren kann.",
- "translate-taskui-reviewall": "Alle Übersetzungen überprüfen",
+ "translate-extensionname": "Translate",
+ "translate-desc": "Erweitert das Wiki um eine [[Special:Translate|Spezialseite]] zum Übersetzen von MediaWiki und weiterem",
+ "translate-fuzzybot-desc": "Dies ist ein spezielles System-Benutzerkonto, das von der MediaWiki-Softwareerweiterung [https://www.mediawiki.org/wiki/Extension:Translate „Translate“] verwendet wird, um Übersetzungen zu warten.\nDieses Benutzerkonto ist Teil der MediaWiki-Software und gehört keinem Benutzer.",
"translate-taskui-export-to-file": "Im systemeigenen Format exportieren",
"translate-taskui-export-as-po": "Für die Offline-Übersetzung exportieren",
"translate-taction-translate": "Übersetzen",
"translate-taction-proofread": "Überprüfen",
- "translate-taction-lstats": "Statistiken zur Sprache",
- "translate-taction-mstats": "Statistiken zur Nachrichtengruppe",
+ "translate-taction-lstats": "Statistiken zu Sprachen",
+ "translate-taction-mstats": "Statistiken zu Nachrichtengruppen",
"translate-taction-export": "Exportieren",
"translate-taction-disabled": "Diese Aktion ist in diesem Wiki deaktiviert.",
"translate-page-no-such-language": "Die angegebene Sprache ist ungültig.",
@@ -58,7 +55,6 @@
"translate-page-description-hasoptional": "Diese Nachrichtengruppe enthält optionale Nachrichten.\nOptionale Nachrichten sollten nur dann übersetzt werden, sofern es in deiner Sprache Bedarf für sie gibt,\nwie beispielsweise die Nichtverwendung von Leerzeichen oder die Transkription von Eigennamen. $1",
"translate-page-description-hasoptional-open": "Optionale Nachrichten anzeigen.",
"translate-page-edit": "bearbeiten",
- "translate-ext-url": "<hr />Website: $1",
"translate-optional": "(optional)",
"translate-ignored": "(ignoriert)",
"translate-edit-title": "„$1“ bearbeiten",
@@ -68,14 +64,17 @@
"translate-edit-no-information": "<em>Zu dieser Nachricht ist keine Dokumentation vorhanden.\nSofern du weißt, wo und in welchem Zusammenhang sie genutzt wird, kannst du anderen Übersetzern bei ihrer Arbeit helfen, indem du eine Dokumentation hinzufügst.</em>",
"translate-edit-information": "Information zur Nachricht ($1)",
"translate-edit-in-other-languages": "Nachricht in anderen Sprachen",
- "translate-edit-committed": "Aktuelle Übersetzung",
"translate-edit-warnings": "Warnungen zu unvollständigen Übersetzungen",
- "translate-edit-tmsugs": "Vorschläge aus dem Übersetzungsspeicher",
"translate-edit-tmmatch-source": "Übersetzungsquelltext: $1",
"translate-edit-tmmatch": "$1 % Übereinstimmung",
"translate-use-suggestion": "Ersetze die aktuelle Übersetzung mit diesem Vorschlag.",
"translate-edit-nopermission": "Du benötigst Übersetzerrechte, um Nachrichten übersetzen zu können.",
"translate-edit-askpermission": "Berechtigung erhalten",
+ "exporttranslations": "Übersetzungen exportieren",
+ "translate-export-form-format": "Format",
+ "translate-export-invalid-format": "Bitte ein gültiges Format angeben.",
+ "translate-export-not-supported": "Das Exportieren von Übersetzungen wird nicht unterstützt.",
+ "translate-export-format-notsupported": "Das angegebene Exportformat wird von der Nachrichtengruppe nicht unterstützt.",
"translate-magic-pagename": "Übersetzen (extra)",
"translate-magic-help": "Du kannst hier Aliase für Spezialseiten, magische Wörter und Namensraumnamen übersetzen.\n\nSpezialseiten und magische Wörter können mehrere Übersetzungen haben,\nsie werden jeweils durch ein Komma (,) getrennt.\nNamensräume dürfen nur je eine Übersetzung haben.\n\nDas Übersetzen des Projektdiskussionsseitennamensraums <code>$1 talk</code> kann kompliziert werden.\n<code>$1</code> wird durch den Projektnamen ersetzt (zum Beispiel <code>{{ns:project_talk}}</code>).\nSofern es in deiner Sprache nicht möglich ist eine grammatikalisch korrekte Form zu bilden, ohne den Projektnamen zu verändern, lasse es uns bitte auf [[Support]] wissen.\n\nDu musst Übersetzer sein, um Änderungen speichern zu können.\nÄnderungen werden erst beim Klick auf den Button „Speichern“ gespeichert.",
"translate-magic-module": "Modul:",
@@ -94,7 +93,7 @@
"translate-magic-namespace": "Namen von Namensräumen",
"translate-magic-notsaved": "Die Änderungen wurden nicht gespeichert.",
"translate-magic-errors": "Bitte behebe {{PLURAL:$1|nachfolgenden|nachfolgende}} Fehler in der Übersetzung:",
- "translate-magic-saved": "Die Änderungen wurden erfolgreich gespeichert.",
+ "translate-magic-saved": "Die Änderungen wurden gespeichert.",
"translate-checks-parameters": "{{PLURAL:$2|Der folgende Parameter wird|Die folgenden Parameter werden}} nicht benutzt:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-parameters-unknown": "{{PLURAL:$2|Der folgende Parameter ist|Die folgenden Parameter sind}} unbekannt:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-balance": "Die {{PLURAL:$2|folgende Klammersetzung ist|folgenden Klammersetzungen sind}} nicht ausgeglichen:\n<strong><nowiki>$1</nowiki></strong>",
@@ -121,13 +120,22 @@
"right-translate-import": "Offlineübersetzungen importieren",
"action-translate-import": "Offlineübersetzungen zu importieren",
"right-translate-messagereview": "Übersetzungen überprüfen",
+ "action-translate-messagereview": "Übersetzungen zu überprüfen",
"right-translate-groupreview": "Arbeitsablaufstatus von Nachrichtengruppen ändern",
+ "action-translate-groupreview": "den Workflow-Status von Nachrichtengruppen zu ändern",
+ "translate-rcfilters-translations": "Übersetzungen",
+ "translate-rcfilters-translations-only-label": "Übersetzungen",
+ "translate-rcfilters-translations-only-desc": "Änderungen an übersetzten Seiten.",
+ "translate-rcfilters-translations-filter-label": "Keine Übersetzungen",
+ "translate-rcfilters-translations-filter-desc": "Alle Änderungen, die keine Übersetzungen sind.",
+ "translate-rcfilters-translations-site-label": "Systemnachrichten der Website",
+ "translate-rcfilters-translations-site-desc": "Anpassungen an Systemnachrichten der Website im MediaWiki-Namensraum.",
"translate-rc-translation-filter": "Übersetzungen filtern:",
"translate-rc-translation-filter-no": "nichts",
"translate-rc-translation-filter-only": "Zeige nur Übersetzungen",
"translate-rc-translation-filter-filter": "Übersetzungen filtern",
"translate-rc-translation-filter-site": "Nur Änderungen an den Nachrichten des Wikis",
- "translationstats": "Übersetzungsstatistik",
+ "translationstats": "Statistiken zu Übersetzungen",
"translate-stats-edits": "Bearbeitungen",
"translate-stats-users": "Übersetzer",
"translate-stats-registrations": "Registrierungen",
@@ -153,7 +161,6 @@
"translate-statsf-language": "Komma-getrennte Liste der Sprachcodes:",
"translate-statsf-group": "Komma-getrennte Liste der Gruppencodes:",
"translate-statsf-submit": "Vorschau",
- "translate-tag-category": "Übersetzbare Seiten",
"translate-tag-page-desc": "Übersetzung der Wikiseite [[$2|$1]] von $3 ($4).",
"translate-sidebar-alltrans": "In anderen Sprachen",
"translations": "Alle Übersetzungen",
@@ -166,7 +173,7 @@
"translate-translations-project": "Projekt:",
"translate-translations-including-no-param": "Bitte gib einen gültigen Nachrichtennamen als Unterseitenparameter an",
"translate-translations-history-short": "V",
- "languagestats": "Statistiken zur Sprache",
+ "languagestats": "Statistiken zu Sprachen",
"languagestats-summary": "Diese Seite zeigt Statistiken zu Übersetzungen für alle Nachrichtengruppen einer Sprache.",
"messagegroupstats-summary": "Diese Seite zeigt Statistiken zu Nachrichtengruppen.",
"languagestats-stats-for": "Übersetzungsstatistik für die Sprache $1 ($2).",
@@ -188,23 +195,25 @@
"translate-languagestats-overall": "Alle Gruppen zusammen",
"translate-ls-submit": "Statistiken anzeigen",
"translate-ls-column-group": "Systemnachrichtengruppe",
- "translate-mgs-pagename": "Statistiken zur Nachrichtengruppe",
+ "translate-mgs-pagename": "Statistiken zu Nachrichtengruppen",
"translate-mgs-fieldset": "Einstellungen anzeigen",
"translate-mgs-group": "Gruppe:",
"translate-mgs-nocomplete": "Nicht die Sprachen anzeigen, zu denen die Übersetzungen fertiggestellt wurden",
"translate-mgs-noempty": "Nicht die Sprachen anzeigen, zu denen noch keine Übersetzungen fertiggestellt wurden",
"translate-mgs-submit": "Statistiken anzeigen",
"translate-mgs-column-language": "Sprache",
- "translate-mgs-totals": "Alle Sprachen zusammen",
+ "translate-mgs-totals": "{{PLURAL:$1|Die gesamte Sprache|Alle $1 Sprachen zusammen}}",
"translate-mgs-invalid-group": "Die angegebene Nachrichtengruppe $1 ist nicht vorhanden.",
"translate-mgs-nothing": "Zu den angeforderten Statistiken gibt es keine anzuzeigenden Daten.",
"supportedlanguages": "Unterstützte Sprachen",
"supportedlanguages-summary": "Diese Seite zeigt eine Liste aller auf {{SITENAME}} unterstützen Sprachen, zusammen mit den Namen der Übersetzer, die an der jeweiligen Sprache mitgearbeitet haben.\nJe intensiver ein Übersetzer mitgearbeitet hat, desto größer wird sein Benutzername angezeigt.\nDie zur Unterstreichung des Benutzernamens genutzte Farbe zeigt an, wann der Übersetzer zuletzt aktiv mitgearbeitet hat.",
"supportedlanguages-colorlegend": "Legende zu den Farben: Letzte Übersetzung vor $1 Tagen.",
+ "supportedlanguages-sqlite-error": "SQLite wird nicht unterstützt",
"supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|Übersetzer|Übersetzerin}}|Übersetzer}}: $1",
"supportedlanguages-recenttranslations": "Aktuelle Übersetzungen",
"supportedlanguages-count": "Insgesamt $1 {{PLURAL:$1|Sprache|Sprachen}}.",
"supportedlanguages-activity": "$1: $2 {{PLURAL:$2|Bearbeitung|Bearbeitungen}} - letzte Bearbeitung vor $3 {{PLURAL:$3|Tag|Tagen}}",
+ "abusefilter-edit-builder-vars-translate-source-text": "Quelltext der Übersetzungseinheit",
"translate-save": "Speichern ($1)",
"translate-jssti-add": "Zur Liste hinzufügen",
"managemessagegroups": "Nachrichtengruppenverwaltung",
@@ -228,7 +237,6 @@
"translate-manage-toolong": "Die maximale Verarbeitungszeit von $1 {{PLURAL:$1|Sekunde|Sekunden}} ist abgelaufen.\nBitte schicke das Formular noch einmal ab, um die Verarbeitung fortzusetzen.",
"translate-manage-import-summary": "Neue Version von externer Quelle importiert",
"translate-manage-conflict-summary": "Neue Version von externer Quelle importiert.\nBitte überprüfen.",
- "translate-manage-fuzzy-summary": "Die Nachrichtendefinition hat sich geändert",
"translate-manage-submit": "Ausführen",
"translate-manage-intro-other": "Hier ist eine Liste von Übersetzungsänderungen der Sprache $1.\nBitte kontrolliere die Änderungen und wähle je eine Aktion, die du auf die Aktualisierungen anwenden möchtest.\nWenn du dich entscheidest, Änderungen zu ignorieren, ist diese Aktion nur vorübergehend.",
"translate-manage-import-ok": "Importiert: $1",
@@ -237,7 +245,7 @@
"translate-import-from-local": "Lokale Datei hochladen:",
"translate-import-load": "Datei laden",
"translate-import-err-dl-failed": "Datei kann nicht abgerufen werden:\n$1",
- "translate-import-err-ul-failed": "Das Hochladen der Datei war nicht erfolgreich",
+ "translate-import-err-ul-failed": "Das Hochladen der Datei ist fehlgeschlagen",
"translate-import-err-invalid-title": "Der angegebene Dateiname <nowiki>$1</nowiki> war ungültig.",
"translate-import-err-no-such-file": "Die Datei <nowiki>$1</nowiki> existiert nicht oder wurde nicht lokal hochgeladen.",
"translate-import-err-stale-group": "Die Nachrichtengruppe, der diese Datei zugeordnet wurde, ist nicht vorhanden.",
@@ -246,9 +254,7 @@
"translate-js-summary": "Zusammenfassung:",
"translate-js-save": "Speichern",
"translate-js-next": "Speichern und nächste öffnen",
- "translate-js-nonext": "Dies war die letzte Nachricht auf dieser Seite.",
"translate-js-skip": "Weiter zur nächsten",
- "translate-js-save-failed": "Speichern ist fehlgeschlagen. Bitte melde diesen Fehler.",
"translate-js-history": "Übersetzungsgeschichte",
"translate-js-support": "Frage stellen",
"translate-js-support-title": "Frage nach Hilfe, sofern nicht ausreichend Informationen vorhanden sind, diese Nachricht richtig zu übersetzen.",
@@ -265,21 +271,9 @@
"translate-documentation-language": "Nachrichtendokumentation",
"translate-searchprofile": "Übersetzungen",
"translate-searchprofile-tooltip": "Suche in allen Übersetzungen",
+ "translate-searchprofile-note": "Weitere Suchoptionen sind verfügbar mit der [$1 Übersetzungssuche].",
"translate-search-languagefilter": "Nach Sprache filtern:",
"translate-search-nofilter": "Alle Sprachen",
- "translate-messagereview-submit": "Als überprüft markieren",
- "translate-messagereview-progress": "Markiere als überprüft …",
- "translate-messagereview-failure": "Als überprüft markieren gescheitert: $1",
- "translate-messagereview-done": "Überprüft",
- "translate-messagereview-reviews": "Überprüft von {{PLURAL:$1|einem Benutzer|$1 Benutzern}}",
- "translate-messagereview-reviewswithyou": "Überprüft von {{PLURAL:$1|dir selbst|$1 Benutzern, einschließlich dir selbst}}",
- "api-error-invalidrevision": "Die Übersetzung wurde nicht gefunden",
- "api-error-unknownmessage": "Die Nachricht wurde nicht gefunden.",
- "api-error-fuzzymessage": "Die Übersetzung ist als veraltet markiert",
- "api-error-owntranslation": "Du kannst deine eigenen Übersetzungen nicht als überprüft markieren.",
- "translate-messagereview-no-fuzzy": "Veraltete Übersetzungen können nicht als überprüft markiert werden.",
- "translate-messagereview-no-own": "Du kannst deine eigenen Übersetzungen nicht als überprüft markieren.",
- "translate-messagereview-doit": "Diese Übersetzung als überprüft markieren.",
"log-name-translationreview": "Übersetzungsprüfungs-Logbuch",
"log-description-translationreview": "Logbuch aller Übersetzungsprüfungen an Übersetzungen und Nachrichtengruppen.",
"logentry-translationreview-message": "$1 {{GENDER:$2|überprüfte}} die Übersetzung $3",
@@ -292,10 +286,7 @@
"action-translate-sandboxaction": "Aktionen auszuführen, die für Spielwiesenbenutzer auf der „weißen Liste“ stehen",
"translate-workflow-state-": "(nicht gesetzt)",
"translate-workflowstatus": "Status: $1",
- "translate-workflow-set-do": "Einstellen",
"translate-workflow-set-doing": "Wird eingestellt …",
- "translate-workflow-set-done": "Eingestellt",
- "translate-workflow-set-error-alreadyset": "Der angeforderte Status ist identisch mit dem aktuellen Status.",
"translate-workflow-autocreated-summary": "Automatische Erstellung der Seite für Arbeitsablaufstatus $1",
"translate-stats-workflow": "Status",
"translate-workflowgroup-label": "Arbeitsablaufstatus",
@@ -304,11 +295,6 @@
"translate-dynagroup-recent-desc": "Diese Nachrichtengruppe zeigt alle aktuellen Übersetzungen in diese Sprache an.\nAm nützlichsten ist sie für die Aufgaben des Überprüfens.",
"translate-dynagroup-additions-label": "Aktuelle Ergänzungen",
"translate-dynagroup-additions-desc": "Diese Nachrichtengruppe zeigt neue und geänderte Nachrichten an.",
- "translate-dynagroup-by": "Übersetzung von {{GENDER:$1|$1}}",
- "translate-dynagroup-byc": "Übersetzung von {{GENDER:$1|$1}} ($2)",
- "translate-dynagroup-last": "Letzte Änderung von {{GENDER:$1|$1}}",
- "translate-dynagroup-lastc": "Letzte Änderung von {{GENDER:$1|$1}} ($2)",
- "translate-gethelp": "Hilfe",
"translate-msggroupselector-projects": "Nachrichtengruppe",
"translate-msggroupselector-search-placeholder": "Gruppen durchsuchen",
"translate-msggroupselector-search-all": "Alle",
@@ -327,20 +313,23 @@
"tux-status-translated": "Übersetzt",
"tux-status-saving": "Speichere …",
"tux-status-unsaved": "Nicht gespeichert",
+ "tux-save-unknown-error": "Es ist ein unbekannter Fehler aufgetreten.",
"tux-editor-placeholder": "Deine Übersetzung",
+ "tux-editor-editsummary-placeholder": "Optionale Zusammenfassung",
"tux-editor-paste-original-button-label": "Quelltext einfügen",
"tux-editor-discard-changes-button-label": "Änderungen verwerfen",
"tux-editor-save-button-label": "Übersetzung speichern",
"tux-editor-skip-button-label": "Zur nächsten",
"tux-editor-cancel-button-label": "Abbrechen",
"tux-editor-confirm-button-label": "Übersetzung bestätigen",
- "tux-editor-shortcut-info": "Drücke „$1“ zum Speichern, „$2“, um zur nächsten Nachricht zu gelangen oder „$3“ für andere Tastaturkürzel.",
+ "tux-editor-proofread-button-label": "Als überprüft markieren",
+ "tux-editor-shortcut-info": "Drücke „$1“ zum Speichern, „$2“, um zur nächsten Nachricht zu gelangen, „$4“, um eine Zusammenfassung anzugeben oder „$3“ für andere Tastaturkürzel.",
"tux-editor-edit-desc": "Dokumentation bearbeiten",
"tux-editor-add-desc": "Dokumentation hinzufügen",
"tux-editor-suggestions-title": "Vorschläge",
"tux-editor-in-other-languages": "In anderen Sprachen",
"tux-editor-need-more-help": "Wird weitere Hilfe benötigt?",
- "tux-editor-ask-help": "Nach zusätzlichen Informationen fragen ...",
+ "tux-editor-ask-help": "Nach zusätzlichen Informationen fragen",
"tux-editor-tm-match": "$1 % Übereinstimmung",
"tux-warnings-more": "{{PLURAL:$1|Eine weitere|$1 weitere}}",
"tux-warnings-hide": "verstecken",
@@ -389,15 +378,18 @@
"tux-editor-close-tooltip": "Schließen",
"tux-editor-expand-tooltip": "Ausklappen",
"tux-editor-collapse-tooltip": "Einklappen",
+ "tux-editor-message-tools-show-editor": "Im Wiki-Editor anzeigen",
"tux-editor-message-tools-history": "Versionsgeschichte",
"tux-editor-message-tools-delete": "Löschen",
"tux-editor-message-tools-translations": "Alle Übersetzungen",
+ "tux-editor-message-tools-linktothis": "Auf diese Systemnachricht verlinken",
"tux-editor-loading": "Lade …",
"translate-search-more-languages-info": "{{PLURAL:$1|Eine weitere Sprache|$1 weitere Sprachen}}",
- "translate-statsbar-tooltip": "$1% übersetzt, $2% überprüft",
- "translate-statsbar-tooltip-with-fuzzy": "$1% übersetzt, $2% überprüft, $3% veraltet",
+ "translate-statsbar-tooltip": "$1 % übersetzt, $2 % überprüft",
+ "translate-statsbar-tooltip-with-fuzzy": "$1 % übersetzt, $2 % überprüft, $3 % veraltet",
"translate-search-more-groups-info": "{{PLURAL:$1|Eine weitere Gruppe|$1 weitere Gruppen}}",
"translate-ulsdep-title": "Konfigurationsfehler",
"translate-ulsdep-body": "Die Übersetzungserweiterung hängt von der [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector Erweiterung für die universelle Sprachauswahl] ab.",
- "tux-session-expired": "Du bist nicht mehr angemeldet. Bitte melde dich auf einer getrennten Registerkarte an. Alternativ kannst du eine Kopie deiner ungespeicherten Übersetzungen machen, dich anmelden und dann zu dieser Seite zurückkehren."
+ "tux-session-expired": "Du bist nicht mehr angemeldet. Bitte melde dich auf einer getrennten Registerkarte an. Alternativ kannst du eine Kopie deiner ungespeicherten Übersetzungen machen, dich anmelden, zu dieser Seite zurückkehren und deine Übersetzungen erneut eingeben.",
+ "tux-nojs": "Dieses Werkzeug funktioniert ohne JavaScript nicht. Es ist deaktiviert, funktioniert nicht oder dieser Browser wird nicht unterstützt."
}
diff --git a/MLEB/Translate/i18n/core/diq.json b/MLEB/Translate/i18n/core/diq.json
index 33a9bd60..ac5bf26b 100644
--- a/MLEB/Translate/i18n/core/diq.json
+++ b/MLEB/Translate/i18n/core/diq.json
@@ -4,21 +4,30 @@
"Erdemaslancan",
"Gorizon",
"Marmase",
- "Mirzali"
+ "Mirzali",
+ "Kumkumuk",
+ "Asmen",
+ "Gırd",
+ "1917 Ekim Devrimi",
+ "Gambollar",
+ "Dılmıc",
+ "Archaeodontosaurus"
]
},
"translate": "Açarnayış",
"translate-desc": "MediaWiki u vêşi açarnayışan rê [[Special:Translate|Pela xısusi]]",
- "translate-taskui-view": "Mesacan pêro bımocne",
- "translate-taskui-untranslated": "Mesacanê nêaçarniyayeyan bımocne",
- "translate-taskui-optional": "Mesacanê waşteyan bımocne",
- "translate-taskui-acceptqueue": "Tenya mesacê ke ez şenan qebul kerê",
- "translate-taskui-reviewall": "Açarnayışan pêro çım ra raviyarne",
+ "translate-taskui-export-to-file": "Lokal format dı ateberd",
+ "translate-taskui-export-as-po": "Çerxteber açarnayışi ateberd",
"translate-taction-translate": "Açarnayış",
- "translate-taction-proofread": "Çımraraviyarnayış",
+ "translate-taction-proofread": "Çım berze cı",
"translate-taction-lstats": "İstatistikê zıwani",
"translate-taction-mstats": "İstatistikê gruba mesacan",
- "translate-taction-export": "Teber de",
+ "translate-taction-export": "Teberdayış",
+ "translate-taction-disabled": "Ena fiil ena wiki dı dewre ra vet a.",
+ "translate-page-no-such-language": "Sılaste zıwan ravërde niyo.",
+ "translate-page-no-such-group": "Sılaste grub ravërde niya.",
+ "translate-page-disabled": "Ena grub dı çerx kerdena zıwani dewre ra vıciyabya. \n\n\nÇıkı:\n<em>$1</em>",
+ "translate-language-disabled": "Ena zıwan dı açarnayış dewre ra veto",
"translate-page-settings-legend": "Sazi",
"translate-page-group": "Grube",
"translate-page-language": "Zıwan",
@@ -30,66 +39,100 @@
"translate-page-showing-all": "$1 {{PLURAL:$1|mesac|mesaci}} asenê.",
"translate-page-showing-none": "Mesaco ke bımocneyo çınyo.",
"translate-page-paging-links": "[ $1 ] [ $2 ]",
- "translate-next": "Pela peyêne",
- "translate-prev": "Pela verêne",
+ "translate-next": "Perra peyêne",
+ "translate-prev": "Perra verêne",
"translate-page-description-legend": "Heqa grube de melumat",
"translate-page-description-hasoptional-open": "Mesacanê waşteyan bımocne.",
"translate-page-edit": "bıvurne",
- "translate-ext-url": "<hr />Web sitay cı: $1",
"translate-optional": "(opsiyonel)",
"translate-ignored": "(Nê hesıbneyine)",
"translate-edit-title": "\"$1\"i bıvurne",
- "translate-edit-definition": "Şınasiya mesaci",
+ "translate-edit-definition": "Şınasnayışê mesaci",
"translate-edit-translation": "Çarnayışi",
- "translate-edit-contribute": "iştıraq ke",
- "translate-edit-no-information": "<em>''Wesiqaya nê mesaci çışniya.''\n''Şıma ke zanê koti ya zi no mesac gureniyeno, şıma şenê açarnoğanê binan rê qandê wesiqa ilawekerdış be nê mesaci ra peşti cı dê.''</em>",
+ "translate-edit-contribute": "iştırak ke",
+ "translate-edit-no-information": "<em>''Wesiqay nê mesaci çıniya.\nŞıma ke zanê kamca ya zi senên no mesac gırweniyeno, şıma şenê tadaoğanê (açarnoğanê) binan rê qandê cıkerdışê wesiqa be nê mesaci ra peşti cı dê.</em>",
"translate-edit-information": "Heqa mesacê ($1) de melumat",
- "translate-edit-in-other-languages": "Zıwanan dê binan de mesaci",
- "translate-edit-tmsugs": "Virê çarnayışi u çarnayışê makina ra weşenayışi",
+ "translate-edit-in-other-languages": "Tayna zıwanan dı mesaci",
+ "translate-edit-tmmatch-source": "Metınê çımey açarnayışi: $1",
"translate-edit-tmmatch": "Zey $1%",
- "translate-magic-pagename": "Açarnayışê MedyaWikiyo hera",
+ "translate-use-suggestion": "Mewcud açarnayışi tewsiye ya bıvurnê",
+ "translate-edit-nopermission": "Mrsaca guryayışi rê hrqa icazeta şıma icab kena.",
+ "translate-edit-askpermission": "İcazet bıgi",
+ "exporttranslations": "Açarnayışi ateber dı",
+ "translate-export-form-format": "Format",
+ "translate-magic-pagename": "Açarnayışê MediaWiki yo hera",
"translate-magic-module": "Modul:",
"translate-magic-submit": "Biya",
- "translate-magic-cm-export": "Teber de",
+ "translate-magic-cm-export": "Teberdayış",
+ "translate-magic-nothing-to-export": "A teber deyaye qırşê çıniyo.",
"translate-magic-cm-to-be": "Bıke",
"translate-magic-cm-current": "Newe resnayış",
"translate-magic-cm-original": "Oricinal",
"translate-magic-cm-comment": "Mışewre:",
"translate-magic-cm-save": "Qeyd ke",
+ "translate-magic-cm-updatedusing": "[[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]] karyayışa biyo racaniye.",
"translate-magic-cm-savefailed": "Starê nêkewt",
"translate-magic-special": "Leqebê pela xısusiye",
"translate-magic-words": "Çekuyê nuşteyıni",
"translate-magic-namespace": "Nameyê heruna nameyan",
+ "translate-magic-notsaved": "Vurnayışê şıma qeyd nêbi!",
+ "translate-magic-errors": "Reca kem wexteyo ke açarnayış ken ê se {{PLURAL:$1|xetaya|xeteyabê}} cêri bıvurne:",
+ "translate-magic-saved": "Vırnayışê şıma qeyd bi.",
+ "translate-checks-parameters": "{{PLURAL:$2|Parametreyê cêrêni nêgureniyayê|Parametreyo cêrên nêgureniyayo}}: <strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "{{PLURAL:$2|Gıra|$2 Gırey}} ceri berbata: <strong><nowiki>$1</nowiki></strong>",
"translate-pref-editassistlang": "Zıwanê peşti:",
+ "prefs-translate": "Opsiyonê çarnayışi",
+ "right-translate-manage": "İdareyê grubanê mesacan",
+ "action-translate-manage": "idareyê grubanê mesacan",
+ "right-translate-import": "Şıma tadayışanê (çarnayışanê) teberê çerxi bıgêrê zerre (import kerê)",
+ "action-translate-import": "Şıma tadayışanê (çarnayışanê) teberê çerxi bıkırışê teber (ixrac kerê)",
+ "right-translate-messagereview": "Açarnayışan bıvinê",
"translate-rc-translation-filter": "Açarnayışê parzûni:",
"translate-rc-translation-filter-no": "Qırşê mekı",
+ "translate-rc-translation-filter-only": "Teyna tadayışan bıasne",
+ "translate-rc-translation-filter-filter": "Açarnayışan parzûn ro ke",
+ "translate-rc-translation-filter-site": "Teyna vurriyayışanê mesacê sita",
"translationstats": "Açarnayışe İstatıstıkan",
"translate-stats-edits": "Vurnayışi",
"translate-stats-users": "Açarnayoği",
+ "translate-stats-registrations": "Qeydi",
+ "translate-stats-reviews": "Çımraraviyarnayışi",
+ "translate-stats-reviewers": "Vênayoği",
+ "translate-statsf-intro": "Ena form ra şıma şenê basit istatistiki vırazê. Ser u bın limitê herg erci est o.",
+ "translate-statsf-options": "Weçinegê grafiki",
+ "translate-statsf-width": "Hetê pikseli ra herayiye:",
+ "translate-statsf-height": "Hetê pikseli ra dergiye:",
+ "translate-statsf-days": "Hetê roce ra zeman:",
"translate-statsf-start": "Demê destpêkerdışi:",
+ "translate-statsf-scale": "Melumat:",
"translate-statsf-scale-months": "Aşmi",
"translate-statsf-scale-weeks": "Heftey",
"translate-statsf-scale-days": "Roci",
"translate-statsf-scale-hours": "Seati",
+ "translate-statsf-count": "Senciye:",
+ "translate-statsf-count-edits": "Amarê vurnayışan:",
+ "translate-statsf-count-users": "Açarnayoğê aktifi",
"translate-statsf-count-registrations": "Kerbero newe",
"translate-statsf-count-reviews": "Açarnayışi ercınayış",
- "translate-statsf-submit": "Verqayt",
- "translate-tag-page-desc": "Açarnayışê pela da [[$2|$1]] wiki",
- "translate-sidebar-alltrans": "Zıwanê bini",
- "translations": "Çarnayışi pêro",
+ "translate-statsf-count-reviewers": "Vênayoği",
+ "translate-statsf-submit": "Verasayış",
+ "translate-tag-page-desc": "Açarnayışê pela $3 ($4) ra [[$2|$1]] wiki",
+ "translate-sidebar-alltrans": "Zıwananê binan de",
+ "translations": "Açarnayışi pêro",
"translate-translations-fieldset-title": "Mesac",
"translate-translations-messagename": "Name:",
"translate-translations-project": "Proce:",
"translate-translations-history-short": "s",
"languagestats": "İstatistikê zıwani",
- "languagestats-summary": "Na pelay qan de istatistik dê gruban de mesaca zıwan açarnayışa mocnena.",
+ "languagestats-summary": "Ena perre qandê grubanê mesacan rê istatiskanê açarnayışê yew zıwani motnena.",
+ "messagegroupstats-summary": "Ena per istatistikanê grubanê mesacan motnena",
"languagestats-stats-for": "Qan dê $1 istatistikê açarnayışi ($2).",
- "languagestats-recenttranslations": "Çarnayışe bahdoni",
+ "languagestats-recenttranslations": "Tadayışê peyêni",
"translate-langstats-incomplete": "Tay istatistiki ena pela dı nêratneyay. İstatistikan mocnayışi rê pela newe kerê.",
"translate-langstats-expand": "Hera ke",
- "translate-langstats-collapse": "Kılm ke",
- "translate-langstats-expandall": "pêrıne hera ke",
- "translate-langstats-collapseall": "Pêron Kılm ke",
+ "translate-langstats-collapse": "teng ke",
+ "translate-langstats-expandall": "pêron hera kı",
+ "translate-langstats-collapseall": "Pêron teng kı",
"translate-language-code": "Kodê zıwani",
"translate-language-code-field-name": "Kodê zıwani:",
"translate-suppress-complete": "Grubanê mesacanê ke pêro açarniyayê bınımne",
@@ -97,8 +140,8 @@
"translate-language": "Zıwan",
"translate-total": "Mesaci",
"translate-untranslated": "Nêaçarniyaye",
- "translate-percentage-complete": "Temambiyayış",
- "translate-percentage-fuzzy": "Bi kehen",
+ "translate-percentage-complete": "Qediyayış",
+ "translate-percentage-fuzzy": "Vêrde",
"translate-languagestats-overall": "Grubanê mesacan ra pêro piya",
"translate-ls-submit": "İstatistikan bımocne",
"translate-ls-column-group": "Gruba mesacan",
@@ -107,46 +150,155 @@
"translate-mgs-group": "Gruba mesacan",
"translate-mgs-submit": "İstatistikan bımocne",
"translate-mgs-column-language": "Zıwan",
- "supportedlanguages": "Zıwanê ke qebulyayê",
- "supportedlanguages-translators": "{{PLURAL:$2|Açerner|Açerneri}}: $1",
- "supportedlanguages-recenttranslations": "Çarnayışe bahdoni",
+ "translate-mgs-totals": "Zıwani heme piya",
+ "supportedlanguages": "Zıwanê ke peşti gırewtê",
+ "supportedlanguages-summary": "Ena perre lista zıwananê ke hetê {{SITENAME}}y ra qebul biy, be namanê çarnayoğan inan motnena. \nhem zi tewr vêşi iştirak kerdaye karbera goreya zoni rezkeno. \nAçarnayoğe ke namey cı gırdo ina zaf iştiraqkkerdo. \nNara ke ek namey cı bın de reng asena aktivi yana racbayeyi.",
+ "supportedlanguages-colorlegend": "Asengeya Renga: açarnayışo peyên verdê $1 roca biyo",
+ "supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|Açarnoğ}}|Açarnoği}}: $1",
+ "supportedlanguages-recenttranslations": "Tadayışê peyêni",
+ "supportedlanguages-count": "Pêro piya $1 {{PLURAL:$1|zon|zoni}}",
"supportedlanguages-activity": "$1: pêro piya $2 {{PLURAL:$2|vurnayış|vurnayışi}} - vurnayışo peyên $3 {{PLURAL:$3|roce|roci}} aver keriya",
"translate-save": "($1) qeyd ke",
"translate-jssti-add": "Listiy miyan fi",
- "managemessagegroups": "İdareyê gruba mesacan",
+ "managemessagegroups": "Hetenayışê gruba mesacan",
+ "translate-smg-notallowed": "Semeda ena herketi rê icazeta sima cina.",
+ "translate-smg-nochanges": "Theba yo kı bıvuriyo çıni yo.",
+ "translate-smg-submit": "Averşiyaene rê vırnayışan bırışe",
+ "translate-manage-import-diff": "Mesace $1 | hereket: $2",
"translate-manage-import-new": "$1 ra yew mesaco newe",
"translate-manage-import-deleted": "Mesaco besternaye: $1",
"translate-manage-action-import": "Azare de",
- "translate-manage-action-ignore": "Pey gos bıqe",
- "translate-import-load": "Dosya barkerê",
+ "translate-manage-action-conflict": "A zereke u FUZZY nışan bıke",
+ "translate-manage-action-ignore": "Mehesıbne",
+ "translate-manage-submit": "Kay fi",
+ "translate-manage-import-ok": "Dekerdaye:$1",
+ "translate-manage-import-done": "Dekerdayış biyo temem",
+ "importtranslations": "Şıma tadayışan (çarnayışan) bıkırışê teber",
+ "translate-import-from-local": "Lokal dosya bar ke:",
+ "translate-import-load": "Dosya bar kı",
+ "translate-import-err-dl-failed": "Dosya niamiye :\n$1",
+ "translate-import-err-ul-failed": "Barkerdışê dosya nêbi",
"translate-js-summary": "Xulasa:",
"translate-js-save": "Qeyd ke",
- "translate-js-support": "Çiyê pers bıke",
+ "translate-js-skip": "Ravêr peyêni",
+ "translate-js-history": "Verorê çarnayışi",
+ "translate-js-support": "Bıperse",
"translate-gs-pos": "Ca",
"translate-gs-code": "Kod",
+ "translate-gs-continent": "Qıta",
"translate-gs-speakers": "Qısekari",
"translate-gs-score": "Skor",
"translate-gs-multiple": "Zafının",
"translate-gs-count": "Tene",
"translate-gs-total": "Pêro piya",
+ "translate-gs-avgscore": "Ort. skor",
+ "translate-documentation-language": "Pelgekerdışê mesacan",
+ "translate-searchprofile": "Çarnayışi",
+ "translate-searchprofile-tooltip": "Heme açarnayışan de cıgeyre",
+ "translate-search-languagefilter": "Gorey zıwani filtre ke:",
"translate-search-nofilter": "Bê filtre",
- "translate-messagereview-submit": "Qebul bıkê",
- "translate-messagereview-progress": "Oyo qebul beno",
- "translate-messagereview-done": "Qebuliya",
+ "log-name-translationreview": "Qeydê çım ra raviyarnayışê çarnayışan",
+ "group-translate-sandboxed": "Açarnayoğê tesdiqnêbiyayey",
+ "group-translate-sandboxed-member": "{{GENDER:$1|açarnayoğê tesdiqnêbiyayey}}",
+ "right-translate-sandboxmanage": "İdareya qumdora karberi",
+ "action-translate-sandboxmanage": "idareyê qumdora karberi",
+ "translate-workflow-state-": "(eyar ke)",
"translate-workflowstatus": "Weziyet: $1",
- "translate-workflow-set-do": "Saz",
"translate-workflow-set-doing": "Sazêno...",
- "translate-workflow-set-done": "Saz kê!",
"translate-stats-workflow": "Weziyet",
- "translate-dynagroup-recent-label": "Çarnayışe bahdoni",
- "translate-gethelp": "Peşti",
+ "translate-workflowgroup-label": "Derışê weziyetê kari",
+ "translate-dynagroup-recent-label": "Tadayışê peyêni",
+ "translate-dynagroup-recent-desc": "Na koma mesacan nê zıwani de heme açarnayışanê neweyan mocnena. Wezifaya çımraravyarnayışi rê zaf hewla.",
+ "translate-dynagroup-additions-label": "Cıbiyayışê peyêni",
+ "translate-msggroupselector-projects": "Gruba mesacan",
+ "translate-msggroupselector-search-placeholder": "Grube bıvêne",
"translate-msggroupselector-search-all": "Pêro",
+ "translate-msggroupselector-search-recent": "Peyên",
+ "translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|bıngrube|bıngrubi}}",
+ "tux-languageselector": "Tadê",
"tux-tab-all": "Pêro",
- "tux-tab-translated": "Açariyayo",
- "tux-status-translated": "Açariyayo",
+ "tux-tab-untranslated": "Nêaçarniyaye",
+ "tux-tab-outdated": "Vêrde",
+ "tux-tab-translated": "Açarniyaye",
+ "tux-tab-unproofread": "Nêvêniyayo",
+ "tux-edit": "Bıvurne",
+ "tux-status-optional": "Keyfi",
+ "tux-status-fuzzy": "Vêrde",
+ "tux-status-proofread": "Vêniya",
+ "tux-status-translated": "Açarniyaye",
+ "tux-status-saving": "Qeyd beno...",
+ "tux-status-unsaved": "Qeyd nêbiyo",
+ "tux-save-unknown-error": "Yew xetay ke nêşınasiyena biye.",
+ "tux-editor-placeholder": "Açarnayışê şıma",
+ "tux-editor-editsummary-placeholder": "Xulasaya hesabiyayiye",
+ "tux-editor-paste-original-button-label": "Çıme meyini pronı",
+ "tux-editor-discard-changes-button-label": "Vurriyayışan vece",
+ "tux-editor-save-button-label": "Açarnayışi qeyd ke",
+ "tux-editor-skip-button-label": "Ravêr peyêni",
+ "tux-editor-cancel-button-label": "Bıtexelne",
+ "tux-editor-confirm-button-label": "Açarnayışi tesdiq ke",
+ "tux-editor-proofread-button-label": "Vêniyaye nişan ke",
+ "tux-editor-shortcut-info": "Seba qeydkerdışi \"$1\" ya zi ravêrdışê mesacê bini \"$2\" ya zi dayışê xulasa \"$4\" ya zi rayanê binanê kılman rê \"$3\" bıtıkne.",
+ "tux-editor-edit-desc": "Belgekerdışi bıvurne",
+ "tux-editor-add-desc": "Dokuman dek",
+ "tux-editor-suggestions-title": "Wesıbi",
+ "tux-editor-in-other-languages": "Zıwananê binan de",
+ "tux-editor-need-more-help": "Hewna peşti lazıma?",
+ "tux-editor-ask-help": "Tayêna vêşi melumat bıperse",
+ "tux-editor-tm-match": "Zey $1%",
+ "tux-warnings-more": "{{PLURAL:$1|$1 zêde}}",
+ "tux-warnings-hide": "bınımne",
+ "tux-editor-save-failed": "Qeyd kerdışa açarnayışi nêbi:$1",
+ "tux-editor-n-uses": "$1 {{PLURAL:$1|fın|fıni}} karıyê",
+ "tux-editor-message-desc-more": "Zêde bıvêne",
+ "tux-editor-message-desc-less": "Mevin",
"tux-editor-clear-translated": "Açarnayeyan bınımne",
- "tux-editor-proofreading-mode": "Çımraraviyarnayış",
+ "tux-editor-proofreading-mode": "Çım berze cı",
+ "tux-editor-translate-mode": "Liste",
"tux-editor-proofreading-hide-own-translations": "Çarnayışanê xo nişan bınımne",
"tux-editor-proofreading-show-own-translations": "Çarnayışanê xo nişan bıde",
- "tux-editor-page-mode": "Pele"
+ "tux-proofread-action-tooltip": "Çım ra raviyarnaey nışan ke",
+ "tux-proofread-edit-label": "Bıvurne",
+ "tux-editor-page-mode": "Pele",
+ "tux-editor-outdated-warning": "Rocanebiyayışê nê açarnayışi beno ke lazım bo.",
+ "tux-editor-outdated-warning-diff-link": "Ferqi bıvin",
+ "tux-editor-doc-editor-placeholder": "Mesaca dokumani",
+ "tux-editor-doc-editor-save": "Dokumani qeyd ke",
+ "tux-editor-doc-editor-cancel": "Bıtexelne",
+ "tux-messagetable-more-messages": "$1 tayêna {{PLURAL:$1|mesac|mesaci}}",
+ "tux-messagetable-loading-messages": "{{PLURAL:$1|Mesac bar beno|Mesaci bar benê}}...",
+ "tux-message-filter-placeholder": "Lista filtrey",
+ "tux-message-filter-result": "$1 de Qandë \"$2\" {{PLURAL:$1|netice |neticey}} vineya yê",
+ "tux-message-filter-advanced-button": "Cıgeyrayışo hera",
+ "tux-message-filter-optional-messages-label": "Mesacê keyfi",
+ "tux-proofread-translated-by-self": "Çarnayışê şıma",
+ "tux-empty-list-all": "Ena gruba mesacan venga",
+ "tux-empty-list-all-guide": "Qandê açarnayışi yewna gruba mesaci weçine",
+ "tux-empty-list-translated": "Mesacê çarnaey çıniyê",
+ "tux-empty-list-translated-guide": "Şıma şenê çarnayış de yardım kerê",
+ "tux-empty-list-translated-action": "Açarnayış",
+ "tux-empty-no-messages-to-display": "Asayışê mesacan çıniyo.",
+ "tux-empty-show-optional-messages": "Mesacanê weçıniyayan bımotne",
+ "tux-empty-no-outdated-messages": "Mesacê kehani çıniyê",
+ "tux-empty-nothing-to-proofread": "Çım ra viyarnayışi rê theba çıniyo.",
+ "tux-empty-you-can-help-providing": "Açarnayışa şıma şenê desteg bıdê marê.",
+ "tux-empty-nothing-new-to-proofread": "Qandé barıyayışi theba çıni yo",
+ "tux-empty-you-can-review-already-proofread": "Tereftê tayna karbera ra açarnayışa şıma şenê kontrol kerê",
+ "tux-empty-list-other": "Açarniyaye theba çıni yo",
+ "tux-empty-list-other-guide": "Şıma şenê çım berzê açarnayışanê mewcudan pheşti bıdê",
+ "tux-empty-list-other-action": "Vênayışê açarnayışan",
+ "tux-empty-list-other-link": "Mesaca hemın bıvin",
+ "tux-editor-close-tooltip": "Racnê",
+ "tux-editor-expand-tooltip": "Hera ke",
+ "tux-editor-collapse-tooltip": "Teng kı",
+ "tux-editor-message-tools-show-editor": "Wiki-Editor de bımocne",
+ "tux-editor-message-tools-history": "Tarix",
+ "tux-editor-message-tools-delete": "Bestere",
+ "tux-editor-message-tools-translations": "Heme açarnayışi",
+ "tux-editor-loading": "Bar beno...",
+ "translate-search-more-languages-info": "$1 deha {{PLURAL:$1|zon|zoni}}",
+ "translate-statsbar-tooltip": "%$1 açarneya, %$2 weyneya",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% açarneya, $2% weyneya, $3% kehano",
+ "translate-search-more-groups-info": "$1 tayêna {{PLURAL:$1|grube|grubi}}",
+ "translate-ulsdep-title": "Vıraziyen nêbı"
}
diff --git a/MLEB/Translate/i18n/core/dsb.json b/MLEB/Translate/i18n/core/dsb.json
index 143f2929..30b502f6 100644
--- a/MLEB/Translate/i18n/core/dsb.json
+++ b/MLEB/Translate/i18n/core/dsb.json
@@ -9,11 +9,6 @@
},
"translate": "Pśełožyś",
"translate-desc": "[[Special:Translate|Specialny bok]] za pśełožowanje MediaWiki a druge",
- "translate-taskui-view": "Wšykne powěźeńki pokazaś",
- "translate-taskui-untranslated": "Njepśełožone powěźeńki pokazaś",
- "translate-taskui-optional": "Opcionalne powěźeńki pokazaś",
- "translate-taskui-acceptqueue": "Jano powěźeńki, kótarež mógu ako pśeglědane markěrowaś",
- "translate-taskui-reviewall": "Wšykne pśełožki pśeglědaś",
"translate-taskui-export-to-file": "Do systemowego formata eksportěrowaś",
"translate-taskui-export-as-po": "Za pśełožowanje offline eksportěrowaś",
"translate-taction-translate": "Pśełožyś",
@@ -42,7 +37,6 @@
"translate-page-description-hasoptional": "Toś ta zdźěleńska kupka wopśimujo opcionalne powěźeńki.\nOpcionalne powěźeńki by měli se jano pśełožowaś, jolic twója rěc ma wósebnu pótrjebu za nje,\nkaž na pśikład njewužywanje proznych znamuškow abo transliteraciju swójskich mjenjow. $1",
"translate-page-description-hasoptional-open": "Opcionalne powěźeńki pokazaś.",
"translate-page-edit": "wobźěłaś",
- "translate-ext-url": "<hr />Websedło: $1",
"translate-optional": "(opcionalny)",
"translate-ignored": "(ignorěrowany)",
"translate-edit-title": "„$1“ wobźěłaś",
@@ -52,9 +46,7 @@
"translate-edit-no-information": "<em>Toś ta powěsć njama dokumentaciju. Jolic wěš, źož abo kak toś ta powěsć se wužywa, móžoš drugim pśełožowarjam pomagaś, z tym až dokumentaciju k toś tej powěsći pśidawaš.</em>",
"translate-edit-information": "Informacije wó powěsći ($1)",
"translate-edit-in-other-languages": "Powěsć w drugich rěcach",
- "translate-edit-committed": "Aktualny pśełožk w software",
"translate-edit-warnings": "Warnowanja wó njedopołnych pśełožkach",
- "translate-edit-tmsugs": "Naraźenja z pśełožowańskego spomnjeśa",
"translate-edit-tmmatch-source": "Žrědłowy tekst pśełožka: $1",
"translate-edit-tmmatch": "$1 % makanja",
"translate-use-suggestion": "Aktualny pśełožk pśez toś to naraźenje wuměniś",
@@ -137,7 +129,6 @@
"translate-statsf-language": "Lisćina rěcnych kodow wótźělonych pśez komu:",
"translate-statsf-group": "Lisćina kupkowych kodow wótźělonych pśez komu:",
"translate-statsf-submit": "Pśeglěd",
- "translate-tag-category": "Pśełožujobne boki",
"translate-tag-page-desc": "Pśełožk wikijowego boka [[$2|$1]].",
"translate-sidebar-alltrans": "W drugich rěcach",
"translations": "Wšykne pśełožki",
@@ -211,7 +202,6 @@
"translate-manage-toolong": "Maksimalny pśeźěłowański cas $1 {{PLURAL:$1|sekundy|sekundowu|sekundow|sekundow}} jo pśebyty.\nPšosym wótpósćel formular znowego, aby z pśeźěłanim pókšacował.",
"translate-manage-import-summary": "Nowa wersija importěrujo se z eksternego žrědła",
"translate-manage-conflict-summary": "Nowa wersija importěrujo se z eksternego žrědła.\nPšosym pśeglědaś.",
- "translate-manage-fuzzy-summary": "Definicija powěźeńki jo se změniła",
"translate-manage-submit": "Wuwjasć",
"translate-manage-intro-other": "Dołojce jo lisćina pśełožkowych změnow w rěcy $1.\nPšosym pśeglědaj změny a wubjeŕ akciju, kótaruž coš za kuždy pśełožk cyniś.\nJolic ignorěrujoš změny, jo toś ta akcija jano nachylna.",
"translate-manage-import-ok": "Importěrowany: $1",
@@ -229,9 +219,7 @@
"translate-js-summary": "Zespominanje:",
"translate-js-save": "Składowaś",
"translate-js-next": "Pśiducu powěźeńku składowaś a wocyniś",
- "translate-js-nonext": "To jo było slědna powěźeńka na tos tom boku.",
"translate-js-skip": "K pśiducej powěźeńce skócyś",
- "translate-js-save-failed": "Składowanje njejo se raźiło. Pšosym daj toś tu zmólku k wěsći.",
"translate-js-history": "Pśełožowańska historija",
"translate-js-support": "Pšašaś se",
"translate-js-support-title": "Pšos wó pomoc, jolic njejo dosć informacijow, aby se toś ta powěźeńka pšawje pśełožyła.",
@@ -250,19 +238,6 @@
"translate-searchprofile-tooltip": "We wšych pśełožkach pytaś",
"translate-search-languagefilter": "Pó rěcy filtrowaś:",
"translate-search-nofilter": "Žedne filtrowanje",
- "translate-messagereview-submit": "Ako pśeglědany markěrowaś",
- "translate-messagereview-progress": "Markěrujo se ako pśeglědany...",
- "translate-messagereview-failure": "Markěrowanje ako pśeglědany njejo se raźiło: $1",
- "translate-messagereview-done": "Pśeglědany",
- "translate-messagereview-reviews": "Wót {{PLURAL:$1|jadnogo wužywarja|$1 wužywarjowu|$1 wužywarjow}} pśeglědany",
- "translate-messagereview-reviewswithyou": "Wót {{PLURAL:$1|tebje|$1 wužywarjowu inkluziwnje tebje|$1 wužywarjow inkluziwnje tebje}} pśeglědany",
- "api-error-invalidrevision": "Pśełožk njejo se namakał",
- "api-error-unknownmessage": "Powěźeńka njejo se namakała",
- "api-error-fuzzymessage": "Pśełožk jo ako zestarjony markěrowany",
- "api-error-owntranslation": "Njamóžoš swójske pśełožki ako pśeglědane markěrowaś",
- "translate-messagereview-no-fuzzy": "Zestarjone pśełožki njedaju se ako pśeglědane markěrowaś.",
- "translate-messagereview-no-own": "Njamóžoš swójske pśełožki ako pśeglědane markěrowaś.",
- "translate-messagereview-doit": "Toś ten pśełožk ako pśeglědany markěrowaś",
"log-name-translationreview": "Protokol pśełožkowych kontrolow",
"log-description-translationreview": "Protokol wšych kontrolow k pśełožkam a zdźěleńskim kupkam.",
"logentry-translationreview-message": "$1 jo pśełožk $3 ako pśeglědany {{GENDER:$2|markěrował|markěrowała}}",
@@ -275,10 +250,7 @@
"action-translate-sandboxaction": "Akcije wuwjasć, kótarež su na \"běłej lisćinje\" wužywarje grajkanišća",
"translate-workflow-state-": "(njenastajony)",
"translate-workflowstatus": "Status: $1",
- "translate-workflow-set-do": "Nastajiś",
"translate-workflow-set-doing": "Nastaja se...",
- "translate-workflow-set-done": "Nastajony!",
- "translate-workflow-set-error-alreadyset": "Pominany status jo identiski z aktualnym statusom.",
"translate-workflow-autocreated-summary": "Awtomatiske napóranje boka za źěłowótběgowy status $1",
"translate-stats-workflow": "Status",
"translate-workflowgroup-label": "Źěłowótběgowe statuse",
@@ -287,11 +259,6 @@
"translate-dynagroup-recent-desc": "Toś ta zdźěleńska kupka pokazujo wšykne aktualne pśełožki do toś teje rěcy.\nJo nejwužytnjej za pśeglědowańske nadawki.",
"translate-dynagroup-additions-label": "Aktualne dodanki",
"translate-dynagroup-additions-desc": "Toś ta powěsćowa kupka pokazujo nowe a změnjone pówěźeńki.",
- "translate-dynagroup-by": "Pśełožk wót {{GENDER:$1|$1}}",
- "translate-dynagroup-byc": "Pśełožk wót {{GENDER:$1|$1}} ($2)",
- "translate-dynagroup-last": "Nejnowša změna wót {{GENDER:$1|$1}}",
- "translate-dynagroup-lastc": "Nejnowša změna wót {{GENDER:$1|$1}} ($2)",
- "translate-gethelp": "Pomoc",
"translate-msggroupselector-projects": "Zdźěleńska kupka",
"translate-msggroupselector-search-placeholder": "Kupki pśepytaś",
"translate-msggroupselector-search-all": "Wšykne",
diff --git a/MLEB/Translate/i18n/core/ee.json b/MLEB/Translate/i18n/core/ee.json
index 442b56a3..0a0c7a4e 100644
--- a/MLEB/Translate/i18n/core/ee.json
+++ b/MLEB/Translate/i18n/core/ee.json
@@ -45,7 +45,6 @@
"supportedlanguages-recenttranslations": "gɔmeɖeɖe yeyewo",
"translate-save": "Dzra ($1) ɖo",
"translate-manage-import-new": "Du yeye $1",
- "translate-manage-fuzzy-summary": "Gɔmeɖeɖea trɔ",
"translate-manage-submit": "Wɔe",
"translate-manage-import-done": "Wo wɔ wokatã vɔ!"
}
diff --git a/MLEB/Translate/i18n/core/el.json b/MLEB/Translate/i18n/core/el.json
index c4f57acd..27f891c9 100644
--- a/MLEB/Translate/i18n/core/el.json
+++ b/MLEB/Translate/i18n/core/el.json
@@ -13,16 +13,13 @@
"Omnipaedista",
"Protnet",
"ZaDiak",
- "Περίεργος"
+ "Περίεργος",
+ "KATRINE1992",
+ "Nikosgranturismogt"
]
},
"translate": "Μεταφράστε",
"translate-desc": "[[Special:Translate|Ειδική σελίδα]] για τη μετάφραση του MediaWiki και άλλων",
- "translate-taskui-view": "Προβολή όλων των μηνυμάτων",
- "translate-taskui-untranslated": "Εμφάνιση αμετάφραστων μηνυμάτων",
- "translate-taskui-optional": "Εμφάνιση προαιρετικών μηνυμάτων",
- "translate-taskui-acceptqueue": "Μόνο μηνύματα που μπορώ να μαρκάρω ως θεωρημένα",
- "translate-taskui-reviewall": "Θεώρηση όλων των μεταφράσεων",
"translate-taskui-export-to-file": "Εξαγωγή στην εγγενή μορφή",
"translate-taskui-export-as-po": "Εξαγωγή για μετάφραση εκτός σύνδεσης",
"translate-taction-translate": "Μετάφραση",
@@ -52,7 +49,6 @@
"translate-page-description-hasoptional": "Αυτή η ομάδα μηνυμάτων περιέχει προαιρετικά μηνύματα.\nΤα προαιρετικά μηνύματα θα πρέπει να μεταφράζονται μόνο όταν η γλώσσα σας έχει ειδικές απαιτήσεις όπως τη μη χρήση κενών ή τη μεταγλώττιση κύριων ονομάτων. $1",
"translate-page-description-hasoptional-open": "Εμφάνιση προαιρετικών μηνυμάτων.",
"translate-page-edit": "επεξεργασία",
- "translate-ext-url": "<hr />Ιστοχώρος: $1",
"translate-optional": "(προαιρετικά)",
"translate-ignored": "(αγνοημένα)",
"translate-edit-title": "Επεξεργασία «$1»",
@@ -62,14 +58,17 @@
"translate-edit-no-information": "<em>Αυτό το μήνυμα δεν έχει τεκμηρίωση. \nΑν γνωρίζετε πού ή πώς χρησιμοποιείται αυτό το μήνυμα, μπορείτε να βοηθήσετε άλλους μεταφραστές προσθέτοντας τεκμηρίωση σε αυτό.</em>",
"translate-edit-information": "Πληροφορίες σχετικά με το μήνυμα ($1)",
"translate-edit-in-other-languages": "Μήνυμα σε άλλες γλώσσες",
- "translate-edit-committed": "Τρέχουσα μετάφραση στο λογισμικό",
"translate-edit-warnings": "Προειδοποιήσεις για ημιτελείς μεταφράσεις",
- "translate-edit-tmsugs": "Προτάσεις από μνήμες μετάφρασης και μηχανική μετάφραση",
"translate-edit-tmmatch-source": "Πηγαίο κείμενο μετάφρασης: $1",
"translate-edit-tmmatch": "$1% αντιστοίχιση",
"translate-use-suggestion": "Αντικατάσταση τρέχουσας μετάφρασης με την πρόταση αυτή.",
"translate-edit-nopermission": "Χρειάζεστε μεταφραστικά δικαιώματα για να μεταφράσετε μηνύματα.",
"translate-edit-askpermission": "Πάρετε άδεια",
+ "exporttranslations": "Εξαγωγή μεταφράσεων",
+ "translate-export-form-format": "Μορφή",
+ "translate-export-invalid-format": "Παρακαλούμε καθορίστε έγκυρη μορφή.",
+ "translate-export-not-supported": "Η εξαγωγή μετάφρασης δεν υποστηρίζεται.",
+ "translate-export-format-notsupported": "Η καθορισμένη μορφή εξαγωγής δεν υποστηρίζεται από την ομάδα μηνυμάτων.",
"translate-magic-pagename": "Μετάφραση εκτεταμένου MediaWiki",
"translate-magic-help": "Μπορείτε να μεταφράσετε ψευδώνυμα ειδικών σελίδων, μαγικές λέξεις και ονοματοχώρους.\n\nΤα ψευδώνυμα ειδικών σελίδων και οι μαγικές λέξεις μπορούν να έχουν πολλαπλές μεταφράσεις.\nΟι μεταφράσεις χωρίζονται με κόμμα (,).\nΟι ονοματοχώροι μπορούν να έχουν μόνο μία μετάφραση.\n\nΟι μεταφράσεις σελίδων συζήτησης του ονοματοχώρου του εγχειρήματος <code>$1 talk</code> μπορεί να είναι περίπλοκες. Η μεταβλητή <code>$1</code> αντικαθίσταται με το όνομα του ιστοτόπου (για παράδειγμα <code>{{ns:project_talk}}</code>).\n\nΑν δεν είναι δυνατόν στη γλώσσα σας να σχηματίσετε έγκυρη έκφραση χωρίς να αλλάξετε το όνομα του ιστοτόπου, παρακαλούμε επικοινωνήστε μαζί μας στην [[Support|Υποστήριξη]].\n\nΠρέπει να είστε στην ομάδα των μεταφραστών για να αποθηκεύσετε τις αλλαγές.\nΟι αλλαγές δεν αποθηκεύονται μέχρι να κάνετε κλικ στο κουμπί αποθήκευσης παρακάτω.",
"translate-magic-module": "Λειτουργική μονάδα:",
@@ -88,7 +87,7 @@
"translate-magic-namespace": "Ονομασίες ονοματοχώρων",
"translate-magic-notsaved": "Η αλλαγή σας δεν αποθηκεύθηκε!",
"translate-magic-errors": "Παρακαλώ διορθώστε {{PLURAL:$1|το ακόλουθο σφάλμα|τα ακόλουθα σφάλματα}} στις μεταφράσεις:",
- "translate-magic-saved": "Οι αλλαγές σας αποθηκεύτηκαν επιτυχώς.",
+ "translate-magic-saved": "Οι αλλαγές σας αποθηκεύτηκαν.",
"translate-checks-parameters": "{{PLURAL:$2|Η ακόλουθη παράμετρος δεν χρησιμοποιείται|Οι ακόλουθες παράμετροι δεν χρησιμοποιούνται}}: <strong><nowiki>$1</nowiki></strong>",
"translate-checks-parameters-unknown": "{{PLURAL:$2|Η ακόλουθη παράμετρος|Οι ακόλουθες παράμετροι}} είναι {{PLURAL:$2|άγνωστη|άγνωστες}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-balance": "Υπάρχει ακανόνιστη ποσότητα {{PLURAL:$2|παρενθέσεων|παρενθέσεων}}:\n<strong><nowiki>$1</nowiki></strong>",
@@ -115,7 +114,16 @@
"right-translate-import": "Εισαγωγή μεταφράσεων που έγιναν εκτός σύνδεσης",
"action-translate-import": "εισαγωγή μεταφράσεων που έγιναν εκτός σύνδεσης",
"right-translate-messagereview": "Θεώρηση μεταφράσεων",
+ "action-translate-messagereview": "θεωρήσετε μεταφράσεις",
"right-translate-groupreview": "Αλλαγή κατάστασης ροής εργασίας των ομάδων μηνυμάτων",
+ "action-translate-groupreview": "αλλάξετε την κατάσταση ροής εργασίας των ομάδων μηνυμάτων",
+ "translate-rcfilters-translations": "Μεταφράσεις",
+ "translate-rcfilters-translations-only-label": "Μεταφράσεις",
+ "translate-rcfilters-translations-only-desc": "Αλλαγές στις μεταφρασμένες σελίδες",
+ "translate-rcfilters-translations-filter-label": "Δεν υπάρχουν μεταφράσεις",
+ "translate-rcfilters-translations-filter-desc": "Όλες οι αλλαγές που δεν αφορούν μεταφράσεις.",
+ "translate-rcfilters-translations-site-label": "Μηνύματα της ιστοσελίδας",
+ "translate-rcfilters-translations-site-desc": "Προσωποποιημένα μηνύματα στο MediaWiki",
"translate-rc-translation-filter": "Φιλτράρισμα μεταφράσεων:",
"translate-rc-translation-filter-no": "Να μη γίνει τίποτα",
"translate-rc-translation-filter-only": "Εμφάνιση μόνο των μεταφράσεων",
@@ -147,7 +155,6 @@
"translate-statsf-language": "Λίστα κωδικών γλωσσών χωρισμένη με κόμματα:",
"translate-statsf-group": "Λίστα κωδικών ομάδων χωρισμένη με κόμματα:",
"translate-statsf-submit": "Προεπισκόπηση",
- "translate-tag-category": "Σελίδες προς μετάφραση",
"translate-tag-page-desc": "Μετάφραση της σελίδας wiki [[$2|$1]] από $3 ($4).",
"translate-sidebar-alltrans": "Σε άλλες γλώσσες",
"translations": "Όλες οι μεταφράσεις",
@@ -189,16 +196,18 @@
"translate-mgs-noempty": "Να μην εμφανιστούν οι γλώσσες για τις οποίες δεν έχει γίνει καμιά μετάφραση",
"translate-mgs-submit": "Εμφάνιση στατιστικών",
"translate-mgs-column-language": "Γλώσσα",
- "translate-mgs-totals": "Όλες οι γλώσσες μαζί",
+ "translate-mgs-totals": "{{PLURAL:$1|Όλη η $1 γλώσσα|Όλες οι $1 γλώσσες}} μαζί",
"translate-mgs-invalid-group": "Η καθορισμένη ομάδα $1 δεν υπάρχει.",
"translate-mgs-nothing": "Τίποτε προς εμφάνιση για τις στατιστικές που ζητήθηκαν.",
"supportedlanguages": "Υποστηριζόμενες γλώσσες",
"supportedlanguages-summary": "Αυτή η σελίδα εμφανίζει μια λίστα με όλες τις γλώσσες που υποστηρίζονται από τον ιστοχώρο {{SITENAME}},\nμαζί με τα ονόματα των μεταφραστών που δουλεύουν πάνω σε κάθε γλώσσα.\nΌσο πιο πολλές επεξεργασίες έχει συνεισφέρει ένας μεταφραστής, τόσο πιο μεγάλο εμφανίζεται το όνομά του.\nΤο χρώμα υπογράμμισης υποδεικνύει το πόσο πρόσφατα δραστηριοποιήθηκε ο κάθε μεταφραστής.",
"supportedlanguages-colorlegend": "Υπόμνημα για το χρώμα: Τελευταία μετάφραση $1 ημέρες πριν.",
+ "supportedlanguages-sqlite-error": "Το SQLite δεν υποστηρίζεται",
"supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|Μεταφραστής|Μεταφράστρια}}|Μεταφραστές}}: $1",
"supportedlanguages-recenttranslations": "πρόσφατες μεταφράσεις",
"supportedlanguages-count": "$1 {{PLURAL:$1|γλώσσα|γλώσσες}} συνολικά.",
"supportedlanguages-activity": "$1: $2 {{PLURAL:$2|επεξεργασία|επεξεργασίες}} - τελευταία επεξεργασία $3 {{PLURAL:$3|day|days}} πριν",
+ "abusefilter-edit-builder-vars-translate-source-text": "Αρχικό κείμενο μεταφραστικής ενότητας",
"translate-save": "Αποθήκευση ($1)",
"translate-jssti-add": "Προσθήκη στην λίστα",
"managemessagegroups": "Διαχείριση ομάδας μηνυμάτων",
@@ -222,7 +231,6 @@
"translate-manage-toolong": "Έγινε υπέρβαση του μέγιστου χρόνου διεργασίας που είναι $1 {{PLURAL:$1|δευτερόλεπτο|δευτερόλεπτα}}.\nΠαρακαλούμε υποβάλετε ξανά την φόρμα για να συνεχιστεί η διεργασία.",
"translate-manage-import-summary": "Γίνεται εισαγωγή νέας έκδοσης από εξωτερική πηγή.",
"translate-manage-conflict-summary": "Γίνεται εισαγωγή νέας έκδοσης από εξωτερική πηγή. Παρακαλούμε να ελεγχθεί.",
- "translate-manage-fuzzy-summary": "Ο ορισμός του μηνύματος έχει αλλάξει",
"translate-manage-submit": "Εκτέλεση",
"translate-manage-intro-other": "Παρακάτω βρίσκεται η λίστα με τις αλλαγές στη μετάφραση στη γλώσσα $1.\nΠαρακαλούμε θεωρήστε τις αλλαγές και επιλέξτε ποια ενέργεια θέλετε να γίνει για κάθε ενημέρωση.\nΕάν επιλέξετε αγνόηση των αλλαγών, η συγκεκριμένη ενέργεια είναι απλώς προσωρινή.",
"translate-manage-import-ok": "Εισήχθει: $1",
@@ -231,7 +239,7 @@
"translate-import-from-local": "Ανέβασμα τοπικού αρχείου:",
"translate-import-load": "Ανέβασμα αρχείου",
"translate-import-err-dl-failed": "Αδυναμία λήψης του αρχείου: $1",
- "translate-import-err-ul-failed": "Το ανέβασμα του αρχείου δεν ήταν επιτυχές",
+ "translate-import-err-ul-failed": "Το ανέβασμα του αρχείου απέτυχε",
"translate-import-err-invalid-title": "Το όνομα του αρχείου <nowiki>$1</nowiki> δεν ήταν έγκυρο.",
"translate-import-err-no-such-file": "Το αρχείο <nowiki>$1</nowiki> δεν υπάρχει ή δεν έχει φορτωθεί τοπικά.",
"translate-import-err-stale-group": "Η ομάδα μηνυμάτων στην οποία ανήκει αυτό το αρχείο δεν υπάρχει.",
@@ -240,9 +248,7 @@
"translate-js-summary": "Σύνοψη:",
"translate-js-save": "Αποθήκευση",
"translate-js-next": "Αποθήκευση και άνοιγμα του επόμενου",
- "translate-js-nonext": "Αυτό ήταν το τελευταίο μήνυμα σε αυτήν τη σελίδα.",
"translate-js-skip": "Μετάβαση στο επόμενο",
- "translate-js-save-failed": "Η αποθήκευση απέτυχε. Παρακαλούμε αναφέρετε αυτό το σφάλμα.",
"translate-js-history": "Ιστορικό μετάφρασης",
"translate-js-support": "Κάντε ερώτηση",
"translate-js-support-title": "Ζητήστε βοήθεια εάν δεν υπάρχουν αρκετές πληροφορίες για να μεταφράστει σωστά αυτό το μήνυμα.",
@@ -259,21 +265,9 @@
"translate-documentation-language": "Τεκμηρίωση μηνύματος",
"translate-searchprofile": "Μεταφράσεις",
"translate-searchprofile-tooltip": "Αναζήτηση από όλες τις μεταφράσεις",
+ "translate-searchprofile-note": "Περισσότερες επιλογές αναζήτησης είναι διαθέσιμες στην [$1 αναζήτηση μετάφρασης].",
"translate-search-languagefilter": "Φιλτράρισμα με βάση τη γλώσσα:",
"translate-search-nofilter": "Χωρίς φιλτράρισμα",
- "translate-messagereview-submit": "Σήμανση ως θεωρημένο",
- "translate-messagereview-progress": "Γίνεται σήμανση ως θεωρημένο...",
- "translate-messagereview-failure": "Η σήμανση ως θεωρημένο απέτυχε: $1",
- "translate-messagereview-done": "Θεωρημένο",
- "translate-messagereview-reviews": "Θεωρήθηκε από {{PLURAL:$1|ένα χρήστη|$1 χρήστες}}",
- "translate-messagereview-reviewswithyou": "Θεωρήθηκε από {{PLURAL:$1|σας|$1 χρήστες συμπεριλαμβανομένων κι σας}}",
- "api-error-invalidrevision": "Δεν βρέθηκε η μετάφραση",
- "api-error-unknownmessage": "Δεν βρέθηκε το μήνυμα",
- "api-error-fuzzymessage": "Η μετάφραση σημάνθηκε ως ασαφής",
- "api-error-owntranslation": "Δεν είναι δυνατό να θεωρήσετε τις δικές σας μεταφράσεις",
- "translate-messagereview-no-fuzzy": "Ασαφείς μεταφράσεις δεν μπορούν να θεωρηθούν.",
- "translate-messagereview-no-own": "Δεν μπορείτε να θεωρήσετε τις δικές σας μεταφράσεις.",
- "translate-messagereview-doit": "Σήμανση αυτής της μετάφρασης ως θεωρημένης.",
"log-name-translationreview": "Αρχείο καταγραφής θεωρήσεων μεταφράσεων",
"log-description-translationreview": "Αρχείο καταγραφής όλων των θεωρήσεων σε μεταφράσεις και ομάδες μηνυμάτων.",
"logentry-translationreview-message": "{{GENDER:$2|Ο|Η}} $1 θεώρησε τη μετάφραση $3",
@@ -286,10 +280,7 @@
"action-translate-sandboxaction": "εκτελέσετε ενέργειες λευκής λίστας για χρήστες αμμοδοχείου",
"translate-workflow-state-": "(δεν έχει οριστεί)",
"translate-workflowstatus": "Κατάσταση: $1",
- "translate-workflow-set-do": "Ορισμός",
"translate-workflow-set-doing": "Γίνεται ορισμός...",
- "translate-workflow-set-done": "Ορίστηκε!",
- "translate-workflow-set-error-alreadyset": "Η αιτηθήσα κατάσταση είναι ταυτόσημη με την τρέχουσα κατάσταση.",
"translate-workflow-autocreated-summary": "Αυτόματη δημιουργία σελίδας για την κατάσταση ροής εργασίας $1",
"translate-stats-workflow": "Κατάσταση",
"translate-workflowgroup-label": "Καταστάσεις ροής εργασίας",
@@ -298,11 +289,6 @@
"translate-dynagroup-recent-desc": "Αυτή η ομάδα μηνυμάτων δείχνει όλες τις πρόσφατες μεταφράσεις σε αυτήν τη γλώσσα.\nΠάρα πολύ χρήσιμο για εργασίες θεώρησης.",
"translate-dynagroup-additions-label": "Πρόσφατες προσθήκες",
"translate-dynagroup-additions-desc": "Αυτή η ομάδα μηνυμάτων εμφανίζει νέα και αλλαγμένα μηνύματα.",
- "translate-dynagroup-by": "Η μετάφραση έγινε από {{GENDER:$1|τον|την}} $1",
- "translate-dynagroup-byc": "Η μετάφραση έγινε από {{GENDER:$1|τον|την}} $1 ($2)",
- "translate-dynagroup-last": "Τελευταία αλλαγή από {{GENDER:$1|τον|την}} $1",
- "translate-dynagroup-lastc": "Τελευταία αλλαγή από {{GENDER:$1|τον|την}} $1 ($2)",
- "translate-gethelp": "Βοήθεια",
"translate-msggroupselector-projects": "Ομάδα μηνυμάτων",
"translate-msggroupselector-search-placeholder": "Αναζήτηση ομάδων",
"translate-msggroupselector-search-all": "Όλα",
@@ -321,14 +307,17 @@
"tux-status-translated": "Μεταφρασμένο",
"tux-status-saving": "Αποθήκευση...",
"tux-status-unsaved": "Μη αποθηκευμένα",
+ "tux-save-unknown-error": "Προέκυψε άγνωστο σφάλμα.",
"tux-editor-placeholder": "Η μετάφρασή σας",
+ "tux-editor-editsummary-placeholder": "Προαιρετική σύνοψη",
"tux-editor-paste-original-button-label": "Επικόλληση πηγαίου κειμένου",
"tux-editor-discard-changes-button-label": "Απόρριψη των αλλαγών",
"tux-editor-save-button-label": "Αποθήκευση μετάφρασης",
"tux-editor-skip-button-label": "Προχωρήστε στο επόμενο",
"tux-editor-cancel-button-label": "Ακύρωση",
"tux-editor-confirm-button-label": "Επιβεβαίωση μετάφρασης",
- "tux-editor-shortcut-info": "Πατήστε «$1» για αποθήκευση ή «$2» για μετάβαση στο επόμενο μήνυμα ή \"$3\" για άλλες συντομεύσεις.",
+ "tux-editor-proofread-button-label": "Σήμανση ως θεωρημένο",
+ "tux-editor-shortcut-info": "Πατήστε «$1» για αποθήκευση ή «$2» για μετάβαση στο επόμενο μήνυμα ή «$4» για προσθήκη σύνοψης ή «$3» για άλλες συντομεύσεις.",
"tux-editor-edit-desc": "Επεξεργασία τεκμηρίωσης",
"tux-editor-add-desc": "Προσθήκη τεκμηρίωσης",
"tux-editor-suggestions-title": "Προτάσεις",
@@ -344,7 +333,7 @@
"tux-editor-message-desc-less": "Δείτε λιγότερα",
"tux-editor-clear-translated": "Απόκρυψη μεταφρασμένων",
"tux-editor-proofreading-mode": "Θεώρηση",
- "tux-editor-translate-mode": "Λίστα",
+ "tux-editor-translate-mode": "Κατάλογος",
"tux-editor-proofreading-hide-own-translations": "Απόκρυψη των μεταφράσεών σας",
"tux-editor-proofreading-show-own-translations": "Εμφάνιση των μεταφράσεών σας",
"tux-proofread-action-tooltip": "Σήμανση ως θεωρημένο",
@@ -383,13 +372,18 @@
"tux-editor-close-tooltip": "Κλείσιμο",
"tux-editor-expand-tooltip": "Ανάπτυξη",
"tux-editor-collapse-tooltip": "Σύμπτυξη",
+ "tux-editor-message-tools-show-editor": "Εμφάνιση στον επεξεργαστή wiki",
"tux-editor-message-tools-history": "Ιστορικό",
"tux-editor-message-tools-delete": "Διαγραφή",
"tux-editor-message-tools-translations": "Όλες οι μεταφράσεις",
+ "tux-editor-message-tools-linktothis": "Σύνδεσμος προς αυτό το μήνυμα",
"tux-editor-loading": "Γίνεται φόρτωση...",
"translate-search-more-languages-info": "$1 ακόμη {{PLURAL:$1|γλώσσα|γλώσσες}}",
"translate-statsbar-tooltip": "$1% μεταφρασμένα, $2% θεωρημένα",
"translate-statsbar-tooltip-with-fuzzy": "$1% μεταφρασμένα, $2% θεωρημένα, $3 παρωχημένα",
"translate-search-more-groups-info": "$1 ακόμα {{PLURAL:$1|ομάδα|ομάδες}}",
- "translate-ulsdep-title": "Σφάλμα ρύθμισης"
+ "translate-ulsdep-title": "Σφάλμα ρύθμισης",
+ "translate-ulsdep-body": "Η επέκταση Μετάφραση εξαρτάται από την [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector επέκταση Καθολικός Επιλογέας Γλώσσας].",
+ "tux-session-expired": "Δεν είστε πια σε σύνδεση. Παρακαλούμε συνδεθείτε σε ξεχωριστή καρτέλα. Εναλλακτικά, δημιουργήστε ένα αντίγραφο των μη αποθηκευμένων μεταφράσεων, συνδεθείτε, επιστρέψετε σε αυτή τη σελίδα και εισαγάγετε τις μεταφράσεις σας ξανά.",
+ "tux-nojs": "Αυτό το εργαλείο δεν λειτουργεί χωρίς JavaScript. Ή το JavaScript είναι απενεργοποιημένο, ή απέτυχε να δουλέψει ή αυτό το πρόγραμμα περιήγησης δεν υποστηρίζεται."
}
diff --git a/MLEB/Translate/i18n/core/en-gb.json b/MLEB/Translate/i18n/core/en-gb.json
index 67cb1d5e..217c618f 100644
--- a/MLEB/Translate/i18n/core/en-gb.json
+++ b/MLEB/Translate/i18n/core/en-gb.json
@@ -3,10 +3,12 @@
"authors": [
"Lloffiwr",
"Shirayuki",
- "Thehelpfulone"
+ "Thehelpfulone",
+ "Chase me ladies, I'm the Cavalry"
]
},
"supportedlanguages-summary": "This page shows a list of all languages supported by {{SITENAME}},\ntogether with the names of the translators working on that language.\nA translator's name appears larger, the more edits the translator has contributed.\nThe colour of an underline indicates how recently a translator has been active here.",
"supportedlanguages-colorlegend": "Legend for the colour: Last translation $1 days ago.",
+ "translate-documentation-language": "Message documentation",
"tux-empty-list-translated": "No translated messages"
}
diff --git a/MLEB/Translate/i18n/core/en.json b/MLEB/Translate/i18n/core/en.json
index a29c3534..8e774f55 100644
--- a/MLEB/Translate/i18n/core/en.json
+++ b/MLEB/Translate/i18n/core/en.json
@@ -4,16 +4,14 @@
"Nike",
"Siebrand",
"Amire80",
- "Santhosh.thottingal"
+ "Santhosh.thottingal",
+ "MarcoAurelio"
]
},
"translate": "Translate",
+ "translate-extensionname": "Translate",
"translate-desc": "[[Special:Translate|Special page]] for translating MediaWiki and beyond",
- "translate-taskui-view": "Show all messages",
- "translate-taskui-untranslated": "Show untranslated messages",
- "translate-taskui-optional": "Show optional messages",
- "translate-taskui-acceptqueue": "Only messages I can mark as reviewed",
- "translate-taskui-reviewall": "Review all translations",
+ "translate-fuzzybot-desc": "This is a special system account used by the MediaWiki [https://www.mediawiki.org/wiki/Extension:Translate Translate extension] used to maintain translations.\nThis account is part of the MediaWiki software and it is not owned by any user.",
"translate-taskui-export-to-file": "Export in native format",
"translate-taskui-export-as-po": "Export for off-line translation",
"translate-taction-translate": "Translate",
@@ -43,7 +41,6 @@
"translate-page-description-hasoptional": "This message group contains optional messages.\nOptional messages should only be translated when your language has special requirements\nlike not using spaces or transliterating proper names. $1",
"translate-page-description-hasoptional-open": "Show optional messages.",
"translate-page-edit": "edit",
- "translate-ext-url": "<hr />Website: $1",
"translate-optional": "(optional)",
"translate-ignored": "(ignored)",
"translate-edit-title": "Edit \"$1\"",
@@ -53,15 +50,17 @@
"translate-edit-no-information": "<em>This message has no documentation.\nIf you know where or how this message is used, you can help other translators by adding documentation to this message.</em>",
"translate-edit-information": "Information about message ($1)",
"translate-edit-in-other-languages": "Message in other languages",
- "translate-edit-committed": "Current translation in software",
"translate-edit-warnings": "Warnings about incomplete translations",
- "translate-edit-tmsugs": "Suggestions from translation memories and machine translation",
"translate-edit-tmmatch-source": "Translation source text: $1",
"translate-edit-tmmatch": "$1% match",
"translate-use-suggestion": "Replace current translation with this suggestion.",
"translate-edit-nopermission": "You need translation rights to translate messages.",
"translate-edit-askpermission": "Get permission",
- "translate-edit-tag-warning": "",
+ "exporttranslations": "Export translations",
+ "translate-export-form-format": "Format",
+ "translate-export-invalid-format": "Please specify a valid format.",
+ "translate-export-not-supported": "Translation export is not supported.",
+ "translate-export-format-notsupported": "The specified export format is not supported by the message group.",
"translate-magic-pagename": "Extended MediaWiki translation",
"translate-magic-help": "You can translate special pages aliases, magic words and namespace names.\n\nSpecial page aliases and magic words can have multiple translations.\nTranslations are separated by a comma (,).\nNamespaces can have only one translation.\n\nTranslating the project talk namespace <code>$1 talk</code> may be complicated.\n<code>$1</code> is replaced with the project sitename (for example <code>{{ns:project_talk}}</code>).\nIf it is not possible in your language to form a valid expression without changing the sitename, please let us know on [[Support]].\n\nYou need to be a translator to save changes.\nChanges are not saved until you click the save button below.",
"translate-magic-module": "Module:",
@@ -80,7 +79,7 @@
"translate-magic-namespace": "Namespace names",
"translate-magic-notsaved": "Your edit was not saved!",
"translate-magic-errors": "Please fix following {{PLURAL:$1|error|errors}} in translations:",
- "translate-magic-saved": "Your changes were saved successfully.",
+ "translate-magic-saved": "Your changes were saved.",
"translate-checks-parameters": "Following {{PLURAL:$2|parameter is|parameters are}} not used:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-parameters-unknown": "Following {{PLURAL:$2|parameter is|parameters are}} unknown:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-balance": "There is an uneven amount of {{PLURAL:$2|parenthesis|parentheses}}:\n<strong><nowiki>$1</nowiki></strong>",
@@ -107,7 +106,16 @@
"right-translate-import": "Import offline translations",
"action-translate-import": "import offline translations",
"right-translate-messagereview": "Review translations",
+ "action-translate-messagereview": "review translations",
"right-translate-groupreview": "Change workflow state of message groups",
+ "action-translate-groupreview": "change workflow state of message groups",
+ "translate-rcfilters-translations": "Translations",
+ "translate-rcfilters-translations-only-label": "Translations",
+ "translate-rcfilters-translations-only-desc": "Changes to translated pages.",
+ "translate-rcfilters-translations-filter-label": "Not translations",
+ "translate-rcfilters-translations-filter-desc": "All changes that are not translations.",
+ "translate-rcfilters-translations-site-label": "Site messages",
+ "translate-rcfilters-translations-site-desc": "Customizations of site messages in MediaWiki namespace.",
"translate-rc-translation-filter": "Filter translations:",
"translate-rc-translation-filter-no": "Do nothing",
"translate-rc-translation-filter-only": "Show translations only",
@@ -139,7 +147,6 @@
"translate-statsf-language": "Comma-separated list of language codes:",
"translate-statsf-group": "Comma-separated list of group codes:",
"translate-statsf-submit": "Preview",
- "translate-tag-category": "Translatable pages",
"translate-tag-page-desc": "Translation of the wiki page [[$2|$1]] from $3 ($4).",
"translate-sidebar-alltrans": "In other languages",
"translations": "All translations",
@@ -181,7 +188,7 @@
"translate-mgs-noempty": "Do not display languages which do not have any translations",
"translate-mgs-submit": "Show statistics",
"translate-mgs-column-language": "Language",
- "translate-mgs-totals": "All languages together",
+ "translate-mgs-totals": "All $1 {{PLURAL:$1|language|languages}} together",
"translate-mgs-invalid-group": "The specified group $1 does not exist.",
"translate-mgs-nothing": "Nothing to show for requested statistics.",
"supportedlanguages": "Supported languages",
@@ -190,10 +197,12 @@
"supportedlanguages-localsummary": "",
"supportedlanguages-portallink": "[$1] $2 - $3",
"supportedlanguages-portallink-nocldr": "[$1] $2",
+ "supportedlanguages-sqlite-error": "SQLite is not supported",
"supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|Translator}}|Translators}}: $1",
"supportedlanguages-recenttranslations": "recent translations",
"supportedlanguages-count": "$1 {{PLURAL:$1|language|languages}} in total.",
"supportedlanguages-activity": "$1: $2 {{PLURAL:$2|edit|edits}} - last edit $3 {{PLURAL:$3|day|days}} ago",
+ "abusefilter-edit-builder-vars-translate-source-text": "Source text of translation unit",
"translate-save": "Save ($1)",
"translate-jssti-add": "Add to list",
"managemessagegroups": "Message group management",
@@ -217,7 +226,6 @@
"translate-manage-toolong": "The maximum processing time of $1 {{PLURAL:$1|second|seconds}} exceeded.\nPlease resubmit the form to continue processing.",
"translate-manage-import-summary": "Importing a new version from external source",
"translate-manage-conflict-summary": "Importing a new version from external source.\nPlease check.",
- "translate-manage-fuzzy-summary": "The message definition has changed",
"translate-manage-submit": "Execute",
"translate-manage-intro-other": "Below is list of translation changes in the language $1.\nPlease review the changes and choose an action you want to take for each update.\nIf you choose to ignore changes, this action is only temporary.",
"translate-manage-import-ok": "Imported: $1",
@@ -226,7 +234,7 @@
"translate-import-from-local": "Local file upload:",
"translate-import-load": "Load file",
"translate-import-err-dl-failed": "Unable to fetch the file:\n$1",
- "translate-import-err-ul-failed": "File upload was not successful",
+ "translate-import-err-ul-failed": "File upload failed",
"translate-import-err-invalid-title": "Provided filename <nowiki>$1</nowiki> was invalid.",
"translate-import-err-no-such-file": "File <nowiki>$1</nowiki> does not exist or has not been uploaded locally.",
"translate-import-err-stale-group": "The message group this file belongs to does not exist.",
@@ -235,9 +243,7 @@
"translate-js-summary": "Summary:",
"translate-js-save": "Save",
"translate-js-next": "Save and open next",
- "translate-js-nonext": "This was the last message on this page.",
"translate-js-skip": "Skip to next",
- "translate-js-save-failed": "Saving failed. Please report this error.",
"translate-js-history": "Translation history",
"translate-js-support": "Ask question",
"translate-js-support-title": "Ask for help if there is not enough information to translate this message correctly.",
@@ -254,23 +260,9 @@
"translate-documentation-language": "Message documentation",
"translate-searchprofile": "Translations",
"translate-searchprofile-tooltip": "Search from all translations",
+ "translate-searchprofile-note": "More search options are available with [$1 translation search].",
"translate-search-languagefilter": "Filter by language:",
"translate-search-nofilter": "No filtering",
- "translate-messagereview-submit": "Mark reviewed",
- "translate-messagereview-progress": "Marking as reviewed...",
- "translate-messagereview-failure": "Marking as reviewed failed: $1",
- "translate-messagereview-done": "Reviewed",
- "translate-messagereview-reviews": "Reviewed by {{PLURAL:$1|one user|$1 users}}",
- "translate-messagereview-reviewswithyou": "Reviewed by {{PLURAL:$1|you|$1 users including you}}",
- "api-error-invalidrevision": "Translation was not found",
- "api-error-unknownmessage": "Message was not found",
- "api-error-fuzzymessage": "Translation is marked as fuzzy",
- "api-error-owntranslation": "You cannot mark your own translations as reviewed",
- "translate-messagereview-no-fuzzy": "Fuzzy translations cannot be marked as reviewed.",
- "translate-messagereview-no-own": "You cannot mark your own translations as reviewed.",
- "translate-messagereview-doit": "Mark this translation as reviewed.",
- "group-translate-proofr.css": "/* CSS placed here will affect translation reviewers only */",
- "group-translate-proofr.js": "/* JS placed here will affect translation reviewer only */",
"log-name-translationreview": "Translation review log",
"log-description-translationreview": "Log of all reviews to translations and message groups.",
"logentry-translationreview-message": "$1 {{GENDER:$2|reviewed}} translation $3",
@@ -283,10 +275,7 @@
"action-translate-sandboxaction": "execute actions whitelisted for sandboxed users",
"translate-workflow-state-": "(unset)",
"translate-workflowstatus": "State: $1",
- "translate-workflow-set-do": "Set",
"translate-workflow-set-doing": "Setting...",
- "translate-workflow-set-done": "Set!",
- "translate-workflow-set-error-alreadyset": "The requested state is identical to the current state.",
"translate-workflow-autocreated-summary": "Automatic creation of page for workflow state $1",
"translate-stats-workflow": "State",
"translate-workflowgroup-label": "Workflow states",
@@ -295,11 +284,6 @@
"translate-dynagroup-recent-desc": "This message group shows all recent translations into this language.\nMost useful for the review tasks.",
"translate-dynagroup-additions-label": "Recent additions",
"translate-dynagroup-additions-desc": "This message group shows new and changed messages.",
- "translate-dynagroup-by": "Translation made by {{GENDER:$1|$1}}",
- "translate-dynagroup-byc": "Translation made by {{GENDER:$1|$1}} ($2)",
- "translate-dynagroup-last": "Latest change by {{GENDER:$1|$1}}",
- "translate-dynagroup-lastc": "Latest change by {{GENDER:$1|$1}} ($2)",
- "translate-gethelp": "Help",
"translate-msggroupselector-projects": "Message group",
"translate-msggroupselector-search-placeholder": "Search groups",
"translate-msggroupselector-search-all": "All",
@@ -318,14 +302,17 @@
"tux-status-translated": "Translated",
"tux-status-saving": "Saving...",
"tux-status-unsaved": "Unsaved",
+ "tux-save-unknown-error": "Unknown error occurred.",
"tux-editor-placeholder": "Your translation",
+ "tux-editor-editsummary-placeholder": "Optional summary",
"tux-editor-paste-original-button-label": "Paste source text",
"tux-editor-discard-changes-button-label": "Discard changes",
"tux-editor-save-button-label": "Save translation",
"tux-editor-skip-button-label": "Skip to next",
"tux-editor-cancel-button-label": "Cancel",
"tux-editor-confirm-button-label": "Confirm translation",
- "tux-editor-shortcut-info": "Press \"$1\" to save or \"$2\" to skip to next message or \"$3\" for other shortcuts.",
+ "tux-editor-proofread-button-label": "Mark as reviewed",
+ "tux-editor-shortcut-info": "Press \"$1\" to save or \"$2\" to skip to next message or \"$4\" to provide summary or \"$3\" for other shortcuts.",
"tux-editor-edit-desc": "Edit documentation",
"tux-editor-add-desc": "Add documentation",
"tux-editor-suggestions-title": "Suggestions",
@@ -380,15 +367,18 @@
"tux-editor-close-tooltip": "Close",
"tux-editor-expand-tooltip": "Expand",
"tux-editor-collapse-tooltip": "Collapse",
+ "tux-editor-message-tools-show-editor": "Show in wiki editor",
"tux-editor-message-tools-history": "History",
"tux-editor-message-tools-delete": "Delete",
"tux-editor-message-tools-translations": "All translations",
+ "tux-editor-message-tools-linktothis": "Link to this message",
"tux-editor-loading": "Loading...",
"translate-search-more-languages-info": "$1 more {{PLURAL:$1|language|languages}}",
"translate-statsbar-tooltip": "$1% translated, $2% reviewed",
"translate-statsbar-tooltip-with-fuzzy": "$1% translated, $2% reviewed, $3% outdated",
"translate-search-more-groups-info": "$1 more {{PLURAL:$1|group|groups}}",
"translate-ulsdep-title": "Configuration error",
- "translate-ulsdep-body": "Translate extension depends on the [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector Universal Language Selector extension].",
- "tux-session-expired": "You are no longer logged in. Please log in in a separate tab. Alternatively, make a copy of unsaved translations, log in and return to this page."
+ "translate-ulsdep-body": "The Translate extension depends on the [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector Universal Language Selector extension].",
+ "tux-session-expired": "You are no longer logged in. Please log in in a separate tab. Alternatively, make a copy of unsaved translations, log in, return to this page and enter your translations again.",
+ "tux-nojs": "This tool does not work without JavaScript. JavaScript is disabled, failed to work, or this browser is unsupported."
}
diff --git a/MLEB/Translate/i18n/core/eo.json b/MLEB/Translate/i18n/core/eo.json
index ed55e041..8de937c9 100644
--- a/MLEB/Translate/i18n/core/eo.json
+++ b/MLEB/Translate/i18n/core/eo.json
@@ -10,23 +10,23 @@
"Michawiki",
"Mihxil",
"Tlustulimu",
- "Yekrats"
+ "Yekrats",
+ "Remux",
+ "KuboF",
+ "Robin van der Vliet",
+ "Psychoslave",
+ "Joao Xavier"
]
},
"translate": "Tradukado",
"translate-desc": "[[Special:Translate|Speciala paĝo]] por traduki MediaWiki kaj alia",
- "translate-taskui-view": "Montru ĉiujn mesaĝojn",
- "translate-taskui-untranslated": "Montru netradukitajn mesaĝojn",
- "translate-taskui-optional": "Montru opciajn mesaĝojn",
- "translate-taskui-acceptqueue": "Nur mesaĝojn kiujn mi povas aprobi",
- "translate-taskui-reviewall": "Revizii ĉiujn tradukojn",
- "translate-taskui-export-to-file": "Eksportu en fonta formato",
+ "translate-taskui-export-to-file": "Elportu en fonta formato",
"translate-taskui-export-as-po": "Eksportu por eksterkonekta traduko",
"translate-taction-translate": "Traduki",
- "translate-taction-proofread": "Provlego",
+ "translate-taction-proofread": "Revizii",
"translate-taction-lstats": "Lingvaj statistikoj",
"translate-taction-mstats": "Statistikoj por mesaĝgrupo",
- "translate-taction-export": "Eksporti",
+ "translate-taction-export": "Elporti",
"translate-taction-disabled": "Ĉi tiu ago estas malaktivigita sur ĉi tiu vikio.",
"translate-page-no-such-language": "Specifita lingvo estas malvalida.",
"translate-page-no-such-group": "Specifita grupo estas malvalida.",
@@ -48,30 +48,29 @@
"translate-page-description-hasoptional": "Ĉi tiu mesaĝgrupo entenas opciajn mesaĝojn.\nOpciaj mesaĝoj estu tradukitaj al via lingvo se via lingvo postulas ĝin\nkiel ne uzi spacojn aŭ transliterado de personaj nomoj. $1",
"translate-page-description-hasoptional-open": "Montru opciajn mesaĝojn.",
"translate-page-edit": "redakti",
- "translate-ext-url": "<hr />Retejo: $1",
"translate-optional": "(nedeviga)",
"translate-ignored": "(ignorata)",
"translate-edit-title": "Redakti \"$1\"",
"translate-edit-definition": "Mesaĝa difino",
"translate-edit-translation": "Tradukado",
"translate-edit-contribute": "kontribui",
- "translate-edit-no-information": "''Ĉi tiu mesago ne havas dokumentaron. Se vi scias, kie aŭ kiel ĉi tiu mesaĝo estas uzata, vi povas helpi al aliaj tradukantoj aldonante la dokumentaron al ĉi tiu mesaĝo.''",
+ "translate-edit-no-information": "<em>Ĉi tiu mesaĝo ne havas dokumentadon. Se vi scias, kie aŭ kiel ĉi tiu mesaĝo estas uzata, vi povas helpi al aliaj tradukantoj aldonante dokumentadon al ĉi tiu mesaĝo.</em>",
"translate-edit-information": "Informo pri la mesaĝo ($1)",
"translate-edit-in-other-languages": "Mesaĝo en aliaj lingvoj",
- "translate-edit-committed": "Aktuala traduko en programaro",
"translate-edit-warnings": "Avertoj pri nekompletaj tradukoj",
- "translate-edit-tmsugs": "Sugestoj de tradukada memoro",
"translate-edit-tmmatch-source": "Tradukfontateksto: $1",
"translate-edit-tmmatch": "$1% kongrueco",
"translate-use-suggestion": "Anstataŭigi nunan tradukon per ĉi tiu sugesto.",
- "translate-edit-nopermission": "Vi devas havi permeson por traduki mesaĝojn.",
- "translate-edit-askpermission": "Peti permeson",
+ "translate-edit-nopermission": "Vi bezonas havi traduk-rajtojn por traduki mesaĝojn.",
+ "translate-edit-askpermission": "Ricevi permeson",
+ "exporttranslations": "Elporti tradukojn",
+ "translate-export-form-format": "Formato",
"translate-magic-pagename": "Etendita traduko de MediaWiki",
"translate-magic-help": "Vi povas traduki specialajn kromnomojn de paĝoj, magiajn vortojn, kaj nomojn de nomspacoj.\n\nSpecialaj kromnomoj de paĝoj kaj magiaj vortoj povas havi plurajn tradukojn.\nTradukoj estas apartigitaj de komo (,).\nNomoj de nomspacoj nur povas havi unu tradukon.\n\nTradukado de la reteja diskuta nomspaco <code>diskuto pri $1</code> povas esti malfacila.\n<code>$1</code> estas anstataŭigita per la nomo de la retejo (ekz. <code>{{ns:project_talk}})</code>).\nSe ne eblas per via lingvo formi validan esprimon sen ŝanĝi la nomon de la retejo, bonvolu kontakti nian [[Support|programiston]].\n\nVi devas esti en la grupo de tradukantoj por konservi ŝanĝojn.\nŜanĝoj ne estos konservataj ĝis vi alklakis la suban konservobutonon.",
- "translate-magic-module": "Modjulo:",
+ "translate-magic-module": "Modulo:",
"translate-magic-submit": "Montri",
- "translate-magic-cm-export": "Eksporti",
- "translate-magic-nothing-to-export": "Estas nenio por eksporti.",
+ "translate-magic-cm-export": "Elporti",
+ "translate-magic-nothing-to-export": "Estas nenio por elporti.",
"translate-magic-cm-to-be": "Esti",
"translate-magic-cm-current": "Nuntempe",
"translate-magic-cm-original": "Originalo",
@@ -84,7 +83,7 @@
"translate-magic-namespace": "Nomoj de nomspacoj",
"translate-magic-notsaved": "Via redakto ne estis konservita!",
"translate-magic-errors": "Bonvolu ripari {{PLURAL:$1|jenan eraron|jenajn erarojn}} en tradukoj:",
- "translate-magic-saved": "Viaj ŝanĝoj estis sukcese konservita.",
+ "translate-magic-saved": "Viaj ŝanĝoj estas konservitaj.",
"translate-checks-parameters": "{{PLURAL:$2|Jenaj parametroj ne estas uzataj|Jena parametro ne estas uzata}}: <strong>$1</strong>",
"translate-checks-parameters-unknown": "Jenaj {{PLURAL:$2|parametro|parametroj}} estas nekonataj:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-balance": "Estas nepara nombro de {{PLURAL:$2|krampo|krampoj}}: <strong>$1</strong>",
@@ -143,7 +142,6 @@
"translate-statsf-language": "Kome apartigita listo de lingvaj kodoj:",
"translate-statsf-group": "Kome apartigita listo de grupaj kodoj:",
"translate-statsf-submit": "Antaŭvido",
- "translate-tag-category": "Tradukeblaj paĝoj",
"translate-tag-page-desc": "Traduko de la vikia paĝo [[$2|$1]].",
"translate-sidebar-alltrans": "En aliaj lingvoj",
"translations": "Ĉiuj tradukoj",
@@ -187,10 +185,10 @@
"translate-mgs-totals": "Ĉiuj lingvoj kune",
"translate-mgs-invalid-group": "La menciita grupo $1 ne ekzistas",
"translate-mgs-nothing": "Nenio estas montrebla por la petitaj statistikoj",
- "supportedlanguages": "Eltenitaj lingvoj",
- "supportedlanguages-summary": "Ĉi tiu paĝo montras liston de ĉiuj lingvoj eltenitaj de {{SITENAME}},\nkune kun la nomoj de tradukistoj laborantaj pri tiu lihngvo.\nJu pli multe kontribuis iu tradukisto, des pli granda aperas ties nomo.\nLa koloro de substreko indikas kiom da tempo pasis de kiam tradukisto esti laste aktiva ĉi tie.",
+ "supportedlanguages": "Subtenataj lingvoj",
+ "supportedlanguages-summary": "Ĉi tiu paĝo montras liston de ĉiuj lingvoj subtenitaj de {{SITENAME}},\nkune kun la nomoj de tradukistoj laborantaj pri tiu lingvo.\nJu pli multe kontribuis iu tradukisto, des pli granda aperas ties nomo.\nLa koloro de substreko indikas kiom da tempo pasis de kiam tradukisto esti laste aktiva ĉi tie.",
"supportedlanguages-colorlegend": "Kolorpriskribo: lasta traduko antaŭ $1 tagoj.",
- "supportedlanguages-translators": "{{PLURAL:$2|Tradukisto|Tradukistoj}}: $1",
+ "supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|Tradukanto}}|Tradukantoj}}: $1",
"supportedlanguages-recenttranslations": "Lastatempaj tradukoj",
"supportedlanguages-count": "Sume $1 {{PLURAL:$1|lingvo|lingvoj}}.",
"supportedlanguages-activity": "$1: $2 {{PLURAL:$2|redakto|redaktoj}} - lasta redakto antaŭ $3 {{PLURAL:$3|tago|tagoj}}",
@@ -206,7 +204,7 @@
"translate-manage-import-diff": "Mesaĝo $1 | Agoj: $2",
"translate-manage-import-new": "Nova mesaĝo $1",
"translate-manage-import-deleted": "Forigita mesaĝo $1",
- "translate-manage-action-import": "Importi",
+ "translate-manage-action-import": "Enporti",
"translate-manage-action-conflict": "Importi kaj marki kiel malpreciza",
"translate-manage-action-ignore": "Ignori",
"translate-manage-action-fuzzy": "Importi tradukojn kaj marki kiel neprecizajn",
@@ -216,16 +214,15 @@
"translate-manage-toolong": "La maksimuma procesdaŭro ($1 {{PLURAL:$1|sekundo|sekundoj}}) pasis.\nBonvolu resendi la formularon por plu procesigi.",
"translate-manage-import-summary": "Importado de nova versio el ekstera fonto",
"translate-manage-conflict-summary": "Importado de nova versio el ekstera fonto\nBonvolu kontroli.",
- "translate-manage-fuzzy-summary": "La difino de la mesaĝo estis ŝanĝita",
"translate-manage-submit": "Ekfunkcii",
"translate-manage-intro-other": "Sube estas listo de mesaĝŝanĝoj en la lingvo $1.\nBonvolu revizii la ŝanĝojn kaj elektu kion vi volas fari kun ĉiu traduko.\nSe vi decidas ignori ŝanĝojn, ili estos anstataŭigitaj je venonta eksporto.",
- "translate-manage-import-ok": "Importita nova versio de paĝo $1.",
- "translate-manage-import-done": "Finite!",
+ "translate-manage-import-ok": "Importita: $1.",
+ "translate-manage-import-done": "Importo kompleta!",
"importtranslations": "Importi tradukojn",
"translate-import-from-local": "Loka dosiero alŝuti:",
"translate-import-load": "Ŝarĝi dosieron",
"translate-import-err-dl-failed": "Ne eblas akiri la dosieron:\n$1",
- "translate-import-err-ul-failed": "Dosiero alŝuto ne estis sukcesa",
+ "translate-import-err-ul-failed": "Alŝuto de dosiero malsukcesis",
"translate-import-err-invalid-title": "La provizita dosiernomo <nowiki>$1</nowiki> estas malvalida",
"translate-import-err-no-such-file": "La dosiero <nowiki>$1</nowiki> ne ekzistas aŭ ne estis ŝargita ĉi-loke.",
"translate-import-err-stale-group": "La mesaĝgrupo al kiu apartenas ĉi tiu dosiero ne ekzistas.",
@@ -234,9 +231,7 @@
"translate-js-summary": "Resumo:",
"translate-js-save": "Konservi",
"translate-js-next": "Konservi kaj malfermi la sekvan",
- "translate-js-nonext": "Tio estis la lasta mesaĝo en ĉi tiu paĝo.",
"translate-js-skip": "Salti al la sekva",
- "translate-js-save-failed": "Konservado malsukcesis. Bonvolu raporti pri ĉi tiu eraro.",
"translate-js-history": "Traduka historio",
"translate-js-support": "Fari demandon",
"translate-js-support-title": "Petu helpon se ne estas sufiĉe da informoj por ĝuste traduki ĉi tiun mesaĝon.",
@@ -255,41 +250,20 @@
"translate-searchprofile-tooltip": "Serĉi el ĉiuj tradukoj",
"translate-search-languagefilter": "Filtrilo laŭ lingvoj:",
"translate-search-nofilter": "Neniu filtrado",
- "translate-messagereview-submit": "Akcepti",
- "translate-messagereview-progress": "Akceptado...",
- "translate-messagereview-failure": "Akceptado... malsukcesis: $1",
- "translate-messagereview-done": "Akceptita",
- "translate-messagereview-reviews": "Akceptita de {{PLURAL:$1|unu uzanto|$1 uzantoj}}",
- "translate-messagereview-reviewswithyou": "Akceptita de {{PLURAL:$1|vi|$1 uzantoj inkluzive de vi}}",
- "api-error-invalidrevision": "La traduko ne estis trovita",
- "api-error-unknownmessage": "La traduko ne estis trovita",
- "api-error-fuzzymessage": "La traduko estis markita kiel malneta",
- "api-error-owntranslation": "Vi ne povas akcepti vian proprajn tradukojn.",
- "translate-messagereview-no-fuzzy": "Malnetaj tradukoj ne povas esti akceptitaj.",
- "translate-messagereview-no-own": "Vi ne povas aprobi vian proprajn tradukojn.",
- "translate-messagereview-doit": "Akcepti ĉi tiun tradukon kiel ĝusta.",
"log-name-translationreview": "Protokolo de tradukprovlego",
"log-description-translationreview": "Protokolo de ĉiuj tradukprovlegoj kaj de mesaĝgrupoj.",
- "logentry-translationreview-message": "$1 {{GENDER:$2|akceptis}} tradukon $3",
+ "logentry-translationreview-message": "$1 {{GENDER:$2|reviziis}} tradukon $3",
"translate-workflow-state-": "(malŝalta)",
"translate-workflowstatus": "Statuso = $1",
- "translate-workflow-set-do": "Aktivigi",
"translate-workflow-set-doing": "Aktivado...",
- "translate-workflow-set-done": "Aktiva!",
- "translate-workflow-set-error-alreadyset": "La petata stato estas sama kiel la nuna.",
"translate-workflow-autocreated-summary": "Aŭtomata kreado de paĝo por laborflustatuso $1",
"translate-stats-workflow": "Statuso",
"translate-workflowgroup-label": "Laborflustatusoj",
"translate-workflowgroup-desc": "Ĉi tiu mesaĝgrupo montras la laborflustatusojn.\nLa statusoj estas difinitaj en la konfigurvariablo $wgTranslateWorkflowStates.",
"translate-dynagroup-recent-label": "Lastatempaj tradukoj",
- "translate-dynagroup-recent-desc": "Ĉi tiu mesaĝgrupo montras ĉiuj novajn tradukojn en ĉi tiun lingvon.\nPlej utila por provlegaj taskoj.",
+ "translate-dynagroup-recent-desc": "Ĉi tiu mesaĝgrupo montras ĉiuj novajn tradukojn en ĉi tiun lingvon.\nĜi plej utilas por reviziaj taskoj.",
"translate-dynagroup-additions-label": "Lastaj aldonoj",
"translate-dynagroup-additions-desc": "Tiu ĉi mesaĝgrupo montras novajn kaj ŝanĝitajn mesaĝojn.",
- "translate-dynagroup-by": "Traduko faris de {{GENDER:$1|$1}}",
- "translate-dynagroup-byc": "Traduko faris de {{GENDER:$1|$1}} ($2)",
- "translate-dynagroup-last": "Lasta ŝanĝo de {{GENDER:$1|$1}}",
- "translate-dynagroup-lastc": "Lasta ŝanĝo de {{GENDER:$1|$1}} ($2)",
- "translate-gethelp": "Helpo",
"translate-msggroupselector-projects": "Mesaĝgrupo",
"translate-msggroupselector-search-placeholder": "Serĉi grupojn",
"translate-msggroupselector-search-all": "Ĉiuj",
@@ -300,17 +274,27 @@
"tux-tab-untranslated": "Netradukitaj",
"tux-tab-outdated": "Malfreŝaj",
"tux-tab-translated": "Tradukitaj",
+ "tux-tab-unproofread": "Nereviziitaj",
"tux-edit": "Redakti",
"tux-status-optional": "Nedeviga",
"tux-status-fuzzy": "Malfreŝaj",
- "tux-status-proofread": "Provlegita",
+ "tux-status-proofread": "Reviziita",
"tux-status-translated": "Tradukita",
+ "tux-status-saving": "Konservado...",
"tux-status-unsaved": "Nekonservita",
+ "tux-save-unknown-error": "Okazis nekonata eraro.",
"tux-editor-placeholder": "Via traduko",
+ "tux-editor-editsummary-placeholder": "Nedeviga resumo",
+ "tux-editor-paste-original-button-label": "Glui la originalan tekston",
+ "tux-editor-discard-changes-button-label": "Ignori ŝanĝojn",
"tux-editor-save-button-label": "Konservi tradukon",
"tux-editor-skip-button-label": "Salti al la sekva",
+ "tux-editor-cancel-button-label": "Nuligi",
+ "tux-editor-confirm-button-label": "Konfirmi tradukon",
+ "tux-editor-proofread-button-label": "Marki reviziita",
"tux-editor-shortcut-info": "Premu \"$1\" por konservi aŭ \"$2\" por salti al la sekva mesaĝo",
- "tux-editor-edit-desc": "Redakti priskribon",
+ "tux-editor-edit-desc": "Redakti dokumentadon",
+ "tux-editor-add-desc": "Aldoni dokumentadon",
"tux-editor-suggestions-title": "Sugestoj",
"tux-editor-in-other-languages": "En aliaj lingvoj",
"tux-editor-need-more-help": "Ĉu vi bezonas plian helpon?",
@@ -318,5 +302,35 @@
"tux-editor-tm-match": "$1%-a kongruo",
"tux-warnings-more": "{{PLURAL:$1|$1 pli}}",
"tux-warnings-hide": "kaŝi",
- "tux-editor-save-failed": "Ne sukcesis konservi la tradukon: $1"
+ "tux-editor-save-failed": "Ne sukcesis konservi la tradukon: $1",
+ "tux-editor-n-uses": "uzita $1 {{PLURAL:$1|fojon|fojojn}}",
+ "tux-editor-message-desc-more": "Montri pli",
+ "tux-editor-message-desc-less": "Montri malpli",
+ "tux-editor-clear-translated": "Kaŝi tradukitajn",
+ "tux-editor-proofreading-mode": "Revizii",
+ "tux-editor-translate-mode": "Listo",
+ "tux-editor-proofreading-hide-own-translations": "Kaŝi viajn tradukojn",
+ "tux-editor-proofreading-show-own-translations": "Montri viajn tradukojn",
+ "tux-proofread-edit-label": "Redakti",
+ "tux-editor-page-mode": "Paĝo",
+ "tux-editor-outdated-warning": "Ĉi tiu traduko eble bezonas esti ĝisdatigita.",
+ "tux-editor-outdated-warning-diff-link": "Montri diferencojn",
+ "tux-editor-doc-editor-placeholder": "Mesaĝa dokumentado",
+ "tux-editor-doc-editor-save": "Konservi dokumentadon",
+ "tux-editor-doc-editor-cancel": "Nuligi",
+ "tux-empty-list-translated-action": "Traduki",
+ "tux-empty-nothing-to-proofread": "Nenio por revizii",
+ "tux-empty-you-can-help-providing": "Vi povas helpi per novaj tradukoj",
+ "tux-empty-nothing-new-to-proofread": "Nenio nova por revizii",
+ "tux-empty-you-can-review-already-proofread": "Vi povas revizii tradukojn jam reviziitajn de aliuloj.",
+ "tux-empty-list-other": "Nenio por traduki",
+ "tux-empty-list-other-action": "Revizii tradukojn",
+ "tux-empty-list-other-link": "Montru ĉiujn mesaĝojn",
+ "tux-editor-close-tooltip": "Fermi",
+ "tux-editor-expand-tooltip": "Etendi",
+ "tux-editor-collapse-tooltip": "Maletendi",
+ "tux-editor-message-tools-show-editor": "Montri en vikia redaktilo",
+ "tux-editor-message-tools-history": "Historio",
+ "tux-editor-message-tools-delete": "Forigi",
+ "tux-editor-message-tools-translations": "Ĉiuj tradukoj"
}
diff --git a/MLEB/Translate/i18n/core/es.json b/MLEB/Translate/i18n/core/es.json
index 7c6a8b39..42d3fc19 100644
--- a/MLEB/Translate/i18n/core/es.json
+++ b/MLEB/Translate/i18n/core/es.json
@@ -23,18 +23,17 @@
"Vivaelcelta",
"Ciencia Al Poder",
"Wifidel",
- "Macofe"
+ "Macofe",
+ "Indiralena",
+ "Dgstranz",
+ "KATRINE1992"
]
},
"translate": "Traducir",
"translate-desc": "[[Special:Translate|Página especial]] para traducir el software MediaWiki y otras extensiones",
- "translate-taskui-view": "Mostrar todos los mensajes",
- "translate-taskui-untranslated": "Mostrar mensajes sin traducir",
- "translate-taskui-optional": "Mostrar mensajes opcionales",
- "translate-taskui-acceptqueue": "Sólo los mensajes que pueda marcar como revisados",
- "translate-taskui-reviewall": "Revisar todas las traducciones",
+ "translate-fuzzybot-desc": "Esta es una cuenta especial del sistema usada por la [https://www.mediawiki.org/wiki/Extension:Translate extensión de traducción] para realizar tareas de mantenimiento en las traducciones.\nEsta cuenta es parte del software de MediaWiki y no pertenece a ningún usuario.",
"translate-taskui-export-to-file": "Exportar en formato nativo",
- "translate-taskui-export-as-po": "Exportar para traducción sin conexión",
+ "translate-taskui-export-as-po": "Exportar para traducir sin conexión",
"translate-taction-translate": "Traducir",
"translate-taction-proofread": "Revisar",
"translate-taction-lstats": "Estadísticas del idioma",
@@ -61,24 +60,26 @@
"translate-page-description-hasoptional": "Este grupo de mensajes contiene mensajes opcionales.\nLos mensajes opcionales deberían traducirse solo si tu idioma tiene características especiales como no usar espacios o transliterar nombres propios. $1",
"translate-page-description-hasoptional-open": "Mostrar mensajes opcionales.",
"translate-page-edit": "editar",
- "translate-ext-url": "<hr />Sitio web: $1",
"translate-optional": "(opcional)",
"translate-ignored": "(ignorado)",
"translate-edit-title": "Editar «$1»",
- "translate-edit-definition": "Mensaje original",
+ "translate-edit-definition": "Definición del mensaje",
"translate-edit-translation": "Traducción",
"translate-edit-contribute": "contribuir",
"translate-edit-no-information": "<em>Este mensaje no tiene documentación.\nSi sabes dónde o cómo se usa este mensaje, puedes ayudar a los otros traductores añadiendo documentación a este mensaje.</em>",
"translate-edit-information": "Información acerca del mensaje ($1)",
"translate-edit-in-other-languages": "Mensaje en otros idiomas",
- "translate-edit-committed": "Traducción actual en el software",
"translate-edit-warnings": "Advertencias acerca de traducciones incompletas",
- "translate-edit-tmsugs": "Sugerencias de la memoria de traducciones y la traducción automática",
"translate-edit-tmmatch-source": "Texto fuente para la traducción: $1",
"translate-edit-tmmatch": "$1 % de coincidencia",
"translate-use-suggestion": "Reemplazar la traducción actual con esta sugerencia.",
"translate-edit-nopermission": "Necesitas permisos de traducción para traducir mensajes.",
"translate-edit-askpermission": "Obtener permiso",
+ "exporttranslations": "Exportar traducciones",
+ "translate-export-form-format": "Formato",
+ "translate-export-invalid-format": "Especifica un formato válido.",
+ "translate-export-not-supported": "No se admite la exportación de traducción.",
+ "translate-export-format-notsupported": "El formato de exportación especificado no se admite por el grupo de mensajes.",
"translate-magic-pagename": "Traducción extendida de MediaWiki",
"translate-magic-help": "Puedes traducir los nombres de las páginas especiales, de las palabras mágicas y de los espacios de nombres.\n\nLos nombres de las páginas especiales y las palabras mágicas pueden tener varias traducciones.\nLas traducciones se separan por comas (,).\nLos espacios de nombres solo pueden tener una traducción.\n\nTraducir el espacio de nombres de discusión de proyecto <code>$1 talk</code> puede ser complicado.\n<code>$1</code> se reemplaza por el nombre del sitio del proyecto (por ejemplo <code>{{ns:project_talk}}</code>).\nSi en tu idioma no es posible formar una expresión válida sin cambiar el nombre del sitio, contáctanos en la [[Support|página de ayuda]].\n\nPara guardar los cambios debes pertenecer al grupo de traductores.\nLos cambios no se graban hasta que no pulses el botón Guardar que aparece abajo.",
"translate-magic-module": "Módulo:",
@@ -92,20 +93,20 @@
"translate-magic-cm-save": "Guardar",
"translate-magic-cm-updatedusing": "Actualizado usando [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
"translate-magic-cm-savefailed": "Error al guardar",
- "translate-magic-special": "Nombres de páginas especiales",
+ "translate-magic-special": "Alias de páginas especiales",
"translate-magic-words": "Palabras mágicas",
"translate-magic-namespace": "Nombres de los espacios de nombres",
"translate-magic-notsaved": "No se guardó tu edición.",
- "translate-magic-errors": "Por favor corrige {{PLURAL:$1|el siguiente error|los siguientes errores}} en la traducción:",
- "translate-magic-saved": "Los cambios se guardaron correctamente.",
- "translate-checks-parameters": "{{PLURAL:$2|El siguiente parámetro no se está|Los siguientes parámetros no se están}} usando:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-magic-errors": "Corrige {{PLURAL:$1|el siguiente error|los siguientes errores}} en la traducción:",
+ "translate-magic-saved": "Se guardaron los cambios.",
+ "translate-checks-parameters": "{{PLURAL:$2|Falta el parámetro siguiente|Faltan los parámetros siguientes}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-parameters-unknown": "{{PLURAL:$2|El siguiente parámetro es desconocido|Los siguientes parámetros son desconocidos}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-balance": "Hay algún signo de agrupación de {{PLURAL:$2|la siguiente clase|las siguientes clases}} sin emparejar:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-links": "{{PLURAL:$2|El siguiente enlace es problemático|Los siguientes $2 enlaces son problemáticos}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-links-missing": "{{PLURAL:$2|Falta el siguiente enlace|Faltan los siguientes $2 enlaces}}:\n<strong><nowiki>$1</nowiki></strong>",
- "translate-checks-xhtml": "Por favor, sustituye {{PLURAL:$2|la siguiente etiqueta|las siguientes etiquetas}} por las correctas:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Sustituye {{PLURAL:$2|la siguiente etiqueta|las siguientes etiquetas}} por las correctas:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-plural": "El mensaje original usa <nowiki>{{PLURAL:}}</nowiki> pero no así la traducción.",
- "translate-checks-plural-forms": "<nowiki>{{PLURAL:}}</nowiki>recibió {{PLURAL:$1|una forma|$1 formas}} pero únicamente {{PLURAL:$2|está soportada una forma|están soportadas $2 formas}} (excluyendo las formas 0= y 1=).",
+ "translate-checks-plural-forms": "<nowiki>{{PLURAL:}}</nowiki> recibió {{PLURAL:$1|una forma|$1 formas}} pero únicamente {{PLURAL:$2|se admite una forma|se admiten $2 formas}} (excluyendo las formas 0= y 1=).",
"translate-checks-plural-dupe": "<nowiki>{{PLURAL:}}</nowiki> tiene formas duplicadas al final. <nowiki>{{PLURAL:$1|lunes|lunes}}</nowiki> debería escribirse así: <nowiki>{{PLURAL:$1|lunes}}</nowiki>.",
"translate-checks-pagename": "El espacio de nombres difiere del original",
"translate-checks-format": "Esta traducción no sigue al original o tiene sintaxis inválida: $1",
@@ -116,15 +117,23 @@
"translate-pref-nonewsletter": "No quiero recibir correos de noticias",
"translate-pref-editassistlang": "Idiomas auxiliares:",
"prefs-translate": "Opciones de traducción",
- "translate-pref-editassistlang-help": "Lista separada por comas de códigos de idioma.\nLa traducción de un mensaje en estos idiomas se muestra cuando tu traduces.\nLa lista de idiomas por defecto depende de tu idioma.",
+ "translate-pref-editassistlang-help": "Lista de códigos de idiomas separados por comas.\nSe mostrarán las traducciones de los mensajes en esos idiomas mientras traduces.\nLa lista de idiomas predeterminada depende de tu idioma.",
"translate-pref-editassistlang-bad": "Código de idioma inválido en la lista:\n<nowiki>$1</nowiki>.",
"right-translate": "Editar con la interfaz de traducción",
"right-translate-manage": "Administrar grupos de mensajes",
- "action-translate-manage": "administrar grupos de mensaje",
+ "action-translate-manage": "gestionar grupos de mensajes",
"right-translate-import": "Importar traducciones sin conexión",
"action-translate-import": "importar traducciones sin conexión",
"right-translate-messagereview": "Revisar traducciones",
+ "action-translate-messagereview": "revisar traducciones",
"right-translate-groupreview": "Modificar el estado del flujo de trabajo de los grupos de mensajes",
+ "translate-rcfilters-translations": "Traducciones",
+ "translate-rcfilters-translations-only-label": "Traducciones",
+ "translate-rcfilters-translations-only-desc": "Cambios a las páginas traducidas.",
+ "translate-rcfilters-translations-filter-label": "No traducciones",
+ "translate-rcfilters-translations-filter-desc": "Todos los cambios que no son traducciones.",
+ "translate-rcfilters-translations-site-label": "Mensajes del sitio",
+ "translate-rcfilters-translations-site-desc": "Personalizaciones a los mensajes del sitio en el espacio de nombres MediaWiki.",
"translate-rc-translation-filter": "Filtrar traducciones:",
"translate-rc-translation-filter-no": "No hacer nada",
"translate-rc-translation-filter-only": "Mostrar solo traducciones",
@@ -150,28 +159,27 @@
"translate-statsf-count": "Medida:",
"translate-statsf-count-edits": "Número de ediciones",
"translate-statsf-count-users": "Traductores activos",
- "translate-statsf-count-registrations": "Nuevos usuarios",
+ "translate-statsf-count-registrations": "Usuarios nuevos",
"translate-statsf-count-reviews": "Revisiones de traducción",
"translate-statsf-count-reviewers": "Revisores",
"translate-statsf-language": "Lista de códigos de idioma separados por comas:",
"translate-statsf-group": "Lista de códigos de grupo separados por comas:",
"translate-statsf-submit": "Vista previa",
- "translate-tag-category": "Páginas traducibles",
"translate-tag-page-desc": "Traducción de la página wiki [[$2|$1]] del $3 ($4).",
"translate-sidebar-alltrans": "En otros idiomas",
"translations": "Todas las traducciones",
- "translations-summary": "Introduce un nombre de mensaje para ver todas las traducciones disponibles.",
+ "translations-summary": "Escribe debajo un nombre de mensaje para ver todas las traducciones disponibles.",
"translate-translations-no-message": "«$1» no es un mensaje traducible",
"translate-translations-none": "No hay traducciones para «$1»",
"translate-translations-count": "Se {{PLURAL:$1|ha|han}} encontrado {{PLURAL:$1|una traducción|$1 traducciones}}.",
"translate-translations-fieldset-title": "Mensaje",
"translate-translations-messagename": "Nombre:",
"translate-translations-project": "Proyecto:",
- "translate-translations-including-no-param": "Por favor especifique un mensaje clave válido en el parámetro de subpágina",
+ "translate-translations-including-no-param": "Especifica una clave de mensaje válida en el parámetro de subpágina",
"translate-translations-history-short": "h",
"languagestats": "Estadísticas por idioma",
"languagestats-summary": "Esta página muestra estadísticas de traducción para todos los grupos de mensajes para un idioma.",
- "messagegroupstats-summary": "Esta página muestra las estadísticas de grupo mensaje.",
+ "messagegroupstats-summary": "Esta página muestra las estadísticas del grupo de mensajes.",
"languagestats-stats-for": "Estadísticas de las traducciones en $1 ($2).",
"languagestats-recenttranslations": "traducciones recientes",
"translate-langstats-incomplete": "Algunas de las estadísticas de esta página están incompletas. Actualiza la página para obtener más estadísticas.",
@@ -198,7 +206,7 @@
"translate-mgs-noempty": "No mostrar los idiomas que no tienen ninguna traducción",
"translate-mgs-submit": "Mostrar estadísticas",
"translate-mgs-column-language": "Idioma",
- "translate-mgs-totals": "Todos los idiomas juntos",
+ "translate-mgs-totals": "$1 {{PLURAL:$1|idioma|idiomas}} en total",
"translate-mgs-invalid-group": "El grupo especificado $1 no existe.",
"translate-mgs-nothing": "No hay nada que mostrar de las estadísticas solicitadas.",
"supportedlanguages": "Idiomas admitidos",
@@ -208,6 +216,7 @@
"supportedlanguages-recenttranslations": "traducciones recientes",
"supportedlanguages-count": "$1 {{PLURAL:$1|idioma|idiomas}} en total.",
"supportedlanguages-activity": "$1: $2 {{PLURAL:$2|edición|ediciones}}, última edición hace $3 {{PLURAL:$3|día|días}}",
+ "abusefilter-edit-builder-vars-translate-source-text": "Texto de origen de la unidad de traducción",
"translate-save": "Guardar ($1)",
"translate-jssti-add": "Añadir a la lista",
"managemessagegroups": "Gestión de grupos de mensajes",
@@ -227,31 +236,28 @@
"translate-manage-action-fuzzy": "Importar y combinar traducciones",
"translate-manage-nochanges": "No hay cambios en los mensajes originales para este grupo.",
"translate-manage-nochanges-other": "No hubo cambios para este idioma.\nUse el enlace siguiente para volver a la vista de grupo.",
- "translate-manage-inconsistent": "Se detectaron inconsistencias en la solicitud.\nPor favor revise y pruebe nuevamente.\nDetalles: $1.",
+ "translate-manage-inconsistent": "Se detectaron inconsistencias en la solicitud.\nRevisa cambios y prueba nuevamente.\nDetalles: $1.",
"translate-manage-toolong": "Se excedió el tiempo máximo de procesamiento de $1 {{PLURAL:$1|segundo|segundos}}.\nPor favor reenvía el formulario para continuar procesando.",
- "translate-manage-import-summary": "Importando nueva versión desde fuente externa",
- "translate-manage-conflict-summary": "Importando nueva versión desde fuente externa.\nPor favor verifique.",
- "translate-manage-fuzzy-summary": "El mensaje original ha cambiado",
+ "translate-manage-import-summary": "Importando una nueva versión desde fuente externa",
+ "translate-manage-conflict-summary": "Importando un nueva versión desde fuente externa.\nVerifica.",
"translate-manage-submit": "Ejecutar",
- "translate-manage-intro-other": "A continuación está la lista de modificaciones de traducción en el idioma $1.\nPor favor revíselas y elija la acción apropiada para cada una.\nSi prefiere ignorar los cambios, esta acción es sólo temporal.",
+ "translate-manage-intro-other": "A continuación está la lista de modificaciones de traducción en el idioma $1.\nRevísalas y elige la acción apropiada para cada una.\nSi prefieres ignorar los cambios, esta acción es sólo temporal.",
"translate-manage-import-ok": "Importada: $1",
"translate-manage-import-done": "¡Importación completa!",
"importtranslations": "Importar traducciones",
"translate-import-from-local": "Importación de archivo local:",
"translate-import-load": "Subir archivo",
"translate-import-err-dl-failed": "Imposible obtener el archivo:\n$1",
- "translate-import-err-ul-failed": "La carga del archivo no fue exitosa.",
- "translate-import-err-invalid-title": "El nombre del archivo <nowiki>$1</nowiki> es inválido.",
+ "translate-import-err-ul-failed": "Falló la subida del archivo",
+ "translate-import-err-invalid-title": "El nombre de archivo <nowiki>$1</nowiki> no es válido.",
"translate-import-err-no-such-file": "El archivo <nowiki>$1</nowiki> no existe o no ha sido subido localmente.",
"translate-import-err-stale-group": "El grupo de mensajes al que pertenece este archivo no existe.",
- "translate-import-err-no-headers": "El archivo no es un archivo Gettext bien formado en formato de extensión Translate:\nNo se puede determinar el grupo y el idioma a partir de los encabezados de archivo.",
+ "translate-import-err-no-headers": "Este no es un archivo Gettext bien formado en el formato de extensión Translate:\nNo se puede determinar el grupo y el idioma a partir de las cabeceras del archivo.",
"translate-import-err-warnings": "El archivo no está bien constituído.\nAsegúrese de que su editor no quita los campos msgctxt.\nDetalles: $1",
"translate-js-summary": "Resumen:",
"translate-js-save": "Guardar",
"translate-js-next": "Guardar y abrir el siguiente",
- "translate-js-nonext": "Este fue el último mensaje en esta página.",
"translate-js-skip": "Ir al siguiente",
- "translate-js-save-failed": "No se pudo guardar. Informa de este error.",
"translate-js-history": "Historial de traducción",
"translate-js-support": "Pregunta",
"translate-js-support-title": "Pide ayuda si no hay suficiente información para traducir este mensaje correctamente.",
@@ -268,50 +274,30 @@
"translate-documentation-language": "Documentación de mensaje",
"translate-searchprofile": "Traducciones",
"translate-searchprofile-tooltip": "Buscar en todas las traducciones",
+ "translate-searchprofile-note": "Hay más opciones de búsqueda disponibles en la [$1 búsqueda de traducciones].",
"translate-search-languagefilter": "Filtrar por idioma:",
"translate-search-nofilter": "Sin filtro",
- "translate-messagereview-submit": "Marcar como revisado",
- "translate-messagereview-progress": "Marcando como revisado...",
- "translate-messagereview-failure": "Error al marcar como revisado: $1",
- "translate-messagereview-done": "Revisado",
- "translate-messagereview-reviews": "Revisado por {{PLURAL:$1|un usuario|$1 usuarios}}",
- "translate-messagereview-reviewswithyou": "Revisado por {{PLURAL:$1|ti|$1 usuarios incluyéndote a ti}}",
- "api-error-invalidrevision": "No se encontró la traducción",
- "api-error-unknownmessage": "No se encontró el mensaje",
- "api-error-fuzzymessage": "La traducción está marcada como desactualizada",
- "api-error-owntranslation": "No puedes marcar tus propias traducciones como revisadas",
- "translate-messagereview-no-fuzzy": "No se pueden marcar como revisadas las traducciones desactualizadas",
- "translate-messagereview-no-own": "No puedes marcar tus propias traducciones como revisadas.",
- "translate-messagereview-doit": "Marcar esta traducción como revisada.",
"log-name-translationreview": "Registro de revisión de las traducciones",
"log-description-translationreview": "Registro de todas las revisiones de las traducciones y de los grupos de mensajes.",
"logentry-translationreview-message": "$1 {{GENDER:$2|revisó}} la traducción $3",
"logentry-translationreview-group": "$1 {{GENDER:$2|cambió}} el estado de las traducciones en $4 de $3, que pasó de $6 a $7",
"group-translate-sandboxed": "Traductores sin aprobar",
"group-translate-sandboxed-member": "{{GENDER:$1|traductor|traductora}} sin aprobar",
- "right-translate-sandboxmanage": "Gestionar usuarios de la zona de probas",
+ "right-translate-sandboxmanage": "Gestionar usuarios de la zona de pruebas",
"action-translate-sandboxmanage": "gestionar usuarios de la zona de pruebas",
"right-translate-sandboxaction": "Ejecutar acciones permitidas para los usuarios de la zona de pruebas",
"action-translate-sandboxaction": "ejecutar acciones permitidas a los usuarios de la zona de pruebas",
"translate-workflow-state-": "(no definido)",
"translate-workflowstatus": "Estado: $1",
- "translate-workflow-set-do": "Activar",
"translate-workflow-set-doing": "Activando...",
- "translate-workflow-set-done": "¡Hecho!",
- "translate-workflow-set-error-alreadyset": "El estado requerido es idéntico a la situación actual.",
"translate-workflow-autocreated-summary": "Creación automática de la página por el estado del flujo de trabajo $1",
"translate-stats-workflow": "Estado",
"translate-workflowgroup-label": "Estados del flujo de trabajo",
"translate-workflowgroup-desc": "Este grupo de mensajes muestra los estados del flujo de trabajo de traducción.\nLos estados están definidos en la variable de configuración $wgTranslateWorkflowStates.",
"translate-dynagroup-recent-label": "Traducciones recientes",
- "translate-dynagroup-recent-desc": "Este grupo de mensajes muestra todas las traducciones recientes en este idioma.\nEs especialmente útil para tareas de revisión.",
+ "translate-dynagroup-recent-desc": "Este grupo de mensajes muestra todas las traducciones recientes en este idioma.\nResulta muy útil para tareas de revisión.",
"translate-dynagroup-additions-label": "Adiciones recientes",
"translate-dynagroup-additions-desc": "Este grupo de mensajes muestra mensajes nuevos y cambiados.",
- "translate-dynagroup-by": "Traducción hecha por {{GENDER:$1|$1}}",
- "translate-dynagroup-byc": "Traducción hecha por {{GENDER:$1|$1}} ($2)",
- "translate-dynagroup-last": "Último cambio por {{GENDER:$1|$1}}",
- "translate-dynagroup-lastc": "Último cambio por {{GENDER:$1|$1}} ($2)",
- "translate-gethelp": "Ayuda",
"translate-msggroupselector-projects": "Grupo de mensajes",
"translate-msggroupselector-search-placeholder": "Buscar grupos",
"translate-msggroupselector-search-all": "Todos",
@@ -330,14 +316,17 @@
"tux-status-translated": "Traducido",
"tux-status-saving": "Guardando...",
"tux-status-unsaved": "Sin guardar",
+ "tux-save-unknown-error": "Ocurrió un error desconocido.",
"tux-editor-placeholder": "Tu traducción",
+ "tux-editor-editsummary-placeholder": "Resumen opcional",
"tux-editor-paste-original-button-label": "Pegar texto de origen",
"tux-editor-discard-changes-button-label": "Descartar los cambios",
"tux-editor-save-button-label": "Guardar la traducción",
"tux-editor-skip-button-label": "Ir al siguiente",
"tux-editor-cancel-button-label": "Cancelar",
"tux-editor-confirm-button-label": "Confirmar la traducción",
- "tux-editor-shortcut-info": "Pulsa «$1» para guardar, «$2» para ir al siguiente mensaje o «$3» para más atajos.",
+ "tux-editor-proofread-button-label": "Marcar como revisada",
+ "tux-editor-shortcut-info": "Pulsa «$1» para guardar, «$2» para ir al siguiente mensaje, «$4» para proporcionar un resumen o «$3» para más atajos.",
"tux-editor-edit-desc": "Editar la documentación",
"tux-editor-add-desc": "Añadir documentación",
"tux-editor-suggestions-title": "Sugerencias",
@@ -367,7 +356,7 @@
"tux-messagetable-more-messages": "$1 {{PLURAL:$1|mensaje|mensajes}} más",
"tux-messagetable-loading-messages": "Cargando {{PLURAL:$1|el mensaje|los mensajes}}…",
"tux-message-filter-placeholder": "Filtrar lista",
- "tux-message-filter-result": "Se encontraron $1 {{PLURAL:$1|resultado|resultados}} para \"$2\"",
+ "tux-message-filter-result": "Se {{PLURAL:$1|encontró $1 resultado|encontraron $1 resultados}} para «$2»",
"tux-message-filter-advanced-button": "Búsqueda avanzada",
"tux-message-filter-optional-messages-label": "Mensajes opcionales",
"tux-proofread-translated-by-self": "Traducido por ti",
@@ -392,9 +381,11 @@
"tux-editor-close-tooltip": "Cerrar",
"tux-editor-expand-tooltip": "Expandir",
"tux-editor-collapse-tooltip": "Contraer",
+ "tux-editor-message-tools-show-editor": "Mostrar en el editor de wiki",
"tux-editor-message-tools-history": "Historial",
"tux-editor-message-tools-delete": "Eliminar",
"tux-editor-message-tools-translations": "Todas las traducciones",
+ "tux-editor-message-tools-linktothis": "Enlace hacia este mensaje",
"tux-editor-loading": "Cargando...",
"translate-search-more-languages-info": "$1 {{PLURAL:$1|idioma|idiomas}} más",
"translate-statsbar-tooltip": "$1 % traducido, $2 % revisado",
@@ -402,5 +393,6 @@
"translate-search-more-groups-info": "$1 {{PLURAL:$1|grupo|grupos}} más",
"translate-ulsdep-title": "Error de configuración",
"translate-ulsdep-body": "La extensión Translate depende de la [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector extensión Universal Language Selector].",
- "tux-session-expired": "Tu sesión se ha cerrado. Inicia sesión en una pestaña aparte. Alternativamente, haz una copia de las traducciones sin guardar, inicia sesión y regresa a esta página."
+ "tux-session-expired": "Tu sesión se ha cerrado. Inicia sesión en una pestaña aparte. Alternativamente, haz una copia de las traducciones sin guardar, inicia sesión, regresa a esta página y vuelve a escribir tus traducciones.",
+ "tux-nojs": "Esta página necesita JavaScript. JavaScript está desactivado, no funciona o no admitimos este navegador."
}
diff --git a/MLEB/Translate/i18n/core/et.json b/MLEB/Translate/i18n/core/et.json
index 1df1af72..8e8bfc21 100644
--- a/MLEB/Translate/i18n/core/et.json
+++ b/MLEB/Translate/i18n/core/et.json
@@ -9,11 +9,6 @@
},
"translate": "Tõlkimine",
"translate-desc": "[[Special:Translate|Vahend]] MediaWiki ja muude sõnumite tõlkimiseks",
- "translate-taskui-view": "Näita kõiki sõnumeid",
- "translate-taskui-untranslated": "Näita tõlkimata sõnumeid",
- "translate-taskui-optional": "Näita valikulisi sõnumeid",
- "translate-taskui-acceptqueue": "Ainult sõnumid, mida saan märkida ülevaadatuks",
- "translate-taskui-reviewall": "Kõigi sõnumite ülevaatus",
"translate-taction-translate": "Tõlkimine",
"translate-taction-proofread": "Ülevaatus",
"translate-taction-lstats": "Keele arvandmed",
@@ -40,7 +35,6 @@
"translate-page-description-hasoptional": "See sõnumirühm sisaldab valikulisi sõnumeid.\nValikulisi sõnumeid tuleks tõlkida vaid juhul, kui sinu keeles on erinõudeid\nnagu tühikute mittekasutamine või pärisnimede translitereerimine. $1",
"translate-page-description-hasoptional-open": "Näita valikulisi sõnumeid.",
"translate-page-edit": "muuda",
- "translate-ext-url": "<hr />Võrgukoht: $1",
"translate-optional": "(valikuline)",
"translate-ignored": "(eiratud)",
"translate-edit-title": "Redigeeri sõnumit \"$1\"",
@@ -50,9 +44,7 @@
"translate-edit-no-information": "<em>Sellel sõnumil pole dokumentatsiooni.\nKui tead, kus seda sõnumit kasutatakse, saad dokumentatsiooni lisamisega teisi tõlkijaid aidata.</em>",
"translate-edit-information": "Selle sõnumi teave ($1)",
"translate-edit-in-other-languages": "Sõnum teistes keeltes",
- "translate-edit-committed": "Kehtiv tõlge tarkvaras",
"translate-edit-warnings": "Hoiatused puuduliku tõlke kohta",
- "translate-edit-tmsugs": "Pakkumused tõlgete andmebaasist",
"translate-edit-tmmatch-source": "Tõlke alliktekst: $1",
"translate-edit-tmmatch": "Vastavus: $1%",
"translate-use-suggestion": "Asenda praegune tõlge selle pakkumusega.",
@@ -75,7 +67,7 @@
"translate-magic-namespace": "Nimeruuminimed",
"translate-magic-notsaved": "Sinu muudatust ei salvestatud!",
"translate-magic-errors": "Palun eemalda tõlgetest {{PLURAL:$1|järgmine tõrge|järgmised tõrked}}:",
- "translate-magic-saved": "Muudatused on edukalt salvestatud.",
+ "translate-magic-saved": "Muudatused on salvestatud.",
"translate-checks-parameters": "{{PLURAL:$2|Järgmine parameeter|Järgmised parameetrid}} on kasutamata:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-parameters-unknown": "{{PLURAL:$2|Järgmine parameeter on tundmatu|Järgmised parameetrid on tundmatud}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-balance": "{{PLURAL:$2|Sulge}} on paaritu arv:\n<strong><nowiki>$1</nowiki></strong>",
@@ -99,6 +91,13 @@
"action-translate-import": "importida ühenduseta tehtud tõlkeid",
"right-translate-messagereview": "Tõlkeid üle vaadata",
"right-translate-groupreview": "Muuta sõnumirühmade tõlketöö seisundit",
+ "translate-rcfilters-translations": "Tõlked",
+ "translate-rcfilters-translations-only-label": "Tõlked",
+ "translate-rcfilters-translations-only-desc": "Tõlgitud lehekülgedel tehtud muudatused.",
+ "translate-rcfilters-translations-filter-label": "Pole tõlked",
+ "translate-rcfilters-translations-filter-desc": "Kõik muudatused, mis pole tõlked.",
+ "translate-rcfilters-translations-site-label": "Süsteemisõnumid",
+ "translate-rcfilters-translations-site-desc": "Süsteemisõnumite kohandamine nimeruumis MediaWiki.",
"translate-rc-translation-filter": "Filtreeri tõlkeid:",
"translate-rc-translation-filter-no": "Ära filtri",
"translate-rc-translation-filter-only": "Näita ainult tõlkeid",
@@ -130,7 +129,6 @@
"translate-statsf-language": "Komaga eraldatud keelekoodide loend:",
"translate-statsf-group": "Komaga eraldatud rühmakoodide loend:",
"translate-statsf-submit": "Eelvaade",
- "translate-tag-category": "Tõlgitavad leheküljed",
"translate-tag-page-desc": "Vikilehekülje [[$2|$1]] tõlkimine $3 keelest ($4).",
"translate-sidebar-alltrans": "Tõlge teistes keeltes",
"translations": "Kõik tõlked",
@@ -172,7 +170,7 @@
"translate-mgs-noempty": "Ära näita keeli, millel pole ühtegi tõlget",
"translate-mgs-submit": "Näita arvandmeid",
"translate-mgs-column-language": "Keel",
- "translate-mgs-totals": "Kõik keeled kokku",
+ "translate-mgs-totals": "{{PLURAL:$1|Ühes keeles|Kõigis $1 keeles}} kokku",
"translate-mgs-invalid-group": "Määratud rühma $1 pole.",
"translate-mgs-nothing": "Soovitud näitajate kohta pole midagi näidata.",
"supportedlanguages": "Toetatud keeled",
@@ -204,7 +202,6 @@
"translate-manage-toolong": "Töötlusaja ülempiir $1 {{PLURAL:$1|sekund|sekundit}} on ületatud.\nPalun esita vorm uuesti, et töötlemist jätkata.",
"translate-manage-import-summary": "Uue versiooni importimine välisallikast.",
"translate-manage-conflict-summary": "Uue versiooni importimine välisallikast.\nPalun kontrolli.",
- "translate-manage-fuzzy-summary": "Sõnumi määratlus on muutunud.",
"translate-manage-submit": "Täida",
"translate-manage-intro-other": "Allpool on $1 keele tõlkemuudatuste loetelu.\nPalun vaata muudatused üle ja vali iga sõnumi jaoks sobiv toiming.\nKui eirad muudatusi, on see toiming vaid ajutine.",
"translate-manage-import-ok": "Imporditud: $1",
@@ -219,9 +216,7 @@
"translate-js-summary": "Resümee:",
"translate-js-save": "Salvesta",
"translate-js-next": "Salvesta ja ava järgmine",
- "translate-js-nonext": "See oli selle lehekülje viimane sõnum.",
"translate-js-skip": "Jäta vahele",
- "translate-js-save-failed": "Salvestamine ebaõnnestus. Palun teata sellest tõrkest.",
"translate-js-history": "Tõlkimisajalugu",
"translate-js-support": "Esita küsimus",
"translate-js-support-title": "Esita küsimus, kui teave selle sõnumi kohta on õigesti tõlkimiseks puudulik.",
@@ -238,41 +233,21 @@
"translate-documentation-language": "Sõnumi dokumentatsioon",
"translate-searchprofile": "Tõlked",
"translate-searchprofile-tooltip": "Otsi kõigist tõlgetest",
+ "translate-searchprofile-note": "Rohkem otsivalikuid on saadaval [$1 tõlkeotsingus].",
"translate-search-languagefilter": "Keelefilter:",
"translate-search-nofilter": "Filtrita",
- "translate-messagereview-submit": "Märgi ülevaadatuks",
- "translate-messagereview-progress": "Ülevaadatuks märkmine...",
- "translate-messagereview-failure": "Ülevaadatuks märkimine ebaõnnestus: $1",
- "translate-messagereview-done": "Ülevaadatud",
- "translate-messagereview-reviews": "Üle vaadanud {{PLURAL:$1|üks kasutaja|$1 kasutajat}}",
- "translate-messagereview-reviewswithyou": "{{PLURAL:$1|Sinu|$1 kasutaja ja sealhulgas sinu}} üle vaadatud",
- "api-error-invalidrevision": "Tõlget ei leitud",
- "api-error-unknownmessage": "Sõnumit ei leitud",
- "api-error-fuzzymessage": "Tõlge on märgitud ülevaatuseks",
- "api-error-owntranslation": "Enda tõlkeid ei saa ülevaadatuks märkida.",
- "translate-messagereview-no-fuzzy": "Iganenud tõlkeid ei saa ülevaadatuks märkida.",
- "translate-messagereview-no-own": "Enda tõlkeid ei saa märkida ülevaadatuks.",
- "translate-messagereview-doit": "Märgi see tõlge ülevaadatuks",
"log-name-translationreview": "Tõlgete ülevaatuslogi",
"log-description-translationreview": "Kõigi tõlgete ja sõnumirühmade ülevaatuslogi.",
"logentry-translationreview-message": "$1 {{GENDER:$2|märkis ülevaadatuks}} tõlke $3",
"logentry-translationreview-group": "$1 {{GENDER:$2|muutis}} lehekülje \"$3\" $4 tõlgete oleku: $6 → $7",
"translate-workflow-state-": "(määramata)",
"translate-workflowstatus": "Olek: $1",
- "translate-workflow-set-do": "Määra",
"translate-workflow-set-doing": "Määramine...",
- "translate-workflow-set-done": "Määratud!",
- "translate-workflow-set-error-alreadyset": "Soovitud olek kattub senise olekuga.",
"translate-stats-workflow": "Olek",
"translate-dynagroup-recent-label": "Viimased tõlked",
"translate-dynagroup-recent-desc": "Selles rühmas on kõik viimati sellesse keelde tõlgitud sõnumid.\nSobib ennekõike tõlgete ülevaatuseks.",
"translate-dynagroup-additions-label": "Viimased lisandused",
"translate-dynagroup-additions-desc": "Selles sõnumirühmas on uued ja muudetud sõnumid.",
- "translate-dynagroup-by": "Kasutaja {{GENDER:$1|$1}} tõlge",
- "translate-dynagroup-byc": "Kasutaja {{GENDER:$1|$1}} tõlge ($2)",
- "translate-dynagroup-last": "Viimase muudatuse tegi {{GENDER:$1|$1}}",
- "translate-dynagroup-lastc": "Viimase muudatuse tegi {{GENDER:$1|$1}} ($2)",
- "translate-gethelp": "Abi",
"translate-msggroupselector-projects": "Sõnumirühm",
"translate-msggroupselector-search-placeholder": "Otsi rühmi",
"translate-msggroupselector-search-all": "Kõik",
@@ -292,13 +267,15 @@
"tux-status-saving": "Salvestamine...",
"tux-status-unsaved": "Salvestamata",
"tux-editor-placeholder": "Sinu tõlge",
+ "tux-editor-editsummary-placeholder": "Valikuline resümee",
"tux-editor-paste-original-button-label": "Kleebi lähtetekst",
"tux-editor-discard-changes-button-label": "Hülga muudatused",
"tux-editor-save-button-label": "Salvesta tõlge",
"tux-editor-skip-button-label": "Jäta vahele ja mine järgmise juurde",
"tux-editor-cancel-button-label": "Loobu",
"tux-editor-confirm-button-label": "Kinnita tõlge",
- "tux-editor-shortcut-info": "Vajuta \"$1\", et salvestada, või \"$2\", et see sõnum vahele jätta ja minna järgmise juurde, või \"$3\" teiste kiirklahvide jaoks.",
+ "tux-editor-proofread-button-label": "Märgi ülevaadatuks",
+ "tux-editor-shortcut-info": "Vajuta \"$1\", et salvestada, või \"$2\", et see sõnum vahele jätta ja minna järgmise juurde, või \"$4\", et kirjutada resümee, või \"$3\", et näha teisi kiirklahve.",
"tux-editor-edit-desc": "Redigeeri dokumentatsiooni",
"tux-editor-add-desc": "Lisa dokumentatsioon",
"tux-editor-suggestions-title": "Pakkumused",
@@ -352,11 +329,15 @@
"tux-editor-close-tooltip": "Sule",
"tux-editor-expand-tooltip": "Laiem vaade",
"tux-editor-collapse-tooltip": "Kitsam vaade",
+ "tux-editor-message-tools-show-editor": "Näita vikitoimetis",
"tux-editor-message-tools-history": "Ajalugu",
+ "tux-editor-message-tools-delete": "Kustuta",
"tux-editor-message-tools-translations": "Kõik tõlked",
+ "tux-editor-message-tools-linktothis": "Link sellele sõnumile",
"tux-editor-loading": "Laadimine...",
"translate-search-more-languages-info": "Veel $1 {{PLURAL:$1|keel|keelt}}",
"translate-statsbar-tooltip": "$1% tõlgitud, $2% ülevaadatud",
"translate-statsbar-tooltip-with-fuzzy": "$1% tõlgitud, $2% ülevaadatud, $3% iganenud",
- "translate-search-more-groups-info": "Veel $1 {{PLURAL:$1|rühm|rühma}}"
+ "translate-search-more-groups-info": "Veel $1 {{PLURAL:$1|rühm|rühma}}",
+ "tux-nojs": "See tööriist ei tööta ilma JavaScriptita. JavaScript on keelatud, see ei toiminud või selle brauseri tugi puudub."
}
diff --git a/MLEB/Translate/i18n/core/eu.json b/MLEB/Translate/i18n/core/eu.json
index 8b3249bf..36443457 100644
--- a/MLEB/Translate/i18n/core/eu.json
+++ b/MLEB/Translate/i18n/core/eu.json
@@ -5,16 +5,13 @@
"Kobazulo",
"Theklan",
"Xabier Armendaritz",
- "Subi"
+ "Subi",
+ "Sator",
+ "Mikel Ibaiba"
]
},
"translate": "Itzuli",
"translate-desc": "[[Special:Translate|Orrialde berezia]] MediaWiki eta bestelakoak itzultzeko",
- "translate-taskui-view": "Mezu guztiak erakutsi",
- "translate-taskui-untranslated": "Itzuli gabeko mezuak erakutsi",
- "translate-taskui-optional": "Hautazko mezuak erakutsi",
- "translate-taskui-acceptqueue": "Onar ditzakedan mezuak bakarrik",
- "translate-taskui-reviewall": "Itzulpen guztiak berrikusi",
"translate-taction-translate": "Itzuli",
"translate-taction-proofread": "Zuzenketak",
"translate-taction-lstats": "Hizkuntza estatistikak",
@@ -39,7 +36,6 @@
"translate-page-description-hasoptional": "Mezu-talde honek hautazko mezuak ditu.\nHautazko mezuak zure hizkuntzaren berezitasunak direla-eta, espazioak ez daudenean edo izen berezien itzulpenerako bakarrik itzuli. $1",
"translate-page-description-hasoptional-open": "Erakutsi hautazko mezuak.",
"translate-page-edit": "aldatu",
- "translate-ext-url": "<hr />Webgunea: $1",
"translate-optional": "(hautazkoa)",
"translate-ignored": "(ignoratua)",
"translate-edit-title": "\"$1\" aldatu",
@@ -51,7 +47,9 @@
"translate-edit-in-other-languages": "Mezua beste hizkuntzetan",
"translate-edit-warnings": "Bukatu gabeko itzulpenei buruzko oharrak",
"translate-edit-tmmatch": "$1% bilaketa",
- "translate-edit-askpermission": "Baimena eskatu",
+ "translate-edit-askpermission": "Baimena lortu",
+ "exporttranslations": "Itzulpenak esportatu",
+ "translate-export-form-format": "Formatua",
"translate-magic-pagename": "MediaWiki itzulpen zabaldua",
"translate-magic-module": "Modulu:",
"translate-magic-submit": "Bilatu",
@@ -68,7 +66,7 @@
"translate-magic-namespace": "Izen-tarteen izenak",
"translate-magic-notsaved": "Zure edizioa ez da gorde!",
"translate-magic-errors": "Mesedez zuzendu ondorengo {{PLURAL:$1|akatsa|akatsak}} itzulpenetan:",
- "translate-magic-saved": "Zure aldaketak ongi gorde dira.",
+ "translate-magic-saved": "Zure aldaketak gorde dira.",
"translate-checks-fudforum-syntax": "Proiektu honetan erabili <nowiki>$1</nowiki>, <nowiki>$2</nowiki>-ren ordez.",
"translate-pref-nonewsletter": "Ez iezadazu posta elektronikoaren bidezko berripaperik bidal",
"translate-pref-editassistlang": "Hizkuntza laguntzaileak:",
@@ -102,11 +100,12 @@
"translate-statsf-count-registrations": "Lankide berriak",
"translate-statsf-count-reviewers": "Berrikusleak",
"translate-statsf-submit": "Aurreikuspena",
- "translate-tag-category": "Orri itzulgarriak",
+ "translate-tag-page-desc": "[[$2|$1]] wiki orrialdearen itzulpena $3(e)tik ($4).",
"translate-sidebar-alltrans": "Erdaretan",
"translations": "Itzulpen guztiak",
"translate-translations-no-message": "\"$1\" itzulezina den mezua da. (ezin da euskaratu)",
"translate-translations-none": "\"$1\"-ek ez du itzulpenik",
+ "translate-translations-count": "{{PLURAL:$1|Itzulpen bat aurkitu da|$1 itzulpen aurkitu dira}}.",
"translate-translations-fieldset-title": "Mezua",
"translate-translations-messagename": "Izena:",
"translate-translations-project": "Proiektua:",
@@ -122,11 +121,13 @@
"translate-language-code": "Hizkuntza kodea",
"translate-language-code-field-name": "Hizkuntza kodea:",
"translate-suppress-complete": "Guztiz itzulitako mezu-taldeak bistatik kendu",
+ "translate-ls-noempty": "Ezkutatu itzulpen bat ere ez duten mezu-taldeak",
"translate-language": "Hizkuntza",
"translate-total": "Mezuak",
"translate-untranslated": "Itzuli gabe",
"translate-percentage-complete": "Bukatuak",
"translate-percentage-fuzzy": "Zaharkituak",
+ "translate-languagestats-overall": "Mezu-talde guztiak batera",
"translate-ls-submit": "Estatistikak erakutsi",
"translate-ls-column-group": "Mezu-taldea",
"translate-mgs-pagename": "Mezu-taldeko estatistikak",
@@ -136,8 +137,9 @@
"translate-mgs-column-language": "Hizkuntza",
"translate-mgs-totals": "Hizkuntza guztiak batera",
"supportedlanguages": "Laguntza duten hizkuntzak",
- "supportedlanguages-translators": "{{PLURAL:$2|Itzultzailea|Itzultzaileak}}: $1",
+ "supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|Translator}}|Itzultzaileak}}: $1",
"supportedlanguages-recenttranslations": "azken itzulpenak",
+ "supportedlanguages-count": "{{PLURAL:$1|Hizkutza bat|$1 hizkuntza}} guztira.",
"translate-save": "Gorde ($1)",
"translate-jssti-add": "Zerrendara gehitu",
"translate-manage-import-diff": "Mezua $1 | Ekintzak: $2",
@@ -148,15 +150,13 @@
"translate-manage-action-ignore": "Ezikusi",
"translate-manage-action-fuzzy": "Inportatu eta fuzzy itzulpenak",
"translate-manage-submit": "Exekutatu",
- "translate-manage-import-done": "Dena eginda!",
+ "translate-manage-import-done": "Inportazioa egina!",
"importtranslations": "Itzulpenak inportatu",
"translate-import-load": "Fitxategia kargatu",
"translate-js-summary": "Laburpena:",
"translate-js-save": "Gorde",
"translate-js-next": "Gorde eta hurrengoa ireki",
- "translate-js-nonext": "Mezu hau orrialde honetako azkena da.",
"translate-js-skip": "Hurrengora salto egin",
- "translate-js-save-failed": "Gordetzeak huts egin du. Mesedez errorea jakinarazi.",
"translate-js-history": "Itzulpenen historia",
"translate-js-support": "Galdera egin",
"translate-gs-pos": "Pos.",
@@ -172,19 +172,15 @@
"translate-searchprofile": "Itzulpenak",
"translate-searchprofile-tooltip": "Itzulpen guztietan bilatu",
"translate-search-languagefilter": "Iragazi hizkuntzaren arabera:",
- "translate-messagereview-submit": "Onartu",
- "translate-messagereview-progress": "Onartzen...",
- "translate-messagereview-done": "Onartu",
- "api-error-invalidrevision": "Itzulpena ez da aurkitu",
- "api-error-unknownmessage": "Mezua ez da aurkitu",
"translate-workflowstatus": "Egoera: $1",
- "translate-workflow-set-done": "Gorde botoia sakatu behin itzulpen egin eta gero",
"translate-stats-workflow": "Egoera",
"translate-dynagroup-recent-label": "Azken itzulpenak",
- "translate-gethelp": "Laguntza",
+ "translate-msggroupselector-projects": "Mezu-taldea",
+ "translate-msggroupselector-search-placeholder": "Bilatu taldeak",
"translate-msggroupselector-search-all": "Denak",
"translate-msggroupselector-search-recent": "Berriak",
"translate-msggroupselector-view-subprojects": "{{PLURAL:$1|azpitalde $1|$1 azpitalde}}",
+ "tux-languageselector": "Itzuli hizkuntza honetara",
"tux-tab-all": "Guztiak",
"tux-tab-untranslated": "Itzuli gabe",
"tux-tab-outdated": "Zaharkituta",
@@ -197,13 +193,16 @@
"tux-status-translated": "Itzulita",
"tux-status-saving": "Gordetzen...",
"tux-status-unsaved": "Ez da gorde",
+ "tux-save-unknown-error": "Errore ezezaguna gertatu da.",
"tux-editor-placeholder": "Zure itzulpena",
+ "tux-editor-editsummary-placeholder": "Hautazko laburpena",
"tux-editor-paste-original-button-label": "Kopiatu jatorrizko testua",
"tux-editor-discard-changes-button-label": "Baztertu aldaketak",
"tux-editor-save-button-label": "Itzulpena gorde",
"tux-editor-skip-button-label": "Hurrengora saltatu",
"tux-editor-cancel-button-label": "Utzi",
"tux-editor-confirm-button-label": "Berretsi itzulpena",
+ "tux-editor-proofread-button-label": "Markatu berrikusita bezala",
"tux-editor-edit-desc": "Aldatu dokumentazioa",
"tux-editor-add-desc": "Gehitu dokumentazioa",
"tux-editor-suggestions-title": "Iradokizunak",
@@ -232,6 +231,7 @@
"tux-messagetable-more-messages": "{{PLURAL:$1|mezu bat|$1 mezu}} gehiago",
"tux-messagetable-loading-messages": "{{PLURAL:$1|Mezua|Mezuak}} kargatzen...",
"tux-message-filter-placeholder": "Iragazi zerrenda",
+ "tux-message-filter-result": "{{PLURAL:$1|Emaitza bat aurkitu da|$1 emaitza aurkitu dira}} \"$2\" bilaketarako",
"tux-message-filter-advanced-button": "Bilaketa aurreratua",
"tux-message-filter-optional-messages-label": "Aukerako mezuak",
"tux-proofread-translated-by-self": "Zuk itzulitakoak",
@@ -247,6 +247,7 @@
"tux-empty-list-other-link": "Mezu guztiak erakutsi",
"tux-editor-close-tooltip": "Itxi",
"tux-editor-expand-tooltip": "Zabaldu",
+ "tux-editor-message-tools-show-editor": "Erakutsi wiki editorean",
"tux-editor-message-tools-history": "Historia",
"tux-editor-message-tools-delete": "Ezabatu",
"tux-editor-message-tools-translations": "Itzulpen guztiak",
diff --git a/MLEB/Translate/i18n/core/fa.json b/MLEB/Translate/i18n/core/fa.json
index 1cf266e1..74444e6d 100644
--- a/MLEB/Translate/i18n/core/fa.json
+++ b/MLEB/Translate/i18n/core/fa.json
@@ -15,27 +15,27 @@
"جواد",
"درفش کاویانی",
"Armin1392",
- "Alirezaaa"
+ "Alirezaaa",
+ "Hosseinblue",
+ "Calak",
+ "Ommmmid",
+ "Ladsgroup"
]
},
"translate": "ترجمه",
+ "translate-extensionname": "ترجمه",
"translate-desc": "[[Special:Translate|صفحهٔ ویژه‌ای]] برای ترجمهٔ مدیاویکی و فراتر از آن",
- "translate-taskui-view": "نمایش تمام پیغام‌ها",
- "translate-taskui-untranslated": "نمایش پیغام‌های ترجمه‌نشده",
- "translate-taskui-optional": "نمایش پیغام‌های اختیاری",
- "translate-taskui-acceptqueue": "تنها پیغام‌هایی که می‌توانم به عنوان بازبینی‌شده نشانه‌گذاری کنم",
- "translate-taskui-reviewall": "بررسی تمام ترجمه‌ها",
"translate-taskui-export-to-file": "برون‌بری در قالب بومی",
"translate-taskui-export-as-po": "برون‌بری برای ترجمهٔ برون‌خط",
"translate-taction-translate": "ترجمه",
- "translate-taction-proofread": "بازبینی ترجمه‌ها",
+ "translate-taction-proofread": "بازبینی",
"translate-taction-lstats": "آمار زبان",
"translate-taction-mstats": "آمار گروه‌های پیغام",
"translate-taction-export": "برون‌بری",
"translate-taction-disabled": "این عمل در این ویکی غیرفعال شده‌است.",
- "translate-page-no-such-language": "زبان مورد نظر نامجاز است.",
- "translate-page-no-such-group": "گروه مورد نظر نامجاز است.",
- "translate-page-disabled": "ترجمه این زبان در این گروه غیر فعال است.\nدلیل:\n\n<em>$1</em>",
+ "translate-page-no-such-language": "زبان مشخص‌شده نامعتبر است.",
+ "translate-page-no-such-group": "گروه مشخص‌شده نامعتبر است.",
+ "translate-page-disabled": "ترجمه این زبان در این گروه غیرفعال است.\nدلیل:\n\n<em>$1</em>",
"translate-language-disabled": "ترجمه به این زبان غیرفعال شده‌است.",
"translate-page-settings-legend": "تنظیمات",
"translate-page-group": "گروه",
@@ -53,24 +53,26 @@
"translate-page-description-hasoptional": "این گروه پیغام‌ها شامل پیغام‌های اختیاری است.\nپیغام‌های اختیاری باید تنها زمانی ترجمه شوند که زبان شما شرایط ویژه‌ای نظیر استفاده نکردن از فاصله یا نویسه‌گردانی اسامی خاص داشته باشد. $1",
"translate-page-description-hasoptional-open": "نمایش پیغام‌های اختیاری.",
"translate-page-edit": "ویرایش",
- "translate-ext-url": "<hr />وبگاه: $1",
"translate-optional": "(اختیاری)",
"translate-ignored": "(نادیده گرفته شده)",
"translate-edit-title": "ویرایش «$1»",
"translate-edit-definition": "تعریف پیغام",
"translate-edit-translation": "ترجمه",
"translate-edit-contribute": "مشارکت",
- "translate-edit-no-information": "<em>این پیغام دارای توضیحات نیست.\n''اگر می‌دانید که این پیغام چگونه یا در کجا استفاده می‌شود، می‌توانید با اضافه کردن توضیحات به دیگر ترجمه‌کنندگان کمک کنید.</em>",
+ "translate-edit-no-information": "<em>این پیغام دارای مستندات نیست.\n''اگر می‌دانید که این پیغام چگونه یا در کجا استفاده می‌شود، می‌توانید با اضافه کردن مستندات به دیگر ترجمه‌کنندگان کمک کنید.</em>",
"translate-edit-information": "اطلاعات در مورد این پیغام ($1)",
"translate-edit-in-other-languages": "همین پیغام در دیگر زبان‌ها",
- "translate-edit-committed": "ترجمهٔ فعلی در نرم‌افزار",
"translate-edit-warnings": "هشدار در مورد ترجمه‌های ناکامل",
- "translate-edit-tmsugs": "پیشنهادها از حافظهٔ ترجمه و ترجمهٔ ماشینی",
"translate-edit-tmmatch-source": "متن منبع ترجمه: $1",
"translate-edit-tmmatch": "$1٪ مطابقت",
"translate-use-suggestion": "ترجمه فعلی را با این پیشنهاد جایگزین کن.",
- "translate-edit-nopermission": "برای ترجمه پیغام‌ها نیازمند اجازهٔ ترجمه هستید.",
- "translate-edit-askpermission": "گرفتن دسترسی",
+ "translate-edit-nopermission": "برای ترجمه پیغام‌ها نیازمند اختیارات ترجمه هستید.",
+ "translate-edit-askpermission": "دریافت دسترسی",
+ "exporttranslations": "برون‌بری ترجمه‌ها",
+ "translate-export-form-format": "قالب",
+ "translate-export-invalid-format": "لطفاً یک قالب معتبر وارد کنید.",
+ "translate-export-not-supported": "برون‌بری ترجمه پشتیبانی نمی‌شود.",
+ "translate-export-format-notsupported": "قالب مشخص‌شده برای برون‌بری این گروه پیغام‌ها پشتیبانی نمی‌شود.",
"translate-magic-pagename": "ترجمهٔ گسترش‌یافتهٔ مدیاویکی",
"translate-magic-help": "شما می‌توانید نام مستعار صفحه‌های ویژه، واژه‌های جادویی، و نام فضاهای نام را ترجمه کنید.\n\nنام مستعار صفحه‌های ویژه می‌تواند بیش از یک ترجمه داشته باشد.\nترجمه‌ها را با استفاده از کامای انگلیسی (,) از هم جدا کنید.\nفضاهای نام تنها می‌توانند یک ترجمه داشته باشند.\n\nترجمهٔ نام فضاهای نام <code>$1 talk</code> می‌تواند پیچیده باشد. <code>$1</code> با نام وبگاه جایگزین می‌شود (مانند <code>{{ns:project_talk}}</code>). اگر در زبان شما امکان ایجاد چنین عبارتی بدون تغییر دادن نام وبگاه وجود ندارد، لطفاً از طریق [[Support]] به ما اطلاع دهید.\n\nبرای ذخیره کردن تغییرها باید عضو گروه ترجمه‌کنندگان باشید.\nتغییرات زمانی ذخیره می‌شوند که دکمهٔ ذخیره را در پایین صفحه فشار دهید.",
"translate-magic-module": "پودمان:",
@@ -89,10 +91,10 @@
"translate-magic-namespace": "اسم فضاهای نام",
"translate-magic-notsaved": "ویرایش‌تان ذخیره نشد!",
"translate-magic-errors": "لطفاً {{PLURAL:$1|خطای|خطاهای}} زیر را در ترجمهٔ خود اصلاح کنید:",
- "translate-magic-saved": "تغییرات شما با موفقیت ذخیره شد.",
+ "translate-magic-saved": "تغییرات شما ذخیره شد.",
"translate-checks-parameters": "این {{PLURAL:$2|پارامتر استفاده نشده‌است|پارامترها استفاده نشده‌اند}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-parameters-unknown": "{{PLURAL:$2|پارامتر|پارامترهای}} زیر {{PLURAL:$2|ناشناخته است|ناشناخته‌اند}}:\n<strong><nowiki>$1</nowiki></strong>",
- "translate-checks-balance": "تعداد {{PLURAL:$2|پرانتزها|پرانتزها}} زوج نیست:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "تعداد {{PLURAL:$2|پرانتزها|پرانتزها}} جفت نیست:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-links": "{{PLURAL:$2|پیوندهایی که در ادامه می‌آیند مشکل‌ساز هستند|پیوندی که در ادامه می‌آید مشکل ساز است}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-links-missing": "{{PLURAL:$2|پیوند|پیوندهای}} زیر پیدا {{PLURAL:$2|نشد|نشدند}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-xhtml": "لطفاً این {{PLURAL:$2|برچسب|برچسب‌ها}} را با موارد درست جایگزین کنید:\n<strong><nowiki>$1</nowiki></strong>",
@@ -116,7 +118,15 @@
"right-translate-import": "درون‌ریزی ترجمه‌های برون‌خط",
"action-translate-import": "درون‌ریزی ترجمه‌های برون‌خط",
"right-translate-messagereview": "بازبینی ترجمه‌ها",
+ "action-translate-messagereview": "بازبینی ترجمه‌ها",
"right-translate-groupreview": "بازبینی ترجمه‌ها",
+ "action-translate-groupreview": "تغییر وضعیت جریان کار گروه پیغام‌ها",
+ "translate-rcfilters-translations": "ترجمه‌ها",
+ "translate-rcfilters-translations-only-label": "ترجمه‌ها",
+ "translate-rcfilters-translations-only-desc": "تغییرات به صفحه‌های ترجمه شده.",
+ "translate-rcfilters-translations-filter-label": "بدون ترجمه",
+ "translate-rcfilters-translations-filter-desc": "تغییراتی که ترجمه نیستند",
+ "translate-rcfilters-translations-site-label": "پیامی‌های سایت.",
"translate-rc-translation-filter": "پالایش ترجمه‌ها:",
"translate-rc-translation-filter-no": "کاری نکن",
"translate-rc-translation-filter-only": "تنها ترجمه‌ها را نمایش بده",
@@ -148,8 +158,7 @@
"translate-statsf-language": "فهرست کدهای زبان جدا شده با کاما:",
"translate-statsf-group": "فهرست کدهای گروه جدا شده با کاما:",
"translate-statsf-submit": "پیش‌نمایش",
- "translate-tag-category": "صفحه‌های قابل ترجمه",
- "translate-tag-page-desc": "ترجمهٔ صفحهٔ [[$2|$1]] ویکی.",
+ "translate-tag-page-desc": "ترجمهٔ صفحهٔ ویکی [[$2|$1]] از $3 ($4).",
"translate-sidebar-alltrans": "در زبان‌های دیگر",
"translations": "همهٔ ترجمه‌ها",
"translations-summary": "نام یک پیغام را در زیر وارد کنید تا تمام ترجمه‌های موجود را ببینید.",
@@ -163,6 +172,7 @@
"translate-translations-history-short": "ت",
"languagestats": "آمار زبان",
"languagestats-summary": "این صفحه آمار ترجمه برای همهٔ گروه‌های پیغام را برای یک زبان نمایش می‌دهد.",
+ "messagegroupstats-summary": "این صفحه آمار گروه‌های پیغام را نشان می‌دهد.",
"languagestats-stats-for": "آمار ترجمه برای $1 ($2).",
"languagestats-recenttranslations": "ترجمه‌های اخیر",
"translate-langstats-incomplete": "قسمتی از آمار این صفحه ناکامل است. لطفاً صفحه را از نو بارگذاری کنید تا آماری بیشتری دریافت کنید.",
@@ -189,16 +199,17 @@
"translate-mgs-noempty": "زبان‌هایی که هیچ ترجمه‌ای ندارند نمایش نده",
"translate-mgs-submit": "نمایش آمار",
"translate-mgs-column-language": "زبان",
- "translate-mgs-totals": "همهٔ زبان‌ها با هم",
+ "translate-mgs-totals": "همهٔ {{PLURAL:$1|زبان|زبان‌ها}} با هم",
"translate-mgs-invalid-group": "گروه مشخص‌شدهٔ $1 وجود ندارد.",
"translate-mgs-nothing": "دربارهٔ آمار درخواست‌شده چیزی برای نمایش وجود ندارد.",
"supportedlanguages": "زبان‌های پشتیبانی‌شده",
"supportedlanguages-summary": "این صفحه فهرستی از تمام زبان‌های پشتیبانی‌شده توسط {{SITENAME}} را به همراه نام مترجمان در حال کار در آن زبان نمایش میدهد.\nهرچه یک مترجم با ویرایش‌های بیشتری مشارکت کرده باشد، نامش بزرگتر دیده می‌شود.\nرنگ زیرخط نشان‌دهندهٔ تازگی فعالیت مترجم در اینجا است.",
"supportedlanguages-colorlegend": "توضیح برای رنگ: آخرین ترجمه در $1 روز پیش.",
- "supportedlanguages-translators": "{{PLURAL:$2|مترجم|مترجمان}}: $1",
+ "supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|مترجم}}|مترجمان}}: $1",
"supportedlanguages-recenttranslations": "ترجمه‌های اخیر",
"supportedlanguages-count": "در مجموع $1 {{PLURAL:$1|زبان|زبان}}.",
"supportedlanguages-activity": "$1: $2 {{PLURAL:$2|ویرایش|ویرایش}} - آخرین ویرایش $3 {{PLURAL:$3|روز|روز}} قبل",
+ "abusefilter-edit-builder-vars-translate-source-text": "متن مبدأ واحد ترجمه",
"translate-save": "ذخیره ($1)",
"translate-jssti-add": "افزودن به فهرست",
"managemessagegroups": "مدیریت گروه‌های پیغام",
@@ -206,7 +217,7 @@
"translate-smg-nochanges": "هیچ تغییری برای پردازش وجود ندارد.",
"translate-smg-submit": "ارسال تغییرات برای پردازش",
"translate-smg-submitted": "تعریف پیغام به روز شده است. تغییرات در پشت صحنه در حال پردازش هستند.",
- "translate-smg-more": "تغییراتی یبشتر در فرآیند پس از ارسال این تغییرات خواهد بود.",
+ "translate-smg-more": "پس از ارسال این تغییرات تغییرات بیشتری برای پروسه وجود خواهند داشت.",
"translate-smg-left": "محتوای پیغام در ویکی",
"translate-smg-right": "تغییرات ورودی",
"translate-manage-import-diff": "پیغام $1 | اقدام: $2",
@@ -222,16 +233,15 @@
"translate-manage-toolong": "بیشینهٔ زمان پردازش که $1 {{PLURAL:$1|ثانیه}} است سپری شد.\nلطفاً فرم را دوباره ارسال کنید تا پردازش ادامه پیدا کند.",
"translate-manage-import-summary": "درون‌ریزی یک نسخهٔ جدید از منبع خارجی",
"translate-manage-conflict-summary": "درون‌ریزی یک نسخهٔ جدید از منبع خارجی.\nلطفاً بررسی کنید.",
- "translate-manage-fuzzy-summary": "تعریف پیغام تغییر کرده‌است",
"translate-manage-submit": "اجرا",
- "translate-manage-intro-other": "پایین فهرستی تغییرات ترجمه در زبان $1 است.\nلطفاً این تغییرات را بازبینی کرده و عملی که می‌خواهد برای هر به‌روزرسانی انجام دهید را انتخاب کنید.\nاگر شما می‌خواهید تغییرات را نادیده بگیرید، این عمل موقت خواهد بود.",
- "translate-manage-import-ok": "واردشده: $1",
- "translate-manage-import-done": "وارد کردن تکمیل شد!",
+ "translate-manage-intro-other": "فهرستی تغییرات ترجمه در زبان $1 در پایین قرار دارد.\nلطفاً این تغییرات را بازبینی کرده و عملی که می‌خواهید برای هر به‌روزرسانی انجام دهید را انتخاب کنید.\nاگر انتخاب کنید که تغییرات را نادیده بگیرید، این عمل موقت خواهد بود.",
+ "translate-manage-import-ok": "درون‌ریزی‌شده: $1",
+ "translate-manage-import-done": "درون‌ریزی تکمیل شد!",
"importtranslations": "درون‌ریزی ترجمه‌ها",
"translate-import-from-local": "بارگذاری پرونده محلی:",
- "translate-import-load": "دریافت پرونده",
+ "translate-import-load": "بارگیری پرونده",
"translate-import-err-dl-failed": "ناتوان از دریافت پرونده:\n$1",
- "translate-import-err-ul-failed": "بارگذاری پرونده موفق نبود.",
+ "translate-import-err-ul-failed": "بارگذاری پرونده شکست خورد",
"translate-import-err-invalid-title": "نام پروندهٔ داده شده <nowiki>$1</nowiki> نامعتبر است.",
"translate-import-err-no-such-file": "پرونده <nowiki>$1</nowiki> وجود ندارد یا به طور محلی بارگذاری نشده است.",
"translate-import-err-stale-group": "گروه پیغامی که این پرونده به آن تعلق دارد وجود ندارد.",
@@ -240,9 +250,7 @@
"translate-js-summary": "خلاصه:",
"translate-js-save": "ذخیره",
"translate-js-next": "ذخیره و بازکردن بعدی",
- "translate-js-nonext": "این آخرین پیغام این صفحه بود.",
"translate-js-skip": "پرش به بعدی",
- "translate-js-save-failed": "ذخیره نشد. لطفاً این خطا گزارش کنید.",
"translate-js-history": "تاریخچهٔ ترجمه",
"translate-js-support": "پرسش سؤال",
"translate-js-support-title": "اگر اطلاعات کافی برای ترجمهٔ درست این پیغام موجود نیست، سوال بپرسید.",
@@ -259,21 +267,9 @@
"translate-documentation-language": "مستندات پیام",
"translate-searchprofile": "ترجمه‌ها",
"translate-searchprofile-tooltip": "جستجو از تمامی ترجمه‌ها",
+ "translate-searchprofile-note": "گزینه‌های بیشتر جستجو از طریق [$1 جستجوی ترجمه] قابل دسترسی هستند.",
"translate-search-languagefilter": "پالایش بر اساس زبان:",
"translate-search-nofilter": "بدون پالایش",
- "translate-messagereview-submit": "نشانه‌گذاری به عنوان بازبینی‌شده",
- "translate-messagereview-progress": "در حال نشانه‌گذاری به عنوان بازبینی‌شده...",
- "translate-messagereview-failure": "نشانه‌گذاری به عنوان بازبینی‌شده نافرجام ماند: $1",
- "translate-messagereview-done": "بازبینی‌شده",
- "translate-messagereview-reviews": "بازبینی‌شده بدست {{PLURAL:$1|یک کاربر|$1 کاربر}}",
- "translate-messagereview-reviewswithyou": "بازبینی به دست {{PLURAL:$1|یک کاربر|$1 کاربر از جمله شما}}",
- "api-error-invalidrevision": "ترجمه یافت نشد",
- "api-error-unknownmessage": "پیغام یافت نشد",
- "api-error-fuzzymessage": "ترجمه برچسب ابهام دارد",
- "api-error-owntranslation": "شما نمی‌توانید ترجمه‌های خودتان را به عنوان بازبینی‌شده نشانه‌گذاری کنید",
- "translate-messagereview-no-fuzzy": "ترجمه‌های فازی را نمی‌توان به عنوان بازبینی‌شده نشانه‌گذاری کرد.",
- "translate-messagereview-no-own": "شما نمی‌توانید ترجمه‌های خودتان را به عنوان بازبینی‌شده نشانه‌گذاری کنید.",
- "translate-messagereview-doit": "این ترجمه را به عنوان بازبینی‌شده نشانه‌گذاری کنید.",
"log-name-translationreview": "سیاهه بازبینی ترجمه",
"log-description-translationreview": "سیاههٔ تمام بازبینی‌های ترجمه و گروه‌های پیغام",
"logentry-translationreview-message": "$1 ترجمهٔ $3 را {{GENDER:$2|بازبینی کرد}}",
@@ -282,14 +278,11 @@
"group-translate-sandboxed-member": "{{GENDER:$1|مترجم تأییدنشده}}",
"right-translate-sandboxmanage": "مدیریت صفحهٔ تمرین کاربران",
"action-translate-sandboxmanage": "مدیریت صفحهٔ تمرین کاربران",
- "right-translate-sandboxaction": "اجرای اعمال فهرست سفید شده برای کاربران آزمایشی",
- "action-translate-sandboxaction": "اجرای اعمال فهرست سفید شده برای کاربران آزمایشی",
+ "right-translate-sandboxaction": "اجرای اعمالی که برای کاربران آزمایشی در فهرست سفید هستند",
+ "action-translate-sandboxaction": "اجرای اعمالی که برای کاربران آزمایشی در فهرست سفید هستند",
"translate-workflow-state-": "(تنظیم‌نشده)",
"translate-workflowstatus": "وضعیت: $1",
- "translate-workflow-set-do": "تنظیم کن",
"translate-workflow-set-doing": "در حال تنظیم کردن ...",
- "translate-workflow-set-done": "تنظیم شد!",
- "translate-workflow-set-error-alreadyset": "وضعیت درخواست شده با وضعیت فعلی یکسان است.",
"translate-workflow-autocreated-summary": "ایجاد خودکار صفحه برای وضعیت گردش کار $1",
"translate-stats-workflow": "وضعیت",
"translate-workflowgroup-label": "وضعیت گردش کار",
@@ -298,12 +291,7 @@
"translate-dynagroup-recent-desc": "این گروه از پیام‌ها تمام ترجمه‌های اخیر در این زبان را نمایش می‌دهد.\nاین فهرست به‌ویژه برای کارهای بازبینی کاربرد دارد.",
"translate-dynagroup-additions-label": "اخیراً اضافه‌شده",
"translate-dynagroup-additions-desc": "این گروه پیامی، پیام‌های تازه و تغییریافته را نمایش می‌دهد.",
- "translate-dynagroup-by": "ترجمه‌شده توسط {{GENDER:$1|$1}}",
- "translate-dynagroup-byc": "ترجمه‌شده توسط {{GENDER:$1|$1}} ($2)",
- "translate-dynagroup-last": "آخرین تغییر توسط {{GENDER:$1|$1}}",
- "translate-dynagroup-lastc": "آخرین تغییر توسط {{GENDER:$1|$1}} ($2)",
- "translate-gethelp": "راهنما",
- "translate-msggroupselector-projects": "گروه پیام",
+ "translate-msggroupselector-projects": "گروه پیغام",
"translate-msggroupselector-search-placeholder": "گروه‌های جستجو",
"translate-msggroupselector-search-all": "همه",
"translate-msggroupselector-search-recent": "اخیر",
@@ -321,32 +309,35 @@
"tux-status-translated": "ترجمه‌شده",
"tux-status-saving": "در حال ذخیره‌سازی...",
"tux-status-unsaved": "ذخیره‌نشده",
+ "tux-save-unknown-error": "خطای ناشناخته رخ داد.",
"tux-editor-placeholder": "ترجمهٔ شما",
+ "tux-editor-editsummary-placeholder": "خلاصهٔ اختیاری",
"tux-editor-paste-original-button-label": "چسباندن متن مبدأ",
"tux-editor-discard-changes-button-label": "دور ریختن تغییرات",
"tux-editor-save-button-label": "ذخیره‌سازی ترجمه",
"tux-editor-skip-button-label": "پرش به بعدی",
"tux-editor-cancel-button-label": "لغو",
"tux-editor-confirm-button-label": "تأیید ترجمه",
- "tux-editor-shortcut-info": "برای ذخیره‌ «$1» یا برای پرش به پیام بعدی «$2» یا برای دیگر میانبرها $3 را فشار دهید.",
+ "tux-editor-proofread-button-label": "علامت‌گذاری به عنوان بررسی‌شده",
+ "tux-editor-shortcut-info": "برای ذخیره‌ «$1»، برای پرش به پیام بعدی «$2»، برای ارائه کردن خلاصه «$4» و برای دیگر میانبرها «$3» را فشار دهید.",
"tux-editor-edit-desc": "ذخیره مستندات",
"tux-editor-add-desc": "افزودن مستندات",
"tux-editor-suggestions-title": "پیشنهادها",
"tux-editor-in-other-languages": "به زبان‌های دیگر",
"tux-editor-need-more-help": "راهنمایی بیشتر نیاز دارید؟",
"tux-editor-ask-help": "درخواست برای اطلاعات بیشتر",
- "tux-editor-tm-match": "$1% مطابقت",
+ "tux-editor-tm-match": "$1٪ مطابقت",
"tux-warnings-more": "{{PLURAL:$1|$1 مورد دیگر}}",
"tux-warnings-hide": "نهفتن",
"tux-editor-save-failed": "ذخیره‌سازی ترجمه نافرجام ماند:$1",
"tux-editor-n-uses": "$1 بار استفاده شده",
"tux-editor-message-desc-more": "مشاهدهٔ بیشتر",
"tux-editor-message-desc-less": "مشاهدهٔ کمتر",
- "tux-editor-clear-translated": "نهفتن ترجمه‌شده‌ها",
+ "tux-editor-clear-translated": "پنهان کردن ترجمه‌شده‌ها",
"tux-editor-proofreading-mode": "بازبینی",
"tux-editor-translate-mode": "فهرست",
- "tux-editor-proofreading-hide-own-translations": "عدم نمایش ترجمه شما",
- "tux-editor-proofreading-show-own-translations": "نمایش ترجمه شما",
+ "tux-editor-proofreading-hide-own-translations": "پنهان کردن ترجمه‌های شما",
+ "tux-editor-proofreading-show-own-translations": "نمایش ترجمه‌های شما",
"tux-proofread-action-tooltip": "نشانه‌گذاری به عنوان ترجمه‌شده",
"tux-proofread-edit-label": "ویرایش",
"tux-editor-page-mode": "صفحه",
@@ -356,22 +347,22 @@
"tux-editor-doc-editor-save": "ذخیره مستندات",
"tux-editor-doc-editor-cancel": "انصراف",
"tux-messagetable-more-messages": "$1 {{PLURAL:$1|پیام}} بیشتر",
- "tux-messagetable-loading-messages": "نمایش $1 {{PLURAL:$1|پیام|پیام}}.",
+ "tux-messagetable-loading-messages": "نمایش {{PLURAL:$1|پیام|پیام‌ها}}...",
"tux-message-filter-placeholder": "پالایش فهرست",
"tux-message-filter-result": "$1 {{PLURAL:$1|نتیجه|نتیجه}} برای «$2» یافته شد.",
"tux-message-filter-advanced-button": "جستجوی پیشرفته",
- "tux-message-filter-optional-messages-label": "پیام‌های اختیاری",
+ "tux-message-filter-optional-messages-label": "پیغام‌های اختیاری",
"tux-proofread-translated-by-self": "ترجمه‌شده توسط شما",
- "tux-empty-list-all": "این گروه پیام خالی است",
- "tux-empty-list-all-guide": "یک گروه پیام متفاوت برای ترجمه انتخاب کنید",
- "tux-translate-page-no-such-group": "<strong>گروه نشان داده‌شده وجود ندارد.</strong> گروه پیامی دیگری را انتخاب کنید.",
- "tux-empty-list-translated": "بدون پیام ترجمه‌شده",
+ "tux-empty-list-all": "این گروه پیغام خالی است",
+ "tux-empty-list-all-guide": "یک گروه پیغام متفاوت برای ترجمه انتخاب کنید",
+ "tux-translate-page-no-such-group": "<strong>گروه مشخص‌شده وجود ندارد.</strong> گروه پیغام دیگری را انتخاب کنید.",
+ "tux-empty-list-translated": "بدون پیغام ترجمه‌شده",
"tux-empty-list-translated-guide": "شما می‌توانید در ترجمه کمک کنید",
"tux-empty-list-translated-action": "ترجمه",
- "tux-empty-no-messages-to-display": "پیامی برای نمایش نیست",
- "tux-empty-there-are-optional": "پیام‌های اختیاری‌ای هسند که در فهرست نمایش داده نشده‌اند",
- "tux-empty-show-optional-messages": "نمایش پیام‌های اختیاری",
- "tux-empty-no-outdated-messages": "پیام تاریخ‌گذشته‌ای نیست",
+ "tux-empty-no-messages-to-display": "پیغامی برای نمایش وجود ندارد.",
+ "tux-empty-there-are-optional": "پیغام‌هایی اختیاری وجود دارند که در فهرست نمایش داده نشده‌اند",
+ "tux-empty-show-optional-messages": "نمایش پیغام‌های اختیاری",
+ "tux-empty-no-outdated-messages": "پیغام تاریخ‌گذشته‌ای نیست",
"tux-empty-nothing-to-proofread": "چیزی برای بازبینی وجود ندارد",
"tux-empty-you-can-help-providing": "شما می‌توانید با ارائهٔ ترجمه‌های تازه کمک کنید",
"tux-empty-nothing-new-to-proofread": "چیز تازه‌ای برای بازبینی وجود ندارد",
@@ -383,15 +374,18 @@
"tux-editor-close-tooltip": "بستن",
"tux-editor-expand-tooltip": "گسترش",
"tux-editor-collapse-tooltip": "نهفتن",
+ "tux-editor-message-tools-show-editor": "نمایش در ویرایشگر ویکی",
"tux-editor-message-tools-history": "تاریخچه",
"tux-editor-message-tools-delete": "حذف",
"tux-editor-message-tools-translations": "همهٔ ترجمه‌ها",
+ "tux-editor-message-tools-linktothis": "پیوند به این پیام",
"tux-editor-loading": "در حال بارگیری...",
"translate-search-more-languages-info": "$1 {{PLURAL:$1|زبان}} بیشتر",
- "translate-statsbar-tooltip": "$1% ترجمه‌شده، $2% بازبینی‌شده",
- "translate-statsbar-tooltip-with-fuzzy": "$1% ترجمه‌شده، $2% بازبینی‌شده، $3% تاریخ‌گذشته",
+ "translate-statsbar-tooltip": "$1٪ ترجمه‌شده، ٪$2 بازبینی‌شده",
+ "translate-statsbar-tooltip-with-fuzzy": "$1٪ ترجمه‌شده، ٪$2 بازبینی‌شده، ٪$3 تاریخ‌گذشته",
"translate-search-more-groups-info": "$1 {{PLURAL:$1|گروه|گروه}} دیگر",
- "translate-ulsdep-title": "تنظیم خطا",
- "translate-ulsdep-body": "ترجمهٔ افزونه به [https://www.mediawiki.org/wiki/Extension:UniversalLanguageSelector افزونهٔ انتخاب زبان جهانی] بستگی دارد.",
- "tux-session-expired": "شما دیگر داخل نیستید. خواهشمند است در یک سربرگ جدا وارد شوید. راه دیگر، یک نسخه از ترجمه‌های ذخیره‌نشده تهیه کنید، وارد شوید و به این صفحه بازگردید."
+ "translate-ulsdep-title": "خطای تنظیمات",
+ "translate-ulsdep-body": "افزونهٔ ترجمه به [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector افزونهٔ انتخاب زبان جهانی] وابستگی دارد.",
+ "tux-session-expired": "شما دیگر داخل سامانه نیستید. لطفاً در یک زبانهٔ دیگر به سامانه وارد شوید. یا این که یک نسخه از ترجمه‌های ذخیره‌نشده تهیه کنید، به سامانه وارد شوید، به این صفحه بازگردید و ترجمه‌های خود را دوباره وارد کنید.",
+ "tux-nojs": "این ابزار بدون جاوااسکریپت کار نمی‌کند. جاوااسکریپت غیرفعال است، از کار افتاده است، یا توسط این مرورگر پشتیبانی نمی‌شود."
}
diff --git a/MLEB/Translate/i18n/core/fi.json b/MLEB/Translate/i18n/core/fi.json
index aa4b8c78..4a3aecc5 100644
--- a/MLEB/Translate/i18n/core/fi.json
+++ b/MLEB/Translate/i18n/core/fi.json
@@ -16,16 +16,14 @@
"VezonThunder",
"Vililikku",
"ZeiP",
- "Pxos"
+ "Pxos",
+ "Pyscowicz"
]
},
"translate": "Käännä",
- "translate-desc": "[[Special:Translate|Toimintosivu]], jolla voi kääntää MediaWikiä ja muutakin.",
- "translate-taskui-view": "Näytä kaikki viestit",
- "translate-taskui-untranslated": "Näytä kääntämättömät viestit",
- "translate-taskui-optional": "Näytä valinnaiset viestit",
- "translate-taskui-acceptqueue": "Vain viestit, jotka voin merkitä tarkastetuksi",
- "translate-taskui-reviewall": "Kaikkien käännösten tarkistus",
+ "translate-extensionname": "Käännä",
+ "translate-desc": "[[Special:Translate|Toimintosivu]] MediaWikin kääntämiseen ja muutakin.",
+ "translate-fuzzybot-desc": "Tämä on erityinen järjestelmätili jota MediaWikin [https://www.mediawiki.org/wiki/Extension:Translate Translate-laajennus] käyttää käännösten ylläpitoon.\nTämä tili on osa MediaWiki-ohjelmistoa ja sitä ei omista mikään käyttäjä.",
"translate-taskui-export-to-file": "Vie perusmuodossa",
"translate-taskui-export-as-po": "Vie off-line kääntämiseen soveltuvassa muodossa",
"translate-taction-translate": "Käännä",
@@ -54,7 +52,6 @@
"translate-page-description-hasoptional": "Tässä viestiryhmässä on valinnaisia viestejä.\nValinnaiset viestit on käännettävä vain kielille, joilla on erikoisvaatimuksia kuten välilyöntien puuttuminen tai erisnimien translitterointi. $1",
"translate-page-description-hasoptional-open": "Näytä valinnaiset viestit.",
"translate-page-edit": "muokkaa",
- "translate-ext-url": "<hr />Verkkosivu: $1",
"translate-optional": "(valinnainen)",
"translate-ignored": "(ei-käännettävä)",
"translate-edit-title": "Muokkaa sivua $1",
@@ -64,14 +61,17 @@
"translate-edit-no-information": "<em>Tätä viestiä ei ole dokumentoitu.\nJos tiedät missä tai miten tätä viestiä käytetään, voit auttaa muita kääntäjiä lisäämällä kommentteja tähän viestiin.</em>",
"translate-edit-information": "Tietoja viestistä ($1)",
"translate-edit-in-other-languages": "Viesti muilla kielillä",
- "translate-edit-committed": "Nykyinen ohjelmiston käyttämä käännös",
"translate-edit-warnings": "Varoitukset virheellisestä käännöksestä",
- "translate-edit-tmsugs": "Ehdotukset käännösmuistista",
"translate-edit-tmmatch-source": "Käännöksen lähdeteksti: $1",
"translate-edit-tmmatch": "Vastaavuus $1%",
"translate-use-suggestion": "Korvaa nykyinen käännös tällä ehdotuksella.",
"translate-edit-nopermission": "Viestien kääntämiseen tarvitaan käännösoikeudet.",
"translate-edit-askpermission": "Hanki lupa",
+ "exporttranslations": "Vie käännöksiä",
+ "translate-export-form-format": "Muoto",
+ "translate-export-invalid-format": "Määritä kelvollinen muoto.",
+ "translate-export-not-supported": "Käännösten vientiä ei tueta.",
+ "translate-export-format-notsupported": "Määritelty vientimuoto ei tue viestiryhmää.",
"translate-magic-pagename": "Laajennettu MediaWikin kääntäminen",
"translate-magic-help": "Voit kääntää toimintosivujen vaihtoehtoisia nimiä, taikasanoja ja nimiavaruuksien nimiä.\n\nToimintosivujen vaihtoehtoisilla nimillä ja taikasanoilla voi olla useita käännöksiä.\nKäännökset erotetaan pilkulla (,).\nNimiavaruuksilla voi olla vain yksi käännös.\n\nNimiavaruuksien käännöksissä <code>$1 talk</code> on erikoistapaus. <code>$1</code> korvataan sivuston nimellä (esimerkiksi <code>{{ns:project_talk}}</code>).\nJos kielessäsi on mahdotonta muotoilla oikeaa käännöstä ilman sivuston nimen taivuttamista, kerro siitä sivulla [[Support]].\n\nSinun tulee olla kääntäjä, jotta voit tallentaa muutokset.\nMuutoksia ei tallenneta, ennen kuin painat Tallenna-painiketta.",
"translate-magic-module": "Moduuli:",
@@ -88,9 +88,9 @@
"translate-magic-special": "Toimintosivujen nimet",
"translate-magic-words": "Taikasanat",
"translate-magic-namespace": "Nimiavaruuksien nimet",
- "translate-magic-notsaved": "Muokkaustasi ei tallennettu.",
+ "translate-magic-notsaved": "Muokkaustasi ei tallennettu!",
"translate-magic-errors": "Korjaa {{PLURAL:$1|seuraava virhe|seuraavat virheet}} käännöksissä:",
- "translate-magic-saved": "Muutoksesi tallennettiin onnistuneesti.",
+ "translate-magic-saved": "Muutoksesi on tallennettu.",
"translate-checks-parameters": "{{PLURAL:$2|Seuraavaa parametria|Seuraavia parametreja}} ei käytetä:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-parameters-unknown": "{{PLURAL:$2|Seuraava parametri on tuntematon|Seuraavat parametrit ovat tuntemattomia}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-balance": "Pariton määrä {{PLURAL:$2|sulkeita}}:\n<strong><nowiki>$1</nowiki></strong>",
@@ -117,7 +117,16 @@
"right-translate-import": "Tuoda muilla työkaluilla tehtyjä käännöksiä",
"action-translate-import": "tuoda offline-käännöksiä",
"right-translate-messagereview": "Hyväksyä käännöksiä",
+ "action-translate-messagereview": "tarkastella käännöksiä",
"right-translate-groupreview": "Muuttaa viestiryhmien tilaa",
+ "action-translate-groupreview": "muuttaa viestiryhmien tilaa",
+ "translate-rcfilters-translations": "Käännökset",
+ "translate-rcfilters-translations-only-label": "Käännökset",
+ "translate-rcfilters-translations-only-desc": "Muutokset käännettyihin sivuihin.",
+ "translate-rcfilters-translations-filter-label": "Ei käännöksiä",
+ "translate-rcfilters-translations-filter-desc": "Kaikki muutokset jotka eivät ole käännöksiä.",
+ "translate-rcfilters-translations-site-label": "Sivuston viestit",
+ "translate-rcfilters-translations-site-desc": "Muokkaukset sivuston viesteihin MediaWiki-nimiavaruudessa.",
"translate-rc-translation-filter": "Käännösten suodatus",
"translate-rc-translation-filter-no": "älä suodata",
"translate-rc-translation-filter-only": "näytä vain käännökset",
@@ -149,7 +158,6 @@
"translate-statsf-language": "Pilkuin erotettu lista kielikoodeista",
"translate-statsf-group": "Pilkuin erotettu lista ryhmäkoodeista",
"translate-statsf-submit": "Esikatselu",
- "translate-tag-category": "Käännettävät sivut",
"translate-tag-page-desc": "Wikisivun [[$2|$1]] käännös kielestä $3 ($4).",
"translate-sidebar-alltrans": "Muilla kielillä",
"translations": "Kaikki käännökset",
@@ -191,7 +199,7 @@
"translate-mgs-noempty": "Älä näytä kieliä, joiden käännöstä ei ole aloitettu",
"translate-mgs-submit": "Näytä tilastot",
"translate-mgs-column-language": "Kieli",
- "translate-mgs-totals": "Kaikki kielet yhdessä",
+ "translate-mgs-totals": "Kaikki {{PLURAL:$1|kieli|kielet}} yhdessä",
"translate-mgs-invalid-group": "Määritettyä ryhmää $1 ei ole.",
"translate-mgs-nothing": "Pyydetyille tilastoille ei löydy tuloksia.",
"supportedlanguages": "Tuetut kielet",
@@ -201,6 +209,7 @@
"supportedlanguages-recenttranslations": "tuoreet käännökset",
"supportedlanguages-count": "$1 {{PLURAL:$1|kieli|kieltä}} yhteensä.",
"supportedlanguages-activity": "$1: $2 {{PLURAL:$2|muokkaus|muokkausta}} - viimeinen muokkaus $3 {{PLURAL:$3|päivä|päivää}} sitten",
+ "abusefilter-edit-builder-vars-translate-source-text": "Käännösyksikön lähdeteksti",
"translate-save": "Tallenna ($1)",
"translate-jssti-add": "Lisää listaan",
"managemessagegroups": "Viestiryhmien hallinta",
@@ -224,7 +233,6 @@
"translate-manage-toolong": "$1 {{PLURAL:$1|sekunnin}} enimmäiskäsittelyaika ylittyi.\nJatka käsittelyä lähettämällä lomake uudelleen.",
"translate-manage-import-summary": "Tuodaan uusi versio ulkoisesta lähteestä",
"translate-manage-conflict-summary": "Tuodaan uusi versio ulkoisesta lähteestä.\nTarkistathan.",
- "translate-manage-fuzzy-summary": "Viestin määritelmä on muuttunut",
"translate-manage-submit": "Suorita",
"translate-manage-intro-other": "Alla on luettelo kielen $1 käännösmuutoksista.\nTarkista muutokset ja valitse toiminto, jonka haluat tehdä jokaiselle käännökselle.\nJos valitset muutosten ohittamisen, toimintoa ei tallenneta.",
"translate-manage-import-ok": "Tuotu: $1",
@@ -242,9 +250,7 @@
"translate-js-summary": "Yhteenveto:",
"translate-js-save": "Tallenna",
"translate-js-next": "Tallenna ja avaa seuraava",
- "translate-js-nonext": "Tämä oli tämän sivun viimeinen viesti.",
"translate-js-skip": "Hyppää seuraavaan",
- "translate-js-save-failed": "Tallentaminen epäonnistui. Ilmoita tästä virheestä.",
"translate-js-history": "Käännöshistoria",
"translate-js-support": "Kysy kysymys",
"translate-js-support-title": "Pyydä apua, jos olemassa olevien tietojen avulla viestiä ei voi kääntää oikein.",
@@ -261,21 +267,9 @@
"translate-documentation-language": "käännösohjeet",
"translate-searchprofile": "Käännökset",
"translate-searchprofile-tooltip": "Hae kaikista käännöksistä",
+ "translate-searchprofile-note": "Lisää hakuvaihtoehtoja on saatavilla sivulla [$1 translation search].",
"translate-search-languagefilter": "Vain kielellä",
"translate-search-nofilter": "Ei suodatusta",
- "translate-messagereview-submit": "Merkitse tarkastetuksi",
- "translate-messagereview-progress": "Merkitään tarkastetuksi…",
- "translate-messagereview-failure": "Tarkastetuksi merkitseminen epäonnistui: $1",
- "translate-messagereview-done": "Tarkastettu",
- "translate-messagereview-reviews": "{{PLURAL:$1|Yhden|$1}} käyttäjän tarkastama",
- "translate-messagereview-reviewswithyou": "{{PLURAL:$1|Sinun tarkastama|$1 käyttäjän tarkastama sinut mukaan lukien}}",
- "api-error-invalidrevision": "Käännöstä ei löytynyt",
- "api-error-unknownmessage": "Viestiä ei löytynyt",
- "api-error-fuzzymessage": "Käännös on merkitty sumeaksi",
- "api-error-owntranslation": "Et voi hyväksyä omia käännöksiäsi",
- "translate-messagereview-no-fuzzy": "Sumeita käännöksiä ei voi hyväksyä.",
- "translate-messagereview-no-own": "Et voi merkitä omia käännöksiäsi tarkastetuksi.",
- "translate-messagereview-doit": "Merkitse tämä käännös tarkastetuksi.",
"log-name-translationreview": "Arvioitujen käännösten loki",
"log-description-translationreview": "Kaikkien käännösten ja viestiryhmien arviointiloki.",
"logentry-translationreview-message": "$1 {{GENDER:$2|tarkasti}} käännöksen $3",
@@ -288,10 +282,7 @@
"action-translate-sandboxaction": "suorittaa toimintoja, jotka on sallittu hyväksymättömille kääntäjille",
"translate-workflow-state-": "(ei asetettu)",
"translate-workflowstatus": "Tila: $1",
- "translate-workflow-set-do": "Aseta",
"translate-workflow-set-doing": "Asetetaan...",
- "translate-workflow-set-done": "Asetettu",
- "translate-workflow-set-error-alreadyset": "Uusi tila on sama kuin nykyinen tila.",
"translate-workflow-autocreated-summary": "Sivun automaattinen luonti viestiryhmätilan $1 käännökselle",
"translate-stats-workflow": "Tila",
"translate-workflowgroup-label": "Viestiryhmätila",
@@ -300,11 +291,6 @@
"translate-dynagroup-recent-desc": "Tämä viestiryhmä näyttää kaikki tuoreet käännökset.\nSoveltuu hyvin käännösten tarkastamiseen.",
"translate-dynagroup-additions-label": "Tuoreet lisäykset",
"translate-dynagroup-additions-desc": "Tämä viestiryhmä näyttää uudet ja muuttuneet viestit.",
- "translate-dynagroup-by": "Käännöksen teki {{GENDER:$1|$1}}",
- "translate-dynagroup-byc": "Käännöksen teki {{GENDER:$1|$1}} ($2)",
- "translate-dynagroup-last": "Viimeisimmän muutoksen teki {{GENDER:$1|$1}}",
- "translate-dynagroup-lastc": "Viimeisimmän muutoksen teki {{GENDER:$1|$1}} ($2)",
- "translate-gethelp": "Ohje",
"translate-msggroupselector-projects": "Viestiryhmä",
"translate-msggroupselector-search-placeholder": "Hae ryhmiä",
"translate-msggroupselector-search-all": "Kaikki",
@@ -323,14 +309,17 @@
"tux-status-translated": "Käännetty",
"tux-status-saving": "Tallennetaan...",
"tux-status-unsaved": "Tallentamaton",
+ "tux-save-unknown-error": "Tapahtui tuntematon virhe.",
"tux-editor-placeholder": "Käännös",
+ "tux-editor-editsummary-placeholder": "Valinnainen yhteenveto",
"tux-editor-paste-original-button-label": "Liitä lähdeteksti",
"tux-editor-discard-changes-button-label": "Hylkää muutokset",
"tux-editor-save-button-label": "Tallenna käännös",
"tux-editor-skip-button-label": "Hyppää seuraavaan",
"tux-editor-cancel-button-label": "Peru",
"tux-editor-confirm-button-label": "Hyväksy käännös",
- "tux-editor-shortcut-info": "$1 tallentaa, $2 siirty seuraavaan ja $3 näyttää muut näppäinyhdistelmät.",
+ "tux-editor-proofread-button-label": "Merkitse tarkastetuksi",
+ "tux-editor-shortcut-info": "$1 tallentaa, $2 siirty seuraavaan, $4 siirtyy yhteenvetoon ja $3 näyttää muut näppäinyhdistelmät.",
"tux-editor-edit-desc": "Muokkaa ohjeistusta",
"tux-editor-add-desc": "Lisää ohjeistus",
"tux-editor-suggestions-title": "Ehdotukset",
@@ -385,9 +374,11 @@
"tux-editor-close-tooltip": "Sulje",
"tux-editor-expand-tooltip": "Suurenna",
"tux-editor-collapse-tooltip": "Pienennä",
+ "tux-editor-message-tools-show-editor": "Näytä wikimuokkaimessa",
"tux-editor-message-tools-history": "Historia",
"tux-editor-message-tools-delete": "Poista",
"tux-editor-message-tools-translations": "Kaikki käännökset",
+ "tux-editor-message-tools-linktothis": "Linkki tähän viestiin",
"tux-editor-loading": "Ladataan...",
"translate-search-more-languages-info": "$1 {{PLURAL:$1|kieli|kieltä}} lisää",
"translate-statsbar-tooltip": "$1 % käännetty, $2 % tarkastettu",
@@ -395,5 +386,6 @@
"translate-search-more-groups-info": "$1 {{PLURAL:$1|muu ryhmä|muuta ryhmää}}",
"translate-ulsdep-title": "Asennusvirhe",
"translate-ulsdep-body": "Translate-laajennos vaati [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector Universal Language Selector -laajennoksen].",
- "tux-session-expired": "Et ole enää kirjautunut sisään. Kirjaudu sisään toisessä välilehdessä. Vaihtoehtoisesti voit kopioida tallentamattomat käännökset, kirjautua sisään ja palata tälle sivulle."
+ "tux-session-expired": "Et ole enää kirjautunut sisään. Kirjaudu sisään toisessä välilehdessä. Vaihtoehtoisesti voit kopioida tallentamattomat käännökset, kirjautua sisään ja palata tälle sivulle tallentamaan käännökset uudestaan.",
+ "tux-nojs": "Tämä työkalu ei toimi ilman JavaScriptiä. JavaScript on poistettu käytöstä, se ei toimi, tai tätä selainta ei tueta."
}
diff --git a/MLEB/Translate/i18n/core/fo.json b/MLEB/Translate/i18n/core/fo.json
index e364ec0a..1dd0d83a 100644
--- a/MLEB/Translate/i18n/core/fo.json
+++ b/MLEB/Translate/i18n/core/fo.json
@@ -6,11 +6,6 @@
},
"translate": "Týð",
"translate-desc": "[[Special:Translate|Serstøk síða]] til týðing av MediaWiki og øðrum",
- "translate-taskui-view": "Vís øll boð",
- "translate-taskui-untranslated": "Vís ótýdd boð",
- "translate-taskui-optional": "Vís valfrí boð",
- "translate-taskui-acceptqueue": "Bert boð ið eg kann rættlesa",
- "translate-taskui-reviewall": "Rættles allar týðingar",
"translate-taskui-export-as-po": "Útflyt til offline týðing",
"translate-taction-translate": "Týð",
"translate-taction-proofread": "Les rættlestur",
@@ -38,7 +33,6 @@
"translate-page-description-hasoptional": "Hesin biðbólkur inniheldur valfrí boð.\nValfrí boð eiga bert at verða týdd, um títt mál setur serlig krøv sum til dømis ikki at brúka millumrúm ella um sernøvn vera umskrivaði. $1",
"translate-page-description-hasoptional-open": "Vís valfrí boð.",
"translate-page-edit": "rætta",
- "translate-ext-url": "<hr />Heimasíða: $1",
"translate-optional": "(valfrítt)",
"translate-ignored": "(síggj burtur frá)",
"translate-edit-title": "Rætta \"$1\"",
@@ -47,9 +41,7 @@
"translate-edit-no-information": "''Hesi boðini hava onga dokumentasjón.''\n''Um tú veitst hvar ella hvussu hesi boðini verða nýtt, so kanst tú hjálpa øðrum týðarum við at viðleggja dokumentasjón til hesi boðini.''",
"translate-edit-information": "Kunning um boð ($1)",
"translate-edit-in-other-languages": "Boðini á øðrum málum",
- "translate-edit-committed": "Verandi týðing í ritbúnaðinum",
"translate-edit-warnings": "Ávaring um ófullfíggjaðar týðingar",
- "translate-edit-tmsugs": "Uppskot frá týðingarminninum og sjálvvirkandi týðingum (maskintýðingum)",
"translate-edit-tmmatch-source": "Keldutekstur til týðingar: $1",
"translate-edit-tmmatch": "$1% samsvar",
"translate-use-suggestion": "Skift út verandi týðing við hetta uppskotið.",
@@ -125,7 +117,6 @@
"translate-statsf-language": "Komma-atskildur listi yvir málsligar kotur:",
"translate-statsf-group": "Komma-sundurskildur listi yvir bólkakotur:",
"translate-statsf-submit": "Forskoðan",
- "translate-tag-category": "Síður ið kunnu týðast",
"translate-tag-page-desc": "Týðing av wiki síðuni [[$2|$1]].",
"translate-sidebar-alltrans": "Á øðrum málum",
"translations": "Allar týðingar",
@@ -199,9 +190,7 @@
"translate-js-summary": "Samandráttur:",
"translate-js-save": "Goym",
"translate-js-next": "Goym og lat upp næsta",
- "translate-js-nonext": "Hetta var seinasta boðið á hesi síðu.",
"translate-js-skip": "Loyp um og far til næsta",
- "translate-js-save-failed": "Tað miseydnaðist at goyma. Vinarliga melda henda feilin.",
"translate-js-history": "Týðingarsøgan",
"translate-js-support": "Spyr ein spurning",
"translate-js-support-title": "Bið um hjálp um tað ikki er nokk av kunning til at týða hesi boðini rætt.",
@@ -219,19 +208,6 @@
"translate-searchprofile-tooltip": "Leita í øllum týðingum",
"translate-search-languagefilter": "Filtrera eftir máli:",
"translate-search-nofilter": "Ongin filtrering",
- "translate-messagereview-submit": "Merk sum rættlisið",
- "translate-messagereview-progress": "Markerar sum rættlisið...",
- "translate-messagereview-failure": "Tað miseydnaðist at merkja sum rættlisið: $1",
- "translate-messagereview-done": "Rættlisið",
- "translate-messagereview-reviews": "Rættlisið av {{PLURAL:$1|einum brúkara|$1 brúkarum}}",
- "translate-messagereview-reviewswithyou": "Rættlisið av {{PLURAL:$1|tær|$1 brúkarum harímillum tú}}",
- "api-error-invalidrevision": "Týðing varð ikki funnin",
- "api-error-unknownmessage": "Boðið varð ikki funnið",
- "api-error-fuzzymessage": "Týðing er merkt sum avoldað",
- "api-error-owntranslation": "Tú kanst ikki merkja tínar egnu týðingar sum rættlisnar",
- "translate-messagereview-no-fuzzy": "Avoldaðar týðingar kunnu ikki merkjast sum rættlisnar.",
- "translate-messagereview-no-own": "Tú kanst ikki merkja tínar egnu týðingar sum rættlisnar.",
- "translate-messagereview-doit": "Merk hesa týðing sum rættlisnað.",
"log-name-translationreview": "Loggur fyri týðingarrættlestur",
"logentry-translationreview-message": "$1 {{GENDER:$2|rættlæs}} týðingina $3",
"logentry-translationreview-group": "$1 {{GENDER:$2|broytti}} status fyri $4 týðingar hjá $3 frá $6 til $7",
@@ -240,10 +216,6 @@
"translate-dynagroup-recent-label": "Seinastu týðingar",
"translate-dynagroup-recent-desc": "Hesin boðbólkur vísir allar tær seinastu týðingarnar til hetta málið. Mest týðandi hjá teimum sum arbeiða við rættlestri.",
"translate-dynagroup-additions-desc": "Hesin boðbólkur vísir nýggj og broytt boð.",
- "translate-dynagroup-by": "Týtt hevur {{GENDER:$1|$1}}",
- "translate-dynagroup-byc": "Týtt hevur {{GENDER:$1|$1}} ($2)",
- "translate-dynagroup-last": "Seinasta broyting av {{GENDER:$1|$1}}",
- "translate-gethelp": "Hjálp",
"translate-msggroupselector-projects": "Boðbólkur",
"translate-msggroupselector-search-placeholder": "Leita eftir bólkum",
"translate-msggroupselector-search-all": "Alt",
diff --git a/MLEB/Translate/i18n/core/fr.json b/MLEB/Translate/i18n/core/fr.json
index b460bf1e..620a4d6b 100644
--- a/MLEB/Translate/i18n/core/fr.json
+++ b/MLEB/Translate/i18n/core/fr.json
@@ -34,16 +34,18 @@
"Zetud",
"Linedwell",
"Orikrin1998",
- "Dr Brains"
+ "Dr Brains",
+ "Wladek92",
+ "Yasten",
+ "Thibaut120094",
+ "Epok",
+ "Pols12"
]
},
"translate": "Traduire",
+ "translate-extensionname": "Traduire",
"translate-desc": "[[Special:Translate|Page spéciale]] pour traduire MediaWiki et au-delà",
- "translate-taskui-view": "Afficher tous les messages",
- "translate-taskui-untranslated": "Afficher les messages non traduits",
- "translate-taskui-optional": "Afficher les messages facultatifs",
- "translate-taskui-acceptqueue": "Uniquement les messages que je peux marquer comme relus",
- "translate-taskui-reviewall": "Revoir toutes les traductions",
+ "translate-fuzzybot-desc": "C’est un compte système spécial utilisée par l’[https://www.mediawiki.org/wiki/Extension:Translate extension Translate] de MédiaWiki utilisé pour maintenir les traductions.\nCe compte fait partie du logiciel MédiaWiki et n’appartient à aucun utilisateur.",
"translate-taskui-export-to-file": "Exporter au format natif",
"translate-taskui-export-as-po": "Exporter pour une traduction hors-ligne",
"translate-taction-translate": "Traduire",
@@ -70,29 +72,31 @@
"translate-next": "Page suivante",
"translate-prev": "Page précédente",
"translate-page-description-legend": "Informations à propos du groupe",
- "translate-page-description-hasoptional": "Ce groupe de messages contient les messages facultatifs.\nLes messages facultatifs ne devraient être traduits que quand votre langue a des exigences particulières comme ne pas utiliser d’espaces ou transformer des noms propres. $1",
+ "translate-page-description-hasoptional": "Ce groupe de messages contient des messages facultatifs.\nLes messages facultatifs ne devraient être traduits que quand votre langue a des exigences particulières comme ne pas utiliser d’espaces ou transformer des noms propres. $1",
"translate-page-description-hasoptional-open": "Afficher les messages facultatifs.",
"translate-page-edit": "modifier",
- "translate-ext-url": "<hr />Site web : $1",
"translate-optional": "(facultatif)",
"translate-ignored": "(ignoré)",
"translate-edit-title": "Modifier « $1 »",
"translate-edit-definition": "Définition du message",
"translate-edit-translation": "Traduction",
"translate-edit-contribute": "contribuer",
- "translate-edit-no-information": "<em>Ce message n’est pas documenté.\nSi vous savez où ou comment il est utilisé, vous pouvez aider les autres traducteurs en créant la documentation de ce message.</em>",
+ "translate-edit-no-information": "<em>Ce message n’est pas documenté.\nSi vous savez où ou comment il est utilisé, vous pouvez aider les autres traducteurs en créant sa documentation.</em>",
"translate-edit-information": "Informations concernant le message ($1)",
"translate-edit-in-other-languages": "Message dans d’autres langues",
- "translate-edit-committed": "Traduction actuelle dans le logiciel",
"translate-edit-warnings": "Avertissements sur les traductions incomplètes",
- "translate-edit-tmsugs": "Suggestions de la mémoire de traduction",
- "translate-edit-tmmatch-source": "Texte source de la traduction : $1",
+ "translate-edit-tmmatch-source": "Texte source de la traduction : $1",
"translate-edit-tmmatch": "$1 % de correspondance",
"translate-use-suggestion": "Remplacer la traduction actuelle par cette suggestion.",
"translate-edit-nopermission": "Vous devez obtenir les droits de traduction pour traduire des messages.",
"translate-edit-askpermission": "Obtenir la permission",
+ "exporttranslations": "Exporter des traductions",
+ "translate-export-form-format": "Format",
+ "translate-export-invalid-format": "Veuillez fournir un format valide.",
+ "translate-export-not-supported": "L’exportation de traductions n’est pas prise en charge.",
+ "translate-export-format-notsupported": "Le format d’exportation spécifié n’est pas pris en charge par le groupe de messages.",
"translate-magic-pagename": "Traduction étendue de MediaWiki",
- "translate-magic-help": "Vous pouvez traduire les alias de pages spéciales, les mots magiques et les noms des espaces de noms.\n\nLes alias de pages spéciales et les mots magiques peuvent avoir plusieurs traductions.\nLes traductions sont séparées par une virgule (,).\nLes espaces de noms ne peuvent avoir qu’une seule traduction.\n\nTraduire l’espace de noms de discussion du projet <code>$1 talk</code> peut être compliqué.\n<code>$1</code> est remplacé par le nom du site (par exemple <code>{{ns:project_talk}}</code>).\nS’il n’est pas possible d’obtenir une expression valide dans votre langue sans changer le nom du site, veuillez nous contacter sur [[Support]].\n\nVous devez appartenir au groupe des traducteurs pour enregistrer toute modification.\nLes modifications ne sont pas enregistrées tant que vous n’avez pas cliqué sur le bouton « sauvegarder » en bas.",
+ "translate-magic-help": "Vous pouvez traduire les alias de pages spéciales, les mots magiques et les noms des espaces de noms.\n\nLes alias de pages spéciales et les mots magiques peuvent avoir plusieurs traductions.\nLes traductions sont séparées par une virgule (,).\nLes espaces de noms ne peuvent avoir qu’une seule traduction.\n\nTraduire l’espace de noms de discussion du projet <code>$1 talk</code> peut être compliqué.\n<code>$1</code> est remplacé par le nom du site (par exemple <code>{{ns:project_talk}}</code>).\nS’il n’est pas possible d’obtenir une expression valide dans votre langue sans changer le nom du site, veuillez nous contacter sur [[Support|Soutien]].\n\nVous devez appartenir au groupe des traducteurs pour enregistrer toute modification.\nLes modifications ne sont pas enregistrées tant que vous n’avez pas cliqué sur le bouton « sauvegarder » en bas.",
"translate-magic-module": "Module :",
"translate-magic-submit": "Lister",
"translate-magic-cm-export": "Exporter",
@@ -107,17 +111,17 @@
"translate-magic-special": "Alias des pages spéciales",
"translate-magic-words": "Mots magiques",
"translate-magic-namespace": "Noms des espaces de noms",
- "translate-magic-notsaved": "Votre modification n’a pas été sauvegardée !",
- "translate-magic-errors": "Corrigez {{PLURAL:$1|l’erreur suivante|les erreurs suivantes}} dans les traductions :",
- "translate-magic-saved": "Votre modification a été enregistrée avec succès.",
- "translate-checks-parameters": "{{PLURAL:$2|Le paramètre suivant n’est pas utilisé|Les paramètres suivants ne sont pas utilisés}} :\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-magic-notsaved": "Votre modification n’a pas été sauvegardée !",
+ "translate-magic-errors": "Corrigez {{PLURAL:$1|l’erreur suivante|les erreurs suivantes}} dans les traductions :",
+ "translate-magic-saved": "Vos modifications ont été enregistrées.",
+ "translate-checks-parameters": "{{PLURAL:$2|Le paramètre suivant n’est pas utilisé|Les paramètres suivants ne sont pas utilisés}} :\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-parameters-unknown": "{{PLURAL:$2|Le paramètre suivant est inconnu|Les paramètres suivants sont inconnus}} :\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-balance": "Il y a un nombre impair de parenthèse{{PLURAL:$2||s}} :\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-links": "{{PLURAL:$2|Le lien suivant pose|Les $2 liens suivants posent}} problème :\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-links-missing": "{{PLURAL:$2|Le lien suivant est manquant|Les $2 liens suivants sont manquants}} :\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-xhtml": "Veuillez corriger {{PLURAL:$2|la balise suivante|les balises suivantes}} :\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-plural": "La définition utilise <nowiki>{{PLURAL:}}</nowiki> mais pas sa traduction.",
- "translate-checks-plural-forms": "<nowiki>{{PLURAL:}}</nowiki> a reçu {{PLURAL:$1|une forme|$1 formes}} mais {{PLURAL:$2|une seule est supportée|seules $2 sont supportées}} (hors les formes 0= et 1=).",
+ "translate-checks-plural-forms": "<nowiki>{{PLURAL:}}</nowiki> a reçu {{PLURAL:$1|une forme|$1 formes}} mais {{PLURAL:$2|une seule est prise|seules $2 sont prises}} en charge (hors les formes 0= et 1=).",
"translate-checks-plural-dupe": "<nowiki>{{PLURAL:}}</nowiki> a des formes dupliquées au final. <nowiki>{{PLURAL:$1|sheep|sheep}}</nowiki> devrait être écrit ainsi: <nowiki>{{PLURAL:$1|sheep}}</nowiki>.",
"translate-checks-pagename": "Espace de noms modifié depuis la définition",
"translate-checks-format": "Cette traduction ne suit pas la définition ou a une syntaxe incorrecte : $1",
@@ -135,8 +139,17 @@
"action-translate-manage": "gérer les groupes de messages",
"right-translate-import": "Importer les traductions hors ligne",
"action-translate-import": "importer les traductions hors-ligne",
- "right-translate-messagereview": "Examiner les traductions",
+ "right-translate-messagereview": "Marquer comme relues les traductions",
+ "action-translate-messagereview": "relire les traductions",
"right-translate-groupreview": "Modifier l'état de flux de travail des groupes de message",
+ "action-translate-groupreview": "modifier l'état du flux de travail pour les groupes de messages",
+ "translate-rcfilters-translations": "Traductions",
+ "translate-rcfilters-translations-only-label": "Traductions",
+ "translate-rcfilters-translations-only-desc": "Modifications apportées aux pages traduites.",
+ "translate-rcfilters-translations-filter-label": "Non traduits",
+ "translate-rcfilters-translations-filter-desc": "Toutes les modifications qui ne sont pas des traductions.",
+ "translate-rcfilters-translations-site-label": "Messages système",
+ "translate-rcfilters-translations-site-desc": "Adaptation des messages système dans l'espace de noms MediaWiki.",
"translate-rc-translation-filter": "Filtrer les traductions :",
"translate-rc-translation-filter-no": "Ne rien faire",
"translate-rc-translation-filter-only": "Afficher uniquement les traductions",
@@ -148,40 +161,39 @@
"translate-stats-registrations": "Inscriptions",
"translate-stats-reviews": "Relectures",
"translate-stats-reviewers": "Relecteurs",
- "translate-statsf-intro": "Vous pouvez générer des statistiques simples via ce formulaire.\nToutes les valeurs ont des limites supérieure et inférieure.",
+ "translate-statsf-intro": "Vous pouvez générer des statistiques simples <i>via</i> ce formulaire.\nToutes les valeurs ont des limites supérieures et inférieures.",
"translate-statsf-options": "Options du graphique",
"translate-statsf-width": "Largeur en pixels :",
- "translate-statsf-height": "Hauteur en pixels",
- "translate-statsf-days": "Date de début:",
- "translate-statsf-start": "Date de début:",
- "translate-statsf-scale": "Granularité :",
+ "translate-statsf-height": "Hauteur en pixels :",
+ "translate-statsf-days": "Durée de la période, en jours :",
+ "translate-statsf-start": "Date de début :",
+ "translate-statsf-scale": "Granularité :",
"translate-statsf-scale-months": "Mois",
"translate-statsf-scale-weeks": "Semaines",
"translate-statsf-scale-days": "Jours",
"translate-statsf-scale-hours": "Heures",
- "translate-statsf-count": "Mesure :",
+ "translate-statsf-count": "Mesure :",
"translate-statsf-count-edits": "Nombre de modifications",
"translate-statsf-count-users": "Traducteurs actifs",
"translate-statsf-count-registrations": "Nouveaux utilisateurs",
"translate-statsf-count-reviews": "Relectures de traduction",
"translate-statsf-count-reviewers": "Relecteurs",
- "translate-statsf-language": "Liste de codes de langues séparés par des virgules :",
- "translate-statsf-group": "Liste de codes de groupes séparés par des virgules :",
+ "translate-statsf-language": "Liste de codes de langues séparés par des virgules :",
+ "translate-statsf-group": "Liste de codes de groupes séparés par des virgules :",
"translate-statsf-submit": "Prévisualiser",
- "translate-tag-category": "Pages traduisibles",
"translate-tag-page-desc": "Traduction de la page wiki [[$2|$1]] depuis $3 ($4).",
"translate-sidebar-alltrans": "Dans les autres langues",
"translations": "Toutes les traductions",
"translations-summary": "Entrez un nom de message ci-dessous pour visualiser toutes les traductions disponibles.",
- "translate-translations-no-message": "« $1 » n’est pas un message traduisible",
- "translate-translations-none": "Il n’y a pas de traduction pour « $1 »",
+ "translate-translations-no-message": "« $1 » n’est pas un message traduisible.",
+ "translate-translations-none": "Il n’y a pas de traduction pour « $1 ».",
"translate-translations-count": "Il existe {{PLURAL:$1|une traduction|$1 traductions}}.",
"translate-translations-fieldset-title": "Message",
- "translate-translations-messagename": "Nom :",
- "translate-translations-project": "Projet :",
+ "translate-translations-messagename": "Nom :",
+ "translate-translations-project": "Projet :",
"translate-translations-including-no-param": "Veuillez spécifier une clé de message correcte dans le paramètre ''subpage''",
"translate-translations-history-short": "h",
- "languagestats": "Statistiques des langues",
+ "languagestats": "Statistiques de langue",
"languagestats-summary": "Cette page affiche les statistiques de traduction de tous les groupes de messages dans une langue donnée.",
"messagegroupstats-summary": "Cette page affiche les statistiques de groupe de messages.",
"languagestats-stats-for": "Statistiques de traduction pour $1 ($2).",
@@ -193,8 +205,8 @@
"translate-langstats-collapseall": "Tout replier",
"translate-language-code": "Code de langue",
"translate-language-code-field-name": "Code de langue :",
- "translate-suppress-complete": "Ne pas afficher les groupes de messages entièrement traduits",
- "translate-ls-noempty": "Supprimer complètement les groupes de message non traduits",
+ "translate-suppress-complete": "Masquer les groupes de messages entièrement traduits",
+ "translate-ls-noempty": "Masquer les groupes de messages sans aucune traduction",
"translate-language": "Langue",
"translate-total": "Messages",
"translate-untranslated": "Non traduits",
@@ -210,7 +222,7 @@
"translate-mgs-noempty": "Ne pas afficher les langues qui n’ont aucune traduction",
"translate-mgs-submit": "Afficher les statistiques",
"translate-mgs-column-language": "Langue",
- "translate-mgs-totals": "Toutes les langues ensemble",
+ "translate-mgs-totals": "$1 {{PLURAL:$1|langue|langues}} au total",
"translate-mgs-invalid-group": "Le groupe spécifié $1 n’existe pas.",
"translate-mgs-nothing": "Rien à afficher pour les statistiques demandées.",
"supportedlanguages": "Langues prises en charge",
@@ -218,10 +230,12 @@
"supportedlanguages-colorlegend": "Légende pour la couleur: Dernière traduction il y a $1 jours.",
"supportedlanguages-portallink": "[$1] $2 — $3",
"supportedlanguages-portallink-nocldr": "[$1] $2",
+ "supportedlanguages-sqlite-error": "SQLite n'est pas supporté",
"supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|Traducteur|Traductrice}}|Traducteurs}} : $1",
"supportedlanguages-recenttranslations": "traductions récentes",
"supportedlanguages-count": "$1 {{PLURAL:$1|langue|langues}} au total.",
"supportedlanguages-activity": "$1 : $2 modification{{PLURAL:$2||s}} - Dernière modification il y a $3 jour{{PLURAL:$3||s}}",
+ "abusefilter-edit-builder-vars-translate-source-text": "Texte source de l'unité de traduction",
"translate-save": "Publier ($1)",
"translate-jssti-add": "Ajouter à la liste",
"managemessagegroups": "Gestion du groupe des messages",
@@ -245,7 +259,6 @@
"translate-manage-toolong": "La durée maximale du temps de traitement de $1 seconde{{PLURAL:$1||s}} a été dépassé.\nRenvoyez le formulaire pour continuer le traitement.",
"translate-manage-import-summary": "Importation d’une nouvelle version depuis une source externe.",
"translate-manage-conflict-summary": "Importation d’une nouvelle version depuis une source externe. Vérifiez s’il vous plaît.",
- "translate-manage-fuzzy-summary": "La définition du message a été modifiée",
"translate-manage-submit": "Exécuter",
"translate-manage-intro-other": "Ci-dessous figure une liste des modifications dans la langue $1.\nRelisez les modifications et choisissez une action à effectuer pour chacune.\nSi vous décidez d’ignorer les modifications, cette action ne sera que temporaire.",
"translate-manage-import-ok": "Importé : $1",
@@ -254,7 +267,7 @@
"translate-import-from-local": "Importer un fichier local :",
"translate-import-load": "Charger le fichier",
"translate-import-err-dl-failed": "Impossible d’accéder au fichier :\n$1",
- "translate-import-err-ul-failed": "Le téléversement du fichier n’a pas été réussi",
+ "translate-import-err-ul-failed": "Le téléversement du fichier a échoué",
"translate-import-err-invalid-title": "Le nom du fichier fourni <nowiki>$1</nowiki> est invalide.",
"translate-import-err-no-such-file": "Le fichier <nowiki>$1</nowiki> n’existe pas ou n’a pas été importé localement.",
"translate-import-err-stale-group": "Le groupe de messages auquel ce fichier appartient n’existe pas.",
@@ -263,9 +276,7 @@
"translate-js-summary": "Résumé :",
"translate-js-save": "Enregistrer",
"translate-js-next": "Enregistrer et ouvrir le suivant",
- "translate-js-nonext": "C’était le dernier message de cette page.",
"translate-js-skip": "Aller au suivant",
- "translate-js-save-failed": "L’enregistrement a échoué. Veuillez signaler cette erreur.",
"translate-js-history": "Historique de traduction",
"translate-js-support": "Poser une question",
"translate-js-support-title": "Demandez de l’aide s’il n’y a pas suffisamment d’informations pour traduire ce message correctement.",
@@ -282,23 +293,9 @@
"translate-documentation-language": "Documentation du message",
"translate-searchprofile": "Traductions",
"translate-searchprofile-tooltip": "Rechercher dans toutes les traductions",
+ "translate-searchprofile-note": "Plus d'options de recherche sont disponibles avec [$1 recherche de traductions].",
"translate-search-languagefilter": "Filtrer par langue :",
"translate-search-nofilter": "Aucun filtrage",
- "translate-messagereview-submit": "Marquer comme relu",
- "translate-messagereview-progress": "En cours de marquage comme relu…",
- "translate-messagereview-failure": "Échec du marquage comme relu : $1",
- "translate-messagereview-done": "Relu",
- "translate-messagereview-reviews": "Relu par {{PLURAL:$1| un utilisateur| $1 utilisateurs}}",
- "translate-messagereview-reviewswithyou": "Relu par {{PLURAL:$1|vous|$1 utilisateurs, vous y compris}}",
- "api-error-invalidrevision": "La traduction n'a pas été trouvée",
- "api-error-unknownmessage": "Le message n'a pas été trouvé",
- "api-error-fuzzymessage": "La traduction est marquée comme « floue »",
- "api-error-owntranslation": "Vous ne pouvez pas marquer vos propres traductions comme relues",
- "translate-messagereview-no-fuzzy": "Les traductions douteuses ne peuvent pas être marquées comme relues.",
- "translate-messagereview-no-own": "Vous ne pouvez pas marquer vos propres traductions comme relues.",
- "translate-messagereview-doit": "Marquer cette traduction comme relue.",
- "group-translate-proofr.css": "/* Le CSS placé ici n’affectera que les relecteurs de traduction */",
- "group-translate-proofr.js": "/* Le Javascript placé ici n’affectera que les relecteurs de traduction */",
"log-name-translationreview": "Journal de relecture des traductions",
"log-description-translationreview": "Journal de toutes les relectures des traductions et des groupes de message.",
"logentry-translationreview-message": "$1 {{GENDER:$2|a relu}} la traduction $3",
@@ -311,10 +308,7 @@
"action-translate-sandboxaction": "exécuter des actions sur liste blanche pour les utilisateurs non-enregistrés",
"translate-workflow-state-": "(désactivé)",
"translate-workflowstatus": "Statut : $1",
- "translate-workflow-set-do": "Activé",
"translate-workflow-set-doing": "Activation...",
- "translate-workflow-set-done": "Activé !",
- "translate-workflow-set-error-alreadyset": "L’état demandé est identique à l’état courant.",
"translate-workflow-autocreated-summary": "Création automatique de la page pour l’état du processus de travail $1",
"translate-stats-workflow": "Statut",
"translate-workflowgroup-label": "États du processus de travail",
@@ -323,11 +317,6 @@
"translate-dynagroup-recent-desc": "Ce groupe de messages montre toutes les traductions récentes faites dans cette langue.\nIl est surtout utilisé pour les tâches de relecture.",
"translate-dynagroup-additions-label": "Ajouts récents",
"translate-dynagroup-additions-desc": "Ce groupe de messages affiche les messages nouveaux et modifiés.",
- "translate-dynagroup-by": "Traduction faite par {{GENDER:$1|$1}}",
- "translate-dynagroup-byc": "Traduction faite par {{GENDER:$1|$1}} ($2)",
- "translate-dynagroup-last": "Dernière modification par {{GENDER:$1|$1}}",
- "translate-dynagroup-lastc": "Dernière modification par {{GENDER:$1|$1}} ($2)",
- "translate-gethelp": "Aide",
"translate-msggroupselector-projects": "Groupe de messages",
"translate-msggroupselector-search-placeholder": "Rechercher des groupes",
"translate-msggroupselector-search-all": "Tous",
@@ -336,31 +325,34 @@
"tux-languageselector": "Traduire en",
"tux-tab-all": "Tous",
"tux-tab-untranslated": "Non traduit",
- "tux-tab-outdated": "Obsolète",
+ "tux-tab-outdated": "Désuets",
"tux-tab-translated": "Traduit",
"tux-tab-unproofread": "Non relu",
"tux-edit": "Modifier",
"tux-status-optional": "Facultatif",
- "tux-status-fuzzy": "Obsolète",
+ "tux-status-fuzzy": "Désuète",
"tux-status-proofread": "Corrigé",
"tux-status-translated": "Traduit",
"tux-status-saving": "Enregistrement en cours…",
"tux-status-unsaved": "Non enregistrée",
+ "tux-save-unknown-error": "Une erreur inconnue s’est produite.",
"tux-editor-placeholder": "Votre traduction",
+ "tux-editor-editsummary-placeholder": "Résumé (facultatif)",
"tux-editor-paste-original-button-label": "Coller le texte source",
"tux-editor-discard-changes-button-label": "Annuler les modifications",
"tux-editor-save-button-label": "Enregistrer la traduction",
"tux-editor-skip-button-label": "Aller au suivant",
"tux-editor-cancel-button-label": "Annuler",
"tux-editor-confirm-button-label": "Confirmer la traduction",
- "tux-editor-shortcut-info": "Appuyez sur « $1 » pour enregistrer ou « $2 » pour passer au message suivant ou « $3 » pour d’autres raccourcis.",
+ "tux-editor-proofread-button-label": "Marquer comme relu",
+ "tux-editor-shortcut-info": "Appuyez sur « $1 » pour enregistrer ou « $2 » pour passer au message suivant ou « $4 » pour fournir un résumé ou « $3 » pour d’autres raccourcis.",
"tux-editor-edit-desc": "Modifier la documentation",
"tux-editor-add-desc": "Ajouter une documentation",
"tux-editor-suggestions-title": "Suggestions",
"tux-editor-in-other-languages": "En d’autres langues",
"tux-editor-need-more-help": "Besoin d’aide ?",
- "tux-editor-ask-help": "Demander plus d’information",
- "tux-editor-tm-match": "$1% correspond",
+ "tux-editor-ask-help": "Demander plus d’informations",
+ "tux-editor-tm-match": "$1 % de correspondance",
"tux-warnings-more": "{{PLURAL:$1|$1 de plus}}",
"tux-warnings-hide": "masquer",
"tux-editor-save-failed": "Échec de l’enregistrement de la traduction : $1",
@@ -382,8 +374,8 @@
"tux-editor-doc-editor-cancel": "Annuler",
"tux-messagetable-more-messages": "$1 {{PLURAL:$1|message|messages}} de plus",
"tux-messagetable-loading-messages": "Chargement {{PLURAL:$1|du message|des messages}}…",
- "tux-message-filter-placeholder": "Liste de filtres",
- "tux-message-filter-result": "$1 {{PLURAL:$1|résultat trouvé|résultats trouvés}} pour « $2 »",
+ "tux-message-filter-placeholder": "Filtrer la liste",
+ "tux-message-filter-result": "{{PLURAL:$1|0=Aucun résultat trouvé|1=Un résultat trouvé|$1 résultats trouvés}} pour « $2 »",
"tux-message-filter-advanced-button": "Recherche avancée",
"tux-message-filter-optional-messages-label": "Messages facultatifs",
"tux-proofread-translated-by-self": "Traduit par vous",
@@ -396,7 +388,7 @@
"tux-empty-no-messages-to-display": "Aucun message à afficher.",
"tux-empty-there-are-optional": "Il y a des messages facultatifs n’apparaissant pas dans la liste",
"tux-empty-show-optional-messages": "Afficher les messages facultatifs",
- "tux-empty-no-outdated-messages": "Pas de messages obsolètes",
+ "tux-empty-no-outdated-messages": "Pas de messages désuets",
"tux-empty-nothing-to-proofread": "Rien à relire",
"tux-empty-you-can-help-providing": "Vous pouvez aider en apportant de nouvelles traductions",
"tux-empty-nothing-new-to-proofread": "Rien de nouveau à relire",
@@ -408,15 +400,18 @@
"tux-editor-close-tooltip": "Fermer",
"tux-editor-expand-tooltip": "Développer",
"tux-editor-collapse-tooltip": "Replier",
+ "tux-editor-message-tools-show-editor": "Afficher dans l'éditeur wiki",
"tux-editor-message-tools-history": "Historique",
"tux-editor-message-tools-delete": "Supprimer",
"tux-editor-message-tools-translations": "Toutes les traductions",
+ "tux-editor-message-tools-linktothis": "Lien vers ce message",
"tux-editor-loading": "Chargement en cours…",
"translate-search-more-languages-info": "$1 {{PLURAL:$1|langue supplémentaire|langues supplémentaires}}",
"translate-statsbar-tooltip": "$1% traduit, $2% relu",
- "translate-statsbar-tooltip-with-fuzzy": "$1% traduit, $2% relu, $3% obsolète",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% traduit, $2% relu, $3% désuet",
"translate-search-more-groups-info": "$1 groupe{{PLURAL:$1||s}} de plus",
"translate-ulsdep-title": "Erreur de configuration",
"translate-ulsdep-body": "L’extension de traduction dépend de l’[https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector Universal extension Sélecteur de langue].",
- "tux-session-expired": "Vous n’êtes plus connecté. Veuillez vous connecter dans un autre onglet. Sinon, faites une copie des traductions non enregistrées, connectez-vous et revenez sur cette page."
+ "tux-session-expired": "Vous n’êtes plus connecté. Veuillez vous connecter dans un autre onglet. Sinon, faites une copie des traductions non enregistrées, connectez-vous et revenez sur cette page.",
+ "tux-nojs": "Cet outil ne fonctionne pas sans JavaScript. JavaScript est désactivé ou n'a pas pu s'exécuter, ou cet explorateur ne le prend pas en charge."
}
diff --git a/MLEB/Translate/i18n/core/frp.json b/MLEB/Translate/i18n/core/frp.json
index 111129c0..d216f5bf 100644
--- a/MLEB/Translate/i18n/core/frp.json
+++ b/MLEB/Translate/i18n/core/frp.json
@@ -7,11 +7,6 @@
},
"translate": "Traduire",
"translate-desc": "[[Special:Translate|Pâge spèciâla]] por traduire MediaWiki et en-delé",
- "translate-taskui-view": "Fâre vêre tôs los mèssâjos",
- "translate-taskui-untranslated": "Fâre vêre los mèssâjos pas traduits",
- "translate-taskui-optional": "Fâre vêre los mèssâjos u chouèx",
- "translate-taskui-acceptqueue": "Solament los mèssâjos que pouè accèptar",
- "translate-taskui-reviewall": "Revêre totes les traduccions",
"translate-taskui-export-to-file": "Èxportar u format natif",
"translate-taskui-export-as-po": "Èxportar por na traduccion en defôr de legne",
"translate-taction-translate": "Traduire",
@@ -40,7 +35,6 @@
"translate-page-description-hasoptional": "Ceti groupo de mèssâjos contint los mèssâjos u chouèx.\nLos mèssâjos u chouèx devriant étre traduits ren que quand voutra lengoua at des ègzigences spèciâles\ncoment pas empleyér d’èspâços ou ben la translitèracion des noms prôpros. $1",
"translate-page-description-hasoptional-open": "Fâre vêre los mèssâjos u chouèx.",
"translate-page-edit": "changiér",
- "translate-ext-url": "<hr />Seto vouèbe : $1",
"translate-optional": "(u chouèx)",
"translate-ignored": "(ignorâ)",
"translate-edit-title": "Changiér « $1 »",
@@ -50,9 +44,7 @@
"translate-edit-no-information": "''Ceti mèssâjo est pas documentâ.''\n''Se vos sâde yô ou ben coment il est empleyê, vos pouede édiér los ôtros traductors en fassent la documentacion de ceti mèssâjo.''",
"translate-edit-information": "Enformacions sur lo mèssâjo ($1)",
"translate-edit-in-other-languages": "Mèssâjo dens d’ôtres lengoues",
- "translate-edit-committed": "Traduccion d’ora dedens la programeria",
"translate-edit-warnings": "Avèrtissements sur les traduccions encomplètes",
- "translate-edit-tmsugs": "Idês de mèmouères de traduccion et de la traduccion ôtomatica",
"translate-edit-tmmatch-source": "Tèxto sôrsa de la traduccion : $1",
"translate-edit-tmmatch": "$1 % de corrèspondance",
"translate-use-suggestion": "Remplaciér la traduccion d’ora per cet’idê.",
@@ -133,7 +125,6 @@
"translate-statsf-language": "Lista de codes lengoues sèparâs per des virgules :",
"translate-statsf-group": "Lista de codes de groupos sèparâs per des virgules :",
"translate-statsf-submit": "Prèvisualisar",
- "translate-tag-category": "Pâges traduisibles",
"translate-tag-page-desc": "Traduccion de la pâge vouiqui [[$2|$1]].",
"translate-sidebar-alltrans": "Dens les ôtres lengoues",
"translations": "Totes les traduccions",
@@ -206,7 +197,6 @@
"translate-manage-toolong": "Lo temps maximon de trètament de $1 second{{PLURAL:$1|a|es}} est étâ dèpassâ.\nVolyéd remandar lo formulèro por continuar lo trètament.",
"translate-manage-import-summary": "Importacion d’una novèla vèrsion dês na sôrsa de defôr",
"translate-manage-conflict-summary": "Importacion d’una novèla vèrsion dês na sôrsa de defôr.\nControlâd se vos plét.",
- "translate-manage-fuzzy-summary": "La dèfinicion du mèssâjo at changiêye",
"translate-manage-submit": "Ègzécutar",
"translate-manage-import-ok": "Una novèla vèrsion de la pâge $1 at étâ importâ.",
"translate-manage-import-done": "Tot at étâ fêt !",
@@ -223,9 +213,7 @@
"translate-js-summary": "Rèsumâ :",
"translate-js-save": "Encartar",
"translate-js-next": "Encartar et pués uvrir celi d’aprés",
- "translate-js-nonext": "O ére lo dèrriér mèssâjo de ceta pâge.",
"translate-js-skip": "Alar a celi d’aprés",
- "translate-js-save-failed": "L’encartâjo at pas reussi. Volyéd raportar ceta fôta.",
"translate-js-history": "Historico de traduccion",
"translate-js-support": "Posar na quèstion",
"translate-js-support-title": "Demandâd d’éde s’y at pas prod d’enformacions por traduire cél mèssâjo coment fôt.",
@@ -244,28 +232,12 @@
"translate-searchprofile-tooltip": "Rechèrchiér dens totes les traduccions",
"translate-search-languagefilter": "Filtrar per lengoua :",
"translate-search-nofilter": "Gins de filtracion",
- "translate-messagereview-submit": "Accèptar",
- "translate-messagereview-progress": "En cors d’accèptacion...",
- "translate-messagereview-failure": "Accèptacion... pas reussia : $1",
- "translate-messagereview-done": "Accèptâ",
- "translate-messagereview-reviews": "Accèptâ per {{PLURAL:$1|yon utilisator|$1 utilisators}}",
- "translate-messagereview-reviewswithyou": "Accèptâ per {{PLURAL:$1|vos|$1 utilisators, vos avouéc}}",
- "api-error-invalidrevision": "la traduccion est pas étâye trovâye",
- "api-error-unknownmessage": "lo mèssâjo est pas étâ trovâ",
- "api-error-fuzzymessage": "la traduccion est marcâye coment trobla",
- "api-error-owntranslation": "vos pouede pas accèptar voutres prôpres traduccions",
- "translate-messagereview-no-fuzzy": "Les traduccions trobles pôvont pas étre accèptâyes.",
- "translate-messagereview-no-own": "Vos pouede pas accèptar voutres prôpres traduccions.",
- "translate-messagereview-doit": "Accèptar ceta traduccion coment na traduccion justa.",
"log-name-translationreview": "Jornal de les rèvisions de traduccion",
"log-description-translationreview": "Jornal de totes les rèvisions de les traduccions et des groupos de mèssâjos.",
"logentry-translationreview-message": "$1 at {{GENDER:$2|accèptâ}} la traduccion $3",
"translate-workflow-state-": "(dèsactivâ)",
"translate-workflowstatus": "Statut : $1",
- "translate-workflow-set-do": "Activar",
"translate-workflow-set-doing": "En cors d’activacion...",
- "translate-workflow-set-done": "Activâ !",
- "translate-workflow-set-error-alreadyset": "L’ètat demandâ est pariér a l’ètat d’ora.",
"translate-workflow-autocreated-summary": "Crèacion ôtomatica de la pâge por l’ètat du flux d’ôvra $1",
"translate-stats-workflow": "Statut",
"translate-workflowgroup-label": "Ètats du flux d’ôvra",
@@ -273,11 +245,6 @@
"translate-dynagroup-recent-label": "Novèles traduccions",
"translate-dynagroup-recent-desc": "Ceti groupo de mèssâjos fât vêre totes les novèles traduccions fêtes dens cela lengoua.\nIl est surtot empleyê por los travâlys de relèctura.",
"translate-dynagroup-additions-label": "Aponses novèles",
- "translate-dynagroup-by": "Traduccion fêta per {{GENDER:$1|$1}}",
- "translate-dynagroup-byc": "Traduccion fêta per {{GENDER:$1|$1}} ($2)",
- "translate-dynagroup-last": "Dèrriér changement per {{GENDER:$1|$1}}",
- "translate-dynagroup-lastc": "Dèrriér changement per {{GENDER:$1|$1}} ($2)",
- "translate-gethelp": "Éde",
"translate-msggroupselector-projects": "Groupo de mèssâjos",
"translate-msggroupselector-search-placeholder": "Rechèrchiér des groupos",
"translate-msggroupselector-search-all": "Tôs",
diff --git a/MLEB/Translate/i18n/core/frr.json b/MLEB/Translate/i18n/core/frr.json
index 6106beb1..403ab2ff 100644
--- a/MLEB/Translate/i18n/core/frr.json
+++ b/MLEB/Translate/i18n/core/frr.json
@@ -4,6 +4,7 @@
"Murma174"
]
},
+ "translate-pref-nonewsletter": "Schüür mi nian E-Mail-Neis",
"translate-total": "Bööden",
"translate-untranslated": "Bööden (tu auersaaten)",
"translate-percentage-complete": "Klaar",
diff --git a/MLEB/Translate/i18n/core/fur.json b/MLEB/Translate/i18n/core/fur.json
index eff4421e..c9199df2 100644
--- a/MLEB/Translate/i18n/core/fur.json
+++ b/MLEB/Translate/i18n/core/fur.json
@@ -6,10 +6,6 @@
},
"translate": "Traduzion",
"translate-desc": "[[Special:Translate|Pagjine speciâl]] par tradusi MediaWiki e altris robis",
- "translate-taskui-view": "Mostre ducj i messaçs",
- "translate-taskui-untranslated": "Mostre i messaçs no tradusûts",
- "translate-taskui-optional": "Mostre i messaçs opzionâi",
- "translate-taskui-reviewall": "Riviôt dutis lis traduzions",
"translate-taskui-export-to-file": "Espuarte tal formât natîf",
"translate-taction-translate": "Tradûs",
"translate-taction-proofread": "Revision",
@@ -31,7 +27,6 @@
"translate-page-description-legend": "Informazions sul grup",
"translate-page-description-hasoptional-open": "Mostre i messaçs opzionâi.",
"translate-page-edit": "cambie",
- "translate-ext-url": "<hr />Sît web: $1",
"translate-optional": "(opzionâl)",
"translate-ignored": "(ignorât)",
"translate-edit-title": "Cambie \"$1\"",
@@ -42,7 +37,6 @@
"translate-edit-information": "Informazions sul messaç ($1)",
"translate-edit-in-other-languages": "Il messaç in altris lenghis",
"translate-edit-warnings": "Avîs su lis traduzions no completis",
- "translate-edit-tmsugs": "Sugjeriments de memorie di traduzion",
"translate-edit-tmmatch": "corispuint al $1%",
"translate-edit-nopermission": "Ti coventin i dirits di traduzion par tradusi i messaçs.",
"translate-edit-askpermission": "Cjapiti il permès",
@@ -86,7 +80,6 @@
"translate-statsf-count-reviews": "Revisions des traduzions",
"translate-statsf-count-reviewers": "Revisôrs",
"translate-statsf-submit": "Anteprime",
- "translate-tag-category": "Pagjinis che si puedin tradusi",
"translate-tag-page-desc": "Traduzion de pagjine wiki [[$2|$1]].",
"translate-sidebar-alltrans": "In altris lenghis",
"translations": "Dutis lis traduzions",
@@ -136,7 +129,6 @@
"translate-js-summary": "Somari:",
"translate-js-save": "Salve",
"translate-js-next": "Salve e passe al prossim",
- "translate-js-nonext": "Chest al jere l'ultin messaç su cheste pagjine.",
"translate-js-skip": "Passe al prossim",
"translate-js-history": "Storic de traduzion",
"translate-js-support": "Fâs une domande",
@@ -152,20 +144,12 @@
"translate-searchprofile-tooltip": "Cîr jenfri dutis lis traduzions",
"translate-search-languagefilter": "Filtre par lenghe:",
"translate-search-nofilter": "Nissun filtri",
- "translate-messagereview-submit": "Acete",
- "translate-messagereview-progress": "Daûr a acetâ...",
- "translate-messagereview-done": "Acetât",
"log-name-translationreview": "Regjistri des revisions des traduzions",
"translate-workflowstatus": "Stât: $1",
"translate-stats-workflow": "Stât",
"translate-dynagroup-recent-label": "Traduzions recentis",
"translate-dynagroup-additions-label": "Gnovis zontis",
"translate-dynagroup-additions-desc": "Chest grup di messaçs al mostre i messaçs gnûfs e cambiâts.",
- "translate-dynagroup-by": "Traduzion fate di {{GENDER:$1|$1}}",
- "translate-dynagroup-byc": "Traduzion fate di {{GENDER:$1|$1}}($2)",
- "translate-dynagroup-last": "Ultin cambiament di {{GENDER:$1|$1}}",
- "translate-dynagroup-lastc": "Ultin cambiament di {{GENDER:$1|$1}} ($2)",
- "translate-gethelp": "Jutori",
"translate-msggroupselector-projects": "Grup di messaçs",
"translate-msggroupselector-search-placeholder": "Cîr tai grups",
"translate-msggroupselector-search-all": "Ducj",
diff --git a/MLEB/Translate/i18n/core/fy.json b/MLEB/Translate/i18n/core/fy.json
index 2fdfff3c..7ad40a00 100644
--- a/MLEB/Translate/i18n/core/fy.json
+++ b/MLEB/Translate/i18n/core/fy.json
@@ -3,15 +3,20 @@
"authors": [
"Kening Aldgilles",
"Snakesteuben",
- "Robin0van0der0vliet"
+ "Robin0van0der0vliet",
+ "Robin van der Vliet"
]
},
+ "translate": "Oersette",
+ "translate-taction-translate": "Oersette",
+ "translate-taction-mstats": "Berjochtengroepstatistiken",
"translate-page-settings-legend": "Ynstellingen",
"translate-page-group": "Groep",
"translate-page-language": "Taal",
"translate-page-navigation-legend": "Navigaasje",
"translate-next": "Folgjende side",
"translate-page-edit": "bewurkje",
+ "translate-optional": "(opsjoneel)",
"translate-edit-title": "Bewurk \"$1\"",
"translate-edit-translation": "Oersetting",
"translate-magic-cm-export": "Eksportearje",
@@ -21,20 +26,40 @@
"translate-statsf-scale-months": "Moannen",
"translate-statsf-scale-weeks": "Wiken",
"translate-statsf-scale-days": "Dagen",
- "translate-statsf-scale-hours": "Oeren",
+ "translate-statsf-scale-hours": "Oere",
"translate-translations-messagename": "Namme:",
"translate-translations-project": "Projekt:",
+ "translate-language-code": "Taalkoade",
+ "translate-language-code-field-name": "Taalkoade:",
"translate-language": "Taal",
+ "translate-untranslated": "Unoerset",
+ "translate-ls-column-group": "Berjochtengroep",
+ "translate-mgs-pagename": "Berjochtengroepstatistiken",
+ "translate-mgs-group": "Berjochtengroep:",
"translate-mgs-column-language": "Taal",
"supportedlanguages-translators": "{{PLURAL:$2|Oersetter|Oersetters}}: $1",
+ "translate-save": "Bewarje ($1)",
+ "translate-js-save": "Bewarje",
+ "translate-gs-code": "Koade",
+ "translate-gs-continent": "Kontinent",
"translate-documentation-language": "Berjochtbeskriuwing",
"translate-searchprofile": "Oersettings",
- "translate-gethelp": "Help",
+ "translate-msggroupselector-projects": "Berjochtengroep",
+ "tux-languageselector": "Oersette nei",
+ "tux-tab-untranslated": "Unoerset",
+ "tux-tab-translated": "Oerset",
"tux-edit": "Bewurkje",
+ "tux-status-optional": "Opsjoneel",
+ "tux-status-translated": "Oerset",
+ "tux-editor-save-button-label": "Oersetting bewarje",
"tux-editor-cancel-button-label": "Annulearje",
"tux-warnings-more": "{{PLURAL:$1|$1 mear}}",
"tux-proofread-edit-label": "Bewurkje",
"tux-editor-page-mode": "Side",
"tux-editor-doc-editor-cancel": "Annulearje",
- "tux-editor-message-tools-history": "Skiednis"
+ "tux-message-filter-optional-messages-label": "Opsjonele berjochten",
+ "tux-editor-close-tooltip": "Slute",
+ "tux-editor-message-tools-history": "Skiednis",
+ "tux-editor-message-tools-delete": "Fuortsmite",
+ "translate-statsbar-tooltip": "$1% oerset, $2% kontrolearre"
}
diff --git a/MLEB/Translate/i18n/core/ga.json b/MLEB/Translate/i18n/core/ga.json
index 91140c30..607933ff 100644
--- a/MLEB/Translate/i18n/core/ga.json
+++ b/MLEB/Translate/i18n/core/ga.json
@@ -23,6 +23,5 @@
"translate-translations-messagename": "Ainm:",
"translate-language": "Teanga",
"translate-js-summary": "Achoimre:",
- "translate-js-save": "Sábháil",
- "translate-gethelp": "Cuidiú"
+ "translate-js-save": "Sábháil"
}
diff --git a/MLEB/Translate/i18n/core/gl.json b/MLEB/Translate/i18n/core/gl.json
index 90d1bfa1..8de6a919 100644
--- a/MLEB/Translate/i18n/core/gl.json
+++ b/MLEB/Translate/i18n/core/gl.json
@@ -5,16 +5,15 @@
"Gallaecio",
"Toliño",
"Xosé",
- "Fitoschido"
+ "Fitoschido",
+ "Elisardojm",
+ "Banjo",
+ "Navhy"
]
},
"translate": "Traducir",
"translate-desc": "[[Special:Translate|Páxina especial]] para traducir MediaWiki e outras extensións",
- "translate-taskui-view": "Mostrar todas as mensaxes",
- "translate-taskui-untranslated": "Mostrar as mensaxes sen traducir",
- "translate-taskui-optional": "Mostrar as mensaxes opcionais",
- "translate-taskui-acceptqueue": "Só as mensaxes que poida marcar como revisadas",
- "translate-taskui-reviewall": "Revisar todas as traducións",
+ "translate-fuzzybot-desc": "Esta é unha conta de sistema especial usada pola extensión de [https://www.mediawiki.org/wiki/Extension:Translate Tradución] de MediaWiki para manter as traducións.\nEsta conta é parte do software MediaWiki e non pertence a ningún usuario.",
"translate-taskui-export-to-file": "Exportar en formato nativo",
"translate-taskui-export-as-po": "Exportar para traducir sen conexión",
"translate-taction-translate": "Traducir",
@@ -32,18 +31,17 @@
"translate-page-language": "Lingua",
"translate-page-limit": "Límite",
"translate-page-limit-option": "$1 {{PLURAL:$1|mensaxe|mensaxes}} por páxina",
- "translate-submit": "Mostrar",
+ "translate-submit": "Amosar",
"translate-page-navigation-legend": "Navegación",
- "translate-page-showing": "Mostrando as mensaxes da $1 á $2, dun total de $3.",
- "translate-page-showing-all": "Mostrando {{PLURAL:$1|unha mensaxe|$1 mensaxes}}.",
- "translate-page-showing-none": "Non hai ningunha mensaxe que mostrar.",
+ "translate-page-showing": "Amosando as mensaxes da $1 á $2, dun total de $3.",
+ "translate-page-showing-all": "Amosando {{PLURAL:$1|unha mensaxe|$1 mensaxes}}.",
+ "translate-page-showing-none": "Non hai ningunha mensaxe que amosar.",
"translate-next": "Páxina seguinte",
"translate-prev": "Páxina anterior",
"translate-page-description-legend": "Información acerca do grupo",
"translate-page-description-hasoptional": "Este grupo de mensaxes contén mensaxes opcionais.\nAs mensaxes opcionais só se deberían traducir cando a lingua teña necesidades especiais,\ncomo non empregar espazos ou para a transliteración de nomes propios. $1",
- "translate-page-description-hasoptional-open": "Mostrar as mensaxes opcionais.",
+ "translate-page-description-hasoptional-open": "Amosar as mensaxes opcionais.",
"translate-page-edit": "editar",
- "translate-ext-url": "<hr />Páxina web: $1",
"translate-optional": "(opcional)",
"translate-ignored": "(ignorado)",
"translate-edit-title": "Editar \"$1\"",
@@ -53,18 +51,21 @@
"translate-edit-no-information": "<em>Esta mensaxe non ten documentación.\nSe sabe onde ou como se usa esta mensaxe, pode axudar aos outros tradutores engadíndolle datos.</em>",
"translate-edit-information": "Información acerca da mensaxe ($1)",
"translate-edit-in-other-languages": "Mensaxe noutras linguas",
- "translate-edit-committed": "Tradución actual no software",
"translate-edit-warnings": "Avisos acerca de traducións incompletas",
- "translate-edit-tmsugs": "Suxestións da memoria de tradución",
"translate-edit-tmmatch-source": "Texto fonte da tradución: $1",
"translate-edit-tmmatch": "$1% de coincidencia",
"translate-use-suggestion": "Substituír a tradución actual por esta suxestión.",
"translate-edit-nopermission": "Necesita ter os dereitos de tradución para traducir mensaxes.",
"translate-edit-askpermission": "Obter os permisos",
+ "exporttranslations": "Exportar traducións",
+ "translate-export-form-format": "Formato",
+ "translate-export-invalid-format": "Por favor, especifique un formato válido.",
+ "translate-export-not-supported": "A exportación de traducións non está soportada.",
+ "translate-export-format-notsupported": "O grupo de mensaxes non soporta o formato de exportación especificado.",
"translate-magic-pagename": "Tradución estendida de MediaWiki",
"translate-magic-help": "Pode traducir os pseudónimos das páxinas especiais, as palabras máxicas e mais os nomes dos espazos de nomes.\n\nOs pseudónimos das páxinas especiais e as palabras máxicas poden ter numerosas traducións.\nAs traducións sepáranse mediante unha coma (\",\").\nOs nomes dos espazos de nomes só poden ter unha tradución.\n\nA tradución do espazo de nomes de conversa do proxecto, <code>$1 talk</code>, pode ser complicado.\n<code>$1</code> substitúese polo nome do sitio (por exemplo, <code>{{ns:project_talk}}</code>).\nSe na súa lingua non resulta posible formar unha expresión válida sen mudar o nome do sitio, fáganolo saber na [[Support|páxina de axuda]].\n\nTen que estar no grupo dos tradutores para gardar os cambios.\nOs cambios non se gardan ata que prema no botón \"Gardar\" que hai ao final.",
"translate-magic-module": "Módulo:",
- "translate-magic-submit": "Mostrar",
+ "translate-magic-submit": "Amosar",
"translate-magic-cm-export": "Exportar",
"translate-magic-nothing-to-export": "Non hai nada que exportar.",
"translate-magic-cm-to-be": "Será",
@@ -79,7 +80,7 @@
"translate-magic-namespace": "Nomes dos espazos de nomes",
"translate-magic-notsaved": "A súa edición non foi gardada!",
"translate-magic-errors": "Por favor, corrixa {{PLURAL:$1|o seguinte erro|os seguintes erros}} nas traducións:",
- "translate-magic-saved": "As súas modificacións gardáronse correctamente.",
+ "translate-magic-saved": "Gardáronse as súas modificacións.",
"translate-checks-parameters": "{{PLURAL:$2|Non se emprega o seguinte parámetro|Non se empregan os seguintes parámetros}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-parameters-unknown": "{{PLURAL:$2|Descoñécese o seguinte parámetro|Descoñécense os seguintes parámetros}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-balance": "Hai unha cantidade irregular de {{PLURAL:$2|parénteses|parénteses}}:\n<strong><nowiki>$1</nowiki></strong>",
@@ -90,12 +91,12 @@
"translate-checks-plural-forms": "<nowiki>{{PLURAL:}}</nowiki> recibiu {{PLURAL:$1|unha forma|$1 formas}} de plural, pero unicamente {{PLURAL:$2|está soportada unha forma|están soportadas $2 formas}} (excluíndo as formas 0= e 1=).",
"translate-checks-plural-dupe": "<nowiki>{{PLURAL:}}</nowiki> ten formas de plural duplicadas ao final. <nowiki>{{PLURAL:$1|lapis|lapis}}</nowiki> debe escribirse así: <nowiki>{{PLURAL:$1|lapis}}</nowiki>.",
"translate-checks-pagename": "O espazo de nomes é diferente con respecto ao presente na definición",
- "translate-checks-format": "Esta tradución non segue a definición ou ten unha sintaxe inválida: $1",
+ "translate-checks-format": "Esta tradución non segue a definición ou ten unha sintaxe non válida: $1",
"translate-checks-escape": "As seguintes secuencias de escape poden ser accidentais: <strong>$1</strong>",
"translate-checks-parametersnotequal": "O número de parámetros é {{PLURAL:$1|$1}}, cando {{PLURAL:$2|debe ser $2|deben ser $2}}.",
"translate-checks-malformed": "\"<nowiki>$1</nowiki>\" ten un formato incorrecto.",
"translate-checks-fudforum-syntax": "Use <nowiki>$1</nowiki> no canto de <nowiki>$2</nowiki> neste proxecto.",
- "translate-pref-nonewsletter": "Non me enviedes boletíns ao meu correo electrónico",
+ "translate-pref-nonewsletter": "Non recibir boletíns no meu correo electrónico",
"translate-pref-editassistlang": "Linguas axudantes:",
"prefs-translate": "Opcións de tradución",
"translate-pref-editassistlang-help": "Lista de códigos de linguas separados por comas.\nMóstranse as traducións dunha mensaxe nestas linguas cando a traduce.\nA lista de linguas por defecto depende da súa.",
@@ -106,12 +107,21 @@
"right-translate-import": "Importar as traducións sen conexión",
"action-translate-import": "importar as traducións sen conexión",
"right-translate-messagereview": "Revisar as traducións",
+ "action-translate-messagereview": "revisar traducións",
"right-translate-groupreview": "Cambiar o estado do fluxo de traballo dos grupos de mensaxes",
+ "action-translate-groupreview": "modificar o estado do fluxo de traballo dos grupos de mensaxes",
+ "translate-rcfilters-translations": "Traducións",
+ "translate-rcfilters-translations-only-label": "Traducións",
+ "translate-rcfilters-translations-only-desc": "Cambios realizados nas páxinas traducidas.",
+ "translate-rcfilters-translations-filter-label": "Non traducións",
+ "translate-rcfilters-translations-filter-desc": "Tódolos cambios que non son traducións.",
+ "translate-rcfilters-translations-site-label": "Mensaxes de sistema",
+ "translate-rcfilters-translations-site-desc": "Personalizacións ás mensaxes de sistema no espazo de nomes MediaWiki.",
"translate-rc-translation-filter": "Filtrar as traducións:",
"translate-rc-translation-filter-no": "Non facer nada",
- "translate-rc-translation-filter-only": "Mostrar só as traducións",
- "translate-rc-translation-filter-filter": "Mostrar o que non sexan traducións",
- "translate-rc-translation-filter-site": "Mostrar só os cambios nas mensaxes do sitio",
+ "translate-rc-translation-filter-only": "Amosar só as traducións",
+ "translate-rc-translation-filter-filter": "Amosar o que non sexan traducións",
+ "translate-rc-translation-filter-site": "Amosar só os cambios nas mensaxes do sitio",
"translationstats": "Estatísticas das traducións",
"translate-stats-edits": "Edicións",
"translate-stats-users": "Tradutores",
@@ -138,7 +148,6 @@
"translate-statsf-language": "Lista de códigos de lingua (separados por comas):",
"translate-statsf-group": "Lista de códigos de grupos de mensaxes (separados por comas):",
"translate-statsf-submit": "Vista previa",
- "translate-tag-category": "Páxinas que se poden traducir",
"translate-tag-page-desc": "Tradución da páxina wiki \"[[$2|$1]]\" en $3 ($4).",
"translate-sidebar-alltrans": "Noutras linguas",
"translations": "Todas as traducións",
@@ -152,8 +161,8 @@
"translate-translations-including-no-param": "Por favor, especifique unha clave de mensaxe válida no parámetro da subpáxina",
"translate-translations-history-short": "h",
"languagestats": "Estatísticas da lingua",
- "languagestats-summary": "Esta páxina mostra as estatísticas de tradución dos grupos de mensaxes dunha lingua.",
- "messagegroupstats-summary": "Esta páxina mostra as estatísticas dos grupos de mensaxes.",
+ "languagestats-summary": "Esta páxina amosa as estatísticas de tradución dos grupos de mensaxes dunha lingua.",
+ "messagegroupstats-summary": "Esta páxina amosa as estatísticas dos grupos de mensaxes.",
"languagestats-stats-for": "Estatísticas das traducións en $1 ($2).",
"languagestats-recenttranslations": "traducións recentes",
"translate-langstats-incomplete": "Algunhas das estatísticas desta páxina están incompletas. Recargue a páxina para ollar máis estatísticas.",
@@ -171,25 +180,26 @@
"translate-percentage-complete": "Completadas",
"translate-percentage-fuzzy": "Anticuadas",
"translate-languagestats-overall": "Todos os grupos de mensaxes xuntos",
- "translate-ls-submit": "Mostrar as estatísticas",
+ "translate-ls-submit": "Amosar as estatísticas",
"translate-ls-column-group": "Grupo de mensaxes",
"translate-mgs-pagename": "Estatísticas dos grupos de mensaxes",
- "translate-mgs-fieldset": "Mostrar as preferencias",
+ "translate-mgs-fieldset": "Amosar as preferencias",
"translate-mgs-group": "Grupo de mensaxes:",
- "translate-mgs-nocomplete": "Non mostrar as linguas que teñen a tradución completa",
- "translate-mgs-noempty": "Non mostrar as linguas que non teñen ningunha tradución",
- "translate-mgs-submit": "Mostrar as estatísticas",
+ "translate-mgs-nocomplete": "Non amosar as linguas que teñen a tradución completa",
+ "translate-mgs-noempty": "Non amosar as linguas que non teñen ningunha tradución",
+ "translate-mgs-submit": "Amosar as estatísticas",
"translate-mgs-column-language": "Lingua",
- "translate-mgs-totals": "Todas as linguas xuntas",
+ "translate-mgs-totals": "$1 {{PLURAL:$1|lingua|linguas}} en total",
"translate-mgs-invalid-group": "O grupo especificado, \"$1\", non existe.",
- "translate-mgs-nothing": "Non hai nada que mostrar para as estatísticas solicitadas.",
- "supportedlanguages": "Linguas soportadas",
- "supportedlanguages-summary": "Esta páxina mostra unha lista de todas as linguas soportadas por {{SITENAME}},\nasí como os nomes dos tradutores que traballan nelas.\nCantas máis contribucións fixese un usuario, máis grande aparecerá o seu nome.\nA cor do suliñado indica como de activo estivo o tradutor recentemente.",
+ "translate-mgs-nothing": "Non hai nada que amosar para as estatísticas solicitadas.",
+ "supportedlanguages": "Linguas admitidas",
+ "supportedlanguages-summary": "Esta páxina amosa unha lista de tódalas linguas soportadas por {{SITENAME}},\nasí como os nomes dos tradutores que traballan nelas.\nCantas máis contribucións fixese un usuario, máis grande aparecerá o seu nome.\nA cor do suliñado indica como de activo estivo o tradutor recentemente.",
"supportedlanguages-colorlegend": "Lenda das cores: Última tradución hai $1 días.",
"supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|Tradutor|Tradutora}}|Tradutores}}: $1",
"supportedlanguages-recenttranslations": "traducións recentes",
"supportedlanguages-count": "$1 {{PLURAL:$1|lingua|linguas}} en total.",
"supportedlanguages-activity": "$1: $2 {{PLURAL:$2|edición|edicións}}; última edición hai $3 {{PLURAL:$3|día|días}}",
+ "abusefilter-edit-builder-vars-translate-source-text": "Texto de orixe da unidade de traducción",
"translate-save": "Gardar ($1)",
"translate-jssti-add": "Engadir á lista",
"managemessagegroups": "Xestión dos grupos de mensaxes",
@@ -213,7 +223,6 @@
"translate-manage-toolong": "Excedeuse do máximo tempo de procesamento de $1 {{PLURAL:$1|segundo|segundos}}.\nPor favor, reenvíe o formulario para continuar procesando.",
"translate-manage-import-summary": "Importando unha nova versión desde unha fonte externa",
"translate-manage-conflict-summary": "Importando unha nova versión desde unha fonte externa. Por favor, compróbea.",
- "translate-manage-fuzzy-summary": "A definición da mensaxe cambiou",
"translate-manage-submit": "Executar",
"translate-manage-intro-other": "A continuación está a lista de cambios nas traducións en $1.\nPor favor, revise os cambios e escolla a acción que quere facer para cada actualización.\nSe opta por ignorar as modificacións, esta acción é unicamente temporal.",
"translate-manage-import-ok": "Importada: $1",
@@ -222,7 +231,7 @@
"translate-import-from-local": "Carga dun ficheiro local:",
"translate-import-load": "Cargar o ficheiro",
"translate-import-err-dl-failed": "Non se pode acceder ao ficheiro:\n$1",
- "translate-import-err-ul-failed": "Fallou a carga do ficheiro",
+ "translate-import-err-ul-failed": "Fallou a suba do ficheiro",
"translate-import-err-invalid-title": "O nome de ficheiro proporcionado \"<nowiki>$1</nowiki>\" é inválido.",
"translate-import-err-no-such-file": "O ficheiro \"<nowiki>$1</nowiki>\" non existe ou non foi cargado localmente.",
"translate-import-err-stale-group": "O grupo de mensaxes ao que pertence este ficheiro non existe.",
@@ -231,9 +240,7 @@
"translate-js-summary": "Resumo:",
"translate-js-save": "Gardar",
"translate-js-next": "Gardar e abrir a seguinte",
- "translate-js-nonext": "Esta é a última mensaxe da páxina.",
"translate-js-skip": "Pasar á seguinte",
- "translate-js-save-failed": "Fallou o proceso de gardado. Por favor, informe sobre este erro.",
"translate-js-history": "Historial de tradución",
"translate-js-support": "Facer unha pregunta",
"translate-js-support-title": "Pida axuda se non dispón de información suficiente para traducir a mensaxe correctamente.",
@@ -250,23 +257,9 @@
"translate-documentation-language": "documentación das mensaxes",
"translate-searchprofile": "Traducións",
"translate-searchprofile-tooltip": "Procurar en todas as traducións",
+ "translate-searchprofile-note": "Hai dispoñibles máis opcións de procura coa [$1 procura de traducións].",
"translate-search-languagefilter": "Filtrar por lingua:",
"translate-search-nofilter": "Non filtrar",
- "translate-messagereview-submit": "Marcar como revisada",
- "translate-messagereview-progress": "Marcando como revisada...",
- "translate-messagereview-failure": "Erro ao marcar como revisada: $1",
- "translate-messagereview-done": "Revisada",
- "translate-messagereview-reviews": "Revisada por {{PLURAL:$1|un usuario|$1 usuarios}}",
- "translate-messagereview-reviewswithyou": "Revisada por {{PLURAL:$1|vostede|$1 usuarios, incluído vostede}}",
- "api-error-invalidrevision": "Non se atopou a tradución",
- "api-error-unknownmessage": "Non se atopou a mensaxe",
- "api-error-fuzzymessage": "A tradución está marcada con FUZZY",
- "api-error-owntranslation": "Non se poden marcar como revisadas as traducións feitas por un mesmo",
- "translate-messagereview-no-fuzzy": "Non se poden marcar como revisadas as traducións anticuadas.",
- "translate-messagereview-no-own": "Non se poden marcar como revisadas as traducións feitas por un mesmo.",
- "translate-messagereview-doit": "Marcar esta tradución como revisada.",
- "group-translate-proofr.css": "/* O CSS que se coloque aquí afectará soamente aos revisores das traducións */",
- "group-translate-proofr.js": "/* O JS que se coloque aquí afectará soamente aos revisores das traducións */",
"log-name-translationreview": "Rexistro de revisión das traducións",
"log-description-translationreview": "Rexistro de todas as revisións das traducións e dos grupos de mensaxes.",
"logentry-translationreview-message": "$1 {{GENDER:$2|revisou}} a tradución \"$3\"",
@@ -279,23 +272,15 @@
"action-translate-sandboxaction": "executar accións da lista branca para os usuarios da zona de probas",
"translate-workflow-state-": "(desactivado)",
"translate-workflowstatus": "Estado: $1",
- "translate-workflow-set-do": "Activar",
"translate-workflow-set-doing": "Activando...",
- "translate-workflow-set-done": "Activado!",
- "translate-workflow-set-error-alreadyset": "O estado solicitado é idéntico ao estado actual.",
"translate-workflow-autocreated-summary": "Creación automática da páxina para o estado \"$1\" do fluxo de traballo",
"translate-stats-workflow": "Estado",
"translate-workflowgroup-label": "Estados do fluxo de traballo",
- "translate-workflowgroup-desc": "Este grupo de mensaxes mostra todas as traducións dos estados do fluxo de traballo.\nOs estados están definidos na variable de configuración $wgTranslateWorkflowStates.",
+ "translate-workflowgroup-desc": "Este grupo de mensaxes amosa tódalas traducións dos estados do fluxo de traballo.\nOs estados están definidos na variable de configuración $wgTranslateWorkflowStates.",
"translate-dynagroup-recent-label": "Traducións recentes",
- "translate-dynagroup-recent-desc": "Este grupo de mensaxes mostra todas as traducións recentes feitas nesta lingua.\nÉ moi útil para as tarefas de revisión.",
+ "translate-dynagroup-recent-desc": "Este grupo de mensaxes amosa tódalas traducións recentes feitas nesta lingua.\nÉ moi útil para as tarefas de revisión.",
"translate-dynagroup-additions-label": "Adicións recentes",
- "translate-dynagroup-additions-desc": "Este grupo de mensaxes mostra as mensaxes novas e modificadas.",
- "translate-dynagroup-by": "Tradución feita por {{GENDER:$1|$1}}",
- "translate-dynagroup-byc": "Tradución feita por {{GENDER:$1|$1}} ($2)",
- "translate-dynagroup-last": "Última modificación feita por {{GENDER:$1|$1}}",
- "translate-dynagroup-lastc": "Última modificación feita por {{GENDER:$1|$1}} ($2)",
- "translate-gethelp": "Axuda",
+ "translate-dynagroup-additions-desc": "Este grupo de mensaxes amosa as mensaxes novas e modificadas.",
"translate-msggroupselector-projects": "Grupo de mensaxes",
"translate-msggroupselector-search-placeholder": "Procurar nos grupos",
"translate-msggroupselector-search-all": "Todos",
@@ -314,14 +299,17 @@
"tux-status-translated": "Traducida",
"tux-status-saving": "Gardando...",
"tux-status-unsaved": "Sen gardar",
+ "tux-save-unknown-error": "Houbo un erro descoñecido.",
"tux-editor-placeholder": "A súa tradución",
+ "tux-editor-editsummary-placeholder": "Resumo opcional",
"tux-editor-paste-original-button-label": "Pegar o texto fonte",
"tux-editor-discard-changes-button-label": "Descartar as modificacións",
"tux-editor-save-button-label": "Gardar a tradución",
"tux-editor-skip-button-label": "Pasar á seguinte",
"tux-editor-cancel-button-label": "Cancelar",
"tux-editor-confirm-button-label": "Confirmar a tradución",
- "tux-editor-shortcut-info": "Prema en \"$1\" para gardar, en \"$2\" para pasar á seguinte mensaxe ou en \"$3\" para ver outros atallos.",
+ "tux-editor-proofread-button-label": "Marcar como revisada",
+ "tux-editor-shortcut-info": "Prema en \"$1\" para gardar, en \"$2\" para pasar á seguinte mensaxe, en \"$4\" para proporcionar un resumo ou en \"$3\" para ver outros atallos.",
"tux-editor-edit-desc": "Editar a documentación",
"tux-editor-add-desc": "Engadir a documentación",
"tux-editor-suggestions-title": "Suxestións",
@@ -339,12 +327,12 @@
"tux-editor-proofreading-mode": "Revisar",
"tux-editor-translate-mode": "Lista",
"tux-editor-proofreading-hide-own-translations": "Agochar as súas traducións",
- "tux-editor-proofreading-show-own-translations": "Mostrar as súas traducións",
+ "tux-editor-proofreading-show-own-translations": "Amosar as súas traducións",
"tux-proofread-action-tooltip": "Marcar como revisada",
"tux-proofread-edit-label": "Editar",
"tux-editor-page-mode": "Páxina",
"tux-editor-outdated-warning": "Esta tradución pode necesitar unha actualización.",
- "tux-editor-outdated-warning-diff-link": "Mostrar as diferenzas",
+ "tux-editor-outdated-warning-diff-link": "Amosar as diferenzas",
"tux-editor-doc-editor-placeholder": "Documentación da mensaxe",
"tux-editor-doc-editor-save": "Gardar a documentación",
"tux-editor-doc-editor-cancel": "Cancelar",
@@ -361,9 +349,9 @@
"tux-empty-list-translated": "Non hai mensaxes traducidas",
"tux-empty-list-translated-guide": "Pode axudar na tradución",
"tux-empty-list-translated-action": "Traducir",
- "tux-empty-no-messages-to-display": "Non hai ningunha mensaxe que mostrar.",
- "tux-empty-there-are-optional": "Hai mensaxes opcionais non mostradas na lista",
- "tux-empty-show-optional-messages": "Mostrar as mensaxes opcionais",
+ "tux-empty-no-messages-to-display": "Non hai ningunha mensaxe que amosar.",
+ "tux-empty-there-are-optional": "Hai mensaxes opcionais non amosadas na lista",
+ "tux-empty-show-optional-messages": "Amosar as mensaxes opcionais",
"tux-empty-no-outdated-messages": "Non hai mensaxes anticuadas",
"tux-empty-nothing-to-proofread": "Non hai nada que revisar",
"tux-empty-you-can-help-providing": "Pode axudar achegando traducións novas",
@@ -372,13 +360,15 @@
"tux-empty-list-other": "Non hai nada que traducir",
"tux-empty-list-other-guide": "Pode axudar na revisión das traducións existentes",
"tux-empty-list-other-action": "Revisar as traducións",
- "tux-empty-list-other-link": "Mostrar todas as mensaxes",
+ "tux-empty-list-other-link": "Amosar tódalas mensaxes",
"tux-editor-close-tooltip": "Pechar",
"tux-editor-expand-tooltip": "Expandir",
"tux-editor-collapse-tooltip": "Contraer",
+ "tux-editor-message-tools-show-editor": "Amosar no editor wiki",
"tux-editor-message-tools-history": "Historial",
"tux-editor-message-tools-delete": "Borrar",
"tux-editor-message-tools-translations": "Todas as traducións",
+ "tux-editor-message-tools-linktothis": "Ligazóns a esta mensaxe",
"tux-editor-loading": "Cargando...",
"translate-search-more-languages-info": "$1 {{PLURAL:$1|lingua|linguas}} máis",
"translate-statsbar-tooltip": "$1% traducidas, $2% revisadas",
@@ -386,5 +376,6 @@
"translate-search-more-groups-info": "$1 {{PLURAL:$1|grupo|grupos}} máis",
"translate-ulsdep-title": "Erro de configuración",
"translate-ulsdep-body": "A extensión de tradución depende da [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector extensión do selector universal de linguas].",
- "tux-session-expired": "Pechouse a súa sesión. Por favor, acceda ao sistema noutra lapela. Como alternativa, copie as traducións non gardadas, acceda ao sistema e regrese a esta páxina."
+ "tux-session-expired": "Pechouse a súa sesión. Por favor, acceda ao sistema noutra lapela. Como alternativa, copie as traducións non gardadas, acceda ao sistema, regrese a esta páxina e insira as súas traducións de novo.",
+ "tux-nojs": "Esta ferramenta non funciona sen JavaScript. Ou JavaScript está desactivado, ou non funcionou, ou este navegador non está soportado."
}
diff --git a/MLEB/Translate/i18n/core/gom-latn.json b/MLEB/Translate/i18n/core/gom-latn.json
index 783755e2..4a70db49 100644
--- a/MLEB/Translate/i18n/core/gom-latn.json
+++ b/MLEB/Translate/i18n/core/gom-latn.json
@@ -6,5 +6,6 @@
},
"translate-page-language": "Bhas",
"translate-language": "Bhas",
- "translate-mgs-column-language": "Bhas"
+ "translate-mgs-column-language": "Bhas",
+ "translate-documentation-language": "Sondexache documentacao"
}
diff --git a/MLEB/Translate/i18n/core/grc.json b/MLEB/Translate/i18n/core/grc.json
index f58fae47..4a4677ce 100644
--- a/MLEB/Translate/i18n/core/grc.json
+++ b/MLEB/Translate/i18n/core/grc.json
@@ -3,7 +3,8 @@
"authors": [
"Crazymadlover",
"LeighvsOptimvsMaximvs",
- "Omnipaedista"
+ "Omnipaedista",
+ "Gts-tg"
]
},
"translate": "Μεταγλωττίζειν",
@@ -52,5 +53,6 @@
"translate-percentage-complete": "Πλήρωσις",
"translate-percentage-fuzzy": "Ἀπηρχαιωμένη",
"translate-mgs-column-language": "Γλῶττα",
- "translate-save": "Γράφειν ($1)"
+ "translate-save": "Γράφειν ($1)",
+ "translate-documentation-language": "Τεκμηρίωσις μηνύματος"
}
diff --git a/MLEB/Translate/i18n/core/gsw.json b/MLEB/Translate/i18n/core/gsw.json
index c1593862..d4b633fe 100644
--- a/MLEB/Translate/i18n/core/gsw.json
+++ b/MLEB/Translate/i18n/core/gsw.json
@@ -9,11 +9,6 @@
},
"translate": "Ibersetze",
"translate-desc": "[[Special:Translate|Spezialsyte]] fir d Ibersetzig vu MediaWiki-Syschtemnochrichte",
- "translate-taskui-view": "Alli Nochrichte aazeige",
- "translate-taskui-untranslated": "Alli nit ibersetzte Mäldige aazeige",
- "translate-taskui-optional": "Alli optionale Mäldige aazeige",
- "translate-taskui-acceptqueue": "Nume Mäldige aazeige, wu ich cha akzeptiere",
- "translate-taskui-reviewall": "Alli Ibersetzige iberpriefe",
"translate-taskui-export-to-file": "Im syschtemeigene Format exportiere",
"translate-taskui-export-as-po": "Fir d Offline-Ibersetzig exportiere",
"translate-taction-translate": "Ibersetze",
@@ -42,7 +37,6 @@
"translate-page-description-hasoptional": "Die Mäldigsgruppe enthält optionali Mäldige.\nOptionali Mäldige sötte numme übersetzt werde, wänn's in dynrer Sprooch en Bedarf defür het, wie z.B. dass kei Läärzeiche bruucht werde oder s richtigi transliteriere vo Eigenäme. $1",
"translate-page-description-hasoptional-open": "Optionali Mäldige aazeige.",
"translate-page-edit": "bearbeite",
- "translate-ext-url": "<hr />Website: $1",
"translate-optional": "(optional)",
"translate-ignored": "(ignoriert)",
"translate-edit-title": "„$1“ bearbeite",
@@ -52,9 +46,7 @@
"translate-edit-no-information": "''Die Syschtemnochricht het no kei Dokumentation. Wänn Du weisch, wu un in welem Zämmehang si bruucht wird, no chasch andere Ibersetzer hälfe, wänn Du ne Dokumentation zuefiegsch.''",
"translate-edit-information": "Information iber d Syschtemnochricht ($1)",
"translate-edit-in-other-languages": "Syschtemnochricht in andere Sproche",
- "translate-edit-committed": "Aktuälli Ibersetzig",
"translate-edit-warnings": "Warnig iber uuvollständigi Ibersetzige",
- "translate-edit-tmsugs": "Vorschleg vum Ibersetzigsspycher",
"translate-edit-tmmatch-source": "Ibersetzigsquälltext: $1",
"translate-edit-tmmatch": "$1% Ibereinstimmig",
"translate-use-suggestion": "Di aktuäll Ibersetzig mit däm Vorschlag ersetze:",
@@ -137,7 +129,6 @@
"translate-statsf-language": "Komma-trännti Lischt vu dr Sprochcode:",
"translate-statsf-group": "Komma-trännti Lischt vu dr Gruppecode:",
"translate-statsf-submit": "Vorschou",
- "translate-tag-category": "Ibersetzbari Syte",
"translate-tag-page-desc": "Ibersetzig vu dr Wikisyte [[$2|$1]].",
"translate-sidebar-alltrans": "In andere Sproche",
"translations": "Alli Ibersetzige",
@@ -210,7 +201,6 @@
"translate-manage-toolong": "Di maximal Arbetsablauf-Zyt vu $1 Sekunde isch iberschritte wore.\nBitte schick s Format nonemol ab go mit em Arbetsablauf wytermache.",
"translate-manage-import-summary": "Am Importiere vun ere neje Version us ere extärne Quälle",
"translate-manage-conflict-summary": "Am Importiere vun ere neje Version us ere extärne Quälle. Bitte iberpriefe.",
- "translate-manage-fuzzy-summary": "D Nochrichtedefinition het sich gänderet",
"translate-manage-submit": "Uusfiere",
"translate-manage-intro-other": "Unte het s Lischt vu Ibersetzigsänderige in dr Sproch $1.\nBitte prief d Änderige un wehl e Aktion uus, wu Du witt uusfiere fir jedi Ibersetzig.\nWänn Du Änderige witt ignoriere, wäre si bim negschte Export ußer Chraft gsetzt.",
"translate-manage-import-ok": "Het e neji Version vu dr Syte $1 importiert.",
@@ -228,9 +218,7 @@
"translate-js-summary": "Zämmefassig:",
"translate-js-save": "Spychere",
"translate-js-next": "Spychere un di negscht ufmache",
- "translate-js-nonext": "Des isch di letscht Nochricht uf däre Syte gsi.",
"translate-js-skip": "Ibergumpe zue dr negschte",
- "translate-js-save-failed": "S Spychere isch fählgschlaa. Bitte due dää Fähler mälde.",
"translate-js-history": "Ibersetzigsgschicht",
"translate-js-support": "Frog stelle",
"translate-js-support-title": "Frog no Hilf, wänn s nit gnue Informatione git go die Nochricht richtig ibersetze.",
@@ -249,37 +237,16 @@
"translate-searchprofile-tooltip": "In allene Übersetzige sueche",
"translate-search-languagefilter": "Nooch Sprooche filtre:",
"translate-search-nofilter": "Nit nooch Sprooche filtre",
- "translate-messagereview-submit": "Aanee",
- "translate-messagereview-progress": "Akzeptier …",
- "translate-messagereview-failure": "Akzeptierig...fehlgschlo: $1",
- "translate-messagereview-done": "Akzeptiert",
- "translate-messagereview-reviews": "Akzeptiert vo {{PLURAL:$1|eme Benutzer|$1 Benutzer}}",
- "translate-messagereview-reviewswithyou": "Akzeptiert vu {{PLURAL:$1|eim Benutzer|$1 Benutzer, Du sälber mitzellt}}",
- "api-error-invalidrevision": "D Übersetzig het nit chönne gfunde werde",
- "api-error-unknownmessage": "D Noochricht het nit chönne gfunde werde",
- "api-error-fuzzymessage": "Die Übersetzig isch als veraltet markiert",
- "api-error-owntranslation": "Du chasch dyni eigni Übersetzige nit akzeptiere.",
- "translate-messagereview-no-fuzzy": "Veralteti Übersetzige chönne nit akzeptiert werde.",
- "translate-messagereview-no-own": "Du chasch dyni eigni Übersetzige nit akzeptiere.",
- "translate-messagereview-doit": "Die Übersetzig als richtig akzeptiere.",
"log-name-translationreview": "Übersetzigspriefer-Logbuech",
"log-description-translationreview": "Logbuech vo allene Übersetzigspriefige vo Übersetzige un Noochrichtegruppe.",
"logentry-translationreview-message": "$1 het d Übersetzig $3{{GENDER:$2|überprieft}}",
"translate-workflow-state-": "(nit gsetzt)",
"translate-workflowstatus": "Status: $1",
- "translate-workflow-set-do": "Yystelle",
"translate-workflow-set-doing": "Am Yystelle ...",
- "translate-workflow-set-done": "Yygstellt",
- "translate-workflow-set-error-alreadyset": "Dr aagforderet Status isch identisch mit em aktuälle Status.",
"translate-workflow-autocreated-summary": "Automatisch Aalege vu dr Syte fir Arbetsablaufstatus $1",
"translate-stats-workflow": "Status",
"translate-workflowgroup-label": "Arbetsablaufstatus",
"translate-workflowgroup-desc": "Die Nochrichtegruppe zeigt d Status zum Arbetsablauf bi Ibersetzige.\nD Status wäre mit dr Konfigurationsvariable <code lang=\"en\">$wgTranslateWorkflowStates</code> definiert.",
"translate-dynagroup-recent-label": "Aktuälli Ibersetzige",
- "translate-dynagroup-recent-desc": "Die Nochrichtegruppe zeigt alli aktuälle Ibersetzige in däre Sproch aa.\nAm nitzligschte isch si fir s Korrekturläse.",
- "translate-dynagroup-by": "Ibersetzig {{GENDER:$1|vum|vu dr|vu}} $1",
- "translate-dynagroup-byc": "Ibersetzig {{GENDER:$1|vum|vu dr|vu}} $1 ($2)",
- "translate-dynagroup-last": "Letschti Änderig {{GENDER:$1|vum|vu dr|vu}} $1",
- "translate-dynagroup-lastc": "Letschti Änderig {{GENDER:$1|vum|vu dr|vu}} $1 ($2)",
- "translate-gethelp": "Hilf"
+ "translate-dynagroup-recent-desc": "Die Nochrichtegruppe zeigt alli aktuälle Ibersetzige in däre Sproch aa.\nAm nitzligschte isch si fir s Korrekturläse."
}
diff --git a/MLEB/Translate/i18n/core/gu.json b/MLEB/Translate/i18n/core/gu.json
index 550a86b8..a8117dd8 100644
--- a/MLEB/Translate/i18n/core/gu.json
+++ b/MLEB/Translate/i18n/core/gu.json
@@ -4,23 +4,22 @@
"Ashok modhvadia",
"Dsvyas",
"KartikMistry",
- "Vyom"
+ "Vyom",
+ "NehalDaveND"
]
},
"translate": "ભાષાંતર",
"translate-desc": "મીડિયાવિકિ અને આગળ ભાષાંતરણ માટે [[Special:Translate|ખાસ પાનું]]",
- "translate-taskui-view": "બધાં સંદેશાઓ બતાવો",
- "translate-taskui-untranslated": "અભાષાંતરિત સંદેશાઓ બતાવો",
- "translate-taskui-optional": "વૈકલ્પિક સંદેશાઓ બતાવો",
- "translate-taskui-reviewall": "બધાં ભાષાંતરની ચકાસણી કરો",
"translate-taction-translate": "ભાષાંતર કરો",
"translate-taction-proofread": "પરીક્ષણ",
"translate-taction-lstats": "ભાષા અંકવિવરણ",
"translate-taction-mstats": "સંદેશા સમૂહ અંકવિવરણ",
"translate-taction-export": "નિકાસ",
+ "translate-taction-disabled": "આ વિકિ પર આ ક્રિયા નિષ્ક્રીય કરેલ છે.",
"translate-page-no-such-language": "નિર્દેશિત ભાષા અમાન્ય છે.",
"translate-page-no-such-group": "નિર્દેશિત સમુહ અમાન્ય છે.",
"translate-page-disabled": "આ સમુહમાં આ ભાષાનો અનુવાદ નિષ્ક્રિય કરી દેવાયો છે.\n\nકારણ:\n\n<em>$1</em>",
+ "translate-language-disabled": "આ ભાષામાં ભાષાંતર નિષ્ક્રીય છે.",
"translate-page-settings-legend": "ગોઠવણીઓ",
"translate-page-group": "જૂથ",
"translate-page-language": "ભાષા",
@@ -34,21 +33,23 @@
"translate-next": "પછીનું પાનું",
"translate-prev": "પહેલાંનું પાનું",
"translate-page-description-legend": "જૂથ વિશે માહિતી",
+ "translate-page-description-hasoptional-open": "વૈકલ્પિક સંદેશાઓ બતાવો.",
"translate-page-edit": "સંપાદન",
- "translate-ext-url": "<hr />વેબસાઇટ: $1",
"translate-optional": "વૈકલ્પિક",
"translate-ignored": "ઉપેક્ષીત",
"translate-edit-title": "\"$1\" સંપાદન કરો",
"translate-edit-definition": "સંદેશ વ્યાખ્યા",
"translate-edit-translation": "ભાષાંતર",
"translate-edit-contribute": "યોગદાન",
- "translate-edit-no-information": "''આ સંદેશામાં ઉપયોગીતાપ્રમાણ નથી.\n\nજો તમે જાણતા હો કે ક્યાં અને કેવી રીતે આ સંદેશો વપરાયો છે, તો તમે આ સંદેશામાં ઉપયોગીતાપ્રમાણ ઉમેરી અને અન્ય ભાષાંતરકારોને મદદ કરી શકો છો.''",
+ "translate-edit-no-information": "<em>આ સંદેશામાં દસ્તાવેજ નથી.\n\nજો તમે જાણતા હો કે ક્યાં અને કેવી રીતે આ સંદેશો વપરાયો છે, તો તમે આ સંદેશામાં દસ્તાવેજ ઉમેરી અને અન્ય ભાષાંતરકારોને મદદ કરી શકો છો.</em>",
"translate-edit-information": "સંદેશા વિશે માહિતી ($1)",
"translate-edit-in-other-languages": "અન્ય ભાષાઓમાં સંદેશો",
- "translate-edit-committed": "સોફ્ટવેરમાં વર્તમાન ભાષાંતર",
"translate-edit-warnings": "અધુરા ભાષાંતરો વિશે ચેતવણી",
- "translate-edit-tmsugs": "ભાષાંતર સ્મૃતિમાંથી સુચનો",
+ "translate-edit-tmmatch-source": "ભાષાંતર સ્ત્રોત લખાણ: $1",
+ "translate-edit-tmmatch": "$1% મેળ",
"translate-edit-askpermission": "પરવાનગી મેળવો",
+ "exporttranslations": "ભાષાંતરો નિકાસ કરો",
+ "translate-export-form-format": "શૈલી",
"translate-magic-pagename": "વિસ્તારિત મિડિયાવિકિ ભાષાંતર",
"translate-magic-module": "નમૂનો:",
"translate-magic-submit": "મેળવો",
@@ -64,7 +65,7 @@
"translate-magic-namespace": "નામાવકાશ નામો",
"translate-magic-notsaved": "આપનું સંપાદન સચવાયું નથી!",
"translate-magic-errors": "કૃપા કરી અહીં આપેલ {{PLURAL:$1|ક્ષતિ|ક્ષતિઓ}}ને ભાષાંતરમાં સુધારો:",
- "translate-magic-saved": "આપના ફેરફારો સફળતાપૂર્વક સચવાયા હતા.",
+ "translate-magic-saved": "આપના ફેરફારો સચવાયા હતા.",
"translate-checks-parameters": "અહીં આપેલ {{PLURAL:$2|પરિમાણ|પરિમાણો}}નો ઉપયોગ કરાયો નથી:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-parameters-unknown": "અહીં આપેલ {{PLURAL:$2|પરિમાણ|પરિમાણો}} અજાણ્યા છે:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-balance": "ત્યાં અસમાન સંખ્યાનાં {{PLURAL:$2|કૌંસ|કૌંસ}} છે:\n<strong><nowiki>$1</nowiki></strong>",
@@ -78,6 +79,8 @@
"prefs-translate": "ભાષાંતર વિકલ્પો",
"translate-pref-editassistlang-help": "અલ્પવિરામો વડે વિભાજીત ભાષાસંકેતોની યાદી.\n\nજ્યારે તમે ભાષાંતર કરતા હશો ત્યારે આ ભાષાઓમાં ભાષાંતરીત સંદેશાઓ જોવા મળશે.\n\nભાષાઓની ડિફોલ્ટ યાદી તમારી ભાષા પર આધારીત છે.",
"translate-pref-editassistlang-bad": "યાદી <nowiki>$1</nowiki> માં અમાન્ય ભાષાસંકેત.",
+ "translate-rcfilters-translations": "ભાષાંતરો",
+ "translate-rcfilters-translations-only-label": "ભાષાંતરો",
"translate-rc-translation-filter": "ભાષાંતરોને ચાળો:",
"translate-rc-translation-filter-no": "કશું નથી",
"translate-rc-translation-filter-only": "ફક્ત ભાષાંતરો બતાવો",
@@ -85,6 +88,9 @@
"translationstats": "ભાષાંતર અંક વિવરણ",
"translate-stats-edits": "સંપાદનો",
"translate-stats-users": "ભાષાંતરકર્તાઓ",
+ "translate-stats-registrations": "પંજીકરણ",
+ "translate-stats-reviews": "પરીક્ષણ",
+ "translate-stats-reviewers": "પુનરાવલોકન કરનારા",
"translate-statsf-intro": "તમે આ ફોર્મ વડે સરળ અંકગણતરીઓ કરી શકો છો.\n\nબધાજ મુલ્યોને ઉપલી અને નિચલી સીમાઓ છે.",
"translate-statsf-options": "આલેખ વિકલ્પો",
"translate-statsf-width": "પહોળાઇ પિક્સેલ્સમાં:",
@@ -101,17 +107,23 @@
"translate-statsf-count-users": "સક્રિય ભાષાંતરકારો",
"translate-statsf-count-registrations": "નવો સભ્ય",
"translate-statsf-count-reviews": "ભાષાંતર ચકાસણી",
+ "translate-statsf-count-reviewers": "પુનરાવલોકન કરનારા",
"translate-statsf-language": "અલ્પવિરામ વિભાજીત ભાષાસંહિતાઓની યાદી:",
"translate-statsf-group": "અલ્પવિરામ વિભાજીત સમુદાય સંહિતાઓની યાદી:",
"translate-statsf-submit": "પૂર્વદર્શન",
- "translate-tag-category": "ભાષાંતરયોગ્ય પાનાંઓ",
- "translate-tag-page-desc": "વિકિ પાનાં [[$2|$1]]નું ભાષાંતર.",
+ "translate-tag-page-desc": "વિકિ પાનાં [[$2|$1]]નું $3 ($4)થી ભાષાંતર.",
"translate-sidebar-alltrans": "બીજી ભાષાઓમાં",
"translations": "બધાં ભાષાંતરો",
"translate-translations-fieldset-title": "સંદેશ",
"translate-translations-messagename": "નામ:",
"translate-translations-project": "યોજના",
+ "translate-translations-history-short": "h",
"languagestats": "ભાષાનું અંક વિવરણ",
+ "languagestats-recenttranslations": "તાજેતરના ભાષાંતરો",
+ "translate-langstats-expand": "વિસ્તારો",
+ "translate-langstats-collapse": "સંકેલો",
+ "translate-langstats-expandall": "બધું વિસ્તારો",
+ "translate-langstats-collapseall": "બધું સંકેલો",
"translate-language-code": "ભાષાસંહિતા",
"translate-language-code-field-name": "ભાષાસંહિતા:",
"translate-language": "ભાષા",
@@ -119,24 +131,84 @@
"translate-untranslated": "અભાષાંતરીત",
"translate-percentage-complete": "સમાપ્તિ",
"translate-percentage-fuzzy": "કાલગ્રસ્ત",
+ "translate-ls-submit": "સાંખ્યિકી દેખાડો",
+ "translate-ls-column-group": "સંદેશ જૂથો",
+ "translate-mgs-pagename": "સંદેશા સમૂહ અંકવિવરણ",
+ "translate-mgs-fieldset": "સંદર્ભો દર્શાવો",
+ "translate-mgs-group": "સંદેશ જૂથ",
+ "translate-mgs-submit": "આંકડાકીય માહિતી દર્શાવો",
"translate-mgs-column-language": "ભાષા",
"supportedlanguages": "આધારિત ભાષાઓ",
"supportedlanguages-recenttranslations": "તાજેતરનાં ભાષાંતરો",
"translate-save": "સાચવો ($1)",
"translate-jssti-add": "સૂચિમાં ઉમેરો",
+ "translate-manage-import-new": "નવા સંદેશો $1",
+ "translate-manage-import-deleted": "દૂર કરેલ સંદેશ $1",
+ "translate-manage-action-import": "આયાત કરો",
"translate-manage-action-ignore": "અવગણો",
"importtranslations": "ભાષાંતરો આયાત કરો",
"translate-import-from-local": "સ્થાનિક ફાઇલ અપલોડ કરો:",
"translate-import-load": "ફાઇલ લાવો",
"translate-js-save": "સાચવો",
"translate-js-support": "પ્રશ્ન પૂછો",
+ "translate-gs-code": "નાકો",
+ "translate-gs-continent": "સામગ્રી",
+ "translate-gs-speakers": "વક્તાઓ",
+ "translate-gs-score": "સ્કોર",
+ "translate-gs-multiple": "એકથી વધું",
+ "translate-gs-count": "ગણના",
"translate-gs-total": "કુલ",
+ "translate-gs-avgscore": "સ્કોર પ્રતિશત્",
"translate-documentation-language": "સંદેશનું દસ્તાવેજીકરણ",
- "translate-messagereview-done": "પરીક્ષણ થયેલું",
- "translate-gethelp": "મદદ",
+ "translate-searchprofile": "ભાષાંતરો",
+ "translate-stats-workflow": "રાજ્ય",
+ "translate-msggroupselector-search-all": "બધા",
+ "translate-msggroupselector-search-recent": "હમણાનું",
+ "tux-languageselector": "માં ભાષાંતર કરો",
+ "tux-tab-all": "બધા",
+ "tux-tab-untranslated": "અભાષાંતરીત",
+ "tux-tab-outdated": "કાલગ્રસ્ત",
+ "tux-tab-translated": "ભાષાંતરીત",
"tux-tab-unproofread": "પરીક્ષણરહિત",
+ "tux-edit": "ફેરફાર કરો",
+ "tux-status-optional": "વૈકલ્પિક",
+ "tux-status-fuzzy": "કાલગ્રસ્ત",
"tux-status-proofread": "પરીક્ષણ થયેલું",
+ "tux-status-translated": "ભાષાંતરીત",
+ "tux-status-saving": "સંગ્રહ કરે છે...",
+ "tux-status-unsaved": "અસંગ્રહિત",
+ "tux-editor-placeholder": "તમારૂં ભાષાંતરણ",
+ "tux-editor-paste-original-button-label": "સ્રોત લખાણ વાપરો",
+ "tux-editor-cancel-button-label": "રદ કરો",
+ "tux-editor-confirm-button-label": "અનુવાદની ખાતરી કરો",
+ "tux-editor-suggestions-title": "સૂચન",
+ "tux-editor-in-other-languages": "અન્ય ભાષાઓમાં",
+ "tux-warnings-hide": "છુપાઓ",
+ "tux-editor-clear-translated": "ભાષાંતર કરેલ છુપાવો",
"tux-editor-proofreading-mode": "પરીક્ષણ",
+ "tux-editor-translate-mode": "યાદી",
+ "tux-editor-proofreading-hide-own-translations": "તમારા ભાષાંતરો છુપાવો",
+ "tux-editor-proofreading-show-own-translations": "તમારા ભાષાંતરો દર્શાવો",
+ "tux-proofread-edit-label": "ફેરફાર કરો",
"tux-editor-page-mode": "પાનું",
- "tux-empty-nothing-new-to-proofread": "પરીક્ષણ માટે નવું કંઈ નથી"
+ "tux-editor-outdated-warning-diff-link": "ભેદ દર્શાવો",
+ "tux-editor-doc-editor-placeholder": "સંદેશનું દસ્તાવેજીકરણ",
+ "tux-editor-doc-editor-save": "દસ્તાવેજીકરણ સાચવો",
+ "tux-editor-doc-editor-cancel": "રદ કરો",
+ "tux-messagetable-more-messages": "$1 વધુ {{PLURAL:$1|સંદેશ|સંદેશાઓ}}",
+ "tux-messagetable-loading-messages": "લાવે છે {{PLURAL:$1|સંદેશ|સંદેશાઓ}}...",
+ "tux-empty-list-translated-action": "અનુવાદ કરો",
+ "tux-empty-nothing-new-to-proofread": "પરીક્ષણ માટે નવું કંઈ નથી",
+ "tux-empty-list-other-action": "ભાષાંતરનું પુનરાવલોકન",
+ "tux-empty-list-other-link": "બધાં સંદેશાઓ બતાવો",
+ "tux-editor-close-tooltip": "બંધ કરો",
+ "tux-editor-expand-tooltip": "વિસ્તારો",
+ "tux-editor-collapse-tooltip": "સંકેલો",
+ "tux-editor-message-tools-show-editor": "વિકિ સંપાદકમાં દર્શાવો",
+ "tux-editor-message-tools-history": "ઇતિહાસ",
+ "tux-editor-message-tools-delete": "રદ કરો",
+ "tux-editor-message-tools-translations": "બધાં ભાષાંતરો",
+ "tux-editor-message-tools-linktothis": "આ સંદેશા પરની કડી",
+ "tux-editor-loading": "લવાઇ રહ્યું છે...",
+ "translate-search-more-languages-info": "$1 વધુ {{PLURAL:$1|ભાષા|ભાષાઓ}}"
}
diff --git a/MLEB/Translate/i18n/core/ha.json b/MLEB/Translate/i18n/core/ha.json
index c9271df2..767cae16 100644
--- a/MLEB/Translate/i18n/core/ha.json
+++ b/MLEB/Translate/i18n/core/ha.json
@@ -1,4 +1,9 @@
{
- "@metadata": [],
- "translate-magic-cm-comment": "Bahasi:"
+ "@metadata": {
+ "authors": [
+ "Ammarpad"
+ ]
+ },
+ "translate-magic-cm-comment": "Bahasi:",
+ "supportedlanguages-summary": "Wannan shine jerin dukkan harsunan dake akwai a {{SITENAME}}, tare da wanda suke aikin fassara akan harshen."
}
diff --git a/MLEB/Translate/i18n/core/hak.json b/MLEB/Translate/i18n/core/hak.json
index 2820439e..7ae8a8dc 100644
--- a/MLEB/Translate/i18n/core/hak.json
+++ b/MLEB/Translate/i18n/core/hak.json
@@ -5,5 +5,6 @@
"Jetlag"
]
},
- "translate-page-edit": "編寫"
+ "translate-page-edit": "編寫",
+ "translate-documentation-language": "Sin-sit sot-mìn vùn-khien"
}
diff --git a/MLEB/Translate/i18n/core/he.json b/MLEB/Translate/i18n/core/he.json
index bea9afbe..97bfefa2 100644
--- a/MLEB/Translate/i18n/core/he.json
+++ b/MLEB/Translate/i18n/core/he.json
@@ -17,22 +17,18 @@
},
"translate": "תרגום",
"translate-desc": "[[Special:Translate|דף מיוחד]] לתרגום מדיה־ויקי ומעבר לכך",
- "translate-taskui-view": "הצגת כל ההודעות",
- "translate-taskui-untranslated": "הצגת הודעות שאינן מתורגמות",
- "translate-taskui-optional": "הצגת הודעות אופציונליות",
- "translate-taskui-acceptqueue": "רק הודעות שאני יכול לסקור",
- "translate-taskui-reviewall": "לסקור את כל ההודעות",
+ "translate-fuzzybot-desc": "זה חשבון מערכת מיוחד שמשמש את [https://www.mediawiki.org/wiki/Extension:Translate ההרחבה Translate] של מדיה־ויקי כדי לטפל בתרגומים.\nהחשבון הזה הוא חלק מתוכנת מדיה־ויקי ואינו בבעלות של שום משתמש.",
"translate-taskui-export-to-file": "לייצא בתסדיר ילידי",
"translate-taskui-export-as-po": "לייצא לתרגום בלתי־מקוון",
"translate-taction-translate": "תרגום",
"translate-taction-proofread": "סקירה",
"translate-taction-lstats": "סטטיסטיקות שפה",
- "translate-taction-mstats": "סטטיסטיקות על קבוצות הודעות",
+ "translate-taction-mstats": "סטטיסטיקות של קבוצת ההודעות",
"translate-taction-export": "ייצוא",
"translate-taction-disabled": "הפעולה הזאת אינה מופעלת בוויקי הזה",
"translate-page-no-such-language": "השפה שצוינה שגויה.",
"translate-page-no-such-group": "הקבוצה שצוינה שגויה.",
- "translate-page-disabled": "התרגומים לשפה זו בקבוצה זו בוטלו מהסיבה הבאה:\n\n'<em>$1</em>'",
+ "translate-page-disabled": "התרגומים לשפה זו בקבוצה זו בוטלו.\nהסיבה לכך היא:\n\n<em>$1</em>",
"translate-language-disabled": "תרגום לשפה הזאת כבוי.",
"translate-page-settings-legend": "הגדרות",
"translate-page-group": "קבוצה",
@@ -50,7 +46,6 @@
"translate-page-description-hasoptional": "קבוצת ההודעות הזאת מכילה הודעות אופציונליות.\nיש לתרגם הודעות אופציונליות רק אם לשפתכם יש דרישות מיוחדות\nכגון אי־שימוש ברווחים או תעתיק ייחודי של שמות פרטיים. $1",
"translate-page-description-hasoptional-open": "הצגת הודעות אופציונליות.",
"translate-page-edit": "עריכה",
- "translate-ext-url": "<hr />אתר אינטרנט: $1",
"translate-optional": "(אופציונלי)",
"translate-ignored": "(לא לתרגום)",
"translate-edit-title": "עריכת \"$1\"",
@@ -60,14 +55,17 @@
"translate-edit-no-information": "<em>להודעה זו אין תיעוד.\nאם ידוע לך היכן או כיצד משתמשים בהודעה הזאת, באפשרותך לעזור למתרגמים אחרים באמצעות הוספת תיעוד להודעה זו.</em>",
"translate-edit-information": "מידע על ההודעה ($1)",
"translate-edit-in-other-languages": "ההודעה בשפות אחרות",
- "translate-edit-committed": "התרגום הנוכחי בתוכנה",
"translate-edit-warnings": "אזהרות על תרגומים חלקיים",
- "translate-edit-tmsugs": "הצעות מזיכרון התרגום",
"translate-edit-tmmatch-source": "טקסט המקור של התרגום: $1",
"translate-edit-tmmatch": "רמת התאמה: $1%",
"translate-use-suggestion": "החלפת התרגום הנוכחי בהצעה הזאת.",
"translate-edit-nopermission": "נדרשות הרשאות כדי לתרגם הודעות.",
"translate-edit-askpermission": "לקבל הרשאה",
+ "exporttranslations": "ייצוא תרגומים",
+ "translate-export-form-format": "תסדיר",
+ "translate-export-invalid-format": "נא לציין תסדיר תקין.",
+ "translate-export-not-supported": "התכונה \"ייצוא תרגומים\" אינה נתמכת.",
+ "translate-export-format-notsupported": "תסדיר הייצוא שצוין אינו נתמך על־ידי קבוצת ההודעות.",
"translate-magic-pagename": "תרגום מורחב של מדיה־ויקי",
"translate-magic-help": "באפשרותכם לתרגם כינויים לדפים מיוחדים, מילות קסם ושמות מרחבי שם.\n\nלשמות דפים מיוחדים ולמילות קסם יכולים להיות כמה תרגומים.\nיש להפריד את התרגומים באמצעות פסיק (,).\nלמרחבי שם יכול להיות תרגום אחד בלבד.\n\nתרגום מרחב השם של שיחת פרויקט <code dir=\"ltr\">$1 talk</code> עשוי להיות מסובך.\nהמחרוזת <code>$1</code> מוחלפת בשם האתר, למשל (<code>{{ns:project_talk}}</code>).\nאם בשפה שלכם קשה ליצור ביטוי תקין בצורה הזאת, נא להודיע לנו על כך בדף [[Support]].\n\nעליכם להיות בקבוצת מתרגמים כדי לשמור שינויים.\nהשינויים לא יישמרו עד שתלחצו על כפתור השמירה שלהלן.",
"translate-magic-module": "מידע לתרגום:",
@@ -86,7 +84,7 @@
"translate-magic-namespace": "שמות מרחבי שם",
"translate-magic-notsaved": "עריכתכם לא נשמרה!",
"translate-magic-errors": "נא לתקן את {{PLURAL:$1|השגיאה הבאה|$1 השגיאות הבאות}} בתרגום:",
- "translate-magic-saved": "השינויים שלך נשמרו בהצלחה.",
+ "translate-magic-saved": "השינויים שלך נשמרו.",
"translate-checks-parameters": "{{PLURAL:$2|הפרמטר הבא אינו|הפרמטרים הבאים אינם}} בשימוש:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-parameters-unknown": "{{PLURAL:$2|הפרמטר הבא אינו ידוע|הפרמטרים הבאים אינם ידועים}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-balance": "מספר {{PLURAL:$2|הסוגריים|הסוגריים}} אינו מאוזן:\n<strong><nowiki>$1</nowiki></strong>",
@@ -105,15 +103,24 @@
"translate-pref-nonewsletter": "אל תשלחו אליי חדשות תקופתיות בדואר אלקטרוני",
"translate-pref-editassistlang": "שפות מסייעות:",
"prefs-translate": "אפשרויות תרגום",
- "translate-pref-editassistlang-help": "רשימה מופרדת בפסיקים של קודי שפות.\nתרגום של ההודעה לשפות אלו יופיע בעת תרגום.\nרשימת שפות התחלתית תלויה בשפה שאתם דוברים.",
+ "translate-pref-editassistlang-help": "רשימת קודים של שפות, כאשר פסיקים מפרידים בין שפה לשפה.\nבעת תרגום של הודעה, יוצגו התרגומים של ההודעה לשפות העזר הללו.\nשפת העזר המשמשת כברירת מחדל תלויה בשפת הממשק שלך.",
"translate-pref-editassistlang-bad": "קוד שפה שגוי ברשימה:\n<nowiki>$1</nowiki>.",
"right-translate": "עריכה באמצעות ממשק התרגום",
"right-translate-manage": "ניהול קבוצות הודעה",
- "action-translate-manage": "לנהל קבוצות הודעות",
+ "action-translate-manage": "לנהל קבוצות הודעה",
"right-translate-import": "ייבוא תרגומים לא מקוונים",
- "action-translate-import": "לייבא תרגומים הלתי־מקוונים",
+ "action-translate-import": "לייבא תרגומים לא מקוונים",
"right-translate-messagereview": "סקירת תרגומים",
- "right-translate-groupreview": "שינוי מצב סקירת תרגום של קבוצות הודעות",
+ "action-translate-messagereview": "לסקור תרגומים",
+ "right-translate-groupreview": "שינוי מצב זרימת העבודה של קבוצות הודעות",
+ "action-translate-groupreview": "לשנות מצב זרימת עבודה של קבוצות הודעות",
+ "translate-rcfilters-translations": "תרגומים",
+ "translate-rcfilters-translations-only-label": "תרגומים",
+ "translate-rcfilters-translations-only-desc": "שינויים לדפים מתורגמים.",
+ "translate-rcfilters-translations-filter-label": "לא תרגומים",
+ "translate-rcfilters-translations-filter-desc": "כל השנויים שאינם תרגומים.",
+ "translate-rcfilters-translations-site-label": "הודעות אתר",
+ "translate-rcfilters-translations-site-desc": "התאמות מקומיות של הודעות אתר במרחב MediaWiki.",
"translate-rc-translation-filter": "סינון תרגומים:",
"translate-rc-translation-filter-no": "ללא סינון",
"translate-rc-translation-filter-only": "להציג תרגומים בלבד",
@@ -129,7 +136,7 @@
"translate-statsf-options": "אפשרויות גרף",
"translate-statsf-width": "רוחב בפיקסלים:",
"translate-statsf-height": "אורך בפיקסלים:",
- "translate-statsf-days": "תאריך תחילה:",
+ "translate-statsf-days": "מספר ימים:",
"translate-statsf-start": "תאריך תחילה:",
"translate-statsf-scale": "יחידת זמן:",
"translate-statsf-scale-months": "חודשים",
@@ -145,7 +152,6 @@
"translate-statsf-language": "רשימת קודי שפה (מופרדים בפסיק):",
"translate-statsf-group": "רשימת קודי קבוצות (מופרדים בפסיק):",
"translate-statsf-submit": "תצוגה מקדימה",
- "translate-tag-category": "דפים שאפשר לתרגם",
"translate-tag-page-desc": "תרגום של דף הוויקי [[$2|$1]] מ־$3 ($4).",
"translate-sidebar-alltrans": "בשפות אחרות",
"translations": "כל התרגומים",
@@ -177,7 +183,7 @@
"translate-untranslated": "לא מתורגמות",
"translate-percentage-complete": "התקדמות",
"translate-percentage-fuzzy": "לא מעודכנות",
- "translate-languagestats-overall": "כל הקבוצות ההודעות יחד",
+ "translate-languagestats-overall": "כל קבוצות ההודעות יחד",
"translate-ls-submit": "הצגת סטטיסטיקות",
"translate-ls-column-group": "קבוצת הודעות",
"translate-mgs-pagename": "סטטיסטיקת קבוצת הודעות",
@@ -187,16 +193,18 @@
"translate-mgs-noempty": "לא להציג שפות ללא שום תרגום",
"translate-mgs-submit": "הצגת סטטיסטיקות",
"translate-mgs-column-language": "שפה",
- "translate-mgs-totals": "כל השפות ביחד",
+ "translate-mgs-totals": "{{PLURAL:$1|שפה אחת|כל $1 השפות ביחד}}",
"translate-mgs-invalid-group": "הקבוצה $1 אינה קיימת.",
"translate-mgs-nothing": "אין מה להראות עבור הסטטיסטיקות המבוקשות.",
"supportedlanguages": "שפות נתמכות",
"supportedlanguages-summary": "הדף הזה מציג רשימה של כל השפות שהאתר {{SITENAME}} תומך בהן,\nעם שמות של מתרגמים שעובדים על אותן השפות.\nגודל שם המתרגם יחסי למספר העריכות שלו.\nצבע הקו התחתי מראה כמה זמן המתרגם פעיל כאן.",
"supportedlanguages-colorlegend": "מקרא לצבעים: תרגום אחרון לפני $1 ימים",
+ "supportedlanguages-sqlite-error": "אין תמיכה ב־SQLite",
"supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|מתרגם|מתרגמת}}|מתרגמים}}: $1",
"supportedlanguages-recenttranslations": "תרגומים אחרונים",
"supportedlanguages-count": "{{PLURAL:$1|שפה אחת|$1 שפות}} בסך הכול.",
"supportedlanguages-activity": "$1: {{PLURAL:$2|עריכה אחת|$2 עריכות}} - עריכה אחרונה לפני {{PLURAL:$3|יום אחד|$3 ימים}}",
+ "abusefilter-edit-builder-vars-translate-source-text": "טקסט המקור של יחידת התרגום",
"translate-save": "שמירה ($1)",
"translate-jssti-add": "הוספה לרשימה",
"managemessagegroups": "ניהול קבוצות הודעות",
@@ -206,13 +214,13 @@
"translate-smg-submitted": "הגדרות ההודעות עודכנו. השינויים מעובדים ברקע.",
"translate-smg-more": "יהיו שינויים נוספים שיהיה צורך לעבד אחרי שליחת השינויים האלה.",
"translate-smg-left": "תוכן ההודעה בוויקי",
- "translate-smg-right": "שינויים קרובים",
+ "translate-smg-right": "שינויים נכנסים",
"translate-manage-import-diff": "הודעה $1 | פעולות: $2",
"translate-manage-import-new": "הודעה חדשה $1",
"translate-manage-import-deleted": "הודעה שנמחקה $1",
"translate-manage-action-import": "יבוא",
"translate-manage-action-conflict": "לייבא ולטשטש",
- "translate-manage-action-ignore": "התעלמות",
+ "translate-manage-action-ignore": "להתעלם",
"translate-manage-action-fuzzy": "לייבא ולטשטש תרגומים",
"translate-manage-nochanges": "אין שינויים להגדרות ההודעות עבור קבוצה זו.",
"translate-manage-nochanges-other": "אין שינויים עבור השפה הזאת.\nהשתמשו בקישור למטה כדי לחוזר לתצוגת פרטי קבוצה.",
@@ -220,7 +228,6 @@
"translate-manage-toolong": "זמן העיבוד המרבי של {{PLURAL:$1|שנייה אחת|$1 שניות}} תם.\nנא לשלוח מחדש את הטופס כדי להמשיך בעיבודו.",
"translate-manage-import-summary": "יבוא גרסה חדשה ממקור חיצוני",
"translate-manage-conflict-summary": "מייבא גרסה חדשה ממקור חיצוני.\nנא לבדוק.",
- "translate-manage-fuzzy-summary": "הגדרת ההודעה שונתה",
"translate-manage-submit": "הפעלה",
"translate-manage-intro-other": "להלן רשימה של שינויי תרגום ב$1.\nנא לסקור את השינויים ולבחור את הפעולה שברצונך לעשות עבור כל תרגום.\nהתעלמות מהשינויים תגרום לכך שהם יידרסו בייצוא הבא.",
"translate-manage-import-ok": "יובא: $1",
@@ -229,7 +236,7 @@
"translate-import-from-local": "העלאת קובץ מקומי:",
"translate-import-load": "טעינת קובץ",
"translate-import-err-dl-failed": "לא ניתן לאחזר את הקובץ:\n$1",
- "translate-import-err-ul-failed": "העלאת הקובץ לא הצליחה",
+ "translate-import-err-ul-failed": "העלאת הקובץ לא עבדה",
"translate-import-err-invalid-title": "שם הקובץ שצוין, <nowiki>$1</nowiki>, אינו תקין.",
"translate-import-err-no-such-file": "הקובץ <nowiki>$1</nowiki> אינו קיים או שהוא לא הועלה באופן מקומי.",
"translate-import-err-stale-group": "קבוצת ההודעות שהקובץ הזה שייך אליה אינה קיימת.",
@@ -238,9 +245,7 @@
"translate-js-summary": "תקציר:",
"translate-js-save": "שמירה",
"translate-js-next": "לשמור ולפתוח את ההודעה הבאה",
- "translate-js-nonext": "זו הייתה ההודעה האחרונה בדף זה.",
"translate-js-skip": "מעבר להודעה הבאה",
- "translate-js-save-failed": "השמירה נכשלה. נא לדווח את השגיאה הזאת.",
"translate-js-history": "היסטוריית התרגום",
"translate-js-support": "לשאול שאלה",
"translate-js-support-title": "לבקש עזרה אם אין מספיק מידע לתרגום נכון של ההודעה הזאת.",
@@ -257,23 +262,9 @@
"translate-documentation-language": "תיעוד הודעות",
"translate-searchprofile": "תרגומים",
"translate-searchprofile-tooltip": "חיפוש בכל התרגומים",
+ "translate-searchprofile-note": "ניתן למצוא תוצאות נוספות באמצעות [$1 חיפוש תרגומים].",
"translate-search-languagefilter": "סינון לפי שפה:",
"translate-search-nofilter": "ללא סינון",
- "translate-messagereview-submit": "לסמן שההודעה נסקרה",
- "translate-messagereview-progress": "מתבצע סימון שההודעה נסקרה...",
- "translate-messagereview-failure": "סימון שההודעה נסקרה נכשל: $1",
- "translate-messagereview-done": "נסקרה",
- "translate-messagereview-reviews": "נסקרה על־ידי {{PLURAL:$1|משתמש אחד|$1 משתמשים}}",
- "translate-messagereview-reviewswithyou": "{{PLURAL:$1|סקרת את ההודעה הזאת|ההודעה אושרה על־ידי $1 משתמשים, כולל אותך}}",
- "api-error-invalidrevision": "התרגום לא נמצא",
- "api-error-unknownmessage": "ההודעה לא נמצאה",
- "api-error-fuzzymessage": "ההודעה מסומנת כמטושטשת",
- "api-error-owntranslation": "לא ניתן לסקור תרגום של עצמך",
- "translate-messagereview-no-fuzzy": "לא ניתן לסקור תרגומים בלתי־מעודכנים.",
- "translate-messagereview-no-own": "לא ניתן לסקור תרגומים של עצמך.",
- "translate-messagereview-doit": "לסמן שהתרגום הזה נסקר.",
- "group-translate-proofr.css": "/* הסגנונות הנכתבים כאן ישפיעו על סוקרי תרגומים בלבד */",
- "group-translate-proofr.js": "/* כל סקריפט JavaScript שנכתב כאן ירוץ עבור סוקרי תרגומים בלבד */",
"log-name-translationreview": "יומן סקירת תרגומים",
"log-description-translationreview": "יומן של כל הסקירות של תרגומים ושל קבוצות תרגומים.",
"logentry-translationreview-message": "$1 {{GENDER:$2|סקר|סקרה}} את התרגום $3",
@@ -286,29 +277,21 @@
"action-translate-sandboxaction": "לבצע פעולות שמאושרות למשתמשים בארגז חול",
"translate-workflow-state-": "(לא מוגדר)",
"translate-workflowstatus": "מצב: $1",
- "translate-workflow-set-do": "הגדרה",
"translate-workflow-set-doing": "מתבצעת הגדרה...",
- "translate-workflow-set-done": "הוגדר!",
- "translate-workflow-set-error-alreadyset": "המצב החדש שביקשת להגדיר כבר מוגדר כעת.",
- "translate-workflow-autocreated-summary": "יצירה אוטומטית של דף עם מצב התרגום $1",
+ "translate-workflow-autocreated-summary": "יצירה אוטומטית של דף עם מצב זרימת עבודה $1",
"translate-stats-workflow": "מצב",
- "translate-workflowgroup-label": "מצבי תרגום",
- "translate-workflowgroup-desc": "קבוצת ההודעות הזאת מציגה את המצבים האפשריים של תרגום הודעות.\nהמצבים מוגדרים במשתנה ‎$wgTranslateWorkflowStates.",
+ "translate-workflowgroup-label": "מצבי זרימת עבודה",
+ "translate-workflowgroup-desc": "קבוצת ההודעות הזאת מציגה את המצבים האפשריים של זרימת העבודה של תרגום.\nהמצבים מוגדרים במשתנה ‎$wgTranslateWorkflowStates.",
"translate-dynagroup-recent-label": "תרגומים אחרונים",
"translate-dynagroup-recent-desc": "קבוצת ההודעות הזאת מציגה את כל התרגומים האחרונים לשפה הזאת.\nזה שימושי בעיקר לסקירה.",
"translate-dynagroup-additions-label": "תוספות אחרונות",
"translate-dynagroup-additions-desc": "קבוצת ההודעות הזאת מציגה הודעות חדשות והודעות ששונו.",
- "translate-dynagroup-by": "{{GENDER:$1|תרגם|תרגמה}}",
- "translate-dynagroup-byc": "{{GENDER:$1|תרגם|תרגמה}} ($2)",
- "translate-dynagroup-last": "שונה לאחרונה על־ידי {{GENDER:$1|$1}}",
- "translate-dynagroup-lastc": "שונה לאחרונה על־ידי {{GENDER:$1|$1}} ($2)",
- "translate-gethelp": "עזרה",
"translate-msggroupselector-projects": "קבוצות הודעות",
"translate-msggroupselector-search-placeholder": "חיפוש קבוצה",
"translate-msggroupselector-search-all": "הכול",
"translate-msggroupselector-search-recent": "אחרונות",
"translate-msggroupselector-view-subprojects": "הצגת {{PLURAL:$1|תת־מיזם אחד|$1 תת־מיזמים}}",
- "tux-languageselector": "שפה היעד לתרגום",
+ "tux-languageselector": "שפה היעד לתרגום:",
"tux-tab-all": "הכול",
"tux-tab-untranslated": "לא מתורגמות",
"tux-tab-outdated": "לא עדכניות",
@@ -321,14 +304,17 @@
"tux-status-translated": "מתורגמת",
"tux-status-saving": "מתבצעת שמירה...",
"tux-status-unsaved": "לא שמורה",
+ "tux-save-unknown-error": "אירעה שגיאה בלתי ידועה.",
"tux-editor-placeholder": "התרגום שלך",
+ "tux-editor-editsummary-placeholder": "תקציר עריכה (לא חובה)",
"tux-editor-paste-original-button-label": "הדבקת טקסט המקור",
"tux-editor-discard-changes-button-label": "ביטול שינויים",
"tux-editor-save-button-label": "שמירת תרגום",
"tux-editor-skip-button-label": "מעבר להודעה הבאה",
"tux-editor-cancel-button-label": "ביטול",
"tux-editor-confirm-button-label": "אישור תרגום",
- "tux-editor-shortcut-info": "\"$1\" לשמירה, \"$2\" למעבר להודעה הבאה, \"$3\" להצגת קיצורים אחרים.",
+ "tux-editor-proofread-button-label": "לסמן שהתרגום נסקר",
+ "tux-editor-shortcut-info": "\"$1\" לשמירה, \"$2\" למעבר להודעה הבאה,\"$4\" לכתיבת תקציר, או \"$3\" להצגת קיצורים אחרים.",
"tux-editor-edit-desc": "עריכת תיעוד",
"tux-editor-add-desc": "הוספת תיעוד",
"tux-editor-suggestions-title": "הצעות",
@@ -383,9 +369,11 @@
"tux-editor-close-tooltip": "סגירה",
"tux-editor-expand-tooltip": "הרחבה",
"tux-editor-collapse-tooltip": "צמצום",
+ "tux-editor-message-tools-show-editor": "הצגה בעורך ויקי",
"tux-editor-message-tools-history": "היסטוריה",
"tux-editor-message-tools-delete": "מחיקה",
"tux-editor-message-tools-translations": "כל התרגומים",
+ "tux-editor-message-tools-linktothis": "קישור להודעה הזאת",
"tux-editor-loading": "טעינה...",
"translate-search-more-languages-info": "עוד {{PLURAL:$1|שפה אחת|$1 שפות}}",
"translate-statsbar-tooltip": "$1% תורגם, $2% נסקר",
@@ -393,5 +381,6 @@
"translate-search-more-groups-info": "עוד {{PLURAL:$1|קבוצה אחת|$1 קבוצות}}",
"translate-ulsdep-title": "שגיאת הגדרות",
"translate-ulsdep-body": "ההרחבה Translate משתמשת ב[https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector הרחבה Universal Language Selector].",
- "tux-session-expired": "אינך נמצא בחשבון עוד. נא להיכנס בלשונית אחרת. לחלופין, יש להעתיק תרגומים שלא נשמרו, להיכנס ולחזור לדף הזה."
+ "tux-session-expired": "אינך נמצא בחשבון עוד. נא להיכנס בלשונית אחרת. לחלופין, יש להעתיק תרגומים שלא נשמרו, להיכנס, לחזור לדף הזה, ולהזין שוב את התרגומים שלך.",
+ "tux-nojs": "הדף הזה דורש שימוש ב־JavaScript. התמיכה ב־JavaScript כבויה, לא פעלה, או שהדפדפן הזה אינו נתמך."
}
diff --git a/MLEB/Translate/i18n/core/hi.json b/MLEB/Translate/i18n/core/hi.json
index 0c011a8a..e4607bfd 100644
--- a/MLEB/Translate/i18n/core/hi.json
+++ b/MLEB/Translate/i18n/core/hi.json
@@ -7,13 +7,19 @@
"Karthi.dr",
"Kaustubh",
"Knightsofdawn",
- "Siddhartha Ghai"
+ "Siddhartha Ghai",
+ "NehalDaveND",
+ "संजीव कुमार",
+ "Sfic"
]
},
"translate": "अनुवाद",
- "translate-taskui-view": "सभी सन्देश दिखाए",
- "translate-taskui-untranslated": "सारे अनअनुवादित सन्देश दिखाए",
- "translate-page-disabled": "इस भा्षा के इस समूह में अनुवाद बंद हैं. कारण:\n<em>$1</em>",
+ "translate-taction-translate": "अनुवाद",
+ "translate-taction-proofread": "अवलोकन",
+ "translate-taction-lstats": "भाषा सांख्यिकी",
+ "translate-taction-mstats": "भाषा-समूह सांख्यिकी",
+ "translate-taction-export": "निर्यात",
+ "translate-page-disabled": "इस भाषा का इस समूह में अनुवाद बन्द है। कारण:\n<em>$1</em>",
"translate-page-settings-legend": "सेटिंग्स",
"translate-page-group": "समूह",
"translate-page-language": "भाषा",
@@ -27,8 +33,8 @@
"translate-page-description-legend": "दल के बारे में जानकारी",
"translate-page-description-hasoptional-open": "वैकल्पिक संदेश दिखाएँ ।",
"translate-page-edit": "सम्पादन",
- "translate-ext-url": "<hr />वेबसाइट: $1",
"translate-optional": "(वैकल्पिक)",
+ "translate-ignored": "(अवगणित)",
"translate-edit-title": "सम्पादन \"$1\"",
"translate-edit-definition": "संदेश व्याख्या",
"translate-edit-translation": "अनुवाद",
@@ -36,7 +42,8 @@
"translate-edit-information": "संदेश ($1) के बारे में जानकारी",
"translate-edit-in-other-languages": "संदेश अन्य भाषा में",
"translate-edit-tmmatch": "$1% मैच",
- "translate-edit-askpermission": "अनुमति के लिए अनुरोध",
+ "translate-edit-askpermission": "अनुमति लें",
+ "translate-export-form-format": "प्रारूप",
"translate-magic-pagename": "एक्स्टेंडेड मीडियाविकि अनुवाद",
"translate-magic-module": "मोड्यूल:",
"translate-magic-submit": "खोजें",
@@ -46,6 +53,7 @@
"translate-magic-cm-comment": "टिप्पणी:",
"translate-magic-cm-save": "संजोयें",
"translate-magic-words": "जादूई शब्द",
+ "translate-magic-namespace": "नामस्थान नाम",
"translate-pref-editassistlang": "सहायक भाषा:",
"prefs-translate": "अनुवाद विकल्प",
"right-translate-messagereview": "अनुवाद समीक्षा",
@@ -56,6 +64,8 @@
"translate-stats-edits": "सम्पादन",
"translate-stats-users": "अनुवादक",
"translate-stats-registrations": "पंजीकरण",
+ "translate-stats-reviews": "पुनरीक्षक",
+ "translate-stats-reviewers": "पुनरीक्षक",
"translate-statsf-options": "ग्राफ बिकल्प",
"translate-statsf-width": "चौड़ाई पिक्सेल में:",
"translate-statsf-height": "ऊंचाई पिक्सेल में:",
@@ -70,14 +80,22 @@
"translate-statsf-count-edits": "संपादनोंकी संख्या",
"translate-statsf-count-users": "सक्रिय अनुबादक",
"translate-statsf-count-registrations": "नया सदस्य",
+ "translate-statsf-count-reviews": "अनुवाद समीक्षा",
+ "translate-statsf-count-reviewers": "पुनरीक्षक",
"translate-statsf-submit": "पूर्वावलोकन",
+ "translate-tag-page-desc": "$3 ($4) से [[$2|$1]] विकि पृष्ठ का अनुवाद है।",
"translate-sidebar-alltrans": "अन्य भाषा में",
"translations": "सभी अनुवाद",
"translate-translations-fieldset-title": "संदेश",
"translate-translations-messagename": "नाम:",
"translate-translations-project": "प्रकल्प:",
+ "translate-translations-history-short": "h",
"languagestats": "भाषा आकलन",
"languagestats-recenttranslations": "हाल ही में हुए अनुवाद",
+ "translate-langstats-expand": "विस्तार करें",
+ "translate-langstats-collapse": "छोटा करें",
+ "translate-langstats-expandall": "सब वस्तृत करें",
+ "translate-langstats-collapseall": "सब छोटा करें",
"translate-language-code": "भाषा कोड",
"translate-language-code-field-name": "भाषा कोड:",
"translate-language": "भाषा",
@@ -99,7 +117,7 @@
"translate-mgs-invalid-group": "विनिर्दिष्ट समूह $1 अस्तित्व में नहीं है।",
"translate-mgs-nothing": "अनुरोध किए गए आँकड़े दिखाने के लिए कुछ नहीं है ।",
"supportedlanguages": "समर्थित भाषाएँ",
- "supportedlanguages-translators": "{{PLURAL:$2|अनुबादक|अनुबादक}}: $1",
+ "supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|अनुवादक}}}}: $1",
"supportedlanguages-recenttranslations": "हाल में हुए अनुवाद",
"supportedlanguages-count": "$1 {{PLURAL:$1|भाषा|भाषाएँ}} कुल ।",
"supportedlanguages-activity": "$1: $2 {{PLURAL:$2|सम्पादन|सम्पादन}} - शेष सम्पादन $3 {{PLURAL:$3|दिन|दिन}} पेहले",
@@ -110,18 +128,19 @@
"translate-manage-action-import": "आयात",
"translate-manage-action-conflict": "आयात और फजी",
"translate-manage-action-ignore": "उपेक्षा",
+ "translate-manage-import-done": "आयात पूर्ण!",
"importtranslations": "अनुवाद आयात करें",
"translate-import-from-local": "स्थानीय फ़ाइल अपलोड:",
"translate-import-load": "लोड़ फ़ाइल",
- "translate-import-err-ul-failed": "फ़ाइल अपलोड सफल नहीं रहा",
+ "translate-import-err-ul-failed": "फ़ाइल अपलोड विफल रहा",
"translate-js-summary": "सारांश:",
+ "translate-js-save": "सहेजें",
"translate-js-next": "सहेजें और अगले सन्देश-कुंजी खोलें",
- "translate-js-nonext": "ये अंतिम संदेश था इस पृष्ठ पे ।",
"translate-js-skip": "त्यागें और अगली सन्देश-कुंजी खोलें",
- "translate-js-save-failed": "सहेजने में विफल। कृपया इस त्रुटि की रिपोर्ट करें।",
"translate-js-history": "अनुवाद इतिहास",
"translate-js-support": "सवाल पूछें",
"translate-js-support-title": "कृपया मदद मांगें अगर इस सन्देश के अनुवाद में कोई जानकारी की कमी हो तो",
+ "translate-js-support-unsaved-warning": "आपके पास बिना सहेजे गये अनुवाद हैं।",
"translate-gs-code": "कोड",
"translate-gs-continent": "महाद्वीप",
"translate-gs-speakers": "वक्ता",
@@ -134,22 +153,55 @@
"translate-searchprofile-tooltip": "सभी अनुवादों से खोज",
"translate-search-languagefilter": "निस्पंदन (छानना) - भाषा के आधार पर",
"translate-search-nofilter": "निःनिस्पंदन (बिना छननी)",
- "translate-messagereview-submit": "स्वीकारें",
- "translate-messagereview-progress": "स्वीकार रहे हैं...",
- "translate-messagereview-failure": "स्वीकार रहे हैं... विफल हुई : $1",
- "translate-messagereview-done": "स्वीकृत हुआ",
- "translate-messagereview-reviews": "{{PLURAL:$1|१ उपयोगकर्ता|$1 उपयोगकर्ताओं}} के द्वारा स्वीकारा गया",
- "translate-messagereview-reviewswithyou": "आप को मिला कर {{PLURAL:$1|१ उपयोगकर्ता|$1 उपयोगकर्ताओं}} के द्वारा स्वीकारा गया",
- "api-error-invalidrevision": "अनुवाद नहीं मिला",
- "api-error-unknownmessage": "सन्देश नहीं मिला",
- "api-error-fuzzymessage": "अनुवाद FUZZY अँकित हुआ है",
- "api-error-owntranslation": "आप अपने खुद के अनुवाद को स्वीकार नहीं कर सकते",
- "translate-messagereview-no-fuzzy": " FUZZY अनुवाद स्वीकृत नहीं हो सकता",
- "translate-messagereview-no-own": "आप अपने खुद के अनुवाद को स्वीकार नहीं कर सकते",
"log-name-translationreview": "अनुवाद समीक्षा लॉग",
"translate-workflowstatus": "स्थिति: $1",
- "translate-workflow-set-do": "स्थापित",
- "translate-workflow-set-done": "स्थापित!",
"translate-stats-workflow": "स्थिति",
- "translate-dynagroup-recent-label": "हाल ही में हुए अनुवाद"
+ "translate-dynagroup-recent-label": "हाल ही में हुए अनुवाद",
+ "translate-msggroupselector-projects": "संदेश-समूह",
+ "translate-msggroupselector-search-placeholder": "अन्वेषणसमूह",
+ "translate-msggroupselector-search-all": "सभी",
+ "translate-msggroupselector-search-recent": "अभी",
+ "tux-languageselector": "में अनुवाद",
+ "tux-tab-all": "सभी",
+ "tux-tab-untranslated": "बिना अनुवाद",
+ "tux-tab-outdated": "कालग्रस्त",
+ "tux-tab-translated": "अनुवाद किए",
+ "tux-tab-unproofread": "अनिरीक्षित",
+ "tux-edit": "संपादित करें",
+ "tux-status-optional": "वैकल्पिक",
+ "tux-status-fuzzy": "कालग्रस्त",
+ "tux-status-proofread": "पुनरीक्षित",
+ "tux-status-translated": "अनुवाद किए",
+ "tux-status-saving": "सहेज रहा है",
+ "tux-status-unsaved": "नहीं सहेजा",
+ "tux-editor-placeholder": "आपके अनुवाद",
+ "tux-editor-editsummary-placeholder": "वैकल्पिक सारांश",
+ "tux-editor-paste-original-button-label": "स्रोत पाठ का उपयोग करें",
+ "tux-editor-discard-changes-button-label": "परिवर्तनों को त्यागें",
+ "tux-editor-save-button-label": "अनुवाद सहेजे",
+ "tux-editor-skip-button-label": "त्यागें और आगे जाएँ",
+ "tux-editor-cancel-button-label": "रद्द करें",
+ "tux-editor-edit-desc": "प्रलेखन सम्पादित करें",
+ "tux-editor-add-desc": "प्रलेखन जोड़े",
+ "tux-editor-suggestions-title": "सुझाव",
+ "tux-editor-in-other-languages": "अन्य भाषा में",
+ "tux-warnings-hide": "छुपाएँ",
+ "tux-editor-message-desc-more": "अधिक देखें",
+ "tux-editor-proofreading-mode": "पुनरीक्षण",
+ "tux-editor-translate-mode": "सूची",
+ "tux-proofread-edit-label": "सम्पादन",
+ "tux-editor-page-mode": "पृष्ठ",
+ "tux-editor-doc-editor-cancel": "रद्द करें",
+ "tux-message-filter-optional-messages-label": "वैकल्पिक संदेश",
+ "tux-proofread-translated-by-self": "आपके द्वारा अनुवादित",
+ "tux-empty-list-translated-guide": "आप अनुवाद हेतु सहायता कर सकते हैं",
+ "tux-empty-list-translated-action": "अनुवाद करें",
+ "tux-empty-list-other": "अनुवाद के लिए कुछ नहीं है",
+ "tux-editor-close-tooltip": "बंध करें",
+ "tux-editor-expand-tooltip": "बड़ा करें",
+ "tux-editor-collapse-tooltip": "छोटा करें",
+ "tux-editor-message-tools-history": "इतिहास",
+ "tux-editor-message-tools-delete": "हटाएँ",
+ "tux-editor-message-tools-translations": "सभी अनुवाद",
+ "tux-editor-loading": "लोड हो रहा है..."
}
diff --git a/MLEB/Translate/i18n/core/hr.json b/MLEB/Translate/i18n/core/hr.json
index 9f60c36e..975dec69 100644
--- a/MLEB/Translate/i18n/core/hr.json
+++ b/MLEB/Translate/i18n/core/hr.json
@@ -7,14 +7,25 @@
"MaGa",
"Roberta F.",
"SpeedyGonsales",
- "Tivek"
+ "Tivek",
+ "Bugoslav"
]
},
- "translate": "Prijevodi sistemskih poruka",
+ "translate": "Prevedi",
"translate-desc": "[[Special:Translate|Posebna stranica]] za prevođenje MediaWiki i izvan",
- "translate-page-no-such-language": "Unešen jezik je neispravan",
+ "translate-fuzzybot-desc": "Ovo je poseban sustavski račun koji se rabi u [https://www.mediawiki.org/wiki/Extension:Translate proširenju »Prevođenje« (engl. Translate)] MediaWikija, koje se upotrebljava za održavanje prijevoda. Ovaj je račun dio softvera MediaWiki i nije u vlasništvu ijednoga suradnika.",
+ "translate-taskui-export-to-file": "Izvoz u izvornom obliku",
+ "translate-taskui-export-as-po": "Izvoz za ''off-line'' prijevod",
+ "translate-taction-translate": "Prevođenje",
+ "translate-taction-proofread": "Pregled",
+ "translate-taction-lstats": "Statistike jezika",
+ "translate-taction-mstats": "Statistike skupine poruka",
+ "translate-taction-export": "Izvoz",
+ "translate-taction-disabled": "Ova akcija je onemogućena na ovom wikiju.",
+ "translate-page-no-such-language": "Navedeni jezični kod ne postoji.",
"translate-page-no-such-group": "Navedena grupa je neispravna.",
"translate-page-disabled": "Prijevodi na ovaj jezik u ovoj grupi su onemogućeni. Razlog:\n\n<em>$1</em>",
+ "translate-language-disabled": "Prijevod na ovaj jezik je onemogućen.",
"translate-page-settings-legend": "Postavke",
"translate-page-group": "Skupina",
"translate-page-language": "Jezik",
@@ -28,21 +39,29 @@
"translate-next": "Sljedeća stranica",
"translate-prev": "Prethodna stranica",
"translate-page-description-legend": "Podaci o grupi",
+ "translate-page-description-hasoptional": "Ova skupina sadržava neobvezne poruke.\nNeobvezne poruke treba prevoditi samo ukoliko Vaš jezik ima posebne potrebe;\nna primjer, ukoliko ne treba rabiti bjeline ili ukoliko treba preslovljavati imena. $1",
+ "translate-page-description-hasoptional-open": "Prikaži dodatne poruke.",
"translate-page-edit": "uredi",
- "translate-ext-url": "<hr />Web stranica: $1",
- "translate-optional": "(opcionalno)",
+ "translate-optional": "(neobvezno)",
"translate-ignored": "(zanemareno)",
"translate-edit-title": "Uredi \"$1\"",
"translate-edit-definition": "Definicija poruke",
"translate-edit-translation": "Prijevod",
"translate-edit-contribute": "dodaj",
- "translate-edit-no-information": "''Ova poruka nema dokumentacije. Ako znate gdje ili kako se koristi poruka, možete pomoći drugim prevoditeljima dodavajući dokumentaciju ovoj poruci.''",
+ "translate-edit-no-information": "<em>Ova poruka nema dokumentacije. Ako znate gdje ili kako se koristi poruka, možete pomoći drugim prevoditeljima dodavajući dokumentaciju ovoj poruci.</em>",
"translate-edit-information": "Informacije o poruci ($1)",
"translate-edit-in-other-languages": "Poruka na ostalim jezicima",
- "translate-edit-committed": "Trenutačni prijevod u softveru",
"translate-edit-warnings": "Upozorenja o nepotpunim prijevodima",
- "translate-edit-tmsugs": "Prijedlozi iz spremnika prijevoda",
+ "translate-edit-tmmatch-source": "Izvorni tekst: $1",
"translate-edit-tmmatch": "$1% podudarnosti",
+ "translate-use-suggestion": "Zamijenite trenutačni prijevod ovim prijedlogom.",
+ "translate-edit-nopermission": "Da biste prevodili poruke, trebate imati prevoditeljska prava.",
+ "translate-edit-askpermission": "Zatraži dopuštenje",
+ "exporttranslations": "Izvoz prijevoda",
+ "translate-export-form-format": "Oblik",
+ "translate-export-invalid-format": "Navedite valjani oblik.",
+ "translate-export-not-supported": "Izvoz prijevoda nije podržan.",
+ "translate-export-format-notsupported": "Skupina poruka ne podržava navedeni izvozni format.",
"translate-magic-pagename": "Prošireni MediaWiki prijevod",
"translate-magic-module": "Modul:",
"translate-magic-submit": "Dohvati",
@@ -60,33 +79,49 @@
"translate-magic-namespace": "Imena imenskih prostora",
"translate-magic-notsaved": "Vaše uređivanje nije spremljeno!",
"translate-magic-errors": "Ispravite {{PLURAL:$1|sljedeću grešku|sljedeće greške}} u prijevodima:",
- "translate-magic-saved": "Vaše izmjene su uspješno spremljene.",
+ "translate-magic-saved": "Vaše izmjene su spremljene.",
"translate-checks-parameters": "Sljedeći {{PLURAL:$2|parametar se ne koristi|parametri se ne koriste}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "Sljedeći {{PLURAL:$2|parametar je nepoznat|parametri su nepoznati}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-balance": "Nejednak broj {{PLURAL:$2|zagrada|zagrada}}:\n<strong><nowiki>$1</nowiki></strong>",
- "translate-checks-links": "{{PLURAL:$2|Sljedeća poveznica je problematična|$2 sljedećih poveznica su problematične}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "{{PLURAL:$2|Sljedeća je poveznica problematična|$2 sljedeće poveznice problematične su|$2 sljedećih poveznica su problematične}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "{{PLURAL:$2|Nedostaje sljedeća poveznica|$2 Nedostaju sljedeće poveznice}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Molimo, zamijenite {{PLURAL:$2|oznaku točnom|sljedeće oznake točnim}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-plural": "Definicija koristi <nowiki>{{PLURAL:}}</nowiki>, ali prijevod ne.",
+ "translate-checks-fudforum-syntax": "Upotrijebite nowiki>$1</nowiki> umjesto <nowiki>$2</nowiki> u ovom projektu.",
"translate-pref-nonewsletter": "Ne šalji mi e-poštom obavijesti translatewiki.net projekta",
"translate-pref-editassistlang": "Pomoćni jezici:",
"prefs-translate": "Mogućnosti prijevoda",
- "translate-pref-editassistlang-help": "Popis jezičnih kodova odjeljen zarezima.\nPrijevod poruke na tim jezicima bit će prikazani dok prevodite.\nZadani popis jezika ovisi o vašem jeziku.",
+ "translate-pref-editassistlang-help": "Popis jezičnih kodova odijeljen zarezima.\nPrijevod poruke na tim jezicima bit će prikazani dok prevodite.\nZadani popis jezika ovisi o vašem jeziku.",
+ "translate-pref-editassistlang-bad": "Nevaljan kôd jezika u popisu:\n<nowiki>$1</nowiki>.",
"right-translate": "Uređivanje koristeći sučelje za prevođenje",
- "right-translate-manage": "Upravljanje grupama prijevoda",
+ "right-translate-manage": "Upravljanje grupama poruka",
+ "action-translate-manage": "upravljanje skupinama poruka",
"right-translate-import": "Uvoz izvanmrežnih prijevoda",
+ "action-translate-import": "uvoz izvanmrežnih prijevoda",
+ "right-translate-messagereview": "Provjera prijevoda",
+ "action-translate-messagereview": "Provjeri prijevode",
+ "translate-rcfilters-translations": "Prijevodi",
+ "translate-rcfilters-translations-only-label": "Prijevodi",
+ "translate-rcfilters-translations-only-desc": "Promjene stranica s prijevodima.",
+ "translate-rcfilters-translations-filter-label": "Nisu prijevodi",
+ "translate-rcfilters-translations-filter-desc": "Sva uređivanja koja nisu prijevodi.",
"translate-rc-translation-filter": "Filtriraj prijevode:",
"translate-rc-translation-filter-no": "Ne filtriraj ništa",
"translate-rc-translation-filter-only": "Prikaži samo prijevode",
"translate-rc-translation-filter-filter": "Izbaci prijevode",
"translate-rc-translation-filter-site": "Samo uređivanja poruka projekta",
- "translationstats": "Statistike prevođenja",
+ "translationstats": "Statistika o prevođenju",
"translate-stats-edits": "Uređivanja",
"translate-stats-users": "Prevoditelji",
"translate-stats-registrations": "Prijave",
+ "translate-stats-reviews": "Provjere",
+ "translate-stats-reviewers": "Provjeravatelji",
"translate-statsf-intro": "Možete generirati jednostavne statistike s ovim obrascem.\nSve vrijednosti imaju gornju i donju granicu.",
"translate-statsf-options": "Opcije grafa",
"translate-statsf-width": "Širina u pikselima:",
"translate-statsf-height": "Visina u pikselima:",
"translate-statsf-days": "Vremensko razdoblje u danima:",
- "translate-statsf-start": "Vremensko razdoblje u danima:",
+ "translate-statsf-start": "Početni datum:",
"translate-statsf-scale": "Zrnatost:",
"translate-statsf-scale-months": "Mjeseci",
"translate-statsf-scale-weeks": "Tjedana",
@@ -96,17 +131,18 @@
"translate-statsf-count-edits": "Broj uređivanja",
"translate-statsf-count-users": "Aktivni prevoditelji",
"translate-statsf-count-registrations": "Novi suradnici",
+ "translate-statsf-count-reviews": "Provjere prijevoda",
+ "translate-statsf-count-reviewers": "Provjeravatelji",
"translate-statsf-language": "Zarezom odvojen popis jezičnih kodova:",
"translate-statsf-group": "Zarezom odvojen popis skupine kodova:",
"translate-statsf-submit": "Prikaži",
- "translate-tag-category": "Stranice koje je moguće lokalizirati",
- "translate-tag-page-desc": "Prijevod wiki stranice [[$2|$1]].",
+ "translate-tag-page-desc": "Prijevod wikistranice [[$2|$1]] prema $3 ($4).",
"translate-sidebar-alltrans": "Na drugim jezicima",
"translations": "Svi prijevodi",
"translations-summary": "Unesite naziv poruke da biste vidjeli sve prijevode.",
"translate-translations-no-message": "\"$1\" nije poruka koja se prevodi",
"translate-translations-none": "Ne postoje prijevodi za \"$1\"",
- "translate-translations-count": "{{PLURAL:$1|Pronađen jedan prijevod|Pronađena $1 prijevoda|Pronađeno $1 prijevoda}}.",
+ "translate-translations-count": "Pronađeno prijevoda: {{PLURAL:$1|jedan|$1}}.",
"translate-translations-fieldset-title": "Poruka",
"translate-translations-messagename": "Ime:",
"translate-translations-project": "Projekt:",
@@ -114,49 +150,207 @@
"translate-translations-history-short": "h",
"languagestats": "Statistika jezika",
"languagestats-summary": "Ova stranica prikazuje statistiku prijevoda za sve grupe poruka za jezik.",
+ "messagegroupstats-summary": "Ova stranica prikazuje statistike grupa poruka.",
"languagestats-stats-for": "Statistika prijevoda za $1 ($2).",
"languagestats-recenttranslations": "nedavni prijevodi",
+ "translate-langstats-expand": "proširi",
+ "translate-langstats-collapse": "sažmi",
+ "translate-langstats-expandall": "proširi sve",
+ "translate-langstats-collapseall": "sažmi sve",
"translate-language-code": "Jezični kôd",
"translate-language-code-field-name": "Jezični kôd:",
"translate-suppress-complete": "Izostavi potpuno prevedene grupe poruka",
+ "translate-ls-noempty": "Izostavi potpuno neprevedene grupe poruka",
"translate-language": "Jezik",
"translate-total": "Poruke",
"translate-untranslated": "Neprevedeno",
"translate-percentage-complete": "Dovršeno",
"translate-percentage-fuzzy": "Zastarjelo",
+ "translate-languagestats-overall": "Sve skupine poruka zajedno",
+ "translate-ls-submit": "Prikaži statistiku",
+ "translate-ls-column-group": "Grupa poruka",
+ "translate-mgs-pagename": "Statistika skupine poruka",
+ "translate-mgs-fieldset": "Mogućnosti prikaza",
+ "translate-mgs-group": "Grupa poruka:",
+ "translate-mgs-nocomplete": "Ne prikazuj jezike koji su u cijelosti prevedeni",
+ "translate-mgs-noempty": "Ne prikazuj jezike koji uopće nemaju prijevode",
+ "translate-mgs-submit": "Prikaži statistiku",
+ "translate-mgs-column-language": "Jezik",
+ "translate-mgs-totals": "Svi jezici zajedno",
+ "translate-mgs-invalid-group": "Navedena skupina $1 ne postoji.",
+ "translate-mgs-nothing": "Nema se što prikazati za zahtijevane statistike.",
+ "supportedlanguages": "Podržani jezici",
+ "supportedlanguages-summary": "Ova stranica prikazuje popis svih podržanih jezika na ovome wikiju, {{SITENAME}}, zajedno s imenima prevoditelja koji rade na tim jezicima.\nVeličina suradničkih imena prevoditelja, tj. veličina slova, ovisi od toga koliko je tko poruka preveo.\nBoja podcrtavanja ovdje označuje kolika je aktivnost prevoditeljā – prevoditeljicā.",
+ "supportedlanguages-colorlegend": "Legenda za boju: Posljednji prijevod načinjen prije $1 dana.",
+ "supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|Prevoditelj}}|Prevoditelji}}: $1",
"supportedlanguages-recenttranslations": "nedavni prijevodi",
+ "supportedlanguages-count": "Ukupno $1 {{PLURAL:$1|jezik|jezika}}.",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|uređivanje|uređivanja}} – posljednje uređivanje prije $3 {{PLURAL:$3|dan|dana}}",
+ "abusefilter-edit-builder-vars-translate-source-text": "Izvorni tekst prijevodne jedinice",
"translate-save": "Sačuvaj ($1)",
"translate-jssti-add": "Dodaj na popis",
+ "managemessagegroups": "Upravljanje skupinom poruka",
+ "translate-smg-notallowed": "Nije Vam dopušteno izvršiti ovu radnju.",
+ "translate-smg-nochanges": "Nema izmjena koje treba obraditi.",
+ "translate-smg-submit": "Proslijedi izmjene na obradbu",
+ "translate-smg-submitted": "Definicije poruka su ažurirane. Izmjene se obrađuju u pozadini.",
+ "translate-smg-more": "Bit će još izmjena za obradbu nakon što proslijedite ove.",
+ "translate-smg-left": "Sadržaj poruke na wikiju",
+ "translate-smg-right": "Predstojeće izmjene",
+ "translate-manage-import-diff": "Poruka $1 | Radnje: $2",
"translate-manage-import-new": "Nova poruka $1",
"translate-manage-import-deleted": "Obrisana poruka $1",
"translate-manage-action-import": "Uvezi",
"translate-manage-action-conflict": "Uvezi i označi kao ''fuzzy''",
"translate-manage-action-ignore": "Ignoriraj",
"translate-manage-action-fuzzy": "Uvoz i ''fuzzy'' prijevodi",
+ "translate-manage-nochanges": "Nema promjena u definicijama poruka u ovoj skupini.",
+ "translate-manage-nochanges-other": "Nema promjena za ovaj jezik.\nUpotrijebite poveznicu (ispod) za povratak na pregled detalja skupine.",
"translate-manage-import-summary": "Uvoz nove inačice iz vanjskog izvora",
"translate-manage-conflict-summary": "Uvoz nove inačice iz vanjskog izvora.\nMolimo provjerite.",
- "translate-manage-fuzzy-summary": "Definicija se promijenila",
"translate-manage-submit": "Izvrši",
- "translate-manage-import-done": "Obavljeno je sve!",
+ "translate-manage-import-done": "Uvoz završen!",
"importtranslations": "Uvezi prijevode",
"translate-import-from-local": "Snimanje lokalne datoteke:",
"translate-import-load": "Učitaj datoteku",
+ "translate-import-err-ul-failed": "Postavljanje datoteke nije uspjelo",
+ "translate-import-err-invalid-title": "Navedeno ime datoteke <nowiki>$1</nowiki> nije bilo valjano.",
+ "translate-js-summary": "Sažetak:",
+ "translate-js-save": "Spremi",
"translate-js-next": "Spremi i otvori sljedeću",
- "translate-js-nonext": "Bila je to posljednja poruka na ovoj stranici.",
"translate-js-skip": "Prijeđi na sljedeću poruku",
- "translate-js-save-failed": "Spremanje nije uspjelo. Molimo prijavite ovu pogrešku.",
"translate-js-history": "Povijest prijevoda",
"translate-js-support": "Postavi pitanje",
"translate-js-support-title": "Zatražite pomoć ako nemate dovoljno informacija za ispravan prijevod ove poruke.",
"translate-js-support-unsaved-warning": "Imate nesačuvanih izmjena.",
- "translate-gs-code": "Kod",
+ "translate-gs-pos": "Mj.",
+ "translate-gs-code": "Kôd",
"translate-gs-continent": "Kontinent",
- "translate-gs-speakers": "Govornici",
+ "translate-gs-speakers": "Govornika",
"translate-gs-score": "Rezultat",
- "translate-gs-multiple": "Višestruki",
+ "translate-gs-multiple": "višestruki",
"translate-gs-count": "Broj",
"translate-gs-total": "Ukupno",
"translate-gs-avgscore": "Prosječno",
"translate-documentation-language": "Dokumentacija poruke",
- "translate-search-more-languages-info": "{{PLURAL:$1|Još jedan jezik|Još $1 druga jezika|Još $1 drugih jezika}}"
+ "translate-searchprofile": "Prijevodi",
+ "translate-searchprofile-tooltip": "Traži iz svih prijevoda",
+ "translate-searchprofile-note": "Više mogućnosti pretraživanja dostupno je pomoću [$1 pretrage prijevoda].",
+ "translate-search-languagefilter": "Filtriranje po jeziku:",
+ "translate-search-nofilter": "Bez filtriranja",
+ "log-name-translationreview": "Evidencija pregleda prijevoda",
+ "log-description-translationreview": "Evidencija svih provjera prijevoda i skupina poruka.",
+ "logentry-translationreview-message": "$1 {{GENDER:$2|pregledao|pregledala}} je prijevod $3",
+ "logentry-translationreview-group": "$1 {{GENDER:$2|promijenio|promijenila}} je stanje za $4 prijevod stranice $3 iz $6 u $7",
+ "group-translate-sandboxed": "Neodobreni prevoditelji",
+ "group-translate-sandboxed-member": "{{GENDER:$1|neodobreni prevoditelj|neodobrena prevoditeljica}}",
+ "right-translate-sandboxmanage": "Rukovođenje sa suradnicima, koji su ograničeni na pješčanike",
+ "action-translate-sandboxmanage": "rukovodi suradnicima ograničenima na pješčanike",
+ "right-translate-sandboxaction": "Izvršavanje radnji (na bijeloj listi) dopuštenih suradnicima ograničenim na pješčanik",
+ "action-translate-sandboxaction": "izvršavati radnje (na bijeloj listi) dopuštene suradnicima koji su ograničeni na uporabu pješčanika",
+ "translate-workflow-state-": "(isključeno)",
+ "translate-workflowstatus": "Stanje: $1",
+ "translate-workflow-set-doing": "Postavljam...",
+ "translate-workflow-autocreated-summary": "Automatsko stvaranje stranice za radno stanje $1",
+ "translate-stats-workflow": "Stanje",
+ "translate-workflowgroup-label": "Radna stanja",
+ "translate-dynagroup-recent-label": "Nedavni prijevodi",
+ "translate-dynagroup-recent-desc": "Ova skupina poruka prikazuje sve nedavne prijevode na ovaj jezik.\nNajkorisnije je pri provjeri prijevoda.",
+ "translate-dynagroup-additions-label": "Nedavna dodavanja",
+ "translate-dynagroup-additions-desc": "Ova grupa poruka prikazuje nove i promijenjene poruke.",
+ "translate-msggroupselector-projects": "Grupa poruka",
+ "translate-msggroupselector-search-placeholder": "Pretraga grupa",
+ "translate-msggroupselector-search-all": "Sve",
+ "translate-msggroupselector-search-recent": "Nedavne",
+ "translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|podskupina|podskupine|podskupina}}",
+ "tux-languageselector": "Prijevod na",
+ "tux-tab-all": "Sve",
+ "tux-tab-untranslated": "Neprevedeno",
+ "tux-tab-outdated": "Zastarjelo",
+ "tux-tab-translated": "Prevedeno",
+ "tux-tab-unproofread": "Neprovjereno",
+ "tux-edit": "Uredi",
+ "tux-status-optional": "Neobvezno",
+ "tux-status-fuzzy": "Zastarjelo",
+ "tux-status-proofread": "Provjereno",
+ "tux-status-translated": "Prevedeno",
+ "tux-status-saving": "Pohranjivanje...",
+ "tux-status-unsaved": "Nesačuvano",
+ "tux-save-unknown-error": "Nepoznata se pogrješka dogodila.",
+ "tux-editor-placeholder": "Vaš prijevod",
+ "tux-editor-editsummary-placeholder": "Neobvezan sažetak",
+ "tux-editor-paste-original-button-label": "Zalijepi izvorni tekst",
+ "tux-editor-discard-changes-button-label": "Zanemari izmjene",
+ "tux-editor-save-button-label": "Spremi prijevod",
+ "tux-editor-skip-button-label": "Preskoči na sljedeću poruku",
+ "tux-editor-cancel-button-label": "Otkaži",
+ "tux-editor-confirm-button-label": "Potvrdi prijevod",
+ "tux-editor-proofread-button-label": "Označi provjerenim",
+ "tux-editor-shortcut-info": "Za spremanje pritisnite \"$1\"; za preskok na sljedeću poruku pritisnite \"$2\"; za sažetak pritisnite \"$4\", a za ostale prečace pritisnite \"$3\".",
+ "tux-editor-edit-desc": "Uredi dokumentaciju",
+ "tux-editor-add-desc": "Dodaj dokumentaciju",
+ "tux-editor-suggestions-title": "Prijedlozi",
+ "tux-editor-in-other-languages": "Na drugim jezicima",
+ "tux-editor-need-more-help": "Trebate pomoć?",
+ "tux-editor-ask-help": "Zatražite više informacija",
+ "tux-editor-tm-match": "$1% podudarnosti",
+ "tux-warnings-more": "{{PLURAL:$1|još $1}}",
+ "tux-warnings-hide": "skrij",
+ "tux-editor-save-failed": "Spremanje prijevoda nije uspjelo: $1",
+ "tux-editor-n-uses": "upotrijebljeno $1 {{PLURAL:$1|put|puta}}",
+ "tux-editor-message-desc-more": "Prikaži više",
+ "tux-editor-message-desc-less": "Prikaži manje",
+ "tux-editor-clear-translated": "Skrij prevedeno",
+ "tux-editor-proofreading-mode": "Provjera",
+ "tux-editor-translate-mode": "Popis",
+ "tux-editor-proofreading-hide-own-translations": "Skrij moje prijevode",
+ "tux-editor-proofreading-show-own-translations": "Prikaži moje prijevode",
+ "tux-proofread-action-tooltip": "Označi provjerenim",
+ "tux-proofread-edit-label": "Uredi",
+ "tux-editor-page-mode": "Stranica",
+ "tux-editor-outdated-warning": "Ovaj prijevod možda mora biti ažuriran.",
+ "tux-editor-outdated-warning-diff-link": "Prikaži razlike",
+ "tux-editor-doc-editor-placeholder": "Dokumentacija poruke",
+ "tux-editor-doc-editor-save": "Spremi dokumentaciju",
+ "tux-editor-doc-editor-cancel": "Otkaži",
+ "tux-messagetable-more-messages": "Još $1 {{PLURAL:$1|poruka|poruke|poruka}}",
+ "tux-messagetable-loading-messages": "Učitavanje {{PLURAL:$1|poruke|poruka}}...",
+ "tux-message-filter-placeholder": "Filtriranje",
+ "tux-message-filter-result": "Ukupno $1 {{PLURAL:$1|rezultat|rezultata}} za \"$2\"",
+ "tux-message-filter-advanced-button": "Napredno pretraživanje",
+ "tux-message-filter-optional-messages-label": "Dodatne poruke",
+ "tux-proofread-translated-by-self": "Vi ste autor ovog prijevoda",
+ "tux-empty-list-all": "Ova je skupina poruka prazna",
+ "tux-empty-list-all-guide": "Izaberite drugu skupinu poruka za prevođenje",
+ "tux-empty-list-translated": "Nema prevedenih poruka",
+ "tux-empty-list-translated-guide": "Pomozite i Vi prevodeći poruke.",
+ "tux-empty-list-translated-action": "Nastavi prevoditi",
+ "tux-empty-no-messages-to-display": "Nema poruka za prikaz.",
+ "tux-empty-there-are-optional": "Postoje neobvezne poruke koje nisu prikazane na popisu",
+ "tux-empty-show-optional-messages": "Prikaži neobvezne poruke",
+ "tux-empty-no-outdated-messages": "Nema zastarjelih poruka",
+ "tux-empty-nothing-to-proofread": "Nema ičega za provjeru",
+ "tux-empty-you-can-help-providing": "Pomozite i Vi prevodeći nove poruke",
+ "tux-empty-nothing-new-to-proofread": "Za provjeru nema novih poruka",
+ "tux-empty-you-can-review-already-proofread": "Provjeri već provjerene prijevode.",
+ "tux-empty-list-other": "Ničega za prevođenje",
+ "tux-empty-list-other-guide": "Možete pomoći provjeravanjem postojećih prijevoda",
+ "tux-empty-list-other-action": "Provjeri prijevode",
+ "tux-empty-list-other-link": "Prikaz svih poruka",
+ "tux-editor-close-tooltip": "Zatvori",
+ "tux-editor-expand-tooltip": "Proširi",
+ "tux-editor-collapse-tooltip": "Sklopi",
+ "tux-editor-message-tools-show-editor": "Prikaži u wikiuređivaču",
+ "tux-editor-message-tools-history": "Povijest izmjena",
+ "tux-editor-message-tools-delete": "Izbriši",
+ "tux-editor-message-tools-translations": "Svi prijevodi",
+ "tux-editor-message-tools-linktothis": "Poveznica na ovu poruku",
+ "tux-editor-loading": "Učitavam...",
+ "translate-search-more-languages-info": "{{PLURAL:$1|Još jedan jezik|Još $1 druga jezika|Još $1 drugih jezika}}",
+ "translate-statsbar-tooltip": "$1 % prevedeno, $2 % pregledano",
+ "translate-statsbar-tooltip-with-fuzzy": "‎$1 % prevedeno, $2 % provjereno, $3 % zastarjelo",
+ "translate-search-more-groups-info": "još $1 {{PLURAL:$1|skupina|skupine|skupina}}",
+ "translate-ulsdep-title": "Pogrješka u konfiguraciji",
+ "tux-session-expired": "Više niste prijavljeni. Prijavite se u zasebnoj kartici. Druga mogućnost je da prekopirate nesačuvane prijevode, prijavite se, vratite se na ovu stranicu i ponovo upišete svoje prijevode.",
+ "tux-nojs": "Ova stranica zahtijeva JavaScript."
}
diff --git a/MLEB/Translate/i18n/core/hsb.json b/MLEB/Translate/i18n/core/hsb.json
index 0a83213c..0a4edd62 100644
--- a/MLEB/Translate/i18n/core/hsb.json
+++ b/MLEB/Translate/i18n/core/hsb.json
@@ -9,11 +9,6 @@
},
"translate": "Přełožić",
"translate-desc": "[[Special:Translate|Specialna strona]] za přełožowanje MediaWiki a druheho",
- "translate-taskui-view": "Wšě zdźělenki pokazać",
- "translate-taskui-untranslated": "Njepřełožene zdźělenki pokazać",
- "translate-taskui-optional": "Opcionalne zdźělenki pokazać",
- "translate-taskui-acceptqueue": "Jenož zdźělenki, kotrež móžu jako přepruwowane markěrować",
- "translate-taskui-reviewall": "Wšě přełožki přepruwować",
"translate-taskui-export-to-file": "Do systemoweho formata eksportować",
"translate-taskui-export-as-po": "Za přełožowanje offline eksportować",
"translate-taction-translate": "Přełožić",
@@ -42,7 +37,6 @@
"translate-page-description-hasoptional": "Tuta zdźělenska skupina wobsahuje opcionalne zdźělenki.\nOpcionalne zdźělenki měli so jenož přełožować, jeli twoja rěč ma wosebitu potrjebu za nje,\nkaž na přikład njewužiwanje mjezerow abo transliteraciju swójskich mjenow. $1",
"translate-page-description-hasoptional-open": "Opcionalne zdźělenki pokazać.",
"translate-page-edit": "wobdźěłać",
- "translate-ext-url": "<hr />Websydło: $1",
"translate-optional": "(opcionalny)",
"translate-ignored": "(ignorowany)",
"translate-edit-title": "\"$1\" wobdźěłać",
@@ -52,9 +46,7 @@
"translate-edit-no-information": "<em>Tuta zdźělenka dokumentaciju nima, Jeli wěš, hdźež abo kak so tuta zdźělenka wužiwa, móžeš druhim přełožowarjam pomhać přidawajo dokumentaciju k tutej zdźělence.</em>'",
"translate-edit-information": "Informacije wo zdźělence ($1)",
"translate-edit-in-other-languages": "Zdźělenka w druhich rěčach",
- "translate-edit-committed": "Aktualny přełožk w softwarje",
"translate-edit-warnings": "Warnowanja wo njedospołnych přełožkach",
- "translate-edit-tmsugs": "Namjety z přełožowanskeho pomjatka",
"translate-edit-tmmatch-source": "Žórłowy tekst přełožka: $1",
"translate-edit-tmmatch": "$1 % wotpowědowanja",
"translate-use-suggestion": "Aktualny přełožk přez tutón namjet wuměnić",
@@ -137,7 +129,6 @@
"translate-statsf-language": "Lisćina přez komu wotdźělenych rěčnych kodow:",
"translate-statsf-group": "Lisćina přez komu wotdźělenych skupinowych kodow:",
"translate-statsf-submit": "Přehlad",
- "translate-tag-category": "Přełožujomne strony",
"translate-tag-page-desc": "Přełožk wikijoweje strony [[$2|$1]].",
"translate-sidebar-alltrans": "W druhich rěčach",
"translations": "Wšě přełožki",
@@ -212,7 +203,6 @@
"translate-manage-toolong": "Maksimalny předźěłowanski čas $1 {{PLURAL:$1|sekundy|sekundow|sekundow|sekundow}} je překročeny.\nProšu wotpósćel formular hišće raz, zo by z předźěłowanjom pokročował.",
"translate-manage-import-summary": "Nowa wersija so eksterneho žórła importuje",
"translate-manage-conflict-summary": "Nowa wersija so z eksterneho žórła importuje.\nProšu přepruwować.",
- "translate-manage-fuzzy-summary": "Definicija zdźělenki je so změniła",
"translate-manage-submit": "Wuwjesć",
"translate-manage-intro-other": "Slěduje lisćina přełožowanskich změnow w rěči $1.\nProšu přepruwuj změny a wubjer akciju, kotruž chceš za kóždy přełožk wuwjesć.\nJeli změny ignoruješ, je tuta akcija jenož nachwilna.",
"translate-manage-import-ok": "Importowany: $1",
@@ -230,9 +220,7 @@
"translate-js-summary": "Zjeće:",
"translate-js-save": "Składować",
"translate-js-next": "Přichodnu powěsć składować a wočinić",
- "translate-js-nonext": "To bě poslednja zdźělenka na tutej stronje.",
"translate-js-skip": "K přichodnej powěsći skočić",
- "translate-js-save-failed": "Składowanje je so njeporadźiło. Prošu zdźěl tutón zmylk.",
"translate-js-history": "Přełožowanska historija",
"translate-js-support": "Prašeć so",
"translate-js-support-title": "Poproš wo pomoc, jeli dosć informacijow njeje, zo by so tuta powěsć prawje přełožiła.",
@@ -251,19 +239,6 @@
"translate-searchprofile-tooltip": "We wšěch přełožkach pytać",
"translate-search-languagefilter": "Po rěči filtrować:",
"translate-search-nofilter": "Žane filtrowanje",
- "translate-messagereview-submit": "Jako přepruwowany markěrować",
- "translate-messagereview-progress": "Markěruje so jako přepruwowany...",
- "translate-messagereview-failure": "Markěrowanje jako přepruwowany je so njeporadźiło: $1",
- "translate-messagereview-done": "Přepruwowany",
- "translate-messagereview-reviews": "Wot {{PLURAL:$1|jednoho wužiwarja|$1 wužiwarjow}} přepruwowany",
- "translate-messagereview-reviewswithyou": "Wot {{PLURAL:$1|tebje|$1 wužiwarjow inkluziwnje tebje}} přepruwowany",
- "api-error-invalidrevision": "Přełožk njeje so namakał",
- "api-error-unknownmessage": "Zdźělenka njeje so namakała",
- "api-error-fuzzymessage": "Přełožk je jako zestarjeny markěrowany",
- "api-error-owntranslation": "Njemóžeš swójske přełožki jako přepruwowane markěrować.",
- "translate-messagereview-no-fuzzy": "Zestarjene přełožki njehodźa so jako přepruwowane markěrować.",
- "translate-messagereview-no-own": "Njemóžeš swójske přełožki jako přepruwowane markěrować.",
- "translate-messagereview-doit": "Tutón přełožk jako přepruwowany markěrować.",
"log-name-translationreview": "Protokol přepruwowanjow přełožkow",
"log-description-translationreview": "Protokol wšěch přepruwowanjow k přełožkam a zdźělenskim skupinam.",
"logentry-translationreview-message": "$1 je přełožk $3 {{GENDER:$2|přepruwował|přepruwowała}}",
@@ -276,10 +251,7 @@
"action-translate-sandboxaction": "Akcije wuwjesć, kotrež su na \"běłej lisćinje\" wužiwarjow hrajkanišća",
"translate-workflow-state-": "(njenastajeny)",
"translate-workflowstatus": "Status: $1",
- "translate-workflow-set-do": "Nastajić",
"translate-workflow-set-doing": "Nastaja so...",
- "translate-workflow-set-done": "Nastajeny!",
- "translate-workflow-set-error-alreadyset": "Požadany status je identiski z aktualnym statusom.",
"translate-workflow-autocreated-summary": "Awtomatiske wutworjenje strony za dźěłowotběžny status $1",
"translate-stats-workflow": "Status",
"translate-workflowgroup-label": "Dźěłowotběžne statusy",
@@ -288,11 +260,6 @@
"translate-dynagroup-recent-desc": "Tuta zdźělenska skupina pokazuje wšě aktualne přełožki do tuteje rěče.\nJe najwužitniša za přepruwowanske nadawki.",
"translate-dynagroup-additions-label": "Aktualne přidawki",
"translate-dynagroup-additions-desc": "Tuta zdźělenska skupina pokazuje nowe a změnjene zdźělenki.",
- "translate-dynagroup-by": "Přełožk wot {{GENDER:$1|$1}}",
- "translate-dynagroup-byc": "Přełožk wot {{GENDER:$1|$1}} ($2)",
- "translate-dynagroup-last": "Najnowša změna wot {{GENDER:$1|$1}}",
- "translate-dynagroup-lastc": "Najnowša změna wot {{GENDER:$1|$1}} ($2)",
- "translate-gethelp": "Pomoc",
"translate-msggroupselector-projects": "Zdźělenska skupina",
"translate-msggroupselector-search-placeholder": "Skupiny přepytać",
"translate-msggroupselector-search-all": "Wšě",
diff --git a/MLEB/Translate/i18n/core/ht.json b/MLEB/Translate/i18n/core/ht.json
index e5c45e9e..c5e1fad1 100644
--- a/MLEB/Translate/i18n/core/ht.json
+++ b/MLEB/Translate/i18n/core/ht.json
@@ -27,7 +27,6 @@
"translate-prev": "Paj presedan",
"translate-page-description-legend": "Enfòmasyon sou gwoup la",
"translate-page-edit": "modifye",
- "translate-ext-url": "<hr /> Sit wèb: $1",
"translate-optional": "(opsyon)",
"translate-ignored": "(inyore)",
"translate-edit-title": "Modifye \"$1\"",
@@ -36,9 +35,7 @@
"translate-edit-no-information": "''Mesaj sa pa dokimante.\nSi w konnen ki kote mesaj sa itilize, ou kapab ede lòt tradiktè lè ou ajoute dokimantasyon pou mesaj sa.''",
"translate-edit-information": "Enfòmasyon sou mesaj \"$2\" ($1)",
"translate-edit-in-other-languages": "Mesaj nan lòt lang yo",
- "translate-edit-committed": "Tradiksyon kouran nan logisyèl",
"translate-edit-warnings": "Avètisman sou tradiksyon ki pa konplete yo",
- "translate-edit-tmsugs": "Sijesyon ki soti nan memwa tradiksyon",
"translate-edit-tmmatch": "$1% korespondans",
"translate-use-suggestion": "Mete sijesyon sa a nan zòn tradiksyon a. L ap ranplase tout kontni aktyèl.",
"translate-magic-pagename": "Tradiksyon MediaWiki pwolonje",
@@ -106,7 +103,6 @@
"translate-statsf-language": "Lis kòd pou lang yo ki separe pa yon vigil:",
"translate-statsf-group": "Lis kòd pou gwoup yo ki separe pa yon vigil:",
"translate-statsf-submit": "Kout je",
- "translate-tag-category": "Paj ki kapab tradui",
"translate-tag-page-desc": "Tradiksyon pou paj [[$2|$1]].",
"translate-sidebar-alltrans": "Nan lòt lang yo",
"translations": "Tout tradiksyon yo",
@@ -155,7 +151,6 @@
"translate-manage-toolong": "Tan $1 {{PLURAL:$1|segonn|segonn}} maksimòm pou tretman an depase.\nTanpri, soumèt fòmilè ankò pou kontinye tretman.",
"translate-manage-import-summary": "Enpòtasyon yon nouvo vèsyon depi yon sous andeyò",
"translate-manage-conflict-summary": "Enpòtasyon yon nouvo vèsyon depi yon sous andeyò.\nTanpri verifye.",
- "translate-manage-fuzzy-summary": "Definisyon an te chanje",
"translate-manage-submit": "Ekzekite",
"translate-manage-intro-other": "Anba w ap jwenn yon lis chanjman nan tradiksyon pou lang $1.\nTanpri, revize chanjman yo epi chwazi kisa ou vle fè pou chak tradiksyon.\nSi ou deside pou inyore chanjman yo, y ap kraze nan pwochen ekspòtasyon.",
"translate-manage-import-ok": "Yon nouvo vèsyon pou paj $1 te enpòte.",
@@ -170,9 +165,7 @@
"translate-import-err-no-headers": "Fichye sa pa byen fòme nan fòma Gettext pou ekstansyon tradiksyon:\nPa kapab detèmine gwoup ak lang depi tèt fichye.",
"translate-import-err-warnings": "Fichye sa pa byen fòme.\nAsire w editè ou itilize a pa retire mòso msgctxt yo.\nDetay: $1",
"translate-js-next": "Anrejistre epi ouvri swivan.",
- "translate-js-nonext": "Sa se te dènye mesaj nan paj sa a.",
"translate-js-skip": "Sote ale nan swivan",
- "translate-js-save-failed": "Anrejistreman pa t reyisi. Tanpri siyale erè sa a.",
"translate-js-history": "Istorik tradiksyon",
"translate-gs-pos": "Pos.",
"translate-gs-code": "Kòd",
diff --git a/MLEB/Translate/i18n/core/hu.json b/MLEB/Translate/i18n/core/hu.json
index 71ef522d..d4f71eb8 100644
--- a/MLEB/Translate/i18n/core/hu.json
+++ b/MLEB/Translate/i18n/core/hu.json
@@ -10,22 +10,19 @@
"Tacsipacsi",
"Tgr",
"Wilander",
- "Csega"
+ "Csega",
+ "Máté"
]
},
"translate": "Fordítás",
"translate-desc": "[[Special:Translate|Speciális lap]] a MediaWiki és más projektek fordítására",
- "translate-taskui-view": "Összes üzenet megjelenítése",
- "translate-taskui-untranslated": "Lefordítatlan üzenetek megjelenítése",
- "translate-taskui-optional": "Opcionális üzenetek megjelenítése.",
- "translate-taskui-acceptqueue": "Csak az általam ellenőrzöttnek jelölt üzenetek",
- "translate-taskui-reviewall": "Valamennyi fordítás ellenőrzése",
+ "translate-fuzzybot-desc": "Ez egy speciális rendszerfiók, amit a MediaWiki [https://www.mediawiki.org/wiki/Extension:Translate Translate kiterjesztése] használ a fordítások karbantartásához.\nEz a fiók a MediaWiki szoftver része, és nem tulajdonosa egyetlen felhasználó sem.",
"translate-taskui-export-to-file": "Exportálás natív formátumban",
"translate-taskui-export-as-po": "Exportálás offline fordításhoz",
"translate-taction-translate": "Fordítás",
"translate-taction-proofread": "Ellenőriz",
"translate-taction-lstats": "Nyelvi statisztika",
- "translate-taction-mstats": "Üzenetcsoport statisztika",
+ "translate-taction-mstats": "Üzenetcsoport-statisztika",
"translate-taction-export": "Exportálás",
"translate-taction-disabled": "Ez a művelet le van tiltva ebben a wikiben.",
"translate-page-no-such-language": "A megadott nyelv érvénytelen",
@@ -45,10 +42,9 @@
"translate-next": "következő",
"translate-prev": "előző",
"translate-page-description-legend": "Információk a csoportról",
- "translate-page-description-hasoptional": "Ez az üzenetcsoport opcionális üzeneteket tartalmaz.\nAz opcionális üzeneteket csak akkor kell lefordítani, ha a nyelvnek speciális követelménye van, mint például a szóközök, vagy a tulajdonnevek átírása. $1",
+ "translate-page-description-hasoptional": "Ez az üzenetcsoport opcionális üzeneteket tartalmaz.\nAz opcionális üzeneteket csak akkor kell lefordítani, ha a nyelvnek speciális követelményei vannak, mint például a szóközök elhagyása vagy a tulajdonnevek átírása. $1",
"translate-page-description-hasoptional-open": "Opcionális üzenetek megjelenítése.",
"translate-page-edit": "szerkesztés",
- "translate-ext-url": "<hr />Weboldal: $1",
"translate-optional": "(nem kötelező)",
"translate-ignored": "(figyelmen kívül hagyva)",
"translate-edit-title": "„$1” szerkesztése",
@@ -58,14 +54,17 @@
"translate-edit-no-information": "''Ehhez az üzenethez még nincs leírás. Ha tudod, hogy hol vagy hogyan jelenik meg, segítheted a többi fordítót az üzenet dokumentálásával.''",
"translate-edit-information": "Információk az üzenetről ($1)",
"translate-edit-in-other-languages": "Az üzenet más nyelveken",
- "translate-edit-committed": "Jelenlegi fordítás",
"translate-edit-warnings": "Hiányosságok a fordításban",
- "translate-edit-tmsugs": "Javaslatok a fordítómemóriából",
"translate-edit-tmmatch-source": "Fordítási forrás szöveg: $1",
"translate-edit-tmmatch": "$1%-os egyezés",
"translate-use-suggestion": "A javasolt szöveg átmásolása a fordítási mezőbe, lecserélve annak aktuális tartalmát!",
"translate-edit-nopermission": "Az üzenetek fordításához fordítói jogok szükségesek.",
"translate-edit-askpermission": "Engedélyszerzés",
+ "exporttranslations": "Fordítások exportálása",
+ "translate-export-form-format": "Formátum",
+ "translate-export-invalid-format": "Adj meg egy érvényes formátumot.",
+ "translate-export-not-supported": "A fordítások exportálása nem támogatott.",
+ "translate-export-format-notsupported": "A megadott exportálási formátumot nem támogatja ez az üzenetcsoport.",
"translate-magic-pagename": "Kibővített MediaWiki-fordítás",
"translate-magic-help": "Lefordíthatod a speciális lapok álneveit, a varázsszavakat és a névterek neveit.\n\nA speciális lapoknak és a varázsszavaknak több fordítása is lehet.\nA fordításokat vesszővel (,) kell elválasztani.\nA névtereknek csak egyetlen fordítása lehet.\n\nA projektvita-névtér fordításánál a <code>$1 talk</code> speciális, a <code>$1</code> az oldal nevére lesz lecserélve (pl. <code>{{ns:project_talk}}</code>).\nHa a te nyelveden nem lehet az oldal nevének változtatása nélkül értelmes kifejezést összehozni, értesítsd a fejlesztőket a [[Support]] lapon.\n\nA változtatások mentését csak az tudja elvégezni, aki tagja a fordítók csoportjának.\nA változtatások nem mentődnek, míg alul a mentés gombra nem kattintasz.",
"translate-magic-module": "Modul:",
@@ -92,6 +91,8 @@
"translate-checks-links-missing": "A következő {{PLURAL:$2|hivatkozás hiányzik|hivatkozások hiányoznak}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-xhtml": "A következő {{PLURAL:$2|elemet|elemeket}} cseréld le a megfelelőekre:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-plural": "Az alapértelmezett változatban van <nowiki>{{PLURAL:}}</nowiki> forma, míg a fordításban nincs (magyar nyelv esetén ez nem feltétlenül probléma!).",
+ "translate-checks-plural-forms": "A <nowiki>{{PLURAL:}}</nowiki> $1 formát kapott, de csak $2 forma támogatott (0= és 1= kivételével).",
+ "translate-checks-plural-dupe": "<nowiki>A {{PLURAL:}} dupla formákat kap a végén. A $1 {{PLURAL:$1|kutya|kutya}} $1 kutya formában írandó (és még véletlenül se $1 {{PLURAL:$1|kutya|kutyák}}-ként, az felér a magyar nyelv elpusztításával :)</nowiki><!-- nyafog a smiley: tessék, itt van még egy (-->!)<nowiki>, ha az üzenetben nincs előtte szám, akkor {{PLURAL:$1|kutya|kutya}} helyett {{PLURAL:$1|kutya|kutyák}}, amennyiben máshogy megjelenik szám előtte, akkor {{PLURAL:$1|kutya}} kell.</nowiki>",
"translate-checks-pagename": "A névtér nem egyezik meg a definícióval",
"translate-checks-format": "A fordítás nem felel meg a definíciónak, vagy érvénytelen a szintaxisa: $1",
"translate-checks-escape": "A következő escape-ek valószínűleg véletlenül történtek: <strong>$1</strong>",
@@ -104,12 +105,21 @@
"translate-pref-editassistlang-help": "Nyelvkódok vesszővel elválasztott listája.\nAz üzenetek fordításai ezeken a nyelveken jelennek meg, amikor fordítasz.\nA nyelvek alapértelmezett listája a nyelvedtől függ.",
"translate-pref-editassistlang-bad": "Érvénytelen nyelvkód a listában:\n<nowiki>$1</nowiki>.",
"right-translate": "szerkesztés a fordítói felületen keresztül",
- "right-translate-manage": "Üzenetcsoportok kezelése",
+ "right-translate-manage": "üzenetcsoportok kezelése",
"action-translate-manage": "üzenetcsoportok kezelése",
"right-translate-import": "kapcsolat nélküli fordítások importálása",
"action-translate-import": "offline fordítások importálása",
- "right-translate-messagereview": "Fordítások ellenőrzése",
+ "right-translate-messagereview": "fordítások ellenőrzése",
+ "action-translate-messagereview": "fordítások átnézése",
"right-translate-groupreview": "Üzenetcsoportok állapotának megváltoztatása",
+ "action-translate-groupreview": "üzenetcsoportok állapotának megváltoztatása",
+ "translate-rcfilters-translations": "Fordítások",
+ "translate-rcfilters-translations-only-label": "Fordítások",
+ "translate-rcfilters-translations-only-desc": "Lefordított lapok változtatásai.",
+ "translate-rcfilters-translations-filter-label": "Nem fordítások.",
+ "translate-rcfilters-translations-filter-desc": "Minden változtatás, ami nem fordítás.",
+ "translate-rcfilters-translations-site-label": "Rendszerüzenetek",
+ "translate-rcfilters-translations-site-desc": "A rendszerüzenetek testreszabása a MediaWiki névtérben.",
"translate-rc-translation-filter": "Fordítások szűrése:",
"translate-rc-translation-filter-no": "Ne csináljon semmit",
"translate-rc-translation-filter-only": "Csak a fordítások mutatása",
@@ -141,7 +151,6 @@
"translate-statsf-language": "Nyelvkódok, vesszővel elválasztva:",
"translate-statsf-group": "Csoportkódok, vesszővel elválasztva:",
"translate-statsf-submit": "Előnézet",
- "translate-tag-category": "Lefordítható lapok",
"translate-tag-page-desc": "A(z) [[$2|$1]] lap fordítása $3 ($4) nyelvről",
"translate-sidebar-alltrans": "Más nyelveken",
"translations": "Minden fordítás",
@@ -176,14 +185,14 @@
"translate-languagestats-overall": "Valamennyi üzenetcsoport együtt",
"translate-ls-submit": "Statisztika megjelenítése",
"translate-ls-column-group": "Üzenetcsoport",
- "translate-mgs-pagename": "Üzenetcsoport statisztika",
+ "translate-mgs-pagename": "Üzenetcsoport-statisztika",
"translate-mgs-fieldset": "Megjelenítési beállítások",
"translate-mgs-group": "Üzenetcsoport:",
"translate-mgs-nocomplete": "Ne jelenjenek meg a teljesen lefordított nyelvek",
"translate-mgs-noempty": "Ne jelenjenek meg azok a nyelvek, amelyeknek nincs egyetlen fordítása sem",
"translate-mgs-submit": "Statisztika megjelenítése",
"translate-mgs-column-language": "Nyelv",
- "translate-mgs-totals": "Minden nyelv együtt",
+ "translate-mgs-totals": "Mind a(z) $1 nyelv együtt",
"translate-mgs-invalid-group": "A megadott $1 csoport nem létezik.",
"translate-mgs-nothing": "Nincs megjeleníthető statisztika.",
"supportedlanguages": "Támogatott nyelvek",
@@ -193,6 +202,7 @@
"supportedlanguages-recenttranslations": "friss fordítások",
"supportedlanguages-count": "Összesen {{PLURAL:$1|egy|$1}} nyelv.",
"supportedlanguages-activity": "$1: {{PLURAL:$2|egy|$2}} szerkesztés, a legutóbb {{PLURAL:$3|egy|$3}} napja szerkesztett",
+ "abusefilter-edit-builder-vars-translate-source-text": "A fordítási egység forrásszövege",
"translate-save": "Mentés ($1)",
"translate-jssti-add": "Hozzáadás a listához",
"managemessagegroups": "Üzenetcsoportok karbantartása",
@@ -200,6 +210,7 @@
"translate-smg-nochanges": "Nincsenek feldolgozandó változtatások.",
"translate-smg-submit": "Változtatások elküldése feldolgozásra",
"translate-smg-submitted": "Az üzenet definíciók frissítése megtörtént. A változások a háttérben kerülnek feldolgozásra.",
+ "translate-smg-more": "További feldolgozandó változtatások lesznek ezen módosítások elküldése után.",
"translate-smg-left": "Üzenet tartalom wikiben",
"translate-smg-right": "Bejövő változtatások",
"translate-manage-import-diff": "Üzenet: $1 | Műveletek: $2",
@@ -215,7 +226,6 @@
"translate-manage-toolong": "A maximális feldolgozási idő ({{PLURAL:$1|egy|$1}} másodperc) túl lett lépve.\nKüldd el újra az űrlapot a feldolgozás folytatásához.",
"translate-manage-import-summary": "Új változat importálása külső forrásból",
"translate-manage-conflict-summary": "Új változat importálása külső forrásból.\nEllenőrizd.",
- "translate-manage-fuzzy-summary": "Az üzenet definíciója megváltozott",
"translate-manage-submit": "Végrehajtás",
"translate-manage-intro-other": "Alább látható a(z) $1 nyelv fordításaiban történt változtatások listája.\nEllenőrizd a változtatásokat, és válaszd ki azt a műveletet, amit alkalmazni szeretnél minden egyes frissítésre.\nHa figyelmen kívül hagyod a változtatásokat, az csak ideiglenes művelet.",
"translate-manage-import-ok": "Importálva: $1",
@@ -224,7 +234,7 @@
"translate-import-from-local": "Helyi fájlfeltöltés:",
"translate-import-load": "Fájl betöltése",
"translate-import-err-dl-failed": "Nem sikerült olvasni a fájlt:\n$1",
- "translate-import-err-ul-failed": "A fájlfeltöltés sikertelen volt",
+ "translate-import-err-ul-failed": "A fájlfeltöltés sikertelen",
"translate-import-err-invalid-title": "A megadott fájlnév (<nowiki>$1</nowiki>) érvénytelen.",
"translate-import-err-no-such-file": "A(z) <nowiki>$1</nowiki> fájl nem létezik vagy nem helyben lett feltöltve.",
"translate-import-err-stale-group": "A fájlhoz tartozó üzenetcsoport nem létezik.",
@@ -233,12 +243,10 @@
"translate-js-summary": "Összefoglaló:",
"translate-js-save": "Mentés",
"translate-js-next": "Mentés és a következő megnyitása",
- "translate-js-nonext": "Ez volt az utolsó üzenet ezen a lapon.",
"translate-js-skip": "Ugrás a következőre",
- "translate-js-save-failed": "A mentés nem sikerült. Kérlek jelezd a hibát.",
"translate-js-history": "Fordítási előzmények",
"translate-js-support": "Kérdés feltevése",
- "translate-js-support-title": "Itt kérhetsz segítséged, ha nincs elegendő információd egy üzenet megfelelő lefordításához.",
+ "translate-js-support-title": "Itt kérhetsz segítséget, ha nincs elegendő információd egy üzenet megfelelő lefordításához.",
"translate-js-support-unsaved-warning": "Mentetlen fordításaid vannak.",
"translate-gs-pos": "Hely",
"translate-gs-code": "Kód",
@@ -249,42 +257,34 @@
"translate-gs-count": "Számláló",
"translate-gs-total": "Összesen",
"translate-gs-avgscore": "Átlagos eredmény",
- "translate-documentation-language": "Üzenetdokumentáció",
+ "translate-documentation-language": "üzenetdokumentáció",
"translate-searchprofile": "Fordítások",
"translate-searchprofile-tooltip": "Keresés az összes fordítás között",
+ "translate-searchprofile-note": "További keresési opciók elérhetők a [$1 fordításkeresővel].",
"translate-search-languagefilter": "Szűrés nyelv szerint",
"translate-search-nofilter": "Nincs szűrés",
- "translate-messagereview-submit": "Ellenőrzöttnek jelölés",
- "translate-messagereview-progress": "Ellenőrzöttnek jelölés...",
- "translate-messagereview-failure": "Ellenőrzöttnek jelölés sikertelen: $1",
- "translate-messagereview-done": "Ellenőrizve",
- "translate-messagereview-reviews": "{{PLURAL:$1|Egy|$1}} felhasználó ellenőrizte",
- "translate-messagereview-reviewswithyou": "{{PLURAL:$1|Csak te ellenőrizted|$1 felhasználó ellenőrizte, veled együtt}}",
- "api-error-invalidrevision": "nem található a fordítás",
- "api-error-unknownmessage": "nem található az üzenet",
- "api-error-fuzzymessage": "a fordítás fuzzy",
- "api-error-owntranslation": "nem jelölheted ellenőrzöttnek a saját fordításaidat",
- "translate-messagereview-no-fuzzy": "FUZZY fordításokat nem lehet ellenőrzöttnek jelölni.",
- "translate-messagereview-no-own": "Saját fordításodat nem tudod ellenőrzöttnek jelölni.",
- "translate-messagereview-doit": "A fordítás megjelölése ellenőrzöttként.",
"log-name-translationreview": "Fordítás-ellenőrzési napló",
"log-description-translationreview": "Valamennyi fordítás és üzenetcsoport ellenőrzésének a naplója.",
"logentry-translationreview-message": "$1 {{GENDER:$2|ellenőrizte}} a fordítást: $3",
+ "logentry-translationreview-group": "$1 {{GENDER:$2|megváltoztatta}} a(z) $4 lap $3 fordításainak állapotát erről: $6 erre: $7",
+ "group-translate-sandboxed": "megerősítetlen fordítók",
+ "group-translate-sandboxed-member": "{{GENDER:$1|megerősítetlen fordító}}",
+ "right-translate-sandboxmanage": "megerősítetlen fordítók kezelése",
+ "action-translate-sandboxmanage": "megerősítetlen fordítók kezelése",
+ "right-translate-sandboxaction": "megerősítetlen fordítóknak engedélyezett műveletek végrehajtása",
+ "action-translate-sandboxaction": "megerősítetlen fordítóknak engedélyezett műveletek végrehajtása",
"translate-workflow-state-": "(nem beállított)",
"translate-workflowstatus": "Állapot: $1",
- "translate-workflow-set-do": "Beállít",
"translate-workflow-set-doing": "Beállítás…",
- "translate-workflow-set-done": "Beállítva!",
- "translate-workflow-set-error-alreadyset": "A kért állapot megegyezik a jelenlegi állapottal.",
"translate-workflow-autocreated-summary": "Automatikus lap létrehozás $1 munkafolyamat állapothoz.",
"translate-stats-workflow": "Állapot",
"translate-workflowgroup-label": "Munkafolyamat állapotok",
"translate-dynagroup-recent-label": "Friss fordítások",
+ "translate-dynagroup-recent-desc": "Ez az üzenetcsoport tartalmaz minden friss fordítást erre a nyelvre.\nFordítás-ellenőrzéshez hasznos.",
"translate-dynagroup-additions-label": "Legutóbb hozzáadva",
- "translate-dynagroup-by": "{{GENDER:$1|$1}} fordítása",
- "translate-dynagroup-byc": "{{GENDER:$1|$1}} fordítása ($2)",
- "translate-gethelp": "Súgó",
+ "translate-dynagroup-additions-desc": "Ez az üzenetcsoport új és megváltoztatott üzeneteket tartalmaz.",
"translate-msggroupselector-projects": "Üzenetcsoport",
+ "translate-msggroupselector-search-placeholder": "Csoportok keresése",
"translate-msggroupselector-search-all": "Mind",
"translate-msggroupselector-search-recent": "Legutóbbi",
"translate-msggroupselector-view-subprojects": "$1 alcsoport",
@@ -299,21 +299,25 @@
"tux-status-fuzzy": "Elavult",
"tux-status-proofread": "Ellenőrizve",
"tux-status-translated": "Lefordítva",
- "tux-status-saving": "Mentés...",
+ "tux-status-saving": "Mentés…",
"tux-status-unsaved": "Nincs mentve",
+ "tux-save-unknown-error": "Ismeretlen hiba történt.",
"tux-editor-placeholder": "A te fordításod",
+ "tux-editor-editsummary-placeholder": "Opcionális összefoglaló",
"tux-editor-paste-original-button-label": "Forrásszöveg beillesztése",
"tux-editor-discard-changes-button-label": "Változtatások elvetése",
"tux-editor-save-button-label": "Fordítás elmentése",
"tux-editor-skip-button-label": "Továbblépés a következőre",
"tux-editor-cancel-button-label": "Mégse",
"tux-editor-confirm-button-label": "Fordítás megerősítése",
- "tux-editor-shortcut-info": "Nyomd meg a „$1” billentyűkombinációt a mentéshez, a „$2”-t a továbblépéshez vagy az „$3”-ot további gyorsbillentyűk megjelenítéséhez.",
+ "tux-editor-proofread-button-label": "Megjelölés átnézettként",
+ "tux-editor-shortcut-info": "Nyomd meg a „$1” billentyűkombinációt a mentéshez, az „$2”-t a továbblépéshez, az „$4”-t az összefoglaló megadásához vagy az „$3”-ot további gyorsbillentyűk megjelenítéséhez.",
"tux-editor-edit-desc": "Dokumentáció szerkesztése",
"tux-editor-add-desc": "Dokumentáció hozzáadása",
"tux-editor-suggestions-title": "Javaslatok",
"tux-editor-in-other-languages": "Más nyelveken",
"tux-editor-need-more-help": "További segítségre van szükséged?",
+ "tux-editor-ask-help": "További információ kérése",
"tux-editor-tm-match": "$1%-os egyezés",
"tux-warnings-more": "$1 további",
"tux-warnings-hide": "elrejtés",
@@ -362,14 +366,18 @@
"tux-editor-close-tooltip": "Bezárás",
"tux-editor-expand-tooltip": "Szélesebb felület",
"tux-editor-collapse-tooltip": "Összecsukás",
+ "tux-editor-message-tools-show-editor": "Megjelenítés wikiszerkesztőben",
"tux-editor-message-tools-history": "Laptörténet",
"tux-editor-message-tools-delete": "Törlés",
"tux-editor-message-tools-translations": "Összes fordítás",
+ "tux-editor-message-tools-linktothis": "Hivatkozás erre az üzenetre",
"tux-editor-loading": "Betöltés…",
"translate-search-more-languages-info": "$1 további nyelv",
"translate-statsbar-tooltip": "$1% lefordítva, $2% átnézve",
"translate-statsbar-tooltip-with-fuzzy": "$1% lefordítva, $2% átnézve, $3% elavult",
"translate-search-more-groups-info": "$1 további csoport",
"translate-ulsdep-title": "Konfigurációs hiba",
- "translate-ulsdep-body": "A fordítás kiterjesztés a [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector Universal Language Selector kiterjesztésen] alapszik."
+ "translate-ulsdep-body": "A fordítás kiterjesztés a [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector Universal Language Selector kiterjesztésen] alapszik.",
+ "tux-session-expired": "Már nem vagy bejelentkezve. Jelentkezz be egy másik fülön, vagy másold ki a mentetlen fordításaidat, jelentkezz be, gyere vissza erre a lapra és másold vissza a fordításaidat.",
+ "tux-nojs": "Ez az eszköz nem működik JavaScript nélkül. A JavaScript le van tiltva, nem működik, vagy ez a böngésző nem támogatott."
}
diff --git a/MLEB/Translate/i18n/core/hy.json b/MLEB/Translate/i18n/core/hy.json
index 7ec2fa67..6ce19ec8 100644
--- a/MLEB/Translate/i18n/core/hy.json
+++ b/MLEB/Translate/i18n/core/hy.json
@@ -3,13 +3,14 @@
"authors": [
"Chaojoker",
"Vadgt",
- "Դավիթ Սարոյան"
+ "Դավիթ Սարոյան",
+ "Beko"
]
},
- "translate": "Թագմանություն",
- "translate-taction-translate": "Թագմանություն",
+ "translate": "Թարգմանություն",
+ "translate-taction-translate": "Թարգմանություն",
"translate-taction-proofread": "Սրբագրել",
- "translate-edit-translation": "Թագմանություն",
+ "translate-edit-translation": "Թարգմանություն",
"translate-magic-module": "Մոդուլ:",
"translate-sidebar-alltrans": "Այլ լեզուներով",
"translate-manage-import-new": "Նոր Հաղորդագրություն $1",
diff --git a/MLEB/Translate/i18n/core/ia.json b/MLEB/Translate/i18n/core/ia.json
index 0d770b39..811393e1 100644
--- a/MLEB/Translate/i18n/core/ia.json
+++ b/MLEB/Translate/i18n/core/ia.json
@@ -6,11 +6,6 @@
},
"translate": "Traducer",
"translate-desc": "[[Special:Translate|Pagina special]] pro traducer MediaWiki e ultra",
- "translate-taskui-view": "Monstrar tote le messages",
- "translate-taskui-untranslated": "Monstrar messages non traducite",
- "translate-taskui-optional": "Monstrar messages optional",
- "translate-taskui-acceptqueue": "Solmente messages que io pote marcar como revidite",
- "translate-taskui-reviewall": "Revider tote le traductiones",
"translate-taskui-export-to-file": "Exportar in formato native",
"translate-taskui-export-as-po": "Exportar pro traduction foras de linea",
"translate-taction-translate": "Traducer",
@@ -39,7 +34,6 @@
"translate-page-description-hasoptional": "Iste gruppo de messages contine messages optional.\nLe messages optional debe solmente esser traducite si le lingua ha special exigentias,\ncomo non usar spatios o le translitteration de nomines proprie. $1",
"translate-page-description-hasoptional-open": "Monstrar messages optional.",
"translate-page-edit": "modificar",
- "translate-ext-url": "<hr />Sito web: $1",
"translate-optional": "(optional)",
"translate-ignored": "(ignorate)",
"translate-edit-title": "Modificar \"$1\"",
@@ -49,14 +43,17 @@
"translate-edit-no-information": "<em>Iste message non ha documentation.\nSi tu sape ubi o como iste message es usate, tu pote adjutar le altere traductores per adder documentation a iste message.</em>",
"translate-edit-information": "Information super le message ($1)",
"translate-edit-in-other-languages": "Iste message in altere linguas",
- "translate-edit-committed": "Traduction actual in software",
"translate-edit-warnings": "Advertimentos super traductiones incomplete",
- "translate-edit-tmsugs": "Suggestiones ab le memoria de traductiones",
"translate-edit-tmmatch-source": "Texto fonte pro traduction: $1",
"translate-edit-tmmatch": "$1% de correspondentia",
"translate-use-suggestion": "Reimplaciar le traduction actual per iste suggestion.",
"translate-edit-nopermission": "Tu debe obtener derectos de traduction pro poter traducer messages.",
"translate-edit-askpermission": "Obtener autorisation",
+ "exporttranslations": "Exportar traductiones",
+ "translate-export-form-format": "Formato",
+ "translate-export-invalid-format": "Specifica un formato valide.",
+ "translate-export-not-supported": "Le exportation de traductiones non es supportate.",
+ "translate-export-format-notsupported": "Le formato de exportation specificate non es supportate per le gruppo de messages.",
"translate-magic-pagename": "Traduction extendite de MediaWiki",
"translate-magic-help": "Tu pote traducer le aliases de paginas special, le parolas magic e le nomines de spatios de nomines.\n\nLe aliases de paginas special e le parolas magic pote haber plure traductiones.\nLe traductiones es separate per un comma (,).\nLe spatios de nomines pote haber solmente un traduction.\n\nLe traduction del spatio de nomines pro le discussion del projecto, <code>$1 talk</code>, pote esser complexe. Le codice <code>$1</code> es reimplaciate per le nomine del sito (per exemplo <code>{{ns:project_talk}}</code>).\nSi non es possibile in tu lingua formar un expression valide sin cambiar le nomine del sito, per favor contacta nos in [[Support]].\n\nTu debe esser traductor pro poter salveguardar le modificationes.\nLe modificationes non es salveguardate usque tu clicca super le button Salveguardar hic infra.",
"translate-magic-module": "Modulo:",
@@ -75,7 +72,7 @@
"translate-magic-namespace": "Nomines de spatios de nomines",
"translate-magic-notsaved": "Tu modification non ha essite salveguardate!",
"translate-magic-errors": "Corrige per favor le sequente {{PLURAL:$1|error|errores}} in le traductiones:",
- "translate-magic-saved": "Le modificationes ha essite salveguardate con successo.",
+ "translate-magic-saved": "Le modificationes ha essite salveguardate.",
"translate-checks-parameters": "Le sequente {{PLURAL:$2|parametro|parametros}} non es usate:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-parameters-unknown": "Le sequente {{PLURAL:$2|parametro|parametros}} es incognite:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-balance": "Il ha un numero impar de {{PLURAL:$2|parentheses|parentheses}}:\n<strong><nowiki>$1</nowiki></strong>",
@@ -102,7 +99,16 @@
"right-translate-import": "Importar traductiones foras de linea",
"action-translate-import": "importar traductiones foras de linea",
"right-translate-messagereview": "Revider traductiones",
+ "action-translate-messagereview": "revider traductiones",
"right-translate-groupreview": "Cambiar le stato del fluxo de travalio del gruppos de messages",
+ "action-translate-groupreview": "cambiar le stato del fluxo de travalio del gruppos de messages",
+ "translate-rcfilters-translations": "Traductiones",
+ "translate-rcfilters-translations-only-label": "Traductiones",
+ "translate-rcfilters-translations-only-desc": "Modificationes in paginas traducite.",
+ "translate-rcfilters-translations-filter-label": "Non traductiones",
+ "translate-rcfilters-translations-filter-desc": "Tote le modificationes que non es traductiones.",
+ "translate-rcfilters-translations-site-label": "Messages del sito",
+ "translate-rcfilters-translations-site-desc": "Personalisation de messages de sito in le spatio de nomines MediaWiki.",
"translate-rc-translation-filter": "Filtrar traductiones:",
"translate-rc-translation-filter-no": "Facer nihil",
"translate-rc-translation-filter-only": "Monstrar solmente traductiones",
@@ -134,8 +140,7 @@
"translate-statsf-language": "Lista de codices de lingua separate per commas:",
"translate-statsf-group": "Lista de codices de gruppo separate per commas:",
"translate-statsf-submit": "Previsualisar",
- "translate-tag-category": "Paginas traducibile",
- "translate-tag-page-desc": "Traduction del pagina wiki [[$2|$1]].",
+ "translate-tag-page-desc": "Traduction del pagina wiki [[$2|$1]] ab $3 ($4).",
"translate-sidebar-alltrans": "In altere linguas",
"translations": "Tote le traductiones",
"translations-summary": "Entra le nomine de un message infra pro monstrar tote le traductiones disponibile.",
@@ -176,16 +181,17 @@
"translate-mgs-noempty": "Non monstrar linguas sin traductiones",
"translate-mgs-submit": "Monstrar statisticas",
"translate-mgs-column-language": "Lingua",
- "translate-mgs-totals": "Tote le linguas insimul",
+ "translate-mgs-totals": "$1 {{PLURAL:$1|lingua|linguas}} in total",
"translate-mgs-invalid-group": "Le gruppo specificate, \"$1\", non existe.",
"translate-mgs-nothing": "Nihil a monstrar pro le statisticas requestate.",
"supportedlanguages": "Linguas supportate",
"supportedlanguages-summary": "Iste pagina presenta un lista de tote le linguas supportate per {{SITENAME}}, con le nomines del traductores laborante a iste lingua.\nLe nomine de un traductor appare tanto plus grande, quanto plus modificationes le traductor ha contribuite.\nLe color de un tracto de sublineamento indica quante tempore ha passate post le ultime activitate de un traductor.",
"supportedlanguages-colorlegend": "Legenda pro le colores: Ultime traduction $1 dies retro.",
- "supportedlanguages-translators": "{{PLURAL:$2|Traductor|Traductores}}: $1",
+ "supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|Traductor|Traductrice}}|Traductores}}: $1",
"supportedlanguages-recenttranslations": "traductiones recente",
"supportedlanguages-count": "$1 {{PLURAL:$1|lingua|linguas}} in total.",
"supportedlanguages-activity": "$1: $2 {{PLURAL:$2|modification|modificationes}} - ultime modification $3 {{PLURAL:$3|die|dies}} retro",
+ "abusefilter-edit-builder-vars-translate-source-text": "Texto original del unitate de traduction",
"translate-save": "Salveguardar ($1)",
"translate-jssti-add": "Adder al lista",
"managemessagegroups": "Gestion de gruppos de messages",
@@ -209,7 +215,6 @@
"translate-manage-toolong": "Le durata maximal de processamento de $1 {{PLURAL:$1|secunda|secundas}} ha essite excedite.\nResubmitte per favor le formulario pro continuar le processamento.",
"translate-manage-import-summary": "Un nove version es importate ex un fonte externe",
"translate-manage-conflict-summary": "Un nove version es importate ex un fonte externe.\nPer favor verifica.",
- "translate-manage-fuzzy-summary": "Le definition del message ha cambiate",
"translate-manage-submit": "Executar",
"translate-manage-intro-other": "Ci infra es un lista de modificationes de traductiones in lingua $1.\nPer favor, revide le modificationes e selige un action a prender pro cata actualisation.\nSi tu opta pro ignorar le modificationes, iste action es solmente temporari.",
"translate-manage-import-ok": "Importate: $1",
@@ -218,7 +223,7 @@
"translate-import-from-local": "Incargar un file local:",
"translate-import-load": "Cargar file",
"translate-import-err-dl-failed": "Impossibile obtener le file:\n$1",
- "translate-import-err-ul-failed": "Le cargamento del file non ha succedite",
+ "translate-import-err-ul-failed": "Le incargamento del file ha fallite",
"translate-import-err-invalid-title": "Le nomine de file <nowiki>$1</nowiki> es invalide.",
"translate-import-err-no-such-file": "Le file <nowiki>$1</nowiki> non existe o non ha essite incargate localmente.",
"translate-import-err-stale-group": "Le gruppo de messages al qual iste file pertine non existe.",
@@ -227,9 +232,7 @@
"translate-js-summary": "Summario:",
"translate-js-save": "Salveguardar",
"translate-js-next": "Salveguardar e aperir le sequente",
- "translate-js-nonext": "Isto esseva le ultime message in iste pagina.",
"translate-js-skip": "Saltar al sequente",
- "translate-js-save-failed": "Salveguarda fallite. Per favor reporta iste error.",
"translate-js-history": "Historia del traduction",
"translate-js-support": "Poner question",
"translate-js-support-title": "Demandar adjuta si il non ha sufficiente informationes pro traducer iste message correctemente.",
@@ -246,21 +249,9 @@
"translate-documentation-language": "documentation de messages",
"translate-searchprofile": "Traductiones",
"translate-searchprofile-tooltip": "Cercar in tote le traductiones",
+ "translate-searchprofile-note": "Plus optiones de recerca es disponibile con le [$1 recerca de traductiones].",
"translate-search-languagefilter": "Filtrar per lingua:",
"translate-search-nofilter": "Non filtrar",
- "translate-messagereview-submit": "Marcar como revidite",
- "translate-messagereview-progress": "Marca como revidite…",
- "translate-messagereview-failure": "Error al marcar como revidite: $1",
- "translate-messagereview-done": "Revidite",
- "translate-messagereview-reviews": "Revidite per {{PLURAL:$1|un usator|$1 usatores}}",
- "translate-messagereview-reviewswithyou": "Revidite per {{PLURAL:$1|un usator|$1 usatores}} includente te",
- "api-error-invalidrevision": "Traduction non trovate",
- "api-error-unknownmessage": "Message non trovate",
- "api-error-fuzzymessage": "Le traduction es marcate como obsolete",
- "api-error-owntranslation": "Tu non pote marcar tu proprie traductiones como revidite.",
- "translate-messagereview-no-fuzzy": "Le traductiones obsolete (\"fuzzy\") non pote esser marcate como revidite.",
- "translate-messagereview-no-own": "Tu non pote marcar tu proprie traductiones como revidite.",
- "translate-messagereview-doit": "Marcar iste traduction como revidite.",
"log-name-translationreview": "Registro de revision de traductiones",
"log-description-translationreview": "Registro de tote le revisiones de traductiones e gruppos de messages.",
"logentry-translationreview-message": "$1 {{GENDER:$2|revideva}} le traduction $3",
@@ -273,10 +264,7 @@
"action-translate-sandboxaction": "exequer actiones autorisate pro usatores in cassa de sablo",
"translate-workflow-state-": "(non definite)",
"translate-workflowstatus": "Stato: $1",
- "translate-workflow-set-do": "Activar",
"translate-workflow-set-doing": "Activation...",
- "translate-workflow-set-done": "Activate!",
- "translate-workflow-set-error-alreadyset": "Le stato requestate es identic al stato actual.",
"translate-workflow-autocreated-summary": "Creation automatic de pagina pro le stato de fluxo de labor $1",
"translate-stats-workflow": "Stato",
"translate-workflowgroup-label": "Statos de fluxo de labor",
@@ -285,11 +273,6 @@
"translate-dynagroup-recent-desc": "Iste gruppo de messages monstra tote le traductiones recente in iste lingua.\nEs utile principalmente pro le revision de traductiones.",
"translate-dynagroup-additions-label": "Additiones recente",
"translate-dynagroup-additions-desc": "Iste gruppo de messages monstra le messages nove e cambiate.",
- "translate-dynagroup-by": "Traduction facite per {{GENDER:$1|$1}}",
- "translate-dynagroup-byc": "Traduction facite per {{GENDER:$1|$1}} ($2)",
- "translate-dynagroup-last": "Ultime modification per {{GENDER:$1|$1}}",
- "translate-dynagroup-lastc": "Ultime modification per {{GENDER:$1|$1}} ($2)",
- "translate-gethelp": "Adjuta",
"translate-msggroupselector-projects": "Gruppo de messages",
"translate-msggroupselector-search-placeholder": "Cercar gruppos",
"translate-msggroupselector-search-all": "Totes",
@@ -308,14 +291,17 @@
"tux-status-translated": "Traducite",
"tux-status-saving": "Salveguarda…",
"tux-status-unsaved": "Non salveguardate",
+ "tux-save-unknown-error": "Un error incognite ha occurrite.",
"tux-editor-placeholder": "Tu traduction",
+ "tux-editor-editsummary-placeholder": "Summario facultative",
"tux-editor-paste-original-button-label": "Collar texto original",
"tux-editor-discard-changes-button-label": "Abandonar modificationes",
"tux-editor-save-button-label": "Salveguardar traduction",
"tux-editor-skip-button-label": "Saltar al sequente",
"tux-editor-cancel-button-label": "Cancellar",
"tux-editor-confirm-button-label": "Confirmar traduction",
- "tux-editor-shortcut-info": "Preme \"$1\" pro salveguardar o \"$2\" pro saltar al sequente message o \"$3\" pro altere claves accelerator.",
+ "tux-editor-proofread-button-label": "Marcar como revidite",
+ "tux-editor-shortcut-info": "Preme \"$1\" pro salveguardar o \"$2\" pro saltar al sequente message o \"$4\" pro fornir un summario o \"$3\" pro altere claves accelerator.",
"tux-editor-edit-desc": "Modificar documentation",
"tux-editor-add-desc": "Adder documentation",
"tux-editor-suggestions-title": "Suggestiones",
@@ -344,7 +330,7 @@
"tux-editor-doc-editor-cancel": "Cancellar",
"tux-messagetable-more-messages": "$1 altere {{PLURAL:$1|message|messages}}",
"tux-messagetable-loading-messages": "Carga $1 {{PLURAL:$1|message|messages}}...",
- "tux-message-filter-placeholder": "Lista de filtros",
+ "tux-message-filter-placeholder": "Filtrar le lista",
"tux-message-filter-result": "$1 {{PLURAL:$1|resultato|resultatos}} trovate pro \"$2\"",
"tux-message-filter-advanced-button": "Recerca avantiate",
"tux-message-filter-optional-messages-label": "Messages optional",
@@ -370,14 +356,18 @@
"tux-editor-close-tooltip": "Clauder",
"tux-editor-expand-tooltip": "Displicar",
"tux-editor-collapse-tooltip": "Plicar",
+ "tux-editor-message-tools-show-editor": "Monstrar in editor wiki",
"tux-editor-message-tools-history": "Historia",
"tux-editor-message-tools-delete": "Deler",
"tux-editor-message-tools-translations": "Tote le traductiones",
+ "tux-editor-message-tools-linktothis": "Ligamine verso iste message",
"tux-editor-loading": "Cargamento…",
"translate-search-more-languages-info": "$1 altere {{PLURAL:$1|lingua|linguas}}",
"translate-statsbar-tooltip": "$1% traducite, $2% revidite",
"translate-statsbar-tooltip-with-fuzzy": "$1% traducite, $2% revidite, $3% obsolete",
"translate-search-more-groups-info": "$1 altere {{PLURAL:$1|gruppo|gruppos}}",
"translate-ulsdep-title": "Error de configuration",
- "translate-ulsdep-body": "Le extension Translate depende del [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector extension Universal Language Selector]."
+ "translate-ulsdep-body": "Le extension Translate depende del [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector extension Universal Language Selector].",
+ "tux-session-expired": "Le session ha essite claudite. Per favor, re-aperi session in un fenestra o scheda separate del navigator. Alternativemente, face un copia del traductiones non salveguardate, aperi session, retorna a iste pagina e re-insere le traductiones.",
+ "tux-nojs": "Iste instrumento non functiona sin JavaScript. Pote esser que JavaScript es disactivate o non functiona, o que iste navigator non es supportate."
}
diff --git a/MLEB/Translate/i18n/core/id.json b/MLEB/Translate/i18n/core/id.json
index a3153756..acac48ae 100644
--- a/MLEB/Translate/i18n/core/id.json
+++ b/MLEB/Translate/i18n/core/id.json
@@ -13,16 +13,13 @@
"Naval Scene",
"Rex",
"William Surya Permana",
- "පසිඳු කාවින්ද"
+ "පසිඳු කාවින්ද",
+ "NoiX180",
+ "Uchup19"
]
},
"translate": "Terjemahkan",
"translate-desc": "[[Special:Translate|Halaman istimewa]] untuk menerjemahkan MediaWiki dan lain-lain",
- "translate-taskui-view": "Tampilkan semua pesan",
- "translate-taskui-untranslated": "Tampilkan pesan yang belum diterjemahkan",
- "translate-taskui-optional": "Tampilkan pesan opsional",
- "translate-taskui-acceptqueue": "Hanya pesan yang dapat saya tandai sebagai telah ditinjau",
- "translate-taskui-reviewall": "Tinjau semua terjemahan",
"translate-taskui-export-to-file": "Ekspor dalam format asli",
"translate-taskui-export-as-po": "Ekspor untuk terjemahan luring",
"translate-taction-translate": "Terjemahkan",
@@ -52,24 +49,26 @@
"translate-page-description-hasoptional": "Kelompok pesan ini memuat pesan opsional.\nPesan opsional seharusnya hanya boleh diterjemahkan jika bahasa Anda memiliki keperluan khusus\nseperti tidak memakai spasi atau mengalihaksarakan nama umum. $1",
"translate-page-description-hasoptional-open": "Tampilkan pesan opsional.",
"translate-page-edit": "sunting",
- "translate-ext-url": "<hr />Situs web: $1",
"translate-optional": "(opsional)",
"translate-ignored": "(diabaikan)",
"translate-edit-title": "Sunting \"$1\"",
"translate-edit-definition": "Definisi pesan",
"translate-edit-translation": "Terjemahan",
"translate-edit-contribute": "berkontribusi",
- "translate-edit-no-information": "''Pesan ini tidak memiliki dokumentasi.''\n''Jika Anda tahu di mana dan bagaimana pesan ini digunakan, Anda dapat membantu penerjemah lain dengan menambahkan dokumentasi untuk pesan ini.''",
+ "translate-edit-no-information": "<em>Pesan ini tidak memiliki dokumentasi.\nJika Anda mengetahui di mana dan bagaimana pesan ini digunakan, Anda dapat membantu penerjemah lain dengan menambahkan dokumentasi untuk pesan ini.</em>",
"translate-edit-information": "Informasi pesan ($1)",
"translate-edit-in-other-languages": "Pesan dalam bahasa lain",
- "translate-edit-committed": "Terjemahan dalam perangkat lunak saat ini",
"translate-edit-warnings": "Peringatan mengenai terjemahan yang tak lengkap",
- "translate-edit-tmsugs": "Saran dari memori terjemahan dan terjemahan mesin",
"translate-edit-tmmatch-source": "Teks sumber terjemahan: $1",
"translate-edit-tmmatch": "$1% sesuai",
"translate-use-suggestion": "Ganti terjemahan saat ini dengan saran ini.",
- "translate-edit-nopermission": "Anda memerlukan izin untuk menerjemahkan pesan.",
+ "translate-edit-nopermission": "Anda memerlukan hak terjemahan untuk menerjemahkan pesan.",
"translate-edit-askpermission": "Minta izin",
+ "exporttranslations": "Ekspor terjemahan",
+ "translate-export-form-format": "Format",
+ "translate-export-invalid-format": "Silakan tentukan format yang sah.",
+ "translate-export-not-supported": "Ekspor terjemahan tidak didukung.",
+ "translate-export-format-notsupported": "Format ekspor yang diinginkan tidak didukung oleh kelompok pesan ini.",
"translate-magic-pagename": "Terjemahan MediaWiki yang Diperluas",
"translate-magic-help": "Anda dapat menerjemahkan alias untuk halaman istimewa, kata magis, dan ruang nama.\n\nAlias untuk halaman istimewa dan kata magis dapat memiliki beberapa terjemahan.\nSetiap terjemahan dipisahkan dengan tanda koma (,).\nRuang nama hanya boleh memiliki satu terjemahan.\n\nMenerjemahkan ruang nama pembicaraan proyek <code>pembicaraan $1</code> mungkin cukup rumit.\n<code>$1</code> akan digantikan dengan nama situs proyek (misalnya <code>{{ns:project_talk}}</code>).\nJika bahasa Anda tidak memungkinkan untuk membentuk suatu frase yang sah tanpa mengganti nama situs, silakan beri tahu kami di [[Support|halaman Dukungan]].\n\nAnda harus menjadi penerjemah untuk menyimpan perubahan.\nPerubahan tidak akan disimpan hingga Anda mengeklik tombol simpan di bawah.",
"translate-magic-module": "Modul:",
@@ -88,7 +87,7 @@
"translate-magic-namespace": "Nama ruang nama",
"translate-magic-notsaved": "Suntingan Anda tidak tersimpan!",
"translate-magic-errors": "Mohon perbaiki {{PLURAL:$1|kesalahan|kesalahan}} berikut pada terjemahan:",
- "translate-magic-saved": "Perubahan Anda berhasil tersimpan",
+ "translate-magic-saved": "Perubahan Anda telah disimpan.",
"translate-checks-parameters": "{{PLURAL:$2|Parameter|Parameter}} berikut ini tidak digunakan:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-parameters-unknown": "{{PLURAL:$2|Parameter|Parameter}} berikut ini tidak dikenali:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-balance": "Terdapat {{PLURAL:$2|tanda kurung|tanda kurung}} dengan jumlah yang tidak sama:\n<strong><nowiki>$1</nowiki></strong>",
@@ -115,6 +114,7 @@
"right-translate-import": "Mengimpor terjemahan luring",
"action-translate-import": "mengimpor terjemahan luring",
"right-translate-messagereview": "Meninjau terjemahan",
+ "action-translate-messagereview": "tinjau terjemahan",
"right-translate-groupreview": "Mengubah keadaan alur kerja kelompok pesan",
"translate-rc-translation-filter": "Saring terjemahan:",
"translate-rc-translation-filter-no": "Jangan lakukan apa pun",
@@ -147,8 +147,7 @@
"translate-statsf-language": "Daftar kode bahasa dipisahkan koma:",
"translate-statsf-group": "Daftar kode kelompok dipisahkan koma.",
"translate-statsf-submit": "Pratayang",
- "translate-tag-category": "Halaman yang dapat diterjemahkan",
- "translate-tag-page-desc": "Terjemahan atas halaman wiki [[$2|$1]].",
+ "translate-tag-page-desc": "Terjemahan dari halaman wiki [[$2|$1]] dalam bahasa $3 ($4).",
"translate-sidebar-alltrans": "Dalam bahasa lain",
"translations": "Semua terjemahan",
"translations-summary": "Masukkan sebuah nama pesan di bawah ini untuk menampilkan semua terjemahan yang tersedia.",
@@ -162,6 +161,7 @@
"translate-translations-history-short": "r",
"languagestats": "Statistik bahasa",
"languagestats-summary": "Halaman ini menampilkan statistik terjemahan untuk semua kelompok pesan dalam suatu bahasa tertentu.",
+ "messagegroupstats-summary": "Laman ini menampilkan statistik kelompok pesan.",
"languagestats-stats-for": "Statistik terjemahan untuk $1 ($2).",
"languagestats-recenttranslations": "terjemahan terkini",
"translate-langstats-incomplete": "Beberapa statistik pada halaman ini belum lengkap. Silakan muat ulang untuk mendapatkan lebih banyak statistik.",
@@ -196,10 +196,11 @@
"supportedlanguages-colorlegend": "Legenda warna: Terjemahan terakhir $1 hari yang lalu.",
"supportedlanguages-portallink": "[$1] $2 - $3",
"supportedlanguages-portallink-nocldr": "[$1] $2",
- "supportedlanguages-translators": "{{PLURAL:$2|Penerjemah|Penerjemah}}: $1",
+ "supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|Penerjemah}}|Penerjemah}}: $1",
"supportedlanguages-recenttranslations": "terjemahan terkini",
"supportedlanguages-count": "Total: $1 {{PLURAL:$1|bahasa|bahasa}}.",
"supportedlanguages-activity": "$1: $2 {{PLURAL:$2|suntingan|suntingan}} - suntingan terakhir $3 {{PLURAL:$3|hari|hari}} yang lalu",
+ "abusefilter-edit-builder-vars-translate-source-text": "Teks sumber satuan terjemahan",
"translate-save": "Simpan ($1)",
"translate-jssti-add": "Tambah ke daftar",
"managemessagegroups": "Pengelolaan kelompok pesan",
@@ -207,6 +208,7 @@
"translate-smg-nochanges": "Tidak ada perubahan yang dapat diproses.",
"translate-smg-submit": "Kirim perubahan untuk diproses",
"translate-smg-submitted": "Definisi pesan telah diperbarui. Perubahan sedang diproses di latar.",
+ "translate-smg-more": "Akan ada perubahan lainnya untuk diproses setelah menyerahkan perubahan ini.",
"translate-smg-left": "Konten pesan di wiki",
"translate-smg-right": "Peubahan baru",
"translate-manage-import-diff": "Pesan $1 | Tindakan: $2",
@@ -222,16 +224,15 @@
"translate-manage-toolong": "Waktu proses maksimum {{PLURAL:$1||}}$1 detik telah terlampaui.\nMohon kirimkan kembali formulir untuk melanjutkan proses.",
"translate-manage-import-summary": "Impor versi baru dari sumber luar",
"translate-manage-conflict-summary": "Mengimpor versi baru dari sumber luar.\nSilakan diperiksa.",
- "translate-manage-fuzzy-summary": "Definisi pesan telah berubah",
"translate-manage-submit": "Jalankan",
"translate-manage-intro-other": "Di bawah ini adalah daftar perubahan terjemahan dalam bahasa $1.\nSilakan tinjau perubahan-perubahan ini dan pilihlah tindakan yang ingin Anda lakukan untuk setiap perubahan.\nJika Anda memilih untuk tidak menghiraukan perubahan, tindakan ini hanya bersifat sementara.",
- "translate-manage-import-ok": "Impor versi baru dari halaman $1.",
- "translate-manage-import-done": "Semua selesai!",
+ "translate-manage-import-ok": "Diimpor: $1",
+ "translate-manage-import-done": "Impor selesai!",
"importtranslations": "Impor terjemahan",
"translate-import-from-local": "Unggah berkas lokal:",
"translate-import-load": "Muatkan berkas",
"translate-import-err-dl-failed": "Tidak dapat mengambil berkas:\n$1",
- "translate-import-err-ul-failed": "Pemuatan berkas tidak berhasil",
+ "translate-import-err-ul-failed": "Pengunggahan berkas gagal",
"translate-import-err-invalid-title": "Nama berkas <nowiki>$1</nowiki> yang diberikan tidak sah.",
"translate-import-err-no-such-file": "Berkas <nowiki>$1</nowiki> tidak ada atau belum di unggah kelokal.",
"translate-import-err-stale-group": "Kelompok pesan berkas ini tidak ditemukan.",
@@ -240,9 +241,7 @@
"translate-js-summary": "Ringkasan:",
"translate-js-save": "Simpan",
"translate-js-next": "Simpan dan buka selanjutnya",
- "translate-js-nonext": "Ini adalah pesan terakhir di halaman ini.",
"translate-js-skip": "Lewati ke selanjutnya",
- "translate-js-save-failed": "Gagal menyimpan. Silakan laporkan kesalahan ini.",
"translate-js-history": "Terjemahan terdahulu",
"translate-js-support": "Ajukan pertanyaan",
"translate-js-support-title": "Mintalah bantuan jika informasi yang ada tidak cukup untuk menerjemahkan pesan ini dengan benar.",
@@ -259,23 +258,9 @@
"translate-documentation-language": "Dokumentasi pesan",
"translate-searchprofile": "Terjemahan",
"translate-searchprofile-tooltip": "Cari dari semua terjemahan",
+ "translate-searchprofile-note": "Lebih banyak opsi penelusuran tersedia dalam [$1 penelusuran terjemahan].",
"translate-search-languagefilter": "Saring menurut bahasa:",
"translate-search-nofilter": "Tanpa penyaringan",
- "translate-messagereview-submit": "Tandai sudah ditinjau",
- "translate-messagereview-progress": "Menandai sudah ditinjau...",
- "translate-messagereview-failure": "Gagal menandai sudah tertinjau: $1",
- "translate-messagereview-done": "Tertinjau",
- "translate-messagereview-reviews": "Ditinjau oleh {{PLURAL:$1|seorang pengguna|$1 pengguna}}",
- "translate-messagereview-reviewswithyou": "Ditinjau oleh {{PLURAL:$1|Anda|$1 pengguna termasuk Anda}}",
- "api-error-invalidrevision": "Terjemahan tidak ditemukan",
- "api-error-unknownmessage": "Pesan tidak ditemukan",
- "api-error-fuzzymessage": "Terjemahan ditandai sebagai takjelas",
- "api-error-owntranslation": "Anda tidak dapat menandai terjemahan Anda sendiri tertinjau",
- "translate-messagereview-no-fuzzy": "Terjemahan takjelas tidak dapat ditandai sebagai telah ditinjau.",
- "translate-messagereview-no-own": "Anda tidak dapat menandai terjemahan Anda sendiri sebagai telah ditinjau.",
- "translate-messagereview-doit": "Tandai terjemahan ini sebagai telah ditinjau.",
- "group-translate-proofr.css": "/* CSS placed here will affect translation reviewers only */",
- "group-translate-proofr.js": "/* JS placed here will affect translation reviewer only */",
"log-name-translationreview": "Catatan peninjauan terjemahan",
"log-description-translationreview": "Catatan semua tinjauan terhadap terjemahan dan kelompok pesan.",
"logentry-translationreview-message": "$1 {{GENDER:$2|telah meninjau}} terjemahan $3",
@@ -288,21 +273,14 @@
"action-translate-sandboxaction": "menjalankan tindakan yang masuk daftar putih untuk pengguna dalam bak pasir",
"translate-workflow-state-": "(tidak ditetapkan)",
"translate-workflowstatus": "Status: $1",
- "translate-workflow-set-do": "Tetapkan",
"translate-workflow-set-doing": "Sedang menetapkan...",
- "translate-workflow-set-done": "Ditetapkan!",
- "translate-workflow-set-error-alreadyset": "Status yang diminta sama dengan status saat ini.",
"translate-workflow-autocreated-summary": "Pembuatan halaman otomatis untuk status alur kerja $1",
"translate-stats-workflow": "Status",
"translate-workflowgroup-label": "Status alur kerja",
"translate-dynagroup-recent-label": "Terjemahan terkini",
+ "translate-dynagroup-recent-desc": "Kelompok pesan ini menampilkan seluruh terjemahan terkini dalam bahasa ini.\nSangat berguna ketika mengerjakan tugas peninjauan.",
"translate-dynagroup-additions-label": "Penambahan terkini",
"translate-dynagroup-additions-desc": "Kelompok pesan ini menampilkan pesan yang baru dan yang telah berubah.",
- "translate-dynagroup-by": "Terjemahan dibuat oleh {{GENDER:$1|$1}}",
- "translate-dynagroup-byc": "Terjemahan dibuat oleh {{GENDER:$1|$1}} ($2)",
- "translate-dynagroup-last": "Perubahan terakhir oleh {{GENDER:$1|$1}}",
- "translate-dynagroup-lastc": "Perubahan terakhir oleh {{GENDER:$1|$1}} ($2)",
- "translate-gethelp": "Bantuan",
"translate-msggroupselector-projects": "Kelompok pesan",
"translate-msggroupselector-search-placeholder": "Cari kelompok",
"translate-msggroupselector-search-all": "Semua",
@@ -321,14 +299,17 @@
"tux-status-translated": "Telah diterjemahkan",
"tux-status-saving": "Sedang menyimpan...",
"tux-status-unsaved": "Belum disimpan",
+ "tux-save-unknown-error": "Terjadi galat tak dikenal.",
"tux-editor-placeholder": "Terjemahan Anda",
+ "tux-editor-editsummary-placeholder": "Ringkasan opsional",
"tux-editor-paste-original-button-label": "Tempel teks sumber",
"tux-editor-discard-changes-button-label": "Buang perubahan",
"tux-editor-save-button-label": "Simpan terjemahan",
"tux-editor-skip-button-label": "Lewati",
"tux-editor-cancel-button-label": "Batal",
"tux-editor-confirm-button-label": "Konfirmasikan terjemahan",
- "tux-editor-shortcut-info": "Tekan \"$1\" untuk menyimpan atau \"$2\" untuk lanjut ke pesan selanjutnya",
+ "tux-editor-proofread-button-label": "Tandai sebagai telah ditinjau",
+ "tux-editor-shortcut-info": "Tekan \"$1\" untuk menyimpan atau \"$2\" untuk lanjut ke pesan selanjutnya atau \"$4\" untuk menyediakan ringkasan atau \"$3\" untuk pintasan lainnya.",
"tux-editor-edit-desc": "Sunting dokumentasi",
"tux-editor-add-desc": "Tambah dokumentasi",
"tux-editor-suggestions-title": "Saran",
@@ -364,7 +345,7 @@
"tux-proofread-translated-by-self": "Diterjemahkan oleh Anda",
"tux-empty-list-all": "Kelompok pesan ini kosong",
"tux-empty-list-all-guide": "Pilih kelompok pesan lainnya untuk diterjemahkan",
- "tux-translate-page-no-such-group": "'''Kelompok yang diminta tidak tersedia.''' Pilihlah kelompok pesan yang lain.",
+ "tux-translate-page-no-such-group": "<strong>Kelompok yang diinginkan tidak tersedia.</strong> Pilihlah kelompok pesan yang berbeda.",
"tux-empty-list-translated": "Tidak ada pesan yang telah diterjemahkan",
"tux-empty-list-translated-guide": "Anda dapat membantu menerjemahkan",
"tux-empty-list-translated-action": "Terjemahkan",
@@ -383,11 +364,17 @@
"tux-editor-close-tooltip": "Tutup",
"tux-editor-expand-tooltip": "Bentangkan",
"tux-editor-collapse-tooltip": "Ciutkan",
+ "tux-editor-message-tools-show-editor": "Tampilkan dalam penyunting wiki",
"tux-editor-message-tools-history": "Riwayat",
+ "tux-editor-message-tools-delete": "Hapus",
"tux-editor-message-tools-translations": "Semua terjemahan",
"tux-editor-loading": "Sedang memuat...",
"translate-search-more-languages-info": "$1 {{PLURAL:$1|bahasa|bahasa}} lainnya",
"translate-statsbar-tooltip": "$1% telah diterjemahkan, $2% telah ditinjau",
"translate-statsbar-tooltip-with-fuzzy": "$1% telah diterjemahkan, $2% telah ditinjau, $3% usang",
- "translate-search-more-groups-info": "$1 {{PLURAL:$1|kelompok|kelompok}} lainnya"
+ "translate-search-more-groups-info": "$1 {{PLURAL:$1|kelompok|kelompok}} lainnya",
+ "translate-ulsdep-title": "Galat konfigurasi",
+ "translate-ulsdep-body": "Ekstensi Terjemahan bergantung pada [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector ekstensi Pemilihan Bahasa Universal].",
+ "tux-session-expired": "Anda sudah tidak lagi masuk log. Silakan masuk log di tab yang terpisah. Atau, buatlah salinan dari terjemahan yang belum disimpan, masuk log, kembali ke halaman ini, lalu masukkan kembali terjemahan Anda.",
+ "tux-nojs": "Laman ini memerlukan JavaScript."
}
diff --git a/MLEB/Translate/i18n/core/ig.json b/MLEB/Translate/i18n/core/ig.json
index e4969f4c..8cd75327 100644
--- a/MLEB/Translate/i18n/core/ig.json
+++ b/MLEB/Translate/i18n/core/ig.json
@@ -10,17 +10,18 @@
"translate-page-language": "Ásụ̀sụ̀",
"translate-page-limit": "Érúrú",
"translate-submit": "Ga wèré",
- "translate-page-navigation-legend": "Otú Uzọr",
+ "translate-page-navigation-legend": "Nturuụzọ̀",
"translate-page-showing-none": "Ozi adighi I zi.",
"translate-next": "Ihü sò",
"translate-page-edit": "mèzi",
"translate-optional": "(ichóró)",
"translate-ignored": "(atùfùghịrị)",
+ "translate-edit-title": "Mèzi \"$1\"",
"translate-edit-definition": "Mkpurụ ómárí ozi",
"translate-magic-cm-to-be": "I-bu",
- "translate-magic-cm-save": "Domá",
+ "translate-magic-cm-save": "Dònye",
"translate-rc-translation-filter-no": "Emela ihe obulà",
- "translate-stats-edits": "Mmezi",
+ "translate-stats-edits": "Ḿmezi",
"translate-stats-users": "Ndi na kuwari asụsụ na asụsụ nke ozor",
"translate-statsf-width": "Íbụ ime ogụgụ pixel:",
"translate-statsf-height": "Ógólógó ime ogụgụ pixel:",
@@ -29,20 +30,26 @@
"translate-statsf-count": "Güo ógólógó:",
"translate-statsf-count-edits": "Ogụgụ orü",
"translate-statsf-count-users": "Ndi na su asụsụ di ngwamme",
- "translate-sidebar-alltrans": "Na asụsụ ozor",
+ "translate-sidebar-alltrans": "Nà asụ̀sụ̀ ndị ọ̀zọ",
"translate-translations-fieldset-title": "Ozi",
"translate-translations-messagename": "Áhà:",
"translate-translations-project": "Nzu:",
"translate-language": "Ásụ̀sụ̀",
"translate-percentage-complete": "Mmechá",
- "translate-save": "Domá ($1)",
+ "translate-save": "Dònye ($1)",
"translate-jssti-add": "Tinyé na ndetu",
- "translate-manage-import-new": "Ozi ohúrù $1",
+ "translate-manage-import-new": "Ozi ọhụrụ $1",
"translate-manage-import-deleted": "Ozi bakashịrị $1",
"translate-manage-import-done": "Omechá!",
+ "translate-js-save": "Dònye",
"translate-gs-code": "Edemede i zonari",
"translate-gs-continent": "Obodo ukwu",
"translate-gs-speakers": "Ndi na su",
"translate-gs-multiple": "Onuogụgụ kachara otụ",
- "translate-gs-total": "Òlé níle"
+ "translate-gs-total": "Òlé níle",
+ "tux-edit": "Mèzi",
+ "tux-editor-cancel-button-label": "Hapụ̀",
+ "tux-editor-in-other-languages": "Nà asụ̀sụ̀ ndị ọ̀zọ",
+ "tux-proofread-edit-label": "Mèzi",
+ "tux-editor-doc-editor-cancel": "Hapụ̀"
}
diff --git a/MLEB/Translate/i18n/core/ilo.json b/MLEB/Translate/i18n/core/ilo.json
index 8d0861b3..259dc506 100644
--- a/MLEB/Translate/i18n/core/ilo.json
+++ b/MLEB/Translate/i18n/core/ilo.json
@@ -8,11 +8,6 @@
},
"translate": "Ipatarus",
"translate-desc": "[[Special:Translate|Espesial a panid]] para iti panagipatarus ti MediaWiki ken iti labes",
- "translate-taskui-view": "Ipakita amin dagiti mensahe",
- "translate-taskui-untranslated": "Ipakita dagiti saan pay a naipatarus a mensahe",
- "translate-taskui-optional": "Ipakita dagiti pagpilian a mensahe",
- "translate-taskui-acceptqueue": "Dagiti laeng mensahe a mamarkaak a kas narepaso",
- "translate-taskui-reviewall": "Irepaso amin dagiti patarus",
"translate-taskui-export-to-file": "Iparuar iti patneng a pormat",
"translate-taskui-export-as-po": "Iruar para iti off-line a panangipatarus",
"translate-taction-translate": "Ipatarus",
@@ -32,13 +27,13 @@
"translate-page-limit-option": "$1 {{PLURAL:$1|a mensahe|kadagiti mensahe}} tunggal maysa a panid",
"translate-submit": "Alaen",
"translate-page-navigation-legend": "Panagdaliasat",
- "translate-page-showing": "Agipakpakita kadagiti mensahe manipud ti $1 aginggana ti $2 iti $3.",
+ "translate-page-showing": "Agipakpakita kadagiti mensahe manipud iti $1 aginggana iti $2 iti $3.",
"translate-page-showing-all": "Agipakpakita ti $1 {{PLURAL:$1|a mensahe|a mensahe}}.",
"translate-page-showing-none": "Awan dagiti maiparang a mensahe.",
"translate-next": "Sumaruno a panid",
"translate-prev": "Napalabas a panid",
"translate-page-description-legend": "Pakaammo a maipanggep ti grupo",
- "translate-page-description-hasoptional": "Daytoy a grupo ti mensahe ket aglaon kadagiti pagpilian a mensahe.\nDagiti pagpilian a mensahe ket maipatarus laeng kuma no ti pagsasaom ket ket addaan ti naipangruna a kammasapulan\nkasla ti saan a panag-usar kadagiti pagbaetan wenno transliterasion iti maitutop a nagnagan. $1",
+ "translate-page-description-hasoptional": "Daytoy a grupo ti mensahe ket aglaon kadagiti pagpilian a mensahe.\nDagiti pagpilian a mensahe ket maipatarus laeng kuma no ti pagsasaom ket ket addaan ti naipangruna a kammasapulan\nkasla ti saan a panagusar kadagiti pagbaetan wenno transliterasion iti maitutop a nagnagan. $1",
"translate-page-description-hasoptional-open": "Ipakita dagiti pagpilian a mensahe.",
"translate-page-edit": "urnosen",
"translate-optional": "(pagpilian)",
@@ -50,10 +45,8 @@
"translate-edit-no-information": "<em>Daytoy a mensahe ket awan ti dokumentasionna.\nNo ammom ti ayan wenno kasano ti pannaka-usar daytoy a mensahe, matulongam dagiti sabali nga agipatpatarus babaen ti panagnayon ti dokumentasion daytoy a mensahe.</em>",
"translate-edit-information": "Pakaammo a maipanggep ti mensahe ($1)",
"translate-edit-in-other-languages": "Mensahe kadagiti sabali a pagsasao",
- "translate-edit-committed": "Agdama a panakaipatarus iti software",
"translate-edit-warnings": "Dagiti ballaag a maipanggep kadagiti saan a kompleto a patarus",
- "translate-edit-tmsugs": "Dagiti singasing manipud ti laglagip ti panagitarus ken panagitarus ti makina",
- "translate-edit-tmmatch-source": "Testo a taudan ti panagitarus: $1",
+ "translate-edit-tmmatch-source": "Teksto a taudan ti panagitarus: $1",
"translate-edit-tmmatch": "$1% a kapada",
"translate-use-suggestion": "Sukatan ti agdama panakaipatarus iti daytoy a singasing.",
"translate-edit-nopermission": "Masapolmo ti karbengan ti panagipatarus tapno makaipatarus kadagiti mensahe.",
@@ -86,7 +79,7 @@
"translate-checks-plural": "Ti panangipalawag ket agus-usar ti <nowiki>{{PLURAL:}}</nowiki> ngem ti panangipatarus ket saan.",
"translate-checks-plural-forms": "Ti <nowiki>{{PLURAL:}}</nowiki> ket naikkan {{PLURAL:$1|ti maysa a porma|kadagiti $1 a porma}} ngem {{PLURAL:$2|maysa laeng a porma|$2 a porporma}} ti masuportaran (malaksid ti 0= ken 1= a porporma).",
"translate-checks-plural-dupe": "Ti <nowiki>{{PLURAL:}}</nowiki> ket addaan ti duplikado a porporma iti gibus. Ti <nowiki>{{PLURAL:$1|karnero|karnero}}</nowiki> ket maisurat kuma a kas <nowiki>{{PLURAL:$1|karnero}}</nowiki>.",
- "translate-checks-pagename": "Ti nagan ti espasio ket nagbaliw manipud ti panangipalawag",
+ "translate-checks-pagename": "Ti nagan ti espasio ket nagbaliw manipud iti panangipalawag",
"translate-checks-format": "Daytoy a patarus ket saanna a suroten ti panangipalawag wenno addaan ti imbalido a gramatika:$1",
"translate-checks-escape": "Dagiti sumaganad a pangitalaw ket mabalin nga aksidental: <strong>$1</strong>",
"translate-checks-parametersnotequal": "Ti bilang ti parametro ket {{PLURAL:$1|$1}}; nasken kuma a {{PLURAL:$2|$2}}.",
@@ -135,7 +128,6 @@
"translate-statsf-language": "Listaan dagiti kodigo ti pagsasao nga insinsina ti koma:",
"translate-statsf-group": "Listaan ti grupo dagiti kodigo nga insinsina ti koma:",
"translate-statsf-submit": "Ipadas",
- "translate-tag-category": "Maipatarus a pampanid",
"translate-tag-page-desc": "Patarus ti panid ti wiki ti [[$2|$1]].",
"translate-sidebar-alltrans": "Iti sabali a sasao",
"translations": "Amin a patarus",
@@ -173,7 +165,7 @@
"translate-mgs-fieldset": "Ipakita dagiti kakaykayatan",
"translate-mgs-group": "Grupo ti mensahe:",
"translate-mgs-nocomplete": "Saan nga iparang dagiti pagsasao nga addaan ti kompleto a patarus",
- "translate-mgs-noempty": "Saan nga iparang dagiti pagsasao nga awan dagiti aniaman a patarus",
+ "translate-mgs-noempty": "Saan nga iparang dagiti pagsasao nga awan dagiti ania man a patarus",
"translate-mgs-submit": "Ipakita ti estadistika",
"translate-mgs-column-language": "Pagsasao",
"translate-mgs-totals": "Pagtiponen amin dagiti pagsasao",
@@ -207,9 +199,8 @@
"translate-manage-nochanges-other": "Awan dagiti binalbaliwan para iti daytoy a pagsasao.\nUsaren ti silpo dita baba tapno agsubli idiay naisalaysay a panagkita ti grupo.",
"translate-manage-inconsistent": "Nakaduktal ti bangking iti kiddaw.\nPangaasi nga agkita kadagiti panagbalbaliw ket padasen manen.\nDagiti salaysay: $1.",
"translate-manage-toolong": "Ti kaaduan a panagproseso nga oras iti $1 a {{PLURAL:$1|segundo|segsegundo}} ket nalabsan.\nPangngaasi nga ited manen ti porma tapno maituloy ti panagproseso.",
- "translate-manage-import-summary": "Agal-ala ti baro a bersion manipud ti akin-ruar a taudan",
- "translate-manage-conflict-summary": "Agal-ala ti baro a bersion manipud ti akin-ruar a taudan.\nPangngaasi a kitaen.",
- "translate-manage-fuzzy-summary": "Nagbaliw ti panangipalawag ti mensahe",
+ "translate-manage-import-summary": "Agal-ala ti baro a bersion manipud iti akin-ruar a taudan",
+ "translate-manage-conflict-summary": "Agal-ala ti baro a bersion manipud iti akin-ruar a taudan.\nPangngaasi a kitaen.",
"translate-manage-submit": "Aramiden",
"translate-manage-intro-other": "Dita baba ket listaan dagiti panagbaliw ti patarus iti pagsasao ti $1.\nPangngaasi nga irepaso dagiti binaliwan ken agpili ti tignay a kayatmo nga aramiden para iti tunggal maysa pabaro.\nNo piliem a saan nga ikaskaso dagiti ibinaliwan, temporario laeng daytoy a tignay.",
"translate-manage-import-ok": "Nagala: $1",
@@ -227,9 +218,7 @@
"translate-js-summary": "Pakabuklan:",
"translate-js-save": "Idulin",
"translate-js-next": "Idulin ken lukatan ti sumaruno",
- "translate-js-nonext": "Daytoy ti naudi a mensahe iti daytoy a panid",
"translate-js-skip": "Mapan iti sumaruno",
- "translate-js-save-failed": "Napaay ti panagidulin. Pangngaasi nga ireporta daytoy a biddut.",
"translate-js-history": "Pakasaritaan ti patarus",
"translate-js-support": "Agdamag ti saludsod",
"translate-js-support-title": "Agdamag ti tulong no awan ti makaanay a pakaamo tapno husto ti pannakaipatarus daytoy a mensahe.",
@@ -248,23 +237,10 @@
"translate-searchprofile-tooltip": "Agbiruk manipud kadagiti amin a patarus",
"translate-search-languagefilter": "Sagaten babaen ti pagsasao:",
"translate-search-nofilter": "Awan panagsagat",
- "translate-messagereview-submit": "Markaan a narepaso",
- "translate-messagereview-progress": "Agmarmarka a kas narepaso...",
- "translate-messagereview-failure": "Napaay ti panagmarka a kas narepaso: $1",
- "translate-messagereview-done": "Narepaso",
- "translate-messagereview-reviews": "Rinepaso babaen {{PLURAL:$1|ti maysa nga agar-aramat|dagiti $1 nga agar-aramat}}",
- "translate-messagereview-reviewswithyou": "{{PLURAL:$1|Rinepasom|Rinepaso dagiti $1 nga agr-aramat ken nairamanka}}",
- "api-error-invalidrevision": "Saan a nabirukan ti patarus",
- "api-error-unknownmessage": "Saan a nabirukan ti mensahe",
- "api-error-fuzzymessage": "Ti patarus ket namarkaan a kas saan a nalawag",
- "api-error-owntranslation": "Saanmo a mamarkaan dagiti bukodmo a patarus a kas narepaso",
- "translate-messagereview-no-fuzzy": "Dagit saan a nalawag a panagipatarus ket saan a mabalin a mamarkaan a kas narepaso.",
- "translate-messagereview-no-own": "Saanmo a mamarkaan dagiti bukodmo a patarus a kas narepaso.",
- "translate-messagereview-doit": "Markaam daytoy a patarus a kas narepaso.",
"log-name-translationreview": "Listaan ti panagrepaso ti patarus",
"log-description-translationreview": "Ilista amin dagiti panagrepaso kadagiti patarus ken dagiti grupo ti mensahe.",
"logentry-translationreview-message": "Ni $1 ket {{GENDER:$2|nagrepaso}} ti patarus ti $3",
- "logentry-translationreview-group": "Ni $1 ket {{GENDER:$2|binaliwanna}} ti kasasaad dagiti $4 a patarus ti $3 manipud ti $6 iti $7",
+ "logentry-translationreview-group": "Ni $1 ket {{GENDER:$2|binaliwanna}} ti kasasaad dagiti $4 a patarus ti $3 manipud iti $6 iti $7",
"group-translate-sandboxed": "Dagiti di naaprobaran nga agipatpatarus",
"group-translate-sandboxed-member": "{{GENDER:$1|di naaprobaran nga agipatpatarus}}",
"right-translate-sandboxmanage": "Taripatuen dagiti naipadpadas nga agar-aramat",
@@ -273,10 +249,7 @@
"action-translate-sandboxaction": "aramiden dagiti tignay a maipalubos kadagiti naipadpadas nga agar-aramat",
"translate-workflow-state-": "(waswasen)",
"translate-workflowstatus": "Kasasaad: $1",
- "translate-workflow-set-do": "Isaad",
"translate-workflow-set-doing": "Isadsaad...",
- "translate-workflow-set-done": "Naisaaden!",
- "translate-workflow-set-error-alreadyset": "Ti kiniddaw a kasasaad ket kapada ti agdama a kasasaad.",
"translate-workflow-autocreated-summary": "Automatiko a pannakapartuat ti panid para iti kasasaad ti ayus ti obra ti $1",
"translate-stats-workflow": "Kasasaad",
"translate-workflowgroup-label": "Dagiti kasasaad ti ayus ti obra",
@@ -285,13 +258,8 @@
"translate-dynagroup-recent-desc": "Daytoy a grupo ti mensahe ket mangipakpakita kadagiti amin a kinaudi a patarus iti daytoy a pagsasao.\nKaserbian daytoy para iti obra ti panagrepaso.",
"translate-dynagroup-additions-label": "Dagiti kinaudi a nainayon",
"translate-dynagroup-additions-desc": "Daytoy a grupo ti mensahe ket mangipakpakita kadagiti baro ken nabaliwan a mensahe.",
- "translate-dynagroup-by": "Patarus nga inaramid babaen ni {{GENDER:$1|$1}}",
- "translate-dynagroup-byc": "Patarus nga inaramid babaen ni {{GENDER:$1|$1}} ($2)",
- "translate-dynagroup-last": "Kinaudi a panagbaliw babaen ni {{GENDER:$1|$1}}",
- "translate-dynagroup-lastc": "Kinaudi a panagbaliw babaen ni {{GENDER:$1|$1}} ($2)",
- "translate-gethelp": "Tulong",
"translate-msggroupselector-projects": "Grupo ti mensahe",
- "translate-msggroupselector-search-placeholder": "Biruken dagiti grupo",
+ "translate-msggroupselector-search-placeholder": "Agbiruk kadagiti grupo",
"translate-msggroupselector-search-all": "Amin",
"translate-msggroupselector-search-recent": "Kinaudi",
"translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|a subgrupo|kadagiti subgrupo}}",
@@ -309,7 +277,7 @@
"tux-status-saving": "Agiduldulin...",
"tux-status-unsaved": "Di naidulin",
"tux-editor-placeholder": "Ti patarusmo",
- "tux-editor-paste-original-button-label": "Ipegket ti testo ti taudan",
+ "tux-editor-paste-original-button-label": "Ipegket ti teksto ti taudan",
"tux-editor-discard-changes-button-label": "Iwagsak dagiti binaliwan",
"tux-editor-save-button-label": "Idulin ti patarus",
"tux-editor-skip-button-label": "Mapan iti sumaruno",
@@ -367,7 +335,7 @@
"tux-empty-list-other-guide": "Makatulongka nga agrepaso kadagiti addan a naipatarus",
"tux-empty-list-other-action": "Agrepaso kadagiti patarus",
"tux-empty-list-other-link": "Ipakita amin dagiti mensahe",
- "tux-editor-close-tooltip": "Irekep",
+ "tux-editor-close-tooltip": "Irikep",
"tux-editor-expand-tooltip": "Palawaen",
"tux-editor-collapse-tooltip": "Rebbaen",
"tux-editor-message-tools-history": "Pakasaritaan",
diff --git a/MLEB/Translate/i18n/core/io.json b/MLEB/Translate/i18n/core/io.json
index b5fa3ba2..f7152651 100644
--- a/MLEB/Translate/i18n/core/io.json
+++ b/MLEB/Translate/i18n/core/io.json
@@ -2,33 +2,124 @@
"@metadata": {
"authors": [
"Malafaya",
- "Wyvernoid"
+ "Wyvernoid",
+ "Lakaoso",
+ "Joao Xavier"
]
},
"translate": "Traduko",
+ "translate-taction-lstats": "Linguala statistiki",
+ "translate-taction-mstats": "Statistiki pri grupi di mesaji",
+ "translate-page-no-such-language": "La linguo selektita esas nevalida.",
+ "translate-page-disabled": "Tradukuri ad ica linguo en ica grupo ne permisesas.\nMotivo:\n\n<em>$1</em>",
"translate-page-group": "Grupo",
"translate-page-language": "Linguo",
"translate-page-limit": "Limito",
+ "translate-submit": "Serchez",
"translate-next": "Sequanta pagino",
"translate-prev": "Antea pagino",
+ "translate-page-description-hasoptional": "Ca mesajo-grupo kontenas fakultativa mesaji.\nFakultativa mesaji mustas tradukesar nur se vua linguo havas specala bezoni, exemple ne uzar intervalo inter la vorti, o transliterizar propra nomi. $1",
"translate-page-edit": "redaktar",
+ "translate-edit-definition": "Defino di la mesajo",
"translate-edit-contribute": "kontributez",
- "translate-edit-information": "Informo pri mesajo \"$2\" ($1)",
- "translate-edit-in-other-languages": "Mesajo \"$1\" en altra lingui",
+ "translate-edit-no-information": "<em>Ica mesajo ne havas dokumentigo.\nSe vu savas ube o quale ica mesajo uzesas, vu povas helpar altra tradukuri, per la kreado di dokumentigo pri ica mesajo.</em>",
+ "translate-edit-information": "Informo pri mesajo ($1)",
+ "translate-edit-in-other-languages": "Mesajo en altra lingui",
+ "translate-edit-warnings": "Avizi pri nekompleta tradukuri",
+ "translate-magic-submit": "Serchez",
"translate-magic-cm-current": "Aktuala",
"translate-magic-cm-comment": "Komento:",
"translate-magic-cm-save": "Registragar",
"translate-magic-namespace": "Nomi di la nomari",
+ "translate-magic-notsaved": "Vua redakto ne konservesis!",
+ "translate-checks-balance": "Existas neegala quanto di {{PLURAL:$2|parentezo|parentezi}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-pref-nonewsletter": "Ne sendez \"newsletters\" a me per e-posto",
+ "translate-pref-editassistlang-help": "Listo pri kodexo di lingui separata per komo (,).\nLa tradukuro di ula mesajo en ica lingui montresas dum ke vu tradukas.\nLa listo 'default' pri lingui dependas de vua propra linguo.",
+ "translate-pref-editassistlang-bad": "Linguala kodexo nevalida che la listo:\n<nowiki>$1</nowiki>.",
"translate-rc-translation-filter-only": "Montrez nur tradukuri",
"translate-stats-edits": "Editi",
"translate-stats-users": "Tradukisti",
+ "translate-statsf-scale": "Tempo-skalo:",
+ "translate-statsf-scale-months": "Monati",
+ "translate-statsf-scale-weeks": "Semani",
"translate-statsf-scale-days": "Dii",
"translate-statsf-scale-hours": "Hori",
"translate-statsf-submit": "Previdar",
"translate-sidebar-alltrans": "En altra lingui",
"translations": "Omna tradukuri",
+ "translations-summary": "Skribez la titulo di ula mesajo adinfre, por montrar omna tradukuri disponebla.",
+ "translate-translations-none": "Nula tradukuro existas por \"$1\"",
+ "translate-translations-count": "Trovita {{PLURAL:$1|1 tradukuro|$1 tradukuri}}.",
+ "translate-translations-fieldset-title": "Mesajo",
"translate-translations-messagename": "Nomo:",
+ "languagestats": "Linguala statistiki",
+ "languagestats-summary": "Ica pagino montras statistiki pri tradukuri de omna mesajo-grupi por ula linguo specifika.",
+ "languagestats-stats-for": "Statistiki pri tradukuro $1 ($2).",
+ "languagestats-recenttranslations": "recenta tradukuri",
+ "translate-langstats-expand": "Montrez",
+ "translate-langstats-expandall": "expansar omna",
+ "translate-langstats-collapseall": "rekoliar omna",
+ "translate-language-code": "Linguala kodexo",
+ "translate-language-code-field-name": "Linguala kodexo:",
+ "translate-suppress-complete": "Supresar vidado dil grupi di mesaji komplete tradukita",
+ "translate-ls-noempty": "Supresar de la vidado la grupi di mesaji komplete sen tradukuro",
"translate-language": "Linguo",
"translate-total": "Mesaji",
- "translate-save": "Registragar ($1)"
+ "translate-percentage-fuzzy": "Sen aktualigo",
+ "translate-languagestats-overall": "Omna grupi di mesaji kune",
+ "translate-ls-submit": "Montrez statistiki",
+ "translate-ls-column-group": "Grupo di mesaji",
+ "translate-mgs-pagename": "Statistiki pri la grupo di mesaji",
+ "translate-mgs-fieldset": "Montrez preferaji",
+ "translate-mgs-group": "Grupo di mesaji:",
+ "supportedlanguages": "Suportita lingui",
+ "supportedlanguages-summary": "Ica pagino montras listo pri omna lingui suportida da {{SITENAME}}, kune la nomi di la tradukeri qui verkas en singla de la lingui.\nLa nomo dil tradukero videsas tante plu granda kam la quanto di redakti quin ilu facabas.\nLa koloro dil substrekizo indikas quan recenta esas la verko dil tradukero hike.",
+ "supportedlanguages-colorlegend": "Skalo di kolori: Lasta modifikuri dum la $1 dii.",
+ "supportedlanguages-recenttranslations": "recenta tradukuri",
+ "supportedlanguages-count": "Entote $1 {{PLURAL:$1|linguo|lingui}}.",
+ "translate-save": "Registragar ($1)",
+ "managemessagegroups": "Administrado di mesajo-grupi",
+ "translate-smg-nochanges": "Existas nula modifiki por procedar.",
+ "translate-smg-left": "Kontenajo di la mesajo en la Wiki",
+ "translate-import-err-stale-group": "Ne existas la mesajo-grupo a quo ica arkivo apartenas.",
+ "translate-js-skip": "Saltez a la sequanta",
+ "translate-js-support": "Questionar",
+ "translate-documentation-language": "Dokumentado pri la mesajo",
+ "translate-searchprofile": "Tradukuri",
+ "translate-searchprofile-tooltip": "Serchez de omna tradukuri",
+ "translate-dynagroup-recent-label": "recenta tradukuri",
+ "translate-dynagroup-recent-desc": "Ica grupo di mesaji montras omna recenta tradukuri ad ica linguo.\nTo esas utila precipue por la revizo-taski.",
+ "translate-dynagroup-additions-label": "Recenta adjuntaji",
+ "translate-dynagroup-additions-desc": "Ica mesajo-grupo montras ambe la nova e la modifikita mesaji.",
+ "translate-msggroupselector-projects": "Grupo di mesaji",
+ "translate-msggroupselector-search-all": "Omni",
+ "tux-tab-all": "Omna",
+ "tux-tab-untranslated": "Ne tradukita",
+ "tux-tab-outdated": "Sen aktualigo",
+ "tux-tab-translated": "Tradukita",
+ "tux-status-fuzzy": "Sen aktualigo",
+ "tux-editor-placeholder": "Vua tradukuro",
+ "tux-editor-editsummary-placeholder": "Rezumo fakultativa",
+ "tux-editor-paste-original-button-label": "Kopiez l'originala texto",
+ "tux-editor-discard-changes-button-label": "Eliminar modifikuri",
+ "tux-editor-save-button-label": "Sparez la tradukuro",
+ "tux-editor-skip-button-label": "Saltez a la sequanta",
+ "tux-editor-shortcut-info": "Kliktez \"$1\" por konservar, o \"$2\" por saltar a la sequanta mesajo, o \"$4\" por furnisar rezumo, o \"$3\" por altra plu kurta voyi tra la klavaro.",
+ "tux-editor-edit-desc": "Redaktar dokumentigo",
+ "tux-editor-suggestions-title": "Sugesti",
+ "tux-editor-need-more-help": "Ka vu bezonas plusa helpo?",
+ "tux-editor-ask-help": "Demandez plusa informi",
+ "tux-editor-save-failed": "Faliis pri konservar la tradukuro: $1",
+ "tux-editor-message-desc-more": "Montrez pluse",
+ "tux-editor-message-desc-less": "Montrez mine",
+ "tux-editor-clear-translated": "Celar facita tradukuri",
+ "tux-editor-outdated-warning": "Ica tradukuro posible esas obsoleta.",
+ "tux-editor-outdated-warning-diff-link": "Montrez diferi",
+ "tux-editor-doc-editor-cancel": "Anular",
+ "tux-empty-list-other": "Nulo por tradukar",
+ "tux-empty-list-other-action": "Revizar tradukuri",
+ "tux-empty-list-other-link": "Montrez omna mesaji",
+ "tux-editor-message-tools-show-editor": "Montrar en la redakto-buxo dil Wiki",
+ "tux-editor-message-tools-translations": "Omna tradukuri",
+ "tux-editor-message-tools-linktothis": "Ligilo ad ica mesajo"
}
diff --git a/MLEB/Translate/i18n/core/is.json b/MLEB/Translate/i18n/core/is.json
index 24583cf6..7a1e41fc 100644
--- a/MLEB/Translate/i18n/core/is.json
+++ b/MLEB/Translate/i18n/core/is.json
@@ -10,16 +10,13 @@
]
},
"translate": "Þýða",
+ "translate-extensionname": "Þýða",
"translate-desc": "[[Special:Translate|Kerfissíða]] til að þýða MediaWiki og önnur verkefni",
- "translate-taskui-view": "Sýna öll skilaboð",
- "translate-taskui-untranslated": "Sýna óþýdd skilaboð",
- "translate-taskui-optional": "Sýna valfrjáls skilaboð",
- "translate-taskui-acceptqueue": "Aðeins skilaboð sem ég get merkt sem yfirfarin",
- "translate-taskui-reviewall": "Yfirfara allar þýðingar",
+ "translate-taskui-export-to-file": "Flytja út á innbyggðu sniði",
"translate-taction-translate": "Þýða",
"translate-taction-proofread": "Yfirferð",
"translate-taction-lstats": "Tölfræði tungumáls",
- "translate-taction-mstats": "Tölfræði skilaboða hópsins",
+ "translate-taction-mstats": "Tölfræði þýðingahópsins",
"translate-taction-export": "Flytja út",
"translate-taction-disabled": "Þessi aðgerð er óvirk á þessum wiki.",
"translate-page-no-such-language": "Tungumálið sem þú tilgreindir var ógilt",
@@ -29,38 +26,39 @@
"translate-page-group": "Hópur",
"translate-page-language": "Tungumál",
"translate-page-limit": "Takmark",
- "translate-page-limit-option": "$1 {{PLURAL:$1|melding|meldingar}} á hverri síðu",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|streng|strengi}} á hverri síðu",
"translate-submit": "Sækja",
"translate-page-navigation-legend": "Flakk",
- "translate-page-showing": "Sýni meldingar frá $1 til $2 af $3.",
- "translate-page-showing-all": "Sýni $1 {{PLURAL:$1|melding|meldingar}}.",
+ "translate-page-showing": "Sýni strengi frá $1 til $2 af $3.",
+ "translate-page-showing-all": "Sýni $1 {{PLURAL:$1|streng|strengi}}.",
"translate-page-showing-none": "Engar meldingar til að sýna.",
"translate-next": "Næsta síða",
"translate-prev": "Fyrri síða",
"translate-page-description-legend": "Upplýsingar um hópinn",
- "translate-page-description-hasoptional": "Þessi skilaboða hópur inniheldur valfrjáls skilaboð.\nValfrjáls skilaboð ætti aðeins að þýða þegar tungumálið hefur sérstakar kröfur\neins og enga notkun á bilum eða umritun á nöfnum. $1",
+ "translate-page-description-hasoptional": "Þessi þýðingahópur inniheldur valfrjálsar þýðingastrengi.\nValfrjálsa þýðingastrengi ætti aðeins að þýða þegar tungumálið hefur sérstakar kröfur\neins og varðandi enga notkun á bilum eða umritun á nöfnum. $1",
"translate-page-description-hasoptional-open": "Sýna valfrjáls skilaboð",
"translate-page-edit": "breyta",
- "translate-ext-url": "<hr />Vefsíða: $1",
"translate-optional": "(valfrjálst)",
"translate-ignored": "(hunsað)",
"translate-edit-title": "Breyta \"$1\"",
"translate-edit-definition": "Útskýring á meldingu",
"translate-edit-translation": "Þýðing",
"translate-edit-contribute": "breyta",
- "translate-edit-no-information": "<em>Þessi melding hefur enga skjölun.\nEf þú veist hvar eða hvernig meldingin er notuð getur þú hjálpað öðrum þýðendum með því að bæta skjölun við hana.</em>",
+ "translate-edit-no-information": "<em>Þessi melding er ekki með neinar leiðbeiningar.\nEf þú veist hvar eða hvernig meldingin er notuð getur þú hjálpað öðrum þýðendum með því að bæta ábendingum við hana.</em>",
"translate-edit-information": "Upplýsingar um þessa meldingu ($1)",
"translate-edit-in-other-languages": "Meldingin á öðrum tungumálum",
- "translate-edit-committed": "Núverandi þýðing í hugbúnaðinum",
"translate-edit-warnings": "Viðvaranir vegna ókláraðra þýðinga",
- "translate-edit-tmsugs": "Uppástungur frá þýðingarminni og þýðingarvélum",
"translate-edit-tmmatch-source": "Uppruna texti þýðingarinnar: $1",
"translate-edit-tmmatch": "$1% samsvörun",
"translate-use-suggestion": "Skipta núverandi þýðingu út fyrir þessa uppástungu.",
"translate-edit-nopermission": "Þú þarft þýðenda réttindi til að þýða skilaboð.",
"translate-edit-askpermission": "Fá réttindi",
+ "exporttranslations": "Flytja út þýðingar",
+ "translate-export-form-format": "Snið",
+ "translate-magic-module": "Eining:",
"translate-magic-submit": "Sækja",
"translate-magic-cm-export": "Flytja",
+ "translate-magic-nothing-to-export": "Það er ekkert til að flytja út.",
"translate-magic-cm-to-be": "Verðandi",
"translate-magic-cm-current": "Núverandi",
"translate-magic-cm-original": "Upprunalega",
@@ -85,16 +83,23 @@
"translate-checks-fudforum-syntax": "Notaðu <nowiki>$1</nowiki> í staðinn fyrir <nowiki>$2</nowiki> í þessu verkefni.",
"translate-pref-nonewsletter": "Ekki senda mér rafrænt fréttabréf",
"translate-pref-editassistlang": "Aðstoðar tungumál:",
- "prefs-translate": "Þýðinga stillingar",
+ "prefs-translate": "Stillingar þýðinga",
"translate-pref-editassistlang-help": "Listi yfir tungumálakóða, aðskildir með kommu.\nSkilaboðin eru sýnd á þessum tungumálum þegar þú þýðir skilaboð.\nSjálfvirkur listi tungumála fer eftir tungumáli þínu.",
"translate-pref-editassistlang-bad": "Ógildur tungumálakóði í listanum:\n<nowiki>$1</nowiki>.",
- "right-translate": "Breyta með þýðinga viðmótinu",
- "right-translate-manage": "Stjórna skilaboða hópum",
- "action-translate-manage": "stjórna skilaboða hópum",
+ "right-translate": "Breyta með þýðingaviðmótinu",
+ "right-translate-manage": "Stjórna þýðingahópum",
+ "action-translate-manage": "stjórna þýðingahópum",
+ "right-translate-import": "Flytja inn utanaðkomandi þýðingar",
+ "action-translate-import": "flytja inn utanaðkomandi þýðingar",
"right-translate-messagereview": "Yfirfara þýðingar",
+ "action-translate-messagereview": "yfirfara þýðingar",
+ "translate-rcfilters-translations": "Þýðingar",
+ "translate-rcfilters-translations-only-label": "Þýðingar",
+ "translate-rcfilters-translations-filter-label": "Ekki þýðingar",
+ "translate-rcfilters-translations-filter-desc": "Allar breytingar sem ekki eru þýðingar.",
"translate-rc-translation-filter": "Sía þýðingar:",
"translate-rc-translation-filter-no": "Engin síun",
- "translate-rc-translation-filter-only": "Sýna þýðingar eingöngu",
+ "translate-rc-translation-filter-only": "Sýna eingöngu þýðingar",
"translate-rc-translation-filter-filter": "Sía út þýðingar",
"translate-rc-translation-filter-site": "Breytingar á skilaboðum eingöngu",
"translationstats": "Tölfræði þýðinga",
@@ -108,6 +113,7 @@
"translate-statsf-width": "Breidd í dílum:",
"translate-statsf-height": "Hæð í dílum:",
"translate-statsf-start": "Upphafsdagur:",
+ "translate-statsf-scale": "Nákvæmni:",
"translate-statsf-scale-months": "Mánuðir",
"translate-statsf-scale-weeks": "Vikur",
"translate-statsf-scale-days": "Dagar",
@@ -116,52 +122,53 @@
"translate-statsf-count-edits": "Fjöldi breytinga",
"translate-statsf-count-users": "Virkir þýðendur",
"translate-statsf-count-registrations": "Nýjir notendur",
- "translate-statsf-count-reviews": "Þýðinga yfirferðir",
+ "translate-statsf-count-reviews": "Yfirferðir á þýðingum",
+ "translate-statsf-count-reviewers": "Ritstjórar",
"translate-statsf-language": "Listi yfir tungumálakóða, aðskildir með kommu:",
"translate-statsf-group": "Listi yfir hópa kóða, aðskildir með kommu:",
"translate-statsf-submit": "Forskoða",
- "translate-tag-category": "Þýðanlegar síður",
"translate-tag-page-desc": "Þýðing á wiki síðunni [[$2|$1]] frá $3 ($4).",
"translate-sidebar-alltrans": "Á öðrum tungumálum",
"translations": "Allar þýðingar",
- "translations-summary": "Sláðu inn nafn skilaboða hér fyrir neðan til að sýna allar aðgengilegar þýðingar.",
+ "translations-summary": "Sláðu inn heiti þýðingastrengja hér fyrir neðan til að sýna allar aðgengilegar þýðingar.",
"translate-translations-no-message": "Skilaboðin \"$1\" eru ekki þýðanleg",
"translate-translations-none": "Engar þýðingar til fyrir \"$1\"",
"translate-translations-count": "Fann $1 {{PLURAL:$1|þýðingu|þýðingar}}.",
"translate-translations-fieldset-title": "Melding",
"translate-translations-messagename": "Nafn:",
"translate-translations-project": "Verkefni:",
- "translate-translations-including-no-param": "Vinsamlegast tilgreindu gildan skilaboða lykil í undirsíðu gildinu.",
+ "translate-translations-including-no-param": "Vinsamlegast tilgreindu gildan lykil þýðingastrengs í viðfangi undirsíðunnar.",
+ "translate-translations-history-short": "f",
"languagestats": "Tölfræði tungumáls",
- "languagestats-summary": "Þessi síða sýnir tölfræði þýðinga í öllum hópum fyrir tungumálið.",
- "messagegroupstats-summary": "Þessi síða sýnir tölfræði skilaboða hópa.",
- "languagestats-stats-for": "Þýðingar tölfræði fyrir $1 ($2).",
+ "languagestats-summary": "Þessi síða sýnir tölfræði þýðinga í öllum þýðingahópum fyrir tungumálið.",
+ "messagegroupstats-summary": "Þessi síða sýnir tölfræði þýðingahópa.",
+ "languagestats-stats-for": "Tölfræði þýðinga fyrir $1 ($2).",
"languagestats-recenttranslations": "nýlegar þýðingar",
- "translate-langstats-incomplete": "Sumar talnana í tölfræðinni eru ónákvæmar. Vinsamlegast endurhladdu síðuna til að fá nákvæmari tölur.",
+ "translate-langstats-incomplete": "Sum tölfræðin á síðunni er ónákvæm. Lestu síðuna inn aftur til að fá nákvæmari tölur.",
"translate-langstats-expand": "sýna",
"translate-langstats-collapse": "fela",
"translate-langstats-expandall": "sýna alla",
"translate-langstats-collapseall": "fela alla",
"translate-language-code": "Tungumálakóði",
"translate-language-code-field-name": "Tungumálakóði:",
- "translate-suppress-complete": "Fela fullþýdda skilaboða hópa",
- "translate-ls-noempty": "Fela óþýdda skilaboða hópa",
+ "translate-suppress-complete": "Fela fullþýdda þýðingahópa",
+ "translate-ls-noempty": "Fela óþýdda þýðingahópa",
"translate-language": "Tungumál",
- "translate-total": "Meldingar",
- "translate-untranslated": "Óþýddar",
+ "translate-total": "Textastrengir",
+ "translate-untranslated": "Óþýtt",
"translate-percentage-complete": "Lokið",
"translate-percentage-fuzzy": "Úrelt",
- "translate-languagestats-overall": "Allir skilaboða hópar saman",
- "translate-ls-submit": "Sýna tölfræði",
- "translate-ls-column-group": "Skilaboða hópur",
- "translate-mgs-pagename": "Tölfræði skilaboða hópa",
+ "translate-languagestats-overall": "Allir þýðingahópar saman",
+ "translate-ls-submit": "Birta tölfræði",
+ "translate-ls-column-group": "Þýðingahópur",
+ "translate-mgs-pagename": "Tölfræði þýðingahópa",
"translate-mgs-fieldset": "Birtinga stillingar",
- "translate-mgs-group": "Skilaboða hópur:",
+ "translate-mgs-group": "Þýðingahópur:",
"translate-mgs-nocomplete": "Ekki sýna tungumál sem hafa lokið þýðingu",
"translate-mgs-noempty": "Ekki sýna tungumál sem hafa engar þýðingar",
- "translate-mgs-submit": "Sýna tölfræði",
+ "translate-mgs-submit": "Birta tölfræði",
"translate-mgs-column-language": "Tungumál",
- "translate-mgs-totals": "Öll tungumál saman",
+ "translate-mgs-totals": "Öll $1 {{PLURAL:$1|tungumál|tungumálin}} saman",
"translate-mgs-invalid-group": "Tilgreindi hópurinn $1 er ekki til.",
"translate-mgs-nothing": "Ekkert til að sýna fyrir umbeðna tölfræði.",
"supportedlanguages": "Studd tungumál",
@@ -173,18 +180,24 @@
"supportedlanguages-activity": "$1: $2 {{PLURAL:$2|breyting|breytingar}} - síðasta breyting {{PLURAL:$3|í gær|fyrir $3 dögum}} síðan",
"translate-save": "Vista ($1)",
"translate-jssti-add": "Bæta við listann",
- "managemessagegroups": "Stjórn skilaboða hópa",
+ "managemessagegroups": "Stjórn þýðingahóps",
"translate-smg-notallowed": "Þú hefur ekki leyfi til að framkvæma þessa aðgerð.",
"translate-smg-nochanges": "Það eru engar breytingar til að vinna úr.",
"translate-smg-submit": "Senda breytingar til vinnslu",
+ "translate-manage-import-new": "Ný skilaboð $1",
+ "translate-manage-action-import": "Flytja inn",
+ "translate-manage-action-ignore": "Hunsa",
+ "translate-manage-submit": "Keyra",
"translate-manage-import-ok": "Innflutt: $1",
- "importtranslations": "flytja inn þýðingar",
+ "translate-manage-import-done": "Innflutningi lokið",
+ "importtranslations": "Flytja inn þýðingar",
+ "translate-import-from-local": "Senda inn skrá af tölvunni:",
+ "translate-import-load": "Hlaða inn skrá",
+ "translate-import-err-ul-failed": "Sending skrár mistókst",
"translate-js-summary": "Ágrip:",
"translate-js-save": "Vista",
"translate-js-next": "Vista og opna næstu",
- "translate-js-nonext": "Þetta voru síðustu skilaboðin á síðunni",
"translate-js-skip": "Sleppa og fara yfir á næsta.",
- "translate-js-save-failed": "Vistun mistókst. Vinsamlegast tilkynntu villuna.",
"translate-js-history": "Breytingaskrá þýðingar",
"translate-js-support": "Spyrja spurningar",
"translate-js-support-title": "Óskaðu eftir hjálp ef það eru ekki nægar upplýsingar til að þýða þessi skilaboð rétt.",
@@ -192,40 +205,26 @@
"translate-gs-pos": "Staðs.",
"translate-gs-code": "Kóði",
"translate-gs-continent": "Heimsálfa",
- "translate-documentation-language": "Leiðbeiningar skilaboða",
+ "translate-gs-score": "Stig",
+ "translate-gs-multiple": "Margtyngt",
+ "translate-gs-count": "Fjöldi",
+ "translate-gs-total": "Samtals",
+ "translate-documentation-language": "Leiðbeiningar þýðingastrengs",
"translate-searchprofile": "Þýðingar",
"translate-searchprofile-tooltip": "Leita í öllum þýðingum",
"translate-search-languagefilter": "Sía eftir tungumáli:",
"translate-search-nofilter": "Engin sía",
- "translate-messagereview-submit": "Merkja sem yfirfarna",
- "translate-messagereview-progress": "Merki sem yfirfarna...",
- "translate-messagereview-failure": "Mistókst að merkja sem yfirfarið: $1",
- "translate-messagereview-done": "Yfirfarið",
- "translate-messagereview-reviews": "Yfirfarið af $1 {{PLURAL:$1|notanda|notendum}}",
- "api-error-invalidrevision": "Þýðingin fannst ekki.",
- "api-error-unknownmessage": "Skilaboðin fundust ekki",
- "api-error-fuzzymessage": "Þýðingin er merkt sem úreld",
- "api-error-owntranslation": "Þú getur ekki merkt eigin þýðingar sem yfirfarnar",
- "translate-messagereview-no-fuzzy": "Ekki er hægt að merkja úreldar þýðingar sem yfirfarnar",
- "translate-messagereview-no-own": "Þú getur ekki merkt eigin þýðingar sem yfirfarnar",
- "translate-messagereview-doit": "Merkja þessa þýðingu sem yfirfarna.",
- "log-name-translationreview": "Aðgerðarskrá þýðinga yfirferðar",
- "log-description-translationreview": "Aðgerðarskrá yfir allar yfirferðir á þýðingum og skilaboða hópum.",
+ "log-name-translationreview": "Aðtvikaskrá yfirferðar þýðinga",
+ "log-description-translationreview": "Atvikaskrá yfir allar yfirferðir á þýðingum og þýðingahópum.",
"logentry-translationreview-message": "$1 {{GENDER:$2|yfirfór}} þýðinguna $3",
"logentry-translationreview-group": "$1 {{GENDER:$2|breytti}} stöðu $4 þýðinga af $3 frá $6 til $7",
"group-translate-sandboxed": "Ósamþykktir þýðendur",
"translate-workflow-state-": "(ekki sett)",
"translate-workflowstatus": "Staða: $1",
- "translate-workflow-set-do": "Setja",
"translate-workflow-set-doing": "Set...",
"translate-stats-workflow": "Staða",
"translate-dynagroup-recent-label": "Nýlegar þýðingar",
- "translate-dynagroup-by": "Þýðing gerð af {{GENDER:$1|$1}}",
- "translate-dynagroup-byc": "Þýðing gerð af {{GENDER:$1|$1}} ($2)",
- "translate-dynagroup-last": "Síðasta breyting eftir {{GENDER:$1|$1}}",
- "translate-dynagroup-lastc": "Síðasta breyting eftir {{GENDER:$1|$1}} ($2)",
- "translate-gethelp": "Hjálp",
- "translate-msggroupselector-projects": "Skilaboða hópur",
+ "translate-msggroupselector-projects": "Þýðingahópur",
"translate-msggroupselector-search-placeholder": "Leita eftir hópum",
"translate-msggroupselector-search-all": "Allt",
"translate-msggroupselector-search-recent": "Nýlegt",
@@ -243,20 +242,23 @@
"tux-status-translated": "Þýdd",
"tux-status-saving": "Vista...",
"tux-status-unsaved": "Óvistuð",
+ "tux-save-unknown-error": "Óþekkt villa kom upp.",
"tux-editor-placeholder": "Þín þýðing",
+ "tux-editor-editsummary-placeholder": "Möguleg samantekt",
"tux-editor-paste-original-button-label": "Líma upprunalegan texta",
"tux-editor-discard-changes-button-label": "Hunsa breytingar",
"tux-editor-save-button-label": "Vista þýðingu",
"tux-editor-skip-button-label": "Sleppa og yfir á næstu",
"tux-editor-cancel-button-label": "Hætta við",
"tux-editor-confirm-button-label": "Staðfesta þýðingu",
- "tux-editor-shortcut-info": "Ýttu á „$1” til að vista, „$2” til að sleppa yfir á næstu eða „$3” fyrir aðrar flýtileiðir.",
+ "tux-editor-proofread-button-label": "Merkja sem yfirfarið",
+ "tux-editor-shortcut-info": "Ýttu á „$1” til að vista, „$2” til að sleppa yfir á næstu, „$4” til að gefa skýringu eða eða „$3” fyrir aðrar flýtileiðir.",
"tux-editor-edit-desc": "Breyta leiðbeiningum",
"tux-editor-add-desc": "Bæta við leiðbeiningum",
"tux-editor-suggestions-title": "Uppástungur",
"tux-editor-in-other-languages": "Á öðrum tungumálum",
"tux-editor-need-more-help": "Þarftu meiri hjálp?",
- "tux-editor-ask-help": "Spurja um frekari upplýsingar",
+ "tux-editor-ask-help": "Spyrja um frekari upplýsingar",
"tux-editor-tm-match": "$1% samsvörun",
"tux-warnings-more": "{{PLURAL:$1|$1 meira}}",
"tux-warnings-hide": "fela",
@@ -274,7 +276,7 @@
"tux-editor-page-mode": "Síða",
"tux-editor-outdated-warning": "Þessa þýðingu þyrfti kannski að uppfæra.",
"tux-editor-outdated-warning-diff-link": "Sýna mun",
- "tux-editor-doc-editor-placeholder": "Leiðbeiningar skilaboða",
+ "tux-editor-doc-editor-placeholder": "Leiðbeiningar þýðingastrengs",
"tux-editor-doc-editor-save": "Vista leiðbeiningar",
"tux-editor-doc-editor-cancel": "Hætta við",
"tux-messagetable-more-messages": "$1 fleiri {{PLURAL:$1|skilaboð}}",
@@ -284,9 +286,9 @@
"tux-message-filter-advanced-button": "Ítarleg leit",
"tux-message-filter-optional-messages-label": "Valfrjáls skilaboð",
"tux-proofread-translated-by-self": "Þýtt af þér",
- "tux-empty-list-all": "Þessi skilaboða hópur er tómur",
- "tux-empty-list-all-guide": "Veldu annan skilaboða hóp til að þýða",
- "tux-translate-page-no-such-group": "<strong>Hópurinn sem þú valdir er ekki til.</strong> Veldu annan skilaboða hóp.",
+ "tux-empty-list-all": "Þessi þýðingahópur er tómur",
+ "tux-empty-list-all-guide": "Veldu annan þýðingahóp til að þýða",
+ "tux-translate-page-no-such-group": "<strong>Hópurinn sem þú valdir er ekki til.</strong> Veldu annan þýðingahóp.",
"tux-empty-list-translated": "Engin þýdd skilaboð",
"tux-empty-list-translated-guide": "Þú getur hjálpað við þýðingu",
"tux-empty-list-translated-action": "Þýða",
@@ -296,6 +298,10 @@
"tux-empty-no-outdated-messages": "Engin úreld skilaboð",
"tux-empty-nothing-to-proofread": "Ekkert til að yfirfara",
"tux-empty-you-can-help-providing": "Þú getur hjálpað til með nýjar þýðingar",
+ "tux-empty-list-other": "Ekkert til að þýða",
+ "tux-empty-list-other-guide": "Þú getur hjálpað til með því að yfirfara fyrirliggjandi þýðingar",
+ "tux-empty-list-other-action": "Yfirfara þýðingar",
+ "tux-empty-list-other-link": "Birta öll skilaboð",
"tux-editor-close-tooltip": "Loka",
"tux-editor-expand-tooltip": "Stækka",
"tux-editor-collapse-tooltip": "Fella saman",
@@ -306,5 +312,6 @@
"translate-search-more-languages-info": "$1 annað {{PLURAL:$1|tungumál}}",
"translate-statsbar-tooltip": "$1% þýtt, $2% yfirfarið",
"translate-statsbar-tooltip-with-fuzzy": "$1% þýtt, $2% yfirfarið, $3% úrelt",
- "translate-search-more-groups-info": "$1 {{PLURAL:$1|hópur|hópar}} í viðbót"
+ "translate-search-more-groups-info": "$1 {{PLURAL:$1|hópur|hópar}} í viðbót",
+ "tux-nojs": "Þetta verkfæri virkar ekki ef slökkt er á JavaScript. JavaScript er óvirkt, það virkaði ekki, eða að þessi vafri er ekki studdur."
}
diff --git a/MLEB/Translate/i18n/core/it.json b/MLEB/Translate/i18n/core/it.json
index 53d3f89a..2b0ecb7a 100644
--- a/MLEB/Translate/i18n/core/it.json
+++ b/MLEB/Translate/i18n/core/it.json
@@ -16,16 +16,15 @@
"Pietrodn",
"Shirayuki",
"VittGam",
- "Vituzzu"
+ "Vituzzu",
+ "Matteocng",
+ "Anto",
+ "Fringio"
]
},
"translate": "Traduzione",
+ "translate-extensionname": "Traduci",
"translate-desc": "[[Special:Translate|Pagina speciale]] per tradurre MediaWiki e non solo",
- "translate-taskui-view": "Mostra tutti i messaggi",
- "translate-taskui-untranslated": "Mostra solo i messaggi non tradotti",
- "translate-taskui-optional": "Mostra i messaggi opzionali",
- "translate-taskui-acceptqueue": "Solo i messaggi che posso revisionare",
- "translate-taskui-reviewall": "Revisiona tutte le traduzioni",
"translate-taskui-export-to-file": "Esporta nel formato nativo",
"translate-taskui-export-as-po": "Esporta per la traduzione off-line",
"translate-taction-translate": "Traduci",
@@ -48,13 +47,13 @@
"translate-page-showing": "Mostrati i messaggi da $1 a $2 di $3.",
"translate-page-showing-all": "{{PLURAL:$1|Mostrato un messaggio|Mostrati $1 messaggi}}.",
"translate-page-showing-none": "Nessun messaggio da mostrare.",
+ "translate-page-paging-links": "[ $1 ] [ $2 ]",
"translate-next": "Pagina successiva",
"translate-prev": "Pagina precedente",
"translate-page-description-legend": "Informazioni sul gruppo",
"translate-page-description-hasoptional": "Questo gruppo di messaggi contiene dei messaggi opzionali.\nI messaggi opzionali dovrebbero essere tradotti solo quando la lingua ha dei requisiti speciali come il mancato utilizzo degli spazi o la traslitterazione dei nomi propri. $1",
"translate-page-description-hasoptional-open": "Mostra i messaggi opzionali.",
"translate-page-edit": "modifica",
- "translate-ext-url": "<hr />Sito web: $1",
"translate-optional": "(opzionale)",
"translate-ignored": "(ignorato)",
"translate-edit-title": "Modifica \"$1\"",
@@ -64,14 +63,17 @@
"translate-edit-no-information": "<em>Questo messaggio non ha documentazione.\nSe sai dove o come è usato questo messaggio, puoi aiutare gli altri traduttori aggiungendo la documentazione a questo messaggio.</em>",
"translate-edit-information": "Informazioni sul messaggio ($1)",
"translate-edit-in-other-languages": "Messaggio in altre lingue",
- "translate-edit-committed": "Traduzione attuale nel software",
"translate-edit-warnings": "Avvisi sulle traduzioni incomplete",
- "translate-edit-tmsugs": "Suggerimenti dalla memoria delle traduzioni",
"translate-edit-tmmatch-source": "Testo di origine per la traduzione: $1",
"translate-edit-tmmatch": "$1&nbsp;% di corrispondenza",
"translate-use-suggestion": "Sostituisci la traduzione presente con questo suggerimento.",
"translate-edit-nopermission": "Hai bisogno dei diritti di traduzione per tradurre i messaggi.",
"translate-edit-askpermission": "Ottieni autorizzazione",
+ "exporttranslations": "Esporta traduzioni",
+ "translate-export-form-format": "Formato",
+ "translate-export-invalid-format": "Specifica un formato valido.",
+ "translate-export-not-supported": "L'esportazione delle traduzioni non è supportata.",
+ "translate-export-format-notsupported": "Il formato di esportazione specificato non è supportato dal gruppo messaggi.",
"translate-magic-pagename": "Traduzione estesa di MediaWiki",
"translate-magic-help": "Puoi tradurre gli alias delle pagine speciali, le parole magiche e i nomi dei namespace.\n\nGli alias delle pagine speciali e le parole magiche possono avere più traduzioni.\nLe traduzioni sono separate da una virgola (,).\nI namespace possono avere solo una traduzione.\n\nTradurre il namespace di discussione delle pagine di progetto <code>$1 talk</code> può essere complicato. <code>$1</code> viene sostituito con il nome del sito (per esempio <code>{{ns:project_talk}}</code>).\nSe non è possibile formare un'espressione valida nella tua lingua senza cambiare il nome del sito, per favore contatta il [[Support]].\n\nDevi essere un traduttore per salvare le modifiche.\nLe modifiche non vengono salvate finché non clicchi sul pulsante \"Salva\" sotto.",
"translate-magic-module": "Modulo:",
@@ -90,10 +92,10 @@
"translate-magic-namespace": "Nomi dei namespace",
"translate-magic-notsaved": "La modifica non è stata salvata!",
"translate-magic-errors": "Correggere {{PLURAL:$1|il seguente errore|i seguenti errori}} nelle traduzioni:",
- "translate-magic-saved": "Le modifiche sono state salvate con successo.",
+ "translate-magic-saved": "Le modifiche sono state salvate.",
"translate-checks-parameters": "{{PLURAL:$2|Il seguente parametro non è stato usato|I seguenti parametri non sono stati usati}}: <strong><nowiki>$1</nowiki></strong>",
"translate-checks-parameters-unknown": "{{PLURAL:$2|Il seguente parametro è sconosciuto|I seguenti parametri sono sconosciuti}}:\n<strong><nowiki>$1</nowiki></strong>",
- "translate-checks-balance": "C'è un numero di {{PLURAL:$2|parentesi|parentesi}} dispari: <strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "C'è un numero di {{PLURAL:$2|parentesi}} ineguale: <strong><nowiki>$1</nowiki></strong>",
"translate-checks-links": "{{PLURAL:$2|Il seguente collegamento è problematico|I seguenti $2 collegamenti sono problematici}}: <strong><nowiki>$1</nowiki></strong>",
"translate-checks-links-missing": "{{PLURAL:$2|Il seguente collegamento è mancante|I seguenti $2 collegamenti sono mancanti}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-xhtml": "Sostituire {{PLURAL:$2|il marcatore seguente|i marcatori seguenti}} con quelli corretti: <strong><nowiki>$1</nowiki></strong>",
@@ -117,11 +119,20 @@
"right-translate-import": "Importa traduzioni non in linea",
"action-translate-import": "importare le traduzioni non in linea",
"right-translate-messagereview": "Revisiona traduzioni",
+ "action-translate-messagereview": "revisionare traduzioni",
"right-translate-groupreview": "Cambia lo stato del processo di traduzione dei gruppi di messaggi",
+ "action-translate-groupreview": "cambiare lo stato del processo di traduzione dei gruppi di messaggi",
+ "translate-rcfilters-translations": "Traduzioni",
+ "translate-rcfilters-translations-only-label": "Traduzioni",
+ "translate-rcfilters-translations-only-desc": "Modifiche alle pagine tradotte.",
+ "translate-rcfilters-translations-filter-label": "Non traduzioni",
+ "translate-rcfilters-translations-filter-desc": "Tutte le modifiche che non sono traduzioni.",
+ "translate-rcfilters-translations-site-label": "Messaggi di sistema",
+ "translate-rcfilters-translations-site-desc": "Personalizzazione di messaggi di sistema nel namespace MediaWiki.",
"translate-rc-translation-filter": "Filtra le traduzioni:",
"translate-rc-translation-filter-no": "Non fare niente",
"translate-rc-translation-filter-only": "Mostra solo le traduzioni",
- "translate-rc-translation-filter-filter": "Elimina le traduzioni",
+ "translate-rc-translation-filter-filter": "Non mostrare le traduzioni",
"translate-rc-translation-filter-site": "Solo i cambiamenti ai messaggi del sito",
"translationstats": "Statistiche di traduzione",
"translate-stats-edits": "Modifiche",
@@ -149,7 +160,6 @@
"translate-statsf-language": "Elenco dei codici delle lingue separati da virgola:",
"translate-statsf-group": "Elenco dei codici dei gruppi separati da virgola:",
"translate-statsf-submit": "Anteprima",
- "translate-tag-category": "Pagine traducibili",
"translate-tag-page-desc": "Traduzione della pagina wiki [[$2|$1]] da $3 ($4).",
"translate-sidebar-alltrans": "In altre lingue",
"translations": "Tutte le traduzioni",
@@ -191,16 +201,20 @@
"translate-mgs-noempty": "Non visualizzare lingue che non hanno traduzioni",
"translate-mgs-submit": "Mostra statistiche",
"translate-mgs-column-language": "Lingua",
- "translate-mgs-totals": "Tutte le lingue insieme",
+ "translate-mgs-totals": "Tutte le $1 {{PLURAL:$1|lingua|lingue}} insieme",
"translate-mgs-invalid-group": "Il gruppo indicato $1 non esiste.",
"translate-mgs-nothing": "Nulla da mostrare per le statistiche richieste.",
"supportedlanguages": "Lingue mantenute",
"supportedlanguages-summary": "Questa pagina mostra un elenco di tutte le lingue mantenute da {{SITENAME}}, insieme ai nomi dei traduttori che hanno lavorato su quella lingua. Il nome di un traduttore appare di dimensioni maggiori in proporzione al numero di modifiche che ha apportato, mentre il colore della sottolineatura indica quanto tempo è passato dalla sua ultima attività.",
"supportedlanguages-colorlegend": "Legenda dei colori: ultima traduzione $1 giorni fa.",
+ "supportedlanguages-portallink": "[$1] $2 - $3",
+ "supportedlanguages-portallink-nocldr": "[$1] $2",
+ "supportedlanguages-sqlite-error": "SQLite non è supportato",
"supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|Traduttore|Traduttrice}}|Traduttori}}: $1",
"supportedlanguages-recenttranslations": "traduzioni recenti",
"supportedlanguages-count": "$1 {{PLURAL:$1|lingua|lingue}} in totale.",
"supportedlanguages-activity": "$1: $2 {{PLURAL:$2|modifica|modifiche}} - ultima modifica $3 {{PLURAL:$3|giorno|giorni}} fa",
+ "abusefilter-edit-builder-vars-translate-source-text": "Testo di origine di un'unità di traduzione",
"translate-save": "Salva ($1)",
"translate-jssti-add": "Aggiungi all'elenco",
"managemessagegroups": "Gestione del gruppo di messaggi",
@@ -224,7 +238,6 @@
"translate-manage-toolong": "Il tempo massimo di elaborazione di $1 {{PLURAL:$1|secondo|secondi}} si è esaurito.\nInviare nuovamente il modulo per proseguire nell'elaborazione.",
"translate-manage-import-summary": "Importazione di una nuova versione da una fonte esterna",
"translate-manage-conflict-summary": "Importazione di una nuova versione da una fonte esterna.\nDa controllare.",
- "translate-manage-fuzzy-summary": "La definizione del messaggio è cambiata",
"translate-manage-submit": "Esegui",
"translate-manage-intro-other": "Di seguito sono elencati i cambiamenti alle traduzioni nella lingua $1.\nControlla le modifiche e scegli l'azione da eseguire per ciascun messaggio.\nSe scegli di ignorare i cambiamenti, questa azione sarà solo temporanea.",
"translate-manage-import-ok": "Importato: $1",
@@ -233,7 +246,7 @@
"translate-import-from-local": "Carica file locale:",
"translate-import-load": "Carica file",
"translate-import-err-dl-failed": "Impossibile recuperare il file:\n$1",
- "translate-import-err-ul-failed": "Il caricamento del file non è riuscito",
+ "translate-import-err-ul-failed": "Caricamento del file non riuscito",
"translate-import-err-invalid-title": "Il nome del file <nowiki>$1</nowiki> non è valido.",
"translate-import-err-no-such-file": "Il file <nowiki>$1</nowiki> non esiste o non è stato caricato a livello locale.",
"translate-import-err-stale-group": "Il gruppo di messaggi a cui appartiene questo file non esiste.",
@@ -242,9 +255,7 @@
"translate-js-summary": "Oggetto:",
"translate-js-save": "Salva",
"translate-js-next": "Salva e passa al successivo",
- "translate-js-nonext": "Questo era l'ultimo messaggio in questa pagina.",
"translate-js-skip": "Passa al successivo",
- "translate-js-save-failed": "Salvataggio non riuscito. Si prega di segnalare l'errore.",
"translate-js-history": "Cronologia traduzione",
"translate-js-support": "Fai una domanda",
"translate-js-support-title": "Richiesta d'assistenza nel caso non si trovino sufficienti informazioni per tradurre questo messaggio.",
@@ -261,21 +272,9 @@
"translate-documentation-language": "Documentazione del messaggio",
"translate-searchprofile": "Traduzioni",
"translate-searchprofile-tooltip": "Cerca in tutte le traduzioni",
+ "translate-searchprofile-note": "Opzioni di ricerca ulteriori disponibili con la [$1 ricerca di traduzioni].",
"translate-search-languagefilter": "Filtro per lingua",
"translate-search-nofilter": "Nessun filtraggio",
- "translate-messagereview-submit": "Contrassegna come revisionata",
- "translate-messagereview-progress": "Marcando come revisionata...",
- "translate-messagereview-failure": "Marcatura come revisionata non riuscita: $1",
- "translate-messagereview-done": "Revisionata",
- "translate-messagereview-reviews": "Revisionata da {{PLURAL:$1|un utente|$1 utenti}}",
- "translate-messagereview-reviewswithyou": "Revisionata da {{PLURAL:$1|te|$1 utenti, te compreso}}",
- "api-error-invalidrevision": "Traduzione non trovata",
- "api-error-unknownmessage": "Messaggio non trovato",
- "api-error-fuzzymessage": "La traduzione è segnata come da aggiornare",
- "api-error-owntranslation": "Non è possibile segnare le proprie traduzioni come revisionate",
- "translate-messagereview-no-fuzzy": "Le traduzioni da aggiornare non possono essere segnate come revisionate.",
- "translate-messagereview-no-own": "Non è possibile segnare le proprie traduzioni come revisionate.",
- "translate-messagereview-doit": "Accetta questa traduzione come revisionata.",
"log-name-translationreview": "Revisioni delle traduzioni",
"log-description-translationreview": "Registro di tutte le revisioni delle traduzioni e dei gruppi di messaggi.",
"logentry-translationreview-message": "$1 {{GENDER:$2|ha revisionato}} la traduzione di $3",
@@ -288,10 +287,7 @@
"action-translate-sandboxaction": "eseguire azioni autorizzate per gli utenti in modalità sandbox",
"translate-workflow-state-": "(disattivato)",
"translate-workflowstatus": "Stato: $1",
- "translate-workflow-set-do": "Modifica",
"translate-workflow-set-doing": "Modifica in corso",
- "translate-workflow-set-done": "Modificato!",
- "translate-workflow-set-error-alreadyset": "Lo stato richiesto è identico allo stato corrente.",
"translate-workflow-autocreated-summary": "Creazione automatica della pagina per lo stato del flusso di lavoro $1",
"translate-stats-workflow": "Stato",
"translate-workflowgroup-label": "Stati del flusso di lavoro",
@@ -300,11 +296,6 @@
"translate-dynagroup-recent-desc": "Questo gruppo messaggi mostra tutte le ultime traduzioni in questa lingua.\nUtile per l'attività di revisione.",
"translate-dynagroup-additions-label": "Aggiunte recenti",
"translate-dynagroup-additions-desc": "Questo gruppo messaggi mostra i messaggi nuovi o modificati.",
- "translate-dynagroup-by": "Traduzione di {{GENDER:$1|$1}}",
- "translate-dynagroup-byc": "Traduzione di {{GENDER:$1|$1}} ($2)",
- "translate-dynagroup-last": "Ultima modifica di {{GENDER:$1|$1}}",
- "translate-dynagroup-lastc": "Ultima modifica di {{GENDER:$1|$1}} ($2)",
- "translate-gethelp": "Aiuto",
"translate-msggroupselector-projects": "Gruppo di messaggi",
"translate-msggroupselector-search-placeholder": "Ricerca gruppi",
"translate-msggroupselector-search-all": "Tutti",
@@ -323,14 +314,17 @@
"tux-status-translated": "Tradotto",
"tux-status-saving": "Salvataggio...",
"tux-status-unsaved": "Non salvate",
+ "tux-save-unknown-error": "Si è verificato un errore sconosciuto.",
"tux-editor-placeholder": "La tua traduzione",
+ "tux-editor-editsummary-placeholder": "Oggetto facoltativo",
"tux-editor-paste-original-button-label": "Incolla il testo sorgente",
- "tux-editor-discard-changes-button-label": "Annulla modifiche",
+ "tux-editor-discard-changes-button-label": "Ignora modifiche",
"tux-editor-save-button-label": "Salva traduzione",
"tux-editor-skip-button-label": "Passa al successivo",
"tux-editor-cancel-button-label": "Annulla",
"tux-editor-confirm-button-label": "Conferma traduzione",
- "tux-editor-shortcut-info": "Premi \"$1\" per salvare, \"$2\" per passare al messaggio successivo o \"$3\" per altre scorciatoie.",
+ "tux-editor-proofread-button-label": "Contrassegna come revisionata",
+ "tux-editor-shortcut-info": "Premi \"$1\" per salvare, \"$2\" per passare al messaggio successivo o \"$4\" per fornire un riassunto o \"$3\" per altre scorciatoie.",
"tux-editor-edit-desc": "Modifica documentazione",
"tux-editor-add-desc": "Aggiungi documentazione",
"tux-editor-suggestions-title": "Suggerimenti",
@@ -385,9 +379,11 @@
"tux-editor-close-tooltip": "Chiudi",
"tux-editor-expand-tooltip": "Espandi",
"tux-editor-collapse-tooltip": "Comprimi",
+ "tux-editor-message-tools-show-editor": "Mostra nell'editor wiki",
"tux-editor-message-tools-history": "Cronologia",
"tux-editor-message-tools-delete": "Cancella",
"tux-editor-message-tools-translations": "Tutte le traduzioni",
+ "tux-editor-message-tools-linktothis": "Collegamenti a questo messaggio",
"tux-editor-loading": "Caricamento in corso...",
"translate-search-more-languages-info": "$1 {{PLURAL:$1|altra lingua|altre lingue}}",
"translate-statsbar-tooltip": "$1% tradotti, $2% revisionati",
@@ -395,5 +391,6 @@
"translate-search-more-groups-info": "$1 {{PLURAL:$1|altro gruppo|altri gruppi}}",
"translate-ulsdep-title": "Errore di configurazione",
"translate-ulsdep-body": "L'estensione Translate dipende dall'[https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector estensione Universal Language Selector].",
- "tux-session-expired": "Non hai effettuato l'accesso. Accedi in una scheda separata; o in alternativa copia la traduzione non salvata, accedi, e ritorna in questa pagina."
+ "tux-session-expired": "Non hai effettuato l'accesso. Accedi in una scheda separata; o in alternativa copia la traduzione non salvata, accedi, ritorna in questa pagina e inserisci nuovamente la tua traduzione.",
+ "tux-nojs": "Questo strumento non funziona senza JavaScript. JavaScript potrebbe essere disattivato, non ha funzionato o questo browser non è supportato."
}
diff --git a/MLEB/Translate/i18n/core/ja.json b/MLEB/Translate/i18n/core/ja.json
index 77197ebe..5078b632 100644
--- a/MLEB/Translate/i18n/core/ja.json
+++ b/MLEB/Translate/i18n/core/ja.json
@@ -15,16 +15,18 @@
"Whym",
"青子守歌",
"아라",
- "Rxy"
+ "Rxy",
+ "Sujiniku",
+ "Otokoume",
+ "2nd-player",
+ "Gminky",
+ "Omotecho",
+ "Afaz"
]
},
"translate": "翻訳",
+ "translate-extensionname": "翻訳",
"translate-desc": "MediaWiki やその他のものを翻訳するための[[Special:Translate|特別ページ]]",
- "translate-taskui-view": "全メッセージを表示",
- "translate-taskui-untranslated": "未翻訳メッセージを表示",
- "translate-taskui-optional": "省略可能なメッセージを表示",
- "translate-taskui-acceptqueue": "自分が査読できるメッセージのみ",
- "translate-taskui-reviewall": "すべての翻訳を査読",
"translate-taskui-export-to-file": "ネイティブ形式で書き出し",
"translate-taskui-export-as-po": "オフライン翻訳のために書き出し",
"translate-taction-translate": "翻訳",
@@ -54,7 +56,6 @@
"translate-page-description-hasoptional": "このメッセージ群には省略可能なメッセージがあります。\n省略可能なメッセージは、その言語で特別な必要性 (空白の除去、固有名詞の翻字など) がある場合のみ翻訳してください。$1",
"translate-page-description-hasoptional-open": "省略可能なメッセージを表示する。",
"translate-page-edit": "編集",
- "translate-ext-url": "<hr />ウェブサイト: $1",
"translate-optional": "(省略可能)",
"translate-ignored": "(翻訳無視)",
"translate-edit-title": "「$1」を編集",
@@ -64,14 +65,15 @@
"translate-edit-no-information": "<em>このメッセージについての説明文はありません。\nこのメッセージがどこでどのように使用されているか知っている場合は、説明文を投稿して他の翻訳者を助けてください。</em>",
"translate-edit-information": "メッセージについての情報 ($1)",
"translate-edit-in-other-languages": "他言語でのメッセージ",
- "translate-edit-committed": "現在ソフトウェア上で採用されている翻訳メッセージ",
"translate-edit-warnings": "不完全な翻訳に対する警告",
- "translate-edit-tmsugs": "翻訳メモリーや機械翻訳による提案",
"translate-edit-tmmatch-source": "翻訳元の文章: $1",
"translate-edit-tmmatch": "$1%の一致",
"translate-use-suggestion": "この現在の翻訳を、この翻訳提案に置き換えます。",
"translate-edit-nopermission": "メッセージを翻訳する権限が必要です。",
"translate-edit-askpermission": "権限を取得",
+ "exporttranslations": "翻訳の書き出し",
+ "translate-export-form-format": "形式",
+ "translate-export-not-supported": "翻訳の書き出しはサポートされていません。",
"translate-magic-pagename": "拡張MediaWiki翻訳",
"translate-magic-help": "特別ページへのエイリアス、マジックワード、名前空間名を翻訳できます。\n\n特別ページへのエイリアスとマジックワードには複数の翻訳を当てられます。\n複数の翻訳がある場合はカンマ (,) で区切ってください。\n名前空間名には 1 つの翻訳のみを当てられます。\n\nプロジェクトのトーク名前空間 <code>$1 talk</code> の翻訳は複雑かもしれません。\n<code>$1</code> はプロジェクトのサイト名に置換されます (例: <code>{{ns:project_talk}}</code>)。\nあなたの言語において、サイト名の変更なしでは正しく表現できない場合は、[[Support]] にお問い合わせください。\n\nあなたが翻訳者であれば、変更を保存できます。\n下の保存ボタンをクリックするまで、変更内容は保存されません。",
"translate-magic-module": "モジュール:",
@@ -117,7 +119,16 @@
"right-translate-import": "オフラインでの翻訳を取り込み",
"action-translate-import": "オフラインでの翻訳の取り込み",
"right-translate-messagereview": "翻訳を査読",
+ "action-translate-messagereview": "翻訳を査読",
"right-translate-groupreview": "メッセージ群のワークフローの状態を変更",
+ "action-translate-groupreview": "メッセージ群のワークフローの状態を変更",
+ "translate-rcfilters-translations": "翻訳",
+ "translate-rcfilters-translations-only-label": "翻訳",
+ "translate-rcfilters-translations-only-desc": "翻訳ページの変更。",
+ "translate-rcfilters-translations-filter-label": "翻訳ではない",
+ "translate-rcfilters-translations-filter-desc": "翻訳以外の変更",
+ "translate-rcfilters-translations-site-label": "システムメッセージの一覧",
+ "translate-rcfilters-translations-site-desc": " MediaWiki の名前空間でシステムメッセージをカスタマイズする方法。",
"translate-rc-translation-filter": "翻訳を絞り込み:",
"translate-rc-translation-filter-no": "絞り込まない",
"translate-rc-translation-filter-only": "翻訳のみ表示",
@@ -149,7 +160,6 @@
"translate-statsf-language": "言語コードを列挙 (カンマ区切り):",
"translate-statsf-group": "メッセージ群コードを列挙 (カンマ区切り):",
"translate-statsf-submit": "プレビュー",
- "translate-tag-category": "翻訳可能なページ",
"translate-tag-page-desc": "ウィキページ [[$2|$1]] に対する $3 ($4) からの翻訳です。",
"translate-sidebar-alltrans": "他言語での翻訳",
"translations": "全翻訳結果",
@@ -180,7 +190,7 @@
"translate-total": "メッセージ数",
"translate-untranslated": "未翻訳",
"translate-percentage-complete": "完了",
- "translate-percentage-fuzzy": "要修正",
+ "translate-percentage-fuzzy": "要更新",
"translate-languagestats-overall": "合計",
"translate-ls-submit": "統計を表示",
"translate-ls-column-group": "メッセージ群",
@@ -191,7 +201,7 @@
"translate-mgs-noempty": "翻訳が1つもない言語を表示しない",
"translate-mgs-submit": "統計を表示",
"translate-mgs-column-language": "言語",
- "translate-mgs-totals": "すべての言語",
+ "translate-mgs-totals": "全$1{{PLURAL:$1|言語}}",
"translate-mgs-invalid-group": "指定された群$1は存在しません。",
"translate-mgs-nothing": "要求された統計には表示するものがありません。",
"supportedlanguages": "サポートしている言語",
@@ -203,6 +213,7 @@
"supportedlanguages-recenttranslations": "最近の翻訳",
"supportedlanguages-count": "合計 $1 {{PLURAL:$1|言語}}",
"supportedlanguages-activity": "$1: $2 {{PLURAL:$2|回の編集}}・$3 {{PLURAL:$3|日}}前に最終編集",
+ "abusefilter-edit-builder-vars-translate-source-text": "翻訳する単位の翻訳原文",
"translate-save": "保存 ($1)",
"translate-jssti-add": "追加",
"managemessagegroups": "メッセージ群の管理",
@@ -217,16 +228,15 @@
"translate-manage-import-new": "新しいメッセージ $1",
"translate-manage-import-deleted": "削除されたメッセージ $1",
"translate-manage-action-import": "取り込む",
- "translate-manage-action-conflict": "取り込んで要修正にする",
+ "translate-manage-action-conflict": "取り込んで要更新にする",
"translate-manage-action-ignore": "無視",
- "translate-manage-action-fuzzy": "翻訳を取り込んで要修正の印を付ける",
+ "translate-manage-action-fuzzy": "翻訳を取り込んで要更新の印を付ける",
"translate-manage-nochanges": "この群のメッセージの定義には変更はありません。",
"translate-manage-nochanges-other": "この言語が対応すべき変更はありませんでした。\n下のリンクをクリックするとメッセージ群の詳細画面に戻ります。",
"translate-manage-inconsistent": "リクエスト内で矛盾を検出しました。\n変更点を確認してから、再度試してください。\n詳細: $1",
"translate-manage-toolong": "処理時間の最大値である$1秒を超過しました。処理を続行するにはフォームを再投稿してください。",
"translate-manage-import-summary": "外部ソースから新しい版を取り込み",
"translate-manage-conflict-summary": "外部ソースから新しい版を取り込み中。\n確認してください。",
- "translate-manage-fuzzy-summary": "メッセージの定義が変更されました",
"translate-manage-submit": "実行",
"translate-manage-intro-other": "以下は言語 $1 での翻訳の変更の一覧です。\nそれぞれの更新について、変更を精査して、行いたい操作を選択してください。\n変更を無視することを選択した場合、この操作は一時的なものに留まります。",
"translate-manage-import-ok": "取り込みました: $1",
@@ -244,9 +254,7 @@
"translate-js-summary": "要約:",
"translate-js-save": "保存",
"translate-js-next": "保存して次を開く",
- "translate-js-nonext": "このページの最後のメッセージに達しました。",
"translate-js-skip": "次へスキップ",
- "translate-js-save-failed": "保存に失敗しました。このエラーを報告してください。",
"translate-js-history": "翻訳履歴",
"translate-js-support": "サポートに質問",
"translate-js-support-title": "このメッセージを正しく翻訳するための情報が足りない場合は助けを求めてください。",
@@ -263,23 +271,9 @@
"translate-documentation-language": "メッセージについての説明文",
"translate-searchprofile": "訳文",
"translate-searchprofile-tooltip": "すべての翻訳から検索",
+ "translate-searchprofile-note": "より多くの検索設定は、[$1 翻訳検索]を通して利用することができます。",
"translate-search-languagefilter": "言語で絞り込み:",
"translate-search-nofilter": "すべて表示",
- "translate-messagereview-submit": "査読済にする",
- "translate-messagereview-progress": "査読済にしています...",
- "translate-messagereview-failure": "査読済にできませんでした: $1",
- "translate-messagereview-done": "査読済",
- "translate-messagereview-reviews": "{{PLURAL:$1|$1人の利用者}}が査読済",
- "translate-messagereview-reviewswithyou": "{{PLURAL:$1|あなた|あなたを含む$1人の利用者}}が査読済",
- "api-error-invalidrevision": "翻訳が見つかりませんでした",
- "api-error-unknownmessage": "メッセージが見つかりませんでした",
- "api-error-fuzzymessage": "翻訳に要修正の印が付いています",
- "api-error-owntranslation": "自分の翻訳は査読済にできません",
- "translate-messagereview-no-fuzzy": "要修正の印が付いている翻訳は査読済にできません。",
- "translate-messagereview-no-own": "自分の翻訳は査読済にできません。",
- "translate-messagereview-doit": "この翻訳に査読済の印を付けます。",
- "group-translate-proofr.css": "/* ここに記述したCSSは翻訳査読者のみに影響します */",
- "group-translate-proofr.js": "/* ここに記述したJSは翻訳査読者のみに影響します */",
"log-name-translationreview": "翻訳査読記録",
"log-description-translationreview": "翻訳とメッセージ群に対するすべての査読の記録",
"logentry-translationreview-message": "$1 が $3 の翻訳を{{GENDER:$2|査読}}",
@@ -292,10 +286,7 @@
"action-translate-sandboxaction": "サンドボックス利用者に許可された操作の実行",
"translate-workflow-state-": "(解除)",
"translate-workflowstatus": "進捗状況: $1",
- "translate-workflow-set-do": "設定",
"translate-workflow-set-doing": "設定中...",
- "translate-workflow-set-done": "設定完了!",
- "translate-workflow-set-error-alreadyset": "要求された進捗状況は、現在の進捗状況と同じです。",
"translate-workflow-autocreated-summary": "作業進捗状況$1のページの自動作成",
"translate-stats-workflow": "進捗状況",
"translate-workflowgroup-label": "作業進捗状況",
@@ -304,37 +295,35 @@
"translate-dynagroup-recent-desc": "このメッセージ群ではこの言語への最近の翻訳をすべて表示します。\n査読作業に便利です。",
"translate-dynagroup-additions-label": "最近の追加",
"translate-dynagroup-additions-desc": "このメッセージ群では新たに追加または変更されたメッセージを表示します。",
- "translate-dynagroup-by": "{{GENDER:$1|$1}}による翻訳",
- "translate-dynagroup-byc": "{{GENDER:$1|$1}}による翻訳 ($2)",
- "translate-dynagroup-last": "{{GENDER:$1|$1}}による最終更新",
- "translate-dynagroup-lastc": "{{GENDER:$1|$1}}による最終更新 ($2)",
- "translate-gethelp": "ヘルプ",
"translate-msggroupselector-projects": "メッセージ群",
- "translate-msggroupselector-search-placeholder": "検索するメッセージ群",
+ "translate-msggroupselector-search-placeholder": "メッセージ群内を検索",
"translate-msggroupselector-search-all": "すべて",
"translate-msggroupselector-search-recent": "最近のもの",
"translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|件の下位群}}を閲覧",
"tux-languageselector": "翻訳先",
"tux-tab-all": "すべて",
"tux-tab-untranslated": "未翻訳",
- "tux-tab-outdated": "要修正",
+ "tux-tab-outdated": "要更新",
"tux-tab-translated": "翻訳済",
"tux-tab-unproofread": "未査読",
"tux-edit": "編集",
"tux-status-optional": "省略可能",
- "tux-status-fuzzy": "要修正",
+ "tux-status-fuzzy": "要更新",
"tux-status-proofread": "査読済",
"tux-status-translated": "翻訳済",
"tux-status-saving": "保存中...",
"tux-status-unsaved": "未保存",
+ "tux-save-unknown-error": "不明なエラーが発生しました。",
"tux-editor-placeholder": "あなたの翻訳を入力",
+ "tux-editor-editsummary-placeholder": "要約 (省略可能)",
"tux-editor-paste-original-button-label": "原文を貼り付け",
"tux-editor-discard-changes-button-label": "変更内容を破棄",
"tux-editor-save-button-label": "翻訳を保存",
"tux-editor-skip-button-label": "次へスキップ",
"tux-editor-cancel-button-label": "キャンセル",
"tux-editor-confirm-button-label": "翻訳を確認",
- "tux-editor-shortcut-info": "保存するには「$1」を、次のメッセージへスキップするには「$2」を、他のショートカットキーについては「$3」を押してください",
+ "tux-editor-proofread-button-label": "査読済の印を付ける",
+ "tux-editor-shortcut-info": "保存するには「$1」を、次のメッセージへスキップするには「$2」を、要約を入力するには「$4」を、他のショートカットキーについては「$3」を押してください。",
"tux-editor-edit-desc": "説明文を編集",
"tux-editor-add-desc": "説明文を追加",
"tux-editor-suggestions-title": "提案",
@@ -377,7 +366,7 @@
"tux-empty-no-messages-to-display": "表示できるメッセージがありません。",
"tux-empty-there-are-optional": "省略可能なメッセージがありますが、一覧に表示されていません",
"tux-empty-show-optional-messages": "省略可能なメッセージを表示",
- "tux-empty-no-outdated-messages": "要修正のメッセージはありません",
+ "tux-empty-no-outdated-messages": "要更新のメッセージはありません",
"tux-empty-nothing-to-proofread": "査読できるものはありません",
"tux-empty-you-can-help-providing": "新たに翻訳して貢献することもできます",
"tux-empty-nothing-new-to-proofread": "新たに査読できるものはありません",
@@ -389,14 +378,18 @@
"tux-editor-close-tooltip": "閉じる",
"tux-editor-expand-tooltip": "展開する",
"tux-editor-collapse-tooltip": "折り畳む",
+ "tux-editor-message-tools-show-editor": "ウィキエディターで表示",
"tux-editor-message-tools-history": "履歴",
"tux-editor-message-tools-delete": "削除",
"tux-editor-message-tools-translations": "全言語の翻訳",
+ "tux-editor-message-tools-linktothis": "このページへのリンク",
"tux-editor-loading": "読み込み中...",
"translate-search-more-languages-info": "他 $1 {{PLURAL:$1|言語}}",
- "translate-statsbar-tooltip": "$1% 翻訳済み、$2% 査読済",
- "translate-statsbar-tooltip-with-fuzzy": "$1% 翻訳済み、$2% 査読済、$3% 要修正",
+ "translate-statsbar-tooltip": "$1% 翻訳済、$2% 査読済",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% 翻訳済、$2% 査読済、$3% 要更新",
"translate-search-more-groups-info": "他 $1 {{PLURAL:$1|メッセージ群}}",
+ "translate-ulsdep-title": "設定エラー",
"translate-ulsdep-body": "Translate 拡張機能は [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector Universal Language Selector 拡張機能]を必要とします。",
- "tux-session-expired": "ログインしていない状態になっています。別のタブでログインしてください。できない場合は、未保存の翻訳をコピーしておいて、ログインしてこのページに戻ってきてください。"
+ "tux-session-expired": "ログインしていない状態になっています。別のタブでログインしてください。できない場合は、未保存の翻訳をコピーしておいて、ログインして、このページに戻ってきて、翻訳ページに入り直してください。",
+ "tux-nojs": "このツールの動作には JavaScript が必要です。JavaScript が無効、作動していないもしくはブラウザーがサポートされていません。"
}
diff --git a/MLEB/Translate/i18n/core/jam.json b/MLEB/Translate/i18n/core/jam.json
index 21785608..029d584a 100644
--- a/MLEB/Translate/i18n/core/jam.json
+++ b/MLEB/Translate/i18n/core/jam.json
@@ -1,7 +1,8 @@
{
"@metadata": {
"authors": [
- "Yocahuna"
+ "Yocahuna",
+ "Katxis"
]
},
"translate": "Chransliet",
@@ -23,7 +24,6 @@
"translate-prev": "Priivos piej",
"translate-page-description-legend": "Infamieshan bout di gruup",
"translate-page-edit": "edit",
- "translate-ext-url": "<hr />Websait: $1",
"translate-optional": "(apshanal)",
"translate-ignored": "(ignuor)",
"translate-edit-title": "Edit \"$1\"",
@@ -32,10 +32,9 @@
"translate-edit-no-information": "''Dis mechiz naa no dakiumentieshan.\nEf yu nuo we ar ou dis mechiz yuuz, yu kiahn elp ada chranslieta bai ad dakiumentieshan tu dis mechiz.''",
"translate-edit-information": "Infamieshan bout mechiz \"$2\" ($1)",
"translate-edit-in-other-languages": "Mechiz \"$1\" in ada langwij",
- "translate-edit-committed": "Korant chranslieshan ina saafwier",
"translate-edit-warnings": "Waanin bout inkompliit chranslieshan",
- "translate-edit-tmsugs": "Sojeshan frahn chranslieshan memari",
"translate-edit-tmmatch": "$1% mach",
"translate-use-suggestion": "Insoert dis sojeshan ina di chranslieshan ieria. Dis riplies aal korant kantent.",
- "translate-magic-pagename": "Extendid MediaWiki chranslieshan"
+ "translate-magic-pagename": "Extendid MediaWiki chranslieshan",
+ "translate-documentation-language": "Mechiz dakiumentieshan"
}
diff --git a/MLEB/Translate/i18n/core/jbo.json b/MLEB/Translate/i18n/core/jbo.json
index 04f373ae..cd645f22 100644
--- a/MLEB/Translate/i18n/core/jbo.json
+++ b/MLEB/Translate/i18n/core/jbo.json
@@ -1,12 +1,33 @@
{
"@metadata": {
"authors": [
- "Gleki"
+ "Gleki",
+ "Xbony2",
+ "Olwe519"
]
},
+ "translate-page-edit": "stika ti",
+ "translate-edit-title": "stika $1",
"translate-edit-in-other-languages": "lo notci poi se bangu lo drata",
+ "translate-magic-cm-save": "gau se vreji",
"translate-rc-translation-filter": "pagrygau lo xe fanva",
+ "translate-stats-edits": "stika",
+ "translate-stats-users": "le fanva",
"translate-sidebar-alltrans": "bau lo drata",
+ "translate-translations-messagename": "lo cmene",
+ "translate-translations-project": "co'a bandu",
+ "translate-translations-history-short": "c",
"translate-language": "lo bangu",
- "translate-js-support": "ko retsku"
+ "translate-save": "rejgau to $1 toi",
+ "translate-js-save": "gau se vreji",
+ "translate-js-support": "ko retsku",
+ "translate-gs-total": "lo sumji",
+ "tux-edit": "stika",
+ "tux-editor-cancel-button-label": "kansele",
+ "tux-editor-in-other-languages": "bau lo drata",
+ "tux-warnings-hide": "cancygau",
+ "tux-proofread-edit-label": "stika",
+ "tux-editor-page-mode": "lo papri",
+ "tux-editor-doc-editor-cancel": "kansele",
+ "tux-editor-message-tools-delete": "vimcu"
}
diff --git a/MLEB/Translate/i18n/core/jv.json b/MLEB/Translate/i18n/core/jv.json
index b236f8c1..1abebbe7 100644
--- a/MLEB/Translate/i18n/core/jv.json
+++ b/MLEB/Translate/i18n/core/jv.json
@@ -8,111 +8,117 @@
"Bennylin"
]
},
- "translate": "Pertalna/Terjemahna",
- "translate-desc": "[[Special:Translate|Kaca astaméwa]] kanggo mertal MediaWiki lan liyané",
- "translate-taskui-view": "Tuduhaké kabèh layang",
- "translate-taskui-untranslated": "Tuduhaké layang sing durung diterjemahaké",
- "translate-taskui-optional": "Tuduhaké layang pilihan",
- "translate-taskui-acceptqueue": "Namung layang sing tak tampa",
- "translate-taskui-reviewall": "Ulas kabèh terjemahan",
- "translate-taskui-export-to-file": "Èkspor nèng format basa asli",
- "translate-taskui-export-as-po": "Èkspor kanggo terjemahan offline",
- "translate-taction-translate": "Terjemahaké",
- "translate-taction-proofread": "Korèksi",
+ "translate": "Pertal",
+ "translate-extensionname": "Pertal",
+ "translate-desc": "[[Special:Translate|Kaca mirunggan]] kanggo mertal MediaWiki lan liyané",
+ "translate-taskui-export-to-file": "Èspor nganggo format asli",
+ "translate-taskui-export-as-po": "Èspor kanggo pertalan njaban jaringan",
+ "translate-taction-translate": "Pertal",
+ "translate-taction-proofread": "Priksa",
"translate-taction-lstats": "Statistik basa",
- "translate-taction-mstats": "Statistik klompok layang",
- "translate-taction-export": "Èkspor",
- "translate-taction-disabled": "Laku iki dipatèni nèng wiki iki.",
- "translate-page-no-such-language": "Basa sing dipilih ora absah.",
- "translate-page-no-such-group": "Grup sing dipilih ora absah.",
- "translate-page-disabled": "Penerjemahan jroning basa iki wis dinon-aktifaké. Alesan:\n\n<em>$1</em>",
- "translate-language-disabled": "Terjemahan kanggo basa iki dipatèni.",
- "translate-page-settings-legend": "Pangaturan",
- "translate-page-group": "Kelompok",
+ "translate-taction-mstats": "Statistik golongan layang",
+ "translate-taction-export": "Èspor",
+ "translate-taction-disabled": "Tumindak iki dipatèni ing wiki iki.",
+ "translate-page-no-such-language": "Basa kang kapilih ora trep.",
+ "translate-page-no-such-group": "Golongan kang kapilih ora trep.",
+ "translate-page-disabled": "Pertalan nyang basa iki kanggo golongan iki wis dipatèni.\nAlesané:\n\n<em>$1</em>",
+ "translate-language-disabled": "Pertalan menyang basa iki dipatèni.",
+ "translate-page-settings-legend": "Setèlan",
+ "translate-page-group": "Golongan",
"translate-page-language": "Basa",
- "translate-page-limit": "Limit (wates)",
- "translate-page-limit-option": "$1 {{PLURAL:$1|pesen|pesen}} per kaca",
+ "translate-page-limit": "Wates",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|layang}} saben kaca",
"translate-submit": "Jupuk",
"translate-page-navigation-legend": "Navigasi",
- "translate-page-showing": "Nuduhaké pesen $1 nganti $2 saka $3.",
- "translate-page-showing-all": "Nuduhaké $1 {{PLURAL:$1|pesen|pesen}}.",
- "translate-page-showing-none": "Ora ana pesen sing bisa dituduhaké.",
+ "translate-page-showing": "Nuduhaké layang cacah $1 nganti $2 saka gunggung $3 layang.",
+ "translate-page-showing-all": "Nuduhaké $1 {{PLURAL:$1|layang}}.",
+ "translate-page-showing-none": "Ora ana layang kanggo dituduhaké.",
"translate-next": "Kaca sabanjuré",
"translate-prev": "Kaca sadurungé",
- "translate-page-description-legend": "Informasi ngenani grup utawa kelompok",
- "translate-page-description-hasoptional": "Klompok layang iki kaisi layang pilihan.\nLayang pilihan namung bisa diterjemahaké nalika basa Sampéyan nduwèni kabutuhan kusus\nkaya ora nganggo spasi utawa ngalihaksarakaké jeneng dhiri. $1",
- "translate-page-description-hasoptional-open": "Tuduhaké layang pilihan.",
- "translate-page-edit": "sunting",
- "translate-ext-url": "<hr />Situs wèb: $1",
- "translate-optional": "(opsional)",
+ "translate-page-description-legend": "Katerangan ngenani golongané",
+ "translate-page-description-hasoptional": "Golongan layang iki ngemu layang-layang manasuka.\nLayang manasuka kapertal mung manawa basané panjenengan duwé kabutuhan mirunggan kaya ta ora nganggo sepasi utawa ngalihaksara jeneng. $1",
+ "translate-page-description-hasoptional-open": "Tuduhaké layang manasuka.",
+ "translate-page-edit": "besut",
+ "translate-optional": "(manasuka)",
"translate-ignored": "(dilirwakaké)",
- "translate-edit-title": "Sunting \"$1\"",
- "translate-edit-definition": "Définisi pesen",
- "translate-edit-translation": "Terjamahan",
- "translate-edit-contribute": "awèh kontribusi",
- "translate-edit-no-information": "''Pesen iki ora nduwé dokumèntasi. Menawa panjenengan ngerti kepriyé pesen iki dienggo, mangga panjenengan bisa nulungi para panerjemah liyané mawa nambahaké dokumentasi ing pesen iki.''",
- "translate-edit-information": "Informasi bab layang ($1)",
- "translate-edit-in-other-languages": "Pesen ing basa liya",
- "translate-edit-committed": "Pertalan saiki ing perangkat lunak",
- "translate-edit-warnings": "Pèngetan perkara pertalan sing ora pepak",
- "translate-edit-tmsugs": "Saran saka mèmori terjemahan lan terjemahan mesin",
- "translate-edit-tmmatch-source": "Tèks sumber terjemahan: $1",
- "translate-edit-tmmatch": "$1% cocok",
- "translate-use-suggestion": "Ganti terjemahan saiki nganggo sing disaranaké iki.",
- "translate-edit-nopermission": "Sampéyan butuh idin kanggo nerjemahaké layang.",
- "translate-edit-askpermission": "Njaluk idin",
- "translate-magic-pagename": "Pangambanan pertalan MediaWiki",
- "translate-magic-help": "Panjenengan bisa nerjemahaké alias kanggo kaca istiméwa, tembung magis, lan jeneng bilik-jeneng.\n\nAlias kanggo kaca istiméwa lan tembung magis bisa nduwèni luwih saka siji terjemahan.\nSiji lan sijiné kudu dipisahaké nganggo tandha koma (,).\nBilik jeneng mung bisa duwé siji terjemahan.\n\nJroning nerjemahaké bilik-jeneng <code>$1 talk</code> kuwi istiméwa. <code>$1</code> digantèkaké nganggo jeneng situs (conto <code>{{ns:project_talk}}</code>).\nYèn basa panjenengan ora mungkinaké gawé èksprèsi sing sah tanpa ngganti jeneng situs, mangga hubungi salah siji pangembang.\n\nPanjenengan perlu dadi anggota klompok penerjemah kanggo nyimpen owah-owahan.\nOwah-owahan ora bakal disimpen nganti panjenengan ngeklik tombol simpen ing ngisor.",
- "translate-magic-module": "Modul:",
+ "translate-edit-title": "Besut \"$1\"",
+ "translate-edit-definition": "Wedharané layang",
+ "translate-edit-translation": "Pertalan",
+ "translate-edit-contribute": "nyumbang",
+ "translate-edit-no-information": "<em>Layang iki ora ana dhokumèntasiné.\nManawa panjenengan ngerti ana ngendi lan kepiyé layang iki dianggo, panjenengan bisa ngéwangi pamertal liyané kanthi nambahaké dhokumèntasi nyang layang iki.</em>",
+ "translate-edit-information": "Pratélan ngenani layang ($1)",
+ "translate-edit-in-other-languages": "Layang ing basa liya",
+ "translate-edit-warnings": "Pepéling bab pertalan kang durung rampung",
+ "translate-edit-tmmatch-source": "Tulisan sumber pertalan: $1",
+ "translate-edit-tmmatch": "$1% cocog",
+ "translate-use-suggestion": "Ganti pertalan saiki nganggo saran iki.",
+ "translate-edit-nopermission": "Panjenengan butuh hak pamertal saperlu mertal layang.",
+ "translate-edit-askpermission": "Nyuwun palilah",
+ "exporttranslations": "Èspor pertalan",
+ "translate-export-form-format": "Format",
+ "translate-export-invalid-format": "Sumangga isi mawa format kang trep.",
+ "translate-export-not-supported": "Èspor pertalan ora kasengkuyung.",
+ "translate-export-format-notsupported": "Format èspor kang koisèkaké ora disengkuyung golongan layangé.",
+ "translate-magic-pagename": "Pertalan MediaWiki mirunggan",
+ "translate-magic-help": "Panjenengan bisa mertal aliyasé kaca mirunggan, tembung ajaib, lan jeneng mandala aran.\n\nAliasé kaca mirunggan lan tembung ajaib bisa ngemu manéka pertalan.\nPertalan kaletan komah (,).\nMandala aran mung ngemu sapertalan.\n\nMertal mandala aran parembugan proyèk <code>parembugan $1</code> bokmanawa angèl. <code>$1</code> kudu panjenengan ganti mawa jeneng situsé proyèk (contoné <code>{{ns:project_talk}}</code>).\nYèn basané panjenengan mokal ngripta pitembungan kang trep tanpa ngowahi jenengé situs, sumangga ngubungi [[Support]].\n\nPanjenengan kudu dadi juru pamertal saperlu nyimpen owah-owahan.\nOwah-owahané mokal panjenengan simpen nganti panjenengan klik tombol simpen ing ngisor.",
+ "translate-magic-module": "Modhul:",
"translate-magic-submit": "Jupuk",
- "translate-magic-cm-export": "Èkspor",
- "translate-magic-nothing-to-export": "Ora ana sing kudu dièkspor.",
- "translate-magic-cm-to-be": "Dadi",
+ "translate-magic-cm-export": "Èspor",
+ "translate-magic-nothing-to-export": "Ora ana kang kudu panjenegan èspor.",
+ "translate-magic-cm-to-be": "Kudu dadi",
"translate-magic-cm-current": "Saiki",
"translate-magic-cm-original": "Asli",
- "translate-magic-cm-comment": "Komentar:",
+ "translate-magic-cm-comment": "Tanggepan:",
"translate-magic-cm-save": "Simpen",
- "translate-magic-cm-updatedusing": "Dimutakiraké nganggo [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
- "translate-magic-cm-savefailed": "Gagal disimpen",
- "translate-magic-special": "Sesinglon kaca astamiwa",
- "translate-magic-words": "Tembung-tembung magis",
- "translate-magic-namespace": "Jeneng bilik nama",
- "translate-magic-notsaved": "Suntingan Sampéyan wis disimpen!",
- "translate-magic-errors": "Mangga tuntasaké {{PLURAL:$1|kasalahan|}} nèng terjemahan iki:",
- "translate-magic-saved": "Owah-owahan Sampéyan suksès disimpen.",
- "translate-checks-parameters": "{{PLURAL:$2|parameter|parameter-parameter}} iki ora dianggo:\n<strong><nowiki>$1</nowiki></strong>",
- "translate-checks-parameters-unknown": "{{PLURAL:$2|Parameter|Parameter-parameter}} iki ora dikenal:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-magic-cm-updatedusing": "Dianyari sarana [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "Wurung kasimpen",
+ "translate-magic-special": "Aliyas kaca mirunggan",
+ "translate-magic-words": "Tembung ajaib",
+ "translate-magic-namespace": "Jeneng mandala aran",
+ "translate-magic-notsaved": "Besutanmu ora kasimpen!",
+ "translate-magic-errors": "Dandanana {{PLURAL:$1|masalah}} iki ing pertalan:",
+ "translate-magic-saved": "Owahané panjenengan wis kasimpen.",
+ "translate-checks-parameters": "{{PLURAL:$2|Paramèter}} iki ora dianggo:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "{{PLURAL:$2|Paramèter}} iki ora kaweruhan:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-balance": "Cacahing {{PLURAL:$2|pangapit|pangapit-pangapit}} ora seimbang:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-links": "{{PLURAL:$2|Pranala|Pranala-pranala}} iki nduwèni masalah:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-links-missing": "{{PLURAL:$2|Pranala|Pranala-pranala}} iki ilang:\n<strong><nowiki>$1</nowiki></strong>",
- "translate-checks-xhtml": "Mangga ganti {{PLURAL:$2|tag|tag-tag}} iki nganggo tag sing cocog:\n<strong><nowiki>$1</nowiki></strong>",
- "translate-checks-plural": "Dhéfinisi migunakaké <nowiki>{{PLURAL:}}</nowiki> nanging terjemahané ora.",
- "translate-checks-pagename": "Bilik jeneng owah saka dhéfinisiné",
- "translate-checks-format": "Terjemahan iki ora manut definisiné utawa nduwèni sintaks sing ora sah: $1",
+ "translate-checks-xhtml": "Gantinen {{PLURAL:$2|tenger|tenger-tenger}} iki nganggo tenger kang mathuk:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "Wedharané nganggo <nowiki>{{PLURAL:}}</nowiki> nanging pertalané ora.",
+ "translate-checks-pagename": "Mandala aran diowah saka wedharané",
+ "translate-checks-format": "Pertalan iki ora manut wedharané utawa ora trep sintaksisé: $1",
"translate-checks-parametersnotequal": "Itungan paramèter {{PLURAL:$1|$1}}; kuduné {{PLURAL:$2|$2}}.",
- "translate-checks-fudforum-syntax": "Anggo <nowiki>$1</nowiki> tinimbang <nowiki>$2</nowiki> nèng proyèk iki.",
- "translate-pref-nonewsletter": "Aja ngirimi aku jurnal warta e-mail",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> salah format.",
+ "translate-checks-fudforum-syntax": "Anggonen <nowiki>$1</nowiki> tinimbang <nowiki>$2</nowiki> ing proyèk iki.",
+ "translate-pref-nonewsletter": "Aja kirimi aku pawarta layang-èl",
"translate-pref-editassistlang": "Basa panyengkuyung:",
- "prefs-translate": "Pilihan terjemahan",
- "translate-pref-editassistlang-help": "Daptar kodhé basa dipisahaké mawa koma.\nTerjemahan layang nèng basa iki dituduhaké nalika Sampéyan nerjemehaké.\nDaptar basa gawan gumantung saka basa Sampéyan.",
- "translate-pref-editassistlang-bad": "Kodhé basa ora sah nèng daptar:\n<nowiki>$1</nowiki>.",
- "right-translate": "Nyunting nganggo antarmuka pertalan",
- "right-translate-manage": "Tata klompok layang",
- "action-translate-manage": "tata klompok layang",
- "right-translate-import": "Impor terjemahan offline",
- "action-translate-import": "impor terjemahan offline",
- "right-translate-messagereview": "Ulas terjemahan",
- "translate-rc-translation-filter": "Filter terjemahan:",
+ "prefs-translate": "Pilihan pertalan",
+ "translate-pref-editassistlang-help": "Pratélan kodhe basa kang dipisah komah.\nPertalan layang ing basa iki bakal katuduhaké nalika panjenengan pinuju mertal.\nPratélan basa baku gumantung ing basané panjenengan.",
+ "translate-pref-editassistlang-bad": "Kodhe basa ora trep ing pratélan:\n<nowiki>$1</nowiki>.",
+ "right-translate": "Mbesut sarana antarmuka jarwan",
+ "right-translate-manage": "Kemunah golongan layang",
+ "action-translate-manage": "kemunah golongan layang",
+ "right-translate-import": "Impor pertalan njaban jaringan",
+ "action-translate-import": "impor pertalan njaban jaringan",
+ "right-translate-messagereview": "Priksa pertalan",
+ "action-translate-messagereview": "priksa pertalan",
+ "translate-rcfilters-translations": "Pertalan",
+ "translate-rcfilters-translations-only-label": "Pertalan",
+ "translate-rcfilters-translations-only-desc": "Owahan ing kaca kapertal.",
+ "translate-rcfilters-translations-filter-label": "Dudu pertalan",
+ "translate-rcfilters-translations-filter-desc": "Kabèh owahan kang dudu pertalan.",
+ "translate-rcfilters-translations-site-label": "Layang situs",
+ "translate-rc-translation-filter": "Saring pertalan:",
"translate-rc-translation-filter-no": "Ora difilter",
- "translate-rc-translation-filter-only": "Tampilaké mung terjemahan waé",
- "translate-rc-translation-filter-filter": "Tampilaké saliyané terjemahan",
- "translate-rc-translation-filter-site": "Mung owah-owahan ing pesen situs waé",
- "translationstats": "Statistik penerjemahan",
- "translate-stats-edits": "Suntingan",
- "translate-stats-users": "Penerjemah",
- "translate-stats-registrations": "Pandaptaran",
- "translate-stats-reviews": "Ulasan",
- "translate-stats-reviewers": "Pangulas",
+ "translate-rc-translation-filter-only": "Tuduhaké pertalané waé",
+ "translate-rc-translation-filter-filter": "Saring kajaba pertalan",
+ "translate-rc-translation-filter-site": "Mung owah-owahan ing layang situs waé",
+ "translationstats": "Statistik pertalan",
+ "translate-stats-edits": "Besutan",
+ "translate-stats-users": "Pamertal",
+ "translate-stats-registrations": "Pandhaftaran",
+ "translate-stats-reviews": "Pepriksan",
+ "translate-stats-reviewers": "Pamriksa",
"translate-statsf-intro": "Pajenengan bisa nggawé statistik prasaja migunakaké formulir iki. Kabèh angka nduwèni wates ndhuwur lan ngisor.",
"translate-statsf-options": "Opsi grafik",
"translate-statsf-width": "Jembar jroning piksel:",
@@ -120,152 +126,237 @@
"translate-statsf-days": "Période wektu jroning dina:",
"translate-statsf-start": "Tanggal miwiti:",
"translate-statsf-scale": "Granularitas:",
- "translate-statsf-scale-months": "Sasi",
+ "translate-statsf-scale-months": "Wulan",
"translate-statsf-scale-weeks": "Minggu",
"translate-statsf-scale-days": "Dina",
"translate-statsf-scale-hours": "Jam",
"translate-statsf-count": "Ukuran:",
- "translate-statsf-count-edits": "Cacahing suntingan",
- "translate-statsf-count-users": "Penerjemah aktif",
+ "translate-statsf-count-edits": "Cacahing besutan",
+ "translate-statsf-count-users": "Pamertal aktif",
"translate-statsf-count-registrations": "Panganggo anyar",
- "translate-statsf-count-reviews": "Ulasan terjemahan",
- "translate-statsf-count-reviewers": "Pangulas",
- "translate-statsf-language": "Dhaptar kodhe basa diwatesi nganggo koma:",
- "translate-statsf-group": "Dhaptar kodhe klompok sing diwatesi nganggo koma:",
- "translate-statsf-submit": "Pratayang",
- "translate-tag-category": "Kaca sing bisa diterjemahaké",
- "translate-tag-page-desc": "Terjemahan saka kaca wiki [[$2|$1]].",
- "translate-sidebar-alltrans": "Jroning basa liya",
- "translations": "Kabèh terjemahan",
- "translations-summary": "Lebokaké jeneng layang nèng ngisor iki kanggo nuduhaké kabè terjemahan sumadhiya.",
- "translate-translations-no-message": "\"$1\" dudu layang sing bisa diterjemahaké",
- "translate-translations-none": "Ora ana terjemahan kanggo \"$1\"",
- "translate-translations-count": "Nemokaké {{PLURAL:$1|sak terjemahan|$1 terjemahan}}.",
+ "translate-statsf-count-reviews": "Pepriksan pertalan",
+ "translate-statsf-count-reviewers": "Pamriksa",
+ "translate-statsf-language": "Pratélan kodhe basa kang kapisah komah:",
+ "translate-statsf-group": "Pratélan kodhe golongan kang dipisah komah:",
+ "translate-statsf-submit": "Pratuduh",
+ "translate-tag-page-desc": "Pertalané kaca wiki [[$2|$1]] saka $3 ($4).",
+ "translate-sidebar-alltrans": "Ing basa liyané",
+ "translations": "Kabèh pertalan",
+ "translations-summary": "Isi jeneng layang ing ngisor iki kanggo nuduhaké kabèh pertalan kang ana.",
+ "translate-translations-no-message": "\"$1\" dudu layang kang bisa kapertal",
+ "translate-translations-none": "Ora ana pertalan kanggo \"$1\"",
+ "translate-translations-count": "Nemu {{PLURAL:$1|pertalan cacah 1|pertalan cacah $1}}.",
"translate-translations-fieldset-title": "Layang",
"translate-translations-messagename": "Jeneng:",
"translate-translations-project": "Proyèk:",
- "translate-translations-including-no-param": "Temtokaké kunci sing sah nèng paramètèr subkaca",
+ "translate-translations-including-no-param": "Sumangga isi kunci layang kang trep ing paramètèr anak-kacané",
"translate-translations-history-short": "r",
"languagestats": "Statistik basa",
- "languagestats-summary": "Kaca iki nuduhaké statistik terjemahan saka kabèh klompok layang kanggo sak basa.",
- "languagestats-stats-for": "Statistik terjemahan kanggo $1 ($2).",
- "languagestats-recenttranslations": "terjemahan paling anyar",
- "translate-langstats-incomplete": "Sebagèyan statistik nèng kaca iki ora jangkep. Mangga ngemot manèh kanggo ngèntukaké luwih akèh statistik.",
- "translate-langstats-expand": "ambakna",
- "translate-langstats-collapse": "ciyutna",
+ "languagestats-summary": "Kaca iki nuduhaké statistik pertalan saka kabèh golongan layang mungguh ing sawijining basa.",
+ "messagegroupstats-summary": "Kaca iki nuduhaké statistik golongan layang.",
+ "languagestats-stats-for": "Statistik pertalan kanggo $1 ($2).",
+ "languagestats-recenttranslations": "pertalan mentas waé",
+ "translate-langstats-incomplete": "Sapérangan statistik ing kaca iki ora wutuh. Sumangga ambali ngamot supaya olèh statistik liyané.",
+ "translate-langstats-expand": "amba",
+ "translate-langstats-collapse": "ciyut",
"translate-langstats-expandall": "ambakaké kabèh",
"translate-langstats-collapseall": "ciyutaké kabèh",
- "translate-language-code": "Kodhé basa",
- "translate-language-code-field-name": "Kodhé basa:",
- "translate-suppress-complete": "Brèdèl babar blas klompok layang sing wis diterjemahaké",
- "translate-ls-noempty": "Brèdèl babar blas klompok layang sing durung diterjemahaké",
+ "translate-language-code": "Kodhe basa",
+ "translate-language-code-field-name": "Kodhe basa:",
+ "translate-suppress-complete": "Singkiraké kabèh golongan layang kang wis kapertal",
+ "translate-ls-noempty": "Singkiraké kabèh golongan layang kang durung kapertal",
"translate-language": "Basa",
"translate-total": "Layang",
- "translate-untranslated": "Durung diterjemahaké",
+ "translate-untranslated": "Durung kapertal",
"translate-percentage-complete": "Parampungan",
"translate-percentage-fuzzy": "Lawas",
- "translate-languagestats-overall": "Kabèh klompok layang bebarengan",
+ "translate-languagestats-overall": "Kabèh golongan layang mesisan",
"translate-ls-submit": "Tuduhaké statistik",
- "translate-ls-column-group": "Klompok layang",
- "translate-mgs-pagename": "Statistik klompok layang",
- "translate-mgs-fieldset": "Tampilaké préferensi",
- "translate-mgs-group": "Klompok layang:",
- "translate-mgs-nocomplete": "Aja tampulaké basa sing wis diterjemahaké",
- "translate-mgs-noempty": "Aja tampilaké basa sing durung diterjemahaké",
+ "translate-ls-column-group": "Golongan layang",
+ "translate-mgs-pagename": "Statistik golongan layang",
+ "translate-mgs-fieldset": "Pitontonaké pilalan",
+ "translate-mgs-group": "Golongan layang:",
+ "translate-mgs-nocomplete": "Aja mitontonaké basa kang wis rampung kapertal",
+ "translate-mgs-noempty": "Aja majang basa kang durung ana pertalané",
"translate-mgs-submit": "Tuduhaké statistik",
"translate-mgs-column-language": "Basa",
- "translate-mgs-totals": "Kabèh basa dadi siji",
- "translate-mgs-invalid-group": "Klompok $1 sing dimaksud ora ana.",
- "translate-mgs-nothing": "Ora ana sing bisa ditampilaké kanggo statistik sing dimaksud.",
- "supportedlanguages": "Basa sing nyengkuyung",
- "supportedlanguages-colorlegend": "Legenda kanggo werna: Terjemahan pungkasan $1 dina kapungkur.",
- "supportedlanguages-translators": "{{PLURAL:$2|Pnerjemah|Penerjemah}}: $1",
- "supportedlanguages-recenttranslations": "terjemahan paling anyar",
- "supportedlanguages-count": "$1 {{PLURAL:$1|basa|basa}} kabèhé.",
- "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|suntingan|suntingan}} - disunting pungkasan $3 {{PLURAL:$3|dina|dina}} kapungkur",
+ "translate-mgs-totals": "Kabèh $1 {{PLURAL:$1|basa|basa}}",
+ "translate-mgs-invalid-group": "Golongan $1 kang panjenengan karsakaké ora ana.",
+ "translate-mgs-nothing": "Ora ana kang bisa katuduhaké bab statistik kang panjenengan karsakaké.",
+ "supportedlanguages": "Basa kang kasengkuyung",
+ "supportedlanguages-colorlegend": "Legèndha tumrap werna: Pertalan pungkasan $1 dina kapungkur.",
+ "supportedlanguages-portallink": "[$1] $2 - $3",
+ "supportedlanguages-portallink-nocldr": "[$1] $2",
+ "supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|Pamertal}}|Pamertal}}: $1",
+ "supportedlanguages-recenttranslations": "pertalan mentas waé",
+ "supportedlanguages-count": "$1 {{PLURAL:$1|basa}} kabèhé.",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|besutan}} - dibesut pungkasan $3 {{PLURAL:$3|dina}} kapungkur",
+ "abusefilter-edit-builder-vars-translate-source-text": "Tèks sumberé unit pertalan",
"translate-save": "Simpen ($1)",
- "translate-jssti-add": "Tambah nèng daptar",
- "managemessagegroups": "Panatan klompok layang",
- "translate-smg-notallowed": "Sampéyan ora dililakaké nglakokaé iki.",
- "translate-smg-nochanges": "Ora ana sing owah saka prosès iki.",
+ "translate-jssti-add": "Tambah ing pratélan",
+ "managemessagegroups": "Tata kemunah golongan layang",
+ "translate-smg-notallowed": "Panjenengan ora dililakaké nglakokaé iki.",
+ "translate-smg-nochanges": "Ora ana owah-owahan kang bisa kaprosès.",
"translate-smg-submit": "Kirim owahan kanggo diprosès",
- "translate-smg-submitted": "Definisi layang wis dianyari. Owah-owahan lagi diprosès nèng latar mburi.",
- "translate-smg-left": "Kontèn layang nèng wiki",
- "translate-smg-right": "Owahan sing bakal teka",
+ "translate-smg-submitted": "Wedharan layang wis dianyari. Owah-owahan lagi digarap ing latar wuri.",
+ "translate-smg-more": "Bakal ana luwih akèh owahan kang bisa kaprosès sawisé owahan-owahan iki katumpuk.",
+ "translate-smg-left": "Isiné layang ing wiki",
+ "translate-smg-right": "Owahan kang bakal teka",
"translate-manage-import-diff": "Layang $1 | Laku: $2",
"translate-manage-import-new": "Layang anyar $1",
"translate-manage-import-deleted": "Layang dibusak $1",
"translate-manage-action-import": "Impor",
"translate-manage-action-conflict": "Impor lan tandhai ora cetha",
- "translate-manage-action-ignore": "Bènaké",
- "translate-manage-action-fuzzy": "Impor lan tandhai terjemahan ora cetha",
- "translate-manage-nochanges": "Ora ana owah-owahan nèng definisi layang kanggo klompok iki.",
- "translate-manage-nochanges-other": "Ora ana owah-owahan kanggo basa iki,\nAnggo pranala nèng ngisor kanggo mbalikaké tampilan rincian klompok.",
+ "translate-manage-action-ignore": "Jarna",
+ "translate-manage-action-fuzzy": "Impor lan tandhani pertalan supaya kapriksa",
+ "translate-manage-nochanges": "Ora ana owah-owahan ngenani wedharan layang kanggo golongan iki.",
+ "translate-manage-nochanges-other": "Ora ana owah-owahan tumrap basa iki.\nAnggonen pranala ngisor iki kanggo bali nyang sesawangan rerincèn golongan.",
"translate-manage-import-summary": "Ngimpor vèrsi anyar saka sumber njaba",
- "translate-manage-conflict-summary": "Ngimpor vèrsi anyar saka sumber njaba.\nMangga ditiliki.",
- "translate-manage-fuzzy-summary": "Definisi layang diowah",
- "importtranslations": "Impor terjemahan",
- "translate-import-from-local": "Pangunggahan berkas lokal:",
- "translate-import-load": "Unggah berkas",
- "translate-import-err-dl-failed": "Ora bisa njupuk berkas:\n$1",
- "translate-import-err-ul-failed": "Pangunggahan berkas ora suksès",
- "translate-import-err-invalid-title": "Jeneng berkas <nowiki>$1</nowiki> ora sah.",
- "translate-import-err-no-such-file": "Berkas <nowiki>$1</nowiki> ora ana utawa durung diunggah nèng lokal.",
- "translate-import-err-stale-group": "Klompok layangé berkas iki ora ana.",
- "translate-import-err-no-headers": "Berkas dudu berkas Gettext sing katata apik nèng format èkstènsi Translate:\nOra bisa nemtokaké klompok lan basa layang saka sirah berkas.",
- "translate-import-err-warnings": "Berkas ora ditata apik.\nPesthèkaké Panyunting SampÚyan ora mbusan bidhang msgctxt.\nRincian: $1",
+ "translate-manage-conflict-summary": "Ngimpor vèrsi anyar saka sumber njaba.\nSumangga panjenengan priksani.",
+ "translate-manage-submit": "Ayahi",
+ "translate-manage-import-ok": "Diimpor: $1",
+ "translate-manage-import-done": "Rampung ngimpor!",
+ "importtranslations": "Impor pertalan",
+ "translate-import-from-local": "Unggah barkas ing lokal:",
+ "translate-import-load": "Unggah barkas",
+ "translate-import-err-dl-failed": "Ora bisa njupuk barkas:\n$1",
+ "translate-import-err-ul-failed": "Wurung ngunggah barkas",
+ "translate-import-err-invalid-title": "Jeneng barkas <nowiki>$1</nowiki> ora trep.",
+ "translate-import-err-no-such-file": "Barkas <nowiki>$1</nowiki> ora ana utawa durung diunggah ing papan lokal.",
+ "translate-import-err-stale-group": "Golongan layangé barkas iki ora ana.",
+ "translate-import-err-no-headers": "Barkasé dudu barkas Gettext kang karipta kanthi becik nganggo format èstènsi Pertal:\nOra bisa nemtokaké golongan lan basané layang saka sesirahé barkas.",
+ "translate-import-err-warnings": "Barkas ora diyasa kanthi becik.\nPesthèkaké pambesuté panjenengan ora mbusak babagan msgctxt.\nRerincèn: $1",
"translate-js-summary": "Ringkesan:",
"translate-js-save": "Simpen",
"translate-js-next": "Simpen lan bukak sabanjuré",
- "translate-js-nonext": "Iki layang pungkasan saka kaca iki.",
- "translate-js-skip": "Lumpati nèng sabanjuré",
- "translate-js-save-failed": "Gagal nyimpen. Laporaké kasalahan iki.",
- "translate-js-history": "Riwayat terjemahan",
+ "translate-js-skip": "Langkahi menyang sabanjuré",
+ "translate-js-history": "Sajarah pertalan",
"translate-js-support": "Takon",
"translate-js-support-title": "Njaluk pitulung yèn ora ana cukup informasi kanggo nerjemahaké layang iki kanthi bener.",
- "translate-js-support-unsaved-warning": "Sampéyan nduwé terjamahan sing durung kasimpen.",
+ "translate-js-support-unsaved-warning": "Ana pertalané panjenengan kang durung kasimpen.",
"translate-gs-pos": "Pos.",
- "translate-gs-code": "Kodhé",
- "translate-gs-continent": "Benua",
+ "translate-gs-code": "Kodhe",
+ "translate-gs-continent": "Bawana",
"translate-gs-speakers": "Panutur",
- "translate-gs-score": "Skor",
+ "translate-gs-score": "Biji",
"translate-gs-multiple": "Werna-werna",
"translate-gs-count": "Cacah",
"translate-gs-total": "Cacahé kabèh",
"translate-gs-avgscore": "Skor reratan",
- "translate-documentation-language": "Dokumentasi layang",
- "translate-searchprofile": "Terjemahan",
- "translate-searchprofile-tooltip": "Golèk saka kabèh terjemahan",
+ "translate-documentation-language": "Dhokumèntasi layang",
+ "translate-searchprofile": "Pertalan",
+ "translate-searchprofile-tooltip": "Golèk saka kabèh pertalan",
+ "translate-searchprofile-note": "Pilihan golèkan luwih akèh cumepak mawa [$1 golèkan pertalan].",
"translate-search-languagefilter": "Saring miturut basa:",
"translate-search-nofilter": "Ora ana saringan",
- "translate-messagereview-submit": "Tampa",
- "translate-messagereview-progress": "Nampa...",
- "translate-messagereview-failure": "Nampa... gagal: $1",
- "translate-messagereview-done": "Katampa",
- "translate-messagereview-reviews": "Ditampa déning {{PLURAL:$1|sak pangango|$1 panganggo}}",
- "translate-messagereview-reviewswithyou": "Ditampa déning {{PLURAL:$1|Sampéyan|$1 panganggo kalebu Sampéyan}}",
- "api-error-invalidrevision": "Terjemahan ora ana",
- "api-error-unknownmessage": "Layang ora ana",
- "api-error-fuzzymessage": "Terjemahan ditandhai \"ora cetha\"",
- "api-error-owntranslation": "Sampéyan ora bisa nampa terjemahané Sampéyan dhéwé",
- "translate-messagereview-no-fuzzy": "Terjemahan sing ora cetha ora bakal ditampa.",
- "translate-messagereview-no-own": "Sampéyan ora bisa nampa terjemahané Sampéyan dhéwé",
- "translate-messagereview-doit": "Tampa terjemahan iki minangka terjemahan sing bener.",
- "log-name-translationreview": "Log pangulasan terjemahan",
- "log-description-translationreview": "Log kanggo kabèh klompok terjemahan lan layang.",
- "logentry-translationreview-message": "$1 {{GENDER:$2|nampa}} terjemahan $3",
+ "log-name-translationreview": "Log pepriksan pertalan",
+ "log-description-translationreview": "Log kabèh pepriksan golongan layang lan pertalan.",
+ "logentry-translationreview-message": "$1 {{GENDER:$2|mriksa}} pertalan $3",
+ "group-translate-sandboxed": "Juru pamertal kang durung katampa",
+ "group-translate-sandboxed-member": "{{GENDER:$1|juru pamertal kang durung katampa}}",
+ "right-translate-sandboxmanage": "Kemunah panganggo ing bak wedhi",
+ "action-translate-sandboxmanage": "kemunah panganggo ing bak wedhi",
"translate-workflow-state-": "(durung disetel)",
"translate-workflowstatus": "Status: $1",
- "translate-workflow-set-do": "Setèl",
"translate-workflow-set-doing": "Nyetèl...",
- "translate-workflow-set-done": "Kasetèl!",
- "translate-workflow-set-error-alreadyset": "Status sing dikarepaké padha plek karo status saiki.",
"translate-stats-workflow": "Status",
- "translate-dynagroup-recent-label": "Terjemahan paling anyar",
- "translate-dynagroup-recent-desc": "Klompok layang iki nuduhaké kabèh terjemahan paling anyar saka basa iki.\nPaling migunani kanggo tugas korèksi.",
- "translate-dynagroup-by": "Terjemahan digawé déning {{GENDER:$1|$1}}",
- "translate-dynagroup-byc": "Terjemahan digawé déning {{GENDER:$1|$1}} ($2)",
- "translate-dynagroup-last": "Owahan pungkasan déning {{GENDER:$1|$1}}",
- "translate-dynagroup-lastc": "Owahan pungkasan déning {{GENDER:$1|$1}} ($2)",
- "translate-gethelp": "Pitulung"
+ "translate-dynagroup-recent-label": "Pertalan mentas waé",
+ "translate-dynagroup-recent-desc": "Golongan layang iki nuduhaké kabèh pertalan anyar saka basa iki.\nBisa migunani banget manawa arep mriksani.",
+ "translate-dynagroup-additions-label": "Tambahan anyar",
+ "translate-dynagroup-additions-desc": "Golongan layang iki isiné layang anyar lan owahan.",
+ "translate-msggroupselector-projects": "Golongan layang",
+ "translate-msggroupselector-search-placeholder": "Golèk golongan",
+ "translate-msggroupselector-search-all": "Kabèh",
+ "translate-msggroupselector-search-recent": "Anyar",
+ "translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|anak golongan}}",
+ "tux-languageselector": "Pertal menyang",
+ "tux-tab-all": "Kabèh",
+ "tux-tab-untranslated": "Durung kapertal",
+ "tux-tab-outdated": "Kadaluwarsa",
+ "tux-tab-translated": "Wis kapertal",
+ "tux-tab-unproofread": "Durung dipriksa",
+ "tux-edit": "Besut",
+ "tux-status-optional": "Manasuka",
+ "tux-status-fuzzy": "Kadaluwarsa",
+ "tux-status-proofread": "Wis dipriksa",
+ "tux-status-translated": "Wis kapertal",
+ "tux-status-saving": "Nyimpen...",
+ "tux-status-unsaved": "Durung kasimpen",
+ "tux-save-unknown-error": "Ana masalah kang ora kaweruhan.",
+ "tux-editor-placeholder": "Pertalané panjenengan",
+ "tux-editor-editsummary-placeholder": "Ringkesan manasuka",
+ "tux-editor-paste-original-button-label": "Templèkaké tulisan sumber",
+ "tux-editor-discard-changes-button-label": "Buwang owahan",
+ "tux-editor-save-button-label": "Simpen pertalan",
+ "tux-editor-skip-button-label": "Langkahi menyang sabanjuré",
+ "tux-editor-cancel-button-label": "Wurung",
+ "tux-editor-confirm-button-label": "Iyai pertalan",
+ "tux-editor-proofread-button-label": "Tandhani manawa wis dipriksa",
+ "tux-editor-edit-desc": "Besut dhokumèntasi",
+ "tux-editor-add-desc": "Tambah dhokumèntasi",
+ "tux-editor-suggestions-title": "Saran",
+ "tux-editor-in-other-languages": "Ing basa liyané",
+ "tux-editor-need-more-help": "Butuh pitulung?",
+ "tux-editor-ask-help": "Takona supaya olèh katerangan luwih akèh",
+ "tux-editor-tm-match": "$1% cocog",
+ "tux-warnings-more": "{{PLURAL:$1|$1 liyané}}",
+ "tux-warnings-hide": "dhelikaké",
+ "tux-editor-save-failed": "Wurung nyimpen pertalan: $1",
+ "tux-editor-n-uses": "dianggo {{PLURAL:$1|ping}} $1",
+ "tux-editor-message-desc-more": "Tuduhaké liyané",
+ "tux-editor-message-desc-less": "Tuduhaké saperluné",
+ "tux-editor-clear-translated": "Dhelikaké kang wis kapertal",
+ "tux-editor-proofreading-mode": "Priksa",
+ "tux-editor-translate-mode": "Pratélan",
+ "tux-editor-proofreading-hide-own-translations": "Dhelikaké pertalané panjenengan",
+ "tux-editor-proofreading-show-own-translations": "Tuduhaké pertalané panjenengan",
+ "tux-proofread-action-tooltip": "Tandhani manawa wis dipriksa",
+ "tux-proofread-edit-label": "Besut",
+ "tux-editor-page-mode": "Kaca",
+ "tux-editor-outdated-warning": "Pertalan iki butuh dianyari.",
+ "tux-editor-outdated-warning-diff-link": "Tuduhaké béda",
+ "tux-editor-doc-editor-placeholder": "Dhokumèntasi layang",
+ "tux-editor-doc-editor-save": "Simpen dhokumèntasi",
+ "tux-editor-doc-editor-cancel": "Wurung",
+ "tux-messagetable-more-messages": "$1 {{PLURAL:$1|layang}} liyané",
+ "tux-messagetable-loading-messages": "Ngamot {{PLURAL:$1|layang}}...",
+ "tux-message-filter-placeholder": "Saring pratélan",
+ "tux-message-filter-result": "Tinemu $1 {{PLURAL:$1|kasil}} ngenani \"$2\"",
+ "tux-message-filter-advanced-button": "Panggolèk linuwih",
+ "tux-message-filter-optional-messages-label": "Layang manasuka",
+ "tux-proofread-translated-by-self": "Kapertal déning panjenengan",
+ "tux-empty-list-all": "Golongan layang iki kosong",
+ "tux-empty-list-all-guide": "Pilih golongan layang séjé saperlu kapertal",
+ "tux-translate-page-no-such-group": "<strong>Golongan kang panjenengan karsakaké ora ana.</strong> Pilih golongan layang liyané.",
+ "tux-empty-list-translated": "Ora ana layang kang kapertal",
+ "tux-empty-list-translated-guide": "Panjenengan bisa ngéwangi mertal",
+ "tux-empty-list-translated-action": "Pertal",
+ "tux-empty-no-messages-to-display": "Ora ana layang kanggo dituduhaké.",
+ "tux-empty-there-are-optional": "Ana layang manasuka kang ora kapacak ing pratélan",
+ "tux-empty-show-optional-messages": "Tuduhaké layang manasuka",
+ "tux-empty-no-outdated-messages": "Ora ana layang lawas",
+ "tux-empty-nothing-to-proofread": "Ora ana kang bisa kapriksa",
+ "tux-empty-you-can-help-providing": "Panjenengan kena ngéwangi gawé pertalan anyar",
+ "tux-empty-nothing-new-to-proofread": "Ora ana kang anyar kang bisa kapriksa",
+ "tux-empty-you-can-review-already-proofread": "Panjenengan bisa mriksa pertalan kang wis dipriksa wong liya.",
+ "tux-empty-list-other": "Ora ana kang kena kapertal",
+ "tux-empty-list-other-guide": "Panjenengan bisa ngéwangi mriksa pertalan kang ana",
+ "tux-empty-list-other-action": "Priksa pertalan",
+ "tux-empty-list-other-link": "Tuduhaké kabèh layang",
+ "tux-editor-close-tooltip": "Tutup",
+ "tux-editor-expand-tooltip": "Jembarna",
+ "tux-editor-collapse-tooltip": "Ciyutna",
+ "tux-editor-message-tools-show-editor": "Tuduhaké ing pambesut wiki",
+ "tux-editor-message-tools-history": "Sajarah",
+ "tux-editor-message-tools-delete": "Busak",
+ "tux-editor-message-tools-translations": "Kabèh pertalan",
+ "tux-editor-loading": "Ngamot...",
+ "translate-search-more-languages-info": "$1 {{PLURAL:$1|basa}} liyané",
+ "translate-statsbar-tooltip": "$1% wis kapertal, $2% wis kapriksa",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% wis kapertal, $2% wis kapriksa, $3% wis lawas",
+ "translate-search-more-groups-info": "$1 {{PLURAL:$1|golongan}} liyané",
+ "translate-ulsdep-title": "Masalah konfigurasi",
+ "translate-ulsdep-body": "Èkstènsi pertalan gumantung [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector èkstènsi Sèlèktor Basa Global].",
+ "tux-session-expired": "Panjenengan wis ora mlebu log manèh. Mlebua log lumantar tab séjé. Utawa, turuna pertalan kang durung kasimpen, mlebua log, balia menyang kaca iki banjur isinen manèh pertalané panjenengan.",
+ "tux-nojs": "Kaca iki butuh JavaScript."
}
diff --git a/MLEB/Translate/i18n/core/ka.json b/MLEB/Translate/i18n/core/ka.json
index c2974329..76827e15 100644
--- a/MLEB/Translate/i18n/core/ka.json
+++ b/MLEB/Translate/i18n/core/ka.json
@@ -6,15 +6,15 @@
"Malafaya",
"Sopho",
"Temuri rajavi",
- "გიორგიმელა"
+ "გიორგიმელა",
+ "Otogi",
+ "MIKHEIL"
]
},
"translate": "თარგმნა",
"translate-desc": "[[Special:Translate|სპეციალური გვერდი]] მედიავიკისა და სხვათა შეტყობინებების სათარგმნელად.",
- "translate-taskui-view": "ყველა შეტყობინების ჩვენება",
- "translate-taskui-untranslated": "ყველა უთარგმნელი შეტყობინების ჩვენება",
- "translate-taskui-optional": "არასავალდებულო შეტყობინებების ჩვენება",
- "translate-taskui-acceptqueue": "მხოლოდ ის შეტყობინებები რომლებიც შემიძლია დავამოწმო",
+ "translate-taskui-export-to-file": "ექსპორტი ადგილობრივ ფორმატში",
+ "translate-taskui-export-as-po": "ექსპორტი ოფლაინური თარგმნისათვის",
"translate-taction-translate": "თარგმნა",
"translate-taction-proofread": "შემოწმება",
"translate-taction-lstats": "ენის სტატისტიკა",
@@ -34,7 +34,6 @@
"translate-page-description-legend": "ინფორმაცია ჯგუფის შესახებ",
"translate-page-description-hasoptional-open": "არასავალდებულო შეტყობინებების ჩვენება.",
"translate-page-edit": "რედაქტირება",
- "translate-ext-url": "<hr />ვებ-გვერდი: $1",
"translate-optional": "(არასავალდებულო)",
"translate-ignored": "(იგნორირებული)",
"translate-edit-title": "„$1“ რედაქტირება",
@@ -60,12 +59,15 @@
"translate-pref-nonewsletter": "არ გამომიგზავნო სიახლეები ელ. ფოსტით",
"translate-pref-editassistlang": "დამხმარე ენები:",
"prefs-translate": "თარგმნის პარამეტრები",
+ "translate-pref-editassistlang-help": "მძიმეებით გაყოფილი ენების კოდების სია. ამ ენებზე თარგმანები ნაჩვენები იქნება შეტყობინების ცვლილების დროს. სია, ნაგულისხმევად თქვენ ენაზეა დამოკიდებული.",
"right-translate-manage": "შეტყობინებების ჯგუფების მართვა",
"action-translate-manage": "შეტყობინებების ჯგუფების მართვა",
"right-translate-messagereview": "თარგმანების გადახედვა",
"translate-rc-translation-filter": "თარგმანების გაფილტვრა:",
"translate-rc-translation-filter-no": "არაფრის კეთება",
"translate-rc-translation-filter-only": "აჩვენე მხოლოდ თარგმანები",
+ "translate-rc-translation-filter-filter": "თარგმანების დამალვა",
+ "translate-rc-translation-filter-site": "საიტის შეტყობინებების ცვლილებები",
"translationstats": "თარგმანის სტატისტიკა",
"translate-stats-edits": "რედაქტირებები",
"translate-stats-users": "მთარგმნელები",
@@ -88,7 +90,6 @@
"translate-statsf-count-reviews": "თარგმანის რეცენზენტები",
"translate-statsf-count-reviewers": "შემმოწმებლები",
"translate-statsf-submit": "წინასწარი გადახედვა",
- "translate-tag-category": "თარგმნადი გვერდები",
"translate-sidebar-alltrans": "სხვა ენებზე",
"translations": "ყველა თარგმანი",
"translate-translations-no-message": "შეტყობინება \"$1\" არ ითარგმნება",
@@ -159,25 +160,11 @@
"translate-documentation-language": "შეტყობინების დოკუმენტაცია",
"translate-searchprofile": "თარგმანები",
"translate-search-languagefilter": "გაფილტვრა ენის მიხედვით:",
- "translate-messagereview-submit": "შემოწმებულად მონიშვნა",
- "translate-messagereview-progress": "მონიშნულია როგორც შემოწმებული...",
- "translate-messagereview-failure": "მიღება... ვერ მოხერხდა: $1",
- "translate-messagereview-done": "შემოწმებულია",
- "api-error-invalidrevision": "თარგმანი ვერ მოიძებნა",
- "api-error-unknownmessage": "შეტყობინება ვერ მოიძებნა",
- "api-error-fuzzymessage": "თარგმანი მონიშნულია როგორც უზუსტო",
"translate-workflow-state-": "(არ არის არჩეული)",
"translate-workflowstatus": "სტატუსი: $1",
- "translate-workflow-set-do": "დაყენება",
"translate-workflow-set-doing": "ყენდება...",
- "translate-workflow-set-done": "დაყენდა!",
"translate-stats-workflow": "სტატუსი",
"translate-dynagroup-recent-label": "ბოლო თარგმანები",
- "translate-dynagroup-by": "თარგმანი შეასრულა მომხმარებელმა {{GENDER:$1|$1}}",
- "translate-dynagroup-byc": "თარგმანი შეასრულა მოხმარებელმა {{GENDER:$1|$1}} ($2)",
- "translate-dynagroup-last": "ბოლო ცვლილება მომხმარებლისათვის {{GENDER:$1|$1}}",
- "translate-dynagroup-lastc": "ბოლო ცვლილება მომხმარებლისათვის {{GENDER:$1|$1}} ($2)",
- "translate-gethelp": "დახმარება",
"translate-msggroupselector-projects": "შეტყობინების ჯგუფი",
"translate-msggroupselector-search-placeholder": "ჯგუფების ძიება",
"translate-msggroupselector-search-all": "ყველა",
@@ -188,6 +175,7 @@
"tux-tab-untranslated": "უთარგმნელი",
"tux-tab-outdated": "მოძველებული",
"tux-tab-translated": "ნათარგმნი",
+ "tux-tab-unproofread": "შეუმოწმებელი",
"tux-edit": "რედაქტირება",
"tux-status-optional": "არასავალდებულო",
"tux-status-fuzzy": "მოძველებული",
@@ -195,11 +183,15 @@
"tux-status-translated": "ნათარგმნი",
"tux-status-saving": "ინახება...",
"tux-status-unsaved": "არ შეინახა",
+ "tux-save-unknown-error": "დაფიქსირდა უცნობი შეცდომა.",
"tux-editor-placeholder": "თქვენი თარგმანები",
+ "tux-editor-paste-original-button-label": "საწყისი ტექსტის ჩასმა",
+ "tux-editor-discard-changes-button-label": "ცვლილებების გაუქმება",
"tux-editor-save-button-label": "თარგმანის შენახვა",
"tux-editor-skip-button-label": "შემდეგზე გადასვლა",
+ "tux-editor-cancel-button-label": "გაუქმება",
"tux-editor-confirm-button-label": "თარგმანის დადასტურება",
- "tux-editor-shortcut-info": "დააჭირეთ „$1“ შესანახად ან „$2“ შემდეგ შეტყობინებაზე გადასასვლელად",
+ "tux-editor-shortcut-info": "დააჭირეთ „$1“-ს შესანახად ან „$2“-ს შემდეგი შეტყობინების გამოსატოვებლად ან „$3“-ს სხვა მალსახმობებისთვის",
"tux-editor-edit-desc": "დოკუმენტაციის რედაქტირება",
"tux-editor-add-desc": "დოკუმენტაციის დამატება",
"tux-editor-in-other-languages": "სხვა ენებზე",
@@ -208,8 +200,17 @@
"tux-editor-tm-match": "შესაბამისობა $1%",
"tux-warnings-more": "{{PLURAL:$1|კიდევ $1}}",
"tux-warnings-hide": "დამალვა",
+ "tux-editor-message-desc-more": "იხილეთ მეტი",
+ "tux-editor-message-desc-less": "იხილეთ ნაკლები",
"tux-editor-clear-translated": "თარგმნილი ტექსტის დამალვა",
+ "tux-editor-proofreading-mode": "შემოწმება",
+ "tux-editor-translate-mode": "სია",
"tux-editor-proofreading-hide-own-translations": "თქვენი თარგმანის დამალვა",
+ "tux-editor-proofreading-show-own-translations": "თქვენი თარგმანების ჩვენება",
+ "tux-proofread-action-tooltip": "შემოწმებულად მონიშვნა",
+ "tux-proofread-edit-label": "რედაქტირება",
+ "tux-editor-page-mode": "გვერდი",
+ "tux-editor-outdated-warning": "შესაძლოა, ეს თარგმანი განახლებას საჭიროებს",
"tux-editor-outdated-warning-diff-link": "განსხვავებების ჩვენება",
"tux-editor-doc-editor-placeholder": "შეტყობინების დოკუმენტაცია",
"tux-editor-doc-editor-save": "დოკუმენტაციის შენახვა",
@@ -220,6 +221,29 @@
"tux-message-filter-result": "ნაპოვნია $1 {{PLURAL:$1|შედეგი|შედეგი}} „$2“-თვის",
"tux-message-filter-advanced-button": "გაფართოებული ძიება",
"tux-message-filter-optional-messages-label": "არასავალდებულო შეტყობინებები",
+ "tux-proofread-translated-by-self": "თქვენი გადათარგმნილი",
+ "tux-empty-list-all": "შეტყიბინებების ჯგუფი ცარიელია",
+ "tux-empty-list-translated": "უთარგმნელი შეტყობინებები არ არის",
+ "tux-empty-list-translated-guide": "თქვენ შეგიძლიათ თარგმნაში დახმარება",
+ "tux-empty-list-translated-action": "თარგმნა",
+ "tux-empty-show-optional-messages": "არასავალდებულო შეტყობინებების ჩვენება",
+ "tux-empty-no-outdated-messages": "არ არის მოძველებული შეტყობინებები",
+ "tux-empty-nothing-to-proofread": "შესამოწმებელი არაფერია",
+ "tux-empty-nothing-new-to-proofread": "შესამოწმებელი ახალი არაფერია",
"tux-empty-list-other": "სათარგმნი არაფერია",
- "tux-empty-list-other-link": "ყველა შეტყობინების ჩვენება"
+ "tux-empty-list-other-guide": "თქვენ შეგიძლიათ გადახედოთ არსებულ თარგმანებს",
+ "tux-empty-list-other-action": "თარგმანების გადახედვა",
+ "tux-empty-list-other-link": "ყველა შეტყობინების ჩვენება",
+ "tux-editor-close-tooltip": "დახურვა",
+ "tux-editor-expand-tooltip": "გაშლა",
+ "tux-editor-collapse-tooltip": "ჩაკეცვა",
+ "tux-editor-message-tools-history": "ისტორია",
+ "tux-editor-message-tools-delete": "წაშლა",
+ "tux-editor-message-tools-translations": "ყველა თარგმანი",
+ "tux-editor-loading": "იტვირთება...",
+ "translate-search-more-languages-info": "კიდევ $1 {{PLURAL:$1|ენა|ენა}}",
+ "translate-statsbar-tooltip": "ნათარგმნი $1%, შემოწმებული $2%",
+ "translate-statsbar-tooltip-with-fuzzy": "ნათარგმნი $1%, შემოწმებული $2%, მოძველებული $3%",
+ "translate-search-more-groups-info": "კიდევ $1 {{PLURAL:$1|ჯგუფი|ჯგუფი}}",
+ "translate-ulsdep-title": "კონფიგურაციის შეცდომა"
}
diff --git a/MLEB/Translate/i18n/core/kaa.json b/MLEB/Translate/i18n/core/kaa.json
index 0f15b965..4c247ee7 100644
--- a/MLEB/Translate/i18n/core/kaa.json
+++ b/MLEB/Translate/i18n/core/kaa.json
@@ -28,7 +28,6 @@
"translate-edit-no-information": "''Bul xabardın' hu'jjet mag'lıwmatı joq. Eger siz bul xabar qayerde yamasa qalay paydalang'anın bilsen'iz, basqa awdarıwshılıwg'a usı xabardın' hu'jjet mag'lıwmatın ko'rsetip ja'rdem beriwin'iz mu'mkin.''",
"translate-edit-information": "Bul xabar haqqında mag'lıwmat ($1)",
"translate-edit-in-other-languages": "Bul xabar basqa tillerde",
- "translate-edit-committed": "Bag'darlamadag'ı ha'zirgi awdarması",
"translate-edit-warnings": "Tolıq awdarılmag'an xabarlar haqqında esletpeler",
"translate-magic-pagename": "Ken'eytilgen MediaWiki awdarması",
"translate-magic-submit": "Ko'rset",
diff --git a/MLEB/Translate/i18n/core/kab.json b/MLEB/Translate/i18n/core/kab.json
index d23a84a2..2c15f64d 100644
--- a/MLEB/Translate/i18n/core/kab.json
+++ b/MLEB/Translate/i18n/core/kab.json
@@ -1,11 +1,243 @@
{
"@metadata": {
"authors": [
- "Mmistmurt"
+ "Mmistmurt",
+ "Belkacem77"
]
},
- "translate-page-settings-legend": "Iɣewwaren",
+ "translate": "Suqel",
+ "translate-desc": "[[Special:Translate|Asebter ameẓlu]] i tsuqilt n MediaWiki d wayen-nniḍen",
+ "translate-taskui-export-to-file": "Sifeḍ ar umasal aneṣli",
+ "translate-taskui-export-as-po": "Sifeḍ i tsuqilt war tuqqna",
+ "translate-taction-translate": "Suqel",
+ "translate-taction-proofread": "Aceggir",
+ "translate-taction-lstats": "Tidaddanin n tutlayt",
+ "translate-taction-mstats": "Tidaddanin n ugraw n yiznan",
+ "translate-taction-export": "Sifeḍ",
+ "translate-taction-disabled": "Tigawt-agi tensa ɣef uwiki-agi.",
+ "translate-page-no-such-language": "Tangalt n tutlayt yettwamlen mačči d tameɣtut.",
+ "translate-page-no-such-group": "Agraw yettwamlen mačči d ameɣtu.",
+ "translate-page-disabled": "Tisuqilin ar tutlayt-agi deg ugraw-agi nsant.\nAcuɣer:\n\n<em>$1</em>",
+ "translate-language-disabled": "Tasuqilt ar tutlayt-agi tensa.",
+ "translate-page-settings-legend": "Iɣewwaṛen",
"translate-page-group": "Agraw",
"translate-page-language": "Tutlayt",
- "translate-submit": "Umuɣ"
+ "translate-page-limit": "Talast",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|n yizen|n yiznan}} deg usebter",
+ "translate-submit": "Bder",
+ "translate-page-navigation-legend": "Tunigin",
+ "translate-page-showing": "Askan n yiznan si $1 ar $2 ɣef $3.",
+ "translate-page-showing-all": "Askan n $1 n {{PLURAL:$1|yizen|yiznan}}",
+ "translate-page-showing-none": "Ulac iznan ara yettwaseknen.",
+ "translate-next": "Asebter d-iteddun",
+ "translate-prev": "Asebter yezrin",
+ "translate-page-description-legend": "Talɣut ɣef ugraw",
+ "translate-page-description-hasoptional-open": "Sken iznan ifrayanen",
+ "translate-page-edit": "ẓreg",
+ "translate-optional": "(afrayan)",
+ "translate-ignored": "(yettwazgel)",
+ "translate-edit-title": "Ẓreg \"$1\"",
+ "translate-edit-definition": "Tabadut n yizen",
+ "translate-edit-translation": "Tasuqilt",
+ "translate-edit-contribute": "ttekki",
+ "translate-edit-information": "Talɣef ɣef yizen ($1)",
+ "translate-edit-in-other-languages": "Izen di tutlayin-nniḍen",
+ "translate-edit-warnings": "Alɣu ɣef tsuqilin ur yemmiden ara",
+ "translate-edit-tmmatch-source": "Aḍris aɣbalu n tsuqilt : $1",
+ "translate-edit-tmmatch": "$1 % n umenṭaḍ",
+ "translate-use-suggestion": "Semselsi tasuqlit tamirant akked s usumer.",
+ "translate-edit-nopermission": "Yessefk ad tesɛuḍ izerfan n tsuqilt akken ad tsuqleḍ iznan.",
+ "translate-edit-askpermission": "Awi tasiregt",
+ "exporttranslations": "Sifeḍ tisuqilin",
+ "translate-export-form-format": "Amasal",
+ "translate-export-invalid-format": "Mudd amasal ameɣtu.",
+ "translate-export-not-supported": "Asifeḍ n tsuqilin ur yettusefrak ara.",
+ "translate-magic-module": "Azegrir",
+ "translate-magic-submit": "Bder",
+ "translate-magic-cm-export": "Sifeḍ",
+ "translate-magic-nothing-to-export": "Ulac ayen ara sifḍeḍ.",
+ "translate-magic-cm-to-be": "Ad yuɣal",
+ "translate-magic-cm-current": "Amiran",
+ "translate-magic-cm-original": "Aneṣli",
+ "translate-magic-cm-comment": "Awennit:",
+ "translate-magic-cm-save": "Sekles",
+ "translate-magic-cm-updatedusing": "Aleqqem s [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "Asekles yecceḍ",
+ "translate-magic-notsaved": "Taẓreg ur tettwaseklen ara!",
+ "translate-checks-fudforum-syntax": "Seqdec <nowiki>$1</nowiki> deg umḍiq n <nowiki>$2</nowiki> deg usenfaṛ-agi.",
+ "translate-pref-editassistlang": "Amarag n tutlayin:",
+ "prefs-translate": "Iɣewwaṛen n tsuqilt",
+ "translate-pref-editassistlang-bad": "Yir tangalt n tutlayt di tebdart:\n<nowiki>$1</nowiki>.",
+ "right-translate": "Ẓreg aseqdec n ugrudem n tsuqilt",
+ "right-translate-manage": "Sefrek igrawen n tsuqlit",
+ "action-translate-manage": "sefrek igrawen n yiznan",
+ "right-translate-import": "Kter tisuqilin n war tuqqna",
+ "action-translate-import": "kter tisuqilin n war tuqqna",
+ "right-translate-messagereview": "Sleḍ tisuqilin",
+ "action-translate-messagereview": "ales taɣuri n tsuqilin",
+ "right-translate-groupreview": "Snifel addad n usuddem n igrawen n yiznan",
+ "action-translate-groupreview": "snifel addad n usuddem n umahil i yigrawen n yiznan",
+ "translate-rc-translation-filter": "Zizdeg tisuqilin",
+ "translate-rc-translation-filter-no": "Ur teg wara",
+ "translate-rc-translation-filter-only": "Sken kan tiquqilin",
+ "translate-rc-translation-filter-filter": "Zideg tisuqilin",
+ "translate-rc-translation-filter-site": "Ala asnifel n yiznan n usmel",
+ "translationstats": "Tidaddanin n tsuqilt",
+ "translate-stats-edits": "Tiẓrigin",
+ "translate-stats-users": "Imsuqal",
+ "translate-stats-registrations": "Ajerred",
+ "translate-stats-reviews": "Iceggiren",
+ "translate-stats-reviewers": "Imceggiren",
+ "translate-statsf-width": "Tehri s ipiksilen:",
+ "translate-statsf-height": "Teɣzi s ipiksilen:",
+ "translate-statsf-start": "Azemz n tazwara:",
+ "translate-statsf-scale-months": "Ayyuren",
+ "translate-statsf-scale-weeks": "Imalasen",
+ "translate-statsf-scale-days": "Ussan",
+ "translate-statsf-scale-hours": "Isragen",
+ "translate-statsf-count": "Aktal:",
+ "translate-statsf-count-edits": "Amḍan n teẓrigin",
+ "translate-statsf-count-users": "Imsuqal urmiden",
+ "translate-statsf-count-registrations": "Iseqdacen imaynuten",
+ "translate-statsf-count-reviews": "Tulsa n tɣrui n tsuqilt",
+ "translate-statsf-count-reviewers": "Imceggiren",
+ "translate-sidebar-alltrans": "S tutlayin tiyaḍ",
+ "translations": "Akk tisuqilin",
+ "translate-translations-count": "Tettwaf(ttwafent) {{PLURAL:$1|yiwet n tsuqilt|$1 n tquqilin}}.",
+ "translate-translations-fieldset-title": "Izen",
+ "translate-translations-messagename": "Isem:",
+ "translate-translations-project": "Asenfaṛ:",
+ "translate-translations-history-short": "z",
+ "languagestats": "Tidaddanin n tutlayt",
+ "languagestats-stats-for": "Tidaddanin n tsuqilt i $1 ($2).",
+ "languagestats-recenttranslations": "tisuqilin tineggura",
+ "translate-langstats-expand": "snefli",
+ "translate-langstats-collapse": "fneẓ",
+ "translate-langstats-expandall": "snefli meṛṛa",
+ "translate-langstats-collapseall": "fneẓ meṛṛa",
+ "translate-language-code": "Tangalt n tutlayt",
+ "translate-language-code-field-name": "Tangalt n tutlayt:",
+ "translate-suppress-complete": "Ffer akk igrawen n yiznan yettwasuqqlen i meṛṛa",
+ "translate-ls-noempty": "Ffer igrawen n yiznan s war tasuqilt",
+ "translate-language": "Tutlayt",
+ "translate-total": "Iznan",
+ "translate-untranslated": "Ur yettwasuqel ara",
+ "translate-percentage-complete": "Afmiḍi",
+ "translate-percentage-fuzzy": "Ifat",
+ "translate-languagestats-overall": "Akk igrawen n yiznan i meṛṛa",
+ "translate-ls-submit": "Sken tidaddanin",
+ "translate-ls-column-group": "Agraw n yiznan",
+ "translate-mgs-pagename": "Tidaddanin n ugraw n yiznan",
+ "translate-mgs-fieldset": "Sken ismenyifen",
+ "translate-mgs-group": "Agraw n yiznan:",
+ "translate-mgs-submit": "Sken tidaddanin",
+ "translate-mgs-column-language": "Tutlayt",
+ "translate-mgs-totals": "Akk tutlayin i meṛṛa",
+ "supportedlanguages": "Tutlayin yettusefraken",
+ "supportedlanguages-recenttranslations": "tisuqilin tineggura",
+ "supportedlanguages-count": "$1 {{PLURAL:$1|tutlayt|tutlayin}} s umata.",
+ "translate-save": "Sekles ($1)",
+ "managemessagegroups": "Asefrek n ugraw n yiznan",
+ "translate-manage-import-diff": "Iznan $1 | Tiggawin: $2",
+ "translate-manage-import-new": "Izen amaynut $1",
+ "translate-manage-import-deleted": "Izen yettwakkes $1",
+ "translate-manage-action-import": "Kter",
+ "translate-manage-action-conflict": "Kter sakin creḍ d arewway",
+ "translate-manage-action-ignore": "Zgel",
+ "translate-manage-action-fuzzy": "Kter sakin creḍ tisuqilin d tirewwayin",
+ "translate-manage-import-summary": "Akter n lqem amaynut seg teɣbalut tazɣarayt",
+ "translate-manage-submit": "Selkem",
+ "translate-manage-import-ok": "Ttwaketren: $1",
+ "translate-manage-import-done": "Akter yedda!",
+ "importtranslations": "Kter tisuqilin",
+ "translate-import-from-local": "Sali afaylu adigan:",
+ "translate-import-load": "Sali afaylu",
+ "translate-import-err-dl-failed": "Ur izmir ara ad yekcem ar ufaylu:\n$1",
+ "translate-import-err-ul-failed": "Asali n ufaylu ur yeddi ara",
+ "translate-import-err-invalid-title": "Isem n ufayly yettwanefken <nowiki>$1</nowiki> mačči d ameɣtu.",
+ "translate-js-summary": "Agzul:",
+ "translate-js-save": "Sekles",
+ "translate-js-next": "Sekles sakin ldi wayeḍ",
+ "translate-gs-code": "Tangalt",
+ "translate-gs-continent": "Amenẓaw",
+ "translate-gs-score": "Agmuḍ",
+ "translate-gs-count": "Amiḍan",
+ "translate-gs-total": "Amatu",
+ "translate-documentation-language": "Tasemlit n yizen",
+ "translate-searchprofile": "Tisuqilin",
+ "translate-searchprofile-tooltip": "Nadi di tsuqilin meṛṛa",
+ "translate-search-languagefilter": "Zizdeg s tytlayt:",
+ "translate-dynagroup-recent-label": "Tisuqilin tineggura",
+ "translate-msggroupselector-search-placeholder": "Nadi igrawen",
+ "translate-msggroupselector-search-all": "Akk",
+ "translate-msggroupselector-search-recent": "Melmi kan",
+ "translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|asenfaṛ asnawan|isenfaṛen isnawanen}}",
+ "tux-languageselector": "Suqel ar",
+ "tux-tab-all": "Akk",
+ "tux-tab-untranslated": "Ur yettwasuqel ara",
+ "tux-tab-outdated": "Ifat",
+ "tux-tab-translated": "Yettwasuqel",
+ "tux-edit": "Ẓreg",
+ "tux-status-fuzzy": "Ifat",
+ "tux-status-translated": "Yettwasuqel",
+ "tux-editor-edit-desc": "Ẓreg tasemlit",
+ "tux-editor-add-desc": "Rnu tasemlit",
+ "tux-editor-suggestions-title": "Isumar",
+ "tux-editor-in-other-languages": "S tutlayin tiyaḍ",
+ "tux-editor-need-more-help": "Tesriḍ tallelt?",
+ "tux-editor-ask-help": "Suter ugar n telɣut",
+ "tux-editor-tm-match": "$1 % n umenṭaḍ",
+ "tux-warnings-more": "{{PLURAL:$1|$1 nniḍen}}",
+ "tux-warnings-hide": "ffer",
+ "tux-editor-save-failed": "Asekles n tsuqilt ur yeddi ara:$1",
+ "tux-editor-n-uses": "yettwaseqdec $1 {{PLURAL:$1|n tikelt|n tikal}}",
+ "tux-editor-message-desc-more": "Sken ugar",
+ "tux-editor-message-desc-less": "Sken drus",
+ "tux-editor-clear-translated": "Ffer tasuqilt",
+ "tux-editor-proofreading-mode": "Aceggir",
+ "tux-editor-translate-mode": "Tabdart",
+ "tux-editor-proofreading-hide-own-translations": "Ffer tisuqilin-ik",
+ "tux-editor-proofreading-show-own-translations": "Sken tisuqilin-ik",
+ "tux-proofread-action-tooltip": "Creḍ yettwaɣra",
+ "tux-proofread-edit-label": "Ẓreg",
+ "tux-editor-page-mode": "Asebter",
+ "tux-editor-outdated-warning": "Tasuqilt-agi tesra aleqqem.",
+ "tux-editor-outdated-warning-diff-link": "Sken amgired",
+ "tux-editor-doc-editor-placeholder": "Tasemlit n yizen",
+ "tux-editor-doc-editor-save": "Sekles tasemlit",
+ "tux-editor-doc-editor-cancel": "Sefsex",
+ "tux-messagetable-more-messages": "$1 {{PLURAL:$1|n yizen|n yiznan}}-nniḍen",
+ "tux-messagetable-loading-messages": "Asali n $1 n {{PLURAL:$1|yizen|yiznan}}...",
+ "tux-message-filter-placeholder": "Zizdeg tabdart",
+ "tux-message-filter-result": "{{PLURAL:$1|0=Ula d yiwen n ugmuḍ ur yettwaf|1=Yettwaf yiwen n ugmuḍ|$1 n igmaḍ ttwafen}} i « $2 »",
+ "tux-message-filter-advanced-button": "Anadi leqqayen",
+ "tux-message-filter-optional-messages-label": "Iznan ifrayanen",
+ "tux-proofread-translated-by-self": "Tsuqleṭ",
+ "tux-empty-list-all": "Agraw-agi n yizen d ilem",
+ "tux-empty-list-all-guide": "Fren agraw n yizen-nniḍen ara tsuqleḍ",
+ "tux-empty-list-translated": "Ulac iznan yettwasuqlen",
+ "tux-empty-list-translated-guide": "Tzemreḍ ad tmuddeḍ afus di tsuqilt",
+ "tux-empty-list-translated-action": "Suqel",
+ "tux-empty-no-messages-to-display": "Ulac iznan ara d-sekneḍ.",
+ "tux-empty-show-optional-messages": "Sken iznan ifrayanen",
+ "tux-empty-no-outdated-messages": "Ilac iznan ifaten",
+ "tux-empty-nothing-to-proofread": "Ulac ayen ara teɣreḍ",
+ "tux-empty-you-can-help-providing": "Tzemreḍ ad tmuddeḍ afus di tsuqlin timaynutin",
+ "tux-empty-list-other": "Ulac acu ara tsuqleḍ.",
+ "tux-empty-list-other-guide": "Tzemreḍ ad tmuddeḍ afus di tsuqilin yellan",
+ "tux-empty-list-other-link": "Sken akk iznan",
+ "tux-editor-close-tooltip": "Mdel",
+ "tux-editor-expand-tooltip": "snefli",
+ "tux-editor-collapse-tooltip": "Fneẓ",
+ "tux-editor-message-tools-show-editor": "Sken deg umaẓeag n uwiki",
+ "tux-editor-message-tools-history": "Amazray",
+ "tux-editor-message-tools-delete": "Kkes",
+ "tux-editor-message-tools-translations": "Akk tisuqilin",
+ "tux-editor-loading": "Asali...",
+ "translate-search-more-languages-info": "$1 {{PLURAL:$1|tutlayt-nniḍen|tutlayin-nniḍen}}",
+ "translate-statsbar-tooltip": "$1% tasuqilt, $2% taɣuri",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% asuqilt, $2% acegger, $3% ifat",
+ "translate-search-more-groups-info": "$1 n {{PLURAL:$1|ugraw|igrawen}}-nniden",
+ "translate-ulsdep-title": "Tuccḍa n twila",
+ "tux-nojs": "Asebter-agi yesra JavaScript."
}
diff --git a/MLEB/Translate/i18n/core/kiu.json b/MLEB/Translate/i18n/core/kiu.json
index 628db615..a2a74fef 100644
--- a/MLEB/Translate/i18n/core/kiu.json
+++ b/MLEB/Translate/i18n/core/kiu.json
@@ -1,8 +1,10 @@
{
"@metadata": {
"authors": [
- "Erdemaslancan"
+ "Erdemaslancan",
+ "Kumkumuk"
]
},
- "translate-tag-page-desc": "Açarnayışê pela da [[$2|$1]] wiki"
+ "translate-tag-page-desc": "Açarnayışê pela da [[$2|$1]] wiki",
+ "translate-ls-submit": "İstatistikan bımocne"
}
diff --git a/MLEB/Translate/i18n/core/kk-arab.json b/MLEB/Translate/i18n/core/kk-arab.json
index fd23c435..abfeeeed 100644
--- a/MLEB/Translate/i18n/core/kk-arab.json
+++ b/MLEB/Translate/i18n/core/kk-arab.json
@@ -27,7 +27,6 @@
"translate-edit-no-information": "''بۇل حابار قۇجاتتاماسىز. ەگەر وسى حاباردىڭ قايدا نەمەسە قالاي قولدانعانىن بىلسەڭىز, بۇل حابارعا قۇجاتتاما كەلتىرىپ, باسقا اۋدارۋشىلارعا كومەكتەسە الاسىز.''",
"translate-edit-information": "بۇل حابار تۋرالى مالىمەت ($1)",
"translate-edit-in-other-languages": "حابار باسقا تىلدەردە",
- "translate-edit-committed": "باعدارلاماداعى اعىمدىق اۋدارما",
"translate-edit-warnings": "تولىق اۋدارىلماعان حابارلار تۋرالى اڭعارتپالار",
"translate-magic-pagename": "كەڭەيتىلگەن MediaWiki اۋدارۋى",
"translate-magic-help": "ارنايى بەت بۇركەمەلەرىن, سىيقىرلى سوزدەرىن, بەزەندىرۋ مانەر اتاۋلارىن جانە ەسىم ايا اتاۋلارىن اۋدارا الاسىز.\n\nسىيقىرلى سوزدەردە اعىلشىنشا نۇسقاسىن كىرگىزۋىڭىز ٴجون, ايتپەسە قىزمەتى توقتالادى. تاعى دا ٴبىرىنشى بابىن (0 نە 1) ٴاردايىم قالدىرىڭىز.\n\nارنايى بەت بۇركەمەلەرىندە جانە سىيقىرلى سوزدەرىندە بىرنەشە اۋدارما بولۋى مۇمكىن. اۋدارمالار ۇتىرمەن (,) بولىكتەنەدى. بەزەندىرۋ مانەر جانە ەسىم ايا اتاۋلارىندا تەك ٴبىر اۋدارما بولۋى ٴتىيىس.\n\nەسىم ايا اۋدارمالارىندا <code>$1_talk</code> دەگەن ارنايى كەلتىرىلەدى. <code>$1</code> دەگەن اينالمالى وزدىكتىك توراپ اتاۋىمەن الماستىرىلادى (مىسالى, <code>{{SITENAME}} تالقىلاۋى</code>). ەگەر ٴسىزدىڭ تىلىڭىزدە توراپ اتاۋىن وزگەرتپەي دۇرىس سويلەم قۇرىلماسا, دامىتۋشىلارعا حابارلاسىڭىز.",
diff --git a/MLEB/Translate/i18n/core/kk-cyrl.json b/MLEB/Translate/i18n/core/kk-cyrl.json
index c13627f1..0cdbc59f 100644
--- a/MLEB/Translate/i18n/core/kk-cyrl.json
+++ b/MLEB/Translate/i18n/core/kk-cyrl.json
@@ -8,78 +8,295 @@
]
},
"translate": "Аудару",
- "translate-desc": "MediaWiki дегенді және бұнан тыстарды аудару үшін арналған [[Special:Translate|арнайы бет]]",
- "translate-taskui-view": "",
- "translate-taskui-untranslated": "Аударылмаған хабарларды көрсету",
- "translate-taskui-optional": "Қосымша хабарларды көрсету",
- "translate-taskui-reviewall": "Барлық аудармаларды қайта қарау",
- "translate-taskui-export-as-po": "Дербес (off-line) аударма үшін экспорттау",
+ "translate-desc": "MediaWiki және бұнан тыстарды аударуға арналған [[Special:Translate|арнайы бет]]",
+ "translate-taskui-export-to-file": "Негізгі форматын экспорттау",
+ "translate-taskui-export-as-po": "Оффлайн аударма үшін экспорттау",
"translate-taction-translate": "Аудару",
- "translate-taction-proofread": "Қайта қарау",
- "translate-taction-lstats": "Тіл статистикасы",
+ "translate-taction-proofread": "Тексеру",
+ "translate-taction-lstats": "Тіл статистикалары",
"translate-taction-mstats": "Хабар тобы статистикасы",
"translate-taction-export": "Экспорттау",
"translate-taction-disabled": "Бұл уикиде бұл әрекет сөндірілген.",
- "translate-page-no-such-language": "Келтірілген тіл жарамсыз",
- "translate-page-no-such-group": "Келтірілген топ жарамсыз.",
- "translate-page-disabled": "Осы топтағы бұл тілге аударуы өшірілген. Себебі:\n\n<em>$1</em>",
- "translate-language-disabled": "Бұл тілге аудару ажыратылған",
+ "translate-page-no-such-language": "Келтірілген тіл дұрыс емес.",
+ "translate-page-no-such-group": "Келтірілген топ дұрыс емес.",
+ "translate-page-disabled": "Осы топтағы аудармаларды бұл тілге аударуы сөндірілген. \nСебебі:\n\n<em>$1</em>",
+ "translate-language-disabled": "Бұл тілге аудару ажыратылған.",
"translate-page-settings-legend": "Бапталымдар",
"translate-page-group": "Хабар тобы",
"translate-page-language": "Тілі",
"translate-page-limit": "Шектемі",
- "translate-page-limit-option": "бет сайын $1 хабар",
+ "translate-page-limit-option": "бет сайын {{PLURAL:$1|хабарлама|хабарлама}}",
"translate-submit": "Келтір!",
"translate-page-navigation-legend": "Шарлау",
"translate-page-showing": "Көрсетілген хабар ауқымы: $1 — $2 (не барлығы $3).",
- "translate-page-showing-all": "$1 хабар көрсетілуде.",
+ "translate-page-showing-all": "$1 {{PLURAL:$1|хабарлама|хабарлама}} көрсетілуде.",
"translate-page-showing-none": "Көрсетілетін еш хабар жоқ.",
"translate-next": "Келесі бет",
"translate-prev": "Алдыңғы бет",
"translate-page-description-legend": "Бұл топ туралы мәлімет",
"translate-page-description-hasoptional-open": "Қосымша хабарларды көрсету",
"translate-page-edit": "өңдеу",
- "translate-ext-url": "<hr />Уебсайт: $1",
"translate-optional": "(міндетті емес)",
"translate-ignored": "(елемейтін)",
- "translate-edit-title": "\"$1\" дегенді өңдеу",
+ "translate-edit-title": "«$1» аудармасын өңдеу",
"translate-edit-definition": "Хабар анықтауы",
"translate-edit-translation": "Аударма",
- "translate-edit-contribute": "үлес бер",
- "translate-edit-no-information": "<em>Бұл хабар құжаттамасыз.\nЕгер бұл хабардың қайда немесе қалай қолданғанын білсеңіз, бұл хабарға құжаттама келтіріп, басқа аударушыларға көмектесе аласыз.</em>",
+ "translate-edit-contribute": "өңдеу",
+ "translate-edit-no-information": "<em>Бұл хабар құжаттамасыз.\nЕгер бұл хабардың қайда немесе қалай қолданғанын білсеңіз, бұл хабарға құжаттама келтіру арқылы басқа аударушыларға көмектесе аласыз.</em>",
"translate-edit-information": "Бұл хабар туралы мәлімет ($1)",
"translate-edit-in-other-languages": "Хабар басқа тілдерде",
- "translate-edit-committed": "Бағдарлама жасақтамадағы ағымдақ аударма",
- "translate-edit-warnings": "Толық аударылмаған хабарлар туралы құлақтандырулар",
- "translate-edit-tmsugs": "Машиналық аударма және аудрамаларды еске түсіру ұсыныстары",
+ "translate-edit-warnings": "Толық аударылмаған аудармалар туралы ескертулер",
"translate-edit-tmmatch-source": "Аударма қайнар мәтіні: $1",
+ "translate-edit-tmmatch": "$1% сәйкес келеді",
+ "translate-use-suggestion": "Бұл ұсыныспен қазіргі аударманы алмастыру",
+ "translate-edit-nopermission": "Хабарламаларды аудару үшін сізге аудару құқығы қажет.",
+ "translate-edit-askpermission": "Рұқсат алу",
"translate-magic-pagename": "Кеңейтілген MediaWiki аударуы",
"translate-magic-help": "Арнайы бет бүркеме аттарын, сиқырлы сөздерді, мәнер атауларын және есім ая атауларын аудара аласыз.\n\nСиқырлы сөздерде ағылшынша нұсқасын кіргізуіңіз жөн, әйтпесе қызметі тоқталады.\nТағы да бірінші бабын (0 не 1) әрдайым қалдырыңыз.\n\nАрнайы бет бүркеме аттарында және сиқырлы сөздерде бірнеше аударма болуы мүмкін.\nАудармалар үтірмен (,) бөлінеді.\nМәнер және есім ая атауларында тек бір аударма болуы мүмкін.\n\nЕсім ая аудармаларында <code>$1_talk</code> деген арнайы боп табылады. <code>$1</code> айналмалысы торап атауымен алмастырылады (мысалы, <code>{{SITENAME}} талқылауы</code>).\nЕгер сіздің тіліңізде торап атауын өзгертпей дұрыс айтылым құрылмаса, дамытушыға хабарласыңыз.\n\nӨзгерістерді сақтау үшін аудармашылар тобына кіруіңіз жөн.\nСақтау батырмасын нұқығанша дейін өзгерістер сақталмайды.",
- "translate-magic-module": "Модуль:",
+ "translate-magic-module": "Модул:",
"translate-magic-submit": "Келтір",
- "translate-magic-cm-export": "Сыртқа бер",
+ "translate-magic-cm-export": "Экспорттау",
+ "translate-magic-nothing-to-export": "Мұнда ехпорттайтын ештеңе жоқ",
"translate-magic-cm-to-be": "Болуға тиістісі",
- "translate-magic-cm-current": "Ағымдағысы",
+ "translate-magic-cm-current": "Қазіргісі",
"translate-magic-cm-original": "Түпнұсқасы",
- "translate-magic-cm-comment": "Мәндеме:",
- "translate-magic-cm-save": "Сақта!",
- "translate-magic-cm-updatedusing": "[[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]] дегенді қолданып сақталған",
+ "translate-magic-cm-comment": "Пікір:",
+ "translate-magic-cm-save": "Сақтау",
+ "translate-magic-cm-updatedusing": "[[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]] дегенді қолданып жаңартылған",
"translate-magic-cm-savefailed": "Сақтау сәтсіз болды",
"translate-magic-special": "Арнайы бет бүркеме аттары",
- "translate-magic-words": "Сиқыр сөздер",
- "translate-magic-namespace": "Есім ая атаулары",
- "translate-checks-parameters": "Келесі бапталымдар пайдаланылмаған: <strong>$1</strong>",
- "translate-checks-balance": "Мында жақшалардың бүкіл саны жұп емес: <strong>$1</strong>",
- "translate-checks-links": "Келесі сілтемелер жарамсыз: <strong>$1</strong>",
- "translate-checks-xhtml": "Келесі белгілемелерді дұрыстарымен алмастырыңыз: <strong>$1</strong>",
- "translate-checks-plural": "Анықталымда <nowiki>{{PLURAL:}}</nowiki> пайдаланылған, бірақ аудармада бұл жоқ.",
+ "translate-magic-words": "Сиқырлы сөздер",
+ "translate-magic-namespace": "Есім кеңістігі атаулары",
+ "translate-magic-notsaved": "Өңдемеңіз сақталмады!",
+ "translate-magic-errors": "Аудармалардан келесі {{PLURAL:$1|қатені|қателерді}} түзетініңіз:",
+ "translate-magic-saved": "Өзгертулеріңіз сақталды.",
+ "translate-checks-parameters": "Келесі {{PLURAL:$2|параметр|параметрлер}} пайдаланылмаған: \n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "Келесі {{PLURAL:$2|параметр|параметрлер}} белгісіз:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Мында {{PLURAL:$2|жақшаның|жақшалардың}} бүкіл саны жұп емес: \n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "Келесі {{PLURAL:$2|сілтеме|$2 сілтеме}} жарамсыз: \n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "Келесі {{PLURAL:$2|сілтемені|$2 сілтемені}} қажет етеді:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Келесі {{PLURAL:$2|белгіні|белгіні}} дұрыстарымен алмастырыңыз: \n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "Анықталымда <nowiki>{{PLURAL:}}</nowiki> пайдаланылған, бірақ аударма жоқ.",
+ "translate-checks-pagename": "Анықтамадан есім кеңістігі өзгертілген",
"translate-pref-nonewsletter": "Жаңалық хаттарды маған жіберме",
- "translate-pref-editassistlang-bad": "Тізімдегі жарамсыз тіл коды:\n<nowiki>$1</nowiki>.",
- "right-translate": "Аудару тілдесуін қолданып өңдеу",
+ "translate-pref-editassistlang": "Көмекші тілдер:",
+ "prefs-translate": "Аударма баптаулары",
+ "translate-pref-editassistlang-bad": "Тізімдегі дұрыс емес тіл коды:\n<nowiki>$1</nowiki>.",
+ "right-translate": "Аудару интерфесін қолданып өңдеу",
+ "right-translate-manage": "Хабарлама топтарын басқару",
+ "action-translate-manage": "хабарлама топтарын басқару",
+ "right-translate-import": "Оффлайн аудармаларды импорттау",
+ "action-translate-import": "Оффлайн аудармаларды импорттау",
+ "right-translate-messagereview": "Аудармаларды тексеру",
"translate-rc-translation-filter": "Аудармаларды сүзгілеу:",
"translate-rc-translation-filter-no": "Ештеңе істемеу",
"translate-rc-translation-filter-only": "Тек аудармаларды көрсету",
"translate-rc-translation-filter-filter": "Аудармаларды сүзгілеп тастау",
- "translate-rc-translation-filter-site": "Тек торап хабарларының өзгерістері",
- "translate-documentation-language": "Хабарлама құжаттамасы"
+ "translate-rc-translation-filter-site": "Тек сайт хабарларының өзгерістері",
+ "translationstats": "Аударма статискасы",
+ "translate-stats-edits": "Өңдемелер",
+ "translate-stats-users": "Аудармашылар",
+ "translate-stats-registrations": "Тіркеулер",
+ "translate-stats-reviews": "Тексеріп шығулар",
+ "translate-stats-reviewers": "Тексерушілер",
+ "translate-statsf-width": "Ені (пикселмен):",
+ "translate-statsf-height": "Биіктігі (пикселмен):",
+ "translate-statsf-start": "Басталу уақыты:",
+ "translate-statsf-scale-months": "Айлар",
+ "translate-statsf-scale-weeks": "Апталар",
+ "translate-statsf-scale-days": "Күндер",
+ "translate-statsf-scale-hours": "Сағаттар",
+ "translate-statsf-count": "Мән:",
+ "translate-statsf-count-edits": "Өңдеме саны",
+ "translate-statsf-count-users": "Белсенді аудармашылар",
+ "translate-statsf-count-registrations": "Жаңа қатысушылар",
+ "translate-statsf-count-reviews": "Аударма шолулары",
+ "translate-statsf-count-reviewers": "Тексерушілер",
+ "translate-statsf-submit": "Қарап шығу",
+ "translate-sidebar-alltrans": "Басқа тілдерде",
+ "translations": "Барлық аудармалар",
+ "translations-summary": "Барлық қол жетімді аудармаларды көрсету үшін төменге хабарлама атауын енгізіңіз.",
+ "translate-translations-no-message": "«$1» аударылатын хабарлама емес",
+ "translate-translations-none": "«$1» үшін аудармалар жоқ",
+ "translate-translations-count": "{{PLURAL:$1|Бір аударма|$1 аударма}} табылды.",
+ "translate-translations-fieldset-title": "Хабарлама",
+ "translate-translations-messagename": "Атауы:",
+ "translate-translations-project": "Жоба:",
+ "translate-translations-history-short": "т",
+ "languagestats": "Тіл статистикасы",
+ "messagegroupstats-summary": "Бұл бет хабарлама тобы статистикасын көрсетеді.",
+ "languagestats-stats-for": "$1 ($2) дегеннің аударма статистикасы.",
+ "languagestats-recenttranslations": "соңғы аудармалар",
+ "translate-langstats-incomplete": "Бұл беттегі кейбір статитикалар толық емес. Көбірек статистика көру үшін қайта жүктеңіз.",
+ "translate-langstats-expand": "кеңейту",
+ "translate-langstats-collapse": "жиыру",
+ "translate-langstats-expandall": "барлығын жаю",
+ "translate-langstats-collapseall": "барлығын жиыру",
+ "translate-language-code": "Тіл коды",
+ "translate-language-code-field-name": "Тіл коды:",
+ "translate-suppress-complete": "Толығымен аударылған хабарлама топтарын жасыру",
+ "translate-ls-noempty": "Толығымен аударылмаған хабарлама топтарын жасыру",
+ "translate-language": "Тіл",
+ "translate-total": "Хабарламалар",
+ "translate-untranslated": "Аударылмаған",
+ "translate-percentage-complete": "Бітіруі",
+ "translate-percentage-fuzzy": "Жаңартуды қажет етеді",
+ "translate-languagestats-overall": "Барлық хабарлама топтары бірге",
+ "translate-ls-submit": "Статистикаларды көрсету",
+ "translate-ls-column-group": "Хабарлама тобы",
+ "translate-mgs-pagename": "Хабарлама тобы статистикаслары",
+ "translate-mgs-fieldset": "Баптауларын көрсету",
+ "translate-mgs-group": "Хабарлама тобы:",
+ "translate-mgs-nocomplete": "Толықтай аударған тілдерді көрсетпеу",
+ "translate-mgs-noempty": "Ешбір аудармалары жоқ тілдерді көрсетпеу.",
+ "translate-mgs-submit": "Статистикаларды көрсету",
+ "translate-mgs-column-language": "Тіл",
+ "translate-mgs-totals": "Барлық тілдер бірге",
+ "translate-mgs-invalid-group": "Көрсетілген $1 тобы жоқ.",
+ "translate-mgs-nothing": "Сұралған статисканы көруге ештеңе жоқ.",
+ "supportedlanguages": "Қолдайтын тілдер",
+ "supportedlanguages-recenttranslations": "жуықтағы аудармалар",
+ "supportedlanguages-count": "Барлығы $1 {{PLURAL:$1|тіл|тіл}}.",
+ "translate-save": "Сақтау ($1)",
+ "translate-jssti-add": "Тізімге қосу",
+ "managemessagegroups": "Хабарлама тобы басқарылуы",
+ "translate-smg-nochanges": "Үрдісте ешбір өзгеріс жоқ.",
+ "translate-smg-left": "Уикидегі хабарлама контенті",
+ "translate-smg-right": "Келе жатқан өзгерістер",
+ "translate-manage-import-diff": "Хабарлама $1 | Әрекеттер: $2",
+ "translate-manage-import-new": "Жаңа хабарлама ($1)",
+ "translate-manage-import-deleted": "Жойылған хабарлама: $1",
+ "translate-manage-action-import": "Импорттау",
+ "translate-manage-action-ignore": "Елемеу",
+ "translate-manage-import-ok": "Импорталды: $1",
+ "translate-manage-import-done": "Импортау аяқталды!",
+ "importtranslations": "Импортталған аудармалар",
+ "translate-import-from-local": "Жергілікті файлды жүктеу:",
+ "translate-import-load": "Файлды оқу",
+ "translate-import-err-ul-failed": "Файлды жүктеу сәттіз болды",
+ "translate-import-err-invalid-title": "Көрсетілген <nowiki>$1</nowiki> файл атауы дұрыс емес.",
+ "translate-js-summary": "Түйіндемесі:",
+ "translate-js-save": "Сақтау",
+ "translate-js-next": "Сақтау жөне келесісін ашу",
+ "translate-js-skip": "Келесісіне өту",
+ "translate-js-history": "Аударма тарихы",
+ "translate-js-support": "Сұрақ қою",
+ "translate-js-support-title": "Егер бұл хабарламаны дұрысымен аудару үшін жеткілікті мәлімет болмаса көмек сұрау.",
+ "translate-js-support-unsaved-warning": "Сізде сақталмаған аудармаларыңыз бар.",
+ "translate-gs-pos": "Орын",
+ "translate-gs-code": "Код",
+ "translate-gs-continent": "Құрлық",
+ "translate-gs-speakers": "Сөйлеушілер",
+ "translate-gs-score": "Есеп",
+ "translate-gs-multiple": "Көбейту",
+ "translate-gs-count": "Санау",
+ "translate-gs-total": "Барлығы",
+ "translate-gs-avgscore": "Орташа есеп",
+ "translate-documentation-language": "Хабарлама құжаттамасы",
+ "translate-searchprofile": "Аудармалар",
+ "translate-searchprofile-tooltip": "Барлық аудармалардан іздеу",
+ "translate-search-languagefilter": "Тілі бойынша сүзгілеу:",
+ "translate-search-nofilter": "Сүзгілеу жоқ",
+ "log-name-translationreview": "Аударманы тексеру журналы",
+ "log-description-translationreview": "Хабарлама топтары және барлық аудармаларды тексеру журналы.",
+ "logentry-translationreview-message": "$1 $3 аудармасын {{GENDER:$2|тексерді}}",
+ "group-translate-sandboxed": "Бекітілмеген аудармашылар",
+ "group-translate-sandboxed-member": "{{GENDER:$1|бекітілмеген аудармашылар}}",
+ "translate-dynagroup-recent-label": "Соңғы аудармалар",
+ "translate-dynagroup-additions-label": "Соңғы қосылғандар",
+ "translate-dynagroup-additions-desc": "Бұл хабарлама тобы жаңа және өзгертілген хабарламаларды көрсетуде",
+ "translate-msggroupselector-projects": "Хабарлама тобы",
+ "translate-msggroupselector-search-placeholder": "Топтарды іздеу",
+ "translate-msggroupselector-search-all": "Барлығы",
+ "translate-msggroupselector-search-recent": "Соңғы",
+ "translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|ішкі тобы|ішкі тобы}}",
+ "tux-languageselector": "Мына тілге аудару:",
+ "tux-tab-all": "Барлығы",
+ "tux-tab-untranslated": "Аударылмаған",
+ "tux-tab-outdated": "Жаңартуды қажет етеді",
+ "tux-tab-translated": "Аударылған",
+ "tux-tab-unproofread": "Тексерілмеген",
+ "tux-edit": "Өңдеу",
+ "tux-status-optional": "Міндетті емес",
+ "tux-status-fuzzy": "Жаңартуды қажет етеді",
+ "tux-status-proofread": "Тексерілген",
+ "tux-status-translated": "Аударылған",
+ "tux-status-saving": "Сақталып жатыр...",
+ "tux-status-unsaved": "Сақталмады",
+ "tux-save-unknown-error": "Белгісіз қате кездесті.",
+ "tux-editor-placeholder": "Сіздің аудармаңыз",
+ "tux-editor-editsummary-placeholder": "Түйіндемесін жазыңыз...",
+ "tux-editor-paste-original-button-label": "Қайнар мәтінін қою",
+ "tux-editor-discard-changes-button-label": "Өзгерістерді болдырмау",
+ "tux-editor-save-button-label": "Аударманы сақтау",
+ "tux-editor-skip-button-label": "Келесісіне өту",
+ "tux-editor-cancel-button-label": "Қажет емес",
+ "tux-editor-confirm-button-label": "Аударманы құптау",
+ "tux-editor-proofread-button-label": "Тексерілген деп белгілеу",
+ "tux-editor-shortcut-info": "Сақтау үшін «$1» немесе келесі хабарламаға өту үшін «$2» немесе «$3» басқа пернелер тіркесімін басыңыз.",
+ "tux-editor-edit-desc": "Құжаттаманы өңдеу",
+ "tux-editor-add-desc": "Құжаттаманы қосу",
+ "tux-editor-suggestions-title": "Ұсыныстар",
+ "tux-editor-in-other-languages": "Басқа тілдерде",
+ "tux-editor-need-more-help": "Басқада көмек қажет пе?",
+ "tux-editor-ask-help": "Көбірек мәлімет сұрау",
+ "tux-editor-tm-match": "$1% сай келеді",
+ "tux-warnings-more": "{{PLURAL:$1|$1 көбірек}}",
+ "tux-warnings-hide": "жасыру",
+ "tux-editor-save-failed": "Аударманы сақтау сәтсіз болды: $1",
+ "tux-editor-n-uses": " $1 {{PLURAL:$1|рет|рет}} қолданған",
+ "tux-editor-message-desc-more": "Көбірек қарау",
+ "tux-editor-message-desc-less": "Азырақ қарау",
+ "tux-editor-clear-translated": "Аударылғандарды жасыру",
+ "tux-editor-proofreading-mode": "Тексеру",
+ "tux-editor-translate-mode": "Тізім",
+ "tux-editor-proofreading-hide-own-translations": "Аударғандарымды жасыр",
+ "tux-editor-proofreading-show-own-translations": "Аударғандарымды көрсету",
+ "tux-proofread-action-tooltip": "Тексерілген деп белгілеу",
+ "tux-proofread-edit-label": "Өңдеу",
+ "tux-editor-page-mode": "Бет",
+ "tux-editor-outdated-warning": "Бұл аударма жаңартуды қажет етеді.",
+ "tux-editor-outdated-warning-diff-link": "Айырмашылығын көрсету",
+ "tux-editor-doc-editor-placeholder": "Хабарлама құжаттамасы",
+ "tux-editor-doc-editor-save": "Құжаттаманы сақтау",
+ "tux-editor-doc-editor-cancel": "Болдырмау",
+ "tux-messagetable-more-messages": "Көбірек $1 {{PLURAL:$1|хабарлама|хабарлама}}",
+ "tux-messagetable-loading-messages": "{{PLURAL:$1|Хабарлама|Хабарламалар}} оқылып жатыр...",
+ "tux-message-filter-placeholder": "Тізімді сүзгілеу",
+ "tux-message-filter-result": "«$2» деген іздеу сұранысына $1 {{PLURAL:$1|нәтиже|нәтиже}} табылды",
+ "tux-message-filter-advanced-button": "Кеңейтілген іздеу",
+ "tux-message-filter-optional-messages-label": "Міндетті емес хабарламалар",
+ "tux-proofread-translated-by-self": "Сіз аудардыңыз",
+ "tux-empty-list-all": "Бұл хабарлама тобы бос",
+ "tux-empty-list-all-guide": "Аударуға басқа хабарлама тобын таңдау",
+ "tux-translate-page-no-such-group": "<strong>Көрсетілген топ жоқ.</strong> Басқа хабарлама тобын таңдаңыз.",
+ "tux-empty-list-translated": "Аударылған хабарлама жоқ",
+ "tux-empty-list-translated-guide": "Аударуға көмектесе аласыз",
+ "tux-empty-list-translated-action": "Аудару",
+ "tux-empty-no-messages-to-display": "Көрсетуге хабрлама жоқ.",
+ "tux-empty-there-are-optional": "Тізімде міндетті хабарламалар көрсетілмеген",
+ "tux-empty-show-optional-messages": "Қосымша хабарларды көрсету",
+ "tux-empty-no-outdated-messages": "Жаңартуды қажет ететін хабарламалар жоқ",
+ "tux-empty-nothing-to-proofread": "Тексеріп шығуға еш хабарлама жоқ",
+ "tux-empty-you-can-help-providing": "Сіз жаңа аудармалармен қамтамасыз етуге көмектесе аласыз",
+ "tux-empty-nothing-new-to-proofread": "Тексеріп шығуға ешбір хабарлама жоқ",
+ "tux-empty-you-can-review-already-proofread": "Әлдеқашан басқа қатысушылар тексерген аудармаларды тексере аласыз.",
+ "tux-empty-list-other": "Аударатын ештеңе жоқ",
+ "tux-empty-list-other-guide": "Сіз бар аудармаларды тексеруге көмектесе аласыз",
+ "tux-empty-list-other-action": "Аудармаларды тексеру",
+ "tux-empty-list-other-link": "Барлық хабарламаларды көрсету",
+ "tux-editor-close-tooltip": "Жабу",
+ "tux-editor-expand-tooltip": "Кеңейту",
+ "tux-editor-collapse-tooltip": "Жиыру",
+ "tux-editor-message-tools-show-editor": "Уикиедиторда көрсету",
+ "tux-editor-message-tools-history": "Тарихы",
+ "tux-editor-message-tools-delete": "Жою",
+ "tux-editor-message-tools-translations": "Барлық аудармалар",
+ "tux-editor-loading": "Оқып жатыр…",
+ "translate-search-more-languages-info": "Көбірек $1 {{PLURAL:$1|тіл|тіл}}",
+ "translate-statsbar-tooltip": "$1% аударылған, $2% тексерілген",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% аударылған, $2% тексерілген, $3% жаңартуды қажет етеді",
+ "translate-search-more-groups-info": "Көбірек $1 {{PLURAL:$1|топ|топ}}:",
+ "translate-ulsdep-title": "Ішқұрылым қатесі",
+ "tux-nojs": "Бұл бет JavaScript керек етеді."
}
diff --git a/MLEB/Translate/i18n/core/kk-kz.json b/MLEB/Translate/i18n/core/kk-kz.json
index ede812c4..9d0a21b0 100644
--- a/MLEB/Translate/i18n/core/kk-kz.json
+++ b/MLEB/Translate/i18n/core/kk-kz.json
@@ -1,7 +1,8 @@
{
"@metadata": {
"authors": [
- "AlefZet"
+ "AlefZet",
+ "Arystanbek"
]
},
"translate": "Аудару",
@@ -18,7 +19,7 @@
"translate-magic-cm-to-be": "Болуға тиісті",
"translate-magic-cm-current": "Ағымдағы",
"translate-magic-cm-original": "Түпнұсқасы",
- "translate-magic-cm-save": "Сақта!",
+ "translate-magic-cm-save": "Сақтау",
"translate-magic-cm-updatedusing": "[[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]] дегенді қолданып сақталған",
"translate-magic-cm-savefailed": "Сақтау сәтсіз болды",
"translate-magic-special": "Арнайы бет бүркемелері",
diff --git a/MLEB/Translate/i18n/core/kk-latn.json b/MLEB/Translate/i18n/core/kk-latn.json
index c363cacf..a3bd457d 100644
--- a/MLEB/Translate/i18n/core/kk-latn.json
+++ b/MLEB/Translate/i18n/core/kk-latn.json
@@ -29,7 +29,6 @@
"translate-edit-no-information": "''Bul xabar qujattamasız. Eger osı xabardıñ qaýda nemese qalaý qoldanğanın bilseñiz, bul xabarğa qujattama keltirip, basqa awdarwşılarğa kömektese alasız.''",
"translate-edit-information": "Bul xabar twralı mälimet ($1)",
"translate-edit-in-other-languages": "Xabar basqa tilderde",
- "translate-edit-committed": "Bağdarlamadağı ağımdıq awdarma",
"translate-edit-warnings": "Tolıq awdarılmağan xabarlar twralı añğartpalar",
"translate-magic-pagename": "Keñeýtilgen MediaWiki awdarwı",
"translate-magic-help": "Arnaýı bet bürkemelerin, sïqırlı sözderin, bezendirw mäner atawların jäne esim aya atawların awdara alasız.\n\nSïqırlı sözderde ağılşınşa nusqasın kirgizwiñiz jön, äýtpese qızmeti toqtaladı. Tağı da birinşi babın (0 ne 1) ärdaýım qaldırıñız.\n\nArnaýı bet bürkemelerinde jäne sïqırlı sözderinde birneşe awdarma bolwı mümkin. Awdarmalar ütirmen (,) böliktenedi. Bezendirw mäner jäne esim aya atawlarında tek bir awdarma bolwı tïis.\n\nEsim aya awdarmalarında <code>$1_talk</code> degen arnaýı keltiriledi. <code>$1</code> degen aýnalmalı özdiktik torap atawımen almastırıladı (mısalı, <code>{{SITENAME}} talqılawı</code>). Eger sizdiñ tiliñizde torap atawın özgertpeý durıs söýlem qurılmasa, damıtwşılarğa xabarlasıñız.",
diff --git a/MLEB/Translate/i18n/core/km.json b/MLEB/Translate/i18n/core/km.json
index 893a5ad5..8d9898bd 100644
--- a/MLEB/Translate/i18n/core/km.json
+++ b/MLEB/Translate/i18n/core/km.json
@@ -6,20 +6,16 @@
"Thearith",
"គីមស៊្រុន",
"វ័ណថារិទ្ធ",
- "Sovichet"
+ "Sovichet",
+ "Aefgh39622"
]
},
"translate": "បកប្រែ",
"translate-desc": "[[Special:Translate|ទំព័រ​ពិសេស]] សម្រាប់ប្រែសម្រួល​មេឌាវិគី​ និង របស់​ផ្សេងទៀត",
- "translate-taskui-view": "បង្ហាញសារទាំងអស់",
- "translate-taskui-untranslated": "បង្ហាញសារដែលមិនទាន់បកប្រែ",
- "translate-taskui-optional": "បង្ហាញសារមិនសូវចាំបាច់អោយបកប្រែ",
- "translate-taskui-acceptqueue": "តែ​សារ​ទាំង​ឡាយ​ណា​ដែល​ខ្ញុំ​បញ្ជាក់​ថា​បាន​ពិនិត្យ​រួច",
- "translate-taskui-reviewall": "ផ្ទៀងផ្ទាត់ការបកប្រែទាំងអស់",
- "translate-taskui-export-to-file": "នាំចេញជាទំរង់ដើម",
- "translate-taskui-export-as-po": "នាំចេញសំរាប់ធ្វើការបកប្រែក្រៅបណ្ដាញ",
+ "translate-taskui-export-to-file": "នាំចេញជាទម្រង់ដើម",
+ "translate-taskui-export-as-po": "នាំចេញសម្រាប់ធ្វើការបកប្រែក្រៅបណ្ដាញ",
"translate-taction-translate": "បកប្រែ",
- "translate-taction-proofread": "ពិនិត្យ​មើល",
+ "translate-taction-proofread": "ផ្ទៀងផ្ទាត់ឡើងវិញ",
"translate-taction-lstats": "ស្ថិតិ​ភាសា",
"translate-taction-mstats": "ស្ថិតិក្រុមសារ",
"translate-taction-export": "នាំចេញ​",
@@ -44,7 +40,6 @@
"translate-page-description-hasoptional": "ក្រុមសារនេះមានផ្ទុកសារដែលមិនសូវចាំបាច់អោយបកប្រែ។\nសារដែលមិនសូវចាំបាច់អោយបកប្រែគួរតែបកប្រែតែពេលណាត្រូវការអោយសរសេរជាពិសេសក្នុងភាសារបស់អ្នក ដូចជាការមិនប្រើចន្លោះដកឃ្លា ឬការសរសេរអោយត្រូវតាមតួអក្សរបានត្រឹមត្រូវ។ $1",
"translate-page-description-hasoptional-open": "បង្ហាញសារមិនសូវចាំបាច់អោយបកប្រែ",
"translate-page-edit": "កែប្រែ",
- "translate-ext-url": "<hr />វិបសាយ៖ $1",
"translate-optional": "(ជម្រើស)",
"translate-ignored": "(បានបោះបង់)",
"translate-edit-title": "កែប្រែ \"$1\"",
@@ -54,20 +49,21 @@
"translate-edit-no-information": "<em>សារ​នេះ​មិន​មាន​ព័ត៌មាន​បន្ថែម​ទេ​។\nប្រសិនបើ​អ្នក​ដឹង​ពី​ទីកន្លែង និង​របៀប​ប្រើប្រាស់​សារ​នេះ អ្នក​អាច​ជួយ​អ្នក​បកប្រែ​ផ្សេងទៀត​តាមរយៈ​ការ​ដាក់​បន្ថែម​ព័ត៌មាន​ទាំងនោះ​មក​ឱ្យ​សារ​នេះ​។</em>",
"translate-edit-information": "ព័ត៌មាន​អំពី​សារ ($1)",
"translate-edit-in-other-languages": "សារជាភាសា​ដទៃទៀត",
- "translate-edit-committed": "បទប្រែសម្រួល​បច្ចុប្បន្ន​ក្នុងផ្នែកទន់",
"translate-edit-warnings": "ការព្រមាន​អំពី​បទប្រែសម្រួលមិនពេញលេញ",
- "translate-edit-tmsugs": "សំនើពីឃ្លាំងផ្ទុកការបកប្រែ",
"translate-edit-tmmatch-source": "ការ​បក​ប្រែ​ប្រភព​អត្ថបទ៖ $1",
"translate-edit-tmmatch": "ត្រូវគ្នា $1%",
"translate-use-suggestion": "ជំនួសការបកប្រែបច្ចុប្បន្នដោយសំណើបកប្រែនេះ។",
"translate-edit-nopermission": "អ្នក​ត្រូវ​ការ​សិទ្ធិ​បក​ប្រែ ដើម្បី​បក​ប្រែ​សារ។",
"translate-edit-askpermission": "សុំ​ការ​អនុញ្ញាត",
+ "exporttranslations": "នាំចេញការបកប្រែ",
+ "translate-export-form-format": "ទម្រង់",
+ "translate-export-invalid-format": "សូមផ្ដល់ទម្រង់ត្រឹមត្រូវមួយ។",
"translate-magic-pagename": "ការបកប្រែ​មេឌាវិគី​បន្ថែម",
"translate-magic-help": "អ្នកអាចធ្វើការបកប្រែឈ្មោះក្លាយរបស់ទំព័រពិសេសៗ សិល្ប៍ស័ព្ទ និងឈ្មោះនៃលំហឈ្មោះ។\n\n\nឈ្មោះក្លាយរបស់ទំព័រពិសេសៗ​និង​សិល្ប៍ស័ព្ទ​អាចមានបទប្រែសំរួលច្រើន។\nបទប្រែសំរួលទាំងនោះច្រូវខណ្ឌចែកពីគ្នាដោយសញ្ញាក្បៀស (,)។\nលំហឈ្មោះអាចមានបទប្រែសំរួលតែមួយប៉ុណ្ណោះ ។\n\n\nក្នុងការបកប្រែលំហឈ្មោះ <code>ការពិភាក្សាអំពី $1</code> ជាករណីពិសេស។ <code>$1</code> ត្រូវបានជំនួសដោយឈ្មោះវិបសាយ (ឧទាហរណ៍៖ <code>{{ns:project_talk}}</code>)។\nប្រសិនបើ​ភាសារបស់អ្នក​មិនបានបង្ហាញត្រឹមត្រូវដោយមិនប្តូរឈ្មោះវិបសាយទេ សូមទាក់ទងអ្នកអភិវឌ្ឍ (អ្នករចនាវិបសាយ)។\n\n\nអ្នកចាំបាច់ត្រូវតែស្ថិតក្នុងក្រុមអ្នកប្រែសម្រួល ទើបអាចរក្សាទុកបំលាស់ប្តូរបាន។\nបំលាស់ប្តូរនឹងមិនត្រូវបានរក្សាទុកទេ​លើកលែងតែអ្នកបានចុចប៊ូតុង​រក្សាទំព័រទុក​នៅខាងក្រោម ។",
"translate-magic-module": "ម៉ូឌុល៖",
"translate-magic-submit": "នាំមក​បង្ហាញ",
"translate-magic-cm-export": "នាំចេញ",
- "translate-magic-nothing-to-export": "គ្មានអ្វីសំរាប់នាំចេញទេ។",
+ "translate-magic-nothing-to-export": "គ្មានអ្វីសម្រាប់នាំចេញទេ។",
"translate-magic-cm-to-be": "ទៅជា",
"translate-magic-cm-current": "បច្ចុប្បន្ន",
"translate-magic-cm-original": "ដើម",
@@ -80,26 +76,31 @@
"translate-magic-namespace": "ឈ្មោះនៃលំហឈ្មោះ",
"translate-magic-notsaved": "កំណែប្រែរបស់អ្នកមិនត្រូវបានរក្សាទុកទេ!",
"translate-magic-errors": "សូមកែប្រែ{{PLURAL:$1|កំហុសឆ្គង|កំហុសឆ្គង}}ទាំងនេះ ដែលមានក្នុងការកែប្រែ៖",
- "translate-magic-saved": "ការកែប្រែរបស់អ្នក​ត្រូវបានរក្សាទុកដោយជោគជ័យ។",
+ "translate-magic-saved": "បន្លាស់ប្ដូររបស់អ្នក​ត្រូវបានរក្សាទុក។",
"translate-checks-parameters": "{{PLURAL:$2|ប៉ារ៉ាម៉ែត្រ|ប៉ារ៉ាម៉ែត្រ}}ខាងក្រោមនេះមិនត្រូវបានគេប្រើទេ៖\n\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-parameters-unknown": "{{PLURAL:$2|parameter is|ប៉ារ៉ាម៉ែត្រ}}ខាងក្រោមនេះមិនត្រូវបានស្គាល់ទេ៖\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-balance": "មាន{{PLURAL:$2|វង់ក្រចក|វង់ក្រចក}}​ដែលមិន​មាន​គូ៖\n\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-links": "{{PLURAL:$2|តំណភ្ជាប់|តំណភ្ជាប់}}ខាងក្រោមនេះ​មានបញ្ហា៖ <strong><nowiki>$1</nowiki></strong>",
"translate-checks-links-missing": "Following {{PLURAL:$2|តំណភ្ជាប់|តំណភ្ជាប់ចំនួន $2}} ខាងក្រោមនេះបាត់៖\n<strong><nowiki>$1</nowiki></strong>",
- "translate-checks-xhtml": "សូម​ជំនួស​{{PLURAL:$2|tag|ប្លាក}}​ខាងក្រោមដោយប្លាកដែលត្រឹមត្រូវ៖\n\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "សូម​ជំនួស​{{PLURAL:$2|tag|ស្លាក}}​ខាងក្រោមដោយស្លាកដែលត្រឹមត្រូវ៖\n\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-plural": "និយមន័យ​ប្រើប្រាស់ <nowiki>{{PLURAL:}}</nowiki> ប៉ុន្តែ​បទប្រែសម្រួល​មិនមាន ។",
"translate-checks-pagename": "លំហឈ្មោះ​ត្រូវ​បាន​ផ្លាស់ប្ដូរ​ពី​និយមន័យ",
"translate-checks-format": "ការបកប្រែនេះមិនគោរពតាមនិយមន័យឬមានវេយ្យាករណ៍មិនត្រឹមត្រូវ៖ $1",
"translate-checks-fudforum-syntax": "ប្រើ <nowiki>$1</nowiki> ជំនួសអោយ <nowiki>$2</nowiki> នៅក្នុងគំរោងនេះ។",
"translate-pref-nonewsletter": "កុំផ្ញើអ៊ីមែលព្រឹត្តិប័ត្រសារព័ត៌មានមកខ្ញុំអី",
"translate-pref-editassistlang": "ភាសាជំនួយ៖",
- "prefs-translate": "ជំរើសទាក់ទិននឹងការបកប្រែ",
+ "prefs-translate": "ជម្រើសទាក់ទិននឹងការបកប្រែ",
"translate-pref-editassistlang-help": "បញ្ជីកូដភាសាខណ្ឌចែកដោយសញ្ញាក្បៀស។\nការបកប្រែសារមួយនៅក្នុងភាសាទាំងនេះ ត្រូវបានបង្ហាញពេលដែលអ្នកកំពុងបកប្រែ។\nបញ្ចីភាសាតាមលំនាំដើម អាស្រ័យលើភាសារបស់អ្នក។",
"translate-pref-editassistlang-bad": "កូដភាសាមិនត្រឹមត្រូវនៅក្នុងបញ្ជីនេះ៖\n<nowiki>$1</nowiki>។",
"right-translate": "កែប្រែដោយប្រើអន្តរមុខបកប្រែ",
- "right-translate-manage": "គ្រប់គ្រងក្រុមសារ",
+ "right-translate-manage": "ចាត់ចែងក្រុមសារ",
+ "action-translate-manage": "ចាត់ចែងក្រុមសារ",
"right-translate-import": "នាំចូលការបកប្រែក្រៅបណ្ដាញ",
"action-translate-import": "នាំចូលការបកប្រែក្រៅបណ្ដាញ",
+ "right-translate-messagereview": "ផ្ទៀងផ្ទាត់ការបកប្រែ",
+ "action-translate-messagereview": "ផ្ទៀងផ្ទាត់ការបកប្រែ",
+ "translate-rcfilters-translations": "ការបកប្រែ",
+ "translate-rcfilters-translations-only-label": "ការបកប្រែ",
"translate-rc-translation-filter": "ការបកប្រែតម្រង៖",
"translate-rc-translation-filter-no": "កុំធ្វើអ្វីទាំងអស់",
"translate-rc-translation-filter-only": "បង្ហាញតែការបកប្រែប៉ុណ្ណោះ",
@@ -109,6 +110,8 @@
"translate-stats-edits": "ចំនួនកំណែប្រែក្នុងមួយថ្ងៃ",
"translate-stats-users": "អ្នកបកប្រែ",
"translate-stats-registrations": "ការចុះឈ្មោះ",
+ "translate-stats-reviews": "ពិនិត្យ​ឡើងវិញ",
+ "translate-stats-reviewers": "អ្នកពិនិត្យឡើងវិញ",
"translate-statsf-intro": "អ្នកអាចបង្កើតស្ថិតិសាមញ្ញដោយប្រើទំរង់បែបបទនេះ។ គ្រប់តំលៃលេខមានតំលៃកំហិតលើនិងក្រោម។",
"translate-statsf-options": "ជម្រើស​ក្រាហ្វិក",
"translate-statsf-width": "ទទឹងគិតជាភីកសែល:",
@@ -129,8 +132,7 @@
"translate-statsf-language": "ចុល្លភាគ (,)-បាន​ខណ្ឌ​ចែក​បញ្ជី​កូដ​ភាសា",
"translate-statsf-group": "ចុល្លភាគ (,)-បាន​ខណ្ឌ​ចែក​បញ្ជី​កូដ​ក្រុម",
"translate-statsf-submit": "ការមើលមុន",
- "translate-tag-category": "ទំព័រដែលអាចបកប្រែបាន",
- "translate-tag-page-desc": "ការបកប្រែរបស់ទំព័រវិគី [[$2|$1]]។",
+ "translate-tag-page-desc": "ការបកប្រែរបស់ទំព័រវិគី [[$2|$1]] ពី $3 ($4)។",
"translate-sidebar-alltrans": "ជាភាសាដទៃទៀត",
"translations": "បំណកប្រែទាំងអស់",
"translations-summary": "បញ្ចូល​ឈ្មោះ​សារ​ខាងក្រោម ដើម្បី​បង្ហាញ​គ្រប់​សារ​ទាំងអស់​ដែល​អាច​ប្រែសម្រួល​បាន​។",
@@ -144,6 +146,7 @@
"translate-translations-history-short": "ប",
"languagestats": "ស្ថិតិ​ភាសា",
"languagestats-summary": "ទំព័រ​នេះ​បង្ហាញ​ស្ថិតិ​នៃ​ការប្រែសម្រួល​​គ្រប់ក្រុម​សារ​ទាំងអស់​សម្រាប់​ភាសា​មួយ​។",
+ "messagegroupstats-summary": "ទំព័រនេះបង្ហាញស្ថិតិក្រុមសារ។",
"languagestats-stats-for": "ស្ថិតិបកប្រែសំរាប់ $1 ($2)។",
"languagestats-recenttranslations": "ការបកប្រែនាពេលថ្មីៗ",
"translate-langstats-incomplete": "ស្ថិតិខ្លះនៅលើទំព័រនេះមិនពេញលេញទេ។ សូមផ្ទុកជាថ្មីដើម្បីទទួលបានស្ថិតិបន្ថែមទៀត។",
@@ -156,18 +159,27 @@
"translate-suppress-complete": "លាក់ក្រុមសារដែលបានបកប្រែទាំងស្រុងហើយ",
"translate-ls-noempty": "លាក់ក្រុមសារដែលមិនទាន់មានការបកប្រែសោះ",
"translate-language": "ភាសា",
- "translate-total": "សារផ្សេងៗ",
+ "translate-total": "ចំនួនសារ",
"translate-untranslated": "មិនទាន់បកប្រែ",
- "translate-percentage-complete": "ជាស្ថាពរ",
+ "translate-percentage-complete": "បកប្រែរួច",
"translate-percentage-fuzzy": "ហួសសម័យ",
- "translate-languagestats-overall": "ក្រុមសារទាំងអស់ជាមួយគ្នា",
+ "translate-languagestats-overall": "សារទាំងអស់រួមគ្នា",
"translate-ls-submit": "បង្ហាញស្ថិតិ",
"translate-ls-column-group": "ក្រុមសារ",
"translate-mgs-pagename": "ស្ថិតិក្រុមសារ",
"translate-mgs-fieldset": "ចំណង់ចំណូលចិត្តសំរាប់ការបង្ហាញ​",
+ "translate-mgs-group": "ក្រុមសារ៖",
+ "translate-mgs-nocomplete": "កុំបង្ហាញភាសាដែលបានបញ្ចប់ការបកប្រែ",
+ "translate-mgs-noempty": "កុំបង្ហាញភាសាដែលគ្មានការបកប្រែ",
+ "translate-mgs-submit": "បង្ហាញស្ថិតិ",
+ "translate-mgs-column-language": "ភាសា",
+ "translate-mgs-totals": "$1 {{PLURAL:$1|ភាសា|ភាសា}}សរុបទាំងអស់",
"supportedlanguages": "ភាសាដែលអាចប្រើបាន",
- "supportedlanguages-translators": "{{PLURAL:$2|អ្នកបកប្រែ|អ្នកបកប្រែ}}៖ $1",
+ "supportedlanguages-summary": "ទំព័រនេះបង្ហាញបញ្ជីភាសាទាំងអស់ដែលគាំទ្រដោយ {{SITENAME}} រួមជាមួួយឈ្មោះអ្នកបកប្រែដែលកំពុងធ្វើការលើភាសានោះ។ ឈ្មោះអ្នកបកប្រែឃើញកាន់តែធំ មានន័យថាអ្នកប្រើប្រាស់នោះបានរួមចំណែកកែប្រែកាន់តែច្រើន។ ពណ៌បន្ទាត់គូសពីក្រោមបង្ហាញពីភាពសកម្មរបស់អ្នកបកប្រែនាពេលថ្មីៗនេះ។",
+ "supportedlanguages-colorlegend": "អត្ថន័យពណ៌៖ ការបកប្រែចុងក្រោយ $1 ថ្ងៃមុន។",
+ "supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|អ្នកបកប្រែ}}|អ្នកបកប្រែ}}៖ $1",
"supportedlanguages-recenttranslations": "ការបកប្រែនាពេលថ្មីៗ",
+ "supportedlanguages-count": "$1 {{PLURAL:$1|ភាសា|ភាសា}}ទាំងអស់",
"translate-save": "រក្សាទុក ($1)",
"translate-jssti-add": "បន្ថែមទៅក្នុង​បញ្ជី​",
"managemessagegroups": "ការគ្រប់គ្រងក្រុមសារ",
@@ -180,14 +192,14 @@
"importtranslations": "នាំចូល​ការបកប្រែ​",
"translate-import-load": "ផ្ទុក​ឯកសារ​",
"translate-import-err-ul-failed": "ការផ្ទុក​ឡើង​នៃឯកសារ​ មិនបានជោគជ័យ​",
+ "translate-js-summary": "ចំណារពន្យល់៖",
"translate-js-save": "រក្សាទុក",
"translate-js-next": "រក្សាទុករួចបើកសារបន្ទាប់",
- "translate-js-nonext": "នេះជាសារចុងក្រោយគេនៅលើទំព័រនេះ",
"translate-js-skip": "រំលងទៅកាន់សារបន្ទាប់",
- "translate-js-save-failed": "ការរក្សាទុកបានបរាជ័រ។ សូមរាយការណ៍អំពីបញ្ហានេះ។",
"translate-js-history": "ប្រវត្តិនៃការបកប្រែ",
"translate-js-support": "សួរសំណួរ",
"translate-js-support-title": "សួររកជំនួយប្រសិនបើគ្មានព័ត៌មានគ្រប់គ្រាន់សំរាប់ជួយអោយអ្នកបកប្រើសារនេះបានត្រឹមត្រូវទេ។",
+ "translate-js-support-unsaved-warning": "អ្នកមានការបកប្រែដែលមិនទាន់បានរក្សាទុក។",
"translate-gs-pos": "ទីតាំង",
"translate-gs-code": "កូដ",
"translate-gs-continent": "ទ្វីប",
@@ -196,5 +208,94 @@
"translate-gs-multiple": "ច្រើនទ្វីប",
"translate-gs-count": "ចំនួន",
"translate-gs-total": "សរុប",
- "translate-gs-avgscore": "ពិន្ទុមធ្យម"
+ "translate-gs-avgscore": "ពិន្ទុមធ្យម",
+ "translate-documentation-language": "សេចក្ដីពន្យល់អំពីសារ",
+ "translate-searchprofile": "ការបកប្រែ",
+ "translate-searchprofile-tooltip": "ស្វែងរកពីក្នុងការបកប្រែទាំងអស់",
+ "translate-search-languagefilter": "ចម្រោះតាមភាសា៖",
+ "translate-search-nofilter": "បង្ហាញទាំងអស់",
+ "translate-msggroupselector-projects": "ក្រុមសារ",
+ "translate-msggroupselector-search-placeholder": "ស្វែងរកក្រុម",
+ "translate-msggroupselector-search-all": "ទាំង​អស់",
+ "translate-msggroupselector-search-recent": "ថ្មីៗ",
+ "tux-languageselector": "បកប្រែជា",
+ "tux-tab-all": "ទាំងអស់",
+ "tux-tab-untranslated": "មិនទាន់បកប្រែ",
+ "tux-tab-outdated": "ហួសសម័យ",
+ "tux-tab-translated": "បកប្រែរួច",
+ "tux-tab-unproofread": "មិនទាន់ផ្ទៀងផ្ទាត់",
+ "tux-edit": "កែប្រែ",
+ "tux-status-optional": "បកប្រែក៏បានមិនបកប្រែក៏បាន",
+ "tux-status-fuzzy": "ហួសសម័យ",
+ "tux-status-proofread": "ផ្ទៀងផ្ទាត់រួច",
+ "tux-status-translated": "បកប្រែរួច",
+ "tux-status-saving": "កំពុងរក្សាទុក",
+ "tux-status-unsaved": "មិនទាន់រក្សាទុក",
+ "tux-editor-placeholder": "ការបកប្រែរបស់អ្នក",
+ "tux-editor-editsummary-placeholder": "ចំណារពន្យល់ (ដាក់ក៏បានមិនដាក់ក៏បាន)",
+ "tux-editor-paste-original-button-label": "បិតចម្លងឃ្លាដើម",
+ "tux-editor-discard-changes-button-label": "បោះបង់ការកែប្រែ",
+ "tux-editor-save-button-label": "រក្សាទុកការបកប្រែ",
+ "tux-editor-skip-button-label": "រំលងទៅកាន់សារបន្ទាប់",
+ "tux-editor-cancel-button-label": "បោះបង់",
+ "tux-editor-confirm-button-label": "បញ្ជាក់ការបកប្រែ",
+ "tux-editor-shortcut-info": "ចុច \"$1\" ដើម្បីរក្សាទុកឬក៏ \"$2\" ដើម្បីរំលងទៅសារបន្ទាប់ឬក៏ \"$3\" សម្រាប់ច្នុចកាត់ផ្សេងទៀត។",
+ "tux-editor-edit-desc": "កែប្រែសេចក្ដីពន្យល់",
+ "tux-editor-add-desc": "បន្ថែមសេចក្ដីពន្យល់",
+ "tux-editor-suggestions-title": "សំណើ",
+ "tux-editor-in-other-languages": "ជាភាសាដទៃទៀត",
+ "tux-editor-need-more-help": "ត្រូវការជំនួយបន្ថែមទៀតទេ?",
+ "tux-editor-ask-help": "សួររកព័ត៌មានបន្ថែម",
+ "tux-editor-tm-match": "ត្រូវគ្នា $1%",
+ "tux-warnings-more": "{{PLURAL:$1|$1 បន្ថែម}}",
+ "tux-warnings-hide": "លាក់",
+ "tux-editor-save-failed": "រក្សាទុកការបកប្រែមិនបានសម្រេច៖ $1",
+ "tux-editor-n-uses": "ត្រូវបានប្រើប្រាស់ $1 {{PLURAL:$1|ដង|ដង}}",
+ "tux-editor-message-desc-more": "មើលច្រើន",
+ "tux-editor-message-desc-less": "មើលតិច",
+ "tux-editor-clear-translated": "លាក់សារដែលបកប្រែរួច",
+ "tux-editor-proofreading-mode": "ផ្ទៀងផ្ទាត់",
+ "tux-editor-translate-mode": "បញ្ជី",
+ "tux-editor-proofreading-hide-own-translations": "លាក់ការបកប្រែរបស់អ្នក",
+ "tux-editor-proofreading-show-own-translations": "បង្ហាញការបកប្រែរបស់អ្នក",
+ "tux-proofread-action-tooltip": "កត់ចំណាំថាបានផ្ទៀងផ្ទាត់រួច",
+ "tux-proofread-edit-label": "កែប្រែ",
+ "tux-editor-page-mode": "ទំព័រ",
+ "tux-editor-outdated-warning": "ការបកប្រែប្រហែលជាត្រូវការអោយបន្ទាន់សម័យ។",
+ "tux-editor-outdated-warning-diff-link": "បង្ហាញភាពខុសគ្នា",
+ "tux-editor-doc-editor-placeholder": "សេចក្ដីពន្យល់អំពីសារ",
+ "tux-editor-doc-editor-save": "រក្សាទុកសេចក្ដីពន្យល់",
+ "tux-editor-doc-editor-cancel": "បោះបង់",
+ "tux-messagetable-more-messages": "$1 {{PLURAL:$1|សារ|សារ}}បន្ថែម",
+ "tux-messagetable-loading-messages": "កំពុងផ្ទុក {{PLURAL:$1|សារ|សារ}}...",
+ "tux-message-filter-placeholder": "ចម្រោះបញ្ជី",
+ "tux-message-filter-result": "រកឃើញ $1 {{PLURAL:$1|លទ្ធផល|លទ្ធផល}} សម្រាប់ \"$2\"",
+ "tux-message-filter-advanced-button": "ស្វែងរកថ្នាក់ខ្ពស់",
+ "tux-message-filter-optional-messages-label": "សារបកប្រែក៏បានមិនបកប្រែក៏បាន",
+ "tux-proofread-translated-by-self": "បកប្រែដោយរូបអ្នក",
+ "tux-empty-list-all": "ក្រុមសារនេះទទេ",
+ "tux-empty-list-all-guide": "បង្ហាញក្រុមសារមួយផ្សេងទៀតសម្រាប់បកប្រែ",
+ "tux-empty-list-translated": "គ្មានសារបកប្រែរួច",
+ "tux-empty-list-translated-guide": "អ្នកអាចជួយបកប្រែ",
+ "tux-empty-list-translated-action": "បកប្រែ",
+ "tux-empty-no-messages-to-display": "គ្មានសារសម្រាប់បង្ហាញទេ។",
+ "tux-empty-no-outdated-messages": "គ្មានសារហួសសម័យទេ",
+ "tux-empty-nothing-to-proofread": "គ្មានសារដែលត្រូវផ្ទៀងផ្ទាត់ទេ",
+ "tux-empty-you-can-help-providing": "អ្នកអាចជួយផ្ដល់ការបកប្រែថ្មីៗ",
+ "tux-empty-nothing-new-to-proofread": "គ្មានសារថ្មីៗសម្រាប់ផ្ទៀងផ្ទាត់ទេ",
+ "tux-empty-you-can-review-already-proofread": "អ្នកអាចផ្ទៀងផ្ទាត់ការបកប្រែដែលអ្នកដទៃផ្ទៀងផ្ទាត់រូចហើយបាន។",
+ "tux-empty-list-other": "គ្មានសារសម្រាប់បកប្រែ",
+ "tux-empty-list-other-guide": "អ្នកអាចជួយផ្ទៀងផ្ទាត់ការបកប្រែដែលមានហើយ",
+ "tux-empty-list-other-action": "ផ្ទៀងផ្ទាត់ការបកប្រែ",
+ "tux-empty-list-other-link": "បង្ហាញសារទាំងអស់",
+ "tux-editor-close-tooltip": "បិទ",
+ "tux-editor-expand-tooltip": "ពន្លាត",
+ "tux-editor-collapse-tooltip": "បង្រួម",
+ "tux-editor-message-tools-history": "ប្រវត្តិ",
+ "tux-editor-message-tools-delete": "លុបចោល",
+ "tux-editor-message-tools-translations": "ការបកប្រែទាំងអស់",
+ "tux-editor-loading": "កំពុងផ្ទុក…",
+ "translate-search-more-languages-info": "{{PLURAL:$1|ភាសា|ភាសា}}$1បន្ថែមទៀត",
+ "translate-statsbar-tooltip": "បកប្រែរួច $1% ផ្ទៀតផ្ទាត់រួច $2%",
+ "translate-statsbar-tooltip-with-fuzzy": "បកប្រែរួច $1% ផ្ទៀតផ្ទាត់រួច $2% ហួសសម័យ $3%"
}
diff --git a/MLEB/Translate/i18n/core/kn.json b/MLEB/Translate/i18n/core/kn.json
index d5771db8..c482ccc6 100644
--- a/MLEB/Translate/i18n/core/kn.json
+++ b/MLEB/Translate/i18n/core/kn.json
@@ -6,12 +6,13 @@
"Munirathnam",
"Nayvik",
"VASANTH S.N.",
- "Omshivaprakash"
+ "Omshivaprakash",
+ "Yogesh"
]
},
"translate": "ಭಾಷಾಂತರಿಸಿ",
"translate-desc": "[[Special:Translate|ವಿಷೇಶ ಪುಟ]]ಮೀಡಿಯಾವಿಕಿ ಮತ್ತು ಹೆಚ್ಚಿನದನ್ನು ಭಾಷಾಂತರಿಸಲು",
- "translate-taskui-view": "ಎಲ್ಲಾ ಸಂದೇಶಗಳನ್ನು ತೋರಿಸಿ",
+ "translate-taction-translate": "ಭಾಷಾಂತರಿಸಿ",
"translate-taction-lstats": "ಭಾಷಾ ಅಂಕಿಅಂಶಗಳು",
"translate-page-no-such-language": "ಉಲ್ಲೇಖಿಸಿದ ಭಾಷೆ ಅಸ್ತಿತ್ವದಲ್ಲಿ ಇಲ್ಲ",
"translate-page-no-such-group": "ಉಲ್ಲೇಖಿಸಿದ ಗುಂಪು ಅಸಿಂಧುವಾಗಿತ್ತು",
@@ -41,9 +42,7 @@
"translate-edit-no-information": "\"ಈ ಸಂದೇಶಕ್ಕೆ ಯಾವುದೇ ದಾಖಲೆಗಳಿಲ್ಲ.\"\n\"ನಿಮಗೆ ಈ ಸಂದೇಶ ಎಲ್ಲಿಯಾದರೂ ಅಥವಾ ಹೇಗಾದರೂ ಉಪಯೋಗದಲ್ಲಿರುವುದು ತಿಳಿದಿದ್ದರೆ,ನೀವು ಇದಕ್ಕೆ ತಕ್ಕ ದಾಖಲೆಗಳನ್ನು ಸೇರಿಸಿ ಬೇರಿ ಭಾಷಾಂತರಕಾರರಿಗೆ ಸಹಾಯ ಮಾಡಬಹುದು.\"",
"translate-edit-information": "ಸಂದೇಶದ ಬಗ್ಗೆ ಮಾಹಿತಿ ($1)",
"translate-edit-in-other-languages": "ಬೇರೆ ಭಾಷೆಗಳಲ್ಲಿ ಸಂದೇಶ",
- "translate-edit-committed": "ತಂತ್ರಾಂಶದಲ್ಲಿ ಪ್ರಸ್ತುತ ಭಾಷಾಂತರ",
"translate-edit-warnings": "ಅಸಂಪೂರ್ಣ ಭಾಷಾಂತರದ ಬಗ್ಗೆ ಎಚ್ಚರಿಕೆ",
- "translate-edit-tmsugs": "ಭಾಷಾಂತರ ನೆನಪು ಹಾಗೂ ಭಾಷಾಂತರ ಯಂತ್ರಗಳ ಸಲಹೆ",
"translate-edit-tmmatch": "$1% ಹೊ೦ದಿಸಿ",
"translate-use-suggestion": "ಈಗಿನ ಭಾಷಾಂತರವನ್ನು ಈ ಸಲಹೆಯೊಂದಿಗೆ ಬದಲಾಯಿಸಿ",
"translate-edit-nopermission": "ಭಾಷಾಂತರಿಸಲು ನಿಮಗೆ ಅನುಮತಿ ಬೇಕು",
@@ -92,7 +91,6 @@
"translate-statsf-count-edits": "ಸಂಪಾದನೆಗಳ ಸಂಖ್ಯೆ",
"translate-statsf-count-users": "ಸಕ್ರಿಯ ಭಾಷಾಂತರಕಾರರು",
"translate-statsf-submit": "ಮುನ್ನೋಟ",
- "translate-tag-category": "ಭಾಷಾಂತರಿಸಬಹುದಾದ ಪುಟಗಳು",
"translate-tag-page-desc": "ವಿಕಿ [[$2|$1]]ಪುಟಗಳ ಅನುವಾದ.",
"translate-sidebar-alltrans": "ಇತರ ಭಾಷೆಗಳಲ್ಲಿ",
"translations": "ಎಲ್ಲಾ ಅನುವಾದಗಳು",
diff --git a/MLEB/Translate/i18n/core/ko.json b/MLEB/Translate/i18n/core/ko.json
index 05b35b7b..79b30a2e 100644
--- a/MLEB/Translate/i18n/core/ko.json
+++ b/MLEB/Translate/i18n/core/ko.json
@@ -10,16 +10,16 @@
"관인생략",
"아라",
"Priviet",
- "Revi"
+ "Revi",
+ "Bluemersen",
+ "Infinity",
+ "Hwangjy9",
+ "HDNua",
+ "Ykhwong"
]
},
"translate": "번역하기",
- "translate-desc": "미디어위키와 기타를 번역하기 위한 [[Special:Translate|특수 문서]]",
- "translate-taskui-view": "모든 메시지 보기",
- "translate-taskui-untranslated": "번역되지 않은 메시지 보기",
- "translate-taskui-optional": "선택적 메시지 보기",
- "translate-taskui-acceptqueue": "내가 검토한 것으로 표시할 수 있는 메시지만",
- "translate-taskui-reviewall": "모든 번역 검토하기",
+ "translate-desc": "미디어위키와 다른 것들을 번역하기 위한 [[Special:Translate|특수 문서]]",
"translate-taskui-export-to-file": "네이티브 형식으로 내보내기",
"translate-taskui-export-as-po": "오프라인 번역용으로 내보내기",
"translate-taction-translate": "번역하기",
@@ -27,9 +27,9 @@
"translate-taction-lstats": "언어 통계",
"translate-taction-mstats": "메시지 그룹 통계",
"translate-taction-export": "내보내기",
- "translate-taction-disabled": "이 행동은 이 위키에서 비활성화되어 있습니다.",
- "translate-page-no-such-language": "선택한 언어가 잘못되었습니다.",
- "translate-page-no-such-group": "입력한 그룹이 잘못되었습니다.",
+ "translate-taction-disabled": "이 동작은 이 위키에서 비활성화되어 있습니다.",
+ "translate-page-no-such-language": "지정한 언어가 잘못되었습니다.",
+ "translate-page-no-such-group": "지정한 그룹이 잘못되었습니다.",
"translate-page-disabled": "이 그룹에서 이 언어로의 번역이 비활성화되어 있습니다.\n이유:\n\n<em>$1</em>",
"translate-language-disabled": "이 언어로의 번역이 비활성화되어 있습니다.",
"translate-page-settings-legend": "설정",
@@ -37,7 +37,7 @@
"translate-page-language": "언어",
"translate-page-limit": "제한",
"translate-page-limit-option": "페이지당 {{PLURAL:$1|메시지}} $1개",
- "translate-submit": "불러오기",
+ "translate-submit": "얻기",
"translate-page-navigation-legend": "둘러보기",
"translate-page-showing": "메시지 $3개 중 $1 - $2을(를) 보고 있습니다.",
"translate-page-showing-all": "{{PLURAL:$1|메시지}} $1개를 보고 있습니다.",
@@ -48,26 +48,28 @@
"translate-page-description-hasoptional": "이 메시지 그룹은 선택적 메시지를 포함합니다.\n언어에 공백을 사용하거나 적절한 이름을 번역할 수 없는 등의 특별한 요구 사항이\n있을 때에만 선택적 메시지를 번역해야 합니다. $1",
"translate-page-description-hasoptional-open": "선택적 메시지 보기",
"translate-page-edit": "편집",
- "translate-ext-url": "<hr />웹 사이트: $1",
"translate-optional": "(선택 사항)",
"translate-ignored": "(무시됨)",
"translate-edit-title": "\"$1\" 편집하기",
"translate-edit-definition": "메시지 정의",
"translate-edit-translation": "번역",
- "translate-edit-contribute": "편집하기",
- "translate-edit-no-information": "<em>이 메시지에 대한 설명문이 없습니다.\n만약 이 메시지가 어디에 어떻게 사용되는지 알고 있다면 설명문을 작성해 다른 번역자를 도와줄 수 있습니다.</em>",
+ "translate-edit-contribute": "기여",
+ "translate-edit-no-information": "이 메시지에 대한 설명문이 없습니다.\n만약 이 메시지가 어디에 어떻게 사용되는지 알고 있다면 설명문을 작성해 다른 번역자를 도와줄 수 있습니다.",
"translate-edit-information": "이 메시지에 대한 정보 ($1)",
"translate-edit-in-other-languages": "이 메시지의 다른 언어판",
- "translate-edit-committed": "소프트웨어의 현재 번역",
"translate-edit-warnings": "불완전한 번역에 대한 경고",
- "translate-edit-tmsugs": "번역 기억과 기계 번역에서 제안",
"translate-edit-tmmatch-source": "번역 원본 텍스트: $1",
"translate-edit-tmmatch": "$1% 일치",
"translate-use-suggestion": "이 제안에 현재 번역을 바꿉니다.",
"translate-edit-nopermission": "메시지를 번역할 수 있는 번역 권한이 필요합니다.",
"translate-edit-askpermission": "권한 얻기",
+ "exporttranslations": "번역 내보내기",
+ "translate-export-form-format": "형식",
+ "translate-export-invalid-format": "유효한 형식을 지정해 주십시오.",
+ "translate-export-not-supported": "번역 내보내기는 지원하지 않습니다.",
+ "translate-export-format-notsupported": "지정된 내보내기 형식은 메시지 그룹에 의해 지원되지 않습니다.",
"translate-magic-pagename": "확장된 미디어위키 번역",
- "translate-magic-help": "여기서 특수 문서 이름, 특수 명령, 이름공간 이름을 번역할 수 있습니다.\n\n특수 문서와 특수 명령은 여러 개의 번역이 가능합니다.\n여러 개의 번역을 할 경우에는 쉼표(,)로 번역을 구별합니다.\n단, 이름공간은 오직 하나의 번역만 가능합니다.\n\n번역할 때 프로젝트 토론 이름공간인 <code>$1 talk</code>은 복잡할 수 있습니다.\n<code>$1</code>(은)는 프로젝트 사이트 이름(예를 들어 <code>{{ns:project_talk}}</code>)으로 바뀝니다.\n사이트 이름을 바꾸지 않고서 적절한 표현 방법을 구성할 수 없다면 [[Support]]에서 문의하세요.\n\n이 편집을 저장하려면 번역자 권한이 필요합니다.\n아래의 저장 버튼을 누르기 전까지는 바뀐 내용이 저장되지 않습니다.",
+ "translate-magic-help": "여기서 특수 문서 이름, 특수 명령, 이름공간 이름을 번역할 수 있습니다.\n\n특수 문서와 특수 명령은 여러 개의 번역이 가능합니다.\n여러 개의 번역을 할 경우에는 쉼표(,)로 번역을 구별합니다.\n단, 이름공간은 오직 하나의 번역만 가능합니다.\n\n번역할 때 프로젝트 토론 이름공간인 <code>$1 talk</code>은 복잡할 수 있습니다.\n<code>$1</code>은(는) 프로젝트 사이트 이름(예를 들어 <code>{{ns:project_talk}}</code>)으로 바뀝니다.\n사이트 이름을 바꾸지 않고서 적절한 표현 방법을 구성할 수 없다면 [[Support]]에서 문의하세요.\n\n이 편집을 저장하려면 번역자 권한이 필요합니다.\n아래의 저장 버튼을 누르기 전까지는 바뀐 내용이 저장되지 않습니다.",
"translate-magic-module": "모듈:",
"translate-magic-submit": "불러오기",
"translate-magic-cm-export": "내보내기",
@@ -84,10 +86,10 @@
"translate-magic-namespace": "이름공간 이름",
"translate-magic-notsaved": "편집이 저장되지 않았습니다!",
"translate-magic-errors": "번역문에서 다음 {{PLURAL:$1|오류}}를 수정하세요:",
- "translate-magic-saved": "바뀜을 성공적으로 저장했습니다.",
+ "translate-magic-saved": "바뀐 내용이 저장되었습니다.",
"translate-checks-parameters": "다음 {{PLURAL:$2|변수가}} 사용되지 않았습니다:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-parameters-unknown": "다음 {{PLURAL:$2|변수를}} 알 수 없습니다:\n<strong><nowiki>$1</nowiki></strong>",
- "translate-checks-balance": "{{PLURAL:$2|괄호}}의 고르지 않은 개수가 있습니다:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "열고 닫는 {{PLURAL:$2|괄호}}의 수가 일치하지 않습니다:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-links": "다음 {{PLURAL:$2|링크|링크 $2개}}에 문제가 있습니다:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-links-missing": "다음 {{PLURAL:$2|링크|링크 $2개}}가 없습니다:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-xhtml": "올바른 것과 함께 다음과 같은 {{PLURAL:$2|태그}}를 바꾸세요:\n<strong><nowiki>$1</nowiki></strong>",
@@ -98,8 +100,8 @@
"translate-checks-format": "이 번역은 정의를 따르지 않거나 잘못된 구문입니다: $1",
"translate-checks-escape": "다음의 탈출은 실수였을 수 있습니다: <strong>$1</strong>",
"translate-checks-parametersnotequal": "변수 개수는 {{PLURAL:$1|$1}}개이며 {{PLURAL:$2|$2}}개여야 합니다.",
- "translate-checks-malformed": "<nowiki>$1</nowiki>(은)는 잘못된 형식입니다.",
- "translate-checks-fudforum-syntax": "이 프로젝트에는 <nowiki>$2</nowiki> 대신에 <nowiki>$1</nowiki>(을)를 사용하세요.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki>은(는) 잘못된 형식입니다.",
+ "translate-checks-fudforum-syntax": "이 프로젝트에는 <nowiki>$2</nowiki> 대신에 <nowiki>$1</nowiki>을(를) 사용하세요.",
"translate-pref-nonewsletter": "이메일 뉴스레터를 보내지 않음",
"translate-pref-editassistlang": "보조 언어:",
"prefs-translate": "번역 옵션",
@@ -112,6 +114,13 @@
"action-translate-import": "오프라인 번역을 가져올",
"right-translate-messagereview": "번역 검토하기",
"right-translate-groupreview": "메시지 그룹의 작업 상태를 바꾸기",
+ "translate-rcfilters-translations": "번역",
+ "translate-rcfilters-translations-only-label": "번역",
+ "translate-rcfilters-translations-only-desc": "번역된 문서의 변경사항입니다.",
+ "translate-rcfilters-translations-filter-label": "번역이 아님",
+ "translate-rcfilters-translations-filter-desc": "번역이 아닌 모든 변경사항입니다.",
+ "translate-rcfilters-translations-site-label": "사이트 메시지",
+ "translate-rcfilters-translations-site-desc": "미디어위키 이름공간의 사이트 메시지의 사용자 지정 부분입니다.",
"translate-rc-translation-filter": "번역 필터:",
"translate-rc-translation-filter-no": "모두 보기",
"translate-rc-translation-filter-only": "번역만 보기",
@@ -143,8 +152,7 @@
"translate-statsf-language": "언어 코드의 쉼표로 구분한 목록:",
"translate-statsf-group": "그룹 코드의 쉼표로 구분한 목록:",
"translate-statsf-submit": "미리 보기",
- "translate-tag-category": "번역 가능한 문서",
- "translate-tag-page-desc": "[[$2|$1]] 위키 문서의 번역입니다.",
+ "translate-tag-page-desc": "$3 ($4)에서의 [[$2|$1]] 위키 문서의 번역입니다.",
"translate-sidebar-alltrans": "다른 언어",
"translations": "모든 번역",
"translations-summary": "모든 번역을 보려면 메시지 이름을 아래에 입력하세요.",
@@ -157,7 +165,8 @@
"translate-translations-including-no-param": "하위 문서 변수에 올바른 메시지 키를 입력해 주십시오.",
"translate-translations-history-short": "역",
"languagestats": "언어 통계",
- "languagestats-summary": "이 문서는 특정 언어에 대한 모든 메시지 그룹에 대한 번역 통계를 보여줍니니다.",
+ "languagestats-summary": "이 문서는 특정 언어에 대한 모든 메시지 그룹에 대한 번역 통계를 보여줍니다.",
+ "messagegroupstats-summary": "이 페이지는 메시지 그룹 통계를 보여줍니다.",
"languagestats-stats-for": "$1 ($2)에 대한 번역 통계",
"languagestats-recenttranslations": "최근 번역",
"translate-langstats-incomplete": "통계의 일부가 불완전합니다. 더 많은 통계를 보려면 다시 페이지를 불러오십시오.",
@@ -178,19 +187,20 @@
"translate-ls-submit": "통계 보기",
"translate-ls-column-group": "메시지 그룹",
"translate-mgs-pagename": "메시지 그룹에 대한 번역 통계",
- "translate-mgs-fieldset": "보기 설정",
+ "translate-mgs-fieldset": "표시 환경 설정",
"translate-mgs-group": "메시지 그룹:",
- "translate-mgs-nocomplete": "번역이 완료된 언어는 보이지 않기",
- "translate-mgs-noempty": "번역이 전혀 되지 않은 언어를 보이지 않기",
+ "translate-mgs-nocomplete": "번역이 완료된 언어는 표시하지 않기",
+ "translate-mgs-noempty": "번역이 전혀 되지 않은 언어를 표시하지 않기",
"translate-mgs-submit": "통계 보기",
"translate-mgs-column-language": "언어",
- "translate-mgs-totals": "모든 언어",
+ "translate-mgs-totals": "$1개의 모든 {{PLURAL:$1|언어}}",
"translate-mgs-invalid-group": "지정한 $1 그룹이 존재하지 않습니다.",
"translate-mgs-nothing": "요청된 통계에 대해 보여줄 것이 없습니다.",
"supportedlanguages": "지원하는 언어",
"supportedlanguages-summary": "이 문서는 {{SITENAME}}에서 지원하는 모든 언어의 목록과 그 언어로 번역하는 번역자의 이름을 보여줍니다.\n번역자가 편집을 더 많이 할수록 이름이 크게 나타납니다.\n밑줄의 색깔은 번역자가 얼마나 최근에 활동했는지를 나타냅니다.",
"supportedlanguages-colorlegend": "색깔 범례: 마지막 번역을 한 날짜가 $1일 전.",
- "supportedlanguages-translators": "{{PLURAL:$2|번역자}}: $1",
+ "supportedlanguages-sqlite-error": "SQLite는 지원되지 않습니다",
+ "supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|번역자}}|번역자}}: $1",
"supportedlanguages-recenttranslations": "최근 번역",
"supportedlanguages-count": "총 {{PLURAL:$1|언어 수}}는 $1개입니다.",
"supportedlanguages-activity": "$1: {{PLURAL:$2|편집}} $2회 - 마지막 편집 $3{{PLURAL:$3|일}} 전",
@@ -210,14 +220,13 @@
"translate-manage-action-import": "가져오기",
"translate-manage-action-conflict": "퍼지 처리하여 가져오기",
"translate-manage-action-ignore": "무시",
- "translate-manage-action-fuzzy": "가져오기와 퍼지 번역",
+ "translate-manage-action-fuzzy": "번역을 가져와서 퍼지 처리",
"translate-manage-nochanges": "이 그룹에 대한 메시지 정의 바뀜이 없습니다.",
"translate-manage-nochanges-other": "이 언어에 대한 바뀜이 없습니다.\n그룹 자세한 정보 보기로 돌아가려면 다음 링크를 사용하세요.",
"translate-manage-inconsistent": "요청에서 일치하지 않음을 발견했습니다.\n바뀜을 확인하고 다시 시도하세요.\n자세한 정보: $1.",
"translate-manage-toolong": "최대 처리 시간이 $1{{PLURAL:$1|초}} 초과했습니다.\n처리를 계속하려면 양식을 다시 전송하세요.",
- "translate-manage-import-summary": "바깥 원본에서 새 판을 가져옴",
- "translate-manage-conflict-summary": "바깥 소스로부터 새 버전을 가져옵니다.\n확인하세요.",
- "translate-manage-fuzzy-summary": "메시지 정의가 바뀌었습니다",
+ "translate-manage-import-summary": "외부 원본에서 새 판을 가져옴",
+ "translate-manage-conflict-summary": "외부 소스로부터 새 버전을 가져옵니다.\n확인해 주십시오.",
"translate-manage-submit": "실행",
"translate-manage-intro-other": "다음은 $1로 된 번역 바뀜 목록입니다.\n바뀜을 검토하고 각 업데이트에 대해 수행할 작업을 선택하세요.\n바뀜을 무시하기로 선택했다면 이 작업만 일시적입니다.",
"translate-manage-import-ok": "가져옴: $1",
@@ -235,9 +244,7 @@
"translate-js-summary": "요약:",
"translate-js-save": "저장",
"translate-js-next": "저장하고 다음으로 넘어가기",
- "translate-js-nonext": "이 페이지의 마지막 메시지입니다.",
"translate-js-skip": "다음으로 넘어가기",
- "translate-js-save-failed": "저장에 실패했습니다. 이 오류를 신고해주시기 바랍니다.",
"translate-js-history": "번역 역사",
"translate-js-support": "질문하기",
"translate-js-support-title": "이 메시지를 정확히 번역할 만한 정보가 부족하다면 도움을 요청하세요.",
@@ -248,33 +255,19 @@
"translate-gs-speakers": "말한이",
"translate-gs-score": "점수",
"translate-gs-multiple": "여러",
- "translate-gs-count": "갯수",
+ "translate-gs-count": "개수",
"translate-gs-total": "합계",
"translate-gs-avgscore": "평균 점수",
"translate-documentation-language": "메시지 설명문",
"translate-searchprofile": "번역문",
"translate-searchprofile-tooltip": "모든 번역에서 검색",
+ "translate-searchprofile-note": "더 많은 검색 옵션은 [$1 번역 검색]을 통해 이용할 수 있습니다.",
"translate-search-languagefilter": "언어에 대한 필터:",
"translate-search-nofilter": "필터링하지 않음",
- "translate-messagereview-submit": "검토한 것으로 표시",
- "translate-messagereview-progress": "검토한 것으로 표시 중...",
- "translate-messagereview-failure": "검토한 것으로 표시하는 데 실패했습니다: $1",
- "translate-messagereview-done": "검토됨",
- "translate-messagereview-reviews": "{{PLURAL:$1|한 사용자|사용자 $1명}}에 의해 검토함",
- "translate-messagereview-reviewswithyou": "{{PLURAL:$1|나|나를 포함한 사용자 $1명}}에 의해 검토함",
- "api-error-invalidrevision": "번역을 찾을 수 없습니다",
- "api-error-unknownmessage": "메시지를 찾을 수 없습니다",
- "api-error-fuzzymessage": "번역이 퍼지 처리되었습니다.",
- "api-error-owntranslation": "자신의 번역은 검토한 것으로 표시할 수 없습니다",
- "translate-messagereview-no-fuzzy": "퍼지 번역은 검토한 것으로 표시 수 없습니다.",
- "translate-messagereview-no-own": "자신의 번역은 검토한 것으로 표시할 수 없습니다.",
- "translate-messagereview-doit": "이 번역을 검토한 것으로 표시합니다.",
- "group-translate-proofr.css": "/* 이 CSS 설정은 번역 평론가에만 적용됩니다 */",
- "group-translate-proofr.js": "/* 이 자바스크립트 설정은 번역 평론가에만 적용됩니다 */",
"log-name-translationreview": "번역 검토 기록",
"log-description-translationreview": "번역과 메시지 그룹에 대한 모든 검토 기록입니다.",
- "logentry-translationreview-message": "$1 사용자가 $3 번역을 {{GENDER:$2|검토했습니다}}",
- "logentry-translationreview-group": "$1 사용자가 $3의 $4 번역의 상태를 $6에서 $7로 {{GENDER:$2|바꾸었습니다}}",
+ "logentry-translationreview-message": "$1님이 $3 번역을 {{GENDER:$2|검토했습니다}}",
+ "logentry-translationreview-group": "$1님이 $3의 $4 번역의 상태를 $6에서 $7(으)로 {{GENDER:$2|바꾸었습니다}}",
"group-translate-sandboxed": "승인하지 않은 번역자",
"group-translate-sandboxed-member": "{{GENDER:$1|승인하지 않은 번역자}}",
"right-translate-sandboxmanage": "연습장 사용자 관리",
@@ -283,10 +276,7 @@
"action-translate-sandboxaction": "연습장 사용자에게 허용된 작업을 실행",
"translate-workflow-state-": "(미설정)",
"translate-workflowstatus": "상태: $1",
- "translate-workflow-set-do": "설정",
"translate-workflow-set-doing": "설정 중...",
- "translate-workflow-set-done": "설정!",
- "translate-workflow-set-error-alreadyset": "요청한 상태는 현재 상태와 동일합니다.",
"translate-workflow-autocreated-summary": "$1 작업 상태에 대한 페이지가 자동으로 만듦",
"translate-stats-workflow": "상태",
"translate-workflowgroup-label": "작업 상태",
@@ -295,11 +285,6 @@
"translate-dynagroup-recent-desc": "이 메시지 그룹은 이 언어로의 모든 최근 번역을 보여줍니다.\n검토 작업에 아주 유용합니다.",
"translate-dynagroup-additions-label": "최근 추가",
"translate-dynagroup-additions-desc": "이 메시지 그룹은 새 메시지와 바뀐 메시지를 보여줍니다.",
- "translate-dynagroup-by": "{{GENDER:$1|$1}}에 의해 번역",
- "translate-dynagroup-byc": "{{GENDER:$1|$1}} ($2)에 의해 번역",
- "translate-dynagroup-last": "{{GENDER:$1|$1}}에 의해 마지막으로 바뀜",
- "translate-dynagroup-lastc": "{{GENDER:$1|$1}} ($2)에 의해 마지막으로 바뀜",
- "translate-gethelp": "도움말",
"translate-msggroupselector-projects": "메시지 그룹",
"translate-msggroupselector-search-placeholder": "그룹 검색",
"translate-msggroupselector-search-all": "모두",
@@ -318,14 +303,17 @@
"tux-status-translated": "번역됨",
"tux-status-saving": "저장 중...",
"tux-status-unsaved": "저장하지 않음",
+ "tux-save-unknown-error": "알 수 없는 오류가 발생했습니다.",
"tux-editor-placeholder": "내 번역",
+ "tux-editor-editsummary-placeholder": "요약 (선택 사항)",
"tux-editor-paste-original-button-label": "원본 텍스트 붙여넣기",
- "tux-editor-discard-changes-button-label": "바뀐 내용 버리기",
+ "tux-editor-discard-changes-button-label": "바뀜 버리기",
"tux-editor-save-button-label": "번역 저장",
"tux-editor-skip-button-label": "다음으로 넘어가기",
"tux-editor-cancel-button-label": "취소",
"tux-editor-confirm-button-label": "번역 확인",
- "tux-editor-shortcut-info": "저장하려면 \"$1\"을 누르거나 다음 메시지로 넘어가려면 \"$2\"를 누르거나 다른 단축키를 보려면 \"$3\"을 누르세요",
+ "tux-editor-proofread-button-label": "검토한 것으로 표시",
+ "tux-editor-shortcut-info": "저장하려면 \"$1\"을, 다음 메시지로 넘어가려면 \"$2\"를, 요약을 제공하려면 \"$4\"를, 다른 단축키를 보려면 \"$3\"을 누르세요.",
"tux-editor-edit-desc": "설명문 편집",
"tux-editor-add-desc": "설명문 추가",
"tux-editor-suggestions-title": "제안",
@@ -365,7 +353,7 @@
"tux-empty-list-translated": "번역된 메시지가 없습니다",
"tux-empty-list-translated-guide": "번역을 도울 수 있습니다",
"tux-empty-list-translated-action": "번역",
- "tux-empty-no-messages-to-display": "보여줄 메시지가 없습니다.",
+ "tux-empty-no-messages-to-display": "표시할 메시지가 없습니다.",
"tux-empty-there-are-optional": "선택적 메시지가 목록에 보이지 않습니다",
"tux-empty-show-optional-messages": "선택적 메시지 보기",
"tux-empty-no-outdated-messages": "오래된 메시지가 없습니다",
@@ -380,12 +368,18 @@
"tux-editor-close-tooltip": "닫기",
"tux-editor-expand-tooltip": "펼치기",
"tux-editor-collapse-tooltip": "접기",
+ "tux-editor-message-tools-show-editor": "위키 편집기에서 보기",
"tux-editor-message-tools-history": "역사",
+ "tux-editor-message-tools-delete": "삭제",
"tux-editor-message-tools-translations": "모든 번역",
+ "tux-editor-message-tools-linktothis": "이 메시지로 가는 링크",
"tux-editor-loading": "불러오는 중...",
"translate-search-more-languages-info": "{{PLURAL:$1|언어}} $1개 더 보기",
"translate-statsbar-tooltip": "$1% 번역됨, $2% 검토됨",
"translate-statsbar-tooltip-with-fuzzy": "$1% 번역됨, $2% 검토됨, $3% 오래됨",
"translate-search-more-groups-info": "{{PLURAL:$1|그룹}} $1개 더 보기",
- "translate-ulsdep-title": "구성 오류"
+ "translate-ulsdep-title": "구성 오류",
+ "translate-ulsdep-body": "번역 확장 기능은 [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector 일반 언어 선택기 확장 기능]을 필요로 합니다.",
+ "tux-session-expired": "로그인하고 있지 않습니다. 별도의 탭에서 로그인하세요. 대안으로, 저장하지 않은 번역을 복사하고, 로그인한 다음, 이 문서로 돌아와 다시 번역을 입력하세요.",
+ "tux-nojs": "이 도구는 자바스크립트 없이 동작하지 않습니다. 자바스크립트를 사용하지 않아 동작하지 않거나 이 브라우저가 지원되지 않습니다."
}
diff --git a/MLEB/Translate/i18n/core/krc.json b/MLEB/Translate/i18n/core/krc.json
index 219e0ebf..d45860bc 100644
--- a/MLEB/Translate/i18n/core/krc.json
+++ b/MLEB/Translate/i18n/core/krc.json
@@ -1,10 +1,12 @@
{
"@metadata": {
"authors": [
- "Iltever"
+ "Iltever",
+ "Ernác"
]
},
"translate-magic-notsaved": "Тюрлендириуюгюз сакъланмады!",
+ "translate-total": "Джазылгъанла",
"translate-mgs-column-language": "Тил",
"translate-documentation-language": "Билдириуню документациясы"
}
diff --git a/MLEB/Translate/i18n/core/krl.json b/MLEB/Translate/i18n/core/krl.json
index e1ca0abf..a2db066b 100644
--- a/MLEB/Translate/i18n/core/krl.json
+++ b/MLEB/Translate/i18n/core/krl.json
@@ -1,8 +1,15 @@
{
"@metadata": {
"authors": [
- "Flrn"
+ "Flrn",
+ "Mashoi7",
+ "Varvana"
]
},
- "translate-page-navigation-legend": "Valličy"
+ "translate": "Kiännä",
+ "translate-taction-translate": "Kiännä",
+ "translate-page-navigation-legend": "Valličy",
+ "translate-documentation-language": "Viestin dokumentacija",
+ "tux-languageselector": "Kieli",
+ "tux-empty-list-translated-action": "Kiännä"
}
diff --git a/MLEB/Translate/i18n/core/ksh.json b/MLEB/Translate/i18n/core/ksh.json
index 73ae49e7..1a39b58b 100644
--- a/MLEB/Translate/i18n/core/ksh.json
+++ b/MLEB/Translate/i18n/core/ksh.json
@@ -6,12 +6,7 @@
]
},
"translate": "Övversäze",
- "translate-desc": "[[Special:Translate|Söndersigk]] för et Översäze fon MediaWiki sing Meldonge, un mieh",
- "translate-taskui-view": "Alle Täxte udder Nohreeschte aanzeije",
- "translate-taskui-untranslated": "Onövversaz Täxte udder Nohreeschte aanzeije",
- "translate-taskui-optional": "'Nid esu nüüdeje' Täxte udder Nohreeschte aanzeije.",
- "translate-taskui-acceptqueue": "Bloß di Täxte udder Nohreeschte aanzeije, di_sch och jähjelässe kann",
- "translate-taskui-reviewall": "Alle Övversäzonge jähjelässe",
+ "translate-desc": "[[Special:Translate|{{int:specialpage}}]] för et Översäze fum MediaWiki sing Mäldonge un Nohreeschte, un mih.",
"translate-taskui-export-to-file": "Em eije Fomaat äxpoteere",
"translate-taskui-export-as-po": "För et Övversäze ußerhallf äxpotteere",
"translate-taction-translate": "Övversäze",
@@ -20,8 +15,8 @@
"translate-taction-mstats": "Schtateßteke för en Nohreeschtejropp",
"translate-taction-export": "Äxpottehre",
"translate-taction-disabled": "Di Axjuhn es op heh dämm Wiki affjeschalldt.",
- "translate-page-no-such-language": "De aanjejovve {{int:translate-page-language}} känne mer nit.",
- "translate-page-no-such-group": "De aanjejovve {{int:translate-page-group}} känne mer nit.",
+ "translate-page-no-such-language": "De aanjejovve Schprohch känne mer nit.",
+ "translate-page-no-such-group": "De aanjejovve Nohreeschtejropp känne mer nit.",
"translate-page-disabled": "Övversezonge sen affjeschalldt för di {{int:translate-page-group}} un {{int:translate-page-language}}, weil:\n\n<em>$1</em>",
"translate-language-disabled": "Övversäzonge en heh di Schprohch sin afjeschalldt.",
"translate-page-settings-legend": "Enschtällonge för et Äxpottehre",
@@ -41,7 +36,6 @@
"translate-page-description-hasoptional": "En heh dä Jropp sinn_er 'nit esu nüüdeje' Täxte un Nohreeschte.\nDi sullte bloß övversaz wähde, wann Ding Schprohch jät besönders bruch, esu jät wi käin Zwescheräum udder anders jeschrevve Nahme. $1",
"translate-page-description-hasoptional-open": "Donn de 'nit esu nüüdeje' Täxte udder Nohreeschte aanzeije.",
"translate-page-edit": "Änndere",
- "translate-ext-url": "<hr />Websaijt: $1",
"translate-optional": "(nit esu nüüdesch)",
"translate-ignored": "(övverjange)",
"translate-edit-title": "„$1“ ändere",
@@ -50,16 +44,14 @@
"translate-edit-contribute": "beijdraare",
"translate-edit-no-information": "<em>Mer han kein Dokementazjohn för dat Täxshtöck.</em>\n<em>Wann De weijß, wann un woh et jebruch weed, da kanns De dä anndere Övversäzer hellefe, un jet för_et ennjävve.</em>",
"translate-edit-information": "Ennfommazjohne övver dä Täx udder di Nohreesch ($1)",
- "translate-edit-in-other-languages": "Dä Täx udder di Nohreesch in annder Shprooche",
- "translate-edit-committed": "Es aktowäll övversaz met",
+ "translate-edit-in-other-languages": "Dä Täx udder di Nohreesch in anndere Schprohche",
"translate-edit-warnings": "Warnonge wääje unkomplätte Övversäzonge&#32;",
- "translate-edit-tmsugs": "Vörschlääsch vum elläktrohnesche Övversäzongs-Jedähschneß",
"translate-edit-tmmatch-source": "Et Ojinaal för ze Övversäzze: $1",
"translate-edit-tmmatch": "$1% zopaß",
"translate-use-suggestion": "Donn heh dä Vörschlaach en et Övversäzongsfeld endraare. Wat alt dren es, verschwindt.",
"translate-edit-nopermission": "Do bruchs dat Rääsch, Täxte un Nohreeschte övversäze ze dörve.",
"translate-edit-askpermission": "Donn öm dat Rääsch froore",
- "translate-magic-pagename": "MediaWiki sing Extras övversäze",
+ "translate-magic-pagename": "Dem MehdijaWikki sing Extras övversäze",
"translate-magic-help": "Heh kanns_De Zweijtnahme fö {{int:specialpage}}e, de su jenannte Zauberwööter, un de Nahme vun de Appachtemangs översäze.\n\n{{int:specialpage}}e ier Zweijtnahme, un de Zauberwööter könne mieh wi eijn Övversäzong han.\nDozwesche schteijt jehweijls_e \",\" (Komma).\nDe Nahme fö_de Appachtemangs könne nur eijn Övversätzong han.\n\nBeij de Övversäzonge för de Appachtemangs ier Nahme hät „<code>$1 talk</code>“ ene schpezjälle Senn.\nDat „<code>$1</code>“ schteijt doh als enne Plazhallder för dä Projäknahme (zem Beijshpöll dat „<code>{{SITENAME}}</code>“ en: „<code>Övver {{GRAMMAR:Akkusative|{{SITENAME}}}} klaafe</code>“).\nWann Ding Schprohch ed nit heerjitt, dat_De en jrammatesch reschtejje Forrem henkreßß, ohne an dämm Projek singem Name ändere zo mößße, dann lohs_ed ons weße. De kanns et op de Sigg för [[Support|{{int:bw-mainpage-support-title}}]] schrihve.\n\nDo moß en de Jrop „Övversäzer“ sen, för heh Änderonge maache ze künne.\nÄnderonge wehde ehts bem Klicke op onge dä Knopp förr_et Seschere faßjehallde.",
"translate-magic-module": "Dat Modul:",
"translate-magic-submit": "Lohß jonn!",
@@ -72,29 +64,29 @@
"translate-magic-cm-save": "Seschere",
"translate-magic-cm-updatedusing": "Övver [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]] jeänndert.",
"translate-magic-cm-savefailed": "Et Seschere eß donäve jejange",
- "translate-magic-special": "Zweijtname för Söndersigge",
+ "translate-magic-special": "Zweijtname för {{int:specialpages}}",
"translate-magic-words": "Zauberwööter",
"translate-magic-namespace": "Appachtemang_Name",
- "translate-magic-notsaved": "Ding Änderunge sin nit faßjehallde!",
- "translate-magic-errors": "Donn {{PLURAL:$1|dää Fähler|die Fähler}} en Övversäzunge verbessere:",
- "translate-magic-saved": "Ding Änderunge sin faßjehallde.",
+ "translate-magic-notsaved": "Ding Änderonge sin nit faßjehallde!",
+ "translate-magic-errors": "Donn {{PLURAL:$1|dää Fähler|di Fähler|kein Fähler}} en Övversäzonge verbäßere:",
+ "translate-magic-saved": "Ding Änderonge sin faßjehallde.",
"translate-checks-parameters": "{{PLURAL:$2|Dä Parrammeeter heh eß|Di Parrammeetere heh sen|dat Jedrißße heh iß}} nit jebruch woode: <strong>$1</strong>",
"translate-checks-parameters-unknown": "Hee {{PLURAL:$2|dä Parrammeeter|di Parrammeetere|dat Jedrißße}} kënne mer nit:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-balance": "Do {{PLURAL:$2|jëijd_en Klammer nit op odder|jonn ongerscheedlish fill Klammere op un|eß Dreß}} zoh: <strong>$1</strong>",
"translate-checks-links": "Hee {{PLURAL:$2|dä Lengk eß|di Lengks senn|dat Jedrißße}} problemattesch: <strong>$1</strong>",
- "translate-checks-links-missing": "Hee {{PLURAL:$2|dä Lengk fäählt:|di $2 Lenks fäähle:|fäähle kei Lengks.}} <strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "Hee {{PLURAL:$2|dä Lengk fäält:|di $2 Lenks fäähle:|fäähle kei Lengks.}} <strong><nowiki>$1</nowiki></strong>",
"translate-checks-xhtml": "Donn hee {{PLURAL:$2|dat Kommando|di Kommandose|dat Jedrißße}} ußtuusche, un schriif de reschtije do för hen: <strong>$1</strong>",
"translate-checks-plural": "De Ojjinaal-Nohreesch bruch <code><nowiki>{{PLURAL:}}</nowiki></code>, ävver de Övversäzong deijt dat nit?",
"translate-checks-plural-forms": "<nowiki>{{PLURAL:}}</nowiki> es med {{PLURAL:$1|eine Form|$1 Forme|keine Form}} enjesaz, ävver {{PLURAL:$2|bloß ein Form weed|bloß $2 Forme wääde|kein Form weed heh}} ongerschtöz, ävver zohsäzlesch noch 0= un 1=",
"translate-checks-plural-dupe": "<nowiki>{{PLURAL:}}</nowiki> hät {{PLURAL:$1|en dubbelte Form|dubbelte Forme|kein dubbelte Forme}} aam Ängk, ävver <nowiki>{{PLURAL:$1|Metmaacher|Metmaacher|Metmaacher}}</nowiki> sullt als <nowiki>{{PLURAL:$1|Metmaacher}}</nowiki> jeschrevve wääde.",
"translate-checks-pagename": "Dat Appachtemang es anders wi em ojinaal Tex",
- "translate-checks-format": "De Övversätzung paß nit zor Definitjuhn odder dä ier Syntax es nit en Odenung: $1",
+ "translate-checks-format": "De Övversäzong paß nit zor Definizjuhn udder dä ier Süntax es nit en Ohdenong: $1",
"translate-checks-escape": "He de <i lang=\"en\">escapes</i> künnte esu nit jewollt sin: <strong>$1</strong>",
"translate-checks-parametersnotequal": "De Aanzahl Parrammeeter es {{PLURAL:$1|$1}}, sulld ävver {{PLURAL:$2|$2}} sin.",
"translate-checks-malformed": "<nowiki>$1</nowiki> es esu nit jöltesch.",
"translate-checks-fudforum-syntax": "Nemm <nowiki>$1</nowiki> aanshtatt vun <nowiki>$2</nowiki> en heh dämm Projäk.",
"translate-pref-nonewsletter": "Donn mer keijn Rondschriive övver de eläktronesche Poß scheke",
- "translate-pref-editassistlang": "Shprooche för ze Hellfe:",
+ "translate-pref-editassistlang": "Schprohche för ze Hällfe:",
"prefs-translate": "Enshtällunge för et Övversäze",
"translate-pref-editassistlang-help": "En Leß met Köözelle för Schprohche.\nDe Övversäzonge en di Schprohche wääde Der jezeich, wann De aam Övversäze bes.\nWat De jezeisch kreß, wann De nix enndrähß, deiht vun dä Schprohch afhange, en di De övversaz.",
"translate-pref-editassistlang-bad": "En dä Leß es en onjöltesch Kööözel för en Schprohch: <code><nowiki>$1</nowiki></code>.",
@@ -111,13 +103,13 @@
"translate-rc-translation-filter-filter": "Don de Övversäzonge fott lohße",
"translate-rc-translation-filter-site": "Nor de Änderonge för heh dat Wikki",
"translationstats": "Schtateßteke fun de Övversäzonge",
- "translate-stats-edits": "Änderunge",
+ "translate-stats-edits": "Änderonge",
"translate-stats-users": "Övversäzer",
"translate-stats-registrations": "Aanmäldonge",
"translate-stats-reviews": "Jähjejelässe Övversäzzonge",
"translate-stats-reviewers": "Jääjelässer",
"translate-statsf-intro": "Heh_met kanns de eifach Övverseeschte un Schtatistike maache. All de Zahle sen noh bovve un noh onge bejränz.",
- "translate-statsf-options": "Enstellunge för et Zeischne",
+ "translate-statsf-options": "Ennschtällonge för et Zeischne",
"translate-statsf-width": "De Breed in Pixelle:",
"translate-statsf-height": "De Hühde in Pixelle:",
"translate-statsf-days": "Et Aanfangs-Dattum:",
@@ -128,15 +120,14 @@
"translate-statsf-scale-days": "Dare",
"translate-statsf-scale-hours": "Schtonde",
"translate-statsf-count": "Der Mohßschtaab:",
- "translate-statsf-count-edits": "Aanzahl Änderunge",
+ "translate-statsf-count-edits": "Aanzahl Änderonge",
"translate-statsf-count-users": "Aktiive Övversäzer",
"translate-statsf-count-registrations": "Neu Metmaacher",
"translate-statsf-count-reviews": "Jähjejelässe Övversäzzonge",
"translate-statsf-count-reviewers": "Jääjelässer",
- "translate-statsf-language": "En Leß fun Köözelle för Shprooche, met Kommas dozwesche:",
+ "translate-statsf-language": "En Leß fun Köözelle för Schprohche, met Kommas dozwesche:",
"translate-statsf-group": "En Leß fun Köözelle för Jroppe, met Kommas dozwesche:",
"translate-statsf-submit": "Vöraanseech",
- "translate-tag-category": "Sigge, di mer övversäze kann",
"translate-tag-page-desc": "De Övversäzong fun dä Sigg „[[$2|$1]]“ em Wikki, us dä Schprohch $3 (<code>$4</code>)",
"translate-sidebar-alltrans": "En ander Schprohche",
"translations": "Alle Övversätzonge",
@@ -145,9 +136,9 @@
"translate-translations-none": "Mer han kei Övversätzunge för „$1“",
"translate-translations-count": "{{PLURAL:$1|Ein Övversäzong|$1 Övversäzonge|Kein Övversäzong}} jefonge.",
"translate-translations-fieldset-title": "Nohreesch",
- "translate-translations-messagename": "Tittel:",
+ "translate-translations-messagename": "Nahme:",
"translate-translations-project": "Projäk:",
- "translate-translations-including-no-param": "Jif ene jöltijje Siggetittel för die Nohreesch als Parrammeeter för di Ongersigg aan",
+ "translate-translations-including-no-param": "Jif ene jöltijje Siggetettel för di Nohreesch als Parrammehter för di Ongersigg aan",
"translate-translations-history-short": "V",
"languagestats": "Schtateßteke för di Schprohch",
"languagestats-summary": "Di Sigg heh zeisch Schtateßteke vun de Övversätzonge för alle Nohreeschtejroppe un för ein Schprohch aan.",
@@ -178,11 +169,11 @@
"translate-mgs-noempty": "Donn kein Schprohche aanzeije, woh nix vun övversads es",
"translate-mgs-submit": "Lohß Jonn!",
"translate-mgs-column-language": "De Schprohch",
- "translate-mgs-totals": "Alle Shprohche zosamme",
+ "translate-mgs-totals": "Alle Schprohche zosamme",
"translate-mgs-invalid-group": "De aanjejovve Jropp „$1“ jidd_et nit.",
"translate-mgs-nothing": "För heh di Schtatistik ham_mer nix aanzezeije.",
"supportedlanguages": "Ongerschtöz Schprohche",
- "supportedlanguages-summary": "He sin alle Schprohche opjeleß, di mer {{GRAMMAR:em|{{SITENAME}}}} ongerschtöze.\nDobei schtonn de Nahme vun dä Övversäzer, di aan dä Schprohch aam ärbeide sin.\nJrühßer jeschrewwe Övversäzer han mieh övversaz, wi kleiner jeschrevve.\nJröhn jeschrevve Medmaacher han köözlesch noch jet jedonn, ruud jeschrevve han länger nix mih jedonn.",
+ "supportedlanguages-summary": "He sin alle Schprohche opjeleß, di mer {{GRAMMAR:em|{{SITENAME}}}} ongerschtöze.\nDobei schtonn de Nahme vun dä Övversäzer, di aan dä Schprohch aam ärbeide sin.\nJrühßer jeschrewwe Övversäzer han mih övversaz, wi kleiner jeschrevve.\nJröhn jeschrevve Metmaacher han köözlesch noch jet jedonn, ruud jeschrevve han länger nix mih jedonn.",
"supportedlanguages-colorlegend": "De Lejände för de Färve: De läzde Övversäzong es $1 Dääsch her.",
"supportedlanguages-portallink": "[$1] $2 — $3",
"supportedlanguages-portallink-nocldr": "<nowiki>[</nowiki>$1<nowiki>]</nowiki> $2",
@@ -190,17 +181,17 @@
"supportedlanguages-recenttranslations": "neuste Övversäzunge",
"supportedlanguages-count": "{{PLURAL:$1|Ein Schprohch|$1 Schprohche|Kein Schprohche}} ensjesamp.",
"supportedlanguages-activity": "$1: {{PLURAL:$2|Ein Änderong|$2 Änderonge|Kein Änderonge}} — de lätzde wohr {{PLURAL:$3|vör einem Daach|vör $3 Dääsch|hück}}.",
- "translate-save": "Fäßhallde ($1)",
+ "translate-save": "Faßhallde ($1)",
"translate-jssti-add": "Bei de Leß dobei donn",
"managemessagegroups": "Jroppeverwalldong",
"translate-smg-notallowed": "Di Axjuhn darfs De nit ußföhre.",
"translate-smg-nochanges": "Et jitt kein Änderonge zum Verärbeide.",
"translate-smg-submit": "Änderonge zom Verärbeide övverdraare",
"translate-smg-submitted": "De ojinaal Täxte udder Nohreeschte sen verändert woode.\nDe Änderonge wääde em Hengerjrond verärbeidt.",
- "translate-smg-more": "Et kumme noch mieh Änderonge, wann heh di affjeschek sin.",
+ "translate-smg-more": "Et kumme noch mih Änderonge, wann heh di affjeschek sin.",
"translate-smg-left": "Wat em Wiki schteiht",
"translate-smg-right": "Änderonge",
- "translate-manage-import-diff": "Tittel: $1{{int:pipe-separator}}Donn: $2",
+ "translate-manage-import-diff": "Övverschreff: $1 {{int:pipe-separator}} Donn: $2",
"translate-manage-import-new": "Neu Nohreesch $1",
"translate-manage-import-deleted": "Fottjeschmeße Nohreesch $1",
"translate-manage-action-import": "Empotteere",
@@ -208,21 +199,20 @@
"translate-manage-action-ignore": "Övverjonn",
"translate-manage-action-fuzzy": "Empotteere un Översäzunge met „!<nowiki>!</nowiki>FUZZY!!“ zom Beärbeide makeere",
"translate-manage-nochanges": "Mer han kei Änderunge aan de faßjelaate Nohreeschte för heh di Jropp.",
- "translate-manage-nochanges-other": "Mer hatte kei Änderunge för heh di Shprohch.\nMet dämm Lengk onge jeihß De retuur op di Sigg met de Einzelheite vun dä Jropp.",
+ "translate-manage-nochanges-other": "Mer hatte kei Änderunge för heh di Schprohch.\nMet dämm Lengk onge jeihß De retuur op di Sigg met de Einzelheite vun dä Jropp.",
"translate-manage-inconsistent": "Doh paß jät nit zosamme. Bes esu joot un looer noh Änderunge,\ndann versöhke et noch ens. De Einzelheite: $1",
"translate-manage-toolong": "De hühßte müjjelesche Zick för et Beärbeide vun {{PLURAL:$1|ein Sekund|$1 Sekunde|nit ens en Sekund}} es afjeloufe.\nBes esu joot, un donn dat Fomulaa noch ens affschecke, för hee wigger ze maache.",
"translate-manage-import-summary": "Mer sin en neu Version vun Ußerhallef aam Empoteere",
"translate-manage-conflict-summary": "Mer sin en neu Version vun Ußerhallef aam Empoteere. Beß esu joot, un donn se prööfe.",
- "translate-manage-fuzzy-summary": "Dä ojinaal Täx udder de ojinaal Nohreesch es verändert",
"translate-manage-submit": "Lohß Jonn!",
"translate-manage-intro-other": "He noh kütt en Leß met Änderonge aan Övversäzunge en dä Schprohch $1.\nDonn se dorschjonn, un söhk Der för jehde en Akßjuhn uß, wat De domet jemaat han wells.\nWann De entscheids, Änderunge ze övverjonn, dann es dat nor för jäds_em_Momang.",
"translate-manage-import-ok": "Mer han en neu Väsjohn fun dä Sigg „$1“ empotteet.",
"translate-manage-import-done": "Alle jedonn!",
"importtranslations": "Övversäzonge Empotteere",
"translate-import-from-local": "vun Dingem Rääschner:",
- "translate-import-load": "Datei laade",
- "translate-import-err-dl-failed": "Kunnt de Datei nit jriife:\n$1",
- "translate-import-err-ul-failed": "Di Datei huhzelaade es donevve jejange",
+ "translate-import-load": "Dattei lahde",
+ "translate-import-err-dl-failed": "Kunnt de Dattei nit jriife:\n$1",
+ "translate-import-err-ul-failed": "Di Dattei huhzelahde es donävve jejange",
"translate-import-err-invalid-title": "Dä aanjejovve Name vun dä Dattei „<nowiki>$1</nowiki>“ es nit jöltesch.",
"translate-import-err-no-such-file": "Di Datei „<nowiki>$1</nowiki>“ jidd_et nit, udder se es nit heh en et Wiki huhjelaade.",
"translate-import-err-stale-group": "De Jropp met Täxte un Nohreeschte, woh heh di Dattei bei jehüüre sull, di jidd_et jaanit.",
@@ -231,12 +221,10 @@
"translate-js-summary": "Koot Zosammejefaß:",
"translate-js-save": "Faßhalde",
"translate-js-next": "Faßhalde un op de nähkßte jonn",
- "translate-js-nonext": "Dat wor de läzde op heh dä Sigg.",
"translate-js-skip": "Jank op de nähkßte",
- "translate-js-save-failed": "Dat Afshpeishere es donävve jejange. Bes esu joot, un donn heh dä Fähler wigger jävve.",
"translate-js-history": "Dä Övversäzong ier Verjangeheit",
"translate-js-support": "Schtäll en Frohch",
- "translate-js-support-title": "Frohch noh, wann De nit jenohch Aanjaabe häs, öm heh dä Täx udder di Nohreesch joohd un akeraht ze övversäze.",
+ "translate-js-support-title": "Frohch noh, wann De nit jenohch Aanjahbe häs, öm heh dä Täx udder di Nohreesch joohd un akeraht ze övversäze.",
"translate-js-support-unsaved-warning": "Do häß onjeschpeischerte Övversäzzonge.",
"translate-gs-pos": "Posizjuhn",
"translate-gs-code": "Afjekööz",
@@ -250,23 +238,8 @@
"translate-documentation-language": "övver de Täxte un Nohreeschte",
"translate-searchprofile": "Övversäzonge",
"translate-searchprofile-tooltip": "Söhk en alle Övversäzonge",
- "translate-search-languagefilter": "Donn en Shprohch ußwähle:",
- "translate-search-nofilter": "Nä — all de Shprohche",
- "translate-messagereview-submit": "Jähjelässe!",
- "translate-messagereview-progress": "Als jähjejelässe makeere&nbsp;&hellip;",
- "translate-messagereview-failure": "Et Makeere als jähjejelässe es donävve jejange: $1",
- "translate-messagereview-done": "Jähjejelässe",
- "translate-messagereview-reviews": "Jähjejelässe vun {{PLURAL:$1|einem|$1|keinem}} Metmaacher",
- "translate-messagereview-reviewswithyou": "Jähjejelässe {{PLURAL:$1|vun Dir alleins|vun $1 Metmaacher, och vun Der sellver|bes jäz vun keinem}}.",
- "api-error-invalidrevision": "En Övversäzong hät sesch nit fenge lohße",
- "api-error-unknownmessage": "Dä Täx udder di Nohreesch wohr nit ze fenge",
- "api-error-fuzzymessage": "Di Övversäzong es als övverhollt makkeet.",
- "api-error-owntranslation": "De eije Övversäzonge kam_mer nit jähjelässe.",
- "translate-messagereview-no-fuzzy": "Övverhollte Övversäzonge kam_mer nit jähjelässe.",
- "translate-messagereview-no-own": "Ding eije Övversäzonge kanns_De nit jähjelässe.",
- "translate-messagereview-doit": "Donn heh di Ovversäzong als jähjejelässe aannämme.",
- "group-translate-proofr.css": "/* Heh di CSS jonn en et Jähjelässe vun Översäzonge */",
- "group-translate-proofr.js": "/* Heh di JavaSkrepte jonn en et Jähjelässe vun Översäzonge */",
+ "translate-search-languagefilter": "Donn en Schprohch ußwähle:",
+ "translate-search-nofilter": "Nä — all de Schprohche",
"log-name-translationreview": "Logbooch vum Övversäzonge Pröhve",
"log-description-translationreview": "Dat Logbooh hät all de Prööfunge vun Övversäzunge un Jroppe vun Nohreeschte un Täxte.",
"logentry-translationreview-message": "{{GENDER:$2|Dä|Dat|Dä Metmaacher|De|Dat}} $1 hät di Övversäzong vun „$3“ jähjejelässe.",
@@ -279,10 +252,7 @@
"action-translate-sandboxaction": "för onbeschtääteschte Övversäzer zohjelohße Saache ze maache",
"translate-workflow-state-": "(nit jesaz)",
"translate-workflowstatus": "Der Zohschtand es: $1",
- "translate-workflow-set-do": "Lohß Jonn!",
"translate-workflow-set-doing": "Ben am Waade&nbsp;...",
- "translate-workflow-set-done": "Jedonn!",
- "translate-workflow-set-error-alreadyset": "Der jewönschte Zohschtand es dä Zohschtand, wi hä jäz es.",
"translate-workflow-autocreated-summary": "Di Sigg för dä Beäbeidongszohschtand „$1“ es automattetsch aanjelaat woode.",
"translate-stats-workflow": "Zohstand",
"translate-workflowgroup-label": "Beäbeidongszohschtänd",
@@ -291,11 +261,6 @@
"translate-dynagroup-recent-desc": "Heh di Jropp vun Täxte un Nohreeschte hät all de neue Översäzonge in heh di Schprohch.\nDat es joht för et Jähjelässe.",
"translate-dynagroup-additions-label": "Köözlesch derbei jekumme",
"translate-dynagroup-additions-desc": "Di Jropp hät neue un veränderte Täxte un Nohreeschte.",
- "translate-dynagroup-by": "De Övversäzong es {{GENDER:$1|vum|vum|vum Metmaacher|vun dä|vum}} $1",
- "translate-dynagroup-byc": "De Övversäzong es {{GENDER:$1|vum|vum|vum Metmaacher|vun dä|vum}} $1 ($2)",
- "translate-dynagroup-last": "De läzde Änderung {{GENDER:$1|vum|vum|vum Metmaacher|vun dä|vum}} $1",
- "translate-dynagroup-lastc": "De läzde Änderung {{GENDER:$1|vum|vum|vum Metmaacher|vun dä|vum}} $1 ($2)",
- "translate-gethelp": "Hölp",
"translate-msggroupselector-projects": "Nohreeschtejrop",
"translate-msggroupselector-search-placeholder": "Nohrechtejropp zem Söhke",
"translate-msggroupselector-search-all": "All",
@@ -308,32 +273,34 @@
"tux-tab-translated": "Övversaz",
"tux-tab-unproofread": "Nit jähjejelässe",
"tux-edit": "Ändere",
- "tux-status-optional": "Nit nüdesch",
+ "tux-status-optional": "Nit nühdesch",
"tux-status-fuzzy": "Övverhollt",
"tux-status-proofread": "Jähjelässe",
"tux-status-translated": "Övversaz",
"tux-status-saving": "Ben aam Afseschere{{int:ellipsis}}",
"tux-status-unsaved": "Nit jeseschert",
"tux-editor-placeholder": "Ding Övversäzong",
+ "tux-editor-editsummary-placeholder": "Zesammefaßong (kann fott blihve)",
"tux-editor-paste-original-button-label": "Der Quälltäx enfööje",
"tux-editor-discard-changes-button-label": "Donn de Änderonge verjäße",
"tux-editor-save-button-label": "Di Övversäzong seschere",
"tux-editor-skip-button-label": "Jangk op de nähkßte",
- "tux-editor-cancel-button-label": "Ophüre",
+ "tux-editor-cancel-button-label": "Ophühre",
"tux-editor-confirm-button-label": "De Övversäzong beschtääteje",
- "tux-editor-shortcut-info": "Kleck op „$1“ zom Seschere udder op „$2“, öm bloß op de Nähkßte ze jonn, udder op „$3“, öm op ander Afköözonge ze kumme.",
+ "tux-editor-proofread-button-label": "Als nohjelohrt makkeere",
+ "tux-editor-shortcut-info": "Kleck op „$1“ zom Seschere udder op „$2“, öm bloß op de Nähkßte ze jonn, op „$4“, öm en Zesammefaßong enzejävve, udder op „$3“, öm op ander Afköözonge ze kumme.",
"tux-editor-edit-desc": "Donn de Äklierong ändere",
"tux-editor-add-desc": "Donn en Äklierong derbei",
"tux-editor-suggestions-title": "Vörschlähsch",
"tux-editor-in-other-languages": "En ander Schprohche",
- "tux-editor-need-more-help": "Bruchs De mieh Hölp?",
- "tux-editor-ask-help": "Frooch noh mieh Enfommazjuhne{{int:ellipsis}}",
+ "tux-editor-need-more-help": "Mih Enfommazjuhne jevällesch?",
+ "tux-editor-ask-help": "Frooch noh!",
"tux-editor-tm-match": "$1% zopaß",
- "tux-warnings-more": "{{PLURAL:$1|noch ein|noch $1|nix mieh}}.",
+ "tux-warnings-more": "{{PLURAL:$1|noch ein|noch $1|nix mih}}.",
"tux-warnings-hide": "verschteische",
"tux-editor-save-failed": "Di Övversäzong afzeschpeischere hät nit jeflup. Der Jrond es: $1",
"tux-editor-n-uses": "{{PLURAL:$1|0=nit|1=eimohl|$1 Mohl}} jebruch",
- "tux-editor-message-desc-more": "Mieh aanzeije",
+ "tux-editor-message-desc-more": "Mih aanzeije",
"tux-editor-message-desc-less": "Winnijer aanzeije",
"tux-editor-clear-translated": "Övversaz ußblände",
"tux-editor-proofreading-mode": "Jähjelässe",
@@ -345,11 +312,11 @@
"tux-editor-page-mode": "Kumplät",
"tux-editor-outdated-warning": "Heh di Övversäzong künnt Verbäßeronge nüüdesch han.",
"tux-editor-outdated-warning-diff-link": "De Ongescheide aanzeije",
- "tux-editor-doc-editor-placeholder": "Aanjaabe övver dä Täx udder di Nohreesch",
+ "tux-editor-doc-editor-placeholder": "Aanjahbe övver dä Täx udder di Nohreesch",
"tux-editor-doc-editor-save": "Faßhallde",
"tux-editor-doc-editor-cancel": "Ophühre",
- "tux-messagetable-more-messages": "{{PLURAL:$1|1=Noch ein Nohreesch|Noch $1 Nohreeschte|0=Kein Nohreeesch mieh}}",
- "tux-messagetable-loading-messages": "Ben {{PLURAL:$1|noch ein Nohreesch|noch $1 Nohreeschte|0=kein Nohreeesch mieh}} aam laade",
+ "tux-messagetable-more-messages": "{{PLURAL:$1|1=Noch ein Nohreesch|Noch $1 Nohreeschte|0=Kein Nohreeesch mih}}",
+ "tux-messagetable-loading-messages": "Ben {{PLURAL:$1|noch ein Nohreesch|noch $1 Nohreeschte|0=kein Nohreeesch mih}} aam lahde&nbsp;&hellip;",
"tux-message-filter-placeholder": "Donn de Leß beschrängke",
"tux-message-filter-result": "{{PLURAL:$1|Eine|$1|Keine}} Träffer för „$2“",
"tux-message-filter-advanced-button": "Lohß jonn!",
@@ -380,11 +347,12 @@
"tux-editor-message-tools-delete": "Schmiiß fott!",
"tux-editor-message-tools-translations": "Alle Övversäzonge",
"tux-editor-loading": "Ben aam Lahde&nbsp;…",
- "translate-search-more-languages-info": "{{PLURAL:$1|0=Kein Schprohch|1=Ein Schprohch|$1 Schprohche}} mieh",
+ "translate-search-more-languages-info": "{{PLURAL:$1|0=Söns kein Schprohch|1=Ein Schprohch mih|$1 mih Schprohche}}",
"translate-statsbar-tooltip": "$1% övversaz, $2% jähjejelässe",
"translate-statsbar-tooltip-with-fuzzy": "$1% fähdesch övversaz, $3% övverhollt, $2% jähjejelässe",
- "translate-search-more-groups-info": "{{PLURAL:$1|Ein Jrop|$1 Jroppe|Kein Jropp}} mieh",
+ "translate-search-more-groups-info": "{{PLURAL:$1|Ein Jropp|$1 Jroppe|Kein Jropp}} mih",
"translate-ulsdep-title": "Fähler bei de Enschtällonge",
"translate-ulsdep-body": "Dat Zohsazprojramm <i lang=\"en\" xml:lang=\"en\">Translate</i> bruch dat Zohsazprojramm [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector <i lang=\"en\" xml:lang=\"en\">e-mail</i>Universal Language Selector</i>].",
- "tux-session-expired": "Do bes nit mieh ennjelogg.\nBes esu johd un donn en enem extra Brauserfinster widder enlogge.\nUdder donn Ding Övversäzonge woh anders faßhallde, di noch nit em Wiki jeseschert woodte, donn neu enlogge, un jangk dann retuur op heh di Sigg, un donn Ding Övversäzonge widder erövver koppeere!"
+ "tux-session-expired": "Do bes nit mih ennjelogg.\nBes esu johd un donn en enem extra Brauserfinster widder enlogge.\nUdder donn Ding Övversäzonge woh anders faßhallde, di noch nit em Wiki jeseschert woodte, donn neu enlogge, un jangk dann retuur op heh di Sigg, un donn Ding Övversäzonge widder erövver koppeere!",
+ "tux-nojs": "Heh di Sigg bruch JahvaSkrepp."
}
diff --git a/MLEB/Translate/i18n/core/ku-latn.json b/MLEB/Translate/i18n/core/ku-latn.json
index 69423f88..a9c77e9d 100644
--- a/MLEB/Translate/i18n/core/ku-latn.json
+++ b/MLEB/Translate/i18n/core/ku-latn.json
@@ -3,19 +3,18 @@
"authors": [
"George Animal",
"Ghybu",
- "Gomada"
+ "Gomada",
+ "Bikarhêner"
]
},
"translate": "Wergerîne",
- "translate-taskui-view": "Hemû peyaman nîşan bide",
- "translate-taskui-untranslated": "Mesajên newergerandî nîşan bide",
- "translate-taskui-acceptqueue": "Tenê peyamên ku ez dikarim wek nirxandî nîşan bidim",
- "translate-taskui-reviewall": "Hemû wergera binirxîne",
"translate-taction-translate": "Wergerîne",
"translate-taction-proofread": "Nirxandin",
"translate-taction-lstats": "Statîstîkên ziman",
"translate-taction-mstats": "Statîstîkên koma peyamê",
+ "translate-taction-export": "Derxîne",
"translate-language-disabled": "Wergerandin bo vî zimanî hatiye astengkirin.",
+ "translate-page-settings-legend": "Eyar",
"translate-page-group": "Kom",
"translate-page-language": "Ziman",
"translate-page-limit": "Sînor",
@@ -25,7 +24,7 @@
"translate-prev": "Rûpela berî",
"translate-page-description-legend": "Agahiyên di derbarê komê de",
"translate-page-edit": "biguherîne",
- "translate-ext-url": "<hr />Malper: $1",
+ "translate-optional": "(ne pêwîst)",
"translate-edit-title": "Biguherîne \"$1\"",
"translate-edit-definition": "Peyama orjînal",
"translate-edit-translation": "Werger",
@@ -35,6 +34,7 @@
"translate-edit-tmmatch": "$1% lê tê",
"translate-edit-nopermission": "Bona tu karibî peyaman wergerînî mafên wergerandinê pêwist e.",
"translate-edit-askpermission": "Destûrê bistîne",
+ "translate-export-form-format": "Format",
"translate-magic-module": "Modul:",
"translate-magic-submit": "Here",
"translate-magic-cm-export": "Bişîne",
@@ -42,10 +42,12 @@
"translate-magic-cm-original": "Orjînal",
"translate-magic-cm-comment": "Şîrove:",
"translate-magic-cm-save": "Tomar bike",
+ "translate-magic-cm-savefailed": "Tomarkirin têkçû",
"translate-magic-notsaved": "Guherandina te nehate tomarkirin!",
- "translate-magic-saved": "Guherandinên te biserkeftî hatin tomarkirin.",
+ "translate-magic-saved": "Guherandinên te hatin tomarkirin.",
"translate-pref-editassistlang": "Zimanên alîkar:",
"prefs-translate": "Vebijarkên wergerê",
+ "right-translate-manage": "Komên peyaman bi rêve bibe.",
"right-translate-messagereview": "Wergeran binirxîne",
"translate-rc-translation-filter": "Wergeran parzûn bike:",
"translate-rc-translation-filter-no": "Ti tiştî neke",
@@ -55,6 +57,7 @@
"translate-stats-edits": "Guherandin",
"translate-stats-users": "Wergêr",
"translate-stats-reviews": "Nirxandin",
+ "translate-stats-reviewers": "Nirxandêr",
"translate-statsf-scale-months": "Meh",
"translate-statsf-scale-weeks": "Hefte",
"translate-statsf-scale-days": "Roj",
@@ -64,8 +67,8 @@
"translate-statsf-count-users": "Wergêrên çalak",
"translate-statsf-count-registrations": "Bikarhênerên nû",
"translate-statsf-count-reviews": "Nirxandinên wergerê",
+ "translate-statsf-count-reviewers": "Nirxandêr",
"translate-statsf-submit": "Pêşdîtin",
- "translate-tag-category": "Rûpelên wergerbar",
"translate-sidebar-alltrans": "Bi zimanên din",
"translations": "Hemû werger",
"translate-translations-no-message": "\"$1\" peyamek e ku nikare bê wergerandin",
@@ -76,9 +79,14 @@
"translate-translations-project": "Proje:",
"translate-translations-history-short": "d",
"languagestats": "Statîstîkên ziman",
+ "languagestats-summary": "Ev rûpel statîstîkên wergerandinê bo hemû komên peyaman bo zimanekî nîşan dide.",
"messagegroupstats-summary": "Ev rûpel statîstîkên koma peyamê nîşan dide.",
"languagestats-stats-for": "Statîstîkên wergerê bo $1 ($2)",
"languagestats-recenttranslations": "wergerên dawî",
+ "translate-langstats-expand": "veke",
+ "translate-langstats-collapse": "bigre",
+ "translate-langstats-expandall": "hemûyan veke",
+ "translate-langstats-collapseall": "hemûyan bigre",
"translate-language-code": "Koda ziman",
"translate-language-code-field-name": "Koda ziman:",
"translate-language": "Ziman",
@@ -95,37 +103,38 @@
"translate-mgs-column-language": "Ziman",
"translate-mgs-totals": "Hemû ziman bi hev re",
"supportedlanguages": "Zimanên tên bikaranîn",
+ "supportedlanguages-summary": "Ev rûpel lîsteya hemû zimananên ku {{SITENAME}} piştgiriyê dide wan, û wergerên ku li ser vî zimanî dixebitin, nîşan dide.\nGava navê wergêrekî mezintir xuya dike, ev tê wê wateyê ku ev wergêr gelek caran beşdar bûye.\nRengên binxetekê çalakiya wergêr nîşan didin.",
+ "supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|Wergêr}}|Wergêr}}: $1",
"supportedlanguages-recenttranslations": "wergerên niha",
+ "supportedlanguages-count": "Bi tevahî $1 {{PLURAL:$1|ziman}}",
"translate-save": "($1) tomar bike",
"translate-jssti-add": "Têxe lîsteyê",
+ "managemessagegroups": "Birêvebirina komên peyaman",
"translate-manage-import-diff": "Peyam $1 |Çalakî: $2",
"translate-manage-import-new": "Mesaja nû $1",
"translate-manage-import-deleted": "Peyama jêbirî $1",
"translate-manage-action-import": "Tevlî bike",
+ "translate-manage-action-ignore": "Paşguh bike",
"translate-import-load": "Dosyeyê bar bike",
"translate-js-summary": "Kurte:",
"translate-js-save": "Tomar bike",
- "translate-js-nonext": "Ev li ser vê rûpelê peyama dawî bû.",
"translate-js-skip": "Derbasî ya din bibe",
"translate-js-history": "Dîroka wergerê",
- "translate-js-support": "Pirs bike",
+ "translate-js-support": "Bipirse",
"translate-js-support-unsaved-warning": "Wergerên te yên newergerandî hene.",
"translate-gs-code": "Kod",
"translate-gs-continent": "Parzemîn",
"translate-gs-speakers": "Axaftvan",
+ "translate-gs-count": "Hejmar",
"translate-gs-total": "Hemû",
+ "translate-documentation-language": "Alikariya wergerandinê",
"translate-searchprofile": "Werger",
- "translate-messagereview-submit": "Wek nirxandî nîşan bide",
- "translate-messagereview-done": "Nirxandî",
- "api-error-invalidrevision": "Werger nehat dîtin",
- "api-error-unknownmessage": "Peyam nehat dîtin",
- "translate-messagereview-doit": "Vê wergerê wek nirxandî nîşan bide",
"log-name-translationreview": "Têketina nirxandina wergeran",
"logentry-translationreview-message": "$1 wergera $3 {{GENDER:$2|nirxand}}",
"translate-dynagroup-recent-label": "Wergerên dawî",
+ "translate-dynagroup-recent-desc": "Ev koma peyaman hemû wergerandinên dawî ber bi vî zimanî ve nîşan dide. Bo karên nirxandinê pir bikêr e.",
"translate-dynagroup-additions-label": "Lêzêdekirinên dawî",
"translate-dynagroup-additions-desc": "Ev koma peyaman peyamên nû û guherandî nîşan dide.",
- "translate-gethelp": "Alîkarî",
"translate-msggroupselector-projects": "Koma peyaman",
"translate-msggroupselector-search-placeholder": "Li koman bigere",
"translate-msggroupselector-search-all": "Hemû",
@@ -196,6 +205,8 @@
"tux-editor-message-tools-delete": "Jê bibe",
"tux-editor-message-tools-translations": "Hemû werger",
"tux-editor-loading": "Tê barkirin...",
+ "translate-search-more-languages-info": "{{PLURAL:$1|Zimanekî din|$1 zimanên din}}",
"translate-statsbar-tooltip": "$1% wergerandî, $2% nirxandî",
- "translate-statsbar-tooltip-with-fuzzy": "$1% wergerandî, $2% nirxandî, $3% kevnbûyî"
+ "translate-statsbar-tooltip-with-fuzzy": "$1% wergerandî, $2% nirxandî, $3% kevnbûyî",
+ "translate-search-more-groups-info": "{{PLURAL:$1|Komeka din|$1 komên din}}"
}
diff --git a/MLEB/Translate/i18n/core/ky.json b/MLEB/Translate/i18n/core/ky.json
index 186de502..ffd970dc 100644
--- a/MLEB/Translate/i18n/core/ky.json
+++ b/MLEB/Translate/i18n/core/ky.json
@@ -56,8 +56,6 @@
"translate-js-save": "Сактоо",
"translate-gs-code": "Код",
"translate-searchprofile": "Котормолор",
- "translate-messagereview-submit": "Кабыл алуу",
- "translate-gethelp": "Жардам",
"translate-msggroupselector-search-all": "Баары",
"tux-languageselector": "Тил",
"tux-tab-all": "Баары",
diff --git a/MLEB/Translate/i18n/core/la.json b/MLEB/Translate/i18n/core/la.json
index 4b2f61c1..00a2c328 100644
--- a/MLEB/Translate/i18n/core/la.json
+++ b/MLEB/Translate/i18n/core/la.json
@@ -2,12 +2,14 @@
"@metadata": {
"authors": [
"SPQRobin",
- "UV"
+ "UV",
+ "Andrew Dalby"
]
},
"translate": "Traducere",
"translate-next": "Pagina proxima",
"translate-prev": "Pagina superior",
"translate-magic-cm-save": "Servare",
- "translate-sidebar-alltrans": "Linguis aliis"
+ "translate-sidebar-alltrans": "Linguis aliis",
+ "translate-documentation-language": "Ut facilius convertatur"
}
diff --git a/MLEB/Translate/i18n/core/lb.json b/MLEB/Translate/i18n/core/lb.json
index 6e9074e7..43ce343d 100644
--- a/MLEB/Translate/i18n/core/lb.json
+++ b/MLEB/Translate/i18n/core/lb.json
@@ -7,12 +7,8 @@
]
},
"translate": "Iwwersetzt",
+ "translate-extensionname": "Iwwersetzen",
"translate-desc": "[[Special:Translate|Spezialsäit]] fir d'Iwwersetzung vu MediaWiki-Systemmessagen a fir Aneres",
- "translate-taskui-view": "All Message weisen",
- "translate-taskui-untranslated": "Net iwwersate Message weisen",
- "translate-taskui-optional": "Optional Message weisen.",
- "translate-taskui-acceptqueue": "Nëmme Messagen déi ech als nogekuckt markéieren däerf",
- "translate-taskui-reviewall": "All Iwwersetzungen nokucken",
"translate-taskui-export-to-file": "Am native Format exportéieren",
"translate-taskui-export-as-po": "Exportéiere fir off-line z'iwwersetzen",
"translate-taction-translate": "Iwwersetzen",
@@ -41,7 +37,6 @@
"translate-page-description-hasoptional": "An dësem Groupe vu Message sinn optional Messagen.\nOptional Message sollen nëmmen iwwersat gi wann Är Sprooch speziell Ufuerderungen huet wéi zum Beispill datt Espacen net benotzt ginn oder eng Transliteratioun vu speziellen Nimm. $1",
"translate-page-description-hasoptional-open": "Optional Message weisen.",
"translate-page-edit": "änneren",
- "translate-ext-url": "<hr />Internet-Site: $1",
"translate-optional": "(optional)",
"translate-ignored": "(ignoréiert)",
"translate-edit-title": "\"$1\" änneren",
@@ -51,14 +46,16 @@
"translate-edit-no-information": "<em>Dëse Message huet keng Dokumentatioun.\nWann Dir wësst wou oder wéi dëse Message gebraucht gëtt, da kënnt Dir aner Iwwersetzer hëllefen an deem Dir Informatiounen iwwer dëse Message gitt.</em>",
"translate-edit-information": "Informatioun iwwer de Message ($1)",
"translate-edit-in-other-languages": "Message an anere Sproochen",
- "translate-edit-committed": "Aktuell Iwwersetzung an der Software",
"translate-edit-warnings": "Warnunge virun onkompletten Iwwersetzungen",
- "translate-edit-tmsugs": "Automatesch Virschléi aus aneren Iwwersetzungen",
"translate-edit-tmmatch-source": "Quelltext fir d'Iwwersetzung: $1",
- "translate-edit-tmmatch": "$1% Iwwereestëmmung",
+ "translate-edit-tmmatch": "$1% Iwwereneestëmmung",
"translate-use-suggestion": "Déi aktuell Iwwersetzung duerch dëse Virschlag ersetzen.",
"translate-edit-nopermission": "Dir braucht eng Iwwersetzungsrechter fir Messagen z'iwwersetzen.",
"translate-edit-askpermission": "Autorisatioun kréien",
+ "exporttranslations": "Iwwersetzungen exportéieren",
+ "translate-export-form-format": "Format",
+ "translate-export-invalid-format": "Gitt w.e.g. e valabele Format an.",
+ "translate-export-not-supported": "Den Export vun Iwwersetzunge gëtt net ënnerstëtzt.",
"translate-magic-pagename": "Erweidert MediaWiki Iwwersetzung",
"translate-magic-help": "Dir kënnt d'Aliase vu Spezialsäiten, magesch Wierder an Nummraum Nimm iwwersetzen.\n\nSpezial Säit ''Aliasen'' a ''magesch Wierder'' kënne méi Iwwersetzungen hunn.\nIwwersetzunge gi mat engem Komma (,) getrennt.\nNummraim kënnen nëmmen eng Iwwersetzung hunn.\n\nD'Iwwersetzung vum Diskussiouns-Nummraum vum Projet <code>$1 Diskussioun</code> ka komplizéiert sinn.\n<code>$1</code> gëtt duerch den Numm vum Projet ersat ersat (zum Beispill <code>{{ns:project_talk}}</code>).\nWann et an Ärer Sprooch net méiglech ass fir e gëltegen Ausdrock ze maachen ouni den NUmm vum Site z'änneren, da kontaktéiert eis w.e.g op [[Support]].\n\nDir musst am Grupp vun den Iwwersetzer si fir Ännerungen ofspäicheren ze kënnen.\nÄnnerunge ginn net gespäichert bis Dir de Knäppchen hei ënnendrënner geklickt hutt.",
"translate-magic-module": "Modul:",
@@ -77,7 +74,7 @@
"translate-magic-namespace": "Nummraum Nimm",
"translate-magic-notsaved": "Är Ännerung gouf net gespäichert!",
"translate-magic-errors": "Verbessert w.e.g. {{PLURAL:$1|dëse|dës}} Feeler an den Iwwersetzungen:",
- "translate-magic-saved": "Är Ännerunge goufe gespäichert",
+ "translate-magic-saved": "Är Ännerunge goufe gespäichert.",
"translate-checks-parameters": "{{PLURAL:$2|Dëse Parameter gëtt|Dës Parameter ginn}} net benotzt:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-parameters-unknown": "{{PLURAL:$2|Dëse Parameter ass|Dës Parameter sinn }} onbekannt:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-balance": "Et gëtt eng ongerued Zuel vu {{PLURAL:$2|Klammere|Klammere}} benotzt:\n<strong><nowiki>$1</nowiki></strong>",
@@ -104,7 +101,14 @@
"right-translate-import": "Offline Iwwersetzungen importéieren",
"action-translate-import": "offline Iwwersetzungen importéieren",
"right-translate-messagereview": "Iwwersetzungen nokucken",
+ "action-translate-messagereview": "Iwwersetzungen nokucken",
"right-translate-groupreview": "De Workflow vun de Gruppe vu Messagen nokucken",
+ "translate-rcfilters-translations": "Iwwersetzungen",
+ "translate-rcfilters-translations-only-label": "Iwwersetzungen",
+ "translate-rcfilters-translations-only-desc": "Ännerungen op iwwersate Säiten.",
+ "translate-rcfilters-translations-filter-label": "Keng Iwwersetzungen",
+ "translate-rcfilters-translations-filter-desc": "All Ännerunge déi keng Iwwersetzunge sinn.",
+ "translate-rcfilters-translations-site-label": "Systemmessagen",
"translate-rc-translation-filter": "Iwwersetzunge filteren:",
"translate-rc-translation-filter-no": "Näischt maachen",
"translate-rc-translation-filter-only": "Nëmmen Iwwersetzunge weisen",
@@ -136,7 +140,6 @@
"translate-statsf-language": "Komma-getrennte Lëscht vun de Sproochcoden:",
"translate-statsf-group": "Komma-getrennte Lëscht vun de Gruppecoden:",
"translate-statsf-submit": "Kucken ouni ofzespäicheren",
- "translate-tag-category": "Sàiten déi iwwersat kënne ginn",
"translate-tag-page-desc": "Iwwersetzung vun der Wiki-Säit [[$2|$1]] vu(n) $3 ($4).",
"translate-sidebar-alltrans": "An anere Sproochen",
"translations": "All Iwwersetzungen",
@@ -178,18 +181,20 @@
"translate-mgs-noempty": "Déi Sprooche fir déi et keng Iwwersetzung gëtt net weisen",
"translate-mgs-submit": "Statistike weisen",
"translate-mgs-column-language": "Sprooch",
- "translate-mgs-totals": "All Sproochen zesummen",
+ "translate-mgs-totals": "All $1 {{PLURAL:$1|Sprooch|Sproochen}} zesummen",
"translate-mgs-invalid-group": "De spezifizéierte Grupp $1 gëtt et net.",
"translate-mgs-nothing": "Fir déi gefrote Statistike gëtt et näischt fir ze weisen.",
"supportedlanguages": "Ënnerstëtzt Sproochen",
"supportedlanguages-summary": "Op dëser Säit steet eng Lëscht vun alle Sproochen déi op {{SITENAME}} ënnerstëtzt ginn, zesumme mam Numm vun den Iwwersetzer déi un där Sprooch schaffen.\nDen Numm vum Iwwersetzer ass méi grouss desto méi Iwwersetzungen de Benotzer gemaach huet.\nD'Faarf mat där den Numm vum Benotzer ënnerstrach ass weist wéi rezent dee Benotzer hei aktiv war.",
"supportedlanguages-colorlegend": "Erklärung vun de Faarwen: Lescht Iwwersetzung viru(n) $1 Deeg.",
+ "supportedlanguages-sqlite-error": "SQLite gëtt net ënnerstëtzt",
"supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|Iwwersetzer}}}}: $1",
"supportedlanguages-recenttranslations": "rezent Iwwersetzungen",
"supportedlanguages-count": "{{PLURAL:$1|Eng Sprooch|$1 Sproochen}} am Ganzen.",
"supportedlanguages-activity": "$1: $2 {{PLURAL:$2|Ännerung|Ännerungen}} - lescht Ännerung viru(n) $3 {{PLURAL:$3|Dag|Deeg}}",
+ "abusefilter-edit-builder-vars-translate-source-text": "Quelltext vun der Iwwersetzungseenheet",
"translate-save": "Späicher ($1)",
- "translate-jssti-add": "Op d'Lëscht derbäisetzen",
+ "translate-jssti-add": "Op d'Lëscht dobäisetzen",
"managemessagegroups": "Gestioun vun de Gruppe vu Messagen",
"translate-smg-notallowed": "Dir däerft dës Aktioun net maachen.",
"translate-smg-nochanges": "Et gëtt keng Ännerunge fir ze verschaffen.",
@@ -211,7 +216,6 @@
"translate-manage-toolong": "Déi maximal Zäit vun der Beaarbechtung vun $1 {{PLURAL:$1|Sekonn|Sekonne}} gouf iwwerschratt.\nSchéckt de Formulaire w.e.g. nach emol fir mat der Beaarbechtung weiderzefueren.",
"translate-manage-import-summary": "Eng nei Versioun vun enger externer Quell gëtt importéiert",
"translate-manage-conflict-summary": "En nei Versioun gëtt vun enger externer Quell imortéiert. W.e.g. nokucken.",
- "translate-manage-fuzzy-summary": "D'Definitioun vum Message huet geännert",
"translate-manage-submit": "Maachen",
"translate-manage-intro-other": "Ënnendrënner ass eng Lëscht vun den Ännerungen vun den Iwwersetzungen an der Sprooch $1.\nKuckt d'Ännerunge w.e.g. no a wielt déi Aktioun déi Dir fir déi jeeweileg Iwwersetzung wëllt.\nWann Dir decidéiert fir Ännerungen z'ignoréieren, ass dës Aktioun just temporär.",
"translate-manage-import-ok": "Importéiert: $1",
@@ -229,9 +233,7 @@
"translate-js-summary": "Resumé:",
"translate-js-save": "Späicheren",
"translate-js-next": "Späicheren an den Nächsten opmaachen",
- "translate-js-nonext": "Dëst war de leschte Message op dëser Säit",
"translate-js-skip": "Op den Nächste goen",
- "translate-js-save-failed": "D'Späicheren huet net funktionéiert. Mellt dëse Feeler w.e.g.",
"translate-js-history": "Versioune vun der Iwwersetzung",
"translate-js-support": "Fro stellen",
"translate-js-support-title": "Frot no Hëllef wann net genuch Informatiounen do si fir de Message korrekt z'iwwersetzen",
@@ -250,19 +252,6 @@
"translate-searchprofile-tooltip": "An allen Iwwersetzunge sichen",
"translate-search-languagefilter": "Filter no der Sprooch:",
"translate-search-nofilter": "Kee Filter",
- "translate-messagereview-submit": "nogekuckt markéieren",
- "translate-messagereview-progress": "Als nogekuckt markéieren...",
- "translate-messagereview-failure": "Als nogekuckt markéieren huet net funktionéiert: $1",
- "translate-messagereview-done": "Nogekuckt",
- "translate-messagereview-reviews": "Nogekuckt vu(n) {{PLURAL:$1|engem|$1}} Benotzer",
- "translate-messagereview-reviewswithyou": "Nogekuckt vu(n) {{PLURAL:$1|Iech|$1 Benotzer, Iech ageschloss}}",
- "api-error-invalidrevision": "D'Iwwersetzung gouf net fonnt",
- "api-error-unknownmessage": "De Message gouf net fonnt",
- "api-error-fuzzymessage": "D'Iwwersetzung ass als 'fuzzy' markéiert",
- "api-error-owntranslation": "Dir kënnt Är eegen Iwwersetzungen net als nogekuckt markéieren.",
- "translate-messagereview-no-fuzzy": "'Fuzzy'-Iwwersetzunge kënnen net als nogekuckt markéiert ginn.",
- "translate-messagereview-no-own": "Dir kënnt Är eegen Iwwersetzungen net als nogekuckt markéieren.",
- "translate-messagereview-doit": "Dës Iwwersetzung als nogekuckt markéieren.",
"log-name-translationreview": "Logbuch vun den nogekuckten Iwwersetzungen",
"log-description-translationreview": "Logbuch vun allen nogekuckten Iwwersetzungen a Gruppe vu Messagen.",
"logentry-translationreview-message": "$1 {{GENDER:$2|huet}} d'Iwwersetzung $3 nogekuckt",
@@ -274,10 +263,7 @@
"right-translate-sandboxaction": "Aktiounen ausféieren déi fir Sandkëschtbenotzer autoriséiert sinn",
"translate-workflow-state-": "(net agestallt)",
"translate-workflowstatus": "Statut: $1",
- "translate-workflow-set-do": "Astellen",
"translate-workflow-set-doing": "Astellen...",
- "translate-workflow-set-done": "Agestallt!",
- "translate-workflow-set-error-alreadyset": "Den ugefrote Status ass identesch mam aktuelle Status.",
"translate-workflow-autocreated-summary": "Automatescht Uleeë vun der Säit fir de Statut vum Workflow $1",
"translate-stats-workflow": "Statut",
"translate-workflowgroup-label": "Etappe vum Workflow",
@@ -286,11 +272,6 @@
"translate-dynagroup-recent-desc": "Dëse Grupp vu Message weist all rezent Iwwersetzungen an dës Sprooch.\nDëst ass ganz nëtzlech fir d'Aufgabe vum Nokucken.",
"translate-dynagroup-additions-label": "Rezent nei Message",
"translate-dynagroup-additions-desc": "Dëse Grupp vu Message weist nei oder geännert Messagen.",
- "translate-dynagroup-by": "Iwwersetzung vum {{GENDER:$1|$1}}",
- "translate-dynagroup-byc": "Iwwersetzung vum {{GENDER:$1|$1}} ($2)",
- "translate-dynagroup-last": "Lescht Ännerung vum {{GENDER:$1|$1}}",
- "translate-dynagroup-lastc": "Lescht Ännerung vum {{GENDER:$1|$1}} ($2)",
- "translate-gethelp": "Hëllef",
"translate-msggroupselector-projects": "Grupp vu Messagen",
"translate-msggroupselector-search-placeholder": "An de Gruppe sichen",
"translate-msggroupselector-search-all": "All",
@@ -309,21 +290,24 @@
"tux-status-translated": "Iwwersat",
"tux-status-saving": "Späicheren...",
"tux-status-unsaved": "Net gespäichert",
+ "tux-save-unknown-error": "En onbekannte Feeler ass geschitt.",
"tux-editor-placeholder": "Är Iwwersetzung",
+ "tux-editor-editsummary-placeholder": "Resumé (fakultativ)",
"tux-editor-paste-original-button-label": "Quelltext drasetzen",
"tux-editor-discard-changes-button-label": "Ännerungen annuléieren",
"tux-editor-save-button-label": "Iwwersetzung späicheren",
"tux-editor-skip-button-label": "Op den Nächste goen",
"tux-editor-cancel-button-label": "Ofbriechen",
"tux-editor-confirm-button-label": "Iwwersetzung confirméieren",
- "tux-editor-shortcut-info": "Dréckt \"$1\" fir ze späicheren oder \"$2\" fir op den nächste Message ze goen oder \"$3\" fir aner Tasturkierzel.",
+ "tux-editor-proofread-button-label": "Als nogekuckt markéieren",
+ "tux-editor-shortcut-info": "Dréckt \"$1\" fir ze späicheren oder \"$2\" fir op den nächste Message ze goen oder \"$4\" fir e Resumé unzeginn oder \"$3\" fir aner Tasturkierzel.",
"tux-editor-edit-desc": "Dokumentatioun änneren",
- "tux-editor-add-desc": "Dokumentatioun derbäisetzen",
+ "tux-editor-add-desc": "Dokumentatioun dobäisetzen",
"tux-editor-suggestions-title": "Virschléi",
"tux-editor-in-other-languages": "An anere Sproochen",
"tux-editor-need-more-help": "Braucht Dir méi Hëllef?",
"tux-editor-ask-help": "No méi Informatioune froen",
- "tux-editor-tm-match": "$1% Iwwereestëmmung",
+ "tux-editor-tm-match": "$1% Iwwereneestëmmung",
"tux-warnings-more": "{{PLURAL:$1|$1 méi}}",
"tux-warnings-hide": "verstoppen",
"tux-editor-save-failed": "D'Späichere vun der Iwwersetzung huet net funktionéiert: $1",
@@ -371,9 +355,11 @@
"tux-editor-close-tooltip": "Zoumaachen",
"tux-editor-expand-tooltip": "Opklappen",
"tux-editor-collapse-tooltip": "Zesummeklappen",
+ "tux-editor-message-tools-show-editor": "Am Wiki-Editeur weisen",
"tux-editor-message-tools-history": "Versiounen",
"tux-editor-message-tools-delete": "Läschen",
"tux-editor-message-tools-translations": "All Iwwersetzungen",
+ "tux-editor-message-tools-linktothis": "Link op dëse Message",
"tux-editor-loading": "Lueden...",
"translate-search-more-languages-info": "{{PLURAL:$1|Eng Sprooch|$1 Sprooche}} méi",
"translate-statsbar-tooltip": "$1% iwwersat, $2% nogekuckt",
@@ -381,5 +367,6 @@
"translate-search-more-groups-info": "$1 weider {{PLURAL:$1|Grupp|Gruppen}}",
"translate-ulsdep-title": "Astellungsfeeler",
"translate-ulsdep-body": "D'Iwwersetzungerweiderung hänkt vun der [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector Universeller Sproochauswiel-Erweiderung] of.",
- "tux-session-expired": "Dir sidd net méi ageloggt. Loggt Iech w.e.g. an engem separaten Tab an. Alternativ kënnt Dir och eng Kopie vun den net-gespäicherten Iwwersetzunge maachen, Iech aloggen an op dës Säit zréckkommen."
+ "tux-session-expired": "Dir sidd net méi ageloggt. Loggt Iech w.e.g. an engem separaten Tab an. Alternativ kënnt Dir och eng Kopie vun den net-gespäicherten Iwwersetzunge maachen, Iech aloggen op dës Säit zréckkommen an Är Iwwersetzungen nees aginn.",
+ "tux-nojs": "Dësen Tool funktionéiert net ouni JavaScript. JavaScript ass ausgeschalt, funktionéiert net oder dëse Browser gëtt net ënnerstëtzt."
}
diff --git a/MLEB/Translate/i18n/core/li.json b/MLEB/Translate/i18n/core/li.json
index ac50e2da..bd816d92 100644
--- a/MLEB/Translate/i18n/core/li.json
+++ b/MLEB/Translate/i18n/core/li.json
@@ -7,12 +7,90 @@
]
},
"translate": "Vertale",
+ "translate-desc": "[[Special:Translate|Speciaal pagina]] veur 't euverzètte van MediaWiki en mieë",
+ "translate-taskui-export-to-file": "Veur oet in oearsprunkelike indeiling",
+ "translate-taskui-export-as-po": "Veur oet veur offline-euverzètte",
+ "translate-taction-translate": "Zèt euver",
+ "translate-taction-proofread": "Kiek nao",
+ "translate-taction-lstats": "Spraokstattestieke",
+ "translate-taction-mstats": "Berichgroepstattestieke",
+ "translate-taction-export": "Veur oet",
+ "translate-taction-disabled": "Dees hanjeling is oetgezatj op deze wiki.",
+ "translate-page-no-such-language": "De opgegaove spraokcode is óngeljig.",
+ "translate-page-no-such-group": "De opgegaove groep is óngeljig.",
+ "translate-page-disabled": "Euverzèttinge nao dees spraok zint in dees groep oetgezatj. Raeje:\n\n<em>$1</em>",
+ "translate-language-disabled": "Euverzètte nao dees spraok is oetgezatj.",
"translate-page-settings-legend": "Insjtellinge",
"translate-page-group": "Gróp",
"translate-page-language": "Taal",
"translate-page-limit": "Maximaal",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|berich|berichte}} de pagina",
"translate-submit": "Ophaole",
+ "translate-page-navigation-legend": "Navigatie",
+ "translate-page-showing": "De berichte $1 tot $2 van $3 waere getuind.",
+ "translate-page-showing-all": "$1 {{PLURAL:$1|berich weurt|berichte waere}} getuind.",
+ "translate-page-showing-none": "Gein berichte te tuine.",
"translate-next": "Volgende pazjena",
"translate-prev": "Veurige pazjena",
- "translate-optional": "(optioneel)"
+ "translate-page-description-legend": "Informasie euver de groep",
+ "translate-page-description-hasoptional-open": "Tuin keusvrie berichte.",
+ "translate-page-edit": "bewirk",
+ "translate-optional": "(optioneel)",
+ "translate-ignored": "(euvergeslage)",
+ "translate-edit-title": "Bewirk \"$1\"",
+ "translate-edit-definition": "Berichbepaoling",
+ "translate-edit-translation": "Euverzètting",
+ "translate-edit-contribute": "draag bie",
+ "translate-edit-in-other-languages": "Berich in anger spraoke",
+ "translate-edit-warnings": "Waorsjoewinge euver ónjuuste euverzèttinge",
+ "translate-edit-tmmatch-source": "Brónteks veur euverzètting: $1",
+ "translate-edit-tmmatch": "$1% euvereinkóms",
+ "translate-use-suggestion": "Vervang de hujige euverzètting door dit veurstèl.",
+ "translate-edit-nopermission": "Doe mós euverzètrechte höbbe veur berichte de kónne euverzètte.",
+ "translate-edit-askpermission": "Krieg toustumming",
+ "exporttranslations": "Veur euverzèttinge oet",
+ "translate-export-form-format": "Indeiling",
+ "translate-magic-cm-save": "Slaon op",
+ "translate-rcfilters-translations": "Euverzèttinge",
+ "translate-rcfilters-translations-only-label": "Euverzèttinge",
+ "translate-rcfilters-translations-only-desc": "Verangeringe aan euvergezatje pagina's.",
+ "translate-rcfilters-translations-filter-label": "Gein euverzèttinge",
+ "translate-rcfilters-translations-filter-desc": "Alle verangeringe die gein euverzèttinge zeen.",
+ "translate-rcfilters-translations-site-label": "Systeemtekste",
+ "translate-rcfilters-translations-site-desc": "Aanpassinge aan systeemtekste in de MediaWiki-naamruumde.",
+ "translate-rc-translation-filter": "Filter euverzèttinge:",
+ "translate-rc-translation-filter-no": "Dooch nieks",
+ "translate-rc-translation-filter-only": "Tuin allein euverzèttinge",
+ "translate-rc-translation-filter-filter": "Filter euverzèttinge d'roet",
+ "translate-rc-translation-filter-site": "Allein verangeringe aan plaatselike systeemtekste",
+ "translationstats": "Euverzèttingsstattestieke",
+ "translate-stats-edits": "Bewirkinge",
+ "translate-stats-users": "Euverzètters",
+ "translate-stats-registrations": "Aanmeljinge",
+ "translate-stats-reviews": "Prooflaezinge",
+ "translate-stats-reviewers": "Prooflaezers",
+ "translate-statsf-intro": "Doe kins via dit formulier einveljige stattestieke samestèlle.\nAlle waerd höbbe 'ne limiet aan de baove- en de óngerkantj.",
+ "translate-statsf-options": "Grafiekopsjes",
+ "translate-statsf-width": "Pixelbrèdje:",
+ "translate-statsf-height": "Pixelhuuegdje:",
+ "translate-statsf-days": "Tiedsdoer kwa daag:",
+ "translate-statsf-start": "Begindatum:",
+ "translate-statsf-scale": "Granulariteit:",
+ "translate-statsf-scale-months": "Maondj",
+ "translate-statsf-scale-weeks": "Waeke",
+ "translate-statsf-scale-days": "Daag",
+ "translate-statsf-scale-hours": "Oer",
+ "translate-statsf-count": "Einheid:",
+ "translate-statsf-count-edits": "Aantaal bewirkinge",
+ "translate-statsf-count-users": "Aktief euverzètters",
+ "translate-statsf-count-registrations": "Nuuj gebroekers",
+ "translate-statsf-count-reviews": "Proofgelaeze euverzèttinge",
+ "translate-statsf-count-reviewers": "Prooflaezers",
+ "translate-statsf-language": "Lies van spraokcodes gesjèdj door komma's:",
+ "translate-statsf-group": "Lies van groepscodes gesjèdj door komma's:",
+ "translate-statsf-submit": "Veurvertuining",
+ "translate-tag-page-desc": "Euverzètting van de wikipagina [[$2|$1]] vanoet $3 ($4).",
+ "translate-sidebar-alltrans": "In anger spraoke",
+ "translations": "Alle euverzèttinge",
+ "translate-documentation-language": "Besjeidbesjrieving"
}
diff --git a/MLEB/Translate/i18n/core/lki.json b/MLEB/Translate/i18n/core/lki.json
index c9e929d5..ca0f6f67 100644
--- a/MLEB/Translate/i18n/core/lki.json
+++ b/MLEB/Translate/i18n/core/lki.json
@@ -1,8 +1,168 @@
{
"@metadata": {
"authors": [
- "Hosseinblue"
+ "Hosseinblue",
+ "Lakzon"
]
},
- "translate-taction-export": "در بِردن"
+ "translate": "چاوواشەکِردن زوون",
+ "translate-extensionname": "چاوواشەکِردن زوون",
+ "translate-desc": "[[Special:Translate|صفحهٔ ویژه‌ای]] برای ترجمهٔ مدیاویکی و فراتر از آن",
+ "translate-taskui-export-to-file": "برون‌بری در قالب بومی",
+ "translate-taskui-export-as-po": "برون‌بری برای ترجمهٔ برون‌خط",
+ "translate-taction-translate": "چاوواشەکِردن زوون",
+ "translate-taction-proofread": "دووارە دئین",
+ "translate-taction-lstats": "آمارەل زوون",
+ "translate-taction-mstats": "آمار گروه‌های پیغام",
+ "translate-taction-export": "در بِردن",
+ "translate-taction-disabled": "این عمل در این ویکی غیرفعال شده‌است.",
+ "translate-page-no-such-language": "زبان مورد نظر نامجاز است.",
+ "translate-page-no-such-group": "گروه مورد نظر نامجاز است.",
+ "translate-page-disabled": "ترجمه این زبان در این گروه غیر فعال است.\nدلیل:\n\n<em>$1</em>",
+ "translate-language-disabled": "ترجمه به این زبان غیرفعال شده‌است.",
+ "translate-page-settings-legend": "تنظیمۀل",
+ "translate-page-group": "داکووکە(گروو)",
+ "translate-page-language": "زوون",
+ "translate-page-limit": "تعداد",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|پیغام|پیغام ها}} در هر صفحه",
+ "translate-submit": "بیاور",
+ "translate-page-navigation-legend": "گشتن",
+ "translate-next": "وەڵگە تِر(هەنی)",
+ "translate-prev": "وەڵگە دؤماێن",
+ "translate-page-description-legend": "اطلاعات در مورد گروه",
+ "translate-page-description-hasoptional": "این گروه پیغام‌ها شامل پیغام‌های اختیاری است.\nپیغام‌های اختیاری باید تنها زمانی ترجمه شوند که زبان شما شرایط ویژه‌ای نظیر استفاده نکردن از فاصله یا نویسه‌گردانی اسامی خاص داشته باشد. $1",
+ "translate-page-description-hasoptional-open": "نمایش پیغام‌های اختیاری.",
+ "translate-page-edit": "دەسکاری",
+ "translate-optional": "(دڵ بخواهی)",
+ "translate-ignored": "(نادیده گرفته شده)",
+ "translate-edit-title": "دەسکاری«$1»",
+ "translate-edit-definition": "تعریف پیغام",
+ "translate-edit-translation": "زوون چاوواشاکردن/تةرجؤمة",
+ "translate-edit-contribute": "بەشاکرەل(هام بێرەل)",
+ "translate-edit-no-information": "<em>این پیغام دارای توضیحات نیست.\n''اگر می‌دانید که این پیغام چگونه یا در کجا استفاده می‌شود، می‌توانید با اضافه کردن توضیحات به دیگر ترجمه‌کنندگان کمک کنید.</em>",
+ "translate-edit-in-other-languages": "پەیام وە زوونەلێ ترآ",
+ "translate-edit-tmmatch-source": "متن منبع ترجمه: $1",
+ "translate-magic-module": "پودمان:",
+ "translate-magic-submit": "بیاور",
+ "translate-magic-cm-export": "در بِردن",
+ "translate-magic-nothing-to-export": "چیزی برای برون‌بری وجود ندارد.",
+ "translate-magic-cm-to-be": "آینده",
+ "translate-magic-cm-current": "ایسگە(ایسە)",
+ "translate-magic-cm-original": "اصلی",
+ "translate-magic-cm-comment": "گةپ/قِسة:",
+ "translate-magic-cm-save": "هیشتن(ذخیره)",
+ "translate-magic-cm-updatedusing": "به روز شده توسط [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "هیشتن انجۆم نەگِرت(ذخیره نشد)",
+ "translate-magic-special": "نام مستعار صفحه‌های ویژه",
+ "translate-magic-words": "واژه‌های جادویی/سینگةری",
+ "translate-magic-namespace": "اسم فضاهای نام",
+ "translate-magic-notsaved": "ویرایش‌تان ذخیره نشد!",
+ "translate-magic-errors": "لطفاً {{PLURAL:$1|خطای|خطاهای}} زیر را در ترجمهٔ خود اصلاح کنید:",
+ "translate-pref-editassistlang": "زوونةل ياري گةر:",
+ "prefs-translate": "گزینه‌های ترجمه",
+ "translate-pref-editassistlang-help": "فهرست کدهای زبان جدا شده با کاما.\nترجمه‌های پیغام‌های این زبان‌ها در زمانی که شما ترجمه می‌کنید نمایش داده می‌شوند.\nفهرست پیش‌فرض زبان‌ها بستگی به این دارد که زبان شما چیست.",
+ "translate-pref-editassistlang-bad": "کد زبان نامعتبر در فهرست:\n<nowiki>$1</nowiki>.",
+ "right-translate": "ویرایش با استفاده از رابط ترجمه",
+ "right-translate-manage": "مدیریت گروه‌های پیغام",
+ "action-translate-manage": "مدیریت گروه‌های پیغام",
+ "right-translate-import": "درون‌ریزی ترجمه‌های برون‌خط",
+ "action-translate-import": "درون‌ریزی ترجمه‌های برون‌خط",
+ "right-translate-messagereview": "دووارە دئین چاوواشەکردنەل",
+ "translate-rc-translation-filter-only": "تنها ترجمه‌ها را نمایش بده",
+ "translate-rc-translation-filter-filter": "ترجمه‌ها را نمایش نده",
+ "translate-rc-translation-filter-site": "تنها تغییرات پیغام‌های وبگاه",
+ "translationstats": "آمارەل زوون",
+ "translate-stats-edits": "دەسکاری",
+ "translate-stats-users": "چاوواشآکِرةل زوون",
+ "translate-stats-registrations": "نؤم نؤیسائن",
+ "translate-stats-reviews": "بازبینی‌ها",
+ "translate-stats-reviewers": "بازبینی‌کنندگان",
+ "translate-statsf-scale-months": "مانگةل",
+ "translate-statsf-scale-weeks": "هفتةل",
+ "translate-statsf-scale-days": "رووژةل",
+ "translate-statsf-scale-hours": "ساعتةل",
+ "translate-sidebar-alltrans": "وۀ زوونۀلئ تر",
+ "translations": "کؤل(گِشت) زوونەل چاوواشآبی",
+ "translations-summary": "نام یک پیغام را در زیر وارد کنید تا تمام ترجمه‌های موجود را ببینید.",
+ "translate-translations-fieldset-title": "پیغام",
+ "translate-translations-messagename": ":نام",
+ "translate-translations-project": "پروژه:",
+ "languagestats": "آمارەل زوون",
+ "translate-langstats-expand": "کلنگاکردن/گسترش",
+ "translate-langstats-collapse": "آشاردِن",
+ "translate-langstats-expandall": "گسترش همه",
+ "translate-langstats-collapseall": "نهفتن همه",
+ "translate-language-code": "کد زوون",
+ "translate-language-code-field-name": "کد زوون:",
+ "translate-language": "زوون",
+ "translate-total": "پیغام",
+ "translate-untranslated": "ترجمه‌نؤی",
+ "translate-percentage-complete": "پیشرفت",
+ "translate-percentage-fuzzy": "تاریخ‌ چێةسێ/گذشته",
+ "translate-languagestats-overall": "همه گروه‌های پیغام با هم",
+ "translate-ls-submit": "نمایش آمار",
+ "translate-ls-column-group": "پيغوم گرويی",
+ "translate-mgs-fieldset": "تنظیمات نمایش",
+ "translate-mgs-submit": "نمایش آمار",
+ "translate-mgs-column-language": "زوون",
+ "translate-mgs-totals": "همهٔ زبان‌ها با هم",
+ "supportedlanguages": "زوونەل پشتیووانی کِریا",
+ "supportedlanguages-summary": "این صفحه فهرستی از تمام زبان‌های پشتیبانی‌شده توسط {{SITENAME}} را به همراه نام مترجمان در حال کار در آن زبان نمایش میدهد.\nهرچه یک مترجم با ویرایش‌های بیشتری مشارکت کرده باشد، نامش بزرگتر دیده می‌شود.\nرنگ زیرخط نشان‌دهندهٔ تازگی فعالیت مترجم در اینجا است.",
+ "supportedlanguages-recenttranslations": "ترجمه‌های اخیر/ایسة",
+ "translate-manage-import-done": "وارد کردن تکمیل شد!",
+ "translate-js-summary": "خلاصه:",
+ "translate-js-save": "هیشتن(ذخیره)",
+ "translate-js-next": "هیشتن(ذخیره)ؤ وازکردن نووآ تر",
+ "translate-documentation-language": "مستندات پیام",
+ "translate-searchprofile": "زوون چاوواشاکردن/تةرجؤمة",
+ "translate-searchprofile-tooltip": "جستجو از تمامی ترجمه‌ها",
+ "tux-languageselector": "چاوواشەکِردن زوون وە",
+ "tux-tab-all": "کؤل(گشت)",
+ "tux-tab-untranslated": "ترجمه‌نؤی",
+ "tux-tab-outdated": "تاریخ‌ چێةسێ/گذشته",
+ "tux-tab-translated": "ترجمه‌بیة",
+ "tux-tab-unproofread": "بازبینی‌نؤیة",
+ "tux-edit": "دەسکاری",
+ "tux-status-optional": "دڵ بخواهی",
+ "tux-status-fuzzy": "تاریخ‌ چێةسێ/گذشته",
+ "tux-status-proofread": "بازبینی‌شده",
+ "tux-status-translated": "ترجمه‌بیة",
+ "tux-status-saving": "در حال ذخیره‌سازی...",
+ "tux-status-unsaved": "ذخیره‌نشده",
+ "tux-editor-placeholder": "زوون چاوواشاکردن هؤمة",
+ "tux-editor-save-button-label": "چاووآشآبیەل بِیل(ذخیره کە)",
+ "tux-editor-skip-button-label": "پرش به بعدی",
+ "tux-editor-cancel-button-label": "ئآهووسانن/لغو",
+ "tux-editor-confirm-button-label": "تأیید ترجمه",
+ "tux-editor-in-other-languages": "وۀ زوونۀلئ تر",
+ "tux-editor-need-more-help": "راهنمایی بیشتر نیاز دارید؟",
+ "tux-warnings-hide": "ئآشاردن-پنهان کردن",
+ "tux-editor-save-failed": "ذخیره‌سازی ترجمه نافرجام ماند:$1",
+ "tux-editor-n-uses": "{{PLURAL:$1|زمان|زمان ها}} بار استفاده شده$1",
+ "tux-editor-message-desc-more": "مشاهدهٔ بیشتر",
+ "tux-editor-message-desc-less": "مشاهدهٔ کمتر",
+ "tux-editor-clear-translated": "نهفتن ترجمه‌شده‌ها",
+ "tux-editor-proofreading-mode": "دووارە دئین",
+ "tux-editor-translate-mode": "لیست",
+ "tux-editor-proofreading-hide-own-translations": "عدم نمایش ترجمه شما",
+ "tux-editor-proofreading-show-own-translations": "نمایش ترجمه شما",
+ "tux-proofread-action-tooltip": "نشانه‌گذاری به عنوان ترجمه‌شده",
+ "tux-proofread-edit-label": "دەسکاری",
+ "tux-editor-page-mode": ":وةڵگە(پەڕە)",
+ "tux-editor-outdated-warning": "این ترجمه ممکن است نیازمند به‌روزرسانی باشد.",
+ "tux-editor-outdated-warning-diff-link": "نمایش تفاوت‌ها",
+ "tux-editor-doc-editor-placeholder": "مستندات پیام",
+ "tux-editor-doc-editor-cancel": "ئآهووسانن/لغو",
+ "tux-messagetable-more-messages": "$1 {{PLURAL:$1|پیام}} بیشتر",
+ "tux-empty-list-translated-action": "چاوواشەکِردن زوون",
+ "tux-empty-list-other-action": "دووارە دئین چاوواشەکردنەل",
+ "tux-empty-list-other-link": "نمایش تمام پیغام‌ها",
+ "tux-editor-close-tooltip": "ئآنیائن-بستِن",
+ "tux-editor-expand-tooltip": "کلنگاکردن/گسترش",
+ "tux-editor-collapse-tooltip": "آشاردِن",
+ "tux-editor-message-tools-history": "تاریخچه",
+ "tux-editor-message-tools-delete": "حۀذف کردن/پاک کردن",
+ "tux-editor-message-tools-translations": "کؤل(گِشت) زوونەل چاوواشآبی",
+ "tux-editor-loading": "...(loading)بارنیائن",
+ "translate-search-more-languages-info": "$1 {{PLURAL:$1|زبان}} بیشتر"
}
diff --git a/MLEB/Translate/i18n/core/lmo.json b/MLEB/Translate/i18n/core/lmo.json
index 9cf0e800..ce251cc7 100644
--- a/MLEB/Translate/i18n/core/lmo.json
+++ b/MLEB/Translate/i18n/core/lmo.json
@@ -25,7 +25,6 @@
"translate-stats-edits": "Mudifegh",
"translate-stats-users": "Tradütur",
"translate-statsf-submit": "Fà vidè prima",
- "translate-tag-category": "Paginn che se poden vultà",
"translate-tag-page-desc": "Tradüzión de la pagina wiki [[$2|$1]].",
"translate-sidebar-alltrans": "In alter lenguv",
"translations": "Tüt i tradüzión"
diff --git a/MLEB/Translate/i18n/core/lrc.json b/MLEB/Translate/i18n/core/lrc.json
index 5e935a4e..7dce923a 100644
--- a/MLEB/Translate/i18n/core/lrc.json
+++ b/MLEB/Translate/i18n/core/lrc.json
@@ -5,8 +5,6 @@
]
},
"translate": "والرن",
- "translate-taskui-view": "همه پيغومل نشون بيه",
- "translate-taskui-untranslated": "پيغوما نلرسه نه نشون بيه",
"translate-taction-translate": "والرن",
"translate-taction-proofread": "دواره دیئن",
"translate-taction-lstats": "آماريا زون",
@@ -19,8 +17,8 @@
"translate-page-showing-none": "هيش پيغومی سی ديئن نی",
"translate-next": "بلگه نيايی",
"translate-prev": "بلگه دمايی",
- "translate-page-edit": "ويرايشت",
- "translate-edit-title": "ويرايشت $1",
+ "translate-page-edit": "ڤیرایئشت",
+ "translate-edit-title": "ڤیرایئشت $1",
"translate-edit-translation": "لرسن",
"translate-edit-contribute": "هومياری كردن",
"translate-edit-askpermission": "قول بیئتو",
@@ -32,7 +30,7 @@
"translate-magic-words": "كلميا جادويی",
"translate-pref-editassistlang": "زونيا ياريگر",
"translate-rc-translation-filter-no": "هيچی نكيد",
- "translate-stats-edits": "ويرايشتيا",
+ "translate-stats-edits": "ڤیرایئشتیا",
"translate-stats-users": "والرياريا",
"translate-stats-registrations": "ثوت نام",
"translate-statsf-scale-months": "مايا",
@@ -40,6 +38,7 @@
"translate-statsf-scale-days": "روزيا",
"translate-statsf-scale-hours": "ساعتيا",
"translate-statsf-count": "انازه",
+ "translate-statsf-count-edits": "شومارە ڤیرایئشتیا:",
"translate-statsf-count-registrations": "كارور تازه",
"translate-statsf-submit": "پيش سيل",
"translate-sidebar-alltrans": "د زونيا هنی",
@@ -54,8 +53,8 @@
"translate-langstats-collapse": "جم كردن",
"translate-langstats-expandall": "همه نه وا كو",
"translate-langstats-collapseall": "همه نه كؤچك كو",
- "translate-language-code": "كد زون",
- "translate-language-code-field-name": "كد زون:",
+ "translate-language-code": "رازینه زون",
+ "translate-language-code-field-name": "رازینه زون:",
"translate-language": "زون",
"translate-total": "پيغوم",
"translate-untranslated": "والرسه نبيه",
@@ -73,5 +72,8 @@
"translate-gs-speakers": "گپ زننه",
"translate-gs-score": "امتياز",
"translate-gs-total": "همه",
- "translate-documentation-language": "سندسازی سی پیغوم"
+ "translate-documentation-language": "سندسازی سی پیغوم",
+ "tux-edit": "ڤیرایئشت",
+ "tux-proofread-edit-label": "ڤیرایئشت",
+ "tux-editor-message-tools-history": "ڤیرگار"
}
diff --git a/MLEB/Translate/i18n/core/lt.json b/MLEB/Translate/i18n/core/lt.json
index 4a34a7bd..e1509299 100644
--- a/MLEB/Translate/i18n/core/lt.json
+++ b/MLEB/Translate/i18n/core/lt.json
@@ -7,16 +7,14 @@
"Mantak111",
"Perkunas",
"Vpovilaitis",
- "Hugo.arg"
+ "Hugo.arg",
+ "Zygimantus",
+ "Manvydasz"
]
},
"translate": "Vertimas",
+ "translate-extensionname": "Versti",
"translate-desc": "[[Special:Translate|Specialus puslapis]] MediaWiki vertimui ir už jos ribų",
- "translate-taskui-view": "Rodyti visus pranešimus",
- "translate-taskui-untranslated": "Rodyti neišverstus pranešimus",
- "translate-taskui-optional": "Rodyti pasirinktinius pranešimus",
- "translate-taskui-acceptqueue": "Tik pranešimus galiu pažymėti kaip peržiūrėta",
- "translate-taskui-reviewall": "Apžvelgti visus vertimus",
"translate-taskui-export-to-file": "Eksportuoti vietinėje formate",
"translate-taskui-export-as-po": "Eksportuoti atsijungusiam vertimui",
"translate-taction-translate": "Išversti",
@@ -27,7 +25,7 @@
"translate-taction-disabled": "Šis veiksmas yra išjungtas šiame wiki.",
"translate-page-no-such-language": "Buvo nurodytas klaidingas kalbos kodas",
"translate-page-no-such-group": "Nurodyta nekorektiška grupė.",
- "translate-page-disabled": "Vertimai į šią kalbą šioje grupėje buvo išjungtos.\nPriežastis:\n\n$1",
+ "translate-page-disabled": "Vertimai į šią kalbą šioje grupėje buvo išjungti.\nPriežastis:\n\n<em>$1</em>",
"translate-language-disabled": "Vertimai į šią kalbą yra išjungtas.",
"translate-page-settings-legend": "Nustatymai",
"translate-page-group": "Grupė",
@@ -45,24 +43,26 @@
"translate-page-description-hasoptional": "Šios pranešimų grupės yra pasirenkami pranešimai.\nPasirenkami pranešimai turėtų būti tik išversti, kai jūsų kalba turi specialių reikalavimų.\nkaip nenaudojant vietas arba tranliteruodami tikrinius vardus. $1",
"translate-page-description-hasoptional-open": "Rodyti pasirinktinius pranešimus.",
"translate-page-edit": "redaguoti",
- "translate-ext-url": "<hr />Interneto svetainė: $1",
"translate-optional": "(nebūtinas)",
"translate-ignored": "(ignoruojamas)",
"translate-edit-title": "Redaguoti \"$1\"",
"translate-edit-definition": "Pranešimo aprašymas",
"translate-edit-translation": "Vertimas",
"translate-edit-contribute": "papildyti",
- "translate-edit-no-information": "''Šis pranešimas dar neturi dokumentacijos. Jei žinote kur ar kaip šis pranešimas naudojamas, jūs galite padėti kitiems vertėjams pridėdami dokumentacijos į šį pranešimą.''",
+ "translate-edit-no-information": "<em>Šis pranešimas neturi dokumentacijos.\nJei žinote kur ar kaip šis pranešimas naudojamas, galite padėti kitiems vertėjams pridėdami dokumentacijos į šį pranešimą.</em>",
"translate-edit-information": "Informacija apie pranešimą ($1)",
"translate-edit-in-other-languages": "Pranešimas kitomis kalbomis",
- "translate-edit-committed": "Dabartinis vertimo programinė įranga",
"translate-edit-warnings": "Įspėjimai apie nepilnus vertimus",
- "translate-edit-tmsugs": "Pasiūlymai iš vertimo atminčių ir automatinis vertimas",
"translate-edit-tmmatch-source": "Vertimo šaltinio tekstas: $1",
"translate-edit-tmmatch": "$1% atitinka",
"translate-use-suggestion": "Pakeisti dabartinį vertimą su šiuo pasiūlymu.",
- "translate-edit-nopermission": "Jums reikia leidimo išversti pranešimus",
- "translate-edit-askpermission": "Prašyti leidimo",
+ "translate-edit-nopermission": "Jums reikia vertimo teisių, kad galėtumėte versti pranešimus.",
+ "translate-edit-askpermission": "Gauti leidimą",
+ "exporttranslations": "Eksportuoti vertimus",
+ "translate-export-form-format": "Formatas",
+ "translate-export-invalid-format": "Prašome nurodyti galiojantį formatą.",
+ "translate-export-not-supported": "Vertimų eksportavimas nepalaikomas.",
+ "translate-export-format-notsupported": "Nurodytas eksportavimo formatas yra nepalaikomas pranešimų grupės.",
"translate-magic-pagename": "MediaWiki išplėtimų vertimas",
"translate-magic-help": "Jūs galite versti specialių puslapių pseudonimus, magiškus žodžius ir vardų sričių pavadinimus.\n\nSpecialiojo puslapio pavadinimo ir magiško žodžio vertimai gali būti keli.\nVertimai yra atskiriami kableliu (,).\nVardų srities pavadinimas gali turėti tik vieną vertimą.\n\nVardų sričių vertimuose <code>$1 aptarimas</code> yra specialus. <code>$1</code> yra pakeičiamas svetainės pavadinimu (pavyzdžiui <code>{{ns:project_talk}}</code>).\nJei nėra įmanoma jūsų kalboje formuoti teisingą raiškumą be keisdami svetainės vardą, praneškite mums [[Support|palaikyme]].\n\nJūs turite priklausyti vertėjų grupei, kad galėtumėte įrašyti pakeitimus.\nPakeitimai nebus įrašyti iki Jūs nuspausite išsaugojimo mygtuką apačioje.",
"translate-magic-module": "Modulis:",
@@ -81,8 +81,12 @@
"translate-magic-namespace": "Vardų srities pavadinimai",
"translate-magic-notsaved": "Jūsų redagavimas yra neišsaugotas!",
"translate-magic-errors": "Praįome ištaisyti {{PLURAL:$1|klaidą|klaidas}} vertimuose:",
- "translate-magic-saved": "Jūsų keitimai buvo sėkmingai išsaugoti.",
+ "translate-magic-saved": "Jūsų pakeitimai buvo išsaugoti.",
"translate-checks-parameters": "{{PLURAL:$2|Šis $2 parametras nepanaudotas|Šie $2 parametrai nepanaudoti|Šie $2 parametrų nepanaudoti}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "{{PLURAL:$2|Šis parametras yra nežinomas|Šie parametrai yra nežinomi}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "{{PLURAL:$2|Ši nuoroda yra problematiška|$2 nuorodos yra problematiškos}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "{{PLURAL:$2|Šios nuorodos|šių $2 nuorodų}} trūksta:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Prašome pakeisti {{PLURAL:$2|šią žymę teisinga žyme|šias žymes teisingomis žymėmis}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-plural": "Aprašymas naudoja <nowiki>{{PLURAL:}}</nowiki>, bet vertimas ne.",
"translate-pref-nonewsletter": "Nesiųskite man el. pašto naujienlaiškus",
"translate-pref-editassistlang": "Asistentinės kalbos:",
@@ -93,7 +97,13 @@
"right-translate-import": "Importuoti neprisijungusius vertimus",
"action-translate-import": "importuoti atsijungusius vertimus",
"right-translate-messagereview": "Peržiūrėti vertimus",
+ "action-translate-messagereview": "apžvelgti vertimus",
"right-translate-groupreview": "Keisti pranešimų grupių darbo eigos būseną",
+ "translate-rcfilters-translations": "Vertimai",
+ "translate-rcfilters-translations-only-label": "Vertimai",
+ "translate-rcfilters-translations-only-desc": "Keitimai išverstuose puslapiuose.",
+ "translate-rcfilters-translations-filter-label": "Ne vertimai",
+ "translate-rcfilters-translations-filter-desc": "Visi keitimai, kurie nėra vertimai.",
"translate-rc-translation-filter": "Perkošti vertimus:",
"translate-rc-translation-filter-no": "Nieko nedaryti",
"translate-rc-translation-filter-only": "Rodyti tik vertimus",
@@ -124,8 +134,7 @@
"translate-statsf-language": "Atskirti kableliais kalbų kodų sarašas:",
"translate-statsf-group": "Atskirti kableliais grupių kodų sąrašas:",
"translate-statsf-submit": "Peržiūra",
- "translate-tag-category": "Išverčiami puslapiai",
- "translate-tag-page-desc": "Wiki puslapio vertimas [[$2|$1]].",
+ "translate-tag-page-desc": "Viki puslapio [[$2|$1]] vertimas iš $3 ($4).",
"translate-sidebar-alltrans": "Kitomis kalbomis",
"translations": "Visi vertimai",
"translations-summary": "Įveskite pranešimo pavadinimą žemiau, norėdami parodyti visus esamus vertimus.",
@@ -138,8 +147,10 @@
"translate-translations-history-short": "val.",
"languagestats": "Kalbos statistikos",
"languagestats-summary": "Šis puslapis rodo vertimo statistikas visiems pranešimo grupėms vertimui.",
+ "messagegroupstats-summary": "Šis puslapis rodo pranešimų grupės statistiką.",
"languagestats-stats-for": "Vertimo statistikos $1 ($2).",
"languagestats-recenttranslations": "nauji vertimai",
+ "translate-langstats-incomplete": "Dalis statistikos šiame puslapyje nebaigta. Prašome įkelti iš naujo, kad gautumėte daugiau statistikos.",
"translate-langstats-expand": "išskleisti",
"translate-langstats-collapse": "suskleisti",
"translate-langstats-expandall": "Išskleisti visus",
@@ -163,10 +174,12 @@
"translate-mgs-noempty": "Nerodyti kalbų kurios neturi jokių vertimų",
"translate-mgs-submit": "Rodyti statistiką",
"translate-mgs-column-language": "Kalba",
- "translate-mgs-totals": "Visos kalbos kartu",
+ "translate-mgs-totals": "Visos $1 {{PLURAL:$1|kalbos}} kartu",
"translate-mgs-invalid-group": "Nurodytai grupei $1 neegzistuoja.",
+ "translate-mgs-nothing": "Prašomos statistikos nėra.",
"supportedlanguages": "Palaikomos kalbos",
- "supportedlanguages-translators": "{{PLURAL:$2|Vertėjas|Vertėjai|Vertėjų}}: $1",
+ "supportedlanguages-colorlegend": "Legenda spalvai: Paskutinis vertimas prieš $1 dienas.",
+ "supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|Vertėjas|Vertėja}}|Vertėjai}}: $1",
"supportedlanguages-recenttranslations": "Nauji vertimai",
"supportedlanguages-count": "Iš viso $1 {{PLURAL:$1|kalba|kalbos|kalbų}}.",
"supportedlanguages-activity": "$1: $2 {{PLURAL:$2|keitimas|keitimai|keitimų}} - paskutinis keitimas yra prieš $3 {{PLURAL:$3|dieną|dienas|dienų}}",
@@ -185,19 +198,22 @@
"translate-manage-action-conflict": "Importuoti ir naujinti",
"translate-manage-action-ignore": "Ignoruoti",
"translate-manage-action-fuzzy": "Importuoti ir naujinti vertimus",
- "translate-manage-fuzzy-summary": "Pranešimo apibrėžimas pasikeitė",
+ "translate-manage-import-summary": "Importuojama nauja versite iš išorinio šaltinio",
+ "translate-manage-conflict-summary": "Importuojama nauja versite iš išorinio šaltinio.\nPrašome patikrinti.",
"translate-manage-submit": "Vykdyti",
- "translate-manage-import-done": "Viskas baigta!",
+ "translate-manage-import-ok": "Importuota: $1",
+ "translate-manage-import-done": "Importavimas užbaigtas!",
"importtranslations": "Importuoti vertimus",
"translate-import-from-local": "Vietinio failo įkėlimas:",
"translate-import-load": "Įkrauti failą",
- "translate-import-err-ul-failed": "Failo įkėlimas buvo nesėkmingas",
+ "translate-import-err-dl-failed": "Nepavyko gauti failo:\n$1",
+ "translate-import-err-ul-failed": "Failo įkėlimas nepavyko",
+ "translate-import-err-invalid-title": "Pateiktas failo pavadinimas <nowiki>$1</nowiki> buvo negalimas.",
+ "translate-import-err-stale-group": "Pranešimų grupė, kuriai priklauso šis failas, neegzistuoja.",
"translate-js-summary": "Santrauka:",
"translate-js-save": "Išsaugoti",
"translate-js-next": "Išsaugoti ir atidaryti kitą",
- "translate-js-nonext": "Tai buvo paskutinė žinutė šiame puslapyje.",
"translate-js-skip": "Praleisti",
- "translate-js-save-failed": "Išsaugojimas nepavyko. Praneškite apie šią klaidą.",
"translate-js-history": "Vertimo istorija",
"translate-js-support": "Užduoti klausimą",
"translate-js-support-title": "Paprašyk pagalbos, jei nėra pakankamai informacijos, kad verstų šį pranešimą teisingai.",
@@ -214,21 +230,11 @@
"translate-documentation-language": "Pranešimo dokumentacija",
"translate-searchprofile": "Vertimai",
"translate-searchprofile-tooltip": "Ieškoti iš visų vertimų",
+ "translate-searchprofile-note": "Daugiau paieškos galimybių prieinama su [$1 vertimų paieška].",
"translate-search-languagefilter": "Perkošti pagal kalbą:",
"translate-search-nofilter": "Nėra filtravimo",
- "translate-messagereview-submit": "Žymė peržiūrėta",
- "translate-messagereview-progress": "Žymėjama kaip peržiūrėta...",
- "translate-messagereview-failure": "Žymėjimas kaip peržiūrėta nepavyko: $1",
- "translate-messagereview-done": "Apžvelgta",
- "translate-messagereview-reviews": "Peržiūrėjo {{PLURAL:$1|vienas naudotojas|$1 naudotojai|$1 naudotojų}}",
- "translate-messagereview-reviewswithyou": "Peržiūrėjo(-ote) {{PLURAL:$1|jūs|$1 vartotojai įskaitant jūs}}",
- "api-error-invalidrevision": "Vertimas nerastas",
- "api-error-unknownmessage": "Pranešimas nerastas",
- "api-error-fuzzymessage": "Vertimas yra pažymėta kaip apytikslė",
- "api-error-owntranslation": "Jūs negalite savo vertimus pažymėti kaip apžvelgtą.",
- "translate-messagereview-no-own": "Jūs negalite savo vertimus pažymėti kaip apžvelgtą.",
- "translate-messagereview-doit": "Pažymėkite šį vertimą kaip apžvelgtą.",
"log-name-translationreview": "Vertimo peržiūrėjimo žurnalas",
+ "logentry-translationreview-message": "$1 {{GENDER:$2|peržiūrėjo}} vertimą $3",
"group-translate-sandboxed": "Nepatvirtinti vertėjai",
"group-translate-sandboxed-member": "{{GENDER:$1|nepatvirtintas vertėjas}}",
"right-translate-sandboxmanage": "Valdyti smėlio dėžės naudotojus",
@@ -237,15 +243,10 @@
"action-translate-sandboxaction": "vykdyti veiksmus gerbiamus smėlio dėžės vartotojams",
"translate-workflow-state-": "(nenustatyta)",
"translate-workflowstatus": "Būsena: $1",
- "translate-workflow-set-do": "Nustatyti",
"translate-workflow-set-doing": "Nustatoma...",
- "translate-workflow-set-done": "Nustatyti!",
"translate-stats-workflow": "Būsena",
"translate-dynagroup-recent-label": "Nauji vertimai",
"translate-dynagroup-additions-label": "Naujausi papildymai",
- "translate-dynagroup-last": "Paskutinį kartą pakeitė {{GENDER:$1|$1}}",
- "translate-dynagroup-lastc": "Paskutinį kartą pakeitė {{GENDER:$1|$1}} ($2)",
- "translate-gethelp": "Pagalba",
"translate-msggroupselector-projects": "Pranešimo grupė",
"translate-msggroupselector-search-placeholder": "Ieškoti grupes",
"translate-msggroupselector-search-all": "Visi",
@@ -263,13 +264,16 @@
"tux-status-translated": "Išversta",
"tux-status-saving": "Išsaugoma....",
"tux-status-unsaved": "Neišsaugota",
+ "tux-save-unknown-error": "Įvyko nežinoma klaida.",
"tux-editor-placeholder": "Jūsų vertimas",
+ "tux-editor-editsummary-placeholder": "Neprivaloma santrauka",
"tux-editor-paste-original-button-label": "Įklijuoti kodo tekstą",
"tux-editor-discard-changes-button-label": "Atsisakyti pakeitimų",
"tux-editor-save-button-label": "Išsaugoti vertimą",
"tux-editor-skip-button-label": "Pereiti prie kito",
"tux-editor-cancel-button-label": "Atšaukti",
"tux-editor-confirm-button-label": "Patvirtinti vertimą",
+ "tux-editor-proofread-button-label": "Pažymėti kaip apžvelgta",
"tux-editor-edit-desc": "Redaguoti dokumentaciją",
"tux-editor-add-desc": "Pridėti dokumentaciją",
"tux-editor-suggestions-title": "Pasiūlymai",
@@ -280,6 +284,7 @@
"tux-warnings-more": "{{PLURAL:$1|$1 daugiau}}",
"tux-warnings-hide": "slėpti",
"tux-editor-save-failed": "Vertimo išsaugojimas nepavyko: $1",
+ "tux-editor-n-uses": "panaudota $1 {{PLURAL:$1|kartą|kartus}}",
"tux-editor-message-desc-more": "Rodyti daugiau",
"tux-editor-message-desc-less": "Rodyti mažiau",
"tux-editor-clear-translated": "Slėpti išverstus",
@@ -295,16 +300,20 @@
"tux-editor-doc-editor-placeholder": "Pranešimo dokumentacija",
"tux-editor-doc-editor-save": "Išsaugoti dokumentaciją",
"tux-editor-doc-editor-cancel": "Atšaukti",
+ "tux-messagetable-more-messages": "dar $1 {{PLURAL:$1|pranešimas|pranešimai}}",
"tux-messagetable-loading-messages": "Įkraunami {{PLURAL:$1|pranešimas|pranešimai}}...",
"tux-message-filter-placeholder": "Filtrų sąrašas",
+ "tux-message-filter-result": "Rastas $1 {{PLURAL:$1|rezultatas|rezultatai}} užklausai „$2“",
"tux-message-filter-advanced-button": "Išplėstinė paieška",
"tux-message-filter-optional-messages-label": "Pasirenkami pranešimai",
"tux-proofread-translated-by-self": "Išvertėte jūs",
"tux-empty-list-all": "Ši pranešimo grupė yra tuščia",
+ "tux-empty-list-all-guide": "Pasirinkti kitą pranešimų grupę vertimui",
"tux-empty-list-translated": "Nėra išverstų pranešimų",
"tux-empty-list-translated-guide": "Jūs galite padėti versti",
"tux-empty-list-translated-action": "Išversti",
"tux-empty-no-messages-to-display": "Nėra ko pranešimų rodyti.",
+ "tux-empty-there-are-optional": "Yra neprivalomų pranešimų, kurie nerodomi sąraše",
"tux-empty-show-optional-messages": "Rodyti pasirinktinius pranešimus",
"tux-empty-no-outdated-messages": "Nėra pasenusių pranešimų",
"tux-empty-nothing-to-proofread": "Nėra, ko apžvelgti.",
@@ -318,9 +327,15 @@
"tux-editor-close-tooltip": "Uždaryti",
"tux-editor-expand-tooltip": "Išplėsti",
"tux-editor-collapse-tooltip": "Suskleisti",
+ "tux-editor-message-tools-show-editor": "Rodyti viki redaktoriuje",
"tux-editor-message-tools-history": "Istorija",
+ "tux-editor-message-tools-delete": "Ištrinti",
"tux-editor-message-tools-translations": "Visi vertimai",
"tux-editor-loading": "Įkraunama...",
+ "translate-search-more-languages-info": "dar $1 {{PLURAL:$1|kalba|kalbos}}",
"translate-statsbar-tooltip": "$1% išversti, $2% apžvelgti",
- "translate-statsbar-tooltip-with-fuzzy": "$1% išversti, $2% apžvelgti, $3% pasenę"
+ "translate-statsbar-tooltip-with-fuzzy": "$1% išversti, $2% apžvelgti, $3% pasenę",
+ "translate-search-more-groups-info": "dar $1 {{PLURAL:$1|grupė|grupės}}",
+ "translate-ulsdep-title": "Konfigūravimo klaida",
+ "tux-nojs": "Šiam puslapiui reikia JavaScript."
}
diff --git a/MLEB/Translate/i18n/core/ltg.json b/MLEB/Translate/i18n/core/ltg.json
index ac0069c8..a67da2f4 100644
--- a/MLEB/Translate/i18n/core/ltg.json
+++ b/MLEB/Translate/i18n/core/ltg.json
@@ -13,7 +13,6 @@
"translate-next": "Cyta puslopa",
"translate-page-description-legend": "Informaceja ap grupu",
"translate-page-edit": "pataiseit",
- "translate-ext-url": "<hr />Teiklavīta: $1",
"translate-edit-title": "Pataiseit \"$1\"",
"translate-magic-submit": "Paruodeit",
"translate-magic-cm-save": "Izglobuot",
diff --git a/MLEB/Translate/i18n/core/lus.json b/MLEB/Translate/i18n/core/lus.json
index a2b6d455..32997dff 100644
--- a/MLEB/Translate/i18n/core/lus.json
+++ b/MLEB/Translate/i18n/core/lus.json
@@ -6,11 +6,6 @@
},
"translate": "Lehlinna",
"translate-desc": "MediaWiki leh a bâk lehlinna [[Special:Translate|Phek vohbik]]",
- "translate-taskui-view": "Thuthawn awm zawng zawng",
- "translate-taskui-untranslated": "Thuthawn lehlin loh zawng",
- "translate-taskui-optional": "Thuthawn duh-thlan zawng",
- "translate-taskui-acceptqueue": "Ka pawm theih thuthawnho zawng",
- "translate-taskui-reviewall": "Lehlin zawng zawng ennawn vek rawh",
"translate-taskui-export-to-file": "Pianken ruangama thawnchhuahna",
"translate-taskui-export-as-po": "Rinpawna lehlin nan thawnchhuak rawh",
"translate-taction-translate": "Lehlinna",
@@ -35,7 +30,6 @@
"translate-page-description-hasoptional": "He pawl hian thuthawn duh-thlan (lehlin kher ngai lo) a nei a.\nHeng thuthawn duh-thlante hi i ţawngin mamawh bîk, entirnan hming roman hawrawpa dah, karawl hman thiang lo, tih angte a neih chauhvin lehlin tùr a ni ang. $1",
"translate-page-description-hasoptional-open": "Thuthawn duh-thlan pholanna.",
"translate-page-edit": "siamṭhatna",
- "translate-ext-url": "<hr />Hmunpui: $1",
"translate-optional": "(duh-thlan)",
"translate-ignored": "(ngaihthah)",
"translate-edit-title": "$1 siamţha rawh",
@@ -45,9 +39,7 @@
"translate-edit-no-information": "''He thuthawn hian sawifiahna mumal a la nei lo.''\n''He thuthawn hmanna hmun leh hmanphung hi i hriat chuan sawifiah la, letlingtute nasa takin i pui ang.''",
"translate-edit-information": "Thuthawn chungchang ($1)",
"translate-edit-in-other-languages": "Thuthawn ţawng dangin",
- "translate-edit-committed": "Khawlthluaka lehlin mék",
"translate-edit-warnings": "Lehlin famkim lo vaukhanna",
- "translate-edit-tmsugs": "Leh tawh aţanga rawtna",
"translate-edit-tmmatch-source": "Lehlinna thu hnar: $1",
"translate-edit-tmmatch": "$1% inmil",
"translate-use-suggestion": "Tuna lehlinna awm hi he rawtna hian thlâk rawh",
@@ -109,7 +101,6 @@
"translate-statsf-count-reviews": "Lehlin ennawnna",
"translate-statsf-count-reviewers": "Ennawntute",
"translate-statsf-submit": "Enchhinna",
- "translate-tag-category": "Phêk lehlin theih",
"translate-tag-page-desc": "Wiki phêk [[$2|$1]] lehlinna.",
"translate-sidebar-alltrans": "Ţawng dangin",
"translations": "Lehlin zawng zawng",
@@ -168,16 +159,13 @@
"translate-manage-action-ignore": "Ngaihthahna",
"translate-manage-action-fuzzy": "Châwkluh leh lehlin chiang lo (phé)",
"translate-manage-nochanges-other": "He ţawnga tihdanglam thar a awm lo.\nHläwm chanchin inziahna phêka lêt tùrin a hnuaia zawmnaah khuan kal rawh.",
- "translate-manage-fuzzy-summary": "A hrilhfiahna thlâk a ni tawh",
"translate-manage-submit": "Déng raw pip!",
"translate-manage-import-done": "A zo ta vek mai!",
"translate-import-err-warnings": "Taksa dik lo.\nI khawih danglamin ththn ziahna i nuaibo lo tih tichiang ang che.\nChanchim kim: $1",
"translate-js-summary": "Laktawi:",
"translate-js-save": "Dahţhatna",
"translate-js-next": "Dahţha la a dawt hawng nghâl rawh",
- "translate-js-nonext": "Hei hi hemi phêka thuthawn hnuhnüng ber a ni.",
"translate-js-skip": "Kalkân rawh",
- "translate-js-save-failed": "Dahţhat a hlawhchham. Khawngaihin hei hi hriattir rawh.",
"translate-js-history": "Lehlinna chanchin",
"translate-js-support": "Zawhna zawhna",
"translate-js-support-title": "Thuthawn lehlin dik a harsat chuan zawhna zawh hreh loh tùr.",
@@ -196,28 +184,8 @@
"translate-searchprofile-tooltip": "Lehlinna zawng zawnga zawnna",
"translate-search-languagefilter": "Ţawng azira thlitfimna:",
"translate-search-nofilter": "Thlitfimna awm lo",
- "translate-messagereview-submit": "Pawmna",
- "translate-messagereview-progress": "Pawm mék...",
- "translate-messagereview-failure": "Pawm... hlawhchham: $1",
- "translate-messagereview-done": "Pawm a ni ta",
- "translate-messagereview-reviews": "Hmangtu {{PLURAL:$1|1|$1}} pawm",
- "translate-messagereview-reviewswithyou": "{{PLURAL:$1|Nangma pawm|Nangmah tiamin hmangtu $1-in an pawm }}",
- "api-error-invalidrevision": "Lehlin hmuh a ni lo",
- "api-error-unknownmessage": "Thuthawn hmuh a ni lo",
- "api-error-fuzzymessage": "Lehlin chiang lova ngaih a ni",
- "api-error-owntranslation": "Nangma lehlin nangmahin i pawm thei",
- "translate-messagereview-no-fuzzy": "Lehlin chiang lo (fuzzy) pawm theih loh.",
- "translate-messagereview-no-own": "Nangma lehlin i pawm thiang lo.",
- "translate-messagereview-doit": "He lehlin hi a dikah pawm rawh.",
"log-name-translationreview": "Lehlin ennawn chhinchhiahna",
"translate-workflowstatus": "Dinhmun: $1",
- "translate-workflow-set-do": "Nung",
"translate-workflow-set-doing": "Tinung mék...",
- "translate-workflow-set-done": "Nung ta!",
- "translate-dynagroup-recent-label": "Lehlin tharte",
- "translate-dynagroup-by": "{{GENDER:$1|$1}} lehlin",
- "translate-dynagroup-byc": "{{GENDER:$1|$1}} lehlin ($2)",
- "translate-dynagroup-last": "{{GENDER:$1|$1}} lehlin hnuhnùn ber",
- "translate-dynagroup-lastc": "{{GENDER:$1|$1}} tihdanglam thar ($2)",
- "translate-gethelp": "Ţanpuina"
+ "translate-dynagroup-recent-label": "Lehlin tharte"
}
diff --git a/MLEB/Translate/i18n/core/lv.json b/MLEB/Translate/i18n/core/lv.json
index baf67bba..0125109f 100644
--- a/MLEB/Translate/i18n/core/lv.json
+++ b/MLEB/Translate/i18n/core/lv.json
@@ -10,18 +10,15 @@
},
"translate": "Tulkošana",
"translate-desc": "[[Special:Translate|Īpašā lapa]] MediaWiki un citu projektu tulkošanai",
- "translate-taskui-view": "Rādīt visus ziņojumus",
- "translate-taskui-untranslated": "Rādīt neiztulkotos ziņojumus",
- "translate-taskui-optional": "Rādīt papildu ziņojumus",
- "translate-taskui-reviewall": "Pārskatīt visus tulkojumus",
"translate-taction-translate": "Tulkot",
+ "translate-taction-proofread": "Pārskatīt",
"translate-taction-lstats": "Valodas statistika",
"translate-taction-mstats": "Ziņojumu grupas statistika",
"translate-taction-export": "Eksportēt",
"translate-taction-disabled": "Šī darbība ir atspējota šajā wiki.",
"translate-page-no-such-language": "Norādītā valoda bija nederīga.",
"translate-page-no-such-group": "Norādītā grupa bija nederīga.",
- "translate-page-settings-legend": "Uzstādījumi",
+ "translate-page-settings-legend": "Iestatījumi",
"translate-page-group": "Grupa",
"translate-page-language": "Valoda",
"translate-page-limit": "Ierobežojums",
@@ -29,10 +26,13 @@
"translate-submit": "Atlasīt",
"translate-page-navigation-legend": "Navigācija",
"translate-page-showing": "Rāda ziņojumus no $1 līdz $2 no $3.",
+ "translate-page-showing-all": "Rāda $1 {{PLURAL:$1|ziņojumus|ziņojumu|ziņojumus}}.",
"translate-next": "Nākamā lapa",
"translate-prev": "Iepriekšējā lapa",
"translate-page-description-legend": "Informācija par grupu",
"translate-page-edit": "labot",
+ "translate-optional": "(neobligāts)",
+ "translate-ignored": "(ignorēts)",
"translate-edit-title": "Labot \"$1\"",
"translate-edit-translation": "Tulkojums",
"translate-edit-information": "Informācija par ziņojumu ($1)",
@@ -42,15 +42,20 @@
"translate-edit-tmmatch": "$1% atbilstība",
"translate-edit-nopermission": "Jums ir nepieciešamas tulkošanas tiesības, lai tulkotu ziņojumus.",
"translate-edit-askpermission": "Saņemt atļauju",
+ "exporttranslations": "Eksportēt tulkojumus",
+ "translate-export-form-format": "Formāts",
+ "translate-export-invalid-format": "Lūdzu norādi derīgu formātu.",
"translate-magic-pagename": "Paplašinātā MediaWiki tulkošana",
"translate-magic-module": "Modulis:",
"translate-magic-submit": "Atlasīt",
"translate-magic-cm-export": "Eksportēt",
"translate-magic-nothing-to-export": "Nav nekā, ko eksportēt.",
+ "translate-magic-cm-original": "Oriģināls",
"translate-magic-cm-comment": "Komentārs:",
"translate-magic-cm-save": "Saglabāt",
"translate-magic-cm-savefailed": "Neizdevās saglabāt",
"translate-magic-words": "Burvju vārdi",
+ "translate-magic-namespace": "Vārdtelpu nosaukumi",
"translate-magic-notsaved": "Jūsu labojums netika saglabāts!",
"translate-pref-nonewsletter": "Nevēlos pa e-pastu saņemt lapas jaunumus",
"translate-pref-editassistlang": "Palīgvalodas:",
@@ -59,10 +64,18 @@
"right-translate-manage": "Ziņojumu grupu pārvaldība",
"action-translate-manage": "ziņojumu grupu pārvaldība",
"right-translate-messagereview": "Pārskatīt tulkojumus",
+ "translate-rcfilters-translations": "Tulkojumi",
+ "translate-rcfilters-translations-only-label": "Tulkojumi",
+ "translate-rcfilters-translations-only-desc": "Izmaiņas tulkotās lapās",
+ "translate-rcfilters-translations-filter-label": "Ne tulkojumi",
+ "translate-rcfilters-translations-filter-desc": "Visas izmaiņas, kas nav tulkojumi",
+ "translate-rcfilters-translations-site-label": "Sistēmas paziņojumi",
+ "translate-rcfilters-translations-site-desc": "Sistēmas paziņojumu MediaWiki vārdtelpā pielāgotās vērtības.",
"translate-rc-translation-filter": "Filtrēt tulkojumus:",
"translate-rc-translation-filter-no": "Nedarīt neko",
"translate-rc-translation-filter-only": "Rādīt tikai tulkojumus",
"translate-rc-translation-filter-filter": "Atfiltrēt tulkojumus",
+ "translate-rc-translation-filter-site": "Tikai izmaiņas sistēmas paziņojumos",
"translationstats": "Tulkošanas statistika",
"translate-stats-edits": "Labojumi",
"translate-stats-users": "Tulkotāji",
@@ -79,11 +92,12 @@
"translate-statsf-count-edits": "Izmaiņu skaits",
"translate-statsf-count-users": "Aktīvie tulkotāji",
"translate-statsf-count-registrations": "Jauni lietotāji",
- "translate-tag-category": "Tulkojamās lapas",
"translate-sidebar-alltrans": "Citās valodās",
"translations": "Visi tulkojumi",
"translate-translations-fieldset-title": "Ziņojums",
+ "translate-translations-messagename": "Nosaukums:",
"translate-translations-project": "Projekts:",
+ "translate-translations-history-short": "v",
"languagestats": "Valodas statistika",
"languagestats-summary": "Šī lapa parāda tulkojumu statistiku visām ziņojumu grupām konkrētai valodai.",
"languagestats-stats-for": "Tulkojuma statistika $1 ($2).",
@@ -108,22 +122,27 @@
"translate-mgs-group": "Ziņojumu grupa:",
"translate-mgs-submit": "Rādīt statistiku",
"translate-mgs-column-language": "Valoda",
- "translate-mgs-totals": "Visas valodas kopā",
+ "translate-mgs-totals": "Visas $1 {{PLURAL:$1|valodas|valoda|valodas}} kopā",
"supportedlanguages": "Atbalstītās valodas",
- "supportedlanguages-translators": "{{PLURAL:$2|Tulkotāji|Tulkotājs|Tulkotāji}}: $1",
+ "supportedlanguages-sqlite-error": "SQLite nav atbaltīts",
+ "supportedlanguages-translators": "{{PLURAL:$2|Tulkotāji|{{GENDER:$3|Tulkotājs|Tulkotāja}}|Tulkotāji}}: $1",
"supportedlanguages-recenttranslations": "pēdējie tulkojumi",
"translate-save": "Saglabāt ($1)",
"translate-jssti-add": "Pievienot sarakstam",
+ "translate-smg-right": "Ienākošās izmaiņas",
"translate-manage-action-import": "Importēt",
"translate-manage-action-ignore": "Ignorēt",
"translate-manage-submit": "Izpildīt",
+ "importtranslations": "Importēt tulkojumus",
+ "translate-import-load": "Ielādēt failu",
+ "translate-import-err-ul-failed": "Faila augšupielāde neizdevās.",
"translate-js-summary": "Kopsavilkums:",
"translate-js-save": "Saglabāt",
"translate-js-next": "Saglabāt un atvērt nākamo",
- "translate-js-nonext": "Šī bija pēdējā ziņa šajā lapā.",
"translate-js-skip": "Pāriet uz nākamo",
"translate-js-history": "Tulkošanas vēsture",
"translate-js-support": "Uzdot jautājumu",
+ "translate-js-support-unsaved-warning": "Tev ir nesaglabāti tulkojumi.",
"translate-gs-pos": "Vieta",
"translate-gs-code": "Kods",
"translate-gs-continent": "Kontinents",
@@ -131,10 +150,16 @@
"translate-gs-count": "Skaits",
"translate-gs-total": "Kopā",
"translate-documentation-language": "Paziņojuma dokumentācija",
+ "translate-searchprofile": "Tulkojumi",
"translate-search-languagefilter": "Filtrēt pēc valodas:",
+ "logentry-translationreview-message": "$1 {{GENDER:$2|pārskatīja}} $3 tulkojumu",
+ "group-translate-sandboxed": "Neapstiprinātie tulkotāji",
+ "group-translate-sandboxed-member": "{{GENDER:$1|neapstiprināts tulkotājs|neapstiprināta tulkotāja}}",
"translate-workflow-state-": "(nav uzstādīts)",
"translate-stats-workflow": "Statuss",
- "translate-gethelp": "Palīdzība",
+ "translate-dynagroup-recent-label": "Neseni tulkojumi",
+ "translate-dynagroup-recent-desc": "Šī ziņojumu grupa parāda visus nesenos tulkojumus šajā valodā.\nTā ir visnoderīgākā pārskatīšanas uzdevumiem.",
+ "translate-dynagroup-additions-label": "Nesen pievienots",
"translate-msggroupselector-projects": "Ziņojumu grupa",
"translate-msggroupselector-search-placeholder": "Meklēt grupas",
"translate-msggroupselector-search-all": "Visas",
@@ -153,13 +178,16 @@
"tux-status-translated": "Iztulkots",
"tux-status-saving": "Saglabā...",
"tux-status-unsaved": "Nesaglabāts",
+ "tux-save-unknown-error": "Nezināma kļūda.",
"tux-editor-placeholder": "Jūsu tulkojums",
+ "tux-editor-editsummary-placeholder": "Neobligāts kopsavilkums",
"tux-editor-paste-original-button-label": "Iekopēt izejas tekstu",
"tux-editor-discard-changes-button-label": "Atmest izmaiņas",
"tux-editor-save-button-label": "Saglabāt tulkojumu",
"tux-editor-skip-button-label": "Pāriet uz nākamo",
"tux-editor-cancel-button-label": "Atcelt",
"tux-editor-confirm-button-label": "Apstiprināt tulkojumu",
+ "tux-editor-proofread-button-label": "Atzīmēt kā pārskatītu",
"tux-editor-edit-desc": "Labot dokumentāciju",
"tux-editor-add-desc": "Pievienot dokumentāciju",
"tux-editor-suggestions-title": "Ieteikumi",
@@ -175,10 +203,14 @@
"tux-editor-clear-translated": "Paslēpt iztulkoto",
"tux-editor-proofreading-mode": "Pārlasīt",
"tux-editor-translate-mode": "Saraksts",
+ "tux-editor-proofreading-hide-own-translations": "Paslēpt tavus tulkojumus",
+ "tux-editor-proofreading-show-own-translations": "Parādīt tavus tulkojumus",
+ "tux-proofread-action-tooltip": "Atzīmēt kā pārskatītu",
"tux-proofread-edit-label": "Labot",
"tux-editor-page-mode": "Lapa",
"tux-editor-outdated-warning": "Šis tulkojums, iespējams, ir jāatjaunina.",
"tux-editor-outdated-warning-diff-link": "Parādīt atšķirības",
+ "tux-editor-doc-editor-placeholder": "Paziņojuma dokumentācija",
"tux-editor-doc-editor-save": "Saglabāt dokumentāciju",
"tux-editor-doc-editor-cancel": "Atcelt",
"tux-messagetable-loading-messages": "Ielādē {{PLURAL:$1|ziņojumus|ziņojumu|ziņojumus}}...",
@@ -187,11 +219,13 @@
"tux-message-filter-optional-messages-label": "Papildu ziņas",
"tux-empty-list-translated-action": "Tulkot",
"tux-empty-no-messages-to-display": "Nav ziņu, ko parādīt.",
+ "tux-empty-list-other": "Nav nekā tulkojama",
"tux-empty-list-other-link": "Rādīt visus ziņojumus",
"tux-editor-close-tooltip": "Aizvērt",
"tux-editor-expand-tooltip": "Izvērst",
"tux-editor-collapse-tooltip": "Sakļaut",
"tux-editor-message-tools-history": "Vēsture",
+ "tux-editor-message-tools-delete": "Dzēst",
"tux-editor-message-tools-translations": "Visi tulkojumi",
"tux-editor-loading": "Ielādē...",
"translate-ulsdep-title": "Konfigurācijas kļūda"
diff --git a/MLEB/Translate/i18n/core/lzh.json b/MLEB/Translate/i18n/core/lzh.json
index df270d2b..7f0728fc 100644
--- a/MLEB/Translate/i18n/core/lzh.json
+++ b/MLEB/Translate/i18n/core/lzh.json
@@ -2,16 +2,13 @@
"@metadata": {
"authors": [
"Yanteng3",
- "Jason924tw"
+ "Jason924tw",
+ "Davidzdh",
+ "Itsmine"
]
},
"translate": "譯",
"translate-desc": "譯MediaWiki訊之[[Special:Translate|特查]]",
- "translate-taskui-view": "示全之訊",
- "translate-taskui-untranslated": "示未譯之訊",
- "translate-taskui-optional": "示選之訊",
- "translate-taskui-acceptqueue": "示吾能檢校之訊",
- "translate-taskui-reviewall": "檢校全之譯",
"translate-taskui-export-to-file": "出匯以原格式",
"translate-taskui-export-as-po": "出匯以離之譯",
"translate-taction-translate": "譯",
@@ -41,7 +38,6 @@
"translate-edit-contribute": "功績",
"translate-edit-information": "述該訊息($1)",
"translate-edit-in-other-languages": "他語之訊",
- "translate-edit-committed": "今譯",
"translate-edit-warnings": "未譯之警",
"translate-edit-tmmatch": "$1%符",
"translate-edit-nopermission": "汝須獲權方可譯訊。",
@@ -72,7 +68,7 @@
"translate-statsf-count-registrations": "新簿",
"translate-statsf-count-reviews": "校譯",
"translate-statsf-submit": "草覽",
- "translate-sidebar-alltrans": "他語之譯",
+ "translate-sidebar-alltrans": "他山",
"translations": "全譯",
"translate-translations-fieldset-title": "訊",
"translate-translations-messagename": "名:",
@@ -103,7 +99,6 @@
"translate-save": "存 ($1)",
"translate-manage-import-deleted": "已刪訊 $1",
"translate-manage-action-import": "入匯",
- "translate-manage-fuzzy-summary": "訊已易",
"translate-import-load": "載檔",
"translate-js-save": "存",
"translate-js-skip": "次譯",
@@ -111,12 +106,6 @@
"translate-documentation-language": "訊之檔",
"translate-searchprofile": "譯",
"translate-searchprofile-tooltip": "尋譯",
- "translate-messagereview-submit": "記為已校",
- "translate-messagereview-progress": "記為已校之……",
- "translate-messagereview-done": "已校",
- "api-error-unknownmessage": "訊無尋",
- "api-error-owntranslation": "汝不可記己譯為已校",
- "translate-messagereview-no-own": "汝不可記己之譯為已校",
"log-name-translationreview": "校譯之誌",
"translate-dynagroup-recent-label": "近譯",
"translate-msggroupselector-projects": "訊息組",
@@ -173,6 +162,7 @@
"tux-editor-collapse-tooltip": "摺",
"tux-editor-message-tools-history": "誌",
"tux-editor-loading": "載之……",
+ "translate-search-more-languages-info": "尚有{{PLURAL:$1|語文|語文}}$1",
"translate-statsbar-tooltip": "已譯$1%,已檢校$2%",
"translate-statsbar-tooltip-with-fuzzy": "$1%已翻,$2%檢校,$3%過時"
}
diff --git a/MLEB/Translate/i18n/core/mai.json b/MLEB/Translate/i18n/core/mai.json
index efe8d3ad..53d7b3d3 100644
--- a/MLEB/Translate/i18n/core/mai.json
+++ b/MLEB/Translate/i18n/core/mai.json
@@ -5,6 +5,7 @@
"Tulsi Bhagat"
]
},
- "languagestats-recenttranslations": "लग में भेल अनुवाद",
- "translate-documentation-language": "सूचना दस्तावेज़ीकरण"
+ "languagestats-recenttranslations": "सन्निकट अनुवाद",
+ "translate-languagestats-overall": "सम्पूर्ण सन्देश-समूह एक साथ",
+ "translate-documentation-language": "सूचना दस्तावेजीकरण"
}
diff --git a/MLEB/Translate/i18n/core/map-bms.json b/MLEB/Translate/i18n/core/map-bms.json
index f527a90d..39f0a4e6 100644
--- a/MLEB/Translate/i18n/core/map-bms.json
+++ b/MLEB/Translate/i18n/core/map-bms.json
@@ -6,11 +6,6 @@
},
"translate": "Terjemahna",
"translate-desc": "[[Special:Translate|Kaca astamiwa]] kanggo mertalna MediaWiki lan liyane",
- "translate-taskui-view": "Tidokna kabeh layang",
- "translate-taskui-untranslated": "Tidokna kabeh layang sing durung diterjemahna",
- "translate-taskui-optional": "Tidokna layang opsional",
- "translate-taskui-acceptqueue": "Mung pesen sing teyeng ditandhani inyong direview",
- "translate-taskui-reviewall": "Ulas kabeh terjemahan",
"translate-taskui-export-to-file": "Ekspor nang format asli",
"translate-taskui-export-as-po": "Ekspor kanggo terjemahan offline",
"translate-taction-translate": "Terjemahna",
@@ -42,8 +37,6 @@
"translate-edit-no-information": "\"Pesen kiye ora duwe dokumentasi.\"\n\"Angger Rika weruh nang endi utawa kepriwe pesen kiye digunakna, Rika teyeng nulungi penerjemah liyane mawa nambahna dokumentasi ming pesen kiye.\"",
"translate-edit-information": "Informasi bab pesen ($1)",
"translate-edit-in-other-languages": "Pesen nang basa-basa liyane",
- "translate-edit-committed": "Pertalan sekiya nang piranti alus",
- "translate-edit-tmsugs": "Saran sekang mèmori terjemahan lan terjemahan mesin",
"translate-edit-tmmatch-source": "Tèks sumber pertalan: $1",
"translate-edit-tmmatch": "$1% cocog",
"translate-use-suggestion": "Ganti terjemahan sekiye nganggo saran kiye.",
diff --git a/MLEB/Translate/i18n/core/mg.json b/MLEB/Translate/i18n/core/mg.json
index 0832afdc..6339c07d 100644
--- a/MLEB/Translate/i18n/core/mg.json
+++ b/MLEB/Translate/i18n/core/mg.json
@@ -4,8 +4,15 @@
"Jagwar"
]
},
+ "translate-page-showing": "Aseho ny hafatra avy amin'i $1 hatramin'i $2 amin'ny $3",
+ "translate-page-description-hasoptional-open": "Aseho ny hafatra tsy voatery",
"right-translate": "Manova ny interface fandikana",
"right-translate-manage": "Hitantana vondron-kafatra",
"right-translate-import": "Mampiditra ny fandikana na offline aza",
- "translate-sidebar-alltrans": "Amin'ny teny vahiny"
+ "translate-rc-translation-filter-only": "Dikanteny ihany no aseho",
+ "translate-sidebar-alltrans": "Amin'ny teny vahiny",
+ "translate-ls-submit": "Aseho ny statistika",
+ "translate-mgs-submit": "Aseho ny statistika",
+ "translate-documentation-language": "Valan-draki-kafatra",
+ "tux-edit": "Hanova"
}
diff --git a/MLEB/Translate/i18n/core/min.json b/MLEB/Translate/i18n/core/min.json
index f74c08bd..e2182cf9 100644
--- a/MLEB/Translate/i18n/core/min.json
+++ b/MLEB/Translate/i18n/core/min.json
@@ -5,7 +5,6 @@
"Naval Scene"
]
},
- "translate-edit-tmsugs": "Saran dari memori tajamahan",
"translate-statsf-start": "Tanggal mulai:",
"translate-statsf-scale": "Granularitas:",
"translate-statsf-scale-months": "Bulan",
diff --git a/MLEB/Translate/i18n/core/mk.json b/MLEB/Translate/i18n/core/mk.json
index ec172b1a..28ecc943 100644
--- a/MLEB/Translate/i18n/core/mk.json
+++ b/MLEB/Translate/i18n/core/mk.json
@@ -5,16 +5,14 @@
"Brest",
"Brest2008",
"Dario",
- "Милан Јелисавчић"
+ "Милан Јелисавчић",
+ "Vlad5250"
]
},
"translate": "Преведување",
+ "translate-extensionname": "Преведување",
"translate-desc": "[[Special:Translate|Службена страница]] за преведување на МедијаВики и други пораки",
- "translate-taskui-view": "Сите пораки",
- "translate-taskui-untranslated": "Непреведени пораки",
- "translate-taskui-optional": "Незадолжителни пораки",
- "translate-taskui-acceptqueue": "Само пораки што можам да ги означувам како проверени",
- "translate-taskui-reviewall": "Проверка на сите пораки",
+ "translate-fuzzybot-desc": "Ова е службена системска сметка што се користи од додатокот [https://www.mediawiki.org/wiki/Extension:Translate Преведување] на МедијаВики намете за одржување на преводи.\nОваа сметка е дел од основниот програм и не е во сопственост на ниеден корисник.",
"translate-taskui-export-to-file": "Извези во матичен формат",
"translate-taskui-export-as-po": "Извези за вонмрежно преведување",
"translate-taction-translate": "Преведи",
@@ -33,7 +31,7 @@
"translate-page-limit": "Највеќе до",
"translate-page-limit-option": "$1 {{PLURAL:$1|порака|пораки}} по страница",
"translate-submit": "Филтрирај",
- "translate-page-navigation-legend": "Навигација",
+ "translate-page-navigation-legend": "Прегледник",
"translate-page-showing": "Прикажани се пораки од $1 до $2 од вкупно $3",
"translate-page-showing-all": "Приказ на $1 {{PLURAL:$1|порака|пораки}}.",
"translate-page-showing-none": "Нема пораки за прикажување",
@@ -44,7 +42,6 @@
"translate-page-description-hasoptional": "Оваа група содржи незадолжителни пораки.\nНезадолжителните пораки треба да се преведуваат само кога вашиот јазик има посебни потреби како траслитерација на имиња или неупотреба на празни места. $1",
"translate-page-description-hasoptional-open": "Прикажи незадолжителни пораки.",
"translate-page-edit": "уреди",
- "translate-ext-url": "<hr />Мреж. место: $1",
"translate-optional": "(незадолжително)",
"translate-ignored": "(игнорирано)",
"translate-edit-title": "Уреди „$1“",
@@ -54,16 +51,19 @@
"translate-edit-no-information": "<em>Оваа порака нема документација.\nАко знаете каде или како се користи поракава, тогаш помогнете им на другите преведувачи додавајќи ѝ документација.</em>",
"translate-edit-information": "Информации за пораката ($1)",
"translate-edit-in-other-languages": "Пораката на други јазици",
- "translate-edit-committed": "Тековен превод во програмската опрема",
"translate-edit-warnings": "Предупредувања за нецелосни преводи",
- "translate-edit-tmsugs": "Предлози од претходни преводи",
"translate-edit-tmmatch-source": "Изворен текст за преводот: $1",
"translate-edit-tmmatch": "$1% совпаѓање",
"translate-use-suggestion": "Заменете го тековниот превод со овој предлог во полето за превод.",
"translate-edit-nopermission": "Ви требаат преведувачки права за да преведувате пораки.",
"translate-edit-askpermission": "Побарајте дозвола",
+ "exporttranslations": "Извези преводи",
+ "translate-export-form-format": "Формат",
+ "translate-export-invalid-format": "Укажете важечки формат.",
+ "translate-export-not-supported": "Извезување на преводи не е поддржано.",
+ "translate-export-format-notsupported": "Укажаниот извозен формат не е поддржана од групата пораки.",
"translate-magic-pagename": "Превод на додатоци за МедијаВики",
- "translate-magic-help": "Можете да ги преведете алијасите на службените страници, волшебните зборови и називите на именските простори.\n\nАлијасите на службените страници и волшебните зборови може да имаат повеќе преводи.\nПреводите се одделуваат со запирка (,).\nИменските простори може да имаат само по еден превод.\n\nПреведувањето на именскиот простор за разговор за проект <code>Разговор за $1</code> може да биде посложено.\n<code>$1</code> се заменува со проектот (на пр. <code>{{ns:project_talk}}</code>).\nАко на вашиот не може да се обликува правилен израз без промена на името на страницата, тогаш известете нè на страницата „[[Support|Поддршка]]“.\n\nЗа да ги зачувате промените, треба да сте преведувач.\nПромените нема да се зачуваат без да стиснете на долуприкажаното копче „Зачувај“.",
+ "translate-magic-help": "Можете да ги преведете истозначниците на службените страници, волшебните зборови и називите на именските простори.\n\nИстозначниците на службените страници и волшебните зборови може да имаат повеќе преводи.\nПреводите се одделуваат со запирка (,).\nИменските простори може да имаат само по еден превод.\n\nПреведувањето на именскиот простор за разговор за проект <code>Разговор за $1</code> може да биде посложено.\n<code>$1</code> се заменува со проектот (на пр. <code>{{ns:project_talk}}</code>).\nАко на вашиот не може да се обликува правилен израз без промена на името на страницата, тогаш известете нè на страницата „[[Support|Поддршка]]“.\n\nЗа да ги зачувате промените, треба да сте преведувач.\nПромените нема да се зачуваат без да стиснете на долуприкажаното копче „Зачувај“.",
"translate-magic-module": "Модул:",
"translate-magic-submit": "Филтрирај",
"translate-magic-cm-export": "Извоз",
@@ -75,12 +75,12 @@
"translate-magic-cm-save": "Зачувај",
"translate-magic-cm-updatedusing": "Подновено со помош на [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
"translate-magic-cm-savefailed": "Неуспешно зачувување",
- "translate-magic-special": "Алијаси на службени страници",
+ "translate-magic-special": "Истозначници на службени страници",
"translate-magic-words": "Волшебни зборови",
"translate-magic-namespace": "Називи на именски простори",
"translate-magic-notsaved": "Вашето уредување не беше зачувано!",
"translate-magic-errors": "Поправете {{PLURAL:$1|ја следнава грешка|ги следниве грешки}} во преводот:",
- "translate-magic-saved": "Промените се успешно зачувани.",
+ "translate-magic-saved": "Промените се зачувани.",
"translate-checks-parameters": "{{PLURAL:$2|Следниов параметар не се користи|Следниве параметри се користат}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-parameters-unknown": "{{PLURAL:$2|Следниов параметар е непознат|Следниве параметри се непознати}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-balance": "Непарен број на загради, {{PLURAL:$2|заграда|загради}}:\n<strong><nowiki>$1</nowiki></strong>",
@@ -103,11 +103,20 @@
"translate-pref-editassistlang-bad": "Погрешен јазичен код на списокот:\n<nowiki>$1</nowiki>.",
"right-translate": "Уредување со користење на посредникот за преведување",
"right-translate-manage": "Раководење со групи пораки",
- "action-translate-manage": "рСаководење со групи пораки",
+ "action-translate-manage": "раководење со групи пораки",
"right-translate-import": "Увезување на вонмрежни преводи (од сметач)",
"action-translate-import": "увоз на вонмрежни преводи",
"right-translate-messagereview": "Проверка на преводи",
+ "action-translate-messagereview": "проверка на преводи",
"right-translate-groupreview": "Менување на состојбата на работниот тек на групите пораки",
+ "action-translate-groupreview": "менување на состојбата на работниот тек на групите пораки",
+ "translate-rcfilters-translations": "Преводи",
+ "translate-rcfilters-translations-only-label": "Преводи",
+ "translate-rcfilters-translations-only-desc": "Промени во преведени страници.",
+ "translate-rcfilters-translations-filter-label": "Непреводи",
+ "translate-rcfilters-translations-filter-desc": "Сите промени кои не се преводи.",
+ "translate-rcfilters-translations-site-label": "Системски пораки",
+ "translate-rcfilters-translations-site-desc": "Прилагодувања на системски пораки во именскиот простор МедијаВики.",
"translate-rc-translation-filter": "Филтрирање на преводи:",
"translate-rc-translation-filter-no": "Не прави ништо",
"translate-rc-translation-filter-only": "Прикажи само преводи",
@@ -119,7 +128,7 @@
"translate-stats-registrations": "Регистрации",
"translate-stats-reviews": "Оценки",
"translate-stats-reviewers": "Оценувачи",
- "translate-statsf-intro": "Со овој образец можете да создадете едноставен статистички преглед. Сите вредности имаат максимални и минимални граници.",
+ "translate-statsf-intro": "Со овој образец можете да создадете едноставен статистички преглед. Сите вредности имаат горни и долни граници.",
"translate-statsf-options": "Нагодувања за графиконот",
"translate-statsf-width": "Ширина во пиксели:",
"translate-statsf-height": "Висина во пиксели:",
@@ -139,7 +148,6 @@
"translate-statsf-language": "Список на јазични кодови, одвоени со запирка:",
"translate-statsf-group": "Список на групни кодови, одвоени со запирка:",
"translate-statsf-submit": "Преглед",
- "translate-tag-category": "Преводливи страници",
"translate-tag-page-desc": "Превод на викистраницата [[$2|$1]] од $3 ($4).",
"translate-sidebar-alltrans": "На други јазици",
"translations": "Сите преводи",
@@ -177,11 +185,11 @@
"translate-mgs-pagename": "Статистики за групата",
"translate-mgs-fieldset": "Нагодувања на приказот",
"translate-mgs-group": "Група пораки:",
- "translate-mgs-nocomplete": "Не прикажувај јазици со потполн превод",
- "translate-mgs-noempty": "Не прикажувај јазици без никакви преводи",
+ "translate-mgs-nocomplete": "Не прикажувај јазици со наполно завршен превод",
+ "translate-mgs-noempty": "Не прикажувај јазици што немаат почнато со преведување",
"translate-mgs-submit": "Статистики",
"translate-mgs-column-language": "Јазик",
- "translate-mgs-totals": "Сите јазици заедно",
+ "translate-mgs-totals": "{{PLURAL:$1|Сиот јазик|Сите $1 јазици заедно}}",
"translate-mgs-invalid-group": "Наведената група $1 не постои.",
"translate-mgs-nothing": "Нема што да се прикаже за побараните статистики.",
"supportedlanguages": "Поддржани јазици",
@@ -189,10 +197,12 @@
"supportedlanguages-colorlegend": "Легенда за бојата: Последен превод извршен пред $1 дена.",
"supportedlanguages-portallink": "[$1] $2 - $3",
"supportedlanguages-portallink-nocldr": "[$1] $2",
+ "supportedlanguages-sqlite-error": "SQLite не е поддржан",
"supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|Преведувач}}|Преведувач}}: $1",
"supportedlanguages-recenttranslations": "скорешни преводи",
"supportedlanguages-count": "Вкупно $1 {{PLURAL:$1|јазик|јазици}}.",
"supportedlanguages-activity": "$1: $2 {{PLURAL:$2|уредување|уредувања}} - последното пред $3 {{PLURAL:$3|ден|дена}}",
+ "abusefilter-edit-builder-vars-translate-source-text": "Изворен текст на преводната единица",
"translate-save": "Зачувај ($1)",
"translate-jssti-add": "Додај во список",
"managemessagegroups": "Раководење со групи на пораки",
@@ -213,10 +223,9 @@
"translate-manage-nochanges": "Нема промени во дефинициите на пораките за оваа група.",
"translate-manage-nochanges-other": "Нема за овој јазик.\nУпотребете ја врската подолу за да се вратите на прегледот на подробности за групата.",
"translate-manage-inconsistent": "Откриена е недоследност во барањето.\nПроверете дали има промени и обидете се повторно.\nПодробности : $1.",
- "translate-manage-toolong": "Пречекорено е максималното време за обработка од {{PLURAL:$1|една секунда|$1 секунди}}.\nПоднесете го образецот одново за да продолжите со обработката.",
+ "translate-manage-toolong": "Пречекорен е временскиот рок за обработка од {{PLURAL:$1|една секунда|$1 секунди}}.\nПоднесете го образецот одново за да продолжите со обработката.",
"translate-manage-import-summary": "Увезување на нова верзија од надворешен извор",
"translate-manage-conflict-summary": "Увезување на нова верзија од надворешен извор.\nПроверете.",
- "translate-manage-fuzzy-summary": "Формулацијата на пораката е променета",
"translate-manage-submit": "Изврши",
"translate-manage-intro-other": "Еве список на промени во преводите на јазикот $1.\nПрегледајте ги пораките и изберете го дејството што сакате да го направите за секоја поднова.\nАко изберете да ги занемарите промените, ова дејство ќе биде само привремено.",
"translate-manage-import-ok": "Увезена: $1",
@@ -234,9 +243,7 @@
"translate-js-summary": "Опис:",
"translate-js-save": "Зачувај",
"translate-js-next": "Зачувај и отвори следна",
- "translate-js-nonext": "Ова беше последната порака на страницава.",
"translate-js-skip": "Прејди на следно",
- "translate-js-save-failed": "Зачувувањето не успеа. Ве молиме пријавете ја оваа грешка.",
"translate-js-history": "Минати преводи",
"translate-js-support": "Постави прашање",
"translate-js-support-title": "Побарајте помош ако немате доволно информации за да направите точен превод на пораката.",
@@ -253,23 +260,9 @@
"translate-documentation-language": "документација на пораки",
"translate-searchprofile": "Преводи",
"translate-searchprofile-tooltip": "Пребарување по сите преводи",
+ "translate-searchprofile-note": "Повеќе можности за пребарување ќе најдете на [$1 пребарувачот на преводи].",
"translate-search-languagefilter": "Филтрирај по јазик:",
"translate-search-nofilter": "Без филтрирање",
- "translate-messagereview-submit": "Означи како проверено",
- "translate-messagereview-progress": "Означувам како проверено...",
- "translate-messagereview-failure": "Означувањето како проверено не успеа: $1",
- "translate-messagereview-done": "Проверено",
- "translate-messagereview-reviews": "Проверено од {{PLURAL:$1|еден корисник|$1 корисници}}",
- "translate-messagereview-reviewswithyou": "Проверено од {{PLURAL:$1|вас|$1 корисници, вклучувајќи ве и вас}}",
- "api-error-invalidrevision": "Преводот не е пронајден",
- "api-error-unknownmessage": "Пораката не е пронајдена",
- "api-error-fuzzymessage": "Преводот е обележан како застарен",
- "api-error-owntranslation": "Не можете да означувате Ваши сопствени преводи како проверени.",
- "translate-messagereview-no-fuzzy": "Застарените преводи не можат да се означуваат како проверени",
- "translate-messagereview-no-own": "Не можете да означувате Ваши сопствени преводи како проверени.",
- "translate-messagereview-doit": "Означи го преводов како проверен.",
- "group-translate-proofr.css": "/* Тука поставениот CSS ќе се применува само врз проверувачите на преводи */",
- "group-translate-proofr.js": "/* Тука поставениот JS ќе се применува само врз проверувачите на преводи */",
"log-name-translationreview": "Дневник на проверки на преводи",
"log-description-translationreview": "Дневник на сите проверки на преводи и групи пораки",
"logentry-translationreview-message": "$1 {{GENDER:$2|го провери}} преводот $3",
@@ -282,10 +275,7 @@
"action-translate-sandboxaction": "вршење на дејства на белиот список за корисници во песочникот",
"translate-workflow-state-": "(незададен)",
"translate-workflowstatus": "Статус: $1",
- "translate-workflow-set-do": "Задај",
"translate-workflow-set-doing": "Задавам...",
- "translate-workflow-set-done": "Зададено!",
- "translate-workflow-set-error-alreadyset": "Бараната состојба не се разликува од моменталната.",
"translate-workflow-autocreated-summary": "Автоматско создавање на страница за работната состојба $1",
"translate-stats-workflow": "Статус",
"translate-workflowgroup-label": "Работни состојби",
@@ -294,11 +284,6 @@
"translate-dynagroup-recent-desc": "Оваа група пораки ги прикажува сите скорешни преводи на овој јазик.\nОва е најкорисно при вршењето на прегледи.",
"translate-dynagroup-additions-label": "Неодамна додадени",
"translate-dynagroup-additions-desc": "Оваа група пораки прикажува нови и изменети пораки",
- "translate-dynagroup-by": "Преводот го изврши {{GENDER:$1|$1}}",
- "translate-dynagroup-byc": "Преводот го изврши {{GENDER:$1|$1}} ($2)",
- "translate-dynagroup-last": "Последната промена ја изврши {{GENDER:$1|$1}}",
- "translate-dynagroup-lastc": "Последната промена ја изврши {{GENDER:$1|$1}} ($2)",
- "translate-gethelp": "Помош",
"translate-msggroupselector-projects": "Група пораки",
"translate-msggroupselector-search-placeholder": "Пребарајте групи",
"translate-msggroupselector-search-all": "Сите",
@@ -317,14 +302,17 @@
"tux-status-translated": "Преведено",
"tux-status-saving": "Зачувувам...",
"tux-status-unsaved": "Незачувано",
+ "tux-save-unknown-error": "Се појави непозната грешка.",
"tux-editor-placeholder": "Ваш превод",
+ "tux-editor-editsummary-placeholder": "Опис (по желба)",
"tux-editor-paste-original-button-label": "Вметни изворен текст",
"tux-editor-discard-changes-button-label": "Отфрли промени",
"tux-editor-save-button-label": "Зачувај превод",
"tux-editor-skip-button-label": "Прејди на следно",
"tux-editor-cancel-button-label": "Откажи",
"tux-editor-confirm-button-label": "Потврди превод",
- "tux-editor-shortcut-info": "Стиснете на „$1“ за да зачувате, „$2“ за да прејдете на следната порака, или пак „$3“ за други кратенки.",
+ "tux-editor-proofread-button-label": "Означи како проверено",
+ "tux-editor-shortcut-info": "Стиснете на „$1“ за да зачувате, „$2“ за да прејдете на следната порака, „$4“ за да дадете опис, или пак „$3“ за други кратенки.",
"tux-editor-edit-desc": "Уреди документација",
"tux-editor-add-desc": "Додај документација",
"tux-editor-suggestions-title": "Предлози",
@@ -354,7 +342,7 @@
"tux-messagetable-more-messages": "уште {{PLURAL:$1|една порака|$1 пораки}}",
"tux-messagetable-loading-messages": "{{PLURAL:$1|Ја вчитувам пораката|Ги вчитувам пораките}}...",
"tux-message-filter-placeholder": "Филтрирај список",
- "tux-message-filter-result": "Пронајдов $1 {{PLURAL:$1|резултат|резултати}} за „$2“",
+ "tux-message-filter-result": "Пронајдов $1 {{PLURAL:$1|ставка|ставки}} за „$2“",
"tux-message-filter-advanced-button": "Напредно пребарување",
"tux-message-filter-optional-messages-label": "Незадолжителни пораки",
"tux-proofread-translated-by-self": "Преведено од Вас",
@@ -379,9 +367,11 @@
"tux-editor-close-tooltip": "Затвори",
"tux-editor-expand-tooltip": "Прикажи",
"tux-editor-collapse-tooltip": "Собери",
+ "tux-editor-message-tools-show-editor": "Прикажи во викиуредник",
"tux-editor-message-tools-history": "Историја",
"tux-editor-message-tools-delete": "Избриши",
"tux-editor-message-tools-translations": "Сите преводи",
+ "tux-editor-message-tools-linktothis": "Врска до поракава",
"tux-editor-loading": "Вчитувам...",
"translate-search-more-languages-info": "уште {{PLURAL:$1|еден јазик|$1 јазици}}",
"translate-statsbar-tooltip": "$1% преведени, $2% проверени",
@@ -389,5 +379,6 @@
"translate-search-more-groups-info": "Уште {{PLURAL:$1|една група|$1 групи}}",
"translate-ulsdep-title": "Грешка во поставеноста",
"translate-ulsdep-body": "Додатокот за превод е зависен од додатокот „[https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector Универзален јазичен избирач]“.",
- "tux-session-expired": "Повеќе не сте најавени. Најавете се во друго јазиче. Можете и некаде да ги прекопирате незачуваните преводи, па да се најавите и да се навратите на страницава."
+ "tux-session-expired": "Повеќе не сте најавени. Најавете се во друго јазиче. Можете и некаде да ги прекопирате незачуваните преводи, па да се најавите и да се навратите на страницава, и потоа внесете ги преводите повторно.",
+ "tux-nojs": "Оваа алатка не работи без JavaScript. JavaScript е исклучен, не работи или прелистувачот не е поддржан."
}
diff --git a/MLEB/Translate/i18n/core/ml.json b/MLEB/Translate/i18n/core/ml.json
index 1464e7bf..d0d7d340 100644
--- a/MLEB/Translate/i18n/core/ml.json
+++ b/MLEB/Translate/i18n/core/ml.json
@@ -11,11 +11,6 @@
},
"translate": "വിവർത്തനം ചെയ്യുക",
"translate-desc": "മീഡിയവിക്കിയും മറ്റുള്ളവയും തർജ്ജമ ചെയ്യാനുള്ള [[Special:Translate|പ്രത്യേക താൾ]]",
- "translate-taskui-view": "എല്ലാ സന്ദേശങ്ങളും പ്രദർശിപ്പിക്കുക",
- "translate-taskui-untranslated": "പരിഭാഷപ്പെടുത്താത്ത സന്ദേശങ്ങൾ പ്രദർശിപ്പിക്കുക",
- "translate-taskui-optional": "ഐച്ഛിക സന്ദേശങ്ങൾ പ്രദർശിപ്പിക്കുക",
- "translate-taskui-acceptqueue": "സംശോധനം ചെയ്തതെന്ന് എനിക്ക് അടയാളപ്പെടുത്താവുന്ന സന്ദേശങ്ങൾ മാത്രം",
- "translate-taskui-reviewall": "എല്ലാ പരിഭാഷകളും സംശോധനം ചെയ്യുക",
"translate-taskui-export-to-file": "സഹജമായ ഫോർമാറ്റിൽ കയറ്റുമതി ചെയ്യുക",
"translate-taskui-export-as-po": "ഓഫ്-ലൈൻ പരിഭാഷയ്ക്കായി കയറ്റുമതി ചെയ്യുക",
"translate-taction-translate": "പരിഭാഷപ്പെടുത്തുക",
@@ -44,7 +39,6 @@
"translate-page-description-hasoptional": "ഈ സന്ദേശഗണത്തിൽ ഐച്ഛിക സന്ദേശങ്ങളുണ്ട്.\nതാങ്കളുടെ ഭാഷയ്ക്ക് പ്രത്യേക ആവശ്യങ്ങളുള്ളപ്പോൾ, അതായത് ഇട നൽകിയെഴുതേണ്ടി വരികയോ സാമാന്യനാമങ്ങൾ ലിപിമാറ്റം ചെയ്യേണ്ടി വരുമ്പഴോ മറ്റോ മാത്രമേ ഐച്ഛിക സന്ദേശങ്ങൾ പരിഭാഷപ്പെടുത്തേണ്ടതുള്ളു. $1",
"translate-page-description-hasoptional-open": "ഐച്ഛിക സന്ദേശങ്ങൾ പ്രദർശിപ്പിക്കുക.",
"translate-page-edit": "തിരുത്തുക",
- "translate-ext-url": "<hr />വെബ്സൈറ്റ്: $1",
"translate-optional": "(നിർബന്ധമില്ല)",
"translate-ignored": "(അവഗണിച്ചിരിക്കുന്നു)",
"translate-edit-title": "\"$1\" തിരുത്തുക",
@@ -54,9 +48,7 @@
"translate-edit-no-information": "''ഈ സന്ദേശത്തിനു ഡോക്കുമെന്റേഷൻ ഇല്ല.\nഈ സന്ദേശം എങ്ങനെയാണു ഉപയോഗിക്കപ്പെടുന്നത് എന്ന് താങ്കൾക്ക് അറിയാമെങ്കിൽ, അതിനെകുറിച്ചുള്ള ഡോക്കുമെന്റേഷൻ ചേർത്ത് താങ്കൾക്ക് മറ്റുള്ള പരിഭാഷകർക്കു സഹായമേകാം.''",
"translate-edit-information": "സന്ദേശത്തെക്കുറിച്ചുള്ള വിശദീകരണം ($1)",
"translate-edit-in-other-languages": "സന്ദേശം മറ്റു ഭാഷകളിൽ",
- "translate-edit-committed": "സന്ദേശത്തിന്റെ നിലവിലുള്ള പരിഭാഷ",
"translate-edit-warnings": "അപൂർണ്ണമായ പരിഭാഷയെക്കുറിച്ചുള്ള മുന്നറിയിപ്പ്",
- "translate-edit-tmsugs": "ഓർത്തുവെച്ച പരിഭാഷപ്പെടുത്തലുകളിൽ നിന്നുള്ള സൂചനകൾ",
"translate-edit-tmmatch-source": "പരിഭാഷയുടെ മൂലരൂപം: $1",
"translate-edit-tmmatch": "$1% പൊരുത്തപ്പെടുന്നു",
"translate-use-suggestion": "ഇപ്പോഴുള്ള പരിഭാഷയ്ക്ക് പകരം ഈ നിർദ്ദേശം ഉപയോഗിയ്ക്കുക.",
@@ -92,6 +84,7 @@
"translate-pref-nonewsletter": "ഇമെയിൽ വാർത്താപത്രികകൾ എനിക്ക് അയയ്ക്കേണ്ടതില്ല",
"translate-pref-editassistlang": "സഹായ ഭാഷകൾ:",
"prefs-translate": "പരിഭാഷാ ഐച്ഛികങ്ങൾ",
+ "translate-pref-editassistlang-help": "അല്പവിരാമം ഉപയോഗിച്ച് വേർപെടുത്തിയിരിക്കുന്ന ഭാഷാ കോഡുകളുടെ പട്ടിക. \nതാങ്കൾ പരിഭാഷപ്പെടുത്തുമ്പോൾ ഈ ഭാഷകളിലെ പരിഭാഷകൾ കാണിക്കുന്നതാണ്. \nസ്വതേ നൽകുന്ന പട്ടിക താങ്കളുടെ ഭാഷയെ ആശ്രയിച്ചുള്ളതായിരിക്കും",
"translate-pref-editassistlang-bad": "പട്ടികയിലെ അസാധുവായ ഭാഷ കോഡ്:\n<nowiki>$1</nowiki>.",
"right-translate": "പരിഭാഷയ്ക്കുള്ള സമ്പർക്കമുഖമുപയോഗിച്ച് തിരുത്തുക",
"right-translate-manage": "സന്ദേശ സഞ്ചയങ്ങളുടെ കൈകാര്യം",
@@ -99,7 +92,16 @@
"right-translate-import": "ഓഫ്‌ലൈൻ പരിഭാഷകൾ ഇറക്കുമതി ചെയ്യുക",
"action-translate-import": "ഓഫ്‌ലൈനായിട്ടുള്ള പരിഭാഷകൾ കയറ്റുമതി ചെയ്യുക",
"right-translate-messagereview": "പരിഭാഷകൾ സംശോധനം ചെയ്യുക",
+ "action-translate-messagereview": "പരിഭാഷകൾ സംശോധനം ചെയ്യുക",
"right-translate-groupreview": "സന്ദേശഗണങ്ങളുടെ വർക്ക്‌ഫ്ലോ സ്ഥിതിയിൽ മാറ്റം വരുത്തുക",
+ "action-translate-groupreview": "സന്ദേശഗണങ്ങളുടെ വർക്ക്‌ഫ്ലോ സ്ഥിതിയിൽ മാറ്റം വരുത്തുക",
+ "translate-rcfilters-translations": "പരിഭാഷകൾ",
+ "translate-rcfilters-translations-only-label": "പരിഭാഷകൾ",
+ "translate-rcfilters-translations-only-desc": "പരിഭാഷപ്പെടുത്തിയ താളുകളിലെ മാറ്റങ്ങൾ.",
+ "translate-rcfilters-translations-filter-label": "പരിഭാഷകൾ വേണ്ട",
+ "translate-rcfilters-translations-filter-desc": "പരിഭാഷകൾ അല്ലാത്ത എല്ലാ മാറ്റങ്ങളും.",
+ "translate-rcfilters-translations-site-label": "സൈറ്റ് സന്ദേശങ്ങൾ",
+ "translate-rcfilters-translations-site-desc": "മീഡിയവിക്കി നാമമേഖലയിലുള്ള സൈറ്റ് സന്ദേശങ്ങളിലെ മാറ്റങ്ങൾ.",
"translate-rc-translation-filter": "പരിഭാഷകൾ അരിച്ചെടുക്കുക:",
"translate-rc-translation-filter-no": "ഒന്നും ചെയ്യേണ്ടതില്ല",
"translate-rc-translation-filter-only": "പരിഭാഷകൾ മാത്രം പ്രദർശിപ്പിക്കുക",
@@ -131,8 +133,7 @@
"translate-statsf-language": "അല്പവിരാമത്താൽ വിഭജിക്കപ്പെട്ടിട്ടുള്ള ഭാഷാകോഡുകളുടെ പട്ടിക",
"translate-statsf-group": "കോഡ് ഗണങ്ങളുടെ അല്പവിരാമചിഹ്നത്താൽ വിഭജിക്കപ്പെട്ട പട്ടിക",
"translate-statsf-submit": "എങ്ങനെയുണ്ടെന്ന് കാണുക",
- "translate-tag-category": "പരിഭാഷപ്പെടുത്താവുന്ന താളുകൾ",
- "translate-tag-page-desc": "[[$2|$1]] എന്ന വിക്കി താളിന്റെ തർജ്ജമ.",
+ "translate-tag-page-desc": "$3 ($4) ഭാഷയിലെ [[$2|$1]] എന്ന വിക്കി താളിന്റെ തർജ്ജമ.",
"translate-sidebar-alltrans": "ഇതര ഭാഷകളിൽ",
"translations": "എല്ലാ തർജ്ജമകളും",
"translations-summary": "ലഭ്യമായ എല്ലാ പരിഭാഷകളും പ്രദർശിക്കപ്പെടാൻ താഴെ സന്ദേശത്തിന്റെ പേര് നൽകുക.",
@@ -184,7 +185,6 @@
"translate-manage-import-deleted": "മായ്ക്കപ്പെട്ട സന്ദേശം $1",
"translate-manage-action-import": "ഇറക്കുമതി ചെയ്യുക",
"translate-manage-action-ignore": "അവഗണിക്കുക",
- "translate-manage-fuzzy-summary": "സന്ദേശ നിർവചനം മാറിയിരിക്കുന്നു",
"translate-manage-submit": "നടപ്പിലാക്കുക",
"translate-manage-import-ok": "$1 എന്ന താളിന്റെ പുതിയ പതിപ്പ് ഇറക്കുമതി ചെയ്തിരിക്കുന്നു.",
"translate-manage-import-done": "എല്ലാം ചെയ്തു!",
@@ -195,7 +195,6 @@
"translate-js-summary": "ചുരുക്കം:",
"translate-js-save": "സേവ് ചെയ്യുക",
"translate-js-next": "സേവ് ചെയ്യുക, അടുത്തത് തുറക്കുക",
- "translate-js-nonext": "ഇത് ഈ താളിലെ അവസാന സന്ദേശമാണ്.",
"translate-js-skip": "അടുത്തതിലേയ്ക്ക് പോവുക",
"translate-js-history": "പരിഭാഷയുടെ നാൾവഴി",
"translate-js-support": "ചോദ്യം ചോദിക്കുക",
@@ -213,30 +212,15 @@
"translate-searchprofile": "പരിഭാഷകൾ",
"translate-searchprofile-tooltip": "എല്ലാ പരിഭാഷകളിൽ നിന്നും തിരയുക",
"translate-search-languagefilter": "ഭാഷയനുസരിച്ച് എടുക്കുക:",
- "translate-messagereview-submit": "സ്വീകരിക്കുക",
- "translate-messagereview-progress": "സ്വീകരിക്കുന്നു...",
- "translate-messagereview-failure": "സ്വീകരിക്കുന്നു... പരാജയപ്പെട്ടു: $1",
- "translate-messagereview-done": "സ്വീകരിച്ചവ",
- "translate-messagereview-reviews": "{{PLURAL:$1|ഒരു ഉപയോക്താവ്|$1 ഉപയോക്താക്കൾ}} സംശോധനം ചെയ്തിരിക്കുന്നു",
- "translate-messagereview-reviewswithyou": "{{PLURAL:$1|നിങ്ങൾ|നിങ്ങളടക്കം $1 ഉപയോക്താക്കൾ}} സംശോധനം ചെയ്തിരിക്കുന്നു",
- "api-error-invalidrevision": "പരിഭാഷ കണ്ടെത്താനായില്ല",
- "api-error-unknownmessage": "സന്ദേശം കണ്ടെത്താനായില്ല",
- "api-error-owntranslation": "താങ്കൾക്ക് താങ്കളുടെ തന്നെ പരിഭാഷകൾ സ്വീകരിക്കാനാവില്ല",
- "translate-messagereview-no-own": "താങ്കൾക്ക് താങ്കളുടെ തന്നെ പരിഭാഷകൾ സ്വീകരിക്കാനാവില്ല",
- "translate-messagereview-doit": "തർജ്ജമ ശരിയാണെന്നു രേഖപ്പെടുത്തുക",
"log-name-translationreview": "പരിഭാഷാ സംശോധന രേഖ",
"translate-workflow-state-": "(സജ്ജീകരിച്ചിട്ടില്ല)",
"translate-workflowstatus": "സ്ഥിതി : $1",
- "translate-workflow-set-do": "സജ്ജീകരിക്കുക",
"translate-workflow-set-doing": "സജ്ജീകരിക്കുന്നു...",
- "translate-workflow-set-done": "സജ്ജീകരിച്ചു!",
"translate-stats-workflow": "സ്ഥിതി",
"translate-workflowgroup-label": "വർക്ക്‌ഫ്ലോ സ്ഥിതികൾ",
"translate-dynagroup-recent-label": "സമീപകാല പരിഭാഷകൾ",
"translate-dynagroup-additions-label": "സമീപകാലത്ത് ചേർത്തവ",
"translate-dynagroup-additions-desc": "പുതിയതും മാറ്റം വന്നതുമായ ആയ സന്ദേശങ്ങൾ കാണിക്കുന്നു",
- "translate-dynagroup-by": "$1 തർജ്ജമ ചെയ്തിരിക്കുന്നു",
- "translate-gethelp": "സഹായം",
"translate-msggroupselector-projects": "സന്ദേശഗണങ്ങൾ",
"translate-msggroupselector-search-placeholder": "സന്ദേശഗണങ്ങൾ തിരയുക",
"translate-msggroupselector-search-all": "എല്ലാം",
diff --git a/MLEB/Translate/i18n/core/mo.json b/MLEB/Translate/i18n/core/mo.json
index 8b3cb16e..eabc9137 100644
--- a/MLEB/Translate/i18n/core/mo.json
+++ b/MLEB/Translate/i18n/core/mo.json
@@ -1,11 +1,14 @@
{
"@metadata": {
"authors": [
- "Node ue"
+ "Node ue",
+ "Cybernenea11"
]
},
"translate": "Традуче",
"translate-desc": "[[Special:Translate|Паӂинэ спечиалэ]] пентру традучеря програмулуй МедияВики, дар ну нумай",
+ "translate-taction-translate": "Традучере",
+ "translate-taction-proofread": "Верификаре",
"translate-page-no-such-language": "Лимба спечификатэ есте инкоректэ.",
"translate-page-no-such-group": "Групул спечификат есте инвалид.",
"translate-page-disabled": "Посибилитатя де а традуче ачест груп ын ачастэ лимбэ а фост дезактиватэ.\nМотив:\n\n<em>$1</em>",
@@ -21,22 +24,40 @@
"translate-next": "Паӂина урмэтоаре",
"translate-prev": "Паӂина антериоарэ",
"translate-page-description-legend": "Информаций деспре груп",
- "translate-page-edit": "едитязэ",
+ "translate-page-edit": "редактаре",
"translate-optional": "(опционал)",
"translate-ignored": "(игнорат)",
- "translate-edit-title": "Едитязэ «$1»",
+ "translate-edit-title": "Редактаць «$1»",
"translate-edit-definition": "Дефиниция месажулуй",
"translate-edit-contribute": "контрибуе",
- "translate-edit-no-information": "''Ачест месаж ну аре документацие.\nДакэ штий унде сау кум есте фолосит, ый поць ажута пе чеилалць традукэторь прин адэугаря документацией сале.''",
- "translate-edit-information": "Информаций деспре месажул «$2» ($1)",
- "translate-edit-in-other-languages": "Месажул «$1» ын алте лимбь",
+ "translate-edit-no-information": "<em>Ачест месаж ну аре документацие.\nДакэ штиць унде сау кум есте фолосит, ый путець ажута пе чейлалць традукэторь прин адэугаря документацией сале.</em>",
+ "translate-edit-information": "Информаций деспре месаж ($1)",
+ "translate-edit-in-other-languages": "Месажул ын алте лимбь",
"translate-magic-submit": "Адуче",
"translate-magic-cm-current": "актуал",
"translate-magic-cm-original": "Ориӂинал",
"translate-magic-cm-comment": "Коментариу:",
"translate-magic-cm-save": "Салвязэ",
"translate-stats-users": "Традукэторь",
+ "translate-untranslated": "Де традус",
+ "translate-ls-column-group": "Груп де месаже",
+ "translate-mgs-group": "Груп де месаже:",
"translate-js-next": "Салвязэ ши мерӂь май департе",
- "translate-js-nonext": "Ачеста есте ултимул месаж де пе ачастэ паӂинэ.",
- "translate-js-skip": "Сарь май департе"
+ "translate-js-skip": "Урмэторул месаж",
+ "translate-documentation-language": "Документация месажулуй",
+ "tux-languageselector": "Традучець ын",
+ "tux-tab-all": "Тоате",
+ "tux-tab-untranslated": "Де традус",
+ "tux-tab-outdated": "Ынвеките",
+ "tux-tab-translated": "Традусе",
+ "tux-tab-unproofread": "Де верификат",
+ "tux-edit": "Редактаре",
+ "tux-status-proofread": "Верификат",
+ "tux-status-translated": "Традус",
+ "tux-editor-placeholder": "Традучеря думнявоастрэ",
+ "tux-editor-skip-button-label": "Урмэторул месаж",
+ "tux-editor-proofreading-mode": "Верификаре",
+ "tux-editor-translate-mode": "Листэ",
+ "tux-editor-page-mode": "Паӂинэ",
+ "tux-message-filter-placeholder": "Филтраря листей"
}
diff --git a/MLEB/Translate/i18n/core/mr.json b/MLEB/Translate/i18n/core/mr.json
index a8ed1459..15bc29c2 100644
--- a/MLEB/Translate/i18n/core/mr.json
+++ b/MLEB/Translate/i18n/core/mr.json
@@ -11,12 +11,8 @@
]
},
"translate": "भाषांतर करा",
+ "translate-extensionname": "भाषांतर करा",
"translate-desc": "मिडीयाविकि आणि इतर भाषांतरे करण्याकरिता [[Special:Translate|विशेष पान]]",
- "translate-taskui-view": "सर्व संदेश दाखवा",
- "translate-taskui-untranslated": "अभाषांतरीत संदेश दाखवा",
- "translate-taskui-optional": "ऐच्छिक संदेश दाखवा",
- "translate-taskui-acceptqueue": "फक्त संदेश ज्यास मी 'परिक्षण केले'(रिव्ह्यूड)अशी खूण करू शकतो",
- "translate-taskui-reviewall": "सर्व भाषांतरांचे परिक्षण करा",
"translate-taskui-export-to-file": "मुळ प्रारूपात निर्यात करा",
"translate-taskui-export-as-po": "विना-जाल भाषांतरासाठी निर्यात करा",
"translate-taction-translate": "भाषांतर करा",
@@ -45,7 +41,6 @@
"translate-page-description-hasoptional": "या संदेश गटात ऐच्छिक संदेश आहेत.\nजेंव्हा आपल्या भाषेची विशेष गरज असेल तेंव्हाच ऐच्छिक संदेशांचे भाषांतर करावे\nजसे(शब्दात) रिकामी जागा न वापरणे किंवा विशेषनाम. $1",
"translate-page-description-hasoptional-open": "ऐच्छिक संदेश दाखवा",
"translate-page-edit": "संपादन करा",
- "translate-ext-url": "<hr />वेबसाइट: $1",
"translate-optional": "(वैकल्पिक)",
"translate-ignored": "(दुर्लक्षित)",
"translate-edit-title": "\"$1\"चे संपादन",
@@ -55,14 +50,13 @@
"translate-edit-no-information": "<em>या संदेशाकरिता कोणतेही नोंदीकरण(डॉक्यूमेंटेशन) नाही. हा संदेश कुठे आणि कसा वापरला आहे हे तुम्हाला ठाऊक असेल तर, या पानाचे नोंदीकरण(डॉक्यूमेंटेशन) करून तुम्ही इतर भाषांतरकारांना मदत करू शकता.</em>",
"translate-edit-information": "($1) या संदेशाबद्दल माहिती",
"translate-edit-in-other-languages": "इतर भाषांमधील संदेश",
- "translate-edit-committed": "संकेतन प्रणालीमधील सध्याचे भाषांतरण",
"translate-edit-warnings": "अर्धवट भाषांतरांसाठीचे इशारे",
- "translate-edit-tmsugs": "भाषांतर स्मृती मधून व यांत्रिक भाषांतरामधून सुचवण्या",
"translate-edit-tmmatch-source": "स्रोत मजकूराचे भाषांतर: $1",
"translate-edit-tmmatch": "$1% जुळते",
"translate-use-suggestion": "सध्याचे भाषांतराऐवजी ही सुचवणी टाका.",
"translate-edit-nopermission": "आपणास भाषांतरासाठी 'भाषांतर अधिकार' हवेत.",
"translate-edit-askpermission": "परवानगी घ्या",
+ "exporttranslations": "भाषांतरे निर्यात करा",
"translate-magic-pagename": "वाढीव मीडियाविकि भाषांतर",
"translate-magic-module": "नियामक:",
"translate-magic-submit": "ओढा",
@@ -101,7 +95,7 @@
"prefs-translate": "भाषांतर पर्याय",
"translate-pref-editassistlang-help": "ही स्वल्पविरामाद्वारे विभाजित केलेली भाषासंकेतांची यादी आहे.\n\nआपण भाषांतर करीत असतांना,संदेशाचे या भाषेतील भाषांतर दाखविल्या जाते.\n\nयातील अविचल भाषा आपल्या मूळ भाषेवर आधारीत आहेत.",
"translate-pref-editassistlang-bad": "यादीत अवैध भाषासंकेत:\n<nowiki>$1</nowiki>.",
- "right-translate": "भाषांतर इंटरफेस वापरून भाषांतर करा",
+ "right-translate": "भाषांतर आंतरपृष्ठ वापरून संपादन करा",
"right-translate-manage": "संदेशगटांचे व्यवस्थापन करा",
"action-translate-manage": "संदेशगटांचे व्यवस्थापन करा",
"right-translate-import": "जालविरहीत भाषांतरे आयात करा",
@@ -139,7 +133,6 @@
"translate-statsf-language": "भाषा संकेतांची स्वल्पविरामाने वेगळी केलेली यादी:",
"translate-statsf-group": "गट संकेतांची स्वल्पविरामाने वेगळी केलेली यादी:",
"translate-statsf-submit": "झलक",
- "translate-tag-category": "भाषांतरासाठीची पाने",
"translate-tag-page-desc": "विकिपान [[$2|$1]] चे भाषांतर.",
"translate-sidebar-alltrans": "इतर भाषांत",
"translations": "सर्व भाषांतरे",
@@ -153,7 +146,7 @@
"translate-translations-including-no-param": "उपपान प्राचलात एक वैध संदेश कळ नमूद करा",
"translate-translations-history-short": "एच",
"languagestats": "भाषेची सांख्यिकी",
- "languagestats-summary": "हे पान एका भाषेसाठी असलेल्या सर्व संदेशगटांची सांख्यिकी दाखविते.",
+ "languagestats-summary": "हे पान एखाद्या भाषेसाठी असलेल्या सर्व संदेशगटांची सांख्यिकी दाखविते.",
"messagegroupstats-summary": "हे पान संदेश गटांची सांख्यिकी दर्शविते.",
"languagestats-stats-for": "$1 ($2) साठी भाषांतर सांख्यिकी.",
"languagestats-recenttranslations": "अलीकडील भाषांतरे",
@@ -212,9 +205,8 @@
"translate-manage-toolong": "$1 चा जास्तीत जास्त प्रक्रिया काल{{PLURAL:$1|सेकंद}} पार झाला. कृपया, प्रक्रिया सुरू ठेवण्यास, या फॉर्मला पुन्हा सादर करा.",
"translate-manage-import-summary": "बाह्य स्रोतांतुन एक नविन आवृत्ती आयात करीत आहे",
"translate-manage-conflict-summary": "बाह्य स्रोतांतुन एक नविन आवृत्ती आयात करीत आहे.\nकृपया तपासा.",
- "translate-manage-fuzzy-summary": "संदेश व्यख्या बदलली आहे",
"translate-manage-submit": "क्रियान्वयन",
- "translate-manage-intro-other": "खाली $1 भाषेतील झालेल्या बदलांची यादी आहे.कृपया या बदलांचे पुनर्विलोकन करा व प्रत्येक अद्यतनासाठी आपण घेउ इच्छिणारी क्रिया निवडा.\nजर आपण झालेले बदल टाळू इच्छित असाल तर ही क्रिया तात्पुरत्या स्वरुपाची आहे.",
+ "translate-manage-intro-other": "खाली $1 भाषेतील झालेल्या भाषांतरबदलांची यादी आहे.कृपया या बदलांचे पुनर्विलोकन करा व प्रत्येक अद्यतनासाठी आपण घेऊ इच्छिणारी क्रिया निवडा.\nजर आपण झालेले बदल टाळू इच्छित असाल तर ही क्रिया तात्पुरत्या स्वरुपाची आहे.",
"translate-manage-import-ok": "आयात केले:$1",
"translate-manage-import-done": "आयात पूर्ण!",
"importtranslations": "भाषांतरे आयात करा",
@@ -227,9 +219,7 @@
"translate-js-summary": "सारांश:",
"translate-js-save": "जतन करा",
"translate-js-next": "जतन करुन मजकूर उघडा",
- "translate-js-nonext": "हा या पानावरील शेवटचा संदेश होता.",
"translate-js-skip": "पुढच्यावर सरका",
- "translate-js-save-failed": "जतन करणे अयशस्वी.या त्रूटीचा अहवाल पाठवा.",
"translate-js-history": "भाषांतर इतिहास",
"translate-js-support": "प्रश्न विचारा",
"translate-js-support-title": "जर या संदेशाच्या भाषांतरासाठी योग्य व पुरेशी माहिती येथे नसल्यास, मदतीची हाक द्या.",
@@ -245,35 +235,18 @@
"translate-searchprofile-tooltip": "सर्व भाषांतरात शोधा",
"translate-search-languagefilter": "भाषेनुसार गाळा:",
"translate-search-nofilter": "गाळणी नको",
- "translate-messagereview-submit": "पुनर्विलोकित खूण करा",
- "translate-messagereview-progress": "पुनर्विलोकित म्हणून खूण करीत आहे...",
- "translate-messagereview-failure": "पुनर्विलोकित खूण करणे अयशस्वी:$1",
- "translate-messagereview-done": "पुनरावलोकित",
- "translate-messagereview-reviews": "{{PLURAL:$1|एका सदस्याने|$1 सदस्यांनी}} पुनरावलोकित",
- "translate-messagereview-reviewswithyou": "{{PLURAL:$1|आपल्याद्वारे|$1 सदस्यांद्वारे(आपल्यासह)}}पुनरावलोकित",
- "api-error-invalidrevision": "भाषांतर सापडले नाही",
- "api-error-unknownmessage": "संदेश सापडला नाही",
- "api-error-fuzzymessage": "भाषांतरावर fuzzy म्हणून खूण केलेली आहे",
- "api-error-owntranslation": "आपण आपल्याच भाषांतरांवर पुनरावलोकित म्हणून खूण करु शकत नाही.",
- "translate-messagereview-no-fuzzy": "Fuzzy भाषांतरांवर पुनरावलोकित म्हणून खूण करु शकत नाही.",
- "translate-messagereview-no-own": "आपण आपल्याच भाषांतरांवर पुनरावलोकित म्हणून खूण करु शकत नाही.",
- "translate-messagereview-doit": "या भाषांतरावर पुनरावलोकित म्हणून खूण करा.",
"log-name-translationreview": "भाषांतर पुनरावलोकन नोंदी",
"log-description-translationreview": "भाषांतरे व संदेश गटातील सर्व पुनरावलोककांच्या नोंदी.",
+ "logentry-translationreview-message": "$1 ने $3 भाषांतर {{GENDER:$2|पुनर्विलोकित केले}}",
"group-translate-sandboxed": "अन-अनुमोदित भाषांतरकार",
"group-translate-sandboxed-member": "{{GENDER:$1|अन-अनुमोदित भाषांतरकार}}",
- "translate-workflow-set-error-alreadyset": "विनंती केलेली स्थिती व सध्याची स्थिती सारखीच आहे.",
+ "translate-workflowstatus": "स्थिती:$1",
"translate-stats-workflow": "स्थिति",
"translate-workflowgroup-label": "कार्यओघ स्थिती",
"translate-dynagroup-recent-label": "अलीकडील भाषांतरे",
"translate-dynagroup-recent-desc": "हा संदेशगट या भाषेतील सर्व अलिकडील भाषांतरे दाखवितो.\n\nपुनर्विलोकन कार्यासाठी अधिक उपयोगी.",
"translate-dynagroup-additions-label": "अलीकडेच जोडलेले",
"translate-dynagroup-additions-desc": "या संदेशगटात नविन व बदललेले संदेश आहेत.",
- "translate-dynagroup-by": "{{GENDER:$1|$1}} ने केलेली भाषांतरे",
- "translate-dynagroup-byc": "{{GENDER:$1|$1}} ($2)ने केलेली भाषांतरे",
- "translate-dynagroup-last": "{{GENDER:$1|$1}} ने केलेले शेवटचे बदल",
- "translate-dynagroup-lastc": "{{GENDER:$1|$1}} ($2)ने केलेले शेवटचे बदल",
- "translate-gethelp": "साहाय्य",
"translate-msggroupselector-projects": "संदेश गट",
"translate-msggroupselector-search-placeholder": "गट शोधा",
"translate-msggroupselector-search-all": "सर्व",
@@ -292,6 +265,7 @@
"tux-status-translated": "भाषांतरीत",
"tux-status-saving": "जतन करीत आहे...",
"tux-status-unsaved": "जतन न केलेले",
+ "tux-save-unknown-error": "एक अज्ञात त्रुटी उद्भवली.",
"tux-editor-placeholder": "आपली भाषांतरे",
"tux-editor-paste-original-button-label": "स्रोत मजकूर डकवा",
"tux-editor-discard-changes-button-label": "बदल हटवा",
@@ -299,7 +273,7 @@
"tux-editor-skip-button-label": "पुढच्यावर सरका",
"tux-editor-cancel-button-label": "रद्द करा",
"tux-editor-confirm-button-label": "भाषांतर निश्चिती",
- "tux-editor-shortcut-info": "जतन करण्यास \"$1\" टिचका किंवा पुढिल संदेशावर सरकण्यासाठी \"$2\" टिचका",
+ "tux-editor-shortcut-info": "जतन करण्यास \"$1\" टिचका किंवा पुढिल संदेशावर सरकण्यासाठी \"$2\" टिचका किंवा सारांश पुरविण्यासाठी \"$4\" टिचका किंवा इतर लघुपथासाठी \"$3\" टिचका.",
"tux-editor-edit-desc": "दस्ताऐवजीकरण संपादा",
"tux-editor-add-desc": "दस्ताऐवजीकरण जोडा",
"tux-editor-suggestions-title": "सूचना",
@@ -360,5 +334,6 @@
"translate-search-more-languages-info": "$1 अधिक{{PLURAL:$1|भाषा}}",
"translate-statsbar-tooltip": "$1% भाषांतरीत, $2% पुनर्विलोकित",
"translate-statsbar-tooltip-with-fuzzy": "$1% भाषांतरीत, $2% पुनर्विलोकित, $3% कालबाह्य",
- "translate-search-more-groups-info": "$1 अधिक{{PLURAL:$1|गट}}"
+ "translate-search-more-groups-info": "$1 अधिक{{PLURAL:$1|गट}}",
+ "tux-nojs": "यापानासाठी जावास्क्रिप्ट हवी."
}
diff --git a/MLEB/Translate/i18n/core/ms.json b/MLEB/Translate/i18n/core/ms.json
index 4464bc55..7906bc51 100644
--- a/MLEB/Translate/i18n/core/ms.json
+++ b/MLEB/Translate/i18n/core/ms.json
@@ -10,11 +10,6 @@
},
"translate": "Terjemah",
"translate-desc": "[[Special:Translate|Laman khas]] untuk menterjemah MediaWiki dan lain-lain",
- "translate-taskui-view": "Tunjukkan semua mesej",
- "translate-taskui-untranslated": "Tunjukkan mesej yang belum diterjemahkan",
- "translate-taskui-optional": "Tunjukkan mesej tidak wajib.",
- "translate-taskui-acceptqueue": "Hanya mesej yang boleh saya tandai sebagai disemak",
- "translate-taskui-reviewall": "Semak semua terjemahan",
"translate-taskui-export-to-file": "Eksport dalam format natif",
"translate-taskui-export-as-po": "Eksport untuk penterjemahan luar talian",
"translate-taction-translate": "Terjemah",
@@ -44,7 +39,6 @@
"translate-page-description-hasoptional": "Kumpulan mesej ini mengandungi mesej tidak wajib.\nMesej tidak wajib hanya wajar diterjemahkan jika bahasa anda mempunyai keperluan tertentu\nseperti tidak menggunakan jarak atau mengalih huruf kata nama khas. $1",
"translate-page-description-hasoptional-open": "Tunjukkan mesej tidak wajib.",
"translate-page-edit": "sunting",
- "translate-ext-url": "<hr />Tapak web: $1",
"translate-optional": "(tidak wajib)",
"translate-ignored": "(tidak diendahkan)",
"translate-edit-title": "Sunting \"$1\"",
@@ -54,9 +48,7 @@
"translate-edit-no-information": "<em>Pesanan ini tidak mempunyai pendokumenan. Jika anda tahu di mana atau bagaimana pesanan ini digunakan, anda boleh membantu para penterjemah dengan menambahkan pendokumenan kepada pesanan ini.</em>",
"translate-edit-information": "Maklumat mesej ($1)",
"translate-edit-in-other-languages": "Mesej dalam bahasa lain",
- "translate-edit-committed": "Penterjemahan terkini di dalam perisian",
"translate-edit-warnings": "Amaran penterjemahan tak lengkap",
- "translate-edit-tmsugs": "Cadangan dari sistem ingatan penterjemahan",
"translate-edit-tmmatch-source": "Teks sumber terjemahan: $1",
"translate-edit-tmmatch": "$1% berpadan",
"translate-use-suggestion": "Ganti terjemahan semasa dengan cadangan ini.",
@@ -139,7 +131,6 @@
"translate-statsf-language": "Senarai kod bahasa yang diasingkan dengan tanda koma:",
"translate-statsf-group": "Senarai kod kumpulan yang diasingkan dengan tanda koma:",
"translate-statsf-submit": "Pralihat",
- "translate-tag-category": "Laman yang boleh diterjemah",
"translate-tag-page-desc": "Terjemahan laman wiki [[$2|$1]].",
"translate-sidebar-alltrans": "Dalam bahasa lain",
"translations": "Semua terjemahan",
@@ -159,8 +150,8 @@
"translate-langstats-incomplete": "Sesetengah statistik di laman ini belum lengkap. Sila muatkan semula untuk mendapatkan lebih banyak statistik.",
"translate-langstats-expand": "kembangkan",
"translate-langstats-collapse": "lipat",
- "translate-langstats-expandall": "kembangkan semua",
- "translate-langstats-collapseall": "lipat semua",
+ "translate-langstats-expandall": "tunjukkan semua",
+ "translate-langstats-collapseall": "sorokkan semua",
"translate-language-code": "Kod bahasa",
"translate-language-code-field-name": "Kod bahasa:",
"translate-suppress-complete": "Sorokkan kumpulan mesej yang diterjemah sepenuhnya",
@@ -215,7 +206,6 @@
"translate-manage-toolong": "Tempoh pemprosesan maksimum $1 saat dilampaui.\nSila serahkan semula borang itu untuk terus memproses.",
"translate-manage-import-summary": "Mengimport versi baru dari sumber luaran",
"translate-manage-conflict-summary": "Mengimport versi baru dari sumber luaran.\nSila semak.",
- "translate-manage-fuzzy-summary": "Takrifan mesej telah diubah",
"translate-manage-submit": "Laksanakan",
"translate-manage-intro-other": "Berikut ialah senarai perubahan dalam bahasa $1.\nSila semak perubahan dan pilih tindakan yang anda hendak lakukan untuk setiap kemaskini.\nJika anda memilih untuk mengabaikan perubahan, maka tindakan ini hanya sementara.",
"translate-manage-import-ok": "Diimport: $1",
@@ -233,9 +223,7 @@
"translate-js-summary": "Ringkasan:",
"translate-js-save": "Simpan",
"translate-js-next": "Simpan dan buka yang seterusnya",
- "translate-js-nonext": "Inilah mesej terakhir di laman ini.",
"translate-js-skip": "Langkau ke mesej seterusnya",
- "translate-js-save-failed": "Gagal disimpan. Sila laporkan ralat ini.",
"translate-js-history": "Sejarah penterjemahan",
"translate-js-support": "Tanyakan soalan",
"translate-js-support-title": "Minta tolong kalau tak cukup maklumat untuk menterjemahkan mesej ini dengan betul.",
@@ -254,19 +242,6 @@
"translate-searchprofile-tooltip": "Cari dari semua terjemahan",
"translate-search-languagefilter": "Tapis mengikut bahasa:",
"translate-search-nofilter": "Jangan tapis",
- "translate-messagereview-submit": "Tanda sebagai disemak",
- "translate-messagereview-progress": "Menanda sebagai disemak...",
- "translate-messagereview-failure": "Gagal menanda sebagai disemak: $1",
- "translate-messagereview-done": "Disemak",
- "translate-messagereview-reviews": "Disemak oleh {{PLURAL:$1|seorang|$1 orang}} pengguna",
- "translate-messagereview-reviewswithyou": "Disemak oleh {{PLURAL:$1|anda|$1 orang pengguna, termasuk anda}}",
- "api-error-invalidrevision": "Terjemahan tidak dijumpai",
- "api-error-unknownmessage": "Mesej tidak dijumpai",
- "api-error-fuzzymessage": "Terjemahan ditandai sebagai kabur",
- "api-error-owntranslation": "Anda tidak boleh menanda terjemahan sendiri sebagai disemak.",
- "translate-messagereview-no-fuzzy": "Terjemahan kabur tidak boleh ditanda sebagai disemak.",
- "translate-messagereview-no-own": "Anda tidak boleh menanda terjemahan sendiri sebagai disemak.",
- "translate-messagereview-doit": "Tanda terjemahan ini sebagai disemak.",
"log-name-translationreview": "Log semakan terjemahan",
"log-description-translationreview": "Log bagi semua kajian semula pada terjemahan dan kumpulan mesej.",
"logentry-translationreview-message": "$1 telah {{GENDER:$2|menyemak}} terjemahan $3",
@@ -279,10 +254,7 @@
"action-translate-sandboxaction": "melaksanakan tindakan-tindakan yang disenaraiputihkan untuk pengguna yang dikotakpasirkan",
"translate-workflow-state-": "(belum ditetapkan)",
"translate-workflowstatus": "Status: $1",
- "translate-workflow-set-do": "Tetapkan",
"translate-workflow-set-doing": "Tetapan sedang dibuat...",
- "translate-workflow-set-done": "Beres!",
- "translate-workflow-set-error-alreadyset": "Keadaan yang dipohon adalah serupa dengan keadaan semasa.",
"translate-workflow-autocreated-summary": "Pembuatan laman secara automatik untuk keadaan alir kerja $1",
"translate-stats-workflow": "Status",
"translate-workflowgroup-label": "Keadaan alir kerja",
@@ -291,11 +263,6 @@
"translate-dynagroup-recent-desc": "Kumpulan mesej ini menunjukkan semua terjemahan terkini ke dalam bahasa ini.\nPaling berguna dengan tugas menyemak.",
"translate-dynagroup-additions-label": "Penambahan terbaru",
"translate-dynagroup-additions-desc": "Kumpulan mesej ini memaparkan mesej-mesej yang baru dan diubah.",
- "translate-dynagroup-by": "Terjemahan dibuat oleh {{GENDER:$1|$1}}",
- "translate-dynagroup-byc": "Terjemahan dibuat oleh {{GENDER:$1|$1}} ($2)",
- "translate-dynagroup-last": "Perubahan terkini oleh {{GENDER:$1|$1}}",
- "translate-dynagroup-lastc": "Perubahan terkini oleh {{GENDER:$1|$1}} ($2)",
- "translate-gethelp": "Bantuan",
"translate-msggroupselector-projects": "Kumpulan mesej",
"translate-msggroupselector-search-placeholder": "Cari dalam kumpulan",
"translate-msggroupselector-search-all": "Semua",
diff --git a/MLEB/Translate/i18n/core/mt.json b/MLEB/Translate/i18n/core/mt.json
index cbf445e7..2054a0e8 100644
--- a/MLEB/Translate/i18n/core/mt.json
+++ b/MLEB/Translate/i18n/core/mt.json
@@ -8,7 +8,6 @@
},
"translate": "Traduzzjoni",
"translate-desc": "[[Special:Translate|Paġna speċjali]] biex tittraduċi lil MediaWiki u mhux biss",
- "translate-taskui-view": "Uri l-messaġġi kollha",
"translate-taskui-export-to-file": "Esporta fil-format nattiv",
"translate-taskui-export-as-po": "Esporta għal traduzzjoni off-line",
"translate-taction-lstats": "Statistiki tal-lingwa",
@@ -31,7 +30,6 @@
"translate-prev": "Paġna preċedenti",
"translate-page-description-legend": "Informazzjoni dwar il-grupp",
"translate-page-edit": "editja",
- "translate-ext-url": "<hr />Sit elettroniku: $1",
"translate-optional": "(opzjonali)",
"translate-ignored": "(injorat)",
"translate-edit-title": "Modifika ta' \"$1\"",
@@ -41,9 +39,7 @@
"translate-edit-no-information": "''Dan il-messaġġ m'għandu l-ebda dokumentazzjoni.''\n''Jekk taf fejn jew kif jiġi wżat dan il-messaġġ, tista' tgħin lit-tradutturi l-oħra billi żżid id-dokumentazzjoni ma' dan il-messaġġ.''",
"translate-edit-information": "Informazzjoni dwar il-messaġġ ($1)",
"translate-edit-in-other-languages": "Il-messaġġ f'lingwi oħra",
- "translate-edit-committed": "Traduzzjoni attwali fis-software",
"translate-edit-warnings": "Twissijiet dwar traduzzjonijiet mhux kompluti",
- "translate-edit-tmsugs": "Suġġerimenti mill-memorja tat-traduzzjonijiet",
"translate-use-suggestion": "Biddel it-traduzzjoni attwali ma' din is-suġġeriment.",
"translate-edit-nopermission": "Għandek bżonn l-awtorizzazzjoni sabiex tittraduċi messaġġi.",
"translate-edit-askpermission": "Itlob l-awtorizzazzjoni",
@@ -108,7 +104,6 @@
"translate-statsf-language": "Lista tal-kodiċi tal-lingwi separati permezz ta' virgola:",
"translate-statsf-group": "Lista tal-kodiċi tal-lingwi separati permezz ta' virgola:",
"translate-statsf-submit": "Dehra proviżorja",
- "translate-tag-category": "Paġni traduċibbli",
"translate-tag-page-desc": "Traduzzjoni tal-paġna wiki [[$2|$1]].",
"translate-sidebar-alltrans": "F'lingwi oħrajn",
"translations": "It-traduzzjonijiet kollha",
@@ -164,9 +159,7 @@
"translate-import-err-invalid-title": "L-isem tal-fajl <nowiki>$1</nowiki> mhuwiex validu.",
"translate-import-err-no-such-file": "Il-fajl <nowiki>$1</nowiki> ma jeżistix jew ma ġiex imtella fuq livell lokali.",
"translate-js-next": "Salvaha u għaddi għal li jmiss",
- "translate-js-nonext": "Dan kien l-aħħar messaġġ f'din il-paġna.",
"translate-js-skip": "Li jmiss",
- "translate-js-save-failed": "L-issejvjar tal-paġna falla. Jekk jogħġbok irraporta dan l-iżball.",
"translate-js-history": "Kronoloġija",
"translate-js-support": "Staqsi mistoqsija",
"translate-gs-pos": "Poż.",
@@ -183,11 +176,6 @@
"translate-searchprofile-tooltip": "Tfittxija minn kull traduzzjoni",
"translate-search-languagefilter": "Filtru skont il-lingwa:",
"translate-search-nofilter": "L-ebda filtru",
- "translate-messagereview-submit": "Aċċetta",
- "api-error-owntranslation": "Ma tistax taċċetta t-traduzzjonijiet tiegħek",
- "translate-messagereview-no-fuzzy": "Traduzzjonijiet li għandhom bżonn l-aġġornament ma jistgħux jiġu aċċettati.",
- "translate-messagereview-no-own": "Ma tistax taċċetta t-traduzzjonijiet tiegħek.",
- "translate-messagereview-doit": "Aċċetta din it-traduzzjoni bħala traduzzjoni tajba.",
"translate-workflowstatus": "Stat: $1",
"tux-empty-list-all-guide": "Agħżel gruppi ta' messaġġi ieħor biex tittraduċi",
"tux-empty-list-other-guide": "Tista' tgħin tirrevedi traduzzjonijiet eżistenti",
diff --git a/MLEB/Translate/i18n/core/my.json b/MLEB/Translate/i18n/core/my.json
index 79b98fd4..a00a43ea 100644
--- a/MLEB/Translate/i18n/core/my.json
+++ b/MLEB/Translate/i18n/core/my.json
@@ -1,20 +1,283 @@
{
"@metadata": {
"authors": [
- "Erikoo"
+ "Erikoo",
+ "Ninjastrikers",
+ "Dr Lotus Black"
]
},
"translate": "ဘာသာပြန်ပါ",
+ "translate-extensionname": "ဘာသာပြန်ပါ",
+ "translate-taction-translate": "ဘာသာပြန်ရန်",
+ "translate-taction-proofread": "ပြန်လည်ဆန်းစစ်",
+ "translate-taction-lstats": "ဘာသာစကား စာရင်းအင်း",
+ "translate-taction-mstats": "မက်ဆေ့အုပ်စု စာရင်းအင်း",
+ "translate-taction-export": "တင်ပို့ရန်",
+ "translate-taction-disabled": "ဤဝီကီတွင် ဤလုပ်ဆောင်ချက်ကို ပိတ်ထားသည်။",
+ "translate-page-disabled": "ဤအုပ်စုရှိ ဤဘာသာစကားသို့ ဘာသာပြန်ခြင်းကို ပိတ်ထားပါသည်။ အကြောင်းရင်းမှာ:\n\n<em>$1</em>",
+ "translate-language-disabled": "ဤဘာသာစကားသို့ ဘာသာပြန်ခြင်းကို ပိတ်ထားသည်။",
+ "translate-page-settings-legend": "အပြင်အဆင်များ",
"translate-page-group": "အုပ်စု",
- "translate-page-language": "ဘာသာ",
+ "translate-page-language": "ဘာသာစကား",
"translate-page-limit": "ကန့်သတ်ချက်",
"translate-page-limit-option": "တစ်မျက်နှာလျှင် {{PLURAL:$1|စာလုံး|စာလုံးပေါင်း}} $1",
"translate-submit": "ရှာဖွေပါ",
"translate-page-navigation-legend": "အ​ညွှန်း​",
"translate-page-showing-all": "{{PLURAL:$1|စာလုံး|စာလုံးပေါင်း}} $1 လုံး ရှာဖွေတွေ့ရှိသည်။",
"translate-page-showing-none": "ဖေါ်ပြရန် စကားလုံး မရှိပါ",
+ "translate-page-paging-links": "[ $1 ] [ $2 ]",
"translate-next": "နောက်စာမျက်နှာ",
"translate-prev": "ပြီးခဲ့သော စာမျက်နှာ",
- "translate-page-edit": "ပြင်ရန်",
- "translate-gs-score": "ရမှတ်"
+ "translate-page-description-legend": "ဤအုပ်စုအကြောင်း သတင်းအချက်အလက်",
+ "translate-page-edit": "ပြင်ဆင်ရန်",
+ "translate-optional": "(ထည့်လိုကထည့်နိုင်)",
+ "translate-ignored": "(လျစ်လျူရှု)",
+ "translate-edit-title": "\"$1\" ကိုပြင်ဆင်ရန်",
+ "translate-edit-definition": "မက်ဆေ့ အဓိပ္ပာယ်သတ်မှတ်ချက်",
+ "translate-edit-translation": "ဘာသာပြန်ခြင်း",
+ "translate-edit-contribute": "ပံ့ပိုးရန်",
+ "translate-edit-information": "မက်ဆေ့အကြောင်း သတင်းအချက်အလက် ($1)",
+ "translate-edit-in-other-languages": "အခြားဘာသာစကားများရှိ မက်ဆေ့",
+ "translate-edit-warnings": "မပြီးမြောက်သော ဘာသာပြန်များအတွက် သတိပေးချက်များ",
+ "translate-edit-tmmatch": "$1% ကိုက်ညီ",
+ "translate-use-suggestion": "ဤအကြံပြုချက်ဖြင့် လက်ရှိဘာသာပြန်ကို အစားထိုးရန်။",
+ "translate-edit-nopermission": "မက်ဆေ့များကို ဘာသာပြန်ရန် ဘာသာပြန် အခွင့်အရေးများ လိုအပ်ပါသည်။",
+ "translate-edit-askpermission": "ခွင့်ပြုချက် ရယူရန်",
+ "exporttranslations": "ဘာသာပြန်များကို တင်ပို့ရန်",
+ "translate-export-form-format": "ဖောမတ်",
+ "translate-magic-module": "မော်ဂျူး:",
+ "translate-magic-cm-export": "တင်ပို့ရန်",
+ "translate-magic-nothing-to-export": "တင်ပို့ရန် ဘာမျှမရှိပါ။",
+ "translate-magic-cm-current": "လက်ရှိ",
+ "translate-magic-cm-original": "မူရင်း",
+ "translate-magic-cm-comment": "မှတ်ချက်:",
+ "translate-magic-cm-save": "သိမ်းရန်",
+ "translate-magic-cm-savefailed": "သိမ်းဆည်းရာ မအောင်မြင်ခဲ့",
+ "translate-magic-namespace": "အမည်ညွှန်း အမည်များ",
+ "translate-magic-notsaved": "သင့်တည်းဖြတ်မှုကို မသိမ်းဆည်းခဲ့ရပါ",
+ "translate-magic-saved": "သင်၏ ပြောင်းလဲမှုများသည် သိမ်းဆည်းပြီးဖြစ်သည်။",
+ "translate-pref-nonewsletter": "ကျွန်ုပ်ထံ အီးမေးလ်သတင်းလွှာ မပို့ပါနှင့်",
+ "translate-pref-editassistlang": "အထောက်အကူ ဘာသာစကားများ:",
+ "prefs-translate": "ဘာသာပြန် ရွေးချယ်စရာများ",
+ "right-translate-manage": "မက်ဆေ့အုပ်စုများကို စီမံရန်",
+ "action-translate-manage": "မက်ဆေ့အုပ်စုများကို စီမံရန်",
+ "right-translate-import": "အော့ဖ်လိုင်းဘာသာပြန်များကို တင်သွင်းရန်",
+ "action-translate-import": "အော့ဖ်လိုင်းဘာသာပြန်များကို တင်သွင်းရန်",
+ "right-translate-messagereview": "ဘာသာပြန်များကို ပြန်လည်ဆန်းစစ်ရန်",
+ "action-translate-messagereview": "ဘာသာပြန်များကို ပြန်လည်ဆန်းစစ်ရန်",
+ "translate-rcfilters-translations": "ဘာသာပြန်များ",
+ "translate-rcfilters-translations-only-label": "ဘာသာပြန်များ",
+ "translate-rcfilters-translations-only-desc": "ဘာသာပြန် စာမျက်နှာများသို့ ပြောင်းလဲမှုများ",
+ "translate-rcfilters-translations-filter-label": "ဘာသာပြန်များ မရှိပါ",
+ "translate-rcfilters-translations-filter-desc": "ဘာသာပြန်များမဟုတ်သော အပြောင်းအလဲများအားလုံး",
+ "translate-rcfilters-translations-site-label": "ဆိုဒ် မင်ဆေ့များ",
+ "translate-rcfilters-translations-site-desc": "မီဒီယာဝီကီ အမည်ညွှန်းရှိ ဆိုဒ်မက်ဆေ့များကို စိတ်ကြိုက်ပြုပြင်မှုများ။",
+ "translate-rc-translation-filter": "ဘာသာပြန်များ စိစစ်ရန်:",
+ "translate-rc-translation-filter-no": "ဘာတစ်ခုမှ မလုပ်ဆောင်ရန်",
+ "translate-rc-translation-filter-only": "ဘာသာပြန်များကိုသာ ပြရန်",
+ "translationstats": "ဘာသာပြန်မှု စာရင်းအင်း",
+ "translate-stats-edits": "တည်းဖြတ်မှုများ",
+ "translate-stats-users": "ဘာသာပြန်သူများ",
+ "translate-stats-registrations": "မှတ်ပုံတင်ခြင်း",
+ "translate-stats-reviews": "ပြန်လည်ဆန်းစစ်မှုများ",
+ "translate-stats-reviewers": "ပြန်လည်ဆန်းစစ်သူများ",
+ "translate-statsf-intro": "ဤပုံစံဖြင့် ရိုးရှင်းသော စာရင်းအင်းကို ထုတ်ပြန်နိုင်သည်။ တန်ဖိုးအားလုံးတွင် အပေါ်အောက် ကန့်သတ်ချက်များရှိသည်။",
+ "translate-statsf-options": "ဇယား ရွေးချယ်စရာများ",
+ "translate-statsf-days": "ရက်အားဖြင့် အချိန်ကာလ:",
+ "translate-statsf-start": "စတင်သည့် ရက်စွဲ:",
+ "translate-statsf-scale": "အသေးစိတ်ကျမှု:",
+ "translate-statsf-scale-months": "လ",
+ "translate-statsf-scale-weeks": "အပတ်",
+ "translate-statsf-scale-days": "ရက်",
+ "translate-statsf-scale-hours": "နာရီ",
+ "translate-statsf-count": "အတိုင်းအတာ:",
+ "translate-statsf-count-edits": "တည်းဖြတ်မှုအရေအတွက်",
+ "translate-statsf-count-users": "တက်ကြွ ဘာသာပြန်သူများ",
+ "translate-statsf-count-registrations": "အသုံးပြုသူ အသစ်များ",
+ "translate-statsf-count-reviews": "ဘာသာပြန် ပြန်လည်ဆန်းစစ်မှုများ",
+ "translate-statsf-count-reviewers": "ပြန်လည်ဆန်းစစ်သူများ",
+ "translate-statsf-language": "ကော်မာခြားထားသော ဘာသာစကားကုဒ်များစာရင်း:",
+ "translate-statsf-group": "ကော်မာခြားထားသော အုပ်စုကုဒ်များစာရင်း:",
+ "translate-statsf-submit": "ကြိုတင်အစမ်းကြည့်ရှုရန်",
+ "translate-tag-page-desc": "$3 ($4) မှ [[$2|$1]] သို့ ဝီကီစာမျက်နှာ ဘာသာပြန်မှု",
+ "translate-sidebar-alltrans": "အခြား ဘာသာစကားများဖြင့်",
+ "translations": "ဘာသာပြန်မှုအားလုံး",
+ "translations-summary": "ရရှိနိုင်သော ဘာသာပြန်များအားလုံးကို ပြသရန် မက်ဆေ့အမည်ကို အောက်တွင် ရိုက်ထည့်ပါ။",
+ "translate-translations-no-message": "\"$1\" သည် ဘာသာပြန်နိုင်သော မက်ဆေ့မဟုတ်ပါ",
+ "translate-translations-none": "\"$1\" အတွက် ဘာသာပြန်များ မရှိပါ",
+ "translate-translations-count": "ဘာသာပြန်မှု {{PLURAL:$1|ခု|$1 ခု}} တွေ့ရှိခဲ့သည်။",
+ "translate-translations-fieldset-title": "မက်ဆေ့",
+ "translate-translations-messagename": "အမည်:",
+ "translate-translations-project": "ပရောဂျက်:",
+ "translate-translations-history-short": "ရာ",
+ "languagestats": "ဘာသာစကား စာရင်းအင်း",
+ "languagestats-summary": "ဤစာမျက်နှာသည် ဘာသာစကားတစ်ခုအတွက် မက်ဆေ့အုပ်စုအားလုံး၏ ဘာသာပြန်စာရင်းအင်းကို ပြသပေးသည်။",
+ "messagegroupstats-summary": "ဤစာမျက်နှာသည် မက်ဆေ့အုပ်စု စာရင်းအင်းကို ပြသပေးသည်။",
+ "languagestats-stats-for": "$1 ($2) အတွက် ဘာသာပြန်မှု စာရင်းအင်း",
+ "languagestats-recenttranslations": "လတ်တလော ဘာသာပြန်များ",
+ "translate-langstats-expand": "ချဲ့ကား",
+ "translate-langstats-collapse": "ချုံ့ရန်",
+ "translate-langstats-expandall": "အကုန်ချဲ့ရန်",
+ "translate-langstats-collapseall": "အကုန်ချုံ့ရန်",
+ "translate-language-code": "ဘာသာစကားကုဒ်",
+ "translate-language-code-field-name": "ဘာသာစကားကုဒ်:",
+ "translate-suppress-complete": "အပြည့်အစုံ ဘာသာပြန်ထားသော မက်ဆေ့အုပ်စုကို ဖုံးကွယ်ထားရန်",
+ "translate-ls-noempty": "အပြည့်အစုံ ဘာသာပြန်မထားသော မက်ဆေ့အုပ်စုကို ဖုံးကွယ်ထားရန်",
+ "translate-language": "ဘာသာစကား",
+ "translate-total": "မက်ဆေ့များ",
+ "translate-untranslated": "ဘာသာမပြန်ထားသော",
+ "translate-percentage-complete": "ပြီးမြောက်မှု",
+ "translate-percentage-fuzzy": "ခေတ်နောက်ကျနေသော",
+ "translate-languagestats-overall": "မက်ဆေ့အုပ်စုအားလုံး အတူတကွ",
+ "translate-ls-submit": "စာရင်းအင်း ပြရန်",
+ "translate-ls-column-group": "မက်ဆေ့အုပ်စု",
+ "translate-mgs-pagename": "မက်ဆေ့အုပ်စု စာရင်းအင်း",
+ "translate-mgs-fieldset": "ရွေးချယ်စရာများ ပြသရန်",
+ "translate-mgs-group": "မက်ဆေ့အုပ်စု:",
+ "translate-mgs-nocomplete": "ပြီးမြောက်အောင် ဘာသာပြန်ထားသော ဘာသာစကားများကို မပြရန်",
+ "translate-mgs-noempty": "မည်သည့် ဘာသာပြန်ထားမှမရှိသော ဘာသာစကားများကို မပြရန်",
+ "translate-mgs-submit": "စာရင်းအင်း ပြရန်",
+ "translate-mgs-column-language": "ဘာသာစကား",
+ "translate-mgs-totals": "{{PLURAL:$1|ဘာသာစကား|ဘာသာစကားများ}} $1 အားလုံး အတူတကွ",
+ "translate-mgs-nothing": "တောင်းဆိုထားသော စာရင်းအင်းအတွက် ပြစရာမရှိပါ။",
+ "supportedlanguages": "ထောက်ပံ့ထားသော ဘာသာစကားများ",
+ "supportedlanguages-summary": "ဤစာမျက်နှာသည် {{SITENAME}} မှ ထောက်ပံ့ထားသည့် ဘာသာစကားအားလုံး၏ စာရင်းကို ပြသထားပြီး ယင်းဘာသာစကားတွင် လုပ်ဆောင်နေသော ဘာသာပြန်သူများ၏ အမည်များကို ဖော်ပြထားသည်။ တည်းဖြတ်မှုပိုများသော ဘာသာပြန်သူများကို ပိုကြီးသောနာမည်ဖြင့် ဖော်ပြထားပြီး အောက်ခြေမျဉ်းသည် ဘာသာပြန်သူက ဤနေရာတွင် လတ်တလော မည်မျှတက်ကြွစွာ ပါဝင်ခဲ့သည်ကို ဖော်ပြသည်။",
+ "supportedlanguages-colorlegend": "အရောင်အတွက် မှတ်စု: $1 ရက်အကြာက နောက်ဆုံး ဘာသာပြန်မှု",
+ "supportedlanguages-portallink": "[$1] $2 - $3",
+ "supportedlanguages-portallink-nocldr": "[$1] $2",
+ "supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|ဘာသာပြန်သူ}}|ဘာသာပြန်သူများ}}: $1",
+ "supportedlanguages-recenttranslations": "လတ်တလော ဘာသာပြန်များ",
+ "supportedlanguages-count": "စုစုပေါင်း {{PLURAL:$1|ဘာသာစကား|ဘာသာစကားများ}} $1",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|တည်းဖြတ်မှု|တည်းဖြတ်မှုများ}} - နောက်ဆုံးတည်းဖြတ်မှု $3 {{PLURAL:$3|ရက်|ရက်}} အကြာက",
+ "translate-save": "သိမ်းရန် ($1)",
+ "translate-jssti-add": "စာရင်းသို့ ပေါင်းထည့်ရန်",
+ "managemessagegroups": "မက်ဆေ့အုပ်စု စီမံခန့်ခွဲရေး",
+ "translate-smg-nochanges": "အစီစဉ်တကျလုပ်ဆောင်ရန် ပြောင်းလဲမှုများ မရှိပါ။",
+ "translate-smg-submit": "အစီစဉ်တကျဆောင်ရွက်မှုအတွက် ပြောင်းလဲမှုများ ထည့်သွင်းရန်",
+ "translate-smg-more": "ဤပြောင်းလဲမှုများကို ထည့်သွင်းပြီးပါက အစီစဉ်တကျလုပ်ဆောင်ရန် ပြောင်းလဲမှုများ ပိုများလာပါမည်။",
+ "translate-smg-left": "ဝီကီထဲရှိ မက်ဆေ့အကြောင်းအရာ",
+ "translate-smg-right": "ဝင်လာသော ပြောင်းလဲမှုများ",
+ "translate-manage-import-diff": "မက်ဆေ့ $1 | လုပ်ဆောင်ချက်များ: $2",
+ "translate-manage-import-new": "မက်ဆေ့ အသစ် $1",
+ "translate-manage-import-deleted": "ဖျက်ထားသော မက်ဆေ့ $1",
+ "translate-manage-action-import": "တင်သွင်းရန်",
+ "translate-manage-action-ignore": "လျစ်လျူရှု",
+ "importtranslations": "ဘာသာပြန်များကို တင်သွင်းရန်",
+ "translate-js-summary": "အကျဉ်းချုပ်:",
+ "translate-js-save": "သိမ်းရန်",
+ "translate-js-skip": "နောက်တစ်ခုသို့ ကျော်သွားရန်",
+ "translate-js-history": "ဘာသာပြန်မှု ရာဇဝင်",
+ "translate-js-support": "မေးခွန်းမေးရန်",
+ "translate-js-support-title": "ဤမက်ဆေ့ကို မှန်ကန်စွာဘာသာပြန်ရန် သတင်းအချက်အလက် မရှိပါက အကူအညီတောင်းခံရန်။",
+ "translate-js-support-unsaved-warning": "သင့်တွင် မသိမ်းရသေးသော ဘာသာပြန်များ ရှိသည်။",
+ "translate-gs-pos": "နေရာ",
+ "translate-gs-code": "ကုဒ်",
+ "translate-gs-continent": "တိုက်",
+ "translate-gs-speakers": "စကားပြောသူများ",
+ "translate-gs-score": "ရမှတ်",
+ "translate-gs-multiple": "၁ ခုထက်ပို",
+ "translate-gs-count": "အရေအတွက်",
+ "translate-gs-total": "စုစုပေါင်း",
+ "translate-gs-avgscore": "ပျမ်းမျှရမှတ်",
+ "translate-documentation-language": "စာလွှာ စာရွက်စာတမ်း",
+ "translate-searchprofile": "ဘာသာပြန်များ",
+ "translate-searchprofile-tooltip": "ဘာသာပြန်များအားလုံးမှ ရှာရန်",
+ "translate-searchprofile-note": "[$1 ဘာသာပြန် ရှာဖွေမှု]နှင့် ရှာဖွေမှု ရွေးချယ်စရာများ ပိုမိုရရှိနိုင်ပါသည်။",
+ "translate-search-languagefilter": "ဘာသာစကားအလိုက် စိစစ်ရန်:",
+ "translate-search-nofilter": "စိစစ်မှု မရှိ",
+ "log-name-translationreview": "ဘာသာပြန် ပြန်လည်ဆန်းစစ်မှု မှတ်တမ်း",
+ "log-description-translationreview": "ဘာသာပြန်များနှင့် မက်ဆေ့အုပ်စုများ၏ ပြန်လည်ဆန်းစစ်မှုများ မှတ်တမ်း",
+ "logentry-translationreview-message": "$1 က ဘာသာပြန် $3 ကို {{GENDER:$2|ပြန်လည်ဆန်းစစ်ခဲ့သည်}}",
+ "translate-stats-workflow": "အခြေနေ",
+ "translate-dynagroup-recent-label": "လတ်တလော ဘာသာပြန်များ",
+ "translate-dynagroup-additions-label": "လတ်တလော ပေါင်းထည့်မှုများ",
+ "translate-msggroupselector-projects": "မက်ဆေ့အုပ်စု",
+ "translate-msggroupselector-search-placeholder": "အုပ်စုများ ရှာဖွေရန်",
+ "translate-msggroupselector-search-all": "အားလုံး",
+ "translate-msggroupselector-search-recent": "မကြာမီက",
+ "translate-msggroupselector-view-subprojects": "{{PLURAL:$1|အုပ်စုခွဲ|အုပ်စုခွဲများ}} $1 ခု",
+ "tux-languageselector": "ဘာသာပြန်ရန်မှာ",
+ "tux-tab-all": "အားလုံး",
+ "tux-tab-untranslated": "ဘာသာမပြန်ထားသော",
+ "tux-tab-outdated": "ခေတ်နောက်ကျနေသော",
+ "tux-tab-translated": "ဘာသာပြန်ထားသော",
+ "tux-tab-unproofread": "ပြန်လည်မဆန်းစစ်ရသော",
+ "tux-edit": "ပြင်ဆင်",
+ "tux-status-optional": "ထည့်လိုပါက",
+ "tux-status-fuzzy": "ခေတ်နောက်ကျနေသော",
+ "tux-status-proofread": "ပြန်လည်ဆန်းစစ်ပြီး",
+ "tux-status-translated": "ဘာသာပြန်ထားသော",
+ "tux-status-saving": "သိမ်းဆည်းနေသည်...",
+ "tux-status-unsaved": "မသိမ်းရသေးပါ",
+ "tux-save-unknown-error": "အကြောင်းရင်းမသိရှိရသော အမှားတစ်ခု ဖြစ်ပေါ်နေသည်။",
+ "tux-editor-placeholder": "သင်၏ ဘာသာပြန်",
+ "tux-editor-editsummary-placeholder": "ထည့်လိုကထည့်နိုင်သော အကျဉ်းချုပ်",
+ "tux-editor-paste-original-button-label": "ရင်းမြစ်စာသားကို မိတ္တူပွားရန်",
+ "tux-editor-discard-changes-button-label": "ပြောင်းလဲမှုများကို မလုပ်တော့ရန်",
+ "tux-editor-save-button-label": "ဘာသာပြန်ကို သိမ်းဆည်းရန်",
+ "tux-editor-skip-button-label": "နောက်တစ်ခုသို့ ကျော်သွားရန်",
+ "tux-editor-cancel-button-label": "မလုပ်တော့ပါ",
+ "tux-editor-confirm-button-label": "ဘာသာပြန်ခြင်းကို အတည်ပြုရန်",
+ "tux-editor-proofread-button-label": "ပြန်လည်ဆန်းစစ်ပြီးကြောင်း မှတ်သားရန်",
+ "tux-editor-shortcut-info": "သိမ်းဆည်းရန် \"$1\" ကိုနှိပ်ပါ သို့မဟုတ် မက်ဆေ့နောက်တစ်ခုကို ကျော်သွားရန် \"$2\" ကိုနှိပ်ပါ သို့မဟုတ် အကျဉ်းချုပ်ဖော်ပြရန် \"$4\" ကိုနှိပ်ပါ သို့မဟုတ် အခြားအတိုကောက်များအတွက် \"$3\" ကိုနှိပ်ပါ။",
+ "tux-editor-edit-desc": "စာရွက်စာတမ်း ပြင်ဆင်ရန်",
+ "tux-editor-add-desc": "စာရွက်စာတမ်း ပေါင်းထည့်ရန်",
+ "tux-editor-suggestions-title": "အကြံပေးမှုများ",
+ "tux-editor-in-other-languages": "အခြား ဘာသာစကားများဖြင့်",
+ "tux-editor-need-more-help": "ထပ်ပြီး အကူအညီ လိုသေးလား?",
+ "tux-editor-ask-help": "အချက်အလက် ပိုမိုမေးမြန်းရန်",
+ "tux-editor-tm-match": "$1% ကိုက်ညီ",
+ "tux-warnings-more": "{{PLURAL:$1|$1 ပို၍}}",
+ "tux-warnings-hide": "ဝှက်",
+ "tux-editor-save-failed": "ဘာသာပြန်မှုကို သိမ်းဆည်းရာ မအောင်မြင်ပါ: $1",
+ "tux-editor-n-uses": "$1 {{PLURAL:$1|ကြိမ်|ကြိမ်}} အသုံးပြုခဲ့သည်",
+ "tux-editor-message-desc-more": "ပိုမိုကြည့်ရှုရန်",
+ "tux-editor-message-desc-less": "နည်းနည်းကြည့်ရှုရန်",
+ "tux-editor-clear-translated": "ဘာသာပြန်ပြီးသားကို ဝှက်ရန်",
+ "tux-editor-proofreading-mode": "ပြန်လည်ဆန်းစစ်",
+ "tux-editor-translate-mode": "စာရင်း",
+ "tux-editor-proofreading-hide-own-translations": "သင်၏ဘာသာပြန်များကို ဝှက်ရန်",
+ "tux-editor-proofreading-show-own-translations": "သင်၏ဘာသာပြန်များကို ပြရန်",
+ "tux-proofread-action-tooltip": "ပြန်လည်ဆန်းစစ်ပြီးကြောင်း မှတ်သားရန်",
+ "tux-proofread-edit-label": "ပြင်ဆင်",
+ "tux-editor-page-mode": "စာမျက်နှာ",
+ "tux-editor-outdated-warning": "ဤဘာသာပြန်သည် မွမ်းမံရန် လိုအပ်နိုင်သည်။",
+ "tux-editor-outdated-warning-diff-link": "ကွဲပြားမှုများကို ပြရန်",
+ "tux-editor-doc-editor-placeholder": "စာလွှာ စာရွက်စာတမ်း",
+ "tux-editor-doc-editor-save": "စာရွက်စာတမ်း သိမ်းရန်",
+ "tux-editor-doc-editor-cancel": "မလုပ်တော့ပါ",
+ "tux-messagetable-more-messages": "ပို၍ $1 {{PLURAL:$1|မက်ဆေ့|မက်ဆေ့များ}}",
+ "tux-messagetable-loading-messages": "{{PLURAL:$1|မက်ဆေ့|မက်ဆေ့များ}}ကို ခေါ်ယူနေသည်...",
+ "tux-message-filter-placeholder": "စိစစ် စာရင်း",
+ "tux-message-filter-result": "\"$2\" အတွက် $1 {{PLURAL:$1|ရလဒ်|ရလဒ်များ}} တွေ့ရှိခဲ့သည်",
+ "tux-message-filter-advanced-button": "အဆင့်မြင့် ရှာဖွေခြင်း",
+ "tux-proofread-translated-by-self": "သင် ဘာသာပြန်ထားသည်",
+ "tux-empty-list-all": "ဤမက်ဆေ့အုပ်စုသည် ဗလာဖြစ်နေသည်",
+ "tux-empty-list-translated": "ဘာသာပြန်ထားသော မက်ဆေ့များမရှိပါ",
+ "tux-empty-list-translated-guide": "ဘာသာပြန်ခြင်းကို ကူညီနိုင်ပါသည်",
+ "tux-empty-list-translated-action": "ဘာသာပြန်ရန်",
+ "tux-empty-no-messages-to-display": "ပြသပေးရန် မက်ဆေ့များမရှိပါ",
+ "tux-empty-no-outdated-messages": "ခေတ်နောက်ကျသော မက်ဆေ့များမရှိပါ",
+ "tux-empty-nothing-to-proofread": "ပြန်လည်ဆန်းစစ်ရန် ဘာမှမရှိပါ",
+ "tux-empty-you-can-help-providing": "ဘာသာပြန်အသစ်များ ထောက်ပံ့၍ ကူညီနိုင်သည်",
+ "tux-empty-nothing-new-to-proofread": "ပြန်လည်ဆန်းစစ်ရန် အသစ်တစ်ခုမှ မရှိပါ",
+ "tux-empty-you-can-review-already-proofread": "အခြားသူများ ပြန်လည်ဆန်းစစ်ပြီးသား ဘာသာပြန်များကို ပြန်လည်ဆန်းစစ်နိုင်သည်။",
+ "tux-empty-list-other": "ဘာသာပြန်ရန် ဘာတစ်ခုမှမရှိပါ",
+ "tux-empty-list-other-guide": "ရှိနှင့်ပြီးသား ဘာသာပြန်များကို ပြန်လည်ဆန်းစစ်ခြင်းဖြင့် ကူညီနိုင်သည်",
+ "tux-empty-list-other-action": "ဘာသာပြန်များကို ပြန်လည်ဆန်းစစ်ရန်",
+ "tux-empty-list-other-link": "မက်ဆေ့အားလုံး ပြရန်",
+ "tux-editor-close-tooltip": "ပိတ်",
+ "tux-editor-expand-tooltip": "ချဲ့ရန်",
+ "tux-editor-collapse-tooltip": "ချုံ့ရန်",
+ "tux-editor-message-tools-show-editor": "ဝီကီအယ်ဒီတာတွင် ပြရန်",
+ "tux-editor-message-tools-history": "ရာဇဝင်",
+ "tux-editor-message-tools-delete": "ဖျက်ရန်",
+ "tux-editor-message-tools-translations": "ဘာသာပြန်များအားလုံး",
+ "tux-editor-message-tools-linktothis": "ဤမက်ဆေ့သို့ လင့်ခ်ချိတ်ရန်",
+ "tux-editor-loading": "ဝန်ဆွဲတင်နေသည်...",
+ "translate-search-more-languages-info": "နောက်ထပ် {{PLURAL:$1|ဘာသာစကား|ဘာသာစကားများ}} $1 ခု",
+ "translate-statsbar-tooltip": "$1% ဘာသာပြန်ပြီး၊ $2% ပြန်လည်ဆန်းစစ်ပြီး",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% ဘာသာပြန်ပြီး၊ $2% ပြန်လည်ဆန်းစစ်ပြီး၊ $3% ခေတ်နောက်ကျနေ",
+ "translate-search-more-groups-info": "ပို၍ $1 {{PLURAL:$1|အုပ်စု|အုပ်စုများ}}",
+ "tux-session-expired": "သင်သည် အကောင့်ထဲသို့ မဝင်ထားတော့ပါ။ သီးခြား tab တစ်ခုမှ အကောင့်ထဲသို့ ဝင်ပါ။ တနည်းအားဖြင့် မသိမ်းရသေးသော ဘာသာပြန်များကို မိတ္တူတစ်ခုကူးထားပြီး ဤစာမျက်နှာသို့ ပြန်လာကာ သင်၏ဘာသာပြန်များကို ထပ်မံရိုက်ထည့်ပါ။"
}
diff --git a/MLEB/Translate/i18n/core/myv.json b/MLEB/Translate/i18n/core/myv.json
index 6b07ce64..4793e8ef 100644
--- a/MLEB/Translate/i18n/core/myv.json
+++ b/MLEB/Translate/i18n/core/myv.json
@@ -48,7 +48,6 @@
"translate-statsf-language": "Ботпулосо явонь списка, косо келень кодт:",
"translate-statsf-group": "Ботпулосо явонь списка, косо куронь кодт:",
"translate-statsf-submit": "Васнянь неевтезэ",
- "translate-tag-category": "Ютавтомкс лопат",
"translate-tag-page-desc": "\"[[$2|$1]]\" вики лопась ютавтозь «$3 ($4)» лопасто.",
"translate-sidebar-alltrans": "Лия кельсэ",
"translations": "Весе йутавтовкст",
diff --git a/MLEB/Translate/i18n/core/nah.json b/MLEB/Translate/i18n/core/nah.json
index e4eda9ca..d7b6c601 100644
--- a/MLEB/Translate/i18n/core/nah.json
+++ b/MLEB/Translate/i18n/core/nah.json
@@ -3,20 +3,22 @@
"authors": [
"Fluence",
"Ricardo gs",
- "Teòtlalili"
+ "Teòtlalili",
+ "Taresi",
+ "Akapochtli"
]
},
"translate": "Tictlahtōlcuepāz",
"translate-page-group": "Olōlli",
- "translate-page-language": "Tlâtòlli",
- "translate-page-navigation-legend": "Nènemòwalistli",
+ "translate-page-language": "Tlahtolli",
+ "translate-page-navigation-legend": "Panoliztli",
"translate-page-showing": "Tiquintta tlahcuilōltzin īhuīcpa $1 oc $2 īmpan $3.",
"translate-page-showing-all": "{{PLURAL:$1|Tiquintta|Tiquintta}} $1 tlahcuilōltzin.",
"translate-page-showing-none": "Ahtlein ic tlatta.",
"translate-next": "Niman zāzanilli",
- "translate-prev": "Achto zāzanilli",
+ "translate-prev": "Achto tlahcuilolamatl",
"translate-page-description-legend": "Olōltechopa",
- "translate-page-edit": "ticpatlāz",
+ "translate-page-edit": "xicpatla",
"translate-edit-contribute": "titlapalēhuīz",
"translate-edit-in-other-languages": "Tētītlaniliztli occē tlahtōltica",
"translate-magic-cm-export": "Ticnamacāz",
@@ -32,8 +34,10 @@
"translate-statsf-scale-days": "Tōnalli",
"translate-statsf-submit": "Achtochīhualiztli",
"translate-tag-page-desc": "Huiquizāzanilli ītlahtōlcuepaliz [[$2|$1]].",
- "translate-sidebar-alltrans": "Occēquīntīn tlahtōlco",
+ "translate-sidebar-alltrans": "Itech occequintin tlahtoltin",
"translations": "Mochi tlahtōlcuepaliztli",
"translate-translations-none": "Ayāc tlahtōlcuepaliztli ic \"$1\"",
- "translate-translations-fieldset-title": "Tītlantlahtōlli"
+ "translate-translations-fieldset-title": "Tlahtoltitlaniliztli",
+ "tux-editor-cancel-button-label": "Moxitiniz",
+ "tux-editor-doc-editor-cancel": "Moxitiniz"
}
diff --git a/MLEB/Translate/i18n/core/nb.json b/MLEB/Translate/i18n/core/nb.json
index 31339115..d757a70a 100644
--- a/MLEB/Translate/i18n/core/nb.json
+++ b/MLEB/Translate/i18n/core/nb.json
@@ -7,16 +7,15 @@
"Laaknor",
"Nghtwlkr",
"Njardarlogar",
- "Simny"
+ "Simny",
+ "Danmichaelo",
+ "Kingu",
+ "Jon Harald Søby"
]
},
"translate": "Oversett",
"translate-desc": "[[Special:Translate|Spesialside]] for oversettelse av MediaWiki og annet",
- "translate-taskui-view": "Vis alle meldinger",
- "translate-taskui-untranslated": "Vis uoversatte meldinger",
- "translate-taskui-optional": "Vis valgfrie meldinger",
- "translate-taskui-acceptqueue": "Kun meldinger jeg kan godkjenne",
- "translate-taskui-reviewall": "Revider alle oversettelser",
+ "translate-fuzzybot-desc": "Dette er en spesiell systemkonto som brukes av MediaWikis [https://www.mediawiki.org/wiki/Extension:Translate Translate-utvidelse] for å vedlikeholde oversettelser.\n\nKontoen er del av programvaren, og eies ikke av noen bruker.",
"translate-taskui-export-to-file": "Eksporter i opprinnelig format",
"translate-taskui-export-as-po": "Eksporter for frakoblet oversettelse",
"translate-taction-translate": "Oversett",
@@ -45,7 +44,6 @@
"translate-page-description-hasoptional": "Denne meldingsgruppen inneholder valgfrie meldinger.\nValgfrie meldinger bør kun oversettes om språket ditt har spesielle behov, som at det ikke bruker mellomrom eller man må transkribere egennavn. $1",
"translate-page-description-hasoptional-open": "Vis valgfrie meldinger.",
"translate-page-edit": "rediger",
- "translate-ext-url": "<hr />Nettsted: $1",
"translate-optional": "(valgfri)",
"translate-ignored": "(ignorert)",
"translate-edit-title": "Rediger «$1»",
@@ -55,14 +53,17 @@
"translate-edit-no-information": "<em>Denne meldingen har ingen dokumentasjon.\nOm du vet hvor eller hvordan denne meldingen brukes kan du hjelpe andre oversettere ved å legge inn dokumentasjon på denne meldingen.</em>",
"translate-edit-information": "Informasjon om meldingen ($1)",
"translate-edit-in-other-languages": "Meldingen på andre språk",
- "translate-edit-committed": "Nåværende oversettelse i programvaren",
"translate-edit-warnings": "Advarsler om ufullstendige oversettelser",
- "translate-edit-tmsugs": "Forslag fra oversettelsesminnet og maskinoversettelser",
"translate-edit-tmmatch-source": "Kildetekst for oversettelse: $1",
"translate-edit-tmmatch": "samsvarer $1 %",
- "translate-use-suggestion": "Erstatt nåværende oversettelse med dette forslaget.",
+ "translate-use-suggestion": "Erstatt gjeldende oversettelse med dette forslaget.",
"translate-edit-nopermission": "Du må ha oversetterrettigheter for å oversette beskjeder.",
"translate-edit-askpermission": "Få tillatelse",
+ "exporttranslations": "Eksporter oversettelser",
+ "translate-export-form-format": "Format",
+ "translate-export-invalid-format": "Oppgi et gyldig format.",
+ "translate-export-not-supported": "Eksportering av oversettelser støttes ikke.",
+ "translate-export-format-notsupported": "Det oppgitte eksporteringsformatet støttes ikke av meldingsgruppen.",
"translate-magic-pagename": "Utvidet MediaWiki-oversettelse",
"translate-magic-help": "Du kan oversette spesialsidealias, magiske ord og navneromnavn.\n\nSpesialsidealias og magiske ord kan ha flere oversettelser.\nOversettelsene er adskilt med komma (,).\nNavnerom kan kun ha én oversettelse.\n\nI navneromoversettelsene er <code>$1 talk</code> spesiell. <code>$1</code> erstattes med nettstedsnavnet (for eksempel <code>{{ns:project_talk}}</code>).\nOm det ikke er mulig å få til et gyldig uttrykk på ditt språk uten å endre nettstedsnavnet, fortell oss det på [[Support]].\n\nDu må være i oversettergruppen for å lagre endringer.\nEndringer lagres ikke før du klikker på lagre-knappen nedenfor.",
"translate-magic-module": "Modul:",
@@ -70,7 +71,7 @@
"translate-magic-cm-export": "Eksporter",
"translate-magic-nothing-to-export": "Det er ingenting å eksportere.",
"translate-magic-cm-to-be": "Framtidig",
- "translate-magic-cm-current": "Nåværende",
+ "translate-magic-cm-current": "Gjeldende",
"translate-magic-cm-original": "Opprinnelig",
"translate-magic-cm-comment": "Kommentar:",
"translate-magic-cm-save": "Lagre",
@@ -108,7 +109,16 @@
"right-translate-import": "Importer frakoblede oversettelser",
"action-translate-import": "importer frakoblede oversettelser",
"right-translate-messagereview": "Revidere oversettelser",
+ "action-translate-messagereview": "gå gjennom oversettelser",
"right-translate-groupreview": "Endre arbeidsflytstatusen til meldingsgrupper",
+ "action-translate-groupreview": "endre arbeidsflytstatusen til meldingsgrupper",
+ "translate-rcfilters-translations": "Oversettelser",
+ "translate-rcfilters-translations-only-label": "Oversettelser",
+ "translate-rcfilters-translations-only-desc": "Endringer til oversatte sider.",
+ "translate-rcfilters-translations-filter-label": "Ikke oversettelser",
+ "translate-rcfilters-translations-filter-desc": "Alle endringer som ikke er oversettelser.",
+ "translate-rcfilters-translations-site-label": "Systembeskjeder",
+ "translate-rcfilters-translations-site-desc": "Tilpassinger av systembeskjedene i MediaWiki-navnerommet.",
"translate-rc-translation-filter": "Filtrer oversettelser:",
"translate-rc-translation-filter-no": "Ikke gjør noe",
"translate-rc-translation-filter-only": "Vis bare oversettelser",
@@ -140,8 +150,7 @@
"translate-statsf-language": "Kommaseparert liste over språkkoder:",
"translate-statsf-group": "Kommaseparert liste over gruppekoder:",
"translate-statsf-submit": "Forhåndsvisning",
- "translate-tag-category": "Sider som kan oversettes",
- "translate-tag-page-desc": "Oversettelse av wikisiden [[$2|$1]].",
+ "translate-tag-page-desc": "Oversettelse av wikisiden [[$2|$1]] fra $3 ($4).",
"translate-sidebar-alltrans": "På andre språk",
"translations": "Alle oversettelser",
"translations-summary": "Skriv inn et meldingsnavn nedenfor for å vise alle tilgjengelige oversettelser.",
@@ -182,16 +191,17 @@
"translate-mgs-noempty": "Ikke vis språk som ikke har noen oversettelser",
"translate-mgs-submit": "Vis statistikk",
"translate-mgs-column-language": "Språk",
- "translate-mgs-totals": "Alle språk sammen",
+ "translate-mgs-totals": "Alle {{PLURAL:$1|språk}} sammen",
"translate-mgs-invalid-group": "Den angitte gruppen $1 finnes ikke.",
"translate-mgs-nothing": "Ingen av den ønskede statistikken kan vises.",
"supportedlanguages": "Støttede språk",
"supportedlanguages-summary": "Denne siden viser en liste over alle språk som støttes av {{SITENAME}}, sammen med navnene på oversetterne som jobber med det språket. Jo større en oversetters brukernavn er, jo flere bidrag har oversetteren. Fargen på understrekingen er en indikator på hvor lenge oversetteren har vært aktiv her.",
"supportedlanguages-colorlegend": "Fargeforklaring: Siste oversettelse for $1 dager siden.",
- "supportedlanguages-translators": "{{PLURAL:$2|Oversetter|Oversettere}}: $1",
+ "supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|Oversetter}}|Oversettere}}: $1",
"supportedlanguages-recenttranslations": "siste oversettelser",
"supportedlanguages-count": "$1 {{PLURAL:$1|språk}} totalt.",
"supportedlanguages-activity": "$1: $2 {{PLURAL:$2|redigering|redigeringer}} – siste redigering for $3 {{PLURAL:$3|dag|dager}} siden",
+ "abusefilter-edit-builder-vars-translate-source-text": "Kildeteksten til oversettelsesenheten",
"translate-save": "Lagre ($1)",
"translate-jssti-add": "Legg til i listen",
"managemessagegroups": "Meldingsgruppehåndtering",
@@ -215,7 +225,6 @@
"translate-manage-toolong": "Den maksimale behandlingstiden på {{PLURAL:$1|ett sekund|$1 sekund}} ble overskredet.\nVennligst send skjemaet på nytt for å fortsette behandlingen.",
"translate-manage-import-summary": "Importerer en ny versjon fra en ekstern kilde",
"translate-manage-conflict-summary": "Importerer en ny versjon fra en ekstern kilde.\nVennligst sjekk.",
- "translate-manage-fuzzy-summary": "Meldingsdefinisjonen har blitt endret",
"translate-manage-submit": "Utfør",
"translate-manage-intro-other": "Nedenfor er en liste over endringer i oversettelsen til språket $1.\nGå gjennom endringene og velg hva du vil gjøre med hver oppdatering.\nOm du velger å ignorere endringene vil denne handlingen kun være midlertidig.",
"translate-manage-import-ok": "Importert: $1",
@@ -223,7 +232,7 @@
"importtranslations": "Importer oversettelser",
"translate-import-from-local": "Lokal filopplasting:",
"translate-import-load": "Last fil",
- "translate-import-err-dl-failed": "Kunne ikke hente filen:\n$1",
+ "translate-import-err-dl-failed": "Klarte ikke å hente filen:\n$1",
"translate-import-err-ul-failed": "Filopplastingen mislyktes",
"translate-import-err-invalid-title": "Oppgitt filnavn <nowiki>$1</nowiki> var ugyldig.",
"translate-import-err-no-such-file": "Filen <nowiki>$1</nowiki> finnes ikke eller har ikke blitt lastet opp lokalt.",
@@ -233,9 +242,7 @@
"translate-js-summary": "Forklaring:",
"translate-js-save": "Lagre",
"translate-js-next": "Lagre og åpne neste",
- "translate-js-nonext": "Dette var den siste meldingen på siden.",
"translate-js-skip": "Hopp over til neste",
- "translate-js-save-failed": "Lagring mislyktes. Rapporter denne feilen.",
"translate-js-history": "Oversettelseshistorikk",
"translate-js-support": "Still spørsmål",
"translate-js-support-title": "Be om hjelp hvis det ikke er nok informasjon til å oversette denne meldingen korrekt.",
@@ -252,25 +259,13 @@
"translate-documentation-language": "Meldingsdokumentasjon",
"translate-searchprofile": "Oversettelser",
"translate-searchprofile-tooltip": "Søk i alle oversettelser",
+ "translate-searchprofile-note": "Flere søkealternativer er tilgjengelig med [$1 oversettelsessøk].",
"translate-search-languagefilter": "Filtrer etter språk:",
"translate-search-nofilter": "Ingen filtrering",
- "translate-messagereview-submit": "Godkjenn",
- "translate-messagereview-progress": "Godkjenner …",
- "translate-messagereview-failure": "Godkjenner … mislyktes: $1",
- "translate-messagereview-done": "Godkjent",
- "translate-messagereview-reviews": "Godkjent av {{PLURAL:$1|én bruker|$1 brukere}}",
- "translate-messagereview-reviewswithyou": "Godkjent av {{PLURAL:$1|deg|$1 brukere inkludert deg}}",
- "api-error-invalidrevision": "Oversettelsen ble ikke funnet",
- "api-error-unknownmessage": "Meldingen ble ikke funnet",
- "api-error-fuzzymessage": "Oversettelsen er merket som foreldet",
- "api-error-owntranslation": "Du kan ikke godkjenne dine egne oversettelser",
- "translate-messagereview-no-fuzzy": "Foreldede oversettelser kan ikke godkjennes.",
- "translate-messagereview-no-own": "Du kan ikke godkjenne dine egne oversettelser.",
- "translate-messagereview-doit": "Godkjenn denne oversettelsen.",
"log-name-translationreview": "Logg for oversettelsesrevidering",
"log-description-translationreview": "Logg over alle revideringer av oversettelser og meldingsgrupper.",
"logentry-translationreview-message": "$1 {{GENDER:$2|godtok}} oversettelsen $3",
- "logentry-translationreview-group": "$1 {{GENDER:$2|endret}} statusen på $4 oversettelser av $3 fra $6 til $7",
+ "logentry-translationreview-group": "$1 {{GENDER:$2|endret}} statusen på oversettelser til $4 av $3 fra $6 til $7",
"group-translate-sandboxed": "Ikke-godtatte oversettere",
"group-translate-sandboxed-member": "{{GENDER:$1|ikke-godkjent oversetter}}",
"right-translate-sandboxmanage": "Behandle sandkassebrukere",
@@ -279,10 +274,7 @@
"action-translate-sandboxaction": "utføre handlinger som er hvitlistet for sandkassebrukere",
"translate-workflow-state-": "(ikke satt)",
"translate-workflowstatus": "Status: $1",
- "translate-workflow-set-do": "Sett",
"translate-workflow-set-doing": "Setter …",
- "translate-workflow-set-done": "Satt!",
- "translate-workflow-set-error-alreadyset": "Den forespurte tilstanden er identisk med den gjeldende tilstanden.",
"translate-workflow-autocreated-summary": "Automatisk oppretting av side for arbeidsflytstatus $1",
"translate-stats-workflow": "Status",
"translate-workflowgroup-label": "Arbeidsflytstatuser",
@@ -291,11 +283,6 @@
"translate-dynagroup-recent-desc": "Denne meldingsgruppen viser alle nylige oversettelser til dette språket.\nMest nyttig for korrekturlesningsoppgaver.",
"translate-dynagroup-additions-label": "Nylige tillegg",
"translate-dynagroup-additions-desc": "Denne meldingsgruppen viser nye og endrede meldinger.",
- "translate-dynagroup-by": "Oversettelse gjort av {{GENDER:$1|$1}}",
- "translate-dynagroup-byc": "Oversettelse gjort av {{GENDER:$1|$1}} ($2)",
- "translate-dynagroup-last": "Siste endring av {{GENDER:$1|$1}}",
- "translate-dynagroup-lastc": "Siste endring av {{GENDER:$1|$1}} ($2)",
- "translate-gethelp": "Hjelp",
"translate-msggroupselector-projects": "Meldingsgruppe",
"translate-msggroupselector-search-placeholder": "Søk grupper",
"translate-msggroupselector-search-all": "Alle",
@@ -303,9 +290,9 @@
"translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|undergruppe|undergrupper}}",
"tux-languageselector": "Oversett til",
"tux-tab-all": "Alle",
- "tux-tab-untranslated": "Uoversatt",
- "tux-tab-outdated": "Utdatert",
- "tux-tab-translated": "Oversatt",
+ "tux-tab-untranslated": "Uoversatte",
+ "tux-tab-outdated": "Utdaterte",
+ "tux-tab-translated": "Oversatte",
"tux-tab-unproofread": "Ikke korrekturlest",
"tux-edit": "Rediger",
"tux-status-optional": "Valgfri",
@@ -314,14 +301,17 @@
"tux-status-translated": "Oversatt",
"tux-status-saving": "Lagrer...",
"tux-status-unsaved": "Ikke lagret",
+ "tux-save-unknown-error": "Ukjent feil oppsto.",
"tux-editor-placeholder": "Din oversettelse",
+ "tux-editor-editsummary-placeholder": "Valgfri forklaring",
"tux-editor-paste-original-button-label": "Lim inn kildetekst",
"tux-editor-discard-changes-button-label": "Se bort i fra endringer",
"tux-editor-save-button-label": "Lagre oversettelse",
"tux-editor-skip-button-label": "Hopp over til neste",
"tux-editor-cancel-button-label": "Avbryt",
"tux-editor-confirm-button-label": "Bekreft oversettelse",
- "tux-editor-shortcut-info": "Trykk på «$1» for å lagre eller «$2» for å hoppe videre til neste beskjed eller «$3» for andre snarveier.",
+ "tux-editor-proofread-button-label": "Merk som gjennomgått",
+ "tux-editor-shortcut-info": "Trykk på «$1» forå lagre, «$2» for å hoppe videre til neste beskjed, «$4» for å oppgi en forklaring eller «$3» for andre snarveier.",
"tux-editor-edit-desc": "Rediger dokumentasjon",
"tux-editor-add-desc": "Legg til dokumentasjon",
"tux-editor-suggestions-title": "Forslag",
@@ -333,7 +323,7 @@
"tux-warnings-hide": "skjul",
"tux-editor-save-failed": "Lagring av oversettelsen feilet: $1",
"tux-editor-n-uses": "brukt $1 {{PLURAL:$1|gang|ganger}}",
- "tux-editor-message-desc-more": "Vis flere",
+ "tux-editor-message-desc-more": "Vis mer",
"tux-editor-message-desc-less": "Vis mindre",
"tux-editor-clear-translated": "Skjul oversatte",
"tux-editor-proofreading-mode": "Korrekturles",
@@ -376,13 +366,18 @@
"tux-editor-close-tooltip": "Lukk",
"tux-editor-expand-tooltip": "Utvid",
"tux-editor-collapse-tooltip": "Skjul",
+ "tux-editor-message-tools-show-editor": "Vis i wikieditoren",
"tux-editor-message-tools-history": "Historikk",
+ "tux-editor-message-tools-delete": "Slett",
"tux-editor-message-tools-translations": "Alle oversettelser",
+ "tux-editor-message-tools-linktothis": "Lenke til denne beskjeden",
"tux-editor-loading": "Laster...",
"translate-search-more-languages-info": "$1 flere {{PLURAL:$1|språk}}",
"translate-statsbar-tooltip": "$1% oversatt, $2% korrekturlest",
"translate-statsbar-tooltip-with-fuzzy": "$1% oversatt, $2% korrekturlest, $3% utdatert",
"translate-search-more-groups-info": "$1 {{PLURAL:$1|gruppe|grupper}} til",
"translate-ulsdep-title": "Konfigrasjonsfeil",
- "translate-ulsdep-body": "Oversettelsesutvidelsen er avhengig av [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector utvidelsen Universal Language Selector]."
+ "translate-ulsdep-body": "Oversettelsesutvidelsen er avhengig av [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector utvidelsen Universal Language Selector].",
+ "tux-session-expired": "Du er ikke lenger logget inn. Logg inn i en annen fane, eller kopier ulagrede oversettelser, logg inn og kom tilbake til denne siden og lim inn oversettelsen(e).",
+ "tux-nojs": "Dette verktøyet virker ikke uten JavaScript. JavaScript er slått av eller virket ikke, eller nettleseren din støttes ikke."
}
diff --git a/MLEB/Translate/i18n/core/nds.json b/MLEB/Translate/i18n/core/nds.json
index 5b328393..60e5e164 100644
--- a/MLEB/Translate/i18n/core/nds.json
+++ b/MLEB/Translate/i18n/core/nds.json
@@ -2,7 +2,8 @@
"@metadata": {
"authors": [
"Joachim Mos",
- "Slomox"
+ "Slomox",
+ "Servien"
]
},
"translate": "Översetten",
@@ -14,7 +15,6 @@
"translate-prev": "Vörige Siet",
"translate-page-description-legend": "Informatschoon över de Köppel",
"translate-page-edit": "ännern",
- "translate-ext-url": "<hr />Websied: $1",
"translate-optional": "(optschoonal)",
"translate-edit-title": "Ännern \"$1\"",
"translate-edit-translation": "Översetten",
@@ -27,5 +27,6 @@
"translate-magic-special": "Spezialsieden-Alternativnaams",
"translate-language-code": "Spraak-Code",
"translate-language-code-field-name": "Spraak-Code:",
+ "tux-warnings-hide": "versteken",
"tux-proofread-edit-label": "Ännern"
}
diff --git a/MLEB/Translate/i18n/core/ne.json b/MLEB/Translate/i18n/core/ne.json
index 95e16ff3..49362cd2 100644
--- a/MLEB/Translate/i18n/core/ne.json
+++ b/MLEB/Translate/i18n/core/ne.json
@@ -6,11 +6,17 @@
"RajeshPandey",
"सरोज कुमार ढकाल",
"Krish Dulal",
- "बिप्लब आनन्द"
+ "बिप्लब आनन्द",
+ "NehalDaveND",
+ "राम प्रसाद जोशी"
]
},
"translate": "अनुवाद गर्ने",
- "translate-desc": "मीडियाविकि तथा अन्यको अनुवादको निम्ति [[Special:Translate|विशेष पृष्ठ]]",
+ "translate-desc": "मिडियाविकी तथा अन्यको अनुवादको निम्ति [[Special:Translate|विशेष पृष्ठ]]",
+ "translate-taction-translate": "अनुवाद गर्ने",
+ "translate-taction-proofread": "समीक्षा",
+ "translate-taction-lstats": "भाषा तथ्यांक",
+ "translate-taction-export": "निर्यात",
"translate-page-no-such-language": "निर्दिष्ट भाषा अमान्य थियो",
"translate-page-no-such-group": "निर्दिष्ट समूह अमान्य थियो",
"translate-page-disabled": "यस भाषामा यो समूहको अनुवाद कार्य निस्क्रिय गरिएको छ।\nकारण:\n\n<em>$1</em>",
@@ -18,32 +24,29 @@
"translate-page-group": "समूह",
"translate-page-language": "भाषा",
"translate-page-limit": "सीमा",
- "translate-page-limit-option": "प्रति पृष्ठ $1 {{PLURAL:$1|सन्देश|सन्देशहरु}}",
+ "translate-page-limit-option": "प्रति पृष्ठ $1 {{PLURAL:$1|सन्देश|सन्देशहरू}}",
"translate-submit": "छाँटेर हेर्ने",
"translate-page-navigation-legend": "अन्वेषण",
- "translate-page-showing": "$3 मध्येका $1 देखि $2 सम्म सन्देशहरु देखाइँदै",
- "translate-page-showing-all": "$1 {{PLURAL:$1|सन्देश|सन्देशहरु}} देखाइँदै।",
+ "translate-page-showing": "$3 मध्येका $1 देखि $2 सम्म सन्देशहरू देखाइँदै",
+ "translate-page-showing-all": "$1 {{PLURAL:$1|सन्देश|सन्देशहरू}} देखाइँदै।",
"translate-page-showing-none": "देखाउनु पर्ने सन्देश छैन।",
"translate-next": "अर्को पृष्ठ",
"translate-prev": "अघिल्लो पृष्ठ",
"translate-page-description-legend": "समूह बारेको जानकारी",
"translate-page-edit": "सम्पादन गर्ने",
- "translate-ext-url": "<hr />वेवसाइट: $1",
"translate-optional": "(वैकल्पिक)",
"translate-ignored": "(अनदेखा गरिएको)",
"translate-edit-title": "\"$1\" सम्पादन गर्ने",
"translate-edit-definition": "सन्देश परिभाषा",
"translate-edit-translation": "अनुवाद",
"translate-edit-contribute": "योगदान गर्ने",
- "translate-edit-no-information": "''यो सन्देशको दस्तावेजीकरण (documentation) छैन''\n''यदि तपाईं यो सन्देश कहाँ अथवा कसरी प्रयोग गरिन्छ भन्ने कुरा जान्नु हुन्छ भनें तपाईंले यसको दस्तावेजीकरण थप गरी अरु अनुवादकहरुलाई सहयोग दिन सक्नुहुन्छ।''",
+ "translate-edit-no-information": "''यो सन्देशको दस्तावेजीकरण (documentation) छैन''\n''यदि तपाईं यो सन्देश कहाँ अथवा कसरी प्रयोग गरिन्छ भन्ने कुरा जान्नु हुन्छ भने तपाईंले यसको दस्तावेजीकरण थप गरी अरु अनुवादकहरूलाई सहयोग दिन सक्नुहुन्छ।''",
"translate-edit-information": "($1) सन्देशको बारेमा जानकारी",
- "translate-edit-in-other-languages": "सन्देश अरु भाषाहरुमा",
- "translate-edit-committed": "सफ्टवेयरमा वर्तमान अनुवाद",
+ "translate-edit-in-other-languages": "सन्देश अरु भाषाहरूमा",
"translate-edit-warnings": "चेतावनी अपूर्ण अनुवादको बारेमा",
- "translate-edit-tmsugs": "अनुवाद स्मृतिबाट सुझावहरु",
"translate-edit-tmmatch": "$1% मेल",
- "translate-use-suggestion": "यस सुझाउलाई अनुवादको कोठामा हाल्नुहोस्। यसले वर्तमान सामग्री(शव्दहरु)को स्थान लिनेछ।",
- "translate-magic-pagename": "विस्तारित मीडियाविकि अनुवाद",
+ "translate-use-suggestion": "यस सुझाउलाई अनुवादको कोठामा हाल्नुहोस् । यसले वर्तमान सामग्री(शब्दहरू)को स्थान लिनेछ।",
+ "translate-magic-pagename": "विस्तारित मिडियाविकी अनुवाद",
"translate-magic-submit": "हेर्ने",
"translate-magic-cm-export": "निर्यात गर्ने",
"translate-magic-cm-current": "वर्तमान",
@@ -51,15 +54,15 @@
"translate-magic-cm-comment": "टिप्पणी:",
"translate-magic-cm-save": "संग्रह गर्ने",
"translate-magic-cm-savefailed": "संग्रह विफल भयो",
- "translate-magic-words": "जादुई शव्दहरु",
+ "translate-magic-words": "जादुई शब्दहरू",
"translate-magic-notsaved": "तपाईंको सम्पादन संग्रह गरिएको थिएन!",
- "translate-magic-saved": "तपाईंका परिवर्तनहरु सफलता पूर्वक संग्रह भए।",
+ "translate-magic-saved": "तपाईंका परिवर्तनहरू सफलता पूर्वक संग्रह भए।",
"translate-checks-parameters-unknown": "निम्न {{PLURAL:$2|पैरामीटर अज्ञात हो|पैरामीटरहरु अज्ञात हुन्}} :\n<strong><nowiki>$1</nowiki></strong>",
"translationstats": "अनुवाद तथ्यांक",
- "translate-stats-edits": "सम्पादनहरु",
- "translate-stats-users": "अनुवादकहरु",
+ "translate-stats-edits": "सम्पादनहरू",
+ "translate-stats-users": "अनुवादकहरू",
"translate-stats-registrations": "पंजीकरण",
- "translate-statsf-options": "ग्राफ विकल्पहरु",
+ "translate-statsf-options": "ग्राफ विकल्पहरू",
"translate-statsf-width": "चौड़ाई पिक्सलमा:",
"translate-statsf-height": "उचाई पिक्सलमा:",
"translate-statsf-days": "समयावधि दिनमा:",
@@ -71,25 +74,24 @@
"translate-statsf-scale-hours": "घण्टा",
"translate-statsf-count": "माप:",
"translate-statsf-count-edits": "सम्पादन संख्या",
- "translate-statsf-count-users": "सक्रिय अनुवादकहरु",
- "translate-statsf-count-registrations": "नयाँ प्रयोगकर्ताहरु",
+ "translate-statsf-count-users": "सक्रिय अनुवादकहरू",
+ "translate-statsf-count-registrations": "नयाँ प्रयोगकर्ताहरू",
"translate-statsf-submit": "पूर्वावलोकन",
- "translate-tag-category": "अनुवाद गर्नुपर्ने पृष्ठहरू",
"translate-tag-page-desc": "विकि पृष्ठ [[$2|$1]]को अनुवाद।",
"translate-sidebar-alltrans": "अरु भाषामा",
- "translations": "सबै अनुवादहरु",
- "translations-summary": "सबै उपलब्ध अनुवादहरु हेर्न तल सन्देशको नाम दिनुहोस्।",
+ "translations": "सबै अनुवादहरू",
+ "translations-summary": "सबै उपलब्ध अनुवादहरू हेर्न तल सन्देशको नाम दिनुहोस् ।",
"translate-translations-no-message": "\"$1\" अनुवाद योग्य सन्देश होइन",
- "translate-translations-none": "\"$1\"को लागि अनुवादहरु छैनन्।",
- "translate-translations-count": "{{PLURAL:$1|एउटा अनुवाद|$1 अनुवादहरु}} पाइयो।",
+ "translate-translations-none": "\"$1\"को लागि अनुवादहरू छैनन्।",
+ "translate-translations-count": "{{PLURAL:$1|एउटा अनुवाद|$1 अनुवादहरू}} पाइयो।",
"translate-translations-fieldset-title": "सन्देश",
"translate-translations-messagename": "नाम:",
"translate-translations-project": "परियोजना:",
"translate-translations-history-short": "हि",
"languagestats": "भाषा तथ्यांक",
- "languagestats-summary": "यस पृष्ठमा भाषाको निम्ति सबै सन्देश समूहहरुका लागि अनुवाद तथ्यांक प्रदर्शित गरिन्छ।",
+ "languagestats-summary": "यस पृष्ठमा भाषाको निम्ति सबै सन्देश समूहहरूका लागि अनुवाद तथ्याङ्क प्रदर्शित गरिन्छ।",
"languagestats-stats-for": "$1 ($2)को लागि अनुवाद तथ्यांक।",
- "languagestats-recenttranslations": "भर्खरैका अनुवादहरु",
+ "languagestats-recenttranslations": "भर्खरैका अनुवादहरू",
"translate-langstats-expand": "फैलाउनु",
"translate-langstats-collapse": "खुम्च्याउने",
"translate-langstats-expandall": "सबै फैलाउ",
@@ -97,11 +99,46 @@
"translate-language-code": "भाषा कोड",
"translate-language-code-field-name": "भाषा कोड:",
"translate-language": "भाषा",
- "translate-total": "सन्देशहरु",
+ "translate-total": "सन्देशहरू",
"translate-untranslated": "अनुवाद नगरिएका",
"translate-percentage-complete": "सकिएका",
"translate-percentage-fuzzy": "पुराना (काम नलाग्ने)",
- "supportedlanguages-recenttranslations": "भर्खरैका अनुवादहरु",
+ "translate-ls-column-group": "सन्देश समूह",
+ "translate-mgs-group": "सन्देश समूहः",
+ "translate-mgs-column-language": "भाषा",
+ "supportedlanguages-recenttranslations": "भर्खरैका अनुवादहरू",
+ "translate-manage-action-import": "आयात गर्नु",
+ "translate-manage-action-ignore": "उपेक्षा",
+ "translate-js-summary": "सारांश :",
+ "translate-js-save": "संग्रह गर्ने",
+ "translate-gs-code": "कोड",
+ "translate-gs-speakers": "वक्ताहरु",
"translate-documentation-language": "सन्देश दस्तावेज",
- "translate-searchprofile": "अनुवाद"
+ "translate-searchprofile": "अनुवाद",
+ "translate-workflow-set-doing": "सेटिङ्हरु...",
+ "translate-msggroupselector-search-all": "सबै",
+ "tux-tab-all": "सबै",
+ "tux-tab-outdated": "पुराना",
+ "tux-tab-translated": "अनुवादित",
+ "tux-edit": "सम्पादन",
+ "tux-status-optional": "वैकल्पिक",
+ "tux-status-fuzzy": "पुराना",
+ "tux-status-proofread": "समक्षित",
+ "tux-status-translated": "अनुवादित",
+ "tux-status-saving": "संग्रह गर्ने...",
+ "tux-status-unsaved": "संग्रह गरिसकिएको छैन",
+ "tux-editor-placeholder": "तपाईंको अनुवाद",
+ "tux-editor-cancel-button-label": "रद्द गर्ने",
+ "tux-warnings-hide": "लुकाउनुहोस्",
+ "tux-editor-proofreading-mode": "समीक्षा",
+ "tux-editor-translate-mode": "सूचीहरू",
+ "tux-proofread-edit-label": "सम्पादन",
+ "tux-editor-page-mode": "पृष्ठ",
+ "tux-editor-doc-editor-cancel": "रद्द गर्नु",
+ "tux-empty-list-translated-action": "अनुवाद गर्नु",
+ "tux-editor-close-tooltip": "रद्द गर्नु",
+ "tux-editor-expand-tooltip": "फालाउ",
+ "tux-editor-collapse-tooltip": "खुम्च्याउन",
+ "tux-editor-message-tools-history": "इतिहास",
+ "tux-editor-message-tools-delete": "मेटाउन"
}
diff --git a/MLEB/Translate/i18n/core/nl.json b/MLEB/Translate/i18n/core/nl.json
index 3ac9cd15..706597d0 100644
--- a/MLEB/Translate/i18n/core/nl.json
+++ b/MLEB/Translate/i18n/core/nl.json
@@ -13,16 +13,12 @@
"Wiki13",
"Mar(c)",
"Southparkfan",
- "Sjoerddebruin"
+ "Sjoerddebruin",
+ "Mainframe98"
]
},
"translate": "Vertalen",
"translate-desc": "[[Special:Translate|Speciale pagina]] voor het vertalen van MediaWiki en meer",
- "translate-taskui-view": "Alle berichten weergeven",
- "translate-taskui-untranslated": "Onvertaalde berichten weergeven",
- "translate-taskui-optional": "Optionele berichten weergeven",
- "translate-taskui-acceptqueue": "Alleen berichten die ik als gecontroleerd kan markeren",
- "translate-taskui-reviewall": "Alle vertalingen controleren",
"translate-taskui-export-to-file": "Exporteren in de oorspronkelijke indeling",
"translate-taskui-export-as-po": "Exporteren voor offline vertaling",
"translate-taction-translate": "Vertalen",
@@ -31,10 +27,10 @@
"translate-taction-mstats": "Berichtengroepstatistieken",
"translate-taction-export": "Exporteren",
"translate-taction-disabled": "Deze handeling is uitgeschakeld op deze wiki.",
- "translate-page-no-such-language": "Er is een ongeldige taalcode opgegeven",
+ "translate-page-no-such-language": "De opgegeven taalcode is ongeldig.",
"translate-page-no-such-group": "De opgegeven groep bestaat niet.",
- "translate-page-disabled": "Vertalingen in deze taal voor deze groep zijn uitgeschakeld. Reden:\n\n<em>$1</em>",
- "translate-language-disabled": "Vertalen in deze taal is uitgeschakeld.",
+ "translate-page-disabled": "Vertalingen naar deze taal zijn in deze groep uitgeschakeld. Reden:\n\n<em>$1</em>",
+ "translate-language-disabled": "Vertalen naar deze taal is uitgeschakeld.",
"translate-page-settings-legend": "Instellingen",
"translate-page-group": "Groep",
"translate-page-language": "Taal",
@@ -51,26 +47,27 @@
"translate-page-description-hasoptional": "Deze berichtengroep bevat optionele berichten.\nOptionele berichten hoeven alleen vertaald te worden als uw taal bijzondere eigenschappen heeft, zoals dat deze geen spaties gebruikt of dat eigennamen in de taal getranslitereerd worden. $1",
"translate-page-description-hasoptional-open": "Optionele berichten weergeven.",
"translate-page-edit": "bewerken",
- "translate-ext-url": "<hr />Website: $1",
"translate-optional": "(optioneel)",
"translate-ignored": "(genegeerd)",
"translate-edit-title": "\"$1\" bewerken",
"translate-edit-definition": "Berichtdefinitie",
"translate-edit-translation": "Vertaling",
"translate-edit-contribute": "bijdragen",
- "translate-edit-no-information": "<em>Dit bericht heeft geen documentatie.\nAls u weet waar dit bericht wordt gebruikt, dan kunt u andere gebruikers helpen door documentatie voor dit bericht toe te voegen.</em>",
+ "translate-edit-no-information": "<em>Dit bericht heeft geen documentatie.\nAls u weet waar of hoe dit bericht wordt gebruikt, dan kunt u andere gebruikers helpen door documentatie voor dit bericht toe te voegen.</em>",
"translate-edit-information": "Informatie over bericht ($1)",
"translate-edit-in-other-languages": "Bericht in andere talen",
- "translate-edit-committed": "Huidig bericht in software",
"translate-edit-warnings": "Waarschuwingen over onjuiste vertalingen",
- "translate-edit-tmsugs": "Suggesties uit het vertaalgeheugen",
"translate-edit-tmmatch-source": "Brontekst voor vertaling: $1",
"translate-edit-tmmatch": "$1% overeenkomst",
"translate-use-suggestion": "Huidige vertaling door deze suggestie vervangen.",
- "translate-edit-nopermission": "U hebt vertaalrechten nodig om te kunnen vertalen.",
+ "translate-edit-nopermission": "U hebt vertaalrechten nodig om berichten te kunnen vertalen.",
"translate-edit-askpermission": "Vertaalrechten aanvragen",
+ "exporttranslations": "Vertalingen exporteren",
+ "translate-export-form-format": "Indeling",
+ "translate-export-not-supported": "Het exporteren van vertalingen wordt niet ondersteund.",
+ "translate-export-format-notsupported": "De opgegeven exporteerindeling wordt niet ondersteund door de berichtengroep.",
"translate-magic-pagename": "Uitgebreide MediaWiki-vertaling",
- "translate-magic-help": "U kunt alternatieven voor speciale pagina's, magische woorden en naamruimtebenamingen vertalen.\n\nAlternatieven voor speciale pagina's en magische woorden kunnen meerdere vertalingen hebben.\nScheid vertalingen met een komma (,).\nNaamruimtebenamingen kunnen slechts één vertaling hebben.\n\nHet vertalen van naamruimte voor projectoverleg <code>$1 talk</code> kan lastig zijn.\n<code>$1</code> wordt vervangen door de projectsitenaam (bijvoorbeeld <code>{{ns:project_talk}}</code>).\nAls het in uw taal niet mogelijk is een geldige uitdrukking te vormen zonder de sitenaam te wijzigen, neem dan contact op met ons op via de [[Support|pagina voor ondersteuning]].\n\nU moet vertaler zijn om wijzigingen op te kunnen slaan.\nWijzigingen worden niet bewaard totdat u op \"Pagina opslaan\" hebt geklikt.",
+ "translate-magic-help": "U kunt aliassen voor speciale pagina's, magische woorden en naamruimtebenamingen vertalen.\n\nAliassen voor speciale pagina's en magische woorden kunnen meerdere vertalingen hebben.\nScheid vertalingen met een komma (,).\nNaamruimtebenamingen kunnen slechts één vertaling hebben.\n\nHet vertalen van naamruimte voor projectoverleg <code>$1 talk</code> kan lastig zijn.\n<code>$1</code> wordt vervangen door de projectsitenaam (bijvoorbeeld <code>{{ns:project_talk}}</code>).\nAls het in uw taal niet mogelijk is een geldige uitdrukking te vormen zonder de sitenaam te wijzigen, neem dan contact met ons op via [[Support]].\n\nU moet vertaler zijn om wijzigingen te kunnen opslaan.\nWijzigingen worden niet bewaard totdat u hieronder op \"Pagina opslaan\" hebt geklikt.",
"translate-magic-module": "Module:",
"translate-magic-submit": "Ophalen",
"translate-magic-cm-export": "Exporteren",
@@ -82,7 +79,7 @@
"translate-magic-cm-save": "Opslaan",
"translate-magic-cm-updatedusing": "Bijgewerkt via [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
"translate-magic-cm-savefailed": "Opslaan mislukt",
- "translate-magic-special": "Alternatieven speciale pagina's",
+ "translate-magic-special": "Aliassen voor speciale pagina's",
"translate-magic-words": "Magische woorden",
"translate-magic-namespace": "Naamruimtebenamingen",
"translate-magic-notsaved": "Uw bewerking is niet opgeslagen!",
@@ -91,12 +88,12 @@
"translate-checks-parameters": "De volgende {{PLURAL:$2|parameter wordt|parameters worden}} niet gebruikt:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-parameters-unknown": "De volgende {{PLURAL:$2|parameter is|parameters zijn}} onbekend:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-balance": "Er wordt een oneven {{PLURAL:$2|aantal haakjes|aantal haakjes}} gebruikt:\n<strong><nowiki>$1</nowiki></strong>",
- "translate-checks-links": "De volgende {{PLURAL:$2|koppeling is|koppelingen zijn}} problematisch:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "De volgende {{PLURAL:$2|koppeling is|$2 koppelingen zijn}} problematisch:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-links-missing": "De volgende {{PLURAL:$2|koppeling ontbreekt|$2 koppelingen ontbreken}}:\n<strong><nowiki>$1</nowiki></strong>",
- "translate-checks-xhtml": "Vervang de volgende {{PLURAL:$2|tag|tags}} door de juiste:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Vervang {{PLURAL:$2|het volgende label|de volgende labels}} door de juiste:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-plural": "De definitie bevat <nowiki>{{PLURAL:}}</nowiki>, maar de vertaling niet.",
- "translate-checks-plural-forms": "Via <nowiki>{{PLURAL:}}</nowiki> {{PLURAL:$1|is één vorm|zijn $1 vormen}} opgegeven, maar {{PLURAL:$2|slechts één vorm wordt|$2 worden}} ondersteund (exclusief de vormen 0= en 1=).",
- "translate-checks-plural-dupe": "Er zijn duplicaatvormen aan het einde van <nowiki>{{PLURAL:}}</nowiki> aangetroffen. <nowiki>{{PLURAL:$1|hersenen|hersenen}}</nowiki> moet genoteerd worden als <nowiki>{{PLURAL:$1|hersenen}}</nowiki>.",
+ "translate-checks-plural-forms": "Via <nowiki>{{PLURAL:}}</nowiki> {{PLURAL:$1|is één vorm|zijn $1 vormen}} opgegeven, maar {{PLURAL:$2|slechts één vorm wordt|$2 vormen worden}} ondersteund (exclusief de vormen 0= en 1=).",
+ "translate-checks-plural-dupe": "Aan het einde van <nowiki>{{PLURAL:}}</nowiki> staat dezelfde vorm dubbel. <nowiki>{{PLURAL:$1|hersenen|hersenen}}</nowiki> moet genoteerd worden als <nowiki>{{PLURAL:$1|hersenen}}</nowiki>.",
"translate-checks-pagename": "Afwijkende naamruimte vergeleken met de brontekst",
"translate-checks-format": "Deze vertaling wijkt af van het bronbericht of heeft een ongeldige opmaak: $1",
"translate-checks-escape": "De volgende escapes zijn waarschijnlijk per ongeluk toegepast: <strong>$1</strong>",
@@ -114,7 +111,15 @@
"right-translate-import": "Vertalingen van buiten het systeem importeren",
"action-translate-import": "vertalingen van buiten het systeem te importeren",
"right-translate-messagereview": "Vertalingen accepteren",
+ "action-translate-messagereview": "vertalingen te controleren",
"right-translate-groupreview": "Workflowstatus van berichtengroepen wijzigen",
+ "translate-rcfilters-translations": "Vertalingen",
+ "translate-rcfilters-translations-only-label": "Vertalingen",
+ "translate-rcfilters-translations-only-desc": "Wijzigingen aan vertaalde pagina's.",
+ "translate-rcfilters-translations-filter-label": "Geen vertalingen",
+ "translate-rcfilters-translations-filter-desc": "Alle wijzigingen die geen vertaling zijn.",
+ "translate-rcfilters-translations-site-label": "Systeemteksten",
+ "translate-rcfilters-translations-site-desc": "Aanpassingen aan systeemteksten in de MediaWiki naamruimte.",
"translate-rc-translation-filter": "Vertalingen filteren:",
"translate-rc-translation-filter-no": "Niets doen",
"translate-rc-translation-filter-only": "Alleen vertalingen weergeven",
@@ -146,8 +151,7 @@
"translate-statsf-language": "Kommagescheiden lijst van taalcodes:",
"translate-statsf-group": "Kommagescheiden lijst van groepscodes:",
"translate-statsf-submit": "Voorvertoning",
- "translate-tag-category": "Vertaalbare pagina's",
- "translate-tag-page-desc": "Vertaling van de wikipagina [[$2|$1]] van $3 ($4).",
+ "translate-tag-page-desc": "Vertaling van de wikipagina [[$2|$1]] uit $3 ($4).",
"translate-sidebar-alltrans": "In andere talen",
"translations": "Alle vertalingen",
"translations-summary": "Voer de naam van een bericht in om alle beschikbare vertalingen weer te geven.",
@@ -166,9 +170,9 @@
"languagestats-recenttranslations": "recente vertalingen",
"translate-langstats-incomplete": "Sommige statistieken op deze pagina zijn onvolledig. Herlaad de pagina voor meer complete statistieken.",
"translate-langstats-expand": "uitvouwen",
- "translate-langstats-collapse": "inklappen",
+ "translate-langstats-collapse": "samenvouwen",
"translate-langstats-expandall": "alles uitvouwen",
- "translate-langstats-collapseall": "alles inklappen",
+ "translate-langstats-collapseall": "alles samenvouwen",
"translate-language-code": "Taalcode",
"translate-language-code-field-name": "Taalcode:",
"translate-suppress-complete": "Volledig vertaalde berichtengroepen verbergen",
@@ -188,16 +192,17 @@
"translate-mgs-noempty": "Talen zonder vertalingen verbergen",
"translate-mgs-submit": "Statistieken weergeven",
"translate-mgs-column-language": "Taal",
- "translate-mgs-totals": "Alle talen samen",
+ "translate-mgs-totals": "Alle $1 {{PLURAL:$1|taal|talen}} samen",
"translate-mgs-invalid-group": "De opgegeven groep \"$1\" bestaat niet.",
"translate-mgs-nothing": "Er is niets weer te geven voor de opgegeven statistieken.",
"supportedlanguages": "Ondersteunde talen",
"supportedlanguages-summary": "Op deze pagina wordt een lijst van alle talen die in {{SITENAME}} worden ondersteund weergegeven, samen met de namen van de vertalers die werken aan die taal.\nDe naam van een vertaler wordt groter weergegeven als deze meer bewerkingen heeft gemaakt.\nDe kleur van een onderstreping geeft aan hoe recent een vertaler actief is geweest.",
"supportedlanguages-colorlegend": "Legenda voor de kleuren: laatste vertaling $1 dagen geleden.",
- "supportedlanguages-translators": "{{PLURAL:$2|Vertaler|Vertalers}}: $1",
+ "supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|Vertaler}}|Vertalers}}: $1",
"supportedlanguages-recenttranslations": "recente vertalingen",
"supportedlanguages-count": "$1 {{PLURAL:$1|taal|talen}} in totaal.",
- "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|bewerking|bewerkingen}} - laatste bewerking {{PLURAL:$3|gisteren|$3 dagen}} geleden",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|bewerking|bewerkingen}} - laatste bewerking {{PLURAL:$3|gisteren|$3 dagen geleden}}",
+ "abusefilter-edit-builder-vars-translate-source-text": "Brontekst van de vertalingseenheid",
"translate-save": "Opslaan ($1)",
"translate-jssti-add": "Aan lijst toevoegen",
"managemessagegroups": "Berichtengroepen beheren",
@@ -221,7 +226,6 @@
"translate-manage-toolong": "De maximale verwerkingstijd van $1 {{PLURAL:$1|seconde|seconden}} is overschreden.\nVerzend de opdracht opnieuw.",
"translate-manage-import-summary": "Bezig met het importeren van een nieuwe versie uit een externe bron",
"translate-manage-conflict-summary": "Bezig met het importeren van een nieuwe versie uit een externe bron.\nControleer de wijziging.",
- "translate-manage-fuzzy-summary": "De berichtdefinitie is gewijzigd",
"translate-manage-submit": "Uitvoeren",
"translate-manage-intro-other": "Hieronder wordt een lijst weergegeven van wijzigingen in de vertalingen voor de taal $1.\nControleer de wijzigingen en kies een uit te voeren handeling voor iedere vertaling.\nAls u wijzigingen negeert, worden deze bij de volgende export overschreven.",
"translate-manage-import-ok": "Geïmporteerd: $1",
@@ -239,9 +243,7 @@
"translate-js-summary": "Samenvatting:",
"translate-js-save": "Opslaan",
"translate-js-next": "Opslaan en volgende",
- "translate-js-nonext": "Dit was het laatste bericht op deze pagina.",
"translate-js-skip": "Overslaan en volgende",
- "translate-js-save-failed": "Opslaan is mislukt. Maak melding van deze fout.",
"translate-js-history": "Vertaalgeschiedenis",
"translate-js-support": "Vraag stellen",
"translate-js-support-title": "Vraag om hulp als er niet voldoende informatie is om dit bericht juist te vertalen.",
@@ -258,21 +260,9 @@
"translate-documentation-language": "Berichtbeschrijving",
"translate-searchprofile": "Vertalingen",
"translate-searchprofile-tooltip": "In vertalingen zoeken",
+ "translate-searchprofile-note": "Meer zoekopties zijn beschikbaar met de [$1 vertalingszoekfuntie].",
"translate-search-languagefilter": "Taalfilter:",
"translate-search-nofilter": "Niet filteren",
- "translate-messagereview-submit": "Als gecontroleerd markeren",
- "translate-messagereview-progress": "Bezig met als gecontroleerd markeren...",
- "translate-messagereview-failure": "Als gecontroleerd markeren mislukt: $1",
- "translate-messagereview-done": "Als gecontroleerd gemarkeerd",
- "translate-messagereview-reviews": "Gecontroleerd door {{PLURAL:$1|één gebruiker|$1 gebruikers}}",
- "translate-messagereview-reviewswithyou": "Gecontroleerd door {{PLURAL:$1|u|$1 gebruikers, inclusief uzelf}}",
- "api-error-invalidrevision": "De vertaling is niet gevonden.",
- "api-error-unknownmessage": "Het bericht is niet aangetroffen.",
- "api-error-fuzzymessage": "De vertaling is gemarkeerd als verouderd.",
- "api-error-owntranslation": "U kunt uw eigen vertalingen niet als gecontroleerd markeren.",
- "translate-messagereview-no-fuzzy": "U kunt verouderde vertalingen niet als gecontroleerd markeren.",
- "translate-messagereview-no-own": "U kunt uw eigen vertalingen niet als gecontroleerd markeren.",
- "translate-messagereview-doit": "Deze vertaling als correct gecontroleerd markeren.",
"log-name-translationreview": "Logboek vertalingencontrole",
"log-description-translationreview": "Logboek met alle controles van vertalingen en berichtengroepen.",
"logentry-translationreview-message": "$1 {{GENDER:$2|heeft}} de vertaling $3 als gecontroleerd gemarkeerd",
@@ -285,10 +275,7 @@
"action-translate-sandboxaction": "handelingen uit te voeren die zijn toegestaan voor zandbakgebruikers",
"translate-workflow-state-": "(niet ingesteld)",
"translate-workflowstatus": "Status: $1",
- "translate-workflow-set-do": "Instellen",
"translate-workflow-set-doing": "Bezig met instellen...",
- "translate-workflow-set-done": "Ingesteld",
- "translate-workflow-set-error-alreadyset": "De opgegeven status is identiek aan de huidige status.",
"translate-workflow-autocreated-summary": "Pagina voor workflowstatus $1 is automatisch aangemaakt",
"translate-stats-workflow": "Status",
"translate-workflowgroup-label": "Workflowstatussen",
@@ -297,11 +284,6 @@
"translate-dynagroup-recent-desc": "Deze berichtengroep geeft alle recente wijzigingen weer in deze taal.\nDit is vooral nuttig voor de controletaken.",
"translate-dynagroup-additions-label": "Recente toevoegingen",
"translate-dynagroup-additions-desc": "In deze berichtengroep worden nieuwe en gewijzigde berichten weergegeven.",
- "translate-dynagroup-by": "Vertaling gemaakt door {{GENDER:$1|$1}}",
- "translate-dynagroup-byc": "Vertaling gemaakt door {{GENDER:$1|$1}} ($2)",
- "translate-dynagroup-last": "Laatste wijziging door {{GENDER:$1|$1}}",
- "translate-dynagroup-lastc": "Laatste wijziging door {{GENDER:$1|$1}} ($2)",
- "translate-gethelp": "Hulp",
"translate-msggroupselector-projects": "Berichtengroep",
"translate-msggroupselector-search-placeholder": "Groepen zoeken",
"translate-msggroupselector-search-all": "Alle",
@@ -320,14 +302,17 @@
"tux-status-translated": "Vertaald",
"tux-status-saving": "Opslaan...",
"tux-status-unsaved": "Niet-opgeslagen",
+ "tux-save-unknown-error": "Er is een onbekende fout opgetreden.",
"tux-editor-placeholder": "Uw vertaling",
+ "tux-editor-editsummary-placeholder": "Optionele bewerkingssamenvatting",
"tux-editor-paste-original-button-label": "Brontekst invoegen",
"tux-editor-discard-changes-button-label": "Wijzigingen negeren",
"tux-editor-save-button-label": "Vertaling opslaan",
"tux-editor-skip-button-label": "Overslaan en volgende",
"tux-editor-cancel-button-label": "Annuleren",
"tux-editor-confirm-button-label": "Vertaling bevestigen",
- "tux-editor-shortcut-info": "Druk op \"$1\" om op te slaan of druk op \"$2\" om naar het volgende bericht te gaan of \"$3\" voor andere snelkoppelingen.",
+ "tux-editor-proofread-button-label": "Als gecontroleerd markeren",
+ "tux-editor-shortcut-info": "Druk op \"$1\" om op te slaan of druk op \"$2\" om naar het volgende bericht te gaan of druk op \"$4\" om een bewerkingssamenvatting op te geven of \"$3\" voor andere snelkoppelingen.",
"tux-editor-edit-desc": "Documentatie bewerken",
"tux-editor-add-desc": "Documentatie toevoegen",
"tux-editor-suggestions-title": "Suggesties",
@@ -381,7 +366,8 @@
"tux-empty-list-other-link": "Alle berichten weergeven",
"tux-editor-close-tooltip": "Sluiten",
"tux-editor-expand-tooltip": "Uitvouwen",
- "tux-editor-collapse-tooltip": "Inklappen",
+ "tux-editor-collapse-tooltip": "Samenvouwen",
+ "tux-editor-message-tools-show-editor": "In wiki-editor weergeven",
"tux-editor-message-tools-history": "Geschiedenis",
"tux-editor-message-tools-delete": "Verwijderen",
"tux-editor-message-tools-translations": "Alle vertalingen",
@@ -391,5 +377,6 @@
"translate-statsbar-tooltip-with-fuzzy": "$1% vertaald, $2% gecontroleerd, $3% verouderd",
"translate-search-more-groups-info": "nog $1 groep{{PLURAL:$1||en}}",
"translate-ulsdep-title": "Fout in de instellingen",
- "translate-ulsdep-body": "De uitbreiding Translate is afhankelijk van de [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector uitbreiding Universal Language Selector]."
+ "translate-ulsdep-body": "De uitbreiding Translate is afhankelijk van de [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector uitbreiding Universal Language Selector].",
+ "tux-nojs": "Dit hulpmiddel vereist JavaScript. JavaScript is uitgeschakeld of werkt niet, of deze browser wordt niet ondersteund."
}
diff --git a/MLEB/Translate/i18n/core/nn.json b/MLEB/Translate/i18n/core/nn.json
index 675f0623..e05aa218 100644
--- a/MLEB/Translate/i18n/core/nn.json
+++ b/MLEB/Translate/i18n/core/nn.json
@@ -14,11 +14,6 @@
},
"translate": "Set om",
"translate-desc": "[[Special:Translate|Spesialside]] for omsetjing av MediaWiki og meir",
- "translate-taskui-view": "Vis alle meldingar",
- "translate-taskui-untranslated": "Vis uomsette meldingar",
- "translate-taskui-optional": "Vis valfrie meldingar",
- "translate-taskui-acceptqueue": "Berre meldingar eg kan merkja som vurderte",
- "translate-taskui-reviewall": "Sjå igjennom alle omsetjingane",
"translate-taskui-export-to-file": "Eksporter i opphavleg format",
"translate-taskui-export-as-po": "Eksporter for fråkopla omsetjing",
"translate-taction-translate": "Set om",
@@ -48,24 +43,21 @@
"translate-page-description-hasoptional": "Meldingsgruppa har valfrie meldingar.\nValfrie meldingar skal ein berre setja om når språket ditt har særskilde krav, til dømes at det ikkje nyttar mellomrom eller at det transkriberer eigennamn. $1",
"translate-page-description-hasoptional-open": "Vis valfrie meldingar.",
"translate-page-edit": "endre",
- "translate-ext-url": "<hr />Nettstad: $1",
"translate-optional": "(valfri)",
"translate-ignored": "(ignorert)",
"translate-edit-title": "Endra «$1»",
"translate-edit-definition": "Melding som skal setjast om",
"translate-edit-translation": "Omsetjing",
"translate-edit-contribute": "bidra",
- "translate-edit-no-information": "''Denne meldinga har ikkje dokumentasjon. Om du veit kvar eller korleis denne meldinga vert nytta, kan du hjelpe andre omsetjarar ved å legge inn dokumentasjon til denne meldinga.''",
+ "translate-edit-no-information": "<em>Denne meldinga har ingen dokumentasjon.\nOm du veit kvar eller korleis denne meldinga vert nytta, kan du hjelpe andre omsetjarar ved å legge inn dokumentasjon til denne meldinga.</em>",
"translate-edit-information": "Informasjon om meldinga ($1)",
"translate-edit-in-other-languages": "Meldinga på andre språk",
- "translate-edit-committed": "Noverande omsetjing i programvaren",
"translate-edit-warnings": "Åtvaringar om ufullstendige omsetjingar",
- "translate-edit-tmsugs": "Framlegg frå omsetjingsminnet",
"translate-edit-tmmatch-source": "Kjeldetekst for omsetjing: $1",
"translate-edit-tmmatch": "$1% samsvar",
"translate-use-suggestion": "Byt ut den gjeldande omsetjinga med dette framlegget.",
- "translate-edit-nopermission": "Du treng løyve for å setja om meldingar",
- "translate-edit-askpermission": "Bed om løyve",
+ "translate-edit-nopermission": "Du treng omsetjingsrettar for å setja om meldingar.",
+ "translate-edit-askpermission": "Få løyve",
"translate-magic-pagename": "Utvida MediaWiki-omsetjing",
"translate-magic-help": "Du kan setja om tilleggsnamn på spesialsidenamn, magiske ord og namna på namnerom.\n\nTilleggsnamn på spesialsidenamn og magiske ord kan ha fleire omsetjingar.\nOmsetjingane vert fråskilde med komma (,).\nNamnerom kan berre ha éi omsetjing.\n\nI namneromomsetjingane kan <code>$1 talk</code> vera innfløkt. <code>$1</code> vert erstatta med namnet på nettstaden (til dømes <code>{{ns:project_talk}}</code>).\nOm det ikkje er mogeleg å få til eit gildt uttrykk på ditt språk her utan å endra sidenamnet, lat oss få vita på [[Support]].\n\nDu må vera ein omsetjar for å lagra endringar.\nEndringar vert ikkje lagra før du klikkar på lagreknappen nedanfor.",
"translate-magic-module": "Modul:",
@@ -112,6 +104,13 @@
"action-translate-import": "importera fråkopla omsetjingar",
"right-translate-messagereview": "Sjå igjennom omsetjingar",
"right-translate-groupreview": "Endra stoda på arbeidsflyten til meldingsgrupper",
+ "translate-rcfilters-translations": "Omsetjingar",
+ "translate-rcfilters-translations-only-label": "Omsetjingar",
+ "translate-rcfilters-translations-only-desc": "Endringar på omsette sider.",
+ "translate-rcfilters-translations-filter-label": "Ikkje omsetjingar",
+ "translate-rcfilters-translations-filter-desc": "Alle endringar som ikkje er omsetjingar.",
+ "translate-rcfilters-translations-site-label": "Systemmeldingar",
+ "translate-rcfilters-translations-site-desc": "Tilpassing av systemmeldingane i MediaWiki-namnerommet.",
"translate-rc-translation-filter": "Filtrer omsetjingar:",
"translate-rc-translation-filter-no": "Ikkje gjer noko",
"translate-rc-translation-filter-only": "Vis berre omsetjingar",
@@ -143,8 +142,7 @@
"translate-statsf-language": "Liste over språkkodar fråskilde med komma:",
"translate-statsf-group": "Liste over gruppekodar fråskilde med komma:",
"translate-statsf-submit": "Førehandsvis",
- "translate-tag-category": "Sider som kan setjast om",
- "translate-tag-page-desc": "Omsetjing av wikisida [[$2|$1]].",
+ "translate-tag-page-desc": "Omsetjing av wikisida [[$2|$1]] frå $3 ($4).",
"translate-sidebar-alltrans": "På andre språk",
"translations": "Alle omsetjingar",
"translations-summary": "Skriv inn eit meldingsnamn nedanfor for å visa alle tilgjengelege omsetjingar.",
@@ -210,7 +208,6 @@
"translate-manage-action-conflict": "Importer og merk for oppdatering («fuzzy»)",
"translate-manage-action-ignore": "Ignorer",
"translate-manage-import-summary": "Importerer ein ny versjon frå ei ekstern kjelde",
- "translate-manage-fuzzy-summary": "Meldingsdefinisjonen har vorte endra",
"translate-manage-submit": "Utfør",
"translate-manage-import-ok": "Importert ny versjon av sida $1",
"translate-manage-import-done": "Alt klart!",
@@ -224,9 +221,7 @@
"translate-js-summary": "Samandrag:",
"translate-js-save": "Lagra",
"translate-js-next": "Lagra og opna neste",
- "translate-js-nonext": "Dette var den siste meldinga på sida.",
"translate-js-skip": "Hopp over til neste",
- "translate-js-save-failed": "Lagringa gjekk ikkje gjennom. Rapporter denne feilen.",
"translate-js-history": "Omsetjingshistorikk",
"translate-js-support": "Still spørsmål",
"translate-js-support-title": "Spør etter hjelp om det ikkje er nok informasjon til å setja om meldinga rett.",
@@ -243,39 +238,20 @@
"translate-documentation-language": "Meldingsdokumentasjon",
"translate-searchprofile": "Omsetjingar",
"translate-searchprofile-tooltip": "Søk i alle omsetjingar",
+ "translate-searchprofile-note": "Fleire søkjealternativ er tilgjengelege med [$1 omsetjingssøk].",
"translate-search-languagefilter": "Filtrer etter språk:",
"translate-search-nofilter": "Inga filtrering",
- "translate-messagereview-submit": "Merk som vurdert",
- "translate-messagereview-progress": "Merkjer som vurdert...",
- "translate-messagereview-failure": "Mislukkast i å merkja som vurdert: $1",
- "translate-messagereview-done": "Vurdert",
- "translate-messagereview-reviews": "Vurdert av {{PLURAL:$1|éin brukar|$1 brukarar}}",
- "translate-messagereview-reviewswithyou": "Vurdert av {{PLURAL:$1|deg|$1 brukarar inkludert deg}}",
- "api-error-invalidrevision": "Omsetjinga vart ikkje funnen",
- "api-error-unknownmessage": "Meldinga vart ikkje funnen",
- "api-error-fuzzymessage": "Omsetjinga er merkt som utdatert",
- "api-error-owntranslation": "Du kan ikkje merkja eigne omsetjingar som vurderte",
- "translate-messagereview-no-fuzzy": "Utdaterte omsetjingar kan ikkje merkjast som vurderte.",
- "translate-messagereview-no-own": "Du kan ikkje merkja eigne omsetjingar som vurderte.",
- "translate-messagereview-doit": "Merk omsetjinga som vurdert.",
"log-name-translationreview": "Logg over omsetjingsgjennomgåing",
"log-description-translationreview": "Logg over alle gjennomgåingar av omsetjingar og meldingsgrupper.",
"logentry-translationreview-message": "$1 {{GENDER:$2|vurderte}} omsetjinga $3",
"translate-workflow-state-": "(ikkje sett)",
"translate-workflowstatus": "Stode: $1",
- "translate-workflow-set-do": "Set",
"translate-workflow-set-doing": "Set …",
- "translate-workflow-set-done": "Sett!",
- "translate-workflow-set-error-alreadyset": "Den førespurde stoda er lik stoda som gjeld.",
"translate-workflow-autocreated-summary": "Automatisk oppretting av side for arbeidsflytsstoda $1",
"translate-stats-workflow": "Stode",
"translate-workflowgroup-label": "Arbeidsflytsstoder",
"translate-dynagroup-recent-label": "Nylege omsetjingar",
- "translate-dynagroup-by": "Sett om av {{GENDER:$1|$1}}",
- "translate-dynagroup-byc": "Sett om av {{GENDER:$1|$1}} ($2)",
- "translate-dynagroup-last": "Siste endringa av {{GENDER:$1|$1}}",
- "translate-dynagroup-lastc": "Siste endringa av {{GENDER:$1|$1}} ($2)",
- "translate-gethelp": "Hjelp",
+ "translate-dynagroup-recent-desc": "Denne meldingsgruppa viser alle nylege omsetjingar til dette språket.\nHo er mest nyttig for korrekturlesing.",
"translate-msggroupselector-projects": "Meldingsgruppe",
"translate-msggroupselector-search-placeholder": "Søk etter grupper",
"translate-msggroupselector-search-all": "Alle",
@@ -295,6 +271,7 @@
"tux-status-saving": "Lagrar …",
"tux-status-unsaved": "Ulagra",
"tux-editor-placeholder": "Omsetjinga di",
+ "tux-editor-editsummary-placeholder": "Valfritt samandrag",
"tux-editor-paste-original-button-label": "Lim inn kjeldetekst",
"tux-editor-discard-changes-button-label": "Sjå bort frå endringar",
"tux-editor-save-button-label": "Lagra omsetjing",
@@ -355,8 +332,10 @@
"tux-editor-close-tooltip": "Lat att",
"tux-editor-expand-tooltip": "Vid ut",
"tux-editor-collapse-tooltip": "Slå saman.",
+ "tux-editor-message-tools-show-editor": "Vis i wiki-tekstendraren",
"tux-editor-message-tools-history": "Historikk",
"tux-editor-message-tools-translations": "Alle omsetjingar",
+ "tux-editor-message-tools-linktothis": "Lenkje til denne meldinga",
"tux-editor-loading": "Lastar …",
"translate-search-more-languages-info": "$1 {{PLURAL:$1|språk}} til",
"translate-statsbar-tooltip": "$1% omsett, $2% vurdert",
diff --git a/MLEB/Translate/i18n/core/oc.json b/MLEB/Translate/i18n/core/oc.json
index a715648e..4d7a7100 100644
--- a/MLEB/Translate/i18n/core/oc.json
+++ b/MLEB/Translate/i18n/core/oc.json
@@ -3,25 +3,22 @@
"authors": [
"Cedric31",
"ChrisPtDe",
- "Shirayuki"
+ "Shirayuki",
+ "Jfblanc"
]
},
- "translate": "Tradusir",
- "translate-desc": "[[Special:Translate|Pagina especiala]] per tradusir MediaWiki e quitament mai encara.",
- "translate-taskui-view": "Afichar totes los messatges",
- "translate-taskui-untranslated": "Afichar los messatges pas traduches",
- "translate-taskui-optional": "Afichar los messatges facultatius",
- "translate-taskui-acceptqueue": "Unicament los messatges que pòdi marcar coma relegits",
- "translate-taskui-reviewall": "Repassar totas las traduccions",
+ "translate": "Traduire",
+ "translate-extensionname": "Traduire",
+ "translate-desc": "[[Special:Translate|Pagina especiala]] per traduire MediaWiki e quitament mai encara.",
"translate-taskui-export-to-file": "Exportar al format natiu",
"translate-taskui-export-as-po": "Exportar per una traduccion fòra linha",
- "translate-taction-translate": "Tradusir",
+ "translate-taction-translate": "Traduire",
"translate-taction-proofread": "Relectura",
"translate-taction-lstats": "Estatisticas de lenga",
"translate-taction-mstats": "Estatisticas de grop de messatges",
"translate-taction-export": "Exportar",
"translate-taction-disabled": "Aquesta accion es desactivada sus aqueste wiki.",
- "translate-page-no-such-language": "Un còde de lengatge invalid es estat indicat",
+ "translate-page-no-such-language": "Un còdi de lengatge invalid es estat indicat",
"translate-page-no-such-group": "Lo grop especificat es invalid.",
"translate-page-disabled": "Las traduccions dins aquesta lenga dins aqueste grop son estadas desactivadas. Motiu :\n\n<em>$1</em>",
"translate-language-disabled": "La traduccion dins aquesta lenga es desactivada.",
@@ -35,36 +32,39 @@
"translate-page-showing": "Visualizacion dels messatges de $1 a $2 sus $3.",
"translate-page-showing-all": "Visualizacion {{PLURAL:$1|d'$1 messatge|de $1 messatges}}.",
"translate-page-showing-none": "Cap de messatge de visualizar.",
+ "translate-page-paging-links": "[ $1 ] [ $2 ]",
"translate-next": "Pagina seguenta",
"translate-prev": "Pagina precedenta",
"translate-page-description-legend": "Entresenha a prepaus del grop",
- "translate-page-description-hasoptional": "Aqueste grop de messatges conten los messatges facultatius.\nLos messatges facultatius deurián pas èsser traduches que quand vòstra lenga a d'exigéncias particularas\ncoma d'utilizar pas d'espacis o de transformar de noms pròpris. $1",
+ "translate-page-description-hasoptional": "Aqueste grop de messatges conten los messatges facultatius.\nLos messatges facultatius deurián pas èsser traduits que quand vòstra lenga a d'exigéncias particularas\ncoma d'utilizar pas d'espacis o de transformar de noms pròpris. $1",
"translate-page-description-hasoptional-open": "Afichar los messatges facultatius",
"translate-page-edit": "modificar",
- "translate-ext-url": "<hr />Site web : $1",
"translate-optional": "(opcional)",
"translate-ignored": "(ignorat)",
"translate-edit-title": "Modificar « $1 »",
"translate-edit-definition": "Definicion del messatge",
"translate-edit-translation": "Traduccion",
"translate-edit-contribute": "contribuir",
- "translate-edit-no-information": "Actualament, aqueste messatge es pas documentat. Se sabètz ont o cossí aqueste messatge es utilizat, podètz ajudar los autres traductors en documentant aqueste messatge.",
+ "translate-edit-no-information": "<em>Aqueste messatge es pas documentat.\nSe sabètz ont o cossí aqueste messatge es utilizat, podètz ajudar los autres traductors en creant sa documentacion.</em>",
"translate-edit-information": "Entresenhas a prepaus del messatge ($1)",
"translate-edit-in-other-languages": "Messatge dins d'autras lengas",
- "translate-edit-committed": "Traduccions actualas ja dins lo logicial",
"translate-edit-warnings": "Avertiments que concernisson las traduccions incompletas",
- "translate-edit-tmsugs": "Suggestions de la memòria de traduccion",
"translate-edit-tmmatch-source": "Tèxte font de la traduccion : $1",
"translate-edit-tmmatch": "$1 % de correspondéncia",
"translate-use-suggestion": "Remplaçar la traduccion actuala per aquesta suggestion.",
- "translate-edit-nopermission": "Vos cal obténer los dreches de traduccion per tradusir los messatges.",
+ "translate-edit-nopermission": "Vos cal obténer los dreits de traduccion per traduire los messatges.",
"translate-edit-askpermission": "Obténer la permission",
+ "exporttranslations": "Exportar de traduccions",
+ "translate-export-form-format": "Format",
+ "translate-export-invalid-format": "Provesissètz un format valid.",
+ "translate-export-not-supported": "L’exportacion de traduccions es pas presa en carga.",
+ "translate-export-format-notsupported": "Lo format d’exportacion especificat es pas pres en carga pel grop de messatges.",
"translate-magic-pagename": "Traduccion de MediaWiki espandida",
- "translate-magic-help": "Podètz tradusir los aliasses de paginas especialas, los mots magics, e los noms d'espacis de noms.\n\nLos aliasses de paginas especialas e los mots magics pòdon aver mantuna traduccion.\nLas traduccions son separadas per una virgula (,).\nLos espacis de noms pòdon pas aver qu'una traduccion.\n\nTradusir l'espaci de noms de dicussion del projècte, <code>$1 talk</code> pòt èsser complicat.\n<code>$1</code> es remplaçat pel nom del site (per exemple <code>{{ns:project_talk}}</code>).\nS'es pas possible d'obténer una expression valida dins vòstra lenga sens cambiar lo nom del site, contactatz un desvolopaire sus [[Support]]..\n\nVos cal aparténer al grop dels traductors per enregistrar los cambiaments.\nLos cambiaments seràn pas enregistrats tant qu'auretz pas clicat sul boton « enregistrar » aval.",
+ "translate-magic-help": "Podètz traduire los aliasses de paginas especialas, los mots magics, e los noms d'espacis de noms.\n\nLos aliasses de paginas especialas e los mots magics pòdon aver mantuna traduccion.\nLas traduccions son separadas per una virgula (,).\nLos espacis de noms pòdon pas aver qu'una traduccion.\n\nTraduire l'espaci de noms de dicussion del projècte, <code>$1 talk</code> pòt èsser complicat.\n<code>$1</code> es remplaçat pel nom del site (per exemple <code>{{ns:project_talk}}</code>).\nS'es pas possible d'obténer una expression valida dins vòstra lenga sens cambiar lo nom del site, contactatz un desvolopaire sus [[Support]]..\n\nVos cal aparténer al grop dels traductors per enregistrar los cambiaments.\nLos cambiaments seràn pas enregistrats tant qu'auretz pas clicat sul boton « enregistrar » aval.",
"translate-magic-module": "Modul :",
"translate-magic-submit": "Anar",
"translate-magic-cm-export": "Exportar",
- "translate-magic-nothing-to-export": "I a pas res d'exportar",
+ "translate-magic-nothing-to-export": "I a pas res a exportar",
"translate-magic-cm-to-be": "Desven",
"translate-magic-cm-current": "Actual",
"translate-magic-cm-original": "Original",
@@ -77,7 +77,7 @@
"translate-magic-namespace": "Intitolat dels espacis de nomenatge",
"translate-magic-notsaved": "Vòstra modificacion es pas estada salvada !",
"translate-magic-errors": "Corregissètz {{PLURAL:$1|l'error seguenta|las errors seguentas}} dins las traduccions :",
- "translate-magic-saved": "Vòstra modificacion es estada salvada amb succès.",
+ "translate-magic-saved": "Vòstras modificacions son estadas enregistradas.",
"translate-checks-parameters": "{{PLURAL:$2|Lo paramètre seguent es pas utilizat|Los paramètres seguents son pas utilizats}} : <strong><nowiki>$1</nowiki></strong>",
"translate-checks-parameters-unknown": "{{PLURAL:$2|Lo paramètre seguent es desconegut|Los paramètres seguents son desconeguts}} : <strong><nowiki>$1</nowiki></strong>",
"translate-checks-balance": "I a un nombre impar de {{PLURAL:$2|parentèsis|parentèsis}} : <strong><nowiki>$1</nowiki></strong>",
@@ -86,7 +86,7 @@
"translate-checks-xhtml": "Sètz convidat(ada) a corregir {{PLURAL:$2|la balisa seguenta|las balisas seguentas}} : <strong><nowiki>$1</nowiki></strong>",
"translate-checks-plural": "La definicion utiliza <nowiki>{{PLURAL:}}</nowiki> mas pas la traduccion",
"translate-checks-plural-forms": "<nowiki>{{PLURAL:}}</nowiki> a recebut {{PLURAL:$1|una forma|$1 formas}} mas {{PLURAL:$2|una sola es suportada|solas $2 son suportadas}} (fòra las formas 0= e 1=).",
- "translate-checks-plural-dupe": "<nowiki>{{PLURAL:}}</nowiki> a de formas duplicadas al final. <nowiki>{{PLURAL:$1|sheep|sheep}}</nowiki> deuriá èsser escrich atal : <nowiki>{{PLURAL:$1|sheep}}</nowiki>.",
+ "translate-checks-plural-dupe": "<nowiki>{{PLURAL:}}</nowiki> a de formas duplicadas al final. <nowiki>{{PLURAL:$1|sheep|sheep}}</nowiki> deuriá èsser escrit atal : <nowiki>{{PLURAL:$1|sheep}}</nowiki>.",
"translate-checks-pagename": "Nom d’espaci modificat dempuèi la definicion",
"translate-checks-format": "Aquesta traduccion seguís pas la definicion o a una sintaxi invalida : $1",
"translate-checks-escape": "Los escapaments seguents pòdon èsser accidentals : <strong>$1</strong>",
@@ -96,19 +96,28 @@
"translate-pref-nonewsletter": "Me mandetz pas la letra d’informacion per corrièr",
"translate-pref-editassistlang": "Assistent de lengas :",
"prefs-translate": "Opcions de traduccion",
- "translate-pref-editassistlang-help": "Una virgulas a separat una lista de còde lenga.\nLa traduccion d’un messatge dins aquelas lengas es afichada quand sètz a tradusir.\nLa lista per defaut de las lengas varia en foncion de vòstra lenga.",
- "translate-pref-editassistlang-bad": "Còde lenga invalid dins la lista :\n<nowiki>$1</nowiki>.",
+ "translate-pref-editassistlang-help": "Una virgulas a separat una lista de còdi lenga.\nLa traduccion d’un messatge dins aquelas lengas es afichada quand sètz a traduire.\nLa lista per defaut de las lengas varia en foncion de vòstra lenga.",
+ "translate-pref-editassistlang-bad": "Còdi lenga invalid dins la lista :\n<nowiki>$1</nowiki>.",
"right-translate": "Modificar en utilizant l'interfàcia de traduccion",
"right-translate-manage": "Gerir los gropes de messatge",
"action-translate-manage": "gerir los gropes de messatges",
"right-translate-import": "Importar las traduccions fòra linha",
"action-translate-import": "importar las traduccions fòra linha",
"right-translate-messagereview": "Examinar las traduccions",
+ "action-translate-messagereview": "repassar las traduccions",
"right-translate-groupreview": "Modificar l'estat de flux de trabalh dels gropes de messatge",
+ "action-translate-groupreview": "modificar l'estat del flux de trabalh pels gropes de messatges",
+ "translate-rcfilters-translations": "Traduccions",
+ "translate-rcfilters-translations-only-label": "Traduccions",
+ "translate-rcfilters-translations-only-desc": "Cambiaments a las paginas traduitas.",
+ "translate-rcfilters-translations-filter-label": "Pas traduits",
+ "translate-rcfilters-translations-filter-desc": "Totes los cambiaments que son pas de traduccions.",
+ "translate-rcfilters-translations-site-label": "Messatges del sistèma",
+ "translate-rcfilters-translations-site-desc": "Adaptacion dels messatges del sistèma dins l'espaci de noms MediaWiki.",
"translate-rc-translation-filter": "Filtrar las traduccions :",
"translate-rc-translation-filter-no": "Far pas res",
"translate-rc-translation-filter-only": "Afichar unicament las traduccions",
- "translate-rc-translation-filter-filter": "Eliminar las traduccions",
+ "translate-rc-translation-filter-filter": "Exclure las traduccions",
"translate-rc-translation-filter-site": "Solament los cambiaments de messatges del site",
"translationstats": "Estatisticas de traduccion",
"translate-stats-edits": "Edicions",
@@ -133,10 +142,9 @@
"translate-statsf-count-registrations": "Utilizaires novèls",
"translate-statsf-count-reviews": "Relecturas de traduccion",
"translate-statsf-count-reviewers": "Relectors",
- "translate-statsf-language": "Lista de còdes de lengas, separats per de virgulas :",
- "translate-statsf-group": "Lista de còdes de gropes, separats per de virgulas :",
+ "translate-statsf-language": "Lista de còdis de lengas, separats per de virgulas :",
+ "translate-statsf-group": "Lista de còdis de gropes, separats per de virgulas :",
"translate-statsf-submit": "Previsualizar",
- "translate-tag-category": "Paginas tradusiblas",
"translate-tag-page-desc": "Traduccion de la pagina wiki [[$2|$1]] dempuèi $3 ($4).",
"translate-sidebar-alltrans": "Dins las autras lengas",
"translations": "Totas las traduccions",
@@ -151,33 +159,53 @@
"translate-translations-history-short": "h",
"languagestats": "Estatisticas de lenga",
"languagestats-summary": "Aquesta pagina aficha las estatisticas de traduccion per totes los gropes de messatges per una lenga.",
+ "messagegroupstats-summary": "Aquesta pagina aficha las estatisticas de grop de messatges.",
"languagestats-stats-for": "Estatisticas de traduccion per $1 ($2).",
"languagestats-recenttranslations": "traduccions recentas",
+ "translate-langstats-incomplete": "Qualques unas de las estatisticas d'aquela pagina son incompletas. Recargatz-la per n'obténer mai.",
"translate-langstats-expand": "Desvolopar",
"translate-langstats-collapse": "Replegar",
"translate-langstats-expandall": "Desvolopar tot",
"translate-langstats-collapseall": "Replegar tot",
- "translate-language-code": "Còde de lenga",
- "translate-language-code-field-name": "Còde de lenga :",
- "translate-suppress-complete": "Suprimir los gropes de messatges tradusits completament",
- "translate-ls-noempty": "Suprimir los gropes de messatges pas tradusits completament",
+ "translate-language-code": "Còdi de lenga",
+ "translate-language-code-field-name": "Còdi de lenga :",
+ "translate-suppress-complete": "Suprimir los gropes de messatges traduits completament",
+ "translate-ls-noempty": "Suprimir los gropes de messatges pas traduits completament",
"translate-language": "Lenga :",
"translate-total": "Messatges",
- "translate-untranslated": "Pas traduches",
+ "translate-untranslated": "Pas traduits",
"translate-percentage-complete": "Acabament",
"translate-percentage-fuzzy": "Depassats",
+ "translate-languagestats-overall": "Totes los gropes de messatges ensemble",
"translate-ls-submit": "Afichar las estatisticas",
"translate-ls-column-group": "Grop de messatges",
+ "translate-mgs-pagename": "Estatisticas del grop de messatges",
"translate-mgs-fieldset": "Afichar las preferéncias",
"translate-mgs-group": "Grop de messatges :",
+ "translate-mgs-nocomplete": "Afichar pas las lengas qu'an acabat lor traduccion",
+ "translate-mgs-noempty": "Afichar pas las lengas qu’an pas cap de traduccion",
"translate-mgs-submit": "Afichar las estatisticas",
"translate-mgs-column-language": "Lenga",
- "translate-mgs-totals": "Totas las lengas ensemble",
+ "translate-mgs-totals": "$1 {{PLURAL:$1|lenga|lengas}} al total",
+ "translate-mgs-invalid-group": "Lo grop especificat «$1» existís pas.",
+ "translate-mgs-nothing": "Res a afichar per las estatisticas demandadas.",
"supportedlanguages": "Lengas presas en carga",
+ "supportedlanguages-colorlegend": "Legenda per la color: Darrièra traduccion i a $1 jorns.",
+ "supportedlanguages-portallink": "[$1] $2 - $3",
+ "supportedlanguages-portallink-nocldr": "[$1] $2",
"supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|Traductor|Traductritz}}|Traductors}} : $1",
"supportedlanguages-recenttranslations": "traduccions recentas",
+ "supportedlanguages-count": "$1 {{PLURAL:$1|lenga|lengas}} al total.",
+ "supportedlanguages-activity": "$1 : $2 modificacion{{PLURAL:$2||s}} - Darrièra modificacion i a $3 jorn{{PLURAL:$3||s}}",
+ "abusefilter-edit-builder-vars-translate-source-text": "Tèxte font de l'unitat de traduccion",
"translate-save": "Publicar ($1)",
"translate-jssti-add": "Apondre a la lista",
+ "managemessagegroups": "Gestion del grop de messatges",
+ "translate-smg-notallowed": "Sètz pas autorizat a efectuar aquesta accion.",
+ "translate-smg-nochanges": "I a pas cap de cambiament a tractar.",
+ "translate-smg-submit": "Sometre las modificacions per tractament",
+ "translate-smg-left": "Contengut del messatge dins lo wiki",
+ "translate-smg-right": "Modificacions en cors de transferiment",
"translate-manage-import-diff": "Messatge $1 | Accions : $2",
"translate-manage-import-new": "Messatge novèl $1",
"translate-manage-import-deleted": "Messatge suprimit $1",
@@ -191,7 +219,6 @@
"translate-manage-toolong": "La durada maximala del temps de tractament de $1 segonda{{PLURAL:$1||s}} es estat depassat.\nRenviatz lo formulari per contuhar lo tractament.",
"translate-manage-import-summary": "Importacion d'una version novèla dempuèi una font extèrna.",
"translate-manage-conflict-summary": "Importacion d'una version novèla dempuèi una font extèrna. Verificatz se vos plai.",
- "translate-manage-fuzzy-summary": "La definicion del messatge a cambiat",
"translate-manage-submit": "Executar",
"translate-manage-intro-other": "Çaijós figura una lista de las modificacions dins la lenga $1.\nTornatz veire las modificacions e causissètz una accion d'efectuar per caduna.\nSe decidissètz d'ignorar las modificacions, aquesta accion serà pas que temporària.",
"translate-manage-import-ok": "Importat : $1",
@@ -200,21 +227,22 @@
"translate-import-from-local": "Importar un fichièr local :",
"translate-import-load": "Cargar lo fichièr",
"translate-import-err-dl-failed": "Impossible d'accedir al fichièr :\n$1",
- "translate-import-err-ul-failed": "Lo telecargament del fichièr a pas capitat",
+ "translate-import-err-ul-failed": "Lo telecargament del fichièr a fracassat",
"translate-import-err-invalid-title": "Lo nom del fichièr provesit <nowiki>$1</nowiki> es invalid.",
"translate-import-err-no-such-file": "Lo fichièr <nowiki>$1</nowiki> existís pas o es pas importat localament.",
+ "translate-import-err-stale-group": "Lo grop de messatges qu'aquel fichièr i aperten existís pas.",
"translate-import-err-no-headers": "Lo fichièr es pas un fichièr ''Gettext'' plan format dins lo format esperat per l’extension ''Translate'' :\nes impossible de determinar lo grop e la lenga dempuèi las entèstas del fichièr.",
"translate-import-err-warnings": "Lo fichièr es pas format coma cal.\nAsseguratz-vos que vòstra aisina de traduccion suprimís pas los camps « msgctxt ».\nDetalhs : $1",
"translate-js-summary": "Resumit :",
"translate-js-save": "Enregistrar",
"translate-js-next": "Salvar e dobrir lo seguent",
- "translate-js-nonext": "Èra lo darrièr messatge d'aquesta pagina.",
"translate-js-skip": "Anar al seguent",
- "translate-js-save-failed": "L'enregistrament a fracassat. Senhalatz aquela error.",
"translate-js-history": "Istoric de traduccion",
"translate-js-support": "Pausar una question",
+ "translate-js-support-title": "Demandatz d'ajuda se trobatz que i a pas pro d'informacions per tradusir corrèctament aquel messatge.",
+ "translate-js-support-unsaved-warning": "Avètz de traduccions pas enregistradas.",
"translate-gs-pos": "Pos.",
- "translate-gs-code": "Còde",
+ "translate-gs-code": "Còdi",
"translate-gs-continent": "Continent",
"translate-gs-speakers": "Locutors",
"translate-gs-score": "Marca",
@@ -225,42 +253,58 @@
"translate-documentation-language": "Documentacion del messatge",
"translate-searchprofile": "Traduccions",
"translate-searchprofile-tooltip": "Recercar dins totas las traduccions",
+ "translate-searchprofile-note": "Mai d'opcions de recèrca disponiblas amb la [$1 recèrca de traduccions].",
"translate-search-languagefilter": "Filtrar per lenga :",
"translate-search-nofilter": "Pas cap de filtratge",
- "translate-messagereview-submit": "Marcar coma relegit",
- "translate-messagereview-progress": "En cors de marcatge coma relegit...",
- "translate-messagereview-failure": "Fracàs del marcatge coma relegit : $1",
- "translate-messagereview-done": "Relegit",
- "translate-messagereview-reviews": "Relegit per {{PLURAL:$1| un utilizaire| $1 utilizaires}}",
- "translate-messagereview-reviewswithyou": "Relegit per {{PLURAL:$1|vos|$1 utilizaires, vos inclús}}",
+ "log-name-translationreview": "Jornal de relectura de las traduccions",
+ "log-description-translationreview": "Jornal de totas las relecturas de las traduccions e dels gropes de messatge.",
+ "logentry-translationreview-message": "$1 {{GENDER:$2|a repassat}} la traduccion $3",
+ "logentry-translationreview-group": "$1 {{GENDER:$2|a modificat}} l’estat de las traduccions $4 de $3 de $6 a $7",
+ "group-translate-sandboxed": "Traduccions pas aprovadas",
+ "group-translate-sandboxed-member": "{{GENDER:$1|traductor pas aprovat|traductritz pas aprovada}}",
+ "right-translate-sandboxmanage": "Gerir los utilizaires limitats al nauc de sabla",
+ "action-translate-sandboxmanage": "gerir los utilizaires limitats al nauc de sabla",
+ "right-translate-sandboxaction": "Executar d'accions sus lista blanca pels utilizaires pas enregistrats.",
+ "action-translate-sandboxaction": "executar d'accions sus lista blanca pels utilizaires pas enregistrats.",
"translate-workflow-state-": "(desactivat)",
"translate-workflowstatus": "Estatut: $1",
- "translate-workflow-set-do": "Activat",
"translate-workflow-set-doing": "Activacion...",
- "translate-workflow-set-done": "Activat !",
+ "translate-workflow-autocreated-summary": "Creacion automatica de la pagina per l'estat del flux de trabalh $1",
"translate-stats-workflow": "Estatut",
- "translate-dynagroup-recent-desc": "Aqueste grop de messatges fa veire totas las traduccions recentas fachas dins aquesta lenga.\nEs utilizat mai que mai pels prètzfaches de relectura.",
- "translate-gethelp": "Ajuda",
+ "translate-workflowgroup-label": "Estats dels fluxes de trabalh",
+ "translate-dynagroup-recent-label": "Traduccions recentas",
+ "translate-dynagroup-recent-desc": "Aqueste grop de messatges fa veire totas las traduccions recentas faitas dins aquesta lenga.\nEs utilizat mai que mai pels prètzfaits de relectura.",
+ "translate-dynagroup-additions-label": "Apondons recents",
+ "translate-dynagroup-additions-desc": "Aqueste grop de messages aficha los messatges novèls e modificats.",
"translate-msggroupselector-projects": "Grop de messatges",
"translate-msggroupselector-search-placeholder": "Recercar de gropes",
"translate-msggroupselector-search-all": "Totes",
"translate-msggroupselector-search-recent": "Recent",
- "tux-languageselector": "Tradusir en",
+ "translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|sosprojècte|sosprojèctes}}",
+ "tux-languageselector": "Traduire en",
"tux-tab-all": "Totes",
- "tux-tab-untranslated": "Pas tradusit",
- "tux-tab-outdated": "Obsolet",
- "tux-tab-translated": "Tradusit",
+ "tux-tab-untranslated": "Pas traduit",
+ "tux-tab-outdated": "Obsolèt",
+ "tux-tab-translated": "Traduit",
+ "tux-tab-unproofread": "Pas verificat",
"tux-edit": "Modificar",
"tux-status-optional": "Facultatiu",
- "tux-status-fuzzy": "Obsolet",
+ "tux-status-fuzzy": "Obsolèt",
"tux-status-proofread": "Corregit",
- "tux-status-translated": "Tradusit",
+ "tux-status-translated": "Traduit",
"tux-status-saving": "Enregistrament en cors…",
"tux-status-unsaved": "Pas enregistrada",
+ "tux-save-unknown-error": "Una error desconeguda s'es produita.",
"tux-editor-placeholder": "Vòstra traduccion",
+ "tux-editor-editsummary-placeholder": "Resumit opcional",
+ "tux-editor-paste-original-button-label": "Pegar lo tèxte font",
+ "tux-editor-discard-changes-button-label": "Anullar las modificacions",
"tux-editor-save-button-label": "Enregistrar la traduccion",
"tux-editor-skip-button-label": "Anar al seguent",
- "tux-editor-shortcut-info": "Quichatz sus « $1 » per enregistrar o « $2 » per passar al messatge seguent o « $3 » per d'autres acorchis.",
+ "tux-editor-cancel-button-label": "Anullar",
+ "tux-editor-confirm-button-label": "Confirmar la traduccion",
+ "tux-editor-proofread-button-label": "Marcar coma relegit",
+ "tux-editor-shortcut-info": "Quichatz sus « $1 » per enregistrar o « $2 » per passar al messatge seguent o « $4 » per provesir un resumit o « $3 » per d'autres acorchis.",
"tux-editor-edit-desc": "Modificar la documentacion",
"tux-editor-add-desc": "Apondre una documentacion",
"tux-editor-suggestions-title": "Suggestions",
@@ -271,18 +315,59 @@
"tux-warnings-more": "{{PLURAL:$1|$1 de mai}}",
"tux-warnings-hide": "amagar",
"tux-editor-save-failed": "Fracàs de l'enregistrament de la traduccion : $1",
+ "tux-editor-n-uses": "utilitzat $1 {{PLURAL:$1|còp|còps}}",
"tux-editor-message-desc-more": "Veire mai",
"tux-editor-message-desc-less": "Afichar mens",
"tux-editor-clear-translated": "Amagar la traduccion",
+ "tux-editor-proofreading-mode": "Repassar",
+ "tux-editor-translate-mode": "Lista",
+ "tux-editor-proofreading-hide-own-translations": "Amagar vòstras traduccions",
+ "tux-editor-proofreading-show-own-translations": "Afichar vòstras traduccions",
+ "tux-proofread-action-tooltip": "Marcar coma relegit",
+ "tux-proofread-edit-label": "Modificar",
+ "tux-editor-page-mode": "Pagina",
"tux-editor-outdated-warning": "Aquesta traduccion pòt necessitar una mesa a jorn.",
"tux-editor-outdated-warning-diff-link": "Afichar las diferéncias",
+ "tux-editor-doc-editor-placeholder": "Documentacion del messatge",
"tux-editor-doc-editor-save": "Enregistrar la documentacion",
"tux-editor-doc-editor-cancel": "Anullar",
"tux-messagetable-more-messages": "$1 {{PLURAL:$1|messatge|messatges}} mai",
"tux-messagetable-loading-messages": "Cargament {{PLURAL:$1|del messatge|dels messatges}}…",
+ "tux-message-filter-placeholder": "Filtrar la lista",
+ "tux-message-filter-result": "{{PLURAL:$1|0=Cap de resultat pas trobat|1=Un resultat trobat|$1 resultats trobats}} per « $2 »",
"tux-message-filter-advanced-button": "Recèrca avançada",
+ "tux-message-filter-optional-messages-label": "Messatges opcionals",
+ "tux-proofread-translated-by-self": "Tradusit per vos",
+ "tux-empty-list-all": "Aqueste grop de messatges es void",
+ "tux-empty-list-all-guide": "Seleccionar un grop de messatge diferent de traduire",
"tux-translate-page-no-such-group": "<strong>Lo grop indicat existís pas.</strong> Seleccionatz un autre grop de messatges.",
+ "tux-empty-list-translated": "Cap de messatge pas tradusit",
+ "tux-empty-list-translated-guide": "Podètz ajudar a traduire",
+ "tux-empty-list-translated-action": "Traduire",
+ "tux-empty-no-messages-to-display": "Pas cap de messatge d'afichar.",
+ "tux-empty-there-are-optional": "I a de messatges opcionals qu'apareisson pas dins la lista",
+ "tux-empty-show-optional-messages": "Afichar los messatges facultatius",
+ "tux-empty-no-outdated-messages": "I a pas de messatges desuets",
+ "tux-empty-nothing-to-proofread": "Pas res a repassar",
+ "tux-empty-you-can-help-providing": "Podètz ajudar en aportant de traduccions novèlas",
+ "tux-empty-nothing-new-to-proofread": "Res de nòu a repassar",
+ "tux-empty-you-can-review-already-proofread": "Podètz repassar las traduccions ja relegidas per d’autres.",
+ "tux-empty-list-other": "Pas res a traduire",
"tux-empty-list-other-guide": "Podètz ajudar a repassar las traduccions existentas",
"tux-empty-list-other-action": "Repassar las traduccions",
- "tux-empty-list-other-link": "Afichar totes los messatges"
+ "tux-empty-list-other-link": "Afichar totes los messatges",
+ "tux-editor-close-tooltip": "Tampar",
+ "tux-editor-expand-tooltip": "Desvolopar",
+ "tux-editor-collapse-tooltip": "Replegar",
+ "tux-editor-message-tools-show-editor": "Afichar dins l'editor wiki",
+ "tux-editor-message-tools-history": "Istoric",
+ "tux-editor-message-tools-delete": "Suprimir",
+ "tux-editor-message-tools-translations": "Totas las traduccions",
+ "tux-editor-message-tools-linktothis": "Ligam cap a aqueste messatge",
+ "tux-editor-loading": "Cargament en cors...",
+ "translate-search-more-languages-info": "$1 {{PLURAL:$1|lenga|lengas}} mai",
+ "translate-statsbar-tooltip": "$1% tradusit, $2% repassat",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% tradusit, $2% repassat, $3% desuet",
+ "translate-search-more-groups-info": "$1 grop{{PLURAL:$1||es}} mai",
+ "translate-ulsdep-title": "Error de configuracion"
}
diff --git a/MLEB/Translate/i18n/core/or.json b/MLEB/Translate/i18n/core/or.json
index db15cfa0..5fbc9b56 100644
--- a/MLEB/Translate/i18n/core/or.json
+++ b/MLEB/Translate/i18n/core/or.json
@@ -10,11 +10,6 @@
},
"translate": "ଅନୁବାଦ",
"translate-desc": "[[Special:Translate|ବିଶେଷ ପୃଷ୍ଠା]] ମିଡ଼ିଆଉଇକି ଓ ବାକିସବୁ ଅନୁବାଦ କରିବା ନିମନ୍ତେ ବିଶେଷ ପୃଷ୍ଠା",
- "translate-taskui-view": "ସମସ୍ତ ଛବି ଦେଖିବେ",
- "translate-taskui-untranslated": "ଅନୁବାଦ ହୋଇନଥିବା ମେସେଜସମୂହ ଦେଖାନ୍ତୁ",
- "translate-taskui-optional": "ବିକଳ୍ପ ମେସେଜସମୂହ ଦେଖାନ୍ତୁ",
- "translate-taskui-acceptqueue": "ମୁଁ ସମୀକ୍ଷା ସରିଛି ବୋଲି ବାଛିପାରୁଥିବା ମେସେଜସମୂହ",
- "translate-taskui-reviewall": "ସମସ୍ତ ଅନୁବାଦକୁ ଅବଲୋକନ କରିବେ",
"translate-taskui-export-to-file": "ମୂଳ ସଜାଣିକୁ ବ୍ଯବ‌ହାର କରିବେ",
"translate-taskui-export-as-po": "ଅଫ-ଲାଇନ ଅନୁବାଦ ବ୍ୟବ‌ହାର କରିବେ",
"translate-taction-translate": "ଅନୁବାଦ କରନ୍ତୁ",
@@ -42,7 +37,6 @@
"translate-page-description-legend": "ଏହି ସମୂହ ବାବଦରେ ସୂଚନା",
"translate-page-description-hasoptional-open": "ବିକଳ୍ପ ମେସେଜସମୂହ ଦେଖାନ୍ତୁ ।",
"translate-page-edit": "ଏହାକୁ ବଦଳାନ୍ତୁ",
- "translate-ext-url": "<hr />ୱେବସାଇଟ: $1",
"translate-optional": "(ଇଚ୍ଛାଧୀନ)",
"translate-ignored": "(ଏଡ଼ାଇଯାନ୍ତୁ)",
"translate-edit-title": "ବଦଳ \"$1\"",
@@ -51,9 +45,7 @@
"translate-edit-contribute": "ଅବଦାନ",
"translate-edit-information": "($1) ମେସେଜ ବାବଦରେ ସୂଚନା",
"translate-edit-in-other-languages": "ଅଲଗା ଭାଷାରେ ମେସେଜ",
- "translate-edit-committed": "ସଫ୍ଟ୍ୱାରରେ ଏବେକାର ଅନୁବାଦ",
"translate-edit-warnings": "ଅସମ୍ପୂର୍ଣ୍ଣ ଅନୁବାଦ ବାବଦରେ ଚେତାବନୀ",
- "translate-edit-tmsugs": "ଅନୁବାଦ ସ୍ମୃତି ଓ ମେସିନ ଅନୁବାଦରୁ ପରାମର୍ଶ",
"translate-edit-tmmatch-source": "ସୋର୍ସ ଟେକ୍ସଟରୁ ଅନୁବାଦ: $1",
"translate-edit-tmmatch": "$1% ମେଳ",
"translate-use-suggestion": "ଏହି ପରାମର୍ଶରୁ ଏବେକାର ଅନୁବାଦକୁ ବଦଳାଇଦିଅନ୍ତୁ ।",
@@ -79,7 +71,7 @@
"translate-magic-saved": "ଆପଣଙ୍କ ସମ୍ପାଦନା ସଫଳ ଭାବେ ସାଇତାଗଲା ।",
"translate-checks-parameters": "ଏହି {{PLURAL:$2|ପାରାମିଟର|ପାରାମିଟରମାନ}} ବ୍ୟ‌ବ‌ହାର ହୋଇନାହିଁ:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-parameters-unknown": "ଏହି {{PLURAL:$2|ପାରାମିଟର ଟି|ପାରାମିଟରମାନ}} ଅଜଣା:\n<strong><nowiki>$1</nowiki></strong>",
- "translate-checks-balance": "ଏଠାରେ ଥିବା {{PLURAL:$2|ପେରେନ୍ଥେସ|ପେରେନ୍ଥେସମାନ}}ଙ୍କ ସଙ୍ଖ୍ୟା ଜଣାନାହିଁ:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "ଏଠାରେ ଅସମ ସଂଖ୍ୟକ {{PLURAL:$2|ପେରେନ୍ଥେସ|ପେରେନ୍ଥେସସବୁ}} ରହିଛି:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-links": "ଏହି {{PLURAL:$2|ଲିଙ୍କଟି|$2 lଲିଙ୍କମାନ}} ଅସୁବିଧାଜନକ: <strong><nowiki>$1</nowiki></strong>",
"translate-pref-nonewsletter": "ମୋତେ ଇ-ମେଲ ନିଉଜଲେଟର ପଠାଇବେ ନାହିଁ",
"prefs-translate": "ଅନୁବାଦ ବିକଳ୍ପସବୁ",
@@ -119,8 +111,8 @@
"translate-save": "($1)କୁ ସାଇତିବେ",
"translate-jssti-add": "ତାଲିକାରେ ଯୋଡ଼ନ୍ତୁ",
"translate-manage-import-new": "ନୂଆ ସନ୍ଦେଶ $1",
- "translate-manage-action-import": "ଆମଦାନୀ",
- "translate-manage-action-conflict": "ଆମଦାନୀ ଓ ଫଜୀ",
+ "translate-manage-action-import": "ଆମଦାନି",
+ "translate-manage-action-conflict": "ଆମଦାନି ଓ ଫଜୀ",
"translate-import-load": "ଲୋଡ଼ ଫାଇଲ",
"translate-gs-code": "କୋଡ଼",
"translate-gs-score": "ଗଣନା",
diff --git a/MLEB/Translate/i18n/core/pa.json b/MLEB/Translate/i18n/core/pa.json
index 8f27e8cd..7ca90367 100644
--- a/MLEB/Translate/i18n/core/pa.json
+++ b/MLEB/Translate/i18n/core/pa.json
@@ -8,11 +8,6 @@
},
"translate": "ਤਰਜਮਾ ਕਰੋ",
"translate-desc": "ਮੀਡੀਆਵਿਕੀ ਅਤੇ ਹੋਰਾਂ ਦੇ ਅਨੁਵਾਦ ਲਈ [[Special:Translate|ਖ਼ਾਸ ਸਫ਼ਾ]]",
- "translate-taskui-view": "ਸਾਰੇ ਸੁਨੇਹੇ ਵਿਖਾਓ",
- "translate-taskui-untranslated": "ਬਿਨਾਂ ਤਰਜਮੇ ਵਾਲ਼ੇ ਸੁਨੇਹੇ ਵਿਖਾਉ",
- "translate-taskui-optional": "ਚੋਣਵੇਂ ਸੁਨੇਹੇ ਵਿਖਾਓ",
- "translate-taskui-acceptqueue": "ਸਿਰਫ਼ ਉਹ ਸੁਨੇਹੇ ਜਿਨ੍ਹਾਂ ਨੂੰ ਮੈਂ \"ਪਰਖਿਆ ਗਿਆ\" ਨੱਥੀ ਕਰ ਸਕਾਂ",
- "translate-taskui-reviewall": "ਸਾਰੇ ਤਰਜਮੇ ਪਰਖੋ",
"translate-taskui-export-to-file": "ਦੇਸੀ ਰੂਪ ਵਿਚ ਮੰਗਾਓ",
"translate-taskui-export-as-po": "ਆਫ਼-ਲਾਈਨ ਅਨੁਵਾਦ ਲਈ ਮੰਗਾਓ",
"translate-taction-translate": "ਤਰਜਮਾ ਕਰੋ",
@@ -24,7 +19,7 @@
"translate-page-no-such-language": "ਦੱਸੀ ਗਈ ਭਾਸ਼ਾ ਗ਼ਲਤ ਹੈ।",
"translate-page-no-such-group": "ਦੱਸਿਆ ਗਿਆ ਸਮੂਹ ਗ਼ਲਤ ਹੈ।",
"translate-page-disabled": "ਇਸ ਟੋਲੀ ਵਿਚ ਇਸ ਬੋਲੀ ਦੇ ਤਰਜਮੇ ਬੰਦ ਕਰ ਦਿੱਤੇ ਗਏ ਹਨ।\nਕਾਰਨ:\n\n<em>$1</em>",
- "translate-language-disabled": "ਇਸ ਭਾਸ਼ਾ ਵਿਚ ਅਨੁਵਾਦ ਬੰਦ ਹੈ।",
+ "translate-language-disabled": "ਇਸ ਭਾਸ਼ਾ ਵਿਚ ਤਰਜਮਾਕਾਰੀ ਬੰਦ ਹੈ।",
"translate-page-settings-legend": "ਸੈਟਿੰਗ",
"translate-page-group": "ਗਰੁੱਪ",
"translate-page-language": "ਭਾਸ਼ਾ",
@@ -40,7 +35,6 @@
"translate-page-description-legend": "ਇਸ ਟੋਲੀ ਬਾਰੇ ਜਾਣਕਾਰੀ",
"translate-page-description-hasoptional-open": "ਚੋਣਵੇਂ ਸੁਨੇਹੇ ਵਿਖਾਓ।",
"translate-page-edit": "ਸੋਧੋ",
- "translate-ext-url": "<hr />ਵੈੱਬਸਾਈਟ: $1",
"translate-optional": "(ਚੋਣਵਾਂ)",
"translate-ignored": "(ਅਣਡਿੱਠਾ)",
"translate-edit-title": "\"$1\" ਸੋਧੋ",
@@ -49,9 +43,7 @@
"translate-edit-contribute": "ਯੋਗਦਾਨ ਪਾਓ",
"translate-edit-information": "($1) ਸੁਨੇਹੇ ਬਾਬਤ ਜਾਣਕਾਰੀ",
"translate-edit-in-other-languages": "ਹੋਰ ਭਾਸ਼ਾਵਾਂ ਵਿਚ ਸੁਨੇਹਾ",
- "translate-edit-committed": "ਸਾਫ਼ਟਵੇਅਰ ਵਿਚ ਮੌਜੂਦਾ ਤਰਜਮਾ",
"translate-edit-warnings": "ਊਣੇ ਤਰਜਮਿਆਂ ਬਾਰੇ ਚਿਤਾਵਨੀ",
- "translate-edit-tmsugs": "ਤਰਜਮਾਈ ਯਾਦਦਾਸ਼ਤ ਅਤੇ ਮਸ਼ੀਨੀ ਤਰਜਮੇ ਵੱਲੋਂ ਸਲਾਹਾਂ",
"translate-edit-tmmatch-source": "ਅਨੁਵਾਦ ਦੀ ਸਰੋਤ ਲਿਖਤ:$1",
"translate-edit-tmmatch": "$1% ਮੇਲ",
"translate-use-suggestion": "ਮੌਜੂਦਾ ਤਰਜਮੇ ਦੀ ਥਾਂ ਇਹ ਸਲਾਹ ਲਿਆਉ",
@@ -94,7 +86,6 @@
"translate-statsf-count-reviews": "ਤਰਜਮਾਕਾਰੀ ਦੀਆਂ ਪਰਖਾਂ",
"translate-statsf-count-reviewers": "ਪਾਰਖੂ",
"translate-statsf-submit": "ਝਲਕ",
- "translate-tag-category": "ਉਲਥਾਯੋਗ ਸਫ਼ੇ",
"translate-sidebar-alltrans": "ਹੋਰ ਬੋਲੀਆਂ ਵਿੱਚ ਪੜ੍ਹੋ",
"translations": "ਸਾਰੇ ਤਰਜਮੇ",
"translate-translations-fieldset-title": "ਸੁਨੇਹਾ",
@@ -103,7 +94,7 @@
"translate-translations-history-short": "ਅ",
"languagestats": "ਭਾਸ਼ਾ ਅੰਕੜੇ",
"messagegroupstats-summary": "ਇਹ ਸਫ਼ਾ ਸੁਨੇਹਿਆਂ ਦੀ ਟੋਲੀ ਦੇ ਅੰਕੜੇ ਵਿਖਾਉਂਦਾ ਹੈ",
- "languagestats-stats-for": "$1 ($2) ਲਈ ਅਨੁਵਾਦ ਅੰਕੜੇ ਹਨ।",
+ "languagestats-stats-for": "$1 ($2) ਲਈ ਤਰਜਮਾਈ ਅੰਕੜੇ ਹਨ।",
"languagestats-recenttranslations": "ਹਾਲੀਆ ਤਰਜਮੇ",
"translate-langstats-expand": "ਫੈਲਾਓ",
"translate-langstats-collapse": "ਸਮੇਟੋ",
@@ -147,9 +138,7 @@
"translate-js-summary": "ਸਾਰ:",
"translate-js-save": "ਸੰਭਾਲੋ",
"translate-js-next": "ਸੰਭਾਲੋ ਤੇ ਅਗਲਾ ਖੋਲ੍ਹੋ",
- "translate-js-nonext": "ਇਹ ਇਸ ਸਫ਼ੇ ਉੱਤੇ ਆਖਰੀ ਸੁਨੇਹਾ ਸੀ।",
"translate-js-skip": "ਛੱਡ ਕੇ ਅੱਗੇ ਜਾਉ",
- "translate-js-save-failed": "ਸੰਭਾਲਣ ਲਈ ਫੇਲ੍ਹ। ਇਹ ਗਲਤੀ ਬਾਰੇ ਰਿਪੋਰਟ ਦਿਉ ਜੀ।",
"translate-js-history": "ਤਰਜਮਾਕਾਰੀ ਦਾ ਅਤੀਤ",
"translate-js-support": "ਸੁਆਲ ਪੁੱਛੋ",
"translate-js-support-unsaved-warning": "ਤੁਹਾਡੇ ਕੋਲ ਅਣ-ਸਾਂਭੇ ਤਰਜਮੇ ਹਨ।",
@@ -164,20 +153,11 @@
"translate-gs-avgscore": "ਔਸਤ ਸਕੋਰ",
"translate-documentation-language": "ਸੁਨੇਹਾ ਦਸਤਾਵੇਜ਼",
"translate-searchprofile": "ਤਰਜਮੇ",
- "translate-messagereview-submit": "ਪਰਖਿਆ ਹੋਇਆ ਵਜੋਂ ਨੱਥੀ ਕਰੋ",
- "translate-messagereview-progress": "ਪਰਖਿਆ ਹੋਇਆ ਵਜੋਂ ਨੱਥੀ ਹੋ ਰਿਹਾ ਹੈ...",
- "translate-messagereview-done": "ਪਰਖਿਆ ਗਿਆ",
- "api-error-invalidrevision": "ਤਰਜਮਾ ਨਹੀਂ ਲੱਭਾ",
- "api-error-unknownmessage": "ਸੁਨੇਹਾ ਨਹੀਂ ਲੱਭਾ",
- "api-error-owntranslation": "ਤੁਸੀਂ ਆਪਣੇ ਖ਼ੁਦ ਦੇ ਅਨੁਵਾਦ ਨੂੰ ਪਰਖਿਆ ਗਿਆ ਵਜੋਂ ਨੱਥੀ ਨਹੀਂ ਕਰ ਸਕਦੇ",
- "translate-messagereview-doit": "ਇਸ ਤਰਜਮੇ ਨੂੰ ਪਰਖੇ ਹੋਏ ਵਜੋਂ ਨਿਸ਼ਾਨਦੇਹ ਕਰੋ।",
"log-name-translationreview": "ਤਰਜਮਾਈ ਪਰਖਾਂ ਦਾ ਇੰਦਰਾਜ",
"log-description-translationreview": "ਸਾਰੇ ਅਨੁਵਾਦਾਂ ਅਤੇ ਸੁਨੇਹਾ ਸਮੂਹਾਂ ਦੀਆਂ ਪਰਖਾਂ ਦਾ ਇੰਦਰਾਜ",
"logentry-translationreview-message": "$1 ਨੇ ਅਨੁਵਾਦ $3 {{GENDER:$2|ਪਰਖਿਆ}}",
"translate-workflowstatus": "ਦਰਜਾ: $1",
- "translate-workflow-set-do": "ਸੈੱਟ ਕਰੋ",
"translate-workflow-set-doing": "ਸੈੱਟ ਹੋ ਰਿਹਾ ਹੈ...",
- "translate-workflow-set-done": "ਸੈੱਟ ਹੋ ਗਿਆ!",
"translate-stats-workflow": "ਦਰਜਾ",
"translate-msggroupselector-search-all": "ਸਭ",
"translate-msggroupselector-search-recent": "ਹਾਲੀਆ",
diff --git a/MLEB/Translate/i18n/core/pam.json b/MLEB/Translate/i18n/core/pam.json
index b709e37e..f5a2b1d8 100644
--- a/MLEB/Translate/i18n/core/pam.json
+++ b/MLEB/Translate/i18n/core/pam.json
@@ -9,6 +9,5 @@
"translate-magic-cm-savefailed": "↓Bigu ya ing pamanyikap",
"translate-rc-translation-filter-no": "↓Ala kang gagawan",
"translate-stats-users": "↓Talalikas",
- "translate-js-save": "↓Isikap",
- "translate-messagereview-submit": "↓Tanggapan"
+ "translate-js-save": "↓Isikap"
}
diff --git a/MLEB/Translate/i18n/core/pdc.json b/MLEB/Translate/i18n/core/pdc.json
index 55f17da6..7a9d6218 100644
--- a/MLEB/Translate/i18n/core/pdc.json
+++ b/MLEB/Translate/i18n/core/pdc.json
@@ -14,7 +14,6 @@
"translate-next": "neegschtes Blatt",
"translate-prev": "letscht Blatt",
"translate-page-edit": "ennere",
- "translate-ext-url": "<hr />Gewebb: $1",
"translate-edit-title": "„$1“ ennere",
"translate-edit-translation": "Iwwersetzing",
"translate-edit-in-other-languages": "Meldinge in annere Schprooche",
diff --git a/MLEB/Translate/i18n/core/pfl.json b/MLEB/Translate/i18n/core/pfl.json
index e7b8b3c2..6985e1f7 100644
--- a/MLEB/Translate/i18n/core/pfl.json
+++ b/MLEB/Translate/i18n/core/pfl.json
@@ -8,11 +8,6 @@
},
"translate": "Iwasedze",
"translate-desc": "[[Special:Translate|Schbezialsaid]] fas iwasedze vun MediaWiki un waidares",
- "translate-taskui-view": "Alli Nochrischde zaische",
- "translate-taskui-untranslated": "Ned iwasedzde Nochrischde zaische",
- "translate-taskui-optional": "Alli obzionali Nochrischde zaische",
- "translate-taskui-acceptqueue": "Bloß des zaische, wu isch a oivaschdone soi kend",
- "translate-taskui-reviewall": "Alli Iwasedzunge iwabriefe",
"translate-taskui-export-to-file": "Gebs im aischene Foamad aus",
"translate-taskui-export-as-po": "Fa ä Offline-Iwasedzung ausgewe",
"translate-taction-translate": "Iwasedze",
@@ -40,7 +35,6 @@
"translate-page-description-hasoptional": "Die Nochrischdegrubb hod obzionali Nochrischde.\nObzionali Nochrischde deedn awa bessa bloß iwasedz werre, wonns inde Schbrooch dodvoa ä Bedirfnis hot\nwie kä Leazaische zu bnudze oda Aischenoame zu umschraiwe. $1",
"translate-page-description-hasoptional-open": "Obzionali Nochrischde zaische",
"translate-page-edit": "bearwaide",
- "translate-ext-url": "<hr />Websaid: $1",
"translate-optional": "(uff Wunsch)",
"translate-ignored": "(ignoriead)",
"translate-edit-title": "„$1“ bearwaide",
@@ -50,9 +44,7 @@
"translate-edit-no-information": "''Fa die Nochrischd hods kä Unalaache.''\n''Wonn driwwa was wisse duschd, konschd de onare baide Erwed helfe, wonnen saache duschd, worums do gehd.''",
"translate-edit-information": "Auskinfd iwa die Nochrischd ($1)",
"translate-edit-in-other-languages": "Nochrischd in onare Schbrooche",
- "translate-edit-committed": "Deazaidischi Iwasedzung",
"translate-edit-warnings": "Waanung iwa mongelhafde Iwasedzunge",
- "translate-edit-tmsugs": "Voaschleesch ausm Iwasedzungsschbaischa",
"translate-edit-tmmatch-source": "Qwelltegsch vunde Iwasedzung: $1",
"translate-edit-tmmatch": "$1 % Iwaoischdimmung",
"translate-use-suggestion": "Iwasedzung duaschn Voaschlach easedze.",
@@ -133,7 +125,6 @@
"translate-statsf-language": "Komma gdrenndi Lischd vun Schboochcode:",
"translate-statsf-group": "Komma gdrenndi Lischd vun Grubbecode:",
"translate-statsf-submit": "Voaschau",
- "translate-tag-category": "Iwasedzdi Saide",
"translate-tag-page-desc": "Iwasedzung vunde Wikisaid [[$2|$1]].",
"translate-sidebar-alltrans": "In oanare Schbrooche",
"translations": "All Iwasedzunge",
@@ -204,7 +195,6 @@
"translate-manage-toolong": "Die maximale Va'awaidungszaid vun $1 {{PLURAL:$1|Sekund|Sekunde}} isch abgloffe.\nSchiggs Foamula nomol ab, ums foadsedze zu kenne.",
"translate-manage-import-summary": "Naiji Ausgab vunea Qwell nufflaade",
"translate-manage-conflict-summary": "Naiji Ausgab isch vunea Qwell nuffglaade worr.\nIwabriefs bidde.",
- "translate-manage-fuzzy-summary": "Die Feschdleschung vunde Nochrischde hodsisch g'änad",
"translate-manage-import-done": "Alles erledischd!",
"importtranslations": "Iwasedzunge roihole",
"translate-import-from-local": "Dadai do nufflaade:",
@@ -219,9 +209,7 @@
"translate-js-summary": "Zommefassung:",
"translate-js-save": "Schbaischare",
"translate-js-next": "Schbaischare unde negschd effne",
- "translate-js-nonext": "Des isch die ledschd Nochrischd ufde Said gwesd.",
"translate-js-skip": "Waida zum negschde",
- "translate-js-save-failed": "S'Schbaischare isch ned gonge. Meld bidde de Fehla.",
"translate-js-history": "Iwasedzungsgschischd",
"translate-js-support": "Frooch",
"translate-js-support-title": "Froch noch Hilf, woans ned gnischnd Auskinfd hod, um die Nochrischd rischdisch iwasedze zu kenne.",
@@ -240,37 +228,16 @@
"translate-searchprofile-tooltip": "In alle Iwasedzunge suche",
"translate-search-languagefilter": "Noch Schbrooche fildare:",
"translate-search-nofilter": "Alli Schbrooche",
- "translate-messagereview-submit": "Zuschdimme",
- "translate-messagereview-progress": "Schdimm zu …",
- "translate-messagereview-failure": "Zuschdimmung … gschaidad: $1",
- "translate-messagereview-done": "Zugschdimmd",
- "translate-messagereview-reviews": "Zuschdimmung vun {{PLURAL:$1|äm Benudza|$1 Benudza}}",
- "translate-messagereview-reviewswithyou": "Zuschdimmung vun {{PLURAL:$1|äm Benudza|$1 Benudza}}, oinschließlisch vun dir",
- "api-error-invalidrevision": "Kä Iwasedzung gfunne worre",
- "api-error-unknownmessage": "Kä Nochrischd gfunne worre.",
- "api-error-fuzzymessage": "Die Iwasedzung isch nemme agduell",
- "api-error-owntranslation": "Doi aischini Iwasedzunge konschd ned agzebdiere.",
- "translate-messagereview-no-fuzzy": "Va'aldede Iwasedsedzunge kennen ned agzebdiad werre.",
- "translate-messagereview-no-own": "Doi aischini Iwasedzunge konschd ned agzebdiere.",
- "translate-messagereview-doit": "Die Iwasedzung als rischdisch agzebdiere.",
"log-name-translationreview": "Iwasedzungs-Iwabligg-Logbuch",
"log-description-translationreview": "Logbuch fa alli Iwabriefunge vun Iwasedzunge und Nochrischdegrubbe.",
"logentry-translationreview-message": "$1 {{GENDER:$2|hod}} die Iwasedzung $3 iwabrifd",
"translate-workflow-state-": "(ned gsedzd)",
"translate-workflowstatus": "Zuschdond: $1",
- "translate-workflow-set-do": "Oischdelle",
"translate-workflow-set-doing": "Werd oigschdelld...",
- "translate-workflow-set-done": "Oigschdelld!",
- "translate-workflow-set-error-alreadyset": "De oagfoadade un gescheweadische Zuschdoand sin glaisch.",
"translate-workflow-autocreated-summary": "Selbschdendischi Easchaffung vunde Said fa Awaidsschridd-Zuschdond $1",
"translate-stats-workflow": "Zuschdond",
"translate-workflowgroup-label": "Awaidsschridd-Zuschdond",
"translate-workflowgroup-desc": "Die Nochrischdegrubb zaischde Zuschdoand zum Schaffnsflus baide Iwasedzunge.\nDe Zuschdoand wead iwa die Oischdellunge <code lang=\"en\">$wgTranslateWorkflowStates</code> oagbassd.",
"translate-dynagroup-recent-label": "Jingschdi Iwasedzunge",
- "translate-dynagroup-recent-desc": "Die Nochrischdegrubb zaischd alli geschewerdische Iwasedzunge inde Sbrooch oa.\nOam Beschde ischse fa Uffgawe vum Gescheleese.",
- "translate-dynagroup-by": "Iwasedzung vun {{GENDER:$1|$1}}",
- "translate-dynagroup-byc": "Iwasedzung vun {{GENDER:$1|$1}} ($2)",
- "translate-dynagroup-last": "Ledschdi Änarung vun {{GENDER:$1|$1}}",
- "translate-dynagroup-lastc": "Ledschdi Änarung vun {{GENDER:$1|$1}} ($2)",
- "translate-gethelp": "Hilf"
+ "translate-dynagroup-recent-desc": "Die Nochrischdegrubb zaischd alli geschewerdische Iwasedzunge inde Sbrooch oa.\nOam Beschde ischse fa Uffgawe vum Gescheleese."
}
diff --git a/MLEB/Translate/i18n/core/pl.json b/MLEB/Translate/i18n/core/pl.json
index 2a92d281..3f789992 100644
--- a/MLEB/Translate/i18n/core/pl.json
+++ b/MLEB/Translate/i18n/core/pl.json
@@ -25,16 +25,14 @@
"WTM",
"Woytecr",
"Wpedzich",
- "Žekřil71pl"
+ "Žekřil71pl",
+ "The Polish",
+ "Tsca"
]
},
"translate": "Przetłumacz",
+ "translate-extensionname": "Przetłumacz",
"translate-desc": "[[Special:Translate|Strona specjalna]] umożliwiająca tłumaczenie MediaWiki oraz innych programów",
- "translate-taskui-view": "Pokaż wszystkie komunikaty",
- "translate-taskui-untranslated": "Pokaż nieprzetłumaczone komunikaty",
- "translate-taskui-optional": "Pokaż opcjonalne wiadomości",
- "translate-taskui-acceptqueue": "Tylko te komunikaty, które mogę oznaczyć jako przejrzane",
- "translate-taskui-reviewall": "Sprawdź wszystkie tłumaczenia",
"translate-taskui-export-to-file": "Eksportuj w formacie macierzystym",
"translate-taskui-export-as-po": "Eksportuj do tłumaczenia off-line",
"translate-taction-translate": "Przetłumacz",
@@ -63,7 +61,6 @@
"translate-page-description-hasoptional": "Ta grupa zawiera również opcjonalne komunikaty.\nPowinny one być tłumaczone tylko wtedy, gdy język docelowy wymaga pisania bez odstępów między wyrazami lub transliteracji nazw własnych. $1",
"translate-page-description-hasoptional-open": "Pokaż komunikaty opcjonalne.",
"translate-page-edit": "edytuj",
- "translate-ext-url": "<hr />Strona internetowa: $1",
"translate-optional": "(dodatkowe)",
"translate-ignored": "(zignorowane)",
"translate-edit-title": "Edycja „$1“",
@@ -73,14 +70,17 @@
"translate-edit-no-information": "<em>Ten komunikat nie posiada dokumentacji.\nJeśli wiesz gdzie lub jak ten komunikat jest używany, możesz pomóc innym tłumaczom przez dodanie dokumentacji do tego komunikatu.</em>",
"translate-edit-information": "Objaśnienie komunikatu ($1)",
"translate-edit-in-other-languages": "Komunikat w innych językach",
- "translate-edit-committed": "Aktualne tłumaczenie oprogramowania",
"translate-edit-warnings": "Ostrzeżenia o niedokończonych tłumaczeniach",
- "translate-edit-tmsugs": "Sugestie na podstawie poprzednich tłumaczeń",
"translate-edit-tmmatch-source": "Tekst źródłowy tłumaczenia: $1",
"translate-edit-tmmatch": "pasuje $1%",
"translate-use-suggestion": "Zastąp obecne tłumaczenie tą propozycją.",
"translate-edit-nopermission": "Nie masz uprawnień tłumacza do tłumaczenia komunikatów.",
"translate-edit-askpermission": "Uzyskaj uprawnienie",
+ "exporttranslations": "Eksport tłumaczeń",
+ "translate-export-form-format": "Format",
+ "translate-export-invalid-format": "Proszę podać poprawny format.",
+ "translate-export-not-supported": "Eksport tłumaczeń nie jest obsługiwany.",
+ "translate-export-format-notsupported": "Określony format eksportu nie jest obsługiwany przez tę grupę komunikatów.",
"translate-magic-pagename": "Rozszerzone tłumaczenie MediaWiki",
"translate-magic-help": "Istnieje możliwość tłumaczenia aliasów stron specjalnych, magicznych słów i nazw poszczególnych przestrzeni nazw.\n\nAliasy stron specjalnych i magiczne słowa mogą mieć wiele tłumaczeń.\nTłumaczenia rozdziela się przecinkiem (,).\nPrzestrzenie nazw mogą mieć tylko jedno tłumaczenie.\n\nTłumaczenie nazw przestrzeni nazw <code>Dyskusja $1</code> zawierających strony dyskusji może być bardziej złożone.\n<code>$1</code> zamieniane jest na nazwę serwisu – na przykład <code>{{ns:project_talk}}</code>.\nJeśli w danym języku niemożliwe jest sformułowanie prawidłowego wpisu bez zmiany nazwy serwisu, należy nas zawiadomić przez [[Support]].\n\nZapisanie zmian jest możliwe tylko przez członków grupy tłumaczy.\nZmiany nie są zapisywane, dopóki użytkownik nie naciśnie umieszczonego poniżej przycisku „Zapisz”.",
"translate-magic-module": "Moduł:",
@@ -99,7 +99,7 @@
"translate-magic-namespace": "Nazwy przestrzeni nazw",
"translate-magic-notsaved": "Twoja edycja nie została zapisana!",
"translate-magic-errors": "Proszę naprawić {{PLURAL:$1|w tłumaczeniach błąd|następujące błędy w tłumaczeniach:}}",
- "translate-magic-saved": "Zmiany zostały zapisane.",
+ "translate-magic-saved": "Twoje zmiany zostały zapisane.",
"translate-checks-parameters": "{{PLURAL:$2|Następujący parametr nie jest wykorzystywany|Następujące parametry nie są wykorzystywane}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-parameters-unknown": "{{PLURAL:$2|Następujący parametr nie jest zdefiniowany|Następujące parametry nie są zdefiniowane}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-balance": "W wyrażeniu napotkano {{PLURAL:$2|niedomknięty nawias|nieparzystą liczbę nawiasów}}:\n<strong><nowiki>$1</nowiki></strong>",
@@ -108,7 +108,7 @@
"translate-checks-xhtml": "Zastąp {{PLURAL:$2|następujący znacznik prawidłowym|następujące znaczniki prawidłowymi}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-plural": "Tekst źródłowy wykorzystuje funkcję <nowiki>{{PLURAL:}}</nowiki>, lecz w tłumaczeniu nie została ona użyta.",
"translate-checks-plural-forms": "<nowiki>{{PLURAL:}}</nowiki> posiada {{PLURAL:$1|jedną formę|$1 formy|$1 form}} ale {{PLURAL:$2|tylko jedna forma jest obsługiwana|$2 formy są obsługiwane|$2 form jest obsługiwanych}} (z wyłączeniem form 0= i 1= ).",
- "translate-checks-plural-dupe": "<nowiki>{{PLURAL:}}</nowiki> posiada w końcu formy wielokrotne. <nowiki>{{PLURAL:$1|ojca|ojców|ojców}}</nowiki> powinien być pisany jako <nowiki>{{PLURAL:$1|ojca|ojców}}</nowiki>.",
+ "translate-checks-plural-dupe": "W <nowiki>{{PLURAL:}}</nowiki> podano pod koniec powtarzające się formy. <nowiki>{{PLURAL:$1|ojca|ojców|ojców}}</nowiki> powinno zapisać się jako <nowiki>{{PLURAL:$1|ojca|ojców}}</nowiki>.",
"translate-checks-pagename": "Przestrzeń nazw różni się od tekstu źródłowego",
"translate-checks-format": "To tłumaczenie jest niezgodne z tekstem źródłowym lub ma nieprawidłową składnię: $1",
"translate-checks-escape": "Następujące sekwencje mogą być niezamierzone: <strong>$1</strong>",
@@ -126,8 +126,17 @@
"right-translate-import": "Importowanie tłumaczeń wykonanych offline",
"action-translate-import": "importowanie tłumaczeń wykonanych offline",
"right-translate-messagereview": "Przeglądanie tłumaczeń",
+ "action-translate-messagereview": "przeglądanie tłumaczeń",
"right-translate-groupreview": "Zmiana status przepływu pracy dla grup komunikatów",
- "translate-rc-translation-filter": "Filtruj tłumaczenia",
+ "action-translate-groupreview": "zmieniania statusu opracowania grup komunikatów",
+ "translate-rcfilters-translations": "Tłumaczenia",
+ "translate-rcfilters-translations-only-label": "Tłumaczenia",
+ "translate-rcfilters-translations-only-desc": "Zmiany na tłumaczonych stronach.",
+ "translate-rcfilters-translations-filter-label": "Bez tłumaczeń",
+ "translate-rcfilters-translations-filter-desc": "Wszystkie zmiany, które nie są tłumaczeniami.",
+ "translate-rcfilters-translations-site-label": "Komunikaty tej strony",
+ "translate-rcfilters-translations-site-desc": "Zmiany w komunikatach strony znajdujących się w przestrzeni nazw MediaWiki.",
+ "translate-rc-translation-filter": "Filtr tłumaczeń:",
"translate-rc-translation-filter-no": "nie filtruj",
"translate-rc-translation-filter-only": "pokaż tylko tłumaczenia",
"translate-rc-translation-filter-filter": "pokaż wszystkie oprócz tłumaczeń",
@@ -142,23 +151,22 @@
"translate-statsf-options": "Opcje wykresu",
"translate-statsf-width": "Szerokość w pikselach",
"translate-statsf-height": "Wysokość w pikselach",
- "translate-statsf-days": "Data początkowa",
+ "translate-statsf-days": "Okres czasu w dniach:",
"translate-statsf-start": "Data początkowa:",
- "translate-statsf-scale": "Precyzja",
+ "translate-statsf-scale": "Podział:",
"translate-statsf-scale-months": "miesiące",
"translate-statsf-scale-weeks": "tygodnie",
"translate-statsf-scale-days": "dni",
"translate-statsf-scale-hours": "godziny",
- "translate-statsf-count": "Jednostka",
+ "translate-statsf-count": "Pomiar:",
"translate-statsf-count-edits": "liczba edycji",
"translate-statsf-count-users": "aktywni tłumacze",
"translate-statsf-count-registrations": "nowi użytkownicy",
- "translate-statsf-count-reviews": "Sprawdzenia tłumaczeń",
- "translate-statsf-count-reviewers": "Sprawdzający",
+ "translate-statsf-count-reviews": "sprawdzenia tłumaczeń",
+ "translate-statsf-count-reviewers": "sprawdzający",
"translate-statsf-language": "Kody języków rozdzielone przecinkami:",
"translate-statsf-group": "Kody grup rozdzielone przecinkami:",
"translate-statsf-submit": "Podgląd",
- "translate-tag-category": "Strony do przetłumaczenia",
"translate-tag-page-desc": "Tłumaczenie wiki strony [[$2|$1]] z $3 ($4).",
"translate-sidebar-alltrans": "W innych językach",
"translations": "Wszystkie tłumaczenia",
@@ -172,7 +180,7 @@
"translate-translations-including-no-param": "Podaj prawidłową nazwę strony w parametrze podstrony",
"translate-translations-history-short": "h",
"languagestats": "Statystyka językowa",
- "languagestats-summary": "Strona pokazuje statystykę tłumaczenia dla wszystkich grup komunikatów we wskazanym języku.",
+ "languagestats-summary": "Strona pokazuje statystyki tłumaczeń dla wszystkich grup komunikatów we wskazanym języku.",
"messagegroupstats-summary": "Ta strona pokazuje statystyki grupy komunikatów.",
"languagestats-stats-for": "Statystyki tłumaczenia na język $1 ($2).",
"languagestats-recenttranslations": "ostatnie tłumaczenia",
@@ -196,11 +204,11 @@
"translate-mgs-pagename": "Statystyki grupy komunikatów",
"translate-mgs-fieldset": "Preferencje wyświetlania",
"translate-mgs-group": "Grupa komunikatów",
- "translate-mgs-nocomplete": "Nie wyświetlaj języków dla których tłumaczenia zostały ukończone",
+ "translate-mgs-nocomplete": "Nie wyświetlaj języków, dla których tłumaczenia zostały ukończone",
"translate-mgs-noempty": "Nie wyświetlaj języków, dla których nie rozpoczęto tłumaczenia",
"translate-mgs-submit": "Pokaż statystyki",
"translate-mgs-column-language": "Język",
- "translate-mgs-totals": "Wszystkie języki razem",
+ "translate-mgs-totals": "Razem {{PLURAL:$1|we wszystkich $1 językach|w jednym języku}}",
"translate-mgs-invalid-group": "Nie istnieje grupa „$1“.",
"translate-mgs-nothing": "Brak czegokolwiek do wyświetlenia dla żądanych statystyk.",
"supportedlanguages": "Obsługiwane języki",
@@ -210,6 +218,7 @@
"supportedlanguages-recenttranslations": "ostatnie tłumaczenia",
"supportedlanguages-count": "Razem $1 {{PLURAL:$1|język|języki|języków}}.",
"supportedlanguages-activity": "$1: $2 {{PLURAL:$2|edycja|edycje|edycji}} – ostatnia zmiana $3 {{PLURAL:$3|dzień|dni}} temu",
+ "abusefilter-edit-builder-vars-translate-source-text": "Tekst źródłowy jednostki tłumaczeniowej",
"translate-save": "Zapisz ($1)",
"translate-jssti-add": "Dodaj do listy",
"managemessagegroups": "Zarządzanie grupami komunikatów",
@@ -233,7 +242,6 @@
"translate-manage-toolong": "Został przekroczony maksymalny czas przetwarzania wynoszący $1 {{PLURAL:$1|sekundę|sekundy|sekund}}.\nAby kontynuować przetwarzanie proszę ponownie przesłać formularz.",
"translate-manage-import-summary": "Import nowej wersji z zewnętrznego źródła",
"translate-manage-conflict-summary": "Importowanie nowej wersji z zewnętrznego źródła.\nProszę sprawdzić.",
- "translate-manage-fuzzy-summary": "Tekst źródłowy komunikatu został zmieniony",
"translate-manage-submit": "Wykonaj",
"translate-manage-intro-other": "Poniżej znajduje się lista zmian komunikatów w języku $1.\nProszę przejrzeć zmiany i wybrać dla każdego komunikatu operację, którą chcesz dla niego wykonać.\nJeśli polecisz zignorować zmiany, zostaną one nadpisane przy następnym eksporcie.",
"translate-manage-import-ok": "Zaimportowano: $1",
@@ -242,7 +250,7 @@
"translate-import-from-local": "Załadowanie lokalnego pliku",
"translate-import-load": "Pobierz plik",
"translate-import-err-dl-failed": "Nie udało się przesłać pliku $1",
- "translate-import-err-ul-failed": "Nie udało się przesłać pliku",
+ "translate-import-err-ul-failed": "Przesyłanie pliku zakończone niepowodzeniem",
"translate-import-err-invalid-title": "Podana nazwa pliku <nowiki>$1</nowiki> jest nieprawidłowa.",
"translate-import-err-no-such-file": "Plik <nowiki>$1</nowiki> nie istnieje lub nie został jeszcze przesłany.",
"translate-import-err-stale-group": "Grupa komunikatów, do której należy ten plik, nie istnieje.",
@@ -251,9 +259,7 @@
"translate-js-summary": "Podsumowanie:",
"translate-js-save": "Zapisz",
"translate-js-next": "Zapisz i otwórz następny",
- "translate-js-nonext": "To był ostatni komunikat na tej stronie.",
"translate-js-skip": "Przejdź do następnego",
- "translate-js-save-failed": "Zapisywanie nie powiodło się. Powiadom o wystąpieniu błędu.",
"translate-js-history": "Historia tłumaczeń",
"translate-js-support": "Zadaj pytanie",
"translate-js-support-title": "Poproś o pomoc, jeśli brak jest wystarczających informacji, aby przetłumaczyć ten komunikat właściwie.",
@@ -270,21 +276,9 @@
"translate-documentation-language": "opis komunikatu",
"translate-searchprofile": "Tłumaczenia",
"translate-searchprofile-tooltip": "Szukaj we wszystkich tłumaczeniach",
+ "translate-searchprofile-note": "Więcej opcji wyszukiwania dostępnych jest w [$1 wyszukiwarce tłumaczeń].",
"translate-search-languagefilter": "Filtruj według języka",
"translate-search-nofilter": "Bez filtrowania",
- "translate-messagereview-submit": "Oznacz jako przejrzane",
- "translate-messagereview-progress": "Oznaczanie jako przejrzane...",
- "translate-messagereview-failure": "Oznaczanie jako przejrzane nie powiodło się: $1",
- "translate-messagereview-done": "Przejrzano",
- "translate-messagereview-reviews": "Przejrzane przez {{PLURAL:$1|jednego użytkownika|$1 użytkowników}}",
- "translate-messagereview-reviewswithyou": "Przejrzane przez {{PLURAL:$1|Ciebie|$1 użytkowników, między innymi przez Ciebie}}",
- "api-error-invalidrevision": "nie można odnaleźć tłumaczenia",
- "api-error-unknownmessage": "nie można odnaleźć komunikatu",
- "api-error-fuzzymessage": "tłumaczenie oznaczone zostało jako niepewne",
- "api-error-owntranslation": "Nie możesz oznaczyć własnych tłumaczeń jako przejrzane",
- "translate-messagereview-no-fuzzy": "Tłumaczenia rozmyte nie mogą być oznaczone jako przejrzane.",
- "translate-messagereview-no-own": "Nie możesz oznaczyć własnych tłumaczeń jako przejrzane.",
- "translate-messagereview-doit": "Oznacz to tłumaczenie jako przejrzane.",
"log-name-translationreview": "Rejestr zatwierdzania tłumaczeń",
"log-description-translationreview": "Zapisuje wszystkie zatwierdzenia tłumaczeń i grupy komunikatów.",
"logentry-translationreview-message": "$1 {{GENDER:$2|przejrzał|przejrzała}} tłumaczenie $3",
@@ -297,10 +291,7 @@
"action-translate-sandboxaction": "wykonywanie czynności dozwolonych użytkownikom w piaskownicy",
"translate-workflow-state-": "(wyłączone)",
"translate-workflowstatus": "Status: $1",
- "translate-workflow-set-do": "Wyślij",
"translate-workflow-set-doing": "Wysyłanie...",
- "translate-workflow-set-done": "Wysłano!",
- "translate-workflow-set-error-alreadyset": "Żądany stan jest identyczny z bieżącym.",
"translate-workflow-autocreated-summary": "Automatyczne tworzenie strony stanu tłumaczeń $1",
"translate-stats-workflow": "Status",
"translate-workflowgroup-label": "Stany tłumaczeń",
@@ -309,11 +300,6 @@
"translate-dynagroup-recent-desc": "Ta grupa komunikatów zawiera wszystkie ostatnie tłumaczenia na ten język.\nJest najbardziej użyteczna do zadań przeglądania.",
"translate-dynagroup-additions-label": "Ostatnio dodane",
"translate-dynagroup-additions-desc": "Ta grupa komunikatów wyświetla nowe i zmienione komunikaty.",
- "translate-dynagroup-by": "Tłumaczenia dokonywane przez {{GENDER:$1|$1}}",
- "translate-dynagroup-byc": "Tłumaczenia dokonywane przez {{GENDER:$1|$1}} ($2)",
- "translate-dynagroup-last": "Ostatnia zmiana wykonana przez {{GENDER:$1|$1}}",
- "translate-dynagroup-lastc": "Ostatnia zmiana wykonana przez {{GENDER:$1|$1}} ($2)",
- "translate-gethelp": "Pomoc",
"translate-msggroupselector-projects": "Grupa komunikatów",
"translate-msggroupselector-search-placeholder": "Szukaj grup",
"translate-msggroupselector-search-all": "Wszystko",
@@ -332,14 +318,17 @@
"tux-status-translated": "Przetłumaczony",
"tux-status-saving": "Zapisywanie...",
"tux-status-unsaved": "Niezapisane",
+ "tux-save-unknown-error": "Wystąpił nieznany błąd.",
"tux-editor-placeholder": "Twoje tłumaczenie",
+ "tux-editor-editsummary-placeholder": "Opcjonalne podsumowanie",
"tux-editor-paste-original-button-label": "Wklej tekst źródłowy",
"tux-editor-discard-changes-button-label": "Porzuć zmiany",
"tux-editor-save-button-label": "Zapisz tłumaczenie",
"tux-editor-skip-button-label": "Przejdź do następnego",
"tux-editor-cancel-button-label": "Anuluj",
"tux-editor-confirm-button-label": "Potwierdź tłumaczenie",
- "tux-editor-shortcut-info": "Naciśnij \"$1\", aby zapisać, lub \"$2\", aby przejść do następnego komunikatu",
+ "tux-editor-proofread-button-label": "Oznacz jako przejrzane",
+ "tux-editor-shortcut-info": "Naciśnij \"$1\", aby zapisać, \"$2\", aby przejść do następnego komunikatu, lub \"$4\", aby podać opis zmian lub \"$3\" dla innych skrótów.",
"tux-editor-edit-desc": "Edytuj dokumentację",
"tux-editor-add-desc": "Dodaj dokumentację",
"tux-editor-suggestions-title": "Sugestie",
@@ -368,11 +357,11 @@
"tux-editor-doc-editor-cancel": "Anuluj",
"tux-messagetable-more-messages": "$1 {{PLURAL:$1|kolejny komunikat|kolejne komunikaty|kolejnych komunikatów}}",
"tux-messagetable-loading-messages": "Ładowanie {{PLURAL:$1|komunikatu|komunikatów}}...",
- "tux-message-filter-placeholder": "Lista filtrów",
+ "tux-message-filter-placeholder": "Filtruj listę",
"tux-message-filter-result": "Znaleziono $1 {{PLURAL:$1|wynik|wyników}}, dla \"$2\"",
"tux-message-filter-advanced-button": "Zaawansowane wyszukiwanie",
"tux-message-filter-optional-messages-label": "Komunikaty opcjonalne",
- "tux-proofread-translated-by-self": "Przetłumaczone przez ciebie",
+ "tux-proofread-translated-by-self": "Przetłumaczone przez Ciebie",
"tux-empty-list-all": "Ta grupa komunikatów jest pusta",
"tux-empty-list-all-guide": "Wybierz inną grupę komunikatów do przetłumaczenia",
"tux-translate-page-no-such-group": "<strong>Ta grupa nie istnieje.</strong> Wybierz inną grupę komunikatów.",
@@ -394,9 +383,11 @@
"tux-editor-close-tooltip": "Zamknij",
"tux-editor-expand-tooltip": "Rozwiń",
"tux-editor-collapse-tooltip": "Zwiń",
+ "tux-editor-message-tools-show-editor": "Pokaż w zwykłym edytorze wiki",
"tux-editor-message-tools-history": "Historia",
"tux-editor-message-tools-delete": "Usuń",
"tux-editor-message-tools-translations": "Wszystkie tłumaczenia",
+ "tux-editor-message-tools-linktothis": "Link do tego komunikatu",
"tux-editor-loading": "Ładowanie...",
"translate-search-more-languages-info": "$1 {{PLURAL:$1|język|języków}} więcej",
"translate-statsbar-tooltip": "$1% przetłumaczono, $2% przejrzano",
@@ -404,5 +395,6 @@
"translate-search-more-groups-info": "$1 więcej {{PLURAL:$1|grupa|grup}}",
"translate-ulsdep-title": "Błąd konfiguracji",
"translate-ulsdep-body": "Rozszerzenie tłumaczeń jest zależne od [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector rozszerzenia Uniwersalny Selektor Języka].",
- "tux-session-expired": "Nie jesteś już zalogowany. Zaloguj się w osobnej karcie. Alternatywnie, możesz wykonać kopię niezapisanych tłumaczeń, zalogować się i powrócić do tej strony."
+ "tux-session-expired": "Nie jesteś już zalogowany. Zaloguj się w osobnej karcie. Alternatywnie, możesz wykonać kopię niezapisanych tłumaczeń, zalogować się i powrócić do tej strony, a następnie ponownie wprowadzić tłumaczenia.",
+ "tux-nojs": "To narzędzie nie działa, jeżeli nie działa obsługa JavaScript. Jest u ciebie wyłączona, nie działa lub ta przeglądarka nie jest wspierana."
}
diff --git a/MLEB/Translate/i18n/core/pms.json b/MLEB/Translate/i18n/core/pms.json
index 4b59b2ff..0274a99e 100644
--- a/MLEB/Translate/i18n/core/pms.json
+++ b/MLEB/Translate/i18n/core/pms.json
@@ -8,11 +8,6 @@
},
"translate": "Viragi",
"translate-desc": "[[Special:Translate|Pàgina special]] për le tradussion ëd MediaWiki e ancor ëd pì",
- "translate-taskui-view": "Smon-e tùit ij mëssagi",
- "translate-taskui-untranslated": "Smon-e ij mëssagi nen voltà",
- "translate-taskui-optional": "Smon-e ij mëssagi opsionaj.",
- "translate-taskui-acceptqueue": "Mach ij mëssagi che i peuss aceté",
- "translate-taskui-reviewall": "Revision-a tute le tradussion",
"translate-taskui-export-to-file": "Esporté an formà nativ",
"translate-taskui-export-as-po": "Esporté da le tradussion fòra linia",
"translate-taction-translate": "Volté",
@@ -41,7 +36,6 @@
"translate-page-description-hasoptional": "Sta partìa ëd mëssagi a conten ij mëssagi opsionaj.\nIj Mëssagi opsionaj a dovrìo mach esse voltà quand che soa lenga a l'ha dj'esigense speciaj com ëd nen dovré dë spassi o an trasliteré dij nòm pròpi. $1",
"translate-page-description-hasoptional-open": "Smon-e ij mëssagi opsionaj.",
"translate-page-edit": "modifiché",
- "translate-ext-url": "<hr />Sit an sl'aragnà: $1",
"translate-optional": "(opsional)",
"translate-ignored": "(ignorà)",
"translate-edit-title": "Modìfica \"$1\"",
@@ -51,9 +45,7 @@
"translate-edit-no-information": "''Ës mëssagi a l'ha gnun-a documentassion.\nS'a sa andoa o coma 's mëssagi a l'é dovrà, a peul giuté d'àutri tradutor an giontant dla documentassion a cost mëssagi.''",
"translate-edit-information": "Anformassion an sël mëssagi ($1)",
"translate-edit-in-other-languages": "Mëssagi an d'àutre lenghe",
- "translate-edit-committed": "Tradussion corenta ant ël programa",
"translate-edit-warnings": "Avertensa an sle tradussion incomplete",
- "translate-edit-tmsugs": "Sugeriment da le tradussion an memòria",
"translate-edit-tmmatch-source": "Test sorgiss dla tradussion: $1",
"translate-edit-tmmatch": "corëspondensa ëd $1%",
"translate-use-suggestion": "Rampiassé la tradussion corenta con cost sugeriment.",
@@ -136,7 +128,6 @@
"translate-statsf-language": "Lista dij còdes ëd le lenghe separà da 'd vìrgole:",
"translate-statsf-group": "Lista ëd còdes ëd partìe separà da 'd vìrgole:",
"translate-statsf-submit": "Preuva",
- "translate-tag-category": "Pàgine voltàbij",
"translate-tag-page-desc": "Tradussion dla pàgina wiki [[$2|$1]].",
"translate-sidebar-alltrans": "Ant j'àutre lenghe",
"translations": "Tute le tradussion",
@@ -209,7 +200,6 @@
"translate-manage-toolong": "Passà ël temp màssim ëd tratament ëd $1 {{PLURAL:$1|second|second}}.\nPër piasì, ch'a spedissa torna ël formolari për continué ël process.",
"translate-manage-import-summary": "Amportassion ëd na neuva version da na sorgiss esterna",
"translate-manage-conflict-summary": "Amportassion ëd na neuva version da na sorgiss esterna.\nPër piasì, ch'a controla.",
- "translate-manage-fuzzy-summary": "La definission dël mëssagi a l'é cangià",
"translate-manage-submit": "Fé andé",
"translate-manage-intro-other": "Sota a-i é na lista ëd cangiament ëd le tradussion ant la lenga $1.\nPër piasì, ch'a revision-a ij cangiament e ch'a serna n'assion ch'a veul fé për minca tradussion.\nS'a sern d'ignoré ij cangiament, a saran coatà durant l'esportassion ch'a-i ven.",
"translate-manage-import-ok": "Amportà na neuva version ëd la pàgina $1.",
@@ -227,9 +217,7 @@
"translate-js-summary": "Resumé:",
"translate-js-save": "Salva",
"translate-js-next": "Salvé e duverté col apress",
- "translate-js-nonext": "Cost a l'era l'ùltim mëssagi dzora a sta pàgina-sì.",
"translate-js-skip": "Sàuta a col ch'a ven",
- "translate-js-save-failed": "Salvatagi falì. Për piasì arpòrta sto eror-sì.",
"translate-js-history": "Stòria dël viragi",
"translate-js-support": "Ciama",
"translate-js-support-title": "Ch'a ciama d'agiut s'a-i é pa basta d'anformassion për volté bin cost mëssagi.",
@@ -248,28 +236,12 @@
"translate-searchprofile-tooltip": "Sërché an tute le tradussion",
"translate-search-languagefilter": "Filtra për lenga:",
"translate-search-nofilter": "Filtra pa",
- "translate-messagereview-submit": "Aceté",
- "translate-messagereview-progress": "An cors d'acetassion...",
- "translate-messagereview-failure": "Acetassion... falìa: $1",
- "translate-messagereview-done": "Acetà",
- "translate-messagereview-reviews": "Acetà da {{PLURAL:$1|un utent|$1 utent}}",
- "translate-messagereview-reviewswithyou": "Acetà da {{PLURAL:$1|ti|$1 utent comprèis ti}}",
- "api-error-invalidrevision": "Tradussion pa trovà",
- "api-error-unknownmessage": "Mëssagi pa trovà",
- "api-error-fuzzymessage": "La tradussion a l'é marcà com tërbol",
- "api-error-owntranslation": "It peule pa aceté toe pròpie tradussion",
- "translate-messagereview-no-fuzzy": "Lë tradussion tërboj a peulo pa esse acetà.",
- "translate-messagereview-no-own": "It peule pa aceté toe pròpie tradussion.",
- "translate-messagereview-doit": "Aceta sta tradussion com na tradussion giusta.",
"log-name-translationreview": "Registr dle revision ëd tradussion",
"log-description-translationreview": "Registr ëd tute le revision a le tradussion e a le partìe ëd mëssagi.",
"logentry-translationreview-message": "$1 {{GENDER:$2|a l'ha acetà}} la tradussion $3",
"translate-workflow-state-": "(disativà)",
"translate-workflowstatus": "Stat: $1",
- "translate-workflow-set-do": "Ampòsta",
"translate-workflow-set-doing": "Ativassion...",
- "translate-workflow-set-done": "Ativà!",
- "translate-workflow-set-error-alreadyset": "Lë stat ciamà a l'é idéntich a lë stat corent",
"translate-workflow-autocreated-summary": "Creassion automàtica ëd la pàgina për lë stat dël process ëd travaj $1",
"translate-stats-workflow": "Stat",
"translate-workflowgroup-label": "Stat dël process ëd travaj",
@@ -278,11 +250,6 @@
"translate-dynagroup-recent-desc": "Sta partìa ëd mëssagi a smon tute le tradussion recente an costa lenga.\nA ven dzortut a taj con ij travaj ëd revision.",
"translate-dynagroup-additions-label": "Gionte recente",
"translate-dynagroup-additions-desc": "Costa partìa ëd mëssagi a smon dij mëssagi neuv e modificà.",
- "translate-dynagroup-by": "Tradussion fàite da {{GENDER:$1|$1}}",
- "translate-dynagroup-byc": "Tradussion fàite da {{GENDER:$1|$1}} ($2)",
- "translate-dynagroup-last": "Ùltime modìfiche ëd {{GENDER:$1|$1}}",
- "translate-dynagroup-lastc": "Ùltime modìfiche ëd {{GENDER:$1|$1}} ($2)",
- "translate-gethelp": "Agiut",
"translate-msggroupselector-projects": "Partìa ëd mëssagi",
"translate-msggroupselector-search-placeholder": "Sërché le partìe",
"translate-msggroupselector-search-all": "Tùit",
diff --git a/MLEB/Translate/i18n/core/pnb.json b/MLEB/Translate/i18n/core/pnb.json
index a9b02879..598fb352 100644
--- a/MLEB/Translate/i18n/core/pnb.json
+++ b/MLEB/Translate/i18n/core/pnb.json
@@ -1,7 +1,8 @@
{
"@metadata": {
"authors": [
- "Khalid Mahmood"
+ "Khalid Mahmood",
+ "Abbas dhothar"
]
},
"translate": "ترجمعہ",
@@ -12,5 +13,6 @@
"translate-page-navigation-legend": "کھوج",
"translate-page-showing-none": "وکھانے آسطے کوئی سنیعا نئیں۔",
"translate-next": "اگلا صفحہ",
- "translate-page-description-legend": "ٹولی دے بارے چ معلومات"
+ "translate-page-description-legend": "ٹولی دے بارے چ معلومات",
+ "translate-documentation-language": "سنیہہ دستاویز"
}
diff --git a/MLEB/Translate/i18n/core/ps.json b/MLEB/Translate/i18n/core/ps.json
index 48fc452c..577e54c9 100644
--- a/MLEB/Translate/i18n/core/ps.json
+++ b/MLEB/Translate/i18n/core/ps.json
@@ -2,17 +2,21 @@
"@metadata": {
"authors": [
"Ahmed-Najib-Biabani-Ibrahimkhel",
- "Waldir"
+ "Waldir",
+ "Baloch Khan"
]
},
"translate": "ژباړل",
- "translate-taskui-view": "ټول پيغامونه ښکاره کول",
- "translate-taskui-untranslated": "ناژباړلي پيغامونه ښکاره کول",
"translate-taction-translate": "ژباړل",
+ "translate-taction-proofread": "بياکتنه",
"translate-taction-lstats": "د ژبې شمار",
"translate-taction-mstats": "د پيغام ډلې شمار",
+ "translate-taction-export": "صادرول",
+ "translate-taction-disabled": "په دې ويکي باندې دا کړنه ناچارنه شوې.",
"translate-page-no-such-language": "ځانگړې شوې ژبه سمه نه وه.",
+ "translate-page-no-such-group": "ځانگړې شوې ډله سمه نه وه.",
"translate-page-disabled": "په دې ډله کې د همدې ژبې ژباړې ناچارنده شوي.\nسبب:\n\n<em>$1</em>",
+ "translate-language-disabled": "دې ژبې ته ژباړه ناچارنه شوې.",
"translate-page-settings-legend": "امستنې",
"translate-page-group": "ډله",
"translate-page-language": "ژبه",
@@ -20,12 +24,14 @@
"translate-page-limit-option": "$1 {{PLURAL:$1|پيغام|پيغامونه}} په يوه مخ کې",
"translate-submit": "راغونډول",
"translate-page-navigation-legend": "گرځښت",
+ "translate-page-showing": "له $1 تر $2 پيغامونه ښکاره شوي، ټولټال $3.",
"translate-page-showing-all": "$1 {{PLURAL:$1|پيغام|پيغامونه}} ښکاره کول.",
+ "translate-page-showing-none": "د ښکاره کولو لپاره کوم پيغام نشته.",
"translate-next": "بل مخ",
"translate-prev": "تېر مخ",
"translate-page-description-legend": "د ډلې په اړه مالومات",
+ "translate-page-description-hasoptional-open": "اختياري پيغامونه ښکاره کول.",
"translate-page-edit": "سمول",
- "translate-ext-url": "<hr />وېبځی: $1",
"translate-optional": "(اختياري)",
"translate-ignored": "(بابېزه گڼل شوی)",
"translate-edit-title": "\"$1\" سمول",
@@ -34,30 +40,49 @@
"translate-edit-contribute": "ونډه اخيستل",
"translate-edit-information": "د پيغام په اړه مالومات ($1)",
"translate-edit-in-other-languages": "پيغام په نورو ژبو کې",
+ "translate-edit-warnings": "د نابشپړه ژباړو په اړه گواښنې",
+ "translate-edit-tmmatch-source": "د ژباړې د سرچينې متن: $1",
+ "translate-edit-askpermission": "پرېښه اخيستل",
+ "translate-export-form-format": "بڼه",
"translate-magic-help": "تاسې د ځانگړو مخونو مستعار نومونه، کوډگر وييونه او د نوم-تشيال نومونه ژباړلی شی.\n\nد ځانگړو مخونو مستعار نومونه او کوډگر وييونه گڼ شمېر ژباړې لري.\nژباړې د کامې (,) په کارېدلو سره يو له بل نه بېلې شوي.\nنوم-تشيالونه يواځې يوه ژباړه لرلی شي.\n\nد پروژې د خبرو اترو نوم-تشيال په ژباړو کې <code>$1 talk</code> کېدای شي پېچلی شي. <code>$1</code> د پروژې وېبځي په نوم ځايناستل کېږي (د بېلگې په توگه <code>{{ns:project_talk}}</code>).\nکه چېرته دا ستاسې په ژبه کې شونی نه وي چې د وېبځي د نوم بدلون نه پرته يوه سمه اصطلاح رامېنځ ته شي، نو لطفاً د يوه پروگرامر سره په [[ملاتړ]] کې اړيکه ونيسۍ.\n\nد بدلونونو د خوندي کولو لپاره پکار ده چې تاسې د ژباړنانو په ډله کې اوسۍ.\nبدلونونه به تر هغه وخت پورې نه خوندي کېږي څو چې تاسې لاندې د خوندي کولو تڼۍ نه وي کېښکاږلې.",
"translate-magic-module": "رغبېلگه:",
"translate-magic-submit": "راغونډول",
+ "translate-magic-cm-export": "صادرول",
"translate-magic-cm-current": "اوسنی",
"translate-magic-cm-original": "آرنی",
- "translate-magic-cm-comment": "انګېرنه:",
+ "translate-magic-cm-comment": "تبصره:",
"translate-magic-cm-save": "خوندي کول",
- "translate-magic-words": "کوډګريز وييونه",
+ "translate-magic-words": "کوډگريز وييونه",
"translate-magic-namespace": "د نوم-تشيالونو نومونه",
"translate-magic-notsaved": "ستاسې سمون خوندي نه شو!",
"translate-magic-saved": "بدلونونه مو په برياليتوب سره خوندي شول.",
"translate-pref-nonewsletter": "برېښليک کې خبرليکونه مه رالېږه",
"translate-pref-editassistlang": "مرستيالې ژبې:",
"prefs-translate": "د ژباړې خوښنې",
+ "right-translate-manage": "پيغام ډلې مهارول",
+ "action-translate-manage": "پيغام ډلې مهارول",
+ "right-translate-import": "بې ليکې ژباړې راوستل",
+ "action-translate-import": "بې ليکې ژباړې راوستل",
+ "right-translate-messagereview": "ژباړې بياکتل",
+ "translate-rcfilters-translations-filter-label": "ژباړې نه",
+ "translate-rcfilters-translations-filter-desc": "ټول هغه بدلونونه کوم چې ژباړې نه دي.",
"translate-rc-translation-filter": "ژباړې چاڼول:",
- "translate-rc-translation-filter-no": "هېڅ مه کوۍ",
+ "translate-rc-translation-filter-no": "هېڅ مه کوئ",
"translate-rc-translation-filter-only": "يوازې ژباړې ښکاره کول",
+ "translate-rc-translation-filter-filter": "ژباړې له چاڼه وېستل",
"translate-rc-translation-filter-site": "يوازې د وېبځي پيغامونو بدلونونه",
"translationstats": "د ژباړو شمار",
"translate-stats-edits": "سمونونه",
"translate-stats-users": "ژباړونکي",
"translate-stats-registrations": "نومليکنې",
- "translate-statsf-days": "د پيل نېټه:",
+ "translate-stats-reviews": "بياکتنې",
+ "translate-stats-reviewers": "بياکتونکي",
+ "translate-statsf-options": "د گراف خوښنې",
+ "translate-statsf-width": "سور په پېکسل کې:",
+ "translate-statsf-height": "لوړوالی په پېکسل کې:",
+ "translate-statsf-days": "د وخت موده په ورځو کې:",
"translate-statsf-start": "پيل نېټه:",
+ "translate-statsf-scale": "ظرافت:",
"translate-statsf-scale-months": "مياشتې",
"translate-statsf-scale-weeks": "اونۍ",
"translate-statsf-scale-days": "ورځې",
@@ -66,11 +91,14 @@
"translate-statsf-count-edits": "د سمونو شمېر:",
"translate-statsf-count-users": "فعاله ژباړونکي",
"translate-statsf-count-registrations": "نوي کارنان",
+ "translate-statsf-count-reviews": "د ژباړو بياکتنې",
+ "translate-statsf-count-reviewers": "مخکتونکي",
"translate-statsf-submit": "مخليدنه",
- "translate-tag-category": "د ژباړې وړ مخونه",
"translate-sidebar-alltrans": "په نورو ژبو کې",
"translations": "ټولې ژباړې",
+ "translate-translations-no-message": "\"$1\" يو ژباړل وړ پيغام نه دی",
"translate-translations-none": "د \"$1\" لپاره کومه ژباړه نه شته",
+ "translate-translations-count": "{{PLURAL:$1|يوه ژباړه وموندل شوه|$1 پاړې وموندل شولې}}.",
"translate-translations-fieldset-title": "پيغام",
"translate-translations-messagename": "نوم:",
"translate-translations-project": "پروژه:",
@@ -84,8 +112,8 @@
"translate-langstats-collapseall": "ټول پرځول",
"translate-language-code": "د ژبې کوډ",
"translate-language-code-field-name": "د ژبې کوډ:",
- "translate-suppress-complete": "بشپړه ژباړل شوې پيغام ډلې پټول",
- "translate-ls-noempty": "بشپړه ناژباړل شوې پيغام ډلې پټول",
+ "translate-suppress-complete": "بشپړه ژباړلې پيغام ډلې ځپل",
+ "translate-ls-noempty": "بشپړه ناژباړلې پيغام ډلې ځپل",
"translate-language": "ژبه",
"translate-total": "پيغامونه",
"translate-untranslated": "ناژباړلي",
@@ -97,21 +125,27 @@
"translate-mgs-group": "پيغام ډله:",
"translate-mgs-submit": "شمارنې ښکاره کول",
"translate-mgs-column-language": "ژبه",
+ "translate-mgs-totals": "ټولې ژبې سره يوځای",
"supportedlanguages": "ملاتړې ژبې",
- "supportedlanguages-translators": "{{PLURAL:$2|ژباړن|ژباړونکي}}: $1",
+ "supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|ژباړن}}|ژباړنان}}: $1",
"supportedlanguages-recenttranslations": "تازه ژباړې",
"supportedlanguages-count": "ټولټال $1 {{PLURAL:$1|ژبه|ژبې}}.",
"supportedlanguages-activity": "$1: $2 {{PLURAL:$2|سمون|سمونونه}} - وروستی سمون $3 {{PLURAL:$3|ورځ|ورځې}} دمخه",
+ "abusefilter-edit-builder-vars-translate-source-text": "د ژباړې يوون د سرچينې متن",
"translate-save": "خوندي کول ($1)",
"translate-jssti-add": "لړليک کې گډول",
+ "managemessagegroups": "د پیغام ګروپ مدیریت",
"translate-manage-import-new": "نوی پيغام $1",
"translate-manage-import-deleted": "ړنگ شوی پيغام $1",
+ "translate-manage-action-import": "رالېږدول",
"translate-manage-action-ignore": "بابېزل",
"translate-manage-import-done": "راوړنه بشپړه شوه!",
+ "translate-import-from-local": "د سيمه ايزې دوتنې پورته کېدل:",
"translate-import-load": "دوتنه برسېرول",
+ "translate-import-err-invalid-title": "د ورکړل شوې دوتنې نوم <nowiki>$1</nowiki> ناسم و.",
"translate-js-summary": "لنډيز:",
"translate-js-save": "خوندي کول",
- "translate-js-nonext": "په دې مخ دا وروستی پيغام وو",
+ "translate-js-skip": "بل ته ورتېرېدل",
"translate-js-history": "د ژباړې پېښليک",
"translate-js-support": "پوښتنه پوښتل",
"translate-gs-code": "کوډ",
@@ -121,16 +155,23 @@
"translate-gs-total": "ټولټال",
"translate-documentation-language": "د پيغام لاسوند",
"translate-searchprofile": "ژباړې",
+ "translate-searchprofile-tooltip": "په ټولو ژباړو کې پلټل",
"translate-search-languagefilter": "چاڼگر د ژبې له مخې:",
- "translate-messagereview-submit": "منل",
- "translate-messagereview-progress": "منل کېږي...",
- "translate-messagereview-done": "ومنل شو",
- "translate-messagereview-reviews": "د {{PLURAL:$1|يوه کارن|$1 کارنانو}} لخوا ومنل شو",
+ "log-name-translationreview": "د ژباړې د بياکتنې يادښت",
+ "logentry-translationreview-message": "$1 د $3 د ژباړو {{GENDER:$2|بياکتنه وکړه}}",
+ "group-translate-sandboxed": "ناتاييد شوي ژباړونکي",
+ "group-translate-sandboxed-member": "{{GENDER:$1|ناتاييد شوی ژباړونکی}}",
"translate-workflowstatus": "دريځ: $1",
+ "translate-workflow-set-doing": "امستنې...",
"translate-stats-workflow": "دريځ",
- "translate-gethelp": "لارښود",
+ "translate-dynagroup-recent-label": "تازه ژباړې",
+ "translate-dynagroup-additions-label": "تازه ورگډېدنې",
"translate-msggroupselector-projects": "پيغام ډله",
+ "translate-msggroupselector-search-placeholder": "ډلې پلټل",
"translate-msggroupselector-search-all": "ټول",
+ "translate-msggroupselector-search-recent": "وروستني",
+ "translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|څېرمه ډله|څېرمه ډلې}}",
+ "tux-languageselector": "ژباړه په",
"tux-tab-all": "ټول",
"tux-tab-untranslated": "ناژباړلي",
"tux-tab-outdated": "نېټه اوښتي",
@@ -138,15 +179,71 @@
"tux-edit": "سمول",
"tux-status-translated": "ژباړل شوی",
"tux-status-saving": "خوندي کېږي...",
+ "tux-status-unsaved": "ناخوندي",
+ "tux-editor-placeholder": "ستاسې ژباړه",
+ "tux-editor-editsummary-placeholder": "اختياري لنډيز",
+ "tux-editor-paste-original-button-label": "د سرچينې متن لېښل",
+ "tux-editor-discard-changes-button-label": "بدلونونه غورځول",
+ "tux-editor-save-button-label": "ژباړه خوندي کول",
+ "tux-editor-skip-button-label": "بل ته ورتېرېدل",
"tux-editor-cancel-button-label": "ناگارل",
+ "tux-editor-confirm-button-label": "ژباړه تاييدول",
+ "tux-editor-edit-desc": "لاسوند سمول",
+ "tux-editor-add-desc": "لاسوند ورگډول",
+ "tux-editor-suggestions-title": "وړانديزونه",
+ "tux-editor-in-other-languages": "په نورو ژبو کې",
+ "tux-editor-need-more-help": "نوره مرسته غواړې؟",
"tux-editor-ask-help": "د نورو مالوماتو غوښتنه",
"tux-warnings-more": "{{PLURAL:$1|$1 نور}}",
+ "tux-warnings-hide": "پټول",
+ "tux-editor-n-uses": "$1 {{PLURAL:$1|ځل|ځله}} کارېدلی",
+ "tux-editor-message-desc-more": "نور کتل",
+ "tux-editor-message-desc-less": "لږ کتل",
"tux-editor-clear-translated": "ژباړل شوي پټول",
+ "tux-editor-proofreading-mode": "بياکتل",
+ "tux-editor-translate-mode": "لړليک",
"tux-editor-proofreading-hide-own-translations": "خپلې ژباړې پټول",
"tux-editor-proofreading-show-own-translations": "خپلې ژباړې ښکاره کول",
+ "tux-proofread-action-tooltip": "بياکتل شوي په توگه په نښه کول",
+ "tux-proofread-edit-label": "سمول",
"tux-editor-page-mode": "مخ",
+ "tux-editor-outdated-warning": "دا ژباړه کېدای شي اوسمهالېدنې ته اړتيا ولري.",
+ "tux-editor-outdated-warning-diff-link": "توپيرونه ښکاره کول",
+ "tux-editor-doc-editor-placeholder": "د پيغام لاسوند",
+ "tux-editor-doc-editor-save": "لاسوند خوندي کول",
"tux-editor-doc-editor-cancel": "ناگارل",
"tux-messagetable-more-messages": "$1 {{PLURAL:$1|بل پيغام|نور پيغامونه}}",
+ "tux-messagetable-loading-messages": "{{PLURAL:$1|پيغام|پيغامونه}} رابرسېرېږي...",
+ "tux-message-filter-placeholder": "د چاڼگر لړليک",
+ "tux-message-filter-result": "د \"$2\" لپاره $1 {{PLURAL:$1|پايله وموندل شوه|پايلې وموندل شولې}}",
+ "tux-message-filter-advanced-button": "ژوره پلټنه",
+ "tux-message-filter-optional-messages-label": "اختياري پيغامونه",
+ "tux-proofread-translated-by-self": "ستاسې لخوا ژباړل شوي",
+ "tux-empty-list-all": "دا پيغام ډله تشه ده",
+ "tux-empty-list-all-guide": "د ژباړې لپاره يوه بله پيغام ډله وټاکئ",
+ "tux-empty-list-translated": "ناژباړلي پيغامونه",
+ "tux-empty-list-translated-guide": "تاسې په ژباړه کې مرسته کولی شئ",
"tux-empty-list-translated-action": "ژباړل",
- "tux-empty-list-other": "د ژباړلو لپاره څه نشته."
+ "tux-empty-no-messages-to-display": "د ښکاره کولو لپاره پيغام نشته.",
+ "tux-empty-show-optional-messages": "اختياري پيغامونه ښکاره کول",
+ "tux-empty-nothing-to-proofread": "د بياکتنې لپاره څه نشته",
+ "tux-empty-you-can-help-providing": "تاسې د نوو ژباړو په برابرولو کې مرسته کولی شی",
+ "tux-empty-nothing-new-to-proofread": "د مخکتنې لپاره څه نوي نشته",
+ "tux-empty-you-can-review-already-proofread": "تاسې د پخوا څخه بياکتل شويو ژباړو بياکتنه کولی شی.",
+ "tux-empty-list-other": "د ژباړلو لپاره څه نشته.",
+ "tux-empty-list-other-guide": "تاسې د شته ژباړو په بياکتلو کې مرسته کولی شی",
+ "tux-empty-list-other-action": "د ژباړو بياکتنه",
+ "tux-empty-list-other-link": "ټول پيغامونه ښکاره کول",
+ "tux-editor-close-tooltip": "تړل",
+ "tux-editor-expand-tooltip": "غځول",
+ "tux-editor-collapse-tooltip": "پرځول",
+ "tux-editor-message-tools-history": "پېښليک",
+ "tux-editor-message-tools-delete": "ړنگول",
+ "tux-editor-message-tools-translations": "ټولې ژباړې",
+ "tux-editor-loading": "رابرسېرېږي...",
+ "translate-search-more-languages-info": "$1 {{PLURAL:$1|بله ژبه|نورې ژبې}}",
+ "translate-statsbar-tooltip": "$1% ژباړل شوي، $2% مخکتل شوي",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% ژباړل شوي، $2% مخکتل شوي, $3% نېټه اوښتي",
+ "translate-search-more-groups-info": "$1 {{PLURAL:$1|بله ډله|نورې ډلې}}",
+ "translate-ulsdep-title": "د تنظيمولو تېروتنه"
}
diff --git a/MLEB/Translate/i18n/core/pt-br.json b/MLEB/Translate/i18n/core/pt-br.json
index 4297ed22..058b1fc8 100644
--- a/MLEB/Translate/i18n/core/pt-br.json
+++ b/MLEB/Translate/i18n/core/pt-br.json
@@ -13,25 +13,25 @@
"555",
"Caio1478",
"Fabsouza1",
- "He7d3r"
+ "He7d3r",
+ "Eduardo Addad de Oliveira",
+ "Felipe L. Ewald",
+ "TheEduGobi"
]
},
"translate": "Traduzir",
+ "translate-extensionname": "Traduzir",
"translate-desc": "[[Special:Translate|Página especial]] para traduzir o MediaWiki e mais",
- "translate-taskui-view": "Exibir todas as mensagens",
- "translate-taskui-untranslated": "Exibir mensagens ainda não traduzidas",
- "translate-taskui-optional": "Exibir mensagens opcionais",
- "translate-taskui-acceptqueue": "Apenas as mensagens que eu posso marcar como revisadas",
- "translate-taskui-reviewall": "Revisar todas as traduções",
+ "translate-fuzzybot-desc": "Esta é uma conta de sistema especial utilizada pela extensão de [https://www.mediawiki.org/wiki/Extension:Translate/pt-br Tradução] do MediaWiki, para manter as traduções.\nEsta conta faz parte do programa MediaWiki e não pertence a nenhum usuário.",
"translate-taskui-export-to-file": "Exportar no formato nativo",
"translate-taskui-export-as-po": "Exportar para tradução off-line",
- "translate-taction-translate": "Traduções",
+ "translate-taction-translate": "Traduzir",
"translate-taction-proofread": "Revisar",
"translate-taction-lstats": "Estatísticas de idiomas",
- "translate-taction-mstats": "Estatísticas por grupo de mensagens",
+ "translate-taction-mstats": "Estatísticas do grupo de mensagens",
"translate-taction-export": "Exportar",
"translate-taction-disabled": "Esta ação está desativada neste wiki.",
- "translate-page-no-such-language": "O idioma especificado é inválido",
+ "translate-page-no-such-language": "O idioma especificado é inválido.",
"translate-page-no-such-group": "O grupo especificado é inválido.",
"translate-page-disabled": "As traduções para este idioma, neste grupo, foram desabilitadas.\nMotivo:\n\n<em>$1</em>",
"translate-language-disabled": "As traduções para este idioma estão desativadas.",
@@ -40,18 +40,18 @@
"translate-page-language": "Idioma",
"translate-page-limit": "Limite",
"translate-page-limit-option": "$1 {{PLURAL:$1|mensagem|mensagens}} por página",
- "translate-submit": "Mostrar",
+ "translate-submit": "Obter",
"translate-page-navigation-legend": "Navegação",
"translate-page-showing": "Mostrando as mensagens de $1 a $2 de $3.",
"translate-page-showing-all": "Exibindo $1 {{PLURAL:$1|mensagem|mensagens}}.",
"translate-page-showing-none": "Não há mensagens a serem exibidas.",
+ "translate-page-paging-links": "[ $1 ] [ $2 ]",
"translate-next": "Próxima página",
"translate-prev": "Página anterior",
"translate-page-description-legend": "Informação sobre o grupo",
"translate-page-description-hasoptional": "Este grupo de mensagens possui mensagens opcionais.\nAs mensagens opcionais deverão ser traduzidas apenas quando o seu idioma possuir características especiais\ntais como não usar espaços ou transliterar nomes próprios. $1",
"translate-page-description-hasoptional-open": "Exibir mensagens opcionais.",
"translate-page-edit": "editar",
- "translate-ext-url": "<hr />Website: $1",
"translate-optional": "(opcional)",
"translate-ignored": "(ignorada)",
"translate-edit-title": "Editar \"$1\"",
@@ -61,18 +61,21 @@
"translate-edit-no-information": "<em>Esta mensagem ainda não foi documentada.\nCaso você saiba onde ou como ela é utilizada, poderá ajudar outros tradutores adicionando informações sobre esta mensagem.</em>",
"translate-edit-information": "Informações sobre a mensagem ($1)",
"translate-edit-in-other-languages": "Esta mensagem em outros idiomas",
- "translate-edit-committed": "Tradução disponível no software",
"translate-edit-warnings": "Avisos sobre traduções incompletas",
- "translate-edit-tmsugs": "Sugestões da memória de traduções e de traduções mecânicas",
"translate-edit-tmmatch-source": "Texto de origem da tradução: $1",
"translate-edit-tmmatch": "$1% coincidente",
"translate-use-suggestion": "Substituir a tradução atual por esta sugestão.",
"translate-edit-nopermission": "Você precisa ter direitos de tradução para traduzir mensagens.",
"translate-edit-askpermission": "Obter permissão",
+ "exporttranslations": "Exportar traduções",
+ "translate-export-form-format": "Formato",
+ "translate-export-invalid-format": "Por favor, especifique um formato válido.",
+ "translate-export-not-supported": "A exportação de tradução não é suportada.",
+ "translate-export-format-notsupported": "O formato de exportação especificado não é suportado pelo grupo de mensagens.",
"translate-magic-pagename": "Tradução avançada do MediaWiki",
"translate-magic-help": "Você pode traduzir nomes alternativos de páginas especiais, palavras mágicas e espaços nominais.\n\nOs nomes alternativos de páginas especiais e palavras mágicas podem receber múltiplas traduções.\nAs traduções são separadas por vírgulas (,).\nNomes de espaços nominais podem receber apenas uma tradução.\n\nAs traduções de espaços nominais de discussão de projeto <code>$1 talk</code> podem ser complexas.\n<code>$1</code> é substituído pelo nome do site (por exemplo, <code>{{ns:project_talk}}</code>).\nSe no seu idioma não é possível formar expressões válidas sem alterar o nome do site, contate-nos em [[Support]].\n\nÉ necessário pertencer ao grupo de tradutores para conseguir salvar as alterações.\nAs alterações não serão salvas até que você clique no botão de salvar ao final do formulário.",
"translate-magic-module": "Módulo:",
- "translate-magic-submit": "Mostrar",
+ "translate-magic-submit": "Obter",
"translate-magic-cm-export": "Exportar",
"translate-magic-nothing-to-export": "Não há o que exportar.",
"translate-magic-cm-to-be": "Alterações",
@@ -87,11 +90,11 @@
"translate-magic-namespace": "Nomes de espaços nominais",
"translate-magic-notsaved": "Sua edição não foi salva!",
"translate-magic-errors": "Corrija, na tradução, {{PLURAL:$1|o erro a seguir|os erros a seguir}}:",
- "translate-magic-saved": "Suas alterações foram salvas com êxito.",
+ "translate-magic-saved": "Suas alterações foram salvas.",
"translate-checks-parameters": "{{PLURAL:$2|O parâmetro|Os parâmetros}} a seguir não {{PLURAL:$2|é usado|são usados}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-parameters-unknown": "{{PLURAL:$2|O parâmetro|Os parâmetros}} a seguir {{PLURAL:$2|é desconhecido|são desconhecidos}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-balance": "Há {{PLURAL:$2|um parênteses irregular|$2 parênteses irregulares}}: <strong><nowiki>$1</nowiki></strong>",
- "translate-checks-links": "{{PLURAL:$2|O link a seguir é|Os $2 links a seguir são}} problemáticos:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "{{PLURAL:$2|O link a seguir é problemático|Os $2 links a seguir são problemáticos}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-links-missing": "{{PLURAL:$2|O seguinte link está|Os $2 seguintes links estão}} faltando:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-xhtml": "Corrija {{PLURAL:$2|a seguinte tag pela correta|as seguintes tags}}:\n<strong>$1</strong>",
"translate-checks-plural": "A definição usa <nowiki>{{PLURAL:}}</nowiki>, mas a tradução não.",
@@ -114,7 +117,16 @@
"right-translate-import": "Importar traduções offline",
"action-translate-import": "importar traduções off-line",
"right-translate-messagereview": "Revisar traduções",
+ "action-translate-messagereview": "revisar traduções",
"right-translate-groupreview": "Alterar estado do fluxo de trabalho de grupos de mensagens",
+ "action-translate-groupreview": "alterar o estado do fluxo de trabalho dos grupos de mensagens",
+ "translate-rcfilters-translations": "Traduções",
+ "translate-rcfilters-translations-only-label": "Traduções",
+ "translate-rcfilters-translations-only-desc": "Alterações para páginas traduzidas.",
+ "translate-rcfilters-translations-filter-label": "Não traduções",
+ "translate-rcfilters-translations-filter-desc": "Todas as alterações que não são de traduções.",
+ "translate-rcfilters-translations-site-label": "Mensagens de sistema",
+ "translate-rcfilters-translations-site-desc": "Personalizações das mensagens de sistema no espaço nominal MediaWiki.",
"translate-rc-translation-filter": "Filtrar traduções:",
"translate-rc-translation-filter-no": "Não filtrar",
"translate-rc-translation-filter-only": "Mostrar somente traduções",
@@ -124,7 +136,7 @@
"translate-stats-edits": "Edições",
"translate-stats-users": "Tradutores",
"translate-stats-registrations": "Registros",
- "translate-stats-reviews": "Revisões",
+ "translate-stats-reviews": "Análises",
"translate-stats-reviewers": "Revisores",
"translate-statsf-intro": "É possível gerar estatísticas simples a partir deste formulário.\nTodos os valores têm limites máximos e mínimos.",
"translate-statsf-options": "Opções do gráfico",
@@ -146,9 +158,8 @@
"translate-statsf-language": "Códigos de idiomas, separados por vírgulas:",
"translate-statsf-group": "Códigos de grupos, separados por vírgulas:",
"translate-statsf-submit": "Visualizar",
- "translate-tag-category": "Páginas traduzíveis",
- "translate-tag-page-desc": "Tradução da página wiki [[$2|$1]].",
- "translate-sidebar-alltrans": "Em outras línguas",
+ "translate-tag-page-desc": "Tradução da página wiki [[$2|$1]] de $3 ($4).",
+ "translate-sidebar-alltrans": "Em outros idiomas",
"translations": "Todas as traduções",
"translations-summary": "Insira abaixo o nome de uma mensagem para mostrar todas as traduções disponíveis.",
"translate-translations-no-message": "\"$1\" não é uma mensagem traduzível",
@@ -169,7 +180,7 @@
"translate-langstats-collapse": "recolher",
"translate-langstats-expandall": "expandir todas",
"translate-langstats-collapseall": "recolher todas",
- "translate-language-code": "Configurações de idioma",
+ "translate-language-code": "Código do idioma",
"translate-language-code-field-name": "Código do idioma:",
"translate-suppress-complete": "Omitir grupos de mensagens completamente traduzidos",
"translate-ls-noempty": "Omitir os grupos de mensagens sem tradução iniciada",
@@ -186,18 +197,22 @@
"translate-mgs-group": "Grupo de mensagens:",
"translate-mgs-nocomplete": "Ocultar idiomas com traduções completas",
"translate-mgs-noempty": "Ocultar idiomas sem traduções",
- "translate-mgs-submit": "Ver estatísticas",
+ "translate-mgs-submit": "Mostrar estatísticas",
"translate-mgs-column-language": "Idioma",
- "translate-mgs-totals": "Soma de todos os idiomas",
+ "translate-mgs-totals": "{{PLURAL:$1|A língua em conjunto|Todas as $1 línguas em conjunto}}",
"translate-mgs-invalid-group": "O grupo especificado ($1) não existe.",
"translate-mgs-nothing": "Sem dados para as estatísticas solicitadas.",
"supportedlanguages": "Idiomas suportados",
- "supportedlanguages-summary": "Esta página apresenta uma lista de todas as línguas suportadas por {{SITENAME}},\njunto dos respectivos nomes dos tradutores de cada idioma.\nQuanto maior for exibido um nome, com mais traduções a pessoa terá contribuído.\nA cor do sublinhado é um indicativo de atividades recentes do usuário.",
+ "supportedlanguages-summary": "Esta página apresenta uma lista de todas os idiomas suportados por {{SITENAME}},\njunto dos respectivos nomes dos tradutores de cada idioma.\nQuanto maior for exibido um nome, com mais traduções a pessoa terá contribuído.\nA cor do sublinhado é um indicativo de atividades recentes do usuário.",
"supportedlanguages-colorlegend": "Legenda: última tradução $1 dias atrás.",
- "supportedlanguages-translators": "{{PLURAL:$2|Tradutor|Tradutores}}: $1",
+ "supportedlanguages-portallink": "[$1] $2 - $3",
+ "supportedlanguages-portallink-nocldr": "[$1] $2",
+ "supportedlanguages-sqlite-error": "O SQLite não é suportado",
+ "supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|Tradutor|Tradutora}}|Tradutores}}: $1",
"supportedlanguages-recenttranslations": "traduções recentes",
"supportedlanguages-count": "$1 {{PLURAL:$1|idioma|idiomas}} ao todo.",
"supportedlanguages-activity": "$1: $2 {{PLURAL:$2|edição|edições}} - a última edição foi há $3 {{PLURAL:$3|dia|dias}}",
+ "abusefilter-edit-builder-vars-translate-source-text": "Texto original da unidade de tradução",
"translate-save": "Salvar ($1)",
"translate-jssti-add": "Adicionar à lista",
"managemessagegroups": "Gerenciamento de grupos de mensagens",
@@ -221,7 +236,6 @@
"translate-manage-toolong": "Foi excedido o tempo máximo de $1 {{PLURAL:$1|segundo|segundos}} de processamento.\nReenvie o formulário para continuar processando.",
"translate-manage-import-summary": "Importando uma nova versão a partir de fonte externa",
"translate-manage-conflict-summary": "Importando uma nova versão a partir de fonte externa.\nVerifique-a, por favor.",
- "translate-manage-fuzzy-summary": "A definição da mensagem sofreu alterações",
"translate-manage-submit": "Executar",
"translate-manage-intro-other": "Abaixo está a lista de mudanças de tradução no idioma $1.\nPor favor, revise essas mudanças e escolha uma ação para cada atualização.\nSe optar por ignorar as alterações, esta ação é apenas temporária.",
"translate-manage-import-ok": "Importado: $1",
@@ -230,7 +244,7 @@
"translate-import-from-local": "Enviar arquivo local:",
"translate-import-load": "Enviar arquivo",
"translate-import-err-dl-failed": "Não foi possível obter o arquivo:\n$1",
- "translate-import-err-ul-failed": "O envio do arquivo não foi bem sucedido",
+ "translate-import-err-ul-failed": "O upload do arquivo falhou",
"translate-import-err-invalid-title": "Foi fornecido um nome inválido para o arquivo <nowiki>$1</nowiki>.",
"translate-import-err-no-such-file": "O arquivo <nowiki>$1</nowiki> não existe ou não foi enviado.",
"translate-import-err-stale-group": "O grupo de mensagens a que este arquivo pertence não existe.",
@@ -239,13 +253,11 @@
"translate-js-summary": "Sumário:",
"translate-js-save": "Salvar",
"translate-js-next": "Salvar e abrir a próxima",
- "translate-js-nonext": "Esta foi a última mensagem nesta página.",
"translate-js-skip": "Pular para próxima",
- "translate-js-save-failed": "Falha ao salvar. Relate-nos este erro.",
"translate-js-history": "Histórico de traduções",
"translate-js-support": "Fazer uma pergunta",
"translate-js-support-title": "Peça ajuda se não existir informação suficiente para traduzir esta mensagem de forma correta.",
- "translate-js-support-unsaved-warning": "Há traduções que ainda não foram salvas.",
+ "translate-js-support-unsaved-warning": "Você possui traduções não salvas.",
"translate-gs-pos": "Lugar",
"translate-gs-code": "Código",
"translate-gs-continent": "Continente",
@@ -255,26 +267,12 @@
"translate-gs-count": "Contagem",
"translate-gs-total": "Total",
"translate-gs-avgscore": "Pont. média",
- "translate-documentation-language": "documentação da mensagem",
+ "translate-documentation-language": "Documentação da mensagem",
"translate-searchprofile": "Traduções",
"translate-searchprofile-tooltip": "Pesquisar todas as traduções",
+ "translate-searchprofile-note": "Mais opções de pesquisa estão disponíveis com a [$1 pesquisa de tradução].",
"translate-search-languagefilter": "Filtrar por idioma:",
"translate-search-nofilter": "Não filtrar",
- "translate-messagereview-submit": "Marcar como revisada",
- "translate-messagereview-progress": "Marcando como revisada...",
- "translate-messagereview-failure": "Falha ao marcar como revisado: $1",
- "translate-messagereview-done": "Revisada",
- "translate-messagereview-reviews": "Revisada por {{PLURAL:$1|um usuário|$1 usuários}}",
- "translate-messagereview-reviewswithyou": "Revisada por {{PLURAL:$1|você|$1 usuários, incluindo você}}",
- "api-error-invalidrevision": "A tradução não foi encontrada",
- "api-error-unknownmessage": "A mensagem não foi encontrada",
- "api-error-fuzzymessage": "A tradução está sinalizada como obsoleta",
- "api-error-owntranslation": "Você não pode revisar suas próprias traduções",
- "translate-messagereview-no-fuzzy": "Traduções obsoletas não podem ser revisadas.",
- "translate-messagereview-no-own": "Você não pode marcar suas próprias traduções como revisadas.",
- "translate-messagereview-doit": "Marcar esta tradução como revisada.",
- "group-translate-proofr.css": "/* O CSS colocado aqui afetará apenas os revisores de traduções */",
- "group-translate-proofr.js": "/* O JavaScript colocado aqui afetará apenas os revisores de traduções */",
"log-name-translationreview": "Registro de revisão de traduções",
"log-description-translationreview": "Registro de todas as revisões feitas em traduções e grupos de traduções.",
"logentry-translationreview-message": "$1 {{GENDER:$2|revisou}} a tradução $3",
@@ -284,51 +282,47 @@
"right-translate-sandboxmanage": "Gerenciar usuários em área restrita",
"action-translate-sandboxmanage": "gerenciar usuários em área restrita",
"right-translate-sandboxaction": "Executar ações da lista de permissões para usuários da área de testes",
- "translate-workflow-state-": "(indefinido)",
+ "action-translate-sandboxaction": "executar ações da lista de permissões para usuários da área de testes",
+ "translate-workflow-state-": "(indefinida)",
"translate-workflowstatus": "Status: $1",
- "translate-workflow-set-do": "Definir",
"translate-workflow-set-doing": "Definindo...",
- "translate-workflow-set-done": "Definido!",
- "translate-workflow-set-error-alreadyset": "O estado solicitado já é o estado atual.",
"translate-workflow-autocreated-summary": "Criação automática de página para o status de fluxo de trabalho $1",
- "translate-stats-workflow": "Status",
+ "translate-stats-workflow": "Estado",
"translate-workflowgroup-label": "Status do fluxo de trabalho",
"translate-workflowgroup-desc": "Este grupo de mensagens mostra os status do fluxo de trabalho de traduções.\nOs status são definidos na variável de configuração $wgTranslateWorkflowStates.",
"translate-dynagroup-recent-label": "Traduções recentes",
"translate-dynagroup-recent-desc": "Este grupo de mensagens mostra todas as traduções recentes para este idioma.\nUsado principalmente em tarefas de revisão.",
"translate-dynagroup-additions-label": "Adições recentes",
"translate-dynagroup-additions-desc": "Este grupo de mensagens exibe as mensagens novas e alteradas.",
- "translate-dynagroup-by": "Tradução feita {{GENDER:$1|pelo|pela|por}} $1",
- "translate-dynagroup-byc": "Tradução feita {{GENDER:$1|pelo|pela|por}} $1 ($2)",
- "translate-dynagroup-last": "Última modificação feita {{GENDER:$1|pelo|pela|por}} $1",
- "translate-dynagroup-lastc": "Última modificação feita {{GENDER:$1|pelo|pela|por}} $1 ($2)",
- "translate-gethelp": "Ajuda",
"translate-msggroupselector-projects": "Grupo de mensagens",
"translate-msggroupselector-search-placeholder": "Pesquisar grupos",
- "translate-msggroupselector-search-all": "Todos",
+ "translate-msggroupselector-search-all": "Todas",
"translate-msggroupselector-search-recent": "Recentes",
"translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|subgrupo|subgrupos}}",
"tux-languageselector": "Traduzir para",
- "tux-tab-all": "Tudo",
- "tux-tab-untranslated": "Não traduzido",
- "tux-tab-outdated": "Desatualizado",
+ "tux-tab-all": "Todas",
+ "tux-tab-untranslated": "Não traduzidas",
+ "tux-tab-outdated": "Desatualizadas",
"tux-tab-translated": "Traduzido",
"tux-tab-unproofread": "Não revisado",
"tux-edit": "Editar",
"tux-status-optional": "Opcional",
- "tux-status-fuzzy": "Desatualizado",
- "tux-status-proofread": "Revisado",
+ "tux-status-fuzzy": "Desatualizadas",
+ "tux-status-proofread": "Revisada",
"tux-status-translated": "Traduzido",
- "tux-status-saving": "Salvando...",
+ "tux-status-saving": "Salvando…",
"tux-status-unsaved": "Não salvo",
+ "tux-save-unknown-error": "Ocorreu um erro desconhecido.",
"tux-editor-placeholder": "Sua tradução",
+ "tux-editor-editsummary-placeholder": "Resumo opcional",
"tux-editor-paste-original-button-label": "Colar texto da fonte",
- "tux-editor-discard-changes-button-label": "Descartar mudanças",
+ "tux-editor-discard-changes-button-label": "Descartar alterações",
"tux-editor-save-button-label": "Salvar tradução",
- "tux-editor-skip-button-label": "Pular para seguinte",
+ "tux-editor-skip-button-label": "Pular para próxima",
"tux-editor-cancel-button-label": "Cancelar",
"tux-editor-confirm-button-label": "Confirmar tradução",
- "tux-editor-shortcut-info": "Pressione \"$1\" para salvar, \"$2\" para pular para a mensagem seguinte ou \"$3\" para outros atalhos.",
+ "tux-editor-proofread-button-label": "Marcar como revisado",
+ "tux-editor-shortcut-info": "Pressione \"$1\" para salvar, \"$2\" para pular para a mensagem seguinte, \"$4\" para introduzir um súmario ou \"$3\" para outros atalhos.",
"tux-editor-edit-desc": "Editar documentação",
"tux-editor-add-desc": "Adicionar documentação",
"tux-editor-suggestions-title": "Sugestões",
@@ -339,7 +333,7 @@
"tux-warnings-more": "{{PLURAL:$1|$1 mais}}",
"tux-warnings-hide": "ocultar",
"tux-editor-save-failed": "O salvamento da tradução falhou: $1",
- "tux-editor-n-uses": "usado $1 {{PLURAL:$1|vez|vezes}}",
+ "tux-editor-n-uses": "usada $1 {{PLURAL:$1|vez|vezes}}",
"tux-editor-message-desc-more": "Ver mais",
"tux-editor-message-desc-less": "Ver menos",
"tux-editor-clear-translated": "Ocultar traduzidas",
@@ -376,19 +370,25 @@
"tux-empty-you-can-help-providing": "Você pode ajudar a proporcionar novas traduções",
"tux-empty-nothing-new-to-proofread": "Nada de novo para revisar",
"tux-empty-you-can-review-already-proofread": "Você pode revisar traduções já revisadas por outros.",
- "tux-empty-list-other": "Não há nada para traduzir.",
+ "tux-empty-list-other": "Não há nada para traduzir",
"tux-empty-list-other-guide": "Você pode ajudar a revisar traduções existentes",
"tux-empty-list-other-action": "Revisar traduções",
"tux-empty-list-other-link": "Exibir todas as mensagens",
"tux-editor-close-tooltip": "Fechar",
"tux-editor-expand-tooltip": "Expandir",
"tux-editor-collapse-tooltip": "Recolher",
+ "tux-editor-message-tools-show-editor": "Mostrar no editor wiki",
"tux-editor-message-tools-history": "Histórico",
+ "tux-editor-message-tools-delete": "Excluir",
"tux-editor-message-tools-translations": "Todas as traduções",
- "tux-editor-loading": "Carregando…",
+ "tux-editor-message-tools-linktothis": "Ligação para essa mensagem",
+ "tux-editor-loading": "Carregando...",
"translate-search-more-languages-info": "mais $1 {{PLURAL:$1|idioma|idiomas}}",
"translate-statsbar-tooltip": "$1% traduzido, $2% revisado",
"translate-statsbar-tooltip-with-fuzzy": "$1% traduzido, $2% revisado, $3% desatualizado",
"translate-search-more-groups-info": "mais $1 {{PLURAL:$1|grupo|grupos}}",
- "translate-ulsdep-body": "A extensão Translate depende da extensão [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector Universal Language Selector]."
+ "translate-ulsdep-title": "Ero de configuração",
+ "translate-ulsdep-body": "A extensão Translate depende da extensão [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector Universal Language Selector].",
+ "tux-session-expired": "Você não está logado. Por favor entre em uma aba separada. Alternativamente, faça uma cópia das traduções não salvos, faça o login, retorne a esta página e inserir as traduções novamente.",
+ "tux-nojs": "Esta ferramenta não funciona sem o JavaScript. Ou o JavaScript está desativado, ou não funcionou, ou este browser não é suportado."
}
diff --git a/MLEB/Translate/i18n/core/pt.json b/MLEB/Translate/i18n/core/pt.json
index 1c9ee3e6..856aa33e 100644
--- a/MLEB/Translate/i18n/core/pt.json
+++ b/MLEB/Translate/i18n/core/pt.json
@@ -12,16 +12,13 @@
"SandroHc",
"Waldir",
"555",
- "Vitorvicentevalente"
+ "Vitorvicentevalente",
+ "Athena in Wonderland"
]
},
"translate": "Traduzir",
"translate-desc": "[[Special:Translate|Página especial]] para traduzir o MediaWiki e outras aplicações",
- "translate-taskui-view": "Mostrar todas as mensagens",
- "translate-taskui-untranslated": "Mostrar as mensagens não traduzidas",
- "translate-taskui-optional": "Mostrar as mensagens opcionais",
- "translate-taskui-acceptqueue": "Só as mensagens que posso marcar como revistas",
- "translate-taskui-reviewall": "Rever todas as traduções",
+ "translate-fuzzybot-desc": "Esta é uma conta de sistema especial utilizada pela extensão de [https://www.mediawiki.org/wiki/Extension:Translate/pt Tradução] do MediaWiki, para manter as traduções.\nEsta conta faz parte do programa MediaWiki e não pertence a nenhum utilizador.",
"translate-taskui-export-to-file": "Exportar no formato original",
"translate-taskui-export-as-po": "Exportar para tradução ''off-line''",
"translate-taction-translate": "Traduzir",
@@ -39,7 +36,7 @@
"translate-page-language": "Língua",
"translate-page-limit": "Limite",
"translate-page-limit-option": "$1 {{PLURAL:$1|mensagem|mensagens}} por página",
- "translate-submit": "Procurar",
+ "translate-submit": "Obter",
"translate-page-navigation-legend": "Navegação",
"translate-page-showing": "A apresentar as mensagens $1 a $2 de $3.",
"translate-page-showing-all": "A apresentar $1 {{PLURAL:$1|mensagem|mensagens}}.",
@@ -50,7 +47,6 @@
"translate-page-description-hasoptional": "Este grupo contém mensagens opcionais.\nAs mensagens opcionais só devem ser traduzidas quando a sua língua tem requisitos especiais, como o não usar espaços ou a transliteração de nomes próprios. $1",
"translate-page-description-hasoptional-open": "Mostrar as mensagens opcionais.",
"translate-page-edit": "editar",
- "translate-ext-url": "<hr />Sítio na Internet: $1",
"translate-optional": "(opcional)",
"translate-ignored": "(ignorada)",
"translate-edit-title": "Editar \"$1\"",
@@ -60,18 +56,21 @@
"translate-edit-no-information": "<em>Esta mensagem ainda não foi documentada.\nCaso saiba onde ou como ela é utilizada, pode ajudar os outros tradutores acrescentando as informações necessárias nesta mensagem.</em>",
"translate-edit-information": "Informações sobre a mensagem ($1)",
"translate-edit-in-other-languages": "Esta mensagem noutras línguas",
- "translate-edit-committed": "Tradução atualmente disponível no software",
"translate-edit-warnings": "Avisos sobre traduções incompletas",
- "translate-edit-tmsugs": "Sugestões da memória de traduções",
"translate-edit-tmmatch-source": "Texto de origem da tradução: $1",
"translate-edit-tmmatch": "$1% coincidente",
"translate-use-suggestion": "Substituir a tradução atual por esta sugestão.",
"translate-edit-nopermission": "Precisa de ter direitos de tradutor para traduzir mensagens.",
"translate-edit-askpermission": "Obter permissão",
+ "exporttranslations": "Exportar traduções",
+ "translate-export-form-format": "Formato",
+ "translate-export-invalid-format": "Por favor, especifique um formato válido.",
+ "translate-export-not-supported": "A exportação de traduções não é suportada.",
+ "translate-export-format-notsupported": "O formato de exportação especificado não é suportado pelo grupo de mensagens.",
"translate-magic-pagename": "Tradução extra do MediaWiki",
- "translate-magic-help": "Pode traduzir nomes alternativos de páginas especiais, palavras mágicas e nomes de espaços nominais.\n\nOs nomes alternativos de páginas especiais e as palavras mágicas podem ter várias traduções.\nAs traduções são separadas por vírgulas (,).\nOs nomes de espaços nominais só podem ter uma tradução.\n\nNas traduções de espaços nominais, a partícula <code>$1 talk</code> é especial. <code>$1</code> é substituído pelo nome do site (por exemplo, <code>{{ns:project_talk}}</code>).\nSe não é possível formar na sua língua expressões válidas sem alterar o nome do site, por favor, informe-nos em [[Support|Suporte]].\n\nÉ necessário pertencer ao grupo de tradutores para conseguir gravar as alterações.\nAs alterações não serão gravadas até clicar no botão de gravar abaixo.",
+ "translate-magic-help": "Pode traduzir nomes alternativos de páginas especiais, palavras mágicas e nomes de espaços nominais.\n\nOs nomes alternativos de páginas especiais e as palavras mágicas podem ter várias traduções.\nAs traduções são separadas por vírgulas (,).\nOs nomes de espaços nominais só podem ter uma tradução.\n\nNas traduções de espaços nominais, a partícula <code>$1 talk</code> é especial. <code>$1</code> é substituído pelo nome do sítio (por exemplo, <code>{{ns:project_talk}}</code>).\nSe não é possível formar na sua língua expressões válidas sem alterar o nome do sítio, por favor, informe-nos em [[Support|Suporte]].\n\nÉ necessário pertencer ao grupo de tradutores para conseguir gravar as alterações.\nAs alterações não serão gravadas até clicar no botão de gravar abaixo.",
"translate-magic-module": "Módulo:",
- "translate-magic-submit": "Procurar",
+ "translate-magic-submit": "Obter",
"translate-magic-cm-export": "Exportar",
"translate-magic-nothing-to-export": "Não há nada para exportar.",
"translate-magic-cm-to-be": "Novo",
@@ -86,12 +85,12 @@
"translate-magic-namespace": "Nomes de domínios",
"translate-magic-notsaved": "A sua edição não foi gravada!",
"translate-magic-errors": "Por favor, corrija {{PLURAL:$1|o seguinte erro|os seguintes erros}} na tradução:",
- "translate-magic-saved": "As suas alterações foram gravadas com sucesso.",
+ "translate-magic-saved": "As suas alterações foram gravadas.",
"translate-checks-parameters": "{{PLURAL:$2|O seguinte parâmetro não é usado|Os seguintes parâmetros não são usados}}: <strong><nowiki>$1</nowiki></strong>",
"translate-checks-parameters-unknown": "{{PLURAL:$2|O seguinte parâmetro é desconhecido|Os seguintes parâmetros são desconhecidos}}:\n<strong><nowiki>$1</nowiki></strong>",
- "translate-checks-balance": "Há {{PLURAL:$2|um parênteses irregular|$2 parênteses irregulares}}: <strong><nowiki>$1</nowiki></strong>",
- "translate-checks-links": "{{PLURAL:$2|A seguinte ligação tem|As seguintes $2 ligações têm}} problemas: <strong><nowiki>$1</nowiki></strong>",
- "translate-checks-links-missing": "{{PLURAL:$2|Falta a seguinte ligação|Faltam as seguintes $2 ligações}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Há {{PLURAL:$2|um parêntese irregular|$2 parênteses irregulares}}: <strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "{{PLURAL:$2|A seguinte hiperligação tem|As seguintes $2 hiperligações têm}} problemas: <strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "{{PLURAL:$2|Falta a seguinte hiperligação|Faltam as seguintes $2 hiperligações}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-xhtml": "Por favor, corrija {{PLURAL:$2|a seguinte marcação|as seguintes marcações}}:\n<strong>$1</strong>",
"translate-checks-plural": "A definição usa <nowiki>{{PLURAL:}}</nowiki>, mas a tradução não.",
"translate-checks-plural-forms": "<nowiki>{{PLURAL:}}</nowiki> recebeu {{PLURAL:$1|uma grafia|$1 grafias}}, mas {{PLURAL:$2|só é permitida uma grafia|são permitidas $2 grafias}} (excluindo as formas 0= e 1=).",
@@ -102,7 +101,7 @@
"translate-checks-parametersnotequal": "O número de parâmetros é {{PLURAL:$1|$1}} mas devia ser {{PLURAL:$2|$2}}.",
"translate-checks-malformed": "<nowiki>$1</nowiki> está incorreto.",
"translate-checks-fudforum-syntax": "Use <nowiki>$1</nowiki> em vez de <nowiki>$2</nowiki> neste projeto.",
- "translate-pref-nonewsletter": "Não me enviar ''newsletters'' por correio electrónico",
+ "translate-pref-nonewsletter": "Não me enviar ''newsletters'' por correio eletrónico",
"translate-pref-editassistlang": "Línguas de auxílio:",
"prefs-translate": "Opções de tradução",
"translate-pref-editassistlang-help": "Lista de códigos de língua separados por vírgulas.\nQuando estiver a traduzir, ser-lhe-ão também apresentadas as traduções para estas línguas.\nA lista por omissão depende da sua língua.",
@@ -113,8 +112,17 @@
"right-translate-import": "Importar traduções ''off-line''",
"action-translate-import": "importar traduções ''off-line''",
"right-translate-messagereview": "Rever traduções",
+ "action-translate-messagereview": "rever traduções",
"right-translate-groupreview": "Alterar o estado do fluxo de trabalho de grupos de mensagens",
- "translate-rc-translation-filter": "Filtro de traduções:",
+ "action-translate-groupreview": "alterar o estado do fluxo de trabalho de grupos de mensagens",
+ "translate-rcfilters-translations": "Traduções",
+ "translate-rcfilters-translations-only-label": "Traduções",
+ "translate-rcfilters-translations-only-desc": "Alterações a páginas traduzidas.",
+ "translate-rcfilters-translations-filter-label": "Não traduções",
+ "translate-rcfilters-translations-filter-desc": "Todas as alterações que não são de traduções.",
+ "translate-rcfilters-translations-site-label": "Mensagens de sistema",
+ "translate-rcfilters-translations-site-desc": "Personalizações das mensagens de sistema no espaço nominal MediaWiki.",
+ "translate-rc-translation-filter": "Filtrar traduções:",
"translate-rc-translation-filter-no": "Não filtrar",
"translate-rc-translation-filter-only": "Mostrar apenas traduções",
"translate-rc-translation-filter-filter": "Não mostrar traduções",
@@ -127,8 +135,8 @@
"translate-stats-reviewers": "Revisores",
"translate-statsf-intro": "Pode gerar estatísticas simples usando este formulário.\nTodos os valores têm limites máximos e mínimos.",
"translate-statsf-options": "Opções do gráfico",
- "translate-statsf-width": "Largura em pixels:",
- "translate-statsf-height": "Altura em pixels:",
+ "translate-statsf-width": "Largura em píxeis:",
+ "translate-statsf-height": "Altura em píxeis:",
"translate-statsf-days": "Período de tempo em dias:",
"translate-statsf-start": "Data de início:",
"translate-statsf-scale": "Escala:",
@@ -145,7 +153,6 @@
"translate-statsf-language": "Lista de códigos de língua, separados por vírgulas:",
"translate-statsf-group": "Lista de códigos de grupo, separados por vírgulas:",
"translate-statsf-submit": "Gerar gráfico",
- "translate-tag-category": "Páginas traduzíveis",
"translate-tag-page-desc": "Tradução da página wiki [[$2|$1]] de $3 ($4).",
"translate-sidebar-alltrans": "Noutras línguas",
"translations": "Todas as traduções",
@@ -160,7 +167,7 @@
"translate-translations-history-short": "h",
"languagestats": "Estatísticas de tradução por língua",
"languagestats-summary": "Esta página mostra estatísticas de tradução para todos os grupos de mensagens de uma língua.",
- "messagegroupstats-summary": "Esta página mostra as estatísticas de grupo de mensagens.",
+ "messagegroupstats-summary": "Esta página mostra as estatísticas de grupos de mensagens.",
"languagestats-stats-for": "Estatísticas de tradução para $1 ($2).",
"languagestats-recenttranslations": "traduções recentes",
"translate-langstats-incomplete": "Algumas das estatísticas desta página estão incompletas. Por favor recarregue a página para obter mais estatísticas.",
@@ -176,27 +183,29 @@
"translate-total": "Mensagens (total)",
"translate-untranslated": "Não traduzidas",
"translate-percentage-complete": "Progresso",
- "translate-percentage-fuzzy": "Desactualizadas",
+ "translate-percentage-fuzzy": "Desatualizadas",
"translate-languagestats-overall": "Todos os grupos de mensagens em conjunto",
"translate-ls-submit": "Mostrar estatísticas",
"translate-ls-column-group": "Grupo de mensagens",
- "translate-mgs-pagename": "Estatísticas do grupo de mensagens",
+ "translate-mgs-pagename": "Estatísticas dos grupos de mensagens",
"translate-mgs-fieldset": "Preferências",
"translate-mgs-group": "Grupo de mensagens:",
"translate-mgs-nocomplete": "Ocultar línguas com traduções completas",
"translate-mgs-noempty": "Ocultar línguas sem traduções",
"translate-mgs-submit": "Ver estatísticas",
"translate-mgs-column-language": "Língua",
- "translate-mgs-totals": "Todas as línguas em conjunto",
+ "translate-mgs-totals": "{{PLURAL:$1|A língua em conjunto|Todas as $1 línguas em conjunto}}",
"translate-mgs-invalid-group": "O grupo especificado ($1) não existe.",
"translate-mgs-nothing": "Sem dados para as estatísticas solicitadas.",
"supportedlanguages": "Línguas suportadas",
- "supportedlanguages-summary": "Esta página lista todas as línguas suportadas pela {{SITENAME}},\ncom os nomes dos tradutores de cada língua.\nQuanto mais traduções feitas por um tradutor, maior será o seu nome.\nA cor do sublinhado indica quão recentemente o tradutor esteve ativo aqui.",
+ "supportedlanguages-summary": "Esta página lista todas as línguas suportadas pela wiki {{SITENAME}},\ncom os nomes dos tradutores de cada língua.\nQuanto mais traduções feitas por um tradutor, maior será o seu nome.\nA cor do sublinhado indica o quanto recentemente o tradutor esteve ativo aqui.",
"supportedlanguages-colorlegend": "Legenda das cores: última tradução há $1 dias.",
+ "supportedlanguages-sqlite-error": "O SQLite não é suportado",
"supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|Tradutor|Tradutora}}|Tradutores}}: $1",
"supportedlanguages-recenttranslations": "traduções recentes",
"supportedlanguages-count": "$1 {{PLURAL:$1|língua|línguas}} no total.",
"supportedlanguages-activity": "$1: $2 {{PLURAL:$2|edição|edições}} - a última edição foi há $3 {{PLURAL:$3|dia|dias}}",
+ "abusefilter-edit-builder-vars-translate-source-text": "Texto de origem da unidade de tradução",
"translate-save": "Gravar ($1)",
"translate-jssti-add": "Adicionar à lista",
"managemessagegroups": "Administração de grupos de mensagens",
@@ -204,7 +213,7 @@
"translate-smg-nochanges": "Não há alterações para processar.",
"translate-smg-submit": "Enviar alterações para processamento",
"translate-smg-submitted": "Foram atualizadas definições de mensagens. As alterações estão a ser processadas em segundo plano.",
- "translate-smg-more": "Haverá mais mudanças no processo depois de submeter estas alterações.",
+ "translate-smg-more": "Haverá mais mudanças no processo depois de enviar estas alterações.",
"translate-smg-left": "Conteúdo da mensagem na wiki",
"translate-smg-right": "Alterações recebidas",
"translate-manage-import-diff": "Mensagem $1 | Ações: $2",
@@ -215,12 +224,11 @@
"translate-manage-action-ignore": "Ignorar",
"translate-manage-action-fuzzy": "Importar e marcar para revisão",
"translate-manage-nochanges": "Não há alterações nas definições das mensagens deste grupo.",
- "translate-manage-nochanges-other": "Não houve alterações para esta língua.\nUse a ligação abaixo para voltar aos detalhes do grupo.",
- "translate-manage-inconsistent": "Foi detectada uma inconsistência no pedido.\nPor favor, verifique se houve alterações e tente novamente.\nDetalhes: $1.",
+ "translate-manage-nochanges-other": "Não houve alterações para esta língua.\nUse a hiperligação abaixo para voltar aos detalhes do grupo.",
+ "translate-manage-inconsistent": "Foi detetada uma inconsistência no pedido.\nPor favor, verifique se houve alterações e tente novamente.\nDetalhes: $1.",
"translate-manage-toolong": "O tempo máximo de $1 {{PLURAL:$1|segundo|segundos}} de processamento foi excedido.\nPor favor, reenvie o formulário para continuar o processamento.",
"translate-manage-import-summary": "Importando uma nova versão de fonte externa",
"translate-manage-conflict-summary": "Importando uma nova versão de fonte externa.\nVerifique-a, por favor.",
- "translate-manage-fuzzy-summary": "A definição da mensagem sofreu alterações",
"translate-manage-submit": "Executar",
"translate-manage-intro-other": "Abaixo está uma lista de alterações de traduções na língua $1.\nPor favor, reveja as alterações e escolha a ação que quer tomar para cada atualização.\nSe escolher ignorar as alterações, esta ação será somente temporária.",
"translate-manage-import-ok": "Importado: $1",
@@ -235,12 +243,10 @@
"translate-import-err-stale-group": "O grupo de mensagens a que este ficheiro pertence não existe.",
"translate-import-err-no-headers": "O ficheiro não é um ficheiro Gettext válido, com o formato da extensão Translate:\nNão foi possível determinar o grupo e a língua a partir dos cabeçalhos.",
"translate-import-err-warnings": "Este ficheiro não é válido.\nCertifique-se de que o seu editor não remove os campos msgctxt.\nDetalhes: $1",
- "translate-js-summary": "Sumário:",
+ "translate-js-summary": "Resumo:",
"translate-js-save": "Gravar",
"translate-js-next": "Gravar e abrir a seguinte",
- "translate-js-nonext": "Esta foi a última mensagem nesta página.",
"translate-js-skip": "Saltar para a seguinte",
- "translate-js-save-failed": "A gravação falhou. Por favor, informe-nos deste erro.",
"translate-js-history": "Histórico de traduções",
"translate-js-support": "Fazer pergunta",
"translate-js-support-title": "Peça ajuda se não existir informação suficiente para traduzir esta mensagem corretamente.",
@@ -257,21 +263,9 @@
"translate-documentation-language": "ajuda de tradução",
"translate-searchprofile": "Traduções",
"translate-searchprofile-tooltip": "Pesquisar todas as traduções",
+ "translate-searchprofile-note": "Mais opções de procura estão disponíveis através da [$1 pesquisa de traduções].",
"translate-search-languagefilter": "Filtrar por língua:",
"translate-search-nofilter": "Não filtrar",
- "translate-messagereview-submit": "Marcar como revista",
- "translate-messagereview-progress": "A marcar como revista...",
- "translate-messagereview-failure": "Erro ao marcar como revista: $1",
- "translate-messagereview-done": "Revista",
- "translate-messagereview-reviews": "Revista por {{PLURAL:$1|um utilizador|$1 utilizadores}}",
- "translate-messagereview-reviewswithyou": "Revista por {{PLURAL:$1|si|$1 utilizadores, incluindo você}}",
- "api-error-invalidrevision": "A tradução não foi encontrada",
- "api-error-unknownmessage": "A mensagem não foi encontrada",
- "api-error-fuzzymessage": "A tradução ainda está sinalizada com FUZZY",
- "api-error-owntranslation": "Não pode marcar as suas próprias traduções como revistas",
- "translate-messagereview-no-fuzzy": "Não se podem marcar como revistas traduções sinalizadas com FUZZY",
- "translate-messagereview-no-own": "Não pode marcar as suas próprias traduções como revistas.",
- "translate-messagereview-doit": "Marcar esta tradução como revista.",
"log-name-translationreview": "Registo de revisão de traduções",
"log-description-translationreview": "Registo de todas as revisões de traduções e de grupos de traduções.",
"logentry-translationreview-message": "$1 {{GENDER:$2|reviu}} a tradução $3",
@@ -284,10 +278,7 @@
"action-translate-sandboxaction": "executar ações permitidas para utilizadores da área de testes",
"translate-workflow-state-": "(indefinido)",
"translate-workflowstatus": "Estado: $1",
- "translate-workflow-set-do": "Ativar",
"translate-workflow-set-doing": "A ativar...",
- "translate-workflow-set-done": "Terminado!",
- "translate-workflow-set-error-alreadyset": "O estado solicitado é idêntico ao estado atual.",
"translate-workflow-autocreated-summary": "Criação automática de página para o estado \"$1\" do fluxo de trabalho",
"translate-stats-workflow": "Estado",
"translate-workflowgroup-label": "Estados do fluxo de trabalho",
@@ -296,11 +287,6 @@
"translate-dynagroup-recent-desc": "Este grupo de mensagens mostra todas as traduções recentes para esta língua.\nÉ útil sobretudo para as tarefas de revisão.",
"translate-dynagroup-additions-label": "Adições recentes",
"translate-dynagroup-additions-desc": "Este grupo de mensagens mostra as mensagens novas e modificadas.",
- "translate-dynagroup-by": "Tradução feita por {{GENDER:$1|$1}}",
- "translate-dynagroup-byc": "Tradução feita por {{GENDER:$1|$1}} ($2)",
- "translate-dynagroup-last": "Última modificação feita por {{GENDER:$1|$1}}",
- "translate-dynagroup-lastc": "Última modificação feita por {{GENDER:$1|$1}} ($2)",
- "translate-gethelp": "Ajuda",
"translate-msggroupselector-projects": "Grupo de mensagens",
"translate-msggroupselector-search-placeholder": "Pesquisar grupos",
"translate-msggroupselector-search-all": "Todos",
@@ -319,14 +305,17 @@
"tux-status-translated": "Traduzida",
"tux-status-saving": "A gravar...",
"tux-status-unsaved": "Não gravada",
+ "tux-save-unknown-error": "Ocorreu um erro desconhecido.",
"tux-editor-placeholder": "A sua tradução",
+ "tux-editor-editsummary-placeholder": "Resumo opcional",
"tux-editor-paste-original-button-label": "Inserir o texto original",
"tux-editor-discard-changes-button-label": "Rejeitar alterações",
"tux-editor-save-button-label": "Gravar tradução",
"tux-editor-skip-button-label": "Saltar para a seguinte",
"tux-editor-cancel-button-label": "Cancelar",
"tux-editor-confirm-button-label": "Confirmar a tradução",
- "tux-editor-shortcut-info": "Prima \"$1\" para gravar ou \"$2\" para saltar para a mensagem seguinte ou \"$3\" para outros atalhos.",
+ "tux-editor-proofread-button-label": "Marcar como revista",
+ "tux-editor-shortcut-info": "Prima \"$1\" para gravar ou \"$2\" para saltar para a mensagem seguinte ou \"$4\" para fornecer um resumo ou \"$3\" para outros atalhos.",
"tux-editor-edit-desc": "Editar a documentação",
"tux-editor-add-desc": "Adicionar documentação",
"tux-editor-suggestions-title": "Sugestões",
@@ -381,15 +370,18 @@
"tux-editor-close-tooltip": "Fechar",
"tux-editor-expand-tooltip": "Expandir",
"tux-editor-collapse-tooltip": "Recolher",
+ "tux-editor-message-tools-show-editor": "Mostrar no editor wiki",
"tux-editor-message-tools-history": "Histórico",
"tux-editor-message-tools-delete": "Eliminar",
"tux-editor-message-tools-translations": "Todas as traduções",
+ "tux-editor-message-tools-linktothis": "Hiperligação para esta mensagem",
"tux-editor-loading": "A carregar…",
"translate-search-more-languages-info": "mais $1 {{PLURAL:$1|língua|línguas}}",
"translate-statsbar-tooltip": "$1% traduzidas, $2% revistas",
"translate-statsbar-tooltip-with-fuzzy": "$1% traduzidas, $2% revistas, $3% desatualizadas",
"translate-search-more-groups-info": "mais $1 {{PLURAL:$1|grupo|grupos}}",
"translate-ulsdep-title": "Erro de configuração",
- "translate-ulsdep-body": "A tradução da extensão depende da [https://www.mediawiki.org/wiki/Extension:UniversalLanguageSelector extensão Seletor Universal de Idiomas].",
- "tux-session-expired": "Não está mais autenticado. Por favor, inicie a sessão num outro separador. Em alternativa, faça uma cópia das traduções que não foram gravadas, inicie sessão e regresse a esta página."
+ "translate-ulsdep-body": "A extensão de tradução depende da [https://www.mediawiki.org/wiki/Extension:UniversalLanguageSelector extensão Universal Language Selector].",
+ "tux-session-expired": "Não está mais autenticado. Por favor, inicie a sessão num outro separador. Em alternativa, faça uma cópia das traduções que não foram gravadas, inicie sessão e regresse a esta página para inserir as suas traduções novamente.",
+ "tux-nojs": "Esta ferramenta não funciona sem o JavaScript. Ou o JavaScript está desativado, ou não funcionou, ou este browser não é suportado."
}
diff --git a/MLEB/Translate/i18n/core/qqq.json b/MLEB/Translate/i18n/core/qqq.json
index 5001e20b..62849ed0 100644
--- a/MLEB/Translate/i18n/core/qqq.json
+++ b/MLEB/Translate/i18n/core/qqq.json
@@ -35,16 +35,17 @@
"아라",
"555",
"Liuxinyu970226",
- "Tacsipacsi"
+ "Tacsipacsi",
+ "Matma Rex",
+ "Robby",
+ "Mar(c)",
+ "MarcoAurelio"
]
},
"translate": "{{doc-special|Translate}}\nIt is the verb \"to translate\".\n{{Identical|Translate}}",
+ "translate-extensionname": "{{name}}",
"translate-desc": "{{desc|name=Translate|url=https://www.mediawiki.org/wiki/Extension:Translate}}",
- "translate-taskui-view": "Task in [[Special:Translate]] on action Translate.\n{{Identical|Show all messages}}",
- "translate-taskui-untranslated": "Task in [[Special:Translate]] on action Translate",
- "translate-taskui-optional": "Task in [[Special:Translate]] on action Translate.\n{{Identical|Show optional message}}",
- "translate-taskui-acceptqueue": "Task in [[Special:Translate]] on action Review - only shown to users who are allowed to accept translations\n\nGoes together with {{msg-mw|translate-taskui-reviewall}}",
- "translate-taskui-reviewall": "Task in [[Special:Translate]] on action Review",
+ "translate-fuzzybot-desc": "Text to display on [[User:FuzzyBot]].",
"translate-taskui-export-to-file": "Task in [[Special:Translate]] on action Export",
"translate-taskui-export-as-po": "Task in [[Special:Translate]] on action Export",
"translate-taction-translate": "A tab text used in Special pages [[Special:Translate]], [[Special:LanguageStats]] and [[Special:MessageGroupStats]].\n{{Identical|Translate}}",
@@ -53,7 +54,7 @@
"translate-taction-mstats": "A tab text used in Special pages [[Special:Translate]], [[Special:LanguageStats]] and [[Special:MessageGroupStats]].",
"translate-taction-export": "A tab text used in Special pages [[Special:Translate]], [[Special:LanguageStats]] and [[Special:MessageGroupStats]].\n{{Identical|Export}}",
"translate-taction-disabled": "Shown instead of the radio buttons for tasks when all tasks related to this action has been disabled.",
- "translate-page-no-such-language": "Shown when someone requests a language that doesn't exists. Examples:\n* Special:LanguageStats, under the selectors [{{FULLURL:Special:LanguageStats|language=ugagaga}}]\n* Special:Translate until 2013, next to the language dropdown [//translatewiki.net/w/i.php?title=Special:Translate&tux=0&group=out-blockly-0-all&language=ugagaga]",
+ "translate-page-no-such-language": "Shown when someone requests a language that doesn't exist. Examples:\n* Special:LanguageStats, under the selectors [{{FULLURL:Special:LanguageStats|language=ugagaga}}]\n* Special:Translate until 2013, next to the language dropdown [//translatewiki.net/w/i.php?title=Special:Translate&tux=0&group=out-blockly-0-all&language=ugagaga]",
"translate-page-no-such-group": "Shown when someone requests a group that doesn't exists. [{{FULLURL:Special:Translate|group=invalidgroup}} Example].",
"translate-page-disabled": "Parameters:\n* $1 - reason that the language has been blacklisted",
"translate-language-disabled": "Shown when someone requests a blacklisted language. [{{FULLURL:Special:Translate|group=mediawiki&language=zh-tw}} Example].",
@@ -70,10 +71,10 @@
"translate-page-paging-links": "{{optional}}\nParameters:\n* $1 - a link which points to the previous page\n* $2 - a link which points to the next page",
"translate-next": "{{Identical|Next page}}",
"translate-prev": "{{Identical|Previous page}}",
+ "translate-page-description-legend": "Used as a legend (heading for a fieldset) in the legacy Special:Translate interface.",
"translate-page-description-hasoptional": "Parameters:\n* $1 - a link with {{msg-mw|translate-page-description-hasoptional-open}} as the text",
"translate-page-description-hasoptional-open": "Link text for message {{msg-mw|translate-page-description-hasoptional}}\n{{Identical|Show optional message}}",
"translate-page-edit": "{{Identical|Edit}}",
- "translate-ext-url": "Unused at this time. Parameters:\n* $1 - URL\n{{Identical|Website}}",
"translate-optional": "{{Identical|Optional}}",
"translate-ignored": "{{Identical|Ignore}}",
"translate-edit-title": "Used as a tooltip for edit links in lists with translatable messages. Parameters:\n* $1 is the name of the page to be edited.\n{{Identical|Edit}}",
@@ -83,13 +84,17 @@
"translate-edit-no-information": "Message is used as a hint to translators that documentation for a message without documentation is needed.",
"translate-edit-information": "Caption for box which contains information about the message. $1 is {{msg-mw|translate-edit-contribute}}.",
"translate-edit-in-other-languages": "Caption for box which contains translation of message in other languages.",
- "translate-edit-warnings": "Title of the warnings box when editing a message.\nThis box list the problems found in the translation.",
+ "translate-edit-warnings": "Title of the warnings box when editing a message.\nThis box lists the problems found in the translation.",
"translate-edit-tmmatch-source": "Used as tooltip for the message {{msg-mw|translate-edit-tmmatch}} in the translation suggestions by the server.\n\nParameters:\n* $1 - translation source text",
"translate-edit-tmmatch": "This message is displayed in the translation interface when there is suggestions from translation memory.\n\nParameters:\n* $1 - number between 1 and 100\n{{Identical|Match}}",
"translate-use-suggestion": "Used as a tooltip for the \"down arrow\" to insert translation suggestions in the translation edit page.",
"translate-edit-nopermission": "Followed by link text {{msg-mw|Translate-edit-askpermission}}.",
"translate-edit-askpermission": "Used as link text.\n\nPreceded by {{msg-mw|Translate-edit-nopermission}}.",
- "translate-edit-tag-warning": "{{notranslate}}\nShown when editing translatable pages. Default is empty.",
+ "exporttranslations": "Title of [[Special:ExportTranslations]]",
+ "translate-export-form-format": "Label of form field on [[Special:ExportTranslations]].\n{{Identical|Format}}",
+ "translate-export-invalid-format": "Validation error shown on [[Special:ExportTranslations]].",
+ "translate-export-not-supported": "Validation error shown on [[Special:ExportTranslations]]",
+ "translate-export-format-notsupported": "Validation error shown on [[Special:ExportTranslations]]",
"translate-magic-pagename": "\"Extended\" can as well be understood as \"Extra\" or \"Special\" or \"Advanced\". It refers to the translations of pieces of text such as names of namespaces or special pages, which are not part of normal message or wiki page translation.\n\nUsed in {{msg-mw|Translate-magic-cm-updatedusing}}.",
"translate-magic-help": "Description of [[Special:AdvancedTranslate]].\n\n<code>$1</code> is not a parameter; appears as is.",
"translate-magic-module": "Label on drop-down box on [[Special:AdvancedTranslate]].\n{{Identical|Module}}",
@@ -102,9 +107,13 @@
"translate-magic-cm-comment": "On [[Special:AdvancedTranslate]].\n\n{{Identical|Comment}}",
"translate-magic-cm-save": "Button text on [[Special:AdvancedTranslate]].\n\n{{Identical|Save}}",
"translate-magic-cm-updatedusing": "Used as comment(?).\n\nRefers to {{msg-mw|Translate-magic-pagename}}.",
+ "translate-magic-cm-savefailed": "Error message on [[Special:AdvancedTranslate]] when saving changes fails.",
"translate-magic-special": "Appears on [[Special:AdvancedTranslate]]",
+ "translate-magic-words": "Used as title and as an item on <select> on Special:AdvancedTranslate",
"translate-magic-namespace": "{{Identical|Namespace name}}",
+ "translate-magic-notsaved": "Error message on Special:AdvancedTranslate when there are mistakes in translations that must be fixed.",
"translate-magic-errors": "This message is followed by the error messages.\n\nParameters:\n* $1 - number of error messages, can be used for PLURAL",
+ "translate-magic-saved": "Success message on Special:AdvancedTranslate",
"translate-checks-parameters": "Warning message from automated syntax check for translators.\n* $1 - parameters\n* $2 - number of parameters\n{{Related|Translate-checks}}",
"translate-checks-parameters-unknown": "Warning message from automated syntax check for translators.\n* $1 - parameters\n* $2 - number of parameters\n{{Related|Translate-checks}}",
"translate-checks-balance": "This translation warning is displayed if the number of opening brackets (\"[\", \"{\", and \"(\") is different from the number of closing brackets (\"]\", \"}\", and \")\").\n\nParameters:\n* $1 - a list of the unbalanced brackets, for example \"<strong>[]: 1</strong>\" which means that there is one missing closing square brackets\n* $2 - the number of types of parentheses that are unbalanced\n{{Related|Translate-checks}}",
@@ -122,7 +131,7 @@
"translate-checks-fudforum-syntax": "Unused at this time.\n\nWarning message from automated syntax check for translators.\n\n<code>$1</code> and <code>$2</code> are not parameters.\n{{Related|Translate-checks}}",
"translate-pref-nonewsletter": "Option in [[Special:Preferences]], 'Misc' tab.",
"translate-pref-editassistlang": "Used in [[Special:Preferences]] under the {{msg-mw|prefs-editing}} tab.\n{{Identical|Assistant language}}",
- "prefs-translate": "Caption of a section at [[Special:Preferences#prefsection-3|Special:Preferences]]",
+ "prefs-translate": "Caption of a section at [[Special:Preferences#mw-prefsection-editing|Special:Preferences]] in the tab \"{{int:prefs-editing}}\"",
"translate-pref-editassistlang-help": "Used in [[Special:Preferences]], tab Editing.",
"translate-pref-editassistlang-bad": "Used as validation result.\n\nParameters:\n* $1 - a language code, not list of codes",
"right-translate": "{{doc-right|translate}}",
@@ -131,7 +140,16 @@
"right-translate-import": "{{doc-right|translate-import}}",
"action-translate-import": "{{doc-action|translate-import}}",
"right-translate-messagereview": "{{doc-right|translate-messagereview}}\n{{Identical|Review translation}}",
+ "action-translate-messagereview": "{{doc-action|translate-messagereview}}",
"right-translate-groupreview": "{{doc-right|translate-groupreview}}",
+ "action-translate-groupreview": "{{doc-action|translate-groupreview}}",
+ "translate-rcfilters-translations": "Title for the filter group for translations. Only available on [[Special:RecentChanges]].\n{{Identical|Translation}}",
+ "translate-rcfilters-translations-only-label": "Label for the filter for showing changes to translated pages only.\n{{Identical|Translation}}",
+ "translate-rcfilters-translations-only-desc": "Description for the filter for showing changes to translated pages only.",
+ "translate-rcfilters-translations-filter-label": "Label for the filter for showing changes to pages that aren't translations.",
+ "translate-rcfilters-translations-filter-desc": "Description for the filter for showing changes to pages that aren't translations.",
+ "translate-rcfilters-translations-site-label": "Label for the filter for showing customizations of site messages.",
+ "translate-rcfilters-translations-site-desc": "Description for the filter for showing customizations of site messages.",
"translate-rc-translation-filter": "Name of filter in [[Special:RecentChanges]]. Gives a user the option to filter out translations, show translations only, or do nothing (default).",
"translate-rc-translation-filter-no": "Option for filter in [[Special:RecentChanges]]. Selecting this option results in the filter not doing anything. It is the default value.",
"translate-rc-translation-filter-only": "Option for filter in [[Special:RecentChanges]]. Selecting this option results in the filter only showing recent changes that are translations.",
@@ -180,6 +198,7 @@
"messagegroupstats-summary": "Used in [[Special:MessageGroupStats]]",
"languagestats-stats-for": "Used in [[Special:LanguageStats]]. Parameters:\n* $1 - a localised language name\n* $2 - link text {{msg-mw|Languagestats-recenttranslations}}. The link points to [[Special:Translate]] which shows recent translations of the language <code>$1</code>.",
"languagestats-recenttranslations": "Used as link text. The link points to [[Special:Translate]] which shows recent translations.\n\nUsed as <code>$2</code> in {{msg-mw|Languagestats-stats-for}}.",
+ "translate-langstats-incomplete": "A notice shown sometimes on [[Special:LanguageStats]].",
"translate-langstats-expand": "{{Doc-actionlink}}\nUsed in [[Special:LanguageStats]] to expand subgroups.\n{{Identical|Expand}}",
"translate-langstats-collapse": "{{doc-actionlink}}\nUsed in [[Special:LanguageStats]] to collapse subgroups.\n{{Identical|Collapse}}",
"translate-langstats-expandall": "{{doc-actionlink}}\nUsed in [[Special:LanguageStats]] to expand all subgroups.\n\nSee also:\n* {{msg-mw|Translate-langstats-collapseall}}",
@@ -187,11 +206,14 @@
"translate-language-code": "Name of fieldset in [[Special:LanguageStats]].\n\n{{Identical|Language code}}",
"translate-language-code-field-name": "Used in [[Special:LanguageStats]].\n\n{{Identical|Language code}}",
"translate-suppress-complete": "Used in [[Special:LanguageStats]].",
+ "translate-ls-noempty": "A filter option on [[Special:LanguageStats]].",
"translate-language": "Table header at [[Special:LanguageStats]].\n\n{{Identical|Language}}",
"translate-total": "Table header at [[Special:LanguageStats]].\n{{Identical|Message}}",
"translate-untranslated": "Column header in [[Special:LanguageStats]] for number of untranslated messages in a message group.\n{{Identical|Untranslated}}",
"translate-percentage-complete": "Used in [[Special:LanguageStats]].",
"translate-percentage-fuzzy": "Used in [[Special:LanguageStats]].\n{{Identical|Outdated}}",
+ "translate-languagestats-overall": "Label for summary row on [[Special:LanguageStats]]",
+ "translate-ls-submit": "Submit button text on [[Special:LanguageStats]] and [[Special:MessageGroupStats]].",
"translate-ls-column-group": "Column header in [[Special:LanguageStats]].\n{{Identical|Message group}}",
"translate-mgs-pagename": "{{doc-special|MessageGroupStats}}",
"translate-mgs-fieldset": "Fieldset label in [[Special:MessageGroupStats]]",
@@ -200,18 +222,21 @@
"translate-mgs-noempty": "Option in [[Special:MessageGroupStats]]",
"translate-mgs-submit": "Submit button text",
"translate-mgs-column-language": "{{Identical|Language}}",
- "translate-mgs-totals": "This is used in [[Special:MessageGroupStats]]",
+ "translate-mgs-totals": "This is used in [[Special:MessageGroupStats]]. Parameters: \n* $1 - total number of shown languages",
"translate-mgs-invalid-group": "Used as error message. Parameters:\n* $1 - target message group name",
+ "translate-mgs-nothing": "Error message shown on Special:LanguageStats and Special:MessageGroupStats.",
"supportedlanguages": "{{doc-special|SupportedLanguages}}\n{{Identical|Supported language}}",
"supportedlanguages-summary": "Header for [[Special:SupportedLanguages]] page.",
"supportedlanguages-colorlegend": "Used on [[Special:SupportedLanguages]]. Parameters:\n* $1 is not a single number, but a series of numbers with different background colors, serving as a legend to match each color with a number of days passed since the last contributed translation. $1 is usually \"0 30 60 90 120 150 180\".\nSee [[Special:SupportedLanguages]] to see the final rendering.",
"supportedlanguages-localsummary": "{{notranslate}}\nPlace any site specific message here.",
"supportedlanguages-portallink": "{{optional}}\nParameters:\n* $1 - language code\n* $2 - localized language name\n* $3 - native language name\nSee also:\n* {{msg-mw|Supportedlanguages-portallink-nocldr}}",
"supportedlanguages-portallink-nocldr": "{{optional}}\nUsed if the localized language name is available. Parameters:\n* $1 - language code\n* $2 - native language name\nSee also:\n* {{msg-mw|Supportedlanguages-portallink}}",
+ "supportedlanguages-sqlite-error": "Error message emitted when unsupported sqlite database is detected",
"supportedlanguages-translators": "Row for a language in [[Special:SupportedLanguages]], under the respective header.\n* $1 - the list of translators names\n* $2 - the number of translators listed\n* $3 - username for GENDER support when there is only one translator\n{{Identical|Translator}}",
"supportedlanguages-recenttranslations": "Link on [[Special:SupportedLanguages]] to [[Special:RecentChanges]].",
"supportedlanguages-count": "On [[Special:SupportedLanguages]]\n*$1 is the total number of supported languages.",
"supportedlanguages-activity": "Used as tooltip text for username in users list, to show user's activity.\n\nSee [{{canonicalurl:Special:SupportedLanguages}}#fr example].\n\nParameters:\n* $1 - username\n* $2 - number of edits the user made\n* $3 - number of days",
+ "abusefilter-edit-builder-vars-translate-source-text": "Description for an [[mw:Extension:AbuseFilter|AbuseFilter]] variable. Used as an abuse filter syntax option in a dropdown from the group {{msg-mw|abusefilter-edit-builder-group-vars}}.",
"translate-save": "Used as label for the Submit button. Parameters:\n* $1 - language name, or {{msg-mw|Translate-documentation-language}}\n{{Identical|Save}}",
"translate-jssti-add": "Name of button in [[Special:Preferences]], tab Editing.",
"managemessagegroups": "{{doc-special|ManageMessageGroups}}",
@@ -229,9 +254,12 @@
"translate-manage-action-conflict": "Used in the group management interface. {{doc-screenshot|Manage-4.png|twn}}\n\nfuzzy = mark translations for review/update.",
"translate-manage-action-ignore": "Used in the group management interface. {{doc-screenshot|Manage-4.png|twn}}\n{{Identical|Ignore}}",
"translate-manage-action-fuzzy": "Used in the group management interface. {{doc-screenshot|Manage-4.png|twn}}\n\nfuzzy = mark translations for review",
+ "translate-manage-nochanges": "Message shown in Special:ImportTranslations.",
+ "translate-manage-nochanges-other": "Message shown in Special:ImportTranslations.",
"translate-manage-inconsistent": "Parameters:\n* $1 - a string (key name?) e.g. action-changed-XXXX",
"translate-manage-toolong": "Parameters:\n* $1 - number of seconds, can be used for PLURAL",
"translate-manage-import-summary": "Used as edit summary.",
+ "translate-manage-conflict-summary": "An edit summary message when importing a message with conflicting changes.",
"translate-manage-submit": "Used in the group management interface.\n{{doc-screenshot|Manage-3.png|twn}}\n{{Identical|Execute}}",
"translate-manage-intro-other": "[[File:Manage-2.png|150px|right|Group management interface]]\nIntroduction to special page. See screenshot. Parameters:\n* $1 is a language name.",
"translate-manage-import-ok": "Message given when a translation has been imported on Special:ImportTranslations. Parameters:\n* $1 is the target page name for the translation.",
@@ -249,9 +277,10 @@
"translate-js-summary": "Label for summary field in translation editor.\n{{Identical|Summary}}",
"translate-js-save": "Button in translation editor which saves the content and closes the dialog.\n{{Identical|Save}}",
"translate-js-next": "next refers to next message in the message list",
- "translate-js-nonext": "This is a JavaScript popup (alert) when user clicks \"Save and open next\" and there is no next message.",
"translate-js-skip": "A button together with Save and Save an open next. Goes to the next message without saving.",
- "translate-js-save-failed": "If there was unknown error while submitting a translation, user gets this message in JavaScript popup (alert).",
+ "translate-js-history": "A button text in the legacy translation interface.",
+ "translate-js-support": "A button text in the legacy translation interface.",
+ "translate-js-support-title": "A button tooltip in the legacy translation interface.",
"translate-js-support-unsaved-warning": "A warning shown in a dialog box if a user tries to close a page without saving a translation written .",
"translate-gs-pos": "Used in wiki tables for localisation statistics as a column header for 'Position' abbreviated. See [[Project:MediaWiki localisation in the 50 most spoken languages|example]]",
"translate-gs-code": "Used in wiki tables for localisation statistics as a column header for language code. See [[Project:MediaWiki localisation in the 50 most spoken languages|example]]\n{{Identical|Code}}",
@@ -265,22 +294,11 @@
"translate-documentation-language": "This is the name of the message documentation language code (qqq). Follow the rules of your languages and use small first letter if it doesn't capitalize language names always. It might be easier to translate it as \"translation guidelines\" or \"translation help\".\n{{Identical|Message documentation}}",
"translate-searchprofile": "Tab in [[Special:Search]]\n{{Identical|Translation}}",
"translate-searchprofile-tooltip": "Tooltip for a tab in [[Special:Search]]",
- "translate-messagereview-submit": "Button label in [[Special:Translate]] review mode.\n\nThis should be consistent with the following messages:\n* {{msg-mw|Translate-messagereview-progress}}\n* {{msg-mw|Translate-messagereview-failure}}\n* {{msg-mw|Translate-messagereview-done}}",
- "translate-messagereview-progress": "Button label in [[Special:Translate]] review mode. Button is disabled. This is shown very briefly while the acceptance is in progress.",
- "translate-messagereview-failure": "Button label in [[Special:Translate]] review mode. Button is disabled.\n\nParameters:\n* $1 - one of the following messages:\n** {{msg-mw|api-error-invalidrevision}}\n** {{msg-mw|api-error-unknownmessage}}\n** {{msg-mw|api-error-fuzzymessage}}\n** {{msg-mw|api-error-owntranslation}}",
- "translate-messagereview-done": "Button label in [[Special:Translate]] review mode. Button is disabled.\n{{Identical|Reviewed}}",
- "translate-messagereview-reviews": "Status message in [[Special:Translate]] in review mode. Parameters:\n* $1 - the total number of users who reviewed the relevant message\nSee also:\n* {{msg-mw|Translate-messagereview-reviewswithyou}}",
- "translate-messagereview-reviewswithyou": "Status message in [[Special:Translate]] in review mode. Parameters:\n* $1 - the total number of users who reviewed the relevant message\nSee also:\n* {{msg-mw|Translate-messagereview-reviews}}",
- "api-error-invalidrevision": "Error message for {{msg-mw|translate-messagereview-failure}}",
- "api-error-unknownmessage": "Error message for {{msg-mw|translate-messagereview-failure}}",
- "api-error-fuzzymessage": "Error message for {{msg-mw|translate-messagereview-failure}}",
- "api-error-owntranslation": "Error message for {{msg-mw|translate-messagereview-failure}}",
- "translate-messagereview-no-fuzzy": "Tooltip for disabled review button",
- "translate-messagereview-no-own": "Tooltip for disabled review button",
- "translate-messagereview-doit": "Tooltip for review button",
- "group-translate-proofr.css": "{{doc-group|translate-proofr|css}}",
- "group-translate-proofr.js": "{{doc-group|translate-proofr|js}}",
+ "translate-searchprofile-note": "A message shown in [[Special:Search]]. $1 is the url to a special page.",
+ "translate-search-languagefilter": "Label for a language dropdown in Special:Search (when ElasticSearch is not in use?).",
+ "translate-search-nofilter": "First option in language dropdown in Special:Search to not limit by language.",
"log-name-translationreview": "{{doc-logpage}}",
+ "log-description-translationreview": "Description of a log type.",
"logentry-translationreview-message": "{{Logentry|[[Special:Log/translationreview]]}}",
"logentry-translationreview-group": "{{Logentry|[[Special:Log/translationreview]]}}\nAdditional parameters:\n* $4 - Localised language name\n* $5 - Label of the message group (unused)\n* $6 - Previous workflow state\n* $7 - New workflow state",
"group-translate-sandboxed": "{{doc-group|translate-sandboxed}}",
@@ -291,22 +309,15 @@
"action-translate-sandboxaction": "{{doc-action|translate-sandboxaction}}",
"translate-workflow-state-": "Unselectable select option in [[Special:Translate]] if workflow state editing is on. The dangling hyphen in the message key hints that this state is unset; the actual states have the same key with something after the hyphen.",
"translate-workflowstatus": "In [[Special:Translate]] if workflow states are in use, $1 is selector or the current state.\n{{Identical|State}}",
- "translate-workflow-set-do": "Submit button text when active",
"translate-workflow-set-doing": "Submit button text when waiting for reply from server",
- "translate-workflow-set-done": "Submit button text when submission completed successfully",
- "translate-workflow-set-error-alreadyset": "An error message shown in a popup box after pressing the {{msg-mw|translate-workflow-set-do}} button.",
"translate-workflow-autocreated-summary": "This is an edit summary for the automatic creation of a workflow state page.\n\nParameters:\n* $1 - state",
"translate-stats-workflow": "Column header on [[Special:LanguageStats]] and [[Special:MessageGroupStats]]\n{{Identical|State}}",
+ "translate-workflowgroup-label": "Name of the message group that contains translations for translation workflow states defined for the wiki.",
"translate-workflowgroup-desc": "{{doc-important|Do not translate the variable name <code>$wgTranslateWorkflowStates</code>.}}",
"translate-dynagroup-recent-label": "Label of a message group",
"translate-dynagroup-recent-desc": "Description of a message group.",
"translate-dynagroup-additions-label": "Label of a message group",
"translate-dynagroup-additions-desc": "Description of a message group.",
- "translate-dynagroup-by": "Additional information in a translation editor that contains information about the last change.\n\nParameters:\n* $1 - a username\nSee also:\n* {{msg-mw|Translate-dynagroup-byc}}",
- "translate-dynagroup-byc": "Additional information in a translation editor that contains information about the last change.\n\nParameters:\n* $1 - a username\n* $2 - the edit summary that was provided\nSee also:\n* {{msg-mw|Translate-dynagroup-by}}",
- "translate-dynagroup-last": "Additional information in a translation editor that contains information about the last change.\n\nParameters:\n* $1 - a username\nSee also:\n* {{msg-mw|Translate-dynagroup-lastc}}",
- "translate-dynagroup-lastc": "Additional information in a translation editor that contains information about the last change.\n\nParameters:\n* $1 - a username\n* $2 - the edit summary that was provided\nSee also:\n* {{msg-mw|Translate-dynagroup-last}}",
- "translate-gethelp": "Link to some Translate help page or tutorial.\n{{Identical|Help}}",
"translate-msggroupselector-projects": "Title text for the message group breadcrumb.\n{{Identical|Message group}}",
"translate-msggroupselector-search-placeholder": "Place holder text for the search box in message group selector. It's supposed to tell the user that the box is for a search for a name of a group.",
"translate-msggroupselector-search-all": "Label to display all projects.\n{{Identical|All}}",
@@ -325,14 +336,17 @@
"tux-status-translated": "Status label in [[Special:Translate]] indicating that a message is translated. An adjective that refers to a message.\n{{Identical|Translated}}",
"tux-status-saving": "Status label in [[Special:Translate]] indicating that the translation is being saved.\n{{Identical|Saving}}",
"tux-status-unsaved": "Status label in [[Special:Translate]] indicating that the translation is not saved yet.",
+ "tux-save-unknown-error": "Error message shown on [[Special:Translate]] when an unknown error occurs while attempting to save the translation.",
"tux-editor-placeholder": "Placeholder text for the translation editor textbox",
+ "tux-editor-editsummary-placeholder": "Placeholder text for the translation editor's edit summary box",
"tux-editor-paste-original-button-label": "Label for a button that pastes the text in the source language to the translation editor.",
"tux-editor-discard-changes-button-label": "Label for a button that discards the changes made to a translation and restores the saved version.",
"tux-editor-save-button-label": "Label for save translation button",
"tux-editor-skip-button-label": "Label for skip button",
"tux-editor-cancel-button-label": "Label for cancel button.\nPressing the button hides the message editor without saving and marks the message internally as \"hard\".\n{{Identical|Cancel}}",
"tux-editor-confirm-button-label": "Label for confirm button",
- "tux-editor-shortcut-info": "A help text for the keyboard shortcuts. Parameters:\n* $1 - shortcut key for save button\n* $2 - shortcut key for skip button\n* $3 - \"ALT\"",
+ "tux-editor-proofread-button-label": "Label for review button. \"Reviewed\" refers to a translation.\n{{Identical|Mark as reviewed}}",
+ "tux-editor-shortcut-info": "A help text for the keyboard shortcuts. Parameters:\n* $1 - shortcut key for save button\n* $2 - shortcut key for skip button\n* $3 - \"ALT\"\n* $4 - shortcut key for summary input",
"tux-editor-edit-desc": "Text for the link to edit message documentation.\n{{Identical|Edit description}}",
"tux-editor-add-desc": "Text for the link to add message documentation when it doesn't exist",
"tux-editor-suggestions-title": "Title text for translation memory suggestions.\n{{Identical|Suggestion}}",
@@ -387,9 +401,11 @@
"tux-editor-close-tooltip": "Tooltip for close icon of translate editor.\n{{Identical|Close}}",
"tux-editor-expand-tooltip": "Tooltip for an icon (rectangle with an arrow) in the new translation editor which increases size of the main text area by closing the translation aids area on the screen's side.\n\nSee also:\n* {{msg-mw|Tux-editor-collapse-tooltip}}\n{{Identical|Expand}}",
"tux-editor-collapse-tooltip": "Tooltip for an icon (rectangle with an arrow) in the new translation editor which reduces size of the main text area to uncover the translation aids area on the screen's side.\n\nSee also:\n* {{msg-mw|Tux-editor-expand-tooltip}}\n{{Identical|Collapse}}",
+ "tux-editor-message-tools-show-editor": "A link to the message's edit page. An item in a menu that appears when clicking on the message title.",
"tux-editor-message-tools-history": "A link to the message history. An item in a menu that appears when clicking on the message title.\n{{Identical|History}}",
"tux-editor-message-tools-delete": "A link to delete the message. An item in a menu that appears when clicking on the message title.\n{{Identical|Delete}}",
"tux-editor-message-tools-translations": "A link to translations of a message to all languages. An item in a menu that appears when clicking on message title.\n{{Identical|All translations}}",
+ "tux-editor-message-tools-linktothis": "A direct link to the translation editor showing this translation. An item in a menu that appears when clicking on message title",
"tux-editor-loading": "Loading message while translation editor is being prepared with helper information.\n{{Identical|Loading}}",
"translate-search-more-languages-info": "Information shown as number of languages matching the query using\n[[Special:SearchTranslations]]\n* $1 - number of languages\nSee also:\n* {{msg-mw|Translate-search-more-groups-info}}",
"translate-statsbar-tooltip": "Descriptive text to show for the stats bar for message groups on mouse over.\n* $1 percentage of messages translated\n* $2 percentage of messages reviewed",
@@ -397,5 +413,6 @@
"translate-search-more-groups-info": "Information shown as number of message groups matching the query using\n[[Special:SearchTranslations]]\n* $1 - number of groups\nSee also:\n* {{msg-mw|Translate-search-more-languages-info}}",
"translate-ulsdep-title": "Page title",
"translate-ulsdep-body": "Error message in page body",
- "tux-session-expired": "Warning shown to the user in a popup when translation could not be saved because the session is expired."
+ "tux-session-expired": "Warning shown to the user in a popup when translation could not be saved because the session is expired.",
+ "tux-nojs": "An error shown in Special:Translate."
}
diff --git a/MLEB/Translate/i18n/core/qu.json b/MLEB/Translate/i18n/core/qu.json
index a0715b41..694dbb86 100644
--- a/MLEB/Translate/i18n/core/qu.json
+++ b/MLEB/Translate/i18n/core/qu.json
@@ -6,11 +6,6 @@
},
"translate": "T'ikray",
"translate-desc": "[[Special:Translate|Sapaq p'anqa]] MediaWiki nisqata hukkunatapas t'ikranapaq",
- "translate-taskui-view": "Tukuy willaykunata rikuchiy",
- "translate-taskui-untranslated": "Mana t'ikrasqa willaykunata rikuchiy",
- "translate-taskui-optional": "Akllana willaykunata rikuchiy",
- "translate-taskui-acceptqueue": "Allinchaspa ñawirina unanchanallay willaykunata rikuchiy",
- "translate-taskui-reviewall": "Tukuy t'ikrasqakunata allinchanapaq ñawiriy",
"translate-taction-translate": "T'ikray",
"translate-taction-proofread": "Allinchaspa ñawiriy",
"translate-taction-lstats": "Rimaymanta ranuy (kanchachani)",
@@ -36,7 +31,6 @@
"translate-page-description-legend": "Willay huñumanta t'iktuna",
"translate-page-description-hasoptional-open": "Akllana willaykunata rikuchiy.",
"translate-page-edit": "llamk'apuy",
- "translate-ext-url": "<hr />Llika tiyay: $1",
"translate-optional": "(chikllana)",
"translate-ignored": "(qhawarparisqa)",
"translate-edit-title": "\"$1\" nisqata llamk'apuy",
@@ -45,7 +39,6 @@
"translate-edit-contribute": "llamk'apuy",
"translate-edit-information": "Willaymanta t'iktuynin ($1)",
"translate-edit-in-other-languages": "Kay willay huk rimaykunapi",
- "translate-edit-committed": "Llamp'u kaqpi kunan kachkaq t'ikrasqakuna",
"translate-edit-warnings": "Mana hunt'a t'ikrasqakunamanta yuyampaykuna",
"translate-edit-tmmatch-source": "T'ikranapaq pukyu qillqa: $1",
"translate-edit-tmmatch": "$1%-nin kaqlla kaq",
@@ -82,7 +75,8 @@
"action-translate-import": "mana llikapi kachkaq t'ikrasqakunata hawamanta chaskiy",
"right-translate-messagereview": "T'ikrasqakunata allinchanapaq ñawiriy",
"right-translate-groupreview": "Willay huñukunap llamk'apayayninpa kachkayninta hukchay",
- "translate-rc-translation-filter": "T'ikraykunata ch'illchiy",
+ "translate-rcfilters-translations-only-label": "T'ikrasqakuna",
+ "translate-rc-translation-filter": "T'ikraykunata ch'illchiy:",
"translate-rc-translation-filter-no": "Ama imatapas ruraychu",
"translate-rc-translation-filter-only": "T'ikrasqakunallata rikuchiy",
"translate-rc-translation-filter-filter": "T'ikraykunata ch'illchiy",
@@ -110,7 +104,6 @@
"translate-statsf-count-reviews": "T'ikrasqata qhawakipasqakuna",
"translate-statsf-count-reviewers": "Allinchanapaq ñawiriqkuna",
"translate-statsf-submit": "Ñawpaqta qhawallay",
- "translate-tag-category": "T'ikrana p'anqakuna",
"translate-tag-page-desc": "T'ikrasqaqa [[$2|$1]] nisqa wiki p'anqam.",
"translate-sidebar-alltrans": "Huk simikunapi",
"translations": "Tukuy t'ikrasqakuna",
@@ -167,7 +160,6 @@
"translate-manage-action-conflict": "Hawamanta chaskispa allinchanapaq ñawirina nispa unanchay",
"translate-manage-action-ignore": "Ama musyaychu",
"translate-manage-action-fuzzy": "T'ikrasqakunata hawamanta chaskispa allinchanapaq ñawirina nispa unanchay",
- "translate-manage-fuzzy-summary": "Willañiqip sut'ichayninqa hukchasqam.",
"importtranslations": "T'ikrasqakunata hawamanta chaskiy",
"translate-import-from-local": "Tiyanalla willañiqita chaqnay:",
"translate-import-load": "Willañiqita chaqnay",
@@ -179,9 +171,7 @@
"translate-js-summary": "Pisichay:",
"translate-js-save": "Waqaychay",
"translate-js-next": "Waqaychay, qatiqta kichaspa",
- "translate-js-nonext": "Kayqa kay p'anqapi qhipaq willaymi karqan.",
"translate-js-skip": "Qatiqman t'iskuy",
- "translate-js-save-failed": "Manam waqaychasqachu. Ama hina kaspa, kay pantasqamanta willariy.",
"translate-js-history": "T'ikraypa wiñay kaswaynin",
"translate-js-support": "Tapuy",
"translate-js-support-title": "Yanapayta mañarikuy, kay willamanta mana aypalla yachaspaykiqa.",
@@ -200,38 +190,18 @@
"translate-searchprofile-tooltip": "Tukuy t'ikrasqakunapi maskay",
"translate-search-languagefilter": "Ch'illchina rimaykama:",
"translate-search-nofilter": "Ama ch'illchina kachunchu",
- "translate-messagereview-submit": "Allinchaspa ñawirisqa unanchay",
- "translate-messagereview-progress": "Allinchaspa ñawirisqa unanchaspa...",
- "translate-messagereview-failure": "Allinchaspa ñawirisqa unanchayqa manam aypasqachu: $1",
- "translate-messagereview-done": "Allinchaspa ñawirisqa unanchasqañam",
- "translate-messagereview-reviews": "{{PLURAL:$1|Huk ruraqpa|$1 ruraqkunap}} allinchaspa ñawirisqa unanchasqanñam",
- "translate-messagereview-reviewswithyou": "{{PLURAL:$1|Qampa uyakusqaykiñam|$1 ruraqkunap (qampapas) allinchaspa ñawirisqa unanchasqaykichikñam}}",
- "api-error-invalidrevision": "T'ikrasqaqa manam tarisqachu",
- "api-error-unknownmessage": "Willayqa manam tarisqachu",
- "api-error-fuzzymessage": "Willayqa allinchanapaq ñawirina unanchasqam",
- "api-error-owntranslation": "Kikiykip t'ikrasqaykikunataqa manam allinchaspa ñawirisqa unanchayta atinkichu",
- "translate-messagereview-no-fuzzy": "Allinchanapaq ñawirina t'ikrasqakunataqa manam allinchaspa ñawirisqa unanchayta atinkichu.",
- "translate-messagereview-no-own": "Kikiykip t'ikrasqaykikunataqa manam allinchaspa ñawirisqa unanchayta atinkichu.",
- "translate-messagereview-doit": "Kay t'ikrasqata allin t'ikrasqam nispa allinchaspa ñawirisqa unanchay.",
"log-name-translationreview": "T'ikrasqata qhawakipay hallch'a",
"log-description-translationreview": "T'ikrasqakunamanta willay huñukunamantapas tukuy qhawakipasqakunamanta hallch'a.",
"logentry-translationreview-message": "$1 {{GENDER:$2|allinchaspa ñawirisqa unanchan}} t'ikrasqata $3",
"logentry-translationreview-group": "$1 {{GENDER:$2|hukchan}} $4-man t'ikrasqata $3 $6-manta $7-man",
"translate-workflow-state-": "(mana churasqa)",
"translate-workflowstatus": "Kachkaynin: $1",
- "translate-workflow-set-do": "Churay",
"translate-workflow-set-doing": "Churaspa...",
- "translate-workflow-set-done": "Churasqañam!",
"translate-stats-workflow": "Kachkaynin",
"translate-workflowgroup-label": "Llamk'apayaypa kachkayninkuna",
"translate-dynagroup-recent-label": "Ñaqha t'ikrasqakuna",
"translate-dynagroup-additions-label": "Ñaqha yapasqakuna",
"translate-dynagroup-additions-desc": "Kay willay huñuqa musuqpas hukchasqapas willaykunatam rikuchin.",
- "translate-dynagroup-by": "{{GENDER:$1|$1}}pa t'ikrasqan",
- "translate-dynagroup-byc": "{{GENDER:$1|$1}}pa t'ikrasqan ($2)",
- "translate-dynagroup-last": "{{GENDER:$1|$1}}pa qhipaq llamk'apusqan",
- "translate-dynagroup-lastc": "{{GENDER:$1|$1}}pa qhipaq llamk'apusqan ($2)",
- "translate-gethelp": "Yanapa",
"translate-msggroupselector-projects": "Willay huñu",
"translate-msggroupselector-search-placeholder": "Huñukunata maskay",
"translate-msggroupselector-search-all": "Tukuy",
diff --git a/MLEB/Translate/i18n/core/rif.json b/MLEB/Translate/i18n/core/rif.json
index ea6a91d4..9881aed1 100644
--- a/MLEB/Translate/i18n/core/rif.json
+++ b/MLEB/Translate/i18n/core/rif.json
@@ -1,9 +1,10 @@
{
"@metadata": {
"authors": [
- "Jose77"
+ "Jose77",
+ "Amara-Amaziɣ"
]
},
- "translate-page-navigation-legend": "Asari",
- "translate-page-edit": "arri"
+ "translate-page-navigation-legend": "ⴰⵙⵜⴰⵔⴰ",
+ "translate-page-edit": "ⵙⵏⴼⵍ"
}
diff --git a/MLEB/Translate/i18n/core/rm.json b/MLEB/Translate/i18n/core/rm.json
index 2306e6c0..9d38a982 100644
--- a/MLEB/Translate/i18n/core/rm.json
+++ b/MLEB/Translate/i18n/core/rm.json
@@ -3,7 +3,8 @@
"authors": [
"Gion",
"Gion-andri",
- "Kazu89"
+ "Kazu89",
+ "Terfili"
]
},
"translate-page-settings-legend": "Parameters",
@@ -27,7 +28,7 @@
"translate-edit-no-information": "''Tar quai messadi na datti nagina documentaziun.\nSche vus savais nua e co che quai messadi vegn duvrà, pudais vus gidar auters translaturs cun agiuntar ina documentaziun tar quai messadi.''",
"translate-edit-information": "Infurmaziuns davart il messadi \"$2\" ($1)",
"translate-edit-in-other-languages": "Messadis \"$1\" en autras linguas",
- "translate-edit-committed": "Translaziun actuala da la software",
"translate-edit-warnings": "Avertiment davart translaziuns nuncumplettas",
+ "translate-documentation-language": "Documentaziun da messadi",
"tux-warnings-hide": "zuppentar"
}
diff --git a/MLEB/Translate/i18n/core/ro.json b/MLEB/Translate/i18n/core/ro.json
index 9222b303..a3174754 100644
--- a/MLEB/Translate/i18n/core/ro.json
+++ b/MLEB/Translate/i18n/core/ro.json
@@ -8,16 +8,12 @@
"McDutchie",
"Minisarm",
"Sociologist",
- "Stelistcristi"
+ "Stelistcristi",
+ "ImGelu"
]
},
"translate": "Traducere",
"translate-desc": "[[Special:Translate|Pagină specială]] pentru traducerea software-ului MediaWiki, dar nu numai",
- "translate-taskui-view": "Arată toate mesajele",
- "translate-taskui-untranslated": "Arată mesajele netraduse",
- "translate-taskui-optional": "Arată mesajele opționale",
- "translate-taskui-acceptqueue": "Doar mesajele pe care le pot marca ca revizuite",
- "translate-taskui-reviewall": "Revizuiește toate traducerile",
"translate-taskui-export-to-file": "Exportare în format nativ",
"translate-taskui-export-as-po": "Exportare pentru traducere off-line",
"translate-taction-translate": "Traducere",
@@ -46,7 +42,6 @@
"translate-page-description-hasoptional": "Acest grup conține mesaje opționale.\nMesajele opționale ar trebui traduse doar în cazul în care limba dumneavoastră are cerințe speciale,\nprecum neutilizarea spațiilor sau transliterarea numelor proprii. $1",
"translate-page-description-hasoptional-open": "Arată mesajele opționale.",
"translate-page-edit": "modificare",
- "translate-ext-url": "<hr /> Site web: $1",
"translate-optional": "(opțional)",
"translate-ignored": "(ignorat)",
"translate-edit-title": "Modificați „$1”",
@@ -56,9 +51,7 @@
"translate-edit-no-information": "<em>Acest mesaj nu are documentație.\nDacă știți unde sau cum este folosit, îi puteți ajuta pe ceilalți traducători prin adăugarea documentației sale.</em>",
"translate-edit-information": "Informații despre mesaj ($1)",
"translate-edit-in-other-languages": "Mesajul în alte limbi",
- "translate-edit-committed": "Traducerea curentă din software",
"translate-edit-warnings": "Avertizări în legătură cu traducerile incomplete",
- "translate-edit-tmsugs": "Sugestii din memoria de traducere",
"translate-edit-tmmatch-source": "Textul sursă al traducerii: $1",
"translate-edit-tmmatch": "Potrivire în proporție de $1%",
"translate-use-suggestion": "Înlocuiește traducerea curentă cu această sugestie.",
@@ -140,8 +133,7 @@
"translate-statsf-language": "Listă de coduri de limbă separate prin virgulă:",
"translate-statsf-group": "Listă de coduri de grup separate prin virgulă:",
"translate-statsf-submit": "Previzualizare",
- "translate-tag-category": "Pagini traductibile",
- "translate-tag-page-desc": "Traducerea paginii wiki [[$2|$1]].",
+ "translate-tag-page-desc": "Traducerea paginii wiki [[$2|$1]] din $3 ($4).",
"translate-sidebar-alltrans": "În alte limbi",
"translations": "Toate traducerile",
"translations-summary": "Introduceți un nume de mesaj mai jos pentru a arăta toate traducerile disponibile.",
@@ -155,6 +147,7 @@
"translate-translations-history-short": "i",
"languagestats": "Statistici de limbă",
"languagestats-summary": "Această pagină afișează statistici despre traducerile grupurilor de mesaje în funcție de limbă.",
+ "messagegroupstats-summary": "Această pagină afișează statisticile grupurilor de mesaje.",
"languagestats-stats-for": "Statistici despre traduceri pentru $1 ($2).",
"languagestats-recenttranslations": "schimbări recente",
"translate-langstats-incomplete": "Unele dintre statisticile de pe această pagină sunt incomplete. Vă rugăm să reîncărcați pentru a obține mai multe statistici.",
@@ -187,7 +180,7 @@
"supportedlanguages": "Limbi întreținute",
"supportedlanguages-summary": "Această pagină afișează o listă cu toate limbile acceptate de {{SITENAME}}, alături de numele utilizatorilor care traduc în respectiva limbă.\nCu cât numele traducătorului este mai mare ca dimensiune, cu atât contribuțiile sale sunt mai numeroase.\nCuloarea sublinierii de sub nume indică momentul la care un traducător a fost activ ultima oară.",
"supportedlanguages-colorlegend": "Explicația culorilor: ultima traducere datează de acum $1 zile.",
- "supportedlanguages-translators": "{{PLURAL:$2|Traducător|Traducători}}: $1",
+ "supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|Traducător}}|Traducători}}: $1",
"supportedlanguages-recenttranslations": "traduceri recente",
"supportedlanguages-count": "$1 {{PLURAL:$1|limbă|limbi}} în total.",
"supportedlanguages-activity": "$1: {{PLURAL:$2|o modificare|$2 modificări|$2 de modificări}} – ultima modificare datează de acum {{PLURAL:$3|o zi|$3 zile|$3 de zile}}",
@@ -214,7 +207,6 @@
"translate-manage-toolong": "Timpul maxim de prelucrare care este de {{PLURAL:$1|o secundă|$1 secunde|$1 de secunde}} a fost depășit.\nVă rugăm să retrimiteți formularul pentru a continua prelucrarea.",
"translate-manage-import-summary": "Se importă o nouă versiune din sursă externă",
"translate-manage-conflict-summary": "Se importă o nouă versiune dintr-o sursă externă.\nVă rugăm să verificați.",
- "translate-manage-fuzzy-summary": "Definiția mesajului s-a schimbat",
"translate-manage-submit": "Execută",
"translate-manage-import-ok": "Importată: $1",
"translate-manage-import-done": "Importare finalizată!",
@@ -231,9 +223,7 @@
"translate-js-summary": "Rezumat:",
"translate-js-save": "Salvare",
"translate-js-next": "Salvează și mergi mai departe",
- "translate-js-nonext": "Acesta este ultimul mesaj de pe această pagină.",
"translate-js-skip": "Sari mai departe",
- "translate-js-save-failed": "Salvarea a eșuat. Vă rugăm să raportați această eroare.",
"translate-js-history": "Istoricul traducerii",
"translate-js-support": "Adresați o întrebare",
"translate-js-support-title": "Cereți ajutor în cazul în care nu există suficiente informații pentru a traduce corect acest mesaj.",
@@ -252,19 +242,6 @@
"translate-searchprofile-tooltip": "Caută în toate traducerile",
"translate-search-languagefilter": "Filtrare după limbă:",
"translate-search-nofilter": "Fără filtrare",
- "translate-messagereview-submit": "Marchează ca revizuită",
- "translate-messagereview-progress": "Se marchează ca revizuită...",
- "translate-messagereview-failure": "Marcarea ca revizuită a eșuat: $1",
- "translate-messagereview-done": "Revizuită",
- "translate-messagereview-reviews": "Revizuit de {{PLURAL:$1|un utilizator|$1 utilizatori|$1 de utilizatori}}",
- "translate-messagereview-reviewswithyou": "Revizuit de {{PLURAL:$1|dumneavoastră|$1 utilizatori, inclusiv dumneavoastră|$1 de utilizatori, inclusiv dumneavoastră}}",
- "api-error-invalidrevision": "Traducerea nu a fost găsită",
- "api-error-unknownmessage": "Mesajul nu a fost găsit",
- "api-error-fuzzymessage": "Traducerea este marcată ca fuzzy",
- "api-error-owntranslation": "Nu vă puteți marca propriile traduceri ca revizuite",
- "translate-messagereview-no-fuzzy": "Traducerile fuzzy nu pot fi marcate ca revizuite.",
- "translate-messagereview-no-own": "Nu vă puteți marca propriile traduceri ca revizuite.",
- "translate-messagereview-doit": "Marcați această traducere ca revizuită.",
"log-name-translationreview": "Jurnal recenzii traduceri",
"log-description-translationreview": "Jurnalul tuturor revizuirilor pentru traduceri și grupuri de mesaje.",
"logentry-translationreview-message": "$1 {{GENDER:$2|a revizuit}} traducerea $3",
@@ -273,20 +250,12 @@
"group-translate-sandboxed-member": "{{GENDER:$1|traducător neaprobat}}",
"translate-workflow-state-": "(dezactivat)",
"translate-workflowstatus": "Stare: $1",
- "translate-workflow-set-do": "Activat",
"translate-workflow-set-doing": "Se activează...",
- "translate-workflow-set-done": "Activat!",
- "translate-workflow-set-error-alreadyset": "Starea solicitată este identică cu starea actuală.",
"translate-stats-workflow": "Statut",
"translate-dynagroup-recent-label": "Traduceri recente",
"translate-dynagroup-recent-desc": "Acest grup de mesaje afișează toate traducerile recente pentru această limbă. Este util în special în cazul revizuirilor.",
"translate-dynagroup-additions-label": "Adăugiri recente",
"translate-dynagroup-additions-desc": "Acest grup de mesaje afișează mesajele noi și modificate.",
- "translate-dynagroup-by": "Traducere efectuată de către {{GENDER:$1|$1}}",
- "translate-dynagroup-byc": "Traducere efectuată de către {{GENDER:$1|$1}} ($2)",
- "translate-dynagroup-last": "Ultima schimbare de către {{GENDER:$1|$1}}",
- "translate-dynagroup-lastc": "Ultima schimbare de către {{GENDER:$1|$1}} ($2)",
- "translate-gethelp": "Ajutor",
"translate-msggroupselector-projects": "Grup de mesaje",
"translate-msggroupselector-search-placeholder": "Căutare grupuri",
"translate-msggroupselector-search-all": "Toate",
@@ -368,6 +337,7 @@
"tux-editor-expand-tooltip": "Extindere",
"tux-editor-collapse-tooltip": "Restrânge",
"tux-editor-message-tools-history": "Istoric",
+ "tux-editor-message-tools-delete": "Șterge",
"tux-editor-message-tools-translations": "Toate traducerile",
"tux-editor-loading": "Încărcare...",
"translate-search-more-languages-info": "Încă {{PLURAL:$1|o limbă|$1 limbi|$1 de limbi}}",
diff --git a/MLEB/Translate/i18n/core/roa-tara.json b/MLEB/Translate/i18n/core/roa-tara.json
index 995f77fb..9d17e0c2 100644
--- a/MLEB/Translate/i18n/core/roa-tara.json
+++ b/MLEB/Translate/i18n/core/roa-tara.json
@@ -6,11 +6,7 @@
},
"translate": "Traduce",
"translate-desc": "[[Special:Translate|Pàgena speciele]] pe le traduziune de MediaUicchi e rrete",
- "translate-taskui-view": "Fà vedè tutte le messàgge",
- "translate-taskui-untranslated": "Fà vedè le messàgge da traducere",
- "translate-taskui-optional": "Fà vedè le messaggè opzionale",
- "translate-taskui-acceptqueue": "Sulamende le messàgge ca pozze signà cumme reviste",
- "translate-taskui-reviewall": "Revide tutte le traduziune",
+ "translate-fuzzybot-desc": "Stu cunde speciale de sisteme avène ausate da l'[https://www.mediawiki.org/wiki/Extension:Translate estenzione de traduzione] de MediaUicchi ausate pe mandenè le traduziune.\nStu cunde jè 'nu stuézze d'u softuer de MediaUicchi e non ge se pò ddà a nisciune utende.",
"translate-taskui-export-to-file": "Esporte in formate native",
"translate-taskui-export-as-po": "Esporte pe le traduziune fore linèe",
"translate-taction-translate": "Traduce",
@@ -40,7 +36,6 @@
"translate-page-description-hasoptional": "Stu gruppe de messàgge tène messàgge opzionale.\nLe messàgge opzione avessera sulamende essere tradotte quanne 'a lènga toje tène richieste speciale cumme a quidde de nò ausà spazie o probbietà de translitterazione de le nome. $1",
"translate-page-description-hasoptional-open": "Fà vedè le messàgge opzionale.",
"translate-page-edit": "cange",
- "translate-ext-url": "<hr />Site web: $1",
"translate-optional": "(opzionale)",
"translate-ignored": "(ignorate)",
"translate-edit-title": "Cange \"$1\"",
@@ -50,15 +45,19 @@
"translate-edit-no-information": "<em>Stu messàgge non ge tène 'na documendazione.\nCe tu canusce addò o cumme stu messàgge avène ausate, tu puè dà 'na màne a otre tradutture pe aggiungere 'a documendazione a stu messàgge.</em>",
"translate-edit-information": "'Mbormaziune sus a 'u messàgge ($1)",
"translate-edit-in-other-languages": "Messàgge jndr'à otre lènghe",
- "translate-edit-committed": "Traduzione de mò jndr'à 'u softuer",
"translate-edit-warnings": "Avverteminde sus a le traduziune 'ngomblete",
- "translate-edit-tmsugs": "Suggereminde da le memorie de le traduziune e da le traduziune de le maghene",
"translate-edit-tmmatch-source": "Teste origgenale d'a traduzione: $1",
"translate-edit-tmmatch": "$1% de combronde",
"translate-use-suggestion": "Sostituisce 'a traduzione de mò cu le suggereminde.",
"translate-edit-nopermission": "Tu è abbesogne de le permesse pe traducere le messàgge.",
"translate-edit-askpermission": "Richieste de permesse",
+ "exporttranslations": "Esporte le traduziune",
+ "translate-export-form-format": "Formate",
+ "translate-export-invalid-format": "Specifiche 'nu formate valide.",
+ "translate-export-not-supported": "L'esportazione de le traduziune non ge stè.",
+ "translate-export-format-notsupported": "'U formate de esportazione specificate non g'avène supportate da 'u gruppe de le messàgge.",
"translate-magic-pagename": "Traduzione Estese de MediaUicchi",
+ "translate-magic-help": "Puè traducere le alias de le pàggene speciale, le parole mageche e le nome de le namespace.\n\nLe alias de le pàggene speciale e le parole mageche ponne avè cchiù traduziune.\nLe traduziune avènene separate da 'na virgole (,).\nLe namespace ponne avè sulamende 'na traduzione.\n\nTraducere 'u namespace de le 'ngazzaminde de le pàggene de pruggette <code>$1 talk</code> pò essere comblicate assaije. <code>$1</code> avène cangiate cu 'u nome d'u site (pe esembie <code>{{ns:project_talk}}</code>).\nCe non g'è possibbile fà 'n'espressione valide jndr'à lènga toje senze cangià 'u nome d'u site, pe piacere condatte 'u [[Support]].\n\nA essere traduttore pe reggistrà le cangiaminde toje.\nLe cangiaminde non g'avènene reggistrate 'nzigne ca non ge cazze sus a 'u buttone \"Reggistre\" aqquà sotte.",
"translate-magic-module": "Module:",
"translate-magic-submit": "Analizze",
"translate-magic-cm-export": "Esporte",
@@ -75,9 +74,10 @@
"translate-magic-namespace": "Nome de le namespace",
"translate-magic-notsaved": "'U cangiamende tune non g'à state reggistrate!",
"translate-magic-errors": "Pe piacere corregge {{PLURAL:$1|'u seguende errore|le seguende errore}} jndr'à le traduziune:",
- "translate-magic-saved": "Le cangiaminde tune onne state reggistrate correttamende.",
+ "translate-magic-saved": "Le cangiaminde tune onne state reggistrate.",
"translate-checks-parameters": "{{PLURAL:$2|'U seguende parametre non g'è|'U seguende parametre non ge sonde}} ausate:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-parameters-unknown": "{{PLURAL:$2|'U seguende parametre jè|'U seguende parametre sò}} scanusciute:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Ste 'nu numere de {{PLURAL:$2|parendesi}} scucchiate: <strong><nowiki>$1</nowiki></strong>",
"translate-checks-links": "{{PLURAL:$2|'U collegamende suguende jè probblematiche|Le $2 collegaminde seguende sò probblematece}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-links-missing": "{{PLURAL:$2|'U collegamende suguende jè |Le $2 collegaminde seguende sò }} mangande:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-xhtml": "Pe piacere sostituisce {{PLURAL:$2|'u tag|le tag}} cu une corrette:\n<strong><nowiki>$1</nowiki></strong>",
@@ -86,12 +86,14 @@
"translate-checks-plural-dupe": "<nowiki>{{PLURAL:}}</nowiki> ave module duplicate a 'a fine. <nowiki>{{PLURAL:$1|pecore|pecore}}</nowiki> avessera essere scritte cumme a <nowiki>{{PLURAL:$1|pecore}}</nowiki>.",
"translate-checks-pagename": "'U namespace ha cangiate da 'a definizione",
"translate-checks-format": "Sta traduzione non ge segue 'a definizione o tène 'na sindassi invalide: $1",
+ "translate-checks-escape": "Le cange de codece seguende ponne essere accidendale: <strong>$1</strong>",
"translate-checks-parametersnotequal": "'U cunde de le parametre jè {{PLURAL:$1|$1}}; invece avessa essere {{PLURAL:$2|$2}}.",
"translate-checks-malformed": "<nowiki>$1</nowiki> jè malformate.",
"translate-checks-fudforum-syntax": "Ause <nowiki>$1</nowiki> invece de <nowiki>$2</nowiki> jndr'à stu proggette.",
"translate-pref-nonewsletter": "No me mannà email da le newsletter",
"translate-pref-editassistlang": "Assistende de le lènghe:",
"prefs-translate": "Opziune de traduzione",
+ "translate-pref-editassistlang-help": "Codece de le lènghe separate da virgole.\nLe traduziune de 'nu messàgge jndr'à ste lènghe avènene fatte 'ndrucà duranne 'a traduzione.\nL'elenghe predefinite (default) de le lènghe depende da ìa probbia lènghe.",
"translate-pref-editassistlang-bad": "Codece d'a lènghe invalide jndr'à l'elenghe:\n<nowiki>$1</nowiki>.",
"right-translate": "Cange ausanne l'inderfacce de traduzione",
"right-translate-manage": "Gestisce le gruppe de messàgge",
@@ -99,7 +101,16 @@
"right-translate-import": "'Mborte le traduziune fore linèe",
"action-translate-import": "'mborte le traduziune fore linèe",
"right-translate-messagereview": "Revide le traduziune",
+ "action-translate-messagereview": "revide le traduziune",
"right-translate-groupreview": "Cange 'u state d'u flusse de fatìe de le gruppe de messàgge",
+ "action-translate-groupreview": "cange 'u state d'u flusse de fatìe de le gruppe de messàgge",
+ "translate-rcfilters-translations": "Traduziune",
+ "translate-rcfilters-translations-only-label": "Traduziune",
+ "translate-rcfilters-translations-only-desc": "Cangiaminde sus a le pàggene tradotte.",
+ "translate-rcfilters-translations-filter-label": "Nisciuna traduzione",
+ "translate-rcfilters-translations-filter-desc": "Tutte le cangiaminde ca non ge so traduziune.",
+ "translate-rcfilters-translations-site-label": "Messàgge d'u site",
+ "translate-rcfilters-translations-site-desc": "Personalizzaziune de le messàgge d'u site jndr'à le namespace de MediaUicchi.",
"translate-rc-translation-filter": "Filtre de traduziune:",
"translate-rc-translation-filter-no": "No fà ninde",
"translate-rc-translation-filter-only": "Fà vedè sulamende le traduziune",
@@ -131,7 +142,6 @@
"translate-statsf-language": "Elenghe separate da virgole de le codece de le lènghe:",
"translate-statsf-group": "Elenghe separate da virgole de le codece de le gruppe:",
"translate-statsf-submit": "Andeprime",
- "translate-tag-category": "Pàggene traducibbele",
"translate-tag-page-desc": "Traduzione d'a pàgene uicchi [[$2|$1]] da $3 ($4).",
"translate-sidebar-alltrans": "Jndr'à l'otre lènghe",
"translations": "Tutte le traduziune",
@@ -142,22 +152,27 @@
"translate-translations-fieldset-title": "Mèssagge",
"translate-translations-messagename": "Nome:",
"translate-translations-project": "Pruggette:",
+ "translate-translations-including-no-param": "Pe piacere specifiche 'na chiave de messàgge valide jndr'à 'u parametre d'a sottopàgene",
"translate-translations-history-short": "h",
"languagestats": "Statisteche d'a lènghe",
"languagestats-summary": "Sta pàgene face vedè le traduziune pe tutte le gruppe de messàgge pe 'na lènghe.",
+ "messagegroupstats-summary": "Sta pàgene face 'ndrucà le statisteche de le gruppe de messàgge.",
"languagestats-stats-for": "Statisteche de le traduziune pe $1 ($2).",
"languagestats-recenttranslations": "traduziune recende",
+ "translate-langstats-incomplete": "De le statisteche de sta pàgene so 'ngomblete. Careche arrete 'a pàgene pe farle assè cchiù comblete.",
"translate-langstats-expand": "spanne",
"translate-langstats-collapse": "scunne",
"translate-langstats-expandall": "spanne tutte",
"translate-langstats-collapseall": "scunne tutte",
"translate-language-code": "Codece d'a Lènghe",
"translate-language-code-field-name": "Codece d'a Lènghe:",
+ "translate-suppress-complete": "Scunne combletamende le gruppe de le messàgge tradotte",
+ "translate-ls-noempty": "Scunne combletamende le gruppe de le messàgge non tradotte",
"translate-language": "Lènghe",
"translate-total": "Messagge Totale",
"translate-untranslated": "Senza traduzione",
"translate-percentage-complete": "% de Combletamende",
- "translate-percentage-fuzzy": "Non aggiornete",
+ "translate-percentage-fuzzy": "Non aggiornate",
"translate-languagestats-overall": "Tutte le gruppe de messàgge 'nzieme",
"translate-ls-submit": "Fà vedè le statisteche",
"translate-ls-column-group": "Gruppe de messàgge",
@@ -165,18 +180,23 @@
"translate-mgs-fieldset": "Fà vedè le preferenze",
"translate-mgs-group": "Messàgge d'u gruppe:",
"translate-mgs-nocomplete": "No fà vedè le lènghe ca onne le traduziune combletate",
+ "translate-mgs-noempty": "No fà 'ndrucà le lènghe ca no tènene nisciuna traduzione",
"translate-mgs-submit": "Fà vedè le statisteche",
"translate-mgs-column-language": "Lènghe",
- "translate-mgs-totals": "Tutte le lènghe 'nzieme",
+ "translate-mgs-totals": "Tutte le $1 {{PLURAL:$1|lènghe}} 'nzieme",
"translate-mgs-invalid-group": "'U gruppe specifiche $1 non g'esiste.",
"translate-mgs-nothing": "Ninde da fà vedè pe le statisteche cercate.",
"supportedlanguages": "Lènghe supportate",
+ "supportedlanguages-summary": "Sta pàgene face 'ndrucà 'n'elenghe de totte le lènghe mandenute da {{SITENAME}}, 'nzieme a le nome de le tradutture ca onne fatiate sus a quedda lènghe. 'U nome de 'nu traduttore iesse de demenziune cchiù granne ce ha fatte 'nu sbuènne de cangiaminde ce nò iesse cchiù piccinne, invece 'u culore d'a sottolineature indichesce quanda tiembe ha passate da l'urtema attività soje.",
+ "supportedlanguages-colorlegend": "Leggende d'u culore: L'urtema traduzione jè de $1 sciurne fà.",
"supportedlanguages-portallink": "[$1] $2 - $3",
"supportedlanguages-portallink-nocldr": "[$1] $2",
+ "supportedlanguages-sqlite-error": "SQLite non g'è supportate",
"supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|Traduttore}}|Tradutture}}: $1",
"supportedlanguages-recenttranslations": "traduziune recende",
"supportedlanguages-count": "$1 {{PLURAL:$1|lènghe}} in totale.",
"supportedlanguages-activity": "$1: $2 {{PLURAL:$2|cangiamende|cangiaminde}} - l'urteme cangiamende $3 {{PLURAL:$3|sciurne}} fà",
+ "abusefilter-edit-builder-vars-translate-source-text": "Teste de origgene de 'n'aunità de traduzione",
"translate-save": "Reggistre ($1)",
"translate-jssti-add": "Aggiunge a l'elenghe",
"managemessagegroups": "Gestione de le gruppe de messàgge",
@@ -184,6 +204,7 @@
"translate-smg-nochanges": "Non ge stonne cangiaminde da processà.",
"translate-smg-submit": "Conferme le cangiaminde pu processe",
"translate-smg-submitted": "'A definizione de le messàgge ha state aggiornate. Le cangiaminde stonne avènene processate da sotta sotte.",
+ "translate-smg-more": "Stonne otre cangiaminde da trattà apprisse 'u 'nvie de ste cangiaminde.",
"translate-smg-left": "Condenute d'u messàgge jndr'à uicchi",
"translate-smg-right": "Cangiaminde ca arrivane",
"translate-manage-import-diff": "Messàgge $1 | Aziune: $2",
@@ -194,7 +215,13 @@
"translate-manage-action-ignore": "Ignore",
"translate-manage-action-fuzzy": "'Mborte e mitte le traduziune da revedè",
"translate-manage-nochanges": "Non ge stonne cangiaminde jndr'à le definiziune de le messàgge jndr'à stu gruppe.",
+ "translate-manage-nochanges-other": "Non ge stonne cangiaminde pe sta lénghe.\nAuse 'u collegamende aqquà sotte pe 'ndrucà le dettaglie d'u gruppe.",
+ "translate-manage-inconsistent": "Ha state acchiate 'n'ingonsistenze jndr'à richieste.\nControlle le cangiaminde e pruéve arrete.\nDettaglie: $1",
+ "translate-manage-toolong": "'U tiembe massime de elabborazione de $1 {{PLURAL:$1|seconde}} ha spicciate.\nPe piacere manna arrete 'u module pe condinuà jndr'à l'elabborazione.",
+ "translate-manage-import-summary": "Stoche a 'mborte 'na versiona nove da 'na sorgende de fore",
+ "translate-manage-conflict-summary": "Stoche a 'mborte 'na versiona nove da 'na fonde de fore.\nPe piacere condrolle.",
"translate-manage-submit": "Esegue",
+ "translate-manage-intro-other": "Aqquà sotte ste 'n'elenghe de cangiaminde a le traduziune jndr'à lènghe $1.\nCondrolle le cangiaminde e scacchie l'azione da ffà pe ogne messàgge.\nCe scacchie de cacà le cangiaminde, sta azione addevende sulamende temboranèe.",
"translate-manage-import-ok": "'Mbortate: $1",
"translate-manage-import-done": "'Mbortazione combletate!",
"importtranslations": "'Mborte le traduziune",
@@ -205,14 +232,16 @@
"translate-import-err-invalid-title": "'U nome d'u file date <nowiki>$1</nowiki> ere invalide.",
"translate-import-err-no-such-file": "'U file <nowiki>$1</nowiki> non g'esiste o non già state carecate in locale.",
"translate-import-err-stale-group": "Jndr'à 'u gruppe de messàgge stu file non g'esiste.",
+ "translate-import-err-no-headers": "'U file non g'è 'nu Gettext formattate correttamende pe l'estenzione Translate:\n'Mbossibbile determinà 'u gruppe de messàgge e 'a lènghe da le 'ndestazziune d'u file.",
+ "translate-import-err-warnings": "'U file non g'è furmate bbuène.\nAssecurate ca 'u probbie cangiatore non ge leve le cambe msgctxt.\nDettaglie: $1",
"translate-js-summary": "Riepileghe:",
"translate-js-save": "Reggìstre",
"translate-js-next": "Reggìstre e iapre 'u prossime",
- "translate-js-nonext": "Quiste ere l'urteme messàgge sus a sta pàgene.",
"translate-js-skip": "Zumbe a 'u prossime",
- "translate-js-save-failed": "Reggistrazione fallite. Pe piacere segnale st'errore.",
"translate-js-history": "Cunde d'a traduzione",
"translate-js-support": "Fà 'na domande",
+ "translate-js-support-title": "Richieste de assistenze ce non ge iacchie 'mbormaziune sufficiende pe traducere stu messàgge.",
+ "translate-js-support-unsaved-warning": "Tu è tradiziune non reggistrate.",
"translate-gs-pos": "Pos.",
"translate-gs-code": "Codece",
"translate-gs-continent": "Continende",
@@ -225,41 +254,30 @@
"translate-documentation-language": "Documendazione d'u messàgge",
"translate-searchprofile": "Tradutture",
"translate-searchprofile-tooltip": "Cirche da tutte le traduziune",
+ "translate-searchprofile-note": "Cchiù opziune pa recerche sò disponibbile cy [$1 ricerche de traduzione].",
"translate-search-languagefilter": "Filtre pe lènghe:",
"translate-search-nofilter": "Nisciune filtre",
- "translate-messagereview-submit": "Signe reviste",
- "translate-messagereview-progress": "Stoche a segne cumme reviste...",
- "translate-messagereview-failure": "Stoche a segne cumme reviste fallite: $1",
- "translate-messagereview-done": "Reviste",
- "translate-messagereview-reviews": "Reviste da {{PLURAL:$1|'n'utende|$1 utinde}}",
- "translate-messagereview-reviewswithyou": "Reviste da {{PLURAL:$1|te|$1 utinde cu te}}",
- "api-error-invalidrevision": "Traduzione none acchiate",
- "api-error-unknownmessage": "Messàgge none acchiate",
- "api-error-fuzzymessage": "Traduzione signate cumme da revedè",
- "api-error-owntranslation": "Tu non ge puè signà 'a traduziona toje cumme reviste",
- "translate-messagereview-no-fuzzy": "Le traduziune non confermate non ge ponne essere signate cumme reviste.",
- "translate-messagereview-no-own": "Tu non ge puè signà 'a traduziona toje cumme reviste.",
- "translate-messagereview-doit": "Signe sta traduzione cumme reviste.",
"log-name-translationreview": "Archivije de le revisitaziune de le traduziune",
+ "log-description-translationreview": "Archivije de tutte le revisiune de le traduziune e de le gruppe de messàgge.",
"logentry-translationreview-message": "$1 traduzione {{GENDER:$2|reviste}} $3",
+ "logentry-translationreview-group": "$1 {{GENDER:$2|ave cangiate}} 'u state de $4 traduziune de $3 da $6 a $7",
"group-translate-sandboxed": "Tradutture none approvate",
"group-translate-sandboxed-member": "{{GENDER:$1|traduttore none approvate}}",
+ "right-translate-sandboxmanage": "Gestisce le buatte de sabbie de l'utinde",
+ "action-translate-sandboxmanage": "gestisce le buatte de sabbie de l'utinde",
+ "right-translate-sandboxaction": "Esegue aziune autorizzate pe le utinde in modalità sandbox",
+ "action-translate-sandboxaction": "esegue aziune autorizzate pe le utinde in modalità sandbox",
"translate-workflow-state-": "(none 'mbostate)",
"translate-workflowstatus": "State: $1",
- "translate-workflow-set-do": "'Mboste",
"translate-workflow-set-doing": "Stoche a 'mboste...",
- "translate-workflow-set-done": "'Mbostate!",
+ "translate-workflow-autocreated-summary": "Ccrejazzione automateche d'a pàgene pu state de flusse de fatìe $1",
"translate-stats-workflow": "State",
"translate-workflowgroup-label": "State de le flusse de fatìe",
"translate-workflowgroup-desc": "Stu gruppe de messàgge face vedè le state de le flusse de fatìe de le traduziune.\nLe state sò definite jndr'à variabbile de configurazione $wgTranslateWorkflowStates.",
"translate-dynagroup-recent-label": "Traduziune recende",
+ "translate-dynagroup-recent-desc": "Stu gruppe de messàgge face 'ndrucà le urteme traduziune jndr'à sta lènghe.\nUtile pe l'attività de revisione.",
"translate-dynagroup-additions-label": "Urteme aggiunde",
"translate-dynagroup-additions-desc": "Stu gruppe de messàgge face vedè le messàgge nuève e cangiate.",
- "translate-dynagroup-by": "Traduziona fatte da {{GENDER:$1|$1}}",
- "translate-dynagroup-byc": "Traduziona fatte da {{GENDER:$1|$1}} ($2)",
- "translate-dynagroup-last": "Urteme cangiamende de {{GENDER:$1|$1}}",
- "translate-dynagroup-lastc": "Urteme cangiamende de {{GENDER:$1|$1}} ($2)",
- "translate-gethelp": "Ajute",
"translate-msggroupselector-projects": "Gruppe de messàgge",
"translate-msggroupselector-search-placeholder": "Gruppe de ricerche",
"translate-msggroupselector-search-all": "Tutte",
@@ -278,14 +296,17 @@
"tux-status-translated": "Tradotte",
"tux-status-saving": "Stoche a reggistre...",
"tux-status-unsaved": "Non reggistrate",
+ "tux-save-unknown-error": "'N'errore scanusciute s'a verificate.",
"tux-editor-placeholder": "'A traduziona toje",
+ "tux-editor-editsummary-placeholder": "Riepiloghe opzionale",
"tux-editor-paste-original-button-label": "Copie 'u teste iniziale",
"tux-editor-discard-changes-button-label": "Scitte le cangiaminde",
"tux-editor-save-button-label": "Reggistre 'a traduzione",
"tux-editor-skip-button-label": "Zumbe a 'u prossime",
"tux-editor-cancel-button-label": "Annulle",
"tux-editor-confirm-button-label": "Conferme 'a traduzione",
- "tux-editor-shortcut-info": "Cazze \"$1\" pe reggistrà o \"$2\" pe zumbà a 'u prossime messàgge o \"$3\" pe otre cose.",
+ "tux-editor-proofread-button-label": "Signe cumme reviste",
+ "tux-editor-shortcut-info": "Cazze \"$1\" pe reggistrà o \"$2\" pe zumbà a 'u prossime messàgge o \"$4\" pe pigghià 'u riepiloghe o \"$3\" pe otre cose.",
"tux-editor-edit-desc": "Cange 'a documendazione",
"tux-editor-add-desc": "Aggiunge 'a documendazione",
"tux-editor-suggestions-title": "Suggereminde",
@@ -321,6 +342,7 @@
"tux-proofread-translated-by-self": "Tradotte da te",
"tux-empty-list-all": "Stu gruppe de messàgge jè vacande",
"tux-empty-list-all-guide": "Scacchie 'n'otre gruppe de messàgge da traducere",
+ "tux-translate-page-no-such-group": "<strong>'U gruppe scacchiate non g'esiste.</strong> Scacchie 'n'otre gruppe de messàgge.",
"tux-empty-list-translated": "Nisciune messàgge tradotte",
"tux-empty-list-translated-guide": "Ne puè dà 'na màne a traducere",
"tux-empty-list-translated-action": "Traduce",
@@ -329,6 +351,7 @@
"tux-empty-show-optional-messages": "Fà vedè le messàgge opzionale",
"tux-empty-no-outdated-messages": "Nisciune messàgge da aggiornà",
"tux-empty-nothing-to-proofread": "Ninde da rivedè",
+ "tux-empty-you-can-help-providing": "Tu puè dà 'na màne danne traduziune nuève",
"tux-empty-nothing-new-to-proofread": "Ninde de nuève da rivedè",
"tux-empty-you-can-review-already-proofread": "Tu puè revedè le traduziune ggià riviste da l'otre.",
"tux-empty-list-other": "Ninde da traducere",
@@ -338,13 +361,18 @@
"tux-editor-close-tooltip": "Achiude",
"tux-editor-expand-tooltip": "Spanne",
"tux-editor-collapse-tooltip": "Scunne",
+ "tux-editor-message-tools-show-editor": "Fà 'ndrucà jndr'à 'u cangiatore de uicchi",
"tux-editor-message-tools-history": "Cunde",
"tux-editor-message-tools-delete": "Scangìlle",
"tux-editor-message-tools-translations": "Tutte le traduziune",
+ "tux-editor-message-tools-linktothis": "Collegaminde a stu messàgge",
"tux-editor-loading": "Stoche a scareche…",
"translate-search-more-languages-info": "$1 cchiù {{PLURAL:$1|lènghe}}",
"translate-statsbar-tooltip": "$1% tradotte, $2% reviste",
"translate-statsbar-tooltip-with-fuzzy": "$1% tradotte, $2% reviste, $3% da aggiornà",
"translate-search-more-groups-info": "$1 cchiù {{PLURAL:$1|gruppe}}",
- "translate-ulsdep-title": "Errore de configurazione"
+ "translate-ulsdep-title": "Errore de configurazione",
+ "translate-ulsdep-body": "L'estenzione de traduzione depenne da l'[https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector estenzione Scacchiatore Universale de Lènghe].",
+ "tux-session-expired": "Non g'è trasute. Tràse jndr'à 'na schede a parte; oppure copie 'a traduzione ca non g'è reggistrate, tràse, e tuèrne jndr'à sta pàgene e sckaffe 'a traduziona toje.",
+ "tux-nojs": "Stu strumende non ge funzione senze JavaScript. JavaScript jè disabilitate, non ge ste funzione, o 'u browser tune non g'u supporte."
}
diff --git a/MLEB/Translate/i18n/core/ru.json b/MLEB/Translate/i18n/core/ru.json
index 8e1459e8..08fefc6d 100644
--- a/MLEB/Translate/i18n/core/ru.json
+++ b/MLEB/Translate/i18n/core/ru.json
@@ -22,16 +22,21 @@
"Rubin",
"Tempodivalse",
"Volkov",
- "Александр Сигачёв"
+ "Александр Сигачёв",
+ "Туллук",
+ "Irus",
+ "Kareyac",
+ "Умар",
+ "Ping08",
+ "Mailman",
+ "Av6",
+ "Wirbel78",
+ "Vlad5250"
]
},
"translate": "Перевод",
"translate-desc": "[[Special:Translate|Служебная страница]] для перевода MediaWiki и прочих программ",
- "translate-taskui-view": "Показать все сообщения",
- "translate-taskui-untranslated": "Показать непереведённые сообщения",
- "translate-taskui-optional": "Показать дополнительные сообщения",
- "translate-taskui-acceptqueue": "Только сообщения, ожидающие моей проверки",
- "translate-taskui-reviewall": "Проверить все переводы",
+ "translate-fuzzybot-desc": "Это специальная системная учетная запись, используемая [https://www.mediawiki.org/wiki/Extension:Translate/ru расширением перевода] MediaWiki для задач поддержки переводов.\nЭта учетная запись является частью программного обеспечения MediaWiki и не принадлежит никакому участнику.",
"translate-taskui-export-to-file": "Экспорт в родном формате",
"translate-taskui-export-as-po": "Экспорт для оффлайнового перевод",
"translate-taction-translate": "Перевод",
@@ -60,7 +65,6 @@
"translate-page-description-hasoptional": "В этой группе содержатся дополнительные сообщения.\nДополнительные сообщения переводятся только в тех случаях, когда ваш язык предъявляет какие-то дополнительные требования, — например, если где-то не должны использоваться пробелы, или при транслитерации имён собственных. $1",
"translate-page-description-hasoptional-open": "Показывать дополнительные сообщения.",
"translate-page-edit": "изменить",
- "translate-ext-url": "<hr />Сайт: $1",
"translate-optional": "(необязательное)",
"translate-ignored": "(игнорируемое)",
"translate-edit-title": "Изменить «$1»",
@@ -70,14 +74,17 @@
"translate-edit-no-information": "<em>Это сообщение не имеет описания. Если вы знаете, где или как это сообщение используется, то можете помочь другим переводчикам, добавив к нему описание.</em>",
"translate-edit-information": "Информация о сообщении ($1)",
"translate-edit-in-other-languages": "Сообщение на других языках",
- "translate-edit-committed": "Текущий перевод в программе",
"translate-edit-warnings": "Предупреждения о неполных переводах",
- "translate-edit-tmsugs": "Предложения из памяти переводов",
"translate-edit-tmmatch-source": "Текст исходного сообщения для перевода: $1",
"translate-edit-tmmatch": "$1% соответствие",
"translate-use-suggestion": "Заменить текущий текст перевода на эту подсказку.",
"translate-edit-nopermission": "Для перевода сообщений вам требуется получить права переводчика.",
"translate-edit-askpermission": "Получить разрешение",
+ "exporttranslations": "Экспорт переводов",
+ "translate-export-form-format": "Формат:",
+ "translate-export-invalid-format": "Пожалуйста, предоставьте корректный формат",
+ "translate-export-not-supported": "Экспорт переводов не поддерживается.",
+ "translate-export-format-notsupported": "Указанный формат экспорта не не поддерживается этой группой сообщений.",
"translate-magic-pagename": "Углублённый перевод MediaWiki",
"translate-magic-help": "Вы можете переводить псевдонимы служебных страниц, «волшебные слова» и названия пространств имён.\n\nСлужебные страницы и «волшебные слова» могут иметь несколько переводов.\nПереводы разделяются запятой (,).\nНазвания пространств имён могут иметь только один вариант перевода.\n\nПеревод названий пространств имён, содержащих страницы обсуждений («<code>$1 talk</code>»), может оказаться сложнее, так как «<code>$1</code>» здесь будет заменено на имя сайта (например, «<code>{{ns:project_talk}}</code>»).\nЕсли подобная грамматическая конструкция для вашего языка некорректна без изменения имени сайта, сообщите нам об этом на странице [[Support]].\n\nЧтобы сохранить изменения, вы должны входить в группу переводчиков.\nИзменения не будут сохранены, пока вы не нажмёте кнопку ниже.",
"translate-magic-module": "Модуль:",
@@ -96,7 +103,7 @@
"translate-magic-namespace": "Пространства имён",
"translate-magic-notsaved": "Ваша правка не сохранена!",
"translate-magic-errors": "Пожалуйста, исправьте {{PLURAL:$1|1=следующую ошибку|следующие ошибки}} в переводе:",
- "translate-magic-saved": "Сделанные изменения успешно сохранены.",
+ "translate-magic-saved": "Сделанные вами изменения сохранены.",
"translate-checks-parameters": "{{PLURAL:$2|1=Следующий параметр не используется|Следующие параметры не используются}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-parameters-unknown": "{{PLURAL:$2|1=Неизвестный параметр|Неизвестные параметры}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-balance": "Непарное количество открывающих и закрывающих {{PLURAL:$2|скобок}}:\n<strong><nowiki>$1</nowiki></strong>",
@@ -123,7 +130,16 @@
"right-translate-import": "импортирование переводов, выполненных в оффлайне",
"action-translate-import": "импорт переводов, выполненных в оффлайне",
"right-translate-messagereview": "досмотр переводов",
+ "action-translate-messagereview": "проверку переводов",
"right-translate-groupreview": "изменять состояние обработки групп сообщений",
+ "action-translate-groupreview": "изменение состояния групп сообщений",
+ "translate-rcfilters-translations": "Переводы",
+ "translate-rcfilters-translations-only-label": "Переводы",
+ "translate-rcfilters-translations-only-desc": "Изменения в переведенных страницах.",
+ "translate-rcfilters-translations-filter-label": "Не переводы",
+ "translate-rcfilters-translations-filter-desc": "Все изменения, которые не являются переводами.",
+ "translate-rcfilters-translations-site-label": "Сообщения сайта",
+ "translate-rcfilters-translations-site-desc": "Кастомизация сообщений сайта в пространстве имён MediaWiki.",
"translate-rc-translation-filter": "Фильтровать переводы:",
"translate-rc-translation-filter-no": "Без ограничений",
"translate-rc-translation-filter-only": "Показать только переводы",
@@ -155,12 +171,11 @@
"translate-statsf-language": "Список кодов языков через запятую:",
"translate-statsf-group": "Список кодов групп через запятую:",
"translate-statsf-submit": "Предпросмотр",
- "translate-tag-category": "Переводимые страницы",
"translate-tag-page-desc": "Перевод вики-страницы [[$2|$1]] с $3 ($4).",
"translate-sidebar-alltrans": "На других языках",
"translations": "Все переводы",
"translations-summary": "Введите имя сообщения для показа всех доступных переводов.",
- "translate-translations-no-message": "«$1» не является сообщением, доступным для перевода",
+ "translate-translations-no-message": "«$1» не относится к сообщениям, доступным для перевода",
"translate-translations-none": "Нет переводов для «$1»",
"translate-translations-count": "{{PLURAL:$1|Найден $1 перевод|Найдено $1 перевода|Найдены $1 переводов}}.",
"translate-translations-fieldset-title": "Сообщение",
@@ -194,20 +209,21 @@
"translate-mgs-fieldset": "Показать настройки",
"translate-mgs-group": "Группа сообщений:",
"translate-mgs-nocomplete": "Не показывать языки, перевод на которые полностью завершён",
- "translate-mgs-noempty": "Не показывать языки, перевод на которые еще на начинался",
+ "translate-mgs-noempty": "Не показывать языки, перевод на которые ещё не начинался",
"translate-mgs-submit": "Показать статистику",
"translate-mgs-column-language": "Язык",
- "translate-mgs-totals": "Все языки",
+ "translate-mgs-totals": "Все $1 {{PLURAL:$1|язык|языка|языков}} вместе",
"translate-mgs-invalid-group": "Указанная группа $1 не существует.",
"translate-mgs-nothing": "Нет данных для отображения.",
"supportedlanguages": "Поддерживаемые языки",
- "supportedlanguages-summary": "На этой странице приведён список поддерживаемых проектом {{SITENAME}} языков\nвместе с именами тех, кто здесь трудится над переводами на эти языки.\nИмя переводчика отображается тем крупнее, чем больше правок он сделал.\nПо цвету подчёркивания можно понять, насколько давно переводчик последний раз совершал здесь какое-либо действие.",
+ "supportedlanguages-summary": "На этой странице приведён список поддерживаемых проектом {{SITENAME}} языков\nвместе с именами тех, кто здесь трудится над переводами на эти языки.\nИмя переводчика отображается тем крупнее, чем больше правок он сделал.\nПо цвет подчёркивания можно понять, насколько давно переводчик последний раз совершал здесь какое-либо действие.",
"supportedlanguages-colorlegend": "Цветовая легенда: последний перевод был сделан $1 {{PLURAL:$1|день|дня|дней}} назад.",
"supportedlanguages-portallink": "[$1] $2 — $3",
"supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|Переводчик|Переводчица}}|Переводчики}}: $1",
"supportedlanguages-recenttranslations": "недавние переводы",
"supportedlanguages-count": "Всего $1 {{PLURAL:$1|язык|языка|языков}}.",
"supportedlanguages-activity": "$1: $2 {{PLURAL:$2|правка|правки|правок}} — последняя правка $3 {{PLURAL:$3|день|дня|дней}} назад",
+ "abusefilter-edit-builder-vars-translate-source-text": "Исходный текст элемента перевода",
"translate-save": "Сохранить ($1)",
"translate-jssti-add": "Добавить в список",
"managemessagegroups": "Управление группами сообщений",
@@ -231,7 +247,6 @@
"translate-manage-toolong": "Превышено максимальное время обработки в $1 {{PLURAL:$1|секунду|секунды|секунд}}.\nПожалуйста, повторите отправку данных для продолжения обработки.",
"translate-manage-import-summary": "Импортирована новая версия из внешнего источника",
"translate-manage-conflict-summary": "Импортирована новая версия из внешнего источника. Пожалуйста, проверьте её.",
- "translate-manage-fuzzy-summary": "Изменилось описание сообщения",
"translate-manage-submit": "Выполнить",
"translate-manage-intro-other": "Ниже приведён список изменений в переводах на язык: $1.\nПожалуйста, просмотрите изменения и выберите желаемое действие для каждого изменения.\nЕсли вы проигнорируете изменения, то это будет временным действием.",
"translate-manage-import-ok": "Импортирована: $1",
@@ -244,14 +259,12 @@
"translate-import-err-invalid-title": "Указанное имя файла <nowiki>$1</nowiki> неверно.",
"translate-import-err-no-such-file": "Файл <nowiki>$1</nowiki> не существует или не загружен локально.",
"translate-import-err-stale-group": "Группы сообщений, к которой принадлежит этот файл, не существует.",
- "translate-import-err-no-headers": "Файл не является правильно построенным Gettext-файлом в формате расширения Translate.\nНевозможно определить группу и язык из заголовков файла.",
- "translate-import-err-warnings": "Файл не является правильно построенным.\nУбедитесь, что ваш редактор не удаляет поля msgctxt.\nПодробнее: $1",
+ "translate-import-err-no-headers": "Указан некорректно построенный Gettext-файл в формате расширения перевода.\nИз заголовков файла невозможно определить группу и язык.",
+ "translate-import-err-warnings": "Файл построен неправильно.\nУбедитесь, что ваш редактор не удаляет поля «msgctxt».\nПодробнее: $1",
"translate-js-summary": "Описание:",
"translate-js-save": "Сохранить",
"translate-js-next": "Сохранить и открыть следующий",
- "translate-js-nonext": "Это было последнее сообщение на этой странице.",
"translate-js-skip": "Перейти к следующему",
- "translate-js-save-failed": "Сохранение не выполнено. Пожалуйста, сообщите об этой ошибке.",
"translate-js-history": "История перевода",
"translate-js-support": "Задать вопрос",
"translate-js-support-title": "Обратитесь за помощью, если не хватает информации для правильного перевода этого сообщения.",
@@ -268,21 +281,9 @@
"translate-documentation-language": "Документация сообщения",
"translate-searchprofile": "Переводы",
"translate-searchprofile-tooltip": "Поиск во всех переводах",
+ "translate-searchprofile-note": "Дополнительные параметры поиска доступны в форме [$1 поиска переводов].",
"translate-search-languagefilter": "Фильтр по языку:",
"translate-search-nofilter": "Без фильтрации",
- "translate-messagereview-submit": "Пометить как проверенное",
- "translate-messagereview-progress": "Пометить как непроверенное",
- "translate-messagereview-failure": "Пометить как проверенное не удалось: $1",
- "translate-messagereview-done": "Проверено",
- "translate-messagereview-reviews": "Проверено {{PLURAL:$1|$1 участником|$1 участниками|1=другим участником}}",
- "translate-messagereview-reviewswithyou": "Проверено {{PLURAL:$1|$1 участником, включая вас|$1 участниками, включая вас|1=вами}}",
- "api-error-invalidrevision": "Перевод не был найден",
- "api-error-unknownmessage": "Сообщение не было найдено",
- "api-error-fuzzymessage": "Перевод помечен как нечёткий",
- "api-error-owntranslation": "Вы не можете проверять свои собственные переводы",
- "translate-messagereview-no-fuzzy": "Нечёткие переводы не могут быть помечены как проверенные.",
- "translate-messagereview-no-own": "Вы не можете проверять свои собственные переводы.",
- "translate-messagereview-doit": "Пометить этот перевод как проверенный.",
"log-name-translationreview": "Журнал проверки переводов",
"log-description-translationreview": "Журнал всех проверок переводов и групп сообщений.",
"logentry-translationreview-message": "$1 {{GENDER:$2|проверил|проверила}} перевод «$3»",
@@ -291,14 +292,11 @@
"group-translate-sandboxed-member": "{{GENDER:$1|неутверждённый переводчик|неутверждённая переводчица}}",
"right-translate-sandboxmanage": "управление правами участников, ещё не получивших полных прав (sandboxed users)",
"action-translate-sandboxmanage": "управлять правами участников, ещё не получивших полных прав (sandboxed users)",
- "right-translate-sandboxaction": "выполннение действий, разрешённых для участников, ещё не получивших полных прав (sandboxed users)",
+ "right-translate-sandboxaction": "выполнение действий, разрешённых для участников, ещё не получивших полных прав (sandboxed users)",
"action-translate-sandboxaction": "выполнять действия, разрешённые для участников, ещё не получивших полных прав (sandboxed users)",
"translate-workflow-state-": "(не задан)",
"translate-workflowstatus": "Статус: $1",
- "translate-workflow-set-do": "Установить",
"translate-workflow-set-doing": "Устанавливаем...",
- "translate-workflow-set-done": "Установлено!",
- "translate-workflow-set-error-alreadyset": "Запрашиваемое состояние идентично текущему.",
"translate-workflow-autocreated-summary": "Автоматическое создание страницы состояния рабочего процесса «$1»",
"translate-stats-workflow": "Статус",
"translate-workflowgroup-label": "Состояния процесса",
@@ -307,11 +305,6 @@
"translate-dynagroup-recent-desc": "Эта группа сообщений отображает все недавние переводы на данный язык.\nЭтот режим наиболее полезен для задач проверки.",
"translate-dynagroup-additions-label": "Недавние дополнения",
"translate-dynagroup-additions-desc": "Эта группа показывает новые и изменённые сообщения.",
- "translate-dynagroup-by": "Перевод выполнен {{GENDER:$1|участником|участницей}} $1",
- "translate-dynagroup-byc": "Перевод выполнен {{GENDER:$1|участником|участницей}} $1 ($2)",
- "translate-dynagroup-last": "Последние изменения от {{GENDER:$1|участника|участницы}} $1",
- "translate-dynagroup-lastc": "Последние изменения от {{GENDER:$1|участника|участницы}} $1 ( $2 )",
- "translate-gethelp": "Справка",
"translate-msggroupselector-projects": "Группа сообщений",
"translate-msggroupselector-search-placeholder": "Поиск групп",
"translate-msggroupselector-search-all": "Все",
@@ -330,14 +323,17 @@
"tux-status-translated": "Переведено",
"tux-status-saving": "Сохраняется...",
"tux-status-unsaved": "Не сохранено",
+ "tux-save-unknown-error": "Произошла неизвестная ошибка.",
"tux-editor-placeholder": "Ваш перевод",
+ "tux-editor-editsummary-placeholder": "Необязательный комментарий",
"tux-editor-paste-original-button-label": "Вставить исходный текст",
"tux-editor-discard-changes-button-label": "Отменить изменения",
"tux-editor-save-button-label": "Сохранить перевод",
"tux-editor-skip-button-label": "Следующее",
"tux-editor-cancel-button-label": "Отмена",
"tux-editor-confirm-button-label": "Подтвердить перевод",
- "tux-editor-shortcut-info": "Нажмите «$1» для сохранения, «$2» для перехода к следующему сообщению или «$3» для других ярлыков.",
+ "tux-editor-proofread-button-label": "Пометить как проверенное",
+ "tux-editor-shortcut-info": "Нажмите «$1» для сохранения, «$2» для перехода к следующему сообщению, «$4» для ввода описания изменения или «$3» для других ярлыков.",
"tux-editor-edit-desc": "Изменить документацию",
"tux-editor-add-desc": "Добавить документацию",
"tux-editor-suggestions-title": "Подсказки",
@@ -392,9 +388,11 @@
"tux-editor-close-tooltip": "Закрыть",
"tux-editor-expand-tooltip": "Развернуть",
"tux-editor-collapse-tooltip": "Свернуть",
+ "tux-editor-message-tools-show-editor": "Перейти в редактор вики-текста",
"tux-editor-message-tools-history": "История",
"tux-editor-message-tools-delete": "Удалить",
"tux-editor-message-tools-translations": "Все переводы",
+ "tux-editor-message-tools-linktothis": "Ссылка на это сообщение",
"tux-editor-loading": "Загрузка…",
"translate-search-more-languages-info": "ещё $1 {{PLURAL:$1|язык|языка|языков}}",
"translate-statsbar-tooltip": "$1% переведённых, $2% проверенных",
@@ -402,5 +400,6 @@
"translate-search-more-groups-info": "ещё $1 {{PLURAL:$1|группа|группы|групп}}",
"translate-ulsdep-title": "Ошибка конфигурации",
"translate-ulsdep-body": "Расширение по переводу зависит от [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector расширения «Универсальный переключатель языков»].",
- "tux-session-expired": "Вы не авторизованы. Пожалуйста, авторизуйтесь в отдельной вкладке, или скопируйте несохранённый перевод и вернитесь на эту страницу после авторизации."
+ "tux-session-expired": "Вы не авторизованы. Пожалуйста, авторизуйтесь в отдельной вкладке или скопируйте несохранённый перевод, вернитесь на эту страницу после авторизации и введите свой перевод ещё раз.",
+ "tux-nojs": "Этот инструмент не работает без JavaScript. JavaScript отключен, не работает, или этот браузер не поддерживается."
}
diff --git a/MLEB/Translate/i18n/core/rue.json b/MLEB/Translate/i18n/core/rue.json
index 992929b4..57205545 100644
--- a/MLEB/Translate/i18n/core/rue.json
+++ b/MLEB/Translate/i18n/core/rue.json
@@ -7,11 +7,6 @@
},
"translate": "Перекладаня",
"translate-desc": "[[Special:Translate|Шпеціална сторінка]] про переклад MediaWiki і іншых проґрамів",
- "translate-taskui-view": "Вказати вшыткы повідомлїня",
- "translate-taskui-untranslated": "Вказати непереложены повідомлїня",
- "translate-taskui-optional": "Вказати додатковы повідомлїня",
- "translate-taskui-acceptqueue": "Лем повідомлїня, якы можу прияти",
- "translate-taskui-reviewall": "Ошацовати вшыткы переклады",
"translate-taskui-export-to-file": "Екстортовати в натівнім форматї",
"translate-taskui-export-as-po": "Експортовати про офлайн переклад",
"translate-taction-translate": "Переклад",
@@ -40,7 +35,6 @@
"translate-page-description-hasoptional": "Тота ґрупа повідомлїнь обсягує волительны повідомлїня.\nВолительны повідомлня ся мають перекладати кідь ваш язык мать особливы потребы\nяк нехоснованя павз в текстї або транслітерація властных імен. $1",
"translate-page-description-hasoptional-open": "Вказати додатковы повідомлїня",
"translate-page-edit": "едітовати",
- "translate-ext-url": "<hr />Сайт: $1",
"translate-optional": "(волительне)",
"translate-ignored": "(іґнороване)",
"translate-edit-title": "Едітовати «$1»",
@@ -50,9 +44,7 @@
"translate-edit-no-information": "''Тото повідомлїня не має документацію. Кідь знаєте, де або як ся повідомлїня хоснує, можете помочі далшым перекладателям так, же придате документацію ку тому повідомлїню.''",
"translate-edit-information": "Інформація о повідомлїню ($1)",
"translate-edit-in-other-languages": "Повідомлїня іншыма языками",
- "translate-edit-committed": "Сучасный переклад в софтвері",
"translate-edit-warnings": "Упозорнїня на неповный переклад",
- "translate-edit-tmsugs": "Пропозіції з памятї перекладів",
"translate-edit-tmmatch-source": "Жрідловый текст перекладу: $1",
"translate-edit-tmmatch": "$1% згода",
"translate-use-suggestion": "Замінити актуалный переклад гевсёв пропозіціов.",
@@ -133,7 +125,6 @@
"translate-statsf-language": "Список кодів языка, роздїленых комами:",
"translate-statsf-group": "Список кодів ґрупы языків, роздїленых комами:",
"translate-statsf-submit": "Нагляд",
- "translate-tag-category": "Сторінкы што можуть быти переложены",
"translate-tag-page-desc": "Переклад вікі сторінкы [[$2|$1]].",
"translate-sidebar-alltrans": "Іншыма языками",
"translations": "Вшыткы переклады",
diff --git a/MLEB/Translate/i18n/core/sa.json b/MLEB/Translate/i18n/core/sa.json
index 7f9e0770..a4ade6d8 100644
--- a/MLEB/Translate/i18n/core/sa.json
+++ b/MLEB/Translate/i18n/core/sa.json
@@ -5,23 +5,102 @@
"NehalDaveND"
]
},
- "translate-page-settings-legend": "संरचनम्",
- "translate-page-group": "वर्ग",
+ "translate": "अनूद्यताम्",
+ "translate-taction-translate": "अनूद्यताम्",
+ "translate-taction-lstats": "भाषासाङ्ख्यिकी",
+ "translate-taction-export": "निर्यातः",
+ "translate-page-settings-legend": "अभिविन्यासाः",
+ "translate-page-group": "दलम्",
"translate-page-language": "भाषा",
+ "translate-page-navigation-legend": "सञ्चरणम्",
+ "translate-next": "अग्रिमं पृष्ठम्",
+ "translate-prev": "पूर्वतनं पृष्ठम्",
+ "translate-page-description-legend": "दलविषयकं विवरणम्",
"translate-page-edit": "सम्पाद्यताम्",
+ "translate-optional": "(ऐच्छिकम्)",
+ "translate-ignored": "(अवगणितम्)",
"translate-edit-title": "सम्पाद्यताम् \"$1\"",
- "translate-edit-translation": "अनुवादम्",
- "translate-magic-cm-original": "मूल",
- "translate-magic-cm-comment": "टिप्पणी:",
+ "translate-edit-translation": "अनुवादः",
+ "translate-edit-contribute": "योगदानम्",
+ "translate-edit-tmmatch": "$1% समानम्",
+ "translate-magic-cm-export": "निर्यातः",
+ "translate-magic-cm-current": "वर्तमानः",
+ "translate-magic-cm-original": "वास्तविकम्",
+ "translate-magic-cm-comment": "टिप्पणी :",
+ "translate-magic-cm-save": "रक्ष्यताम्",
"translate-stats-edits": "सम्पाद्यताम्",
+ "translate-stats-users": "अनुवादकाः",
+ "translate-statsf-scale-months": "मासः",
"translate-statsf-scale-weeks": "सप्ताहम्",
- "translate-statsf-scale-days": "दिवस",
+ "translate-statsf-scale-days": "दिनानि",
"translate-statsf-scale-hours": "घण्टा",
+ "translate-statsf-count-registrations": "नवीनयोजकाः",
"translate-statsf-submit": "प्राग्दृश्यम् दर्श्यताम्",
+ "translations": "सर्वे अनुवादाः",
"translate-translations-fieldset-title": "संदेश",
- "translate-translations-messagename": "नामन्:",
+ "translate-translations-messagename": "नाम :",
"translate-translations-project": "प्रकल्पम्:",
+ "translate-translations-history-short": "h",
+ "languagestats": "भाषासाङ्ख्यिकी",
"languagestats-recenttranslations": "अधुना जाताः अनुवादाः",
+ "translate-langstats-expand": "विस्तीर्यताम्",
+ "translate-langstats-collapse": "सङ्कुच्यताम्",
+ "translate-langstats-expandall": "सर्वं विस्तीर्यताम्",
+ "translate-langstats-collapseall": "सर्वं सङ्कुच्यताम्",
+ "translate-language-code": "भाषाकूटः",
+ "translate-language-code-field-name": "भाषाकूटः",
+ "translate-language": "भाषा",
+ "translate-total": "सन्देशाः",
+ "translate-percentage-fuzzy": "कालग्रस्ताः",
+ "translate-ls-submit": "साङ्ख्यिकी दृश्यताम्",
+ "translate-ls-column-group": "सन्देशसमूहः",
+ "translate-mgs-pagename": "सन्देशसमूहस्य साङ्ख्यिकी",
+ "translate-mgs-fieldset": "सन्दर्भाः दर्श्यन्ताम्",
+ "translate-mgs-group": "सन्देशसमूहः :",
+ "translate-mgs-submit": "साङ्ख्यिकी दृश्यताम्",
+ "translate-mgs-column-language": "भाषा",
+ "translate-save": "रक्ष्यताम् ($1)",
+ "translate-jssti-add": "सूच्यां योज्यताम्",
+ "translate-manage-action-import": "आयातं करोतु",
+ "translate-manage-action-ignore": "अवगण्यताम्",
+ "translate-import-load": "सञ्चिका आरोप्यताम्",
+ "translate-js-summary": "सारांशः :",
+ "translate-js-save": "रक्ष्यताम्",
+ "translate-gs-code": "कूटः",
+ "translate-gs-continent": "अन्तर्विषयाः",
+ "translate-gs-speakers": "वक्तारः",
+ "translate-gs-multiple": "एकाधिकम्",
+ "translate-gs-total": "योगः",
+ "translate-documentation-language": "सन्देशप्रलेखनम्",
+ "translate-workflow-set-doing": "अभिविन्यासः...",
"translate-dynagroup-recent-label": "अधुना जाताः अनुवादाः",
- "tux-warnings-hide": "गोप्यताम्"
+ "translate-msggroupselector-search-all": "सर्वम्",
+ "translate-msggroupselector-search-recent": "सद्यस्कम्",
+ "tux-languageselector": "अनूद्यताम्",
+ "tux-tab-all": "सर्वम्",
+ "tux-tab-untranslated": "अननुदितम्",
+ "tux-tab-outdated": "कालग्रस्ताः",
+ "tux-tab-translated": "अनुदितम्",
+ "tux-edit": "सम्पाद्यताम्",
+ "tux-status-optional": "ऐच्छिकम्",
+ "tux-status-fuzzy": "कालग्रस्ताः",
+ "tux-status-translated": "अनुदितम्",
+ "tux-status-saving": "रक्षति...",
+ "tux-status-unsaved": "अरक्षितम्",
+ "tux-editor-placeholder": "भवतः/भवत्याः अनुवादाः",
+ "tux-editor-cancel-button-label": "निरस्यताम्",
+ "tux-warnings-hide": "गोप्यताम्",
+ "tux-editor-message-desc-more": "अधिकं दृश्यताम्",
+ "tux-editor-translate-mode": "सूची",
+ "tux-proofread-edit-label": "सम्पाद्यताम्",
+ "tux-editor-page-mode": "पृष्ठम्",
+ "tux-editor-doc-editor-cancel": "निरस्यताम्",
+ "tux-empty-list-translated-action": "अनूद्यताम्",
+ "tux-editor-close-tooltip": "पिदधातु",
+ "tux-editor-expand-tooltip": "विस्तीर्यताम्",
+ "tux-editor-collapse-tooltip": "सङ्कुच्यताम्",
+ "tux-editor-message-tools-history": "इतिहासः",
+ "tux-editor-message-tools-delete": "अपाक्रियताम्",
+ "tux-editor-message-tools-translations": "सर्वे अनुवादाः",
+ "tux-editor-loading": "आरोपयति..."
}
diff --git a/MLEB/Translate/i18n/core/sah.json b/MLEB/Translate/i18n/core/sah.json
index 641ca7c9..63dfe5ab 100644
--- a/MLEB/Translate/i18n/core/sah.json
+++ b/MLEB/Translate/i18n/core/sah.json
@@ -3,21 +3,17 @@
"authors": [
"Amire80",
"Bert Jickty",
- "HalanTul"
+ "HalanTul",
+ "Туллук"
]
},
"translate": "Тылбаас",
"translate-desc": "MediaWiki движогу уонна атын бырагырааммалары тылбаастыырга [[Special:Translate|аналлаах сирэй]]",
- "translate-taskui-view": "Этиилэри барыларын көрдөр",
- "translate-taskui-untranslated": "Тылбаастамматаҕы көрдөр",
- "translate-taskui-optional": "Эбии этиилэри көрдөр",
- "translate-taskui-acceptqueue": "Мин бигэргэтэрбин кэтэһэри эрэ",
- "translate-taskui-reviewall": "Бары тылбаастары көр",
"translate-taskui-export-to-file": "Бэйэтин формаатынан экспортаа",
"translate-taskui-export-as-po": "Ситимнэммэккэ тылбаастыырга анаан экспортааһын",
"translate-taction-translate": "Тылбаас",
"translate-taction-proofread": "Ааҕыы",
- "translate-taction-lstats": "Тыл статиистиката",
+ "translate-taction-lstats": "Тыл ыстатыыстыката",
"translate-taction-mstats": "Бөлөхтөрүнэн ыстатыыстыка",
"translate-taction-export": "Экспорт",
"translate-taction-disabled": "Бу биикигэ маннык дьайыы араарыллыбыт эбит.",
@@ -41,7 +37,6 @@
"translate-page-description-hasoptional": "Бу эбии этиилэр бөлөхтөрө.\nЭбии этиилэр тылбаастамматтар. Арай тылыҥ улахан уратылаах буоллаҕына тылбаастаныан сөп, холобур, тыллар ыккардыларыгар арыт суох буоллаҕына эбэтэр ааттары транслитерациялыырга. $1",
"translate-page-description-hasoptional-open": "Эбии этиилэри көрдөр.",
"translate-page-edit": "Уларыт",
- "translate-ext-url": "<hr />Саайт: $1",
"translate-optional": "(булгуччута суох)",
"translate-ignored": "(ааххайыллыбат)",
"translate-edit-title": "\"$1\" уларытыы",
@@ -51,9 +46,7 @@
"translate-edit-no-information": "''Бу этии туһунан туох да суох. Ханна, хаһан бу этии туттулларын билэр буоллаххына, атын тылбаасчыттарга көмөлөһөн, ол туһунан суруйуоххун сөп.''",
"translate-edit-information": "Бу туһунан ($1)",
"translate-edit-in-other-languages": "Атын тылынан",
- "translate-edit-committed": "Билигин баар тылбаас",
"translate-edit-warnings": "Ситэтэ суох тылбаас туһунан сэрэтии",
- "translate-edit-tmsugs": "Урукку тылбаастартан",
"translate-edit-tmmatch-source": "Тылбаастаныахтаах этии: $1",
"translate-edit-tmmatch": "$1% сөп түбэһэр",
"translate-use-suggestion": "Баар тиэкиһи бу этэн биэриинэн солбуй.",
@@ -107,7 +100,7 @@
"translate-rc-translation-filter-only": "Тылбаастары эрэ көрдөр",
"translate-rc-translation-filter-filter": "Тылбаастары көрдөрүмэ",
"translate-rc-translation-filter-site": "Ситим-сир сүрүн эрэ биллэриилэрин",
- "translationstats": "Тылбаас статиистиката",
+ "translationstats": "Тылбаас ыстатыыстыката",
"translate-stats-edits": "Уларытыылар",
"translate-stats-users": "Тылбаасчыттар",
"translate-stats-registrations": "Бэлиэтэнии",
@@ -133,7 +126,6 @@
"translate-statsf-language": "Соппутуойунан арахсыбыт тыллар куодтарын тиһигэ:",
"translate-statsf-group": "Соппутуойунан арахсыбыт бөлөхтөр куодтарын тиһигэ:",
"translate-statsf-submit": "Бигэргэтиэх иннинэ көрүү",
- "translate-tag-category": "Тылбаастанар сирэйдэр",
"translate-tag-page-desc": "Биики-сирэй тылбааһа [[$2|$1]].",
"translate-sidebar-alltrans": "Атын тылларынан",
"translations": "Бары тылбаастар",
@@ -145,9 +137,9 @@
"translate-translations-messagename": "Аат:",
"translate-translations-project": "Бырайыак:",
"translate-translations-history-short": "уст",
- "languagestats": "Тыл статиистиката",
- "languagestats-summary": "Манна бу тылга аналлаах тылбаастанар бөлөхтөр статиистикалара көстөр",
- "languagestats-stats-for": "Тылбаас статиистиката $1 ($2).",
+ "languagestats": "Тыл ыстатыыстыката",
+ "languagestats-summary": "Манна бу тылга аналлаах тылбаастанар бөлөхтөр ыстатыыстыкалара көстөр",
+ "languagestats-stats-for": "Тылбаас ыстатыыстыката $1 ($2).",
"languagestats-recenttranslations": "соторутааҥы тылбаастар",
"translate-langstats-incomplete": "Сорох дааннайдар ситэтэ суохтар эбит. Толору дааннайдары ыларга бу сирэйи хос хачайдаа.",
"translate-langstats-expand": "тэнит",
@@ -156,11 +148,11 @@
"translate-langstats-collapseall": "барытын суулаа",
"translate-language-code": "Тыл куода",
"translate-language-code-field-name": "Тыл куода:",
- "translate-suppress-complete": "Толору тылбаастаммыт этиилэрдээх бөлөхтөрү көрдөрүмэ",
- "translate-ls-noempty": "Толору тылбаастаммыт этиилэрдээх бөлөхтөрү көрдөрүмэ",
+ "translate-suppress-complete": "Толору тылбаастаммыт этиилээх бөлөҕү көрдөрүмэ",
+ "translate-ls-noempty": "Толору тылбаастаммыт этиилээх бөлөҕү көрдөрүмэ",
"translate-language": "Ханнык тылынан:",
"translate-total": "Этии",
- "translate-untranslated": "Тылбаастамматах",
+ "translate-untranslated": "Тылбаастамматах биирдэмнэр ахсааннара",
"translate-percentage-complete": "Толоруллубут",
"translate-percentage-fuzzy": "Эргэрбит",
"translate-languagestats-overall": "Бары бөлөхтөр этиилэрэ",
@@ -177,7 +169,7 @@
"translate-mgs-invalid-group": "$1 диэн ааттаах бөлөх суох эбит.",
"translate-mgs-nothing": "Көрдөрүллэр дааннай суох.",
"supportedlanguages": "Өйүүр тыллара",
- "supportedlanguages-summary": "Манна{{SITENAME}} өйүүр тыллара уонна тылбаасчыттар ааттара көстөр. Тылбаасчыт төһөнөн элбэхтик үлэлээбит да, оччонон аата бөдөҥ бичигинэн суруллар. Алларанан тардыытын өҥө тылбаасчыт бүтэһигин хаһан үлэлээбитин көрдөрөр.",
+ "supportedlanguages-summary": "Манна {{SITENAME}} өйүүр тыллара уонна тылбаасчыттар ааттара көстөр. Тылбаасчыт төһөнөн элбэхтик үлэлээбит да, оччонон аата бөдөҥ бичигинэн суруллар. Алларанан тардыытын өҥө тылбаасчыт бүтэһигин хаһан үлэлээбитин көрдөрөр.",
"supportedlanguages-colorlegend": "Өҥүн суолтата: Тиһэх көннөрүүнү $1 күн ынараа өттүгэр оҥорбут.",
"supportedlanguages-translators": "{{PLURAL:$2|Тылбаасчыт|Тылбаасчыттар}}: $1",
"supportedlanguages-recenttranslations": "соторутааҥы тылбаастар",
@@ -197,5 +189,8 @@
"translate-gs-count": "Ахсаана",
"translate-gs-total": "Барыта",
"translate-gs-avgscore": "Ортотунан",
- "translate-documentation-language": "Биллэрии документацията"
+ "translate-documentation-language": "Биллэрии документацията",
+ "tux-editor-proofreading-hide-own-translations": "Бэйэ тылбааһын көрдөрүмэ",
+ "tux-empty-nothing-new-to-proofread": "Тургутуллуохтаах саҥа тылбаас суох",
+ "tux-editor-message-tools-show-editor": "Вики редакторын көр"
}
diff --git a/MLEB/Translate/i18n/core/sc.json b/MLEB/Translate/i18n/core/sc.json
index 0a2d4d75..89a2ed56 100644
--- a/MLEB/Translate/i18n/core/sc.json
+++ b/MLEB/Translate/i18n/core/sc.json
@@ -6,6 +6,5 @@
]
},
"translate": "Tradui",
- "translate-desc": "[[Special:Translate|Special page]] po tradusi MediaWiki and beyond",
- "translate-taskui-view": "Ammustra totu is missadas"
+ "translate-desc": "[[Special:Translate|Special page]] po tradusi MediaWiki and beyond"
}
diff --git a/MLEB/Translate/i18n/core/scn.json b/MLEB/Translate/i18n/core/scn.json
index 61fb8bf7..778eff33 100644
--- a/MLEB/Translate/i18n/core/scn.json
+++ b/MLEB/Translate/i18n/core/scn.json
@@ -2,22 +2,35 @@
"@metadata": {
"authors": [
"Aushulz",
- "Gmelfi"
+ "Gmelfi",
+ "Sarvaturi"
]
},
+ "translate-taction-lstats": "Statìstichi dâ lingua",
+ "translate-taction-mstats": "Statìstichi dô gruppu di missaggi",
"translate-page-no-such-group": "Lu gruppu spicificatu nun èni vàliddu.",
"translate-next": "Pàggina appressu",
"translate-edit-definition": "Difinizzioni dû missaggiu",
"translate-edit-contribute": "cuntribbuisci",
"translate-edit-information": "Nfurmazzioni supra lu missaggiu ($1)",
- "translate-edit-in-other-languages": "Missaggiu 'n àutri lingui",
+ "translate-edit-in-other-languages": "Missaggiu n àutri lingui",
"translate-magic-cm-save": "Sarva",
+ "translate-rc-translation-filter": "Filtra li traduzzioni:",
+ "translate-rc-translation-filter-no": "Nun fari nenti",
+ "translate-rc-translation-filter-only": "Ammustra sulu li traduzzioni",
+ "translate-rc-translation-filter-filter": "Elìmina li traduzzioni",
+ "translate-rc-translation-filter-site": "Sulu li canciamenti ê missaggi dô situ",
"translate-statsf-scale-months": "Misi",
"translate-statsf-scale-weeks": "Simani",
"translate-statsf-scale-days": "Jorna",
"translate-statsf-scale-hours": "Ura",
"translate-sidebar-alltrans": "Nti àutri lìngui",
+ "translations": "Tutti li traduzzioni",
+ "languagestats": "Statìstichi dâ lingua",
+ "translate-mgs-pagename": "Statìstichi dô gruppu di missaggi",
+ "supportedlanguages": "Lingui mantinuti",
"translate-save": "Sarva ($1)",
- "translate-js-support": "Addumanna 'na cosa",
- "translate-documentation-language": "Ducumintazzione dû missaggiu"
+ "translate-js-support": "Addumanna na cosa",
+ "translate-documentation-language": "Ducumintazzione dû missaggiu",
+ "tux-editor-message-tools-translations": "Tutti li traduzzioni"
}
diff --git a/MLEB/Translate/i18n/core/sco.json b/MLEB/Translate/i18n/core/sco.json
index 896b5a1a..79d9e0f9 100644
--- a/MLEB/Translate/i18n/core/sco.json
+++ b/MLEB/Translate/i18n/core/sco.json
@@ -1,16 +1,12 @@
{
"@metadata": {
"authors": [
- "John Reid"
+ "John Reid",
+ "AmaryllisGardener"
]
},
"translate": "Owerset",
"translate-desc": "[[Special:Translate|Byordiair page]] fer owersetin MediaWiki n ayont",
- "translate-taskui-view": "Shaw aw messages",
- "translate-taskui-untranslated": "Shaw onowerset messages",
- "translate-taskui-optional": "Shaw optional messages",
- "translate-taskui-acceptqueue": "Yinlie messages that Ah can maurk aes luikt ower",
- "translate-taskui-reviewall": "Luikower aw owersets",
"translate-taskui-export-to-file": "Export in nateeve format",
"translate-taskui-export-as-po": "Export fer aff-line owersetin",
"translate-taction-translate": "Owerset",
@@ -45,9 +41,7 @@
"translate-edit-no-information": "<em>This message haes naw documentation.\nGif ye ken whaur or hou this message is uised, ye can heelp ither owerseters bi eikin documentation til this message.</em>",
"translate-edit-information": "Information aneat message ($1)",
"translate-edit-in-other-languages": "Message in ither leids",
- "translate-edit-committed": "The Nou owerset in saffware",
"translate-edit-warnings": "Warnishments aneat oncompleate owersets",
- "translate-edit-tmsugs": "Suggestions fae owerset memries n machine owersetin",
"translate-edit-tmmatch-source": "Owerset soorce tex: $1",
"translate-use-suggestion": "Replace the Nou owerset wi this suggestion.",
"translate-edit-nopermission": "Ye need owersetin richts tae owerset messages.",
@@ -118,7 +112,6 @@
"translate-statsf-language": "Comma-separatit leet o leid codes:",
"translate-statsf-group": "Comma-separatit leet o groop codes:",
"translate-statsf-submit": "Luikower",
- "translate-tag-category": "Owersetable pages",
"translate-tag-page-desc": "Owersetin o the wiki page [[$2|$1]] fae $3($4).",
"translate-sidebar-alltrans": "In ither leids",
"translations": "Aw owersets",
@@ -182,7 +175,6 @@
"translate-manage-toolong": "The mucklest processin time o $1 {{PLURAL:$1|seicont|seiconts}} exceeded.\nPlease haun the form in again tae continue processin.",
"translate-manage-import-summary": "Importin ae new version fae external soorce",
"translate-manage-conflict-summary": "Importin ae new version fae external soorce.\nPlease check.",
- "translate-manage-fuzzy-summary": "The message defineetion haes chynged",
"translate-manage-intro-other": "Ablo is ae leet o owerset chynges in the leid $1.\nPlease luik the chynges ower n chuise aen action that ye want tae tak fer ilka update.\nGif ye chuise tae ignore chynges, than this action is yinlie temparie.",
"translate-manage-import-done": "Import compleate!",
"importtranslations": "Import owersets",
@@ -198,32 +190,18 @@
"translate-js-summary": "Ootline:",
"translate-js-save": "Hain",
"translate-js-next": "Hain n apen nex",
- "translate-js-nonext": "This wis the laist message oan this page.",
"translate-js-skip": "Skip til the nex",
- "translate-js-save-failed": "Hainin failed. Please report this mistak.",
"translate-js-history": "Owersetin histerie",
"translate-js-support": "Speir speirin",
"translate-js-support-title": "Speir fer heelp gif thaur's na enooch information tae owerset this message richt.",
"translate-js-support-unsaved-warning": "Ye hae onhained owersets.",
"translate-gs-continent": "Continant",
"translate-gs-count": "Coont",
+ "translate-documentation-language": "Message documentation",
"translate-searchprofile": "Owersets",
"translate-searchprofile-tooltip": "Rake fae aw owersets",
"translate-search-languagefilter": "Filter bi leid:",
"translate-search-nofilter": "Naw filterin",
- "translate-messagereview-submit": "Maurk luikt ower",
- "translate-messagereview-progress": "Maurkin aes luikt ower...",
- "translate-messagereview-failure": "Maurkin aes luikower failed: $1",
- "translate-messagereview-done": "Luikt ower",
- "translate-messagereview-reviews": "Luikt ower bi {{PLURAL:$1|yin uiser|$1 uisers}}",
- "translate-messagereview-reviewswithyou": "Luikt ower bi {{PLURAL:$1|ye|$1 uisers incluidin ye}}",
- "api-error-invalidrevision": "Owerset wisna foond",
- "api-error-unknownmessage": "Message wisna foond",
- "api-error-fuzzymessage": "Owerset is maurkt aes fuzzy",
- "api-error-owntranslation": "Ye canna maurk yer ain owersets aes luikt ower",
- "translate-messagereview-no-fuzzy": "Fuzzy owersets canna be maurkt aes luikt ower.",
- "translate-messagereview-no-own": "Ye canna maurk yer ain owersets aes luikt ower.",
- "translate-messagereview-doit": "Maurk this owerset aes luikt ower.",
"log-name-translationreview": "Owerset luikower log",
"log-description-translationreview": "Log o aw luikowers til owersets n message groops.",
"logentry-translationreview-message": "$1 {{GENDER:$2|luikt ower}} owerset $3",
@@ -236,7 +214,6 @@
"action-translate-sandboxaction": "execute actions whiteleetit for saundkistit uisers",
"translate-workflow-state-": "(onset)",
"translate-workflow-set-doing": "Settin...",
- "translate-workflow-set-error-alreadyset": "The requested state is identeecal til the Nou state.",
"translate-workflow-autocreated-summary": "Autæmateec cræftin o page fer wairkflaw state $1",
"translate-workflowgroup-label": "Wairkflaw states",
"translate-workflowgroup-desc": "This message groop shaws the owersetin wairkflaw states.\nThe states ar defined in the confeeguration vareeable $wgTranslateWorkflowStates.",
@@ -244,11 +221,6 @@
"translate-dynagroup-recent-desc": "This message groop shaws aw recynt owersets intil this leid.\nMaist uissfu fer the luikower tasks.",
"translate-dynagroup-additions-label": "Recynt addeetions",
"translate-dynagroup-additions-desc": "This message groop shaws new n chynged messages.",
- "translate-dynagroup-by": "Owerset dun bi {{GENDER:$1|$1}}",
- "translate-dynagroup-byc": "Owerset dun bi {{GENDER:$1|$1}} ($2)",
- "translate-dynagroup-last": "Laitest chynge bi {{GENDER:$1|$1}}",
- "translate-dynagroup-lastc": "Laitest chynge bi {{GENDER:$1|$1}} ($2)",
- "translate-gethelp": "Heelp",
"translate-msggroupselector-projects": "Message groop",
"translate-msggroupselector-search-placeholder": "Rake groops",
"translate-msggroupselector-search-all": "Aw",
diff --git a/MLEB/Translate/i18n/core/sh.json b/MLEB/Translate/i18n/core/sh.json
index 0dc282d6..0299562c 100644
--- a/MLEB/Translate/i18n/core/sh.json
+++ b/MLEB/Translate/i18n/core/sh.json
@@ -1,8 +1,16 @@
{
"@metadata": {
"authors": [
- "Kolega2357"
+ "Kolega2357",
+ "OC Ripper",
+ "Conquistador"
]
},
- "right-translate-manage": "Upravljanje grupama poruka"
+ "right-translate-manage": "Upravljanje grupama poruka",
+ "translate-statsf-submit": "Pregled",
+ "translate-sidebar-alltrans": "Na drugim jezicima",
+ "translate-documentation-language": "Dokumentacija poruke",
+ "tux-editor-cancel-button-label": "Otkaži",
+ "tux-editor-in-other-languages": "Na drugim jezicima",
+ "tux-editor-doc-editor-cancel": "Otkaži"
}
diff --git a/MLEB/Translate/i18n/core/si.json b/MLEB/Translate/i18n/core/si.json
index 56419926..cb671a85 100644
--- a/MLEB/Translate/i18n/core/si.json
+++ b/MLEB/Translate/i18n/core/si.json
@@ -11,11 +11,6 @@
},
"translate": "පරිවර්තනය කරන්න",
"translate-desc": "මාධ්‍යවිකී සහ ඉන් ඔබ්බට පරිවර්තනය කෙරුම සඳහා [[Special:Translate|විශේෂ පිටුව]]",
- "translate-taskui-view": "සියළු පණිවුඩ පෙන්වන්න",
- "translate-taskui-untranslated": "පරිවර්තනය නොකල පණිවුඩ පෙන්වන්න",
- "translate-taskui-optional": "අමතර පණිවුඩ පෙන්වන්න",
- "translate-taskui-acceptqueue": "මට බාරගත හැකි පණිවුඩ පමණක්",
- "translate-taskui-reviewall": "සියලු පරිවර්තන නිරීක්ෂණය කරන්න",
"translate-taskui-export-to-file": "දේශ්‍රීය ආකෘතියයෙන් නිර්යාත කරන්න",
"translate-taskui-export-as-po": "මාර්ග-අපගත පරිවර්තනය සඳහා නිර්යාත කරන්න",
"translate-taction-translate": "පරිවර්තනය කරන්න",
@@ -43,7 +38,6 @@
"translate-page-description-legend": "කාණ්ඩය පිළිබඳ විස්තර",
"translate-page-description-hasoptional-open": "අමතර පණිවුඩ පෙන්වන්න.",
"translate-page-edit": "සංස්කරණය",
- "translate-ext-url": "<hr />වෙබ් අඩවිය: $1",
"translate-optional": "(වෛකල්පික)",
"translate-ignored": "(නොසලකන ලදි)",
"translate-edit-title": "\"$1\" සංස්කරණය කරන්න",
@@ -53,9 +47,7 @@
"translate-edit-no-information": "''මෙම පණිවුඩය සතුව ප්‍රලේඛනයක් නොමැත.''\n''මෙම පණිවුඩය තිබෙන්නේ කොහේදැයි හෝ භාවිතා කරන්නේ කුමටද කියා දන්නවානම්, මෙම පණිවුඩය සඳහා ප්‍රලේඛනයක් තැනීම මඟින් ඔබට අනෙකුත් පරිවර්තකයන් හට සහය විය හැක.''",
"translate-edit-information": "($1) පණිවුඩය පිලිබඳ තොරතුරු",
"translate-edit-in-other-languages": "පණිවුඩය වෙනත් භාෂාවලින්",
- "translate-edit-committed": "මෘදුකාංගයෙහි වත්මන් පරිවර්තනය",
"translate-edit-warnings": "අසම්පුර්ණ පරිවර්තන පිලිබඳ අවවාද",
- "translate-edit-tmsugs": "පෙර පරිවර්තන මතකයෙන් සහ යන්ත්‍රික පරිවර්තනයෙන්",
"translate-edit-tmmatch-source": "පරිවර්තන මූලාශ්‍ර පාඨය: $1",
"translate-edit-tmmatch": "$1% ගැලපේ",
"translate-use-suggestion": "මෙම යෝජනාව සමඟ වත්මන් පරිවර්තනය ප්‍රතිස්ථාපනය කරන්න.",
@@ -133,7 +125,6 @@
"translate-statsf-language": "කොමාවෙන්-වෙන්වූ භාෂා කේතයන් ලැයිස්තුව:",
"translate-statsf-group": "කොමාවෙන්-වෙන්වූ සමූහ කේතයන් ලැයිස්තුව:",
"translate-statsf-submit": "පෙරදසුන",
- "translate-tag-category": "පරිවර්තනය කල හැකි පිටු",
"translate-tag-page-desc": "[[$2|$1]] විකි පිටුවෙහි පරිවර්තනය.",
"translate-sidebar-alltrans": "වෙනත් භාෂා වලින්",
"translations": "සියළු පරිවර්තන",
@@ -201,7 +192,6 @@
"translate-manage-nochanges-other": "මෙම භාෂාව සඳහා වෙනස්කම් කිසිවක් නොතිබුණි.\nසමූහ විස්තර දසුන වෙත නැවත යාම සඳහා පහත සබැඳිය භාවිතා කරන්න.",
"translate-manage-import-summary": "බාහිර මූලාශ්‍රයකින් නව අනුවාදය ආයාත කරමින්",
"translate-manage-conflict-summary": "බාහිර මූලාශ්‍රයක් වෙතින් නව අනුවාදය ආයාත කරමින්.\nකරුණාකර පිරික්සන්න.",
- "translate-manage-fuzzy-summary": "නිර්වචනය වෙනස් වී ඇත",
"translate-manage-submit": "සම්පාදනය කරන්න",
"translate-manage-import-ok": "$1 පිටුවෙහි නව අනුවාදයක් ආයාත කරන ලදී.",
"translate-manage-import-done": "සියල්ල කරන ලදී",
@@ -215,9 +205,7 @@
"translate-js-summary": "සාරාංශය:",
"translate-js-save": "සුරකින්න",
"translate-js-next": "සුරකීමෙන් පසු ඊළඟ එක විවෘත කරන්න",
- "translate-js-nonext": "මෙය මෙම පිටුවේ තිබු අන්තිම පණිවුඩයයි.",
"translate-js-skip": "මීළඟ පියවරට පනින්න",
- "translate-js-save-failed": "සුරැකීම අසාර්ථක වුණි. කරුණාකර මෙම දෝෂය වාර්තා කරන්න.",
"translate-js-history": "පරිවර්තන ඉතිහාසය",
"translate-js-support": "ප්‍රශ්නයක් අසන්න",
"translate-js-support-title": "මෙම පණිවුඩය නිවැරදිව පරිවර්තනය කිරීම සඳහා ප්‍රමාණවත් තරම් තොරතුරු නොමැති නම් උදව් සඳහා විමසන්න.",
@@ -236,36 +224,16 @@
"translate-searchprofile-tooltip": "සියලු පරිවර්තනයන්ගෙන් සොයන්න",
"translate-search-languagefilter": "භාෂාව අනුව පෙරහන:",
"translate-search-nofilter": "පෙරීමක් නොමැත",
- "translate-messagereview-submit": "පිළිගන්න",
- "translate-messagereview-progress": "බාරගනිමින්...",
- "translate-messagereview-failure": "බාරගනිමින්... අසාර්ථකයි: $1",
- "translate-messagereview-done": "පිළිගන්නා ලදී",
- "translate-messagereview-reviews": "{{PLURAL:$1|එක් පරිශීලකයෙක්|පරිශීලකයන් $1 ක්}} විසින් පිළිගන්නා ලද",
- "translate-messagereview-reviewswithyou": "ඔබද ඇතුළුව {{PLURAL:$1|එක් පරිශීලකයෙක්|පරිශීලකයන් $1 ක්}} විසින් පිළිගන්නා ලද",
- "api-error-invalidrevision": "පරිවර්තනය හමු නොවුණි",
- "api-error-unknownmessage": "පණිවුඩය හමු නොවුණි",
- "api-error-fuzzymessage": "පරිවර්තනය fuzzy ලෙස සලකුණු කොට ඇත",
- "api-error-owntranslation": "ඔබ හට ඔබම සිදුකල පරිවර්තන අනුමතකල නොහැක",
- "translate-messagereview-no-fuzzy": "Fuzzy පරිවර්තනයන් පිළිගත නොහැක.",
- "translate-messagereview-no-own": "ඔබ හට ඔබගේම පරිවර්තන පිළිගත නොහැක.",
- "translate-messagereview-doit": "මෙය නිවැරදි පරිවර්තනයක් ලෙස පිළිගන්න.",
"log-name-translationreview": "පරිවර්තන නිරීක්ෂණ ලඝු සටහන",
"logentry-translationreview-message": "$1 විසින් $3 පරිවර්තනය {{GENDER:$2|පිළිගන්නා ලදී}}",
"translate-workflow-state-": "(සකසා නැත)",
"translate-workflowstatus": "තත්වය: $1",
- "translate-workflow-set-do": "සකසන්න",
"translate-workflow-set-doing": "සකසමින්...",
- "translate-workflow-set-done": "සැකසුවා!",
"translate-stats-workflow": "තත්වය",
"translate-workflowgroup-label": "Workflow තත්ත්ව",
"translate-dynagroup-recent-label": "මෑත පරිවර්තන",
"translate-dynagroup-additions-label": "මෑත එක් කිරීම්",
"translate-dynagroup-additions-desc": "මෙම පණිවුඩ සමූහය නව සහ වෙනස් වූ පණිවුඩ පෙන්වයි.",
- "translate-dynagroup-by": "{{GENDER:$1|$1}} විසින් පරිවර්තනය සිදු කරන ලදී",
- "translate-dynagroup-byc": "{{GENDER:$1|$1}} විසින් පරිවර්තනය සිදු කරන ලදී ($2)",
- "translate-dynagroup-last": "{{GENDER:$1|$1}} විසින් සිදු කල අවසන් වෙනස",
- "translate-dynagroup-lastc": "{{GENDER:$1|$1}} විසින් සිදු කල අවසන් වෙනස ($2)",
- "translate-gethelp": "උදව්",
"translate-msggroupselector-projects": "පණිවුඩ සමූහය",
"translate-msggroupselector-search-placeholder": "සමූහ සොයන්න",
"translate-msggroupselector-search-all": "සියල්ල",
diff --git a/MLEB/Translate/i18n/core/sk.json b/MLEB/Translate/i18n/core/sk.json
index 0277e231..32907b00 100644
--- a/MLEB/Translate/i18n/core/sk.json
+++ b/MLEB/Translate/i18n/core/sk.json
@@ -7,16 +7,12 @@
"Rudko",
"Teslaton",
"Sudo77(new)",
- "TomášPolonec"
+ "TomášPolonec",
+ "LacoR"
]
},
"translate": "Preložiť",
"translate-desc": "[[Special:Translate|Špeciálna stránka]] na preklad MediaWiki a iného",
- "translate-taskui-view": "Zobraziť všetky správy",
- "translate-taskui-untranslated": "Zobraziť nepreložené správy",
- "translate-taskui-optional": "Zobraziť voliteľné správy",
- "translate-taskui-acceptqueue": "Iba správy, ktoré mám právo akceptovať",
- "translate-taskui-reviewall": "Hodnotiť všetky preklady",
"translate-taskui-export-to-file": "Exportovať v natívnom formáte",
"translate-taskui-export-as-po": "Exportovať pre preklad off-line",
"translate-taction-translate": "Preklad",
@@ -44,26 +40,23 @@
"translate-page-description-hasoptional": "Táto skupina obsahuje voliteľné správy.\nVoliteľné správy sa majú prekladať len v prípade, ak má váš jazyk špecifické potreby,\nako napr. nepoužívanie medzier, alebo transkripcie vlastných mien. $1",
"translate-page-description-hasoptional-open": "Zobraziť voliteľné správy.",
"translate-page-edit": "upraviť",
- "translate-ext-url": "<hr />Webstránka: $1",
"translate-optional": "(voliteľné)",
"translate-ignored": "(ignorované)",
"translate-edit-title": "Upraviť \"$1\"",
"translate-edit-definition": "Definícia správy",
"translate-edit-translation": "Preklad",
"translate-edit-contribute": "prispejte",
- "translate-edit-no-information": "''Táto správa nie je zdokumentovaná. Ak viete kde alebo ako je táto správa použitá, môžete pomôcť ostatným prekladateľom tým, že jej pridáte dokumentáciu.''",
+ "translate-edit-no-information": "<em>Táto správa nemá dokumentáciu.\nAk viete kde alebo ako je táto správa použitá, môžete pomôcť ostatným prekladateľom tým, že pridáte dokumentáciu.</em>",
"translate-edit-information": "Informácia o správe ($1)",
"translate-edit-in-other-languages": "Správa v iných jazykoch",
- "translate-edit-committed": "Aktuálny preklad v úložisku",
"translate-edit-warnings": "Upozornenia na neúplné preklady",
- "translate-edit-tmsugs": "Návrhy z kompendia",
"translate-edit-tmmatch-source": "Zdroj prekladu: $1",
"translate-edit-tmmatch": "$1% zhoda",
"translate-use-suggestion": "Nahradiť aktuálny preklad týmto návrhom.",
"translate-edit-nopermission": "Na preklad správ potrebujete povolenie.",
- "translate-edit-askpermission": "Požiadať o povolenie",
+ "translate-edit-askpermission": "Získať oprávnenie",
"translate-magic-pagename": "Rozšírený preklad MediaWiki",
- "translate-magic-help": "Môžete prekladať aliasy špeciálnych stránok, magické slová, názvy tém vzhľadu a názvy menných priestorov.\n\nAliasy špeciálnych stránok a magických slov môžu mať viacero prekladov.\nPreklady sa oddeľujú čiarkami („,“).\nNázvy tém vzhľadu a názvy menných priestorov môžu mať iba jeden preklad.\n\nV prekladoch menných priestorov je <code>$1 talk</code> špeciálne. <code>$1</code> sa nahradí názvom webovej lokality (napr. <code>{{ns:project_talk}}</code>). Ak vo vašom jazyku nie je možné vytvoriť zmysluplný výraz bez zmeny názvu webovej lokality, prosím, kontaktujte vývojára.\n\nAby ste mohli ukladať zmeny, musíte byť členom skupiny prekladatelia.\nZmeny sa neuložia, kým nekliknete na tlačidlo Uložiť dolu.",
+ "translate-magic-help": "Môžete prekladať aliasy špeciálnych stránok, magické slová a názvy menných priestorov.\n\nAliasy špeciálnych stránok a magických slov môžu mať viacero prekladov.\nPreklady sa oddeľujú čiarkou (,).\nNázvy menných priestorov môžu mať iba jeden preklad.\n\nPrekladanie diskusných menných priestorov <code>$1 talk</code> môže byť zložitejšie. <code>$1</code> sa nahradí názvom projektu (napr. <code>{{ns:project_talk}}</code>). Ak vo vašom jazyku nie je možné vytvoriť zmysluplný výraz bez zmeny názvu projektu, kontaktujte nás na stránke [[Support]].\n\nAby ste mohli ukladať zmeny, musíte byť prekladateľom.\nZmeny sa neuložia, kým nekliknete na tlačidlo Uložiť dolu.",
"translate-magic-module": "Modul:",
"translate-magic-submit": "Vykonať",
"translate-magic-cm-export": "Exportovať",
@@ -80,7 +73,7 @@
"translate-magic-namespace": "Názvy menných priestorov",
"translate-magic-notsaved": "Vaša úprava nebola uložená!",
"translate-magic-errors": "Prosím, opravte {{PLURAL:$1|nasledovnú chybu|nasledovné chyby}} v prekladoch:",
- "translate-magic-saved": "Vaše zmeny boli úspešne uložené.",
+ "translate-magic-saved": "Vaše zmeny boli uložené.",
"translate-checks-parameters": "{{PLURAL:$2|Nasledovný parameter nie je použitý|Nasledovné parametre nie sú použité}}: <strong><nowiki>$1</nowiki></strong>",
"translate-checks-parameters-unknown": "{{PLURAL:$2|Nasledovný parameter je neznámy|Nasledovné parametre sú neznáme}}: <strong><nowiki>$1</nowiki></strong>",
"translate-checks-balance": "Nevyvážené počty {{PLURAL:$2|zátvoriek|zátvoriek}}:\n<strong><nowiki>$1</nowiki></strong>",
@@ -94,7 +87,7 @@
"translate-checks-parametersnotequal": "Počet parametrov je {{PLURAL:$1|$1}}; mal by byť {{PLURAL:$2|$2}}.",
"translate-checks-malformed": "<nowiki>$1</nowiki>má nesprávny formát.",
"translate-checks-fudforum-syntax": "V tomto projekte používať <nowiki>$1</nowiki> namiesto <nowiki>$2</nowiki>.",
- "translate-pref-nonewsletter": "Neposielať mi novinky emailom",
+ "translate-pref-nonewsletter": "Neposielať mi novinky e-mailom",
"translate-pref-editassistlang": "Pomocné jazyky:",
"prefs-translate": "Možnosti prekladu",
"translate-pref-editassistlang-help": "Čiarkami oddelený zoznam kódov jazykov.\nPreklady správ v týchto jazykoch sa zobrazujú, keď prekladáte.\nPredvoleny zoznam jazykov závisí na vašom jazyku.",
@@ -136,8 +129,7 @@
"translate-statsf-language": "Čiarkami oddelený zoznam kódov jazykov:",
"translate-statsf-group": "Čiarkami oddelený zoznam kódov skupín:",
"translate-statsf-submit": "Náhľad",
- "translate-tag-category": "Preložiteľné stránky",
- "translate-tag-page-desc": "Preklad wiki stránky [[$2|$1]].",
+ "translate-tag-page-desc": "Preklad wiki stránky [[$2|$1]] z jazyka $3 ($4)..",
"translate-sidebar-alltrans": "V iných jazykoch",
"translations": "Všetky preklady",
"translations-summary": "Všetky dostupné preklady zobrazíte po zadaní názvu správy.",
@@ -151,6 +143,7 @@
"translate-translations-history-short": "h",
"languagestats": "Štatistika jazykov",
"languagestats-summary": "Táto stránka zobrazuje štatistiku prekladov všetkých skupín správ jazyka.",
+ "messagegroupstats-summary": "Táto stránka zobrazuje štatistiku skupín správ.",
"languagestats-stats-for": "Štatistika prekladov pre jazyk $1 ($2).",
"languagestats-recenttranslations": "nedávne preklady",
"translate-langstats-incomplete": "Niektoré štatistiky na tejto stránke sú neúplné. Aktuálnejšie údaje získate znovunačítaním stránky.",
@@ -183,10 +176,11 @@
"supportedlanguages": "Podporované jazyky",
"supportedlanguages-summary": "Na tejto stránke sa nachádza zoznam všetkých jazykov podporovaných na {{GRAMMAR:6sg|{{SITENAME}}}}\nspolu s menami prekladateľov, ktorí na jazyku pracujú.\nČím viac úprav prekladateľ poskytol, tým väčším písmom sa jeho meno zobrazuje.\nFarba podčiarknutia znázorňuje, ako nedávno tu bol prekladateľ aktívny.",
"supportedlanguages-colorlegend": "Legenda k farbám: Posledný preklad pred {{PLURAL:$1|$1 dňom|$1 dňami}}.",
- "supportedlanguages-translators": "{{PLURAL:$2|Prekladateľ|Prekladatelia}}: $1",
+ "supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|Prekladateľ|Prekladateľka}}|Prekladatelia}}: $1",
"supportedlanguages-recenttranslations": "nedávne preklady",
"supportedlanguages-count": "Dohromady $1 {{PLURAL:$1|jazyk|jazyky|jazykov}}.",
"supportedlanguages-activity": "$1: $2 {{PLURAL:$2|editácia|editácie|editácií}} – posledná pred $3 {{PLURAL:$3|dňom|dňami}}",
+ "abusefilter-edit-builder-vars-translate-source-text": "Zdrojový text prekladovej jednotky",
"translate-save": "Uložiť ($1)",
"translate-jssti-add": "Pridať do zoznamu",
"managemessagegroups": "Správa skupín správ",
@@ -203,7 +197,6 @@
"translate-manage-toolong": "Maximálny čas spracovania $1 {{PLURAL:$1|sekunda|sekundy|sekúnd}} bol prekročený.\nV spracovaní môžete pokračovať opätovným odoslaním formulára.",
"translate-manage-import-summary": "Importuje sa nová verzia z externého zdroja",
"translate-manage-conflict-summary": "Importuje sa nová verzia z externého zdroja. Prosím, skontrolujte ju.",
- "translate-manage-fuzzy-summary": "Definícia sa zmenila",
"translate-manage-submit": "Vykonať",
"translate-manage-intro-other": "Nižšie je zoznam zmien v prekladoch v jazyku $1.\nProsím, skontrolujte zmeny a vyberte operáciu pre každý z prekladov.\nAk sa rozhodnete ignorovať zmeny, prepíšu sa pri ďalšom exporte.",
"translate-manage-import-ok": "Importovaná nová verzia stránky $1.",
@@ -221,12 +214,11 @@
"translate-js-summary": "Zhrnutie:",
"translate-js-save": "Uložiť",
"translate-js-next": "Uložiť a otvoriť ďalšiu",
- "translate-js-nonext": "To bola posledná správa na tejto stránke.",
"translate-js-skip": "Preskočiť na ďalšiu",
- "translate-js-save-failed": "Uloženie sa nepodarilo. Nahláste prosím túto chybu.",
"translate-js-history": "História prekladov",
"translate-js-support": "Položiť otázku",
"translate-js-support-title": "Požiadať o pomoc, ak nie je k dispozícii dostatok informácií pre správny preklad tejto správy.",
+ "translate-js-support-unsaved-warning": "Máte neuložené preklady.",
"translate-gs-pos": "Poz.",
"translate-gs-code": "Kód",
"translate-gs-continent": "Kontinent",
@@ -237,13 +229,41 @@
"translate-gs-total": "Celkom",
"translate-gs-avgscore": "Priem. skóre",
"translate-documentation-language": "Dokumentácia k hláseniam",
- "translate-messagereview-done": "Prijaté",
- "api-error-invalidrevision": "Preklad sa nenašiel",
+ "translate-searchprofile": "Preklady",
"log-name-translationreview": "Log hodnotení prekladov",
"log-description-translationreview": "Log všetkých hodnotení prekladov a skupín správ.",
"logentry-translationreview-message": "$1 {{GENDER:$2|akceptoval|akceptovala|akceptoval}} preklad $3",
"translate-dynagroup-recent-label": "Nedávne preklady",
"translate-dynagroup-recent-desc": "Táto skupina správ obsahuje všetky nedávne preklady do tohoto jazyka. Užitočné pre účely korektúry.",
- "translate-gethelp": "Pomoc",
- "tux-editor-in-other-languages": "V iných jazykoch"
+ "tux-tab-all": "Všetky",
+ "tux-tab-untranslated": "Nepreložené",
+ "tux-tab-outdated": "Zastarané",
+ "tux-tab-translated": "Preložené",
+ "tux-tab-unproofread": "Neskontrolované",
+ "tux-edit": "Editovať",
+ "tux-editor-placeholder": "Váš preklad",
+ "tux-editor-save-button-label": "Uložiť preklad",
+ "tux-editor-skip-button-label": "Preskočiť na nasledujúci",
+ "tux-editor-cancel-button-label": "Zrušiť",
+ "tux-editor-confirm-button-label": "Potvrdiť preklad",
+ "tux-editor-shortcut-info": "Stlačte „$1“ pre uloženie, „$2“ pre preskočenie na ďalšiu správu, „$4“ pre zadanie zhrnutia alebo „$3“ pre ďalšie skratky.",
+ "tux-editor-edit-desc": "Upraviť dokumentáciu",
+ "tux-editor-add-desc": "Pridať dokumentáciu",
+ "tux-editor-suggestions-title": "Návrhy",
+ "tux-editor-in-other-languages": "V iných jazykoch",
+ "tux-editor-need-more-help": "Potrebujete ďalšiu pomoc?",
+ "tux-editor-tm-match": "$1% zhoda",
+ "tux-warnings-hide": "skryť",
+ "tux-editor-save-failed": "Nepodarilo sa uložiť preklad: $1",
+ "tux-editor-n-uses": "použité {{PLURAL:$1|raz|$1krát}}",
+ "tux-editor-message-desc-more": "Zobraziť viac",
+ "tux-editor-message-desc-less": "Zobraziť menej",
+ "tux-editor-clear-translated": "Skryť preložené",
+ "tux-editor-translate-mode": "Zoznam",
+ "tux-editor-proofreading-hide-own-translations": "Skryť vaše preklady",
+ "tux-editor-outdated-warning": "Tento preklad možno potrebuje aktualizáciu.",
+ "tux-editor-outdated-warning-diff-link": "Zobraziť rozdiely",
+ "tux-message-filter-placeholder": "Filtrovať zoznam",
+ "tux-message-filter-result": "Pre reťazec „$2“ sa {{PLURAL:$1|našiel 1 výsledok|našli $1 výsledky|našlo $1 výsledkov}}",
+ "tux-session-expired": "Už nie ste prihlásený. Prihláste sa, prosím, na inom liste, alebo skopírujte neuložený preklad, prihláste sa, vráťte sa k tejto stránke a zadajte znovu váš preklad."
}
diff --git a/MLEB/Translate/i18n/core/sl.json b/MLEB/Translate/i18n/core/sl.json
index 69c88dc2..2a5db6e1 100644
--- a/MLEB/Translate/i18n/core/sl.json
+++ b/MLEB/Translate/i18n/core/sl.json
@@ -4,16 +4,13 @@
"Dbc334",
"Eleassar",
"Smihael",
- "Edinwiki"
+ "Edinwiki",
+ "Janezdrilc",
+ "Upwinxp"
]
},
"translate": "Prevedi",
"translate-desc": "[[Special:Translate|Posebna stran]] za prevajanje MediaWiki in razširitev",
- "translate-taskui-view": "Pokaži vsa sporočila",
- "translate-taskui-untranslated": "Pokaži neprevedena sporočila",
- "translate-taskui-optional": "Pokaži izbirna sporočila",
- "translate-taskui-acceptqueue": "Samo sporočila, ki jih lako označim kot pregledana",
- "translate-taskui-reviewall": "Preglej vse prevode",
"translate-taskui-export-to-file": "Izvozi v izvirni obliki",
"translate-taskui-export-as-po": "Izvozi za nepovezano prevajanje",
"translate-taction-translate": "Prevedi",
@@ -42,7 +39,6 @@
"translate-page-description-hasoptional": "Ta skupina sporočil vsebuje izbirna sporočila.\nIzbirna sporočila prevedite samo, če ima vaš jezik posebne zahteve,\nkot sta neuporaba presledkov ali prečrkovanje izvirnih imen. $1",
"translate-page-description-hasoptional-open": "Pokaži izbirna sporočila.",
"translate-page-edit": "uredi",
- "translate-ext-url": "<hr /> Spletna stran: $1",
"translate-optional": "(neobvezno)",
"translate-ignored": "(prezri)",
"translate-edit-title": "Uredi »$1«",
@@ -52,14 +48,17 @@
"translate-edit-no-information": "<em>Sporočilo nima dokumentacije.\nČe veste, kje in kako je uporabljeno, lahko pomagate drugim prevajalcem z dodajanjem dokumentacije.</em>",
"translate-edit-information": "Podatki o sporočilu ($1)",
"translate-edit-in-other-languages": "Sporočilo v drugih jezikih",
- "translate-edit-committed": "Trenutni prevod v programski opremi",
"translate-edit-warnings": "Opozorila o nepopolnosti prevoda",
- "translate-edit-tmsugs": "Predlogi iz spomina prevodov",
"translate-edit-tmmatch-source": "Izvirno besedilo prevoda: $1",
"translate-edit-tmmatch": "$1-% ujemanje",
"translate-use-suggestion": "Zamenjaj trenutni prevod s tem predlogom.",
"translate-edit-nopermission": "Za prevajanje sporočil potrebujete prevajalske pravice.",
"translate-edit-askpermission": "Pridobite dovoljenje",
+ "exporttranslations": "Izvozi prevode",
+ "translate-export-form-format": "Format",
+ "translate-export-invalid-format": "Prosimo, izberi veljaven format.",
+ "translate-export-not-supported": "Izvoz prevoda ni podprt.",
+ "translate-export-format-notsupported": "Izbranega formata za izvoz skupina za obveščanje ne podpira.",
"translate-magic-pagename": "Razširjeno prevajanje MediaWiki",
"translate-magic-help": "Prevedete lahko vzdevke posebnih strani, čarobne besede in imena imenskih prostorov.\n\nVzdevki posebnih strani in čarobne besede imajo lahko več prevodov.\nPrevodi so ločeni z vejico (,).\nImenski prostori imajo lahko samo en prevod.\n\nPrevajanja projektnih imenskih prostorov za pogovor <code>$1 talk</code> je lahko zapleteno.\n<code>$1</code> se zamenja z imenom projektne strani (na primer <code>{{ns:project_talk}}</code>).\nČe v vašem jeziku ni mogoče tvoriti veljavnega izraza brez spreminjanja imena strani, prosimo, nas o tem obvestite na strani [[Support|Podpora]].\n\nZa shranjevanje sprememb morate biti prevajalec.\nSpremembe niso shranjene dokler ne kliknete spodnjega gumba za shranjevanje.",
"translate-magic-module": "Modul:",
@@ -76,9 +75,9 @@
"translate-magic-special": "Vzdevki posebnih strani",
"translate-magic-words": "Čarobne besede",
"translate-magic-namespace": "Imena imenskih prostorov",
- "translate-magic-notsaved": "Vaše urejanje ni bilo shranjeno!",
+ "translate-magic-notsaved": "Tvoje urejanje ni bilo shranjeno!",
"translate-magic-errors": "Prosimo popravite {{PLURAL:$1|naslednjo napako|naslednji $1 napaki|naslednje $1 napake|naslednjih $1 napak}} v prevodih:",
- "translate-magic-saved": "Vaše spremembe smo uspešno shranili.",
+ "translate-magic-saved": "Vaše spremembe smo shranili.",
"translate-checks-parameters": "{{PLURAL:$2|Naslednji parameter ni uporabljen|Naslednja parametra nista uporabljena|Naslednji parametri niso uporabljeni}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-parameters-unknown": "{{PLURAL:$2|Naslednji parameter je neznan|Naslednja parametra sta neznana|Naslednji parametri so neznani}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-balance": "V sporočilu je neparno število {{PLURAL:$2|oklepajev}}:\n<strong><nowiki>$1</nowiki></strong>",
@@ -104,8 +103,16 @@
"action-translate-manage": "urejanje skupin prevodov",
"right-translate-import": "Uvažanje nepovezanih prevodov",
"action-translate-import": "uvažanje nepovezanih prevodov",
- "right-translate-messagereview": "Pregledovanje prevodov",
+ "right-translate-messagereview": "Preglej prevode",
+ "action-translate-messagereview": "pregled prevodov",
"right-translate-groupreview": "Sprememba stanja poteka dela skupine sporočil",
+ "translate-rcfilters-translations": "Prevodi",
+ "translate-rcfilters-translations-only-label": "Prevodi",
+ "translate-rcfilters-translations-only-desc": "Sprememba strani za prevajanje.",
+ "translate-rcfilters-translations-filter-label": "Brez prevodov",
+ "translate-rcfilters-translations-filter-desc": "Vse spremembe, ki niso prevodi.",
+ "translate-rcfilters-translations-site-label": "Sporočila za strani",
+ "translate-rcfilters-translations-site-desc": "Prilagoditve sporočil za strani v imenskem prostoru MediaWiki.",
"translate-rc-translation-filter": "Filtriraj prevode:",
"translate-rc-translation-filter-no": "Ne stori ničesar",
"translate-rc-translation-filter-only": "Prikaži samo prevode",
@@ -121,8 +128,8 @@
"translate-statsf-options": "Možnosti grafa",
"translate-statsf-width": "Širina v slikovnih pikah:",
"translate-statsf-height": "Višina v slikovnih pikah:",
- "translate-statsf-days": "Začetni datum:",
- "translate-statsf-start": "Začetni datum:",
+ "translate-statsf-days": "Datum začetka:",
+ "translate-statsf-start": "Datum začetka:",
"translate-statsf-scale": "Zrnavost:",
"translate-statsf-scale-months": "Meseci",
"translate-statsf-scale-weeks": "Tedni",
@@ -137,7 +144,6 @@
"translate-statsf-language": "Z vejico ločen seznam kod jezikov:",
"translate-statsf-group": "Z vejico ločen seznam kod skupin:",
"translate-statsf-submit": "Predogled",
- "translate-tag-category": "Prevedljive strani",
"translate-tag-page-desc": "Prevod wikistrani [[$2|$1]] iz jezika $3 ($4).",
"translate-sidebar-alltrans": "V drugih jezikih",
"translations": "Vsi prevodi",
@@ -179,7 +185,7 @@
"translate-mgs-noempty": "Ne prikaži jezikov, ki nimajo nobenega prevoda",
"translate-mgs-submit": "Prikaži statistiko",
"translate-mgs-column-language": "Jezik",
- "translate-mgs-totals": "Vsi jeziki skupaj",
+ "translate-mgs-totals": "{{PLURAL:$1|2=Oba jezika|Vsi jeziki}} skupaj",
"translate-mgs-invalid-group": "Izbrana skupina $1 ne obstaja.",
"translate-mgs-nothing": "Pri izbrani statistiki ni ničesar za prikazati.",
"supportedlanguages": "Podprti jeziki",
@@ -212,16 +218,15 @@
"translate-manage-toolong": "Najdaljši čas obdelave $1 {{PLURAL:$1|sekunde|sekund}} je presežen.\nProsimo, ponovno potrdite obrazec, da nadaljujete z obdelavo.",
"translate-manage-import-summary": "Uvažanje nove različice iz zunanjega vira",
"translate-manage-conflict-summary": "Uvažanje nove različice iz zunanjega vira.\nProsimo, preverite.",
- "translate-manage-fuzzy-summary": "Opredelitev sporočila se je spremenila",
"translate-manage-submit": "Izvedi",
- "translate-manage-intro-other": "Spodaj se nahaja seznam sprememb prevodov v jeziku $1.\nProsimo, preglejte spremembe in izberite dejanje, ki ga želite storiti za vsako posodobitev.\nČe se odločite prezreti spremembe, bo to dejanje samo začasno.",
+ "translate-manage-intro-other": "Spodaj se nahaja seznam sprememb prevodov v jeziku $1.\nProsimo, preglej spremembe in izberi dejanje, ki ga želiš storiti za vsako posodobitev.\nČe se odločiš prezreti spremembe, bo to dejanje samo začasno.",
"translate-manage-import-ok": "Uvoženo: $1.",
"translate-manage-import-done": "Uvoz je dokončan!",
"importtranslations": "Uvažanje prevodov",
"translate-import-from-local": "Nalaganje lokalne datoteke:",
"translate-import-load": "Naloži datoteko",
"translate-import-err-dl-failed": "Ne morem pridobiti datoteke:\n$1",
- "translate-import-err-ul-failed": "Nalaganje datoteke ni bilo uspešno",
+ "translate-import-err-ul-failed": "Nalaganje datoteke je spodletelo",
"translate-import-err-invalid-title": "Določeno ime datoteke <nowiki>$1</nowiki> je bilo neveljavno.",
"translate-import-err-no-such-file": "Datoteka <nowiki>$1</nowiki> ne obstaja ali pa ni bila naložena lokalno.",
"translate-import-err-stale-group": "Skupina sporočil, kateri pripada ta datoteka, ne obstaja.",
@@ -230,9 +235,7 @@
"translate-js-summary": "Povzetek:",
"translate-js-save": "Shrani",
"translate-js-next": "Shrani in odpri naslednje",
- "translate-js-nonext": "To je bilo zadnje sporočilo na tej strani.",
"translate-js-skip": "Preskoči na naslednje",
- "translate-js-save-failed": "Shranjevanje je spodletelo. Prosimo, prijavite to napako.",
"translate-js-history": "Zgodovina prevoda",
"translate-js-support": "Postavi vprašanje",
"translate-js-support-title": "Prosite za pomoč, če tukaj ni navedenih dovolj informacij, da bi lahko sporočilo pravilno prevedli.",
@@ -249,24 +252,12 @@
"translate-documentation-language": "dokumentacija sporočila",
"translate-searchprofile": "Prevodi",
"translate-searchprofile-tooltip": "Iskanje med vsemi prevodi",
+ "translate-searchprofile-note": "Več možnosti iskanja je na voljo z [$1 iskanjem prevodov].",
"translate-search-languagefilter": "Filtriraj po jeziku:",
"translate-search-nofilter": "Brez filtriranja",
- "translate-messagereview-submit": "Označi kot pregledano",
- "translate-messagereview-progress": "Označevanje kot pregledano ...",
- "translate-messagereview-failure": "Označevanje kot pregledano je spodletelo: $1",
- "translate-messagereview-done": "Pregledano",
- "translate-messagereview-reviews": "{{PLURAL:$1|Pregledal $1 uporabnik|Pregledala $1 uporabnika|Pregledali $1 uporabniki|Pregledalo $1 uporabnikov}}",
- "translate-messagereview-reviewswithyou": "{{PLURAL:$1|Pregledali ste vi|Pregledala $1 uporabnika, vključno z vami|Pregledali $1 uporabniki, vključno z vami|Pregledalo $1 uporabnikov, vključno z vami}}",
- "api-error-invalidrevision": "Prevoda ni bilo mogoče najti",
- "api-error-unknownmessage": "Sporočila ni bilo mogoče najti",
- "api-error-fuzzymessage": "Prevod je označen kot zastarel",
- "api-error-owntranslation": "Svojih prevodov ne me morete označiti kot pregledane",
- "translate-messagereview-no-fuzzy": "Zastarelih prevodov ni mogoče označiti kot pregledane.",
- "translate-messagereview-no-own": "Svojih prevodov ne me morete označiti kot pregledane.",
- "translate-messagereview-doit": "Označi prevod kot pregledan.",
"log-name-translationreview": "Dnevnik pregledov prevodov",
"log-description-translationreview": "Dnevnik vseh pregledov prevodov in skupin sporočil.",
- "logentry-translationreview-message": "$1 je {{GENDER:$2|pregledal|pregledala|pregledal(-a)}} prevod $3",
+ "logentry-translationreview-message": "$1 je {{GENDER:$2|pregledal|pregledala}} prevod $3",
"logentry-translationreview-group": "$1 je {{GENDER:$2|spremenil|spremenila|spremenil(-a)}} stanje prevodov jezika $4 za $3 iz $6 v $7",
"group-translate-sandboxed": "Neodobreni prevajalci",
"group-translate-sandboxed-member": "{{GENDER:$1|neodobren prevajalec}}",
@@ -276,10 +267,7 @@
"action-translate-sandboxaction": "izvršitev dejanj, dovoljenih na peskovnik omejenim uporabnikom",
"translate-workflow-state-": "(izključeno)",
"translate-workflowstatus": "Stanje: $1",
- "translate-workflow-set-do": "Nastavi",
"translate-workflow-set-doing": "Nastavljanje ...",
- "translate-workflow-set-done": "Nastavljeno!",
- "translate-workflow-set-error-alreadyset": "Zahtevano stanje je enako trenutnemu stanju.",
"translate-workflow-autocreated-summary": "Samodejno ustvarjanje strani za stanje delovnega toka $1",
"translate-stats-workflow": "Stanje",
"translate-workflowgroup-label": "Stanja delovnega toka",
@@ -288,11 +276,6 @@
"translate-dynagroup-recent-desc": "Skupina sporočil prikazuje vse nedavne prevode v ta jezik.\nNajuporabnejše za opravila pregleda.",
"translate-dynagroup-additions-label": "Nedavna dodajanja",
"translate-dynagroup-additions-desc": "Ta skupina sporočil kaže nova in spremenjena sporočila.",
- "translate-dynagroup-by": "{{GENDER:$1|Prevedel|Prevedla|Prevedla oseba}} $1",
- "translate-dynagroup-byc": "{{GENDER:$1|Prevedel|Prevedla|Prevedla oseba}} $1 ($2)",
- "translate-dynagroup-last": "Nazadnje {{GENDER:$1|spremenil|spremenila|spremenil(-a)}} $1",
- "translate-dynagroup-lastc": "Nazadnje {{GENDER:$1|spremenil|spremenila|spremenil(-a)}} $1 ($2)",
- "translate-gethelp": "Pomoč",
"translate-msggroupselector-projects": "Skupina sporočil",
"translate-msggroupselector-search-placeholder": "Iskanje skupin",
"translate-msggroupselector-search-all": "Vsi",
@@ -311,14 +294,17 @@
"tux-status-translated": "Prevedeno",
"tux-status-saving": "Shranjevanje ...",
"tux-status-unsaved": "Neshranjeno",
+ "tux-save-unknown-error": "Prišlo je do neznane napake.",
"tux-editor-placeholder": "Vaš prevod",
+ "tux-editor-editsummary-placeholder": "Izbirni povzetek",
"tux-editor-paste-original-button-label": "Prilepi izvorno besedilo",
"tux-editor-discard-changes-button-label": "Zavrzi spremembe",
"tux-editor-save-button-label": "Shrani prevod",
"tux-editor-skip-button-label": "Preskoči na naslednje",
"tux-editor-cancel-button-label": "Prekliči",
"tux-editor-confirm-button-label": "Potrdi prevod",
- "tux-editor-shortcut-info": "Pritisnite »$1« za shranitev, »$2« za skok na naslednje sporočilo ali »$3« za druge bližnjice.",
+ "tux-editor-proofread-button-label": "Označi kot pregledano",
+ "tux-editor-shortcut-info": "Pritisnite »$1« za shranitev, »$2« za skok na naslednje sporočilo, »$4« za navedbo povzetka ali »$3« za druge bližnjice.",
"tux-editor-edit-desc": "Uredi dokumentacijo",
"tux-editor-add-desc": "Dodaj dokumentacijo",
"tux-editor-suggestions-title": "Predlogi",
@@ -367,20 +353,24 @@
"tux-empty-nothing-new-to-proofread": "Za pregled ni nič novega",
"tux-empty-you-can-review-already-proofread": "Pregledate lahko prevode, ki so jih pregledali že drugi.",
"tux-empty-list-other": "Ničesar ni treba prevesti.",
- "tux-empty-list-other-guide": "Pomagate lahko s pregledom že obstoječih prevodov.",
+ "tux-empty-list-other-guide": "Pomagate lahko s pregledom obstoječih prevodov.",
"tux-empty-list-other-action": "Pregled prevodov",
"tux-empty-list-other-link": "Prikaz vseh sporočil",
"tux-editor-close-tooltip": "Zapri",
"tux-editor-expand-tooltip": "Razširi",
"tux-editor-collapse-tooltip": "Skrči",
+ "tux-editor-message-tools-show-editor": "Pokaži v wikiurejevalniku",
"tux-editor-message-tools-history": "Zgodovina",
"tux-editor-message-tools-delete": "Izbriši",
"tux-editor-message-tools-translations": "Vsi prevodi",
+ "tux-editor-message-tools-linktothis": "Povezava na to sporočilo",
"tux-editor-loading": "Nalagam ...",
"translate-search-more-languages-info": "Še $1 {{PLURAL:$1|jezik|jezika|jeziki|jezikov}}",
"translate-statsbar-tooltip": "$1% prevedenih, $2% pregledanih",
"translate-statsbar-tooltip-with-fuzzy": "$1% prevedenih, $2% pregledanih, $3% zastarelih",
"translate-search-more-groups-info": "Še $1 {{PLURAL:$1|skupina|skupini|skupine|skupin}}",
"translate-ulsdep-title": "Napaka pri konfiguraciji",
- "translate-ulsdep-body": "Razširitev Translate je odvisna od [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector razširitve Universal Language Selector]."
+ "translate-ulsdep-body": "Razširitev Translate je odvisna od [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector razširitve Universal Language Selector].",
+ "tux-session-expired": "Niste več prijavljeni. Prosimo, prijavite se v ločenem zavihku. Druga možnost je, da naredite kopijo neshranjenega prevoda, se prijavite, se vrnete na to stran in ponovno vnesete vaš prevod.",
+ "tux-nojs": "Orodje ne deluje brez JavaScripta. JavaScript je onemogočen, ne deluje ali pa brskalnik ni podprt."
}
diff --git a/MLEB/Translate/i18n/core/so.json b/MLEB/Translate/i18n/core/so.json
index 12cea2f3..4583a59e 100644
--- a/MLEB/Translate/i18n/core/so.json
+++ b/MLEB/Translate/i18n/core/so.json
@@ -7,7 +7,6 @@
]
},
"translate": "Fasir",
- "translate-taskui-acceptqueue": "Fariimaha bis ayaan aqbalayaa",
"translate-taction-proofread": "Sixid",
"translate-taction-lstats": "Tirakoobka Luqadda",
"translate-taction-mstats": "Fariinta Tirakoobka Kooxda",
@@ -17,6 +16,7 @@
"translate-page-description-legend": "Macluumaad kusaabsan qaybta",
"translate-edit-nopermission": "Waxaad ubaahantahay ruqsad si aad u turjunto fariimaha.",
"translate-magic-submit": "Qaado",
+ "translate-pref-nonewsletter": "Ha dirin wax wargelin farriin e-mail ah",
"translate-tag-page-desc": "Turjumidda ee bogga wiki [[$2|$1]].",
"languagestats-summary": "Boggaan waxaa lagu soo bandhigay tirakoobka turjumaadda qayba kasta oo ka mid ah fariimaha luaqadaha.",
"languagestats-stats-for": "Tirakoobka turtumida luqadda $1 ($2).",
@@ -29,5 +29,6 @@
"translate-mgs-pagename": "Fariinta Tirakoobka Kooxda",
"translate-mgs-submit": "Itus tirakoobka",
"translate-mgs-column-language": "Luqada",
+ "supportedlanguages-count": "Wadarta ku jirta waa $1 {{PLURAL:$1|luqad|luqadood}}.",
"translate-dynagroup-recent-desc": "Qaybtaan waxa ay ku tusaysaa dhamaan turjumiddii ugu dambaysay ee luqadaan.\nEe faaiidada badan leh saxidda luqada."
}
diff --git a/MLEB/Translate/i18n/core/sq.json b/MLEB/Translate/i18n/core/sq.json
index 574e8b9c..1c6e0be9 100644
--- a/MLEB/Translate/i18n/core/sq.json
+++ b/MLEB/Translate/i18n/core/sq.json
@@ -3,10 +3,14 @@
"authors": [
"Dori",
"Puntori",
- "GretaDoci"
+ "GretaDoci",
+ "Liridon",
+ "Kosovastar"
]
},
"translate": "Përkthime",
+ "translate-extensionname": "Përkthe",
+ "translate-taction-lstats": "Statistikat gjuhësore",
"translate-page-group": "Grupi",
"translate-page-language": "Gjuha",
"translate-page-edit": "redakto",
@@ -17,6 +21,7 @@
"translate-magic-cm-comment": "Komenti:",
"translate-magic-cm-save": "Ruaje",
"translate-magic-cm-savefailed": "Ruajtja dështoi",
+ "prefs-translate": "Opsione përkthimi",
"translate-stats-edits": "Redaktime",
"translate-stats-users": "Përkthyes",
"translate-statsf-width": "Gjerësia në piksel:",
@@ -27,5 +32,9 @@
"translate-statsf-scale-hours": "Orë",
"translate-statsf-count-users": "Përkthyesit aktiv",
"translate-statsf-submit": "Parapamja",
- "tux-editor-shortcut-info": "Shtypni \"<span class=\"notranslate\" translate=\"asnjë\">$1</span>\" për të shpëtuar ose \"<span class=\"notranslate\" translate=\"asnjë\">$2</span>\" për të kaluar tek tjetër mesazh, ose \"<span class=\"notranslate\" translate=\"asnjë\">$3</span>\" për shortcut të tjera ."
+ "translate-mgs-pagename": "Statistikat e mesazhit të grupit",
+ "translate-js-history": "Historia e përkthimit",
+ "translate-documentation-language": "Dokumentimi i mesazhit",
+ "tux-editor-save-button-label": "Ruaj përkthimin",
+ "tux-editor-shortcut-info": "Shtypni \"$1\" për të ruajtur ose \"$2\" për të kaluar në mesazhin tjetër, ose \"$3\" për shkurtesa të tjera."
}
diff --git a/MLEB/Translate/i18n/core/sr-ec.json b/MLEB/Translate/i18n/core/sr-ec.json
index cd41e5a1..b665b2bc 100644
--- a/MLEB/Translate/i18n/core/sr-ec.json
+++ b/MLEB/Translate/i18n/core/sr-ec.json
@@ -6,324 +6,326 @@
"Sasa Stefanovic",
"Жељко Тодоровић",
"Милан Јелисавчић",
- "Михајло Анђелковић"
+ "Михајло Анђелковић",
+ "Srdjan m",
+ "Сербијана",
+ "Obsuser",
+ "Acamicamacaraca",
+ "Prevodim",
+ "BadDog",
+ "Zoranzoki21"
]
},
"translate": "Превод",
- "translate-desc": "[[Special:Translate|Посебна страница]] за превођење Медијавикија и више од тога",
- "translate-taskui-view": "Прикажи све поруке",
- "translate-taskui-untranslated": "Прикажи непреведене поруке",
- "translate-taskui-optional": "Прикажи необавезне поруке",
- "translate-taskui-acceptqueue": "Само поруке које могу да означим као потврђене",
- "translate-taskui-reviewall": "Прегледање превода",
+ "translate-extensionname": "Превођење",
+ "translate-desc": "[[Special:Translate|Посебна страница]] за превод Медијавикија и више од тога",
+ "translate-fuzzybot-desc": "Ово је посебан системски налог који користи [https://www.mediawiki.org/wiki/Extension:Translate додатак „Превођење” (Translate)] Медијавикија, који се корсти за одржавање превода.\nОвај налог је део софтвера Медијавики и није у власништву ниједног корисника.",
"translate-taskui-export-to-file": "Извези у матичном формату",
- "translate-taskui-export-as-po": "Извези за ванмрежно превођење",
+ "translate-taskui-export-as-po": "Извези за офлајн-превођење",
"translate-taction-translate": "Превод",
- "translate-taction-proofread": "Провера",
+ "translate-taction-proofread": "Преглед",
"translate-taction-lstats": "Статистика језика",
- "translate-taction-mstats": "Статистика групе",
+ "translate-taction-mstats": "Статистика групе порука",
"translate-taction-export": "Извоз",
- "translate-taction-disabled": "Радња је онемогућена на овом викију.",
- "translate-page-no-such-language": "Наведени језик није исправан.",
- "translate-page-no-such-group": "Наведена група није исправна.",
- "translate-page-disabled": "Преводи на овом језику у овој групи су онемогућени. Разлог:\n\n<em>$1</em>",
- "translate-language-disabled": "Превођење на овај језик је онемогућено.",
- "translate-page-settings-legend": "Поставке",
- "translate-page-group": "Група:",
- "translate-page-language": "Језик:",
- "translate-page-limit": "Ограничење:",
+ "translate-taction-disabled": "Ова радња је онемогућена на овом викију.",
+ "translate-page-no-such-language": "Наведени језик је неважећи.",
+ "translate-page-no-such-group": "Наведена група је неважећа.",
+ "translate-page-disabled": "Преводи на овом језику у овој групи су онемогућени.\nРазлог:\n\n<em>$1</em>",
+ "translate-language-disabled": "Превод на овај језик је онемогућен.",
+ "translate-page-settings-legend": "Подешавања",
+ "translate-page-group": "Група",
+ "translate-page-language": "Језик",
+ "translate-page-limit": "Ограничење",
"translate-page-limit-option": "$1 {{PLURAL:$1|порука|поруке|порука}} по страници",
"translate-submit": "Добави",
"translate-page-navigation-legend": "Навигација",
"translate-page-showing": "Приказ порука од $1 до $2, од $3.",
- "translate-page-showing-all": "Приказ $1 {{PLURAL:$1|поруке|порука}}.",
- "translate-page-showing-none": "Нема порука.",
+ "translate-page-showing-all": "Приказ $1 {{PLURAL:$1|поруке|поруке|порука}}.",
+ "translate-page-showing-none": "Нема порука за приказ.",
"translate-page-paging-links": "[ $1 ] [ $2 ]",
"translate-next": "Следећа страница",
"translate-prev": "Претходна страница",
- "translate-page-description-legend": "Подаци о групи",
- "translate-page-description-hasoptional": "Ова група садржи необавезне поруке. Њих преводите само када ваш језик има посебне потребе као пресловљавање имена или неупотреба размака. $1",
- "translate-page-description-hasoptional-open": "Прикажи необавезне поруке.",
+ "translate-page-description-legend": "Информације о овој групи",
+ "translate-page-description-hasoptional": "Ова група порука садржи опционалне поруке.\nЊих треба преводити само када ваш језик има посебне потребе,\nкао што су неупотреба размака или пресловљавање имена. $1",
+ "translate-page-description-hasoptional-open": "Прикажи опционалне поруке.",
"translate-page-edit": "уреди",
- "translate-ext-url": "<hr />Адреса: $1",
- "translate-optional": "(необавезно)",
+ "translate-optional": "(опционално)",
"translate-ignored": "(занемарено)",
- "translate-edit-title": "Уређивање „$1“",
- "translate-edit-definition": "Значење поруке",
+ "translate-edit-title": "Уредите страницу „$1”",
+ "translate-edit-definition": "Дефиниција поруке",
"translate-edit-translation": "Превод",
"translate-edit-contribute": "допринеси",
- "translate-edit-no-information": "<em>Ова порука нема пратећу документацију. Ако знате где се и како користи, помозите другим преводиоцима додавањем њеног описа.</em>",
- "translate-edit-information": "Подаци о поруци ($1)",
+ "translate-edit-no-information": "<em>Ова порука нема документацију.\nАко знате где или како се користи, помозите другим преводиоцима тако што ћете је написати.</em>",
+ "translate-edit-information": "Информације о поруци ($1)",
"translate-edit-in-other-languages": "Порука на другим језицима",
- "translate-edit-committed": "Текући превод у софтверу",
- "translate-edit-warnings": "Напомене о непотпуним преводима",
- "translate-edit-tmsugs": "Предлози из преводилачке меморије",
+ "translate-edit-warnings": "Упозорења о непотпуним преводима",
"translate-edit-tmmatch-source": "Текст изворног превода: $1",
"translate-edit-tmmatch": "$1% поклапања",
- "translate-use-suggestion": "Замени текући превод с овим предлогом.",
- "translate-edit-nopermission": "Треба вам дозвола да преводите поруке.",
- "translate-edit-askpermission": "Затражи дозволу",
+ "translate-use-suggestion": "Замените актуелан превод овим предлогом.",
+ "translate-edit-nopermission": "Требају вам преводилачка права да бисте преводили поруке.",
+ "translate-edit-askpermission": "Набави дозволу",
+ "exporttranslations": "Извоз превода",
+ "translate-export-form-format": "Формат",
+ "translate-export-invalid-format": "Наведите важећи формат.",
+ "translate-export-not-supported": "Извоз превода није подржан.",
+ "translate-export-format-notsupported": "Група порука не подржава наведени формат извоза.",
"translate-magic-pagename": "Проширени превод Медијавикија",
- "translate-magic-help": "Можете превести кодове за посебне странице, магичне речи и именске просторе.\n\nКодови за посебне странице и магичне речи могу имати више превода.\nПреводи су одвојени зарезом.\nИменски простори могу имати само један превод.\n\nПревођење именских простора за <code>$1 разговор</code> може бити компликовано.\n<code>$1</code> је замењен с називом сајта (нпр. <code>{{ns:project_talk}}</code>).\nАко на вашем језику није могуће формирати исправан израз без мењања назив сајта, молимо обавестите нас на [[Support]].\n\nМорате бити преводилац да бисте сачували измене.\nТо ћете урадити кликом на дугме „Сачувај“ које се налази испод.",
+ "translate-magic-help": "Можете превести кодове за посебне странице, магичне речи и именске просторе.\n\nКодови за посебне странице и магичне речи могу имати више превода.\nПреводи су одвојени зарезом.\nИменски простори могу имати само један превод.\n\nПревод именских простора за <code>$1 разговор</code> може бити компликован.\n<code>$1</code> је замењен с називом сајта (нпр. <code>{{ns:project_talk}}</code>).\nАко на вашем језику није могуће формирати важећи израз без мењања назив сајта, молимо обавестите нас на [[Support]].\n\nМорате бити преводилац да бисте сачували промене.\nТо ћете урадити кликом на дугме „Сачувај“ које се налази испод.",
"translate-magic-module": "Модул:",
"translate-magic-submit": "Добави",
"translate-magic-cm-export": "Извези",
"translate-magic-nothing-to-export": "Нема ништа за извоз.",
"translate-magic-cm-to-be": "Будуће",
- "translate-magic-cm-current": "Текуће",
- "translate-magic-cm-original": "Изворно",
+ "translate-magic-cm-current": "Актуелно",
+ "translate-magic-cm-original": "Оригинално",
"translate-magic-cm-comment": "Коментар:",
"translate-magic-cm-save": "Сачувај",
"translate-magic-cm-updatedusing": "Ажурирано користећи ''[[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]''",
- "translate-magic-cm-savefailed": "Измене нису сачуване",
- "translate-magic-special": "кодови за посебне странице",
+ "translate-magic-cm-savefailed": "Чување није успело",
+ "translate-magic-special": "псеудоними посебних страница",
"translate-magic-words": "магичне речи",
- "translate-magic-namespace": "називи именских простора",
- "translate-magic-notsaved": "Ваша измена није сачувана!",
+ "translate-magic-namespace": "имена именских простора",
+ "translate-magic-notsaved": "Ваша измена није сачувана.",
"translate-magic-errors": "Исправите {{PLURAL:$1|следећу грешку|следеће грешке}} у преводима:",
- "translate-magic-saved": "Ваше измене су сачуване.",
+ "translate-magic-saved": "Ваше промене су сачуване.",
"translate-checks-parameters": "Следећи {{PLURAL:$2|параметар се не користи|параметри се не користе}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-parameters-unknown": "Следећи {{PLURAL:$2|параметар је непознат|параметри су непознати}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-balance": "Присутан је непаран број {{PLURAL:$2|заграда}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-links": "{{PLURAL:$2|Следећа веза је проблематична|Следеће $2 везе су проблематичне|Следећих $2 веза је проблематично}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-links-missing": "{{PLURAL:$2|Следећа веза недостаје|Следеће $2 везе недостају|Следећих $2 веза недостају}}:\n<strong><nowiki>$1</nowiki></strong>",
- "translate-checks-xhtml": "Замените {{PLURAL:$2|следећу ознаку|следеће ознаке}} с исправним:\n<strong><nowiki>$1</nowiki></strong>",
- "translate-checks-plural": "Значење користи <nowiki>{{PLURAL:}}</nowiki>, а превод не.",
+ "translate-checks-xhtml": "Замените {{PLURAL:$2|следећу ознаку исправном|следеће ознаке исправним}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "Дефиниција користи <nowiki>{{PLURAL:}}</nowiki>, а превод не.",
"translate-checks-plural-forms": "<nowiki>{{PLURAL:}}</nowiki> је дата {{PLURAL:$1|један облик|$1 облика}} али {{PLURAL:$2|само један облик је|$2 облика је}} подржано (изузимајући облике 0= и 1=).",
"translate-checks-plural-dupe": "<nowiki>{{PLURAL:}}</nowiki> садржи дуплирану форму. Форму <nowiki>{{PLURAL:$1|врата|врата}}</nowiki> би требало писати као <nowiki>{{PLURAL:$1|врата}}</nowiki>.",
- "translate-checks-pagename": "Именски простор је промењен из значења",
- "translate-checks-format": "Овај превод нема значењску форму или има неисправну синтаксу: $1",
+ "translate-checks-pagename": "Именски простор је промењен у односу на дефиницију",
+ "translate-checks-format": "Овај превод не прати дефиницију или има неважећу синтаксу: $1",
"translate-checks-escape": "Следећи излази могу бити случајни: <strong>$1</strong>",
"translate-checks-parametersnotequal": "Број коришћених параметара је {{PLURAL:$1|$1}}; требало би да је {{PLURAL:$2|$2}}.",
"translate-checks-malformed": "<nowiki>$1</nowiki> има погрешан формат.",
"translate-checks-fudforum-syntax": "Користи <nowiki>$1</nowiki> уместо <nowiki>$2</nowiki> у овом пројекту.",
- "translate-pref-nonewsletter": "Не шаљи ми билтене преко е-поште",
+ "translate-pref-nonewsletter": "Не шаљи ми билтене путем имејла",
"translate-pref-editassistlang": "Помоћни језици:",
- "prefs-translate": "Могућности превода",
- "translate-pref-editassistlang-help": "Списак језичких кодова који су одвојени зарезом.\nПревод поруке у овим језицима приказан је у току превођења.\nПодразумевани списак језика зависи од вашег језика.",
- "translate-pref-editassistlang-bad": "Неисправан језички код на списку:\n<nowiki>$1</nowiki>.",
- "right-translate": "уређивање путем преводилачког сучеља",
+ "prefs-translate": "Опције превода",
+ "translate-pref-editassistlang-help": "Списак кодова језика раздвојених зарезом.\nПревод поруке на овим језицима приказује се док преводите.\nПодразумеваи списак језика зависи од вашег језика.",
+ "translate-pref-editassistlang-bad": "Неважећи кôд језика на списку:\n<nowiki>$1</nowiki>.",
+ "right-translate": "уређивање коришћењем преводилачког интерфејса",
"right-translate-manage": "управљање групама порука",
- "action-translate-manage": "управљање групама порука",
- "right-translate-import": "увожење ванмрежних превода",
- "action-translate-import": "увоз превода",
+ "action-translate-manage": "управљате групама порука",
+ "right-translate-import": "увожење офлајн-превода",
+ "action-translate-import": "увозите офлајн-преводе",
"right-translate-messagereview": "прегледање превода",
+ "action-translate-messagereview": "прегледавате преводе",
"right-translate-groupreview": "мењање стања радног тока за групе порука",
- "translate-rc-translation-filter": "Филтрирање превода:",
+ "action-translate-groupreview": "промените стање тока рада за групе порука",
+ "translate-rcfilters-translations": "Преводи",
+ "translate-rcfilters-translations-only-label": "Преводи",
+ "translate-rcfilters-translations-only-desc": "Промене преведених страница",
+ "translate-rcfilters-translations-filter-label": "Нису преводи",
+ "translate-rcfilters-translations-filter-desc": "Све промене које нису преводи.",
+ "translate-rcfilters-translations-site-label": "Поруке сајта",
+ "translate-rcfilters-translations-site-desc": "Прилагођавање порука сајта у именском простору Медијавики.",
+ "translate-rc-translation-filter": "Филтрирај преводе:",
"translate-rc-translation-filter-no": "не ради ништа",
"translate-rc-translation-filter-only": "прикажи само преводе",
"translate-rc-translation-filter-filter": "избаци преводе",
- "translate-rc-translation-filter-site": "само измене порука сајта",
- "translationstats": "Статистика превођења",
+ "translate-rc-translation-filter-site": "само промене порука сајта",
+ "translationstats": "Статистика превода",
"translate-stats-edits": "Измене",
"translate-stats-users": "Преводиоци",
- "translate-stats-registrations": "Учлањења",
- "translate-stats-reviews": "Рецензије",
- "translate-stats-reviewers": "Рецензенти",
- "translate-statsf-intro": "Овом формом можете направити једноставне статистике.\nСве вредности имају своја горња и доња ограничења.",
- "translate-statsf-options": "Поставке графикона",
+ "translate-stats-registrations": "Регистрације",
+ "translate-stats-reviews": "Прегледи",
+ "translate-stats-reviewers": "Прегледавачи",
+ "translate-statsf-intro": "Генеришете једноставну статистику уз помоћ овог обрасца.\nСве вредности имају доња и горња ограничења.",
+ "translate-statsf-options": "Опције графикона",
"translate-statsf-width": "Ширина у пикселима:",
"translate-statsf-height": "Висина у пикселима:",
"translate-statsf-days": "Временски период у данима:",
- "translate-statsf-start": "Почетни датум:",
+ "translate-statsf-start": "Датум почетка:",
"translate-statsf-scale": "Грануларност:",
"translate-statsf-scale-months": "месеци",
"translate-statsf-scale-weeks": "недеље",
"translate-statsf-scale-days": "дани",
"translate-statsf-scale-hours": "сати",
- "translate-statsf-count": "Мера:",
+ "translate-statsf-count": "Мерење:",
"translate-statsf-count-edits": "Број измена",
"translate-statsf-count-users": "Активни преводиоци",
"translate-statsf-count-registrations": "Нови корисници",
- "translate-statsf-count-reviews": "Рецензије превода",
- "translate-statsf-count-reviewers": "Рецензенти",
- "translate-statsf-language": "Списак језичких кодова одвојених зарезом:",
- "translate-statsf-group": "Списак групних кодова одвојених зарезом:",
+ "translate-statsf-count-reviews": "Прегледи превода",
+ "translate-statsf-count-reviewers": "Прегледавачи",
+ "translate-statsf-language": "Списак кодова језика раздвојених зарезом:",
+ "translate-statsf-group": "Списак кодова група раздвојених зарезом:",
"translate-statsf-submit": "Прегледај",
- "translate-tag-category": "Преводиве странице",
- "translate-tag-page-desc": "Превод вики странице [[$2|$1]].",
+ "translate-tag-page-desc": "Превод вики странице [[$2|$1]] са $3 ($4).",
"translate-sidebar-alltrans": "На другим језицима",
"translations": "Сви преводи",
- "translations-summary": "Унесите назив поруке испод да бисте приказали све доступне преводе.",
- "translate-translations-no-message": "Порука „$1“ се не може превести.",
- "translate-translations-none": "Нема превода за „$1“.",
+ "translations-summary": "Унесите име поруке испод да бисте приказали све доступне преводе.",
+ "translate-translations-no-message": "Порука „$1” није преводива.",
+ "translate-translations-none": "Не постоје преводи за „$1”.",
"translate-translations-count": "{{PLURAL:$1|Пронађен је један превод|Пронађена су $1 превода|Пронађено је $1 превода}}.",
"translate-translations-fieldset-title": "Порука",
- "translate-translations-messagename": "Назив:",
+ "translate-translations-messagename": "Име:",
"translate-translations-project": "Пројекат:",
- "translate-translations-including-no-param": "Унесите исправан кључ поруке у параметру подстранице",
+ "translate-translations-including-no-param": "Наведите важећи кључ поруке у параметру подстранице",
"translate-translations-history-short": "и",
"languagestats": "Статистика језика",
- "languagestats-summary": "Ова страница приказује статистику превода за све групе порука неког језика.",
+ "languagestats-summary": "Ова страница приказује статистику превода за све групе порука на неком језику.",
+ "messagegroupstats-summary": "Ова страница приказује статистику група порука.",
"languagestats-stats-for": "Статистика превода за {{LCFIRST:$1}} ($2).",
- "languagestats-recenttranslations": "скорашњи преводи",
- "translate-langstats-incomplete": "Неке статистике наведене на страници су непотпуне. Поново учитајте страницу да добијете потпуни преглед.",
- "translate-langstats-expand": "прикажи",
- "translate-langstats-collapse": "сакриј",
- "translate-langstats-expandall": "прикажи све",
- "translate-langstats-collapseall": "сакриј све",
- "translate-language-code": "Језични код",
- "translate-language-code-field-name": "Језични код:",
- "translate-suppress-complete": "Не приказуј потпуно преведене групе порука",
- "translate-ls-noempty": "Не приказуј потпуно непреведене групе порука",
+ "languagestats-recenttranslations": "недавни преводи",
+ "translate-langstats-incomplete": "Неке статистике наведене на страници су непотпуне. Поново учитајте страницу да бите добили још статистика.",
+ "translate-langstats-expand": "прошири",
+ "translate-langstats-collapse": "скупи",
+ "translate-langstats-expandall": "прошири све",
+ "translate-langstats-collapseall": "скупи све",
+ "translate-language-code": "Кôд језика",
+ "translate-language-code-field-name": "Кôд језика",
+ "translate-suppress-complete": "Сакриј потпуно преведене групе порука",
+ "translate-ls-noempty": "Сакриј потпуно непреведене групе порука",
"translate-language": "Језик",
"translate-total": "Поруке",
"translate-untranslated": "Непреведено",
- "translate-percentage-complete": "Довршено",
+ "translate-percentage-complete": "Завршено",
"translate-percentage-fuzzy": "Застарело",
"translate-languagestats-overall": "Све групе порука заједно",
"translate-ls-submit": "Прикажи статистику",
"translate-ls-column-group": "Група порука",
- "translate-mgs-pagename": "Статистика групе порука",
+ "translate-mgs-pagename": "Статистика група порука",
"translate-mgs-fieldset": "Подешавање приказа",
"translate-mgs-group": "Група порука:",
- "translate-mgs-nocomplete": "Не приказуј језике с потпуним преводом",
- "translate-mgs-noempty": "Не приказуј језике без икаквих превода",
+ "translate-mgs-nocomplete": "Не приказуј језике сa потпуним преводом",
+ "translate-mgs-noempty": "Не приказуј језике који немају никакве преводе",
"translate-mgs-submit": "Прикажи статистику",
"translate-mgs-column-language": "Језик",
- "translate-mgs-totals": "Сви језици заједно",
- "translate-mgs-invalid-group": "Наведена група $1 не постоји.",
- "translate-mgs-nothing": "Нема шта да се прикаже за захтеване статистике.",
+ "translate-mgs-totals": "Свих $1 {{PLURAL:$1|језик|језика}} заједно",
+ "translate-mgs-invalid-group": "Наведена група „$1” не постоји.",
+ "translate-mgs-nothing": "Нема ничега да се прикаже за захтеване статистике.",
"supportedlanguages": "Подржани језици",
- "supportedlanguages-summary": "Ова страница приказује списак свих подржаних језика на овом викију, заједно с именима преводиоца који раде на тим језицима.\nВеличина имена, тј. слова преводиоца зависи од тога колико је порука превео.\nБоја линије с којом је име подвучено приказује колико је преводилац активан.",
- "supportedlanguages-colorlegend": "Легенда за боју; последњи превод извршен пре $1 дана.",
+ "supportedlanguages-summary": "Ова страница приказује списак свих језика које подржава {{SITENAME}},\nзаједно са именима преводилаца који раде на одабраном језику.\nИме преводиоца је веће што је са више превода допринео.\nБоја линије подвлачења индицира колико скоро је преводилац овде био активан.",
+ "supportedlanguages-colorlegend": "Легенда за боју: последњи превод извршен пре $1 дана.",
"supportedlanguages-portallink": "[$1] $2 – $3",
"supportedlanguages-portallink-nocldr": "[$1] $2",
- "supportedlanguages-translators": "{{PLURAL:$2|Преводилац|Преводиоци}}: $1",
- "supportedlanguages-recenttranslations": "скорашњи преводи",
- "supportedlanguages-count": "Укупно $1 {{PLURAL:$1|језик|језика|језика}}.",
+ "supportedlanguages-sqlite-error": "SQLite није подржан",
+ "supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|Преводилац|Преводитељка}}|Преводиоци}}: $1",
+ "supportedlanguages-recenttranslations": "недавни преводи",
+ "supportedlanguages-count": "Укупно $1 {{PLURAL:$1|језик|језика}}.",
"supportedlanguages-activity": "$1: $2 {{PLURAL:$2|измена|измене|измена}} – последња измена пре $3 {{PLURAL:$3|дан|дана|дана}}",
+ "abusefilter-edit-builder-vars-translate-source-text": "Изворни текст преводилачке јединице",
"translate-save": "Сачувај ($1)",
"translate-jssti-add": "Додај на списак",
"managemessagegroups": "Управљање групама порука",
- "translate-smg-notallowed": "Немате дозволу да извршите ову радњу.",
- "translate-smg-nochanges": "Нема измена које треба обрадити.",
- "translate-smg-submit": "Проследи измене на обраду",
- "translate-smg-submitted": "Дефиниција поруке је ажурирана. Измене се врше у позадини.",
- "translate-smg-left": "Садржај поруке на вики",
- "translate-smg-right": "Долазне измене",
+ "translate-smg-notallowed": "Није вам дозвољено да извршите ову радњу.",
+ "translate-smg-nochanges": "Нема промена које треба обрадити.",
+ "translate-smg-submit": "Пошаљи промене на обраду",
+ "translate-smg-submitted": "Дефиниције порука су ажуриране. Промене се обрађују у позадини.",
+ "translate-smg-more": "Биће још промена за обраду након што пошаљете ове.",
+ "translate-smg-left": "Садржај поруке на викију",
+ "translate-smg-right": "Предстојеће промене",
"translate-manage-import-diff": "Порука $1 | Радње: $2",
"translate-manage-import-new": "Нова порука $1",
- "translate-manage-import-deleted": "Обрисана порука $1",
+ "translate-manage-import-deleted": "Избрисана порука $1",
"translate-manage-action-import": "увези",
"translate-manage-action-conflict": "увези и означи као застарело",
"translate-manage-action-ignore": "занемари",
- "translate-manage-action-fuzzy": "увези и означи као застарело",
- "translate-manage-nochanges": "Нема измена у значењу поруке за ову групу.",
- "translate-manage-nochanges-other": "Нема измена на овом језику.\nКористите везу испод да се вратите на страницу за опис групе.",
- "translate-manage-inconsistent": "Пронађена је несагласност у захтеву.\nПроверите измене и покушајте поново.\nДетаљи: $1.",
+ "translate-manage-action-fuzzy": "увези преводе и означи их као застареле",
+ "translate-manage-nochanges": "Нема промена у дефиницијама порука у овој групи.",
+ "translate-manage-nochanges-other": "Нема промена за овај језик.\nКористите доленаведену везу да бисте се вратили на приказ детаља групе.",
+ "translate-manage-inconsistent": "Откривена је недоследност у захтеву.\nПроверите промене и покушајте поново.\nДетаљи: $1.",
"translate-manage-toolong": "Највеће време извршавања од $1 {{PLURAL:$1|секунде|секунде|секунди}} је прекорачено.\nПоново пошаљите образац за наставак.",
- "translate-manage-import-summary": "Увожење новог издања из спољашњег извора",
- "translate-manage-conflict-summary": "Увожење новог издања из спољашњег извора.\nМолимо, проверите.",
- "translate-manage-fuzzy-summary": "Дефиниција поруке се променила",
+ "translate-manage-import-summary": "Увозим нову верзију из спољашњег извора",
+ "translate-manage-conflict-summary": "Увозим нову верзију из спољашњег извора.\nПроверите.",
"translate-manage-submit": "Изврши",
- "translate-manage-intro-other": "Испод је списак измена превода за $1 језик.\nПрегледајте измене и изаберите радњу за сваки превод.\nАко изаберете да занемарите измене, оне ће бити поништене при следећем извозу.",
+ "translate-manage-intro-other": "Испод је списак промена превода за $1 језик.\nПрегледајте промене и одаберите радњу коју желите да предузмете за свако ажурирање.\nАко одаберете да занемарите промене, ова радња ће бити привремена.",
"translate-manage-import-ok": "Увезено: $1.",
- "translate-manage-import-done": "Увоз завршен!",
+ "translate-manage-import-done": "Увоз је завршен.",
"importtranslations": "Увоз превода",
- "translate-import-from-local": "Локална датотека:",
- "translate-import-load": "Додај",
- "translate-import-err-dl-failed": "Добављање датотеке није успело:\n$1",
- "translate-import-err-ul-failed": "Не могу да отпремим датотеку.",
- "translate-import-err-invalid-title": "Унесен назив датотеке <nowiki>$1</nowiki> није исправан.",
- "translate-import-err-no-such-file": "Датотека <nowiki>$1</nowiki> не постоји или није послата са рачунара.",
+ "translate-import-from-local": "Отпремање локалне датотеке:",
+ "translate-import-load": "Учитај датотеку",
+ "translate-import-err-dl-failed": "Није могуће добавити датотеку:\n$1",
+ "translate-import-err-ul-failed": "Отпремање датотеке није успело",
+ "translate-import-err-invalid-title": "Пружено име датотеке <nowiki>$1</nowiki> није важеће.",
+ "translate-import-err-no-such-file": "Датотека <nowiki>$1</nowiki> не постоји или није отпремљена локално.",
"translate-import-err-stale-group": "Група порука којој ова датотека припада не постоји.",
- "translate-import-err-no-headers": "Датотека није добро формирана:\nГрупа и језик нису одређене из заглавља датотеке.",
- "translate-import-err-warnings": "Датотека није добро формирана.\nУверите се да уређивач не уклања msgctxt поља.\nДетаљи: $1",
- "translate-js-summary": "Опис:",
+ "translate-import-err-no-headers": "Датотека није добро формирана Gettext датотека у формату додатка „Превођење”:\nНе могу да одредим групу порука и језик из заглавља датотеке.",
+ "translate-import-err-warnings": "Датотека није добро формирана.\nУверите се да ваш уређивач не уклања поља msgctxt.\nДетаљи: $1",
+ "translate-js-summary": "Резиме:",
"translate-js-save": "Сачувај",
- "translate-js-next": "Сачувај и отвори следеће",
- "translate-js-nonext": "То је била последња порука на овој страници.",
- "translate-js-skip": "Прескочи на следеће",
- "translate-js-save-failed": "Чување није успело. Пријавите ову грешку.",
+ "translate-js-next": "Сачувај и отвори следећу",
+ "translate-js-skip": "Прескочи на следећу",
"translate-js-history": "Историја превода",
"translate-js-support": "Постави питање",
- "translate-js-support-title": "Питајте за помоћ ако нема довољно података за ваљано превођење поруке",
+ "translate-js-support-title": "Затражите помоћ ако немате довољно информација за исправан превод ове поруке.",
"translate-js-support-unsaved-warning": "Имате несачуваних измена.",
"translate-gs-pos": "Положај",
- "translate-gs-code": "Код",
+ "translate-gs-code": "Кôд",
"translate-gs-continent": "Континент",
- "translate-gs-speakers": "Говорника",
+ "translate-gs-speakers": "Говорници",
"translate-gs-score": "Резултат",
"translate-gs-multiple": "Више",
"translate-gs-count": "Број",
"translate-gs-total": "Укупно",
- "translate-gs-avgscore": "Просечан резултат",
- "translate-documentation-language": "Помоћ при превођењу",
+ "translate-gs-avgscore": "Прос. резултат",
+ "translate-documentation-language": "Документација поруке",
"translate-searchprofile": "Преводи",
"translate-searchprofile-tooltip": "Претражите све преводе",
- "translate-search-languagefilter": "Филтрирај по језику:",
+ "translate-searchprofile-note": "Још опција претраге доступно је на [$1 претрази превода].",
+ "translate-search-languagefilter": "Филтрирање по језику:",
"translate-search-nofilter": "Без филтрирања",
- "translate-messagereview-submit": "Означи проверено",
- "translate-messagereview-progress": "Означавање потврђеног…",
- "translate-messagereview-failure": "Неуспешно означавање потврђеног: $1",
- "translate-messagereview-done": "Потврђено",
- "translate-messagereview-reviews": "Потврђено од {{PLURAL:$1|једног корисника|$1 корисника}}",
- "translate-messagereview-reviewswithyou": "Потврда од {{PLURAL:$1|вас|$1 корисника закључно са вама}}",
- "api-error-invalidrevision": "Превод није пронађен",
- "api-error-unknownmessage": "Порука није пронађена",
- "api-error-fuzzymessage": "Превод је означен као застарео",
- "api-error-owntranslation": "Не можете да означите сопствене преводе као потврђене",
- "translate-messagereview-no-fuzzy": "Fuzzy преводи се не могу означити прегледаним",
- "translate-messagereview-no-own": "Не можете да означити сопствене преводе као потврђене.",
- "translate-messagereview-doit": "Означи овај превод као потврђен.",
- "log-name-translationreview": "Дневник провере превода",
- "log-description-translationreview": "Историја свих провера превода и група порука.",
- "logentry-translationreview-message": "$1 је {{GENDER:$2|потврдио|потврдила}} превод $3",
- "logentry-translationreview-group": "$1 {{GENDER:$2|је променио|је променила}} стање $4 превода $3 са $6 на $7",
+ "log-name-translationreview": "Дневник прегледа превода",
+ "log-description-translationreview": "Дневник свих прегледа превода и група порука.",
+ "logentry-translationreview-message": "$1 је {{GENDER:$2|прегледао|прегледала}} превод $3",
+ "logentry-translationreview-group": "$1 је {{GENDER:$2|променио|променила}} стање $4 превода $3 са $6 на $7",
"group-translate-sandboxed": "Неодобрени преводиоци",
- "group-translate-sandboxed-member": "{{GENDER:$1|неодобрени преводилац}}",
- "translate-workflow-state-": "(врати)",
- "translate-workflowstatus": "Статус: $1",
- "translate-workflow-set-do": "Постави",
- "translate-workflow-set-doing": "Постављам…",
- "translate-workflow-set-done": "Постављено",
- "translate-workflow-set-error-alreadyset": "Захтевано стање је истоветно с тренутним.",
- "translate-workflow-autocreated-summary": "Аутоматско стварање странице за радно стање $1",
+ "group-translate-sandboxed-member": "{{GENDER:$1|неодобрени преводилац|неодобрена преводитељка}}",
+ "right-translate-sandboxmanage": "управљање корисницима у песку",
+ "action-translate-sandboxmanage": "управљате корисницима у песку",
+ "right-translate-sandboxaction": "извршавање радњи на белој листи за кориснике у песку",
+ "action-translate-sandboxaction": "извршавате радње на белој листи за кориснике у песку",
+ "translate-workflow-state-": "(непостављен)",
+ "translate-workflowstatus": "Стање: $1",
+ "translate-workflow-set-doing": "Постављање…",
+ "translate-workflow-autocreated-summary": "Аутоматско прављење странице за радно стање $1",
"translate-stats-workflow": "Стање",
"translate-workflowgroup-label": "Радна стања",
- "translate-workflowgroup-desc": "Ова група порука приказује радно стање превода.\nСтања су одређена с променљивом $wgTranslateWorkflowStates.",
- "translate-dynagroup-recent-label": "Скорашњи преводи",
- "translate-dynagroup-recent-desc": "Ова група порука приказује све скорашње преводе на овом језику.\nОво је најкорисније при провери превода.",
- "translate-dynagroup-additions-label": "Скорашња додавања",
- "translate-dynagroup-additions-desc": "Ова група порука приказује нове и измењене поруке.",
- "translate-dynagroup-by": "Превод {{GENDER:$1|је направио|је направила|је направио}} $1",
- "translate-dynagroup-byc": "Превод {{GENDER:$1|је направио|је направила|је направио}} $1 ($2)",
- "translate-dynagroup-last": "Последњу измену {{GENDER:$1|је направио|је направила|је направио}} $1",
- "translate-dynagroup-lastc": "Последњу измену {{GENDER:$1|је направио|је направила|је направио}} $1 ($2)",
- "translate-gethelp": "Помоћ",
+ "translate-workflowgroup-desc": "Ова група порука приказује радно стање превода.\nСтања су дефинисана у конфигурацији променљиве $wgTranslateWorkflowStates.",
+ "translate-dynagroup-recent-label": "Недавни преводи",
+ "translate-dynagroup-recent-desc": "Ова група порука приказује све недавне преводе на овом језику.\nОво је најкорисније за преглед превода.",
+ "translate-dynagroup-additions-label": "Недавна додавања",
+ "translate-dynagroup-additions-desc": "Ова група порука приказује нове и промењене поруке.",
"translate-msggroupselector-projects": "Група порука",
- "translate-msggroupselector-search-placeholder": "Претрага група",
+ "translate-msggroupselector-search-placeholder": "Претражите групе",
"translate-msggroupselector-search-all": "Све",
- "translate-msggroupselector-search-recent": "Скорашњи",
+ "translate-msggroupselector-search-recent": "Недавне",
"translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|подгрупа|подгрупе}}",
"tux-languageselector": "Превод на",
"tux-tab-all": "Све",
"tux-tab-untranslated": "Непреведено",
"tux-tab-outdated": "Застарело",
"tux-tab-translated": "Преведено",
- "tux-tab-unproofread": "Непотврђено",
+ "tux-tab-unproofread": "Непрегледано",
"tux-edit": "Уреди",
- "tux-status-optional": "Необавезно",
+ "tux-status-optional": "Oпционално",
"tux-status-fuzzy": "Застарело",
- "tux-status-proofread": "Потврђено",
+ "tux-status-proofread": "Прегледано",
"tux-status-translated": "Преведено",
- "tux-status-saving": "Чување...",
+ "tux-status-saving": "Чување…",
"tux-status-unsaved": "Несачувано",
+ "tux-save-unknown-error": "Дошло је до непознате грешке.",
"tux-editor-placeholder": "Ваш превод",
- "tux-editor-paste-original-button-label": "Унеси изворни текст",
- "tux-editor-discard-changes-button-label": "Одбаци измене",
+ "tux-editor-editsummary-placeholder": "Опционалан резиме",
+ "tux-editor-paste-original-button-label": "Налепи изворни текст",
+ "tux-editor-discard-changes-button-label": "Одбаци промене",
"tux-editor-save-button-label": "Сачувај превод",
"tux-editor-skip-button-label": "Пређи на следећу",
"tux-editor-cancel-button-label": "Откажи",
"tux-editor-confirm-button-label": "Потврди превод",
- "tux-editor-shortcut-info": "Притисните „$1“ како бисте сачували или „$2“ да пређите на следећу поруку или „$3“ за друге пречице.",
+ "tux-editor-proofread-button-label": "Означи као прегледано",
+ "tux-editor-shortcut-info": "Притисните „$1” да бисте сачували или „$2” да бисте прескочили на следећу поруку, или „$4” да бисте навели резиме или „$3” за друге пречице.",
"tux-editor-edit-desc": "Уреди документацију",
- "tux-editor-add-desc": "Додај документацију",
+ "tux-editor-add-desc": "Додајте документацију",
"tux-editor-suggestions-title": "Предлози",
"tux-editor-in-other-languages": "На другим језицима",
- "tux-editor-need-more-help": "Потребна помоћ?",
- "tux-editor-ask-help": "Потражите додатне информације",
+ "tux-editor-need-more-help": "Треба вам помоћ?",
+ "tux-editor-ask-help": "Затражите више информација",
"tux-editor-tm-match": "$1% поклапања",
"tux-warnings-more": "{{PLURAL:$1|још $1}}",
"tux-warnings-hide": "сакриј",
@@ -332,52 +334,58 @@
"tux-editor-message-desc-more": "Прикажи још",
"tux-editor-message-desc-less": "Прикажи мање",
"tux-editor-clear-translated": "Сакриј преведено",
- "tux-editor-proofreading-mode": "Потврда",
+ "tux-editor-proofreading-mode": "Преглед",
"tux-editor-translate-mode": "Списак",
"tux-editor-proofreading-hide-own-translations": "Сакриј моје преводе",
"tux-editor-proofreading-show-own-translations": "Прикажи моје преводе",
- "tux-proofread-action-tooltip": "Означи као проверено",
+ "tux-proofread-action-tooltip": "Означите као прегледано",
"tux-proofread-edit-label": "Уреди",
"tux-editor-page-mode": "Страница",
- "tux-editor-outdated-warning": "Овај превод је можда потребно ажурирати.",
+ "tux-editor-outdated-warning": "Овај превод можда треба да се ажурира.",
"tux-editor-outdated-warning-diff-link": "Прикажи разлике",
- "tux-editor-doc-editor-placeholder": "Документација о поруци",
+ "tux-editor-doc-editor-placeholder": "Документација поруке",
"tux-editor-doc-editor-save": "Сачувај документацију",
"tux-editor-doc-editor-cancel": "Откажи",
"tux-messagetable-more-messages": "још $1 {{PLURAL:$1|порука}}",
- "tux-messagetable-loading-messages": "Учитавање {{PLURAL:$1|порука}}...",
- "tux-message-filter-placeholder": "Филтрирани списак",
- "tux-message-filter-result": "Нађено $1 {{PLURAL:$1|резултат|резултата}} за „$2“",
+ "tux-messagetable-loading-messages": "Учитавање {{PLURAL:$1|поруке|порука}}…",
+ "tux-message-filter-placeholder": "Филтрирајте списак",
+ "tux-message-filter-result": "{{PLURAL:$1|Пронађен $1 резултат|Пронађена $1 резултата|Пронађено $1 резултата}} за „$2”",
"tux-message-filter-advanced-button": "Напредна претрага",
- "tux-message-filter-optional-messages-label": "Необавезне поруке",
+ "tux-message-filter-optional-messages-label": "Опционалне поруке",
"tux-proofread-translated-by-self": "Ваш превод",
"tux-empty-list-all": "Ова група порука је празна",
- "tux-empty-list-all-guide": "Изаберите другу групу порука за превођење",
+ "tux-empty-list-all-guide": "Изаберите другу групу порука за превод",
"tux-translate-page-no-such-group": "<strong>Назначена група не постоји.</strong> Изаберите другу групу порука.",
"tux-empty-list-translated": "Нема преведених порука",
- "tux-empty-list-translated-guide": "Можете помоћи у превођењу",
+ "tux-empty-list-translated-guide": "Помозите у превођењу",
"tux-empty-list-translated-action": "Преведи",
- "tux-empty-no-messages-to-display": "Нема порука за приказивање.",
- "tux-empty-there-are-optional": "Има необавезних порука које нису приказане на списку",
- "tux-empty-show-optional-messages": "Прикажи необавезне поруке",
+ "tux-empty-no-messages-to-display": "Нема порука за приказ.",
+ "tux-empty-there-are-optional": "Постоје опционалне поруке које нису приказане на списку",
+ "tux-empty-show-optional-messages": "Прикажи опционалне поруке",
"tux-empty-no-outdated-messages": "Нема застарелих порука",
- "tux-empty-nothing-to-proofread": "Ништа за проверу",
- "tux-empty-you-can-help-providing": "Можете да помогнете пружањем нових превода",
- "tux-empty-nothing-new-to-proofread": "Ништа ново за проверу",
- "tux-empty-you-can-review-already-proofread": "Прегледај те преводе већ потврђене од стране других.",
+ "tux-empty-nothing-to-proofread": "Ништа за преглед",
+ "tux-empty-you-can-help-providing": "Помозите пружањем нових превода",
+ "tux-empty-nothing-new-to-proofread": "Ништа ново за преглед",
+ "tux-empty-you-can-review-already-proofread": "Можете да прегледате преводе које су други већ прегледали.",
"tux-empty-list-other": "Ништа за превођење",
- "tux-empty-list-other-guide": "Можете помоћи провером постојећих превода",
- "tux-empty-list-other-action": "Потврђени преводи",
+ "tux-empty-list-other-guide": "Помозите прегледом постојећих превода",
+ "tux-empty-list-other-action": "Прегледај преводе",
"tux-empty-list-other-link": "Прикажи све поруке",
- "tux-editor-close-tooltip": "Затвори",
- "tux-editor-expand-tooltip": "Прошири",
- "tux-editor-collapse-tooltip": "Скупи",
+ "tux-editor-close-tooltip": "Затворите",
+ "tux-editor-expand-tooltip": "Проширите",
+ "tux-editor-collapse-tooltip": "Скупите",
+ "tux-editor-message-tools-show-editor": "Прикажи у вики уређивачу",
"tux-editor-message-tools-history": "Историја",
- "tux-editor-message-tools-delete": "Обриши",
+ "tux-editor-message-tools-delete": "Избриши",
"tux-editor-message-tools-translations": "Сви преводи",
+ "tux-editor-message-tools-linktothis": "Веза ка овој поруци",
"tux-editor-loading": "Учитавање…",
"translate-search-more-languages-info": "још $1 {{PLURAL:$1|језик|језика}}",
- "translate-statsbar-tooltip": "$1% преведено, $2% потврђено",
- "translate-statsbar-tooltip-with-fuzzy": "$1% преведено, $2% потврђено, $3% застарело",
- "translate-search-more-groups-info": "још $1 {{PLURAL:$1|група}}"
+ "translate-statsbar-tooltip": "$1% преведено, $2% прегледано",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% преведено, $2% прегледано, $3% застарело",
+ "translate-search-more-groups-info": "још $1 {{PLURAL:$1|група}}",
+ "translate-ulsdep-title": "Грешка у конфигурацији",
+ "translate-ulsdep-body": "Додатак „Превођење” (Translate) зависи од [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector додатка „Универзалан бирач језика” (Universal Language Selector)].",
+ "tux-session-expired": "Више нисте пријављени. Пријавите се у засебној картици. Друга могућност је да прекопирате несачуване преводе, пријавите се, вратите се на ову страницу и поново унесете своје преводе.",
+ "tux-nojs": "Ова алатка не ради без JavaScript-а. JavaScript је онемогућен, не ради или је овај прегледач неподржан."
}
diff --git a/MLEB/Translate/i18n/core/sr-el.json b/MLEB/Translate/i18n/core/sr-el.json
index 3de3bf07..e7235048 100644
--- a/MLEB/Translate/i18n/core/sr-el.json
+++ b/MLEB/Translate/i18n/core/sr-el.json
@@ -6,316 +6,323 @@
"Rancher",
"Sociologist",
"Жељко Тодоровић",
- "Edinwiki"
+ "Edinwiki",
+ "Srdjan m",
+ "Сербијана",
+ "Obsuser",
+ "Prevodim",
+ "Zoranzoki21"
]
},
- "translate": "Prevod",
- "translate-desc": "[[Special:Translate|Posebna stranica]] za prevođenje Medijavikija",
- "translate-taskui-view": "Prikaži sve poruke",
- "translate-taskui-untranslated": "Prikaži neprevedene poruke",
- "translate-taskui-optional": "Prikaži neobavezne poruke",
- "translate-taskui-acceptqueue": "Samo poruke koje mogu da prihvatim",
- "translate-taskui-reviewall": "Pregledanje prevoda",
+ "translate": "Prevođenje",
+ "translate-extensionname": "Prevedi",
+ "translate-desc": "[[Special:Translate|Posebna stranica]] za prevođenje Medijavikija i više od toga",
+ "translate-fuzzybot-desc": "Ovo je poseban sistemski nalog koji koristi [https://www.mediawiki.org/wiki/Extension:Translate dodatak „Prevođenje” (Translate)] Medijavikija, koji se korsti za održavanje prevoda.\nOvaj nalog je deo softvera Medijaviki i nije u vlasništvu nijednog korisnika.",
"translate-taskui-export-to-file": "Izvezi u matičnom formatu",
- "translate-taskui-export-as-po": "Izvezi za vanmrežno prevođenje",
- "translate-taction-translate": "Prevod",
- "translate-taction-proofread": "Provera",
- "translate-taction-lstats": "Statistika jezika",
- "translate-taction-mstats": "Statistika grupe",
+ "translate-taskui-export-as-po": "Izvezi za oflajn-prevođenje",
+ "translate-taction-translate": "Prevođenje",
+ "translate-taction-proofread": "Pregled",
+ "translate-taction-lstats": "Statistike jezika",
+ "translate-taction-mstats": "Statistike grupe poruka",
"translate-taction-export": "Izvoz",
"translate-taction-disabled": "Radnja je onemogućena na ovom vikiju.",
- "translate-page-no-such-language": "Izabrani jezik nije ispravan.",
- "translate-page-no-such-group": "Izabrana grupa nije ispravna.",
- "translate-page-disabled": "Prevodi na ovom jeziku u ovoj grupi su onemogućeni. Razlog:\n\n<em>$1</em>",
- "translate-language-disabled": "Prevođenje na ovaj jezik je onemogućeno.",
- "translate-page-settings-legend": "Postavke",
- "translate-page-group": "Grupa:",
- "translate-page-language": "Jezik:",
- "translate-page-limit": "Ograničenje:",
+ "translate-page-no-such-language": "Navedeni jezik je nevažeći.",
+ "translate-page-no-such-group": "Navedena grupa je nevažeća.",
+ "translate-page-disabled": "Prevodi na ovom jeziku u ovoj grupi su onemogućeni.\nRazlog:\n\n<em>$1</em>",
+ "translate-language-disabled": "Prevod na ovaj jezik je onemogućen.",
+ "translate-page-settings-legend": "Podešavanja",
+ "translate-page-group": "Grupa",
+ "translate-page-language": "Jezik",
+ "translate-page-limit": "Ograničenje",
"translate-page-limit-option": "$1 {{PLURAL:$1|poruka|poruke|poruka}} po stranici",
"translate-submit": "Dobavi",
"translate-page-navigation-legend": "Navigacija",
"translate-page-showing": "Prikaz poruka od $1 do $2, od $3.",
- "translate-page-showing-all": "Prikaz $1 {{PLURAL:$1|poruke|poruka}}.",
- "translate-page-showing-none": "Nema poruka.",
+ "translate-page-showing-all": "Prikaz $1 {{PLURAL:$1|poruke|poruke|poruka}}.",
+ "translate-page-showing-none": "Nema poruka za prikaz.",
"translate-page-paging-links": "[ $1 ] [ $2 ]",
"translate-next": "Sledeća stranica",
"translate-prev": "Prethodna stranica",
- "translate-page-description-legend": "Podaci o grupi",
- "translate-page-description-hasoptional": "Ova grupa sadrži neobavezne poruke. Njih prevodite samo kada vaš jezik ima posebne potrebe kao preslovljavanje imena ili neupotreba razmaka. $1",
- "translate-page-description-hasoptional-open": "Prikaži neobavezne poruke.",
+ "translate-page-description-legend": "Informacije o ovoj grupi",
+ "translate-page-description-hasoptional": "Ova grupa poruka sadrži opcionalne poruke.\nNjih treba prevoditi samo kada vaš jezik ima posebne potrebe,\nkao što su neupotreba razmaka ili preslovljavanje imena. $1",
+ "translate-page-description-hasoptional-open": "Prikaži opcionalne poruke.",
"translate-page-edit": "uredi",
- "translate-ext-url": "<hr />Adresa: $1",
- "translate-optional": "(neobavezno)",
+ "translate-optional": "(opcionalno)",
"translate-ignored": "(zanemareno)",
- "translate-edit-title": "Uređivanje „$1“",
- "translate-edit-definition": "Značenje poruke",
+ "translate-edit-title": "Uređivanje stranice „$1“",
+ "translate-edit-definition": "Definicija poruke",
"translate-edit-translation": "Prevod",
"translate-edit-contribute": "doprinesi",
- "translate-edit-no-information": "<em>Ova poruka nema prateću dokumentaciju. Ako znate gde se i kako koristi, pomozite drugim prevodiocima dodavanjem njenog opisa.</em>",
- "translate-edit-information": "Podaci o poruci ($1)",
+ "translate-edit-no-information": "<em>Ova poruka nema dokumentaciju.\nAko znate gde ili kako se koristi, pomozite drugim prevodiocima tako što ćete je napisati.</em>",
+ "translate-edit-information": "Informacije o poruci ($1)",
"translate-edit-in-other-languages": "Poruka na drugim jezicima",
- "translate-edit-committed": "Tekući prevod u softveru",
- "translate-edit-warnings": "Napomene o nepotpunim prevodima",
- "translate-edit-tmsugs": "Predlozi iz prevodilačke memorije",
+ "translate-edit-warnings": "Upozorenja o nepotpunim prevodima",
"translate-edit-tmmatch-source": "Tekst izvornog prevoda: $1",
"translate-edit-tmmatch": "$1% poklapanja",
- "translate-use-suggestion": "Zameni tekući prevod s ovim predlogom.",
- "translate-edit-nopermission": "Treba vam dozvola da prevodite poruke.",
- "translate-edit-askpermission": "Zatraži dozvolu",
+ "translate-use-suggestion": "Zamenite aktuelan prevod ovim predlogom.",
+ "translate-edit-nopermission": "Trebaju vam prevodilačka prava da biste prevodili poruke.",
+ "translate-edit-askpermission": "Nabavi dozvolu",
+ "exporttranslations": "Izvoz prevoda",
+ "translate-export-form-format": "Format",
+ "translate-export-invalid-format": "Navedite važeći format.",
+ "translate-export-not-supported": "Izvoz prevoda nije podržan.",
+ "translate-export-format-notsupported": "Grupa poruka ne podržava navedeni format izvoza.",
"translate-magic-pagename": "Prošireni prevod Medijavikija",
- "translate-magic-help": "Možete prevesti kodove za posebne stranice, magične reči i imenske prostore.\n\nKodovi za posebne stranice i magične reči mogu imati više prevoda.\nPrevodi su odvojeni zarezom.\nImenski prostori mogu imati samo jedan prevod.\n\nPrevođenje imenskih prostora za <code>$1 razgovor</code> može biti komplikovano.\n<code>$1</code> je zamenjen s nazivom sajta (npr. <code>{{ns:project_talk}}</code>).\nAko na vašem jeziku nije moguće formirati ispravan izraz bez menjanja naziv sajta, molimo obavestite nas na [[Support]].\n\nMorate biti prevodilac da biste sačuvali izmene.\nTo ćete uraditi klikom na dugme „Sačuvaj“ koje se nalazi ispod.",
+ "translate-magic-help": "Možete prevesti kodove za posebne stranice, magične reči i imenske prostore.\n\nKodovi za posebne stranice i magične reči mogu imati više prevoda.\nPrevodi su odvojeni zarezom.\nImenski prostori mogu imati samo jedan prevod.\n\nPrevođenje imenskih prostora za <code>$1 razgovor</code> može biti komplikovano.\n<code>$1</code> je zamenjen s nazivom sajta (npr. <code>{{ns:project_talk}}</code>).\nAko na vašem jeziku nije moguće formirati važeći izraz bez menjanja naziv sajta, molimo obavestite nas na [[Support]].\n\nMorate biti prevodilac da biste sačuvali izmene.\nTo ćete uraditi klikom na dugme „Sačuvaj“ koje se nalazi ispod.",
"translate-magic-module": "Modul:",
"translate-magic-submit": "Dobavi",
"translate-magic-cm-export": "Izvezi",
"translate-magic-nothing-to-export": "Nema ništa za izvoz.",
"translate-magic-cm-to-be": "Buduće",
- "translate-magic-cm-current": "Tekuće",
- "translate-magic-cm-original": "Izvorno",
+ "translate-magic-cm-current": "Aktuelno",
+ "translate-magic-cm-original": "Prvobitno",
"translate-magic-cm-comment": "Komentar:",
"translate-magic-cm-save": "Sačuvaj",
"translate-magic-cm-updatedusing": "Ažurirano koristeći ''[[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]''",
- "translate-magic-cm-savefailed": "Izmene nisu sačuvane.",
- "translate-magic-special": "kodovi za posebne stranice",
+ "translate-magic-cm-savefailed": "Čuvanje nije uspelo",
+ "translate-magic-special": "pseudonimi posebnih stranica",
"translate-magic-words": "magične reči",
- "translate-magic-namespace": "nazivi imenskih prostora",
- "translate-magic-notsaved": "Vaša izmena nije sačuvana!",
+ "translate-magic-namespace": "imena imenskih prostora",
+ "translate-magic-notsaved": "Vaša izmena nije sačuvana.",
"translate-magic-errors": "Ispravite {{PLURAL:$1|sledeću grešku|sledeće greške}} u prevodima:",
"translate-magic-saved": "Vaše izmene su sačuvane.",
"translate-checks-parameters": "Sledeći {{PLURAL:$2|parametar se ne koristi|parametri se ne koriste}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-parameters-unknown": "Sledeći {{PLURAL:$2|parametar je nepoznat|parametri su nepoznati}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-balance": "Prisutan je neparan broj {{PLURAL:$2|zagrada}}:\n<strong><nowiki>$1</nowiki></strong>",
- "translate-checks-links": "{{PLURAL:$2|Sledeća veza je problematična|Sledeće $2 veze su problematične|Sledećih $2 veza je problematično}}:\n<strong><nowiki>$1</nowiki></strong>",
- "translate-checks-links-missing": "{{PLURAL:$2|Sledeća veza nedostaje|Sledeće $2 veze nedostaju|Sledećih $2 veza nedostaju}}:\n<strong><nowiki>$1</nowiki></strong>",
- "translate-checks-xhtml": "Zamenite {{PLURAL:$2|sledeću oznaku|sledeće oznake}} s ispravnim:\n<strong><nowiki>$1</nowiki></strong>",
- "translate-checks-plural": "Značenje koristi <nowiki>{{PLURAL:}}</nowiki>, a prevod ne.",
+ "translate-checks-links": "{{PLURAL:$2|Sledeći link je problematičan|Sledeća $2 linkova su problematična|Sledećih $2 linkova je problematično}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "{{PLURAL:$2|Sledeći link nedostaje|Sledeća $2 linkova nedostaju|Sledećih $2 linkova nedostaju}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Zamenite {{PLURAL:$2|sledeću oznaku ispravnom|sledeće oznake ispravnim}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "Definicija koristi <nowiki>{{PLURAL:}}</nowiki>, a prevod ne.",
"translate-checks-plural-forms": "<nowiki>{{PLURAL:}}</nowiki> je data {{PLURAL:$1|jedan oblik|$1 oblika}} ali {{PLURAL:$2|samo jedan oblik je|$2 oblika je}} podržano (izuzimajući oblike 0= i 1=).",
- "translate-checks-pagename": "Imenski prostor je promenjen iz značenja",
- "translate-checks-format": "Ovaj prevod nema značenjsku formu ili ima neispravnu sintaksu: $1",
+ "translate-checks-plural-dupe": "<nowiki>{{PLURAL:}}</nowiki> sadrži dupliranu formu. Formu <nowiki>{{PLURAL:$1|vrata|vrata}}</nowiki> bi trebalo pisati kao <nowiki>{{PLURAL:$1|vrata}}</nowiki>.",
+ "translate-checks-pagename": "Imenski prostor je promenjen u odnosu na definiciju",
+ "translate-checks-format": "Ovaj prevod ne prati definiciju ili ima nevažeću sintaksu: $1",
"translate-checks-escape": "Sledeći izlazi mogu biti slučajni: <strong>$1</strong>",
"translate-checks-parametersnotequal": "Broj korišćenih parametara je {{PLURAL:$1|$1}}; trebalo bi da je {{PLURAL:$2|$2}}.",
"translate-checks-malformed": "<nowiki>$1</nowiki> ima pogrešan format.",
"translate-checks-fudforum-syntax": "Koristi <nowiki>$1</nowiki> umesto <nowiki>$2</nowiki> u ovom projektu.",
- "translate-pref-nonewsletter": "Ne šalji mi biltene preko e-pošte",
+ "translate-pref-nonewsletter": "Ne šalji mi biltene putem imejla",
"translate-pref-editassistlang": "Pomoćni jezici:",
- "prefs-translate": "Mogućnosti prevoda",
- "translate-pref-editassistlang-help": "Spisak jezičkih kodova koji su odvojeni zarezom.\nPrevod poruke u ovim jezicima prikazan je u toku prevođenja.\nPodrazumevani spisak jezika zavisi od vašeg jezika.",
- "translate-pref-editassistlang-bad": "Neispravan jezički kod na spisku:\n<nowiki>$1</nowiki>.",
- "right-translate": "uređivanje putem prevodilačkog sučelja",
+ "prefs-translate": "Opcije prevoda",
+ "translate-pref-editassistlang-help": "Lista kodova jezika razdvojenih zarezom.\nPrevod poruke na ovim jezicima prikazuje se dok prevodite.\nPodrazumevana lista jezika zavisi od vašeg jezika.",
+ "translate-pref-editassistlang-bad": "Nevažeći kôd jezika na listi:\n<nowiki>$1</nowiki>.",
+ "right-translate": "uređivanje korišćenjem prevodilačkog interfejsa",
"right-translate-manage": "upravljanje grupama poruka",
- "action-translate-manage": "upravljanje grupama poruka",
- "right-translate-import": "uvoženje vanmrežnih prevoda",
- "action-translate-import": "uvoz prevoda",
+ "action-translate-manage": "upravljate grupama poruka",
+ "right-translate-import": "uvoženje oflajn-prevoda",
+ "action-translate-import": "uvozite oflajn-prevode",
"right-translate-messagereview": "pregledanje prevoda",
+ "action-translate-messagereview": "pregledavate prevode",
"right-translate-groupreview": "menjanje stanja radnog toka za grupe poruka",
- "translate-rc-translation-filter": "Filtriranje prevoda:",
+ "action-translate-groupreview": "promenite stanje toka rada za grupe poruka",
+ "translate-rcfilters-translations": "Prevodi",
+ "translate-rcfilters-translations-only-label": "Prevodi",
+ "translate-rcfilters-translations-only-desc": "Promene prevedenih stranica",
+ "translate-rcfilters-translations-filter-label": "Nisu prevodi",
+ "translate-rcfilters-translations-filter-desc": "Sve promene koje nisu prevodi.",
+ "translate-rcfilters-translations-site-label": "Poruke sajta",
+ "translate-rcfilters-translations-site-desc": "Prilagođavanje poruka sajta u imenskom prostoru Medijaviki.",
+ "translate-rc-translation-filter": "Filtriraj prevode:",
"translate-rc-translation-filter-no": "ne radi ništa",
"translate-rc-translation-filter-only": "prikaži samo prevode",
"translate-rc-translation-filter-filter": "izbaci prevode",
- "translate-rc-translation-filter-site": "samo izmene poruka sajta",
- "translationstats": "Statistika prevođenja",
+ "translate-rc-translation-filter-site": "samo promene poruka sajta",
+ "translationstats": "Statistike prevoda",
"translate-stats-edits": "Izmene",
"translate-stats-users": "Prevodioci",
- "translate-stats-registrations": "Učlanjenja",
- "translate-statsf-intro": "Ovom formom možete napraviti jednostavne statistike.\nSve vrednosti imaju svoja gornja i donja ograničenja.",
- "translate-statsf-options": "Postavke grafikona",
+ "translate-stats-registrations": "Registracije",
+ "translate-stats-reviews": "Pregledi",
+ "translate-stats-reviewers": "Pregledavači",
+ "translate-statsf-intro": "Generišete jednostavnu statistiku uz pomoć ovog obrasca.\nSve vrednosti imaju donja i gornja ograničenja.",
+ "translate-statsf-options": "Opcije grafikona",
"translate-statsf-width": "Širina u pikselima:",
"translate-statsf-height": "Visina u pikselima:",
"translate-statsf-days": "Vremenski period u danima:",
- "translate-statsf-start": "Početni datum:",
- "translate-statsf-scale": "Granularitet:",
+ "translate-statsf-start": "Datum početka:",
+ "translate-statsf-scale": "Granularnost:",
"translate-statsf-scale-months": "meseci",
"translate-statsf-scale-weeks": "nedelje",
"translate-statsf-scale-days": "dani",
"translate-statsf-scale-hours": "sati",
- "translate-statsf-count": "Mera:",
+ "translate-statsf-count": "Merenje:",
"translate-statsf-count-edits": "Broj izmena",
"translate-statsf-count-users": "Aktivni prevodioci",
"translate-statsf-count-registrations": "Novi korisnici",
- "translate-statsf-language": "Spisak jezičkih kodova odvojenih zarezom:",
- "translate-statsf-group": "Spisak grupnih kodova odvojenih zarezom:",
+ "translate-statsf-count-reviews": "Pregledi prevoda",
+ "translate-statsf-count-reviewers": "Pregledavači",
+ "translate-statsf-language": "Lista kodova jezika razdvojenih zarezom:",
+ "translate-statsf-group": "Lista kodova grupa razdvojenih zarezom:",
"translate-statsf-submit": "Pregledaj",
- "translate-tag-category": "Prevodive stranice",
- "translate-tag-page-desc": "Prevod viki stranice [[$2|$1]].",
+ "translate-tag-page-desc": "Prevod viki stranice [[$2|$1]] sa $3 ($4).",
"translate-sidebar-alltrans": "Na drugim jezicima",
"translations": "Svi prevodi",
- "translations-summary": "Unesite naziv poruke ispod da biste prikazali sve dostupne prevode.",
- "translate-translations-no-message": "Poruka „$1“ se ne može prevesti.",
- "translate-translations-none": "Nema prevoda za „$1“.",
+ "translations-summary": "Unesite ime poruke ispod da biste prikazali sve dostupne prevode.",
+ "translate-translations-no-message": "Poruka „$1” nije prevodiva.",
+ "translate-translations-none": "Ne postoje prevodi za „$1”.",
"translate-translations-count": "{{PLURAL:$1|Pronađen je jedan prevod|Pronađena su $1 prevoda|Pronađeno je $1 prevoda}}.",
"translate-translations-fieldset-title": "Poruka",
- "translate-translations-messagename": "Naziv:",
+ "translate-translations-messagename": "Ime:",
"translate-translations-project": "Projekat:",
- "translate-translations-including-no-param": "Unesite ispravan ključ poruke u parametru podstranice",
+ "translate-translations-including-no-param": "Navedite važeći ključ poruke u parametru podstranice",
"translate-translations-history-short": "i",
- "languagestats": "Statistika jezika",
- "languagestats-summary": "Ova stranica prikazuje statistiku prevoda za sve grupe poruka nekog jezika.",
- "languagestats-stats-for": "Statistika prevoda za {{LCFIRST:$1}} ($2).",
- "languagestats-recenttranslations": "skorašnji prevodi",
- "translate-langstats-incomplete": "Neke statistike navedene na stranici su nepotpune. Ponovo učitajte stranicu da dobijete potpuni pregled.",
- "translate-langstats-expand": "prikaži",
- "translate-langstats-collapse": "sakrij",
- "translate-langstats-expandall": "prikaži sve",
- "translate-langstats-collapseall": "sakrij sve",
- "translate-language-code": "Jezični kod",
- "translate-language-code-field-name": "Jezični kod:",
- "translate-suppress-complete": "Ne prikazuj potpuno prevedene grupe poruka",
- "translate-ls-noempty": "Ne prikazuj potpuno neprevedene grupe poruka",
+ "languagestats": "Statistike jezika",
+ "languagestats-summary": "Ova stranica prikazuje statistiku prevoda za sve grupe poruka na nekom jeziku.",
+ "messagegroupstats-summary": "Ova stranica prikazuje statistike o grupi poruka.",
+ "languagestats-stats-for": "Statistike prevoda za {{LCFIRST:$1}} ($2).",
+ "languagestats-recenttranslations": "nedavni prevodi",
+ "translate-langstats-incomplete": "Neke statistike navedene na stranici su nepotpune. Ponovo učitajte stranicu da bite dobili još statistika.",
+ "translate-langstats-expand": "proširi",
+ "translate-langstats-collapse": "skupi",
+ "translate-langstats-expandall": "proširi sve",
+ "translate-langstats-collapseall": "skupi sve",
+ "translate-language-code": "Kôd jezika",
+ "translate-language-code-field-name": "Kôd jezika",
+ "translate-suppress-complete": "Sakrij potpuno prevedene grupe poruka",
+ "translate-ls-noempty": "Sakrij potpuno prevedene grupe poruka",
"translate-language": "Jezik",
- "translate-total": "Poruka",
+ "translate-total": "Poruke",
"translate-untranslated": "Neprevedeno",
- "translate-percentage-complete": "Dovršeno",
+ "translate-percentage-complete": "Završeno",
"translate-percentage-fuzzy": "Zastarelo",
"translate-languagestats-overall": "Sve grupe poruka zajedno",
- "translate-ls-submit": "Prikaži statistiku",
+ "translate-ls-submit": "Prikaži statistike",
"translate-ls-column-group": "Grupa poruka",
- "translate-mgs-pagename": "Statistike grupe",
+ "translate-mgs-pagename": "Statistike o grupi poruka",
"translate-mgs-fieldset": "Podešavanje prikaza",
"translate-mgs-group": "Grupa poruka:",
- "translate-mgs-nocomplete": "Ne prikazuj jezike s potpunim prevodom",
- "translate-mgs-noempty": "Ne prikazuj jezike bez ikakvih prevoda",
- "translate-mgs-submit": "Prikaži statistiku",
+ "translate-mgs-nocomplete": "Ne prikazuj jezike sa potpunim prevodom",
+ "translate-mgs-noempty": "Ne prikazuj jezike koji nemaju nikakve prevode",
+ "translate-mgs-submit": "Prikaži statistike",
"translate-mgs-column-language": "Jezik",
- "translate-mgs-totals": "Svi jezici zajedno",
- "translate-mgs-invalid-group": "Navedena grupa $1 ne postoji.",
- "translate-mgs-nothing": "Nema šta da se prikaže za zahtevane statistike.",
+ "translate-mgs-totals": "Svih $1 {{PLURAL:$1|jezik|jezika}} zajedno",
+ "translate-mgs-invalid-group": "Navedena grupa „$1” ne postoji.",
+ "translate-mgs-nothing": "Nema ničega da se prikaže za zahtevane statistike.",
"supportedlanguages": "Podržani jezici",
- "supportedlanguages-summary": "Ova stranica prikazuje spisak svih podržanih jezika na ovom vikiju, zajedno s imenima prevodioca koji rade na tim jezicima.\nVeličina imena, tj. slova prevodioca zavisi od toga koliko je poruka preveo.\nBoja linije s kojom je ime podvučeno prikazuje koliko je prevodilac aktivan.",
- "supportedlanguages-colorlegend": "Legenda za boju; poslednji prevod izvršen pre $1 dana.",
+ "supportedlanguages-summary": "Ova stranica prikazuje listu svih jezika koje podržava {{SITENAME}},\nzajedno sa imenima prevodilaca koji rade na odabranom jeziku.\nIme prevodioca je veće što je sa više prevoda doprineo.\nBoja linije podvlačenja indicira koliko skoro je prevodilac ovde bio aktivan.",
+ "supportedlanguages-colorlegend": "Legenda za boju: poslednji prevod izvršen pre $1 dana.",
"supportedlanguages-portallink": "[$1] $2 – $3",
"supportedlanguages-portallink-nocldr": "[$1] $2",
- "supportedlanguages-translators": "{{PLURAL:$2|Prevodilac|Prevodioci}}: $1",
- "supportedlanguages-recenttranslations": "skorašnji prevodi",
- "supportedlanguages-count": "Ukupno $1 {{PLURAL:$1|jezik|jezika|jezika}}.",
+ "supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|Prevodilac|Prevoditeljka}}|Prevodioci}}: $1",
+ "supportedlanguages-recenttranslations": "nedavni prevodi",
+ "supportedlanguages-count": "Ukupno $1 {{PLURAL:$1|jezik|jezika}}.",
"supportedlanguages-activity": "$1: $2 {{PLURAL:$2|izmena|izmene|izmena}} – poslednja izmena pre $3 {{PLURAL:$3|dan|dana|dana}}",
+ "abusefilter-edit-builder-vars-translate-source-text": "Izvorni tekst prevodilačke jedinice",
"translate-save": "Sačuvaj ($1)",
- "translate-jssti-add": "Dodaj na spisak",
+ "translate-jssti-add": "Dodaj na listu",
"managemessagegroups": "Upravljanje grupama poruka",
- "translate-smg-notallowed": "Nemate dozvolu da izvršite ovu radnju.",
- "translate-smg-nochanges": "Nema izmena koje treba obraditi.",
- "translate-smg-submitted": "Definicija poruke je ažurirana. Izmene se vrše u pozadini.",
+ "translate-smg-notallowed": "Nije vam dozvoljeno da izvršite ovu radnju.",
+ "translate-smg-nochanges": "Nema promena koje treba obraditi.",
+ "translate-smg-submit": "Pošalji promene na obradu",
+ "translate-smg-submitted": "Definicije poruka su ažurirane. Promene se obrađuju u pozadini.",
+ "translate-smg-more": "Biće još promena za obradu nakon što pošaljete ove.",
+ "translate-smg-left": "Sadržaj poruke na vikiju",
+ "translate-smg-right": "Predstojeće promene",
"translate-manage-import-diff": "Poruka $1 | Radnje: $2",
"translate-manage-import-new": "Nova poruka $1",
- "translate-manage-import-deleted": "Obrisana poruka $1",
+ "translate-manage-import-deleted": "Izbrisana poruka $1",
"translate-manage-action-import": "uvezi",
"translate-manage-action-conflict": "uvezi i označi kao zastarelo",
"translate-manage-action-ignore": "zanemari",
- "translate-manage-action-fuzzy": "uvezi i označi kao zastarelo",
- "translate-manage-nochanges": "Nema izmena u značenju poruke za ovu grupu.",
- "translate-manage-nochanges-other": "Nema izmena na ovom jeziku.\nKoristite vezu ispod da se vratite na stranicu za opis grupe.",
- "translate-manage-inconsistent": "Pronađena je nesaglasnost u zahtevu.\nProverite izmene i pokušajte ponovo.\nDetalji: $1.",
+ "translate-manage-action-fuzzy": "uvezi prevode i označi ih kao zastarele",
+ "translate-manage-nochanges": "Nema promena u definicijama poruka u ovoj grupi.",
+ "translate-manage-nochanges-other": "Nema promena na ovom jeziku.\nKoristite link ispod da biste se vratili na prikaz detalja grupe.",
+ "translate-manage-inconsistent": "Otkrivena je nedoslednost u zahtevu.\nProverite promene i pokušajte ponovo.\nDetalji: $1.",
"translate-manage-toolong": "Najveće vreme izvršavanja od $1 {{PLURAL:$1|sekunde|sekunde|sekundi}} je prekoračeno.\nPonovo pošaljite obrazac za nastavak.",
- "translate-manage-import-summary": "Uvoženje novog izdanja iz spoljašnjeg izvora",
- "translate-manage-conflict-summary": "Uvoženje novog izdanja iz spoljašnjeg izvora.\nMolimo, proverite.",
- "translate-manage-fuzzy-summary": "Definicija poruke se promenila",
+ "translate-manage-import-summary": "Uvozim novu verziju iz spoljašnjeg izvora",
+ "translate-manage-conflict-summary": "Uvozim novu verziju iz spoljašnjeg izvora.\nProverite.",
"translate-manage-submit": "Izvrši",
- "translate-manage-intro-other": "Ispod je spisak izmena prevoda za $1 jezik.\nPregledajte izmene i izaberite radnju za svaki prevod.\nAko izaberete da zanemarite izmene, one će biti poništene pri sledećem izvozu.",
+ "translate-manage-intro-other": "Ispod je lista izmena prevoda za $1 jezik.\nPregledajte izmene i izaberite radnju za svako ažuriranje.\nAko izaberete da zanemarite izmene, ova radnja će biti privremena.",
"translate-manage-import-ok": "Uvezeno: $1.",
- "translate-manage-import-done": "Uvoz završen!",
+ "translate-manage-import-done": "Uvoz je završen.",
"importtranslations": "Uvoz prevoda",
- "translate-import-from-local": "Lokalna datoteka:",
- "translate-import-load": "Dodaj",
- "translate-import-err-dl-failed": "Dobavljanje datoteke nije uspelo:\n$1",
- "translate-import-err-ul-failed": "Slanje datoteke nije uspelo.",
- "translate-import-err-invalid-title": "Unesen naziv datoteke <nowiki>$1</nowiki> nije ispravan.",
- "translate-import-err-no-such-file": "Datoteka <nowiki>$1</nowiki> ne postoji ili nije poslata sa računara.",
+ "translate-import-from-local": "Otpremanje lokalne datoteke:",
+ "translate-import-load": "Učitaj datoteku",
+ "translate-import-err-dl-failed": "Ne mogu da dobavim datoteku:\n$1",
+ "translate-import-err-ul-failed": "Otpremanje datoteke nije uspelo",
+ "translate-import-err-invalid-title": "Pruženo ime datoteke <nowiki>$1</nowiki> nije važeće.",
+ "translate-import-err-no-such-file": "Datoteka <nowiki>$1</nowiki> ne postoji ili nije otpremljena lokalno.",
"translate-import-err-stale-group": "Grupa poruka kojoj ova datoteka pripada ne postoji.",
- "translate-import-err-no-headers": "Datoteka nije dobro formirana:\nGrupa i jezik nisu određene iz zaglavlja datoteke.",
- "translate-import-err-warnings": "Datoteka nije dobro formirana.\nUverite se da uređivač ne uklanja msgctxt polja.\nDetalji: $1",
- "translate-js-summary": "Opis:",
+ "translate-import-err-no-headers": "Datoteka nije dobro formirana Gettext datoteka u formatu dodatka „Prevođenje” (Translate):\nNe mogu da odredim grupu poruka i jezik iz zaglavlja datoteke.",
+ "translate-import-err-warnings": "Datoteka nije dobro formirana.\nUverite se da vaš uređivač ne uklanja polja msgctxt.\nDetalji: $1",
+ "translate-js-summary": "Rezime:",
"translate-js-save": "Sačuvaj",
- "translate-js-next": "Sačuvaj i otvori sledeće",
- "translate-js-nonext": "To je bila poslednja poruka na ovoj stranici.",
- "translate-js-skip": "Preskoči na sledeće",
- "translate-js-save-failed": "Čuvanje nije uspelo. Prijavite ovu grešku.",
+ "translate-js-next": "Sačuvaj i otvori sledeću",
+ "translate-js-skip": "Preskoči na sledeću",
"translate-js-history": "Istorija prevoda",
"translate-js-support": "Postavi pitanje",
- "translate-js-support-title": "Pitajte za pomoć ako nema dovoljno podataka za valjano prevođenje poruke",
+ "translate-js-support-title": "Zatražite pomoć ako nemate dovoljno informacija za ispravan prevod ove poruke.",
"translate-js-support-unsaved-warning": "Imate nesačuvanih izmena.",
"translate-gs-pos": "Položaj",
- "translate-gs-code": "Kod",
+ "translate-gs-code": "Kôd",
"translate-gs-continent": "Kontinent",
- "translate-gs-speakers": "Govornika",
+ "translate-gs-speakers": "Govornici",
"translate-gs-score": "Rezultat",
"translate-gs-multiple": "Više",
"translate-gs-count": "Broj",
"translate-gs-total": "Ukupno",
- "translate-gs-avgscore": "Prosečan rezultat",
- "translate-documentation-language": "Pomoć pri prevođenju",
+ "translate-gs-avgscore": "Pros. rezultat",
+ "translate-documentation-language": "Dokumentacija poruke",
"translate-searchprofile": "Prevodi",
- "translate-searchprofile-tooltip": "Traženje po svim prevodima",
- "translate-search-languagefilter": "Filtriraj po jeziku:",
+ "translate-searchprofile-tooltip": "Pretražite sve prevode",
+ "translate-searchprofile-note": "Još opcija pretrage dostupno je na [$1 pretrazi prevoda].",
+ "translate-search-languagefilter": "Filtriranje po jeziku:",
"translate-search-nofilter": "Bez filtriranja",
- "translate-messagereview-submit": "Označi provereno",
- "translate-messagereview-progress": "Označavanje potvrđenog…",
- "translate-messagereview-failure": "Neuspešno označavanje potvrđenog: $1",
- "translate-messagereview-done": "Potvrđeno",
- "translate-messagereview-reviews": "Potvrđeno od {{PLURAL:$1|jednog korisnika|$1 korisnika}}",
- "translate-messagereview-reviewswithyou": "Potvrda od {{PLURAL:$1|vas|$1 korisnika zaključno sa vama}}",
- "api-error-invalidrevision": "Prevod nije pronađen",
- "api-error-unknownmessage": "Poruka nije pronađena",
- "api-error-fuzzymessage": "Prevod je označen kao zastareo",
- "api-error-owntranslation": "Ne možete da prihvatate sopstvene prevode",
- "translate-messagereview-no-fuzzy": "Fuzzy prevodi se ne mogu označiti pregledanim",
- "translate-messagereview-no-own": "Ne možete da prihvatate sopstvene prevode.",
- "translate-messagereview-doit": "Prihvati ovaj prevod kao tačan i ispravan.",
- "log-name-translationreview": "Dnevnik provere prevoda",
- "log-description-translationreview": "Istorija svih provera prevoda i grupa poruka.",
- "logentry-translationreview-message": "$1 je {{GENDER:$2|potvrdio|potvrdila}} prevod $3",
- "logentry-translationreview-group": "$1 {{GENDER:$2|je promenio|je promenila}} stanje $4 prevoda $3 sa $6 na $7",
+ "log-name-translationreview": "Dnevnik pregleda prevoda",
+ "log-description-translationreview": "Dnevnik svih pregleda prevoda i grupa poruka.",
+ "logentry-translationreview-message": "$1 je {{GENDER:$2|pregledao|pregledala}} prevod $3",
+ "logentry-translationreview-group": "$1 je {{GENDER:$2|promenio|promenila}} stanje $4 prevoda $3 sa $6 na $7",
"group-translate-sandboxed": "Neodobreni prevodioci",
- "group-translate-sandboxed-member": "{{GENDER:$1|neodobreni prevodilac}}",
- "translate-workflow-state-": "(vrati)",
- "translate-workflowstatus": "Status: $1",
- "translate-workflow-set-do": "Postavi",
+ "group-translate-sandboxed-member": "{{GENDER:$1|neodobreni prevodilac|neodobrena prevoditeljka}}",
+ "right-translate-sandboxmanage": "upravljanje korisnicima u pesku",
+ "action-translate-sandboxmanage": "upravljate korisnicima u pesku",
+ "right-translate-sandboxaction": "izvršavanje radnji na beloj listi za korisnike u pesku",
+ "action-translate-sandboxaction": "izvršavate radnje na beloj listi za korisnike u pesku",
+ "translate-workflow-state-": "(nepostavljen)",
+ "translate-workflowstatus": "Stanje: $1",
"translate-workflow-set-doing": "Postavljam…",
- "translate-workflow-set-done": "Postavljeno",
- "translate-workflow-set-error-alreadyset": "Zahtevano stanje je istovetno s trenutnim.",
- "translate-workflow-autocreated-summary": "Automatsko stvaranje stranice za radno stanje $1",
- "translate-stats-workflow": "Status",
+ "translate-workflow-autocreated-summary": "Automatsko pravljenje stranice za radno stanje $1",
+ "translate-stats-workflow": "Stanje",
"translate-workflowgroup-label": "Radna stanja",
- "translate-workflowgroup-desc": "Ova grupa poruka prikazuje radno stanje prevoda.\nStanja su određena s promenljivom $wgTranslateWorkflowStates.",
- "translate-dynagroup-recent-label": "Skorašnji prevodi",
- "translate-dynagroup-recent-desc": "Ova grupa poruka prikazuje sve skorašnje prevode na ovom jeziku.\nOvo je najkorisnije pri proveri prevoda.",
- "translate-dynagroup-additions-label": "Skorašnja dodavanja",
- "translate-dynagroup-additions-desc": "Ova grupa poruka prikazuje nove i izmenjene poruke.",
- "translate-dynagroup-by": "Prevod {{GENDER:$1|je napravio|je napravila|je napravio}} $1",
- "translate-dynagroup-byc": "Prevod {{GENDER:$1|je napravio|je napravila|je napravio}} $1 ($2)",
- "translate-dynagroup-last": "Poslednju izmenu {{GENDER:$1|je napravio|je napravila|je napravio}} $1",
- "translate-dynagroup-lastc": "Poslednju izmenu {{GENDER:$1|je napravio|je napravila|je napravio}} $1 ($2)",
- "translate-gethelp": "Pomoć",
+ "translate-workflowgroup-desc": "Ova grupa poruka prikazuje radno stanje prevoda.\nStanja su definisana u konfiguraciji promenljive $wgTranslateWorkflowStates.",
+ "translate-dynagroup-recent-label": "Nedavni prevodi",
+ "translate-dynagroup-recent-desc": "Ova grupa poruka prikazuje sve nedavne prevode na ovom jeziku.\nOvo je najkorisnije za pregled prevoda.",
+ "translate-dynagroup-additions-label": "Nedavna dodavanja",
+ "translate-dynagroup-additions-desc": "Ova grupa poruka prikazuje nove i promenjene poruke.",
"translate-msggroupselector-projects": "Grupa poruka",
- "translate-msggroupselector-search-placeholder": "Pretraga grupa",
+ "translate-msggroupselector-search-placeholder": "Pretražite grupe",
"translate-msggroupselector-search-all": "Sve",
- "translate-msggroupselector-search-recent": "Skorašnji",
+ "translate-msggroupselector-search-recent": "Nedavne",
"translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|podgrupa|podgrupe}}",
"tux-languageselector": "Prevod na",
"tux-tab-all": "Sve",
"tux-tab-untranslated": "Neprevedeno",
"tux-tab-outdated": "Zastarelo",
"tux-tab-translated": "Prevedeno",
- "tux-tab-unproofread": "Nepotvrđeno",
+ "tux-tab-unproofread": "Nepregledano",
"tux-edit": "Uredi",
- "tux-status-optional": "Neobavezno",
+ "tux-status-optional": "Opcionalno",
"tux-status-fuzzy": "Zastarelo",
- "tux-status-proofread": "Potvrđeno",
+ "tux-status-proofread": "Pregledano",
"tux-status-translated": "Prevedeno",
- "tux-status-saving": "Čuvanje...",
+ "tux-status-saving": "Čuvam…",
"tux-status-unsaved": "Nesačuvano",
+ "tux-save-unknown-error": "Došlo je do nepoznate greške.",
"tux-editor-placeholder": "Vaš prevod",
- "tux-editor-paste-original-button-label": "Unesi izvorni tekst",
- "tux-editor-discard-changes-button-label": "Odbaci izmene",
+ "tux-editor-editsummary-placeholder": "Opcionalan rezime",
+ "tux-editor-paste-original-button-label": "Nalepi izvorni tekst",
+ "tux-editor-discard-changes-button-label": "Odbaci promene",
"tux-editor-save-button-label": "Sačuvaj prevod",
"tux-editor-skip-button-label": "Pređi na sledeću",
"tux-editor-cancel-button-label": "Otkaži",
"tux-editor-confirm-button-label": "Potvrdi prevod",
- "tux-editor-shortcut-info": "Pritisnite „$1“ kako biste sačuvali ili „$2“ da pređite na sledeću poruku ili „$3“ za druge prečice.",
+ "tux-editor-proofread-button-label": "Označi kao pregledano",
+ "tux-editor-shortcut-info": "Pritisnite „$1” da biste sačuvali ili „$2” da biste preskočili na sledeću poruku, ili „$4” da biste uneli opis ili „$3” za ostale prečice.",
"tux-editor-edit-desc": "Uredi dokumentaciju",
"tux-editor-add-desc": "Dodaj dokumentaciju",
"tux-editor-suggestions-title": "Predlozi",
"tux-editor-in-other-languages": "Na drugim jezicima",
- "tux-editor-need-more-help": "Potrebna pomoć?",
- "tux-editor-ask-help": "Potražite dodatne informacije",
+ "tux-editor-need-more-help": "Treba vam pomoć?",
+ "tux-editor-ask-help": "Zatražite više informacija",
"tux-editor-tm-match": "$1% poklapanja",
"tux-warnings-more": "{{PLURAL:$1|još $1}}",
"tux-warnings-hide": "sakrij",
@@ -324,52 +331,58 @@
"tux-editor-message-desc-more": "Prikaži još",
"tux-editor-message-desc-less": "Prikaži manje",
"tux-editor-clear-translated": "Sakrij prevedeno",
- "tux-editor-proofreading-mode": "Potvrda",
+ "tux-editor-proofreading-mode": "Pregled",
"tux-editor-translate-mode": "Spisak",
"tux-editor-proofreading-hide-own-translations": "Sakrij moje prevode",
"tux-editor-proofreading-show-own-translations": "Prikaži moje prevode",
- "tux-proofread-action-tooltip": "Označi kao provereno",
+ "tux-proofread-action-tooltip": "Označite kao pregledano",
"tux-proofread-edit-label": "Uredi",
"tux-editor-page-mode": "Stranica",
- "tux-editor-outdated-warning": "Ovaj prevod je možda potrebno ažurirati.",
+ "tux-editor-outdated-warning": "Ovaj prevod možda treba da se ažurira.",
"tux-editor-outdated-warning-diff-link": "Prikaži razlike",
"tux-editor-doc-editor-placeholder": "Dokumentacija o poruci",
"tux-editor-doc-editor-save": "Sačuvaj dokumentaciju",
"tux-editor-doc-editor-cancel": "Otkaži",
"tux-messagetable-more-messages": "još $1 {{PLURAL:$1|poruka}}",
- "tux-messagetable-loading-messages": "Učitavanje {{PLURAL:$1|poruka}}...",
- "tux-message-filter-placeholder": "Filtrirani spisak",
- "tux-message-filter-result": "Nađeno $1 {{PLURAL:$1|rezultat|rezultata}} za „$2“",
+ "tux-messagetable-loading-messages": "Učitavam {{PLURAL:$1|poruku|poruke}}…",
+ "tux-message-filter-placeholder": "Filtrirajte listu",
+ "tux-message-filter-result": "{{PLURAL:$1|Pronađen $1 rezultat|Pronađena $1 rezultata|Pronađeno $1 rezultata}} za „$2”",
"tux-message-filter-advanced-button": "Napredna pretraga",
- "tux-message-filter-optional-messages-label": "Neobavezne poruke",
+ "tux-message-filter-optional-messages-label": "Opcionalne poruke",
"tux-proofread-translated-by-self": "Vaš prevod",
"tux-empty-list-all": "Ova grupa poruka je prazna",
"tux-empty-list-all-guide": "Izaberite drugu grupu poruka za prevođenje",
"tux-translate-page-no-such-group": "<strong>Naznačena grupa ne postoji.</strong> Izaberite drugu grupu poruka.",
"tux-empty-list-translated": "Nema prevedenih poruka",
- "tux-empty-list-translated-guide": "Možete pomoći u prevođenju",
+ "tux-empty-list-translated-guide": "Pomozite u prevođenju",
"tux-empty-list-translated-action": "Prevedi",
- "tux-empty-no-messages-to-display": "Nema poruka za prikazivanje.",
- "tux-empty-there-are-optional": "Ima neobaveznih poruka koje nisu prikazane na spisku",
- "tux-empty-show-optional-messages": "Prikaži neobavezne poruke",
+ "tux-empty-no-messages-to-display": "Nema poruka za prikaz.",
+ "tux-empty-there-are-optional": "Postoje opcionalne poruke koje nisu prikazane na spisku",
+ "tux-empty-show-optional-messages": "Prikaži opcionalne poruke",
"tux-empty-no-outdated-messages": "Nema zastarelih poruka",
- "tux-empty-nothing-to-proofread": "Ništa za proveru",
- "tux-empty-you-can-help-providing": "Možete da pomognete pružanjem novih prevoda",
- "tux-empty-nothing-new-to-proofread": "Ništa novo za proveru",
- "tux-empty-you-can-review-already-proofread": "Pregledaj te prevode već potvrđene od strane drugih.",
- "tux-empty-list-other": "Ništa za prevođenje",
- "tux-empty-list-other-guide": "Možete pomoći proverom postojećih prevoda",
- "tux-empty-list-other-action": "Potvrđeni prevodi",
+ "tux-empty-nothing-to-proofread": "Ništa za pregled",
+ "tux-empty-you-can-help-providing": "Pomozite pružanjem novih prevoda",
+ "tux-empty-nothing-new-to-proofread": "Ništa novo za pregled",
+ "tux-empty-you-can-review-already-proofread": "Pregledaj prevode koje su drugi već pregledali.",
+ "tux-empty-list-other": "Ničega za prevođenje",
+ "tux-empty-list-other-guide": "Pomozite pregledom postojećih prevoda",
+ "tux-empty-list-other-action": "Pregledaj prevode",
"tux-empty-list-other-link": "Prikaži sve poruke",
- "tux-editor-close-tooltip": "Zatvori",
- "tux-editor-expand-tooltip": "Proširi",
- "tux-editor-collapse-tooltip": "Skupi",
+ "tux-editor-close-tooltip": "Zatvorite",
+ "tux-editor-expand-tooltip": "Proširite",
+ "tux-editor-collapse-tooltip": "Skupite",
+ "tux-editor-message-tools-show-editor": "Prikaži u viki uređivaču",
"tux-editor-message-tools-history": "Istorija",
- "tux-editor-message-tools-delete": "Obriši",
+ "tux-editor-message-tools-delete": "Izbriši",
"tux-editor-message-tools-translations": "Svi prevodi",
- "tux-editor-loading": "Učitavanje...",
+ "tux-editor-message-tools-linktothis": "Link ka ovoj poruci",
+ "tux-editor-loading": "Učitavam…",
"translate-search-more-languages-info": "još $1 {{PLURAL:$1|jezik|jezika}}",
- "translate-statsbar-tooltip": "$1% prevedeno, $2% potvrđeno",
- "translate-statsbar-tooltip-with-fuzzy": "$1% prevedeno, $2% potvrđeno, $3% zastarelo",
- "translate-search-more-groups-info": "još $1 {{PLURAL:$1|grupa}}"
+ "translate-statsbar-tooltip": "$1% prevedeno, $2% pregledano",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% prevedeno, $2% pregledano, $3% zastarelo",
+ "translate-search-more-groups-info": "još $1 {{PLURAL:$1|grupa}}",
+ "translate-ulsdep-title": "Greška u konfiguraciji",
+ "translate-ulsdep-body": "Dodatak „Prevođenje” (Translate) zavisi od [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector dodatka „Univerzalan birač jezika” (Universal Language Selector)].",
+ "tux-session-expired": "Više niste prijavljeni. Prijavite se u zasebnoj kartici. Druga mogućnost je da prekopirate nesačuvane prevode, prijavite se, vratite se na ovu stranicu i ponovo unesete svoje prevode.",
+ "tux-nojs": "Ova alatka ne radi bez JavaScript-a. JavaScript je onemogućen, ne radi ili je ovaj pregledač nepodržan."
}
diff --git a/MLEB/Translate/i18n/core/stq.json b/MLEB/Translate/i18n/core/stq.json
index 178f94b4..52b34610 100644
--- a/MLEB/Translate/i18n/core/stq.json
+++ b/MLEB/Translate/i18n/core/stq.json
@@ -31,7 +31,6 @@
"translate-edit-no-information": "''Disse Systemättergjucht häd noch neen Dokumentation. Wan du waast, wier un in wäkken Touhoopehong ju benutsed wäd, koast du uur Uursättere hälpe, deertruch dät du ne Dokumentation bietouföigest.''",
"translate-edit-information": "Information uur Systemättergjucht ($1)",
"translate-edit-in-other-languages": "Systemättergjucht in uur Sproaken",
- "translate-edit-committed": "Aktuelle Uursättenge",
"translate-edit-warnings": "Woarskauenge uur uunfulboodige Uursättengen",
"translate-magic-pagename": "Ärwiederde MediaWiki-Uursättenge",
"translate-magic-help": "Du koast hier Aliase foar Spezioalsieden, magiske Woude un Noomensruumnoomen uursätte.\n\nSpezioalsieden un magiske Woude konnen moorere Uursättengen hääbe, jo wäide älkemoal truch n Komma (,) tränd. Noomensruumnoomen duuren bloot je een Uursättenge hääbe.\n\nIn ju Uursättenge fon n Noomensruumnoome häd <code>$1 talk</code> ne spezielle Betjuudenge. <code>$1</code> wäd truch dän Projektnoome ärsät (toun Biespil <code>{{ns:project_talk}}</code>).\nWan et in dien Sproake nit muugelk is, ne grammatikalisk korrekte Foarm deerfon tou bildjen sunner dän Projektnoome tou ferannerjen, kontaktier n Softwareäntwikler.\n\nDu moast in ju Uursätter-Gruppe weese, uum Annerengen tou spiekerjen.\nAnnerengen wäide eerste bie dän Klik ap dän Spiekerje-Knoop spiekerd.",
@@ -82,7 +81,6 @@
"translate-statsf-language": "Komma-trände Lieste fon do Sproakkoden:",
"translate-statsf-group": "Komma-trände Lieste fon do Gruppenkoden:",
"translate-statsf-submit": "Foarbekiek",
- "translate-tag-category": "Uursätboare Sieden",
"translate-tag-page-desc": "Uursättenge fon ju Wikisiede [[$2|$1]].",
"translate-sidebar-alltrans": "In uur Sproaken",
"translations": "Aal Uursättengen",
diff --git a/MLEB/Translate/i18n/core/su.json b/MLEB/Translate/i18n/core/su.json
index 05564684..abdbbcd9 100644
--- a/MLEB/Translate/i18n/core/su.json
+++ b/MLEB/Translate/i18n/core/su.json
@@ -2,7 +2,8 @@
"@metadata": {
"authors": [
"Irwangatot",
- "Kandar"
+ "Kandar",
+ "Uchup19"
]
},
"translate": "Alih basakeun",
@@ -24,16 +25,13 @@
"translate-prev": "Kaca saméméhna",
"translate-page-description-legend": "Informasi ngeunaan grup",
"translate-page-edit": "édit",
- "translate-ext-url": "<hr />Ramatloka: $1",
"translate-optional": "(piliheun)",
"translate-edit-definition": "Definisi talatah",
"translate-edit-contribute": "milu ngédit",
"translate-edit-no-information": "''Talatah ieu teu ngabogaan dokuméntasi. Lamun Anjeun nyaho di mana sarta kumaha talatah ieu dipaké, Anjeun bisa nulungan panarjamah séjén kalawan nambahan dokuméntasi pikeun talatah ieu.''",
"translate-edit-information": "Informasi ngeunaan talatah ieu \"$2\" ($1)",
"translate-edit-in-other-languages": "Talatah \"$1\" dina basa séjén",
- "translate-edit-committed": "Parobahan anu aya di pakakas",
"translate-edit-warnings": "Panginget ngeunaan tarjamahan anu teu pepek",
- "translate-edit-tmsugs": "Usulan ti mémori alihbasa",
"translate-edit-tmmatch": "$1% cocog",
"translate-magic-pagename": "Landihan tarjamahan MediaWiki",
"translate-magic-help": "Anjeun bisa narjamahkuen landihan pikeun kaca husus, kecap magis, ngaran kulit, sarta ngaran ''ngaranspasi''.\n\nPikeun kecap magis, Anjeun perlu nyantumkeun ogé tarjamahan basa Inggris atawa baris lumangsung kasalahan. Ogé tetep nyantumkeun item kahiji (0 atawa 1) kitu waé.\n\nLandian pikeun halaman husus sarta kecap magis bisa ngabogaan leuwih ti hiji tarjamahan anu lainna dipisahkan ku koma (,). Ngaran kulit sarta ngaranspasi ngan bisa ngabogaan hiji tarjamahan.\n\nDina tarjamahan ngaranspasi <code>$1 talk</code> diperlakukan husus. <code>$1</code> digantikeun kalawan ngaran loka (contona {{ns:project_talk}}).\nLamun basa Anjeun henteu matak bisa pikeun nyieun hiji ekspresi anu valid tanpa ngaganti ngaran loka, sumangga kontak salah saurang pengembang.\n\nAnjeun perlu jadi anggota grup panarjamah pikeun nyimpen parobahan. Parobahan moal disimpen nepi ka Anjeun ngaklik tombol simpen di handapeun.",
@@ -47,7 +45,7 @@
"translate-magic-cm-save": "Simpen",
"translate-magic-cm-updatedusing": "Dirobah ngagunakeun [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
"translate-magic-cm-savefailed": "Gagal nyimpen",
- "translate-magic-special": "Landihan kaca husus",
+ "translate-magic-special": "Alias kaca husus",
"translate-magic-words": "Kecap magis",
"translate-magic-namespace": "Ngaran ngaranspasi",
"translate-magic-notsaved": "Éditan anjeun can disimpen!",
@@ -71,5 +69,9 @@
"translate-total": "Talatah",
"translate-save": "Simpen ($1)",
"translate-gs-code": "Sandi",
- "translate-gs-continent": "Buana"
+ "translate-gs-continent": "Buana",
+ "translate-documentation-language": "Dokuméntasi talatah",
+ "tux-editor-cancel-button-label": "Bolay",
+ "tux-editor-shortcut-info": "Pencét \"$1\" pikeun nyimpen atawa \"$2\" pikeun ngaliwatkeun ka talatah saterusna atawa \"$4\" pikeun nyiapkeun tingkesan atawa \"$3\" pikeun tarabasan lianna.",
+ "tux-editor-doc-editor-cancel": "Bolay"
}
diff --git a/MLEB/Translate/i18n/core/sv.json b/MLEB/Translate/i18n/core/sv.json
index eb257a95..f184464c 100644
--- a/MLEB/Translate/i18n/core/sv.json
+++ b/MLEB/Translate/i18n/core/sv.json
@@ -21,16 +21,14 @@
"WikiPhoenix",
"Lokal Profil",
"Marfuas",
- "Stryn"
+ "Stryn",
+ "Bengtsson96",
+ "Pipetricker"
]
},
"translate": "Översätt",
"translate-desc": "[[Special:Translate|Specialsida]] för översättning av MediaWiki och annat",
- "translate-taskui-view": "Visa alla meddelanden",
- "translate-taskui-untranslated": "Visa oöversatta meddelanden",
- "translate-taskui-optional": "Visa valfria meddelanden",
- "translate-taskui-acceptqueue": "Endast meddelanden jag kan markera som granskade",
- "translate-taskui-reviewall": "Granska alla översättningar",
+ "translate-fuzzybot-desc": "Detta är ett speciellt systemkonto som används av MediaWiki-tillägget [https://www.mediawiki.org/wiki/Extension:Translate Translate] för att underhålla översättningar.\nDetta konto är en del av MediaWiki-programvaran och ägs inte av någon användare.",
"translate-taskui-export-to-file": "Exportera i ursprungligt format",
"translate-taskui-export-as-po": "Exportera för översättning offline",
"translate-taction-translate": "Översätt",
@@ -59,7 +57,6 @@
"translate-page-description-hasoptional": "Denna meddelandegrupp innehåller valfria meddelanden.\nValfria meddelanden bör endast översättas när ditt språk har särskilda krav,\nexempelvis att inte använda blanksteg eller transkribera egennamn. $1",
"translate-page-description-hasoptional-open": "Visa valfria meddelanden.",
"translate-page-edit": "redigera",
- "translate-ext-url": "<hr />Webbplats: $1",
"translate-optional": "(valfritt)",
"translate-ignored": "(ignorerad)",
"translate-edit-title": "Redigera \"$1\"",
@@ -69,14 +66,17 @@
"translate-edit-no-information": "<em>Det här meddelandet har ingen dokumentation.\nOm du vet var eller hur detta meddelande används, så kan du hjälpa andra översättare genom att skriva dokumentation för meddelandet.</em>",
"translate-edit-information": "Information om meddelandet ($1)",
"translate-edit-in-other-languages": "Meddelandet på andra språk",
- "translate-edit-committed": "Nuvarande översättning i mjukvaran",
"translate-edit-warnings": "Varningar om fel i översättningen",
- "translate-edit-tmsugs": "Förslag från översättningsminnet och maskinöversättningar",
"translate-edit-tmmatch-source": "Källtext för översättning: $1",
- "translate-edit-tmmatch": "$1% överensstämmelse",
+ "translate-edit-tmmatch": "$1&nbsp;% likhet",
"translate-use-suggestion": "Ersätt aktuell översättning med detta förslag.",
"translate-edit-nopermission": "Du behöver översättningsbehörighet för att översätta meddelanden.",
"translate-edit-askpermission": "Få behörighet",
+ "exporttranslations": "Exportera översättningar",
+ "translate-export-form-format": "Format",
+ "translate-export-invalid-format": "Ange ett giltigt format.",
+ "translate-export-not-supported": "Översättningsexportering stöds inte.",
+ "translate-export-format-notsupported": "Det angivna exportformatet stöds inte av meddelandegruppen.",
"translate-magic-pagename": "Utökad MediaWiki-översättning",
"translate-magic-help": "Du kan översätta alias för specialsidor, magiska ord och namnrymdsnamn.\n\nAlias för specialsidor och magiska ord kan ha flera översättningar.\nÖversättningar skiljs åt med ett kommatecken (,).\nNamnrymder kan endast ha en översättning.\n\nÖversättning av projektets diskussionsnamnrymd <code>$1 talk</code> kan vara komplicerat.\n<code>$1</code> ersätts med projektets webbplatsnamn (till exempel <code>{{ns:project_talk}}</code>).\nOm det inte är möjligt att skapa en giltig översättning till ditt språk utan att ändra webbplatsens namn, var god [[Support|kontakta oss]].\n\nFör att kunna spara ändringar så behöver du vara översättare.\nÄndringar sparas inte förrän du klickar på spara-knappen nedan.",
"translate-magic-module": "Modul:",
@@ -95,10 +95,10 @@
"translate-magic-namespace": "Namnrymdsnamn",
"translate-magic-notsaved": "Din redigering sparades inte!",
"translate-magic-errors": "Vänligen rätta följande {{PLURAL:$1|fel|fel}} i översättningen:",
- "translate-magic-saved": "Dina ändringar har sparats",
+ "translate-magic-saved": "Dina ändringar har sparats.",
"translate-checks-parameters": "Följande {{PLURAL:$2|parameter|parametrar}} används inte:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-parameters-unknown": "Följande {{PLURAL:$2|parameter är okänd|parametrar är okända}}:\n<strong><nowiki>$1</nowiki></strong>",
- "translate-checks-balance": "Det är ett ojämnt antal {{PLURAL:$2|paranteser|paranteser}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Det är ett ojämnt antal {{PLURAL:$2|parenteser}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-links": "Följande {{PLURAL:$2|länk är problematisk|länkar är problematiska}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-links-missing": "Följande {{PLURAL:$2|länk|$2 länkar}} saknas:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-xhtml": "Var vänligt rätta följande {{PLURAL:$2|tagg|taggar}}:\n<strong><nowiki>$1</nowiki></strong>",
@@ -122,7 +122,16 @@
"right-translate-import": "Importera översättningar gjorda frånkopplad",
"action-translate-import": "importera översättningar offline",
"right-translate-messagereview": "Granska översättningar",
+ "action-translate-messagereview": "granska översättningar",
"right-translate-groupreview": "Ändra arbetsflödesstatus för meddelandegrupper",
+ "action-translate-groupreview": "ändra arbetsflödestillstånd för meddelandegrupper",
+ "translate-rcfilters-translations": "Översättningar",
+ "translate-rcfilters-translations-only-label": "Översättningar",
+ "translate-rcfilters-translations-only-desc": "Ändringar på översätta sidor.",
+ "translate-rcfilters-translations-filter-label": "Inte översättningar",
+ "translate-rcfilters-translations-filter-desc": "Alla ändringar som inte är översättningar.",
+ "translate-rcfilters-translations-site-label": "Webbplatsmeddelanden",
+ "translate-rcfilters-translations-site-desc": "Anpassningar av webbplatsmeddelanden i namnrymden MediaWiki.",
"translate-rc-translation-filter": "Filtrera översättningar:",
"translate-rc-translation-filter-no": "Gör ingenting",
"translate-rc-translation-filter-only": "Visa endast översättningar",
@@ -154,7 +163,6 @@
"translate-statsf-language": "Kommaseparerad lista över språkkoder:",
"translate-statsf-group": "Kommaseparerad lista över gruppkoder:",
"translate-statsf-submit": "Förhandsgranska",
- "translate-tag-category": "Översättningsbara sidor",
"translate-tag-page-desc": "Översättning av wikisidan [[$2|$1]] från $3 ($4).",
"translate-sidebar-alltrans": "På andra språk",
"translations": "Alla översättningar",
@@ -196,16 +204,17 @@
"translate-mgs-noempty": "Visa inte språk som inte har några översättningar",
"translate-mgs-submit": "Visa statistik",
"translate-mgs-column-language": "Språk",
- "translate-mgs-totals": "Alla språk tillsammans",
+ "translate-mgs-totals": "Alla $1 {{PLURAL:$1|språk}} tillsammans",
"translate-mgs-invalid-group": "Den angivna gruppen $1 finns inte.",
"translate-mgs-nothing": "Inget att visa för begärd statistik.",
"supportedlanguages": "Språk som stöds",
- "supportedlanguages-summary": "Denna sida visar en lista över alla språk som stöds av {{SITENAME}},\ntillsammans med en lista över översättare som jobbar på detta språk.\nEn översättares namn visas större, desto mer ändringar översättaren har bidragit.\nFärgen för understrykningen anger hur mycket en översättare har varit aktiv här nyligen.",
+ "supportedlanguages-summary": "Den här sidan visar en lista över alla språk som stöds av {{SITENAME}},\ntillsammans med namnen på översättarna som arbetar på det språket.\nEn översättares namn visas större ju fler redigeringar översättaren har bidragit med.\nFärgen på en understrykning visar hur nyligen en översättare har varit aktiv här.",
"supportedlanguages-colorlegend": "Färgförklaring: Senaste översättningen gjordes $1 dagar sedan.",
"supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|Översättare}}}}: $1",
"supportedlanguages-recenttranslations": "senaste översättningar",
"supportedlanguages-count": "$1 {{PLURAL:$1|språk}} totalt.",
"supportedlanguages-activity": "$1: $2 {{PLURAL:$2|redigering|redigeringar}} - senaste redigering $3 {{PLURAL:$3|dag|dagar}} sedan",
+ "abusefilter-edit-builder-vars-translate-source-text": "Översättningsenhetens källtext",
"translate-save": "Spara ($1)",
"translate-jssti-add": "Lägg till i listan",
"managemessagegroups": "Meddelandegruppshantering",
@@ -229,7 +238,6 @@
"translate-manage-toolong": "Den maximala behandlingstiden på $1 {{PLURAL:$1|sekund|sekunder}} har överskridits.\nVänligen aktivera formuläret igen för att fortsätta behandla det.",
"translate-manage-import-summary": "Importerar en ny version från extern källa",
"translate-manage-conflict-summary": "Importerar ny version från extern källa.\nVänligen kontrollera.",
- "translate-manage-fuzzy-summary": "Meddelandedefinitionen har ändrats",
"translate-manage-submit": "Genomför",
"translate-manage-intro-other": "Nedan följer en lista över översättningsändringar på $1 språket.\nVar god granska ändringarna och välj en åtgärd du vill utföra för varje uppdatering.\nOm du väljer att ignorera ändringar är denna handling endast tillfällig.",
"translate-manage-import-ok": "Importerad: $1",
@@ -243,13 +251,11 @@
"translate-import-err-no-such-file": "Fil <nowiki>$1</nowiki> finns inte, eller har inte laddats upp lokalt.",
"translate-import-err-stale-group": "Meddelandegruppen som den här filen tillhör finns inte.",
"translate-import-err-no-headers": "Filen är inte en välformerad Gettext-fil i översättnings-förlängningsformat:\nDet gick inte att bestämma grupp och språk från filhuvuden.",
- "translate-import-err-warnings": "Filen är inte välformaterad.\nKontrollera att din editor inte tar bort msgctxt fält.\nDetaljer: $1",
+ "translate-import-err-warnings": "Filen är inte välformaterad.\nKontrollera att din redigerare inte tar bort msgctxt fält.\nDetaljer: $1",
"translate-js-summary": "Sammanfattning:",
"translate-js-save": "Spara",
"translate-js-next": "Spara och öppna nästa",
- "translate-js-nonext": "Detta var det sista meddelandet på denna sida.",
"translate-js-skip": "Hoppa över till nästa",
- "translate-js-save-failed": "Misslyckades att spara. Var vänlig rapportera detta fel.",
"translate-js-history": "Översättningshistorik",
"translate-js-support": "Ställ en fråga",
"translate-js-support-title": "Fråga efter hjälp om det inte finns tillräckligt mycket information för att översätta detta meddelande korrekt.",
@@ -266,21 +272,9 @@
"translate-documentation-language": "Meddelandedokumentation",
"translate-searchprofile": "Översättningar",
"translate-searchprofile-tooltip": "Sök från alla översättningar",
+ "translate-searchprofile-note": "Fler sökalternativ finns i [$1 översättningssökningen].",
"translate-search-languagefilter": "Filtrera efter språk:",
"translate-search-nofilter": "Ingen filtrering",
- "translate-messagereview-submit": "Markera som granskad",
- "translate-messagereview-progress": "Markerar som granskad...",
- "translate-messagereview-failure": "Misslyckades att markera som granskad: $1",
- "translate-messagereview-done": "Granskade",
- "translate-messagereview-reviews": "Granskad av {{PLURAL:$1|en användare|$1 användare}}",
- "translate-messagereview-reviewswithyou": "Granskad av {{PLURAL:$1|dig|$1 användare inklusive dig}}",
- "api-error-invalidrevision": "Översättning hittades inte",
- "api-error-unknownmessage": "Meddelande hittades inte",
- "api-error-fuzzymessage": "Översättning är märkt som föråldrad",
- "api-error-owntranslation": "Du kan inte markera dina egna översättningar som granskade",
- "translate-messagereview-no-fuzzy": "Oklara översättningar kan inte markeras som granskade.",
- "translate-messagereview-no-own": "Du kan inte markera dina egna översättningar som granskade.",
- "translate-messagereview-doit": "Markera denna översättning som granskad.",
"log-name-translationreview": "Logg för översättningsgranskningar",
"log-description-translationreview": "Logg över alla granskningar till översättningar och meddelandegrupper.",
"logentry-translationreview-message": "$1 {{GENDER:$2|granskade}} översättningen $3",
@@ -293,10 +287,7 @@
"action-translate-sandboxaction": "utför vitlistade åtgärder för sandlådeanvändare",
"translate-workflow-state-": "(inte inställd)",
"translate-workflowstatus": "Status: $1",
- "translate-workflow-set-do": "Ställ in",
"translate-workflow-set-doing": "Ställer in...",
- "translate-workflow-set-done": "Inställd!",
- "translate-workflow-set-error-alreadyset": "Den begärda statusen är identisk med aktuell status.",
"translate-workflow-autocreated-summary": "Automatisk skapelse av sida för arbetsflödesstatus $1",
"translate-stats-workflow": "Status",
"translate-workflowgroup-label": "Arbetsflödesstatus",
@@ -305,11 +296,6 @@
"translate-dynagroup-recent-desc": "Denna meddelandegrupp visar alla de senaste översättningar på detta språk.\nFrämst användbar för granskningsuppgifter.",
"translate-dynagroup-additions-label": "Senaste tillägg",
"translate-dynagroup-additions-desc": "Denna meddelandegrupp visar nya och ändrade meddelanden.",
- "translate-dynagroup-by": "Översatt av {{GENDER:$1|$1}}",
- "translate-dynagroup-byc": "Översatt av {{GENDER:$1|$1}} ($2)",
- "translate-dynagroup-last": "Senaste ändring av {{GENDER:$1|$1}}",
- "translate-dynagroup-lastc": "Senaste ändring av {{GENDER:$1|$1}} ($2)",
- "translate-gethelp": "Hjälp",
"translate-msggroupselector-projects": "Meddelandegrupp",
"translate-msggroupselector-search-placeholder": "Sök grupper",
"translate-msggroupselector-search-all": "Alla",
@@ -328,21 +314,24 @@
"tux-status-translated": "Översatt",
"tux-status-saving": "Sparar...",
"tux-status-unsaved": "Inte sparad",
+ "tux-save-unknown-error": "Okänt fel uppstod.",
"tux-editor-placeholder": "Din översättning",
+ "tux-editor-editsummary-placeholder": "Valfri sammanfattning",
"tux-editor-paste-original-button-label": "Klistra in källtext",
"tux-editor-discard-changes-button-label": "Ta bort ändringar",
"tux-editor-save-button-label": "Spara översättning",
"tux-editor-skip-button-label": "Hoppa över till nästa",
"tux-editor-cancel-button-label": "Avbryt",
"tux-editor-confirm-button-label": "Bekräfta översättning",
- "tux-editor-shortcut-info": "Tryck \"$1\" för att spara eller \"$2\" för att hoppa till nästa meddelande eller \"$3\" för andra kortkommandon.",
+ "tux-editor-proofread-button-label": "Markera som granskad",
+ "tux-editor-shortcut-info": "Tryck \"$1\" för att spara, \"$2\" för att hoppa till nästa meddelande, \"$4\" för att skriva en sammanfattning eller \"$3\" för andra kortkommandon.",
"tux-editor-edit-desc": "Redigera dokumentation",
"tux-editor-add-desc": "Lägg till dokumentation",
"tux-editor-suggestions-title": "Förslag",
"tux-editor-in-other-languages": "På andra språk",
"tux-editor-need-more-help": "Behöver du mer hjälp?",
"tux-editor-ask-help": "Fråga efter mer information",
- "tux-editor-tm-match": "$1 % likhet",
+ "tux-editor-tm-match": "$1&nbsp;% likhet",
"tux-warnings-more": "{{PLURAL:$1|$1 till|$1 fler}}",
"tux-warnings-hide": "dölj",
"tux-editor-save-failed": "Misslyckades att spara översättningen: $1",
@@ -358,7 +347,7 @@
"tux-proofread-edit-label": "Redigera",
"tux-editor-page-mode": "Sida",
"tux-editor-outdated-warning": "Denna översättning kan behöva uppdateras.",
- "tux-editor-outdated-warning-diff-link": "Visa differenser",
+ "tux-editor-outdated-warning-diff-link": "Visa skillnader",
"tux-editor-doc-editor-placeholder": "Meddelandedokumentation",
"tux-editor-doc-editor-save": "Spara dokumentation",
"tux-editor-doc-editor-cancel": "Avbryt",
@@ -390,9 +379,11 @@
"tux-editor-close-tooltip": "Stäng",
"tux-editor-expand-tooltip": "Expandera",
"tux-editor-collapse-tooltip": "Göm",
+ "tux-editor-message-tools-show-editor": "Visa i wikiredigeraren",
"tux-editor-message-tools-history": "Historik",
"tux-editor-message-tools-delete": "Radera",
"tux-editor-message-tools-translations": "Alla översättningar",
+ "tux-editor-message-tools-linktothis": "Länk till detta meddelande",
"tux-editor-loading": "Läser in...",
"translate-search-more-languages-info": "$1 {{PLURAL:$1|till|fler}} språk",
"translate-statsbar-tooltip": "$1% översatt, $2% granskat",
@@ -400,5 +391,6 @@
"translate-search-more-groups-info": "$1 {{PLURAL:$1|till grupp|fler grupper}}",
"translate-ulsdep-title": "Konfigurationsfel",
"translate-ulsdep-body": "Översättningstillägget är beroende av [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector Universal Language Selector]-tillägget.",
- "tux-session-expired": "Du är inte längre inloggad. Vänligen logga in i en separat flik. Alternativt, gör en kopia av osparade översättningar, logga in och gå tillbaka till denna sida."
+ "tux-session-expired": "Du är inte längre inloggad. Vänligen logga in i en separat flik. Alternativt kan du göra en kopia av osparade översättningar, logga in, gå tillbaka till denna sida och klistra in din översättningar igen.",
+ "tux-nojs": "Detta verktyg fungerar inte utan JavaScript. JavaScript är inaktiverat, fungerar inte eller stöds inte denna webbläsare."
}
diff --git a/MLEB/Translate/i18n/core/sw.json b/MLEB/Translate/i18n/core/sw.json
index 200aa192..bd5ab7ed 100644
--- a/MLEB/Translate/i18n/core/sw.json
+++ b/MLEB/Translate/i18n/core/sw.json
@@ -7,9 +7,6 @@
]
},
"translate": "Kutafsiri",
- "translate-taskui-view": "Onyesha jumbe zote",
- "translate-taskui-untranslated": "Onyesha jumbe ambazo hazijatafsiriwa",
- "translate-taskui-optional": "Onyesha ujumbe wa hiari",
"translate-taction-translate": "Tafsiri",
"translate-taction-export": "Peleka",
"translate-language-disabled": "Tafsiri kwa lugha hii kumelemazwa",
@@ -21,7 +18,6 @@
"translate-prev": "Ukurasa uliotangulia",
"translate-page-description-hasoptional-open": "Onyesha ujumbe wa hiari",
"translate-page-edit": "hariri",
- "translate-ext-url": "<hr />Tovuti: $1",
"translate-optional": "(ya hiari)",
"translate-ignored": "(imepuuzwa)",
"translate-edit-title": "Hariri \"$1\"",
@@ -45,7 +41,6 @@
"translate-statsf-count": "Pima:",
"translate-statsf-count-edits": "Idadi ya hariri",
"translate-statsf-count-registrations": "Watumiaji wapya",
- "translate-tag-category": "Kurasa zinaoweza kuharirika",
"translate-sidebar-alltrans": "Katika lugha nyingine",
"translations": "Tafsiri zote",
"translate-translations-fieldset-title": "Ujumbe",
@@ -81,7 +76,6 @@
"translate-js-summary": "Muhtasari:",
"translate-js-save": "Hifadhi",
"translate-js-next": "Hifadhi na ufungue inayofuatia",
- "translate-js-nonext": "Huu ndio ulikuwa ujumbe wa mwisho katika ukurasa huu.",
"translate-js-skip": "Ruka hado unaofuatia",
"translate-js-history": "Historia ya fasiri",
"translate-js-support": "Uliza swali",
@@ -91,13 +85,7 @@
"translate-gs-total": "Jumla",
"translate-gs-avgscore": "Alama ya wastani",
"translate-searchprofile": "Tafsiri",
- "translate-messagereview-submit": "Kubali",
- "translate-messagereview-progress": "Inakubali...",
- "translate-messagereview-done": "Imekubaliwa",
- "api-error-invalidrevision": "Tafsiri haikupatikana",
- "api-error-unknownmessage": "Ujumbe haukupatikana",
"translate-workflowstatus": "Hali: $1",
"translate-stats-workflow": "Hali",
- "translate-dynagroup-recent-label": "fasiri za hivi karibuni",
- "translate-gethelp": "Msaada"
+ "translate-dynagroup-recent-label": "fasiri za hivi karibuni"
}
diff --git a/MLEB/Translate/i18n/core/ta.json b/MLEB/Translate/i18n/core/ta.json
index 3a5405bf..3fb91f04 100644
--- a/MLEB/Translate/i18n/core/ta.json
+++ b/MLEB/Translate/i18n/core/ta.json
@@ -9,16 +9,14 @@
"TRYPPN",
"Trengarasu",
"செல்வா",
- "மதனாஹரன்"
+ "மதனாஹரன்",
+ "Anj.balaji",
+ "ElangoRamanujam",
+ "Rakeshonwiki"
]
},
"translate": "மொழி பெயர்ப்பு",
"translate-desc": "மீடியாவிக்கியையும் தாண்டிய வேறு மொழிபெயர்ப்புகளுக்கான [[Special:Translate|சிறப்புப் பக்கம்]]",
- "translate-taskui-view": "அனைத்துத் தகவல்களையும் காண்பி",
- "translate-taskui-untranslated": "மொழிபெயர்க்கப்படாத தகவல்களை காண்பி",
- "translate-taskui-optional": "கட்டாயமில்லாதத் தகவல்களை காண்பி",
- "translate-taskui-acceptqueue": "நான் ஏற்றுக்கொள்ளக்கூடிய தகவல்களை மட்டும் காண்பி",
- "translate-taskui-reviewall": "அனைத்து மொழிபெயர்ப்புகளையும் பரிசீலனை செய்",
"translate-taskui-export-to-file": "சொந்த வடிவமைப்பில் ஏற்றுமதி செய்",
"translate-taskui-export-as-po": "இணைப்பில்லா (off-line) மொழிபெயர்ப்புக்காக ஏற்றுமதி செய்",
"translate-taction-translate": "மொழிபெயர்ப்பு செய்யவும்",
@@ -46,7 +44,6 @@
"translate-page-description-legend": "குழுவைப் பற்றிய தகவல்",
"translate-page-description-hasoptional-open": "விருப்பத் தகவல்களை காண்பி.",
"translate-page-edit": "தொகு",
- "translate-ext-url": "<hr />வலைத்தளம்: $1",
"translate-optional": "(விருப்பதேர்வு)",
"translate-ignored": "(புறக்கணிக்கப்பட்டது)",
"translate-edit-title": "\"$1\" -ஐ தொகுக்கவும்",
@@ -56,12 +53,11 @@
"translate-edit-no-information": "இச் செய்திக்கு ஆவணமாக்கல் ஏதும் இல்லை.\nஇச் செய்தி எங்கே எப்படிப் பயன்படுத்தப்படும் என்பது உங்களுக்குத் தெரியுமாயின் இதற்கு ஆவணமாக்கல் சேர்ப்பதன் மூலம் மற்ற மொழிபெயர்ப்பாளர்களுக்கு நீங்கள் உதவ முடியும்.",
"translate-edit-information": "தகவல் ($1) ஐப் பற்றிய குறிப்பு",
"translate-edit-in-other-languages": "மற்ற மொழிகளில் தகவல்",
- "translate-edit-committed": "மென்பொருளில் நடப்பு மொழிபெயர்ப்பு",
"translate-edit-warnings": "நிறைவுபெறாத மொழிபெயர்ப்புகளைப் பற்றிய எச்சரிக்கைகள்",
- "translate-edit-tmsugs": "மொழிபெயர்ப்பு நினைவகத்தில் இருந்து பரிந்துரைகள்",
"translate-edit-tmmatch": "$1% பொருத்தம்",
"translate-edit-nopermission": "தகவல்களை மொழிபெயர்க்க உங்களுக்கு அனுமதி இருக்கவேண்டும்.",
"translate-edit-askpermission": "அனுமதி வேண்டுக",
+ "exporttranslations": "மொழிபெயர்ப்புகளை ஏற்றுக",
"translate-magic-pagename": "நீட்சிபெற்ற மீடியாவிக்கி மொழிபெயர்ப்பு",
"translate-magic-submit": "கொண்டு வா",
"translate-magic-cm-export": "ஏற்றுமதி செய்",
@@ -110,7 +106,6 @@
"translate-statsf-language": "மொழிகளுக்கான குறியீடுகளின் காற்புள்ளிகளால் பிரித்த பட்டியல்:",
"translate-statsf-group": "குழுக்களுக்கான குறியீடுகளின் காற்புள்ளிகளால் பிரித்த பட்டியல்:",
"translate-statsf-submit": "முன்னோட்டம்",
- "translate-tag-category": "மொழிபெயர்க்கக்கூடிய பக்கங்கள்",
"translate-tag-page-desc": "விக்கி பக்கம் [[$2|$1]] ன் மொழிபெயர்ப்பு",
"translate-sidebar-alltrans": "மற்ற மொழிகளில்",
"translations": "எல்லா மொழிபெயர்ப்புகளும்",
@@ -158,7 +153,6 @@
"translate-manage-action-ignore": "புறக்கணி",
"translate-manage-action-fuzzy": "இறக்கு மற்றும் மயக்குறு மொழிபெயர்ப்புகள்",
"translate-manage-import-summary": "வெளி மூலத்திலிருந்து ஒரு புதிய பதிப்பை உள்ளிடுகின்றது",
- "translate-manage-fuzzy-summary": "செய்தி வரையறை மாறியுள்ளது.",
"translate-manage-submit": "செயல்படுத்து",
"importtranslations": "மொழிபெயர்ப்புகளை இறக்கு",
"translate-import-from-local": "உள்ளகத்துக் கோப்பு ஏற்றல்:",
@@ -170,9 +164,7 @@
"translate-js-summary": "சுருக்கம்:",
"translate-js-save": "சேமி",
"translate-js-next": "சேமித்து அடுத்ததைத் திறக்கவும்",
- "translate-js-nonext": "இதுவே இப்பக்கத்தில் இருந்த கடைசித் தகவல்",
"translate-js-skip": "அடுத்ததற்குத் தாண்டிச் செல்க",
- "translate-js-save-failed": "சேமிப்பு ஆகவில்லை. இந்தப் பிழையை அறிவிக்கவும்",
"translate-js-history": "மொழிபெயர்ப்பு வரலாறு",
"translate-js-support": "கேள்வி கேள்",
"translate-js-support-title": "இந்தத் தகவலை சரியாக மொழிபெயர்க்கத் தேவையான தகவல்கள் இல்லையெனில் உதவி கேட்கவும்.",
@@ -191,36 +183,15 @@
"translate-searchprofile-tooltip": "எல்லா மொழிபெயர்ப்புகளில் இருந்தும் தேடு",
"translate-search-languagefilter": "மொழிவாரியாக வடிகட்டு:",
"translate-search-nofilter": "வடிகட்டல் இல்லை",
- "translate-messagereview-submit": "ஏற்றுக்கொள்",
- "translate-messagereview-progress": "ஏற்றுக்கொண்டிருக்கிறது...",
- "translate-messagereview-failure": "ஏற்றுக்கொள்வது.... தோல்வியடைந்தது:$1",
- "translate-messagereview-done": "ஏற்றுக்கொள்ளப்பட்டது.",
- "translate-messagereview-reviews": "{{PLURAL:$1|ஒரு பயனரால்|$1 பயனர்களால்}} ஏற்றுக்கொள்ளப்பட்டது.",
- "translate-messagereview-reviewswithyou": "{{PLURAL:$1|உங்களால்|உங்களுடன் சேர்த்து $1 பயனர்களால்}} ஏற்றுக்கொள்ளப்பட்டது.",
- "api-error-invalidrevision": "மொழிபெயர்ப்பு காணப்படவில்லை",
- "api-error-unknownmessage": "தகவல் காணப்படவில்லை",
- "api-error-fuzzymessage": "மொழிபெயர்ப்பு தெளிவில்லாததாக குறியிடப்பட்டுள்ளது",
- "api-error-owntranslation": "உங்களது மொழிபெயர்ப்புகளை உங்களால் ஏற்றுக்கொள்ள இயலாது.",
- "translate-messagereview-no-fuzzy": "தெளிவில்லா மொழிபெயர்ப்புகளை ஏற்றுக்கொள்ள இயலாது.",
- "translate-messagereview-no-own": "உங்களது மொழிபெயர்ப்புகளை உங்களால் ஏற்றுக்கொள்ள இயலாது.",
- "translate-messagereview-doit": "இந்த மொழிபெயர்ப்பை சரியான மொழிபெயர்ப்பு என ஏற்கவும்.",
"log-name-translationreview": "மொழிபெயர்ப்பு பரிசீலனைப் பதிகை",
"log-description-translationreview": "மொழிபெயர்ப்புகள் மற்றும் தகவல் குழுக்களுக்கான அனைத்து பரிசீலனைகளின் பதிகை.",
"logentry-translationreview-message": "மொழிபெயர்ப்பு $3, $1 பயனரால் {{GENDER:$2|ஏற்றுக்கொள்ளப்பட்டது}}",
"translate-workflow-state-": "(அமைக்கப்படவில்லை)",
"translate-workflowstatus": "நிலை:$1",
- "translate-workflow-set-do": "அமை",
"translate-workflow-set-doing": "அமைக்கிறது...",
- "translate-workflow-set-done": "அமை!",
- "translate-workflow-set-error-alreadyset": "கோரிய நிலை தற்போதைய நிலையை போலவே உள்ளது.",
"translate-stats-workflow": "நிலைமை",
"translate-dynagroup-recent-label": "அண்மைய மொழிபெயர்ப்புகள்",
"translate-dynagroup-additions-label": "அண்மைய சேர்க்கைகள்",
- "translate-dynagroup-by": "மொழிபெயர்ப்பு மேற்கொண்டவர் {{GENDER:$1| $1 }}",
- "translate-dynagroup-byc": "மொழிபெயர்ப்பு மேற்கொண்டது {{GENDER:$1|$1}} ($2)",
- "translate-dynagroup-last": " {{GENDER:$1| $1 }} ஆல் தற்போதைய மாற்றம்",
- "translate-dynagroup-lastc": "{{GENDER:$1|$1}} ($2)ஆல் தற்போதைய மாற்றம் செய்யப்பட்டது.",
- "translate-gethelp": "உதவி",
"translate-msggroupselector-projects": "தகவல் குழுக்கள்",
"translate-msggroupselector-search-placeholder": "தேடல் குழுக்கள்",
"translate-msggroupselector-search-all": "அனைத்தும்",
@@ -237,6 +208,7 @@
"tux-status-proofread": "மெய்ப்புப் பார்",
"tux-status-translated": "மொழிபெயர்ப்பு செய்யப்பட்டது",
"tux-status-unsaved": "சேமிக்கப்படாதது",
+ "tux-save-unknown-error": "இனம் தெரியாத ஒரு தவறு நிகழ்ந்துவிட்டது.",
"tux-editor-placeholder": "உங்கள் மொழிபெயர்ப்பு",
"tux-editor-save-button-label": "மொழிபெயர்ப்பை சேமிக்கவும்",
"tux-editor-skip-button-label": "அடுத்ததற்குத் தாண்டிச் செல்க",
@@ -244,5 +216,7 @@
"tux-editor-suggestions-title": "பரிந்துரைகள்",
"tux-editor-in-other-languages": "மற்ற மொழிகளில்",
"tux-editor-need-more-help": "மேலதிக உதவி தேவையா?",
- "tux-editor-ask-help": "மேலதிக தகவல்களை கேட்கவும்"
+ "tux-editor-ask-help": "மேலதிக தகவல்களை கேட்கவும்",
+ "tux-editor-message-tools-show-editor": "விக்கி எடிட்டரில் காண்பிக்கவும்",
+ "tux-nojs": "இந்தப் பக்கத்திற்கு ஜாவாஸ்ரிப்ட் தேவை"
}
diff --git a/MLEB/Translate/i18n/core/tcy.json b/MLEB/Translate/i18n/core/tcy.json
index ed96017a..f2f61948 100644
--- a/MLEB/Translate/i18n/core/tcy.json
+++ b/MLEB/Translate/i18n/core/tcy.json
@@ -1,14 +1,58 @@
{
"@metadata": {
"authors": [
- "VASANTH S.N."
+ "VASANTH S.N.",
+ "Soundarya shetty s",
+ "Vishwanatha Badikana",
+ "BHARATHESHA ALASANDEMAJALU",
+ "Kiranpoojary"
]
},
"translate": "ಭಾಷಾಂತರ ಮಲ್ಪುಲೆ",
+ "translate-taction-translate": "ತರ್ಜುಮೆ",
+ "translate-taction-lstats": "ಬಾಸೆ ಅಂಕಿಅಂಶೊಲು",
"translate-page-group": "ಗುಂಪು",
"translate-page-language": "ಭಾಸೆ",
"translate-page-limit": "ಮಿತಿ",
"translate-next": "ಬೊಕ್ಕದ ಪುಟೊ",
"translate-prev": "ದುಂಬುದ ಪುಟೊ",
- "translate-magic-module": "ಘಟಕ:"
+ "translate-edit-contribute": "ಸಹಾಯ ಕೊರ್ಲೆ",
+ "translate-edit-in-other-languages": "ಬೇತೆ ಬಾಸೆಲೆಡ್ ಸಂದೇಶೊ",
+ "translate-magic-module": "ಘಟಕ:",
+ "translate-pref-nonewsletter": "ಎಂಕ್ ಈ-ಮೈಲ್ ವಾರ್ತಾಪತ್ರೊಲೆನ್ ಕಡಪುಡುನ ಬೊಡ್ಚಿ",
+ "translate-rc-translation-filter": "ತರ್ಜುಮೆದ ಅರಿಪೆ",
+ "translate-rc-translation-filter-no": "ದಾಲ ಮಲ್ಪೊಡ್ಚಿ",
+ "translate-rc-translation-filter-only": "ತರ್ಜುಮೆಲೆನ್ ಮಾತ್ರ ತೋಜಾಲೆ",
+ "translate-rc-translation-filter-filter": "ತರ್ಜುಮೆಲೆನ್ ಅರಿತ್ ದೆಪ್ಪುಲೆ",
+ "translate-rc-translation-filter-site": "ಸೈಟ್ ಸಂದೇಶೊಲೆಗ್ ಆಯಿನ ಬದಲಾವಣೆಲು ಮಾತ್ರ",
+ "translate-stats-edits": "ಸೇರ್ಸಯಿನ",
+ "translate-stats-users": "ಅನುವಾದಕೆರ್",
+ "translate-stats-reviews": "ಪೀರ ಒರ ತೂಲೆ",
+ "translate-stats-reviewers": "ಸರಿ ಉಂಡಾಂದ್ ತುಪುನಾರ್",
+ "translate-statsf-scale-months": "ತಿಂಗೊಳು",
+ "translate-statsf-scale-weeks": "ವಾರೋಲು",
+ "translate-statsf-scale-days": "ದಿನಕ್ಕುಲು",
+ "translate-statsf-scale-hours": "ಘಂಟೆಲು",
+ "translate-statsf-count": "ಅಳತೆ:",
+ "translate-statsf-count-edits": "ಸಂಪಾದನೆತಾ ಸಂಖ್ಯೆ",
+ "translate-statsf-count-users": "ಸಕ್ರಿಯವಾದುಪ್ಪುನ ಅನುವಾದಕೆರ್",
+ "translate-statsf-count-registrations": "ಪೊಸ ಗಲಸುನರ್",
+ "translate-statsf-count-reviewers": "ಸರಿ ಉಂಡಾಂದ್ ತುಪುನಾರ್",
+ "translate-statsf-submit": "ದುಂಬುತಾ",
+ "translate-sidebar-alltrans": "ಬೇತೆ ಬಾಸೆಲೆಡ್",
+ "translations": "ಮಾತಾ ತರ್ಜುಮೆಲು",
+ "translations-summary": "ಇತ್ತಿನ ಮಾತಾ ತರ್ಜುಮೆಲೆನ್ ತೋಜಾಯೆರೆ ಒಂಜಿ ಸಂದೇಶೊದ ಪುದರ್‌ನ್ ತಿರ್ತ್ ಬರೆಲೆ.",
+ "translate-translations-fieldset-title": "ಸಂದೇಸೊ",
+ "translate-translations-messagename": "ಪುದರ್:",
+ "translate-translations-project": "ಯೋಜನೆ:",
+ "translate-translations-history-short": "ದುಂಬು ಇರ್ ತೂಯಿನವು",
+ "languagestats": "ಬಾಸೆತಾ ಲೆಕ್ಕಪಕ್ಕೋಲು",
+ "languagestats-recenttranslations": "ಇಂಚಿಪದ ಅನುವಾದೋಲು",
+ "translate-language": "ಬಾಸೆ",
+ "translate-total": "ಸಂದೇಶಲು",
+ "translate-js-support": "ಪ್ರಶ್ನೆ ಕೇನ್‌ಲೆ",
+ "translate-gs-total": "ಒಟ್ಟು",
+ "translate-documentation-language": "ಸುದ್ದಿ ದಾಕಲೆ ಮಲ್ಪುನು",
+ "tux-languageselector": "ತರ್ಜುಮೆ ಮಲ್ಪೊಡಾಯಿನ ಬಾಸೆ",
+ "tux-editor-message-tools-show-editor": "wiki editor ಡ್ ತೋಜಾಲೆ"
}
diff --git a/MLEB/Translate/i18n/core/te.json b/MLEB/Translate/i18n/core/te.json
index 6a371d03..19856fdd 100644
--- a/MLEB/Translate/i18n/core/te.json
+++ b/MLEB/Translate/i18n/core/te.json
@@ -11,11 +11,6 @@
},
"translate": "అనువదించు",
"translate-desc": "మీడియావికీ మరియు ఇతరాలను అనువదించడానికి [[Special:Translate|ప్రత్యేక పుట]]",
- "translate-taskui-view": "అన్ని సందేశాలను చూపించు",
- "translate-taskui-untranslated": "అనువాదంకాని సందేశాలను చూపించు",
- "translate-taskui-optional": "ఐచ్చిక సందేశాలను చూపించు",
- "translate-taskui-acceptqueue": "నేను సమీక్షించగల సందేశాలు మాత్రమే",
- "translate-taskui-reviewall": "అన్ని అనువాదాలు సమీక్షించండి",
"translate-taskui-export-to-file": "స్థానిక ఫార్మాట్లోకి ఎగుమతి చేయండి",
"translate-taskui-export-as-po": "ఆఫ్ లైన్ అనువాదానికై ఎగుమతి",
"translate-taction-translate": "అనువాదం",
@@ -43,7 +38,6 @@
"translate-page-description-legend": "ఈ సమూహం గురించిన సమాచారం",
"translate-page-description-hasoptional-open": "ఐచ్చిక సందేశాలను చూపించు.",
"translate-page-edit": "మార్చు",
- "translate-ext-url": "<hr />జాలగూడు: $1",
"translate-optional": "(ఐచ్ఛికం)",
"translate-ignored": "(ఉపేక్షించినది)",
"translate-edit-title": "\"$1\"ని మార్చండి",
@@ -53,14 +47,14 @@
"translate-edit-no-information": "<em>ఈ సందేశానికి డాక్యుమెంటేషను లేదు. \nఈ సందేశాన్ని ఎక్కడ లేదా ఎలా ఉపయోగిస్తారో మీకు తెలిస్తే, దీనికి ఆ సమాచారాన్ని చేర్చి ఇతర అనువాదకులకు తోడ్పడవచ్చు.</em>",
"translate-edit-information": "సందేశం గురించి సమాచారం ($1)",
"translate-edit-in-other-languages": "ఇతర భాషలలో సందేశం",
- "translate-edit-committed": "సాఫ్ట్&zwnj;వేర్&zwnj;లో ప్రస్తుతమున్న అనువాదం",
"translate-edit-warnings": "అసంపూర్తి అనువాదాల గురించి హెచ్చరికలు",
- "translate-edit-tmsugs": "అనువాద కోశం నుండి సలహాలు",
"translate-edit-tmmatch-source": "మూలకోశ అనువాదం: $1",
"translate-edit-tmmatch": "$1% పోలిక",
"translate-use-suggestion": "ఈ అనువాదాన్ని మార్చుటకు సూచననివ్వండి.",
"translate-edit-nopermission": "సందేశాలను అనువదించడానికి మీకు అనువాద హక్కులు అవసరం.",
"translate-edit-askpermission": "అనుమతి తెచ్చుకోండి",
+ "exporttranslations": "అనువాదాలన ఎగుమతి",
+ "translate-export-form-format": "ఆకృతి",
"translate-magic-pagename": "విస్తరిత మీడియావికీ అనువాదం",
"translate-magic-module": "మాడ్యూలు:",
"translate-magic-submit": "తీసుకురా",
@@ -77,7 +71,7 @@
"translate-magic-namespace": "పేరుబరుల పేర్లు",
"translate-magic-notsaved": "మీ మార్పు భద్రం కాలేదు!",
"translate-magic-errors": "ఆనువాదంలోని ఈ క్రింది {{PLURAL:$1|పొరపాటుని|పొరపాట్లను}} సరిచేయండి:",
- "translate-magic-saved": "మీ మార్పులు విజయవంతంగా భద్రమయ్యాయి.",
+ "translate-magic-saved": "మీ మార్పులు భద్రమయ్యాయి.",
"translate-checks-parameters": "ఈ {{PLURAL:$2|పరామితిని|పరామితులను}} వాడనేలేదు:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-parameters-unknown": "{{PLURAL:$2|ఇది గుర్తుతెలియని పరామితి|ఇవి గుర్తుతెలియని పరామితులు}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-balance": "{{PLURAL:$2|బ్రాకెట్లు|బ్రాకెట్లు}} సరి సమాన సంఖ్యలో లేవు:\n<strong><nowiki>$1</nowiki></strong>",
@@ -131,8 +125,7 @@
"translate-statsf-language": "కామాతో వేరుపరచిన భాషా సంకేతాల జాబితా:",
"translate-statsf-group": "కామాలతో వేరుపరచిన సమూహ సంకేతాల జాబితా:",
"translate-statsf-submit": "మునుజూపు",
- "translate-tag-category": "అనువదించదగ్గ పుటలు",
- "translate-tag-page-desc": "[[$2|$1]] వికీ పుట యొక్క అనువాదం.",
+ "translate-tag-page-desc": "$3 ($4) నుండి [[$2|$1]] వికీ పేజీ అనువాదం.",
"translate-sidebar-alltrans": "ఇతర భాషలలో",
"translations": "అన్ని అనువాదాలు",
"translate-translations-no-message": "\"$1\" అనేది అనువదించదగ్గ సందేశం కాదు",
@@ -154,15 +147,17 @@
"translate-total": "సందేశాలు",
"translate-untranslated": "అనువాదంకానివి",
"translate-percentage-complete": "పూర్తైనవి",
- "translate-percentage-fuzzy": "కాలదోషం పట్టినవి",
+ "translate-percentage-fuzzy": "పాతబడినవి",
"translate-ls-submit": "గణాంకాలను చూపించు",
"translate-ls-column-group": "సందేశాల సమూహం",
"translate-mgs-pagename": "సందేశ సమూహ గణాంకాలు",
+ "translate-mgs-fieldset": "ప్రదర్శన అభిరుచులు",
+ "translate-mgs-group": "సందేశాల సమూహం:",
"translate-mgs-submit": "గణాంకాలను చూపించు",
"translate-mgs-column-language": "భాష",
"translate-mgs-totals": "అన్ని భాషలు కలిపి",
"supportedlanguages": "తోడ్పాటు ఉన్న భాషలు",
- "supportedlanguages-translators": "{{PLURAL:$2|అనువాదకుడు|అనువాదకులు}}: $1",
+ "supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|అనువాదకుడు|అనువాదకురాలు}}|అనువాదకులు}}: $1",
"supportedlanguages-recenttranslations": "ఇటీవలి అనువాదాలు",
"supportedlanguages-count": "మొత్తం $1 {{PLURAL:$1|భాష|భాషలు}}.",
"translate-save": "భద్రపరచు ($1)",
@@ -173,17 +168,14 @@
"translate-manage-import-deleted": "సందేశం $1ని తొలగించారు",
"translate-manage-action-import": "దిగుమతి చెయ్యి",
"translate-manage-action-ignore": "పట్టించుకోవద్దు",
- "translate-manage-fuzzy-summary": "ఈ సందేశపు నిర్వచనం మారింది",
- "translate-manage-import-done": "అంతా పూర్తయ్యింది!",
+ "translate-manage-import-done": "దిగుమతి పూర్తయ్యింది!",
"importtranslations": "అనువాదాల దిగుమతి",
"translate-import-from-local": "స్థానిక దస్త్రపు ఎక్కింపు:",
- "translate-import-err-ul-failed": "దస్త్రపు ఎక్కింపు విజయవంతం కాలేదు",
+ "translate-import-err-ul-failed": "దస్త్రపు ఎక్కింపు విఫలమైంది",
"translate-js-summary": "సారాంశం:",
"translate-js-save": "భద్రపరచు",
"translate-js-next": "భద్రపరిచి తర్వాతి దానికి వెళ్ళు",
- "translate-js-nonext": "ఈ పుటలో ఇది చివరి సందేశం",
"translate-js-skip": "వదిలేసి తర్వాతి దానికి వెళ్ళు",
- "translate-js-save-failed": "భద్రపరచడం విఫలమైంది. ఈ లోపం గురించి ఫిర్యాదు చెయ్యండి.",
"translate-js-history": "అనువాద చరిత్ర",
"translate-js-support": "సందేహముంటే అడగండి",
"translate-js-support-title": "ఈ సందేశాన్ని సరిగ్గా అనువదించేందుకు అవసరమైన సమాచారం సరిపడా లేకపోతే సాయం కోసం అడగండి",
@@ -196,40 +188,44 @@
"translate-gs-count": "లెక్క",
"translate-gs-total": "మొత్తం",
"translate-gs-avgscore": "సగటు స్కోరు",
- "translate-documentation-language": "తెలుగు",
+ "translate-documentation-language": "అనువాద సహాయం",
"translate-searchprofile": "అనువాదాలు",
"translate-searchprofile-tooltip": "అనువాదాలన్నింటిలో వెతకండి",
"translate-search-languagefilter": "భాష వడపోత:",
"translate-search-nofilter": "వడపోత లేదు",
- "translate-messagereview-submit": "అంగీకరించు",
- "translate-messagereview-no-own": "మీ అనువాదాలను మీరే అంగీకరించలేరు.",
"log-name-translationreview": "అనువాద సమీక్షల చిట్టా",
"translate-workflowstatus": "స్థితి: $1",
"translate-stats-workflow": "స్థితి",
"translate-dynagroup-recent-label": "ఇటీవలి అనువాదాలు",
"translate-dynagroup-additions-label": "ఇటీవలి చేర్పులు",
- "translate-gethelp": "సహాయం",
+ "translate-msggroupselector-projects": "సందేశాల సమూహం",
"translate-msggroupselector-search-all": "అన్నీ",
"translate-msggroupselector-search-recent": "ఇటీవలి",
"tux-tab-all": "అన్నీ",
"tux-tab-untranslated": "అనువాదం కానివి",
- "tux-tab-outdated": "కాలదోషం పట్టినవి",
+ "tux-tab-outdated": "పాతబడినవి",
"tux-tab-translated": "అనువాదమైనవి",
"tux-tab-unproofread": "సమీక్షించనివి",
"tux-edit": "మార్చు",
"tux-status-optional": "ఐచ్చికం",
- "tux-status-fuzzy": "కాలదోషం పట్టింది",
+ "tux-status-fuzzy": "పాతబడినది",
"tux-status-proofread": "సమీక్షించబడింది",
"tux-status-translated": "అనువదించబడింది",
"tux-status-saving": "భద్రపరుస్తున్నాం...",
+ "tux-save-unknown-error": "ఏదో తెలియని లోపం సంభవించింది.",
"tux-editor-placeholder": "మీ అనువాదం",
+ "tux-editor-editsummary-placeholder": "ఐచ్చిక సారాంశం",
+ "tux-editor-paste-original-button-label": "మూలపాఠ్యాన్ని కాపీచెయ్యి",
+ "tux-editor-discard-changes-button-label": "మార్పులను విస్మరించు",
"tux-editor-save-button-label": "అనువాదాన్ని భద్రపరచు",
"tux-editor-skip-button-label": "వదిలేసి తర్వాతిదానికి వెళ్ళు",
"tux-editor-cancel-button-label": "రద్దుచేయి",
"tux-editor-confirm-button-label": "అనువాదాన్ని నిర్ధారించండి",
+ "tux-editor-proofread-button-label": "సమీక్షించినట్టుగా గుర్తుపెట్టు",
"tux-editor-suggestions-title": "సూచనలు",
"tux-editor-in-other-languages": "ఇతర భాషలలో",
"tux-editor-need-more-help": "మరింత సహాయం కావాలా?",
+ "tux-editor-ask-help": "మరింత సమాచారం కోసం అడగండి",
"tux-editor-tm-match": "$1% పోలిక",
"tux-warnings-more": "{{PLURAL:$1|ఇంకా $1}}",
"tux-warnings-hide": "దాచు",
@@ -251,6 +247,7 @@
"tux-editor-close-tooltip": "మూసివేయి",
"tux-editor-expand-tooltip": "విస్తరించు",
"tux-editor-message-tools-history": "చరిత్ర",
+ "tux-editor-message-tools-delete": "తొలగించు",
"tux-editor-message-tools-translations": "అన్ని అనువాదాలు",
"tux-editor-loading": "లోడవుతోంది...",
"translate-search-more-languages-info": "ఇంకా $1 {{PLURAL:$1|భాష|భాషలు}}",
diff --git a/MLEB/Translate/i18n/core/tg-cyrl.json b/MLEB/Translate/i18n/core/tg-cyrl.json
index e10e8f2b..0679fe8c 100644
--- a/MLEB/Translate/i18n/core/tg-cyrl.json
+++ b/MLEB/Translate/i18n/core/tg-cyrl.json
@@ -1,7 +1,9 @@
{
"@metadata": {
"authors": [
- "Ibrahim"
+ "Ibrahim",
+ "ToJack",
+ "Vashgird"
]
},
"translate": "Тарҷума",
@@ -28,7 +30,6 @@
"translate-edit-no-information": "''Ин пайғом дорои тавзеҳот нест.\nАгар шумо медонед ин пағом чигуна ё дар куҷо истифода мешавад, шумо метавонед бо изофа кардани тавзеҳот ба ин пайғом ба дигар тарҷумакунандагон кӯмак кунед.''",
"translate-edit-information": "Иттилоот дар мавриди ин пайғом ($1)",
"translate-edit-in-other-languages": "Ҳамин пайғом дар дигар забонҳо",
- "translate-edit-committed": "Тарҷумаи феълӣ дар нармафзор",
"translate-edit-warnings": "Ҳушдор дар мавриди тарҷумаҳои нокомил",
"translate-magic-pagename": "Тарҷумаи густаришёфтаи МедиаВики",
"translate-magic-submit": "Вокашидан",
@@ -42,5 +43,8 @@
"translate-magic-cm-savefailed": "Шикаст дар захира кардан",
"translate-magic-words": "Калимаҳои ҷодуӣ",
"translate-magic-namespace": "Исми фазоҳои ном",
- "translate-checks-parameters": "Параметрҳои зерин истифода нашудаанд: <strong>$1</strong>"
+ "translate-checks-parameters": "Параметрҳои зерин истифода нашудаанд: <strong>$1</strong>",
+ "translate-sidebar-alltrans": "Ба забонҳои дигар",
+ "translate-documentation-language": "ҳуҷатгузории паём",
+ "tux-editor-in-other-languages": "Ба забонҳои дигар"
}
diff --git a/MLEB/Translate/i18n/core/tg-latn.json b/MLEB/Translate/i18n/core/tg-latn.json
index 96fbf697..c01b86b9 100644
--- a/MLEB/Translate/i18n/core/tg-latn.json
+++ b/MLEB/Translate/i18n/core/tg-latn.json
@@ -26,7 +26,6 @@
"translate-edit-definition": "Ta'rifi pajƣom",
"translate-edit-contribute": "hissaguzorī",
"translate-edit-no-information": "''In pajƣom doroi tavzehot nest.\nAgar şumo medoned in paƣom ciguna jo dar kuço istifoda meşavad, şumo metavoned bo izofa kardani tavzehot ba in pajƣom ba digar tarçumakunandagon kūmak kuned.''",
- "translate-edit-committed": "Tarçumai fe'lī dar narmafzor",
"translate-edit-warnings": "Huşdor dar mavridi tarçumahoi nokomil",
"translate-magic-pagename": "Tarçumai gustarişjoftai MediaViki",
"translate-magic-submit": "Vokaşidan",
diff --git a/MLEB/Translate/i18n/core/th.json b/MLEB/Translate/i18n/core/th.json
index 3e65f868..ed73b18d 100644
--- a/MLEB/Translate/i18n/core/th.json
+++ b/MLEB/Translate/i18n/core/th.json
@@ -5,15 +5,26 @@
"Manop",
"Passawuth",
"Woraponboonkerd",
- "Horus"
+ "Horus",
+ "Octahedron80",
+ "Aefgh39622"
]
},
"translate": "แปล",
"translate-desc": "[[Special:Translate|หน้าพิเศษ]]สำหรับแปลมีเดียวิกิและอื่น ๆ",
+ "translate-taskui-export-to-file": "ส่งออกในรูปแบบดั้งเดิม",
+ "translate-taskui-export-as-po": "ส่งออกสำหรับการแปลแบบออฟไลน์",
+ "translate-taction-translate": "แปล",
+ "translate-taction-proofread": "ตรวจทาน",
+ "translate-taction-lstats": "สถิติภาษา",
+ "translate-taction-mstats": "สถิติกลุ่มข้อความ",
+ "translate-taction-export": "ส่งออก",
+ "translate-taction-disabled": "การกระทำนี้ถูกปิดใช้งานบนวิกินี้",
"translate-page-no-such-language": "ใส่รหัสภาษาไม่ถูกต้อง",
"translate-page-no-such-group": "ใส่ชื่อกลุ่มไม่ถูกต้อง",
"translate-page-disabled": "งานแปลภาษานี้ในกลุ่มนี้ได้ปิดใช้งาน\nเหตุผล:\n\n<em>$1</em>",
- "translate-page-settings-legend": "การตั้งค่าต่างๆ",
+ "translate-language-disabled": "การแปลเป็นภาษานี้ถูกปิดใช้งาน",
+ "translate-page-settings-legend": "การตั้งค่า",
"translate-page-group": "กลุ่ม",
"translate-page-language": "ภาษา",
"translate-page-limit": "ไม่เกิน",
@@ -26,24 +37,35 @@
"translate-next": "หน้าถัดไป",
"translate-prev": "หน้าก่อน",
"translate-page-description-legend": "ข้อมูลเกี่ยวกับกลุ่มข้อความ",
+ "translate-page-description-hasoptional": "กลุ่มข้อความนี้มีข้อความทางเลือก\nควรแปลข้อความทางเลือกก็ต่อเมื่อในภาษาของคุณมีกฎพิเศษ อย่างเช่น ไม่มีการใช้วรรค หรือการเขียนชื่อที่ถูกต้อง $1",
+ "translate-page-description-hasoptional-open": "แสดงข้อความทางเลือก",
"translate-page-edit": "แก้ไข",
- "translate-ext-url": "<hr />เว็บไซต์: $1",
- "translate-optional": "(สามารถเลือกได้)",
+ "translate-optional": "(ทางเลือก)",
"translate-ignored": "(เพิกเฉย)",
"translate-edit-title": "แก้ไข \"$1\"",
"translate-edit-definition": "นิยามข้อความต้นฉบับ",
+ "translate-edit-translation": "การแปล",
"translate-edit-contribute": "ช่วยเขียน",
- "translate-edit-no-information": "''ข้อความนี้ไม่มีคำอธิบายการใช้งาน ถ้าคุณทราบว่าข้อความนี้ใช้ตรงส่วนไหนหรือใช้อย่างไร คุณสามารถช่วยเพิ่มคำอธิบายการใช้งานของข้อความนี้ เพื่อเป็นประโยชน์แก่ผู้แปลคนอื่นได้''",
- "translate-edit-information": "ข้อมูลเกี่ยวกับข้อความ \"$2\" ($1)",
- "translate-edit-in-other-languages": "ข้อความ \"$1\" ในภาษาอื่นๆ",
- "translate-edit-committed": "คำแปลปัจจุบันที่ฝังอยู่ในตัวโปรแกรม",
+ "translate-edit-no-information": "<em>ข้อความนี้ไม่มีคำอธิบายการใช้งาน\nถ้าคุณทราบว่าข้อความนี้ใช้ตรงส่วนไหนหรือใช้อย่างไร คุณสามารถช่วยเพิ่มคำอธิบายการใช้งานของข้อความนี้ เพื่อเป็นประโยชน์แก่ผู้แปลคนอื่นได้</em>",
+ "translate-edit-information": "ข้อมูลเกี่ยวกับข้อความ ($1)",
+ "translate-edit-in-other-languages": "ข้อความในภาษาอื่น ๆ",
"translate-edit-warnings": "คำเตือนเกี่ยวกับคำแปลที่ยังไม่สมบูรณ์หรือมีปัญหา",
- "translate-edit-tmsugs": "คำแนะนำจากคำแปลที่ผ่านมา",
+ "translate-edit-tmmatch-source": "ข้อความต้นทางการแปล: $1",
+ "translate-edit-tmmatch": "ตรงกัน $1%",
+ "translate-use-suggestion": "แทนที่การแปลปัจจุบันด้วยคำแนะนํานี้",
+ "translate-edit-nopermission": "คุณต้องมีสิทธิในการแปลเพื่อทำการแปลข้อความ",
+ "translate-edit-askpermission": "ขอรับสิทธิ",
+ "exporttranslations": "ส่งออกการแปล",
+ "translate-export-form-format": "รูปแบบ",
+ "translate-export-invalid-format": "โปรดระบุรูปแบบที่ถูกต้อง",
+ "translate-export-not-supported": "ไม่รองรับการส่งออกการแปล",
+ "translate-export-format-notsupported": "กลุ่มข้อความนี้ไม่รองรับรูปแบบการส่งออกที่ระบุ",
"translate-magic-pagename": "ส่วนเพิ่มเติมของการแปลมีเดียวิกิ",
- "translate-magic-help": "คุณสามารถแปลชื่อหน้าพิเศษต่าง ๆ, ตัวแปรพิเศษ, ชื่อแบบหน้าตา และ ชื่อเนมสเปซ\n\nชื่อหน้าพิเศษและตัวแปรพิเศษสามารถมีคำแปลได้หลายอย่าง\nคำแปลจะแยกโดยการใช้ จุลภาค (,)\nชื่อแบบหน้าตาและเนมสเปซสามารถมีคำแปลได้แค่คำเดียว\n\nในคำแปลชื่อเนมสเปซ <code>คุยเรื่อง$1</code> ต้องระวังเป็นพิเศษ <code>$1</code> จะถูกแทนที่โดยชื่อเว็บไซต์ (เช่น <code>{{ns:project_talk}}</code>)\nถ้าไม่สามารถกระทำการดังกล่าวได้ในภาษาของคุณ กรุณาติดต่อผู้ดูแลระบบขั้นสูง\n\nคุณต้องอยู่ในกลุ่มคนแปลเพื่อที่จะบันทึกข้อมูลได้\nข้อมูลจะไม่ถูกบันทึกตราบใดที่คุณยังไม่กด \"บันทึก\"",
- "translate-magic-module": "โมดูล:",
+ "translate-magic-help": "คุณสามารถแปลชื่อหน้าพิเศษต่าง ๆ, ตัวแปรพิเศษ, ชื่อแบบหน้าตา และ ชื่อเนมสเปซ\n\nชื่อหน้าพิเศษและตัวแปรพิเศษสามารถมีคำแปลได้หลายอย่าง\nคำแปลจะแยกโดยการใช้ จุลภาค (,)\nชื่อแบบหน้าตาและเนมสเปซสามารถมีคำแปลได้แค่คำเดียว\n\nในคำแปลชื่อเนมสเปซ <code>คุยเรื่อง$1</code> ต้องระวังเป็นพิเศษ <code>$1</code> จะถูกแทนที่โดยชื่อเว็บไซต์ (เช่น <code>{{ns:project_talk}}</code>)\nถ้าไม่สามารถกระทำการดังกล่าวได้ในภาษาของคุณ กรุณาแจ้งให้เราทราบในหน้า[[สนับสนุน]]\n\nคุณต้องอยู่ในกลุ่มคนแปลเพื่อที่จะบันทึกข้อมูลได้\nข้อมูลจะไม่ถูกบันทึกตราบใดที่คุณยังไม่กด \"บันทึก\"",
+ "translate-magic-module": "มอดูล:",
"translate-magic-submit": "ดึงข้อมูล",
"translate-magic-cm-export": "ส่งออกมา (export)",
+ "translate-magic-nothing-to-export": "ไม่มีอะไรที่จะส่งออก",
"translate-magic-cm-to-be": "แก้เป็น",
"translate-magic-cm-current": "ปัจจุบัน",
"translate-magic-cm-original": "ต้นฉบับ",
@@ -57,31 +79,60 @@
"translate-magic-notsaved": "การแก้ไขของคุณยังไม่ได้รับการบันทึก!",
"translate-magic-errors": "กรุณาแก้ไขความผิดพลาด{{PLURAL:$1|นี้|เหล่านี้}} ในการแปลภาษา:",
"translate-magic-saved": "การเปลี่ยนแปลงของคุณได้ถูกบันทึกแล้ว",
- "translate-checks-parameters": "{{PLURAL:$2|ตัวแปร|ตัวแปร}}ต่อไปนี้ไม่ได้รับการใช้งาน: <strong>$1</strong>",
+ "translate-checks-parameters": "{{PLURAL:$2|ตัวแปร|ตัวแปร}}ต่อไปนี้ไม่ได้ถูกใช้งาน: <strong>$1</strong>",
"translate-checks-parameters-unknown": "ไม่รู้จัก{{PLURAL:$2|ตัวแปรต่อไปนี้|ตัวแปรต่อไปนี้}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-balance": "จับคู่{{PLURAL:$2|วงเล็บ|วงเล็บ}}ไม่ครบคู่:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-links": "{{PLURAL:$2|ลิงก์|ลิงก์ $2 ลิงก์}}ต่อไปนี้ทำให้เกิดปัญหา:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "{{PLURAL:$2|ลิงก์|ลิงก์ $2 ลิงก์}}ต่อไปนี้ไม่มีอยู่:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-xhtml": "{{PLURAL:$2|tag ต่อไปนี้|tag เหล่านี้}}ไม่ถูกต้อง กรุณาแก้ไขโดยใช้ tag ที่ถูกต้อง:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-plural": "ข้อความต้นฉบับใช้ <nowiki>{{PLURAL:}}</nowiki> ในขณะที่คำแปลไม่ได้ใช้",
+ "translate-checks-plural-forms": "<nowiki>{{PLURAL:}}</nowiki> ถูกให้มา {{PLURAL:$1|1 รูปแบบ|$1 รูปแบบ}} แต่{{PLURAL:$2|มีเพียง 1 รูปแบบ|มีเพียง $2 รูปแบบ}}เท่านั้นที่รองรับ (ยกเว้นรูปแบบ 0= และ 1=)",
+ "translate-checks-plural-dupe": "<nowiki>{{PLURAL:}}</nowiki> มีรูปแบบที่ซ้ำกันในตอนท้าย <nowiki>{{PLURAL:$1|sheep|sheep}}</nowiki> ควรเขียนเป็น <nowiki>{{PLURAL:$1|sheep}}</nowiki>",
"translate-checks-pagename": "namespace ไม่ตรงกับนิยาม (definition) ต้นฉบับ",
"translate-checks-format": "คำแปลนี้ไม่ตรงกับนิยามในต้นฉบับ (definition) หรือ มีไวยากรณ์ (syntax) ที่ไม่ถูกต้อง: $1",
"translate-checks-escape": "เครื่องหมายหลบ (escape) ต่อไปนี้ อาจจะเกิดจากความไม่ตั้งใจ: <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "การนับตัวแปรคือ {{PLURAL:$1|$1}} ซึ่งควรจะเป็น {{PLURAL:$2|$2}}",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> ผิดรูปแบบ",
+ "translate-checks-fudforum-syntax": "ใช้ <nowiki>$1</nowiki> แทน <nowiki>$2</nowiki> ในโครงการนี้",
"translate-pref-nonewsletter": "ไม่รับอีเมลประจำเดือนของเว็บไซต์",
+ "translate-pref-editassistlang": "ภาษาช่วยเหลือ:",
+ "prefs-translate": "ตัวเลือกการแปล",
+ "translate-pref-editassistlang-help": "รายการโค้ดภาษาที่มีจุลภาคคั่นอยู่\nการแปลข้อความในภาษาเหล่านี้จะปรากฏระหว่างที่คุณแปล\nรายการภาษาเริ่มต้นขึ้นอยู่กับภาษาของคุณ",
+ "translate-pref-editassistlang-bad": "โค้ดภาษาไม่ถูกต้องในรายการ:\n<nowiki>$1</nowiki>",
"right-translate": "แก้ไขในส่วนที่ใช้สำหรับแปล",
+ "right-translate-manage": "จัดการกลุ่มข้อความ",
+ "action-translate-manage": "จัดการกลุ่มข้อความ",
+ "right-translate-import": "นำเข้าการแปลออฟไลน์",
+ "action-translate-import": "นำเข้าการแปลออฟไลน์",
+ "right-translate-messagereview": "ตรวจทานการแปล",
+ "action-translate-messagereview": "ตรวจทานการแปล",
+ "right-translate-groupreview": "เปลี่ยนสถานะลำดับงานของกลุ่มข้อความ",
+ "action-translate-groupreview": "เปลี่ยนสถานะลำดับงานของกลุ่มข้อความ",
+ "translate-rcfilters-translations": "การแปล",
+ "translate-rcfilters-translations-only-label": "การแปล",
+ "translate-rcfilters-translations-only-desc": "การเปลี่ยนแปลงที่เกิดขึ้นกับหน้าที่แปลแล้ว",
+ "translate-rcfilters-translations-filter-label": "ไม่ใช่การแปล",
+ "translate-rcfilters-translations-filter-desc": "การเปลี่ยนแปลงทั้งหมดที่ไม่ใช่การแปล",
+ "translate-rcfilters-translations-site-label": "ข้อความไซต์",
+ "translate-rcfilters-translations-site-desc": "การปรับแต่งข้อความไซต์ในเนมสเปซ MediaWiki",
"translate-rc-translation-filter": "กรองงานแปล:",
"translate-rc-translation-filter-no": "ไม่ทำอะไรทั้งสิ้น",
"translate-rc-translation-filter-only": "แสดงงานแปลเท่านั้น",
"translate-rc-translation-filter-filter": "กรองงานแปลออก",
"translate-rc-translation-filter-site": "การเปลี่ยนแปลงในส่วนอื่นของเว็บไซต์ที่ไม่ใช่งานแปล",
"translationstats": "สถิติการแปล",
- "translate-stats-edits": "การแก้ไขต่อหนึ่งวัน",
+ "translate-stats-edits": "การแก้ไข",
"translate-stats-users": "ผู้แปล",
+ "translate-stats-registrations": "การลงทะเบียน",
+ "translate-stats-reviews": "การตรวจทาน",
+ "translate-stats-reviewers": "ผู้ตรวจทาน",
+ "translate-statsf-intro": "คุณสามารถสร้างสถิติอย่างง่ายได้โดยใช้แบบฟอร์มนี้\nค่าทั้งหมดมีขีดจำกัดทั้งบนและล่าง",
"translate-statsf-options": "ตัวปรับแต่งกราฟ",
"translate-statsf-width": "ความกว้างในหน่วยพิกเซล:",
"translate-statsf-height": "ความสูงในหน่วยพิกเซล:",
"translate-statsf-days": "ช่วงเวลานับเป็นวัน:",
- "translate-statsf-start": "ช่วงเวลานับเป็นวัน:",
- "translate-statsf-scale": "ความละเอียด",
+ "translate-statsf-start": "วันที่เริ่มต้น:",
+ "translate-statsf-scale": "ความละเอียด:",
"translate-statsf-scale-months": "เดือน",
"translate-statsf-scale-weeks": "สัปดาห์",
"translate-statsf-scale-days": "วัน",
@@ -90,55 +141,231 @@
"translate-statsf-count-edits": "จำนวนการแก้ไข",
"translate-statsf-count-users": "ผู้แปลที่ขยันขันแข็ง",
"translate-statsf-count-registrations": "ผู้ใช้ใหม่",
+ "translate-statsf-count-reviews": "การตรวจทานการแปล",
+ "translate-statsf-count-reviewers": "ผู้ตรวจทาน",
"translate-statsf-language": "รายการรหัสภาษา ใช้เครื่องหมายลูกน้ำ (comma) เป็นตัวคั่น:",
"translate-statsf-group": "รายการรหัสของกลุ่ม ใช้เครื่องหมายลูกน้ำ (comma) เป็นตัวคั่น:",
"translate-statsf-submit": "แสดงตัวอย่าง",
- "translate-tag-category": "หน้าที่สามารถแปลได้",
- "translate-tag-page-desc": "คำแปลของหน้าวิกิ [[$2|$1]].",
- "translate-sidebar-alltrans": "คำแปลในภาษาอื่น ๆ",
- "translations": "คำแปลทั้งหมด",
+ "translate-tag-page-desc": "คำแปลจากภาษา$3 ($4) ของหน้าวิกิ [[$2|$1]].",
+ "translate-sidebar-alltrans": "ในภาษาอื่น ๆ",
+ "translations": "คำแปลทุกภาษา",
"translations-summary": "ใส่ชื่อของข้อความลงด้านล่างนี้ เพื่อแสดงคำแปลที่มีทั้งหมด",
"translate-translations-no-message": "\"$1\" เป็นข้อความที่ไม่สามารถแปลได้",
"translate-translations-none": "ไม่มีคำแปลสำหรับ \"$1\"",
+ "translate-translations-count": "ค้นพบ $1 {{PLURAL:$1|การแปล|การแปล}}",
"translate-translations-fieldset-title": "ข้อความ",
"translate-translations-messagename": "ชื่อ:",
"translate-translations-project": "โครงการ:",
"translate-translations-including-no-param": "โปรดระบุคีย์ของข้อความในตัวแปรหน้าย่อย (subpage parameter) ให้ถูกต้อง",
+ "translate-translations-history-short": "ป",
"languagestats": "สถิติภาษา",
"languagestats-summary": "หน้านี้แสดงค่าสถิติการแปลของทุกกลุ่มข้อความในภาษาหนึ่งๆ",
+ "messagegroupstats-summary": "หน้านี้แสดงสถิติกลุ่มข้อความ",
"languagestats-stats-for": "สถิติการแปลสำหรับภาษา$1 ($2)",
"languagestats-recenttranslations": "การแปลล่าสุด",
+ "translate-langstats-incomplete": "สถิติบางรายการบนหน้านี้ไม่สมบูรณ์ โปรดโหลดใหม่เพื่อรับสถิติเพิ่มเติม",
+ "translate-langstats-expand": "ขยาย",
+ "translate-langstats-collapse": "ยุบ",
+ "translate-langstats-expandall": "ขยายทั้งหมด",
+ "translate-langstats-collapseall": "ยุบทั้งหมด",
"translate-language-code": "รหัสภาษา",
"translate-language-code-field-name": "รหัสภาษา:",
"translate-suppress-complete": "ไม่แสดงกลุ่มของข้อความที่แปลเสร็จสมบูรณ์แล้ว",
+ "translate-ls-noempty": "ไม่แสดงกลุ่มของข้อความที่ยังไม่ได้แปล",
"translate-language": "ภาษา",
"translate-total": "ข้อความทั้งหมด",
"translate-untranslated": "ไม่ได้แปล",
"translate-percentage-complete": "เสร็จสมบูรณ์",
"translate-percentage-fuzzy": "ล้าสมัย",
- "supportedlanguages-translators": "{{PLURAL:$2|ผู้แปล|ผู้แปล}}: คุณ $1",
+ "translate-languagestats-overall": "กลุ่มข้อความทั้งหมด",
+ "translate-ls-submit": "แสดงสถิติ",
+ "translate-ls-column-group": "กลุ่มข้อความ",
+ "translate-mgs-pagename": "สถิติกลุ่มข้อความ",
+ "translate-mgs-fieldset": "การตั้งค่าการแสดงผล",
+ "translate-mgs-group": "กลุ่มข้อความ:",
+ "translate-mgs-nocomplete": "ไม่ต้องแสดงภาษาที่มีการแปลเสร็จสมบูรณ์",
+ "translate-mgs-noempty": "ไม่ต้องแสดงภาษาที่ยังไม่ได้มีการแปลใด ๆ",
+ "translate-mgs-submit": "แสดงสถิติ",
+ "translate-mgs-column-language": "ภาษา",
+ "translate-mgs-totals": "{{PLURAL:$1|ภาษา}}ทั้งหมด $1 ภาษาด้วยกัน",
+ "translate-mgs-invalid-group": "กลุ่ม $1 ที่ระบุไม่มีอยู่",
+ "translate-mgs-nothing": "ไม่มีอะไรที่จะแสดงสำหรับสถิติที่ร้องขอ",
+ "supportedlanguages": "ภาษาที่รองรับ",
+ "supportedlanguages-summary": "หน้านี้แสดงรายการภาษาทั้งหมดที่ {{SITENAME}} รองรับ\nพร้อมชื่อผู้แปลที่ีทำงานแปลภาษานั้นๆ\nโดยชื่อผู้แปลจะปรากฏเป็นขนาดใหญ่ ถ้าผู้แปลคนนั้นร่วมแปลมาก\nสีขีดเส้นใต้บ่งบอกว่าผู้แปลได้ทำงานที่้นี่ครั้งล่าสุดเมื่อใด",
+ "supportedlanguages-colorlegend": "คำอธิบายสี: แปลครั้งล่าสุดเมื่อ $1 วันที่ผ่านมา",
+ "supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|ผู้แปล}}|ผู้แปล}}: คุณ $1",
"supportedlanguages-recenttranslations": "การแปลล่าสุด",
+ "supportedlanguages-count": "รวมทั้งหมด $1 {{PLURAL:$1|ภาษา}}",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|การแก้ไข}} - แก้ไขล่าสุดเมื่อ $3 {{PLURAL:$3|วัน}}ที่ผ่านมา",
+ "abusefilter-edit-builder-vars-translate-source-text": "ข้อความต้นทางของหน่วยการแปล",
"translate-save": "บันทึก ($1)",
- "translate-jssti-add": "เพิ่มลงในรายการ",
- "translate-manage-intro-other": "ด้านล่างนี้คือรายการความเปลี่ยนแปลงของงานแปลทั้งหมดในภาษา $1\n<br />กรุณาตรวจสอบความเปลี่ยนแปลงและเลือกสิ่งที่ต้องการจะทำต่อไปในงานแปลแต่ละอัน\n<br />ถ้าคุณเลือกที่จะไม่สนใจการเปลี่ยนแปลงนี้ มันจะถูกลบล้างในการส่งออกครั้งต่อไป",
+ "translate-jssti-add": "เพิ่มลงในรายชื่อ",
+ "managemessagegroups": "การจัดการกลุ่มภาษา",
+ "translate-smg-notallowed": "คุณไม่ได้รับอนุญาตให้ดำเนินการนี้",
+ "translate-smg-nochanges": "ไม่มีการเปลี่ยนแปลงที่จะประมวลผล",
+ "translate-smg-submit": "ส่งการเปลี่ยนแปลงเพื่อประมวลผล",
+ "translate-smg-submitted": "นิยามข้อความได้ถูกปรับปรุงแล้ว การเปลี่ยนแปลงกำลังถูกประมวลผลในเบื้องหลัง",
+ "translate-smg-more": "จะมีการเปลี่ยนแปลงที่จะประมวลผลเพิ่มเติมหลังจากที่ส่งการเปลี่ยนแปลงเหล่านี้แล้ว",
+ "translate-smg-left": "เนื้อหาข้อความในวิกิ",
+ "translate-smg-right": "การเปลี่ยนแปลงที่ใกล้จะมาถึง",
+ "translate-manage-import-diff": "ข้อความ $1 | การกระทำ: $2",
+ "translate-manage-import-new": "ข้อความใหม่ $1",
+ "translate-manage-import-deleted": "ข้อความที่ลบแล้ว $1",
+ "translate-manage-action-import": "นำเข้า",
+ "translate-manage-action-conflict": "นำเข้าและทำเครื่องหมายว่าคลุมเครือ",
+ "translate-manage-action-ignore": "ละเว้น",
+ "translate-manage-action-fuzzy": "นำเข้าและทำเครื่องหมายว่าการแปลคลุมเครือ",
+ "translate-manage-nochanges": "ไม่มีการเปลี่ยนแปลงในนิยามข้อความสำหรับกลุ่มนี้",
+ "translate-manage-nochanges-other": "ไม่มีการเปลี่ยนแปลงใดๆ สำหรับภาษานี้\nใช้ลิงก์ด้านล่างเพื่อกลับไปใช้มุมมองรายละเอียดกลุ่ม",
+ "translate-manage-toolong": "หมดเวลาการประมวลผลสูงสุด $1 {{PLURAL:$1|วินาที}}แล้ว\nโปรดส่งแบบฟอร์มใหม่เพื่อดำเนินการประมวลผลต่อไป",
+ "translate-manage-import-summary": "กำลังนำเข้ารุ่นใหม่จากแหล่งข้อมูลภายนอก",
+ "translate-manage-conflict-summary": "กำลังนำเข้ารุ่นใหม่จากแหล่งข้อมูลภายนอก\nโปรดตรวจสอบ",
+ "translate-manage-submit": "ดำเนินการ",
+ "translate-manage-intro-other": "ด้านล่างนี้คือรายการความเปลี่ยนแปลงของงานแปลทั้งหมดในภาษา $1\nกรุณาตรวจสอบความเปลี่ยนแปลงและเลือกสิ่งที่ต้องการจะทำต่อไปในงานแปลแต่ละอัน\nถ้าคุณเลือกที่จะไม่สนใจการเปลี่ยนแปลงนี้ มันจะถูกลบล้างในการส่งออกครั้งต่อไป",
+ "translate-manage-import-ok": "นำเข้าแล้ว: $1",
+ "translate-manage-import-done": "การนำเข้าเสร็จสมบูรณ์!",
"importtranslations": "นำเข้างานแปล",
"translate-import-from-local": "อัพโหลดไฟล์:",
"translate-import-load": "โหลดไฟล์",
"translate-import-err-dl-failed": "ไม่สามารถดีงไฟล์นี้ได้:\n<br />$1",
- "translate-import-err-ul-failed": "อัพโหลดไฟล์ไม่สำเร็จ",
+ "translate-import-err-ul-failed": "การอัปโหลดไฟล์ล้มเหลว",
"translate-import-err-invalid-title": "ชื่อของไฟล์ที่กำหนดมา: <nowiki>$1</nowiki> ไม่ถูกต้อง",
"translate-import-err-no-such-file": "ไม่ปรากฎไฟล์ <nowiki>$1</nowiki> หรือไฟล์นี้ไม่ได้ถูกอัพโหลดเข้ามา",
+ "translate-import-err-stale-group": "ไฟล์ที่เป็นสมาชิกของกลุ่มข้อความนี้ไม่มีอยู่",
"translate-import-err-no-headers": "ไฟล์นี้ไม่ใช่ไฟล์ Gettext ในส่วนเพิ่มเติมการแปลภาษาที่ดี:\n<br />ไม่สามารถกำหนดกลุ่มและภาษาจากส่วนต้นของไฟล์ได้",
"translate-import-err-warnings": "ไฟล์ไม่ได้ถูกสร้างโดยปกติ\n<br />ตรวจสอบให้แน่ใจว่าตัวแก้ไขของคุณไม่ได้ลบส่วนของ msgctxt ออกไป\n<br />รายละเอียด: $1",
+ "translate-js-summary": "สรุป:",
+ "translate-js-save": "บันทึก",
"translate-js-next": "บันทึกและแปลต่อ",
- "translate-js-nonext": "นี่เป็นข้อความล่าสุดในหน้านี้",
"translate-js-skip": "ข้าม",
- "translate-js-save-failed": "ไม่สามารถบันทึกได้ กรุณาติดต่อเจ้าหน้าที่",
"translate-js-history": "ประวัติการแปล",
+ "translate-js-support": "ถามคำถาม",
+ "translate-js-support-title": "ขอความช่วยเหลือ ถ้ามีข้อมูลไม่เพียงพอที่จะแปลข้อความนี้ให้ถูกต้อง",
+ "translate-js-support-unsaved-warning": "คุณมีการแปลที่ยังไม่ได้บันทึก",
+ "translate-gs-pos": "ตำแหน่ง",
+ "translate-gs-code": "โค้ด",
"translate-gs-continent": "ทวีป",
"translate-gs-speakers": "จำนวนผู้ใช้",
"translate-gs-score": "คะแนน",
"translate-gs-total": "รวม",
"translate-gs-avgscore": "คะแนนเฉลี่ย",
- "translate-documentation-language": "เอกสารกำกับสาร"
+ "translate-documentation-language": "เอกสารกำกับสาร",
+ "translate-searchprofile": "การแปล",
+ "translate-searchprofile-tooltip": "ค้นหาจากการแปลทั้งหมด",
+ "translate-searchprofile-note": "ตัวเลือกการค้นหาเพิ่มเติมสามารถใช้ได้ด้วย[$1 การค้นหาการแปล]",
+ "translate-search-languagefilter": "ตัวกรองตามภาษา:",
+ "translate-search-nofilter": "ไม่มีการกรอง",
+ "log-name-translationreview": "บันทึกการตรวจทานการแปล",
+ "log-description-translationreview": "บันทึกการตรวจทานการแปลและกลุ่มข้อความทั้งหมด",
+ "logentry-translationreview-message": "$1 {{GENDER:$2|ตรวจทาน}}การแปล $3 แล้ว",
+ "logentry-translationreview-group": "$1 {{GENDER:$2|เปลี่ยน}}สถานะการแปลภาษา$4ของหน้า $3 จาก $6 เป็น $7",
+ "group-translate-sandboxed": "ผู้แปลที่ยังไม่ได้อนุมัติ",
+ "group-translate-sandboxed-member": "{{GENDER:$1|ผู้แปลที่ยังไม่ได้อนุมัติ}}",
+ "right-translate-sandboxmanage": "จัดการผู้ใช้แบบ Sandbox",
+ "action-translate-sandboxmanage": "จัดการผู้ใช้แบบ sandbox",
+ "translate-workflow-state-": "(ไม่ได้ตั้งค่า)",
+ "translate-workflowstatus": "สถานะ: $1",
+ "translate-workflow-set-doing": "กำลังตั้งค่า...",
+ "translate-workflow-autocreated-summary": "การสร้างหน้าอัตโนมัติสำหรับสถานะลำดับงาน $1",
+ "translate-stats-workflow": "สถานะ",
+ "translate-workflowgroup-label": "สถานะลำดับงาน",
+ "translate-workflowgroup-desc": "กลุ่มข้อความนี้แสดงสถานะลำดับงานการแปล\nสถานะต่างๆ จะถูกกำหนดในตัวแปรการกำหนดค่า $wgTranslateWorkflowStates",
+ "translate-dynagroup-recent-label": "การแปลล่าสุด",
+ "translate-dynagroup-recent-desc": "กลุ่มข้อความนี้แสดงการแปลล่าสุดทั้งหมดเป็นภาษานี้\nมีประโยชน์ที่สุดสำหรับงานตรวจทาน",
+ "translate-dynagroup-additions-label": "การเพิ่มเติมล่าสุด",
+ "translate-dynagroup-additions-desc": "กลุ่มข้อความนี้แสดงข้อความใหม่และข้อความที่มีการเปลี่ยนแปลง",
+ "translate-msggroupselector-projects": "กลุ่มข้อความ",
+ "translate-msggroupselector-search-placeholder": "ค้นหากลุ่ม",
+ "translate-msggroupselector-search-all": "ทั้งหมด",
+ "translate-msggroupselector-search-recent": "ล่าสุด",
+ "translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|กลุ่มย่อย}}",
+ "tux-languageselector": "แปลเป็น",
+ "tux-tab-all": "ทั้งหมด",
+ "tux-tab-untranslated": "ยังไม่ได้แปล",
+ "tux-tab-outdated": "ล้าสมัย",
+ "tux-tab-translated": "แปลแล้ว",
+ "tux-tab-unproofread": "ยังไม่ได้ตรวจทาน",
+ "tux-edit": "แก้ไข",
+ "tux-status-optional": "ทางเลือก",
+ "tux-status-fuzzy": "ล้าสมัย",
+ "tux-status-proofread": "ตรวจทานแล้ว",
+ "tux-status-translated": "แปลแล้ว",
+ "tux-status-saving": "กำลังบันทึก...",
+ "tux-status-unsaved": "ยังไม่บันทึก",
+ "tux-save-unknown-error": "เกิดข้อผิดพลาดที่ไม่รู้จัก",
+ "tux-editor-placeholder": "การแปลของคุณ",
+ "tux-editor-editsummary-placeholder": "สรุปทางเลือก",
+ "tux-editor-paste-original-button-label": "วางข้อความต้นฉบับ",
+ "tux-editor-discard-changes-button-label": "ละทิ้งการเปลี่ยนแปลง",
+ "tux-editor-save-button-label": "บันทึกการแปล",
+ "tux-editor-skip-button-label": "ข้ามไปข้อความถัดไป",
+ "tux-editor-cancel-button-label": "ยกเลิก",
+ "tux-editor-confirm-button-label": "ยืนยันการแปล",
+ "tux-editor-proofread-button-label": "ทำเครื่องหมายว่าตรวจทานแล้ว",
+ "tux-editor-shortcut-info": "กด \"$1\" เพื่อบันทึก หรือ \"$2\" เพื่อข้ามไปยังข้อความถัดไป หรือ \"$4\" เพื่อเขียนข้อความสรุป หรือ \"$3\" สำหรับทางลัดอื่น ๆ",
+ "tux-editor-edit-desc": "แก้ไขคำอธิบายการใช้งาน",
+ "tux-editor-add-desc": "เพิ่มคำอธิบายการใช้งาน",
+ "tux-editor-suggestions-title": "คำแนะนำ",
+ "tux-editor-in-other-languages": "ในภาษาอื่น ๆ",
+ "tux-editor-need-more-help": "ต้องการความช่วยเหลือเพิ่มเติมหรือไม่",
+ "tux-editor-ask-help": "ถามเพื่อดูข้อมูลเพิ่มเติม",
+ "tux-editor-tm-match": "ตรงกัน $1%",
+ "tux-warnings-more": "{{PLURAL:$1|เพิ่มเติม $1 รายการ}}",
+ "tux-warnings-hide": "ซ่อน",
+ "tux-editor-save-failed": "การบันทึกการแปลล้มเหลว: $1",
+ "tux-editor-n-uses": "ใช้แล้ว $1 {{PLURAL:$1|ครั้ง|ครั้ง}}",
+ "tux-editor-message-desc-more": "ดูเพิ่มขึ้น",
+ "tux-editor-message-desc-less": "ดูน้อยลง",
+ "tux-editor-clear-translated": "ซ่อนที่แปลแล้ว",
+ "tux-editor-proofreading-mode": "ตรวจทาน",
+ "tux-editor-translate-mode": "รายชื่อ",
+ "tux-editor-proofreading-hide-own-translations": "ซ่อนการแปลของคุณ",
+ "tux-editor-proofreading-show-own-translations": "แสดงการแปลของคุณ",
+ "tux-proofread-action-tooltip": "ทำเครื่องหมายว่าตรวจทานแล้ว",
+ "tux-proofread-edit-label": "แก้ไข",
+ "tux-editor-page-mode": "หน้า",
+ "tux-editor-outdated-warning": "การแปลนี้อาจจำเป็นต้องมีการปรับปรุง",
+ "tux-editor-outdated-warning-diff-link": "แสดงความแตกต่าง",
+ "tux-editor-doc-editor-placeholder": "คำอธิบายการใช้งานข้อความ",
+ "tux-editor-doc-editor-save": "บันทึกคำอธิบายการใช้งาน",
+ "tux-editor-doc-editor-cancel": "ยกเลิก",
+ "tux-messagetable-more-messages": "{{PLURAL:$1|ข้อความ|ข้อความ}}เพิ่มเติม $1 รายการ",
+ "tux-messagetable-loading-messages": "กำลังโหลด{{PLURAL:$1|ข้อความ|ข้อความ}}...",
+ "tux-message-filter-placeholder": "กรองรายการ",
+ "tux-message-filter-result": "ค้นพบ $1 {{PLURAL:$1|ผลลัพธ์|ผลลัพธ์}}สำหรับ \"$2\"",
+ "tux-message-filter-advanced-button": "การค้นหาขั้นสูง",
+ "tux-message-filter-optional-messages-label": "ข้อความทางเลือก",
+ "tux-proofread-translated-by-self": "แปลแล้วโดยคุณ",
+ "tux-empty-list-all": "กลุ่มข้อความนี้ว่างเปล่า",
+ "tux-empty-list-all-guide": "เลือกกลุ่มข้อความอื่นเพื่อแปล",
+ "tux-translate-page-no-such-group": "<strong>ไม่มีกลุ่มที่ระบุไว้</strong> โปรดเลือกกลุ่มข้อความอื่น",
+ "tux-empty-list-translated": "ไม่มีข้อความที่แปลแล้ว",
+ "tux-empty-list-translated-guide": "คุณสามารถช่วยแปลได้",
+ "tux-empty-list-translated-action": "แปล",
+ "tux-empty-no-messages-to-display": "ไม่มีข้อความที่จะแสดง",
+ "tux-empty-there-are-optional": "มีข้อความทางเลือกที่ไม่ปรากฏอยู่ในรายการนี้",
+ "tux-empty-show-optional-messages": "แสดงข้อความทางเลือก",
+ "tux-empty-no-outdated-messages": "ไม่มีข้อความที่ล้าสมัย",
+ "tux-empty-nothing-to-proofread": "ไม่มีข้อความให้ตรวจทาน",
+ "tux-empty-you-can-help-providing": "คุณสามารถช่วยเขียนการแปลใหม่ได้",
+ "tux-empty-nothing-new-to-proofread": "ไม่มีข้อความใหม่ให้ตรวจทาน",
+ "tux-empty-you-can-review-already-proofread": "คุณสามารถตรวจทานการแปลที่ถูกตรวจทานไปแล้วโดยคนอื่นๆ ได้",
+ "tux-empty-list-other": "ไม่มีข้อความให้แปล",
+ "tux-empty-list-other-guide": "คุณสามารถช่วยตรวจทานการแปลที่มีอยู่ได้",
+ "tux-empty-list-other-action": "ตรวจทานการแปล",
+ "tux-empty-list-other-link": "แสดงข้อความทั้งหมด",
+ "tux-editor-close-tooltip": "ปิด",
+ "tux-editor-expand-tooltip": "ขยาย",
+ "tux-editor-collapse-tooltip": "ยุบ",
+ "tux-editor-message-tools-show-editor": "แสดงในตัวแก้ไขวิกิ",
+ "tux-editor-message-tools-history": "ประวัติ",
+ "tux-editor-message-tools-delete": "ลบ",
+ "tux-editor-message-tools-translations": "คำแปลทุกภาษา",
+ "tux-editor-loading": "กำลังโหลด...",
+ "translate-search-more-languages-info": "{{PLURAL:$1|ภาษา}}เพิ่มเติม $1 ภาษา",
+ "translate-statsbar-tooltip": "แปลแล้ว $1%, ตรวจทานแล้ว $2%",
+ "translate-statsbar-tooltip-with-fuzzy": "แปลแล้ว $1%, ตรวจทานแล้ว $2%, ล้าสมัย $3%",
+ "translate-search-more-groups-info": "$1 {{PLURAL:$1|กลุ่ม}}เพิ่มเติม",
+ "translate-ulsdep-title": "การกำหนดค่าผิดพลาด",
+ "tux-nojs": "เครื่องมือนี้ไม่สามารถทำงานได้โดยไม่มี JavaScript JavaScript อาจถูกปิดใช้งาน ไม่สามารถทำงานได้ หรือเบราว์เซอร์นี้ไม่รองรับ"
}
diff --git a/MLEB/Translate/i18n/core/tk.json b/MLEB/Translate/i18n/core/tk.json
index 6ee381dc..fcd43cea 100644
--- a/MLEB/Translate/i18n/core/tk.json
+++ b/MLEB/Translate/i18n/core/tk.json
@@ -8,8 +8,6 @@
},
"translate": "Terjime",
"translate-desc": "Mediawikini we ýenekileri terjime etmek üçin [[Special:Translate|ýörite sahypa]]",
- "translate-taskui-view": "Ähli habarlary görkez",
- "translate-taskui-untranslated": "Terjime edilmedik habarlary görkez",
"translate-page-settings-legend": "Ileri tutmalar",
"translate-page-group": "Topar",
"translate-page-language": "Dil",
diff --git a/MLEB/Translate/i18n/core/tl.json b/MLEB/Translate/i18n/core/tl.json
index d6e3e115..2291b21c 100644
--- a/MLEB/Translate/i18n/core/tl.json
+++ b/MLEB/Translate/i18n/core/tl.json
@@ -2,16 +2,12 @@
"@metadata": {
"authors": [
"AnakngAraw",
- "Jewel457"
+ "Jewel457",
+ "Jojit fb"
]
},
"translate": "Isalinwika",
"translate-desc": "[[Special:Translate|Natatanging pahina]] para sa pagsasalinwika ng MediaWiki at lampas pa",
- "translate-taskui-view": "Ipakita ang lahat ng mga mensahe",
- "translate-taskui-untranslated": "Ipakita ang mga mensaheng hindi pa nasasalinwika",
- "translate-taskui-optional": "Ipakita ang mga mensaheng maaaring wala naman",
- "translate-taskui-acceptqueue": "Mga mensaheng matatanggap ko lamang",
- "translate-taskui-reviewall": "Suriin ang lahat ng mga salinwika",
"translate-taskui-export-to-file": "Iluwas na nasa katutubong anyo",
"translate-taskui-export-as-po": "Iluwas para sa salinwikang hindi nakaugnay sa internet",
"translate-taction-translate": "Isalinwika",
@@ -41,7 +37,6 @@
"translate-page-description-hasoptional": "Ang pangkat na ito ng mensahe ay naglalaman ng mga mensaheng opsiyonal.\nAng mga mensaheng pang-opsiyon ay nararapat na isalinwika lang kapag ang wika mo ay mayroong natatanging mga pangangailangan\nkatulad ng hindi paggamit ng mga patlang o transliterasyon ng mga pangalang pantangi. $1",
"translate-page-description-hasoptional-open": "Ipakita ang mga mensaheng maaaring wala naman.",
"translate-page-edit": "baguhin",
- "translate-ext-url": "<hr />Websayt: $1",
"translate-optional": "(maaaring wala nito)",
"translate-ignored": "(binalewala)",
"translate-edit-title": "Baguhin ang \"$1\"",
@@ -51,9 +46,7 @@
"translate-edit-no-information": "''Walang kasulatan ang mensaheng ito.\nKung alam mo kung saan o paano ginagamit ang mensaheng ito, makakatulong ka sa iba pang mga tagapagsalinwika sa pamamagitan ng pagdaragdag ng kasulatan sa mensaheng ito.''",
"translate-edit-information": "Kabatiran hinggil sa mensahe ($1)",
"translate-edit-in-other-languages": "Mensahe na nasa ibang mga wika",
- "translate-edit-committed": "Pangkasalukuyang salinwikang nasa sopwer",
"translate-edit-warnings": "Mga babala hinggil sa hindi pa ganap na mga salinwika",
- "translate-edit-tmsugs": "Mga mungkahi mula sa alaala ng salinwika",
"translate-edit-tmmatch-source": "Teksto ng pinagmulan ng salinwika: $1",
"translate-edit-tmmatch": "$1% tumugma",
"translate-use-suggestion": "Palitan ang kasulukuyang salinwika ng ganitong mungkahi.",
@@ -134,7 +127,6 @@
"translate-statsf-language": "Talaan ng kodigo ng mga wikang pinaghihiwahiwalay ng mga kuwit:",
"translate-statsf-group": "Talaan ng kodigo ng mga pangkat na pinaghiwahiwalay ng mga kuwit:",
"translate-statsf-submit": "Paunang tingin",
- "translate-tag-category": "Maisasalinwikang mga pahina",
"translate-tag-page-desc": "Salinwika ng pahina ng wiking [[$2|$1]].",
"translate-sidebar-alltrans": "Sa iba pang mga wika",
"translations": "Lahat ng mga salinwika",
@@ -209,14 +201,13 @@
"translate-manage-toolong": "Lumampas na sa pinakamataas na panahon ng pagsasagawa na $1 {{PLURAL:$1|segundo|mga segundo}}.\nMangyaring ipasang muli ang pormularyo upang magpatuloy sa pagsasagawa.",
"translate-manage-import-summary": "Nag-aangkat ng isang bagong bersyon mula sa pinagmumulang nasa labas",
"translate-manage-conflict-summary": "Nag-aangkat ng isang bagong bersyon mula sa pinagmumulang nasa labas.\nPakisuri.",
- "translate-manage-fuzzy-summary": "Nabago na ang kahulugan ng mensahe",
"translate-manage-submit": "Isakatuparan",
"translate-manage-intro-other": "Nasa ibaba ang talaan ng mga pagbabago sa salinwika sa wikang $1.\nPakisuri ang mga pagbabago at pumili ng galaw na nais mong gawin para sa bawat salinwika.\nKung pinili mong huwag pansinin ang mga pagbabago, pangingibabawan sila sa susunod na pagluluwas.",
"translate-manage-import-ok": "Inangkat na bagong bersyon ng pahinang $1.",
"translate-manage-import-done": "Lahat nagawa na!",
"importtranslations": "Mag-angkat ng mga salinwika",
- "translate-import-from-local": "Karga ng katutubong talaksan:",
- "translate-import-load": "Ikarga ang talaksan",
+ "translate-import-from-local": "Lokal na file na i-upload",
+ "translate-import-load": "Ikarga ang file",
"translate-import-err-dl-failed": "Hindi nasalok ang talaksang: $1",
"translate-import-err-ul-failed": "Hindi matagumpay ang pagkarga ng talaksan",
"translate-import-err-invalid-title": "Hindi tanggap ang ibinigay na pangalan ng talaksang <nowiki>$1</nowiki>.",
@@ -227,9 +218,7 @@
"translate-js-summary": "Buod:",
"translate-js-save": "Itala",
"translate-js-next": "Susunod na sasagipin at bubuksan",
- "translate-js-nonext": "Ito ang huling mensahe sa pahinang ito.",
"translate-js-skip": "Lumaktaw papunta sa susunod",
- "translate-js-save-failed": "Nabigo ang pagsagip. Mangyaring paki-ulat ang kamaliang ito.",
"translate-js-history": "Kasaysayan ng salinwika",
"translate-js-support": "Itanong ang katanungan",
"translate-js-support-title": "Humingi ng tulong kung walang sapat na kabatiran upang maisalinwika ng wasto ang mensaheng ito.",
@@ -248,40 +237,17 @@
"translate-searchprofile-tooltip": "Maghanap mula sa lahat ng mga salinwika",
"translate-search-languagefilter": "Salain ayon sa wika:",
"translate-search-nofilter": "Walang pagsasala",
- "translate-messagereview-submit": "Tanggapin",
- "translate-messagereview-progress": "Tinatanggap...",
- "translate-messagereview-failure": "Tinatanggap... nabigo: $1",
- "translate-messagereview-done": "Tinanggap",
- "translate-messagereview-reviews": "Tinanggap ng {{PLURAL:$1|isang tagagamit|$1 mga tagagamit}}",
- "translate-messagereview-reviewswithyou": "Tinanggap {{PLURAL:$1|mo|ng $1 mga tagagamit na kabilang ka}}",
- "api-error-invalidrevision": "Hindi natagpuan ang salinwika",
- "api-error-unknownmessage": "Hindi natagpuan ang mensahe",
- "api-error-fuzzymessage": "Minarkahan ang salinwika bilang malabo",
- "api-error-owntranslation": "Hindi mo maaaring tanggapin ang sarili mong mga pagsasalinwika",
- "translate-messagereview-no-fuzzy": "Hindi maaaring tanggapin ang mga salinwikang malabo.",
- "translate-messagereview-no-own": "Hindi mo maaaring tanggapin ang sarili mong mga pagsasalinwika.",
- "translate-messagereview-doit": "Tanggapin ang salinwikang ito bilang isang wastong pagsasalinwika.",
- "group-translate-proofr.css": "/* Ang inilagay na Mga Pilas ng Estilong Lumalagaslas (Cascading Style Sheets o CSS) dito ay makakaapekto lamang sa mga manunuri ng salinwika */",
- "group-translate-proofr.js": "/* Ang JavaScript o JS na inilagay dito ay makakaapekto lamang sa mga manunuri ng salinwika */",
"log-name-translationreview": "Tala ng pagsuri ng salinwika",
"log-description-translationreview": "Tala ng lahat ng mga pagsusuri ng mga salinwika at mga pangkat ng mensahe.",
"logentry-translationreview-message": "{{GENDER:$2|Tinanggap}} ni $1 ang salinwika ng $3",
"translate-workflow-state-": "(huwag itakda)",
"translate-workflowstatus": "Katayuan: $1",
- "translate-workflow-set-do": "Itakda",
"translate-workflow-set-doing": "Itinatakda...",
- "translate-workflow-set-done": "Naitakda na!",
- "translate-workflow-set-error-alreadyset": "Ang hiniling na katayuan ay kahawig ng kasalukuyang kalagayan.",
"translate-workflow-autocreated-summary": "Kusang paglikha ng pahina para sa katayuang $1 ng daloy ng paggawa",
"translate-stats-workflow": "Katayuan",
"translate-workflowgroup-label": "Mga katayuan ng paggawa",
"translate-workflowgroup-desc": "Ipinapakita ng pangkat ng mensaheng ito ang mga katayuan ng paggawa ng salinwika.\nAng mga katayuan ay inilalarawan sa kaayusan ng pagkakaiba na $wgTranslateWorkflowStates.",
"translate-dynagroup-recent-label": "Kamakailang mga salinwika",
"translate-dynagroup-recent-desc": "Nagpapakita ang pangkat na ito ng mensahe ng lahat ng kamakailang mga pagsasalinwika papunta sa wikang ito.\nPinaka nakakatulong para sa mga gawain ng pagwawasto.",
- "translate-dynagroup-by": "Salinwikang ginawa ni {{GENDER:$1|$1}}",
- "translate-dynagroup-byc": "Salinwikang ginawa ni {{GENDER:$1|$1}} ($2)",
- "translate-dynagroup-last": "Pinakahuling pagbago ni {{GENDER:$1|$1}}",
- "translate-dynagroup-lastc": "Pinakahuling pagbago ni {{GENDER:$1|$1}} ($2)",
- "translate-gethelp": "Tulong",
"tux-editor-message-tools-delete": "Burahin"
}
diff --git a/MLEB/Translate/i18n/core/tly.json b/MLEB/Translate/i18n/core/tly.json
index ff41d95b..ba4cd25e 100644
--- a/MLEB/Translate/i18n/core/tly.json
+++ b/MLEB/Translate/i18n/core/tly.json
@@ -12,6 +12,5 @@
"translate-page-edit": "сәрост кардеј",
"translate-edit-translation": "Пегордыније",
"translate-magic-cm-current": "Есәтнә",
- "translate-magic-cm-save": "Огәте",
- "translate-gethelp": "Арајиш"
+ "translate-magic-cm-save": "Огәте"
}
diff --git a/MLEB/Translate/i18n/core/tr.json b/MLEB/Translate/i18n/core/tr.json
index cee98f2a..a5810570 100644
--- a/MLEB/Translate/i18n/core/tr.json
+++ b/MLEB/Translate/i18n/core/tr.json
@@ -13,16 +13,15 @@
"Srhat",
"Suelnur",
"Vito Genovese",
- "Sayginer"
+ "Sayginer",
+ "McAang",
+ "Kumkumuk",
+ "Bulgu",
+ "TmY e12"
]
},
"translate": "Çevir",
"translate-desc": "MediaWiki'yi ve ötesini çevirmek için [[Special:Translate|özel sayfa]]",
- "translate-taskui-view": "Bütün iletileri göster",
- "translate-taskui-untranslated": "Çevrilmeyen iletileri göster",
- "translate-taskui-optional": "İsteğe bağlı iletileri göster",
- "translate-taskui-acceptqueue": "Yalnızca incelendi olarak işaretlenenleri kabul edebilirim",
- "translate-taskui-reviewall": "Bütün çevirileri incele",
"translate-taskui-export-to-file": "Yerel biçimde aktar",
"translate-taskui-export-as-po": "Çevrim dışı çeviri aktar",
"translate-taction-translate": "Çevir",
@@ -51,25 +50,27 @@
"translate-page-description-legend": "Grup hakkında bilgi",
"translate-page-description-hasoptional": "Bu ileti grubu isteğe bağlı iletileri içerir. Dilin özel gereksinimleri olduğunda isteğe bağlı iletiler çevrilmelidir.\nÖzel adların farklı alfabe ile yazılmasında ya da boşluklarda kullanmayınız. $1",
"translate-page-description-hasoptional-open": "İsteğe bağlı iletileri göster",
- "translate-page-edit": "değiştir",
- "translate-ext-url": "<hr />Web sitesi: $1",
+ "translate-page-edit": "düzenle",
"translate-optional": "(isteğe bağlı)",
"translate-ignored": "(yok sayılan)",
- "translate-edit-title": "Düzenle \"$1\"",
+ "translate-edit-title": "\"$1\" adlı sayfayı düzenle",
"translate-edit-definition": "İleti tanımı",
"translate-edit-translation": "Çeviri",
"translate-edit-contribute": "Katkıda bulun",
"translate-edit-no-information": "<em>Bu ileti için tanım bulunmuyor.\nEğer bu iletinin nerede ve nasıl kullanıldığını biliyorsanız, bu ileti için bir tanım ekleyerek diğer çevirmenlere yardımcı olabilirsiniz.</em>",
"translate-edit-information": "İleti hakkında bilgi(ler) ($1)",
"translate-edit-in-other-languages": "Diğer dillerdeki iletisi",
- "translate-edit-committed": "Yazılımdaki mevcut çeviriler",
"translate-edit-warnings": "Tamamlanmamış çeviriler hakkındaki uyarılar",
- "translate-edit-tmsugs": "Çeviri belleğinden öneriler",
"translate-edit-tmmatch-source": "Çeviri kaynağı metin: $1",
"translate-edit-tmmatch": "%$1 benzer",
"translate-use-suggestion": "Mevcut çeviriyi bu öneri ile değiştirin.",
"translate-edit-nopermission": "İletileri çevirmek için çeviri hakkınız olmalı.",
"translate-edit-askpermission": "İzin al",
+ "exporttranslations": "Çeviriyi dışa aktar",
+ "translate-export-form-format": "Format",
+ "translate-export-invalid-format": "Lütfen geçerli bir format belirtiniz.",
+ "translate-export-not-supported": "Çeviriyi dışa aktarım desteklenmiyor.",
+ "translate-export-format-notsupported": "Belirtilen dışa aktarım formatı, ileti grubu tarafından desteklenmiyor.",
"translate-magic-pagename": "Genişletilmiş MedyaViki çevirisi",
"translate-magic-module": "Modül:",
"translate-magic-submit": "Getir",
@@ -106,20 +107,23 @@
"prefs-translate": "Çeviri seçenekleri",
"translate-pref-editassistlang-help": "Dil kodlarının virgülle ayrılmış listesi.\nBu dillerdeki bir mesajın çevirisi, siz çeviri yaparken görünür.\nVarsayılan dil listesi sizin dilinizw bağlıdır.",
"translate-pref-editassistlang-bad": "Listede geçersiz dil kodu:\n<nowiki>$1</nowiki>.",
- "right-translate": "Çeviri arayüzünü kullanarak değişiklik yapar",
+ "right-translate": "Çeviri arayüzünü kullanarak değişiklik yap",
"right-translate-manage": "İleti gruplarını yönet",
"action-translate-manage": "ileti gruplarını yönet",
- "right-translate-import": "Çevrimdışı çevirileri içe aktarır",
+ "right-translate-import": "Çevrimdışı çevirileri içe aktar",
"action-translate-import": "çevrim dışı çevirileri içe aktar",
"right-translate-messagereview": "Çevirileri incele",
+ "action-translate-messagereview": "çeviri inceleme",
"right-translate-groupreview": "İleti gruplarının iş akışı durumunu değiştir",
+ "action-translate-groupreview": "ileti gruplarının iş akışı durumunu değiştirme",
+ "translate-rcfilters-translations": "Çeviriler",
"translate-rc-translation-filter": "Çevirileri filtrele:",
"translate-rc-translation-filter-no": "Hiçbir şey yapma",
"translate-rc-translation-filter-only": "Yalnızca çevirileri göster",
"translate-rc-translation-filter-filter": "Çevirileri filtrele",
"translate-rc-translation-filter-site": "Sadece site iletilerine değişiklikler",
"translationstats": "Çeviri istatistikleri",
- "translate-stats-edits": "Değişiklikler",
+ "translate-stats-edits": "Düzenlemeler",
"translate-stats-users": "Çevirmenler",
"translate-stats-registrations": "Kayıtlar",
"translate-stats-reviews": "İncelemeler",
@@ -144,8 +148,7 @@
"translate-statsf-language": "Dil kodlarının virgül ile ayrılmış listesi:",
"translate-statsf-group": "Grup kodlarının virgül ile ayrılmış listesi:",
"translate-statsf-submit": "Ön izleme",
- "translate-tag-category": "Çevirilebilir sayfalar",
- "translate-tag-page-desc": "[[$2|$1]] viki sayfasının çevirisi.",
+ "translate-tag-page-desc": "[[$2|$1]] viki sayfasının $3 ($4) dilinden çevirisi.",
"translate-sidebar-alltrans": "Diğer dillerde",
"translations": "Tüm çeviriler",
"translations-summary": "Tüm mevcut çevirilerin gösterilmesi için aşağıya bir ileti adı giriniz.",
@@ -159,6 +162,7 @@
"translate-translations-history-short": "t",
"languagestats": "Dil istatistikleri",
"languagestats-summary": "Bu sayfa tüm ileti grupları için dil çeviri istatistiklerini gösterir.",
+ "messagegroupstats-summary": "Bu sayfa, mesaj grup istatistiklerini göstermektedir.",
"languagestats-stats-for": "$1 için çeviri istatistikleri ($2).",
"languagestats-recenttranslations": "son çeviriler",
"translate-langstats-incomplete": "Bu sayfadaki bazı istatistikler eksik. Daha fazla istatistik almak için lütfen yeniden yükleyin.",
@@ -192,7 +196,7 @@
"supportedlanguages-colorlegend": "Renk göstergesi: Son çeviri $1 gün önce yapıldı",
"supportedlanguages-portallink": "[$1] $2 - $3",
"supportedlanguages-portallink-nocldr": "[$1] $2",
- "supportedlanguages-translators": "{{PLURAL:$2|Çevirmen|Çevirmenler}}: $1",
+ "supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|Çevirmen}}|Çevirmenler}}: $1",
"supportedlanguages-recenttranslations": "son çeviriler",
"supportedlanguages-count": "Toplamda $1 {{PLURAL:$1|dil|dil}}",
"supportedlanguages-activity": "$1: toplam $2 {{PLURAL:$2|değişiklik|değişiklik}} - son değişiklik $3 {{PLURAL:$3|gün|gün}} önce yapıldı",
@@ -218,7 +222,6 @@
"translate-manage-inconsistent": "İstekte tutarsızlık algılandı.\nLütfen değişiklikleri gözden geçirin ve yeniden deneyin.\nAyrıntılar: $1.",
"translate-manage-import-summary": "Dış bir kaynaktan yeni bir sürüm içe aktarılıyor",
"translate-manage-conflict-summary": "Dış bir kaynaktan yeni bir sürüm içe aktarılıyor.\nLütfen kontrol edin.",
- "translate-manage-fuzzy-summary": "İleti tanımı değişti",
"translate-manage-submit": "Yürüt",
"translate-manage-import-ok": "İçe aktarılan: $1",
"translate-manage-import-done": "İçe aktarma tamamlandı!",
@@ -235,9 +238,7 @@
"translate-js-summary": "Açıklama:",
"translate-js-save": "Kaydet",
"translate-js-next": "Kaydet ve sonrakini aç",
- "translate-js-nonext": "Bu, bu sayfadaki son iletiydi.",
"translate-js-skip": "Sonrakine geç",
- "translate-js-save-failed": "Kaydetme başarısız oldu. Lütfen bu hatayı bildirin.",
"translate-js-history": "Çeviri geçmişi",
"translate-js-support": "Soru sor",
"translate-js-support-unsaved-warning": "Kaydedilmemiş çevirileriniz var.",
@@ -253,39 +254,21 @@
"translate-documentation-language": "İleti belgelemesi",
"translate-searchprofile": "Çeviriler",
"translate-searchprofile-tooltip": "Tüm çevirilerde ara",
+ "translate-searchprofile-note": "[$1 Çeviri araması] ile daha fazla arama seçenekleri mevcuttur.",
"translate-search-languagefilter": "Dile göre filtre uygula:",
"translate-search-nofilter": "Filtre yok",
- "translate-messagereview-submit": "\"İncelendi\" olarak işaretle",
- "translate-messagereview-progress": "\"İncelendi\" olarak işaretleniyor...",
- "translate-messagereview-failure": "\"İncelendi\" olarak işaretleme başarısız oldu: $1",
- "translate-messagereview-done": "İncelendi",
- "translate-messagereview-reviews": "{{PLURAL:$1|Bir kullanıcı|$1 kullanıcı}} tarafından incelendi",
- "translate-messagereview-reviewswithyou": "{{PLURAL:$1|Sizin tarafınızdan|Siz dahil $1 kullanıcı tarafından}} incelendi",
- "api-error-invalidrevision": "Çeviri bulunamadı",
- "api-error-unknownmessage": "İleti bulunamadı",
- "api-error-fuzzymessage": "Çeviri belirsiz olarak işaretlenmiş",
- "api-error-owntranslation": "Kendi çevirilerinizi incelendi olarak işaretleyemezsiniz",
- "translate-messagereview-no-fuzzy": "Eski çeviriler gözden geçirilmiş olarak işaretlenemez.",
- "translate-messagereview-no-own": "Kendi çevirilerinizi gözden geçirilmiş olarak işaretleyemezsiniz.",
- "translate-messagereview-doit": "Bu çeviriyi gözden geçirilmiş olarak işaretle.",
"log-name-translationreview": "Çeviri gözden geçirme günlüğü",
"group-translate-sandboxed": "Onaylanmamış çevirmenler",
"group-translate-sandboxed-member": "{{GENDER:$1|onaylanmamış çevirmen}}",
"translate-workflow-state-": "(ayarla)",
"translate-workflowstatus": "Durum: $1",
- "translate-workflow-set-do": "Ayarla",
"translate-workflow-set-doing": "Ayarlanıyor...",
- "translate-workflow-set-done": "Ayarla!",
"translate-stats-workflow": "Durum",
"translate-workflowgroup-label": "İş akışı durumları",
"translate-dynagroup-recent-label": "Son çeviriler",
"translate-dynagroup-recent-desc": "Bu ileti grubu, bu dildeki bütün son çevirileri gösterir.\nGörevleri incelemek için çok kullanışlıdır.",
"translate-dynagroup-additions-label": "Son eklenenler",
- "translate-dynagroup-by": "{{GENDER:$1|$1}} tarafından yapılan çeviri",
- "translate-dynagroup-byc": "{{GENDER:$1|$1}} ($2) tarafından yapılan çeviri",
- "translate-dynagroup-last": "Son değişiklik {{GENDER:$1|$1}} tarafından yapıldı",
- "translate-dynagroup-lastc": "Son değişiklik {{GENDER:$1|$1}} ($2) tarafından yapıldı",
- "translate-gethelp": "Yardım",
+ "translate-dynagroup-additions-desc": "Bu mesaj grubu, yeni veya değiştirilen mesajları göstermektedir.",
"translate-msggroupselector-projects": "İleti grubu",
"translate-msggroupselector-search-placeholder": "Grupları ara",
"translate-msggroupselector-search-all": "Hepsi",
@@ -305,13 +288,15 @@
"tux-status-saving": "Kaydediliyor...",
"tux-status-unsaved": "Kaydedilmedi",
"tux-editor-placeholder": "Çeviriniz",
+ "tux-editor-editsummary-placeholder": "İsteğe bağlı özet",
"tux-editor-paste-original-button-label": "Kaynak metni yapıştır",
"tux-editor-discard-changes-button-label": "Değişiklikleri çıkar",
"tux-editor-save-button-label": "Çeviriyi kaydet",
"tux-editor-skip-button-label": "Sonrakine geç",
"tux-editor-cancel-button-label": "İptal",
"tux-editor-confirm-button-label": "Çeviriyi onayla",
- "tux-editor-shortcut-info": "Kaydetmek için \"$1\"; bir sonraki iletiye geçmek için \"$2\" yapın",
+ "tux-editor-proofread-button-label": "İncelendi olarak işaretle",
+ "tux-editor-shortcut-info": "Kaydetmek için \"$1\"; bir sonraki iletiye geçmek için \"$2\"; özet girmek için \"$4\" tuşlarına basın. Diğer kısayollar için \"$3\" tuşuna basın.",
"tux-editor-edit-desc": "Belgelemeyi düzenle",
"tux-editor-add-desc": "Belgeleme ekle",
"tux-editor-suggestions-title": "Öneriler",
@@ -352,6 +337,7 @@
"tux-empty-list-translated-action": "Çevir",
"tux-empty-show-optional-messages": "İsteğe bağlı iletileri göster",
"tux-empty-no-outdated-messages": "Eski tarihli ileti yok",
+ "tux-empty-nothing-to-proofread": "İncelemek için yeni bir şey yok",
"tux-empty-you-can-help-providing": "Yeni çeviriler sağlayarak yardımcı olabilirsiniz",
"tux-empty-nothing-new-to-proofread": "İncelemek için yeni bir şey yok",
"tux-empty-you-can-review-already-proofread": "Başkaları tarafından incelenen çevirileri inceleyebilirsiniz.",
@@ -362,6 +348,7 @@
"tux-editor-close-tooltip": "Kapat",
"tux-editor-expand-tooltip": "Genişlet",
"tux-editor-collapse-tooltip": "Daralt",
+ "tux-editor-message-tools-show-editor": "Wiki editöründe göster",
"tux-editor-message-tools-history": "Geçmiş",
"tux-editor-message-tools-delete": "Sil",
"tux-editor-message-tools-translations": "Bütün çeviriler",
@@ -369,5 +356,7 @@
"translate-search-more-languages-info": "$1 tane daha {{PLURAL:$1|dil|dil}}",
"translate-statsbar-tooltip": "%$1 çevrildi, %$2 incelendi",
"translate-statsbar-tooltip-with-fuzzy": "%$1 çevrildi, %$2 incelendi, %$3 eski",
- "translate-search-more-groups-info": "$1 tane daha {{PLURAL:$1|grup|grup}}"
+ "translate-search-more-groups-info": "$1 tane daha {{PLURAL:$1|grup|grup}}",
+ "translate-ulsdep-title": "Yapılandırma hatası",
+ "tux-nojs": "Bu sayfa için JavaScript gerekmektedir."
}
diff --git a/MLEB/Translate/i18n/core/tt-cyrl.json b/MLEB/Translate/i18n/core/tt-cyrl.json
index 2b770373..0e97cdfa 100644
--- a/MLEB/Translate/i18n/core/tt-cyrl.json
+++ b/MLEB/Translate/i18n/core/tt-cyrl.json
@@ -8,30 +8,40 @@
]
},
"translate": "Тәрҗемә",
+ "translate-extensionname": "Тәрҗемә",
"translate-desc": "[[Special:Translate|Махсус бит]] MediaWiki һәм башка программлар тәрҗемә итү өчен",
+ "translate-taction-translate": "Тәрҗемә",
+ "translate-taction-proofread": "Тикшерү",
+ "translate-taction-lstats": "Тел статистикасы",
+ "translate-taction-mstats": "Хәбәрләр төркеме хисапнамәсе",
+ "translate-taction-export": "Экспортлау",
"translate-page-no-such-group": "Төркем дөрес күрсәтелмәгән",
"translate-page-disabled": "Әлеге бүлектә бу тел буенча тәрҗемәләр ябылган. Сәбәбе:\n\n<em>$1</em>",
"translate-page-settings-legend": "Көйләнмәләр",
"translate-page-group": "Төркем",
"translate-page-language": "Тел",
"translate-page-limit": "Чикләү",
- "translate-page-limit-option": "Биткә $1 {{PLURAL:$1|мәкалә}} күрсәтү",
+ "translate-page-limit-option": "Биткә $1 {{PLURAL:$1|хат}}",
"translate-submit": "Чыгарырга",
- "translate-page-navigation-legend": "Күчешлек",
+ "translate-page-navigation-legend": "Навигация",
"translate-page-showing": "$3 мәкалә арасыннан $1 алып $2 кадәр күрсәтелгән.",
- "translate-page-showing-all": "$1 {{PLURAL:$1|хәбәр}} чыгарылгын.",
+ "translate-page-showing-all": "$1 {{PLURAL:$1|хат}} күрсәтелгән",
"translate-page-showing-none": "Күрсәтү өчен хәбәрләр юк.",
"translate-next": "киләсе бит",
"translate-prev": "алдагы бит",
"translate-page-description-legend": "Төркем турында мәгълүмат",
+ "translate-page-edit": "үзгәртү",
+ "translate-optional": "(мәҗбүри түгел)",
+ "translate-ignored": "(игътибарга алынмай)",
+ "translate-edit-title": "\"$1\" битен үзгәртү",
"translate-edit-definition": "Мәкаләнең тасвирламасы",
+ "translate-edit-translation": "Тәрҗемә",
"translate-edit-contribute": "үзгәртү",
- "translate-edit-information": "«$2» мәкаләсе турында мәгълүмат ($1)",
- "translate-edit-in-other-languages": "«$1» мәкаләсе башка телләрдә",
- "translate-edit-committed": "Әлеге тәрҗемә",
+ "translate-edit-information": "Хат турында мәгълүмат ($1)",
+ "translate-edit-in-other-languages": "Хат башка телләрдә",
"translate-edit-warnings": "Тулы булмаган тәрҗемәләр турында искәрмә",
- "translate-edit-tmsugs": "Тәрҗемәләр хәтереннән тәкъдим",
"translate-edit-tmmatch": "$1% туры килү",
+ "translate-export-form-format": "Формат",
"translate-magic-pagename": "MediaWiki-ны тулысынча тәрҗемә итү",
"translate-magic-module": "Модуль:",
"translate-magic-submit": "Чыгарырга",
@@ -50,9 +60,31 @@
"translate-magic-notsaved": "Сезнең үзгәртү сакланмаган!",
"translate-magic-errors": "Зинһар, тәрҗемәдәге {{PLURAL:$1|әлеге хатаны}} төзәтегез:",
"translate-magic-saved": "Кертелгән үзгәртүләр сакланды.",
- "translate-checks-parameters": "{{PLURAL:$2|1=Әлеге параметр кулланылмый|Әлеге параметрлар кулланылмый}}:\n<strong><nowiki>$1</nowiki></strong>",
- "translate-checks-parameters-unknown": "{{PLURAL:$2|1=Билгесез параметр|Билгесез параметрлар}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters": "{{PLURAL:$2|Әлеге параметрлар кулланылмый}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "{{PLURAL:$2|Билгесез параметрлар}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-pref-nonewsletter": "Минем электрон почтага мәгълүмати бюллетень җибәрмәскә",
+ "translate-pref-editassistlang": "Ярдәмчел телләр:",
+ "prefs-translate": "Тәржемә көйләнмәләре",
+ "translate-rcfilters-translations": "Тәрҗемәләр",
+ "translate-rcfilters-translations-only-label": "Тәрҗемәләр",
+ "translate-rcfilters-translations-filter-label": "Тәрҗемә түгелләр",
+ "translate-rcfilters-translations-site-label": "Сайт хәбәрләре",
+ "translate-rc-translation-filter": "Тәрҗемәләрне сайлау:",
+ "translationstats": "Тәрҗемәләр хисапнамәсе",
+ "translate-stats-edits": "Үзгәртүләр",
+ "translate-stats-users": "Тәрҗемәчеләргә",
+ "translate-stats-registrations": "Теркәлүләр",
+ "translate-stats-reviews": "Тикшерүләр",
+ "translate-stats-reviewers": "Тикшерүчеләр",
+ "translate-statsf-scale-months": "Айлар",
+ "translate-statsf-scale-weeks": "Атналар",
+ "translate-statsf-scale-days": "Көннәр",
+ "translate-statsf-scale-hours": "Сәгатьләр",
+ "translate-statsf-count": "Үлчәм:",
+ "translate-statsf-count-registrations": "Яңа кулланучылар",
+ "translate-statsf-count-reviews": "Тәрҗемә тикшерүчеләре",
+ "translate-statsf-count-reviewers": "Тикшерүчеләр",
+ "translate-statsf-submit": "Алдан карау",
"translate-sidebar-alltrans": "Башка телләрдә",
"translations": "Барлык тәрҗемәләр",
"translate-translations-fieldset-title": "Хәбәр",
@@ -78,14 +110,101 @@
"translate-percentage-complete": "Башкарылган эш",
"translate-percentage-fuzzy": "Искергән битләр",
"translate-languagestats-overall": "Барлык төркемнәрнең хәбәрләре",
+ "translate-ls-column-group": "Язмалар төркеме",
+ "translate-mgs-submit": "Хисапнамәне күрсәтү",
+ "translate-mgs-column-language": "Тел",
+ "translate-mgs-totals": "Барлык $1 {{PLURAL:$1|тел}} бергә",
"supportedlanguages": "Кулланылучы телләр",
- "supportedlanguages-translators": "{{PLURAL:$2|1=Тәрҗемәче|Тәрҗемәчеләр}}: $1",
+ "supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|Тәрҗемәче}}|Тәрҗемәчеләр}}: $1",
"supportedlanguages-recenttranslations": "яңа тәрҗемәләр",
"translate-save": "Саклау ($1)",
"translate-jssti-add": "Исемлеккә өстәү",
+ "translate-manage-action-import": "Импортлау",
+ "translate-manage-action-ignore": "Игнор",
+ "translate-manage-submit": "Башкару",
+ "translate-import-load": "Файлны йөкләү",
+ "translate-js-summary": "Тасвирлама:",
+ "translate-js-save": "Саклау",
"translate-js-next": "Сакларга һәм яңасын ачарга",
- "translate-js-nonext": "Әлеге биттәге бу соңгы мәкалә иде.",
"translate-js-skip": "Киләсе биткә күчү",
"translate-js-history": "Тәрҗемә тарихы",
- "translate-js-support": "Сорау бирү"
+ "translate-js-support": "Сорау бирү",
+ "translate-gs-pos": "Урын",
+ "translate-gs-code": "Код",
+ "translate-gs-continent": "Җир йөзе кисәге",
+ "translate-gs-speakers": "Сөйләшүчеләр",
+ "translate-gs-score": "Билге",
+ "translate-gs-multiple": "Берничә",
+ "translate-gs-count": "Микъдар",
+ "translate-gs-total": "Барысы",
+ "translate-gs-avgscore": "Уртача билге",
+ "translate-documentation-language": "Хат документациясе",
+ "translate-searchprofile": "Тәрҗемәләр",
+ "translate-workflow-state-": "(билгеләнмәгән)",
+ "translate-workflowstatus": "Статусы: $1",
+ "translate-workflow-set-doing": "Урнаштыру...",
+ "translate-stats-workflow": "Статусы",
+ "translate-dynagroup-recent-label": "Яңа тәрҗемәләр",
+ "translate-dynagroup-additions-label": "Соңгы өстәлмәләр",
+ "translate-msggroupselector-projects": "Язмалар төркеме",
+ "translate-msggroupselector-search-placeholder": "Төркемнәр эзләү",
+ "translate-msggroupselector-search-all": "Барлык",
+ "translate-msggroupselector-search-recent": "Соңгы",
+ "translate-msggroupselector-view-subprojects": "{{PLURAL:$1|$1 астөркем|1=бер астөркем}}",
+ "tux-languageselector": "Тәрҗемә итү теле",
+ "tux-tab-all": "Барлык",
+ "tux-tab-untranslated": "Тәрҗемә ителмәгәннәре",
+ "tux-tab-outdated": "Искергәннәре",
+ "tux-tab-translated": "Тәрҗемә ителгәннәре",
+ "tux-tab-unproofread": "Тикшерелмәгән",
+ "tux-edit": "Үзгәртү",
+ "tux-status-optional": "Мәҗбүри түгел",
+ "tux-status-fuzzy": "Искергән",
+ "tux-status-proofread": "Тикшерү",
+ "tux-status-translated": "Тәрҗемә ителгән",
+ "tux-status-saving": "Саклана...",
+ "tux-status-unsaved": "Сакланмаган",
+ "tux-editor-placeholder": "Сезнең тәрҗемәләр",
+ "tux-editor-editsummary-placeholder": "Мәҗбүри булмаган тасвирлама",
+ "tux-editor-paste-original-button-label": "Чыганак текст өстәү",
+ "tux-editor-discard-changes-button-label": "Үзгәртүләрне кире кагу",
+ "tux-editor-save-button-label": "Тәрҗемәне саклау",
+ "tux-editor-skip-button-label": "Киләсе",
+ "tux-editor-cancel-button-label": "Баш тарту",
+ "tux-editor-confirm-button-label": "Тәрҗемәне раслау",
+ "tux-editor-proofread-button-label": "Тикшерелгән итеп билгеләү",
+ "tux-editor-edit-desc": "Документацияне үзгәртү",
+ "tux-editor-add-desc": "Документация өстәү",
+ "tux-editor-suggestions-title": "Ярдәм",
+ "tux-editor-in-other-languages": "Башка телләрдә",
+ "tux-editor-need-more-help": "Ярдәм кирәкме?",
+ "tux-editor-ask-help": "Тулырак мәгълүмат сорау",
+ "tux-editor-tm-match": "$1% туры килү",
+ "tux-warnings-more": "{{PLURAL:$1|тагын $1}}",
+ "tux-warnings-hide": "яшерү",
+ "tux-editor-message-desc-more": "Тулырак мәгълүмат",
+ "tux-editor-message-desc-less": "Азрак күрсәтү",
+ "tux-editor-clear-translated": "Тәрҗемәләрне яшерү",
+ "tux-editor-proofreading-mode": "Тикшерү",
+ "tux-editor-translate-mode": "Исемлек",
+ "tux-proofread-edit-label": "Үзгәртү",
+ "tux-editor-page-mode": "Бит",
+ "tux-editor-outdated-warning": "Бәлки бу тәрҗемәгә яңарту кирәктер.",
+ "tux-editor-outdated-warning-diff-link": "Аермаларны күрсәтү",
+ "tux-editor-doc-editor-placeholder": "Хат документациясе",
+ "tux-editor-doc-editor-save": "Документацияне саклау",
+ "tux-editor-doc-editor-cancel": "Баш тарту",
+ "tux-messagetable-more-messages": "Тагын $1 {{PLURAL:$1|хат}}",
+ "tux-empty-list-translated-action": "Тәрҗемә итү",
+ "tux-empty-list-other": "Тәрҗемәгә итәргә бернәрсә дә юк",
+ "tux-editor-close-tooltip": "Ябу",
+ "tux-editor-expand-tooltip": "Ачу",
+ "tux-editor-collapse-tooltip": "Төрү",
+ "tux-editor-message-tools-history": "Тарих",
+ "tux-editor-message-tools-delete": "Бетерү",
+ "tux-editor-message-tools-translations": "Барлык тәрҗемәләр",
+ "tux-editor-loading": "Йөкләү...",
+ "translate-search-more-languages-info": "тагын $1 {{PLURAL:$1|тел}}",
+ "translate-search-more-groups-info": "тагын $1 {{PLURAL:$1|төркем}}",
+ "translate-ulsdep-title": "Конфигурация хатасы"
}
diff --git a/MLEB/Translate/i18n/core/ug-arab.json b/MLEB/Translate/i18n/core/ug-arab.json
index ce8f5e5f..f5cbb1d9 100644
--- a/MLEB/Translate/i18n/core/ug-arab.json
+++ b/MLEB/Translate/i18n/core/ug-arab.json
@@ -2,20 +2,16 @@
"@metadata": {
"authors": [
"Alfredie",
- "Sahran"
+ "Sahran",
+ "Uzdil"
]
},
"translate": "تەرجىمە",
"translate-desc": "MediaWiki ۋە باشقا يۇمشاق دېتاللارنى تەرجىمە قىلىدىغان [[Special:Translate|ئالاھىدە بەت]]",
- "translate-taskui-view": "ھەممە ئۇچۇرنى كۆرسەت",
- "translate-taskui-untranslated": "تەرجىمە قىلىنمىغان ئۇچۇرلارنى كۆرسەت",
- "translate-taskui-optional": "تاللاشچان ئۇچۇرلارنى كۆرسەت",
- "translate-taskui-acceptqueue": "مەن قوشۇلغان ئۇچۇرلارلا",
- "translate-taskui-reviewall": "ھەممە تەرجىمىنى كۆزدىن كەچۈر",
"translate-taskui-export-to-file": "ئەسلى پىچىمىدا چىقار",
"translate-taskui-export-as-po": "تورسىز تەرجىمە ئۈچۈن چىقار",
"translate-taction-translate": "تەرجىمە",
- "translate-taction-proofread": "تۈزەت",
+ "translate-taction-proofread": "تۈزىتىلدى",
"translate-taction-lstats": "تىل سىتاتىستىكىسى",
"translate-taction-mstats": "ئۇچۇر گۇرۇپپا سىتاتىستىكىسى",
"translate-taction-export": "چىقار",
@@ -39,8 +35,7 @@
"translate-page-description-legend": "گۇرۇپپا ھەققىدىكى ئۇچۇر",
"translate-page-description-hasoptional": "بۇ ئۇچۇر گۇرۇپپىسى تاللاشچان ئۇچۇرنى ئۆز ئىچىگە ئالىدۇ.\nتاللاشچان ئۇچۇر پەقەت تىلىڭىزدا ماقالە يازغاندا بوشلۇق ئىشلەتمىسە، مەخسۇس ئاتالغۇلار تاۋۇش تەرجىمىسىدە يېزىشقا ئوخشاش ئالاھىدە تەلەپ بولغاندىلا ئاندىن تەرجىمە قىلىنىدۇ. $1",
"translate-page-description-hasoptional-open": "تاللاشچان ئۇچۇرلارنى كۆرسەت.",
- "translate-page-edit": "تەھرىر",
- "translate-ext-url": "<hr />تور بېكەت: $1",
+ "translate-page-edit": "تەھرىرلەش",
"translate-optional": "(تاللاشچان)",
"translate-ignored": "(پەرۋا قىلىنمىغان)",
"translate-edit-title": "تەھرىر \"$1\"",
@@ -50,9 +45,7 @@
"translate-edit-no-information": "''بۇ ئۇچۇرنىڭ چۈشەندۈرۈشى يوق.''\n''ئەگەر سىز بۇ ئۇچۇرنىڭ قەيەردە ياكى قانداق ئىشلىتىلىدىغانلىقىنى بىلسىڭىز، بۇ ئۇچۇرنىڭ چۈشەندۈرۈشىنى قوشۇپ باشقا تەرجىمانلارغا ياردەم قىلالايسىز.''",
"translate-edit-information": "ئۇچۇر ھەققىدىكى ئۇچۇر ($1)",
"translate-edit-in-other-languages": "باشقا تىللاردىكى ئۇچۇرى",
- "translate-edit-committed": "يۇمشاق دېتالنىڭ نۆۋەتتىكى تەرجىمىسى",
"translate-edit-warnings": "تولۇق بولمىغان تەرجىمە ھەققىدىكى ئاگاھلاندۇرۇش",
- "translate-edit-tmsugs": "تەرجىمە خاتىرىسىنىڭ تەۋسىيىسى",
"translate-edit-tmmatch-source": "تەرجىمە ئەسلى تېكىستى: $1",
"translate-edit-tmmatch": "$1% ماس كېلىدۇ",
"translate-use-suggestion": "نۆۋەتتىكى تەرجىمىنى بۇ تەكلىپ بىلەن ئالماشتۇر",
@@ -106,7 +99,7 @@
"translate-rc-translation-filter-filter": "سۈزۈلگەن تەرجىمە",
"translate-rc-translation-filter-site": "بېكەت ئۇچۇرىنىلا ئۆزگەرت",
"translationstats": "تەرجىمە سىتاتىستىكىسى",
- "translate-stats-edits": "تەھرىر",
+ "translate-stats-edits": "تەھرىرلەش",
"translate-stats-users": "تەرجىمانلار",
"translate-stats-registrations": "خەتلىتىش",
"translate-stats-reviews": "باھالار",
@@ -131,7 +124,6 @@
"translate-statsf-language": "پەش بىلەن ئايرىلغان تىل تىزىملىك كودى:",
"translate-statsf-group": "پەش بىلەن ئايرىلغان گۇرۇپپا تىزىملىك كودى:",
"translate-statsf-submit": "ئالدىن كۆزەت",
- "translate-tag-category": "تەرجىمە قىلىشقا بولىدىغان بەتلەر",
"translate-tag-page-desc": "تەرجىمە قىلغان wiki بەت [[$2|$1]].",
"translate-sidebar-alltrans": "باشقا تىلاردا",
"translations": "ھەممە تەرجىمە",
@@ -176,7 +168,7 @@
"translate-mgs-invalid-group": "بەلگىلەنگەن گۇرۇپپا $1 مەۋجۇت ئەمەس.",
"translate-mgs-nothing": "ئىلتىماس قىلغان سىتاتىستىكىدىن كۆرسىتىدىغان ھېچنېمە يوق.",
"supportedlanguages": "قوللايدىغان تىللار",
- "supportedlanguages-summary": "بۇ بەتتە {{SITENAME}} قوللايدىغان ھەممە تىللار تىزىمى كۆرسىتىلىدۇ،\nشۇنىڭ بىلەن بىللە شۇ تىلدىكى تەرجىمانلارنىڭ ئىسمىنىمۇ كۆرسىتىدۇ.\nبەزى تەرجىماننىڭ ئاتى چوڭراق كۆرۈنسە ئۇنىڭ تەھرىرلەش تۆھپىسى كۆپ بولىدۇ.\nئاستى سىزىقنىڭ رەڭگى بىر تەرجىماننىڭ بۇ جايدا قانچىلىك ئاكتىپ ئىكەنلىكىنى بىلدۈرىدۇ.",
+ "supportedlanguages-summary": "بۇ بەتتە {{SITENAME}} قوللايدىغان ھەممە تىللار تىزىملىكى،\nشۇنداقلا شۇ تىلدىكى تەرجىمانلارنىڭ ئىسمى كۆرسىتىلىدۇ.\nتورنامى قانچە چوڭراق كۆرۈنگەن تەرجىماننىڭ تەھرىرلەش تۆھپىسى شۇنچە كۆپ بولىدۇ.\nئاستى سىزىقنىڭ رەڭگى تەرجىماننىڭ بۇ جايدا قانچىلىك ئاكتىپ ئىكەنلىكىنى بىلدۈرىدۇ.",
"supportedlanguages-colorlegend": "رەڭنىڭ مىساللىق چۈشەندۈرۈشى: ئاخىرقى تەرجىمە $1 كۈن ئىلگىرى.",
"supportedlanguages-translators": "{{PLURAL:$2|تەرجىمان|تەرجىمان}}: $1",
"supportedlanguages-recenttranslations": "يېقىنقى تەرجىمىلەر",
@@ -204,11 +196,10 @@
"translate-manage-toolong": "ئەڭ ئۇزۇن بىر تەرەپ قىلىش ۋاقتى $1 {{PLURAL:$1|سېكۇنت|سېكۇنت}} توشتى.\nداۋاملىق بىر تەرەپ قىلىش ئۈچۈن بۇ كۆزنەكنى قايتا تاپشۇرۇڭ.",
"translate-manage-import-summary": "سىرتتىن يېڭى بىر نەشرىنى ئەكىرىۋاتىدۇ",
"translate-manage-conflict-summary": "سىرتقى مەنبەدىن يېڭى بىر نەشرىنى ئەكىرىۋاتىدۇ.\nتەڭشۈرۈڭ.",
- "translate-manage-fuzzy-summary": "ئۇچۇر ئېنىقلىمىسى ئۆزگەردى",
"translate-manage-submit": "ئىجراچان",
"importtranslations": "تەرجىمىلەرنى ئەكىر",
"translate-import-from-local": "يەرلىك ھۆججەت يۈكلەش:",
- "translate-import-load": "ھۆججەت يۈكلە",
+ "translate-import-load": "ھۆججەت يۈكلەش",
"translate-import-err-dl-failed": "ھۆججەتكە ئېرىشەلمىدى:\n$1",
"translate-import-err-ul-failed": "ھۆججەتنى مۇۋەپپەقىيەتلىك يۈكلىيەلمىدى",
"translate-import-err-invalid-title": "تەمىنلەنگەن ھۆججەت ئاتى <nowiki>$1</nowiki> ئىناۋەتسىز.",
@@ -219,9 +210,7 @@
"translate-js-summary": "ئۈزۈندە",
"translate-js-save": "ساقلا",
"translate-js-next": "ساقلاپ كېيىنكىنى ئاچ",
- "translate-js-nonext": "بۇ مۇشۇ بەتتىكى ئاخىرقى ئۇچۇر.",
- "translate-js-skip": "كېيىنكىگە ئاتلا",
- "translate-js-save-failed": "ساقلىيالمىدى. بۇ خاتالىقنى مەلۇم قىلىڭ.",
+ "translate-js-skip": "كېيىنكىگە ئاتلاش",
"translate-js-history": "تەرجىمە تارىخى",
"translate-js-support": "سوئال سورا",
"translate-js-support-title": "ئەگەر بۇ ئۇچۇرنى توغرا تەرجىمە قىلىشقا يېتەرلىك ئۇچۇر بولمىسا ياردەم سوراڭ.",
@@ -240,39 +229,18 @@
"translate-searchprofile-tooltip": "ھەممە تەرجىمىدىن ئىزدە",
"translate-search-languagefilter": "تىل بويىچە سۈز:",
"translate-search-nofilter": "سۈزگۈچ يوق",
- "translate-messagereview-submit": "قوشۇل",
- "translate-messagereview-progress": "قوبۇل قىلىۋاتىدۇ…",
- "translate-messagereview-failure": "قوبۇل قىلىۋاتىدۇ… مەغلۇپ بولدى: $1",
- "translate-messagereview-done": "قوبۇل قىلدى",
- "translate-messagereview-reviews": "{{PLURAL:$1|بىر ئىشلەتكۈچى|$1 ئىشلەتكۈچى}} قوبۇل قىدى",
- "translate-messagereview-reviewswithyou": "{{PLURAL:$1|سىز|$1 ئىشلەتكۈچى سىزمۇ بار }} قۇبۇل قىلدىڭىز",
- "api-error-invalidrevision": "تەرجىمە تېپىلمىدى",
- "api-error-unknownmessage": "ئۇچۇر تېپىلمىدى",
- "api-error-fuzzymessage": "تەرجىمەگە مۈجمەل بەلگىسى سېلىندى",
- "api-error-owntranslation": "ئۆزىڭىزنىڭ تەرجىمىسىنى قوبۇل قىلالمايسىز",
- "translate-messagereview-no-fuzzy": "مۈجمەل تەرجىمىنى قوبۇل قىلغىلى بولمايدۇ",
- "translate-messagereview-no-own": "ئۆزىڭىزنىڭ تەرجىمىسىگە قوشۇلالمايسىز.",
- "translate-messagereview-doit": "بۇ تەرجىمىنى توغرا دەپ قوبۇل قىلىدۇ.",
"log-name-translationreview": "تەرجىمە كۆزدىن كەچۈرۈش خاتىرىسى",
"log-description-translationreview": "بارلىق تەرجىمە ۋە ئۇچۇر گۇرۇپپىسىنىڭ كۆزدىن كەچۈرۈش خاتىرىسى.",
"logentry-translationreview-message": "$1 {{GENDER:$2|قۇبۇل قىلغان}} تەرجىمە $3",
"translate-workflow-state-": "(تەڭشەلمىگەن)",
"translate-workflowstatus": "ھالەت: $1",
- "translate-workflow-set-do": "تەڭشەك",
"translate-workflow-set-doing": "تەڭشەۋاتىدۇ…",
- "translate-workflow-set-done": "تەڭشەلدى!",
- "translate-workflow-set-error-alreadyset": "ئىلتىماس ھالىتى بىلەن ھازىرقى ھالەت ئوخشاش.",
"translate-workflow-autocreated-summary": "بەتنىڭ ئىش ئېقىمىنىڭ ھالىتى $1 نى ئۆزلۈكىدىن قۇرىدۇ",
"translate-stats-workflow": "ھالەت",
"translate-workflowgroup-label": "ئىش ئېقىمى ھالىتى",
"translate-workflowgroup-desc": "بۇ ئۇچۇر گۇرۇپپىسى تەرجىمە خىزمىتىنىڭ ئېقىم ھالىتىنى كۆرسىتىدۇ.\nبۇ ھالەتنى $wgTranslateWorkflowStates سەپلىمە ئۆزگەرگۈچىسىدە بەلگىلىگەن.",
"translate-dynagroup-recent-label": "يېقىنقى تەرجىمىلەر",
"translate-dynagroup-recent-desc": "بۇ ئۇچۇر گۇرۇپپىسى مەزكۇر تىلنىڭ يېقىنقى ھەممە تەرجىمىلىرىنى كۆرسىتىدۇ.\nئىملا تۈزەتكەندە ناھايىتى كېرەكلىك.",
- "translate-dynagroup-by": "{{GENDER:$1|$1}} تەرجىمە قىلغان",
- "translate-dynagroup-byc": "{{GENDER:$1|$1}} تەرجىمە قىلغان ($2)",
- "translate-dynagroup-last": "{{GENDER:$1|$1}} ئاخىرقى قېتىم ئۆزگەرتكەن",
- "translate-dynagroup-lastc": "{{GENDER:$1|$1}} ئاخىرقى قېتىم ئۆزگەرتكەن ($2)",
- "translate-gethelp": "ياردەم",
"translate-msggroupselector-search-all": "ھەممىسى",
"translate-msggroupselector-search-recent": "يېقىنقى",
"tux-languageselector": "تىل",
@@ -280,12 +248,12 @@
"tux-tab-untranslated": "تەرجىمە قىلىنمىغان",
"tux-tab-outdated": "زاماندىن قالغان",
"tux-tab-translated": "تەرجىمە قىلىنغان",
- "tux-edit": "تەھرىر",
+ "tux-edit": "تەھرىرلەش",
"tux-status-optional": "تاللاشچان",
"tux-status-fuzzy": "زاماندىن قالغان",
- "tux-status-proofread": "تۈزەت",
+ "tux-status-proofread": "قايتا تەستىقلاندى",
"tux-status-translated": "تەرجىمە قىلىنغان",
- "tux-editor-skip-button-label": "كېيىنكىگە ئاتلا",
+ "tux-editor-skip-button-label": "كېيىنكىگە ئاتلاش",
"tux-editor-suggestions-title": "نامزاتلار",
"tux-editor-in-other-languages": "باشقا تىلاردا",
"tux-editor-tm-match": "$1% ماس كېلىدۇ"
diff --git a/MLEB/Translate/i18n/core/uk.json b/MLEB/Translate/i18n/core/uk.json
index 9365d753..7af56f7f 100644
--- a/MLEB/Translate/i18n/core/uk.json
+++ b/MLEB/Translate/i18n/core/uk.json
@@ -21,16 +21,15 @@
"Ата",
"Тест",
"Olion",
- "Piramidion"
+ "Piramidion",
+ "Geraki",
+ "Renamerr",
+ "Movses"
]
},
"translate": "Переклад",
"translate-desc": "[[Special:Translate|Спеціальна сторінка]] для перекладу MediaWiki та інших програм",
- "translate-taskui-view": "Показати всі повідомлення",
- "translate-taskui-untranslated": "Показати неперекладені повідомлення",
- "translate-taskui-optional": "Показати додаткові повідомлення.",
- "translate-taskui-acceptqueue": "Лише повідомлення, які я можу помітити як перевірені",
- "translate-taskui-reviewall": "Перевірити всі переклади",
+ "translate-fuzzybot-desc": "Це — спеціальний системний обліковий запис, який використовується [https://www.mediawiki.org/wiki/Extension:Translate розширенням перекладу] MediaWiki для обслуговування перекладів.\nЦей обліковий запис є частиною програмного забезпечення MediaWiki й не належить жодному користувачеві.",
"translate-taskui-export-to-file": "Експорт у «рідному» форматі",
"translate-taskui-export-as-po": "Експорт для офлайн-перекладу",
"translate-taction-translate": "Переклад",
@@ -59,7 +58,6 @@
"translate-page-description-hasoptional": "Ця група повідомлень містить також необов'язкові повідомлення.\nЇх слід перекладати лише якщо Ваша мова вимагає особливого ставлення,\nскажімо, у ній не вживаються пробіли чи не потрібна транслітерація власних імен. $1",
"translate-page-description-hasoptional-open": "Показувати додаткові повідомлення.",
"translate-page-edit": "редагувати",
- "translate-ext-url": "<hr />Сайт: $1",
"translate-optional": "(необов'язкове)",
"translate-ignored": "(ігнорується)",
"translate-edit-title": "Редагувати «$1»",
@@ -69,14 +67,17 @@
"translate-edit-no-information": "<em>Це повідомлення не має опису.\nЯкщо ви знаєте, де чи як воно використовується, то ви можете допомогти іншим перекладачам, додавши опис для цього повідомлення.</em>",
"translate-edit-information": "Інформація про повідомлення ($1)",
"translate-edit-in-other-languages": "Повідомлення іншими мовами",
- "translate-edit-committed": "Поточний переклад у програмі",
"translate-edit-warnings": "Попередження про неповні переклади",
- "translate-edit-tmsugs": "Пропозиції з пам'яті перекладів",
"translate-edit-tmmatch-source": "Текст для перекладу: $1",
"translate-edit-tmmatch": "$1% відповідність",
"translate-use-suggestion": "Замінити поточний переклад цією пропозицією.",
"translate-edit-nopermission": "Вам потрібні права перекладача для перекладу повідомлень.",
"translate-edit-askpermission": "Отримати дозвіл",
+ "exporttranslations": "Експорт перекладів",
+ "translate-export-form-format": "Формат",
+ "translate-export-invalid-format": "Будь ласка, вкажіть правильний формат.",
+ "translate-export-not-supported": "Експорт перекладів не підтримується.",
+ "translate-export-format-notsupported": "Зазначений формат експорту не підтримується цією групою повідомлень.",
"translate-magic-pagename": "Поглиблений переклад MediaWiki",
"translate-magic-help": "Ви можете перекладати псевдоніми спеціальних сторінок, магічні слова та назви простори.\n\nПсевдоніми спеціальних сторінок і магічні слова можуть мати декілька варіантів перекладу, які розділяються комою (,).\nНазви просторів можуть мати лише один переклад.\n\nПереклад назви простору обговорень проекту<code>$1 talk</code> може викликати труднощі. <code>$1</code> замінюється назвою сайту проекту (наприклад <code>{{ns:project_talk}}</code>). Якщо у Вашій мові неможливо утворити коректне словосполучення без зміни назви сайту (наприклад, якщо слід вживати родовий відмінок), повідомте про це [[Support|Службу підтримки]].\n\nЩоб зберегти зміни, Ви повинні бути перекладачем.\nЗміни не буде збережено, поки Ви не натиснете кнопку Зберегти нижче.",
"translate-magic-module": "Модуль:",
@@ -95,7 +96,7 @@
"translate-magic-namespace": "Простори назв",
"translate-magic-notsaved": "Ваше редагування не збережено!",
"translate-magic-errors": "Будь ласка, виправте {{PLURAL:$1|1=таку помилку|такі помилки}} в перекладі:",
- "translate-magic-saved": "Ваші редагування успішно збережені.",
+ "translate-magic-saved": "Ваші зміни збережено.",
"translate-checks-parameters": "{{PLURAL:$2|1=Параметр <strong><nowiki>$1</nowiki></strong> не використовується|Параметри <strong><nowiki>$1</nowiki></strong> не використовуються}}",
"translate-checks-parameters-unknown": "{{PLURAL:$2|1=Параметр <strong><nowiki>$1</nowiki></strong> невідомий|Параметри <strong><nowiki>$1</nowiki></strong> невідомі}}",
"translate-checks-balance": "Неоднакова кількість відкритих і закритих {{PLURAL:$2|1=дужок|дужок}}:\n<strong><nowiki>$1</nowiki></strong>",
@@ -117,12 +118,21 @@
"translate-pref-editassistlang-help": "Перелік мовних кодів, відокремлених комою.\nПереклади повідомлень цими мовами буде показано, коли Ви перекладаєте.\nСтандартний список мов залежить від вашої мови.",
"translate-pref-editassistlang-bad": "Неправильний мовний код в списку:\n<nowiki>$1</nowiki>.",
"right-translate": "редагування з використанням інтерфейсу перекладу",
- "right-translate-manage": "Управління групами повідомлень",
+ "right-translate-manage": "управління групами повідомлень",
"action-translate-manage": "Керування групами повідомлень",
- "right-translate-import": "Імпорт офлайнових перекладів",
+ "right-translate-import": "імпорт офлайнових перекладів",
"action-translate-import": "імпорт офлайнових перекладів",
- "right-translate-messagereview": "Рецензування перекладів",
+ "right-translate-messagereview": "рецензування перекладів",
+ "action-translate-messagereview": "здійснення перевірки перекладів",
"right-translate-groupreview": "Змінити стан обробки груп повідомлень",
+ "action-translate-groupreview": "зміну робочого статусу груп повідомлень",
+ "translate-rcfilters-translations": "Переклади",
+ "translate-rcfilters-translations-only-label": "Переклади",
+ "translate-rcfilters-translations-only-desc": "Зміни в перекладених сторінках.",
+ "translate-rcfilters-translations-filter-label": "Не переклади",
+ "translate-rcfilters-translations-filter-desc": "Усі зміни, які не є перекладами.",
+ "translate-rcfilters-translations-site-label": "Системні повідомлення",
+ "translate-rcfilters-translations-site-desc": "Локальні зміни системних повідомлень у просторі назв MediaWiki.",
"translate-rc-translation-filter": "Фільтр перекладів:",
"translate-rc-translation-filter-no": "Немає",
"translate-rc-translation-filter-only": "Показати тільки переклади",
@@ -154,7 +164,6 @@
"translate-statsf-language": "Список кодів мови, розділених комами:",
"translate-statsf-group": "Список кодів групи мов, розділених комами:",
"translate-statsf-submit": "Перегляд",
- "translate-tag-category": "Сторінки, що можуть бути перекладені",
"translate-tag-page-desc": "Переклад сторінки [[$2|$1]] із $3 ($4).",
"translate-sidebar-alltrans": "Іншими мовами",
"translations": "Всі переклади",
@@ -196,16 +205,17 @@
"translate-mgs-noempty": "Не показувати мов, які не мають жодного перекладу",
"translate-mgs-submit": "Показати статистику",
"translate-mgs-column-language": "Мова",
- "translate-mgs-totals": "Всі мови разом",
+ "translate-mgs-totals": "Всі $1 {{PLURAL:$1|мова|мови|мов}} разом",
"translate-mgs-invalid-group": "Зазначеної групи $1 не існує.",
- "translate-mgs-nothing": "Немає статистики за вашим запитом.",
+ "translate-mgs-nothing": "Немає статистики за Вашим запитом.",
"supportedlanguages": "Підтримувані мови",
"supportedlanguages-summary": "На цій сторінці перелічено всі мови, що підтримуються {{SITENAME}},\nразом з іменами перекладачів, що працюють цими мовами.\nІм'я перекладача буде тим більшим, що більше редагувань він зробив.\nКолір підкреслення позначає як давно було вчинено останні дії.",
"supportedlanguages-colorlegend": "Кольорова легенда: останній переклад здійснено $1 днів тому.",
"supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|Перекладач|Перекладачка}}|Перекладачі}}: $1",
"supportedlanguages-recenttranslations": "останні переклади",
"supportedlanguages-count": "Всього $1 {{PLURAL:$1|мова|мови|мов}}.",
- "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|редагування|редагування|редагувань}} — остання правка $3 {{PLURAL:$3|день|дня|днів}} тому",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|редагування|редагування|редагувань}} — останнє редагування $3 {{PLURAL:$3|день|дні|днів}} тому",
+ "abusefilter-edit-builder-vars-translate-source-text": "Вихідний текст одиниці перекладу",
"translate-save": "Зберегти ($1)",
"translate-jssti-add": "Додати в список",
"managemessagegroups": "Керування групами повідомлень",
@@ -229,7 +239,6 @@
"translate-manage-toolong": "Перевищено максимальний час обробки, що складає $1 {{PLURAL:$1|секунду|секунди|секунд}}.\nБудь ласка, відправте дані знову, щоб продовжити обробку.",
"translate-manage-import-summary": "Імпорт нової версії із зовнішнього джерела",
"translate-manage-conflict-summary": "Імпорт нової версії із зовнішнього джерела.\nБудь ласка, перевірте її.",
- "translate-manage-fuzzy-summary": "Формулювання повідомлення було змінено.",
"translate-manage-submit": "Виконати",
"translate-manage-intro-other": "Далі наведено список змін перекладів мовою: $1.\nБудь ласка, перевірте ці зміни і виберіть дію, яку застосувати щодо кожного оновлення.\nЯкщо Ви оберете проігнорувати зміни, то ця дія лише тимчасова.",
"translate-manage-import-ok": "Імпортовано: $1",
@@ -238,7 +247,7 @@
"translate-import-from-local": "Завантажити локальний файл:",
"translate-import-load": "Завантажити файл",
"translate-import-err-dl-failed": "Не вдалося переслати файл:\n$1",
- "translate-import-err-ul-failed": "Не вдалося переслати файл",
+ "translate-import-err-ul-failed": "Завантажити файл не вдалося",
"translate-import-err-invalid-title": "Вказана назва файлу <nowiki>$1</nowiki> неправильна.",
"translate-import-err-no-such-file": "Файл <nowiki>$1</nowiki> не існує або не завантажений локально.",
"translate-import-err-stale-group": "Група повідомлень, до якої належить цей файл, не існує.",
@@ -247,9 +256,7 @@
"translate-js-summary": "Опис:",
"translate-js-save": "Зберегти",
"translate-js-next": "Зберегти і відкрити наступне",
- "translate-js-nonext": "Це було останнє повідомлення з цієї сторінки.",
"translate-js-skip": "Перейти до наступного",
- "translate-js-save-failed": "Збереження не виконане. Будь ласка, повідомте про цю помилку.",
"translate-js-history": "Історія перекладу",
"translate-js-support": "Поставити запитання",
"translate-js-support-title": "Попросіть про допомогу, якщо ви не маєте достатньої інформації для правильного перекладу цього повідомлення.",
@@ -263,40 +270,25 @@
"translate-gs-count": "Кількість",
"translate-gs-total": "Всього",
"translate-gs-avgscore": "Сер. оцінка",
- "translate-documentation-language": "Документація повідомлення",
+ "translate-documentation-language": "документація повідомлень",
"translate-searchprofile": "Переклади",
"translate-searchprofile-tooltip": "Пошук серед усіх перекладів",
+ "translate-searchprofile-note": "Більше можливостей пошуку доступні у [$1 пошуку перекладів].",
"translate-search-languagefilter": "Фільтр мов:",
"translate-search-nofilter": "Без фільтрації",
- "translate-messagereview-submit": "Помітити як перевірене",
- "translate-messagereview-progress": "Помітка як перевірене…",
- "translate-messagereview-failure": "Помилка помітки як перевірене: $1",
- "translate-messagereview-done": "Перевірено",
- "translate-messagereview-reviews": "Перевірено $1 {{PLURAL:$1|1=користувачем|користувачами}}",
- "translate-messagereview-reviewswithyou": "Перевірено {{PLURAL:$1|1=Вами|$1 користувачами разом з Вами}}",
- "api-error-invalidrevision": "Переклад не знайдено",
- "api-error-unknownmessage": "Повідомлення не знайдено",
- "api-error-fuzzymessage": "Переклад позначено як неточний",
- "api-error-owntranslation": "Ви не можете помічати Ваші власні переклади як перевірені",
- "translate-messagereview-no-fuzzy": "Переклади, що позначено як нечіткі (Fuzzy), не може бути перевірено.",
- "translate-messagereview-no-own": "Ви не можете позначати власні переклади як перевірені.",
- "translate-messagereview-doit": "Позначити цей переклад як перевірений.",
"log-name-translationreview": "Журнал рецензування перекладів",
"log-description-translationreview": "Журнал усіх рецензій та груп повідомлень",
"logentry-translationreview-message": "$1 {{GENDER:$2|перевірив|перевірила}} переклад $3",
"logentry-translationreview-group": "$1 {{GENDER:$2|змінив|змінила}} стан {{PLURAL:$4|1=перекладу|перекладів}} сторінки $3 мовою $4 з $6 на $7",
"group-translate-sandboxed": "Незатверджені переклади",
"group-translate-sandboxed-member": "{{GENDER:$1|незатверджений перекладач|незатверджена перекладачка}}",
- "right-translate-sandboxmanage": "Керування користувачами пісочниці",
+ "right-translate-sandboxmanage": "керування користувачами пісочниці",
"action-translate-sandboxmanage": "керування користувачами пісочниці",
"right-translate-sandboxaction": "виконання дій, дозволених користувачам в пісочниці",
"action-translate-sandboxaction": "виконання дій, дозволених користувачам у пісочниці",
"translate-workflow-state-": "(не встановлено)",
"translate-workflowstatus": "Статус: $1",
- "translate-workflow-set-do": "Встановити",
"translate-workflow-set-doing": "Встановлення...",
- "translate-workflow-set-done": "Установлено!",
- "translate-workflow-set-error-alreadyset": "Поточний стан ідентичний тому, що вимагається встановити.",
"translate-workflow-autocreated-summary": "Автоматичне створення сторінки стану для процесу обробки $1.",
"translate-stats-workflow": "Статус",
"translate-workflowgroup-label": "Стан процесу обробки",
@@ -305,11 +297,6 @@
"translate-dynagroup-recent-desc": "Ця група повідомлень містить усі останні переклади цією мовою.\nНайзручніший режим для завдань перевірки.",
"translate-dynagroup-additions-label": "Останні доповнення",
"translate-dynagroup-additions-desc": "Ця група повідомлень містить нові та змінені повідомлення.",
- "translate-dynagroup-by": "{{GENDER:$1|Переклав|Переклала}} $1",
- "translate-dynagroup-byc": "{{GENDER:$1|Переклав|Переклала}} $1 ($2)",
- "translate-dynagroup-last": "Востаннє змінено {{GENDER:$1|$1}}",
- "translate-dynagroup-lastc": "Востаннє змінено {{GENDER:$1|$1}} ($2)",
- "translate-gethelp": "Довідка",
"translate-msggroupselector-projects": "Група повідомлень",
"translate-msggroupselector-search-placeholder": "Шукати групи",
"translate-msggroupselector-search-all": "Усі",
@@ -323,19 +310,22 @@
"tux-tab-unproofread": "Неперевірені",
"tux-edit": "Редагувати",
"tux-status-optional": "Необов'язково",
- "tux-status-fuzzy": "Застарілі",
+ "tux-status-fuzzy": "Застаріло",
"tux-status-proofread": "Перевірка",
"tux-status-translated": "Перекладено",
"tux-status-saving": "Зберігається...",
- "tux-status-unsaved": "Незбережено",
+ "tux-status-unsaved": "Не збережено",
+ "tux-save-unknown-error": "Трапилась невідома помилка.",
"tux-editor-placeholder": "Ваш переклад",
+ "tux-editor-editsummary-placeholder": "Необов'язковий короткий опис",
"tux-editor-paste-original-button-label": "Вставити вихідний текст",
"tux-editor-discard-changes-button-label": "Скасувати зміни",
"tux-editor-save-button-label": "Зберегти переклад",
"tux-editor-skip-button-label": "Перейти до наступного",
"tux-editor-cancel-button-label": "Скасувати",
"tux-editor-confirm-button-label": "Підтвердити переклад",
- "tux-editor-shortcut-info": "Натисніть «$1» щоб зберегти або «$2» для переходу до наступного повідомлення або \"$3\" для інших ярликів",
+ "tux-editor-proofread-button-label": "Позначити як перевірений",
+ "tux-editor-shortcut-info": "Натисніть «$1» щоб зберегти, або «$2» для переходу до наступного повідомлення, або «$4» щоб додати короткий опис, або «$3» для інших ярликів.",
"tux-editor-edit-desc": "Редагувати документацію",
"tux-editor-add-desc": "Додати документацію",
"tux-editor-suggestions-title": "Пропозиції",
@@ -390,9 +380,11 @@
"tux-editor-close-tooltip": "Закрити",
"tux-editor-expand-tooltip": "Розгорнути",
"tux-editor-collapse-tooltip": "Згорнути",
+ "tux-editor-message-tools-show-editor": "Показати у вікіредакторі",
"tux-editor-message-tools-history": "Історія",
"tux-editor-message-tools-delete": "Вилучити",
"tux-editor-message-tools-translations": "Усі переклади",
+ "tux-editor-message-tools-linktothis": "Посилання на це повідомлення",
"tux-editor-loading": "Завантаження…",
"translate-search-more-languages-info": "Ще $1 {{PLURAL:$1|мова|мови|мов}}",
"translate-statsbar-tooltip": "$1% перекладено, $2% перевірено",
@@ -400,5 +392,6 @@
"translate-search-more-groups-info": "Ще $1 {{PLURAL:$1|група|групи|груп}}",
"translate-ulsdep-title": "Помилка конфігурації",
"translate-ulsdep-body": "Розширення перекладу залежить від [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector розширення «Універсальний мовний селектор»].",
- "tux-session-expired": "Зараз ви не авторизовані. Будь ласка, увійдіть до системи на окремій вкладці. Або зробіть копію незбереженого перекладу, увійдіть та поверніться до цієї сторінки."
+ "tux-session-expired": "Зараз Ви не авторизовані. Будь ласка, увійдіть до системи на окремій вкладці. Або зробіть копію незбереженого перекладу, увійдіть, поверніться до цієї сторінки та введіть свої переклади знову.",
+ "tux-nojs": "Цей інструмент не працює без JavaScript. JavaScript вимкнено, не вдалося запустити, або ж цей браузер не підтримується."
}
diff --git a/MLEB/Translate/i18n/core/ur.json b/MLEB/Translate/i18n/core/ur.json
index bd3cb81e..3f9abd84 100644
--- a/MLEB/Translate/i18n/core/ur.json
+++ b/MLEB/Translate/i18n/core/ur.json
@@ -4,101 +4,270 @@
"Noor2020",
"Tahir mq",
"පසිඳු කාවින්ද",
- "عثمان خان شاہ"
+ "عثمان خان شاہ",
+ "Muhammad Shuaib",
+ "Hindustanilanguage",
+ "Obaid Raza",
+ "Zainab Meher",
+ "BukhariSaeed"
]
},
- "translate": "کا ترجمہ",
- "translate-taskui-view": "تمام پیغامات دکھائیں",
- "translate-taskui-optional": "کچھ اختیاری پیغامات دکھائیں",
- "translate-taskui-acceptqueue": "صرف پیغامات میں قبول کر سکتے ہیں",
- "translate-taskui-reviewall": "سب ترجمے کا جائزہ لیں",
+ "translate": "ترجمہ",
+ "translate-desc": "میڈیاویکی وغیرہ کا ترجمہ کرنے کے لیے [[Special:Translate|خصوصی صفحہ]]",
"translate-taskui-export-to-file": "مقامی کی شکل میں برآمد",
"translate-taskui-export-as-po": "آف لائن ترجمہ کے لئے برآمد",
- "translate-taction-translate": "کا ترجمہ",
+ "translate-taction-translate": "ترجمہ کریں",
+ "translate-taction-proofread": "نظر ثانی",
+ "translate-taction-lstats": "شماریات زبان",
+ "translate-taction-mstats": "پیامی گروہوں کی شماریات",
+ "translate-taction-export": "برآمد",
+ "translate-taction-disabled": "یہ اقدام اس ویکی پر غیر فعال ہے۔",
+ "translate-page-no-such-language": "درج کردہ زبان نادرست ہے۔",
+ "translate-page-no-such-group": "درج کردہ گروہ نادرست ہے۔",
+ "translate-page-disabled": "اس گروپ میں اس زبان کا ترجمہ غیر فعال کر دیا گیا ہے۔\nوجہ:\n\n<em>$1</em>",
+ "translate-language-disabled": "اس زبان میں ترجمہ کو غیر فعال کر دیا گیا ہے۔",
"translate-page-settings-legend": "ترتیبات",
"translate-page-group": "گروپ",
"translate-page-language": "زبان",
+ "translate-page-limit": "حد",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|پیغام|پیغاما}} فی صفحہ",
+ "translate-submit": "اخذ کریں",
"translate-page-navigation-legend": "نیوی گیشن",
"translate-page-showing-none": "کو دکھانے کے لئے کوئی پیغامات ۔",
"translate-next": "اگلا صفحہ",
"translate-prev": "سابق صفحہ",
"translate-page-description-hasoptional-open": "کچھ اختیاری پیغامات دکھائیں ۔",
"translate-page-edit": "ترمیم کریں",
+ "translate-optional": "(اختیاری)",
+ "translate-ignored": "(نظر انداز شدہ)",
+ "translate-edit-title": "ترمیم «$1»",
+ "translate-edit-definition": "پیغام کی وضاحت",
"translate-edit-translation": "ترجمہ",
"translate-edit-contribute": "میں شراکت",
+ "translate-edit-no-information": "<em>اس پیغام کی دستاویز نہیں ہے۔\nاگر آپ اس پیغام کے استعمال سے واقف ہیں تو اس کی دستاویز بنا کر آپ دیگر مترجمین کا تعاون کر سکتے ہیں۔</em>",
+ "translate-edit-information": "پیغام ($1) کے متعلق",
"translate-edit-in-other-languages": "دیگر زبانوں میں پیغام",
+ "translate-edit-warnings": "نامکمل ترجموں کے متعلق انتباہات",
+ "translate-edit-nopermission": "پیغامات کے ترجمے کے لیے آپ کے پاس ترجمہ کاری کا اختیار ہونا لازمی ہے۔",
+ "translate-edit-askpermission": "اجازت حاصل کریں",
+ "exporttranslations": "تراجم برآمد کریں",
+ "translate-export-form-format": "فارمیٹ",
+ "translate-export-invalid-format": "براہ کرم درست فارمیٹ عنایت کریں",
+ "translate-export-not-supported": "تراجم کی برآمد ممکن نہیں۔",
+ "translate-magic-pagename": "میڈیاویکی کا وسیع ترجمہ",
+ "translate-magic-module": "ماڈیول:",
+ "translate-magic-submit": "اخذ کریں",
+ "translate-magic-cm-export": "برآمد کریں",
+ "translate-magic-nothing-to-export": "یہاں کوئی بھی قابل برآمد شے موجود نہیں ہے۔",
"translate-magic-cm-current": "موجودہ",
+ "translate-magic-cm-original": "اصلی",
"translate-magic-cm-comment": "تبصرہ:",
"translate-magic-cm-save": "محفوظ کریں",
- "translate-magic-cm-savefailed": "ناکام محفوظ",
+ "translate-magic-cm-updatedusing": "تجدید بذریعہ [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "محفوظ نہیں ہو سکا",
+ "translate-magic-special": "خصوصی صفحات کے نام",
"translate-magic-words": "جادوئی الفاظ",
+ "translate-magic-namespace": "نام فضا کے نام",
+ "translate-magic-notsaved": "آپ کی ترمیم محفوظ نہیں ہوئی!",
+ "translate-magic-errors": "براہ کرم ترجموں میں درج ذیل {{PLURAL:$1|نقص|نقائص}} کو درست کریں:",
+ "translate-magic-saved": "آپ کی تبدیلیاں محفوظ ہو گئیں۔",
+ "translate-pref-editassistlang": "معاون زبانیں:",
+ "prefs-translate": "اختیارات ترجمہ",
+ "translate-pref-editassistlang-bad": "فہرست میں نادرست رمز زبان:\n<nowiki>$1</nowiki>",
+ "right-translate-manage": "پیامی گروہوں کا انتظام",
+ "action-translate-manage": "پیامی گروہوں کا انتظام",
+ "right-translate-import": "آف لائن تراجم کو درآمد کریں",
+ "action-translate-import": "آف لائن تراجم کو درآمد کریں",
+ "right-translate-messagereview": "تراجم کی نظر ثانی کریں",
+ "action-translate-messagereview": "ترجموں پر نظر ثانی کی",
+ "translate-rcfilters-translations": "تراجم",
+ "translate-rcfilters-translations-only-label": "تراجم",
+ "translate-rcfilters-translations-only-desc": "ترجمہ کردہ صفحات میں تبدیلیاں",
+ "translate-rcfilters-translations-filter-label": "تراجم نہیں",
+ "translate-rcfilters-translations-filter-desc": "تمام تبدیلیاں جو تراجم نہیں ہیں۔",
+ "translate-rcfilters-translations-site-label": "سائیٹ کے پیغامات",
+ "translate-rc-translation-filter": "ترجموں کو فلٹر کریں:",
+ "translate-rc-translation-filter-no": "کچھ نہ کریں",
+ "translate-rc-translation-filter-only": "فقط تراجم دکھاییں",
+ "translate-rc-translation-filter-filter": "ترجموں کو خارج کریں",
+ "translate-rc-translation-filter-site": "فقط ویب سائٹ کے پیغامات میں ہونے والی تبدیلیاں",
+ "translationstats": "ترجمہ کے اعداد و شمار",
+ "translate-stats-edits": "ترامیم",
"translate-stats-users": "مترجمین",
+ "translate-stats-registrations": "اندراجات",
+ "translate-stats-reviews": "نظر ثانیاں",
"translate-stats-reviewers": "مبصرین",
"translate-statsf-options": "مخطط کے اختیارات",
+ "translate-statsf-width": "چوڑائی پکسل میں:",
+ "translate-statsf-height": "لمبائی پکسل میں:",
+ "translate-statsf-days": "وقت کا دورانیہ دنوں میں:",
"translate-statsf-start": "تاریخ شروع ہو رہا ہے:",
"translate-statsf-scale-months": "ماہ",
- "translate-statsf-scale-weeks": "ہفتوں",
+ "translate-statsf-scale-weeks": "ہفتے",
"translate-statsf-scale-days": "دن",
"translate-statsf-scale-hours": "گھنٹے",
"translate-statsf-count": "پیمائش:",
- "translate-statsf-count-edits": "گئی تدوین کی تعداد",
+ "translate-statsf-count-edits": "تعداد ترامیم",
"translate-statsf-count-users": "فعال مترجمین",
"translate-statsf-count-registrations": "نئے صارفین",
"translate-statsf-count-reviews": "ترجمہ کا جائزہ",
"translate-statsf-count-reviewers": "مبصرین",
- "translate-statsf-submit": "پیش نظارہ",
- "translate-tag-category": "ترجمہ صفحات",
+ "translate-statsf-language": "رموز زبان کی وقفہ سے علاحدہ شدہ فہرست",
+ "translate-statsf-submit": "نمائش",
"translate-sidebar-alltrans": "دیگر زبانوں میں",
- "translations": "سب ترجمے",
+ "translations": "جملہ تراجم",
+ "translations-summary": "تمام دستیاب تراجم دیکھنے کے لیے ذیل میں کسی پیغام کا نام درج کریں۔",
"translate-translations-fieldset-title": "پیغام",
"translate-translations-messagename": "نام:",
"translate-translations-project": "منصوبہ:",
- "languagestats": "زبان کے اعداد و شمار",
- "languagestats-recenttranslations": "حال ہی میں ترجمے",
+ "translate-translations-history-short": "ت",
+ "languagestats": "لسانی شماریات",
+ "languagestats-summary": "اس صفحہ میں متعلقہ زبان کے تمام پیامی گروہوں کے تراجم کے اعداد و شمار درج ہیں۔",
+ "languagestats-stats-for": "$1 کے تراجم کے اعداد و شمار ($2)۔",
+ "languagestats-recenttranslations": "حالیہ تراجم",
"translate-langstats-expand": "وسیع کریں",
- "translate-langstats-collapse": "خاتمے",
- "translate-langstats-expandall": "تمام وسیع کریں",
+ "translate-langstats-collapse": "چھپائیں",
+ "translate-langstats-expandall": "سب کو کھولیں",
"translate-langstats-collapseall": "تمام کو مختصر کریں",
- "translate-language-code": "زبان کے کوڈ",
+ "translate-language-code": "رمز زبان",
"translate-language-code-field-name": "زبان کے کوڈ:",
+ "translate-suppress-complete": "مکمل ترجمہ شدہ پیامی گروہوں کو چھپائیں",
+ "translate-ls-noempty": "مکمل طور پر غیر ترجمہ شدہ پیامی گروہوں کو چھپائیں",
"translate-language": "زبان",
"translate-total": "پیغامات",
+ "translate-untranslated": "غیر ترجمہ شدہ",
"translate-percentage-complete": "تکمیل",
- "translate-ls-submit": "شو کے اعداد و شمار",
- "translate-ls-column-group": "پیغام کے گروپ",
+ "translate-percentage-fuzzy": "از کار رفتہ",
+ "translate-languagestats-overall": "تمام پیامی گروہ ایک ساتھ",
+ "translate-ls-submit": "شماریات دکھائیں",
+ "translate-ls-column-group": "پیامی گروہ",
"translate-mgs-pagename": "پیغام گروپ کے اعداد و شمار",
"translate-mgs-fieldset": "ڈسپلے کی ترجیحات",
+ "translate-mgs-group": "پیامی گروہ:",
+ "translate-mgs-nocomplete": "ان زبانوں کو نہ دکھائیں جن کے تراجم مکمل ہو چکے ہیں",
+ "translate-mgs-noempty": "ان زبانوں کو نہ دکھائیں جن کے تراجم نہیں ہوئے ہیں",
+ "translate-mgs-submit": "شماریات دکھائیں",
"translate-mgs-column-language": "زبان",
- "translate-mgs-totals": "تمام زبانوں کی ایک ساتھ",
+ "translate-mgs-totals": "جملہ $1 {{PLURAL:$1|زبان|زبانیں}} ایک ساتھ",
"supportedlanguages": "حمایت کی زبانیں",
+ "supportedlanguages-recenttranslations": "حالیہ تراجم",
"translate-jssti-add": "فہرست کرنے کے لئے شامل کریں",
"translate-smg-right": "آنے والی تبدیلیاں",
"translate-manage-action-import": "درآمد",
"translate-manage-action-ignore": "نظر انداز",
+ "translate-manage-import-ok": "درآمد شدہ: $1",
+ "translate-manage-import-done": "درآمد مکمل!",
+ "importtranslations": "تراجم درآمد کریں",
"translate-import-load": "بوجھ فائل",
"translate-js-summary": "خلاصہ:",
"translate-js-save": "محفوظ کریں",
+ "translate-js-skip": "آگے بڑھ جائیں",
"translate-js-history": "ترجمہ کی تاریخ",
"translate-js-support": "سوال پوچھیں",
+ "translate-js-support-unsaved-warning": "آپ کے کچھ تراجم اب تک محفوظ نہیں ہوئے ہیں۔",
"translate-gs-continent": "براعظم",
"translate-gs-speakers": "مقررین",
"translate-gs-score": "سکور",
"translate-gs-multiple": "ایک سے زیادہ",
"translate-gs-count": "شمار",
"translate-gs-total": "کل",
- "translate-documentation-language": "پیغام دستاویزات",
+ "translate-documentation-language": "پیغام کی دستاویز سازی",
"translate-searchprofile": "ترجمہ",
- "translate-messagereview-submit": "قبول",
- "translate-workflow-set-do": "مرتب کریں",
+ "translate-searchprofile-tooltip": "تمام تراجم میں تلاش کریں",
+ "translate-search-languagefilter": "فلٹر بلحاظ زبان",
+ "translate-search-nofilter": "کوئی فلٹر نہیں",
+ "log-name-translationreview": "نوشتہ مراجعت ترجمہ",
+ "logentry-translationreview-message": "$1 نے $3 ترجمہ پر {{GENDER:$2|نظر ثانی کی}}",
+ "group-translate-sandboxed": "غیر منظور شدہ مترجمین",
+ "translate-workflow-state-": "(غیر مرتب)",
+ "translate-workflow-set-doing": "مرتب ہو رہا ہے۔۔۔",
"translate-stats-workflow": "حیثیت",
- "translate-gethelp": "مدد",
+ "translate-dynagroup-recent-label": "حالیہ تراجم",
+ "translate-dynagroup-recent-desc": "اس پیامی گروہ میں اس زبان میں ہونے والے تازہ ترین ترجموں کو دکھایا گیا ہے۔\nنظرثانی کے کاموں کے لیے انتہائی مفید ہے۔",
+ "translate-dynagroup-additions-label": "حالیہ اضافے",
+ "translate-msggroupselector-projects": "گروہ پیغامات",
+ "translate-msggroupselector-search-all": "تمام",
+ "translate-msggroupselector-search-recent": "حالیہ",
+ "tux-languageselector": "ترجمہ در",
+ "tux-tab-all": "تمام",
+ "tux-tab-untranslated": "غیر ترجمہ شدہ",
+ "tux-tab-outdated": "از کار رفتہ",
+ "tux-tab-translated": "ترجمہ شدہ",
+ "tux-tab-unproofread": "غیر نظرثانی شدہ",
+ "tux-edit": "ترمیم",
+ "tux-status-optional": "اختیاری",
+ "tux-status-fuzzy": "از کار رفتہ",
+ "tux-status-proofread": "نظرثانی شدہ",
+ "tux-status-translated": "ترجمہ مکمل",
+ "tux-status-saving": "محفوظ ہورہا ہے...",
+ "tux-status-unsaved": "غیر محفوظ",
+ "tux-save-unknown-error": "نامعلوم نقص واقع ہوا ہے۔",
+ "tux-editor-placeholder": "آپ کا ترجمہ",
+ "tux-editor-editsummary-placeholder": "اختیاری خلاصہ",
+ "tux-editor-paste-original-button-label": "ماخذی متن چسپاں کریں",
"tux-editor-discard-changes-button-label": "تبدیلیاں مسترد کریں",
+ "tux-editor-save-button-label": "ترجمہ محفوظ کریں",
+ "tux-editor-skip-button-label": "آگے بڑھیں",
+ "tux-editor-cancel-button-label": "منسوخ کریں",
+ "tux-editor-confirm-button-label": "ترجمہ کی تصدیق کریں",
+ "tux-editor-proofread-button-label": "بطور نظرثانی شدہ نشان زد کریں",
+ "tux-editor-shortcut-info": "محفوظ کرنے کے لیے \"$1\"، اسے چھوڑ کر آگے بڑھنے کے لیے \"$2\"، خلاصہ درج کرنے کے لیے \"$4\" یا دیگر شارٹ کٹ کے لیے \"$3\" دبائیں۔",
+ "tux-editor-edit-desc": "دستاویز میں ترمیم کریں",
+ "tux-editor-add-desc": "دستاویز شامل کریں",
+ "tux-editor-suggestions-title": "تجاویز",
+ "tux-editor-in-other-languages": "دیگر زبانوں میں",
+ "tux-editor-need-more-help": "مزید مدد کی ضرورت ہے؟",
+ "tux-editor-ask-help": "مزید معلومات طلب کریں",
+ "tux-warnings-hide": "چھپائیں",
+ "tux-editor-message-desc-more": "مزید دیکھیں",
+ "tux-editor-message-desc-less": "کم دکھائیں",
+ "tux-editor-clear-translated": "ترجمہ شدہ کو چھپائیں",
+ "tux-editor-proofreading-mode": "نظرثانی کریں",
+ "tux-editor-translate-mode": "فہرست",
+ "tux-editor-proofreading-hide-own-translations": "اپنے تراجم کو چھپائیں",
+ "tux-editor-proofreading-show-own-translations": "اپنے تراجم دکھائیں",
+ "tux-proofread-action-tooltip": "بطور نظرثانی شدہ نشان زد کریں",
+ "tux-proofread-edit-label": "ترمیم",
+ "tux-editor-page-mode": "صفحہ",
+ "tux-editor-outdated-warning": "اس ترجمے کی تجدید ضروری ہے۔",
+ "tux-editor-outdated-warning-diff-link": "فرق دکھائیں",
+ "tux-editor-doc-editor-placeholder": "پیغام کی دستاویز سازی",
+ "tux-editor-doc-editor-save": "دستاویز محفوظ کریں",
+ "tux-editor-doc-editor-cancel": "منسوخ کریں",
+ "tux-messagetable-more-messages": "$1 مزید {{PLURAL:$1|پیغام}}",
+ "tux-messagetable-loading-messages": "{{PLURAL:$1|پیغام}} لوڈ ہو رہے ہیں۔۔۔",
+ "tux-message-filter-placeholder": "فہرست میں تلاش کریں",
+ "tux-message-filter-result": "«$2» {{PLURAL:$1|کا|کے}} $1 {{PLURAL:$1|نتیجہ ملا|نتائج ملے}}",
+ "tux-message-filter-advanced-button": "پیشرفتہ تلاش",
+ "tux-message-filter-optional-messages-label": "اختیاری پیغامات",
+ "tux-proofread-translated-by-self": "آپ کے تراجم",
+ "tux-empty-list-translated": "کوئی ترجمہ شدہ پیغام نہیں ہے",
+ "tux-empty-list-translated-guide": "آپ ترجمہ کرنے میں مدد کر سکتے ہیں",
+ "tux-empty-list-translated-action": "ترجمہ کریں",
"tux-empty-no-messages-to-display": "دکھانے کے لیے کوئی پیغام نہیں ہے ۔",
"tux-empty-there-are-optional": "اختیاری پیغامات کو فہرست میں نہیں دکھایا گیا ہے ۔",
"tux-empty-show-optional-messages": "اختیاری پیغامات دکھائیں",
"tux-empty-no-outdated-messages": "کوئی پرانے پیغامات نہيں ہیں",
- "tux-empty-nothing-to-proofread": "کوئی اصلاح کے لئے نیا کام نہیں ہے",
+ "tux-empty-nothing-to-proofread": "نظرثانی کے لیے کچھ نہیں ہے",
"tux-empty-you-can-help-providing": "آپ نئے ترجمے فراہم کرنے میں مدد کر سکتے ہیں",
- "tux-empty-nothing-new-to-proofread": "کوئی اصلاح کے لئے نیا کام نہیں ہے",
- "tux-empty-you-can-review-already-proofread": "آپ پہلے سے ہی دوسروں کی طرف سے علیحدہ تصحیح املاء ترجمے کا جائزہ لے سکتے ہیں ۔"
+ "tux-empty-nothing-new-to-proofread": "نظرثانی کے لیے کوئی تازہ پیغام نہیں ہے",
+ "tux-empty-you-can-review-already-proofread": "البتہ جن ترجموں پر دیگر افراد نے نظرثانی کر لی ہے آپ ان کی نظر ثانی کر سکتے ہیں۔",
+ "tux-empty-list-other": "ترجمہ کے لیے کوئی مواد نہیں",
+ "tux-empty-list-other-guide": "آپ موجودہ ترجموں کی نظرثانی میں مدد کر سکتے ہیں",
+ "tux-empty-list-other-action": "ترجموں پر نظر ثانی کریں",
+ "tux-empty-list-other-link": "تمام پیغامات دکھائیں",
+ "tux-editor-close-tooltip": "بند کریں",
+ "tux-editor-expand-tooltip": "کھولیں",
+ "tux-editor-collapse-tooltip": "چھپائیں",
+ "tux-editor-message-tools-show-editor": "ویکی خانہ ترمیم میں دکھائیں",
+ "tux-editor-message-tools-history": "تاریخچہ",
+ "tux-editor-message-tools-delete": "حذف کریں",
+ "tux-editor-message-tools-translations": "جملہ تراجم",
+ "tux-editor-message-tools-linktothis": "اس پیغام سے ربط کریں",
+ "tux-editor-loading": "لوڈ ہو رہا ہے۔۔۔",
+ "translate-search-more-languages-info": "$1 مزید {{PLURAL:$1|زبان|زبانیں}}",
+ "translate-statsbar-tooltip": "$1% ترجمہ شدہ، $2% نظر ثانی شدہ",
+ "translate-statsbar-tooltip-with-fuzzy": "$1٪ ترجمہ شدہ، $2٪ نظر ثانی شدہ، $3٪ ازکار رفتہ",
+ "tux-session-expired": "آپ لاگ ان نہیں نہیں، براہ کرم دوسرے ٹیب میں لاگ ان ہوں۔ یا غیر محفوظ ترجموں کو نقل کریں، لاگ ان ہوں اور واپس اس صفحے میں پہنچ کر اپنے ترجمے دوبارہ درج کریں۔",
+ "tux-nojs": "اس صفحے کے لیے جاوا اسکرپٹ درکار ہے۔"
}
diff --git a/MLEB/Translate/i18n/core/uz.json b/MLEB/Translate/i18n/core/uz.json
index 4670bb1a..c168d4e2 100644
--- a/MLEB/Translate/i18n/core/uz.json
+++ b/MLEB/Translate/i18n/core/uz.json
@@ -7,11 +7,6 @@
},
"translate": "Tarjima",
"translate-desc": "MediaWiki va boshqa dasturlarni tarjima qilish uchun [[Special:Translate|maxsus sahifa]]",
- "translate-taskui-view": "Barcha xabarlarni koʻrsatish",
- "translate-taskui-untranslated": "Tarjima qilinmagan xabarlarni koʻrsatish",
- "translate-taskui-optional": "Qoʻshimcha xabarlarni koʻrsatish",
- "translate-taskui-acceptqueue": "Faqat mening roziligim zarur bo'lgan xabarlar",
- "translate-taskui-reviewall": "Barcha tarjimalarni tekshirib chiqish",
"translate-taskui-export-to-file": "O'z formatida eksport qilish",
"translate-taskui-export-as-po": "Off-line tarjima uchun eksport qilish",
"translate-taction-translate": "Tarjima",
@@ -40,7 +35,6 @@
"translate-page-description-hasoptional": "Mazkur guruhda qo'shimcha xabarlar mavjud.\nQo'shimcha xabarlar faqat shu hollardagina tarjima qilinadi, qachonki xususiy nomlarni transliteratsiya qilishda, yoki agar sizning tilingiz qandaydir qo'shimcha shartlarni taqdim qilsa, - masalan, agarki qayerlardadir bo'sh joydan foydalanmaslik kerak bo'lsa. $1",
"translate-page-description-hasoptional-open": "Qoʻshimcha xabarlarni koʻrsatish",
"translate-page-edit": "tahrir",
- "translate-ext-url": "<hr />Sayt: $1",
"translate-optional": "(majburiy emas)",
"translate-ignored": "(e'tiborga olinmagan)",
"translate-edit-title": "Tahrir \"$1\"",
@@ -50,9 +44,7 @@
"translate-edit-no-information": "'Bu xabar tavsifga ega emas. Agar siz bu xabar qayerda va qanday ishlatilishini bilsangiz, u holda unga tavsif kiritib boshqa tarjimonlarga yordam berishingiz mumkin.''",
"translate-edit-information": "Xabar haqida maʼlumot ($1)",
"translate-edit-in-other-languages": "Xabar boshqa tillarda",
- "translate-edit-committed": "Dasturda joriy tarjima",
"translate-edit-warnings": "Chala tarjima qilinayotgani haqida ogohlantirishlar",
- "translate-edit-tmsugs": "Tarjimalar xotirasidan takliflar",
"translate-edit-tmmatch-source": "Tarjima uchun manba xabar matni: $1",
"translate-edit-tmmatch": "$1% moslik",
"translate-use-suggestion": "Joriy tarjima matnini mazkur taklifga almashtirish.",
@@ -99,7 +91,7 @@
"translate-rc-translation-filter-no": "Cheklovlarsiz",
"translate-rc-translation-filter-only": "Faqat tarjimalarni koʻrsatish",
"translate-rc-translation-filter-filter": "Tarjimalarni yashirish",
- "translate-rc-translation-filter-site": "Faqat saytning tizimli xabarlari",
+ "translate-rc-translation-filter-site": "Faqat sayt tizimining xabarlari",
"translationstats": "Tarjimalar statistikasi",
"translate-stats-edits": "Tahrirlar",
"translate-stats-users": "Tarjimonlar",
@@ -126,7 +118,6 @@
"translate-statsf-language": "Til kodlari roʻyxati vergul orqali:",
"translate-statsf-group": "Guruh kodlari roʻyxati vergul orqali:",
"translate-statsf-submit": "Ko‘rib chiqish",
- "translate-tag-category": "Tarjima qilinadigan sahifalar",
"translate-tag-page-desc": "[[$2|$1]] viki-sahifasining tarjimasi",
"translate-sidebar-alltrans": "Boshqa tillarda",
"translations": "Barcha tarjimalar",
@@ -165,7 +156,7 @@
"translate-mgs-submit": "Statistikani koʻrsat",
"translate-mgs-column-language": "Til",
"supportedlanguages": "Mavjud tillar",
- "supportedlanguages-summary": "Ushbu sahifada {{SITENAME}} loyihasi tomonidan qoʻllaniladigan tillar roʻyxati va shu tillarga tarjima qilish ustida ishlayotganlar nomi keltirilgan.\nTarjimonning nomi u qancha koʻp tahrirlar qilgan boʻlsa, shuncha yirikroq tasvirlanadi.\nTagchiziqning rangiga qarab, tarjimon bu yerda qancha vaqt oldin oxirgi marta biror-bir harakatni amalga oshirganligini tushunsa boʻladi.",
+ "supportedlanguages-summary": "Ushbu sahifada {{SITENAME}} loyihasida qoʻllaniladigan tillar roʻyxati va shu tillarga tarjima qilish ustida ishlayotgan tarjimonlar ismi keltirilgan.\nTarjimonning ismi u qancha koʻp tahrirlar qilgan boʻlsa, shuncha yirikroq tasvirlanadi.\nTagchiziqning rangiga qarab, tarjimon bu yerda oxirgi marta qancha vaqt oldin biron-bir harakatni amalga oshirganligini tushunsa boʻladi.",
"supportedlanguages-colorlegend": "Rang sharhi: oxirgi tarjima $1 kun oldin bo'lgan.",
"supportedlanguages-translators": "{{PLURAL:$2|Tarjimon|Tarjimonlar}}: $1",
"supportedlanguages-recenttranslations": "yaqin oradagi tarjimalar",
@@ -187,9 +178,7 @@
"translate-js-summary": "Tavsif",
"translate-js-save": "Saqlash",
"translate-js-next": "Saqlash va keyingisini ochish",
- "translate-js-nonext": "Bu mazkur sahifadagi oxirgi xabar edi.",
"translate-js-skip": "Keyingisiga o'tish",
- "translate-js-save-failed": "Saqlash bajarilmadi. Iltimos, bu kamchilik haqida xabar bering.",
"translate-js-history": "Tarjima tarixi",
"translate-js-support": "Savol berish",
"translate-js-support-title": "Agar ushbu xabarni toʻgʻri tarjima qilish uchun zarur boʻlgan maʼlumotlar yoʻq boʻlsa, yordam soʻrab murojaat qiling.",
@@ -208,34 +197,14 @@
"translate-searchprofile-tooltip": "Barcha tarjimalardan qidirish",
"translate-search-languagefilter": "Mazkur til boʻyicha saralash:",
"translate-search-nofilter": "Filtrsiz",
- "translate-messagereview-submit": "Qabul qilish",
- "translate-messagereview-progress": "Qabul qilinmoqda...",
- "translate-messagereview-failure": "Qabul qilinmoqda... amalga oshmadi: $1",
- "translate-messagereview-done": "Qabul qilindi",
- "translate-messagereview-reviews": "{{PLURAL:$1|foydalanuvchi}} tomonidan qabul qilindi",
- "translate-messagereview-reviewswithyou": "{{PLURAL:$1|Siz|$1 foydalanuvchilar va siz}} tomondan tasdiqlandi",
- "api-error-invalidrevision": "Tarjima topilmadi",
- "api-error-unknownmessage": "Xabar topilmadi",
- "api-error-fuzzymessage": "Tarjima noaniq deb belgilandi",
- "api-error-owntranslation": "Siz oʻzingizning tarjimalaringizni tasdiqlay olmaysiz",
- "translate-messagereview-no-fuzzy": "Noaniq tarjimalar qabul qilinmaydi.",
- "translate-messagereview-no-own": "Siz oʻzingizning tarjimalaringizni tasdiqlay olmaysiz",
- "translate-messagereview-doit": "Ushbu tarjimani to'g'ri deb tasdiqlash.",
"log-name-translationreview": "Tarjimalarni tekshirish qaydlari",
"log-description-translationreview": "Barcha tarjima taqrizlari va xabar guruhlari qaydi",
"logentry-translationreview-message": "$1 $3 sahifasi tarjimasini {{GENDER:$2|tekshirib chiqdi}}",
"translate-workflow-state-": "(o'rnatilmagan)",
"translate-workflowstatus": "Holat: $1",
- "translate-workflow-set-do": "O'rnatish",
"translate-workflow-set-doing": "O'rnatilmoqda...",
- "translate-workflow-set-done": "O'rnatildi!",
"translate-stats-workflow": "Holat",
"translate-workflowgroup-label": "Jarayon holati",
"translate-dynagroup-recent-label": "Yaqin oradagi tarjimalar",
- "translate-dynagroup-recent-desc": "Ushbu xabarlar guruhida mazkur tilga yaqin orada qilingan barcha tarjimalar koʻrsatilgan.\nTarjimalarni koʻzdan kechirib chiqish uchun qulay.",
- "translate-dynagroup-by": "Tarjima {{GENDER:$1|$1}} tomonidan bajarildi",
- "translate-dynagroup-byc": "Tarjima {{GENDER:$1|$1}} ($2) tomonidan bajarildi",
- "translate-dynagroup-last": "Oxirgi oʻzgarish {{GENDER:$1|$1}} tomonidan kiritilgan",
- "translate-dynagroup-lastc": "Oxirgi oʻzgarish {{GENDER:$1|$1}} ($2) tomonidan kiritilgan",
- "translate-gethelp": "Yordam"
+ "translate-dynagroup-recent-desc": "Ushbu xabarlar guruhida mazkur tilga yaqin orada qilingan barcha tarjimalar koʻrsatilgan.\nTarjimalarni koʻzdan kechirib chiqish uchun qulay."
}
diff --git a/MLEB/Translate/i18n/core/vec.json b/MLEB/Translate/i18n/core/vec.json
index dec91bdd..55fc363b 100644
--- a/MLEB/Translate/i18n/core/vec.json
+++ b/MLEB/Translate/i18n/core/vec.json
@@ -29,7 +29,6 @@
"translate-edit-no-information": "''Sto messagio no'l gà documentassion.\nSe te sè dove o come sto messagio el vien doparà, te podi jutar altri tradutori zontando documentassion a sto messagio.''",
"translate-edit-information": "Informassion sul messagio \"$2\" ($1)",
"translate-edit-in-other-languages": "El messagio \"$1\" in altre lengue",
- "translate-edit-committed": "Tradussion atuale del software",
"translate-edit-warnings": "Avertimenti su tradussion incomplete",
"translate-magic-pagename": "Tradussion estesa de MediaWiki",
"translate-magic-help": "Te pol tradur i alias de le pagine speciali, le parole magiche, i nomi de le skin e i nomi dei namespace.\n\nI alias e le parole magiche le pol verghe più tradussion.\nLe tradussion le xe separà da na virgola (,).\nI nomi dei namespace i pol verghe na tradussion sola.\n\nIn te le tradussion dei namespace <code>$1 talk</code> el xe speciale. <code>$1</code> el vien sostituìo col nome del sito (par esenpio <code>{{ns:project_talk}}</code>).\nSe ne la to lengua no se riesse a scrivar na espression valida sensa canbiar el nome del sito, par piaser contata un svilupador.\n\nTe ghè da èssar nel grupo dei tradutori par salvar i canbiamenti.\nI canbiamenti no i xe salvà finché no te struchi el boton qua soto.",
@@ -70,7 +69,6 @@
"translate-statsf-count-edits": "Nùmaro de modifiche",
"translate-statsf-count-users": "Tradutori ativi",
"translate-statsf-submit": "Anteprima",
- "translate-tag-category": "Pagine che se pol tradur",
"translate-tag-page-desc": "Tradussion de la pagina wiki [[$2|$1]].",
"translate-sidebar-alltrans": "In altre lengoe",
"translations": "Tute le tradussion",
@@ -85,5 +83,6 @@
"translate-untranslated": "Mia tradoti",
"translate-percentage-complete": "Conpletà",
"translate-percentage-fuzzy": "Da ajornar",
- "translate-save": "Salva ($1)"
+ "translate-save": "Salva ($1)",
+ "translate-documentation-language": "Documentasion del messajo"
}
diff --git a/MLEB/Translate/i18n/core/vep.json b/MLEB/Translate/i18n/core/vep.json
index dc94b217..119ec650 100644
--- a/MLEB/Translate/i18n/core/vep.json
+++ b/MLEB/Translate/i18n/core/vep.json
@@ -7,11 +7,6 @@
},
"translate": "Käta",
"translate-desc": "[[Special:Translate|Specialine lehtpol']] MediaWikid da toižid programmid kätes",
- "translate-taskui-view": "Ozutada kaik kirjutesed",
- "translate-taskui-untranslated": "Ozutada kändmatomad kirjutesed",
- "translate-taskui-optional": "Ozutada ližakirjutesed",
- "translate-taskui-acceptqueue": "Vaiše kirjutesed, kudambad sab znamoita kut kodvdud",
- "translate-taskui-reviewall": "Kodvda kaik kändmižed",
"translate-taskui-export-to-file": "Eksportiruida ičeze formatas",
"translate-taskui-export-as-po": "Eksportiruida, miše käta verkota",
"translate-taction-translate": "Käta",
@@ -37,7 +32,6 @@
"translate-page-description-legend": "Informacii gruppas",
"translate-page-description-hasoptional-open": "Ozutada ližakirjutesed.",
"translate-page-edit": "redaktiruida",
- "translate-ext-url": "<hr />Sait: $1",
"translate-optional": "(opcionaline)",
"translate-ignored": "(ignoriruidud)",
"translate-edit-title": "Redaktiruida \"$1\"",
@@ -46,7 +40,6 @@
"translate-edit-contribute": "ühtneda",
"translate-edit-information": "Informacii ($1)-kirjutesen polhe",
"translate-edit-in-other-languages": "Tedotuz toižil kelil:",
- "translate-edit-committed": "Nügüdläine känduz programmas",
"translate-edit-warnings": "Varutused täutmatomiš kändusiš",
"translate-edit-tmmatch": "Sättund om $1%",
"translate-edit-askpermission": "Pakita laskendas",
@@ -95,7 +88,6 @@
"translate-statsf-language": "Katkoimel erigoittud kelenkodoiden nimikirjutez:",
"translate-statsf-group": "Katkoimel erigoittud gruppkodoiden nimikirjutez:",
"translate-statsf-submit": "Ezikacund",
- "translate-tag-category": "Ned lehtpoled, kudambad voib käta",
"translate-tag-page-desc": "[[$2|$1]]-wikilehtpolen kändmine.",
"translate-sidebar-alltrans": "Toižil kelil",
"translations": "Kaik kändused",
@@ -148,13 +140,9 @@
"translate-searchprofile": "Kändused",
"translate-searchprofile-tooltip": "Ectä kaikiš kändmižiš",
"translate-search-nofilter": "Fil'truimata",
- "translate-messagereview-submit": "Otta",
- "api-error-invalidrevision": "Ei voi löuta kändust",
"translate-workflow-state-": "(ei ole kävutamas)",
"translate-workflowstatus": "Status: $1",
- "translate-workflow-set-do": "Panda",
"translate-workflow-set-doing": "Panmine...",
- "translate-workflow-set-done": "Om pandud!",
"translate-stats-workflow": "Status",
"translate-dynagroup-recent-label": "Tantoižed kändmižed",
"translate-dynagroup-recent-desc": "Nece tedotandgrupp ozutab kaik tantoižed kändmižed neche kel'he.\nOm tarbhaižemb kodvingtöks.",
diff --git a/MLEB/Translate/i18n/core/vi.json b/MLEB/Translate/i18n/core/vi.json
index 3efd6681..0e3dbff8 100644
--- a/MLEB/Translate/i18n/core/vi.json
+++ b/MLEB/Translate/i18n/core/vi.json
@@ -2,16 +2,14 @@
"@metadata": {
"authors": [
"Minh Nguyen",
- "Vinhtantran"
+ "Vinhtantran",
+ "Thin"
]
},
"translate": "Biên dịch",
+ "translate-extensionname": "Biên dịch",
"translate-desc": "[[Special:Translate|Trang đặc biệt]] dùng để dịch MediaWiki và các thứ khác",
- "translate-taskui-view": "Hiện tất cả các thông điệp",
- "translate-taskui-untranslated": "Các thông điệp chưa dịch",
- "translate-taskui-optional": "Các thông điệp tùy dịch",
- "translate-taskui-acceptqueue": "Chỉ hiện các thông điệp tôi có quyền đánh dấu duyệt",
- "translate-taskui-reviewall": "Duyệt tất cả các bản dịch",
+ "translate-fuzzybot-desc": "Đây là tài khoản hệ thống đặc biệt được sử dụng bởi [https://www.mediawiki.org/wiki/Extension:Translate phần mở rộng Translate] của MediaWiki để quản lý các bản dịch.\nTài khoản này trực thuộc phần mềm MediaWiki và không có người dùng nào làm chủ.",
"translate-taskui-export-to-file": "Xuất ra định dạng bản địa",
"translate-taskui-export-as-po": "Xuất để dịch ngoại tuyến",
"translate-taction-translate": "Biên dịch",
@@ -28,11 +26,11 @@
"translate-page-group": "Nhóm",
"translate-page-language": "Ngôn ngữ",
"translate-page-limit": "Giới hạn",
- "translate-page-limit-option": "$1 {{PLURAL:$1|thông điệp|thông điệp}} mỗi trang",
+ "translate-page-limit-option": "$1 thông điệp mỗi trang",
"translate-submit": "Xem",
"translate-page-navigation-legend": "Điều khiển",
"translate-page-showing": "Đang hiển thị thông điệp có thứ tự từ $1 đến $2 trong tổng số $3 thông điệp.",
- "translate-page-showing-all": "Đang hiển thị $1 {{PLURAL:$1|thông điệp|thông điệp}}.",
+ "translate-page-showing-all": "Đang hiển thị $1 thông điệp.",
"translate-page-showing-none": "Không có thông điệp nào.",
"translate-page-paging-links": "[ $1 ] [ $2 ]",
"translate-next": "Trang sau",
@@ -41,7 +39,6 @@
"translate-page-description-hasoptional": "Nhóm thông điệp này có thông điệp tùy dịch.\nChỉ nên dịch một thông điệp tùy dịch nếu ngôn ngữ của bạn có những thuộc tính đặc biệt\nthí dụ như không sử dụng khoảng cách hoặc có hệ thống phiên âm tên. $1",
"translate-page-description-hasoptional-open": "Xem các thông điệp tùy dịch.",
"translate-page-edit": "sửa",
- "translate-ext-url": "<hr />Website: $1",
"translate-optional": "(tùy chọn)",
"translate-ignored": "(đã bỏ)",
"translate-edit-title": "Sửa đổi “$1”",
@@ -51,14 +48,17 @@
"translate-edit-no-information": "<em>Thông điệp này hiện chưa có tài liệu hướng dẫn. Nếu bạn biết thông điệp này dùng ở đâu và dùng như thế nào, bạn có thể giúp những biên dịch viên khác bằng cách thêm tài liệu hướng dẫn cho nó.</em>",
"translate-edit-information": "Thông tin về thông điệp ($1)",
"translate-edit-in-other-languages": "Thông điệp bằng thứ tiếng khác",
- "translate-edit-committed": "Bản dịch hiện tại trong phần mềm",
"translate-edit-warnings": "Các cảnh báo về các bản dịch chưa hoàn thành",
- "translate-edit-tmsugs": "Gợi ý từ bộ nhớ biên dịch",
"translate-edit-tmmatch-source": "Văn bản gốc để dịch: $1",
"translate-edit-tmmatch": "trùng $1%",
"translate-use-suggestion": "Thay thế bản dịch hiện hành với đề nghị này.",
"translate-edit-nopermission": "Bạn cần xin phép biên dịch thông điệp.",
"translate-edit-askpermission": "Xin phép",
+ "exporttranslations": "Xuất bản dịch",
+ "translate-export-form-format": "Định dạng",
+ "translate-export-invalid-format": "Xin hãy định rõ một định dạng hợp lệ.",
+ "translate-export-not-supported": "Chưa hỗ trợ kết xuất bản dịch.",
+ "translate-export-format-notsupported": "Định dạng xuất được chỉ định không được nhóm thông điệp này hỗ trợ.",
"translate-magic-pagename": "Bản dịch MediaWiki mở rộng",
"translate-magic-help": "Bạn có thể dịch bí danh của các trang đặc biệt, câu thần chú và tên của không gian tên.\n\nBí danh của các trang đặc biệt và câu thần chú có thể có nhiều bản dịch.\nCác bản dịch phân cách nhau bằng dấu phẩy (,).\nTên không gian tên chỉ có thể có một bản dịch.\n\nViệc dịch không gian tên dự án <code>$1 talk</code> có thể phức tạp hơn.\n<code>$1</code> được thay thế bằng tên trang (<code>SITENAME</code>) của dự án (ví dụ <code>{{ns:project_talk}}</code>).\nNếu cần thay đổi tên trang trong không gian tên để đúng ngữ pháp trong ngôn ngữ của bạn, xin hãy cho chúng tôi biết tại [[Support]].\n\nBạn cần phải là biên dịch viên để có thể lưu các thay đổi.\nCác thay đổi sẽ không được lưu lại đến khi nào bạn nhấn vào nút Lưu ở dưới.",
"translate-magic-module": "Gói:",
@@ -77,13 +77,13 @@
"translate-magic-namespace": "Tên của không gian tên",
"translate-magic-notsaved": "Sửa đổi của bạn chưa được lưu!",
"translate-magic-errors": "Xin hãy sửa {{PLURAL:$1||các}} lỗi sau trong bản dịch:",
- "translate-magic-saved": "Thay đổi của bạn đã được lưu.",
+ "translate-magic-saved": "Đã lưu các thay đổi của bạn.",
"translate-checks-parameters": "{{PLURAL:$2|Tham số|Những tham số}} sau không sử dụng:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-parameters-unknown": "{{PLURAL:$2|Tham số|Các tham số}} sau không rõ:\n<strong><nowiki>$1</nowiki></strong>",
- "translate-checks-balance": "Số {{PLURAL:$2|dấu ngoặc|dấu ngoặc}} bị lẻ:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Số {{PLURAL:$2}}dấu ngoặc bị lẻ:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-links": "{{PLURAL:$2|Liên kết|Các liên kết}} sau có vấn đề:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-links-missing": "{{PLURAL:$2|Liên kết|Các liên kết}} sau đây bị thiếu:\n<strong><nowiki>$1</nowiki></strong>",
- "translate-checks-xhtml": "Xin thay thế{{PLURAL:$2|| các}} thẻ sau bằng thẻ đúng:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Xin thay thế {{PLURAL:$2|thẻ|các thẻ}} sau bằng thẻ đúng:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-plural": "Định nghĩa sử dụng <nowiki>{{PLURAL:}}</nowiki> nhưng bản dịch không có.",
"translate-checks-plural-forms": "{{PLURAL:$1|Một dạng|$1 dạng}} được cung cấp trong thẻ <nowiki>{{PLURAL:}}</nowiki> nhưng ngôn ngữ {{PLURAL:$2|không có phân biệt số ít với số nhiều|chỉ có phân biệt $2 dạng số}} (trừ các dạng 0= và 1=).",
"translate-checks-plural-dupe": "Đuôi của thẻ <nowiki>{{PLURAL:}}</nowiki> có dạng thừa. Ví dụ nên đổi <nowiki>{{PLURAL:$1|chó|chó}}</nowiki> thành <nowiki>{{PLURAL:$1|chó}}</nowiki>.",
@@ -104,7 +104,16 @@
"right-translate-import": "Nhập các bản dịch ngoại tuyến",
"action-translate-import": "nhập các bản dịch ngoại tuyến",
"right-translate-messagereview": "Duyệt các bản dịch",
+ "action-translate-messagereview": "duyệt các bản dịch",
"right-translate-groupreview": "Thay đổi trạng thái luồng làm việc của các nhóm thông điệp",
+ "action-translate-groupreview": "thay đổi trạng thái luồng làm việc của các nhóm thông điệp",
+ "translate-rcfilters-translations": "Bản dịch",
+ "translate-rcfilters-translations-only-label": "Bản dịch",
+ "translate-rcfilters-translations-only-desc": "Thay đổi trong được dịch.",
+ "translate-rcfilters-translations-filter-label": "Không phải bản dịch",
+ "translate-rcfilters-translations-filter-desc": "Tất cả các thay đổi không phải là bản dịch.",
+ "translate-rcfilters-translations-site-label": "Thông điệp hệ thống",
+ "translate-rcfilters-translations-site-desc": "Việc tùy biến các thông điệp trang Web trong không gian tên MediaWiki.",
"translate-rc-translation-filter": "Lọc bản dịch:",
"translate-rc-translation-filter-no": "Không lọc",
"translate-rc-translation-filter-only": "Chỉ hiển thị bản dịch",
@@ -136,7 +145,6 @@
"translate-statsf-language": "Danh sách các mã ngôn ngữ phân tách bằng dấu phẩy:",
"translate-statsf-group": "Danh sách các mã nhóm phân tách bằng dấu phẩy:",
"translate-statsf-submit": "Xem trước",
- "translate-tag-category": "Các trang dịch được",
"translate-tag-page-desc": "Bản dịch trang wiki [[$2|$1]] từ $3 ($4).",
"translate-sidebar-alltrans": "Theo ngôn ngữ khác",
"translations": "Tất cả các bản dịch",
@@ -178,7 +186,7 @@
"translate-mgs-noempty": "Ẩn các ngôn ngữ không có bản dịch",
"translate-mgs-submit": "Xem thống kê",
"translate-mgs-column-language": "Ngôn ngữ",
- "translate-mgs-totals": "Mọi ngôn ngữ tập hợp",
+ "translate-mgs-totals": "Mọi {{PLURAL:$1}}ngôn ngữ tập hợp",
"translate-mgs-invalid-group": "Nhóm thông điệp chỉ định, “$1”, không tồn tại.",
"translate-mgs-nothing": "Không có thống kê để hiển thị.",
"supportedlanguages": "Ngôn ngữ có sẵn",
@@ -189,6 +197,7 @@
"supportedlanguages-recenttranslations": "các bản dịch gần đây",
"supportedlanguages-count": "$1 ngôn ngữ tổng cộng.",
"supportedlanguages-activity": "$1: $2 lần sửa đổi – lần cuối cách đây $3 ngày",
+ "abusefilter-edit-builder-vars-translate-source-text": "Văn bản gốc của đơn vị biên dịch",
"translate-save": "Lưu ($1)",
"translate-jssti-add": "Thêm vào danh sách",
"managemessagegroups": "Quản lý nhóm thông điệp",
@@ -212,7 +221,6 @@
"translate-manage-toolong": "Thời gian xử lý tối đa đã vượt quá $1 giây.\nXin hãy gửi lại mẫu này để tiếp tục xử lý.",
"translate-manage-import-summary": "Đang nhập một bản mới từ nguồn bên ngoài",
"translate-manage-conflict-summary": "Đang nhập một phiên bản mới từ nguồn bên ngoài.\nXin kiểm lại.",
- "translate-manage-fuzzy-summary": "Định nghĩa của thông điệp đã thay đổi",
"translate-manage-submit": "Thực hiện",
"translate-manage-intro-other": "Dưới đây là danh sách các thay đổi bản dịch trong ngôn ngữ $1.\nXin hãy xem lại các thay đổi và chọn tác vụ bạn muốn làm đối với từng bản cập nhật.\nViệc bỏ qua thay đổi chỉ tạm thời.",
"translate-manage-import-ok": "Đã nhập: $1",
@@ -221,7 +229,7 @@
"translate-import-from-local": "Tải tập tin từ máy tính:",
"translate-import-load": "Tải tập tin",
"translate-import-err-dl-failed": "Không thể truy xuất tập tin:\n$1",
- "translate-import-err-ul-failed": "Tải tập tin thất bại",
+ "translate-import-err-ul-failed": "Thất bại khi tải lên tập tin",
"translate-import-err-invalid-title": "Tên tập tin đã ghi <nowiki>$1</nowiki> không đúng.",
"translate-import-err-no-such-file": "Tập tin <nowiki>$1</nowiki> không tồn tại hoặc chưa được tải lên đây.",
"translate-import-err-stale-group": "Tập tin này được xếp vào nhóm thông điệp không tồn tại.",
@@ -230,9 +238,7 @@
"translate-js-summary": "Tóm lược:",
"translate-js-save": "Lưu",
"translate-js-next": "Lưu và sang thông điệp sau",
- "translate-js-nonext": "Đây là thông điệp cuối cùng trên trang này.",
"translate-js-skip": "Chuyển đến thông điệp kế",
- "translate-js-save-failed": "Không lưu được. Xin hãy báo cáo lỗi này.",
"translate-js-history": "Lịch sử biên dịch",
"translate-js-support": "Đặt câu hỏi",
"translate-js-support-title": "Yêu cầu giúp đỡ nếu không có đủ thông tin để dịch thông điệp này một cách chính xác.",
@@ -249,23 +255,9 @@
"translate-documentation-language": "Tài liệu thông điệp",
"translate-searchprofile": "Bản dịch",
"translate-searchprofile-tooltip": "Tìm kiếm tất cả các bản dịch",
+ "translate-searchprofile-note": "Có thêm tùy chọn tìm kiếm trong công cụ [$1 tìm kiếm bản dịch].",
"translate-search-languagefilter": "Lọc theo ngôn ngữ:",
"translate-search-nofilter": "Không lọc",
- "translate-messagereview-submit": "Đánh dấu duyệt",
- "translate-messagereview-progress": "Đang đánh dấu duyệt…",
- "translate-messagereview-failure": "Thất bại khi đánh dấu duyệt: $1",
- "translate-messagereview-done": "Đã duyệt",
- "translate-messagereview-reviews": "Đã được $1 người dùng duyệt",
- "translate-messagereview-reviewswithyou": "Đã được {{PLURAL:$1|bạn duyệt|$1 người dùng duyệt, bao gồm bạn}}",
- "api-error-invalidrevision": "Không tìm thấy bản dịch",
- "api-error-unknownmessage": "Không tìm thấy thông điệp",
- "api-error-fuzzymessage": "Bản dịch được đánh dấu là lỗi thời",
- "api-error-owntranslation": "Bạn không thể đánh dấu các bản dịch của chính bạn là đã duyệt.",
- "translate-messagereview-no-fuzzy": "Không thể đánh dấu các bản dịch lỗi thời là đã duyệt.",
- "translate-messagereview-no-own": "Bạn không thể đánh dấu các bản dịch của chính bạn là đã duyệt.",
- "translate-messagereview-doit": "Đánh dấu bản dịch này là đã duyệt.",
- "group-translate-proofr.css": "/* Mã CSS tại đây sẽ chỉ ảnh hưởng đến những người duyệt bản dịch */",
- "group-translate-proofr.js": "/* Mã JS tại đây sẽ chỉ ảnh hưởng đến những người duyệt bản dịch */",
"log-name-translationreview": "Nhật trình duyệt bản dịch",
"log-description-translationreview": "Nhật trình các tác vụ duyệt bản dịch và nhóm thông điệp.",
"logentry-translationreview-message": "$1 {{GENDER:$2}}đã duyệt bản dịch $3",
@@ -278,10 +270,7 @@
"action-translate-sandboxaction": "thực hiện các tác vụ mà người dùng cách ly được cho phép thực hiện",
"translate-workflow-state-": "(không định)",
"translate-workflowstatus": "Trạng thái: $1",
- "translate-workflow-set-do": "Định rõ",
"translate-workflow-set-doing": "Đang định rõ…",
- "translate-workflow-set-done": "Đã định xong!",
- "translate-workflow-set-error-alreadyset": "Trạng thái được yêu cầu là giống hệt với trạng thái hiện tại.",
"translate-workflow-autocreated-summary": "Tự động tạo ra trang cho trạng thái luồng làm việc $1",
"translate-stats-workflow": "Trạng thái",
"translate-workflowgroup-label": "Trạng thái luồng làm việc",
@@ -290,11 +279,6 @@
"translate-dynagroup-recent-desc": "Nhóm thông điệp này bao gồm các bản dịch gần đây trong ngôn ngữ này.\nNó có ích đối với các tác vụ duyệt.",
"translate-dynagroup-additions-label": "Thông điệp bổ sung gần đây",
"translate-dynagroup-additions-desc": "Nhóm thông điệp này chứa các thông điệp mới được bổ sung hoặc thay đổi gần đây.",
- "translate-dynagroup-by": "Bản dịch của $1",
- "translate-dynagroup-byc": "Bản dịch của $1 ($2)",
- "translate-dynagroup-last": "Thay đổi cuối cùng của $1",
- "translate-dynagroup-lastc": "Thay đổi cuối cùng của $1 ($2)",
- "translate-gethelp": "Trợ giúp",
"translate-msggroupselector-projects": "Nhóm thông điệp",
"translate-msggroupselector-search-placeholder": "Tìm nhóm",
"translate-msggroupselector-search-all": "Tất cả",
@@ -313,14 +297,17 @@
"tux-status-translated": "Dịch rồi",
"tux-status-saving": "Đang lưu…",
"tux-status-unsaved": "Chưa lưu",
+ "tux-save-unknown-error": "Đã xuất hiệu lỗi bất ngờ.",
"tux-editor-placeholder": "Bản dịch của bạn",
+ "tux-editor-editsummary-placeholder": "Tùy chọn tóm lược sửa đổi",
"tux-editor-paste-original-button-label": "Dán văn bản gốc",
"tux-editor-discard-changes-button-label": "Hủy thay đổi",
"tux-editor-save-button-label": "Lưu bản dịch",
"tux-editor-skip-button-label": "Chuyển đến thông điệp kế",
"tux-editor-cancel-button-label": "Hủy bỏ",
"tux-editor-confirm-button-label": "Xác nhận bản dịch",
- "tux-editor-shortcut-info": "Bấm “$1” để lưu, “$2” để chuyển đến thông điệp kế, hoặc “$3” cho các phím tắt khác.",
+ "tux-editor-proofread-button-label": "Đánh dấu duyệt",
+ "tux-editor-shortcut-info": "Bấm “$1” để lưu, “$2” để chuyển đến thông điệp kế, “$4” để tóm lược, hoặc “$3” cho các phím tắt khác.",
"tux-editor-edit-desc": "Sửa đổi tài liệu",
"tux-editor-add-desc": "Thêm tài liệu",
"tux-editor-suggestions-title": "Gợi ý",
@@ -375,9 +362,11 @@
"tux-editor-close-tooltip": "Đóng",
"tux-editor-expand-tooltip": "Mở rộng",
"tux-editor-collapse-tooltip": "Thu gọn",
+ "tux-editor-message-tools-show-editor": "Hiện trong trình chỉnh sửa của Wiki",
"tux-editor-message-tools-history": "Lịch sử",
"tux-editor-message-tools-delete": "Xóa",
"tux-editor-message-tools-translations": "Tất cả các bản dịch",
+ "tux-editor-message-tools-linktothis": "Liên kết đến thông điệp này",
"tux-editor-loading": "Đang tải…",
"translate-search-more-languages-info": "$1 ngôn ngữ khác",
"translate-statsbar-tooltip": "Đã biên dịch $1%, đã duyệt $2%",
@@ -385,5 +374,6 @@
"translate-search-more-groups-info": "$1 nhóm nữa",
"translate-ulsdep-title": "Lỗi cấu hình",
"translate-ulsdep-body": "Phần mở rộng Biên dịch cần [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector?uselang=vi phần mở rộng Lựa chọn Ngôn ngữ Toàn thể].",
- "tux-session-expired": "Bạn không còn đăng nhập. Xin vui lòng đăng nhập trong thẻ riêng. Thay thế, hãy sao chép các bản dịch chưa lưu, đăng nhập, và trở lại trang này."
+ "tux-session-expired": "Bạn không còn đăng nhập. Xin vui lòng đăng nhập trong thẻ riêng. Thay thế, hãy sao chép các bản dịch chưa lưu, đăng nhập, trở lại trang này, và nhập lại các bản dịch của bạn.",
+ "tux-nojs": "Trang này cần JavaScript để hoạt động. JavaScript đang tắt hay bị hư hỏng, hoặc trình duyệt này không được hỗ trợ."
}
diff --git a/MLEB/Translate/i18n/core/vo.json b/MLEB/Translate/i18n/core/vo.json
index 6849cabc..ee5c16a7 100644
--- a/MLEB/Translate/i18n/core/vo.json
+++ b/MLEB/Translate/i18n/core/vo.json
@@ -65,7 +65,6 @@
"translate-statsf-language": "Lised pükakotas me liunüls peteilölas:",
"translate-statsf-group": "Lised grupakotas me liunüls peteilölas:",
"translate-statsf-submit": "Büologed",
- "translate-tag-category": "Pads tradutovik",
"translate-tag-page-desc": "Tradutod vükapada: [[$2|$1]].",
"translate-sidebar-alltrans": "In püks votik",
"translations": "Tradutods valik",
diff --git a/MLEB/Translate/i18n/core/wa.json b/MLEB/Translate/i18n/core/wa.json
index d7a9768f..870e4008 100644
--- a/MLEB/Translate/i18n/core/wa.json
+++ b/MLEB/Translate/i18n/core/wa.json
@@ -6,11 +6,6 @@
},
"translate": "Ratourner",
"translate-desc": "[[Special:Translate|Padje sipeciåle]] po ratourner MediaWiki et ds ôtes",
- "translate-taskui-view": "Mostrer tos les messaedjes",
- "translate-taskui-untranslated": "Mostrer les messaedjes nén ratournés",
- "translate-taskui-optional": "Mostrer les messaedjes opcionels",
- "translate-taskui-acceptqueue": "Rén k' les messaedjes ki dj' pou acertiner",
- "translate-taskui-reviewall": "Verifyî tos les ratournaedjes",
"translate-taskui-export-to-file": "Riçure e cogne native",
"translate-taskui-export-as-po": "Riçure po on ratournaedje foû raloyaedje",
"translate-taction-translate": "Ratourner",
@@ -39,19 +34,16 @@
"translate-page-description-hasoptional": "Ci groupe di messaedjes ci a des messaedjes di rawete.\nLes messaedjes di rawete sont-st opcionels et n' divèt esse ratournés k' si vosse lingaedje a mezåjhe di sacwès speciåles, come di n' nén eployî d' vudes inte les mots ou di scrire dins èn ôte sistinme les nos prôpes. $1",
"translate-page-description-hasoptional-open": "Mostrer les messaedjes opcionels.",
"translate-page-edit": "candjî",
- "translate-ext-url": "<hr />Waibe: $1",
"translate-optional": "(opcionel)",
"translate-ignored": "(ignoré)",
"translate-edit-title": "Candjî «$1»",
"translate-edit-definition": "Definixha do messaedje",
"translate-edit-translation": "Ratournaedje",
"translate-edit-contribute": "contribouwer",
- "translate-edit-no-information": "''Ci messaedje ci n' a nén stî documinté.''\n''Si vos savoz wice ou cmint ki ç' messaedje ci est eployî, vos ploz aidî les ôtes ratourneus tot radjoutant ene documintåcion pol messaedje.''",
+ "translate-edit-no-information": "<em>Ci messaedje ci n' a nén stî documinté.\nSi vos savoz wice ou cmint ki ç' messaedje ci est eployî, vos ploz aidî les ôtes ratourneus tot radjoutant ene documintåcion pol messaedje.</em>",
"translate-edit-information": "Infôrmåcions sol messaedje ($1)",
"translate-edit-in-other-languages": "Messaedjes dins ds ôtes lingaedjes",
- "translate-edit-committed": "Ratournaedje do moumint dins l' programe",
"translate-edit-warnings": "Adviertixhmints so les crons ratournaedjes",
- "translate-edit-tmsugs": "Propôzaedjes del memwere di ratournaedje",
"translate-edit-tmmatch-source": "Tecse sourdant do ratournaedje: $1",
"translate-edit-tmmatch": "rishonnant a $1%",
"translate-use-suggestion": "Replaecî l' ratournaedje do moumint avou l' propôzaedje.",
@@ -132,7 +124,6 @@
"translate-statsf-language": "Djivêye di côdes di lingaedje, dispårtis pa des comas:",
"translate-statsf-group": "Djivêye di côdes di groupes, dispårtis pa des comas:",
"translate-statsf-submit": "Vey divant",
- "translate-tag-category": "Pådjes k' on pout ratourner",
"translate-tag-page-desc": "Ratournaedje del pådje wiki [[$2|$1]].",
"translate-sidebar-alltrans": "Dins ds ôtes lingaedjes",
"translations": "Tos les ratournaedjes",
@@ -201,7 +192,6 @@
"translate-js-summary": "Rascourti:",
"translate-js-save": "Schaper",
"translate-js-next": "Schaper et drovi l' shuvant",
- "translate-js-nonext": "C' esteut l' dierin messaedje del pådje.",
"translate-js-skip": "Potchî å shuvant",
"translate-js-history": "Istwere do ratournaedje",
"translate-js-support": "Dimander åk",
@@ -217,39 +207,18 @@
"translate-searchprofile-tooltip": "Cweri dins tos les lingaedjes",
"translate-search-languagefilter": "Passete pa lingaedje:",
"translate-search-nofilter": "dins tos les lingaedjes",
- "translate-messagereview-submit": "Acertiner",
- "translate-messagereview-progress": "Acertinaedje...",
- "translate-messagereview-failure": "Acertinaedje... 'l a fwait berwete: $1",
- "translate-messagereview-done": "Acertiné",
- "translate-messagereview-reviews": "Acertiné pa {{PLURAL:$1|èn uzeu|$1 uzeus}}",
- "translate-messagereview-reviewswithyou": "Acertiné pa {{PLURAL:$1|èn uzeu|$1 uzeus}}, tot vs contant",
- "api-error-invalidrevision": "Ratournaedje nén trové",
- "api-error-unknownmessage": "Messaedje nén trové",
- "api-error-fuzzymessage": "Li ratournaedje est metou come «fuzzy»",
- "api-error-owntranslation": "Vos n' poloz nén acertiner vos prôpes ratournaedjes",
- "translate-messagereview-no-fuzzy": "Les ratournaedjes «fuzzy» n' polèt nén esse acertinés.",
- "translate-messagereview-no-own": "Vos n' poloz nén acertiner vos prôpes ratournaedjes.",
- "translate-messagereview-doit": "Acertiner ki l' ratournaedje est comifåt.",
- "group-translate-proofr.css": "/* Li CSS metou chal est eployî fok pås verifieus d' ratournaedjes */",
- "group-translate-proofr.js": "/* Li JavaScript metou chal est eployî fok pås verifieus d' ratournaedjes */",
"log-name-translationreview": "Djournå des verifiaedjes des ratournaedjes",
"log-description-translationreview": "Djournå di tos les verifiaedjes des ratournaedjes et groupes di messaedjes.",
"logentry-translationreview-message": "$1 {{GENDER:$2|a-st acertiné}} l' ratournaedje $3",
"translate-workflow-state-": "(dismetou)",
"translate-workflowstatus": "Estat: $1",
- "translate-workflow-set-do": "Mete",
"translate-workflow-set-doing": "Metant en alaedje...",
- "translate-workflow-set-done": "Metou!",
- "translate-workflow-set-error-alreadyset": "L' estat dmandé est l' minme ki l' ci pol moumint.",
"translate-workflow-autocreated-summary": "Ahivaedje otomatike di pådjes po l' estat d' ovrance $1",
"translate-stats-workflow": "Estat",
"translate-workflowgroup-label": "Estats d' ovrance",
"translate-workflowgroup-desc": "Ci groupe ci mostere l' estat d' ovrance des ratournaedjes.\nLes estats sont definis dins l' variåve d' apontiaedje $wgTranslateWorkflowStates.",
"translate-dynagroup-recent-label": "Dierins ratournaedjes",
"translate-dynagroup-recent-desc": "Ci groupe ci mostere les ratournaedjes fwaits dierinnmint dins l' lingaedje.\nIl est eployî copurade po les bouyes di verifiaedje.",
- "translate-dynagroup-by": "Ratournaedje fwait pa {{GENDER:$1|$1}}",
- "translate-dynagroup-byc": "Ratournaedje fwait pa {{GENDER:$1|$1}} ($2)",
- "translate-dynagroup-last": "Dierin candjmint fwait pa {{GENDER:$1|$1}}",
- "translate-dynagroup-lastc": "Dierin candjmint fwait pa {{GENDER:$1|$1}} ($2)",
- "translate-gethelp": "Aidance"
+ "tux-edit": "Candjî",
+ "tux-proofread-edit-label": "Candjî"
}
diff --git a/MLEB/Translate/i18n/core/xal.json b/MLEB/Translate/i18n/core/xal.json
index 7dc54f5c..b4c81d7a 100644
--- a/MLEB/Translate/i18n/core/xal.json
+++ b/MLEB/Translate/i18n/core/xal.json
@@ -22,5 +22,7 @@
"translate-sidebar-alltrans": "Талдан келәр",
"translate-language": "Келн",
"translate-js-next": "Хадһлад, дарук секх",
- "translate-js-skip": "Дарук"
+ "translate-js-skip": "Дарук",
+ "translate-documentation-language": "Зәңгин бәрмтлг",
+ "translate-searchprofile": "Орчуллһн"
}
diff --git a/MLEB/Translate/i18n/core/xmf.json b/MLEB/Translate/i18n/core/xmf.json
index c9244833..1e64994a 100644
--- a/MLEB/Translate/i18n/core/xmf.json
+++ b/MLEB/Translate/i18n/core/xmf.json
@@ -1,8 +1,10 @@
{
"@metadata": {
"authors": [
- "Malafaya"
+ "Malafaya",
+ "Silovan"
]
},
- "translate-page-language": "ნინა"
+ "translate-page-language": "ნინა",
+ "translate-documentation-language": "გინაფაშ დოკუმენტაცია"
}
diff --git a/MLEB/Translate/i18n/core/yi.json b/MLEB/Translate/i18n/core/yi.json
index ac7a7610..b313f9ca 100644
--- a/MLEB/Translate/i18n/core/yi.json
+++ b/MLEB/Translate/i18n/core/yi.json
@@ -8,11 +8,6 @@
},
"translate": "פֿארטײַטשן",
"translate-desc": "[[Special:Translate|באזונדערער בלאט]] פֿאר פֿארטײַטשן מעדיעוויקי און ווײַטער",
- "translate-taskui-view": "ווײַזן אלע מעלדונגען",
- "translate-taskui-untranslated": "ווײַזן די נישט איבערגעזעצטע מעלדונגען",
- "translate-taskui-optional": "ווײַזן אפציאנאלע מעלדונגען.",
- "translate-taskui-acceptqueue": "נאר מעלדונגען וואס איך קען מארקירן רעצענזירט",
- "translate-taskui-reviewall": "איבערקוקן אלע איבערזעצונגען",
"translate-taskui-export-to-file": "עקספארטירן אין סיסטעם פֿארמאט",
"translate-taskui-export-as-po": "עקספארטירן פאר אפֿליין איבערזעצונג",
"translate-taction-translate": "פֿאַרטײַטשן",
@@ -41,7 +36,6 @@
"translate-page-description-hasoptional": "די מעלדונג גרופע אנטהאלט אפציאנאלע מעלדונגען.\nאפציאנאלע מעלדונגען זאל מען נאר איבערזעצן ווען אייער שפראך האט באזונדערע באדארפונגען\nווי למשל נישט ניצן שפייצן אדער טראנסקריפציע פון פרט־נעמען. $1",
"translate-page-description-hasoptional-open": "ווײַזן אפציאנאלע מעלדונגען.",
"translate-page-edit": "רעדאַקטירן",
- "translate-ext-url": "<hr />וועבזײַטל: $1",
"translate-optional": "(ברירהדיק)",
"translate-ignored": "(איגנאָרירט)",
"translate-edit-title": "רעדאַקטירן\"$1\"",
@@ -51,14 +45,16 @@
"translate-edit-no-information": "<em>די מעלדונג פעלט דאקומענטאציע.\nאויב איר ווייסט וואו אדער ווי די מעלדונג ווערט געניצט, קענט איר העלפֿן אנדערע פארטייטשערס דורך צולייגן דאקומענטאציע צו דער מעלדונג.</em>",
"translate-edit-information": "אינפֿארמאציע וועגן מעלדונג ($1)",
"translate-edit-in-other-languages": " מעלדונג אין אַנדערע שפּראַכן",
- "translate-edit-committed": "לויפֿיגע איבערזעצונג אין ווייכוואַרג",
"translate-edit-warnings": "ווארענונגען וועגן אומפולשטענדיקע איבערזעצונגען",
- "translate-edit-tmsugs": "פֿארשלאגן פֿון איבערזעצן זיכרון און מאשין איבערזעצן",
"translate-edit-tmmatch-source": "איבערזעצונג מקור טעקסט: $1",
"translate-edit-tmmatch": "$1% צופאַסונג",
"translate-use-suggestion": "פֿארבייטן לויפֿיקע איבערזעצונג מיט דעם פֿארשלאג.",
"translate-edit-nopermission": "איר דארפֿט איבערזעץ־רעכטן איבערצוזעצן מעלדונגען.",
"translate-edit-askpermission": "באקומען רשות",
+ "exporttranslations": "עקספארטירן איבערזעצונגען",
+ "translate-export-form-format": "פֿאָרמאַט",
+ "translate-export-invalid-format": "זייט אזוי גוט און ספעציפֿירט א גילטיקן פֿארמאט.",
+ "translate-export-not-supported": "איבערזעצונג עקספארט נישט געשטיצט.",
"translate-magic-pagename": "פֿאַרברײטערטע מעדיעוויקי איבערזעצונג",
"translate-magic-help": "איר קענט איבערזעצן אליאסן פאר באזונדערע בלעטער, מאגישע ווערטער און נאמענטייל נעמען.\n\nבאזונדערע בלעטער אליאסן און מאגישע ווערטער קענען האבן עטלעכע איבערזעצונגען.\nמעט צעטיילט די איבערזעצונגען מיט א קאמע (,).\nנאמענטיילן קענען האבן נאר איין איבערזעצונג.\n\nאיבערזעצן דעם פראיעקט רעדן נאמענטייל <code dir=\"ltr\">$1 talk</code> קען זיין קאמפליצירט.\n<code>$1</code> ווערט פארביטן מיטן נאמען פונעם וועבזײַטל, למשל (<code>{{ns:project_talk}}</code>).\nטאמער אין אײַער שפראך איז נישט מעגלעך צו שאפֿן א קארעקטן אויסדרוק אן צו ענדערן דעם וועבזײַטל־נאמען, זײַט מודיע אונז בײַ [[Support]].\n\nאיר דארפט זײַן אן איבערזעצער כדי אויפהיטן ענדערונגען.\nדי ענדערונגען ווערן נישט אויפגעהיטן ביז איר דרוקט דאס אויפֿהיטן קנעפל אונטן.",
"translate-magic-module": "מאדול:",
@@ -77,7 +73,7 @@
"translate-magic-namespace": "נאמענטייל נעמען",
"translate-magic-notsaved": "אייער רעדאקטירונג איז נישט אויפגעהיטן!",
"translate-magic-errors": "ביטע פאַרריכטן {{PLURAL:$1|פֿאלגנדן גרײַז|פֿאלגנדע גרײַזן}} אין איבערזעצונגען:",
- "translate-magic-saved": "אייערע ענדערונגען זענען אויפגעהיטן מיט דערפאלג.",
+ "translate-magic-saved": "אייערע ענדערונגען זענען געווארן אויפגעהיטן.",
"translate-checks-parameters": "{{PLURAL:$2|דער פֿאלגנדער פאראמעטער ווערט|די פֿאלגנדע פאראמעטערס ווערן}} נישט געניצט:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-parameters-unknown": "{{PLURAL:$2|דער פֿאלגנדער פאַראַמעטער איז|די פֿאלגנדע פאַראַמעטערס זענען}} נישט באַקאַנט:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-balance": "די צאל {{PLURAL:$2|קלאמערן|קלאמערן}} איז נישט באלאנסירט:\n<strong><nowiki>$1</nowiki></strong>",
@@ -85,6 +81,7 @@
"translate-checks-links-missing": "{{PLURAL:$2|דער פֿאלגנדער לינק פֿעלט|די פֿאלגנדע $2 לינקס פֿעלן}}:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-xhtml": "ביטע פֿארבײַטן די פֿאלגנדע {{PLURAL:$2|טאג|טאגן}} מיט געהעריקע:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-plural": "דעפֿיניציע ניצט <nowiki>{{PLURAL:}}</nowiki>, די איבערזעצונג אבער נישט.",
+ "translate-checks-plural-forms": "<nowiki>{{PLURAL:}}</nowiki> איז געגעבען געווארן {{PLURAL:$1|איין פֿארעם|$1 פֿארמען}} אבער {{PLURAL:$2|נאר איין פֿארעם איז|$2 פֿארמען זענען}} געשטיצט (אחוץ 0= און 1= פֿארמען).",
"translate-checks-plural-dupe": "<nowiki>{{PLURAL:}}</nowiki> האט דופליקאטע פארעמס צום סוף. <nowiki>{{PLURAL:$1|פֿיש|פֿיש}}</nowiki> דארף מען שרײַבן <nowiki>{{PLURAL:$1|פֿיש}}</nowiki>.",
"translate-checks-pagename": "נאמענטייל געענדערט פון דער דעפֿיניציע",
"translate-checks-format": "די דאזיקע איבערזעצונג פֿאלגט נישט די דעפֿיניציע אדער האט אומגילטיקן סינטאקס: $1",
@@ -102,7 +99,12 @@
"right-translate-import": "אימפארטירן אפֿליין איבערזעצונגען",
"action-translate-import": "אימפארטירן אפֿליין איבערזעצונגען",
"right-translate-messagereview": "איבערקוקן איבערזעצונגען",
+ "action-translate-messagereview": "רעצענזירן איבערזעצונגען",
"right-translate-groupreview": "ענדערן ארבעטשטראם סטאטוס פון מעלדונג גרופעס",
+ "translate-rcfilters-translations": "איבערזעצונגען",
+ "translate-rcfilters-translations-only-label": "איבערזעצונגען",
+ "translate-rcfilters-translations-only-desc": "ענדערונגען צו איבערגעזעצטע בלעטער.",
+ "translate-rcfilters-translations-filter-label": "נישט איבערזעצונגען",
"translate-rc-translation-filter": "פֿילטערן איבערזעצונגען:",
"translate-rc-translation-filter-no": "גאָרנישט",
"translate-rc-translation-filter-only": "ווײַזן נאר איבערזעצונגען",
@@ -133,7 +135,6 @@
"translate-statsf-language": "קאמע־געטיילט רשימה פון שפראך קאדן:",
"translate-statsf-group": "קאמע־געטיילט רשימה פון גרופע קאדן:",
"translate-statsf-submit": "פֿאראויסשטעלונג",
- "translate-tag-category": "איבערזעצבאַרע בלעטער",
"translate-tag-page-desc": "אפטײַטש פֿונעם וויקי בלאַט [[$2|$1]] פון $3 ($4).",
"translate-sidebar-alltrans": "אין אַנדערע שפּראַכן",
"translations": "אלע אפטײַטשן",
@@ -175,7 +176,7 @@
"translate-mgs-noempty": "נישט ווײַזן שפראכן וואס האבן נאכנישט קיין איבערזעצונגען",
"translate-mgs-submit": "ווײַזן סטאטיסטיק",
"translate-mgs-column-language": "שפראַך",
- "translate-mgs-totals": "אלע שפראכן צוזאמען",
+ "translate-mgs-totals": "{{PLURAL:$1|איין שפראך|אלע $1 שפראכן צוזאמען}}",
"translate-mgs-invalid-group": "די ספעציפֿירטע גרופע $1 איז נישט פֿאראן.",
"translate-mgs-nothing": "נישט פאראן וואס צו ווײַזן פאר די פארלאנגטע סטאטיסטיק.",
"supportedlanguages": "געשטיצטע שפראַכן",
@@ -185,6 +186,7 @@
"supportedlanguages-recenttranslations": "לעצטיקע איבערזעצונגען",
"supportedlanguages-count": "$1 {{PLURAL:$1|שפראך|שפראכן}} אינגאנצן.",
"supportedlanguages-activity": "$1 : $2 {{PLURAL:$2| רעדאַגירונג | רעדאַגירונגען}} - לעצטע רעדאַגירונג $3 {{PLURAL:$3| טאָג | טעג}} צוריק",
+ "abusefilter-edit-builder-vars-translate-source-text": "קוואלטעקסט פון איבערזעצונג איינהייט",
"translate-save": "אויפֿהיטן ($1)",
"translate-jssti-add": "צולייגן צו ליסטע",
"managemessagegroups": "מעלדונג גרופּע אַדמיניסטראַציע",
@@ -201,7 +203,6 @@
"translate-manage-action-fuzzy": "אימפארטירן און מארקירן איבערזעצונגען \"אומקלאר\"",
"translate-manage-nochanges": "נישטא קיין ענדערונגען אין דעפֿיניציעס פֿאַר דער דאָזיגער גרופע.",
"translate-manage-nochanges-other": "נישט געווען קיין ענדערונגען פאר דער דאזיקער שפראך.\nניצט דעם לינק אונטן צוריקצוגיין צום גרופע־פרטים באקוק.",
- "translate-manage-fuzzy-summary": "די מעלדונג דעפיניציע איז געענדערט געווארן",
"translate-manage-submit": "אויספֿירן",
"translate-manage-import-ok": "אימפארטירט:$1",
"translate-manage-import-done": "אימפארט אדורכגעפירט!",
@@ -216,9 +217,7 @@
"translate-js-summary": "רעזומע:",
"translate-js-save": "אויפֿהיטן",
"translate-js-next": "אײַנשפייכלערן און עפֿענען נעקסטע",
- "translate-js-nonext": "דאָס איז געווען די לעצטע מעלדונג אויף דעם בלאַט.",
"translate-js-skip": "ווײַטער צום נעקסטן",
- "translate-js-save-failed": "אײַנשפײַכלערן דורכגעפֿאַלן. ביטע גיט א באריכט וועגן דעם גרײַז.",
"translate-js-history": "איבערזעצונג געשיכטע",
"translate-js-support": "פֿרעגן א שאלה",
"translate-js-support-title": "בעטן הילף אויב עס איז ניט פֿאראן גענוג אינפֿאָרמאַציע איבערצוזעצן די מעלדונג געהעריק.",
@@ -237,30 +236,16 @@
"translate-searchprofile-tooltip": "זוכן אין אלע איבערזעצונגען",
"translate-search-languagefilter": "פֿילטערן לויט שפראך:",
"translate-search-nofilter": "קיין פֿילטערן",
- "translate-messagereview-submit": "מארקירן רעצענזירט",
- "translate-messagereview-progress": "מארקירן רעצענזירט …",
- "translate-messagereview-failure": "מארקירן רעצענזירט דורכגעפאלן: $1",
- "translate-messagereview-done": "רעצענזירט",
- "translate-messagereview-reviews": "איבערגעקוקט דורך {{PLURAL:$1|איין באניצער|$1 באניצער}}",
- "translate-messagereview-reviewswithyou": "איבערגעקוקט דורך {{PLURAL:$1|אײַך|$1 באניצער כולל אײַך}}",
- "api-error-invalidrevision": "איבערזעצונג נישט געטראפן",
- "api-error-unknownmessage": "מעלדונג נישט געטראפן",
- "api-error-fuzzymessage": "איבערזעצונג מארקירט פארעלטערט",
- "api-error-owntranslation": "איר קען נישט מארקירן אײַערע אייגענע איבערזעצונגען ווי רעצענזירט",
- "translate-messagereview-no-own": "איר קען נישט מארקירן אײַערע אייגענע איבערזעצונגען ווי רעצענזירט.",
- "translate-messagereview-doit": "מארקירן די איבערזעצונג ווי רעצענזירט.",
"log-name-translationreview": "איבערזעצונג רעצענזיע לאגבוך",
"logentry-translationreview-message": "$1 {{GENDER:$2|האט רעצענזירט}} איבערזעצונג $3",
"logentry-translationreview-group": "$1 {{GENDER:$2|האט געענדערט}} דעם סטאטוס פון $4 איבערזעצונגען פון $3 פון $6 צו $7",
"group-translate-sandboxed": "אומבאשטעטיקטע איבערזעצער",
"group-translate-sandboxed-member": "{{GENDER:$1|אומבאשטעטיקטער איבערזעצער| אומבאשטעטיקטע איבערזעצערין}}",
"right-translate-sandboxmanage": "פארוואלטן זאמדקאסטן באניצער",
+ "action-translate-sandboxmanage": "פֿארוואלטן זאמדקאסטן באניצער",
"translate-workflow-state-": "(נישט געשטעלט)",
"translate-workflowstatus": "סטאַטוס: $1",
- "translate-workflow-set-do": "אײַנשטעלן",
"translate-workflow-set-doing": "אײַנשטעלן…",
- "translate-workflow-set-done": "אײַנגעשטעלט!",
- "translate-workflow-set-error-alreadyset": "דער געפאדערטע סטאטוס איז גלייך צום אקטועלן סטאטוס.",
"translate-workflow-autocreated-summary": "אויטאמאטישע שאפונג פון בלאט פאר ארבעטשטראם סטאטוס $1",
"translate-stats-workflow": "סטאַטוס",
"translate-workflowgroup-label": "ארבעטשטראם סטאטוסן",
@@ -269,11 +254,6 @@
"translate-dynagroup-recent-desc": "די דאָזיקע מעלדונג גרופע ווײַזט אַלע לעצטיקע איבערזעצונגען צו דער דאָזיקער שפראַך.\nניצלעכסטן פֿאר די רעצענזירן אויפֿגאַבעס.",
"translate-dynagroup-additions-label": "לעצטיגע הוספות",
"translate-dynagroup-additions-desc": "די מעלדונג גרופע ווײַזט נײַע און געענדערטע מעלדונגען.",
- "translate-dynagroup-by": "איבערזעצונג פֿון {{GENDER:$1|$1}}",
- "translate-dynagroup-byc": "איבערזעצונג פֿון {{GENDER:$1|$1}} ($2)",
- "translate-dynagroup-last": "לעצטע ענדערונג פֿון {{GENDER:$1|$1}}",
- "translate-dynagroup-lastc": "לעצטע ענדערונג פֿון {{GENDER:$1|$1}} ($2)",
- "translate-gethelp": "הילף",
"translate-msggroupselector-projects": "מעלדונג גרופע",
"translate-msggroupselector-search-placeholder": "זוכן גרופעס",
"translate-msggroupselector-search-all": "אַלע",
@@ -292,14 +272,17 @@
"tux-status-translated": "איבערגעזעצט",
"tux-status-saving": "אויפהיטנדיק…",
"tux-status-unsaved": "נישט אויפגעהיטן",
+ "tux-save-unknown-error": "אַן אומבאַקאַנט טעות איז פֿארגעקומען.",
"tux-editor-placeholder": "אײַער איבערזעצונג",
+ "tux-editor-editsummary-placeholder": "אפציאנאלע רעזומע",
"tux-editor-paste-original-button-label": "ארײַנקלעבן מקור טעקסט",
"tux-editor-discard-changes-button-label": "אוועקווארפן ענדערונגען",
"tux-editor-save-button-label": "אויפֿהיטן איבערזעצונג",
"tux-editor-skip-button-label": "ווײַטער צום נעקסטן",
"tux-editor-cancel-button-label": "אַנולירן",
"tux-editor-confirm-button-label": "באשטעטיקן איבערזעצונג",
- "tux-editor-shortcut-info": "דרוקט \"$1\" אויפצוהיטן אדער \"$2\" איבערצוהיפן צו דער נעקסטער מעלדונג אדער \"$3\" פאר אנדערע דורכוועגן.",
+ "tux-editor-proofread-button-label": "מארקירן רעצענזירט",
+ "tux-editor-shortcut-info": "דרוקט \"$1\" אויפצוהיטן אדער \"$2\" איבערצוהיפן צו דער נעקסטער מעלדונג אדער \"$4\" צו פארזארגן א רעזומע אדער \"$3\" פאר אנדערע דורכוועגן.",
"tux-editor-edit-desc": "רעדאקטירן דאקומענטאציע",
"tux-editor-add-desc": "צולייגן דאקומענטאציע",
"tux-editor-suggestions-title": "הצעות",
@@ -354,13 +337,16 @@
"tux-editor-close-tooltip": "פארמאכן",
"tux-editor-expand-tooltip": "פֿאַרברייטערן",
"tux-editor-collapse-tooltip": "אײַנציען",
+ "tux-editor-message-tools-show-editor": "ווייזן אין וויקי־רעדאקטירער",
"tux-editor-message-tools-history": "היסטאריע",
"tux-editor-message-tools-delete": "אויסמעקן",
"tux-editor-message-tools-translations": "אַלע איבערזעצונגען",
+ "tux-editor-message-tools-linktothis": "לינקען צו דער דאזיגער מעלדונג",
"tux-editor-loading": "לאָדט…",
"translate-search-more-languages-info": "נאך {{PLURAL:$1|איין שפראך|$1 שפראכן}}",
"translate-statsbar-tooltip": "$1% איבערגעזעצט, $2% איבערגעקוקט",
"translate-statsbar-tooltip-with-fuzzy": "$1% איבערגעזעצט, $2% איבערגעקוקט, $3% פֿארעלטערט",
"translate-search-more-groups-info": "נאך {{PLURAL:$1|גרופע|גרופעס}}: $1",
- "translate-ulsdep-title": "קאנפיגוראציע גרײַז"
+ "translate-ulsdep-title": "קאנפיגוראציע גרײַז",
+ "tux-nojs": "דער דאזיקער געצייג ארבעט נישט אן JavaScript .JavaScript איז אומאקטיווירט, אדער ארבעט נישט, אדער דער דאזיקער בלעטערער איז נישט געשטיצט."
}
diff --git a/MLEB/Translate/i18n/core/yue.json b/MLEB/Translate/i18n/core/yue.json
index c9c6cc67..78a99c2e 100644
--- a/MLEB/Translate/i18n/core/yue.json
+++ b/MLEB/Translate/i18n/core/yue.json
@@ -2,11 +2,15 @@
"@metadata": {
"authors": [
"Shinjiman",
- "Yueman"
+ "Yueman",
+ "Ktchankt",
+ "Obonggi",
+ "Hello903hello"
]
},
"translate": "翻譯",
"translate-desc": "翻譯MediaWiki同其它嘢嘅[[Special:Translate|特別頁]]",
+ "translate-taction-translate": "翻譯",
"translate-page-no-such-language": "所指定嘅語言唔正確。",
"translate-page-no-such-group": "所指定嘅組唔正確。",
"translate-page-settings-legend": "設定",
@@ -29,7 +33,6 @@
"translate-edit-no-information": "''呢句信息無註解。\n如果你知道呢句信息響邊同埋點用,你可以加註解去呢個信息去幫其他嘅翻譯者。''",
"translate-edit-information": "呢句信息嘅資料 ($1)",
"translate-edit-in-other-languages": "其它語言嘅信息",
- "translate-edit-committed": "而家響軟件嘅翻譯",
"translate-edit-warnings": "有關未譯好嘅警告",
"translate-magic-pagename": "延伸MediaWiki翻譯",
"translate-magic-help": "你可以翻譯特別頁替身、魔術字、皮名同埋名空間嘅名。\n\n響魔術字度你係要同時包括英文嘅翻譯,唔係嘅話就會唔能夠運作。\n同時保持第一個項目 (0或1) 不變。\n\n特別頁替身同埋魔術字可以有多個翻譯。\n翻譯係以逗號 (,) 分隔。\n皮名同埋空間名只可以有一項翻譯。\n\n響空間名翻譯度, <code>$1 talk</code> 係特別嘅。 <code>$1</code> 會由網名代替咗(例如<code>{{ns:project_talk}}</code>)。\n如果你嘅語言組合唔能夠響網站名唔改嘅情況之下去組合成你嘅意思,請聯絡技術員。\n\n你需要係翻譯組嘅組員去儲存嘅啲信息。\n響你撳下面嘅儲存擊之前,啲改動唔會儲存落來。",
@@ -50,5 +53,9 @@
"translate-checks-links": "下面嘅連結有問題: <strong>$1</strong>",
"translate-checks-xhtml": "請改下面嘅標籤去正確嘅: <strong>$1</strong>",
"translate-checks-plural": "用 <nowiki>{{PLURAL:}}</nowiki> 嘅解解釋但係翻譯無用到。",
- "translate-documentation-language": "訊息說明文檔"
+ "translate-mgs-totals": "總共有$1個文",
+ "translate-gs-multiple": "多種語言",
+ "translate-documentation-language": "訊息說明文檔",
+ "tux-save-unknown-error": "發生未知嘅錯誤。",
+ "translate-search-more-languages-info": "重有 $1 種{{PLURAL:$1|語言|語言}}"
}
diff --git a/MLEB/Translate/i18n/core/zh-hans.json b/MLEB/Translate/i18n/core/zh-hans.json
index 5b8f8cb6..da214abb 100644
--- a/MLEB/Translate/i18n/core/zh-hans.json
+++ b/MLEB/Translate/i18n/core/zh-hans.json
@@ -28,16 +28,15 @@
"乌拉跨氪",
"Hudafu",
"Fengchao",
- "Duolaimi"
+ "Duolaimi",
+ "LNDDYL",
+ "Wmr"
]
},
"translate": "翻译",
+ "translate-extensionname": "翻译",
"translate-desc": "用于翻译MediaWiki和其他软件界面信息的[[Special:Translate|特殊页面]]",
- "translate-taskui-view": "显示所有信息",
- "translate-taskui-untranslated": "显示未翻译的信息",
- "translate-taskui-optional": "显示可选信息",
- "translate-taskui-acceptqueue": "仅我可以标记为已复核的信息",
- "translate-taskui-reviewall": "复核所有译文",
+ "translate-fuzzybot-desc": "这是由MediaWiki[https://www.mediawiki.org/wiki/Extension:Translate 翻译扩展]使用的特殊系统账户,用于维护翻译。此账户是MediaWiki软件的一部分,不由任何用户所拥有。",
"translate-taskui-export-to-file": "以原始格式导出",
"translate-taskui-export-as-po": "导出离线翻译文件",
"translate-taction-translate": "翻译",
@@ -51,7 +50,7 @@
"translate-page-disabled": "本信息组该语言的翻译已经停用。原因:\n\n<em>$1</em>",
"translate-language-disabled": "至该语言的翻译已停用。",
"translate-page-settings-legend": "设置",
- "translate-page-group": "信息组",
+ "translate-page-group": "组",
"translate-page-language": "语言",
"translate-page-limit": "限制",
"translate-page-limit-option": "每页$1个信息",
@@ -66,24 +65,26 @@
"translate-page-description-hasoptional": "本信息组包含可选信息。可选信息应该只在您的语言有特殊需要,如不使用空格或音译合适名称时才被翻译。$1",
"translate-page-description-hasoptional-open": "显示可选信息。",
"translate-page-edit": "编辑",
- "translate-ext-url": "<hr />网站:$1",
"translate-optional": "(可选)",
"translate-ignored": "(已忽略)",
"translate-edit-title": "编辑“$1”",
"translate-edit-definition": "信息定义",
"translate-edit-translation": "翻译",
"translate-edit-contribute": "贡献",
- "translate-edit-no-information": "<em>该信息没有说明文档。如果你知道该信息用于何处或如何使用,你可以添加该信息的说明文档以帮助其他译者。</em>",
+ "translate-edit-no-information": "<em>这条消息没有文档。如果您知道这条消息用于何处或如何使用,您可以通过添加文档至这条消息以帮助其他译者。</em>",
"translate-edit-information": "关于信息的资料($1)",
"translate-edit-in-other-languages": "其他语言的信息",
- "translate-edit-committed": "当前软件中的翻译",
"translate-edit-warnings": "关于不完整翻译的警告",
- "translate-edit-tmsugs": "来自翻译记忆和机器翻译的建议",
"translate-edit-tmmatch-source": "翻译原文:$1",
"translate-edit-tmmatch": "$1%匹配",
"translate-use-suggestion": "用该建议替代当前的翻译。",
- "translate-edit-nopermission": "你需要有翻译权限才能翻译信息。",
+ "translate-edit-nopermission": "您需要有翻译权限才能翻译信息。",
"translate-edit-askpermission": "获取权限",
+ "exporttranslations": "导出翻译",
+ "translate-export-form-format": "格式",
+ "translate-export-invalid-format": "请指定一个有效格式。",
+ "translate-export-not-supported": "翻译导出不被支持。",
+ "translate-export-format-notsupported": "指定的导出格式不被消息组支持。",
"translate-magic-pagename": "扩展MediaWiki翻译",
"translate-magic-help": "您可以翻译特殊页面别名、魔术字和名字空间名称。\n\n特殊页面别名和魔术字可以有多个翻译。多个翻译请用半角逗号(,)分隔。名字空间只能有一个翻译。\n\n翻译项目讨论名字空间<code>$1 talk</code>可能有些复杂。<code>$1</code>会被替换为项目名称(例如<code>{{ns:project_talk}}</code>)。如果不更改网站名称时不能用你的语言形成有效的表达,请在[[Support]]联系我们。\n\n您需要成为译者以保存更改。在点击下面的保存按钮之前,更改不会被保存。",
"translate-magic-module": "模块:",
@@ -100,9 +101,9 @@
"translate-magic-special": "特殊页面别名",
"translate-magic-words": "魔术字",
"translate-magic-namespace": "名字空间名称",
- "translate-magic-notsaved": "你的编辑还没有保存!",
+ "translate-magic-notsaved": "您的编辑还没有保存!",
"translate-magic-errors": "请修正翻译中的以下$1处错误:",
- "translate-magic-saved": "你的更改已成功保存。",
+ "translate-magic-saved": "您的更改已保存。",
"translate-checks-parameters": "以下$2个参数未使用:<strong><nowiki>$1</nowiki></strong>",
"translate-checks-parameters-unknown": "以下$2个参数未知:<strong><nowiki>$1</nowiki></strong>",
"translate-checks-balance": "有一组数目不均等的{{PLURAL:$2|括号}}:<strong><nowiki>$1</nowiki></strong>",
@@ -121,7 +122,7 @@
"translate-pref-nonewsletter": "不要给我发送电子邮件通讯",
"translate-pref-editassistlang": "辅助语言:",
"prefs-translate": "翻译选项",
- "translate-pref-editassistlang-help": "请用逗号分隔语言代码列表。这些语言的信息翻译会在你翻译的时显示。默认语言列表基于你的语言。",
+ "translate-pref-editassistlang-help": "请用逗号分隔语言代码列表。这些语言的信息翻译会在您翻译的时显示。默认语言列表基于您的语言。",
"translate-pref-editassistlang-bad": "列表中有无效语言代码:<nowiki>$1</nowiki>。",
"right-translate": "使用翻译界面编辑",
"right-translate-manage": "管理信息组",
@@ -129,7 +130,16 @@
"right-translate-import": "导入线下翻译",
"action-translate-import": "导入线下翻译",
"right-translate-messagereview": "复核翻译",
+ "action-translate-messagereview": "复核翻译",
"right-translate-groupreview": "更改信息组工作流状态",
+ "action-translate-groupreview": "更改消息组的工作流状态",
+ "translate-rcfilters-translations": "翻译",
+ "translate-rcfilters-translations-only-label": "翻译",
+ "translate-rcfilters-translations-only-desc": "对翻译页面的更改。",
+ "translate-rcfilters-translations-filter-label": "非翻译",
+ "translate-rcfilters-translations-filter-desc": "所有不是翻译的更改。",
+ "translate-rcfilters-translations-site-label": "网站消息",
+ "translate-rcfilters-translations-site-desc": "MediaWiki名字空间中的网站消息自定义。",
"translate-rc-translation-filter": "过滤翻译:",
"translate-rc-translation-filter-no": "不过滤",
"translate-rc-translation-filter-only": "仅显示翻译",
@@ -161,7 +171,6 @@
"translate-statsf-language": "逗号分隔的语言代码列表:",
"translate-statsf-group": "逗号分隔的信息组代码列表:",
"translate-statsf-submit": "预览",
- "translate-tag-category": "可翻译页面",
"translate-tag-page-desc": "wiki页面[[$2|$1]]译自$3($4)的译文。",
"translate-sidebar-alltrans": "其他语言",
"translations": "所有翻译",
@@ -169,7 +178,7 @@
"translate-translations-no-message": "“$1”不是可翻译信息",
"translate-translations-none": "没有“$1”的翻译",
"translate-translations-count": "找到$1个翻译。",
- "translate-translations-fieldset-title": "信息",
+ "translate-translations-fieldset-title": "消息",
"translate-translations-messagename": "名称:",
"translate-translations-project": "项目:",
"translate-translations-including-no-param": "请在子页面参数指定有效的信息关键词",
@@ -189,7 +198,7 @@
"translate-suppress-complete": "隐藏完全翻译的信息组",
"translate-ls-noempty": "隐藏完全未翻译的信息组",
"translate-language": "语言",
- "translate-total": "信息数",
+ "translate-total": "消息数",
"translate-untranslated": "未翻译数",
"translate-percentage-complete": "完成度",
"translate-percentage-fuzzy": "已过时",
@@ -203,7 +212,7 @@
"translate-mgs-noempty": "不显示没有任何翻译的语言",
"translate-mgs-submit": "显示统计",
"translate-mgs-column-language": "语言",
- "translate-mgs-totals": "所有语言总计",
+ "translate-mgs-totals": "所有$1种{{PLURAL:$1|语言}}总计",
"translate-mgs-invalid-group": "指定的组$1不存在。",
"translate-mgs-nothing": "请求的统计没有内容显示。",
"supportedlanguages": "支持的语言",
@@ -213,10 +222,11 @@
"supportedlanguages-recenttranslations": "最近翻译",
"supportedlanguages-count": "共计$1种语言。",
"supportedlanguages-activity": "$1:$2个编辑 - 最后编辑于$3天前",
+ "abusefilter-edit-builder-vars-translate-source-text": "翻译单元的原始文本",
"translate-save": "保存($1)",
"translate-jssti-add": "添加至列表",
"managemessagegroups": "信息组管理",
- "translate-smg-notallowed": "你不能执行该操作。",
+ "translate-smg-notallowed": "您不被允许执行该操作。",
"translate-smg-nochanges": "没有要处理的更改。",
"translate-smg-submit": "提交要处理的更改",
"translate-smg-submitted": "信息定义已经更新。更改正在后台处理。",
@@ -236,9 +246,8 @@
"translate-manage-toolong": "超出最大处理时间$1秒。请重新提交表格以继续处理。",
"translate-manage-import-summary": "导入新版本自外部来源",
"translate-manage-conflict-summary": "导入新版本自外部来源。请检查。",
- "translate-manage-fuzzy-summary": "信息定义已经更改",
"translate-manage-submit": "执行",
- "translate-manage-intro-other": "下面是$1翻译更改列表。请复查更改并选择你想要为每个更新执行的操作。如果你选择忽略更改,该操作只是暂时的。",
+ "translate-manage-intro-other": "下面是$1翻译更改列表。请复查更改并选择您想要为每个更新执行的操作。如果您选择忽略更改,该操作只是暂时的。",
"translate-manage-import-ok": "已导入:$1",
"translate-manage-import-done": "导入完成!",
"importtranslations": "导入翻译",
@@ -250,17 +259,15 @@
"translate-import-err-no-such-file": "文件<nowiki>$1</nowiki>不存在或未被本地上传。",
"translate-import-err-stale-group": "该文件属于的信息组不存在。",
"translate-import-err-no-headers": "文件不是翻译扩展程序所需格式的Gettext文件:无法从文件头确定信息组和语言。",
- "translate-import-err-warnings": "该文件格式不正确。请确保你的编辑器不会删除msgctxt字段。详细信息:$1",
+ "translate-import-err-warnings": "该文件格式不正确。请确保您的编辑器不会移除msgctxt字段。详细信息:$1",
"translate-js-summary": "摘要:",
"translate-js-save": "保存",
"translate-js-next": "保存并打开下一条",
- "translate-js-nonext": "这是本页的最后信息。",
"translate-js-skip": "跳至下一条",
- "translate-js-save-failed": "保存失败。请报告该错误。",
"translate-js-history": "翻译历史",
"translate-js-support": "提问",
"translate-js-support-title": "如果没有足够的资料帮助正确翻译该信息,请要求帮助。",
- "translate-js-support-unsaved-warning": "你有未保存的翻译。",
+ "translate-js-support-unsaved-warning": "您有未保存的翻译。",
"translate-gs-pos": "位置",
"translate-gs-code": "代码",
"translate-gs-continent": "洲",
@@ -270,26 +277,12 @@
"translate-gs-count": "计数",
"translate-gs-total": "总计",
"translate-gs-avgscore": "平均得分",
- "translate-documentation-language": "信息说明文件",
+ "translate-documentation-language": "消息文档",
"translate-searchprofile": "翻译",
"translate-searchprofile-tooltip": "搜索所有译文",
+ "translate-searchprofile-note": "更多搜索选项可通过[$1 翻译搜索]找到。",
"translate-search-languagefilter": "按语言过滤:",
"translate-search-nofilter": "无过滤",
- "translate-messagereview-submit": "标记为已复核",
- "translate-messagereview-progress": "正在标记为已复核...",
- "translate-messagereview-failure": "标记为已复核失败:$1",
- "translate-messagereview-done": "已复核",
- "translate-messagereview-reviews": "已被{{PLURAL:$1|$1个用户}}复核",
- "translate-messagereview-reviewswithyou": "已被{{PLURAL:$1|你|$1个用户(包括你)}}复核",
- "api-error-invalidrevision": "翻译未找到",
- "api-error-unknownmessage": "信息未找到",
- "api-error-fuzzymessage": "翻译被标记为模糊翻译",
- "api-error-owntranslation": "你不能标记自己的翻译为已复核",
- "translate-messagereview-no-fuzzy": "模糊翻译不能标记为已复核。",
- "translate-messagereview-no-own": "你不能标记自己的翻译为已复核。",
- "translate-messagereview-doit": "标记该翻译为已复核。",
- "group-translate-proofr.css": "/* 放置在这里的CSS仅会影响翻译复核者 */",
- "group-translate-proofr.js": "/* 放置在这里的JS仅会影响翻译复核者 */",
"log-name-translationreview": "翻译复核日志",
"log-description-translationreview": "所有对翻译和信息组的复核的日志。",
"logentry-translationreview-message": "$1{{GENDER:$2|复核}}翻译$3",
@@ -302,10 +295,7 @@
"action-translate-sandboxaction": "为沙盒化用户执行操作白名单",
"translate-workflow-state-": "(未设置)",
"translate-workflowstatus": "状态:$1",
- "translate-workflow-set-do": "设置",
"translate-workflow-set-doing": "正在设置...",
- "translate-workflow-set-done": "已设置!",
- "translate-workflow-set-error-alreadyset": "请求状态与当前状态相同。",
"translate-workflow-autocreated-summary": "自动创建工作流状态$1的页面",
"translate-stats-workflow": "状态",
"translate-workflowgroup-label": "工作流状态",
@@ -314,11 +304,6 @@
"translate-dynagroup-recent-desc": "本信息组显示该语言的所有最近翻译。对复核任务很实用。",
"translate-dynagroup-additions-label": "最近添加",
"translate-dynagroup-additions-desc": "此信息组显示新出现和已变更的信息。",
- "translate-dynagroup-by": "由{{GENDER:$1|$1}}做出的翻译",
- "translate-dynagroup-byc": "由{{GENDER:$1|$1}}做出的翻译($2)",
- "translate-dynagroup-last": "{{GENDER:$1|$1}}的最后更改",
- "translate-dynagroup-lastc": "{{GENDER:$1|$1}}的最后更改($2)",
- "translate-gethelp": "帮助",
"translate-msggroupselector-projects": "信息组",
"translate-msggroupselector-search-placeholder": "搜索信息组",
"translate-msggroupselector-search-all": "所有",
@@ -337,16 +322,19 @@
"tux-status-translated": "已翻译",
"tux-status-saving": "正在保存...",
"tux-status-unsaved": "未保存",
+ "tux-save-unknown-error": "发生未知错误。",
"tux-editor-placeholder": "您的翻译",
+ "tux-editor-editsummary-placeholder": "可选摘要",
"tux-editor-paste-original-button-label": "粘贴源文本",
"tux-editor-discard-changes-button-label": "放弃更改",
"tux-editor-save-button-label": "保存翻译",
"tux-editor-skip-button-label": "跳至下一条",
"tux-editor-cancel-button-label": "取消",
"tux-editor-confirm-button-label": "确认翻译",
- "tux-editor-shortcut-info": "按“$1”保存,“$2”跳至下一条信息,按住“$3”使用其他快捷方式。",
- "tux-editor-edit-desc": "编辑说明文件",
- "tux-editor-add-desc": "添加说明文件",
+ "tux-editor-proofread-button-label": "标记为已复核",
+ "tux-editor-shortcut-info": "按“$1”保存,“$2”跳至下一条消息,“$4”提供摘要,或“$3”使用其他快捷方式。",
+ "tux-editor-edit-desc": "编辑文档",
+ "tux-editor-add-desc": "添加文档",
"tux-editor-suggestions-title": "建议",
"tux-editor-in-other-languages": "其他语言",
"tux-editor-need-more-help": "需要更多帮助?",
@@ -361,15 +349,15 @@
"tux-editor-clear-translated": "隐藏已翻译",
"tux-editor-proofreading-mode": "复核",
"tux-editor-translate-mode": "列表",
- "tux-editor-proofreading-hide-own-translations": "隐藏你的翻译",
- "tux-editor-proofreading-show-own-translations": "显示你的翻译",
+ "tux-editor-proofreading-hide-own-translations": "隐藏您的翻译",
+ "tux-editor-proofreading-show-own-translations": "显示您的翻译",
"tux-proofread-action-tooltip": "标记为已复核",
"tux-proofread-edit-label": "编辑",
"tux-editor-page-mode": "页面",
"tux-editor-outdated-warning": "该翻译可能需要更新。",
"tux-editor-outdated-warning-diff-link": "显示差异",
- "tux-editor-doc-editor-placeholder": "信息说明文件",
- "tux-editor-doc-editor-save": "保存说明文件",
+ "tux-editor-doc-editor-placeholder": "消息文档",
+ "tux-editor-doc-editor-save": "保存文档",
"tux-editor-doc-editor-cancel": "取消",
"tux-messagetable-more-messages": "还有$1条消息",
"tux-messagetable-loading-messages": "正在载入$1条消息…",
@@ -377,12 +365,12 @@
"tux-message-filter-result": "找到“$2”的$1个结果",
"tux-message-filter-advanced-button": "高级搜索",
"tux-message-filter-optional-messages-label": "可选信息",
- "tux-proofread-translated-by-self": "你的翻译",
+ "tux-proofread-translated-by-self": "您的翻译",
"tux-empty-list-all": "本信息组为空",
"tux-empty-list-all-guide": "请选择其他信息组翻译",
"tux-translate-page-no-such-group": "<strong>指定的信息组不存在。</strong>请选择其他信息组。",
"tux-empty-list-translated": "没有已翻译信息",
- "tux-empty-list-translated-guide": "你可以帮助翻译",
+ "tux-empty-list-translated-guide": "您可以帮助翻译",
"tux-empty-list-translated-action": "翻译",
"tux-empty-no-messages-to-display": "没有要显示的信息。",
"tux-empty-there-are-optional": "有可选择信息未显示在列表中",
@@ -399,9 +387,11 @@
"tux-editor-close-tooltip": "关闭",
"tux-editor-expand-tooltip": "展开",
"tux-editor-collapse-tooltip": "折叠",
+ "tux-editor-message-tools-show-editor": "在wiki编辑器中显示",
"tux-editor-message-tools-history": "历史",
"tux-editor-message-tools-delete": "删除",
"tux-editor-message-tools-translations": "所有翻译",
+ "tux-editor-message-tools-linktothis": "链至此消息的链接",
"tux-editor-loading": "正在载入...",
"translate-search-more-languages-info": "还有$1种{{PLURAL:$1|语言}}",
"translate-statsbar-tooltip": "$1%已翻译,$2%已复核",
@@ -409,5 +399,6 @@
"translate-search-more-groups-info": "还有$1个{{PLURAL:$1|信息组}}",
"translate-ulsdep-title": "配置错误",
"translate-ulsdep-body": "翻译扩展依赖[https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector 通用语言选择器扩展]。",
- "tux-session-expired": "您不再保持登录状态。请在单独的选项卡登录,或者制作未保存翻译的副本、登录并返回此页面。"
+ "tux-session-expired": "您不再保持登录状态。请在单独的选项卡登录。或者制作未保存翻译的副本、登录、返回此页面并再次输入您的翻译。",
+ "tux-nojs": "此页面在没有JavaScript的情况下不能工作。JavaScript已禁用、无法工作或该浏览器不支持JavaScript。"
}
diff --git a/MLEB/Translate/i18n/core/zh-hant.json b/MLEB/Translate/i18n/core/zh-hant.json
index 54b1222e..bd0397ab 100644
--- a/MLEB/Translate/i18n/core/zh-hant.json
+++ b/MLEB/Translate/i18n/core/zh-hant.json
@@ -17,20 +17,19 @@
"Wrightbus",
"Liuxinyu970226",
"LNDDYL",
- "EagerLin"
+ "EagerLin",
+ "Wehwei",
+ "Hello903hello",
+ "Kly"
]
},
"translate": "翻譯",
"translate-desc": "用來翻譯 MediaWiki 以及其他專案訊息的 [[Special:Translate|特殊頁面]]",
- "translate-taskui-view": "顯示所有訊息",
- "translate-taskui-untranslated": "顯示未翻譯的訊息",
- "translate-taskui-optional": "顯示可選填訊息",
- "translate-taskui-acceptqueue": "只顯示我可以複查的訊息",
- "translate-taskui-reviewall": "複查所有翻譯",
+ "translate-fuzzybot-desc": "此用於維護翻譯的特殊系統帳號,是由 MediaWiki [https://www.mediawiki.org/wiki/Extension:Translate 翻譯擴充功能]所使用。\n此帳號為 MediaWiki 軟體裡的一部份,不可由其他任何使用者所持有。",
"translate-taskui-export-to-file": "以原始格式匯出",
"translate-taskui-export-as-po": "匯出做離線翻譯",
"translate-taction-translate": "翻譯",
- "translate-taction-proofread": "複查",
+ "translate-taction-proofread": "審查",
"translate-taction-lstats": "語言統計",
"translate-taction-mstats": "訊息群組統計",
"translate-taction-export": "匯出",
@@ -55,7 +54,6 @@
"translate-page-description-hasoptional": "此訊息群組含有可選填訊息。\n可選填訊息只在您的語言有特殊需求時才需要翻譯 (例如:文中不使用空格或要轉寫成合適的名稱等)。$1",
"translate-page-description-hasoptional-open": "顯示可選填訊息。",
"translate-page-edit": "編輯",
- "translate-ext-url": "<hr />網站:$1",
"translate-optional": "(選填)",
"translate-ignored": "(已略過)",
"translate-edit-title": "編輯 \"$1\"",
@@ -65,14 +63,17 @@
"translate-edit-no-information": "<em>此訊息沒有任何說明資訊。\n如果您知道這個訊息使用的地方,您可以增加說明資訊以協助其他翻譯人員。</em>",
"translate-edit-information": "關於訊息的資訊 ($1)",
"translate-edit-in-other-languages": "訊息的其他語言",
- "translate-edit-committed": "目前翻譯",
"translate-edit-warnings": "未完成翻譯的警告",
- "translate-edit-tmsugs": "來自翻譯記憶庫與機器翻譯的建議",
"translate-edit-tmmatch-source": "翻譯原文:$1",
"translate-edit-tmmatch": "$1% 符合",
"translate-use-suggestion": "採納此建議取代目前的翻譯。",
"translate-edit-nopermission": "您需要翻譯權限以翻譯訊息。",
"translate-edit-askpermission": "取得權限",
+ "exporttranslations": "匯出翻譯",
+ "translate-export-form-format": "格式",
+ "translate-export-invalid-format": "請指定一個有效的格式。",
+ "translate-export-not-supported": "不支援翻譯匯出功能。",
+ "translate-export-format-notsupported": "該訊息群組不支援指定的匯出格式。",
"translate-magic-pagename": "進階 MediaWiki 翻譯",
"translate-magic-help": "您可以使用本特殊頁面翻譯特殊頁面別名、魔術字及命名空間名稱。\n\n特殊頁面別名與保留字可以有多個翻譯。\n不同翻譯間請以逗號(,)隔開,\n命名空間只能有一種翻譯。\n\n翻譯專案討論的命名空間時 <code>$1 talk</code> 可能較複雜,\n<code>$1 talk</code> 會取代為專案的網站名稱 (如:<code>{{ns:project_talk}}</code>),\n如果不更改網站名稱無法有效的用您語言表達,請在 [[Support]] 通知我們。\n\n您需要成為翻譯人員才能儲存變更。\n變更在您尚未點選儲存按鈕之前不會儲存。",
"translate-magic-module": "模組:",
@@ -91,7 +92,7 @@
"translate-magic-namespace": "命名空間名稱",
"translate-magic-notsaved": "您的編輯尚未儲存!",
"translate-magic-errors": "請修復翻譯訊息中下列{{PLURAL:$1|錯誤}}:",
- "translate-magic-saved": "已經成功儲存你的更動。",
+ "translate-magic-saved": "已儲存您的變更。",
"translate-checks-parameters": "未使用以下 $2 個參數:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-parameters-unknown": "未定義以下 $2 個參數:\n<strong><nowiki>$1</nowiki></strong>",
"translate-checks-balance": "不完整的{{PLURAL:$2|括號|括號}}:\n<strong><nowiki>$1</nowiki></strong>",
@@ -117,18 +118,27 @@
"action-translate-manage": "管理訊息群組",
"right-translate-import": "匯入離線翻譯",
"action-translate-import": "匯入離線翻譯",
- "right-translate-messagereview": "複查翻譯",
- "right-translate-groupreview": "更改訊息群組的工作流程狀態",
- "translate-rc-translation-filter": "搜尋翻譯:",
+ "right-translate-messagereview": "審查翻譯",
+ "action-translate-messagereview": "檢閱翻譯",
+ "right-translate-groupreview": "變更訊息群組的工作流程狀態",
+ "action-translate-groupreview": "變更訊息群組的工作流程狀態",
+ "translate-rcfilters-translations": "翻譯",
+ "translate-rcfilters-translations-only-label": "翻譯",
+ "translate-rcfilters-translations-only-desc": "對已翻譯頁面更改。",
+ "translate-rcfilters-translations-filter-label": "非翻譯",
+ "translate-rcfilters-translations-filter-desc": "非翻譯內容的所有更改。",
+ "translate-rcfilters-translations-site-label": "站台訊息",
+ "translate-rcfilters-translations-site-desc": "在 MediaWiki 命名空間的自訂站台訊息。",
+ "translate-rc-translation-filter": "篩選翻譯:",
"translate-rc-translation-filter-no": "無",
"translate-rc-translation-filter-only": "只顯示翻譯",
- "translate-rc-translation-filter-filter": "不顯示翻譯",
+ "translate-rc-translation-filter-filter": "篩選掉翻譯",
"translate-rc-translation-filter-site": "只顯示有更動的網站訊息",
"translationstats": "翻譯統計",
"translate-stats-edits": "編輯",
"translate-stats-users": "翻譯人員",
"translate-stats-registrations": "註冊",
- "translate-stats-reviews": "複審",
+ "translate-stats-reviews": "審查",
"translate-stats-reviewers": "複審員",
"translate-statsf-intro": "您可以填寫此表格,以產生簡單的統計資料。\n所有值都有上限和下限。",
"translate-statsf-options": "圖表選項",
@@ -145,12 +155,11 @@
"translate-statsf-count-edits": "編輯次數",
"translate-statsf-count-users": "活躍的翻譯人員人數",
"translate-statsf-count-registrations": "新使用者人數",
- "translate-statsf-count-reviews": "翻譯複審次數",
+ "translate-statsf-count-reviews": "翻譯審查次數",
"translate-statsf-count-reviewers": "複審員人數",
"translate-statsf-language": "語言代碼 (以逗號分隔):",
"translate-statsf-group": "群組代碼 (以逗號分隔):",
"translate-statsf-submit": "預覽",
- "translate-tag-category": "可翻譯的頁面",
"translate-tag-page-desc": "Wiki 頁面 [[$2|$1]] 來自$3 ($4) 的翻譯。",
"translate-sidebar-alltrans": "其他翻譯",
"translations": "所有翻譯",
@@ -162,9 +171,9 @@
"translate-translations-messagename": "訊息名稱:",
"translate-translations-project": "專案:",
"translate-translations-including-no-param": "請在子頁面參數指定一個有效的訊息關鍵字",
- "translate-translations-history-short": "記錄",
+ "translate-translations-history-short": "歷",
"languagestats": "語言統計",
- "languagestats-summary": "此頁面顯示了所有訊息群組語言翻譯的統計資訊。",
+ "languagestats-summary": "此頁面顯示了所有訊息群組語言翻譯的統計資料。",
"messagegroupstats-summary": "此頁顯示訊息組統計。",
"languagestats-stats-for": "$1 ($2) 的翻譯統計。",
"languagestats-recenttranslations": "最近的翻譯",
@@ -192,16 +201,18 @@
"translate-mgs-noempty": "不顯示全部未翻譯的語言",
"translate-mgs-submit": "顯示統計",
"translate-mgs-column-language": "語言",
- "translate-mgs-totals": "所有語言合計",
+ "translate-mgs-totals": "所有$1種{{PLURAL:$1|語言}}合計",
"translate-mgs-invalid-group": "指定的群組 $1 不存在。",
- "translate-mgs-nothing": "目前的請求沒有任可顯示的統計資訊。",
+ "translate-mgs-nothing": "所請求的統計資訊沒有任何內容可以顯示。",
"supportedlanguages": "支援的語言",
"supportedlanguages-summary": "本頁顯示 {{SITENAME}} 所有支援的語言清單,\n連同翻譯該語言的翻譯人員姓名,\n翻譯人員的姓名越大,代表翻譯人員的編輯貢獻越多,\n底線的顏色用來表示翻譯人員最近活動的狀況。",
"supportedlanguages-colorlegend": "色彩圖例:最近一次翻譯於 $1 天前。",
+ "supportedlanguages-sqlite-error": "不支援 SQLite",
"supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|翻譯人員}}}}:$1",
"supportedlanguages-recenttranslations": "最近的翻譯",
"supportedlanguages-count": "總共有 $1 語言",
"supportedlanguages-activity": "$1:$2 次編輯 - 最近一次編輯於 $3 天前",
+ "abusefilter-edit-builder-vars-translate-source-text": "翻譯單元的來源文字",
"translate-save": "儲存 ($1)",
"translate-jssti-add": "新增至清單",
"managemessagegroups": "訊息群組管理",
@@ -210,7 +221,7 @@
"translate-smg-submit": "送出要處理更動",
"translate-smg-submitted": "訊息原文已更新,正在背景執行變更處理。",
"translate-smg-more": "送出這些更動後,會有更多更動要處理。",
- "translate-smg-left": "Wiki 中訊息內容",
+ "translate-smg-left": "wiki 內的訊息內容",
"translate-smg-right": "發生的更動",
"translate-manage-import-diff": "訊息 $1 | 操作:$2",
"translate-manage-import-new": "新訊息 $1",
@@ -219,13 +230,12 @@
"translate-manage-action-conflict": "匯入並且模糊翻譯",
"translate-manage-action-ignore": "忽略",
"translate-manage-action-fuzzy": "匯入並且模糊翻譯",
- "translate-manage-nochanges": "此群組中的訊息原文並未做任何更改。",
- "translate-manage-nochanges-other": "此語言並未做任何更改。\n使用下方連結返回群組的詳細訊息檢視頁面。",
+ "translate-manage-nochanges": "此群組中的訊息原文並未做任何變更。",
+ "translate-manage-nochanges-other": "此語言並未做任何更改。\n使用下方連結返回群組的詳細資料檢視頁面。",
"translate-manage-inconsistent": "偵測不一致的請求。\n請檢查更動內容,然後再試。\n詳細資訊:$1。",
"translate-manage-toolong": "超出處理時間限制 $1 秒。\n請重新送出表單,以繼續進行處理。",
"translate-manage-import-summary": "正在從外部來源匯入新版",
"translate-manage-conflict-summary": "正在從外部來源匯入新版。\n請檢查。",
- "translate-manage-fuzzy-summary": "訊息原文已更改",
"translate-manage-submit": "執行",
"translate-manage-intro-other": "下列是在 $1 語言的翻譯變更清單。\n請檢查變更,並選擇每一個變更所要執行的動作。\n若您不想變更,您可以選擇忽略。",
"translate-manage-import-ok": "已匯入:$1",
@@ -234,7 +244,7 @@
"translate-import-from-local": "上傳本地檔案:",
"translate-import-load": "讀取檔案",
"translate-import-err-dl-failed": "無法擷取檔案:\n$1",
- "translate-import-err-ul-failed": "檔案上傳不成功",
+ "translate-import-err-ul-failed": "檔案上傳失敗",
"translate-import-err-invalid-title": "無效的檔案名稱 <nowiki>$1</nowiki>。",
"translate-import-err-no-such-file": "檔案 <nowiki>$1</nowiki> 不存在或尚未上傳。",
"translate-import-err-stale-group": "此檔案所屬的訊息群組不存在。",
@@ -243,10 +253,8 @@
"translate-js-summary": "摘要:",
"translate-js-save": "儲存",
"translate-js-next": "儲存並開啟下一筆",
- "translate-js-nonext": "這是本頁的最後一個訊息。",
"translate-js-skip": "跳至下一筆",
- "translate-js-save-failed": "儲存失敗,請報告此錯誤。",
- "translate-js-history": "翻譯歷史記錄",
+ "translate-js-history": "翻譯歷史",
"translate-js-support": "提出問題",
"translate-js-support-title": "若此處沒有足夠的資訊讓您可以正確的翻譯此訊息,請提出問題。",
"translate-js-support-unsaved-warning": "您有尚未儲存的翻譯。",
@@ -262,25 +270,13 @@
"translate-documentation-language": "訊息說明文件",
"translate-searchprofile": "翻譯",
"translate-searchprofile-tooltip": "搜尋所有翻譯",
- "translate-search-languagefilter": "依語言搜尋:",
+ "translate-searchprofile-note": "[$1 翻譯搜尋] 中有更多可用的搜尋選項。",
+ "translate-search-languagefilter": "依語言篩選:",
"translate-search-nofilter": "無",
- "translate-messagereview-submit": "標記為已複查",
- "translate-messagereview-progress": "正在標記為已複查.....",
- "translate-messagereview-failure": "標記為已複查失敗:$1",
- "translate-messagereview-done": "已複查",
- "translate-messagereview-reviews": "已被 {{PLURAL:$1|1 個使用者|$1 個使用者}}複查",
- "translate-messagereview-reviewswithyou": "已被{{PLURAL:$1|您複查| $1 個使用者 (包括您) 複查}}",
- "api-error-invalidrevision": "找不到翻譯",
- "api-error-unknownmessage": "找不到訊息",
- "api-error-fuzzymessage": "翻譯被標記為模糊翻譯",
- "api-error-owntranslation": "您不能標記自己的翻譯為已複查",
- "translate-messagereview-no-fuzzy": "不能複查模糊翻譯。",
- "translate-messagereview-no-own": "您不能標記自己的翻譯為已複查",
- "translate-messagereview-doit": "標記這個翻譯為已複查。",
- "log-name-translationreview": "翻譯複查日誌",
- "log-description-translationreview": "所有翻譯和訊息群組的複查日誌。",
- "logentry-translationreview-message": "$1 {{GENDER:$2|已複查}}翻譯 $3",
- "logentry-translationreview-group": "$1 {{GENDER:$2|修改}} $3 的 $4 翻譯狀態由 $6 更改為 $7",
+ "log-name-translationreview": "翻譯審查日誌",
+ "log-description-translationreview": "所有翻譯與訊息群組的檢閱日誌。",
+ "logentry-translationreview-message": "$1 {{GENDER:$2|已審查}}翻譯 $3",
+ "logentry-translationreview-group": "$1 {{GENDER:$2|變更}} $3 的 $4 翻譯狀態由 $6 變更為 $7",
"group-translate-sandboxed": "未核准的翻譯人員",
"group-translate-sandboxed-member": "{{GENDER:$1|未核准的翻譯人員}}",
"right-translate-sandboxmanage": "管理沙盒使用者",
@@ -289,23 +285,15 @@
"action-translate-sandboxaction": "將沙盒使用者列入白名單",
"translate-workflow-state-": "(未設定)",
"translate-workflowstatus": "狀態:$1",
- "translate-workflow-set-do": "設定",
"translate-workflow-set-doing": "正在設定...",
- "translate-workflow-set-done": "已設定!",
- "translate-workflow-set-error-alreadyset": "請求的狀態與目前狀態相同。",
"translate-workflow-autocreated-summary": "自動建立工作流程狀態 $1 的頁面",
"translate-stats-workflow": "狀態",
"translate-workflowgroup-label": "工作流程狀態",
"translate-workflowgroup-desc": "此訊息群組顯示了翻譯的工作流程狀態。\n所有狀態定義在設定檔中的 $wgTranslateWorkflowStates 參數。",
"translate-dynagroup-recent-label": "最近翻譯",
- "translate-dynagroup-recent-desc": "此訊息群組顯示了最近該語言的所有翻譯。\n這對複查工作很有幫助。",
+ "translate-dynagroup-recent-desc": "此訊息群組顯示了近期此語言的所有翻譯。\n這對審查工作很有幫助。",
"translate-dynagroup-additions-label": "最近新增",
- "translate-dynagroup-additions-desc": "此訊息群組顯示新的與被更改的訊息。",
- "translate-dynagroup-by": "由 {{GENDER:$1|$1}} 所翻譯",
- "translate-dynagroup-byc": "由 {{GENDER:$1|$1}} 所翻譯 ($2)",
- "translate-dynagroup-last": "最近由 {{GENDER:$1|$1}} 所更改",
- "translate-dynagroup-lastc": "最近由 {{GENDER:$1|$1}} 所更改 ($2)",
- "translate-gethelp": "說明",
+ "translate-dynagroup-additions-desc": "此訊息群組顯示新的與已變更的訊息。",
"translate-msggroupselector-projects": "訊息群組",
"translate-msggroupselector-search-placeholder": "搜尋群組",
"translate-msggroupselector-search-all": "所有",
@@ -316,22 +304,25 @@
"tux-tab-untranslated": "未翻譯",
"tux-tab-outdated": "已過時",
"tux-tab-translated": "已翻譯",
- "tux-tab-unproofread": "未複查",
+ "tux-tab-unproofread": "未審查",
"tux-edit": "編輯",
"tux-status-optional": "可選填",
"tux-status-fuzzy": "已過時",
- "tux-status-proofread": "已複查",
+ "tux-status-proofread": "已審查",
"tux-status-translated": "已翻譯",
"tux-status-saving": "儲存中...",
"tux-status-unsaved": "未儲存",
+ "tux-save-unknown-error": "發生不明的錯誤。",
"tux-editor-placeholder": "您的翻譯",
+ "tux-editor-editsummary-placeholder": "選填摘要",
"tux-editor-paste-original-button-label": "貼上原文",
"tux-editor-discard-changes-button-label": "取消修改",
"tux-editor-save-button-label": "儲存翻譯",
"tux-editor-skip-button-label": "跳至下一筆",
"tux-editor-cancel-button-label": "取消",
"tux-editor-confirm-button-label": "確認翻譯",
- "tux-editor-shortcut-info": "使用 \"$1\" 儲存,或 \"$2\" 跳至下一筆息或 \"$3\" 使用其他捷徑。",
+ "tux-editor-proofread-button-label": "標記為已審查",
+ "tux-editor-shortcut-info": "使用 \"$1\" 儲存,或 \"$2\" 跳至下一則訊息或 \"$4\" 填寫摘要或 \"$3\" 使用其他快速鍵。",
"tux-editor-edit-desc": "編輯說明",
"tux-editor-add-desc": "新增說明",
"tux-editor-suggestions-title": "建議",
@@ -346,11 +337,11 @@
"tux-editor-message-desc-more": "檢視更多",
"tux-editor-message-desc-less": "檢視更少",
"tux-editor-clear-translated": "隱藏已翻譯",
- "tux-editor-proofreading-mode": "複查",
+ "tux-editor-proofreading-mode": "審查",
"tux-editor-translate-mode": "清單",
"tux-editor-proofreading-hide-own-translations": "隱藏您的翻譯",
"tux-editor-proofreading-show-own-translations": "顯示您的翻譯",
- "tux-proofread-action-tooltip": "標記為已複查",
+ "tux-proofread-action-tooltip": "標記為已審查",
"tux-proofread-edit-label": "編輯",
"tux-editor-page-mode": "頁面",
"tux-editor-outdated-warning": "此翻譯可能要更新。",
@@ -360,7 +351,7 @@
"tux-editor-doc-editor-cancel": "取消",
"tux-messagetable-more-messages": "還有 $1 則訊息",
"tux-messagetable-loading-messages": "讀取 $1 筆訊息中...",
- "tux-message-filter-placeholder": "搜尋清單",
+ "tux-message-filter-placeholder": "篩選清單",
"tux-message-filter-result": "找到 $1 筆包含 \"$2\" 的結果",
"tux-message-filter-advanced-button": "進階搜尋",
"tux-message-filter-optional-messages-label": "可選填訊息",
@@ -375,26 +366,29 @@
"tux-empty-there-are-optional": "列表中還有未顯示的可選填訊息",
"tux-empty-show-optional-messages": "顯示選填訊息",
"tux-empty-no-outdated-messages": "無過時的訊息",
- "tux-empty-nothing-to-proofread": "無需要複查的訊息",
+ "tux-empty-nothing-to-proofread": "無需要審查的內容",
"tux-empty-you-can-help-providing": "您可以協助提供新翻譯",
- "tux-empty-nothing-new-to-proofread": "沒有新訊息要複查",
- "tux-empty-you-can-review-already-proofread": "您可以複查已複查的翻譯。",
+ "tux-empty-nothing-new-to-proofread": "無新內容需要審查",
+ "tux-empty-you-can-review-already-proofread": "您可以審查已被他人審查過的翻譯。",
"tux-empty-list-other": "目前沒有可翻譯的內容",
- "tux-empty-list-other-guide": "您可以協助複查目前已經有的翻譯",
- "tux-empty-list-other-action": "複查翻譯",
+ "tux-empty-list-other-guide": "您可以協助審查目前已存在的翻譯",
+ "tux-empty-list-other-action": "審查翻譯",
"tux-empty-list-other-link": "顯示所有訊息",
"tux-editor-close-tooltip": "關閉",
"tux-editor-expand-tooltip": "展開",
"tux-editor-collapse-tooltip": "摺疊",
- "tux-editor-message-tools-history": "歷史記錄",
+ "tux-editor-message-tools-show-editor": "顯示於 wiki 編輯器",
+ "tux-editor-message-tools-history": "歷史",
"tux-editor-message-tools-delete": "刪除",
"tux-editor-message-tools-translations": "所有翻譯",
+ "tux-editor-message-tools-linktothis": "連至此訊息之連結",
"tux-editor-loading": "正在讀取...",
"translate-search-more-languages-info": "還有 $1 種{{PLURAL:$1|語言|語言}}",
- "translate-statsbar-tooltip": "$1% 已翻譯,$2% 已複查",
- "translate-statsbar-tooltip-with-fuzzy": "$1% 已翻譯,$2% 已複查,$3% 已過時",
+ "translate-statsbar-tooltip": "$1% 已翻譯,$2% 已審查",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% 已翻譯,$2% 已檢閱,$3% 已過時",
"translate-search-more-groups-info": "還有 $1 個{{PLURAL:$1|群組|群組}}",
"translate-ulsdep-title": "設定錯誤",
"translate-ulsdep-body": "翻譯擴充套件需要相依 [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector 通用語言選擇器擴充套件]。",
- "tux-session-expired": "您已不在登入狀態,請使用另一個頁籤登入。或者,備份您尚未儲存的翻譯,登入後再返回此頁。"
+ "tux-session-expired": "您已不在登入狀態,請使用另一個頁籤登入。或者備份您尚未儲存的翻譯,登入返回此頁然後再輸入您的翻譯一次。",
+ "tux-nojs": "此工具在沒有 JavaScript 時無法運作。JavaScript 已停用、運作失敗,或者此瀏覽器不受支援。"
}
diff --git a/MLEB/Translate/i18n/groupdescriptions/af.json b/MLEB/Translate/i18n/groupdescriptions/af.json
deleted file mode 100644
index 51ff02f0..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/af.json
+++ /dev/null
@@ -1,25 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Naudefj",
- "Lokal Profil",
- "Macofe"
- ]
- },
- "bw-desc-freecol": "Lees asseblief [[Translating:FreeCol]] alvorens u begin vertaal.\nFreeCol maak van die GPL-lisensie gebruik.",
- "bw-desc-fudforum": "[http://fudforum.org/ FUDforum], 'n webforum wat in PHP geskryf is.",
- "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] is 'n gratis web-gebaseerde foutnaspoor-stelsel. Rapporteer asseblief enige probleme op [[Support|Ondersteuning]].",
- "bw-desc-osm-site": "Hierdie boodskapgroep bevat die koppelvlakboodskappe vir [[Translating:Open Street Map|Open Street Map]]",
- "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] is in staat om vinnig die outeurs van 'n bladsy in 'n Wikimedia-wiki te vind.",
- "translate-group-desc-collection": "Meta-boodskapgroep wat alle boodskappe vir die [[Translating:MediaWiki|MediaWiki]]-uitbreiding [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection] bevat",
- "translate-group-desc-flaggedrevs": "Meta-boodskapgroep wat alle boodskappe vir die [[Translating:MediaWiki|MediaWiki]]-uitbreiding [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs FlaggedRevs] bevat",
- "translate-group-desc-mediawikicore": "Hierdie boodskapgroep bevat die boodskappe wat in die huidige alfa-weergawe van MediaWiki gebruik word - {{CURRENTVERSION}}",
- "translate-group-desc-mediawikiextensions": "Meta-boodskapgroep wat alle boodskappe vir ondersteunde MediaWiki-uitbreidings bevat",
- "translate-group-desc-mediawikimostused": "Hierdie boodskapgroep bevat Mediawiki se [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 mees gebruikte boodskappe]",
- "translate-group-desc-nocc": "[http://nocc.sourceforge.net NOCC] is 'n e-pos webkliënt wat in PHP geskryf is. Meld asseblief enige probleme aan by [[Support|Ondersteuning]].",
- "translate-group-desc-nodesc": "Geen beskrywing is vir hierdie boodskapgroep beskikbaar nie",
- "translate-group-desc-readerfeedback": "Meta-boodskapgroep wat alle boodskappe vir die [[Translating:MediaWiki|MediaWiki]]-uitbreiding [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback] bevat",
- "translate-group-desc-translate": "Meta-boodskapgroep wat alle boodskappe vir die MediaWiki-uitbreiding [https://www.mediawiki.org/wiki/Extension:Translate Translate] bevat",
- "translate-group-desc-wikiaextensions": "Meta-boodskapgroep wat alle boodskappe vir ondersteude [[Translating:MediaWiki|MediaWiki]]-uitbreidings wat deur [http://www.wikia.com Wikia] gebruik word bevat",
- "translate-group-desc-wikimediaextensions": "Meta-boodskapgroep wat alle boodskappe te ondersteuning van MediaWiki-uitbreidings wat deur die [https://wikimediafoundation.org/ Wikimedia Stigting] gebruik word bevat"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/aln.json b/MLEB/Translate/i18n/groupdescriptions/aln.json
deleted file mode 100644
index a9968c1e..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/aln.json
+++ /dev/null
@@ -1,9 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Mdupont"
- ]
- },
- "translate-group-desc-nodesc": "Nuk ka përshkrim është në dispozicion për këtë grup mesazh",
- "translate-group-desc-wikimediaextensions": "Grupi Meta mesazh që përmban të gjitha mesazhet e për të mbështetur zgjerimet MediaWiki përdorur nga https://wikimediafoundation.org/ [] Wikimedia Foundation"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/ar.json b/MLEB/Translate/i18n/groupdescriptions/ar.json
deleted file mode 100644
index baa76b55..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/ar.json
+++ /dev/null
@@ -1,21 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "OsamaK",
- "روخو"
- ]
- },
- "bw-desc-fudforum": "[http://fudforum.org/ FUDforum] منتدى وب مكتوب بلغة PHP",
- "translate-group-desc-collection": "مجموعة رسائل علوية تحتوي كل رسائل امتداد [https://www.mediawiki.org/wiki/Extension:Collection Collection] لميدياويكي",
- "translate-group-desc-flaggedrevs": "مجموعة رسائل علوية تحتوي كل رسائل امتداد [https://www.mediawiki.org/wiki/Extension:FlaggedRevs FlaggedRevs] لميدياويكي",
- "translate-group-desc-mediawiki-core-branch": "رسائل لنسخة المستقرة من [[Translating:MediaWiki|ميديا ويكي]]",
- "translate-group-desc-mediawikicore": "تحتوي مجموعة الرسائل هذه على الرسائل المستخدمة في النسخة ألفا الحالية من ميدياويكي ({{CURRENTVERSION}})",
- "translate-group-desc-mediawikiextensions": "مجموعة رسائل علوية تحتوي كل رسائل الامتدادات المدعومة لميدياويكي.",
- "translate-group-desc-mediawikimostused": "تحتوي مجموعة الرسائل هذه على [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki الرسائل ال500 الأكثر استخدامًا] في ميدياويكي",
- "translate-group-desc-nodesc": "لا وصف متوفر لمجموعة الرسائل هذه",
- "translate-group-desc-readerfeedback": "مجموعة رسائل علوية تحتوي كل رسائل امتداد [https://www.mediawiki.org/wiki/Extension:ReaderFeedback ReaderFeedback] لميدياويكي",
- "translate-group-desc-translatablepages": "جميع الصفحات التي يمكن ترجمتها",
- "translate-group-desc-translate": "مجموعة رسائل علوية تحتوي كل رسائل امتداد [https://www.mediawiki.org/wiki/Extension:Translate Translate] لميدياويكي",
- "translate-group-desc-wikiaextensions": "مجموعة رسائل علوية تحتوي كل رسائل امتدادات ميدياويكي المدعومة التي تستخدمها [http://www.wikia.com Wikia]",
- "translate-group-desc-wikimediaextensions": "مجموعة رسائل علوية تحتوي كل رسائل امتدادات ميدياويكي المدعومة التي تستخدمها [https://wikimediafoundation.org/ مؤسسة ويكيميديا]"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/arc.json b/MLEB/Translate/i18n/groupdescriptions/arc.json
deleted file mode 100644
index 237d4724..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/arc.json
+++ /dev/null
@@ -1,8 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Basharh"
- ]
- },
- "translate-group-desc-mediawikicore": "ܬܚܒܘܫ ܟܢܘܫܬܐ ܕܐܓܪ̈ܬܐ ܗܕܐ ܥܠ ܐܓܪ̈ܬܐ ܦܠܝܚܬ̈ܐ ܒܨܚܚܐ ܕܐܠܦܐ ܗܫܝܬܐ ܡܢ [[Translating:MediaWiki|ܡܝܕܝܐܘܝܩܝ ]] ({{CURRENTVERSION}})"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/arz.json b/MLEB/Translate/i18n/groupdescriptions/arz.json
deleted file mode 100644
index f6af5a32..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/arz.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Meno25"
- ]
- },
- "translate-group-desc-collection": "مجموعه رسائل علويه تحتوى كل رسائل امتداد [https://www.mediawiki.org/wiki/Extension:Collection Collection] لميدياويكي",
- "translate-group-desc-flaggedrevs": "مجموعه رسائل علويه تحتوى كل رسائل امتداد [https://www.mediawiki.org/wiki/Extension:FlaggedRevs FlaggedRevs] لميدياويكي",
- "translate-group-desc-mediawikicore": "تحتوى مجموعه الرسائل هذه على الرسائل المستخدمه فى النسخه ألفا الحاليه من ميدياويكى ({{CURRENTVERSION}})",
- "translate-group-desc-mediawikiextensions": "مجموعه رسائل علويه تحتوى كل رسائل الامتدادات المدعومه لميدياويكى.",
- "translate-group-desc-mediawikimostused": "تحتوى مجموعه الرسائل هذه على [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki الرسائل ال500 الأكثر استخدامًا] فى ميدياويكي",
- "translate-group-desc-readerfeedback": "مجموعه رسائل علويه تحتوى كل رسائل امتداد [https://www.mediawiki.org/wiki/Extension:ReaderFeedback ReaderFeedback] لميدياويكي",
- "translate-group-desc-translate": "مجموعه رسائل علويه تحتوى كل رسائل امتداد [https://www.mediawiki.org/wiki/Extension:Translate Translate] لميدياويكي",
- "translate-group-desc-wikiaextensions": "مجموعه رسائل علويه تحتوى كل رسائل امتدادات ميدياويكى المدعومه التى تستخدمها [http://www.wikia.com Wikia]",
- "translate-group-desc-wikimediaextensions": "مجموعه رسائل علويه تحتوى كل رسائل امتدادات ميدياويكى المدعومه التى تستخدمها [https://wikimediafoundation.org/ مؤسسه ويكيميديا]"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/ast.json b/MLEB/Translate/i18n/groupdescriptions/ast.json
deleted file mode 100644
index bb53fa7b..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/ast.json
+++ /dev/null
@@ -1,62 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Xuacu",
- "Macofe"
- ]
- },
- "bw-desc-freecol": "[[Translating:FreeCol|FreeCol]] ye un xuegu d'estratexa por turnos",
- "bw-desc-fudforum": "[[Translating:FUDforum|FUDforum]] ye software pa un foru de discutiniu basáu na web",
- "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] ye software web pa xestión d'errores",
- "bw-desc-openstreetmap": "Tolos mensaxes relativos a [[Translating:OpenStreetMap|OpenStreetMap]]",
- "bw-desc-osm-site": "[[Translating:OpenStreetMap|OpenStreetMap]] ye un mapa editable del mundu enteru",
- "bw-desc-wikiblame": "[[Translating:WikiBlame|WikiBlame]] ye capaz d'alcontrar rápidamente los autores d'una parte d'una páxina nuna wiki de Wikimedia",
- "translate-group-desc-blockly": "Un grupu de mensaxes pa [[Translating:Blockly|Blockly]]",
- "translate-group-desc-bluespice": "Grupu de mensaxes de Meta que contien tolos mensaxes pa les estensiones [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:BlueSpice Blue Spice] de [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-collection": "Grupu de mensaxes Meta que contien tolos mensaxes pa la estensión [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection] de [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-eol": "Grupu de mensaxes de la [[Translating:EOL|Enciclopedia de la vida]]",
- "translate-group-desc-etherpad-lite": "[[Translating:Etherpad lite|Etherpad lite]] ye un editor collaborativu n'auténticu tiempu real",
- "translate-group-desc-europeana": "[[Translating:Europeana|Europeana 1914-1918]] ye un sitiu web con histories, películes y material históricu sobro la I Guerra Mundial",
- "translate-group-desc-flaggedrevs": "Grupu de mensaxes Meta que contien tolos mensaxes pa la estensión [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs FlaggedRevs] de [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-fuel": "[[Translating:FUEL|FUEL]] da más consistencia a la traducción de software",
- "translate-group-desc-huggle": "[[Translating:Huggle|Huggle]] ye una aplicación de visor de diff pa combatir el vandalismu nos proyeutos de Wikimedia",
- "translate-group-desc-ihris": "Grupu de mensaxes de [[Translating:iHRIS|iHRIS]]",
- "translate-group-desc-inaturalist": "[[Translating:INaturalist|iNaturalist]] ye un sitiu web pa grabar lo que ves na naturaleza, alcontrar a otros amantes de la naturaleza y aprender sobro'l mundu natural.",
- "translate-group-desc-kiwix": "Grupu de mensaxes de [[Translating:Kiwix|Kiwix]]",
- "translate-group-desc-mantisbt-plugin-core": "Un complementu central de [[Translating:MantisBT|MantisBT]]",
- "translate-group-desc-mathjax": "[[Translating:MathJax|MathJax]] ye una biblioteca de JavaScript compatible ente navegadores p'amosar escritura matemática nos navegadores web",
- "translate-group-desc-mediawiki-core-branch": "Mensaxes d'una versión estable de [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mediawikiapi": "Esti grupu de mensaxes contien los mensaxes emplegaos na API Action de la versión alfa actual de [[Translating:MediaWiki|MediaWiki]] ({{CURRENTVERSION}})",
- "translate-group-desc-mediawikicore": "Esti grupu de mensaxes contien los mensaxes emplegaos na versión alfa actual de [[Translating:MediaWiki|MediaWiki]] ({{CURRENTVERSION}})",
- "translate-group-desc-mediawikiextensions": "Grupu de mensaxes Meta que contien tolos mensaxes pa les estensiones que sofita [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mediawikiskins": "Grupu de mensaxes Meta que contien tolos mensaxes pa los aspeutos que sofita [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mediawikimostused": "Esti grupu de mensaxes contien los [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 mensaxes más usaos] de [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] ye un sistema d'información de xestión pa microfinances",
- "translate-group-desc-nfcring-control": "[[Translating:NFC_Ring_Control|NFC Ring Control]] ye una aplicación pa móviles pa interactuar con etiquetes NFC",
- "translate-group-desc-nocc": "[[Translating:NOCC|NOCC]] ye un cliente pa corréu web",
- "translate-group-desc-nodesc": "Nun hai descripción dala pa esti grupu de mensaxes",
- "translate-group-desc-openimages-all": "Estos mensaxes formen parte del proyeutu [[Translating:Open Images|Open Images]]",
- "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] ye un editor pa OpenStreetMap basáu en Flash",
- "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] ye una coleición de ferramientes pa editar Wikipedia",
- "translate-group-desc-readerfeedback": "Grupu de mensaxes Meta que contien tolos mensaxes pa la estensión [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback] de [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-semantic": "Grupu de mensaxes meta que contien tolos mensaxes de toles estensiones de [https://semantic-mediawiki.org/ Semantic MediaWiki]",
- "translate-group-desc-translatablepages": "Toles páxines traducibles",
- "translate-group-desc-translate": "Grupu de mensaxes Meta que contien tolos mensaxes pa la estensión [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate] de [[Translating:MediaWiki|MediaWiki]]; por favor, avézate al so [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary glosariu]",
- "translate-group-desc-tsint": "Un grupu de mensaxes pa [[Translating:Intuition|Intuition]], el sistema i18n de les ferramientes de [//tools.wmflabs.org/ Wikimedia Tool Labs] (<span class=\"plainlinks\">[[Translating talk:Intuition|sofitu]]</span>)",
- "translate-group-desc-universallanguageselector": "Grupu de mensaxes de Meta que contien tolos mensaxes pa la estensión [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector UniversalLanguageSelector] (ULS) de [[Translating:MediaWiki|MediaWiki]] y pa los paquetes de software rellacionaos",
- "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]] ye una ferramienta pa xubir ficheros a Wikimedia Commons ya otros proyeutos de Wikimedia",
- "translate-group-desc-visualeditor": "Grupu de mensaxes de Meta que contien tolos mensaxes pa la estensión [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:VisualEditor VisualEditor] de [[Translating:MediaWiki|MediaWiki]] y pa los paquetes de software rellacionaos",
- "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] ye un serviciu qu'amuesa rutes andariegues, ciclistes, pa bicis de monte y pa patinos en llinia per tou el mundu. Usa la llicencia GPL de GNU",
- "translate-group-desc-waymarked-trails-help": "Les páxines d'ayuda de los sitios web de Waymarked Trails: http://waymarkedtrails.org/help/about",
- "translate-group-desc-wikiaextensions": "Grupu de mensaxes Meta que contien tolos mensaxes pa les estensiones sofitaes por [[Translating:MediaWiki|MediaWiki]] qu'usa [http://www.wikia.com Wikia]",
- "translate-group-desc-wikimania-scholarships-app": "Grupu de mensaxes pa la [https://scholarships.wikimedia.org/apply solicitú de beques de Wikimania]",
- "translate-group-desc-wikimedia-mobile": "Grupu de mensaxes agrupaos que contien aplicaciones móviles pa los proyeutos de Wikimedia",
- "translate-group-desc-wikimedia-mobile-wikipedia": "[[Translating:WikipediaMobile|WikipediaMobile]] ye una aplicación de plataforma cruzada pa móviles y tabletes pa lleer y collaborar con Wikipedia",
- "translate-group-desc-wikimedia-mobile-wikipedia-android": "[[Translating:WikipediaMobile|Wikipedia Android]] ye la versión de la app pa móviles de Wikipedia específica pa Android",
- "translate-group-desc-wikimedia-mobile-wikipedia-ios": "[[Translating:WikipediaMobile|Wikipedia iOS]] ye la versión de la app pa móvil de Wikipedia específica pa iOS",
- "translate-group-desc-wikimedia-mobile-wikisource": "[[Translating:WikisourceMobile|WikisourceMobile]] ye una aplicación de plataforma cruzada pa móviles y tabletes pa lleer y collaborar con Uiquiesbilla",
- "translate-group-desc-wikimedia-mobile-wiktionary": "[[Translating:WiktionaryMobile|WiktionaryMobile]] ye una aplicación de plataforma cruzada pa móviles y tabletes pa lleer y collaborar con Wiktionary",
- "translate-group-desc-wikimediaextensions": "Grupu de mensaxes de Meta que contien tolos mensaxes pa les estensiones sofitaes por [[Translating:MediaWiki|MediaWiki]] qu'usa la [https://wikimediafoundation.org/ Fundación Wikimedia]",
- "translate-group-desc-wikimediaextensions-main": "Meta grupu de mensaxes que contién tolos mensaxes de les estensiones de [[Translating:MediaWiki|MediaWiki]] sofitaes que necesiten traducción pal [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee comité de llingües] de Wikimedia",
- "translategroupdescriptions-desc": "Descripciones de los grupos de mensaxes de los productos compatibles con la estensión [https://mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate]"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/az.json b/MLEB/Translate/i18n/groupdescriptions/az.json
deleted file mode 100644
index 19ec1e4f..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/az.json
+++ /dev/null
@@ -1,8 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Sortilegus"
- ]
- },
- "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] Vikimedia layihələrində səhifə müəlliflərini tez bir zamanda axtarıb tapmağa imkan verir."
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/azb.json b/MLEB/Translate/i18n/groupdescriptions/azb.json
deleted file mode 100644
index be77ef57..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/azb.json
+++ /dev/null
@@ -1,7 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Mousa"
- ]
- }
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/ba.json b/MLEB/Translate/i18n/groupdescriptions/ba.json
deleted file mode 100644
index 569fa0d1..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/ba.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Assele",
- "Macofe"
- ]
- },
- "translate-group-desc-collection": "[[Translating:MediaWiki|MediaWiki]] проектының [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection] киңәйеүенең бөтә яҙмаларын үҙ эсенә алыусы мета төркөм.",
- "translate-group-desc-flaggedrevs": "[[Translating:MediaWiki|MediaWiki]] проектының [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs FlaggedRevs] киңәйеүенең бөтә яҙмаларын үҙ эсенә алыусы мета төркөм.",
- "translate-group-desc-mediawikicore": "Был төркөм MediaWiki проектының хәҙерге альфа-версияһында ({{CURRENTVERSION}}) ҡулланылған яҙмаларҙы үҙ эсенә ала.",
- "translate-group-desc-mediawikiextensions": "MediaWiki проекты киңәйеүҙәренең бөтә яҙмаларын үҙ эсенә алыусы мета төркөм.",
- "translate-group-desc-mediawikimostused": "Был төркөм MediaWiki проектының [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 иң йыш ҡуланылған яҙмаларын] үҙ эсенә ала",
- "translate-group-desc-nodesc": "Был төркөм өсөн тасуирлама юҡ."
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/bcc.json b/MLEB/Translate/i18n/groupdescriptions/bcc.json
deleted file mode 100644
index a96d9fda..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/bcc.json
+++ /dev/null
@@ -1,8 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Baloch Afghanistan"
- ]
- },
- "translate-group-desc-mediawikiskins": "مٹا پیامی گروپ شاملی موچین پیامان په همراهی بوتینا پوستانی په [[ترجمه کورتین:میڈیا ویکی|میڈیا ویکی]]"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/be-tarask.json b/MLEB/Translate/i18n/groupdescriptions/be-tarask.json
deleted file mode 100644
index 19ed856d..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/be-tarask.json
+++ /dev/null
@@ -1,44 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "EugeneZelenko",
- "Jim-by",
- "Renessaince",
- "Wizardist",
- "Lokal Profil",
- "Macofe"
- ]
- },
- "bw-desc-freecol": "Перад тым, як перакладаць FreeCol на Вашую мову, калі ласка, прачытайце [[Translating:FreeCol]]. Freecol выкарыстоўвае ліцэнзію GPL.",
- "bw-desc-fudforum": "[http://fudforum.org/ FUDforum] — рухавік для вэб-форумаў на PHP.",
- "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] — вольная ўэб-сыстэма сачэньня за памылкамі. Калі ласка, паведамляйце пра любыя праблемы ў [[Support]].",
- "bw-desc-openstreetmap": "Група паведамленьняў для ўсіх паведамленьняў [[Translating:OpenStreetMap|OpenStreetMap]]",
- "bw-desc-osm-site": "Гэтая група зьмяшчае паведамленьні для [[Translating:Open Street Map|Open Street Map]].\nГлядзіце [http://unicode.org/repos/cldr-tmp/trunk/diff/supplemental/language_plural_rules.html#{{UILANGCODE}} старонку Unicode CLDR] зь інструкцыяй фармаваньня множнага ліку.",
- "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] дазваляе хутка знайсьці аўтараў пэўнай старонкі ці выказваньня ў праектах Фундацыі «Вікімэдыя».",
- "translate-group-desc-collection": "Мэта-група паведамленьняў, якая ўтрымлівае ўсе паведамленьні для пашырэньня [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection]",
- "translate-group-desc-eol": "Група паведамленьняў [[Translating:EOL|Энцыкляпэдыі жыцьця]]",
- "translate-group-desc-europeana": "[[Translating:Europeana|Europeana]] дае магчымасьць людзям знаёміцца з лічбавымі культурнымі крыніцамі Эўропы",
- "translate-group-desc-flaggedrevs": "Мэта-група паведамленьняў, якая ўтрымлівае ўсе паведамленьні для пашырэньня [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs FlaggedRevs]",
- "translate-group-desc-ihris": "Група паведамленьняў для [[Translating:iHRIS|iHRIS]]",
- "translate-group-desc-kiwix": "Група паведамленьняў для [[Translating:Kiwix|Kiwix]]",
- "translate-group-desc-mantisbt-plugin-core": "Асноўнае дапаўненьне [[Translating:MantisBT|MantisBT]]",
- "translate-group-desc-mediawiki-core-branch": "Паведамленьні стабільнай вэрсіі [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mediawikicore": "Гэта група паведамленьняў утрымлівае паведамленьні, якія выкарыстоўваюцца ў цяперашняй альфа-вэрсіі MediaWiki ({{CURRENTVERSION}})",
- "translate-group-desc-mediawikiextensions": "Мэта-група паведамленьняў, якая ўтрымлівае ўсе паведамленьні падтрымліваемых пашырэньняў для MediaWiki",
- "translate-group-desc-mediawikimostused": "Гэта група паведамленьняў, якая ўтрымлівае [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 паведамленьняў, якія найчасьцей выкарыстоўваюцца] ў MediaWiki",
- "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] — сыстэма кіраваньня інфармацыяй для мікрафінансаў",
- "translate-group-desc-nocc": "[http://nocc.sourceforge.net NOCC] — кліент электроннай пошты, напісаны на PHP. Калі ласка, паведамляйце пра любыя праблемы на [[Support|Падтрымку]].",
- "translate-group-desc-nodesc": "Няма апісаньня для гэтай групы паведамленьняў",
- "translate-group-desc-openimages-all": "Гэтыя паведамленьні зьяўляюцца часткай праекту [[Translating:Open Images|Open Images]]",
- "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] — рэдактар OpenStreetMap на Flash",
- "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] — калекцыя інструмэнтаў для рэдагаваньня Вікіпэдыі",
- "translate-group-desc-readerfeedback": "Мэта-група паведамленьняў, якая ўтрымлівае ўсе паведамленьні для пашырэньня [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback]",
- "translate-group-desc-semantic": "Мэта-група, якая ўтрымлівае ўсе паведамленьні для ўсіх пашырэньняў [https://semantic-mediawiki.org/ Semantic MediaWiki]",
- "translate-group-desc-translatablepages": "Усе старонкі, якія магчыма перакласьці",
- "translate-group-desc-translate": "Мэта-група паведамленьняў, якая ўтрымлівае ўсе паведамленьні для пашырэньня MediaWiki [https://www.mediawiki.org/wiki/Extension:Translate Translate]",
- "translate-group-desc-tsint": "Група паведамленьняў [http://toolserver.org/~krinkle/TsIntuition Toolserver Intuition], сыстэмы перакладаў для [http://tolserver.org сэрвэра інструмэнтаў] (<span class=\"plainlinks\">[[Translating talk:Toolserver|падтрымка]] &middot; [https://wiki.toolserver.org/view/Toolserver_Intuition тэхнічныя дэталі]</span>)",
- "translate-group-desc-wikiaextensions": "Мэта-група паведамленьняў, якая ўтрымлівае ўсе паведамленьні для падтрымліваемых пашырэньняў [[Translating:MediaWiki|MediaWiki]], выкарыстоўваемых [http://www.wikia.com Wikia]",
- "translate-group-desc-wikimediaextensions": "Мэта-група паведамленьняў, якая ўтрымлівае ўсе паведамленьні для падтрымліваемых пашырэньняў MediaWiki, выкарыстоўваемых [https://wikimediafoundation.org/ фундацыяй «Вікімэдыя»]",
- "translate-group-desc-wikimediaextensions-main": "Мэта-група паведамленьняў, якая утрымлівае ўсе паведамленьні для пашырэньняў [[Translating:MediaWiki|MediaWiki]], якія патрабуюць перакладу для [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee моўнага камітэту] Wikimedia",
- "translategroupdescriptions-desc": "Апісаньні групаў паведамленьняў для прадуктаў, якія падтрымліваюцца пашырэньнем [https://mediawiki.org/wiki/Extension:Translate перакладу]"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/bg.json b/MLEB/Translate/i18n/groupdescriptions/bg.json
deleted file mode 100644
index a9741e61..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/bg.json
+++ /dev/null
@@ -1,13 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "DCLXVI",
- "Spiritia"
- ]
- },
- "bw-desc-fudforum": "[http://fudforum.org/ FUDforum], форум, написан на PHP.",
- "bw-desc-osm-site": "Тази група съобщения съдържа интерфейсните съобщения за [[Translating:Open Street Map|Open Street Map]].\nВижте [http://unicode.org/repos/cldr-tmp/trunk/diff/supplemental/language_plural_rules.html#{{UILANGCODE}} страницата от сайта на проект Unicode CLDR] за обяснение на ключовете за множествено число в съобщенията.",
- "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] може бързо да намери авторите на страница в уики на Уикимедия.",
- "translate-group-desc-mediawiki-core-branch": "Съобщения за стабилна версия на [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] е набор от инструменти за редактиране на Уикипедия"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/bn.json b/MLEB/Translate/i18n/groupdescriptions/bn.json
deleted file mode 100644
index 891008b6..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/bn.json
+++ /dev/null
@@ -1,8 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Aftab1995"
- ]
- },
- "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]] উইকিমিডিয়া কমন্স এবং অন্যান্য উইকিমিডিয়া প্রকল্পে ফাইল আপলোড করার জন্য একটি টুল"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/br.json b/MLEB/Translate/i18n/groupdescriptions/br.json
deleted file mode 100644
index 4a84678a..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/br.json
+++ /dev/null
@@ -1,44 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Fohanno",
- "Fulup",
- "Gwendal",
- "McDutchie",
- "Y-M D",
- "Lokal Profil",
- "Macofe"
- ]
- },
- "bw-desc-freecol": "Kent stagañ da dreiñ FreeCol en ho yezh, lennit [[Translating:FreeCol]]. Ober a ra Freecol gant an aotre GPL.",
- "bw-desc-fudforum": "[http://fudforum.org/ FUDforum], ur forom web skrivet e PHP.",
- "bw-desc-mantisbt": "Ur meziant digoust da c'hwennat drein eo [[Translating:MantisBT|MantisBT]]. Roit keloù war [[Support]] m'en em gavit gant kudenn pe gudenn.",
- "bw-desc-openstreetmap": "An holl gemennadennoù a denn da [[Translating:OpenStreetMap|OpenStreetMap]]",
- "bw-desc-osm-site": "Er strollad kemennadennoù-mañ emañ kemennadennoù etrefas [[Translating:Open Street Map|Open Street Map]].",
- "bw-desc-wikiblame": "Gouest eo [http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] da gavout fonnus aozerien ur bajenn eus ur wiki Wikimedia.",
- "translate-group-desc-collection": "Meta-strollad kemennadennoù ennañ holl gemennadennoù an astenn [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Dastumad]",
- "translate-group-desc-eol": "Ur strollad kemennadennoù evit [[Translating:EOL|Holloueziadur ar vuhez]]",
- "translate-group-desc-europeana": "[[Translating:Europeana|Europeana]] a ginnig d'an dud ergerzhiñ dafar sevenadurel niverel Europa",
- "translate-group-desc-flaggedrevs": "Meta-strollad kemennadennoù ennañ holl gemennadennoù an astenn [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs FlaggedRevs]",
- "translate-group-desc-ihris": "Ur strollad kemennadennoù evit [[Translating:iHRIS|iHRIS]]",
- "translate-group-desc-kiwix": "Ur strollad kemennadennoù evit [[Translating:Kiwix|Kiwix]]",
- "translate-group-desc-mantisbt-plugin-core": "Ur plugin diazez evit [[Translating:MantisBT|MantisBT]]",
- "translate-group-desc-mediawiki-core-branch": "Kemennadennoù evit ur stumm stabil eus [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mediawikicore": "Er strollad kemennadennoù-mañ emañ ar c'hemennadennoù implijet e stumm red MediaWiki ({{CURRENTVERSION}})",
- "translate-group-desc-mediawikiextensions": "Meta-strollad kemennadennoù ennañ holl gemennadennoù an astennoù skoret evit MediaWiki",
- "translate-group-desc-mediawikimostused": "Er strollad kemennadennoù-mañ emañ [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 kemennadenn implijetañ] MediaWiki",
- "translate-group-desc-mifos": "Ur reizhiad merañ roadennoù evit ar mikrokredoù eo [[Translating:Mifos|Mifos]]",
- "translate-group-desc-nocc": "Ur c'hliant webmail skrivet e PHP eo [http://nocc.sourceforge.net NOCC]. Kasit keloù da [[Support]] ma verzit kudenn pe gudenn.",
- "translate-group-desc-nodesc": "N'eus deskrivadur ebet da gaout evit ar strollad kemennadennoù-mañ",
- "translate-group-desc-openimages-all": "Ul lodenn eus [[Translating:Open Images|raktres Open Images]] eo ar c'hemennadennoù-mañ",
- "translate-group-desc-pywikipedia": "Un dastumad ostilhoù da zegas kemmoù e Wikipedia eo [[Translating:Pywikibot|Pywikibot]]",
- "translate-group-desc-readerfeedback": "Meta-strollad kemennadennoù ennañ holl gemennadennoù an astenn [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback]",
- "translate-group-desc-semantic": "Stroll kemennadennoù Meta ennañ an holl gemennadennoù evit holl astennoù [https://semantic-mediawiki.org/ Semantic MediaWiki]",
- "translate-group-desc-translatablepages": "An holl bajennoù da dreiñ",
- "translate-group-desc-translate": "Meta-strollad kemennadennoù ennañ holl gemennadennoù an astenn MediaWiki [https://www.mediawiki.org/wiki/Extension:Translate Treiñ]",
- "translate-group-desc-tsint": "Ur strollad kemennadennoù evit [http://toolserver.org/~krinkle/TsIntuition Toolserver Intuition], ar reizhiad etrebroadelaat ostilhoù an [http://toolserver.org Toolserver] (<span class=\"plainlinks\">[[Translating talk:Toolserver|support]] &middot; [https://wiki.toolserver.org/view/Toolserver_Intuition technical details]</span>)",
- "translate-group-desc-wikiaextensions": "Meta-strollad kemennadennoù ennañ holl gemennadennoù an astennoù [[Translating:MediaWiki|MediaWiki]] implijet gant [http://www.wikia.com Wikia]",
- "translate-group-desc-wikimediaextensions": "Meta-strollad kemennadennoù ennañ holl gemennadennoù an astennoù MediaWiki implijet gant [https://wikimediafoundation.org/ Wikimedia Foundation]",
- "translate-group-desc-wikimediaextensions-main": "Stroll kemennadennoù Meta enno holl gemennadennoù an astennoù [[Translating:MediaWiki|MediaWiki]] skoret a zle bezañ troet evit [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee Bodad yezh] Wikimedia",
- "translategroupdescriptions-desc": "Deskrivadurioù ar strolladoù kemennadennoù evit ar produioù skoret gant an astenn [https://mediawiki.org/wiki/Extension:Translate Translate]"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/bs.json b/MLEB/Translate/i18n/groupdescriptions/bs.json
deleted file mode 100644
index d72dff3c..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/bs.json
+++ /dev/null
@@ -1,44 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "CERminator",
- "Smooth O",
- "KWiki",
- "Krinkle",
- "Lokal Profil",
- "Palapa",
- "Macofe"
- ]
- },
- "bw-desc-freecol": "Prije nego što počnete da prevodite FreeCol na Vaš jezik, molimo pročitajte [[Translating:FreeCol]]. FreeCol koristi GPL licencu.",
- "bw-desc-fudforum": "[http://fudforum.org/ FUDforum], web forum napisan u PHP.",
- "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] je web-bazirani softver za praćenje grešaka",
- "bw-desc-openstreetmap": "Sve poruke vezane za [[Translating:OpenStreetMap|OpenStreetMap]]",
- "bw-desc-osm-site": "Ova grupa poruka sadrži poruke interfejsa za [[Translating:Open Street Map|Open Street Map]].\nPogledajte [http://unicode.org/repos/cldr-tmp/trunk/diff/supplemental/language_plural_rules.html#{{UILANGCODE}} Unicode CLDR stranicu za objašnjenje o ključevima množine].",
- "bw-desc-wikiblame": "Putem [http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] je moguće brzo pronaći autore stranica u Wikimedia wikijima.",
- "translate-group-desc-collection": "Grupa meta poruka koja sadrži sve poruke za [[Translating:MediaWiki|MediaWiki]] proširenje [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection]",
- "translate-group-desc-eol": "Grupa poruka za [[Translating:EOL|Enciklopediju života]]",
- "translate-group-desc-europeana": "[[Translating:Europeana|Europeana]] omogućava ljudima da istraže digitalne kulturne resurse Evrope",
- "translate-group-desc-flaggedrevs": "Grupa meta poruka koja sadrži sve poruke za [[Translating:MediaWiki|MediaWiki]] proširenje [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs FlaggedRevs]",
- "translate-group-desc-ihris": "Grupa poruka za [[Translating:iHRIS|iHRIS]]",
- "translate-group-desc-kiwix": "Grupa poruka za [[Translating:Kiwix|Kiwix]]",
- "translate-group-desc-mantisbt-plugin-core": "Plugin jezgre za [[Translating:MantisBT|MantisBT]]",
- "translate-group-desc-mediawiki-core-branch": "Poruke za stabilnu verziju [[Translating:MediaWiki|MediaWiki]]ja",
- "translate-group-desc-mediawikicore": "Ova grupa poruka sadrži poruke koje se koriste u trenutnoj alfa verziji MediaWiki ({{CURRENTVERSION}})",
- "translate-group-desc-mediawikiextensions": "Grupa meta poruka koje sadrže sve poruke za podržana proširenja za MediaWiki",
- "translate-group-desc-mediawikimostused": "Ova grupa poruka sadrži [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 najčešće korištenih poruka] na MediaWiki",
- "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] je upravljački informacioni sistem za mikrofinansiranje",
- "translate-group-desc-nocc": "[http://nocc.sourceforge.net NOCC] je klijent za webmail napisan u PHP. Molimo prijavite sve greške na stranicu [[Support]].",
- "translate-group-desc-nodesc": "Nije dostupan opis za ovu grupu poruka",
- "translate-group-desc-openimages-all": "Ove poruke su dio [[Translating:Open Images|Open Images]] projekta",
- "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] je kolekcija alata za uređivanje Wikipedije",
- "translate-group-desc-readerfeedback": "Grupa meta poruka koja sadrži sve poruke za [[Translating:MediaWiki|MediaWiki]] proširenje [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback]",
- "translate-group-desc-semantic": "Grupa meta poruka koja sadrži sve poruke za sva [https://semantic-mediawiki.org/ Semantic MediaWiki] proširenja",
- "translate-group-desc-translatablepages": "Sve stranice koje se mogu prevesti",
- "translate-group-desc-translate": "Grupa meta poruka koje sadrže sve poruke za MediaWiki proširenje [https://www.mediawiki.org/wiki/Extension:Translate Translate]",
- "translate-group-desc-tsint": "Grupa poruka za [[Translating:Intuition|Intuition]], i18n sistem za [//tools.wmflabs.org/ Toolserver] alate ([[Translating talk:Intuition|podrška]])",
- "translate-group-desc-wikiaextensions": "Grupa meta poruka koja sadrži sve poruke za podržana [[Translating:MediaWiki|MediaWiki]] proširenja za [http://www.wikia.com Wikia]",
- "translate-group-desc-wikimediaextensions": "Grupa meta poruka koja sadrži sve poruke za podržana MediaWiki proširenja korištena od strane [https://wikimediafoundation.org/ Fondacije Wikimedia]",
- "translate-group-desc-wikimediaextensions-main": "Grupa meta poruka koja sadrži sve poruke za podršku [[Translating:MediaWiki|MediaWiki]] proširenja neophodnih za prevođenje za Wikimedia [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee Jezički komitet]",
- "translategroupdescriptions-desc": "Opisi grupe poruka za proizvode podržane od strane dodatka [https://mediawiki.org/wiki/Extension:Translate Translate]"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/ca.json b/MLEB/Translate/i18n/groupdescriptions/ca.json
deleted file mode 100644
index 8cc944a6..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/ca.json
+++ /dev/null
@@ -1,13 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "SMP",
- "Lokal Profil",
- "Jmarchn"
- ]
- },
- "bw-desc-freecol": "Abans de traduir FreeCol al vostre idioma, llegeiu [[Translating:FreeCol]]. Freecol utilitza una llicència GPL.",
- "bw-desc-fudforum": "[http://fudforum.org/ FUDforum], un fòrum web escrit en PHP.",
- "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] és un sistema de gestió d'errors via web.",
- "translate-group-desc-nocc": "[http://nocc.sourceforge.net NOCC] és un client de correu electrònic desenvolupat en PHP. Si us plau, informeu de qualsevol problema a [[Support]]."
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/ce.json b/MLEB/Translate/i18n/groupdescriptions/ce.json
deleted file mode 100644
index 9bfc38ad..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/ce.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Умар",
- "Macofe"
- ]
- },
- "bw-desc-openstreetmap": "[[Translating:OpenStreetMap|OpenStreetMap]] массо хаамашна хаамийн тоба",
- "translate-group-desc-mediawikicore": "ХӀокху хаамийн тобан чохь карара альфа-версеш [[Translating:MediaWiki|MediaWiki]] ({{CURRENTVERSION}}) лелош болу хаамаш бу",
- "translate-group-desc-mediawikiextensions": "[[Translating:MediaWiki|MediaWiki]]-ин шордарш ловш болу массо хаамаш чохь болу мета-тоба",
- "translate-group-desc-mediawikiskins": "[[Translating:MediaWiki|MediaWiki]]-ин шордарш ловш болу массо хаамаш чохь болу мета-тоба",
- "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] — Википеди таян гӀирсан гулам",
- "translate-group-desc-semantic": "[https://semantic-mediawiki.org/ Semantic MediaWiki] массо шордарш чохь долу мета-тоба",
- "translate-group-desc-translatablepages": "Гочян массо агӀонаш",
- "translate-group-desc-wikiaextensions": "[http://www.wikia.com Wikia] чохь лелош болу [[Translating:MediaWiki|MediaWiki]] шордарш ловш болу массо хаамаш чохь болу метта-тоба",
- "translate-group-desc-wikimediaextensions": "[https://wikimediafoundation.org/ Викимедиан фондан] чохь лелош болу MediaWiki шордарш ловш болу массо хаамаш чохь болу метта-тоба",
- "translate-group-desc-wikimediaextensions-main": "Викимедин [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee Меттанийн комитетан] гоч бан беза [[Translating:MediaWiki|MediaWiki]] хаамийн метта-тоба"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/cs.json b/MLEB/Translate/i18n/groupdescriptions/cs.json
deleted file mode 100644
index 8d6e9d3b..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/cs.json
+++ /dev/null
@@ -1,66 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Mormegil",
- "Reaperman",
- "Matěj Suchánek",
- "Lokal Profil",
- "Macofe",
- "Cvanca"
- ]
- },
- "bw-desc-freecol": "Před překládáním FreeCol do vašeho jazyka si přečtěte [[Translating:FreeCol]]. FreeCol používá licenci GPL.",
- "bw-desc-fudforum": "[http://fudforum.org/ FUDforum], webové fórum napsané v PHP.",
- "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] je webový systém pro správu chyb",
- "bw-desc-openstreetmap": "Skupina pro všechny zprávy [[Translating:OpenStreetMap|OpenStreetMap]]",
- "bw-desc-osm-site": "Tato skupina obsahuje zprávy rozhraní pro [[Translating:Open Street Map|Open Street Map]].\nVysvětlení klíčů u funkce PLURAL najdete na [http://unicode.org/repos/cldr-tmp/trunk/diff/supplemental/language_plural_rules.html#{{UILANGCODE}} stránce Unicode CLDR].",
- "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] dokáže rychle zjistit autory libovolné stránky na wiki nadace Wikimedia.",
- "translate-group-desc-blockly": "Skupina zpráv pro [[Translating:Blockly|Blockly]]",
- "translate-group-desc-bluespice": "Nadskupina zpráv obsahující všechny zprávy rozšíření [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:BlueSpice Blue Spice]",
- "translate-group-desc-collection": "Nadskupina zpráv obsahující všechny zprávy rozšíření [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection]",
- "translate-group-desc-eol": "Skupina zpráv pro [[Translating:EOL|Encyclopedia of Life]]",
- "translate-group-desc-etherpad-lite": "[[Translating:Etherpad lite|Etherpad lite]] je editor pro spolupráci v opravdu reálném čase",
- "translate-group-desc-europeana": "[[Translating:Europeana|Europeana 1914–1918]] je webová stránka s příběhy, filmy a historickými materiály o první světové válce.",
- "translate-group-desc-flaggedrevs": "Nadskupina zpráv obsahující všechny zprávy rozšíření [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs FlaggedRevs]",
- "translate-group-desc-fuel": "[[Translating:FUEL|FUEL]] přináší do překládání softwaru větší konzistenci",
- "translate-group-desc-huggle": "[[Translating:Huggle|Huggle]] aplikace pro rychlé prohlížení provedených změn určená pro řešení vandalismu na projektech Wikimedia.",
- "translate-group-desc-ihris": "Skupina zpráv pro [[Translating:iHRIS|iHRIS]]",
- "translate-group-desc-inaturalist": "[[Translating:INaturalist|iNaturalist]] je webová stránka umožňující zaznamenávat, co jste zahlédli v přírodě, potkávat se s dalšími milovníky přírody a něco se o přírodě dozvědět",
- "translate-group-desc-kiwix": "Skupina zpráv pro [[Translating:Kiwix|Kiwix]]",
- "translate-group-desc-mantisbt-plugin-core": "Základní modul pro [[Translating:MantisBT|MantisBT]]",
- "translate-group-desc-mathjax": "[[Translating:MathJax|MathJax]] je multiplatformní JavaScriptová knihovna pro zobrazování matematické notace ve webových prohlížečích",
- "translate-group-desc-mediawiki-core-branch": "Zprávy ze stabilní verze [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mediawikiapi": "Tato skupina zpráv obsahuje zprávy používané v Akčním API v aktuální alfaverzi [[Translating:MediaWiki|MediaWiki]] ({{CURRENTVERSION}})",
- "translate-group-desc-mediawikicore": "Tato skupina zpráv obsahuje zprávy používané v současné alfaverzi MediaWiki ({{CURRENTVERSION}})",
- "translate-group-desc-mediawikiextensions": "Nadskupina zpráv obsahující všechny zprávy ve všech podporovaných rozšířeních MediaWiki",
- "translate-group-desc-mediawikiskins": "Nadskupina zpráv obsahující všechny zprávy ve všech podporovaných vzhledech [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mediawikimostused": "Tato skupina zpráv obsahuje [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 nejpoužívanějších zpráv] v [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] je informační systém pro správu mikrofinancování",
- "translate-group-desc-nfcring-control": "[[Translating:NFC_Ring_Control|NFC Ring Control]] je mobilní aplikace pro interakci s NFC tagy",
- "translate-group-desc-nocc": "[http://nocc.sourceforge.net NOCC] je webmail napsaný v PHP. Dotazy a chyby pište na stránku [[Support]].",
- "translate-group-desc-nodesc": "Pro tuto skupinu zpráv není popis k dispozici",
- "translate-group-desc-openimages-all": "Tato hlášení jsou součástí projektu [[Translating:Open Images|Open Images]]",
- "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] je flashový editor pro OpenStreetMap",
- "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] je soubor nástrojů pro editaci Wikipedie",
- "translate-group-desc-readerfeedback": "Nadskupina zpráv obsahující všechny zprávy rozšíření [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback]",
- "translate-group-desc-semantic": "Nadskupina zpráv obsahující všechny zprávy pro všechna rozšíření [https://semantic-mediawiki.org/ Semantic MediaWiki]",
- "translate-group-desc-translatablepages": "Všechny přeložitelné stránky",
- "translate-group-desc-translate": "Nadskupina zpráv obsahující všechny zprávy rozšíření [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate]; seznamte se prosím s jeho [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary terminologií]",
- "translate-group-desc-tsint": "Skupina zpráv pro [[Translating:Intuition|Intuition]], lokalizační systém pro nástroje na [//tools.wmflabs.org/ Wikimedia Tool Labs] ([[Translating talk:Intuition|podpora]])",
- "translate-group-desc-universallanguageselector": "Nadskupina zpráv obsahující všechny zprávy rozšíření [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector UniversalLanguageSelector] (ULS) a související softwarové balíčky",
- "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]] je nástroj pro načítání souborů na Wikimedia Commons a další projekty Wikimedia",
- "translate-group-desc-visualeditor": "Nadskupina zpráv obsahující všechny zprávy rozšíření [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:VisualEditor VisualEditor] a související softwarové balíčky",
- "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] je služba zobrazující trasy pro turistiku, cyklistiku, MTB a inline bruslení po celém světě. Používá licenci GNU GPL",
- "translate-group-desc-waymarked-trails-help": "Nápověda na stránkách Waymarked Trails: http://waymarkedtrails.org/help/about",
- "translate-group-desc-wikiaextensions": "Nadskupina zpráv obsahující všechny zprávy používané v podporovaných rozšířeních [[Translating:MediaWiki|MediaWiki]] používaných na [http://www.wikia.com Wikia]",
- "translate-group-desc-wikimania-scholarships-app": "Skupina zpráv pro [https://scholarships.wikimedia.org/apply Stipendia na Wikimania]",
- "translate-group-desc-wikimedia-mobile": "Nadskupina zpráv obsahující mobilní aplikace k projektům Wikimedia",
- "translate-group-desc-wikimedia-mobile-wikipedia": "[[Translating:WikipediaMobile|WikipediaMobile]] je mnohoplatformní mobilní a tabletová aplikace pro čtení Wikipedie a přispívání do ní",
- "translate-group-desc-wikimedia-mobile-wikipedia-android": "[[Translating:WikipediaMobile|Wikipedia Android]] je verze mobilní aplikace Wikipedie pro Android",
- "translate-group-desc-wikimedia-mobile-wikipedia-ios": "[[Translating:WikipediaMobile|Wikipedia iOS]] je verze mobilní aplikace Wikipedie pro iOS",
- "translate-group-desc-wikimedia-mobile-wikisource": "[[Translating:WikisourceMobile|WikisourceMobile]] je mnohoplatformní mobilní a tabletová aplikace pro čtení Wikizdrojů a přispívání do nich",
- "translate-group-desc-wikimedia-mobile-wiktionary": "[[Translating:WiktionaryMobile|WiktionaryMobile]] je mnohoplatformní mobilní a tabletová aplikace pro čtení Wikislovníku a přispívání do něj",
- "translate-group-desc-wikimediaextensions": "Nadskupina zpráv obsahující všechny zprávy používané v rozšířeních [[Translating:MediaWiki|MediaWiki]] používaných na wiki [https://wikimediafoundation.org/ nadace Wikimedia Foundation]",
- "translate-group-desc-wikimediaextensions-main": "Nadskupina zpráv obsahující všechny zprávy v podporovaných rozšířeních [[Translating:MediaWiki|MediaWiki]], jejichž překlad vyžaduje [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee Jazyková komise nadace Wikimedia]",
- "translategroupdescriptions-desc": "Popisy skupin zpráv pro produkty podporované rozšířením [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate]"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/da.json b/MLEB/Translate/i18n/groupdescriptions/da.json
deleted file mode 100644
index fe8bd658..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/da.json
+++ /dev/null
@@ -1,53 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Byrial",
- "Christian List",
- "Emilkris33",
- "Hylle",
- "Kaare",
- "Peter Alberti",
- "Macofe"
- ]
- },
- "bw-desc-freecol": "[[Translating:FreeCol|FreeCol]] er et turbaseret strategispil",
- "bw-desc-fudforum": "[[Translating:FUDforum|FUDforum]] er et webbaseret diskussionsforum",
- "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] er et webbaseret problemsporingsprogram",
- "bw-desc-openstreetmap": "Alle meddelelser relateret til [[Translating:OpenStreetMap|OpenStreetMap]]",
- "bw-desc-osm-site": "[[Translating:OpenStreetMap|OpenStreetMap]] er et redigerbart kort over hele verden",
- "bw-desc-wikiblame": "[[Translating:WikiBlame|WikiBlame]] er i stand til hurtigt at finde forfatterne til en del af en side i en Wikimedia wiki",
- "translate-group-desc-blockly": "En beskedgruppe for [[Translating:Blockly|Blockly]]",
- "translate-group-desc-collection": "Meta beskedgruppe der indeholder alle beskeder til [[Translating:MediaWiki|MediaWiki]] udvidelsen [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection]",
- "translate-group-desc-eol": "En beskedgruppe for [[Translating:EOL|Encyclopedia of Life]]",
- "translate-group-desc-etherpad-lite": "[[Translating:Etherpad lite|Etherpad lite]] er en virkelig-realtids kollaborativ editor",
- "translate-group-desc-europeana": "[[Translating:Europeana|Europeana]] giver folk mulighed for at udforske de digitale kulturelle ressourcer i Europa",
- "translate-group-desc-flaggedrevs": "!Meta beskedgruppe der indeholder alle beskeder til [[Translating:MediaWiki|MediaWiki]] udvidelsen [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs FlaggedRevs]",
- "translate-group-desc-fuel": "[[Translating:FUEL|FUEL]] giver mere konsistens ved oversættelse af software",
- "translate-group-desc-ihris": "En beskedgruppe for [[Translating:iHRIS|iHRIS]]",
- "translate-group-desc-kiwix": "En beskedgruppe for [[Translating:Kiwix|Kiwix]]",
- "translate-group-desc-mantisbt-plugin-core": "Et centralt plugin til [[Translating:MantisBT|MantisBT]]",
- "translate-group-desc-mathjax": "[[Translating:MathJax|MathJax]] er et cross-browser JavaScript bibliotek, der viser matematisk notation i web-browsere",
- "translate-group-desc-mediawiki-core-branch": "Beskeder til en stabil version af [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mediawikicore": "Denne beskedgruppe indeholder beskederne som bruges i den nuværende alfaversion af [[Translating:MediaWiki|MediaWiki]] ({{CURRENTVERSION}})",
- "translate-group-desc-mediawikiextensions": "Meta beskedgruppe der indeholder alle beskeder til understøttede udvidelser til [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mediawikimostused": "Denne beskedgruppe indeholder de [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 mest brugte beskeder] i [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] er et management informationssystem for mikrofinansiering",
- "translate-group-desc-nocc": "[[Translating:NOCC|NOCC]] er en webmail klient",
- "translate-group-desc-nodesc": "Der er ikke nogen beskrivelse tilgængelig for denne gruppe af beskeder",
- "translate-group-desc-openimages-all": "Disse meddelelser er en del af [[Translating:Open Images|Open Images]] projektet",
- "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] er et Flash-baseret redigeringsprogram til OpenStreetMap",
- "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] er en samling af værktøjer til at redigere Wikipedia",
- "translate-group-desc-readerfeedback": "Meta beskedgruppe der indeholder alle beskeder til [[Translating:MediaWiki|MediaWiki]] udvidelsen [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback]",
- "translate-group-desc-semantic": "Meta beskedgruppe, der indeholder alle beskeder for alle udvidelser til [https://semantic-mediawiki.org/ Semantisk MediaWiki]",
- "translate-group-desc-translatablepages": "Alle sider som kan oversættes",
- "translate-group-desc-translate": "Metabeskedgruppe, der indeholder alle beskeder til MediaWiki-udvidelsen [https://www.mediawiki.org/wiki/Extension:Translate Translate]; vær venlig at gøre dig bekendt med dens [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossar ordfortegnelse]",
- "translate-group-desc-tsint": "En beskedgruppe for [[Translating:Intuition|Intuition]], i18n systemet til [//tools.wmflabs.org/ Toolserver] værktøjer (<span class=\"plainlinks\">[[Translating talk:Intuition|hjælp]]</span>)",
- "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]] er et værktøj til at uploade filer til Wikimedia Commons og andre Wikimediaprojekter",
- "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] er en tjeneste, der viser vandre-, cykel-, mountainbike- og rulleskøjteruter for hele verden. Den bruger GNU GPL-licensen.",
- "translate-group-desc-waymarked-trails-help": "Hjælpesider for Waymarked Trails webstedet: http://waymarkedtrails.org/help/about",
- "translate-group-desc-wikiaextensions": "Meta besked gruppe der indeholder alle beskeder til understøttede [[Translating:MediaWiki|MediaWiki]] udvidelser brugt af [http://www.wikia.com Wikia]",
- "translate-group-desc-wikimedia-mobile": "Aggregeret beskedgruppe, der indeholder mobile applikationer til Wikimediaprojekter",
- "translate-group-desc-wikimediaextensions": "Meta besked gruppe der indeholder alle beskeder til understøttede MediaWiki udvidelser brugt af [https://wikimediafoundation.org/ Wikimedia Foundation]",
- "translate-group-desc-wikimediaextensions-main": "Meta besked gruppe der indeholder alle beskeder til understøttede [[Translating:MediaWiki|MediaWiki]] udvidelser der kræves oversættelse af for Wikimedia [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee Language committee]",
- "translategroupdescriptions-desc": "Beskrivelser af beskedgrupper for produkter der understøttes af [https://mediawiki.org/wiki/Extension:Translate Translate] udvidelsen"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/de.json b/MLEB/Translate/i18n/groupdescriptions/de.json
deleted file mode 100644
index 9d16c43d..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/de.json
+++ /dev/null
@@ -1,67 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Kghbln",
- "Lyzzy",
- "Metalhead64",
- "Pill",
- "The Evil IP address",
- "Umherirrender",
- "Macofe"
- ]
- },
- "bw-desc-freecol": "Vor dem Übersetzungsstart für FreeCol bitte [[Translating:FreeCol]] lesen. FreeCol nutzt die GPL-Lizenz.",
- "bw-desc-fudforum": "[http://fudforum.org/ FUDforum], ein in PHP geschriebenes Web-Forum.",
- "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] ist ein internetgestütztes Bug-Tracking-System",
- "bw-desc-openstreetmap": "Diese Gruppe beinhaltet die Nachrichten für [[Translating:OpenStreetMap|OpenStreetMap]]",
- "bw-desc-osm-site": "Diese Gruppe beinhaltet die Nachrichten der Benutzeroberfläche für [[Translating:Open Street Map|Open Street Map]].",
- "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] ermöglicht das schnelle Finden eines Autoren einer Seite auf Wikis der Wikimedia Foundation.",
- "translate-group-desc-blockly": "Eine Nachrichtengruppe für [[Translating:Blockly|Blockly]]",
- "translate-group-desc-bluespice": "Diese Meta-Nachrichtengruppe enthält alle Nachrichten für die [[Translating:MediaWiki|MediaWiki]]-[https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:BlueSpice Blue-Spice]-Erweiterungen.",
- "translate-group-desc-collection": "Diese Hauptgruppe beinhaltet alle Systemnachrichten für die [[Translating:MediaWiki|MediaWiki]]-Erweiterung [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection]",
- "translate-group-desc-eol": "Nachrichten für die [[Translating:EOL|Enzyklopädie des Lebens]]",
- "translate-group-desc-etherpad-lite": "[[Translating:Etherpad lite|Etherpad lite]] ist ein kollaborativer Echtzeiteditor",
- "translate-group-desc-europeana": "[[Translating:Europeana|Europeana 1914–1918]] ist eine Website mit Geschichten, Filmen und historischem Material über den Ersten Weltkrieg",
- "translate-group-desc-flaggedrevs": "Diese Hauptgruppe beinhaltet alle Systemnachrichten für die [[Translating:MediaWiki|MediaWiki]]-Erweiterung [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs FlaggedRevs]",
- "translate-group-desc-fuel": "[[Translating:FUEL|FUEL]] bringt mehr Konsistenz in Softwareübersetzungen",
- "translate-group-desc-huggle": "[[Translating:Huggle|Huggle]] ist eine schnelle Unterschieds-Browseranwendung für den Umgang mit Vandalismus auf Wikimedia-Projekten",
- "translate-group-desc-ihris": "Nachrichten für [[Translating:iHRIS|iHRIS]]",
- "translate-group-desc-inaturalist": "[[Translating:INaturalist|iNaturalist]] ist eine Website zur Aufzeichnung von allem, was in der Natur zu sehen ist, zum Treffen mit anderen Naturliebhabern und zum Sammeln von Erfahrungen über die Naturwelt.",
- "translate-group-desc-kiwix": "Nachrichten für [[Translating:Kiwix|Kiwix]]",
- "translate-group-desc-mantisbt-plugin-core": "Ein Haupt-Plugin für [[Translating:MantisBT|MantisBT]]",
- "translate-group-desc-mathjax": "[[Translating:MathJax|MathJax]] ist eine browserübergreifende JavaScript-Bibliothek zum Anzeigen von mathematischen Notationen in Webbrowsern",
- "translate-group-desc-mediawiki-core-branch": "Nachrichten für eine stabile Version von [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mediawikiapi": "Diese Nachrichtengruppe enthält die in der Action-API verwendeten Nachrichten für die aktuelle Alpha-Version von [[Translating:MediaWiki|MediaWiki]] ({{CURRENTVERSION}})",
- "translate-group-desc-mediawikicore": "Diese Gruppe beinhaltet alle Nachrichten der aktuellen alpha-Version von MediaWiki ({{CURRENTVERSION}})",
- "translate-group-desc-mediawikiextensions": "Diese Hauptgruppe beinhaltet alle Systemnachrichten der von MediaWiki unterstützten Erweiterungen",
- "translate-group-desc-mediawikiskins": "Metanachrichtengruppe, die alle Nachrichten für unterstützte [[Translating:MediaWiki|MediaWiki]]-Benutzeroberflächen beinhaltet.",
- "translate-group-desc-mediawikimostused": "Diese Gruppe beinhaltet die [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 am häufigsten genutzten Nachrichten] in [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] ist ein Managementinformationssystem für Mikrofinanzinstitutionen",
- "translate-group-desc-nfcring-control": "[[Translating:NFC_Ring_Control|NFC Ring Control]] ist eine mobile App zur Interaktion mit NFC-Tags",
- "translate-group-desc-nocc": "[http://nocc.sourceforge.net NOCC] ist ein in PHP geschriebener Webmail-Client. Fragen und Fehler sollten auf [[Support]] berichtet werden.",
- "translate-group-desc-nodesc": "Für diese Nachrichtengruppe ist keine Beschreibung verfügbar",
- "translate-group-desc-openimages-all": "Diese Nachrichten sind Teil des [[Translating:Open Images|Open Images]]-Projekts",
- "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] ein Flash-gestützter OpenStreetMap-Editor",
- "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] ist eine Sammlung von Werkzeugen zum Bearbeiten der Wikipedia",
- "translate-group-desc-readerfeedback": "Diese Hauptgruppe beinhaltet alle Systemnachrichten für die [[Translating:MediaWiki|MediaWiki]]-Erweiterung [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback]",
- "translate-group-desc-semantic": "Diese Hauptgruppe beinhaltet alle Systemnachrichten für die MediaWiki-Erweiterung [https://semantic-mediawiki.org/wiki/Semantic_MediaWiki_–_Startseite Semantic MediaWiki] und ihren verbundenen Erweiterungen",
- "translate-group-desc-translatablepages": "Alle übersetzbaren Seiten",
- "translate-group-desc-translate": "Diese Hauptgruppe beinhaltet alle Systemnachrichten für die [[Translating:MediaWiki|MediaWiki]]-Erweiterung [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate]; bitte gruppiere sie selbst mit dem [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary Glossar].",
- "translate-group-desc-tsint": "Eine Nachrichtengruppe für [[Translating:Intuition|Intuition]], das I18n-System für die Werkzeuge von [//tools.wmflabs.org/ Wikimedia Tool Labs] (<span class=\"plainlinks\">[[Translating talk:Intuition|Unterstützung]]</span>)",
- "translate-group-desc-universallanguageselector": "Meta-Nachrichtengruppe, die alle Nachrichten für die [[Translating:MediaWiki|MediaWiki]]-Erweiterung „[https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector UniversalLanguageSelector]“ (ULS) und verwandte Softwarepakete enthält.",
- "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]] ist ein Werkzeug zum Hochladen von Dateien auf Wikimedia Commons und anderen Wikimedia-Projekten",
- "translate-group-desc-visualeditor": "Meta-Nachrichtengruppe, die alle Nachrichten für die [[Translating:MediaWiki|MediaWiki]]-Erweiterung „[https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:VisualEditor VisualEditor]“ und die damit verbundenen Softwarepakete enthält.",
- "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] ist ein Dienst, der Routen zum Wandern, Radeln, Mountainbiking und Skating auf der gesamten Welt darstellt. Er verwendet die Lizenz GNU GPL",
- "translate-group-desc-waymarked-trails-help": "Die Hilfeseiten der „Waymarked Trails“-Websites: http://waymarkedtrails.org/help/about",
- "translate-group-desc-wikiaextensions": "Diese Hauptgruppe beinhaltet alle Systemnachrichten der unterstützten [[Translating:MediaWiki|MediaWiki]]-Erweiterungen, die von [http://www.wikia.com Wikia] genutzt werden",
- "translate-group-desc-wikimania-scholarships-app": "Nachrichtengruppe für die [https://scholarships.wikimedia.org/apply Wikimania-Stipendien-Anwendung]",
- "translate-group-desc-wikimedia-mobile": "Die zusammengefasste Nachrichtengruppe enthält mobile Anwendungen für Wikimedia-Projekte",
- "translate-group-desc-wikimedia-mobile-wikipedia": "[[Translating:WikipediaMobile|WikipediaMobile]] ist eine plattformunabhängige Mobil- und Tabletanwendung zum Lesen und Bearbeiten von Wikipedia",
- "translate-group-desc-wikimedia-mobile-wikipedia-android": "[[Translating:WikipediaMobile|Wikipedia Android]] ist die Android-spezifische Version der Wikipedia-Mobile-App",
- "translate-group-desc-wikimedia-mobile-wikipedia-ios": "[[Translating:WikipediaMobile|Wikipedia iOS]] ist die iOS-spezifische Version der Wikipedia-Mobile-App",
- "translate-group-desc-wikimedia-mobile-wikisource": "[[Translating:WikisourceMobile|WikisourceMobile]] ist eine plattformunabhängige Mobil- und Tabletanwendung zum Lesen und Bearbeiten von Wikisource",
- "translate-group-desc-wikimedia-mobile-wiktionary": "[[Translating:WiktionaryMobile|WiktionaryMobile]] ist eine plattformunabhängige Mobil- und Tabletanwendung zum Lesen und Bearbeiten von Wiktionary",
- "translate-group-desc-wikimediaextensions": "Diese Hauptgruppe beinhaltet alle Systemnachrichten der unterstützten [[Translating:MediaWiki|MediaWiki]]-Erweiterungen, die von der [https://wikimediafoundation.org/ Wikimedia Foundation] genutzt werden",
- "translate-group-desc-wikimediaextensions-main": "Diese Hauptgruppe beinhaltet alle Systemnachrichten der unterstützten [[Translating:MediaWiki|MediaWiki]]-Erweiterungen, die vom Wikimedia [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee Sprachenkomitee] genutzt werden",
- "translategroupdescriptions-desc": "Beschreibung der Nachrichtengruppen von Projekten, die bei der Übersetzung von der Programmerweiterung [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate „Translate“] unterstützt werden"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/diq.json b/MLEB/Translate/i18n/groupdescriptions/diq.json
deleted file mode 100644
index 9133cff3..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/diq.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Erdemaslancan",
- "Mirzali",
- "Macofe"
- ]
- },
- "translate-group-desc-collection": "MediaWiki ra qandê [https://www.mediawiki.org/wiki/Extension:Collection Koleksiyonanê] grube mesacê MediaWiki",
- "translate-group-desc-eol": "Seba [[Translating:EOL|Ensiklopediya Cıwiyayışi]] yew mesacê grube",
- "translate-group-desc-ihris": "Seba [[Translating:iHRIS|iHRIS]]i yew mesacê grube",
- "translate-group-desc-kiwix": "Seba [[Translating:Kiwix|Kiwix]]i yew mesacê grube",
- "translate-group-desc-mediawikiextensions": "Mesacê gruba meta de mesacê ke pêro dezgehê destegdayışi rê qandê [[Translating:MediaWiki|MediaWiki]]y estê",
- "translate-group-desc-translate": "MediaWiki ra qandê [https://www.mediawiki.org/wiki/Extension:Translate Açarnayışê] grube mesacê MediaWiki",
- "translate-group-desc-wikiaextensions": "[[Translating:MediaWiki|MediaWiki]] ra qandê mesacan dê [http://www.wikia.com Wikia] ra itad karêno"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/dsb.json b/MLEB/Translate/i18n/groupdescriptions/dsb.json
deleted file mode 100644
index 6e6fa204..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/dsb.json
+++ /dev/null
@@ -1,57 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Michawiki",
- "Lokal Profil",
- "Macofe"
- ]
- },
- "bw-desc-freecol": "Nježli až pśełožujoš FreeCol do swójeje rěcy, pśecytaj pšosym [[Translating:FreeCol]]. FreeCol wužywa licencu GPL.",
- "bw-desc-fudforum": "[http://fudforum.org/ FUDforum], webforum napisany w PHP.",
- "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] jo swobodny system za slědowanje programowych zmólkow na zakłaźe weba. Pšosym daj problemy na boku [[Support|Pódpěra]] k wěsći.",
- "bw-desc-openstreetmap": "Kupka powěźeńkow za wšykne powěźeńki z [[Translating:OpenStreetMap|OpenStreetMap]]",
- "bw-desc-osm-site": "Toś ta kupka powěźeńkow wopśimujo powěźeńki wužywarskego powjercha za [[Translating:Open Street Map|Open Street Map]]",
- "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] móžo awtorow boka we wikiju Wikimedije malsnje namakaś.",
- "translate-group-desc-blockly": "Kupka powěźeńkow za [[Translating:Blockly|Blockly]]",
- "translate-group-desc-collection": "Toś ta głowna kupka wopśimujo wše powěźeńki za rozšyrjenje [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection]",
- "translate-group-desc-eol": "Kupka powěźeńkow za [[Translating:EOL|Encyclopedia of Life]]",
- "translate-group-desc-etherpad-lite": "[[Translating:Etherpad lite|Etherpad lite]] jo editor we napšawdnem casu za zgromadne źěło",
- "translate-group-desc-europeana": "[[Translating:Europeana|Europeana]] zmóžnja luźim digitalne kulturne resurse Europy pśeslěźiś",
- "translate-group-desc-flaggedrevs": "Toś ta głowna kupka wopśimujo wše powěźeńki za rozšyrjenje [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs FlaggedRevs]",
- "translate-group-desc-fuel": "[[Translating:FUEL|FUEL]] pśinjaso wěcej konsistence do softwarowego pśełožowanja",
- "translate-group-desc-ihris": "Kupka powěźeńkow za [[Translating:iHRIS|iHRIS]]",
- "translate-group-desc-kiwix": "Kupka powěźeńkow za [[Translating:Kiwix|Kiwix]]",
- "translate-group-desc-mantisbt-plugin-core": "Głowny tykac za [[Translating:MantisBT|MantisBT]]",
- "translate-group-desc-mathjax": "[[Translating:MathJax|MathJax]] jo JavaScriptowa biblioteka za wšake wobglědowaki, kótaraž zwobraznjujo matematiske notacije we webwobglědowakach.",
- "translate-group-desc-mediawiki-core-branch": "Powěźeńki za stabilnu wersiju [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mediawikicore": "Toś ta kupka powěźeńkow wopśimujo powěźeńki, kótarež wužywaju se w aktualnej alfa-wersiji MediaWiki ({{CURRENTVERSION}})",
- "translate-group-desc-mediawikiextensions": "Toś ta głowna kupka wopśimujo wše powěźeńki za pódpěrane rozšyrjenja MediaWiki",
- "translate-group-desc-mediawikimostused": "Toś ta kupka powěźeńkow wopśimujo [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 nejcesćej wužywanych powěźeńkow] w [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] jo informaciski system managementa za mikrofinancěrowanje",
- "translate-group-desc-nocc": "[http://nocc.sourceforge.net NOCC] jo webmailowy klient spisany w PHP. Pšosym daj problemy na boku [[Support|Pódpěra]] k wěsći.",
- "translate-group-desc-nodesc": "Wopisanje njestoj k dispoziciji za toś tu kupku.",
- "translate-group-desc-openimages-all": "Toś te powěźeńki su źěl projekta [[Translating:Open Images|Open Images]]",
- "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] jo editor za OpenStreetMap, kótaryž na Flash bazěrujo",
- "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] jo zběrka rědow za wobźěłowanjoju Wikipedije",
- "translate-group-desc-readerfeedback": "Metakupka powěźeńkow, kótaraž wopśimujo wše powěźeńki za rozšyrjenje [[Translating:MediaWiki|MediaWiki]]\n[https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback]",
- "translate-group-desc-semantic": "Głowna zdźěleńska kupka, kótaraž wopśimujo wšykne powěźeńki za wšykne rozšyrjenja [https://semantic-mediawiki.org/ Semantic MediaWiki]",
- "translate-group-desc-translatablepages": "Wšykne pśełožujobne boki",
- "translate-group-desc-translate": "Toś ta głowna kupka wopśimujo wše powěźeńki za rozšyrjenje MediaWiki [https://www.mediawiki.org/wiki/Extension:Translate Translate]; pšosym wopóznaj se z jogo [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary glosarom]",
- "translate-group-desc-tsint": "Zdźěleńska kupka za [[Translating:Intuition|Intuition]], i18n-system za rědy [//tools.wmflabs.org/ Toolserver] (<span class=\"plainlinks\">[[Translating talk:Intuition|pódpěra]] </span>)",
- "translate-group-desc-universallanguageselector": "Metakupka powěźeńkow, kótaraž wopśimujo wšykne powěźeńki za rozšyrjenje MediaWiki [https://www.mediawiki.org/wiki/Extension:UniversalLanguageSelector UniversalLanguageSelector] (ULS) a pśisłušne softwarowe pakśiki",
- "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]] jo rěd za nagrawanje datajow do Wikimedia Commons a drugich wikimedijowych projektow",
- "translate-group-desc-visualeditor": "Metakupka powěźeńkow, kótaraž wopśimujo wšykne powěźeńki za rozšyrjenje MediaWiki [https://www.mediawiki.org/wiki/Extension:VisualEditor VisualEditor] a pśisłušne softwarowe pakśiki.",
- "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] jo słužba, kótaraž ruty za drogowanje, kólasowanje, mountainbikowanje a skating na cełem swěśe pokazujo. Wužywa licencu GNU GPL",
- "translate-group-desc-waymarked-trails-help": "Boki pomocy websedłow za Waymarked Trails: http://waymarkedtrails.org/help/about",
- "translate-group-desc-wikiaextensions": "Toś ta głowna kupka wopśimujo wše powěźeńki za pódpěrane rozšyrjenja [[Translating:MediaWiki|MediaWiki]], kótarež wužywaju se pśez [http://www.wikia.com Wikia]",
- "translate-group-desc-wikimania-scholarships-app": "Kupka powěźeńkow za [https://scholarships.wikimedia.org/apply stipendiumowe nałoženje Wikimania]",
- "translate-group-desc-wikimedia-mobile": "Metakupka powěźeńkow, kótaraž wopśimujo mobilne nałoženja za Wikimedijowe projekty",
- "translate-group-desc-wikimedia-mobile-wikipedia": "[[Translating:WikipediaMobile|WikipediaMobile]] jo nałoženje za mobilne rědy a tablety za cytanje a sobuźěło we Wikipediji",
- "translate-group-desc-wikimedia-mobile-wikipedia-android": "[[Translating:WikipediaMobile|Wikipedija Android]] jo specifiska wersija za Android nałoženja Wikipedia mobile",
- "translate-group-desc-wikimedia-mobile-wikipedia-ios": "[[Translating:WikipediaMobile|Wikipedia iOS]] jo wersija iOS nałoženja Wikipedia mobile",
- "translate-group-desc-wikimedia-mobile-wikisource": "[[Translating:WikisourceMobile|WikisourceMobile]] jo nałoženje za mobilne rědy a tablety za cytanje a sobuźěło we Wikižrědle",
- "translate-group-desc-wikimedia-mobile-wiktionary": "[[Translating:WiktionaryMobile|WiktionaryMobile]] jo nałoženje za mobilne rědy a tablety za cytanje a sobuźěło we Wikisłowniku",
- "translate-group-desc-wikimediaextensions": "Toś ta głowna kupka wopśimujo wše powěźeńki za pódpěrane rozšyrjenja MediaWiki, kótarež wužywaju se pśez [https://wikimediafoundation.org/ Wikimedia Foundation]",
- "translate-group-desc-wikimediaextensions-main": "Metakupka powěźeńkow, kótaraž wopśimujo wšykne powěźeńki za pódpěrane rozšyrjenja [[Translating:MediaWiki|MediaWiki]], kótarež muse se za [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee Rěcny komitej] Wikimedije pśełožyś",
- "translategroupdescriptions-desc": "Wopisanja kupkow powěźeńkow za produkty pódpěrane wót rozšyrjenja [https://mediawiki.org/wiki/Extension:Translate Translate]"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/el.json b/MLEB/Translate/i18n/groupdescriptions/el.json
deleted file mode 100644
index ec1b5f95..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/el.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Dead3y3",
- "Omnipaedista",
- "Protnet",
- "ZaDiak",
- "Lokal Profil"
- ]
- },
- "bw-desc-freecol": "Πριν μεταφράσετε το FreeCol στη γλώσσα σας, παρακαλώ διαβάστε το [[Translating:FreeCol]]. Το Freecol χρησιμοποιεί την GPL άδεια χρήσης.",
- "bw-desc-fudforum": "[http://fudforum.org/ FUDforum], ένα διαδικτυακό φόρουμ γραμμένο σε PHP.",
- "bw-desc-mantisbt": "Το [[Translating:MantisBT|MantisBT]] είναι ένα δωρεάν web-based σύστημα εντοπισμού σφαλμάτων. Παρακαλώ αναφέρετε όποια προβλήματα στην [[Support|Υποστήριξη]].",
- "bw-desc-osm-site": "Αυτή η ομάδα μηνυμάτων περιέχει τα μηνύματα διεπαφής για το [[Translating:Open Street Map|Open Street Map]].\nΔείτε την [http://unicode.org/repos/cldr-tmp/trunk/diff/supplemental/language_plural_rules.html#{{UILANGCODE}} σελίδα Unicode CLDR για εξήγηση των κλειδιών πληθυντικού].",
- "bw-desc-wikiblame": "Το [http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] είναι σε θέση να βρει γρήγορα τους συντάκτες μιας σελίδας σε ένα wiki Wikimedia.",
- "translate-group-desc-mediawikicore": "Αυτή η ομάδα μηνυμάτων περιέχει μηνύματα που χρησιμοποιούνται στην τρέχουσα alpha έκδοση του [[Translating:MediaWiki|MediaWiki]] ({{CURRENTVERSION}})",
- "translate-group-desc-nocc": "To [http://nocc.sourceforge.net NOCC] είναι ένας webmail client γραμμένος στη PHP. Παρακαλώ αναφέρετε οποιαδήποτε προβλήματα στην [[Support|Υποστήριξη]]."
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/en-gb.json b/MLEB/Translate/i18n/groupdescriptions/en-gb.json
deleted file mode 100644
index 9010ac2e..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/en-gb.json
+++ /dev/null
@@ -1,9 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Shirayuki"
- ]
- },
- "translate-group-desc-translate": "Meta message group containing all messages for the MediaWiki extension [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate]; please familiarise yourself with its [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary glossary]",
- "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] is a service showing routes for hiking, cycling, mountain biking and inline skating around the world. It uses the GNU GPL licence"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/en.json b/MLEB/Translate/i18n/groupdescriptions/en.json
deleted file mode 100644
index 7662a208..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/en.json
+++ /dev/null
@@ -1,59 +0,0 @@
-{
- "@metadata": {
- "authors": []
- },
- "bw-desc-freecol": "[[Translating:FreeCol|FreeCol]] is a turn-based strategy game",
- "bw-desc-fudforum": "[[Translating:FUDforum|FUDforum]] is web-based discussion forum software",
- "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] is web-based issue tracking software",
- "bw-desc-openstreetmap": "All messages related to [[Translating:OpenStreetMap|OpenStreetMap]]",
- "bw-desc-osm-site": "[[Translating:OpenStreetMap|OpenStreetMap]] is an editable map of the whole world",
- "bw-desc-wikiblame": "[[Translating:WikiBlame|WikiBlame]] is able to quickly find the authors of a part of a page in a Wikimedia wiki",
- "translate-group-desc-blockly": "A message group for [[Translating:Blockly|Blockly]]",
- "translate-group-desc-bluespice": "Meta message group containing all messages for the [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:BlueSpice Blue Spice] extensions",
- "translate-group-desc-collection": "Meta message group containing all messages for the [[Translating:MediaWiki|MediaWiki]] extension [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection]",
- "translate-group-desc-eol": "A message group for [[Translating:EOL|Encyclopedia of Life]]",
- "translate-group-desc-etherpad-lite": "[[Translating:Etherpad lite|Etherpad lite]] is a really-real time collaborative editor",
- "translate-group-desc-europeana": "[[Translating:Europeana|Europeana 1914-1918]] is a website with stories, films and historical material about the World War I",
- "translate-group-desc-flaggedrevs": "Meta message group containing all messages for the [[Translating:MediaWiki|MediaWiki]] extension [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs FlaggedRevs]",
- "translate-group-desc-fuel": "[[Translating:FUEL|FUEL]] brings more consistency to software translation",
- "translate-group-desc-huggle": "[[Translating:Huggle|Huggle]] is a fast diff browser application for dealing with vandalism on Wikimedia projects",
- "translate-group-desc-ihris": "A message group for [[Translating:iHRIS|iHRIS]]",
- "translate-group-desc-inaturalist": "[[Translating:INaturalist|iNaturalist]] is a website to record what you see in nature, meet other nature lovers, and learn about the natural world",
- "translate-group-desc-kiwix": "A message group for [[Translating:Kiwix|Kiwix]]",
- "translate-group-desc-mantisbt-plugin-core": "A core plugin for [[Translating:MantisBT|MantisBT]]",
- "translate-group-desc-mathjax": "[[Translating:MathJax|MathJax]] is a cross-browser JavaScript library that displays mathematical notation in web browsers",
- "translate-group-desc-mediawiki-core-branch": "Messages for a stable version of [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mediawikiapi": "This message group contains the messages used in the Action API for the current alpha version of [[Translating:MediaWiki|MediaWiki]] ({{CURRENTVERSION}})",
- "translate-group-desc-mediawikicore": "This message group contains the messages used in the current alpha version of [[Translating:MediaWiki|MediaWiki]] ({{CURRENTVERSION}})",
- "translate-group-desc-mediawikiextensions": "Meta message group containing all messages for supported extensions for [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mediawikiskins": "Meta message group containing all messages for supported skins for [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mediawikimostused": "This message group contains the [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 most often used messages] in [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] is a management information system for microfinance",
- "translate-group-desc-nfcring-control": "[[Translating:NFC_Ring_Control|NFC Ring Control]] is a mobile app to interact with NFC tags",
- "translate-group-desc-nocc": "[[Translating:NOCC|NOCC]] is a webmail client",
- "translate-group-desc-nodesc": "No description is available for this message group",
- "translate-group-desc-openimages-all": "These messages are part of the [[Translating:Open Images|Open Images]] project",
- "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] is a Flash-based OpenStreetMap editor",
- "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] is a collection of tools to edit Wikipedia",
- "translate-group-desc-readerfeedback": "Meta message group containing all messages for the [[Translating:MediaWiki|MediaWiki]] extension [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback]",
- "translate-group-desc-semantic": "Meta message group containing all messages for all [https://semantic-mediawiki.org/ Semantic MediaWiki] extensions",
- "translate-group-desc-translatablepages": "All translatable pages",
- "translate-group-desc-translate": "Meta message group containing all messages for the [[Translating:MediaWiki|MediaWiki]] extension [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate]; please familiarize yourself with its [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary glossary]",
- "translate-group-desc-tsint": "A message group for [[Translating:Intuition|Intuition]], the i18n system for [//tools.wmflabs.org/ Wikimedia Tool Labs] tools (<span class=\"plainlinks\">[[Translating talk:Intuition|support]]</span>)",
- "translate-group-desc-universallanguageselector": "Meta message group containing all messages for the [[Translating:MediaWiki|MediaWiki]] extension [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector UniversalLanguageSelector] (ULS) and related software packages",
- "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]] is a tool to upload files to Wikimedia Commons and other Wikimedia projects",
- "translate-group-desc-visualeditor": "Meta message group containing all messages for the [[Translating:MediaWiki|MediaWiki]] extension [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:VisualEditor VisualEditor] and related software packages",
- "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] is a service showing routes for hiking, cycling, mountain biking and inline skating around the world. It uses the GNU GPL license",
- "translate-group-desc-waymarked-trails-help": "The help pages of the Waymarked Trails web sites: http://waymarkedtrails.org/help/about",
- "translate-group-desc-wikiaextensions": "Meta message group containing all messages for supported [[Translating:MediaWiki|MediaWiki]] extensions used by [http://www.wikia.com Wikia]",
- "translate-group-desc-wikimania-scholarships-app": "Message group for the [https://scholarships.wikimedia.org/apply Wikimania Scholarship application]",
- "translate-group-desc-wikimedia-mobile": "Aggregate message group containing mobile applications for Wikimedia projects",
- "translate-group-desc-wikimedia-mobile-wikipedia": "[[Translating:WikipediaMobile|WikipediaMobile]] is a cross-platform mobile and tablet application for reading and contributing to Wikipedia",
- "translate-group-desc-wikimedia-mobile-wikipedia-android": "[[Translating:WikipediaMobile|Wikipedia Android]] is the Android-specific version of the Wikipedia mobile app",
- "translate-group-desc-wikimedia-mobile-wikipedia-ios": "[[Translating:WikipediaMobile|Wikipedia iOS]] is the iOS-specific version of the Wikipedia mobile app",
- "translate-group-desc-wikimedia-mobile-wikisource": "[[Translating:WikisourceMobile|WikisourceMobile]] is a cross-platform mobile and tablet application for reading and contributing to Wikisource",
- "translate-group-desc-wikimedia-mobile-wiktionary": "[[Translating:WiktionaryMobile|WiktionaryMobile]] is a cross-platform mobile and tablet application for reading and contributing to Wiktionary",
- "translate-group-desc-wikimediaextensions": "Meta message group containing all messages for supported [[Translating:MediaWiki|MediaWiki]] extensions used by the [https://wikimediafoundation.org/ Wikimedia Foundation]",
- "translate-group-desc-wikimediaextensions-main": "Meta message group containing all messages for supported [[Translating:MediaWiki|MediaWiki]] extensions required to be translated for the Wikimedia [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee Language committee]",
- "translategroupdescriptions-desc": "Message group descriptions for products supported by the [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate] extension"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/eo.json b/MLEB/Translate/i18n/groupdescriptions/eo.json
deleted file mode 100644
index 38f8513c..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/eo.json
+++ /dev/null
@@ -1,22 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "ArnoLagrange",
- "Blahma",
- "Petrus Adamus",
- "Macofe"
- ]
- },
- "bw-desc-freecol": "Antaŭ tradukante FreeCol al via lingvo, bonvolu legi [[Translating:FreeCol]]. FreeCol uzas la Ĝeneralan Publikan Permesilon.",
- "translate-group-desc-collection": "Meta-mesaĝogrupo enhavanta ĉiujn mesaĝojn por subtenitaj etendaĵoj por [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Kolekto]",
- "translate-group-desc-flaggedrevs": "Meta-mesaĝogrupo enhavanta ĉiujn mesaĝojn por subtenitaj etendaĵoj por [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs Reviziitaj versioj]",
- "translate-group-desc-mediawikicore": "Ĉi tiu mesaĝogrupo enhavas la mesaĝojn uzitajn en la aktuala alpha-versio de MediaWiki ({{CURRENTVERSION}})",
- "translate-group-desc-mediawikiextensions": "Meta-mesaĝogrupo enhavanta ĉiujn mesaĝojn por subtenitaj etendaĵoj por MediaWiki",
- "translate-group-desc-mediawikimostused": "Ĉi tiu mesaĝogrupo enhavas la [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWik 500 plej ofte uzitajn mesaĝojn] en MediaWiki",
- "translate-group-desc-nodesc": "Neniu priskribo estas havebla por ĉi tiu mesaĝogrupo",
- "translate-group-desc-readerfeedback": "Meta-mesaĝogrupo enhavanta ĉiujn mesaĝojn por subtenitaj etendaĵoj por [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback Reagoj de legantoj]",
- "translate-group-desc-translate": "Meta-mesaĝogrupo enhavanta ĉiujn mesaĝojn por subtenitaj etendaĵoj por MediaWiki [https://www.mediawiki.org/wiki/Extension:Translate Tradukado]",
- "translate-group-desc-wikiaextensions": "Meta-mesaĝogrupo enhavanta ĉiujn mesaĝojn por subtenitaj [[Translating:MediaWiki|MediaWiki]]-etendaĵoj uzitaj de [http://www.wikia.com Wikia]",
- "translate-group-desc-wikimediaextensions": "Meta-mesaĝogrupo enhavanta ĉiujn mesaĝojn por subtenitaj MediaWiki-etendaĵoj uzitaj de [https://wikimediafoundation.org/ Vikimedia Fondaĵo]",
- "translategroupdescriptions-desc": "Priskriboj de la mesaĝgrupoj por produktoj subtenataj de la [https://mediawiki.org/wiki/Extension:Translate traduka kromprogramo]"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/es.json b/MLEB/Translate/i18n/groupdescriptions/es.json
deleted file mode 100644
index 5644d006..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/es.json
+++ /dev/null
@@ -1,73 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Armando-Martin",
- "Crazymadlover",
- "Dferg",
- "Locos epraix",
- "MarcoAurelio",
- "Peter17",
- "Translationista",
- "Vivaelcelta",
- "Fitoschido",
- "Vfrico",
- "Lokal Profil",
- "Themasterriot",
- "Macofe"
- ]
- },
- "bw-desc-freecol": "[[Translating:FreeCol|FreeCol]] es un juego de estrategia por turnos",
- "bw-desc-fudforum": "[[Translating:FUDforum|FUDforum]] es un software para crear foros webs de discusión",
- "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] es un sistema web de seguimiento de incidentes de software",
- "bw-desc-openstreetmap": "Todos los mensajes relacionados con [[Translating:OpenStreetMap|OpenStreetMap]]",
- "bw-desc-osm-site": "[[Translating:OpenStreetMap|OpenStreetMap]] es un mapa editabledel mundo entero",
- "bw-desc-wikiblame": "[[Translating:WikiBlame|WikiBlame]] es capaz de encontrar rápidamente los autores de una página en una wiki de Wikimedia",
- "translate-group-desc-blockly": "Grupo de mensajes de [[Translating:Blockly|Blockly]]",
- "translate-group-desc-bluespice": "Metagrupo que contiene todos los mensajes de las extensiones [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:BlueSpice Blue Spice] para [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-collection": "Metagrupo que contiene todos los mensajes de la extensión [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection] de [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-eol": "Grupo de mensajes de la [[Translating:EOL|Enciclopedia de la vida]]",
- "translate-group-desc-etherpad-lite": "[[Translating:Etherpad lite|Etherpad lite]] es un editor colaborativo en tiempo real",
- "translate-group-desc-europeana": "[[Translating:Europeana|Europeana 1914-1918]] es un sitio web con historias, películas y material histórico sobre la Primera Guerra Mundial",
- "translate-group-desc-flaggedrevs": "Metagrupo que contiene todos los mensajes de la extensión [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs FlaggedRevs] de [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-fuel": "[[Translating:FUEL|FUEL]] aporta más consistencia a la traducción de software",
- "translate-group-desc-huggle": "[[Translating:Huggle|Huggle]] es una aplicación de exploración rápida de cambios para lidiar con el vandalismo en los proyectos de Wikimedia",
- "translate-group-desc-ihris": "Un grupo de mensajes de [[Translating:iHRIS|iHRIS]]",
- "translate-group-desc-inaturalist": "[[Translating:INaturalist|iNaturalist]] es un sitio web para registrar lo que ves en la naturaleza, encontrar a otros amantes de la naturaleza y aprender sobre el mundo natural.",
- "translate-group-desc-kiwix": "Un grupo de mensajes de [[Translating:Kiwix|Kiwix]]",
- "translate-group-desc-mantisbt-plugin-core": "Un complemento principal para [[Translating:MantisBT|MantisBT]]",
- "translate-group-desc-mathjax": "[[Translating:MathJax|MathJax]] es una biblioteca JavaScript multinavegador que muestra notación matemática en navegadores web",
- "translate-group-desc-mediawiki-core-branch": "Mensajes para una versión estable de [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mediawikiapi": "Este grupo de mensajes contiene los mensajes usados en la API de acción de la versión alfa actual de [[Translating:MediaWiki|MediaWiki]] ({{CURRENTVERSION}})",
- "translate-group-desc-mediawikicore": "Este grupo de mensajes contiene los mensajes usados en la versión alfa actual de [[Translating:MediaWiki|MediaWiki]] ({{CURRENTVERSION}})",
- "translate-group-desc-mediawikiextensions": "Metagrupo que contiene todos los mensajes de las extensiones admitidas por [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mediawikiskins": "Metagrupo que contiene todos los mensajes de las apariencias admitidas por [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mediawikimostused": "Este grupo de mensajes contiene los [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 mensajes más comúnmente usados] en [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] es un sistema de información de gestión (MIS) para microfinanzas",
- "translate-group-desc-nfcring-control": "[[Translating:NFC_Ring_Control|NFC Ring Control]] es una aplicación para móviles para interactuar con etiquetas NFC",
- "translate-group-desc-nocc": "[[Translating:NOCC|NOCC]] es un cliente de correo web",
- "translate-group-desc-nodesc": "No hay descripción disponible para este grupo de mensaje",
- "translate-group-desc-openimages-all": "Estos mensajes forman parte del proyecto [[Translating:Open Images|Open Images]]",
- "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] es un editor de OpenStreetMap basado en Flash",
- "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] es una colección de herramientas para editar Wikipedia",
- "translate-group-desc-readerfeedback": "Metagrupo que contiene todos los mensajes de la extensión [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback] de [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-semantic": "Metagrupo que contiene todos los mensajes de todas las extensiones de [https://semantic-mediawiki.org/ Semantic MediaWiki]",
- "translate-group-desc-translatablepages": "Todas las páginas traducibles",
- "translate-group-desc-translate": "Metagrupo que contiene todos los mensajes de la extensión [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate] de [[Translating:MediaWiki|MediaWiki]]; familiarízate por tí mismo con su [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary glosario]",
- "translate-group-desc-tsint": "Grupo de mensajes de [[Translating:Intuition|Intuition]], el sistema de traducción e internacionalización para las herramientas de [//tools.wmflabs.org/ Wikimedia Tool Labs] (<span class=\"plainlinks\">[[Translating talk:Intuition|asistencia]]</span>)",
- "translate-group-desc-universallanguageselector": "Metagrupo que contiene todos los mensajes de la extensión [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector Selector de Idioma Universal] (ULS) de [[Translating:MediaWiki|MediaWiki]] y los paquetes de software relacionados",
- "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]] es una herramienta para subir archivos a Wikimedia Commons y a otros proyectos de Wikimedia",
- "translate-group-desc-visualeditor": "Metagrupo que contiene todos los mensajes de la extensión [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:VisualEditor Editor visual] de [[Translating:MediaWiki|MediaWiki]] y los paquetes de software relacionados",
- "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] es un servicio que muestra las rutas de senderismo, ciclismo, mountain bike y patinaje en todo el mundo. Utiliza la licencia GNU GPL",
- "translate-group-desc-waymarked-trails-help": "Las páginas de ayuda de los sitios web de Waymarked Trails: http://waymarkedtrails.org/help/about",
- "translate-group-desc-wikiaextensions": "Metagrupo que contiene todos los mensajes de las extensiones admitidas por [[Translating:MediaWiki|MediaWiki]] que usa [http://www.wikia.com Wikia]",
- "translate-group-desc-wikimania-scholarships-app": "Grupo de mensajes de la [https://scholarships.wikimedia.org/apply solicitud de becas de Wikimania]",
- "translate-group-desc-wikimedia-mobile": "Grupo de mensajes agregados que contiene aplicaciones para móviles de los proyectos de Wikimedia",
- "translate-group-desc-wikimedia-mobile-wikipedia": "[[Translating:WikipediaMobile|WikipediaMobile]] es una aplicación para dispositivos móviles y tabletas para leer y colaborar en Wikipedia",
- "translate-group-desc-wikimedia-mobile-wikipedia-android": "[[Translating:WikipediaMobile|Wikipedia Android]] es la versión específica para Android de la aplicación de Wikipedia para móviles",
- "translate-group-desc-wikimedia-mobile-wikipedia-ios": "[[Translating:WikipediaMobile|Wikipedia iOS]] es la versión específica para iOS de la aplicación de Wikipedia para móviles",
- "translate-group-desc-wikimedia-mobile-wikisource": "[[Translating:WikisourceMobile|WikisourceMobile]] es una aplicación para dispositivos móviles y tabletas para leer y colaborar en Wikisource",
- "translate-group-desc-wikimedia-mobile-wiktionary": "[[Translating:WiktionaryMobile|WiktionaryMobile]] es una aplicación para dispositivos móviles y tabletas para leer y colaborar en Wikipedia",
- "translate-group-desc-wikimediaextensions": "Metagrupo que contiene todos los mensajes de las extensiones admitidas por [[Translating:MediaWiki|MediaWiki]] que usa la [https://wikimediafoundation.org/ Fundación Wikimedia]",
- "translate-group-desc-wikimediaextensions-main": "Metagrupo que contiene todos los mensajes de las extensiones admitidas por [[Translating:MediaWiki|MediaWiki]] que deben traducirse para el [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee Comité de idiomas] de Wikimedia",
- "translategroupdescriptions-desc": "Descripciones de los grupos de mensajes de los productos compatibles con la extensión [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate]"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/et.json b/MLEB/Translate/i18n/groupdescriptions/et.json
deleted file mode 100644
index 44c4058c..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/et.json
+++ /dev/null
@@ -1,10 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Hendrik",
- "Pikne"
- ]
- },
- "bw-desc-freecol": "Enne FreeCol'i tõlkimist oma keelde lugege palun [[Translating:FreeCol]]. FreeCol kasutab GPL litsentsi.",
- "translate-group-desc-mediawikiskins": "Meta-sõnumirühm, mis sisaldab kõiki sõnumeid toetatud [[Translating:MediaWiki|MediaWiki]] kujunduste jaoks."
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/eu.json b/MLEB/Translate/i18n/groupdescriptions/eu.json
deleted file mode 100644
index 2d1eda20..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/eu.json
+++ /dev/null
@@ -1,8 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Subi"
- ]
- },
- "translate-group-desc-translatablepages": "Itzul daitezkeen orri guztiak"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/fa.json b/MLEB/Translate/i18n/groupdescriptions/fa.json
deleted file mode 100644
index f519ddaf..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/fa.json
+++ /dev/null
@@ -1,55 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Ebraminio",
- "Huji",
- "Armin1392"
- ]
- },
- "bw-desc-freecol": "[[Translating:FreeCol|FreeCol]] مبتنی بر یک بازی استراتژی است",
- "bw-desc-fudforum": "[[Translating:FUDforum|FUDforum]] بحث مبتنی بر نرم‌افزار فروم است",
- "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] وب مبتنی بر نرم‌افزار ردیابی است",
- "bw-desc-openstreetmap": "همه پیام‌ها مربوط به [[Translating:OpenStreetMap|OpenStreetMap]] هستند",
- "bw-desc-osm-site": "[[Translating:OpenStreetMap|نقشه خیابان باز]] یک نقشه قابل ویرایش همه جهان است",
- "bw-desc-wikiblame": "[[Translating:WikiBlame|WikiBlame]] قادر به پیدا کردن سریع نویسندگان بخشی از صفحه در ویکی ویکی‌مدیا است",
- "translate-group-desc-blockly": "گروه پیام برای [[Translating:Blockly|Blockly]]",
- "translate-group-desc-collection": "گروه پیام متا شامل همه پیام‌هایی است برای گستره‌ مدیاویکی [https://www.mediawiki.org/wiki/Extension:Collection Collection]",
- "translate-group-desc-eol": "گروه پیام برای [[Translating:EOL|دانشنامه زندگی]]",
- "translate-group-desc-etherpad-lite": "[[Translating:Etherpad lite|Etherpad lite]] یک ویرایشگر مشترک زمان واقعاً واقعی است",
- "translate-group-desc-flaggedrevs": "گروه پیام متا شامل همه پیام‌هایی است برای گستره‌ مدیاویکی [https://www.mediawiki.org/wiki/Extension:FlaggedRevs FlaggedRevs]",
- "translate-group-desc-fuel": "[[Translating:FUEL|FUEL]] تداوم بیشتری برای ترجمه نرم‌افزار به ارمغان می‌آورد",
- "translate-group-desc-ihris": "گروه پیام برای [[Translating:iHRIS|iHRIS]]",
- "translate-group-desc-kiwix": "یک گروه پیام برای [[Translating:Kiwix|Kiwix]]",
- "translate-group-desc-mantisbt-plugin-core": "پلاگین اصلی برای [[Translating:MantisBT|MantisBT]]",
- "translate-group-desc-mathjax": "[[Translating:MathJax|مت جکس]] یک کتابخانه مرورگر جاوااسکریپت است که نماد ریاضی را در مرورگرهای وب نشان می‌دهد",
- "translate-group-desc-mediawiki-core-branch": "پیام‌ها برای نسخه پایدار [[Translating:MediaWiki|مدیاویکی]]",
- "translate-group-desc-mediawikicore": "این گروه پیغام حاوی پیغام‌های مورد استفاده در نسخهٔ آلفای فعلی [[Translating:MediaWiki|مدیاویکی]] ({{CURRENTVERSION}}) است",
- "translate-group-desc-mediawikiextensions": "گروه پیام متا شامل همه پیام‌هایی است برای گستره‌های پشتیبانی شده برای [[Translating:MediaWiki|مدیاویکی]]",
- "translate-group-desc-mediawikimostused": "این گروه پیام شامل [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 most often used messages] در [[Translating:MediaWiki|مدیاویکی]] هستند.",
- "translate-group-desc-mifos": "[[Translating:Mifos|میفوس]] یک مدیریت سامانهٔ اطلاعات برای خرده بودجه است",
- "translate-group-desc-nodesc": "هیچ توصیفی برای این گروه پیام در دسترس نیست",
- "translate-group-desc-openimages-all": "این پیام‌ها بخشی از پروژه [[Translating:Open Images|تصاویر باز]] هستند",
- "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] مبتنی بر فلش ویرایشگر نقشه خیابان باز است",
- "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] مجموعه ابزار برای ویرایش ویکی‌پدیا است",
- "translate-group-desc-readerfeedback": "گروه پیام متا شامل همه پیام‌هایی است برای گستره‌ مدیاویکی [https://www.mediawiki.org/wiki/Extension:ReaderFeedback ReaderFeedback]",
- "translate-group-desc-semantic": "گروه پیام متا شامل همه پیام‌هایی است برای همه گستره‌های [https://semantic-mediawiki.org/ Semantic MediaWiki]",
- "translate-group-desc-translatablepages": "همهٔ صفحات قابل ترجمه",
- "translate-group-desc-translate": "گروه پیام متا شامل همه پیام‌هایی است برای گستره‌ مدیاویکی [https://www.mediawiki.org/wiki/Extension:Translate Translate]؛ برای آشنایی خود با [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary glossary]",
- "translate-group-desc-tsint": "گروه پیام برای [[Translating:Intuition|انستیتو]]، سامانهٔ بین‌اللمللی‌سازی برای ابزارهای [//tools.wmflabs.org/ تول‌سرور] (<span class=\"plainlinks\">[[Translating talk:Intuition|پشتیبانی]]</span>)",
- "translate-group-desc-universallanguageselector": "گروه پیام متا شامل همه پیام‌هایی است برای گستره‌ مدیاویکی \n[https://www.mediawiki.org/wiki/Extension:UniversalLanguageSelector UniversalLanguageSelector] (ULS) و بسته‌های نرم‌افزاری مرتبط",
- "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]] یک ابزار برای انتقال پوشه‌ها به ویکی‌مدیا عادی و دیگر پروژه‌های ویکی‌مدیا",
- "translate-group-desc-visualeditor": "گروه پیام متا شامل همه پیام‌هایی است برای گستره‌ مدیاویکی [https://www.mediawiki.org/wiki/Extension:VisualEditor VisualEditor] و بسته‌های نرم‌افزاری مرتبط",
- "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] سرویس نمایش مسیرهای پیاده‌روی، دوچرخه‌ سواری،دوچرخه سواری کوهستان و اسکیت خطی دور جهان. این از مجوزهای جی‌ان‌یو جی‌پی‌ال استفاده می‌کند",
- "translate-group-desc-waymarked-trails-help": "صفحات راهنما ویوی‌مارک دنبال می‌کند وب سایت‌های : http://waymarkedtrails.org/help/about",
- "translate-group-desc-wikiaextensions": "گروه پیام متا شامل همه پیام‌هایی است برای پشتیبانی گستره‌‌های مدیاویکی استفاده شده توسط [http://www.wikia.com Wikia]",
- "translate-group-desc-wikimania-scholarships-app": "گروه پیام برای [https://scholarships.wikimedia.org/apply Wikimania Scholarship application]",
- "translate-group-desc-wikimedia-mobile": "جمع کردن گروه پیام شامل برنامه‌های کاربردی تلفن همراه برای پروژه‌های ویکی‌مدیا",
- "translate-group-desc-wikimedia-mobile-wikipedia": "[[Translating:WikipediaMobile|تلفن همراه ویکی‌پدیا]] یک پلت‌ فرم تلفن همراه است و برنامه کاربردی تبلت برای خواندن و کمک به ویکی‌پدیا است",
- "translate-group-desc-wikimedia-mobile-wikipedia-android": "[[Translating:WikipediaMobile|اندروید ویکی‌پدیا]] نسخه خاص اندروید برنامه کاربردی تلفن همراه ویکی‌پدیا است (۲۰۱۴ جدید)",
- "translate-group-desc-wikimedia-mobile-wikipedia-ios": "[[Translating:WikipediaMobile|ویکی‌پیدیا آی‌اُ‌اس]] نسخه خاص برنامه تلفن همراه ویکی‌پدیا (۲۰۱۴جدید) است؛ فهرست مجموعه اصلی",
- "translate-group-desc-wikimedia-mobile-wikisource": "[[Translating:WikisourceMobile|تلفن همراه منبع ویکی]] یک پلت‌ فرم تلفن همراه است و برنامه کاربردی تبلت برای خواندن و کمک به منبع ویکی‌ است",
- "translate-group-desc-wikimedia-mobile-wiktionary": "[[Translating:WiktionaryMobile|ویکی‌واژه تلفن همراه]] یک پلت‌ فرم تلفن همراه است و برنامه کاربردی تبلت برای خواندن و کمک به ویکی‌واژه است",
- "translate-group-desc-wikimediaextensions": "گروه پیام متا شامل همه پیام‌هایی است برای پشتیبانی گستره‌‌های مدیاویکی استفاده شده توسط [https://wikimediafoundation.org/ Wikimedia Foundation]",
- "translate-group-desc-wikimediaextensions-main": "گروه پیام متا شامل همه پیام‌هایی است برای پشتیبانی گستره‌‌های مدیاویکی مورد نیاز به ترجمه شدن برای ویکی‌مدیا [https://meta.wikimedia.org/wiki/Language_committee Language committee]",
- "translategroupdescriptions-desc": "توصیفات گروه پیام برای محصولات پشتیبانی شده توسط گستره [https://mediawiki.org/wiki/Extension:Translate Translate]"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/fi.json b/MLEB/Translate/i18n/groupdescriptions/fi.json
deleted file mode 100644
index 0d745918..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/fi.json
+++ /dev/null
@@ -1,34 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Centerlink",
- "Cimon Avaro",
- "Crt",
- "Nedergard",
- "Nike",
- "Silvonen",
- "Str4nd",
- "ZeiP",
- "Macofe"
- ]
- },
- "bw-desc-freecol": "Ennen kuin käännät FreeColia kielellesi, luethan sivun [[Translating:FreeCol]]. Freecol käyttää GPL-lisenssiä.",
- "bw-desc-fudforum": "[[Translating:FUDforum|FUDforum]] on verkkopohjainen keskustelufoorumi",
- "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] on verkossa toimiva virheenseurantaohjelmisto",
- "bw-desc-openstreetmap": "[[Translating:OpenStreetMap|OpenStreetMap]]in viestit",
- "translate-group-desc-collection": "Tämä metaviestiryhmä sisältää kaikki viestit, joita käytetään [[Translating:MediaWiki|MediaWikin]] laajennuksessa [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection]",
- "translate-group-desc-eol": "[[Translating:EOL|Encyclopedia of Life]] -viestiryhmä",
- "translate-group-desc-flaggedrevs": "Tämä metaviestiryhmä sisältää kaikki viestit [[Translating:MediaWiki|MediaWikin]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs FlaggedRevs-laajennusta] varten",
- "translate-group-desc-ihris": "[[Translating:iHRIS|iHRIS-viestiryhmä]]",
- "translate-group-desc-mediawikicore": "Tämä viestiryhmä sisältää viestit, joita käytetään nykyisessä MediaWikin alfaversiossa ({{CURRENTVERSION}})",
- "translate-group-desc-mediawikiextensions": "Kokoelmaviestiryhmä, joka sisältää kaikkien [[Translating:MediaWiki|MediaWiki]]-laajennosten viestit.",
- "translate-group-desc-mediawikimostused": "Tämä viestiryhmä sisältää [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki MediaWikin 500 useimmin käytettyä viestiä]",
- "translate-group-desc-nocc": "[[Translating:NOCC|NOCC]] on sähköpostiohjelma",
- "translate-group-desc-nodesc": "Viestiryhmällä ei ole kuvausta",
- "translate-group-desc-readerfeedback": "Tämä metaviestiryhmä sisältää kaikki [[Translating:MediaWiki|MediaWikin]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback-laajennuksen] viestit",
- "translate-group-desc-translatablepages": "Kaikki käännettävät sivut",
- "translate-group-desc-translate": "Tämä metaviestiryhmä sisältää kaikki viestit MediaWikin [https://www.mediawiki.org/wiki/Extension:Translate Käännöstyökalu-laajennusta] varten",
- "translate-group-desc-wikiaextensions": "Tämä metaviestiryhmä sisältää kaikki ne tuetut MediaWikin laajennuksien viestit, joita [http://www.wikia.com Wikia] käyttää",
- "translate-group-desc-wikimediaextensions": "Tämä metaviestiryhmä sisältää kaikki tuetut MediaWikin laajennuksien viestit, joita [https://wikimediafoundation.org/ Wikimedia Foundation] käyttää",
- "translategroupdescriptions-desc": "Viestiryhmäkuvaukset tuotteille, joita [https://mediawiki.org/wiki/Extension:Translate Translate]-laajennos tukee"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/fo.json b/MLEB/Translate/i18n/groupdescriptions/fo.json
deleted file mode 100644
index 213f63f1..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/fo.json
+++ /dev/null
@@ -1,22 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "EileenSanda",
- "Macofe"
- ]
- },
- "bw-desc-fudforum": "[[Translating:FUDforum|FUDforum]] er ein net-baseraður ritbúnaður til kjakforum",
- "bw-desc-wikiblame": "[[Translating:WikiBlame|WikiBlame]] er ført fyri skjótt at finna høvundarnar av einum parti av einari síðu í einari Wikimedia wiki",
- "translate-group-desc-collection": "Meta boðbólkur sum inniheldur øll boð viðvíkjandi [[Translating:MediaWiki|MediaWiki]] víðkanini [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection]",
- "translate-group-desc-mediawikicore": "Hesin boðbólkur inniheldur boðini ið verða nýtt í verandi alfa versjón av [[Translating:MediaWiki|MediaWiki]] ({{CURRENTVERSION}})",
- "translate-group-desc-mediawikiextensions": "Meta boðbólkur sum inniheldur øll boð til stuðlaðar víðkanir til [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mediawikimostused": "Hesin boðbólkur inniheldur [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 oftast brúktu boð] í [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-nodesc": "Ongin frágreiðing er tøk fyri henda bólkin av boðum",
- "translate-group-desc-translatablepages": "Allar síður ið kunnu týðast",
- "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]] er eitt tól at leggja út fílur til Wikimedia Commons og onnur Wikimedia verkætlanir",
- "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] er ein tænasta sum vísir rutur til gongutúrar, súkkling, fjallasúkkling og rulluskoyting kring heimin. Hon nýtur GNU GPL lisensin",
- "translate-group-desc-wikimedia-mobile-wikipedia": "[[Translating:WikipediaMobile|WikipediaMobile]] er ein mobil og teldil app uppá tvørs, sum ger tað lættari at lesa og luttaka aktivt á Wikipediu",
- "translate-group-desc-wikimedia-mobile-wikisource": "[[Translating:WikisourceMobile|WikisourceMobile]] er ein mobil og teldil app uppá tvørs, sum ger tað lættari at lesa og luttaka aktivt á Wikisource",
- "translate-group-desc-wikimedia-mobile-wiktionary": "[[Translating:WiktionaryMobile|WiktionaryMobile]] er ein mobil og teldil app uppá tvørs, sum ger tað lættari at lesa og luttaka aktivt á Wiktionary",
- "translategroupdescriptions-desc": "Bólkaboð frágreiðing viðvíkjandi vørum sum virka við [https://mediawiki.org/wiki/Extension:Translate Translate] víðkanini"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/fr.json b/MLEB/Translate/i18n/groupdescriptions/fr.json
deleted file mode 100644
index 29a2b887..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/fr.json
+++ /dev/null
@@ -1,78 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Crochet.david",
- "DavidL",
- "Gomoko",
- "Houcinee1",
- "IAlex",
- "Jean-Frédéric",
- "Litlok",
- "Metroitendo",
- "Od1n",
- "Peter17",
- "PieRRoMaN",
- "Sherbrooke",
- "Urhixidur",
- "Verdy p",
- "Wyz",
- "Xapitoun",
- "Yann.fauche",
- "Jgaignerot",
- "Macofe"
- ]
- },
- "bw-desc-freecol": "Avant de traduire FreeCol dans votre langue, veuillez lire [[Translating:FreeCol]]. Freecol est publié sous licence GPL.",
- "bw-desc-fudforum": "[http://fudforum.org/ FUDforum], un forum internet écrit en PHP.",
- "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] est un système gratuit pour le suivi sur le web des anomalies.",
- "bw-desc-openstreetmap": "Groupe de messages pour tous les messages de [[Translating:OpenStreetMap|OpenStreetMap]]",
- "bw-desc-osm-site": "[[Translating:OpenStreetMap|OpenStreetMap]] est une carte modifiable du monde entier",
- "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] permet de trouver rapidement les auteurs d’une page dans un wiki de Wikimedia.",
- "translate-group-desc-blockly": "Un groupe de message pour [[Translating:Blockly|Blockly]]",
- "translate-group-desc-bluespice": "Méta-groupe de messages contenant tous les messages pour les extensions [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:BlueSpice Blue Spice] de MédiaWiki",
- "translate-group-desc-collection": "Ce méta-groupe de messages contient tous les messages de l’extension [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection].",
- "translate-group-desc-eol": "Un groupe de messages pour l’''[[Translating:EOL|Encyclopedia of Life]]''",
- "translate-group-desc-etherpad-lite": "[[Translating:Etherpad lite|Etherpad lite]] est un éditeur collaboratif réellement en temps réel",
- "translate-group-desc-europeana": "[[Translating:Europeana|Europeana 1914-1918]] est un site web avec des histoires, des films et des matériaux historiques sur la Première guerre mondiale",
- "translate-group-desc-flaggedrevs": "Groupe des messages Meta contenant tous les messages de l’extension [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs FlaggedRevs]",
- "translate-group-desc-fuel": "[[Translating:FUEL|FUEL]] apporte plus de cohérence à la traduction de logiciel",
- "translate-group-desc-huggle": "[[Translating:Huggle|Huggle]] est une application web de diff pour traiter le vandalisme sur les projets Wikimedia",
- "translate-group-desc-ihris": "Un groupe de messages pour [[Translating:iHRIS|iHRIS]]",
- "translate-group-desc-kiwix": "Un groupe de messages pour [[Translating:Kiwix|Kiwix]]",
- "translate-group-desc-mantisbt-plugin-core": "Un plugin de base pour [[Translating:MantisBT|MantisBT]]",
- "translate-group-desc-mathjax": "[[Translating:MathJax|MathJax]] est une bibliothèque JavaScript multi-navigateurs qui affiche des notations mathématiques dans les navigateurs web",
- "translate-group-desc-mediawiki-core-branch": "Messages pour une version stable de [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mediawikiapi": "Ce groupe de message contient les messages utilisés dans l’API Action pour la version alpha actuelle de [[Translating:MediaWiki|MediaWiki]] ({{CURRENTVERSION}})",
- "translate-group-desc-mediawikicore": "Ce groupe de messages contient les messages utilisés dans la version alpha actuelle de MediaWiki ({{CURRENTVERSION}}).",
- "translate-group-desc-mediawikiextensions": "Ce méta-groupe de messages contient les messages de toutes les extensions pour MediaWiki supportées.",
- "translate-group-desc-mediawikiskins": "Groupe de méta-messages contenant tous les messages pour les habillages supportés pour [[Translating:MediaWiki|MédiaWiki]]",
- "translate-group-desc-mediawikimostused": "Ce groupe de messages contient les [//translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 messages les plus souvent utilisés] dans [[Translating:MediaWiki|MediaWiki]].",
- "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] est un système de gestion de l’information pour la microfinance",
- "translate-group-desc-nfcring-control": "[[Translating:NFC_Ring_Control|NFC Ring Control]] est une application mobile pour interagir avec les balises NFC",
- "translate-group-desc-nocc": "[http://nocc.sourceforge.net NOCC] est un client webmail écrit en PHP. Rapportez tous les problèmes sur [[Support]].",
- "translate-group-desc-nodesc": "Aucune description n’est disponible pour ce groupe de messages",
- "translate-group-desc-openimages-all": "Ces messages font partie du [[Translating:Open Images|Projet Open Images]]",
- "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] est un éditeur OpenStreetMap basé sur du flash",
- "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] est une collection d'outils pour modifier Wikipédia",
- "translate-group-desc-readerfeedback": "Groupe des messages Meta contenant tous les messages de l’extension [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback]",
- "translate-group-desc-semantic": "Groupe de message de Meta contenant tous les messages pour toutes les extensions [https://semantic-mediawiki.org/ Semantic MediaWiki]",
- "translate-group-desc-translatablepages": "Toutes les pages traductibles",
- "translate-group-desc-translate": "Groupe des messages Meta contenant tous les messages de l’extension MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate]; veuillez vous familiariser avec son [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary glossaire]",
- "translate-group-desc-tsint": "Un groupe de messages pour [[Translating:Intuition|Intuition]], le système d'internationalisation des outils des [//tools.wmflabs.org/ Laboratoires d’outil de Wikimédia] (<span class=\"plainlinks\">[[Translating talk:Intuition|support]]</span>)",
- "translate-group-desc-universallanguageselector": "Le groupe de méta-messages contient tous les messages pour l’extension de MédiaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector UniversalLanguageSelector] (ULS) et les colis logiciels associés",
- "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]] est un outil pour télécharger des fichiers de Communs de Wikimédia et d’autres projets de Wikimédia",
- "translate-group-desc-visualeditor": "Méta-Groupe de messages contenant tous les message pour l’extension [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:VisualEditor VisualEditor] de MédiaWiki et aux paquets logiciels connexes",
- "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] est un service affichant les chemins pour la randonnée, le cyclisme, le vélo-tourisme et le patinage à roulettes tout autour du monde. Il utilise la licence GNU GPL",
- "translate-group-desc-waymarked-trails-help": "Les pages d'aide des sites web des Chemins balises: http://waymarkedtrails.org/help/about",
- "translate-group-desc-wikiaextensions": "Ce méta-groupe de messages contient tous les messages des extensions MediaWiki utilisées par [http://www.wikia.com Wikia].",
- "translate-group-desc-wikimania-scholarships-app": "Groupe de messages pour le [https://scholarships.wikimedia.org/apply système de demande de bourse Wikimania]",
- "translate-group-desc-wikimedia-mobile": "Le groupe de messages agrégés contient les applications mobiles pour les projets Wikimédia",
- "translate-group-desc-wikimedia-mobile-wikipedia": "[[Translating:WikipediaMobile|WikipediaMobile]] est une application inter-plateformes pour mobiles et tablettes permettant de lire et de contribuer à Wikipédia",
- "translate-group-desc-wikimedia-mobile-wikipedia-android": "[[Translating:WikipediaMobile|Wikipédia Android]] est la version spécifique à Android de l'application mobile de Wikipédia",
- "translate-group-desc-wikimedia-mobile-wikipedia-ios": "[[Translating:WikipediaMobile|Wikipedia iOS]] est la version spécifique à iOS de l’application mobile Wikipédia",
- "translate-group-desc-wikimedia-mobile-wikisource": "[[Translating:WikisourceMobile|WikisourceMobile]] est une application inter-plateformes pour mobiles et tablettes permettant de consulter et contribuer à Wikisource",
- "translate-group-desc-wikimedia-mobile-wiktionary": "[[Translating:WiktionaryMobile|WiktionaryMobile]] est une application inter-plateformes pour mobiles et tablettes permettant de lire et contribuer à Wiktionary",
- "translate-group-desc-wikimediaextensions": "Ce méta-groupe de messages contient tous les messages des extensions MediaWiki utilisées par la [//wikimedia.org/ Wikimedia Foundation].",
- "translate-group-desc-wikimediaextensions-main": "Groupe de messages méta comprenant tous les messages pour les extensions [[Translating:MediaWiki|MediaWiki]] supportées et qui doivent être traduits pour le [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee Comité des langues] de Wikimedia",
- "translategroupdescriptions-desc": "Descriptions des groupes de messages pour les produits pris en charge par l’[https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate extension Translate]"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/frp.json b/MLEB/Translate/i18n/groupdescriptions/frp.json
deleted file mode 100644
index 64376960..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/frp.json
+++ /dev/null
@@ -1,30 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "ChrisPtDe",
- "Macofe"
- ]
- },
- "bw-desc-freecol": "Devant que traduire FreeCol dens voutra lengoua, volyéd liére [[Translating:FreeCol]]. FreeCol utilise la licence GPL.",
- "bw-desc-fudforum": "[http://fudforum.org/ FUDforum], un barjacâjo vouèbe ècrit en PHP.",
- "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] est una programeria libra por la survelyence sur lo Malyâjo de les cofieries.",
- "bw-desc-openstreetmap": "Ceta tropa de mèssâjos contint tôs los mèssâjos d’[[Translating:OpenStreetMap|OpenStreetMap]].",
- "bw-desc-osm-site": "Ceta tropa de mèssâjos contint los mèssâjos de l’entèrface d’[[Translating:Open Street Map|Open Street Map]].\nVêde la [http://unicode.org/repos/cldr-tmp/trunk/diff/supplemental/language_plural_rules.html#{{UILANGCODE}} pâge de l’Unicode CLDR por una èxplicacion de l’usâjo des plurâls].",
- "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] pèrmèt de trovar rêdo los ôtors d’una pâge dens un vouiqui de Wikimedia.",
- "translate-group-desc-collection": "Ceta mèta-tropa de mèssâjos contint tôs los mèssâjos de l’èxtension [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Colèccion].",
- "translate-group-desc-eol": "Una tropa de mèssâjos por l’[[Translating:EOL|Enciclopèdia de la via]].",
- "translate-group-desc-flaggedrevs": "Ceta mèta-tropa de mèssâjos contint tôs los mèssâjos de l’èxtension [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs FlaggedRevs].",
- "translate-group-desc-ihris": "Una tropa de mèssâjos por [[Translating:iHRIS|iHRIS]].",
- "translate-group-desc-kiwix": "Una tropa de mèssâjos por [[Translating:Kiwix|Kiwix]].",
- "translate-group-desc-mediawiki-core-branch": "Mèssâjos por una vèrsion stâbla de [[Translating:MediaWiki|MediaWiki]].",
- "translate-group-desc-mediawikicore": "Ceta tropa de mèssâjos contint los mèssâjos utilisâs dens la vèrsion alfa d’ora de MediaWiki ({{CURRENTVERSION}}).",
- "translate-group-desc-mediawikiextensions": "Ceta mèta-tropa de mèssâjos contint tôs los mèssâjos de les èxtensions recognues por [[Translating:MediaWiki|MediaWiki]].",
- "translate-group-desc-mediawikimostused": "Ceta tropa de mèssâjos contint los [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 mèssâjos los ples sovent utilisâs] dens MediaWiki.",
- "translate-group-desc-nocc": "[http://nocc.sourceforge.net NOCC] est un cliant webmail ècrit en PHP. Volyéd raportar tôs los problèmos dessus [[Support|Assistance]].",
- "translate-group-desc-nodesc": "Niona dèscripcion est disponibla por ceta tropa de mèssâjos.",
- "translate-group-desc-readerfeedback": "Ceta mèta-tropa de mèssâjos contint tôs los mèssâjos de l’èxtension [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback].",
- "translate-group-desc-translatablepages": "Totes les pâges a traduire",
- "translate-group-desc-translate": "Ceta mèta-tropa de mèssâjos contint tôs los mèssâjos de l’èxtension MediaWiki [https://www.mediawiki.org/wiki/Extension:Translate Translate].",
- "translate-group-desc-wikiaextensions": "Ceta mèta-tropa de mèssâjos contint tôs los mèssâjos de les èxtensions MediaWiki utilisâs per [http://www.wikia.com Wikia].",
- "translate-group-desc-wikimediaextensions": "Ceta mèta-tropa de mèssâjos contint tôs los mèssâjos de les èxtensions MediaWiki utilisâs per la [https://wikimediafoundation.org/ Wikimedia Foundation]."
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/fur.json b/MLEB/Translate/i18n/groupdescriptions/fur.json
deleted file mode 100644
index 8d31a9fb..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/fur.json
+++ /dev/null
@@ -1,8 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Klenje"
- ]
- },
- "translate-group-desc-translatablepages": "Dutis lis pagjinis che si puedin tradusi"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/gl.json b/MLEB/Translate/i18n/groupdescriptions/gl.json
deleted file mode 100644
index 4a59a94e..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/gl.json
+++ /dev/null
@@ -1,61 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Toliño",
- "Lokal Profil",
- "Elisardojm",
- "Macofe"
- ]
- },
- "bw-desc-freecol": "[[Translating:FreeCol|FreeCol]] é un xogo de estratexia por quendas",
- "bw-desc-fudforum": "[[Translating:FUDforum|FUDforum]] é un foro web de discusión",
- "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] é un sistema web de xestión de erros",
- "bw-desc-openstreetmap": "Grupo de mensaxes para todas as mensaxes do [[Translating:OpenStreetMap|OpenStreetMap]]",
- "bw-desc-osm-site": "[[Translating:OpenStreetMap|OpenStreetMap]] é un mapa mundial que se pode editar",
- "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php?user_lang=gl Wikiblame] é capaz de atopar rapidamente os autores dunha páxina nun wiki da Wikimedia.",
- "translate-group-desc-blockly": "Grupo de mensaxes de [[Translating:Blockly|Blockly]]",
- "translate-group-desc-bluespice": "Grupo de mensaxes que contén todas as mensaxes das extensións [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:BlueSpice Blue Spice] de [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-collection": "Grupo de mensaxes que contén todas as mensaxes da extensión [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection] de [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-eol": "Grupo de mensaxes da [[Translating:EOL|Enciclopedia da vida]]",
- "translate-group-desc-etherpad-lite": "[[Translating:Etherpad lite|Etherpad lite]] é un editor colaborativo en tempo real",
- "translate-group-desc-europeana": "[[Translating:Europeana|Europeana 1914-1918]] é unha páxina web con historias, vídeos e material histórico sobre a Primeira Guerra Mundial",
- "translate-group-desc-flaggedrevs": "Grupo de mensaxes que contén todas as mensaxes da extensión [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs FlaggedRevs] de [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-fuel": "[[Translating:FUEL|FUEL]] achega máis coherencia ás traducións de software",
- "translate-group-desc-huggle": "[[Translating:Huggle|Huggle]] é unha aplicación de exploración rápida das diferenzas para loitar contra o vandalismo nos proxectos da Wikimedia",
- "translate-group-desc-ihris": "Grupo de mensaxes de [[Translating:iHRIS|iHRIS]]",
- "translate-group-desc-kiwix": "Grupo de mensaxes de [[Translating:Kiwix|Kiwix]]",
- "translate-group-desc-mantisbt-plugin-core": "Un complemento fundamental para [[Translating:MantisBT|MantisBT]]",
- "translate-group-desc-mathjax": "[[Translating:MathJax|MathJax]] é unha biblioteca en JavaScript multiplataforma que mostra a notación matemática nos navegadores web",
- "translate-group-desc-mediawiki-core-branch": "Mensaxes da versión estable de [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mediawikicore": "Este grupo de mensaxes contén as mensaxes empregadas na versión alfa actual de MediaWiki ({{CURRENTVERSION}})",
- "translate-group-desc-mediawikiextensions": "Grupo de mensaxes que contén todas as mensaxes das extensións soportadas por MediaWiki",
- "translate-group-desc-mediawikimostused": "Este grupo de mensaxes contén as [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 mensaxes máis empregadas] en [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] é un sistema de información de xestión para microfinanzas",
- "translate-group-desc-nfcring-control": "[[Translating:NFC_Ring_Control|NFC Ring Control]] é unha aplicación móbil para interactuar coas etiquetas NFC",
- "translate-group-desc-nocc": "[[Translating:NOCC|NOCC]] é un cliente de correo web",
- "translate-group-desc-nodesc": "Non hai ningunha descrición dispoñible para este grupo de mensaxes",
- "translate-group-desc-openimages-all": "Estas mensaxes forman parte do proxecto [[Translating:Open Images|Open Images]]",
- "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] é un editor do OpenStreetMap baseado en Flash",
- "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] é unha colección de ferramentas para editar a Wikipedia",
- "translate-group-desc-readerfeedback": "Grupo de mensaxes que contén todas as mensaxes da extensión [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback] de [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-semantic": "Grupo de mensaxes meta que contén todas as mensaxes das extensións de [https://semantic-mediawiki.org/ Semantic MediaWiki]",
- "translate-group-desc-translatablepages": "Todas as páxinas que se poden traducir",
- "translate-group-desc-translate": "Grupo de mensaxes que contén todas as mensaxes da extensión [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate] de [[Translating:MediaWiki|MediaWiki]]; bótelle unha ollada primeiro ao [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary glosario]",
- "translate-group-desc-tsint": "Un grupo de mensaxes para [[Translating:Intuition|Intuition]], o sistema i18n das ferramentas do [//tools.wmflabs.org/Wikimedia Tool Labs] (<span class=\"plainlinks\">[[Translating talk:Intuition|soporte]]</span>)",
- "translate-group-desc-universallanguageselector": "Grupo de mensaxes que contén todas as mensaxes da extensión [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector UniversalLanguageSelector] (ULS) de [[Translating:MediaWiki|MediaWiki]] e os paquetes de software relacionados",
- "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]] é unha ferramenta para cargar ficheiros á Wikimedia Commons e aos outros proxectos da Wikimedia",
- "translate-group-desc-visualeditor": "Grupo de mensaxes que contén todas as mensaxes da extensión [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:VisualEditor VisualEditor] de [[Translating:MediaWiki|MediaWiki]] e os paquetes de software relacionados",
- "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] é un servizo que mostra rutas de sendeirismo, ciclismo, ciclismo de montaña e patinaxe de todo o mundo. Usa a licenza GNU GPL",
- "translate-group-desc-waymarked-trails-help": "As páxinas de axuda da páxina web de Waymarked Trails: http://waymarkedtrails.org/gl/help/about",
- "translate-group-desc-wikiaextensions": "Grupo de mensaxes que contén todas as mensaxes das extensións soportadas por [[Translating:MediaWiki|MediaWiki]] usadas por [http://www.wikia.com Wikia]",
- "translate-group-desc-wikimania-scholarships-app": "Grupo de mensaxes para a [https://scholarships.wikimedia.org/apply solicitude de bolsas para Wikimanía]",
- "translate-group-desc-wikimedia-mobile": "Grupo de mensaxes agregadas para as aplicacións de móbil dos proxectos da Wikimedia",
- "translate-group-desc-wikimedia-mobile-wikipedia": "[[Translating:WikipediaMobile|WikipediaMobile]] é unha aplicación para dispositivos móbiles e tabletas para ler e colaborar na Wikipedia",
- "translate-group-desc-wikimedia-mobile-wikipedia-android": "[[Translating:WikipediaMobile|Wikipedia Android]] é a versión para Android da aplicación móbil da Wikipedia",
- "translate-group-desc-wikimedia-mobile-wikipedia-ios": "[[Translating:WikipediaMobile|Wikipedia iOS]] é a versión para iOS da aplicación móbil da Wikipedia",
- "translate-group-desc-wikimedia-mobile-wikisource": "[[Translating:WikisourceMobile|WikisourceMobile]] é unha aplicación para dispositivos móbiles e tabletas para ler e colaborar na Wikisource",
- "translate-group-desc-wikimedia-mobile-wiktionary": "[[Translating:WiktionaryMobile|WiktionaryMobile]] é unha aplicación para dispositivos móbiles e tabletas para ler e colaborar no Wiktionary",
- "translate-group-desc-wikimediaextensions": "Grupo de mensaxes que contén todas as mensaxes das extensións soportadas por [[Translating:MediaWiki|MediaWiki]] usadas pola [https://wikimediafoundation.org/ Fundación Wikimedia]",
- "translate-group-desc-wikimediaextensions-main": "Grupo de mensaxes meta que contén todas as mensaxes soportadas polas extensións de [[Translating:MediaWiki|MediaWiki]] que necesitan tradución para o [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee comité de linguas] da Wikimedia",
- "translategroupdescriptions-desc": "Grupo de mensaxes coas descricións dos produtos soportados pola extensión [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate]"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/gsw.json b/MLEB/Translate/i18n/groupdescriptions/gsw.json
deleted file mode 100644
index d12a61fe..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/gsw.json
+++ /dev/null
@@ -1,41 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Als-Chlämens",
- "Als-Holder",
- "Lokal Profil",
- "Macofe"
- ]
- },
- "bw-desc-freecol": "Voreb Du aafangsch mit Ibersetze vu FreeCol, liis bitte zerscht [[Translating:FreeCol]]. Freecol nutzt d GPL-Lizänz.",
- "bw-desc-fudforum": "[http://fudforum.org/ FUDforum], e Netzforum, wu in PHP gschriben isch.",
- "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] isch e webbasiert Bug-Tracking-Syschtem. Iber Probläm sott uf [[Support]] berichtet wäre.",
- "bw-desc-openstreetmap": "Nochrichtegruppe fir alli [[Translating:OpenStreetMap|OpenStreetMap]]-Nochrichte",
- "bw-desc-osm-site": "In däre Gruppe het s Nochrichte vu dr Benutzeroberflechi fir [[Translating:Open Street Map|Open Street Map]].",
- "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] cha d Autore vun ere Syte im e Wikimedia-Wiki schnäll uusefinde.",
- "translate-group-desc-collection": "In däre Hauptgruppe het s alli Syschtemnochrichte fir d [[Translating:MediaWiki|MediaWiki]]-Erwyterig [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection]",
- "translate-group-desc-eol": "Mäldigsgruppe für [[Translating:EOL|Läbens-Enzyklopädi]]",
- "translate-group-desc-europeana": "[[Translating:Europeana|Europeana]] macht e Zuegang zum europäische Kulturerb megli",
- "translate-group-desc-flaggedrevs": "In däre Hauptgruppe het s alli Syschtemnochrichte fir d [[Translating:MediaWiki|MediaWiki]]-Erwyterig [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs FlaggedRevs]",
- "translate-group-desc-ihris": "Nochrichte fir [[Translating:iHRIS|iHRIS]]",
- "translate-group-desc-kiwix": "Mäldige fir [[Translating:Kiwix|Kiwix]]",
- "translate-group-desc-mantisbt-plugin-core": "E Haupt-Plugin fir [[Translating:MantisBT|MantisBT]]",
- "translate-group-desc-mediawiki-core-branch": "Nochrichte fir e stabil Version vu [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mediawikicore": "In däre Gruppe het s alli Nochrichte vu dr aktuälle alpha-Version vu MediaWiki ({{CURRENTVERSION}})",
- "translate-group-desc-mediawikiextensions": "In däre Hauptgruppe het s alli Syschtemnochrichte vu dr Erwyterige, wu vu MediaWiki unterstitzt wäre",
- "translate-group-desc-mediawikimostused": "In däre Gruppe het s di [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 am meischte bruchte Nochrichte] in MediaWiki",
- "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] isch e Management-Informationssyschtem fir Mikrofinanze",
- "translate-group-desc-nocc": "[http://nocc.sourceforge.net NOCC] isch e Webmail-Client, wu in PHP gschribe isch. Froge un Fähler sotte uf [[Support]] berichtet wäre.",
- "translate-group-desc-nodesc": "Fir die Nochrichte-Gruppe isch kei Bschryybig verfiegbar.",
- "translate-group-desc-openimages-all": "Die Nochrichte sin Teil vum [[Translating:Open Images|Open Images]]-Projäkt",
- "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] isch e Sammlig vu Wärchzyyg zum Bearbeite vu dr Wikipedia",
- "translate-group-desc-readerfeedback": "Meta-Nochrichte-Gruppe, wu s alli Nochrichte din het fir d [[Translating:MediaWiki|MediaWiki]]-Erwyterig [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback]",
- "translate-group-desc-semantic": "In dere Meta Mäldigsgruppe sin alli Systemmädlige für d MediaWiki-Erwyyterig [https://semantic-mediawiki.org/wiki/Semantic_MediaWiki_–_Startsyte Semantic MediaWiki] un de Erwyyterige wo dört yybunde sin",
- "translate-group-desc-translatablepages": "Alli ibersetzbare Syte",
- "translate-group-desc-translate": "In däre Hauptgruppe het s alli Syschtemnochrichte fir d MediaWiki-Erwyterig [https://www.mediawiki.org/wiki/Extension:Translate Translate]",
- "translate-group-desc-tsint": "Mäldigsgruppe für [http://toolserver.org/~krinkle/TsIntuition „Toolserver Intuition“], s I18N-System für d Hilfsprogramm wo uffem [http://toolserver.org Toolserver] ghoschtet sin. (<span class=\"plainlinks\">[[Translating talk:Toolserver|Hilf]] &middot; [https://wiki.toolserver.org/view/Toolserver_Intuition technischi Hywyys]</span>)",
- "translate-group-desc-wikiaextensions": "In däre Hauptgruppe het s alli Syschtemnochrichte vu dr unterstitzte MediaWiki-Erwyterige, wu vu [http://www.wikia.com Wikia] brucht wäre",
- "translate-group-desc-wikimediaextensions": "In däre Hauptgruppe het s alli Syschtemnochrichte vu dr unterstitzte MediaWiki-Erwyterige, wu vu dr [https://wikimediafoundation.org/ Wikimedia Foundation] brucht wäre",
- "translate-group-desc-wikimediaextensions-main": "Meta-Nochrichte-Gruppe, wu s alli Syschtemnochrichte din het vu dr unterstitzte [[Translating:MediaWiki|MediaWiki]]-Erwyterige, wu fir s Wikimedia [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee Sprochekomitee] mien ibersetzt wäre.",
- "translategroupdescriptions-desc": "Bschryybig vu dr Nochrichtegruppe vu Projäkt, wu mit dr Softwareerwyterig [https://mediawiki.org/wiki/Extension:Translate „Translate“] unterstitzt wäre"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/he.json b/MLEB/Translate/i18n/groupdescriptions/he.json
deleted file mode 100644
index b866c70c..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/he.json
+++ /dev/null
@@ -1,65 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Amire80",
- "Rotemliss",
- "YaronSh",
- "Guycn2",
- "Inkbug"
- ]
- },
- "bw-desc-freecol": "[[Translating:FreeCol|FreeCol]] הוא משחק אסטרטגיה מבוסס תורות",
- "bw-desc-fudforum": "[[Translating:FUDforum|FUDforum]] היא תוכנה לניהול פורומים",
- "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] היא תוכנה מבוססת וב לניהול באגים",
- "bw-desc-openstreetmap": "כל ההודעות השייכות ל־[[Translating:OpenStreetMap|OpenStreetMap]]",
- "bw-desc-osm-site": "[[Translating:OpenStreetMap|OpenStreetMap]] היא מפה ניתנת לעריכה של כל העולם",
- "bw-desc-wikiblame": "[[Translating:WikiBlame|WikiBlame]] מסוגל לזהות את הכותבים של חלק מדף האתר ויקי של ויקימדיה",
- "translate-group-desc-blockly": "קבוצת הודעות לתרגום מיזם [[Translating:Blockly|בלוקלי]]",
- "translate-group-desc-bluespice": "מטא־קבוצה שמכילה את כל ההודעות עבור הרחבת [[Translating:MediaWiki|מדיה־ויקי]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:BlueSpice Blue Spice].",
- "translate-group-desc-collection": "מטא־קבוצה המכילה את כל ההודעות של הרחבת [[Translating:MediaWiki|מדיה־ויקי]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection]",
- "translate-group-desc-eol": "קבוצת הודעות לתרגום של [[Translating:EOL|אנציקלופדיית החיים]]",
- "translate-group-desc-etherpad-lite": "[[Translating:Etherpad lite|Etherpad lite]] הוא עורך מסמכים בזמן אמת באמת",
- "translate-group-desc-europeana": "[[Translating:Europeana|Europeana 1914-1918]] הוא אתר עם סיפורים, סרטים וחומרים היסטוריים על מתחמת העולם הראשונה",
- "translate-group-desc-flaggedrevs": "מטא־קבוצה המכילה את כל ההודעות של הרחבת [[Translating:MediaWiki|מדיה־ויקי]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs FlaggedRevs]",
- "translate-group-desc-fuel": "מיזם [[Translating:FUEL|FUEL]] מביא יותר עקביות לתרגום תכנה",
- "translate-group-desc-huggle": "[[Translating:Huggle|האגל]] הוא יישום מהיר לעיון בהשוואות בין גרסאות במיזמי ויקימדיה",
- "translate-group-desc-ihris": "קבוצת הודעה עבור [[Translating:iHRIS|iHRIS]]",
- "translate-group-desc-inaturalist": "[[Translating:INaturalist|iNaturalist]] הוא אתר שבו אפשר לרשם את מה שאתם רואים בטבע, לפגוש אוהבי טאבע אחרים וללמוד על עולם הטבע",
- "translate-group-desc-kiwix": "קבוצת הודעת לתרגום [[Translating:Kiwix|קיוויקס]]",
- "translate-group-desc-mantisbt-plugin-core": "תוסף ליבה עבור [[Translating:MantisBT|MantisBT]]",
- "translate-group-desc-mathjax": "[[Translating:MathJax|MathJax]] היא ספריית JavaScript שמציגה נוסחות מתמטיות, אשר תואמת לדפדפנים שונים",
- "translate-group-desc-mediawiki-core-branch": "הודעות לגרסה היציבה של [[Translating:MediaWiki|מדיה־ויקי]]",
- "translate-group-desc-mediawikiapi": "קבוצת ההודעות הזאת מכילה הודעות שמשמשות ב־API הפעולות בגרסת האלפא הנוכחית של [[Translating:MediaWiki|מדיה־ויקי]] ({{CURRENTVERSION}})",
- "translate-group-desc-mediawikicore": "קבוצת הודעות זו כוללת את ההודעות שמשמשות בגרסת האלפא הנוכחית של [[Translating:MediaWiki|מדיה־ויקי]] ({{CURRENTVERSION}})",
- "translate-group-desc-mediawikiextensions": "מטא־קבוצה המכילה את כל ההודעות של הרחבות הנתמכות ל־[[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mediawikiskins": "מטא־קבוצה המכילה את כל ההודעות לעיצובים הנתמכים ב[[Translating:MediaWiki|מדיה־ויקי]]",
- "translate-group-desc-mediawikimostused": "קבוצת הודעות זו כוללת את [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 ההודעות הנפוצות ביותר] ב[[Translating:MediaWiki|מדיה־ויקי]]",
- "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] היא מערכת ניהול מידע לארגון פיננסי זעיר",
- "translate-group-desc-nfcring-control": "[[Translating:NFC_Ring_Control|NFC Ring Control]] הוא יישום למכשירים ניידים שמאפשר לתקשר עם תגי NFC",
- "translate-group-desc-nocc": "[[Translating:NOCC|NOCC]] היא תוכנת דואר מבוססת וב",
- "translate-group-desc-nodesc": "אין תיאור זמין לקבוצת ההודעות הזאת.",
- "translate-group-desc-openimages-all": "ההודעות האלה הן חלק מפרויקט [[Translating:Open Images|Open Images]]",
- "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] הוא עורך OpenStreemMap מבוסס פלאש",
- "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] הוא אוסף כלים לעריכה אוטומטית של ויקיפדיה",
- "translate-group-desc-readerfeedback": "מטא־קבוצה המכילה את כל ההודעות של הרחבת [[Translating:MediaWiki|מדיה־ויקי]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback]",
- "translate-group-desc-semantic": "מטא־קבוצת הודעות שמכילה את כל ההודעות עובר כל ההרחבות ממשפחת [https://semantic-mediawiki.org/ מדיה־ויקי סמנטית]",
- "translate-group-desc-translatablepages": "כל הדפים הניתנים לתרגום",
- "translate-group-desc-translate": "מטא־קבוצה המכילה את כל ההודעות של הרחבת [[Translating:MediaWiki|מדיה־ויקי]] [https://www.mediawiki.org/wiki/Extension:Translate Translate]; נא לערוך היכרות עם [https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Extension:Translate/Glossary המונחון]",
- "translate-group-desc-tsint": "קבוצת הודעות ל־[[Translating:Intuition|Intuition]], מערכת התרגום עבור כלֵי [//tools.wmflabs.org/ Toolserver‏] (<span class=\"plainlinks\">[[Translating talk:Intuition|תמיכה]]</span>)",
- "translate-group-desc-universallanguageselector": "מטא־קבוצה שמכילה את כל ההודעות עבור הרחבת [[Translating:MediaWiki|מדיה־ויקי]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector UniversalLanguageSelector] (בורר השפות האוניברסלי, ULS) וחבילות תכנה קשורות",
- "translate-group-desc-vicuna": "תכנת [[Translating:VicuñaUploader|VicuñaUploader]] היא כלי להעלאת קבצים לוויקישיתוף ולמיזמי ויקימדיה אחרים",
- "translate-group-desc-visualeditor": "מטא־קבוצה שמכילה את כל ההודעות בשביל הרחבת [[Translating:MediaWiki|מדיה־ויקי]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:VisualEditor VisualEditor] (העורך החזותי) וחבילות תכנה קשורות",
- "translate-group-desc-waymarked-trails": "אתר [[Translating:Waymarked Trails|Waymarked Trails]] הוא שירות להצגת שבילים לטיולי הליכה, טיולי אופניים, אופני הרי וגלגליות מסביב לעולם. הרישיון שלו הוא GPL.",
- "translate-group-desc-waymarked-trails-help": "דפי עזרה של אתרי Waymarked Trails: http://waymarkedtrails.org/help/about",
- "translate-group-desc-wikiaextensions": "מטא־קבוצה המכילה את כל ההודעות של הרחבת [[Translating:MediaWiki|מדיה־ויקי]] שמשמשות באתר [http://www.wikia.com ויקיה]",
- "translate-group-desc-wikimania-scholarships-app": "קבוצת הודעות עבור [https://scholarships.wikimedia.org/apply יישום מלגות ויקמניה]",
- "translate-group-desc-wikimedia-mobile": "קבוצה משולבת עם יישומים ניידים למיזמי ויקימדיה",
- "translate-group-desc-wikimedia-mobile-wikipedia": "[[Translating:WikipediaMobile|WikipediaMobile]] הוא יישום מרובה־פלטפורמות למחשבי לוח ולמחשבים ניידים לקריאה ולתרומה לוויקיפדיה.",
- "translate-group-desc-wikimedia-mobile-wikipedia-android": "[[Translating:WikipediaMobile|Wikipedia Android]] היא גרסת אנדרואיד של היישום הנייד של ויקיפדיה",
- "translate-group-desc-wikimedia-mobile-wikipedia-ios": "[[Translating:WikipediaMobile|Wikipedia iOS]] היא גרסת iOS של יישום ויקיפדיה",
- "translate-group-desc-wikimedia-mobile-wikisource": "יישום [[Translating:WikisourceMobile|WikisourceMobile]] עובד במספר מערכות הפעלה לטלפונים ומחשבי לוח ומאפשר לקרוא ספרים ממיזם ויקיטקסט (Wikisource) ולתרום אליהם",
- "translate-group-desc-wikimedia-mobile-wiktionary": "[[Translating:WiktionaryMobile|ויקימילון נייד]] הוא יישום מרובה־פלטפורמות למכשירים ניידים ומחשבי לוח לקריאה ותרומה לוויקימילון",
- "translate-group-desc-wikimediaextensions": "מטא־קבוצה המכילה את כל ההודעות של הרחבת [[Translating:MediaWiki|מדיה־ויקי]] בשימוש של [https://wikimediafoundation.org/ קרן ויקימדיה]",
- "translate-group-desc-wikimediaextensions-main": "מטא־קבוצה המכילה את כל ההודעות של הרחבת [[Translating:MediaWiki|מדיה־ויקי]] נתמכות ש[https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee הוועדה הלשונית של ויקימדיה] דורשת לתרגם",
- "translategroupdescriptions-desc": "תיאורים של קבוצות הודעות למוצרים הנתמכים ב[https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate הרחבת התרגום]."
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/hr.json b/MLEB/Translate/i18n/groupdescriptions/hr.json
deleted file mode 100644
index bd9083c7..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/hr.json
+++ /dev/null
@@ -1,20 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Ex13",
- "SpeedyGonsales",
- "Macofe"
- ]
- },
- "bw-desc-openstreetmap": "Sve poruke povezane s [[Translating:OpenStreetMap|OpenStreetMap]] projektom",
- "bw-desc-osm-site": "[[Translating:OpenStreetMap|OpenStreetMap]] je karta svijeta koju može svatko uređivati",
- "translate-group-desc-collection": "Grupa poruka koja sadrži sve poruke za [[Translating:MediaWiki|MediaWiki]] dogradnju [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Zbirke]",
- "translate-group-desc-flaggedrevs": "Grupa poruka koja sadrži sve poruke za [[Translating:MediaWiki|MediaWiki]] dogradnju [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs Označene promjene]",
- "translate-group-desc-mediawikicore": "Ova skupina poruka sadrži poruke koje se rabe u trenutačnoj alpha inačici MediaWikija ({{CURRENTVERSION}})",
- "translate-group-desc-mediawikiextensions": "Grupa poruka koja sadrži sve poruke za podržane dogradnje za MediaWiki softver",
- "translate-group-desc-mediawikimostused": "Ova grupa sadrži [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 najčešće rabljenih poruka] u MediaWiki softveru",
- "translate-group-desc-readerfeedback": "Grupa poruka koja sadrži sve poruke za [[Translating:MediaWiki|MediaWiki]] dogradnju [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback Odgovor čitatelja (''ReaderFeedback'')]",
- "translate-group-desc-translate": "Grupa poruka koja sadrži sve poruke za MediaWiki dogradnju [https://www.mediawiki.org/wiki/Extension:Translate Prijevod sistemskih poruka]",
- "translate-group-desc-wikiaextensions": "Grupa poruka koja sadrži sve poruke za podržane MediaWiki dogradnje koje rabi [http://www.wikia.com Wikia]",
- "translate-group-desc-wikimediaextensions": "Grupa poruka koja sadrži sve poruke za podržane MediaWiki dogradnje koje rabi [https://wikimediafoundation.org/ Zaklada Wikimedia]"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/hsb.json b/MLEB/Translate/i18n/groupdescriptions/hsb.json
deleted file mode 100644
index d6723337..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/hsb.json
+++ /dev/null
@@ -1,58 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Michawiki",
- "Lokal Profil",
- "Macofe"
- ]
- },
- "bw-desc-freecol": "Prjedy hač přełožuješ FreeCol do swojeje rěče, přečitaj prošu [[Translating:FreeCol]]. FreeCol wužiwa licencu GPL.",
- "bw-desc-fudforum": "[[Translating:FUDforum|FUDforum]] je webforum spisany w PHP.",
- "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] je swobodny system na zakładźe weba za slědowanje programowych zmylkow. Zdźěl prošu problemy na stronje [[Support|Podpěra]].",
- "bw-desc-openstreetmap": "Skupina zdźělenkow za wšě zdźělenki z [[Translating:OpenStreetMap|OpenStreetMap]]",
- "bw-desc-osm-site": "Zdźělenki wužiwarskeho powjercha za [[Translating:OpenStreetMap|OpenStreetMap]], wobdźěłujomnu kartu cyłeho swěta",
- "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] móže awtorow nastawka we wikiju Wikimedije spěšnje namakać.",
- "translate-group-desc-blockly": "Skupina zdźělenkow za [[Translating:Blockly|Blockly]]",
- "translate-group-desc-bluespice": "Zdźělenska metaskupina, kotraž wobsahuje wšě zdźělenki za rozšěrjenja MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:BlueSpice Blue Spice]",
- "translate-group-desc-collection": "Hłowna skupina, kotraž wšě zdźělenki za rozšěrjenje [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection] wobsahuje",
- "translate-group-desc-eol": "Zdźělenska skupina za [[Translating:EOL|Encyclopedia of Life]]",
- "translate-group-desc-etherpad-lite": "[[Translating:Etherpad lite|Etherpad lite]] je editor we woprawdźitym času za zhromadne dźěło",
- "translate-group-desc-europeana": "[[Translating:Europeana|Europeana 1914-1918]] je websydło z powědančkami, filmami a histirskim materialom wo prěnej swětowej wójnje",
- "translate-group-desc-flaggedrevs": "Hłowna skupina, kotraž wšě zdźělenki za rozšěrjenje [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki//Special:MyLanguageExtension:FlaggedRevs FlaggedRevs] wobsahuje",
- "translate-group-desc-fuel": "[[Translating:FUEL|FUEL]] přinjese wjace konsistency do softwaroweho přełožowanja",
- "translate-group-desc-ihris": "Skupina powěsćow za [[Translating:iHRIS|iHRIS]]",
- "translate-group-desc-kiwix": "Zdźělenska skupina za [[Translating:Kiwix|Kiwix]]",
- "translate-group-desc-mantisbt-plugin-core": "Hłowny tykač za [[Translating:MantisBT|MantisBT]]",
- "translate-group-desc-mathjax": "[[Translating:MathJax|MathJax]] je JavaScriptowa biblioteka za wšelake wobhladowaki, kotraž matematiske notacije we webwobhladowakach zwobraznja.",
- "translate-group-desc-mediawiki-core-branch": "Zdźělenki za stabilnu wersiju [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mediawikicore": "Tuta skupina zdźělenkow wobsahuje zdźělenki, kotrež so w aktualnej alfa-wersiji MediaWiki ({{CURRENTVERSION}}) wužiwaja",
- "translate-group-desc-mediawikiextensions": "Hłowna skupina, kotraž wšě zdźělenki za podpěrane rozšěrjenja za MediaWiki wobsahuje.",
- "translate-group-desc-mediawikimostused": "Tuta skupina zdźělenkow wobsahuje [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 najhusćišo wužiwanych zdźělenkow] w [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] je zarjadowanski informaciski system za mikrofinancne institucije",
- "translate-group-desc-nocc": "[http://nocc.sourceforge.net NOCC] je webmejlowy klient spisany w PHP. Zdźěl prošu problemy na stronje [[Support|Podpěra]].",
- "translate-group-desc-nodesc": "Za tutu skupinu zdźělenkow wopisanje k dispoziciji njesteji.",
- "translate-group-desc-openimages-all": "Tute zdźělenki su dźěl projekta [[Translating:Open Images|Open Images]]",
- "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] je editor za OpenStreetMap, kotryž na Flash bazěruje",
- "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] je zběrka nastrojow za wobdźěłowanju Wikipedije",
- "translate-group-desc-readerfeedback": "Metaskupina powěsćow, kotraž wšě powěsće za rozšěrjenje [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback] wobsahuje",
- "translate-group-desc-semantic": "Hłowna zdźělenska skupina, kotraž wšě zdźělenki za wšě rozšěrjenja [https://semantic-mediawiki.org/ Semantic MediaWiki] wobsahuje",
- "translate-group-desc-translatablepages": "Wšě přełožujomne strony",
- "translate-group-desc-translate": "Hłowna skupina, kotraž wšě zdźělenki za rozšěrjenje MediaWiki [https://www.mediawiki.org/wiki/Extension:Translate Translate] wobsahuje; prošu zeznaj so z [https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Extension:Translate/Glossary glosarom]",
- "translate-group-desc-tsint": "Zdźělenska skupina za [[Translating:Intuition|Intuition]], i18n-system za nastroje [//tools.wmflabs.org/ Toolserver] (<span class=\"plainlinks\">[[Translating talk:Intuition|podpěra]] </span>)",
- "translate-group-desc-universallanguageselector": "Metaskupina zdźělenkow, kotraž wšě zdźělenki za rozšěrjenje MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector UniversalLanguageSelector] (ULS) a přisłušne softwarowe pakćiki wobsahuje",
- "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]] je nastroj za nahrawanje datajow do Wikimedia Commons a druhich wikimedijowych projektow",
- "translate-group-desc-visualeditor": "Metaskupina zdźělenkow, kotraž wšě zdźělenki za rozšěrjenje MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:VisualEditor VisualEditor] a přisłušne softwarowe pakćiki wobsahuje.",
- "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] je słužba, kotraž ruty za pućowanje, kolesowanje, mountainbikowanje a skating na cyłym swěće pokazuje. Wužiwa licencu GNU GPL",
- "translate-group-desc-waymarked-trails-help": "Strony pomocy websydłow za Waymarked Trails: http://waymarkedtrails.org/help/about",
- "translate-group-desc-wikiaextensions": "Hłowna skupina, kotraž wšě zdźělenki za podpěrowane rozšěrjenja MediaWiki wobsahuje, kotrež so wot [http://www.wikia.com Wikia] wužiwaja",
- "translate-group-desc-wikimania-scholarships-app": "Skupina zdźělenkow za [https://scholarships.wikimedia.org/apply stipendijowe nałoženje Wikimania]",
- "translate-group-desc-wikimedia-mobile": "Zdźělenska metaskupina, kotraž mobilne aplikacije za Wikimedijowe projekty wobsahuje",
- "translate-group-desc-wikimedia-mobile-wikipedia": "[[Translating:WikipediaMobile|WikipediaMobile]] je aplikacija za mobilne graty a tablety za čitanje a sobudźěło we Wikipediji",
- "translate-group-desc-wikimedia-mobile-wikipedia-android": "[[Translating:WikipediaMobile|Wikipedija Android]] je specifiska wersija za Android nałoženja Wikipedia mobile",
- "translate-group-desc-wikimedia-mobile-wikipedia-ios": "[[Translating:WikipediaMobile|Wikipedia iOS]] je wersija iOS nałoženja Wikipedia mobile",
- "translate-group-desc-wikimedia-mobile-wikisource": "[[Translating:WikisourceMobile|WikisourceMobile]] je aplikacija za mobilne graty a tablety za čitanje a sobudźěło we Wikižórle",
- "translate-group-desc-wikimedia-mobile-wiktionary": "[[Translating:WiktionaryMobile|WiktionaryMobile]] je aplikacija za mobilne graty a tablety za čitanje a sobudźěło we Wikisłowniku",
- "translate-group-desc-wikimediaextensions": "Hłowna skupina, kotraž wšě zdźělenki za podpěrowane rozšěrjenja MediaWiki wobsahuje, kotrež so přez [https://wikimediafoundation.org/ Wikimedia Foundation] wužiwaja",
- "translate-group-desc-wikimediaextensions-main": "Metaskupina zdźělenkow, kotraž wšě powěsće za podpěrowane rozšěrjenja [[Translating:MediaWiki|MediaWiki]] wobsahuje, kotrež dyrbja so za [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee rěčny komitej] Wikimedije přełožować",
- "translategroupdescriptions-desc": "Wopisanje za skupiny zdźělenkow za produkty, kotrež so přez rozšěrjenje [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate] pdopěruja"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/hu.json b/MLEB/Translate/i18n/groupdescriptions/hu.json
deleted file mode 100644
index 3b08da39..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/hu.json
+++ /dev/null
@@ -1,31 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Dani",
- "Glanthor Reviol",
- "Lokal Profil",
- "Tacsipacsi",
- "Macofe"
- ]
- },
- "bw-desc-freecol": "Mielőtt elkezdenéd fordítani a FreeColt a saját nyelvedre, olvasd el a [[Translating:FreeCol]] lapot. A FreeCol GPL-licencet használ.",
- "bw-desc-fudforum": "[http://fudforum.org/ FUDforum], egy PHP-ben írt webfórum",
- "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] egy ingyenes webalapú hibakövető rendszer",
- "bw-desc-osm-site": "Ez a csoport tartalmazza az [[Translating:Open Street Map|Open Street Map]] felhasználói felületének szövegeit.\nA többesszám formátumáról [http://unicode.org/repos/cldr-tmp/trunk/diff/supplemental/language_plural_rules.html#{{UILANGCODE}} itt] tudhatsz meg többet.",
- "bw-desc-wikiblame": "A [http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] segítségével könnyen megtalálhatod egy Wikimédia-wikis lap szerkesztőit.",
- "translate-group-desc-collection": "Gyűjtőcsoport, ami a [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection] [[Translating:MediaWiki|MediaWiki]]-kiterjesztéshez tartozó összes üzenetet tartalmazza",
- "translate-group-desc-flaggedrevs": "Gyűjtőcsoport, ami a [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs FlaggedRevs] [[Translating:MediaWiki|MediaWiki]]-kiterjesztéshez tartozó összes üzenetet tartalmazza",
- "translate-group-desc-mediawikicore": "Ez a csoport a MediaWiki jelenlegi alfaverziójának ({{CURRENTVERSION}}) üzeneteit tartalmazza",
- "translate-group-desc-mediawikiextensions": "Gyűjtőcsoport, ami az összes MediaWiki-kiterjesztés üzeneteit tartalmazza",
- "translate-group-desc-mediawikimostused": "Ez a csoport a [[Translating:MediaWiki|MediaWikiben]] [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki leggyakrabban használt 500 üzenetet] tartalmazza",
- "translate-group-desc-nocc": "A [http://nocc.sourceforge.net NOCC] egy PHP-ban írt webmail-kliens. A problémákat [[Support|Segítség]] oldalon jelezheted.",
- "translate-group-desc-nodesc": "Az üzenetcsoporthoz nincs leírás",
- "translate-group-desc-openimages-all": "Ezek az üzenetek az [[Translating:Open Images|Open Images]] projekt részei",
- "translate-group-desc-pywikipedia": "A [[Translating:Pywikibot|Pywikibot]] a Wikipédia szerkesztéséhez szükséges eszközök gyűjteménye",
- "translate-group-desc-readerfeedback": "Gyűjtőcsoport, ami a [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback] [[Translating:MediaWiki|MediaWiki]]-kiterjesztéshez tartozó összes üzenetet tartalmazza",
- "translate-group-desc-translatablepages": "Az összes fordítható lap",
- "translate-group-desc-translate": "Gyűjtőcsoport, ami a [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate] MediaWiki-kiterjesztéshez tartozó összes üzenetet tartalmazza; kérjük, előbb ismerkedj meg a [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary szószedetével]",
- "translate-group-desc-tsint": "Üzenetcsoport a [[Translating:Intuition|Intuitionhez]], ami egy i18n-rendszer [//tools.wmflabs.org/ Tool Labses] eszközökhöz (<span class=\"plainlinks\">[[Translating talk:Intuition|támogatás]]</span>)",
- "translate-group-desc-wikiaextensions": "Gyűjtőcsoport, ami a [http://www.wikia.com Wikia] által használt MediaWiki-kiterjesztések összes üzenetét tartalmazza",
- "translate-group-desc-wikimediaextensions": "Gyűjtőcsoport, ami a [https://wikimediafoundation.org/ Wikimédia Alapítvány] által használt MediaWiki-kiterjesztések összes üzenetét tartalmazza"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/ia.json b/MLEB/Translate/i18n/groupdescriptions/ia.json
deleted file mode 100644
index a102849d..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/ia.json
+++ /dev/null
@@ -1,47 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "McDutchie",
- "Lokal Profil",
- "Macofe"
- ]
- },
- "bw-desc-freecol": "Ante de traducer FreeCol in tu lingua, per favor lege [[Translating:FreeCol]]. FreeCol usa le licentia GPL.",
- "bw-desc-fudforum": "[http://fudforum.org/ FUDforum], un foro web scribite in PHP.",
- "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] es un systema libere pro gerer defectos via web.",
- "bw-desc-openstreetmap": "Gruppo pro tote le messages de [[Translating:OpenStreetMap|OpenStreetMap]]",
- "bw-desc-osm-site": "Iste gruppo de messages contine le messages de interfacie pro [[Translating:Open Street Map|Open Street Map]].\nVide le [http://unicode.org/repos/cldr-tmp/trunk/diff/supplemental/language_plural_rules.html#{{UILANGCODE}} pagina CLDR Unicode] pro un explication de como se codifica le plurales.",
- "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] pote rapidemente trovar le autores de un pagina in un wiki de Wikimedia.",
- "translate-group-desc-blockly": "Un gruppo de messages pro [[Translating:Blockly|Blockly]]",
- "translate-group-desc-bluespice": "Metagruppo con tote le messages pro le extensiones [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:BlueSpice Blue Spice] de MediaWiki",
- "translate-group-desc-collection": "Metagruppo con tote le messages pro le extension de [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection] de [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-eol": "Un gruppo de messages pro le [[Translating:EOL|Encyclopedia del Vita]]",
- "translate-group-desc-etherpad-lite": "[[Translating:Etherpad lite|Etherpad lite]] es un editor collaborative in tempore realmente real",
- "translate-group-desc-europeana": "[[Translating:Europeana|Europeana 1914-1918]] es un sito web con historias, films e material historic sur le Prime Guerra Mundial",
- "translate-group-desc-flaggedrevs": "Metagruppo con tote le messages pro le extension [https://www.mediawiki.org/wiki/Special:MyLanguage Marcaversiones] de [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-fuel": "[[Translating:FUEL|FUEL]] apporta plus consistentia al traduction de software",
- "translate-group-desc-huggle": "[[Translating:Huggle|Huggle]] es un application pro le exploration rapide de differentias pro tractar le vandalismo in projectos de Wikimedia",
- "translate-group-desc-ihris": "Un gruppo de messages pro [[Translating:iHRIS|iHRIS]]",
- "translate-group-desc-kiwix": "Un gruppo de messages pro [[Translating:Kiwix|Kiwix]]",
- "translate-group-desc-mantisbt-plugin-core": "Un plugin fundamental pro [[Translating:MantisBT|MantisBT]]",
- "translate-group-desc-mediawiki-core-branch": "Messages pro un version stabile de [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mediawikicore": "Iste gruppo contine le messages usate in le version alpha actual de MediaWiki ({{CURRENTVERSION}})",
- "translate-group-desc-mediawikiextensions": "Metagruppo con tote le messages pro le extensiones supportate pro MediaWiki",
- "translate-group-desc-mediawikimostused": "Iste gruppo contine le [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 messages usate le plus frequentemente] in [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] es un systema de gestion pro microfinanciamento",
- "translate-group-desc-nocc": "[http://nocc.sourceforge.net NOCC] es un cliente de e-mail via web, scribite in PHP. Per favor reporta omne problema in [[Support]].",
- "translate-group-desc-nodesc": "Nulle description es disponibile pro iste gruppo de messages",
- "translate-group-desc-openimages-all": "Iste messages face parte del projecto [[Translating:Open Images|Open Images]]",
- "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] es un editor pro OpenStreetMap a base de Flash",
- "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] es un collection de instrumentos pro modificar Wikipedia",
- "translate-group-desc-readerfeedback": "Metagruppo con tote le messages pro le extension [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback]",
- "translate-group-desc-semantic": "Meta-gruppo que contine le messages pro tote le extensiones de [https://semantic-mediawiki.org/ Semantic MediaWiki]",
- "translate-group-desc-translatablepages": "Tote le paginas traducibile",
- "translate-group-desc-translate": "Metagruppo con tote le messages pro le extension de MediaWiki [https://www.mediawiki.org/Special:MyLanguage/wiki/Extension:Translate Traducer]; per favor familiarisa te con le [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary glossario].",
- "translate-group-desc-tsint": "Un gruppo de messages pro [[Translating:Intuition|Intuition]], le systema de internationalisation pro le instrumentos de [http://toolserver.org Toolserver] (<span class=\"plainlinks\">[[Translating talk:Intuition|adjuta]]</span>).",
- "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] es un servicio que monstra routes de sport pedestre, cyclismo, mountain bike e patinage in linea in tote le mundo. Illo usa le licentia GNU GPL.",
- "translate-group-desc-wikiaextensions": "Metagruppo con tote le messages pro le extensiones supportate de MediaWiki usate per [http://www.wikia.com Wikia]",
- "translate-group-desc-wikimediaextensions": "Metagruppo con tote le messages pro le extensiones supportate de MediaWiki usate per le [https://wikimediafoundation.org/ Fundation Wikimedia]",
- "translate-group-desc-wikimediaextensions-main": "Metagruppo que contine tote le messages pro le extensiones supportate per [[Translating:MediaWiki|MediaWiki]] que debe esser traducite pro le [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee Comité de linguas] del Fundation Wikimedia",
- "translategroupdescriptions-desc": "Descriptiones de gruppos de messages pro productos supportate per le extension [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate]"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/id.json b/MLEB/Translate/i18n/groupdescriptions/id.json
deleted file mode 100644
index f86655a7..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/id.json
+++ /dev/null
@@ -1,42 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Bennylin",
- "Farras",
- "Irwangatot",
- "IvanLanin",
- "Rex",
- "Lokal Profil",
- "Macofe",
- "Totosunarto"
- ]
- },
- "bw-desc-freecol": "Sebelum menerjemahkan FreeCol ke bahasa Anda, harap baca [[Translating:FreeCol]] terlebih dahulu. FreeCol menggunakan lisensi GPL.",
- "bw-desc-fudforum": "[http://fudforum.org/ FUDforum], sebuah web forum yang ditulis dalam PHP.",
- "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] adalah sebuah sistem penelusuran bug berbasis web. Laporkan temuan-temuan masalah di [[Support]].",
- "bw-desc-openstreetmap": "Kumpulan pesan untuk semua pesan [[Translating:OpenStreetMap|OpenStreetMap]]",
- "bw-desc-osm-site": "Kelompok pesan ini berisi pesan antarmuka untuk [[Translating:Open Street Map|Peta jalan terbuka]].",
- "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] dapat dengan cepat menampilkan daftar penulis suatu halaman wiki Wikimedia.",
- "translate-group-desc-collection": "Grup pesan meta yang berisikan semua pesan sistem untuk ekstensi [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection]",
- "translate-group-desc-europeana": "[[Translating:Europeana|Europeana]] memungkinkan eksplorasi sumber daya budaya digital Eropa",
- "translate-group-desc-flaggedrevs": "Grup pesan meta berisikan semua pesan untuk ekstensi [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs FlaggedRevs]",
- "translate-group-desc-ihris": "Kelompok pesan untuk [[Translating:iHRIS|iHRIS]]",
- "translate-group-desc-mantisbt-plugin-core": "Plugin inti untuk [[Translating:MantisBT|MantisBT]]",
- "translate-group-desc-mediawiki-core-branch": "Pesan untuk versi stabil [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mediawikicore": "Grup pesan ini berisikan pesan-pesan sistem yang digunakan dalam MediaWiki versi alfa terbaru ({{CURRENTVERSION}})",
- "translate-group-desc-mediawikiextensions": "Grup pesan meta yang berisikan semua pesan sistem untuk ekstensi MediaWiki yang didukung",
- "translate-group-desc-mediawikimostused": "Grup ini berisikan [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 pesan sistem yang paling sering digunakan] di MediaWiki",
- "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] adalah sebuah sistem informasi manajemen keuangan mikro",
- "translate-group-desc-nocc": "[http://nocc.sourceforge.net NOCC] adalah sebuah klien webmail yang ditulis menggunakan PHP. Laporkan temuan-temuan masalah di [[Support]].",
- "translate-group-desc-nodesc": "Tidak ada deskripsi untuk kelompok pesan ini",
- "translate-group-desc-openimages-all": "Pesan berikut adalah bagian dari proyek [[Translating:Open Images|Gambar Terbuka]]",
- "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] adalah koleksi peralatan untuk menyunting Wikipedia",
- "translate-group-desc-readerfeedback": "Kelompok pesan meta berisikan semua pesan untuk ekstensi [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback]",
- "translate-group-desc-translatablepages": "Semua halaman yang dapat diterjemahkan",
- "translate-group-desc-translate": "Grup pesan meta yang berisikan semua pesan untuk ekstensi MediaWiki [https://www.mediawiki.org/wiki/Extension:Translate Translate]",
- "translate-group-desc-tsint": "Kelompok pesan untuk [http://toolserver.org/~krinkle/TsIntuition Toolserver Intuition], sistem i18n untuk alat [http://toolserver.org Toolserver] (<span class=\"plainlinks\">[[Translating talk:Toolserver|dukungan]] &middot; [https://wiki.toolserver.org/view/Toolserver_Intuition detail teknis]</span>)",
- "translate-group-desc-wikiaextensions": "Grup pesan meta yang berisikan semua pesan untuk ekstensi MediaWiki yang didukung yang digunakan oleh [http://www.wikia.com Wikia]",
- "translate-group-desc-wikimediaextensions": "Grup pesan meta yang berisikan semua pesan sistem untuk ekstensi MediaWiki yang didukung yang digunakan oleh [http://wikimedia.org Wikimedia Foundation]",
- "translate-group-desc-wikimediaextensions-main": "Kelompok pesan meta berisikan semua pesan untuk ekstensi [[Translating:MediaWiki|MediaWiki]] yang didukung perlu diterjemahkan untuk [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee Komite bahasa] Wikimedia",
- "translategroupdescriptions-desc": "Deskripsi kelompok pesan untuk produk yang didukung oleh ekstensi [https://mediawiki.org/wiki/Extension:Translate Translate]"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/it.json b/MLEB/Translate/i18n/groupdescriptions/it.json
deleted file mode 100644
index bee4b334..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/it.json
+++ /dev/null
@@ -1,65 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Beta16",
- "Civvì",
- "Darth Kule",
- "Gianfranco",
- "Nemo bis",
- "Macofe"
- ]
- },
- "bw-desc-freecol": "[[Translating:FreeCol|FreeCol]] è un gioco strategico a turni.",
- "bw-desc-fudforum": "[[Translating:FUDforum|FUDforum]], un forum web scritto in PHP.",
- "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] è un sistema gratuito di tracciamento bug web-based.",
- "bw-desc-openstreetmap": "Questo gruppo contiene tutti i messaggi per [[Translating:OpenStreetMap|OpenStreetMap]]",
- "bw-desc-osm-site": "Questo gruppo di messaggi contiene i messaggi dell'interfaccia per tradurre [[Translating:Open Street Map|Open Street Map]].\nVedi [http://unicode.org/repos/cldr-tmp/trunk/diff/supplemental/language_plural_rules.html#{{UILANGCODE}} la pagina Unicode CLDR per i criteri sul'uso dei plurali].",
- "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] è in grado di trovare velocemente gli autori di una pagina in un sito di Wikimedia.",
- "translate-group-desc-blockly": "Un gruppo messaggi per [[Translating:Blockly|Blockly]]",
- "translate-group-desc-bluespice": "Meta gruppo di messaggi contenente tutti i messaggi dell'estensione MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:BlueSpice Blue Spice]",
- "translate-group-desc-collection": "Meta gruppo di messaggi contenente tutti i messaggi dell'estensione [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection]",
- "translate-group-desc-eol": "Un gruppo di messaggi per [[Translating:EOL|Encyclopedia of Life]]",
- "translate-group-desc-etherpad-lite": "[[Translating:Etherpad lite|Etherpad lite]] è un editor collaborativo in tempo reale",
- "translate-group-desc-europeana": "[[Translating:Europeana|Europeana 1914-1918]] è un sito web con storie, film, e materiale storico sulla prima guerra mondiale",
- "translate-group-desc-flaggedrevs": "Meta gruppo di messaggi contenente tutti i messaggi dell'estensione [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs FlaggedRevs]",
- "translate-group-desc-fuel": "[[Translating:FUEL|FUEL]] rende più consistente la traduzione di software",
- "translate-group-desc-huggle": "[[Translating:Huggle|Huggle]] è un'applicazione per browser per vedere velocemente i diff, per affrontare gli atti di vandalismo sui progetti Wikimedia",
- "translate-group-desc-ihris": "Un gruppo di messaggi per [[Translating:iHRIS|iHRIS]]",
- "translate-group-desc-kiwix": "Un gruppo di messaggi per [[Translating:Kiwix|Kiwix]]",
- "translate-group-desc-mantisbt-plugin-core": "Un'estensione di [[Translating:MantisBT|MantisBT]]",
- "translate-group-desc-mathjax": "[[Translating:MathJax|MathJax]] è una libreria JavaScript cross-browser per visualizzare la notazione matematica nei browser web",
- "translate-group-desc-mediawiki-core-branch": "Messaggi di una versione stabile di [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mediawikiapi": "Questo gruppo di messaggi contiene i messaggi usati nelle API dell'attuale versione alfa di [[Translating:MediaWiki|MediaWiki]] ({{CURRENTVERSION}})",
- "translate-group-desc-mediawikicore": "Questo gruppo di messaggi contiene i messaggi usati nell'attuale versione alfa di MediaWiki ({{CURRENTVERSION}})",
- "translate-group-desc-mediawikiextensions": "Meta gruppo di messaggi contenente tutti i messaggi per le estensioni di MediaWiki supportate",
- "translate-group-desc-mediawikiskins": "Meta gruppo di messaggi contenente tutti i messaggi per le skin di [[Translating:MediaWiki|MediaWiki]] supportate",
- "translate-group-desc-mediawikimostused": "Questo gruppo di messaggi contiene i [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 messaggi più usati] in [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] è un sistema di gestione delle informazioni per la microfinanza",
- "translate-group-desc-nfcring-control": "[[Translating:NFC_Ring_Control|NFC Ring Control]] è un'applicazione mobile per intergaire con i tag NFC",
- "translate-group-desc-nocc": "[[Translating:NOCC|NOCC]] è un client webmail scritto in PHP.",
- "translate-group-desc-nodesc": "Nessuna descrizione disponibile per questo gruppo di messaggi",
- "translate-group-desc-openimages-all": "Questi messaggi sono parte del progetto [[Translating:Open Images|Open Images]]",
- "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] è un editor di OpenStreetMap basato su Flash",
- "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] è una collezione di strumenti per modificare siti MediaWiki",
- "translate-group-desc-readerfeedback": "Meta gruppo di messaggi contenente tutti i messaggi dell'estensione [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback]",
- "translate-group-desc-semantic": "Meta gruppo di messaggi contentente tutti i messaggi di tutte le estensioni [https://semantic-mediawiki.org/ Semantic MediaWiki]",
- "translate-group-desc-translatablepages": "Tutte le pagine traducibili",
- "translate-group-desc-translate": "Meta gruppo di messaggi contenente tutti i messaggi dell'estensione MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate]; si prega di familiarizzare con il suo [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary glossario]",
- "translate-group-desc-tsint": "Un gruppo di messaggi per [[Translating:Intuition|Intuition]], il sistema di localizzazione degli strumenti del [//tools.wmflabs.org/ Wikimedia Tool Labs] (<span class=\"plainlinks\">[[Translating talk:Intuition|supporto]]</span>)",
- "translate-group-desc-universallanguageselector": "Gruppo di meta messaggi che contiene tutti i messaggi per l'estensione MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector UniversalLanguageSelector] (ULS) e relativi pacchetti software",
- "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]] è uno strumento per caricare file su Wikimedia Commons e sugli altri progetti Wikimedia",
- "translate-group-desc-visualeditor": "Gruppo di meta messaggi che contiene tutti i messaggi per l'estensione MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:VisualEditor VisualEditor] e relativi pacchetti software",
- "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] è un servizio che mostra percorsi per escursionismo, ciclismo, mountain bike e pattinaggio in tutto il mondo. Usa la licenza GNU GPL.",
- "translate-group-desc-waymarked-trails-help": "Le pagine di aiuto del sito web Waymarked Trails: http://waymarkedtrails.org/help/about",
- "translate-group-desc-wikiaextensions": "Meta gruppo di messaggi contenente tutti i messaggi per le estensioni di MediaWiki supportate usate da [http://www.wikia.com Wikia]",
- "translate-group-desc-wikimania-scholarships-app": "Gruppo di messaggi per la [https://scholarships.wikimedia.org/apply domanda di borsa di studio per Wikimania]",
- "translate-group-desc-wikimedia-mobile": "Questo gruppo di messaggi contiene tutti i messaggi delle applicazioni per dispositivi mobili sui progetti Wikimedia.",
- "translate-group-desc-wikimedia-mobile-wikipedia": "[[Translating:WikipediaMobile|WikipediaMobile]] è un'applicazione multipiattaforma per dispositivi mobili e tavolette per leggere e modificare Wikipedia",
- "translate-group-desc-wikimedia-mobile-wikipedia-android": "[[Translating:WikipediaMobile|Wikipedia Android]] è la versione specifica per Android dell'applicazione di Wikipedia per dispositivi mobili",
- "translate-group-desc-wikimedia-mobile-wikipedia-ios": "[[Translating:WikipediaMobile|Wikipedia iOS]] è la versione specifica per iOS dell'applicazione di Wikipedia per dispositivi mobili",
- "translate-group-desc-wikimedia-mobile-wikisource": "[[Translating:WikisourceMobile|WikisourceMobile]] è un'applicazione multipiattaforma per dispositivi mobili e tavolette per leggere e modificare Wikisource",
- "translate-group-desc-wikimedia-mobile-wiktionary": "[[Translating:WiktionaryMobile|WiktionaryMobile]] è un'applicazione multipiattaforma per dispositivi mobili e tavolette per leggere e modificare Wiktionary",
- "translate-group-desc-wikimediaextensions": "Meta gruppo di messaggi contenente tutti i messaggi per le estensioni di MediaWiki usate dalla [https://wikimediafoundation.org/ Wikimedia Foundation]",
- "translate-group-desc-wikimediaextensions-main": "Meta gruppo di messaggi contenente tutti i messaggi delle estensioni [[Translating:MediaWiki|MediaWiki]] supportate che devono essere tradotte per il [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee Comitato linguistico] di Wikimedia",
- "translategroupdescriptions-desc": "Descrizioni dei gruppi di messaggi dei progetti supportati dalla [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate estensione Translate]."
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/ja.json b/MLEB/Translate/i18n/groupdescriptions/ja.json
deleted file mode 100644
index b15351bb..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/ja.json
+++ /dev/null
@@ -1,63 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Aphaia",
- "Fryed-peach",
- "Hosiryuhosi",
- "Shirayuki",
- "Whym",
- "青子守歌",
- "Macofe"
- ]
- },
- "bw-desc-freecol": "[[Translating:FreeCol|FreeCol]] は、ターン制戦略ゲームです",
- "bw-desc-fudforum": "[[Translating:FUDforum|FUDforum]] は、ウェブ上での議論フォーラムのためのソフトウェアです",
- "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] はウェブ上でのバグ追跡ソフトウェアです",
- "bw-desc-openstreetmap": "[[Translating:OpenStreetMap|OpenStreetMap]] に関連する全メッセージ",
- "bw-desc-osm-site": "[[Translating:OpenStreetMap|OpenStreetMap]] は、編集可能な全世界の地図です",
- "bw-desc-wikiblame": "[[Translating:WikiBlame|WikiBlame]] は、ウィキメディアウィキ内のページの一部の著者を素早く検索できます",
- "translate-group-desc-blockly": "[[Translating:Blockly|Blockly]] のメッセージ群",
- "translate-group-desc-bluespice": "MediaWiki の [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:BlueSpice Blue Spice] 拡張機能群のすべてのメッセージを含む上位メッセージ群",
- "translate-group-desc-collection": "[[Translating:MediaWiki|MediaWiki]] 拡張機能 [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection] のすべてのメッセージを含む上位メッセージ群",
- "translate-group-desc-eol": "[[Translating:EOL|Encyclopedia of Life]] のメッセージ群",
- "translate-group-desc-etherpad-lite": "[[Translating:Etherpad lite|Etherpad lite]] は真のリアルタイム共同編集を実現したエディターです",
- "translate-group-desc-europeana": "[[Translating:Europeana|Europeana]]では、人々がヨーロッパのデジタル文化資源を探索できるようになります。",
- "translate-group-desc-flaggedrevs": "[[Translating:MediaWiki|MediaWiki]] 拡張機能 [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs FlaggedRevs] のすべてのメッセージを含む上位メッセージ群",
- "translate-group-desc-fuel": "[[Translating:FUEL|FUEL]] は、ソフトウェアの翻訳にさらなる一貫性をもたらします",
- "translate-group-desc-ihris": "[[Translating:iHRIS|iHRIS]] のメッセージ群",
- "translate-group-desc-kiwix": "[[Translating:Kiwix|Kiwix]] のメッセージ群",
- "translate-group-desc-mantisbt-plugin-core": "[[Translating:MantisBT|MantisBT]] の中核プラグイン",
- "translate-group-desc-mathjax": "[[Translating:MathJax|MathJax]] は、ウェブ ブラウザー内で数式を表示する、クロス ブラウザー対応の JavaScript ライブラリです",
- "translate-group-desc-mediawiki-core-branch": "[[Translating:MediaWiki|MediaWiki]] 安定版のメッセージ群",
- "translate-group-desc-mediawikiapi": "このメッセージ群は、[[Translating:MediaWiki|MediaWiki]] の現在のアルファ版 ({{CURRENTVERSION}}) 向けの操作 API で使用しているメッセージを含んでいます",
- "translate-group-desc-mediawikicore": "このメッセージ群は、[[Translating:MediaWiki|MediaWiki]] の現在のアルファ版 ({{CURRENTVERSION}}) で使用しているメッセージを含んでいます",
- "translate-group-desc-mediawikiextensions": "サポート対象の [[Translating:MediaWiki|MediaWiki]] 拡張機能のすべてのメッセージを含む上位メッセージ群",
- "translate-group-desc-mediawikiskins": "サポート対象の [[Translating:MediaWiki|MediaWiki]] 外装のすべてのメッセージを含む上位メッセージ群",
- "translate-group-desc-mediawikimostused": "このメッセージ群は、[[Translating:MediaWiki|MediaWiki]] で[https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki もっともよく使われている 500 のメッセージ]を含んでいます",
- "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] は、マイクロファイナンスのための経営情報システムです",
- "translate-group-desc-nfcring-control": "[[Translating:NFC_Ring_Control|NFC Ring Control]] は、NFC タグとやり取りする携帯機器向けアプリです",
- "translate-group-desc-nocc": "[[Translating:NOCC|NOCC]]はウェブメールのクライアントです",
- "translate-group-desc-nodesc": "このメッセージ群には説明がありません",
- "translate-group-desc-openimages-all": "これらのメッセージは、[[Translating:Open Images|Open Images]] プロジェクトの一部です",
- "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] は Flash を使用した OpenStreetMap エディターです",
- "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] はウィキペディア編集ツールの集合体です",
- "translate-group-desc-readerfeedback": "[[Translating:MediaWiki|MediaWiki]] 拡張機能 [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback] のすべてのメッセージを含む上位メッセージ群",
- "translate-group-desc-semantic": "[https://semantic-mediawiki.org/ Semantic MediaWiki] 拡張機能のすべてのメッセージを含む上位メッセージ群",
- "translate-group-desc-translatablepages": "翻訳可能なすべてのページ",
- "translate-group-desc-translate": "MediaWiki 拡張機能 [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate] のすべてのメッセージを含む上位メッセージ群。この拡張機能の[https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary 用語集]を参照して用語を把握してください。",
- "translate-group-desc-tsint": "[//tools.wmflabs.org/ Toolserver] のツールの国際化システムである [[Translating:Intuition|Intuition]] のメッセージ群 (<span class=\"plainlinks\">[[Translating talk:Intuition|サポート]]</span>)",
- "translate-group-desc-universallanguageselector": "MediaWiki の [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector UniversalLanguageSelector] (ULS: ユニバーサル言語選択) 拡張機能および関連するソフトウェア パッケージのすべてのメッセージを含むメタ メッセージ群",
- "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]] はウィキメディア・コモンズやその他のプロジェクト群にファイルをアップロードするためのツールです",
- "translate-group-desc-visualeditor": "MediaWiki の [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:VisualEditor VisualEditor] 拡張機能のすべてのメッセージを含むメタ メッセージ群",
- "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] は、全世界のハイキング、サイクリング、マウンテンバイク、インラインスケートの経路を表示するサービスです。GNU GPL ライセンスを使用します",
- "translate-group-desc-waymarked-trails-help": "Waymarked Trails ウェブサイトのヘルプページ: http://waymarkedtrails.org/help/about",
- "translate-group-desc-wikiaextensions": "[http://www.wikia.com Wikia] で使用されている MediaWiki 拡張機能によってサポートされた、すべてのメッセージからなる上位メッセージ群",
- "translate-group-desc-wikimania-scholarships-app": "[https://scholarships.wikimedia.org/apply ウィキマニア奨学金の申請]関連のメッセージ群",
- "translate-group-desc-wikimedia-mobile": "ウィキメディア・プロジェクト群の携帯機器版アプリケーションのメッセージを含む集約群",
- "translate-group-desc-wikimedia-mobile-wikipedia": "[[Translating:WikipediaMobile|WikipediaMobile]] はウィキペディアを閲覧・編集するためのクロスプラットフォームな携帯機器・タブレット端末向けアプリケーションです",
- "translate-group-desc-wikimedia-mobile-wikisource": "[[Translating:WikisourceMobile|WikisourceMobile]] はウィキソースを閲覧・編集するためのクロスプラットフォームな携帯機器・タブレット端末向けアプリケーションです",
- "translate-group-desc-wikimedia-mobile-wiktionary": "[[Translating:WiktionaryMobile|WiktionaryMobile]] はウィクショナリーを閲覧・編集するためのクロスプラットフォームな携帯機器・タブレット端末向けアプリケーションです",
- "translate-group-desc-wikimediaextensions": "[https://wikimediafoundation.org/ ウィキメディア財団]が使用している、サポート対象の MediaWiki 拡張機能のすべてのメッセージを含む上位メッセージ群",
- "translate-group-desc-wikimediaextensions-main": "ウィキメディアの[https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee 言語委員会]が翻訳を必要とする、サポート対象の[[Translating:MediaWiki|MediaWiki]]拡張機能のすべてのメッセージを含む上位メッセージ群",
- "translategroupdescriptions-desc": "[https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate] 拡張機能で利用できる製品のメッセージ群の説明"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/ka.json b/MLEB/Translate/i18n/groupdescriptions/ka.json
deleted file mode 100644
index 0a47ba80..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/ka.json
+++ /dev/null
@@ -1,22 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "David1010"
- ]
- },
- "bw-desc-freecol": "[[Translating:FreeCol|FreeCol]] არის სტარატეგიული თამაში",
- "bw-desc-openstreetmap": "შეტყობინებების ჯგუფი [[Translating:OpenStreetMap|OpenStreetMap]]-ის ყველა შეტყობინებისათვის",
- "translate-group-desc-collection": "შეტყობინებების მეტა-ჯგუფი, შეიცავს მედიავიკის გაფართოებების ყველა შეტყობინებას [https://www.mediawiki.org/wiki/Extension:Collection Collection]",
- "translate-group-desc-eol": "შეტყობინებათა ჯგუფი [[Translating:EOL|Encyclopedia of Life]]-თვის",
- "translate-group-desc-flaggedrevs": "შეტყობინებების მეტა-ჯგუფი, შეიცავს მედიავიკის გაფართოებების ყველა შეტყობინებას [https://www.mediawiki.org/wiki/Extension:FlaggedRevs FlaggedRevs]",
- "translate-group-desc-ihris": "შეტყობინებათა ჯგუფი [[Translating:iHRIS|iHRIS]]-თვის",
- "translate-group-desc-kiwix": "შეტყობინებათა ჯგუფი [[Translating:Kiwix|Kiwix]]-თვის",
- "translate-group-desc-mantisbt-plugin-core": "ძირითადი პლაგინი [[Translating:MantisBT|MantisBT]]-თვის",
- "translate-group-desc-mediawiki-core-branch": "შეტყობინებები [[Translating:MediaWiki|მედიავიკის]] სტაბილური ვერსიისათვის",
- "translate-group-desc-mediawikiextensions": "შეტყობინებების მეტა-ჯგუფი, შეიცავს [[Translating:MediaWiki|მედიავიკის]] მხარდაჭერილი გაფართოებების ყველა შეტყობინებას",
- "translate-group-desc-nodesc": "ამ ჯგუფის შეტყობინებებისათვის აღწერა არ არის ხელმისაწვდომი",
- "translate-group-desc-readerfeedback": "შეტყობინებების მეტა-ჯგუფი, შეიცავს მედიავიკის გაფართოებების ყველა შეტყობინებას [https://www.mediawiki.org/wiki/Extension:ReaderFeedback ReaderFeedback]",
- "translate-group-desc-semantic": "შეტყობინებების მეტა-ჯგუფი, შეიცავს ყველა გაფართოების ყველა შეტყობინებას [https://semantic-mediawiki.org/ Semantic MediaWiki]",
- "translate-group-desc-translatablepages": "ყველა თარგმნადი გვერდი",
- "translate-group-desc-translate": "შეტყობინებების მეტა-ჯგუფი, შეიცავს მედიავიკის გაფართოებების ყველა შეტყობინებას [https://www.mediawiki.org/wiki/Extension:Translate თარგმნა]; გთხოვთ, გაეცნოთ მისი [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary ტერმინების ლექსიკონს]"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/kbd-cyrl.json b/MLEB/Translate/i18n/groupdescriptions/kbd-cyrl.json
deleted file mode 100644
index d2d1b40e..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/kbd-cyrl.json
+++ /dev/null
@@ -1,8 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Тамэ Балъкъэрхэ"
- ]
- },
- "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] и сэбэпыр псынщIэу къегъэгъуэт напэкIуэцIхэм я тхакIуэхэр Википедие проектым."
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/km.json b/MLEB/Translate/i18n/groupdescriptions/km.json
deleted file mode 100644
index a913ccf8..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/km.json
+++ /dev/null
@@ -1,8 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "វ័ណថារិទ្ធ"
- ]
- },
- "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] អាចស្វែងរកយ៉ាងលឿន ​អ្នកនិពន្ធនៃទំព័រមួយ​ក្នុងវីគីនៃ Wikimedia ។"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/kn.json b/MLEB/Translate/i18n/groupdescriptions/kn.json
deleted file mode 100644
index 54515ad0..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/kn.json
+++ /dev/null
@@ -1,8 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "VASANTH S.N."
- ]
- },
- "translate-group-desc-translatablepages": "ಭಾಷಾಂತರಿಸಬಹುದಾದ ಎಲ್ಲಾ ಪುಟಗಳು"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/ko.json b/MLEB/Translate/i18n/groupdescriptions/ko.json
deleted file mode 100644
index 9562dc43..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/ko.json
+++ /dev/null
@@ -1,60 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Kwj2772",
- "ToePeu",
- "아라",
- "Priviet",
- "Hym411"
- ]
- },
- "bw-desc-freecol": "[[Translating:FreeCol|FreeCol]]은 턴제 전략 게임입니다",
- "bw-desc-fudforum": "[[Translating:FUDforum|FUDforum]]는 웹 기반 토론 포럼 소프트웨어입니다",
- "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]]는 웹 기반 이슈 추적 소프트웨어입니다",
- "bw-desc-openstreetmap": "[[Translating:OpenStreetMap|OpenStreetMap]]과 관련된 메시지입니다",
- "bw-desc-osm-site": "[[Translating:OpenStreetMap|OpenStreetMap]]은 자유롭게 편집할 수 있는 세계 지도입니다",
- "bw-desc-wikiblame": "[[Translating:WikiBlame|WikiBlame]]은 신속하게 위키미디어 위키에서 문서 일부의 저자를 찾을 수 있습니다",
- "translate-group-desc-blockly": "[[Translating:Blockly|블록리]]에 대한 메시지 그룹",
- "translate-group-desc-collection": "미디어위키 확장 기능 [https://www.mediawiki.org/wiki/Extension:Collection Collection]의 모든 메시지를 포함하는 메타 그룹입니다.",
- "translate-group-desc-eol": "[[Translating:EOL|생명의 백과사전]]에 대한 메시지 그룹입니다",
- "translate-group-desc-etherpad-lite": "[[Translating:Etherpad lite|Etherpad lite]]은 실시간 공동 작업 편집기입니다",
- "translate-group-desc-europeana": "[[Translating:Europeana|유로피니아 1914-1918]]은 제1차 세계 대전에 대한 이야기, 영화나 역사적 자료가 있는 웹사이트입니다",
- "translate-group-desc-flaggedrevs": "미디어위키 확장 기능 [https://www.mediawiki.org/wiki/Extension:FlaggedRevs FlaggedRevs]의 모든 메시지를 포함하는 메타 그룹입니다.",
- "translate-group-desc-fuel": "[[Translating:FUEL|FUEL]]은 소프트웨어 번역에 더 많은 일관성을 제공합니다",
- "translate-group-desc-huggle": "[[Translating:Huggle|Huggle]]은 위키미디어 프로젝트에서의 문서 훼손 행위에 빠르게 대처하기 위해 제작된 빠른 차이 보기 브라우저 애플리케이션입니다",
- "translate-group-desc-ihris": "[[Translating:iHRIS|iHRIS]]에 대한 메시지 그룹입니다",
- "translate-group-desc-kiwix": "[[Translating:Kiwix|Kiwix]]에 대한 메시지 그룹입니다",
- "translate-group-desc-mantisbt-plugin-core": "[[Translating:MantisBT|MantisBT]]에 대한 핵심 플러그인입니다",
- "translate-group-desc-mathjax": "[[Translating:MathJax|MathJax]]는 웹 브라우저에서 수식 표기를 위한 크로스-브라우저 자바스크립트 라이브러리입니다",
- "translate-group-desc-mediawiki-core-branch": "[[Translating:MediaWiki|미디어위키]]의 안정 버전의 메시지",
- "translate-group-desc-mediawikicore": "이 메시지 그룹에는 [[Translating:MediaWiki|미디어위키]]의 현재 알파 버전({{CURRENTVERSION}})이 사용하는 메시지가 들어 있습니다",
- "translate-group-desc-mediawikiextensions": "여기서 지원하는 [[Translating:MediaWiki|미디어위키]]의 확장 기능에 있는 모든 메시지의 메타 그룹입니다.",
- "translate-group-desc-mediawikimostused": "이 메시지 그룹은 [[Translating:MediaWiki|미디어위키]]에서 [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 가장 자주 쓰이는 메시지 500개]를 포함하고 있습니다.",
- "translate-group-desc-mifos": "[[Translating:Mifos|미포스]]는 소액 금융 경영 정보 시스템입니다",
- "translate-group-desc-nocc": "[[Translating:NOCC|NOCC]]는 웹 메일 클라이언트입니다",
- "translate-group-desc-nodesc": "이 메시지 그룹에 대한 설명이 없습니다.",
- "translate-group-desc-openimages-all": "이 메시지는 [[Translating:Open Images|Open Images]] 프로젝트의 일부분입니다.",
- "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]]는 플래시 기반 OpenStreetMap 편집기입니다",
- "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]]은 위키백과에서 편집할 수 있는 도구 모음입니다",
- "translate-group-desc-readerfeedback": "미디어위키 확장 기능 [https://www.mediawiki.org/wiki/Extension:ReaderFeedback ReaderFeedback]의 모든 메시지를 포함하는 메타 그룹입니다.",
- "translate-group-desc-semantic": "모든 [https://semantic-mediawiki.org/ 시맨틱 미디어위키] 확장 기능의 모든 메시지를 포함하는 메타 그룹입니다.",
- "translate-group-desc-translatablepages": "모든 번역 가능한 문서",
- "translate-group-desc-translate": "미디어위키 확장 기능 [https://www.mediawiki.org/wiki/Extension:Translate Translate]의 모든 메시지를 포함하는 메타 그룹입니다. 이 확장 기능의 [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary 용어집]을 참고하여 용어를 파악하세요.",
- "translate-group-desc-tsint": "[[Translating:Intuition|Intuition]] 메시지 그룹, [//tools.wmflabs.org/ 툴서버] 도구용 i18n 시스템 for (<span class=\"plainlinks\">[[Translating talk:Intuition|지원]]</span>)",
- "translate-group-desc-universallanguageselector": "미디어위키 확장 기능 [https://www.mediawiki.org/wiki/Extension:UniversalLanguageSelector 보편언어선택기](ULS)을 위한 모든 메시지를 포함하는 메타 메시지 그룹와 연관된 소프트웨어 패키지",
- "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]]는 위키미디어 공용과 다른 위키미디어 프로젝트에 파일을 올리기 위한 도구입니다",
- "translate-group-desc-visualeditor": "미디어위키 확장 기능 [https://www.mediawiki.org/wiki/Extension:VisualEditor 시각편집기]와 관련된 패키지에 대한 모든 메시지를 포함하고 있는 메타 메시지 그룹",
- "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]]는 전세계 하이킹, 자전거 타기, 산악 자전거, 인라인 스케이팅 경로를 보여주는 서비스입니다. GNU GPL 라이선스를 사용합니다.",
- "translate-group-desc-waymarked-trails-help": "Waymarked Trails 웹 사이트의 도움말 페이지입니다: http://waymarkedtrails.org/help/about",
- "translate-group-desc-wikiaextensions": "[http://www.wikia.com 위키아]에서 쓰이며 여기서 지원하는 미디어위키 확장 기능의 모든 메시지를 포함한 메타 그룹입니다.",
- "translate-group-desc-wikimania-scholarships-app": "[https://scholarships.wikimedia.org/apply Wikimania Scholarship application]에 대한 메시지 그룹",
- "translate-group-desc-wikimedia-mobile": "위키미디어 프로젝트에 대한 모바일 애플리케이션을 포함하는 집계한 메시지 그룹입니다",
- "translate-group-desc-wikimedia-mobile-wikipedia": "[[Translating:WikipediaMobile|위키백과모바일]]은 위키백과 문서를 읽고 기여하는 용도로 쓰이는 크로스 플랫폼 모바일 및 태블릿 어플리케이션입니다",
- "translate-group-desc-wikimedia-mobile-wikipedia-android": "[[Translating:WikipediaMobile|위키백과 안드로이드]]는 위키백과 모바일 앱의 안드로이드에 특화된 버전입니다",
- "translate-group-desc-wikimedia-mobile-wikipedia-ios": "[[Translating:WikipediaMobile|위키백과 iOS]]는 위키백과 모바일 앱의 iOS에 특화된 버전입니다",
- "translate-group-desc-wikimedia-mobile-wikisource": "[[Translating:WikisourceMobile|위키문헌모바일]]은 위키문헌 문서를 읽고 기여하는 용도로 쓰이는 크로스 플랫폼 모바일 및 태블릿 어플리케이션입니다",
- "translate-group-desc-wikimedia-mobile-wiktionary": "[[Translating:WiktionaryMobile|위키낱말사전모바일]]은 위키낱말사전 문서를 읽고 기여하는 용도로 쓰이는 크로스 플랫폼 모바일 및 태블릿 어플리케이션입니다.",
- "translate-group-desc-wikimediaextensions": "[https://wikimediafoundation.org/ 위키미디어 재단]에서 쓰이며 여기서 지원하는 미디어위키 확장 기능의 모든 메시지를 포함한 메타 그룹입니다.",
- "translate-group-desc-wikimediaextensions-main": "위키미디어 [https://meta.wikimedia.org/wiki/Language_committee 언어 위원회]가 번역을 요구하는 미디어위키 확장 기능의 모든 메시지를 포함한 메타 그룹입니다.",
- "translategroupdescriptions-desc": "[https://mediawiki.org/wiki/Extension:Translate 번역] 확장 기능에서 지원하는 제품의 메시지 그룹 설명입니다"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/ksh.json b/MLEB/Translate/i18n/groupdescriptions/ksh.json
deleted file mode 100644
index 807e4a97..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/ksh.json
+++ /dev/null
@@ -1,63 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Purodha",
- "Reedy",
- "Lokal Profil"
- ]
- },
- "bw-desc-freecol": "<i lang=\"en\" xml:lang=\"en\">[[Translating:FreeCol|FreeCol]]</i> es e Schtrattejihschpell, woh mer afwääßelnd bei trick.",
- "bw-desc-fudforum": "[http://fudforum.org/ FUDforum], e Forumsprojramm för et Web, jeschrevve en dä Projrammiershprooch <i lang=\"en\">PHP</i>.",
- "bw-desc-mantisbt": "<i lang=\"en\" xml:lang=\"en\" dir=\"ltr\">[[Translating:MantisBT|MantisBT]]</i> es e frei Süßtehm för övver et Web Fählere un Fählermäldonge ze verwallde.",
- "bw-desc-openstreetmap": "En dä Jropp sen Täxde un Nohreeschte em Zosammehang, di met <i lang=\"en\">[[Translating:OpenStreetMap|OpenStreetMap]]</i> shtonn.",
- "bw-desc-osm-site": "Heh di Jropp hät de Nohreeschte uß dä Bovverfläsch vun <i lang=\"en\">[[Translating:Open Street Map|Open Street Map]]</i>.",
- "bw-desc-wikiblame": "[[Translating:WikiBlame|WikiBlame]] kann flöck de Schriiver vun enem Stöck vun ener Sigg en enem Wikimedia Wiki fenge.",
- "translate-group-desc-blockly": "En Jropp vun Täxte un Nohreeschte för dat Projramm [[Translating:Blockly|Klötzjer]] ze övversäze",
- "translate-group-desc-bluespice": "Dat heh es en Sammeljropp met all de Täxte un Nohreeschte för dem [[Translating:MediaWiki|MeedijaWikki]] sing [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:BlueSpice <i lang=\"en\" xml:lang=\"en\" dir=\"ltr\" title=\"„Blou Jewöhz“\">Blue-Spice</i>]-Zohsazprojramme.",
- "translate-group-desc-collection": "Heh di Sammeljropp hät de janze Täxte un Nohreschte vun alle Aandeile vum [[Translating:MediaWiki|MeedijaWikki]] singem Zohsatzprojramm-Pöngel <i lang=\"en\" xml:lang=\"en\" dir=\"ltr\" title=\"„Sammlong“\">[https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection]</i>.",
- "translate-group-desc-eol": "Täxte un Nohreeschte för [[Translating:EOL|et Wööterbooch vum Levve]]",
- "translate-group-desc-etherpad-lite": "<i lang=\"en\">[[Translating:Etherpad lite|Etherpad lite]]</i> es e Projramm, woh en Aanzahl Minsche werklesch zosamme un em sällve Momang aan enem Täx schriive künne.",
- "translate-group-desc-europeana": "<i lang=\"en\" xml:lang=\"en\" dir=\"ltr\">[[Translating:Europeana|Europeana 1914-1918]]</i> es en Wäbßait med Verzäll, Fellme un hestohresche Mattrejahlejje övver der eezde Wältkrehsch.",
- "translate-group-desc-flaggedrevs": "Heh di Sammeljropp hät de janze Täxte un Nohreschte vun alle Aandeile vum [[Translating:MediaWiki|MeedijaWikki]] singem Zohsatzprojramm-Pöngel <i lang=\"en\" xml:lang=\"en\" dir=\"ltr\">[https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs Flagged Revsisions]</i>.",
- "translate-group-desc-fuel": "[[Translating:FUEL|FUEL]] sull mieh Einheitleschkeit en de Övversäzonge vun Prjojramme bränge.",
- "translate-group-desc-huggle": "<i lang=\"en\" xml:lang=\"en\" dir=\"ltr\" title=\"Tukelle\">[[Translating:Huggle|Huggle]]</i> es en Aanwändong för em Brauser flöck Ongerscheide zwesche Väsjohne vun Sigge aanzezeije, un esu met Quatsch- un Kappottmaacherei en Wikkis ömjonn ze künne.",
- "translate-group-desc-ihris": "En Jrop Täxte un Nohreeschte för [[Translating:iHRIS|iHRIS]]",
- "translate-group-desc-inaturalist": "<i lang=\"en\" xml:lang=\"en\" dir=\"ltr\">[[Translating:INaturalist|iNaturalist]]</i> es en Wäbßait, öm opzezäijschne, wat mer en de Natuhr sühd, öm annder Frünnde vun de Natuhr ze träffe, un jädd övver de Wäld on de Natuhr nohzolässe un liehre ze künne.",
- "translate-group-desc-kiwix": "De Täxte un Nohreeschte vum [[Translating:Kiwix|Kiwix]]",
- "translate-group-desc-mantisbt-plugin-core": "Ene Houp-Zohsaz för [[Translating:MantisBT|MantisBT]]",
- "translate-group-desc-mathjax": "<i lang=\"en\" xml:lang=\"en\">[[Translating:MathJax|MathJax]]</i> es en JavaSkrep-Projrammbiblijoteek, di mathemattesche Krohm en jeedem Brauser aanzeije kann.",
- "translate-group-desc-mediawiki-core-branch": "Täxde un Nohreeschde för en stabile Version vum [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mediawikiapi": "Heh di Jropp vun Täxte un Nohreeschte hät alles, wat för de aktälle Pröhfväsjohn fum [[Translating:MediaWiki|MeedijaWikki]] ({{CURRENTVERSION}}) singe Projramm_Schnettschtäll för Axjuhne jebruch weed.",
- "translate-group-desc-mediawikicore": "En dä Jropp hee sin all de Täxte un Nohreeschte uß däm MediaWiki singe aktoälle <i lang=\"de\">alpha</i>-Version ({{CURRENTVERSION}})",
- "translate-group-desc-mediawikiextensions": "Hee di Sammeljropp hät de janze Täxte un Nohreschte vun alle Zohsatzprojramme vum MediaWiki",
- "translate-group-desc-mediawikiskins": "Hee di Sammeljropp hät de janze Täxte un Nohreschte vun alle Bedehnbovverfläsche vum [[Translating:MediaWiki|MeedijaWikki]].",
- "translate-group-desc-mediawikimostused": "En dä Jropp heh sin dem [[Translating:MediaWiki|MeedijaWikki]] sing [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki fönnef hondert am mihßte jebruchte Täxte un Nohreeschte] dren.",
- "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] es e Süßteem för Enfomzjuhne övver klein Jeldbedrääsch ze verwallde.",
- "translate-group-desc-nfcring-control": "<i lang=\"en\" xml:lang=\"en\" dir=\"ltr\" title=\"Near Field Communication Ring Control\">[[Translating:NFC_Ring_Control|NFC Ring Control]] es enn Aanwändong fö Mobihl-Apparahte, öm met <i lang=\"en\" xml:lang=\"en\" dir=\"ltr\" title=\"Near Field Communication\">NFC</i> tags en Verbendong ze trädde.",
- "translate-group-desc-nocc": "<i lang=\"en\">[http://nocc.sourceforge.net NOCC]</i> es e Projramm för övver et Web <i lang=\"en\">e-mail</i> ze krijje, ze schriive, un ze verwallde. Wann Üsch jät opfällt, un wann_er Froore hat, doht dat op dä Sigg „[[Support|{{int:bw-mainpage-support-title}}]]“ opschriive.",
- "translate-group-desc-nodesc": "Mer han kein Enfommazjuhne övver heh di Jropp vun Nohreeschte un Täxte",
- "translate-group-desc-openimages-all": "Heh di Täxde un Nohreeschde sin Deil vum Projäk <i lang=\"en\">[[Translating:Open Images|Open Images]]</i>.",
- "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] es e Projramm för <i lang=\"en\">OpenStreetMap</i> ze beärbeide wad op <i lang=\"en\">Flash</i> läuf.",
- "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] es en Versammlong vun Projramme un Wärkzüsch för en de Wikipedija un ander WikiMedia Wikis ze ändere.",
- "translate-group-desc-readerfeedback": "Heh di Sammeljropp hät de janze Täxte un Nohreschte vun alle Aandeile vum [[Translating:MediaWiki|MeedijaWikki]] singem Pöngel vun Zohsatzprojramme för [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback Röckmälldonge vum Lässer].",
- "translate-group-desc-semantic": "En Sammeljropp för all de Täxte un Nohreeschte vum [https://semantic-mediawiki.org/ Semantic MediaWiki] un sing Zohsazprojramme",
- "translate-group-desc-translatablepages": "All övversäzbaa Sigge",
- "translate-group-desc-translate": "Heh di Sammeljropp hät de janze Täxte un Nohreschte vun alle Aandeile vum [[Translating:MediaWiki|MeedijaWikki]] singem Pöngel Zohsatzprojramme mem Name <i lang=\"en\" xml:lang=\"en\" dir=\"ltr\" title=\"„Övversäzze“\">[https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate]</i>. Sidd esu jood un doht Üsch aan [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary heh di Leß meet Wööter un Bejreffe] hallde.",
- "translate-group-desc-tsint": "Heh di Jropp vun Täxte un Nohreeschte es för <i lang=\"en\" xml:lang=\"en\" dir=\"ltr\" title=\"Intuition - Internationalization for tools\">[[Translating:Intuition|Intuition]]</i>, enem Süßtehm för et Övversäze vun Projramme, di op <i lang=\"en\" xml:lang=\"en\" dir=\"ltr\" title=\"„Labor för de Wärkzüsch“\">[//tools.wmflabs.org/ Wikimedia Tool Labs] loufe.\n(<span class=\"plainlinks\">[[Translating talk:Intuition|Ongerschtözong un Hölp]]</span>)",
- "translate-group-desc-universallanguageselector": "Sammeljropp för di Täxte un Nohreeschte vum Zohsazprojramm <i lang=\"en\" xml:lang=\"en\" dir=\"ltr\" title=\"„Unniväsälle Schprohche-Ußsöhker“\">[https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector UniversalLanguageSelector] (ULS)</i> vum [[Translating:MediaWiki|MeedijaWikki]] un verwandte Projrammpakätte.",
- "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]] es e Wärkzüsch för Datteije op <i lang=\"en\">Wikimedia Commons</i> un ander Projäkte vun de Wikimedia Schteftong huh_ze_laade.",
- "translate-group-desc-visualeditor": "Sammeljropp met alle Täxte un Nohreeschte för et Zohsazprojramm <i lang=\"en\" xml:lang=\"en\">[https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:VisualEditor VisualEditor]</i> för [[Translating:MediaWiki|MeedijaWikki]], un wadd aan Projramme domet zesamme hängk.",
- "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] es ene Deens, dä zeisch Wanderwääje, Raddwääje, Wääje för et Mauntenbaike, un Rollschohwäje en de janze Wält onger dä alljemeine öffentlesche Lizänz vun dä GNU.",
- "translate-group-desc-waymarked-trails-help": "De Hölpsigge uß de „Waymarked Trails“-Websigge: http://waymarkedtrails.org/help/about",
- "translate-group-desc-wikiaextensions": "Hee di Sammeljropp hät de Täxte un Nohreschte vun alle Zohsatzprojramme vum [[Translating:MediaWiki|MediaWiki]], di mer hee ongershtöze donn, un di bei [http://www.wikia.com Wikia] jebruch wäde.",
- "translate-group-desc-wikimania-scholarships-app": "Täte un Nohreeschte för de [https://scholarships.wikimedia.org/apply Aandrääsch op Schtipändije un Ongerschtözong för de <i lang=\"en\" xml:lang=\"en\">Wikimania</i>-Kumferäns]",
- "translate-group-desc-wikimedia-mobile": "Hee di Sammeljropp hät de Täxte un Nohreschte vun de mobiile Projäkte vun de Wikkimeedija-Schtefftong.",
- "translate-group-desc-wikimedia-mobile-wikipedia": "[[Translating:WikipediaMobile|WikipediaMobile]] es e Projramm för ongerscheidlijje Bedriefsyßteeme för de Wikipeedija op draachbaare Jerääte un Tablät-PCs ze lässe un ze schrieve.",
- "translate-group-desc-wikimedia-mobile-wikipedia-android": "<i lang=\"en\" xml:lang=\"en\" dir=\"ltr\">[[Translating:WikipediaMobile|Wikipedia Android]]</i> es de Väsjohn vun de mobihle Äpp vun de Wikkipeedija för dat Süßehm <i lang=\"en\" xml:lang=\"en\" dir=\"ltr\">Android</i>.",
- "translate-group-desc-wikimedia-mobile-wikipedia-ios": "<i lang=\"en\" xml:lang=\"en\" dir=\"ltr\">[[Translating:WikipediaMobile|Wikipedia iOS]]</i> es de Väsjohn vun de mobihle Äpp vun de Wikkipeedija schpezjäll för dat Süßtehm <i lang=\"en\" xml:lang=\"en\">iOS</i>.",
- "translate-group-desc-wikimedia-mobile-wikisource": "[[Translating:WikisourceMobile|WikisourceMobile]] es e Projramm för ongerscheidlijje Bedriefsyßteeme för et QuälleWikki op draachbaare Jerääte un Tablät-PCs ze lässe un ze schrieve.",
- "translate-group-desc-wikimedia-mobile-wiktionary": "[[Translating:WiktionaryMobile|WiktionaryMobile]] es e Projramm för ongerscheidlijje Bedriefsyßteeme för et WikkiWööterbooch op draachbaare Jerääte un Tablät-PCs ze lässe un ze schrieve.",
- "translate-group-desc-wikimediaextensions": "Hee di Sammeljropp hät de Täxte un Nohreschte vun alle Zohsatzprojramme vum [[Translating:MediaWiki|MehdijaWikki]], di mer hee ongershtöze donn, un di en en Wikis vun de <i lang=\"en\">[https://wikimediafoundation.org/ Wikimedia Foundation]</i> jebruch wäde.",
- "translate-group-desc-wikimediaextensions-main": "En heh dä Sammeljropp sin all de Täxte un Nohreeschte us dä Zohsazprojramme vum [[Translating:MediaWiki|MeedijaWikki]], di et [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee Kumitte för de Schhprohche] vun de Wikkimeedija Schteftong övversaz han well.",
- "translategroupdescriptions-desc": "Enfomazjuhne övver de Jroppe vun Täxte un Nohreeschte, di vun däm Zohsazprojramm <i lang=\"en\" xml:lang=\"en\" dir=\"ltr\" title=\"„Övversäzze“\">[https://mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate]</i> för [[Translating:MediaWiki|MeedijaWikki]] ongerschtöz wääde."
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/lb.json b/MLEB/Translate/i18n/groupdescriptions/lb.json
deleted file mode 100644
index 2a0f012f..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/lb.json
+++ /dev/null
@@ -1,52 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Kghbln",
- "Les Meloures",
- "Robby",
- "Soued031"
- ]
- },
- "bw-desc-freecol": "Ier Dir ufänkt FreeCol an Är Sprooch z'iwwersetzen, liest w.e.g. [[Translating:FreeCol]]. Freecol benotzt d'GPL-Lizenz.",
- "bw-desc-fudforum": "[http://fudforum.org/ FUDforum], e Webforum deen a PHP geschriwwen ass.",
- "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] ass eng webbaséierte Bug-Tracking-Software.",
- "bw-desc-openstreetmap": "All Messagen a Relatioun mat [[Translating:OpenStreetMap|OpenStreetMap]]",
- "bw-desc-osm-site": "[[Translating:OpenStreetMap|OpenStreetMap]] ass eng ännerbar Kaart vun der ganzer Welt",
- "bw-desc-wikiblame": "[[Translating:WikiBlame|WikiBlame]] erlaabt et fir d'Auteure vun enger Säit op enger Wikimedia-Wiki séier ze fannen.",
- "translate-group-desc-blockly": "E Grupp vu Message fir [[Translating:Blockly|Blockly]]",
- "translate-group-desc-collection": "Meta-Grupp vun alle Systemmessage fir d'[[Translating:MediaWiki|MediaWiki]]-Erweiderung [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Sammlung]",
- "translate-group-desc-eol": "Message fir [[Translating:EOL|Encyclopedia of Life]]",
- "translate-group-desc-etherpad-lite": "[[Translating:Etherpad lite|Etherpad lite]] ass e richtege kollaborativen Editeur an Echtzäit",
- "translate-group-desc-europeana": "[[Translating:Europeana|Europeana 1914-1918]] ass en Internetsite mat Serien, Filmer an historeschem Material iwwer den 1. Weltkrich",
- "translate-group-desc-flaggedrevs": "Meta-Grupp vun alle Systemmessage fir d'[[Translating:MediaWiki|MediaWiki]]-Erweiderung [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs Markéiert Versiounen]",
- "translate-group-desc-fuel": "[[Translating:FUEL|FUEL]] bréngt méi Koherenz an d'Softwareiwwersetzung",
- "translate-group-desc-huggle": "[[Translating:Huggle|Huggle]] ass eng séier Applikatioun fir Ënnerscheeder am Browser ze weise fir esou Vandalismus op Wikimedia-Projeten bäizekommen",
- "translate-group-desc-ihris": "Message fir [[Translating:iHRIS|iHRIS]]",
- "translate-group-desc-kiwix": "Message fir [[Translating:Kiwix|Kiwix]]",
- "translate-group-desc-mantisbt-plugin-core": "En Haapt-Plugin fir [[Translating:MantisBT|MantisBT]]",
- "translate-group-desc-mediawiki-core-branch": "Message fir eng stabil Versioun vu [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mediawikicore": "An dëser Grupp mat Message sinn d'Messagen aus der aktueller alpha-Versioun vu MediaWiki ({{CURRENTVERSION}}) dran",
- "translate-group-desc-mediawikiextensions": "An dësem Grupp sinn all Systemmessage vun den ënnerstetzten Erweiderunge vu [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mediawikimostused": "An dësem Grupp sinn déi [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 am dackste gebrauchte Systemmessagen] vu [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] ass e Managementinformatiounssystem fir Mikrofinanzinstitutiounen",
- "translate-group-desc-nocc": "[http://nocc.sourceforge.net NOCC] ass e Webmail-Client deen a PHP geschriwen ass. Wann dir Problemer oder Froen domat hutt da gitt w.e.g. op [[Support]].",
- "translate-group-desc-nodesc": "Fir dëse Grupp vu Messagen ass keng Beschreiwung disponibel.",
- "translate-group-desc-openimages-all": "Dës Message sinn en Deel vum [[Translating:Open Images|Open Images]]-Projet",
- "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] ass en OpenStreetMap-Editeur deen op Flash baséiert",
- "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] ass eng Sammlung vu Funktioune fir op Wikipedia Ännerungen ze maachen",
- "translate-group-desc-readerfeedback": "Meta-Grupp vun alle Systemmessage fir d'[[Translating:MediaWiki|MediaWiki]]-Erweiderung [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback Feedback vun de Lieser]",
- "translate-group-desc-semantic": "An dësem Meta-Grupp sinn all Systemmessage fir d'Erweiderunge vu [https://semantic-mediawiki.org/ Semantic MediaWiki]",
- "translate-group-desc-translatablepages": "All iwwersetzbar Säiten",
- "translate-group-desc-translate": "Meta-Grupp vun alle Systemmessage fir d'[[Translating:MediaWiki|MediaWiki]]-Erweiderung [https://www.mediawiki.org/wiki/Extension:Translate Iwwersetzen]; familiariséiert Iech w.e.g. mat dem [https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Extension:Translate/Glossary Glossaire]",
- "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]] ass en Tool fir Fichieren op Wikimedia Commons an aner Wikimedia Projeten eropzelueden",
- "translate-group-desc-waymarked-trails-help": "D'Hëllefsäite vun de 'Waymarked Trails' Internetsiten: http://waymarkedtrails.org/help/about",
- "translate-group-desc-wikiaextensions": "Meta-Grupp vun alle Systemmessage vun den ënnerstëtzte [[Translating:MediaWiki|MediaWiki]]-Erweiderungen, déi vu [http://www.wikia.com Wikia] genotzt ginn",
- "translate-group-desc-wikimania-scholarships-app": "Grupp vu Message fir [https://scholarships.wikimedia.org/apply Ufroe fir Wikimania-Boursen]",
- "translate-group-desc-wikimedia-mobile": "Zesummegesate Grupp vu Message fir déi mobil Applikatioune fir Wikimedia Projeten",
- "translate-group-desc-wikimedia-mobile-wikipedia-android": "[[Translating:WikipediaMobile|Wikipedia Android]] ass déi spezifesch Versioun vun der Wikipedia-Mobile-App fir Android",
- "translate-group-desc-wikimedia-mobile-wikipedia-ios": "[[Translating:WikipediaMobile|Wikipedia iOS]] ass déi spezifesch Versioun vun der Wikipedia-Mobile-App fir iOS",
- "translate-group-desc-wikimedia-mobile-wikisource": "[[Translating:WikisourceMobile|WikisourceMobile]] ass eng plattformonofhängeg Mobil- an Tabletapplicatioun fir Wikisource ze liesen an dran z'änneren",
- "translate-group-desc-wikimediaextensions": "Meta-Grupp vun all Systemmessage vun den ënnerstëtzte [[Translating:MediaWiki|MediaWiki]]-Erweiderungen, déi vun der [https://wikimediafoundation.org/ Wikimedia Foundation] benotzt ginn",
- "translate-group-desc-wikimediaextensions-main": "Meta-Grupp vun alle Systemmessage vun den ënnerstëtzte [[Translating:MediaWiki|MediaWiki]]-Erweiderungen, déi vum [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee Wikimedia Sprooche-Comité] gefrot si fir iwwersat ze ginn",
- "translategroupdescriptions-desc": "Beschreiwung vun de Gruppe vu Message vu Produkter, déi vun der Programmerweiderung [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Iwwersetzen] ënnerstëtzt ginn"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/lrc.json b/MLEB/Translate/i18n/groupdescriptions/lrc.json
deleted file mode 100644
index b1fa3cb6..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/lrc.json
+++ /dev/null
@@ -1,8 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Mogoeilor"
- ]
- },
- "translate-group-desc-translatablepages": "همه بلگیا لرسنی"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/lt.json b/MLEB/Translate/i18n/groupdescriptions/lt.json
deleted file mode 100644
index 0b8ffc5e..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/lt.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Perkunas",
- "Tomasdd",
- "Lokal Profil"
- ]
- },
- "bw-desc-freecol": "Prieš verčiant FreeCol į jūsų kalbą, skaitykite [[Translating:FreeCol]]. FreeCol naudoja GPL licenciją.",
- "bw-desc-fudforum": "[http://fudforum.org/ FUDforum], PHP kalba parašytas internetinis forumas.",
- "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] yra nemokama klaidų stebėjimo sistema. [[Support]] puslapyje prašome pranešti bet kokius netikslumus ar klaidas.",
- "bw-desc-osm-site": "[[Translating:OpenStreetMap|OpenStreetMap]] - tai redaguojamas pasaulio žemėlapis",
- "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] padeda greitai surasti puslapio autorių įvairuose Vikimedia projektuose.",
- "translate-group-desc-nocc": "[http://nocc.sourceforge.net NOCC] yra elektroninio pašto klientas, parašytas PHP kodu. [[Support]] prašome pranešti apie bet kokias problemas ar klaidas."
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/lv.json b/MLEB/Translate/i18n/groupdescriptions/lv.json
deleted file mode 100644
index 7c1809dc..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/lv.json
+++ /dev/null
@@ -1,8 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Papuass"
- ]
- },
- "translate-group-desc-translatablepages": "Visas tulkojamās lapas"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/mk.json b/MLEB/Translate/i18n/groupdescriptions/mk.json
deleted file mode 100644
index 2994b690..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/mk.json
+++ /dev/null
@@ -1,62 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Bjankuloski06",
- "Macofe"
- ]
- },
- "bw-desc-freecol": "Пред да го преведете FreeCol на вашиот јазик, прво прочитајте ја страницата [[Translating:FreeCol]]. Freecol користи општа јавна лиценца (GPL).",
- "bw-desc-fudforum": "[http://fudforum.org/ FUDforum], форум напишан во PHP.",
- "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] е слободен семрежен систем за следење на бубачки (грешки).",
- "bw-desc-openstreetmap": "Група на сите пораки за [[Translating:OpenStreetMap|OpenStreetMap]]",
- "bw-desc-osm-site": "Оваа група пораки содржи посреднички пораки за [[Translating:Open Street Map|Open Street Map]].\nПогледајте ја [http://unicode.org/repos/cldr-tmp/trunk/diff/supplemental/language_plural_rules.html#{{UILANGCODE}} CLDR страницата на Уникод за објаснение за множинските клучеви].",
- "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] за многу кусо време може да ги пронајде авторите на некоја страница на едно вики.",
- "translate-group-desc-blockly": "Група пораки за [[Translating:Blockly|Блокли]]",
- "translate-group-desc-bluespice": "Метагрупа на пораки што ги содржи сите пораки за додатоците на [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:BlueSpice Blue Spice] за [[Translating:MediaWiki|МедијаВики]]",
- "translate-group-desc-collection": "Мета-група која ги содржи сите пораки за додатокот [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Збирка] за [[Translating:MediaWiki|МедијаВики]]",
- "translate-group-desc-eol": "Група пораки за [[Translating:EOL|Енциклопедија на живиот свет]] (Encyclopedia of Life, EOL)",
- "translate-group-desc-etherpad-lite": "[[Translating:Etherpad lite|Etherpad lite]] е соработен уредувач во живо (сосема)",
- "translate-group-desc-europeana": "[[Translating:Europeana|Europeana 1914-1918]] е портал со приказни, филмови и историски материјали за Првата светска војна",
- "translate-group-desc-flaggedrevs": "Мета-група која ги содржи сите пораки за додатокот на [[Translating:MediaWiki|МедијаВики]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs Означени преработки] (FlaggedRevs)",
- "translate-group-desc-fuel": "[[Translating:FUEL|FUEL]] дава поголема усогласеност на преводите на програмите",
- "translate-group-desc-huggle": "[[Translating:Huggle|Huggle]] е прелистувачки извршник за брзо пребарување наменет за справување со вандализам на Викимедиините проекти",
- "translate-group-desc-ihris": "Група пораки за [[Translating:iHRIS|iHRIS]]",
- "translate-group-desc-inaturalist": "[[Translating:INaturalist|iNaturalist]] е портал наменет за заведување на сето она што го гледате во природата. Тука воедно ќе запознаете љубители на природата како вас и ќе научите повеќе за природниот свет.",
- "translate-group-desc-kiwix": "Група пораки за [[Translating:Kiwix|Kiwix]]",
- "translate-group-desc-mantisbt-plugin-core": "Основен приклучок за [[Translating:MantisBT|MantisBT]]",
- "translate-group-desc-mathjax": "[[Translating:MathJax|MathJax]] е JavaScript-библиотека што прикажува математичка нотација во повеќе прелистувачи",
- "translate-group-desc-mediawiki-core-branch": "Пораки за стабилна верзија на [[Translating:MediaWiki|МедијаВики]]",
- "translate-group-desc-mediawikiapi": "Оваа група пораки ги опфаќа пораките што се користат во Action API за тековната алфа-верзија на [[Translating:MediaWiki|MediaWiki]] ({{CURRENTVERSION}})",
- "translate-group-desc-mediawikicore": "Оваа група содржи пораки кои се користат на моменталната алфа-верзија на [[Translating:MediaWiki|МедијаВики]] ({{CURRENTVERSION}})",
- "translate-group-desc-mediawikiextensions": "Мета-група која ги содржи сите пораки за поддржаните додатоци за МедијаВики",
- "translate-group-desc-mediawikiskins": "Метагрупа која ги содржи сите пораки за поддржаните рува на [[Translating:MediaWiki|МедијаВики]]",
- "translate-group-desc-mediawikimostused": "Во оваа група пораки се наведени [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500-те најупотребувани пораки] на [[Translating:MediaWiki|МедијаВики]]",
- "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] е раководен инфосистем за микрофинансирање",
- "translate-group-desc-nfcring-control": "[[Translating:NFC_Ring_Control|Контрола со NFC-прстен]] е мобилен извршник за работа со NFC-ознаки",
- "translate-group-desc-nocc": "[http://nocc.sourceforge.net NOCC] е клиент за е-пошта напишан во PHP. Ако имате проблеми, пријавете ги на [[Support|Поддршка]].",
- "translate-group-desc-nodesc": "Нема опис за оваа група пораки",
- "translate-group-desc-openimages-all": "Овие пораки му припаѓаат на проектот [[Translating:Open Images|Open Images]]",
- "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] - уредник за OpenStreetMap на основа на Flash",
- "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] е збир од алатки за уредување на Википедија",
- "translate-group-desc-readerfeedback": "Мета-група која ги содржи сите пораки за додатокот [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback Мислења на читателите] за [[Translating:MediaWiki|МедијаВики]]",
- "translate-group-desc-semantic": "Метагрупа што ги содржи сите пораки за сите додатоци [https://semantic-mediawiki.org/wiki/Semantic_MediaWiki?uselang=mk Семантички МедијаВики]",
- "translate-group-desc-translatablepages": "Сите преводливи страници",
- "translate-group-desc-translate": "Мета-група која ги содржи сите пораки за додатокот „[https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Преведување]“ за [[Translating:MediaWiki|МедијаВики]]. Запознајте се и со терминологијата во [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary поимникот]",
- "translate-group-desc-tsint": "Група пораки за „[[Translating:Intuition|Интуиција]]“ (''Intuition'') — i18n-систем за алатки од [//tools.wmflabs.org/ Лабораторијата за алатки на Викимедија] (<span class=\"plainlinks\">[[Translating talk:Intuition|поддршка]]</span>)",
- "translate-group-desc-universallanguageselector": "Група метапораки што ги содржи сите пораки за додатокот [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector Универзален избирач на јазик] (ULS) за [[Translating:MediaWiki|МедијаВики]] и поврзаните програмски пакети",
- "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]] е алатка за подигање на податотеки на Ризницата и други Викимедиини проекти",
- "translate-group-desc-visualeditor": "Група метапораки што ги содржи сите пораки за додатокот [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:VisualEditor ВизуеленУредник] за [[Translating:MediaWiki|МедијаВики]] и поврзаните програмски пакети",
- "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Означени патеки]] (''Waymarked Trails'') е служба која ги покажува патеките за пешачење, планинарење, велосипедизам, ридски велосипедизам и ролерки ширум светот. Се нуди под ГНУ-овата општа јавна лиценца",
- "translate-group-desc-waymarked-trails-help": "Страниците за помош на порталите на „Означени патеки“ (''Waymarked Trails''): http://waymarkedtrails.org/help/about",
- "translate-group-desc-wikiaextensions": "Мета-група која ги содржи сите пораки за поддржаните додатоци за [[Translating:MediaWiki|МедијаВики]] што се користат на [http://www.wikia.com Викија]",
- "translate-group-desc-wikimania-scholarships-app": "Група пораки за [https://scholarships.wikimedia.org/apply пријавницата за стипендија за Викиманија]",
- "translate-group-desc-wikimedia-mobile": "Група на насобрани пораки што осодржи мобилни извршници за Викимедиини проекти",
- "translate-group-desc-wikimedia-mobile-wikipedia": "[[Translating:WikipediaMobile|ВикипедијаМобилен]] е повеќеподложен додаток за мобилни и таблични уреди наменет за читање и уредување на Википедија",
- "translate-group-desc-wikimedia-mobile-wikipedia-android": "[[Translating:WikipediaMobile|Википедија Андроид]] е верзија на Википедииниот мобилен извршник наменет за Андроид",
- "translate-group-desc-wikimedia-mobile-wikipedia-ios": "[[Translating:WikipediaMobile|Википедија за iOS]] е верзија на извршникот Википедија Мобилен наменета за системот iOS",
- "translate-group-desc-wikimedia-mobile-wikisource": "[[Translating:WikisourceMobile|ВикиизворМобилен]] е повеќеподложен додаток за мобилни и таблични уреди наменет за читање и уредување на Викиизвор",
- "translate-group-desc-wikimedia-mobile-wiktionary": "[[Translating:WiktionaryMobile|ВикиречникМобилен]] е повеќеподложен додаток за мобилни и таблични уреди наменет за читање и уредување на Викиречникот",
- "translate-group-desc-wikimediaextensions": "Мета-група која ги содржи сите пораки за поддржаните додатоци за [[Translating:MediaWiki|МедијаВики]] што ги користи [https://wikimediafoundation.org/ Фондацијата Викимедија]",
- "translate-group-desc-wikimediaextensions-main": "Метагрупа на пораки која ги содржи сите пораки за поддржаните дополнувања за [[Translating:MediaWiki|МедијаВики]] што треба да се преведат за [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee Јазичниот комитет] на Викимедија.",
- "translategroupdescriptions-desc": "Описи на групи пораки за производи поддржани од додатокот [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate „Преведување“]"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/ml.json b/MLEB/Translate/i18n/groupdescriptions/ml.json
deleted file mode 100644
index 411a1f57..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/ml.json
+++ /dev/null
@@ -1,10 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Praveenp"
- ]
- },
- "translate-group-desc-mediawikicore": "ഇപ്പോഴത്തെ മീഡിയവിക്കി ആൽഫാ പതിപ്പ് ({{CURRENTVERSION}}) ഉപയോഗിക്കുന്ന എല്ലാ സന്ദേശങ്ങളുമുൾപ്പെടുന്ന ഗണം",
- "translate-group-desc-translatablepages": "പരിഭാഷപ്പെടുത്താവുന്ന എല്ലാ താളുകളും",
- "translate-group-desc-wikimediaextensions": "[https://wikimediafoundation.org/ വിക്കിമീഡിയ ഫൗണ്ടേഷൻ] ഉപയോഗിക്കുന്ന മീഡിയവിക്കി അനുബന്ധങ്ങളിലെ എല്ലാ സന്ദേശങ്ങളുമുൾപ്പെടുന്ന ഗണം"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/mr.json b/MLEB/Translate/i18n/groupdescriptions/mr.json
deleted file mode 100644
index 86b8ea93..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/mr.json
+++ /dev/null
@@ -1,27 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "V.narsikar",
- "संतोष दहिवळ"
- ]
- },
- "bw-desc-openstreetmap": "[[Translating:OpenStreetMap|ओपनस्ट्रीटमॅप]]शी संबंधित सर्व संदेश",
- "bw-desc-osm-site": "[[Translating:OpenStreetMap|ओपनस्ट्रीटमॅप]] हा संपूर्ण जगाचा संपादण्याजोगा नकाशा आहे",
- "translate-group-desc-collection": "या मेटा संदेशगटात,[https://www.mediawiki.org/wiki/Extension:Collection कलेक्शन] या मिडियाविकि विस्तारकाचे सर्व संदेश आहेत",
- "translate-group-desc-flaggedrevs": "या मेटा संदेशगटात, [https://www.mediawiki.org/wiki/Extension:FlaggedRevs FlaggedRevs] या मिडियाविकि विस्तारकाचे सर्व संदेश आहेत",
- "translate-group-desc-ihris": "[[Translating:iHRIS|iHRIS]] साठी संदेशगट",
- "translate-group-desc-kiwix": " [[Translating:Kiwix|Kiwix]] साठी संदेशगट",
- "translate-group-desc-mediawiki-core-branch": "[[Translating:MediaWiki|MediaWiki]] च्या स्थिर आवृत्तीसाठी संदेश",
- "translate-group-desc-mediawikicore": "या संदेशगटात, [[Translating:MediaWiki|मिडियाविकिच्या]] ({{CURRENTVERSION}}) अल्फा आवृत्तीत वापरल्या जाणारे सर्व संदेश आहेत",
- "translate-group-desc-mediawikiextensions": "या मेटा संदेशगटात [[Translating:MediaWiki|मिडियाविकि]]च्या सहाय्यीकृत विस्तारकांचे सर्व संदेश आहेत",
- "translate-group-desc-mediawikimostused": "या संदेशगटात [[Translating:MediaWiki|मिडियाविकि]] तील [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki सर्वात जास्त वापरल्या जाणारे ५०० संदेश] आहेत",
- "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] ही मायक्रोफायनान्स साठी व्यवस्थापन माहिती प्रणाली आहे",
- "translate-group-desc-nodesc": "या संदेशगटासाठी काहीच वर्णन उपलब्ध नाही",
- "translate-group-desc-readerfeedback": "या मेटा संदेशगटात, [https://www.mediawiki.org/wiki/Extension:ReaderFeedback ReaderFeedback] या मिडियाविकि विस्तारकाचे सर्व संदेश आहेत",
- "translate-group-desc-semantic": "या मेटा संदेशगटात, [https://semantic-mediawiki.org/ Semantic MediaWiki] या सर्व सेमॅंटिक मिडियाविकि विस्तारकाचे सर्व संदेश आहेत",
- "translate-group-desc-translatablepages": "भाषांतरासाठीची सर्व पाने",
- "translate-group-desc-translate": "या मेटा संदेश गटात, मिडियाविकि विस्तारक \n[https://www.mediawiki.org/wiki/Extension:Translate भाषांतर करा] याचे सर्व संदेश आहेत;कृपया त्याच्या [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary शब्दावलीशी] स्वतःस अवगत करा.",
- "translate-group-desc-universallanguageselector": "मेटा संदेश गट ज्यात, मिडियाविकि विस्तारक [https://www.mediawiki.org/wiki/Extension:UniversalLanguageSelector वैश्विक भाषा वरणित्र] (ULS) चे व संबंधित संचेतन-गठ्ठ्याचे सर्व संदेश आहेत.",
- "translate-group-desc-visualeditor": "मेटा संदेश गट ज्यात, मिडियाविकि विस्तारक [https://www.mediawiki.org/wiki/Extension:VisualEditor यथादृष्य संपादका]चे व संबंधित संचेतन-गठ्ठ्याचे सर्व संदेश आहेत.",
- "translategroupdescriptions-desc": "[https://mediawiki.org/wiki/Extension:Translate भाषांतर] विस्तारकाद्वारे सहाय्यीकृत उत्पादनांसाठी संदेश गट वर्णन"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/ms.json b/MLEB/Translate/i18n/groupdescriptions/ms.json
deleted file mode 100644
index 7af0a435..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/ms.json
+++ /dev/null
@@ -1,58 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Anakmalaysia",
- "Macofe"
- ]
- },
- "bw-desc-freecol": "[[Translating:FreeCol|FreeCol]] ialah permainan strategi berasaskan giliran",
- "bw-desc-fudforum": "[[Translating:FUDforum|FUDforum]] ialah perisian forum perbincangan berasaskan web",
- "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] ialah perisian menjejak masalah berasaskan web",
- "bw-desc-openstreetmap": "Semua mesej yang berkaitan dengan [[Translating:OpenStreetMap|OpenStreetMap]]",
- "bw-desc-osm-site": "[[Translating:OpenStreetMap|OpenStreetMap]] ialah peta seluruh dunia yang boleh disunting",
- "bw-desc-wikiblame": "[[Translating:WikiBlame|WikiBlame]] boleh cepat mencari pengarang sebahagian laman dalam wiki di bawah Wikimedia",
- "translate-group-desc-blockly": "Kumpulan mesej untuk [[Translating:Blockly|Blockly]]",
- "translate-group-desc-bluespice": "Kumpulan mesej meta yang mengandungi semua mesej untuk sambungan MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:BlueSpice Blue Spice]",
- "translate-group-desc-collection": "Kumpulan mesej meta yang mengandungi semua mesej untuk sambungan [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection]",
- "translate-group-desc-eol": "Kumpulan mesej [[Translating:EOL|Encyclopedia of Life]]",
- "translate-group-desc-etherpad-lite": "[[Translating:Etherpad lite|Etherpad lite]] ialah editor kerjasama masa nyata yang sejati",
- "translate-group-desc-europeana": "[[Translating:Europeana|Europeana]] membolehkan kita menjelajahi sumber kebudayaan digital Eropah",
- "translate-group-desc-flaggedrevs": "Kumpulan mesej meta yang mengandungi semua mesej untuk sambungan [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs FlaggedRevs]",
- "translate-group-desc-fuel": "[[Translating:FUEL|FUEL]] meningkatkan ketekalan penterjemahan perisian",
- "translate-group-desc-ihris": "Kumpulan mesej [[Translating:iHRIS|iHRIS]]",
- "translate-group-desc-kiwix": "Kumpulan mesej [[Translating:Kiwix|Kiwix]]",
- "translate-group-desc-mantisbt-plugin-core": "Pemalam teras [[Translating:MantisBT|MantisBT]]",
- "translate-group-desc-mathjax": "[[Translating:MathJax|MathJax]] merupakan perpustakaan JavaScript rentas pelayar yang memaparkan notasi matematik pada pelayar web",
- "translate-group-desc-mediawiki-core-branch": "Mesej-mesej untuk versi stabil [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mediawikicore": "Kumpulan mesej ini mengandungi mesej-mesej yang digunakan dalam versi alfa semasa [[Translating:MediaWiki|MediaWiki]] ({{CURRENTVERSION}})",
- "translate-group-desc-mediawikiextensions": "Kumpulan mesej meta yang mengandungi segala mesej untuk sambungan-sambungan yang disokong untuk [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mediawikimostused": "Kumpulan ini mengandungi [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 mesej yang paling kerap digunakan] dalam [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] ialah sistem maklumat pengurusan mikrokewangan",
- "translate-group-desc-nfcring-control": "[[Translating:NFC_Ring_Control|NFC Ring Control]] adalah aplikasi mudah alih untuk berinteraksi dengan teg-teg NFC",
- "translate-group-desc-nocc": "[[Translating:NOCC|NOCC]] ialah klien webmail",
- "translate-group-desc-nodesc": "Keterangan tidak disediakan untuk kumpulan mesej ini",
- "translate-group-desc-openimages-all": "Mesej-mesej ini tergolong dalam projek [[Translating:Open Images|Open Images]]",
- "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] ialah editor OpenStreetMap berasaskan Flash",
- "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] ialah koleksi peralatan menyunting Wikipedia",
- "translate-group-desc-readerfeedback": "Kumpulan mesej meta yang mengandungi semua mesej untuk sambungan [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback]",
- "translate-group-desc-semantic": "Kumpulan mesej meta yang mengandungi semua mesej untuk semua sambungan [https://semantic-mediawiki.org/ Semantic MediaWiki]",
- "translate-group-desc-translatablepages": "Semua laman yang boleh diterjemah",
- "translate-group-desc-translate": "Kumpulan mesej meta yang mengandungi semua mesej untuk sambungan MediaWiki [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary glosari]",
- "translate-group-desc-tsint": "Kumpulan mesej untuk [[Translating:Intuition|Intuition]], sistem i18n untuk peralatan [http://tools.wmflabs.org Wikimedia Tool Labs] (<span class=\"plainlinks\">[[Translating talk:Intuition|bantuan]]</span>)",
- "translate-group-desc-universallanguageselector": "Kumpulan mesej meta yang mengandungi semua mesej untuk sambungan MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector UniversalLanguageSelector] dan pakej-pakej perisian berkenaan",
- "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]] merupakan alat untuk memuat naik fail ke dalam Wikimedia Commons dan projek-projek Wikimedia yang lain",
- "translate-group-desc-visualeditor": "Kumpulan mesej meta yang mengandungi semua mesej untuk sambungan MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:VisualEditor VisualEditor] dan pakej-pakej perisian berkenaan",
- "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] ialah perkhidmatan yang menunjukkan laluan mengembara, berbasikal, ''mountain bike'' dan berkasut roda di seluruh dunia. Ia memakai lesen GNU GPL",
- "translate-group-desc-waymarked-trails-help": "Halaman bantuan Waymarked Trails: http://waymarkedtrails.org/help/about",
- "translate-group-desc-wikiaextensions": "Kumpulan mesej meta yang mengandungi semua mesej untuk sambungan-sambungan MediaWiki tersokong yang digunakan oleh [http://www.wikia.com Wikia]",
- "translate-group-desc-wikimania-scholarships-app": "Kumpulan mesej untuk [https://scholarships.wikimedia.org/apply aplikasi Biasiswa Wikimania]",
- "translate-group-desc-wikimedia-mobile": "Kumpulan mesej teragregat yang merangkumi aplikasi mudah alih untuk projek-projek Wikimedia",
- "translate-group-desc-wikimedia-mobile-wikipedia": "[[Translating:WikipediaMobile|WikipediaMobile]] merupakan aplikasi merentas platform mudah alih/tablet yang digunakan untuk membaca dan menyumbang kepada Wikipedia",
- "translate-group-desc-wikimedia-mobile-wikipedia-android": "[[Translating:WikipediaMobile|Wikipedia Android]] adalah aplikasi mudah alih Wikipedia versi khusus untuk Android",
- "translate-group-desc-wikimedia-mobile-wikipedia-ios": "[[Translating:WikipediaMobile|Wikipedia iOS]] adalah aplikasi mudah alih Wikipedia versi khusus untuk iOS",
- "translate-group-desc-wikimedia-mobile-wikisource": "[[Translating:WikisourceMobile|WikisumberMobile]] merupakan aplikasi merentas platform mudah alih/tablet yang digunakan untuk membaca dan menyumbang kepada Wikisumber",
- "translate-group-desc-wikimedia-mobile-wiktionary": "[[Translating:WiktionaryMobile|WikikamusMobile]] merupakan aplikasi merentas platform mudah alih/tablet yang digunakan untuk membaca dan menyumbang kepada Wikikamus",
- "translate-group-desc-wikimediaextensions": "Kumpulan mesej meta yang mengandungi semua mesej untuk sambungan-sambungan MediaWiki tersokong yang digunakan oleh [https://wikimediafoundation.org/ Yayasan Wikimedia]",
- "translate-group-desc-wikimediaextensions-main": "Kumpulan mesej meta yang mengandungi semua mesej yang perlu diterjemahkan untuk [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee Jawatankuasa bahasa] Wikimedia",
- "translategroupdescriptions-desc": "Huraian-huraian kumpulan mesej untuk produk-produk yang disokong oleh sambungan [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate]"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/mt.json b/MLEB/Translate/i18n/groupdescriptions/mt.json
deleted file mode 100644
index bc8eb0d3..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/mt.json
+++ /dev/null
@@ -1,9 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Chrisportelli"
- ]
- },
- "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] hu kapaċi li jsib veloċement l-awturi ta' paġna fuq sit tal-Wikimedia.",
- "translate-group-desc-nodesc": "L-ebda deskrizzjoni mhi disponibbli għal dan il-grupp ta' messaġġi"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/nb.json b/MLEB/Translate/i18n/groupdescriptions/nb.json
deleted file mode 100644
index e2cd489b..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/nb.json
+++ /dev/null
@@ -1,56 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Audun",
- "Laaknor",
- "Nghtwlkr",
- "Macofe"
- ]
- },
- "bw-desc-freecol": "[[Translating:FreeCol|FreeCol]] er et turbasert strategispill",
- "bw-desc-fudforum": "[[Translating:FUDforum|FUDforum]], nettbasert forumprogramvare.",
- "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] er en nettbasert programvare for problemsporing",
- "bw-desc-openstreetmap": "Meldingsgruppe for alle [[Translating:OpenStreetMap|OpenStreetMap]]-meldinger",
- "bw-desc-osm-site": "[[Translating:OpenStreetMap|OpenStreetMap]] er et redigerbart verdenskart",
- "bw-desc-wikiblame": "[[Translating:WikiBlame|WikiBlame]] kan raskt finne forfatterne av en del av en side på Wikimedia-wikier",
- "translate-group-desc-blockly": "En meldingsgruppe for [[Translating:Blockly|Blockly]]",
- "translate-group-desc-bluespice": "Metameldingsgruppe som inneholder alle meldinger i MediaWiki-utvidelsene for [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:BlueSpice Blue Spice]",
- "translate-group-desc-collection": "Metameldingsgruppe som inneholder alle meldinger for [[Translating:MediaWiki|MediaWiki]]-utvidelsen [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection]",
- "translate-group-desc-eol": "En beskjedgruppe for [[Translating:EOL|Encyclopedia of Life]]",
- "translate-group-desc-europeana": "[[Translating:Europeana|Europeana 1914–1918]] er et nettsted med historier, filmer og historisk materiale om første verdenskrig",
- "translate-group-desc-flaggedrevs": "Metameldingsgruppe som inneholder alle meldinger for [[Translating:MediaWiki|MediaWiki]]-utvidelsen [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs FlaggedRevs]",
- "translate-group-desc-fuel": "[[Translating:FUEL|FUEL]] bringer konsistens til programvareoversetting",
- "translate-group-desc-ihris": "En meldingsgruppe for [[Translating:iHRIS|iHRIS]]",
- "translate-group-desc-kiwix": "En beskjedgruppe for [[Translating:Kiwix|Kiwix]]",
- "translate-group-desc-mantisbt-plugin-core": "A kjerneutvidelse for [[Translating:MantisBT|MantisBT]]",
- "translate-group-desc-mediawiki-core-branch": "Beskjeder for en stabil versjon av [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mediawikicore": "Denne meldingsgruppen inneholder meldinger brukt i den gjeldende alfaversjonen av MediaWiki ({{CURRENTVERSION}})",
- "translate-group-desc-mediawikiextensions": "Metameldingsgruppen inneholder alle meldinger for utvidelser som støttes av MediaWiki",
- "translate-group-desc-mediawikimostused": "Denne meldingsgruppen inneholder [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki de 500 mest brukte meldingene] i [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] er et informasjonhåndteringssystem for mikrofinans",
- "translate-group-desc-nocc": "[[Translating:NOCC|NOCC]] er en nettbasert e-postklient",
- "translate-group-desc-nodesc": "Ingen beskrivelse er tilgjengelig for denne meldingsgruppen",
- "translate-group-desc-openimages-all": "Disse meldingene er en del av [[Translating:Open Images|Open Images]]-prosjektet",
- "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] er en Flash-basert OpenStreetMap-editor",
- "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] er en samling av verktøy for å redigere Wikipedia",
- "translate-group-desc-readerfeedback": "Metameldingsgruppe som inneholder alle meldinger for [[Translating:MediaWiki|MediaWiki]]-utvidelsen [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback]",
- "translate-group-desc-semantic": "Metabeskjedgruppe for alle [https://semantic-mediawiki.org/ Semantic MediaWiki]-utvidelser",
- "translate-group-desc-translatablepages": "Alle sider som kan oversettes",
- "translate-group-desc-translate": "Metameldingsgruppe som inneholder alle meldinger for MediaWiki-utvidelsen [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate]; vennligst bli kjent med [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary gloseboka] først",
- "translate-group-desc-tsint": "En meldingsgruppe for [[Translating:Intuition|Intuition]], i18n-systemet for [//tools.wmflabs.org/ Toolserver]-verktøy (<span class=\"plainlinks\">[[Translating talk:Toolserver|støtte]])",
- "translate-group-desc-universallanguageselector": "Metameldingsgruppe som inneholder alle meldinger for MediaWiki-utvidelsen [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector Universal Language Selector] (ULS) og tilknyttede programvarepakker",
- "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]] er et verktøy for å laste opp filer på Wikimedia Commons og andre Wikimedia-prosjekter",
- "translate-group-desc-visualeditor": "Metameldingsgruppe som inneholder alle meldinger for MediaWiki-utvidelsen [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:VisualEditor VisualEditor] og tilknyttede programvarepakker",
- "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] er en tjeneste som viser ruter for gå-, sykkel- og rulleskøyteturer verden rundt. Tjenesten bruker GNU GPL-lisensen.",
- "translate-group-desc-waymarked-trails-help": "Hjelpesidene for nettstedet Waymarked Trails: http://waymarkedtrails.org/help/about",
- "translate-group-desc-wikiaextensions": "Metameldingsgruppen inneholder alle meldinger for støttede MediaWiki-utvidelser brukt av [http://www.wikia.com Wikia]",
- "translate-group-desc-wikimania-scholarships-app": "Meldingsgruppe for [https://scholarships.wikimedia.org/apply søknader om Wikimania-stipend]",
- "translate-group-desc-wikimedia-mobile-wikipedia": "[[Translating:WikipediaMobile|WikipediaMobile]] er en flerplattformsapplikasjon for mobiler og nettbrett for å lese og bidra til Wikipedia",
- "translate-group-desc-wikimedia-mobile-wikipedia-android": "[[Translating:WikipediaMobile|Wikipedia Android]] er den Android-spesifikke versjonen av Wikipedia Mobile-appen",
- "translate-group-desc-wikimedia-mobile-wikipedia-ios": "[[Translating:WikipediaMobile|Wikipedia iOS]] er den IOS-spesifikke versjonen av Wikipedia Mobile-appen",
- "translate-group-desc-wikimedia-mobile-wikisource": "[[Translating:WikisourceMobile|WikisourceMobile]] er en flerplattformsapplikasjon for mobiler og nettbrett for å lese og bidra til Wikikilden",
- "translate-group-desc-wikimedia-mobile-wiktionary": "[[Translating:WiktionaryMobile|WiktionaryMobile]] er en flerplattformsapplikasjon for mobiler og nettbrett for å lese og bidra til Wiktionary",
- "translate-group-desc-wikimediaextensions": "Metameldingsgruppen inneholder alle meldinger for støttede MediaWiki-utvidelser brukt av [https://wikimediafoundation.org/ Wikimedia Foundation]",
- "translate-group-desc-wikimediaextensions-main": "Metameldingsgruppe som inneholder alle meldinger for støttede [[Translating:MediaWiki|MediaWiki]]-utvidelser som kreves oversatt av Wikimedias [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee språkkomite]",
- "translategroupdescriptions-desc": "Meldingsgruppebeskrivelser for produkter støttet av utvidelsen [https://mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate]"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/ne.json b/MLEB/Translate/i18n/groupdescriptions/ne.json
deleted file mode 100644
index fe0895ff..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/ne.json
+++ /dev/null
@@ -1,8 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "सरोज कुमार ढकाल"
- ]
- },
- "bw-desc-fudforum": "[http://fudforum.org/ FUDforum], PHP मा लेखिएको वेब मञ्च ।"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/nl.json b/MLEB/Translate/i18n/groupdescriptions/nl.json
deleted file mode 100644
index 5bbe7573..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/nl.json
+++ /dev/null
@@ -1,67 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "HanV",
- "McDutchie",
- "SPQRobin",
- "Siebrand",
- "Arent",
- "Mar(c)",
- "Southparkfan",
- "Mathonius",
- "Sjoerddebruin",
- "Macofe"
- ]
- },
- "bw-desc-freecol": "[[Translating:FreeCol|FreeCol]] is a beurtgebaseerd strategiespel",
- "bw-desc-fudforum": "[[Translating:FUDforum|FUDforum]] is webgebaseerde forumsoftware",
- "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] is webgebaseerde software voor het volgen van meldingen",
- "bw-desc-openstreetmap": "Berichtengroep voor alle [[Translating:OpenStreetMap|OpenStreetMap-berichten]]",
- "bw-desc-osm-site": "[[Translating:OpenStreetMap|OpenStreetMap]] is een bewerkbare kaart van de hele wereld",
- "bw-desc-wikiblame": "[[Translating:WikiBlame|WikiBlame]] is in staat om snel de auteurs van een pagina in een Wikimedia-wiki te vinden",
- "translate-group-desc-blockly": "Een berichtengroep voor [[Translating:Blockly|Blockly]]",
- "translate-group-desc-bluespice": "Metaberichtengroep die alle berichten bevat voor de MediaWiki-uitbreidingen [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:BlueSpice Blue Spice]",
- "translate-group-desc-collection": "Metaberichtengroep die alle berichten bevat voor de [[Translating:MediaWiki|MediaWiki]]-uitbreiding [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection]",
- "translate-group-desc-eol": "Een berichtengroep voor [[Translating:EOL|Encyclopedia of Life]]",
- "translate-group-desc-etherpad-lite": "[[Translating:Etherpad lite|Etherpad lite]] is een echte tekstverwerker om real-time mee samen te werken",
- "translate-group-desc-europeana": "[[Translating:Europeana|Europeana 1914-1918]] is een website met verhalen, films en historisch materiaal over de Eerste Wereldoorlog",
- "translate-group-desc-flaggedrevs": "Metaberichtengroep die alle berichten bevat voor de [[Translating:MediaWiki|MediaWiki]]-uitbreiding [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs FlaggedRevs]",
- "translate-group-desc-fuel": "[[Translating:FUEL|FUEL]] brengt meer consistentie naar softwarevertalingen",
- "translate-group-desc-huggle": "[[Translating:Huggle|Huggle]] is een snelle verschillenbrowserapplicatie voor het omgaan met vandalisme op Wikimedia-projecten",
- "translate-group-desc-ihris": "Een berichtengroep voor [[Translating:iHRIS|iHRIS]]",
- "translate-group-desc-kiwix": "Een berichtengroep voor [[Translating:Kiwix|Kiwix]]",
- "translate-group-desc-mantisbt-plugin-core": "Een core-plugin voor [[Translating:MantisBT|MantisBT]]",
- "translate-group-desc-mathjax": "[[Translating:MathJax|MathJax]] is een cross-browser JavaScriptbibliotheek die een wiskundige notatie kan weergeven in webbrowsers",
- "translate-group-desc-mediawiki-core-branch": "Berichten voor een stabiele versie van [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mediawikicore": "Deze berichtengroep bevat de berichten die in de huidige alpha-versie van [[Translating:MediaWiki|MediaWiki]] gebruikt worden - {{CURRENTVERSION}}",
- "translate-group-desc-mediawikiextensions": "Metaberichtengroep die alle berichten bevat voor ondersteunde extensies voor MediaWiki",
- "translate-group-desc-mediawikimostused": "Deze berichtengroep bevat de [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 meest gebruikte berichten] in [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] is een beheersysteem voor microfinanciering",
- "translate-group-desc-nfcring-control": "[[Translating:NFC_Ring_Control|NFC Ring Control]] is een mobiele app voor interactie met NFC-tags",
- "translate-group-desc-nocc": "[[Translating:NOCC|NOCC]] is een webmailclient",
- "translate-group-desc-nodesc": "Er is geen beschrijving beschikbaar voor deze berichtengroep",
- "translate-group-desc-openimages-all": "Deze berichten zijn onderdeel van het project [[Translating:Open Images|Open Beelden]]",
- "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch 2]] is een Flash-gebaseerde OpenStreetMap-bewerker",
- "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] is een verzameling hulpprogramma's om Wikipedia mee te bewerken",
- "translate-group-desc-readerfeedback": "Metaberichtengroep die alle berichten bevat voor de [[Translating:MediaWiki|MediaWiki]]-uitbreiding [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback]",
- "translate-group-desc-semantic": "Metaberichtengroep die alle berichten bevat voor uitbreidingen voor [https://semantic-mediawiki.org/ Semantische MediaWiki]",
- "translate-group-desc-translatablepages": "Alle te vertalen pagina's",
- "translate-group-desc-translate": "Metaberichtengroep die alle berichten bevat voor de MediaWiki-uitbreiding [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate]; stel uzelf op de hoogte van de [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary woordenlijst]",
- "translate-group-desc-tsint": "Een berichtengroep voor [[Translating:Intuition|Intuition]], het i18n-systeem voor [//tools.wmflabs.org/ Toolserverprogramma's] (<span class=\"plainlinks\">[[Translating talk:Intuition|ondersteuning]]</span>)",
- "translate-group-desc-universallanguageselector": "Metaberichtengroep die alle berichten bevat voor de MediaWiki-uitbreiding [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector UniversalLanguageSelector] (ULS) en gerelateerde softwarepakketten.",
- "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]] is een hulpprogramma voor het uploaden van bestanden naar Wikimedia Commons en andere projecten van Wikimedia",
- "translate-group-desc-visualeditor": "Metaberichtengroep die alle berichten bevat voor de MediaWiki-uitbreiding [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:VisualEditor VisualEditor] en gerelateerde softwarepakketten.",
- "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] is een dienst voor wandel-, fiets- en mountain bike- en inline skateroutes in de hele wereld. Het project gebruikt de GNU GPL-licentie",
- "translate-group-desc-waymarked-trails-help": "De hulppagina's van de websites van Waymarked Trails: http://waymarkedtrails.org/help/about",
- "translate-group-desc-wikiaextensions": "Metaberichtengroep die alle berichten bevat voor ondersteunde MediaWiki-uitbreidingen gebruikt door [http://www.wikia.com Wikia]",
- "translate-group-desc-wikimania-scholarships-app": "Berichtgroep voor [https://scholarships.wikimedia.org/apply beursaanvragen voor Wikimania]",
- "translate-group-desc-wikimedia-mobile": "Samengevoegde groep die mobiele applicaties voor Wikimediaprojecten bevat",
- "translate-group-desc-wikimedia-mobile-wikipedia": "[[Translating:WikipediaMobile|WikipediaMobile]] is a cross-platform mobiele en tabletapplicatie voor het lezen en bijdragen aan Wikipedia",
- "translate-group-desc-wikimedia-mobile-wikipedia-android": "[[Translating:WikipediaMobile|Wikipedia Android]] is de Wikipedia-app voor Android",
- "translate-group-desc-wikimedia-mobile-wikipedia-ios": "[[Translating:WikipediaMobile|Wikipedia iOS]] is de Wikipedia-app voor iOS",
- "translate-group-desc-wikimedia-mobile-wikisource": "[[Translating:WikisourceMobile|WikisourceMobile]] is een platformonafhankelijke toepassing voor mobiele telefoons en tablet-pc's voor het lezen van en bijdragen aan Wikisource",
- "translate-group-desc-wikimedia-mobile-wiktionary": "[[Translating:WiktionaryMobile|WiktionaryMobile]] is een platformonafhankelijke toepassing voor mobiele telefoons en tablet-pc's voor het lezen van en bijdragen aan Wikiwoordenboek",
- "translate-group-desc-wikimediaextensions": "Metaberichtengroep die alle berichten bevat voor ondersteunde MediaWiki-uitbreidingen gebruikt door de [https://wikimediafoundation.org/ Wikimedia Foundation]",
- "translate-group-desc-wikimediaextensions-main": "Metaberichtengroep die alle berichten bevat voor ondersteunde [[Translating:MediaWiki|MediaWiki]]-uitbreidingen die vertaald dienen te worden voor het [https://meta.wikimedia.org/wiki/Language_committee Taalcomité] van Wikimedia",
- "translategroupdescriptions-desc": "Berichtengroepomschrijvingen voor producten die ondersteund worden door de uitbreiding [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate]"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/nn.json b/MLEB/Translate/i18n/groupdescriptions/nn.json
deleted file mode 100644
index f3ebeaf4..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/nn.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Harald Khan",
- "Njardarlogar",
- "Lokal Profil"
- ]
- },
- "bw-desc-freecol": "Før du set om FreeCol til språket ditt, les gjennom [[Translating:FreeCol]]. FreeCol nyttar GPL-lisens.",
- "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] er eit gratis nettbasert feilsporingssystem. Meld frå om problem på [[Support]].",
- "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] kan snøgt finna ut kven som har forfatta ei sida i ein Wikimedia-wiki.",
- "translate-group-desc-nodesc": "Inga skildring er tilgjengeleg for denne meldingsgruppa",
- "translate-group-desc-translatablepages": "Alle sider som kan setjast om"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/oc.json b/MLEB/Translate/i18n/groupdescriptions/oc.json
deleted file mode 100644
index 6060cb01..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/oc.json
+++ /dev/null
@@ -1,26 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Cedric31",
- "Lokal Profil",
- "Macofe"
- ]
- },
- "bw-desc-freecol": "Abans de tradusir FreeCol dins vòstra lenga, legissètz [[Translating:FreeCol|FreeCol]]. Freecol utiliza la licéncia GPL.",
- "bw-desc-fudforum": "[http://fudforum.org/ FUDforum], un forum internet escrich en PHP.",
- "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] es un sistèma gratuit pel seguiment sul web de las anomalias.",
- "bw-desc-osm-site": "Aqueste grop de messatges conten los messatges de l'interfàcia d'[[Translating:Open Street Map|Open Street Map]].",
- "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] es en mesura de trobar rapidament los autors d’una pagina dins un wiki Wikimedia.",
- "translate-group-desc-collection": "Aqueste metagrop de messatges conten totes los messages de l’extension [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Colleccion].",
- "translate-group-desc-flaggedrevs": "Grop dels messatges Meta que conten totes los messatges de l’extension [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs FlaggedRevs]",
- "translate-group-desc-mediawikicore": "Aqueste grop de messatges conten los messatges utilizats dins la version alfa actuala de MediaWiki ({{CURRENTVERSION}})",
- "translate-group-desc-mediawikiextensions": "Grop dels messatges que contenon totes los messatges de las extensions suportadas per MediaWiki",
- "translate-group-desc-mediawikimostused": "Aqueste grop de messatges conten los [//translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 messatges utilizats los mai sovent] dins [[Translating:MediaWiki|MediaWiki]].",
- "translate-group-desc-nocc": "[http://nocc.sourceforge.net NOCC] es un client webmail escrich en PHP. Raportatz totes los problèmas sus [[Support]].",
- "translate-group-desc-nodesc": "I a pas descripcion disponibla per aqueste grop de messatge",
- "translate-group-desc-readerfeedback": "Grop dels messatges Meta que conten totes los messatges de l’extension [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback]",
- "translate-group-desc-translate": "Grop dels messatges Meta que conten totes los messatges de l’extension MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate]; familiarizatz-vos amb son [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary glossari]",
- "translate-group-desc-tsint": "Un grop de messatges per [[Translating:Intuition|Intuition]], lo sistèma d'internacionalizacion de las aisinas del [//tools.wmflabs.org/ Toolserver] (<span class=\"plainlinks\">[[Translating talk:Intuition|supòrt]]</span>)",
- "translate-group-desc-wikiaextensions": "Grop dels messatges Meta que contenon totes los messatges de las extensions MediaWiki utilizadas per [http://www.wikia.com Wikia]",
- "translate-group-desc-wikimediaextensions": "Meta grop de messatges que contenon totes los messatges per las extensions utilizadas per la [https://wikimediafoundation.org/ Wikimedia Foundation]"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/pfl.json b/MLEB/Translate/i18n/groupdescriptions/pfl.json
deleted file mode 100644
index 9d91d2ec..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/pfl.json
+++ /dev/null
@@ -1,40 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Manuae",
- "Macofe"
- ]
- },
- "bw-desc-freecol": "[[Translating:FreeCol|FreeCol]] ischä rundebasiades Schdradegieschbiel",
- "bw-desc-fudforum": "[[Translating:FUDforum|FUDforum]] ischä Web-Sofdwaa faä Dischbedier-Bladdform",
- "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] ischä Web-Sofdwaa faä Tigged-Sischdem",
- "bw-desc-openstreetmap": "Alli Nochrischde zu [[Translating:OpenStreetMap|OpenStreetMap]]",
- "bw-desc-osm-site": "[[Translating:OpenStreetMap|OpenStreetMap]] ischä vaänabari Kaad vunde gonse Weld",
- "bw-desc-wikiblame": "[[Translating:WikiBlame|WikiBlame]] eameschlischds Uffinne vunem Audoa vuner Said inem Wikimedia Wiki.",
- "translate-group-desc-collection": "Meda-Nochrischdegrubb, wu alli Nochrischde vunde [[Translating:MediaWiki|MediaWiki]]-Eawaidarung [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection] hod.",
- "translate-group-desc-eol": "Ä Nochrischdegrubb fas [[Translating:EOL|Sachweadabuch vum Lewe]]",
- "translate-group-desc-flaggedrevs": "Meda-Nochrischdegrubb, wu alli Nochrischde vunde [[Translating:MediaWiki|MediaWiki]]-Eawaidarung [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs FlaggedRevs] hod.",
- "translate-group-desc-ihris": "Ä Nochrischdegrubb fa [[Translating:iHRIS|iHRIS]]",
- "translate-group-desc-kiwix": "Ä Nochrischdegrubb fa [[Translating:Kiwix|Kiwix]]",
- "translate-group-desc-mantisbt-plugin-core": "Ä Kean-Oischubb fa [[Translating:MantisBT|MantisBT]]",
- "translate-group-desc-mediawiki-core-branch": "Nochrischde fa ä schdabieli Ausgab vun [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mediawikicore": "Die Grubb hod alli Nochrischde vunde naijschdi alpha-Ausgab vun [[Translating:MediaWiki|MediaWiki]] ({{CURRENTVERSION}})",
- "translate-group-desc-mediawikiextensions": "Meda-Nochrischdegrubb, wu alli Nochrischde vunde [[Translating:MediaWiki|MediaWiki]] unaschdidzi Eawaidarunge hod.",
- "translate-group-desc-mediawikimostused": "Die Grubb hod die [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 oam haifigschdi gnudzde Nochrischde] in [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] ischä MIS fa Gläkabidal",
- "translate-group-desc-nocc": "[[Translating:NOCC|NOCC]] ischn Webmail-Client",
- "translate-group-desc-nodesc": "S'hod kä Bschraiwung fa die Nochrischdegrubb",
- "translate-group-desc-openimages-all": "Die Nochrischde sinen Deel vum [[Translating:Open Images|Open Images]]-Voahawe",
- "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] ischä Flash-gschdidzds OpenStreetMap B'awaidungsbrogram",
- "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] ischä Sommlung vun Weagzaisch zum Änare vunde Wikipedia",
- "translate-group-desc-readerfeedback": "Meda-Nochrischdegrubb, wu alli Nochrischde vunde [[Translating:MediaWiki|MediaWiki]]-Eawaidarung [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback] hod.",
- "translate-group-desc-semantic": "Meda-Nochrischdegrubb, wu alli Nochrischde vunde MediaWiki-Eawaidarung [https://semantic-mediawiki.org/ Semantic MediaWiki] hod.",
- "translate-group-desc-translatablepages": "Alli iwasedzbari Saide",
- "translate-group-desc-translate": "Meda-Nochrischdegrubb, wu alli Nochrischde vunde MediaWiki-Eawaidarung [https://www.mediawiki.org/wiki/Extension:Translate Translate] hod.",
- "translate-group-desc-tsint": "Ä Nochrischdegrubb fa [http://toolserver.org/~krinkle/TsIntuition „Toolserver Intuition\"], s'i18n-Sischdem fa uffm [http://toolserver.org Toolserver] lieschndi Weagzaisch (<span class=\"plainlinks\">[[Translating talk:Toolserver|Hilf]] &middot; [https://wiki.toolserver.org/view/Toolserver_Intuition fachlischi Oagawe]</span>)",
- "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] ischn Dinschd fa Weesche fas Woandare, Radle, Beaschradle un Rollschuh laafe uffde gonse Weld. Bnudzd die GNU GPL G'nehmischung",
- "translate-group-desc-wikiaextensions": "Meda-Nochrischdegrubb, wu alli Nochrischde fa unaschdizdi MediaWiki-Eawaidarung vun [http://www.wikia.com Wikia] hod.",
- "translate-group-desc-wikimediaextensions": "Meda-Nochrischdegrubb, wu alli Nochrischde fa unaschdizdi MediaWiki-Eawaidarung vun [https://wikimediafoundation.org/ Wikimedia Foundation] hod.",
- "translate-group-desc-wikimediaextensions-main": "Meda-Nochrischdegrubb, wu alli Nochrischde fa unaschdizdi [[Translating:MediaWiki|MediaWiki]]-Eawaidarung hod, wu fas Iwasedze vun [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee Language committee] nodwendisch sin.",
- "translategroupdescriptions-desc": "Bschraiwung vunde Nochrischdegrubb fa Brodugd vunde unaschdidzdi [https://mediawiki.org/wiki/Extension:Translate Iwasedzung] Eawaidarung"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/pl.json b/MLEB/Translate/i18n/groupdescriptions/pl.json
deleted file mode 100644
index 6b60f9e8..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/pl.json
+++ /dev/null
@@ -1,55 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "BeginaFelicysym",
- "Leinad",
- "Matma Rex",
- "Sp5uhe",
- "ToSter",
- "Chrumps",
- "Vengir",
- "Lokal Profil",
- "Alan ffm",
- "Darellur",
- "Macofe"
- ]
- },
- "bw-desc-freecol": "Zanim rozpoczniesz tłumaczenie FreeCol, zapoznaj się z [[Translating:FreeCol]]. Freecol udostępniane jest na licencji GPL.",
- "bw-desc-fudforum": "[http://fudforum.org/ FUDforum] – forum internetowe napisane w PHP.",
- "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] jest internetowym systemem obsługi zgłoszeń usterek",
- "bw-desc-openstreetmap": "Grupa wszystkich komunikatów [[Translating:OpenStreetMap|OpenStreetMap]]",
- "bw-desc-osm-site": "Ta grupa komunikatów zawiera interfejs [[Translating:Open Street Map|Open Street Map]]. Zobacz [http://unicode.org/repos/cldr-tmp/trunk/diff/supplemental/language_plural_rules.html#{{UILANGCODE}} stronę Unicode CLDR wyjaśniającą zasady tworzenia liczby mnogiej].",
- "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] pozwala szybko odnaleźć autorów strony w Wikimedia wiki.",
- "translate-group-desc-blockly": "Grupa komunikatów dla [[Translating:Blockly|Blockly]]",
- "translate-group-desc-collection": "Metagrupa zawiera wszystkie komunikaty [[Translating:MediaWiki|MediaWiki]] używane przez rozszerzenie [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Kolekcja]",
- "translate-group-desc-eol": "Grupa komunikatów [[Translating:EOL|Encyklopedii życia]]",
- "translate-group-desc-europeana": "[[Translating:Europeana|Europeana]] umożliwia ludziom odkrywanie dorobku kulturowego Europy",
- "translate-group-desc-flaggedrevs": "Metagrupa zawierająca wszystkie komunikaty rozszerzenia [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/Special:MyLanguage/wiki/Extension:FlaggedRevs FlaggedRevs]",
- "translate-group-desc-huggle": "[[Translating:Huggle|Huggle]] to szybka aplikacja do porównywania wersji stron, która pomaga w zwalczaniu wandalizmu na projektach Wikimedia.",
- "translate-group-desc-ihris": "Grupa komunikatów [[Translating:iHRIS|iHRIS]]",
- "translate-group-desc-kiwix": "Grupy wiadomości dla [[Translating:Kiwix|Kiwix]]",
- "translate-group-desc-mantisbt-plugin-core": "Główna wtyczka dla [[Translating:MantisBT|MantisBT]]",
- "translate-group-desc-mediawiki-core-branch": "Komunikaty stabilnej wersji oprogramowania [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mediawikicore": "Grupa zawiera komunikaty wykorzystywane w bieżącej wersji alfa MediaWiki ({{CURRENTVERSION}})",
- "translate-group-desc-mediawikiextensions": "Metagrupa zawiera wszystkie komunikaty obsługiwanych rozszerzeń do MediaWiki",
- "translate-group-desc-mediawikiskins": "Grupa komunikatów Meta zawierająca wszystkie komunikaty dla skórek obsługiwanych w [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mediawikimostused": "Ta grupa komunikatów zawiera [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 najczęściej używanych komunikatów] w [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] jest systemem zarządzania informacją dla mikrofinansów",
- "translate-group-desc-nocc": "[http://nocc.sourceforge.net NOCC] jest internetowym klientem poczty napisanym w PHP. Prosimy o zgłaszanie wszelkich problemów [[Support|obsłudze]].",
- "translate-group-desc-nodesc": "Dla tej grupy komunikatów opis nie jest dostępny",
- "translate-group-desc-openimages-all": "Komunikaty projektu [[Translating:Open Images|Open Images]]",
- "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] jest edytorem OpenStreetMap opartym na technologii Flash",
- "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] to kolekcja narzędzi służących do edycji Wikipedii",
- "translate-group-desc-readerfeedback": "Metagrupa komunikatów zawierająca wszystkie komunikaty rozszerzenia [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback]",
- "translate-group-desc-semantic": "Grupa meta wiadomości zawierająca wszystkie wiadomości dla wszystkich rozszerzeń [https://semantic-mediawiki.org/ Semantic MediaWiki]",
- "translate-group-desc-translatablepages": "Wszystkie przetłumaczalne strony",
- "translate-group-desc-translate": "Metagrupa komunikatów zawierająca wszystkie komunikaty rozszerzeń MediaWiki [https://www.mediawiki.org/wiki/Extension:Translate Translate]",
- "translate-group-desc-tsint": "Grupa wiadomości, [[Translating:Intuition|Intuition]], systemy internacjonalizacji [//tools.wmflabs.org/ Wikimedia Tool Labs] (<span class=\"plainlinks\">[[Translating talk:Intuition|obsługa]]</span>)",
- "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]] to narzędzie do przesyłania plików na Wikimedia Commons i do innych projektów Wikimedia",
- "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] jest usługą wyświetlającą trasy wycieczek pieszych, rowerowych, kolarstwa górskiego i łyżworolkowych na całym świecie. Na licencji GNU GPL",
- "translate-group-desc-wikiaextensions": "Metagrupa zawiera wszystkie komunikaty obsługiwanych rozszerzeń [[Translating:MediaWiki|MediaWiki]] używanych przez [http://www.wikia.com Wikia]",
- "translate-group-desc-wikimedia-mobile": "Grupy zbiorcze komunikatów zawierające aplikacje mobilne dla projektów Wikimedia",
- "translate-group-desc-wikimediaextensions": "Metagrupa zawiera wszystkie komunikaty obsługiwanych rozszerzeń [[Translating:MediaWiki|MediaWiki]] używanych przez [https://wikimediafoundation.org/ Fundację Wikimedia]",
- "translate-group-desc-wikimediaextensions-main": "Grupa meta komunikatów zawierająca wszystkie wymagające przetłumaczenia komunikaty wspieranych rozszerzeń [[Translating:MediaWiki|MediaWiki]] na potrzeby [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee komitetu językowego] Wikimedia",
- "translategroupdescriptions-desc": "Opis grupy komunikatów dla produktów wspieranych przez [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate rozszerzenie tłumaczenia]"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/pms.json b/MLEB/Translate/i18n/groupdescriptions/pms.json
deleted file mode 100644
index 559b4e75..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/pms.json
+++ /dev/null
@@ -1,49 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Borichèt",
- "Dragonòt",
- "Lokal Profil",
- "Macofe"
- ]
- },
- "bw-desc-freecol": "Prima ëd volté FreeCol an soa lenga, për piasì ch'a lesa [[Translating:FreeCol]]. Freecol a deuvra la licensa GPL.",
- "bw-desc-fudforum": "[http://fudforum.org/ FUDforum], un forum web scrivù an PHP.",
- "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] a l'é un sistema lìber ëd trassadura dj'eror an sl'aragnà",
- "bw-desc-openstreetmap": "Partìa ëd mëssagi për tùit ij mëssagi [[Translating:OpenStreetMap|OpenStreetMap]]",
- "bw-desc-osm-site": "Sta partìa ëd messagi-sì a conten ij messagi d'antërfassa për [[Translating:Open Street Map|Open Street Map]].",
- "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] a peil trové an pressa j'àutor ëd na pàgina an na wiki ëd Wikimedia.",
- "translate-group-desc-collection": "Meta partìa ëd mëssagi contenent tùit ij mëssagi për l'estension [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Colession]",
- "translate-group-desc-eol": "Na partìa ëd mëssagi për l'[[Translating:EOL|Enciclopedìa dla Vita]]",
- "translate-group-desc-etherpad-lite": "[[Translating:Etherpad lite|Etherpad lite]] a l'é n'editor colaborativ vreman an temp real",
- "translate-group-desc-europeana": "[[Translating:Europeana|Europeana]] a abìlita le përson-e a esploré j'arsorse culturaj digitaj d'Euròpa",
- "translate-group-desc-flaggedrevs": "Meta partìa ëd mëssagi contenent tùit ij mëssagi për l'estension [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs Revision signalà]",
- "translate-group-desc-ihris": "Na partìa ëd mëssagi për [[Translating:iHRIS|iHRIS]]",
- "translate-group-desc-kiwix": "Na partìa ëd mëssagi për [[Translating:Kiwix|Kiwix]]",
- "translate-group-desc-mantisbt-plugin-core": "Un plugin sentral për [[Translating:MantisBT|MantisBT]]",
- "translate-group-desc-mediawiki-core-branch": "Mëssagi për na version ëstàbil ëd [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mediawikicore": "Sta partìa ëd mëssagi-sì a conten ij mëssagi dovrà ant la version alfa corenta ëd MediaWiki ({{CURRENTVERSION}})",
- "translate-group-desc-mediawikiextensions": "Meta partìa ëd mëssagi contenent tùit ij mëssagi për l'estension mantnù për MediaWiki",
- "translate-group-desc-mediawikimostused": "Sta partìa ëd mëssagi-sì a conten [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki ij 500 mëssagi dovrà pi 'd soens] an MediaWiki ({{CURRENTVERSION}})",
- "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] a l'é un sistema anformativ ëd gestion për la microfinansa",
- "translate-group-desc-nocc": "[[Translating:NOCC|NOCC]] a l'é un client webmail",
- "translate-group-desc-nodesc": "A-i é gnun-a descrission disponìbil për sta partìa ëd messagi-sì",
- "translate-group-desc-openimages-all": "Sti mëssagi-sì a son part dël prget [[Translating:Open Images|Open Images]]",
- "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] a l'é n'editor OpenStreetMap basà su Flash",
- "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] a l'é na colession d'utiss për modifiché Wikipedia",
- "translate-group-desc-readerfeedback": "Meta partìa ëd mëssagi contenent tùit ij mëssagi për l'estension [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback Sugeriment dij letor]",
- "translate-group-desc-semantic": "Partìa ëd mëssagi Meta contenent tùit ij mëssagi për tute j'estension [https://semantic-mediawiki.org/ Semantic MediaWiki]",
- "translate-group-desc-translatablepages": "Tute le pàgine ch'as peulo volté",
- "translate-group-desc-translate": "Partìa dij mëssagi Meta contenent tùit ij mëssagi për l'estension MediaWiki [https://www.mediawiki.org/wiki/Extension:Translate Tradussion]; për piasì, ch'as familiarisa con sò [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary glossari]",
- "translate-group-desc-tsint": "Na partìa ëd mëssagi për [[Translating:Intuition|Intuition]], ël sistema i18n për utiss [//tools.wmflabs.org/ Wikimedia Tool Labs] (<span class=\"plainlinks\">[[Translating talk:Intuition|agiut]] </span>)",
- "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] a l'é un servissi ch'a mostra le stra për j'escursion, la bici, ël rampichin e ël tapinagi an linia dantorn al mond. A deuvra la licensa GNU GPL",
- "translate-group-desc-waymarked-trails-help": "Le pàgine d'agiut dël sit dl'aragnà Senté marcà: http://waymarkedtrails.org/help/about",
- "translate-group-desc-wikiaextensions": "Meta partìa ëd mëssagi contenent tùit ij mëssagi për l'estension mantnùa MediaWiki dovrà da [http://www.wikia.com Wikia]",
- "translate-group-desc-wikimedia-mobile": "La partìa ëd mëssagi agregà contenent j'aplicassion për sacociàbil për ij proget Wikimedia",
- "translate-group-desc-wikimedia-mobile-wikipedia": "[[Translating:WikipediaMobile|WikipediaMobile]] a l'é n'aplicassion për sacociàbil e taulëtta antër-piataforme për lese e contribuì a Wikipedia",
- "translate-group-desc-wikimedia-mobile-wikisource": "[[Translating:WikisourceMobile|WikisourceMobile]] a l'é n'aplicassion për sacociàbil e taulëtta antër-piataforme për lese e contribuì a Wikisource",
- "translate-group-desc-wikimedia-mobile-wiktionary": "[[Translating:WiktionaryMobile|WiktionaryMobile]] a l'é n'aplicassion për sacociàbil e taulëtta antër-piataforme për lese e contribuì a Wiktionary",
- "translate-group-desc-wikimediaextensions": "Meta partìa ëd mëssagi contenent tùit ij mëssagi për j'estension MediaWiki mantnùe dovrà da la [https://wikimediafoundation.org/ Fondassion Wikimedia]",
- "translate-group-desc-wikimediaextensions-main": "Partìa ëd meta mëssagi contenent tùit ij mëssagi për j'estension [[Translating:MediaWiki|MediaWiki]] mantnùe e ch'a venta volté për ël [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee Comità dle lenghe] ëd Wikimedia",
- "translategroupdescriptions-desc": "Descrission dle partìe ëd mëssagi për ij prodot mantnù da l'estension [https://mediawiki.org/wiki/Extension:Translate Translate]"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/ps.json b/MLEB/Translate/i18n/groupdescriptions/ps.json
deleted file mode 100644
index be6fccbd..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/ps.json
+++ /dev/null
@@ -1,10 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Ahmed-Najib-Biabani-Ibrahimkhel"
- ]
- },
- "translate-group-desc-eol": "[[Translating:EOL|د ژوند پوهنغونډ]] يوه پيغام ډله",
- "translate-group-desc-kiwix": "د [[Translating:Kiwix|کيويکس]] يوه پيغام ډله",
- "translate-group-desc-translatablepages": "د ژباړې وړ ټول مخونه"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/pt-br.json b/MLEB/Translate/i18n/groupdescriptions/pt-br.json
deleted file mode 100644
index 4d9473c5..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/pt-br.json
+++ /dev/null
@@ -1,50 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Giro720",
- "Hamilton Abreu",
- "Helder.wiki",
- "555",
- "Amgauna",
- "Cainamarques",
- "Fabsouza1",
- "Lokal Profil",
- "Rodrigo codignoli",
- "Guilhermemau",
- "He7d3r",
- "Macofe"
- ]
- },
- "bw-desc-freecol": "Antes de traduzir o FreeCol para a sua língua, por favor leia [[Translating:FreeCol]]. O Freecol utiliza a licença GPL.",
- "bw-desc-fudforum": "[http://fudforum.org/ FUDforum], um fórum web escrito em PHP.",
- "bw-desc-mantisbt": "O [[Translating:MantisBT|MantisBT]] é um sistema de seguimento de bugs livre e online. Por favor reporte quaisquer problemas em [[Support]].",
- "bw-desc-openstreetmap": "Grupo para todas as mensagens do [[Translating:OpenStreetMap|OpenStreetMap]]",
- "bw-desc-osm-site": "Este grupo contém as mensagens de interface do [[Translating:Open Street Map|Open Street Map]].\nConsulte [http://unicode.org/repos/cldr-tmp/trunk/diff/supplemental/language_plural_rules.html#{{UILANGCODE}} a página Unicode CLDR para uma explicação das chaves plurais].",
- "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] é capaz de encontrar rapidamente os autores de uma página em um wiki da Wikimedia.",
- "translate-group-desc-blockly": "Um grupo de mensagens para [[Translating:Blockly|Blockly]]",
- "translate-group-desc-bluespice": "Grupo de mensagens do Meta contendo todas as mensagens para a extensão do MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:BlueSpice Blue Spice]",
- "translate-group-desc-collection": "Grupo de mensagens do Meta contendo todas as mensagens para a extensão do [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection]",
- "translate-group-desc-eol": "Grupo de mensagens da [[Translating:EOL|Encyclopedia of Life]]",
- "translate-group-desc-etherpad-lite": "O [[Translating:Etherpad lite|Etherpad lite]] é um editor colaborativo verdadeiramente em tempo real",
- "translate-group-desc-flaggedrevs": "Grupo de mensagens do Meta contendo todas as mensagens para a extensão do [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs FlaggedRevs]",
- "translate-group-desc-ihris": "Um grupo de mensagens para [[Translating:iHRIS|iHRIS]]",
- "translate-group-desc-kiwix": "Um grupo de mensagens para [[Translating:Kiwix|Kiwix]]",
- "translate-group-desc-mantisbt-plugin-core": "Um plugin para o [[Translating:MantisBT|MantisBT]]",
- "translate-group-desc-mediawikicore": "Este grupo de mensagens contém as mensagens utilizadas na atual versão alfa do MediaWiki ({{CURRENTVERSION}})",
- "translate-group-desc-mediawikiextensions": "Meta-grupo de mensagens contendo todas as mensagens para extensões do MediaWiki suportadas",
- "translate-group-desc-mediawikiskins": "Meta-grupo de mensagens contendo todas as mensagens para extensões do MediaWiki suportadas",
- "translate-group-desc-mediawikimostused": "Este grupo de mensagens contém as [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 mensagens utilizadas com mais frequência] no [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] é um sistema de informação de gestão (MIS) para microfinanças",
- "translate-group-desc-nocc": "O [http://nocc.sourceforge.net NOCC] é um cliente de e-mail escrito em PHP. Por favor reporte qualquer problema em [[Support]].",
- "translate-group-desc-nodesc": "Não existe descrição para este grupo de mensagens",
- "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] é um conjunto de ferramentas para editar a Wikipédia",
- "translate-group-desc-readerfeedback": "Grupo de mensagens do Meta contendo todas as mensagens para a extensão do [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback]",
- "translate-group-desc-semantic": "Grupo de mensagens do Meta contendo todas as mensagens de todas extensões do [https://semantic-mediawiki.org/ Semantic MediaWiki]",
- "translate-group-desc-translatablepages": "Todas as páginas traduzíveis",
- "translate-group-desc-translate": "Grupo de mensagens do Meta contendo todas as mensagens da extensão do MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Tradução]; se familiarize com seus [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary jargões]",
- "translate-group-desc-tsint": "Um grupo de mensagens para [[Tradução: Intuition|Intuição]], o sistema de i18n para ferramentas [//tools.wmflabs.org/ Wikimedia ferramenta Labs] (<span class=\"plainlinks\"> [[Tradução conversa: Intuition|support]]</span>)",
- "translate-group-desc-wikiaextensions": "Este meta-grupo contém todas as mensagens para as extensões suportadas do MediaWiki que são usadas pela [http://www.wikia.com Wikia]",
- "translate-group-desc-wikimediaextensions": "Grupo de mensagens do Meta contendo todas as mensagens para as extensões MediaWiki suportadas e utilizadas pela [https://wikimediafoundation.org/ Fundação Wikimedia]",
- "translate-group-desc-wikimediaextensions-main": "Grupo de mensagens do Meta contendo todas as mensagens para as extensões [[Translating:MediaWiki|MediaWiki]] suportadas que requerem tradução para o [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee Comité de Línguas] da Wikimedia",
- "translategroupdescriptions-desc": "Descrições dos grupos de mensagens dos produtos suportados pela extensão [https://mediawiki.org/wiki/Extension:Translate Translate]"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/pt.json b/MLEB/Translate/i18n/groupdescriptions/pt.json
deleted file mode 100644
index ee19a01b..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/pt.json
+++ /dev/null
@@ -1,67 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Giro720",
- "Hamilton Abreu",
- "Luckas",
- "McDutchie",
- "Waldir",
- "Fúlvio",
- "Imperadeiro98",
- "Lokal Profil",
- "Vitorvicentevalente",
- "Macofe"
- ]
- },
- "bw-desc-freecol": "Antes de traduzir o FreeCol para a sua língua, por favor leia [[Translating:FreeCol]]. O Freecol utiliza a licença GPL.",
- "bw-desc-fudforum": "[http://fudforum.org/ FUDforum], um fórum web escrito em PHP.",
- "bw-desc-mantisbt": "O [[Translating:MantisBT|MantisBT]] é um sistema de seguimento de erros ''on-line''.",
- "bw-desc-openstreetmap": "Grupo para todas as mensagens do [[Translating:OpenStreetMap|OpenStreetMap]]",
- "bw-desc-osm-site": "O [[Translating:OpenStreetMap|OpenStreetMap]] é um mapa editável de todo o mundo",
- "bw-desc-wikiblame": "O [[Translating:WikiBlame|WikiBlame]] encontra rapidamente os autores de alterações em páginas nas wikis da Wikimedia",
- "translate-group-desc-blockly": "Um grupo de mensagens para [[Translating:Blockly|Blockly]]",
- "translate-group-desc-bluespice": "Grupo de mensagens do Meta que contém todas as mensagens da extensão [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:BlueSpice Blue Spice]",
- "translate-group-desc-collection": "Grupo de mensagens do Meta que contém todas as mensagens para a extensão do [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Colecção]",
- "translate-group-desc-eol": "Um grupo de mensagens para a [[Translating:EOL|Enciclopédia da Vida]]",
- "translate-group-desc-etherpad-lite": "O [[Translating:Etherpad lite|Etherpad lite]] é um editor colaborativo em tempo verdadeiramente real",
- "translate-group-desc-europeana": "[[Translating:Europeana|Europeana 1914-1918]] é um sítio web com histórias, filmes e material histórico acerca da Primeira Guerra Mundial",
- "translate-group-desc-flaggedrevs": "Grupo de mensagens do Meta que contém todas as mensagens para a extensão do [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs Revisão de Edições]",
- "translate-group-desc-fuel": "[[Translating:FUEL|FUEL]] traz mais consistência à tradução de software",
- "translate-group-desc-huggle": "[[Translating:Huggle|Huggle]] é uma aplicação rápida de procura de edições para lidar com o vandalismo nos projetos Wikimedia",
- "translate-group-desc-ihris": "Um grupo de mensagens para o [[Translating:iHRIS|iHRIS]]",
- "translate-group-desc-kiwix": "Um grupo de mensagens para o [[Translating:Kiwix|Kiwix]]",
- "translate-group-desc-mantisbt-plugin-core": "Um plugin para o [[Translating:MantisBT|MantisBT]]",
- "translate-group-desc-mathjax": "O [[Translating:MathJax|MathJax]] é uma biblioteca multi-browser em JavaScript que apresenta notação matemática em browsers da internet",
- "translate-group-desc-mediawiki-core-branch": "Mensagens para uma versão estável do [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mediawikicore": "Este grupo contém as mensagens utilizadas na atual versão alfa do [[Translating:MediaWiki|MediaWiki]] ({{CURRENTVERSION}})",
- "translate-group-desc-mediawikiextensions": "Este meta-grupo contém todas as mensagens para as extensões do [[Translating:MediaWiki|MediaWiki]] suportadas",
- "translate-group-desc-mediawikiskins": "Este meta-grupo contém todas as mensagens para os temas do [[Translating:MediaWiki|MediaWiki]] suportados",
- "translate-group-desc-mediawikimostused": "Este grupo de mensagens contém as [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 mensagens mais frequentemente utilizadas] no [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] é um sistema de informação de gestão (MIS) para microfinanças",
- "translate-group-desc-nocc": "O [http://nocc.sourceforge.net NOCC] é um cliente de email escrito em PHP. Por favor reporte quaisquer problemas em [[Support]].",
- "translate-group-desc-nodesc": "Não existe descrição para este grupo de mensagens",
- "translate-group-desc-openimages-all": "Estas mensagens fazem parte do projeto [[Translating:Open Images|Open Images]]",
- "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] é um editor do OpenStreetMap baseado em Flash",
- "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] é um conjunto de ferramentas para editar a Wikipédia",
- "translate-group-desc-readerfeedback": "Este meta-grupo contém todas as mensagens para a extensão do [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback]",
- "translate-group-desc-semantic": "Este meta-grupo contém todas as mensagens para todas as extensões do [https://semantic-mediawiki.org/ MediaWiki Semântico]",
- "translate-group-desc-translatablepages": "Todas as páginas traduzíveis",
- "translate-group-desc-translate": "Este meta-grupo contém todas as mensagens para a extensão do [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Traduzir]; familiarize-se com o respetivo [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary glossário], por favor",
- "translate-group-desc-tsint": "Um grupo de mensagens para o [[Translating:Intuition|Intuition]], o sistema de internacionalização das ferramentas [//tools.wmflabs.org/ Wikimedia Tool Labs] (<span class=\"plainlinks\">[[Translating talk:Intuition|apoio]]</span>)",
- "translate-group-desc-universallanguageselector": "Este meta-grupo contém todas as mensagens para a extensão do [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector UniversalLanguageSelector] (ULS) e pacotes de software relacionados",
- "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]] é uma ferramenta que auxilia o carregamento de ficheiros no Wikimedia Commons e noutros projetos Wikimedia",
- "translate-group-desc-visualeditor": "Este meta-grupo contém todas as mensagens para a extensão do [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:VisualEditor Editor Visual] e pacotes de software relacionados",
- "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] é um serviço que mostra rotas de caminhada, ciclismo, ''mountain bike'' e patinação em todo o mundo. Utiliza a licença GNU GPL",
- "translate-group-desc-waymarked-trails-help": "As páginas de ajuda dos sites Waymarked Trails: http://waymarkedtrails.org/help/about",
- "translate-group-desc-wikiaextensions": "Este meta-grupo contém todas as mensagens para as extensões suportadas do [[Translating:MediaWiki|MediaWiki]] que são usadas pela [http://www.wikia.com Wikia]",
- "translate-group-desc-wikimania-scholarships-app": "Grupo de mensagens para a aplicação [https://scholarships.wikimedia.org/apply Wikimania Scholarship]",
- "translate-group-desc-wikimedia-mobile": "Grupo de mensagens agregadas para as aplicações móveis dos projetos Wikimedia",
- "translate-group-desc-wikimedia-mobile-wikipedia": "O [[Translating:WikipediaMobile|WikipediaMobile]] é uma aplicação multi-plataforma para telemóveis e ''tablets'' que permite ler e editar a Wikipédia",
- "translate-group-desc-wikimedia-mobile-wikipedia-android": "O [[Translating:WikipediaMobile|Wikipedia Android]] é a versão específica para o Android da aplicação móvel da Wikipédia",
- "translate-group-desc-wikimedia-mobile-wikipedia-ios": "O [[Translating:WikipediaMobile|Wikipedia iOS]] é a versão específica para o iOS da aplicação móvel da Wikipédia",
- "translate-group-desc-wikimedia-mobile-wikisource": "O [[Translating:WikisourceMobile|WikisourceMobile]] é uma aplicação multi-plataforma para telemóveis e ''tablets'' que permite ler e editar a Wikisource",
- "translate-group-desc-wikimedia-mobile-wiktionary": "[[Translating:WiktionaryMobile|WiktionaryMobile]] é uma aplicação multi-plataforma para telemóveis e ''tablets'' que permite ler e editar o Wikcionário",
- "translate-group-desc-wikimediaextensions": "Este meta-grupo contém todas as mensagens para as extensões [[Translating:MediaWiki|MediaWiki]] suportadas, usadas pela [https://wikimediafoundation.org/ Wikimedia Foundation]",
- "translate-group-desc-wikimediaextensions-main": "Este meta-grupo contém todas as mensagens para as extensões [[Translating:MediaWiki|MediaWiki]] suportadas, que requerem tradução para a [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee Comissão de Idiomas] da Wikimedia",
- "translategroupdescriptions-desc": "Descrições dos grupos de mensagens dos produtos suportados pela extensão [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate]"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/qqq.json b/MLEB/Translate/i18n/groupdescriptions/qqq.json
deleted file mode 100644
index 3fe57cec..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/qqq.json
+++ /dev/null
@@ -1,41 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Purodha",
- "Shirayuki",
- "Liuxinyu970226",
- "Siebrand"
- ]
- },
- "bw-desc-freecol": "{{doc-important|Do not translate the link target <code>Translating:FreeCol</code>.}}",
- "bw-desc-fudforum": "{{doc-important|Do not translate the link target <code>Translating:FUDforum</code>.}}",
- "bw-desc-mantisbt": "{{doc-important|Do not translate the link target <code>Translating:MantisBT</code>.}}",
- "bw-desc-openstreetmap": "Do not translate the link target <code>Translating:OpenStreetMap</code>.",
- "bw-desc-osm-site": "{{doc-important|Do not translate the link target <code>Translating:OpenStreetMap</code>.}}",
- "bw-desc-wikiblame": "Do not translate the link target <code>Translating:WikiBlame</code>.",
- "translate-group-desc-eol": "{{doc-important|Do not translate the link target <code>Translating:EOL</code>.}}",
- "translate-group-desc-etherpad-lite": "{{doc-important|Do not translate the link target <code>Translating:Etherpad lite</code>.}}",
- "translate-group-desc-europeana": "{{doc-important|Do not translate the link target <code>Translating:Europeana</code>.}}",
- "translate-group-desc-huggle": "{{doc-important|Do not translate the link target <code>Translating:Huggle</code>.}}",
- "translate-group-desc-ihris": "{{doc-important|Do not translate the link target <code>Translating:iHRIS</code>.}}",
- "translate-group-desc-inaturalist": "{{doc-important|Do not translate the link target <code>Translating:iNaturalist</code>.}}",
- "translate-group-desc-kiwix": "{{doc-important|Do not translate the link target <code>Translating:Kiwix</code>.}}",
- "translate-group-desc-mantisbt-plugin-core": "Do not translate the link target <code>Translating:MantisBT</code>.",
- "translate-group-desc-mediawiki-core-branch": "{{doc-important|Do not translate the link target <code>Translating:MediaWiki</code>.}}",
- "translate-group-desc-mediawikiapi": "{{doc-important|Do not translate the link target <code>Translating:MediaWiki</code>.}}",
- "translate-group-desc-mediawikicore": "{{doc-important|Do not translate the link target <code>Translating:MediaWiki</code>.}}",
- "translate-group-desc-mediawikiextensions": "{{doc-important|Do not translate the link target <code>Translating:MediaWiki</code>.}}",
- "translate-group-desc-mediawikiskins": "{{doc-important|Do not translate the link target <code>Translating:MediaWiki</code>.}}",
- "translate-group-desc-mediawikimostused": "{{doc-important|Do not translate the link target <code>Translating:MediaWiki</code>.}}",
- "translate-group-desc-mifos": "Do not translate the link target <code>Translating:Mifos</code>.",
- "translate-group-desc-nfcring-control": "{{doc-important|Do not translate the link target <code>Translating:NFC Ring Control</code>.}}",
- "translate-group-desc-nocc": "Do not translate the link target <code>Translating:NOCC</code>.",
- "translate-group-desc-openimages-all": "Do not translate the link target <code>Translating:Open Images</code>.",
- "translate-group-desc-potlatch2": "{{doc-important|Do not translate the link target <code>Translating:OpenStreetMap</code>.}}",
- "translate-group-desc-pywikipedia": "{{doc-important|Do not translate the link target <code>Translating:Pywikibot</code>.}}",
- "translate-group-desc-tsint": "{{doc-important|Do not translate the link target <code>Translating:Intuition</code>.}}",
- "translate-group-desc-waymarked-trails": "{{doc-important|Do not translate the link target <code>Translating:Waymarked Trails</code>.}}",
- "translate-group-desc-wikimedia-mobile-wikipedia": "{{doc-important|Do not translate the link target <code>Translating:WikipediaMobile</code>.}}",
- "translate-group-desc-wikimedia-mobile-wikisource": "{{doc-important|Do not translate the link target <code>Translating:WikisourceMobile</code>.}}",
- "translate-group-desc-wikimedia-mobile-wiktionary": "{{doc-important|Do not translate the link target <code>Translating:WiktionaryMobile</code>.}}"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/qu.json b/MLEB/Translate/i18n/groupdescriptions/qu.json
deleted file mode 100644
index 7c624ea5..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/qu.json
+++ /dev/null
@@ -1,8 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "AlimanRuna"
- ]
- },
- "translate-group-desc-mediawiki-core-branch": "[[Translating:MediaWiki|MediaWiki]]manta takyaq musuqchasqapaq willaykuna"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/ro.json b/MLEB/Translate/i18n/groupdescriptions/ro.json
deleted file mode 100644
index 5acc3b2e..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/ro.json
+++ /dev/null
@@ -1,42 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Minisarm",
- "Ion",
- "Macofe"
- ]
- },
- "bw-desc-freecol": "[[Translating:FreeCol|FreeCol]] este un joc de strategie de tip ''turn-based''",
- "bw-desc-fudforum": "[[Translating:FUDforum|FUDforum]] este un software bazat pe web dedicat forumurilor de discuții",
- "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] este un urmăritor de erori bazat pe web",
- "bw-desc-openstreetmap": "Toate mesajele asociate cu [[Translating:OpenStreetMap|OpenStreetMap]]",
- "bw-desc-osm-site": "[[Translating:OpenStreetMap|OpenStreetMap]] este o hartă a lumii care poate fi liber modificată",
- "bw-desc-wikiblame": "[[Translating:WikiBlame|WikiBlame]] este capabil să găsească rapid autorii unei pagini dintr-un site wiki susținut de Wikimedia",
- "translate-group-desc-collection": "Grup de mesaje meta conținând toate mesajele extensiei [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection] a [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-eol": "Un grup de mesaje pentru [[Translating:EOL|Encyclopedia of Life]]",
- "translate-group-desc-europeana": "[[Translating:Europeana|Europeana]] permite oamenilor să exploreze resursele digitale ale culturii europene",
- "translate-group-desc-flaggedrevs": "Grup de mesaje meta conținând toate mesajele extensiei [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs FlaggedRevs] a [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-ihris": "Un grup de mesaje pentru [[Translating:iHRIS|iHRIS]]",
- "translate-group-desc-kiwix": "Un grup de mesaj pentru [[Translating:Kiwix|Kiwix]]",
- "translate-group-desc-mantisbt-plugin-core": "Un plugin-nucleu pentru [[Translating:MantisBT|MantisBT]]",
- "translate-group-desc-mediawiki-core-branch": "Mesaje pentru una din versiunile stabile ale [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mediawikicore": "Acest grup de mesaje conține mesajele utilizate în actuala versiune alpha a software-ului [[Translating:MediaWiki|MediaWiki]] ({{CURRENTVERSION}})",
- "translate-group-desc-mediawikiextensions": "Grup de mesaje meta conținând toate mesajele extensiilor sotware-ului [[Translating:MediaWiki|MediaWiki]] suportate",
- "translate-group-desc-mediawikimostused": "Acest grup de mesaje conține [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki cele mai utilizate 500 de mesaje] de [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] este un sistem pentru microfinanțare de administrare a informației",
- "translate-group-desc-nocc": "[[Translating:NOCC|NOCC]] este un client de poștă electronică",
- "translate-group-desc-nodesc": "Nu există descriere pentru acest grup de mesaje",
- "translate-group-desc-openimages-all": "Aceste mesaje sunt componente ale proiectului [[Translating:Open Images|Open Images]]",
- "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] este un editor OpenStreetMap bazat în Flash",
- "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] este o colecție de unelte utilizate la modificarea paginilor din Wikipedia",
- "translate-group-desc-readerfeedback": "Grup de mesaje meta conținând toate mesajele extensiei [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback] a [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-semantic": "Grup de mesaje meta care conține toate mesajele tuturor extensiilor [https://semantic-mediawiki.org/ Semantic MediaWiki]",
- "translate-group-desc-translatablepages": "Toate paginile traductibile",
- "translate-group-desc-translate": "Grup de mesaje meta conținând toate mesajele extensiei [https://www.mediawiki.org/wiki/Extension:Translate Translate] a MediaWiki",
- "translate-group-desc-tsint": "Un grup de mesaje pentru [[Translating:Intuition|Intuition]], sistemul i18n dedicat uneltelor [//tools.wmflabs.org/ Wikimedia Tool Labs] (<span class=\"plainlinks\">[[Translating talk:Intuition|suport]]</span>)",
- "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] este un serviciu care afișează itinerarii pentru drumeții, ciclism, ciclism montan și patinaj cu role în jurul lumii. Utilizează licența GNU GPL",
- "translate-group-desc-wikiaextensions": "Grup de mesaje meta conținând toate mesajele extensiilor susținute de MediaWiki și utilizate de [http://www.wikia.com Wikia]",
- "translate-group-desc-wikimediaextensions": "Grup de mesaje meta conținând toate mesajele extensiilor susținute de MediaWiki și utilizate de [https://wikimediafoundation.org/ Fundația Wikimedia]",
- "translate-group-desc-wikimediaextensions-main": "Grup de mesaje meta conținând toate mesajele extensiilor susținute de [[Translating:MediaWiki|MediaWiki]] și solicitate a fi traduse pentru [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee Comitetul lingvistic] al Wikimedia",
- "translategroupdescriptions-desc": "Descrieri ale grupului de mesaje pentru produse susținute de extensia [https://mediawiki.org/wiki/Extension:Translate Translate]"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/roa-tara.json b/MLEB/Translate/i18n/groupdescriptions/roa-tara.json
deleted file mode 100644
index 7f5e31ef..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/roa-tara.json
+++ /dev/null
@@ -1,21 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Joetaras",
- "Macofe"
- ]
- },
- "translate-group-desc-collection": "Meta gruppe de messàgge tène tutte le messàgge pe l'estenzione de [[Translating:MediaWiki|MediaUicchi]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collezzione]",
- "translate-group-desc-eol": "'Nu gruppe de messàgge pa [[Translating:EOL|'Ngrclopedije d'a Vite]]",
- "translate-group-desc-flaggedrevs": "Meta gruppe de messàgge tène tutte le messàgge pe l'estenzione de [[Translating:MediaWiki|MediaUicchi]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs FlaggedRevs]",
- "translate-group-desc-ihris": "'Nu gruppe de messàgge pe [[Translating:iHRIS|iHRIS]]",
- "translate-group-desc-kiwix": "'Nu gruppe de messàgge pe [[Translating:Kiwix|Kiwix]]",
- "translate-group-desc-mediawikicore": "Stu gruppe de messàgge tène le messàgge ausate jndr'à versione alfa de mò de [[Translating:MediaWiki|MediaUicchi]] ({{CURRENTVERSION}})",
- "translate-group-desc-mediawikiextensions": "Meta gruppe de messàgge tène tutte le messàgge pe le estenziune supportate pe [[Translating:MediaWiki|MediaUicchi]]",
- "translate-group-desc-nodesc": "Nisciune descrizione jè disponibbile pe stu gruppe de messàgge",
- "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] jè 'na collezzione de struminde pe cangià Uicchipèdie",
- "translate-group-desc-readerfeedback": "Meta gruppe de messàgge tène tutte le messàgge pe l'estenzione de [[Translating:MediaWiki|MediaUicchi]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback]",
- "translate-group-desc-semantic": "Meta gruppe de messàgge tène tutte le messàgge pe tutte le estenziune [https://semantic-mediawiki.org/ Semandiche MediaUicchi]",
- "translate-group-desc-translatablepages": "Tutte le pàggene traducibbele",
- "translategroupdescriptions-desc": "Descriziune de le gruppe de messàgge pe le prodotte supportate l'estenzione de da [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Traduzione]"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/ru.json b/MLEB/Translate/i18n/groupdescriptions/ru.json
deleted file mode 100644
index 135a9eb4..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/ru.json
+++ /dev/null
@@ -1,72 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Eleferen",
- "Ferrer",
- "Kaganer",
- "Lockal",
- "MaxSem",
- "Okras",
- "Rubin",
- "Александр Сигачёв",
- "Rubin16",
- "Lokal Profil",
- "Максим777",
- "Macofe"
- ]
- },
- "bw-desc-freecol": "Прежде чем переводить FreeCol на ваш язык, пожалуйста, прочтите [[Translating:FreeCol]]. Freecol использует лицензию GPL.",
- "bw-desc-fudforum": "[http://fudforum.org/ FUDforum] — веб-форум, написанный на PHP.",
- "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] — свободная веб-система отслеживания ошибок.",
- "bw-desc-openstreetmap": "Группа сообщений для всех сообщений [[Translating:OpenStreetMap|OpenStreetMap]]",
- "bw-desc-osm-site": "Эта группа сообщений содержит сообщения пользовательского интерфейса [[Translating:Open Street Map|Open Street Map]].",
- "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] позволяет быстро найти авторов страницы в проектах Викимедиа.",
- "translate-group-desc-blockly": "Группа сообщений для [[Translating:Blockly|Blockly]]",
- "translate-group-desc-bluespice": "Мета-группа сообщений, содержащая все сообщения расширений [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:BlueSpice Blue Spice]",
- "translate-group-desc-collection": "Мета-группа сообщений, содержащая все сообщения расширения [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection]",
- "translate-group-desc-eol": "Группа сообщений для [[Translating:EOL|Энциклопедия жизни]]",
- "translate-group-desc-etherpad-lite": "[[Translating:Etherpad lite|Etherpad lite]] — это редактор, предназначенный для совместной работы в реальном времени",
- "translate-group-desc-europeana": "[[Translating:Europeana|Europeana 1914—1918]] — это веб-сайт с историями, фильмами и историческими материалами о Первой мировой войне",
- "translate-group-desc-flaggedrevs": "Мета-группа сообщений, содержащая все сообщения расширения [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs FlaggedRevs]",
- "translate-group-desc-fuel": "[[Translating:FUEL|FUEL]] приносит больше согласованности при переводе программного обеспечения",
- "translate-group-desc-huggle": "[[Translating:Huggle|Huggle]] — это быстрое браузерное приложение для сравнения, помогающее в борьбе с вандализмом в проектах Викимедиа",
- "translate-group-desc-ihris": "Группа сообщений для [[Translating:iHRIS|iHRIS]]",
- "translate-group-desc-inaturalist": "[[Translating:INaturalist|iNaturalist]] — это веб-сайт, позволяющий записывать то, что вы видите в природе, встречаться с другими любителями природы и узнавать о мире природы",
- "translate-group-desc-kiwix": "Группа сообщений для [[Translating:Kiwix|Kiwix]]",
- "translate-group-desc-mantisbt-plugin-core": "Основной плагин для [[Translating:MantisBT|MantisBT]]",
- "translate-group-desc-mathjax": "[[Translating:MathJax|MathJax]] — это кросс-браузерная JavaScript-библиотека, которая отображает математические обозначения в веб-браузерах",
- "translate-group-desc-mediawiki-core-branch": "Сообщения для стабильной версии [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mediawikiapi": "Эта группа сообщений содержит сообщения, используемые в Action API для текущей альфа-версии [[Translating:MediaWiki|MediaWiki]] ({{CURRENTVERSION}})",
- "translate-group-desc-mediawikicore": "Эта группа сообщений содержит сообщения, используемые в текущей альфа-версии MediaWiki ({{CURRENTVERSION}})",
- "translate-group-desc-mediawikiextensions": "Мета-группа сообщений, содержащая все сообщения поддерживаемых расширений MediaWiki",
- "translate-group-desc-mediawikiskins": "Мета-группа сообщений, содержащая все сообщения поддерживаемых тем оформления для [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mediawikimostused": "Эта группа сообщений содержит [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 наиболее часто используемых сообщений] в [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] — это система управления информацией в области микрофинансов",
- "translate-group-desc-nfcring-control": "[[Translating:NFC_Ring_Control|NFC Ring Control]] — это мобильное приложение для взаимодействия с NFC-метками",
- "translate-group-desc-nocc": "[http://nocc.sourceforge.net NOCC] — почтовый веб-клиент, написанный на PHP. Пожалуйста, сообщайте о любых недостатках на [[Support|странице поддержки]].",
- "translate-group-desc-nodesc": "Для этой группы сообщений не доступно описание.",
- "translate-group-desc-openimages-all": "Эти сообщения относятся к проекту [[Translating:Open Images|Open Images]]",
- "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] — это основанный на Flash редактор OpenStreetMap",
- "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] — набор инструментов для редактирования Википедии",
- "translate-group-desc-readerfeedback": "Мета-группа сообщений, содержащая все сообщения расширения [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback]",
- "translate-group-desc-semantic": "Мета-группа сообщений, содержащая все сообщения для всех расширений [https://semantic-mediawiki.org/ Semantic MediaWiki]",
- "translate-group-desc-translatablepages": "Все страницы для перевода",
- "translate-group-desc-translate": "Мета-группа сообщений, содержащая все сообщения расширения [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate]. Пожалуйста, ознакомьтесь с его [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary словарём терминов]",
- "translate-group-desc-tsint": "Группа сообщений для [[Translating:Intuition|Intuition]], системы интернационализации [//tools.wmflabs.org/ Wikimedia Tool Labs] (<span class=\"plainlinks\">[[Translating talk:Intuition|поддержка]]</span>)",
- "translate-group-desc-universallanguageselector": "Группа мета-сообщений, содержащая все сообщения для [[Translating:MediaWiki|MediaWiki]]-расширения [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector UniversalLanguageSelector] (ULS) и связанных с ними программных пакетов",
- "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]] — это средство для загрузки файлов на Викисклад и другие проекты Викимедиа",
- "translate-group-desc-visualeditor": "Группа мета-сообщений, содержащая все сообщения для [[Translating:MediaWiki|MediaWiki]]-расширения [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:VisualEditor VisualEditor] и связанных с ними программных пакетов",
- "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] — сервис, показывающий маршруты и места по всему миру, подходящие для пеших прогулок, велоспорта, поездок на горном велосипеде и катания на роликовых коньках. Использует лицензию GNU GPL.",
- "translate-group-desc-waymarked-trails-help": "Справочные страницы сайта Waymarked Trails: http://waymarkedtrails.org/help/about",
- "translate-group-desc-wikiaextensions": "Мета-группа сообщений, содержащая все сообщения поддерживаемых расширений [[Translating:MediaWiki|MediaWiki]], используемых [http://www.wikia.com Wikia]",
- "translate-group-desc-wikimania-scholarships-app": "Группа сообщений для [https://scholarships.wikimedia.org/apply заявок Wikimania Scholarship]",
- "translate-group-desc-wikimedia-mobile": "Агрегированная группа, содержащая сообщения всех мобильных приложений для проектов Фонда Викимедиа",
- "translate-group-desc-wikimedia-mobile-wikipedia": "[[Translating:WikipediaMobile|WikipediaMobile]] — кросспатформенное приложение для мобильных устройств и планшетов, обеспечивающее чтение и редактирование Википедии",
- "translate-group-desc-wikimedia-mobile-wikipedia-android": "[[Translating:WikipediaMobile|Википедия для Android]] — это Android-версия мобильного приложения «Википедия»",
- "translate-group-desc-wikimedia-mobile-wikipedia-ios": "[[Translating:WikipediaMobile|Википедия для iOS]] — это iOS-версия мобильного приложения «Википедия»",
- "translate-group-desc-wikimedia-mobile-wikisource": "[[Translating:WikisourceMobile|WikisourceMobile]] — кросспатформенное приложение для мобильных устройств и планшетов, обеспечивающее чтение и редактирование Викитеки",
- "translate-group-desc-wikimedia-mobile-wiktionary": "[[Translating:WiktionaryMobile|WiktionaryMobile]] — кросспатформенное приложение для мобильных устройств и планшетов, обеспечивающее чтение и редактирование Викисловаря",
- "translate-group-desc-wikimediaextensions": "Мета-группа сообщений, содержащая все сообщения поддерживаемых расширений [[Translating:MediaWiki|MediaWiki]], используемых [https://wikimediafoundation.org/ Фондом Викимедиа]",
- "translate-group-desc-wikimediaextensions-main": "Мета-группа сообщений, содержащая все сообщения расширений [[Translating:MediaWiki|MediaWiki]], которые требуется перевести для [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee Языкового комитета] Викимедии",
- "translategroupdescriptions-desc": "Описания групп сообщений для продуктов, поддерживаемых расширением [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate]"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/rue.json b/MLEB/Translate/i18n/groupdescriptions/rue.json
deleted file mode 100644
index 7131cb75..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/rue.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Gazeb"
- ]
- },
- "translate-group-desc-collection": "Тота метаґрупа овсягує повідомлня росшырїня [https://www.mediawiki.org/wiki/Extension:Collection Collection]",
- "translate-group-desc-flaggedrevs": "Тота метаґрупа обсягує повідомлїня росшырїня [https://www.mediawiki.org/wiki/Extension:FlaggedRevs FlaggedRevs]",
- "translate-group-desc-mediawikicore": "Тота ґрупа повідомлїнь обсягує повідомлїня хоснованы в сучасній алфаверзії alfaverzi MediaWiki ({{CURRENTVERSION}})",
- "translate-group-desc-mediawikiextensions": "Тота метаґрупа обсягує повідомлїня вшыткых підпорованых росшырїнь [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mediawikimostused": "Тота ґрупа повідомлїнь обсягує [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 найхоснованїшых повідомлїнь] в MediaWiki",
- "translate-group-desc-nodesc": "Тота ґрупа повідомлїнь не мать попис",
- "translate-group-desc-readerfeedback": "Тота метаґрупа овсягує повідомлня росшырїня [https://www.mediawiki.org/wiki/Extension:ReaderFeedback ReaderFeedback]",
- "translate-group-desc-semantic": "Тота метаґрупа обсягує вшыткы повідомлїня вшыткых росшырїнь [https://semantic-mediawiki.org/ Semantic MediaWiki]",
- "translate-group-desc-translate": "Тота метаґрупа обсягує повідомлїня росшырїня [https://www.mediawiki.org/wiki/Extension:Translate Translate]",
- "translate-group-desc-wikiaextensions": "Тота метаґрупа обсягує повідомлїня MediaWiki-росшырїнь, котры ся хоснують на [http://www.wikia.com Wikia]",
- "translategroupdescriptions-desc": "Пописы ґруп повідомлїн продкуктів підпророваных росшырїнём [https://mediawiki.org/wiki/Extension:Translate Translate]"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/sco.json b/MLEB/Translate/i18n/groupdescriptions/sco.json
deleted file mode 100644
index 382678b2..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/sco.json
+++ /dev/null
@@ -1,56 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "John Reid",
- "Pkra",
- "Macofe"
- ]
- },
- "bw-desc-freecol": "[[Translating:FreeCol|FreeCol]] is ae turn-based strategie game",
- "bw-desc-fudforum": "[[Translating:FUDforum|FUDforum]] is wab-based discussion forum saffware",
- "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] is wab-based proablem trackin saffware",
- "bw-desc-openstreetmap": "Aw messages relatit til [[Translating:OpenStreetMap|ApenStreetMap]]",
- "bw-desc-osm-site": "[[Translating:OpenStreetMap|OpenStreetMap]] is aen eeditable map o the hale planet",
- "bw-desc-wikiblame": "[[Translating:WikiBlame|WikiBlame]] is quicklie able tae fynd the writers o ae pairt o ae page in ae Wikimedia wiki",
- "translate-group-desc-blockly": "Ae message groop fer [[Translating:Blockly|Blockly]]",
- "translate-group-desc-bluespice": "Meta message groop containin aw o the messages fer the MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:BlueSpice Blue Spice] extensions",
- "translate-group-desc-collection": "Meta message groop containin aw messages fer the [[Translating:MediaWiki|MediaWiki]] extension [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection]",
- "translate-group-desc-eol": "Ae message groop fer [[Translating:EOL|Encyclypædia o Life]]",
- "translate-group-desc-etherpad-lite": "[[Translating:Etherpad lite|Etherpad lite]] is ae reallie-real time collaberateeve eediter",
- "translate-group-desc-flaggedrevs": "Meta message groop containin aw messages fer the [[Translating:MediaWiki|MediaWiki]] extension [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs FlaggedRevs]",
- "translate-group-desc-fuel": "[[Translating:FUEL|FUEL]] brings mair conseestancie til saffware owersetin",
- "translate-group-desc-ihris": "Ae message groop fer [[Translating:iHRIS|iHRIS]]",
- "translate-group-desc-kiwix": "Ae message groop fer [[Translating:Kiwix|Kiwix]]",
- "translate-group-desc-mantisbt-plugin-core": "Ae core plugin fer [[Translating:MantisBT|MantisBT]]",
- "translate-group-desc-mathjax": "[[Translating:MathJax|MathJax]] is ae cross-brouser JavaScript librie that displeys mathemateecal notation in wab brousers",
- "translate-group-desc-mediawiki-core-branch": "Messages fer ae stable version o [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mediawikicore": "This message groop contains the messages uised in the Nou alpha version o [[Translating:MediaWiki|MediaWiki]] ({{CURRENTVERSION}})",
- "translate-group-desc-mediawikiextensions": "Meta message groop containin aw messages fer supported extensions fer [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mediawikimostused": "This message groop contains the [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 maist aften uised messages] in [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] is ae management information system fer micræfinance",
- "translate-group-desc-nodesc": "Naw descreeption is available fer this message groop",
- "translate-group-desc-openimages-all": "Thir messages ar pairt o the [[Translating:Open Images|Apen Eemages]] waurk",
- "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] is ae Flash-based ApenStreetMap eediter",
- "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] is ae collection o tuils fer tae eedit Wikipædia",
- "translate-group-desc-readerfeedback": "Meta message groop containin aw messages fer the [[Translating:MediaWiki|MediaWiki]] extension [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback]",
- "translate-group-desc-semantic": "Meta message groop containin aw messages fer aw [https://semantic-mediawiki.org/ Semantic MediaWiki] extensions",
- "translate-group-desc-translatablepages": "Aw owersetable pages",
- "translate-group-desc-translate": "Meta message groop containin aw messages fer the MediaWiki extension [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Owerset]; please familiarise yersel wi its [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary glossarie]",
- "translate-group-desc-tsint": "Ae message groop fer [[Translating:Intuition|Intuition]], the i18n system fer [//tools.wmflabs.org/ Wikimedia Tool Labs] tuils (<span class=\"plainlinks\">[[Translating talk:Intuition|support]]</span>)",
- "translate-group-desc-universallanguageselector": "Meta message groop containin aw messages fer the MediaWiki extension [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector UniversalLanguageSelector] (ULS) n sib saffware packages",
- "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUplaider]] is ae tuil uised tae uplaid files til Wikimedia Commyns n ither Wikimedia waurks",
- "translate-group-desc-visualeditor": "Meta message groop containin aw messages fer the MediaWiki extension [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:VisualEditor VeesualEediter] n sib saffware packages",
- "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Weymaurkt Trails]] is ae service shawin routes fer hikin, cyclin, moontain bikin n inline skatin aw ower the planet. It uises the GNU GPL license.",
- "translate-group-desc-waymarked-trails-help": "The heelp pages o the Weymaurked Trails wab sites: http://waymarkedtrails.org/help/about",
- "translate-group-desc-wikiaextensions": "Meta message groop containin aw messages fer supported MediaWiki extensions uised bi [http://www.wikia.com Wikia]",
- "translate-group-desc-wikimania-scholarships-app": "Message groop fer the [https://scholarships.wikimedia.org/apply Wikimania Scholarship appleecation]",
- "translate-group-desc-wikimedia-mobile": "Aggregated message groop containin mobile appleecations fer Wikimedia waurks",
- "translate-group-desc-wikimedia-mobile-wikipedia": "[[Translating:WikipediaMobile|WikipædiaMobile]] is ae cross-platform mobile n tablet appleecation fer readin n contreebutin til Wikipædia",
- "translate-group-desc-wikimedia-mobile-wikipedia-android": "[[Translating:WikipediaMobile|Wikipædia Android]] is the Android-speceefic version o the Wikipædia mobile app",
- "translate-group-desc-wikimedia-mobile-wikipedia-ios": "[[Translating:WikipediaMobile|Wikipædia iOS]] is the iOS-speceefic version o the Wikipedia mobile app",
- "translate-group-desc-wikimedia-mobile-wikisource": "[[Translating:WikisourceMobile|WikisoorceMobile]] is ae cross-platform mobile n tablet appleecation fer readin n contreebutin til Wikisoorce",
- "translate-group-desc-wikimedia-mobile-wiktionary": "[[Translating:WiktionaryMobile|WiktionairMobile]] is ae cross-platform mobile n tablet appleecation fer readin n contreebutin til Wiktionair",
- "translate-group-desc-wikimediaextensions": "Meta message groop containin aw messages fer supportit MediaWiki extensions uised bi the [https://wikimediafoundation.org/ Wikimedia Foundation]",
- "translate-group-desc-wikimediaextensions-main": "Meta message groop containin aw messages fer supportit [[Translating:MediaWiki|MediaWiki]] extensions needit tae be owerset fer the Wikimedia [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee Leid committee]",
- "translategroupdescriptions-desc": "Message groop descreeptions fer products supportit bi the [https://mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Owerset] extension"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/si.json b/MLEB/Translate/i18n/groupdescriptions/si.json
deleted file mode 100644
index 881e81e1..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/si.json
+++ /dev/null
@@ -1,17 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "පසිඳු කාවින්ද"
- ]
- },
- "bw-desc-freecol": "[[Translating:FreeCol|FreeCol]] යනු හැරීම්-පාදක උපයඥාන ක්‍රීඩාවකි",
- "bw-desc-fudforum": "[[Translating:FUDforum|FUDforum]] යනු ජාලය-පාදක කොටගත් සාකච්ඡා විනිශ්චයශාලා මෘදුකාංගයකි",
- "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] යනු ජාලය-පාදක කොටගත් නිකුතු ඉලියීම් මෘදුකාංගයකි",
- "translate-group-desc-eol": "[[Translating:EOL|Encyclopedia of Life]] සඳහා පණිවුඩ සමූහය",
- "translate-group-desc-ihris": "[[Translating:iHRIS|iHRIS]] සඳහා පණිවුඩ සමූහය",
- "translate-group-desc-kiwix": "[[Translating:Kiwix|Kiwix]] සඳහා පණිවුඩ සමූහය",
- "translate-group-desc-mantisbt-plugin-core": "[[Translating:MantisBT|MantisBT]] සඳහා මධ්‍යය ප්ලගීනයක්",
- "translate-group-desc-mediawiki-core-branch": "[[Translating:MediaWiki|මාධ්‍යවිකි]] හී ස්ථාවර අනුවාදය සඳහා පණිවුඩ",
- "translate-group-desc-nodesc": "මෙම පණිවුඩ කාණ්ඩය සඳහා කිසිදු විස්තරයක් ලබා ගත නොහැක",
- "translate-group-desc-translatablepages": "පරිවර්තනය කල හැකි සියළුම පිටු"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/sk.json b/MLEB/Translate/i18n/groupdescriptions/sk.json
deleted file mode 100644
index 08ee7bc1..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/sk.json
+++ /dev/null
@@ -1,25 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Helix84",
- "Rudko",
- "Lokal Profil",
- "Macofe"
- ]
- },
- "bw-desc-freecol": "Pred prekladaním FreeCol do vášho jazyka si prosím prečítajte [[Translating:FreeCol]]. Freecol používa licenciu GPL.",
- "bw-desc-fudforum": "[http://fudforum.org/ FUDforum], webové fórum napísané v PHP.",
- "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] je slobodný webový systém na sledovanie chýb. Akékoľvek problémy hláste na [[Support|stránke Podpory]].",
- "bw-desc-osm-site": "Táto skupina správ obsahuje správy rozhrania pre [[Translating:Open Street Map|Open Street Map]].",
- "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] dokáže rýchlo nájsť autorov stránky vo wiki projektov Wikimedia.",
- "translate-group-desc-collection": "Metaskupina správ obsahujúca všetky správy rozšírenia [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Kolekcia]",
- "translate-group-desc-flaggedrevs": "Metaskupina správ obsahujúca všetky správy rozšírenia [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs FlaggedRevs]",
- "translate-group-desc-mediawikicore": "Táto skupina správ obsahuje správy použité v aktuálnej alfa verzii MediaWiki ({{CURRENTVERSION}})",
- "translate-group-desc-mediawikiextensions": "Metaskupina správ obsahujúca všetky správy podporovaných rozšírení MediaWiki",
- "translate-group-desc-mediawikimostused": "Táto skupina správ obsahuje [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 najpoužívanejších správ] v MediaWiki",
- "translate-group-desc-nocc": "[http://nocc.sourceforge.net NOCC] je webmailový klient napísaný v PHP. Akékoľvek problémy hláste na [[Support|stránke Podpory]].",
- "translate-group-desc-readerfeedback": "Metaskupina správ obsahujúca všetky správy rozšírenia [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback]",
- "translate-group-desc-translate": "Metaskupina správ obsahujúca všetky správy rozšírenia MediaWiki [https://www.mediawiki.org/wiki/Extension:Translate Translate]",
- "translate-group-desc-wikiaextensions": "Metaskupina správ obsahujúca všetky správy rozšírenia MediaWiki, ktoré používa [http://www.wikia.com Wikia]",
- "translate-group-desc-wikimediaextensions": "Metaskupina správ obsahujúca všetky správy rozšírenia MediaWiki, ktoré používa [https://wikimediafoundation.org/ Wikimedia Foundation]"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/sl.json b/MLEB/Translate/i18n/groupdescriptions/sl.json
deleted file mode 100644
index 4f2ff562..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/sl.json
+++ /dev/null
@@ -1,51 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Dbc334",
- "Eleassar",
- "Lokal Profil",
- "Macofe"
- ]
- },
- "bw-desc-freecol": "Pred prevajanjem FreeCol v svoj jezik si, prosimo, preberite [[Translating:FreeCol]]. Freecol uporablja licenco GPL.",
- "bw-desc-fudforum": "[http://fudforum.org/ FUDforum], spletni forum napisan v PHP.",
- "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] je spletni sistem za sledenje hroščem",
- "bw-desc-openstreetmap": "Skupina sporočil za vsa sporočila [[Translating:OpenStreetMap|OpenStreetMap]]",
- "bw-desc-osm-site": "Ta skupina sporočil zajema sporočila vmesnika [[Translating:Open Street Map|Open Street Map]].\nOglejte si [http://unicode.org/repos/cldr-tmp/trunk/diff/supplemental/language_plural_rules.html#{{UILANGCODE}} stran Unicode CLDR za razlago množinskih ključev].",
- "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] je zmožen hitro najti avtorje strani na wikiju Wikimedije.",
- "translate-group-desc-blockly": "Skupina sporočil za [[Translating:Blockly|Blockly]]",
- "translate-group-desc-collection": "Krovna skupina sporočil, ki vsebuje vsa sporočila razširitve [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection]",
- "translate-group-desc-eol": "Skupina sporočil za [[Translating:EOL|Encyclopedia of Life]]",
- "translate-group-desc-etherpad-lite": "[[Translating:Etherpad lite|Etherpad lite]] je resnično realnočasovni sodelovalni urejevalnik",
- "translate-group-desc-europeana": "[[Translating:Europeana|Europeana 1914–1918]] je spletna stran z zgodbami, filmi in zgodovinskimi viri o I. svetovni vojni",
- "translate-group-desc-flaggedrevs": "Krovna skupina sporočil, ki vsebuje vsa sporočila razširitve [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs FlaggedRevs]",
- "translate-group-desc-fuel": "[[Translating:FUEL|FUEL]] prinaša več doslednosti pri prevodih programja",
- "translate-group-desc-ihris": "Skupina sporočil za [[Translating:iHRIS|iHRIS]]",
- "translate-group-desc-kiwix": "Skupina sporočil za [[Translating:Kiwix|Kiwix]]",
- "translate-group-desc-mantisbt-plugin-core": "Jedrni vtičnik za [[Translating:MantisBT|MantisBT]]",
- "translate-group-desc-mathjax": "[[Translating:MathJax|MathJax]] je večbrskalniška javaskriptna knjižnica za prikaz matematičnega zapisa",
- "translate-group-desc-mediawiki-core-branch": "Sporočila ustaljene različice [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mediawikicore": "Ta skupina sporočil zajema sporočila, uporabljena v trenutni alfarazličici MediaWiki ({{CURRENTVERSION}})",
- "translate-group-desc-mediawikiextensions": "Krovna skupina sporočil, ki vsebuje vsa sporočila podprtih razširitev MediaWiki",
- "translate-group-desc-mediawikimostused": "Ta skupina sporočil vsebuje [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 najbolj uporabljanih sporočil] v [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] je vodstven informacijski sistem za mikrofinance",
- "translate-group-desc-nocc": "[[Translating:NOCC|NOCC]] je spletni odjemalec e-pošte",
- "translate-group-desc-nodesc": "Za to skupino sporočil opis ni na razpolago",
- "translate-group-desc-openimages-all": "Ta sporočila so del projekta [[Translating:Open Images|Open Images]]",
- "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] je na flashu temelječ urejevalnik OpenStreetMap",
- "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] je zbirka orodij za urejanje Wikipedije",
- "translate-group-desc-readerfeedback": "Krovna skupina sporočil, ki vsebuje vsa sporočila razširitve [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback]",
- "translate-group-desc-semantic": "Krovna skupina sporočil, ki vsebuje vsa sporočila vseh razširitev [https://semantic-mediawiki.org/ Semantičnega MediaWiki]",
- "translate-group-desc-translatablepages": "Vse prevedljive strani",
- "translate-group-desc-translate": "Krovna skupina sporočil, ki vsebuje vsa sporočila razširitve [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate]; prosimo, seznanite se z njenim [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary slovarjem]",
- "translate-group-desc-tsint": "Skupina sporočil za [[Translating:Intuition|Intuicijo]], sistem i18n za orodja [//tools.wmflabs.org/ Laboratorijev za orodja Wikimedie] (<span class=\"plainlinks\">[[Translating talk:Intuition|podpora]]</span>)",
- "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]] je orodje za nalaganje datotek na Wikimediino Zbirko in druge projekte Wikimedie",
- "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] je storitev, ki prikazuje poti za pohodništvo, kolesarjenje, gorsko kolesarjenje in rolkanje po celem svetu. Uporablja licenco GNU GPL.",
- "translate-group-desc-waymarked-trails-help": "Strani s pomočjo spletnih strani Waymarked Trails: http://waymarkedtrails.org/help/about",
- "translate-group-desc-wikiaextensions": "Krovna skupina sporočil, ki vsebuje vsa sporočila podprtih razširitev [[Translating:MediaWiki|MediaWiki]], ki jih uporablja [http://www.wikia.com Wikia]",
- "translate-group-desc-wikimania-scholarships-app": "Skupina sporočil za [https://scholarships.wikimedia.org/apply prošnjo za Štipendijo Wikimania]",
- "translate-group-desc-wikimedia-mobile": "Zbirna skupina sporočil, ki vsebuje mobilne aplikacije za projekte Wikimedie",
- "translate-group-desc-wikimediaextensions": "Krovna skupina sporočil, ki vsebuje vsa sporočila podprtih razširitev [[Translating:MediaWiki|MediaWiki]], ki jih uporablja [https://wikimediafoundation.org/ Fundacija Wikimedia]",
- "translate-group-desc-wikimediaextensions-main": "Skupina sporočil Meta, ki vsebuje vsa sporočila za podprte razširitve [[Translating:MediaWiki|MediaWiki]], katera morajo biti prevedena za [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee Jezikovni odbor] Wikimedie",
- "translategroupdescriptions-desc": "Opisi skupin sporočil izdelkov, ki jih podpira razširitev [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate] extension"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/sq.json b/MLEB/Translate/i18n/groupdescriptions/sq.json
deleted file mode 100644
index b297448e..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/sq.json
+++ /dev/null
@@ -1,8 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "GretaDoci"
- ]
- },
- "translate-group-desc-wikimedia-mobile-wikipedia-android": "[[Përkthimit:WikipediaMobile|Wikipedia Android]] është versioni i Android-it per Wikipedia mobile app\" (2014)"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/sr-ec.json b/MLEB/Translate/i18n/groupdescriptions/sr-ec.json
deleted file mode 100644
index ef1e85fd..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/sr-ec.json
+++ /dev/null
@@ -1,39 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Milicevic01",
- "Rancher",
- "Macofe"
- ]
- },
- "bw-desc-freecol": "[[Translating:FreeCol|Фрикол]] је стратешка игра",
- "bw-desc-fudforum": "[[Translating:FUDforum|FUD-форум]] је место за расправљање о различитим темама",
- "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] је систем за праћење грешака",
- "bw-desc-openstreetmap": "[[Translating:OpenStreetMap|OpenStreetMap]] је бесплатна мапа целог света",
- "bw-desc-osm-site": "[[Translating:OpenStreetMap|OpenStreetMap]] је бесплатна мапа целог света",
- "bw-desc-wikiblame": "[[Translating:WikiBlame|Викиблејм]] за трен ока проналази ауторе неке странице на Викимедији",
- "translate-group-desc-collection": "Мета група порука која садржи све поруке проширења [https://www.mediawiki.org/wiki/Extension:Collection Collection]",
- "translate-group-desc-eol": "Група порука за [[Translating:EOL|Енциклопедију живота]]",
- "translate-group-desc-europeana": "[[Translating:Europeana|Европеана]] омогућава људима да прегледају дигитално културно наслеђе Европе",
- "translate-group-desc-flaggedrevs": "Мета група порука која садржи све поруке проширења [https://www.mediawiki.org/wiki/Extension:FlaggedRevs FlaggedRevs]",
- "translate-group-desc-ihris": "Група порука за [[Translating:iHRIS|iHRIS]]",
- "translate-group-desc-mantisbt-plugin-core": "Основно проширење за [[Translating:MantisBT|MantisBT]]",
- "translate-group-desc-mediawiki-core-branch": "Поруке за стабилно издање [[Translating:MediaWiki|Медијавикија]]",
- "translate-group-desc-mediawikicore": "Ова група садржи поруке које се користе у алфа издању [[Translating:MediaWiki|Медијавикија]] ({{CURRENTVERSION}})",
- "translate-group-desc-mediawikiextensions": "Мета група порука која садржи све поруке за подржана проширења [[Translating:MediaWiki|Медијавикија]]",
- "translate-group-desc-mediawikimostused": "Ова група садржи [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki петсто најчешћих порука] на [[Translating:MediaWiki|Медијавикији]]",
- "translate-group-desc-mifos": "[[Translating:Mifos|Мифоз]] је систем за управљање подацима о микрофинансирању",
- "translate-group-desc-nocc": "[[Translating:NOCC|NOCC]] је клијент за мрежну пошту",
- "translate-group-desc-nodesc": "Опис није доступан за ову групу порука",
- "translate-group-desc-openimages-all": "Ове поруке су део пројекта [[Translating:Open Images|Отворене слике]]",
- "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] је збирка алатки за уређивање Википедије",
- "translate-group-desc-readerfeedback": "Мета група порука која садржи све поруке проширења [https://www.mediawiki.org/wiki/Extension:ReaderFeedback ReaderFeedback]",
- "translate-group-desc-translatablepages": "Све преводиве странице",
- "translate-group-desc-translate": "Мета група порука која садржи све поруке проширења [https://www.mediawiki.org/wiki/Extension:Translate Translate]",
- "translate-group-desc-tsint": "Група порука за [http://toolserver.org/~krinkle/TsIntuition Тулсервер интуишон], преводилачки систем за алатке [http://toolserver.org Тулсервера] (<span class=\"plainlinks\">[[Translating talk:Toolserver|подршка]] &middot; [https://wiki.toolserver.org/view/Toolserver_Intuition технички детаљи]</span>)",
- "translate-group-desc-wikiaextensions": "Мета група порука која садржи све поруке за подржана проширења које користи [http://www.wikia.com Викија]",
- "translate-group-desc-wikimedia-mobile-wikipedia-ios": "[[Translating:WikipediaMobile|Википедија за iOS]] је верзија апликације Википедија за мобилни намењена систему iOS",
- "translate-group-desc-wikimediaextensions": "Мета група порука која садржи све поруке за подржана проширења које користи [https://wikimediafoundation.org/ Задужбина Викимедија]",
- "translate-group-desc-wikimediaextensions-main": "Мета група порука која садржи све поруке подржаних проширења [[Translating:MediaWiki|Медијавикија]]Медијавикија. Поруке је потребно превести за Викимедијин [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee језички одбор]",
- "translategroupdescriptions-desc": "Описи група порука за пројекте који су подржани од стране проширења [https://mediawiki.org/wiki/Extension:Translate Translate]"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/sr-el.json b/MLEB/Translate/i18n/groupdescriptions/sr-el.json
deleted file mode 100644
index 725d89e7..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/sr-el.json
+++ /dev/null
@@ -1,37 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Rancher",
- "Macofe"
- ]
- },
- "bw-desc-freecol": "[[Translating:FreeCol|Frikol]] je strateška igra",
- "bw-desc-fudforum": "[[Translating:FUDforum|FUD-forum]] je mesto za raspravljanje o različitim temama",
- "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] je sistem za praćenje grešaka",
- "bw-desc-openstreetmap": "[[Translating:OpenStreetMap|Openstritmap]] je besplatna karta celog sveta",
- "bw-desc-osm-site": "[[Translating:OpenStreetMap|Openstritmap]] je besplatna karta celog sveta",
- "bw-desc-wikiblame": "[[Translating:WikiBlame|Vikiblejm]] za tren oka pronalazi autore neke stranice na Vikimediji",
- "translate-group-desc-collection": "Meta grupa poruka koja sadrži sve poruke proširenja [https://www.mediawiki.org/wiki/Extension:Collection Collection]",
- "translate-group-desc-eol": "Grupa poruka za [[Translating:EOL|Enciklopediju života]]",
- "translate-group-desc-europeana": "[[Translating:Europeana|Evropeana]] omogućava ljudima da pregledaju digitalno kulturno nasleđe Evrope",
- "translate-group-desc-flaggedrevs": "Meta grupa poruka koja sadrži sve poruke proširenja [https://www.mediawiki.org/wiki/Extension:FlaggedRevs FlaggedRevs]",
- "translate-group-desc-ihris": "Grupa poruka za [[Translating:iHRIS|iHRIS]]",
- "translate-group-desc-mantisbt-plugin-core": "Osnovno proširenje za [[Translating:MantisBT|MantisBT]]",
- "translate-group-desc-mediawiki-core-branch": "Poruke za stabilno izdanje [[Translating:MediaWiki|Medijavikija]]",
- "translate-group-desc-mediawikicore": "Ova grupa sadrži poruke koje se koriste u alfa izdanju [[Translating:MediaWiki|Medijavikija]] ({{CURRENTVERSION}})",
- "translate-group-desc-mediawikiextensions": "Meta grupa poruka koja sadrži sve poruke za podržana proširenja [[Translating:MediaWiki|Medijavikija]]",
- "translate-group-desc-mediawikimostused": "Ova grupa sadrži [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki petsto najčešćih poruka] na [[Translating:MediaWiki|Medijavikiji]]",
- "translate-group-desc-mifos": "[[Translating:Mifos|Mifoz]] je sistem za upravljanje podacima o mikrofinansiranju",
- "translate-group-desc-nocc": "[[Translating:NOCC|NOCC]] je klijent za mrežnu poštu",
- "translate-group-desc-nodesc": "Opis nije dostupan za ovu grupu poruka",
- "translate-group-desc-openimages-all": "Ove poruke su deo projekta [[Translating:Open Images|Otvorene slike]]",
- "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pajvikipedija]] je zbirka alatki za uređivanje Vikipedije",
- "translate-group-desc-readerfeedback": "Meta grupa poruka koja sadrži sve poruke proširenja [https://www.mediawiki.org/wiki/Extension:ReaderFeedback ReaderFeedback]",
- "translate-group-desc-translatablepages": "Sve prevodive stranice",
- "translate-group-desc-translate": "Meta grupa poruka koja sadrži sve poruke proširenja [https://www.mediawiki.org/wiki/Extension:Translate Translate]",
- "translate-group-desc-tsint": "Grupa poruka za [http://toolserver.org/~krinkle/TsIntuition Tulserver intuišon], prevodilački sistem za alatke [http://toolserver.org Tulservera] (<span class=\"plainlinks\">[[Translating talk:Toolserver|podrška]] &middot; [https://wiki.toolserver.org/view/Toolserver_Intuition tehnički detalji]</span>)",
- "translate-group-desc-wikiaextensions": "Meta grupa poruka koja sadrži sve poruke za podržana proširenja koje koristi [http://www.wikia.com Vikija]",
- "translate-group-desc-wikimediaextensions": "Meta grupa poruka koja sadrži sve poruke za podržana proširenja koje koristi [https://wikimediafoundation.org/ Zadužbina Vikimedija]",
- "translate-group-desc-wikimediaextensions-main": "Meta grupa poruka koja sadrži sve poruke podržanih proširenja [[Translating:MediaWiki|Medijavikija]]. Poruke je potrebno prevesti za Vikimedijin [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee jezički odbor]",
- "translategroupdescriptions-desc": "Opisi grupa poruka za projekte koji su podržani od strane proširenja [https://mediawiki.org/wiki/Extension:Translate Translate]"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/sv.json b/MLEB/Translate/i18n/groupdescriptions/sv.json
deleted file mode 100644
index d48c4f72..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/sv.json
+++ /dev/null
@@ -1,69 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Boivie",
- "Fluff",
- "Lokal Profil",
- "Ozp",
- "Per",
- "Poxnar",
- "Skalman",
- "WikiPhoenix",
- "Jopparn",
- "Macofe"
- ]
- },
- "bw-desc-freecol": "Innan du översätter FreeCol till ditt språk, var god läs [[Translating:FreeCol]]. FreeCol använder GPL-licensen.",
- "bw-desc-fudforum": "[http://fudforum.org/ FUDforum], ett webbforum skrivet i PHP.",
- "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] är mjukvara för webbaserad bugspårnings.",
- "bw-desc-openstreetmap": "Alla meddelanden som rör [[Translating:OpenStreetMap|OpenStreetMap]]",
- "bw-desc-osm-site": "Den här gruppen av meddelanden innehåller gränssnittet för [[Translating:Open Street Map|Open Street Map]].\nSe [http://unicode.org/repos/cldr-tmp/trunk/diff/supplemental/language_plural_rules.html#{{UILANGCODE}} Unicode CLDR sida för förklaring av plural hantering].",
- "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] kan snabbt hitta författarna till en sida på en Wikimedia wiki.",
- "translate-group-desc-blockly": "En meddelandegrupp för [[Translating:Blockly|Blockly]]",
- "translate-group-desc-bluespice": "Metagrupp med alla meddelanden för MediaWiki-tillägget [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:BlueSpice Blue Spice]",
- "translate-group-desc-collection": "Metagrupp med alla meddelanden för [[Translating:MediaWiki|MediaWiki]]-tillägget [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection]",
- "translate-group-desc-eol": "En meddelandegrupp för [[Translating:EOL|Encyclopedia of Life]]",
- "translate-group-desc-etherpad-lite": "[[Translating:Etherpad lite|Etherpad lite]] är en kollaborativ editor i äkta-realtid",
- "translate-group-desc-europeana": "[[Translating:Europeana|Europeana 1914-1918]] är en webbplats med berättelser, film och historiskt material om första världskriget",
- "translate-group-desc-flaggedrevs": "Metagrupp som innehåller alla meddelanden för [[Translating:MediaWiki|MediaWiki]]-tillägget [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs FlaggedRevs]",
- "translate-group-desc-fuel": "[[Translating:FUEL|FUEL]] ger mer konsekvens till programvaruöversättning",
- "translate-group-desc-huggle": "[[Translating:Huggle|Huggle]] är en snabb diff-läsarapplikation för att hantera vandalism på Wikimedia-projekt",
- "translate-group-desc-ihris": "En meddelandegrupp för [[Translating:iHRIS|iHRIS]]",
- "translate-group-desc-kiwix": "En meddelandegrupp för [[Translating:Kiwix|Kiwix]]",
- "translate-group-desc-mantisbt-plugin-core": "Ett kärntillägg för [[Translating:MantisBT|MantisBT]]",
- "translate-group-desc-mathjax": "[[Translating:MathJax|MathJax]] är ett webbläsaroberoende JavaScript bibliotek som visar matematisk notation i webbläsare",
- "translate-group-desc-mediawiki-core-branch": "Meddelanden för en stabil version av [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mediawikiapi": "Den här gruppen av meddelanden innehåller de meddelanden som används i Action API för den nuvarande alfaversionen av [[Translating:MediaWiki|MediaWiki]] ({{CURRENTVERSION}})",
- "translate-group-desc-mediawikicore": "Den här gruppen av meddelanden innehåller de meddelanden som används i den nuvarande alfaversionen av [[Translating:MediaWiki|MediaWiki]] ({{CURRENTVERSION}})",
- "translate-group-desc-mediawikiextensions": "Metagrupp som innehåller alla meddelanden för tillägg som stöds av [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mediawikiskins": "Metagrupp som innehåller alla meddelanden för stödda utseenden för [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mediawikimostused": "Den här gruppen av meddelanden innehåller de [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 mest använda meddelandena] i [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] är ett informationshanteringsverktyg för mikrofinans",
- "translate-group-desc-nfcring-control": "[[Translating:NFC_Ring_Control|NFC Ring Control]] är en mobilapp för interaktion med NFC-taggar",
- "translate-group-desc-nocc": "[[Translating:NOCC|NOCC]] är en e-postklient som är skriven i PHP. Var god att rapportera några problem [[Support|här]].",
- "translate-group-desc-nodesc": "Det finns ingen beskrivning av denna meddelandegrupp",
- "translate-group-desc-openimages-all": "Dessa meddelanden är en del av [[Translating:Open Images|Open Images]]-projektet",
- "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] är en Flash-baserad redigerare för OpenStreetMap",
- "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] är en samling verktyg för att redigera Wikipedia",
- "translate-group-desc-readerfeedback": "Metagrupp som innehåller alla meddelanden för [[Translating:MediaWiki|MediaWiki]]-tillägget [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback]",
- "translate-group-desc-semantic": "Metameddelandegrupp som innehåller alla meddelanden för alla tillägg till [https://semantic-mediawiki.org/ Semantic MediaWiki]",
- "translate-group-desc-translatablepages": "Alla översättningsbara sidor",
- "translate-group-desc-translate": "Metameddelandegrupp som innehåller alla meddelanden för MediaWiki-tillägget [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate]; var god bekanta dig med [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary ordlistan]",
- "translate-group-desc-tsint": "En meddelandegrupp för [[Translating:Intuition|Intuition]], i18n-systemet för verktyg till [//tools.wmflabs.org/ Wikimedia Tool Labs]-verktyg (<span class=\"plainlinks\">[[Translating talk:Intuition|support]]</span>)",
- "translate-group-desc-universallanguageselector": "Meta meddelandegruppen som innehåller alla meddelanden för MediaWiki-tillägget [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector UniversalLanguageSelector] (ULS) och relaterade programvarupaket",
- "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]] är ett verktyg för att ladda upp filer till Wikimedia Commons och andra Wikimediaprojekt",
- "translate-group-desc-visualeditor": "Meta meddelandegruppen som innehåller alla meddelanden för MediaWiki-tillägget [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:VisualEditor VisualEditor] och relaterade programvarupaket",
- "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] är en service flr att visa rutter för vandring, cykling, mountainbiking och inlinesåkning runt om i världen. Den använder en GNU GPL-licens",
- "translate-group-desc-waymarked-trails-help": "Hjälpsidorna för Waymarked Trails-webbplatsen: http://waymarkedtrails.org/help/about",
- "translate-group-desc-wikiaextensions": "Metagrupp som innehåller alla meddelanden för MediaWiki-tillägg som används av [http://www.wikia.com Wikia]",
- "translate-group-desc-wikimania-scholarships-app": "Meddelandegrupp för [https://scholarships.wikimedia.org/apply Wikimanias stipendieansökan]",
- "translate-group-desc-wikimedia-mobile": "Aggregerade meddelandegrupp som innehåller mobilapplikationer för Wikimedia-projekten",
- "translate-group-desc-wikimedia-mobile-wikipedia": "[[Translating:WikipediaMobile|WikipediaMobile]] är en plattformsoberoende applikation för att läsa och bidra till Wikipedia på mobiler och surfplattor",
- "translate-group-desc-wikimedia-mobile-wikipedia-android": "[[Translating:WikipediaMobile|Wikipedia Android]] är den Android-specifika versionen av Wikipedia-mobilappen",
- "translate-group-desc-wikimedia-mobile-wikipedia-ios": "[[Translating:WikipediaMobile|Wikipedia iOS]] är den iOS-specifika versionen av Wikipedia-mobilappen",
- "translate-group-desc-wikimedia-mobile-wikisource": "[[Translating:WikisourceMobile|WikisourceMobile]] är en plattformsoberoende applikation för att läsa och bidra till Wikisource på mobiler och surfplattor",
- "translate-group-desc-wikimedia-mobile-wiktionary": "[[Translating:WiktionaryMobile|WiktionaryMobile]] är en plattformsoberoende applikation för att läsa och bidra till Wiktionary på mobiler och surfplattor",
- "translate-group-desc-wikimediaextensions": "Metagrupp som innehåller alla meddelanden för MediaWiki-tillägg som används av [https://wikimediafoundation.org/ Wikimedia Foundation]",
- "translate-group-desc-wikimediaextensions-main": "Metameddelandegrupp som innehåller alla meddelanden för stödjande [[Translating:MediaWiki|MediaWiki]]-tillägg som krävs för att översättas för Wikimedias [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee språkkommitté]",
- "translategroupdescriptions-desc": "Meddelandegruppsbeskrivningar för produkter som stöds av [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate]-tillägget"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/ta.json b/MLEB/Translate/i18n/groupdescriptions/ta.json
deleted file mode 100644
index fd72aec7..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/ta.json
+++ /dev/null
@@ -1,8 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Karthi.dr"
- ]
- },
- "translate-group-desc-translatablepages": "எல்லா மொழிபெயர்க்கக்கூடிய பக்கங்கள்"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/te.json b/MLEB/Translate/i18n/groupdescriptions/te.json
deleted file mode 100644
index ac2e73f3..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/te.json
+++ /dev/null
@@ -1,11 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Veeven",
- "Ashokjayanti"
- ]
- },
- "translate-group-desc-nodesc": "ఈ సందేశ సమూహానికి వివరణ లేదు",
- "translate-group-desc-translatablepages": "అనువదించదగ్గ అన్ని పుటలు",
- "translate-group-desc-universallanguageselector": "MediaWikiవిస్తరణకొరకు అన్ని సందేశాలూ కలిసిన విస్తృత సందేశ సంకలనం[https://www.mediawiki.org/wiki/Extension:UniversalLanguageSelector UniversalLanguageSelector] (ULS)మరియు సంబంధిత సాఫ్ట్ వేర్ \nపాకేజిలు."
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/th.json b/MLEB/Translate/i18n/groupdescriptions/th.json
deleted file mode 100644
index a2e71e2c..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/th.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Ans"
- ]
- },
- "translate-group-desc-collection": "เป็นกลุ่มที่นิยามกลุ่มของข้อความ ที่มีข้อความทั้งหมดสำหรับส่วนเพิ่มเติม[https://www.mediawiki.org/wiki/Extension:Collection แหล่งสะสม]ของมีเดียวิกิ",
- "translate-group-desc-flaggedrevs": "เป็นกลุ่มที่นิยามกลุ่มของข้อความ ที่มีข้อความทั้งหมดสำหรับส่วนเพิ่มเติม [https://www.mediawiki.org/wiki/Extension:FlaggedRevs FlaggedRevs] ของมีเดียวิกิ",
- "translate-group-desc-mediawikiextensions": "เป็นกลุ่มที่นิยามกลุ่มของข้อความ ที่มีข้อความทั้งหมดสำหรับส่วนที่เพิ่มเติมของมีเดียวิกิ",
- "translate-group-desc-readerfeedback": "เป็นกลุ่มที่นิยามกลุ่มของข้อความ ที่มีข้อความทั้งหมดสำหรับส่วนเพิ่มเติม[https://www.mediawiki.org/wiki/Extension:ReaderFeedback การตอบรับจากผู้อ่าน]ของมีเดียวิกิ",
- "translate-group-desc-translate": "เป็นกลุ่มที่นิยามกลุ่มของข้อความ ที่มีข้อความทั้งหมดสำหรับส่วนเพิ่มเติม[https://www.mediawiki.org/wiki/Extension:Translate การแปล]ของมีเดียวิกิ",
- "translate-group-desc-wikiaextensions": "เป็นกลุ่มที่นิยามกลุ่มของข้อความ ที่มีข้อความทั้งหมดสำหรับส่วนเพิ่มเติมมีเดียวิกิที่ใช้บน [http://www.wikia.com Wikia]",
- "translate-group-desc-wikimediaextensions": "เป็นกลุ่มที่นิยามกลุ่มของข้อความ ที่มีข้อความทั้งหมดสำหรับส่วนเพิ่มเติมมีเดียวิกิที่ใช้โดย [https://wikimediafoundation.org/ มูลนิธิวิกิมีเดีย]"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/tl.json b/MLEB/Translate/i18n/groupdescriptions/tl.json
deleted file mode 100644
index 8b934105..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/tl.json
+++ /dev/null
@@ -1,42 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "AnakngAraw",
- "Lokal Profil",
- "Macofe"
- ]
- },
- "bw-desc-freecol": "Bago isalin ang FreeCol sa wika mo, paki basa ang [[Translating:FreeCol]]. Gumagamit ang Freecol ng lisensyang GPL.",
- "bw-desc-fudforum": "[http://fudforum.org/ FUDforum], isang poro sa web na nakasulat sa PHP.",
- "bw-desc-mantisbt": "Ang [[Translating:MantisBT|MantisBT]] ay isang malayang sistemang pangweb na pangtunton ng depekto. Paki-ulat ang anumang paksa sa [[Support|Suporta]].",
- "bw-desc-openstreetmap": "Lahat ng mga mensaheng may kaugnayan sa [[Translating:OpenStreetMap|OpenStreetMap]]",
- "bw-desc-osm-site": "Naglalaman ang pangkat na pangmensaheng ito ng mga mensaheng panghangganang-mukha para sa [[Translating:Open Street Map|Bukas na Mapa ng Kalye]]. Tingnan ang [http://unicode.org/repos/cldr-tmp/trunk/diff/supplemental/language_plural_rules.html#{{UILANGCODE}} pahina ng Unikodigong CLDR para sa paliwanag ng mga susing pangmaramihan].",
- "bw-desc-wikiblame": "Kayang mabilisang hanapin ng [http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] ang mga may-akda ng isang pahinang nasa loob ng isang wiki ng Wikimedia.",
- "translate-group-desc-collection": "Pangkat ng mensahe ng Meta na naglalaman ng lahat ng mga mensahe para sa dugtong pang-[[Translating:MediaWiki|MediaWiki]] na [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Kalipunan]",
- "translate-group-desc-eol": "Isang pangkat ng mensahe para sa [[Translating:EOL|Ensiklopedya ng Buhay]]",
- "translate-group-desc-europeana": "Ang [[Translating:Europeana|Europeana]] ay nagbibigay-daan sa mga taong galugarin ang dihital na mga yamang pangkalinangan ng Europa",
- "translate-group-desc-flaggedrevs": "Pangkat ng mensahe ng Meta na naglalaman ng lahat ng mga mensahe para dugtong ng [[Translating:MediaWiki|MediaWiki]] na [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs Binandilang mga Pagbabago]",
- "translate-group-desc-ihris": "Isang pangkat ng mensahe para sa [[Translating:iHRIS|iHRIS]]",
- "translate-group-desc-kiwix": "Isang pangkat ng mensahe para sa [[Translating:Kiwix|Kiwix]]",
- "translate-group-desc-mantisbt-plugin-core": "Isang pangunahing pamasak para sa [[Translating:MantisBT|MantisBT]]",
- "translate-group-desc-mediawiki-core-branch": "Mga mensahe para sa matatag na bersyon ng [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mediawikicore": "Naglalaman ang pangkat ng mensaheng ito ng mga mensaheng ginagamit sa kasalukuyang bersyong alpa ng MediaWiki ({{CURRENTVERSION}})",
- "translate-group-desc-mediawikiextensions": "Pangkat ng mensahe ng Meta na naglalaman ng lahat ng mga mensahe para sa tinatangkilik na mga karugtong para sa MediaWiki",
- "translate-group-desc-mediawikimostused": "Naglalaman ang pangkat ng mensaheng ito ng [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 pinakamadalas gamiting mga mensahe] sa MediaWiki",
- "translate-group-desc-mifos": "Ang [[Translating:Mifos|Mifos]] ay isang sistema ng kabatiran na pangpamamahala para sa mikropinansiya",
- "translate-group-desc-nocc": "Ang [http://nocc.sourceforge.net NOCC] ay isang kliyente ng webmail na nakasulat sa PHP. Paki-ulat ang anumang mga paksa sa [[Support]].",
- "translate-group-desc-nodesc": "Walang makukulang paglalarawan para sa pangkat ng mensaheng ito",
- "translate-group-desc-openimages-all": "Ang mga mensaheng ito ay bahagi ng proyektong [[Translating:Open Images|Open Images]]",
- "translate-group-desc-potlatch2": "Ang [[Translating:OpenStreetMap|Potlatch2]] ay isang patnugot ng OpenStreetMap na nakahimpil sa Flash",
- "translate-group-desc-pywikipedia": "Ang [[Translating:Pywikibot|Pywikibot]] ay isang kalipunan ng mga kasangkapan upang mapatnugutan ang Wikipedia",
- "translate-group-desc-readerfeedback": "Pangkat ng mensahe ng Meta na naglalaman ng lahat ng mga mensahe para dugtong ng [[Translating:MediaWiki|MediaWiki]] na [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback Katugunan ng Mambabasa]",
- "translate-group-desc-semantic": "Pangkat ng mensahe ng meta na naglalaman ng lahat ng mga mensahe para sa lahat ng mga dugtong ng [https://semantic-mediawiki.org/ Semantikong MediaWiki]",
- "translate-group-desc-translatablepages": "Lahat ng mga pahinang maisasalinwika",
- "translate-group-desc-translate": "Pangkat ng mensahe ng Meta na naglalaman ng lahat ng mga mensahe para dugtong ng MediaWiki na [https://www.mediawiki.org/wiki/Extension:Translate Isalinwika]",
- "translate-group-desc-tsint": "Isang pangkat ng mensahe para sa [http://toolserver.org/~krinkle/TsIntuition Intuition ng Toolserver], ang sistemang i18n para sa mga kasangkapan ng [http://toolserver.org Toolserver] (<span class=\"plainlinks\">[[Translating talk:Toolserver|pagtangkilik]] &middot; [https://wiki.toolserver.org/view/Toolserver_Intuition mga detalyeng teknikal]</span>)",
- "translate-group-desc-waymarked-trails": "Ang [[Translating:Waymarked Trails|Waymarked Trails]] ay isang paglilingkod na nagpapakita ng mga ruta sa nakasisiyang mahabang paglalakad, pagbibisikleta, pambundok na pamimisikleta at pag-iiskeyt na nasa linya sa buong mundo. Gumagamit ito ng lisensiyang GNU GPL",
- "translate-group-desc-wikiaextensions": "Pangkat ng mensahe ng Meta na naglalaman ng lahat ng mga mensahe para sa tinatangkilik na mga dugtong ng MediaWiki na ginagamit ng [http://www.wikia.com Wikia]",
- "translate-group-desc-wikimediaextensions": "Pangkat ng mensahe ng Meta na naglalaman ng lahat ng mga mensahe para sa tinatangkilik na mga dugtong ng MediaWiki na ginagamit ng [https://wikimediafoundation.org/ Pundasyong Wikimedia]",
- "translate-group-desc-wikimediaextensions-main": "Pangkat ng mensahe ng Meta na naglalaman ng lahat [https://meta.wikimedia.org/wiki/Language_committee lupon ng Wika] ng Wikimedia",
- "translategroupdescriptions-desc": "Mga paglalarawan sa pangkat ng mensahe para sa mga produktong tinatangkilik ng dugtong na [https://mediawiki.org/wiki/Extension:Translate Translate]"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/tr.json b/MLEB/Translate/i18n/groupdescriptions/tr.json
deleted file mode 100644
index dc4545b9..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/tr.json
+++ /dev/null
@@ -1,10 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Incelemeelemani",
- "Violetanka"
- ]
- },
- "translate-group-desc-translatablepages": "Tüm çevrilebilir sayfalar",
- "translate-group-desc-tsint": "[[Translating:Intuition|Intuition]] için bir ileti grubu, [//tools.wmflabs.org/ Wikimedia Tool Labs] araçları için i18n sistemi (<span class=\"plainlinks\">[[Translating talk:Intuition|support]]</span>)"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/tt-cyrl.json b/MLEB/Translate/i18n/groupdescriptions/tt-cyrl.json
deleted file mode 100644
index 924762e4..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/tt-cyrl.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "March",
- "Rinatus",
- "Ильнар",
- "Lokal Profil"
- ]
- },
- "bw-desc-freecol": "FreeCol проектын узегезнең телегезгә тәрҗемә иткәнче башта [[Translating:FreeCol]]ны карагыз, чөнки ул GPL лицензиясен куллана.",
- "bw-desc-fudforum": "[http://fudforum.org/ FUDforum] — PHPда язылган веб-форум.",
- "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] — килгән хаталарны карау өчен нигезләнгән веб-система. Зинһар, булган кимчелекләрне [[Support]] битендә әйтегез.",
- "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] Викимедиа авторларының битен табарга ярдәм итә.",
- "translate-group-desc-nocc": "[http://nocc.sourceforge.net NOCC] — PHP телендә язылган почта веб-клиенты. Зинхар очен, барлык җитешсезлекләр турында [[Support|ярдәм битенә]] хәбәр итегез.",
- "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] — Википедияне рәтләү өчен җиһазлар җыентыгы"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/uk.json b/MLEB/Translate/i18n/groupdescriptions/uk.json
deleted file mode 100644
index a17f57f8..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/uk.json
+++ /dev/null
@@ -1,68 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "A1",
- "AS",
- "Andriykopanytsia",
- "Andygol",
- "Base",
- "Olvin",
- "Prima klasy4na",
- "Ата",
- "Тест",
- "Lokal Profil",
- "Macofe"
- ]
- },
- "bw-desc-freecol": "Перед тим, як перекладати FreeCol на вашу мову, прочитайте, будь ласка, [[Translating:FreeCol]]. Freecol використовує ліцензію GPL.",
- "bw-desc-fudforum": "[http://fudforum.org/ FUDforum] — веб-форум, написаний на PHP.",
- "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] — це мережне програмне забезпечення для відслідковування баґів.",
- "bw-desc-openstreetmap": "Група повідомлень [[Translating:OpenStreetMap|OpenStreetMap]]",
- "bw-desc-osm-site": "Ця група містить повідомлення інтерфейсу [[Translating:OpenStreetMap|OpenStreetMap]].\nОзнайомтесь зі [http://unicode.org/repos/cldr-tmp/trunk/diff/supplemental/language_plural_rules.html#{{UILANGCODE}} сторінкою Unicode CLDR для отримання пояснень щодо творення форм множини].",
- "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] дозволяє швидко знайти авторів сторінки в проектах Вікімедіа.",
- "translate-group-desc-blockly": "Група повідомлень для [[Translating:Blockly|Blockly]]",
- "translate-group-desc-bluespice": "Мета-група повідомлень, що містить всі повідомлення MediaWiki розширень [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:BlueSpice Blue Spice]",
- "translate-group-desc-collection": "Метагрупа повідомлень, що містить повідомлення для [[Translating:MediaWiki|MediaWiki]] розширення [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection]",
- "translate-group-desc-eol": "Група повідомлень для перекладу [[Translating:EOL|Енциклопедії життя]]",
- "translate-group-desc-etherpad-lite": "[[Translating:Etherpad lite|Etherpad lite]] — це насправді сумісний з реальним часом редактор",
- "translate-group-desc-europeana": "[[Translating:Europeana|Europeana 1914-1918]] — це сайт з історіями, фільмами та історичним матеріалом про Першу світову війну",
- "translate-group-desc-flaggedrevs": "Метагрупа повідомлень, що містить повідомлення для [[Translating:MediaWiki|MediaWiki]]-розширення [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs FlaggedRevs]",
- "translate-group-desc-fuel": "[[Translating:FUEL|FUEL]] приносить більше узгодженості перекладу програмного забезпечення",
- "translate-group-desc-huggle": "[[Translating:Huggle|Huggle]] — це браузерний додаток швидких дифів для роботи з вандалізмом у проектах Вікімедіа",
- "translate-group-desc-ihris": "Група повідомлень для [[Translating:iHRIS|iHRIS]]",
- "translate-group-desc-kiwix": "Група повідомлень для [[Translating:Kiwix|Kiwix]]",
- "translate-group-desc-mantisbt-plugin-core": "Основний плаґін для [[Translating:MantisBT|MantisBT]]",
- "translate-group-desc-mathjax": "[[Translating:MathJax|MathJax]] це міжбраузерна бібліотека на JavaScript, що відображає математичні формули у веб-переглядачах",
- "translate-group-desc-mediawiki-core-branch": "Повідомлення для стабільної версії [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mediawikicore": "Ця група містить повідомлення, які використовують у поточній альфа-версії MediaWiki ({{CURRENTVERSION}})",
- "translate-group-desc-mediawikiextensions": "Ця метагрупа містить повідомлення підтримуваних розширень MediaWiki",
- "translate-group-desc-mediawikimostused": "Ця група містить [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 найуживаніших повідомлень] [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] — система керування інформацією для мікрофінансування",
- "translate-group-desc-nfcring-control": "[[Translating:NFC_Ring_Control|NFC Ring Control]] — мобільний додаток для роботи з NFC-теґами",
- "translate-group-desc-nocc": "[http://nocc.sourceforge.net NOCC] це клієнт веб-пошти (webmail) написаний на PHP. Будь ласка, повідомляйте про будь-які проблеми на [[Support|сторінці підтримки]].",
- "translate-group-desc-nodesc": "Немає опису цієї групи повідомлень",
- "translate-group-desc-openimages-all": "Ці повідомлення є частиною проекту [[Translating:Open Images|Open Images]]",
- "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] — це базований на Flash редактор OpenStreetMap",
- "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] — набір інструментів для редагування Вікіпедії",
- "translate-group-desc-readerfeedback": "Метагрупа повідомлень, що містить всі повідомлення розширення [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback]",
- "translate-group-desc-semantic": "Метагрупа повідомлень, що містить усі повідомлення для усіх розширень [https://semantic-mediawiki.org/ Semantic MediaWiki]",
- "translate-group-desc-translatablepages": "Усі сторінки, що можуть перекладатися",
- "translate-group-desc-translate": "Метагрупа повідомлень, що містить повідомлення для MediaWiki-розширення [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate]; будь ласка, ознайомтесь із його [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary глосарієм]",
- "translate-group-desc-tsint": "Група повідомлень для [[Translating:Intuition|Інтуїції]], системи i18n для засобів [//tools.wmflabs.org/ Toolserver] (<span class=\"plainlinks\">[[Translating talk:Intuition|підтримка]]</span>)",
- "translate-group-desc-universallanguageselector": "Мета-група повідомлень, яка містить усі повідомлення для MediaWiki-розширення [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector UniversalLanguageSelector] (ULS) та відповідних програмних пакетів",
- "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]] — інструмент для завантажання файлів на Вікісховище та інші проекти Вікімедіа",
- "translate-group-desc-visualeditor": "Мета-група повідомлень, яка містить усі повідомлення для MediaWiki-розширення [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:VisualEditor VisualEditor] та відповідних програмних пакетів",
- "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] — сервіс, що показує маршрути для прогулянок, велоспорту, поїздок на гірському велосипеді та катання на роликах по всьому світу. Використовує ліцензію GNU GPL",
- "translate-group-desc-waymarked-trails-help": "Сторінки допомоги сайтів Waymarked Trails: http://waymarkedtrails.org/help/about",
- "translate-group-desc-wikiaextensions": "Метагрупа, що містить повідомлення для MediaWiki-розширень, які використовуються [http://www.wikia.com Wikia]",
- "translate-group-desc-wikimania-scholarships-app": "Група повідомлень для [https://scholarships.wikimedia.org/apply заявки на стипендію Wikimania]",
- "translate-group-desc-wikimedia-mobile": "Об'єднана група повідомлень мобільних додатків для проектів Вікімедіа",
- "translate-group-desc-wikimedia-mobile-wikipedia": "[[Translating:WikipediaMobile|WikipediaMobile]] є багатоплатформним застосунком для мобільних та планшетних пристроїв, який призначено для читання Вікіпедії та дописування до неї",
- "translate-group-desc-wikimedia-mobile-wikipedia-android": "[[Translating:WikipediaMobile|Вікіпедія для Android]] — це версія під Android мобільної програми Вікіпедії",
- "translate-group-desc-wikimedia-mobile-wikipedia-ios": "[[Translating:WikipediaMobile|Вікіпедія для iOS]] — це iOS-версія мобільної програми Вікіпедія",
- "translate-group-desc-wikimedia-mobile-wikisource": "[[Translating:WikisourceMobile|WikisourceMobile]] — багатоплатформний застосунок для мобільних та планшетних пристроїв, який призначено для перегляду Вікісховища і дописування у нього",
- "translate-group-desc-wikimedia-mobile-wiktionary": "[[Translating:WiktionaryMobile|WiktionaryMobile]] — це крос-платформний додаток для мобільних і планшетних пристроїв, що призначений для читання і редагування Вікісловника",
- "translate-group-desc-wikimediaextensions": "Метагрупа, що містить повідомлення для MediaWiki-розширень, які використовуються [https://wikimediafoundation.org/ Фондом Вікімедіа]",
- "translate-group-desc-wikimediaextensions-main": "Метагрупа повідомлень, що містить усі повідомлення для підтримуваних розширень [[Translating:MediaWiki|MediaWiki]], які мають бути перекладені для [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee/uk Мовного комітету] Вікімедіа",
- "translategroupdescriptions-desc": "Описи груп повідомлень для продуктів, що підтримуються розширенням [https://mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate]"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/uz.json b/MLEB/Translate/i18n/groupdescriptions/uz.json
deleted file mode 100644
index 67a5d0b7..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/uz.json
+++ /dev/null
@@ -1,9 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "CoderSI"
- ]
- },
- "translate-group-desc-mediawikicore": "Ushbu xabarlar guruhi MediaWiki ({{CURRENTVERSION}})ning joriy alfa-versiyasida foydalanilayotgan xabarlarni o'z ichiga oladi",
- "translate-group-desc-mediawikimostused": "Ushbu xabarlar guruhi MediaWikida [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 tadan ziyod juda ko'p ishlatiladigan xabarlardan] tashkil topgan"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/vep.json b/MLEB/Translate/i18n/groupdescriptions/vep.json
deleted file mode 100644
index 4179b203..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/vep.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Игорь Бродский",
- "Lokal Profil"
- ]
- },
- "bw-desc-freecol": "Edel sidä, kut tö kändaškandet FreeCol teiden kel'he, olgat hüväd, lugekat [[Translating:FreeCol]]-lehtpol't. Freecol kävutab GPL-licenzijan.",
- "bw-desc-fudforum": "[http://fudforum.org/ FUDforum], PHP-s kirjutadud verkforum.",
- "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] om vigoiden löudmižen joudai verksistem. Olgat hüväd, kirjutagat erazvuiččiš petusiš [[Support|Abulehtpolel]].",
- "bw-desc-osm-site": "Nece tedotusiden gruppas om [[Translating:Open Street Map|Open Street Map]]-interfeisan tedotusid.",
- "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] laskeb löuta teravas lehtpolen avtorid Wikimedii-projektoiš.",
- "translate-group-desc-nocc": "[http://nocc.sourceforge.net NOCC] om PHP-kelel kirjutadud web-klijent. Olgat hüväd, kirjutagat erazvuiččiš petusiš [[Support|Abulehtpolel]]."
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/vi.json b/MLEB/Translate/i18n/groupdescriptions/vi.json
deleted file mode 100644
index a36767c4..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/vi.json
+++ /dev/null
@@ -1,64 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Minh Nguyen",
- "Vinhtantran",
- "Lokal Profil",
- "Macofe"
- ]
- },
- "bw-desc-freecol": "Trước khi dịch FreeCol ra ngôn ngữ của bạn, xin hãy đọc [[Translating:FreeCol]]. Freecol sử dụng giấy phép GPL.",
- "bw-desc-fudforum": "[http://fudforum.org/ FUDforum], một diễn đàn mạng được viết bằng PHP.",
- "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] là hệ thống theo dõi lỗi trên Web",
- "bw-desc-openstreetmap": "Nhóm thông điệp chứa các thông điệp của [[Translating:OpenStreetMap|OpenStreetMap]]",
- "bw-desc-osm-site": "Nhóm thông điệp này chứa các thông điệp của giao diện [[Translating:OpenStreetMap|OpenStreetMap]].",
- "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] có thể nhanh chóng tìm ra tác giả của trang trong wiki của Wikimedia.",
- "translate-group-desc-blockly": "Một nhóm thông điệp dành cho [[Translating:Blockly|Blockly]]",
- "translate-group-desc-bluespice": "Siêu nhóm thông điệp chứa các thông điệp của các phần mở rộng [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:BlueSpice?uselang=vi BlueSpice] cho MediaWiki",
- "translate-group-desc-collection": "Siêu nhóm thông điệp chứa các thông điệp của phần mở rộng [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection] cho [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-eol": "Nhóm thông điệp của [[Translating:EOL|Bách khoa toàn thư Sự sống]]",
- "translate-group-desc-etherpad-lite": "[[Translating:Etherpad lite|Etherpad lite]] là một trình soạn hợp tác rất tức thời",
- "translate-group-desc-europeana": "[[Translating:Europeana|Europeana 1914–1918]] là trang Web có chuyện kể, phim, và vật liệu lịch sử về Chiến tranh thế giới thứ nhất",
- "translate-group-desc-flaggedrevs": "Siêu nhóm thông điệp chứa các thông điệp của phần mở rộng [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs?uselang=vi FlaggedRevs] cho [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-fuel": "[[Translating:FUEL|FUEL]] nhất quán hóa việc biên dịch phần mềm",
- "translate-group-desc-huggle": "[[Translating:Huggle|Huggle]] là một ứng dụng duyệt bản khác biệt nhanh nhẹn để chống phá hoại trên các dự án Wikimedia",
- "translate-group-desc-ihris": "Nhóm thông điệp cho [[Translating:iHRIS|iHRIS]]",
- "translate-group-desc-inaturalist": "[[Translating:INaturalist|iNaturalist]] là trang để ghi lại những gì bạn thấy trong thiên nhiên, gặp gỡ những người hâm mộ thiên nhiên khác, và tìm hiểu về thiên nhiên",
- "translate-group-desc-kiwix": "Nhóm thông điệp cho [[Translating:Kiwix|Kiwix]]",
- "translate-group-desc-mantisbt-plugin-core": "Một trong những phần bổ trợ chính của [[Translating:MantisBT|MantisBT]]",
- "translate-group-desc-mathjax": "[[Translating:MathJax|MathJax]] là một thư viện JavaScript đa trình duyệt hiển thị các biểu thức toán học trong trình duyệt",
- "translate-group-desc-mediawiki-core-branch": "Các thông điệp trong một phiên bản ổn định của [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mediawikiapi": "Nhóm thông điệp này chứa các thông điệp dùng cho API Tác vụ trong phiên bản alpha hiện hành của [[Translating:MediaWiki|MediaWiki]] ({{CURRENTVERSION}})",
- "translate-group-desc-mediawikicore": "Nhóm thông điệp này chứa các thông điệp dùng trong phiên bản alpha hiện hành của [[Translating:MediaWiki|MediaWiki]] ({{CURRENTVERSION}})",
- "translate-group-desc-mediawikiextensions": "Nhóm thông điệp chứa các thông điệp của các phần mở rộng [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mediawikiskins": "Siêu nhóm thông điệp chứa các thông điệp của các giao diện [[Translating:MediaWiki|MediaWiki]] được hỗ trợ",
- "translate-group-desc-mediawikimostused": "Nhóm thông điệp này chứa [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 thông điệp dùng nhiều nhất] trong [[Translating:MediaWiki|MediaWiki]]",
- "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] là hệ thống quản lý thông tin về tài chính vi mô.",
- "translate-group-desc-nfcring-control": "[[Translating:NFC_Ring_Control|NFC Ring Control]] là một ứng dụng di động để tác động với thẻ NFC",
- "translate-group-desc-nocc": "[http://nocc.sourceforge.net/ NOCC] là chương trình thư điện tử Web được viết bằng PHP. Xin hãy báo cáo lỗi tại [[Support]].",
- "translate-group-desc-nodesc": "Không có miêu tả cho nhóm thông điệp này",
- "translate-group-desc-openimages-all": "Các thông điệp này thuộc về dự án [[Translating:Open Images|Open Images]]",
- "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] là một trình vẽ bản đồ OpenStreetMap dùng Flash.",
- "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] là một thư viện để lập chương trình tự động sửa đổi Wikipedia.",
- "translate-group-desc-readerfeedback": "Siêu nhóm thông điệp chứa tất cả các thông điệp dùng cho phần mở rộng [[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback?uselang=vi ReaderFeedback]",
- "translate-group-desc-semantic": "Siêu nhóm thông điệp chứa các thông điệp của phần mở rộng [https://semantic-mediawiki.org/?uselang=vi MediaWiki Ngữ nghĩa]",
- "translate-group-desc-translatablepages": "Mọi trang dịch được",
- "translate-group-desc-translate": "Siêu nhóm thông điệp chứa các thông điệp của phần mở rộng [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate?uselang=vi Translate] cho MediaWiki; xin vui lòng đọc hiểu [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary?uselang=vi thuật ngữ]",
- "translate-group-desc-tsint": "Nhóm thông điệp của [[Translating:Intuition|Intuition]], hệ thống biên dịch các công cụ [//tools.wmflabs.org/ Wikimedia Tool Labs] (<span class=\"plainlinks\">[[Translating talk:Intuition|trợ giúp]]</span>)",
- "translate-group-desc-universallanguageselector": "Siêu nhóm thông điệp bao gồm các thông điệp của phần mở rộng MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector?uselang=vi UniversalLanguageSelector] (ULS) và các phần mềm có liên quan",
- "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]] là một công cụ tải tập tin lên Wikimedia Commons và các dự án khác của Wikimedia",
- "translate-group-desc-visualeditor": "Siêu nhóm thông điệp bao gồm các thông điệp của phần mở rộng MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:VisualEditor?uselang=vi Trình soạn thảo trực quan] và các phần mềm có liên quan",
- "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] là một dịch vụ bản đồ cho biết các tuyến đường đi bộ đường dài, xe đạp, xe đạp leo núi, và trượt băng nội tuyến ở khắp thế giới. Dịch vụ được phát hành theo giấy phép GNU GPL.",
- "translate-group-desc-waymarked-trails-help": "Các trang trợ giúp của các trang Waymarked Trails: http://waymarkedtrails.org/vi/help/about",
- "translate-group-desc-wikiaextensions": "Siêu nhóm thông điệp chứa thông điệp của các phần mở rộng MediaWiki được sử dụng tại [http://www.wikia.com Wikia]",
- "translate-group-desc-wikimania-scholarships-app": "Nhóm thông điệp cho [https://scholarships.wikimedia.org/apply đơn xin Học bổng Wikimania]",
- "translate-group-desc-wikimedia-mobile": "Nhóm tổng hợp các thông điệp ứng dụng di động của các dự án Wikimedia",
- "translate-group-desc-wikimedia-mobile-wikipedia": "[[Translating:WikipediaMobile|WikipediaMobile]] là một ứng dụng đa nền tảng dành cho máy tính di động và bảng để đọc và đóng góp vào Wikipedia.",
- "translate-group-desc-wikimedia-mobile-wikipedia-android": "[[Translating:WikipediaMobile|Wikipedia Android]] là bản Android của ứng dụng di động Wikipedia",
- "translate-group-desc-wikimedia-mobile-wikipedia-ios": "[[Translating:WikipediaMobile|Wikipedia iOS]] là bản iOS của ứng dụng di động Wikipedia",
- "translate-group-desc-wikimedia-mobile-wikisource": "[[Translating:WikisourceMobile|WikisourceMobile]] là một ứng dụng đa nền tảng dành cho máy tính di động và bảng để đọc và đóng góp vào Wikisource.",
- "translate-group-desc-wikimedia-mobile-wiktionary": "[[Translating:WiktionaryMobile|WiktionaryMobile]] là một ứng dụng đa nền tảng dành cho máy tính di động và bảng để đọc và đóng góp vào Wiktionary.",
- "translate-group-desc-wikimediaextensions": "Siêu nhóm thông điệp chứa thông điệp của các phần mở rộng MediaWiki được [https://wikimediafoundation.org/ Quỹ Wikimedia] sử dụng",
- "translate-group-desc-wikimediaextensions-main": "Siêu nhóm thông điệp chứa thông điệp của các phần mở rộng [[Translating:MediaWiki|MediaWiki]] được hỗ trợ cần dịch cho [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee?uselang=vi Ủy ban Ngôn ngữ]",
- "translategroupdescriptions-desc": "Miêu tả các sản phẩm được phần mở rộng [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate?uselang=vi Translate] hỗ trợ"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/yi.json b/MLEB/Translate/i18n/groupdescriptions/yi.json
deleted file mode 100644
index 1ba43ea2..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/yi.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "פוילישער"
- ]
- },
- "translate-group-desc-europeana": "[[Translating:Europeana|Europeana 1914-1918]] איז א ועבזײַטל מיט געשיכטעס, פילמען און היסטארישן מאטריאל וויעגן דער ערשטער וועלט־מלחמה",
- "translate-group-desc-kiwix": "א מעלדונג גרופע פאר [[Translating:Kiwix|קיוויקס]]",
- "translate-group-desc-mediawiki-core-branch": "מעלדונגען פאר א סטאבילער ווערסיע פון [[Translating:MediaWiki|מעדיעוויקי]]",
- "translate-group-desc-mediawikicore": "די מעלדונג גרופע אנטהאלט די מעלגדונגען געניצט אין דער לויפיגער אלפא ווערסיע פון מעדיעוויקי  ({{CURRENTVERSION}})",
- "translate-group-desc-mediawikiextensions": "מעטא מעלדונג גרופע וואס אנטהאלט אלע מעלדונגען פאר געשטיצטע פארברייטערונגען פאר [[Translating:MediaWiki|מעדיעוויקי]]",
- "translate-group-desc-mediawikimostused": "די מעלדונג גרופע אנטהאלט די [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 מערסטע געניצטע מעלגדונגען] אין [[Translating:MediaWiki|מעדיעוויקים]]",
- "translate-group-desc-nodesc": "נישט פֿאראן קיין באשרייבונג פאר דער מעלדונג גרופע",
- "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] איז א זאמלונג פון געצייג צו רעדאקטירן וויקיפעדיע",
- "translate-group-desc-translatablepages": "אלע איבערזעצבאַרע בלעטער",
- "translate-group-desc-translate": "מעטא־גרופע וואס אנטהאלט אלע מעלדונגען פאר דער [[Translating:MediaWiki|מעדיעוויקי]] פארברייטערונג [https://www.mediawiki.org/wiki/Extension:Translate Translate]; זײַט אזוי גוט ווערט באקאנט מיטן [https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Extension:Translate/Glossary גלאסאר]",
- "translate-group-desc-wikimediaextensions": "מעטא־גרופע וואס אנטהאלט אלע מעלדונגען פאר געשטיצטע [[Translating:MediaWiki|מעדיעוויקי]] פארברייטערונגען געניצט דורך דער [https://wikimediafoundation.org/ וויקימעדיע פונדאציע]",
- "translategroupdescriptions-desc": "מעלדונג גרופע באשרייבונגען פאר פראדוקטן געשטיצט מיטן [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate איבערזעצונג] פארברייטערונג"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/zh-hans.json b/MLEB/Translate/i18n/groupdescriptions/zh-hans.json
deleted file mode 100644
index d445c4df..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/zh-hans.json
+++ /dev/null
@@ -1,72 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Anakmalaysia",
- "Bencmq",
- "Hydra",
- "Hzy980512",
- "Liuxinyu970226",
- "Mys 721tx",
- "PhiLiP",
- "Tommyang",
- "Xiaomingyan",
- "Yanmiao liu",
- "Yfdyh000",
- "Stieizc"
- ]
- },
- "bw-desc-freecol": "[[Translating:FreeCol|FreeCol]] 是一个回合制策略游戏",
- "bw-desc-fudforum": "[[Translating:FUDforum|FUDforum]]是一个基于web的论坛讨论软件",
- "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]]是一个基于Web的程序错误追踪软件",
- "bw-desc-openstreetmap": "本组包含所有[[Translating:OpenStreetMap|OpenStreetMap]]信息",
- "bw-desc-osm-site": "[[Translating:OpenStreetMap|OpenStreetMap]]是一个可编辑的世界地图",
- "bw-desc-wikiblame": "[[Translating:WikiBlame|WikiBlame]]可以快速找到某维基媒体wiki中某页面的作者。",
- "translate-group-desc-blockly": "用于[[Translating:Blockly|Blockly]]的消息组",
- "translate-group-desc-bluespice": "包含用于[[Translating:MediaWiki|MediaWiki]] [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:BlueSpice Blue Spice]扩展所有信息的元信息组",
- "translate-group-desc-collection": "包含[[Translating:MediaWiki|MediaWiki]][https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection]扩展使用所有消息的元消息组。",
- "translate-group-desc-eol": "[[Translating:EOL|网络生命大百科]]的信息组",
- "translate-group-desc-etherpad-lite": "[[Translating:Etherpad lite|Etherpad lite]]是一个真正的实时协同编辑器",
- "translate-group-desc-europeana": "[[Translating:Europeana|Europeana 1914~1918]]是包含有关第一次世界大战的故事、电影和历史材料网站",
- "translate-group-desc-flaggedrevs": "包含[[Translating:MediaWiki|MediaWiki]][https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs FlaggedRevs]扩展使用所有消息的元消息组。",
- "translate-group-desc-fuel": "[[Translating:FUEL|FUEL]]使软件翻译更加一致",
- "translate-group-desc-huggle": "[[Translating:Huggle|Huggle]]是一个快速的差异浏览程序,用来处理维基媒体项目中的破坏",
- "translate-group-desc-ihris": "[[Translating:iHRIS|iHRIS]]的消息组",
- "translate-group-desc-inaturalist": "[[Translating:INaturalist|iNaturalist]]是一个记录您在自然中看到的,与其他自然爱好者交流,以及了解自然世界的网站。",
- "translate-group-desc-kiwix": "[[Translating:Kiwix|Kiwix]]的消息组",
- "translate-group-desc-mantisbt-plugin-core": "[[Translating:MantisBT|MantisBT]]的核心插件",
- "translate-group-desc-mathjax": "[[Translating:MathJax|MathJax]]是一个跨浏览器,用于显示数学符号的JavaScript库",
- "translate-group-desc-mediawiki-core-branch": "用于 [[Translating:MediaWiki|MediaWiki]] 稳定版本的消息。",
- "translate-group-desc-mediawikiapi": "此界面消息群组包含了用于当前[[Translating:MediaWiki|MediaWiki]] alpha版本的Action API的消息({{CURRENTVERSION}})",
- "translate-group-desc-mediawikicore": "此界面消息群组包含了当前[[Translating:MediaWiki|MediaWiki]] alpha版本所使用的消息({{CURRENTVERSION}})",
- "translate-group-desc-mediawikiextensions": "包含所有用于[[Translating:MediaWiki|MediaWiki]]支持的扩展的元消息组",
- "translate-group-desc-mediawikiskins": "包含所有用于[[Translating:MediaWiki|MediaWiki]]的受支持皮肤的元消息组",
- "translate-group-desc-mediawikimostused": "此消息组包含在[[Translating:MediaWiki|MediaWiki]]使用的[https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500条最常用的消息]。",
- "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]]是一种小额信贷管理信息系统。",
- "translate-group-desc-nfcring-control": "[[Translating:NFC_Ring_Control|NFC戒指控制]]是一个与NFC标签交互的手机应用程序",
- "translate-group-desc-nocc": "[[Translating:NOCC|NOCC]] 是一个网络邮件客户端",
- "translate-group-desc-nodesc": "没有该信息组的说明可用",
- "translate-group-desc-openimages-all": "这些消息属于[[Translating:Open Images|Open Images]]项目",
- "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]]是基于Flash的OpenStreetMap编辑器。",
- "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]]是一个维基百科编辑工具集合",
- "translate-group-desc-readerfeedback": "包含[[Translating:MediaWiki|MediaWiki]][https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback]扩展使用所有消息的元消息组",
- "translate-group-desc-semantic": "包含所有[https://semantic-mediawiki.org/ Semantic MediaWiki]扩展使用所有消息的元消息组",
- "translate-group-desc-translatablepages": "所有翻译网页",
- "translate-group-desc-translate": "包含所有用于[[Translating:MediaWiki|MediaWiki]][https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate 翻译]扩展相关信息的元信息组;请您熟知其[https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary 术语表]",
- "translate-group-desc-tsint": "[[Translating:Intuition|Intuition]]的信息组。它是[//tools.wmflabs.org/ 维基媒体工具实验室]工具的i18n系统(<span class=\"plainlinks\">[[Translating talk:Intuition|支持]]</span>)",
- "translate-group-desc-universallanguageselector": "元信息组包含所有[[Translating:MediaWiki|MediaWiki]]扩展[https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector 通用语言选择器](ULS)和相关软件包的信息",
- "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]]是一个将文件上传到维基共享资源和其他维基媒体计划的工具",
- "translate-group-desc-visualeditor": "包含所有用于[[Translating:MediaWiki|MediaWiki]][https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:VisualEditor 可视化编辑器]扩展和相关软件包相关信息的元信息组",
- "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]]是一个使用GNU GPL许可证的显示世界范围内远足、骑行、山地骑行、轮滑路线的服务。",
- "translate-group-desc-waymarked-trails-help": "Waymarked Trails网站的帮助页面:http://waymarkedtrails.org/help/about",
- "translate-group-desc-wikiaextensions": "包含用于[http://www.wikia.com Wikia]的[[Translating:MediaWiki|MediaWiki]]支持的扩展的元信息组",
- "translate-group-desc-wikimania-scholarships-app": "用于[https://scholarships.wikimedia.org/apply 维基媒体国际会议旅行经费申请应用程序]的信息组",
- "translate-group-desc-wikimedia-mobile": "包含维基媒体项目移动应用的聚合消息组",
- "translate-group-desc-wikimedia-mobile-wikipedia": "[[Translating:WikipediaMobile|WikipediaMobile]]是一个跨平台的手机和平板电脑应用,用于阅读和编辑维基百科",
- "translate-group-desc-wikimedia-mobile-wikipedia-android": "[[Translating:WikipediaMobile|维基百科安卓版]]是为安卓系统定制的维基百科移动客户端",
- "translate-group-desc-wikimedia-mobile-wikipedia-ios": "[[Translating:WikipediaMobile|维基百科iOS版]]是面向苹果iOS设备定制的维基百科移动应用程序",
- "translate-group-desc-wikimedia-mobile-wikisource": "[[Translating:WikisourceMobile|WikisourceMobile]]是一个跨平台的手机和平板电脑应用,用于阅读和编辑维基文库",
- "translate-group-desc-wikimedia-mobile-wiktionary": "[[Translating:WiktionaryMobile|WiktionaryMobile]]是一个跨平台的手机和平板电脑应用,用于阅读和编辑维基词典",
- "translate-group-desc-wikimediaextensions": "包含[https://wikimediafoundation.org/ 维基媒体基金会]专用受支持的[[Translating:MediaWiki|MediaWiki]]扩展使用所有消息的元消息组",
- "translate-group-desc-wikimediaextensions-main": "包含为维基媒体[https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee 语言委员会]必须翻译的受支持的[[Translating:MediaWiki|MediaWiki]]扩展使用所有消息的元消息组。",
- "translategroupdescriptions-desc": "消息组说明[https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate 翻译]扩展所支持的产品"
-}
diff --git a/MLEB/Translate/i18n/groupdescriptions/zh-hant.json b/MLEB/Translate/i18n/groupdescriptions/zh-hant.json
deleted file mode 100644
index e7ced637..00000000
--- a/MLEB/Translate/i18n/groupdescriptions/zh-hant.json
+++ /dev/null
@@ -1,65 +0,0 @@
-{
- "@metadata": {
- "authors": [
- "Cwlin0416",
- "Justincheng12345",
- "Liangent",
- "Mark85296341",
- "Simon Shek",
- "Liuxinyu970226",
- "LNDDYL",
- "Macofe"
- ]
- },
- "bw-desc-freecol": "[[Translating:FreeCol|FreeCol]] 是一套回合制的策略遊戲",
- "bw-desc-fudforum": "[[Translating:FUDforum|FUDforum]] 是一套以網頁為基礎的論壇系統",
- "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] 是一套以網頁為基礎的問題追蹤系統。",
- "bw-desc-openstreetmap": "有關 [[Translating:OpenStreetMap|OpenStreetMap]] 的訊息",
- "bw-desc-osm-site": "[[Translating:OpenStreetMap|OpenStreetMap]] 是一套可以編輯世界地圖的程式",
- "bw-desc-wikiblame": "[[Translating:WikiBlame|WikiBlame]] 一套可以快速找到 Wikimedia 頁面中某一個段落作者的工具",
- "translate-group-desc-blockly": "[[Translating:Blockly|Blockly]] 的訊息群組",
- "translate-group-desc-bluespice": "此訊息群組包含了 MediaWiki 的 [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:BlueSpice Blue Spice] 擴充套件中所有的訊息",
- "translate-group-desc-collection": "此訊息群組包含了 [[Translating:MediaWiki|MediaWiki]] 的 [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection] 擴充套件中所有的訊息",
- "translate-group-desc-eol": "[[Translating:EOL|生命大百科]]的訊息群組",
- "translate-group-desc-etherpad-lite": "[[Translating:Etherpad lite|Etherpad lite]] 是一套即時協同作業的編輯程式",
- "translate-group-desc-europeana": "[[Translating:Europeana|歐盟 1914-1918]] 是一個網站包含了有關第一次世界大戰中的故事、電影與歷史文物的內容。",
- "translate-group-desc-flaggedrevs": "此訊息群組包含了 [[Translating:MediaWiki|MediaWiki]] 的 [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs FlaggedRevs] 擴充套件中所有的訊息",
- "translate-group-desc-fuel": "[[Translating:FUEL|FUEL]] 一套可讓軟體翻譯有更高一致性的軟體",
- "translate-group-desc-huggle": "[[Translating:Huggle|Huggle]] 是快速比對差異瀏覽器應用程式,可於維基媒體專案遭到破壞時使用",
- "translate-group-desc-ihris": "[[Translating:iHRIS|iHRIS]] 的訊息群組",
- "translate-group-desc-kiwix": "[[Translating:Kiwix|Kiwix]] 的訊息群組",
- "translate-group-desc-mantisbt-plugin-core": "[[Translating:MantisBT|MantisBT]] 的核心外掛程式",
- "translate-group-desc-mathjax": "[[Translating:MathJax|MathJax]] 是一套跨瀏覽器,可在網頁上顯示數學符號的 JavaScript 程式庫",
- "translate-group-desc-mediawiki-core-branch": "用於 [[Translating:MediaWiki|MediaWiki]] 穩定版本的訊息",
- "translate-group-desc-mediawikicore": "此訊息群組包含了目前使用在 Alpha 版本的 [[Translating:MediaWiki|MediaWiki]] ({{CURRENTVERSION}}) 中所使用的訊息",
- "translate-group-desc-mediawikiextensions": "此訊息群組中包含了所有支援 [[Translating:MediaWiki|MediaWiki]] 的擴充套件中所有的訊息",
- "translate-group-desc-mediawikimostused": "此訊息群組包含了在 [[Translating:MediaWiki|MediaWiki]] 中 [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 條最常使用的訊息]",
- "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] 是一套微型金融的資訊管理系統",
- "translate-group-desc-nfcring-control": "[[Translating:NFC_Ring_Control|NFC 戒指控制]] 是一套手機應用程式可用來與 NFC 標籤互動",
- "translate-group-desc-nocc": "[[Translating:NOCC|NOCC]] 是一套網頁郵件客戶端程式",
- "translate-group-desc-nodesc": "此訊息群組沒有內容描述",
- "translate-group-desc-openimages-all": "這些訊息屬於 [[Translating:Open Images|Open Images]] 專案的一部份",
- "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] 是一套以 Flash 為基礎的 OpenStreetMap 編輯器",
- "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] 是維基百科的編輯工具集",
- "translate-group-desc-readerfeedback": "此訊息群組包含了 [[Translating:MediaWiki|MediaWiki]] 的 [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback] 擴充套件中所有的訊息",
- "translate-group-desc-semantic": "此訊息群組包含了 [https://semantic-mediawiki.org/ Semantic MediaWiki] 擴充套件中所有的訊息",
- "translate-group-desc-translatablepages": "所有可翻譯的頁面",
- "translate-group-desc-translate": "此訊息群組包含了 MediaWiki 的[https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate 翻譯]擴充套件中所有的訊息;在翻譯前請先讓您自己熟悉[https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary 術語表]中的詞匯。",
- "translate-group-desc-tsint": "用於 [[Translating:Intuition|Intuition]] 的訊息群組,是 [//tools.wmflabs.org/ 維基媒體工具實驗室 (Wikimedia Tool Labs)] 工具的 i18n 系統 (<span class=\"plainlinks\">[[Translating talk:Intuition|協助翻譯]]</span>)",
- "translate-group-desc-universallanguageselector": "此訊息群組包含了 MediaWiki 的 [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector UniversalLanguageSelector] (ULS) 擴充套件及相關套件中所有的訊息",
- "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]] 是一套可以上傳檔案到維基共享資源及其他維基媒體專案的工具",
- "translate-group-desc-visualeditor": "此訊息群組包含了 MediaWiki 的 [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:VisualEditor VisualEditor] 擴充套件及相關套件中所有的訊息",
- "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] 一套線上服務可以提供全世界健行、自行車、山地自行車與直排輪的路線。該服務使用 GNU GPL 授權條款。",
- "translate-group-desc-waymarked-trails-help": "Waymarked Trails 網站的協助頁面:\nhttp://waymarkedtrails.org/help/about",
- "translate-group-desc-wikiaextensions": "此訊息群組包含了所有 [http://www.wikia.com Wikia] 使用的 MediaWiki 擴充套件中所有的訊息",
- "translate-group-desc-wikimania-scholarships-app": "用於 [https://scholarships.wikimedia.org/apply 維基媒體國際會議] 的訊息群組",
- "translate-group-desc-wikimedia-mobile": "匯總訊息群組包含了維基媒體專案中的所有手機應用程式",
- "translate-group-desc-wikimedia-mobile-wikipedia": "[[Translating:WikipediaMobile|WikipediaMobile]] 是一套可以在手機與平板電腦上閱讀與貢獻 Wikipedia 文件的跨平台應用程式",
- "translate-group-desc-wikimedia-mobile-wikipedia-android": "[[Translating:WikipediaMobile|Wikipedia Android]] 是一套專為 Android 所設計的維基百科手機應用程式",
- "translate-group-desc-wikimedia-mobile-wikipedia-ios": "[[Translating:WikipediaMobile|Wikipedia iOS]] 是一套專為 iOS 所設計的維基百科手機應用程式",
- "translate-group-desc-wikimedia-mobile-wikisource": "[[Translating:WikisourceMobile|WikisourceMobile]] 是一套可以在手機與平板電腦上閱讀與貢獻 Wikisource 文件的跨平台應用程式",
- "translate-group-desc-wikimedia-mobile-wiktionary": "[[Translating:WiktionaryMobile|WiktionaryMobile]] 是一套可以在手機與平板電腦上閱讀與貢獻維基詞典的跨平台應用程式",
- "translate-group-desc-wikimediaextensions": "此訊息群組包含了所有[https://wikimediafoundation.org/ 維基媒體基金會]使用的 MediaWiki 擴充套件中所有的訊息",
- "translate-group-desc-wikimediaextensions-main": "此訊息群組包含了所有維基媒體 [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee 語言委員會 (Language committee)] 使用的 [[Translating:MediaWiki|MediaWiki]] 擴充套件中所有的訊息",
- "translategroupdescriptions-desc": "有關目前 [https://mediawiki.org/wiki/Special:MyLanguage/Extension:Translate 翻譯] 擴充套件所支援產品的訊息群組內容描述。"
-}
diff --git a/MLEB/Translate/i18n/pagetranslation/af.json b/MLEB/Translate/i18n/pagetranslation/af.json
index 96838eab..083ed871 100644
--- a/MLEB/Translate/i18n/pagetranslation/af.json
+++ b/MLEB/Translate/i18n/pagetranslation/af.json
@@ -8,12 +8,9 @@
},
"pagetranslation": "Bladsyvertaling",
"right-pagetranslation": "Merk weergawes van bladsye vir vertaling",
- "tpt-desc": "Uitbreiding vir die vertaal van wikibladsye",
"tpt-section": "Vertaaleenheid $1",
"tpt-section-new": "Nuwe vertaaleenheid.\nNaam: $1",
"tpt-section-deleted": "Vertaaleenheid $1",
- "tpt-template": "Bladsysjabloon",
- "tpt-templatediff": "Die bladsysjabloon was gewysig.",
"tpt-diff-old": "Vorige teks",
"tpt-diff-new": "Nuwe teks",
"tpt-submit": "Merk die weergawe vir vertaling",
@@ -26,7 +23,6 @@
"tpt-oldrevision": "$2 is nie die nuutste weergawe van die bladsy [[:$1]] nie.\nSlegs die nuutste weergawe kan vir vertaling gemerk word.",
"tpt-notsuitable": "Die bladsy $1 is nie geskik om vir vertaling gemerk te word nie.\nSorg dat dit die etiket <nowiki><translate></nowiki> bevat en dat die sintaks daarvan korrek is.",
"tpt-saveok": "Die bladsy [[:$1]] is gemerk vir vertaling met $2 uitstaande {{PLURAL:$2|vertaaleenheid|vertaaleenhede}}.\nDie bladsy kan nou <span class=\"plainlinks\">[$3 vertaal]</span> word.",
- "tpt-badsect": "\"$1\" is nie 'n geldige naam vir vertaaleenheid $2 nie.",
"tpt-showpage-intro": "Hieronder word nuwe, bestaande en verwyderde afdelings gelys.\nAlvorens u die weergawe vir vertaling merk, maak seker dat die veranderinge geminimeer word om onnodig werk vir vertalers te voorkom.",
"tpt-mark-summary": "Merk die weergawe vir vertaling",
"tpt-edit-failed": "Die bladsy \"$1\" kon nie bygewerk word nie.",
@@ -53,6 +49,7 @@
"translate-tag-markthisagain": "Hierdie bladsy is <span class=\"plainlinks\">[$1 kere gewysig]</span> sedert dit laas <span class=\"plainlinks\">[$2 vir vertaling gemerk was]</span>.",
"translate-tag-hasnew": "Daar is <span class=\"plainlinks\">[$1 wysigings]</span> aan die bladsy gemaak wat nie vir vertaling gemerk is nie.",
"tpt-translation-intro": "Die bladsy is 'n <span class=\"plainlinks\">[$1 vertaalde weergawe]</span> van bladsy [[$2]]. Die vertaling van die bladsy is $3% voltooi.",
+ "tpt-translation-intro-fuzzy": "Verouderde vertalings word so weergegee.",
"tpt-languages-legend": "Ander tale:",
"tpt-languages-nonzero": "$1 ($2% vertaal)",
"tpt-tab-translate": "Vertaal",
@@ -60,7 +57,6 @@
"tpt-unknown-page": "Hierdie naamruimte is gereserveer vir die vertalings van bladsye.\nDie bladsy wat u probeer wysig kom nie ooreen met een wat vir vertaling gemerk is nie.",
"tpt-discouraged-language-reason": "Rede: $1",
"tpt-render-summary": "Besig met bewerkings vanweë 'n nuwe basisweergawe van die bronblad",
- "tpt-download-page": "Eksporteer bladsy met vertalings",
"tpt-aggregategroup-save": "Stoor",
"tpt-aggregategroup-new-name": "Naam:",
"tpt-aggregategroup-new-description": "Beskrywing (opsioneel):",
@@ -78,8 +74,6 @@
"pt-deletepage-reason": "Rede:",
"pm-savepages-button-label": "Stoor",
"pm-cancel-button-label": "Kanselleer",
- "pm-pagename-placeholder": "Verskaf die bladsynaam",
- "pm-langcode-placeholder": "Taalkode",
"pm-page-does-not-exist": "$1 bestaan nie.",
"pm-old-translations-missing": "$1 bevat nie ou vertalings nie.",
"pp-save-button-label": "Stoor",
diff --git a/MLEB/Translate/i18n/pagetranslation/ar.json b/MLEB/Translate/i18n/pagetranslation/ar.json
index 42a91873..f419067e 100644
--- a/MLEB/Translate/i18n/pagetranslation/ar.json
+++ b/MLEB/Translate/i18n/pagetranslation/ar.json
@@ -6,82 +6,209 @@
"ترجمان05",
"روخو",
"Bibas",
- "محمد أحمد عبد الفتاح"
+ "محمد أحمد عبد الفتاح",
+ "ديفيد"
]
},
"pagetranslation": "ترجمة صفحة",
- "right-pagetranslation": "عّلم نسخًا م هذه الصفحة للترجمة",
- "tpt-desc": "امتداد لترجمة محتويات الصفحات",
+ "right-pagetranslation": "تعليم نسخًا من الصفحات للترجمة",
+ "action-pagetranslation": "إدارة الصفحات القابلة للترجمة",
"tpt-section": "وحدة الترجمة $1",
"tpt-section-new": "وحدة ترجمة جديدة.\nالاسم: $1",
"tpt-section-deleted": "وحدة الترجمة $1",
- "tpt-template": "قالب صفحة",
- "tpt-templatediff": "تغيّر قالب الصفحة.",
"tpt-diff-old": "نص سابق",
"tpt-diff-new": "نص جديد",
"tpt-submit": "علّم هذه النسخة للترجمة",
"tpt-sections-oldnew": "وحدات الترجمة الجديدة والموجودة",
"tpt-sections-deleted": "وحدات الترجمة المحذوفة",
"tpt-sections-template": "قالب صفحة ترجمة",
+ "tpt-action-nofuzzy": "لا تجعل حالة الترجمات غير صحيحة",
"tpt-badtitle": "اسم الصّفحة المعطى ($1) ليس عنوانا صحيحا",
"tpt-nosuchpage": "الصفحة $1 غير موجودة",
"tpt-oldrevision": "$2 ليست آخر نسخة للصّفحة [[:$1]].\nفقط آخر النسخ يمكن أن تؤشّر للترجمة.",
"tpt-notsuitable": "الصفحة $1 غير مناسبة للترجمة.\nتأكد أن لها وسم <nowiki><translate></nowiki> وأن لها صياغة صحيحة.",
"tpt-saveok": "الصفحة [[:$1]] تم التعليم عليها للترجمة ب $2 {{PLURAL:$2|وحدة ترجمة|وحدات ترجمة}}.\nالصفحة يمكن الآن <span class=\"plainlinks\">[$3 ترجمتها]</span>.",
- "tpt-badsect": "\"$1\" ليس اسمًا صحيحًا لوحدة الترجمة $2.",
+ "tpt-offer-notify": "أنت يمكنك <span class=\"plainlinks\">[$1 إخطار المترجمين]</span> حول هذه الصفحة.",
"tpt-showpage-intro": "أدناه تُسرد الأقسام الجديدة والموجودة والمحذوفة.\nقبل تعليم هذه النسخة للترجمة، تحقق من أن التغييرات على الأقسام مُقلّلة لتفادي العمل غير الضروري من المترجمين.",
"tpt-mark-summary": "علَّم هذه النسخة للترجمة",
+ "tpt-mark-nochanges": "لا تغييرات للمراجعة. التعليم على هذه الصفحة للترجمة لن يعدل الصفحة ولا أي وحدة ترجمة موجودة.",
"tpt-edit-failed": "تعذّر تحديث الصفحة: $1",
+ "tpt-duplicate": "اسم وحدة الترجمة $1 مستخدم أكثر من مرة.",
"tpt-already-marked": "آخر نسخة من هذه الصفحة مُعلّمة بالفعل للترجمة.",
"tpt-unmarked": "الصفحة $1 لم تعد مُعلّمة للترجمة",
"tpt-list-nopages": "لا صفحات مُعلّمة للترجمة أو جاهزة للتعليم للترجمة.",
"tpt-new-pages-title": "صفحات مقترحة للترجمة",
"tpt-old-pages-title": "صفحات تحت الترجمة",
+ "tpt-other-pages-title": "صفحات مكسورة",
+ "tpt-discouraged-pages-title": "صفحات غير مشجع عليها",
"tpt-new-pages": "{{PLURAL:$1|هذه الصفحة تحتوي|هذه الصفحات تحتوي}} على نص بوسوم ترجمة، لكن لا نسخة من {{PLURAL:$1|هذه الصفحة|هذه الصفحات}} معلمة حاليا للترجمة.",
"tpt-old-pages": "إحدى نسخ {{PLURAL:$1||هذه الصفحة|هاتان الصفحتان|هذه الصفحات}} عُلّمت للترجمة.",
+ "tpt-other-pages": "{{PLURAL:$1|نسخة قديمة من هذه الصفحة|نسخ قديمة من هذه الصفحات}} معلمة للترجمة،\nلكن آخر {{PLURAL:$1|نسخة|نسخ}} لا يمكن تعليمها للترجمة.",
+ "tpt-discouraged-pages": "{{PLURAL:$1|هذه الصفحة تمت|هذه الصفحات تمت}} تثبيطها من المزيد من الترجمة.",
+ "tpt-select-prioritylangs": "قائمة بأكواد اللغات التي لها الأولوية مفصولة بفاصلة:",
+ "tpt-select-prioritylangs-force": "امنع الترجمات للغات غير اللغات التي لها الأولوية",
"tpt-select-prioritylangs-reason": "السبب:",
+ "tpt-sections-prioritylangs": "اللغات ذات الأولوية",
+ "tpt-rev-mark": "علم للترجمة",
"tpt-rev-unmark": "إزالة هذه الصفحة من الترجمة",
+ "tpt-rev-discourage": "لا تشجع",
"tpt-rev-encourage": "استرجاع",
+ "tpt-rev-mark-tooltip": "حدد أحدث نسخة من هذه الصفحة للترجمة.",
+ "tpt-rev-unmark-tooltip": "أزل هذه الصفحة من الترجمة.",
+ "tpt-rev-discourage-tooltip": "ثبط الترجمات الأخرى على هذه الصفحة.",
+ "tpt-rev-encourage-tooltip": "استعد هذه الصفحة للترجمة العادية.",
"translate-tag-translate-link-desc": "ترجم هذه الصفحة",
"translate-tag-markthis": "علّم هذه الصفحة للترجمة",
"translate-tag-markthisagain": "هذه الصفحة بها <span class=\"plainlinks\">[$1 تغيير]</span> منذ تم <span class=\"plainlinks\">[$2 تعليمها للترجمة]</span> لآخر مرة.",
"translate-tag-hasnew": "هذه الصفحة تحتوي على <span class=\"plainlinks\">[$1 تغييرات]</span> غير معلمة للترجمة.",
- "tpt-translation-intro": "هذه الصفحة هي <span class=\"plainlinks\">[$1 نسخة مترجمة]</span> لصفحة [[$2]] والترجمة مكتملة ومحدثة بنسبة $3%.",
+ "tpt-translation-intro": "هذه الصفحة هي <span class=\"plainlinks\">[$1 نسخة مترجمة]</span> لصفحة [[$2]] والترجمة مكتملة بنسبة $3%.",
+ "tpt-translation-intro-fuzzy": "الترجمات غير المُحدّثة مُعلّمة بما يشبه هذه.",
"tpt-languages-legend": "لغات أخرى:",
- "tpt-languages-nonzero": "$1 (قد ترجمت بنسبة $2%)",
+ "tpt-languages-zero": "ابدأ الترجمة لهذه اللغة",
+ "tpt-languages-nonzero": "$1 (قد تُرجمت بنسبة $2%)",
"tpt-tab-translate": "ترجم",
"tpt-target-page": "لا يمكن تحديث هذه الصفحة يدويًا.\nهذه الصفحة ترجمة لصفحة [[$1]] ويمكن تحديث الترجمة باستخدام [$2 أداة الترجمة].",
+ "tpt-patrolling-blocked": "هذه الصفحة لا يمكن خفرها. بدلا من ذلك، استخدم فعل translate لمراجعتها.",
"tpt-unknown-page": "هذا النطاق محجوز لترجمات صفحات المحتوى.\nالصفحة التي تحاول تعديلها لا يبدو أنها تتبع أي صفحة معلمة للترجمة.",
+ "tpt-translation-restricted": "ترجمة هذه الصفحة لهذه اللغة تم منعها بواسطة إداري ترجمة.\n\nالسبب: $1",
+ "tpt-discouraged-language-force-header": "هذه الصفحة لا يمكن ترجمتها إلى $1.",
+ "tpt-discouraged-language-force-content": "قرر إداري ترجمة أن هذه الصفحة يمكن ترجمتها فقط إلى $1.",
+ "tpt-discouraged-language-header": "الترجمة إلى $1 ليست أولوية لهذه الصفحة.",
+ "tpt-discouraged-language-content": "قرر إداري ترجمة تركيز جهود الترجمة على $1.",
+ "tpt-discouraged-language-force": "<strong>هذه الصفحة لا يمكن ترجمتها إلى $2.</strong>\n\nقرر إداري ترجمة أن هذه الصفحة يمكن ترجمتها فقط إلى $3.",
+ "tpt-discouraged-language": "<strong>الترجمة إلى $2 ليس أولوية لهذه الصفحة.</strong>\n\nقرر إداري ترجمة تركيز جهود الترجمة على $3.",
+ "tpt-discouraged-language-reason": "السبب: $1",
+ "tpt-priority-languages": "إداري ترجمة ضبط لغات الأولوية لهذه المجموعة إلى $1.",
"tpt-render-summary": "تحديث لمطابقة نسخة صفحة المصدر الجديدة",
- "tpt-download-page": "صدّر الصفحة مع الترجمات",
+ "aggregategroups": "المجموعة الإجمالية",
"tpt-aggregategroup-add": "أضف",
"tpt-aggregategroup-save": "احفظ",
+ "tpt-aggregategroup-add-new": "أضف مجموعة مجمعة جديدة",
"tpt-aggregategroup-new-name": "الاسم:",
"tpt-aggregategroup-new-description": "الوصف (اختياري):",
+ "tpt-aggregategroup-remove-confirm": "هل أنت متأكد أنك تريد حذف هذه المجموعة المجمعة؟",
+ "tpt-aggregategroup-invalid-group": "المجموعة غير موجودة",
+ "tpt-aggregategroup-edit-name": "الاسم:",
+ "tpt-aggregategroup-edit-description": "الوصف:",
"tpt-aggregategroup-update": "احفظ",
"tpt-aggregategroup-update-cancel": "ألغ",
+ "tpt-invalid-group": "مجموعة غير صالحة",
+ "pt-parse-open": "وسم &lt;translate> غير متوازن.\nقالب الترجمة: <pre>$1</pre>",
+ "pt-parse-close": "وسم &lt;/translate> غير متوازن.\nقالب الترجمة: <pre>$1</pre>",
+ "pt-parse-nested": "وحدات الترجمة &lt;translate> المتداخلة غير مسموح بها.\nنص الوسم: <pre>$1</pre>",
+ "pt-shake-multiple": "علامات وحدات ترجمة متعددة لوحدة ترجمة واحدة.\nنص وحدة الترجمة: <pre>$1</pre>",
+ "pt-shake-position": "علامات وحدات الترجمة في موضع غير متوقع.\nنص وحدة الترجمة: <pre>$1</pre>",
+ "pt-shake-empty": "وحدة ترجمة فارغة للعلامة \"$1\".",
+ "log-description-pagetranslation": "سجل بالأحداث المرتبطة بنظام ترجمة الصفحات",
+ "log-name-pagetranslation": "سجل ترجمة الصفحات",
+ "logentry-pagetranslation-mark": "{{GENDER:$2|حدد|حددت}} $1 $3 للترجمة",
+ "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|أزال|أزالت}} $3 من نظام الترجمة",
+ "logentry-pagetranslation-moveok": "$1 {{GENDER:$2|أكمل|أكملت}} إعادة تسمية الصفحة القابلة للترجمة $3 إلى $4",
+ "logentry-pagetranslation-movenok": "$1 {{GENDER:$2|صادف|صادفت}} مشكلة أثناء نقل الصفحة $3 إلى $4",
+ "logentry-pagetranslation-deletefok": "$1 {{GENDER:$2|أكمل|أكملت}} حذف الصفحات القابلة للترجمة $3",
+ "logentry-pagetranslation-deletefnok": "$1 {{GENDER:$2|فشل|فشلت}} في حذف $3 والتي تنتمي للصفحة القابلة للترجمة $4",
+ "logentry-pagetranslation-deletelok": "$1 {{GENDER:$2|أكمل|أكملت}} حذف صفحة الترجمة $3",
+ "logentry-pagetranslation-deletelnok": "$1 {{GENDER:$2|فشل|فشلت}} في حذف $3 والتي تنتمي لصفحة الترجمة $4",
+ "logentry-pagetranslation-encourage": "$1 {{GENDER:$2|شجع|شجعت}} ترجمة $3",
+ "logentry-pagetranslation-discourage": "$1 {{GENDER:$2|لم يشجع|لم تشجع}} ترجمة $3",
+ "logentry-pagetranslation-prioritylanguages-unset": "$1 {{GENDER:$2|أزال|أزالت}} لغات الأولوية من الصفحة القابلة للترجمة $3",
+ "logentry-pagetranslation-prioritylanguages": "$1 {{GENDER:$2|ضبط|ضبطت}} لغات الأولوية للصفحة القابلة للترجمة $3 إلى $5",
+ "logentry-pagetranslation-prioritylanguages-force": "$1 {{GENDER:$2|حدد|حددت}} اللغات للصفحة القابلة للترجمة $3 إلى $5",
+ "logentry-pagetranslation-associate": "$1 {{GENDER:$2|أضاف|أضافت}} الصفحة القابلة للترجمة $3 إلى المجموعة المجمعة $4",
+ "logentry-pagetranslation-dissociate": "$1 {{GENDER:$2|أزال|أزالت}} الصفحة القابلة للترجمة $3 من المجموعة المجمعة $4",
+ "log-action-filter-pagetranslation": "نوع الفعل:",
+ "log-action-filter-pagetranslation-mark": "التعليم للترجمة",
+ "log-action-filter-pagetranslation-unmark": "الإزالة من الترجمة",
+ "log-action-filter-pagetranslation-move": "نقل الصفحات",
+ "log-action-filter-pagetranslation-delete": "عمليات حذف الصفحات",
+ "log-action-filter-pagetranslation-encourage": "تشجيع الترجمة",
+ "log-action-filter-pagetranslation-discourage": "عدم تشجيع الترجمة",
+ "log-action-filter-pagetranslation-prioritylanguages": "تعديلات اللغات ذات الأولوية",
+ "log-action-filter-pagetranslation-aggregategroups": "تعديل المجموعات المجمعة",
+ "pt-movepage-title": "نقل الصفحة القابلة للترجمة \"$1\"",
+ "pt-movepage-blockers": "الصفحة القابلة للترجمة لا يمكن نقلها للاسم الجديد بسبب {{PLURAL:$1|الخطأ التالي|الأخطاء التالية}}:",
+ "pt-movepage-block-base-exists": "الصفحة القابلة للترجمة الهدف \"[[:$1]]\" موجودة.",
+ "pt-movepage-block-base-invalid": "اسم الصفحة القابلة للترجمة الهدف ليس عنوانا صحيحا.",
"pt-movepage-block-tp-exists": "صفحة الهدف المترجمة [[:$2]] موجودة.",
+ "pt-movepage-block-tp-invalid": "عنوان صفحة الترجمة الهدف ل\"[[:$1]]\" سيكون غير صحيح (طويل جدا؟).",
+ "pt-movepage-block-section-exists": "الصفحة الهدف \"[[:$2]]\" لوحدة الترجمة موجودة.",
+ "pt-movepage-block-section-invalid": "عنوان الصفحة الهدف ل\"[[:$1]]\" لوحدة الترجمة سيكون غير صحيح (طويل جدا؟).",
+ "pt-movepage-block-subpage-exists": "الصفحة الفرعية الهدف \"[[:$2]]\" موجودة.",
+ "pt-movepage-block-subpage-invalid": "عنوان الصفحة الفرعية الهدف ل\"[[:$1]]\" سيكون غير صحيح (طويل جدا؟).",
"pt-movepage-list-pages": "قائمة الصفحات التي ستنقل",
- "pt-movepage-list-translation": "صفحات الترجمة",
- "pt-movepage-list-other": "صفحات فرعية أخرى",
+ "pt-movepage-list-translation": "{{PLURAL:$1|صفحة|صفحات}} الترجمة",
+ "pt-movepage-list-section": "{{PLURAL:$1|صفحة|صفحات}} وحدة الترجمة",
+ "pt-movepage-list-other": "{{PLURAL:$1|صفحة|صفحات}} فرعية أخرى",
+ "pt-movepage-list-count": "كإجمالي $1 {{PLURAL:$1|صفحة|صفحات}} للنقل.",
+ "pt-movepage-legend": "نقل الصفحة القابلة للترجمة",
"pt-movepage-current": "الاسم الحالي:",
"pt-movepage-new": "الاسم الجديد:",
"pt-movepage-reason": "السبب:",
"pt-movepage-subpages": "انقل جميع الصفحات الفرعية",
- "pt-movepage-action-check": "تحقق اذا كان النقل ممكنا",
+ "pt-movepage-action-check": "تحقق ما إذا كان النقل ممكنا",
"pt-movepage-action-perform": "لا تنقل",
"pt-movepage-action-other": "تغيير الهدف",
+ "pt-movepage-intro": "هذه الصفحة الخاصة تسمح لك بنقل الصفحات التي تم تعليمها للترجمة.\nفعل النقل لن يكون فوريا، لأن الكثير من الصفحات ستحتاج إلى أن يتم نقلها.\nأثناء عملية نقل الصفحات، فلن يكون التفاعل ممكنا مع الصفحات المعينة.\nعمليات الفشل سوف تسجل في [[Special:Log/pagetranslation|سجل ترجمة الصفحات]] وستحتاج إلى أن يتم إصلاحها يدويا.",
+ "pt-movepage-logreason": "جزء من الصفحة القابلة للترجمة \"$1\"",
+ "pt-movepage-started": "من فضلك تحقق من [[Special:Log/pagetranslation|سجل ترجمة الصفحات]] للأخطاء ورسالة الإكمال.",
+ "pt-locked-page": "هذه الصفحة مقفلة لأن الصفحة القابلة للترجمة يتم نقلها حاليا.",
+ "pt-deletepage-lang-title": "حذف صفحة الترجمة \"$1\"",
+ "pt-deletepage-full-title": "حذف صفحة الترجمة \"$1\"",
+ "pt-deletepage-invalid-title": "الصفحة المحددة غير صحيحة.",
+ "pt-deletepage-invalid-text": "الصفحة المحددة ليست صفحة قابلة للترجة ولا صفحة ترجمة.",
+ "pt-deletepage-action-check": "عرض الصفحات للحذف",
+ "pt-deletepage-action-perform": "نفذ الحذف",
"pt-deletepage-action-other": "غيّر الهدف",
+ "pt-deletepage-lang-legend": "احذف صفحة الترجمة",
+ "pt-deletepage-full-legend": "حذف الصفحة القابلة للترجمة",
+ "pt-deletepage-any-legend": "حذف الصفحة القابلة للترجمة أو صفحة الترجمة",
"pt-deletepage-current": "اسم الصفحة:",
"pt-deletepage-reason": "السبب:",
"pt-deletepage-subpages": "أحذف جميع الصفحات الفرعية",
+ "pt-deletepage-list-pages": "قائمة الصفحات للحذف",
"pt-deletepage-list-translation": "صفحات الترجمة",
+ "pt-deletepage-list-section": "صفحات وحدة الترجمة",
"pt-deletepage-list-other": "صفحات فرعية أخرى",
+ "pt-deletepage-list-count": "إجمالا $1 {{PLURAL:$1|صفحة|صفحات}} للحذف.",
+ "pt-deletepage-full-logreason": "جزء من الصفحة القابلة للترجمة \"$1\"",
+ "pt-deletepage-lang-logreason": "جزء من صفحة الترجمة \"$1\"",
+ "pt-deletepage-started": "من فضلك تحقق من [[Special:Log/pagetranslation|سجل ترجمة الصفحات]] للأخطاء ورسائل الإكمال.",
+ "pt-deletepage-intro": "هذه الصفحة الخاصة تسمح لك بحذف صفحة قابلة للترجمة كاملة، أو صفحة ترجمة فردية في لغة.\nفعل الحذف لن يكون فوريا، لأن كل الصفحات التي تعتمد عليها سيتم حذفها أيضا.\nعمليات الفشل سوف يتم تسجيلها في [[Special:Log/pagetranslation|سجل ترجمة الصفحات]] وستحتاج إلى أن يتم إصلاحها يدويا.",
+ "pagemigration": "تحويل صفحة الترجمة",
+ "pagemigration-summary": "حدد صفحة ترجمة واستعد أي ترجمة تمت قبل تفعيل نظام الترجمة على هذه الصفحة.",
+ "pm-import-button-label": "استورد",
"pm-savepages-button-label": "احفظ",
"pm-cancel-button-label": "ألغ",
- "pm-pagename-placeholder": "أدخل اسم الصفحة",
- "pm-langcode-placeholder": "رمز اللغة",
"pm-page-does-not-exist": "$1 غير موجودة",
+ "pm-old-translations-missing": "$1 لا يحتوي ترجمات قديمة.",
+ "pm-extra-units-warning": "ربما تكون هناك وحدات إضافية. من فضلط طابق المصد ووحدات الترجمة جيدا.",
+ "pm-pagename-missing": "من فضلك أدخل اسم الصفحة.",
+ "pm-add-icon-hover-text": "أضف وحدة في الأسفل",
+ "pm-swap-icon-hover-text": "بدل مع الوحدة بالأسفل",
+ "pm-delete-icon-hover-text": "حذف الوحدة",
+ "pm-pagetitle-placeholder": "أدخل اسم الصفحة",
+ "pm-pagetitle-invalid": "من فضلك أدخل عنوان صفحة صحيح. ينبغي أن يكون بصيغة <page-name>/<language-code>.",
+ "pm-pagetitle-missing": "من فضلك أدخل عنوان الصفحة.",
+ "pm-langcode-missing": "كود اللغة يبدو مفقودا في العنوان. من فضلك أدخل عنوان الصفحة بالصيغة <page-name>/<language-code>.",
+ "pm-summary-import": "استورد الترجمة باستخدام [[Special:PageMigration|هجرة الصفحات]]",
+ "pm-on-import-message-text": "الترجمات القديمة تم استيرادها. استخدام اختيارات add, swap و delete لتعديل وحدات الترجمة واضغط على زر \"{{int:pm-savepages-button-label}}\" لحفظها. اضغط على زر \"{{int:pm-cancel-button-label}}\" للتجاهل.",
+ "pm-on-save-message-text": "وحدات الترجمة تم حفظها. أنت يمكك الآن إدخال عنوان صفحة ترجمة جديدة لهجرتها، أو عمل التغييرات للوحدات بالأسفل وحفظ مراجعة جديدة.",
+ "tpt-translate-title": "اسمح بترجمة عنوان الصفحة",
+ "pp-save-summary": "جهز الصفحة للترجمة",
+ "pagepreparation": "تحضير الصفحة للترجمة",
+ "pp-pagename-placeholder": "أدخل اسم الصفحة",
+ "pp-prepare-button-label": "جهز",
"pp-save-button-label": "احفظ",
- "pp-cancel-button-label": "ألغ"
+ "pp-cancel-button-label": "ألغ",
+ "pp-save-message": "الصفحة تم حفظها. أنت يمكنك [$1 تعديلها].",
+ "pp-prepare-message": "الصفحة تم تحضيرها للترجمة. انظر الفرق بالأسفل. اضغط على زر \"{{int:pp-save-button-label}}\" لو موافق!",
+ "pp-already-prepared-message": "يبدو أن الصفحة قد تم بالفعل تحضيرها للترجمة. لا توجد تغييرات بالمقارنة مع النسخة السابقة.",
+ "pp-pagename-missing": "من فضلك أدخل اسم الصفحة.",
+ "pp-diff-old-header": "نص المصدر",
+ "pp-diff-new-header": "جهز النص",
+ "tpt-unlink-confirm": "من فضلك تأكد من أك تريد فعلا إزالة هذه الصفحة من نظام الترجمة.\nأداة اختيار اللغة وأسماء الصفحة المترجمة سيتوفقون عن العمل.\nصفحات الترجمة ستصبح قابلة للتعديل.",
+ "tpt-unlink-button": "أزل من الترجمة",
+ "tpt-unlink-summary": "إزالة هذه الصفحة من الترجمة",
+ "tpt-generic-confirm": "برجاء تأكيد الفعل",
+ "tpt-generic-button": "تأكيد"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/arz.json b/MLEB/Translate/i18n/pagetranslation/arz.json
index fd060db6..0b1348af 100644
--- a/MLEB/Translate/i18n/pagetranslation/arz.json
+++ b/MLEB/Translate/i18n/pagetranslation/arz.json
@@ -1,17 +1,15 @@
{
"@metadata": {
"authors": [
- "Meno25"
+ "Meno25",
+ "Ghaly"
]
},
"pagetranslation": "ترجمه صفحة",
"right-pagetranslation": "عّلم نسخًا م هذه الصفحه للترجمة",
- "tpt-desc": "امتداد لترجمه محتويات الصفحات",
"tpt-section": "وحده الترجمه $1",
"tpt-section-new": "وحده ترجمه جديده.\nالاسم: $1",
"tpt-section-deleted": "وحده الترجمه $1",
- "tpt-template": "قالب صفحة",
- "tpt-templatediff": "تغيّر قالب الصفحه.",
"tpt-diff-old": "نص سابق",
"tpt-diff-new": "نص جديد",
"tpt-submit": "علّم هذه النسخه للترجمة",
@@ -22,7 +20,6 @@
"tpt-oldrevision": "$2 ليست آخر نسخه للصّفحه [[:$1]].\nفقط آخر النسخ يمكن أن تؤشّر للترجمه.",
"tpt-notsuitable": "الصفحه $1 غير مناسبه للترجمه.\nتأكد أن لها وسم <nowiki><translate></nowiki> وأن لها صياغه صحيحه.",
"tpt-saveok": "الصفحه [[:$1]] تم التعليم عليها للترجمه ب $2 {{PLURAL:$2|وحده ترجمة|وحدات ترجمة}}.\nالصفحه يمكن الآن <span class=\"plainlinks\">[$3 ترجمتها]</span>.",
- "tpt-badsect": "\"$1\" ليس اسمًا صحيحًا لوحده الترجمه $2.",
"tpt-showpage-intro": "أدناه تُسرد الأقسام الجديده والموجوده والمحذوفه.\nقبل تعليم هذه النسخه للترجمه، تحقق من أن التغييرات على الأقسام مُقلّله لتفادى العمل غير الضرورى من المترجمين.",
"tpt-mark-summary": "علَّم هذه النسخه للترجمة",
"tpt-edit-failed": "تعذّر تحديث الصفحة: $1",
@@ -35,9 +32,10 @@
"translate-tag-markthisagain": "هذه الصفحه بها <span class=\"plainlinks\">[$1 تغيير]</span> منذ تم <span class=\"plainlinks\">[$2 تعليمها للترجمة]</span> لآخر مره.",
"translate-tag-hasnew": "هذه الصفحه تحتوى على <span class=\"plainlinks\">[$1 تغييرات]</span> غير معلمه للترجمه.",
"tpt-translation-intro": "هذه الصفحه هى <span class=\"plainlinks\">[$1 نسخه مترجمة]</span> لصفحه [[$2]] والترجمه مكتمله ومحدثه بنسبه $3%.",
+ "tpt-translation-intro-fuzzy": "الترجمات غير المُحدّثه مُعلّمه هكذا.",
"tpt-languages-legend": "لغات أخرى:",
+ "tpt-languages-nonzero": "$1 (اترجمت بنسبة $2%)",
"tpt-target-page": "لا يمكن تحديث هذه الصفحه يدويًا.\nهذه الصفحه ترجمه لصفحه [[$1]] ويمكن تحديث الترجمه باستخدام [$2 أداه الترجمة].",
"tpt-unknown-page": "هذا النطاق محجوز لترجمات صفحات المحتوى.\nالصفحه التى تحاول تعديلها لا يبدو أنها تتبع أى صفحه معلمه للترجمه.",
- "tpt-render-summary": "تحديث لمطابقه نسخه صفحه المصدر الجديدة",
- "tpt-download-page": "صدّر الصفحه مع الترجمات"
+ "tpt-render-summary": "تحديث لمطابقه نسخه صفحه المصدر الجديدة"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/as.json b/MLEB/Translate/i18n/pagetranslation/as.json
index a7ad8b1a..82bf8073 100644
--- a/MLEB/Translate/i18n/pagetranslation/as.json
+++ b/MLEB/Translate/i18n/pagetranslation/as.json
@@ -3,11 +3,11 @@
"authors": [
"Bishnu Saikia",
"Chaipau",
- "Gitartha.bordoloi"
+ "Gitartha.bordoloi",
+ "Dibya Dutta"
]
},
"pagetranslation": "পৃষ্ঠা ভাঙনি",
- "tpt-template": "পৃষ্ঠা সাঁচ",
"tpt-diff-old": "আগৰ পাঠ্য",
"tpt-diff-new": "নতুন পাঠ্য",
"tpt-submit": "এই সংস্কৰণ ভাঙনিৰ বাবে বাচক",
@@ -18,9 +18,11 @@
"tpt-rev-discourage": "নিৰুত্সাহ",
"tpt-rev-encourage": "পুনঃসংস্থাপন কৰক",
"translate-tag-translate-link-desc": "এই পৃষ্ঠা ভাঙনি কৰক",
+ "tpt-translation-intro": "এই পৃষ্ঠাটো [[$2]] পৃষ্ঠাটোৰ এক <span class=\"plainlinks\">[$1 অনুবাদিত সংস্কৰণ]</span> আৰু $3% অনুবাদ সম্পন্ন হৈছে।",
"tpt-languages-legend": "অন্য ভাষা:",
"tpt-languages-zero": "এই ভাষাৰ অনুবাদ আৰম্ভ কৰক",
"tpt-languages-nonzero": "$1 ($2% অনূদিত)",
+ "tpt-target-page": "এই পৃষ্ঠাটো সাধাৰণভাৱে নবীকৰণ কৰিব নোৱাৰি।\nএই পৃষ্ঠাটো [[$1]] পৃষ্ঠাৰ অনুবাদ আৰু [$2 অনুবাদ সঁজুলি] ব্যৱহাৰ কৰি এই অনুবাদ নবীকৰণ কৰিব পৰা যায়।",
"tpt-discouraged-language-reason": "কাৰণ: $1",
"tpt-aggregategroup-add": "যোগ কৰক",
"tpt-aggregategroup-save": "সাঁচি থওক",
diff --git a/MLEB/Translate/i18n/pagetranslation/ast.json b/MLEB/Translate/i18n/pagetranslation/ast.json
index f7ffce66..74e5def9 100644
--- a/MLEB/Translate/i18n/pagetranslation/ast.json
+++ b/MLEB/Translate/i18n/pagetranslation/ast.json
@@ -8,12 +8,9 @@
"pagetranslation": "Traducción de páxines",
"right-pagetranslation": "Marcar versiones de páxines pa traducir",
"action-pagetranslation": "alministrar les páxines traducibles",
- "tpt-desc": "Estensión pa traducir páxines de conteníu",
"tpt-section": "Unidá de traducción $1",
"tpt-section-new": "Nueva unidá de traducción.\nNome: $1",
"tpt-section-deleted": "Unidá de traducción $1",
- "tpt-template": "Plantía de páxina",
- "tpt-templatediff": "La plantía de páxina camudó.",
"tpt-diff-old": "Testu anterior",
"tpt-diff-new": "Testu nuevu",
"tpt-submit": "Marcar esta versión pa traducir",
@@ -23,14 +20,13 @@
"tpt-action-nofuzzy": "Nun invalidar les traducciones",
"tpt-badtitle": "El nome que-y disti a la páxina (\"$1\") nun ye un títulu válidu",
"tpt-nosuchpage": "La páxina $1 nun esiste",
- "tpt-oldrevision": "$2 nun y la cabera versión de la páxina [[:$1]].\nSólo les caberes versiones se puen marcar pa traducir.",
+ "tpt-oldrevision": "$2 nun ye la cabera versión de la páxina [[:$1]].\nSólo les caberes versiones pueden marcase pa traducir.",
"tpt-notsuitable": "La páxina \"$1\" nun ye válida pa traducir.\nComprueba que tenga les etiquetes <nowiki><translate></nowiki> y una sintaxis válida.",
- "tpt-saveok": "A páxina [[:$1]] marcose pa traducir con {{PLURAL:$2|una unidá de traducción|$2 unidaes de traducción}}.\nLa páxina agora se pue <span class=\"plainlinks\">[$3 traducir]</span>.",
+ "tpt-saveok": "A páxina [[:$1]] marcose pa traducir con {{PLURAL:$2|una unidá de traducción|$2 unidaes de traducción}}.\nLa páxina agora puede <span class=\"plainlinks\">[$3 traducise]</span>.",
"tpt-offer-notify": "Pue <span class=\"plainlinks\">[$1 avisar a los traductores]</span> sobre esta páxina.",
- "tpt-badsect": "\"$1\" nun ye un nome válidu pa la unidá de traducción $2.",
"tpt-showpage-intro": "Abaxo ta la llista de les unidaes de traducción nueves, esistentes y desaniciaes.\nEnantes de marcar esta versión pa traducir, comprueba que los cambios fechos nes unidaes de traducción seyan mínimos pa evitar trabayu innecesariu de los traductores.",
"tpt-mark-summary": "Marcó esta versión pa traducir",
- "tpt-mark-nochanges": "Nun hai nenguna diferencia ente esta revisión y la última revisión marcada.",
+ "tpt-mark-nochanges": "Nun hai cambios por revisar. Marcar esta páxina pa traducir nun editará la páxina nin nenguna unidá de traducción esistente.",
"tpt-edit-failed": "Nun se pudo anovar la páxina: $1",
"tpt-duplicate": "El nome de la unidá de traducción $1 s'utiliza más d'una vegada.",
"tpt-already-marked": "La cabera versión d'esta páxina yá se marcó pa traducir.",
@@ -59,8 +55,9 @@
"translate-tag-translate-link-desc": "Traducir esta páxina",
"translate-tag-markthis": "Marcar esta páxina pa traducir",
"translate-tag-markthisagain": "Esta páxina tien <span class=\"plainlinks\">[$1 cambios]</span> dende que se <span class=\"plainlinks\">[$2 marcó pa traducir]</span> la última vegada.",
- "translate-tag-hasnew": "Esta páxina contién <span class=\"plainlinks\">[$1 cambios]</span> que nun tan marcaos pa traducir.",
+ "translate-tag-hasnew": "Esta páxina contien <span class=\"plainlinks\">[$1 cambios]</span> que nun tan marcaos pa traducir.",
"tpt-translation-intro": "Esta páxina ye una <span class=\"plainlinks\">[$1 versión traducida]</span> de la páxina [[$2]] y la traducción ta completada nún $3%.",
+ "tpt-translation-intro-fuzzy": "Les traducciones anticuaes márquense d'esta manera.",
"tpt-languages-legend": "Otres llingües:",
"tpt-languages-zero": "Principiar la traducción nesta llingua",
"tpt-languages-nonzero": "$1 ($2% traducío)",
@@ -69,7 +66,7 @@
"tpt-patrolling-blocked": "Esta páxina nun puede patrullase. Usa meyor l'aición traducir pa revisala.",
"tpt-unknown-page": "Esti espaciu de nomes ta acutáu pa les traducciones de les páxines de conteníu.\nLa páxina que tas intentando editar paez que nun correspuende con denguna páxina marcada pa traducir.",
"tpt-translation-restricted": "Un alministrador de traducciones torgó la traducción d'esta páxina a esta llingua.\n\nMotivu: $1",
- "tpt-discouraged-language-force-header": "Esta páxina nun pue traducise al $1.",
+ "tpt-discouraged-language-force-header": "Esta páxina nun puede traducise al $1.",
"tpt-discouraged-language-force-content": "Un alministrador de traducciones decidió qu'esta páxina sólo pue traducise al $1.",
"tpt-discouraged-language-header": "La traducción al $1 nun ye prioritaria pa esta páxina.",
"tpt-discouraged-language-content": "Un alministrador de traducciones decidió concentrar el trabayu de traducción nel $1.",
@@ -78,7 +75,6 @@
"tpt-discouraged-language-reason": "Motivu: $1",
"tpt-priority-languages": "Un alministrador de traducciones definió les llingües prioritaries d'esti grupu como $1.",
"tpt-render-summary": "Anovando pa casar cola nueva versión de la páxina orixinal",
- "tpt-download-page": "Esportar la páxina con traducciones",
"aggregategroups": "Grupos d'agregación",
"tpt-aggregategroup-add": "Amestar",
"tpt-aggregategroup-save": "Guardar",
@@ -115,6 +111,15 @@
"logentry-pagetranslation-prioritylanguages-force": "$1 {{GENDER:$2|llimitó}} les llingües pa la páxina traducible $3 a $5",
"logentry-pagetranslation-associate": "$1 {{GENDER:$2|amestó}} la páxina traducible $3 al grupu agregáu $4",
"logentry-pagetranslation-dissociate": "$1 {{GENDER:$2|desanició}} la páxina traducible $3 del grupu agregáu $4",
+ "log-action-filter-pagetranslation": "Tipu d'acción:",
+ "log-action-filter-pagetranslation-mark": "Marcar pa traducir",
+ "log-action-filter-pagetranslation-unmark": "Desaniciar de la traducción",
+ "log-action-filter-pagetranslation-move": "Tresllaos de páxina",
+ "log-action-filter-pagetranslation-delete": "Desanicios de páxines",
+ "log-action-filter-pagetranslation-encourage": "Invitación a traducir",
+ "log-action-filter-pagetranslation-discourage": "Invitación a nun traducir",
+ "log-action-filter-pagetranslation-prioritylanguages": "Cambéu d'idiomes prioritarios",
+ "log-action-filter-pagetranslation-aggregategroups": "Cambéu de grupos agregáu",
"pt-movepage-title": "Treslladar la páxina traducible $1",
"pt-movepage-blockers": "Nun se pue treslladar la páxina traducible a un nome nuevu {{PLURAL:$1|pol siguiente error|polos siguientes errores}}:",
"pt-movepage-block-base-exists": "La páxina traducible de destín «[[:$1]]» yá esiste.",
@@ -139,11 +144,11 @@
"pt-movepage-action-perform": "Facer el treslláu",
"pt-movepage-action-other": "Camudar el destín",
"pt-movepage-intro": "Esta páxina especial te permite treslladar páxines que tan marcaes pa traducir.\nL'aición de treslláu nun sedrá inmediata, porque ye necesario mover munches páxines.\nMentanto se treslladen les páxines, nun ye posible interactuar coles mesmes.\nLos fallos quedarán rexistraos nel [[Special:Log/pagetranslation|rexistru de traducción de páxines]] y tendrán de reparase a mano.",
- "pt-movepage-logreason": "Parte de la páxina traducible $1.",
- "pt-movepage-started": "La páxina base ta treslladada.\nPor favor, mira nel [[Special:Log/pagetranslation|rexistru de traducción de páxines]] pa ver los errores y mensaxe de completáu.",
+ "pt-movepage-logreason": "Parte de la páxina traducible «$1».",
+ "pt-movepage-started": "Mira nel [[Special:Log/pagetranslation|rexistru de traducción de páxines]] dientro d'un momentu pa ver los errores y mensaxe de completáu.",
"pt-locked-page": "Esta páxina ta bloquiada porque ta treslladandose la páxina traducible.",
- "pt-deletepage-lang-title": "Desaniciando la páxina de traducción $1.",
- "pt-deletepage-full-title": "Desaniciando la páxina traducible $1.",
+ "pt-deletepage-lang-title": "Desaniciando la páxina de traducción «$1».",
+ "pt-deletepage-full-title": "Desaniciando la páxina traducible «$1».",
"pt-deletepage-invalid-title": "La páxina especificada nun ye válida.",
"pt-deletepage-invalid-text": "La páxina especificada nun ye una páxina traducible nin una páxina de traducción.",
"pt-deletepage-action-check": "Llista de páxines a desaniciar",
@@ -160,8 +165,8 @@
"pt-deletepage-list-section": "Páxines de la unidá de traducción",
"pt-deletepage-list-other": "Otres subpáxines",
"pt-deletepage-list-count": "En total $1 {{PLURAL:$1|páxina|páxines}} a desaniciar.",
- "pt-deletepage-full-logreason": "Parte de la páxina traducible $1.",
- "pt-deletepage-lang-logreason": "Parte de la páxina de traducción $1.",
+ "pt-deletepage-full-logreason": "Parte de la páxina traducible «$1».",
+ "pt-deletepage-lang-logreason": "Parte de la páxina de traducción «$1».",
"pt-deletepage-started": "Por favor, mira nel [[Special:Log/pagetranslation|rexistru de traducción de páxines]] pa ver los errores y mensaxe de completáu.",
"pt-deletepage-intro": "Esta páxina especial te permite desaniciar una páxina traducible entera o una páxina individual de traducción a una llingua.\nL'aición de desaniciu nun sedrá inmediata, porque tamién se desaniciarán toles páxines que dependan d'elles.\nLos fallos quedarán rexistraos nel [[Special:Log/pagetranslation|rexistru de traducción de páxines]] y tendrán de reparase a mano.",
"pagemigration": "Migración de la páxina de traducción",
@@ -169,18 +174,20 @@
"pm-import-button-label": "Importar",
"pm-savepages-button-label": "Guardar",
"pm-cancel-button-label": "Encaboxar",
- "pm-pagename-placeholder": "Escribi'l nome de la páxina",
- "pm-langcode-placeholder": "Códigu de llingua",
"pm-page-does-not-exist": "$1 nun esiste",
"pm-old-translations-missing": "$1 nun contien traducciones antigües",
"pm-extra-units-warning": "Pue haber otres unidaes presentes. Por favor, casa correutamente les unidaes d'orixe coles de traducción",
"pm-pagename-missing": "Escribi'l nome de la páxina",
- "pm-langcode-missing": "Escribi'l códigu de llingua",
"pm-add-icon-hover-text": "Amiesta una unidá abaxo",
"pm-swap-icon-hover-text": "Cambiar cola unidá d'abaxo",
"pm-delete-icon-hover-text": "Desaniciar unidá",
- "pm-pagetitle-invalid": "Escribi un títulu de páxina válidu",
+ "pm-pagetitle-placeholder": "Escribe'l títulu de la páxina",
+ "pm-pagetitle-invalid": "Escribe un títulu de páxina válidu. Tien de tener el formatu <nome-de-páxina>/<códigu-de-llingua>.",
+ "pm-pagetitle-missing": "Escribe'l títulu de la páxina.",
+ "pm-langcode-missing": "Paez que falta'l códigu de llingua nel títulu. Escribe'l títulu de la páxina col formatu <nome-de-páxina>/<códigu-de-llingua>.",
"pm-summary-import": "Traducción importada usando [[Special:PageMigration|migración de páxina]]",
+ "pm-on-import-message-text": "Importáronse les traducciones antigües. Usa les opciones añadir, cambiar y desaniciar p'axustar les unidaes de traducción y fai click nel botón \"{{int:pm-savepages-button-label}}\" pa guardales. Fai click nel botón \"{{int:pm-cancel-button-label}}\" pa descartales.",
+ "pm-on-save-message-text": "Guardáronse les unidaes de traducción. Agora puedes escribir el títulu d'una nueva páxina de traducción pa migrales o facer cambios nes unidaes de más abaxo y guardar una nueva revisión.",
"tpt-translate-title": "Permitir traducir el títulu de la páxina",
"pp-save-summary": "Preparada la páxina pa traducción",
"pagepreparation": "Preparar la páxina pa traducción",
@@ -196,5 +203,7 @@
"pp-diff-new-header": "Testu preparáu",
"tpt-unlink-confirm": "Confirma que realmente quies desaniciar esta páxina del sistema de traducción.\nEl selector de llingua y los nomes traducíos de la páxina dexarán de funcionar.\nLes páxines de traducción podrán editase.",
"tpt-unlink-button": "Desaniciar de la traducción",
- "tpt-unlink-summary": "Páxina desaniciada de la traducción."
+ "tpt-unlink-summary": "Páxina desaniciada de la traducción.",
+ "tpt-generic-confirm": "Confirma l'aición.",
+ "tpt-generic-button": "Confirmar"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/av.json b/MLEB/Translate/i18n/pagetranslation/av.json
index 225c1a9d..d4079328 100644
--- a/MLEB/Translate/i18n/pagetranslation/av.json
+++ b/MLEB/Translate/i18n/pagetranslation/av.json
@@ -1,10 +1,13 @@
{
"@metadata": {
"authors": [
- "Gazimagomedov"
+ "Gazimagomedov",
+ "Аль-Гимравий"
]
},
"tpt-invalid-group": "Данде кколареб къокъа",
+ "pt-movepage-new": "ЦІияб цІар:",
+ "pt-deletepage-action-perform": "Нахъе бацІцІине",
"pp-prepare-button-label": "ХIадурабизе",
"pp-save-button-label": "ЦIунизе",
"pp-diff-old-header": "Бахчараб текст",
diff --git a/MLEB/Translate/i18n/pagetranslation/awa.json b/MLEB/Translate/i18n/pagetranslation/awa.json
index a2c8db85..e020cfb7 100644
--- a/MLEB/Translate/i18n/pagetranslation/awa.json
+++ b/MLEB/Translate/i18n/pagetranslation/awa.json
@@ -4,6 +4,5 @@
"1AnuraagPandey"
]
},
- "tpt-languages-nonzero": "$1 ($2% अनूदित)",
- "pm-langcode-placeholder": "भाषा कय कोड"
+ "tpt-languages-nonzero": "$1 ($2% अनूदित)"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/az.json b/MLEB/Translate/i18n/pagetranslation/az.json
index 5bf55a65..968ceb61 100644
--- a/MLEB/Translate/i18n/pagetranslation/az.json
+++ b/MLEB/Translate/i18n/pagetranslation/az.json
@@ -9,12 +9,9 @@
"pagetranslation": "Tərcümə səhifəsi",
"right-pagetranslation": "Tərcümə üçün səhifənin versiyalarını işarələ",
"action-pagetranslation": "tərcümə oluna bilən səhifələri idarə et",
- "tpt-desc": "Məzmun səhifələrin tərcüməsi üçün əlavə olundu",
"tpt-section": "Tərcümə bölümü $1",
"tpt-section-new": "Yeni tərcümə bölümü.\nAd: $1",
"tpt-section-deleted": "Tərcümə bölümü $1",
- "tpt-template": "Səhifə şablonu",
- "tpt-templatediff": "Səhifə şablonu dəyişdirildi.",
"tpt-diff-old": "Əvvəlki mətn",
"tpt-diff-new": "Yeni mətn",
"tpt-submit": "Bu versiyanı tərcümə üçün işarələ",
@@ -27,14 +24,13 @@
"tpt-oldrevision": "$2 [[:$1]] səhifəsinin son versiyası deyil.\nYalnız ən son versiyalar tərcümə üçün işarə oluna bilər.",
"tpt-languages-nonzero": "$1 ($2% tərcümə edilib)",
"tpt-discouraged-language-reason": "Təsvir: $1",
- "tpt-download-page": "Tərcüməli səhifələri köçür",
"aggregategroups": "Aqreqat qrupları",
"tpt-aggregategroup-add": "Əlavə et",
"tpt-aggregategroup-save": "Saxla",
"tpt-aggregategroup-add-new": "Yeni aqreqat qrupu əlavə et",
"tpt-aggregategroup-new-name": "Ad:",
"tpt-aggregategroup-new-description": "İzah (məcburi deyil):",
- "tpt-aggregategroup-remove-confirm": "Bu aqreqat qrupunu silmək istədiyindən əminsən?",
+ "tpt-aggregategroup-remove-confirm": "Bu aqreqat qrupunu silmək istədiyinizdən əminsiniz?",
"tpt-aggregategroup-invalid-group": "Qrup mövcud deyil",
"pt-movepage-new": "Yeni ad:",
"pt-movepage-reason": "Səbəb:",
diff --git a/MLEB/Translate/i18n/pagetranslation/azb.json b/MLEB/Translate/i18n/pagetranslation/azb.json
index fcd549ac..203644b5 100644
--- a/MLEB/Translate/i18n/pagetranslation/azb.json
+++ b/MLEB/Translate/i18n/pagetranslation/azb.json
@@ -3,18 +3,16 @@
"authors": [
"Ebrahimi-amir",
"Mousa",
- "Amir a57"
+ "Amir a57",
+ "Alp Er Tunqa"
]
},
"pagetranslation": "صحیفه چئویرمه‌سی",
"right-pagetranslation": "صحیفه‌لرین نوسخه‌لرینی چئویرمک اوچون نیشانلا",
"action-pagetranslation": "چئویرمه‌لی صحیفه‌لری ایداره ائت",
- "tpt-desc": "مقاله‌لری چئویرمک اوچون اوزانتی",
"tpt-section": "چئویرمه بیریمی $1",
"tpt-section-new": "یئنی چئویرمه بیریمی.\nآد: $1",
"tpt-section-deleted": "چئویرمه بیریمی $1",
- "tpt-template": "صحیفه شابلونو",
- "tpt-templatediff": "صحیفه شابلونو دَییشدیریلیب‌دیر.",
"tpt-diff-old": "قاباقکی یازی",
"tpt-diff-new": "یئنی یازی",
"tpt-submit": "بو نوسخه‌نی چئویرمگه نیشانلا",
@@ -23,11 +21,10 @@
"tpt-sections-template": "چئویرمک صحیفه‌سی شابلونو",
"tpt-action-nofuzzy": "چئویرمه‌لری اعتیبارسیز ائتمه",
"tpt-badtitle": "وئریلمیش صحیفه آدی ($1) گئچرلی بیر باشلیق دئییل",
- "tpt-nosuchpage": "$1 صحیفه‌سی یوخدور",
+ "tpt-nosuchpage": "$1 صفحه‌سی یوخدور",
"tpt-oldrevision": "$2، [[:$1]] صحیفه‌سینین سون نوسخه‌سی دئییل.\nیالنیز سون وئرسیالاری چئویرمگه نیشانلاماق اولا بیلر.",
"tpt-notsuitable": "$1 صحیفه‌سی چئویرمگه اویغون دئییل.\nآرخایین اولون اونون <nowiki><translate></nowiki> اِتیکِتلری و گئچرلی سینتکسی واردیر.",
"tpt-saveok": "[[:$1]] صحیفه‌سی {{PLURAL:$2|بیر|$2}} چئویرمک بیریمی‌له چئویرمگه نیشانلانیب‌دیر.\nبو صحیفه‌نی ایندی <span class=\"plainlinks\">[$3 چئویرمک اولا بیلر]</span>.",
- "tpt-badsect": "$2 چئویرمک بیریمی اوچون «$1» اویغون آد دئییل.",
"tpt-showpage-intro": "آشاغیدا یئنی، اولان و سیلینن چئویرمه بیریملری لیست اولوبلار.\nبو نوسخه‌نی چئویرمگه نیشانلاماقدان قاباق، باخین کی چئویرمک بیریملرینه اولان دَییشیکلیکلر ان آز اولسون کی چئویرنلره آرتیق گرکسیز ایشین قاباغی آلینسین.",
"tpt-mark-summary": "بو نوسخه‌نی چئویرمگه نیشانلادی",
"tpt-edit-failed": "صحیفه گونجل‌لننمه‌دی: $1",
@@ -60,6 +57,7 @@
"translate-tag-markthisagain": "بو صحیفه‌نین سون دفعه <span class=\"plainlinks\">[$2 چئویرمگه نیشانلان]</span>اندان بویانا <span class=\"plainlinks\">[$1 دَییشیکلیکلر]</span>ی واردیر.",
"translate-tag-hasnew": "بو صحیفه‌نین <span class=\"plainlinks\">[$1 دَییشیکلیکلری]</span> واردیر کی چئویرمگه نیشانلانماییب‌لار.",
"tpt-translation-intro": "بو صحیفه [[$2]] صحیفه‌سینین <span class=\"plainlinks\">[$1 چئویریلمیش نوسخه‌سی]</span>‌دیر و $3٪ چئویرمگی قاباغا گئدیب‌دیر.",
+ "tpt-translation-intro-fuzzy": "تاریخی گئچمیش چئویرمه‌لر بونون کیمی نیشانلانیبلار.",
"tpt-languages-legend": "آیری دیل‌لر:",
"tpt-languages-zero": "بو دیله چئویرمگه باشلا",
"tpt-languages-nonzero": "$1 ($2% ترجومه اولوب)",
@@ -71,10 +69,9 @@
"tpt-discouraged-language-reason": "ندن: $1",
"tpt-priority-languages": "بیر چئویرمک ایداره‌چیسی، بو قروپون اؤنجه‌لیک دیلینی $1 سئچیب‌دیر.",
"tpt-render-summary": "قایناق صحیفه‌نین یئنی نوسخه‌سی ایله تطبیق اوچون گونجل‌لنیر",
- "tpt-download-page": "صحیفه‌نی چئویرمه‌لرله ائشیگه چیخارت",
"aggregategroups": "بیرلشدیریلمیش قروپلار",
"tpt-aggregategroup-add": "آرتیر",
- "tpt-aggregategroup-save": "قئید ائت",
+ "tpt-aggregategroup-save": "ذخیره ائت",
"tpt-aggregategroup-add-new": "بیر یئنی بیرلشمه قروپو آرتیر",
"tpt-aggregategroup-new-name": "آد:",
"tpt-aggregategroup-new-description": "توضیح (ایستگه باغلی):",
@@ -101,7 +98,7 @@
"pt-movepage-block-subpage-exists": "«[[:$2]]» هدف آلت‌صحیفه‌سی یوخدور.",
"pt-movepage-block-subpage-invalid": "«[[:$1]]» اوچون هدف آلت‌صحیفه باشلیغی گئچرسیز اولار (چوخ اوزون؟).",
"pt-movepage-list-pages": "آدینی دَییشدیره‌جک صحیفه‌لرین لیستی",
- "pt-movepage-list-translation": "چئویرمک {{PLURAL:$1|صحیفه‌سی|صحیفه‌لری}}",
+ "pt-movepage-list-translation": "چئویرمه {{PLURAL:$1|صفحه‌سی|صفحه‌لری}}",
"pt-movepage-list-section": "چئویرمک بیریم {{PLURAL:$1|صحیفه‌سی|صحیفه‌لری}}",
"pt-movepage-list-other": "آیری آلت‌{{PLURAL:$1|صحیفه|صحیفه‌لر}}",
"pt-movepage-list-count": "توپلام‌دا آدینی دَییشدیرمگه {{PLURAL:$1|بیر|$1}} صحیفه.",
@@ -124,7 +121,7 @@
"pt-deletepage-action-check": "سیلینه‌جک صحیفه‌لری لیست ائت",
"pt-deletepage-action-perform": "سیلمه‌نی ائت",
"pt-deletepage-action-other": "هدفی دَییشدیر",
- "pt-deletepage-lang-legend": "چئویرمک صحیفه‌سینی سیل",
+ "pt-deletepage-lang-legend": "چئویرمک صفحه‌سینی سیل",
"pt-deletepage-full-legend": "چئویریله بیلن صحیفه‌نی سیل",
"pt-deletepage-any-legend": "چئویریله بیلن صحیفه یادا چئویرمک صحیفه‌سینی سیل",
"pt-deletepage-current": "صحیفه آدی:",
diff --git a/MLEB/Translate/i18n/pagetranslation/ba.json b/MLEB/Translate/i18n/pagetranslation/ba.json
index 9f7621c5..e4d0283d 100644
--- a/MLEB/Translate/i18n/pagetranslation/ba.json
+++ b/MLEB/Translate/i18n/pagetranslation/ba.json
@@ -1,9 +1,15 @@
{
"@metadata": {
"authors": [
- "Haqmar"
+ "Haqmar",
+ "Рустам Нурыев",
+ "Kaganer"
]
},
+ "translate-tag-translate-link-desc": "Был битте тәржемә итергә",
+ "tpt-translation-intro": "Был бит — [[$2]] бите <span class=\"plainlinks\">[$1 тәржемәһе]</span>. Тәржемә $3% үтәлгән",
+ "tpt-languages-legend": "Башҡа телдәр:",
+ "tpt-languages-nonzero": "$1 ($2% тәржемә ителгән)",
"pt-movepage-list-other": "Башҡа эске биттәр",
"pt-movepage-legend": "Тәржемә итеп булған биттәрҙең исемен үҙгәртергә",
"pt-movepage-current": "Хәҙерге исеме:",
diff --git a/MLEB/Translate/i18n/pagetranslation/bar.json b/MLEB/Translate/i18n/pagetranslation/bar.json
index 44646752..ce25b15a 100644
--- a/MLEB/Translate/i18n/pagetranslation/bar.json
+++ b/MLEB/Translate/i18n/pagetranslation/bar.json
@@ -6,12 +6,9 @@
},
"pagetranslation": "Seiten ywersétzen",
"right-pagetranslation": "Seitenversión fyr d' Ywersétzung markirn",
- "tpt-desc": "Daméglichts Ywersétzen voh Inhoidsseiten",
"tpt-section": "Ywersétzungsoahheit $1",
"tpt-section-new": "Neiche Ywersétzungsoahheit. Nåm $1",
"tpt-section-deleted": "Ywersétzungsoahheit $1",
- "tpt-template": "Seitenvurlog",
- "tpt-templatediff": "Dé Seitenvurlog hod sé gänderd.",
"tpt-diff-old": "Vuriger Text",
"tpt-diff-new": "Neicher Text",
"tpt-submit": "Dé Versión do zur Ywersétzung markirn",
diff --git a/MLEB/Translate/i18n/pagetranslation/bcl.json b/MLEB/Translate/i18n/pagetranslation/bcl.json
index 4200f857..015f0cd1 100644
--- a/MLEB/Translate/i18n/pagetranslation/bcl.json
+++ b/MLEB/Translate/i18n/pagetranslation/bcl.json
@@ -1,17 +1,15 @@
{
"@metadata": {
"authors": [
- "Geopoet"
+ "Geopoet",
+ "ShimunUfesoj"
]
},
"pagetranslation": "Dakit-taramon kan pahina",
"right-pagetranslation": "Markahi an mga bersyon kan mga pahina para sa dakit-taramon",
- "tpt-desc": "Ekstensyon para sa pagdadakit-taramon kan mga laman nin mga pahina",
"tpt-section": "Yunit kan dakit-taramon $1",
"tpt-section-new": "Bagong yunit kan dakit-taramon.\nPangaran: $1",
"tpt-section-deleted": "Yunit kan dakit-taramon $1",
- "tpt-template": "Panguyog kan pahina",
- "tpt-templatediff": "An panguyog kan pahina pinagbago.",
"tpt-diff-old": "Dating teksto",
"tpt-diff-new": "Baguhong teksto",
"tpt-submit": "Markahi ining bersyon para sa pagdakit-taramon",
@@ -24,7 +22,6 @@
"tpt-oldrevision": "An $2 bako an pinakabaguhong bersyon kan pahina [[:$1]].\nAn mga pinakabaguhong bersyon sana an puwedeng markahan para sa dakit-taramon.",
"tpt-notsuitable": "An pahina $1 bakong naaangay para sa dakit-taramon.\nHimoong segurado na ini igwang <nowiki><translate></nowiki> mga tatak asin igwa nin balidong sintaks.",
"tpt-saveok": "An pahina [[:$1]] pinagmarkahan pra sa dakit-taramon na igwang $2 {{PLURAL:$2|yunit kan dakit-taramon|mga yunit kan dakit-taramon}}.\nAn pahina mapuwede ngunyan na magin <span class=\"plainlinks\">[$3 pinagdakit-taramon]</span>.",
- "tpt-badsect": "An \"$1\" bakong balidong ngaran para sa yunit kan dakit-taramon $2.",
"tpt-showpage-intro": "Yaon sa ibaba an bago, dati na asin pinagburang yunit nin mga dakit-taramon an nagkarilista.\nBago mamarkahan nin bersyon para sa pagdakit-taramon, aramon mo na an mga kaliwatan pasiring sa mga yunit nin dakit-taramon pinagminimisa tanganing likayan an bakong kaipuhanan na trabaho para sa mga translador.",
"tpt-mark-summary": "Markado ining bersyon para sa pagdakit-taramon",
"tpt-edit-failed": "Dae mapanumpayan an pahina: $1",
@@ -57,8 +54,10 @@
"translate-tag-markthisagain": "Ining pahina igwa nin <span class=\"plainlinks\">[$1 mga kaliwatan]</span> poon pa kaitong huri ining <span class=\"plainlinks\">[$2 pinagmarkahan para ipagdakit-taramon]</span>.",
"translate-tag-hasnew": "Ining pahina igwa nin <span class=\"plainlinks\">[$1 mga kaliwatan]</span> na dae pinagmarkahan para ipagdakit-taramon.",
"tpt-translation-intro": "Ining pahina sarong <span class=\"plainlinks\">[$1 pinagdakit-taramon na bersyon]</span> kan pahina [[$2]] asin an pagdakit-taramon na $3% nakumpleto na.",
+ "tpt-translation-intro-fuzzy": "An luwas sa panahon na mga pinagdakit-taramon pinagmarkahan nin arog kaini.",
"tpt-languages-legend": "Ibang mga lengguwahe:",
"tpt-languages-zero": "Magpoon sa pagdakit-taramon para sa lengguwaheng ini",
+ "tpt-languages-nonzero": "$1 ($2% an pigsalin-tataramon)",
"tpt-target-page": "Ining pahina dae puwedeng manwal na pagpanumpayan.\nIning pahina sarong dakit-taramon kan pahina [[$1]] asin an pinagdakit-taramon mapuwedeng panumbayan na gamit an [$2 an gamit sa pagdakit-taramon].",
"tpt-unknown-page": "Ining espasyong ngaran nakareserba para sa pahina kan laman nin mga dakit-taramon.\nAn pahina na saimong boot na pagliliwaton garo habong magtutugot sa arinman na pahinang markado para ipagdakit-taramon.",
"tpt-translation-restricted": "An pagdakit-taramon kaining pahina sa lengguwaheng ini pinagpupugulan kan administrador nin pagdakit-taramon.\n\nRason: $1",
@@ -67,7 +66,6 @@
"tpt-discouraged-language-reason": "Rason: $1",
"tpt-priority-languages": "An administrador kan pagdakit-taramon ikinaag an prayoridad na mga lengguwahe para kaining grupo sa $1.",
"tpt-render-summary": "Panunumpayan tanganing ipagtugma sa baguhong bersyon kan ginikanang pahina",
- "tpt-download-page": "Salimbagong pahina na igwang mga pinagdakit-taramon",
"aggregategroups": "Sinurumpay na mga grupo",
"tpt-aggregategroup-add": "Dugangan",
"tpt-aggregategroup-save": "Ipagtagama",
diff --git a/MLEB/Translate/i18n/pagetranslation/be-tarask.json b/MLEB/Translate/i18n/pagetranslation/be-tarask.json
index ca5d0377..64de4cf1 100644
--- a/MLEB/Translate/i18n/pagetranslation/be-tarask.json
+++ b/MLEB/Translate/i18n/pagetranslation/be-tarask.json
@@ -11,12 +11,9 @@
"pagetranslation": "Пераклад старонкі",
"right-pagetranslation": "пазначаць вэрсіяў старонак для перакладу",
"action-pagetranslation": "кіраваньне перакладам старонак",
- "tpt-desc": "Пашырэньне для перакладу старонак зьместу",
"tpt-section": "Адзінка перакладу $1",
"tpt-section-new": "Новая адзінка перакладу. Назва: $1",
"tpt-section-deleted": "Адзінка перакладу $1",
- "tpt-template": "Старонка шаблёну",
- "tpt-templatediff": "Старонка шаблёну была зьменена.",
"tpt-diff-old": "Папярэдні тэкст",
"tpt-diff-new": "Новы тэкст",
"tpt-submit": "Пазначыць гэту вэрсію для перакладу",
@@ -30,7 +27,6 @@
"tpt-notsuitable": "Старонка $1 ня можа быць перакладзеная.\nУпэўніцеся, што яна ўтрымлівае тэгі <nowiki><translate></nowiki> і мае слушны сынтаксіс.",
"tpt-saveok": "Старонка «$1» была пазначаная для перакладу з $2 {{PLURAL:$2|адзінкай перакладу|адзінкамі перакладу|адзінкамі перакладу}}.\nЗараз старонка можа быць <span class=\"plainlinks\">[$3 перакладзеная]</span>.",
"tpt-offer-notify": "Вы можаце <span class=\"plainlinks\">[$1 паведаміць перакладчыкам]</span> пра гэтую старонку.",
- "tpt-badsect": "«$1» не зьяўляецца слушнай назвай для адзінкі перакладу $2.",
"tpt-showpage-intro": "Ніжэй знаходзяцца новыя, існуючыя і выдаленыя сэкцыі.\nПерад пазначэньнем гэтай вэрсіі для перакладу, праверце зьмены ў сэкцыях для таго, каб пазьбегнуць непатрэбнай працы для перакладчыкаў.",
"tpt-mark-summary": "Пазначыў гэтую вэрсію для перакладу",
"tpt-edit-failed": "Немагчыма абнавіць старонку: $1",
@@ -42,10 +38,10 @@
"tpt-old-pages-title": "Старонкі на стадыі перакладу",
"tpt-other-pages-title": "Сапсаваныя старонкі",
"tpt-discouraged-pages-title": "Адхіленыя старонкі",
- "tpt-new-pages": "{{PLURAL:$1|1=Гэта старонка ўтрымлівае|Гэтыя старонкі ўтрымліваюць}} тэкст з тэгамі перакладу, але {{PLURAL:$1|1=пазначанай для перакладу вэрсіі гэтай старонкі|пазначаных для перакладу вэрсіяў гэтых старонак}} няма.",
- "tpt-old-pages": "Некаторыя вэрсіі {{PLURAL:$1|1=гэтай старонкі|гэтых старонак}} былі пазначаны для перакладу.",
+ "tpt-new-pages": "{{PLURAL:$1|1=Гэтая старонка ўтрымлівае|Гэтыя старонкі ўтрымліваюць}} тэкст зь меткамі перакладу, але {{PLURAL:$1|1=пазначанай для перакладу вэрсіі гэтай старонкі|пазначаных для перакладу вэрсіяў гэтых старонак}} няма.",
+ "tpt-old-pages": "Некаторыя вэрсіі {{PLURAL:$1|1=гэтай старонкі|гэтых старонак}} былі пазначаныя для перакладу.",
"tpt-other-pages": "{{PLURAL:$1|1=Старая вэрсія гэтай старонкі пазначаная|Старыя вэрсіі гэтых старонак пазначаныя}} для перакладу, але {{PLURAL:$1|1=апошняя вэрсія ня можа быць пазначаная|апошнія вэрсіі ня могуць быць пазначаныя}} для перакладу.",
- "tpt-discouraged-pages": "{{PLURAL:$1|1=Гэтай старонцы|Гэтым старонкам}} было адхілена ў далейшым перакладзе.",
+ "tpt-discouraged-pages": "{{PLURAL:$1|1=Гэтай старонцы|Гэтым старонкам}} было адмоўлена ў далейшым перакладзе.",
"tpt-select-prioritylangs": "Сьпіс прыярытэтных кодаў моваў, падзеленых коскамі:",
"tpt-select-prioritylangs-force": "Запабегчы перакладам на адрозныя ад прыярытэтных мовы",
"tpt-select-prioritylangs-reason": "Прычына:",
@@ -61,8 +57,9 @@
"translate-tag-translate-link-desc": "Перакласьці гэту старонку",
"translate-tag-markthis": "Пазначыць гэту старонку для перакладу",
"translate-tag-markthisagain": "Гэта старонка ўтрымлівае <span class=\"plainlinks\">[$1 зьмены]</span> пасьля апошняй <span class=\"plainlinks\">[$2 пазнакі для перакладу]</span>.",
- "translate-tag-hasnew": "Гэта старонка ўтрымлівае <span class=\"plainlinks\">[$1 зьмены]</span> не пазначаныя для перакладу.",
+ "translate-tag-hasnew": "Гэта старонка ўтрымлівае <span class=\"plainlinks\">[$1 зьмены]</span>, не пазначаныя для перакладу.",
"tpt-translation-intro": "Гэтая старонка — <span class=\"plainlinks\">[$1 перакладзеная вэрсія]</span> старонкі [[$2]]. Пераклад завершаны на $3%.",
+ "tpt-translation-intro-fuzzy": "Гэтак пазначаныя састарэлыя пераклады.",
"tpt-languages-legend": "Іншыя мовы:",
"tpt-languages-zero": "Пачаць пераклад на гэтую мову",
"tpt-languages-nonzero": "$1 ($2% перакладзена)",
@@ -75,7 +72,6 @@
"tpt-discouraged-language-reason": "Прычына: $1",
"tpt-priority-languages": "Адміністратар перакладаў вызначыў прыярытэтныя мовы для гэтай групы: $1.",
"tpt-render-summary": "Абнаўленьне для адпаведнасьці новай вэрсіі крынічнай старонкі",
- "tpt-download-page": "Экспартаваць старонку з перакладамі",
"aggregategroups": "Абагульняльныя групы",
"tpt-aggregategroup-add": "Дадаць",
"tpt-aggregategroup-save": "Захаваць",
@@ -93,7 +89,7 @@
"log-description-pagetranslation": "Журнал для дзеяньняў зьвязаных з сыстэмай перакладу старонак",
"log-name-pagetranslation": "Журнал перакладу старонак",
"logentry-pagetranslation-mark": "$1 {{GENDER:$2|пазначыў|пазначыла}} $3 для перакладу",
- "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|выкрасьліў|выкрасьліла}} $3 зь перакладаў",
+ "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|выдаліў|выдаліла}} $3 з сыстэмы перакладаў",
"logentry-pagetranslation-moveok": "$1 {{GENDER:$2|выканаў|выканала}} перайменаваньне перакладальнай старонкі з $3 у $4",
"logentry-pagetranslation-movenok": "$1 {{GENDER:$2|сутыкнуўся|сутыкнулася}} з праблемай у часе пераносу старонкі з $3 у $4",
"logentry-pagetranslation-deletefok": "$1 {{GENDER:$2|выдаліў|выдаліла}} перакладальную старонку $3",
@@ -108,7 +104,7 @@
"logentry-pagetranslation-associate": "$1 {{GENDER:$2|дадаў|дадала}} перакладальную старонку $3 да агрэгаванай групы $4",
"logentry-pagetranslation-dissociate": "$1 {{GENDER:$2|выдаліў|выдаліла}} перакладальную старонку $3 з агрэгаванай групы $4",
"pt-movepage-title": "Перанесьці старонку $1, якую магчыма перакласьці",
- "pt-movepage-blockers": "Немагчыма перанесьці старонкі, якія магчыма перакладаць, з-за {{PLURAL:$1|1=наступнай памылкі|наступных памылак}}:",
+ "pt-movepage-blockers": "Старонка з магчымасьцю перакладу ня можа быць перанесеная з-за {{PLURAL:$1|1=наступнай памылкі|наступных памылак}}:",
"pt-movepage-block-base-exists": "Існуе мэтавая перакладальная старонка «[[:$1]]».",
"pt-movepage-block-base-invalid": "Мэтавая перакладальная старонка мае няслушную назву.",
"pt-movepage-block-tp-exists": "Мэтавая старонка перакладу [[:$2]] існуе.",
@@ -131,11 +127,11 @@
"pt-movepage-action-perform": "Перанесьці",
"pt-movepage-action-other": "Зьмяніць мэту",
"pt-movepage-intro": "Гэтая спэцыяльная старонка дазваляе пераносіць старонкі, пазначаныя да перакладу.\nПеранос не адбудзецца імгненна, таму што спатрэбіцца пераносіць шмат старонак.\nПадчас пераносу маніпуляцыя са старонкамі будзе немагчымая.\nУсе памылкі падчас пераносу будуць занесеныя ў [[Special:Log/pagetranslation|журнал перакладу старонак]], і будзе патрэбная іх ручная апрацоўка.",
- "pt-movepage-logreason": "Частка старонкі $1, якую магчыма перакласьці.",
- "pt-movepage-started": "Асноўная старонка перанесеная.\nПраверце [[Special:Log/pagetranslation|журнал перакладаў старонак]] наконт памылак і паведамленьня пра выкананьне.",
+ "pt-movepage-logreason": "Частка старонкі для перакладу «$1»",
+ "pt-movepage-started": "Калі ласка, праверце [[Special:Log/pagetranslation|журнал перакладаў старонак]] наконт памылак і паведамленьня пра выкананьне.",
"pt-locked-page": "Гэтая старонка заблякаваная з-за працэсу пераносу старонкі, якую магчыма перакласьці.",
- "pt-deletepage-lang-title": "Выдаленьне старонкі перакладу $1.",
- "pt-deletepage-full-title": "Выдаленьне старонкі $1, якую магчыма перакладаць.",
+ "pt-deletepage-lang-title": "Выдаленьне старонкі перакладу «$1».",
+ "pt-deletepage-full-title": "Выдаленьне старонкі «$1», якую магчыма перакладаць.",
"pt-deletepage-invalid-title": "Пазначаная няслушная старонка.",
"pt-deletepage-invalid-text": "Пазначаная старонка не зьяўляецца ні перакладальнай старонкай, ані перакладам.",
"pt-deletepage-action-check": "Сьпіс старонак да выдаленьня",
@@ -152,8 +148,8 @@
"pt-deletepage-list-section": "Старонкі адзінкі перакладу",
"pt-deletepage-list-other": "Іншыя падстаронкі",
"pt-deletepage-list-count": "Агулам $1 {{PLURAL:$1|старонка|старонкі|старонак}} да выдаленьня.",
- "pt-deletepage-full-logreason": "Частка старонкі $1, якую магчыма перакласьці.",
- "pt-deletepage-lang-logreason": "Частка перакладзенай старонкі $1.",
+ "pt-deletepage-full-logreason": "Частка старонкі для перакладу «$1»",
+ "pt-deletepage-lang-logreason": "Частка старонкі для перакладу «$1»",
"pt-deletepage-started": "Калі ласка, праверце [[Special:Log/pagetranslation|старонку журнала перакладаў]] адносна памылак і паведамленьняў пра выкананьне.",
"pt-deletepage-intro": "Гэтая спэцыяльная старонка дазваляе Вам выдаляць цэлыя перакладальныя старонкі, альбо перакладзеныя на іншыя мовы.\nВыдаленьне ня здарыцца хутка, таму што залежныя старонкі таксама будуць выдаленыя.\nПамылкі будуць запратакаляваныя на [[Special:Log/pagetranslation|старонцы журналу перакладаў]] і патрабуюць выпраўленьня ўручную."
}
diff --git a/MLEB/Translate/i18n/pagetranslation/be.json b/MLEB/Translate/i18n/pagetranslation/be.json
index dd3c5f26..e527f27b 100644
--- a/MLEB/Translate/i18n/pagetranslation/be.json
+++ b/MLEB/Translate/i18n/pagetranslation/be.json
@@ -5,16 +5,16 @@
"Mikalai Udodau",
"Unomano",
"Artificial123",
- "Чаховіч Уладзіслаў"
+ "Чаховіч Уладзіслаў",
+ "Artsiom91"
]
},
+ "tpt-languages-legend": "Іншыя мовы:",
"tpt-languages-nonzero": "$1 ($2% перакладзена)",
"pt-movepage-reason": "Прычына:",
"pm-import-button-label": "Імпартаваць",
"pm-savepages-button-label": "Запісаць",
"pm-cancel-button-label": "Адмяніць",
- "pm-pagename-placeholder": "Увядзіце назву старонкі",
- "pm-langcode-placeholder": "Код мовы",
"pm-add-icon-hover-text": "Дадаць блок ніжэй",
"pm-swap-icon-hover-text": "Замяніць блокам ніжэй",
"pm-delete-icon-hover-text": "Выдаліць блок"
diff --git a/MLEB/Translate/i18n/pagetranslation/bg.json b/MLEB/Translate/i18n/pagetranslation/bg.json
index 388e9e6c..494d2463 100644
--- a/MLEB/Translate/i18n/pagetranslation/bg.json
+++ b/MLEB/Translate/i18n/pagetranslation/bg.json
@@ -3,25 +3,36 @@
"authors": [
"DCLXVI",
"පසිඳු කාවින්ද",
- "StanProg"
+ "StanProg",
+ "Termininja",
+ "ShockD"
]
},
+ "pagetranslation": "Превод на страници",
"tpt-diff-old": "Предишен текст",
"tpt-diff-new": "Нов текст",
"tpt-nosuchpage": "Страницата „$1“ не съществува",
+ "tpt-new-pages-title": "Страници предложени за превод",
"tpt-other-pages-title": "Счупени страници",
+ "tpt-discouraged-pages-title": "Непрепоръчителни страници",
+ "tpt-discouraged-pages": "Препоръчва се {{PLURAL:$1|тази страница да не се превежда|тези страници да не се превеждат}} повече.",
"tpt-select-prioritylangs-reason": "Причина:",
+ "tpt-sections-prioritylangs": "Приоритетни езици",
"translate-tag-translate-link-desc": "Превеждане на тази страница",
+ "tpt-translation-intro": "Тази страница е <span class=\"plainlinks\">[$1 преведена версия]</span> на страницата [[$2]] и преводът е завършен на $3%.",
"tpt-languages-legend": "Други езици:",
"tpt-languages-nonzero": "$1 ($2% преведено)",
"tpt-discouraged-language-reason": "Причина: $1",
- "tpt-download-page": "Изнасяне на страница с преводите",
"tpt-aggregategroup-add": "Добавяне",
"tpt-aggregategroup-save": "Съхраняване",
"tpt-aggregategroup-new-name": "Име:",
"tpt-aggregategroup-new-description": "Описание (незадължително):",
"tpt-aggregategroup-invalid-group": "Групата не съществува",
- "pt-movepage-list-other": "Други подстраници",
+ "tpt-aggregategroup-update": "Съхраняване",
+ "tpt-aggregategroup-update-cancel": "Отказ",
+ "log-action-filter-pagetranslation": "Тип на действието:",
+ "log-action-filter-pagetranslation-delete": "Изтриване на страници",
+ "pt-movepage-list-other": "{{PLURAL:$1|Друга подстраница|Други подстраници}}",
"pt-movepage-current": "Текущо име:",
"pt-movepage-new": "Ново име:",
"pt-movepage-reason": "Причина:",
@@ -29,5 +40,13 @@
"pt-deletepage-action-perform": "Извършване на изтриването",
"pt-deletepage-reason": "Причина:",
"pt-deletepage-subpages": "Изтриване на всички подстраници",
- "pt-deletepage-list-other": "Други подстраници"
+ "pt-deletepage-list-other": "Други подстраници",
+ "pm-savepages-button-label": "Съхраняване",
+ "pm-cancel-button-label": "Отказ",
+ "tpt-translate-title": "Позволяване превод на заглавието на страницата",
+ "pp-save-button-label": "Съхраняване",
+ "pp-cancel-button-label": "Отказ",
+ "pp-diff-old-header": "Изходен текст",
+ "pp-diff-new-header": "Подготвен текст",
+ "tpt-generic-confirm": "Моля, потвърдете действието."
}
diff --git a/MLEB/Translate/i18n/pagetranslation/bn.json b/MLEB/Translate/i18n/pagetranslation/bn.json
index 926080d0..47c3996f 100644
--- a/MLEB/Translate/i18n/pagetranslation/bn.json
+++ b/MLEB/Translate/i18n/pagetranslation/bn.json
@@ -3,36 +3,85 @@
"authors": [
"Aftab1995",
"Bellayet",
- "Aftabuzzaman"
+ "Aftabuzzaman",
+ "আফতাবুজ্জামান"
]
},
"pagetranslation": "পাতা অনুবাদ",
+ "tpt-section": "অনুবাদের উপাদান $1",
+ "tpt-section-new": "নতুন অনুবাদের উপাদান।\nনাম: $1",
+ "tpt-section-deleted": "অনুবাদের উপাদান $1",
"tpt-diff-old": "পূর্বের লেখা",
"tpt-diff-new": "নতুন লেখা",
+ "tpt-submit": "এই সংস্করণ অনুবাদের জন্য চিহ্নিত করুন",
+ "tpt-sections-oldnew": "নতুন এবং বিদ্যমান অনুবাদের উপাদান",
+ "tpt-sections-deleted": "অপসারিত অনুবাদের উপাদান",
+ "tpt-sections-template": "অনুবাদ পাতার টেমপ্লেট",
+ "tpt-action-nofuzzy": "অনুবাদগুলি অকার্যকর করবেন না",
+ "tpt-nosuchpage": "$1 পাতাটির অস্তিত্ব নেই",
+ "tpt-saveok": "$2টি {{PLURAL:$2|অনুবাদের উপাদানসহ}} [[:$1]] পাতাটি অনুবাদের জন্য চিহ্নিত করা হয়েছে। পাতাটি এখন <span class=\"plainlinks\">[$3 অনুবাদ করা]</span> যাবে।",
+ "tpt-mark-summary": "এই সংস্করণ অনুবাদের জন্য চিহ্নিত করা হয়েছে",
+ "tpt-already-marked": "এই পাতার সর্বশেষ সংস্করণটি ইতিমধ্যে অনুবাদের জন্য চিহ্নিত করা হয়েছে।",
+ "tpt-old-pages-title": "অনুবাদে থাকা পাতা",
+ "tpt-other-pages-title": "ভাঙ্গা পাতা",
+ "tpt-discouraged-pages-title": "নিরুৎসাহিত করা পাতা",
+ "tpt-old-pages": "{{PLURAL:$1|এই পাতাটির|এই পাতাগুলির}} কিছু সংস্করণ অনুবাদের জন্য চিহ্নিত করা হয়েছে।",
"tpt-select-prioritylangs-reason": "কারণ:",
+ "tpt-sections-prioritylangs": "অগ্রাধিকারের ভাষাগুলি",
+ "tpt-rev-mark": "অনুবাদের জন্য চিহ্নিত করুন",
+ "tpt-rev-unmark": "অনুবাদ থেকে সরান",
+ "tpt-rev-discourage": "নিরুৎসাহিত করুন",
"tpt-rev-encourage": "পুনরুদ্ধার",
+ "tpt-rev-mark-tooltip": "অনুবাদের জন্য এই পৃষ্ঠার সর্বশেষ সংস্করণ চিহ্নিত করুন।",
+ "tpt-rev-unmark-tooltip": "অনুবাদ থেকে এই পাতাটি সরান।",
"translate-tag-translate-link-desc": "এই পাতা অনুবাদ করুন",
"translate-tag-markthis": "অনুবাদের জন্য এই পাতা চিহ্নিত করুন",
+ "translate-tag-hasnew": "এই পাতায় <span class=\"plainlinks\">[$1 পরিবর্তন]</span> রয়েছে যা অনুবাদ করার জন্য চিহ্নিত করা হয় নি।",
"tpt-translation-intro": "এই পাতাটি [[$2]] পাতার একটি <span class=\"plainlinks\">[$1 অনূদিত সংস্করণ]</span> এবং অনুবাদ $3% সম্পূর্ণ হয়েছে।",
+ "tpt-translation-intro-fuzzy": "পুরাতন অনুবাদ এটির মত চিহ্নিত করা হয়েছে।",
"tpt-languages-legend": "অন্য ভাষা:",
+ "tpt-languages-zero": "এই ভাষায় অনুবাদ শুরু করুন",
"tpt-languages-nonzero": "$1 ($2% অনূদিত)",
"tpt-tab-translate": "অনুবাদ",
+ "tpt-target-page": "এই পাতাটি ম্যানুয়ালি হালনাগাদ করা যাবে না।\nএই পাতাটি [[$1]] পাতার একটি অনুবাদ এবং [$2 অনুবাদ সরঞ্জাম] ব্যবহার করে অনুবাদ হালনাগাদ করা যাবে।",
"tpt-discouraged-language-reason": "কারণ: $1",
+ "tpt-render-summary": "উৎস পাতার নতুন সংস্করণের সাথে মেলাতে হালনাগাদ করা হচ্ছে",
"tpt-aggregategroup-add": "যোগ",
"tpt-aggregategroup-save": "সংরক্ষণ",
"tpt-aggregategroup-new-name": "নাম:",
"tpt-aggregategroup-new-description": "বিবরণ (ঐচ্ছিক):",
+ "tpt-aggregategroup-edit-name": "নাম:",
+ "tpt-aggregategroup-edit-description": "বিবরণ:",
"tpt-aggregategroup-update": "সংরক্ষণ",
- "log-name-pagetranslation": "পাতা অনুবাদ লগ্",
+ "tpt-aggregategroup-update-cancel": "বাতিল",
+ "log-name-pagetranslation": "পাতা অনুবাদ লগ",
+ "logentry-pagetranslation-mark": "$1 $3 অনুবাদের জন্য {{GENDER:$2|চিহ্নিত করেছেন}}",
+ "logentry-pagetranslation-unmark": "$1 অনুবাদ থেকে $3 {{GENDER:$2|সরিয়ে ফেলেছেন}}",
+ "logentry-pagetranslation-deletefok": "$1 অনুবাদযোগ্য $3 পাতার অপসারণ {{GENDER:$2|সম্পন্ন}} করেছেন",
+ "logentry-pagetranslation-deletelok": "$1 অনুবাদের পাতা $3 অপসারণ {{GENDER:$2|করেছেন}}",
+ "log-action-filter-pagetranslation": "কাজের ধরন:",
+ "log-action-filter-pagetranslation-mark": "অনুবাদের জন্য চিহ্নিত করা",
+ "log-action-filter-pagetranslation-unmark": "অনুবাদ থেকে সরানো",
+ "log-action-filter-pagetranslation-move": "পাতা স্থানান্তর",
+ "log-action-filter-pagetranslation-delete": "পাতা অপসারণ",
+ "log-action-filter-pagetranslation-encourage": "অনুবাদের জন্য অনুপ্রেরণা",
+ "log-action-filter-pagetranslation-discourage": "অনুবাদের জন্য নিরুৎসাহ",
+ "log-action-filter-pagetranslation-prioritylanguages": "অগ্রাধিকারের ভাষায় পরিবর্তন",
+ "log-action-filter-pagetranslation-aggregategroups": "সমষ্টিগত দল পরিবর্তন",
+ "pt-movepage-title": "অনুবাদযোগ্য পাতা $1 স্থানান্তর করুন",
"pt-movepage-current": "বর্তমান নাম:",
"pt-movepage-new": "নতুন নাম:",
"pt-movepage-reason": "কারণ:",
+ "pt-movepage-logreason": "অনুবাদযোগ্য পাতা \"$1\"-এর অংশ",
"pt-deletepage-current": "পাতার নাম:",
"pt-deletepage-reason": "কারণ:",
+ "pt-deletepage-full-logreason": "অনুবাদযোগ্য পাতা \"$1\"-এর অংশ",
+ "pt-deletepage-lang-logreason": "অনুবাদ পাতা \"$1\"-এর অংশ",
"pm-import-button-label": "আমদানি",
"pm-savepages-button-label": "সংরক্ষণ",
"pm-cancel-button-label": "বাতিল",
- "pm-pagename-placeholder": "পাতার নাম প্রবেশ করান",
- "pm-langcode-placeholder": "ভাষা কোড",
- "pp-cancel-button-label": "বাতিল"
+ "tpt-translate-title": "পাতার শিরোনাম অনুবাদের অনুমোদন দিন",
+ "pp-save-button-label": "সংরক্ষণ",
+ "pp-cancel-button-label": "বাতিল",
+ "tpt-generic-button": "নিশ্চিত করুন"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/br.json b/MLEB/Translate/i18n/pagetranslation/br.json
index 1640b14f..f14595bb 100644
--- a/MLEB/Translate/i18n/pagetranslation/br.json
+++ b/MLEB/Translate/i18n/pagetranslation/br.json
@@ -9,12 +9,9 @@
"pagetranslation": "Troidigezh ur bajenn",
"right-pagetranslation": "Merkañ stummoù pajennoù evit ma vefent troet",
"action-pagetranslation": "Merañ ar pajennoù a c'haller treiñ",
- "tpt-desc": "Astenn evit treiñ pajennoù gant danvez",
"tpt-section": "Unanenn treiñ $1",
"tpt-section-new": "Unvez treiñ nevez.\nAnv : $1",
"tpt-section-deleted": "Unanenn dreiñ $1",
- "tpt-template": "Patrom pajenn",
- "tpt-templatediff": "Kemmet eo patrom ar bajenn.",
"tpt-diff-old": "Testenn gent",
"tpt-diff-new": "Testenn nevez",
"tpt-submit": "Merkañ ar stumm-mañ da vezañ troet",
@@ -25,9 +22,8 @@
"tpt-badtitle": "N'eo ket reizh titl anv ar bajenn ($1) zo bet lakaet",
"tpt-nosuchpage": "N'eus ket eus ar bajenn $1.",
"tpt-oldrevision": "N'eo ket $2 stumm diwezhañ ar bajenn [[:$1]].\nN'eus nemet ar stummoù diwezhañ a c'hall bezañ merket evit bezañ troet.",
- "tpt-notsuitable": "N'haller ket treiñ ar bajenn $1.\nGwiria ez eus balizennoù <nowiki><translate></nowiki> enni hag ez eo reizh an ereadurezh anezhi.",
+ "tpt-notsuitable": "N'haller ket treiñ ar bajenn $1.\nGwiria ez eus tikedennoù <nowiki><translate></nowiki> enni hag ez eo reizh an ereadurezh anezhi.",
"tpt-saveok": "Merket eo bet ar bajenn [[:$1]] evit bezañ troet gant $2 {{PLURAL:$2|unanenn dreiñ|unanenn dreiñ}}.\nGallout a ra ar bajenn bezañ <span class=\"plainlinks\">[$3 troet]</span> bremañ.",
- "tpt-badsect": "Direizh eo an anv \"$1\" evit un unanenn dreiñ $2.",
"tpt-showpage-intro": "A-is emañ rollet an troidigezhioù nevez, ar re zo anezho hag ar re bet diverket.\nKent merkañ ar stumm-mañ evit an treiñ, gwiriait mat n'eus ket bet nemeur a gemmoù er rannbennadoù kuit da bourchas labour aner d'an droourien.",
"tpt-mark-summary": "Merket eo bet ar stumm-mañ da vezañ troet",
"tpt-edit-failed": "N'eus ket bet gallet hizivaat ar bajenn : $1",
@@ -39,7 +35,7 @@
"tpt-old-pages-title": "Pajennoù emeur o treiñ",
"tpt-other-pages-title": "Pajennoù torr",
"tpt-discouraged-pages-title": "Pajennoù dizerbedet",
- "tpt-new-pages": "{{PLURAL:$1|Er bajenn-mañ|Er pajennoù-mañ}} ez eus testennoù enno balizennoù treiñ, met stumm ebet eus ar {{PLURAL:$1|bajenn-mañ|pajennoù-mañ}} n'eo bet merket da vezañ troet.",
+ "tpt-new-pages": "{{PLURAL:$1|Er bajenn-mañ|Er pajennoù-mañ}} ez eus testennoù enno tikedennoù treiñ, met stumm ebet eus ar {{PLURAL:$1|bajenn-mañ|pajennoù-mañ}} n'eo bet merket da vezañ troet evit poent.",
"tpt-old-pages": "Stummoù zo eus ar {{PLURAL:$1|bajenn-mañ|pajennoù-mañ}} zo bet merket da vezañ troet.",
"tpt-other-pages": "Merket ez eus bet da vezañ troet {{PLURAL:$1|ur stumm kozh eus ar bajenn-mañ|stummoù koshoc'h eus ar pajennoù-mañ}};\nar {{PLURAL:$1|stumm|stummoù}} diwezhañ avat n'hallont ket bezañ merket da vezañ troet.",
"tpt-discouraged-pages": "Dizerbedet eo treiñ ar {{PLURAL:$1|bajenn-mañ|pajennoù-mañ}} pelloc'h.",
@@ -59,6 +55,7 @@
"translate-tag-markthisagain": "Er bajenn-mañ ez eus bet <span class=\"plainlinks\">[$1 kemm]</span> abaoe m'eo bet <span class=\"plainlinks\">[$2 merket da vezañ troet]</span>.",
"translate-tag-hasnew": "Er bajenn-mañ ez eus <span class=\"plainlinks\">[$1 kemm]</span> ha n'int ket bet merket da vezañ troet.",
"tpt-translation-intro": "Ur stumm <span class=\"plainlinks\">[$1 troet]</span> eus ar bajenn [[$2]] eo ar bajenn-mañ; kaset ez eus bet da benn $3% eus an droidigezh anezhi, ha diouzh an deiz emañ.",
+ "tpt-translation-intro-fuzzy": "An troidigezhioù diamzeret zo merket evel-henn.",
"tpt-languages-legend": "Yezhoù all :",
"tpt-languages-zero": "Stagañ gant an troidigezhioù evit ar yezh-se",
"tpt-languages-nonzero": "$1 ($2% troet)",
@@ -66,16 +63,15 @@
"tpt-unknown-page": "Miret eo an esaouenn anv-mañ evit troidigezh ar pajennoù.\nAr bajenn hoc'h eus klasket kemm ne seblant ket klotañ gant pajenn ebet bet merket evit bezañ troet.",
"tpt-discouraged-language-reason": "Abeg : $1",
"tpt-render-summary": "Hizivadenn da glotañ gant stumm nevez mammenn ar bajenn",
- "tpt-download-page": "Ezporzhiañ ar bajenn gant an troidigezhioù",
"tpt-aggregategroup-add": "Ouzhpennañ",
"tpt-aggregategroup-save": "Enrollañ",
"tpt-aggregategroup-new-name": "Anv :",
"tpt-aggregategroup-new-description": "Deskrivadur (diret) :",
"tpt-aggregategroup-invalid-group": "N'eus ket eus ar strollad-mañ",
"tpt-invalid-group": "Strollad direizh",
- "pt-parse-open": "Balizenn &lt;translate> digempouez.\nPatrom treiñ : <pre>$1</pre>",
- "pt-parse-close": "Balizenn &lt;/translate> digempouez.\nPatrom treiñ <pre>$1</pre>",
- "pt-parse-nested": "N'eo ket aotreet ar rannbennadoù &lt;translate> empret an eil en egile.\nTestenn ar valizenn : <pre>$1</pre>",
+ "pt-parse-open": "Tikedenn &lt;translate> digempouez.\nPatrom treiñ : <pre>$1</pre>",
+ "pt-parse-close": "Tikedenn &lt;/translate> digempouez.\nPatrom treiñ <pre>$1</pre>",
+ "pt-parse-nested": "N'eo ket aotreet ar rannbennadoù &lt;translate> empret an eil en egile.\nTestenn an dikedenn : <pre>$1</pre>",
"pt-shake-multiple": "Merkerioù rannbennadoù lies evit ur rannbennad.\nTestenn ar rannbennad : <pre>$1</pre>",
"pt-shake-position": "Merkerioù rannbennad lec'hiet drol.\nTestenn ar rannbennad : <pre>$1</pre>",
"pt-shake-empty": "Rannbennad c'houllo evit ar merker $1.",
diff --git a/MLEB/Translate/i18n/pagetranslation/bs.json b/MLEB/Translate/i18n/pagetranslation/bs.json
index b8a7be61..a5f8ce7e 100644
--- a/MLEB/Translate/i18n/pagetranslation/bs.json
+++ b/MLEB/Translate/i18n/pagetranslation/bs.json
@@ -3,17 +3,17 @@
"authors": [
"CERminator",
"Edinwiki",
- "Palapa"
+ "Palapa",
+ "Semso98",
+ "Srdjan m"
]
},
"pagetranslation": "Prijevod stranice",
"right-pagetranslation": "Označanje verzija stranica za prevođenje",
- "tpt-desc": "Proširenje za prevođenje stranica sadržaja",
+ "action-pagetranslation": "upravljate prevodivim stranicama",
"tpt-section": "Jedinica prevođenja $1",
"tpt-section-new": "Nova jedinica prevođenja. Naziv: $1",
"tpt-section-deleted": "Jedinica prevođenja $1",
- "tpt-template": "Šablon stranice",
- "tpt-templatediff": "Šablon stranice se izmijenio.",
"tpt-diff-old": "Prethodni tekst",
"tpt-diff-new": "Novi tekst",
"tpt-submit": "Označi ovu verziju za prevođenje",
@@ -24,52 +24,119 @@
"tpt-badtitle": "Zadano ime stranice ($1) nije valjan naslov",
"tpt-nosuchpage": "Stranica $1 ne postoji",
"tpt-oldrevision": "$2 nije posljednja verzija stranice [[:$1]].\nJedino posljednje verzije se mogu označiti za prevođenje.",
- "tpt-notsuitable": "Stranica $1 nije pogodna za prevođenje.\nProvjerite da postoje oznake <nowiki><translate></nowiki> i da ima valjanu sintaksu.",
+ "tpt-notsuitable": "Stranica $1 nije pogodna za prevođenje.\nProvjerite da postoje oznake <nowiki><translate></nowiki> i da ima ispravnu sintaksu.",
"tpt-saveok": "Stranica [[:$1]] je označena za prevođenje sa $2 {{PLURAL:$2|prevodilačkom jedinicom|prevodilačke jedinice|prevodilačkih jedinica}}.\nStranica se sad može <span class=\"plainlinks\">[$3 prevoditi]</span>.",
- "tpt-badsect": "\"$1\" nije valjano ime za jedinicu prevođenja $2.",
- "tpt-showpage-intro": "Ispod su navedene nove, postojeće i obrisane sekcije.\nPrije nego što označite ovu verziju za prevođenje, provjerite da su izmjene sekcija minimizirane da bi se spriječio nepotrebni rad prevodioca.",
+ "tpt-offer-notify": "Možete <span class=\"plainlinks\">[$1 obavijestiti prevodioce]</span> o ovoj stranici.",
+ "tpt-showpage-intro": "Ispod su navedene nove, postojeće i obrisane prevodne jedinice.\nPrije nego što označite ovu verziju za prevođenje, provjerite da su izmjene prevodnih jedinica svedene na minimum da bi se spriječio nepotrebni rad prevodioca.",
"tpt-mark-summary": "Ova vezija označena za prevođenje",
+ "tpt-mark-nochanges": "Nema izmjena za pregled. Ako ovu stranicu označite za prevođenje, ona se neće izmijeniti, a isto važi za bilo koju postojeću prevodilačku jedinicu.",
"tpt-edit-failed": "Nije moguće ažurirati stranicu: $1",
+ "tpt-duplicate": "Prevodilačka jedinica $1 koristi se više od jednom.",
"tpt-already-marked": "Posljednja verzija ove stranice je već označena za prevođenje.",
"tpt-unmarked": "Stranica $1 više nije označena za prevođenje.",
"tpt-list-nopages": "Nijedna stranica nije označena za prevođenje niti je spremna za označavanje.",
+ "tpt-new-pages-title": "Stranice predložene za prevođenje",
+ "tpt-old-pages-title": "Stranice za prevođenje",
+ "tpt-other-pages-title": "Pokvarene stranice",
+ "tpt-discouraged-pages-title": "Nepreporučene stranice",
"tpt-new-pages": "{{PLURAL:$1|Ova stranica sadrži|Ove stranice sadrže}} tekst sa oznakama prijevoda, ali nijedna od verzija {{PLURAL:$1|ove stranice|ovih stranica}} nije trenutno označena za prevođenje.",
"tpt-old-pages": "Neke verzije {{PLURAL:$1|ove stranice|ovih stranica}} su označene za prevođenje.",
"tpt-other-pages": "{{PLURAL:$1|Stara verzija ove stranice je označena|Stare verzije ovih stranica su označene}} za prevođenje,\nali {{PLURAL:$1|posljednja verzija ne može|posljednje verzije ne mogu}} biti {{PLURAL:$1|označena|označene}} za prevođenje.",
- "tpt-rev-unmark": "ukloni ovu stranicu iz prevođenja",
+ "tpt-discouraged-pages": "Preporučeno je da se {{PLURAL:$1|ova stranica više ne prevodi|ove stranice više ne prevode}}.",
+ "tpt-select-prioritylangs": "Spisak kôdova prioritetnih jezika razdvojenih zarezom:",
+ "tpt-select-prioritylangs-force": "Spriječi prevođenje na jezike koji nisu prioritetni",
+ "tpt-select-prioritylangs-reason": "Razlog:",
+ "tpt-sections-prioritylangs": "Prioritetni jezici",
+ "tpt-rev-mark": "označi za prevođenje",
+ "tpt-rev-unmark": "ukloni iz prevođenja",
+ "tpt-rev-discourage": "nepreporučeno",
+ "tpt-rev-encourage": "vrati",
+ "tpt-rev-mark-tooltip": "Označi posljednju verziju stranice za prevođenje.",
+ "tpt-rev-unmark-tooltip": "Ukloni stranicu iz prijevoda.",
+ "tpt-rev-discourage-tooltip": "Postavi stranicu kao nepreporučenu za daljnje prevođenje.",
+ "tpt-rev-encourage-tooltip": "Vrati stranicu na normalno prevođenje.",
"translate-tag-translate-link-desc": "Prevedi ovu stranicu",
"translate-tag-markthis": "Označi ovu stranicu za prevođenje",
"translate-tag-markthisagain": "Ova stranica ima <span class=\"plainlinks\">[$1 izmjena]</span> od kako je posljednji put <span class=\"plainlinks\">[$2 označena za prevođenje]</span>.",
"translate-tag-hasnew": "Ova stranica sadrži <span class=\"plainlinks\">[$1 izmjena]</span> koje nisu označene za prevođenje.",
- "tpt-translation-intro": "Ova stranica je <span class=\"plainlinks\">[$1 prevedena verzija]</span> stranice [[$2]] a prijevod je $3% dovršen i ažuriran.",
+ "tpt-translation-intro": "Ovo je <span class=\"plainlinks\">[$1 prevedena verzija]</span> stranice [[$2]], a prijevod je $3% dovršen.",
+ "tpt-translation-intro-fuzzy": "Zastarijeli prijevodi su označeni ovako.",
"tpt-languages-legend": "Drugi jezici:",
+ "tpt-languages-zero": "Počnite prijevod na ovaj jezik",
"tpt-languages-nonzero": "$1 ($2% prevedeno)",
+ "tpt-tab-translate": "Prevedi",
"tpt-target-page": "Ova stranica ne može biti ručno ažurirana.\nOva stranica je prijevod stranice [[$1]] a prijevodi se mogu ažurirati putem [$2 alata za prevođenje].",
+ "tpt-patrolling-blocked": "Stranica se ne može patrolirati. Umjesto toga, pregledajte je preko alata za prevođenje.",
"tpt-unknown-page": "Ovaj imenski prostor je rezervisan za prevode stranica sadržaja.\nStranica koju pokušavate uređivati ne odgovara nekoj od stranica koje su označene za prevođenje.",
+ "tpt-translation-restricted": "Prevodilački administrator spriječio je prevođenje stranice na ovaj jezik.\n\nRazlog: $1",
+ "tpt-discouraged-language-force-header": "Stranica se ne može prevesti na $1.",
+ "tpt-discouraged-language-force-content": "Prevodilački administrator odlučio je da se stranica može prevesti samo na $1.",
+ "tpt-discouraged-language-header": "Prevođenje na $1 nije prioritet za ovu stranicu.",
+ "tpt-discouraged-language-content": "Prevodilački administrator odlučio je da se prevođenje treba usredotočiti na $1.",
+ "tpt-discouraged-language-force": "<strong>Stranica se ne može prevesti na $2.</strong>\n\nPrevodilački administrator odlučio je da se stranica može prevesti samo na $3.",
+ "tpt-discouraged-language": "<strong>Prevođenje ove stranice na $2 nije prioritet.</strong>\n\nPrevodilački administrator odlučio je da se treba usredotočiti na $3.",
+ "tpt-discouraged-language-reason": "Razlog: $1",
+ "tpt-priority-languages": "Prevodilački administrator ovoj grupi je postavio sljedeće prioritetne jezike: $1.",
"tpt-render-summary": "Ažuriram na novu verziju izvorne stranice",
- "tpt-download-page": "Izvezi stranicu sa prijevodima",
+ "aggregategroups": "Zbirne grupe",
+ "tpt-aggregategroup-add": "Dodaj",
+ "tpt-aggregategroup-save": "Sačuvaj",
+ "tpt-aggregategroup-add-new": "Dodaj novu zbirnu grupu",
+ "tpt-aggregategroup-new-name": "Naziv:",
+ "tpt-aggregategroup-new-description": "Opis (neobavezno):",
+ "tpt-aggregategroup-remove-confirm": "Jeste li sigurni da želite obrisati ovu zbirnu grupu?",
+ "tpt-aggregategroup-invalid-group": "Grupa ne postoji",
+ "tpt-aggregategroup-edit-name": "Naziv:",
+ "tpt-aggregategroup-edit-description": "Opis:",
+ "tpt-aggregategroup-update": "Sačuvaj",
+ "tpt-aggregategroup-update-cancel": "Otkaži",
+ "tpt-invalid-group": "Neispravna grupa",
"pt-parse-open": "Neuravnotežena &lt;translate> oznaka.\nŠablon za prevođenje: <pre>$1</pre>",
"pt-parse-close": "Neuravnotežena &lt;/translate> oznaka.\nŠablon za prevođenje: <pre>$1</pre>",
- "pt-parse-nested": "Uklopljene &lt;translate> sekcije nisu dozvoljene.\nTekst oznake: <pre>$1</pre>",
- "pt-shake-multiple": "Veći broj oznaka sekcija za istu sekciju.\nTekst sekcije: <pre>$1</pre>",
- "pt-shake-position": "Oznake sekcija na nepredviđenoj poziciji.\nTekst sekcije: <pre>$1</pre>",
- "pt-shake-empty": "Prazna sekcija za marker $1.",
+ "pt-parse-nested": "Uklopljene &lt;translate> prevodne jedinice nisu dozvoljene.\nTekst oznake: <pre>$1</pre>",
+ "pt-shake-multiple": "Veći broj prevodnih jedinica za istu prevodnu jedinicu.\nTekst prevodne jedinice: <pre>$1</pre>",
+ "pt-shake-position": "Markeri prevodne jedinice na nepredviđenoj poziciji.\nTekst prevodne jedinice: <pre>$1</pre>",
+ "pt-shake-empty": "Prazna prevodna jedinica za marker \"$1\".",
"log-description-pagetranslation": "Zapisnik akcije vezanih za sistem prevođenja stranica",
"log-name-pagetranslation": "Zapisnik prijevoda stranice",
+ "logentry-pagetranslation-mark": "$1 {{GENDER:$2|označio|označila}} je $3 za prevođenje",
+ "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|uklonio|uklonila}} je $3 iz prijevoda",
+ "logentry-pagetranslation-moveok": "$1 {{GENDER:$2|završio|završila}} je preimenovanje prevodive stranice $3 na $4",
+ "logentry-pagetranslation-movenok": "$1 {{GENDER:$2|naišao|naišla}} je na problem pri premještanju stranice $3 na $4",
+ "logentry-pagetranslation-deletefok": "$1 {{GENDER:$2|završio|završila}} je brisanje prevodive stranice $3",
+ "logentry-pagetranslation-deletefnok": "$1 {{GENDER:$2|nije uspio|nije uspjela}} obrisati stranicu $3 koja pripada prevodivoj stranici $4",
+ "logentry-pagetranslation-deletelok": "$1 {{GENDER:$2|završio|završila}} je brisanje prevodive stranice $3",
+ "logentry-pagetranslation-deletelnok": "$1 {{GENDER:$2|nije uspio|nije uspjela}} obrisati stranicu $3 koja pripada prevodivoj stranici $4",
+ "logentry-pagetranslation-encourage": "$1 {{GENDER:$2|preporučio|preporučila}} je da se prevede $3",
+ "logentry-pagetranslation-discourage": "$1 {{GENDER:$2|preporučio|preporučila}} je da se ne prevodi $3",
+ "logentry-pagetranslation-prioritylanguages-unset": "$1 {{GENDER:$2|uklonio|uklonila}} je prioritetne jezike s prevodive stranice $3",
+ "logentry-pagetranslation-prioritylanguages": "$1 {{GENDER:$2|postavio|postavila}} je prioritetne jezike $5 za prevodivu stranicu $3",
+ "logentry-pagetranslation-prioritylanguages-force": "$1 {{GENDER:$2|ograničio|ograničila}} je jezike prevodive stranice $3 na $5",
+ "logentry-pagetranslation-associate": "$1 {{GENDER:$2|dodao|dodala}} je prevodivu stranicu $3 u zbirnu grupu $4",
+ "logentry-pagetranslation-dissociate": "$1 {{GENDER:$2|uklonio|uklonila}} je prevodivu stranicu $3 iz zbirne grupe $4",
+ "log-action-filter-pagetranslation": "Vrsta radnje:",
+ "log-action-filter-pagetranslation-mark": "Označavanje za prevođenje",
+ "log-action-filter-pagetranslation-unmark": "Uklanjanje iz prijevoda",
+ "log-action-filter-pagetranslation-move": "Premještanje stranica",
+ "log-action-filter-pagetranslation-delete": "Brisanje stranica",
+ "log-action-filter-pagetranslation-encourage": "Podsticanje na prevođenje",
+ "log-action-filter-pagetranslation-discourage": "Odvraćanje od prevođenja",
+ "log-action-filter-pagetranslation-prioritylanguages": "Promjena prioritetnih jezika",
+ "log-action-filter-pagetranslation-aggregategroups": "Promjena zbirnih grupa",
"pt-movepage-title": "Premještanje stranice za prevođenje $1",
"pt-movepage-blockers": "Stranica koja se može prevoditi ne može biti premještena na novo ime zbog {{PLURAL:$1|slijedeće greške|slijedećih grešaka}}:",
- "pt-movepage-block-base-exists": "Ciljna bazna stranica [[:$1]] postoji.",
- "pt-movepage-block-base-invalid": "Ciljna bazna stranica nije valjan naslov.",
+ "pt-movepage-block-base-exists": "Ciljna prevodiva stranica \"[[:$1]]\" postoji.",
+ "pt-movepage-block-base-invalid": "Ciljna prevodiva stranica ne predstavlja ispravan naziv.",
"pt-movepage-block-tp-exists": "Ciljna stranica za prijevod [[:$2]] postoji.",
"pt-movepage-block-tp-invalid": "Naslov ciljne stranice za prijevod za [[:$1]] bi bio nevaljan (predugačak?).",
- "pt-movepage-block-section-exists": "Ciljna sekcija stranice [[:$2]] postoji.",
- "pt-movepage-block-section-invalid": "Naslov ciljne sekcije za [[:$1]] bi bio nevaljan (predugačak?).",
+ "pt-movepage-block-section-exists": "Ciljna stranica \"[[:$2]]\" za prevodnu jedinicu postoji.",
+ "pt-movepage-block-section-invalid": "Naslov ciljne stranice za \"[[:$1]]\" za prevodnu jedinicu bio bi neispravan (predugačak?).",
"pt-movepage-block-subpage-exists": "Ciljna podstranica [[:$2]] postoji.",
"pt-movepage-block-subpage-invalid": "Naslov ciljne podstranice za [[:$1]] bi bio nevaljan (predugačak?).",
"pt-movepage-list-pages": "Spisak stranica za premještanje",
- "pt-movepage-list-translation": "Stranice za prijevod",
- "pt-movepage-list-section": "Stranice sekcije",
- "pt-movepage-list-other": "Druge podstranice",
+ "pt-movepage-list-translation": "{{PLURAL:$1|Stranica|Stranice}} za prijevod",
+ "pt-movepage-list-section": "{{PLURAL:$1|Stranica|Stranice}} za prevodnu jedinicu",
+ "pt-movepage-list-other": "{{PLURAL:$1|Druga podstranica|Druge podstranice}}",
"pt-movepage-list-count": "Ukupno $1 {{PLURAL:$1|stranica|stranice|stranica}} za premještanje.",
"pt-movepage-legend": "Premjesti stranicu koja se prevodi",
"pt-movepage-current": "Trenutni naziv:",
@@ -80,20 +147,66 @@
"pt-movepage-action-perform": "Izvrši premještanje",
"pt-movepage-action-other": "Promijeni cilj",
"pt-movepage-intro": "Ova posebna stranica vam omogućava da premještate stranice koje su obilježene za prevođenje.\nAkcija premještanja neće biti odmah, jer mnoge stranice trebaju biti premještene.\nDok se stranice premještaju, neće biti mogućnosti koristiti se s tim stranicama.\nGreške će biti zapisane u [[Special:Log/pagetranslation|zapisnik prevođenja stranice]] te se one moraju ispravljati ručno.",
- "pt-movepage-logreason": "Dio stranice koja se prevodi $1.",
- "pt-movepage-started": "Osnovna stranica se sad premješta.\nMolimo provjerite [[Special:Log/pagetranslation|zapisnik prevoda stranice]] za greške i poruke završetka.",
+ "pt-movepage-logreason": "Dio stranice koja se prevodi \"$1\"",
+ "pt-movepage-started": "Provjerite [[Special:Log/pagetranslation|zapisnik prijevoda stranice]] malo kasnije za greške i poruke završetka.",
"pt-locked-page": "Ova stranica je zaključana jer se stranica za prevođenje sada premješta.",
- "pt-deletepage-lang-title": "Brisanje stranice za prevođenje $1.",
+ "pt-deletepage-lang-title": "Brisanje stranice za prevođenje \"$1\"",
+ "pt-deletepage-full-title": "Brisanje prevodive stranice \"$1\"",
+ "pt-deletepage-invalid-title": "Navedena stranica nije ispravna.",
+ "pt-deletepage-invalid-text": "Navedena stranica nije prevodiva, niti je stranica prijevoda.",
"pt-deletepage-action-check": "Spisak stranica za brisanje",
"pt-deletepage-action-perform": "Izvrši brisanje",
"pt-deletepage-action-other": "Promijeni cilj",
+ "pt-deletepage-lang-legend": "Obriši stranicu prijevoda",
+ "pt-deletepage-full-legend": "Obriši prevodivu stranicu",
+ "pt-deletepage-any-legend": "Obriši prevodivu stranicu ili stranicu prijevoda",
"pt-deletepage-current": "Naslov stranice:",
"pt-deletepage-reason": "Razlog:",
"pt-deletepage-subpages": "Obriši sve podstranice",
"pt-deletepage-list-pages": "Spisak stranica za brisanje",
"pt-deletepage-list-translation": "Stranice za prijevod",
- "pt-deletepage-list-section": "Stranice sekcije",
+ "pt-deletepage-list-section": "Stranice za prevodnu jedinicu",
"pt-deletepage-list-other": "Druge podstranice",
- "pt-deletepage-full-logreason": "Dio stranice koja se prevodi $1.",
- "pt-deletepage-lang-logreason": "Dio stranice za prevođenje $1."
+ "pt-deletepage-list-count": "Ukupno $1 {{PLURAL:$1|stranica|stranice|stranica}} za brisanje.",
+ "pt-deletepage-full-logreason": "Dio stranice koja se prevodi \"$1\"",
+ "pt-deletepage-lang-logreason": "Dio stranice za prevođenje \"$1\"",
+ "pt-deletepage-started": "Provjerite [[Special:Log/pagetranslation|zapisnik prijevoda stranica]] za greške i poruke pri završetku.",
+ "pt-deletepage-intro": "Ova posebna stranica omogućava Vam brisanje cijele prevodive stranice ili pojedinačne stranice prijevoda na nekom jeziku.\nBrisanje neće biti obavljeno istog trena jer će se obrisati sve stranice koje ovise o stranici koja se briše.\nGreške će se evidentirati u [[Special:Log/pagetranslation|zapisniku prijevoda stranica]] i morat će se ručno ispraviti.",
+ "pagemigration": "Migracija stranica prijevoda",
+ "pagemigration-summary": "Navedite stranicu prijevoda i vratite sve prijevode napravljene prije aktiviranja sistema za prevođenje na toj stranici.",
+ "pm-import-button-label": "Uvezi",
+ "pm-savepages-button-label": "Sačuvaj",
+ "pm-cancel-button-label": "Otkaži",
+ "pm-page-does-not-exist": "$1 ne postoji.",
+ "pm-old-translations-missing": "$1 ne sadrži stare prijevode.",
+ "pm-extra-units-warning": "Možda ima dodatnih jedinica. Pobrinite se da je izvorni tekst u skladu s prijevodom.",
+ "pm-pagename-missing": "Upišite naziv stranice.",
+ "pm-add-icon-hover-text": "Dodaj jedinicu ispod",
+ "pm-swap-icon-hover-text": "Zamijeni s jedinicom ispod",
+ "pm-delete-icon-hover-text": "Obriši jedinicu",
+ "pm-pagetitle-placeholder": "Upišite naziv stranice",
+ "pm-pagetitle-invalid": "Upišite ispravan naziv stranice. Treba biti u formatu <page-name>/<language-code>.",
+ "pm-pagetitle-missing": "Upišite naziv stranice.",
+ "pm-langcode-missing": "U nazivu nedostaje jezički kôd. Upišite naziv stranice u formatu <page-name>/<language-code>.",
+ "pm-summary-import": "Uvezen prijevod pomoću [[Special:PageMigration|migracije stranica]]",
+ "pm-on-import-message-text": "Stari prijevodi su uvezeni. Poslužite se opcijama za dodavanje, zamjenu i brisanje da biste prilagodili prevodilačke jedinice i kliknite na dugme \"{{int:pm-savepages-button-label}}\" da biste ih sačuvali. Kliknite na dugme \"{{int:pm-cancel-button-label}}\" da biste ih odbacili.",
+ "pm-on-save-message-text": "Prevodilačke jedinice su sačuvane. Sad možete upisati naziv nove stranice da biste je migrirali ili ispod promijenite jedinice i sačuvajte novu izmjenu.",
+ "tpt-translate-title": "Dozvoli prijevod naziva stranice",
+ "pp-save-summary": "Stranica je pripremljena za prijevod",
+ "pagepreparation": "Priprema stranica za prijevod",
+ "pp-pagename-placeholder": "Upišite naziv stranice",
+ "pp-prepare-button-label": "Pripremi",
+ "pp-save-button-label": "Sačuvaj",
+ "pp-cancel-button-label": "Otkaži",
+ "pp-save-message": "Stranica je sačuvana. Možete je [$1 urediti].",
+ "pp-prepare-message": "Stranica je pripremljena za prevođenje. Pogledajte donju razliku izmjena. Kliknite na \"{{int:pp-save-button-label}}\" ako je sve u redu!",
+ "pp-already-prepared-message": "Izgleda da je ova stranica već spremna za prevođenje. Nema izmjena u odnosu na prethodnu verziju.",
+ "pp-pagename-missing": "Upišite naziv stranice.",
+ "pp-diff-old-header": "Izvorni tekst",
+ "pp-diff-new-header": "Pripremljeni tekst",
+ "tpt-unlink-confirm": "Potvrdite da zaista želite ukloniti ovu stranicu iz sistema za prevođenje.\nJezički selektor i prevedeni nazivi stranica prestat će raditi.\nStranice prijevoda neće se moći uređivati.",
+ "tpt-unlink-button": "Ukloni iz prijevoda",
+ "tpt-unlink-summary": "Uklonjena stranica iz prijevoda",
+ "tpt-generic-confirm": "Potvrdite radnju.",
+ "tpt-generic-button": "Potvrdi"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/ca.json b/MLEB/Translate/i18n/pagetranslation/ca.json
index 1ff90736..5daa4114 100644
--- a/MLEB/Translate/i18n/pagetranslation/ca.json
+++ b/MLEB/Translate/i18n/pagetranslation/ca.json
@@ -12,18 +12,16 @@
"Jmarchn",
"Macofe",
"Joan manel",
- "Ssola"
+ "Ssola",
+ "Jaumeortola"
]
},
"pagetranslation": "Traducció d'una pàgina",
"right-pagetranslation": "Marcar versions de pàgines per a traduir",
"action-pagetranslation": "gestiona les pàgines traduïbles",
- "tpt-desc": "Extensió per a traduir les pàgines de contingut",
"tpt-section": "Unitat de traducció $1",
"tpt-section-new": "Nova unitat de traducció. Nom: $1",
"tpt-section-deleted": "Unitat de traducció $1",
- "tpt-template": "Plantilla de la pàgina",
- "tpt-templatediff": "La plantilla de la pàgina ha canviat",
"tpt-diff-old": "Text anterior",
"tpt-diff-new": "Text nou",
"tpt-submit": "Marca aquesta versió per traduir",
@@ -36,8 +34,12 @@
"tpt-notsuitable": "La pàgina $1 no està preparada per a la seva traducció.\nAssegureu-vos que té les etiquetes <nowiki><translate></nowiki> i una sintaxi vàlida.",
"tpt-rev-encourage": "restaura",
"translate-tag-translate-link-desc": "Traduïu aquesta pàgina",
+ "translate-tag-hasnew": "Aquesta pàgina conté <span class=\"plainlinks\">[$1 modificacions]</span> que no estan marcats per la traducció.",
+ "tpt-translation-intro": "Aquesta pàgina és una <span class=\"plainlinks\">[$1 versió traduïda]</span> de la pàgina [[$2]] i la traducció és completada al $3&nbsp;%.",
+ "tpt-translation-intro-fuzzy": "Les traduccions obsoletes es marquen així.",
"tpt-languages-legend": "Altres idiomes:",
"tpt-languages-nonzero": "$1 ($2% traduït)",
+ "tpt-target-page": "Aquesta pàgina no es pot editar manualment.\nÉs una traducció de la pàgina [[$1]] i la traducció es realitza amb [$2 l'eina de traducció].",
"tpt-aggregategroup-add": "Afegeix",
"tpt-aggregategroup-save": "Desa",
"tpt-aggregategroup-new-name": "Nom:",
@@ -68,17 +70,15 @@
"pt-movepage-intro": "Aquesta pàgina especial permet desplaçar pàgines que estan marcades per a la traducció.\nEl trasllat no serà instantani, perquè moltes pàgines hauran de ser mogudes.\nMentre s'estiguin traslladant les pàgines no serà possible interaccionar amb les pàgines en qüestió.\nEls errors sortiran indicats al [[Special:Log/pagetranslation|registre de traducció de pàgines]] i hauran d'ésser reparats a mà.",
"pt-movepage-logreason": "Part de la pàgina a traduir $1.",
"pt-movepage-started": "La pàgina base està traslladada.\nComproveu el [[Special:Log/pagetranslation|registre de traducció de pàgines]] pels errors i el missatge de finalització.",
- "pt-locked-page": "Aquesta pàgina està bloquejada perquè la pàgina a traduir està en un procés de trasllat.",
+ "pt-locked-page": "Aquesta pàgina està blocada perquè la pàgina a traduir està en un procés de trasllat.",
"pt-deletepage-reason": "Raó:",
"pt-deletepage-list-other": "Altres subpàgines",
"pm-import-button-label": "Importa",
"pm-savepages-button-label": "Desa",
"pm-cancel-button-label": "Cancel·la",
- "pm-pagename-placeholder": "Introduïu el nom de la pàgina",
- "pm-langcode-placeholder": "Codi d’idioma",
- "pm-langcode-missing": "Introduïu el codi de l’idioma",
"pm-pagetitle-invalid": "Introduïu un títol vàlid per la pàgina",
+ "pm-langcode-missing": "Introduïu el codi de l’idioma",
"pp-save-button-label": "Desa",
- "pp-cancel-button-label": "Canceŀla",
+ "pp-cancel-button-label": "Cancel·la",
"pp-pagename-missing": "Introduïu el nom de la pàgina."
}
diff --git a/MLEB/Translate/i18n/pagetranslation/ce.json b/MLEB/Translate/i18n/pagetranslation/ce.json
index 805de32a..dbf8354e 100644
--- a/MLEB/Translate/i18n/pagetranslation/ce.json
+++ b/MLEB/Translate/i18n/pagetranslation/ce.json
@@ -2,7 +2,8 @@
"@metadata": {
"authors": [
"Sasan700",
- "Умар"
+ "Умар",
+ "Исмаил Садуев"
]
},
"pagetranslation": "АгӀонаш гочяр",
@@ -25,28 +26,26 @@
"logentry-pagetranslation-moveok": "$1 {{GENDER:$2|цӀе хийцина}} гочян луш йолу агӀона «$3» → «$4»",
"pt-movepage-current": "Карара цӀе:",
"pt-movepage-new": "Керла цӀе:",
- "pt-movepage-reason": "Бахьна:",
+ "pt-movepage-reason": "Бахьана:",
"pt-movepage-action-other": "Хийца Ӏалашо",
"pt-deletepage-invalid-text": "Билгалйина агӀо гоч я луш йолу агӀонийн юкъа йогӀуш яц.",
"pt-deletepage-action-perform": "Кхочушдé дӀаяккхар",
"pt-deletepage-action-other": "Хийца Ӏалашо",
- "pt-deletepage-current": "АгӀона цӀе:",
+ "pt-deletepage-current": "АгӀонан цӀе:",
"pagemigration": "АгӀонийн миграци",
"pm-import-button-label": "Импорт ян",
"pm-savepages-button-label": "Ӏалашдан",
- "pm-cancel-button-label": "Цаоьшу",
- "pm-pagename-placeholder": "Язъе агӀона цӀе",
- "pm-langcode-placeholder": "Метта код",
+ "pm-cancel-button-label": "Юхаяккхар",
"pm-page-does-not-exist": "«$1» яц",
"pm-old-translations-missing": "$1 шира гочдарш чохь дац",
"pm-pagename-missing": "Дехар до, дӀаязъе агӀона цӀе:",
- "pm-langcode-missing": "Дехар до, меттан код язъе",
"pm-pagetitle-invalid": "Дехар до, дӀаязеъе агӀона нийса цӀе.",
+ "pm-langcode-missing": "Дехар до, меттан код язъе",
"pp-save-summary": "АгӀо гочян кечяр",
"pagepreparation": "АгӀо гочян кечяр",
"pp-pagename-placeholder": "Язъе агӀона цӀе",
"pp-prepare-button-label": "Кечъян",
- "pp-save-button-label": "Ӏалашян",
+ "pp-save-button-label": "Ӏалашъян",
"pp-cancel-button-label": "Цаоьшу",
"pp-save-message": "АгӀо Ӏалашйина. Хьан йиш ю иза [$1 таян].",
"pp-pagename-missing": "Дехар до, дӀаязъе агӀона цӀе.",
diff --git a/MLEB/Translate/i18n/pagetranslation/ckb.json b/MLEB/Translate/i18n/pagetranslation/ckb.json
index 8be023ca..ba78e5fe 100644
--- a/MLEB/Translate/i18n/pagetranslation/ckb.json
+++ b/MLEB/Translate/i18n/pagetranslation/ckb.json
@@ -5,12 +5,11 @@
"Calak",
"Marmzok",
"Muhammed taha",
- "رزگار"
+ "رزگار",
+ "Sarchia"
]
},
"pagetranslation": "وەرگێڕانی پەڕە",
- "tpt-template": "داڕێژەی پەڕە",
- "tpt-templatediff": "داڕێژەی لاپەڕەکە گۆڕاوە.",
"tpt-diff-old": "دەقی پێشوو",
"tpt-diff-new": "دەقی نوێ",
"tpt-submit": "نیشان‌کردنی ئەم وەشانە بۆ وەرگێڕان",
@@ -23,11 +22,14 @@
"translate-tag-translate-link-desc": "ئەم پەڕەیە وەربگێڕە",
"translate-tag-markthis": "نیشان‌کردنی ئەم لاپەڕەیە بۆ وەرگێڕان",
"tpt-languages-legend": "زمانەکانی دیکە:",
+ "tpt-languages-nonzero": "$1 ($2% وەرگێڕراوە)",
"tpt-aggregategroup-add": "زێدەبکە",
"tpt-aggregategroup-save": "پاشەکەوتی بکە",
"tpt-aggregategroup-new-name": "ناو:",
+ "tpt-aggregategroup-update-cancel": "ھەڵوەشاندنەوە",
"pt-movepage-new": "ناوی نوێ:",
"pt-movepage-reason": "هۆکار:",
"pt-deletepage-current": "ناوی پەڕە:",
- "pt-deletepage-reason": "هۆکار:"
+ "pt-deletepage-reason": "هۆکار:",
+ "pm-cancel-button-label": "ھەڵوەشاندنەوە"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/cs.json b/MLEB/Translate/i18n/pagetranslation/cs.json
index 6223e44d..b86d5d53 100644
--- a/MLEB/Translate/i18n/pagetranslation/cs.json
+++ b/MLEB/Translate/i18n/pagetranslation/cs.json
@@ -8,18 +8,17 @@
"Michaelbrabec",
"Mormegil",
"Vks",
- "H4nek"
+ "H4nek",
+ "Kvetoslav47",
+ "Dvorapa"
]
},
"pagetranslation": "Překlad stránek",
"right-pagetranslation": "Označování verzí stránek pro překlad",
"action-pagetranslation": "spravovat přeložitelné stránky",
- "tpt-desc": "Rozšíření pro překládání stránek s obsahem",
"tpt-section": "Část překladu $1",
"tpt-section-new": "Nová část překladu.\nNázev: $1",
"tpt-section-deleted": "Část překladu $1",
- "tpt-template": "Šablona stránky",
- "tpt-templatediff": "Šablona stránky se změnila.",
"tpt-diff-old": "Předchozí text",
"tpt-diff-new": "Nový text",
"tpt-submit": "Označit tuto verzi pro překlad",
@@ -32,7 +31,6 @@
"tpt-oldrevision": "$2 není nejnovější verze stránky [[:$1]].\nPro překlad je možné označit pouze nejnovější verze.",
"tpt-notsuitable": "Stránka $1 není vhodná pro překlad.\nUjistěte se, že obsahuje značky <code><nowiki><translate></nowiki></code> a má platnou syntaxi.",
"tpt-saveok": "Stránka [[:$1]] byla označena pro překlad {{PLURAL:$2|s $2 částí překladu|se $2 částmi překladu|s $2 částmi překladu}}.\nTato stránka může být nyní <span class=\"plainlinks\">[$3 přeložena]</span>.",
- "tpt-badsect": "„$1“ není platný název části překladu $2.",
"tpt-showpage-intro": "Níže jsou uvedeny nové, současné a smazané části.\nNež tuto verzi označíte pro překlad, zkontrolujte, že změny částí jsou minimální, abyste zabránili zbytečné práci překladatelů.",
"tpt-mark-summary": "Tato verze je označená pro překlad",
"tpt-edit-failed": "Nelze aktualizovat stránku: $1",
@@ -64,6 +62,7 @@
"translate-tag-markthisagain": "Tato stránka byla <span class=\"plainlinks\">[$1 změněna]</span> od posledního <span class=\"plainlinks\">[$2 označení pro překlad]</span>.",
"translate-tag-hasnew": "Tato stránka obsahuje <span class=\"plainlinks\">[$1 změny]</span>, které nebyly označeny pro překlad.",
"tpt-translation-intro": "Toto je <span class=\"plainlinks\">[$1 přeložená verze]</span> stránky [[$2]], překlad je hotový z $3 %.",
+ "tpt-translation-intro-fuzzy": "Takto jsou označeny zastaralé části překladu.",
"tpt-languages-legend": "Jiné jazyky:",
"tpt-languages-zero": "Začít překlad do tohoto jazyka",
"tpt-languages-nonzero": "$1 ({{PLURAL:$2|přeloženo|přeložena|přeloženo}} $2 %)",
@@ -80,16 +79,20 @@
"tpt-discouraged-language-reason": "Zdůvodnění: $1",
"tpt-priority-languages": "Správce překladů nastavil prioritní jazyky pro tuto skupinu na $1.",
"tpt-render-summary": "Stránka aktualizována, aby odpovídala nové verzi zdrojové stránky",
- "tpt-download-page": "Exportovat stránky s překlady",
"tpt-aggregategroup-add": "Přidat",
"tpt-aggregategroup-save": "Uložit",
"tpt-aggregategroup-new-name": "Jméno:",
"tpt-aggregategroup-new-description": "Popis (nepovinné):",
"tpt-aggregategroup-invalid-group": "Skupina neexistuje",
+ "tpt-aggregategroup-edit-name": "Jméno:",
+ "tpt-aggregategroup-edit-description": "Popis:",
+ "tpt-aggregategroup-update": "Uložit",
+ "tpt-aggregategroup-update-cancel": "Storno",
+ "tpt-invalid-group": "Neplatná skupina",
"log-description-pagetranslation": "Protokol úkonů souvisejících se systémem překladu stránek",
"log-name-pagetranslation": "Kniha překladů stránek",
"logentry-pagetranslation-mark": "$1 {{GENDER:$2|označil|označila}} stránku $3 k překladu",
- "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|vyjmul|vyjmula}} stránku $3 z překládání",
+ "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|vyjmul|vyjmula}} stránku $3 ze systému překládání",
"pt-movepage-list-pages": "Seznam stránek k přesunutí",
"pt-movepage-list-translation": "Překlad {{PLURAL:$1|stránky|stránek}}",
"pt-movepage-list-section": "{{PLURAL:$1|Stránka s částí překladu|Stránky s částmi překladu}}",
@@ -116,16 +119,20 @@
"pm-import-button-label": "Importovat",
"pm-savepages-button-label": "Uložit",
"pm-cancel-button-label": "Storno",
- "pm-pagename-placeholder": "Zadejte název stránky",
- "pm-langcode-placeholder": "Kód jazyka",
"pm-page-does-not-exist": "Stránka $1 neexistuje",
"pm-old-translations-missing": "Stránka $1 neobsahuje staré překlady",
"pm-extra-units-warning": "Mohou existovat přebytečné části překladu. Zarovnejte prosím správně zdrojové a cílové části",
"pm-pagename-missing": "Zadejte prosím název stránky",
- "pm-langcode-missing": "Zadejte prosím kód jazyka",
"pm-add-icon-hover-text": "Přidat část níže",
"pm-swap-icon-hover-text": "Prohodit s částí níže",
"pm-delete-icon-hover-text": "Smazat položku",
+ "pm-langcode-missing": "Zadejte prosím kód jazyka",
"tpt-translate-title": "Umožnit překlad názvu stránky",
- "pp-pagename-missing": "Zadejte prosím název stránky."
+ "pp-prepare-button-label": "Připravit",
+ "pp-save-button-label": "Uložit",
+ "pp-cancel-button-label": "Storno",
+ "pp-pagename-missing": "Zadejte prosím název stránky.",
+ "pp-diff-old-header": "Zdrojový text",
+ "tpt-generic-confirm": "Prosím potvrďte akci.",
+ "tpt-generic-button": "Potvrdit"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/cy.json b/MLEB/Translate/i18n/pagetranslation/cy.json
index 60ce9b0a..8211f8a8 100644
--- a/MLEB/Translate/i18n/pagetranslation/cy.json
+++ b/MLEB/Translate/i18n/pagetranslation/cy.json
@@ -10,8 +10,6 @@
"pagetranslation": "Cyfieithu tudalen",
"tpt-section": "Adran gyfieithu rhif $1",
"tpt-section-deleted": "Adran gyfieithu rhif $1",
- "tpt-template": "Nodyn y dudalen",
- "tpt-templatediff": "Newidiwyd nodyn y dudalen.",
"tpt-diff-old": "Y testun cynt",
"tpt-diff-new": "Y testun newydd",
"tpt-submit": "Marcio'r diwygiad hwn i'w gyfieithu",
diff --git a/MLEB/Translate/i18n/pagetranslation/da.json b/MLEB/Translate/i18n/pagetranslation/da.json
index 9b3e9a76..03024366 100644
--- a/MLEB/Translate/i18n/pagetranslation/da.json
+++ b/MLEB/Translate/i18n/pagetranslation/da.json
@@ -6,18 +6,16 @@
"Emilkris33",
"Kaare",
"Peter Alberti",
- "Purodha"
+ "Purodha",
+ "Saederup92"
]
},
"pagetranslation": "Sideoversættelse",
"right-pagetranslation": "Markere versioner af sider for oversættelse",
"action-pagetranslation": "håndter oversætbare sider",
- "tpt-desc": "Udvidelse til oversættelse af indholdssider",
"tpt-section": "Oversættelsesenhed $1",
"tpt-section-new": "Ny oversættelsesenhed.\nNavn: $1",
"tpt-section-deleted": "Oversættelsesenhed $1",
- "tpt-template": "Sideskabelon",
- "tpt-templatediff": "Sideskabelonen er blevet ændret.",
"tpt-diff-old": "Forrige tekst",
"tpt-diff-new": "Ny tekst",
"tpt-submit": "Markér denne version for oversættelse",
@@ -31,7 +29,6 @@
"tpt-notsuitable": "Siden $1 er ikke parat til oversættelse.\nSørg for at den har <nowiki><translate></nowiki>-tags og en gyldig syntaks.",
"tpt-saveok": "Siden [[:$1]] er blevet markeret til oversættelse med $2 {{PLURAL:$2|oversættelsesenhed|oversættelsesenheder}}.\nSiden kan nu <span class=\"plainlinks\">[$3 oversættes]</span>.",
"tpt-offer-notify": "Du kan <span class=\"plainlinks\">[$1 underrette oversættere]</span> om denne side.",
- "tpt-badsect": "\"$1\" er ikke et gyldig navn for oversættelsesenhed $2.",
"tpt-showpage-intro": "Herunder listes der nye, eksisterende og slettede oversættelsesenheder.\nFør denne version markeres til oversættelse, skal du kontrollere, at ændringerne i oversættelsesenhederne er minimeret for at undgå at give oversætterne unødigt arbejde.",
"tpt-mark-summary": "Markerede denne version for oversættelse",
"tpt-edit-failed": "Kunne ikke opdatere siden: $1",
@@ -64,6 +61,7 @@
"translate-tag-markthisagain": "Denne side er <span class=\"plainlinks\">[$1 ændret]</span> siden den sidst blev <span class=\"plainlinks\">[$2 markeret for oversættelse]</span>.",
"translate-tag-hasnew": "Denne side indeholder <span class=\"plainlinks\">[$1 ændringer]</span> som ikke er markeret for oversættelse.",
"tpt-translation-intro": "Denne side er en <span class=\"plainlinks\">[$1 oversat version]</span> af siden [[$2]], og oversættelsen er $3 % komplet.",
+ "tpt-translation-intro-fuzzy": "Forældede oversættelser er markeret sådan her.",
"tpt-languages-legend": "Andre sprog:",
"tpt-languages-zero": "Begynd på oversættelsen til dette sprog",
"tpt-languages-nonzero": "$1 ($2% oversat)",
@@ -71,12 +69,13 @@
"tpt-target-page": "Denne side kan ikke opdateres manuelt.\nSiden er en oversættelse af siden [[$1]] og oversættelsen kan opdateres ved at bruge [$2 oversættelsesværktøjet].",
"tpt-unknown-page": "Dette navnerum er reserveret til oversættelser af indholdssider.\nSiden som du prøver at redigere, ser ikke ud til at svare til nogen side markeret for oversættelse.",
"tpt-translation-restricted": "Oversættelse af denne side til dette sprog blev forhindret af en oversættelsesadministrator.\n\nÅrsag: $1",
+ "tpt-discouraged-language-force-header": "Denne side kan ikke oversættes til $1.",
+ "tpt-discouraged-language-header": "Oversættelser til $1 er ikke en prioritet for denne side.",
"tpt-discouraged-language-force": "<strong>Denne side kan ikke oversættes til $2.</strong>\n\nEn oversættelsesadministrator besluttede at denne side kun kan oversættes til $3.",
"tpt-discouraged-language": "<strong>Oversættelse til $2 er ikke en prioritet for denne side.</strong>\n\nEn oversættelsesadministrator besluttede at fokusere oversættelsesarbejdet på $3.",
"tpt-discouraged-language-reason": "Begrundelse: $1",
"tpt-priority-languages": "En oversættelsesadministrator har sat prioritetssprogene for denne gruppe til $1.",
"tpt-render-summary": "Opdaterer for at passe til en ny version af kildesiden",
- "tpt-download-page": "Eksportér side med oversættelser",
"aggregategroups": "Samlegrupper",
"tpt-aggregategroup-add": "Tilføj",
"tpt-aggregategroup-save": "Gem",
@@ -85,6 +84,11 @@
"tpt-aggregategroup-new-description": "Beskrivelse (valgfri):",
"tpt-aggregategroup-remove-confirm": "Er du sikker på, at du vil slette denne samlegruppe?",
"tpt-aggregategroup-invalid-group": "Gruppen findes ikke",
+ "tpt-aggregategroup-edit-name": "Navn:",
+ "tpt-aggregategroup-edit-description": "Beskrivelse:",
+ "tpt-aggregategroup-update": "Gem",
+ "tpt-aggregategroup-update-cancel": "Annullér",
+ "tpt-invalid-group": "Ugyldig gruppe",
"pt-parse-open": "Ubalanceret &lt;translate> tag.\nOversættelse skabelon: <pre>$1</pre>",
"pt-parse-close": "Ubalanceret &lt;/translate> tag.\nOversættelse skabelon: <pre>$1</pre>",
"pt-parse-nested": "Indlejrede &lt;translate>-oversættelsesenheder er ikke tilladt.\nTagtekst: <pre>$1</pre>",
@@ -94,7 +98,7 @@
"log-description-pagetranslation": "Log for handlinger i forbindelse med side oversættelses systemet",
"log-name-pagetranslation": "Sideoversættelseslog",
"logentry-pagetranslation-mark": "$1 {{GENDER:$2|markerede}} $3 til oversættelse",
- "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|fjernede}} $3 fra oversættelse",
+ "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|fjernede}} $3 fra oversættersystem",
"logentry-pagetranslation-moveok": "$1 {{GENDER:$2|afsluttede}} omdøbning af den oversætbare side $3 til $4",
"logentry-pagetranslation-movenok": "$1 {{GENDER:$2|stødte på}} et problem under flytning af siden $3 til $4",
"logentry-pagetranslation-deletefok": "$1 {{GENDER:$2|afsluttede}} sletning af den oversætbare side $3",
@@ -108,6 +112,10 @@
"logentry-pagetranslation-prioritylanguages-force": "$1 {{GENDER:$2|begrænsede}} sprogene for den oversætbare side $3 til $5",
"logentry-pagetranslation-associate": "$1 {{GENDER:$2|tilføjede}} den oversætbare side $3 til den samlede gruppe $4",
"logentry-pagetranslation-dissociate": "$1 {{GENDER:$2|fjernede}} den oversætbare side $3 fra den samlede gruppe $4",
+ "log-action-filter-pagetranslation": "Handlingtype:",
+ "log-action-filter-pagetranslation-mark": "Mærk for oversættelse",
+ "log-action-filter-pagetranslation-move": "Sideflytninger",
+ "log-action-filter-pagetranslation-delete": "Sidesletninger",
"pt-movepage-title": "Flyt oversætbare side $1",
"pt-movepage-blockers": "Den oversætbare side kan ikke flyttes til et nyt navn på grund af følgende {{PLURAL:$1|fejl|fejl}}:",
"pt-movepage-block-base-exists": "Den oversætbare målside \"[[:$1]]\" findes.",
@@ -132,11 +140,11 @@
"pt-movepage-action-perform": "Gennemfør flytningen",
"pt-movepage-action-other": "Skift mål",
"pt-movepage-intro": "Denne speciale side tillader dig at flytte sider, der er markeret til oversættelse.\nFlytningen vil ikke være øjeblikkelig, fordi mange sider skal flyttes.\nMens siderne bliver flyttet, er det ikke muligt at interagere med de omtalte sider.\nFejl vil blive logget på [[Special:Log/pagetranslation|sideoversættelsesloggen]], og de skal repareres manuelt.",
- "pt-movepage-logreason": "Del af oversætbar side $1.",
+ "pt-movepage-logreason": "Del af oversætbar side \"$1\"",
"pt-movepage-started": "Base siden er nu flyttet.\nHusk at tjekke [[Special:Log/pagetranslation|siden oversættelsen log]] for fejl og færdiggørelses besked.",
"pt-locked-page": "Denne side er låst, fordi den oversætbare side, der aktuelt er ved at blive flyttet.",
- "pt-deletepage-lang-title": "Sletter oversættelses side $1.",
- "pt-deletepage-full-title": "Sletter oversætbar side $1.",
+ "pt-deletepage-lang-title": "Sletter oversættelses side \"$1\"",
+ "pt-deletepage-full-title": "Sletter oversætbar side \"$1\"",
"pt-deletepage-invalid-title": "Den angivne side er ikke gyldig.",
"pt-deletepage-invalid-text": "Den angivne side er ikke en oversætbar side eller en oversættelsesside.",
"pt-deletepage-action-check": "List sider der skal slettes",
@@ -153,8 +161,25 @@
"pt-deletepage-list-section": "Oversættelsesenhedssider",
"pt-deletepage-list-other": "Andre undersider",
"pt-deletepage-list-count": "I alt $1 {{PLURAL:$1|side|sider}} til at slette.",
- "pt-deletepage-full-logreason": "Del af oversætbar side $1.",
- "pt-deletepage-lang-logreason": "En del af oversættelses side $1 .",
+ "pt-deletepage-full-logreason": "Del af oversætbar side \"$1\"",
+ "pt-deletepage-lang-logreason": "En del af oversættelses side \"$1\"",
"pt-deletepage-started": "Tjek venligst [[Special:Log/pagetranslation|side oversættelses log]] for fejl og færdiggørelses besked.",
- "pt-deletepage-intro": "Med denne specielle side kan du slette en hel oversætbar side eller en individuel oversættelsesside.\nSletningen vil ikke ske med det samme, fordi mange afhængige sider også vil blive slettet.\nFejl vil blive registreret i [[Special:Log/pagetranslation|side oversættelses log]], og de skal repareres i manuelt."
+ "pt-deletepage-intro": "Med denne specielle side kan du slette en hel oversætbar side eller en individuel oversættelsesside.\nSletningen vil ikke ske med det samme, fordi mange afhængige sider også vil blive slettet.\nFejl vil blive registreret i [[Special:Log/pagetranslation|side oversættelses log]], og de skal repareres i manuelt.",
+ "pm-import-button-label": "Importer",
+ "pm-savepages-button-label": "Gem",
+ "pm-cancel-button-label": "Annullér",
+ "pm-page-does-not-exist": "$1 findes ikke.",
+ "pm-old-translations-missing": "$1 indeholder ingen gamle oversættelser.",
+ "pm-delete-icon-hover-text": "Slet enhed",
+ "pm-pagetitle-placeholder": "Indtast sidetitlen",
+ "tpt-translate-title": "Tillad oversættelse af sidetitlen",
+ "pp-pagename-placeholder": "Indtast sidenavnet",
+ "pp-prepare-button-label": "Forbered",
+ "pp-save-button-label": "Gem",
+ "pp-cancel-button-label": "Annullér",
+ "pp-diff-old-header": "Kildetekst",
+ "pp-diff-new-header": "Forberedt tekst",
+ "tpt-unlink-button": "Fjern fra oversættelse",
+ "tpt-unlink-summary": "Fjernede siden fra oversættelse.",
+ "tpt-generic-button": "Bekræft"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/de.json b/MLEB/Translate/i18n/pagetranslation/de.json
index 8c7c0987..b5bed164 100644
--- a/MLEB/Translate/i18n/pagetranslation/de.json
+++ b/MLEB/Translate/i18n/pagetranslation/de.json
@@ -18,12 +18,9 @@
"pagetranslation": "Seiten übersetzen",
"right-pagetranslation": "Seitenversionen zur Übersetzung freigeben",
"action-pagetranslation": "übersetzbare Seiten zu verwalten",
- "tpt-desc": "Ermöglicht das Übersetzen von Inhaltsseiten",
"tpt-section": "Übersetzungseinheit $1",
"tpt-section-new": "Neue Übersetzungseinheit. Name: $1",
"tpt-section-deleted": "Übersetzungseinheit $1",
- "tpt-template": "Seitenvorlage",
- "tpt-templatediff": "Die Seitenvorlage hat sich geändert.",
"tpt-diff-old": "Vorheriger Text",
"tpt-diff-new": "Neuer Text",
"tpt-submit": "Diese Version zur Übersetzung freigeben",
@@ -37,10 +34,9 @@
"tpt-notsuitable": "Die Seite $1 ist nicht zum Übersetzen geeignet.\nStelle sicher, dass ein <nowiki><translate></nowiki>-Tag und gültige Syntax verwendet wird.",
"tpt-saveok": "Die Seite [[:$1]] wurde mit {{PLURAL:$2|einem übersetzbaren Abschnitt|$2 übersetzbaren Abschnitten}} zur Übersetzung freigegeben.\nDiese Seite kann nun <span class=\"plainlinks\">[$3 übersetzt]</span> werden.",
"tpt-offer-notify": "Du kannst über diese Seite <span class=\"plainlinks\">[$1 Übersetzer benachrichtigen]</span>.",
- "tpt-badsect": "„$1“ ist kein gültiger Name für Übersetzungseinheit $2.",
"tpt-showpage-intro": "Untenstehend sind neue, vorhandene und gelöschte Übersetzungseinheiten aufgelistet.\nBevor du diese Version zur Übersetzung freigibst, stelle bitte sicher, dass die Änderungen an den Übersetzungseinheiten minimal sind. Damit verhinderst du unnötige Arbeit für die Übersetzer.",
"tpt-mark-summary": "Diese Seite wurde zum Übersetzen freigegeben",
- "tpt-mark-nochanges": "Es gibt keinen Unterschied zwischen dieser Version und der zuletzt markierten Version.",
+ "tpt-mark-nochanges": "Es gibt keine Änderungen zum Überprüfen. Das Markieren dieser Seite zur Übersetzung wird weder die Seite noch eine vorhandene Übersetzungseinheit bearbeiten.",
"tpt-edit-failed": "Seite kann nicht aktualisiert werden: $1",
"tpt-duplicate": "Der Übersetzungseinheitname $1 wird mehr als einmal verwendet.",
"tpt-already-marked": "Die letzte Version dieser Seite wurde bereits zum Übersetzen freigegeben.",
@@ -71,9 +67,10 @@
"translate-tag-markthisagain": "Diese Seite wurde <span class=\"plainlinks\">[$1 bearbeitet]</span>, nachdem sie zuletzt <span class=\"plainlinks\">[$2 zur Übersetzung freigegeben]</span> wurde.",
"translate-tag-hasnew": "Diese Seite enthält <span class=\"plainlinks\">[$1 Bearbeitungen]</span>, die nicht zum Übersetzen freigegeben sind.",
"tpt-translation-intro": "Diese Seite ist eine <span class=\"plainlinks\">[$1 übersetzte Version]</span> der Seite [[$2]] und die Übersetzung ist zu $3 % abgeschlossen sowie aktuell.",
+ "tpt-translation-intro-fuzzy": "Veraltete Übersetzungen werden wie dieser Text markiert.",
"tpt-languages-legend": "Sprachen:",
"tpt-languages-zero": "Mit dem Übersetzen in diese Sprache anfangen",
- "tpt-languages-nonzero": "$1 ($2% übersetzt)",
+ "tpt-languages-nonzero": "$1 ($2 % übersetzt)",
"tpt-tab-translate": "Übersetzen",
"tpt-target-page": "Diese Seite kann nicht manuell aktualisiert werden.\nDiese Seite ist eine Übersetzung der Seite [[$1]] und die Übersetzung kann mithilfe des [$2 Übersetzungswerkzeuges] aktualisiert werden.",
"tpt-patrolling-blocked": "Diese Seite kann nicht kontrolliert werden. Verwende zur Überprüfung stattdessen die Übersetzungsaktion.",
@@ -88,7 +85,6 @@
"tpt-discouraged-language-reason": "Grund: $1",
"tpt-priority-languages": "Ein Übersetzungsadministrator hat die priorisierte Sprachen für diese Nachrichtengruppe auf $1 festgelegt.",
"tpt-render-summary": "Übernehme Bearbeitung einer neuen Version der Quellseite",
- "tpt-download-page": "Seite mit Übersetzungen exportieren",
"aggregategroups": "Zusammenfassende Nachrichtengruppen",
"tpt-aggregategroup-add": "Hinzufügen",
"tpt-aggregategroup-save": "Speichern",
@@ -125,6 +121,15 @@
"logentry-pagetranslation-prioritylanguages-force": "$1 {{GENDER:$2|begrenzte}} die Sprachen für die übersetzbare Seite $3 auf $5",
"logentry-pagetranslation-associate": "$1 {{GENDER:$2|fügte}} die übersetzbare Seite $3 zur zusammenfassenden Gruppe „$4“ hinzu",
"logentry-pagetranslation-dissociate": "$1 {{GENDER:$2|entfernte}} die übersetzbare Seite $3 von der zusammengefassten Gruppe $4",
+ "log-action-filter-pagetranslation": "Typ der Aktion:",
+ "log-action-filter-pagetranslation-mark": "Zur Übersetzung markiert",
+ "log-action-filter-pagetranslation-unmark": "Von der Übersetzung entfernt",
+ "log-action-filter-pagetranslation-move": "Seitenverschiebungen",
+ "log-action-filter-pagetranslation-delete": "Seitenlöschungen",
+ "log-action-filter-pagetranslation-encourage": "Ermutigung zur Übersetzung",
+ "log-action-filter-pagetranslation-discourage": "Entmutigung zur Übersetzung",
+ "log-action-filter-pagetranslation-prioritylanguages": "Veränderung der priorisierten Sprachen",
+ "log-action-filter-pagetranslation-aggregategroups": "Veränderung der zusammengefassten Gruppen",
"pt-movepage-title": "Die Übersetzungsseite $1 verschieben",
"pt-movepage-blockers": "Die zum Übersetzen vorgesehene Seite konnte aufgrund {{PLURAL:$1|folgendes Fehlers|folgender Fehler}} nicht zur neuen Bezeichnung verschoben werden:",
"pt-movepage-block-base-exists": "Die übersetzbare Zielseite „[[:$1]]“ existiert bereits.",
@@ -149,11 +154,11 @@
"pt-movepage-action-perform": "Verschiebung durchführen",
"pt-movepage-action-other": "Ziel ändern",
"pt-movepage-intro": "Diese Spezialseite ermöglicht es Seiten zu verschieben, die zur Übersetzung gekennzeichnet wurden.\nDie Verschiebung wird nicht unverzüglich erfolgen, da dabei viele Seiten zu verschieben sind.\nWährend des Verschiebevorgangs ist es nicht möglich, die entsprechenden Seiten zu nutzen.\nVerschiebefehler werden im [[Special:Log/pagetranslation|Übersetzungs-Logbuch]] aufgezeichnet und müssen manuell korrigiert werden.",
- "pt-movepage-logreason": "Teil der übersetzbaren Seite $1.",
- "pt-movepage-started": "Die Basisseite wurde nunmehr verschoben.\nBitte prüfe das [[Special:Log/pagetranslation|Übersetzungs-Logbuch]] auf Fehlermeldungen, bzw. die Vollzugsnachricht.",
+ "pt-movepage-logreason": "Teil der übersetzbaren Seite „$1“",
+ "pt-movepage-started": "Bitte überprüfe kurz das [[Special:Log/pagetranslation|Seitenübersetzungs-Logbuch]] auf Fehler und die Vollzugsnachricht.",
"pt-locked-page": "Diese Seite ist gesperrt, da die Übersetzungsseite momentan verschoben wird.",
- "pt-deletepage-lang-title": "Löschen der übersetzten Seite $1.",
- "pt-deletepage-full-title": "Löschen der übersetzbaren Seite $1.",
+ "pt-deletepage-lang-title": "Löschen der übersetzten Seite „$1“",
+ "pt-deletepage-full-title": "Löschen der übersetzbaren Seite „$1“",
"pt-deletepage-invalid-title": "Die angegebene Seite ist ungültig.",
"pt-deletepage-invalid-text": "Die angegebene Seite ist weder eine übersetzbare Seite noch eine Übersetzungsseite.",
"pt-deletepage-action-check": "Zu löschende Seiten auflisten",
@@ -170,8 +175,8 @@
"pt-deletepage-list-section": "Seiten der Übersetzungseinheiten",
"pt-deletepage-list-other": "Weitere Unterseiten",
"pt-deletepage-list-count": "Insgesamt gibt es $1 zu löschende {{PLURAL:$1|Seite|Seiten}}.",
- "pt-deletepage-full-logreason": "Teil der übersetzbaren Seite $1.",
- "pt-deletepage-lang-logreason": "Teil der übersetzten Seite $1.",
+ "pt-deletepage-full-logreason": "Teil der übersetzbaren Seite „$1“",
+ "pt-deletepage-lang-logreason": "Teil der übersetzbaren Seite „$1“",
"pt-deletepage-started": "Bitte das [[Special:Log/pagetranslation|Übersetzungs-Logbuch]] nach Fehlern und Ausführungsnachrichten prüfen.",
"pt-deletepage-intro": "Diese Spezialseite ermöglicht die Löschung einer ganzen übersetzbaren Seite oder einer individuellen Übersetzungsseite in einer Sprache.\nDie Ausführung erfolgt nicht unmittelbar, da auch alle dazugehörigen Seiten gelöscht werden.\nFehler werden im [[Special:Log/pagetranslation|Übersetzungs-Logbuch]] aufgezeichnet und müssen nachträglich manuell berichtigt werden.",
"pagemigration": "Übersetzungsseitenmigration",
@@ -179,18 +184,20 @@
"pm-import-button-label": "Importieren",
"pm-savepages-button-label": "Speichern",
"pm-cancel-button-label": "Abbrechen",
- "pm-pagename-placeholder": "Seitennamen eingeben",
- "pm-langcode-placeholder": "Sprachcode",
"pm-page-does-not-exist": "$1 ist nicht vorhanden",
"pm-old-translations-missing": "$1 enthält keine alten Übersetzungen",
"pm-extra-units-warning": "Es könnten zusätzliche Einheiten verfügbar sein. Bitte die Quell- und Übersetzungseinheiten ordnungsgemäß anpassen.",
"pm-pagename-missing": "Bitte den Seitennamen eingeben",
- "pm-langcode-missing": "Bitte den Sprachcode eingeben",
"pm-add-icon-hover-text": "Unten eine Einheit hinzufügen",
"pm-swap-icon-hover-text": "Mit der unteren Einheit tauschen",
"pm-delete-icon-hover-text": "Einheit löschen",
- "pm-pagetitle-invalid": "Bitte einen gültigen Seitentitel eingeben",
+ "pm-pagetitle-placeholder": "Gib den Seitentitel ein",
+ "pm-pagetitle-invalid": "Bitte einen gültigen Seitentitel eingeben. Dieser sollte im Format <Seitenname>/<Sprachcode> sein.",
+ "pm-pagetitle-missing": "Bitte gib den Seitentitel ein.",
+ "pm-langcode-missing": "Es scheint, als ob der Sprachcode im Titel fehlt. Bitte gib den Seitentitel im Format <Seitenname>/<Sprachcode> ein.",
"pm-summary-import": "Übersetzung importiert mithilfe der [[Special:PageMigration|Seitenmigration]]",
+ "pm-on-import-message-text": "Die alten Übersetzungen wurden importiert. Verwende die Hinzufügungs-, Tausch- und Löschoptionen, um die Übersetzungseinheiten anzupassen und klicke auf die Schaltfläche „{{int:pm-savepages-button-label}}“, um sie zu speichern oder zum Verwerfen auf die Schaltfläche „{{int:pm-cancel-button-label}}“.",
+ "pm-on-save-message-text": "Die Übersetzungseinheiten wurden gespeichert. Du kannst jetzt zur Migration den Titel einer neuen Übersetzungsseite eingeben oder unten Änderungen an den Einheiten durchführen und eine neue Version speichern.",
"tpt-translate-title": "Übersetzung eines Seitentitels erlauben",
"pp-save-summary": "Bereitete die Seite zur Übersetzung vor",
"pagepreparation": "Seite zur Übersetzung vorbereiten",
@@ -206,5 +213,7 @@
"pp-diff-new-header": "Vorbereiteter Text",
"tpt-unlink-confirm": "Bitte bestätige, dass du wirklich diese Seite aus dem Übersetzungssystem entfernen möchtest.\nDie Sprachauswahl und übersetzte Seitennamen hören auf zu funktionieren.\nDie Übersetzungsseiten werden bearbeitbar.",
"tpt-unlink-button": "Von der Übersetzung entfernen",
- "tpt-unlink-summary": "Seite von der Übersetzung entfernt"
+ "tpt-unlink-summary": "Seite von der Übersetzung entfernt",
+ "tpt-generic-confirm": "Bitte bestätige die Aktion.",
+ "tpt-generic-button": "Bestätigen"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/diq.json b/MLEB/Translate/i18n/pagetranslation/diq.json
index e7968946..8078a4bf 100644
--- a/MLEB/Translate/i18n/pagetranslation/diq.json
+++ b/MLEB/Translate/i18n/pagetranslation/diq.json
@@ -2,14 +2,16 @@
"@metadata": {
"authors": [
"Erdemaslancan",
- "Mirzali"
+ "Mirzali",
+ "Marmase",
+ "Kumkumuk",
+ "Asmen"
]
},
- "pagetranslation": "Pela açarnayışi",
+ "pagetranslation": "Çarnayışê riperri",
"tpt-section": "Yewronê açarnayışê $1",
"tpt-section-new": "Yewena Açarnayış de newan.\nName: $1",
"tpt-section-deleted": "Yewronê açarnayışê $1",
- "tpt-template": "Pela şabloni",
"tpt-diff-old": "Metno verên",
"tpt-diff-new": "Metno newe",
"tpt-old-pages-title": "Pela açarnayışi",
@@ -24,6 +26,12 @@
"tpt-aggregategroup-add": "Cı ke",
"tpt-aggregategroup-save": "Qeyd ke",
"tpt-aggregategroup-new-name": "Name:",
+ "tpt-aggregategroup-edit-name": "Name:",
+ "tpt-aggregategroup-edit-description": "Şınasiyen:",
+ "tpt-aggregategroup-update": "Qeyd ke",
+ "tpt-aggregategroup-update-cancel": "Bıtexelne",
+ "tpt-invalid-group": "Nêraverdi grub",
+ "log-name-pagetranslation": "Qeydê açarnayışê pele",
"pt-movepage-list-translation": "{{PLURAL:$1|Pera|Perê}} açarnayışi",
"pt-movepage-list-other": "{{PLURAL:$1|Pera bin|Perê bini}}",
"pt-movepage-current": "Nameyo raverde:",
@@ -34,6 +42,8 @@
"pt-deletepage-reason": "Sebeb:",
"pt-deletepage-list-translation": "Pelê açarnayışi",
"pt-deletepage-list-other": "Bınpelê bini",
+ "pm-cancel-button-label": "Bıtexelne",
"pp-save-button-label": "Qeyd ke",
+ "pp-cancel-button-label": "Bıtexelne",
"pp-diff-old-header": "Metnê çımey"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/dsb.json b/MLEB/Translate/i18n/pagetranslation/dsb.json
index 38a256e3..4b3a8962 100644
--- a/MLEB/Translate/i18n/pagetranslation/dsb.json
+++ b/MLEB/Translate/i18n/pagetranslation/dsb.json
@@ -7,12 +7,9 @@
"pagetranslation": "Pśełožowanje bokow",
"right-pagetranslation": "Wersije bokow za pśełožowanje markěrowaś",
"action-pagetranslation": "pśełožujobne boki zastojaś",
- "tpt-desc": "Rozšyrjenje za pśełožowanje wopśimjeśowych bokow",
"tpt-section": "Pśełožowańska jadnotka $1",
"tpt-section-new": "Nowa pśełožowańska jadnotka. Mě: $1",
"tpt-section-deleted": "Pśełožowańska jadnotka $1",
- "tpt-template": "Bokowa pśedłoga",
- "tpt-templatediff": "Bokowa pśedłoga jo se změniła.",
"tpt-diff-old": "Pśedchadny tekst",
"tpt-diff-new": "Nowy tekst",
"tpt-submit": "Toś tu wersiju za pśełožowanje markěrowaś",
@@ -26,7 +23,6 @@
"tpt-notsuitable": "Bok $1 njejo gódny za pśełožowanje.\nZawěsć, až ma toflicki <nowiki><translate></nowiki> a płaśiwu syntaksu.",
"tpt-saveok": "Bok [[:$1]] jo se markěrował za pśełožowanje z $2 {{PLURAL:$2|pśełožujobneju jadnotku|pśełožujobnyma jadnotkoma|pśełožujobnymi jadnotkami|pśełožujobnymi jadnotkami}}. Bok móže se něnto <span class=\"plainlinks\">[$3 pśełožowaś]</span>.",
"tpt-offer-notify": "Móžoš wó toś tom boku <span class=\"plainlinks\">[$1 pśełožowarjow informěrowaś]</span>.",
- "tpt-badsect": "\"$1\" njejo płaśiwe mě za pśełožowańsku jadnotku $2.",
"tpt-showpage-intro": "Dołojce su nowe, eksistěrujuce a wulašowane pśełožowańske jadnotki nalicone.\nNježli až markěrujoš toś tu wersiju za pśełožowanje, pśekontrolěruj, lěc změny na pśełožowańskich jadnotkach su zminiměrowane, aby se wobinuł njetrěbne źěło za pśełožowarjow.",
"tpt-mark-summary": "Jo toś tu wersiju za pśełožowanje markěrował",
"tpt-edit-failed": "Toś ten bok njejo se dał aktualizěrowaś: $1",
@@ -59,6 +55,7 @@
"translate-tag-markthisagain": "Toś ten bok ma <span class=\"plainlinks\">[$1 {{PLURAL:$1|změnu|změnje|změny|změnow}}]</span>, wót togo casa, ako jo se slědny raz <span class=\"plainlinks\">[$2 za pśełožowanje markěrował]</span>.",
"translate-tag-hasnew": "Toś ten bok wopśimujo <span class=\"plainlinks\">[$1 {{PLURAL:$1|změnu, kótaraž njejo markěrowana|změnje, kótarejž njejstej markěrowanej|změny, kótare njejsu markěrowane|změnow, kótarež njejsu markěrowane}}]</span> za pśełožowanje.",
"tpt-translation-intro": "Toś ten bok jo <span class=\"plainlinks\">[$1 pśełožona wersija]</span> boka [[$2]] a $3 % pśełožka jo dogótowane a pśełožk jo aktualny.",
+ "tpt-translation-intro-fuzzy": "Zestarjone pśełožki su kaž toś ten markěrowany.",
"tpt-languages-legend": "Druge rěcy:",
"tpt-languages-zero": "Pśełožowanje za toś tu rěc zachopiś",
"tpt-tab-translate": "Pśełožyś",
@@ -70,7 +67,6 @@
"tpt-discouraged-language-reason": "Pśicyna: $1",
"tpt-priority-languages": "Pśełožowański administrator jo primarne rěcy za toś tu kupku ako $1 nastajił.",
"tpt-render-summary": "Aktualizacija pó nowej wersiji žrědłowego boka",
- "tpt-download-page": "Bok z pśełožkami eksportěrowaś",
"aggregategroups": "Metakupki",
"tpt-aggregategroup-add": "Pśidaś",
"tpt-aggregategroup-save": "Składowaś",
diff --git a/MLEB/Translate/i18n/pagetranslation/el.json b/MLEB/Translate/i18n/pagetranslation/el.json
index 4c3dc1be..e2a68b87 100644
--- a/MLEB/Translate/i18n/pagetranslation/el.json
+++ b/MLEB/Translate/i18n/pagetranslation/el.json
@@ -8,18 +8,16 @@
"Protnet",
"ZaDiak",
"Geraki",
- "Evropi"
+ "Evropi",
+ "Nikosgranturismogt"
]
},
"pagetranslation": "Μετάφραση σελίδων",
"right-pagetranslation": "Σήμανση εκδόσεων σελίδων προς μετάφραση",
"action-pagetranslation": "διαχειριστείτε σελίδες προς μετάφραση",
- "tpt-desc": "Επέκταση για μετάφραση σελίδων περιεχομένου",
"tpt-section": "Μεταφραστική ενότητα $1",
"tpt-section-new": "Νέα μεταφραστική ενότητα.\nΌνομα: $1",
"tpt-section-deleted": "Μεταφραστική ενότητα $1",
- "tpt-template": "Πρότυπο σελίδας",
- "tpt-templatediff": "Το πρότυπο σελίδας έχει αλλάξει.",
"tpt-diff-old": "Προηγούμενο κείμενο",
"tpt-diff-new": "Νέο κείμενο",
"tpt-submit": "Σήμανση αυτής της έκδοσης για μετάφραση",
@@ -33,9 +31,9 @@
"tpt-notsuitable": "Η σελίδα $1 δεν είναι κατάλληλη για μετάφραση.\nΒεβαιωθείτε ότι έχει τις ετικέτες <nowiki><translate></nowiki> και έχει έγκυρη σύνταξη.",
"tpt-saveok": "Η σελίδα [[:$1]] έχει σημανθεί για μετάφραση με $2 {{PLURAL:$2|μεταφραστική ενότητα|μεταφραστικές ενότητες}}.\nΗ σελίδα μπορεί τώρα να <span class=\"plainlinks\">[$3 μεταφραστεί]</span>.",
"tpt-offer-notify": "Μπορείτε να <span class=\"plainlinks\">[$1 στείλετε ειδοποίηση στους μεταφραστές]</span> για αυτήν τη σελίδα.",
- "tpt-badsect": "Το «$1» δεν είναι έγκυρο όνομα για τη μονάδα μετάφρασης $2.",
"tpt-showpage-intro": "Παρακάτω παρατίθενται οι νέες, οι υφιστάμενες και οι διαγεγραμμένες μεταφραστικές ενότητες.\nΠροτού σημανθεί αυτή η έκδοση για μετάφραση, ελέγξτε ότι έχουν ελαχιστοποιηθεί οι αλλαγές στις μεταφραστικές ενότητες για την αποφυγή περιττής εργασίας από τους μεταφραστές.",
"tpt-mark-summary": "Αυτή η έκδοση σημάνθηκε για μετάφραση",
+ "tpt-mark-nochanges": "Δεν υπάρχουν αλλαγές προς θεώρηση. Η σήμανση αυτής τη σελίδα για μετάφραση δεν θα επεξεργαστεί τη σελίδα, ούτε οποιαδήποτε υπάρχουσα μεταφραστική μονάδα.",
"tpt-edit-failed": "Δεν ήταν δυνατό να ενημερωθεί η σελίδα: $1",
"tpt-duplicate": "Το όνομα μεταφραστικής ενότητας $1 χρησιμοποιείται περισσότερες από μία φορές.",
"tpt-already-marked": "Η τελευταία έκδοση της σελίδας έχει ήδη σημανθεί προς μετάφραση.",
@@ -66,19 +64,24 @@
"translate-tag-markthisagain": "Αυτή η σελίδα έχει <span class=\"plainlinks\">[$1 αλλαγές]</span> από την τελευταία φορά που είχε <span class=\"plainlinks\">[$2 σημανθεί για μετάφραση]</span>.",
"translate-tag-hasnew": "Αυτή η σελίδα περιέχει <span class=\"plainlinks\">[$1 αλλαγές]</span> που δεν έχουν σημανθεί για μετάφραση.",
"tpt-translation-intro": "Αυτή η σελίδα είναι μια <span class=\"plainlinks\">[$1 μεταφρασμένη έκδοση]</span> της σελίδας [[$2]] και η μετάφραση είναι $3% ολοκληρωμένη.",
+ "tpt-translation-intro-fuzzy": "Ξεπερασμένες μεταφράσεις σημειώνονται όπως αυτό.",
"tpt-languages-legend": "Άλλες γλώσσες:",
"tpt-languages-zero": "Έναρξη μετάφρασης για αυτήν τη γλώσσα",
"tpt-languages-nonzero": "$1 ($2% μεταφρασμένο)",
"tpt-tab-translate": "Μετάφραση",
"tpt-target-page": "Αυτή η σελίδα δεν μπορεί να ενημερωθεί με το χέρι.\nΑυτή η σελίδα είναι μετάφραση της σελίδας [[$1]] και η μετάφραση μπορεί να ενημερωθεί χρησιμοποιώντας [$2 το εργαλείο μετάφρασης].",
+ "tpt-patrolling-blocked": "Αυτή η σελίδα δεν μπορεί να σημανθεί ως ελεγμένη. Αντ' αυτού, χρησιμοποιήστε τη λειτουργία της μετάφρασης για να τη θεωρήσετε.",
"tpt-unknown-page": "Αυτός ο ονοματοχώρος προορίζεται για μεταφράσεις σελίδων περιεχομένου.\nΗ σελίδα που προσπαθείτε να επεξεργαστείτε δεν φαίνεται να αντιστοιχεί σε σελίδα με σήμανση για μετάφραση.",
"tpt-translation-restricted": "Η μετάφραση αυτής της σελίδας σε αυτήν τη γλώσσα έχει αποτραπεί από έναν διαχειριστή μετάφρασης.\n\nΑιτιολογία: $1",
- "tpt-discouraged-language-force": "«Αυτή η σελίδα δεν μπορεί να μεταφραστεί σε $2».\n\nΈνας διαχειριστής μετάφρασης έχει επιλέξει για αυτήν τη σελίδα να μπορεί να μεταφραστεί μόνο σε $3.",
- "tpt-discouraged-language": "«Η μετάφραση σε $2 δεν αποτελεί προτεραιότητα για αυτήν τη σελίδα».\n\nΈνας διαχειριστής μετάφρασης έχει επιλέξει να επικεντρωθούν όλες οι μεταφραστικές προσπάθειες στα $3.",
+ "tpt-discouraged-language-force-header": "Αυτή η σελίδα δεν μπορεί να μεταφραστεί σε $1.",
+ "tpt-discouraged-language-force-content": "Κάποιος διαχειριστής μετάφρασης αποφάσισε ότι αυτή τη σελίδα μπορεί να μεταφραστεί μόνο σε $1.",
+ "tpt-discouraged-language-header": "Η μετάφραση στα $1 δεν δεν αποτελεί προτεραιότητα για αυτήν τη σελίδα.",
+ "tpt-discouraged-language-content": "Κάποιος από τους διαχειριστές μετάφρασης έκρινε σκόπιμο να επικεντρωθεί η προσπάθεια μετάφρασης στα $1.",
+ "tpt-discouraged-language-force": "<strong>Αυτή η σελίδα δεν μπορεί να μεταφραστεί σε $2.</strong>\n\nΈνας διαχειριστής μετάφρασης έχει επιλέξει για αυτήν τη σελίδα να μπορεί να μεταφραστεί μόνο σε $3.",
+ "tpt-discouraged-language": "<strong>Η μετάφραση σε $2 δεν αποτελεί προτεραιότητα για αυτήν τη σελίδα.</strong>\n\nΚάποιος από τους διαχειριστές μετάφρασης έκρινε σκόπιμο να επικεντρωθεί η προσπάθεια μετάφρασης στα $3.",
"tpt-discouraged-language-reason": "Αιτία: $1",
"tpt-priority-languages": "Ένας διαχειριστής μετάφρασης έχει ορίσει ως γλώσσες που έχουν προτεραιότητα τα $1 για αυτήν την ομάδα.",
"tpt-render-summary": "Γίνεται ενημέρωση για να αντιστοιχεί στη νέα έκδοση της πηγαίας σελίδας",
- "tpt-download-page": "Εξαγωγή της σελίδας με τις μεταφράσεις",
"aggregategroups": "Συγκεντρωτικές ομάδες",
"tpt-aggregategroup-add": "Προσθήκη",
"tpt-aggregategroup-save": "Αποθήκευση",
@@ -87,6 +90,10 @@
"tpt-aggregategroup-new-description": "Περιγραφή (προαιρετική):",
"tpt-aggregategroup-remove-confirm": "Είστε σίγουροι ότι θέλετε να διαγράψετε αυτήν τη συγκεντρωτική ομάδα;",
"tpt-aggregategroup-invalid-group": "Η ομάδα δεν υπάρχει",
+ "tpt-aggregategroup-edit-name": "Όνομα:",
+ "tpt-aggregategroup-edit-description": "Περιγραφή:",
+ "tpt-aggregategroup-update": "Αποθήκευση",
+ "tpt-aggregategroup-update-cancel": "Άκυρο",
"tpt-invalid-group": "Μη έγκυρη ομάδα",
"pt-parse-open": "Ορφανή ετικέτα &lt;translate>.\nΠρότυπο μετάφρασης: <pre>$1</pre>",
"pt-parse-close": "Ορφανή ετικέτα &lt;/translate>.\nΠρότυπο μετάφρασης: <pre>$1</pre>",
@@ -111,6 +118,14 @@
"logentry-pagetranslation-prioritylanguages-force": "{{GENDER:$2|Ο|Η}} $1 περιόρισε τις γλώσσες για την προς μετάφραση σελίδα $3 στα $5",
"logentry-pagetranslation-associate": "{{GENDER:$2|Ο|Η}} $1 προσέθεσε την προς μετάφραση σελίδα $3 στη συγκεντρωτική ομάδα $4",
"logentry-pagetranslation-dissociate": "{{GENDER:$2|Ο|Η}} $1 αφαίρεσε την προς μετάφραση σελίδα $3 από τη συγκεντρωτική ομάδα $4",
+ "log-action-filter-pagetranslation": "Τύπος δράσης:",
+ "log-action-filter-pagetranslation-mark": "σήμανση για μετάφραση",
+ "log-action-filter-pagetranslation-unmark": "Αφαίρεση από τη μετάφραση",
+ "log-action-filter-pagetranslation-move": "Μετακινήσεις σελίδων",
+ "log-action-filter-pagetranslation-delete": "Διαγραφές σελίδας",
+ "log-action-filter-pagetranslation-encourage": "Ενθάρρυνση για μετάφραση",
+ "log-action-filter-pagetranslation-discourage": "Αποθάρρυνση για μετάφραση",
+ "log-action-filter-pagetranslation-prioritylanguages": "Τροποποίηση γλωσσών προτεραιότητας",
"pt-movepage-title": "Μετακίνηση της προς μετάφραση σελίδας «$1»",
"pt-movepage-blockers": "Η προς μετάφραση σελίδα δεν μπορεί να μετακινηθεί σε νέο όνομα λόγω {{PLURAL:$1|του ακόλουθου σφάλματος|των ακόλουθων σφαλμάτων}}:",
"pt-movepage-block-base-exists": "Η προς μετάφραση σελίδα προορισμού «[[:$1]]» υπάρχει.",
@@ -138,8 +153,8 @@
"pt-movepage-logreason": "Τμήμα της προς μετάφραση σελίδας «$1».",
"pt-movepage-started": "Η σελίδα βάσης έχει τώρα μετακινηθεί.\nΠαρακαλούμε ελέγξτε τη [[Special:Log/pagetranslation|σελίδα καταγραφών των σελίδων μετάφρασης]] για σφάλματα και μήνυμα ολοκλήρωσης.",
"pt-locked-page": "Αυτή η σελίδα είναι κλειδωμένη επειδή η προς μετάφραση σελίδα βρίσκεται αυτή τη στιγμή υπό μετακίνηση.",
- "pt-deletepage-lang-title": "Γίνεται διαγραφή της σελίδας μετάφρασης «$1».",
- "pt-deletepage-full-title": "Γίνεται διαγραφή της προς μετάφραση σελίδας«$1».",
+ "pt-deletepage-lang-title": "Γίνεται διαγραφή της σελίδας μετάφρασης «$1»",
+ "pt-deletepage-full-title": "Γίνεται διαγραφή της προς μετάφραση σελίδας «$1»",
"pt-deletepage-invalid-title": "Η καθορισμένη σελίδα δεν είναι έγκυρη.",
"pt-deletepage-invalid-text": "Η καθορισμένη σελίδα δεν είναι ούτε σελίδα προς μετάφραση ούτε σελίδα μετάφρασης.",
"pt-deletepage-action-check": "Λίστα με σελίδες για διαγραφή",
@@ -156,9 +171,42 @@
"pt-deletepage-list-section": "Σελίδες μεταφραστικών ενοτήτων",
"pt-deletepage-list-other": "Άλλες υποσελίδες",
"pt-deletepage-list-count": "Συνολικά $1 {{PLURAL:$1|σελίδα|σελίδες}} προς διαγραφή.",
- "pt-deletepage-full-logreason": "Τμήμα της προς μετάφραση σελίδας «$1».",
+ "pt-deletepage-full-logreason": "Τμήμα της μεταφράσιμης σελίδας «$1».",
"pt-deletepage-lang-logreason": "Τμήμα της σελίδας μετάφρασης «$1».",
"pt-deletepage-started": "Παρακαλούμε ελέγξτε το [[Special:Log/pagetranslation|αρχείο καταγραφών των σελίδων μετάφρασης]] για σφάλματα και μήνυμα ολοκλήρωσης.",
"pt-deletepage-intro": "Αυτή η ειδική σελίδα σας επιτρέπει να διαγράψετε είτε ολόκληρη σελίδα προς μετάφραση, είτε μια μεμονωμένη σελίδα μετάφρασης σε κάποια γλώσσα.\nΗ ενέργεια διαγραφής δεν θα είναι άμεση, επειδή θα διαγραφούν επίσης και όλες οι σελίδες που εξαρτώνται από αυτές.\nΟι αποτυχίες θα καταγραφούν στο [[Special:Log/pagetranslation|αρχείο καταγραφών των σελίδων μετάφρασης]] και θα πρέπει να επιδιορθωθούν με το χέρι.",
- "pm-pagetitle-invalid": "Παρακαλούμε εισάγετε μια έγκυρη σελίδα τίτλου"
+ "pagemigration": "Μεταφορά σελίδας μετάφρασης",
+ "pagemigration-summary": "Καθορίστε μια σελίδα μετάφρασης και αποκαταστήστε οποιαδήποτε μετάφραση έγινε πριν από την ενεργοποίησης του συστήματος Μετάφρασης σε αυτήν τη σελίδα.",
+ "pm-import-button-label": "Εισαγωγή",
+ "pm-savepages-button-label": "Αποθήκευση",
+ "pm-cancel-button-label": "Άκυρο",
+ "pm-page-does-not-exist": "Το $1 δεν υπάρχει.",
+ "pm-old-translations-missing": "Το $1 δεν περιέχει παλιές μεταφράσεις.",
+ "pm-extra-units-warning": "Μάλλον υπάρχουν παραπάνω μεταφραστικές μονάδες. Παρακαλούμε αντιστοιχίστε σωστά τις μεταφραστικές μονάδες του πηγαίου κειμένου με αυτές της μετάφρασης.",
+ "pm-pagename-missing": "Παρακαλούμε εισαγάγετε το όνομα της σελίδας.",
+ "pm-add-icon-hover-text": "Προσθήκη μιας μεταφραστικής μονάδας παρακάτω",
+ "pm-swap-icon-hover-text": "Εναλλαγή με τη μεταφραστική μονάδα παρακάτω",
+ "pm-delete-icon-hover-text": "Διαγραφή μεταφραστικής μονάδας",
+ "pm-pagetitle-placeholder": "Εισαγάγετε το τίτλο της σελίδας",
+ "pm-pagetitle-invalid": "Παρακαλούμε εισαγάγετε έγκυρη σελίδα τίτλου",
+ "pm-langcode-missing": "Παρακαλούμε εισαγάγετε τον κωδικό γλώσσας.",
+ "pm-summary-import": "Εισήγαγε μετάφραση χρησιμοποιώντας τη [[Special:PageMigration|σελίδα μεταφοράς]]",
+ "tpt-translate-title": "Να επιτρέπεται η μετάφραση του τίτλου της σελίδας",
+ "pp-save-summary": "Προετοίμασε τη σελίδα για μετάφραση",
+ "pagepreparation": "Προετοιμασία σελίδας για μετάφραση",
+ "pp-pagename-placeholder": "Εισαγάγετε το όνομα της σελίδας",
+ "pp-prepare-button-label": "Προετοιμασία",
+ "pp-save-button-label": "Αποθήκευση",
+ "pp-cancel-button-label": "Άκυρο",
+ "pp-save-message": "Η σελίδα έχει αποθηκευτεί. Μπορείτε να την [$1 επεξεργαστείτε].",
+ "pp-prepare-message": "Η σελίδα προετοιμάστηκε για μετάφραση. Δείτε τις διαφορές παρακάτω. Κάντε κλικ στο κουμπί «{{int:pp-save-button-label}}» αν είναι εντάξει!",
+ "pp-already-prepared-message": "Φαίνεται ότι η σελίδα έχει ήδη προετοιμαστεί για μετάφραση. Δεν υπάρχουν αλλαγές σε σχέση με την προηγούμενη έκδοση.",
+ "pp-pagename-missing": "Παρακαλούμε εισαγάγετε το όνομα της σελίδας.",
+ "pp-diff-old-header": "Πηγαίο κείμενο",
+ "pp-diff-new-header": "Προετοιμασμένο κείμενο",
+ "tpt-unlink-confirm": "Παρακαλούμε επιβεβαιώστε ότι θέλετε πραγματικά να καταργήσετε αυτήν τη σελίδα από το σύστημα μετάφρασης.\nΟ επιλογέας γλώσσας και τα μεταφρασμένα ονόματα της σελίδας θα σταματήσουν να λειτουργούν.\nΟι σελίδες μετάφρασης θα γίνουν επεξεργάσιμες.",
+ "tpt-unlink-button": "Αφαίρεση από τη μετάφραση",
+ "tpt-unlink-summary": "Σελίδα που έχει αφαιρεθεί από τη μετάφραση",
+ "tpt-generic-confirm": "Παρακαλούμε επιβεβαιώστε αυτή τη δράση.",
+ "tpt-generic-button": "Επιβεβαίωση"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/en-gb.json b/MLEB/Translate/i18n/pagetranslation/en-gb.json
index e3c957f1..a9887b56 100644
--- a/MLEB/Translate/i18n/pagetranslation/en-gb.json
+++ b/MLEB/Translate/i18n/pagetranslation/en-gb.json
@@ -3,13 +3,14 @@
"authors": [
"Shirayuki",
"Thehelpfulone",
- "Captaindogfish"
+ "Captaindogfish",
+ "Chase me ladies, I'm the Cavalry"
]
},
"tpt-oldrevision": "$2 is not the latest version of the page [[:$1]].\nOnly latest versions can be marked for translation.",
"tpt-saveok": "The page [[:$1]] has been marked up for translation with $2 {{PLURAL:$2|translation unit|translation units}}.\nThe page can now be <span class=\"plainlinks\">[$3 translated]</span>.",
"tpt-showpage-intro": "Below new, existing and deleted translation units are listed.\nBefore marking this version for translation, check that the changes to translation units are minimised to avoid unnecessary work for translators.",
- "tpt-mark-nochanges": "There is no difference between this revision and the last marked revision.",
+ "tpt-mark-nochanges": "No changes to review. Marking this page for translation will not edit the page nor any existing translation unit.",
"logentry-pagetranslation-moveok": "$1 {{GENDER:$2|completed}} renaming of translatable page $3 to $4",
"logentry-pagetranslation-deletefnok": "$1 {{GENDER:$2|failed}} to delete $3 which belongs to translatable page $4",
"logentry-pagetranslation-prioritylanguages": "$1 {{GENDER:$2|set}} the priority languages for translatable page $3 to $5",
diff --git a/MLEB/Translate/i18n/pagetranslation/en.json b/MLEB/Translate/i18n/pagetranslation/en.json
index e11493e3..d8d0a118 100644
--- a/MLEB/Translate/i18n/pagetranslation/en.json
+++ b/MLEB/Translate/i18n/pagetranslation/en.json
@@ -2,18 +2,16 @@
"@metadata": {
"authors": [
"Nike",
- "BPositive"
+ "BPositive",
+ "Zoranzoki21"
]
},
"pagetranslation": "Page translation",
"right-pagetranslation": "Mark versions of pages for translation",
"action-pagetranslation": "manage translatable pages",
- "tpt-desc": "Extension for translating content pages",
"tpt-section": "Translation unit $1",
"tpt-section-new": "New translation unit.\nName: $1",
"tpt-section-deleted": "Translation unit $1",
- "tpt-template": "Page template",
- "tpt-templatediff": "The page template has changed.",
"tpt-diff-old": "Previous text",
"tpt-diff-new": "New text",
"tpt-submit": "Mark this version for translation",
@@ -27,10 +25,9 @@
"tpt-notsuitable": "Page $1 is not suitable for translation.\nMake sure it has <nowiki><translate></nowiki> tags and has a valid syntax.",
"tpt-saveok": "The page [[:$1]] has been marked up for translation with $2 {{PLURAL:$2|translation unit|translation units}}.\nThe page can now be <span class=\"plainlinks\">[$3 translated]</span>.",
"tpt-offer-notify": "You can <span class=\"plainlinks\">[$1 notify translators]</span> about this page.",
- "tpt-badsect": "\"$1\" is not a valid name for translation unit $2.",
"tpt-showpage-intro": "Below new, existing and deleted translation units are listed.\nBefore marking this version for translation, check that the changes to translation units are minimized to avoid unnecessary work for translators.",
"tpt-mark-summary": "Marked this version for translation",
- "tpt-mark-nochanges": "There is no difference between this revision and the last marked revision.",
+ "tpt-mark-nochanges": "No changes to review. Marking this page for translation will not edit the page nor any existing translation unit.",
"tpt-edit-failed": "Could not update the page: $1",
"tpt-duplicate": "Translation unit name $1 is used more than once.",
"tpt-already-marked": "The latest version of this page has already been marked for translation.",
@@ -56,11 +53,13 @@
"tpt-rev-unmark-tooltip": "Remove this page from translation.",
"tpt-rev-discourage-tooltip": "Discourage further translations on this page.",
"tpt-rev-encourage-tooltip": "Restore this page to normal translation.",
+ "translate-edit-tag-warning": "",
"translate-tag-translate-link-desc": "Translate this page",
"translate-tag-markthis": "Mark this page for translation",
"translate-tag-markthisagain": "This page has <span class=\"plainlinks\">[$1 changes]</span> since it was last <span class=\"plainlinks\">[$2 marked for translation]</span>.",
"translate-tag-hasnew": "This page contains <span class=\"plainlinks\">[$1 changes]</span> which are not marked for translation.",
"tpt-translation-intro": "This page is a <span class=\"plainlinks\">[$1 translated version]</span> of the page [[$2]] and the translation is $3% complete.",
+ "tpt-translation-intro-fuzzy": "Outdated translations are marked like this.",
"tpt-languages-legend": "Other languages:",
"tpt-languages-separator": "&#160;•&#32;",
"tpt-languages-zero": "Start translation for this language",
@@ -79,7 +78,6 @@
"tpt-discouraged-language-reason": "Reason: $1",
"tpt-priority-languages": "A translation administrator has set the priority languages for this group to $1.",
"tpt-render-summary": "Updating to match new version of source page",
- "tpt-download-page": "Export page with translations",
"aggregategroups": "Aggregate groups",
"tpt-aggregategroup-add": "Add",
"tpt-aggregategroup-save": "Save",
@@ -102,7 +100,7 @@
"log-description-pagetranslation": "Log for actions related to the page translation system",
"log-name-pagetranslation": "Page translation log",
"logentry-pagetranslation-mark": "$1 {{GENDER:$2|marked}} $3 for translation",
- "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|removed}} $3 from translation",
+ "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|removed}} $3 from the translation system",
"logentry-pagetranslation-moveok": "$1 {{GENDER:$2|completed}} renaming of translatable page $3 to $4",
"logentry-pagetranslation-movenok": "$1 {{GENDER:$2|encountered}} a problem while moving page $3 to $4",
"logentry-pagetranslation-deletefok": "$1 {{GENDER:$2|completed}} deletion of translatable page $3",
@@ -116,6 +114,15 @@
"logentry-pagetranslation-prioritylanguages-force": "$1 {{GENDER:$2|limited}} languages for translatable page $3 to $5",
"logentry-pagetranslation-associate": "$1 {{GENDER:$2|added}} translatable page $3 to aggregate group $4",
"logentry-pagetranslation-dissociate": "$1 {{GENDER:$2|removed}} translatable page $3 from aggregate group $4",
+ "log-action-filter-pagetranslation": "Type of action:",
+ "log-action-filter-pagetranslation-mark": "Mark for translation",
+ "log-action-filter-pagetranslation-unmark": "Removal from translation",
+ "log-action-filter-pagetranslation-move": "Page moves",
+ "log-action-filter-pagetranslation-delete": "Page deletions",
+ "log-action-filter-pagetranslation-encourage": "Translation encouragement",
+ "log-action-filter-pagetranslation-discourage": "Translation discouragement",
+ "log-action-filter-pagetranslation-prioritylanguages": "Priority languages modification",
+ "log-action-filter-pagetranslation-aggregategroups": "Aggregate groups modification",
"pt-movepage-title": "Move translatable page \"$1\"",
"pt-movepage-blockers": "The translatable page cannot be moved to a new name because of the following {{PLURAL:$1|error|errors}}:",
"pt-movepage-block-base-exists": "The target translatable page \"[[:$1]]\" exists.",
@@ -140,11 +147,11 @@
"pt-movepage-action-perform": "Do the move",
"pt-movepage-action-other": "Change target",
"pt-movepage-intro": "This special page allows you to move pages which are marked for translation.\nThe move action will not be instant, because many pages will need to be moved.\nWhile the pages are being moved, it is not possible to interact with the pages in question.\nFailures will be logged in the [[Special:Log/pagetranslation|page translation log]] and they need to be repaired by hand.",
- "pt-movepage-logreason": "Part of translatable page \"$1\".",
- "pt-movepage-started": "The base page is now moved.\nPlease check the [[Special:Log/pagetranslation|page translation log]] for errors and completion message.",
+ "pt-movepage-logreason": "Part of translatable page \"$1\"",
+ "pt-movepage-started": "Please check the [[Special:Log/pagetranslation|page translation log]] in a while for errors and completion message.",
"pt-locked-page": "This page is locked because the translatable page is currently being moved.",
- "pt-deletepage-lang-title": "Deleting translation page \"$1\".",
- "pt-deletepage-full-title": "Deleting translatable page \"$1\".",
+ "pt-deletepage-lang-title": "Deleting translation page \"$1\"",
+ "pt-deletepage-full-title": "Deleting translatable page \"$1\"",
"pt-deletepage-invalid-title": "The specified page is not valid.",
"pt-deletepage-invalid-text": "The specified page is not a translatable page nor a translation page.",
"pt-deletepage-action-check": "List pages to be deleted",
@@ -161,8 +168,8 @@
"pt-deletepage-list-section": "Translation unit pages",
"pt-deletepage-list-other": "Other subpages",
"pt-deletepage-list-count": "In total $1 {{PLURAL:$1|page|pages}} to delete.",
- "pt-deletepage-full-logreason": "Part of translatable page \"$1\".",
- "pt-deletepage-lang-logreason": "Part of translation page \"$1\".",
+ "pt-deletepage-full-logreason": "Part of translatable page \"$1\"",
+ "pt-deletepage-lang-logreason": "Part of translation page \"$1\"",
"pt-deletepage-started": "Please check the [[Special:Log/pagetranslation|page translation log]] for errors and completion message.",
"pt-deletepage-intro": "This special page allows you delete a whole translatable page, or an individual translation page in a language.\nThe delete action will not be instant, because all the pages depending on them will also be deleted.\nFailures will be logged in the [[Special:Log/pagetranslation|page translation log]] and they need to be repaired by hand.",
"pagemigration": "Translation page migration",
@@ -170,18 +177,20 @@
"pm-import-button-label": "Import",
"pm-savepages-button-label": "Save",
"pm-cancel-button-label": "Cancel",
- "pm-pagename-placeholder": "Enter the page name",
- "pm-langcode-placeholder": "Language code",
"pm-page-does-not-exist": "$1 does not exist.",
"pm-old-translations-missing": "$1 does not contain old translations.",
"pm-extra-units-warning": "Extra units might be present. Please match the source and translation units properly.",
"pm-pagename-missing": "Please enter the page name.",
- "pm-langcode-missing": "Please enter the language code.",
"pm-add-icon-hover-text": "Add a unit below",
"pm-swap-icon-hover-text": "Swap with unit below",
"pm-delete-icon-hover-text": "Delete unit",
- "pm-pagetitle-invalid": "Please enter a valid page title",
+ "pm-pagetitle-placeholder": "Enter the page title",
+ "pm-pagetitle-invalid": "Please enter a valid page title. It should be in <page-name>/<language-code> format.",
+ "pm-pagetitle-missing": "Please enter the page title.",
+ "pm-langcode-missing": "The language code seems to be missing in the title. Please enter the page title in the format <page-name>/<language-code>.",
"pm-summary-import": "Imported translation using [[Special:PageMigration|page migration]]",
+ "pm-on-import-message-text": "The old translations have been imported. Use the add, swap and delete options to adjust the translation units and click the \"{{int:pm-savepages-button-label}}\" button to save them. Click the \"{{int:pm-cancel-button-label}}\" button to discard.",
+ "pm-on-save-message-text": "The translation units have been saved. You can now enter the title of a new translation page to migrate it, or make changes to the units below and save a new revision.",
"tpt-translate-title": "Allow translation of page title",
"pp-save-summary": "Prepared the page for translation",
"pagepreparation": "Prepare page for translation",
@@ -197,5 +206,7 @@
"pp-diff-new-header": "Prepared text",
"tpt-unlink-confirm": "Please confirm that you really want to remove this page from the translation system.\nThe language selector and translated page names will stop working.\nThe translation pages will become editable.",
"tpt-unlink-button": "Remove from translation",
- "tpt-unlink-summary": "Removed page from translation"
+ "tpt-unlink-summary": "Removed page from translation",
+ "tpt-generic-confirm": "Please confirm the action.",
+ "tpt-generic-button": "Confirm"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/eo.json b/MLEB/Translate/i18n/pagetranslation/eo.json
index cf1e9e85..d626d56c 100644
--- a/MLEB/Translate/i18n/pagetranslation/eo.json
+++ b/MLEB/Translate/i18n/pagetranslation/eo.json
@@ -5,17 +5,15 @@
"ArnoLagrange",
"Blahma",
"Yekrats",
- "KuboF"
+ "KuboF",
+ "Robin van der Vliet"
]
},
"pagetranslation": "Paĝa traduko",
"right-pagetranslation": "Marki versiojn de paĝoj por traduki",
- "tpt-desc": "Kromprogramo por tradukado de enhavaj paĝoj",
"tpt-section": "Tradukada unuo $1",
"tpt-section-new": "Nova tradukada unuo.\nNomo: $1",
"tpt-section-deleted": "Tradukada unuo $1",
- "tpt-template": "Paĝa ŝablono",
- "tpt-templatediff": "La paĝa ŝablono estis ŝanĝita.",
"tpt-diff-old": "Antaŭa teksto",
"tpt-diff-new": "Nova teksto",
"tpt-submit": "Marki ĉi tiun version por traduki",
@@ -28,7 +26,6 @@
"tpt-oldrevision": "$2 ne estas la lasta versio de la paĝo [[:$1]].\nNur la lasta versio de la paĝo povas esti markita por esti tradukita.",
"tpt-notsuitable": "Paĝo $1 ne taŭgas por traduki.\nCertigu ke ĝi havas etikedojn <nowiki><translate></nowiki> kaj havas validan sintakson.",
"tpt-saveok": "La paĝo [[:$1]] estis markita por esti tradukita kun $2 traduk{{PLURAL:$2|ero|eroj}}.\nLa paĝo povas nun esti <span class=\"plainlinks\">[$3 tradukita]</span>.",
- "tpt-badsect": "« $1 » ne estas valida nomo por tradukero $2.",
"tpt-mark-summary": "Markis ĉi tiun version por traduki.",
"tpt-edit-failed": "Ne eblis ĝisdatigi la paĝon: $1",
"tpt-old-pages-title": "Paĝoj en traduko",
@@ -45,13 +42,14 @@
"tpt-languages-legend": "Aliaj lingvoj:",
"tpt-languages-zero": "Ektraduki por ĉi tiu lingvo",
"tpt-languages-nonzero": "$1 ($2% {{PLURAL:$2|tradukita|tradukitaj}})",
+ "tpt-tab-translate": "Traduki",
"tpt-discouraged-language-reason": "Kialo: $1",
- "tpt-download-page": "Eksporti paĝon kun tradukoj",
"tpt-aggregategroup-add": "Aldoni",
"tpt-aggregategroup-save": "Konservi",
"tpt-aggregategroup-new-name": "Nomo:",
"tpt-aggregategroup-new-description": "Priskribo (nedevige):",
"tpt-aggregategroup-invalid-group": "La grupo ne ekzistas",
+ "tpt-aggregategroup-update-cancel": "Nuligi",
"log-name-pagetranslation": "Protokolo pri paĝaj tradukoj",
"pt-movepage-title": "Movi la tradukeblan paĝon \"$1\"",
"pt-movepage-blockers": "La tradukebla paĝo ne povis esti movita al nova nomo pro la {{PLURAL:$1|sekva eraro|sekvaj eraroj}}:",
@@ -101,5 +99,9 @@
"pt-deletepage-full-logreason": "Pato de la tradukebla paĝo \"$1\".",
"pt-deletepage-lang-logreason": "Pato de la tradukpaĝo \"$1\".",
"pt-deletepage-started": "Bonvolu rekontroli la [[Special:Log/pagetranslation|protokolon pri paĝotradukado]] por eraroj kaj mesaĝo pri kompletiĝo.",
- "pt-deletepage-intro": "En tiu ĉi speciala paĝo vi povas forigi tutan tradukeblan paĝon aŭ individuan tradukpaĝon en iu lingvo.\nLa forigo ne efektiviĝos tuj, ĉar ĉiuj dependaj paĝoj estos ankaŭ forigitaj.\nFiaskoj estos protokolitaj en la [[Special:Log/pagetranslation|protokolo pri paĝotradukado]] kaj ilin necesos ripari permane."
+ "pt-deletepage-intro": "En tiu ĉi speciala paĝo vi povas forigi tutan tradukeblan paĝon aŭ individuan tradukpaĝon en iu lingvo.\nLa forigo ne efektiviĝos tuj, ĉar ĉiuj dependaj paĝoj estos ankaŭ forigitaj.\nFiaskoj estos protokolitaj en la [[Special:Log/pagetranslation|protokolo pri paĝotradukado]] kaj ilin necesos ripari permane.",
+ "pm-import-button-label": "Enporti",
+ "pm-cancel-button-label": "Nuligi",
+ "pp-cancel-button-label": "Nuligi",
+ "tpt-generic-button": "Konfirmi"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/es.json b/MLEB/Translate/i18n/pagetranslation/es.json
index 413a5d4f..60d1adc5 100644
--- a/MLEB/Translate/i18n/pagetranslation/es.json
+++ b/MLEB/Translate/i18n/pagetranslation/es.json
@@ -17,20 +17,20 @@
"Vivaelcelta",
"Fitoschido",
"Macofe",
- "JasterTDC"
+ "JasterTDC",
+ "Mgpena",
+ "GamemOfAnime",
+ "Dgstranz"
]
},
- "pagetranslation": "Traducción de página",
+ "pagetranslation": "Traducción de páginas",
"right-pagetranslation": "Marcar versiones de páginas para traducción",
"action-pagetranslation": "administrar páginas traducibles",
- "tpt-desc": "Extensión para traducir páginas de contenido",
"tpt-section": "Unidad de traducción $1",
"tpt-section-new": "Nueva unidad de traducción. \nNombre: $1",
"tpt-section-deleted": "Unidad de traducción $1",
- "tpt-template": "Plantilla de página",
- "tpt-templatediff": "La plantilla de página ha cambiado.",
"tpt-diff-old": "Texto previo",
- "tpt-diff-new": "Nuevo texto",
+ "tpt-diff-new": "Texto nuevo",
"tpt-submit": "Marcar esta versión para traducción",
"tpt-sections-oldnew": "Unidades de traducción nuevas y existentes",
"tpt-sections-deleted": "Unidades de traducción borradas",
@@ -42,10 +42,9 @@
"tpt-notsuitable": "La página $1 no es adecuada para traducción.\nAsegúrate que tiene etiquetas <nowiki><translate></nowiki> y tiene una sintaxis válida.",
"tpt-saveok": "La página [[:$1]] ha sido marcada para traducción con $2 {{PLURAL:$2|unidad|unidades}} de traducción.\nLa página puede ser ahora <span class=\"plainlinks\">[$3 traducida]</span>.",
"tpt-offer-notify": "Puedes <span class=\"plainlinks\">[$1 notificar a los traductores]</span> de esta página.",
- "tpt-badsect": "\"$1\" no es un nombre válido para la unidad de traducción $2.",
"tpt-showpage-intro": "Debajo están listadas las unidades de traducción nuevas, existentes y borradas.\nAntes de marcar esta versión para traducción, verifica que los cambios a las unidades de traducción son mínimos para evitar trabajo innecesario a los traductores.",
"tpt-mark-summary": "Se marcó esta sección para su traducción",
- "tpt-mark-nochanges": "No hay ninguna diferencia entre esta revisión y la última revisión marcada.",
+ "tpt-mark-nochanges": "No hay cambios para revisar. Marcar esta página para su traducción no editará la página ni ninguna de las unidades de traducción existentes.",
"tpt-edit-failed": "No pudo actualizar la página : $1",
"tpt-duplicate": "El nombre de la unidad de traducción $1 es utilizado más de una vez.",
"tpt-already-marked": "La última versión de esta página ya ha sido marcada para traducción.",
@@ -56,7 +55,7 @@
"tpt-other-pages-title": "Páginas rotas",
"tpt-discouraged-pages-title": "Páginas desaconsejadas",
"tpt-new-pages": "{{PLURAL:$1|Esta página contiene|Estas páginas contienen}} texto con etiquetas de traducción, pero ninguna versión de {{PLURAL:$1|esta página está|estas páginas están}} actualmente marcadas para traducción.",
- "tpt-old-pages": "Alguna versión de {{PLURAL:$1|esta página ha|estas páginas han}} sido marcada para traducción.",
+ "tpt-old-pages": "Alguna versión de {{PLURAL:$1|esta página ha sido marcada|estas páginas han sido marcadas}} para traducción.",
"tpt-other-pages": "{{PLURAL:$1|Una versión antigua de esta página se marcó|Versiones antiguas de estas páginas se marcaron}} para traducirse,\npero {{PLURAL:$1|la última versión no se puede|las últimas versiones no se pueden}} marcar para traducirse.",
"tpt-discouraged-pages": "Se desaconseja continuar la traducción de {{PLURAL:$1|esta página|estas páginas}}.",
"tpt-select-prioritylangs": "Lista de códigos de idioma prioritarios separados por comas:",
@@ -76,12 +75,14 @@
"translate-tag-markthisagain": "Esta página tiene <span class=\"plainlinks\">[$1 cambios]</span> desde la última vez que fue <span class=\"plainlinks\">[$2 marcada para traducción]</span>.",
"translate-tag-hasnew": "Esta página contiene <span class=\"plainlinks\">[$1 cambios]</span> que no se han marcado para su traducción.",
"tpt-translation-intro": "Esta página es una <span class=\"plainlinks\">[$1 versión traducida]</span> de la página [[$2]]. La traducción está completa al $3 %.",
+ "tpt-translation-intro-fuzzy": "Las traducciones desactualizadas están marcadas así.",
"tpt-languages-legend": "Otros idiomas:",
"tpt-languages-zero": "Iniciar la traducción para este idioma",
- "tpt-languages-nonzero": "$1 ($2% traducido)",
+ "tpt-languages-nonzero": "$1 ($2 % traducido)",
"tpt-tab-translate": "Traducir",
- "tpt-target-page": "Esta página no puede ser actualizada manualmente.\nEsta página es una traducción de la página [[$1]] y la traducción puede ser actualizada usando [$2 la herramienta de traducción].",
- "tpt-unknown-page": "Este espacio de nombre está reservado para traducciones de páginas de contenido.\nLa página que estás tratando de editar no parece corresponder con ninguna página marcada para traducción.",
+ "tpt-target-page": "No se puede actualizar esta página manualmente.\nEsta página es una traducción de la página [[$1]] y puedes actualizar la traducción mediante [$2 la herramienta correspondiente].",
+ "tpt-patrolling-blocked": "Esta página no puede patrullarse. En su lugar, usa la acción de traducción para revisarla.",
+ "tpt-unknown-page": "Este espacio de nombres está reservado para traducciones de páginas de contenido.\nLa página que estás tratando de editar no parece corresponder con ninguna página marcada para traducción.",
"tpt-translation-restricted": "La traducción de esta página a este idioma ha sido impedida por un administrador de traducción.\n\nMotivo: $1",
"tpt-discouraged-language-force-header": "Esta página no se puede traducir al $1.",
"tpt-discouraged-language-force-content": "Un administrador de traducción decidió que esta página sólo puede traducirse a $1.",
@@ -91,24 +92,23 @@
"tpt-discouraged-language": "<strong>La traducción al $2 no es una prioridad para esta página.</strong>\n\nUn administrador de traducción decidió enfocar los esfuerzos de traducción en: $3.",
"tpt-discouraged-language-reason": "Motivo: $1",
"tpt-priority-languages": "Un administrador de traducciones ha definido los idiomas prioritarios de este grupo: $1.",
- "tpt-render-summary": "Actualizando para hallar una nueva versión de la página fuente",
- "tpt-download-page": "Exportar página con traducciones",
+ "tpt-render-summary": "Actualizando para coincidir con nueva versión de la página fuente",
"aggregategroups": "Grupos de agregación",
"tpt-aggregategroup-add": "Añadir",
"tpt-aggregategroup-save": "Guardar",
"tpt-aggregategroup-add-new": "Añadir un nuevo grupo de agregación",
"tpt-aggregategroup-new-name": "Nombre:",
"tpt-aggregategroup-new-description": "Descripción (opcional):",
- "tpt-aggregategroup-remove-confirm": "¿Está seguro que desea eliminar este grupo agregado?",
+ "tpt-aggregategroup-remove-confirm": "¿Estás seguro que quieres eliminar este grupo agregado?",
"tpt-aggregategroup-invalid-group": "El grupo no existe",
"tpt-aggregategroup-edit-name": "Nombre:",
"tpt-aggregategroup-edit-description": "Descripción:",
"tpt-aggregategroup-update": "Guardar",
"tpt-aggregategroup-update-cancel": "Cancelar",
- "tpt-invalid-group": "Grupo inválido",
+ "tpt-invalid-group": "El grupo no es válido",
"pt-parse-open": "Etiqueta &lt;translate> desequilibrada.\nPlantilla de traducción: <pre>$1</pre>",
"pt-parse-close": "Etiqueta &lt;/translate> desequilibrada.\nPlantilla de traducción: <pre>$1</pre>",
- "pt-parse-nested": "No se permiten &lt;translate> unidades de traducción anidadas.\nTexto de etiqueta: <pre>$1</pre>",
+ "pt-parse-nested": "No se permiten unidades de traducción &lt;translate> anidadas.\nTexto de etiqueta: <pre>$1</pre>",
"pt-shake-multiple": "Múltiples marcadores de unidades de traducción para una unidad de traducción.\nTexto de la unidad de traducción: <pre>$1</pre>",
"pt-shake-position": "Marcadores de unidad de traducción en posición inesperada.\nTexto de la unidad de traducción: <pre>$1</pre>",
"pt-shake-empty": "Unidad de traducción vacía para el marcador \"$1\".",
@@ -129,6 +129,12 @@
"logentry-pagetranslation-prioritylanguages-force": "$1 {{GENDER:$2|limitó}} los idiomas para la página traducible $3 a $5",
"logentry-pagetranslation-associate": "$1 {{GENDER:$2|agregó}} la página traducible $3 al grupo agregado $4",
"logentry-pagetranslation-dissociate": "$1 {{GENDER:$2|eliminó}} la página traducible $3 del grupo agregado $4",
+ "log-action-filter-pagetranslation": "Tipo de acción:",
+ "log-action-filter-pagetranslation-mark": "Marcar para su traducción",
+ "log-action-filter-pagetranslation-move": "Traslados de página",
+ "log-action-filter-pagetranslation-delete": "Eliminación de páginas",
+ "log-action-filter-pagetranslation-prioritylanguages": "Modificación de idiomas prioritarios",
+ "log-action-filter-pagetranslation-aggregategroups": "Modificación de grupos del agregado",
"pt-movepage-title": "Trasladar la página traducible $1",
"pt-movepage-blockers": "La página traducible no puede ser movida a un nuevo nombre por {{PLURAL:$1|el siguiente error|los siguientes errores}}:",
"pt-movepage-block-base-exists": "Existe la página traducible de destino \"[[:$1]]\".",
@@ -153,11 +159,11 @@
"pt-movepage-action-perform": "Hacer el traslado",
"pt-movepage-action-other": "Cambiar destino",
"pt-movepage-intro": "Esta página especial permite trasladar páginas que están marcadas para su traducción.\nLa acción de traslado no será instantánea, porque necesitarán trasladarse muchas páginas.\nMientras las páginas estén siendo trasladadas, no es posible interactuar con las páginas en cuestión.\nLos fallos serán registrados en el [[Special:Log/pagetranslation|registro de traducción de páginas]] y necesitarán ser reparados manualmente.",
- "pt-movepage-logreason": "Parte de la página traducible \"$1\".",
- "pt-movepage-started": "La página base se ha trasladado.\nPor favor verifica el [[Special:Log/pagetranslation|registro de traducción de página]] para errores y mensaje de conclusión.",
+ "pt-movepage-logreason": "Parte de la página traducible «$1»",
+ "pt-movepage-started": "Verifica el [[Special:Log/pagetranslation|registro de traducción de página]] en un momento en busca de errores y mensaje de conclusión.",
"pt-locked-page": "Esta página está bloqueada porque la página traducible está siendo trasladada actualmente.",
- "pt-deletepage-lang-title": "Eliminar la página de traducción \"$1\".",
- "pt-deletepage-full-title": "Eliminar la página traducible \"$1\".",
+ "pt-deletepage-lang-title": "Eliminación de la página de traducción \"$1\"",
+ "pt-deletepage-full-title": "Eliminación de la página traducible \"$1\"",
"pt-deletepage-invalid-title": "La página especificada no es válida.",
"pt-deletepage-invalid-text": "La página especificada no es una página traducible ni una página de traducción.",
"pt-deletepage-action-check": "Lista de páginas a borrar",
@@ -174,8 +180,8 @@
"pt-deletepage-list-section": "Páginas de unidades de traducción",
"pt-deletepage-list-other": "Otras subpáginas",
"pt-deletepage-list-count": "En total $1 {{PLURAL:$1|página|páginas}} a eliminar.",
- "pt-deletepage-full-logreason": "Parte de la página traducible \"$1\".",
- "pt-deletepage-lang-logreason": "Parte de la página de traducción \"$1\".",
+ "pt-deletepage-full-logreason": "Parte de la página traducible «$1»",
+ "pt-deletepage-lang-logreason": "Parte de la página de traducción «$1»",
"pt-deletepage-started": "Compruebe los errores y los mensajes de conclusión en el [[Special:Log/pagetranslation|registro de traducción de páginas]].",
"pt-deletepage-intro": "Esta página especial te permite eliminar páginas traducibles enteras o una página de traducción individual a un idioma. La eliminación no será instantánea, porque deben borrarse todas las páginas dependientes de ella. \nLos fallos se registrarán en el [[Special:Log/pagetranslation|registro de traducción de la página]] y tendrán que ser reparados a mano.",
"pagemigration": "Migración de página de traducción",
@@ -183,17 +189,17 @@
"pm-import-button-label": "Importar",
"pm-savepages-button-label": "Guardar",
"pm-cancel-button-label": "Cancelar",
- "pm-pagename-placeholder": "Escribe el nombre de la página",
- "pm-langcode-placeholder": "Código de idioma",
"pm-page-does-not-exist": "$1 no existe",
"pm-old-translations-missing": "$1 no contiene traducciones obsoletas.",
"pm-extra-units-warning": "Podrían estar presentes unidades extras. Haz coincidir correctamente las unidades de origen y de traducción.",
"pm-pagename-missing": "Escribe el nombre de la página",
- "pm-langcode-missing": "Escribe el código de idioma",
"pm-add-icon-hover-text": "Añadir una unidad más abajo",
"pm-swap-icon-hover-text": "Intercambiar con la unidad siguiente",
"pm-delete-icon-hover-text": "Eliminar unidad",
- "pm-pagetitle-invalid": "Escribe un título válido para la página",
+ "pm-pagetitle-placeholder": "Escribe el título de la página",
+ "pm-pagetitle-invalid": "Escribe un título válido para la página. Debe tener el formato <nombre-de-página>/<código-de-idioma>.",
+ "pm-pagetitle-missing": "Escribe el título de la página.",
+ "pm-langcode-missing": "El código de idioma parece faltar en el título. Escribe el título de la página en el formato <nombre-de-página>/<código-de-idioma>.",
"pm-summary-import": "Se importó la traducción usando [[Special:PageMigration|migración de página]]",
"tpt-translate-title": "Permitir la traducción del título de la página",
"pp-save-summary": "Preparada la página para la traducción",
@@ -210,5 +216,7 @@
"pp-diff-new-header": "Texto preparado",
"tpt-unlink-confirm": "Confirma que realmente quieres eliminar esta página del sistema de traducción.\nEl selector de idiomas y los nombres de las páginas traducidas dejarán de funcionar.\nLas páginas de traducción se volverán editables.",
"tpt-unlink-button": "Eliminar de la traducción",
- "tpt-unlink-summary": "Eliminar página de la traducción"
+ "tpt-unlink-summary": "Eliminar página de la traducción",
+ "tpt-generic-confirm": "Confirma la acción.",
+ "tpt-generic-button": "Confirmar"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/et.json b/MLEB/Translate/i18n/pagetranslation/et.json
index 73c4c9c4..9593ff80 100644
--- a/MLEB/Translate/i18n/pagetranslation/et.json
+++ b/MLEB/Translate/i18n/pagetranslation/et.json
@@ -10,12 +10,9 @@
"pagetranslation": "Lehekülje tõlkimine",
"right-pagetranslation": "Märkida lehekülje versioone tõlkimiseks",
"action-pagetranslation": "tõlgitavaid lehekülgi hallata",
- "tpt-desc": "Sisulehekülgede tõlkimise lisa",
"tpt-section": "Tõlkeüksus $1",
"tpt-section-new": "Uus tõlkeüksus.\nNimi: $1",
"tpt-section-deleted": "Tõlkeüksus $1",
- "tpt-template": "Lehekülje mall",
- "tpt-templatediff": "Leheküljemall on muutunud.",
"tpt-diff-old": "Eelnev tekst",
"tpt-diff-new": "Uus tekst",
"tpt-submit": "Märgi see versioon tõlkimiseks",
@@ -27,7 +24,6 @@
"tpt-oldrevision": "$2 pole lehekülje [[:$1]] uusim versioon.\nAinult uusimaid versioone saab märkida tõlkimiseks.",
"tpt-notsuitable": "Lehekülg $1 ei sobi tõlkimiseks.\nVeendu, et see sisaldab <nowiki><translate></nowiki>-silte ja selle süntaks on õige.",
"tpt-saveok": "{{PLURAL:$2|Ühe|$2}} tõlkeüksusega lehekülg [[:$1]] on märgitud tõlkimiseks.\nLehekülge saab nüüd <span class=\"plainlinks\">[$3 tõlkida]</span>.",
- "tpt-badsect": "\"$1\" ei sobi tõlkeüksuse $2 nimeks.",
"tpt-showpage-intro": "Allpool on loetletud uued, olemasolevad ja kustutatud tõlkeüksused.\nEnne selle versiooni märkimist tõlkimiseks, veendu palun, et tõlkeüksustes tehtud muudatused on võimalikult väikesed, et tõlkijad ei peaks tegema tarbetut tööd.",
"tpt-mark-summary": "See versioon on märgitud tõlkimiseks",
"tpt-edit-failed": "Lehekülje uuendamine ei õnnestunud: $1",
@@ -59,6 +55,7 @@
"translate-tag-markthisagain": "Seda lehekülge on <span class=\"plainlinks\">[$1 muudetud]</span> pärast seda, kui see viimati <span class=\"plainlinks\">[$2 tõlkimiseks märgiti]</span>.",
"translate-tag-hasnew": "See lehekülg sisaldab <span class=\"plainlinks\">[$1 muudatusi]</span>, mida pole märgitud tõlkimiseks.",
"tpt-translation-intro": "See on lehekülje [[$2]] <span class=\"plainlinks\">[$1 tõlgitud versioon]</span> ja tõlkest on valmis $3%.",
+ "tpt-translation-intro-fuzzy": "Iganenud tõlkeid märgitakse nii.",
"tpt-languages-legend": "Teistes keeltes:",
"tpt-languages-zero": "Alusta sellesse keelde tõlkimist",
"tpt-languages-nonzero": "$1 ($2% tõlgitud)",
@@ -79,6 +76,8 @@
"tpt-aggregategroup-new-description": "Kirjeldus (valikuline):",
"tpt-aggregategroup-remove-confirm": "Kas oled kindel, et soovid selle ühendrühma kustutada?",
"tpt-aggregategroup-invalid-group": "Rühma pole",
+ "tpt-aggregategroup-edit-name": "Nimi:",
+ "tpt-aggregategroup-edit-description": "Kirjeldus:",
"pt-parse-open": "Puudub sildile &lt;translate> vastav lõpusilt.\nTõlkemall: <pre>$1</pre>",
"pt-parse-close": "Puudub sildile &lt;/translate> vastav algussilt.\nTõlkemall: <pre>$1</pre>",
"pt-parse-nested": "Pesastatud &lt;translate>-tõlkeüksused pole lubatud.\nSildi tekst: <pre>$1</pre>",
@@ -88,7 +87,7 @@
"log-description-pagetranslation": "Lehekülgede tõlkesüsteemiga seotud toimingute logi",
"log-name-pagetranslation": "Lehekülgede tõlkelogi",
"logentry-pagetranslation-mark": "$1 {{GENDER:$2|märkis}} lehekülje \"$3\" tõlkimiseks",
- "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|eemaldas}} lehekülje \"$3\" tõlkimiselt",
+ "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|eemaldas}} lehekülje \"$3\" tõlkesüsteemist",
"pt-movepage-title": "Tõlgitava lehekülje \"$1\" teisaldamine",
"pt-movepage-blockers": "{{PLURAL:$1|Järgmise tõrke|Järgmiste tõrgete}} tõttu ei saa tõlgitavat lehekülge uue pealkirja alla teisaldada:",
"pt-movepage-block-base-exists": "Sihtkohaks määratud tõlgitav lehekülg \"[[:$1]]\" on olemas.",
@@ -113,8 +112,8 @@
"pt-movepage-action-perform": "Teisalda",
"pt-movepage-action-other": "Muuda sihtkohta",
"pt-movepage-intro": "See erilehekülg võimaldab teisaldada lehekülgi, mis on märgitud tõlkimiseks.\nToiming pole kohene, sest teisaldada tuleb palju lehekülgi.\nTeisaldamise ajal pole võimalik kõnealustel lehekülgedel midagi teha.\nNurjumised logitakse [[Special:Log/pagetranslation|lehekülgede tõlkelogisse]] ja need tuleb käsitsi parandada.",
- "pt-movepage-logreason": "Osa tõlgitavast leheküljest $1.",
- "pt-movepage-started": "See põhilehekülg on nüüd teisaldatud.\nPalun kontrolli, kas [[Special:Log/pagetranslation|lehekülgede tõlkelogis]] on tõrkeid ja teade lõpulejõudmise kohta.",
+ "pt-movepage-logreason": "Osa tõlgitavast leheküljest \"$1\"",
+ "pt-movepage-started": "Palun kontrolli natukese aja pärast, kas [[Special:Log/pagetranslation|lehekülgede tõlkelogis]] on tõrkeid ja teade lõpulejõudmise kohta.",
"pt-locked-page": "See lehekülg on lukus, sest tõlgitavat lehekülge teisaldatakse parasjagu.",
"pt-deletepage-lang-title": "Tõlkelehekülje \"$1\" kustutamine",
"pt-deletepage-full-title": "Tõlgitava lehekülje \"$1\" kustutamine",
@@ -134,14 +133,12 @@
"pt-deletepage-list-section": "Tõlkeüksuse leheküljed",
"pt-deletepage-list-other": "Muud alamlehed",
"pt-deletepage-list-count": "Kustutamisele {{PLURAL:$1|kuulub kokku üks lehekülg|kuuluvad kokku $1 lehekülge}}.",
- "pt-deletepage-full-logreason": "Osa tõlgitavast leheküljest $1.",
- "pt-deletepage-lang-logreason": "Osa tõlkeleheküljest $1.",
+ "pt-deletepage-full-logreason": "Osa tõlgitavast leheküljest \"$1\"",
+ "pt-deletepage-lang-logreason": "Osa tõlkeleheküljest \"$1\"",
"pt-deletepage-started": "Palun kontrolli, kas [[Special:Log/pagetranslation|lehekülgede tõlkelogis]] on tõrkeid ja teade lõpulejõudmise kohta.",
"pt-deletepage-intro": "See erilehekülg võimaldab kustutada terve tõlgitava lehekülje või ühe keele üksiku tõlkelehekülje.\nToiming pole kohene, sest kõik neist sõltuvad leheküljed kustutatakse samuti.\nNurjumised logitakse [[Special:Log/pagetranslation|lehekülgede tõlkelogisse]] ja need tuleb käsitsi parandada.",
"pm-import-button-label": "Impordi",
"pm-savepages-button-label": "Salvesta",
"pm-cancel-button-label": "Loobu",
- "pm-pagename-placeholder": "Sisesta lehe nimetus",
- "pm-langcode-placeholder": "Keelekood",
- "pm-pagetitle-invalid": "Palun sisesta korrektne lehekülje pealkiri"
+ "pm-pagetitle-invalid": "Palun sisesta korrektne lehekülje pealkiri. See peaks olema kujul <lehekülje-pealkiri>/<keelekood>."
}
diff --git a/MLEB/Translate/i18n/pagetranslation/eu.json b/MLEB/Translate/i18n/pagetranslation/eu.json
index bd44598e..a94aeb96 100644
--- a/MLEB/Translate/i18n/pagetranslation/eu.json
+++ b/MLEB/Translate/i18n/pagetranslation/eu.json
@@ -10,15 +10,16 @@
"pagetranslation": "Orrialdearen itzulpena",
"tpt-section-new": "Itzulpen unitate berria.\nIzena: $1",
"tpt-section-deleted": "$1 itzulpen unitatea",
- "tpt-template": "Orrialde txantiloia",
"tpt-diff-old": "Aurreko testua",
"tpt-diff-new": "Testu berria",
"tpt-edit-failed": "Ezin izan da orrialdea eguneratu: $1",
"tpt-select-prioritylangs-reason": "Arrazoia:",
+ "tpt-sections-prioritylangs": "Lehentasunezko hizkuntzak",
"tpt-rev-encourage": "Leheneratu",
"translate-tag-translate-link-desc": "Itzuli orri hau",
"tpt-languages-legend": "Beste hizkuntzak:",
"tpt-languages-nonzero": "$1 (%$2 itzulita)",
+ "tpt-tab-translate": "Itzuli",
"tpt-discouraged-language-reason": "Arrazoia: $1",
"tpt-aggregategroup-add": "Gehitu",
"tpt-aggregategroup-save": "Gorde",
@@ -30,17 +31,17 @@
"tpt-aggregategroup-update": "Gorde",
"tpt-aggregategroup-update-cancel": "Utzi",
"tpt-invalid-group": "Talde baliogabea",
- "pt-movepage-list-translation": "Itzulpen orrialdeak",
- "pt-movepage-list-other": "Bestelako azpiorrialdeak",
+ "pt-movepage-list-translation": "Itzulpen {{PLURAL:$1|orrialdea|orrialdeak}}",
+ "pt-movepage-list-other": "Bestelako azpi{{PLURAL:$1|orrialdea|orrialdeak}}",
"pt-movepage-current": "Oraingo izena:",
"pt-movepage-new": "Izen berria:",
"pt-movepage-reason": "Arrazoia:",
"pt-movepage-subpages": "Azpiorrialde guztiak mugitu",
"pt-deletepage-current": "Orriaren izena:",
"pt-deletepage-reason": "Arrazoia:",
+ "pm-import-button-label": "Inportatu",
"pm-savepages-button-label": "Gorde",
"pm-cancel-button-label": "Utzi",
- "pm-langcode-placeholder": "Hizkuntza-kodea",
"pm-page-does-not-exist": "$1 ez da existitzen.",
"pp-save-button-label": "Gorde"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/fa.json b/MLEB/Translate/i18n/pagetranslation/fa.json
index a767b331..829ab964 100644
--- a/MLEB/Translate/i18n/pagetranslation/fa.json
+++ b/MLEB/Translate/i18n/pagetranslation/fa.json
@@ -10,22 +10,22 @@
"Armin1392",
"Omid.koli",
"Alirezaaa",
- "Reza1615"
+ "Reza1615",
+ "Hosseinblue",
+ "Arian Ar",
+ "Ladsgroup"
]
},
"pagetranslation": "ترجمهٔ صفحه",
"right-pagetranslation": "علامت‌گذاری نسخه‌های صفحه برای ترجمه",
"action-pagetranslation": "مدیریت صفحه‌های ترجمه‌پذیر",
- "tpt-desc": "افزونه‌ای برای ترجمهٔ صفحه‌های محتوایی",
"tpt-section": "واحد ترجمهٔ $1",
- "tpt-section-new": "واحد جدید ترجمه.\nنام: $1",
+ "tpt-section-new": "واحد ترجمهٔ تازه.\nنام: $1",
"tpt-section-deleted": "واحد ترجمهٔ $1",
- "tpt-template": "قالب صفحه",
- "tpt-templatediff": "قالب صفحه تغییر کرده‌است.",
"tpt-diff-old": "متن قبلی",
"tpt-diff-new": "متن تازه",
"tpt-submit": "علامت‌گذاری این نسخه برای ترجمه",
- "tpt-sections-oldnew": "واحدهای تازه و موجود ترجمه",
+ "tpt-sections-oldnew": "واحدهای ترجمهٔ تازه و موجود",
"tpt-sections-deleted": "واحدهای حذف‌شدهٔ ترجمه",
"tpt-sections-template": "الگوی ترجمهٔ صفحه",
"tpt-action-nofuzzy": "عدم ابطال ترجمه‌ها",
@@ -33,100 +33,114 @@
"tpt-nosuchpage": "صفحهٔ $1 وجود ندارد",
"tpt-oldrevision": "$2 آخرین نسخهٔ صفحهٔ [[:$1]] نیست.\nفقط آخرین نسخه‌ها می‌توانند برای ترجمه علامت‌گذاری شوند.",
"tpt-notsuitable": "صفحهٔ $1 برای ترجمه مناسب نیست.\nمطمئن شوید برچسب <nowiki><translate></nowiki> و نحو مناسبی دارد.",
- "tpt-saveok": "صفحه [[:$1]] برای ترجمه با $2 {{PLURAL:$2|translation unit|translation units}} مشخص شده‌است.\nاکنون صفحه می‌تواند <span class=\"plainlinks\">[$3 ترجمه شده]</span> باشد.",
- "tpt-offer-notify": "شما می‌توانید <span class=\"plainlinks\">[$1 notify translators]</span> درباره این صفحه.",
- "tpt-badsect": "«$1» نام معتبری برای واحد ترجمهٔ $2 نیست.",
+ "tpt-saveok": "صفحه [[:$1]] برای ترجمه با $2 {{PLURAL:$2|واحد ترجمه}} مشخص شده‌است.\nاکنون صفحه می‌تواند <span class=\"plainlinks\">[$3 ترجمه شود]</span>.",
+ "tpt-offer-notify": "شما می‌توانید مترجمان را دربارهٔ این صفحه <span class=\"plainlinks\">[$1 خبر کنید]</span>.",
"tpt-showpage-intro": "در زیر،واحدهای ترجمه جدید، موجود و حذف شده، فهرست شده‌اند.\nقبل از نشانه‌گذاری این نسخه برای ترجمه، بررسی کنید که تغییرات به واحدهای ترجمه برای اجتناب از کار غیرضروری برای مترجمان، به کمترین حد رسیده‌ است.",
"tpt-mark-summary": "علامت‌گذاری این نسخه برای ترجمه",
- "tpt-edit-failed": "نتوانست صفحه را به روز رسانی کند: $1",
- "tpt-duplicate": "بیشتر از یک بار نام واحد ترجمهٔ $1 استفاده شده‌است.",
+ "tpt-mark-nochanges": "هیچ تغییری برای بازبینی وجود ندارد. علامت زدن این صفحه برای ترجمه باعث ویرایش صفحه یا هیچ واحد ترجمه موجودی نخواهد شد.",
+ "tpt-edit-failed": "ناتوان از به‌روزرسانی صفحه: $1",
+ "tpt-duplicate": "نام واحد ترجمهٔ $1 بیشتر از یک بار استفاده شده‌است.",
"tpt-already-marked": "آخرین نسخهٔ این صفحه برای ترجمه مشخص شده‌است.",
"tpt-unmarked": "صفحهٔ $1 دیگر برای ترجمه مشخص نشده‌است.",
"tpt-list-nopages": "هیچ صفحه‌ای برای ترجمه مشخص نشده یا برای ترجمه آماده علامت‌گذاری نیست.",
"tpt-new-pages-title": "صفحات پیشنهاد شده برای ترجمه",
- "tpt-old-pages-title": "صفحات در صفحه",
- "tpt-other-pages-title": "صفحات غلط",
- "tpt-discouraged-pages-title": "صفحات دلسرد",
- "tpt-new-pages": "{{PLURAL:$1|این صفحه شامل|این صفحات شامل}} متن با برچسب‌های ترجمه،\nاما هیچ نسخه‌ {{PLURAL:$1|این صفحه|این صفحات}} در حال حاضر برای ترجمه علامت‌گذاری نشده‌است.",
- "tpt-old-pages": "چند نسخه {{PLURAL:$1|این صفحه|این صفحات}} برای ترجمه علامت‌گذاری شده‌است.",
- "tpt-other-pages": "{{PLURAL:$1|ورژن قدیمی این صفحه|ورژن‌های قدیمی‌تر این صفحه}} برای ترجمه علامت‌گذاری شده‌اند،\nاما آخرین {{PLURAL:$1|نسخه|نسخه‌ها}} نمی‌توانند برای ترجمه علامت‌گذاری شوند.",
- "tpt-discouraged-pages": "{{PLURAL:$1|این صفحه|این صفحات}} از ترجمه بیشتر دلسرد شده‌اند.",
- "tpt-select-prioritylangs": "فهرست اولیه کدهای زبان جدا شده با کاما:",
- "tpt-select-prioritylangs-force": "جلوگیری از ترجمه‌ها به زبان‌های دیگر از زبان‌های اولویت",
+ "tpt-old-pages-title": "صفحات در حال ترجمه",
+ "tpt-other-pages-title": "صفحات خراب",
+ "tpt-discouraged-pages-title": "صفحات بازداشته",
+ "tpt-new-pages": "{{PLURAL:$1|این صفحه شامل|این صفحه‌ها شامل}} متن با برچسب‌های ترجمه هستند،\nاما هیچ نسخه‌ای از {{PLURAL:$1|این صفحه|این صفحه‌ها}} در حال حاضر برای ترجمه علامت‌گذاری نشده‌است.",
+ "tpt-old-pages": "چند نسخه از {{PLURAL:$1|این صفحه|این صفحه‌ها}} برای ترجمه علامت‌گذاری شده‌است.",
+ "tpt-other-pages": "{{PLURAL:$1|یک نسخهٔ قدیمی این صفحه|نسخه‌های قدیمی‌تر این صفحه‌ها}} برای ترجمه علامت‌گذاری {{PLURAL:$1|شده‌است|شده‌اند}}،\nاما آخرین {{PLURAL:$1|نسخه نمی‌تواند|نسخه‌ها نمی‌توانند}} برای ترجمه علامت‌گذاری {{PLURAL:$1|شود|شوند}}.",
+ "tpt-discouraged-pages": "{{PLURAL:$1|این صفحه|این صفحه‌ها}} از ترجمهٔ بیشتر بازداشته {{PLURAL:$1|شده‌است|شده‌اند}}.",
+ "tpt-select-prioritylangs": "فهرست کد زبان‌های دارای اولویت جدا شده با کاما:",
+ "tpt-select-prioritylangs-force": "جلوگیری از ترجمه به زبان‌هایی غیر از زبان‌های اولویت",
"tpt-select-prioritylangs-reason": "دلیل:",
- "tpt-sections-prioritylangs": "زبان‌های با اولویت بالا",
+ "tpt-sections-prioritylangs": "زبان‌های دارای اولویت",
"tpt-rev-mark": "علامت‌گذاری برای ترجمه",
"tpt-rev-unmark": "حذف از ترجمه",
- "tpt-rev-discourage": "دلسرد",
+ "tpt-rev-discourage": "بازداشتن",
"tpt-rev-encourage": "احیا",
"tpt-rev-mark-tooltip": "علامت‌گذاری آخرین نسخهٔ این صفحه برای ترجمه.",
"tpt-rev-unmark-tooltip": "حذف این صفحه از ترجمه.",
- "tpt-rev-discourage-tooltip": "دلسرد شدن از ترجمه‌های بیشتر در این صفحه",
+ "tpt-rev-discourage-tooltip": "بازاشتن از ترجمه‌های بیشتر در این صفحه.",
"tpt-rev-encourage-tooltip": "بازگرداندن این صفحه به ترجمه عادی.",
- "translate-tag-translate-link-desc": "ترجمهٔ این پروژه",
+ "translate-tag-translate-link-desc": "ترجمهٔ این صفحه",
"translate-tag-markthis": "علامت‌گذاری این صفحه برای ترجمه",
"translate-tag-markthisagain": "این صفحه از آخرین باری که <span class=\"plainlinks\">[$2 برای ترجمه علامت‌گذاری]</span> شده بود <span class=\"plainlinks\">[$1 تغییراتی]</span> داشته است.",
- "translate-tag-hasnew": "این صفحه شامل <span class=\"plainlinks\">[$1 changes]</span> است که برای ترجمه علامت‌گذاری نشده‌اند.",
- "tpt-translation-intro": "این صفحه <span class=\"plainlinks\">[$1 نسخهٔ ترجمه‌شدهٔ]</span> صفحهٔ [[$2]] است و ترجمهٔ آن $3٪ کامل شده‌است.",
+ "translate-tag-hasnew": "این صفحه شامل <span class=\"plainlinks\">[$1 تغییراتی]</span> است که برای ترجمه علامت‌گذاری نشده‌اند.",
+ "tpt-translation-intro": "این صفحه <span class=\"plainlinks\">[$1 نسخهٔ ترجمه‌شدهٔ]</span> صفحهٔ [[$2]] است و ترجمهٔ آن ٪$3 کامل شده‌است.",
+ "tpt-translation-intro-fuzzy": "ترجمه‌های تاریخ‌گذشته این گونه مشخص می‌شوند.",
"tpt-languages-legend": "زبان‌های دیگر:",
"tpt-languages-zero": "شروع ترجمه برای این زبان",
- "tpt-languages-nonzero": "$1 ($2% ترجمه‌شده)",
+ "tpt-languages-nonzero": "$1 ($2٪ ترجمه‌شده)",
"tpt-tab-translate": "ترجمه",
"tpt-target-page": "این صفحه به صورت دستی به روز نمی‌شود.\nاین صفحه یک ترجمه‌ای از صفحهٔ [[$1]] است و ترجمه را می‌توان از طریق [$2 ابزار ترجمه] به روز کرد.",
- "tpt-unknown-page": "این فضای نام برای محتوای صفحه ترجمه‌ها محفوظ شده‌است.\nصفحه‌ای که شما سعی به ویرایش آن دارید، به نظر نمی‌رسد با هر صفحه علامت‌گذاری شده برای ترجمه مطابقت داشته باشد.",
- "tpt-translation-restricted": "ترجمه این صفحه به این زبان توسط یک سرپرست ترجمه منع شده‌است.\nدلیلː $1",
- "tpt-discouraged-language-force": "<strong> این صفحه نمی‌تواند به $2 ترجمه شود.</strong>\nسرپرست ترجمه تصمیم گرفت که این صفحه می‌تواند تنها به $3 ترجمه شود.",
- "tpt-discouraged-language": "<strong> ترجمه به $2 اولویت برای این صفحه نیست.<strong>\nسرپرست ترجمه تصمیم به تمرکز تلاش‌های ترجمه بر روی $3 گرفت.",
+ "tpt-patrolling-blocked": "این صفحه را نمی‌توان گشت زد. به جای آن عملکردهای ترجمه را استفاده کنید تا آن را بازبینی کنید.",
+ "tpt-unknown-page": "این فضای نام برای محتوای صفحه ترجمه‌ها محفوظ شده‌است.\nصفحه‌ای که شما سعی به ویرایش آن دارید، به نظر نمی‌رسد با هیچ صفحه‌ای که برای ترجمه علامت‌گذاری شده مطابقت داشته باشد.",
+ "tpt-translation-restricted": "ترجمه این صفحه به این زبان توسط یک مدیر ترجمه منع شده‌است.\n\nدلیل: $1",
+ "tpt-discouraged-language-force-header": "این صفحه را نمی‌توان به $1 ترجمه کرد.",
+ "tpt-discouraged-language-force-content": "یک مدیر ترجمه تصمیم گرفته که این صفحه تنها به $1 ترجمه‌پذیر باشد.",
+ "tpt-discouraged-language-header": "ترجمه به $1 برای این صفحه اولویت ندارد.",
+ "tpt-discouraged-language-content": "یک مدیر ترجمه تصمیم گرفته که تلاش‌های ترجمه را به $1 متمرکز کند.",
+ "tpt-discouraged-language-force": "<strong> این صفحه نمی‌تواند به $2 ترجمه شود.</strong>\n\nمدیر ترجمه تصمیم گرفت که این صفحه می‌تواند تنها به $3 ترجمه شود.",
+ "tpt-discouraged-language": "<strong> ترجمه به $2 اولویتی برای این صفحه نیست.<strong>\n\nمدیر ترجمه تصمیم به تمرکز تلاش‌های ترجمه بر روی $3 گرفت.",
"tpt-discouraged-language-reason": "دلیل: $1",
- "tpt-priority-languages": "سرپرست ترجمه اولویت زبان‌ها را برای این گروه به $1 تنظیم کرده‌است.",
+ "tpt-priority-languages": "مدیر ترجمه اولویت زبان‌ها را برای این گروه به $1 تنظیم کرده‌است.",
"tpt-render-summary": "به روز رسانی برای مطابقت نسخه تازه صفحه منبع",
- "tpt-download-page": "صادر کردن صفحه با ترجمه‌ها",
- "aggregategroups": "گروه‌های انبوه",
+ "aggregategroups": "گروه‌های تجمیعی",
"tpt-aggregategroup-add": "افزودن",
"tpt-aggregategroup-save": "ذخیره",
- "tpt-aggregategroup-add-new": "افزودن گروه تازه جمع‌شده",
+ "tpt-aggregategroup-add-new": "افزودن گروه تجمیعی تازه",
"tpt-aggregategroup-new-name": "نام:",
"tpt-aggregategroup-new-description": "توضیحات (اختیاری):",
- "tpt-aggregategroup-remove-confirm": "آیا مطمئن هستید که می‌خواهید این گروه جمع شده را حذف کنید؟",
+ "tpt-aggregategroup-remove-confirm": "آیا مطمئن هستید که می‌خواهید این گروه تجمیعی را حذف کنید؟",
"tpt-aggregategroup-invalid-group": "گروه وجود ندارد",
"tpt-aggregategroup-edit-name": "نام:",
- "tpt-aggregategroup-edit-description": "شرح:",
+ "tpt-aggregategroup-edit-description": "توضیحات:",
"tpt-aggregategroup-update": "ذخیره",
"tpt-aggregategroup-update-cancel": "انصراف",
"tpt-invalid-group": "گروه نامعتبر",
- "pt-parse-open": "نامتعادل و‌ ال‌تی؛ ترجمه> برچسب.\nالگو ترجمهː <pre>$1</pre>",
- "pt-parse-close": "نامتعادل &lt; /ترجمه > برچسب.\nالگو ترجمه: <pre>$1</pre>",
- "pt-parse-nested": "تو در تو &lt; ترجمه> واحدهای ترجمه مجاز نیست.\nبرچسب متن: <pre>$1</pre>",
- "pt-shake-multiple": "چند نشانگر واحد ترجمه برای یک واحد ترجمه.\nمتن واحد ترجمهː <pre>$1</pre>",
- "pt-shake-position": "نشانگرهای واحد ترجمه در وضعیت غیرمنتظره.\nمتن واحد ترجمهː <pre>$1</pre>",
- "pt-shake-empty": "واحد ترجمه خالی برای نشانگر \"$1\".",
+ "pt-parse-open": "برچسب &lt;translate> نامتعادل.\nالگوی ترجمه: <pre>$1</pre>",
+ "pt-parse-close": "برچسب &lt;/translate> نامتعادل\nالگو ترجمه: <pre>$1</pre>",
+ "pt-parse-nested": "واحدهای ترجمهٔ &lt;translate> تودرتو مجاز نیست.\nبرچسب متن: <pre>$1</pre>",
+ "pt-shake-multiple": "چند نشانگر واحد ترجمه برای یک واحد ترجمه.\nمتن واحد ترجمه: <pre>$1</pre>",
+ "pt-shake-position": "نشانگرهای واحد ترجمه در موقعیت غیرمنتظره.\nمتن واحد ترجمه: <pre>$1</pre>",
+ "pt-shake-empty": "واحد ترجمه خالی برای نشانگر «$1».",
"log-description-pagetranslation": "سیاههٔ اعمال مربوط به سامانهٔ ترجمهٔ صفحه",
"log-name-pagetranslation": "سیاههٔ ترجمهٔ صفحه",
- "logentry-pagetranslation-mark": "$1 {{GENDER:$2|غلامت‌گذاری شده}} $3 برای ترجمه",
- "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|حذف شده}} $3 از ترجمه",
- "logentry-pagetranslation-moveok": "$1 {{GENDER:$2|کامل شده}} تغییر نام صفحه قابل ترجمه $3 به $4",
- "logentry-pagetranslation-movenok": "$1 {{GENDER:$2|مواجه شده}} یک مشکل هنگام حرکت صفحه $3 به $4",
- "logentry-pagetranslation-deletefok": "$1 {{GENDER:$2|کامل شده}} حذف صفحه قابل ترجمه $3",
- "logentry-pagetranslation-deletefnok": "$1 {{GENDER:$2|عدم موفقیت}} برای حذف $3 که به ترجمه صفحه $4 متعلق است",
- "logentry-pagetranslation-deletelok": "$1 {{GENDER:$2|کامل شده}} حذف صفحه ترجمه $3",
- "logentry-pagetranslation-deletelnok": "$1 {{GENDER:$2|عدم موفقیت}} برای حذف $3 که به ترجمه صفحه $4 تعلق دارد",
- "logentry-pagetranslation-encourage": "$1 {{GENDER:$2|ترغیب کرده}} ترجمه $3",
- "logentry-pagetranslation-discourage": "$1 {{GENDER:$2|دلسرد کرده}} ترجمه $3",
- "logentry-pagetranslation-prioritylanguages-unset": "$1 {{GENDER:$2|حذف شده}} اولویت‌های زبان‌ها از صفحه قابل ترجمه $3",
- "logentry-pagetranslation-prioritylanguages": "$1 {{GENDER:$2|تنظیم}} اولویت زبان‌ها برای صفحه قابل ترجمه $3 به $5",
- "logentry-pagetranslation-prioritylanguages-force": "$1 {{GENDER:$2|نحدود شده}} زبان‌ها برای صفحه قابل ترجمه $3 به $5",
- "logentry-pagetranslation-associate": "$1 {{GENDER:$2|افزوده شده}} صفحه قابل ترجمه $3 برای جمع کردن گروه $4",
- "logentry-pagetranslation-dissociate": "$1 {{GENDER:$2|حذف شده}} صفحه قابل ترجمه $3 از گروه جمع شده $4",
- "pt-movepage-title": "انتقال صفحهٔ ترجمه \"$1\"",
+ "logentry-pagetranslation-mark": "$1 $3 را برای ترجمه {{GENDER:$2|علامت‌گذاری کرد}}",
+ "logentry-pagetranslation-unmark": "$1 $3 را از ترجمه {{GENDER:$2|حذف کرد}}",
+ "logentry-pagetranslation-moveok": "$1$1 تغییر نام صفحه قابل ترجمه از $3 به $4 را {{GENDER:$2|کامل کرد}}",
+ "logentry-pagetranslation-movenok": "$1 هنگام انتقال صفحه $3 به $4 به مشکل {{GENDER:$2|برخورد}}",
+ "logentry-pagetranslation-deletefok": "$1 حذف صفحه قابل ترجمه $3 را {{GENDER:$2|کامل کرد}}",
+ "logentry-pagetranslation-deletefnok": "$1 در حذف $3 که به صفحهٔ قابل ترجمهٔ $4 متعلق است {{GENDER:$2|شکست خورد}}",
+ "logentry-pagetranslation-deletelok": "$1 حذف صفحهٔ ترجمهٔ $3 را {{GENDER:$2|کامل کرد}}",
+ "logentry-pagetranslation-deletelnok": "$1 در حذف $3 که به ترجمهٔ صفحهٔ $4 تعلق دارد {{GENDER:$2|شکست خورد}}",
+ "logentry-pagetranslation-encourage": "$1 ترجمهٔ $3 را {{GENDER:$2|ترغیب کرد}}",
+ "logentry-pagetranslation-discourage": "$1 ترجمه $3 را {{GENDER:$2|بازداشت}}",
+ "logentry-pagetranslation-prioritylanguages-unset": "$1 اولویت‌های زبان را از صفحهٔ قابل ترجمهٔ $3 {{GENDER:$2|حذف کرد}}",
+ "logentry-pagetranslation-prioritylanguages": "$1 اولویت‌های زبان را برای صفحه قابل ترجمه $3 به $5 {{GENDER:$2|تنظیم کرد}}",
+ "logentry-pagetranslation-prioritylanguages-force": "$1 زبان‌های صفحهٔ قابل ترجمهٔ $3 را به $5 {{GENDER:$2|محدود کرد}}",
+ "logentry-pagetranslation-associate": "$1 صفحهٔ قابل ترجمهٔ $3 را به گروه تجمیعی $4 {{GENDER:$2|افزود}}",
+ "logentry-pagetranslation-dissociate": "$1 صفحهٔ قابل ترجمهٔ $3 را از گروه تجمیعی $4 {{GENDER:$2|حذف کرد}}",
+ "log-action-filter-pagetranslation": "نوع عمل:",
+ "log-action-filter-pagetranslation-mark": "علامت‌زدن برای ترجمه",
+ "log-action-filter-pagetranslation-unmark": "حذف از ترجمه",
+ "log-action-filter-pagetranslation-move": "انتقال صفحه‌ها",
+ "log-action-filter-pagetranslation-delete": "حذف صفحه‌ها",
+ "log-action-filter-pagetranslation-encourage": "تشویق به ترجمه",
+ "log-action-filter-pagetranslation-discourage": "بازداشتن از ترجمه",
+ "log-action-filter-pagetranslation-prioritylanguages": "تغییر زبان‌های اولویت",
+ "log-action-filter-pagetranslation-aggregategroups": "تغییر گروه‌های تجمیعی",
+ "pt-movepage-title": "انتقال صفحهٔ قابل ترجمهٔ «$1»",
"pt-movepage-blockers": "صفحه قابل ترجمه نمی‌تواند به دلیل {{PLURAL:$1|خطا|خطاهای}} زیر به یک نام جدید منتقل شودː",
"pt-movepage-block-base-exists": "صفحهٔ قابل ترجمهٔ مورد نظر \"[[:$1]]\" وجود دارد.",
"pt-movepage-block-base-invalid": "نام صفحهٔ قابل ترجمهٔ مورد نظر یک عنوان معتبر نیست.",
- "pt-movepage-block-tp-exists": "صفحهٔ ترجمهٔ مورد نظر \"[[:$2]]\" وجود دارد.",
- "pt-movepage-block-tp-invalid": "عنوان صفحهٔ ترجمه مورد نظر برای \"[[:$1]]\" نامعتبر می‌باشد (بسیار طولانی؟)",
- "pt-movepage-block-section-exists": "صفحهٔ مورد نظر \"[[:$2]]\" برای واحد ترجمه وجود دارد.",
- "pt-movepage-block-section-invalid": "عنوان صفحه مورد نطر برای \"[[:$1]]\" برای واحد ترجمه معتبر نخواهد بود (بسیار طولانی؟).",
- "pt-movepage-block-subpage-exists": "زیر صفحه موردنظر \"[[:$2]]\" وجود دارد.",
- "pt-movepage-block-subpage-invalid": "عنوان زیرصفحه موردنظر برای \"[[:$1]]\" معتبر نخواهد بود (بسیار طولانی؟).",
+ "pt-movepage-block-tp-exists": "صفحهٔ ترجمهٔ مورد نظر «[[:$2]]» وجود دارد.",
+ "pt-movepage-block-tp-invalid": "عنوان صفحهٔ ترجمهٔ هدف برای «[[:$1]]» نامعتبر است (بیش از حد طولانی؟).",
+ "pt-movepage-block-section-exists": "صفحهٔ هدف «[[:$2]]» برای واحد ترجمه وجود دارد.",
+ "pt-movepage-block-section-invalid": "عنوان صفحهٔ هدف برای «[[:$1]]» برای واحد ترجمه معتبر نخواهد بود (بیش از حد طولانی؟).",
+ "pt-movepage-block-subpage-exists": "زیر صفحهٔ هدف «[[:$2]]» وجود دارد.",
+ "pt-movepage-block-subpage-invalid": "عنوان زیرصفحه موردنظر برای «[[:$1]]» معتبر نخواهد بود (بیش از حد طولانی؟).",
"pt-movepage-list-pages": "فهرست صفحات برای انتقال",
"pt-movepage-list-translation": "{{PLURAL:$1|صفحهٔ|صفحه‌های}} ترجمه",
"pt-movepage-list-section": "{{PLURAL:$1|صفحهٔ|صفحه‌های}} واحد ترجمه",
@@ -140,15 +154,15 @@
"pt-movepage-action-check": "بررسی کن که انتقال ممکن باشد",
"pt-movepage-action-perform": "منتقل کن",
"pt-movepage-action-other": "تغییر هدف",
- "pt-movepage-intro": "این صفحه خاص به شما برای حذف صفحاتی که برای ترجمه مشخص شده‌اند اجازه می دهد.\nبه دلیل صفحات بسیار که نیاز به انتقال خواهند داشت، عمل انتقال فوری نخواهد‌بود.\nهنگامی که صفحات منتقل می‌شوند, امکان ارتباط برقرار کردن با صفحات در سوال نیست.\nشکست‌ها در [[Special:Log/pagetranslation|سیاهه صفحه ترجمه]] وارد خواهند‌شد و آنها نیاز به تعمیر با دست دارند.",
- "pt-movepage-logreason": "قسمتی از صفحه ترجمه \"$1\".",
- "pt-movepage-started": "صفحه پایه منتقل نشده‌است.\nلطفاً [[Special:Log/pagetranslation|سیاهه صفحه ترجمه]] را برای خطاها و پیام تکمیل بررسی کنید.",
+ "pt-movepage-intro": "این صفحه خاص به شما برای حذف صفحاتی که برای ترجمه مشخص شده‌اند اجازه می دهد.\nبه دلیل صفحات بسیار که نیاز به انتقال خواهند داشت، عمل انتقال فوری نخواهد‌بود.\nهنگامی که صفحات منتقل می‌شوند، امکان ارتباط برقرار کردن با صفحات در سوال نیست.\nشکست‌ها در [[Special:Log/pagetranslation|سیاهه صفحه ترجمه]] وارد خواهند‌شد و نیاز به تعمیر با دست دارند.",
+ "pt-movepage-logreason": "قسمتی از صفحهٔ قابل ترجمه «$1»",
+ "pt-movepage-started": "لطفاً گاهی [[Special:Log/pagetranslation|سیاهه صفحه ترجمه]] را برای خطاها و تکمیل پیام بررسی کنید.",
"pt-locked-page": "این صفحه قفل شده‌است زیرا صفحه قابل ترجمه در حال حاضر منتقل شده‌است.",
- "pt-deletepage-lang-title": "حذف صفحه ترجمه \"$1\".",
- "pt-deletepage-full-title": "حذف صفحه ترجمه \"$1\".",
+ "pt-deletepage-lang-title": "حذف صفحهٔ ترجمهٔ «$1»",
+ "pt-deletepage-full-title": "حذف صفحهٔ قابل ترجمهٔ «$1»",
"pt-deletepage-invalid-title": "صفحه مشخص شده معتبر نیست.",
"pt-deletepage-invalid-text": "صفحه مشخص شده نه یک صفحه قابل ترجمه است نه یک صفحه ترجمه.",
- "pt-deletepage-action-check": "فهرست صفحات برای حذف",
+ "pt-deletepage-action-check": "فهرست صفحه‌ها برای حذف",
"pt-deletepage-action-perform": "انجام حذف",
"pt-deletepage-action-other": "تغییر هدف",
"pt-deletepage-lang-legend": "حذف صفحهٔ ترجمه",
@@ -162,16 +176,45 @@
"pt-deletepage-list-section": "صفحه‌های واحد ترجمه",
"pt-deletepage-list-other": "زیرصفحه‌های دیگر",
"pt-deletepage-list-count": "در کل $1 {{PLURAL:$1|صفحه|صفحه}} حذف می‌شوند.",
- "pt-deletepage-full-logreason": "قسمتی از صفحهٔ ترجمه \"$1\".",
- "pt-deletepage-lang-logreason": "قسمتی از صفحهٔ ترجمه \"$1\".",
+ "pt-deletepage-full-logreason": "قسمتی از صفحهٔ قابل ترجمه «$1».",
+ "pt-deletepage-lang-logreason": "قسمتی از ترجمه «$1»",
"pt-deletepage-started": "لطفاً [[Special:Log/pagetranslation|سیاهه صفحه ترجمه]] را برای خطاها و پیام تکمیل بررسی کنید.",
- "pt-deletepage-intro": "این صفحه خاص به شما برای حذف تمام یک صفحه ترجمه ،یا یک صفحه ترجمه فردی در یک زبان اجازه می‌دهد.\nبه دلیل صفحات بسیار که در حال انتظار برای حذف خواهند بود، عمل حذف فوری نخواهد‌بود.\nهنگامی که صفحات منتقل می‌شوند, امکان ارتباط برقرار کردن با صفحات در سوال نیست.\nشکست‌ها در [[Special:Log/pagetranslation|سیاهه صفحه ترجمه]] وارد خواهند‌شد و آنها نیاز به تعمیر با دست دارند.",
+ "pt-deletepage-intro": "این صفحه خاص به شما اجازه می‌دهد تمام یک صفحهٔ ترجمه، یا یک صفحهٔ ترجمهٔ منفرد را حذف کنید.\nعمل حذف فوری نخواهد‌بود زیرا تمام صفحه‌های وابسته به آن‌ها نیز باید حذف شوند.\nشکست‌ها در [[Special:Log/pagetranslation|سیاههٔ صفحهٔ ترجمه]] وارد خواهند‌شد و نیاز به تعمیر دستی خواهند داشت.",
+ "pagemigration": "مهاجرت صفحهٔ ترجمه",
+ "pagemigration-summary": "یک صفحهٔ ترجمه را مشخص کنید و تمام ترجمه‌هایی برای آن صفحه را که پیش از فعال شدن سامانهٔ ترجمه انجام شده‌اند احیا کنید.",
"pm-import-button-label": "درون‌ریزی شود",
"pm-savepages-button-label": "ذخیره",
"pm-cancel-button-label": "انصراف",
- "pm-langcode-placeholder": "کد زبان",
"pm-page-does-not-exist": "$1 وجود ندارد.",
- "pm-pagetitle-invalid": "لطفا یک عنوان صفحه معتبر وارد کنید",
+ "pm-old-translations-missing": "$1 دارای ترجمه‌های قدیمی نیست.",
+ "pm-extra-units-warning": "واحدهای بیشتری ممکن است موجود باشند. لطفاً واحدهای منبع و ترجمه را به درستی تطبیق بدهید.",
+ "pm-pagename-missing": "لطفاً نام صفحه را وارد کنید.",
+ "pm-add-icon-hover-text": "واحدی در زیر اضافه کنید",
+ "pm-swap-icon-hover-text": "واحدی را در زیر جایگزین کنید",
+ "pm-delete-icon-hover-text": "حذف واحد",
+ "pm-pagetitle-placeholder": "نام صفحه را وارد کنید",
+ "pm-pagetitle-invalid": "لطفا یک عنوان صفحهٔ معتبر وارد کنید. عنوان باید دارای قالب <عنوان-صفحه>/<کد-زبان> باشد.",
+ "pm-pagetitle-missing": "عنوان صفحه را وارد کنید.",
+ "pm-langcode-missing": "به نظر می‌رسد کد زبان از عنوان جا افتاده باشد. عنوان باید دارای قالب <عنوان-صفحه>/<کد-زبان> باشد.",
"pm-summary-import": "ترجمه با استفاده از [[Special:PageMigration|مهاجرت صفحه]] وارد شده‌است",
- "pp-save-button-label": "ذخیره"
+ "pm-on-import-message-text": "ترجمه‌های قدیمی درون‌ریزی شدند. از گزینه‌های افزودن، جایگزینی و حذف استفاده کنید تا واحدهای ترجمه را تنظیم کنید و روی «{{int:pm-savepages-button-label}}» کلیک کنید تا ذخیره‌شان کنید. روی «{{int:pm-cancel-button-label}}» کلیک کنید تا تغییرات دور انداخته شوند.",
+ "pm-on-save-message-text": "واحدهای ترجمه ذخیره شدند. اکنون شما می‌توانید عنوان یک صفحهٔ ترجمه را وارد کنید تا منتقلش کنید، یا در واحدهای ترجمهٔ زیر تغییری ایجاد کنید و نسخهٔ جدیدی را ذخیره کنید.",
+ "tpt-translate-title": "اجازهٔ ترجمهٔ عنوان صفحه را بدهید",
+ "pp-save-summary": "صفحه را برای ترجمه آماده کرد",
+ "pagepreparation": "صفحه را برای ترجمه آماده کنید",
+ "pp-pagename-placeholder": "نام صفحه را وارد کنید",
+ "pp-prepare-button-label": "آماده‌سازی",
+ "pp-save-button-label": "ذخیره",
+ "pp-cancel-button-label": "انصراف",
+ "pp-save-message": "صفحه ذخیره شد. شما می‌توانید آن را [$1 ویرایش کنید].",
+ "pp-prepare-message": "صفحه برای ترجمه آماده شد. تفاوت زیر را ببینید. اگر همه چیز درست است روی دکمهٔ «{{int:pp-save-button-label}}» در زیر کلیک کنید!",
+ "pp-already-prepared-message": "به نظر می‌رسد صفحه پیش از این برای ترجمه آماده شده باشد. هیچ تغییری نسبت به نسخهٔ قبلی وجود ندارد.",
+ "pp-pagename-missing": "لطفاً نام صفحه را وارد کنید.",
+ "pp-diff-old-header": "متن منبع",
+ "pp-diff-new-header": "متن آماده‌شده",
+ "tpt-unlink-confirm": "لطفاً تایید کنید که واقعاً می‌خواهید این صفحه را از سامانهٔ ترجمه حذف کنید.\nانتخابگر زبان و عنوان‌های ترجمه شده از کار خواهند افتاد.\nصفحه‌های ترجمه قابل ویرایش خواهند شد.",
+ "tpt-unlink-button": "حذف از ترجمه",
+ "tpt-unlink-summary": "حذف صفحه از ترجمه",
+ "tpt-generic-confirm": "لطفا این اقدام را تایید کنید.",
+ "tpt-generic-button": "تأیید"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/fi.json b/MLEB/Translate/i18n/pagetranslation/fi.json
index 6668d76f..4d6f16fc 100644
--- a/MLEB/Translate/i18n/pagetranslation/fi.json
+++ b/MLEB/Translate/i18n/pagetranslation/fi.json
@@ -11,18 +11,17 @@
"Silvonen",
"VezonThunder",
"ZeiP",
- "Pxos"
+ "Pxos",
+ "Valtlait",
+ "Pyscowicz"
]
},
"pagetranslation": "Sivujen kääntäminen",
"right-pagetranslation": "Merkitä sivuja käännettäviksi",
"action-pagetranslation": "hallita käännettäviä sivuja",
- "tpt-desc": "Laajennus sisältösivujen kääntämiseen.",
"tpt-section": "Käännösosio $1",
"tpt-section-new": "Uusi käännösosio.\nNimi: $1",
"tpt-section-deleted": "Käännösosio $1",
- "tpt-template": "Sivun mallipohja",
- "tpt-templatediff": "Sivun mallipohja on muuttunut.",
"tpt-diff-old": "Aikaisempi teksti",
"tpt-diff-new": "Uusi teksti",
"tpt-submit": "Merkitse tämä versio käännettäväksi",
@@ -36,10 +35,9 @@
"tpt-notsuitable": "Sivu $1 ei sovellu käännettäväksi.\nVarmista, että sivu sisältää &lt;translate>-merkinnät ja että siinä ei ole ole syntaksivirheitä.",
"tpt-saveok": "Sivu [[:$1]] on merkitty käännettäväksi ja se sisältää $2 {{PLURAL:$2|käännösosion|käännösosiota}}.\nSivu voidaan nyt <span class=\"plainlinks\">[$3 kääntää]</span>.",
"tpt-offer-notify": "Voit <span class=\"plainlinks\">[$1 lähettää ilmoituksen kääntäjille]</span> tästä sivusta.",
- "tpt-badsect": "”$1” ei ole kelpo nimi käännösosiolle $2.",
"tpt-showpage-intro": "Alempana listattu uusia, olemassa olevia ja poistettuja osioita.\nEnnen kuin merkitset tämän version käännettäväksi, tarkista että muutokset osioihin ovat mahdollisimman vähäisiä, jotta kääntäjille ei aiheudu tarpeetonta työtä.",
"tpt-mark-summary": "Tämä versio merkittiin käännettäväksi",
- "tpt-mark-nochanges": "Tämän version ja edellisen käännettäväksi merkitän version välillä ei ole eroa.",
+ "tpt-mark-nochanges": "Ei tarkistettavia muutoksia. Tämän sivun merkitseminen käännettäväksi ei muokkaa sivua eikä olemassa olevia käännösyksiköitä.",
"tpt-edit-failed": "Sivun päivittäminen epäonnistui: $1",
"tpt-duplicate": "Käännösosion nimeä $1 on käytetty useammin kuin kerran.",
"tpt-already-marked": "Viimeisin versio tästä sivusta on jo merkitty käännettäväksi.",
@@ -70,11 +68,13 @@
"translate-tag-markthisagain": "Tähän sivuun on tehty <span class=\"plainlinks\">[$1 muutoksia]</span> sen jälkeen kun se viimeksi <span class=\"plainlinks\">[$2 merkittiin käännettäväksi]</span>.",
"translate-tag-hasnew": "Tämä sivu sisältää <span class=\"plainlinks\">[$1 muutoksia],</span> joita ei ole merkitty käännettäväksi.",
"tpt-translation-intro": "Tämä on <span class=\"plainlinks\">[$1 käännetty versio]</span> sivusta [[$2]], ja käännös on $3 % valmis.",
+ "tpt-translation-intro-fuzzy": "Vanhentuneet käännökset on merkitty näin.",
"tpt-languages-legend": "Muut kielet:",
"tpt-languages-zero": "Aloita käännös tälle kielelle",
"tpt-languages-nonzero": "$1 ($2 % käännetty)",
"tpt-tab-translate": "Käännä",
"tpt-target-page": "Tätä sivua ei voi muokata tavalliseen tapaan.\nTämä sivu on käännös sivusta [[$1]] ja käännöstä voi päivittää käyttämällä [$2 käännöstyökalua].",
+ "tpt-patrolling-blocked": "Tätä sivua ei voi tarkastaa. Käytä käännöstyökalua sen oikolukemiseen.",
"tpt-unknown-page": "Tämä nimiavaruus on varattu sisältösivujen käännöksille.\nSivu, jota yrität muokata, ei näytä vastaavan mitään sivua, joka on merkitty käännettäväksi.",
"tpt-translation-restricted": "Käännösylläpitäjä on estänyt tämän sivun kääntämisen tälle kielelle.\n\nSyy: $1",
"tpt-discouraged-language-force-header": "Tätä sivua ei voi kääntää kielelle $1.",
@@ -86,7 +86,6 @@
"tpt-discouraged-language-reason": "Syy: $1",
"tpt-priority-languages": "Käännösylläpitäjä on asettanut tämän ryhmän ensisijaisiksi käännöskieliksi $1.",
"tpt-render-summary": "Päivitetty vastaamaan uutta versiota lähdesivusta",
- "tpt-download-page": "Sivun vienti käännösten kera",
"aggregategroups": "Kokoelmaryhmät",
"tpt-aggregategroup-add": "Lisää",
"tpt-aggregategroup-save": "Tallenna",
@@ -118,14 +117,26 @@
"logentry-pagetranslation-deletelnok": "$1 {{GENDER:$2|epäonnistui}} käännössivuun $4 liittyvän sivun $3 poistamisessa",
"logentry-pagetranslation-encourage": "$1 {{GENDER:$2|kumosi}} sivun $3 käännösrajoituksen",
"logentry-pagetranslation-discourage": "$1 {{GENDER:$2|rajoitti}} sivun $3 kääntämistä",
+ "logentry-pagetranslation-prioritylanguages-unset": "$1 {{GENDER:$2|poisti}} ensisijaiset kielet käännettävästä sivusta $3",
+ "logentry-pagetranslation-prioritylanguages": "$1 {{GENDER:$2|asetti}} käännettävän sivun $3 ensisijaiset käännöskielet arvoon $5",
+ "logentry-pagetranslation-prioritylanguages-force": "$1 {{GENDER:$2|asetti}} käännettävän sivun $3 ainoat sallitus käännöskielet arvoon $5",
+ "logentry-pagetranslation-associate": "$1 {{GENDER:$2|lisäsi}} käännettävän sivun $3 kokoelmaryhmään $4",
+ "logentry-pagetranslation-dissociate": "$1 {{GENDER:$2|poisti}} käännettävän sivun $3 kokoelmaryhmästä $4",
+ "log-action-filter-pagetranslation": "Toiminnon tyyppi:",
+ "log-action-filter-pagetranslation-mark": "Merkitty käännettäväksi",
+ "log-action-filter-pagetranslation-unmark": "Poistettu käännettävistä sivuista",
+ "log-action-filter-pagetranslation-move": "Siirto",
+ "log-action-filter-pagetranslation-delete": "Poisto",
+ "log-action-filter-pagetranslation-prioritylanguages": "Ensisijaisten kielten muuttaminen",
+ "log-action-filter-pagetranslation-aggregategroups": "Koottavien ryhmien muuttaminen",
"pt-movepage-title": "Käännettävän sivun $1 siirtäminen",
"pt-movepage-blockers": "Käännettävää sivua ei voi siirtää uudelle nimelle {{PLURAL:$1|seuraavasta syystä|seuraavista syistä}}:",
- "pt-movepage-block-base-exists": "Kohdesivu [[:$1]] on olemassa.",
- "pt-movepage-block-base-invalid": "Kohdesivun nimi ei ole kelvollinen.",
+ "pt-movepage-block-base-exists": "Käännettävä sivu [[:$1]] on olemassa.",
+ "pt-movepage-block-base-invalid": "Käännettävän sivun nimi ei ole kelvollinen.",
"pt-movepage-block-tp-exists": "Käännössivu [[:$2]] on olemassa.",
"pt-movepage-block-tp-invalid": "Käännössivun [[:$1]] uusi nimi ei ole kelvollinen (liian pitkä?)",
- "pt-movepage-block-section-exists": "Käännösosiosivu [[:$2]] on olemassa.",
- "pt-movepage-block-section-invalid": "Käännösosiosivun [[:$1]] uusi nimi ei ole kelvollinen (liian pitkä?)",
+ "pt-movepage-block-section-exists": "Käännösosiosivu \"[[:$2]]\" käännöselementille on olemassa.",
+ "pt-movepage-block-section-invalid": "Kohdesivun otsikko käännösosiosivulle \"[[:$1]]\" ei ole kelvollinen (liian pitkä?)",
"pt-movepage-block-subpage-exists": "Alasivu [[:$2]] on olemassa.",
"pt-movepage-block-subpage-invalid": "Alasivun [[:$1]] uusi nimi ei ole kelvollinen (liian pitkä?)",
"pt-movepage-list-pages": "Lista siirrettävistä sivuista",
@@ -142,11 +153,11 @@
"pt-movepage-action-perform": "Tee siirto",
"pt-movepage-action-other": "Vaihda kohde",
"pt-movepage-intro": "Tällä toimintosivulla voit siirtää käännettäväksi merkittyjä sivuja.\nSiirto ei tapahdu heti, koska useita sivuja täytyy siirtää.\nSivut ovat lukittuna siirron ajan.\nEpäonnistuneet siirrot tallennetaan [[Special:Log/pagetranslation|sivunkääntölokiin]] ja ne täytyy korjata käsin.",
- "pt-movepage-logreason": "Osa käännettävää sivua $1.",
- "pt-movepage-started": "Käännettävän sivun perussivu on siirretty.\nTarkista mahdolliset virheet ja valmistumisviestit [[Special:Log/pagetranslation|sivunkääntölokista]].",
+ "pt-movepage-logreason": "Osa käännettävää sivua ”$1”",
+ "pt-movepage-started": "Tarkista sillä aikaa [[Special:Log/pagetranslation|sivunkääntölokista]]. mahdolliset virheet ja valmistumisviestit.",
"pt-locked-page": "Tämä sivu on lukittu, koska käännettävän sivun siirtäminen on kesken.",
- "pt-deletepage-lang-title": "Poistetaan käännössivu $1.",
- "pt-deletepage-full-title": "Poistetaan käännettävissä oleva sivu $1.",
+ "pt-deletepage-lang-title": "Käännössivun $1 poisto",
+ "pt-deletepage-full-title": "Käännettävän sivun $1 poisto",
"pt-deletepage-invalid-title": "Määritetty sivu ei kelpaa.",
"pt-deletepage-invalid-text": "Sivu ei ole käännettävissä oleva sivu tai sellaisen käännös.",
"pt-deletepage-action-check": "Luetteloi poistettavat sivut",
@@ -163,8 +174,8 @@
"pt-deletepage-list-section": "Käännösosiosivut",
"pt-deletepage-list-other": "Muut alasivut",
"pt-deletepage-list-count": "Yhteensä $1 {{PLURAL:$1|poistettava sivu|poistettavaa sivua}}.",
- "pt-deletepage-full-logreason": "Osa käännettävää sivua $1.",
- "pt-deletepage-lang-logreason": "Osa käännössivua $1.",
+ "pt-deletepage-full-logreason": "Osa käännettävää sivua ”$1”",
+ "pt-deletepage-lang-logreason": "Osa käännössivua ”$1”",
"pt-deletepage-started": "Virheet ja valmistusviesti löytyvät [[Special:Log/pagetranslation|sivunkääntölokista]].",
"pt-deletepage-intro": "Tämän toimintosivun avulla voit poistaa koko käännettävän sivun tai tietynkieliset käännökset.\nPoisto ei tapahdu välittömästi, sillä useita sivuja täytyy poistaa.\nVirheet merkitään [[Special:Log/pagetranslation|sivunkääntölokiin]] ja ne täytyy korjata käsin.",
"pagemigration": "Käännössivumigraatio",
@@ -172,24 +183,30 @@
"pm-import-button-label": "Tuo",
"pm-savepages-button-label": "Tallenna",
"pm-cancel-button-label": "Peru",
- "pm-pagename-placeholder": "Anna sivun nimi",
- "pm-langcode-placeholder": "Kielikoodi",
"pm-page-does-not-exist": "Sivua $1 ei ole olemassa.",
"pm-old-translations-missing": "Sivulla $1 ei ole vanhoja käännöksiä.",
"pm-pagename-missing": "Anna sivun nimi.",
- "pm-langcode-missing": "Anna kielikoodi.",
"pm-add-icon-hover-text": "Lisää yksikkö alle",
"pm-swap-icon-hover-text": "Vaihda paikkaa alla olevan yksikön kanssa",
"pm-delete-icon-hover-text": "Poista yksikkö",
- "pm-pagetitle-invalid": "Anna kelvollinen sivun otsikko",
+ "pm-pagetitle-placeholder": "Anna sivun nimi",
+ "pm-pagetitle-invalid": "Anna kelvollinen sivun otsikko. Sen pitäisi olla <page-name>/<language-code> muodossa.",
+ "pm-pagetitle-missing": "Anna sivun nimi.",
+ "pm-langcode-missing": "Kielikoodi näyttäisi puuttuvan otsikossa. \nAnna sivun otsikko muodossa <page-name>/<language-code>.",
+ "pm-summary-import": "Tuodut käännökset käyttäen [[Special:PageMigration|page migrationia]]",
"tpt-translate-title": "Salli sivun otsikon käännös",
"pp-save-summary": "Valmisteli sivun kääntämistä varten.",
"pagepreparation": "Valmista sivu kääntämistä varten",
"pp-pagename-placeholder": "Anna sivun nimi",
"pp-prepare-button-label": "Valmistele",
"pp-save-button-label": "Tallenna",
+ "pp-cancel-button-label": "Peru",
+ "pp-save-message": "Sivu on tallennettu. Voit [$1 muokata sivua].",
+ "pp-pagename-missing": "Anna sivun nimi.",
"pp-diff-old-header": "Lähdeteksti",
"pp-diff-new-header": "Valmisteltu teksti",
- "tpt-unlink-button": "poista käännettävistä sivuista",
- "tpt-unlink-summary": "Poistettu käännettävistä sivuista"
+ "tpt-unlink-button": "Poista käännettävistä sivuista",
+ "tpt-unlink-summary": "Poistettu käännettävistä sivuista",
+ "tpt-generic-confirm": "Vahvista toiminto.",
+ "tpt-generic-button": "Vahvista"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/fr.json b/MLEB/Translate/i18n/pagetranslation/fr.json
index 8d4b2002..526b73b3 100644
--- a/MLEB/Translate/i18n/pagetranslation/fr.json
+++ b/MLEB/Translate/i18n/pagetranslation/fr.json
@@ -20,18 +20,20 @@
"Zetud",
"Brunoperel",
"Benjozork",
- "Element303"
+ "Element303",
+ "TomT0m",
+ "Wladek92",
+ "Mattho69",
+ "Yasten",
+ "Trial"
]
},
"pagetranslation": "Traduction de pages",
"right-pagetranslation": "Marquer des versions de pages pour être traduites",
"action-pagetranslation": "gérer les pages traduisibles",
- "tpt-desc": "Extension pour traduire des pages de contenu",
"tpt-section": "Unité de traduction $1",
"tpt-section-new": "Nouvelle unité de traduction. Nom : $1",
"tpt-section-deleted": "Unité de traduction $1",
- "tpt-template": "Modèle de page",
- "tpt-templatediff": "Le modèle de page a changé.",
"tpt-diff-old": "Texte précédent",
"tpt-diff-new": "Nouveau texte",
"tpt-submit": "Marquer cette version pour être traduite",
@@ -45,10 +47,9 @@
"tpt-notsuitable": "La page $1 n’est pas susceptible d’être traduite.\nAssurez-vous qu’elle contienne la balise <nowiki><translate></nowiki> et qu’elle ait une syntaxe correcte.",
"tpt-saveok": "La page [[:$1]] a été marquée pour être traduite avec $2 {{PLURAL:$2|unité|unités}} de traduction.\nLa page peut être <span class=\"plainlinks\">[$3 traduite]</span> dès maintenant.",
"tpt-offer-notify": "Vous pouvez <span class=\"plainlinks\">[$1 notifier les traducteurs]</span> au sujet de cette page.",
- "tpt-badsect": "« $1 » n’est pas un nom valide pour une unité de traduction $2.",
"tpt-showpage-intro": "Ci-dessous, les nouvelles traductions, celles existantes et supprimées.\nAvant de marquer ces versions pour être traduites, vérifier que les modifications aux sections sont minimisées pour éviter du travail inutile aux traducteurs.",
"tpt-mark-summary": "Cette version a été marquée pour être traduite",
- "tpt-mark-nochanges": "Il n’y a pas de différence entre cette révision et la dernière révision marquée.",
+ "tpt-mark-nochanges": "Pas de modification à relire. Marquer cette page à traduire ne vas modifier ni la page ni aucune unité de traduction existante.",
"tpt-edit-failed": "Impossible de mettre à jour la page $1",
"tpt-duplicate": "Le nom de l'unité traduction $1 est utilisé plus d'une fois.",
"tpt-already-marked": "La dernière version de cette page a déjà été marquée pour être traduite.",
@@ -79,13 +80,14 @@
"translate-tag-markthisagain": "Cette page a eu <span class=\"plainlinks\">[$1 des modifications]</span> depuis qu’elle a été dernièrement <span class=\"plainlinks\">[$2 marquée pour être traduite]</span>.",
"translate-tag-hasnew": "Cette page contient <span class=\"plainlinks\">[$1 des modifications]</span> qui ne sont pas marquées pour la traduction.",
"tpt-translation-intro": "Cette page est une <span class=\"plainlinks\">[$1 version traduite]</span> de la page [[$2]] et la traduction est complétée à $3 %.",
+ "tpt-translation-intro-fuzzy": "Les traductions désuètes sont identifiées ainsi.",
"tpt-languages-legend": "Autres langues :",
"tpt-languages-separator": "&nbsp;•&#32;",
"tpt-languages-zero": "Commencer la traduction pour cette langue",
"tpt-languages-nonzero": "$1 ($2% traduit)",
"tpt-tab-translate": "Traduire",
"tpt-target-page": "Cette page ne peut pas être mise à jour manuellement.\nElle est une version traduite de [[$1]] et la traduction peut être mise à jour en utilisant [$2 l’outil de traduction].",
- "tpt-patrolling-blocked": "Cette page ne peut pas être surveillée. Utilisez l'action traduire pour l'examiner.",
+ "tpt-patrolling-blocked": "Cette page ne peut pas être surveillée. Utilisez l’action « traduire » pour l’examiner.",
"tpt-unknown-page": "Cet espace de noms est réservé pour la traduction de pages.\nLa page que vous essayez de modifier ne semble correspondre à aucune page marquée pour être traduite.",
"tpt-translation-restricted": "La traduction de cette page dans cette langue a été empêchée par un administrateur des traductions.\n\nMotif: $1",
"tpt-discouraged-language-force-header": "Cette page ne peut pas être traduite en $1.",
@@ -97,7 +99,6 @@
"tpt-discouraged-language-reason": "Raison : $1",
"tpt-priority-languages": "Un administrateur de traduction a défini les langues prioritaire pour ce groupe : $1 .",
"tpt-render-summary": "Mise à jour pour être en accord avec la nouvelle version de la source de la page",
- "tpt-download-page": "Exporter la page avec ses traductions",
"aggregategroups": "Groupes d'agrégation",
"tpt-aggregategroup-add": "Ajouter",
"tpt-aggregategroup-save": "Enregistrer",
@@ -120,7 +121,7 @@
"log-description-pagetranslation": "Journal des actions liées au système de traduction de pages",
"log-name-pagetranslation": "Journal des traductions de pages",
"logentry-pagetranslation-mark": "$1 {{GENDER:$2|a marqué}} $3 à traduire",
- "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|a supprimé}} $3 des traductions à faire",
+ "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|a supprimé}} $3 du système de traduction",
"logentry-pagetranslation-moveok": "$1 {{GENDER:$2|a terminé}} le renommage d’une page traduisible $3 en $4",
"logentry-pagetranslation-movenok": "$1 {{GENDER:$2|a rencontré}} un problème en déplaçant la page $3 vers $4",
"logentry-pagetranslation-deletefok": "$1 {{GENDER:$2|a terminé}} la suppression d’une page traduisible $3",
@@ -134,6 +135,15 @@
"logentry-pagetranslation-prioritylanguages-force": "$1 {{GENDER:$2|a limité}} les langues pour la page traduisible $3 à $5",
"logentry-pagetranslation-associate": "$1 {{GENDER:$2|a ajouté}} la page traduisible $3 au groupe agrégé $4",
"logentry-pagetranslation-dissociate": "$1 {{GENDER:$2|a supprimé}} la page traduisible $3 du groupe agrégé $4",
+ "log-action-filter-pagetranslation": "Type d'action :",
+ "log-action-filter-pagetranslation-mark": "Marquer à traduire",
+ "log-action-filter-pagetranslation-unmark": "Supprimer la traduction",
+ "log-action-filter-pagetranslation-move": "Déplacements de pages",
+ "log-action-filter-pagetranslation-delete": "Suppressions de pages",
+ "log-action-filter-pagetranslation-encourage": "Incitation à traduire",
+ "log-action-filter-pagetranslation-discourage": "Traduction non recomandée",
+ "log-action-filter-pagetranslation-prioritylanguages": "Modification de la priorité des langues",
+ "log-action-filter-pagetranslation-aggregategroups": "Agréger la modification des groupes",
"pt-movepage-title": "Déplacer la page à traduire $1",
"pt-movepage-blockers": "La page à traduire ne peut pas être renommée à cause {{PLURAL:$1|de l’erreur suivante|des erreurs suivantes}} :",
"pt-movepage-block-base-exists": "La page traduisible cible \"[[:$1]]\" existe.",
@@ -158,11 +168,11 @@
"pt-movepage-action-perform": "Renommer",
"pt-movepage-action-other": "Changer la cible",
"pt-movepage-intro": "Cette page spéciale vous permet de renommer des pages qui sont marquées pour être traduites.\nL’action de renommage ne sera pas immédiate, car de nombreuses pages devront être déplacées.\nPendant que les pages sont déplacées, il n'est pas possible d’interagir avec elles.\nLes échecs seront enregistrés dans le [[Special:Log/pagetranslation|journal de traduction]] et devront être corrigés manuellement.",
- "pt-movepage-logreason": "Extrait de la page à traduire $1.",
- "pt-movepage-started": "La page de base est à présent renommée.\nVeuillez vérifier le [[Special:Log/pagetranslation|journal des traductions]] pour repérer d’éventuelles erreurs et lire le message de complétion.",
+ "pt-movepage-logreason": "Extrait de la page à traduire « $1 ».",
+ "pt-movepage-started": "Veuillez ouvrir le [[Special:Log/pagetranslation|journal des traductions de pages]] dans quelques instants pour vérifier les erreurs éventuelles et lire le message de complétion.",
"pt-locked-page": "Cette page est verrouillée parce que la page à traduire est en cours de renommage.",
- "pt-deletepage-lang-title": "Suppression de la page de traduction $1.",
- "pt-deletepage-full-title": "Suppression de la page à traduire $1.",
+ "pt-deletepage-lang-title": "Suppression de la page de traduction \"$1\"",
+ "pt-deletepage-full-title": "Suppression de la page à traduire \"$1\"",
"pt-deletepage-invalid-title": "La page spécifiée n'est pas valide.",
"pt-deletepage-invalid-text": "La page spécifiée n'est pas une page à traduire, ni une traduction de celle-ci.",
"pt-deletepage-action-check": "Lister les pages à supprimer",
@@ -179,8 +189,8 @@
"pt-deletepage-list-section": "Pages d'unités de traduction",
"pt-deletepage-list-other": "Autres sous-pages",
"pt-deletepage-list-count": "Au total, $1 {{PLURAL:$1|page|pages}} à supprimer.",
- "pt-deletepage-full-logreason": "Partie de la page à traduire $1.",
- "pt-deletepage-lang-logreason": "Partie de la page de traduction $1.",
+ "pt-deletepage-full-logreason": "Partie de la page à traduire « $1 ».",
+ "pt-deletepage-lang-logreason": "Partie de la page de traduction « $1 ».",
"pt-deletepage-started": "Veuillez vérifier le [[Special:Log/pagetranslation|journal des traductions]] pour les erreurs et le message de la fin.",
"pt-deletepage-intro": "Cette page spéciale vous permet de supprimer une page traduisible entièrement, ou une page traduisible individuelle dans une langue.\nL'action de suppression n'est pas instantanée, car plusieurs pages dépendantes de celle-ci seront aussi supprimées.\nLes échecs seront inscrits dans le [[Special:Log/pagetranslation|journal des traductions]] et ils doivent être corrigés à la main.",
"pagemigration": "Migration de page de traduction",
@@ -188,18 +198,20 @@
"pm-import-button-label": "Importer",
"pm-savepages-button-label": "Enregistrer",
"pm-cancel-button-label": "Annuler",
- "pm-pagename-placeholder": "Entrer le nom de la page",
- "pm-langcode-placeholder": "Code de langue",
"pm-page-does-not-exist": "$1 n’existe pas",
"pm-old-translations-missing": "$1 ne contient pas d’anciennes traductions",
"pm-extra-units-warning": "Des unités supplémentaires peuvent être présentes. Veuillez faire correspondre correctement les unités source et de traduction",
"pm-pagename-missing": "Veuillez saisir le nom de la page",
- "pm-langcode-missing": "Veuillez saisir le code de langue",
"pm-add-icon-hover-text": "Ajouter une unité ci-dessous",
"pm-swap-icon-hover-text": "Échanger avec l’unité ci-dessous",
"pm-delete-icon-hover-text": "Supprimer l’unité",
- "pm-pagetitle-invalid": "Veuillez entrer un titre de page valide",
+ "pm-pagetitle-placeholder": "Entrer le titre de la page",
+ "pm-pagetitle-invalid": "Veuillez entrer un titre de page valide. Il doit être de la forme <nom-page>/<code-langue>.",
+ "pm-pagetitle-missing": "Veuillez entrer le titre de la page.",
+ "pm-langcode-missing": "Le code de langue semble manquer dans le titre. Veuillez entrer le titre de la page au format <nom-page>/<code-langue>.",
"pm-summary-import": "Traduction importée en utilisant [[Special:PageMigration|la migration de page]]",
+ "pm-on-import-message-text": "Les anciennes traductions ont été importées. Utilisez les options ajouter, échanger et supprimer pour ajuster les unités de traduction et cliquez sur le bouton \"{{int:h-savepages-bouton-label}}\" pour les enregistrer. Cliquez sur le bouton \"{{int:h-annuler-bouton-label}}\" pour annuler.",
+ "pm-on-save-message-text": "Les unités de traduction ont été enregistrés. Vous pouvez maintenant entrer le titre d'une nouvelle page de traduction pour la migrer, ou modifier les unités ci-dessous et enregistrer une nouvelle révision.",
"tpt-translate-title": "Autoriser la traduction du titre de la page",
"pp-save-summary": "Page préparée pour la traduction",
"pagepreparation": "Préparer la page pour sa traduction",
@@ -215,5 +227,7 @@
"pp-diff-new-header": "Texte préparé",
"tpt-unlink-confirm": "Veuillez confirmer que vous voulez vraiment supprimer cette page du système de traduction.\nLe sélecteur de langue et les noms des pages traduites cesseront de fonctionner.\nLes pages traduites deviendront modifiables.",
"tpt-unlink-button": "Supprimer de la traduction",
- "tpt-unlink-summary": "Page supprimée de la traduction"
+ "tpt-unlink-summary": "Page supprimée de la traduction",
+ "tpt-generic-confirm": "Veuillez confirmer l'action.",
+ "tpt-generic-button": "Confirmer"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/frp.json b/MLEB/Translate/i18n/pagetranslation/frp.json
index 700bf70f..6bf9fddf 100644
--- a/MLEB/Translate/i18n/pagetranslation/frp.json
+++ b/MLEB/Translate/i18n/pagetranslation/frp.json
@@ -7,12 +7,9 @@
},
"pagetranslation": "Traduccion de pâges",
"right-pagetranslation": "Marcar des vèrsions de pâges por étre traduites",
- "tpt-desc": "Èxtension por traduire des pâges de contegnu",
"tpt-section": "Unitât de traduccion $1",
"tpt-section-new": "Novèla unitât de traduccion.\nNom : $1",
"tpt-section-deleted": "Unitât de traduccion $1",
- "tpt-template": "Modèlo de pâge",
- "tpt-templatediff": "Lo modèlo de pâge at changiê.",
"tpt-diff-old": "Tèxto devant",
"tpt-diff-new": "Tèxto novél",
"tpt-submit": "Marcar ceta vèrsion por étre traduita",
@@ -25,7 +22,6 @@
"tpt-oldrevision": "$2 est pas la dèrriére vèrsion de la pâge [[:$1]].\nSolament la dèrriére vèrsion de la pâge pôt étre marcâye por étre traduita.",
"tpt-notsuitable": "La pâge $1 sè préte pas por étre traduita.\nAssurâd-vos que contegne la balisa <nowiki><translate></nowiki> et pués qu’èye na sintaxa justa.",
"tpt-saveok": "La pâge [[:$1]] est étâye marcâye por étre traduita avouéc $2 unitât{{PLURAL:$2||s}} de traduccion.\nLa pâge pôt étre <span class=\"plainlinks\">[$3 traduita]</span> dês ora.",
- "tpt-badsect": "« $1 » est pas un nom valido por na unitât de traduccion $2.",
"tpt-showpage-intro": "Ce-desot les novèles traduccions, celes ègzistentes et pués celes suprimâyes.\nDevant que marcar ceta vèrsion por étre traduita, controlâd que los changements a les sèccions sont petiôts por èvitar de travâly inutilo ux traductors.",
"tpt-mark-summary": "Ceta vèrsion est étâye marcâye por étre traduita",
"tpt-edit-failed": "Empossiblo de betar a jorn la pâge : $1",
@@ -49,12 +45,13 @@
"translate-tag-markthisagain": "Ceta pâge at avu des <span class=\"plainlinks\">[$1 changements]</span> dês qu’est étâye <span class=\"plainlinks\">[$2 marcâye dèrriérement por étre traduita]</span>.",
"translate-tag-hasnew": "Ceta pâge contint des <span class=\"plainlinks\">[$1 changements]</span> que sont pas marcâs por la traduccion.",
"tpt-translation-intro": "Ceta pâge est na <span class=\"plainlinks\">[$1 traduccion]</span> de la pâge [[$2]] et la traduccion est complètâye a $3 % et pués a jorn.",
+ "tpt-translation-intro-fuzzy": "Les traduccions dèpassâyes sont marcâyes d’ense.",
"tpt-languages-legend": "Ôtres lengoues :",
+ "tpt-languages-nonzero": "$1 ($2% traduit)",
"tpt-target-page": "Ceta pâge pôt pas étre betâye a jorn a la man.\nEl est na traduccion de la pâge [[$1]] et la traduccion pôt étre betâye a jorn en empleyent l’[$2 outil de traduccion].",
"tpt-unknown-page": "Cet’èspâço de noms est resèrvâ por la traduccion de pâges de contegnu.\nLa pâge que vos tâchiéd de changiér semble corrèspondre a gins de pâge marcâye por étre traduita.",
"tpt-discouraged-language-reason": "Rêson : $1",
"tpt-render-summary": "Misa a jorn por étre en acôrd avouéc la novèla vèrsion de la pâge sôrsa",
- "tpt-download-page": "Èxportar la pâge avouéc les sines traduccions",
"tpt-aggregategroup-add": "Apondre",
"tpt-aggregategroup-save": "Encartar",
"tpt-aggregategroup-new-name": "Nom :",
diff --git a/MLEB/Translate/i18n/pagetranslation/fur.json b/MLEB/Translate/i18n/pagetranslation/fur.json
index c5da45b6..ed943ccb 100644
--- a/MLEB/Translate/i18n/pagetranslation/fur.json
+++ b/MLEB/Translate/i18n/pagetranslation/fur.json
@@ -1,7 +1,8 @@
{
"@metadata": {
"authors": [
- "Klenje"
+ "Klenje",
+ "Tocaibon"
]
},
"pagetranslation": "Traduzion di une pagjine",
@@ -12,6 +13,7 @@
"translate-tag-translate-link-desc": "Tradûs cheste pagjine",
"tpt-languages-legend": "Altris lenghis:",
"tpt-languages-zero": "Scomence a tradusi in cheste lenghe",
+ "tpt-languages-nonzero": "$1 ($2% traduzude)",
"tpt-tab-translate": "Tradûs",
"tpt-discouraged-language-reason": "Reson: $1",
"tpt-aggregategroup-add": "Zonte",
diff --git a/MLEB/Translate/i18n/pagetranslation/fy.json b/MLEB/Translate/i18n/pagetranslation/fy.json
index 163a4e24..87c3dacf 100644
--- a/MLEB/Translate/i18n/pagetranslation/fy.json
+++ b/MLEB/Translate/i18n/pagetranslation/fy.json
@@ -1,12 +1,21 @@
{
"@metadata": {
"authors": [
- "Robin0van0der0vliet"
+ "Robin0van0der0vliet",
+ "Robin van der Vliet"
]
},
+ "tpt-select-prioritylangs-reason": "Reden:",
"tpt-languages-nonzero": "$1 ($2% oerset)",
+ "tpt-tab-translate": "Oersette",
+ "tpt-discouraged-language-reason": "Reden: $1",
+ "tpt-aggregategroup-save": "Bewarje",
"tpt-aggregategroup-new-name": "Namme:",
"tpt-aggregategroup-edit-name": "Namme:",
+ "tpt-aggregategroup-update": "Bewarje",
"tpt-aggregategroup-update-cancel": "Annulearje",
+ "pt-movepage-reason": "Reden:",
+ "pt-deletepage-reason": "Reden:",
+ "pm-savepages-button-label": "Bewarje",
"pm-cancel-button-label": "Annulearje"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/ga.json b/MLEB/Translate/i18n/pagetranslation/ga.json
index d0a5a5c0..326b622a 100644
--- a/MLEB/Translate/i18n/pagetranslation/ga.json
+++ b/MLEB/Translate/i18n/pagetranslation/ga.json
@@ -1,10 +1,12 @@
{
"@metadata": {
"authors": [
- "පසිඳු කාවින්ද"
+ "පසිඳු කාවින්ද",
+ "Tem"
]
},
"tpt-select-prioritylangs-reason": "Fáth:",
+ "tpt-languages-nonzero": "$1 ($2% aistrithe)",
"tpt-aggregategroup-save": "Sábháil",
"tpt-aggregategroup-new-name": "Ainm:",
"pt-deletepage-reason": "Fáth:"
diff --git a/MLEB/Translate/i18n/pagetranslation/gl.json b/MLEB/Translate/i18n/pagetranslation/gl.json
index 252938a2..d8058d35 100644
--- a/MLEB/Translate/i18n/pagetranslation/gl.json
+++ b/MLEB/Translate/i18n/pagetranslation/gl.json
@@ -3,18 +3,16 @@
"authors": [
"Toliño",
"Fisterraeomar",
- "Banjo"
+ "Banjo",
+ "Elisardojm"
]
},
"pagetranslation": "Tradución de páxinas",
"right-pagetranslation": "Marcar as versións de páxinas para seren traducidas",
"action-pagetranslation": "administrar as páxinas traducibles",
- "tpt-desc": "Extensión para traducir contidos de páxinas",
"tpt-section": "Unidade de tradución $1",
"tpt-section-new": "Nova unidade de tradución. Nome: $1",
"tpt-section-deleted": "Unidade de tradución $1",
- "tpt-template": "Modelo de páxina",
- "tpt-templatediff": "Cambiou o modelo de páxina.",
"tpt-diff-old": "Texto anterior",
"tpt-diff-new": "Texto novo",
"tpt-submit": "Marcar esta versión para ser traducida",
@@ -28,9 +26,9 @@
"tpt-notsuitable": "A páxina \"$1\" non é válida para ser traducida.\nComprobe que teña as etiquetas <nowiki><translate></nowiki> e mais unha sintaxe válida.",
"tpt-saveok": "A páxina \"[[:$1]]\" foi marcada para ser traducida, {{PLURAL:$2|cunha unidade de tradución|con $2 unidades de tradución}}.\nA páxina agora pode ser <span class=\"plainlinks\">[$3 traducida]</span>.",
"tpt-offer-notify": "Pode <span class=\"plainlinks\">[$1 notificar aos tradutores]</span> sobre esta páxina.",
- "tpt-badsect": "\"$1\" non é un nome válido para a unidade de tradución $2.",
"tpt-showpage-intro": "A continuación están listadas as unidades de tradución novas, existentes e borradas.\nAntes de marcar esta versión para ser traducida, comprobe que as modificacións feitas ás unidades de tradución foron minimizadas para evitarlles traballo innecesario aos tradutores.",
"tpt-mark-summary": "Marcou esta versión para ser traducida",
+ "tpt-mark-nochanges": "Non hai cambios para revisar. Marcando esta páxina para tradución non editará a páxina nen nengunha unidade de tradución existente.",
"tpt-edit-failed": "Non se puido actualizar a páxina: $1",
"tpt-duplicate": "O nome da unidade de tradución \"$1\" úsase máis dunha vez.",
"tpt-already-marked": "A última versión desta páxina xa foi marcada para ser traducida.",
@@ -61,11 +59,13 @@
"translate-tag-markthisagain": "Esta páxina sufriu <span class=\"plainlinks\">[$1 cambios]</span> desde que foi <span class=\"plainlinks\">[$2 marcada para a súa tradución]</span> por última vez.",
"translate-tag-hasnew": "Esta páxina contén <span class=\"plainlinks\">[$1 cambios]</span> que non están marcados para a súa tradución.",
"tpt-translation-intro": "Esta páxina é unha <span class=\"plainlinks\">[$1 versión traducida]</span> da páxina \"[[$2]]\" e a tradución está completada ao $3%.",
+ "tpt-translation-intro-fuzzy": "As traducións obsoletas están marcadas así.",
"tpt-languages-legend": "Outras linguas:",
"tpt-languages-zero": "Comezar a tradución nesta lingua",
"tpt-languages-nonzero": "$1 (traducida ao $2%)",
"tpt-tab-translate": "Traducir",
"tpt-target-page": "Esta páxina non se pode actualizar manualmente.\nEsta páxina é unha tradución da páxina \"[[$1]]\" e a tradución pódese actualizar usando [$2 a ferramenta de tradución].",
+ "tpt-patrolling-blocked": "A páxina non pode ser vixiada. No canto diso, use a acción traducir para examinala.",
"tpt-unknown-page": "Este espazo de nomes está reservado para traducións de páxinas de contido.\nA páxina que está intentando editar parece non corresponder a algunha páxina marcada para ser traducida.",
"tpt-translation-restricted": "Un administrador de traducións impediu a tradución da páxina nesta lingua.\n\nMotivo: $1",
"tpt-discouraged-language-force-header": "Esta páxina non se pode traducir ao $1.",
@@ -77,7 +77,6 @@
"tpt-discouraged-language-reason": "Motivo: $1",
"tpt-priority-languages": "Un administrador de traducións definiu as linguas prioritarias deste grupo a $1.",
"tpt-render-summary": "Actualizando para coincidir coa nova versión da páxina de orixe",
- "tpt-download-page": "Exportar a páxina coas traducións",
"aggregategroups": "Grupos de agregación",
"tpt-aggregategroup-add": "Engadir",
"tpt-aggregategroup-save": "Gardar",
@@ -114,6 +113,15 @@
"logentry-pagetranslation-prioritylanguages-force": "$1 {{GENDER:$2|limitou}} as linguas da páxina traducible \"$3\" a $5",
"logentry-pagetranslation-associate": "$1 {{GENDER:$2|engadiu}} a páxina traducible \"$3\" ao grupo de agregación \"$4\"",
"logentry-pagetranslation-dissociate": "$1 {{GENDER:$2|eliminou}} a páxina traducible \"$3\" do grupo de agregación \"$4\"",
+ "log-action-filter-pagetranslation": "Tipo de acción:",
+ "log-action-filter-pagetranslation-mark": "Marcar para traducir",
+ "log-action-filter-pagetranslation-unmark": "Eliminar de tradución",
+ "log-action-filter-pagetranslation-move": "Traslados da páxina",
+ "log-action-filter-pagetranslation-delete": "Borrado de páxinas",
+ "log-action-filter-pagetranslation-encourage": "Incitación á tradución",
+ "log-action-filter-pagetranslation-discourage": "Tradución non recomendada",
+ "log-action-filter-pagetranslation-prioritylanguages": "Modificación da prioridade das linguas",
+ "log-action-filter-pagetranslation-aggregategroups": "Agregar a modificación dos grupos",
"pt-movepage-title": "Mover a páxina traducible \"$1\"",
"pt-movepage-blockers": "Non se pode trasladar a páxina traducible a un novo nome debido {{PLURAL:$1|ao seguinte erro|aos seguintes erros}}:",
"pt-movepage-block-base-exists": "Existe a páxina traducible de destino \"[[:$1]]\".",
@@ -138,11 +146,11 @@
"pt-movepage-action-perform": "Realizar o traslado",
"pt-movepage-action-other": "Cambiar o destino",
"pt-movepage-intro": "Esta páxina especial permite mover páxinas que están marcadas para a súa tradución.\nA acción de traslado non será inmediata porque é necesario mover moitas outras páxinas.\nMentres as páxinas son trasladadas, non é posible traballar nelas.\nOs erros quedarán rexistrados no [[Special:Log/pagetranslation|rexistro de páxinas de tradución]] e deberán ser reparados manualmente.",
- "pt-movepage-logreason": "Parte da páxina traducible \"$1\".",
- "pt-movepage-started": "Estase a mover a páxina base.\nComprobe o [[Special:Log/pagetranslation|rexistro de páxinas de tradución]] por se houbese algún erro e para ler as mensaxes de conclusión.",
+ "pt-movepage-logreason": "Parte da páxina traducible \"$1\"",
+ "pt-movepage-started": "Por favor, comprobe o [[Special:Log/pagetranslation|rexistro de páxinas de tradución]] nun momento por se houbese algún erro e para ler as mensaxes de conclusión.",
"pt-locked-page": "Esta páxina está bloqueada porque se está a mover a páxina traducible.",
- "pt-deletepage-lang-title": "Borrar a páxina de tradución \"$1\".",
- "pt-deletepage-full-title": "Borrar a páxina traducible \"$1\".",
+ "pt-deletepage-lang-title": "Borrar a páxina de tradución \"$1\"",
+ "pt-deletepage-full-title": "Borrar a páxina traducible \"$1\"",
"pt-deletepage-invalid-title": "A páxina especificada non é válida.",
"pt-deletepage-invalid-text": "A páxina especificada non é unha páxina traducible nin unha páxina de tradución.",
"pt-deletepage-action-check": "Lista de páxinas a borrar",
@@ -159,8 +167,8 @@
"pt-deletepage-list-section": "Páxinas de unidade de tradución",
"pt-deletepage-list-other": "Outras subpáxinas",
"pt-deletepage-list-count": "En total, $1 {{PLURAL:$1|páxina|páxinas}} a borrar.",
- "pt-deletepage-full-logreason": "Parte da páxina traducible \"$1\".",
- "pt-deletepage-lang-logreason": "Parte da páxina de tradución \"$1\".",
+ "pt-deletepage-full-logreason": "Parte da páxina traducible \"$1\"",
+ "pt-deletepage-lang-logreason": "Parte da páxina de tradución \"$1\"",
"pt-deletepage-started": "Comprobe os erros e as mensaxes de conclusión no [[Special:Log/pagetranslation|rexistro de páxinas de tradución]].",
"pt-deletepage-intro": "Esta páxina especial permite borrar por completo páxinas traducibles ou páxinas de tradución individuais nunha lingua.\nA acción de borrado non será inmediata porque cómpre eliminar todas as páxinas dependentes delas.\nOs erros quedarán rexistrados no [[Special:Log/pagetranslation|rexistro de páxinas de tradución]] e terán que arranxarse manualmente.",
"pagemigration": "Migración da páxina de tradución",
@@ -168,18 +176,36 @@
"pm-import-button-label": "Importar",
"pm-savepages-button-label": "Gardar",
"pm-cancel-button-label": "Cancelar",
- "pm-pagename-placeholder": "Insira o nome da páxina",
- "pm-langcode-placeholder": "Código da lingua",
"pm-page-does-not-exist": "\"$1\" non existe",
"pm-old-translations-missing": "\"$1\" non contén traducións vellas",
"pm-extra-units-warning": "Pode haber unidades adicionais presentes. Faga coincidir correctamente as unidades de orixe e as unidades de tradución",
"pm-pagename-missing": "Insira o nome da páxina",
- "pm-langcode-missing": "Insira o código da lingua",
"pm-add-icon-hover-text": "Engadir unha unidade embaixo",
"pm-swap-icon-hover-text": "Cambiar coa unidade inferior",
"pm-delete-icon-hover-text": "Borrar a unidade",
+ "pm-pagetitle-placeholder": "Insira o nome da páxina",
+ "pm-pagetitle-invalid": "Achegue un título de páxina válido. Debe ter o formato <nome-de-páxina>/<código-de-lingua>.",
+ "pm-pagetitle-missing": "Por favor, insira o título da páxina.",
+ "pm-langcode-missing": "O código de lingua parece faltar no título. Escriba o título da páxina no formato <nombe-de-páxina>/<código-de-lingua>.",
+ "pm-summary-import": "Importouse a tradución usando [[Special:PageMigration|migración de páxina]]",
+ "pm-on-import-message-text": "As traducións antigas foron importadas. Use as opcións engadir, cambiar e borrar para axustar as unidades de tradución e prema no botón \"{{int:pm-savepages-button-label}}\" para gardalas. Prema o botón \"{{int:pm-cancel-button-label}}\" para cancelar.",
+ "pm-on-save-message-text": "As unidades de tradución foron gardadas. Agora pode indicar o título dunha nova páxina de tradución a migrar ou facer cambios ás unidades de abaixo e gardar unha nova revisión.",
"tpt-translate-title": "Permitir a tradución do título da páxina",
"pp-save-summary": "Preparo a páxina para a súa tradución",
+ "pagepreparation": "Preparar a páxina para a tradución",
+ "pp-pagename-placeholder": "Insira o nome da páxina",
+ "pp-prepare-button-label": "Preparar",
"pp-save-button-label": "Gardar",
- "pp-cancel-button-label": "Cancelar"
+ "pp-cancel-button-label": "Cancelar",
+ "pp-save-message": "A páxina foi gardada. Pode [$1 editala].",
+ "pp-prepare-message": "Preparouse a páxina para a tradución. Consulte os cambios abaixo. Prema no botón \"{{int:pp-save-button-label}}\" se está todo ben!",
+ "pp-already-prepared-message": "Parece que a páxina xa se preparou para a tradución. Non hai cambios respecto á versión anterior.",
+ "pp-pagename-missing": "Insira o nome da páxina",
+ "pp-diff-old-header": "Texto fonte",
+ "pp-diff-new-header": "Texto preparado",
+ "tpt-unlink-confirm": "Confirme que realmente quere eliminar esta páxina do sistema de tradución.\nO selector de idiomas e os nomes das páxinas traducidas deixarán de funcionar.\nAs páxinas de tradución volveranse editables.",
+ "tpt-unlink-button": "Eliminar da tradución",
+ "tpt-unlink-summary": "Páxina eliminada da tradución",
+ "tpt-generic-confirm": "Por favor, confirme a acción.",
+ "tpt-generic-button": "Confirmar"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/gsw.json b/MLEB/Translate/i18n/pagetranslation/gsw.json
index 1ee96358..c3c72739 100644
--- a/MLEB/Translate/i18n/pagetranslation/gsw.json
+++ b/MLEB/Translate/i18n/pagetranslation/gsw.json
@@ -9,12 +9,9 @@
"pagetranslation": "Sytenibersetzig",
"right-pagetranslation": "D Syte, wu sotte ibersetzt wäre, markiere",
"action-pagetranslation": "ibersetzbari Syte z verwalte",
- "tpt-desc": "Erwyterig fir d Iberstzig vu Inhaltssyte",
"tpt-section": "Iberstzigs-Abschnitt $1",
"tpt-section-new": "Neje Iberstzigs-Abschnitt. Name: $1",
"tpt-section-deleted": "Ibersetzigs-Abschnitt $1",
- "tpt-template": "Sytevorlag",
- "tpt-templatediff": "D Sytevorlag het sich gänderet.",
"tpt-diff-old": "Vorige Tekscht",
"tpt-diff-new": "Neje Tekscht",
"tpt-submit": "Die Version zum Ibersetze markiere",
@@ -27,7 +24,6 @@
"tpt-oldrevision": "$2 isch nit di letscht Version vu dr Syte [[:$1]].\nNume di letschte Versione chenne zum Iberseze markiert wäre.",
"tpt-notsuitable": "D Syte $1 cha nit iberstez wäre.\nStell sicher, ass si <nowiki><translate></nowiki>-Markierige un e giltige Syntax het.",
"tpt-saveok": "D Syte [[:$1]] isch zum Ibersetze markiert wore mit $2 {{PLURAL:$2|Ibersetzigs-Abschnitt|Ibersetzigs-Abschnitt}}.\nD Syte cha jetz <span class=\"plainlinks\">[$3 ibersetzt]</span> wäre.",
- "tpt-badsect": "\"$1\" isch kei giltige Name fir dr Iberstzigs-Abschnitt $2.",
"tpt-showpage-intro": "Unte sin Abschnitt ufglischtet, wu nej sin, sonigi wu s git un sonigi wu s nit git.\nVoreb Du die Version zum Ibersetze frejgisch, iberprief, ass d Änderige an dr Abschnitt gring ghalte sin go uunetigi Arbed bi dr Ibersetzig vermyde.",
"tpt-mark-summary": "het die Versione zum Ibersetze markiert",
"tpt-edit-failed": "Cha d Syte nit aktualisiere: $1",
@@ -60,6 +56,7 @@
"translate-tag-markthisagain": "An däre Syte het s <span class=\"plainlinks\">[$1 Änderige]</span> gee, syt si s lescht Mol <span class=\"plainlinks\">[$2 zum Ibersetze markiert wore isch]</span>.",
"translate-tag-hasnew": "In däre Syte het s <span class=\"plainlinks\">[$1 Änderige]</span>, wu nit zum Ibersetze markiert sin.",
"tpt-translation-intro": "Die Syte isch e <span class=\"plainlinks\">[$1 ibersetzti Version]</span> vun ere Syte [[$2]] un d Ibersetzig isch zue $3% vollständig un aktuäll.",
+ "tpt-translation-intro-fuzzy": "Nit aktuälli Ibersetzige wäre wie dää Tekscht markiert.",
"tpt-languages-legend": "Anderi Sproche:",
"tpt-languages-zero": "Mit em Ibersetze in die Sproch aafange",
"tpt-languages-nonzero": "$1 ($2% ibersetzt)",
@@ -71,7 +68,6 @@
"tpt-discouraged-language-reason": "Grund: $1",
"tpt-priority-languages": "En Ibersetzigsadministrator het di priorisierte Sproche fir die Nochrichtegruppe uf $1 feschtgleit.",
"tpt-render-summary": "Aktualisiere zum e neji Version vu dr Quällsyte z finde",
- "tpt-download-page": "Syte mit Ibersetzige exportiere",
"aggregategroups": "Sammelgruppe",
"tpt-aggregategroup-add": "Zuefiege",
"tpt-aggregategroup-save": "Spychere",
diff --git a/MLEB/Translate/i18n/pagetranslation/gu.json b/MLEB/Translate/i18n/pagetranslation/gu.json
index 4878121a..3646559b 100644
--- a/MLEB/Translate/i18n/pagetranslation/gu.json
+++ b/MLEB/Translate/i18n/pagetranslation/gu.json
@@ -4,7 +4,8 @@
"Ashok modhvadia",
"Dsvyas",
"KartikMistry",
- "Arbhatt"
+ "Arbhatt",
+ "NehalDaveND"
]
},
"pagetranslation": "પાનું ભાષાંતરણ",
@@ -12,8 +13,6 @@
"tpt-section": "ભાષાંતર એકમ $1",
"tpt-section-new": "નવું ભાષાંતર એકમ. નામ: $1",
"tpt-section-deleted": "ભાષાંતર એકમ $1",
- "tpt-template": "પાનાં ઢાંચો",
- "tpt-templatediff": "પાનાંનો ઢાંચો બદલાયો છે.",
"tpt-diff-old": "પહેલાંનું લખાણ",
"tpt-diff-new": "નવું લખાણ",
"tpt-submit": "આ સંસ્કરણને ભાષાંતર માટે ચિહ્નિત કરો",
@@ -23,16 +22,19 @@
"tpt-badtitle": "પાનાને અપાયેલું ($1) નામ પ્રમાણભૂત મથાળું નથી",
"tpt-oldrevision": "$2 એ પાનાં [[:$1]] નું આધુનિક સંસ્કરણ નથી.\n\nફક્ત આધુનિક સંસ્કરણનેજ ભાષાંતર માટે ચિહ્નિત કરી શકાશે.",
"tpt-notsuitable": "પાનું $1 ભાષાંતર માટે યોગ્ય નથી.\n\nખાતરી કરો કે તે <nowiki><translate></nowiki> ટેગ અને પ્રમાણભૂત વાક્યરચના ધરાવે છે.",
- "tpt-badsect": "\"$1\" એ ભાષાંતર એકમ $2 માટેનું પ્રમાણભૂત નામ નથી.",
"tpt-mark-summary": "આ સંસ્કરણને ભાષાંતર માટે ચિહ્નિત કરાયું",
"tpt-edit-failed": "પાનાં: $1 ને અદ્યતન બનાવી શકાયું નહીં.",
"tpt-already-marked": "આ પાનાનું આધુનિક સંસ્કરણ અગાઉથીજ ભાષાંતર માટે ચિહ્નિત થઇ ચુક્યું છે.",
"tpt-list-nopages": "કોઈ પાનાં ભાષાંતર માટે ચિહ્નિત કરેલા નથી કે ન તો કોઈ પાનું ભાષાંતર માટે ચિહ્નિત થવા માટે તૈયાર છે.",
"tpt-new-pages": "{{PLURAL:$1|આ પાના|આ પાનાઓ}} ભાષાંતર ટેગ શાથેનું લખાણ ધરાવે છે, પરંતુ {{PLURAL:$1|આ પાના|આ પાનાઓ}}નું હાલનું સંસ્કરણ ભાષાંતર માટે ચિહ્નિત કરાયેલ નથી.",
"tpt-old-pages": "{{PLURAL:$1|આ પાના|આ પાનાં}}નાં કેટલાક સંસ્કરણ ભાષાંતર માટે ચિહ્નિત કરાયેલા છે.",
+ "tpt-select-prioritylangs-reason": "કારણ:",
+ "tpt-rev-encourage": "ફરી સ્થાપિત કરો",
"translate-tag-translate-link-desc": "આ પાનાનું ભાષાંતર કરો",
"translate-tag-markthis": "આ પાનાંને ભાષાંતર માટે ચિહ્નિત કરો",
+ "tpt-translation-intro-fuzzy": "કાલગ્રસ્ત ભાષાંતરણો આ રીતે ચિહ્નિત થયેલાં.",
"tpt-languages-legend": "અન્ય ભાષાઓ:",
"tpt-languages-nonzero": "$1 ($2% ભાષાંતરીત)",
+ "tpt-tab-translate": "ભાષાંતર કરો",
"tpt-invalid-group": "અયોગ્ય સમૂહ"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/he.json b/MLEB/Translate/i18n/pagetranslation/he.json
index 6af20827..8e1e631a 100644
--- a/MLEB/Translate/i18n/pagetranslation/he.json
+++ b/MLEB/Translate/i18n/pagetranslation/he.json
@@ -10,14 +10,11 @@
]
},
"pagetranslation": "תרגום דפים",
- "right-pagetranslation": "סימון גרסאות של הדפים לתרגום",
+ "right-pagetranslation": "סימון גרסאות של דפים כגרסאות שצריך לתרגם",
"action-pagetranslation": "לנהל דפים שאפשר לתרגם",
- "tpt-desc": "הרחבה לתרגום דפי תוכן",
"tpt-section": "יחידת תרגום $1",
"tpt-section-new": "יחידת תרגום חדשה.\nשם: $1",
"tpt-section-deleted": "יחידת תרגום $1",
- "tpt-template": "תבנית הדף",
- "tpt-templatediff": "תבנית הדף שונתה.",
"tpt-diff-old": "הטקסט הקודם",
"tpt-diff-new": "טקסט חדש",
"tpt-submit": "סימון גרסה זו לתרגום",
@@ -28,13 +25,12 @@
"tpt-badtitle": "שם הדף שניתן ($1) אינו כותרת תקינה",
"tpt-nosuchpage": "הדף $1 אינו קיים",
"tpt-oldrevision": "$2 היא לא הגרסה האחרונה של הדף [[:$1]].\nרק הגרסאות האחרונות יכולות להיות מסומנות לתרגום.",
- "tpt-notsuitable": "הדף $1 אינו מתאים לתרגום.\nאנא ודאו שהוא מכיל תגיות <nowiki><translate></nowiki> ושהתחביר שלו תקין.",
+ "tpt-notsuitable": "הדף $1 אינו מתאים לתרגום.\nנא לוודא שהוא מכיל תגי <nowiki><translate></nowiki> ושהתחביר שלו תקין.",
"tpt-saveok": "הדף [[:$1]] סומן לתרגום עם {{PLURAL:$2|יחידת תרגום אחת|$2 יחידות תרגום}}.\nעכשיו אפשר <span class=\"plainlinks\">[$3 לתרגם]</span> את הדף.",
"tpt-offer-notify": "באפשרותך <span class=\"plainlinks\">[$1 להודיע למתרגמים]</span> על הדף הזה.",
- "tpt-badsect": "השם \"$1\" אינו שם תקין ליחידת התרגום $2.",
"tpt-showpage-intro": "להלן רשימת יחידות תרגום חדשות, קיימות ומחוקות.\nלפני סימון גרסה זו לתרגום, בדקו שהשינויים ליחידות התרגום קטנים ככל שאפשר, כדי למנוע עבודה מיותרת של מתרגמים.",
"tpt-mark-summary": "גרסה זו סומנה לתרגום",
- "tpt-mark-nochanges": "אין הבדל בין הגרסה הזאת לבין הגרסה המסומנת האחרונה.",
+ "tpt-mark-nochanges": "אין שינויים שצריך לסקור. סימון הדף הזה לתרגום לא יערוך את הדף הזה וגם לא שום יחידת תרגום קיימת.",
"tpt-edit-failed": "לא ניתן לעדכן את הדף: $1",
"tpt-duplicate": "נעשה שימוש מרובה בשם יחידת התרגום $1.",
"tpt-already-marked": "הגרסה העדכנית ביותר של דף זה כבר סומנה לתרגום.",
@@ -44,7 +40,7 @@
"tpt-old-pages-title": "דפים בתרגום",
"tpt-other-pages-title": "דפים מקולקלים",
"tpt-discouraged-pages-title": "דפים לא מומלצים",
- "tpt-new-pages": "{{PLURAL:$1|הדף הזה מכיל|הדפים האלה מכילים}} טקסט עם תגי תרגום,\nאבל שום גרסה {{PLURAL:$1|דף זה|הדפים האלה}} מסומנת כעת לתרגום.",
+ "tpt-new-pages": "{{PLURAL:$1|הדף הזה מכיל|הדפים האלה מכילים}} טקסט עם תגי תרגום,\nאבל שום גרסה של {{PLURAL:$1|הדף הזה|הדפים האלה}} אינה מסומנת כעת לתרגום.",
"tpt-old-pages": "{{PLURAL:$1|גרסה מסוימת|גרסאות מסוימות}} של {{PLURAL:$1|דף זה סומנה|דפים אלה סומנו}} לתרגום.",
"tpt-other-pages": "{{PLURAL:$1|גרסה ישנה של דף זה סומנה|גרסאות ישנות של דפים אלה סומנו}} לתרגום,\nאבל {{PLURAL:$1|הגרסה האחרונה אינה יכולה להיות מסומנת|הגרסאות האחרונות אינן יכולות להיות מסומנות}} לתרגום.",
"tpt-discouraged-pages": "מומלץ לא לתרגם את {{PLURAL:$1|הדף הזה|הדפים האלה}}",
@@ -65,13 +61,14 @@
"translate-tag-markthisagain": "בדף הזה יש <span class=\"plainlinks\">[$1 שינויים]</span> שנעשו מאז שהוא <span class=\"plainlinks\">[$2 סומן לתרגום]</span> בפעם האחרונה.",
"translate-tag-hasnew": "דף זה מכיל <span class=\"plainlinks\">[$1 שינויים]</span> שאינם מסומנים לתרגום.",
"tpt-translation-intro": "הדף הזה הוא <span class=\"plainlinks\">[$1 גרסה מתורגמת]</span> של הדף [[$2]] והתרגום שלם ב־$3%.",
+ "tpt-translation-intro-fuzzy": "תרגומים שפג תוקפם מסומנים כך.",
"tpt-languages-legend": "שפות אחרות:",
"tpt-languages-zero": "להתחיל לתרגום לשפה הזאת",
"tpt-languages-nonzero": "$1 (מתורגם: $2%)",
"tpt-tab-translate": "תרגום",
"tpt-target-page": "לא ניתן לעדכן דף זה ידנית.\nדף זה הוא תרגום של הדף [[$1]] וניתן לעדכן את התרגום באמצעות [$2 כלי התרגום].",
"tpt-patrolling-blocked": "לא ניתן לנטר את הדף הזה. במקום זאת יש לבצע את פעולת translate כדי לסקור אותו.",
- "tpt-unknown-page": "מרחב שם זה שמור לצורך תרגומי דפי התוכן.\nהדף אותו אתם מנסים לערוך אינו תואם לאף דף המסומן לתרגום.",
+ "tpt-unknown-page": "מרחב השם הזה שמור לצורך תרגום דפי תוכן.\nהדף ש{{GENDER:|אתה מנסה לערוך|את מנסה לערוך|אתם מנסים לערוך}} אינו תואם לשום דף המסומן לתרגום.",
"tpt-translation-restricted": "מנהל תרגומים נעל את תרגום קבוצת ההודעות הזאת לשפה הזאת.\n\nסיבה להגבלה: $1",
"tpt-discouraged-language-force-header": "לא ניתן לתרגם את הדף הזה ל{{GRAMMAR:תחילית|$1}}.",
"tpt-discouraged-language-force-content": "מנהל התרגום החליט שאפשר לתרגם את הדף הזה רק ל{{GRAMMAR:תחילית|$1}}.",
@@ -82,7 +79,6 @@
"tpt-discouraged-language-reason": "סיבה: $1",
"tpt-priority-languages": "מנהל תרגום הגדיר שהשפות המועדפות לקבוצה הזאת הן $1.",
"tpt-render-summary": "עדכון להתאמת הגרסה החדשה של דף המקור",
- "tpt-download-page": "ייצוא דף עם תרגומים",
"aggregategroups": "קבוצות משולבות",
"tpt-aggregategroup-add": "הוספה",
"tpt-aggregategroup-save": "שמירה",
@@ -105,7 +101,7 @@
"log-description-pagetranslation": "יומן של פעולות שמיוחדות למערכת תרגום דפים",
"log-name-pagetranslation": "יומן תרגום דפים",
"logentry-pagetranslation-mark": "$1 {{GENDER:$2|סימן|סימנה}} את הדף $3 לתרגום",
- "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|הוציא|הוציאה}} את הדף $3 ממצב תרגום",
+ "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|הוציא|הוציאה}} את הדף $3 ממערכת התרגום",
"logentry-pagetranslation-moveok": "$1 {{GENDER:$2|השלים|השלימה}} את שינוי השם של הדף ההניתן לתרגום $3 אל $4",
"logentry-pagetranslation-movenok": "$1 {{GENDER:$2|נתקל|נתקלה}} בבעיה בעת העברת הדף $3 לשם $4",
"logentry-pagetranslation-deletefok": "$1 {{GENDER:$2|השלים|השלימה}} את המחיקה של הדף הניתן לתרגום $3",
@@ -119,6 +115,15 @@
"logentry-pagetranslation-prioritylanguages-force": "$1 {{GENDER:$2|הגביל|הגבילה}} את התרגום של הדף $3 אל השפות הבאות: $5",
"logentry-pagetranslation-associate": "$1 {{GENDER:$2|הוסיף|הוסיפה}} את הדף הניתן לתרגום $3 לקבוצה המשולבת $4",
"logentry-pagetranslation-dissociate": "$1 {{GENDER:$2|הוציא|הוציאה}} את הדף הניתן לתרגום $3 מהקבוצה המשולבת $4",
+ "log-action-filter-pagetranslation": "סוג הפעולות:",
+ "log-action-filter-pagetranslation-mark": "סימונים של דפים לתרגום",
+ "log-action-filter-pagetranslation-unmark": "הסרות של דפים ממערכת התרגום",
+ "log-action-filter-pagetranslation-move": "העברות של דפים",
+ "log-action-filter-pagetranslation-delete": "מחיקות של דפים",
+ "log-action-filter-pagetranslation-encourage": "עידודים של תרגומים",
+ "log-action-filter-pagetranslation-discourage": "המלצות לא לתרגם",
+ "log-action-filter-pagetranslation-prioritylanguages": "שינויים בעדיפויות של שפות",
+ "log-action-filter-pagetranslation-aggregategroups": "שינויים בקבוצות משולבות",
"pt-movepage-title": "להעביר את הדף הניתן לתרגום $1",
"pt-movepage-blockers": "דף שניתן לתרגום אינו יכול להיות מועבר לשם חדש בגלל {{PLURAL:$1|השגיאה הבאה|השגיאות הבאות}}:",
"pt-movepage-block-base-exists": "כבר קיים דף לתרגום בשם [[:$1]].",
@@ -143,11 +148,11 @@
"pt-movepage-action-perform": "לבצע את ההעברה",
"pt-movepage-action-other": "שינוי יעד",
"pt-movepage-intro": "דף מיוחד זה מאפשר לך להעביר דפים מסומנים לתרגום.\nפעולת ההעברה אינה מיידית, מכיוון שצריך להעביר דפים רבים.\nבזמן שהדפים מועברים, לא ניתן לקיים שום קשר איתם.\nפעולות שייכשלו יירשמו ב[[Special:Log/pagetranslation|יומן תרגום הדפים]], ויהיה צורך לתקן אותן באופן ידני.",
- "pt-movepage-logreason": "חלק מהדף הניתן לתרגום $1.",
- "pt-movepage-started": "עכשיו דף הבסיס הועבר.\nנא לבדוק את השגיאות ואת הודעת ההשלמה ב[[Special:Log/pagetranslation|יומן תרגום הדפים]].",
+ "pt-movepage-logreason": "חלק מהדף הניתן לתרגום \"$1\"",
+ "pt-movepage-started": "נא לבדוק שגיאות ב[[Special:Log/pagetranslation|יומן תרגום הדפים]] בעוד זמן־מה וכן את הודעת ההשלמה.",
"pt-locked-page": "הדף הזה נעול כי הדף הניתן לתרגום מועבר כעת.",
- "pt-deletepage-lang-title": "מחיקת דף התרגום $1.",
- "pt-deletepage-full-title": "מחיקת הדף הניתן לתרגום $1.",
+ "pt-deletepage-lang-title": "מחיקת דף התרגום \"$1\".",
+ "pt-deletepage-full-title": "מחיקת הדף הניתן לתרגום \"$1\".",
"pt-deletepage-invalid-title": "הדף השצוין אינו תקין.",
"pt-deletepage-invalid-text": "הדף שצוין אינו דף ניתן לתרגום או תרגום של דף כזה.",
"pt-deletepage-action-check": "רשימת דפים למחיקה",
@@ -164,8 +169,8 @@
"pt-deletepage-list-section": "דפי יחידת תרגום",
"pt-deletepage-list-other": "דפי משנה אחרים",
"pt-deletepage-list-count": "סך הכול {{PLURAL:$1|דף אחד|$1 דפים}} למחוק.",
- "pt-deletepage-full-logreason": "חלק מהדף הניתן לתרגום $1.",
- "pt-deletepage-lang-logreason": "חלק מדך התרגום $1.",
+ "pt-deletepage-full-logreason": "חלק מהדף הניתן לתרגום \"$1\"",
+ "pt-deletepage-lang-logreason": "חלק מדף התרגום \"$1\"",
"pt-deletepage-started": "נא לבדוק את השגיאות ואת הודעת ההשלמה ב[[Special:Log/pagetranslation|יומן תרגום הדפים]]",
"pt-deletepage-intro": "הדך המיוחד הזה מאפשר לך למחוק בשלמותם דפים ניתנים לתרגום או תרגומים שלהם לשפה כלשהי.\nפעולת המחיקה לא תהיה מיידית, כי יש למחוק את כל הדפים התלויים בהם.\nפעולות שייכשלו יירשמו ב[[Special:Log/pagetranslation|יומן תרגום הדפים]] ויהיה צורך לתקן אותן ידנית.",
"pagemigration": "העברת דף מתורגם",
@@ -173,18 +178,20 @@
"pm-import-button-label": "ייבוא",
"pm-savepages-button-label": "שמירה",
"pm-cancel-button-label": "ביטול",
- "pm-pagename-placeholder": "נא להזין את שם הדף",
- "pm-langcode-placeholder": "קוד השפה",
"pm-page-does-not-exist": "הדף $1 אינו קיים",
"pm-old-translations-missing": "$1 אינו מכיל תרגומים ישנים",
"pm-extra-units-warning": "ייתכן שקיימות כאן יחידות נספות. נא להתאים את המקור ואת יחידות התרגום.",
"pm-pagename-missing": "נא להזין את שם הדף",
- "pm-langcode-missing": "נא להזין את קוד השפה",
"pm-add-icon-hover-text": "להוסיף יחידה למטה",
"pm-swap-icon-hover-text": "להחליף עם יחידה מעל",
"pm-delete-icon-hover-text": "למחוק יחידה",
- "pm-pagetitle-invalid": "נא להזין כותרת דף תקינה",
+ "pm-pagetitle-placeholder": "נא להזין את שם הדף",
+ "pm-pagetitle-invalid": "נא להזין כותרת דף תקינה. היא צריכה להיות בצורת <שם הדף>/<קוד השפה>.",
+ "pm-pagetitle-missing": "נא להזין את שם הדף.",
+ "pm-langcode-missing": "נראה שקוד השפה חסר בכותרת. נא להזין את שם הדף בצורת <שם הדף>/<קוד השפה>",
"pm-summary-import": "דף מיובא באמצעות [[Special:PageMigration|העברת דף מתורגם]]",
+ "pm-on-import-message-text": "התרגומים הישנים יובאו. יש להשתמש באפשרויות ההוספה, ההחלפה והמחיקה כדי להתאים את יחידות התרגום וללחוץ על כפתור \"{{int:pm-savepages-button-label}}\" כדי לשמור אותם. יש ללחוץ על כפתור \"{{int:pm-cancel-button-label}}\" כדי לזרוק.",
+ "pm-on-save-message-text": "יחידות התרגום נשמרו. עכשיו אפשר להזין את כותרת התרגום החדש כדי להעביר אותו, או לעשות שינויים ליחידות להלן ולשמור גרסה חדשה.",
"tpt-translate-title": "לאפשר תרגום של כותרת הדף",
"pp-save-summary": "הדף הוכן לתרגום",
"pagepreparation": "הכנת דף",
@@ -192,7 +199,7 @@
"pp-prepare-button-label": "הכנה",
"pp-save-button-label": "שמירה",
"pp-cancel-button-label": "ביטול",
- "pp-save-message": "הדף נשמר באפשרותך [$1 לערוך] אותו.",
+ "pp-save-message": "הדף נשמר. באפשרותך [$1 לערוך] אותו.",
"pp-prepare-message": "הדף הוכן לתרגום. ר' את ההשוואה להלן. יש ללחוץ על הכפתור \"{{int:pp-save-button-label}} אם הכול בסדר!",
"pp-already-prepared-message": "נראה שהדף כבר הוכן לתרגום. אין שינויים בהשוואה לגרסה הקודמת.",
"pp-pagename-missing": "נא להזין את שם הדף.",
@@ -200,5 +207,7 @@
"pp-diff-new-header": "טקסט שהוכן",
"tpt-unlink-confirm": "נא לאשר שאכן ברצונך להסיר את הדף הזה ממערכת התרגום.\nבורר השפות ושמות של דפים מתורגמים יפסיקו לפעול.\nניתן יהיה לערוך את דפי התרגום.",
"tpt-unlink-button": "הסרה ממערכת התרגום",
- "tpt-unlink-summary": "הסרת דף ממערכת התרגום"
+ "tpt-unlink-summary": "הסרת דף ממערכת התרגום",
+ "tpt-generic-confirm": "נא לאשר את הפעולה.",
+ "tpt-generic-button": "אישור"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/hi.json b/MLEB/Translate/i18n/pagetranslation/hi.json
index 9ccd40d3..51682a47 100644
--- a/MLEB/Translate/i18n/pagetranslation/hi.json
+++ b/MLEB/Translate/i18n/pagetranslation/hi.json
@@ -3,30 +3,61 @@
"authors": [
"Ansumang",
"Siddhartha Ghai",
- "संजीव कुमार"
+ "संजीव कुमार",
+ "NehalDaveND",
+ "Sfic"
]
},
"pagetranslation": "पृष्ठ अनुवाद",
"tpt-section": "अनुवाद यूनिट $1",
- "tpt-template": "पृष्ठ साँचा",
"tpt-diff-old": "पूर्व लेख",
"tpt-diff-new": "नया लेख",
"tpt-oldrevision": "$2, [[:$1]] का नवीनतम संस्करण नहीं है।\nकेवल नवीनतम संस्करण को अनुवाद के लिए चिह्नित किया जा सकता है।",
"tpt-saveok": "पृष्ठ [[:$1]] को $2 {{PLURAL:$2|अनुवाद इकाई|अनुवाद इकाइयों}} के साथ अनुवाद के लिए चिह्नित किया गया है।\nयह पृष्ठ <span class=\"plainlinks\">[$3 अनुवादित]</span> किया जा सकता है।",
"tpt-other-pages-title": "टूटा पृष्ठ",
+ "tpt-select-prioritylangs-reason": "कारण:",
+ "tpt-rev-mark": "अनुवाद हेतु चिन्हित करें",
+ "tpt-rev-encourage": "पुनःस्थापित करें",
+ "translate-tag-translate-link-desc": "इस पृष्ठ का अनुवद करें",
+ "translate-tag-markthis": "अनुवाद हेतु इस पृष्ठ को चिन्हित करें",
+ "tpt-languages-legend": "अन्य भाषाएँ",
+ "tpt-languages-zero": "इस भाषा हेतु अनुवाद करना शुरू करें",
"tpt-languages-nonzero": "$1 ($2% अनूदित)",
- "pt-movepage-list-translation": "अनुवाद पृष्ठ",
- "pt-movepage-list-section": "अनुभाग पृष्ठ",
- "pt-movepage-list-other": "अन्य उपपृष्ठ",
+ "tpt-tab-translate": "अनुवाद करें",
+ "tpt-discouraged-language-reason": "कारण : $1",
+ "tpt-aggregategroup-add": "जोडें",
+ "tpt-aggregategroup-save": "सहेजे",
+ "tpt-aggregategroup-new-name": "नाम:",
+ "tpt-aggregategroup-new-description": "विवरण (ऐच्छिक)",
+ "tpt-aggregategroup-invalid-group": "समूह मौजूद नहीं है",
+ "tpt-aggregategroup-edit-name": "नाम:",
+ "tpt-aggregategroup-edit-description": "विवरण :",
+ "tpt-aggregategroup-update": "सहेजें",
+ "tpt-aggregategroup-update-cancel": "रद्द करें",
+ "tpt-invalid-group": "अमान्य दल",
+ "pt-movepage-list-translation": "अनुवाद {{PLURAL:$1|पृष्ठ}}",
+ "pt-movepage-list-section": "अनुवाद इकाई {{PLURAL:$1|पृष्ठ}}",
+ "pt-movepage-list-other": "अन्य उप{{PLURAL:$1|पृष्ठ}}",
"pt-movepage-current": "सद्य सदस्यनाम:",
"pt-movepage-new": "नया नाम:",
"pt-movepage-reason": "कारण:",
+ "pt-movepage-action-other": "लक्ष्य बदले:",
"pt-deletepage-current": "पृष्ठ नाम:",
"pt-deletepage-reason": "कारण:",
+ "pt-deletepage-subpages": "सभी उपपृष्ठों को हटाएँ",
"pt-deletepage-list-pages": "पृष्ठ तालिका हटाने के लिए",
"pt-deletepage-list-translation": "अनुवाद पृष्ठ",
- "pt-deletepage-list-section": "अनुभाग पृष्ठ",
+ "pt-deletepage-list-section": "अनुवाद इकाई पृष्ठ",
"pt-deletepage-list-other": "अन्य उपपृष्ठ",
+ "pm-import-button-label": "आयात करें",
+ "pm-savepages-button-label": "सहेजें",
+ "pm-cancel-button-label": "रद्द करें",
+ "pm-page-does-not-exist": "$1 अस्तित्व में नहीं है।",
+ "pm-pagetitle-placeholder": "पृष्ठ का शीर्षक लिखें",
+ "pm-pagetitle-missing": "कृपया पृष्ठ का नाम लिखें।",
+ "pp-save-button-label": "सहेजें",
+ "pp-cancel-button-label": "रद्द करें",
+ "pp-diff-old-header": "स्रोत पाठ",
"tpt-unlink-confirm": "कृपया पुष्टि करें कि आप वास्तव में इस पृष्ठ को अनुवाद निकाय से हटाना चाहते हो।\nभाषा चयनकर्ता और अनुवादित पृष्ठ नाम काम करना बन्द कर देंगे। अनुवाद पृष्ठ सम्पादनीय हो जायेगा।",
"tpt-unlink-button": "अनुवाद से निकालें",
"tpt-unlink-summary": "अनुवाद से निकाला गया पृष्ठ"
diff --git a/MLEB/Translate/i18n/pagetranslation/hr.json b/MLEB/Translate/i18n/pagetranslation/hr.json
index 03602310..9cd10561 100644
--- a/MLEB/Translate/i18n/pagetranslation/hr.json
+++ b/MLEB/Translate/i18n/pagetranslation/hr.json
@@ -4,30 +4,42 @@
"Ex13",
"Herr Mlinka",
"SpeedyGonsales",
- "Roberta F."
+ "Roberta F.",
+ "MaGa",
+ "Bugoslav"
]
},
"pagetranslation": "Prijevod stranice",
"right-pagetranslation": "Označi inačice stranica za prijevod",
- "tpt-desc": "Proširenje za prevođenje sadržaja stranica",
+ "action-pagetranslation": "upravljaj prevodivim stranicama",
"tpt-section": "Grupa za prijevod $1",
"tpt-section-new": "Nova grupa za prijevod.\nIme: $1",
"tpt-section-deleted": "Grupa za prijevod $1",
- "tpt-template": "Predložak stranice",
- "tpt-templatediff": "Predložak stranice je promijenjen.",
"tpt-diff-old": "Prethodni tekst",
"tpt-diff-new": "Novi tekst",
"tpt-submit": "Označi ovu verziju za prijevod",
"tpt-sections-oldnew": "Novi i postojeći prijevodi",
"tpt-sections-deleted": "Obrisane grupe prijevoda",
"tpt-sections-template": "Predložak stranice za prijevod",
+ "tpt-action-nofuzzy": "Ne obeskrepljuj prijevode",
+ "tpt-badtitle": "Dano ime stranice ($1) nije valjani naslov",
"tpt-nosuchpage": "Stranica $1 ne postoji",
+ "tpt-oldrevision": "$2 nije posljednja inačica stranice [[:$1]].\nJedino posljednje inačice mogu se označiti za prevođenje.",
+ "tpt-notsuitable": "Stranica $1 nije pogodna za prevođenje.\nUtvrdite, postoje li oznake <nowiki><translate></nowiki> i ispravna sintaksa.",
+ "tpt-discouraged-pages-title": "Nepreporučene stranice",
"translate-tag-translate-link-desc": "Prevedi ovu stranicu",
"translate-tag-markthis": "Označi ovu stranicu za prijevod",
+ "translate-tag-hasnew": "Ova stranica sadržava <span class=\"plainlinks\">[$1 uređivanja]</span> koja nisu označena za prevođenje.",
+ "tpt-translation-intro": "Ova je stranica <span class=\"plainlinks\">[$1 prevedena inačica]</span> stranice [[$2]], a prijevod je $3 % dovršen.",
+ "tpt-translation-intro-fuzzy": "Zastarjeli prijevodi označeni su na ovaj način.",
"tpt-languages-legend": "Drugi jezici:",
"tpt-languages-nonzero": "$1 ($2 % prevedeno)",
+ "tpt-tab-translate": "Prevedi",
+ "aggregategroups": "Spojene skupine",
+ "log-name-pagetranslation": "Evidencija prevođenja stranica",
+ "logentry-pagetranslation-deletelok": "$1 {{GENDER:$2|pobrisao|pobrisala}} je prevodivu stranicu $3",
"pt-movepage-list-pages": "Popis stranica za premještanje",
- "pt-movepage-list-other": "Ostale podstranice",
+ "pt-movepage-list-other": "{{PLURAL:$1|Druga podstranica|Druge podstranice}}",
"pt-movepage-current": "Trenutačni naziv:",
"pt-movepage-new": "Novi naziv:",
"pt-movepage-reason": "Razlog:",
@@ -35,6 +47,9 @@
"pt-movepage-action-check": "Provjeri je li premještanje moguće",
"pt-movepage-action-perform": "Premjesti",
"pt-movepage-action-other": "Promijeni cilj",
- "pt-movepage-intro": "Ova posebna stranica omogućava vam premještanje stranica koje su označene za prijevod.\nPremještanje nije trenutačno, jer mnoge stranice treba premjestiti.\nRed poslova će se koristiti za premještanje stranica.\nDok se stranice premještaju, nije moguće raditi na stranicama u pitanju.\nKvarovi/pogreške biti će prijavljene u evidenciji prijevoda i trebaju se ručno popraviti.",
- "pt-movepage-logreason": "Dio prevodive stranice $1."
+ "pt-movepage-intro": "Ova posebna stranica omogućava vam premještanje stranica koje su označene prevođenje.\nPremještanje nije trenutno, jer će biti potrebno premjestiti mnoge stranice.\nRed poslova će se koristiti za premještanje stranica.\nDok se stranice premještaju, nije moguće raditi na stranicama u pitanju.\nKvarovi/pogreške biti će prijavljene u [[Special:Log/pagetranslation|evidenciji prijevoda]] i trebaju se ručno popraviti.",
+ "pt-movepage-logreason": "Dio prevodive stranice »$1«.",
+ "pm-savepages-button-label": "Spremi",
+ "pp-save-button-label": "Spremi",
+ "pp-save-message": "Stranica je spremljena. Možete je [$1 uređivati]."
}
diff --git a/MLEB/Translate/i18n/pagetranslation/hsb.json b/MLEB/Translate/i18n/pagetranslation/hsb.json
index a2611e29..1f2c2776 100644
--- a/MLEB/Translate/i18n/pagetranslation/hsb.json
+++ b/MLEB/Translate/i18n/pagetranslation/hsb.json
@@ -8,12 +8,9 @@
"pagetranslation": "Přełožowanje strony",
"right-pagetranslation": "Wersije strony za přełožowanje markěrować",
"action-pagetranslation": "přełožujomne strony zrjadować",
- "tpt-desc": "Rozšěrjenje za přełožowanje wobsahowych stronow",
"tpt-section": "Přełožowanska jednotka $1",
"tpt-section-new": "Nowa přełožowanska jednotka. Mjeno: $1",
"tpt-section-deleted": "Přełožowanska jednotka $1",
- "tpt-template": "Předłoha strony",
- "tpt-templatediff": "Předłoha strony je so změniła.",
"tpt-diff-old": "Předchadny tekst",
"tpt-diff-new": "Nowy tekst",
"tpt-submit": "Tutu wersiju za přełožowanje markěrować",
@@ -27,7 +24,6 @@
"tpt-notsuitable": "Strona $1 za přełožowanje přihódna njeje.\nZaswěsć, zo ma taflički <nowiki><translate></nowiki> a płaćiwu syntaksu.",
"tpt-saveok": "Strona [[:$1]] je so za přełožowanje z $2 {{PLURAL:$2|přełožujomnej jednotku|přełožujomnej jednotkomaj|přełožujomnymi jednotkami|přełožujomnymi jednotkami}} markěrowała.\nStrona hodźi so nětko <span class=\"plainlinks\">[$3 přełožować]</span>.",
"tpt-offer-notify": "Móžeš wo tutej stronje <span class=\"plainlinks\">[$1 přełožowarjow informować]</span>.",
- "tpt-badsect": "\"$1\" płaćiwe mjeno za přełožowansku jednotku $2 njeje.",
"tpt-showpage-intro": "Deleka su nowe, eksistowace a zhašane přełožowanske jednotki nalistowane.\nPrjedy hač tutu wersiju za přełožowanje markěruješ, kontroluj, hač změny přełožowanskich jednotkow su miniměrowane, zo by njetrěbne dźěło za přełožowarjow wobešoł.",
"tpt-mark-summary": "Je tutu wersiju za přełožowanje markěrował",
"tpt-edit-failed": "Strona njeda so aktualizować: $1",
@@ -60,6 +56,7 @@
"translate-tag-markthisagain": "Tuta strona ma <span class=\"plainlinks\">[$1 {{PLURAL:$1|změnu|změnje|změny|změnow}}]</span>, wot toho zo, bu posledni raz <span class=\"plainlinks\">[$2 za přełožowanje markěrowana]</span>.",
"translate-tag-hasnew": "Tuta strona wobsahuje <span class=\"plainlinks\">[$1 {{PLURAL:$1|změna, kotraž njeje markěrowana|změnje, kotrejž njejstej markěrowanej|změny, kotrež njejsu markěrowane|změnow, kotrež njejsu markěrowane}}]</span> za přełožowanje.",
"tpt-translation-intro": "Tuta strona je <span class=\"plainlinks\">[$1 přełožena wersija]</span> strony [[$2]] a $3 % přełožka je dokónčene a přełožk je aktualny.",
+ "tpt-translation-intro-fuzzy": "Zestarjene přełožki su kaž tutón markěrowane.",
"tpt-languages-legend": "Druhe rěče:",
"tpt-languages-zero": "Přełožowanje za tutu rěč započeć",
"tpt-languages-nonzero": "$1 ($2% přełožene)",
@@ -72,7 +69,6 @@
"tpt-discouraged-language-reason": "Přičina: $1",
"tpt-priority-languages": "Přełožowanski administrator je primarne rěče za tutu skupinu jako $1 nastajił.",
"tpt-render-summary": "Aktualizacija po nowej wersiji žórłoweje strony",
- "tpt-download-page": "Stronu z přełožkami eksportować",
"aggregategroups": "Skupiny zjednoćić",
"tpt-aggregategroup-add": "Přidać",
"tpt-aggregategroup-save": "Składować",
diff --git a/MLEB/Translate/i18n/pagetranslation/ht.json b/MLEB/Translate/i18n/pagetranslation/ht.json
index 8a0a9dfb..d93805ab 100644
--- a/MLEB/Translate/i18n/pagetranslation/ht.json
+++ b/MLEB/Translate/i18n/pagetranslation/ht.json
@@ -1,17 +1,15 @@
{
"@metadata": {
"authors": [
- "Boukman"
+ "Boukman",
+ "Tisave"
]
},
"pagetranslation": "Tradiksyon paj yo",
"right-pagetranslation": "Make vèsyon paj yo pou tradui",
- "tpt-desc": "Ekstansyon pou tradui paj kontni yo",
"tpt-section": "Inite tradiksyon $1",
"tpt-section-new": "Nouvo inite tradiksyon.\nNon: $1",
"tpt-section-deleted": "Inite tradiksyon $1",
- "tpt-template": "Modèl pou paj",
- "tpt-templatediff": "Modèl pou paj la chanje",
"tpt-diff-old": "Teks presedan",
"tpt-diff-new": "Nouvo tèks",
"tpt-submit": "Make vèsyon sa pou tradui",
@@ -24,7 +22,6 @@
"tpt-oldrevision": "$2 se pa dènye vèsyon paj [[:$1]].\nSe sèlman dènye vèsyon ki kapab make pou tradui.",
"tpt-notsuitable": "Paj $1 pa bon pou tradui.\nAsire w li gen etikèt <nowiki><translate></nowiki> epi ke li gen yon sentaks ki bon.",
"tpt-saveok": "Paj [[:$1]] te make pou yo tradui l ak 2 {{PLURAL:$2|inite tradiksyon|inite tradiksyon yo}}.\nPaj sa kapab <span class=\"plainlinks\">[$3 tradui]</span> kounye a.",
- "tpt-badsect": "\"$1\" pa yon bon non pou inite tradiksyon $2.",
"tpt-showpage-intro": "Anba, gen yon lis tout sèksyon ki nouvo, sa ki egzsite ak sa ki te efase yo.\nAnvan ou make vèsyon sa pou yo tradui, verifye ki chanjman nan seksyon yo pa anpil, yon fason pou pa bay tradiktè yo travay ki pa nesesè.",
"tpt-mark-summary": "Make vèsyon sa pou tradui",
"tpt-edit-failed": "Pa t kapab mete paj sa ajou: $1",
@@ -40,11 +37,12 @@
"translate-tag-markthisagain": "Paj sa te <span class=\"plainlinks\">[$1 chanje]</span> depi li te <span class=\"plainlinks\">[$2 make pou tradui]</span>.",
"translate-tag-hasnew": "Paj sa genyen <span class=\"plainlinks\">[$1 chanjman]</span> ki pa make pou tradui.",
"tpt-translation-intro": "Paj sa a, se yon <span class=\"plainlinks\">[$1 vèsyon ki tradui]</span> de paj [[$2]], epi tradiksyon a fèt a $3%.",
+ "tpt-translation-intro-fuzzy": "Tradiksyon ki ansyen yo make konsa.",
"tpt-languages-legend": "Lòt lang yo:",
+ "tpt-languages-nonzero": "$1 ($2 tradui)",
"tpt-target-page": "Paj sa a, se yon tradiksyon paj [[$1]] epi ou kapab mete a jou tradiksyon an lè ou itilize [$2 zouti tradiksyon an].",
"tpt-unknown-page": "Espas non sa a rezève pou tradiksyon paj yo.\nPaj w ap eseye modifye pa sanble koresponn ak yon paj ki make pou tradiksyon.",
"tpt-render-summary": "N ap mete ajou pou nou genyen nouvo vèsyon paj sous la.",
- "tpt-download-page": "Ekspòte paj ki gen tradiksyon",
"pt-parse-open": "Baliz &lt;translate> pa balanse.\nModèle tradiksyon: <pre>$1</pre>",
"pt-parse-close": "Baliz &lt;/translate> pa balanse.\nModèle tradiksyon: <pre>$1</pre>",
"pt-parse-nested": "Seksyon enbrike &lt;translate> pa otorize.\nTeks baliz la: <pre>$1</pre>",
diff --git a/MLEB/Translate/i18n/pagetranslation/hu.json b/MLEB/Translate/i18n/pagetranslation/hu.json
index 639c8ba2..3298d37a 100644
--- a/MLEB/Translate/i18n/pagetranslation/hu.json
+++ b/MLEB/Translate/i18n/pagetranslation/hu.json
@@ -7,18 +7,18 @@
"Misibacsi",
"Xbspiro",
"Csega",
- "Tacsipacsi"
+ "Tacsipacsi",
+ "Tgr",
+ "Máté",
+ "R-Joe"
]
},
"pagetranslation": "Lap fordítása",
"right-pagetranslation": "Lapok változatainak megjelölése fordítandónak",
"action-pagetranslation": "fordítható oldalak kezelése",
- "tpt-desc": "Kiterjesztés lapok fordításához",
"tpt-section": "$1 fordítási egység",
"tpt-section-new": "Új fordítási egység.\nNév: $1",
"tpt-section-deleted": "$1 fordítási egység",
- "tpt-template": "Lapsablon",
- "tpt-templatediff": "A lapsablon megváltozott.",
"tpt-diff-old": "Előző szöveg",
"tpt-diff-new": "Új szöveg",
"tpt-submit": "A változat megjelölése fordításra.",
@@ -31,10 +31,12 @@
"tpt-oldrevision": "$2 nem a(z) [[:$1]] lap legutolsó változata.\nCsak a legfrissebb változatok jelölhetőek meg fordításra.",
"tpt-notsuitable": "A(z) $1 lap nem alkalmas a fordításra.\nEllenőrizd, hogy szerepelnek-e benne <nowiki><translate></nowiki> tagek, és helyes-e a szintaxisa.",
"tpt-saveok": "A(z) [[:$1]] lap $2 fordítási egységgel megjelölve fordításra.\nA lap mostantól <span class=\"plainlinks\">[$3 lefordítható]</span>.",
- "tpt-badsect": "„$1” nem érvényes név a(z) $2 fordítási egységnek.",
+ "tpt-offer-notify": "<span class=\"plainlinks\">[$1 Értesítheted a fordítókat]</span> erről a lapról.",
"tpt-showpage-intro": "Alább az új, már létező és törölt szakaszok felsorolása látható.\nMielőtt fordításra jelölöd ezt a változatot, ellenőrizd hogy a szakaszok változásai minimálisak, elkerülendő a felesleges munkát a fordítóknak.",
"tpt-mark-summary": "Változat megjelölve fordításra",
+ "tpt-mark-nochanges": "Nincs átnézendő változtatás. A lap megjelölése fordításra nem fogja módosítani se a lapot, sem bármilyen létező fordítási egységet.",
"tpt-edit-failed": "Nem sikerült frissíteni a lapot: $1",
+ "tpt-duplicate": "A(z) $1 név több fordítási egységhez is tartozik",
"tpt-already-marked": "A lap legutolsó verziója már meg van jelölve fordításra.",
"tpt-unmarked": "A(z) $1 lap most már nincs megjelölve fordításra.",
"tpt-list-nopages": "Nincsenek sem fordításra kijelölt, sem kijelölésre kész lapok.",
@@ -45,27 +47,40 @@
"tpt-new-pages": "{{PLURAL:$1|Ez a lap tartalmaz|Ezek a lapok tartalmaznak}} fordítási tagekkel ellátott szöveget, de jelenleg egyik {{PLURAL:$1|változata|változatuk}} sincs megjelölve fordításra.",
"tpt-old-pages": "{{PLURAL:$1|Ennek a lapnak|Ezeknek a lapoknak}} néhány változata meg van jelölve fordításra.",
"tpt-other-pages": "A lap korábbi {{PLURAL:$1|változata|változatai}} fordíthatónak voltak megjelölve, de a legutóbbi {{PLURAL:$1|változatot|változatokat}} nem lehet megjelölni fordításra.",
+ "tpt-discouraged-pages": "A {{PLURAL:$1|lap|lapok}} további fordítása nem javasolt.",
+ "tpt-select-prioritylangs": "A kiemelt nyelvek vesszővel elválasztott listája",
+ "tpt-select-prioritylangs-force": "A nem kiemelt nyelvekre történő fordítás megakadályozása",
"tpt-select-prioritylangs-reason": "Ok:",
"tpt-sections-prioritylangs": "Kiemelt nyelvek",
"tpt-rev-mark": "megjelölés fordításra",
"tpt-rev-unmark": "lap eltávolítása a fordításból",
"tpt-rev-discourage": "nem javasolt",
"tpt-rev-encourage": "visszaállít",
+ "tpt-rev-mark-tooltip": "A lap legutóbbi változatának megjelölése fordításra.",
+ "tpt-rev-unmark-tooltip": "A lap eltávolítása a fordításból.",
+ "tpt-rev-encourage-tooltip": "A lap visszaállítása a normális fordításra.",
"translate-tag-translate-link-desc": "A lap fordítása",
"translate-tag-markthis": "Lap megjelölése fordításra",
"translate-tag-markthisagain": "Ezen a lapon történtek <span class=\"plainlinks\">[$1 változtatások]</span>, mióta utoljára <span class=\"plainlinks\">[$2 megjelölték fordításra]</span>.",
"translate-tag-hasnew": "Ez a lap tartalmaz <span class=\"plainlinks\">[$1 változtatásokat]</span>, amelyek nincsenek fordításra jelölve.",
"tpt-translation-intro": "Ez a(z) [[$2]] lap egy <span class=\"plainlinks\">[$1 lefordított változata]</span>, és a fordítás $3%-a van kész.",
+ "tpt-translation-intro-fuzzy": "Az elavult fordítások így vannak jelölve.",
"tpt-languages-legend": "Más nyelvek:",
+ "tpt-languages-zero": "Fordítás indítása erre a nyelvre",
"tpt-languages-nonzero": "$1 (lefordítva: $2%)",
"tpt-tab-translate": "Fordítás",
"tpt-target-page": "Ezt a lapot nem lehet kézzel frissíteni.\nA(z) [[$1]] lap fordítása, és a fordítását [$2 a fordítás segédeszköz] segítségével lehet frissíteni.",
"tpt-unknown-page": "Ez a névtér a tartalmi lapok fordításainak van fenntartva.\nA lap, amit szerkeszteni próbálsz, úgy tűnik hogy nem egyezik egy fordításra jelölt lappal sem.",
- "tpt-discouraged-language-header": "A fordítás $1 nyelvre nem fontos ennél a lapnál.",
+ "tpt-translation-restricted": "Ennek a lapnak a fordítását ezen nyelvre megakadályozta egy fordítási adminisztrátor.\n\nIndoklás: $1",
+ "tpt-discouraged-language-force-header": "Ez a lap nem fordítható $1 nyelvre.",
+ "tpt-discouraged-language-force-content": "Egy fordítási adminisztrátor úgy döntött, hogy ez a lap csak $1 nyelvre fordítható.",
+ "tpt-discouraged-language-header": "A fordítás $1 nyelvre nem a legfontosabb feladat ennél a lapnál.",
"tpt-discouraged-language-content": "Egy fordítási adminisztrátor úgy döntött, hogy elsődlegesen $1 nyelvre kell fordítani.",
+ "tpt-discouraged-language-force": "<strong>Ez a lap nem fordítható $2 nyelvre.</strong>\n\nEgy fordítási adminisztrátor úgy döntött, hogy ez a lap csak $3 nyelvre fordítható.",
"tpt-discouraged-language": "<strong>$2 — a fordítás erre a nyelvre nem a legfontosabb feladat.</strong>\n\nAz adminisztrátori javaslat szerint a legfontosabb nyelvek a következők: $3.\n\nKérjük, ha beszéled ezek közül valamelyiket, fontold meg, hogy inkább arra a nyelvre fordítasz előbb: munkádnak így többek láthatják hasznát.",
+ "tpt-discouraged-language-reason": "Indoklás: $1",
+ "tpt-priority-languages": "Egy fordítási adminisztrátor ennek a csoportnak a kiemelt célnyelveit a következő(k)re állította: $1",
"tpt-render-summary": "Frissítés, hogy megegyezzen a forráslap új változatával",
- "tpt-download-page": "Lap exportálása fordításokkal együtt",
"aggregategroups": "Összesített csoportok",
"tpt-aggregategroup-add": "Hozzáad",
"tpt-aggregategroup-save": "Mentés",
@@ -74,14 +89,48 @@
"tpt-aggregategroup-new-description": "Leírás (opcionális):",
"tpt-aggregategroup-remove-confirm": "Biztosan törölni szeretné ezt az összesített csoportot?",
"tpt-aggregategroup-invalid-group": "Csoport nem létezik",
+ "tpt-aggregategroup-edit-name": "Név:",
+ "tpt-aggregategroup-edit-description": "Leírás:",
+ "tpt-aggregategroup-update": "Mentés",
+ "tpt-aggregategroup-update-cancel": "Mégse",
+ "tpt-invalid-group": "Érvénytelen csoport",
"pt-parse-open": "Páratlan &lt;translate> tag.\nFordítási sablon: <pre>$1</pre>",
"pt-parse-close": "Páratlan &lt;/translate> tag.\nFordítási sablon: <pre>$1</pre>",
"pt-parse-nested": "Egymásba ágyazott &lt;translate> szakaszok nem engedélyezettek.\nElem szövege: <pre>$1</pre>",
+ "pt-shake-multiple": "Több fordításiegység-jelző egy fordítási egységhez.\nA fordítási egység szövege: <pre>$1</pre>",
+ "pt-shake-position": "Fordításiegység-jelzők váratlan helyen.\nA fordítási egység szövege: <pre>$1</pre>",
+ "pt-shake-empty": "Üres fordítási egység a(z) „$1” jelzőhöz.",
"log-description-pagetranslation": "A lapfordító rendszerhez kapcsolódó műveletek naplója",
"log-name-pagetranslation": "Oldalfordítási napló",
"logentry-pagetranslation-mark": "$1 {{GENDER:$2|megjelölte}} a(z) $3 lapot fordításra",
+ "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|eltávolította}} a(z) $3 lapot a fordításból",
+ "logentry-pagetranslation-moveok": "$1 {{GENDER:$2|befejezte}} a(z) $3 fordítható lap átnevezését $4 névre",
+ "logentry-pagetranslation-movenok": "$1 hibát {{GENDER:$2|észlelt}} a(z) $3 lap $4 címre mozgatásakor",
+ "logentry-pagetranslation-deletefok": "$1 {{GENDER:$2|befejezte}} a(z) $3 lefordítható lap törlését",
+ "logentry-pagetranslation-deletefnok": "$1 nem tudta {{GENDER:$2|törölni}} a(z) $3 lapot, ami a(z) $4 lefordítható laphoz tartozik",
+ "logentry-pagetranslation-deletelok": "$1 {{GENDER:$2|befejezte}} a(z) $3 fordítási lap törlését",
+ "logentry-pagetranslation-deletelnok": "$1 nem tudta {{GENDER:$2|törölni}} a(z) $3 lapot, ami a(z) $4 fordítási laphoz tartozik",
+ "logentry-pagetranslation-prioritylanguages-unset": "$1 {{GENDER:$2|eltávolította}} az előnyben részesített nyelveket a(z) $3 lefordítható lapról",
+ "logentry-pagetranslation-prioritylanguages": "$1 {{GENDER:$2|beállította}} a(z) $3 lefordítható lap előnyben részesített nyelveit a következőre: $5",
+ "logentry-pagetranslation-associate": "$1 {{GENDER:$2|hozzáadta}} a(z) $3 lefordítható lapot a(z) $4 összesített csoporthoz",
+ "logentry-pagetranslation-dissociate": "$1 {{GENDER:$2|eltávolította}} a(z) $3 lefordítható lapot a(z) $4 összesített csoportból",
+ "log-action-filter-pagetranslation": "Művelet típusa:",
+ "log-action-filter-pagetranslation-mark": "Fordításra jelölés",
+ "log-action-filter-pagetranslation-unmark": "Eltávolítás a fordításból",
+ "log-action-filter-pagetranslation-move": "Lapmozgatás",
+ "log-action-filter-pagetranslation-delete": "Laptörlés",
+ "log-action-filter-pagetranslation-prioritylanguages": "Előnyben részesített nyelvek módosítása",
+ "log-action-filter-pagetranslation-aggregategroups": "Összesített csoportok módosítása",
"pt-movepage-title": "A(z) $1 fordítható lap átnevezése",
"pt-movepage-blockers": "Nem lehet átnevezni a fordítható lapot az új névre a következő {{PLURAL:$1|hiba|hibák}} miatt:",
+ "pt-movepage-block-base-exists": "A(z) „[[:$1]]” cél-fordíthatólap létezik.",
+ "pt-movepage-block-base-invalid": "A cél-fordíthatólap címe érvénytelen.",
+ "pt-movepage-block-tp-exists": "A(z) „[[:$2]]” cél-fordításilap létezik.",
+ "pt-movepage-block-tp-invalid": "A(z) „[[:$1]]” cél-fordításilap címe érvénytelen lenne (túl hosszú?).",
+ "pt-movepage-block-section-exists": "A(z) „[[:$2]]” cél-fordításiegység létezik.",
+ "pt-movepage-block-section-invalid": "A(z) „[[:$1]]” cél-fordításiegységének címe érvénytelen lenne (túl hosszú?).",
+ "pt-movepage-block-subpage-exists": "A(z) „[[:$2]]” cél-allap létezik.",
+ "pt-movepage-block-subpage-invalid": "A(z) „[[:$1]]” cél-allapjának címe érvénytelen lenne (túl hosszú?).",
"pt-movepage-list-pages": "Átnevezendő lapok listája",
"pt-movepage-list-translation": "Fordítható {{PLURAL:$1|lap|lapok}}",
"pt-movepage-list-section": "Fordítási egység {{PLURAL:$1|lap|lapok}}",
@@ -95,18 +144,64 @@
"pt-movepage-action-check": "Ellenőrizze, hogy az átnevezés lehetséges-e",
"pt-movepage-action-perform": "Átnevezés végrehajtása",
"pt-movepage-action-other": "Cél megváltoztatása",
- "pt-movepage-logreason": "A(z) $1 fordítható lap része",
+ "pt-movepage-logreason": "A(z) „$1” fordítható lap része",
+ "pt-movepage-started": "Kérjük, ellenőrizd a [[Special:Log/pagetranslation|lapfordítási naplót]] egy idő múlva a hibaüzenetekért és a befejezésről szóló üzenetért.",
+ "pt-locked-page": "Ez a lap zárolva van, mert a fordítási lap jelenleg áthelyezés alatt áll.",
+ "pt-deletepage-lang-title": "A(z) „$1” fordítható lap törlése",
+ "pt-deletepage-full-title": "A(z) „$1” fordítható lap törlése",
+ "pt-deletepage-invalid-title": "A megadott lap érvénytelen.",
+ "pt-deletepage-invalid-text": "A megadott lap se nem fordítható, se nem fordítási lap.",
+ "pt-deletepage-action-check": "A törlendő lapok listázása",
"pt-deletepage-action-perform": "Törlés végrehajtása",
"pt-deletepage-action-other": "Cél megváltoztatása",
"pt-deletepage-lang-legend": "Fordítási lap törlése",
"pt-deletepage-full-legend": "Fordítható lap törlésre",
+ "pt-deletepage-any-legend": "Fordítható vagy fordítási lap törlése",
"pt-deletepage-current": "Lap neve:",
"pt-deletepage-reason": "Ok:",
"pt-deletepage-subpages": "Összes allap törlése",
"pt-deletepage-list-pages": "Törlendő lapok listája",
+ "pt-deletepage-list-translation": "Fordítási lapok",
+ "pt-deletepage-list-section": "Fordításiegység-lapok",
+ "pt-deletepage-list-other": "Egyéb allapok",
+ "pt-deletepage-list-count": "Összesen $1 lapot kell törölni.",
+ "pt-deletepage-full-logreason": "A(z) „$1” fordítható lap része",
+ "pt-deletepage-lang-logreason": "A(z) „$1” fordítási lap része",
+ "pt-deletepage-started": "Kérjük, ellenőrizd a [[Special:Log/pagetranslation|lapfordítási naplót]] a hibaüzenetekért és a befejezésről szóló üzenetért.",
"pagemigration": "Fordítási oldal migráció",
+ "pagemigration-summary": "Adj meg egy fordítási lapot a lapon a Translate-rendszer bevezetése előtt végzett fordítások helyreállításához.",
+ "pm-import-button-label": "Importálás",
+ "pm-savepages-button-label": "Mentés",
+ "pm-cancel-button-label": "Mégse",
+ "pm-page-does-not-exist": "A(z) $1 lap nem létezik.",
+ "pm-old-translations-missing": "A(z) $1 lap nem tartalmaz régi fordításokat.",
+ "pm-extra-units-warning": "Létezhetnek extra egységek. Kérjük, párosítsd a forrást a fordítási egységekkel.",
+ "pm-pagename-missing": "Írd be a lap címét.",
+ "pm-add-icon-hover-text": "Adj hozzá egy egységet lentebb",
"pm-swap-icon-hover-text": "Csere az alábbi egységgel",
"pm-delete-icon-hover-text": "Egység törlése",
+ "pm-pagetitle-placeholder": "Írd be a lap címét",
+ "pm-pagetitle-invalid": "Írj be egy érvényes címet. <code><lapcím>/<nyelvkód></code> formátumban kell lennie.",
+ "pm-pagetitle-missing": "Írd be a lap címét.",
+ "pm-langcode-missing": "Úgy tűnik, hiányzik a nyelvkód a címből. Kérjük, írd be a lap címét code><lapcím>/<nyelvkód></code> formátumban.",
+ "pm-summary-import": "Importálva a [[Special:PageMigration|lapmigráció]] segítségével",
+ "pm-on-save-message-text": "A fordítási egységek elmentve. Most beírhatod egy új fordítási lap címét a migrációhoz, vagy lentebb módosíthatod az egységeket a mentés előtt.",
+ "tpt-translate-title": "A lapcím fordításának engedélyezése",
+ "pp-save-summary": "Előkészítés a fordíáshoz",
+ "pagepreparation": "Lap előkészítése fordításra",
+ "pp-pagename-placeholder": "Írd be a lap címét",
+ "pp-prepare-button-label": "Előkészítés",
"pp-save-button-label": "Mentés",
- "pp-diff-old-header": "Forrás szöveg"
+ "pp-cancel-button-label": "Mégse",
+ "pp-save-message": "A lap el lett mentve. Mostantól [$1 szerkesztheted].",
+ "pp-prepare-message": "A lap elő lett készítve fordításra, lásd az eltéréseket alább. Kattints a „{{int:pp-save-button-label}}” gombra, ha minden rendben!",
+ "pp-already-prepared-message": "Úgy tűnik, a lap már elő lett készítve fordításra. Nem történtek változtatások az előző verzióhoz képest.",
+ "pp-pagename-missing": "Írd be a lap címét.",
+ "pp-diff-old-header": "Forrás szöveg",
+ "pp-diff-new-header": "Előkészített szöveg",
+ "tpt-unlink-confirm": "Kérjük, erősítsd meg, hogy valóban el akarod távolítani ezt a lapot a fordítási rendszerből.\nA nyelvválasztó és a lefordított lapcímek nem fognak működni.\nA lefordított lapok szabadon szerkeszthetővé válnak.",
+ "tpt-unlink-button": "Eltávolítás a fordításból",
+ "tpt-unlink-summary": "Lap eltávolítva a fordításból",
+ "tpt-generic-confirm": "Kérjük, erősítsd meg a műveletet.",
+ "tpt-generic-button": "Megerősítés"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/ia.json b/MLEB/Translate/i18n/pagetranslation/ia.json
index ab02d29b..33792775 100644
--- a/MLEB/Translate/i18n/pagetranslation/ia.json
+++ b/MLEB/Translate/i18n/pagetranslation/ia.json
@@ -7,12 +7,9 @@
"pagetranslation": "Traduction de paginas",
"right-pagetranslation": "Marcar versiones de paginas pro traduction",
"action-pagetranslation": "gerer paginas traducibile",
- "tpt-desc": "Extension pro traducer paginas de contento",
"tpt-section": "Unitate de traduction $1",
"tpt-section-new": "Nove unitate de traduction. Nomine: $1",
"tpt-section-deleted": "Unitate de traduction $1",
- "tpt-template": "Patrono de pagina",
- "tpt-templatediff": "Le patrono del pagina ha cambiate.",
"tpt-diff-old": "Texto anterior",
"tpt-diff-new": "Texto nove",
"tpt-submit": "Marcar iste version pro traduction",
@@ -26,7 +23,6 @@
"tpt-notsuitable": "Le pagina $1 non es traducibile.\nAssecura que illo contine etiquettas <nowiki><translate></nowiki> e ha un syntaxe valide.",
"tpt-saveok": "Le pagina [[:$1]] ha essite marcate pro traduction con $2 {{PLURAL:$2|unitate|unitates}} de traduction.\nLe pagina pote ora esser <span class=\"plainlinks\">[$3 traducite]</span>.",
"tpt-offer-notify": "Tu pote <span class=\"plainlinks\">[$1 notificar le traductores]</span> sur iste pagina.",
- "tpt-badsect": "\"$1\" non es un nomine valide pro le unitate de traduction $2.",
"tpt-showpage-intro": "In basso es listate le unitates de traduction nove, existente e delite.\nAnte de marcar iste version pro traduction, verifica que le modificationes al unitates de traduction sia minimisate pro evitar labor innecessari pro traductores.",
"tpt-mark-summary": "Marcava iste version pro traduction",
"tpt-edit-failed": "Non poteva actualisar le pagina: $1",
@@ -59,6 +55,7 @@
"translate-tag-markthisagain": "Iste pagina ha <span class=\"plainlinks\">[$1 modificationes]</span> depost le ultime vice que illo esseva <span class=\"plainlinks\">[$2 marcate pro traduction]</span>.",
"translate-tag-hasnew": "Iste pagina contine <span class=\"plainlinks\">[$1 modificationes]</span> le quales non ha essite marcate pro traduction.",
"tpt-translation-intro": "Iste pagina es un <span class=\"plainlinks\">[$1 version traducite]</span> del pagina [[$2]] e le traduction es complete a $3%.",
+ "tpt-translation-intro-fuzzy": "Le traductiones obsolete es marcate assi.",
"tpt-languages-legend": "Altere linguas:",
"tpt-languages-zero": "Comenciar le traduction in iste lingua",
"tpt-languages-nonzero": "$1 ($2% traducite)",
@@ -75,7 +72,6 @@
"tpt-discouraged-language-reason": "Motivo: $1",
"tpt-priority-languages": "Un administrator de traduction ha definite le linguas prioritari pro iste gruppo como $1.",
"tpt-render-summary": "Actualisation a un nove version del pagina de origine",
- "tpt-download-page": "Exportar pagina con traductiones",
"aggregategroups": "Gruppos aggregate",
"tpt-aggregategroup-add": "Adder",
"tpt-aggregategroup-save": "Salveguardar",
@@ -134,11 +130,11 @@
"pt-movepage-action-perform": "Facer le renomination",
"pt-movepage-action-other": "Cambiar destination",
"pt-movepage-intro": "Iste pagina special permitte renominar paginas marcate pro traduction.\nLe renomination non essera instantanee, proque il essera necessari renominar multe paginas.\nDurante le renomination del paginas, il non es possibile interager con le paginas in question.\nLe fallimentos essera registrate in le [[Special:Log/pagetranslation|registro de traduction de paginas]] e illos necessita reparation manual.",
- "pt-movepage-logreason": "Parte del pagina traducibile $1.",
- "pt-movepage-started": "Le pagina de base ha essite renominate.\nPer favor verifica le [[Special:Log/pagetranslation|registro de traductiones de paginas]] pro reparar eventual errores e leger le message de completion.",
+ "pt-movepage-logreason": "Parte del pagina traducibile \"$1\"",
+ "pt-movepage-started": "Per favor verifica le [[Special:Log/pagetranslation|registro de traductiones de paginas]] in un momento pro reparar eventual errores e leger le message de completion.",
"pt-locked-page": "Iste pagina es serrate proque le pagina traducibile es actualmente in curso de renomination.",
- "pt-deletepage-lang-title": "Le pagina traducite $1 es delite.",
- "pt-deletepage-full-title": "Le pagina traducibile $1 es delite.",
+ "pt-deletepage-lang-title": "Deletion del pagina traducite \"$1\"",
+ "pt-deletepage-full-title": "Deletion del pagina traducibile \"$1\"",
"pt-deletepage-invalid-title": "Le pagina specificate non es valide.",
"pt-deletepage-invalid-text": "Le pagina specificate es ni traducibile ni un traduction.",
"pt-deletepage-action-check": "Listar paginas a deler",
@@ -155,23 +151,21 @@
"pt-deletepage-list-section": "Paginas de unitate de traduction",
"pt-deletepage-list-other": "Altere subpaginas",
"pt-deletepage-list-count": "In total $1 {{PLURAL:$1|pagina|paginas}} a deler.",
- "pt-deletepage-full-logreason": "Parte del pagina traducibile $1.",
- "pt-deletepage-lang-logreason": "Parte del pagina traducite $1.",
+ "pt-deletepage-full-logreason": "Parte del pagina traducibile \"$1\"",
+ "pt-deletepage-lang-logreason": "Parte del pagina traducite \"$1\"",
"pt-deletepage-started": "Per favor verifica in le [[Special:Log/pagetranslation|registro de traduction de paginas]] le existentia de errores e del message de completion.",
"pt-deletepage-intro": "Iste pagina special permitte deler un tote pagina traducibile o un pagina de traduction individual in un certe lingua.\nLe deletion non essera instantanee perque tote le paginas que depende de illos essera delite tamben.\nFallimentos essera registrate in le [[Special:Log/pagetranslation|registro de traduction de paginas]] e requirera reparation manual.",
"pagemigration": "Migration de paginas de traduction",
"pm-import-button-label": "Importar",
"pm-savepages-button-label": "Salveguardar",
"pm-cancel-button-label": "Cancellar",
- "pm-pagename-placeholder": "Entra le nomine del pagina",
- "pm-langcode-placeholder": "Codice de lingua",
"pm-page-does-not-exist": "$1 non existe",
"pm-old-translations-missing": "$1 non contine ancian traductiones",
"pm-extra-units-warning": "Il pote haber additional unitates. Assecura te que le unitates de fonte e de traduction corresponde correctemente.",
"pm-pagename-missing": "Per favor entra le nomine del pagina",
- "pm-langcode-missing": "Per favor entra le codice de lingua",
"pm-add-icon-hover-text": "Adde un unitate hic infra",
"pm-swap-icon-hover-text": "Excambiar con le unitate hic infra",
"pm-delete-icon-hover-text": "Deler unitate",
+ "pm-langcode-missing": "Le codice de lingua manca in le titulo. Per favor, entra le titulo in formato <nomine-de-pagina>/<codice-de-lingua>.",
"tpt-translate-title": "Permitter le traduction del titulo del pagina"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/id.json b/MLEB/Translate/i18n/pagetranslation/id.json
index e89a034a..d53ffe8b 100644
--- a/MLEB/Translate/i18n/pagetranslation/id.json
+++ b/MLEB/Translate/i18n/pagetranslation/id.json
@@ -14,12 +14,9 @@
},
"pagetranslation": "Penerjemahan halaman",
"right-pagetranslation": "Menandai revisi-revisi halaman untuk diterjemahkan",
- "tpt-desc": "Ekstensi untuk menerjemahkan halaman-halaman isi",
"tpt-section": "Unit penerjemahan $1",
"tpt-section-new": "Unit penerjemahan baru. Nama: $1",
"tpt-section-deleted": "Unit penerjemahan $1",
- "tpt-template": "Templat halaman",
- "tpt-templatediff": "Templat halaman telah diubah.",
"tpt-diff-old": "Teks sebelumnya",
"tpt-diff-new": "Teks baru",
"tpt-submit": "Tandai revisi ini untuk diterjemahkan",
@@ -31,8 +28,7 @@
"tpt-nosuchpage": "Halaman $1 tidak ada",
"tpt-oldrevision": "$2 bukan revisi terakhir dari halaman [[:$1]].\nHanya revisi terakhir yang dapat ditandai untuk diterjemahkan.",
"tpt-notsuitable": "Halaman $1 tidak dapat diterjemahkan.\nPastikan bahwa halaman ini memiliki tag <nowiki><translate></nowiki> dan memiliki sintaksis yang valid.",
- "tpt-saveok": "Halaman [[:$1]] telah ditandai untuk diterjemahkan dengan $2 {{PLURAL:$2|unit penerjemahan|unit penerjemahan}}.\nHalaman ini sekarang dapat <span class=\"plainlinks\"[$3 diterjemahkan]</span>.",
- "tpt-badsect": "\"$1\" bukanlah nama yang valid untuk unit penerjemahan $2.",
+ "tpt-saveok": "Halaman [[:$1]] telah ditandai untuk diterjemahkan dengan $2 {{PLURAL:$2|unit penerjemahan|unit penerjemahan}}.\nHalaman ini sekarang dapat <span class=\"plainlinks\">[$3 diterjemahkan]</span>.",
"tpt-showpage-intro": "Berikut adalah daftar bagian baru, bagian yang telah ada, dan bagian yang dihapus.\nSebelum menandai revisi ini untuk diterjemahkan, harap periksa agar perubahan ke bagian-bagian dapat diminimalisasi guna menghindarkan para penerjemah dari melakukan pekerjaan yang tidak diperlukan.",
"tpt-mark-summary": "Menandai revisi ini untuk diterjemahkan",
"tpt-edit-failed": "Tidak dapat memperbarui halaman: $1",
@@ -48,12 +44,12 @@
"translate-tag-markthisagain": "Halaman ini telah diubah <span class=\"plainlinks\">[$1 kali]</span> sejak terakhir <span class=\"plainlinks\">[$2 ditandai untuk diterjemahkan]</span>.",
"translate-tag-hasnew": "Halaman ini berisikan <span class=\"plainlinks\">[$1 revisi]</span> yang tidak ditandai untuk diterjemahkan.",
"tpt-translation-intro": "Halaman ini adalah sebuah <span class=\"plainlinks\">[$1 versi terjemahan]</span> dari halaman [[$2]] dan terjemahannya telah selesai $3% dari sumber terkini.",
+ "tpt-translation-intro-fuzzy": "Terjemahan usang ditandai seperti ini.",
"tpt-languages-legend": "Bahasa lain:",
"tpt-languages-nonzero": "$1 ($2% terjemahan)",
"tpt-target-page": "Halaman ini tidak dapat diperbarui secara manual.\nHalaman ini adalah terjemahan dari halaman [[$1]] dan terjemahannya dapat diperbarui menggunakan [$2 peralatan penerjemahan].",
"tpt-unknown-page": "Ruang nama ini dicadangkan untuk terjemahan halaman isi.\nHalaman yang ingin Anda sunting ini tampaknya tidak memiliki hubungan dengan halaman mana pun yang ditandai untuk diterjemahkan.",
"tpt-render-summary": "Memperbarui ke revisi terbaru halaman sumber",
- "tpt-download-page": "Ekspor halaman dengan terjemahan",
"pt-parse-open": "Tag &lt;translate> tidak seimbang.\nTemplat terjemahan: <pre>$1</pre>",
"pt-parse-close": "Tag &lt;/translate> tidak seimbang.\nTemplat terjemahan: <pre>$1</pre>",
"pt-parse-nested": "Bagian &lt;translate> bersarang tidak diizinkan.\nTeks tanda: <pre>$1</pre>",
@@ -93,7 +89,5 @@
"pagemigration": "Perpindahan halaman",
"pm-import-button-label": "Impor",
"pm-savepages-button-label": "Simpan",
- "pm-cancel-button-label": "Batalkan",
- "pm-pagename-placeholder": "Masukkan nama halaman",
- "pm-langcode-placeholder": "Kode Bahasa"
+ "pm-cancel-button-label": "Batalkan"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/ig.json b/MLEB/Translate/i18n/pagetranslation/ig.json
index 24dced7e..08af9a4b 100644
--- a/MLEB/Translate/i18n/pagetranslation/ig.json
+++ b/MLEB/Translate/i18n/pagetranslation/ig.json
@@ -5,12 +5,17 @@
]
},
"pagetranslation": "Ihü kuwariala na asụsụ ozor",
- "tpt-template": "Àtụ ihü",
"tpt-diff-new": "Mpkurụ edemede ohúrù",
"translate-tag-translate-link-desc": "Kùwáría ihüá na asụsụ ozor",
- "tpt-languages-legend": "Asụsụ ndi ozor:",
+ "tpt-languages-legend": "Asụ̀sụ̀ ndị ọ̀zọ:",
+ "tpt-aggregategroup-save": "Dònye",
+ "tpt-aggregategroup-update": "Dònye",
+ "tpt-aggregategroup-update-cancel": "Hapụ̀",
"pt-movepage-list-other": "Ihü-íme-ihü nke ozor",
"pt-movepage-current": "Áhà nke di ùbwá:",
"pt-movepage-new": "Áhà ọhúrù:",
- "pt-movepage-reason": "Mgbághapụtà:"
+ "pt-movepage-reason": "Mgbághapụtà:",
+ "pm-savepages-button-label": "Dònye",
+ "pm-cancel-button-label": "Hapụ̀",
+ "pp-cancel-button-label": "Hapụ̀"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/io.json b/MLEB/Translate/i18n/pagetranslation/io.json
index 70466856..9d5bfffe 100644
--- a/MLEB/Translate/i18n/pagetranslation/io.json
+++ b/MLEB/Translate/i18n/pagetranslation/io.json
@@ -1,8 +1,14 @@
{
"@metadata": {
"authors": [
- "Malafaya"
+ "Malafaya",
+ "Joao Xavier"
]
},
- "tpt-languages-legend": "Altra lingui:"
+ "tpt-rev-encourage": "restaurar",
+ "tpt-languages-legend": "Altra lingui:",
+ "tpt-languages-nonzero": "$1 ($2% tradukita)",
+ "log-name-pagetranslation": "Protokolo ('log') pri tradukajo",
+ "pt-movepage-block-base-invalid": "La nova nomo quan vu deziras donar a la pagino ne esas valida.",
+ "tpt-generic-button": "Konfirmez"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/is.json b/MLEB/Translate/i18n/pagetranslation/is.json
index a68f1cd4..ab440630 100644
--- a/MLEB/Translate/i18n/pagetranslation/is.json
+++ b/MLEB/Translate/i18n/pagetranslation/is.json
@@ -2,12 +2,189 @@
"@metadata": {
"authors": [
"Snævar",
- "Maxí"
+ "Maxí",
+ "Jonbg",
+ "Sveinn í Felli"
]
},
+ "pagetranslation": "Þýðing á síðu",
+ "right-pagetranslation": "Merkja útgáfu af síðum til þýðingar",
+ "action-pagetranslation": "sýsla með þýðanlegar síður",
+ "tpt-section": "Þýðingareining $1",
+ "tpt-section-new": "Ný þýðingareining.\nHeiti: $1",
+ "tpt-section-deleted": "Þýðingareining $1",
+ "tpt-diff-old": "Fyrri texti",
+ "tpt-diff-new": "Nýr texti",
+ "tpt-submit": "Merkja þessa útgáfu til þýðingar",
+ "tpt-sections-oldnew": "Nýjar og fyrirliggjandi þýðingareiningar",
+ "tpt-sections-deleted": "Eyddar þýðingareiningar",
+ "tpt-sections-template": "Sniðmát þýðingarsíðu",
+ "tpt-action-nofuzzy": "Ekki gera þýðingar ógildar",
+ "tpt-badtitle": "Uppgefið síðuheiti ($1) er ekki gildur titill",
+ "tpt-nosuchpage": "Síðan $1 er ekki til",
+ "tpt-oldrevision": "$2 er ekki síðasta útgáfa síðunnar [[:$1]].\nAðeins nýjustu útgáfur er hægt að merkja til þýðingar.",
+ "tpt-notsuitable": "Síðan $1 er ekki tilbúin til þýðingar.\nGakktu úr skugga um að hún sé með <nowiki><translate></nowiki> merki og sé með gilda málskipan (syntax).",
+ "tpt-saveok": "Síðan [[:$1]] hefur verið merkt upp til þýðinga með $2 {{PLURAL:$2|þýðingaeiningu|þýðingaeiningum}}.\nSíðuna er því hægt að <span class=\"plainlinks\">[$3 þýða]</span>.",
+ "tpt-offer-notify": "Þú getur <span class=\"plainlinks\">[$1 látið þýðendur vita]</span> um þessa síðu.",
+ "tpt-showpage-intro": "Fyrir neðan eru taldar upp nýjar, fyrirliggjandi og eyddar þýðingaeiningar.\nÁður en þessi útgáfa er merkt til þýðinga, skaltu athuga vel hvort breytingar á þýðingaeiningum séu ekki í algjöru lágmarki til að valda ekki óþarfa vinnu fyrir þýðendur.",
+ "tpt-mark-summary": "Merkti þessa útgáfu til þýðingar",
+ "tpt-mark-nochanges": "Engar breytingar til að yfirfara. Að merkja þessa síðu til þýðingar mun ekki breyta síðunni eða neinni fyrirliggjandi þýðingareiningu.",
+ "tpt-edit-failed": "Gat ekki uppfært síðuna: $1",
+ "tpt-duplicate": "Nafn þýðingareiningar $1 er notað oftar en einu sinni.",
+ "tpt-already-marked": "Síðasta útgáfa þessarar síðu er þegar merkt til þýðingar.",
+ "tpt-unmarked": "Síðan $1 er ekki lengur merkt til þýðingar.",
+ "tpt-list-nopages": "Engar síður eru merktar til þýðingar eða eru tilbúnar til að vera merktar til þýðingar.",
+ "tpt-new-pages-title": "Síður sem stungið er upp á að þýða",
+ "tpt-old-pages-title": "Síður í þýðingu",
+ "tpt-other-pages-title": "Rofnar síður",
+ "tpt-discouraged-pages-title": "Síður sem á að forðast",
+ "tpt-new-pages": "{{PLURAL:$1|Þessi síða inniheldur|Þessar síður innihalda}} texta með þýðingamerkjum,\nen engin útgáfa {{PLURAL:$1|þessarar síðu er|þessara síðna er}} merkt til þýðinga í augnablikinu.",
+ "tpt-old-pages": "Einhver útgáfa {{PLURAL:$1|þessarar síðu|þessara síðna}} hefur verið merkt til þýðingar.",
+ "tpt-other-pages": "{{PLURAL:$1|Eldri útgáfa þessarar síðu er merkt|Eldri útgáfur þessara síðna eru merktar}} til þýðingar,\nen {{PLURAL:$1|nýjustu útgáfuna|nýjustu útgáfurnar}} er ekki hægt að merkja til þýðingar.",
+ "tpt-discouraged-pages": "Mælt hefur verið gegn því að {{PLURAL:$1|þessi síða sé|þessar síður séu}} þýddar frekar.",
+ "tpt-select-prioritylangs": "Listi yfir kóða tungumála í forgangi, aðskilinn með kommum:",
+ "tpt-select-prioritylangs-force": "Hindra þýðingar á þeim tungumálum sem ekki eru forgangstungumál",
+ "tpt-select-prioritylangs-reason": "Ástæða:",
+ "tpt-sections-prioritylangs": "Forgangstungumál",
+ "tpt-rev-mark": "merkja til þýðingar",
+ "tpt-rev-unmark": "fjarlægja úr þýðingu",
+ "tpt-rev-discourage": "forðast að nota",
+ "tpt-rev-encourage": "endurheimta",
+ "tpt-rev-mark-tooltip": "Merkja síðustu útgáfu þessarar síðu til þýðingar.",
+ "tpt-rev-unmark-tooltip": "Fjarlægja þessa síðu úr þýðingu.",
+ "tpt-rev-discourage-tooltip": "Mælast til um að ekki verði fleiri þýðingar á þessari síðu.",
+ "tpt-rev-encourage-tooltip": "Endurheimta þessa síðu til venjulegrar þýðingar.",
"translate-tag-translate-link-desc": "Þýða þessa síðu",
+ "translate-tag-markthis": "Merkja þessa síðu til þýðingar",
+ "translate-tag-markthisagain": "Þessi síða er með <span class=\"plainlinks\">[$1 breytingar]</span> síðan hún var síðast <span class=\"plainlinks\">[$2 merkt til þýðingar]</span>.",
+ "translate-tag-hasnew": "Þessi síða er með <span class=\"plainlinks\">[$ breytingar]</span> sem ekki eru merktar til þýðingar.",
"tpt-translation-intro": "Þessi síða er <span class=\"plainlinks\">[$1 þýdd útgáfa]</span> af síðunni [[$2]] og þýðingu hennar er $3% lokið.",
+ "tpt-translation-intro-fuzzy": "Úreltar þýðingar eru merktar svona.",
"tpt-languages-legend": "Önnur tungumál:",
+ "tpt-languages-separator": "&#160;•&#32;",
+ "tpt-languages-zero": "Hefja þýðingu á þetta tungumál",
"tpt-languages-nonzero": "$1 ($2% þýtt)",
- "log-name-pagetranslation": "Þýðingarskrá"
+ "tpt-tab-translate": "Þýða",
+ "tpt-translation-restricted": "Kerfisstjóri þýðinga hefur komið í veg fyrir þýðingu síðunnar á þetta tungumál.\n\nÁstæða: $1",
+ "tpt-discouraged-language-force-header": "Þessa síðu er ekki hægt að þýða á $1.",
+ "tpt-discouraged-language-force-content": "Kerfisstjóri þýðinga ákvað að þessa síðu sé einungis hægt að þýða á $1.",
+ "tpt-discouraged-language-header": "Að þýða á $1 er ekki í forgangi fyrir þessa síðu.",
+ "tpt-discouraged-language-content": "Kerfisstjóri þýðinga ákvað að áhersla sé lögð á að þýða á $1.",
+ "tpt-discouraged-language-force": "<strong>Þessa síðu er ekki hægt að þýða á $2.</strong>\n\nKerfisstjóri þýðinga ákvað að þessa síðu sé einungis hægt að þýða á $3.",
+ "tpt-discouraged-language": "<strong>Að þýða á $2 er ekki í forgangi fyrir þessa síðu.</strong>\n\nKerfisstjóri þýðinga ákvað að áhersla sé lögð á að þýða á $3.",
+ "tpt-discouraged-language-reason": "Ástæða: $1",
+ "tpt-priority-languages": "Kerfisstjóri þýðinga stillti forgangstungumál þessa hóps sem $1.",
+ "tpt-render-summary": "Uppfæri til að samsvara nýrri útgáfu grunnsíðunnar",
+ "aggregategroups": "Safna saman hópum",
+ "tpt-aggregategroup-add": "Bæta við",
+ "tpt-aggregategroup-save": "Vista",
+ "tpt-aggregategroup-add-new": "Bæta við nýjum samsöfnunarhóp",
+ "tpt-aggregategroup-new-name": "Nafn:",
+ "tpt-aggregategroup-new-description": "Lýsing (valkvætt):",
+ "tpt-aggregategroup-remove-confirm": "Ertu viss um að þú viljir eyða þessum samsöfnunarhópi?",
+ "tpt-aggregategroup-invalid-group": "Hópurinn er ekki til",
+ "tpt-aggregategroup-edit-name": "Nafn:",
+ "tpt-aggregategroup-edit-description": "Lýsing:",
+ "tpt-aggregategroup-update": "Vista",
+ "tpt-aggregategroup-update-cancel": "Hætta við",
+ "tpt-invalid-group": "Ógildur hópur",
+ "pt-parse-open": "Ójöfn pör &lt;translate> merkis.\nÞýðingasniðmát: <pre>$1</pre>",
+ "pt-parse-close": "Ójöfn pör &lt;/translate> merkis.\nÞýðingasniðmát: <pre>$1</pre>",
+ "pt-parse-nested": "Faldaðar (nested) &lt;translate> þýðingareiningar eru ekki leyfðar.\nTexti merkis: <pre>$1</pre>",
+ "pt-shake-multiple": "Mörg þýðingareiningamerki fyrir eina þýðingareiningu.\nTexti þýðingareiningar: <pre>$1</pre>",
+ "pt-shake-position": "Merki þýðingareininga á óvæntum stöðum.\nTexti þýðingareiningar: <pre>$1</pre>",
+ "pt-shake-empty": "Tóm þýðingareining fyrir merkið \"$1\".",
+ "log-description-pagetranslation": "Atvikaskráning fyrir aðgerðir sem tengjast þýðingakerfi síðna",
+ "log-name-pagetranslation": "Atvikaskrá þýðinga á síðum",
+ "logentry-pagetranslation-mark": "$1 {{GENDER:$2|merkti}} $3 til þýðingar",
+ "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|fjarlægði}} $3 úr þýðingu",
+ "logentry-pagetranslation-moveok": "$1 {{GENDER:$2|lauk}} endurnefningu þýðanlegrar síðu $3 yfir í $4",
+ "logentry-pagetranslation-movenok": "$1 {{GENDER:$2|rakst á}} vandamál við að færa síðu $3 yfir á $4",
+ "logentry-pagetranslation-deletefok": "$1 {{GENDER:$2|lauk}} eyðingu þýðanlegrar síðu $3",
+ "logentry-pagetranslation-deletefnok": "$1 {{GENDER:$2|mistókst}} að eyða $3 sem tilheyrir þýðanlegri síðu $4",
+ "logentry-pagetranslation-deletelok": "$1 {{GENDER:$2|lauk}} eyðingu á þýðingarsíðu $3",
+ "logentry-pagetranslation-deletelnok": "$1 {{GENDER:$2|mistókst}} að eyða $3 sem tilheyrir þýðingarsíðu $4",
+ "logentry-pagetranslation-encourage": "$1 {{GENDER:$2|hvatti til}} þýðingar á $3",
+ "logentry-pagetranslation-discourage": "$1 {{GENDER:$2|vill forðast}} þýðingu á $3",
+ "logentry-pagetranslation-prioritylanguages-unset": "$1 {{GENDER:$2|fjarlægði}} forgangstungumál af þýðanlegri síðu $3",
+ "logentry-pagetranslation-prioritylanguages": "$1 {{GENDER:$2|stillti}} forgangstungumál fyrir þýðanlega síðu $3 sem $5",
+ "logentry-pagetranslation-prioritylanguages-force": "$1 {{GENDER:$2|takmarkaði}} tungumál fyrir þýðanlega síðu $3 við $5",
+ "logentry-pagetranslation-associate": "$1 {{GENDER:$2|bætti}} þýðanlegri síðu $3 við samsöfnunarhóp $4",
+ "logentry-pagetranslation-dissociate": "$1 {{GENDER:$2|fjarlægði}} þýðanlega síðu $3 úr samsöfnunarhóp $4",
+ "log-action-filter-pagetranslation": "Tegund aðgerðar:",
+ "log-action-filter-pagetranslation-mark": "Merkja til þýðingar",
+ "log-action-filter-pagetranslation-unmark": "Fjarlæging úr þýðingu",
+ "log-action-filter-pagetranslation-move": "Færslur á síðum",
+ "log-action-filter-pagetranslation-delete": "Eyðingar á síðum",
+ "log-action-filter-pagetranslation-encourage": "Hvatningar á þýðingum",
+ "log-action-filter-pagetranslation-discourage": "Úrtölur með þýðingar",
+ "log-action-filter-pagetranslation-prioritylanguages": "Breyting á forgangstungumálum",
+ "log-action-filter-pagetranslation-aggregategroups": "Breyting á samsöfnunarhópum",
+ "pt-movepage-title": "Færa þýðanlega síðu \"$1\"",
+ "pt-movepage-blockers": "Ekki var hægt að færa þýðanlegu síðuna undir nýtt heiti vegna þess að eftirfarandi {{PLURAL:$1|villa fannst|villur fundust}}:",
+ "pt-movepage-list-pages": "Listi yfir síður sem á að færa",
+ "pt-movepage-list-translation": "Þýðing á {{PLURAL:$1|síðu|síðum}}",
+ "pt-movepage-list-section": "Þýðingareining á {{PLURAL:$1|síðu|síðum}}",
+ "pt-movepage-list-other": "{{PLURAL:$1|Önnur undirsíða|Aðrar undirsíður}}",
+ "pt-movepage-list-count": "Samtals $1 {{PLURAL:$1|síða|síður}} sem á að færa.",
+ "pt-movepage-legend": "Færa þýðanlega síðu",
+ "pt-movepage-current": "Núverandi heiti:",
+ "pt-movepage-new": "Nýtt heiti:",
+ "pt-movepage-reason": "Ástæða:",
+ "pt-movepage-subpages": "Færa allar undirsíður",
+ "pt-movepage-action-check": "Athuga hvort tilfærsla sé möguleg",
+ "pt-movepage-action-perform": "Framkvæma tilfærsluna",
+ "pt-movepage-action-other": "Skipta um frálag",
+ "pt-movepage-logreason": "Hluti af þýðanlegri síðu \"$1\"",
+ "pt-movepage-started": "Skoðaðu [[Special:Log/pagetranslation|atvikaskrá þýðinga]] eftir smástund til að sjá skilaboð um villur og lok aðgerða.",
+ "pt-deletepage-lang-title": "Eyði þýðingarsíðu \"$1\"",
+ "pt-deletepage-full-title": "Eyði þýðanlegri síðu \"$1\"",
+ "pt-deletepage-invalid-title": "Valda síðan er ógild.",
+ "pt-deletepage-invalid-text": "Valda síðan er hvorki þýðanleg síða né þýðingarsíða.",
+ "pt-deletepage-action-check": "Listi yfir síður sem verður eytt",
+ "pt-deletepage-action-perform": "Framkvæma eyðingu",
+ "pt-deletepage-action-other": "Skipta um frálag",
+ "pt-deletepage-lang-legend": "Eyða þýðingarsíðu",
+ "pt-deletepage-full-legend": "Eyða þýðanlegri síðu",
+ "pt-deletepage-any-legend": "Eyða þýðanlegri síðu eða þýðingarsíðu",
+ "pt-deletepage-current": "Síðuheiti:",
+ "pt-deletepage-reason": "Ástæða:",
+ "pt-deletepage-subpages": "Eyða öllum undirsíðum",
+ "pt-deletepage-list-pages": "Listi yfir síður sem á að eyða",
+ "pt-deletepage-list-translation": "Þýðingarsíður",
+ "pt-deletepage-list-section": "Síður með þýðingareiningum",
+ "pt-deletepage-list-other": "Aðrar undirsíður",
+ "pt-deletepage-list-count": "Samtals $1 {{PLURAL:$1|síða|síður}} sem á að eyða.",
+ "pt-deletepage-full-logreason": "Hluti af þýðanlegri síðu \"$1\"",
+ "pt-deletepage-lang-logreason": "Hluti að þýðingarsíðu \"$1\"",
+ "pt-deletepage-started": "Skoðaðu [[Special:Log/pagetranslation|atvikaskrá þýðinga]] til að sjá skilaboð um villur og lok aðgerða.",
+ "pagemigration": "Tilfærsla þýðingarsíðu",
+ "pm-import-button-label": "Flytja inn",
+ "pm-savepages-button-label": "Vista",
+ "pm-cancel-button-label": "Hætta við",
+ "pm-page-does-not-exist": "$1 er ekki til",
+ "pm-old-translations-missing": "$1 Inniheldur ekki eldri þýðingar.",
+ "pm-pagename-missing": "Settu inn heiti síðunnar.",
+ "pm-add-icon-hover-text": "Bæta við einingu hér fyrir neðan",
+ "pm-swap-icon-hover-text": "Víxla við þýðingareininguna hér fyrir neðan",
+ "pm-delete-icon-hover-text": "Eyða þýðingareiningu",
+ "pm-pagetitle-placeholder": "Settu inn titil síðunnar",
+ "pm-pagetitle-missing": "Settu inn titil síðunnar.",
+ "tpt-translate-title": "Leyfa þýðingar á titli síðu",
+ "pp-save-summary": "Undirbjó þessa síðu til þýðingar",
+ "pagepreparation": "Undirbúa síðu til þýðingar",
+ "pp-pagename-placeholder": "Settu inn heiti síðunnar",
+ "pp-prepare-button-label": "Undirbúa",
+ "pp-save-button-label": "Vista",
+ "pp-cancel-button-label": "Hætta við",
+ "pp-save-message": "Síðan var vistuð. Þú getur [$1 breytt] henni.",
+ "pp-prepare-message": "Síðan var undirbúin fyrir þýðingu. Skoðaðu mismuninn (diff) hér fyrir neðan. Smelltu á \"{{int:pp-save-button-label}}\" hnappinn ef þetta er í lagi!",
+ "pp-already-prepared-message": "Það lítur út fyrir að þessi síða sé þegar merkt til þýðingar. Ekki eru neinar breytingar á henni miðað við síðustu útgáfu hennar.",
+ "pp-pagename-missing": "Settu inn heiti síðunnar.",
+ "pp-diff-old-header": "Frumtexti",
+ "pp-diff-new-header": "Undirbúinn texti",
+ "tpt-unlink-button": "Fjarlægja úr þýðingu",
+ "tpt-unlink-summary": "Fjarlægði síðu úr þýðingu",
+ "tpt-generic-confirm": "Endilega staðfestu aðgerðina.",
+ "tpt-generic-button": "Staðfesta"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/it.json b/MLEB/Translate/i18n/pagetranslation/it.json
index a76db27a..95b9df27 100644
--- a/MLEB/Translate/i18n/pagetranslation/it.json
+++ b/MLEB/Translate/i18n/pagetranslation/it.json
@@ -11,18 +11,18 @@
"VittGam",
"Ximo17",
"Baffo",
- "Peg60"
+ "Peg60",
+ "Alexmar983",
+ "Matteocng",
+ "Einreiher"
]
},
"pagetranslation": "Traduzione pagine",
"right-pagetranslation": "Segna le pagine come da tradurre",
"action-pagetranslation": "gestire le pagine traducibili",
- "tpt-desc": "Estensione per la traduzione di pagine",
"tpt-section": "Elemento $1 della traduzione",
"tpt-section-new": "Nuovo elemento della traduzione.\nNome: $1",
"tpt-section-deleted": "Elemento $1 della traduzione",
- "tpt-template": "Modello della pagina",
- "tpt-templatediff": "Il modello della pagina è cambiato.",
"tpt-diff-old": "Testo precedente",
"tpt-diff-new": "Testo successivo",
"tpt-submit": "Segna questa versione per la traduzione",
@@ -36,10 +36,9 @@
"tpt-notsuitable": "La pagina $1 non è adatta per la traduzione.\nAssicurarsi che abbia i tag <nowiki><translate></nowiki> e una sintassi valida.",
"tpt-saveok": "La pagina [[:$1]] è stata segnalata per la traduzione con $2 {{PLURAL:$2|elemento di traduzione|elementi di traduzione}}.\nLa pagina può ora essere <span class=\"plainlinks\">[$3 tradotta]</span>.",
"tpt-offer-notify": "Puoi <span class=\"plainlinks\">[$1 notificare questa pagina]</span> ai traduttori.",
- "tpt-badsect": "\"$1\" non è un nome valido per l'elemento $2 della traduzione.",
"tpt-showpage-intro": "Di seguito sono elencate gli elementi di traduzione nuovi, esistenti e cancellati.\nPrima di segnare questa versione per la traduzione, controllare che i cambiamenti per gli elementi di traduzione siano ridotti al minimo per evitare lavoro superfluo ai traduttori.",
"tpt-mark-summary": "Versione segnata per la traduzione",
- "tpt-mark-nochanges": "Non ci sono differenze tra questa versione e l'ultima versione contrassegnata.",
+ "tpt-mark-nochanges": "Nessuna modifica da rivedere. Contrassegnare questa pagina per la traduzione non modificherà la pagina, né alcuna unità di traduzione esistente.",
"tpt-edit-failed": "Impossibile aggiornare la pagina: $1",
"tpt-duplicate": "Il nome dell'elemento di traduzione $1 è usato più di una volta.",
"tpt-already-marked": "L'ultima versione di questa pagina è già stata segnata per la traduzione.",
@@ -70,6 +69,7 @@
"translate-tag-markthisagain": "Questa pagina è stata <span class=\"plainlinks\">[$1 modificata]</span> da quando era stata <span class=\"plainlinks\">[$2 segnata per la traduzione]</span>.",
"translate-tag-hasnew": "Questa pagina contiene delle <span class=\"plainlinks\">[$1 modifiche]</span> che non sono segnate per la traduzione.",
"tpt-translation-intro": "Questa pagina è una <span class=\"plainlinks\">[$1 versione tradotta]</span> della pagina [[$2]]; la traduzione è completa al $3&nbsp;%.",
+ "tpt-translation-intro-fuzzy": "Le traduzioni non aggiornate sono segnate come questo testo.",
"tpt-languages-legend": "Altre lingue:",
"tpt-languages-zero": "Inizia a tradurre in questa lingua",
"tpt-languages-nonzero": "$1 ($2% tradotta)",
@@ -86,7 +86,6 @@
"tpt-discouraged-language-reason": "Motivo: $1",
"tpt-priority-languages": "L'amministratore ha impostato le lingue prioritarie per questo gruppo in $1.",
"tpt-render-summary": "Aggiornamento come da nuova versione della pagina di origine",
- "tpt-download-page": "Esporta la pagina con le traduzioni",
"aggregategroups": "Gruppi aggregati",
"tpt-aggregategroup-add": "Aggiungi",
"tpt-aggregategroup-save": "Salva",
@@ -109,7 +108,7 @@
"log-description-pagetranslation": "Registro per le azioni inerenti al sistema di traduzione delle pagine",
"log-name-pagetranslation": "Traduzioni di pagine",
"logentry-pagetranslation-mark": "$1 {{GENDER:$2|ha contrassegnato}} $3 per la traduzione",
- "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|ha rimosso}} $3 dalla traduzione",
+ "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|ha rimosso}} $3 dal sistema di traduzione",
"logentry-pagetranslation-moveok": "$1 {{GENDER:$2|ha eseguito}} lo spostamento della pagina traducibile $3 a $4",
"logentry-pagetranslation-movenok": "$1 {{GENDER:$2|ha incontrato}} un problema nello spostamento di $3 a $4",
"logentry-pagetranslation-deletefok": "$1 {{GENDER:$2|ha eseguito}} la cancellazione della pagina traducibile $3",
@@ -123,6 +122,15 @@
"logentry-pagetranslation-prioritylanguages-force": "$1 {{GENDER:$2|ha limitato}} le lingue a $5 per la pagina da tradurre $3",
"logentry-pagetranslation-associate": "$1 {{GENDER:$2|ha aggiunto}} la pagina traducibile $3 al gruppo aggregato $4",
"logentry-pagetranslation-dissociate": "$1 {{GENDER:$2|ha rimosso}} la pagina traducibile $3 dal gruppo aggregato $4",
+ "log-action-filter-pagetranslation": "Tipo di azione:",
+ "log-action-filter-pagetranslation-mark": "Contrassegnazione della traduzione",
+ "log-action-filter-pagetranslation-unmark": "Rimozione dalla traduzione",
+ "log-action-filter-pagetranslation-move": "Spostamenti di pagine",
+ "log-action-filter-pagetranslation-delete": "Cancellazioni di pagine",
+ "log-action-filter-pagetranslation-encourage": "Incoraggiamento della traduzione",
+ "log-action-filter-pagetranslation-discourage": "Scoraggiamento della traduzione",
+ "log-action-filter-pagetranslation-prioritylanguages": "Modifiche lingue prioritarie",
+ "log-action-filter-pagetranslation-aggregategroups": "Modifiche gruppi aggregati",
"pt-movepage-title": "Sposta la pagina traducibile $1",
"pt-movepage-blockers": "Questa pagina da tradurre non è stata spostata a un nuovo nome per {{PLURAL:$1|il seguente errore|i seguenti errori}}:",
"pt-movepage-block-base-exists": "La pagina base di destinazione [[:$1]] esiste già.",
@@ -147,11 +155,11 @@
"pt-movepage-action-perform": "Esegui lo spostamento",
"pt-movepage-action-other": "Modifica destinazione",
"pt-movepage-intro": "Questa pagina speciale ti permette di spostare pagine segnate come da tradurre.\nLo spostamento non sarà istantaneo, perché serve spostare molte pagine.\nMentre le pagine vengono spostate, non è possibile interagire con esse.\nGli errori sono riportati nel [[Special:Log/pagetranslation|registro delle traduzioni di pagine]] e devono essere corretti a mano.",
- "pt-movepage-logreason": "Parte della pagina traducibile $1",
- "pt-movepage-started": "La pagina base è stata spostata.\nControlla il [[Special:Log/pagetranslation|registro delle traduzioni di pagine]] per verificare il messaggio di completamento ed eventuali errori.",
+ "pt-movepage-logreason": "Parte della pagina traducibile \"$1\"",
+ "pt-movepage-started": "Controlla il [[Special:Log/pagetranslation|registro delle traduzioni di pagine]] fra un poco per verificare il messaggio di completamento ed eventuali errori.",
"pt-locked-page": "Questa pagina è protetta perché la pagina traducibile sta per essere spostata.",
- "pt-deletepage-lang-title": "Cancellazione della pagina di traduzione $1.",
- "pt-deletepage-full-title": "Cancellazione della pagina traducibile $1 in corso.",
+ "pt-deletepage-lang-title": "Cancellazione della pagina di traduzione \"$1\"",
+ "pt-deletepage-full-title": "Cancellazione della pagina traducibile \"$1\"",
"pt-deletepage-invalid-title": "La pagina specificata non è valida.",
"pt-deletepage-invalid-text": "La pagina indicata non è una pagina da tradurre né una pagina di traduzione.",
"pt-deletepage-action-check": "Elenca le pagine da cancellare",
@@ -168,8 +176,8 @@
"pt-deletepage-list-section": "Pagine degli elementi di traduzione",
"pt-deletepage-list-other": "Altre sottopagine",
"pt-deletepage-list-count": "$1 {{PLURAL:$1|pagina|pagine}} in tutto da cancellare.",
- "pt-deletepage-full-logreason": "Parte della pagina traducibile $1",
- "pt-deletepage-lang-logreason": "Parte della pagina di traduzione $1",
+ "pt-deletepage-full-logreason": "Parte della pagina traducibile \"$1\"",
+ "pt-deletepage-lang-logreason": "Parte della pagina di traduzione \"$1\"",
"pt-deletepage-started": "Controlla il [[Special:Log/pagetranslation|registro delle traduzioni di pagine]] per verificare il messaggio di completamento ed eventuali errori.",
"pt-deletepage-intro": "Questa pagina speciale ti consente di cancellare del tutto una pagina traducibile o una sua traduzione in una lingua.\nLa cancellazione non sarà istantanea, perché anche tutte le pagine che dipendono da quella dovranno essere cancellate.\nGli errori sono riportati nel [[Special:Log/pagetranslation|registro delle traduzioni di pagine]] e devono essere corretti a mano.",
"pagemigration": "Migrazione pagine di traduzione",
@@ -177,24 +185,27 @@
"pm-import-button-label": "Importa",
"pm-savepages-button-label": "Salva",
"pm-cancel-button-label": "Annulla",
- "pm-pagename-placeholder": "Inserisci il nome della pagina",
- "pm-langcode-placeholder": "Codice lingua",
"pm-page-does-not-exist": "$1 non esiste",
"pm-old-translations-missing": "$1 non contiene vecchie traduzioni",
"pm-extra-units-warning": "Sono presenti unità aggiuntive. Abbina correttamente le unità di origine e di traduzione",
"pm-pagename-missing": "Inserisci il nome della pagina",
- "pm-langcode-missing": "Inserisci il codice della lingua",
"pm-add-icon-hover-text": "Aggiungi un'unità sotto",
"pm-swap-icon-hover-text": "Scambia con l'unità sotto",
"pm-delete-icon-hover-text": "Cancella unità",
- "pm-pagetitle-invalid": "Inserisci un titolo di pagina valido",
+ "pm-pagetitle-placeholder": "Inserisci il titolo della pagina",
+ "pm-pagetitle-invalid": "Inserisci un titolo di pagina valido. Dovrebbe essere nel formato <page-name>/<language-code>.",
+ "pm-pagetitle-missing": "Inserisci il titolo della pagina",
+ "pm-langcode-missing": "Il codice della lingua sembra essere mancante nel titolo. Inserisci il titolo della pagina nel formato <page-name>/<language-code>.",
"pm-summary-import": "Traduzione importata usando la [[Special:PageMigration|migrazione di pagina]]",
+ "pm-on-import-message-text": "Le vecchie traduzioni sono state importate. Utilizza le opzioni \"aggiungi\", \"scambia\" e \"cancella\" per regolare le unità di traduzione e clicca il pulsante \"{{int:pm-savepages-button-label}}\" per salvarle. Clicca il pulsante \"{{int:pm-cancel-button-label}}\" per annullare le modifiche.",
+ "pm-on-save-message-text": "Le unità di traduzione sono state salvate. È ora possibile inserire il titolo di una nuova pagina di traduzione per migrarla, o apportare modifiche alle unità sottostanti e salvare una nuova versione.",
"tpt-translate-title": "Permetti la traduzione del titolo della pagina",
"pp-save-summary": "Preparata la pagina per la traduzione",
"pagepreparation": "Prepara pagina per la traduzione",
"pp-pagename-placeholder": "Inserisci il nome della pagina",
"pp-prepare-button-label": "Prepara",
"pp-save-button-label": "Salva",
+ "pp-cancel-button-label": "Annulla",
"pp-save-message": "La pagina è stata salvata. Puoi [$1 modificarla].",
"pp-prepare-message": "La pagina è stata preparata per la traduzione. Vedi le differenze di seguito. Clicca \"{{int:pp-save-button-label}}\" se va bene!",
"pp-already-prepared-message": "Sembra che la pagina sia stata già preparata per la traduzione. Non ci sono modifiche rispetto alla versione precedente.",
@@ -203,5 +214,7 @@
"pp-diff-new-header": "Testo preparato",
"tpt-unlink-confirm": "Si prega di confermare che vuoi davvero togliere questa pagina dal sistema di traduzione.\nIl selettore di lingua e i nomi tradotti della pagina smetteranno di funzionare.\nLa pagine di traduzione diventeranno modificabile.",
"tpt-unlink-button": "Rimuovi dalla traduzione",
- "tpt-unlink-summary": "Pagina rimossa dalla traduzione"
+ "tpt-unlink-summary": "Pagina rimossa dalla traduzione",
+ "tpt-generic-confirm": "Per favore, conferma l'azione.",
+ "tpt-generic-button": "Conferma"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/ja.json b/MLEB/Translate/i18n/pagetranslation/ja.json
index 97f598ab..84f85e2e 100644
--- a/MLEB/Translate/i18n/pagetranslation/ja.json
+++ b/MLEB/Translate/i18n/pagetranslation/ja.json
@@ -5,18 +5,20 @@
"Fryed-peach",
"Shirayuki",
"Whym",
- "青子守歌"
+ "青子守歌",
+ "Sujiniku",
+ "Otokoume",
+ "ネイ",
+ "Afaz",
+ "Yusuke1109"
]
},
"pagetranslation": "ページ翻訳",
"right-pagetranslation": "ページの版を翻訳対象に指定",
"action-pagetranslation": "翻訳対象ページの管理",
- "tpt-desc": "通常ページの本文を翻訳するための拡張機能",
"tpt-section": "翻訳単位 $1",
"tpt-section-new": "新しい翻訳単位。\n名前: $1",
"tpt-section-deleted": "翻訳単位 $1",
- "tpt-template": "ページの雛型",
- "tpt-templatediff": "ページの雛型が変更されました。",
"tpt-diff-old": "前のテキスト",
"tpt-diff-new": "新しいテキスト",
"tpt-submit": "この版を翻訳対象に指定",
@@ -30,7 +32,6 @@
"tpt-notsuitable": "ページ $1 は翻訳に対応していません。\n<nowiki><translate></nowiki> タグが含まれていて、かつ文法的に正しいことをを確認してください。",
"tpt-saveok": "ページ [[:$1]] は翻訳対象に指定されており、$2 {{PLURAL:$2|個の翻訳単位}}を含んでいます。\nこのページを<span class=\"plainlinks\">[$3 翻訳]</span>できます。",
"tpt-offer-notify": "このページについて<span class=\"plainlinks\">[$1 翻訳者に通知]</span>できます。",
- "tpt-badsect": "「$1」は翻訳単位$2の名前として有効ではありません。",
"tpt-showpage-intro": "以下は、新規・既存の、または削除された翻訳単位の一覧です。\nこの版を翻訳対象に指定する前に、翻訳単位の変更を最小限にすることで不要な翻訳作業を回避できないか確認してください。",
"tpt-mark-summary": "この版を翻訳対象に指定しました",
"tpt-edit-failed": "ページを更新できませんでした: $1",
@@ -63,9 +64,10 @@
"translate-tag-markthisagain": "このページには、最後に<span class=\"plainlinks\">[$2 翻訳対象に指定]</span>された時点以降の<span class=\"plainlinks\">[$1 変更]</span>があります。",
"translate-tag-hasnew": "このページには翻訳対象に指定されていない<span class=\"plainlinks\">[$1 変更]</span>があります。",
"tpt-translation-intro": "このページはページ [[$2]] を「<span class=\"plainlinks\">[$1 翻訳]</span>」したものです。翻訳は $3% 完了しています。",
+ "tpt-translation-intro-fuzzy": "更新が必要な翻訳にはこのような印が付いています。",
"tpt-languages-legend": "他言語での翻訳:",
"tpt-languages-zero": "この言語への翻訳を開始",
- "tpt-languages-nonzero": "$1 ($2% 翻訳済み)",
+ "tpt-languages-nonzero": "$1 ($2% 翻訳済)",
"tpt-tab-translate": "翻訳",
"tpt-target-page": "このページは手動では更新できません。\nこのページはページ [[$1]] の翻訳版であり、[$2 翻訳ツール]を使用して更新できます。",
"tpt-unknown-page": "この名前空間はコンテンツ ページの翻訳のために予約されています。\n編集しようとしているページに対応する翻訳対象ページが存在しないようです。",
@@ -76,7 +78,6 @@
"tpt-discouraged-language-reason": "理由: $1",
"tpt-priority-languages": "翻訳管理者が、このメッセージ群の優先言語を $1 に設定しました。",
"tpt-render-summary": "翻訳元ページの新版に適合するように更新",
- "tpt-download-page": "翻訳付きでページを書き出し",
"aggregategroups": "集約群",
"tpt-aggregategroup-add": "追加",
"tpt-aggregategroup-save": "保存",
@@ -113,6 +114,7 @@
"logentry-pagetranslation-prioritylanguages-force": "$1 が翻訳対象ページ $3 の言語を $5 に{{GENDER:$2|制限}}",
"logentry-pagetranslation-associate": "$1 が翻訳対象ページ $3 を集約群 $4 に{{GENDER:$2|追加}}",
"logentry-pagetranslation-dissociate": "$1 が翻訳対象ページ $3 を集約群 $4 から{{GENDER:$2|除去}}",
+ "log-action-filter-pagetranslation": "操作の種類:",
"pt-movepage-title": "翻訳対象ページ「$1」の移動",
"pt-movepage-blockers": "以下の{{PLURAL:$1|エラー}}が発生したため、翻訳対象ページを新しいページ名に移動できません:",
"pt-movepage-block-base-exists": "移動先の翻訳対象ページ「[[:$1]]」は既に存在します。",
@@ -137,11 +139,11 @@
"pt-movepage-action-perform": "移動を実行",
"pt-movepage-action-other": "対象を変更",
"pt-movepage-intro": "この特別ページでは、翻訳対象に指定されているページを移動できます。\n多くのページを移動する必要があるため、移動操作はすぐには完了しません。\nページの移動中は、そのページの操作はできません。\n失敗した場合は、その[[Special:Log/pagetranslation|ページの翻訳記録]]に記録されるため、手動で修正する必要があります。",
- "pt-movepage-logreason": "翻訳対象ページ「$1」の一部。",
- "pt-movepage-started": "基底ページが移動されました。\n[[Special:Log/pagetranslation|ページの翻訳記録]]で、エラーや完了メッセージを確認してください。",
+ "pt-movepage-logreason": "翻訳対象ページ「$1」の一部",
+ "pt-movepage-started": "[[Special:Log/pagetranslation|ページの翻訳記録]]で、エラーや完了メッセージを確認してください。",
"pt-locked-page": "翻訳対象ページが現在移動中のため、このページはロックされています。",
- "pt-deletepage-lang-title": "翻訳ページ「$1」を削除中。",
- "pt-deletepage-full-title": "翻訳対象ページ「$1」を削除中。",
+ "pt-deletepage-lang-title": "翻訳ページ「$1」の削除",
+ "pt-deletepage-full-title": "翻訳可能ページ「$1」の削除",
"pt-deletepage-invalid-title": "指定したページは無効です。",
"pt-deletepage-invalid-text": "指定したページは、翻訳対象ページでも翻訳ページでもありません。",
"pt-deletepage-action-check": "削除するページを列挙",
@@ -158,30 +160,31 @@
"pt-deletepage-list-section": "翻訳単位ページ",
"pt-deletepage-list-other": "その他の下位ページ",
"pt-deletepage-list-count": "合計 $1 ページを削除",
- "pt-deletepage-full-logreason": "翻訳対象ページ「$1」の一部。",
- "pt-deletepage-lang-logreason": "翻訳ページ「$1」の一部。",
+ "pt-deletepage-full-logreason": "翻訳対象ページ「$1」の一部",
+ "pt-deletepage-lang-logreason": "翻訳ページ「$1」の一部",
"pt-deletepage-started": "[[Special:Log/pagetranslation|ページの翻訳記録]]で、エラーや完了メッセージを確認してください。",
"pt-deletepage-intro": "この特別ページでは、翻訳対象ページ全体、または指定した言語への翻訳ページを個別に削除できます。\n依存関係があるページもすべて削除するため、削除操作はすぐには完了しません。\n失敗した場合は[[Special:Log/pagetranslation|ページの翻訳記録]]に記録されるので、手動で修正する必要があります。",
"pagemigration": "翻訳ページの移行",
"pm-import-button-label": "取り込む",
"pm-savepages-button-label": "保存",
"pm-cancel-button-label": "キャンセル",
- "pm-pagename-placeholder": "ページ名を入力",
- "pm-langcode-placeholder": "言語コード",
"pm-page-does-not-exist": "$1 は存在しません",
"pm-old-translations-missing": "$1 は古い翻訳を含んでいません",
"pm-pagename-missing": "ページ名を入力してください",
- "pm-langcode-missing": "言語コードを入力してください",
"pm-add-icon-hover-text": "単位を下に追加",
"pm-swap-icon-hover-text": "下の単位と入れ替える",
"pm-delete-icon-hover-text": "単位を削除",
- "pm-pagetitle-invalid": "有効なページ名を入力してください",
+ "pm-pagetitle-invalid": "有効なページ名を入力してください。<page-name>/<language-code> 形式でなければなりません。",
+ "pm-langcode-missing": "言語コードがタイトルに表示されないようです。<page-name>/<language-code> の形式でページタイトルを入力してください。",
"pm-summary-import": "[[Special:PageMigration|ページ移行]]を使用して翻訳を取り込み",
"tpt-translate-title": "ページ名を翻訳できるようにする",
"pp-pagename-placeholder": "ページ名を入力",
"pp-save-button-label": "保存",
+ "pp-save-message": "ページは保存されました。[$1 編集]できます。",
"pp-pagename-missing": "ページ名を入力してください。",
"tpt-unlink-confirm": "このページを翻訳システムから本当に除去するかどうか確認してください。\n言語選択と、翻訳されたページ名が、動作しなくなります。\n翻訳ページが編集できる状態になります。",
"tpt-unlink-button": "翻訳対象から除去",
- "tpt-unlink-summary": "ページを翻訳対象から除去"
+ "tpt-unlink-summary": "ページを翻訳対象から除去",
+ "tpt-generic-confirm": "操作を確認してください。",
+ "tpt-generic-button": "確認"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/jam.json b/MLEB/Translate/i18n/pagetranslation/jam.json
index b55984c4..86c772ae 100644
--- a/MLEB/Translate/i18n/pagetranslation/jam.json
+++ b/MLEB/Translate/i18n/pagetranslation/jam.json
@@ -1,17 +1,15 @@
{
"@metadata": {
"authors": [
- "Yocahuna"
+ "Yocahuna",
+ "Katxis"
]
},
"pagetranslation": "Piej chranslieshan",
"right-pagetranslation": "Maak voerjan a piejdem fi chranslieshan",
- "tpt-desc": "Extenshan fi chransliet kantent piejdem",
"tpt-section": "Chranslieshan yuunit $1",
"tpt-section-new": "New chranslieshan yuunit.\nNiem: $1",
"tpt-section-deleted": "Chranslieshan yuunit $1",
- "tpt-template": "Piej templit",
- "tpt-templatediff": "Di piej templit chienj",
"tpt-diff-old": "Priivos tex",
"tpt-diff-new": "Nyuu tex",
"tpt-submit": "Maak dis voerjan fi chranslieshan",
@@ -24,12 +22,12 @@
"tpt-oldrevision": "$2 a no di lietis voerjan a di piej [[:$1]].\nOnggl lietis voerjan kiahn maak fi chranslieshan.",
"tpt-notsuitable": "Piej $1 no suutobl fi chranslieshan.\nMek shuor se iab <nowiki><translate></nowiki> tag ahn gat valid sintax.",
"tpt-saveok": "Di piej [[:$1]] maakop fi chranslieshan wid $2 {{PLURAL:$2|chranslieshan yuunit|chranslieshan yuunit}}.\nDi piej kiahn nou get <span class=\"plainlinks\">[$3 chransliet]</span>.",
- "tpt-badsect": "\"$1\" a no valid niem fi chranslieshan yuunit $2.",
"tpt-showpage-intro": "Nyuu, egzisin ahn diliitid sekshan lis biluo.\nBifuo yu maak dis voerjan fi chranslieshan, chek se di chienj to sekshandem minimaiz fi avaid anesiseri wok fi chranslietadem.",
"tpt-mark-summary": "Dis voerjan maak fi chranslieshan",
"tpt-edit-failed": "Kudn opdiet di piej: $1",
"tpt-already-marked": "Di lietis voerjan a dis piej don maak fi chranslieshan aredi.",
"tpt-unmarked": "Piej $1 no langa maak fi chranslieshan.",
"tpt-list-nopages": "No piej no maak fi chranslieshan nar redi fi maak fi chranslieshan.",
- "tpt-old-pages": "Som voerjan a {{PLURAL:$1|dis piej|demaya piej}} don maak fi chranslieshan."
+ "tpt-old-pages": "Som voerjan a {{PLURAL:$1|dis piej|demaya piej}} don maak fi chranslieshan.",
+ "tpt-languages-nonzero": "$1 ($2% chranslietid)‎"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/jv.json b/MLEB/Translate/i18n/pagetranslation/jv.json
index 866cd228..beee5e3e 100644
--- a/MLEB/Translate/i18n/pagetranslation/jv.json
+++ b/MLEB/Translate/i18n/pagetranslation/jv.json
@@ -5,103 +5,123 @@
"Pras"
]
},
- "pagetranslation": "Terjemahan kaca",
- "right-pagetranslation": "Tandhai vèrsi kaca kanggo terjemahan",
- "tpt-desc": "Èkstènsi kanggo nerjemahaké kaca kontèn",
- "tpt-section": "Unit terjemahan $1",
- "tpt-section-new": "Unit terjemahan anyar.\nJeneng: $1",
- "tpt-section-deleted": "Unit terjemahan $1",
- "tpt-template": "Templat kaca",
- "tpt-templatediff": "Templat kaca wis diganti.",
- "tpt-diff-old": "Tèks sakdurungé",
- "tpt-diff-new": "Tèks anyar",
- "tpt-submit": "Tandhai vèrsi iki kanggo terjemahan",
- "tpt-sections-oldnew": "Unit terjemahan anyar lan sing wis ana",
- "tpt-sections-deleted": "Unit terjemahan sing wis dibusak",
- "tpt-sections-template": "Témplat kaca terjemahan",
- "tpt-badtitle": "Jeneng kaca sing diawèhaké ($1) dudu judhul sing sah",
+ "pagetranslation": "Pertalan kaca",
+ "right-pagetranslation": "Tandhani vèrsi kaca supaya kapertal",
+ "action-pagetranslation": "tata kaca-kaca kang bisa kapertal",
+ "tpt-section": "Ékan pertalan $1",
+ "tpt-section-new": "Ékan pertalan anyar.\nJeneng: $1",
+ "tpt-section-deleted": "Ékan pertalan $1",
+ "tpt-diff-old": "Tulisan sadurungé",
+ "tpt-diff-new": "Tulisan anyar",
+ "tpt-submit": "Tandhani vèrsi iki supaya kapertal",
+ "tpt-sections-oldnew": "Ékan pertalan anyar lan kang wis ana",
+ "tpt-sections-deleted": "Ékan pertalan kang wis kabusek",
+ "tpt-sections-template": "Cithakan kaca pertalan",
+ "tpt-action-nofuzzy": "Aja nandhani pertalan ora trep",
+ "tpt-badtitle": "Jeneng kaca kang kawènèhaké ($1) dudu sesirah kang trep",
"tpt-nosuchpage": "Kaca $1 ora ana",
- "tpt-oldrevision": "$2 dudu vèrsi pungkasan saka kaca [[:$1]].\nNamung vèrsi pungkasan sing bisa ditandhani kanggo terjemahan.",
- "tpt-notsuitable": "Kaca $1 ora cocok diterjemahaké.\nPesthekaké kuwi nduwèni tag <nowiki><translate></nowiki> lan sintaks sing sah.",
- "tpt-badsect": "\"$1\" dudu jeneng sing sah kanggo unit terjemahan $2.",
- "tpt-mark-summary": "Tandhai vèrsi iki kanggo terjemahan",
+ "tpt-oldrevision": "$2 dudu vèrsi pungkasan saka kaca [[:$1]].\nMung vèrsi pungkasan kang bisa tinandhanan supaya kapertal.",
+ "tpt-notsuitable": "Kaca $1 ora cocog manawa kapertal.\nPesthèkaké kacané tinengeran <nowiki><translate></nowiki> lan duwé sintaksis kang trep.",
+ "tpt-mark-summary": "Nandhani vèrsi iki supaya kapertal",
"tpt-edit-failed": "Ora bisa nganyari kaca: $1",
- "tpt-duplicate": "Jeneng unit terjemahan $1 dianggo luwih saka pisan.",
- "tpt-already-marked": "Vèrsi pungkasan kaca iki wis ditandhai kanggo terjemahan.",
- "tpt-unmarked": "Kaca $1 ora manèh ditandhani kanggo terjemahan.",
- "tpt-list-nopages": "Ora ana kaca sing ditandhai kanggo terjemahan utawa siap ditandhai kanggo terjemahan.",
- "tpt-new-pages-title": "Kaca sing ditawakaké kanggo terjemahan",
- "tpt-old-pages-title": "Kaca nèng terjemahan",
+ "tpt-duplicate": "Jeneng ékan pertalan $1 kanggo ping akèh.",
+ "tpt-already-marked": "Vèrsi pungkasan kaca iki wis tinandhanan supaya kapertal.",
+ "tpt-unmarked": "Kaca $1 ora tinandhanan supaya kapertal manèh.",
+ "tpt-list-nopages": "Ora ana kaca kang tinandhanan supaya kapertal utawa cumepak supaya bisa tinandhanan supaya kapertal.",
+ "tpt-new-pages-title": "Kaca kang kausulaké supaya kapertal",
+ "tpt-old-pages-title": "Kaca ing pertalan",
"tpt-other-pages-title": "Kaca rusak",
- "tpt-new-pages": "{{PLURAL:$1|Kaca iki kaisi|Kaca iki kaisi}} tèks mawa tag terjemahan,\nnangung ora ana vèrsi {{PLURAL:$1|kaca iki|kaca iki}} lagi ditandhai kanggo terjemahan.",
- "tpt-old-pages": "Sebagéyan vèrsi {{PLURAL:$1|kaca iki|kaca iki}} wis ditandhai kanggo terjemahan.",
- "tpt-other-pages": "{{PLURAL:$1|Vèrsi lawas kaca iki|Vèrsi lawas kaca iki}} ditandhai kanggo terjemahan,\nnamung {{PLURAL:$1|vèrsi|vèrsi}} pungkasan ora bisa ditandhai kanggo terjemahan.",
+ "tpt-new-pages": "{{PLURAL:$1|Kaca iki isi|Kaca iki isi}} tulisan mawa tenger pertalan, nanging ora ana vèrsi {{PLURAL:$1|kaca iki|kaca iki}} kang lagi tinandhanan supaya kapertal.",
+ "tpt-old-pages": "Sapérangan vèrsi {{PLURAL:$1|kaca iki|kaca iki}} wis tinandhanan supaya kapertal.",
+ "tpt-other-pages": "{{PLURAL:$1|Vèrsi lawas kaca iki|Vèrsi lawas kaca iki}} tinandhanan supaya kapertal, nanging {{PLURAL:$1|vèrsiné|vèrsiné}} kang anyar ora bisa tinandhanan supaya kapertal.",
"tpt-select-prioritylangs": "Dhaptar kodhe basa prioritas diwatesi nganggo koma:",
- "tpt-select-prioritylangs-force": "Tolak terjemahan nèng basa liya kajaba basa prioritas",
+ "tpt-select-prioritylangs-force": "Éndhani mertal menyang basa kang ora dadi priyoritas",
"tpt-select-prioritylangs-reason": "Alesan:",
"tpt-sections-prioritylangs": "Basa prioritas",
- "tpt-rev-mark": "tandhai kanggo terjemahan",
- "tpt-rev-unmark": "busak saka terjemahan",
+ "tpt-rev-mark": "tandhani supaya kapertal",
+ "tpt-rev-unmark": "busek saka pertalan",
"tpt-rev-encourage": "balèkaké",
- "tpt-rev-mark-tooltip": "Tandhai vèrsi pungkasan kaca iki kanggo terjemahan.",
- "tpt-rev-unmark-tooltip": "Busak kaca iki saka terjemahan.",
- "tpt-rev-encourage-tooltip": "Balekaké kaca iki nèng terjemahan biasa.",
- "translate-tag-translate-link-desc": "Terjemahaké kaca iki",
- "translate-tag-markthis": "Tandhai kaca iki kanggo terjemahan",
- "translate-tag-markthisagain": "Kaca iki nduwèni <span class=\"plainlinks\">[$1 owahan]</span> kawit pungkasan <span class=\"plainlinks\">[$2 ditandhai kanggo terjemahan]</span>.",
- "translate-tag-hasnew": "Kaca iki kaisi <span class=\"plainlinks\">[$1 owahan]</span> sing ora ditandhai kanggo terjemahan.",
- "tpt-translation-intro": "Kaca iki <span class=\"plainlinks\">[$1 vèrsi sing wis diterjemahaké]</span> saka kaca [[$2]] lan terjemahan wis rampung $3%.",
- "tpt-languages-legend": "Basa liya:",
- "tpt-languages-zero": "Lekasi terjemahan kanggo basa iki",
+ "tpt-rev-mark-tooltip": "Tandhani vèrsi anyar kaca iki supaya kapertal.",
+ "tpt-rev-unmark-tooltip": "Busek kaca iki saka pertalan.",
+ "tpt-rev-encourage-tooltip": "Pulihaké kaca iki dadi pertalan lumrah.",
+ "translate-tag-translate-link-desc": "Pertal kaca iki",
+ "translate-tag-markthis": "Tandhani kaca iki supaya kapertal",
+ "translate-tag-markthisagain": "Kaca iki duwé <span class=\"plainlinks\">[$1 owahan]</span> kawit <span class=\"plainlinks\">[$2 tinandhanan supaya kapertal]</span>.",
+ "translate-tag-hasnew": "Kaca iki ngemu <span class=\"plainlinks\">[$1 owahan]</span> kang ora katengeran minangka pertalan.",
+ "tpt-translation-intro": "Kaca iki minangka <span class=\"plainlinks\">[$1 vèrsi pertalan]</span> saka kaca [[$2]] lan pertalané wis $3% rampung.",
+ "tpt-translation-intro-fuzzy": "Pertalan lawas tinengeran mangkéné.",
+ "tpt-languages-legend": "Basa liyané:",
+ "tpt-languages-separator": "&#160;•&#32;",
+ "tpt-languages-zero": "Wiwiti pertalan tumrap basa iki",
+ "tpt-languages-nonzero": "$1 ($2% kapertal)",
+ "tpt-tab-translate": "Pertal",
"tpt-target-page": "Kaca iki ora bisa dianyari manual.\nKaca iki kaca terjemahan [[$1]] lan terjemahan bisa dianyari nganggo [$2 prangkat terjemahan].",
- "tpt-unknown-page": "Bilik jeneng iki dicadhangaké kanggo terjemahan kaca kontèn.\nKaca sing arep Sampéyan sunting kayané ora ana kaitané karo kaca sing ditandhai kanggo terjemahan.",
+ "tpt-patrolling-blocked": "Kaca iki ora bisa ingawasan. Nanging, anggonen laku pertal saperlu mriksa.",
+ "tpt-unknown-page": "Bilik jeneng iki dicadhangaké kanggo terjemahan kaca kontèn.\nKaca sing arep panjenengan sunting kayané ora ana kaitané karo kaca sing ditandhai kanggo terjemahan.",
"tpt-translation-restricted": "Terjemahan kaca iki nèng basa iki ditolak déning pangurus terjemahan.\n\nAlesan: $1",
+ "tpt-discouraged-language-force-header": "Kaca iki ora bisa kapertal menyang $1.",
"tpt-discouraged-language-force": "<strong>Kaca iki ora bisa diterjemahaké nèng $2.</strong>\n\nPangurus terjemahan milih supaya kaca iki namung bisa diterjemahaké nèng $3.",
"tpt-discouraged-language": "<strong>Nerjemahaké nèng $2 dudu prioritas kanggo kaca iki.</strong>\n\nPangurus terjemahan milih fokus nèng upaya terjemahan nèng $3.",
"tpt-discouraged-language-reason": "Alesan: $1",
"tpt-priority-languages": "Pangurus terjemahan nyetèl basa prioritas kanggo klompok iki dadi $1.",
"tpt-render-summary": "Nganyari kanggo nyocokaké vèrsi anyar kaca sumber",
- "tpt-download-page": "Èkspor kaca mawa terjemahan",
"tpt-aggregategroup-add": "Tambah",
"tpt-aggregategroup-save": "Simpen",
"tpt-aggregategroup-add-new": "Tambah klompok agrégat anyar",
"tpt-aggregategroup-new-name": "Jeneng:",
"tpt-aggregategroup-new-description": "Katrangan (pilihan):",
- "tpt-aggregategroup-remove-confirm": "Sampéyan yakin arep mbusak klompok agrégat iki?",
+ "tpt-aggregategroup-remove-confirm": "Panjenengan yakin arep mbusak klompok agrégat iki?",
"tpt-aggregategroup-invalid-group": "Klompok ora ana",
+ "tpt-aggregategroup-edit-name": "Jeneng:",
+ "tpt-aggregategroup-edit-description": "Wedharan:",
+ "tpt-aggregategroup-update": "Simpen",
+ "tpt-aggregategroup-update-cancel": "Wurung",
"pt-parse-open": "Tag &lt;translate> ora imbang.\nTemplat terjemahan: <pre>$1</pre>",
"pt-parse-close": "Tag &lt;/translate> ora imbang.\nTemplat terjemahan: <pre>$1</pre>",
"log-description-pagetranslation": "Log laku sing ana kaitané karo sistem terjemahan kaca",
"log-name-pagetranslation": "Log terjemahan kaca",
+ "logentry-pagetranslation-mark": "$1 {{GENDER:$2|nengeri}} $3 supaya kapertal",
+ "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|mbuwang}} $3 saka pertalan",
+ "logentry-pagetranslation-moveok": "$1 {{GENDER:$2|rampung}} ngowahi jeneng kaca kang bisa kapertal $3 dadi $4",
+ "logentry-pagetranslation-movenok": "$1 {{GENDER:$2|ngalami}} masalah nalika ngalih kaca $3 menyang $4",
+ "logentry-pagetranslation-deletefok": "$1 {{GENDER:$2|rampung}} mbusak kaca kang bisa kapertal $3",
+ "logentry-pagetranslation-deletefnok": "$1 {{GENDER:$2|wurung}} mbusak $3 kang kalebu ing kaca kang bisa kapertal $4",
+ "logentry-pagetranslation-deletelok": "$1 {{GENDER:$2|rampung}} mbusak kaca pertalan $3",
+ "logentry-pagetranslation-deletelnok": "$1 {{GENDER:$2|wurung}} mbusak $3 kang kalebu ing kaca pertalan $4",
+ "log-action-filter-pagetranslation": "Jinis laku:",
+ "log-action-filter-pagetranslation-mark": "Tandha kanggo pertalan",
+ "log-action-filter-pagetranslation-unmark": "Busakan saka pertalan",
+ "log-action-filter-pagetranslation-move": "Alihan kaca",
+ "log-action-filter-pagetranslation-delete": "Busakan kaca",
"pt-movepage-title": "Pindhah kaca \"$1\" sing bisa diterjemahaké",
"pt-movepage-blockers": "Kaca sing bisa diterjemahaké ora bisa dipindhah nèng jeneng anyar amarga {{PLURAL:$1|kasalahan|kasalahan}} iki:",
- "pt-movepage-block-base-exists": "Kaca dhasar patujon \"[[:$1]]\" ana.",
- "pt-movepage-block-base-invalid": "Kaca dhasar patujon dudu judhul sing sah.",
+ "pt-movepage-block-base-exists": "Kaca jujugan \"[[:$1]]\" kang bisa kapertal ana.",
+ "pt-movepage-block-base-invalid": "Jeneng kaca jujugan kang bisa kapertal dudu sesirah kang sah.",
"pt-movepage-block-tp-exists": "Kaca terjemahan patujon \"[[:$2]]\" ana.",
- "pt-movepage-block-tp-invalid": "Judhul kaca terjemahan patujon kanggo \"[[:$1]]\" ora sah (kadawan?).",
- "pt-movepage-block-section-exists": "Kaca sèksi patujon \"[[:$2]]\" ana.",
- "pt-movepage-block-section-invalid": "Judhul kaca sèksi patujon kanggo \"[[:$1]]\" ora sah (kadawan?).",
+ "pt-movepage-block-tp-invalid": "Sesirah kaca pertalan tujuan kanggo \"[[:$1]]\" ora sah (kadawan?).",
+ "pt-movepage-block-section-exists": "Kaca jujugan \"[[:$2]]\" kanggo unit pertalan ana.",
+ "pt-movepage-block-section-invalid": "Sesirah kaca paran kanggo \"[[:$1]]\" ngenani ékan pertalan bakal ora trep (kedawan?).",
"pt-movepage-block-subpage-exists": "Subkaca patujon \"[[:$2]]\" ana.",
- "pt-movepage-block-subpage-invalid": "Judhul kaca subkkaca patujon kanggo \"[[:$1]]\" ora sah (kadawan?).",
+ "pt-movepage-block-subpage-invalid": "Sesirah anak kaca tujuan kanggo \"[[:$1]]\" ora sah (kadawan?).",
"pt-movepage-list-pages": "Daptar kaca sing arep dipindhah",
- "pt-movepage-list-translation": "Kaca terjemahan",
- "pt-movepage-list-section": "Kaca sèksi",
- "pt-movepage-list-other": "Subkaca liya",
+ "pt-movepage-list-translation": "{{PLURAL:$1|Kaca|Kaca}} pertalan",
+ "pt-movepage-list-section": "{{PLURAL:$1|Kaca|Kaca}} unit pertalan",
+ "pt-movepage-list-other": "Anak-{{PLURAL:$1|kaca|kaca}} liyané",
"pt-movepage-list-count": "Kabèhé $1 {{PLURAL:$1|kaca|kaca}} sing arep dipindhah.",
"pt-movepage-legend": "Pindhah kaca sing bisa diterjemahaké",
"pt-movepage-current": "Jeneng saiki:",
"pt-movepage-new": "Jeneng anyar:",
"pt-movepage-reason": "Alesan:",
"pt-movepage-subpages": "Pindhak kabèh subkaca",
- "pt-movepage-action-check": "Priksa yèn pamindhahan bisa dilakokaké",
+ "pt-movepage-action-check": "Priksa yèn pangalihé bisa diayahi",
"pt-movepage-action-perform": "Pindhahaké",
"pt-movepage-action-other": "Ganti patujon",
- "pt-movepage-intro": "Kaca astamiwa iki nglilakaké Sampéyan mindhahaké kaca sing ditandhai kanggo terjemahan.\nPamidhahan ora bakal gelis, amarga akèh kaca sing kudu dipindhahaké.\nNalika kaca dipindhahaké, ora bisa interaksi karo kaca sing dimaksud.\nKagagalan bakal dilebokaké nèng [[Special:Log/pagetranslation|log terjemahan kaca]] lan ora perlu dibenahi manual.",
- "pt-movepage-logreason": "Bagéyan kaca \"$1\" sing bisa diterhemahaké.",
- "pt-movepage-started": "Kaca dhasar saiki wis dipindhah.\nMangga priksa [[Special:Log/pagetranslation|log pamindhahan kaca]] kanggo layang kasalahan lan parampungan.",
+ "pt-movepage-intro": "Kaca astamiwa iki nglilakaké panjenengan mindhahaké kaca sing ditandhai kanggo terjemahan.\nPamidhahan ora bakal gelis, amarga akèh kaca sing kudu dipindhahaké.\nNalika kaca dipindhahaké, ora bisa interaksi karo kaca sing dimaksud.\nKagagalan bakal dilebokaké nèng [[Special:Log/pagetranslation|log terjemahan kaca]] lan ora perlu dibenahi manual.",
+ "pt-movepage-logreason": "Pérangan kaca \"$1\" kang bisa kapertal",
+ "pt-movepage-started": "Mangga priksanen [[Special:Log/pagetranslation|log pertalan kaca]] sadhéla bokmanawa ana masalah lan layang rampungan.",
"pt-locked-page": "Kaca iki digembok amarga kaca sing bisa diterjemahaké saiki wis dipindhah.",
- "pt-deletepage-lang-title": "Mbusak kaca \"$1\" sing bisa diterjemahaké.",
- "pt-deletepage-full-title": "Mbusak kaca \"$1\" sing bisa diterjemahaké.",
+ "pt-deletepage-lang-title": "Mbusak kaca pertalan \"$1\"",
+ "pt-deletepage-full-title": "Mbusak kaca \"$1\" kang bisa kapertal.",
"pt-deletepage-invalid-title": "Kaca sing dimaksud ora sah.",
"pt-deletepage-invalid-text": "Kaca sing dimaksud dudu kaca sing bisa diterjemahaké utawa terjemahan saka kuwi.",
"pt-deletepage-action-check": "Daptar kaca sing arep dibusak",
@@ -115,10 +135,33 @@
"pt-deletepage-subpages": "Busak kabèh subkaca",
"pt-deletepage-list-pages": "Daptar kaca sing arep dibusak",
"pt-deletepage-list-translation": "Kaca terjemahan",
- "pt-deletepage-list-section": "Kaca sèksi",
+ "pt-deletepage-list-section": "Kaca iji pertalan",
"pt-deletepage-list-other": "Subkaca liya",
"pt-deletepage-list-count": "Kabèhé $1 {{PLURAL:$1|kaca|kaca}} sing arep dibusak.",
- "pt-deletepage-full-logreason": "Bagéyan kaca \"$1\" sing bisa diterhemahaké.",
- "pt-deletepage-lang-logreason": "Bagéyan kaca terjemahan \"$1\".",
- "pt-deletepage-started": "Mangga priksa [[Special:Log/pagetranslation|log terjemahan kaca]] kanggo layang kasalahan lan parampungan."
+ "pt-deletepage-full-logreason": "Perangan kaca \"$1\" kang bisa kapertal",
+ "pt-deletepage-lang-logreason": "Pérangan kaca pertalan \"$1\"",
+ "pt-deletepage-started": "Mangga priksa [[Special:Log/pagetranslation|log terjemahan kaca]] kanggo layang kasalahan lan parampungan.",
+ "pagemigration": "Migrasi kaca pertalan",
+ "pm-import-button-label": "Impor",
+ "pm-savepages-button-label": "Simpen",
+ "pm-cancel-button-label": "Wurung",
+ "pm-page-does-not-exist": "$1 ora ana.",
+ "pm-old-translations-missing": "$1 ora ngemu pertalan lawas.",
+ "pm-pagename-missing": "Sumangga lebokaké jeneng kacané.",
+ "pm-add-icon-hover-text": "Wuwuh ékan ing ngisor iki",
+ "pm-delete-icon-hover-text": "Busak iji",
+ "pm-pagetitle-placeholder": "Lebokaké sesirah kacané",
+ "tpt-translate-title": "Idinaké mertal sesirah kaca",
+ "pp-pagename-placeholder": "Lebokaké jeneng kacané",
+ "pp-prepare-button-label": "Cepakaké",
+ "pp-save-button-label": "Simpen",
+ "pp-cancel-button-label": "Wurung",
+ "pp-save-message": "Kacané wis kasimpen. Panjenengan bisa [$1 mbesut] kacané.",
+ "pp-pagename-missing": "Sumangga isi mawa jeneng kacané.",
+ "pp-diff-old-header": "Tulisan sumber",
+ "pp-diff-new-header": "Tulisan kang cumepak",
+ "tpt-unlink-button": "Buwang saka pertalan",
+ "tpt-unlink-summary": "Mbuwang kaca saka pertalan",
+ "tpt-generic-confirm": "Sumangga konfirmasi lakuné.",
+ "tpt-generic-button": "Konfirmasi"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/ka.json b/MLEB/Translate/i18n/pagetranslation/ka.json
index abd47147..79e86f7b 100644
--- a/MLEB/Translate/i18n/pagetranslation/ka.json
+++ b/MLEB/Translate/i18n/pagetranslation/ka.json
@@ -11,7 +11,6 @@
"tpt-section": "თარგმნის ბლოკი $1",
"tpt-section-new": "თარგმნის ახალი ბლოკი.\nსახელი: $1",
"tpt-section-deleted": "თარგმნის ბლოკი $1",
- "tpt-template": "გვერდის თარგი",
"tpt-diff-old": "წინა ტექსტი",
"tpt-diff-new": "ახალი ტექსტი",
"tpt-sections-template": "თარგმნის გვერდის თარგი",
@@ -24,28 +23,81 @@
"tpt-rev-encourage": "აღდგენა",
"translate-tag-translate-link-desc": "ამ გვერდის თარგმნა",
"tpt-languages-legend": "სხვა ენები:",
+ "tpt-languages-zero": "ამ ენაზე თარგმნის დაწყება",
"tpt-languages-nonzero": "$1 ($2% ნათარგმნი)",
+ "tpt-tab-translate": "თარგმნა",
"tpt-discouraged-language-reason": "მიზეზი: $1",
"tpt-aggregategroup-add": "დამატება",
"tpt-aggregategroup-save": "შენახვა",
"tpt-aggregategroup-new-name": "სახელი:",
"tpt-aggregategroup-new-description": "აღწერა (არასავალდებულო):",
"tpt-aggregategroup-invalid-group": "ჯგუფი არ არსებობს",
+ "tpt-aggregategroup-edit-name": "სახელი:",
+ "tpt-aggregategroup-edit-description": "აღწერა:",
+ "tpt-aggregategroup-update": "შენახვა",
+ "tpt-aggregategroup-update-cancel": "გაუქმება",
+ "tpt-invalid-group": "არასწორი ჯგუფი",
+ "pt-parse-open": "დაუბალანსებელი &lt;translate> ტეგი.\nთარგმანის თარგი: <pre>$1</pre>",
+ "pt-parse-close": "დაუბალანსებელი &lt;translate> ტეგი.\nთარგმანის თარგი: <pre>$1</pre>",
"log-name-pagetranslation": "გვერდის თარგმნის ჟურნალი",
"pt-movepage-block-subpage-exists": "სამიზნე ქვეგვერდი \"[[:$2]]\" უკვე არსებობს.",
"pt-movepage-list-pages": "გადასატანი გვერდების სია",
"pt-movepage-list-translation": "სათარგმნი {{PLURAL:$1|გვერდი|გვერდები}}",
"pt-movepage-list-other": "სხვა ქვე{{PLURAL:$1|გვერდი|გვერდები}}",
+ "pt-movepage-legend": "თარგმნადი გვერდის გადატანა",
"pt-movepage-current": "მიმდინარე სახელი:",
"pt-movepage-new": "ახალი სახელი:",
"pt-movepage-reason": "მიზეზი:",
"pt-movepage-subpages": "ყველა ქვეგვერდის გადატანა",
+ "pt-movepage-action-check": "გადატანის შესაძლებლობის შემოწმება",
+ "pt-movepage-action-perform": "გადატანა",
"pt-movepage-action-other": "მიზნის შეცვლა",
+ "pt-movepage-logreason": "თარგმნადი გვერდის ნაწილი „$1“.",
+ "pt-deletepage-lang-title": "იშლება თარგმნილი გვერდი „$1“.",
+ "pt-deletepage-full-title": "იშლება თარგმნადი გვერდი „$1“.",
+ "pt-deletepage-invalid-title": "მითითებული გვერდი არასწორია.",
+ "pt-deletepage-invalid-text": "მითითებული გვერდი არ არის თარგმნილი ან თარგმნადი გვერდი.",
+ "pt-deletepage-action-check": "წასაშლელი გვერდების სია",
+ "pt-deletepage-action-perform": "წაშლა",
"pt-deletepage-action-other": "სამიზნის შეცვლა",
+ "pt-deletepage-lang-legend": "თარგმანის გვერდის წაშლა",
+ "pt-deletepage-full-legend": "თარგმანის გვერდის წაშლა",
+ "pt-deletepage-any-legend": "თარგმანის გვერდის ან თარგმნილი გვერდის წაშლა",
"pt-deletepage-current": "გვერდის სახელი:",
"pt-deletepage-reason": "მიზეზი:",
"pt-deletepage-subpages": "ყველა ქვეგვერდის წაშლა",
+ "pt-deletepage-list-pages": "წასაშლელი გვერდების სია",
"pt-deletepage-list-translation": "სათარგმნი გვერდები",
+ "pt-deletepage-list-section": "თარგმანის განყოფილების გვერდები",
"pt-deletepage-list-other": "სხვა ქვეგვერდები",
- "pp-cancel-button-label": "გაუქმება"
+ "pt-deletepage-list-count": "სულ წასაშლელია $1 {{PLURAL:$1|გვერდი|გვერდი}}.",
+ "pt-deletepage-full-logreason": "თარგმნადი გვერდის ნაწილი „$1“.",
+ "pt-deletepage-lang-logreason": "თარგმნადი გვერდის ნაწილი „$1“.",
+ "pt-deletepage-started": "გთხოვთ, შეამოწმეთ [[Special:Log/pagetranslation|გვერდების თარგმნის ჟურნალი]] შეცდომებისა და წარმატებული შესრულებების არსებობაზე.",
+ "pagemigration": "თარგმანის გვერდის მიგრაცია",
+ "pm-import-button-label": "იმპორტი",
+ "pm-savepages-button-label": "შენახვა",
+ "pm-cancel-button-label": "გაუქმება",
+ "pm-page-does-not-exist": "$1 არ არსებობს.",
+ "pm-old-translations-missing": "$1 არ შეიცავს ძველ თარგმანებს.",
+ "pm-pagename-missing": "გთხოვთ, შეიყვანოთ გვერდის სახელი.",
+ "pm-add-icon-hover-text": "ბოლოში ბლოკის დამატება",
+ "pm-swap-icon-hover-text": "ქვედა ბლოკთან ადგილების გაცვლა",
+ "pm-delete-icon-hover-text": "ბლოკის წაშლა",
+ "pm-pagetitle-invalid": "გთხოვთ, შეიყვანოთ გვერდის სწორი სახელი",
+ "pm-langcode-missing": "გთხოვთ, შეიყვანოთ ენის კოდი.",
+ "pm-summary-import": "თარგმანი იმპორტირებულია [[Special:PageMigration|გვერდის მიგრაციის]] გამოყენებით",
+ "tpt-translate-title": "გვერდის სათაურის თარგმნის ნებართვა",
+ "pp-save-summary": "გვერდის სათარგმნად მომზადება",
+ "pagepreparation": "გვერდის სათარგმნად მომზადება",
+ "pp-pagename-placeholder": "შეიყვანეთ გვერდის სახელი",
+ "pp-prepare-button-label": "მომზადება",
+ "pp-save-button-label": "შენახვა",
+ "pp-cancel-button-label": "გაუქმება",
+ "pp-save-message": "გვერდი შენახულია. თქვენ შეგიძლიათ მისი [$1 რედაქტირება].",
+ "pp-pagename-missing": "გთხოვთ, შეიყვანოთ გვერდის სახელი.",
+ "pp-diff-old-header": "წყაროს ტექსტი",
+ "pp-diff-new-header": "მომზადებული ტექსტი",
+ "tpt-unlink-button": "თარგმანიდან წაშლა",
+ "tpt-unlink-summary": "გვერდის თარგმანიდან წაშლა"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/kk-cyrl.json b/MLEB/Translate/i18n/pagetranslation/kk-cyrl.json
index e5af23c8..d656ce60 100644
--- a/MLEB/Translate/i18n/pagetranslation/kk-cyrl.json
+++ b/MLEB/Translate/i18n/pagetranslation/kk-cyrl.json
@@ -4,5 +4,123 @@
"Arystanbek"
]
},
- "tpt-languages-nonzero": "$1 ($2% аударылды)"
+ "pagetranslation": "Бет аудармасы",
+ "right-pagetranslation": "Аударма үшін беттердің нұсқаларын белгілеу",
+ "action-pagetranslation": "аударуға келетін беттерді басқару",
+ "tpt-section": "$1 аударма бірлігі",
+ "tpt-section-new": "Жаңа аударма бірлігі.\nАтауы: $1",
+ "tpt-section-deleted": "$1 аударма бірлігі",
+ "tpt-diff-old": "Алдындағы мәтін",
+ "tpt-diff-new": "Жаңа мәтін",
+ "tpt-submit": "Аударма үшін бұл нұсқаны белгілеу",
+ "tpt-sections-oldnew": "Жаңа және бар аударма бірлігтері",
+ "tpt-sections-deleted": "Жойылған аударма бірліктері",
+ "tpt-sections-template": "Аударма бет үлгісі",
+ "tpt-badtitle": "Берілген бет атауы ($1) жарамды атау емес",
+ "tpt-nosuchpage": "$1 беті жоқ",
+ "tpt-mark-summary": "Аударма үшін бұл нұсқа белгіленді",
+ "tpt-mark-nochanges": "Мұнда соңғы белгіленген нұсқада жәнебұл нұсқа арасында айырмашылық жоқ.",
+ "tpt-edit-failed": "Келесі бет жаңартылмады: $1",
+ "tpt-already-marked": "Аударма үшін әлдеқашан бұл беттің ең соңғы нұсқасы белгіленген.",
+ "tpt-old-pages-title": "Аудару беті",
+ "tpt-other-pages-title": "Бүлінген беттер",
+ "tpt-discouraged-pages-title": "Қабылданбаған беттер",
+ "tpt-old-pages": "{{PLURAL:$1|Бұл беттің|Бұл беттердің}} кейбір нұсқалары аударылсын деп белгіленді.",
+ "tpt-other-pages": "{{PLURAL:$1|Бұл беттің ескі нұсқасы|Бұл беттердің ескі нұсқалары}} аударылсын деп белгіленді, бірақ ең соңғы {{PLURAL:$1|нұсқа|нұсқалар}} аударылсын деп белгіленбейді.",
+ "tpt-select-prioritylangs-reason": "Себебі:",
+ "tpt-sections-prioritylangs": "Басым тілдер",
+ "tpt-rev-mark": "аудару үшін белгілеу",
+ "tpt-rev-unmark": "Аудармадан аластату",
+ "tpt-rev-encourage": "қалпына келтіру",
+ "tpt-rev-mark-tooltip": "Аудару үшін бұл беттің ең соңғы нұсқасын белгілеу",
+ "tpt-rev-unmark-tooltip": "Аударудан бетті аластау",
+ "tpt-rev-encourage-tooltip": "Қалыпты аударуға бұл бетті қалыпына келтіру",
+ "translate-tag-translate-link-desc": "Бұл бетті аудару",
+ "translate-tag-markthis": "Аудару үшін бұл бетті белгілеу",
+ "translate-tag-hasnew": "Бұл бет <span class=\"plainlinks\">[$1 өзгерістен]</span> тұрады және аударуға белгіленбейді.",
+ "tpt-translation-intro": "Бұл бет [[$2]] бетінің <span class=\"plainlinks\">[$1 аударылған нұсқасы]</span> және аударманың $3% аяқталған.",
+ "tpt-languages-legend": "Басқа тілдер:",
+ "tpt-languages-zero": "Мына тілде аударманы бастау",
+ "tpt-languages-nonzero": "$1 ($2% аударылды)",
+ "tpt-tab-translate": "Аудару",
+ "tpt-discouraged-language-reason": "Себебі: $1",
+ "tpt-render-summary": "Қайнар беттің жаңа нұсқасына сәйкестігін жаңарту",
+ "tpt-aggregategroup-add": "Қосу",
+ "tpt-aggregategroup-save": "Сақтау",
+ "tpt-aggregategroup-add-new": "Жаңа агрегат топ қосу",
+ "tpt-aggregategroup-new-name": "Атауы:",
+ "tpt-aggregategroup-new-description": "Сипаттамасы (міндетті емес):",
+ "tpt-aggregategroup-remove-confirm": "Сіз шыныменде мына агрегат топты жоюды қалайсыз ба?",
+ "tpt-aggregategroup-invalid-group": "Топ жоқ",
+ "tpt-aggregategroup-edit-name": "Атауы:",
+ "tpt-aggregategroup-edit-description": "Сипаттамасы:",
+ "tpt-aggregategroup-update": "Сақтау",
+ "tpt-aggregategroup-update-cancel": "Болдырмау",
+ "tpt-invalid-group": "Жарамсыз топ",
+ "pt-parse-open": "Балансталмаған &lt;translate> тегі.\nАударма үлгісі: <pre>$1</pre>",
+ "pt-parse-close": "Балансталмаған &lt;/translate> тегі.\nАударма үлгісі: <pre>$1</pre>",
+ "log-description-pagetranslation": "Бет аудару жүйесіне қатысты әрекететр журналы",
+ "log-name-pagetranslation": "Бет аударма журналы",
+ "logentry-pagetranslation-mark": "$1 $3 бетін аудару үшін {{GENDER:$2|белгіледі}}",
+ "logentry-pagetranslation-unmark": "$1 $3 бетін аударудан {{GENDER:$2|аластады}}",
+ "logentry-pagetranslation-moveok": "Аударылатын $3 бетін $4 деп атауын өзгерту $1 {{GENDER:$2|аяқталды}}",
+ "logentry-pagetranslation-movenok": "$3 бетін $4 бетіне жылжыту барысында {{GENDER:$2|кездесті}}",
+ "logentry-pagetranslation-deletefok": "$3 аударылатын бетті жою $1 {{GENDER:$2|аяқталды}}",
+ "pt-movepage-list-pages": "Жылжытатын беттер тізімі",
+ "pt-movepage-list-translation": "Аударма {{PLURAL:$1|бет|беттер}}",
+ "pt-movepage-legend": "Менің аударуға келетін беттерім",
+ "pt-movepage-current": "Қазіргі атауы:",
+ "pt-movepage-new": "Жаңа атауы:",
+ "pt-movepage-reason": "Себебі:",
+ "pt-movepage-subpages": "Барлық бетшелерді жылжыту",
+ "pt-movepage-action-check": "Атауын өзгертуге болатынын тексеру",
+ "pt-movepage-action-perform": "Жылжытуды істеу",
+ "pt-movepage-action-other": "Нысанасын өзгерту",
+ "pt-movepage-logreason": "«$1» аударылатын бетінің бөлігі.",
+ "pt-deletepage-lang-title": "«$1» аударылатын бетін жойылуда.",
+ "pt-deletepage-full-title": "«$1» аударылатын бетін жойылуда.",
+ "pt-deletepage-invalid-title": "Көрсетілген бет жарамсыз.",
+ "pt-deletepage-action-check": "Жойылатын беттер тізімі",
+ "pt-deletepage-action-perform": "Жоюды орындау",
+ "pt-deletepage-action-other": "Нысанасын өзгерту",
+ "pt-deletepage-lang-legend": "Аударма бетті жою",
+ "pt-deletepage-full-legend": "Аударылатын бетті жою",
+ "pt-deletepage-any-legend": "Аударылатын бетті немесе аударма бетті жою",
+ "pt-deletepage-current": "Бет атауы:",
+ "pt-deletepage-reason": "Себебі:",
+ "pt-deletepage-subpages": "Барлық бетшелерін жою",
+ "pt-deletepage-list-pages": "Жойылатын беттер тізімі",
+ "pt-deletepage-list-translation": "Аударма беттер",
+ "pt-deletepage-list-section": "Аударма бірлік беттер",
+ "pt-deletepage-list-other": "Басқа бетшелер",
+ "pt-deletepage-list-count": "Барлығы $1 беттің {{PLURAL:$1|бетін|беттерін}} жою.",
+ "pt-deletepage-full-logreason": "«$1» аударылатын бетінің бөлігі.",
+ "pt-deletepage-lang-logreason": "«$1» аударылатын бетінің бөлігі.",
+ "pagemigration": "Аударма бет миграциясы",
+ "pm-import-button-label": "Импорттау",
+ "pm-savepages-button-label": "Сақтау",
+ "pm-cancel-button-label": "Болдырмау",
+ "pm-page-does-not-exist": "$1 беті жоқ.",
+ "pm-old-translations-missing": "$1 ескі аудармаларды қамтымайды.",
+ "pm-pagename-missing": "Бет атауын енгізіңіз:",
+ "pm-add-icon-hover-text": "Төмендегі бірлігті қосыңыз",
+ "pm-swap-icon-hover-text": "Төмендегі бірлікті ауыстырыңыз",
+ "pm-delete-icon-hover-text": "Бірлікті жою",
+ "pm-pagetitle-invalid": "Жарамды бет атауын енгізіңіз",
+ "pm-langcode-missing": "Тід кодын енгізіңіз.",
+ "pm-summary-import": "[[Special:PageMigration|Бет миграциясы]] арнайы бетін қолданып аударма импортталды",
+ "tpt-translate-title": "Бет атауын аударуға рұқсат ету",
+ "pp-save-summary": "Аудару үшін бет дайындалды",
+ "pagepreparation": "Аудару үшін бет дайындалды",
+ "pp-pagename-placeholder": "Бет атауын енгізу",
+ "pp-prepare-button-label": "Дайындау",
+ "pp-save-button-label": "Сақтау",
+ "pp-cancel-button-label": "Қажет емес",
+ "pp-save-message": "Бет сақталды. Сіз оны [$1 өңдей] аласыз.",
+ "pp-prepare-message": "Бет аударуға дайындалды. Төменнен айырмашылығын көріңіз. Егер бәрі дұрыс болса «{{int:pp-save-button-label}}» батырмасын басыңыз.",
+ "pp-pagename-missing": "Бет атауын енгізіңіз.",
+ "pp-diff-old-header": "Қайнар мәтіні",
+ "pp-diff-new-header": "Дайындалған мәтін",
+ "tpt-unlink-button": "Аудармадан аластату",
+ "tpt-unlink-summary": "Аударудан бетті аластау"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/km.json b/MLEB/Translate/i18n/pagetranslation/km.json
index 01a97a17..5f93a3cd 100644
--- a/MLEB/Translate/i18n/pagetranslation/km.json
+++ b/MLEB/Translate/i18n/pagetranslation/km.json
@@ -9,8 +9,6 @@
"tpt-section": "ឯកតាបកប្រែ $1",
"tpt-section-new": "ឯកតាបកប្រែថ្មី។\nឈ្មោះ៖ $1",
"tpt-section-deleted": "ឯកតាបកប្រែ $1",
- "tpt-template": "គំរូទំព័រ",
- "tpt-templatediff": "គំរូ​ទំព័រ​បានផ្លាស់ប្តូរ​។",
"tpt-diff-old": "អត្ថបទ​​ពីមុន​",
"tpt-diff-new": "អត្ថបទ​ថ្មី​",
"tpt-submit": "សម្គាល់​កំណែ​នេះ​សម្រាប់​ការបកប្រែ​",
@@ -23,5 +21,8 @@
"tpt-already-marked": "កំណែ​ចុងក្រោយ​នៃទំព័រ​នេះ​ត្រូវបាន​សម្គាល់​ទុកសម្រាប់​បកប្រែ​។",
"translate-tag-translate-link-desc": "បកប្រែទំព័រនេះ",
"translate-tag-markthis": "សម្គាល់​ទំព័រ​​នេះ​សម្រាប់​ការបកប្រែ​",
- "tpt-languages-legend": "ជាភាសាដទៃទៀត៖"
+ "tpt-languages-legend": "ជាភាសាដទៃទៀត៖",
+ "tpt-languages-nonzero": "$1 ($2% បកប្រែរួច)",
+ "tpt-tab-translate": "បកប្រែ",
+ "pm-langcode-missing": "សូមវាយបញ្ចូលកូដភាសា។"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/kn.json b/MLEB/Translate/i18n/pagetranslation/kn.json
index 5746485b..06388807 100644
--- a/MLEB/Translate/i18n/pagetranslation/kn.json
+++ b/MLEB/Translate/i18n/pagetranslation/kn.json
@@ -3,31 +3,31 @@
"authors": [
"Nayvik",
"VASANTH S.N.",
- "Omshivaprakash"
+ "Omshivaprakash",
+ "Rakshika"
]
},
- "pagetranslation": "ಪುಟ ಭಾಷಾಂತರ",
- "tpt-template": "ಪುಟ ಸಿದ್ಧವಿನ್ಯಾಸ",
+ "pagetranslation": "ಪುಟ ಅನುವಾದ",
"tpt-diff-old": "ಹಿಂದಿನ ಪಠ್ಯ",
"tpt-diff-new": "ಹೊಸ ಪಠ್ಯ",
- "tpt-old-pages-title": "ಭಾಷಾಂತರದಲ್ಲಿರುವ ಪುಟಗಳು",
+ "tpt-old-pages-title": "ಭಾಷಾಂತರದ ಪುಟಗಳು",
"tpt-select-prioritylangs-reason": "ಕಾರಣ:",
- "tpt-rev-mark": "ಭಾಷಾಂತರಕ್ಕೆ ಗುರುತುಮಾಡಿ",
- "tpt-rev-unmark": "ಭಾಷಾಂತರದಿಂದ ತೆಗೆದುಹಾಕಿ",
- "tpt-rev-encourage": "ಹಿಂದೆ ಇದ್ದಂತೆ ಮಾಡು",
- "translate-tag-translate-link-desc": "ಈ ಪುಟವನ್ನು ಅನುವಾದಿಸಿ",
- "translate-tag-markthis": "ಭಾಷಾಂತರಕ್ಕೆ ಈ ಪುಟವನ್ನು ಗುರುತುಮಾಡಿ",
+ "tpt-rev-mark": "ಅನುವಾದಕ್ಕಾಗಿ ಗುರುತಿಸಿ",
+ "tpt-rev-unmark": "ಅನುವಾದದಿಂದ ತೆಗೆದುಹಾಕಿ",
+ "tpt-rev-encourage": "ಪುನಃಸ್ಥಾಪಿಸಿ",
+ "translate-tag-translate-link-desc": "ಈ ಪುಟವನ್ನು ಭಾಷಾಂತರಿಸಿ",
+ "translate-tag-markthis": "ಅನುವಾದಕ್ಕಾಗಿ ಈ ಪುಟವನ್ನು ಗುರುತಿಸಿ",
"tpt-languages-legend": "ಇತರ ಭಾಷೆಗಳು:",
- "tpt-languages-nonzero": "$1 ($2% ಅನುವಾದಗೊಂಡಿದೆ)",
- "tpt-tab-translate": "ಭಾಷಾಂತರಿಸಿ",
+ "tpt-languages-nonzero": "$1 ($2% ಅನುವಾದಿಸಲಾಗಿದೆ)",
+ "tpt-tab-translate": "ಭಾಷಾಂತರಿಸಲು",
"tpt-discouraged-language-reason": "ಕಾರಣ: $1",
- "tpt-aggregategroup-add": "ಸೇರಿಸು",
+ "tpt-aggregategroup-add": "ಸೇರಿಸಿ",
"tpt-aggregategroup-save": "ಉಳಿಸಿ",
"tpt-aggregategroup-new-name": "ಹೆಸರು:",
- "pt-movepage-current": "ಪ್ರಸ್ತುತ ಹೆಸರು:",
- "pt-movepage-new": "ಹೊಸ ಹಸರು:",
+ "pt-movepage-current": "ಪ್ರಸಕ್ತ ಹೆಸರು:",
+ "pt-movepage-new": "ಹೊಸ ಹೆಸರು:",
"pt-movepage-reason": "ಕಾರಣ:",
"pt-deletepage-current": "ಪುಟದ ಹೆಸರು:",
- "pt-deletepage-reason": "ಕಾರಣ:",
+ "pt-deletepage-reason": "ಕಾರಣ :",
"pt-deletepage-list-translation": "ಭಾಷಾಂತರ ಪುಟಗಳು"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/ko.json b/MLEB/Translate/i18n/pagetranslation/ko.json
index 84e2f552..0d9d0453 100644
--- a/MLEB/Translate/i18n/pagetranslation/ko.json
+++ b/MLEB/Translate/i18n/pagetranslation/ko.json
@@ -7,22 +7,22 @@
"Priviet",
"Hym411",
"Tyey",
- "Revi"
+ "Revi",
+ "Hwangjy9",
+ "Ykhwong",
+ "Jerrykim306"
]
},
"pagetranslation": "문서 번역",
- "right-pagetranslation": "번역에 대한 문서의 판 표시",
+ "right-pagetranslation": "문서의 판을 번역하도록 표시",
"action-pagetranslation": "번역 가능한 문서 관리",
- "tpt-desc": "내용 문서를 번역하기 위한 확장 기능",
"tpt-section": "번역 단위 $1",
"tpt-section-new": "새 번역 단위입니다.\n이름: $1",
"tpt-section-deleted": "번역 단위 $1",
- "tpt-template": "문서 틀",
- "tpt-templatediff": "문서 틀이 바뀌었습니다.",
"tpt-diff-old": "이전 텍스트",
"tpt-diff-new": "새 텍스트",
"tpt-submit": "이 판을 번역하도록 표시",
- "tpt-sections-oldnew": "새로 및 기존 번역 단위",
+ "tpt-sections-oldnew": "신규 및 기존 번역 단위",
"tpt-sections-deleted": "삭제된 번역 단위",
"tpt-sections-template": "번역 문서 틀",
"tpt-action-nofuzzy": "번역을 무효화하지 마세요",
@@ -32,8 +32,7 @@
"tpt-notsuitable": "$1 문서는 번역에 적합하지 않습니다.\n<nowiki><translate></nowiki> 태그가 있고 올바른 문법인지 확인하세요.",
"tpt-saveok": "[[:$1]] 문서는 $2 {{PLURAL:$2|번역 단위}}로 번역에 대해 표시했습니다.\n문서는 지금 <span class=\"plainlinks\">[$3 번역]</span>할 수 있습니다.",
"tpt-offer-notify": "이 문서에 대해 <span class=\"plainlinks\">[$1 번역자 알림]</span>을 받을 수 있습니다.",
- "tpt-badsect": "\"$1\"(은)는 $2 번역 유닉에 대해 올바른 이름이 아닙니다.",
- "tpt-showpage-intro": "다음은 새로와 기존, 삭제된 번역 단위가 나열되어 있습니다.\n번역에 대한 이 판을 표시하기 전에 번역 단위에 대한 바뀜이 번역에 대한 불필요한 작업을 피하기 위해 최소화되어 있는지 확인하세요.",
+ "tpt-showpage-intro": "아래에 기존, 추가 및 삭제된 번역 단위가 나열되어 있습니다.\n\n이 판을 번역하도록 표시하기 전에, 번역자가 불필요한 작업을 하지 않도록 번역 단위에 대한 바뀜이 최소화되어 있는지 확인하세요.",
"tpt-mark-summary": "번역에 대해 이 버전 표시함",
"tpt-edit-failed": "문서를 업데이트를 할 수 없습니다: $1",
"tpt-duplicate": "$1 번역 단위 이름은 한 번 이상 사용합니다.",
@@ -59,33 +58,41 @@
"tpt-rev-mark-tooltip": "번역에 대한 이 문서의 최신 판을 표시합니다.",
"tpt-rev-unmark-tooltip": "번역에서 이 문서를 제거합니다.",
"tpt-rev-discourage-tooltip": "이 문서에 대한 추가적인 번역을 중단합니다.",
- "tpt-rev-encourage-tooltip": "이 문서를 정상적인 번역으로 복원합니다.",
+ "tpt-rev-encourage-tooltip": "이 문서를 정상적인 번역으로 복구합니다.",
"translate-tag-translate-link-desc": "이 문서 번역하기",
"translate-tag-markthis": "이 문서를 번역 대상으로 표시",
"translate-tag-markthisagain": "이 문서에는 최근 <span class=\"plainlinks\">[$2 번역 대상으로 표시]</span>한 이후 <span class=\"plainlinks\">[$1 바뀜]</span>이 있습니다.",
"translate-tag-hasnew": "이 문서는 번역 대상으로 표시하지 않은 <span class=\"plainlinks\">[$1 바뀜]</span>을 포함합니다.",
"tpt-translation-intro": "이 문서는 [[$2]] 문서를 <span class=\"plainlinks\">[$1 번역한 것]</span>이며 번역은 $3% 완료했습니다.",
+ "tpt-translation-intro-fuzzy": "오래된 번역은 이렇게 표시됩니다.",
"tpt-languages-legend": "다른 언어:",
"tpt-languages-zero": "이 언어에 대한 번역 시작",
"tpt-languages-nonzero": "$1 ($2% 번역함)",
"tpt-tab-translate": "번역하기",
"tpt-target-page": "이 문서를 수동으로 업데이트할 수 없습니다.\n이 문서는 [[$1]]의 번역이며 번역은 [$2 번역 도구]를 사용하여 업데이트할 수 있습니다.",
+ "tpt-patrolling-blocked": "이 문서를 점검할 수 없습니다. 대신, 번역 동작을 검토하기로 사용하세요.",
"tpt-unknown-page": "이 이름공간은 내용 문서 번역에 대해 예약되어 있습니다.\n편집하려고 하는 문서는 번역에 대해 표시한 모든 문서와 일치하지 않는 것 같습니다.",
"tpt-translation-restricted": "이 언어로의 이 문서의 번역은 번역 관리자에 의해 차단되었습니다.\n\n이유: $1",
- "tpt-discouraged-language-force": "<strong>이 문서는 $2(으)로 번역할 수 없습니다.</strong>\n\n번역 관리자는 이 문서가 $3(으)로 번역할 수 있도록 결정했습니다.",
+ "tpt-discouraged-language-force-header": "이 문서는 $1로 번역할 수 없습니다.",
+ "tpt-discouraged-language-force-content": "번역 관리자가 이 글을 $1로만 번역이 가능하도록 결정하였습니다.",
+ "tpt-discouraged-language-force": "<strong>이 문서는 $2로 번역할 수 없습니다.</strong>\n\n번역 관리자는 이 문서가 $3로 번역할 수 있도록 결정했습니다.",
"tpt-discouraged-language": "<strong>$2로 번역하는 것은 이 문서에 대해 우선 순위가 아닙니다.</strong>\n\n번역 관리자는 $3에 번역 노력을 집중하기로 결정합니다.",
"tpt-discouraged-language-reason": "이유: $1",
"tpt-priority-languages": "번역 관리자는 $1(으)로 이 그룹에 대해 우선 언어를 설정합니다.",
"tpt-render-summary": "원본 문서의 새 판에 맞게 업데이트",
- "tpt-download-page": "번역 문서 내보내기",
"aggregategroups": "집계 그룹",
"tpt-aggregategroup-add": "추가",
"tpt-aggregategroup-save": "저장",
"tpt-aggregategroup-add-new": "새 집계 그룹 추가",
"tpt-aggregategroup-new-name": "이름:",
"tpt-aggregategroup-new-description": "설명 (선택):",
- "tpt-aggregategroup-remove-confirm": "이 총 그룹을 삭제하겠습니까?",
+ "tpt-aggregategroup-remove-confirm": "이 집계 그룹을 정말 삭제하겠습니까?",
"tpt-aggregategroup-invalid-group": "그룹이 존재하지 않습니다",
+ "tpt-aggregategroup-edit-name": "이름:",
+ "tpt-aggregategroup-edit-description": "설명:",
+ "tpt-aggregategroup-update": "저장",
+ "tpt-aggregategroup-update-cancel": "취소",
+ "tpt-invalid-group": "잘못된 그룹",
"pt-parse-open": "불균형한 &lt;translate> 태그입니다.\n번역 틀: <pre>$1</pre>",
"pt-parse-close": "불균형한 &lt;/translate> 태그입니다.\n번역 틀: <pre>$1</pre>",
"pt-parse-nested": "중첩한 &lt;translate> 번역 단위는 허용하지 않습니다.\n태그 텍스트: <pre>$1</pre>",
@@ -94,50 +101,54 @@
"pt-shake-empty": "\"$1\" 표시에 대한 빈 번역 단위입니다.",
"log-description-pagetranslation": "문서 번역 시스템에 관련된 작업에 대한 기록",
"log-name-pagetranslation": "문서 번역 기록",
- "logentry-pagetranslation-mark": "$1 사용자가 번역으로 $3(을)를 {{GENDER:$2|표시했습니다}}",
- "logentry-pagetranslation-unmark": "$1 사용자가 번역에서 $3(을)를 {{GENDER:$2|제거했습니다}}",
- "logentry-pagetranslation-moveok": "$1 사용자가 $3 번역 가능한 문서를 $4 문서로 이름 바꾸기를 {{GENDER:$2|완료했습니다}}",
- "logentry-pagetranslation-movenok": "$1 사용자가 $3 문서를 $4 문서로 옮기는 동안 문제가 {{GENDER:$2|발생했습니다}}",
- "logentry-pagetranslation-deletefok": "$1 사용자가 $3 번역 가능한 문서의 삭제를 {{GENDER:$2|완료했습니다}}",
- "logentry-pagetranslation-deletefnok": "$1 사용자가 $4 번역 가능한 문서에 속한 $3 문서를 삭제하는 데 {{GENDER:$2|실패했습니다}}",
- "logentry-pagetranslation-deletelok": "$1 사용자가 $3 번역 문서의 삭제를 {{GENDER:$2|완료했습니다}}",
- "logentry-pagetranslation-deletelnok": "$1 사용자가 $4 번역 문서에 속한 $3 문서를 삭제하는 데 {{GENDER:$2|실패했습니다}}",
- "logentry-pagetranslation-encourage": "$1 사용자가 $3의 번역을 {{GENDER:$2|되살렸습니다}}",
- "logentry-pagetranslation-discourage": "$1 사용자가 $3의 번역을 {{GENDER:$2|중단했습니다}}",
- "logentry-pagetranslation-prioritylanguages-unset": "$1 사용자가 $3 번역 가능한 문서에서 우선 언어를 {{GENDER:$2|제거했습니다}}",
- "logentry-pagetranslation-prioritylanguages": "$1 사용자가 $3 번역 가능한 문서에 대한 우선 언어를 $5로 {{GENDER:$2|설정했습니다}}",
- "logentry-pagetranslation-prioritylanguages-force": "$1 사용자가 $3 번역 가능한 문서에 대한 언어를 $5로 {{GENDER:$2|제한했습니다}}",
- "logentry-pagetranslation-associate": "$1 사용자가 $3 번역 가능한 문서를 $4 집계 그룹에 {{GENDER:$2|추가했습니다}}",
- "logentry-pagetranslation-dissociate": "$1 사용자가 $3 번역 가능한 문서를 $4 집계 그룹에서 {{GENDER:$2|제거했습니다}}",
- "pt-movepage-title": "\"$1\" 번역 가능한 문서 옮기기",
- "pt-movepage-blockers": "번역 가능한 문서는 다음 {{PLURAL:$1|오류}} 때문에 새 이름으로 옮길 수 없습니다:",
+ "logentry-pagetranslation-mark": "$1님이 $3을(를) 번역으로 {{GENDER:$2|표시했습니다}}",
+ "logentry-pagetranslation-unmark": "$1님이 번역 시스템에서 $3을(를) {{GENDER:$2|제거했습니다}}",
+ "logentry-pagetranslation-moveok": "$1님이 $3 번역 가능한 문서를 $4 문서로 이름 바꾸기를 {{GENDER:$2|완료했습니다}}",
+ "logentry-pagetranslation-movenok": "$1님이 $3 문서를 $4 문서로 이동하는 동안 문제가 {{GENDER:$2|발생했습니다}}",
+ "logentry-pagetranslation-deletefok": "$1님이 $3 번역 가능한 문서의 삭제를 {{GENDER:$2|완료했습니다}}",
+ "logentry-pagetranslation-deletefnok": "$1님이 $4 번역 가능한 문서에 속한 $3 문서를 삭제하는 데 {{GENDER:$2|실패했습니다}}",
+ "logentry-pagetranslation-deletelok": "$1님이 $3 번역 문서의 삭제를 {{GENDER:$2|완료했습니다}}",
+ "logentry-pagetranslation-deletelnok": "$1님이 $4 번역 문서에 속한 $3 문서를 삭제하는 데 {{GENDER:$2|실패했습니다}}",
+ "logentry-pagetranslation-encourage": "$1님이 $3의 번역을 {{GENDER:$2|되살렸습니다}}",
+ "logentry-pagetranslation-discourage": "$1님이 $3의 번역을 {{GENDER:$2|중단했습니다}}",
+ "logentry-pagetranslation-prioritylanguages-unset": "$1님이 $3 번역 가능한 문서에서 우선 언어를 {{GENDER:$2|제거했습니다}}",
+ "logentry-pagetranslation-prioritylanguages": "$1님이 $3 번역 가능한 문서에 대한 우선 언어를 $5로 {{GENDER:$2|설정했습니다}}",
+ "logentry-pagetranslation-prioritylanguages-force": "$1님이 $3 번역 가능한 문서에 대한 언어를 $5로 {{GENDER:$2|제한했습니다}}",
+ "logentry-pagetranslation-associate": "$1님이 $3 번역 가능한 문서를 $4 집계 그룹에 {{GENDER:$2|추가했습니다}}",
+ "logentry-pagetranslation-dissociate": "$1님이 $3 번역 가능한 문서를 $4 집계 그룹에서 {{GENDER:$2|제거했습니다}}",
+ "log-action-filter-pagetranslation-mark": "번역한 것으로 표시",
+ "log-action-filter-pagetranslation-unmark": "번역에서 제거",
+ "log-action-filter-pagetranslation-move": "문서 이동",
+ "log-action-filter-pagetranslation-delete": "문서 삭제",
+ "pt-movepage-title": "\"$1\" 번역 가능한 문서 이동",
+ "pt-movepage-blockers": "번역 가능한 문서는 다음 {{PLURAL:$1|오류}} 때문에 새 이름으로 이동할 수 없습니다:",
"pt-movepage-block-base-exists": "\"[[:$1]]\" 대상 번역 가능한 문서가 존재합니다.",
"pt-movepage-block-base-invalid": "대상 번역 가능한 문서 이름은 올바른 제목이 아닙니다.",
"pt-movepage-block-tp-exists": "\"[[:$2]]\" 대상 번역 문서가 존재합니다.",
- "pt-movepage-block-tp-invalid": "\"[[:$1]]\"에 대한 대상 번역 문서 제목은 올바르지 않습니다. (너무 길어요?)",
+ "pt-movepage-block-tp-invalid": "\"[[:$1]]\"에 대한 대상 번역 문서 제목이 올바르지 않습니다. (너무 깁니까?)",
"pt-movepage-block-section-exists": "번역 단위에 대한 \"[[:$2]]\" 대상 문서가 존재합니다.",
- "pt-movepage-block-section-invalid": "번역 단위에 대한 \"[[:$1]]\"에 대한 대상 부분 문서 제목은 올바르지 않습니다. (너무 길어요?)",
+ "pt-movepage-block-section-invalid": "번역 단위에 대한 \"[[:$1]]\"의 대상 문서 제목이 올바르지 않습니다. (너무 깁니까?)",
"pt-movepage-block-subpage-exists": "\"[[:$2]]\" 대상 하위 문서가 존재합니다.",
- "pt-movepage-block-subpage-invalid": "\"[[:$1]]\"에 대한 대상 하위 문서 제목은 올바르지 않습니다. (너무 길어요?)",
+ "pt-movepage-block-subpage-invalid": "\"[[:$1]]\"에 대한 대상 하위 문서 제목이 올바르지 않습니다. (너무 깁니까?)",
"pt-movepage-list-pages": "이동할 문서 목록",
"pt-movepage-list-translation": "번역 {{PLURAL:$1|문서}}",
"pt-movepage-list-section": "번역 단위 {{PLURAL:$1|문서}}",
"pt-movepage-list-other": "다른 하위 {{PLURAL:$1|문서}}",
"pt-movepage-list-count": "이동할 {{PLURAL:$1|문서}} 총 $1개입니다.",
- "pt-movepage-legend": "번역 가능한 문서 옮기기",
+ "pt-movepage-legend": "번역 가능한 문서 이동",
"pt-movepage-current": "현재 이름:",
"pt-movepage-new": "새 이름:",
"pt-movepage-reason": "이유:",
- "pt-movepage-subpages": "모든 하위 문서 옮기기",
- "pt-movepage-action-check": "옮길 수 있는지 확인",
+ "pt-movepage-subpages": "모든 하위 문서 이동",
+ "pt-movepage-action-check": "이동할 수 있는지 확인",
"pt-movepage-action-perform": "이동하기",
"pt-movepage-action-other": "대상 바꾸기",
"pt-movepage-intro": "이 특수 문서는 번역에 대해 표시한 문서를 이동할 수 있습니다.\n많은 문서가 이동해야 하기 때문에 즉시 이동 작업이 되지 않습니다.\n문서를 이동하는 동안 질문의 문서와 상호 작용하는 것은 불가능합니다.\n실패하면 [[Special:Log/pagetranslation|문서 번역 기록]]에 기록되고 직접 복구할 필요가 있습니다.",
- "pt-movepage-logreason": "\"$1\" 번역 가능한 문서의 부분입니다.",
- "pt-movepage-started": "기본 페이지가 지금 옮겨졌습니다.\n오류에 대해 [[Special:Log/pagetranslation|문서 번역 기록]]을 확인하고 메시지를 완료하세요.",
+ "pt-movepage-logreason": "\"$1\" 번역 가능한 문서의 부분입니다",
+ "pt-movepage-started": "잠시 후 [[Special:Log/pagetranslation|문서 번역 기록]]에서 오류 및 완료 메시지를 확인해 주십시오.",
"pt-locked-page": "이 문서는 번역 가능한 문서가 현재 이동하고 있기 때문에 잠겨 있습니다.",
- "pt-deletepage-lang-title": "\"$1\" 번역 문서를 삭제하고 있습니다.",
- "pt-deletepage-full-title": "\"$1\" 번역 가능한 문서를 삭제하고 있습니다.",
+ "pt-deletepage-lang-title": "\"$1\" 번역 문서를 삭제 중",
+ "pt-deletepage-full-title": "\"$1\" 번역 가능한 문서를 삭제 중",
"pt-deletepage-invalid-title": "지정한 문서가 올바르지 않습니다.",
"pt-deletepage-invalid-text": "지정한 문서는 번역 가능한 문서도 번역 문서도 아닙니다.",
"pt-deletepage-action-check": "삭제될 문서 목록",
@@ -154,11 +165,31 @@
"pt-deletepage-list-section": "번역 단위 문서",
"pt-deletepage-list-other": "다른 하위 문서",
"pt-deletepage-list-count": "삭제할 {{PLURAL:$1|문서}} 총 $1개입니다.",
- "pt-deletepage-full-logreason": "\"$1\" 번역 가능한 문서의 부분입니다.",
- "pt-deletepage-lang-logreason": "\"$1\" 번역 문서의 부분입니다.",
- "pt-deletepage-started": "오류와 메시지 완료를 위한 [[Special:Log/pagetranslation|문서 번역 기록]]를 확인하세요.",
+ "pt-deletepage-full-logreason": "\"$1\" 번역 가능한 문서의 부분입니다",
+ "pt-deletepage-lang-logreason": "\"$1\" 번역 문서의 부분입니다",
+ "pt-deletepage-started": "[[Special:Log/pagetranslation|문서 번역 기록]]에서 오류 및 완료 메시지를 확인해 주십시오.",
"pt-deletepage-intro": "이 특수 문서는 전체 번역 가능한 문서 또는 언어의 개별 번역 문서를 삭제할 수 있습니다.\n번역에 따라 모든 문서가 삭제되기 때문에 즉시 삭제 작업이 되지 않습니다.\n실패하면 [[Special:Log/pagetranslation|문서 번역 기록]]에 기록되고 직접 복구해야 합니다.",
- "pagemigration": "번역 문서 이주",
+ "pagemigration": "번역 문서 병합",
+ "pm-import-button-label": "가져오기",
+ "pm-savepages-button-label": "저장",
+ "pm-cancel-button-label": "취소",
+ "pm-page-does-not-exist": "$1 문서가 존재하지 않습니다.",
+ "pm-old-translations-missing": "$1 문서는 오래된 번역을 포함하지 않습니다.",
"pm-pagename-missing": "문서 이름을 입력하세요",
- "pm-add-icon-hover-text": "아래에 단위 추가"
+ "pm-add-icon-hover-text": "아래에 단위 추가",
+ "pm-swap-icon-hover-text": "아래 단위로 교체",
+ "pm-delete-icon-hover-text": "단위 삭제",
+ "pm-pagetitle-invalid": "올바른 문서 제목을 입력하세요. <page-name>/<language-code> 형식이어야 합니다.",
+ "pm-langcode-missing": "언어 코드가 제목에 없는 것 같습니다. <page-name>/<language-code> 형식으로 문서 제목을 입력해 주십시오.",
+ "tpt-translate-title": "문서 제목을 번역할 수 있음",
+ "pagepreparation": "문서를 번역할 수 있게 준비",
+ "pp-pagename-placeholder": "문서 이름을 입력하세요",
+ "pp-prepare-button-label": "준비",
+ "pp-save-button-label": "저장",
+ "pp-cancel-button-label": "취소",
+ "pp-save-message": "문서가 저장되었습니다. 그것을 [$1 편집]할 수 있습니다.",
+ "pp-pagename-missing": "문서 이름을 입력하세요.",
+ "pp-diff-old-header": "원래 텍스트",
+ "tpt-unlink-button": "번역에서 제거",
+ "tpt-unlink-summary": "번역에서 문서 제거"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/krc.json b/MLEB/Translate/i18n/pagetranslation/krc.json
index 72f3f37d..cad0b751 100644
--- a/MLEB/Translate/i18n/pagetranslation/krc.json
+++ b/MLEB/Translate/i18n/pagetranslation/krc.json
@@ -1,7 +1,8 @@
{
"@metadata": {
"authors": [
- "Iltever"
+ "Iltever",
+ "Ernác"
]
},
"tpt-languages-nonzero": "$1 ($2% кёчюрюлгенди)"
diff --git a/MLEB/Translate/i18n/pagetranslation/ksh.json b/MLEB/Translate/i18n/pagetranslation/ksh.json
index 81d33ca2..9fdfc4ce 100644
--- a/MLEB/Translate/i18n/pagetranslation/ksh.json
+++ b/MLEB/Translate/i18n/pagetranslation/ksh.json
@@ -7,12 +7,9 @@
"pagetranslation": "Sigge Övversäze",
"right-pagetranslation": "Donn Versione vun Sigge för et Övversäze makeere",
"action-pagetranslation": "övversäzbaa Sigge ze verwallde",
- "tpt-desc": "Projrammzohsatz för Sigge vum Enhalt vum Wiki ze övversäze.",
"tpt-section": "Knubbel $1 för ze Övversäze",
"tpt-section-new": "Ene neue Knubbel för ze Övversäze: $1",
"tpt-section-deleted": "Knubbel $1 för ze Övversäze",
- "tpt-template": "Siggeschabloon",
- "tpt-templatediff": "De Siggeschabloon hät sesch jeändert.",
"tpt-diff-old": "Dä vörrijje Täx",
"tpt-diff-new": "Dä neue Täx",
"tpt-submit": "Donn hee di Version för et Övversäze makeere",
@@ -20,29 +17,28 @@
"tpt-sections-deleted": "Fottjeschmeße Knubbelle för et Övversäze",
"tpt-sections-template": "Övversäzungßsiggschabloon",
"tpt-action-nofuzzy": "Donn de Övversäzunge nit als övverhollt makeere",
- "tpt-badtitle": "Dä Name „$1“ es keine jöltijje Tittel för en Sigg",
+ "tpt-badtitle": "Dä Nahme „$1“ es kein jöltejje Övverschreff för en Sigg",
"tpt-nosuchpage": "De Sigg „$1“ jidd_et nit.",
"tpt-oldrevision": "„$2“ es nit de neuste Version fun dä Sigg „[[:$1]]“, ävver bloß de neuste kam_mer för et Övversäze makeere.",
"tpt-notsuitable": "Di Sigg „$1“ paß nit för et Övversäze. Maach <code><nowiki><translate></nowiki></code>-Makeerunge erin, un looer dat de Süntax shtemmp.",
"tpt-saveok": "De Sigg „$1“ es för ze Övversäze makeet. Doh dren {{PLURAL:$2|es eine Knubbel|sinn_er $2 Knubbelle|es ävver keine Knubbel}} för ze Övversäze. Di Sigg kam_mer <span class=\"plainlinks\">[$3 jäz övversäze]</span>.",
"tpt-offer-notify": "Do kanns de Översäzere <span class=\"plainlinks\">[$1 övver heh di Sigg bescheidsaare]</span>.",
- "tpt-badsect": "„$1“ es kein jöltejje Name för dä Knubbel zom Övversäze $2.",
"tpt-showpage-intro": "Hee dronger sen Övversäzongsaffschnedde opjeleß, di eruß jenumme woode, di neu sin, un di noch doh sin. Ih dat De hee di Version för ze Övversäze makeere deihß, loor drop, dat esu winnisch wi müjjelesch Änderonge aan Övversäzongsaffschnedde doh sin, öm dä Övversäzere et Levve leisch ze maache.",
"tpt-mark-summary": "Han di Version för ze Övversäze makeet",
- "tpt-mark-nochanges": "Mer han keine Ongerscheid zwesche heh dä Väsjohn un dä läzde makerte Väsjohn",
+ "tpt-mark-nochanges": "Et jitt kein Ongerscheide för nohzelohre. Wam_mer heh di Sigg för et Övversäze freijitt, deihjt dat di Sigg nit änndere un och keins vun de translation units, di ald doh sin.",
"tpt-edit-failed": "Kunnt de Sigg „$1“ nit ändere",
- "tpt-duplicate": "Dä Name „$1“ för ene Knubbel kütt mieh wi eijmohl vör.",
+ "tpt-duplicate": "Dä Nahme „$1“ för ene Knubbel kütt mih wi eijmohl vör.",
"tpt-already-marked": "De neuste Version vun dä Sigg es ald för zem Övversäze makeet.",
"tpt-unmarked": "De Sigg „$1“ es nit ieh för ze övversäze makeet.",
"tpt-list-nopages": "Et sinn_er kein Sigge för zem Övversäze makeet, un et sin och kein doh, wo esu en Makeerunge eren künnte.",
"tpt-new-pages-title": "Sigge vörjeschonn för et Övversäze",
"tpt-old-pages-title": "Sigge zom Övversäze",
"tpt-other-pages-title": "Kapodde Sigge",
- "tpt-discouraged-pages-title": "Sigge för nit mieh ze övversäze",
+ "tpt-discouraged-pages-title": "Sigge för nit mih ze övversäze",
"tpt-new-pages": "{{PLURAL:$1|Di Sigg hät|Di Sigge han|Kein Sigg hät}} ene <code lang=\"en\">translation</code>-Befähl en sesch, ävve kei Version dofun es för ze Övversäze makeet.",
"tpt-old-pages": "En Version vun hee dä {{PLURAL:$1|Sigg|Sigge|-}} es för zem Övversäze makeet.",
"tpt-other-pages": "{{PLURAL:$1|En ällder Version vun heh dä Sigg es|$1 ällder Versione vun heh dä Sigg sin}} för et Övversäze frei jejovve, ävver de neuste Version löht sesh nit frei jävve.",
- "tpt-discouraged-pages": "{{PLURAL:$1|Di Sigg sullt|Di Sigge sullte|Kein Sigg sullt}} nit mieh övversaz wääde.",
+ "tpt-discouraged-pages": "{{PLURAL:$1|Di Sigg sullt|Di Sigge sullte|Kein Sigg sullt}} nit mih övversaz wähde.",
"tpt-select-prioritylangs": "De Leß met de Köözelle för de vörjetrocke Schprohche, met Kommas dozwesche:",
"tpt-select-prioritylangs-force": "Bloß noh de vörjetrocke Schprohche Övversäzze",
"tpt-select-prioritylangs-reason": "Jrond:",
@@ -53,19 +49,20 @@
"tpt-rev-encourage": "wider zerök holle",
"tpt-rev-mark-tooltip": "Donn de neuste Version vun dä Sigg för et Övversäzze freijävve",
"tpt-rev-unmark-tooltip": "Donn di Sigg vum Övversäzze ußschleeße.",
- "tpt-rev-discourage-tooltip": "Di Sigg sullt nit mieh wigger övversaz wääde. Donn dat faßhallde.",
+ "tpt-rev-discourage-tooltip": "Di Sigg sullt nit mih wigger övversaz wääde. Donn dat faßhallde.",
"tpt-rev-encourage-tooltip": "Donn di Sigg wider wi jewöhmliesch för et Övversäze frei jävve.",
"translate-tag-translate-link-desc": "Don di Sigg hee övversäze",
"translate-tag-markthis": "Donn heh di Sigg för et Övversäze makeere",
"translate-tag-markthisagain": "Hee di Sigg es <span class=\"plainlinks\">[$1 jeändert woode]</span> zick se et läz <span class=\"plainlinks\">[$2 för ze Övversäze]</span> makeet woode es.",
"translate-tag-hasnew": "Hee di Sigg <span class=\"plainlinks\">[$1 es jeändert woode]</span>, es ävver nit för ze Övversäze makeet woode.",
"tpt-translation-intro": "Hee di Sigg es en <span class=\"plainlinks\">[$1 övversaz Version]</span> vun dä Sigg „[[$2]]“ un es zoh $3% jedonn.",
+ "tpt-translation-intro-fuzzy": "Övverhollte Övversäzunge wäde su makeet, wi hee dä Täx.",
"tpt-languages-legend": "Ander Schprohche:",
"tpt-languages-separator": "&#160;•&#32;",
"tpt-languages-zero": "Donn ens loßlääje mem Övversäze en heh di Schprohch",
"tpt-languages-nonzero": "$1 ($2% övversaz)",
"tpt-tab-translate": "Övversäze",
- "tpt-target-page": "Hee di Sigg kam_mer nit vun Hand ändere. Dat hee es en Översäzungß_Sigg vun dä Sigg [[$1]]. De Övversäzung kam_mer övver däm Wiki sing [$2 Övversäzungß_Wärkzüsch] op der neußte Shtand bränge.",
+ "tpt-target-page": "Hee di Sigg kam_mer nit vun Hand änndere. Dat heh es en Översäzongß_Sigg vun dä Sigg [[$1]]. De Övversäzong kam_mer övver däm Wiki sing [$2 Övversäzongß_Wärkzüsch] op der neußte Schtand bränge.",
"tpt-patrolling-blocked": "Heh di Sigg nohzelohre kann nit jonn. Donn dat mem Wärkzüsch zom Övversäze maache.",
"tpt-unknown-page": "Dat Appachtemang hee es för Sigge vum Enhallt vum Wiki ze Övversäze jedaach. Di Sigg, di de jraad ze ändere versöhks, schingk ävver nit met ööhnds en Sigg ze donn ze han, di för zem Övversäze makeet es.",
"tpt-translation-restricted": "Et Övversäzze en di Schprohch hät ene Verwallder vum Övversäzze för heh di Sigg verbodde.\n\nJrond: $1",
@@ -78,12 +75,11 @@
"tpt-discouraged-language-reason": "Jrond: $1",
"tpt-priority-languages": "Ene Verwallder vum Övversäzze hät de Houpschprooche för heh di Jropp op $1 jesaz.",
"tpt-render-summary": "Ändere, öm op de neue Version fun de Ojinaal_Sigg ze kumme",
- "tpt-download-page": "Sigge met Övversäzunge expotteere",
"aggregategroups": "Sammeljroppe",
"tpt-aggregategroup-add": "Dobei donn",
"tpt-aggregategroup-save": "Faßhalde",
"tpt-aggregategroup-add-new": "Donn en neu Sammeljropp derbei",
- "tpt-aggregategroup-new-name": "Dä Name vun dä Jropp:",
+ "tpt-aggregategroup-new-name": "Dä Nahme vun dä Jropp:",
"tpt-aggregategroup-new-description": "Wat en dä Sammeljrobb es (kann läddesch blieve):",
"tpt-aggregategroup-remove-confirm": "Wells De di Sammeljropp verhaftesch fott schmiiße?",
"tpt-aggregategroup-invalid-group": "Di Jropp jidd_et nit",
@@ -94,19 +90,19 @@
"tpt-invalid-group": "Onjöltejje Jropp",
"pt-parse-open": "En &lt;translate&gt; es ohne Jääjeshtöck.\nDe Siggeschabloon för ze övversäze: <pre>$1</pre>",
"pt-parse-close": "En &lt;/translate&gt; es ohne Jääjeshtöck.\nDe Siggeschabloon för ze övversäze: <pre>$1</pre>",
- "pt-parse-nested": "En einem &lt;translate> Övversäzongsaffschned kann nit noch eine su ene Affschned dren shteishe.\nDä Täx vun dä Makeerung es: <pre>$1</pre>",
- "pt-shake-multiple": "Mieh wi eine Makeerung för dersellve Övversäzongsaffschned es nit müjjelesh.\nDä Täx vun däm Övversäzongsaffschned es: <pre>$1</pre>",
+ "pt-parse-nested": "En einem &lt;translate> Övversäzongsaffschned kann nit noch eine su ene Affschned dren schteische.\nDä Täx vun dä Makkehrong es: <pre>$1</pre>",
+ "pt-shake-multiple": "Mih wi eine Makkehrong för dersellve Övversäzongsaffschned es nit müjjelesch.\nDä Täx vun däm Övversäzongsaffschned es: <pre>$1</pre>",
"pt-shake-position": "Makeerunge för Övversäzongsaffschnedde sin aan dä Pusizjuhn nit müjjelesh.\nDä Täx vun däm Affschned es: <pre>$1</pre>",
"pt-shake-empty": "Em Övversäzongsaffschned met dä Makeerong „$1“ es nix dren.",
"log-description-pagetranslation": "Logbooch för di Saache, di mem Sigge Övversäze ze donn han",
"log-name-pagetranslation": "Logbooch vum Sigge Övversäze",
"logentry-pagetranslation-mark": "{{GENDER:$2|Dä|Dat|Dä Metmaacher|De|Dat}} $1 hät di Sigg „$3“ zum Övversäze freijejovve.",
"logentry-pagetranslation-unmark": "{{GENDER:$2|Dä|Dat|Dä Metmaacher|De|Dat}} $1 hät di Sigg „$3“ vum Övversäze ußjenumme.",
- "logentry-pagetranslation-moveok": "Et Ömbenänne vun dä övversäzbaare Sigg „$3“ op „$4“ es fäädesch, wat {{GENDER:$2|vum|vum|vumm Metmaacher|vun dä|vum}} $1 aanjeschtüßße wood.",
+ "logentry-pagetranslation-moveok": "Et Ömbenänne vun dä övversäzbaare Sigg „$3“ op „$4“ es fähdesch, wat {{GENDER:$2|vum|vum|vumm Metmaacher|vun dä|vum}} $1 aanjeschtüßße wood.",
"logentry-pagetranslation-movenok": "Et Ömbenänne vun dä övversäzbaare Sigg „$3“ op „$4“ es donäve jejange, {{GENDER:$2|wat dä|wat dat|wat dä Metmaacher|wat de|wadd et}} $1 aanjeschtüßße hatt.",
- "logentry-pagetranslation-deletefok": "Et Fottschmiiße vun dä övversäzbaare Sigg „$3“ es fäädesch, wat {{GENDER:$2|vum|vum|vumm Metmaacher|vun dä|vum}} $1 aanjeschtüßße wood.",
+ "logentry-pagetranslation-deletefok": "Et Fottschmiiße vun dä övversäzbaare Sigg „$3“ es fähdesch, wat {{GENDER:$2|vum|vum|vumm Metmaacher|vun dä|vum}} $1 aanjeschtüßße wood.",
"logentry-pagetranslation-deletefnok": "Di Sigg „$3“ — ene Deil vun dä övversäzbaare Sigg „$4“ — fottzeschmiiße, es donäve jejange, {{GENDER:$2|wat dä|wat dat|wat dä Metmaacher|wat de|wadd et}} $1 aanjeschtüßße hatt.",
- "logentry-pagetranslation-deletelok": "Et Fottschmiiße vun dä Övversäzongs_Sigg „$3“ es fäädesch, wat {{GENDER:$2|vum|vum|vumm Metmaacher|vun dä|vum}} $1 aanjeschtüßße wood.",
+ "logentry-pagetranslation-deletelok": "Et Fottschmiiße vun dä Övversäzongs_Sigg „$3“ es fähdesch, wat {{GENDER:$2|vum|vum|vumm Metmaacher|vun dä|vum}} $1 aanjeschtüßße wood.",
"logentry-pagetranslation-deletelnok": "Di Sigg „$3“ — ene Deil vun dä Övversäzongs_Sigg „$4“ — fottzeschmiiße, es donäve jejange, {{GENDER:$2|wat dä|wat dat|wat dä Metmaacher|wat de|wadd et}} $1 aanjeschtüßße hatt.",
"logentry-pagetranslation-encourage": "{{GENDER:$2|Dä|Dat|Dä Metmaacher|De|Dat}} $1 schleit di Sigg „$3“ zom Övversäze för.",
"logentry-pagetranslation-discourage": "{{GENDER:$2|Dä|Dat|Dä Metmaacher|De|Dat}} $1 schleit vör, di Sigg „$3“ nit ze övversäze.",
@@ -115,30 +111,37 @@
"logentry-pagetranslation-prioritylanguages-force": "{{GENDER:$2|Dä|Dat|Dä Metmaacher|De|Dat}} $1 hät de Övveräzonge för di Sigg „$3“ beschrängk op $5.",
"logentry-pagetranslation-associate": "{{GENDER:$2|Dä|Dat|Dä Metmaacher|De|Dat}} $1 hät di övveräzbaa Sigg „$3“ en di Sammeljropp „$4“ jedonn.",
"logentry-pagetranslation-dissociate": "{{GENDER:$2|Dä|Dat|Dä Metmaacher|De|Dat}} $1 hät di övveräzbaa Sigg „$3“ uß dä Sammeljropp „$4“ erußjehollt.",
+ "log-action-filter-pagetranslation": "Axjuhn",
+ "log-action-filter-pagetranslation-mark": "Zom Övversäze freijejovve",
+ "log-action-filter-pagetranslation-unmark": "Vum Övversäzze ußjeschloße",
+ "log-action-filter-pagetranslation-move": "Sigge ömjenannt",
+ "log-action-filter-pagetranslation-delete": "Sigge fottjeschmeße",
+ "log-action-filter-pagetranslation-encourage": "Övversäze jewönsch",
+ "log-action-filter-pagetranslation-discourage": "Övversäze es nit von Belang",
"pt-movepage-title": "De övversäzbaa Sigg „$1“ ömnänne",
"pt-movepage-blockers": "Di övversäbaa Sigg künne mer nit ömbenänne. {{PLURAL:$1|Der Jrond es:|De Jrönd sin:|Mer weße ävver kein Jrönd doför.}}",
"pt-movepage-block-base-exists": "De övversäzbaa Zielsigg „[[:$1]]“ jidd_et ald.",
"pt-movepage-block-base-invalid": "Di aanjejovve Zielsigg hät keine jölteje Siggetittel.",
"pt-movepage-block-tp-exists": "De övversäzbaa Zielsigg „[[:$2]]“ jidd_et ald.",
- "pt-movepage-block-tp-invalid": "De aanjejovve övversäzbaa Zielsigg iere Tittel för „[[:$1]]“ wöhr nit jöltejsch, Velleisch zoh lang?",
+ "pt-movepage-block-tp-invalid": "Dä aanjejovve övversäzbaa Zihl_Sigg ier Övverschreff för „[[:$1]]“ wöhr nit jöltejsch, Velleisch zoh lang?",
"pt-movepage-block-section-exists": "En Zielsigg met dämm Övversäzongsafschned „[[:$2]]“ jidd_et ald.",
- "pt-movepage-block-section-invalid": "Dä Tittel för di Sigg för dä Övversäzongsafschned för „[[:$1]]“ wöhr nit jöltejsch, Velleisch zoh lang?",
+ "pt-movepage-block-section-invalid": "De Övverschreff för di Sigg för dä Övversäzongsafschned för „[[:$1]]“ wöhr nit jöltejsch, Velleisch zoh lang?",
"pt-movepage-block-subpage-exists": "De Ziel_Ongersigg „[[:$2]]“ jidd_et ald.",
- "pt-movepage-block-subpage-invalid": "Dä Tittel för de Onger_Sigg för „[[:$1]]“ wöhr nit jöltejsch, Velleisch zoh lang?",
+ "pt-movepage-block-subpage-invalid": "De Övverschreff för de Onger_Sigg för „[[:$1]]“ wöhr nit jöltejsch, Velleisch zoh lang?",
"pt-movepage-list-pages": "De Leß met dä Sigge zom Ömbenänne",
"pt-movepage-list-translation": "Övversaz {{PLURAL:$1|Sigg|Sigge}}",
"pt-movepage-list-section": "Övversäzongsaffschnets_{{PLURAL:$1|Sigg|Sigge}}",
"pt-movepage-list-other": "Ander Onger_{{PLURAL:$1|Sigg|Sigge}}",
"pt-movepage-list-count": "Ensjesamp ham_mer {{PLURAL:$1|ein Sigg|$1 Sigge|kein Sigg}} för ömzenänne.",
"pt-movepage-legend": "Övversäzbaa Sigg ömnänne",
- "pt-movepage-current": "Der Name em Momang:",
- "pt-movepage-new": "Der neue Name:",
+ "pt-movepage-current": "Der Nahme em Momang:",
+ "pt-movepage-new": "Der neue Nahme:",
"pt-movepage-reason": "För et Logbooch, der Aanlaß:",
"pt-movepage-subpages": "De Ongersigge all met ömnänne",
"pt-movepage-action-check": "Fengk erus, ov dat Ömnänne müjjlesch es",
"pt-movepage-action-perform": "Ömnänne!",
"pt-movepage-action-other": "Ander Zieltittel",
- "pt-movepage-intro": "Heh di Extrasigg löht Desh Sigge ömdäufe, di för et Övversäze frei jejovve sin.\nDat jeiht nit en einem Rötsch, weil ene Pöngel Sigge un -Deile ömjenannt wääde möße.\nEm MediaWiki sing <i lang=\"en\"> [http://www.mediawiki.org/wiki/Manual:Job_queue job queue] </i> weed doför jebruch.\nSu lang, wi de Sigge ömjenannt wääde, kam_mer met dänne nix söns maache.\nFähler kumme en et [[Special:Log/pagetranslation|{{int:pt-log-name}}]] un möße vun Hand opjerühmp wääde.",
+ "pt-movepage-intro": "Heh di {{int:specialpage}} löht Desch Sigge ömdäufe, di för et Övversäze frei jejovve sin.\nDat jeiht nit en einem Rötsch, weil ene Pöngel Sigge un Deile ömjenannt wähde möße.\nEm MediaWiki sing <i lang=\"en\" xml:lang=\"en\" dir=\"ltr\"> [http://www.mediawiki.org/wiki/Manual:Job_queue job queue]</i> weed doför jebruch.\nSu lang, wi de Sigge ömjenannt wääde, kam_mer met dänne nix söns maache.\nFähler kumme en et [[Special:Log/pagetranslation|{{int:pt-log-name}}]] un möße vun Hand opjerühmp wähde.",
"pt-movepage-logreason": "Deil vun dä övversäzbaa Sigg „$1“",
"pt-movepage-started": "Di Sigg weed jäz ömjenannt.\nDon op jede Fall em [[Special:Log/pagetranslation|{{int:pt-log-name}}]] noh Fähler loore, un dat dat öhndlesch aan et Eng jekumme es.",
"pt-locked-page": "Dat Stöck heh is jesperrt, däm sing övversäbaa Sigg weed nämmisch jrad ömbenannt.",
@@ -164,25 +167,26 @@
"pt-deletepage-lang-logreason": "Deil vun dä övversaz Sigg „$1“",
"pt-deletepage-started": "Loor em [[Special:Log/pagetranslation|Logbooch vun de Övversäzonge]] noh Fähler un Nohreeschte.",
"pt-deletepage-intro": "Heh di {{int:specialpage}} määd et müjjelesch. kumplätte övversäbaa Sigge udder Övversäzonge en en beshtemmpte Schprohch fottzeschmiiße.\nDat Fottschmiiße dohrt e Wihlsche, weil alle dervun affhängeje Sigge derbei och fott jeschmeße wääde möße.\nFähler kumme en et [[Special:Log/pagetranslation|Logbooch vum Övversäze]] un möße vun Hand jrahdjeröck wähde.",
+ "pagemigration": "Sigge en övversäbaa Sigge wandelle",
"pagemigration-summary": "Jivv en Övversäzongssigg aan un holl alle Övversäzonge zeröck, di jemaat wohre, ih dat et Süßtem för et Övversäze för di Sigg aanjeschalldt woode es.",
"pm-import-button-label": "Empottehre!",
"pm-savepages-button-label": "Faßhalde",
- "pm-cancel-button-label": "Ophüre!",
- "pm-pagename-placeholder": "Jivv ene Nahme för die Sigg aan",
- "pm-langcode-placeholder": "Shprohcheköözel",
+ "pm-cancel-button-label": "Ophühre!",
"pm-page-does-not-exist": "$1 jidd_et nit",
"pm-old-translations-missing": "En dä Sigg „$1“ sin kein ahle Övversäzonge.",
- "pm-extra-units-warning": "Et sin veleijsch mieh Einheijte övveresch. Bes esu jood un donn de Einheite ob beide Sigge ejahl maache.",
+ "pm-extra-units-warning": "Et sin veleijsch mih Eijnheijte övveresch. Bes esu jood un donn de Einheite ob beide Sigge ejahl maache.",
"pm-pagename-missing": "Bes esu johd un donn dä Nahme för di Sigg enjävve.",
- "pm-langcode-missing": "Bes esu johd un donn et Köözel för die schprohch enjävve.",
"pm-add-icon-hover-text": "Jivv onge en Einheid en",
+ "pm-swap-icon-hover-text": "Met dämm dronger tuusche",
"pm-delete-icon-hover-text": "Schmiiß de Eijnheit fott",
+ "pm-pagetitle-placeholder": "Jivv de Övverschreff fun dä Sigg aan",
"pm-pagetitle-invalid": "Bes esu johd un jivv en jöltejje Övverschreff för en Sigg aan.",
- "pm-summary-import": "Övver [[Special:PageMigration|page migration]] empottehrt ",
+ "pm-langcode-missing": "Bes esu johd un donn et Köözel för di Schprohch enjävve.",
+ "pm-summary-import": "Heh di Övversäzong wohd övver de {{int:specialpage}} „[[Special:PageMigration|{{int:Pagemigration}}]]“ automattesch udder hallefautomattesch aanjelaht.",
"tpt-translate-title": "Lohß Övversäzonge för dä Sigg iehr Övverschreff zoh",
"pp-save-summary": "Donn di Sigg för et Övversäze vörbereide",
"pagepreparation": "Di Sigg för et Övversäze vörbereide",
- "pp-pagename-placeholder": "Jivv dä Nahme för die Sigg en",
+ "pp-pagename-placeholder": "Jivv dä Nahme för di Sigg en",
"pp-prepare-button-label": "Vörbereide",
"pp-save-button-label": "Faßhalde!",
"pp-cancel-button-label": "Ophüre!",
@@ -192,7 +196,8 @@
"pp-pagename-missing": "Bes esu johd un donn dä Sigg ihre Nahme enjävve.",
"pp-diff-old-header": "Quälltäx",
"pp-diff-new-header": "Vörbereidt Täx",
- "tpt-unlink-confirm": "Wells De heh di Sigg verhaftesch vum Övversäze ußschlehße?\nDe Ußwahl vun de Schprohche un de Nahme vun övversaz Sigge wähde et dernoh nit mieh donn, un de Övversäzongssigge wähde nommal veränderbaa wääde.",
+ "tpt-unlink-confirm": "Wells De heh di Sigg verhaftesch vum Övversäze ußschlehße?\nDe Ußwahl vun de Schprohche un de Nahme vun övversaz Sigge wähde et dernoh nit mih donn, un de Övversäzongssigge wähde nommal veränderbaa wääde.",
"tpt-unlink-button": "Schmiiß fott",
- "tpt-unlink-summary": "Di Sigg wood vum Övversäzze ußjeschloße."
+ "tpt-unlink-summary": "Di Sigg wood vum Övversäzze ußjeschloße.",
+ "tpt-generic-button": "Beschtähtejje"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/ku-latn.json b/MLEB/Translate/i18n/pagetranslation/ku-latn.json
index 320295cb..c6f5e194 100644
--- a/MLEB/Translate/i18n/pagetranslation/ku-latn.json
+++ b/MLEB/Translate/i18n/pagetranslation/ku-latn.json
@@ -2,32 +2,59 @@
"@metadata": {
"authors": [
"George Animal",
- "Gomada"
+ "Gomada",
+ "Bikarhêner",
+ "Cûndûllah el-Kurdî"
]
},
"pagetranslation": "Wergera rûpelê",
"right-pagetranslation": "Versiyonên rûpelên ji bo wergerê nîşan bike",
+ "action-pagetranslation": "rûpelên wergerbar bi rê ve bibe",
"tpt-diff-old": "Nivîsa pêşî",
"tpt-diff-new": "Nivîsa nû",
"tpt-submit": "Vê versiyonê ji bo wergerê îşaret bike",
"tpt-nosuchpage": "Rûpela $1 tune.",
"tpt-select-prioritylangs-reason": "Sedem:",
+ "tpt-rev-unmark": "ji nav wergeran derxe",
"translate-tag-translate-link-desc": "Vê rûpelê werrgerîne",
"translate-tag-markthis": "Vê rûpelê ji bo wergerê îşaret bike",
"tpt-languages-legend": "Zimanên din:",
- "tpt-download-page": "Rûpela bi wergeran bişîne",
+ "tpt-languages-nonzero": "$1 ($2% hate wergerandin)",
+ "tpt-tab-translate": "Wergerîne",
+ "tpt-discouraged-language-force-header": "Ev rûpel ji bo $1 nayê wergerandin",
+ "tpt-discouraged-language-reason": "Sedem: $1",
"tpt-aggregategroup-add": "Lê zêde bike",
+ "tpt-aggregategroup-save": "Tomar bike",
"tpt-aggregategroup-new-name": "Nav:",
+ "tpt-aggregategroup-new-description": "Pênas (heke bixwazî)",
+ "tpt-aggregategroup-invalid-group": "Kom tune ye",
+ "tpt-aggregategroup-edit-name": "Nav:",
+ "tpt-aggregategroup-edit-description": "Danasîn:",
+ "tpt-aggregategroup-update": "Tomar bike",
+ "tpt-aggregategroup-update-cancel": "Betal bike",
+ "tpt-invalid-group": "Koma nederbasdar",
"log-name-pagetranslation": "Têketina wergerandina rûpelan",
- "pt-movepage-list-translation": "Rûpelên wergerê",
- "pt-movepage-list-other": "Binrûpelên din",
+ "log-action-filter-pagetranslation-delete": "Jêbirinên rûpelan",
+ "pt-movepage-list-translation": "{{PLURAL:$1|Rûpel|Rûpelên}} wergerê",
+ "pt-movepage-list-other": "Bin{{PLURAL:$1|rûpela|rûpelên}} din",
"pt-movepage-current": "Navê niha:",
"pt-movepage-new": "Navê nû:",
"pt-movepage-reason": "Sedem:",
"pt-movepage-subpages": "Hemû binrûpelan bigerîne",
+ "pt-deletepage-action-perform": "Jê bibe",
+ "pt-deletepage-lang-legend": "Rûpela wergerê jê bibe",
"pt-deletepage-full-legend": "Rûpela wergerê jê bibe",
"pt-deletepage-current": "Navê rûpelê:",
"pt-deletepage-reason": "Sedem:",
"pt-deletepage-subpages": "Hemû binrûpelan jê bibe",
- "pt-deletepage-list-other": "Binrûpelên din"
+ "pt-deletepage-list-translation": "Rûpelên wergerê",
+ "pt-deletepage-list-other": "Binrûpelên din",
+ "pm-savepages-button-label": "Tomar bike",
+ "pm-cancel-button-label": "Betal bike",
+ "pm-page-does-not-exist": "$1 tune ye.",
+ "pm-old-translations-missing": "$1 wergerên kevn nahewîne.",
+ "pm-pagetitle-placeholder": "Sernavê rûpelê binivîse",
+ "pm-pagetitle-missing": "Ji kerema xwe sernavê rûpelê binivîse",
+ "pp-save-button-label": "Tomar bike",
+ "pp-cancel-button-label": "Betal bike"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/ky.json b/MLEB/Translate/i18n/pagetranslation/ky.json
index b49ad40f..457eb310 100644
--- a/MLEB/Translate/i18n/pagetranslation/ky.json
+++ b/MLEB/Translate/i18n/pagetranslation/ky.json
@@ -5,7 +5,6 @@
]
},
"pagetranslation": "Которуу барагы",
- "tpt-template": "Калып барагы",
"tpt-diff-new": "Жаңы текст",
"tpt-select-prioritylangs-reason": "Себеп:",
"tpt-sections-prioritylangs": "Артыкчылыктуу тилдер",
diff --git a/MLEB/Translate/i18n/pagetranslation/lb.json b/MLEB/Translate/i18n/pagetranslation/lb.json
index 08e1c3fb..17daf988 100644
--- a/MLEB/Translate/i18n/pagetranslation/lb.json
+++ b/MLEB/Translate/i18n/pagetranslation/lb.json
@@ -10,12 +10,9 @@
"pagetranslation": "Iwwersetzung vun der Säit",
"right-pagetranslation": "Versioune vu Säite fir Iwwersetzung markéieren",
"action-pagetranslation": "Iwwersetzbar Säit geréieren",
- "tpt-desc": "Erweiderung fir inhaltlech Säiten z'iwwersetzen",
"tpt-section": "Iwwersetzungseenheet $1",
"tpt-section-new": "Numm: $1",
"tpt-section-deleted": "Iwwersetzungseenheet $1",
- "tpt-template": "Säiteschabloun",
- "tpt-templatediff": "D'Säiteschabloun gouf geännert.",
"tpt-diff-old": "Viregen Text",
"tpt-diff-new": "Neien Text",
"tpt-submit": "Dës Versioun fir d'Iwwersetze markéieren",
@@ -29,9 +26,9 @@
"tpt-notsuitable": "D'Säit $1 ass net geeegent fir iwwersat ze ginn.\nVergewëssert Iech ob se <nowiki><translate></nowiki>-Taggen an eng valabel Syntax huet.",
"tpt-saveok": "D'Säit [[:$1]] gouf fir d'Iwwersetzung mat $2 {{PLURAL:$2|Iwwersetzungseenheet|Iwwersetzungseenheete}} markéiert.\nD'Säit kann elo <span class=\"plainlinks\">[$3 iwwersat]</span> ginn.",
"tpt-offer-notify": "Dir kënnt iwwer dës Säit <span class=\"plainlinks\">[$1 Iwwersetzer informéieren]</span>.",
- "tpt-badsect": "\"$1\" ass kee valbelen Numm fir d'Iwwersetzungseenheet $2.",
"tpt-showpage-intro": "Ënnendrënner stinn déi nei, aktuell a geläscht Abschnitter.\nIer Dir dës Versioun fir d'iwwersetze markéiert, kuckt w.e.g. no datt d'Ännerunge vun den Abschnitter déi iwwersat solle ginn op e Minimum reduzéiert gi fir onnëtz Aarbecht vun den Iwwersetzer ze vermeiden.",
"tpt-mark-summary": "huet dës Versioun fir d'Iwwersetzung markéiert",
+ "tpt-mark-nochanges": "Keng Ännerunge fir nozekucken. D'Markéiere fir z'iwwersetze vun dëser Säit ännert weder d'Säit nach eng Iwwersetzungseenheet déi et scho gëtt.",
"tpt-edit-failed": "D'Säit $1 konnt net aktualiséiert ginn",
"tpt-duplicate": "Den Numm $1 vun der Iwwersetzungwseenheet gëtt méi wéi eemol benotzt.",
"tpt-already-marked": "Déilescht Versioun vun dëser Säit gouf scho fir d'Iwwersetzung markéiert.",
@@ -62,6 +59,7 @@
"translate-tag-markthisagain": "Dës Säit huet <span class=\"plainlinks\">[$1 Ännerungen]</span> zënter datt se fir d'lescht <span class=\"plainlinks\">[$2 fir d'Iwwersetzung markéiert gouf]</span>.",
"translate-tag-hasnew": "Op dëser Säit si(nn)s <span class=\"plainlinks\">[$1 Ännerungen]</span> déi net fir d'iwwersetzung markéiert sinn.",
"tpt-translation-intro": "Dës Säit ass eng <span class=\"plainlinks\">[$1 iwwersate Versioun]</span> vun der Säit [[$2]] an d'Iwwersetzung ass zu $3 % komplett.",
+ "tpt-translation-intro-fuzzy": "Vereelzt Iwwersetzunge sinn esou markéiert.",
"tpt-languages-legend": "aner Sproochen:",
"tpt-languages-zero": "Iwwersetzung fir dës Sprooch ufänken",
"tpt-languages-nonzero": "$1 ($2% iwwersat)",
@@ -78,11 +76,10 @@
"tpt-discouraged-language-reason": "Grond: $1",
"tpt-priority-languages": "En Iwwersetzungs-Administrateur huet déi prioritiséiert Sprooche fir dëse Grupp op $1 agestallt.",
"tpt-render-summary": "Aktualiséieren fir mat der neier Versioun vun der Quellsäit iwwereneenzestëmmen",
- "tpt-download-page": "Säit mat Iwwersetzungen exportéieren",
- "aggregategroups": "Gruppen zesummeleeën",
+ "aggregategroups": "Gruppe fusionéieren",
"tpt-aggregategroup-add": "Derbäisetzen",
"tpt-aggregategroup-save": "Späicheren",
- "tpt-aggregategroup-add-new": "Eng nei zesummegeluechte Grupp derbäisetzen",
+ "tpt-aggregategroup-add-new": "Eng nei zesummegeluechte Grupp dobäisetzen",
"tpt-aggregategroup-new-name": "Numm:",
"tpt-aggregategroup-new-description": "Beschreiwung (optional):",
"tpt-aggregategroup-remove-confirm": "Sidd Dir sécher datt Dir dëse Grupp läsche wëllt?",
@@ -106,6 +103,13 @@
"logentry-pagetranslation-deletefok": "$1 {{GENDER:$2|huet}} d'iwwersetzbar Säit $3 geläscht",
"logentry-pagetranslation-deletelok": "$1 {{GENDER:$2|huet}} d'Läsche vun der Iwwersetzungssäit $3 ofgeschloss",
"logentry-pagetranslation-encourage": "$1 {{GENDER:$2|huet}} d'Iwwersetzung vun $3 recommandéiert",
+ "log-action-filter-pagetranslation": "Typ vun Aktioun:",
+ "log-action-filter-pagetranslation-mark": "Markéiere fir z'iwwersetzen",
+ "log-action-filter-pagetranslation-unmark": "Ewechhuele vun der Iwwersetzung",
+ "log-action-filter-pagetranslation-move": "Geréckelt Säiten",
+ "log-action-filter-pagetranslation-delete": "Geläscht Säiten",
+ "log-action-filter-pagetranslation-prioritylanguages": "Ännerung vun der Prioritéit vun de Sproochen",
+ "log-action-filter-pagetranslation-aggregategroups": "Ännerung vun der Zesummefaassung vu Gruppen",
"pt-movepage-title": "Déi iwwersetzbar Säit $1 réckelen",
"pt-movepage-blockers": "déi iwwersetzbar Säit kann net op den neien Numm geréckelt gi wéinst {{PLURAL:$1|dësem|dëse}} Feeler:",
"pt-movepage-block-base-exists": "D'Ziliwwersetzungssäit \"[[:$1]]\" gëtt et schonn.",
@@ -130,11 +134,11 @@
"pt-movepage-action-perform": "Réckelen",
"pt-movepage-action-other": "Zil änneren",
"pt-movepage-intro": "Dës Spezialsäit erméiglecht Iech et fir Säiten déi fir d'Iwwersetzung markéiert sinn ze réckelen.\nD'Réckelaktioun gëtt net direkt gemaach wëll vill Säite geréckelt musse ginn.\nD'Job-Queue gëtt fir d'Réckele vun de Säite benotzt.\nDa wann d'Säite geréckelt ginn ass et net méiglech mat deene Säiten déi grad geréckelt ginn ze schaffen.\nWann et net funktionéiert gëtt dat am [[Special:Log/pagetranslation|Iwwersetzungs-Logbuch]] festgehalen an et muss vun Hand reparéiert ginn.",
- "pt-movepage-logreason": "Deel vun der iwwersetzbarer Säit $1.",
- "pt-movepage-started": "D'Basissäit ass elo geréckelt.\nKuckt w.e.g. d'[[Special:Log/pagetranslation|Logbuch vun den Iwwersetzunge]] fir Feelermeldungen respektiv d'Meldung datt alles ok ass.",
+ "pt-movepage-logreason": "Deel vun der iwwersetzbarer Säit \"$1\"",
+ "pt-movepage-started": "Kuckt w.e.g. deemnächst d'[[Special:Log/pagetranslation|Logbuch vun den Iwwersetzunge]] fir Feelermeldunge respektiv d'Meldung datt alles ok ass.",
"pt-locked-page": "Dës Säit ass gespaart wëll déi iwwersetzbar Säit elo geréckelt gëtt.",
- "pt-deletepage-lang-title": "D'Iwwersetzungssäit $1 gëtt geläscht.",
- "pt-deletepage-full-title": "Déi iwwersetzbar Säit $1 gëtt geläscht.",
+ "pt-deletepage-lang-title": "D'Iwwersetzungssäit ''$1'' gëtt geläscht.",
+ "pt-deletepage-full-title": "Déi iwwersetzbar Säit ''$1'' gëtt geläscht",
"pt-deletepage-invalid-title": "Déi spezifizéiert Säit ass net valabel.",
"pt-deletepage-invalid-text": "Déi Säit déi Dir uginn hutt ass keng iwwersetzbar Säit a keng Iwwersetzungssäit.",
"pt-deletepage-action-check": "Säiten déi geläscht solle ginn opzielen",
@@ -151,24 +155,24 @@
"pt-deletepage-list-section": "Iwwersetzungseenheet vu Säiten",
"pt-deletepage-list-other": "Aner Ënnersäiten",
"pt-deletepage-list-count": "Am ganzen $1 {{PLURAL:$1|Säit|Säite}} fir ze läschen.",
- "pt-deletepage-full-logreason": "Deel vun der iwwersetzbarer Säit $1.",
- "pt-deletepage-lang-logreason": "Deel vun der iwwersater Säit $1.",
+ "pt-deletepage-full-logreason": "Deel vun der iwwersetzbarer Säit \"$1\"",
+ "pt-deletepage-lang-logreason": "Deel vun der iwwersater Säit \"$1\"",
"pt-deletepage-started": "Kuckt w.e.g. d'[[Special:Log/pagetranslation|Logbuch vun den Iwwersetzunge]] fir Feelermeldungen respektiv d'Meldung datt alles ok ass, no.",
"pt-deletepage-intro": "Dës Spezialsäit erméiglecht et eng ganz iwwersetzbar Säit oder eng individuell Iwwersetzungssäit an enger Sprooch ze läschen.\nD'Läschaktioun gesäit een net direkt well all d'Säiten déi dovun ofhänken och geläscht ginn.\nFeeler ginn am [[Special:Log/pagetranslation|Iwwersetzungs-Logbuch]] agedro a mussen duerno manuell gefléckt ginn.",
"pagemigration": "Migratioun vun der Iwwersetzungssäit",
"pm-import-button-label": "Importéieren",
"pm-savepages-button-label": "Späicheren",
"pm-cancel-button-label": "Ofbriechen",
- "pm-pagename-placeholder": "Gitt den Numm vun der Säit an",
- "pm-langcode-placeholder": "Sproochcode",
"pm-page-does-not-exist": "$1 gëtt et net",
"pm-old-translations-missing": "Op $1 si keng al Iwwersetzungen dran",
"pm-pagename-missing": "Gitt w.e.g. den Numm vun der Säit an",
- "pm-langcode-missing": "Gitt w.e.g. de Sproochcode an",
- "pm-add-icon-hover-text": "Eng Eenheet drënner derbäisetzen",
+ "pm-add-icon-hover-text": "Eng Eenheet drënner dobäisetzen",
"pm-swap-icon-hover-text": "Mat der Eenheet drënner wiesselen",
"pm-delete-icon-hover-text": "Eenheet läschen",
- "pm-pagetitle-invalid": "Gitt w.e.g. e valabelen Titel fir d'Säit an",
+ "pm-pagetitle-placeholder": "Gitt de Säitentitel an",
+ "pm-pagetitle-invalid": "Gitt w.e.g. e valabelen Titel fir d'Säit an. Et muss am <page-name>/<language-code> Format sinn.",
+ "pm-pagetitle-missing": "Gitt w.e.g. den Titel vun der Säit an.",
+ "pm-langcode-missing": "Gitt w.e.g. de Sproochcode an. Gitt w.e.g. de Säitentitel am <page-name>/<language-code> Format an.",
"pm-summary-import": "Iwwersetzung importéiert mat Hëllef vun [[Special:PageMigration|Säitemigratioun]]",
"tpt-translate-title": "Iwwersetzung vum Titel vun der Säit erlaben",
"pp-save-summary": "Huet d'Säit fir d'Iwwersetzung preparéiert",
@@ -183,5 +187,8 @@
"pp-pagename-missing": "Gitt w.e.g. den Numm vun der Säit an.",
"pp-diff-old-header": "Quelltext",
"pp-diff-new-header": "Preparéierten Text",
- "tpt-unlink-button": "Vun der Iwwersetzung ewechhuelen"
+ "tpt-unlink-button": "Vun der Iwwersetzung ewechhuelen",
+ "tpt-unlink-summary": "D'Säit gouf vun der Iwwersetzung ewechgeholl",
+ "tpt-generic-confirm": "Confirméiert dës Aktioun w.e.g..",
+ "tpt-generic-button": "Confirméieren"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/lt.json b/MLEB/Translate/i18n/pagetranslation/lt.json
index 2cca6b90..897f9687 100644
--- a/MLEB/Translate/i18n/pagetranslation/lt.json
+++ b/MLEB/Translate/i18n/pagetranslation/lt.json
@@ -3,23 +3,27 @@
"authors": [
"Eitvys200",
"Mantak111",
- "Hugo.arg"
+ "Hugo.arg",
+ "Zygimantus"
]
},
"pagetranslation": "Puslapio vertimas",
"action-pagetranslation": "valdyti išverstus puslapius",
- "tpt-template": "Puslapio šablonas",
- "tpt-templatediff": "Pasikeitė puslapio šablonas.",
"tpt-diff-old": "Ankstesnis tekstas",
"tpt-diff-new": "Naujas tekstas",
+ "tpt-submit": "Pažymėti šią versiją vertimui",
"tpt-sections-deleted": "Ištrinti vertimo vienetai",
"tpt-sections-template": "Vertimo puslapio šablonas",
"tpt-badtitle": "duotas puslapio pavadinimas ($1) nėra gera antraštė",
"tpt-nosuchpage": "Puslapio $1 neegzistuoja",
+ "tpt-oldrevision": "$2 nėra naujausia puslapio [[:$1]] versija.\nTik naujausios versijos gali būti pažymėtos vertimui.",
+ "tpt-notsuitable": "Puslapis $1 netinka vertimui.\nPatikrinkite, kad puslapis turi <nowiki><translate></nowiki> žymes ir tinkamą sintaksę.",
+ "tpt-offer-notify": "Galite <span class=\"plainlinks\">[$1 pranešti vertėjams]</span> apie šį puslapį.",
"tpt-mark-summary": "Ši versija pažymėta vertimui",
"tpt-edit-failed": "Nepavyko atnaujinti puslapio: $1",
"tpt-already-marked": "Šio puslapio naujausia versija jau yra pažymėta vertimui.",
"tpt-unmarked": "Puslapis $1 nebėra pažymėtas vertimams.",
+ "tpt-new-pages-title": "Puslapiai siūlomi vertimui",
"tpt-old-pages-title": "Puslapių vertimas",
"tpt-other-pages-title": "Sugadinti puslapiai",
"tpt-select-prioritylangs-reason": "Priežastis:",
@@ -27,13 +31,23 @@
"tpt-rev-mark": "Pažymėti vertimui",
"tpt-rev-unmark": "pašalinti iš vertimo",
"tpt-rev-encourage": "atkurti",
+ "tpt-rev-mark-tooltip": "Pažymėti naujausią šio puslapio versiją vertimui.",
+ "tpt-rev-unmark-tooltip": "Pašalinti šį puslapį iš vertimo.",
"translate-tag-translate-link-desc": "Versti šį puslapį",
"translate-tag-markthis": "Pažymėti šį puslapį vertimui",
+ "tpt-translation-intro-fuzzy": "Pasenę vertimai yra pažymėti kaip šis.",
"tpt-languages-legend": "Kitos kalbos:",
"tpt-languages-zero": "Pradėti šios kalbos vertimą",
"tpt-languages-nonzero": "$1 ($2% išversta)",
+ "tpt-tab-translate": "Versti",
+ "tpt-discouraged-language-force-header": "Šis puslapis negali būti išverstas į $1.",
+ "tpt-discouraged-language-force-content": "Vertimų administratorius nusprendė, kad šis puslapis gali būti išverstas tik į $1.",
+ "tpt-discouraged-language-header": "Vertimas į $1 nėra prioritetas šiam puslapiui.",
+ "tpt-discouraged-language-content": "Vertimų administratorius nusprendė sutelkti pastangas ties $1.",
+ "tpt-discouraged-language-force": "<strong>Šis puslapis negali būti išverstas į $2.</strong>\n\nVertimų administratorius nusprendė, kad šis puslapis gali būti išverstas tik į $3.",
+ "tpt-discouraged-language": "<strong>Vertimas į $2 nėra prioritetas šiam puslapiui.</strong>\n\nVertimų administratorius nusprendė sutelkti vertimų pastangas ties $3.",
"tpt-discouraged-language-reason": "Priežastis: $1",
- "tpt-download-page": "Puslapyje eksportuojamas su vertimais",
+ "tpt-priority-languages": "Vertimų administratorius nustatė šios grupes prioritetines kalbas į $1.",
"aggregategroups": "Bendros grupės",
"tpt-aggregategroup-add": "Pridėti",
"tpt-aggregategroup-save": "Išsaugoti",
@@ -42,9 +56,37 @@
"tpt-aggregategroup-new-description": "Aprašymas (neprivaloma):",
"tpt-aggregategroup-remove-confirm": "Ar tikrai norite naikinti šią bendrą grupę?",
"tpt-aggregategroup-invalid-group": "Grupės nėra",
+ "tpt-aggregategroup-edit-name": "Pavadinimas:",
+ "tpt-aggregategroup-edit-description": "Aprašymas:",
+ "tpt-aggregategroup-update": "Išsaugoti",
+ "tpt-aggregategroup-update-cancel": "Atšaukti",
+ "tpt-invalid-group": "Negalima grupė",
"log-name-pagetranslation": "Puslapio vertimo žurnalas",
"logentry-pagetranslation-mark": "$1 {{GENDER:$2|pažymėtas}} $3 vertimui",
"logentry-pagetranslation-unmark": "$1 {{GENDER:$2|ištrintas}} $3 iš vertimo",
+ "logentry-pagetranslation-moveok": "$1 {{GENDER:$2|baigė}} pervadinti puslapį, kurį galima versti, $3 į $4",
+ "logentry-pagetranslation-movenok": "$1 {{GENDER:$2|susidūrė}} su problema keliant puslapį $3 į $4",
+ "logentry-pagetranslation-deletefok": "$1 {{GENDER:$2|baigė}} puslapio $3, kurį galima versti, trynima",
+ "logentry-pagetranslation-deletefnok": "$1 {{GENDER:$2|nepavyko}} ištrinti $3, kuris priklauso puslapiui $4, kurį galima versti",
+ "logentry-pagetranslation-deletelok": "$1 {{GENDER:$2|baigė}} vertimo puslapio $3 trynimą",
+ "logentry-pagetranslation-deletelnok": "$1 {{GENDER:$2|nepavyko}} ištrinti $3, kuris priklauso vertimo puslapiui $4",
+ "logentry-pagetranslation-encourage": "$1 {{GENDER:$2|paskatino}} $3 vertimą",
+ "logentry-pagetranslation-discourage": "$1 {{GENDER:$2|atkalbinėjo nuo}} $3 vertimo",
+ "logentry-pagetranslation-prioritylanguages-unset": "$1 {{GENDER:$2|pašalino}} prioritetines kalbas iš puslapio $3, kurį galima versti",
+ "logentry-pagetranslation-prioritylanguages": "$1 {{GENDER:$2|nustatė}} prioritetines kalbas puslapiui, kurį galima versti, iš $3 į $5",
+ "log-action-filter-pagetranslation": "Veiklos tipas:",
+ "log-action-filter-pagetranslation-mark": "Pažymėti vertimui",
+ "log-action-filter-pagetranslation-unmark": "Pašalinimas iš vertimo",
+ "log-action-filter-pagetranslation-move": "Puslapio perkėlimai",
+ "log-action-filter-pagetranslation-delete": "Puslapio trynimai",
+ "log-action-filter-pagetranslation-encourage": "Vertimo skaitinimas",
+ "log-action-filter-pagetranslation-discourage": "Atkalbinėjimas nuo vertimo",
+ "log-action-filter-pagetranslation-prioritylanguages": "Prioritetinių kalbų modifikacija",
+ "pt-movepage-title": "Perkelti puslapį „$1“, kurį galima versti",
+ "pt-movepage-blockers": "Puslapis, kurį galima versti, negali būti perkeltas į naują pavadinimą dėl {{PLURAL:$1|šios klaidos|šių klaidų}}:",
+ "pt-movepage-list-pages": "Puslapių perkėlimui sąrašas",
+ "pt-movepage-list-translation": "Vertimo {{PLURAL:$1|puslapis|puslapiai}}",
+ "pt-movepage-list-count": "Viso $1 {{PLURAL:$1|puslapis|puslapiai}} perkėlimui.",
"pt-movepage-legend": "Perkelti išverčiamą puslapį",
"pt-movepage-current": "Dabartinis pavadinimas:",
"pt-movepage-new": "Naujas pavadinimas:",
@@ -53,11 +95,15 @@
"pt-movepage-action-check": "Patikrinkite, ar perkelti yra įmanoma",
"pt-movepage-action-perform": "Perkelti",
"pt-movepage-action-other": "Pakeisti taikinį",
+ "pt-movepage-logreason": "Dalis puslapio „$1“, kurį galima versti",
+ "pt-deletepage-invalid-title": "Nurodytas puslapis negalimas.",
+ "pt-deletepage-invalid-text": "Nurodytas puslapis nėra nei puslapis, kurį galima išversti, nei vertimų puslapis.",
"pt-deletepage-action-check": "Sąrašą puslapių kurie turi būti ištrinti.",
"pt-deletepage-action-perform": "Padaryti trynimą",
"pt-deletepage-action-other": "Pakeisti taikinį",
"pt-deletepage-lang-legend": "Ištrinti vertimo puslapį",
"pt-deletepage-full-legend": "Ištrinti išverčiama puslapį",
+ "pt-deletepage-any-legend": "Ištrinti puslapį, kurį galima išversti, ar vertimų puslapį",
"pt-deletepage-current": "Puslapio pavadinimas:",
"pt-deletepage-reason": "Priežastis:",
"pt-deletepage-subpages": "Ištrinti visus subpuslapius",
@@ -65,6 +111,35 @@
"pt-deletepage-list-translation": "Vertimo puslapiai",
"pt-deletepage-list-section": "Vertimo vieneto puslapiai",
"pt-deletepage-list-other": "Kiti subpuslapiai",
- "pt-deletepage-full-logreason": "Dalis išverčiamo puslapio $1.",
- "pt-deletepage-lang-logreason": "Dalis vertimo puslapio $1."
+ "pt-deletepage-list-count": "Viso $1 {{PLURAL:$1|puslapis|puslapiai}} trynimui.",
+ "pt-deletepage-full-logreason": "Dalis išverčiamo puslapio „$1“",
+ "pt-deletepage-lang-logreason": "Dalis verčiamo puslapio „$1“",
+ "pagemigration": "Vertimo puslapio migracija",
+ "pm-import-button-label": "Importuoti",
+ "pm-savepages-button-label": "Išsaugoti",
+ "pm-cancel-button-label": "Atšaukti",
+ "pm-page-does-not-exist": "$1 neegzistuoja.",
+ "pm-old-translations-missing": "$1 neturi senų vertimų.",
+ "pm-pagename-missing": "Prašome įvesti puslapio pavadinimą.",
+ "pm-add-icon-hover-text": "Pridėti vienetą žemiau",
+ "pm-swap-icon-hover-text": "Apkeisti su vienetu žemiau",
+ "pm-delete-icon-hover-text": "Trinti vienetą",
+ "pm-pagetitle-placeholder": "Įveskite puslapio pavadinimą",
+ "pm-pagetitle-invalid": "Prašome įvesti galiojantį puslapio pavadinimą. Jis turėtų būti <page-name>/<language-code> formatu",
+ "pm-pagetitle-missing": "Prašome įvesti puslapio pavadinimą.",
+ "tpt-translate-title": "Leisti puslapio pavadinimo vertimus",
+ "pp-save-summary": "Puslapis paruoštas vertimui",
+ "pagepreparation": "Paruošti puslapį vertimui",
+ "pp-pagename-placeholder": "Įveskite puslapio pavadinimą",
+ "pp-prepare-button-label": "Paruošti",
+ "pp-save-button-label": "Išsaugoti",
+ "pp-cancel-button-label": "Atšaukti",
+ "pp-save-message": "Puslapis buvo išsaugotas. Galite jį [$1 redaguoti].",
+ "pp-pagename-missing": "Prašome įvesti puslapio pavadinimą.",
+ "pp-diff-old-header": "Šaltinio tekstas",
+ "pp-diff-new-header": "Paruoštas tekstas",
+ "tpt-unlink-button": "Pašalinti iš vertimo",
+ "tpt-unlink-summary": "Puslapis pašalintas iš vertimo",
+ "tpt-generic-confirm": "Prašome patvirtinti šį veiksmą.",
+ "tpt-generic-button": "Patvirtinti"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/lv.json b/MLEB/Translate/i18n/pagetranslation/lv.json
index a4ac2ff8..d4dc7904 100644
--- a/MLEB/Translate/i18n/pagetranslation/lv.json
+++ b/MLEB/Translate/i18n/pagetranslation/lv.json
@@ -7,9 +7,6 @@
"pagetranslation": "Lapas tulkošana",
"right-pagetranslation": "Atzīmēt lapu versijas tulkošanai",
"action-pagetranslation": "pārvaldīt tulkojamās lapas",
- "tpt-desc": "Paplašinājums satura lapu tulkošanai",
- "tpt-template": "Lapas veidne",
- "tpt-templatediff": "Lapas veidne tika izmainīta.",
"tpt-diff-old": "Iepriekšējais teksts",
"tpt-diff-new": "Jaunais teksts",
"tpt-submit": "Atzīmēt šo versiju tulkošanai",
@@ -18,14 +15,19 @@
"tpt-select-prioritylangs-reason": "Iemesls:",
"tpt-sections-prioritylangs": "Prioritārās valodas",
"translate-tag-translate-link-desc": "Tulkot šo lapu",
+ "translate-tag-markthis": "Atzīmēt šo lapu tulkošanai",
"tpt-translation-intro": "Šī lapa ir <span class=\"plainlinks\">[$1 tulkota versija]</span> no lapas [[$2]] un tulkojums ir pabeigts par $3%.",
"tpt-languages-legend": "Citas valodas:",
+ "tpt-languages-nonzero": "$1 ($2% iztulkots)",
"tpt-tab-translate": "Tulkot",
"tpt-discouraged-language-reason": "Iemesls: $1",
"tpt-aggregategroup-add": "Pievienot",
"tpt-aggregategroup-save": "Saglabāt",
"tpt-aggregategroup-new-name": "Nosaukums:",
"tpt-aggregategroup-new-description": "Apraksts (nav obligāts):",
+ "tpt-aggregategroup-update": "Saglabāt",
+ "tpt-aggregategroup-update-cancel": "Atcelt",
+ "tpt-invalid-group": "Nederīga grupa",
"log-name-pagetranslation": "Lapu tulkošanas žurnāls",
"pt-movepage-list-pages": "Pārvietojamo lapu saraksts",
"pt-movepage-list-translation": "Tulkojuma {{PLURAL:$1|lapas|lapa|lapas}}",
@@ -37,13 +39,12 @@
"pt-movepage-action-check": "Pārbaudīt, vai ir iespējams pārvietot",
"pt-movepage-action-perform": "Nepārvietot",
"pt-movepage-action-other": "Mainīt mērķi",
- "pt-movepage-logreason": "Daļa no tulkojamas lapas $1.",
+ "pt-movepage-logreason": "Daļa no tulkojamas lapas \"$1\"",
"pt-deletepage-current": "Lapas nosaukums:",
"pt-deletepage-reason": "Iemesls:",
"pt-deletepage-subpages": "Dzēst visas apakšlapas",
"pt-deletepage-list-pages": "Dzēšamo lapu saraksts",
"pt-deletepage-list-translation": "Tulkojuma lapas",
"pt-deletepage-list-other": "Citas apakšlapas",
- "pm-langcode-placeholder": "Valodas kods",
"pp-cancel-button-label": "Atcelt"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/lzh.json b/MLEB/Translate/i18n/pagetranslation/lzh.json
index 689b8acc..ca2e1f27 100644
--- a/MLEB/Translate/i18n/pagetranslation/lzh.json
+++ b/MLEB/Translate/i18n/pagetranslation/lzh.json
@@ -2,9 +2,11 @@
"@metadata": {
"authors": [
"Yanteng3",
- "StephDC"
+ "StephDC",
+ "SolidBlock"
]
},
+ "tpt-languages-nonzero": "$1($2%已翻譯)",
"tpt-aggregategroup-save": "存",
"pm-old-translations-missing": "$1 不含旧譯。"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/mai.json b/MLEB/Translate/i18n/pagetranslation/mai.json
index 9ebdc6bf..8168f02e 100644
--- a/MLEB/Translate/i18n/pagetranslation/mai.json
+++ b/MLEB/Translate/i18n/pagetranslation/mai.json
@@ -4,5 +4,5 @@
"बिप्लब आनन्द"
]
},
- "tpt-languages-nonzero": "$1 ($2% अनूदित)"
+ "tpt-languages-nonzero": "$1 ($2% अनुवादित)"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/mg.json b/MLEB/Translate/i18n/pagetranslation/mg.json
index 06c6efd2..64b87cb7 100644
--- a/MLEB/Translate/i18n/pagetranslation/mg.json
+++ b/MLEB/Translate/i18n/pagetranslation/mg.json
@@ -4,5 +4,6 @@
"Jagwar"
]
},
- "right-pagetranslation": "Mamamarika ny santiônam-pejy hodikaina"
+ "right-pagetranslation": "Mamamarika ny santiônam-pejy hodikaina",
+ "tpt-languages-nonzero": "$1 (voadika $2%)"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/mk.json b/MLEB/Translate/i18n/pagetranslation/mk.json
index ad7f7980..6d287e31 100644
--- a/MLEB/Translate/i18n/pagetranslation/mk.json
+++ b/MLEB/Translate/i18n/pagetranslation/mk.json
@@ -8,12 +8,9 @@
"pagetranslation": "Превод на страници",
"right-pagetranslation": "Обележување на верзии на страници за преведување",
"action-pagetranslation": "раководење со преводливи страници",
- "tpt-desc": "Додаток за преведување на страници со содржини",
"tpt-section": "Преводна единица $1",
"tpt-section-new": "Нова преводна единица.\nНазив: $1",
"tpt-section-deleted": "Преводна единица $1",
- "tpt-template": "Шаблон за страница",
- "tpt-templatediff": "Шаблонот за страницата е променет.",
"tpt-diff-old": "Претходен текст.",
"tpt-diff-new": "Нов текст",
"tpt-submit": "Обележи ја оваа верзија на преводот",
@@ -27,10 +24,9 @@
"tpt-notsuitable": "Страницата $1 не е погодна за преведување.\nПроверете дали има ознаки <nowiki><translate></nowiki> и дали има правилна синтакса.",
"tpt-saveok": "Оваа страница [[:$1]] е обележана за преведување со $2 {{PLURAL:$2|преводна единица|преводни единици}}.\nСтраницата сега може да се <span class=\"plainlinks\">[$3 преведува]</span>.",
"tpt-offer-notify": "Можете да ги <span class=\"plainlinks\">[$1 известите преведувачите]</span> за оваа страница.",
- "tpt-badsect": "„$1“ е погрешно име за преводната единица $2.",
"tpt-showpage-intro": "Подолу се наведени нови, постоечки и избришани преводни единици.\nПред да ја обележите оваа верзија за преведување, проверете дали промените во деловите се сведени на минимум со што би се избегнала непотреба работа за преведувачите.",
"tpt-mark-summary": "Ја означи оваа верзија за преведување",
- "tpt-mark-nochanges": "Нема никаква разлика помеѓу оваа и последноозначената преработка.",
+ "tpt-mark-nochanges": "Нема промени за оценување. Ако ја означите страницава за преведување, истата нема да можете да ја измените, а истото важи за било која друга постоечка преводна единица.",
"tpt-edit-failed": "Не можев да ја обновам страницата: $1",
"tpt-duplicate": "Името $1 се користи кај повеќе од една преводна единица.",
"tpt-already-marked": "Најновата верзија на оваа страница е веќе обележана за преведување.",
@@ -61,6 +57,7 @@
"translate-tag-markthisagain": "Оваа страница има <span class=\"plainlinks\">[$1 промени]</span> од последниот пат кога <span class=\"plainlinks\">[$2 обележана за преведување]</span>.",
"translate-tag-hasnew": "Оваа страница содржи <span class=\"plainlinks\">[$1 промени]</span> кои не се обележани за преведување.",
"tpt-translation-intro": "Оваа страница е <span class=\"plainlinks\">[$1 преведена верзија]</span> на страницата [[$2]], а преводот е $3% потполн и тековен.",
+ "tpt-translation-intro-fuzzy": "Застарените преводи се обележуваат вака.",
"tpt-languages-legend": "Други јазици:",
"tpt-languages-separator": "&#160;•&#32;",
"tpt-languages-zero": "Почнете превод на овој јазик",
@@ -79,7 +76,6 @@
"tpt-discouraged-language-reason": "Причина: $1",
"tpt-priority-languages": "Преводен администратор на групата ѝ ги зададе приоритетните јазици: $1.",
"tpt-render-summary": "Обнова за усогласување со новата верзија на изворната страница",
- "tpt-download-page": "Извези страница со преводи",
"aggregategroups": "Збирни групи",
"tpt-aggregategroup-add": "Додај",
"tpt-aggregategroup-save": "Зачувај",
@@ -102,7 +98,7 @@
"log-description-pagetranslation": "Дневник на дејства кои се однесуваат на системот за превод на страници",
"log-name-pagetranslation": "Дневник на преводи на страници",
"logentry-pagetranslation-mark": "$1 {{GENDER:$2|ја означи}} $3 за преведување",
- "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|ја отстрани}} $3 од преведувањето",
+ "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|ја отстрани}} $3 од преводниот систем",
"logentry-pagetranslation-moveok": "$1 {{GENDER:$2|го заврши}} преименувањето на преводливата страница $3 во $4",
"logentry-pagetranslation-movenok": "$1 {{GENDER:$2|наиде}} на проблем при преместувањето на страницата $3 на $4",
"logentry-pagetranslation-deletefok": "$1 {{GENDER:$2|го заврши}} бришењето на преводливата страница $3",
@@ -116,6 +112,15 @@
"logentry-pagetranslation-prioritylanguages-force": "$1 {{GENDER:$2|ги ограничи}} јазиците на преводливата страница $3 на $5",
"logentry-pagetranslation-associate": "$1 {{GENDER:$2|ја додаде}} преводливата страница $3 во збирната група $4",
"logentry-pagetranslation-dissociate": "$1 {{GENDER:$2|ја острани}} преводливата страница $3 од збирната група $4",
+ "log-action-filter-pagetranslation": "Вид дејство:",
+ "log-action-filter-pagetranslation-mark": "Означување за преведување",
+ "log-action-filter-pagetranslation-unmark": "Отстранување од превод",
+ "log-action-filter-pagetranslation-move": "Преместување на страници",
+ "log-action-filter-pagetranslation-delete": "Бришење страници",
+ "log-action-filter-pagetranslation-encourage": "Поттик за преведување",
+ "log-action-filter-pagetranslation-discourage": "Одвраќање од преведување",
+ "log-action-filter-pagetranslation-prioritylanguages": "Менување на приоритетни јазици",
+ "log-action-filter-pagetranslation-aggregategroups": "Менување на збирни групи",
"pt-movepage-title": "Преместување на преводливата страница $1",
"pt-movepage-blockers": "Преводливата страница не може да се премести на нов наслов заради {{PLURAL:$1|следнава грешка|следниве грешки}}:",
"pt-movepage-block-base-exists": "Целната преводлива страница „[[:$1]]“ постои.",
@@ -140,11 +145,11 @@
"pt-movepage-action-perform": "Изврши преместување",
"pt-movepage-action-other": "Смени цел",
"pt-movepage-intro": "Оваа службена страница ви овозможува да преместувате страници обележани за преведување.\nСамото преместување нема да се случи веднаш, бидејќи треба да се преместат голем број на страници.\nПреместувањето ќе се води по редица на задачи.\nДодека се преместуваат страниците, со нив нема да може да се работи.\nНеуспешните ќе бидат заведени во [[Special:Log/pagetranslation|дневникот на преводи на страници]] и тие ќе треба да се поправаат рачно.",
- "pt-movepage-logreason": "Дел од преводливата страница $1.",
- "pt-movepage-started": "Страницата сега е преместена.\nПроверете дали [[Special:Log/pagetranslation|дневникот на преводи на страници]] има пријавено грешки и порака за завршена задача.",
+ "pt-movepage-logreason": "Дел од преводливата страница „$1“.",
+ "pt-movepage-started": "Погледајте го [[Special:Log/pagetranslation|дневникот со преводи на страници]] за грешки и порака при завршувањето.",
"pt-locked-page": "Оваа страница е заклучена бидејќи е во тек преместување на преводлива страница.",
- "pt-deletepage-lang-title": "Бришење на страницата со превод $1.",
- "pt-deletepage-full-title": "Бришење на преводливата страница $1.",
+ "pt-deletepage-lang-title": "Бришење на страницата со превод „$1“.",
+ "pt-deletepage-full-title": "Бришење на преводливата страница „$1“.",
"pt-deletepage-invalid-title": "Наведената страница е неважечка.",
"pt-deletepage-invalid-text": "Наведената страница не е преводлива, ниту пак страница за преведување.",
"pt-deletepage-action-check": "Список на страници за бришење",
@@ -161,8 +166,8 @@
"pt-deletepage-list-section": "Страници за преводни единици",
"pt-deletepage-list-other": "Други потстраници",
"pt-deletepage-list-count": "Вкупно $1 {{PLURAL:$1|страница|страници}} за бришење.",
- "pt-deletepage-full-logreason": "Дел од преводливата страница $1.",
- "pt-deletepage-lang-logreason": "Дел од страницата со превод $1.",
+ "pt-deletepage-full-logreason": "Дел од преводливата страница „$1“.",
+ "pt-deletepage-lang-logreason": "Дел од страницата со превод „$1“.",
"pt-deletepage-started": "Погледајте го [[Special:Log/pagetranslation|дневникот со преводи на страници]] за грешки и порака при завршувањето.",
"pt-deletepage-intro": "Оваа службена страница овозможува бришење на цела преводлива страница или поединечна страница за превод на некој јазик.\nБришењето не делува веднаш, бидејќи ќе се бришат и сите страници што зависат од неа.\nНеуспешните обиди ќе се заведуваат во [[Special:Log/pagetranslation|дневникот на страници за превод]] и ќе треба да се исправаат рачно.",
"pagemigration": "Селење на преводни страници",
@@ -170,18 +175,20 @@
"pm-import-button-label": "Увези",
"pm-savepages-button-label": "Зачувај",
"pm-cancel-button-label": "Откажи",
- "pm-pagename-placeholder": "Внесете име на страницата",
- "pm-langcode-placeholder": "Јазичен код",
"pm-page-does-not-exist": "$1 не постои",
"pm-old-translations-missing": "$1 не содржи стари преводи",
"pm-extra-units-warning": "Може да има дополнителни единици. Погрижете се да соодветствуваат единиците во изворниот текст и преводот",
"pm-pagename-missing": "Внесете име на страница",
- "pm-langcode-missing": "Внесете јазичен код",
"pm-add-icon-hover-text": "Додај единица подолу",
"pm-swap-icon-hover-text": "Замени ја единицата подолу",
"pm-delete-icon-hover-text": "Избриши единица",
- "pm-pagetitle-invalid": "Внесетре важечки наслов на страницата",
+ "pm-pagetitle-placeholder": "Внесете има на страницата",
+ "pm-pagetitle-invalid": "Внесетре важечки наслов на страницата. Треба да биде во форматот <page-name>/<language-code>.",
+ "pm-pagetitle-missing": "Внесете име на страница.",
+ "pm-langcode-missing": "Во насловот недостасува јазичниот код. Внесете наслов во форматот <page-name>/<language-code>.",
"pm-summary-import": "Увезен превод користејќи [[Special:PageMigration|преселба на страници]]",
+ "pm-on-import-message-text": "Старите преводи се увезени. Послужете се со можностите за додавање, замена и бришење за да ги прилагодите преводните единици и стиснете на копчето „{{int:pm-savepages-button-label}}“ за да ги зачувате. Стиснете на копчето „{{int:pm-cancel-button-label}}“ за да ги отфрлите.",
+ "pm-on-save-message-text": "Преводните единици се зачувани. Сега можете да внесете наслов на новата преводна страница за да ја преселите, или да направите измени во единиците подолу и да зачувате нова преработка.",
"tpt-translate-title": "Дозволи превод на насловот на страницата",
"pp-save-summary": "Подготвена страница за превод",
"pagepreparation": "Подготвена страница за превод",
@@ -197,5 +204,7 @@
"pp-diff-new-header": "Подготвен текст",
"tpt-unlink-confirm": "Потврдете дека навистина сакате да ја отстраните страницава од преводниот систем.\nЈазичниот избирач и преведените имиња на страниците ќе престанат да работат.\nПреводните страници ќе станат уредливи.",
"tpt-unlink-button": "Отстрани од преводот",
- "tpt-unlink-summary": "Отстранета страница од преводот"
+ "tpt-unlink-summary": "Отстранета страница од преводот",
+ "tpt-generic-confirm": "Потврдете го дејството.",
+ "tpt-generic-button": "Потврди"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/ml.json b/MLEB/Translate/i18n/pagetranslation/ml.json
index a47b1043..06f9544a 100644
--- a/MLEB/Translate/i18n/pagetranslation/ml.json
+++ b/MLEB/Translate/i18n/pagetranslation/ml.json
@@ -9,12 +9,9 @@
"pagetranslation": "താളിന്റെ പരിഭാഷ",
"right-pagetranslation": "താളുകളുടെ പതിപ്പുകൾ പരിഭാഷക്കായി അടയാളപ്പെടുത്തുക",
"action-pagetranslation": "പരിഭാഷപ്പെടുത്താവുന്ന താളുകൾ കൈകാര്യം ചെയ്യുക",
- "tpt-desc": "ഉള്ളടക്ക താളുകൾ പരിഭാഷപ്പെടുത്തുന്നതിനുള്ള അനുബന്ധം",
"tpt-section": "പരിഭാഷാ ഘടകം $1",
"tpt-section-new": "പുതിയ പരിഭാഷാ ഘടകം.\nപേര്: $1",
"tpt-section-deleted": "പരിഭാഷാ ഘടകം $1",
- "tpt-template": "താൾ ഫലകം",
- "tpt-templatediff": "താളിന്റെ ഘടന മാറിയിരിക്കുന്നു.",
"tpt-diff-old": "പഴയ എഴുത്ത്",
"tpt-diff-new": "പുതിയ എഴുത്ത്",
"tpt-submit": "ഈ പതിപ്പ് പരിഭാഷയ്ക്കായി അടയാളപ്പെടുത്തുക",
diff --git a/MLEB/Translate/i18n/pagetranslation/mr.json b/MLEB/Translate/i18n/pagetranslation/mr.json
index c08837e8..d3daab6e 100644
--- a/MLEB/Translate/i18n/pagetranslation/mr.json
+++ b/MLEB/Translate/i18n/pagetranslation/mr.json
@@ -9,25 +9,22 @@
"pagetranslation": "भाषांतराची पाने.",
"right-pagetranslation": "पानांच्या भाषांतरासाठी असलेल्या आवृत्त्यांवर खूण करा",
"action-pagetranslation": "भाषांतरासाठी असलेल्या पानांचे व्यवस्थापन करा",
- "tpt-desc": "आशय-पानांच्या भाषांतरासाठी असलेले विस्तारक",
"tpt-section": "भाषांतर एकक $1",
"tpt-section-new": "नविन भाषांतर एकक.\nनाव:$1",
"tpt-section-deleted": "भाषांतर एकक $1",
- "tpt-template": "पृष्ठ साचा",
- "tpt-templatediff": "पृष्ठ साचा बदलला आहे.",
"tpt-diff-old": "पूर्वीचा मजकूर",
"tpt-diff-new": "नविन मजकूर",
"tpt-submit": "या आवृत्तीस 'भाषांतरासाठी' म्हणून खूण करा",
"tpt-sections-oldnew": "नविन व अस्तित्वातील भाषांतर एकके",
"tpt-sections-deleted": "वगळलेली भाषांतर एकके",
"tpt-sections-template": "भाषांतर पान साचा",
+ "tpt-action-nofuzzy": "भाषांतरे अवैध ठरवू नका",
"tpt-badtitle": "दिलेले पान शीर्षक ($1) हे वैध नाही.",
"tpt-nosuchpage": "पान $1 अस्तीत्वात नाही",
"tpt-oldrevision": "$2 ही [[:$1]] पानाची नविनतम आवृत्ती नाही.\nफक्त अद्यतन आवृत्तीवरच 'भाषांतरासाठी' म्हणून खूण करता येते.",
"tpt-notsuitable": "पान $1 हे भाषांतरासाठी अनुकुल नाही.\nयाची खात्री करा कि त्यात,<nowiki><translate></nowiki>ही खूणपताका आहे व त्यात वैध वाक्यरचना आहे.",
"tpt-saveok": "पान [[:$1]] हे $2 {{PLURAL:$2|भाषांतर एककाला|भाषांतर एककांना}} भाषांतरासाठी नेमून दिले आहे.त्या पानाचे आता<span class=\"plainlinks\">[$3 भाषांतर करता येते]</span>.",
"tpt-offer-notify": "आपण या पानाबाबत <span class=\"plainlinks\">[$1 भाषांतरकारांना सूचना देउ शकता]</span>",
- "tpt-badsect": "\"$1\" हे भाषांतर एकक $2 साठी वैध नाव नाही.",
"tpt-showpage-intro": "खाली नविन, अस्तित्वातील व वगळलेली भाषांतर एककांची यादी आहे.ही आवृत्ती भाषांतरासाठी म्हणून खूण करण्यापूर्वी,भाषांतरकारांचे अवाजवी काम टाळण्यासाठी, हे तपासा कि भाषांतर एककात कमीतकमी बदल आहेत.",
"tpt-mark-summary": "या आवृत्तीवर 'भाषांतरासाठी' म्हणून खूण केली",
"tpt-edit-failed": "पानाचे अद्यतन करता आले नाही:$1",
@@ -59,15 +56,32 @@
"translate-tag-markthis": "या पानास 'भाषांतरासाठी' म्हणून खूण करा",
"tpt-languages-legend": "इतर भाषा:",
"tpt-languages-zero": "या भाषेत भाषांतर सुरू करा",
+ "tpt-languages-nonzero": "$1 ($2% भाषांतरीत)",
"tpt-tab-translate": "भाषांतर करा",
+ "tpt-patrolling-blocked": "या पानावर पहारा देता येणार नाही,त्याऐवजी,याचे पुनरावलोकन करण्यास भाषांतर क्रिया वापरा.",
"tpt-translation-restricted": "या पानाच्या या भाषेतील भाषांतरास, भाषांतर प्रशासकाने अटकाव केलेला आहे.\n\nकारण:$1",
+ "tpt-discouraged-language-force-header": "या पानाचे $1 ला भाषांतर होउ शकत नाही.",
+ "tpt-discouraged-language-force-content": "भाषांतर प्रशासकाने, या पानाचे $1 ला भाषांतर करण्याचे ठरविले आहे.",
+ "tpt-discouraged-language-header": "$1 ला भाषांतर करणे ही या पानाची प्राथमिकता नाही.",
+ "tpt-discouraged-language-content": "भाषांतर प्रशासकाने भाषांतराचे प्रयत्न $1 वर केंद्रित करण्याचे ठरविले आहे.",
"tpt-discouraged-language-force": "<strong>हे पान $2 भाषेत भाषांतरीत करता येणार नाही.</strong>भाषांतर प्रशासकाने निर्णय घेतला आहे कि या पानाचे भाषांतर फक्त $3 मध्ये करता येईल.",
"tpt-discouraged-language": "<strong>$2 मधील भाषांतर या पानाची प्राथमिकता नाही.</strong>$3 वर भाषांतरासाठीचे प्रयत्न केंद्रित करण्याचा भाषांतर प्रशासकाने निर्णय घेतला आहे.",
"tpt-discouraged-language-reason": "कारण:$1",
+ "tpt-priority-languages": "भाषांतर प्रशासकाने, या गटाची $1 ही प्राथमिकता-भाषा निश्चित केली आहे.",
+ "tpt-render-summary": "स्रोत-पानाच्या नविन आवृत्तीस अनुरुपनासाठी अद्यतन करीत आहे.",
+ "aggregategroups": "एकवित गट",
"tpt-aggregategroup-add": "जोडा",
"tpt-aggregategroup-save": "जतन करा",
+ "tpt-aggregategroup-add-new": "नविन एकवित गट जोडा",
"tpt-aggregategroup-new-name": "नाव:",
"tpt-aggregategroup-new-description": "वर्णन (ऐच्छिक):",
+ "tpt-aggregategroup-remove-confirm": "आपणास खात्री आहे काय कि आपणास हा एकवित गट वगळायचा आहे?",
+ "tpt-aggregategroup-invalid-group": "गट अस्तित्वात नाही",
+ "tpt-aggregategroup-edit-name": "नाव:",
+ "tpt-aggregategroup-edit-description": "वर्णन:",
+ "tpt-aggregategroup-update": "जतन करा",
+ "tpt-aggregategroup-update-cancel": "रद्द करा",
+ "tpt-invalid-group": "अग्राह्य गट",
"log-name-pagetranslation": "पान भाषांतर नोंदी",
"pt-movepage-list-pages": "स्थानांतर आवश्यक असणाऱ्या पानांची यादी",
"pt-movepage-current": "सध्याचे नाव:",
@@ -91,10 +105,24 @@
"pm-import-button-label": "आयात करा",
"pm-savepages-button-label": "जतन करा",
"pm-cancel-button-label": "रद्द करा",
- "pm-pagename-placeholder": "पानाचे नाव टाका",
- "pm-langcode-placeholder": "भाषा संकेत (कोड)",
"pm-page-does-not-exist": "$1 अस्तीत्वात नाही",
"pm-old-translations-missing": "$1 मध्ये जूनी भाषांतरे नाहीत",
"pm-pagename-missing": "कृपया पानाचे नाव टाका",
- "pm-langcode-missing": "कृपया भाषासंकेत टाका"
+ "pm-add-icon-hover-text": "खाली एकक जोडा",
+ "pm-delete-icon-hover-text": "एकक वगळा",
+ "pm-pagetitle-invalid": "कृपया वैध पान शिर्षक टाका",
+ "pm-langcode-missing": "कृपया भाषासंकेत टाका",
+ "tpt-translate-title": "पान शिर्षकाच्या भाषांतरास परवानगी द्या",
+ "pp-save-summary": "भाषांतरासाठी पान तयार केले",
+ "pagepreparation": "भाषांतरासाठी पान तयार करा",
+ "pp-pagename-placeholder": "पानाचे नाव टाका",
+ "pp-prepare-button-label": "तयार करा",
+ "pp-save-button-label": "जतन करा",
+ "pp-cancel-button-label": "रद्द करा",
+ "pp-save-message": "पान जतन केले आहे. आपण [$1 संपादन] करू शकता.",
+ "pp-pagename-missing": "कृपया पानाचे नाव टाका.",
+ "pp-diff-old-header": "स्रोत मजकूर",
+ "pp-diff-new-header": "तयार केलेला मजकूर",
+ "tpt-unlink-button": "भाषांतरातून काढा",
+ "tpt-unlink-summary": "पानास भाषांतरातून काढले"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/ms.json b/MLEB/Translate/i18n/pagetranslation/ms.json
index 6dd5c013..05095f38 100644
--- a/MLEB/Translate/i18n/pagetranslation/ms.json
+++ b/MLEB/Translate/i18n/pagetranslation/ms.json
@@ -2,18 +2,17 @@
"@metadata": {
"authors": [
"Anakmalaysia",
- "Pizza1016"
+ "Pizza1016",
+ "Muhdnurhidayat",
+ "Jeluang Terluang"
]
},
"pagetranslation": "Penterjemahan laman",
"right-pagetranslation": "Menandai versi-versi laman untuk diterjemah",
"action-pagetranslation": "menguruskan halaman-halaman yang boleh diterjemah",
- "tpt-desc": "Sambungan untuk menterjemah laman-laman kandungan",
"tpt-section": "Unit penterjemahan $1",
"tpt-section-new": "Unit penterjemahan baru.\nNama: $1",
"tpt-section-deleted": "Unit penterjemahan $1",
- "tpt-template": "Templat laman",
- "tpt-templatediff": "Templat laman telah berubah.",
"tpt-diff-old": "Teks sebelumnya",
"tpt-diff-new": "Teks baru",
"tpt-submit": "Tandai versi ini untuk diterjemah",
@@ -27,7 +26,6 @@
"tpt-notsuitable": "Laman $1 tidak sesuai untuk diterjemah.\nPastikan ia ada tag <nowiki><translate></nowiki> dan sintaks yang sah.",
"tpt-saveok": "Laman [[:$1]] telah ditandai untuk penterjemahan dengan $2 unit penterjemahan.\nLaman ini kini boleh <span class=\"plainlinks\">[$3 diterjemah]</span>.",
"tpt-offer-notify": "Anda boleh <span class=\"plainlinks\">[$1 memaklumkan para penterjemah]</span> tentang halaman ini.",
- "tpt-badsect": "\"$1\" bukan nama yang sah untuk unit penterjemahan $2.",
"tpt-showpage-intro": "Di bawah tersenarainya unit-unit terjemahan yang baru, sedia ada dan terhapus.\nSebelum menandai versi ini untuk diterjemah, pastikan supaya perubahan kepada unit terjemahan diminimumkan untuk mengelakkan beban yang tidak perlu untuk penterjemah.",
"tpt-mark-summary": "Menandakan versi ini untuk diterjemah",
"tpt-mark-nochanges": "Tiada perbezaan antara semakan ini dengan semakan tertanda yang terdahulu.",
@@ -61,6 +59,7 @@
"translate-tag-markthisagain": "Laman ini mengalami <span class=\"plainlinks\">[$1 perubahan]</span> sejak kali terakhir <span class=\"plainlinks\">[$2 ditandai untuk diterjemah]</span>.",
"translate-tag-hasnew": "Laman ini mengalami <span class=\"plainlinks\">[$1 perubahan]</span> yang belum ditandai untuk diterjemah.",
"tpt-translation-intro": "Laman ini merupakan <span class=\"plainlinks\">[$1 versi terjemahan]</span> laman [[$2]] dan penterjemahannya $3% siap.",
+ "tpt-translation-intro-fuzzy": "Terjemahan yang lapuk ditandai sebegini.",
"tpt-languages-legend": "Bahasa lain:",
"tpt-languages-separator": "&#160;•&#32;",
"tpt-languages-zero": "Mulakan terjemahan dalam bahasa ini",
@@ -78,7 +77,6 @@
"tpt-discouraged-language-reason": "Sebab: $1",
"tpt-priority-languages": "Seorang penyelia penterjemahan telah menetapkan bahasa-bahasa utama kumpulan ini kepada: $1",
"tpt-render-summary": "Mengemas kini agar sepadan dengan versi baru laman sumber",
- "tpt-download-page": "Eksport laman dengan terjemahan",
"aggregategroups": "Kumpulan agregat",
"tpt-aggregategroup-add": "Tambahkan",
"tpt-aggregategroup-save": "Simpan",
@@ -117,7 +115,7 @@
"pt-movepage-block-tp-exists": "Laman penterjemahan sasaran [[:$2]] wujud.",
"pt-movepage-block-tp-invalid": "Tajuk laman penterjemahan sasaran untuk [[:$1]] adalah tidak sah (terlalu panjang?).",
"pt-movepage-block-section-exists": "Halaman sasaran \"[[:$2]]\" untuk unit terjemahan itu wujud.",
- "pt-movepage-block-section-invalid": "Tajuk halaman sasaran \"[[:$1]]\" untuk unit terjemahan adalah itu tidak sah (terlalu panjang?).",
+ "pt-movepage-block-section-invalid": "Tajuk halaman sasaran \"[[:$1]]\" untuk unit terjemahan itu adalah tidak sah (terlalu panjang?).",
"pt-movepage-block-subpage-exists": "Sublaman sasaran [[:$2]] wujud.",
"pt-movepage-block-subpage-invalid": "Tajuk sublaman sasaran untuk [[:$1]] adalah tidak sah (terlalu panjang?).",
"pt-movepage-list-pages": "Senarai laman untuk dipindahkan",
@@ -135,7 +133,7 @@
"pt-movepage-action-other": "Tukar sasaran",
"pt-movepage-intro": "Laman khas ini membolehkan anda untuk memindahkan laman-laman yang ditandai untuk diterjemah.\nTindakan pemindahan itu tidak meninggalkan kesan segera, kerana banyak laman yang perlu dipindahkan.\nSementara laman-laman berkenaan dipindahkan, anda tidak boleh berinteraksi dengan laman-laman yang terlibat.\nKegagalan akan dilogkan dalam [[Special:Log/pagetranslation|log penterjemahan laman]] dan perlu dibaiki dengan tangan.",
"pt-movepage-logreason": "Sebahagian laman boleh terjemah $1.",
- "pt-movepage-started": "Laman asas kini telah dipindahkan.\nSila periksa [[Special:Log/pagetranslation|log penterjemahan laman]] untuk ralat dan mesej penyiapan.",
+ "pt-movepage-started": "Sila periksa [[Special:Log/pagetranslation|log penterjemahan laman]] sekali-sekala untuk ralat dan mesej penyiapan.",
"pt-locked-page": "Laman ini dikunci kerana laman boleh terjemah yang terlibat kini sedang dipindahkan.",
"pt-deletepage-lang-title": "Menghapuskan laman penterjemahan $1.",
"pt-deletepage-full-title": "Menghapuskan laman boleh terjemah $1.",
diff --git a/MLEB/Translate/i18n/pagetranslation/myv.json b/MLEB/Translate/i18n/pagetranslation/myv.json
index 997db250..c1119612 100644
--- a/MLEB/Translate/i18n/pagetranslation/myv.json
+++ b/MLEB/Translate/i18n/pagetranslation/myv.json
@@ -1,11 +1,13 @@
{
"@metadata": {
"authors": [
- "Botuzhaleny-sodamo"
+ "Botuzhaleny-sodamo",
+ "Rueter"
]
},
"tpt-diff-old": "Икелень текст",
"tpt-diff-new": "Од текст",
"translate-tag-translate-link-desc": "Йутавтык те лопанть",
- "tpt-languages-legend": "Лия кельтне:"
+ "tpt-languages-legend": "Лия кельтне:",
+ "tpt-languages-nonzero": "$1 ($2% ютавтозь)"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/nah.json b/MLEB/Translate/i18n/pagetranslation/nah.json
index aae59153..cffef11f 100644
--- a/MLEB/Translate/i18n/pagetranslation/nah.json
+++ b/MLEB/Translate/i18n/pagetranslation/nah.json
@@ -1,8 +1,12 @@
{
"@metadata": {
"authors": [
- "Fluence"
+ "Fluence",
+ "Akapochtli"
]
},
- "translate-tag-translate-link-desc": "Tictlahtōlcuepāz inīn zāzanilli"
+ "translate-tag-translate-link-desc": "Tictlahtōlcuepāz inīn zāzanilli",
+ "tpt-aggregategroup-update-cancel": "Moxitiniz",
+ "pm-cancel-button-label": "Moxitiniz",
+ "pp-cancel-button-label": "Moxitiniz"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/nb.json b/MLEB/Translate/i18n/pagetranslation/nb.json
index 5107c096..d8ea329e 100644
--- a/MLEB/Translate/i18n/pagetranslation/nb.json
+++ b/MLEB/Translate/i18n/pagetranslation/nb.json
@@ -6,18 +6,16 @@
"Nghtwlkr",
"Njardarlogar",
"Purodha",
- "Danmichaelo"
+ "Danmichaelo",
+ "Jon Harald Søby"
]
},
"pagetranslation": "Sideoversetting",
"right-pagetranslation": "Merk versjoner av sider for oversettelse",
"action-pagetranslation": "behandle oversettbare sider",
- "tpt-desc": "Utvidelse for oversetting av innholdssider",
"tpt-section": "Oversettelsesenhet $1",
"tpt-section-new": "Ny oversettelsesenhet.\nNavn: $1",
"tpt-section-deleted": "Oversettelsesenhet $1",
- "tpt-template": "Sidemal",
- "tpt-templatediff": "Sidemalen har blitt endret.",
"tpt-diff-old": "Forrige tekst",
"tpt-diff-new": "Ny tekst",
"tpt-submit": "Marker denne versjonen for oversetting",
@@ -31,9 +29,9 @@
"tpt-notsuitable": "Side $1 er ikke egnet for oversettelse.\nSjekk at siden har <nowiki><translate></nowiki>-merket og har en gyldig syntaks.",
"tpt-saveok": "Siden [[:$1]] har blitt markert for oversettelse med {{PLURAL:$2|én oversettelsesenhet|$2 oversettelsesenheter}}.\nDen kan nå <span class=\"plainlinks\">[$3 oversettes]</span>.",
"tpt-offer-notify": "Du kan <span class=\"plainlinks\">[$1 varsle oversettere]</span> om denne siden.",
- "tpt-badsect": "«$1» er ikke et gyldig navn for oversettelsesenheten $2.",
"tpt-showpage-intro": "Nedenfor listes nye, eksisterende og slettede avsnitt opp.\nFør denne versjonen merkes for oversettelse, sjekk at endringene i avsnittene er minimert for å unngå unødvendig arbeid for oversetterne.",
"tpt-mark-summary": "Markerte denne versjonen for oversettelse",
+ "tpt-mark-nochanges": "Ingen endringer å godkjenne. Å markere denne siden for oversettelse vil ikke ridegere siden eller noen eksisterende oversettelsesenheter.",
"tpt-edit-failed": "Kunne ikke oppdatere siden: $1",
"tpt-duplicate": "Oversettelsens enhetsnavn $1 er brukt mer enn en gang.",
"tpt-already-marked": "Den siste versjonen av denne siden har allerede blitt markert for oversettelse.",
@@ -64,11 +62,13 @@
"translate-tag-markthisagain": "Denne siden har hatt <span class=\"plainlinks\">[$1 endringer]</span> siden den sist ble <span class=\"plainlinks\">[$2 markert for oversettelse]</span>.",
"translate-tag-hasnew": "Denne siden inneholder <span class=\"plainlinks\">[$1 endringer]</span> som ikke har blitt markert for oversettelse.",
"tpt-translation-intro": "Denne siden er en <span class=\"plainlinks\">[$1 oversatt versjon]</span> av siden [[$2]] og oversettelsen er $3 % ferdig.",
+ "tpt-translation-intro-fuzzy": "Utdaterte oversettelser er markert på denne måten.",
"tpt-languages-legend": "Andre språk:",
"tpt-languages-zero": "Begynn oversettelse for dette språket",
"tpt-languages-nonzero": "$1 ($2 % oversatt)",
"tpt-tab-translate": "Oversett",
"tpt-target-page": "Denne siden kan ikke oppdateres manuelt.\nDenne siden er en oversettelse av siden [[$1]] og oversettelsen kan bli oppdatert ved å bruke [$2 oversettelsesverktøyet].",
+ "tpt-patrolling-blocked": "Denne siden kan ikke patruljeres. Bruk i stedet oversettelseshandlingen for å godkjenne den.",
"tpt-unknown-page": "Dette navnerommet er reservert for oversettelser av innholdssider.\nDenne siden som du prøver å redigere ser ikke ut til å samsvare med noen av sidene som er markert for oversettelse.",
"tpt-translation-restricted": "Oversettelse av denne siden til dette språket har blitt forhindret av en oversettelsesadministrator.\n\nÅrsak: $1",
"tpt-discouraged-language-force-header": "Denne siden kan ikke oversettes til $1.",
@@ -80,7 +80,6 @@
"tpt-discouraged-language-reason": "Årsak: $1",
"tpt-priority-languages": "En oversettelsesadministrator har satt prioritetsspråkene for denne gruppen til $1.",
"tpt-render-summary": "Oppdaterer for å svare til ny versjon av kildesiden",
- "tpt-download-page": "Eksporter side med oversettelser",
"aggregategroups": "Samlingsgrupper",
"tpt-aggregategroup-add": "Legg til",
"tpt-aggregategroup-save": "Lagre",
@@ -89,6 +88,11 @@
"tpt-aggregategroup-new-description": "Beskrivelse (valgfri):",
"tpt-aggregategroup-remove-confirm": "Er du sikker på at du ønsker å slette denne gruppa?",
"tpt-aggregategroup-invalid-group": "Gruppa eksisterer ikke",
+ "tpt-aggregategroup-edit-name": "Navn:",
+ "tpt-aggregategroup-edit-description": "Beskrivelse:",
+ "tpt-aggregategroup-update": "Lagre",
+ "tpt-aggregategroup-update-cancel": "Avbryt",
+ "tpt-invalid-group": "Ugyldig gruppe",
"pt-parse-open": "Ubalansert &lt;translate>-element.\nOversettelsesmal: <pre>$1</pre>",
"pt-parse-close": "Ubalansert &lt;/translate>-element.\nOversettelsesmal: <pre>$1</pre>",
"pt-parse-nested": "Nøstede &lt;translate>-seksjoner er ikke tillatt.\nElementtekst: <pre>$1</pre>",
@@ -100,12 +104,27 @@
"logentry-pagetranslation-mark": "$1 {{GENDER:$2|merket}} $3 for oversetting",
"logentry-pagetranslation-unmark": "$1 {{GENDER:$2|fjernet}} $3 fra oversetting",
"logentry-pagetranslation-moveok": "$1 {{GENDER:$2|fullførte}} flyttingen av den oversettbare siden $3 til $4",
- "logentry-pagetranslation-movenok": "$1 {{{{GENDER:$2|fant}} et problem under flyttingen av siden $3 til $4",
+ "logentry-pagetranslation-movenok": "$1 {{GENDER:$2|fant}} et problem under flyttingen av siden $3 til $4",
"logentry-pagetranslation-deletefok": "$1 {{GENDER:$2|fullførte}} slettingen av den oversettbare siden $3",
"logentry-pagetranslation-deletefnok": "$1 {{GENDER:$2|mislyktes}} i å slette $3 som tilhører den oversettbare siden $4",
"logentry-pagetranslation-deletelok": "$1 {{GENDER:$2|fullførte}} slettingen av oversettingssiden $3",
"logentry-pagetranslation-deletelnok": "$1 {{GENDER:$2|mislyktes}} i å slette $3 som tilhører oversettingssiden $4",
"logentry-pagetranslation-encourage": "$1 {{GENDER:$2|oppfordret}} til oversetting av $3",
+ "logentry-pagetranslation-discourage": "$1 {{GENDER:$2|frarådet}} oversettelse av $3",
+ "logentry-pagetranslation-prioritylanguages-unset": "$1 {{GENDER:$2|fjernet}} prioriterte språk fra den oversettbare siden $3",
+ "logentry-pagetranslation-prioritylanguages": "$1 {{GENDER:$2|satt}} prioriterte språk for den oversettbare siden $3 til $5",
+ "logentry-pagetranslation-prioritylanguages-force": "$1 {{GENDER:$2|begrenset}} språk for den oversettbare siden $3 til $5",
+ "logentry-pagetranslation-associate": "$1 {{GENDER:$2|la til}} den oversettbare siden $3 til aggregatgruppa $4",
+ "logentry-pagetranslation-dissociate": "$1 {{GENDER:$2|fjernet}} den oversettbare siden $3 fra aggregatgruppa $4",
+ "log-action-filter-pagetranslation": "Handlingstype:",
+ "log-action-filter-pagetranslation-mark": "Merk for oversettelse",
+ "log-action-filter-pagetranslation-unmark": "Fjerning fra oversettelse",
+ "log-action-filter-pagetranslation-move": "Sideflyttinger",
+ "log-action-filter-pagetranslation-delete": "Sideslettinger",
+ "log-action-filter-pagetranslation-encourage": "Oppmuntring til å oversette",
+ "log-action-filter-pagetranslation-discourage": "Fraråding fra å oversette",
+ "log-action-filter-pagetranslation-prioritylanguages": "Endring av prioriterne språk",
+ "log-action-filter-pagetranslation-aggregategroups": "Endring av aggregatgrupper",
"pt-movepage-title": "Flytt oversettbar side $1",
"pt-movepage-blockers": "Den oversettbare siden kan ikke flyttes til et nytt navn på grunn av følgende {{PLURAL:$1|feil}}:",
"pt-movepage-block-base-exists": "Måloversettelsessiden «[[:$1]]» eksisterer.",
@@ -130,11 +149,11 @@
"pt-movepage-action-perform": "Utfør flyttingen",
"pt-movepage-action-other": "Endre mål",
"pt-movepage-intro": "Denne spesialsiden tillater deg å flytte sider som er markert for oversettelse.\nFlyttehandlingen vil ikke skje umiddelbart fordi mange sider må flyttes.\nMens sidene flyttes er det ikke mulig å samhandle med gjeldende sider.\nFeil vil bli logget i [[Special:Log/pagetranslation|sideoversettelsesloggen]] og de må repareres for hånd.",
- "pt-movepage-logreason": "Del av oversettbar side $1.",
- "pt-movepage-started": "Basesiden har nå blitt flyttet.\nKontroller [[Special:Log/pagetranslation|sideoversettelsesloggen]] for feil- og fullføringsmeldinger.",
+ "pt-movepage-logreason": "Del av oversettbar side «$1»",
+ "pt-movepage-started": "Kontroller [[Special:Log/pagetranslation|sideoversettelsesloggen]] for feil- og fullføringsmeldinger.",
"pt-locked-page": "Denne siden er låst fordi oversettelsessiden blir flyttet nå.",
- "pt-deletepage-lang-title": "Sletter den oversettbare siden $1.",
- "pt-deletepage-full-title": "Sletter den oversettbare siden $1.",
+ "pt-deletepage-lang-title": "Sletter den oversettbare siden «$1»",
+ "pt-deletepage-full-title": "Sletter den oversettbare siden «$1»",
"pt-deletepage-invalid-title": "Den angitte siden er ikke gyldig.",
"pt-deletepage-invalid-text": "Den angitte siden er ikke en oversettbar side eller en oversettelsesside.",
"pt-deletepage-action-check": "List opp sider som skal slettes",
@@ -151,8 +170,45 @@
"pt-deletepage-list-section": "Seksjonssider",
"pt-deletepage-list-other": "Andre undersider",
"pt-deletepage-list-count": "Totalt $1 {{PLURAL:$1|side|sider}} å slette.",
- "pt-deletepage-full-logreason": "Del av den oversettbare siden $1.",
- "pt-deletepage-lang-logreason": "Del av oversettelsessiden $1.",
+ "pt-deletepage-full-logreason": "Del av den oversettbare siden «$1»",
+ "pt-deletepage-lang-logreason": "Del av oversettelsessiden «$1»",
"pt-deletepage-started": "Sjekk [[Special:Log/pagetranslation|sideoversettelsesloggen]] for feil- og fullføringsmeldinger.",
- "pt-deletepage-intro": "Denne spesialsiden lar deg slette hele oversettbare sider eller en inviduell oversettelsesside på ett språk.\nSlettingen vil ikke være umiddelbar, fordi alle avhengige sider også vil bli slettet.\nFeil vil logges i [[Special:Log/pagetranslation|sideoversettelsesloggen]], og må fikses manuelt."
+ "pt-deletepage-intro": "Denne spesialsiden lar deg slette hele oversettbare sider eller en inviduell oversettelsesside på ett språk.\nSlettingen vil ikke være umiddelbar, fordi alle avhengige sider også vil bli slettet.\nFeil vil logges i [[Special:Log/pagetranslation|sideoversettelsesloggen]], og må fikses manuelt.",
+ "pagemigration": "Migrering av oversettbar side",
+ "pagemigration-summary": "Spesifiser en oversettelsesside og bevar oversettelser som ble gjort før Translate-systemet ble slått på for den siden.",
+ "pm-import-button-label": "Importer",
+ "pm-savepages-button-label": "Lagre",
+ "pm-cancel-button-label": "Avbryt",
+ "pm-page-does-not-exist": "$1 finnes ikke.",
+ "pm-old-translations-missing": "$1 inneholder ikke gamle oversettelser.",
+ "pm-extra-units-warning": "Ekstra enheter kan være tilstede. Vennligst match kilden og oversettelsesenhetene ordentlig.",
+ "pm-pagename-missing": "Skriv inn sidenavnet.",
+ "pm-add-icon-hover-text": "Legg til en enhet nedenfor",
+ "pm-swap-icon-hover-text": "Bytt med enheten under",
+ "pm-delete-icon-hover-text": "Slett enhet",
+ "pm-pagetitle-placeholder": "Skriv inn sidetittelen",
+ "pm-pagetitle-invalid": "Skriv inn en gyldig sidetittel. Den bør være i formatet <sidenavn>/<språkkode>.",
+ "pm-pagetitle-missing": "Skriv inn sidetittelen.",
+ "pm-langcode-missing": "Språkkoden mangler i tittelen. Skriv inn sidetittelen i formatet <sidenavn>/<språkkode>.",
+ "pm-summary-import": "Importerte oversettelse med [[Special:PageMigration|sidemigrasjon]]",
+ "pm-on-import-message-text": "De gamle oversettelsene har blitt importert. Bruk add-, swap- og delete-valgene for å justere oversettelsesenhetene og klikk på «{{int:pm-savepages-button-label}}»-knappen for å lagre dem. Klikk på «{{unt:pm-cancel-button-label}}» for å forkaste.",
+ "pm-on-save-message-text": "Oversettelsesenhetene har blitt lagret. Du kan nå skrive inn tittelen på en ny oversettelsesside for å migrere den, eller gjøre endringer i enhetene nedenfor og lagre en ny versjon.",
+ "tpt-translate-title": "Tillat oversettelse av sidetittelen",
+ "pp-save-summary": "Forberedte siden for oversettelse",
+ "pagepreparation": "Forbereder side for oversettelse",
+ "pp-pagename-placeholder": "Skriv inn sidenavnet",
+ "pp-prepare-button-label": "Forbered",
+ "pp-save-button-label": "Lagre",
+ "pp-cancel-button-label": "Avbryt",
+ "pp-save-message": "Siden ble lagret. Du kan [$1 redigere] den.",
+ "pp-prepare-message": "Siden ble forberedt for oversettelse. Se diffen nedenfor. Klikk på «{{int:pp-save-button-label}}»-knappen om alt ser greit ut.",
+ "pp-already-prepared-message": "Det ser ut til at siden allerede har blitt forberedt for oversettelse. Det er ingen endringer sammenlignet med forrige versjon.",
+ "pp-pagename-missing": "Skriv inn sidenavnet.",
+ "pp-diff-old-header": "Kildetekst",
+ "pp-diff-new-header": "Forberedt tekst",
+ "tpt-unlink-confirm": "Bekreft at du ønsker å fjerne siden fra oversettelsessystemet.\nSpråkvelgeren og oversatte sidenavn vil slutte å fungere.\nDe enkelte oversatte sidene vil kunne ridegeres direkte.",
+ "tpt-unlink-button": "Fjern fra oversettelse",
+ "tpt-unlink-summary": "Fjernet side fra oversettelse",
+ "tpt-generic-confirm": "Bekreft handlingen.",
+ "tpt-generic-button": "Bekreft"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/nds-nl.json b/MLEB/Translate/i18n/pagetranslation/nds-nl.json
index 3e86b72f..bb75bfa1 100644
--- a/MLEB/Translate/i18n/pagetranslation/nds-nl.json
+++ b/MLEB/Translate/i18n/pagetranslation/nds-nl.json
@@ -5,5 +5,5 @@
]
},
"tpt-languages-nonzero": "$1 ($2% vertaald)",
- "pm-langcode-placeholder": "Taalkode"
+ "pt-deletepage-current": "Ziednaam:"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/ne.json b/MLEB/Translate/i18n/pagetranslation/ne.json
index 77aafec2..a86e106f 100644
--- a/MLEB/Translate/i18n/pagetranslation/ne.json
+++ b/MLEB/Translate/i18n/pagetranslation/ne.json
@@ -1,12 +1,26 @@
{
"@metadata": {
"authors": [
- "Ganesh Paudel"
+ "Ganesh Paudel",
+ "NehalDaveND",
+ "राम प्रसाद जोशी"
]
},
+ "tpt-rev-encourage": "पूर्वावस्थामा ल्याउनुहोस्",
+ "tpt-languages-nonzero": "$1 ($2% अनुवादित)",
+ "tpt-tab-translate": "अनुवाद गर्नु",
+ "tpt-aggregategroup-add": "थप्न",
+ "tpt-aggregategroup-save": "संग्रह गर्ने",
+ "tpt-aggregategroup-new-name": "नाम :",
+ "tpt-aggregategroup-edit-name": "नाम :",
+ "tpt-aggregategroup-edit-description": "वर्णन :",
+ "tpt-aggregategroup-update": "संग्रह गुर्ने",
+ "tpt-aggregategroup-update-cancel": "रद्द गुर्ने",
+ "pt-movepage-reason": "कारण :",
+ "pt-deletepage-reason": "कारण :",
"pm-import-button-label": "आयात",
"pm-savepages-button-label": "संग्रह गर्ने",
"pm-cancel-button-label": "रद्द",
- "pm-pagename-placeholder": "पृष्ठको नाम लेख्नुहोस्",
- "pm-langcode-placeholder": "भाषा कोड"
+ "pp-save-button-label": "संग्रह गर्नु",
+ "pp-cancel-button-label": "रद्द गर्नु"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/nl.json b/MLEB/Translate/i18n/pagetranslation/nl.json
index 034e94b8..f4ec9e61 100644
--- a/MLEB/Translate/i18n/pagetranslation/nl.json
+++ b/MLEB/Translate/i18n/pagetranslation/nl.json
@@ -7,18 +7,19 @@
"Siebrand",
"Southparkfan",
"Mar(c)",
- "Sjoerddebruin"
+ "Sjoerddebruin",
+ "Robin0van0der0vliet",
+ "Robin van der Vliet",
+ "Servien",
+ "Mainframe98"
]
},
"pagetranslation": "Paginavertaling",
"right-pagetranslation": "Versies van pagina's voor de vertaling markeren",
"action-pagetranslation": "vertaalbare pagina's te beheren",
- "tpt-desc": "Uitbreiding voor het vertalen van wikipagina's",
"tpt-section": "Vertaaleenheid $1",
"tpt-section-new": "Nieuwe vertaaleenheid.\nNaam: $1",
"tpt-section-deleted": "Vertaaleenheid $1",
- "tpt-template": "Paginasjabloon",
- "tpt-templatediff": "Het paginasjabloon is gewijzigd.",
"tpt-diff-old": "Vorige tekst",
"tpt-diff-new": "Nieuwe tekst",
"tpt-submit": "Deze versie voor vertaling markeren",
@@ -32,7 +33,6 @@
"tpt-notsuitable": "De pagina \"$1\" kan niet voor vertaling gemarkeerd worden.\nZorg ervoor dat de labels <nowiki><translate></nowiki> geplaatst zijn en dat deze juist zijn toegevoegd.",
"tpt-saveok": "De pagina [[:$1]] is gemarkeerd voor vertaling met $2 te vertalen {{PLURAL:$2|vertaaleenheid|vertaaleenheden}}.\nDe pagina kan nu <span class=\"plainlinks\">[$3 vertaald]</span> worden.",
"tpt-offer-notify": "U kunt <span class=\"plainlinks\">[$1 vertalers op de hoogte stellen]</span> over deze pagina.",
- "tpt-badsect": "\"$1\" is geen geldige naam voor vertaaleenheid $2.",
"tpt-showpage-intro": "Hieronder zijn nieuwe, bestaande en verwijderde vertaaleenheden opgenomen.\nControleer voordat u deze versie voor vertaling markeert of de wijzigingen aan de vertaaleenheden zo klein mogelijk zijn om onnodig werk voor vertalers te voorkomen.",
"tpt-mark-summary": "Heeft deze versie voor vertaling gemarkeerd",
"tpt-edit-failed": "De pagina \"$1\" kon niet bijgewerkt worden.",
@@ -65,11 +65,13 @@
"translate-tag-markthisagain": "Deze pagina is <span class=\"plainlinks\">[$1 gewijzigd]</span> sinds deze voor het laatst <span class=\"plainlinks\">[$2 voor vertaling gemarkeerd]</span> is geweest.",
"translate-tag-hasnew": "Aan deze pagina zijn <span class=\"plainlinks\">[$1 wijzigingen]</span> gemaakt die niet voor vertaling zijn gemarkeerd.",
"tpt-translation-intro": "Deze pagina is een <span class=\"plainlinks\">[$1 vertaalde versie]</span> van de pagina [[$2]] en de vertaling is $3% compleet.",
+ "tpt-translation-intro-fuzzy": "Verouderde vertalingen worden zo weergegeven.",
"tpt-languages-legend": "Andere talen:",
"tpt-languages-zero": "Vertaling voor deze taal starten",
"tpt-languages-nonzero": "$1 ($2% vertaald)",
"tpt-tab-translate": "Vertalen",
"tpt-target-page": "Deze pagina kan niet handmatig worden bijgewerkt.\nDeze pagina is een vertaling van de pagina [[$1]].\nDe vertaling kan bijgewerkt worden via de [$2 vertaalhulpmiddelen].",
+ "tpt-patrolling-blocked": "Deze pagina kan niet worden gecontroleerd. Gebruik in plaats hiervan de vertaal actie.",
"tpt-unknown-page": "Deze naamruimte is gereserveerd voor de vertalingen van van pagina's.\nDe pagina die u probeert te bewerken lijkt niet overeen te komen met een te vertalen pagina.",
"tpt-translation-restricted": "De vertaling van deze pagina in deze taal is onmogelijk gemaakt door de vertalingenbeheerder.\n\nReden: $1",
"tpt-discouraged-language-force-header": "Deze pagina kan niet in het $1 vertaald worden.",
@@ -81,7 +83,6 @@
"tpt-discouraged-language-reason": "Reden: $1",
"tpt-priority-languages": "Een vertalingenbeheerder heeft de prioriteitstalen voor deze groep ingesteld op $1.",
"tpt-render-summary": "Bijgewerkt vanwege een nieuwe basisversie van de bronpagina",
- "tpt-download-page": "Pagina met vertalingen exporteren",
"aggregategroups": "Samengevoegde groepen",
"tpt-aggregategroup-add": "Toevoegen",
"tpt-aggregategroup-save": "Opslaan",
@@ -118,6 +119,15 @@
"logentry-pagetranslation-prioritylanguages-force": "$1 {{GENDER:$2|heeft}} talen beperkt voor de vertaalbare pagina $3 naar $5",
"logentry-pagetranslation-associate": "$1 {{GENDER:$2|heeft}} de vertaalbare pagina $3 toegevoegd aan de samengestelde groep $4",
"logentry-pagetranslation-dissociate": "$1 {{GENDER:$2|heeft}} de vertaalbare pagina $3 verwijderd uit de samengestelde groep $4",
+ "log-action-filter-pagetranslation": "Soort handeling:",
+ "log-action-filter-pagetranslation-mark": "Voor vertaling markeren",
+ "log-action-filter-pagetranslation-unmark": "Als vertaalbare pagina verwijderd",
+ "log-action-filter-pagetranslation-move": "Paginahernoemingen",
+ "log-action-filter-pagetranslation-delete": "Paginaverwijderingen",
+ "log-action-filter-pagetranslation-encourage": "Aanmoedigen van vertalingen",
+ "log-action-filter-pagetranslation-discourage": "Ontmoedigen van vertalingen",
+ "log-action-filter-pagetranslation-prioritylanguages": "Wijziging van de prioriteitstalen",
+ "log-action-filter-pagetranslation-aggregategroups": "Wijzigingen aan samengestelde groepen",
"pt-movepage-title": "Te vertalen pagina $1 hernoemen",
"pt-movepage-blockers": "De te vertalen pagina kan niet hernoemd worden vanwege de volgende {{PLURAL:$1|foutmelding|foutmeldingen}}:",
"pt-movepage-block-base-exists": "De vertaalbare doelpagina \"[[:$1]]\" bestaat al.",
@@ -142,11 +152,11 @@
"pt-movepage-action-perform": "Hernoemen",
"pt-movepage-action-other": "Doel wijzigen",
"pt-movepage-intro": "Via deze speciale pagina kunt u een te vertalen pagina's hernoemen.\nDit wordt niet direct gedaan, omdat het mogelijk is dat heel veel pagina's hernoemd moeten worden.\nTerwijl de pagina's worden hernoemd, is het niet mogelijk handelingen uit te voeren op betrokken pagina's.\nIn het [[Special:Log/pagetranslation|logboek paginavertaling]] worden fouten opgeslagen die op een later moment handmatig hersteld kunnen worden.",
- "pt-movepage-logreason": "Onderdeel van te vertalen pagina $1.",
+ "pt-movepage-logreason": "Onderdeel van te vertalen pagina \"$1\"",
"pt-movepage-started": "De basispagina is nu hernoemd.\nKijk in het [[Special:Log/pagetranslation|logboek paginavertaling]] na of er fouten zijn gemeld en of de complete handeling is afgerond.",
"pt-locked-page": "Deze pagina kan niet gewijzigd worden omdat de te vertalen pagina op dit moment hernoemd wordt.",
- "pt-deletepage-lang-title": "De vertaalde pagina $1 wordt verwijderd.",
- "pt-deletepage-full-title": "De vertaalbare pagina $1 wordt verwijderd.",
+ "pt-deletepage-lang-title": "De vertaalde pagina \"$1\" wordt verwijderd",
+ "pt-deletepage-full-title": "De vertaalbare pagina \"$1\" wordt verwijderd",
"pt-deletepage-invalid-title": "De opgegeven pagina is ongeldig.",
"pt-deletepage-invalid-text": "De opgegeven pagina is geen vertaalbare pagina en ook geen vertaalde pagina.",
"pt-deletepage-action-check": "Lijst met te verwijderen pagina's",
@@ -163,22 +173,42 @@
"pt-deletepage-list-section": "Pagina's voor vertaaleenheden",
"pt-deletepage-list-other": "Andere subpagina's",
"pt-deletepage-list-count": "In totaal {{PLURAL:$1|wordt er $1 pagina|worden er $1 pagina's}} verwijderd.",
- "pt-deletepage-full-logreason": "Onderdeel van te vertalen pagina $1.",
- "pt-deletepage-lang-logreason": "Onderdeel van de vertaalde pagina $1.",
+ "pt-deletepage-full-logreason": "Onderdeel van te vertalen pagina \"$1\"",
+ "pt-deletepage-lang-logreason": "Onderdeel van de vertaalde pagina \"$1\"",
"pt-deletepage-started": "Controleer het [[Special:Log/pagetranslation|Logboek paginavertaling]] op fouten en of de opdracht is afgerond.",
"pt-deletepage-intro": "Via deze pagina kunt u vertaalbare pagina's of vertaalde pagina's in een taal verwijderen.\nHet verwijderen vindt niet per direct plaats, omdat het mogelijk is dat vele pagina's verwijderd moeten worden.\nFouten worden opgenomen in het [[Special:Log/pagetranslation|Logboek paginavertaling]] en deze moeten handmatig gecorrigeerd worden.",
+ "pagemigration-summary": "Voer een vertaalde pagina in en herstel de vertalingen die gemaakt zijn voordat het Translate systeem was geactiveerd op die pagina.",
"pm-import-button-label": "Importeren",
"pm-savepages-button-label": "Opslaan",
"pm-cancel-button-label": "Annuleren",
- "pm-pagename-placeholder": "Geef de paginanaam op",
- "pm-langcode-placeholder": "Taalcode",
"pm-page-does-not-exist": "$1 bestaat niet",
"pm-old-translations-missing": "$1 bevat geen oude vertalingen",
- "pm-pagetitle-invalid": "Vul een geldige paginatitel in",
+ "pm-extra-units-warning": "Extra eenheden zijn mogelijk aanwezig. Zorg ervoor dat de bron en vertaling eenheden overeenkomen.",
+ "pm-pagename-missing": "Voer een paginanaam in.",
+ "pm-add-icon-hover-text": "Voeg een eenheid hierbeneden toe",
+ "pm-swap-icon-hover-text": "Verwissel met de eenheid hier beneden",
+ "pm-delete-icon-hover-text": "Eenheid verwijderen",
+ "pm-pagetitle-placeholder": "Geef de paginatitel op",
+ "pm-pagetitle-invalid": "Geef een geldige paginanaam op. De indeling is <paginanaam>/<taalcode>.",
+ "pm-pagetitle-missing": "Voer een paginanaam in.",
+ "pm-langcode-missing": "De taal lijkt te ontbreken in de titel. Voer de titel van de pagina in de opmaak <page-name>/<language-code> in.",
+ "pm-summary-import": "Vertaling geïmporteerd met [[Special:PageMigration|pagina migratie]]",
+ "pm-on-import-message-text": "De oude vertalingen zijn geïmporteerd. Gebruik de toevoegen, omwisselen en verwijderen opties voor het aanpassen van de vertaaleenheden en klik op de \"{{int:pm-savepages-knop-label}}\" knop om op te slaan. Klik op de \"{{int:pm-annuleren-knop-label}}\" knop om te annuleren.",
+ "pm-on-save-message-text": "De vertaling eenheden zijn opgeslagen. U kunt nu de titel van een nieuwe vertalingspagina invoeren om deze te migreren, of wijzigingen aan de eenheden hieronder maken en deze opslaan als een nieuwe versie.",
"tpt-translate-title": "Vertaling van de paginanaam toestaan",
+ "pp-save-summary": "Pagina voorbereid voor vertaling",
"pagepreparation": "Pagina voorbereiden voor vertaling",
+ "pp-pagename-placeholder": "Geef de paginanaam op",
"pp-prepare-button-label": "Voorbereiden",
"pp-save-button-label": "Opslaan",
"pp-cancel-button-label": "Annuleren",
- "pp-pagename-missing": "Voer een paginanaam in."
+ "pp-save-message": "De pagina is opgeslagen. U kunt het [$1 bewerken].",
+ "pp-prepare-message": "De pagina is voorbereid voor vertaling. Zie de wijz hieronder. Klik op de \"{{int:pp-save-button-label}}\" knop indien correct!",
+ "pp-already-prepared-message": "Het lijkt erop dat de pagina al is voorbereid voor vertaling. Er zijn geen wijzigingen ten opzichte van de vorige versie.",
+ "pp-pagename-missing": "Voer een paginanaam in.",
+ "pp-diff-old-header": "Brontekst",
+ "pp-diff-new-header": "Voorbereide tekst",
+ "tpt-unlink-button": "Verwijderen uit vertaling",
+ "tpt-generic-confirm": "Bevestig de handeling.",
+ "tpt-generic-button": "Bevestigen"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/nn.json b/MLEB/Translate/i18n/pagetranslation/nn.json
index c934fb45..687c68e6 100644
--- a/MLEB/Translate/i18n/pagetranslation/nn.json
+++ b/MLEB/Translate/i18n/pagetranslation/nn.json
@@ -10,12 +10,10 @@
},
"pagetranslation": "Sideomsetjing",
"right-pagetranslation": "Merk versjonar av sider for omsetjing",
- "tpt-desc": "Utviding for omsetjing av innhaldssider",
+ "action-pagetranslation": "handsama omsetjingsmerkte sider",
"tpt-section": "Omsetjingseining $1",
"tpt-section-new": "Ny omsetjingseining. Namn: $1",
"tpt-section-deleted": "Omsetjingseining $1",
- "tpt-template": "Sidemal",
- "tpt-templatediff": "Sidemalen har vorte endra.",
"tpt-diff-old": "Førre teksten",
"tpt-diff-new": "Ny tekst",
"tpt-submit": "Merk denne versjonen for omsetjing",
@@ -27,7 +25,6 @@
"tpt-oldrevision": "$2 er ikkje den siste versjonen av sida [[:$1]].\nBerre siste versjonar kan verta markert for omsetjing.",
"tpt-notsuitable": "Side $1 er ikkje høveleg for omsetjing.\nSjekk at sida er merkt med <nowiki><translate></nowiki>-merke og har ein gyldig syntaks.",
"tpt-saveok": "Sida [[:$1]] er vorten merkt for omsetjing med {{PLURAL:$2|éi omsetjingseining|$2 omsetjingseiningar}}. Ho kan no verta <span class=\"plainlinks\">[$3 sett om]</span>.",
- "tpt-badsect": "«$1» er ikkje eit gyldig namn for omsetjingseininga $2.",
"tpt-mark-summary": "Markerte denne versjonen for omsetjing",
"tpt-edit-failed": "Kunne ikkje oppdatera sida: $1",
"tpt-already-marked": "Den siste versjonen av denne sida har allereie vorte markert for omsetjing.",
@@ -52,19 +49,32 @@
"translate-tag-markthisagain": "Sida har <span class=\"plainlinks\">[$1 vorten endra]</span> sidan ho sist vart <span class=\"plainlinks\">[$2 merkt for omsetjing]</span>.",
"translate-tag-hasnew": "Sida inneheld <span class=\"plainlinks\">[$1 endringar]</span> som ikkje er merkte for omsetjing.",
"tpt-translation-intro": "Sida er ein <span class=\"plainlinks\">[$1 omsett versjon]</span> av sida [[$2]], og omsetjinga er $3% ferdig.",
+ "tpt-translation-intro-fuzzy": "Utdaterte omsetjingar er merkte slik.",
"tpt-languages-legend": "Andre språk:",
"tpt-languages-zero": "Byrja omsetjing for dette språket",
"tpt-languages-nonzero": "$1 ($2 % sett om)",
+ "tpt-tab-translate": "Set om",
"tpt-translation-restricted": "Omsetjing av sida til dette språket er stogga av ein omsetjingsadministrator.\n\nÅrsak: $1",
"tpt-discouraged-language-force": "<strong>Sida kan ikkje setjast om til $2.</strong>\n\nEin omsetjingsadministrator har avgjort at sida berre kan setjast om til $3.",
"tpt-discouraged-language-reason": "Årsak: $1",
"tpt-render-summary": "Oppdatering for å svara til ny versjon av kjeldesida",
- "tpt-download-page": "Eksporter side med omsetjingar",
"tpt-aggregategroup-add": "Legg til",
"tpt-aggregategroup-save": "Lagra",
"tpt-aggregategroup-new-name": "Namn:",
"log-description-pagetranslation": "Logg over handlingar i sideomsetjingssystemet",
"log-name-pagetranslation": "Sideomsetjingslogg",
+ "logentry-pagetranslation-mark": "$1 {{GENDER:$2|merkte}} $3 for omsetjing",
+ "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|fjerna}} $3 frå omsetjing",
+ "logentry-pagetranslation-moveok": "$1 {{GENDER:$2|fullførte}} flyttinga av den omsetjingsmerkte sida $3 til $4",
+ "logentry-pagetranslation-deletefok": "$1 {{GENDER:$2|fullførte}} slettinga av den omsetjingsmerkte sida $3",
+ "logentry-pagetranslation-deletelok": "$1 {{GENDER:$2|fullførte}} slettinga av omsetjingssida $3",
+ "logentry-pagetranslation-encourage": "$1 {{GENDER:$2|oppmoda}} til omsetjing av $3",
+ "logentry-pagetranslation-discourage": "$1 {{GENDER:$2|frårådde}} omsetjing av $3",
+ "logentry-pagetranslation-prioritylanguages": "$1 {{GENDER:$2|sette}} prioriterte språk for den omsetbare sida $3 til $5",
+ "logentry-pagetranslation-prioritylanguages-force": "$1 {{GENDER:$2|avgrensa}} språka for den omsetjingsmerkte sida $3 til $5",
+ "log-action-filter-pagetranslation-encourage": "Oppmoding til omsetjing",
+ "log-action-filter-pagetranslation-discourage": "Fråråding av omsetjing",
+ "pt-movepage-title": "Flytt den omsetjingsmerkte sida «$1»",
"pt-movepage-list-pages": "Liste over sider som skal flyttast",
"pt-movepage-list-translation": "Omsetjingssider",
"pt-movepage-list-other": "Andre undersider",
@@ -77,12 +87,18 @@
"pt-movepage-action-check": "Sjå om flyttinga er mogeleg",
"pt-movepage-action-perform": "Utfør flyttinga",
"pt-movepage-action-other": "Endra mål",
+ "pt-movepage-logreason": "Del av omsetjingsmerkt side «$1»",
"pt-deletepage-action-perform": "Utfør slettinga",
"pt-deletepage-action-other": "Endra mål",
"pt-deletepage-lang-legend": "Sletta omsetbar side",
+ "pt-deletepage-full-legend": "Slett omsetjingsmerkt side",
"pt-deletepage-current": "Sidenamn:",
"pt-deletepage-reason": "Årsak:",
"pt-deletepage-subpages": "Sletta alle undersider",
"pt-deletepage-list-pages": "Liste over sider som skal slettast",
- "pt-deletepage-list-other": "Andre undersider"
+ "pt-deletepage-list-other": "Andre undersider",
+ "pt-deletepage-full-logreason": "Del av den omsetjingsmerkte sida «$1»",
+ "tpt-unlink-button": "Fjern frå omsetjing",
+ "tpt-unlink-summary": "Fjerna side frå omsetjing",
+ "tpt-generic-button": "Stadfest"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/oc.json b/MLEB/Translate/i18n/pagetranslation/oc.json
index 056985fa..b3cb0e1f 100644
--- a/MLEB/Translate/i18n/pagetranslation/oc.json
+++ b/MLEB/Translate/i18n/pagetranslation/oc.json
@@ -5,56 +5,60 @@
]
},
"pagetranslation": "Traduccion de paginas",
- "right-pagetranslation": "Marcar de versions de paginas per èsser traduchas",
- "tpt-desc": "Extension per tradusir de paginas de contengut",
+ "right-pagetranslation": "Marcar de versions de paginas per èsser traduitas",
"tpt-section": "Unitat de traduccion $1",
"tpt-section-new": "Unitat de traduccion novèla. Nom : $1",
"tpt-section-deleted": "Unitat de traduccion $1",
- "tpt-template": "Modèl de pagina",
- "tpt-templatediff": "Lo modèl de pagina a cambiat.",
"tpt-diff-old": "Tèxte precedent",
"tpt-diff-new": "Tèxte novèl",
- "tpt-submit": "Marcar aquesta version per èsser tradusida",
+ "tpt-submit": "Marcar aquesta version per èsser traduita",
"tpt-sections-oldnew": "Unitats de traduccion novèlas e existentas",
"tpt-sections-deleted": "Unitats de traduccion suprimidas",
"tpt-sections-template": "Modèl de pagina de traduccion",
+ "tpt-action-nofuzzy": "Invalidar pas las traduccions",
"tpt-badtitle": "Lo nom de pagina donada ($1) es pas un títol valid",
- "tpt-oldrevision": "$2 es pas la darrièra version de la pagina [[:$1]].\nSola la darrièra version de la pagina pòt èsser marcada per èsser tradusida.",
- "tpt-notsuitable": "La pagina $1 conven pas per èsser tradusida.\nSiatz segur(a) que conten la balisa <nowiki><translate></nowiki> e qu'a una sintaxi corrècta.",
- "tpt-saveok": "La pagina [[:$1]] es estada marcada per èsser tradusida amb $2 {{PLURAL:$2|unitat de traduccion|unitats de traduccion}}.\nLa pagina pòt èsser <span class=\"plainlinks\">[$3 tradusida]</span> tre ara.",
- "tpt-badsect": "« $1 » es pas un nom valid per una unitat de traduccion $2.",
- "tpt-showpage-intro": "Çaijós, las traduccions novèlas, las qu'existisson e las suprimidas.\nAbans de marcar aquestas versions per èsser tradusidas, verificatz que las modificacions a las seccions son minimizadas per evitar de trabalh inutil als traductors.",
- "tpt-mark-summary": "Aquesta version es estada marcada per èsser tradusida",
+ "tpt-oldrevision": "$2 es pas la darrièra version de la pagina [[:$1]].\nSola la darrièra version de la pagina pòt èsser marcada per èsser traduita.",
+ "tpt-notsuitable": "La pagina $1 conven pas per èsser traduita.\nSiatz segur(a) que conten la balisa <nowiki><translate></nowiki> e qu'a una sintaxi corrècta.",
+ "tpt-saveok": "La pagina [[:$1]] es estada marcada per èsser traduita amb $2 {{PLURAL:$2|unitat de traduccion|unitats de traduccion}}.\nLa pagina pòt èsser <span class=\"plainlinks\">[$3 traduita]</span> tre ara.",
+ "tpt-showpage-intro": "Çaijós, las traduccions novèlas, las qu'existisson e las suprimidas.\nAbans de marcar aquestas versions per èsser traduitas, verificatz que las modificacions a las seccions son minimizadas per evitar de trabalh inutil als traductors.",
+ "tpt-mark-summary": "Aquesta version es estada marcada per èsser traduita",
"tpt-edit-failed": "Impossible de metre a jorn la pagina $1",
- "tpt-already-marked": "La darrièra version d'aquesta pagina ja es estada marcada per èsser tradusida.",
- "tpt-list-nopages": "Cap de pagina es pas estada marcada per èsser tradusida o prèsta per l'èsser.",
- "tpt-new-pages": "{{PLURAL:$1|Aquesta pagina conten|Aquestas paginas contenon}} de tèxte amb de balisas de traduccion, mas cap de version d'{{PLURAL:$1|aquesta pagina es pas marcada per èsser tradusida|aquestas paginas son pas marcadas per èsser tradusidas}}.",
- "tpt-old-pages": "De versions d'{{PLURAL:$1|aquesta pagina|aquestas paginas}} son estadas marcadas per èsser traduchas.",
+ "tpt-already-marked": "La darrièra version d'aquesta pagina ja es estada marcada per èsser traduita.",
+ "tpt-list-nopages": "Cap de pagina es pas estada marcada per èsser traduita o prèsta per l'èsser.",
+ "tpt-new-pages": "{{PLURAL:$1|Aquesta pagina conten|Aquestas paginas contenon}} de tèxte amb de balisas de traduccion, mas cap de version d'{{PLURAL:$1|aquesta pagina es pas marcada per èsser traduita|aquestas paginas son pas marcadas per èsser traduitas}}.",
+ "tpt-old-pages": "De versions d'{{PLURAL:$1|aquesta pagina|aquestas paginas}} son estadas marcadas per èsser traduitas.",
+ "tpt-select-prioritylangs-force": "Empachar las traduccions dins de lengas autras que las lengas prioritàrias",
"tpt-select-prioritylangs-reason": "Motiu :",
"tpt-sections-prioritylangs": "Lengas prioritàrias",
"tpt-rev-mark": "marcar per traduccion",
"tpt-rev-unmark": "suprimir de la traduccion",
"tpt-rev-discourage": "descoratjar",
"tpt-rev-encourage": "restablir",
- "translate-tag-translate-link-desc": "Tradusir aquesta pagina",
- "translate-tag-markthis": "Marcar aquesta pagina per èsser tradusida",
- "translate-tag-markthisagain": "Aquesta pagina a agut <span class=\"plainlinks\">[$1 de modificacions]</span> dempuèi qu’es estada darrièrament <span class=\"plainlinks\">[$2 marcada per èsser tradusida]</span>.",
+ "tpt-rev-discourage-tooltip": "Dissuadir las futuras traduccions sus aquesta pagina.",
+ "translate-tag-translate-link-desc": "Traduire aquesta pagina",
+ "translate-tag-markthis": "Marcar aquesta pagina per èsser traduita",
+ "translate-tag-markthisagain": "Aquesta pagina a agut <span class=\"plainlinks\">[$1 de modificacions]</span> dempuèi qu’es estada darrièrament <span class=\"plainlinks\">[$2 marcada per èsser traduita]</span>.",
"translate-tag-hasnew": "Aquesta pagina conten <span class=\"plainlinks\">[$1 de modificacions]</span> que son pas marcadas per la traduccion.",
- "tpt-translation-intro": "Aquesta pagina es una <span class=\"plainlinks\">[$1 version tradusida]</span> de la pagina [[$2]] e la traduccion es completada a $3 %.",
+ "tpt-translation-intro": "Aquesta pagina es una <span class=\"plainlinks\">[$1 version traduita]</span> de la pagina [[$2]] e la traduccion es completada a $3 %.",
+ "tpt-translation-intro-fuzzy": "Las traduccions obsolètas son indentificadas atal.",
"tpt-languages-legend": "Autras lengas :",
- "tpt-languages-nonzero": "$1 ($2% tradusit)",
- "tpt-target-page": "Aquesta pagina pòt pas èsser mesa a jorn manualament.\nEs una version tradusida de [[$1]] e la traduccion pòt èsser mesa a jorn en utilizant [$2 l'aisina de traduccion].",
- "tpt-unknown-page": "Aqueste espaci de noms es reservat per la traduccion de paginas.\nLa pagina qu'ensajatz de modificar sembla pas correspondre a cap de pagina marcada per èsser tradusida.",
+ "tpt-languages-nonzero": "$1 ($2% traduit)",
+ "tpt-target-page": "Aquesta pagina pòt pas èsser mesa a jorn manualament.\nEs una version traduita de [[$1]] e la traduccion pòt èsser mesa a jorn en utilizant [$2 l'aisina de traduccion].",
+ "tpt-unknown-page": "Aqueste espaci de noms es reservat per la traduccion de paginas.\nLa pagina qu'ensajatz de modificar sembla pas correspondre a cap de pagina marcada per èsser traduita.",
"tpt-render-summary": "Mesa a jorn per èsser en acòrd amb la version novèla de la font de la pagina",
- "tpt-download-page": "Exportar la pagina amb sas traduccions",
"tpt-aggregategroup-add": "Apondre",
"tpt-aggregategroup-save": "Enregistrar",
+ "tpt-aggregategroup-add-new": "Apondre un novèl grop d'agregacion",
"tpt-aggregategroup-new-name": "Nom :",
"pt-movepage-list-translation": "{{PLURAL:$1|pagina|paginas}} de traduccion",
"pt-movepage-new": "Nom novèl :",
"pt-movepage-reason": "Motiu :",
- "pt-movepage-action-perform": "Tornar nomenar",
+ "pt-movepage-subpages": "Renomenar totas las sospaginas",
+ "pt-movepage-action-perform": "Renomenar",
"pt-movepage-action-other": "Cambiar la cibla",
"pt-deletepage-current": "Nom de la pagina :",
- "pt-deletepage-reason": "Motiu :"
+ "pt-deletepage-reason": "Motiu :",
+ "pm-old-translations-missing": "$1 conten pas d’ancianas traduccions",
+ "pm-add-icon-hover-text": "Apondre una unitat çaijós",
+ "pm-pagetitle-placeholder": "Entrar lo títol de la pagina"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/or.json b/MLEB/Translate/i18n/pagetranslation/or.json
index cc5de96b..fd34f227 100644
--- a/MLEB/Translate/i18n/pagetranslation/or.json
+++ b/MLEB/Translate/i18n/pagetranslation/or.json
@@ -6,7 +6,6 @@
]
},
"pagetranslation": "ପୃଷ୍ଠା ଅନୁବାଦ",
- "tpt-template": "ପୃଷ୍ଠା ଛାଞ୍ଚ",
"tpt-languages-legend": "ଅଲଗା ଭାଷାସବୁ:",
"tpt-languages-nonzero": "$1 ($2% ଅନୁବାଦିତ)",
"pt-movepage-list-translation": "ଅନୁବାଦ ପୃଷ୍ଠାସବୁ",
diff --git a/MLEB/Translate/i18n/pagetranslation/pa.json b/MLEB/Translate/i18n/pagetranslation/pa.json
index a60460ec..0ff5a84d 100644
--- a/MLEB/Translate/i18n/pagetranslation/pa.json
+++ b/MLEB/Translate/i18n/pagetranslation/pa.json
@@ -1,12 +1,14 @@
{
"@metadata": {
"authors": [
- "Babanwalia"
+ "Babanwalia",
+ "Satdeep gill"
]
},
"tpt-mark-nochanges": "ਇਸ ਸੁਧਾਈ ਅਤੇ ਆਖ਼ਰੀ ਨਿਸ਼ਾਨਦੇਹ ਸੁਧਾਈ ਵਿੱਚ ਕੋਈ ਫ਼ਰਕ ਨਹੀਂ ਹੈ।",
"tpt-translation-intro": "ਇਹ ਸਫ਼ਾ [[$2]] ਸਫ਼ੇ ਦਾ <span class=\"plainlinks\">[$1 ਤਰਜਮਾ ਕੀਤਾ ਰੂਪ]</span> ਹੈ ਅਤੇ ਤਰਜਮਾਕਾਰੀ $3% ਪੂਰੀ ਹੋਈ ਹੈ।",
"tpt-languages-legend": "ਹੋਰ ਬੋਲੀਆਂ:",
+ "tpt-languages-nonzero": "$1 ($2% ਅਨੁਵਾਦਿਤ)",
"tpt-unlink-button": "ਤਰਜਮਾਕਾਰੀ ਤੋਂ ਹਟਾਉ",
"tpt-unlink-summary": "ਸਫ਼ੇ ਨੂੰ ਤਰਜਮਾਕਾਰੀ ਤੋਂ ਹਟਾਇਆ"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/pam.json b/MLEB/Translate/i18n/pagetranslation/pam.json
index 1193915c..528bee82 100644
--- a/MLEB/Translate/i18n/pagetranslation/pam.json
+++ b/MLEB/Translate/i18n/pagetranslation/pam.json
@@ -5,7 +5,6 @@
"Leeheonjin"
]
},
- "tpt-template": "↓Bulung Ulma",
"tpt-aggregategroup-add": "↓Dagdag",
"tpt-aggregategroup-save": "↓Isikap",
"tpt-aggregategroup-add-new": "↓Magdagdag a bayung piabeng lupung",
diff --git a/MLEB/Translate/i18n/pagetranslation/pdc.json b/MLEB/Translate/i18n/pagetranslation/pdc.json
index 07aa7910..c75c2f49 100644
--- a/MLEB/Translate/i18n/pagetranslation/pdc.json
+++ b/MLEB/Translate/i18n/pagetranslation/pdc.json
@@ -5,7 +5,6 @@
]
},
"pagetranslation": "Iwwersetzing vun Bledder",
- "tpt-template": "Moddel fer des Blatt",
"translate-tag-translate-link-desc": "Des Blatt iwwersetze",
"tpt-languages-legend": "Annere Schprooche:",
"pt-movepage-new": "Neier Naame:",
diff --git a/MLEB/Translate/i18n/pagetranslation/pfl.json b/MLEB/Translate/i18n/pagetranslation/pfl.json
index 97483ad1..996ac078 100644
--- a/MLEB/Translate/i18n/pagetranslation/pfl.json
+++ b/MLEB/Translate/i18n/pagetranslation/pfl.json
@@ -6,12 +6,9 @@
},
"pagetranslation": "Saide iwasedze",
"right-pagetranslation": "Gschischd vunde Saide fas Iwasedze kennzaischne",
- "tpt-desc": "Eameschlischds Iwasedze vun Inhaldssaide",
"tpt-section": "Iwasedzungsoihaid „$1“",
"tpt-section-new": "Naiji Iwasedzungsoihaid\nNoame: $1",
"tpt-section-deleted": "Iwasedzungsoihaid „$1“",
- "tpt-template": "Saidevoalaach",
- "tpt-templatediff": "Die Saidevoalaach hodsisch g'änad",
"tpt-diff-old": "Vorische Tegschd",
"tpt-diff-new": "Naije Tegschd",
"tpt-submit": "Die Ausgab fas Iwasedze kennzaischne",
@@ -24,7 +21,6 @@
"tpt-oldrevision": "$2 isch ned die naischdi Ausgab vunde Said [[:$1]].\nBloß die naischd Ausgab konn fas Iwasedze kennzaischnd werre.",
"tpt-notsuitable": "Die Said $1 isch ned fas Iwasedze g'aischnd.\nSaida sicha, dasses än <nowiki><translate></nowiki>-Uffschrifd unän gildischi Sadsuffbau bnudzd werd.",
"tpt-saveok": "Die Said [[:$1]] isch midm iwasedzbari {{PLURAL:$2|Abschnidd|$2 Abschnidd}} fas Iwasedze kennzaischnd worre.\nDie Said konn donn <span class=\"plainlinks\">[$3 iwasedzd]</span> werre.",
- "tpt-badsect": "\"$1\" isch nedn gildischi Noame fa Iwasedzungsoihaid $2.",
"tpt-showpage-intro": "Unne sin naiji voahoandeni un g'leschdi B'raisch uffglischded.\nVorm Kennzaischen vunde Ausgab fas Iwasedze, iwabrief, das die Änarunge vunde Abschnidd a klä sin, dmidma unedischi Erwed schbaare dud.",
"tpt-mark-summary": "Die Said fas Iwasedze kennzaischne",
"tpt-edit-failed": "Said konn ned agdualisiad werre: $1",
@@ -57,6 +53,7 @@
"translate-tag-markthisagain": "Onde Said isch <span class=\"plainlinks\">[$1 gschaffd worre]</span>, nochdemmase <span class=\"plainlinks\">[$2 fas Iwasedz fraigewe]</span> kabd hod.",
"translate-tag-hasnew": "Onde Said hods <span class=\"plainlinks\">[$1 Eawede]</span>, wu ned fas Iwasedze fraigewe worre sin.",
"tpt-translation-intro": "Die Said isch ä <span class=\"plainlinks\">[$1 iwasedzdi Fassung]</span> vunde Said [[$2]] un die Iwasedzung isch zu $3 % ferdisch.",
+ "tpt-translation-intro-fuzzy": "Va'aldedi Iwasedzunge werre so kennzaischnd.",
"tpt-languages-legend": "Onare Schbroche",
"tpt-languages-zero": "Midm Iwasedze in die Schbrooch oafonge",
"tpt-languages-nonzero": "$1 ($2% iwwasezd)",
@@ -67,7 +64,6 @@
"tpt-discouraged-language": "Die Schbrooch isch käni vunde voaroangischi Schbrooche, wuen Administrator va die Said gsedzd kabd hod.\n\nGrund: $1",
"tpt-priority-languages": "Än Administrator hoddie voaroangischi Schbrooche fa die Grubb uff $1 gsedzd.",
"tpt-render-summary": "Iwanemm die naijschd Ausgab vunde Qwellsaid",
- "tpt-download-page": "Said mide Iwasedzung ausgewe",
"aggregategroups": "Grubbe zsommefasse",
"tpt-aggregategroup-add": "Dzufiesche",
"tpt-aggregategroup-save": "Schbaischare",
diff --git a/MLEB/Translate/i18n/pagetranslation/pl.json b/MLEB/Translate/i18n/pagetranslation/pl.json
index 4f98c1b7..dc2a62dd 100644
--- a/MLEB/Translate/i18n/pagetranslation/pl.json
+++ b/MLEB/Translate/i18n/pagetranslation/pl.json
@@ -13,18 +13,17 @@
"WTM",
"Woytecr",
"Matik7",
- "Py64"
+ "Py64",
+ "Jdx",
+ "Mazab IZW"
]
},
"pagetranslation": "Tłumaczenie stron",
"right-pagetranslation": "Oznaczanie wersji stron do przetłumaczenia",
"action-pagetranslation": "zarządzanie stronami do tłumaczenia",
- "tpt-desc": "Rozszerzenie pozwalające tłumaczyć strony treści",
"tpt-section": "Jednostka tłumaczenia $1",
"tpt-section-new": "Nowa jednostka tłumaczenia.\nNazwa – $1",
"tpt-section-deleted": "Jednostka tłumaczenia $1",
- "tpt-template": "Szablon strony",
- "tpt-templatediff": "Szablon strony został zmieniony.",
"tpt-diff-old": "Poprzedni tekst",
"tpt-diff-new": "Nowy tekst",
"tpt-submit": "Oznacz tę wersję do przetłumaczenia",
@@ -38,10 +37,9 @@
"tpt-notsuitable": "Strona $1 nie nadaje się do tłumaczenia.\nUpewnij się, że ma znaczniki <nowiki><translate></nowiki> i właściwą składnię.",
"tpt-saveok": "Strona [[:$1]] została oznaczona do tłumaczenia razem z $2 {{PLURAL:$2|jednostką|jednostkami}} tłumaczenia.\nMożna ją teraz <span class=\"plainlinks\">[$3 przetłumaczyć]</span>.",
"tpt-offer-notify": "Możesz <span class=\"plainlinks\">[$1 powiadomić tłumaczy]</span> o tej stronie.",
- "tpt-badsect": "„$1” nie jest dozwoloną nazwą jednostki tłumaczenia $2.",
"tpt-showpage-intro": "Poniżej wypisane są nowe, istniejące i usunięte sekcje.\nPrzed oznaczeniem tej wersji do tłumaczenia, aby uniknąć niepotrzebnej pracy tłumaczy, sprawdź czy zmiany w sekcjach zostały zminimalizowane.",
"tpt-mark-summary": "Oznaczono tę wersję do tłumaczenia",
- "tpt-mark-nochanges": "Nie ma różnicy pomiędzy tą wersją a wersją ostatnio oznaczoną.",
+ "tpt-mark-nochanges": "Nie ma zmian do przejrzenia. Oznaczenie tej strony do tłumaczenia nie spowoduje jej zmiany ani żadnej istniejącej jednostki tłumaczeń.",
"tpt-edit-failed": "Nie udało się zaktualizować strony $1",
"tpt-duplicate": "Nazwa jednostki tłumaczenia $1 jest używana więcej niż jeden raz.",
"tpt-already-marked": "Najnowsza wersja tej strony już wcześniej została oznaczona do tłumaczenia.",
@@ -61,22 +59,24 @@
"tpt-sections-prioritylangs": "Języki priorytetowe",
"tpt-rev-mark": "oznacz do tłumaczenia",
"tpt-rev-unmark": "usuń z tłumaczenia",
- "tpt-rev-discourage": "zniechęcić",
- "tpt-rev-encourage": "Przywracanie",
+ "tpt-rev-discourage": "zniechęć",
+ "tpt-rev-encourage": "przywróć",
"tpt-rev-mark-tooltip": "Oznacz najnowszą wersję tej strony do tłumaczenia.",
"tpt-rev-unmark-tooltip": "Usuń tę stronę z tłumaczenia.",
"tpt-rev-discourage-tooltip": "Zniechęć do dalszych tłumaczeń na tej stronie.",
"tpt-rev-encourage-tooltip": "Przywrócić tę stronę do zwykłego tłumaczenia.",
"translate-tag-translate-link-desc": "Przetłumacz tę stronę",
"translate-tag-markthis": "Oznacz tę stronę do tłumaczenia",
- "translate-tag-markthisagain": "Ta strona została zmieniona <span class=\"plainlinks\">[$1 razy]</span>, od kiedy ostatnio była <span class=\"plainlinks\">[$2 oznaczona do tłumaczenia]</span>.",
+ "translate-tag-markthisagain": "Ta strona została <span class=\"plainlinks\">[$1 zmieniona]</span>, od kiedy po raz ostatni była <span class=\"plainlinks\">[$2 oznaczona do tłumaczenia]</span>.",
"translate-tag-hasnew": "Ta strona zawiera <span class=\"plainlinks\">[$1 zmiany]</span>, które nie zostały oznaczone do tłumaczenia.",
"tpt-translation-intro": "Ta strona to <span class=\"plainlinks\">[$1 przetłumaczona wersja]</span> strony [[$2]], a tłumaczenie jest ukończone w $3%.",
+ "tpt-translation-intro-fuzzy": "Tak są oznaczane nieaktualne tłumaczenia.",
"tpt-languages-legend": "Inne języki:",
"tpt-languages-zero": "Rozpocznij tłumaczenie na ten język",
"tpt-languages-nonzero": "$1 (przetłumaczono $2%)",
"tpt-tab-translate": "Przetłumacz",
"tpt-target-page": "Ta strona nie może zostać zaktualizowana ręcznie.\nJest ona tłumaczeniem strony [[$1]], a tłumaczenie może zostać zmienione za pomocą [$2 narzędzia tłumacza].",
+ "tpt-patrolling-blocked": "Ta strona nie może zostać oznaczona jako sprawdzona. Skorzystaj z odpowiedniej akcji narzędzia tłumacza, aby ją przejrzeć.",
"tpt-unknown-page": "Ta przestrzeń nazw jest zarezerwowana dla tłumaczeń stron z zawartością.\nStrona, którą próbujesz edytować, prawdopodobnie nie odpowiada żadnej stronie oznaczonej do tłumaczenia.",
"tpt-translation-restricted": "Tłumaczenie tej strony na ten język zostało zablokowane przez administratora tłumaczenia.\n\nPowód: $1",
"tpt-discouraged-language-force-header": "Ta strona nie może być przetłumaczona na $1.",
@@ -87,8 +87,7 @@
"tpt-discouraged-language": "<strong>Tłumaczenie na $2 jest priorytetowe dla tej strony.</strong>\n\nAdministrator tłumaczeń zdecydował, aby tłumaczenie wykonać przede wszystkim dla $3.",
"tpt-discouraged-language-reason": "Powód: $1",
"tpt-priority-languages": "Administrator tłumaczenia ustawił języki priorytetowe dla tej grupy jako $1 .",
- "tpt-render-summary": "Aktualizowanie w celu dopasowania nowej wersji strony źródłowej",
- "tpt-download-page": "Wyeksportuj stronę z tłumaczeniami",
+ "tpt-render-summary": "Aktualizowanie w celu dopasowania do nowej wersji strony źródłowej",
"aggregategroups": "Grupy zbiorcze",
"tpt-aggregategroup-add": "Dodaj",
"tpt-aggregategroup-save": "Zapisz",
@@ -115,14 +114,25 @@
"logentry-pagetranslation-moveok": "$1 {{GENDER:$2|zmienił|zmieniła}} nazwę strony przeznaczonej do tłumaczenia z $3 na $4",
"logentry-pagetranslation-movenok": "$1 {{GENDER:$2|napotkał|napotkała}} problem podczas przenoszenia strony $3 do $4",
"logentry-pagetranslation-deletefok": "$1 {{GENDER:$2|zakończył|zakończyła}} usuwanie strony przeznaczonej do tłumaczenia $3",
+ "logentry-pagetranslation-deletefnok": "$1 {{GENDER:$2|Nie udało się}} usunąć $3 należącej do tłumaczonej strony $4",
"logentry-pagetranslation-deletelok": "$1 {{GENDER:$2|usunął|usunęła}} stronę przeznaczoną do tłumaczenia $3",
+ "logentry-pagetranslation-deletelnok": "$1 {{GENDER:$2|Nie udało się}} usunąć $3 należącej do przetłumaczonej strony $4",
"logentry-pagetranslation-encourage": "$1 {{GENDER:$2|zachęcił|zachęciła}} do tłumaczenia $3",
"logentry-pagetranslation-discourage": "$1 {{GENDER:$2|zniechęcił|zniechęciła}} do tłumaczenia $3",
"logentry-pagetranslation-prioritylanguages-unset": "$1 {{GENDER:$2|usunął|usunęła}} języki priorytetowe ze strony przeznaczonej do tłumaczenia $3",
- "logentry-pagetranslation-prioritylanguages": "$1 {{GENDER:$2|ustawił|ustawiła}} języki priorytetowe dla strony przeznaczonej do tłumaczenia $3 do $5",
+ "logentry-pagetranslation-prioritylanguages": "$1 {{GENDER:$2|ustawił|ustawiła}} języki priorytetowe dla strony przeznaczonej do tłumaczenia $3 na $5",
"logentry-pagetranslation-prioritylanguages-force": "$1 {{GENDER:$2|ograniczył|ograniczyła}} języki dla strony przeznaczonej do tłumaczenia $3 do $5",
- "logentry-pagetranslation-associate": "$1 {{GENDER:$2|dodał|dodała}} stronę przeznaczoną do tłumaczenia $3 do połączonej grupy $4",
- "logentry-pagetranslation-dissociate": "$1 {{GENDER:$2|usunął|usunęła}} stronę przeznaczoną do tłumaczenia $3 z połączonej grupy $4",
+ "logentry-pagetranslation-associate": "$1 {{GENDER:$2|dodał|dodała}} stronę przeznaczoną do tłumaczenia $3 do grupy zbiorczej $4",
+ "logentry-pagetranslation-dissociate": "$1 {{GENDER:$2|usunął|usunęła}} stronę przeznaczoną do tłumaczenia $3 z grupy zbiorczej $4",
+ "log-action-filter-pagetranslation": "Rodzaj działania:",
+ "log-action-filter-pagetranslation-mark": "Oznacz do tłumaczenia",
+ "log-action-filter-pagetranslation-unmark": "Usuwanie z tłumaczenia.",
+ "log-action-filter-pagetranslation-move": "Przenoszenie stron",
+ "log-action-filter-pagetranslation-delete": "Usuwanie stron",
+ "log-action-filter-pagetranslation-encourage": "Zachęcanie do tłumaczenia",
+ "log-action-filter-pagetranslation-discourage": "Zniechęcanie do tłumaczenia",
+ "log-action-filter-pagetranslation-prioritylanguages": "Zmiana języków priorytetowych",
+ "log-action-filter-pagetranslation-aggregategroups": "Zmiany w grupach zbiorczych",
"pt-movepage-title": "Przenieś przetłumaczalną stronę $1",
"pt-movepage-blockers": "Przetłumaczalna strona nie może zostać przeniesiona pod nową nazwę ponieważ {{PLURAL:$1|wystąpił następujący błąd|wystąpiły następujące błędy:}}",
"pt-movepage-block-base-exists": "Istnieje docelowa strona przeznaczona do tłumaczenia [[:$1]].",
@@ -135,7 +145,7 @@
"pt-movepage-block-subpage-invalid": "Nazwa docelowej podstrony [[:$1]] jest nieprawidłowa. Może jest zbyt długa?",
"pt-movepage-list-pages": "Lista stron do przeniesienia",
"pt-movepage-list-translation": "{{PLURAL:$1|strona|strony|stron}} do przetłumaczenia",
- "pt-movepage-list-section": "{{PLURAL:$1|Strona|Strony}} jednostki tłumaczenia",
+ "pt-movepage-list-section": "{{PLURAL:$1|Strona|Strony}} jednostek tłumaczenia",
"pt-movepage-list-other": "{{PLURAL:$1|Inna podstrona|Inne podstrony}}",
"pt-movepage-list-count": "W sumie do przeniesienia {{PLURAL:$1|jest $1 strona|są $1 strony|jest $1 stron}}.",
"pt-movepage-legend": "Przenieś przetłumaczalną stronę",
@@ -147,11 +157,11 @@
"pt-movepage-action-perform": "Przenieś",
"pt-movepage-action-other": "Zmiana celu",
"pt-movepage-intro": "Ta strona specjalna umożliwia przenoszenie stron, które zostały oznaczone jako wymagające tłumaczenia.\nDziałanie przenoszenia nie jest natychmiastowe, ponieważ wiele stron wymaga przenoszenia.\nPodczas gdy strony są przenoszone, nie jest możliwa praca z tymi stronami poprzez zapytania.\nBłędy zostaną odnotowane na [[Special:Log/pagetranslation|stronie rejestru tłumaczeń]] i muszą zostać naprawione ręcznie.",
- "pt-movepage-logreason": "Część przetłumaczalnej strony $1.",
- "pt-movepage-started": "Strona bazowa jest teraz przenoszona. \nProszę sprawdzić na [[Special:Log/pagetranslation|stronie rejestru tłumaczeń]] czy nie wystąpiły błędy oraz komunikat o zakończeniu operacji.",
+ "pt-movepage-logreason": "Część strony do tłumaczenia „$1”",
+ "pt-movepage-started": "Sprawdź [[Special:Log/pagetranslation|dziennik tłumaczenia stron]] pod względem błędów i komunikatów zakończenia.",
"pt-locked-page": "Ta strona jest zablokowana ponieważ jest przygotowana do przeniesienia.",
- "pt-deletepage-lang-title": "Usuwanie strony tłumaczenia $1.",
- "pt-deletepage-full-title": "Usuwanie strony do tłumaczenia $1.",
+ "pt-deletepage-lang-title": "Usuwanie strony tłumaczenia „$1”",
+ "pt-deletepage-full-title": "Usuwanie strony do tłumaczenia „$1”",
"pt-deletepage-invalid-title": "Wybrana strona nie jest poprawna.",
"pt-deletepage-invalid-text": "Wybrana strona nie jest przeznaczona do tłumaczenia ani nie jest stroną przetłumaczoną.",
"pt-deletepage-action-check": "Pokaż spis stron, które mają zostać usunięte",
@@ -165,29 +175,32 @@
"pt-deletepage-subpages": "Usuń wszystkie podstrony",
"pt-deletepage-list-pages": "Lista stron do usunięcia",
"pt-deletepage-list-translation": "Strony tłumaczeń",
- "pt-deletepage-list-section": "Strony jednostki tłumaczenia",
+ "pt-deletepage-list-section": "Strony jednostek tłumaczenia",
"pt-deletepage-list-other": "Inne podstrony",
"pt-deletepage-list-count": "W sumie $1 {{PLURAL:$1|strona|strony|stron}} do usunięcia.",
- "pt-deletepage-full-logreason": "Część strony do tłumaczenia $1.",
- "pt-deletepage-lang-logreason": "Część strony tłumaczenia $1.",
- "pt-deletepage-started": "Sprawdź [[Special:Log/pagetranslation|dziennik strony tłumaczenia]] pod względem błędów i komunikatów zakończenia.",
+ "pt-deletepage-full-logreason": "Część strony do tłumaczenia „$1”",
+ "pt-deletepage-lang-logreason": "Część strony tłumaczenia „$1”",
+ "pt-deletepage-started": "Sprawdź [[Special:Log/pagetranslation|dziennik tłumaczenia stron]] pod względem błędów i komunikatów zakończenia.",
"pt-deletepage-intro": "Ta specjalna strona pozwala na usuwanie całej strony przeznaczonej do tłumaczenia lub pojedynczej strony w danym języku.\nAkcja usuwania nie będzie natychmiastowa, ponieważ wszystkie strony zależne od podanych również będą usunięte.\nBłędy będą rejestrowane [[Special:Log/pagetranslation|w dzienniku tłumaczenia strony]] i muszą być naprawione ręcznie.",
"pagemigration": "Migracja stron do tłumaczenia",
+ "pagemigration-summary": "Określ stronę z tłumaczeniem i przywróć wszelkie tłumaczenia dokonane przed włączeniem na danej stronie systemu tłumaczenia.",
"pm-import-button-label": "Importuj",
"pm-savepages-button-label": "Zapisz",
"pm-cancel-button-label": "Anuluj",
- "pm-pagename-placeholder": "Wprowadź nazwę strony",
- "pm-langcode-placeholder": "Kod języka",
"pm-page-does-not-exist": "$1 nie istnieje",
"pm-old-translations-missing": "$1 nie zawiera starego tłumaczenia",
"pm-extra-units-warning": "Mogą występować dodatkowe jednostki. Proszę odpowiednio dopasować jednostki źródła i tłumaczenia.",
"pm-pagename-missing": "Podaj nazwę strony",
- "pm-langcode-missing": "Proszę podać kod języka",
"pm-add-icon-hover-text": "Dodaj jednostkę poniżej",
"pm-swap-icon-hover-text": "Zamień z jednostką poniżej",
"pm-delete-icon-hover-text": "Usuń jednostkę",
- "pm-pagetitle-invalid": "Podaj poprawny tytuł strony",
+ "pm-pagetitle-placeholder": "Podaj tytuł strony",
+ "pm-pagetitle-invalid": "Podaj poprawny tytuł strony. Powinien być w formacie <page-name>/<language-code>.",
+ "pm-pagetitle-missing": "Podaj tytuł strony.",
+ "pm-langcode-missing": "Wydaje się, że w tytule brakuje kodu języka. Wprowadź tytuł strony w formacie <nazwa strony>/<kod języka>.",
"pm-summary-import": "Importowane tłumaczenie za pomocą [[Special:PageMigration|migracji strony]]",
+ "pm-on-import-message-text": "Zaimportowano stare tłumaczenia. Użyj opcji dodaj, zamień i usuń, aby dopasować jednostki tłumaczenia, a następnie kliknij przycisk \"{{int:pm-savepages-button-label}}\", aby je zapisać. Kliknij przycisk \"{{int:pm-cancel-button-label}}\", aby je odrzucić.",
+ "pm-on-save-message-text": "Jednostki tłumaczenia zostały zapisane. Możesz teraz wpisać tytuł nowej przetłumaczonej strony, aby dokonać migracji lub dokonać zmian w poniższych jednostkach i zapisać nową wersję.",
"tpt-translate-title": "Umożliwienie tłumaczenia tytułu strony",
"pp-save-summary": "Przygotowano stronę do tłumaczenia",
"pagepreparation": "Przygotowanie strony do tłumaczenia",
@@ -196,11 +209,14 @@
"pp-save-button-label": "Zapisz",
"pp-cancel-button-label": "Anuluj",
"pp-save-message": "Strona została zapisana. Możesz ją [$1 edytować].",
+ "pp-prepare-message": "Strona została przygotowana do tłumaczenia. Przejrzyj poniższy diff. Jeśli wszystko jest porządku, kliknij przycisk „{{int:pp-save-button-label}}”!",
"pp-already-prepared-message": "Wydaje się, że ta strona została już przygotowana do tłumaczenia. Nie ma żadnych zmian w porównaniu z poprzednią wersją.",
"pp-pagename-missing": "Podaj nazwę strony.",
"pp-diff-old-header": "Tekst źródłowy",
"pp-diff-new-header": "Przygotowany tekst",
"tpt-unlink-confirm": "Proszę potwierdzić, że na pewno chcesz usunąć tę stronę z systemu tłumaczenia.\nWybór języka i przetłumaczone nazwy stron przestaną działać.\nStrony tłumaczenia będą edytowalne.",
"tpt-unlink-button": "Usuń z tłumaczenia.",
- "tpt-unlink-summary": "Usunięto stronę z tłumaczenia."
+ "tpt-unlink-summary": "Usunięto stronę z tłumaczenia.",
+ "tpt-generic-confirm": "Proszę potwierdzić akcję.",
+ "tpt-generic-button": "Potwierdź"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/pms.json b/MLEB/Translate/i18n/pagetranslation/pms.json
index eb2ae466..4606998b 100644
--- a/MLEB/Translate/i18n/pagetranslation/pms.json
+++ b/MLEB/Translate/i18n/pagetranslation/pms.json
@@ -8,12 +8,9 @@
"pagetranslation": "Tradussion dle pàgine",
"right-pagetranslation": "Marché le version dle pàgine për la tradussion",
"action-pagetranslation": "gestì le pàgine da volté",
- "tpt-desc": "Estension për fé la tradussion dle pàgine ëd contnù",
"tpt-section": "Unità ëd tradussion $1",
"tpt-section-new": "Neuva unità ëd tradussion.\nNòm: $1",
"tpt-section-deleted": "Unità ëd tradussion $1",
- "tpt-template": "Model ëd pàgina",
- "tpt-templatediff": "Ël model dla pàgina a l'é cangià.",
"tpt-diff-old": "Test ëd prima",
"tpt-diff-new": "Test neuv",
"tpt-submit": "Marca costa version për la tradussion",
@@ -26,7 +23,6 @@
"tpt-oldrevision": "$2 a l'é nen l'ùltima version dla pàgina [[:$1]].\nMach j'ùltime version a peulo esse marcà për la tradussion.",
"tpt-notsuitable": "La pàgina $1 a va nen bin për la tradussion.\nCh'a contròla ch'a l'abia le tichëtte <nowiki><translate></nowiki> e na sintassi bon-a.",
"tpt-saveok": "La pàgina [[:$1]] a l'é stàita marcà për la tradussion con $2 {{PLURAL:$2|unità ëd tradussion|unità ëd tradussion}}.\nAdess la pàgina a peul esse <span class=\"plainlinks\">[$3 voltà]</span>.",
- "tpt-badsect": "«$1» a l'é pa un nòm bon për l'unità ëd tradussion $2.",
"tpt-showpage-intro": "Sì-sota a son listà j'unità ëd tradussion neuve, esistente e sganfà.\nPrima ëd marché costa version për la tradussion, controlé che le modìfiche a j'unità ëd tradussion a sio minimisà për evité dël travaj inùtil ai tradutor.",
"tpt-mark-summary": "Costa version a l'é stàita marcà për la tradussion",
"tpt-edit-failed": "Impossìbil d'agiorné la pàgina: $1",
@@ -59,6 +55,7 @@
"translate-tag-markthisagain": "Costa pàgina a l'ha avù <span class=\"plainlinks\">[$1 cangiament]</span> da cand a l'é stàita <span class=\"plainlinks\">[$2 marcà për la tradussion]</span> l'ùltima vira.",
"translate-tag-hasnew": "Costa pàgina a conten <span class=\"plainlinks\">[$1 cangiament]</span> ch'a son pa marcà për la tradussion.",
"tpt-translation-intro": "Sta pàgina-sì a l'é na <span class=\"plainlinks\">[$1 vërsion traduvùa]</span> ëd na pàgina [[$2]] e la tradussion a l'é $3% completa e agiornà.",
+ "tpt-translation-intro-fuzzy": "Tradussion pa agiornà a son marcà com costa.",
"tpt-languages-legend": "Àutre lenghe:",
"tpt-languages-zero": "Ancamin-a la tradussion për sta lenga",
"tpt-languages-nonzero": "$1 ($2% voltà)",
@@ -70,7 +67,6 @@
"tpt-discouraged-language-reason": "Rason: $1",
"tpt-priority-languages": "N'aministrator ëd tradussion a l'ha ampostà le lenghe prioritarie për sta partìa a $1.",
"tpt-render-summary": "Modifiché për esse com la neuva version dla pàgina sorgiss",
- "tpt-download-page": "Espòrta pàgina con tradussion",
"aggregategroups": "Partìe agregà",
"tpt-aggregategroup-add": "Gionta",
"tpt-aggregategroup-save": "Salva",
diff --git a/MLEB/Translate/i18n/pagetranslation/ps.json b/MLEB/Translate/i18n/pagetranslation/ps.json
index 6153d364..eae468ce 100644
--- a/MLEB/Translate/i18n/pagetranslation/ps.json
+++ b/MLEB/Translate/i18n/pagetranslation/ps.json
@@ -1,12 +1,11 @@
{
"@metadata": {
"authors": [
- "Ahmed-Najib-Biabani-Ibrahimkhel"
+ "Ahmed-Najib-Biabani-Ibrahimkhel",
+ "Baloch Khan"
]
},
"pagetranslation": "د مخ ژباړه",
- "tpt-template": "د مخ کينډۍ",
- "tpt-templatediff": "د مخ کينډۍ بدلون موندلی.",
"tpt-diff-old": "پخوانی متن",
"tpt-diff-new": "نوی متن",
"tpt-sections-template": "د ژباړې د مخ کينډۍ",
@@ -15,16 +14,26 @@
"tpt-other-pages-title": "مات مخونه",
"tpt-select-prioritylangs-reason": "سبب:",
"tpt-sections-prioritylangs": "د لومړيتوب ژبې",
+ "tpt-rev-encourage": "بيازېرمل",
"translate-tag-translate-link-desc": "همدا مخ ژباړل",
"translate-tag-markthis": "همدا مخ د ژباړې لپاره په نښه کول",
+ "tpt-translation-intro": "دا پاڼه د [[$2]] مخ <span class=\"plainlinks\">[$1 ژباړل شوي بڼه] ده </span> او ددي ژباړه تر ٪$3 پوري بشپړه شوي ده.",
+ "tpt-translation-intro-fuzzy": "تر تاریخ وتلې ژباړي په دي ډول مارک شوي دي.",
"tpt-languages-legend": "نورې ژبې:",
"tpt-languages-nonzero": "$1 ($2% وژباړل شو)",
+ "tpt-tab-translate": "ژباړل",
"tpt-discouraged-language-reason": "سبب: $1",
"aggregategroups": "ډلې غونډول",
"tpt-aggregategroup-add": "ورگډول",
"tpt-aggregategroup-save": "خوندي کول",
"tpt-aggregategroup-new-name": "نوم:",
+ "tpt-aggregategroup-new-description": "څرگندونه (اختياري):",
+ "tpt-aggregategroup-invalid-group": "دا ډله نشته",
+ "tpt-aggregategroup-edit-name": "نوم:",
+ "tpt-aggregategroup-edit-description": "څرگندونه:",
+ "tpt-aggregategroup-update": "خوندي کول",
"tpt-aggregategroup-update-cancel": "ناگارل",
+ "tpt-invalid-group": "ناسمه ډله",
"pt-movepage-list-pages": "د لېږدون د مخونو لړليک",
"pt-movepage-list-translation": "د ژباړې {{PLURAL:$1|مخ|مخونه}}",
"pt-movepage-list-section": "د ژباړې د څپرکي {{PLURAL:$1|مخ|مخونه}}",
@@ -37,12 +46,24 @@
"pt-movepage-action-other": "موخه بدلول",
"pt-deletepage-action-perform": "ړنگېدنه ترسره کول",
"pt-deletepage-action-other": "موخه بدلول",
+ "pt-deletepage-lang-legend": "د ژباړې مخ ړنگول",
+ "pt-deletepage-full-legend": "د ژباړې وړ مخ ړنگول",
+ "pt-deletepage-any-legend": "د ژباړې وړ مخ يا د ژباړې مخ ړنگول",
"pt-deletepage-current": "د مخ نوم:",
"pt-deletepage-reason": "سبب:",
"pt-deletepage-subpages": "ټول واړه مخونه ړنگول",
+ "pt-deletepage-list-pages": "د ړنگولو د مخونو لړليک",
"pt-deletepage-list-translation": "د ژباړې مخونه",
"pt-deletepage-list-section": "د څپرکي د مخونو ژباړه",
"pt-deletepage-list-other": "نور واړه مخونه",
+ "pm-savepages-button-label": "خوندي کول",
"pm-cancel-button-label": "ناگارل",
- "pp-cancel-button-label": "ناگارل"
+ "pm-page-does-not-exist": "$1 نشته.",
+ "tpt-translate-title": "د مخ سرليک د ژباړې پرېښه",
+ "pp-pagename-placeholder": "د مخ نوم ورکړئ",
+ "pp-prepare-button-label": "چمتو کول",
+ "pp-save-button-label": "خوندي کول",
+ "pp-cancel-button-label": "ناگارل",
+ "pp-pagename-missing": "لطفاً د مخ نوم مو ورکړئ.",
+ "pp-diff-old-header": "د سرچينې متن"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/pt-br.json b/MLEB/Translate/i18n/pagetranslation/pt-br.json
index af22735b..66dbcedd 100644
--- a/MLEB/Translate/i18n/pagetranslation/pt-br.json
+++ b/MLEB/Translate/i18n/pagetranslation/pt-br.json
@@ -10,18 +10,17 @@
"Fabsouza1",
"Rodrigo codignoli",
"He7d3r",
- "Fasouzafreitas"
+ "Fasouzafreitas",
+ "Felipe L. Ewald",
+ "Eduardo Addad de Oliveira"
]
},
"pagetranslation": "Tradução de páginas",
"right-pagetranslation": "Marca versões de páginas para tradução",
"action-pagetranslation": "gerir páginas traduzíveis",
- "tpt-desc": "Extensão para traduzir páginas de conteúdo",
"tpt-section": "Unidade de tradução $1",
"tpt-section-new": "Nova unidade de tradução.\nNome: $1",
"tpt-section-deleted": "Unidade de tradução $1",
- "tpt-template": "Modelo de página",
- "tpt-templatediff": "O modelo de página foi modificado.",
"tpt-diff-old": "Texto anterior",
"tpt-diff-new": "Novo texto",
"tpt-submit": "Marcar esta versão para tradução",
@@ -34,9 +33,10 @@
"tpt-oldrevision": "$2 não é a versão atual da página [[:$1]].\nApenas as versões atuais pode ser marcadas para tradução.",
"tpt-notsuitable": "A página $1 não está adequada para tradução.\nTenha certeza que ela tenha marcas <nowiki><translate></nowiki> e sintaxe válida.",
"tpt-saveok": "A página [[:$1]] foi marcada para tradução com $2 {{PLURAL:$2|unidade|unidades}} de tradução.\nA página já pode ser <span class=\"plainlinks\">[$3 traduzida]</span>.",
- "tpt-badsect": "\"$1\" não é um nome válido para a unidade de tradução $2.",
+ "tpt-offer-notify": "Você pode <span class=\"plainlinks\">[$1 notificar tradutores]</span> sobre esta página.",
"tpt-showpage-intro": "A seguir estão listadas as unidades de tradução novas, existentes e removidas.\nAntes de marcar esta versão para tradução, verifique se as mudanças nas unidades de tradução foram minimizadas, para que seja evitado trabalho desnecessário aos tradutores.",
"tpt-mark-summary": "Marcou esta versão para tradução",
+ "tpt-mark-nochanges": "Nenhuma alteração para revisar. Marcar esta página para tradução não editará a página nem qualquer unidade de tradução existente.",
"tpt-edit-failed": "Não foi possível atualizar a página: $1",
"tpt-duplicate": "$1 é usado como nome de unidade de tradução mais de uma vez.",
"tpt-already-marked": "A versão atual desta página já foi marcada para tradução.",
@@ -57,7 +57,7 @@
"tpt-rev-mark": "marcar para traduzir",
"tpt-rev-unmark": "remover das traduções",
"tpt-rev-discourage": "desmarcar de traduzir",
- "tpt-rev-encourage": "retomar traduções",
+ "tpt-rev-encourage": "restaurar",
"tpt-rev-mark-tooltip": "Sinaliza para tradução a edição mais recente desta página.",
"tpt-rev-unmark-tooltip": "Retira a página da listagem das que podem ser traduzidas.",
"tpt-rev-discourage-tooltip": "Faz com que a página não receba novas traduções.",
@@ -67,21 +67,25 @@
"translate-tag-markthisagain": "Esta página tem <span class=\"plainlinks\">[$1 alterações]</span> desde a última vez em que ela foi <span class=\"plainlinks\">[$2 marcada para tradução]</span>.",
"translate-tag-hasnew": "Esta página contém <span class=\"plainlinks\">[$1 alterações]</span> que não estão marcadas para tradução.",
"tpt-translation-intro": "Esta página é uma <span class=\"plainlinks\">[$1 versão traduzida]</span> da página [[$2]]. Sua tradução está $3% completa.",
+ "tpt-translation-intro-fuzzy": "Traduções desatualizadas estão marcadas desta forma.",
"tpt-languages-legend": "Outros idiomas:",
+ "tpt-languages-separator": "&#160;•&#32;",
"tpt-languages-zero": "Iniciar a tradução para este idioma",
"tpt-languages-nonzero": "$1 ($2% traduzido)",
"tpt-tab-translate": "Traduzir",
"tpt-target-page": "Esta página não pode ser atualizada manualmente.\nEsta página é uma tradução da página [[$1]]. Sua tradução pode ser atualizada usando [$2 a ferramenta de tradução].",
+ "tpt-patrolling-blocked": "Esta página não pode ser patrulhada. Em vez disso, use a ação de tradução para analisá-la.",
"tpt-unknown-page": "Este espaço nominal é reservado para traduções de páginas de conteúdo.\nA página que você está tentando editar não aparenta corresponder a nenhuma página marcada para tradução.",
"tpt-translation-restricted": "Um coordenador de traduções desautorizou que esta página seja traduzida para este idioma.\n\nMotivo: $1",
"tpt-discouraged-language-force-header": "Est página não pode ser traduzida para $1.",
"tpt-discouraged-language-force-content": "Um administrador de tradução decidiu que esta página só pode ser traduzida para $1.",
+ "tpt-discouraged-language-header": "Traduzir para $1 não é uma prioridade para esta página.",
+ "tpt-discouraged-language-content": "Um administrador de tradução decidiu concentrar os esforços de tradução em $1.",
"tpt-discouraged-language-force": "<strong>Esta página não pode ser traduzida para $2.</strong>\n\nUm administrador de traduções decidiu que a página só pode ser traduzida para $3.",
"tpt-discouraged-language": "<strong>A tradução para $2 não é prioritária para esta página.</strong>\n\nUm administrador de traduções decidiu focar o esforço de tradução em $3.",
"tpt-discouraged-language-reason": "Motivo: $1",
"tpt-priority-languages": "Um coordenador de traduções definiu como idiomas prioritários para este grupo $1.",
"tpt-render-summary": "Atualizando para corresponder à nova versão da página de origem",
- "tpt-download-page": "Exportar página e suas traduções",
"aggregategroups": "Grupos agregadores",
"tpt-aggregategroup-add": "Adicionar",
"tpt-aggregategroup-save": "Salvar",
@@ -90,6 +94,11 @@
"tpt-aggregategroup-new-description": "Descrição (opcional):",
"tpt-aggregategroup-remove-confirm": "Tem certeza que deseja remover este grupo agregador?",
"tpt-aggregategroup-invalid-group": "Grupo inexistente",
+ "tpt-aggregategroup-edit-name": "Nome:",
+ "tpt-aggregategroup-edit-description": "Descrição:",
+ "tpt-aggregategroup-update": "Salvar",
+ "tpt-aggregategroup-update-cancel": "Cancelar",
+ "tpt-invalid-group": "Grupo inválido",
"pt-parse-open": "O elemento &lt;translate> está desequilibrado.\nModelo de tradução: <pre>$1</pre>",
"pt-parse-close": "O elemento &lt;/translate> está desequilibrado.\nModelo de tradução: <pre>$1</pre>",
"pt-parse-nested": "Não são permitidas unidades de tradução &lt;translate> cruzadas.\nTexto do elemento: <pre>$1</pre>",
@@ -99,8 +108,30 @@
"log-description-pagetranslation": "Registro para operações relacionadas com o sistema de tradução de páginas",
"log-name-pagetranslation": "Registro de tradução de páginas",
"logentry-pagetranslation-mark": "$1 {{GENDER:$2|marcou}} $3 para tradução",
- "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|removeu}} $3 das páginas para tradução",
- "pt-movepage-title": "Mover a página traduzível $1",
+ "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|removeu}} $3 do sistema de tradução",
+ "logentry-pagetranslation-moveok": "$1 {{GENDER:$2|completou}} a renomeação da página traduzível $3 para $4",
+ "logentry-pagetranslation-movenok": "$1 {{GENDER:$2|encontrou}} um problema ao mover a página $3 para $4",
+ "logentry-pagetranslation-deletefok": "$1 {{GENDER:$2|completou}} a eliminação da página traduzível $3",
+ "logentry-pagetranslation-deletefnok": "$1 {{GENDER:$2|falhou}} ao excluir $3 que pertence à página traduzível $4",
+ "logentry-pagetranslation-deletelok": "$1 {{GENDER:$2|completou}} a eliminação da página de tradução $3",
+ "logentry-pagetranslation-deletelnok": "$1 {{GENDER:$2|falhou}} ao excluir $3 que pertence à página de tradução $4",
+ "logentry-pagetranslation-encourage": "$1 {{GENDER:$2|incentivou}} a tradução de $3",
+ "logentry-pagetranslation-discourage": "$1 {{GENDER:$2|desencorajou}} tradução de $3",
+ "logentry-pagetranslation-prioritylanguages-unset": "$1 {{GENDER:$2|removeu}} idiomas de prioridade da página traduzível $3",
+ "logentry-pagetranslation-prioritylanguages": "$1 {{GENDER:$2|definiu}} idiomas prioritários para página traduzíveis $3 a $5",
+ "logentry-pagetranslation-prioritylanguages-force": "$1 {{GENDER:$2|limitou}} idiomas para página traduzível $3 a $5",
+ "logentry-pagetranslation-associate": "$1 {{GENDER: $2|adicionado}} página traduzível $3 para grupo agregado $4",
+ "logentry-pagetranslation-dissociate": "$1 {{GENDER:$2|removeu}} página traduzível $3 do grupo agregado $4",
+ "log-action-filter-pagetranslation": "Tipo de ação:",
+ "log-action-filter-pagetranslation-mark": "Marcar para tradução",
+ "log-action-filter-pagetranslation-unmark": "Remoção da tradução",
+ "log-action-filter-pagetranslation-move": "Páginas movidas",
+ "log-action-filter-pagetranslation-delete": "Exclusões de página",
+ "log-action-filter-pagetranslation-encourage": "Encorajamento de tradução",
+ "log-action-filter-pagetranslation-discourage": "Desencorajamento da tradução",
+ "log-action-filter-pagetranslation-prioritylanguages": "Modificação de idioma de prioridade",
+ "log-action-filter-pagetranslation-aggregategroups": "Modificação de grupos agregados",
+ "pt-movepage-title": "Mover a página traduzível \"$1\"",
"pt-movepage-blockers": "A página traduzível não pode ser movida para outro nome devido {{PLURAL:$1|ao seguinte erro|aos seguintes erros}}:",
"pt-movepage-block-base-exists": "Existe a página traduzível de destino \"[[:$1]]\".",
"pt-movepage-block-base-invalid": "O nome da página traduzível de destino não é um título válido.",
@@ -124,12 +155,12 @@
"pt-movepage-action-perform": "Realizar a movimentação",
"pt-movepage-action-other": "Alterar o destino",
"pt-movepage-intro": "Esta página especial permite mover páginas que estão marcadas para tradução.\nA operação de movimentação não é instantânea, porque será necessário mover muitas páginas.\nEnquanto estiverem sendo movidas, não será possível interagir com as páginas em questão.\nAs falhas serão registradas no [[Special:Log/pagetranslation|registro de tradução de páginas]] e precisarão ser reparadas manualmente.",
- "pt-movepage-logreason": "Parte da página traduzível $1.",
- "pt-movepage-started": "A página base foi movida.\nVerifique no [[Special:Log/pagetranslation|registro de tradução de páginas]] eventuais mensagens de erro e/ou de atividade concluída.",
+ "pt-movepage-logreason": "Parte da página traduzível \"$1\"",
+ "pt-movepage-started": "Por favor, em um momento verifique no [[Special:Log/pagetranslation|registro de tradução de páginas]] por erros e mensagem de conclusão.",
"pt-locked-page": "Está página está bloqueada porque a página traduzível está sendo movida.",
- "pt-deletepage-lang-title": "Eliminar a página traduzível $1.",
- "pt-deletepage-full-title": "Eliminando a página traduzível $1.",
- "pt-deletepage-invalid-title": "A página especificada é inválida.",
+ "pt-deletepage-lang-title": "Eliminando a página de tradução \"$1\"",
+ "pt-deletepage-full-title": "Eliminando a página traduzível \"$1\"",
+ "pt-deletepage-invalid-title": "A página especificada não é valida.",
"pt-deletepage-invalid-text": "A página especificada não é uma página traduzível nem uma página traduzida.",
"pt-deletepage-action-check": "Listar páginas para eliminar",
"pt-deletepage-action-perform": "Eliminar",
@@ -145,20 +176,45 @@
"pt-deletepage-list-section": "Páginas de unidades de tradução",
"pt-deletepage-list-other": "Outras subpáginas",
"pt-deletepage-list-count": "No total, $1 {{PLURAL:$1|página|páginas}} para serem eliminadas.",
- "pt-deletepage-full-logreason": "Parte da página traduzível $1.",
- "pt-deletepage-lang-logreason": "Parte da página traduzida $1.",
+ "pt-deletepage-full-logreason": "Parte da página traduzível \"$1\"",
+ "pt-deletepage-lang-logreason": "Parte da página de tradução \"$1\"",
"pt-deletepage-started": "Verifique no [[Special:Log/pagetranslation|registro de tradução de páginas]] eventuais mensagens de erro e/ou de atividade concluída.",
- "pt-deletepage-intro": "Esta página especial permite eliminar todas as páginas de uma página traduzível ou apenas as traduções de um idioma.\nA eliminação não será instantânea por serem muitas as páginas integrantes de cada conjunto.\nOs erros serão reportados no [[Special:Log/pagetranslation|registro de tradução de páginas]] e precisarão ser corrigidos manualmente.",
+ "pt-deletepage-intro": "Esta página especial permite excluir uma página completa traduzível ou uma página de tradução individual em um idioma.\nA ação de exclusão não será instantânea, porque todas as páginas que dependem delas também serão excluídas.\nAs falhas serão registradas no [[Special:Log/pagetranslation|log da página de tradução]] e elas precisam ser reparadas manualmente.",
"pagemigration": "Migração de página de tradução",
+ "pagemigration-summary": "Especifique uma página de tradução e restaure qualquer tradução feita antes do sistema Traduzir ter sido habilitado nessa página.",
+ "pm-import-button-label": "Importar",
"pm-savepages-button-label": "Salvar",
"pm-cancel-button-label": "Cancelar",
- "pm-pagename-placeholder": "Digite o nome da página",
- "pm-langcode-placeholder": "Código do idioma",
- "pm-page-does-not-exist": "$1 não existe",
- "pm-old-translations-missing": "$1 não contém traduções antigas",
- "pm-pagename-missing": "Por favor, insira o nome da página",
- "pm-langcode-missing": "Por favor, insira o código de idioma",
+ "pm-page-does-not-exist": "$1 não existe.",
+ "pm-old-translations-missing": "$1 não contém traduções antigas.",
+ "pm-extra-units-warning": "Podem existir unidades extras. Por favor, combine as unidades de origem e de conversão corretamente.",
+ "pm-pagename-missing": "Por favor, insira o nome da página.",
"pm-add-icon-hover-text": "Adicione uma unidade abaixo",
+ "pm-swap-icon-hover-text": "Trocar com a unidade abaixo",
"pm-delete-icon-hover-text": "Excluir unidade",
- "pm-pagetitle-invalid": "Por favor, forneça um título válido para á página."
+ "pm-pagetitle-placeholder": "Digite o título da página",
+ "pm-pagetitle-invalid": "Digite um título de página válido. Deve estar no formato <nome da página>/<código do idioma>.",
+ "pm-pagetitle-missing": "Por favor, insira o título da página.",
+ "pm-langcode-missing": "O código do idioma parece estar faltando no título. Por favor, digite o título da página no formato <page-name>/<language-code>.",
+ "pm-summary-import": "Tradução importada usando [[Special:PageMigration|migração de página]]",
+ "pm-on-import-message-text": "As antigas traduções foram importadas. Use as opções de adicionar, trocar e excluir para ajustar as unidades de tradução e clique no botão \"{{int: pm-savepages-button-label}}\" para salvá-las. Clique no botão \"{{int: pm-cancel-button-label}}\" para descartar.",
+ "pm-on-save-message-text": "As unidades de tradução foram salvas. Agora você pode inserir o título de uma nova página de tradução para migrá-la ou fazer alterações nas unidades abaixo e salvar uma nova revisão.",
+ "tpt-translate-title": "Permitir a tradução do título da página",
+ "pp-save-summary": "Preparar a página para tradução",
+ "pagepreparation": "Preparar esta página para tradução",
+ "pp-pagename-placeholder": "Digite o nome da página",
+ "pp-prepare-button-label": "Preparar",
+ "pp-save-button-label": "Salvar",
+ "pp-cancel-button-label": "Cancelar",
+ "pp-save-message": "A página foi salva. Você pode [$1 editá-la].",
+ "pp-prepare-message": "A página foi preparada para tradução. Veja o diferencial abaixo. Clique no botão \"{{int: pp-save-button-label}}\" se aprovado!",
+ "pp-already-prepared-message": "Parece que a página já foi preparada para tradução. Não há alterações em relação à versão anterior.",
+ "pp-pagename-missing": "Por favor, insira o nome da página.",
+ "pp-diff-old-header": "Texto-fonte",
+ "pp-diff-new-header": "Texto preparado",
+ "tpt-unlink-confirm": "Por favor, confirme que deseja realmente remover esta página do sistema de tradução.\nO seletor de idioma e os nomes das páginas traduzidas deixarão de funcionar.\nAs páginas de tradução se tornarão editáveis.",
+ "tpt-unlink-button": "Remover da tradução",
+ "tpt-unlink-summary": "Página removida da tradução",
+ "tpt-generic-confirm": "Por favor, confirme a ação.",
+ "tpt-generic-button": "Confirmar"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/pt.json b/MLEB/Translate/i18n/pagetranslation/pt.json
index a504f732..ed5f2f94 100644
--- a/MLEB/Translate/i18n/pagetranslation/pt.json
+++ b/MLEB/Translate/i18n/pagetranslation/pt.json
@@ -16,12 +16,9 @@
"pagetranslation": "Tradução de páginas",
"right-pagetranslation": "Marcar versões de páginas para tradução",
"action-pagetranslation": "administrar as páginas traduzíveis",
- "tpt-desc": "Extensão para traduzir páginas de conteúdo",
"tpt-section": "Unidade de tradução $1",
"tpt-section-new": "Nova unidade de tradução. Nome: $1",
"tpt-section-deleted": "Unidade de tradução $1",
- "tpt-template": "Modelo de página",
- "tpt-templatediff": "O modelo de página foi modificado.",
"tpt-diff-old": "Texto anterior",
"tpt-diff-new": "Texto novo",
"tpt-submit": "Marcar esta versão para tradução",
@@ -35,9 +32,9 @@
"tpt-notsuitable": "A página $1 não é adequada para tradução.\nCertifique-se de que a mesma contém os elementos <nowiki><translate></nowiki> e tem uma sintaxe válida.",
"tpt-saveok": "A página [[:$1]] foi marcada para tradução com $2 {{PLURAL:$2|unidade|unidades}} de tradução.\nA página pode agora ser <span class=\"plainlinks\">[$3 traduzida]</span>.",
"tpt-offer-notify": "Pode enviar uma <span class=\"plainlinks\">[$1 notificação aos tradutores]</span> sobre esta página.",
- "tpt-badsect": "\"$1\" não é um nome válido para a unidade de tradução $2.",
"tpt-showpage-intro": "Estão listadas abaixo as unidades de tradução novas, existentes e apagadas.\nAntes de marcar esta versão para tradução, verifique que as alterações às unidades de tradução são minimizadas para evitar trabalho desnecessário para os tradutores.",
"tpt-mark-summary": "Marcou esta versão para tradução",
+ "tpt-mark-nochanges": "Não há mudanças para rever. Marcar esta página para tradução não editará a página nem nenhuma das unidades de tradução existentes.",
"tpt-edit-failed": "Não foi possível atualizar a página: $1",
"tpt-duplicate": "O nome $1 é usado mais do que uma vez nas unidades de tradução.",
"tpt-already-marked": "A versão mais recente desta página já foi marcada para tradução.",
@@ -68,11 +65,13 @@
"translate-tag-markthisagain": "Esta página tem <span class=\"plainlinks\">[$1 alterações]</span> desde a última vez que foi <span class=\"plainlinks\">[$2 marcada para tradução]</span>.",
"translate-tag-hasnew": "Esta página contém <span class=\"plainlinks\">[$1 alterações]</span> que não estão marcadas para tradução.",
"tpt-translation-intro": "Esta página é uma <span class=\"plainlinks\">[$1 versão traduzida]</span> da página [[$2]] e a tradução está $3% completa.",
+ "tpt-translation-intro-fuzzy": "As traduções desatualizadas estão marcadas desta forma.",
"tpt-languages-legend": "Outras línguas:",
"tpt-languages-zero": "Iniciar a tradução para esta língua",
"tpt-languages-nonzero": "$1 ($2% traduzida)",
"tpt-tab-translate": "Traduzir",
"tpt-target-page": "Esta página não pode ser atualizada manualmente.\nEla é uma tradução da página [[$1]] e a tradução pode ser atualizada usando [$2 a ferramenta de tradução].",
+ "tpt-patrolling-blocked": "Esta página não pode ser patrulhada. Em substituição, use a ação de tradução para revê-la.",
"tpt-unknown-page": "Este espaço nominal está reservado para traduções de páginas de conteúdo.\nA página que está a tentar editar não parece corresponder a nenhuma página marcada para tradução.",
"tpt-translation-restricted": "A tradução desta página para esta língua foi impedida por um administrador de traduções.\n\nMotivo: $1",
"tpt-discouraged-language-force-header": "Esta página não pode ser traduzida para $1.",
@@ -84,7 +83,6 @@
"tpt-discouraged-language-reason": "Motivo: $1",
"tpt-priority-languages": "Um administrador de traduções definiu que as línguas prioritárias para este grupo são $1.",
"tpt-render-summary": "A atualizar para corresponder à nova versão da página fonte",
- "tpt-download-page": "Exportar a página com traduções",
"aggregategroups": "Grupos agregadores",
"tpt-aggregategroup-add": "Adicionar",
"tpt-aggregategroup-save": "Gravar",
@@ -107,33 +105,42 @@
"log-description-pagetranslation": "Registo para operações relacionadas com o sistema de tradução de páginas",
"log-name-pagetranslation": "Registo de tradução de páginas",
"logentry-pagetranslation-mark": "$1 {{GENDER:$2|marcou}} a página $3 para tradução",
- "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|retirou}} $3 das páginas para tradução",
+ "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|retirou}} $3 do sistema de tradução",
"logentry-pagetranslation-moveok": "$1 {{GENDER:$2|terminou}} a alteração do nome da página traduzível $3 para $4",
"logentry-pagetranslation-movenok": "$1 {{GENDER:$2|encontrou}} um problema ao mover a página $3 para $4",
"logentry-pagetranslation-deletefok": "$1 {{GENDER:$2|concluiu}} a eliminação da página traduzível $3",
"logentry-pagetranslation-deletefnok": "$1 {{GENDER:$2|não conseguiu}} eliminar $3, que pertence à página traduzível $4",
"logentry-pagetranslation-deletelok": "$1 {{GENDER:$2|concluiu}} a eliminação da página traduzível $3",
"logentry-pagetranslation-deletelnok": "$1 {{GENDER:$2|não conseguiu}} eliminar $3, que pertence à página de tradução $4",
- "logentry-pagetranslation-encourage": "$1 {{GENDER:$2|restaurou}} a tradução de $3",
+ "logentry-pagetranslation-encourage": "$1 {{GENDER:$2|encorajou}} a tradução de $3",
"logentry-pagetranslation-discourage": "$1 {{GENDER:$2|desencorajou}} a tradução de $3",
"logentry-pagetranslation-prioritylanguages-unset": "$1 {{GENDER:$2|removeu}} as línguas prioritárias da página traduzível $3",
"logentry-pagetranslation-prioritylanguages": "$1 {{GENDER:$2|definiu}} como línguas prioritárias da página traduzível $3 as línguas $5",
"logentry-pagetranslation-prioritylanguages-force": "$1 {{GENDER:$2|restringiu}} as línguas para a página traduzível $3 a $5",
"logentry-pagetranslation-associate": "$1 {{GENDER:$2|adicionou}} a página traduzível $3 ao grupo agregador $4",
"logentry-pagetranslation-dissociate": "$1 {{GENDER:$2|removeu}} a página traduzível $3 do grupo agregador $4",
- "pt-movepage-title": "Mover a página traduzível $1",
+ "log-action-filter-pagetranslation": "Tipo de ação:",
+ "log-action-filter-pagetranslation-mark": "Marcação para tradução",
+ "log-action-filter-pagetranslation-unmark": "Remoção das páginas para tradução",
+ "log-action-filter-pagetranslation-move": "Movimentações de páginas",
+ "log-action-filter-pagetranslation-delete": "Eliminações de páginas",
+ "log-action-filter-pagetranslation-encourage": "Encorajamento à tradução",
+ "log-action-filter-pagetranslation-discourage": "Desencorajamento de tradução",
+ "log-action-filter-pagetranslation-prioritylanguages": "Modificação das línguas prioritárias",
+ "log-action-filter-pagetranslation-aggregategroups": "Modificação de grupos agregadores",
+ "pt-movepage-title": "Mover a página traduzível \"$1\"",
"pt-movepage-blockers": "A página traduzível não pode ser movida para outro nome devido {{PLURAL:$1|ao seguinte erro|aos seguintes erros}}:",
"pt-movepage-block-base-exists": "A página traduzível de destino \"[[:$1]]\" já existe.",
"pt-movepage-block-base-invalid": "A página traduzível de destino não tem um título válido.",
- "pt-movepage-block-tp-exists": "A página de tradução de destino [[:$2]] existe.",
- "pt-movepage-block-tp-invalid": "O título da página de tradução de destino para [[:$1]] seria inválido (talvez demasiado longo).",
- "pt-movepage-block-section-exists": "A página de destino [[:$2]] para a unidade de tradução já existe.",
- "pt-movepage-block-section-invalid": "O título da página de destino [[:$1]] para a unidade de tradução seria inválido (talvez demasiado longo).",
- "pt-movepage-block-subpage-exists": "A subpágina de destino [[:$2]] existe.",
- "pt-movepage-block-subpage-invalid": "O título da subpágina de destino para [[:$1]] seria inválido (talvez demasiado longo).",
+ "pt-movepage-block-tp-exists": "A página de tradução de destino \"[[:$2]]\" existe.",
+ "pt-movepage-block-tp-invalid": "O título da página de tradução de destino para \"[[:$1]]\" seria inválido (talvez demasiado longo).",
+ "pt-movepage-block-section-exists": "A página de destino \"[[:$2]]\" para a unidade de tradução existe.",
+ "pt-movepage-block-section-invalid": "O título da página de destino \"[[:$1]]\" para a unidade de tradução seria inválido (talvez demasiado longo).",
+ "pt-movepage-block-subpage-exists": "A subpágina de destino \"[[:$2]]\" existe.",
+ "pt-movepage-block-subpage-invalid": "O título da subpágina de destino para \"[[:$1]]\" seria inválido (talvez demasiado longo).",
"pt-movepage-list-pages": "Lista de páginas para serem movidas",
"pt-movepage-list-translation": "{{PLURAL:$1|Página|Páginas}} de tradução",
- "pt-movepage-list-section": "{{PLURAL:$1|Página|Páginas}} de seção",
+ "pt-movepage-list-section": "{{PLURAL:$1|Página de unidade|Páginas de unidades}} de tradução",
"pt-movepage-list-other": "{{PLURAL:$1|Outra subpágina|Outras subpáginas}}",
"pt-movepage-list-count": "No total, $1 {{PLURAL:$1|página para ser movida|páginas para serem movidas}}.",
"pt-movepage-legend": "Mover página traduzível",
@@ -145,11 +152,11 @@
"pt-movepage-action-perform": "Realizar a movimentação",
"pt-movepage-action-other": "Alterar o destino",
"pt-movepage-intro": "Esta página especial permite-lhe mover páginas que estão marcadas para tradução.\nA operação de movimentação não é instantânea, porque será necessário mover muitas páginas.\nEnquanto estas estão a ser movidas, não é possível interagir com as páginas em questão.\nAs falhas serão registadas no [[Special:Log/pagetranslation|registo de tradução de páginas]] e necessitam de ser reparadas manualmente.",
- "pt-movepage-logreason": "Parte da página traduzível $1.",
- "pt-movepage-started": "A página base foi movida.\nVerifique no [[Special:Log/pagetranslation|registo de tradução de páginas]] se ocorreram erros e se existe a mensagem de conclusão, por favor.",
+ "pt-movepage-logreason": "Parte da página traduzível \"$1\"",
+ "pt-movepage-started": "Verifique daqui a pouco no [[Special:Log/pagetranslation|registo de tradução de páginas]] se ocorreram erros e se existe a mensagem de conclusão, por favor.",
"pt-locked-page": "Esta página está bloqueada porque a página traduzível está a ser movida.",
- "pt-deletepage-lang-title": "A eliminar a página traduzida $1.",
- "pt-deletepage-full-title": "A eliminar a página traduzível $1.",
+ "pt-deletepage-lang-title": "A eliminar a página traduzida \"$1\"",
+ "pt-deletepage-full-title": "A eliminar a página traduzível \"$1\"",
"pt-deletepage-invalid-title": "A página especificada é inválida.",
"pt-deletepage-invalid-text": "A página especificada não é uma página traduzível nem uma página traduzida.",
"pt-deletepage-action-check": "Listar as páginas para eliminar",
@@ -166,8 +173,8 @@
"pt-deletepage-list-section": "Páginas de unidades de tradução",
"pt-deletepage-list-other": "Outras subpáginas",
"pt-deletepage-list-count": "$1 {{PLURAL:$1|página|páginas}} para eliminar, no total.",
- "pt-deletepage-full-logreason": "Parte da página traduzível $1.",
- "pt-deletepage-lang-logreason": "Parte da página traduzida $1.",
+ "pt-deletepage-full-logreason": "Parte da página traduzível \"$1\"",
+ "pt-deletepage-lang-logreason": "Parte da página traduzida \"$1\"",
"pt-deletepage-started": "Verifique a existência de erros ou de uma mensagem de sucesso no [[Special:Log/pagetranslation|registo de traduções]].",
"pt-deletepage-intro": "Esta página especial permite eliminar toda uma página traduzível ou uma das suas traduções para uma língua.\nA eliminação não é instantânea, porque também serão eliminadas as páginas dependentes delas.\nOs problemas que ocorrerem serão registados no [[Special:Log/pagetranslation|registo de traduções]] e podem exigir reparação manual.",
"pagemigration": "Migração de página de tradução",
@@ -175,20 +182,22 @@
"pm-import-button-label": "Importar",
"pm-savepages-button-label": "Gravar",
"pm-cancel-button-label": "Cancelar",
- "pm-pagename-placeholder": "Introduza o nome da página",
- "pm-langcode-placeholder": "Código do idioma",
"pm-page-does-not-exist": "$1 não existe",
"pm-old-translations-missing": "$1 não contém tradução antigas",
- "pm-extra-units-warning": "Unidades extras podem estar presentes. Por favor, faça corresponder corretamente o código e a tradução",
- "pm-pagename-missing": "Por favor, introduza o nome da página",
- "pm-langcode-missing": "Digite o código de idioma",
+ "pm-extra-units-warning": "Podem existir unidades suplementares. Faça corresponder corretamente as unidades de origem às de tradução, por favor.",
+ "pm-pagename-missing": "Introduza o nome da página, por favor.",
"pm-add-icon-hover-text": "Adicionar uma unidade abaixo",
"pm-swap-icon-hover-text": "Trocar com a unidade abaixo",
"pm-delete-icon-hover-text": "Eliminar unidade",
- "pm-pagetitle-invalid": "Por favor, forneça um título válido de página.",
- "pm-summary-import": "Tradução importa utilizando a [[Special:PageMigration|migração de página]]",
+ "pm-pagetitle-placeholder": "Introduza o título da página",
+ "pm-pagetitle-invalid": "Introduza um título de página válido. Este deverá ter o formato <nome-da-página>/<código-de-língua>.",
+ "pm-pagetitle-missing": "Introduza o título da página, por favor.",
+ "pm-langcode-missing": "O código de língua parece estar em falta no título. Introduza o título da página no formato <nome-da-página>/<código-de-língua>, por favor.",
+ "pm-summary-import": "Tradução importada usando a [[Special:PageMigration|migração de página]]",
+ "pm-on-import-message-text": "As traduções antigas foram importadas. Use as opções acrescentar, trocar e eliminar para ajustar as unidades de tradução e clique o botão \"{{int:pm-savepages-button-label}}\" para gravá-las. Clique o botão \"{{int:pm-cancel-button-label}}\" para cancelar.",
+ "pm-on-save-message-text": "As unidades de tradução foram gravadas. Agora pode introduzir o título de uma página de tradução nova para migrá-la, ou fazer mudanças às unidades abaixo e gravar uma nova revisão.",
"tpt-translate-title": "Permitir tradução do título da página",
- "pp-save-summary": "Preparação de página para tradução",
+ "pp-save-summary": "Página preparada para tradução",
"pagepreparation": "Preparar página para tradução",
"pp-pagename-placeholder": "Introduza o nome da página",
"pp-prepare-button-label": "Preparar",
@@ -197,7 +206,12 @@
"pp-save-message": "A página foi gravada. Pode [$1 editá-la] agora.",
"pp-prepare-message": "A página foi preparada para tradução. Veja a comparação abaixo. Clique no botão \"{{int:pp-save-button-label}}\" se estiver tudo correto!",
"pp-already-prepared-message": "Parece que a página já foi preparada para tradução. Não há alterações em relação à versão anterior.",
- "pp-pagename-missing": "Por favor, introduza o nome da página.",
- "pp-diff-old-header": "Texto-fonte",
- "pp-diff-new-header": "Texto preparado"
+ "pp-pagename-missing": "Introduza o nome da página, por favor.",
+ "pp-diff-old-header": "Texto fonte",
+ "pp-diff-new-header": "Texto preparado",
+ "tpt-unlink-confirm": "Confirme que pretende realmente eliminar esta página do sistema de tradução.\nO seletor de línguas e os nomes das páginas traduzidas deixarão de funcionar.\nAs páginas de tradução tornar-se-ão editáveis.",
+ "tpt-unlink-button": "Remover da tradução",
+ "tpt-unlink-summary": "Página removida da tradução",
+ "tpt-generic-confirm": "Confirme a ação, por favor.",
+ "tpt-generic-button": "Confirmar"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/qqq.json b/MLEB/Translate/i18n/pagetranslation/qqq.json
index 4bd4266e..9ab40a87 100644
--- a/MLEB/Translate/i18n/pagetranslation/qqq.json
+++ b/MLEB/Translate/i18n/pagetranslation/qqq.json
@@ -17,18 +17,21 @@
"Siebrand",
"Slboat",
"Umherirrender",
- "Robby"
+ "Robby",
+ "Liuxinyu970226",
+ "Guycn2",
+ "Zoranzoki21"
]
},
"pagetranslation": "{{doc-special|PageTranslation}}\n[[Image:Page translation admin view.png|thumb|Admin view]]",
"right-pagetranslation": "{{doc-right|pagetranslation}}",
- "action-pagetranslation": "{{doc-action|pagetranslation}})",
- "tpt-desc": "{{desc|name=Translate - Page Translation|url=https://www.mediawiki.org/wiki/Extension:Translate/PageTranslation}}",
+ "action-pagetranslation": "{{doc-action|pagetranslation}}",
"tpt-section": "[[File:Page_translation_mark_view.png|thumb|Page translation]]\nA screenshot of the translation administration page is available.\n\nParameters:\n* $1 - the identifier of the unit, or the string \"Page display title\" (special unit identifier for page title; hard-coded)",
"tpt-section-new": "[[File:Page_translation_mark_view.png|thumb|Page translation]]\nA screenshot of the translation administration page is available.\n\nParameters:\n* $1 - the identifier of the unit, or the string \"Page display title\" (special unit identifier for page title; hard-coded)",
"tpt-section-deleted": "See definition on [[mw:Help:Extension:Translate/Glossary]].\n\nParameters:\n* $1 - the identifier of the unit, or the string \"Page display title\" (special unit identifier for page title; hard-coded)",
- "tpt-template": "See definition on [[mw:Help:Extension:Translate/Glossary]].\n{{Identical|Page template}}",
- "tpt-templatediff": "See definition on [[mw:Help:Extension:Translate/Glossary]].",
+ "tpt-diff-old": "Heading for old version of a translation or message definition.",
+ "tpt-diff-new": "Heading for new version of a translation or message definition.",
+ "tpt-submit": "Button text on Special:PageTranslation to mark page for translation.",
"tpt-sections-oldnew": "\"New and existing\" refers to the sum of: (a) new translation units in a translatable page, plus (b) the already existing ones from previous version of a translatable page.",
"tpt-sections-deleted": "See definition on [[mw:Help:Extension:Translate/Glossary]].",
"tpt-sections-template": "[[File:Page_translation_mark_view.png|thumb|Page translation]]\nThe template used by translations of the translatable page, extracted from the source text. Shown on the translation administration page; a screenshot is available.",
@@ -39,14 +42,13 @@
"tpt-notsuitable": "{{doc-important|Do not translate <code><nowiki><nowiki><translate></nowiki>&lt;/nowiki></code>.}}\nParameters:\n* $1 - page title\n* $2 - (Unused) revision ID",
"tpt-saveok": "Followed by {{msg-mw|Tpt-offer-notify}}, if the user is allowed to notify translators.\n\nParameters:\n* $1 - page title\n* $2 - number of sections, can be used with PLURAL\n* $3 - URL which points to [[Special:Translate]]",
"tpt-offer-notify": "Message displayed on [[Special:PageTranslation]] after marking a page for translation when the marking user also has right to notify translators.\n\nParameters:\n* $1 - a URL to [[Special:NotifyTranslators]] with the marked page preselected",
- "tpt-badsect": "See definition on [[mw:Help:Extension:Translate/Glossary]].\nParameters:\n* $1 - the identifier of the unit\n* $2 - the number of the unit",
"tpt-showpage-intro": "See definition on [[mw:Help:Extension:Translate/Glossary]].",
"tpt-mark-summary": "This message is used as an edit summary.",
"tpt-mark-nochanges": "A note in Special:PageTranslation when marking a revision of a page for translation.",
"tpt-edit-failed": "Used as error message. Parameters:\n* $1 - page title",
"tpt-duplicate": "Used as error message.\n\nSee definition on [[mw:Help:Extension:Translate/Glossary]].\n\nParameters:\n* $1 - translation unit ID (name)",
"tpt-already-marked": "See definition on [[mw:Help:Extension:Translate/Glossary]].",
- "tpt-unmarked": "Used as success message.\n\nTranslate this as \"Page $1 has been unmarked for translation\".\n\nSee definition on [[mw:Help:Extension:Translate/Glossary]].\n\nParameters:\n* $1 - page title",
+ "tpt-unmarked": "Used as success message for unmarking page for translation.\n\nTranslate this as \"Page $1 has been unmarked for translation\".\n\nSee definition on [[mw:Help:Extension:Translate/Glossary]].\n\nParameters:\n* $1 - page title",
"tpt-list-nopages": "See definition on [[mw:Help:Extension:Translate/Glossary]].",
"tpt-new-pages-title": "Header in [[Special:PageTranslation]] [[Image:Page translation admin view.png|thumb|Admin view]]",
"tpt-old-pages-title": "Header in [[Special:PageTranslation]] [[Image:Page translation admin view.png|thumb|Admin view]]",
@@ -68,12 +70,14 @@
"tpt-rev-unmark-tooltip": "Tooltip for page action link text in [[Special:PageTranslation]] [[Image:Page translation admin view.png|thumb|Admin view]]",
"tpt-rev-discourage-tooltip": "Tooltip for page action link text in [[Special:PageTranslation]] [[Image:Page translation admin view.png|thumb|Admin view]]",
"tpt-rev-encourage-tooltip": "Tooltip for page action link text in [[Special:PageTranslation]] [[Image:Page translation admin view.png|thumb|Admin view]]",
+ "translate-edit-tag-warning": "{{notranslate}}\nShown when editing translatable pages. Default is empty.",
"translate-tag-translate-link-desc": "Link at the top of translatable pages, see [[mw:Help:Extension:Translate/Translation example]] for context.",
"translate-tag-markthis": "See definition on [[mw:Help:Extension:Translate/Glossary]].",
"translate-tag-markthisagain": "\"has changes\" is to be understood as \"has been altered/edited\".\n\nParameters:\n* $1 - a link which points to the diff\n* $2 - a link which points to ...",
"translate-tag-hasnew": "\"has changes\" is to be understood as \"has been altered/edited\". $1 is a URL to view changes.",
"tpt-translation-intro": "Header of a translation page (see definition on [[mw:Help:Extension:Translate/Glossary]]).\n\nParameters:\n* $1 - URL\n* $2 - page title\n* $3 - translation percentage",
- "tpt-languages-legend": "The caption of a language selector displayed using <code><nowiki><languages /></nowiki></code>. e.g. on [[Project list]].\n{{Identical|Otherlanguages}}",
+ "tpt-translation-intro-fuzzy": "Example sentence styled as some content in the current page",
+ "tpt-languages-legend": "The caption of a language selector displayed using <code><nowiki><languages /></nowiki></code>. e.g. on [[mw:Project:About]].\n{{Identical|Otherlanguages}}",
"tpt-languages-separator": "{{optional}}",
"tpt-languages-zero": "Tooltip for a link in <code><nowiki><language /></nowiki></code> when language is included because it is a priority language, but translation does not yet exist.\n\nThe link directly points to the translation view ([[Special:Translate]]).\n\nTranslate this as \"Start translating (the page) into this language\".",
"tpt-languages-nonzero": "Tooltip for a link to go to a translated version of a translatable page.\n\nParameters:\n* $1 - page title (translated if present)\n* $2 - translation percentage, without decimals (supports PLURAL)",
@@ -90,6 +94,7 @@
"tpt-discouraged-language": "Warning shown along with group description if the language is discouraged from translation for the selected language.\n\nParameters:\n* $1 - (Unused) empty string\n* $2 - the language that to which the user asked to translate the page\n* $3 - the name list of the translation languages, separated by \",\"\nSee also:\n* {{msg-mw|Tpt-discouraged-language-force}}\n\nThis message is used only in the old interface (non-TUX).",
"tpt-discouraged-language-reason": "Parameters:\n* $1 - the reason for the priority language definition. Probably written in the content language.\n\nUsed only if a reason was provided in the following messages:\n* {{msg-mw|Tpt-discouraged-language-force}}\n* {{msg-mw|Tpt-discouraged-language}}\n{{Identical|Reason}}",
"tpt-priority-languages": "Message to be shown before the messagestats table. $1 is a comma-separated list of language codes.",
+ "tpt-render-summary": "Edit summary when FuzzyBot updates translation pages.",
"aggregategroups": "{{doc-special|AggregateGroups}}",
"tpt-aggregategroup-add": "Label for the button to add a new page to aggregate group in [[Special:AggregateGroups]].\n{{Identical|Add}}",
"tpt-aggregategroup-save": "Label for the button to save a new aggregate group in [[Special:AggregateGroups]].\n{{Identical|Save}}",
@@ -126,6 +131,15 @@
"logentry-pagetranslation-prioritylanguages-force": "{{logentry|[[Special:Log/pagetranslation]]}}\n* $5 is list of languages (A, B and C)",
"logentry-pagetranslation-associate": "{{logentry|[[Special:Log/pagetranslation]]}}\n* $4 is the name of the aggregate group",
"logentry-pagetranslation-dissociate": "{{logentry|[[Special:Log/pagetranslation]]}}\n* $4 is the name of the aggregate group",
+ "log-action-filter-pagetranslation": "{{doc-log-action-filter-type|pagetranslation}}\n{{Related|Log-action-filter}}",
+ "log-action-filter-pagetranslation-mark": "{{doc-log-action-filter-action|pagetranslation|mark}}",
+ "log-action-filter-pagetranslation-unmark": "{{doc-log-action-filter-action|pagetranslation|unmark}}",
+ "log-action-filter-pagetranslation-move": "{{doc-log-action-filter-action|pagetranslation|move}}",
+ "log-action-filter-pagetranslation-delete": "{{doc-log-action-filter-action|pagetranslation|delete}}",
+ "log-action-filter-pagetranslation-encourage": "{{doc-log-action-filter-action|pagetranslation|encourage}}",
+ "log-action-filter-pagetranslation-discourage": "{{doc-log-action-filter-action|pagetranslation|discourage}}",
+ "log-action-filter-pagetranslation-prioritylanguages": "{{doc-log-action-filter-action|pagetranslation|prioritylanguages}}",
+ "log-action-filter-pagetranslation-aggregategroups": "{{doc-log-action-filter-action|pagetranslation|aggregategroups}}",
"pt-movepage-title": "Used as page title.\n\nSee definition on [[mw:Help:Extension:Translate/Glossary]].\n\nParameters:\n* $1 - old page title",
"pt-movepage-blockers": "See definition on [[mw:Help:Extension:Translate/Glossary]].\n\nFollowed by any of the following error messages:\n* {{msg-mw|Pt-movepage-block-base-exists}}\n* {{msg-mw|Pt-movepage-block-base-invalid}}\n* {{msg-mw|Pt-movepage-block-tp-exists}}\n* {{msg-mw|Pt-movepage-block-tp-invalid}}\n* {{msg-mw|Pt-movepage-block-section-exists}}\n* {{msg-mw|Pt-movepage-block-section-invalid}}\n* {{msg-mw|Pt-movepage-block-subpage-exists}}\n* {{msg-mw|Pt-movepage-block-subpage-invalid}}\n\nParameters:\n* $1 - number of error messages",
"pt-movepage-block-base-exists": "Error message to indicate a base page exists and a translatable page cannot be renamed. Parameters:\n* $1 is a pre-existing page name.",
@@ -142,14 +156,20 @@
"pt-movepage-list-other": "Header of a list of additional subpages (other than translation pages) of the translatable page being moved, when the user selected the option to move subpages as well.\n\nSee definition on [[mw:Help:Extension:Translate/Glossary]].\n\nParameters:\n* $1 - number of subpages\n{{Related|Pt-movepage-list}}",
"pt-movepage-list-count": "Used to indicate how many pages will be moved.\n\nParameters:\n* $1 - number of pages\nSee also:\n* {{msg-mw|Pt-deletepage-list-count}}",
"pt-movepage-legend": "See definition on [[mw:Help:Extension:Translate/Glossary]].",
+ "pt-movepage-current": "Label followed by name of a translatable page section (the thing inside <!-- T:[name] --> if you edit the translatable page source.",
"pt-movepage-new": "{{Identical|New name}}",
"pt-movepage-reason": "{{Identical|Reason}}",
+ "pt-movepage-subpages": "Checkbox label when moving a translatable page.",
+ "pt-movepage-action-check": "Button text when moving a translatable page. Without checking you cannot do the move.",
+ "pt-movepage-action-perform": "Button text to execute moving of a translatable page (including various related subpages and translation units.",
"pt-movepage-action-other": "Button label on the special page 'Move translateable page'. See [[mw:File:Translate_manual_-_Page_example_-_21._Move_confirm.png|screenshot]].",
"pt-movepage-intro": "See definitions on [[mw:Help:Extension:Translate/Glossary]].",
"pt-movepage-logreason": "Used as summary.\n\nSee definition on [[mw:Help:Extension:Translate/Glossary]].\n\nParameters:\n* $1 - translatable-page title",
+ "pt-movepage-started": "Confirmation message after a move of a translatable page has been started.",
"pt-locked-page": "See definition on [[mw:Help:Extension:Translate/Glossary]].",
"pt-deletepage-lang-title": "Used as page title. Parameters:\n* $1 - page title\n\nSee definition on [[mw:Help:Extension:Translate/Glossary]].\n\nSee also:\n* {{msg-mw|Pt-deletepage-full-title}}",
"pt-deletepage-full-title": "Used as page title. Parameters:\n* $1 - page title\n\nSee definition on [[mw:Help:Extension:Translate/Glossary]].\n\nSee also:\n* {{msg-mw|Pt-deletepage-lang-title}}",
+ "pt-deletepage-invalid-title": "Error message when trying to delete a translation page or translatable page.",
"pt-deletepage-invalid-text": "See definition on [[mw:Help:Extension:Translate/Glossary]].",
"pt-deletepage-action-check": "This is a button label. \"List\" is an imperative verb.",
"pt-deletepage-action-perform": "Submit button on special page 'Deleting translatable page'. See [[mw:File:Translate_manual_-_Page_example_-_25._Delete_confirm.png|screenshot]].\n\ni think it's mean delete right now.",
@@ -160,28 +180,34 @@
"pt-deletepage-current": "{{Identical|Page name}}",
"pt-deletepage-reason": "{{Identical|Reason}}",
"pt-deletepage-subpages": "Checkbox label on special page 'Deleting translatable page'. see [[mw:File:Translate_manual_-_Page_example_-_25._Delete_confirm.png|screenshot]].",
+ "pt-deletepage-list-pages": "Heading for a list.",
"pt-deletepage-list-translation": "See definition on [[mw:Help:Extension:Translate/Glossary]].",
"pt-deletepage-list-section": "Heading in special page 'Deleting translatable page'. See [[mw:File:Translate_manual_-_Page_example_-_25._Delete_confirm.png|screenshot]].",
+ "pt-deletepage-list-other": "Heading for a list.",
"pt-deletepage-list-count": "Used to indicate how many pages will be deleted.\n\nParameters:\n* $1 - number of pages\nSee also:\n* {{msg-mw|Pt-movepage-list-count}}",
"pt-deletepage-full-logreason": "Used as summary.\n\nSee definition on [[mw:Help:Extension:Translate/Glossary]].\n\nParameters:\n* $1 - translatable-page title\nSee also:\n* {{msg-mw|Pt-deletepage-lang-logreason}}",
"pt-deletepage-lang-logreason": "Used as summary.\n\nSee definition on [[mw:Help:Extension:Translate/Glossary]].\n\nParameters:\n* $1 - translatable-page title\nSee also:\n* {{msg-mw|Pt-deletepage-full-logreason}}",
- "pagemigration": "{{doc-special|PageMigration}}",
+ "pt-deletepage-started": "Confirmation message after a deletion of a translatable page or a translation page has been started.",
+ "pt-deletepage-intro": "Help message when deleting a translatable page or a translation page.",
+ "pagemigration": "{{doc-special|PageMigration}}\nSee the [[mw:Special:MyLanguage/Help:Extension:Translate/Page_translation_administration#migration|page migration help]] for more information.",
"pagemigration-summary": "Description appearing on top of [[Special:PageMigration]].",
"pm-import-button-label": "Used as label for the \"Import\" button.\n{{Identical|Import}}",
"pm-savepages-button-label": "Used as label for the \"Save pages\" button.\n{{Identical|Save}}",
"pm-cancel-button-label": "Label for button to cancel the imports and clear the window.\n{{Identical|Cancel}}",
- "pm-pagename-placeholder": "Placeholder for the pagename input field.",
- "pm-langcode-placeholder": "Placeholder for the language code input field.\n{{Identical|Language code}}",
"pm-page-does-not-exist": "Parameters:\n* $1 - page title",
"pm-old-translations-missing": "Parameters:\n* $1 - page title",
"pm-extra-units-warning": "Warning given when number of translation units are greater than the number of source units",
- "pm-pagename-missing": "Error message given when page title field is blank",
- "pm-langcode-missing": "Error message given when language code field is blank",
+ "pm-pagename-missing": "Error message given when page title field does not contain a base page name.",
"pm-add-icon-hover-text": "Hover text for add new unit icon",
- "pm-swap-icon-hover-text": "Hover text for swap with unit below icon",
+ "pm-swap-icon-hover-text": "Hover text for the icon on Special:PageMigration which, when clicked, swaps a unit (text area) with the unit below.",
"pm-delete-icon-hover-text": "Hover text for delete unit icon",
+ "pm-pagetitle-placeholder": "Placeholder for the page title input field.",
"pm-pagetitle-invalid": "Error message given when an invalid page title is entered",
- "pm-summary-import": "Edit summary used while creating translation pages which were imported using Special:PageMigration",
+ "pm-pagetitle-missing": "Error message given when page title field is blank",
+ "pm-langcode-missing": "Error message given when the page title field does not contain a language code.",
+ "pm-summary-import": "Edit summary used while creating translation pages which were imported using [[Special:PageMigration]], see [[mw:Help:Extension:Translate/Page_translation_administration#Migrating to page translation]]",
+ "pm-on-import-message-text": "Message shown at Special:PageMigration after importing the translations",
+ "pm-on-save-message-text": "Message shown at Special:PageMigration after saving the translation units",
"tpt-translate-title": "Checkbox on Special:PageTranslation to mark title for translation",
"pp-save-summary": "Edit summary for saving a page prepared for translation by the tool",
"pagepreparation": "{{doc-special|PageMigration}}",
@@ -195,7 +221,9 @@
"pp-pagename-missing": "Error message given when page title field is blank",
"pp-diff-old-header": "Header text for old revision for the diff shown at Special:PagePreparation",
"pp-diff-new-header": "Header text for new revision for the diff shown at Special:PagePreparation",
- "tpt-unlink-confirm": "Confirmation message shown to user when unmarking page in active translation",
+ "tpt-unlink-confirm": "Confirmation message shown to user when unmarking page in active translation.",
"tpt-unlink-button": "Button text",
- "tpt-unlink-summary": "Edit summary"
+ "tpt-unlink-summary": "Edit summary",
+ "tpt-generic-confirm": "Confirmation message shown to user on Special:PageTranslation. Mostly shown to users without JavaScript.",
+ "tpt-generic-button": "Butten text message shown to user on Special:PageTranslation. Mostly shown to users without JavaScript.\n{{Identical|Confirm}}"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/rm.json b/MLEB/Translate/i18n/pagetranslation/rm.json
index 8d9bc1f9..6ee9a347 100644
--- a/MLEB/Translate/i18n/pagetranslation/rm.json
+++ b/MLEB/Translate/i18n/pagetranslation/rm.json
@@ -2,11 +2,13 @@
"@metadata": {
"authors": [
"Gion-andri",
- "Minisarm"
+ "Minisarm",
+ "Terfili"
]
},
"pagetranslation": "Translaziun da paginas",
"tpt-diff-old": "Text precedent",
"tpt-diff-new": "Nov text",
- "tpt-languages-legend": "Autras linguas:"
+ "tpt-languages-legend": "Autras linguas:",
+ "tpt-languages-nonzero": "$1 ($2% translatà)"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/ro.json b/MLEB/Translate/i18n/pagetranslation/ro.json
index f879f3cf..cff20283 100644
--- a/MLEB/Translate/i18n/pagetranslation/ro.json
+++ b/MLEB/Translate/i18n/pagetranslation/ro.json
@@ -10,12 +10,9 @@
"pagetranslation": "Traducere pagini",
"right-pagetranslation": "Marchează versiuni ale paginilor pentru a fi traduse",
"action-pagetranslation": "administrați paginile traductibile",
- "tpt-desc": "Extensie pentru traducerea conținutului paginilor",
"tpt-section": "Unitate de traducere $1",
"tpt-section-new": "Unitate de traducere nouă.\nNume: $1",
"tpt-section-deleted": "Unitate de traducere $1",
- "tpt-template": "Șablon pagină",
- "tpt-templatediff": "Formatul paginii a fost schimbat.",
"tpt-diff-old": "Text precedent",
"tpt-diff-new": "Text nou",
"tpt-submit": "Marchează această versiune pentru traducere",
@@ -28,7 +25,6 @@
"tpt-oldrevision": "$2 nu este cea mai recentă versiune a paginii [[:$1]].\nDoar cele mai recente versiuni pot fi marcate pentru traducere.",
"tpt-notsuitable": "Pagina $1 nu se califică pentru traducere.\nAsigurați-vă că are eticheta <nowiki><translate></nowiki> și are o sintaxă validă.",
"tpt-offer-notify": "Puteți <span class=\"plainlinks\">[$1 notifica traducătorii]</span> despre această pagină.",
- "tpt-badsect": "„$1” nu este un nume valid pentru unitatea de traducere $2.",
"tpt-mark-summary": "Marcat această versiune pentru traducere",
"tpt-edit-failed": "Pagina nu a putut fi actualizată: $1",
"tpt-already-marked": "Ultima versiune a acestei pagini a fost deja marcată pentru traducere.",
@@ -53,7 +49,9 @@
"translate-tag-translate-link-desc": "Tradu această pagină",
"translate-tag-markthis": "Marchează această pagină pentru traducere",
"tpt-translation-intro": "Această pagină reprezintă <span class=\"plainlinks\">[$1 versiunea tradusă]</span> a paginii [[$2]], procesul de traducere fiind completat în proporție de $3%.",
+ "tpt-translation-intro-fuzzy": "Traducerile învechite sunt marcate în acest fel.",
"tpt-languages-legend": "Alte limbi:",
+ "tpt-languages-zero": "Începeți traducerea în această limbă",
"tpt-languages-nonzero": "$1 ($2% tradusă)",
"tpt-tab-translate": "Traducere",
"tpt-discouraged-language-reason": "Motiv: $1",
diff --git a/MLEB/Translate/i18n/pagetranslation/roa-tara.json b/MLEB/Translate/i18n/pagetranslation/roa-tara.json
index 42066a3a..ee8a0cab 100644
--- a/MLEB/Translate/i18n/pagetranslation/roa-tara.json
+++ b/MLEB/Translate/i18n/pagetranslation/roa-tara.json
@@ -7,12 +7,9 @@
"pagetranslation": "Pàgene de traduzione",
"right-pagetranslation": "Signe le revisiune de le pàggene pe traduzione",
"action-pagetranslation": "gestisce le pàggene traducibbele",
- "tpt-desc": "Estenzione pa traduzione de le pàggene de condenute",
"tpt-section": "Aunità de traduzione $1",
"tpt-section-new": "Nova unità de traduzione.\nNome: $1",
"tpt-section-deleted": "Unità de traduzione $1",
- "tpt-template": "Pàgene d'u template",
- "tpt-templatediff": "'U template d'a pàgene ha cangiate.",
"tpt-diff-old": "Teste precedende",
"tpt-diff-new": "Teste nuève",
"tpt-submit": "Signe sta versione pa traduzione",
@@ -23,7 +20,6 @@
"tpt-badtitle": "'U nome d'a pàgene date ($1) non g'è 'nu titole valide",
"tpt-nosuchpage": "Pàgene $1 non g'esiste",
"tpt-oldrevision": "$2 non g'è l'urtema versione d'a pàgene [[:$1]].\nSulamende le urteme versiune ponne essere signate pa traduzione.",
- "tpt-badsect": "\"$1\" non g'è 'nu nome valide pe l'aunità de traduzione $2.",
"tpt-mark-summary": "Signate sta versione pa traduzione",
"tpt-edit-failed": "Non ge pozze aggiornà 'a pàgene: $1",
"tpt-duplicate": "'U nome $1 de l'aunità de traduzione ha state ausate cchiù de 'na vote.",
@@ -44,6 +40,7 @@
"tpt-languages-legend": "Otre lènghe:",
"tpt-languages-separator": "&#160;•&#32;",
"tpt-languages-zero": "Accuminze 'a traduzione pe sta lènghe",
+ "tpt-languages-nonzero": "$1 ($2% tradotte)",
"tpt-tab-translate": "Traduce",
"tpt-discouraged-language-reason": "Mutive: $1",
"aggregategroups": "Gruppe aggregate",
@@ -54,9 +51,37 @@
"tpt-aggregategroup-new-description": "Descrizione (opzionale):",
"tpt-aggregategroup-remove-confirm": "Sì secure ca vuè ccu scangille stu gruppe aggregate?",
"tpt-aggregategroup-invalid-group": "'U gruppe non g'esiste",
+ "tpt-aggregategroup-edit-name": "Nome:",
+ "tpt-aggregategroup-edit-description": "Descrizione:",
+ "tpt-aggregategroup-update": "Reggìstre",
+ "tpt-aggregategroup-update-cancel": "Annulle",
+ "tpt-invalid-group": "Gruppe invalide",
+ "log-description-pagetranslation": "Archivije pe le aziune collegate a 'u sisteme de traduzione d'a pàgene",
"log-name-pagetranslation": "Archivije de le traduziune de le pàggene",
+ "logentry-pagetranslation-mark": "$1 {{GENDER:$2|ave signate}} $3 pa traduzione",
+ "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|ave luate}} $3 da 'u sisteme de traduzione",
+ "logentry-pagetranslation-moveok": "$1 {{GENDER:$2|ave combletate}} 'u spustamende d'a pàgene traducibbile $3 sus a $4",
+ "logentry-pagetranslation-movenok": "$1 {{GENDER:$2|ave acchiate}} 'nu probleme mendre ca ste spustave 'a pàgene $3 sus a $4",
+ "logentry-pagetranslation-deletefok": "$1 {{GENDER:$2|ave combletate}} 'a scangellazione d'a pàgene traducibbile $3",
+ "logentry-pagetranslation-deletefnok": "$1 {{GENDER:$2|ha sciute a male}} 'a scangellazione de $3 ca appartene 'a pàgene traducibbile $4",
+ "logentry-pagetranslation-deletelok": "$1 {{GENDER:$2|ave combletate}} 'a scangellazione d'a pàgene traducibbile $3",
+ "logentry-pagetranslation-deletelnok": "$1 {{GENDER:$2|ha sciute a male}} 'a scangellazione de $3 ca appartene 'a pàgene traducibbile $4",
"logentry-pagetranslation-encourage": "$1 {{GENDER:$2|'ngoragge}} 'a traduzione de $3",
"logentry-pagetranslation-discourage": "$1 {{GENDER:$2|scoragge}} 'a traduzione de $3",
+ "logentry-pagetranslation-prioritylanguages-unset": "$1 {{GENDER:$2|ave luate}} le lènghe prioritarie da 'a pàgene traducibbile $3",
+ "logentry-pagetranslation-prioritylanguages": "$1 {{GENDER:$2|ave mise}} le lènghe prioritarie da 'a pàgene traducibbile $3 sus a $5",
+ "logentry-pagetranslation-prioritylanguages-force": "$1 {{GENDER:$2|ave limitate}} le lènghe pa pàgene traducibbile $3 sus a $5",
+ "logentry-pagetranslation-associate": "$1 {{GENDER:$2|ave mise}} 'a pàgene traducibbile $3 jndr'à 'u gruppe aggregate $4",
+ "logentry-pagetranslation-dissociate": "$1 {{GENDER:$2|ave luate}} 'a pàgene traducibbile $3 da 'u gruppe aggregate $4",
+ "log-action-filter-pagetranslation": "Tipe de azione:",
+ "log-action-filter-pagetranslation-mark": "Signe da traducere",
+ "log-action-filter-pagetranslation-unmark": "Live da 'a traduzione",
+ "log-action-filter-pagetranslation-move": "Spustaminde d'a pàgene",
+ "log-action-filter-pagetranslation-delete": "Scangellazziune d'a pàgene",
+ "log-action-filter-pagetranslation-encourage": "'Ngoraggiamende a 'a traduzione",
+ "log-action-filter-pagetranslation-discourage": "Scoraggiamende a 'a traduzione",
+ "log-action-filter-pagetranslation-prioritylanguages": "Cangiamende a le lènghe prioritarie",
+ "log-action-filter-pagetranslation-aggregategroups": "Cangiaminde a le gruppe aggregate",
"pt-movepage-title": "Spuèste 'a pàgene traducibbile \"$1\"",
"pt-movepage-list-pages": "Elenghe de le pàggene da spustà",
"pt-movepage-list-count": "In totale $1 {{PLURAL:$1|pàgene|pàggene}} da spustà.",
@@ -74,5 +99,13 @@
"pt-deletepage-subpages": "Scangille tutte le sottopàggene",
"pt-deletepage-list-pages": "Elenghe de le pàggene da scangellà",
"pt-deletepage-list-translation": "Pàggene de traduzione",
- "pt-deletepage-list-other": "Otre sottopàggene"
+ "pt-deletepage-list-other": "Otre sottopàggene",
+ "pm-import-button-label": "'Mborte",
+ "pm-savepages-button-label": "Reggìstre",
+ "pm-cancel-button-label": "Annulle",
+ "pm-page-does-not-exist": "$1 non g'esiste.",
+ "pm-old-translations-missing": "$1 non ge tène traduziune vicchie.",
+ "pp-save-button-label": "Reggìstre",
+ "pp-cancel-button-label": "Annulle",
+ "pp-save-message": "'A pàgene ha state reggistrate. Puè [$1 cangiarle]."
}
diff --git a/MLEB/Translate/i18n/pagetranslation/ru.json b/MLEB/Translate/i18n/pagetranslation/ru.json
index e077dc7f..b2088eed 100644
--- a/MLEB/Translate/i18n/pagetranslation/ru.json
+++ b/MLEB/Translate/i18n/pagetranslation/ru.json
@@ -15,18 +15,18 @@
"Lockal",
"Okras",
"Purodha",
- "Александр Сигачёв"
+ "Александр Сигачёв",
+ "Mailman",
+ "Movses",
+ "Vlad5250"
]
},
"pagetranslation": "Перевод страниц",
"right-pagetranslation": "отметка версий страниц для перевода",
"action-pagetranslation": "управлять переводимыми страницами",
- "tpt-desc": "Расширение для перевода содержимого страниц",
"tpt-section": "Блок перевода $1",
"tpt-section-new": "Новый блок перевода. Название: $1",
"tpt-section-deleted": "Элемент перевода $1",
- "tpt-template": "Страничный шаблон",
- "tpt-templatediff": "Этот страничный шаблон изменён.",
"tpt-diff-old": "Предыдущий текст",
"tpt-diff-new": "Новый текст",
"tpt-submit": "Отметить эту версию для перевода",
@@ -34,16 +34,15 @@
"tpt-sections-deleted": "Удалённые элементы перевода",
"tpt-sections-template": "Шаблон страницы перевода",
"tpt-action-nofuzzy": "Не помечать переводы как устаревшие",
- "tpt-badtitle": "Указанное название страницы ($1) не является допустимым",
+ "tpt-badtitle": "Указано недопустимое название страницы ($1)",
"tpt-nosuchpage": "Страница «$1» не существует.",
- "tpt-oldrevision": "$2 не является последней версией страницы [[:$1]].\nТолько последние версии могут быть отмечены для перевода.",
- "tpt-notsuitable": "Страница $1 является неподходящей для перевода.\nУбедитесь, что она имеет теги <nowiki><translate></nowiki> и правильный синтаксис.",
+ "tpt-oldrevision": "$2 — не последняя версия страницы [[:$1]].\nТолько последние версии могут быть отмечены для перевода.",
+ "tpt-notsuitable": "Страница $1 не подходит для перевода.\nУбедитесь, что она содержит теги <nowiki><translate></nowiki> и правильный синтаксис.",
"tpt-saveok": "Страница [[:$1]] была отмечена для перевода, она содержит $2 {{PLURAL:$2|блок перевода|блока перевода|блоков переводов}}.\nТеперь страницу можно <span class=\"plainlinks\">[$3 переводить]</span>.",
"tpt-offer-notify": "Вы можете <span class=\"plainlinks\">[$1 уведомить переводчиков]</span> об этой странице.",
- "tpt-badsect": "«$1» не является допустимым названием для блока перевода $2.",
"tpt-showpage-intro": "Ниже приведены новые, существующие и удалённые разделы.\nПрежде чем пометить эту версию как доступную для перевода, убедитесь, что изменения в переводимых элементах будут минимальны, чтобы минимизировать объём ненужной работы переводчикам.",
"tpt-mark-summary": "Отметить эту версию для перевода",
- "tpt-mark-nochanges": "Нет никакого различия между этой версией и последней отмеченной версией.",
+ "tpt-mark-nochanges": "Не внесено никаких изменений. Отметка этой страницы для перевода не отредактирует ни эту страницу, ни любые существующие элементы перевода.",
"tpt-edit-failed": "Невозможно обновить эту страницу: $1",
"tpt-duplicate": "Перевод элемента с названием $1 используется более одного раза.",
"tpt-already-marked": "Последняя версия этой страницы уже была отмечена для перевода.",
@@ -73,24 +72,25 @@
"translate-tag-markthis": "Отметить эту страницу для перевода",
"translate-tag-markthisagain": "Эта страница была <span class=\"plainlinks\">[$1 изменена]</span> с момента последней <span class=\"plainlinks\">[$2 отметки о переводе]</span>.",
"translate-tag-hasnew": "На этой странице были произведены <span class=\"plainlinks\">[$1 изменения]</span>, не отмеченные для перевода.",
- "tpt-translation-intro": "Эта страница является <span class=\"plainlinks\">[$1 переводом]</span> страницы [[$2]]. Перевод выполнен на $3%.",
+ "tpt-translation-intro": "Эта страница — <span class=\"plainlinks\">[$1 перевод]</span> страницы [[$2]]. Перевод выполнен на $3%.",
+ "tpt-translation-intro-fuzzy": "Таким образом помечены устаревшие переводы.",
"tpt-languages-legend": "Другие языки:",
"tpt-languages-zero": "Начать перевод на этот язык",
"tpt-languages-nonzero": "$1 ($2% переведено)",
"tpt-tab-translate": "Перевести",
"tpt-target-page": "Эта страница не может быть обновлена вручную.\nЭто перевод страницы [[$1]], перевод может быть обновлён с помощью специального [$2 инструмента перевода].",
+ "tpt-patrolling-blocked": "Эта страница не может быть отпатрулирована. Используйте вместо этого действие перевода, чтобы проверить его.",
"tpt-unknown-page": "Это пространство имён зарезервировано для переводов текстов страниц.\nСтраница, которую вы пытаетесь изменить, не соответствует какой-либо странице, отмеченной для перевода.",
"tpt-translation-restricted": "Перевод этой страницы на данный язык был предотвращен администратором перевода.\n\n\nПричина: $1",
"tpt-discouraged-language-force-header": "Эта страница не может быть переведена на $1.",
"tpt-discouraged-language-force-content": "Администратор переводов решил, что эта страница может быть переведена только на $1.",
- "tpt-discouraged-language-header": "Перевод на $1 не является приоритетным для этой страницы.",
+ "tpt-discouraged-language-header": "Язык «$1» не включён в список приоритетных для перевода этой страницы.",
"tpt-discouraged-language-content": "Администратор переводов решил сосредоточить усилия по переводу на $1.",
"tpt-discouraged-language-force": "<strong>Эта страница не может быть переведена на $2.</strong>\n\nАдминистратор перевода решил, что эта страница может быть переведена только на $3.",
"tpt-discouraged-language": "<strong>Перевод на $2 не приоритетен для этой страницы.</strong>\n\nАдминистратор перевода решил сфокусировать усилия по переводу на $3.",
"tpt-discouraged-language-reason": "Причина: $1",
"tpt-priority-languages": "Администратор перевода установил $1 в качестве приоритетного языка для этой группы.",
"tpt-render-summary": "Обновление для соответствия новой версии исходной страницы.",
- "tpt-download-page": "Экспортировать страницу с переводами",
"aggregategroups": "Агрегированные группы",
"tpt-aggregategroup-add": "Добавить",
"tpt-aggregategroup-save": "Сохранить",
@@ -113,7 +113,7 @@
"log-description-pagetranslation": "Журнал для действий, связанных с системой перевода страниц",
"log-name-pagetranslation": "Журнал перевода страниц",
"logentry-pagetranslation-mark": "$1 {{GENDER:$2|пометил|пометила}} страницу «$3» как доступную для перевода",
- "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|удалил|удалила}} страницу «$3» из списка доступных для перевода",
+ "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|удалил|удалила}} «$3» из системы перевода",
"logentry-pagetranslation-moveok": "$1 {{GENDER:$2|переименовал|переименовала}} доступную для перевода страницу «$3» в «$4»",
"logentry-pagetranslation-movenok": "$1 {{GENDER:$2|столкнулся|столкнулась}} с проблемой при переименовании страницы «$3» в «$4»",
"logentry-pagetranslation-deletefok": "$1 {{GENDER:$2|удалил|удалила}} доступную для перевода страницу «$3»",
@@ -127,6 +127,15 @@
"logentry-pagetranslation-prioritylanguages-force": "$1 {{GENDER:$2|ограничил|ограничила}} для доступной для перевода страницы «$3» список языков: $5",
"logentry-pagetranslation-associate": "$1 {{GENDER:$2|добавил|добавила}} доступную для перевода страницу «$3» в агрегированную группу «$4»",
"logentry-pagetranslation-dissociate": "$1 {{GENDER:$2|удалил|удалила}} доступную для перевода страницу «$3» из агрегированной группы «$4»",
+ "log-action-filter-pagetranslation": "Тип действия:",
+ "log-action-filter-pagetranslation-mark": "Пометить для перевода",
+ "log-action-filter-pagetranslation-unmark": "Удаление из перевода",
+ "log-action-filter-pagetranslation-move": "Перемещения страницы",
+ "log-action-filter-pagetranslation-delete": "Удаления страницы",
+ "log-action-filter-pagetranslation-encourage": "Установка отметок \"Переведено\"",
+ "log-action-filter-pagetranslation-discourage": "Снятие отметок \"Переведено\"",
+ "log-action-filter-pagetranslation-prioritylanguages": "изменение списка приоритетных языков",
+ "log-action-filter-pagetranslation-aggregategroups": "изменение агрегированных групп",
"pt-movepage-title": "Переименование доступной для перевода страницы $1",
"pt-movepage-blockers": "Страница с возможностью перевода не может быть переименована из-за {{PLURAL:$1|1=следующей ошибки|следующих ошибок}}:",
"pt-movepage-block-base-exists": "Целевая страница «[[:$1]]» уже существует.",
@@ -152,10 +161,10 @@
"pt-movepage-action-other": "Изменить цель",
"pt-movepage-intro": "Эта служебная страница позволяет переименовывать страницы, отмеченные для перевода.\nПереименование не будет произведено одномоментно, так как требуется сменить название многим страницам.\nВо время процесса переименования пропадает возможность взаимодействия с этими страницами.\nВозникшие проблемы будут записаны в [[Special:Log/pagetranslation|журнал]], их нужно будет исправить вручную.",
"pt-movepage-logreason": "Часть переводимой страницы $1.",
- "pt-movepage-started": "Основная страница переименована.\nПожалуйста, проверьте [[Special:Log/pagetranslation|журнал переводимых страниц]] на наличие ошибок.",
+ "pt-movepage-started": "Пожалуйста, проверьте [[Special:Log/pagetranslation|журнал переводимых страниц]] на наличие ошибок и сообщения о завершении.",
"pt-locked-page": "Эта страница заблокирована, так как переводимая страница сейчас переименовывается.",
- "pt-deletepage-lang-title": "Удаление страницы перевода «$1».",
- "pt-deletepage-full-title": "Удаление доступной для перевода страницы $1.",
+ "pt-deletepage-lang-title": "Удаление страницы перевода «$1»",
+ "pt-deletepage-full-title": "Удаление доступной для перевода страницы «$1»",
"pt-deletepage-invalid-title": "Указана неверная страница.",
"pt-deletepage-invalid-text": "Указанная страница не относится к числу доступных для перевода страниц или их переводов.",
"pt-deletepage-action-check": "Список подлежащих удалению страниц",
@@ -181,24 +190,27 @@
"pm-import-button-label": "Импортировать",
"pm-savepages-button-label": "Сохранить",
"pm-cancel-button-label": "Отмена",
- "pm-pagename-placeholder": "Введите имя страницы",
- "pm-langcode-placeholder": "Код языка",
"pm-page-does-not-exist": "$1 не существует",
"pm-old-translations-missing": "$1 не содержит старые переводы",
"pm-extra-units-warning": "Могут присутствовать дополнительные блоки. Пожалуйста, соотнесите правильно источники и блоков перевода",
"pm-pagename-missing": "Пожалуйста, введите имя страницы",
- "pm-langcode-missing": "Пожалуйста, введите код языка",
"pm-add-icon-hover-text": "Добавить ниже блок",
"pm-swap-icon-hover-text": "Поменять местами с блоком ниже",
"pm-delete-icon-hover-text": "Удалить блок",
- "pm-pagetitle-invalid": "Пожалуйста, введите корректный заголовок страницы",
+ "pm-pagetitle-placeholder": "Введите заголовок страницы",
+ "pm-pagetitle-invalid": "Пожалуйста, введите корректный заголовок страницы. Он должен быть в формате <page-name>/<language-code>.",
+ "pm-pagetitle-missing": "Пожалуйста, введите заголовок страницы",
+ "pm-langcode-missing": "Кажется, в названии отсутствует языковой код. Пожалуйста, введите код языка в формате <название-страницы>/<языковой-код>.",
"pm-summary-import": "Импортирован перевод с использованием [[Special:PageMigration|миграции страниц]]",
+ "pm-on-import-message-text": "Старые переводы импортированы. Чтобы улучшить соответствие элементов перевода, используйте опции по добавлению, замене и удалению фрагментов; затем нажмите кнопку «{{int:pm-savepages-button-label}}», чтобы записать результат. Для отмены нажмите кнопку «{{int:pm-cancel-button-label}}».",
+ "pm-on-save-message-text": "Элементы перевода сохранены. Теперь можно ввести название новой страницы перевода, чтобы перенести её, или внести изменения в отображаемые ниже элементы и сохранить новую версию.",
"tpt-translate-title": "Разрешить перевод названия страницы",
"pp-save-summary": "Подготовка страницы к переводу",
"pagepreparation": "Подготовить страницу к переводу",
"pp-pagename-placeholder": "Введите имя страницы",
"pp-prepare-button-label": "Подготовить",
"pp-save-button-label": "Сохранить",
+ "pp-cancel-button-label": "Отмена",
"pp-save-message": "Страница была сохранена. Вы можете [$1 редактировать] её.",
"pp-prepare-message": "Страница была подготовлена для перевода. Различия между версиями смотрите ниже. Нажмите кнопку «{{int:pp-save-button-label}}», если всё нормально!",
"pp-already-prepared-message": "Кажется, эта страница уже была подготовлена для перевода. Нет никаких изменений по сравнению с предыдущей версией.",
@@ -207,5 +219,7 @@
"pp-diff-new-header": "Подготовленный текст",
"tpt-unlink-confirm": "Пожалуйста, подтвердите, что вы действительно хотите исключить эту страницу из системы перевода.\nСелектор языка и имена переведенной страницы перестанут работать.\nСтраницы перевода станут редактируемыми.",
"tpt-unlink-button": "Исключить из перевода",
- "tpt-unlink-summary": "Исключение страницы из перевода"
+ "tpt-unlink-summary": "Исключение страницы из перевода",
+ "tpt-generic-confirm": "Пожалуйста, подтвердите действие.",
+ "tpt-generic-button": "Подтвердить"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/rue.json b/MLEB/Translate/i18n/pagetranslation/rue.json
index 1301ac7a..0e172c23 100644
--- a/MLEB/Translate/i18n/pagetranslation/rue.json
+++ b/MLEB/Translate/i18n/pagetranslation/rue.json
@@ -6,12 +6,9 @@
},
"pagetranslation": "Переклад сторінок",
"right-pagetranslation": "Означованя верзій сторінок про переклад",
- "tpt-desc": "Росшыріня про перекладаня сторінок з обсягом",
"tpt-section": "Блок перекладу $1",
"tpt-section-new": "Новый блок перекладу.\nНазва: $1",
"tpt-section-deleted": "Блок перекладу $1",
- "tpt-template": "Шаблона сторінкы",
- "tpt-templatediff": "Шаблона сторінкы зміненый.",
"tpt-diff-old": "Попереднїй текст",
"tpt-diff-new": "Новый текст",
"tpt-submit": "Означіти тоту верзію про переклад",
diff --git a/MLEB/Translate/i18n/pagetranslation/sa.json b/MLEB/Translate/i18n/pagetranslation/sa.json
index a2523f57..ca744c7d 100644
--- a/MLEB/Translate/i18n/pagetranslation/sa.json
+++ b/MLEB/Translate/i18n/pagetranslation/sa.json
@@ -2,9 +2,40 @@
"@metadata": {
"authors": [
"Ansumang",
- "Shubha"
+ "Shubha",
+ "NehalDaveND"
]
},
+ "tpt-diff-old": "पूर्वतनः पाठः",
+ "tpt-diff-new": "नवीनः पाठः",
+ "tpt-other-pages-title": "सन्धिभग्नानि पृष्ठानि",
+ "tpt-select-prioritylangs-reason": "कारणम् :",
+ "tpt-languages-legend": "अन्यभाषाः :",
"tpt-languages-nonzero": "$1 ($2% अनुवादः जातः)",
- "pt-movepage-reason": "कारणम् :"
+ "tpt-tab-translate": "अनूद्यताम्",
+ "tpt-discouraged-language-reason": "कारणम् : $1",
+ "tpt-aggregategroup-add": "योज्यताम्",
+ "tpt-aggregategroup-save": "रक्ष्यताम्",
+ "tpt-aggregategroup-new-name": "नाम :",
+ "tpt-aggregategroup-new-description": "विवरणम् (ऐच्छिकम्)",
+ "tpt-aggregategroup-edit-name": "नाम :",
+ "tpt-aggregategroup-edit-description": "वर्णनम् :",
+ "tpt-aggregategroup-update": "रक्ष्यताम्",
+ "tpt-aggregategroup-update-cancel": "निरस्यताम्",
+ "tpt-invalid-group": "अमान्यं दलम्",
+ "pt-movepage-current": "वर्तमानं सदस्यनाम",
+ "pt-movepage-new": "नवीननाम :",
+ "pt-movepage-reason": "कारणम् :",
+ "pt-deletepage-action-other": "लक्ष्यं परिवर्त्यताम्",
+ "pt-deletepage-lang-legend": "अनुवादपृष्ठम् अपाक्रियताम्",
+ "pt-deletepage-current": "पृष्ठनाम :",
+ "pt-deletepage-reason": "कारणम् :",
+ "pt-deletepage-subpages": "सर्वाणि उपपृष्ठानि अपाक्रियन्ताम्",
+ "pt-deletepage-list-translation": "पृष्ठम् अनुद्यताम्",
+ "pt-deletepage-list-other": "अन्यानि उपपृष्ठानि",
+ "pm-import-button-label": "आयातं करोतु",
+ "pm-savepages-button-label": "रक्ष्यताम्",
+ "pm-cancel-button-label": "निरस्यताम्",
+ "pp-save-button-label": "रक्ष्यताम्",
+ "pp-cancel-button-label": "निरस्यताम्"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/sah.json b/MLEB/Translate/i18n/pagetranslation/sah.json
index 3c1fec89..df061727 100644
--- a/MLEB/Translate/i18n/pagetranslation/sah.json
+++ b/MLEB/Translate/i18n/pagetranslation/sah.json
@@ -6,12 +6,9 @@
},
"pagetranslation": "Сирэйдэри тылбаастааһын",
"right-pagetranslation": "Тылбаастанар сирэйдэр барылларын бэлиэтээһин",
- "tpt-desc": "Сирэй ис хоһоонун тылбаастыырга кэҥэтии",
"tpt-section": "Тылбаас единицата $1",
"tpt-section-new": "Тылбаас саҥа единицата.\nАата: $1",
"tpt-section-deleted": "Тылбаас элэмиэнэ $1",
- "tpt-template": "Сирэй халыыба",
- "tpt-templatediff": "Бу сирэй халыыба уларытыллыбыт (уларытылынна).",
"tpt-diff-old": "Бу иннинээҕи тиэкис",
"tpt-diff-new": "Саҥа тиэкис",
"tpt-submit": "Бу барылы тылбаастыырга бэлиэтээһин",
@@ -22,7 +19,6 @@
"tpt-oldrevision": "$2 [[:$1]] сирэй бүтэһик барыла буолбатах.\nСирэйдэр бүтэһик эрэ барыллара тылбааска бэлиэтэниэхтэрин сөп.",
"tpt-notsuitable": "$1 сирэй тылбаастыырга табыгаһа суох.\n<nowiki><translate></nowiki> тиэктээҕин уонна синтаксииһэ сөпкө суруллубутун бэрэбиэркэлээ.",
"tpt-saveok": "[[:$1]] сирэй тылбаастанарга бэлиэтэммит, кини иһигэр {{PLURAL:$2|биир тылбаастаныахтаах этии|$2 тылбаастаныахтаах этии}} баар.\nБилигин сирэйи <span class=\"plainlinks\">[$3 тылбаастыахха]</span> сөп.",
- "tpt-badsect": "\"$1\" диэн аат $2 тылбаас единицатын аатыгар сөп түбэспэт.",
"tpt-showpage-intro": "Манна саҥа, билигин баар уонна сотуллубут тылбаастаныахтаах тыллар уонна этиилэр көстөллөр.\nБу барылы тылбаастаныахтаах курдук бэлиэтиэҥ иннинэ уларытыыҥ төһө кыалларынан аҕыйах буоларын ситиһэ сатаа, ол тылбаасчыттар үлэлэрин аҕыйатыа.",
"tpt-mark-summary": "Бу барылы тылбастаныахтаах курдук бэлиэтииргэ",
"tpt-edit-failed": "Бу сирэйи саҥардар табыллыбата: $1",
diff --git a/MLEB/Translate/i18n/pagetranslation/scn.json b/MLEB/Translate/i18n/pagetranslation/scn.json
index 51f64d71..53405973 100644
--- a/MLEB/Translate/i18n/pagetranslation/scn.json
+++ b/MLEB/Translate/i18n/pagetranslation/scn.json
@@ -1,9 +1,16 @@
{
"@metadata": {
"authors": [
- "Aushulz"
+ "Aushulz",
+ "Pippinu",
+ "Sarvaturi"
]
},
+ "pagetranslation": "Traduzzioni pàggini",
+ "translate-tag-translate-link-desc": "Traduci sta pàggina",
+ "tpt-translation-intro": "Sta pàggina è na <span class=\"plainlinks\">[$1 virsioni traduciuta]</span> dâ pàggina [[$2]]; la traduzzioni è cumpleta ô $3&nbsp;%.",
+ "tpt-languages-legend": "Àutri lingui",
+ "tpt-languages-nonzero": "$1 (traduciuta ô $2%)",
"pt-movepage-reason": "Mutivu:",
"pt-deletepage-reason": "Mutivu:"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/sco.json b/MLEB/Translate/i18n/pagetranslation/sco.json
index 2a0cf0bd..f2d717c3 100644
--- a/MLEB/Translate/i18n/pagetranslation/sco.json
+++ b/MLEB/Translate/i18n/pagetranslation/sco.json
@@ -1,17 +1,16 @@
{
"@metadata": {
"authors": [
- "John Reid"
+ "John Reid",
+ "AmaryllisGardener"
]
},
"pagetranslation": "Page owersetin",
"right-pagetranslation": "Maurk versions o pages fer owersetin",
"action-pagetranslation": "manage owersetable pages",
- "tpt-desc": "Extension fer owersetin content pages",
"tpt-section": "Owersetin unit $1",
"tpt-section-new": "New owersetin unit.\nName: $1",
"tpt-section-deleted": "Owersetin unit $1",
- "tpt-templatediff": "The page template haes chynged.",
"tpt-diff-old": "Preeveeos tex",
"tpt-diff-new": "New tex",
"tpt-submit": "Maurk this version fer owersetin",
@@ -23,9 +22,8 @@
"tpt-nosuchpage": "Page $1 disna exeest",
"tpt-oldrevision": "$2 isna the laitest version o the page [[:$1]].\nYinlie laitest versions can be maurkt fer owersetin.",
"tpt-notsuitable": "Page $1 isna suitable fer owersetin.\nMak sair that it haes <nowiki><translate></nowiki> tags n haes ae valit syntax.",
- "tpt-saveok": "The page [[:$1]] haes been maurkt fer owersetin wi $2 {{PLURAL:$2|translation unit|owersetin units}}.\nThe page can nou be <span class=\"plainlinks\">[$3 owerset]</span>.",
+ "tpt-saveok": "The page [[:$1]] haes been maurkt fer owersetin wi $2 {{PLURAL:$2|owersetin unit|owersetin units}}.\nThe page can nou be <span class=\"plainlinks\">[$3 owerset]</span>.",
"tpt-offer-notify": "Ye can <span class=\"plainlinks\">[$1 tell owerseters]</span> aneat this page.",
- "tpt-badsect": "\"$1\" isna ae valit name fer owerset unit $2.",
"tpt-showpage-intro": "Ablo new, exeestin n delytit owerset units ar leetit.\nAfore maurkin this version fer owersetin, check that the chynges til owerset units ar wee tae avoid onnecessair wairk fer the owerseters.",
"tpt-mark-summary": "Maurkt this version fer owersetin",
"tpt-edit-failed": "Coudna update the page: $1",
@@ -58,6 +56,7 @@
"tpt-translation-intro": "This page is aen <span class=\"plainlinks\">[$1 owerset version]</span> o the page [[$2]] n the owersetin is $3% compleate.",
"tpt-languages-legend": "Ither leids:",
"tpt-languages-zero": "Stairt owersetin fer this leid",
+ "tpt-languages-nonzero": "$1 ($2% translatit)",
"tpt-tab-translate": "Owerset",
"tpt-target-page": "This page canna be updated manuallie.\nThis page is aen owerset o the page [[$1]] n the owersetin can be updated uisin [$2 the owersetin tuil].",
"tpt-unknown-page": "This namespace is reserved fer content page owersets.\nThe page that ye'r ettlin tae eedit disna seem tae correspond wi onie page maurkt fer owersetin.",
@@ -67,7 +66,6 @@
"tpt-discouraged-language-reason": "Raison: $1",
"tpt-priority-languages": "Aen owerset admeenistrater haes set the prioritie leids fer this groop til $1.",
"tpt-render-summary": "Updatin tae match new version o soorce page",
- "tpt-download-page": "Export page wi owersets",
"aggregategroups": "Aggregate groops",
"tpt-aggregategroup-save": "Hain",
"tpt-aggregategroup-add-new": "Eik ae new aggregate groop",
diff --git a/MLEB/Translate/i18n/pagetranslation/shn.json b/MLEB/Translate/i18n/pagetranslation/shn.json
index 19679ead..b9b4b005 100644
--- a/MLEB/Translate/i18n/pagetranslation/shn.json
+++ b/MLEB/Translate/i18n/pagetranslation/shn.json
@@ -1,8 +1,9 @@
{
"@metadata": {
"authors": [
- "Saimawnkham"
+ "Saimawnkham",
+ "Saosukham"
]
},
- "tpt-languages-nonzero": "$1 (ပိၼ်ၽႃႇသႃႇယဝ်ႉ $2%)"
+ "tpt-languages-nonzero": "$1 (ပိၼ်ႇၽႃႇသႃႇယဝ်ႉ $2%)"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/si.json b/MLEB/Translate/i18n/pagetranslation/si.json
index 593fb841..4a07c245 100644
--- a/MLEB/Translate/i18n/pagetranslation/si.json
+++ b/MLEB/Translate/i18n/pagetranslation/si.json
@@ -7,18 +7,17 @@
"බිඟුවා",
"ශ්වෙත",
"Indunil Chamara",
- "Susith Chandira Gts"
+ "Susith Chandira Gts",
+ "හරිත",
+ 1100100
]
},
"pagetranslation": "පිටුව පරිවර්තනය",
"right-pagetranslation": "පරිවර්තනය සඳහා පිටුවල අනුවාද සලකුණු කරන්න",
"action-pagetranslation": "පරිවර්තනය කල හැකි පිටු කළමනාකරණය කරන්න",
- "tpt-desc": "අන්තර්ගත පිටු පරිවර්තනය කිරීම සඳහා විස්තීරණය",
"tpt-section": "$1 පරිවර්තන ඒකකය",
"tpt-section-new": "නව පරිවර්තන ඒකකය.\nනම: $1",
"tpt-section-deleted": "$1 පරිවර්තන ඒකකය",
- "tpt-template": "පිටු සැකිල්ල",
- "tpt-templatediff": "පිටු සැකිල්ල වෙනස් වී ඇත",
"tpt-diff-old": "පූර්ව පෙළ",
"tpt-diff-new": "නව පෙළ",
"tpt-submit": "මෙම අනුවාදය පරිවර්තනය සඳහා සලකුණු කරගන්න",
@@ -31,7 +30,6 @@
"tpt-oldrevision": "$2 යනු [[:$1]] පිටුවෙහි නවතම අනුවාදය නොවේ.\nනවතම අනුවාදයන් පමණක් පරිවර්තනය සඳහා තෝරාගත හැක.",
"tpt-notsuitable": "$1 පිටුව පරිවර්තනය සඳහා සුදුසු නොවේ.\nඑය සතුව <nowiki><translate></nowiki> ටැගයන් පැවතීම සහ එය සතුව නීතික වින්‍යාසයක් ඇතිබව සහතික කරන්න.",
"tpt-saveok": "$2 හා සමගින් මෙම පිටුව පරිවර්තනය කෙරුමට [[:$1]] විසින් සලකුණු කොට ඇත.\n{{PLURAL:$2|එක් පරිවර්තන ඒකකයක්|පරිවර්තන ඒකක}}\nමෙම පිටුව දැන් <span class=\"plainlinks\">[$3 පරිවර්තනය කල]</span>.",
- "tpt-badsect": "\"$1\" යනු $2 පරිවර්තන ඒකකය සඳහා නීතික මාතෘකාවක් නොවේ.",
"tpt-mark-summary": "පරිවර්තනය සඳහා මෙම අනුවාදය සලකුණු කරන ලදී",
"tpt-mark-nochanges": "මෙම සංශෝධනය හා අවසන් වරට ලකුණු කල සංශෝධනය අතර කිසිදු වෙනසක් නොමැත.",
"tpt-edit-failed": "පිටුව යාවත්කාලීන කල නොහැක: $1",
@@ -58,11 +56,12 @@
"translate-tag-translate-link-desc": "මෙම පිටුව පරිවර්තනය කරන්න",
"translate-tag-markthis": "පරිවර්තනය සඳහා මෙම පිටුව සලකුණු කරන්න",
"translate-tag-hasnew": "මෙම පිටුවේ අඩංගු වන <span class=\"plainlinks\">[$1 වෙනස්කම්]</span> පරිවර්තනය සඳහා සලකුණු කොට නොමැත.",
+ "tpt-translation-intro-fuzzy": "යල්පැනපු පරිවර්තනයන් මෙලෙස සලකුණු කරයි.",
"tpt-languages-legend": "වෙනත් භාෂා:",
"tpt-languages-zero": "මෙම භාෂාව සඳහා පරිවර්තනය අරඹන්න",
+ "tpt-languages-nonzero": "$1 ($2% පරිවර්තිතයි)",
"tpt-discouraged-language-reason": "හේතුව: $1",
"tpt-render-summary": "මූලාශ්‍ර පිටුවේ නව අනුවාදය වෙත ගැලපීම සඳහා යාවත්කාලීන කරමින්",
- "tpt-download-page": "පරිවර්තනය සහිත පිටුව නිර්යාත කරන්න",
"aggregategroups": "සමස්ත කාණ්ඩයන්",
"tpt-aggregategroup-add": "එක් කරන්න",
"tpt-aggregategroup-save": "සුරකින්න",
diff --git a/MLEB/Translate/i18n/pagetranslation/sk.json b/MLEB/Translate/i18n/pagetranslation/sk.json
index b7f188a7..4ec8a37f 100644
--- a/MLEB/Translate/i18n/pagetranslation/sk.json
+++ b/MLEB/Translate/i18n/pagetranslation/sk.json
@@ -11,12 +11,9 @@
},
"pagetranslation": "Preklad stránky",
"right-pagetranslation": "Označiť verzie stránok na preklad",
- "tpt-desc": "Rozšírenie na preklad stránok s obsahom",
"tpt-section": "Jednotka prekladu $1",
"tpt-section-new": "Nová jednotka prekladu.\nNázov: $1",
"tpt-section-deleted": "Jednotka prekladu $1",
- "tpt-template": "Šablóna stránky",
- "tpt-templatediff": "Šablóna stránky sa zmenila.",
"tpt-diff-old": "Predošlý text",
"tpt-diff-new": "Nový text",
"tpt-submit": "Označiť túto verziu na preklad",
@@ -28,7 +25,6 @@
"tpt-oldrevision": "$2 nie je najnovšia verzia stránky [[:$1]].\nNa preklad je možné označiť iba posledné verzie stránok.",
"tpt-notsuitable": "Stránka $1 nie je vhodná na preklad.\nUistite sa, že obsahuje značky <nowiki><translate></nowiki> a má platnú syntax.",
"tpt-saveok": "Stránka [[:$1]] bola označená na preklad s $2 {{PLURAL:$2|jednotkou prekladu, ktorú|jednotkami prekladu, ktoré}} možno preložiť.\nTúto stránku je teraz možné <span class=\"plainlinks\">[$3 preložiť]</span>.",
- "tpt-badsect": "„$1“ nie je platný názov jednotky prekladu $2.",
"tpt-showpage-intro": "Dolu sú uvedené nové, súčasné a zmazané sekcie,\nPredtým než túto verziu označíte na preklad skontrolujte, že zmeny sekcií sú minimálne aby ste zabránili zbytočnej práci prekladateľov.",
"tpt-mark-summary": "Táto verzia je označená na preklad",
"tpt-edit-failed": "Nebolo možné aktualizovať stránku: $1",
@@ -41,11 +37,11 @@
"translate-tag-markthisagain": "Táto stránka obsahuje <span class=\"plainlinks\">[$1 {{PLURAL:$1|zmenu|zmeny|zmien}}]</span> odkedy bola naposledy <span class=\"plainlinks\">[$2 označená na preklad]</span>.",
"translate-tag-hasnew": "Táto stránka obsahuje <span class=\"plainlinks\">[$1 zmeny]</span>, ktoré nie sú označené na preklad.",
"tpt-translation-intro": "Táto stránka je <span class=\"plainlinks\">[$1 preloženou verziou]</span> stránky [[$2]] a preklad je hotový a aktuálny na $3 %.",
+ "tpt-translation-intro-fuzzy": "Zastarané preklady sú označené takto.",
"tpt-languages-legend": "Iné jazyky:",
"tpt-languages-nonzero": "$1 ({{PLURAL:$2|preložené|preložené|preložených}} $2 %)",
"tpt-target-page": "Túto stránku nemožno aktualizovať ručne.\nTáto stránka je prekladom stránky [[$1]] a preklad možno aktualizovať pomocou [$2 nástroja na preklad].",
"tpt-unknown-page": "Tento menný priestor je vyhradený na preklady stránok s obsahom.\nZdá sa, že stránka, ktorú sa pokúšate upravovať nezodpovedá žiadnej stránke označenej na preklad.",
"tpt-render-summary": "Aktualizácia na novú verziu zdrojovej stránky",
- "tpt-download-page": "Exportovať stránky s prekladmi",
"tpt-aggregategroup-save": "Uložiť"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/sl.json b/MLEB/Translate/i18n/pagetranslation/sl.json
index 1259be6a..f454461d 100644
--- a/MLEB/Translate/i18n/pagetranslation/sl.json
+++ b/MLEB/Translate/i18n/pagetranslation/sl.json
@@ -4,18 +4,16 @@
"Dbc334",
"Eleassar",
"Irena Plahuta",
- "Smihael"
+ "Smihael",
+ "Janezdrilc"
]
},
"pagetranslation": "Prevajanje strani",
"right-pagetranslation": "Označi različice strani za prevajanje",
"action-pagetranslation": "upravljanje prevedljivih strani",
- "tpt-desc": "Razširitev za prevajanje vsebine strani",
"tpt-section": "Prevajalna enota $1",
"tpt-section-new": "Nove prevajalna enota.\nIme: $1",
"tpt-section-deleted": "Prevajalna enota $1",
- "tpt-template": "Predloga strani",
- "tpt-templatediff": "Predloga te strani se je spremenila.",
"tpt-diff-old": "Prejšnje besedilo",
"tpt-diff-new": "Novo besedilo",
"tpt-submit": "Označi to različico za prevajanje",
@@ -28,7 +26,6 @@
"tpt-oldrevision": "$2 ni najnovejša različics strani [[:$1]].\nSamo zadnje različice se lahko označi za prevod.",
"tpt-notsuitable": "Stran $1 ni primerna za prevod.\nPrepričajte se, da ima oznake <nowiki><translate></nowiki> in veljavno sintakso.",
"tpt-saveok": "Stran [[:$1]] je bila označena za prevod z $2 {{PLURAL:$2|prevajalsko enoto|prevajalskima enotama|prevajalskimi enotami}}.\nStran je sedaj mogoče <span class=\"plainlinks\">[$3 prevesti]</span>.",
- "tpt-badsect": "»$1« ni veljavno ime za prevajalsko enoto $2.",
"tpt-showpage-intro": "Spodaj so navedene nove, obstoječe in izbrisane prevajalne enote.\nPred označitvijo te redakcije za prevajanje preverite, da so spremembe prevajalnih enot čim manjše, saj tako prevajalcem prihranite nepotrebno delo.",
"tpt-mark-summary": "Označil to različico za prevajanje",
"tpt-edit-failed": "Ni mogoče posodobiti strani: $1",
@@ -61,6 +58,7 @@
"translate-tag-markthisagain": "Ta stran ima <span class=\"plainlinks\">[$1 sprememb]</span> odkar je bila nazadnje <span class=\"plainlinks\">[$2 označena za prevajanje]</span>.",
"translate-tag-hasnew": "Stran vsebuje <span class=\"plainlinks\">[$1 spremembe]</span>, ki niso označene za prevajanje.",
"tpt-translation-intro": "Ta stran je <span class=\"plainlinks\">[$1 prevedena različica]</span> strani [[$2]] in prevod je $3 % dokončan.",
+ "tpt-translation-intro-fuzzy": "Zastareli prevodi so označeni tako.",
"tpt-languages-legend": "Drugi jeziki:",
"tpt-languages-zero": "Prični s prevajanjem v ta jezik",
"tpt-languages-nonzero": "$1 ($2 % prevedeno)",
@@ -68,12 +66,12 @@
"tpt-unknown-page": "Ta imenski prostor je pridržan za prevode vsebinskih strani.\nStran, ki jo poskušate urediti, ne ustreza nobeni strani označeni za prevajanje.",
"tpt-discouraged-language-reason": "Razlog: $1",
"tpt-render-summary": "Posodabljanje za ujemanje nove različice izvorne strani",
- "tpt-download-page": "Izvozi stran s prevodi",
"tpt-aggregategroup-add": "Dodaj",
"tpt-aggregategroup-save": "Shrani",
"tpt-aggregategroup-new-name": "Ime:",
"tpt-aggregategroup-new-description": "Opis (izbirno):",
"tpt-aggregategroup-invalid-group": "Skupina ne obstaja",
+ "tpt-aggregategroup-edit-description": "Opis:",
"pt-parse-open": "Neizenačena etiketa &lt;translate>.\nPrevajalna predloga: <pre>$1</pre>",
"pt-parse-close": "Neizenačena etiketa &lt;/translate>.\nPrevajalna predloga: <pre>$1</pre>",
"pt-parse-nested": "Gnezdene prevajalne enote &lt;translate> niso dovoljene.\nBesedilo etikete: <pre>$1</pre>",
@@ -82,6 +80,8 @@
"pt-shake-empty": "Prazna prevajalna enota označevalec »$1«.",
"log-description-pagetranslation": "Dnevnik dejanj, ki so povezana s sistemom prevajanja strani",
"log-name-pagetranslation": "Dnevnik prevajanja strani",
+ "log-action-filter-pagetranslation-move": "Prestavitve strani",
+ "log-action-filter-pagetranslation-delete": "Izbrisi strani",
"pt-movepage-title": "Premakni prevedljivo stran $1",
"pt-movepage-blockers": "Prevedljive strani ni mogoče prestaviti na novo ime zaradi {{PLURAL:$1|naslednje napake|naslednjih napak}}:",
"pt-movepage-block-base-exists": "Ciljna prevedljiva stran »[[:$1]]« obstaja.",
@@ -106,11 +106,11 @@
"pt-movepage-action-perform": "Izvedi prestavitev",
"pt-movepage-action-other": "Spremeni cilj",
"pt-movepage-intro": "Ta posebna stran omogoča prestavljanje strani, ki so označene za prevajanje.\nDejanje prestavitve ne bo izvedeno takoj, saj bo potrebno prestaviti veliko strani.\nMedtem ko se strani premikajo, ne bo mogoče delovati na straneh v obravnavi.\nNeuspehi bodo zabeleženi v [[Special:Log/pagetranslation|dnevniku strani prevodov]] in jih je potrebno ročno popraviti.",
- "pt-movepage-logreason": "Del prevedljive strani $1.",
- "pt-movepage-started": "Izhodna stran je prestavljena.\nProsimo, preverite [[Special:Log/pagetranslation|dnevnik strani prevodov]] za napake in sporočila o dokončanju.",
+ "pt-movepage-logreason": "Del prevedljive strani »$1«.",
+ "pt-movepage-started": "Prosimo, v kratkem preverite [[Special:Log/pagetranslation|dnevnik strani prevodov]] za napake in sporočila o dokončanju.",
"pt-locked-page": "Stran je zaklenjena, ker se prevedljiva stran trenutno prestavlja.",
- "pt-deletepage-lang-title": "Brisanje strani pravoda $1.",
- "pt-deletepage-full-title": "Brisanje prevedljive strani $1.",
+ "pt-deletepage-lang-title": "Brisanje strani prevoda »$1«",
+ "pt-deletepage-full-title": "Brisanje prevedljive strani »$1«",
"pt-deletepage-invalid-title": "Določena stran ni veljavna.",
"pt-deletepage-invalid-text": "Izbrana stran ni niti prevedljiva stran niti stran s prevodom.",
"pt-deletepage-action-check": "Navedi strani za izbris",
@@ -127,8 +127,15 @@
"pt-deletepage-list-section": "Strani prevajalnih enot",
"pt-deletepage-list-other": "Druge podstrani",
"pt-deletepage-list-count": "Skupno je za izbrisati $1 {{PLURAL:$1|stran|strani}}.",
- "pt-deletepage-full-logreason": "Del prevedljive strani $1.",
- "pt-deletepage-lang-logreason": "Del strani prevoda $1.",
+ "pt-deletepage-full-logreason": "Del prevedljive strani »$1«.",
+ "pt-deletepage-lang-logreason": "Del strani prevoda »$1«.",
"pt-deletepage-started": "Prosimo, preverite [[Special:Log/pagetranslation|dnevnik prevajanja strani]] za napake in sporočilo o dokončanju.",
- "pt-deletepage-intro": "Ta posebna stran vam omogoča izbris celotne prevedljive strani ali individualne strani s prevodom v nekem jeziku.\nDejanje izbrisa ne bo izvedeno takoj, ker je treba izbrisati tudi vse strani, ki so od njih odvisne.\nNeuspehi bodo zabeleženi v [[Special:Log/pagetranslation|dnevniku prevajanja strani]] in jih morate urediti ročno."
+ "pt-deletepage-intro": "Ta posebna stran vam omogoča izbris celotne prevedljive strani ali individualne strani s prevodom v nekem jeziku.\nDejanje izbrisa ne bo izvedeno takoj, ker je treba izbrisati tudi vse strani, ki so od njih odvisne.\nNeuspehi bodo zabeleženi v [[Special:Log/pagetranslation|dnevniku prevajanja strani]] in jih morate urediti ročno.",
+ "pagemigration": "Prenos prevedene strani",
+ "pm-pagetitle-placeholder": "Vnesite naslov strani",
+ "pm-pagetitle-missing": "Prosimo, vnesite naslov strani.",
+ "pp-save-summary": "Stran je pripravljena za prevajanje",
+ "pagepreparation": "Pripravite stran za prevajanje",
+ "pp-pagename-placeholder": "Vnesite naslov strani",
+ "tpt-unlink-summary": "Stran je bila odstranjena iz prevajanja"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/sr-ec.json b/MLEB/Translate/i18n/pagetranslation/sr-ec.json
index 2e41179d..bd6f0aff 100644
--- a/MLEB/Translate/i18n/pagetranslation/sr-ec.json
+++ b/MLEB/Translate/i18n/pagetranslation/sr-ec.json
@@ -4,94 +4,153 @@
"Milicevic01",
"Rancher",
"Милан Јелисавчић",
- "Михајло Анђелковић"
+ "Михајло Анђелковић",
+ "Сербијана",
+ "Obsuser",
+ "Acamicamacaraca",
+ "BadDog",
+ "Zoranzoki21",
+ "Vlad5250"
]
},
"pagetranslation": "Превод странице",
- "right-pagetranslation": "означавање издања страница за превод",
+ "right-pagetranslation": "означавање верзија страница за превод",
+ "action-pagetranslation": "управљате преводивим страницама",
"tpt-section": "Преводилачка јединица $1",
- "tpt-section-new": "Нова преводилачка јединица.\nНазив: $1",
+ "tpt-section-new": "Нова преводилачка јединица.\nИме: $1",
"tpt-section-deleted": "Преводилачка јединица $1",
- "tpt-template": "Шаблон странице",
- "tpt-templatediff": "Шаблон странице је измењен.",
"tpt-diff-old": "Претходни текст",
- "tpt-diff-new": "Следећи текст",
+ "tpt-diff-new": "Нови текст",
"tpt-submit": "Означи ову верзију за превод",
"tpt-sections-oldnew": "Нове и постојеће преводилачке јединице",
- "tpt-sections-deleted": "Обрисане преводилачке јединице",
- "tpt-sections-template": "Шаблон странице за превођење",
+ "tpt-sections-deleted": "Избрисане преводилачке јединице",
+ "tpt-sections-template": "Шаблон странице за превод",
"tpt-action-nofuzzy": "Не поништавајте преводе",
- "tpt-nosuchpage": "Страница $1 не постоји",
- "tpt-mark-nochanges": "Нема разлика између ове ревизије и последње означене ревизије.",
- "tpt-new-pages-title": "Предложене странице за превођење",
+ "tpt-badtitle": "Задато име странице ($1) није важећи наслов",
+ "tpt-nosuchpage": "Страница „$1” не постоји",
+ "tpt-mark-nochanges": "Нема промена за преглед. Означавање ове странице за превод неће да уреди страницу ни постојећу преводилачку јединицу.",
+ "tpt-edit-failed": "Није могуће ажурирати страницу: $1",
+ "tpt-unmarked": "Страница $1 није више означена за превођење.",
+ "tpt-new-pages-title": "Странице предложене за превод",
+ "tpt-other-pages-title": "Покварене странице",
+ "tpt-discouraged-pages-title": "Непрепоручене странице",
+ "tpt-select-prioritylangs-force": "Спречи превођење на језике који нису приоритетни",
"tpt-select-prioritylangs-reason": "Разлог:",
"tpt-sections-prioritylangs": "Приоритетни језици",
- "tpt-rev-mark": "означи за превођење",
+ "tpt-rev-mark": "означи за превод",
"tpt-rev-unmark": "уклони из превода",
"tpt-rev-discourage": "непрепоручено",
"tpt-rev-encourage": "врати",
- "tpt-rev-mark-tooltip": "Означи последњу верзију странице као „за превођење“.",
- "tpt-rev-unmark-tooltip": "Уклони страницу из превода.",
- "tpt-rev-discourage-tooltip": "Постави страницу као непрепоручену за даљње превођење.",
- "tpt-rev-encourage-tooltip": "Врати страницу за нормално превођење.",
+ "tpt-rev-mark-tooltip": "Означите најновију верзију ове странице као „за превод”.",
+ "tpt-rev-unmark-tooltip": "Уклоните ову страницу из преводилачког система.",
+ "tpt-rev-discourage-tooltip": "Поставите ову страницу као непрепоручену за даљње преводе.",
+ "tpt-rev-encourage-tooltip": "Вратите ову страницу за нормалан превод.",
"translate-tag-translate-link-desc": "Преведите ову страницу",
- "translate-tag-markthis": "Означи страницу као „за превођење“",
+ "translate-tag-markthis": "Означи страницу као „за превод“",
+ "translate-tag-hasnew": "Ова страница садржи <span class=\"plainlinks\">[$1 измене]</span> које нису означене за превођење.",
"tpt-translation-intro": "Ово је <span class=\"plainlinks\">[$1 преведена верзија]</span> странице [[$2]]. Превод је $3% завршен.",
- "tpt-languages-legend": "Остали језици:",
+ "tpt-translation-intro-fuzzy": "Застарели преводи су означени овако.",
+ "tpt-languages-legend": "Други језици:",
"tpt-languages-separator": "&#160;•&#32;",
- "tpt-languages-zero": "Почните превођења на овом језику",
+ "tpt-languages-zero": "Започните превођење на овом језику",
"tpt-languages-nonzero": "$1 ($2% преведено)",
+ "tpt-tab-translate": "Превођење",
+ "tpt-discouraged-language-header": "Превођење ове странице на $1 није приоритет.",
+ "tpt-discouraged-language-force": "<strong>Ова страница се не може превести на $2.</strong>\n\nПреводилачки администратор је одредио да се ова страница може превести само на: $3.",
+ "tpt-discouraged-language": "<strong>Превођење ове странице на $2 није приоритет.</strong>\n\nПреводилачки администратор је одредио приоритетне језике и они су: $3.",
"tpt-discouraged-language-reason": "Разлог: $1",
+ "aggregategroups": "Збирне групе",
"tpt-aggregategroup-add": "Додај",
"tpt-aggregategroup-save": "Сачувај",
- "tpt-aggregategroup-new-name": "Назив:",
- "tpt-aggregategroup-new-description": "Опис (необавезно):",
+ "tpt-aggregategroup-new-name": "Име:",
+ "tpt-aggregategroup-new-description": "Опис (опционално):",
"tpt-aggregategroup-invalid-group": "Група не постоји",
- "tpt-aggregategroup-edit-name": "Назив:",
+ "tpt-aggregategroup-edit-name": "Име:",
"tpt-aggregategroup-edit-description": "Опис:",
"tpt-aggregategroup-update": "Сачувај",
"tpt-aggregategroup-update-cancel": "Откажи",
+ "tpt-invalid-group": "Неважећа група",
+ "pt-shake-multiple": "Више маркера јединице превода за једну јединицу превода.\nТекст јединице превода: <pre>$1</pre>",
+ "pt-shake-position": "Маркери јединице превода у неочекиваној позицији.\nТекст јединице превода: <pre>$1</pre>",
"log-name-pagetranslation": "Дневник превода страница",
"logentry-pagetranslation-mark": "$1 је {{GENDER:$2|означио|означила}} страницу $3 за превођење",
- "pt-movepage-title": "Премештање преводиве странице $1",
- "pt-movepage-block-base-exists": "Циљна основна страница [[:$1]] постоји.",
- "pt-movepage-block-base-invalid": "Циљ преводиве странице не представља исправан назив.",
+ "logentry-pagetranslation-unmark": "$1 је {{GENDER:$2|уклонио|уклонила}} страницу $3 из система превођења",
+ "logentry-pagetranslation-deletefok": "$1 је {{GENDER:$2|избрисао|избрисала}} преводиву страницу $3",
+ "logentry-pagetranslation-deletelok": "$1 је {{GENDER:$2|избрисао|избрисала}} преводиву страницу $3",
+ "logentry-pagetranslation-prioritylanguages": "$1 је {{GENDER:$2|одредио|одредила}} приоритетне језике за преводиву страницу $3: $5",
+ "log-action-filter-pagetranslation": "Тип радње:",
+ "log-action-filter-pagetranslation-mark": "Означавање за превођење",
+ "log-action-filter-pagetranslation-unmark": "Уклањање из превода",
+ "log-action-filter-pagetranslation-move": "Премештања страница",
+ "log-action-filter-pagetranslation-delete": "Брисања страница",
+ "log-action-filter-pagetranslation-encourage": "Подстицање на превођење",
+ "log-action-filter-pagetranslation-discourage": "Одвраћање од превођења",
+ "log-action-filter-pagetranslation-prioritylanguages": "Измена приоритетних језика",
+ "pt-movepage-title": "Премештање преводиве странице „$1”",
+ "pt-movepage-block-base-exists": "Циљна преводива страница [[:$1]] постоји.",
+ "pt-movepage-block-base-invalid": "Циљ имена преводиве странице није важећи наслов.",
"pt-movepage-block-tp-exists": "Циљна страница за превод [[:$2]] постоји.",
"pt-movepage-block-tp-invalid": "Наслов циљне странице за превод за [[:$1]] био би неисправан (предугачак?).",
- "pt-movepage-block-section-exists": "Циљна страница за поднаслов [[:$2]] постоји.",
- "pt-movepage-block-section-invalid": "Наслов циљне странице за поднаслов за [[:$1]] био би неисправан (предугачак?).",
+ "pt-movepage-block-section-exists": "Циљна страница [[:$2]] за преводилачку јединицу постоји.",
+ "pt-movepage-block-section-invalid": "Наслов циљне странице за преводилачку јединицу \"[[:$1]]\" био би неисправан (предугачак?).",
"pt-movepage-block-subpage-exists": "Циљна подстраница [[:$2]] постоји.",
"pt-movepage-block-subpage-invalid": "Наслов циљне подстранице за [[:$1]] био би неисправан (предугачак?).",
- "pt-movepage-list-pages": "Списак страница за премештање",
- "pt-movepage-list-translation": "{{PLURAL:$1|Странице}} за превод",
- "pt-movepage-list-section": "Странице за поднаслове",
+ "pt-movepage-list-pages": "Листа страница за премештање",
+ "pt-movepage-list-translation": "{{PLURAL:$1|Страница|Странице}} за превод",
+ "pt-movepage-list-section": "Преводилачка јединица {{PLURAL:$1|странице|страница}}",
"pt-movepage-list-other": "{{PLURAL:$1|Друге}} подстранице",
"pt-movepage-list-count": "Укупно $1 {{PLURAL:$1|страница|странице|страница}} за премештање.",
"pt-movepage-legend": "Премести преводиву страницу",
- "pt-movepage-current": "Текући назив:",
- "pt-movepage-new": "Нови назив:",
+ "pt-movepage-current": "Тренутно име:",
+ "pt-movepage-new": "Ново име:",
"pt-movepage-reason": "Разлог:",
"pt-movepage-subpages": "Премести све подстранице",
"pt-movepage-action-check": "Провери да ли је премештање изводљиво",
- "pt-movepage-action-perform": "Премести",
+ "pt-movepage-action-perform": "Изврши премештање",
"pt-movepage-action-other": "Промени циљ",
+ "pt-movepage-started": "У међувремену, проверите [[Special:Log/pagetranslation|дневник превођења странице]] да би се пронашле евентуалне грешке и поруке завршетка.",
+ "pt-deletepage-invalid-title": "Наведена страница није важећа.",
"pt-deletepage-action-check": "Наведи странице за брисање",
"pt-deletepage-action-perform": "Изврши брисање",
"pt-deletepage-action-other": "Промени циљ",
- "pt-deletepage-lang-legend": "Обриши страницу превода",
- "pt-deletepage-full-legend": "Обриши преводиву страницу",
- "pt-deletepage-current": "Назив странице:",
+ "pt-deletepage-lang-legend": "Избриши страницу превода",
+ "pt-deletepage-full-legend": "Избриши преводиву страницу",
+ "pt-deletepage-any-legend": "Избришите преводиву страницу или страницу превода",
+ "pt-deletepage-current": "Име странице:",
"pt-deletepage-reason": "Разлог:",
- "pt-deletepage-subpages": "Обриши све подстранице",
- "pt-deletepage-list-pages": "Списак страница за брисање",
+ "pt-deletepage-subpages": "Избриши све подстранице",
+ "pt-deletepage-list-pages": "Листа страница за брисање",
"pt-deletepage-list-translation": "Странице за превођење",
- "pt-deletepage-list-other": "Остале подстранице",
+ "pt-deletepage-list-section": "Странице за преводилачку јединицу",
+ "pt-deletepage-list-other": "Друге подстранице",
"pt-deletepage-list-count": "Укупно $1 {{PLURAL:$1|страница|странице}} за брисање.",
+ "pagemigration": "Миграција страница превода",
"pm-import-button-label": "Увези",
"pm-savepages-button-label": "Сачувај",
"pm-cancel-button-label": "Откажи",
- "pm-pagename-placeholder": "Унесите назив странице",
- "pm-langcode-placeholder": "Код језика",
- "pp-pagename-placeholder": "Унесите назив странице",
- "pp-save-button-label": "Сачувај"
+ "pm-page-does-not-exist": "$1 не постоји.",
+ "pm-old-translations-missing": "$1 не садржи старе преводе.",
+ "pm-pagename-missing": "Унесите име странице.",
+ "pm-add-icon-hover-text": "Додај јединицу испод",
+ "pm-swap-icon-hover-text": "Замени са јединицом испод",
+ "pm-delete-icon-hover-text": "Избриши јединицу",
+ "pm-pagetitle-placeholder": "Унесите наслов странице",
+ "pm-pagetitle-missing": "Унесите наслов странице.",
+ "tpt-translate-title": "Дозволи превод наслова странице",
+ "pp-save-summary": "Страница је припремљена за превод",
+ "pagepreparation": "Припрема страница за превод",
+ "pp-pagename-placeholder": "Унесите име странице",
+ "pp-prepare-button-label": "Припреми",
+ "pp-save-button-label": "Сачувај",
+ "pp-cancel-button-label": "Откажи",
+ "pp-save-message": "Страница је сачувана. Можете је [$1 уредити].",
+ "pp-prepare-message": "Ова страница је припремљена за превођење. Погледајте доњу разлику измена. Кликните на дугме „{{int:pp-save-button-label}}” ако је све у реду!",
+ "pp-pagename-missing": "Унесите име странице.",
+ "pp-diff-old-header": "Изворни текст",
+ "pp-diff-new-header": "Припремљени текст",
+ "tpt-unlink-confirm": "Потврдите да стварно желите да уклоните ову страницу из преводилачког система.\nБирач језика и преведена имена страница ће престати са радом.\nСтранице за превођење ће постати уредиве.",
+ "tpt-unlink-button": "Уклони из превода",
+ "tpt-unlink-summary": "Уклоњена страница из превода",
+ "tpt-generic-confirm": "Потврдите радњу.",
+ "tpt-generic-button": "Потврди"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/sr-el.json b/MLEB/Translate/i18n/pagetranslation/sr-el.json
index d9f62beb..994c1643 100644
--- a/MLEB/Translate/i18n/pagetranslation/sr-el.json
+++ b/MLEB/Translate/i18n/pagetranslation/sr-el.json
@@ -3,14 +3,18 @@
"authors": [
"Michaello",
"Milicevic01",
- "Rancher"
+ "Rancher",
+ "Obsuser",
+ "Tacsipacsi",
+ "Zoranzoki21"
]
},
"right-pagetranslation": "označavanje izdanja stranica za prevod",
"tpt-diff-old": "Prethodni tekst",
"tpt-diff-new": "Sledeći tekst",
"tpt-submit": "Označi ovu verziju za prevod",
- "tpt-mark-nochanges": "Nema razlika između ove revizije i poslednje označene revizije.",
+ "tpt-mark-nochanges": "Nema razlika između ove izmene i poslednje označene izmene.",
+ "tpt-unmarked": "Stranica $1 nije više označena za prevođenje.",
"tpt-rev-mark": "označi za prevođenje",
"tpt-rev-unmark": "ukloni iz prevoda",
"tpt-rev-discourage": "nepreporučeno",
@@ -22,14 +26,24 @@
"translate-tag-translate-link-desc": "Prevedite ovu stranu",
"translate-tag-markthis": "Označi stranicu kao „za prevođenje“",
"tpt-translation-intro": "Ova stranica je <span class=\"plainlinks\">[$1 prevedeno izdanje]</span> stranice [[$2]]. Prevod je $3% završen.",
+ "tpt-languages-legend": "Ostali jezici:",
"tpt-languages-separator": "&#160;•&#32;",
"tpt-languages-nonzero": "$1 ($2% prevedeno)",
+ "tpt-tab-translate": "Prevedi",
+ "tpt-discouraged-language-header": "Prevođenje ove stranice na $1 nije prioritet.",
+ "tpt-discouraged-language-force": "<strong>Ova stranica se ne može prevesti na $2.</strong>\n\nPrevodilački administrator je odredio da se ova stranica može prevesti samo na: $3.",
+ "tpt-discouraged-language": "<strong>Prevođenje ove stranice na $2 nije prioritet.</strong>\n\nPrevodilački administrator je odredio prioritetne jezike i oni su: $3.",
+ "aggregategroups": "Agregirane grupe",
"tpt-aggregategroup-edit-name": "Naziv:",
"tpt-aggregategroup-edit-description": "Opis:",
"tpt-aggregategroup-update": "Sačuvaj",
"tpt-aggregategroup-update-cancel": "Otkaži",
"log-name-pagetranslation": "Dnevnik prevoda stranica",
"logentry-pagetranslation-mark": "$1 je {{GENDER:$2|označio|označila}} stranicu $3 za prevođenje",
+ "logentry-pagetranslation-unmark": "$1 je {{GENDER:$2|uklonio|uklonila}} opciju prevođenja sa stranice $3",
+ "logentry-pagetranslation-deletefok": "$1 je {{GENDER:$2|obrisao|obrisala}} prevodivu stranicu $3",
+ "logentry-pagetranslation-deletelok": "$1 je {{GENDER:$2|obrisao|obrisala}} prevodivu stranicu $3",
+ "logentry-pagetranslation-prioritylanguages": "$1 je {{GENDER:$2|odredio|odredila}} prioritetne jezike za prevodivu stranicu $3: $5",
"pt-movepage-title": "Premeštanje prevodive stranice $1",
"pt-movepage-block-base-exists": "Ciljna osnovna stranica [[:$1]] postoji.",
"pt-movepage-block-base-invalid": "Cilj prevodive stranice ne predstavlja ispravan naziv.",
@@ -53,8 +67,9 @@
"pm-import-button-label": "Uvezi",
"pm-savepages-button-label": "Sačuvaj",
"pm-cancel-button-label": "Otkaži",
- "pm-pagename-placeholder": "Unesite naziv stranice",
- "pm-langcode-placeholder": "Kod jezika",
"pp-pagename-placeholder": "Unesite naziv stranice",
- "pp-save-button-label": "Sačuvaj"
+ "pp-save-button-label": "Sačuvaj",
+ "pp-cancel-button-label": "Otkaži",
+ "pp-prepare-message": "Ova stranica je pripremljena za prevođenje. Pogledajte razliku izmena ispod. Kliknite na dugme \"{{int:pp-save-button-label}}\" ako je u redu!",
+ "tpt-unlink-confirm": "Molimo vas da potvrdite da stvarno želite da uklonite ovu stranicu iz prevodilačkog sistema.\nSelektor jezika i prevedeni nazivi stranica će prestati sa radom.\nStranice za prevođenje će postati uredive."
}
diff --git a/MLEB/Translate/i18n/pagetranslation/su.json b/MLEB/Translate/i18n/pagetranslation/su.json
index 586e7600..288dafc5 100644
--- a/MLEB/Translate/i18n/pagetranslation/su.json
+++ b/MLEB/Translate/i18n/pagetranslation/su.json
@@ -1,18 +1,27 @@
{
"@metadata": {
"authors": [
- "Kandar"
+ "Kandar",
+ "Uchup19"
]
},
"pagetranslation": "Alihbasa kaca",
"tpt-diff-old": "Téks saméméhna",
"tpt-diff-new": "Téks anyar",
"tpt-nosuchpage": "Kaca $1 euweuh.",
+ "tpt-select-prioritylangs-reason": "Alesan:",
+ "tpt-languages-nonzero": "$1 ($2% tarjamah)",
+ "tpt-translation-restricted": "Alesan: $1",
+ "tpt-discouraged-language-reason": "Alesan: $1",
+ "tpt-aggregategroup-update-cancel": "Bolay",
"pt-movepage-current": "Ngaran ayeuna:",
"pt-movepage-new": "Ngaran anyar:",
"pt-movepage-reason": "Alesan:",
"pt-movepage-subpages": "Pindahkeun sakabéh subkaca",
"pt-movepage-action-check": "Pariksa susuganan bisa dipindahkeun",
"pt-movepage-action-perform": "Pindahkeun",
- "pt-movepage-action-other": "Ganti tujul"
+ "pt-movepage-action-other": "Ganti tujul",
+ "pt-deletepage-reason": "Alesan:",
+ "pm-cancel-button-label": "Bolay",
+ "pp-cancel-button-label": "Bolay"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/sv.json b/MLEB/Translate/i18n/pagetranslation/sv.json
index ae7f61b2..ef7a3b37 100644
--- a/MLEB/Translate/i18n/pagetranslation/sv.json
+++ b/MLEB/Translate/i18n/pagetranslation/sv.json
@@ -19,12 +19,9 @@
"pagetranslation": "Sidöversättning",
"right-pagetranslation": "Märk versioner av sidor för översättning",
"action-pagetranslation": "hantera översättningsbara sidor",
- "tpt-desc": "Programtillägg för översättning av innehållssidor",
"tpt-section": "Översättningsenhet $1",
"tpt-section-new": "Ny översättningsenhet.\nNamn: $1",
"tpt-section-deleted": "Översättningsenhet $1",
- "tpt-template": "Sidmall",
- "tpt-templatediff": "Sidmallen har ändrats.",
"tpt-diff-old": "Föregående text",
"tpt-diff-new": "Ny text",
"tpt-submit": "Märk den här versionen för översättning",
@@ -38,10 +35,9 @@
"tpt-notsuitable": "Sidan $1 är inte redo för översättning.\nSe till att sidan har <nowiki><translate></nowiki>-taggar och att syntaxen är giltlig.",
"tpt-saveok": "Sidan [[:$1]] har märkts för översättning med {{PLURAL:$2|en översättningsdel|$2 översättningsdelar}}. Sidan kan nu <span class=\"plainlinks\">[$3 översättas]</span>.",
"tpt-offer-notify": "Du kan <span class=\"plainlinks\">[$1 meddela översättare]</span> om den här sidan.",
- "tpt-badsect": "\"$1\" är inte ett giltigt namn för översättningsenheten $2.",
"tpt-showpage-intro": "Nedanför finns nya, existerande och raderade översättningsenheter uppradade.\nInnan den här versionen märks för översättning, kontrollera att ändringarna i översättningsenheterna är minimala för att undvika extra arbete för översättarna.",
"tpt-mark-summary": "Den här versionen är märkt för översättning",
- "tpt-mark-nochanges": "Det är ingen skillnad mellan den här versionen och den senast markerade versionen.",
+ "tpt-mark-nochanges": "Inga ändringar att granska. Varken sidan eller befintliga översättningsenheter kommer att redigeras om denna sida märks för översättning.",
"tpt-edit-failed": "Sidan \"$1\" kunde inte uppdateras.",
"tpt-duplicate": "Översättningsenhetsnamnet $1 används mer än en gång.",
"tpt-already-marked": "Den senaste versionen av den här sidan har redan märkts för översättning.",
@@ -72,6 +68,7 @@
"translate-tag-markthisagain": "Den här sidan har <span class=\"plainlinks\">[$1 förändringar]</span> sedan den senast <span class=\"plainlinks\">[$2 märktes för översättning]</span>.",
"translate-tag-hasnew": "Den här sidan innehåller <span class=\"plainlinks\">[$1 förändringar]</span> som inte är märkta för översättning.",
"tpt-translation-intro": "Det här är en <span class=\"plainlinks\">[$1 översatt version]</span> av sidan [[$2]]. Översättningen är till $3% färdig och uppdaterad.",
+ "tpt-translation-intro-fuzzy": "Föråldrade översättningar visas på det här sättet.",
"tpt-languages-legend": "Andra språk:",
"tpt-languages-zero": "Starta översättning för detta språk",
"tpt-languages-nonzero": "$1 ($2 % översatt)",
@@ -88,7 +85,6 @@
"tpt-discouraged-language-reason": "Anledning: $1",
"tpt-priority-languages": "En översättningsadministratör har ställt in prioritetsspråken för denna grupp till $1.",
"tpt-render-summary": "Uppdaterar för att matcha den nya versionen av källpaketet",
- "tpt-download-page": "Exportera sidan med översättningar",
"aggregategroups": "Samla grupper",
"tpt-aggregategroup-add": "Lägg till",
"tpt-aggregategroup-save": "Spara",
@@ -111,7 +107,7 @@
"log-description-pagetranslation": "Logg för åtgärder som rör systemet för sidöversättning",
"log-name-pagetranslation": "Sidöversättningslogg",
"logentry-pagetranslation-mark": "$1 {{GENDER:$2|markerade}} $3 för översättning",
- "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|tog bort}} $3 för översättning",
+ "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|tog bort}} $3 från översättningssystemet",
"logentry-pagetranslation-moveok": "$1 {{GENDER:$2|slutförde}} namnändringen av översättningssidan $3 till $4",
"logentry-pagetranslation-movenok": "$1 {{GENDER:$2|stöte på}} ett problem när sidan $3 skulle flyttas till $4",
"logentry-pagetranslation-deletefok": "$1 {{GENDER:$2|slutförde}} raderingen av översättningssidan $3",
@@ -149,11 +145,11 @@
"pt-movepage-action-perform": "Genomför flytten",
"pt-movepage-action-other": "Ändra mål",
"pt-movepage-intro": "Denna specialsida låter dig flytta sidor som är markerade för översättning.\nFlyttningsåtgärden kommer inte att vara omedelbar, eftersom många sidor kommer att behöva flyttas.\nMedan sidorna flyttas är det inte möjligt att interagera med dem.\nFel kommer att registreras i [[Special:Log/pagetranslation|sidöversättningsloggen]] och de behöver repareras manuellt.",
- "pt-movepage-logreason": "Del av översättningsbar sida $1.",
+ "pt-movepage-logreason": "Del av översättningsbar sida \"$1\".",
"pt-movepage-started": "Bassidan är nu flyttad.\n\nKontrollera [[Special:Log/pagetranslation|loggen för sidöversättning]] efter fel och meddelande om att det slutförts.",
"pt-locked-page": "Denna sida är låst eftersom den översättningsbara sidan håller på att flyttas.",
- "pt-deletepage-lang-title": "Raderar översättningssida $1.",
- "pt-deletepage-full-title": "Raderar översättningsbar sida $1.",
+ "pt-deletepage-lang-title": "Raderar översättningssida \"$1\"",
+ "pt-deletepage-full-title": "Raderar översättbar sida \"$1\"",
"pt-deletepage-invalid-title": "Den angivna sidan är inte giltig.",
"pt-deletepage-invalid-text": "Den angivna sidan är varken en översättbar sida eller en översättningssida.",
"pt-deletepage-action-check": "Lista över sidor som ska tas bort",
@@ -170,8 +166,8 @@
"pt-deletepage-list-section": "Översättningsenhetssidor",
"pt-deletepage-list-other": "Andra undersidor",
"pt-deletepage-list-count": "Totalt $1 {{PLURAL:$1|sida|sidor}} att radera.",
- "pt-deletepage-full-logreason": "Del av översättningsbar sida $1.",
- "pt-deletepage-lang-logreason": "Del av översättningssida $1.",
+ "pt-deletepage-full-logreason": "Del av översättningsbar sida \"$1\".",
+ "pt-deletepage-lang-logreason": "Del av översättningssida \"$1\".",
"pt-deletepage-started": "Kontrollera [[Special:Log/pagetranslation|loggen för sidöversättning]] efter fel och meddelande om att det slutförts.",
"pt-deletepage-intro": "Denna specialsida låter dig radera en hel översättbar sida eller en enskild översättningssida på ett språk.\nRaderingsåtgärden kommer inte att vara omedelbar, eftersom alla beroende sidor också kommer att raderas.\nFel kommer att registreras i [[Special:Log/pagetranslation|sidöversättningsloggen]] och de behöver repareras manuellt.",
"pagemigration": "Sidmigrering",
@@ -179,17 +175,15 @@
"pm-import-button-label": "Importera",
"pm-savepages-button-label": "Spara",
"pm-cancel-button-label": "Avbryt",
- "pm-pagename-placeholder": "Ange sidans namn",
- "pm-langcode-placeholder": "Språkkod",
"pm-page-does-not-exist": "$1 finns inte",
"pm-old-translations-missing": "$1 innehåller inte gamla översättningar",
"pm-extra-units-warning": "Extra enheter kan förekomma. Vänligen matcha källan och översättningsenheterna korrekt",
"pm-pagename-missing": "Vänligen ange sidnamnet",
- "pm-langcode-missing": "Vänligen ange språkkoden",
"pm-add-icon-hover-text": "Lägg till en enhet nedan",
"pm-swap-icon-hover-text": "Byt med enheten nedan",
"pm-delete-icon-hover-text": "Radera enhet",
"pm-pagetitle-invalid": "Ange en giltig sidtitel",
+ "pm-langcode-missing": "Vänligen ange språkkoden",
"pm-summary-import": "Översättning importerad med hjälpt av [[Special:PageMigration|sidmigrering]]",
"tpt-translate-title": "Tillåt översättning av sidans titel",
"pp-save-summary": "Förbered sidan för översättning",
@@ -204,7 +198,8 @@
"pp-pagename-missing": "Var god ange sidans namn.",
"pp-diff-old-header": "Källtext",
"pp-diff-new-header": "Förberedd text",
- "tpt-unlink-confirm": "Bekräfta att du verkligen vill ta bort denna sida från översättningssystemet.\nSpråkväljaren och översatta sidnamn kommer slutar att fungera.\nÖversättningssidorna kommer bli redigerbara.",
+ "tpt-unlink-confirm": "Bekräfta att du verkligen vill ta bort denna sida från översättningssystemet.\nSpråkväljaren och översatta sidnamn kommer sluta fungera.\nÖversättningssidorna kommer bli redigerbara.",
"tpt-unlink-button": "Ta bort från översättning",
- "tpt-unlink-summary": "Tog bort sidan från översättning"
+ "tpt-unlink-summary": "Tog bort sidan från översättning",
+ "tpt-generic-button": "Bekräfta"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/ta.json b/MLEB/Translate/i18n/pagetranslation/ta.json
index 2ec46ad8..9b14fe17 100644
--- a/MLEB/Translate/i18n/pagetranslation/ta.json
+++ b/MLEB/Translate/i18n/pagetranslation/ta.json
@@ -12,12 +12,9 @@
},
"pagetranslation": "பக்கத்தின் மொழிபெயர்ப்பு",
"right-pagetranslation": "மொழிபெயர்ப்புக்காக பக்கங்களின் பதிப்புகளை குறியிடு",
- "tpt-desc": "உள்ளடக்க பக்கங்களை மொழிபெயர்க்க விரிவாக்கம்",
"tpt-section": "மொழிபெயர்ப்பு அலகு$1",
"tpt-section-new": "புதிய மொழிபெயர்ப்பு அலகு.\nபெயர்:$1",
"tpt-section-deleted": "மொழிபெயர்ப்பு அலகு$1",
- "tpt-template": "பக்கத்தின் வார்ப்புரு",
- "tpt-templatediff": "பக்க வார்ப்புரு மாற்றப்பட்டுள்ளது.",
"tpt-diff-old": "முந்தைய சொற்றொடர்",
"tpt-diff-new": "புதிய சொற்றொடர்",
"tpt-submit": "இந்த பதிப்பை மொழிபெயர்ப்புக்காக குறியிடு",
@@ -27,7 +24,6 @@
"tpt-action-nofuzzy": "மொழிபெயர்ப்புகளை செல்லத்தாகாததாக்க வேண்டாம்.",
"tpt-badtitle": " தரப்பட்ட பக்க பெயர் ( $1 ) செல்லத்தக்க தலைப்பு இல்லை",
"tpt-nosuchpage": "பக்க $1 இல்லை",
- "tpt-badsect": "மொழிபெயர்ப்பு அலகு $2 க்கு ''$1 \"ஒரு செல்லத்தக்க பெயர் அல்ல.",
"tpt-edit-failed": "$1 பக்கத்தை இற்றைப்படுத்த இயலவில்லை.",
"tpt-new-pages-title": "மொழிபெயர்ப்புக்குப் பரிந்துரைக்கப்பட்டுள்ள பக்கங்கள்",
"tpt-old-pages-title": "மொழிபெயர்க்கப்பட்டு வரும் பக்கங்கள்",
diff --git a/MLEB/Translate/i18n/pagetranslation/tcy.json b/MLEB/Translate/i18n/pagetranslation/tcy.json
index 4a555d16..53bfecaf 100644
--- a/MLEB/Translate/i18n/pagetranslation/tcy.json
+++ b/MLEB/Translate/i18n/pagetranslation/tcy.json
@@ -1,8 +1,43 @@
{
"@metadata": {
"authors": [
- "VASANTH S.N."
+ "VASANTH S.N.",
+ "Vishwanatha Badikana",
+ "BHARATHESHA ALASANDEMAJALU",
+ "Kiranpoojary"
]
},
- "tpt-languages-nonzero": "$1 ($2% ಅನುವಾದ ಪೂರ್ಣವಾತ್‍ಂಡ್)"
+ "pagetranslation": "ಪುಟೋ ತರ್ಜುಮೆ",
+ "action-pagetranslation": "ತರ್ಜುಮೆ ಅಪಿಂಚಿ ಪುಟೊಕುಲೆನ್ ನಿರ್ವಹಿಸಲೇ",
+ "tpt-section": "ತರ್ಜುಮೆ $1",
+ "tpt-section-new": "ಪೊಸ ತರ್ಜುಮೆ. \nಪುದರ್:$1",
+ "tpt-section-deleted": "ತರ್ಜುಮೆ $1",
+ "tpt-diff-new": "ಪೊಸ ಪದೋ",
+ "tpt-old-pages-title": "ತರ್ಜುಮೆ ಅವೊಂತಿಪ್ಪುನಾ ಪುಟೊಕುಲು",
+ "tpt-select-prioritylangs-reason": "ಕಾರಣೊ:",
+ "translate-tag-translate-link-desc": "ಈಫುಟೊನ್ ಅನುವಾದ ಮಲ್ಪುಲೆ",
+ "translate-tag-markthis": "ಈ ಫುಟೊನ್ ಅನುವಾದ ಮಂಪರ ಗುರ್ತ್ ಮನ್ಪುಲೆ",
+ "tpt-languages-legend": "ಬೇತೆ ಬಾಸೆಲೆಡ್:",
+ "tpt-languages-zero": "ಈ ಬಾಸೆಡ್ ಅನುವಾದ ಸುರು ಮಾನ್ಪಿ",
+ "tpt-languages-nonzero": "$1($2% ತರ್ಜುಮೆ ಆತ್‌ಂಡ್)",
+ "tpt-tab-translate": "ಅನುವಾದ ಮಲ್ಪುಲೆ",
+ "tpt-discouraged-language-reason": "ಕಾರಣ: $1",
+ "tpt-aggregategroup-add": "ಸೇರಾಲೆ",
+ "tpt-aggregategroup-save": "ಒರಿಪಾಲೆ",
+ "tpt-aggregategroup-new-name": "ಪುದರ್:",
+ "tpt-aggregategroup-edit-name": "ಪುದರ್:",
+ "tpt-aggregategroup-edit-description": "ವಿವರಣೆ:",
+ "tpt-aggregategroup-update": "ಒರಿಪಾಲೆ",
+ "tpt-aggregategroup-update-cancel": "ವಜಾ ಮಲ್ಪುಲೆ",
+ "log-action-filter-pagetranslation-mark": "ಅನುವಾದಗ್ ಗುರ್ತ್ ಮನ್ಪುಲೆ",
+ "log-action-filter-pagetranslation-unmark": "ಅನುವಾದತ್ ದೆಪ್ಪುಲೆ",
+ "pt-movepage-current": "ಇತ್ತೇತ ಪುದರ್:",
+ "pt-movepage-new": "ಪೊಸ ಪುದರ್:",
+ "pt-movepage-reason": "ಕಾರಣೊ:",
+ "pm-savepages-button-label": "ಒರಿಪಾಲೆ",
+ "pm-cancel-button-label": "ವಜಾ ಮಲ್ಪುಲೆ",
+ "pp-prepare-button-label": "ತಯಾರ್ ಮಲ್ಪುಲೆ",
+ "pp-save-button-label": "ಒರಿಪಾಲೆ",
+ "pp-cancel-button-label": "ವಜಾ ಮಲ್ಪುಲೆ",
+ "tpt-generic-button": "ಗಟ್ಟಿಮಲ್ಪುಲೆ"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/te.json b/MLEB/Translate/i18n/pagetranslation/te.json
index 25a522b8..738e355f 100644
--- a/MLEB/Translate/i18n/pagetranslation/te.json
+++ b/MLEB/Translate/i18n/pagetranslation/te.json
@@ -8,11 +8,9 @@
},
"pagetranslation": "పేజీ అనువాదం",
"right-pagetranslation": "పేజీల కూర్పులను అనువాదానికై గుర్తించడం",
- "tpt-desc": "విషయపు పేజీలను అనువదించడానికై పొడగింత",
"tpt-section": "అనువాద విభాగం $1",
"tpt-section-new": "కొత్త అనువాద విభాగం. పేరు: $1",
"tpt-section-deleted": "అనువాద విభాగము $1",
- "tpt-template": "పేజీ మూస",
"tpt-diff-old": "గత పాఠ్యం",
"tpt-diff-new": "కొత్త పాఠ్యం",
"tpt-sections-template": "అనువాద పేజీ మూస",
@@ -54,7 +52,5 @@
"pt-deletepage-list-other": "ఇతర ఉపపేజీలు",
"pm-import-button-label": "దిగుమతి చెయ్యి",
"pm-savepages-button-label": "భద్రపరచు",
- "pm-cancel-button-label": "రద్దుచేయి",
- "pm-pagename-placeholder": "మీ ప్రతికి పేరును ఇవ్వండి",
- "pm-langcode-placeholder": "భాష సంకేతం"
+ "pm-cancel-button-label": "రద్దుచేయి"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/th.json b/MLEB/Translate/i18n/pagetranslation/th.json
index b97b957f..ba6cf88e 100644
--- a/MLEB/Translate/i18n/pagetranslation/th.json
+++ b/MLEB/Translate/i18n/pagetranslation/th.json
@@ -3,44 +3,76 @@
"authors": [
"Ans",
"Passawuth",
- "Woraponboonkerd"
+ "Woraponboonkerd",
+ "Horus",
+ "Octahedron80",
+ "Aefgh39622"
]
},
"pagetranslation": "การแปลภาษา",
"right-pagetranslation": "กำหนดให้รุ่นปรับปรุงนี้เพื่อการแปลภาษา",
- "tpt-desc": "ส่วนเพิ่มเติมสำหรับหน้าที่มีการแปลเนื้อหา",
+ "action-pagetranslation": "จัดการหน้าที่แปลได้",
"tpt-section": "หน่วยการแปล $1",
"tpt-section-new": "หน่วยการแปลใหม่\n\nชื่อ: $1",
"tpt-section-deleted": "หน่วยการแปล $1",
- "tpt-template": "แม่แบบของหน้า",
- "tpt-templatediff": "แม่แบบของหน้านี้ได้ถูกเปลี่ยนแปลงแล้ว",
- "tpt-diff-old": "อักษรก่อนหน้า",
- "tpt-diff-new": "คำใหม่",
+ "tpt-diff-old": "ข้อความก่อนหน้า",
+ "tpt-diff-new": "ข้อความใหม่",
"tpt-submit": "กำหนดให้รุ่นนี้เพื่อการแปลภาษา",
"tpt-sections-oldnew": "หน่วยการแปลใหม่และที่มีอยู่เดิมแล้ว",
"tpt-sections-deleted": "หน่วยการแปลที่ถูกลบแล้ว",
"tpt-sections-template": "แม่แบบหน้าการแปลภาษา",
+ "tpt-action-nofuzzy": "ไม่ต้องเลิกตรวจสอบการแปล",
"tpt-badtitle": "ชื่อหน้าที่กำหนดมานั้น ($1) ไม่ใช่ชื่อหน้าที่ถูกต้อง",
"tpt-nosuchpage": "ไม่มีหน้า $1",
"tpt-oldrevision": "$2 ไม่ใช่รุ่นปรับปรุงล่าสุดของหน้าชื่อ[[:$1]]\n\nเฉพาะรุ่นปรับปรุงล่าสุดเท่านั้นที่สา่มารถกำหนดเพื่อการแปลภาษา",
"tpt-notsuitable": "หน้า $1 นั้นไม่เมาะสมในการแปลภาษา\n\nตรวจสอบให้แน่ใจว่ามีแท็ก <nowiki><translate></nowiki> อยู่และมีประโยคของโค้ดที่ถูกต้อง",
"tpt-saveok": "หน้า [[:$1]] ได้ถูกกำหนดไว้สำหรับการแปลภาษากับหน่วยการแปลภาษา $2 หน่วย\n\nหน้านี้สามารถ<span class=\"plainlinks\">[$3 เริ่มแปลภาษาได้แล้ว]</span>",
- "tpt-badsect": "\"$1\" ไม่ใช่ชื่อที่ถูกต้องสำหรับหน่วยการแปลภาษา $2",
+ "tpt-offer-notify": "คุณสามารถ<span class=\"plainlinks\">[$1 แจ้งเตือนผู้แปล]</span>เกี่ยวกับหน้านี้ได้",
"tpt-showpage-intro": "ส่วนที่มีการเพิ่มใหม่, มีอยู่เดิม และที่ถูกลบไปแล้วนั้นปรากฎด้านล่างนี้\nก่อนที่จะทำให้รุ่นปรับปรุงนี้สำหรับการแปลภาษา ตรวจสอบให้แน่ใจว่าการเปลี่ยนแปลงของส่วนต่างๆ ได้ถูกลดลงมาเพื่อเป็นการหลีกเลี่ยงงานที่ไม่จำเป็นของผู้แปลภาษา",
"tpt-mark-summary": "กำหนดให้รุ่นปรับปรุงนี้สำหรับการแปลภาษา",
"tpt-edit-failed": "ไม่สามารถปรับปรุงหน้า: $1 ได้",
+ "tpt-duplicate": "ชื่อหน่วยการแปล $1 ถูกใช้แล้วมากกว่าหนึ่งครั้ง",
"tpt-already-marked": "รุ่นปรับปรุงล่าสุดของหน้านี้ได้ถูกกำหนดเพื่อการแปลภาษาแล้ว",
+ "tpt-unmarked": "หน้า $1 ไม่ได้ถูกกำหนดให้เพื่อการแปลภาษาอีกต่อไป",
"tpt-list-nopages": "ไม่มีหน้าใดๆ ที่ถูกกำหนดเพื่อการแปลภาษา หรือพร้อมที่จะถูกกำหนดเพื่อการแปลภาษา",
+ "tpt-new-pages-title": "หน้าที่เสนอสำหรับการแปลภาษา",
+ "tpt-old-pages-title": "หน้าที่มีการแปลภาษา",
+ "tpt-other-pages-title": "หน้าเสีย",
+ "tpt-discouraged-pages-title": "หน้าที่หยุดการแปลภาษา",
"tpt-new-pages": "{{PLURAL:$1|หน้านี้|หน้าเหล่านี้}} มีที่คั่นสำหรับการแปลภาษาอยู่ แต่ไม่มีรุ่นปรับปรุงใดๆ เลยของ{{PLURAL:$1|หน้านี้|หน้าแหล่านี้}} ที่ได้ถูกกำหนดเพื่อการแปลภาษา",
"tpt-old-pages": "รุ่นปรับปรุงบางรุ่นของ{{PLURAL:$1|หน้านี้|หน้าต่างๆ เหล่านี้}} ได้ถูกกำหนดเพื่อการแปลภาษาแล้ว",
- "tpt-rev-unmark": "ลบหน้านี้จากการแปล",
+ "tpt-select-prioritylangs-reason": "เหตุผล:",
+ "tpt-rev-unmark": "ลบจากการแปล",
"translate-tag-translate-link-desc": "แปลหน้านี้",
"translate-tag-markthis": "กำหนดให้หน้านี้เพื่อการแปลภาษา",
"translate-tag-markthisagain": "หน้านี้มี<span class=\"plainlinks\">[$1 ความเปลี่ยนแปลง]</span> นับตั้งแต่ครั้งสุดท้ายที่<span class=\"plainlinks\">[$2 ถูกกำหนดเพื่อการแปลภาษา]</span>.",
"translate-tag-hasnew": "หน้านี้มี<span class=\"plainlinks\">[$1 ความเปลี่ยนแปลง]</span> ที่ไม่ได้ถูกกำหนดเพื่อการแปลภาษา",
"tpt-translation-intro": "หน้านี้คือ<span class=\"plainlinks\">[$1 รุ่นปรับปรุงที่เริ่มแปลแล้ว]</span> ของ [[$2]] และการแปลภาษาเสร็จสิ้นแล้ว $3 เปอร์เซ็นต์ของทั้งหมดและเป็นรุ่นล่าสุด",
- "tpt-languages-legend": "ภาษาอื่นๆ:",
- "tpt-target-page": "หน้านี้ไม่สามารถถูกปรับปรุงตามปกติได้\n\nหน้านี้เป็นหน้าการแปลของหน้า[[$1]] และสามารถปรับปรุงการแปลได้โดยใช้[เครื่องมือการแปล $2]",
+ "tpt-translation-intro-fuzzy": "การแปลภาษาที่ตกรุ่นแล้วจะถูกทำเครื่องหมายในลักษณะนี้",
+ "tpt-languages-legend": "ภาษาอื่น ๆ:",
+ "tpt-languages-nonzero": "$1 (แปลแล้ว $2%)",
+ "tpt-tab-translate": "แปล",
+ "tpt-target-page": "ไม่สามารถปรับปรุงหน้านี้ตามปกติได้\nหน้านี้เป็นหน้าการแปลของหน้า [[$1]] และสามารถปรับปรุงการแปลได้โดยใช้[$2 เครื่องมือการแปล]",
"tpt-render-summary": "กำลังอัพเดตเพื่อทำให้ตรงกันกับรุ่นปรับปรุงใหม่ของหน้่าโค้ดหลัก",
- "tpt-download-page": "ส่งหน้าออกไปพร้อมการแปลภาษา"
+ "tpt-aggregategroup-add": "เพิ่ม",
+ "tpt-aggregategroup-save": "บันทึก",
+ "tpt-aggregategroup-new-name": "ชื่อ:",
+ "tpt-aggregategroup-edit-name": "ชื่อ:",
+ "tpt-aggregategroup-edit-description": "คำอธิบาย:",
+ "tpt-aggregategroup-update": "บันทึก",
+ "tpt-aggregategroup-update-cancel": "ยกเลิก",
+ "pt-movepage-list-pages": "รายชื่อหน้าที่จะย้าย",
+ "pt-movepage-current": "ชื่อปัจจุบัน:",
+ "pt-movepage-new": "ชื่อใหม่:",
+ "pt-movepage-reason": "เหตุผล:",
+ "pt-deletepage-action-check": "แสดงรายชื่อหน้าที่จะถูกลบ",
+ "pt-deletepage-current": "ชื่อหน้า:",
+ "pt-deletepage-reason": "เหตุผล:",
+ "pt-deletepage-subpages": "ลบหน้าย่อยทั้งหมด",
+ "pt-deletepage-list-pages": "รายชื่อหน้าที่จะลบ",
+ "pm-import-button-label": "นำเข้า",
+ "pm-savepages-button-label": "บันทึก",
+ "pm-cancel-button-label": "ยกเลิก",
+ "pp-save-button-label": "บันทึก",
+ "pp-cancel-button-label": "ยกเลิก"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/tl.json b/MLEB/Translate/i18n/pagetranslation/tl.json
index 30aff291..4e82f9d7 100644
--- a/MLEB/Translate/i18n/pagetranslation/tl.json
+++ b/MLEB/Translate/i18n/pagetranslation/tl.json
@@ -2,17 +2,15 @@
"@metadata": {
"authors": [
"AnakngAraw",
- "Jewel457"
+ "Jewel457",
+ "Sky Harbor"
]
},
"pagetranslation": "Salinwika ng pahina",
"right-pagetranslation": "Tatakan ang mga bersyon ng mga pahinang isasalinwika",
- "tpt-desc": "Dugtong para sa pagsasalinwika ng mga pahina ng nilalaman",
"tpt-section": "Yunit ng salinwika $1",
"tpt-section-new": "Bagong yunit ng salinwika.\nPangalan: $1",
"tpt-section-deleted": "Yunit ng salinwika $1",
- "tpt-template": "Suleras ng pahina",
- "tpt-templatediff": "Nabago na ang suleras ng pahina.",
"tpt-diff-old": "Naunang teksto",
"tpt-diff-new": "Bagong teksto",
"tpt-submit": "Tatakan ang bersyong ito para isalinwika",
@@ -25,7 +23,6 @@
"tpt-oldrevision": "Ang $2 ay hindi ang pinakabagong bersyon ng pahinang [[:$1]].\nTanging pinakabagong mga bersyong lang ang tatatakan para sa pagsasalinwika.",
"tpt-notsuitable": "Hindi angkop ang pahinang $1 para sa pagsasalinwika.\nTiyaking mayroon itong mga tatak na <nowiki><translate></nowiki> at may isang tanggap na sintaks.",
"tpt-saveok": "Nilagyang ng tanda ang pahinang [[:$1]] para sa pagsasalinwika na may $2 na {{PLURAL:$2|yunit ng salinwika|mga yunit ng salinwika}}.\nMaaari na ngayong <span class=\"plainlinks\">[$3 isalinwika]</span> ang pahina.",
- "tpt-badsect": "Ang $1\" ay isang hindi tanggap na pangalan para sa yunit ng salinwikang $2.",
"tpt-showpage-intro": "Nakatala sa ibaba ang bago, umiiral at naburang mga yunit ng salinwika.\nBago tatakan ang bersyong ito para isalinwika, suriing nakauntian ang mga pagbabago sa mga yunit ng salinwika upang maiwasan ang hindi kailangang gawain para sa mga tagapagsalinwika.",
"tpt-mark-summary": "Tinatakan ang bersyong ito para isalinwika",
"tpt-edit-failed": "Hindi maisapanahon ang pahina: $1",
@@ -58,9 +55,11 @@
"translate-tag-markthisagain": "Ang pahinang ito ay may <span class=\"plainlinks\">[$1 mga pagbabago]</span> mula pa noong huli itong <span class=\"plainlinks\">[$2 tinatakan para isalinwika]</span>.",
"translate-tag-hasnew": "Naglalaman ang pahinang ito ng <span class=\"plainlinks\">[$1 mga pagbabagong]</span> hindi tinatakan para isalinwika.",
"tpt-translation-intro": "Ang pahinang ito ay isang <span class=\"plainlinks\">[$1 naisalinwikang bersyon]</span> ng isang pahina [[$2]] at ang salinwika ay $3% kumpleto na.",
+ "tpt-translation-intro-fuzzy": "Tinatakan ng ganito ang mga pagsasalinwikang lipas na sa panahon.",
"tpt-languages-legend": "Iba pang mga wika:",
"tpt-languages-separator": "&#160;•&#32;",
"tpt-languages-zero": "Simulan ang pagsasalinwika para sa wikang ito",
+ "tpt-languages-nonzero": "$1 ($2% naisalin)",
"tpt-target-page": "Hindi maaaring kinakamay na maisapanahon ang pahinang ito.\nAng pahinang ito ay isang salinwika ng pahinang [[$1]] at maisasapanahon ang salinwika sa pamamagitan ng [$2 kasangkapang pansalinwika].",
"tpt-unknown-page": "Nakalaan ang puwang na pampangalang ito para sa mga salinwika ng pahina ng nilalaman.\nTila hindi tumutugma ang pahinang sinusubukan mong baguhin sa anumang pahinang natatakan para sa pagsasalinwika.",
"tpt-translation-restricted": "Ang pagsasalinwika ng pahinang ito na papunta sa wikang ito ay pinigilan ng isang tagapangasiwa ng salinwika.\n\nDahilan: $1",
@@ -69,7 +68,6 @@
"tpt-discouraged-language-reason": "Dahilan: $1",
"tpt-priority-languages": "Isang tagapangasiwa ng salinwika ang nagtakda ng mga wikang nararapat na unahin para sa pangkat na ito upang maging $1.",
"tpt-render-summary": "Isinasapanahon upang tumugma sa bagong bersyon ng pinagmulang pahina",
- "tpt-download-page": "Iluwas ang pahinang may mga pagsasalinwika",
"aggregategroups": "Mga pangkat na pinagsama-sama",
"tpt-aggregategroup-add": "Idagdag",
"tpt-aggregategroup-save": "Itala",
@@ -138,6 +136,5 @@
"pt-deletepage-started": "Pakisuri ang [[Special:Log/pagetranslation|talaan ng pagsasalinwika ng pahina]] para sa mga kamalian at mensahe ng pagkakabuo.",
"pt-deletepage-intro": "Nagpapahintulot sa iyo ang pahinang ito na magbura ng kabuuan ng mga pahinang maisasalinwika o mga pagsasalinwika na papunta sa isang wika.\nAng kilos ng pagbura ay hindi magiging kaagad, dahil maraming mga pahina ang kakailanganing burahin.\nAng mga kabiguan ay itatala sa loob ng [[Special:Log/pagetranslation|tala ng pagsasalinwika ng pahina]] at kakailanganing kinakamay ang pagkukumpuni ng mga ito.",
"pm-savepages-button-label": "Itala",
- "pm-pagename-placeholder": "Itala ang pangalan ng pahina",
"tpt-translate-title": "Payagan ang pagsasalin ng pamagat ng pahina"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/tr.json b/MLEB/Translate/i18n/pagetranslation/tr.json
index 76f15d60..72b436fb 100644
--- a/MLEB/Translate/i18n/pagetranslation/tr.json
+++ b/MLEB/Translate/i18n/pagetranslation/tr.json
@@ -11,17 +11,18 @@
"Rapsar",
"Mavrikant",
"Sayginer",
- "Ömer Berkay"
+ "Ömer Berkay",
+ "Arystanbek",
+ "McAang",
+ "Bulgu"
]
},
"pagetranslation": "Çeviri sayfası",
"right-pagetranslation": "Sayfa sürümlerini çeviri için işaretler",
- "tpt-desc": "İçerik sayfalarının çevirisi için eklenti",
+ "action-pagetranslation": "çevrilebilir sayfaları yönetme",
"tpt-section": "Çeviri birimi $1",
"tpt-section-new": "Yeni çeviri birimi.\nAd: $1",
"tpt-section-deleted": "Çeviri birimi $1",
- "tpt-template": "Sayfa şablonu",
- "tpt-templatediff": "Sayfa şablonu değişti.",
"tpt-diff-old": "Önceki metin",
"tpt-diff-new": "Yeni metin",
"tpt-submit": "Bu sürümü çeviri için işaretle",
@@ -29,9 +30,11 @@
"tpt-sections-deleted": "Silinen çeviri birimleri",
"tpt-sections-template": "Çeviri sayfası şablonu",
"tpt-badtitle": "Verilen sayfa adı ($1) geçerli bir başlık değil",
+ "tpt-nosuchpage": "$1 adlı sayfa mevcut değil",
"tpt-oldrevision": "$2, [[:$1]] sayfasının en son sürümü değil.\nSadece en son sürümler çeviri için işaretlenebilir.",
+ "tpt-notsuitable": "$1 adlı sayfa, çevrilmeye uygun değil. Sayfada <nowiki><translate></nowiki> etiketlerinin var olduğundan ve sayfanın geçerli bir söz dizimine sahip olduğundan emin olun.",
"tpt-saveok": "[[:$1]] adlı sayfa $2 {{PLURAL:$2|çeviri birimi|çeviri birimi}} ile çeviri için işaretlenmiş.\nSayfa artık <span class=\"plainlinks\">[$3 çevrilebilir]</span>.",
- "tpt-badsect": "\"$1\", $2 çeviri birimi için geçerli bir ad değil.",
+ "tpt-offer-notify": "Çevirmenleri bu sayfa hakkında <span class=\"plainlinks\">[$1 bilgilendirebilirsiniz]</span>.",
"tpt-showpage-intro": "Aşağıda yeni, mevcut ve silinmiş çeviri birimleri listelenmiştir.\nBu sürümü çeviri için işaretlemeden önce, çevirmenlere gereksiz iş çıkarmamak için çeviri birimlerinde yapılan değişikliklerin asgari seviyede olduğundan emin olun.",
"tpt-mark-summary": "Bu sürüm çeviri için işaretlendi",
"tpt-mark-nochanges": "Bu sürüm ile kontrol edilmiş son sürüm arasında hiçbir fark yoktur.",
@@ -40,35 +43,52 @@
"tpt-list-nopages": "Çeviri için işaretlenen ya da işaretlenmeye hazır olan herhangi bir sayfa bulunmuyor.",
"tpt-old-pages-title": "Çeviri sayfası",
"tpt-old-pages": "{{PLURAL:$1|Bu sayfanın|Bu sayfaların}} bazı sürümleri çeviri için işaretlenmiş.",
+ "tpt-select-prioritylangs-reason": "Sebep:",
+ "tpt-sections-prioritylangs": "Öncelikli diller",
+ "tpt-rev-mark": "çeviri için işaretle",
+ "tpt-rev-unmark": "çeviri çıkarın",
+ "tpt-rev-discourage": "vazgeçirmek",
+ "tpt-rev-encourage": "geri getir",
+ "tpt-rev-mark-tooltip": "Çeviri için bu sayfanın en son sürümünü işaretleyin.",
+ "tpt-rev-unmark-tooltip": "Çeviri bu sayfaya çıkarın.",
+ "tpt-rev-discourage-tooltip": "Bu sayfada daha fazla çeviriler vazgeçirmek.",
"translate-tag-translate-link-desc": "Bu sayfayı çevir",
"translate-tag-markthis": "Bu sayfayı çeviri için işaretle",
"translate-tag-hasnew": "Bu sayfa, çeviri için işaretlenmemiş <span class=\"plainlinks\">[$1 değişiklik]</span> içeriyor.",
"tpt-translation-intro": "Bu sayfa, [[$2]] sayfasının <span class=\"plainlinks\">[$1 çevrilmiş bir sürümüdür]</span> ve çeviri %$3 oranında tamamlanmıştır.",
+ "tpt-translation-intro-fuzzy": "Tarihi geçen çeviriler bu şekilde işaretlenmiştir.",
"tpt-languages-legend": "Diğer diller:",
+ "tpt-languages-zero": "Bu dil için başlangıç çeviri",
"tpt-languages-nonzero": "$1 ($2% çevrildi)",
+ "tpt-tab-translate": "Çevir",
"tpt-render-summary": "Kaynak sayfanın yeni sürümü ile eşleme için güncelleniyor",
- "tpt-download-page": "Çevirileri olan sayfayı dışa aktar",
"aggregategroups": "Grupları birleştir",
"tpt-aggregategroup-add": "Ekle",
"tpt-aggregategroup-save": "Kaydet",
"tpt-aggregategroup-new-name": "Ad:",
"tpt-aggregategroup-new-description": "Açıklama (isteğe bağlı):",
+ "tpt-aggregategroup-edit-name": "Adı:",
+ "tpt-aggregategroup-edit-description": "Açıklama:",
+ "tpt-aggregategroup-update": "Kaydet",
"tpt-invalid-group": "Geçersiz grup",
+ "log-name-pagetranslation": "Sayfa çeviri kütüğü",
+ "logentry-pagetranslation-mark": "$1, $3 sayfasını çeviri için {{GENDER:$2|işaretledi}}",
"pt-movepage-list-other": "Diğer alt {{PLURAL:$1|sayfalar|sayfalar}}",
"pt-movepage-current": "Geçerli adı:",
"pt-movepage-new": "Yeni adı:",
+ "pt-movepage-reason": "Gerekçe:",
"pt-movepage-subpages": "Tüm alt sayfaları taşı",
"pt-deletepage-current": "Sayfa adı:",
"pt-deletepage-subpages": "Tüm alt sayfaları sil",
"pm-import-button-label": "İçe aktar",
"pm-savepages-button-label": "Kaydet",
"pm-cancel-button-label": "İptal",
- "pm-pagename-placeholder": "Sayfa adını giriniz",
- "pm-langcode-placeholder": "Dil kodu",
"pm-page-does-not-exist": "$1 mevcut değil.",
"pm-pagename-missing": "Lütfen sayfa adı girin.",
- "pm-langcode-missing": "Lütfen dil kodunu girin.",
+ "pm-pagetitle-placeholder": "Sayfa adı girin",
"pm-pagetitle-invalid": "Lütfen geçerli bir sayfa başlığı girin",
+ "pm-pagetitle-missing": "Lütfen sayfa adı girin.",
+ "pm-langcode-missing": "Lütfen dil kodunu girin.",
"pp-pagename-placeholder": "Sayfa adı girin",
"pp-save-button-label": "Kaydet",
"pp-save-message": "Sayfa kaydedildi. Artık [$1 düzenleme] yapabilirsiniz.",
diff --git a/MLEB/Translate/i18n/pagetranslation/tt-cyrl.json b/MLEB/Translate/i18n/pagetranslation/tt-cyrl.json
index bba3a0bc..45e3fba7 100644
--- a/MLEB/Translate/i18n/pagetranslation/tt-cyrl.json
+++ b/MLEB/Translate/i18n/pagetranslation/tt-cyrl.json
@@ -7,6 +7,10 @@
},
"pagetranslation": "Битләр тәрҗемәсе",
"tpt-diff-new": "Яңа текст",
+ "tpt-sections-prioritylangs": "Төп телләр",
"translate-tag-translate-link-desc": "Бу битне тәрҗемә итү",
- "tpt-translation-intro": "Әлеге бит [[$2]] сәхифәсенең <span class=\"plainlinks\">[$1 тәрҗемәсе булып тора]</span>. Тәрҗемә $3% башкарылган."
+ "translate-tag-hasnew": "Әлеге биттә тәрҗемәләр өчен күрсәтелмәгән <span class=\"plainlinks\">[$1 үзгәртүләр]</span> бар.",
+ "tpt-translation-intro": "Әлеге бит [[$2]] сәхифәсенең <span class=\"plainlinks\">[$1 тәрҗемәсе булып тора]</span>. Тәрҗемә $3% башкарылган.",
+ "tpt-languages-legend": "Башка телләр:",
+ "tpt-languages-nonzero": "$1 ($2% тәрҗемә телгән)"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/tzm.json b/MLEB/Translate/i18n/pagetranslation/tzm.json
index 4f078147..2135f0f7 100644
--- a/MLEB/Translate/i18n/pagetranslation/tzm.json
+++ b/MLEB/Translate/i18n/pagetranslation/tzm.json
@@ -5,7 +5,6 @@
]
},
"pagetranslation": "ⵜⴰⵙⵓⵖⵍⵜ ⵏ ⵜⴰⵙⵏⴰ",
- "tpt-template": "ⵜⴰⵍⵖⴰ ⵏ ⵜⴰⵙⵏⴰ",
"tpt-diff-new": "ⴰⴹⵔⵉⵙ ⴰⵎⴰⵢⵏⵓ",
"tpt-select-prioritylangs-reason": "ⴰⵙⵔⴰⴳ:",
"tpt-languages-legend": "ⵜⵓⵜⵍⴰⵢⵉⵏ ⵢⴰⴹⵏⵉ:",
diff --git a/MLEB/Translate/i18n/pagetranslation/ug-arab.json b/MLEB/Translate/i18n/pagetranslation/ug-arab.json
index 00282c80..93c0bf84 100644
--- a/MLEB/Translate/i18n/pagetranslation/ug-arab.json
+++ b/MLEB/Translate/i18n/pagetranslation/ug-arab.json
@@ -9,8 +9,6 @@
"tpt-section": "$1 تەرجىمە بۆلىكى",
"tpt-section-new": "يېڭى تەرجىمە بۆلىكى.\nئاتى: $1",
"tpt-section-deleted": "$1 تەرجىمە بۆلىكى",
- "tpt-template": "بەت قېلىپى",
- "tpt-templatediff": "بەت قېلىپى ئۆزگەردى.",
"tpt-diff-old": "ئالدىنقى تېكست",
"tpt-diff-new": "يېڭى تېكست",
"tpt-sections-template": "تەرجىمە بېتى قېلىپى",
@@ -36,7 +34,6 @@
"tpt-discouraged-language-reason": "سەۋەپ: $1",
"tpt-priority-languages": "تەرجىمە باشقۇرغۇچى بۇ گۇرۇپپا ئالدىن تەرجىمە قىلىدىغان تىلنى $1 غا تەڭشىدى.",
"tpt-render-summary": "ئەسلى بەت بىلەن ماسلىشىدىغان يېڭى نەشرىگە يېڭىلاۋاتىدۇ",
- "tpt-download-page": "تەرجىمىسى بار بەتنى چىقار",
"aggregategroups": "توپلانما گۇرۇپپا",
"tpt-aggregategroup-add": "قوش",
"tpt-aggregategroup-save": "ساقلا",
diff --git a/MLEB/Translate/i18n/pagetranslation/uk.json b/MLEB/Translate/i18n/pagetranslation/uk.json
index 6ecabb19..db070d33 100644
--- a/MLEB/Translate/i18n/pagetranslation/uk.json
+++ b/MLEB/Translate/i18n/pagetranslation/uk.json
@@ -13,18 +13,16 @@
"Riwnodennyk",
"Ата",
"Тест",
- "Piramidion"
+ "Piramidion",
+ "Dars"
]
},
"pagetranslation": "Переклад сторінок",
"right-pagetranslation": "позначення версій сторінок для перекладу",
- "action-pagetranslation": "керування сторінками, що можна перекладати",
- "tpt-desc": "Розширення для перекладу статей",
+ "action-pagetranslation": "керування сторінками, які можна перекладати",
"tpt-section": "Блок перекладу $1",
"tpt-section-new": "Новий блок перекладу.\nНазва: $1",
"tpt-section-deleted": "Блок перекладу $1",
- "tpt-template": "Шаблон сторінки",
- "tpt-templatediff": "Шаблон сторінки змінений.",
"tpt-diff-old": "Попередній текст",
"tpt-diff-new": "Новий текст",
"tpt-submit": "Позначити цю версію для перекладу",
@@ -38,10 +36,9 @@
"tpt-notsuitable": "Сторінка $1 не підходить для перекладу.\nПереконайтеся, що вона містить теги <nowiki><translate></nowiki> і має вірний синтаксис.",
"tpt-saveok": "Сторінка [[:$1]] була відмічена для перекладу і містить $2 {{PLURAL:$2|блок перекладу|блоки перекладу|блоків перекладу}}.\nТепер сторінку можна <span class=\"plainlinks\">[$3 перекладати]</span>.",
"tpt-offer-notify": "Ви можете <span class=\"plainlinks\">[$1 повідомити перекладачів]</span> про цю сторінку.",
- "tpt-badsect": "«$1» не є припустимою назвою для частини перекладів $2.",
"tpt-showpage-intro": "Нижче наведені нові, існуючі та видалені одиниці перекладу.\nПеред тим, які відмітити цю версію для перекладу, переконайтесь, що зміни в одиницях перекладу будуть мінімальними, щоб уникнути необов'язкової роботи для перекладачів.",
"tpt-mark-summary": "Позначено цю версію для перекладу",
- "tpt-mark-nochanges": "Немає жодної різниці між цією версією та останньою позначеною версією.",
+ "tpt-mark-nochanges": "Немає змін для перегляду. Позначення цієї сторінки на переклад не змінить ні сторінку, ні жоден елемент перекладу.",
"tpt-edit-failed": "Не вдалося оновити сторінку: $1",
"tpt-duplicate": "Переклад елементу із назвою $1 вжито більше одного разу.",
"tpt-already-marked": "Остання версія цієї сторінки вже була відмічена для перекладу.",
@@ -56,7 +53,7 @@
"tpt-other-pages": "{{PLURAL:$1|1=Стара версія цієї сторінки відмічена|Старі версії цих сторінок відмічені}} для перекладу,\nале {{PLURAL:$1|1=остання версія не може бути відмічена|останні версії не можуть бути відмічені}} для перекладу.",
"tpt-discouraged-pages": "Подальший переклад {{PLURAL:$1|1=цієї сторінки|цих сторінок}} припинено.",
"tpt-select-prioritylangs": "Перелік кодів пріоритетних мов (відокремлюються комою)",
- "tpt-select-prioritylangs-force": "Запобігати переклад іншими мовами, крім пріоритетних",
+ "tpt-select-prioritylangs-force": "Запобігти перекладу іншими мовами, крім пріоритетних",
"tpt-select-prioritylangs-reason": "Причина:",
"tpt-sections-prioritylangs": "Пріоритет мов",
"tpt-rev-mark": "позначити для перекладу",
@@ -72,12 +69,14 @@
"translate-tag-markthisagain": "На цій сторінці {{PLURAL:$1|була здійснена|були здійснені}} <span class=\"plainlinks\">[$1 {{PLURAL:$1|зміна|зміни}}]</span> з моменту, коли вона востаннє була <span class=\"plainlinks\">[$2 відмічена до перекладу]</span>.",
"translate-tag-hasnew": "На цій сторінці було здійснено <span class=\"plainlinks\">[$1 зміни]</span>, які не відмічені для перекладу.",
"tpt-translation-intro": "Ця сторінка є <span class=\"plainlinks\">[$1 перекладом]</span> сторінки [[$2]]. Переклад виконано на $3%.",
+ "tpt-translation-intro-fuzzy": "Застарілі переклади позначені так.",
"tpt-languages-legend": "Інші мови:",
"tpt-languages-zero": "Розпочати переклад цією мовою",
"tpt-languages-nonzero": "$1 ($2% перекладено)",
"tpt-tab-translate": "Перекласти",
"tpt-target-page": "Ця сторінка не може бути оновлена вручну.\nЦе – переклад сторінки [[$1]] і його можна оновити за допомогою [$2 засобу перекладу].",
- "tpt-unknown-page": "Цей простір імен зарезервовано для перекладів текстів сторінок.\nСторінка, яку ви намагаєтесь редагувати, скоріше за все, не відповідає жодній сторінці, відміченій для перекладу.",
+ "tpt-patrolling-blocked": "Цю сторінку не можна відпатрулювати. Натомість скористайтеся дію перекладу, щоб вичитати його.",
+ "tpt-unknown-page": "Цей простір назв зарезервовано для перекладів текстів сторінок.\nСторінка, яку Ви намагаєтесь редагувати, скоріше за все, не відповідає жодній сторінці, відміченій для перекладу.",
"tpt-translation-restricted": "Адміністратор перекладу заборонив переклад цієї сторінки такою мовою.\n\nПричина: $1",
"tpt-discouraged-language-force-header": "Ця сторінка не може бути перекладена на $1.",
"tpt-discouraged-language-force-content": "Адміністратор перекладів вирішив, що ця сторінка може бути перекладена лише на $1.",
@@ -88,7 +87,6 @@
"tpt-discouraged-language-reason": "Причина:$1",
"tpt-priority-languages": "Адміністратор перекладу визначив для цієї групи пріоритетні мови $1.",
"tpt-render-summary": "Оновлення для відповідності новій версії вихідної сторінки",
- "tpt-download-page": "Експортувати сторінку з перекладами",
"aggregategroups": "Загальні групи",
"tpt-aggregategroup-add": "Додати",
"tpt-aggregategroup-save": "Зберегти",
@@ -125,6 +123,15 @@
"logentry-pagetranslation-prioritylanguages-force": "$1 {{GENDER:$2|обмежив|обмежила}} мови для перекладабельної сторінки $3 до $5",
"logentry-pagetranslation-associate": "$1 {{GENDER:$2|додав|додала}} перекладабельну сторінку $3 до агрегованої групи $4",
"logentry-pagetranslation-dissociate": "$1 {{GENDER:$2|вилучив|вилучила}} перекладабельну сторінку $3 з агрегованої групи $4",
+ "log-action-filter-pagetranslation": "Тип дії:",
+ "log-action-filter-pagetranslation-mark": "Позначити до перекладу",
+ "log-action-filter-pagetranslation-unmark": "Вилучення з перекладу",
+ "log-action-filter-pagetranslation-move": "Перейменування сторінок",
+ "log-action-filter-pagetranslation-delete": "Вилучення сторінок",
+ "log-action-filter-pagetranslation-encourage": "Заохочення до перекладу",
+ "log-action-filter-pagetranslation-discourage": "Відмовляння від перекладу",
+ "log-action-filter-pagetranslation-prioritylanguages": "Зміна пріоритетних мов",
+ "log-action-filter-pagetranslation-aggregategroups": "Зміна агрегованих груп",
"pt-movepage-title": "Перемістити сторінку $1, доступну для перекладу",
"pt-movepage-blockers": "Сторінка перекладу не може бути перейменована через {{PLURAL:$1|1=таку помилку|такі помилки}}:",
"pt-movepage-block-base-exists": "Перекладабельна цільова сторінка «[[:$1]]» вже існує.",
@@ -149,11 +156,11 @@
"pt-movepage-action-perform": "Виконати переміщення",
"pt-movepage-action-other": "Змінити ціль",
"pt-movepage-intro": "Ця службова сторінка дозволяє перейменовувати сторінки, позначені для перекладу.\nДія не буде миттєвою, оскільки потрібно перейменувати багато сторінок.\nПід час перейменування сторінок взаємодіяти з ними неможливо.\nПомилки буде записано в [[Special:Log/pagetranslation|журналі перекладу сторінок]] і їх потрібно буде виправити вручну.",
- "pt-movepage-logreason": "Частина сторінки, що перекладається, $1.",
- "pt-movepage-started": "Основна сторінка тепер переміщена.\nБудь ласка, перевірте [[Special:Log/pagetranslation|журнал перекладу сторінок]] на наявність помилок і повідомлення про завершення.",
+ "pt-movepage-logreason": "Частина доступної для перекладу сторінки «$1»",
+ "pt-movepage-started": "Будь ласка, за деякий час перевірте [[Special:Log/pagetranslation|журнал перекладу сторінок]] на наявність помилок і повідомлення про завершення.",
"pt-locked-page": "Ця сторінка заблокована, оскільки в даний момент відбувається переміщення сторінки, що перекладається.",
- "pt-deletepage-lang-title": "Вилучення сторінки перекладу $1.",
- "pt-deletepage-full-title": "Видалення сторінки доступної для перекладу $1 .",
+ "pt-deletepage-lang-title": "Вилучення сторінки перекладу $1",
+ "pt-deletepage-full-title": "Видалення сторінки доступної для перекладу $1",
"pt-deletepage-invalid-title": "Зазначена сторінка є недійсною.",
"pt-deletepage-invalid-text": "Зазначена сторінка недоступна для перекладу і не є перекладом.",
"pt-deletepage-action-check": "Список сторінок, які будуть вилучені",
@@ -170,8 +177,8 @@
"pt-deletepage-list-section": "Сторінки одиниці перекладу",
"pt-deletepage-list-other": "Інші підсторінки",
"pt-deletepage-list-count": "Усього вилучити $1 {{PLURAL:$1|сторінку|сторінки|сторінок}}.",
- "pt-deletepage-full-logreason": "Частина сторінки для перекладу, $1.",
- "pt-deletepage-lang-logreason": "Частина сторінки перекладу $1.",
+ "pt-deletepage-full-logreason": "Частина доступної для перекладу сторінки «$1».",
+ "pt-deletepage-lang-logreason": "Частина сторінки перекладу «$1»",
"pt-deletepage-started": "Будь ласка, перевірте [[Special:Log/pagetranslation|журнал перекладу сторінок]] на наявність помилок і повідомлення про завершення.",
"pt-deletepage-intro": "Ця службова сторінка дозволяє Вам вилучати сторінки, призначені для перекладу, разом з перекладами або ж вилучати переклади визначеною мовою.\nЦя дія не буде миттєвою, бо потребуватиме вилучення багатьох залежних сторінок.\nЯкщо вилучення буде невдалим, його буде записано в [[Special:Log/pagetranslation|журналі перекладу]] і такі випадки потрібно буде усунути вручну.",
"pagemigration": "Міграція сторінок перекладу",
@@ -179,18 +186,20 @@
"pm-import-button-label": "Імпортувати",
"pm-savepages-button-label": "Зберегти",
"pm-cancel-button-label": "Скасувати",
- "pm-pagename-placeholder": "Введіть назву сторінки",
- "pm-langcode-placeholder": "Код мови",
"pm-page-does-not-exist": "$1 не існує",
"pm-old-translations-missing": "$1 не містить старих перекладів",
"pm-extra-units-warning": "Можуть бути наявні додаткові блоки. Будь ласка, правильно співвіднесіть джерело і блоки перекладу",
"pm-pagename-missing": "Будь ласка, введіть назву сторінки",
- "pm-langcode-missing": "Будь ласка, введіть код мови",
"pm-add-icon-hover-text": "Додати блок нижче",
"pm-swap-icon-hover-text": "Поміняти місцями з блоком нижче",
"pm-delete-icon-hover-text": "Видалити блок",
- "pm-pagetitle-invalid": "Будь ласка, введіть правильний заголовок сторінки",
+ "pm-pagetitle-placeholder": "Введіть назву сторінки",
+ "pm-pagetitle-invalid": "Будь ласка, введіть правильну назву сторінки. Вона має бути в форматі <назва-сторінки>/<код-мови>.",
+ "pm-pagetitle-missing": "Будь ласка, введіть назву сторінки.",
+ "pm-langcode-missing": "Схоже, що код мови відсутній у назві. Будь ласка, введіть назву сторінки у форматі <назва-сторінки>/<код-мови>.",
"pm-summary-import": "Імпортований переклад за допомогою [[Special:PageMigration|міграції сторінок]]",
+ "pm-on-import-message-text": "Було імпортовано старі переклади. Використайте опції додавання, зміни та вилучення блоків перекладу та натисніть на кнопку «{{int:pm-savepages-button-label}}» для їх збереження. Натисніть на кнопку «{{int:pm-cancel-button-label}}» для скасування.",
+ "pm-on-save-message-text": "Блоки перекладу було збережено. Тепер Ви можете ввести назву нової сторінки перекладу для її міграції, або зробити зміни до блоків нижче й зберегти нове редагування.",
"tpt-translate-title": "Дозволити переклад заголовка сторінки",
"pp-save-summary": "Підготовлена сторінка для перекладу",
"pagepreparation": "Підготувати сторінку для перекладу",
@@ -206,5 +215,7 @@
"pp-diff-new-header": "Підготовлений текст",
"tpt-unlink-confirm": "Будь ласка, підтвердьте, що ви дійсно хочете вилучити цю сторінку із системи перекладу.\nМовний селектор та перекладені назви сторінок припинять працювати. Перекладені сторінки стануть доступними для редагування.",
"tpt-unlink-button": "Вилучити з перекладу",
- "tpt-unlink-summary": "Вилучення сторінки з перекладу"
+ "tpt-unlink-summary": "Вилучення сторінки з перекладу",
+ "tpt-generic-confirm": "Будь ласка, підтвердіть дію.",
+ "tpt-generic-button": "Підтвердити"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/ur.json b/MLEB/Translate/i18n/pagetranslation/ur.json
index 6a39d56f..045998aa 100644
--- a/MLEB/Translate/i18n/pagetranslation/ur.json
+++ b/MLEB/Translate/i18n/pagetranslation/ur.json
@@ -2,11 +2,12 @@
"@metadata": {
"authors": [
"පසිඳු කාවින්ද",
- "عثمان خان شاہ"
+ "عثمان خان شاہ",
+ "Obaid Raza",
+ "Muhammad Shuaib"
]
},
"pagetranslation": "صفحہ ترجمہ",
- "tpt-template": "صفحہ کے سانچے",
"tpt-diff-old": "پچھلے ٹیکسٹ",
"tpt-diff-new": "نئے متن",
"tpt-sections-template": "ترجمہ صفحہ سانچے",
@@ -15,7 +16,7 @@
"tpt-old-pages-title": "ترجمہ میں صفحات",
"tpt-other-pages-title": "ٹوٹ کے صفحات",
"tpt-select-prioritylangs-reason": "وجہ:",
- "tpt-sections-prioritylangs": "ترجیح کی زبانیں",
+ "tpt-sections-prioritylangs": "ترجیحی زبانیں",
"tpt-rev-mark": "ترجمہ کے لئے نشان زد کریں",
"tpt-rev-unmark": "ترجمہ سے حذف کریں",
"tpt-rev-encourage": "بحال",
@@ -24,18 +25,27 @@
"tpt-rev-encourage-tooltip": "عمومی ترجمہ کرنے کے لئے اس صفحے کو بحال.",
"translate-tag-translate-link-desc": "اس صفحہ کا ترجمہ",
"translate-tag-markthis": "ترجمہ کے لئے اس صفحے نشان زد کریں",
+ "tpt-translation-intro": "پیش نظر صفحہ [[$2]] کا <span class=\"plainlinks\">[$1 ترجمہ شدہ نسخہ]</span> ہے اور ترجمہ $3 فیصد مکمل ہے۔",
+ "tpt-languages-legend": "دیگر زبانیں:",
"tpt-languages-zero": "اس زبان کے لئے ترجمہ شروع",
"tpt-languages-nonzero": "$1 ($2% ترجمہ ہوا)",
- "tpt-download-page": "ترجمے کے ساتھ اس صفحے کی برآمد",
+ "tpt-tab-translate": "ترجمہ کریں",
+ "tpt-discouraged-language-reason": "وجہ: $1",
"tpt-aggregategroup-add": "شامل کریں",
"tpt-aggregategroup-save": "محفوظ کریں",
"tpt-aggregategroup-add-new": "ایک نیا میرا گروپ شامل کریں",
"tpt-aggregategroup-new-name": "نام:",
"tpt-aggregategroup-invalid-group": "گروپ موجود نہیں",
+ "tpt-aggregategroup-edit-name": "نام:",
+ "tpt-aggregategroup-edit-description": "تفصیل:",
+ "tpt-aggregategroup-update": "محفوظ کریں",
+ "tpt-aggregategroup-update-cancel": "منسوخ",
"log-name-pagetranslation": "صفحہ ترجمہ لاگ ان کریں",
+ "log-action-filter-pagetranslation-move": "منتقل کردہ صفحات",
"pt-movepage-list-pages": "منتقل کرنے کے لئے صفحات کی فہرست",
- "pt-movepage-list-translation": "ترجمہ صفحات",
- "pt-movepage-list-section": "سیکشن کے صفحات",
+ "pt-movepage-list-translation": "ترجمہ {{PLURAL:$1|صفحہ|صفحات}}",
+ "pt-movepage-list-section": "ترجمہ اکائی {{PLURAL:$1|صفحہ|صفحات}}",
+ "pt-movepage-list-other": "دیگر ذیلی {{PLURAL:$1|صفحہ|صفحات}}",
"pt-movepage-legend": "ترجمہ صفحہ منتقل",
"pt-movepage-current": "موجودہ نام:",
"pt-movepage-new": "نیا نام:",
@@ -51,5 +61,12 @@
"pt-deletepage-reason": "وجہ:",
"pt-deletepage-list-pages": "خارج کرنے کے لئے صفحات کی فہرست",
"pt-deletepage-list-translation": "ترجمہ صفحات",
- "pt-deletepage-list-section": "سیکشن کے صفحات"
+ "pt-deletepage-list-section": "اکائی کے صفحات",
+ "pt-deletepage-list-other": "دیگر ذیلی صفحات",
+ "pm-savepages-button-label": "محفوظ کریں",
+ "pm-cancel-button-label": "منسوخ",
+ "pm-page-does-not-exist": "$1 موجود نہیں ہے۔",
+ "pp-save-button-label": "محفوظ کریں",
+ "pp-cancel-button-label": "منسوخ",
+ "tpt-generic-button": "تصدیق"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/vec.json b/MLEB/Translate/i18n/pagetranslation/vec.json
index c0a28cc0..21d9686c 100644
--- a/MLEB/Translate/i18n/pagetranslation/vec.json
+++ b/MLEB/Translate/i18n/pagetranslation/vec.json
@@ -4,5 +4,6 @@
"Candalua"
]
},
- "translate-tag-translate-link-desc": "Tradusi sta pagina"
+ "translate-tag-translate-link-desc": "Tradusi sta pagina",
+ "tpt-languages-nonzero": "$1 ($2% tradota)"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/vep.json b/MLEB/Translate/i18n/pagetranslation/vep.json
index e82870d8..92a33f7b 100644
--- a/MLEB/Translate/i18n/pagetranslation/vep.json
+++ b/MLEB/Translate/i18n/pagetranslation/vep.json
@@ -6,12 +6,9 @@
},
"pagetranslation": "Lehtpoliden kändmine",
"right-pagetranslation": "Znamoita lehpoliden versijad kändmižen täht",
- "tpt-desc": "Ližaprogramm lehtpoliden südäimištod kätes.",
"tpt-section": "Kändmižühtnik $1",
"tpt-section-new": "Uz' kändmižühtnik. Nimi: $1",
"tpt-section-deleted": "Kändmižühtnik $1",
- "tpt-template": "Lehtpolen šablon",
- "tpt-templatediff": "Nece lehtpolen šablon om toižetanus.",
"tpt-diff-old": "Edeline tekst",
"tpt-diff-new": "Uz' tekst",
"tpt-submit": "Znamoita nece versii kändmižen täht.",
@@ -26,7 +23,6 @@
"translate-tag-translate-link-desc": "Käta nece lehtpol'",
"translate-tag-markthis": "Znamoita nece lehtpol' kändmižen täht.",
"tpt-languages-legend": "Toižed keled:",
- "tpt-download-page": "Eksportiruida lehtpol' kändusidenke",
"pt-movepage-list-other": "Toižed alalehtpoled",
"pt-movepage-current": "Olii nimi:",
"pt-movepage-new": "Uz' nimi:",
diff --git a/MLEB/Translate/i18n/pagetranslation/vi.json b/MLEB/Translate/i18n/pagetranslation/vi.json
index 6528b137..050a3e7b 100644
--- a/MLEB/Translate/i18n/pagetranslation/vi.json
+++ b/MLEB/Translate/i18n/pagetranslation/vi.json
@@ -9,12 +9,9 @@
"pagetranslation": "Biên dịch trang",
"right-pagetranslation": "Đánh dấu các phiên bản của trang là cần dịch",
"action-pagetranslation": "quản lý các trang dịch được",
- "tpt-desc": "Phần mở rộng để dịch trang nội dung",
"tpt-section": "Đơn vị dịch thuật $1",
"tpt-section-new": "Đơn vị dịch thuật mới.\nTên: $1",
"tpt-section-deleted": "Đơn vị dịch thuật $1",
- "tpt-template": "Mẫu trang",
- "tpt-templatediff": "Mẫu trang đã thay đổi.",
"tpt-diff-old": "Văn bản trước",
"tpt-diff-new": "Văn bản mới",
"tpt-submit": "Đánh dấu phiên bản này là cần dịch",
@@ -28,10 +25,9 @@
"tpt-notsuitable": "Trang $1 không phù hợp để dịch thuật.\nHãy đảm bảo là nó có thẻ <nowiki><translate></nowiki> và có cú pháp đúng.",
"tpt-saveok": "Trang [[:$1]] đã được đánh dấu chờ dịch với $2 đơn vị dịch thuật.\nBạn có thể <span class=\"plainlinks\">[$3 dịch]</span> trang ngay bây giờ.",
"tpt-offer-notify": "Bạn có thể <span class=\"plainlinks\">[$1 báo các biên dịch viên]</span> về trang này.",
- "tpt-badsect": "“$1” không phải là tên hợp lệ cho đơn vị dịch thuật $2.",
"tpt-showpage-intro": "Dưới đây là các đơn vị dịch thuật mới, đang tồn tại, hoặc đã bị xóa.\nTrước khi đánh dấu phiên bản này chờ dịch, hãy kiểm tra những thay đổi tại các đơn vị dịch thuật đã được thu gọn lại để tránh công việc không cần thiết cho biên dịch viên chưa.",
"tpt-mark-summary": "Đánh dấu phiên bản này là cần dịch",
- "tpt-mark-nochanges": "Không có khác biệt giữa phiên bản này và phiên bản trước được đánh dấu.",
+ "tpt-mark-nochanges": "Không có thay đổi nào để xem xét. Đánh dấu trang này để dịch sẽ không sửa đổi trang này hoặc bất kỳ mục dịch nào đang tồn tại.",
"tpt-edit-failed": "Không thể cập nhật trang: $1",
"tpt-duplicate": "Tên đơn vị dịch $1 được sử dụng hơn một lần.",
"tpt-already-marked": "Phiên bản mới nhất của trang này đã được đánh dấu cần dịch rồi.",
@@ -62,6 +58,7 @@
"translate-tag-markthisagain": "Trang này có <span class=\"plainlinks\">[$1 thay đổi]</span> từ khi nó được <span class=\"plainlinks\">[$2 đánh dấu cần dịch]</span> lần cuối.",
"translate-tag-hasnew": "Trang này có <span class=\"plainlinks\">[$1 thay đổi]</span> chưa được đánh dấu cần dịch.",
"tpt-translation-intro": "Trang này là một <span class=\"plainlinks\">[$1 bản dịch]</span> của trang [[$2]] và bản dịch đã hoàn thành $3%.",
+ "tpt-translation-intro-fuzzy": "Các bản dịch lỗi thời được đánh dấu như thế này.",
"tpt-languages-legend": "Ngôn ngữ khác:",
"tpt-languages-zero": "Bắt đầu bản dịch trong ngôn ngữ này",
"tpt-languages-nonzero": "$1 (đã biên dịch $2%)",
@@ -79,7 +76,6 @@
"tpt-discouraged-language-reason": "Lý do: $1",
"tpt-priority-languages": "Một người quản lý biên dịch đã đặt các ngôn ngữ quan trọng của nhóm này là $1.",
"tpt-render-summary": "Cập nhật đến phiên bản mới của trang nguồn",
- "tpt-download-page": "Xuất trang cùng các bản dịch",
"aggregategroups": "Nhóm tập hợp",
"tpt-aggregategroup-add": "Thêm",
"tpt-aggregategroup-save": "Lưu",
@@ -116,6 +112,15 @@
"logentry-pagetranslation-prioritylanguages-force": "$1 {{GENDER:$2}}đã giới hạn các ngôn ngữ của trang dịch được $3 ra $5",
"logentry-pagetranslation-associate": "$1 {{GENDER:$2}}đã thêm trang dịch được $3 và nhóm tập hợp $4",
"logentry-pagetranslation-dissociate": "$1 {{GENDER:$2}}đã rút trang dịch được $3 khỏi nhóm tập tin $4",
+ "log-action-filter-pagetranslation": "Kiểu tác vụ:",
+ "log-action-filter-pagetranslation-mark": "Đánh dấu cần dịch",
+ "log-action-filter-pagetranslation-unmark": "Gỡ khỏi hệ thống biên dịch",
+ "log-action-filter-pagetranslation-move": "Di chuyển trang",
+ "log-action-filter-pagetranslation-delete": "Xóa trang",
+ "log-action-filter-pagetranslation-encourage": "Khuyến khích biên dịch",
+ "log-action-filter-pagetranslation-discourage": "Phản đối biên dịch",
+ "log-action-filter-pagetranslation-prioritylanguages": "Thay đổi ngôn ngữ ưu tiên",
+ "log-action-filter-pagetranslation-aggregategroups": "Thay đổi nhóm tổng hợp",
"pt-movepage-title": "Di chuyển trang dịch được $1",
"pt-movepage-blockers": "Trang dịch được không thể được đổi tên vì {{PLURAL:$1|lỗi|các lỗi}} sau:",
"pt-movepage-block-base-exists": "Bản gốc của trang đích dịch được “[[:$1]]” tồn tại.",
@@ -143,8 +148,8 @@
"pt-movepage-logreason": "Một phần của trang dịch được $1.",
"pt-movepage-started": "Trang gốc đã được di chuyển.\nXin hãy kiểm tra những lỗi hay thông điệp kết quả thành công trong [[Special:Log/pagetranslation|nhật trình dịch trang]].",
"pt-locked-page": "Trang này bị khóa vì trang dịch được hiện đang được di chuyển.",
- "pt-deletepage-lang-title": "Đang xóa trang dịch $1.",
- "pt-deletepage-full-title": "Đang xóa trang dịch được $1.",
+ "pt-deletepage-lang-title": "Đang xóa trang dịch “$1”",
+ "pt-deletepage-full-title": "Đang xóa trang dịch được “$1”",
"pt-deletepage-invalid-title": "Trang đã chỉ định là không hợp lệ.",
"pt-deletepage-invalid-text": "Trang đã chỉ định không phải là trang dịch được mà cũng không phải là trang biên dịch.",
"pt-deletepage-action-check": "Danh sách các trang sẽ được xóa",
@@ -170,18 +175,20 @@
"pm-import-button-label": "Nhập",
"pm-savepages-button-label": "Lưu",
"pm-cancel-button-label": "Hủy bỏ",
- "pm-pagename-placeholder": "Nhập tên trang",
- "pm-langcode-placeholder": "Mã ngôn ngữ",
"pm-page-does-not-exist": "$1 không tồn tại",
"pm-old-translations-missing": "$1 không chứa các bản dịch cũ",
"pm-extra-units-warning": "Có thể còn dư một số đơn vị dịch. Xin hãy làm cho các đơn vị nguồn và dịch hợp nhau.",
"pm-pagename-missing": "Vui lòng nhập tên trang",
- "pm-langcode-missing": "Vui lòng nhập mã ngôn ngữ",
"pm-add-icon-hover-text": "Thêm một đơn vị bên dưới",
"pm-swap-icon-hover-text": "Đổi chỗ với đơn vị bên dưới",
"pm-delete-icon-hover-text": "Xóa đơn vị",
- "pm-pagetitle-invalid": "Xin vui lòng nhập một tên trang hợp lệ",
+ "pm-pagetitle-placeholder": "Nhập tên trang",
+ "pm-pagetitle-invalid": "Xin vui lòng nhập một tên trang hợp lệ. Nên sử dụng định dạng <tên-trang>/<mã-ngôn-ngữ>.",
+ "pm-pagetitle-missing": "Vui lòng nhập tên trang.",
+ "pm-langcode-missing": "Hình như tên trang thiếu mã ngôn ngữ. Xin vui lòng nhập tên trang ở dạng <tên-trang>/<mã-ngôn-ngữ>.",
"pm-summary-import": "Đã nhập bản dịch bằng cách [[Special:PageMigration|chuyển trang]]",
+ "pm-on-import-message-text": "Các bản dịch cũ đã được nhập. Sử dụng các nút thêm, đổi, và xóa để chỉnh sửa các đơn vị biên dịch và bấm nút “{{int:pm-savepages-button-label}}” để lưu chúng. Bấm nút “{{int:pm-cancel-button-label}}” để vứt bỏ.",
+ "pm-on-save-message-text": "Các đơn vị biên dịch đã được lưu. Bạn có thể điền tên của một trang dịch được để chuyển đổi nó hoặc thay đổi các đơn vị bên dưới và lưu phiên bản mới.",
"tpt-translate-title": "Cho phép dịch tên trang",
"pp-save-summary": "Đã chuẩn bị trang để dịch",
"pagepreparation": "Chuẩn bị trang để dịch",
@@ -197,5 +204,7 @@
"pp-diff-new-header": "Văn bản đã chuẩn bị",
"tpt-unlink-confirm": "Xin vui lòng xác nhận rằng bạn chắc chắn muốn gỡ trang này khỏi hệ thống biên dịch.\nChức năng chọn ngôn ngữ và các tên trang biên dịch sẽ không còn hoạt động.\nSẽ có thể sửa đổi các trang biên dịch.",
"tpt-unlink-button": "Gỡ khỏi hệ thống biên dịch",
- "tpt-unlink-summary": "Đã gỡ trang khỏi hệ thống biên dịch"
+ "tpt-unlink-summary": "Đã gỡ trang khỏi hệ thống biên dịch",
+ "tpt-generic-confirm": "Vui lòng xác nhận tác vụ này.",
+ "tpt-generic-button": "Xác nhận"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/wuu.json b/MLEB/Translate/i18n/pagetranslation/wuu.json
index 3d45cea0..0b14e981 100644
--- a/MLEB/Translate/i18n/pagetranslation/wuu.json
+++ b/MLEB/Translate/i18n/pagetranslation/wuu.json
@@ -1,4 +1,9 @@
{
- "@metadata": [],
+ "@metadata": {
+ "authors": [
+ "Poiuyt"
+ ]
+ },
+ "tpt-languages-nonzero": "$1($2%翻译脱)",
"pt-movepage-reason": "理由:"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/yi.json b/MLEB/Translate/i18n/pagetranslation/yi.json
index 51017314..da6697fa 100644
--- a/MLEB/Translate/i18n/pagetranslation/yi.json
+++ b/MLEB/Translate/i18n/pagetranslation/yi.json
@@ -9,12 +9,9 @@
"pagetranslation": "בלאט טײַטש",
"right-pagetranslation": "מארקירן ווערסיעס פון בלעטער פאר איבערזעצונג",
"action-pagetranslation": "פֿארוואלטן איבערזעצבאַרע בלעטער",
- "tpt-desc": "פארברייטערונג פאר איבערזעצן אינהאלט בלעטער",
"tpt-section": "איבערזעצונג איינהייט $1",
"tpt-section-new": "נײַע איבערזעצונג איינהייט.\nנאמען: $1",
"tpt-section-deleted": "איבערזעצונג איינהייט $1",
- "tpt-template": "בלאט מוסטער",
- "tpt-templatediff": "דער בלאט מוסטער האט זיך געענדערט.",
"tpt-diff-old": "פֿריערדיגער טעקסט",
"tpt-diff-new": "נײַער טעקסט",
"tpt-submit": "מארקירן די ווערסיע פאר איבערזעצונג",
@@ -27,7 +24,7 @@
"tpt-oldrevision": "$2 איז נישט די לעצטע ווערסיע פונעם בלאט [[:$1]].\nנאר לעצטע ווערסיעס קען מען מארקירן פאר איבערזעצונג.",
"tpt-notsuitable": "בלאט $1 פאסט נישט איבערצוזעצן.\nפארזיכערט אז ער האט <nowiki><translate></nowiki> טאַגן און האט א גילטיקן סינטאקס.",
"tpt-saveok": "דער בלאט [[:$1]] איז געווארן מארקירט פאר איבערזעצן מיט $2 {{PLURAL:$2|איבערזעצונג אפשניט|איבערזעצונג אפשניטן}}.\nדער בלאט קען מען אצינד <span class=\"plainlinks\">[$3 איבערזעצן]</span>.",
- "tpt-badsect": "\"$1\" איז נישט קיין גילטיקער נאמען פאר איבערזעצונג איינהייט $2.",
+ "tpt-offer-notify": "איר קענט <span class=\"plainlinks\">[$1 מודיע זיין איבערזעצער]</span> וועגן דעם בלאט.",
"tpt-mark-summary": "מארקירט די ווערסיע פאר איבערזעצונג",
"tpt-edit-failed": "האט נישט געקענט דערהיינטיקן דעם בלאט: $1",
"tpt-duplicate": "איבערזעצונג אפשניט נאמען $1 געניצט מער ווי איין מאל.",
@@ -39,19 +36,23 @@
"tpt-other-pages-title": "צעבראכענע בלעטער",
"tpt-discouraged-pages-title": "צוריקגעצויגענע בלעטער",
"tpt-old-pages": "א ווערסיע פון {{PLURAL:$1|דעם בלאט איז|די בלעטער זענען}} געווארן מארקירט פאר איבערזעצונג.",
+ "tpt-select-prioritylangs-force": "פֿארמיידן איבערזעצונגען צו שפראכן אחוץ די פריאריטעט־שפראכן",
"tpt-select-prioritylangs-reason": "אורזאַך:",
"tpt-sections-prioritylangs": "פריאריזירטע שפראכן",
"tpt-rev-mark": "מארקירן פאר איבערזעצונג",
"tpt-rev-unmark": "אוועקנעמען פון איבערזעצונג",
+ "tpt-rev-discourage": "אפמוטיקן",
"tpt-rev-encourage": "אויפֿריכטן",
"tpt-rev-mark-tooltip": "מארקירן די לעצטע ווערזיע פון דעם בלאט פאר איבערזעצן.",
"tpt-rev-unmark-tooltip": "אוועקנעמען דעם בלאט פון איבערזעצן.",
+ "tpt-rev-discourage-tooltip": "אפמוטיקן נאך איבערזעצונגען אויף דעם בלאט.",
"tpt-rev-encourage-tooltip": "שטעלט צוריק דעם בלאט פאר נארמאלער איבערזעצונג.",
"translate-tag-translate-link-desc": "פֿאַרטײַטשט דעם בלאַט",
"translate-tag-markthis": "מארקירן דעם בלאט פאר איבערזעצונג",
"translate-tag-markthisagain": "דער בלאַט האט <span class=\"plainlinks\">[ $1 ענדערונגען]</span> זינט ער איז לעצט געווארן <span class=\"plainlinks\">[ $2 אנגעצייכנט פֿאַר איבערזעצונג].</span>",
"translate-tag-hasnew": "דער בלאַט אַנטהאַלט <span class=\"plainlinks\">[ $1 ענדערונגען]</span> וואָס זענען נישט אנגעצייכנט פֿאַר איבערזעצונג.",
"tpt-translation-intro": "דער דאזיקער בלאט איז א <span class=\"plainlinks\">[$1 איבערגעזעצטע ווערסיע]</span> פון דעם בלאט [[$2]] און די איבערזעצונג איז $3% פארענדיקט.",
+ "tpt-translation-intro-fuzzy": "פארעלטערטע איבערזעצונגען זענען מארקירט אזוי.",
"tpt-languages-legend": "אנדערע שפראַכן:",
"tpt-languages-zero": "אנהייבן איבערזעצן די דאזיקע שפראך",
"tpt-languages-nonzero": "$1 ($2% איבערגעזעצט)",
@@ -59,8 +60,8 @@
"tpt-target-page": "מען קען נישט דערהיינטיקן דעם בלאט מאנועל.\nדער בלאט איז אן איבערזעצונג פונעם בלאט [[$1]] און מען קען דערהיינטיקן די איבערזעצונג מיט די [$2 איבערזעצונג געצייג].",
"tpt-discouraged-language-force-header": "מען קען נישט איבערזעצן דעם בלאט אויף $1.",
"tpt-discouraged-language-force-content": "אן איבערזעצונג־אדמיניסטראטאר האט באשלאסן אז דער בלעט קען מען איבערזעצן נאר אויף $1.",
+ "tpt-discouraged-language-header": "איבערזעצן אויף $1 איז נישט קיין פריאריטעט פאר דעם בלאט.",
"tpt-discouraged-language-reason": "אורזאך: $1",
- "tpt-download-page": "עקספארטירן בלאט מיט איבערזעצונגען",
"tpt-aggregategroup-add": "צולייגן",
"tpt-aggregategroup-save": "אויפֿהיטן",
"tpt-aggregategroup-new-name": "נאָמען:",
@@ -71,14 +72,21 @@
"tpt-aggregategroup-edit-description": "באַשרײַבונג:",
"tpt-aggregategroup-update": "אויפֿהיטן",
"tpt-aggregategroup-update-cancel": "אַנולירן",
+ "tpt-invalid-group": "אומגילטיגע גרופע",
"log-name-pagetranslation": "בלאט איבערזעצונג לאגבוך",
"logentry-pagetranslation-mark": "$1 {{GENDER:$2|מארקירט}} $3 איבערצוזעצן",
"logentry-pagetranslation-unmark": "$1 {{GENDER:$2|אראפגענומען}} $3 פון איבערזעצן",
+ "logentry-pagetranslation-deletefok": "$1 {{GENDER:$2|האט געקאנטשעט}} אויסמעקן איבערזעצבארן בלאט $3",
+ "logentry-pagetranslation-prioritylanguages-unset": "$1 {{GENDER:$2|האט אוועקגענומען}} פריאריטעט שפראכן פון איבערזעצבארן בלאט $3",
+ "log-action-filter-pagetranslation-mark": "מארקירן פאר איבערזעצונג",
"pt-movepage-title": "באוועגן איבערזעצבארן בלאט \"$1\"",
"pt-movepage-block-base-exists": "דער איבערזעצבאר צילבלאט \"[[:$1]]\" עקזיסטירט.",
"pt-movepage-block-base-invalid": "דער נאמען פונעם איבערזעצבארן צילבלאט איז נישט קיין גילטיקער טיטל.",
"pt-movepage-block-tp-exists": "דער ציל אונטערבלאט \"[[:$2]]\" עקזיסטירט.",
+ "pt-movepage-block-tp-invalid": "דער ציל איבערזעצונג בלאט טיטל פֿאר \"[[:$1]]\" וואלט געווען אומגילטיק (צו לאנג?).",
+ "pt-movepage-block-section-exists": "דער ציל בלאט \"[[:$2]]\" פארן איבערזעצונג־איינהייט עקזיסטירט.",
"pt-movepage-block-subpage-exists": "דער ציל אונטערבלאט \"[[:$2]]\" עקזיסטירט.",
+ "pt-movepage-block-subpage-invalid": "דער ציל אונטערבלאט טיטל פֿאר \"[[:$1]]\" וואלט געווען אומגילטיק (צו לאנג?).",
"pt-movepage-list-pages": "רשימה פון בלעטער צו באַוועגן",
"pt-movepage-list-translation": "טײַטש {{PLURAL:$1|בלאַט|בלעטער}}",
"pt-movepage-list-section": "איבערזעצונג איינהייט {{PLURAL:$1|בלאַט|בלעטער}}",
@@ -92,9 +100,9 @@
"pt-movepage-action-check": "קאנטראלירט צי די באוועגונג איז מעגלעך",
"pt-movepage-action-perform": "פֿירט אויס די באוועגונג",
"pt-movepage-action-other": "ענדערט ציל",
- "pt-movepage-logreason": "טייל פון איבערזעצבארן בלאט \"$1\".",
- "pt-deletepage-lang-title": "אויסמעקן איבערזעצונג בלאט \"$1\".",
- "pt-deletepage-full-title": "אויסמעקן איבערזעצבארן בלאט \"$1\".",
+ "pt-movepage-logreason": "טייל פון איבערזעצבארן בלאט \"$1\"",
+ "pt-deletepage-lang-title": "אויסמעקן איבערזעצונג בלאט \"$1\"",
+ "pt-deletepage-full-title": "אויסמעקן איבערזעצבארן בלאט \"$1\"",
"pt-deletepage-invalid-title": "דער ספעציפירטער בלאט איז נישט גילטיק.",
"pt-deletepage-action-check": "מאכט א רשימה פון בלעטער צו ווערן אויסגעמעקט",
"pt-deletepage-action-perform": "אויספירן אויסמעקונג",
@@ -110,17 +118,21 @@
"pt-deletepage-list-section": "איבערזעצונג איינהייט בלעטער",
"pt-deletepage-list-other": "אנדערע אונטערבלעטער",
"pt-deletepage-list-count": "אינגאנצן $1 {{PLURAL:$1|בלאט|בלעטער}} אויסצומעקן.",
- "pt-deletepage-full-logreason": "טייל פון איבערזעצבארן בלאט $1.",
- "pt-deletepage-lang-logreason": "טייל פון איבערזעצונג בלאט $1.",
+ "pt-deletepage-full-logreason": "טייל פון איבערזעצבארן בלאט ״$1״.",
+ "pt-deletepage-lang-logreason": "טייל פון איבערזעצונג בלאט \"$1\".",
+ "pagemigration": "איבערזעצונג בלאט מיגראציע",
"pm-import-button-label": "אימפארטירן",
"pm-savepages-button-label": "אויפֿהיטן",
"pm-cancel-button-label": "אַנולירן",
- "pm-langcode-placeholder": "שפראַך קאד",
"pm-page-does-not-exist": "$1 עקזיסטירט נישט",
"pm-old-translations-missing": "$1 אנטהאלט נישט קיין אלטע איבערזעצונגען",
"pm-delete-icon-hover-text": "אויסמעקן איינס",
+ "pm-langcode-missing": "װײזט אױס אַז דער שפראַכקאד פֿעלט אין קעפל. ביטע איינגעבן בלאַטקעפל אין פֿארמאַט <בלאַטנאָמען>/<שפראַכקאד>.",
+ "pagepreparation": "צוגרייטן בלאט פאר איבערזעצונג",
"pp-pagename-placeholder": "אײַנגעבן בלאטנאמען",
+ "pp-prepare-button-label": "צוגרייטן",
"pp-save-button-label": "אויפֿהיטן",
"pp-cancel-button-label": "אַנולירן",
- "pp-diff-old-header": "קוואל־טעקסט"
+ "pp-diff-old-header": "קוואל־טעקסט",
+ "tpt-generic-button": "באַשטעטיקן"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/zh-hans.json b/MLEB/Translate/i18n/pagetranslation/zh-hans.json
index 4443ec26..681d375d 100644
--- a/MLEB/Translate/i18n/pagetranslation/zh-hans.json
+++ b/MLEB/Translate/i18n/pagetranslation/zh-hans.json
@@ -27,12 +27,9 @@
"pagetranslation": "页面翻译",
"right-pagetranslation": "标记翻译的页面版本",
"action-pagetranslation": "管理可翻译页面",
- "tpt-desc": "用于翻译内容页面的扩展程序",
"tpt-section": "翻译单元$1",
"tpt-section-new": "新翻译单元。\n名字:$1",
"tpt-section-deleted": "翻译单元$1",
- "tpt-template": "页面模板",
- "tpt-templatediff": "页面模板已改变。",
"tpt-diff-old": "上一版本文字",
"tpt-diff-new": "下一版本文字",
"tpt-submit": "标记此版本进行翻译",
@@ -43,13 +40,12 @@
"tpt-badtitle": "页面名称 ($1) 不是一个有效的标题",
"tpt-nosuchpage": "页面$1 不存在。",
"tpt-oldrevision": "$2 不是页面 [[:$1]] 的最新版本。只有最新版本可以标记进行翻译。",
- "tpt-notsuitable": "页$1不适合翻译。\n请确保它具有 <nowiki><translate></nowiki> 标记,并具有有效的语法。",
- "tpt-saveok": "页面[[:$1]]已被标记将进行翻译,一共$2个翻译单位。\n本页面现已可以<span class=\"plainlinks\">[$3 翻译]</span>。",
+ "tpt-notsuitable": "页面$1不适合翻译。请确保它具有<nowiki><translate></nowiki>标签,并具有有效的语法。",
+ "tpt-saveok": "页面[[:$1]]已被标记将进行翻译,一共$2个翻译单位。本页面现已可以<span class=\"plainlinks\">[$3 翻译]</span>。",
"tpt-offer-notify": "您可以<span class=\"plainlinks\">[$1 通告关于此页面的翻译]</span>。",
- "tpt-badsect": "“$1”对于$2翻译单位不是有效的名称。",
- "tpt-showpage-intro": "以下列出新创、现存及已删除的翻译单元。\n将此版本标记进行翻译之前,请检查来确定该部分极少受修改,以便翻译员避免得到多余的工作。",
+ "tpt-showpage-intro": "以下列出新创、现存及已删除的翻译单元。将此版本标记进行翻译之前,请检查来确定该部分极少受修改,以便翻译员避免得到多余的工作。",
"tpt-mark-summary": "此版本已被标记将进行翻译",
- "tpt-mark-nochanges": "此修订和最近标记的修订之间没有差异。",
+ "tpt-mark-nochanges": "没有要复核的更改。将此页面标记翻译将既不会编辑页面,又不会编辑任何现有翻译单元。",
"tpt-edit-failed": "无法更新该页面:$1",
"tpt-duplicate": "翻译单位名称$1已被使用超过一次。",
"tpt-already-marked": "此页面的最新版本已经已标记进行翻译。",
@@ -72,21 +68,22 @@
"tpt-rev-discourage": "不建议",
"tpt-rev-encourage": "恢复",
"tpt-rev-mark-tooltip": "标记本页的最新版本进行翻译。",
- "tpt-rev-unmark-tooltip": "从翻译中删除此页。",
+ "tpt-rev-unmark-tooltip": "从翻译中移除此页面。",
"tpt-rev-discourage-tooltip": "不要再进一步翻译此页。",
"tpt-rev-encourage-tooltip": "将此页面恢复正常翻译模式。",
"translate-tag-translate-link-desc": "翻译本页",
- "translate-tag-markthis": "标记此页面将进行翻译",
- "translate-tag-markthisagain": "此页面最近被<span class=\"plainlinks\">[$2 标记(点击可进行导入)]</span>进行翻译以来,已经过一些<span class=\"plainlinks\">[$1 更改]</span>。",
+ "translate-tag-markthis": "标记此页面以备翻译",
+ "translate-tag-markthisagain": "此页面自从最近被<span class=\"plainlinks\">[$2 标记翻译]</span>以来已有<span class=\"plainlinks\">[$1 更改]</span>。",
"translate-tag-hasnew": "此页面有未被标记进行翻译的<span class=\"plainlinks\">[$1 更改]</span>。",
"tpt-translation-intro": "本页是页面[[$2]]的<span class=\"plainlinks\">[$1 翻译版本]</span>,翻译工作已完成$3%。",
+ "tpt-translation-intro-fuzzy": "已过时的翻译就会像这样标记。",
"tpt-languages-legend": "其他语言:",
"tpt-languages-zero": "开始这种语言的翻译",
"tpt-languages-nonzero": "$1($2%已翻译)",
"tpt-tab-translate": "翻译",
- "tpt-target-page": "本页面无法手动更新。\n本页面是[[$1]]页面的翻译版,可以使用[$2 翻译工具]来更新该翻译。",
+ "tpt-target-page": "本页面无法手动更新。本页面是[[$1]]页面的翻译版,可以使用[$2 翻译工具]来更新该翻译。",
"tpt-patrolling-blocked": "此页面不能被巡查。请使用翻译操作复核它。",
- "tpt-unknown-page": "此命名空间是保留给内容页面翻译。\n您尝试编辑的页面似乎没有对应任何被标记进行翻译的页面。",
+ "tpt-unknown-page": "此名字空间是保留给内容页面翻译。您尝试编辑的页面似乎没有对应任何被标记进行翻译的页面。",
"tpt-translation-restricted": "此页面到这种语言的翻译,已被翻译管理员禁止。\n\n原因:$1",
"tpt-discouraged-language-force-header": "此页面不能翻译成$1。",
"tpt-discouraged-language-force-content": "翻译管理员决定此页面只能翻译成$1。",
@@ -97,7 +94,6 @@
"tpt-discouraged-language-reason": "原因:$1",
"tpt-priority-languages": "翻译管理员已将该组需优先翻译的语言设为$1。",
"tpt-render-summary": "更新以匹配源页面内容的新版本",
- "tpt-download-page": "汇出含翻译的页面",
"aggregategroups": "聚合组",
"tpt-aggregategroup-add": "添加",
"tpt-aggregategroup-save": "保存",
@@ -113,9 +109,9 @@
"tpt-invalid-group": "无效组",
"pt-parse-open": "&lt;translate>标签不平衡。\n翻译模板:<pre>$1</pre>",
"pt-parse-close": "&lt;/translate>标签不平衡。\n翻译模板:<pre>$1</pre>",
- "pt-parse-nested": "不允许嵌套&lt;translate>翻译单元。\n标签文本:$1",
- "pt-shake-multiple": "单一翻译单元含多个翻译单元标记。\n翻译单元文本:<pre>$1</pre>",
- "pt-shake-position": "翻译单元标记在意外位置。\n翻译单元文本:<pre>$1</pre>",
+ "pt-parse-nested": "不允许嵌套&lt;translate>翻译单元。\n标签文本:<pre>$1</pre>",
+ "pt-shake-multiple": "单一翻译单元含多个翻译单元标记。翻译单元文本:<pre>$1</pre>",
+ "pt-shake-position": "翻译单元标记在意外位置。翻译单元文本:<pre>$1</pre>",
"pt-shake-empty": "为“$1”的翻译单位标记是空的。",
"log-description-pagetranslation": "页面翻译系统的对应活动日志",
"log-name-pagetranslation": "页面翻译日志",
@@ -134,7 +130,16 @@
"logentry-pagetranslation-prioritylanguages-force": "$1认为$3到$5对此翻译页面的贡献{{GENDER:$2|很有限}}",
"logentry-pagetranslation-associate": "$1{{GENDER:$2|添加}}了翻译页面$3至信息组$4",
"logentry-pagetranslation-dissociate": "$1已在信息组$4的翻译页面$3中{{GENDER:$2|移除}}",
- "pt-movepage-title": "移动可翻译页面$1",
+ "log-action-filter-pagetranslation": "操作类型:",
+ "log-action-filter-pagetranslation-mark": "标记进行翻译",
+ "log-action-filter-pagetranslation-unmark": "从翻译中移除",
+ "log-action-filter-pagetranslation-move": "页面移动",
+ "log-action-filter-pagetranslation-delete": "页面删除",
+ "log-action-filter-pagetranslation-encourage": "翻译鼓励",
+ "log-action-filter-pagetranslation-discourage": "翻译劝阻",
+ "log-action-filter-pagetranslation-prioritylanguages": "首选语言修改",
+ "log-action-filter-pagetranslation-aggregategroups": "聚合组修改",
+ "pt-movepage-title": "移动可翻译页面“$1”",
"pt-movepage-blockers": "可翻译页面因下列$1错误无法移动至新名称:",
"pt-movepage-block-base-exists": "可翻译的目标页面“[[:$1]]”已存在。",
"pt-movepage-block-base-invalid": "可翻译的目标页面名称不是一个有效标题。",
@@ -157,12 +162,12 @@
"pt-movepage-action-check": "检查是否可以移动",
"pt-movepage-action-perform": "确认移动",
"pt-movepage-action-other": "更改目标",
- "pt-movepage-intro": "本特殊页面允许您移动被标记进行翻译的页面。\n此移动操作将不会一瞬间,因为有很多页面要移动。\n当页面移动中,不能与该页面交互。\n任何移动失败将在[[Special:Log/pagetranslation|页面翻译日志]]记录,并且需要手动修理。",
- "pt-movepage-logreason": "可翻译页面“$1”的一部分。",
- "pt-movepage-started": "基页面现已移动。\n请检查[[Special:Log/pagetranslation|页面翻译日志]]内的错误和完成消息。",
+ "pt-movepage-intro": "本特殊页面允许您移动被标记进行翻译的页面。此移动操作将不会一瞬间,因为有很多页面要移动。当页面移动中,不能与该页面交互。任何移动失败将在[[Special:Log/pagetranslation|页面翻译日志]]记录,并且需要手动修理。",
+ "pt-movepage-logreason": "可翻译页面“$1”的一部分",
+ "pt-movepage-started": "请过段时间后检查[[Special:Log/pagetranslation|页面翻译日志]]内的错误和完成消息。",
"pt-locked-page": "此页面已被锁定,因为可翻译页面正在被移动。",
- "pt-deletepage-lang-title": "删除翻译页面“$1”。",
- "pt-deletepage-full-title": "删除可翻译页面“$1”。",
+ "pt-deletepage-lang-title": "正在删除翻译页面“$1”。",
+ "pt-deletepage-full-title": "正在删除可翻译页面“$1”。",
"pt-deletepage-invalid-title": "指定的页不是有效的。",
"pt-deletepage-invalid-text": "指定的页面不是一个可翻译页面或一个翻译信息页面。",
"pt-deletepage-action-check": "要删除的列表页",
@@ -170,7 +175,7 @@
"pt-deletepage-action-other": "更改目标",
"pt-deletepage-lang-legend": "删除翻译页面",
"pt-deletepage-full-legend": "删除可翻译页面",
- "pt-deletepage-any-legend": "删除可翻译的页面或翻译信息的页面",
+ "pt-deletepage-any-legend": "删除可翻译页面或翻译页面",
"pt-deletepage-current": "页面名称:",
"pt-deletepage-reason": "原因:",
"pt-deletepage-subpages": "删除所有子页面",
@@ -179,8 +184,8 @@
"pt-deletepage-list-section": "翻译单元页面",
"pt-deletepage-list-other": "其他子页面",
"pt-deletepage-list-count": "共删除$1个页面。",
- "pt-deletepage-full-logreason": "翻译页面$1的一部分。",
- "pt-deletepage-lang-logreason": "翻译页面$1的一部分。",
+ "pt-deletepage-full-logreason": "可翻译页面“$1”的一部分",
+ "pt-deletepage-lang-logreason": "翻译页面“$1”的一部分",
"pt-deletepage-started": "请检查[[Special:Log/pagetranslation|页面翻译日志]]内的错误和完成消息。",
"pt-deletepage-intro": "本特殊页面允许您删除一种语言中一整个可翻译页面或单个翻译页面。\n因为所有相关页会一并删除,此操作不会即时完成。\n失败操作记录于[[Special:Log/pagetranslation|页面翻译日志]]中并且需要手动修理。",
"pagemigration": "翻译页面迁移",
@@ -188,18 +193,20 @@
"pm-import-button-label": "导入",
"pm-savepages-button-label": "保存",
"pm-cancel-button-label": "取消",
- "pm-pagename-placeholder": "输入页面名称",
- "pm-langcode-placeholder": "语言代码",
"pm-page-does-not-exist": "$1不存在",
"pm-old-translations-missing": "$1没有旧翻译",
"pm-extra-units-warning": "提供的单位可能有误。请正确匹配翻译单位和源单位。",
"pm-pagename-missing": "请输入页面名称",
- "pm-langcode-missing": "请输入语言代码",
"pm-add-icon-hover-text": "往下面添加单位",
"pm-swap-icon-hover-text": "和下面的单位替换",
"pm-delete-icon-hover-text": "删除单位",
- "pm-pagetitle-invalid": "请输入一个有效的页面标题",
+ "pm-pagetitle-placeholder": "输入页面标题",
+ "pm-pagetitle-invalid": "请输入一个有效的页面标题。格式应为<page-name>/<language-code>。",
+ "pm-pagetitle-missing": "请输入页面标题。",
+ "pm-langcode-missing": "看起来标题缺少语言代码。请依格式<page-name>/<language-code>输入页面标题。",
"pm-summary-import": "已通过[[Special:PageMigration|页面迁移]]导入翻译",
+ "pm-on-import-message-text": "旧翻译已被导入。使用添加、交换和删除选项以调整翻译单元,并点击“{{int:pm-savepages-button-label}}”按钮添加它们。点击“{{int:pm-cancel-button-label}}”按钮丢弃。",
+ "pm-on-save-message-text": "翻译单元以保存。您现在可以输入新翻译页面的标题以迁移它,或在下方对单元做出更改并保存新版本。",
"tpt-translate-title": "允许页面标题的翻译",
"pp-save-summary": "准备翻译的页面",
"pagepreparation": "准备翻译的页面",
@@ -215,5 +222,7 @@
"pp-diff-new-header": "准备好的文本",
"tpt-unlink-confirm": "请确认您真的希望从翻译系统移除此页面。语言选择器和翻译页面名将停止工作。翻译页面将可编辑。",
"tpt-unlink-button": "从翻译中移除",
- "tpt-unlink-summary": "从翻译中移除页面"
+ "tpt-unlink-summary": "从翻译中移除页面",
+ "tpt-generic-confirm": "请确认操作。",
+ "tpt-generic-button": "确认"
}
diff --git a/MLEB/Translate/i18n/pagetranslation/zh-hant.json b/MLEB/Translate/i18n/pagetranslation/zh-hant.json
index 30b4e380..bcd78a7e 100644
--- a/MLEB/Translate/i18n/pagetranslation/zh-hant.json
+++ b/MLEB/Translate/i18n/pagetranslation/zh-hant.json
@@ -10,70 +10,74 @@
"Waihorace",
"Wrightbus",
"Liuxinyu970226",
- "LNDDYL"
+ "LNDDYL",
+ "Zhxy 519",
+ "Bowleerin",
+ "Alexsh",
+ "Wwycheuk",
+ "Kly"
]
},
"pagetranslation": "頁面翻譯",
- "right-pagetranslation": "標記用來翻譯的頁面版本",
+ "right-pagetranslation": "標記需要翻譯的頁面版本",
"action-pagetranslation": "管理可翻譯頁面",
- "tpt-desc": "用來翻譯內容頁面的擴充套件",
"tpt-section": "翻譯單元 $1",
"tpt-section-new": "新翻譯單元。\n名稱:$1",
"tpt-section-deleted": "翻譯單元 $1",
- "tpt-template": "頁面模板",
- "tpt-templatediff": "已變更頁面模板。",
"tpt-diff-old": "上個文字",
"tpt-diff-new": "新的文字",
- "tpt-submit": "標記此版本用來翻譯",
+ "tpt-submit": "標記此版本需要翻譯",
"tpt-sections-oldnew": "新的和現有的翻譯單元",
"tpt-sections-deleted": "已刪除的翻譯單元",
"tpt-sections-template": "翻譯頁面模板",
"tpt-action-nofuzzy": "不要作廢翻譯",
"tpt-badtitle": "頁面名稱 ($1) 不是一個有效的標題",
"tpt-nosuchpage": "頁面 $1 不存在。",
- "tpt-oldrevision": "$2 不是頁面 [[:$1]] 的最新版本。\n僅可標記最新版本的頁面用來翻譯。",
+ "tpt-oldrevision": "$2 不是頁面 [[:$1]] 的最新版本。\n僅可標記最新版本的頁面需要翻譯。",
"tpt-notsuitable": "頁面 $1 不適合翻譯。\n請確定該頁面擁有 <nowiki><translate></nowiki> 標籤,且使用有效的語法。",
- "tpt-saveok": "頁面 [[:$1]] 已被標記做為翻譯使用,包含 $2 個翻譯單元。\n現在已可 <span class=\"plainlinks\">[$3 翻譯]</span> 頁面。",
+ "tpt-saveok": "頁面 [[:$1]] 已被標記需要翻譯,包含 $2 個翻譯單元。\n現在已可 <span class=\"plainlinks\">[$3 翻譯]</span> 頁面。",
"tpt-offer-notify": "您可以 <span class=\"plainlinks\">[$1 通知翻譯人員]</span> 翻譯此頁。",
- "tpt-badsect": "翻譯單位 $2 的名稱 \"$1\" 無效。",
- "tpt-showpage-intro": "下列為新的,已存在與已刪除的翻譯單元。\n在將此版本標記為可翻譯之前,請先檢查翻譯單位已最小化,避免翻譯人員不必要的作業。",
+ "tpt-showpage-intro": "下列為新的,已存在與已刪除的翻譯單元。\n在將此版本標記為需要翻譯之前,請先檢查翻譯單元已最小化,避免翻譯人員不必要的作業。",
"tpt-mark-summary": "已標記此版本用來翻譯",
+ "tpt-mark-nochanges": "沒有變更需要審查。標記此頁面需要翻譯不會編輯頁面,也沒有任何現有的翻譯單元。",
"tpt-edit-failed": "無法更新該頁面:$1",
"tpt-duplicate": "翻譯單元名稱 $1 已被使用超過一次。",
- "tpt-already-marked": "此頁面的最新版本已標記用來翻譯。",
+ "tpt-already-marked": "此頁面的最新版本已標記需要翻譯。",
"tpt-unmarked": "頁面 $1 已不標記用來翻譯。",
- "tpt-list-nopages": "沒有頁面已標記要用來翻譯或準備要標記用來翻譯。",
+ "tpt-list-nopages": "沒有頁面已標記需要翻譯或等待標記需要翻譯。",
"tpt-new-pages-title": "建議翻譯的頁面",
"tpt-old-pages-title": "正在翻譯的頁面",
"tpt-other-pages-title": "損壞的頁面",
"tpt-discouraged-pages-title": "不建議的頁面",
- "tpt-new-pages": "下列{{PLURAL:$1|頁面|頁面}}內容包含可翻譯的標籤,\n但目前尚未標記用來翻譯的{{PLURAL:$1|頁面|頁面}}版本。",
+ "tpt-new-pages": "下列{{PLURAL:$1|頁面|頁面}}內容包含需要翻譯的標籤,\n但{{PLURAL:$1|頁面|頁面}}中目前沒有任何標記需要翻譯的版本。",
"tpt-old-pages": "以下{{PLURAL:$1|頁面|頁面}}已有標記用來翻譯的版本。",
- "tpt-other-pages": "下列頁面已標記用來翻譯的{{PLURAL:$1|版本|版本}}為舊版,\n最新的{{PLURAL:$1|版本|版本}}無法標記用來翻譯。",
+ "tpt-other-pages": "下列頁面已標記需要翻譯的{{PLURAL:$1|版本|版本}}為舊版,\n最新的{{PLURAL:$1|版本|版本}}無法標記用來翻譯。",
"tpt-discouraged-pages": "以下{{PLURAL:$1|頁面|頁面}}已不建議用來翻譯。",
"tpt-select-prioritylangs": "優先語言代碼 (以逗號分隔):",
"tpt-select-prioritylangs-force": "防止翻譯成優先語言以外的語言",
"tpt-select-prioritylangs-reason": "原因:",
"tpt-sections-prioritylangs": "優先語言",
- "tpt-rev-mark": "標記用來翻譯",
+ "tpt-rev-mark": "標記需要翻譯",
"tpt-rev-unmark": "從翻譯中刪除",
"tpt-rev-discourage": "不建議",
"tpt-rev-encourage": "還原",
- "tpt-rev-mark-tooltip": "標記此頁面的最新版本用來翻譯。",
+ "tpt-rev-mark-tooltip": "標記此頁面的最新版本需要翻譯。",
"tpt-rev-unmark-tooltip": "從翻譯中刪除此頁面。",
"tpt-rev-discourage-tooltip": "不建議翻譯此頁面。",
"tpt-rev-encourage-tooltip": "還原此頁面為一般翻譯。",
- "translate-tag-translate-link-desc": "翻譯此本頁",
- "translate-tag-markthis": "標記此頁面用來翻譯",
- "translate-tag-markthisagain": "此頁面在 <span class=\"plainlinks\">[$2 標記用來翻譯]</span> 之後,已有 <span class=\"plainlinks\">[$1 變更]</span>。",
+ "translate-tag-translate-link-desc": "翻譯此頁面",
+ "translate-tag-markthis": "標記此頁面需要翻譯",
+ "translate-tag-markthisagain": "此頁面在 <span class=\"plainlinks\">[$2 標記需要翻譯]</span> 之後,已有 <span class=\"plainlinks\">[$1 變更]</span>。",
"translate-tag-hasnew": "此頁面包含未被標記用來翻譯的 <span class=\"plainlinks\">[$1 變更]</span>。",
"tpt-translation-intro": "此頁面為頁面 [[$2]] <span class=\"plainlinks\">[$1 翻譯後的版本]</span> 且翻譯完成進度為 $3%。",
+ "tpt-translation-intro-fuzzy": "已過時的翻譯標記為這樣。",
"tpt-languages-legend": "其他語言:",
"tpt-languages-zero": "開始翻譯此語言",
"tpt-languages-nonzero": "$1 ($2% 未翻譯)",
"tpt-tab-translate": "翻譯",
"tpt-target-page": "此頁面無法手動更新。\n此頁面是頁面 [[$1]] 的翻譯版本,翻譯可使用 [$2 翻譯工具] 更新。",
- "tpt-unknown-page": "此命名空間是保留給內容頁面翻譯使用。\n您嘗試編輯的頁面似乎與任何被標記進行翻譯的頁面沒有關連。",
+ "tpt-patrolling-blocked": "此頁面無法被巡查,但可使用翻譯動作審查。",
+ "tpt-unknown-page": "此命名空間是保留給內容頁面翻譯使用。\n您嘗試編輯的頁面似乎未被標記需要翻譯。",
"tpt-translation-restricted": "翻譯此頁面為此語言已被翻譯管理員禁止。\n\n原因:$1",
"tpt-discouraged-language-force-header": "此頁面無法翻譯為 $1。",
"tpt-discouraged-language-force-content": "翻譯管理員決定只將此頁面翻譯為 $1。",
@@ -84,7 +88,6 @@
"tpt-discouraged-language-reason": "原因:$1",
"tpt-priority-languages": "翻譯管理員已將此群組的優先語言設為 $1。",
"tpt-render-summary": "正在更新來源頁面以與新版本相符",
- "tpt-download-page": "匯出頁面含翻譯",
"aggregategroups": "集合群組",
"tpt-aggregategroup-add": "新增",
"tpt-aggregategroup-save": "儲存",
@@ -98,16 +101,16 @@
"tpt-aggregategroup-update": "儲存",
"tpt-aggregategroup-update-cancel": "取消",
"tpt-invalid-group": "無效的群組",
- "pt-parse-open": "&lt;translate> 標籤不對稱。\n翻譯樣板:<pre>$1</pre>",
- "pt-parse-close": "&lt;/translate> 標籤不對稱。\n翻譯樣板:<pre>$1</pre>",
+ "pt-parse-open": "&lt;translate> 標籤不對稱。\n翻譯模板:<pre>$1</pre>",
+ "pt-parse-close": "&lt;/translate> 標籤不對稱。\n翻譯模板:<pre>$1</pre>",
"pt-parse-nested": "不允許巢狀 &lt;translate> 翻譯單元。\n標籤內容:<pre>$1</pre>",
"pt-shake-multiple": "一個翻譯單元中含多個翻譯單元標記。\n翻譯單元內容:<pre>$1</pre>",
"pt-shake-position": "翻譯單元標記在預期之外的位置。\n翻譯單元內容:<pre>$1</pre>",
"pt-shake-empty": "空的翻譯單元標記 \"$1\"。",
"log-description-pagetranslation": "頁面翻譯系統相關的操作日誌",
"log-name-pagetranslation": "頁面翻譯日誌",
- "logentry-pagetranslation-mark": "$1 {{GENDER:$2|已標記}} $3 用來翻譯",
- "logentry-pagetranslation-unmark": "$1 已從翻譯中{{GENDER:$2|移除}} $3",
+ "logentry-pagetranslation-mark": "$1 {{GENDER:$2|已標記}} $3 需要翻譯",
+ "logentry-pagetranslation-unmark": "$1已從翻譯系統中{{GENDER:$2|移除}}$3",
"logentry-pagetranslation-moveok": "$1 {{GENDER:$2|已完成}}重新命名可翻譯頁面 $3 至 $4",
"logentry-pagetranslation-movenok": "$1 移動 $3 至 $4 時{{GENDER:$2|發生}}問題",
"logentry-pagetranslation-deletefok": "$1 {{GENDER:$2|己完成}}刪除可翻譯頁面 $3",
@@ -121,6 +124,15 @@
"logentry-pagetranslation-prioritylanguages-force": "$1 {{GENDER:$2|限制}}可翻譯頁面 $3 的語言為 $5",
"logentry-pagetranslation-associate": "$1 {{GENDER:$2|已增加}}可翻譯頁面 $3 到集合群組 $4",
"logentry-pagetranslation-dissociate": "$1 已從集合群組 $4 中{{GENDER:$2|移除}}可翻譯頁面 $3",
+ "log-action-filter-pagetranslation": "動作類型:",
+ "log-action-filter-pagetranslation-mark": "標記需要翻譯",
+ "log-action-filter-pagetranslation-unmark": "從翻譯中移除",
+ "log-action-filter-pagetranslation-move": "頁面移動",
+ "log-action-filter-pagetranslation-delete": "頁面刪除",
+ "log-action-filter-pagetranslation-encourage": "鼓勵翻譯",
+ "log-action-filter-pagetranslation-discourage": "不鼓勵翻譯",
+ "log-action-filter-pagetranslation-prioritylanguages": "優先語言修改",
+ "log-action-filter-pagetranslation-aggregategroups": "集合群組修改",
"pt-movepage-title": "移動可翻譯頁面 \"$1\"",
"pt-movepage-blockers": "可翻譯頁面無法移動至新的名稱,由於下列{{PLURAL:$1|錯誤|錯誤}}:",
"pt-movepage-block-base-exists": "目標可翻譯頁面 \"[[:$1]]\" 已存在。",
@@ -143,18 +155,18 @@
"pt-movepage-subpages": "移動所有子頁面",
"pt-movepage-action-check": "檢查是否可移動",
"pt-movepage-action-perform": "確認移動",
- "pt-movepage-action-other": "更改目標",
- "pt-movepage-intro": "此特殊頁面允許您移動已標記進行翻譯的頁面。\n由於有許多頁面要移動,移動的操作不是即時的。\n在移動頁面的過程中,無法使用在操作中的頁面。\n任何移動失敗會記錄在 [[Special:Log/pagetranslation|頁面翻譯日誌]],並需要手動修復。",
- "pt-movepage-logreason": "可翻譯頁面 \"$1\" 的部分。",
- "pt-movepage-started": "基礎頁面已移動。\n請檢查 [[Special:Log/pagetranslation|頁面翻譯日誌]] 是否有錯誤與完成訊息。",
+ "pt-movepage-action-other": "變更目標",
+ "pt-movepage-intro": "此特殊頁面允許您移動已標記需要翻譯的頁面,\n由於有許多頁面要移動,移動的操作不是即時的。\n在移動頁面的過程無法即時處理有問題的的頁面,\n任何移動失敗會記錄在 [[Special:Log/pagetranslation|頁面翻譯日誌]],並需要手動修復。",
+ "pt-movepage-logreason": "可翻譯頁面 \"$1\" 的部分",
+ "pt-movepage-started": "請檢查 [[Special:Log/pagetranslation|頁面翻譯日誌]] 內的錯誤和完成訊息。",
"pt-locked-page": "因可翻譯頁面正在移動,此頁面已鎖定。",
- "pt-deletepage-lang-title": "刪除翻譯頁面 \"$1\"。",
- "pt-deletepage-full-title": "刪除可翻譯頁面 \"$1\"。",
+ "pt-deletepage-lang-title": "刪除翻譯頁面 \"$1\"",
+ "pt-deletepage-full-title": "刪除可翻譯頁面 \"$1\"",
"pt-deletepage-invalid-title": "指定的頁面無效。",
"pt-deletepage-invalid-text": "指定的頁面不是可翻譯頁面或翻譯頁面。",
"pt-deletepage-action-check": "要刪除的頁面清單",
"pt-deletepage-action-perform": "確認刪除",
- "pt-deletepage-action-other": "更改目標",
+ "pt-deletepage-action-other": "變更目標",
"pt-deletepage-lang-legend": "刪除翻譯頁面",
"pt-deletepage-full-legend": "刪除可翻譯頁面",
"pt-deletepage-any-legend": "刪除可翻譯頁面或翻譯頁面",
@@ -166,8 +178,8 @@
"pt-deletepage-list-section": "翻譯單元頁面",
"pt-deletepage-list-other": "其他子頁面",
"pt-deletepage-list-count": "供 $1 個頁面要刪除。",
- "pt-deletepage-full-logreason": "可翻譯頁面 \"$1\" 的部分。",
- "pt-deletepage-lang-logreason": "翻譯頁面 \"$1\" 的部分。",
+ "pt-deletepage-full-logreason": "可翻譯頁面 \"$1\" 的部分",
+ "pt-deletepage-lang-logreason": "翻譯頁面 \"$1\" 的部分",
"pt-deletepage-started": "請檢查 [[Special:Log/pagetranslation|頁面翻譯日誌]] 內的錯誤和完成訊息。",
"pt-deletepage-intro": "此特殊頁面允許您刪除可翻譯頁面或特定語言的翻譯頁面。\n由於相關的頁面也要一併刪除,刪除的操作不是即時的。\n失敗的訊息會記錄在 [[Special:Log/pagetranslation|頁面翻譯日誌]],並需要手動修復。",
"pagemigration": "翻譯頁面遷移",
@@ -175,28 +187,36 @@
"pm-import-button-label": "匯入",
"pm-savepages-button-label": "儲存",
"pm-cancel-button-label": "取消",
- "pm-pagename-placeholder": "輸入頁面名稱",
- "pm-langcode-placeholder": "語言代碼",
"pm-page-does-not-exist": "$1 不存在",
"pm-old-translations-missing": "$1 沒有舊的翻譯",
- "pm-extra-units-warning": "可能存在額外的翻譯單位。請確實比對來源與翻譯單位。",
+ "pm-extra-units-warning": "可能存在額外的翻譯單元。請確實比對來源與翻譯單元。",
"pm-pagename-missing": "請輸入頁面名稱",
- "pm-langcode-missing": "請輸入語言代碼",
- "pm-add-icon-hover-text": "新增以下單位",
- "pm-swap-icon-hover-text": "替換以下單位",
- "pm-delete-icon-hover-text": "刪除單位",
- "pm-pagetitle-invalid": "請輸入一個有效的頁面標題",
+ "pm-add-icon-hover-text": "新增以下單元",
+ "pm-swap-icon-hover-text": "替換以下單元",
+ "pm-delete-icon-hover-text": "刪除單元",
+ "pm-pagetitle-placeholder": "輸入頁面標題",
+ "pm-pagetitle-invalid": "請輸入一個有效的頁面標題,格式應為 <page-name>/<language-code>。",
+ "pm-pagetitle-missing": "請輸入頁面標題。",
+ "pm-langcode-missing": "標題似乎缺少語言代碼,請使用 <page-name>/<language-code> 格式輸入頁面標題。",
+ "pm-summary-import": "已使用 [[Special:PageMigration|頁面遷移]] 匯入翻譯",
+ "pm-on-import-message-text": "已匯入舊的翻譯,使用加入、交換與刪除選項來調整翻譯單元然後點選 \"{{int:pm-savepages-button-label}}\" 按鈕儲存。要放棄請點選 \"{{int:pm-cancel-button-label}}\" 按鈕。",
+ "pm-on-save-message-text": "已儲存翻譯單元。您可以輸入新翻譯頁面的標題來遷移該頁面,或更改以方單元然後儲存為一個新的修訂。",
"tpt-translate-title": "允許翻譯頁面標題",
- "pp-save-summary": "準備翻譯用頁面",
+ "pp-save-summary": "已準備好等候翻譯的頁面",
"pagepreparation": "準備翻譯用頁面",
"pp-pagename-placeholder": "輸入頁面名稱",
"pp-prepare-button-label": "準備",
"pp-save-button-label": "儲存",
"pp-cancel-button-label": "取消",
"pp-save-message": "頁面已儲存。 您可 [$1] 編輯該頁面。",
- "pp-prepare-message": "已準備好翻譯用頁面。 請參考下方差異。 點選 \"{{int:pp-save-button-label}}\" 確認!",
- "pp-already-prepared-message": "該頁面似乎已有翻譯用頁面。 且與先前的版本無任何差異。",
+ "pp-prepare-message": "該頁面已準備好等候翻譯。 請參考下方差異。 點選 \"{{int:pp-save-button-label}}\" 確認!",
+ "pp-already-prepared-message": "該頁面似乎已準備好等候翻譯,但與先前的版本無任何差異。",
"pp-pagename-missing": "請輸入頁面名稱。",
"pp-diff-old-header": "來源內容",
- "pp-diff-new-header": "準備內容"
+ "pp-diff-new-header": "準備好的內容",
+ "tpt-unlink-confirm": "請確認您真的希望自翻譯系統移除此頁面。\n該語言選擇器與已翻譯的頁面名稱將會停止運作。\n該翻譯頁面將會變成可編輯。",
+ "tpt-unlink-button": "自翻譯移除",
+ "tpt-unlink-summary": "已自翻譯移除頁面",
+ "tpt-generic-confirm": "請確認動作。",
+ "tpt-generic-button": "確認"
}
diff --git a/MLEB/Translate/i18n/sandbox/af.json b/MLEB/Translate/i18n/sandbox/af.json
index ea264cad..f715348e 100644
--- a/MLEB/Translate/i18n/sandbox/af.json
+++ b/MLEB/Translate/i18n/sandbox/af.json
@@ -3,12 +3,14 @@
"authors": [
"Amire80",
"Naudefj",
- "Winstonza"
+ "Winstonza",
+ "Fwolff"
]
},
"managetranslatorsandbox": "Bestuur vertaler-sandput",
"tsb-filter-pending": "Uitstaande versoeke",
"tsb-reminder-title-generic": "Voltooi u bekendstelling om 'n geverifieerde vertaler te word",
"tsb-reminder-content-generic": "Hallo $1,\n\nDankie dat u op {{SITENAME}} geregistreer het. As u u toesvertalings voltooi, sal die administrateurs spoedig volle regte aan u toeken.\n\nGaan asseblief na $2 om 'n paar vertalings te maak.",
+ "tsb-all-languages-button-label": "Alle tale",
"tsb-create-user-page": "Skep 'n basiese gebruikersblad"
}
diff --git a/MLEB/Translate/i18n/sandbox/ar.json b/MLEB/Translate/i18n/sandbox/ar.json
index d3f055f4..86f5759d 100644
--- a/MLEB/Translate/i18n/sandbox/ar.json
+++ b/MLEB/Translate/i18n/sandbox/ar.json
@@ -1,9 +1,55 @@
{
"@metadata": {
"authors": [
- "محمد أحمد عبد الفتاح"
+ "محمد أحمد عبد الفتاح",
+ "Meno25",
+ "Mido",
+ "ديفيد"
]
},
+ "managetranslatorsandbox": "إدارة ملعب المترجم",
+ "tsb-filter-pending": "الطلبات المعلقة",
+ "tsb-reminder-title-generic": "أكمل مقدمتك لتصبح مترجما",
+ "tsb-reminder-content-generic": "مرحبا $1،\n\nشكرا للتسجيل مع {{SITENAME}}.\n\nلو أنك قمت بإكمال ترجمات التجربة الخاصة بك، فالإداريون سيمنحونك صلاحية ترجمة كاملة قريبا بعد ذلك.\n\nمن فضلك تعال وقم بالمزيد من الترجمات هنا:\n$2\n\n$3،\nطاقم {{SITENAME}}",
+ "tsb-reminder-sending": "جارٍ إرسال التذكير...",
+ "tsb-reminder-sent": "{{PLURAL:$1|أرسل $1 تذكير. الوقت: $2.|أرسل $1 تذكيرات. وقت آخر واحد: $2.}}",
+ "tsb-reminder-sent-new": "تم إرسال التذكير",
+ "tsb-reminder-failed": "إرسال التذكير فشل",
+ "tsb-email-promoted-subject": "أنت الآن مترجم في {{SITENAME}}",
+ "tsb-email-promoted-body": "مرحبا {{GENDER:$1|$1}}،\n\nمبروك! أنا تحققت من ترجمات التجربة التي قمت بها في {{SITENAME}} وأعطيتك صلاحيات مترجم كاملة.\n\nتعال إلى {{SITENAME}} للمتبعة في الترجمة الآن، وكل يوم:\n$2\n\nمرحبا، وشكرا لك لمساهماتك!\n\n{{GENDER:$3|$3}}،\nطاقم {{SITENAME}}",
+ "tsb-email-rejected-subject": "طلبك لتصبح مترجما في {{SITENAME}} تم رفضه",
+ "tsb-email-rejected-body": "مرحبا {{GENDER:$1|$1}}،\n\nشكرا لك للتقدم كمترجم في {{SITENAME}}. أنا نادم لإخبارك أني رفضت طلبك، لأن جودة ترجماتك لم تستوف المتطلبات.\n\nلو أنك تعتقد أن طلبك قد تم رفضه بالخطأ، من فضلك حاول التقدم ثانية كمترجم في {{SITENAME}}. يمكنك تسجيل الدخول هنا:\n$2\n\n{{GENDER:$3|$3}}،\nطاقم {{SITENAME}}",
+ "tsb-request-count": "$1 {{PLURAL:$1|طلب|طلبات}}",
"tsb-all-languages-button-label": "كل اللغات",
- "tsb-accept-all-button-label": "اقبل الكل"
+ "tsb-search-requests": "طلبات البحث",
+ "tsb-accept-button-label": "اقبل",
+ "tsb-reject-button-label": "ارفض",
+ "tsb-selected-count": "{{PLURAL:$1|$1 مستخدم مختار|$1 مستخدمون مختارون}}",
+ "tsb-older-requests": "$1 {{PLURAL:$1|طلب|طلبات}} أقدم",
+ "tsb-accept-all-button-label": "اقبل الكل",
+ "tsb-reject-all-button-label": "ارفض الكل",
+ "tsb-user-posted-a-comment": "ليس مترجما",
+ "tsb-reminder-link-text": "أرسل التذكير بالبريد الإلكتروني",
+ "tsb-didnt-make-any-translations": "لم يقم هذا المستخدم بأية ترجمة.",
+ "tsb-translations-source": "المصدر",
+ "tsb-translations-user": "ترجمات {{GENDER:$1|المستخدم|المستخدمة}}",
+ "tsb-translations-current": "الترجمات الموجودة",
+ "tsb-delete-userpage-summary": "حذف صفحة المستخدم لمستخدم في الملعب",
+ "tsb-reject-confirmation": "تم رفض {{PLURAL:$1|مستخدم|مستخدمين}}",
+ "tsb-accept-confirmation": "تم قبول {{PLURAL:$1|مستخدم|مستخدمين}}",
+ "translationstash": "مرحبا",
+ "translate-translationstash-welcome": "مرحبا {{GENDER:$1|$1}}، أنت مترجم جديد",
+ "translate-translationstash-welcome-note": "تعرف على أدوات الترجمة. ترجم بعض الرسائل واحصل على صلاحيات الترجمة الكاملة للمشاركة في مشاريعك المفضلة.",
+ "translate-translationstash-initialtranslation": "ترجمتك الابتدائية",
+ "translate-translationstash-translations": "$1 أكمل {{PLURAL:$1|ترجمة|ترجمات}}",
+ "translate-translationstash-skip-button-label": "جرب واحدة أخرى",
+ "tsb-limit-reached-title": "شكرا لترجماتك",
+ "tsb-limit-reached-body": "أنت وصلت لحد الترجمة للمترجمين الجدد.\nفريقنا سيتحقق ويرقي حسابك قريبا.\nثم ستصبح قادرا على الترجمة بدون حدود.",
+ "tsb-no-requests-from-new-users": "لا طلبات من المستخدمين الجدد",
+ "tsb-create-user-page": "أنشأ صفحة مستخدم أساسية",
+ "log-name-translatorsandbox": "سجل ملعب الترجمة",
+ "log-description-translatorsandbox": "سجل بالأفعال على مستخدمي ملعب الترجمة",
+ "logentry-translatorsandbox-promoted": "{{GENDER:$2|رقى|رقت}} $1 $3 {{GENDER:$4|لمترجم|لمترجمة}}",
+ "logentry-translatorsandbox-rejected": "$1 {{GENDER:$2|رفض|رفضت}} الطلب من \"$3\" ليكون مترجما",
+ "logentry-newusers-tsbpromoted": "حساب المستخدم $3 تم {{GENDER:$2|إنشاؤه}} بواسطة الترقية من الملعب"
}
diff --git a/MLEB/Translate/i18n/sandbox/ast.json b/MLEB/Translate/i18n/sandbox/ast.json
index c823297e..9cb23cae 100644
--- a/MLEB/Translate/i18n/sandbox/ast.json
+++ b/MLEB/Translate/i18n/sandbox/ast.json
@@ -9,7 +9,7 @@
"tsb-reminder-title-generic": "Complete la so presentación pa convertise'n traductor",
"tsb-reminder-content-generic": "Bones, $1:\n\nGracies por rexistrase'n {{SITENAME}}.\n\nSi completa les traducciones\nde prueba, Los alministradores pronto darán-y permisu de traducción\ncompletu.\n\nPor favor, vuelva a $2 y faiga delles traducciones más equí: $2\n\n$3, equipu de {{SITENAME}}",
"tsb-reminder-sending": "Unviando'l recordatoriu...",
- "tsb-reminder-sent": "{{PLURAL:$1|Unviáu $1 recordatoriu $2|Unviaos $1 recordatorios, l'últimu $2}}",
+ "tsb-reminder-sent": "{{PLURAL:$1|Unviáu $1 recordatoriu. Hora: $2.|Unviaos $1 recordatorios. Hora del últimu: $2.}}",
"tsb-reminder-sent-new": "Unviar un recordatoriu",
"tsb-reminder-failed": "Falló unviar un recordatoriu",
"tsb-email-promoted-subject": "Agora yá ye traductor en {{SITENAME}}",
@@ -32,6 +32,8 @@
"tsb-translations-user": "Traducciones {{GENDER:$1|del usuariu|de la usuaria}}",
"tsb-translations-current": "Traducciones esistentes",
"tsb-delete-userpage-summary": "Desaniciando la páxina d'usuariu d'un usuariu de pruebes",
+ "tsb-reject-confirmation": "{{PLURAL:$1|Usuariu refugáu|Usuarios refugaos}}",
+ "tsb-accept-confirmation": "{{PLURAL:$1|Usuariu aceutáu|Usuarios aceutaos}}",
"translationstash": "Bienveníos",
"translate-translationstash-welcome": "{{GENDER:$1|Bienveníu|Bienvenida}}, $1; yá yes {{GENDER:$1|un nuevu traductor|una nueva traductora}}",
"translate-translationstash-welcome-note": "Avézate a les ferramientes de traducción. Traduz dellos mensaxes y consigui permisu de traducción completu pa participar nos tos proyeutos favoritos.",
@@ -42,7 +44,7 @@
"tsb-limit-reached-body": "Llegó a la llende de traducciones pa traductores nuevos.\nEl nuesu equipu pronto comprobará y promocionará la so cuenta.\nDarréu podrá traducir ensin llendes.",
"tsb-no-requests-from-new-users": "Nun hai solicitúes d'usuarios nuevos",
"tsb-create-user-page": "Crear una páxina d'usuariu básica",
- "log-name-translatorsandbox": "Entornu aislláu de traducción",
+ "log-name-translatorsandbox": "Rexistru de la zona de pruebes de traducción",
"log-description-translatorsandbox": "Rexistru d'aiciones de los usuarios del entornu aislláu de traducción",
"logentry-translatorsandbox-promoted": "$1 {{GENDER:$2|promovió}} a $3 a {{GENDER:$4|traductor}}",
"logentry-translatorsandbox-rejected": "$1 {{GENDER:$2|refugó}} la solicitú de «$3» de facese traductor",
diff --git a/MLEB/Translate/i18n/sandbox/bg.json b/MLEB/Translate/i18n/sandbox/bg.json
index 55c3e9db..514c5d05 100644
--- a/MLEB/Translate/i18n/sandbox/bg.json
+++ b/MLEB/Translate/i18n/sandbox/bg.json
@@ -1,7 +1,8 @@
{
"@metadata": {
"authors": [
- "DCLXVI"
+ "DCLXVI",
+ "StanProg"
]
},
"tsb-all-languages-button-label": "Всички езици",
@@ -10,5 +11,7 @@
"tsb-reject-all-button-label": "Отхвърляне на всички",
"tsb-translations-source": "Източник",
"tsb-translations-current": "Съществуващи преводи",
- "tsb-limit-reached-title": "Благодарности за направените преводи"
+ "translationstash": "Добре дошли",
+ "tsb-limit-reached-title": "Благодарности за направените преводи",
+ "logentry-translatorsandbox-promoted": "\n$1 {{GENDER:$2|повиши}} $3 на {{GENDER:$4|преводач}}"
}
diff --git a/MLEB/Translate/i18n/sandbox/bn.json b/MLEB/Translate/i18n/sandbox/bn.json
index a75c464d..0cc816fe 100644
--- a/MLEB/Translate/i18n/sandbox/bn.json
+++ b/MLEB/Translate/i18n/sandbox/bn.json
@@ -1,11 +1,21 @@
{
"@metadata": {
"authors": [
- "Aftab1995"
+ "Aftab1995",
+ "Aftabuzzaman",
+ "আফতাবুজ্জামান"
]
},
"managetranslatorsandbox": "অনুবাদক খেলাঘর পরিচালনা",
"tsb-filter-pending": "অপেক্ষমান অনুরোধ",
"tsb-reminder-title-generic": "একজন অনুবাদক হতে আপনার পরিচিতি সমাপ্ত করুন",
- "tsb-reminder-content-generic": "প্রিয় $1,\n\nআপনি সম্প্রতি {{SITENAME}}-এ সাইন আপ করেছেন। বিনামূল্যে অনুবাদ এবং অতিরিক্ত অনুবাদ সাহায্যকারী খুলতে আপনি মাত্র কয়েক ধাপ দূরে।\n\n$2-এ লগ ইন করুন এবং আরো কিছু অনুবাদ করুন।"
+ "tsb-reminder-content-generic": "প্রিয় $1,\n\nআপনি সম্প্রতি {{SITENAME}}-এ সাইন আপ করেছেন। বিনামূল্যে অনুবাদ এবং অতিরিক্ত অনুবাদ সাহায্যকারী খুলতে আপনি মাত্র কয়েক ধাপ দূরে।\n\n$2-এ লগ ইন করুন এবং আরো কিছু অনুবাদ করুন।",
+ "tsb-all-languages-button-label": "সকল ভাষা",
+ "tsb-accept-button-label": "মঞ্জুর করুন",
+ "tsb-reject-button-label": "প্রত্যাখ্যান করুন",
+ "tsb-translations-source": "উৎস",
+ "tsb-reject-confirmation": "{{PLURAL:$1|ব্যবহারকারী}} প্রত্যাখ্যান করেছেন",
+ "tsb-accept-confirmation": "{{PLURAL:$1|ব্যবহারকারী}} গ্রহণ করেছেন",
+ "translationstash": "স্বাগতম",
+ "log-name-translatorsandbox": "খেলাঘর অনুবাদ লগ"
}
diff --git a/MLEB/Translate/i18n/sandbox/ce.json b/MLEB/Translate/i18n/sandbox/ce.json
index c625f4a3..cbce1e27 100644
--- a/MLEB/Translate/i18n/sandbox/ce.json
+++ b/MLEB/Translate/i18n/sandbox/ce.json
@@ -21,7 +21,7 @@
"tsb-accept-all-button-label": "ТӀеэца массо",
"tsb-reject-all-button-label": "Юхатоха массо",
"tsb-user-posted-a-comment": "Гочдархочун бакъо яц",
- "tsb-reminder-link-text": "Электронан почте дагадаийтар дахьийта",
+ "tsb-reminder-link-text": "Электронан поште дагадаийтар дахьийта",
"tsb-didnt-make-any-translations": "ХӀокху декъашхочо цхьа гочдар дина дац.",
"tsb-translations-source": "Хьост",
"tsb-translations-user": "{{GENDER:$1|Декъашхочун}} гочдарш",
diff --git a/MLEB/Translate/i18n/sandbox/cs.json b/MLEB/Translate/i18n/sandbox/cs.json
index 62731461..bad3ec68 100644
--- a/MLEB/Translate/i18n/sandbox/cs.json
+++ b/MLEB/Translate/i18n/sandbox/cs.json
@@ -1,11 +1,17 @@
{
"@metadata": {
"authors": [
- "Mormegil"
+ "Mormegil",
+ "Vks"
]
},
"tsb-email-promoted-subject": "Na {{grammar:6sg|{{SITENAME}}}} jste teď překladatelem",
"tsb-email-rejected-subject": "Vaše žádost stát se překladatelem na {{grammar:6sg|{{SITENAME}}}} byla zamítnuta",
+ "tsb-accept-button-label": "Přijmout",
+ "tsb-reject-button-label": "Odmítnout",
+ "tsb-accept-all-button-label": "Přijmout vše",
+ "tsb-reject-all-button-label": "Odmítnout vše",
+ "tsb-translations-source": "Zdroj",
"translationstash": "Vítejte",
"translate-translationstash-welcome": "Vítejte, {{GENDER:$1|uživateli|uživatelko}} $1, jste {{GENDER:$1|nový překladatel|nová překladatelka}}",
"translate-translationstash-welcome-note": "Seznamte se s překládacími nástroji. Abyste se mohli účastnit oblíbených projektů, přeložte některé zprávy a získejte plná překladatelská oprávnění.",
diff --git a/MLEB/Translate/i18n/sandbox/de.json b/MLEB/Translate/i18n/sandbox/de.json
index cbe38efa..a7ec2e2b 100644
--- a/MLEB/Translate/i18n/sandbox/de.json
+++ b/MLEB/Translate/i18n/sandbox/de.json
@@ -2,7 +2,9 @@
"@metadata": {
"authors": [
"Metalhead64",
- "Rillke"
+ "Rillke",
+ "J. 'mach' wust",
+ "Kghbln"
]
},
"managetranslatorsandbox": "Übersetzer-Spielwiese konfigurieren",
@@ -10,13 +12,13 @@
"tsb-reminder-title-generic": "Vervollständige deine Einführung, um ein Übersetzer zu werden.",
"tsb-reminder-content-generic": "Hallo $1,\n\nvielen Dank für die Registrierung auf {{SITENAME}}.\n\nWenn du deine Testübersetzungen vervollständigst, gewähren dir die Administratoren kurz danach vollen Übersetzungszugriff.\n\nKomm vorbei und mache hier einige weitere Übersetzungen:\n$2\n\n$3,\ndie Mitarbeiter von {{SITENAME}}",
"tsb-reminder-sending": "Sende die Erinnerung …",
- "tsb-reminder-sent": "{{PLURAL:$1|Eine Erinnerung versandt $2|$1 Erinnerungen versandt, die letzte $2}}",
+ "tsb-reminder-sent": "{{PLURAL:$1|Eine Erinnerung versandt. Zeit: $2.|$1 Erinnerungen versandt. Zeit der letzten: $2.}}",
"tsb-reminder-sent-new": "Die Erinnerung wurde versandt",
"tsb-reminder-failed": "Der Versand der Erinnerung ist fehlgeschlagen",
"tsb-email-promoted-subject": "Du bist jetzt ein Übersetzer auf {{SITENAME}}",
"tsb-email-promoted-body": "Hallo {{GENDER:$1|$1}},\n\nherzlichen Glückwunsch! Ich habe deine Testübersetzungen auf {{SITENAME}} überprüft und habe dir die vollen Übersetzerrechte gegeben.\n\nKomme auf {{SITENAME}}, um jetzt mit dem Übersetzen fortzufahren:\n$2\n\nWillkommen und vielen Dank für deine Beiträge!\n\n{{GENDER:$3|$3}},\nMitarbeiter von {{SITENAME}}",
"tsb-email-rejected-subject": "Dein Antrag auf Beförderung zum Übersetzer auf {{SITENAME}} wurde abgelehnt",
- "tsb-email-rejected-body": "Hallo $1,\n\nvielen Dank für deinen Antrag auf Beförderung {{GENDER:$1|zum Übersetzer|zur Übersetzerin|zum Übersetzer}} auf {{SITENAME}}. Ich bedauere, dich informieren zu müssen, dass ich deinen Antrag abgelehnt habe, da die Qualität deiner Übersetzungen nicht den Anforderungen entspricht.\n\nFalls du denkst, dass dein Antrag durch einen Fehler abgelehnt wurde, versuche, deinen Übersetzerantrag auf {{SITENAME}} erneut einzureichen. Du kannst dich hier registrieren:\n$2\n\n$3,\n{{GENDER:$3|Mitarbeiter|Mitarbeiterin|Mitarbeiter}} von {{SITENAME}}",
+ "tsb-email-rejected-body": "Hallo $1,\n\nvielen Dank für deinen Antrag auf Beförderung {{GENDER:$1|zum Übersetzer|zur Übersetzerin}} auf {{SITENAME}}. Ich bedauere, dich informieren zu müssen, dass ich deinen Antrag abgelehnt habe, da die Qualität deiner Übersetzungen nicht den Anforderungen entspricht.\n\nFalls du denkst, dass dein Antrag durch einen Fehler abgelehnt wurde, versuche, deinen Übersetzerantrag auf {{SITENAME}} erneut einzureichen. Du kannst dich hier registrieren:\n$2\n\n$3,\n{{GENDER:$3|Mitarbeiter|Mitarbeiterin}} von {{SITENAME}}",
"tsb-request-count": "{{PLURAL:$1|Eine Anfrage|$1 Anfragen}}",
"tsb-all-languages-button-label": "Alle Sprachen",
"tsb-search-requests": "Anfragen durchsuchen",
@@ -33,6 +35,8 @@
"tsb-translations-user": "{{GENDER:$1|Benutzerübersetzungen}}",
"tsb-translations-current": "Vorhandene Übersetzungen",
"tsb-delete-userpage-summary": "Benutzerseite eines Spielwiesenbenutzers gelöscht",
+ "tsb-reject-confirmation": "{{PLURAL:$1|Benutzer}} abgelehnt",
+ "tsb-accept-confirmation": "{{PLURAL:$1|Benutzer}} akzeptiert",
"translationstash": "Willkommen",
"translate-translationstash-welcome": "Willkommen $1, du bist {{GENDER:$1|ein neuer Übersetzer|eine neue Übersetzerin}}.",
"translate-translationstash-welcome-note": "Werde mit den Übersetzungswerkzeugen vertraut. Übersetze einige Nachrichten und erhalte die vollen Übersetzerrechte zur Teilnahme an deinen Lieblingsprojekten.",
@@ -45,7 +49,7 @@
"tsb-create-user-page": "Basis-Benutzerseite erstellt",
"log-name-translatorsandbox": "Übersetzungsspielwiesen-Logbuch",
"log-description-translatorsandbox": "Es folgt ein Logbuch von Aktionen auf Übersetzungsspielwiesenbenutzer.",
- "logentry-translatorsandbox-promoted": "$1 hat $3 {{GENDER:$4|zum Übersetzer|zur Übersetzerin|zum Übersetzer}} {{GENDER:$2|befördert}}",
- "logentry-translatorsandbox-rejected": "$1 hat die Anfrage von „$3“ zur Beförderung {{GENDER:$2|zum Übersetzer|zur Übersetzerin|zum Übersetzer}} abgelehnt",
- "logentry-newusers-tsbpromoted": "Das Benutzerkonto $3 wurde durch Beförderung von der Übersetzerspielwiese {{GENDER:$2|erstellt}}"
+ "logentry-translatorsandbox-promoted": "$1 hat $3 {{GENDER:$4|zum Übersetzer|zur Übersetzerin}} {{GENDER:$2|befördert}}",
+ "logentry-translatorsandbox-rejected": "$1 hat die Anfrage von „$3“ zur Beförderung {{GENDER:$2|zum Übersetzer|zur Übersetzerin}} abgelehnt",
+ "logentry-newusers-tsbpromoted": "Das Benutzerkonto $3 wurde aufgrund weiterer Berechtigungen auf der Übersetzerspielwiese {{GENDER:$2|erstellt}}"
}
diff --git a/MLEB/Translate/i18n/sandbox/diq.json b/MLEB/Translate/i18n/sandbox/diq.json
index 378a559d..9082ccf6 100644
--- a/MLEB/Translate/i18n/sandbox/diq.json
+++ b/MLEB/Translate/i18n/sandbox/diq.json
@@ -1,16 +1,27 @@
{
"@metadata": {
"authors": [
- "Marmase"
+ "Marmase",
+ "Kumkumuk",
+ "Mirzali",
+ "Gırd",
+ "Gambollar",
+ "Dılmıc"
]
},
"tsb-request-count": "$1 {{PLURAL:$1|waştış|waştışi}}",
"tsb-all-languages-button-label": "Zıwani pêro",
- "tsb-search-requests": "Neticeyê geyrayışi",
+ "tsb-search-requests": "Telebê cıgeyrayışi",
"tsb-accept-button-label": "Qebul",
"tsb-reject-button-label": "Red ke",
"tsb-selected-count": "{{PLURAL:$1|$1 kerber weçineya|$1 karberi weçineyay}}",
+ "tsb-accept-all-button-label": "Hemın qebul ke",
+ "tsb-reject-all-button-label": "Hemın red ke",
+ "tsb-user-posted-a-comment": "Açarnayış niyo",
"tsb-translations-source": "Çıme",
- "tsb-translations-user": "Açarnayışa karberi",
- "translationstash": "Xeyr amey"
+ "tsb-translations-user": "Tadayışê (çarnayışê) {{GENDER:$1|karberi}}",
+ "translationstash": "Xeyr amey",
+ "translate-translationstash-skip-button-label": "Yewbina bıcerrebne",
+ "tsb-limit-reached-title": "Çarnayışê to rê teşekur kenime",
+ "log-name-translatorsandbox": "Qumdora açarnayışi"
}
diff --git a/MLEB/Translate/i18n/sandbox/en.json b/MLEB/Translate/i18n/sandbox/en.json
index a69df0de..ba880400 100644
--- a/MLEB/Translate/i18n/sandbox/en.json
+++ b/MLEB/Translate/i18n/sandbox/en.json
@@ -4,7 +4,8 @@
"Nike",
"Siebrand Mazeland",
"Santhosh Thottingal",
- "Amire80"
+ "Amire80",
+ "Zoranzoki21"
]
},
"managetranslatorsandbox": "Manage translator sandbox",
@@ -12,11 +13,11 @@
"tsb-reminder-title-generic": "Complete your introduction to become a translator",
"tsb-reminder-content-generic": "Hi $1,\n\nThanks for registering with {{SITENAME}}.\n\nIf you complete your test translations, the administrators will grant you full translation access soon afterwards.\n\nPlease come over and make some more translations here:\n$2\n\n$3,\n{{SITENAME}} staff",
"tsb-reminder-sending": "Sending the reminder...",
- "tsb-reminder-sent": "{{PLURAL:$1|Sent $1 reminder $2|Sent $1 reminders, the last one $2}}",
+ "tsb-reminder-sent": "{{PLURAL:$1|Sent $1 reminder. Time: $2.|Sent $1 reminders. Time of the last one: $2.}}",
"tsb-reminder-sent-new": "Sent a reminder",
"tsb-reminder-failed": "Sending the reminder failed",
"tsb-email-promoted-subject": "You are now a translator at {{SITENAME}}",
- "tsb-email-promoted-body": "Hi {{GENDER:$1|$1}},\n\nCongratulations! I checked the test translations that you made at {{SITENAME}} and gave you full translator rights.\n\nCome to {{SITENAME}} to continue translating now, and every day:\n$2\n\nWelcome, and thank you for you contributions!\n\n{{GENDER:$3|$3}},\n{{SITENAME}} staff",
+ "tsb-email-promoted-body": "Hi {{GENDER:$1|$1}},\n\nCongratulations! I checked the test translations that you made at {{SITENAME}} and gave you full translator rights.\n\nCome to {{SITENAME}} to continue translating now, and every day:\n$2\n\nWelcome, and thank you for your contributions!\n\n{{GENDER:$3|$3}},\n{{SITENAME}} staff",
"tsb-email-rejected-subject": "Your application to be a translator at {{SITENAME}} was rejected",
"tsb-email-rejected-body": "Hi {{GENDER:$1|$1}},\n\nThank you for applying as a translator at {{SITENAME}}. I regret to inform you that I have rejected your application, because the quality of your translations did not meet the requirements.\n\nIf you think that your application was rejected by mistake, please try to apply again as a translator at {{SITENAME}}. You can sign up here:\n$2\n\n{{GENDER:$3|$3}},\n{{SITENAME}} staff",
"tsb-request-count": "$1 {{PLURAL:$1|request|requests}}",
@@ -35,6 +36,8 @@
"tsb-translations-user": "{{GENDER:$1|User}} translations",
"tsb-translations-current": "Existing translations",
"tsb-delete-userpage-summary": "Deleting the user page of a sandbox user",
+ "tsb-reject-confirmation": "{{PLURAL:$1|User|Users}} rejected",
+ "tsb-accept-confirmation": "{{PLURAL:$1|User|Users}} accepted",
"translationstash": "Welcome",
"translate-translationstash-welcome": "Welcome {{GENDER:$1|$1}}, you are a new translator",
"translate-translationstash-welcome-note": "Become familiar with the translation tools. Translate some messages and get full-translator rights to participate in your favorite projects.",
@@ -44,8 +47,8 @@
"tsb-limit-reached-title": "Thanks for your translations",
"tsb-limit-reached-body": "You reached the translation limit for new translators.\nOur team will verify and upgrade your account soon.\nThen you will be able to translate without limits.",
"tsb-no-requests-from-new-users": "No requests from new users",
- "tsb-create-user-page": "Create basic user page",
- "log-name-translatorsandbox": "Translation sandbox",
+ "tsb-create-user-page": "Created basic user page",
+ "log-name-translatorsandbox": "Translation sandbox log",
"log-description-translatorsandbox": "A log of actions on translation sandbox users",
"logentry-translatorsandbox-promoted": "$1 {{GENDER:$2|promoted}} $3 to {{GENDER:$4|translator}}",
"logentry-translatorsandbox-rejected": "$1 {{GENDER:$2|rejected}} the request from \"$3\" to become a translator",
diff --git a/MLEB/Translate/i18n/sandbox/es.json b/MLEB/Translate/i18n/sandbox/es.json
index 12f64516..d754a288 100644
--- a/MLEB/Translate/i18n/sandbox/es.json
+++ b/MLEB/Translate/i18n/sandbox/es.json
@@ -10,7 +10,7 @@
"tsb-reminder-title-generic": "Completa tu introducción para volverte un traductor",
"tsb-reminder-content-generic": "Hola, $1:\n\nGracias por registrarte en {{SITENAME}}.\n\nSi completas tus traducciones de prueba, los administradores te otorgarán los permisos de traducción en breve.\n\nTraduce un poco más, aquí:\n$2\n\n$3,\nPersonal de {{SITENAME}}",
"tsb-reminder-sending": "Enviando el recordatorio…",
- "tsb-reminder-sent": "Se {{PLURAL:$1|envió $1 recordatorio $2|enviaron $1 recordatorios, el último $2}}",
+ "tsb-reminder-sent": "Se {{PLURAL:$1|envió $1 recordatorio $2|enviaron $1 recordatorios, el último $2}}.",
"tsb-reminder-sent-new": "Se envió un recordatorio",
"tsb-reminder-failed": "Falló el envío del recordatorio",
"tsb-email-promoted-subject": "Ahora tienes permisos de traductor en {{SITENAME}}",
@@ -33,6 +33,8 @@
"tsb-translations-user": "Traducciones {{GENDER:$1|del usuario|de la usuaria}}",
"tsb-translations-current": "Traducciones existentes",
"tsb-delete-userpage-summary": "Eliminar la página de usuario en la zona de pruebas",
+ "tsb-reject-confirmation": "{{PLURAL:$1|Usuario rechazado|Usuarios rechazados}}",
+ "tsb-accept-confirmation": "{{PLURAL:$1|Usuario aceptado|Usuarios aceptados}}",
"translationstash": "Te damos la bienvenida",
"translate-translationstash-welcome": "{{GENDER:$1|Bienvenido|Bienvenida}}, $1. Ahora eres {{GENDER:$1|un traductor|una traductora}}",
"translate-translationstash-welcome-note": "Familiarízate con las herramientas de traducción. Traduce algunos mensajes y obtén los permisos completos de traducción para participar en tus proyectos favoritos.",
@@ -43,7 +45,7 @@
"tsb-limit-reached-body": "Alcanzaste el límite de traducción para nuevos traductores.\nNuestro equipo verificará y actualizará tu cuenta pronto.\nLuego serás capaz de traducir sin límites.",
"tsb-no-requests-from-new-users": "No hay solicitudes de usuarios nuevos",
"tsb-create-user-page": "Crear página de usuario básica",
- "log-name-translatorsandbox": "Zona de pruebas de traducción",
+ "log-name-translatorsandbox": "Registro de la zona de pruebas de traducción",
"log-description-translatorsandbox": "Un registro de acciones de usuarios en zona de pruebas de traducción",
"logentry-translatorsandbox-promoted": "$1 {{GENDER:$2|promovió}} $3 a {{GENDER:$4|traductor|traductora}}",
"logentry-translatorsandbox-rejected": "$1 {{GENDER:$2|rechazó}} la solicitud de «$3» para convertirse en traductor",
diff --git a/MLEB/Translate/i18n/sandbox/eu.json b/MLEB/Translate/i18n/sandbox/eu.json
index 7cae9fc2..405e4213 100644
--- a/MLEB/Translate/i18n/sandbox/eu.json
+++ b/MLEB/Translate/i18n/sandbox/eu.json
@@ -1,10 +1,26 @@
{
"@metadata": {
"authors": [
- "Subi"
+ "Subi",
+ "Sator"
]
},
+ "tsb-reminder-sent": "{{PLURAL:$1|Sent $1 reminder. Time: $2.|Sent $1 reminders. Time of the last one: $2.}}",
+ "tsb-reminder-sent-new": "Gogorarazpena bidali",
+ "tsb-request-count": "{{PLURAL:$1|Eskaera bat|$1 eskaera}}",
"tsb-all-languages-button-label": "Hizkuntza guztiak",
+ "tsb-accept-button-label": "Onartu",
+ "tsb-reject-button-label": "Ukatu",
+ "tsb-selected-count": "{{PLURAL:$1|$1 user selected|$1 lankide aukeratuak}}",
+ "tsb-accept-all-button-label": "Dena onartu",
+ "tsb-reject-all-button-label": "Dena ukatu",
+ "tsb-reminder-link-text": "Gogorarazpen posta bidali",
+ "tsb-didnt-make-any-translations": "Lankide honek ez du itzulpenik egin",
+ "tsb-translations-source": "Iturria",
+ "tsb-translations-user": "{{GENDER:$1|Lankidearen}} itzulpen",
"translationstash": "Ongi etorri",
- "translate-translationstash-welcome": "Ongi etorri {{GENDER:$1|$1}}, itzultzaile berria zara"
+ "translate-translationstash-welcome": "Ongi etorri {{GENDER:$1|$1}}, itzultzaile berria zara",
+ "translate-translationstash-initialtranslation": "Zure hasierako itzulpena",
+ "translate-translationstash-skip-button-label": "Probatu beste bat",
+ "tsb-limit-reached-title": "Eskerrik asko zure itzulpenengatik"
}
diff --git a/MLEB/Translate/i18n/sandbox/fa.json b/MLEB/Translate/i18n/sandbox/fa.json
index e2e97898..12d6102a 100644
--- a/MLEB/Translate/i18n/sandbox/fa.json
+++ b/MLEB/Translate/i18n/sandbox/fa.json
@@ -5,7 +5,9 @@
"Armin1392",
"Ebraminio",
"Alirezaaa",
- "Mjbmr"
+ "Mjbmr",
+ "Huji",
+ "Ladsgroup"
]
},
"managetranslatorsandbox": "مدیریت کاربران مترجم",
@@ -13,7 +15,7 @@
"tsb-reminder-title-generic": "معرفی‌نامهٔ خود را برای تبدیل شدن به یک مترجم کامل کنید",
"tsb-reminder-content-generic": "سلام $1،\n تشکر برای ثبت‌نام با {{SITENAME}}.\nاگر شما ترجمه‌های امتحانی خود را کامل کنید، سرپرستان به شما ترجمه کامل در دسترس را زود پس از آن به شما تعطا خواهند کرد.\nلطفاً بیایید و چند ترجمه بیشتر اینجا ایجاد کنیدː\n$2\n$3،\nکارکنان {{SITENAME}}",
"tsb-reminder-sending": "در حال فرستادن یادآوری...",
- "tsb-reminder-sent": "{{PLURAL:$1|ارسال $1 یادآوری $2|ارسال $1 یادآوری‌ها, آخرین $2}}",
+ "tsb-reminder-sent": "{{PLURAL:$1|$1 یادآوری فرستاد. زمان: $2|$1 یادآوری‌ فرستاد. زمان آخرین مورد: $2}}",
"tsb-reminder-sent-new": "فرستادن یک یادآوری",
"tsb-reminder-failed": "عدم موفقیت در فرستادن یادآوری",
"tsb-email-promoted-subject": "شما در حال حاضر یک مترجم در {{SITENAME}} هستید",
@@ -33,12 +35,14 @@
"tsb-reminder-link-text": "ارسال ایمیل یادآور",
"tsb-didnt-make-any-translations": "این کاربر هیچ ترجمه‌ای انجام نداده.",
"tsb-translations-source": "منبع",
- "tsb-translations-user": "ترجمه‌های کاربر",
+ "tsb-translations-user": "ترجمه‌های {{GENDER:$1|کاربر}}",
"tsb-translations-current": "ترجمه‌های موجود",
"tsb-delete-userpage-summary": "حذف صفحه کاربری کاربر جعبه شنی",
+ "tsb-reject-confirmation": "{{PLURAL:$1|کاربر|کاربران}} رد شدند",
+ "tsb-accept-confirmation": "{{PLURAL:$1|کاربر|کاربران}} پذیرفته شدند",
"translationstash": "خوش آمدید",
"translate-translationstash-welcome": "خوش آمدید {{GENDER:$1|$1}}، شما یک مترجم تازه هستید",
- "translate-translationstash-welcome-note": "آشنا شدن با ابزارهای ترجمه. چند پیام را ترجمه کنید و تمام حقوق مترجم را برای شرکت در پروژه‌های مورد علاقه خود بدست آورید.",
+ "translate-translationstash-welcome-note": "با ابزارهای ترجمه آشنا شوید. چند پیام را ترجمه کنید و اختیارات کامل ترجمه را به دست بیاورید تا در پروژه‌های مورد علاقهٔ خود شرکت کنید.",
"translate-translationstash-initialtranslation": "ترجمه‌های اولیهٔ شما",
"translate-translationstash-translations": "$1تکمیل شده {{PLURAL:$1|ترجمه|ترجمه‌ها}}",
"translate-translationstash-skip-button-label": "امتحان دیگری",
@@ -46,7 +50,7 @@
"tsb-limit-reached-body": "شما به حد ترجمه برای مترجمان جدید رسیده‌اید.\nتیم ما بررسی خواهد کرد و حساب شما را به زودی ارتقاء می‌دهد.\nسپس شما قادر به ترجمه بدون محدودیت خواهید بود.",
"tsb-no-requests-from-new-users": "هیچ درخواستی از کاربران تازه نیست",
"tsb-create-user-page": "ایجاد صفحهٔ کاربری اصلی",
- "log-name-translatorsandbox": "جعبه شنی ترجمه",
+ "log-name-translatorsandbox": "محل تمرین ترجمه",
"log-description-translatorsandbox": "سیاهه‌ای از عملکرد بر روی کاربران جعبه شنی ترجمه",
"logentry-translatorsandbox-promoted": "$1، $3 را به {{GENDER:$4|مترجم}} {{GENDER:$2|ترفیع}} داد",
"logentry-translatorsandbox-rejected": "$1 درخواست «$3» را برای مترجم شدن {{GENDER:$2|رد کرد}}",
diff --git a/MLEB/Translate/i18n/sandbox/fi.json b/MLEB/Translate/i18n/sandbox/fi.json
index 3438bcba..274e070d 100644
--- a/MLEB/Translate/i18n/sandbox/fi.json
+++ b/MLEB/Translate/i18n/sandbox/fi.json
@@ -2,16 +2,22 @@
"@metadata": {
"authors": [
"Crt",
- "Nike"
+ "Nike",
+ "Pyscowicz"
]
},
"managetranslatorsandbox": "Kääntäjähakemusten hallinta",
"tsb-filter-pending": "Avoimet hakemukset",
"tsb-reminder-title-generic": "Suorita harjoitus loppuun, jotta sinut voidaan hyväksyä kääntäjäksi",
+ "tsb-reminder-content-generic": "Hei $1,\n\nKiitos rekisteröitymisestä sivulle {{SITENAME}}.\n\nJos saatat loppuun testikäännöksesi, ylläpitäjät antavat sinulle täyden pääsyn kääntämiseen pian sen jälkeen.\n\nTule tänne ja tee muutama muu käännöks täällä:\n$2\n\n$3,\n{{SITENAME}}n henkilökunta",
"tsb-reminder-sending": "Lähetetään muistutusta...",
+ "tsb-reminder-sent": "{{PLURAL:$1|$1 muistutus lähetetty $2.|$1 muistutusta lähetetty. Viimeisin $2.}}",
"tsb-reminder-sent-new": "Muistutus lähetetty",
"tsb-reminder-failed": "Muistutuksen lähettäminen epäonnistui",
"tsb-email-promoted-subject": "{{SITENAME}}: Sinut on hyväksytty kääntäjäksi",
+ "tsb-email-promoted-body": "Hei {{GENDER:$1|$1}},\n\nOnneksi olkoon! Tarkistin testikäännöksesi jotka teit {{SITENAME}}ssa ja annoin sinulle täydet käännösoikeudet.\n\nTule {{SITENAME}}en jatkaaksesi kääntämistä nyt, ja joka päivä:\n$2\n\nTervetuloa, ja kiitos osallistumisestasi!\n\n{{GENDER:$3|$3}},\n{{SITENAME}}n henkilökunta",
+ "tsb-email-rejected-subject": "Hakemuksesi kääntäjäksi sivulla {{SITENAME}} hylättiin",
+ "tsb-email-rejected-body": "Hei {{GENDER:$1|$1}},\n\nKiitos hakemuksestasi kääntäjänä {{GRAMMAR:inessive|{{SITENAME}}}}. Pahoittelen ilmoittaakseni sinulle että olen hylännyt hakemuksesi, koska käännöstesi laatu ei täyttänyt vaatimuksia.\n\nJos luulet, että hakemuksesi hylättiin vahingossa, yritä hakea uudelleen kääntäjäksi {{GRAMMAR:inessive|{{SITENAME}}}}. Voit rekisteröityä täällä: \n$2\n\n{{GENDER:$3|$3}},\n{{GRAMMAR:genitive|{{SITENAME}}}} henkilökunta",
"tsb-request-count": "$1 {{PLURAL:$1|hakemus|hakemusta}}",
"tsb-all-languages-button-label": "Kaikki kielet",
"tsb-search-requests": "Hae hakemuksista",
@@ -25,13 +31,24 @@
"tsb-reminder-link-text": "Lähetä muistutus",
"tsb-didnt-make-any-translations": "Käyttäjä ei ole tehnyt käännöksiä.",
"tsb-translations-source": "Lähde",
- "tsb-translations-user": "Käyttäjän käännös",
+ "tsb-translations-user": "{{GENDER:$1|Käyttäjän käännökset}}",
"tsb-translations-current": "Nykyinen käännös",
+ "tsb-delete-userpage-summary": "Hiekkalaatikkokäyttäjän käyttäsivun poisto.",
+ "tsb-reject-confirmation": "{{PLURAL:$1|käyttäjä|käyttäjää}} hylätty",
+ "tsb-accept-confirmation": "{{PLURAL:$1|käyttäjä|käyttäjää}} hyväksytty",
"translationstash": "Tervetuloa",
"translate-translationstash-welcome": "Tervetuloa {{GENDER:$1|$1}}. Olet uusi kääntäjä.",
"translate-translationstash-welcome-note": "Tutustu käännöstyökaluihin. Käännä muutamia viestejä, niin saat täydet käännösoikeudet lempiprojektiesi kääntämiseen.",
"translate-translationstash-initialtranslation": "Ensimmäinen käännös",
"translate-translationstash-translations": "$1 {{PLURAL:$1|valmis käännös|valmista käännöstä}}",
"translate-translationstash-skip-button-label": "Ohita",
- "tsb-limit-reached-title": "Kiitos käännöksistäsi"
+ "tsb-limit-reached-title": "Kiitos käännöksistäsi",
+ "tsb-limit-reached-body": "Olet saavuttanut käännösraja uusille kääntäjille.\nTiimimme tarkistaa ja päivittää tilisi pian.\nSitten voit kääntää ilman rajoja.",
+ "tsb-no-requests-from-new-users": "Ei uusia hakemuksia.",
+ "tsb-create-user-page": "Luo yksinkertainen käyttäjäsivu",
+ "log-name-translatorsandbox": "Käännöshiekkalaatikkoloki",
+ "log-description-translatorsandbox": "Loki käännöshiekkalaatikon käyttäjien toimista",
+ "logentry-translatorsandbox-promoted": "$1 {{GENDER:$2|ylensi}} $3 {{GENDER:$4|kääntäjäksi}}",
+ "logentry-translatorsandbox-rejected": "$1 {{GENDER:$2|hylkäsi}} pyynnön käyttäjältä \"$3\" ryhtyä kääntäjäksi",
+ "logentry-newusers-tsbpromoted": "Käyttäjätili $3 {{GENDER:$2|luotiin}} ylentämällä hiekkalaatikosta"
}
diff --git a/MLEB/Translate/i18n/sandbox/fr.json b/MLEB/Translate/i18n/sandbox/fr.json
index 67d07e94..235fe3e9 100644
--- a/MLEB/Translate/i18n/sandbox/fr.json
+++ b/MLEB/Translate/i18n/sandbox/fr.json
@@ -8,7 +8,12 @@
"Wyz",
"Linedwell",
"Urhixidur",
- "McDutchie"
+ "McDutchie",
+ "Framafan",
+ "Pathe",
+ "TomT0m",
+ "Derugon",
+ "Wladek92"
]
},
"managetranslatorsandbox": "Gérer le bac à sable de traduction",
@@ -16,7 +21,7 @@
"tsb-reminder-title-generic": "Complétez votre présentation pour devenir un traducteur",
"tsb-reminder-content-generic": "Bonjour $1,\n\nMerci de vous être inscrit sur {{SITENAME}}.\n\nSi vous achevez vos traductions de test, les administrateurs vous accorderont peu après un plein accès aux traductions.\n\nVeuillez aller ici et faire quelques traductions supplémentaires :\n$2\n\n$3,\nL’équipe de {{SITENAME}}",
"tsb-reminder-sending": "Envoi du rappel en cours…",
- "tsb-reminder-sent": "{{PLURAL:$1|$1 rappel envoyé $2|$1 rappels envoyés, le dernier $2}}",
+ "tsb-reminder-sent": "{{PLURAL:$1|$1 rappel envoyé le $2|$1 rappels envoyés, le dernier le/à $2}}",
"tsb-reminder-sent-new": "Rappel envoyé",
"tsb-reminder-failed": "L’envoi du rappel a échoué",
"tsb-email-promoted-subject": "Vous êtes maintenant un traducteur à {{SITENAME}}",
@@ -38,18 +43,20 @@
"tsb-translations-source": "Source",
"tsb-translations-user": "Traductions {{GENDER:$1|de l’utilisateur|de l’utilisatrice}}",
"tsb-translations-current": "Traductions existantes",
- "tsb-delete-userpage-summary": "Suppression de la page utilisateur d’un utilisateur du bac à sable",
+ "tsb-delete-userpage-summary": "Suppression de la page d’utilisateur d’un utilisateur du bac à sable",
+ "tsb-reject-confirmation": "{{PLURAL:$1|Utilisateur rejeté|Utilisateurs rejetés}}",
+ "tsb-accept-confirmation": "{{PLURAL:$1|Utilisateur accepté|Utilisateurs acceptés}}",
"translationstash": "Bienvenue",
"translate-translationstash-welcome": "Bienvenue {{GENDER:$1|$1}}, vous êtes un nouveau traducteur",
"translate-translationstash-welcome-note": "Familiarisez-vous avec les outils de traduction. Traduisez quelques messages et obtenez les droits complets de traducteur pour participer à vos projets favoris.",
"translate-translationstash-initialtranslation": "Votre traduction initiale",
- "translate-translationstash-translations": "$1 a achevé {{PLURAL:$1|une traduction|des traductions}}",
+ "translate-translationstash-translations": "Vous avez achevé $1 {{PLURAL:$1|traduction|traductions}}.",
"translate-translationstash-skip-button-label": "Essayer une autre",
"tsb-limit-reached-title": "Merci pour vos traductions",
- "tsb-limit-reached-body": "Vous atteint le nombre limite de traductions pour les nouveaux traducteurs. !N !Notre équipe va vérifier et mettre à niveau votre compte bientôt. !N !Ensuite, vous serez en mesure de traduire sans limites.",
+ "tsb-limit-reached-body": "Vous avez atteint la limite de traductions pour les nouveaux traducteurs.\nNotre équipe va vérifier et mettre à niveau votre compte bientôt.\nEnsuite, vous serez en mesure de traduire sans limites.",
"tsb-no-requests-from-new-users": "Aucune requête de nouveaux utilisateurs",
- "tsb-create-user-page": "Créer une page utilisateur de base",
- "log-name-translatorsandbox": "Bac à sable de traduction",
+ "tsb-create-user-page": "Page d’utilisateur de base créée",
+ "log-name-translatorsandbox": "Journal du bac à sable de traduction",
"log-description-translatorsandbox": "Un journal des actions sur les utilisateurs du bac à sable de traduction",
"logentry-translatorsandbox-promoted": "$1 {{GENDER:$2|a promu}} $3 en {{GENDER:$4|traducteur|traductrice}}.",
"logentry-translatorsandbox-rejected": "$1 {{GENDER:$2|a rejeté}} la demande de $3 de devenir traducteur",
diff --git a/MLEB/Translate/i18n/sandbox/gl.json b/MLEB/Translate/i18n/sandbox/gl.json
index 489aadb1..b52ffd98 100644
--- a/MLEB/Translate/i18n/sandbox/gl.json
+++ b/MLEB/Translate/i18n/sandbox/gl.json
@@ -11,7 +11,7 @@
"tsb-reminder-title-generic": "Complete a súa introdución para se converter nun tradutor",
"tsb-reminder-content-generic": "Boas, $1:\n\nGrazas por rexistrarse en {{SITENAME}}.\n\nSe completa as traducións de proba, os adminitradores poderán concederlle axiña acceso completo á tradución.\n\nFaga algunhas traducións máis aquí:\n$2\n\n$3,\no equipo de {{SITENAME}}",
"tsb-reminder-sending": "Enviando o recordatorio...",
- "tsb-reminder-sent": "{{PLURAL:$1|Enviouse $1 recordatorio $2|Enviáronse $1 recordatorios, o último $2}}",
+ "tsb-reminder-sent": "{{PLURAL:$1|Enviouse $1 recordatorio. Hora: $2.|Enviáronse $1 recordatorios. Hora do último: $2.}}",
"tsb-reminder-sent-new": "Enviouse un recordatorio",
"tsb-reminder-failed": "Erro ao enviar o recordatorio",
"tsb-email-promoted-subject": "Agora xa é tradutor en {{SITENAME}}",
@@ -34,6 +34,8 @@
"tsb-translations-user": "Traduccións {{GENDER:$1|do usuario|da usuaria}}",
"tsb-translations-current": "Traducións existentes",
"tsb-delete-userpage-summary": "Borro a páxina de usuario dunha zona de probas de usuario",
+ "tsb-reject-confirmation": "{{PLURAL:$1|Usuario rexeitado|Usuarios rexeitados}}",
+ "tsb-accept-confirmation": "{{PLURAL:$1|Usuario aceptado|Usuarios aceptados}}",
"translationstash": "Benvido",
"translate-translationstash-welcome": "{{GENDER:$1|Benvido|Benvida}}, $1; xa es {{GENDER:$1|un novo tradutor|unha nova tradutora}}",
"translate-translationstash-welcome-note": "Familiarícese coas ferramentas de tradución. Traduza algunhas mensaxes e obteña todos os dereitos de tradutor para participar nos seus proxectos favoritos.",
@@ -44,7 +46,7 @@
"tsb-limit-reached-body": "Alcanzou o límite de traducións dos tradutores novos.\nO noso equipo ha comprobar e actualizar a súa conta axiña.\nLogo diso, poderá traducir sen límites.",
"tsb-no-requests-from-new-users": "Non hai solicitudes de novos usuarios",
"tsb-create-user-page": "Creo a páxina de usuario básica",
- "log-name-translatorsandbox": "Zona de probas de tradución",
+ "log-name-translatorsandbox": "Rexistro da zona de probas de tradución",
"log-description-translatorsandbox": "Un rexistro de accións sobre os usuarios da zona de probas de tradución",
"logentry-translatorsandbox-promoted": "$1 {{GENDER:$2|converteu a}} $3 en {{GENDER:$4|tradutor|tradutora}}",
"logentry-translatorsandbox-rejected": "$1 {{GENDER:$2|rexeitou}} a solicitude de $3 de converterse en tradutor",
diff --git a/MLEB/Translate/i18n/sandbox/gu.json b/MLEB/Translate/i18n/sandbox/gu.json
index b3902665..38bb804c 100644
--- a/MLEB/Translate/i18n/sandbox/gu.json
+++ b/MLEB/Translate/i18n/sandbox/gu.json
@@ -1,7 +1,8 @@
{
"@metadata": {
"authors": [
- "KartikMistry"
+ "KartikMistry",
+ "Ashok modhvadia"
]
},
"managetranslatorsandbox": "ભાષાંતર સેન્ડબોક્સનું સંચાલન કરો",
@@ -19,7 +20,7 @@
"tsb-reminder-link-text": "યાદ કરાવતો ઇમેલ મોકલો",
"tsb-didnt-make-any-translations": "આ સભ્યે કોઇ ભાષાંતરો કરેલ નથી.",
"tsb-translations-source": "સ્રોત",
- "tsb-translations-user": "સભ્ય ભાષાંતરો",
+ "tsb-translations-user": "{{GENDER:$1|સભ્ય}} ભાષાંતરો",
"tsb-translations-current": "હાલનાં ભાષાંતરો",
"translationstash": "સ્વાગત",
"translate-translationstash-welcome": "સ્વાગત {{GENDER:$1|$1}}, તમે હવે ભાષાંતરકર્તા છો",
diff --git a/MLEB/Translate/i18n/sandbox/he.json b/MLEB/Translate/i18n/sandbox/he.json
index 69c093a7..40141bfc 100644
--- a/MLEB/Translate/i18n/sandbox/he.json
+++ b/MLEB/Translate/i18n/sandbox/he.json
@@ -9,7 +9,7 @@
"tsb-reminder-title-generic": "נא להשלים את ההיכרות שלך כדי לקבל אישור לתרגם",
"tsb-reminder-content-generic": "שלום $1,\n\nתודה שנרשמת לאתר {{SITENAME}}.\n\nאם {{GENDER:$1|תסיים|תסיימי}} לעשות את תרגומי הבדיקה, המנהלים ייתנו לך גישה מלאה לתרגם קצת אחרי־כן.\n\nנשאר רק לבוא לעשות עוד כמה תרגומים כאן:\n$2\n\n$3\nצוות {{SITENAME}}",
"tsb-reminder-sending": "שליחת התזכורת...",
- "tsb-reminder-sent": "{{PLURAL:$1|נשלחה תזכורת אחת|נשלחו $1 תזכורות, האחרונה $2}}",
+ "tsb-reminder-sent": "{{PLURAL:$1|נשלחה תזכורת אחת ב־$2|נשלחו $1 תזכורות, האחרונה ב־$2}}",
"tsb-reminder-sent-new": "נשלחה תזכורת",
"tsb-reminder-failed": "שליחת התזכורת נכשלה",
"tsb-email-promoted-subject": "קיבלת הרשאה לתרגם באתר {{SITENAME}}",
@@ -32,6 +32,8 @@
"tsb-translations-user": "תרגומים של {{GENDER:$1|המשתמש|המשתמשת}}",
"tsb-translations-current": "תרגומים קיימים",
"tsb-delete-userpage-summary": "מחיקת דף משתמש של משתמש בארגז חול",
+ "tsb-reject-confirmation": "{{PLURAL:$1|משתמש נדחה|משתמשים נדחו}}",
+ "tsb-accept-confirmation": "{{PLURAL:$1|משתמש התקבל|משתמשים התקבלו}}",
"translationstash": "ברוך בואך",
"translate-translationstash-welcome": "{{GENDER:$1|ברוך הבא $1, אתה מתרגם חדש|ברוכה הבאה $1, את מתרגמת חדשה}}",
"translate-translationstash-welcome-note": "עכשיו נכיר לך את כלי התרגום. אנו מבקשים ממך לתרגם מספר מחרוזות כדי לקבל הרשאות תרגום מלאות ולהשתתף במיזמים שמעניינים אותך.",
@@ -42,7 +44,7 @@
"tsb-limit-reached-body": "הגעת למגבלת התרגומים למתרגמים חדשים.\nהסגל שלנו יבדוק וישדרג את החשבון שלך בקרוב.\nאחרי־כן תהיה לך אפשרות לתרגם בלי הגבלה.",
"tsb-no-requests-from-new-users": "אין בקשות ממשתמשים חדשים",
"tsb-create-user-page": "יצירת דף משתמש בסיסי",
- "log-name-translatorsandbox": "ארגז חול של תרגומים",
+ "log-name-translatorsandbox": "יומן ארגז חול של תרגומים",
"log-description-translatorsandbox": "יומן פעולות על משתמשים בארגז חול של תרגומים",
"logentry-translatorsandbox-promoted": "$1 {{GENDER:$2|קידם|קידמה}} את $3 לתפקיד {{GENDER:$4|מתרגם|מתרגמת}}",
"logentry-translatorsandbox-rejected": "$1 {{GENDER:$2|דחה|דחתה}} את הבקשה של \"$3\" לקבל הרשאת מתרגם",
diff --git a/MLEB/Translate/i18n/sandbox/ia.json b/MLEB/Translate/i18n/sandbox/ia.json
index b0c6f245..2ff68886 100644
--- a/MLEB/Translate/i18n/sandbox/ia.json
+++ b/MLEB/Translate/i18n/sandbox/ia.json
@@ -9,7 +9,7 @@
"tsb-reminder-title-generic": "Completa le introduction pro devenir traductor",
"tsb-reminder-content-generic": "Salute $1,\n\nGratias pro haber te inscribite a {{SITENAME}}.\n\nSi tu completa le traductiones de test, le administratores te concedera le accesso complete de traduction in un breve periodo.\n\nVeni e face alcun altere traductiones al adresse:\n$2\n\n$3,\nLe equipa de {{SITENAME}}",
"tsb-reminder-sending": "Invio del rememoration...",
- "tsb-reminder-sent": "{{PLURAL:$1|$1 rememoration inviate $2|$1 rememorationes inviate; le ultime se inviava $2}}",
+ "tsb-reminder-sent": "{{PLURAL:$1|$1 rememoration inviate. Hora: $2|$1 rememorationes inviate. Hora del ultime: $2}}",
"tsb-reminder-sent-new": "Un rememoration inviate",
"tsb-reminder-failed": "Le invio del rememoration ha fallite",
"tsb-email-promoted-subject": "Tu es ora traductor in {{SITENAME}}",
@@ -29,7 +29,7 @@
"tsb-reminder-link-text": "Inviar e-mail de rememoration",
"tsb-didnt-make-any-translations": "Iste usator non ha facite alcun traduction.",
"tsb-translations-source": "Fonte",
- "tsb-translations-user": "Traductiones del usator",
+ "tsb-translations-user": "Traductiones del {{GENDER:$1|usator}}",
"tsb-translations-current": "Traductiones existente",
"tsb-delete-userpage-summary": "Deletion del pagina de usator de un usator in cassa a sablo",
"translationstash": "Benvenite",
@@ -41,8 +41,8 @@
"tsb-limit-reached-title": "Gratias pro tu traductiones",
"tsb-limit-reached-body": "Tu ha attingite le numero limite de traductiones pro le nove traductores. Nostre equipa va verificar e promover tu conto bentosto. Postea tu potera traducer sin limite.",
"tsb-no-requests-from-new-users": "Il non ha requestas de nove usatores",
- "tsb-create-user-page": "Crear un pagina de usator basic",
- "log-name-translatorsandbox": "Cassa a sablo de traduction",
+ "tsb-create-user-page": "Creation de un pagina de usator basic",
+ "log-name-translatorsandbox": "Registro del cassa a sablo de traduction",
"log-description-translatorsandbox": "Un registro de actiones sur usatores in le cassa a sablo de traduction",
"logentry-translatorsandbox-promoted": "$1 {{GENDER:$2|promoveva}} $3 a {{GENDER:$4|traductor}}",
"logentry-translatorsandbox-rejected": "$1 {{GENDER:$2|rejectava}} le requesta de \"$3\" de devenir traductor",
diff --git a/MLEB/Translate/i18n/sandbox/it.json b/MLEB/Translate/i18n/sandbox/it.json
index 963ceb76..3fc2b01f 100644
--- a/MLEB/Translate/i18n/sandbox/it.json
+++ b/MLEB/Translate/i18n/sandbox/it.json
@@ -10,7 +10,7 @@
"tsb-reminder-title-generic": "Completa l'introduzione per diventare un traduttore",
"tsb-reminder-content-generic": "Ciao $1,\n\nGrazie per esserti registrato su {{SITENAME}}.\n\nSe completi i test di traduzione, gli amministratori ti concederanno l'accesso completo da traduttore in un breve periodo.\n\nVieni e fai alcune altre traduzioni su:\n$2\n\n$3,\nLo staff di {{SITENAME}}",
"tsb-reminder-sending": "Invio i promemoria...",
- "tsb-reminder-sent": "{{PLURAL:$1|Inviato $1 promemoria $2|Inviati $1 promemoria, l'ultimo $2}}",
+ "tsb-reminder-sent": "{{PLURAL:$1|Inviato $1 promemoria $2. Tempo: $2.|Inviati $1 promemoria. Tempo dell'ultimo: $2.}}",
"tsb-reminder-sent-new": "Inviato un promemoria",
"tsb-reminder-failed": "Invio del promemoria non riuscito",
"tsb-email-promoted-subject": "Ora sei un traduttore su {{SITENAME}}",
diff --git a/MLEB/Translate/i18n/sandbox/ja.json b/MLEB/Translate/i18n/sandbox/ja.json
index afbad301..236c11a8 100644
--- a/MLEB/Translate/i18n/sandbox/ja.json
+++ b/MLEB/Translate/i18n/sandbox/ja.json
@@ -1,18 +1,23 @@
{
"@metadata": {
"authors": [
- "Shirayuki"
+ "Shirayuki",
+ "Sujiniku",
+ "Otokoume",
+ "Omotecho"
]
},
"managetranslatorsandbox": "翻訳者サンドボックスの管理",
"tsb-filter-pending": "保留中の申請",
"tsb-reminder-title-generic": "翻訳者になるには、自己紹介を記入してください",
"tsb-reminder-sending": "通知を送信しています...",
- "tsb-reminder-sent": "{{PLURAL:$1|$2に $1 件の通知を送信しました|$1 件の通知を送信しました。最終送信は $2です}}",
+ "tsb-reminder-sent": "{{PLURAL:$1|$2に $1 件の通知を送信しました。時間は $2 です。|$1 件の通知を送信しました。最終送信の時間は $2 です。}}",
"tsb-reminder-sent-new": "通知を送信しました",
"tsb-reminder-failed": "通知を送信できませんでした",
"tsb-email-promoted-subject": "あなたは{{SITENAME}}の翻訳者になりました",
+ "tsb-email-promoted-body": "こんにちは、{{GENDER:$1|$1}}さん\n\nおめでとうございます! {{SITENAME}} で行われたテスト翻訳の確認が終了し、あなたには正式な翻訳者としての権限が付与されました。\n\nこれからは自由に {{SITENAME}} での翻訳が行えます:\n$2\n\n改めまして、翻訳の寄与をありがとうございました!\n\n{{SITENAME}} スタッフ {{GENDER:$3|$3}} より",
"tsb-email-rejected-subject": "あなたへの{{SITENAME}}での翻訳者権限の付与申請は却下されました",
+ "tsb-email-rejected-body": "こんにちは、{{GENDER:$1|$1}}さん\n\n{{SITENAME}} の翻訳者としてお申込みいただきありがとうございます。あなたの翻訳が品質基準を満たしていなかったため、翻訳者として採用されなかったことをお知らせいたします。\n\nこの結果が間違っていると思われる場合は、{{SITENAME}} の翻訳者として再度お申し込みください。こちらからログインできます:\n$2\n\n{{SITENAME}} スタッフ {{GENDER:$3|$3}} より",
"tsb-request-count": "$1 {{PLURAL:$1|件の申請}}",
"tsb-all-languages-button-label": "すべての言語",
"tsb-search-requests": "申請の検索",
@@ -37,8 +42,8 @@
"tsb-limit-reached-title": "翻訳していただいてありがとうございます",
"tsb-limit-reached-body": "新規翻訳者の翻訳数の上限に達しました。\n私たちのチームがまもなく、アカウントを検証してアップグレードします。\nその後、上限なしで翻訳できるようになります。",
"tsb-no-requests-from-new-users": "新規利用者からの申請はありません",
- "tsb-create-user-page": "基礎的な利用者ページを作成",
- "log-name-translatorsandbox": "翻訳サンドボックス",
+ "tsb-create-user-page": "基礎的な利用者ページが作成されました",
+ "log-name-translatorsandbox": "翻訳サンドボックス記録",
"log-description-translatorsandbox": "翻訳サンドボックス利用者への操作の記録",
"logentry-translatorsandbox-promoted": "$1 が $3 を{{GENDER:$4|翻訳者}}に{{GENDER:$2|昇格させました}}",
"logentry-translatorsandbox-rejected": "$1 が「$3」の翻訳者権限の付与申請を{{GENDER:$2|却下しました}}",
diff --git a/MLEB/Translate/i18n/sandbox/ko.json b/MLEB/Translate/i18n/sandbox/ko.json
index b0af6f68..9d82561c 100644
--- a/MLEB/Translate/i18n/sandbox/ko.json
+++ b/MLEB/Translate/i18n/sandbox/ko.json
@@ -5,7 +5,10 @@
"Hym411",
"아라",
"Priviet",
- "Revi"
+ "Revi",
+ "Hwangjy9",
+ "Kurousagi",
+ "Ykhwong"
]
},
"managetranslatorsandbox": "번역자 연습장 관리",
@@ -13,10 +16,10 @@
"tsb-reminder-title-generic": "검증된 번역자가 되려면 소개를 작성하세요",
"tsb-reminder-content-generic": "$1 님 안녕하세요.\n\n{{SITENAME}}에 등록해주셔서 감사합니다.\n테스트 번역을 완료하시면, 관리자가 곧 전체 번역 접근 권한을 부여할 것입니다.\n\n$2에 와서 조금 더 번역을 해주세요.\n\n{{SITENAME}} 직원, $3",
"tsb-reminder-sending": "알림 보내는 중...",
- "tsb-reminder-sent": "{{PLURAL:$1|$2에 $1 알림 보냄|$2에 마지막으로 $1 알림 보냄}}",
+ "tsb-reminder-sent": "{{PLURAL:$1|알림 $1개를 보냈습니다. 시간: $2.|알림 $1개를 보냈습니다. 마지막으로 보낸 시간: $2.}}",
"tsb-reminder-sent-new": "알림을 보냄",
"tsb-reminder-failed": "알림 보내기를 실패했습니다",
- "tsb-email-promoted-subject": "당신은 {{SITENAME}}의 번역가가 됐습니다.",
+ "tsb-email-promoted-subject": "당신은 {{SITENAME}}의 번역자가 됐습니다.",
"tsb-email-promoted-body": "안녕하세요. {{GENDER:$1|$1}} 님\n\n축하드립니다! {{SITENAME}}에서 하신 테스트 번역을 확인학 전체 번역 권한을 부여해드렸습니다.\n\n지금 {{SITENAME}}에 오셔서 번역을 계속해주세요:\n$2\n\n오신 것을 환영하며 당신의 기여에 감사드립니다.\n\n{{SITENAME}} 직원, {{GENDER:$3|$3}}",
"tsb-email-rejected-subject": "당신의 {{SITENAME}}의 번역자 지원서가 거절됐습니다.",
"tsb-email-rejected-body": "안녕하세요. {{GENDER:$1|$1}} 님\n\n{{SITENAME}}의 번역자에 지원해주셔서 감사합니다. 안타깝게도 귀하의 지원서는 귀하의 번역이 필수 조건을 충족하지 않아 채택되지 못하였습니다.\n\n만약 당신의 지원서가 잘못 또는 실수로 채택되지 못하였다고 생각하신다면 {{SITENAME}}의 번역자로서 다시 지원해주시기 바랍니다. 여기에서 등록하실 수 있습니다: $2\n\n{{SITENAME}} 담당자, {{GENDER:$3|$3}}",
@@ -33,22 +36,22 @@
"tsb-reminder-link-text": "이메일 알림 보내기",
"tsb-didnt-make-any-translations": "이 사용자는 번역한 적이 없습니다.",
"tsb-translations-source": "출처",
- "tsb-translations-user": "사용자 번역",
+ "tsb-translations-user": "{{GENDER:$1|사용자}}의 번역",
"tsb-translations-current": "기존 번역",
"tsb-delete-userpage-summary": "연습 사용자의 사용자 문서 삭제",
"translationstash": "환영합니다",
"translate-translationstash-welcome": "$1님 환영합니다, 당신은 이제 번역자입니다.",
- "translate-translationstash-welcome-note": "번역 도구에 익숙해지세요. 몇개의 메시지를 번역하고, 당신이 좋아하는 위키에서 번역자 권한을 얻어 위키에 기여하세요.",
+ "translate-translationstash-welcome-note": "번역 도구에 익숙해지세요. 몇 개의 메시지를 번역하시고 완전한 번역자 권한을 얻어 좋아하는 프로젝트에 참여하세요.",
"translate-translationstash-initialtranslation": "내 초기 번역",
"translate-translationstash-translations": "완성한 {{PLURAL:$1|번역}} $1개",
"translate-translationstash-skip-button-label": "다른 문서",
"tsb-limit-reached-title": "당신의 번역에 감사드립니다.",
"tsb-limit-reached-body": "새 번역자를 위한 번역 제한에 도달했습니다. 저희가 당신의 계정을 확인하고 업그레이드한 후에, 제한 없이 번역하실 수 있습니다.",
"tsb-no-requests-from-new-users": "새 사용자의 요청 없음",
- "tsb-create-user-page": "기본 사용자 문서 만들기",
- "log-name-translatorsandbox": "번역 연습장",
+ "tsb-create-user-page": "기본 사용자 문서를 만듦",
+ "log-name-translatorsandbox": "번역 연습장 기록",
"log-description-translatorsandbox": "번역 연습 사용자의 명령 기록",
- "logentry-translatorsandbox-promoted": "$1 사용자가 $3 사용자를 {{GENDER:$4|번역자}}로 {{GENDER:$2|승격시켰습니다}}",
- "logentry-translatorsandbox-rejected": "$1 사용자가 $3 사용자의 승격 신청을 {{GENDER:$2|거절했습니다}}",
+ "logentry-translatorsandbox-promoted": "$1님이 $3님을 {{GENDER:$4|번역자}}로 {{GENDER:$2|승격시켰습니다}}",
+ "logentry-translatorsandbox-rejected": "$1님이 \"$3\"님의 번역자 승격 신청을 {{GENDER:$2|거절했습니다}}",
"logentry-newusers-tsbpromoted": "$3 사용자 계정은 연습장에서의 승격에 따라 {{GENDER:$2|만들어졌습니다}}"
}
diff --git a/MLEB/Translate/i18n/sandbox/ksh.json b/MLEB/Translate/i18n/sandbox/ksh.json
index 1a9f0dd7..e62a4bcc 100644
--- a/MLEB/Translate/i18n/sandbox/ksh.json
+++ b/MLEB/Translate/i18n/sandbox/ksh.json
@@ -1,16 +1,17 @@
{
"@metadata": {
"authors": [
- "Purodha"
+ "Purodha",
+ "Als-Holder"
]
},
- "managetranslatorsandbox": "Demm en Schpellwiß för de Övversäzer ennreeschde un verwallde.",
+ "managetranslatorsandbox": "Donn en Schpellwiß för de Övversäzer ennreeschde un verwallde.",
"tsb-filter-pending": "Aanfroore en der Waadeschlang",
- "tsb-reminder-title-generic": "Maach Ding Sällefsvörschtällong fäädesch, öm enen beschtääteschten Övversäzzer ze wääde.",
- "tsb-reminder-content-generic": "Daach $1,\nmer bedangke ons dat De Desch köözlesch {{ucfirst:{{GRAMMAR:em|{{ucfirst:{{SITENAME}}}}}}}} aanjemälldt häs. Wann Do jraad noch e paa Övversäzonge för et Prööve fäädesch määß, künne de Wikki_Kööbeße desch freischallde för et Övversäzze.\n\nBes esu jood un donn Desch op {{GRAMMAR:Dativ|$2}} enlogge un maach e paa Övversäzonge.\n\n$3\nvum Päsonaal {{ucfirst:{{GRAMMAR:gen|{{ucfirst:{{SITENAME}}}}}}}}",
- "tsb-reminder-sending": "Ben de Äennerong aam schecke&nbsp;&hellip;",
- "tsb-reminder-sent": "{{PLURAL:$1|Ein Ä'ennerong $2 jeschek|$1 Ä'enneronge jeschek, zerläz $2|Kein Ä'ennerong $2 jeschek}}",
- "tsb-reminder-sent-new": "Han de Äennerong verscheck.",
+ "tsb-reminder-title-generic": "Maach Ding Sällefsvörschtällong fähdesch, öm enen beschtääteschten Övversäzzer ze wääde.",
+ "tsb-reminder-content-generic": "Daach $1,\nmer bedangke ons dat De Desch köözlesch {{ucfirst:{{GRAMMAR:em|{{ucfirst:{{SITENAME}}}}}}}} aanjemälldt häs. Wann Do jraad noch e paa Övversäzonge för et Pröhve fähdesch mähß, künne de Wikki_Kööbeße desch freischallde för et Övversäzze.\n\nBes esu jood un donn Desch op {{GRAMMAR:Dativ|$2}} enlogge un maach e paa Övversäzonge.\n\n$3\nvum Päsonaal {{ucfirst:{{GRAMMAR:gen|{{ucfirst:{{SITENAME}}}}}}}}",
+ "tsb-reminder-sending": "Ben de Äennerong aam schecke&nbsp;…",
+ "tsb-reminder-sent": "{{PLURAL:$1|Ein Ännerong öm $2 Uhr jeschek|$1 Änneronge jeschek, zerläz öm $2 Uhr|Kein Ännerong öm $2 Uhr jeschek}}.",
+ "tsb-reminder-sent-new": "Han de Ä'ennerong verscheck.",
"tsb-reminder-failed": "Han kein Äennerong verscheck. Et hät nit jeflupp.",
"tsb-email-promoted-subject": "Do bes jäds_ene Övversäzer em {{SITENAME}}",
"tsb-email-promoted-body": "Daach $1,\n\nmer han Ding Övversäzonge op {{SITENAME}} jepröhv un han Der nu de volle Rääschte als Övversäzer jejovve.\n\nKumm, un maach wigger mem Övversäze, jäz un alle Dääsch:\n$2\n\nBes wellkumme, un mer danke för Ding Beijdrähsch!\n\n{{GENDER:$3|$3}}, ene Bedriever {{GRAMMAR: 2 v|{{lcfirst:{{SITENAME}}}}}}",
@@ -26,7 +27,7 @@
"tsb-accept-all-button-label": "All aanämme",
"tsb-reject-all-button-label": "All aflehne",
"tsb-user-posted-a-comment": "Keine Övversäzer",
- "tsb-reminder-link-text": "Schegg_en Äennerong pä <i lang=\"en\" xml:lang=\"en\">e-mail</i>",
+ "tsb-reminder-link-text": "Schegg_en Ä'ennerong pä <i lang=\"en\" xml:lang=\"en\">e-mail</i>",
"tsb-didnt-make-any-translations": "Dä metmaacher hät kein Övversäzonge jemaat.",
"tsb-translations-source": "Quall",
"tsb-translations-user": "Övversäzonge {{GENDER:$1|vum Metmaacher|vun dä Metmaacherėn|vum Metmaacher|vun dä Metmaacherėn|vum Metmaacher}}",
diff --git a/MLEB/Translate/i18n/sandbox/lb.json b/MLEB/Translate/i18n/sandbox/lb.json
index da5e7e0a..25e0e6b2 100644
--- a/MLEB/Translate/i18n/sandbox/lb.json
+++ b/MLEB/Translate/i18n/sandbox/lb.json
@@ -8,6 +8,7 @@
"tsb-filter-pending": "Ufroen am Suspens",
"tsb-reminder-title-generic": "Kompletéiert Är Virstellung fir Iwwersetzer ze ginn",
"tsb-reminder-sending": "Erënnerung gëtt geschéckt...",
+ "tsb-reminder-sent": "{{PLURAL:$1|Eng Erënnerung geschéckt. Zäit: $2.|$1 Erënnerunge geschéckt. Zäit vun der leschter: $2.}}",
"tsb-reminder-sent-new": "Eng Erënnerung schécken",
"tsb-reminder-failed": "D'Erënnerung schécken huet net funktionéiert",
"tsb-email-promoted-subject": "Dir sidd elo Iwwersetzer op {{SITENAME}}",
@@ -29,6 +30,8 @@
"tsb-translations-user": "{{GENDER:$1|Benotzer}} Iwwersetzungen",
"tsb-translations-current": "Iwwersetzungen déi et gëtt",
"tsb-delete-userpage-summary": "Benotzersäit vun engem Sandbox-Benotzer läschen",
+ "tsb-reject-confirmation": "{{PLURAL:$1|Benotzer}} refuséiert",
+ "tsb-accept-confirmation": "{{PLURAL:$1|Benotzer}} akzeptéiert",
"translationstash": "Wëllkomm",
"translate-translationstash-welcome": "Wëllkomm {{GENDER:$1|$1}}, Dir sidd en neien Iwwersetzer",
"translate-translationstash-initialtranslation": "Är éischt Iwwersetzung",
@@ -38,7 +41,7 @@
"tsb-limit-reached-body": "Dir hutt d'Iwwersetzungslimit fir nei Iwwersetzer erreecht.\nEis Equipe kuckt Äre Benotzerkont geschwënn no a setzt en erop.\nDa kënnt Dir ouni Limitatiounen iwwersetzen.",
"tsb-no-requests-from-new-users": "Keng Ufroe vun neie Benotzer",
"tsb-create-user-page": "Eng einfach Benotzersäit uleeën",
- "log-name-translatorsandbox": "Iwwersetzungs-Sandkëscht",
+ "log-name-translatorsandbox": "Logbuch vun der Iwwersetzungs-Sandkëscht",
"logentry-translatorsandbox-rejected": "$1 huet d'Ufro vum \"$3\" fir {{GENDER:$2|Iwwersetzesch|Iwwersetzer}} ze gi refuséiert",
"logentry-newusers-tsbpromoted": "De Benotzerkont $3 gouf {{GENDER:$2|ugeluecht}} duerch d'Promotioun aus der Sandkëscht"
}
diff --git a/MLEB/Translate/i18n/sandbox/mk.json b/MLEB/Translate/i18n/sandbox/mk.json
index 26f50582..bf4b7cc1 100644
--- a/MLEB/Translate/i18n/sandbox/mk.json
+++ b/MLEB/Translate/i18n/sandbox/mk.json
@@ -9,13 +9,13 @@
"tsb-reminder-title-generic": "Пополнете го вашето претставување за да станете преведувач",
"tsb-reminder-content-generic": "Здраво $1,\n\nВи благодариме што се регистриравте на {{SITENAME}}. \n\nАко ги пополните пробните преводи, администраторите набргу ќе ви доделат статус на полн преведувач.\n\n\nПојдете на $2 и направете уште некои преводи.\n\n$3, \nПерсоналот на {{SITENAME}}",
"tsb-reminder-sending": "Го испраќам потсетникот...",
- "tsb-reminder-sent": "{{PLURAL:$1|Испратен еден потсетник $2|Испратени $1 потсетници, од кои последниот $2}}",
+ "tsb-reminder-sent": "{{PLURAL:$1|Испратен еден потсетник. Време: $2|Испратени $1 потсетници: Последниот: $2}}",
"tsb-reminder-sent-new": "Испратен потсетник",
"tsb-reminder-failed": "Не успеав да испратам потсетник",
"tsb-email-promoted-subject": "Сега сте преведувач на {{SITENAME}}",
"tsb-email-promoted-body": "Здраво {{GENDER:$1|$1}},\n\nЧеститки! Го проверив пробниот превод што го направивте на {{SITENAME}} и Ви доделив полни преведувачки права.\n\nПојдете на {{SITENAME}} за да продолжите со преведување сега и секој нареден ден:\n$2\n\nДобре дојдовте и Ви благодариме за учеството!\n\n{{GENDER:$3|$3}},\nЧлен на кадарот на {{SITENAME}}",
"tsb-email-rejected-subject": "Вашата пријавница за преведувач на {{SITENAME}} е одбиена",
- "tsb-email-rejected-body": "Здраво {{GENDER:$1|$1}},\n\nВи благодариме што се пријавивте за преведувач на {{SITENAME}}. Нажалост, ќе мораме да Ве известиме дека пријавницата Ви е одбиена бидејќи квалитетот на Вашите преводи не одговара на нашите потреби.\n\nДоколку сметате дека сте одбиени по грешка, поднесете друга на {{SITENAME}}. Тоа можете да го направите тука:\n$2\n\n{{GENDER:$3|$3}},\nКадарот на {{SITENAME}}",
+ "tsb-email-rejected-body": "Здраво {{GENDER:$1|$1}},\n\nВи благодариме што се пријавивте за преведувач на {{SITENAME}}. За жал, ќе мораме да Ве известиме дека пријавницата Ви е одбиена бидејќи квалитетот на Вашите преводи не одговара на нашите потреби.\n\nДоколку сметате дека сте одбиени по грешка, поднесете друга на {{SITENAME}}. Тоа можете да го направите тука:\n$2\n\n{{GENDER:$3|$3}},\nКадарот на {{SITENAME}}",
"tsb-request-count": "{{PLURAL:$1|Едно барање|$1 барања}}",
"tsb-all-languages-button-label": "Сите јазици",
"tsb-search-requests": "Пребарајте барања",
@@ -32,6 +32,8 @@
"tsb-translations-user": "{{GENDER:$1|Кориснички}} преводи",
"tsb-translations-current": "Постоечки преводи",
"tsb-delete-userpage-summary": "Бришење на корисничка страница на песочнички корисник",
+ "tsb-reject-confirmation": "{{PLURAL:$1|Корисникот е одбиен|Корисниците се одбиени}}",
+ "tsb-accept-confirmation": "{{PLURAL:$1|Корисникот е прифатен|Корисниците се прифатени}}",
"translationstash": "Добре дојдовте",
"translate-translationstash-welcome": "Добре дојдовте {{GENDER:$1|$1}}, вие сте нов преведувач",
"translate-translationstash-welcome-note": "Запознајте се со преводните алатки. Преведете некои пораки и стекнете полни преведувачки права за да учествувате во вашите омилени проекти.",
@@ -42,7 +44,7 @@
"tsb-limit-reached-body": "Ја достигнавте границата на преводи од нови преведувачи.\nНаскоро нашата екипа ќе ви ја провери и надгради сметката.\nПотоа ќе можете да преведувате неограничено.",
"tsb-no-requests-from-new-users": "Нема барања од нови корисници",
"tsb-create-user-page": "Создавање на основна корисничка страница",
- "log-name-translatorsandbox": "Преводен песочник",
+ "log-name-translatorsandbox": "Дневник на Преводниот песочник",
"log-description-translatorsandbox": "Дневник на дејства со корисници на преводниот песочник",
"logentry-translatorsandbox-promoted": "$1 {{GENDER:$4|го|ја}} {{GENDER:$2|унапреди}} $3 во {{GENDER:$4|преведувач}}",
"logentry-translatorsandbox-rejected": "$1 го {{GENDER:$2|одби}} барањето од „$3“ за да стане преведувач",
diff --git a/MLEB/Translate/i18n/sandbox/mr.json b/MLEB/Translate/i18n/sandbox/mr.json
index 3d73f774..1026ca46 100644
--- a/MLEB/Translate/i18n/sandbox/mr.json
+++ b/MLEB/Translate/i18n/sandbox/mr.json
@@ -1,9 +1,53 @@
{
"@metadata": {
"authors": [
- "V.narsikar"
+ "V.narsikar",
+ "Sureshkhole"
]
},
+ "managetranslatorsandbox": "भाषांतरासाठीची धुळपाटी संचालित करा",
+ "tsb-filter-pending": "पडून राहिलेल्या विनंत्या",
+ "tsb-reminder-title-generic": "भाषांतरकार बनण्यासाठी तुमची पुर्ण ओळख द्या",
+ "tsb-reminder-content-generic": "नमस्कार $1,\n\nया संकेतस्थळावर नोंदणी केल्याबद्दल धन्यवाद {{SITENAME}}.\nजर तुम्ही भाषांतराची चाचणी उत्तीर्ण झालात तर प्रचालक लागलीच तुम्हांला भाषांतरासाठीचे संपुर्ण अधिकार बहाल करतील.\n\nया ठिकाणी येऊन काही भाषांतरे पुर्ण करा :\n$2\n\n$3,\n{{SITENAME}} सदस्य",
+ "tsb-reminder-sending": "आठवण करुन देत आहे...",
+ "tsb-reminder-sent": "{{PLURAL:$1| $1 आठवण करुन देणारा संदेश पाठवला . वेळ: $2.|$1 आठवण करुन देणारे संदेश पाठवले. शेवटच्या संदेशाची वेळ: $2.}}",
+ "tsb-reminder-sent-new": "आठवण करुन देणारा संदेश पाठवला",
+ "tsb-reminder-failed": "आठवण करुन देणारा संदेश पाठवणे शक्य नाही.",
+ "tsb-email-promoted-subject": "तुम्ही आता {{SITENAME}} येथे भाषांतरकार आहात",
+ "tsb-email-promoted-body": "नमस्कार {{GENDER:$1|$1}},\n\nअभिनंदन! आपण {{SITENAME}} येथे केलेली चाचणी भाषांतरे मी तपासलीत व आपणास भाषांतरकाराचे पूर्ण अधिकार दिलेत.\nभाषांतर पुढे सुरु ठेवण्यास, {{SITENAME}} या संकेतस्थळावर या व दररोज या: $2\nस्वागत, आणि आपल्या योगदानाबद्दल आपणास धन्यवाद!\n\n{{GENDER:$3|$3}},\n{{SITENAME}} कर्मचारी",
+ "tsb-email-rejected-subject": "{{SITENAME}} वरील भाषांतरकार होण्यासाठीचा तुमचा अर्ज नाकारण्यात आला आहे.",
+ "tsb-email-rejected-body": "नमस्कार {{GENDER:$1|$1}},\n\n{{SITENAME}} या संकेतस्थळावर आपण भाषांतरकार होण्यासाठी अर्ज दिलात त्याबद्द्ल आपले आभार. परंतू आपल्याला हे कळवण्यास आम्हांला दु:ख होत आहे की आपल्या भाषांतराचा दर्जा कमी असल्यामुळे आमच्या अपेक्षांची पुर्तता आपल्या भाषांतराने होत नसल्याचे लक्षात आल्याने. आपला हा अर्ज नाकारण्यात आलेला आहे. \n\nजर तुम्हांला असे वाटत आहे की आपला अर्ज नजरचुकीमुळे नाकारला गेला आहे, तर आपण {{SITENAME}} ह्या ठिकाणी परत एकदा अर्ज करु शकता. येथे परत सनोंद-प्रवेश करा:\n$2\n\n{{GENDER:$3|$3}},\n{{SITENAME}} कर्मचारी",
+ "tsb-request-count": "$1 {{PLURAL:$1|विनंती|विनंत्या}}",
+ "tsb-all-languages-button-label": "सर्व भाषा",
+ "tsb-search-requests": "शोध निकाल",
+ "tsb-accept-button-label": "स्वीकारा",
+ "tsb-reject-button-label": "नामंजूर",
"tsb-selected-count": "{{PLURAL:$1|$1 सदस्य निवडला|$1 सदस्य निवडले}}",
- "tsb-no-requests-from-new-users": "नविन सदस्यांपासून काहीच विनंत्या नाहीत"
+ "tsb-older-requests": "$1 जुन्या{{PLURAL:$1|विनंती|विनंत्या}}",
+ "tsb-accept-all-button-label": "सर्व स्वीकारा",
+ "tsb-reject-all-button-label": "सर्व नाकारा",
+ "tsb-user-posted-a-comment": "भाषांतरकार नाही",
+ "tsb-reminder-link-text": "वि-पत्राने आठवण करणारा संदेश पाठवा.",
+ "tsb-didnt-make-any-translations": "ह्या सदस्याने कोणतीही भाषांतरे केली नाहीत.",
+ "tsb-translations-source": "स्रोत",
+ "tsb-translations-user": "{{GENDER:$1|सदस्य}} भाषांतरे",
+ "tsb-translations-current": "सध्याची भाषांतरे",
+ "tsb-delete-userpage-summary": "धुळपाटी सदस्याचे सदस्यपान काढून टाकीत आहे",
+ "tsb-reject-confirmation": "{{PLURAL:$1|सदस्य|सदस्ये}} नाकारले",
+ "tsb-accept-confirmation": "{{PLURAL:$1|सदस्य|सदस्ये}} स्वीकारले",
+ "translationstash": "सुस्वागतम्‌",
+ "translate-translationstash-welcome": "सुस्वागतम {{GENDER:$1|$1}}, तुम्ही नविन भाषांतरकार आहात",
+ "translate-translationstash-welcome-note": "भाषांतराच्या साधनांची ओळख करुन घ्या. काही संदेशांचे भाषांतर करा, जेणेकरुन तुम्हांला भाषांतराचे संपुर्ण अधिकार मिळतील आणि मग तुम्ही तुमच्या आवडत्या प्रकल्पांमध्ये तुमचे योगदान देऊ शकाल.",
+ "translate-translationstash-initialtranslation": "तुमची सुरुवातीची भाषांतरे",
+ "translate-translationstash-translations": "$1 पुर्ण झाले {{PLURAL:$1|भाषांतर|भाषांतरे}}",
+ "translate-translationstash-skip-button-label": "दुसरे चाचपडा",
+ "tsb-limit-reached-title": "तुमच्या भाषांतराबद्दल धन्यवाद",
+ "tsb-limit-reached-body": "तुम्ही नविन भाषांतरांच्या चाचणी मर्यादेपर्यंत पोहोचला आहात.\nआमच्या तपासणी गटाकडून आपली भाषांतरे लवकरच तपासली जातील.\nआणि तुम्ही अमर्यादित भाषांतरे करु शकाल.",
+ "tsb-no-requests-from-new-users": "नविन सदस्यांपासून कोणत्याही विनंत्या नाहीत",
+ "tsb-create-user-page": "आपले सदस्यपान तयार करा",
+ "log-name-translatorsandbox": "भाषांतर धुळपाटी नोंदी",
+ "log-description-translatorsandbox": "भाषांतर धुळपाटी सदस्यांच्या क्रियांच्या नोंदी",
+ "logentry-translatorsandbox-promoted": "$1 {{GENDER:$2|पदोन्नती}} $3 to {{GENDER:$4|भाषांतरकार}}",
+ "logentry-translatorsandbox-rejected": "$1 {{GENDER:$2|नाकारले}} भाषांतरकार बनण्यासाठीचा $3 यांचा अर्ज.",
+ "logentry-newusers-tsbpromoted": "धुळपाटीवरुन पदोन्नती होऊन $3 {{GENDER:$2|created}} यांचे सदस्यखाते बनवण्यात आले."
}
diff --git a/MLEB/Translate/i18n/sandbox/ms.json b/MLEB/Translate/i18n/sandbox/ms.json
index f358a384..f045cdfa 100644
--- a/MLEB/Translate/i18n/sandbox/ms.json
+++ b/MLEB/Translate/i18n/sandbox/ms.json
@@ -1,7 +1,8 @@
{
"@metadata": {
"authors": [
- "Anakmalaysia"
+ "Anakmalaysia",
+ "Jeluang Terluang"
]
},
"managetranslatorsandbox": "Uruskan kotak pasir penterjemah",
@@ -15,7 +16,7 @@
"tsb-email-promoted-subject": "Anda kini seorang penterjemah di {{SITENAME}}",
"tsb-email-promoted-body": "{{GENDER:$1|$1}},\n\nTahniah! Saya telah memeriksa terjemahan ujian yang telah anda lakukan di {{SITENAME}}, dan ole itu memberi anda hak penterjemah sepenuhnya.\n\nDatanglah ke {{SITENAME}} untuk terus menterjemah sekarang dan setiap hari:\n$2\n\nSelamat datang dan terima kasih atas sumbangan anda!\n\n{{GENDER:$3|$3}},\nKakitangan {{SITENAME}}",
"tsb-email-rejected-subject": "Permohonan anda untuk menjadi penterjemah di {{SITENAME}} telah ditolak",
- "tsb-email-rejected-body": "{{GENDER:$1|$1}},\n\nTerima kasih kerana memohon untuk menjadi penterjemah di {{SITENAME}}. Dengan dukacitanya ingin saya maklumkan bahawa saya telah menolak permohonan anda kerana mutu penterjemahan anda tidak memenuhi syarat.\n\nJika anda berpendapat bahawa penolakan permohonan anda adalah kesilapan, sila cuba untuk memohon semula sebagai penterjemah di {{SITENAME}}. Anda boleh mendaftar di sini:\n$2\n\n{{GENDER:$3|$3}},\nKakitangan {{SITENAME}}",
+ "tsb-email-rejected-body": "{{GENDER:$1|$1}},\n\nTerima kasih kerana memohon untuk menjadi penterjemah di {{SITENAME}}. Dengan dukacitanya ingin saya maklumkan bahawa saya telah menolak permohonan anda kerana mutu penterjemahan anda tidak memenuhi syarat.\n\nJika anda berpendapat bahawa penolakan permohonan anda ialah kesilapan, sila cuba untuk memohon semula sebagai penterjemah di {{SITENAME}}. Anda boleh mendaftar di sini:\n$2\n\n{{GENDER:$3|$3}},\nKakitangan {{SITENAME}}",
"tsb-request-count": "$1 {{PLURAL:$1|permintaan}}",
"tsb-all-languages-button-label": "Semua bahasa",
"tsb-search-requests": "Permohonan carian",
diff --git a/MLEB/Translate/i18n/sandbox/ne.json b/MLEB/Translate/i18n/sandbox/ne.json
index 59424bb2..2006101b 100644
--- a/MLEB/Translate/i18n/sandbox/ne.json
+++ b/MLEB/Translate/i18n/sandbox/ne.json
@@ -1,9 +1,11 @@
{
"@metadata": {
"authors": [
- "सरोज कुमार ढकाल"
+ "सरोज कुमार ढकाल",
+ "NehalDaveND"
]
},
+ "tsb-all-languages-button-label": "अरु भाषाहरू",
"tsb-older-requests": "$1 पुराना {{PLURAL:$1|अनुरोध|अनुरोधहरू}}",
"tsb-didnt-make-any-translations": "यस प्रयोगकर्ताले कुनै अनुवाद गरेको छैन ।",
"log-name-translatorsandbox": "अनुवाद प्रयोगस्थल"
diff --git a/MLEB/Translate/i18n/sandbox/nl.json b/MLEB/Translate/i18n/sandbox/nl.json
index f9dca95e..2477a4df 100644
--- a/MLEB/Translate/i18n/sandbox/nl.json
+++ b/MLEB/Translate/i18n/sandbox/nl.json
@@ -4,7 +4,10 @@
"SPQRobin",
"Siebrand",
"Sjoerddebruin",
- "Arent"
+ "Arent",
+ "Mainframe98",
+ "Mar(c)",
+ "Jeroen N"
]
},
"managetranslatorsandbox": "Vertalersszandbak beheren",
@@ -12,11 +15,11 @@
"tsb-reminder-title-generic": "Voltooi uw introductie om vertaler te worden",
"tsb-reminder-content-generic": "Hallo $1,\n\nBedankt voor het registreren bij {{SITENAME}}.\n\nAls u uw testvertalingen afrondt, kunnen de beheerders u snel volledige vertaaltoegang geven.\n\nMaak alstublieft nog wat meer vertalingen:\n$2\n\n$3,\nMedewerker van {{SITENAME}}",
"tsb-reminder-sending": "Herinnering verzenden...",
- "tsb-reminder-sent": "{{PLURAL:$1|Herinnering $2 verzonden|$1 herinneringen verzonden, de laatste $2}}",
+ "tsb-reminder-sent": "{{PLURAL:$1|$1 herinnering $2 verzonden. Verzendtijd: $2.|$1 herinneringen verzonden. Verzendtijd van de laatste: $2}}",
"tsb-reminder-sent-new": "Herinnering verzonden",
"tsb-reminder-failed": "Herinnering verzenden mislukt",
"tsb-email-promoted-subject": "U bent nu vertaler bij {{SITENAME}}",
- "tsb-email-promoted-body": "Hallo {{GENDER:$1|$1}},\n\nGefeliciteerd! Ik heb de testvertalingen gecontroleerd die u op {{SITENAME}} hebt gemaakt en heb uw permanente vertaalrechten gegeven.\n\nKom nu (en bij voorkeur iedere dag) naar {{SITENAME}} om door te gaan met vertalen:\n$2\n\nWelkom en dank u wel voor uw bijdragen!\n\n{{GENDER:$3|$3}},\nMedewerker van {{SITENAME}}",
+ "tsb-email-promoted-body": "Hallo {{GENDER:$1|$1}},\n\nGefeliciteerd! Ik heb de testvertalingen gecontroleerd die u op {{SITENAME}} hebt gemaakt en heb u permanente vertaalrechten gegeven.\n\nKom nu (en bij voorkeur iedere dag) naar {{SITENAME}} om door te gaan met vertalen:\n$2\n\nWelkom en dank u wel voor uw bijdragen!\n\n{{GENDER:$3|$3}},\nMedewerker van {{SITENAME}}",
"tsb-email-rejected-subject": "Uw aanvraag om vertaler te worden bij {{SITENAME}} is afgewezen",
"tsb-email-rejected-body": "Hallo {{GENDER:$1|$1}},\n\nDank u voor de aanmelding als vertaler bij {{SITENAME}}. Ik vind het jammer u moeten melden dat ik de aanmelding heb geweigerd aangezien de kwaliteit van uw vertalingen niet aan de eisen voldoet.\n\nAls u van mening bent dat deze afwijzing onjuist is, dan kunt u zich opnieuw als vertaler aanmelden bij {{SITENAME}}. U kunt zich hieronder inschrijven:\n$2\n\n{{GENDER:$3|$3}}, \n{{SITENAME}} staff",
"tsb-request-count": "{{PLURAL:$1|Eén verzoek|$1 verzoeken}}",
@@ -32,20 +35,22 @@
"tsb-reminder-link-text": "Herinnering per e-mail verzenden",
"tsb-didnt-make-any-translations": "Deze gebruiker heeft nog niets vertaald.",
"tsb-translations-source": "Bron",
- "tsb-translations-user": "Gebruikersvertalingen",
+ "tsb-translations-user": "{{GENDER:$1|Gebruikersvertalingen}}",
"tsb-translations-current": "Bestaande vertalingen",
"tsb-delete-userpage-summary": "Gebruikerspagina van een zandbakgebruiker verwijderd",
- "translationstash": "Welkom",
+ "tsb-reject-confirmation": "{{PLURAL:$1|Gebruiker|Gebruikers}} afgewezen",
+ "tsb-accept-confirmation": "{{PLURAL:$1|Gebruiker|Gebruikers}} toegelaten",
+ "translationstash": "Welkomstpagina voor vertalers",
"translate-translationstash-welcome": "Welkom {{GENDER:$1|$1}}, u bent nu vertaler",
"translate-translationstash-welcome-note": "Raak vertrouwd met de vertaalhulpmiddelen. Vertaal een aantal willekeurig geselecteerde berichten en krijg volledige vertaalrechten voor uw favoriete projecten.",
"translate-translationstash-initialtranslation": "Uw vertaling",
"translate-translationstash-translations": "$1 voltooide {{PLURAL:$1|vertaling|vertalingen}}",
"translate-translationstash-skip-button-label": "Nog één proberen",
"tsb-limit-reached-title": "Bedankt voor uw vertalingen",
- "tsb-limit-reached-body": "U hebt de limiet voor het aantal vertalingen voor nieuwe vertalers bereikt.\nOns team gaat ze snel controleren en promoveert uw gebruiker snel, zodat u zonder beperkingen kunt gaan vertalen.",
+ "tsb-limit-reached-body": "U hebt de limiet voor het aantal vertalingen voor nieuwe vertalers bereikt.\nOns team gaat ze snel controleren en promoveert uw account snel, zodat u zonder beperkingen kunt gaan vertalen.",
"tsb-no-requests-from-new-users": "Geen verzoeken van nieuwe gebruikers",
"tsb-create-user-page": "Eenvoudige gebruikerspagina aangemaakt",
- "log-name-translatorsandbox": "Vertalingenzandbak",
+ "log-name-translatorsandbox": "Vertalingenzandbaklogboek",
"log-description-translatorsandbox": "Een logboek van de handelingen van gebruikers in de vertalingenzandbak.",
"logentry-translatorsandbox-promoted": "$1 {{GENDER:$2|heeft}} $3 gepromoveerd tot {{GENDER:$4|vertaler}}",
"logentry-translatorsandbox-rejected": "$1 {{GENDER:$2|heeft}} het verzoek van \"$3\" om vertaler te worden geweigerd",
diff --git a/MLEB/Translate/i18n/sandbox/oc.json b/MLEB/Translate/i18n/sandbox/oc.json
index 08b8c6e8..830a392f 100644
--- a/MLEB/Translate/i18n/sandbox/oc.json
+++ b/MLEB/Translate/i18n/sandbox/oc.json
@@ -7,5 +7,11 @@
"managetranslatorsandbox": "Gerir lo nauc de sabla de traduccion",
"tsb-filter-pending": "Requèstas en espèra",
"tsb-reminder-title-generic": "Completatz vòstra presentacion per venir un traductor",
- "tsb-reminder-content-generic": "Bonjorn $1,\n\nMercé de vos èsser inscrich sus {{SITENAME}}. Se acabatz vòstras traduccions de tèst, los administrators poiràn lèu vos acordar un plen accès a las traduccions.\n\nVenètz sus $2 e fasètz qualques traduccions mai."
+ "tsb-reminder-content-generic": "Bonjorn $1,\n\nMercé de vos èsser inscrit sus {{SITENAME}}.\n\nSe acabatz vòstras traduccions de tèst, los administrators vos poiràn lèu acordar un plen accès a las traduccions.\n\nVenètz sus $2 e fasètz qualques traduccions mai.\n\n$2\n\n$3,\nL’equipa de {{SITENAME}}",
+ "tsb-all-languages-button-label": "Totas las lengas",
+ "tsb-didnt-make-any-translations": "Aqueste utilizaire a pas fait cap de traduccion.",
+ "tsb-translations-user": "Traduccions {{GENDER:$1|de l’utilizaire|de l’utilizaira}}",
+ "tsb-translations-current": "Traduccions existentas",
+ "translate-translationstash-translations": "Avètz acabat $1 {{PLURAL:$1|traduccion|traduccions}}.",
+ "tsb-limit-reached-title": "Mercé per vòstras traduccions"
}
diff --git a/MLEB/Translate/i18n/sandbox/pl.json b/MLEB/Translate/i18n/sandbox/pl.json
index 3203c051..ca8fe6de 100644
--- a/MLEB/Translate/i18n/sandbox/pl.json
+++ b/MLEB/Translate/i18n/sandbox/pl.json
@@ -1,32 +1,44 @@
{
"@metadata": {
"authors": [
- "Chrumps"
+ "Chrumps",
+ "CiaPan"
]
},
"managetranslatorsandbox": "Zarządzanie brudnopisem tłumacza",
"tsb-filter-pending": "Oczekujące wnioski",
"tsb-reminder-sending": "Wysyłanie przypomnienia...",
+ "tsb-reminder-sent": "{{PLURAL:$1|Wysłane $1 przypomnienie. Czas: $2.|Wysłane $1 przypomnienia. Czas ostatniego: $2|Wysłane $1 przypomnień. Czas ostatniego: $2}}",
"tsb-reminder-sent-new": "Wyślij przypomnienie",
"tsb-reminder-failed": "Wysłanie przypomnienia nie powiodło się",
"tsb-email-promoted-subject": "Teraz jesteś tłumaczem w serwisie {{SITENAME}}",
+ "tsb-email-promoted-body": "Witaj {{GENDER:$1|$1}},\n\nGratulacje! {{GENDER:$3|Sprawdziłem|Sprawdziłam}} Twoje testowe tłumaczenia wykonane w {{SITENAME}} i {{GENDER:$3|przyznałem|przyznałam}} Ci pełne prawa tłumacza.\n\nPrzyjdź do {{SITENAME}}, aby kontynuować tłumaczenie:\n$2\n\nWitamy i dziękujemy za Twój wkład!\n\n{{GENDER:$3|$3}},\nZespół {{SITENAME}}",
"tsb-email-rejected-subject": "Twój wniosek o uzyskanie uprawnień tłumacza witryny {{SITENAME}} została odrzucony",
+ "tsb-email-rejected-body": "Witaj {{GENDER:$1|$1}},\n\nDziękujemy za zgłoszenie się jako tłumacz w {{SITENAME}}. Z przykrością informuję, że {{GENDER:$3|odrzuciłem|odrzuciłam}} Twój wniosek, ponieważ jakość twoich tłumaczeń nie spełniała wymagań.\n\nJeśli uważasz, że Twoje zgłoszenie zostało odrzucone przez pomyłkę, spróbuj ponownie złożyć wniosek jako tłumacz w {{SITENAME}}. Możesz zarejestrować się tutaj:\n$2\n\n{{GENDER:$3|$3}},\nZespół {{SITENAME}}",
"tsb-request-count": "$1 {{PLURAL:$1|wniosek|wnioski|wniosków}}",
"tsb-all-languages-button-label": "Wszystkie języki",
"tsb-accept-button-label": "Akceptuj",
"tsb-reject-button-label": "Odrzuć",
+ "tsb-selected-count": "{{PLURAL:$1|$1 wybrany użytkownik|$1 wybranych użytkowników}}",
+ "tsb-older-requests": "$1 {{PLURAL:$1|starszy wniosek|starsze wnioski|starszych wniosków}}",
"tsb-accept-all-button-label": "Akceptuje wszystkie",
"tsb-reject-all-button-label": "Odrzuć wszystkie",
"tsb-didnt-make-any-translations": "Ten użytkownik nie wykonał żadnego tłumaczenia.",
"tsb-translations-source": "Źródło",
"tsb-translations-user": "Tłumaczenia {{GENDER:$1|użytkownika|użytkowniczki}}",
"tsb-translations-current": "Istniejące tłumaczenia",
+ "tsb-reject-confirmation": "{{PLURAL:$1|Użytkownik odrzucony|Użytkownicy odrzuceni}}",
+ "tsb-accept-confirmation": "{{PLURAL:$1|Użytkownik zaakceptowany|Użytkownicy zaakceptowani}}",
"translationstash": "Powitanie",
"translate-translationstash-welcome": "Witaj $1, jesteś {{GENDER:$1|nowym tłumaczem|nową tłumaczką}}",
+ "translate-translationstash-welcome-note": "Zapoznaj się z narzędziami tłumacza. Przetłumacz część komunikatów i zostań pełnoprawnym tłumaczem aby uczestniczyć w wybranych projektach.",
+ "translate-translationstash-initialtranslation": "Twoje pierwotne tłumaczenie",
"translate-translationstash-translations": "$1 {{PLURAL:$1|ukończone tłumaczenie|ukończone tłumaczenia|ukończonych tłumaczeń}}",
+ "translate-translationstash-skip-button-label": "Spróbuj innego",
"tsb-limit-reached-title": "Dziękuję za Twoje tłumaczenia",
+ "tsb-no-requests-from-new-users": "Brak wniosków od nowych użytkowników",
"tsb-create-user-page": "Utwórz prostą stronę użytkownika",
- "log-name-translatorsandbox": "Brudnopis tłumaczeń",
+ "log-name-translatorsandbox": "Rejestr brudnopisu tłumaczeń",
"log-description-translatorsandbox": "To jest rejestr działań użytkowników brudnopisu tłumaczeń",
"logentry-translatorsandbox-promoted": "$1 {{GENDER:$2|awansował|awansowała}} $3 na {{GENDER:$4|tłumacza|tłumaczkę}}",
"logentry-translatorsandbox-rejected": "$1 {{GENDER:$2|odrzucił|odrzuciła}} wniosek „$3”, aby przyznać uprawnienia tłumacza"
diff --git a/MLEB/Translate/i18n/sandbox/ps.json b/MLEB/Translate/i18n/sandbox/ps.json
index 69ebbcba..d2611d1e 100644
--- a/MLEB/Translate/i18n/sandbox/ps.json
+++ b/MLEB/Translate/i18n/sandbox/ps.json
@@ -4,6 +4,11 @@
"Ahmed-Najib-Biabani-Ibrahimkhel"
]
},
+ "managetranslatorsandbox": "ژباړن شگبکس مهارول",
+ "tsb-reminder-sent-new": "يوه يادگيرنه ولېږله",
+ "tsb-reminder-failed": "د يادگيرنې لېږنه نابرياله شوه",
+ "tsb-email-promoted-subject": "اوس تاسې په {{SITENAME}} کې يو ژباړن ياست",
+ "tsb-request-count": "$1 {{PLURAL:$1|غوښتنه|غوښتنې}}",
"tsb-all-languages-button-label": "ټولې ژبې",
"tsb-search-requests": "د پلټنې غوښتنې",
"tsb-accept-button-label": "منل",
@@ -16,8 +21,14 @@
"tsb-reminder-link-text": "د يادولو برېښليک ورلېږل",
"tsb-didnt-make-any-translations": "دغه کارن کومې ژباړې نه دي ترسره کړي.",
"tsb-translations-source": "سرچينه",
- "tsb-translations-user": "کارن ژباړې",
+ "tsb-translations-user": "{{GENDER:$1|کارن}} ژباړې",
"tsb-translations-current": "شته ژباړې",
"translationstash": "ښه راغلئ",
- "translate-translationstash-welcome": "ښه راغلئ {{GENDER:$1|$1}}، تاسې يو نوی ژباړن ياست"
+ "translate-translationstash-welcome": "ښه راغلئ {{GENDER:$1|$1}}، تاسې يو نوی ژباړن ياست",
+ "translate-translationstash-initialtranslation": "ستاسې لومړنۍ ژباړه",
+ "translate-translationstash-translations": "$1 {{PLURAL:$1|ژباړه بشپړه شوې|ژباړې بشپړې شوي}}",
+ "translate-translationstash-skip-button-label": "بل آزمويل",
+ "tsb-limit-reached-title": "له ژباړو څخه مو مننه",
+ "tsb-create-user-page": "يو بنسټيز کارن مخ جوړول",
+ "log-name-translatorsandbox": "د ژباړې شگبکس يادښت"
}
diff --git a/MLEB/Translate/i18n/sandbox/pt-br.json b/MLEB/Translate/i18n/sandbox/pt-br.json
index fe703f2c..c731a992 100644
--- a/MLEB/Translate/i18n/sandbox/pt-br.json
+++ b/MLEB/Translate/i18n/sandbox/pt-br.json
@@ -1,8 +1,54 @@
{
"@metadata": {
"authors": [
- "Fabsouza1"
+ "Fabsouza1",
+ "Felipe L. Ewald",
+ "Eduardo Addad de Oliveira"
]
},
- "tsb-reminder-title-generic": "Complete a sua apresentação para tornar-se um tradutor"
+ "managetranslatorsandbox": "Gerenciar tradutor da página de testes",
+ "tsb-filter-pending": "Solicitações pendentes",
+ "tsb-reminder-title-generic": "Complete a sua apresentação para tornar-se um tradutor",
+ "tsb-reminder-content-generic": "Oi $1,\n\nObrigado por se registrar com {{SITENAME}}.\n\nSe você completar as suas traduções de teste, os administradores irão conceder acesso de tradução completo logo depois.\n\nPor favor, faça mais traduções aqui:\n$2\n\n$3,\n equipe {{SITENAME}}",
+ "tsb-reminder-sending": "Enviando o lembrete ...",
+ "tsb-reminder-sent": "{{PLURAL:$1|Enviado $1 lembrete. Tempo: $2.|Enviados $1 lembretes. Hora do último: $2.}}",
+ "tsb-reminder-sent-new": "Enviar um lembrete",
+ "tsb-reminder-failed": "O envio do lembrete falhou",
+ "tsb-email-promoted-subject": "Você agora é tradutor em {{SITENAME}}",
+ "tsb-email-promoted-body": "Oi {{GENDER:$1|$1}},\n\nParabéns! Verifiquei as traduções de teste que você fez em {{SITENAME}} e dei-lhe direitos de tradutor completo.\n\nVá para {{SITENAME}} para continuar a traduzir agora e todos os dias:\n$2\nNBem-vindo e obrigado por suas contribuições!\n\n{{GENDER:$3|$3}},\n equipe {{SITENAME}}",
+ "tsb-email-rejected-subject": "Sua candidatura para ser um tradutor em {{SITENAME}} foi rejeitada",
+ "tsb-email-rejected-body": "Oi {{GENDER:$1|$1}},\n\nObrigado por se candidatar como tradutor em {{SITENAME}}. Lamento informar-lhe que eu rejeitei o seu pedido, porque a qualidade das suas traduções não cumpriu os requisitos.\n\nSe você acha que o seu pedido foi rejeitado por engano, tente se candidatar novamente como tradutor em {{SITENAME}}. Você pode se inscrever aqui: \n$2\n\n{{GENDER:$3|$3}},\nequipe {{SITENAME}}",
+ "tsb-request-count": "$1 {{PLURAL:$1|pedido|pedidos}}",
+ "tsb-all-languages-button-label": "Todos os idiomas",
+ "tsb-search-requests": "Buscar pedidos",
+ "tsb-accept-button-label": "Aceitar",
+ "tsb-reject-button-label": "Rejeitar",
+ "tsb-selected-count": "{{PLURAL:$1|$1 usuário selecionado|$1 usuários selecionados}}",
+ "tsb-older-requests": "$1 {{PLURAL:$1|pedido mais antigo|pedidos mais antigos}}",
+ "tsb-accept-all-button-label": "Aceitar todos",
+ "tsb-reject-all-button-label": "Rejeitar todas",
+ "tsb-user-posted-a-comment": "Não é um tradutor",
+ "tsb-reminder-link-text": "Enviar lembrete de e-mail",
+ "tsb-didnt-make-any-translations": "Este usuário não fez nenhuma tradução.",
+ "tsb-translations-source": "Fonte",
+ "tsb-translations-user": "{{GENDER:$1|Traduções do usuário|Traduções da usuária}}",
+ "tsb-translations-current": "Traduções existentes",
+ "tsb-delete-userpage-summary": "Excluindo a página de usuário de um usuário da página de testes",
+ "tsb-reject-confirmation": "{{PLURAL:$1|Usuário rejeitado|Usuários rejeitados}}",
+ "tsb-accept-confirmation": "{{PLURAL:$1|Usuário aceito|Usuários aceitos}}",
+ "translationstash": "Bem-vindo(a)",
+ "translate-translationstash-welcome": "Bem-vindo {{GENDER:$1|$1}}, você é um novo tradutor",
+ "translate-translationstash-welcome-note": "Familiarize-se com as ferramentas de tradução. Traduza algumas mensagens e obtenha direitos de tradutor completos para participar dos seus projetos favoritos.",
+ "translate-translationstash-initialtranslation": "Sua tradução inicial",
+ "translate-translationstash-translations": "$1 completou {{PLURAL:$1|a tradução|as traduções}}",
+ "translate-translationstash-skip-button-label": "Tentar outro",
+ "tsb-limit-reached-title": "Obrigado pelas suas traduções",
+ "tsb-limit-reached-body": "Você alcançou o limite de tradução para novos tradutores.\nO nosso time verificará e atualizará sua conta em breve.\nEntão você poderá traduzir sem limites.",
+ "tsb-no-requests-from-new-users": "Nenhuma solicitação de novos usuários",
+ "tsb-create-user-page": "Página de usuário básica criada",
+ "log-name-translatorsandbox": "Registro da página de testes de tradução",
+ "log-description-translatorsandbox": "Um registro de ações dos usuários de página de testes de tradução",
+ "logentry-translatorsandbox-promoted": "$1 {{GENDER:$2|promoveu}} $3 para {{GENDER:$4|tradutor|tradutora}}",
+ "logentry-translatorsandbox-rejected": "$1 {{GENDER:$2|rejeitou}} o pedido de \"$3\" para se tornar um tradutor",
+ "logentry-newusers-tsbpromoted": "A conta de usuário $3 foi {{GENDER:$2|criada}} por promoção da página de testes"
}
diff --git a/MLEB/Translate/i18n/sandbox/pt.json b/MLEB/Translate/i18n/sandbox/pt.json
index b9299131..948e6871 100644
--- a/MLEB/Translate/i18n/sandbox/pt.json
+++ b/MLEB/Translate/i18n/sandbox/pt.json
@@ -2,7 +2,9 @@
"@metadata": {
"authors": [
"Hamilton Abreu",
- "Vitorvicentevalente"
+ "Vitorvicentevalente",
+ "Fúlvio",
+ "Felipe L. Ewald"
]
},
"managetranslatorsandbox": "Administrar a área de teste de tradutores",
@@ -10,11 +12,11 @@
"tsb-reminder-title-generic": "Conclua a introdução para se tornar tradutor",
"tsb-reminder-content-generic": "Olá $1,\n\nObrigado por se registar na wiki {{SITENAME}}.\n\nSe concluir as traduções de teste, pouco depois os administradores concedem-lhe todos os privilégios de tradução.\n\nVenha à wiki e faça algumas traduções aqui:\n$2\n\n$3,\nA equipa da wiki {{SITENAME}}",
"tsb-reminder-sending": "A enviar a lembrança...",
- "tsb-reminder-sent": "Enviou {{PLURAL:$1|$1 lembrança $2|$1 lembranças, a última $2}}",
+ "tsb-reminder-sent": "{{PLURAL:$1|Enviou $1 lembrança. Hora: $2.|Enviou $1 lembranças. Hora da última: $2.}}",
"tsb-reminder-sent-new": "Enviou uma lembrança",
"tsb-reminder-failed": "O envio da lembrança falhou",
- "tsb-email-promoted-subject": "É agora tradutor(a) na wiki {{SITENAME}}",
- "tsb-email-promoted-body": "Olá {{GENDER:$1|$1}},\n\nParabéns! Revi as traduções que fez na wiki {{SITENAME}} e concedi-lhe todos os privilégios de tradução.\n\nVenha hoje e todos os dias à wiki {{SITENAME}} para continuar a traduzir:\n$2\n\nBem-vindo(a) e obrigado pelas suas contribuições!\n\n{{GENDER:$3|$3}},\nA equipa da wiki {{SITENAME}}",
+ "tsb-email-promoted-subject": "É agora tradutor na wiki {{SITENAME}}",
+ "tsb-email-promoted-body": "Olá {{GENDER:$1|$1}},\n\nParabéns! Revi as traduções de teste que fez na wiki {{SITENAME}} e concedi-lhe todos os privilégios de tradução.\n\nVenha hoje e todos os dias à wiki {{SITENAME}} para continuar a traduzir:\n$2\n\nBem-vindo(a) e obrigado pelas suas contribuições!\n\n{{GENDER:$3|$3}},\nA equipa da wiki {{SITENAME}}",
"tsb-email-rejected-subject": "O seu pedido para tornar-se tradutor na wiki {{SITENAME}} foi rejeitado",
"tsb-email-rejected-body": "Olá {{GENDER:$1|$1}},\n\nObrigado por se ter candidatado a tradutor na wiki {{SITENAME}}. Lamento informar que rejeitei o seu pedido, porque a qualidade das traduções não preencheu os requisitos.\n\nSe acredita que a rejeição resulta de um erro de avaliação, tente candidatar-se novamente a tradutor na wiki {{SITENAME}}, por favor. Pode inscrever-se aqui:\n$2\n\n{{GENDER:$3|$3}},\nA equipa da wiki {{SITENAME}}",
"tsb-request-count": "$1 {{PLURAL:$1|pedido|pedidos}}",
@@ -30,9 +32,11 @@
"tsb-reminder-link-text": "Enviar lembrança por correio eletrónico",
"tsb-didnt-make-any-translations": "Este utilizador não fez traduções.",
"tsb-translations-source": "Fonte",
- "tsb-translations-user": "Traduções {{GENDER:$1|do utilizador|da utilizadora|do(a) utilizador(a)}}",
+ "tsb-translations-user": "Traduções {{GENDER:$1|do utilizador|da utilizadora}}",
"tsb-translations-current": "Traduções existentes",
"tsb-delete-userpage-summary": "A eliminar a página de utilizador de um utilizador da área de teste de tradutores",
+ "tsb-reject-confirmation": "{{PLURAL:$1|Utilizador rejeitado|Utilizadores rejeitados}}",
+ "tsb-accept-confirmation": "{{PLURAL:$1|Utilizador aceitado|Utilizadores aceitados}}",
"translationstash": "Bem-vindo(a)",
"translate-translationstash-welcome": "{{GENDER:$1|Bem-vindo $1, é um novo tradutor|Bem-vinda $1, é uma nova tradutora}}",
"translate-translationstash-welcome-note": "Familiarize-se com as ferramentas de tradução. Traduza algumas mensagens o obtenha todos os privilégios de tradutor para participar nos seus projetos preferidos.",
@@ -46,6 +50,6 @@
"log-name-translatorsandbox": "Registo da área de teste de tradutores",
"log-description-translatorsandbox": "Um registo das operações sobre utilizadores da área de teste de tradutores",
"logentry-translatorsandbox-promoted": "$1 {{GENDER:$2|promoveu}} $3 a {{GENDER:$4|tradutor|tradutora}}",
- "logentry-translatorsandbox-rejected": "$1 {{GENDER:$2|rejeitou}} o pedido de \"$3\" para tornar-se tradutor",
+ "logentry-translatorsandbox-rejected": "$1 {{GENDER:$2|rejeitou}} o pedido de \"$3\" para se tornar tradutor",
"logentry-newusers-tsbpromoted": "A conta $3 foi {{GENDER:$2|criada}} por promoção da área de teste"
}
diff --git a/MLEB/Translate/i18n/sandbox/qqq.json b/MLEB/Translate/i18n/sandbox/qqq.json
index 8fad8dd8..44841bec 100644
--- a/MLEB/Translate/i18n/sandbox/qqq.json
+++ b/MLEB/Translate/i18n/sandbox/qqq.json
@@ -6,7 +6,9 @@
"Nike",
"Raymond",
"Shirayuki",
- "Purodha"
+ "Purodha",
+ "Nemo bis",
+ "Mhutti1"
]
},
"managetranslatorsandbox": "{{doc-special|TranslateSandbox}}",
@@ -14,7 +16,7 @@
"tsb-reminder-title-generic": "Subject of an email",
"tsb-reminder-content-generic": "Body of an email. Parameters:\n* $1 - user name of the recipient\n* $3 - URL to the website",
"tsb-reminder-sending": "Shown near {{msg-mw|tsb-reminder-link-text}} while the reminder email is being sent.",
- "tsb-reminder-sent": "Shown near {{msg-mw|tsb-reminder-link-text}} after the reminder email was successfully sent. Parameters:\n* $1 - the number of reminders that were already sent\n* $2 - the human timestamp of the last time a reminder was sent. It is either a date or one of the ago formats in https://github.com/wikimedia/mediawiki-extensions-cldr/blob/master/CldrNames/CldrNamesEn.php#L1151",
+ "tsb-reminder-sent": "Shown near {{msg-mw|tsb-reminder-link-text}} after the reminder email was successfully sent. Parameters:\n* $1 - the number of reminders that were already sent\n* $2 - the last time a reminder was sent: {{Doc-human-timestamp|12:00|10}}",
"tsb-reminder-sent-new": "Shown near {{msg-mw|tsb-reminder-link-text}} after sending a new reminder.",
"tsb-reminder-failed": "Shown near {{msg-mw|tsb-reminder-link-text}} if sending the reminder email failed.",
"tsb-email-promoted-subject": "The subject for an email that announces that a user received full translation rights (\"promoted\").",
@@ -37,6 +39,8 @@
"tsb-translations-user": "Table header label for user translations in [[Special:TranslateSandbox]].\n\nParameters:\n* $1 - user, can be used for GENDER",
"tsb-translations-current": "Table header label for existing translations in [[Special:TranslateSandbox]].",
"tsb-delete-userpage-summary": "Edit summary for deleting the user page of a sandboxed user.",
+ "tsb-reject-confirmation": "Bubble notification confirming user(s) has been rejected",
+ "tsb-accept-confirmation": "Bubble notification confirming user(s) has been accepted",
"translationstash": "Page title for [[Special:TranslationStash]].\n{{Identical|Welcome}}",
"translate-translationstash-welcome": "Title text shown for the [[Special:TranslationStash]]. Parameters:\n* $1 - user name of the new translator",
"translate-translationstash-welcome-note": "Title note for the [[Special:TranslationStash]].",
@@ -50,6 +54,6 @@
"log-name-translatorsandbox": "{{doc-logpage}}",
"log-description-translatorsandbox": "Log page description",
"logentry-translatorsandbox-promoted": "{{logentry}}\n* $4 - The name of the user that was promoted, can be used for GENDER.",
- "logentry-translatorsandbox-rejected": "{{logentry}}",
+ "logentry-translatorsandbox-rejected": "{{logentry}}\n----\n$3 is a user, who has made a request, which was rejected by $1.",
"logentry-newusers-tsbpromoted": "{{logentry}}"
}
diff --git a/MLEB/Translate/i18n/sandbox/ro.json b/MLEB/Translate/i18n/sandbox/ro.json
index d95481d4..89ba9263 100644
--- a/MLEB/Translate/i18n/sandbox/ro.json
+++ b/MLEB/Translate/i18n/sandbox/ro.json
@@ -6,5 +6,24 @@
},
"managetranslatorsandbox": "Administrare cutie cu nisip traducător",
"tsb-filter-pending": "Cereri în așteptare",
- "tsb-reminder-title-generic": "Finalizați-vă introducerea pentru a deveni un translator verificat"
+ "tsb-reminder-title-generic": "Finalizați-vă propria prezentare pentru a deveni un traducător",
+ "tsb-all-languages-button-label": "Toate limbile",
+ "tsb-search-requests": "Căutare cereri",
+ "tsb-accept-button-label": "Acceptă",
+ "tsb-reject-button-label": "Respinge",
+ "tsb-selected-count": "{{PLURAL:$1|$1 utilizator selectat|$1 utilizatori selectați|$1 de utilizatori selectați}}",
+ "tsb-older-requests": "$1 {{PLURAL:$1|cerere mai veche|cereri mai vechi|de cereri mai vechi}}",
+ "tsb-accept-all-button-label": "Acceptă tot",
+ "tsb-reject-all-button-label": "Respinge tot",
+ "tsb-user-posted-a-comment": "Nu este traducător",
+ "tsb-translations-source": "Sursă",
+ "tsb-translations-user": "Traducerile {{GENDER:$1|utilizatorului|utilizatoarei}}",
+ "tsb-translations-current": "Traduceri existente",
+ "translationstash": "Bun venit",
+ "translate-translationstash-welcome": "Bune venit {{GENDER:$1|$1}}, sunteți un nou traducător",
+ "translate-translationstash-initialtranslation": "Traducerea dumnevoastră inițială",
+ "translate-translationstash-translations": "$1 {{PLURAL:$1|traducere finalizată|traduceri finalizate|de traduceri finalizate}}",
+ "translate-translationstash-skip-button-label": "Încercați o alta",
+ "tsb-limit-reached-title": "Mulțumim pentru traduceri",
+ "tsb-no-requests-from-new-users": "Nicio cerere din partea utilizatorilor noi"
}
diff --git a/MLEB/Translate/i18n/sandbox/ru.json b/MLEB/Translate/i18n/sandbox/ru.json
index 52271dcc..d22b9100 100644
--- a/MLEB/Translate/i18n/sandbox/ru.json
+++ b/MLEB/Translate/i18n/sandbox/ru.json
@@ -2,7 +2,11 @@
"@metadata": {
"authors": [
"Kaganer",
- "Okras"
+ "Okras",
+ "Redredsonia",
+ "Ole Yves",
+ "Stjn",
+ "Vlad5250"
]
},
"managetranslatorsandbox": "Управление песочницей переводчика",
@@ -10,7 +14,7 @@
"tsb-reminder-title-generic": "Завершите свой вводный курс, чтобы стать переводчиком.",
"tsb-reminder-content-generic": "Привет, $1!\n\nСпасибо за регистрацию на сайте «{{SITENAME}}».\n\nЕсли вы завершили свои пробные переводы, администраторы могут позднее предоставить вам полный доступ к инструменту перевода.\n\nПожалуйста, перейдите по ссылке $2 и сделайте ещё несколько переводов.\n\n$3,\nСотрудники сайта «{{SITENAME}}»",
"tsb-reminder-sending": "Отправка напоминания…",
- "tsb-reminder-sent": "{{PLURAL:$1|Отправлено $1 напоминание|Отправлены $1 напоминания, последнее —|Отправлены $1 напоминаний, последнее —}} $2",
+ "tsb-reminder-sent": "{{PLURAL:$1|Отправлено $1 напоминание. Время|Отправлены $1 напоминаний, время последнего|Отправлены $1 напоминания, время последнего}}: $2.",
"tsb-reminder-sent-new": "Напоминание отправлено",
"tsb-reminder-failed": "Отправка напоминания не удалась",
"tsb-email-promoted-subject": "Теперь вы — переводчик сайта «{{SITENAME}}»",
@@ -33,6 +37,8 @@
"tsb-translations-user": "Переводы {{GENDER:$1|пользователя}}",
"tsb-translations-current": "Существующие переводы",
"tsb-delete-userpage-summary": "Удаление страницы участника, относящейся к участнику из песочницы",
+ "tsb-reject-confirmation": "Отклонено: $1 участник{{PLURAL:$1||а|ов}}",
+ "tsb-accept-confirmation": "Принято: $1 участник{{PLURAL:$1||а|ов}}",
"translationstash": "Добро пожаловать",
"translate-translationstash-welcome": "Добро пожаловать, {{GENDER:$1|$1}}, теперь вы новый переводчик",
"translate-translationstash-welcome-note": "Ознакомьтесь с инструментами перевода. Переведите несколько сообщений и получите полные права переводчика, чтобы принять участие в понравившемся проекте.",
@@ -42,8 +48,8 @@
"tsb-limit-reached-title": "Спасибо за ваши переводы",
"tsb-limit-reached-body": "Вы достигли предела переводов для новых переводчиков.\nНаша команда проверит и обновит вашу учётную запись в ближайшее время.\nПосле этого вы сможете переводить без ограничений.",
"tsb-no-requests-from-new-users": "Нет запросов от новых участников",
- "tsb-create-user-page": "Создал простую страницу участника",
- "log-name-translatorsandbox": "Песочница для переводов",
+ "tsb-create-user-page": "Создана основная страница участника",
+ "log-name-translatorsandbox": "Журнал песочницы для переводов",
"log-description-translatorsandbox": "Журнал действий с участниками песочницы переводов",
"logentry-translatorsandbox-promoted": "$1 сделал{{GENDER:$2||а}}$3 {{GENDER:$4|переводчиком}}.",
"logentry-translatorsandbox-rejected": "$1 отклонил{{GENDER:$2||а}} запрос от «$3» на получение статуса переводчика.",
diff --git a/MLEB/Translate/i18n/sandbox/sr-ec.json b/MLEB/Translate/i18n/sandbox/sr-ec.json
index 1949c3a2..4d85284e 100644
--- a/MLEB/Translate/i18n/sandbox/sr-ec.json
+++ b/MLEB/Translate/i18n/sandbox/sr-ec.json
@@ -1,9 +1,19 @@
{
"@metadata": {
"authors": [
- "Milicevic01"
+ "Milicevic01",
+ "Obsuser",
+ "BadDog"
]
},
+ "tsb-all-languages-button-label": "Сви језици",
+ "tsb-accept-button-label": "Прихвати",
+ "tsb-reject-button-label": "Одбиј",
"tsb-accept-all-button-label": "Прихвати све",
- "tsb-reject-all-button-label": "Одбији све"
+ "tsb-reject-all-button-label": "Одбији све",
+ "tsb-translations-source": "Извор",
+ "tsb-create-user-page": "Направљена основна корисничка страница",
+ "log-name-translatorsandbox": "Дневник превода у песку",
+ "logentry-translatorsandbox-promoted": "$1 је {{GENDER:$2|унапредио|унапредила}} $3 у {{GENDER:$4|преводиоца}}",
+ "logentry-translatorsandbox-rejected": "$1 је {{GENDER:$2|одбио|одбила}} захтев корисника/це „$3” да постане преводилац"
}
diff --git a/MLEB/Translate/i18n/sandbox/sv.json b/MLEB/Translate/i18n/sandbox/sv.json
index c2baca28..4fd25908 100644
--- a/MLEB/Translate/i18n/sandbox/sv.json
+++ b/MLEB/Translate/i18n/sandbox/sv.json
@@ -11,7 +11,7 @@
"tsb-reminder-title-generic": "Slutför din introduktion för att bli en översättare",
"tsb-reminder-content-generic": "Hej $1,\n\nTack för din registrering på {{SITENAME}}.\n\nOm du slutför dina testöversättningar kan administratörerna snart ge dig full behörighet till att översätta.\n\nVar god kom och gör några fler översättningar här:\n$2\n\n$3\npersonalen på {{SITENAME}}",
"tsb-reminder-sending": "Skickar påminnelsen...",
- "tsb-reminder-sent": "{{PLURAL:$1|Skickade $1 påminnelse $2|Skickade $1 påminnelser, den senaste $2}}",
+ "tsb-reminder-sent": "Skickade {{PLURAL:$1|$1 påminnelse. Tid: $2.|$1 påminnelser. Tid för den senaste: $2.}}",
"tsb-reminder-sent-new": "Skickade en påminnelse",
"tsb-reminder-failed": "Det gick inte att skicka påminnelsen",
"tsb-email-promoted-subject": "Du är nu en översättare på {{SITENAME}}",
@@ -34,6 +34,8 @@
"tsb-translations-user": "{{GENDER:$1|Användar}}översättningar",
"tsb-translations-current": "Befintliga översättningar",
"tsb-delete-userpage-summary": "Tar bort användarsidan för en sandlådeanvändare",
+ "tsb-reject-confirmation": "{{PLURAL:$1|Användare nekad|Användare nekade}}",
+ "tsb-accept-confirmation": "{{PLURAL:$1|Användare accepterad|Användare accepterade}}",
"translationstash": "Välkommen",
"translate-translationstash-welcome": "Välkommen {{GENDER:$1|$1}}, du är en ny översättare",
"translate-translationstash-welcome-note": "Bekanta dig med översättningsverktygen. Översätt några meddelanden och få fullständiga översättningsrättigheter för att delta i dina favoritprojekt.",
@@ -44,7 +46,7 @@
"tsb-limit-reached-body": "Du har nått översättningsgränsen för nya översättare.\nVårt team kommer snart verifiera och uppgradera ditt konto.\nSedan kommer du kunna översätta utan begränsningar.",
"tsb-no-requests-from-new-users": "Inga förfrågningar från nya användare",
"tsb-create-user-page": "Skapa grundläggande användarsida",
- "log-name-translatorsandbox": "Översättningssandlåda",
+ "log-name-translatorsandbox": "Logg för översättningssandlåda",
"log-description-translatorsandbox": "En logg över åtgärder på översättningssandlådeanvändare",
"logentry-translatorsandbox-promoted": "$1 {{GENDER:$2|befordrades}} $3 till {{GENDER:$4|översättare}}",
"logentry-translatorsandbox-rejected": "$1 {{GENDER:$2|avvisade}} begäran från \"$3\" att bli en översättare",
diff --git a/MLEB/Translate/i18n/sandbox/uk.json b/MLEB/Translate/i18n/sandbox/uk.json
index e6c21b52..6df2e9f5 100644
--- a/MLEB/Translate/i18n/sandbox/uk.json
+++ b/MLEB/Translate/i18n/sandbox/uk.json
@@ -4,7 +4,8 @@
"Andriykopanytsia",
"Base",
"Ата",
- "Piramidion"
+ "Piramidion",
+ "Vlad5250"
]
},
"managetranslatorsandbox": "Керування грамайданчиком перекладачів",
@@ -12,7 +13,7 @@
"tsb-reminder-title-generic": "Завершіть своє представлення, щоб стати перекладачем",
"tsb-reminder-content-generic": "Привіт, $1!\n\nДякуємо за реєстрацію у проекті {{SITENAME}}. Якщо Ви завершите свої тестові\nпереклади, адміністратори зможуть скоро надати Вам повні права на переклад.\n\nБудь ласка, перейдіть і зробіть ще декілька перекладів тут:\n$2\n\n$3,\nкоманда {{SITENAME}}",
"tsb-reminder-sending": "Надсилання нагадування…",
- "tsb-reminder-sent": "{{PLURAL:$1|Надіслано $1 нагадування $2|Надіслано $1 нагадування, останнє - $2|Надіслано $1 нагадувань, останнє - $2}}",
+ "tsb-reminder-sent": "{{PLURAL:$1|Надіслано $1 нагадування. Час останнього: $2.|Надіслано $1 нагадування. Час останнього: $2.|Надіслано $1 нагадувань. Час останнього: $2.|1=Надіслано $1 нагадування. Час: $2.}}",
"tsb-reminder-sent-new": "Надіслано нагадування",
"tsb-reminder-failed": "Не вдалося надіслати нагадування",
"tsb-email-promoted-subject": "Тепер ви - перекладач на {{SITENAME}}",
@@ -35,6 +36,8 @@
"tsb-translations-user": "Переклади {{GENDER:$1|користувача|користувачки}}",
"tsb-translations-current": "Існуючі переклади",
"tsb-delete-userpage-summary": "Видалення сторінки користувача з користувача пісочниці",
+ "tsb-reject-confirmation": "{{PLURAL:$1|Користувача|Користувачів}} відхилено",
+ "tsb-accept-confirmation": "{{PLURAL:$1|Користувача|Користувачів}} прийнято",
"translationstash": "Ласкаво просимо",
"translate-translationstash-welcome": "Вітаємо {{GENDER:$1|$1}}, ви - {{GENDER:$1|новий перекладач|нова перекладачка}}",
"translate-translationstash-welcome-note": "Ознайомитися з інструментами перекладу. Перекладіть деякі повідомлення і отримайте повні права перекладача для участі у ваших улюблених проектах.",
@@ -44,8 +47,8 @@
"tsb-limit-reached-title": "Спасибі за ваші переклади",
"tsb-limit-reached-body": "Вами досягнута межа перекладу для нових перекладачів.\nНаша команда невдовзі перевірить і оновить ваш обліковий запис.\nПотім зможете перекладати без обмежень.",
"tsb-no-requests-from-new-users": "Немає запитів від нових користувачів",
- "tsb-create-user-page": "Створити основну сторінку користувача",
- "log-name-translatorsandbox": "Пісочниця перекладу",
+ "tsb-create-user-page": "Створено основну сторінку користувача",
+ "log-name-translatorsandbox": "Журнал пісочниці перекладу",
"log-description-translatorsandbox": "Журнал дій користувачів у пісочниці перекладу",
"logentry-translatorsandbox-promoted": "$1 {{GENDER:$2|підвищив|підвищила}} $3 до {{GENDER:$4|перекладача|перекладачки}}",
"logentry-translatorsandbox-rejected": "$1 {{GENDER:$2|відхилив|відхилила}} запит від \"$3\" стати перекладачем",
diff --git a/MLEB/Translate/i18n/sandbox/vi.json b/MLEB/Translate/i18n/sandbox/vi.json
index ffc4ec72..9b3c9bc7 100644
--- a/MLEB/Translate/i18n/sandbox/vi.json
+++ b/MLEB/Translate/i18n/sandbox/vi.json
@@ -9,7 +9,7 @@
"tsb-reminder-title-generic": "Hoàn thành lời giới thiệu của bạn để trở thành một biên dịch viên",
"tsb-reminder-content-generic": "Xin chào $1,\n\nCảm ơn bạn đã tham gia {{SITENAME}}.\n\nSau khi bạn dịch các bản dịch kiểm tra, các bảo quản viên sẽ sớm cấp quyền biên dịch đầy đủ cho bạn.\n\nXin vui lòng ghé vào biên dịch thêm thông điệp:\n\n$2\n\n$3,\nBan quản lý {{SITENAME}}",
"tsb-reminder-sending": "Đang gửi lời nhắc nhở…",
- "tsb-reminder-sent": "Đã gửi $1 lời nhắc nhở{{PLURAL:$1||, lần cuối cùng}} vào $2",
+ "tsb-reminder-sent": "Đã gửi $1 lời nhắc nhở{{PLURAL:$1||, lần cuối cùng}} vào $2.",
"tsb-reminder-sent-new": "Đã gửi lời nhắc nhở",
"tsb-reminder-failed": "Thất bại khi gửi lời nhắc nhở",
"tsb-email-promoted-subject": "Bạn mới trở thành biên dịch viên tại {{SITENAME}}",
@@ -32,8 +32,10 @@
"tsb-translations-user": "Bản dịch của {{GENDER:$1}}người dùng",
"tsb-translations-current": "Bản dịch hiện có",
"tsb-delete-userpage-summary": "Đã xóa trang cá nhân của người dùng chỗ thử biên dịch",
+ "tsb-reject-confirmation": "Đã từ chối {{PLURAL:$1|người dùng|những người dùng}}",
+ "tsb-accept-confirmation": "Đã chấp nhận {{PLURAL:$1|người dùng|những người dùng}}",
"translationstash": "Hoan nghênh",
- "translate-translationstash-welcome": "Chào mừng {{GENDER:$1|$1}} đã trở thành biên dịch viên mới",
+ "translate-translationstash-welcome": "Chào mừng {{GENDER:$1}}$1 đã trở thành biên dịch viên mới",
"translate-translationstash-welcome-note": "Hãy quen thuộc với các công cụ biên dịch. Hãy dịch một số thông điệp và giành được quyền biên dịch viên đầy đủ để tham gia các dự án ưa thích của bạn.",
"translate-translationstash-initialtranslation": "Bản dịch đầu tiên của bạn",
"translate-translationstash-translations": "$1 bản dịch hoàn thành",
@@ -42,7 +44,7 @@
"tsb-limit-reached-body": "Bạn đã đạt đến giới hạn bản dịch cho biên dịch viên mới.\nChúng tôi sẽ kiểm tra và nâng cấp tài khoản của bạn không lâu.\nSau đó bạn sẽ có thể biên dịch thoải mái không có giới hạn.",
"tsb-no-requests-from-new-users": "Không có yêu cầu từ người dùng mới",
"tsb-create-user-page": "Đã tạo trang cá nhân cơ bản",
- "log-name-translatorsandbox": "Chỗ thử biên dịch",
+ "log-name-translatorsandbox": "Nhật trình chỗ thử biên dịch",
"log-description-translatorsandbox": "Các tác vụ có liên quan đến người dùng chỗ thử biên dịch",
"logentry-translatorsandbox-promoted": "$1 {{GENDER:$2}}đã phong cấp $3 trở thành {{GENDER:$4}}biên dịch viên",
"logentry-translatorsandbox-rejected": "$1 {{GENDER:$2}}đã từ chối lời yêu cầu của “$3” để trở thành biên dịch viên",
diff --git a/MLEB/Translate/i18n/sandbox/zh-hans.json b/MLEB/Translate/i18n/sandbox/zh-hans.json
index d39f08f9..6b9e394c 100644
--- a/MLEB/Translate/i18n/sandbox/zh-hans.json
+++ b/MLEB/Translate/i18n/sandbox/zh-hans.json
@@ -11,23 +11,23 @@
},
"managetranslatorsandbox": "管理译者沙盒",
"tsb-filter-pending": "等待的请求",
- "tsb-reminder-title-generic": "填写你的自我介绍,成为一名译者",
- "tsb-reminder-content-generic": "你好 $1,\n\n感谢你注册{{SITENAME}}。\n\n如果您完成你的测试翻译,我们的管理员将尽快授予您完整的翻译访问权。\n\n来这里做些翻译吧:\n$2\n\n$3,\n{{SITENAME}}员工",
+ "tsb-reminder-title-generic": "填写您的自我介绍,成为一名译者",
+ "tsb-reminder-content-generic": "您好 $1,\n\n感谢您注册{{SITENAME}}。\n\n如果您完成您的测试翻译,我们的管理员将尽快授予您完整的翻译访问权。\n\n来这里做些翻译吧:\n$2\n\n$3,\n{{SITENAME}}员工",
"tsb-reminder-sending": "正在发送提醒...",
- "tsb-reminder-sent": "{{PLURAL:$1|向$1发送$2份提醒}}",
+ "tsb-reminder-sent": "{{PLURAL:$1|已发送$1份提醒。时间:$2。|已发送$1份提醒。最近一次时间:$2。}}",
"tsb-reminder-sent-new": "发送提醒",
"tsb-reminder-failed": "发送提醒失败",
- "tsb-email-promoted-subject": "你现在是一名{{SITENAME}}的译者了",
- "tsb-email-promoted-body": "嗨,{{GENDER:$1|$1}}:\n\n祝贺你!我检查了你在{{SITENAME}}的试验翻译,决定授予你完整的译者权限。\n\n现在以及今后的每一天都来{{SITENAME}}继续翻译吧:\n$2\n\n我们欢迎你加入译者队伍,感谢你的贡献!\n\n{{GENDER:$3|$3}},\n{{SITENAME}}工作人员",
+ "tsb-email-promoted-subject": "您现在是一名{{SITENAME}}的译者了",
+ "tsb-email-promoted-body": "嗨,{{GENDER:$1|$1}}:\n\n祝贺您!我检查了您在{{SITENAME}}的试验翻译,决定授予您完整的译者权限。\n\n现在以及今后的每一天都来{{SITENAME}}继续翻译吧:\n$2\n\n我们欢迎您加入译者队伍,感谢您的贡献!\n\n{{GENDER:$3|$3}},\n{{SITENAME}}工作人员",
"tsb-email-rejected-subject": "您在{{SITENAME}}的译者请求被拒绝",
- "tsb-email-rejected-body": "嗨,{{GENDER:$1|$1}}:\n\n感谢你在{{SITENAME}}申请成为译者。但我不得不遗憾地通知你,我拒绝了你的申请,因为你的的译文质量不符合要求。\n\n如果你认为你的申请是被错误地拒绝了,请尝试在{{SITENAME}}重新申请成为译者。你可以在这里登记:\n$2\n\n{{GENDER:$3|$3}},\n{{SITENAME}}工作人员",
+ "tsb-email-rejected-body": "嗨,{{GENDER:$1|$1}}:\n\n感谢您在{{SITENAME}}申请成为译者。但我不得不遗憾地通知您,我拒绝了您的申请,因为您的的译文质量不符合要求。\n\n如果您认为您的申请是被错误地拒绝了,请尝试在{{SITENAME}}重新申请成为译者。您可以在这里登记:\n$2\n\n{{GENDER:$3|$3}},\n{{SITENAME}}工作人员",
"tsb-request-count": "$1条{{PLURAL:$1|申请}}",
"tsb-all-languages-button-label": "所有语言",
"tsb-search-requests": "搜索申请",
"tsb-accept-button-label": "接受",
"tsb-reject-button-label": "拒绝",
"tsb-selected-count": "{{PLURAL:$1|$1位已选定用户}}",
- "tsb-older-requests": "$1个旧有申请",
+ "tsb-older-requests": "$1个旧有{{PLURAL:$1|申请}}",
"tsb-accept-all-button-label": "接受所有",
"tsb-reject-all-button-label": "拒绝所有",
"tsb-user-posted-a-comment": "不是一位译者",
@@ -37,17 +37,19 @@
"tsb-translations-user": "{{GENDER:$1|用户}}翻译",
"tsb-translations-current": "现有翻译",
"tsb-delete-userpage-summary": "删除沙盒用户的用户页面",
+ "tsb-reject-confirmation": "{{PLURAL:$1|用户}}已被拒绝",
+ "tsb-accept-confirmation": "{{PLURAL:$1|用户}}已被接受",
"translationstash": "欢迎",
"translate-translationstash-welcome": "欢迎您{{GENDER:$1|$1}},您已成为新的译者",
"translate-translationstash-welcome-note": "逐渐熟悉翻译工具。翻译一些信息,获得完整的译者权限去参与你喜欢的项目。",
- "translate-translationstash-initialtranslation": "你的初始翻译",
+ "translate-translationstash-initialtranslation": "您的初始翻译",
"translate-translationstash-translations": "$1完成了翻译",
"translate-translationstash-skip-button-label": "尝试其他",
"tsb-limit-reached-title": "感谢您的翻译",
"tsb-limit-reached-body": "您已达到新进译者的翻译限制。\n我们的团队将尽快核实和升级您的账户。\n那时您就可以无限制的参与翻译了。",
"tsb-no-requests-from-new-users": "没有新用户请求",
"tsb-create-user-page": "创建基础用户页",
- "log-name-translatorsandbox": "翻译沙盒",
+ "log-name-translatorsandbox": "翻译沙盒日志",
"log-description-translatorsandbox": "翻译沙盒用户的操作日志",
"logentry-translatorsandbox-promoted": "$1将$3{{GENDER:$2|提拔}}为{{GENDER:$4|译者}}",
"logentry-translatorsandbox-rejected": "$1{{GENDER:$2|拒绝了}}来自“$3”的成为译者请求",
diff --git a/MLEB/Translate/i18n/sandbox/zh-hant.json b/MLEB/Translate/i18n/sandbox/zh-hant.json
index 6156147c..e72d84f5 100644
--- a/MLEB/Translate/i18n/sandbox/zh-hant.json
+++ b/MLEB/Translate/i18n/sandbox/zh-hant.json
@@ -4,7 +4,10 @@
"Simon Shek",
"Liuxinyu970226",
"Cwlin0416",
- "LNDDYL"
+ "LNDDYL",
+ "和平奮鬥救地球",
+ "Kly",
+ "Sean"
]
},
"managetranslatorsandbox": "管理翻譯人員沙盒",
@@ -12,7 +15,7 @@
"tsb-reminder-title-generic": "成為翻譯人員之前,請先填寫您的自我介紹",
"tsb-reminder-content-generic": "您好 $1,\n\n感謝您註冊 {{SITENAME}}。\n\n在您完成翻譯測驗後,管理員會儘快授予您完整的翻譯權限。\n\n請到下列網址進行更多的翻譯工作: \n$2\n\n$3,\n{{SITENAME}} 工作團隊",
"tsb-reminder-sending": "傳送備忘通知中...",
- "tsb-reminder-sent": "已發送 $1 封備忘通知,最後一封於 $2",
+ "tsb-reminder-sent": "{{PLURAL:$1|已傳送 $1 條提醒,時間於 $2。|已傳送 $1 條提醒,最後一次時間於 $2}}",
"tsb-reminder-sent-new": "傳送備忘通知",
"tsb-reminder-failed": "傳送備忘通知失敗",
"tsb-email-promoted-subject": "您已成為 {{SITENAME}} 的翻譯人員",
@@ -35,19 +38,21 @@
"tsb-translations-user": "{{GENDER:$1|使用者}}翻譯",
"tsb-translations-current": "現有翻譯",
"tsb-delete-userpage-summary": "刪除沙盒使用者中的使用者頁面",
+ "tsb-reject-confirmation": "{{PLURAL:$1|使用者|使用者}}已拒絕",
+ "tsb-accept-confirmation": "{{PLURAL:$1|使用者|使用者}}已接受",
"translationstash": "歡迎光臨",
"translate-translationstash-welcome": "歡迎光臨 {{GENDER:$1|$1}},您是一名新進的翻譯人員",
"translate-translationstash-welcome-note": "為了要熟悉翻譯工具,請先試著翻譯部份訊息,再取得完整的翻譯人員權限以加入您想翻譯的專案。",
"translate-translationstash-initialtranslation": "您的第一次翻譯",
- "translate-translationstash-translations": "$1 人已完成翻譯",
+ "translate-translationstash-translations": "已完成 $1 筆翻譯",
"translate-translationstash-skip-button-label": "嘗試其他",
"tsb-limit-reached-title": "感謝您的翻譯",
- "tsb-limit-reached-body": "您的翻譯已超過新進翻譯人員的限制。\n我們的團隊會儘快確認您的翻譯資格並升級您的帳號,\n屆時您便可不受限制的翻譯。",
+ "tsb-limit-reached-body": "您的翻譯已達到新進翻譯人員的限制。\n我們的團隊會儘快審核並升級您的帳號,\n屆時您便可不受限制的翻譯。",
"tsb-no-requests-from-new-users": "沒有來自新使用者的請求",
"tsb-create-user-page": "建立基本使用者頁面",
- "log-name-translatorsandbox": "翻譯沙盒",
+ "log-name-translatorsandbox": "翻譯沙盒日誌",
"log-description-translatorsandbox": "翻譯沙盒使用者的工作日誌",
"logentry-translatorsandbox-promoted": "$1 {{GENDER:$2|授權}} $3 成為 {{GENDER:$4|翻譯人員}}",
- "logentry-translatorsandbox-rejected": "$1 {{GENDER:$2|拒絕}}來自 \"$3\" 申請成為翻譯人員的請求",
+ "logentry-translatorsandbox-rejected": "$1 {{GENDER:$2|拒絕}} 來自 \"$3\" 申請成為翻譯人員的請求",
"logentry-newusers-tsbpromoted": "使用者帳號 $3 已{{GENDER:$2|建立}},由沙盒所授權"
}
diff --git a/MLEB/Translate/i18n/search/ar.json b/MLEB/Translate/i18n/search/ar.json
index 56436a7c..cf69f69a 100644
--- a/MLEB/Translate/i18n/search/ar.json
+++ b/MLEB/Translate/i18n/search/ar.json
@@ -1,13 +1,31 @@
{
"@metadata": {
"authors": [
- "محمد أحمد عبد الفتاح"
+ "محمد أحمد عبد الفتاح",
+ "Meno25"
]
},
"searchtranslations": "ابحث في الترجمات",
"tux-sst-edit": "عدل الترجمة",
+ "tux-sst-view-foreign": "اعرض في $1",
"tux-sst-search": "ابحث",
+ "tux-sst-search-ph": "ابحث في الترجمات",
+ "tux-sst-count": "{{PLURAL:$1|نتيجة واحدة تم العثور عليها|$1 نتائج تم العثور عليها}}",
+ "tux-sst-facet-language": "اللغات",
"tux-sst-facet-group": "مجموعات الرسائل",
"tux-sst-nosolr-title": "البحث غير متوفر",
- "tux-sst-solr-offline-title": "البحث غير متوفر"
+ "tux-sst-nosolr-body": "هذا الويكي لا يوفر خدمة البحث في الترجمات.",
+ "tux-sst-solr-offline-title": "البحث غير متوفر",
+ "tux-sst-solr-offline-body": "خدمة البحث غير متوفرة مؤقتا.",
+ "tux-sst-next": "التالي »",
+ "tux-sst-prev": "« السابق",
+ "tux-sst-default": "الترجمات",
+ "tux-sst-translated": "الترجمات من $1",
+ "tux-sst-untranslated": "لا ترجمات من $1",
+ "tux-sst-outdated": "الترجمات غير المحدثة من $1",
+ "tux-sst-ellipsis-untranslated": "لا ترجمات",
+ "tux-sst-ellipsis-outdated": "ترجمات غير محدثة",
+ "tux-sst-link-all-match": "تتطلب كل كلمات البحث.",
+ "tux-sst-match-message": "إظهار الترجمات التي تطابق أي من كلمات البحث. $1",
+ "tux-sst-case-sensitive": "مراعاة حالة الأحرف"
}
diff --git a/MLEB/Translate/i18n/search/ast.json b/MLEB/Translate/i18n/search/ast.json
index 284ccec4..5a8cd5c9 100644
--- a/MLEB/Translate/i18n/search/ast.json
+++ b/MLEB/Translate/i18n/search/ast.json
@@ -6,16 +6,25 @@
},
"searchtranslations": "Guetar nes traducciones",
"tux-sst-edit": "Editar traducción",
+ "tux-sst-view-foreign": "Ver en $1",
"tux-sst-search": "Guetar",
"tux-sst-search-ph": "Guetar nes traducciones",
"tux-sst-count": "{{PLURAL:$1|Alcontrose un resultáu|Alcontráronse $1 resultaos}}",
"tux-sst-facet-language": "Llingües",
"tux-sst-facet-group": "Grupos de mensaxes",
- "tux-sst-facet-orphan": "(güérfanos)",
"tux-sst-nosolr-title": "La gueta nun ta disponible",
"tux-sst-nosolr-body": "Esta wiki nun tien un serviciu de gueta de traducciones.",
"tux-sst-solr-offline-title": "La gueta nun ta disponible",
"tux-sst-solr-offline-body": "El serviciu de gueta nun ta disponible temporalmente.",
- "tux-sst-next": "Resultaos siguientes",
- "tux-sst-prev": "Resultaos anteriores"
+ "tux-sst-next": "Siguiente ›",
+ "tux-sst-prev": "‹ Anterior",
+ "tux-sst-default": "Traducciones",
+ "tux-sst-translated": "Traducciones del $1",
+ "tux-sst-untranslated": "Nun hai traducción del $1",
+ "tux-sst-outdated": "Traducciones anticuaes del $1",
+ "tux-sst-ellipsis-untranslated": "Sin traducción",
+ "tux-sst-ellipsis-outdated": "Traducciones anticuaes",
+ "tux-sst-link-all-match": "Riquir toles palabres buscaes.",
+ "tux-sst-match-message": "Amosar les traducciones que casen con cualesquiera de les palabres buscaes. $1",
+ "tux-sst-case-sensitive": "Sensible a mayúscules"
}
diff --git a/MLEB/Translate/i18n/search/az.json b/MLEB/Translate/i18n/search/az.json
index eda2dae6..4e07de78 100644
--- a/MLEB/Translate/i18n/search/az.json
+++ b/MLEB/Translate/i18n/search/az.json
@@ -11,7 +11,6 @@
"tux-sst-count": "{{PLURAL:$1|Bir nəticə tapıldı|$1 nəticə tapıldı}}",
"tux-sst-facet-language": "Dillər",
"tux-sst-facet-group": "Mesaj qrupları",
- "tux-sst-facet-orphan": "(yetim)",
"tux-sst-nosolr-title": "Axtarış mümkün deyil",
"tux-sst-nosolr-body": "Bu viki üçün tərcümə axtarış sistemi yoxdur."
}
diff --git a/MLEB/Translate/i18n/search/be-tarask.json b/MLEB/Translate/i18n/search/be-tarask.json
index 701e2ba3..5a27642e 100644
--- a/MLEB/Translate/i18n/search/be-tarask.json
+++ b/MLEB/Translate/i18n/search/be-tarask.json
@@ -1,7 +1,8 @@
{
"@metadata": {
"authors": [
- "Wizardist"
+ "Wizardist",
+ "Renessaince"
]
},
"searchtranslations": "Пошук перакладаў",
@@ -11,11 +12,10 @@
"tux-sst-count": "{{PLURAL:$1|Знойдзены $1 вынік|Знойдзена $1 вынікі|Знойдзена $1 вынікаў}}",
"tux-sst-facet-language": "Мовы",
"tux-sst-facet-group": "Групы паведамленьняў",
- "tux-sst-facet-orphan": "(сіраціна)",
"tux-sst-nosolr-title": "Пошук недаступны",
"tux-sst-nosolr-body": "Гэтая вікі ня мае службы пошуку перакладаў.",
"tux-sst-solr-offline-title": "Пошук недаступны",
"tux-sst-solr-offline-body": "Служба пошуку часова недаступная.",
- "tux-sst-next": "Наступныя вынікі",
- "tux-sst-prev": "Папярэднія вынікі"
+ "tux-sst-next": "Наступныя ›",
+ "tux-sst-prev": "‹ Папярэднія"
}
diff --git a/MLEB/Translate/i18n/search/bg.json b/MLEB/Translate/i18n/search/bg.json
index a01014a8..0496391c 100644
--- a/MLEB/Translate/i18n/search/bg.json
+++ b/MLEB/Translate/i18n/search/bg.json
@@ -6,10 +6,18 @@
]
},
"searchtranslations": "Търсене на преводи",
+ "tux-sst-edit": "Редактиране на превода",
"tux-sst-search": "Търсене",
"tux-sst-search-ph": "Търсене на преводи",
"tux-sst-facet-language": "Езици",
+ "tux-sst-facet-group": "Групи съобщения",
"tux-sst-solr-offline-body": "Услугата за търсене е временно недостъпна.",
- "tux-sst-next": "Следващи резултати",
- "tux-sst-prev": "Предишни резултати"
+ "tux-sst-next": "Следващи ›",
+ "tux-sst-prev": "‹ Предишни",
+ "tux-sst-default": "Преводи",
+ "tux-sst-translated": "Преводи от $1",
+ "tux-sst-untranslated": "Без превод от $1",
+ "tux-sst-outdated": "Неактуални преводи от $1",
+ "tux-sst-ellipsis-outdated": "Неактуални преводи",
+ "tux-sst-case-sensitive": "Чувствително към регистъра на буквите"
}
diff --git a/MLEB/Translate/i18n/search/bn.json b/MLEB/Translate/i18n/search/bn.json
index 0bcb1371..97d5b0ec 100644
--- a/MLEB/Translate/i18n/search/bn.json
+++ b/MLEB/Translate/i18n/search/bn.json
@@ -3,21 +3,31 @@
"authors": [
"Aftab1995",
"Nasir8891",
- "Aftabuzzaman"
+ "Aftabuzzaman",
+ "আফতাবুজ্জামান"
]
},
"searchtranslations": "অনুবাদ অনুসন্ধান",
"tux-sst-edit": "অনুবাদ সম্পাদনা",
+ "tux-sst-view-foreign": "$1-এ দেখুন",
"tux-sst-search": "অনুসন্ধান",
"tux-sst-search-ph": "অনুবাদ অনুসন্ধান",
"tux-sst-count": "{{PLURAL:$1|একটি ফলাফল পাওয়া গিয়েছে|$1টি ফলাফল পাওয়া গিয়েছে}}",
"tux-sst-facet-language": "ভাষাসমূহ",
"tux-sst-facet-group": "বার্তা সংকলন",
- "tux-sst-facet-orphan": "(পিতৃহীন)",
"tux-sst-nosolr-title": "অনুসন্ধান সম্ভব নয়",
"tux-sst-nosolr-body": "এই উইকিতে অনুবাদ অনুসন্ধান সক্রিয় নেই।",
"tux-sst-solr-offline-title": "অনুসন্ধান সক্রিয় নেই",
"tux-sst-solr-offline-body": "অনুসন্ধান পরিষেবাটি সাময়িকভাবে অনুপলব্ধ।",
"tux-sst-next": "পরবর্তী ›",
- "tux-sst-prev": "‹ পূর্ববর্তী"
+ "tux-sst-prev": "‹ পূর্ববর্তী",
+ "tux-sst-default": "অনুবাদসমূহ",
+ "tux-sst-translated": "$1 থেকে অনুবাদ",
+ "tux-sst-untranslated": "$1 থেকে কোন অনুবাদ নেই",
+ "tux-sst-outdated": "$1 থেকে পুরাতন অনুবাদ",
+ "tux-sst-ellipsis-untranslated": "কোন অনুবাদ নেই",
+ "tux-sst-ellipsis-outdated": "পুরাতন অনুবাদ",
+ "tux-sst-link-all-match": "সমস্ত অনুসন্ধানের শব্দ দরকার।",
+ "tux-sst-match-message": "অনুবাদ দেখানো হচ্ছে যা যে কোন একটি অনুসন্ধানের শব্দের সাথে মিলেছে। $1",
+ "tux-sst-case-sensitive": "কেস সংবেদনশীল"
}
diff --git a/MLEB/Translate/i18n/search/br.json b/MLEB/Translate/i18n/search/br.json
index 35aac5ef..f4d1f099 100644
--- a/MLEB/Translate/i18n/search/br.json
+++ b/MLEB/Translate/i18n/search/br.json
@@ -7,6 +7,5 @@
"tux-sst-search": "Klask",
"tux-sst-search-ph": "Klask troidigezhioù",
"tux-sst-count": "{{PLURAL:$1|Un disoc'h kavet|$1 disoc'h kavet}}",
- "tux-sst-facet-language": "Yezhoù",
- "tux-sst-facet-orphan": "(emzivad)"
+ "tux-sst-facet-language": "Yezhoù"
}
diff --git a/MLEB/Translate/i18n/search/ca.json b/MLEB/Translate/i18n/search/ca.json
index d000cef9..71eb328a 100644
--- a/MLEB/Translate/i18n/search/ca.json
+++ b/MLEB/Translate/i18n/search/ca.json
@@ -1,7 +1,9 @@
{
"@metadata": {
"authors": [
- "Toniher"
+ "Toniher",
+ "Fitoschido",
+ "Ssola"
]
},
"searchtranslations": "Cerca a les traduccions",
@@ -11,11 +13,18 @@
"tux-sst-count": "{{PLURAL:$1|S'ha trobat $1 resultat|S'han trobat $1 resultats}}",
"tux-sst-facet-language": "Llengües",
"tux-sst-facet-group": "Grups de missatges",
- "tux-sst-facet-orphan": "(orfe)",
"tux-sst-nosolr-title": "Cerca no disponible",
"tux-sst-nosolr-body": "Aquest wiki no té un servei de cerca de les traduccions.",
"tux-sst-solr-offline-title": "Cerca no disponible",
"tux-sst-solr-offline-body": "El servei de cerca no està disponible temporalment.",
- "tux-sst-next": "Resultats següents",
- "tux-sst-prev": "Resultats anteriors"
+ "tux-sst-next": "Següents →",
+ "tux-sst-prev": "← Anteriors",
+ "tux-sst-default": "Traduccions",
+ "tux-sst-translated": "Traduccions de $1",
+ "tux-sst-untranslated": "Sense traducció de $1",
+ "tux-sst-outdated": "Traduccions desactualitzades de $1",
+ "tux-sst-ellipsis-untranslated": "Sense traducció",
+ "tux-sst-ellipsis-outdated": "Traduccions desactualitzades",
+ "tux-sst-match-message": "Es mostren les traduccions que coincideixen amb qualssevol paraules de la cerca. $1",
+ "tux-sst-case-sensitive": "Distingeix entre majúscules i minúscules"
}
diff --git a/MLEB/Translate/i18n/search/ce.json b/MLEB/Translate/i18n/search/ce.json
index 91a7d2b6..b3ffbd51 100644
--- a/MLEB/Translate/i18n/search/ce.json
+++ b/MLEB/Translate/i18n/search/ce.json
@@ -6,11 +6,24 @@
},
"searchtranslations": "Гоч лахар",
"tux-sst-edit": "Таде гочдар",
+ "tux-sst-view-foreign": "Хьажар $1",
"tux-sst-search": "Лахар",
"tux-sst-search-ph": "Гоч лахар",
"tux-sst-count": "{{PLURAL:$1|Карина $1 хилам}}",
"tux-sst-facet-language": "Меттанаш",
"tux-sst-facet-group": "Хаамийн тоба",
- "tux-sst-next": "ТӀехьа догӀург",
- "tux-sst-prev": "Хьалхо хиларг"
+ "tux-sst-nosolr-title": "Лахар тӀецакхочу",
+ "tux-sst-nosolr-body": "ХӀокху вики чохь гочдарш лоьху сервис яц.",
+ "tux-sst-solr-offline-title": "Лахар тӀецакхочу",
+ "tux-sst-solr-offline-body": "Лахар хана болхбеш дац.",
+ "tux-sst-next": "ТӀехьайогӀург →",
+ "tux-sst-prev": "ТӀехьа",
+ "tux-sst-default": "Гочдарш",
+ "tux-sst-translated": "Гочдарш тӀера $1",
+ "tux-sst-untranslated": "Гочдарш тӀера $1",
+ "tux-sst-outdated": "Ширделла гочдарш $1",
+ "tux-sst-ellipsis-untranslated": "Гочдар дац",
+ "tux-sst-ellipsis-outdated": "Ширделла гочдарш",
+ "tux-sst-link-all-match": "Дехо дерриг дешнаш лоьхуш",
+ "tux-sst-case-sensitive": "регистр лоруш"
}
diff --git a/MLEB/Translate/i18n/search/cs.json b/MLEB/Translate/i18n/search/cs.json
index d47e6b5b..705f8afe 100644
--- a/MLEB/Translate/i18n/search/cs.json
+++ b/MLEB/Translate/i18n/search/cs.json
@@ -7,16 +7,25 @@
},
"searchtranslations": "Hledání v překladech",
"tux-sst-edit": "Editovat překlad",
+ "tux-sst-view-foreign": "Zobrazit na $1",
"tux-sst-search": "Hledat",
"tux-sst-search-ph": "Hledat v překladech",
"tux-sst-count": "{{PLURAL:$1|Nalezen jeden výsledek|Nalezeny $1 výsledky|Nalezeno $1 výsledků}}",
"tux-sst-facet-language": "Jazyky",
"tux-sst-facet-group": "Skupiny zpráv",
- "tux-sst-facet-orphan": "(sirotek)",
"tux-sst-nosolr-title": "Hledání není dostupné",
"tux-sst-nosolr-body": "Tato wiki nedisponuje službou pro vyhledávání překladů.",
"tux-sst-solr-offline-title": "Hledání není dostupné",
"tux-sst-solr-offline-body": "Služba pro hledání je dočasně nedostupná.",
- "tux-sst-next": "Další výsledky",
- "tux-sst-prev": "Předchozí výsledky"
+ "tux-sst-next": "Další ›",
+ "tux-sst-prev": "‹ Předchozí",
+ "tux-sst-default": "Překlady",
+ "tux-sst-translated": "Překlady z jazyka „$1“",
+ "tux-sst-untranslated": "Nepřeložené z jazyka $1",
+ "tux-sst-outdated": "Zastaralé překlady z jazyka $1",
+ "tux-sst-ellipsis-untranslated": "Nepřeložené",
+ "tux-sst-ellipsis-outdated": "Zastaralé překlady",
+ "tux-sst-link-all-match": "Vyžadovat všechna hledaná slova.",
+ "tux-sst-match-message": "Zobrazují se překlady, které odpovídají libovolnému z hledaných slov. $1",
+ "tux-sst-case-sensitive": "Rozlišovat velikost písmen"
}
diff --git a/MLEB/Translate/i18n/search/da.json b/MLEB/Translate/i18n/search/da.json
index 52b25dcd..50e15b10 100644
--- a/MLEB/Translate/i18n/search/da.json
+++ b/MLEB/Translate/i18n/search/da.json
@@ -1,21 +1,29 @@
{
"@metadata": {
"authors": [
- "Byrial"
+ "Byrial",
+ "Saederup92"
]
},
"searchtranslations": "Søg oversættelser",
"tux-sst-edit": "Redigér oversættelse",
+ "tux-sst-view-foreign": "Vis på $1",
"tux-sst-search": "Søg",
"tux-sst-search-ph": "Søg oversættelser",
"tux-sst-count": "{{PLURAL:$1|Ét resultat fundet|$1 resultater fundet}}",
"tux-sst-facet-language": "Sprog",
"tux-sst-facet-group": "Beskedgrupper",
- "tux-sst-facet-orphan": "(ingen)",
"tux-sst-nosolr-title": "Søgning er ikke tilgængelig",
"tux-sst-nosolr-body": "Denne wiki har ikke mulighed for oversættelsessøgning.",
"tux-sst-solr-offline-title": "Søgning er ikke tilgængelig",
"tux-sst-solr-offline-body": "Søgning er midlertidig utilgængelig.",
- "tux-sst-next": "Næste resultater",
- "tux-sst-prev": "Forrige resultater"
+ "tux-sst-next": "Næste ›",
+ "tux-sst-prev": "‹ Forrige",
+ "tux-sst-default": "Oversættelser",
+ "tux-sst-translated": "Oversættelser fra $1",
+ "tux-sst-untranslated": "Ingen oversættelser fra $1",
+ "tux-sst-outdated": "Forældede oversættelser fra $1",
+ "tux-sst-ellipsis-untranslated": "Ingen oversættelse",
+ "tux-sst-ellipsis-outdated": "Forældede oversættelser",
+ "tux-sst-link-all-match": "Kræv alle søgeord."
}
diff --git a/MLEB/Translate/i18n/search/de.json b/MLEB/Translate/i18n/search/de.json
index 3d125ca2..80a5c181 100644
--- a/MLEB/Translate/i18n/search/de.json
+++ b/MLEB/Translate/i18n/search/de.json
@@ -6,16 +6,25 @@
},
"searchtranslations": "Übersetzungen suchen",
"tux-sst-edit": "Übersetzung bearbeiten",
+ "tux-sst-view-foreign": "Auf $1 ansehen",
"tux-sst-search": "Suchen",
"tux-sst-search-ph": "Übersetzungen suchen",
"tux-sst-count": "{{PLURAL:$1|Ein Ergebnis gefunden|$1 Ergebnisse gefunden}}",
"tux-sst-facet-language": "Sprachen",
"tux-sst-facet-group": "Nachrichtengruppen",
- "tux-sst-facet-orphan": "(verwaist)",
"tux-sst-nosolr-title": "Suche nicht verfügbar",
"tux-sst-nosolr-body": "Dieses Wiki hat keinen Übersetzungssuchservice.",
"tux-sst-solr-offline-title": "Die Suche ist nicht verfügbar",
"tux-sst-solr-offline-body": "Der Suchdienst ist derzeit nicht verfügbar.",
"tux-sst-next": "Nächste ›",
- "tux-sst-prev": "‹ Vorherige"
+ "tux-sst-prev": "‹ Vorherige",
+ "tux-sst-default": "Übersetzungen",
+ "tux-sst-translated": "Übersetzungen von $1",
+ "tux-sst-untranslated": "Keine Übersetzung von $1",
+ "tux-sst-outdated": "Veraltete Übersetzungen von $1",
+ "tux-sst-ellipsis-untranslated": "Keine Übersetzung",
+ "tux-sst-ellipsis-outdated": "Veraltete Übersetzungen",
+ "tux-sst-link-all-match": "Alle Suchwörter erforderlich machen.",
+ "tux-sst-match-message": "Es werden Übersetzungen angezeigt, die mit jedem Suchwort übereinstimmen. $1",
+ "tux-sst-case-sensitive": "Groß-/Kleinschreibung"
}
diff --git a/MLEB/Translate/i18n/search/diq.json b/MLEB/Translate/i18n/search/diq.json
index 44a6c39d..3390c595 100644
--- a/MLEB/Translate/i18n/search/diq.json
+++ b/MLEB/Translate/i18n/search/diq.json
@@ -2,21 +2,33 @@
"@metadata": {
"authors": [
"Mirzali",
- "Marmase"
+ "Marmase",
+ "Kumkumuk",
+ "Gırd",
+ "Asmen"
]
},
- "searchtranslations": "Bı geyr açarnayışa",
- "tux-sst-edit": "Açarnayışi bıvurne",
+ "searchtranslations": "Şıma tadayışan (çarnayışan) bıgeyrê",
+ "tux-sst-edit": "Çarnayışi bıvırne",
+ "tux-sst-view-foreign": "$1 de bıvêne",
"tux-sst-search": "Cı geyre",
- "tux-sst-search-ph": "Bı geyr açarnayışa",
- "tux-sst-count": "{{PLURAL:$1|Jew netice vineya|$1 neticey vineyay|0=teba nêvineya}}",
+ "tux-sst-search-ph": "Şıma tadayışan (çarnayışan) bıgeyrê",
+ "tux-sst-count": "{{PLURAL:$1|Yew peyni vêniya|$1 peyniy vêniyay|0=teba nêvêniya}}",
"tux-sst-facet-language": "Zıwani",
"tux-sst-facet-group": "Gruba mesacan",
- "tux-sst-facet-orphan": "(seyqur)",
"tux-sst-nosolr-title": "Cı geyrayışo nêgurweyêno",
"tux-sst-nosolr-body": "Na wiki de xızmeta açarnayışi çıniya",
"tux-sst-solr-offline-title": "Cı geyrayışo nêgurweyêno",
"tux-sst-solr-offline-body": "Xızmeta cı geyrayışi ya enewke nêgurweyêna.",
- "tux-sst-next": "Neticeyo bahdoyên",
- "tux-sst-prev": "Neticeyê verêni"
+ "tux-sst-next": "Bahdoyên>",
+ "tux-sst-prev": "<Verêni",
+ "tux-sst-default": "Çarnayışi",
+ "tux-sst-translated": "$1 ra açarnayış",
+ "tux-sst-untranslated": "$1 ra nêaçarneya",
+ "tux-sst-outdated": "$1 ra vêrde açarnayışo",
+ "tux-sst-ellipsis-untranslated": "Açarnayış çıniyo",
+ "tux-sst-ellipsis-outdated": "Açarnayışo vêrde",
+ "tux-sst-link-all-match": "Qıseyê ke geyrenê cı, pêro lazımê.",
+ "tux-sst-match-message": "Motena çarnayışanê ke pê qısanê cıgeyrayan kewnê tê. $1",
+ "tux-sst-case-sensitive": "Herfan rê hessas"
}
diff --git a/MLEB/Translate/i18n/search/dsb.json b/MLEB/Translate/i18n/search/dsb.json
index befda732..d6b42a02 100644
--- a/MLEB/Translate/i18n/search/dsb.json
+++ b/MLEB/Translate/i18n/search/dsb.json
@@ -11,7 +11,6 @@
"tux-sst-count": "{{PLURAL:$1|Jaden wuslědk namakany|$1 wuslědka namakanej|$1 wuslědki namakane|$1 wuslědkow namakane}}",
"tux-sst-facet-language": "Rěcy",
"tux-sst-facet-group": "Zdźěleńske kupki",
- "tux-sst-facet-orphan": "(wósyrośone)",
"tux-sst-nosolr-title": "Pytanje njestoj k dispoziciji",
"tux-sst-nosolr-body": "Toś ten wiki njama słužbu za pytanje pśełožkow.",
"tux-sst-solr-offline-title": "Pytanje njestoj k dispoziciji",
diff --git a/MLEB/Translate/i18n/search/el.json b/MLEB/Translate/i18n/search/el.json
index d71b37ba..81563ca6 100644
--- a/MLEB/Translate/i18n/search/el.json
+++ b/MLEB/Translate/i18n/search/el.json
@@ -1,21 +1,31 @@
{
"@metadata": {
"authors": [
- "Protnet"
+ "Protnet",
+ "Stam.nikos"
]
},
"searchtranslations": "Αναζήτηση στις μεταφράσεις",
"tux-sst-edit": "Επεξεργασία μετάφρασης",
+ "tux-sst-view-foreign": "Προβολή στο $1",
"tux-sst-search": "Αναζήτηση",
"tux-sst-search-ph": "Αναζήτηση στις μεταφράσεις",
"tux-sst-count": "{{PLURAL:$1|Βρέθηκε ένα αποτέλεσμα|Βρέθηκαν $1 αποτελέσματα}}",
"tux-sst-facet-language": "Γλώσσες",
"tux-sst-facet-group": "Ομάδες μηνυμάτων",
- "tux-sst-facet-orphan": "(ορφανά)",
"tux-sst-nosolr-title": "Αναζήτηση μη διαθέσιμη",
"tux-sst-nosolr-body": "Αυτό το wiki δεν έχει υπηρεσία αναζήτησης για μεταφράσεις.",
"tux-sst-solr-offline-title": "Αναζήτηση μη διαθέσιμη",
"tux-sst-solr-offline-body": "Η υπηρεσία αναζήτησης είναι προσωρινά μη διαθέσιμη.",
- "tux-sst-next": "Επόμενα αποτελέσματα",
- "tux-sst-prev": "Προηγούμενα αποτελέσματα"
+ "tux-sst-next": "Επόμενο >",
+ "tux-sst-prev": "< Προηγούμενο",
+ "tux-sst-default": "Μεταφράσεις",
+ "tux-sst-translated": "Μεταφράσεις από $1",
+ "tux-sst-untranslated": "Καμία μετάφραση από τα $1",
+ "tux-sst-outdated": "Παρωχημένες μεταφράσεις από τα $1",
+ "tux-sst-ellipsis-untranslated": "Καμία μετάφραση",
+ "tux-sst-ellipsis-outdated": "Παρωχημένες μεταφράσεις",
+ "tux-sst-link-all-match": "Απαιτούνται όλες οι λέξεις αναζήτησης.",
+ "tux-sst-match-message": "Εμφανίζει μεταφράσεις που ταιριάζουν με οποιοαδήποτε από τις λέξεις αναζήτησης. $1",
+ "tux-sst-case-sensitive": "Διάκριση πεζών-κεφαλαίων"
}
diff --git a/MLEB/Translate/i18n/search/en.json b/MLEB/Translate/i18n/search/en.json
index 5b7ea8cd..dc6eced1 100644
--- a/MLEB/Translate/i18n/search/en.json
+++ b/MLEB/Translate/i18n/search/en.json
@@ -6,16 +6,25 @@
},
"searchtranslations": "Search translations",
"tux-sst-edit": "Edit translation",
+ "tux-sst-view-foreign": "View at $1",
"tux-sst-search": "Search",
"tux-sst-search-ph": "Search translations",
"tux-sst-count": "{{PLURAL:$1|One result found|$1 results found}}",
"tux-sst-facet-language": "Languages",
"tux-sst-facet-group": "Message groups",
- "tux-sst-facet-orphan": "(orphan)",
"tux-sst-nosolr-title": "Search unavailable",
"tux-sst-nosolr-body": "This wiki does not have a translation search service.",
"tux-sst-solr-offline-title": "Search unavailable",
"tux-sst-solr-offline-body": "The search service is temporarily unavailable.",
"tux-sst-next": "Next ›",
- "tux-sst-prev": "‹ Previous"
-} \ No newline at end of file
+ "tux-sst-prev": "‹ Previous",
+ "tux-sst-default": "Translations",
+ "tux-sst-translated": "Translations from $1",
+ "tux-sst-untranslated": "No translation from $1",
+ "tux-sst-outdated": "Outdated translations from $1",
+ "tux-sst-ellipsis-untranslated": "No translation",
+ "tux-sst-ellipsis-outdated": "Outdated translations",
+ "tux-sst-link-all-match": "Require all search words.",
+ "tux-sst-match-message": "Showing translations which match any of the search words. $1",
+ "tux-sst-case-sensitive": "Case sensitive"
+}
diff --git a/MLEB/Translate/i18n/search/es.json b/MLEB/Translate/i18n/search/es.json
index dd6a0dfb..c95afb32 100644
--- a/MLEB/Translate/i18n/search/es.json
+++ b/MLEB/Translate/i18n/search/es.json
@@ -8,16 +8,25 @@
},
"searchtranslations": "Buscar en las traducciones",
"tux-sst-edit": "Editar traducción",
+ "tux-sst-view-foreign": "Ver en $1",
"tux-sst-search": "Buscar",
"tux-sst-search-ph": "Buscar traducciones",
"tux-sst-count": "Se {{PLURAL:$1|encontró un resultado|encontraron $1 resultados}}",
"tux-sst-facet-language": "Idiomas",
"tux-sst-facet-group": "Grupos de mensajes",
- "tux-sst-facet-orphan": "(huérfano)",
"tux-sst-nosolr-title": "Búsqueda no disponible",
"tux-sst-nosolr-body": "Este wiki no tiene un servicio de búsqueda de traducciones.",
"tux-sst-solr-offline-title": "Búsqueda no disponible",
"tux-sst-solr-offline-body": "El servicio de búsqueda no está disponible temporalmente.",
- "tux-sst-next": "Siguientes ›",
- "tux-sst-prev": "‹ Anteriores"
+ "tux-sst-next": "Siguientes →",
+ "tux-sst-prev": "← Anteriores",
+ "tux-sst-default": "Traducciones",
+ "tux-sst-translated": "Traducciones del $1",
+ "tux-sst-untranslated": "Sin traducción del $1",
+ "tux-sst-outdated": "Traducciones desactualizadas del $1",
+ "tux-sst-ellipsis-untranslated": "Sin traducción",
+ "tux-sst-ellipsis-outdated": "Traducciones desactualizadas",
+ "tux-sst-link-all-match": "Requerir todas las palabras que se buscan.",
+ "tux-sst-match-message": "Se muestran las traducciones que coinciden con cualesquiera de las palabras buscadas. $1",
+ "tux-sst-case-sensitive": "Distinguir mayúsculas de minúsculas"
}
diff --git a/MLEB/Translate/i18n/search/et.json b/MLEB/Translate/i18n/search/et.json
index 58e47e07..d85e22c5 100644
--- a/MLEB/Translate/i18n/search/et.json
+++ b/MLEB/Translate/i18n/search/et.json
@@ -11,11 +11,17 @@
"tux-sst-count": "{{PLURAL:$1|Üks tulemus leitud|$1 tulemust leitud}}",
"tux-sst-facet-language": "Keeled",
"tux-sst-facet-group": "Sõnumirühmad",
- "tux-sst-facet-orphan": "(orb)",
"tux-sst-nosolr-title": "Otsing pole saadaval",
"tux-sst-nosolr-body": "Sellel vikil pole tõlkeotsimisteenust.",
"tux-sst-solr-offline-title": "Otsing pole saadaval",
"tux-sst-solr-offline-body": "Otsimisteenus pole ajutiselt saadaval.",
"tux-sst-next": "Järgmised ›",
- "tux-sst-prev": "‹ Eelmised"
+ "tux-sst-prev": "‹ Eelmised",
+ "tux-sst-default": "Tõlked",
+ "tux-sst-translated": "Tõlgitud lähtekeelest \"$1\"",
+ "tux-sst-untranslated": "Tõlkimata lähtekeelest \"$1\"",
+ "tux-sst-ellipsis-outdated": "Iganenud tõlked",
+ "tux-sst-link-all-match": "Nõua kõiki otsisõnu.",
+ "tux-sst-match-message": "Näidatakse tõlkeid, mis vastavad vähemalt ühele otsisõnale. $1",
+ "tux-sst-case-sensitive": "Tõstutundlik"
}
diff --git a/MLEB/Translate/i18n/search/eu.json b/MLEB/Translate/i18n/search/eu.json
index 777e86a9..c0d18248 100644
--- a/MLEB/Translate/i18n/search/eu.json
+++ b/MLEB/Translate/i18n/search/eu.json
@@ -11,10 +11,11 @@
"tux-sst-search-ph": "Itzulpenak bilatu",
"tux-sst-count": "{{PLURAL:$1|Emaitza bat aurkitu da|$1 emaitza aurkitu dira}}",
"tux-sst-facet-language": "Hizkuntzak",
- "tux-sst-facet-orphan": "(umezurtza)",
+ "tux-sst-facet-group": "Mezu-taldeak",
"tux-sst-nosolr-title": "Bilaketa ez dago erabilgarri",
"tux-sst-solr-offline-title": "Bilaketa ez dago erabilgarri",
"tux-sst-solr-offline-body": "Une honetan bilaketa zerbitzua ez dago erabilgarri.",
- "tux-sst-next": "Hurrengo emaitzak",
- "tux-sst-prev": "Aurreko emaitzak"
+ "tux-sst-next": "Hurrengoa >",
+ "tux-sst-prev": "< Aurrekoa",
+ "tux-sst-default": "Itzulpenak"
}
diff --git a/MLEB/Translate/i18n/search/fa.json b/MLEB/Translate/i18n/search/fa.json
index 64794d83..b6ca4854 100644
--- a/MLEB/Translate/i18n/search/fa.json
+++ b/MLEB/Translate/i18n/search/fa.json
@@ -2,21 +2,32 @@
"@metadata": {
"authors": [
"Ebraminio",
- "Danialbehzadi"
+ "Danialbehzadi",
+ "Reza1615",
+ "Huji"
]
},
"searchtranslations": "جستجوی ترجمه‌ها",
"tux-sst-edit": "ویرایش ترجمه",
+ "tux-sst-view-foreign": "نمایش در $1",
"tux-sst-search": "جستجو",
"tux-sst-search-ph": "جستجوی ترجمه‌ها",
"tux-sst-count": "{{PLURAL:$1|0=هیچ نتیجه‌ای یافت نشد|یک نتیجه یافت شد|$1 نتیجه یافت شد}}",
"tux-sst-facet-language": "زبان‌ها",
- "tux-sst-facet-group": "گروه‌های پیام",
- "tux-sst-facet-orphan": "(یتیم)",
+ "tux-sst-facet-group": "گروه‌های پیغام",
"tux-sst-nosolr-title": "جستجوی ناموجود است",
"tux-sst-nosolr-body": "این ویکی خدمات جستجوی ترجمه ندارد.",
"tux-sst-solr-offline-title": "جستجوی ناموجود است",
"tux-sst-solr-offline-body": "خدمت جستجو به‌صورت موقت ناموجود است.",
"tux-sst-next": "بعدی ←",
- "tux-sst-prev": "→ پیشین"
+ "tux-sst-prev": "→ پیشین",
+ "tux-sst-default": "ترجمه‌ها",
+ "tux-sst-translated": "ترجمه‌ها از $1",
+ "tux-sst-untranslated": "فاقد ترجمه از $1",
+ "tux-sst-outdated": "ترجمه‌های تاریخ گذشته از $1",
+ "tux-sst-ellipsis-untranslated": "هیچ ترجمه‌ای موجود نیست",
+ "tux-sst-ellipsis-outdated": "ترجمه‌های تاریخ گذشته",
+ "tux-sst-link-all-match": "تمام واژه‌های جستجو شده لازمند.",
+ "tux-sst-match-message": "نمایش ترجمه‌هایی که با هر کدام از واژه‌های جستجو شده مطابقت دارند: $1",
+ "tux-sst-case-sensitive": "حساس به بزرگی و کوچکی حروف"
}
diff --git a/MLEB/Translate/i18n/search/fi.json b/MLEB/Translate/i18n/search/fi.json
index 97e2cdc0..a8baed2c 100644
--- a/MLEB/Translate/i18n/search/fi.json
+++ b/MLEB/Translate/i18n/search/fi.json
@@ -9,13 +9,25 @@
},
"searchtranslations": "Etsi käännöksiä",
"tux-sst-edit": "Muokkaa käännöstä",
+ "tux-sst-view-foreign": "Näytä sivulla $1",
"tux-sst-search": "Hae",
"tux-sst-search-ph": "Etsi käännöksiä",
"tux-sst-count": "{{PLURAL:$1|Yksi hakutulos|$1 hakutulosta}}",
"tux-sst-facet-language": "Kielet",
"tux-sst-facet-group": "Viestiryhmät",
- "tux-sst-facet-orphan": "(orpo)",
"tux-sst-nosolr-title": "Haku ei ole käytössä",
"tux-sst-nosolr-body": "Hakupalvelu ei ole käytössä tässä wikissä.",
- "tux-sst-solr-offline-title": "Haku ei ole käytössä"
+ "tux-sst-solr-offline-title": "Haku ei ole käytössä",
+ "tux-sst-solr-offline-body": "Hakupalvelu on tilapäisesti pois käytöstä.",
+ "tux-sst-next": "Seuraava ›",
+ "tux-sst-prev": "‹ Edellinen",
+ "tux-sst-default": "Käännökset",
+ "tux-sst-translated": "Käännetty kielestä $1",
+ "tux-sst-untranslated": "Kääntämättä kielestä $1",
+ "tux-sst-outdated": "Vanhentuneet käännökset kielestä $1",
+ "tux-sst-ellipsis-untranslated": "Kääntämättömät",
+ "tux-sst-ellipsis-outdated": "Vanhentuneet käännökset",
+ "tux-sst-link-all-match": "Vaadi kaikkien hakusanojen täsmäys.",
+ "tux-sst-match-message": "Näytetään mihin tahansa hakusanaan täsmäävät käännökset. $1",
+ "tux-sst-case-sensitive": "kirjainkoko on merkitsevä"
}
diff --git a/MLEB/Translate/i18n/search/fo.json b/MLEB/Translate/i18n/search/fo.json
index fdee5a10..77e88615 100644
--- a/MLEB/Translate/i18n/search/fo.json
+++ b/MLEB/Translate/i18n/search/fo.json
@@ -11,7 +11,6 @@
"tux-sst-count": "{{PLURAL:$1|Eitt úrslit funnið|$1 úrslit funnin}}",
"tux-sst-facet-language": "Mál",
"tux-sst-facet-group": "Boðbólkar",
- "tux-sst-facet-orphan": "(foreldraleys)",
"tux-sst-nosolr-title": "Leiting ber ikki til",
"tux-sst-nosolr-body": "Henda wiki'in hevur ikki eina tænastu har til ber at leita eftir týðingum.",
"tux-sst-solr-offline-title": "Leitan ber ikki til",
diff --git a/MLEB/Translate/i18n/search/fr.json b/MLEB/Translate/i18n/search/fr.json
index ec88934d..f81f7131 100644
--- a/MLEB/Translate/i18n/search/fr.json
+++ b/MLEB/Translate/i18n/search/fr.json
@@ -2,21 +2,37 @@
"@metadata": {
"authors": [
"Gomoko",
- "Crochet.david"
+ "Crochet.david",
+ "TomT0m",
+ "Wladek92",
+ "Titip1995",
+ "Bluenaranja",
+ "Verdy p",
+ "Pols12",
+ "Urhixidur"
]
},
"searchtranslations": "Recherche de traductions",
"tux-sst-edit": "Modifier la traduction",
+ "tux-sst-view-foreign": "Voir sur $1",
"tux-sst-search": "Rechercher",
"tux-sst-search-ph": "Recherche de traductions",
- "tux-sst-count": "{{PLURAL:$1|Un résultat trouvé|$1 résultats trouvés}}",
+ "tux-sst-count": "{{PLURAL:$1|0=Aucun résultat trouvé|1=Un résultat trouvé|$1 résultats trouvés}}",
"tux-sst-facet-language": "Langues",
"tux-sst-facet-group": "Groupes de message",
- "tux-sst-facet-orphan": "(orphelin)",
"tux-sst-nosolr-title": "Recherche indisponible",
"tux-sst-nosolr-body": "Ce wiki n’a pas de service de recherche de traduction.",
"tux-sst-solr-offline-title": "Recherche indisponible",
"tux-sst-solr-offline-body": "Le service de recherche est temporairement indisponible.",
"tux-sst-next": "Suivant →",
- "tux-sst-prev": "Résultats précédents"
+ "tux-sst-prev": "← Précédent",
+ "tux-sst-default": "Traductions",
+ "tux-sst-translated": "Déjà traduits à partir de $1",
+ "tux-sst-untranslated": "Pas encore traduits de $1",
+ "tux-sst-outdated": "Traductions périmées à partir de $1",
+ "tux-sst-ellipsis-untranslated": "Non traduit",
+ "tux-sst-ellipsis-outdated": "Traductions désuètes",
+ "tux-sst-link-all-match": "Requiert tous les termes de recherche",
+ "tux-sst-match-message": "Montre les traductions qui correspondent à chacun des mots de la recherche. $1",
+ "tux-sst-case-sensitive": "Sensible à la casse"
}
diff --git a/MLEB/Translate/i18n/search/fy.json b/MLEB/Translate/i18n/search/fy.json
index 3a6893ad..0005400d 100644
--- a/MLEB/Translate/i18n/search/fy.json
+++ b/MLEB/Translate/i18n/search/fy.json
@@ -1,9 +1,11 @@
{
"@metadata": {
"authors": [
- "Robin0van0der0vliet"
+ "Robin0van0der0vliet",
+ "Robin van der Vliet"
]
},
+ "tux-sst-edit": "Oersetting bewurkje",
"tux-sst-search": "Sykje",
"tux-sst-facet-language": "Talen"
}
diff --git a/MLEB/Translate/i18n/search/gl.json b/MLEB/Translate/i18n/search/gl.json
index bca78c1a..e80439de 100644
--- a/MLEB/Translate/i18n/search/gl.json
+++ b/MLEB/Translate/i18n/search/gl.json
@@ -2,21 +2,31 @@
"@metadata": {
"authors": [
"Toliño",
- "Elisardojm"
+ "Elisardojm",
+ "Fitoschido"
]
},
"searchtranslations": "Procurar nas traducións",
"tux-sst-edit": "Editar a tradución",
+ "tux-sst-view-foreign": "Ver en $1",
"tux-sst-search": "Procurar",
"tux-sst-search-ph": "Procurar nas traducións",
"tux-sst-count": "{{PLURAL:$1|Atopouse 1 resultado|Atopáronse $1 resultados}}",
"tux-sst-facet-language": "Linguas",
"tux-sst-facet-group": "Grupos de mensaxes",
- "tux-sst-facet-orphan": "(orfos)",
"tux-sst-nosolr-title": "A procura non está dispoñible",
"tux-sst-nosolr-body": "Este wiki non dispón dun servizo de procura de traducións.",
"tux-sst-solr-offline-title": "A procura non está dispoñible",
"tux-sst-solr-offline-body": "O servizo de procura non está dispoñible temporalmente.",
- "tux-sst-next": "Seguintes ›",
- "tux-sst-prev": "< Anteriores"
+ "tux-sst-next": "Seguintes →",
+ "tux-sst-prev": "← Anteriores",
+ "tux-sst-default": "Traducións",
+ "tux-sst-translated": "Traducións do $1",
+ "tux-sst-untranslated": "Non hai traducións do $1",
+ "tux-sst-outdated": "Traducións obsoletas do $1",
+ "tux-sst-ellipsis-untranslated": "Sen tradución",
+ "tux-sst-ellipsis-outdated": "Traducións obsoletas",
+ "tux-sst-link-all-match": "Esixir todas as palabras da procura.",
+ "tux-sst-match-message": "Amosando as traducións que coinciden con calquera das palabras da procura. $1",
+ "tux-sst-case-sensitive": "Distinguir entre maiúsculas e minúsculas"
}
diff --git a/MLEB/Translate/i18n/search/gu.json b/MLEB/Translate/i18n/search/gu.json
index f86ceb50..e783b68d 100644
--- a/MLEB/Translate/i18n/search/gu.json
+++ b/MLEB/Translate/i18n/search/gu.json
@@ -1,21 +1,21 @@
{
"@metadata": {
"authors": [
- "Ashok modhvadia"
+ "Ashok modhvadia",
+ "Dsvyas"
]
},
"searchtranslations": "ભાષાંતરો શોધો",
"tux-sst-edit": "ભાષાંતરો સંપાદિત કરો",
"tux-sst-search": "શોધો",
"tux-sst-search-ph": "ભાષાંતરો શોધો",
- "tux-sst-count": "{{PLURAL:$1|એક પરિણામ મળ્યુ|$1 પરિણામો મળ્યા}}",
+ "tux-sst-count": "{{PLURAL:$1|એક પરિણામ મળ્યું|$1 પરિણામો મળ્યા}}",
"tux-sst-facet-language": "ભાષાઓ",
"tux-sst-facet-group": "સંદેશ જૂથો",
- "tux-sst-facet-orphan": "(અનાથ)",
"tux-sst-nosolr-title": "શોધ ઉપલબ્ધ નથી",
"tux-sst-nosolr-body": "આ વિકિ પર ભાષાંતર શોધ સેવા ઉપલબ્ધ નથી.",
"tux-sst-solr-offline-title": "શોધ ઉપલબ્ધ નથી",
"tux-sst-solr-offline-body": "આ શોધ સેવા હાલ ઉપલબ્ધ નથી.",
- "tux-sst-next": "પછીનાં પરિણામો",
- "tux-sst-prev": "આગલાં પરિણામો"
+ "tux-sst-next": "પછીનું",
+ "tux-sst-prev": "આગલું"
}
diff --git a/MLEB/Translate/i18n/search/he.json b/MLEB/Translate/i18n/search/he.json
index 07f951e0..cfcca51c 100644
--- a/MLEB/Translate/i18n/search/he.json
+++ b/MLEB/Translate/i18n/search/he.json
@@ -6,16 +6,25 @@
},
"searchtranslations": "חיפוש בתרגומים",
"tux-sst-edit": "עריכת התרגום",
+ "tux-sst-view-foreign": "להציג באתר $1",
"tux-sst-search": "חיפוש",
"tux-sst-search-ph": "חיפוש בתרגומים",
"tux-sst-count": "{{PLURAL:$1|נמצאה תוצאה אחת|נמצאו $1 תוצאות}}",
"tux-sst-facet-language": "שפות",
"tux-sst-facet-group": "קבוצות הודעות",
- "tux-sst-facet-orphan": "(יתומים)",
"tux-sst-nosolr-title": "החיפוש אינו זמין",
"tux-sst-nosolr-body": "בוויקי הזה אין שירות חיפוש בתרגומים.",
"tux-sst-solr-offline-title": "החיפוש אינו זמין",
"tux-sst-solr-offline-body": "זמנית שירות החיפוש אינו זמין.",
"tux-sst-next": "הבאות ›",
- "tux-sst-prev": "‹ הקודמות"
+ "tux-sst-prev": "‹ הקודמות",
+ "tux-sst-default": "תרגומים",
+ "tux-sst-translated": "תרגומים מ־$1",
+ "tux-sst-untranslated": "אין תרגומים מ־$1",
+ "tux-sst-outdated": "תרגומים מיושנים מ־$1",
+ "tux-sst-ellipsis-untranslated": "אין תרגום",
+ "tux-sst-ellipsis-outdated": "תרגומים מיושנים",
+ "tux-sst-link-all-match": "לדרוש את כל מילות החיפוש.",
+ "tux-sst-match-message": "הצגת תרגומים שמתאימים למילה כלשהי ממילות החיפוש. $1",
+ "tux-sst-case-sensitive": "תלוי רישיות"
}
diff --git a/MLEB/Translate/i18n/search/hsb.json b/MLEB/Translate/i18n/search/hsb.json
index 12fddb79..f90fd92c 100644
--- a/MLEB/Translate/i18n/search/hsb.json
+++ b/MLEB/Translate/i18n/search/hsb.json
@@ -11,7 +11,6 @@
"tux-sst-count": "{{PLURAL:$1|Jedyn wuslědk namakany|$1 wuslědkaj namakanej|$1 wuslědki namakane|$1 wuslědkow namakane}}",
"tux-sst-facet-language": "Rěče",
"tux-sst-facet-group": "Zdźělenske skupiny",
- "tux-sst-facet-orphan": "(wosyroćene)",
"tux-sst-nosolr-title": "Pytanje k dispoziciji njesteji",
"tux-sst-nosolr-body": "Tutón wiki nima słužbu za pytanje přełožkow.",
"tux-sst-solr-offline-title": "Pytanje k dispoziciji njesteji",
diff --git a/MLEB/Translate/i18n/search/ia.json b/MLEB/Translate/i18n/search/ia.json
index cad828b0..8a3cfaa5 100644
--- a/MLEB/Translate/i18n/search/ia.json
+++ b/MLEB/Translate/i18n/search/ia.json
@@ -11,11 +11,10 @@
"tux-sst-count": "{{PLURAL:$1|Un resultato trovate|$1 resultatos trovate}}",
"tux-sst-facet-language": "Linguas",
"tux-sst-facet-group": "Gruppos de messages",
- "tux-sst-facet-orphan": "(orphano)",
"tux-sst-nosolr-title": "Recerca indisponibile",
"tux-sst-nosolr-body": "Iste wiki non ha un servicio de recerca de traductiones.",
"tux-sst-solr-offline-title": "Recerca indisponibile",
"tux-sst-solr-offline-body": "Le servicio de recerca es temporarimente indisponibile.",
- "tux-sst-next": "Sequente resultatos",
- "tux-sst-prev": "Precedente resultatos"
+ "tux-sst-next": "Sequente ›",
+ "tux-sst-prev": "‹ Precedente"
}
diff --git a/MLEB/Translate/i18n/search/ilo.json b/MLEB/Translate/i18n/search/ilo.json
index b826ea56..a3cf9481 100644
--- a/MLEB/Translate/i18n/search/ilo.json
+++ b/MLEB/Translate/i18n/search/ilo.json
@@ -6,16 +6,15 @@
},
"searchtranslations": "Agbiruk kadagiti patarus",
"tux-sst-edit": "Urnosen ti patarus",
- "tux-sst-search": "Biruken",
+ "tux-sst-search": "Agbiruk",
"tux-sst-search-ph": "Agbiruk kadagiti patarus",
"tux-sst-count": "{{PLURAL:$1|Maysa a resulta a nabirukan|Dagiti $1 a resulta a nabirukan}}",
"tux-sst-facet-language": "Dagiti pagsasao",
"tux-sst-facet-group": "Dagiti grupo ti mensahe",
- "tux-sst-facet-orphan": "(ulila)",
"tux-sst-nosolr-title": "Saan a magun-od ti panagbiruk",
"tux-sst-nosolr-body": "Daytoy a wiki ket awan ti serbisio a panagbiruk ti patarus",
"tux-sst-solr-offline-title": "Saan a magun-od ti panagbiruk",
"tux-sst-solr-offline-body": "Ti serbisio ti panagbiruk ket temporario a saan a magun-od",
- "tux-sst-next": "Dagiti sumaruno a resulta",
- "tux-sst-prev": "Dagiti dati a resulta"
+ "tux-sst-next": "Sumaruno ›",
+ "tux-sst-prev": "‹ Napalabas"
}
diff --git a/MLEB/Translate/i18n/search/it.json b/MLEB/Translate/i18n/search/it.json
index 5212b75d..c9a63c89 100644
--- a/MLEB/Translate/i18n/search/it.json
+++ b/MLEB/Translate/i18n/search/it.json
@@ -2,21 +2,32 @@
"@metadata": {
"authors": [
"Beta16",
- "Pippinu"
+ "Pippinu",
+ "F. Cosoleto",
+ "Statix64",
+ "Macofe",
+ "Sarvaturi"
]
},
"searchtranslations": "Ricerca traduzioni",
"tux-sst-edit": "Modifica traduzione",
+ "tux-sst-view-foreign": "Visualizza su $1",
"tux-sst-search": "Cerca",
"tux-sst-search-ph": "Cerca traduzioni",
"tux-sst-count": "{{PLURAL:$1|Un risultato trovato|$1 risultati trovati}}",
"tux-sst-facet-language": "Lingue",
"tux-sst-facet-group": "Gruppi di messaggi",
- "tux-sst-facet-orphan": "(orfano)",
"tux-sst-nosolr-title": "Ricerca non disponibile",
"tux-sst-nosolr-body": "Questo wiki non ha un servizio di ricerca delle traduzioni.",
"tux-sst-solr-offline-title": "Ricerca non disponibile",
"tux-sst-solr-offline-body": "Il servizio di ricerca è temporaneamente non disponibile.",
- "tux-sst-next": "Risultati succesivi",
- "tux-sst-prev": "Risultati precedenti"
+ "tux-sst-next": "Risultati successivi ›",
+ "tux-sst-prev": "‹ Risultati precedenti",
+ "tux-sst-default": "Traduzioni",
+ "tux-sst-translated": "Traduzioni da $1",
+ "tux-sst-untranslated": "Nessuna traduzione da $1",
+ "tux-sst-outdated": "Traduzioni non aggiornate da $1",
+ "tux-sst-ellipsis-untranslated": "Nessuna traduzione",
+ "tux-sst-ellipsis-outdated": "Traduzioni non aggiornate",
+ "tux-sst-case-sensitive": "Distingui maiuscole e minuscole"
}
diff --git a/MLEB/Translate/i18n/search/ja.json b/MLEB/Translate/i18n/search/ja.json
index 54e35ffc..3221f9cd 100644
--- a/MLEB/Translate/i18n/search/ja.json
+++ b/MLEB/Translate/i18n/search/ja.json
@@ -1,7 +1,9 @@
{
"@metadata": {
"authors": [
- "Shirayuki"
+ "Shirayuki",
+ "Sujiniku",
+ "Otokoume"
]
},
"searchtranslations": "翻訳の検索",
@@ -11,11 +13,18 @@
"tux-sst-count": "{{PLURAL:$1|$1 件見つかりました}}",
"tux-sst-facet-language": "言語",
"tux-sst-facet-group": "メッセージ群",
- "tux-sst-facet-orphan": "(孤立)",
"tux-sst-nosolr-title": "検索は利用できません",
"tux-sst-nosolr-body": "このウィキには翻訳の検索サービスはありません。",
"tux-sst-solr-offline-title": "検索は利用できません",
"tux-sst-solr-offline-body": "検索サービスは一時的に利用できません。",
- "tux-sst-next": "次の検索結果",
- "tux-sst-prev": "前の検索結果"
+ "tux-sst-next": "次 ›",
+ "tux-sst-prev": "‹ 前",
+ "tux-sst-default": "翻訳",
+ "tux-sst-translated": "$1 から翻訳",
+ "tux-sst-untranslated": "$1 からの翻訳はありません。",
+ "tux-sst-outdated": "$1 からの翻訳が古くなっています",
+ "tux-sst-ellipsis-untranslated": "翻訳されていません",
+ "tux-sst-ellipsis-outdated": "更新されていない翻訳",
+ "tux-sst-match-message": "検索ワードのいずれかに一致する翻訳を表示しています。 $1",
+ "tux-sst-case-sensitive": "大文字・小文字を区別"
}
diff --git a/MLEB/Translate/i18n/search/ka.json b/MLEB/Translate/i18n/search/ka.json
index 9270f840..27f6b000 100644
--- a/MLEB/Translate/i18n/search/ka.json
+++ b/MLEB/Translate/i18n/search/ka.json
@@ -10,5 +10,12 @@
"tux-sst-search-ph": "თარგმანების ძიება",
"tux-sst-count": "{{PLURAL:$1|ნაპოვნია ერთი შედეგი|ნაპოვნია $1 შედეგი}}",
"tux-sst-facet-language": "ენები",
- "tux-sst-facet-group": "შეტყობინების ჯგუფები"
+ "tux-sst-facet-group": "შეტყობინების ჯგუფები",
+ "tux-sst-nosolr-title": "ძიება მიუწვდომელია",
+ "tux-sst-nosolr-body": "ამ ვიკიში არ არის თარგმანების ძიების სერვისი.",
+ "tux-sst-solr-offline-title": "ძიება მიუწვდომელია",
+ "tux-sst-solr-offline-body": "ძიების სერვისი დროებით მიუწვდომელია.",
+ "tux-sst-next": "შემდეგი ›",
+ "tux-sst-prev": "‹ წინა",
+ "tux-sst-default": "თარგმანები"
}
diff --git a/MLEB/Translate/i18n/search/ko.json b/MLEB/Translate/i18n/search/ko.json
index 211e7f58..91842930 100644
--- a/MLEB/Translate/i18n/search/ko.json
+++ b/MLEB/Translate/i18n/search/ko.json
@@ -7,16 +7,25 @@
},
"searchtranslations": "번역 검색",
"tux-sst-edit": "번역 편집",
+ "tux-sst-view-foreign": "$1에서 보기",
"tux-sst-search": "검색",
"tux-sst-search-ph": "번역 검색",
"tux-sst-count": "{{PLURAL:$1|결과 한 개를 찾았습니다|결과 $1개를 찾았습니다}}",
"tux-sst-facet-language": "언어",
"tux-sst-facet-group": "메시지 그룹",
- "tux-sst-facet-orphan": "(외톨이)",
"tux-sst-nosolr-title": "검색을 사용할 수 없음",
"tux-sst-nosolr-body": "이 위키는 번역 검색 서비스가 없습니다.",
"tux-sst-solr-offline-title": "검색을 사용할 수 없음",
"tux-sst-solr-offline-body": "검색 서비스를 일시적으로 사용할 수 없습니다.",
"tux-sst-next": "다음 ›",
- "tux-sst-prev": "‹ 이전"
+ "tux-sst-prev": "‹ 이전",
+ "tux-sst-default": "번역",
+ "tux-sst-translated": "$1에서의 번역",
+ "tux-sst-untranslated": "$1에서의 번역 없음",
+ "tux-sst-outdated": "$1에서의 오래된 번역",
+ "tux-sst-ellipsis-untranslated": "번역 없음",
+ "tux-sst-ellipsis-outdated": "오래된 번역",
+ "tux-sst-link-all-match": "모든 검색 낱말이 필요합니다.",
+ "tux-sst-match-message": "검색 낱말과 일치하는 번역을 보여줍니다. $1",
+ "tux-sst-case-sensitive": "대소문자 구분"
}
diff --git a/MLEB/Translate/i18n/search/krc.json b/MLEB/Translate/i18n/search/krc.json
index bf6b56ce..441a2963 100644
--- a/MLEB/Translate/i18n/search/krc.json
+++ b/MLEB/Translate/i18n/search/krc.json
@@ -1,7 +1,8 @@
{
"@metadata": {
"authors": [
- "Iltever"
+ "Iltever",
+ "Ernác"
]
},
"tux-sst-facet-language": "Тилле"
diff --git a/MLEB/Translate/i18n/search/ksh.json b/MLEB/Translate/i18n/search/ksh.json
index a1375148..fd26b838 100644
--- a/MLEB/Translate/i18n/search/ksh.json
+++ b/MLEB/Translate/i18n/search/ksh.json
@@ -5,17 +5,26 @@
]
},
"searchtranslations": "Övversäzonge söhke",
- "tux-sst-edit": "de Övversäzong ändere",
+ "tux-sst-edit": "Di Övversäzong änndere",
+ "tux-sst-view-foreign": "Op $1 beloohre",
"tux-sst-search": "Lohß jonn!",
"tux-sst-search-ph": "Övversäzonge söhke",
"tux-sst-count": "{{PLURAL:$1|Eine|$1|Nix}} jefonge",
"tux-sst-facet-language": "Schprohche",
"tux-sst-facet-group": "Nohreeschtejroppe",
- "tux-sst-facet-orphan": "(kein Jropp)",
"tux-sst-nosolr-title": "Söhke es nit müjjelesch.",
"tux-sst-nosolr-body": "En heh däm Wiki kammer nit noh Översäzonge söhke.",
"tux-sst-solr-offline-title": "Söhke es nit müjjelesch.",
"tux-sst-solr-offline-body": "Et Söhke es em Momang nit müjjelesch.",
"tux-sst-next": "De Nähkße ›",
- "tux-sst-prev": "‹ De Förrėje"
+ "tux-sst-prev": "‹ De Förrėje",
+ "tux-sst-default": "Övversäzonge",
+ "tux-sst-translated": "Översäzonge us em $1 ",
+ "tux-sst-untranslated": "Kein Översäzonge us em $1 ",
+ "tux-sst-outdated": "Övverhollte Översäzonge us em $1 ",
+ "tux-sst-ellipsis-untranslated": "Kein Övversäzong",
+ "tux-sst-ellipsis-outdated": "Övverhollte Översäzonge",
+ "tux-sst-link-all-match": "Donn noh all dä Wööter soöhke.",
+ "tux-sst-match-message": "Mer zeije Översäzonge, di winneschsdens eij Woot vun all dä Wööter änthallde.\n$1",
+ "tux-sst-case-sensitive": "Jruhs- un Kleinschreff ongerscheijde"
}
diff --git a/MLEB/Translate/i18n/search/ku-latn.json b/MLEB/Translate/i18n/search/ku-latn.json
index d8fa5029..0d18238a 100644
--- a/MLEB/Translate/i18n/search/ku-latn.json
+++ b/MLEB/Translate/i18n/search/ku-latn.json
@@ -12,6 +12,11 @@
"tux-sst-count": "{{PLURAL:$1|Encamek hat dîtin|$1 encam hatin dîtin}}",
"tux-sst-facet-language": "Ziman",
"tux-sst-facet-group": "Komên peyaman",
- "tux-sst-facet-orphan": "(sêwî)",
- "tux-sst-next": "Pêşve›"
+ "tux-sst-nosolr-title": "Lêgerîn tune ye",
+ "tux-sst-solr-offline-title": "Lêgerîn tune ye",
+ "tux-sst-next": "Pêşve›",
+ "tux-sst-prev": "Paşve",
+ "tux-sst-default": "Werger",
+ "tux-sst-translated": "Wergerên ji $1",
+ "tux-sst-case-sensitive": "Nivîsîna biçûk û mezin"
}
diff --git a/MLEB/Translate/i18n/search/lb.json b/MLEB/Translate/i18n/search/lb.json
index ff395f80..e12e4146 100644
--- a/MLEB/Translate/i18n/search/lb.json
+++ b/MLEB/Translate/i18n/search/lb.json
@@ -6,16 +6,25 @@
},
"searchtranslations": "Iwwersetzunge sichen",
"tux-sst-edit": "Iwwersetzung änneren",
+ "tux-sst-view-foreign": "Op $1 kucken",
"tux-sst-search": "Sichen",
"tux-sst-search-ph": "Iwwersetzunge sichen",
"tux-sst-count": "{{PLURAL:$1|Ee Resultat|$1 Resultater}} fonnt",
"tux-sst-facet-language": "Sproochen",
"tux-sst-facet-group": "Gruppe vu Messagen",
- "tux-sst-facet-orphan": "(verwaist)",
"tux-sst-nosolr-title": "Sichen ass net disponibel",
"tux-sst-nosolr-body": "Dës Wiki huet d'Sichfonctioun vun den Iwwersetzungen net.",
"tux-sst-solr-offline-title": "Sichen ass net disponibel",
"tux-sst-solr-offline-body": "D'Sichfonctioun ass temporär net disponibel.",
"tux-sst-next": "Nächst ›",
- "tux-sst-prev": "‹ Vireg"
+ "tux-sst-prev": "‹ Vireg",
+ "tux-sst-default": "Iwwersetzungen",
+ "tux-sst-translated": "Iwwersetzunge vu(n) $1",
+ "tux-sst-untranslated": "Keng Iwwersetzung vu(n) $1",
+ "tux-sst-outdated": "Vereelst Iwwersetzung vu(n) $1",
+ "tux-sst-ellipsis-untranslated": "Keng Iwwersetzung",
+ "tux-sst-ellipsis-outdated": " Vereelst Iwwersetzungen",
+ "tux-sst-link-all-match": "All Sichwierder verlaangen.",
+ "tux-sst-match-message": "Iwwersetzunge weise mat engem vun de gesichte Wierder. $1",
+ "tux-sst-case-sensitive": "Ënnerscheed tëscht groussen a klenge Buschtawen"
}
diff --git a/MLEB/Translate/i18n/search/lrc.json b/MLEB/Translate/i18n/search/lrc.json
index 1eb27d51..4f0e52de 100644
--- a/MLEB/Translate/i18n/search/lrc.json
+++ b/MLEB/Translate/i18n/search/lrc.json
@@ -10,7 +10,6 @@
"tux-sst-search-ph": "پی جوری لرسنيا",
"tux-sst-facet-language": "زونيا",
"tux-sst-facet-group": "پيغوم گرويا",
- "tux-sst-facet-orphan": "(يتيم)",
"tux-sst-nosolr-title": "پی جوری د دسرس نئ",
"tux-sst-solr-offline-title": "پی جوری د دسرس نئ",
"tux-sst-next": "نتيجيا نيايی",
diff --git a/MLEB/Translate/i18n/search/mk.json b/MLEB/Translate/i18n/search/mk.json
index ecb7c095..7e7b3797 100644
--- a/MLEB/Translate/i18n/search/mk.json
+++ b/MLEB/Translate/i18n/search/mk.json
@@ -6,16 +6,25 @@
},
"searchtranslations": "Пребарување на преводи",
"tux-sst-edit": "Уреди превод",
+ "tux-sst-view-foreign": "Пог. на $1",
"tux-sst-search": "Пребарај",
"tux-sst-search-ph": "Пребарајте преводи",
- "tux-sst-count": "{{PLURAL:$1|Пронајден е еден резултат|Пронајдени се $1 резултати}}",
+ "tux-sst-count": "{{PLURAL:$1|Пронајдена е една ставка|Пронајдени се $1 ставки}}",
"tux-sst-facet-language": "Јазици",
"tux-sst-facet-group": "Групи на пораки",
- "tux-sst-facet-orphan": "(осамена)",
"tux-sst-nosolr-title": "Пребарувањето е недостапно",
"tux-sst-nosolr-body": "Ова вики нема пребарувач.",
"tux-sst-solr-offline-title": "Пребарувањето е недостапно",
"tux-sst-solr-offline-body": "Пребарувањето е привремено недостапно.",
"tux-sst-next": "Следно ›",
- "tux-sst-prev": "‹ Претходно"
+ "tux-sst-prev": "‹ Претходно",
+ "tux-sst-default": "Преводи",
+ "tux-sst-translated": "Преводи од $1",
+ "tux-sst-untranslated": "Нема превод од $1",
+ "tux-sst-outdated": "Застарени преводи од $1",
+ "tux-sst-ellipsis-untranslated": "Нема превод",
+ "tux-sst-ellipsis-outdated": "Застарени преводи",
+ "tux-sst-link-all-match": "Дај за пребараното како целина",
+ "tux-sst-match-message": "Прикажани се преводите што одговараат на било кој од пребараните зборови. $1",
+ "tux-sst-case-sensitive": "Разликувај големи/мали букви"
}
diff --git a/MLEB/Translate/i18n/search/mr.json b/MLEB/Translate/i18n/search/mr.json
index 945bd8f3..f81036f2 100644
--- a/MLEB/Translate/i18n/search/mr.json
+++ b/MLEB/Translate/i18n/search/mr.json
@@ -6,16 +6,24 @@
},
"searchtranslations": "भाषांतर शोधा",
"tux-sst-edit": "भाषांतर संपादा",
+ "tux-sst-view-foreign": "$1 वर पहा",
"tux-sst-search": "शोधा",
"tux-sst-search-ph": "भाषांतर शोधा",
- "tux-sst-count": "{{PLURAL:$1|एक निकाल सापडला|$1 निकाल सापडले}}",
+ "tux-sst-count": "{{PLURAL:$1|$1 निकाल सापडला/ले}}",
"tux-sst-facet-language": "भाषा",
"tux-sst-facet-group": "संदेश गट",
- "tux-sst-facet-orphan": "(अनाथ)",
"tux-sst-nosolr-title": "'शोध' उपलब्ध नाही",
"tux-sst-nosolr-body": "या विकिवर 'भाषांतर शोध सेवा' नाही.",
"tux-sst-solr-offline-title": "'शोध' उपलब्ध नाही",
"tux-sst-solr-offline-body": "'शोध' सेवा तात्पुरती अनुपलब्ध आहे.",
- "tux-sst-next": "पुढील निकाल",
- "tux-sst-prev": "मागील निकाल"
+ "tux-sst-next": "पुढील >",
+ "tux-sst-prev": "< मागील",
+ "tux-sst-default": "भाषांतरे",
+ "tux-sst-translated": "$1 पासुनची भाषांतरे",
+ "tux-sst-untranslated": "$1 पासूनची भाषांतरे नकोत",
+ "tux-sst-outdated": "$1 पासुनची कालबाह्य भाषांतरे",
+ "tux-sst-ellipsis-untranslated": "भाषांतर नाही",
+ "tux-sst-ellipsis-outdated": "कालबाह्य भाषांतरे",
+ "tux-sst-link-all-match": "सर्व शोध-शब्द हवेत.",
+ "tux-sst-match-message": "कोणत्याही शोधशब्दाशी जुळणारी भाषांतरे दाखवित आहे. $1"
}
diff --git a/MLEB/Translate/i18n/search/ms.json b/MLEB/Translate/i18n/search/ms.json
index 85b25b24..04a16000 100644
--- a/MLEB/Translate/i18n/search/ms.json
+++ b/MLEB/Translate/i18n/search/ms.json
@@ -11,7 +11,6 @@
"tux-sst-count": "$1 hasil dijumpai",
"tux-sst-facet-language": "Bahasa",
"tux-sst-facet-group": "Message groups",
- "tux-sst-facet-orphan": "(yatim)",
"tux-sst-nosolr-title": "Tidak boleh mencari",
"tux-sst-nosolr-body": "Wiki ini tiada ciri mencari terjemahan.",
"tux-sst-solr-offline-title": "Tidak boleh mencari",
diff --git a/MLEB/Translate/i18n/search/nb.json b/MLEB/Translate/i18n/search/nb.json
index fe367ca9..75430196 100644
--- a/MLEB/Translate/i18n/search/nb.json
+++ b/MLEB/Translate/i18n/search/nb.json
@@ -1,8 +1,31 @@
{
"@metadata": {
"authors": [
- "Kingu"
+ "Kingu",
+ "Jon Harald Søby"
]
},
- "tux-sst-next": "Neste >"
+ "searchtranslations": "Søk i oversettelser",
+ "tux-sst-edit": "Rediger oversettelse",
+ "tux-sst-view-foreign": "Vis på $1",
+ "tux-sst-search": "Søk",
+ "tux-sst-search-ph": "Søk i oversettelser",
+ "tux-sst-count": "{{PLURAL:$1|Ett resultat|$1 resultater}} funnet",
+ "tux-sst-facet-language": "Språk",
+ "tux-sst-facet-group": "Beskjedgrupper",
+ "tux-sst-nosolr-title": "Søk utilgjengelig",
+ "tux-sst-nosolr-body": "Denne wikien har ikke tjenesten for oversettelsessøk.",
+ "tux-sst-solr-offline-title": "Søk utilgjengelig",
+ "tux-sst-solr-offline-body": "Søketjenesten er midlertidig utilgjengelig.",
+ "tux-sst-next": "Neste >",
+ "tux-sst-prev": "‹ Forrige",
+ "tux-sst-default": "Oversettelser",
+ "tux-sst-translated": "Oversettelser fra $1",
+ "tux-sst-untranslated": "Ingen oversettelse fra $1",
+ "tux-sst-outdated": "Utdaterte oversettelser fra $1",
+ "tux-sst-ellipsis-untranslated": "Ingen oversettelse",
+ "tux-sst-ellipsis-outdated": "Utdaterte oversettelser",
+ "tux-sst-link-all-match": "Krev alle søkeord.",
+ "tux-sst-match-message": "Viser oversettelser som matcher noen søkeord. $1",
+ "tux-sst-case-sensitive": "Skill mellom store og små bokstaver"
}
diff --git a/MLEB/Translate/i18n/search/nl.json b/MLEB/Translate/i18n/search/nl.json
index c9691ec8..4d2f58b0 100644
--- a/MLEB/Translate/i18n/search/nl.json
+++ b/MLEB/Translate/i18n/search/nl.json
@@ -1,21 +1,32 @@
{
"@metadata": {
"authors": [
- "Siebrand"
+ "Siebrand",
+ "Robin0van0der0vliet",
+ "Robin van der Vliet",
+ "Sjoerddebruin",
+ "Mainframe98"
]
},
"searchtranslations": "Vertalingen zoeken",
"tux-sst-edit": "Vertaling bewerken",
+ "tux-sst-view-foreign": "Op $1 bekijken",
"tux-sst-search": "Zoeken",
"tux-sst-search-ph": "Vertalingen zoeken",
"tux-sst-count": "{{PLURAL:$1|Eén resultaat|$1 resultaten}} gevonden",
"tux-sst-facet-language": "Talen",
"tux-sst-facet-group": "Berichtengroepen",
- "tux-sst-facet-orphan": "(wees)",
"tux-sst-nosolr-title": "Zoeken is niet beschikbaar",
"tux-sst-nosolr-body": "Deze wiki heeft geen dienst om vertalingen te zoeken.",
"tux-sst-solr-offline-title": "Zoeken is niet beschikbaar",
"tux-sst-solr-offline-body": "De zoekdienst is tijdelijk niet beschikbaar.",
- "tux-sst-next": "Volgende resultaten",
- "tux-sst-prev": "Vorige resultaten"
+ "tux-sst-next": "Volgende ›",
+ "tux-sst-prev": "‹ Vorige",
+ "tux-sst-default": "Vertalingen",
+ "tux-sst-translated": "Vertaling voor $1",
+ "tux-sst-untranslated": "Geen vertalingen voor $1",
+ "tux-sst-outdated": "Verouderde vertalingen voor $1",
+ "tux-sst-ellipsis-untranslated": "Geen vertaling",
+ "tux-sst-ellipsis-outdated": "Verouderde vertalingen",
+ "tux-sst-case-sensitive": "Hoofdlettergevoelig"
}
diff --git a/MLEB/Translate/i18n/search/nn.json b/MLEB/Translate/i18n/search/nn.json
index a713be57..b03a2b72 100644
--- a/MLEB/Translate/i18n/search/nn.json
+++ b/MLEB/Translate/i18n/search/nn.json
@@ -15,6 +15,15 @@
"tux-sst-nosolr-body": "Denne wikien har ikkje eit omsetjingssøk",
"tux-sst-solr-offline-title": "Søket er ikkje tilgjengeleg",
"tux-sst-solr-offline-body": "Søket er mellombels utilgjengeleg",
- "tux-sst-next": "Dei neste resultata",
- "tux-sst-prev": "Dei førre resultata"
+ "tux-sst-next": "Neste >",
+ "tux-sst-prev": "‹ Førre",
+ "tux-sst-default": "Omsetjingar",
+ "tux-sst-translated": "Omsetjingar frå $1",
+ "tux-sst-untranslated": "Inga omsetjing frå $1",
+ "tux-sst-outdated": "Utdaterte omsetjingar frå $1",
+ "tux-sst-ellipsis-untranslated": "Inga omsetjing",
+ "tux-sst-ellipsis-outdated": "Utdaterte omsetjingar",
+ "tux-sst-link-all-match": "Krev alle søkjeord.",
+ "tux-sst-match-message": "Viser omsetjingar som passar med eitt eller fleire av søkjeorda. $1",
+ "tux-sst-case-sensitive": "Skil mellom store og små bokstavar"
}
diff --git a/MLEB/Translate/i18n/search/oc.json b/MLEB/Translate/i18n/search/oc.json
index e2cc2b12..3df21682 100644
--- a/MLEB/Translate/i18n/search/oc.json
+++ b/MLEB/Translate/i18n/search/oc.json
@@ -7,8 +7,18 @@
"searchtranslations": "Recèrca de traduccions",
"tux-sst-edit": "Modificar la traduccion",
"tux-sst-search": "Recercar",
+ "tux-sst-search-ph": "Recèrca de traduccions",
+ "tux-sst-count": "{{PLURAL:$1|0=Cap de resultat pas trobat|1=Un resultat trobat|$1 resultats trobats}}",
"tux-sst-facet-language": "Lengas",
"tux-sst-facet-group": "Gropes de messatge",
- "tux-sst-facet-orphan": "(orfanèl)",
- "tux-sst-nosolr-title": "Recèrca indisponibla"
+ "tux-sst-nosolr-title": "Recèrca indisponibla",
+ "tux-sst-prev": "< Precedent",
+ "tux-sst-default": "Traduccions",
+ "tux-sst-translated": "Traduccions de $1",
+ "tux-sst-untranslated": "Pas encara traduits de $1",
+ "tux-sst-outdated": "Traduccions perimidas a partir de $1",
+ "tux-sst-ellipsis-outdated": "Traduccions obsolètas",
+ "tux-sst-link-all-match": "Requerís totes los tèrmes de recèrca",
+ "tux-sst-match-message": "Fa veire las traduccions que correspondon a cadun dels mots de la recèrca. $1",
+ "tux-sst-case-sensitive": "Sensible a la cassa"
}
diff --git a/MLEB/Translate/i18n/search/pl.json b/MLEB/Translate/i18n/search/pl.json
index 06ecbe16..f3c695fb 100644
--- a/MLEB/Translate/i18n/search/pl.json
+++ b/MLEB/Translate/i18n/search/pl.json
@@ -12,11 +12,18 @@
"tux-sst-count": "Znaleziono {{PLURAL:$1|jeden wynik|$1 wyników}}",
"tux-sst-facet-language": "Języki",
"tux-sst-facet-group": "Grupa komunikatów",
- "tux-sst-facet-orphan": "(sierota)",
"tux-sst-nosolr-title": "Wyszukiwanie nie jest dostępne",
"tux-sst-nosolr-body": "W tej wiki nie ma usługi wyszukiwania tłumaczeń.",
"tux-sst-solr-offline-title": "Wyszukiwanie nie jest dostępne",
"tux-sst-solr-offline-body": "Wyszukiwanie jest chwilowo niedostępne",
"tux-sst-next": "Następne ›",
- "tux-sst-prev": "‹ Poprzednie"
+ "tux-sst-prev": "‹ Poprzednie",
+ "tux-sst-default": "Tłumaczenia",
+ "tux-sst-translated": "Tłumaczenia z $1",
+ "tux-sst-untranslated": "Brak tłumaczeń z $1",
+ "tux-sst-outdated": "Przestarzałe tłumaczenia z $1",
+ "tux-sst-ellipsis-untranslated": "Brak tłumaczeń",
+ "tux-sst-ellipsis-outdated": "Przestarzałe tłumaczenia",
+ "tux-sst-match-message": "Wyświetlanie tłumaczeń pasujących do dowolnych słów wyszukiwania. $1",
+ "tux-sst-case-sensitive": "Rozróżniaj wielkość liter"
}
diff --git a/MLEB/Translate/i18n/search/pms.json b/MLEB/Translate/i18n/search/pms.json
index b92c73cb..9400b265 100644
--- a/MLEB/Translate/i18n/search/pms.json
+++ b/MLEB/Translate/i18n/search/pms.json
@@ -12,7 +12,6 @@
"tux-sst-count": "{{PLURAL:$1|Un arzultà trovà|$1 arzultà trovà}}",
"tux-sst-facet-language": "Lenghe",
"tux-sst-facet-group": "Partìe ëd mëssagi",
- "tux-sst-facet-orphan": "(orfanin)",
"tux-sst-nosolr-title": "Arserca nen disponìbil",
"tux-sst-nosolr-body": "La wiki a l'ha pa un servissi d'arserca ëd tradussion."
}
diff --git a/MLEB/Translate/i18n/search/ps.json b/MLEB/Translate/i18n/search/ps.json
index 4e982949..767d32cb 100644
--- a/MLEB/Translate/i18n/search/ps.json
+++ b/MLEB/Translate/i18n/search/ps.json
@@ -4,7 +4,19 @@
"Ahmed-Najib-Biabani-Ibrahimkhel"
]
},
+ "searchtranslations": "ژباړې پلټل",
+ "tux-sst-edit": "ژباړه سمول",
+ "tux-sst-view-foreign": "په $1 باندې کتل",
"tux-sst-search": "پلټل",
+ "tux-sst-search-ph": "ژباړې پلټل",
"tux-sst-facet-language": "ژبې",
- "tux-sst-facet-group": "پيغام ډلې"
+ "tux-sst-facet-group": "پيغام ډلې",
+ "tux-sst-next": "راتلونکی ›",
+ "tux-sst-prev": "‹ پخوانی",
+ "tux-sst-default": "ژباړې",
+ "tux-sst-translated": "له $1 څخه ژباړې",
+ "tux-sst-untranslated": "له $1 څخه ژباړې نشته",
+ "tux-sst-outdated": "له $1 څخه نېټه اوښتې ژباړې",
+ "tux-sst-ellipsis-untranslated": "ژباړه نشته",
+ "tux-sst-ellipsis-outdated": "نېټه اوښتې ژباړې"
}
diff --git a/MLEB/Translate/i18n/search/pt-br.json b/MLEB/Translate/i18n/search/pt-br.json
index f42adfc2..abe6da57 100644
--- a/MLEB/Translate/i18n/search/pt-br.json
+++ b/MLEB/Translate/i18n/search/pt-br.json
@@ -1,8 +1,31 @@
{
"@metadata": {
"authors": [
- "Luckas"
+ "Luckas",
+ "Felipe L. Ewald"
]
},
- "tux-sst-edit": "Editar tradução"
+ "searchtranslations": "Pesquisa traduções",
+ "tux-sst-edit": "Editar tradução",
+ "tux-sst-view-foreign": "Ver em $1",
+ "tux-sst-search": "Pesquisar",
+ "tux-sst-search-ph": "Pesquisa traduções",
+ "tux-sst-count": "{{PLURAL:$1|Um resultado encontrado|$1 resultados encontrados}}",
+ "tux-sst-facet-language": "Idiomas",
+ "tux-sst-facet-group": "Grupos de mensagens",
+ "tux-sst-nosolr-title": "Pesquisa indisponível",
+ "tux-sst-nosolr-body": "Esta wiki não possui um serviço de pesquisa de tradução.",
+ "tux-sst-solr-offline-title": "Pesquisa indisponível",
+ "tux-sst-solr-offline-body": "O serviço de pesquisa está temporariamente indisponível.",
+ "tux-sst-next": "Próximo »",
+ "tux-sst-prev": "‹ Anterior",
+ "tux-sst-default": "Traduções",
+ "tux-sst-translated": "Traduções de $1",
+ "tux-sst-untranslated": "Sem tradução de $1",
+ "tux-sst-outdated": "Traduções desatualizadas de $1",
+ "tux-sst-ellipsis-untranslated": "Sem tradução",
+ "tux-sst-ellipsis-outdated": "Traduções desatualizadas",
+ "tux-sst-link-all-match": "Exigir todas as palavras de pesquisa.",
+ "tux-sst-match-message": "Mostrando traduções que correspondem a qualquer das palavras da pesquisa. $1",
+ "tux-sst-case-sensitive": "Maiúsculas e Minúsculas"
}
diff --git a/MLEB/Translate/i18n/search/pt.json b/MLEB/Translate/i18n/search/pt.json
index 15f9ee93..ab804b7d 100644
--- a/MLEB/Translate/i18n/search/pt.json
+++ b/MLEB/Translate/i18n/search/pt.json
@@ -4,21 +4,31 @@
"Luckas",
"Hamilton Abreu",
"Vitorvicentevalente",
- "Macofe"
+ "Macofe",
+ "Fúlvio"
]
},
"searchtranslations": "Pesquisar nas traduções",
"tux-sst-edit": "Editar a tradução",
+ "tux-sst-view-foreign": "Ver em $1",
"tux-sst-search": "Pesquisar",
"tux-sst-search-ph": "Pesquisar nas traduções",
"tux-sst-count": "{{PLURAL:$1|Foi encontrado um resultado|Foram encontrados $1 resultados}}",
"tux-sst-facet-language": "Idiomas",
"tux-sst-facet-group": "Grupos de mensagens",
- "tux-sst-facet-orphan": "(orfãs)",
"tux-sst-nosolr-title": "Pesquisa indisponível",
"tux-sst-nosolr-body": "Esta wiki não tem um serviço de pesquisa de traduções.",
"tux-sst-solr-offline-title": "Pesquisa indisponível",
"tux-sst-solr-offline-body": "O serviço de pesquisa está temporariamente indisponível.",
"tux-sst-next": "Seguintes ›",
- "tux-sst-prev": "‹ Anteriores"
+ "tux-sst-prev": "‹ Anteriores",
+ "tux-sst-default": "Traduções",
+ "tux-sst-translated": "Traduções para $1",
+ "tux-sst-untranslated": "Sem tradução de $1",
+ "tux-sst-outdated": "Traduções desatualizadas de $1",
+ "tux-sst-ellipsis-untranslated": "Nenhuma tradução",
+ "tux-sst-ellipsis-outdated": "Traduções desatualizadas",
+ "tux-sst-link-all-match": "Traduções com todas as palavras pesquisadas.",
+ "tux-sst-match-message": "A mostrar as traduções que contêm qualquer das palavras pesquisadas. $1",
+ "tux-sst-case-sensitive": "Maiúsculas e minúsculas"
}
diff --git a/MLEB/Translate/i18n/search/qqq.json b/MLEB/Translate/i18n/search/qqq.json
index b7be3e5b..5090dbd1 100644
--- a/MLEB/Translate/i18n/search/qqq.json
+++ b/MLEB/Translate/i18n/search/qqq.json
@@ -3,21 +3,32 @@
"authors": [
"Nike",
"Shirayuki",
- "Amire80"
+ "Amire80",
+ "Robby",
+ "Mormegil"
]
},
"searchtranslations": "{{doc-special|SearchTranslations}}\n{{Identical|Search translation}}",
"tux-sst-edit": "A link text.",
+ "tux-sst-view-foreign": "A link text. Parameters:\n* $1 - the domain/host name where the link points to.",
"tux-sst-search": "A button text.\n{{Identical|Search}}",
"tux-sst-search-ph": "Placeholder text in input field.\n{{Identical|Search translation}}",
"tux-sst-count": "Parameters:\n* $1 - the number of search results",
"tux-sst-facet-language": "Label for a facet in [[Special:TranslationSearch]].\n{{Identical|Language}}",
"tux-sst-facet-group": "Label for a facet in [[Special:TranslationSearch]].\n{{Identical|Message group}}",
- "tux-sst-facet-orphan": "Name for group of search results that don't belong to any known message groups.\n{{Identical|Orphan}}",
"tux-sst-nosolr-title": "Used as title of error page.\n\nThe body of error message is {{msg-mw|Tux-sst-nosolr-body}}.\n{{Identical|Search unavailable}}",
"tux-sst-nosolr-body": "Used as error message.\n\nThe page title for this message is {{msg-mw|Tux-sst-nosolr-title}}.",
"tux-sst-solr-offline-title": "Used as title of error page.\n\nThe body of error message is {{msg-mw|Tux-sst-solr-offline-body}}.\n{{Identical|Search unavailable}}",
"tux-sst-solr-offline-body": "Used as error message.\n\nThe page title for this message is {{msg-mw|tux-sst-solr-offline-title}}.",
"tux-sst-next": "Link to browser more search results.\n\nSee also:\n* {{msg-mw|Tux-sst-prev}}",
- "tux-sst-prev": "Link to browser more search results.\n\nSee also:\n* {{msg-mw|Tux-sst-next}}"
+ "tux-sst-prev": "Link to browser more search results.\n\nSee also:\n* {{msg-mw|Tux-sst-next}}",
+ "tux-sst-default": "Label for a tab to show translations for the language.\n{{Identical|Translation}}",
+ "tux-sst-translated": "Label for a tab to show translated messages matching the query in the source language. Parameters:\n* $1 - the language code of the source text.",
+ "tux-sst-untranslated": "Label for a tab to show untranslated messages matching the query in the source language. Parameters:\n* $1 - the language code of the source text.",
+ "tux-sst-outdated": "Label for a tab to show outdated messages matching the query in the source language. Parameters:\n* $1 - the language code of the source text.",
+ "tux-sst-ellipsis-untranslated": "Used as label for an ellipsis to hide untranslated messages.",
+ "tux-sst-ellipsis-outdated": "Used as label for an ellipsis to hide outdated messages.",
+ "tux-sst-link-all-match": "Link to filter the results to match all search words.",
+ "tux-sst-match-message": "Used to inform users about an option to get results for all search words. Parameters:\n* $1 - {{msg-mw|tux-sst-link-all-match}}.",
+ "tux-sst-case-sensitive": "Label for a case sensitive checkbox"
}
diff --git a/MLEB/Translate/i18n/search/qu.json b/MLEB/Translate/i18n/search/qu.json
index 10ecb4f0..4fe145fa 100644
--- a/MLEB/Translate/i18n/search/qu.json
+++ b/MLEB/Translate/i18n/search/qu.json
@@ -4,5 +4,9 @@
"AlimanRuna"
]
},
- "tux-sst-facet-language": "Rimaykuna"
+ "tux-sst-edit": "T'ikrasqata llamk'apuy",
+ "tux-sst-search-ph": "T'ikrasqakunata maskay",
+ "tux-sst-facet-language": "Rimaykuna",
+ "tux-sst-untranslated": "$1 nisqaqa manam t'ikrasqachu",
+ "tux-sst-ellipsis-untranslated": "Mana t'ikrasqa"
}
diff --git a/MLEB/Translate/i18n/search/ro.json b/MLEB/Translate/i18n/search/ro.json
index 52225e5d..1463c6b7 100644
--- a/MLEB/Translate/i18n/search/ro.json
+++ b/MLEB/Translate/i18n/search/ro.json
@@ -6,16 +6,16 @@
},
"searchtranslations": "Căutare traduceri",
"tux-sst-edit": "Modifică traducerea",
+ "tux-sst-view-foreign": "Vezi la $1",
"tux-sst-search": "Caută",
"tux-sst-search-ph": "Căutare traduceri",
"tux-sst-count": "{{PLURAL:$1|Un rezultat găsit|$1 rezultate găsite|$1 de rezultate găsite}}",
"tux-sst-facet-language": "Limbi",
"tux-sst-facet-group": "Grupuri de mesaje",
- "tux-sst-facet-orphan": "(orfan)",
"tux-sst-nosolr-title": "Căutarea nu este disponibilă",
"tux-sst-nosolr-body": "Acest wiki nu dispune de un serviciu de căutare a traducerilor.",
"tux-sst-solr-offline-title": "Căutarea nu este disponibilă",
"tux-sst-solr-offline-body": "Serviciul de căutare este temporar indisponibil.",
- "tux-sst-next": "Rezultatele următoare",
- "tux-sst-prev": "Rezultatele anterioare"
+ "tux-sst-next": "Următoarele ›",
+ "tux-sst-prev": "‹ Anterioarele"
}
diff --git a/MLEB/Translate/i18n/search/roa-tara.json b/MLEB/Translate/i18n/search/roa-tara.json
index 8167ed48..f00fd8e0 100644
--- a/MLEB/Translate/i18n/search/roa-tara.json
+++ b/MLEB/Translate/i18n/search/roa-tara.json
@@ -6,16 +6,25 @@
},
"searchtranslations": "Cirche le traduziune",
"tux-sst-edit": "Cange 'a traduzione",
+ "tux-sst-view-foreign": "'Ndruche sus a $1",
"tux-sst-search": "Cirche",
"tux-sst-search-ph": "Cirche le traduziune",
"tux-sst-count": "{{PLURAL:$1|'Nu resultate acchiate|$1 resultate acchiate}}",
"tux-sst-facet-language": "Lènghe",
"tux-sst-facet-group": "Gruppe de messàgge",
- "tux-sst-facet-orphan": "(orfane)",
"tux-sst-nosolr-title": "Ricerche non disponibbile",
"tux-sst-nosolr-body": "Sta uicchi non g'ave 'nu servizie de ricerche pe le traduziune.",
"tux-sst-solr-offline-title": "Ricerche non disponibbile",
"tux-sst-solr-offline-body": "'U servizie de ricerche jè temboraneamende indisponibbile.",
- "tux-sst-next": "Prossime resultate",
- "tux-sst-prev": "Resultate precedende"
+ "tux-sst-next": "Prossime →",
+ "tux-sst-prev": "‹ Precedende",
+ "tux-sst-default": "Traduziune",
+ "tux-sst-translated": "Traduzione da $1",
+ "tux-sst-untranslated": "Nisciuna traduzione da $1",
+ "tux-sst-outdated": "Traduziune non aggiornate da $1",
+ "tux-sst-ellipsis-untranslated": "Nisciuna traduzione",
+ "tux-sst-ellipsis-outdated": "Traduziune non aggiornate",
+ "tux-sst-link-all-match": "Vole tutte le parole de ricerche.",
+ "tux-sst-match-message": "Fà 'ndrucà le traduziune ca s'accocchiane cu quacche parole de ricerche. $1",
+ "tux-sst-case-sensitive": "Sensibbile a le maiuscole/minuscole"
}
diff --git a/MLEB/Translate/i18n/search/ru.json b/MLEB/Translate/i18n/search/ru.json
index 4befedfa..e9fe0306 100644
--- a/MLEB/Translate/i18n/search/ru.json
+++ b/MLEB/Translate/i18n/search/ru.json
@@ -3,21 +3,34 @@
"authors": [
"Kaganer",
"Lockal",
- "Okras"
+ "Okras",
+ "Translatobecomer",
+ "Mailman",
+ "Ole Yves",
+ "Stjn"
]
},
"searchtranslations": "Поиск переводов",
"tux-sst-edit": "Редактировать перевод",
+ "tux-sst-view-foreign": "Смотреть в $1",
"tux-sst-search": "Найти",
"tux-sst-search-ph": "Поиск переводов",
"tux-sst-count": "{{PLURAL:$1|Найден $1 результат|Найдены $1 результата|Найдено $1 результатов}}",
"tux-sst-facet-language": "Языки",
"tux-sst-facet-group": "Группы сообщений",
- "tux-sst-facet-orphan": "(сирота)",
"tux-sst-nosolr-title": "Поиск недоступен",
"tux-sst-nosolr-body": "В этой вики отсутствует сервис поиска переводов.",
"tux-sst-solr-offline-title": "Поиск недоступен",
"tux-sst-solr-offline-body": "Служба поиска временно недоступна.",
"tux-sst-next": "Далее ›",
- "tux-sst-prev": "‹ Назад"
+ "tux-sst-prev": "‹ Назад",
+ "tux-sst-default": "Переводы",
+ "tux-sst-translated": "Переводы с $1",
+ "tux-sst-untranslated": "Нет переводов с $1",
+ "tux-sst-outdated": "Устаревшие переводы с $1",
+ "tux-sst-ellipsis-untranslated": "Нет перевода",
+ "tux-sst-ellipsis-outdated": "Устаревшие переводы",
+ "tux-sst-link-all-match": "Считать обязательными все поисковые слова.",
+ "tux-sst-match-message": "Показаны переводы, которые соответствуют любому из поисковых слов. $1",
+ "tux-sst-case-sensitive": "с учётом регистра"
}
diff --git a/MLEB/Translate/i18n/search/sk.json b/MLEB/Translate/i18n/search/sk.json
index e5b976ee..42e22ce0 100644
--- a/MLEB/Translate/i18n/search/sk.json
+++ b/MLEB/Translate/i18n/search/sk.json
@@ -1,11 +1,14 @@
{
"@metadata": {
"authors": [
- "Sudo77(new)"
+ "Sudo77(new)",
+ "Kusavica",
+ "Helix84"
]
},
+ "tux-sst-edit": "Upraviť preklad",
"tux-sst-search": "Hľadať",
"tux-sst-facet-language": "Jazyky",
- "tux-sst-next": "Ďalšie výsledky",
- "tux-sst-prev": "Predchádzajúce výsledky"
+ "tux-sst-next": "Ďalej ›",
+ "tux-sst-prev": "‹ Predchádzajúce"
}
diff --git a/MLEB/Translate/i18n/search/sr-ec.json b/MLEB/Translate/i18n/search/sr-ec.json
index a97053fb..1377332b 100644
--- a/MLEB/Translate/i18n/search/sr-ec.json
+++ b/MLEB/Translate/i18n/search/sr-ec.json
@@ -2,21 +2,28 @@
"@metadata": {
"authors": [
"Милан Јелисавчић",
- "Milicevic01"
+ "Milicevic01",
+ "Сербијана",
+ "Obsuser"
]
},
"searchtranslations": "Претрага превода",
"tux-sst-edit": "Уреди превод",
"tux-sst-search": "Претражи",
"tux-sst-search-ph": "Претрага превода",
- "tux-sst-count": "{{PLURAL:$1|Један резултат пронађен|$1 резултата пронађено}}",
+ "tux-sst-count": "{{PLURAL:$1|Један резултат пронађен|$1 резултата пронађена|$1 резултата пронађено}}",
"tux-sst-facet-language": "Језици",
"tux-sst-facet-group": "Групе порука",
- "tux-sst-facet-orphan": "(сироче)",
"tux-sst-nosolr-title": "Претрага недоступна",
"tux-sst-nosolr-body": "Овај вики нема сервис за претрагу превода.",
"tux-sst-solr-offline-title": "Претрага недоступна",
"tux-sst-solr-offline-body": "Сервис за претрагу је привремено недоступан.",
- "tux-sst-next": "Следећи резултати",
- "tux-sst-prev": "Претходни резултати"
+ "tux-sst-next": "Напред ›",
+ "tux-sst-prev": "‹ Назад",
+ "tux-sst-default": "Преводи",
+ "tux-sst-translated": "Преводи за $1",
+ "tux-sst-untranslated": "Непреведено за $1",
+ "tux-sst-link-all-match": "Ограничи на све речи претраге.",
+ "tux-sst-match-message": "Приказани су преводи у којима је пронађена било која од речи претраге. $1",
+ "tux-sst-case-sensitive": "Уважавање верзала"
}
diff --git a/MLEB/Translate/i18n/search/sv.json b/MLEB/Translate/i18n/search/sv.json
index 96ba9245..05e08659 100644
--- a/MLEB/Translate/i18n/search/sv.json
+++ b/MLEB/Translate/i18n/search/sv.json
@@ -7,16 +7,25 @@
},
"searchtranslations": "Sök översättningar",
"tux-sst-edit": "Redigera översättning",
+ "tux-sst-view-foreign": "Visa på $1",
"tux-sst-search": "Sök",
"tux-sst-search-ph": "Sök översättningar",
"tux-sst-count": "{{PLURAL:$1|Ett|$1}} resultat hittades",
"tux-sst-facet-language": "Språk",
"tux-sst-facet-group": "Meddelandegrupper",
- "tux-sst-facet-orphan": "(föräldralös)",
"tux-sst-nosolr-title": "Sökning är inte tillgänglig",
"tux-sst-nosolr-body": "Denna wiki har inte en tjänst för att söka efter översättningar.",
"tux-sst-solr-offline-title": "Sökning är inte tillgänglig",
"tux-sst-solr-offline-body": "Söktjänsten är inte tillgänglig för tillfället.",
"tux-sst-next": "Nästa ›",
- "tux-sst-prev": "‹ Föregående"
+ "tux-sst-prev": "‹ Föregående",
+ "tux-sst-default": "Översättningar",
+ "tux-sst-translated": "Översättningar från $1",
+ "tux-sst-untranslated": "Inga översättningar från $1",
+ "tux-sst-outdated": "Föråldrade översättningar från $1",
+ "tux-sst-ellipsis-untranslated": "Ingen översättning",
+ "tux-sst-ellipsis-outdated": "Föråldrade översättningar",
+ "tux-sst-link-all-match": "Kräv alla sökord.",
+ "tux-sst-match-message": "Visar översättningar som överensstämmer något sökord. $1",
+ "tux-sst-case-sensitive": "Skiftlägeskänsligt"
}
diff --git a/MLEB/Translate/i18n/search/tr.json b/MLEB/Translate/i18n/search/tr.json
index e37a4c97..c36f18f7 100644
--- a/MLEB/Translate/i18n/search/tr.json
+++ b/MLEB/Translate/i18n/search/tr.json
@@ -4,7 +4,9 @@
"Emperyan",
"Joseph",
"Meelo",
- "Sayginer"
+ "Sayginer",
+ "McAang",
+ "Rapsar"
]
},
"searchtranslations": "Çevirileri ara",
@@ -14,11 +16,12 @@
"tux-sst-count": "{{PLURAL:$1|Bir sonuç bulundu|$1 sonuç bulundu|0=Sonuç bulunamadı}}",
"tux-sst-facet-language": "Diller",
"tux-sst-facet-group": "İleti grupları",
- "tux-sst-facet-orphan": "(yetim)",
"tux-sst-nosolr-title": "Arama kullanılamıyor",
"tux-sst-nosolr-body": "Bu wikide bir çeviri arama hizmeti yok.",
"tux-sst-solr-offline-title": "Arama kullanılamıyor",
"tux-sst-solr-offline-body": "Arama hizmeti geçici olarak kullanılamıyor.",
"tux-sst-next": "Sonraki ›",
- "tux-sst-prev": "‹ Önceki"
+ "tux-sst-prev": "‹ Önceki",
+ "tux-sst-link-all-match": "Tüm arama kelimelerini iste.",
+ "tux-sst-match-message": "Aranan kelimelerin herhangi biriyle eşleşen çeviriler gösteriliyor. $1"
}
diff --git a/MLEB/Translate/i18n/search/uk.json b/MLEB/Translate/i18n/search/uk.json
index 5377b3fc..d5cb5579 100644
--- a/MLEB/Translate/i18n/search/uk.json
+++ b/MLEB/Translate/i18n/search/uk.json
@@ -2,21 +2,31 @@
"@metadata": {
"authors": [
"Base",
- "Ата"
+ "Ата",
+ "Dars"
]
},
"searchtranslations": "Пошук перекладів",
"tux-sst-edit": "Редагувати переклад",
+ "tux-sst-view-foreign": "Переглянути на $1",
"tux-sst-search": "Пошук",
"tux-sst-search-ph": "Пошук перекладів",
"tux-sst-count": "{{PLURAL:$1|Знайдено один результат|Знайдено $1 результати|Знайдено $1 результатів}}",
"tux-sst-facet-language": "Мови",
"tux-sst-facet-group": "Групи повідомлень",
- "tux-sst-facet-orphan": "(сирота)",
"tux-sst-nosolr-title": "Пошук недоступний",
"tux-sst-nosolr-body": "У цій вікі немає служби пошуку перекладів.",
"tux-sst-solr-offline-title": "Пошук не доступний",
"tux-sst-solr-offline-body": "Сервіс пошуку тимчасово недоступний.",
- "tux-sst-next": "Наступні результати",
- "tux-sst-prev": "Попередні результати"
+ "tux-sst-next": "Далі ›",
+ "tux-sst-prev": "‹ Назад",
+ "tux-sst-default": "Переклади",
+ "tux-sst-translated": "Переклади із $1",
+ "tux-sst-untranslated": "Немає перекладу від $1",
+ "tux-sst-outdated": "Застарілі переклади від $1",
+ "tux-sst-ellipsis-untranslated": "Без перекладу",
+ "tux-sst-ellipsis-outdated": "Застарілі переклади",
+ "tux-sst-link-all-match": "Потребуються всі слова пошуку.",
+ "tux-sst-match-message": "Показані переклади, в яких збігається хоча б одне із пошукових слів. $1",
+ "tux-sst-case-sensitive": "Чутливий до регістру"
}
diff --git a/MLEB/Translate/i18n/search/vi.json b/MLEB/Translate/i18n/search/vi.json
index 812a8708..17891910 100644
--- a/MLEB/Translate/i18n/search/vi.json
+++ b/MLEB/Translate/i18n/search/vi.json
@@ -6,16 +6,25 @@
},
"searchtranslations": "Tìm bản dịch",
"tux-sst-edit": "Sửa bản dịch",
+ "tux-sst-view-foreign": "Xem tại $1",
"tux-sst-search": "Tìm kiếm",
"tux-sst-search-ph": "Tìm bản dịch",
"tux-sst-count": "Tìm thấy $1 kết quả",
"tux-sst-facet-language": "Ngôn ngữ",
"tux-sst-facet-group": "Nhóm thông điệp",
- "tux-sst-facet-orphan": "(mồ côi)",
"tux-sst-nosolr-title": "Công cụ tìm kiếm không có sẵn",
"tux-sst-nosolr-body": "Wiki này không có công cụ tìm bản dịch.",
"tux-sst-solr-offline-title": "Công cụ tìm kiếm không có sẵn",
"tux-sst-solr-offline-body": "Công cụ tìm kiếm tạm thời không sẵn dùng.",
- "tux-sst-next": "Kết quả sau",
- "tux-sst-prev": "Kết quả trước"
+ "tux-sst-next": "Sau ›",
+ "tux-sst-prev": "‹ Trước",
+ "tux-sst-default": "Bản dịch",
+ "tux-sst-translated": "Bản dịch từ $1",
+ "tux-sst-untranslated": "Không có bản dịch từ $1",
+ "tux-sst-outdated": "Bản dịch lỗi thời từ $1",
+ "tux-sst-ellipsis-untranslated": "Không có bản dịch",
+ "tux-sst-ellipsis-outdated": "Bản dịch lỗi thời",
+ "tux-sst-link-all-match": "Bắt buộc tất cả các từ tìm kiếm.",
+ "tux-sst-match-message": "Các kết quả chứa ít nhất một trong số từ tìm kiếm.\n$1",
+ "tux-sst-case-sensitive": "Phân biệt chữ hoa/thường"
}
diff --git a/MLEB/Translate/i18n/search/yi.json b/MLEB/Translate/i18n/search/yi.json
index f8e925fa..cc5a41a8 100644
--- a/MLEB/Translate/i18n/search/yi.json
+++ b/MLEB/Translate/i18n/search/yi.json
@@ -6,16 +6,25 @@
},
"searchtranslations": "זוכן איבערזעצונגען",
"tux-sst-edit": "רעדאַקטירן איבערזעצונג",
+ "tux-sst-view-foreign": "באקוקן אויף $1",
"tux-sst-search": "זוכן",
"tux-sst-search-ph": "זוכן איבערזעצונגען",
"tux-sst-count": "{{PLURAL:$1|איין רעזולטאט געטראפן|$1 רעזולטאטן געטראפן}}",
"tux-sst-facet-language": "שפּראַכן",
"tux-sst-facet-group": "מעלדונג גרופעס",
- "tux-sst-facet-orphan": "(יתום)",
"tux-sst-nosolr-title": "זוך נישט פאראן",
"tux-sst-nosolr-body": "די וויקי האט נישט קיין איבערזעצונג זוך דינסט.",
"tux-sst-solr-offline-title": "זוך נישט פאראן",
"tux-sst-solr-offline-body": "די זוכדינסט איז צײַטווײַליק נישט פאראן.",
"tux-sst-next": "נעקסטע",
- "tux-sst-prev": "פֿריערדיקע"
+ "tux-sst-prev": "פֿריערדיקע",
+ "tux-sst-default": "איבערזעצונגען",
+ "tux-sst-translated": "איבערזעצונגען פֿון $1",
+ "tux-sst-untranslated": "קיין איבערזעצונג נישט פון $1",
+ "tux-sst-outdated": "פֿארעלטערעט איבערזעצונגען פון $1",
+ "tux-sst-ellipsis-untranslated": "קיין איבערזעצונג",
+ "tux-sst-ellipsis-outdated": "פֿארעלטערטע איבערזעצונגען",
+ "tux-sst-link-all-match": "באדארפֿן אלע זוכווערטער.",
+ "tux-sst-match-message": "ווייזן איבערזעצונגען וואס פאסן צו מיט נארוועלכע פון די זוכווערטער. $1",
+ "tux-sst-case-sensitive": "גרויס/קליין-שרייבונג"
}
diff --git a/MLEB/Translate/i18n/search/zh-hans.json b/MLEB/Translate/i18n/search/zh-hans.json
index a95b2b0d..c3d4d253 100644
--- a/MLEB/Translate/i18n/search/zh-hans.json
+++ b/MLEB/Translate/i18n/search/zh-hans.json
@@ -10,16 +10,25 @@
},
"searchtranslations": "搜索译文",
"tux-sst-edit": "编辑译文",
+ "tux-sst-view-foreign": "在$1查看",
"tux-sst-search": "搜索",
"tux-sst-search-ph": "搜索译文",
"tux-sst-count": "{{PLURAL:$1|找到$1个结果}}",
"tux-sst-facet-language": "语言",
"tux-sst-facet-group": "信息组",
- "tux-sst-facet-orphan": "(孤立)",
"tux-sst-nosolr-title": "搜索不可用",
"tux-sst-nosolr-body": "本wiki没有译文搜索服务。",
"tux-sst-solr-offline-title": "搜索不可用",
"tux-sst-solr-offline-body": "搜索服务暂时不可用。",
"tux-sst-next": "下一页 ›",
- "tux-sst-prev": "‹ 上一页"
+ "tux-sst-prev": "‹ 上一页",
+ "tux-sst-default": "翻译",
+ "tux-sst-translated": "自$1翻译",
+ "tux-sst-untranslated": "尚未从$1翻译",
+ "tux-sst-outdated": "翻译自$1但已过时",
+ "tux-sst-ellipsis-untranslated": "无译文",
+ "tux-sst-ellipsis-outdated": "已过时译文",
+ "tux-sst-link-all-match": "要求搜索的所有字词。",
+ "tux-sst-match-message": "显示匹配任何搜索字词的翻译。$1",
+ "tux-sst-case-sensitive": "区分大小写"
}
diff --git a/MLEB/Translate/i18n/search/zh-hant.json b/MLEB/Translate/i18n/search/zh-hant.json
index a95fe36b..76b344f9 100644
--- a/MLEB/Translate/i18n/search/zh-hant.json
+++ b/MLEB/Translate/i18n/search/zh-hant.json
@@ -2,21 +2,31 @@
"@metadata": {
"authors": [
"Cwlin0416",
- "Simon Shek"
+ "Simon Shek",
+ "LNDDYL"
]
},
"searchtranslations": "搜尋翻譯",
"tux-sst-edit": "編輯翻譯",
+ "tux-sst-view-foreign": "在 $1 檢視",
"tux-sst-search": "搜尋",
"tux-sst-search-ph": "搜尋翻譯",
"tux-sst-count": "{{PLURAL:$1|找到 1 筆結果|找到 $1 筆結果}}",
"tux-sst-facet-language": "語言",
"tux-sst-facet-group": "訊息群組",
- "tux-sst-facet-orphan": "(孤立)",
"tux-sst-nosolr-title": "無法使用搜尋",
"tux-sst-nosolr-body": "此 Wiki 沒有提供翻譯搜尋的服務。",
"tux-sst-solr-offline-title": "無法使用搜尋",
"tux-sst-solr-offline-body": "暫時無法使用搜尋。",
- "tux-sst-next": "下一筆結果",
- "tux-sst-prev": "上一筆結果"
+ "tux-sst-next": "下一頁 ›",
+ "tux-sst-prev": "‹ 上一頁",
+ "tux-sst-default": "翻譯",
+ "tux-sst-translated": "翻譯自 $1",
+ "tux-sst-untranslated": "尚無來自於 $1 的翻譯",
+ "tux-sst-outdated": "來自於 $1 的過期翻譯",
+ "tux-sst-ellipsis-untranslated": "無翻譯",
+ "tux-sst-ellipsis-outdated": "已過時的翻譯",
+ "tux-sst-link-all-match": "需要全部搜尋文字。",
+ "tux-sst-match-message": "顯示符合任何搜尋關鍵字的翻譯。$1",
+ "tux-sst-case-sensitive": "大小寫視為相異"
}
diff --git a/MLEB/Translate/insertables/Insertable.php b/MLEB/Translate/insertables/Insertable.php
index 5b67d3ef..bab7adff 100644
--- a/MLEB/Translate/insertables/Insertable.php
+++ b/MLEB/Translate/insertables/Insertable.php
@@ -4,7 +4,7 @@
*
* @file
* @author Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
diff --git a/MLEB/Translate/insertables/InsertablesSuggester.php b/MLEB/Translate/insertables/InsertablesSuggester.php
index c02a7aad..70cc9702 100644
--- a/MLEB/Translate/insertables/InsertablesSuggester.php
+++ b/MLEB/Translate/insertables/InsertablesSuggester.php
@@ -4,7 +4,7 @@
*
* @file
* @author Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
diff --git a/MLEB/Translate/insertables/MediaWikiInsertablesSuggester.php b/MLEB/Translate/insertables/MediaWikiInsertablesSuggester.php
index 03744c16..11aea35b 100644
--- a/MLEB/Translate/insertables/MediaWikiInsertablesSuggester.php
+++ b/MLEB/Translate/insertables/MediaWikiInsertablesSuggester.php
@@ -2,7 +2,7 @@
/**
* @file
* @author Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -12,27 +12,34 @@
*/
class MediaWikiInsertablesSuggester {
public function getInsertables( $text ) {
- $insertables = array();
+ $insertables = [];
- $matches = array();
- preg_match_all( '/\$[0-9]+/', $text, $matches, PREG_SET_ORDER );
- $new = array_map( function( $match ) {
+ $matches = [];
+ preg_match_all( '/\$(1[a-z]+|[0-9]+)/', $text, $matches, PREG_SET_ORDER );
+ $new = array_map( function ( $match ) {
return new Insertable( $match[0], $match[0] );
}, $matches );
$insertables = array_merge( $insertables, $new );
- $matches = array();
+ $matches = [];
preg_match_all(
'/({{((?:PLURAL|GENDER|GRAMMAR):[^|]*)\|).*?(}})/i',
$text,
$matches,
PREG_SET_ORDER
);
- $new = array_map( function( $match ) {
+ $new = array_map( function ( $match ) {
return new Insertable( $match[2], $match[1], $match[3] );
}, $matches );
$insertables = array_merge( $insertables, $new );
+ $matches = [];
+ preg_match_all( '/<\/?[a-z]+>/', $text, $matches, PREG_SET_ORDER );
+ $new = array_map( function ( $match ) {
+ return new Insertable( $match[0], $match[0] );
+ }, $matches );
+ $insertables = array_merge( $insertables, $new );
+
return $insertables;
}
}
diff --git a/MLEB/Translate/insertables/TranslatablePageInsertablesSuggester.php b/MLEB/Translate/insertables/TranslatablePageInsertablesSuggester.php
index adc69768..61582606 100644
--- a/MLEB/Translate/insertables/TranslatablePageInsertablesSuggester.php
+++ b/MLEB/Translate/insertables/TranslatablePageInsertablesSuggester.php
@@ -2,7 +2,7 @@
/**
* @file
* @author Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -16,7 +16,7 @@ class TranslatablePageInsertablesSuggester extends MediaWikiInsertablesSuggester
// Translatable pages allow naming the variables. Basically anything is
// allowed in a variable name, but here we are stricter to avoid too many
// false positives.
- $matches = array();
+ $matches = [];
preg_match_all( '/\$([a-zA-Z0-9-_]+)/', $text, $matches, PREG_SET_ORDER );
$new = array_map( function ( $match ) {
diff --git a/MLEB/Translate/libs/spyc/COPYING b/MLEB/Translate/libs/spyc/COPYING
deleted file mode 100644
index 8e7ddbcf..00000000
--- a/MLEB/Translate/libs/spyc/COPYING
+++ /dev/null
@@ -1,21 +0,0 @@
-The MIT License
-
-Copyright (c) 2011 Vladimir Andersen
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE. \ No newline at end of file
diff --git a/MLEB/Translate/libs/spyc/spyc.php b/MLEB/Translate/libs/spyc/spyc.php
deleted file mode 100644
index fcc7200c..00000000
--- a/MLEB/Translate/libs/spyc/spyc.php
+++ /dev/null
@@ -1,1148 +0,0 @@
-<?php
-// @codingStandardsIgnoreFile
-/**
- * Spyc -- A Simple PHP YAML Class
- * @version 0.5.1
- * @author Vlad Andersen <vlad.andersen@gmail.com>
- * @author Chris Wanstrath <chris@ozmm.org>
- * @link http://code.google.com/p/spyc/
- * @copyright Copyright 2005-2006 Chris Wanstrath, 2006-2011 Vlad Andersen
- * @license http://www.opensource.org/licenses/mit-license.php MIT License
- * @package Spyc
- */
-
-if (!function_exists('spyc_load')) {
- /**
- * Parses YAML to array.
- * @param string $string YAML string.
- * @return array
- */
- function spyc_load ($string) {
- return Spyc::YAMLLoadString($string);
- }
-}
-
-if (!function_exists('spyc_load_file')) {
- /**
- * Parses YAML to array.
- * @param string $file Path to YAML file.
- * @return array
- */
- function spyc_load_file ($file) {
- return Spyc::YAMLLoad($file);
- }
-}
-
-if (!function_exists('spyc_dump')) {
- /**
- * Dumps array to YAML.
- * @param array $data Array.
- * @return string
- */
- function spyc_dump ($data) {
- return Spyc::YAMLDump($data, false, false, true);
- }
-}
-
-/**
- * The Simple PHP YAML Class.
- *
- * This class can be used to read a YAML file and convert its contents
- * into a PHP array. It currently supports a very limited subsection of
- * the YAML spec.
- *
- * Usage:
- * <code>
- * $Spyc = new Spyc;
- * $array = $Spyc->load($file);
- * </code>
- * or:
- * <code>
- * $array = Spyc::YAMLLoad($file);
- * </code>
- * or:
- * <code>
- * $array = spyc_load_file($file);
- * </code>
- * @package Spyc
- */
-class Spyc {
-
- // SETTINGS
-
- const REMPTY = "\0\0\0\0\0";
-
- /**
- * Setting this to true will force YAMLDump to enclose any string value in
- * quotes. False by default.
- *
- * @var bool
- */
- public $setting_dump_force_quotes = false;
-
- /**
- * Setting this to true will forse YAMLLoad to use syck_load function when
- * possible. False by default.
- * @var bool
- */
- public $setting_use_syck_is_possible = false;
-
-
-
- /**#@+
- * @access private
- * @var mixed
- */
- private $_dumpIndent;
- private $_dumpWordWrap;
- private $_containsGroupAnchor = false;
- private $_containsGroupAlias = false;
- private $path;
- private $result;
- private $LiteralPlaceHolder = '___YAML_Literal_Block___';
- private $SavedGroups = array();
- private $indent;
- /**
- * Path modifier that should be applied after adding current element.
- * @var array
- */
- private $delayedPath = array();
-
- /**#@+
- * @access public
- * @var mixed
- */
- public $_nodeId;
-
-/**
- * Load a valid YAML string to Spyc.
- * @param string $input
- * @return array
- */
- public function load ($input) {
- return $this->__loadString($input);
- }
-
- /**
- * Load a valid YAML file to Spyc.
- * @param string $file
- * @return array
- */
- public function loadFile ($file) {
- return $this->__load($file);
- }
-
- /**
- * Load YAML into a PHP array statically
- *
- * The load method, when supplied with a YAML stream (string or file),
- * will do its best to convert YAML in a file into a PHP array. Pretty
- * simple.
- * Usage:
- * <code>
- * $array = Spyc::YAMLLoad('lucky.yaml');
- * print_r($array);
- * </code>
- * @access public
- * @return array
- * @param string $input Path of YAML file or string containing YAML
- */
- public static function YAMLLoad($input) {
- $Spyc = new Spyc;
- return $Spyc->__load($input);
- }
-
- /**
- * Load a string of YAML into a PHP array statically
- *
- * The load method, when supplied with a YAML string, will do its best
- * to convert YAML in a string into a PHP array. Pretty simple.
- *
- * Note: use this function if you don't want files from the file system
- * loaded and processed as YAML. This is of interest to people concerned
- * about security whose input is from a string.
- *
- * Usage:
- * <code>
- * $array = Spyc::YAMLLoadString("---\n0: hello world\n");
- * print_r($array);
- * </code>
- * @access public
- * @return array
- * @param string $input String containing YAML
- */
- public static function YAMLLoadString($input) {
- $Spyc = new Spyc;
- return $Spyc->__loadString($input);
- }
-
- /**
- * Dump YAML from PHP array statically
- *
- * The dump method, when supplied with an array, will do its best
- * to convert the array into friendly YAML. Pretty simple. Feel free to
- * save the returned string as nothing.yaml and pass it around.
- *
- * Oh, and you can decide how big the indent is and what the wordwrap
- * for folding is. Pretty cool -- just pass in 'false' for either if
- * you want to use the default.
- *
- * Indent's default is 2 spaces, wordwrap's default is 40 characters. And
- * you can turn off wordwrap by passing in 0.
- *
- * @access public
- * @return string
- * @param array $array PHP array
- * @param int $indent Pass in false to use the default, which is 2
- * @param int $wordwrap Pass in 0 for no wordwrap, false for default (40)
- * @param int $no_opening_dashes Do not start YAML file with "---\n"
- */
- public static function YAMLDump($array, $indent = false, $wordwrap = false, $no_opening_dashes = false) {
- $spyc = new Spyc;
- return $spyc->dump($array, $indent, $wordwrap, $no_opening_dashes);
- }
-
-
- /**
- * Dump PHP array to YAML
- *
- * The dump method, when supplied with an array, will do its best
- * to convert the array into friendly YAML. Pretty simple. Feel free to
- * save the returned string as tasteful.yaml and pass it around.
- *
- * Oh, and you can decide how big the indent is and what the wordwrap
- * for folding is. Pretty cool -- just pass in 'false' for either if
- * you want to use the default.
- *
- * Indent's default is 2 spaces, wordwrap's default is 40 characters. And
- * you can turn off wordwrap by passing in 0.
- *
- * @access public
- * @return string
- * @param array $array PHP array
- * @param int $indent Pass in false to use the default, which is 2
- * @param int $wordwrap Pass in 0 for no wordwrap, false for default (40)
- */
- public function dump($array,$indent = false,$wordwrap = false, $no_opening_dashes = false) {
- // Dumps to some very clean YAML. We'll have to add some more features
- // and options soon. And better support for folding.
-
- // New features and options.
- if ($indent === false or !is_numeric($indent)) {
- $this->_dumpIndent = 2;
- } else {
- $this->_dumpIndent = $indent;
- }
-
- if ($wordwrap === false or !is_numeric($wordwrap)) {
- $this->_dumpWordWrap = 40;
- } else {
- $this->_dumpWordWrap = $wordwrap;
- }
-
- // New YAML document
- $string = "";
- if (!$no_opening_dashes) $string = "---\n";
-
- // Start at the base of the array and move through it.
- if ($array) {
- $array = (array)$array;
- $previous_key = -1;
- foreach ($array as $key => $value) {
- if (!isset($first_key)) $first_key = $key;
- $string .= $this->_yamlize($key,$value,0,$previous_key, $first_key, $array);
- $previous_key = $key;
- }
- }
- return $string;
- }
-
- /**
- * Attempts to convert a key / value array item to YAML
- * @access private
- * @return string
- * @param $key The name of the key
- * @param $value The value of the item
- * @param $indent The indent of the current node
- */
- private function _yamlize($key,$value,$indent, $previous_key = -1, $first_key = 0, $source_array = null) {
- if (is_array($value)) {
- if (empty ($value))
- return $this->_dumpNode($key, array(), $indent, $previous_key, $first_key, $source_array);
- // It has children. What to do?
- // Make it the right kind of item
- $string = $this->_dumpNode($key, self::REMPTY, $indent, $previous_key, $first_key, $source_array);
- // Add the indent
- $indent += $this->_dumpIndent;
- // Yamlize the array
- $string .= $this->_yamlizeArray($value,$indent);
- } elseif (!is_array($value)) {
- // It doesn't have children. Yip.
- $string = $this->_dumpNode($key, $value, $indent, $previous_key, $first_key, $source_array);
- }
- return $string;
- }
-
- /**
- * Attempts to convert an array to YAML
- * @access private
- * @return string
- * @param $array The array you want to convert
- * @param $indent The indent of the current level
- */
- private function _yamlizeArray($array,$indent) {
- if (is_array($array)) {
- $string = '';
- $previous_key = -1;
- foreach ($array as $key => $value) {
- if (!isset($first_key)) $first_key = $key;
- $string .= $this->_yamlize($key, $value, $indent, $previous_key, $first_key, $array);
- $previous_key = $key;
- }
- return $string;
- } else {
- return false;
- }
- }
-
- /**
- * Returns YAML from a key and a value
- * @access private
- * @return string
- * @param $key The name of the key
- * @param $value The value of the item
- * @param $indent The indent of the current node
- */
- private function _dumpNode($key, $value, $indent, $previous_key = -1, $first_key = 0, $source_array = null) {
- // do some folding here, for blocks
- if (is_string ($value) && ((strpos($value,"\n") !== false || strpos($value,": ") !== false || strpos($value,"- ") !== false ||
- strpos($value,"*") !== false || strpos($value,"#") !== false || strpos($value,"<") !== false || strpos($value,">") !== false || strpos ($value, ' ') !== false ||
- strpos($value,"[") !== false || strpos($value,"]") !== false || strpos($value,"{") !== false || strpos($value,"}") !== false) || strpos($value,"&") !== false || strpos($value, "'") !== false || strpos($value, "!") === 0 ||
- substr ($value, -1, 1) == ':')
- ) {
- $value = $this->_doLiteralBlock($value,$indent);
- } else {
- $value = $this->_doFolding($value,$indent);
- }
-
- if ($value === array()) $value = '[ ]';
- if ($value === "") $value = '""';
- if (self::isTranslationWord($value)) {
- $value = $this->_doLiteralBlock($value, $indent);
- }
- if (trim ($value) != $value)
- $value = $this->_doLiteralBlock($value,$indent);
-
- if (is_bool($value)) {
- $value = $value ? "true" : "false";
- }
-
- if ($value === null) $value = 'null';
- if ($value === "'" . self::REMPTY . "'") $value = null;
-
- $spaces = str_repeat(' ',$indent);
-
- //if (is_int($key) && $key - 1 == $previous_key && $first_key===0) {
- if (is_array ($source_array) && array_keys($source_array) === range(0, count($source_array) - 1)) {
- // It's a sequence
- $string = $spaces.'- '.$value."\n";
- } else {
- // if ($first_key===0) throw new Exception('Keys are all screwy. The first one was zero, now it\'s "'. $key .'"');
- // It's mapped
- if (strpos($key, ":") !== false || strpos($key, "#") !== false) { $key = '"' . $key . '"'; }
- $string = rtrim ($spaces.$key.': '.$value)."\n";
- }
- return $string;
- }
-
- /**
- * Creates a literal block for dumping
- * @access private
- * @return string
- * @param $value
- * @param $indent int The value of the indent
- */
- private function _doLiteralBlock($value,$indent) {
- if ($value === "\n") return '\n';
- if (strpos($value, "\n") === false && strpos($value, "'") === false) {
- return sprintf ("'%s'", $value);
- }
- if (strpos($value, "\n") === false && strpos($value, '"') === false) {
- return sprintf ('"%s"', $value);
- }
- $exploded = explode("\n",$value);
- $newValue = '|';
- $indent += $this->_dumpIndent;
- $spaces = str_repeat(' ',$indent);
- foreach ($exploded as $line) {
- $newValue .= "\n" . $spaces . ($line);
- }
- return $newValue;
- }
-
- /**
- * Folds a string of text, if necessary
- * @access private
- * @return string
- * @param $value The string you wish to fold
- */
- private function _doFolding($value,$indent) {
- // Don't do anything if wordwrap is set to 0
-
- if ($this->_dumpWordWrap !== 0 && is_string ($value) && strlen($value) > $this->_dumpWordWrap) {
- $indent += $this->_dumpIndent;
- $indent = str_repeat(' ',$indent);
- $wrapped = wordwrap($value,$this->_dumpWordWrap,"\n$indent");
- $value = ">\n".$indent.$wrapped;
- } else {
- if ($this->setting_dump_force_quotes && is_string ($value) && $value !== self::REMPTY)
- $value = '"' . $value . '"';
- if (is_numeric($value) && is_string($value))
- $value = '"' . $value . '"';
- }
-
-
- return $value;
- }
-
- private function isTrueWord($value) {
- $words = self::getTranslations(array('true', 'on', 'yes', 'y'));
- return in_array($value, $words, true);
- }
-
- private function isFalseWord($value) {
- $words = self::getTranslations(array('false', 'off', 'no', 'n'));
- return in_array($value, $words, true);
- }
-
- private function isNullWord($value) {
- $words = self::getTranslations(array('null', '~'));
- return in_array($value, $words, true);
- }
-
- private function isTranslationWord($value) {
- return (
- self::isTrueWord($value) ||
- self::isFalseWord($value) ||
- self::isNullWord($value)
- );
- }
-
- /**
- * Coerce a string into a native type
- * Reference: http://yaml.org/type/bool.html
- * TODO: Use only words from the YAML spec.
- * @access private
- * @param $value The value to coerce
- */
- private function coerceValue(&$value) {
- if (self::isTrueWord($value)) {
- $value = true;
- } else if (self::isFalseWord($value)) {
- $value = false;
- } else if (self::isNullWord($value)) {
- $value = null;
- }
- }
-
- /**
- * Given a set of words, perform the appropriate translations on them to
- * match the YAML 1.1 specification for type coercing.
- * @param $words The words to translate
- * @access private
- */
- private static function getTranslations(array $words) {
- $result = array();
- foreach ($words as $i) {
- $result = array_merge($result, array(ucfirst($i), strtoupper($i), strtolower($i)));
- }
- return $result;
- }
-
-// LOADING FUNCTIONS
-
- private function __load($input) {
- $Source = $this->loadFromSource($input);
- return $this->loadWithSource($Source);
- }
-
- private function __loadString($input) {
- $Source = $this->loadFromString($input);
- return $this->loadWithSource($Source);
- }
-
- private function loadWithSource($Source) {
- if (empty ($Source)) return array();
- if ($this->setting_use_syck_is_possible && function_exists ('syck_load')) {
- $array = syck_load (implode ("\n", $Source));
- return is_array($array) ? $array : array();
- }
-
- $this->path = array();
- $this->result = array();
-
- $cnt = count($Source);
- for ($i = 0; $i < $cnt; $i++) {
- $line = $Source[$i];
-
- $this->indent = strlen($line) - strlen(ltrim($line));
- $tempPath = $this->getParentPathByIndent($this->indent);
- $line = self::stripIndent($line, $this->indent);
- if (self::isComment($line)) continue;
- if (self::isEmpty($line)) continue;
- $this->path = $tempPath;
-
- $literalBlockStyle = self::startsLiteralBlock($line);
- if ($literalBlockStyle) {
- $line = rtrim ($line, $literalBlockStyle . " \n");
- $literalBlock = '';
- $line .= ' '.$this->LiteralPlaceHolder;
- $literal_block_indent = strlen($Source[$i+1]) - strlen(ltrim($Source[$i+1]));
- while (++$i < $cnt && $this->literalBlockContinues($Source[$i], $this->indent)) {
- $literalBlock = $this->addLiteralLine($literalBlock, $Source[$i], $literalBlockStyle, $literal_block_indent);
- }
- $i--;
- }
-
- // Strip out comments
- if (strpos ($line, '#')) {
- $line = preg_replace('/\s*#([^"\']+)$/','',$line);
- }
-
- while (++$i < $cnt && self::greedilyNeedNextLine($line)) {
- $line = rtrim ($line, " \n\t\r") . ' ' . ltrim ($Source[$i], " \t");
- }
- $i--;
-
- $lineArray = $this->_parseLine($line);
-
- if ($literalBlockStyle)
- $lineArray = $this->revertLiteralPlaceHolder ($lineArray, $literalBlock);
-
- $this->addArray($lineArray, $this->indent);
-
- foreach ($this->delayedPath as $indent => $delayedPath)
- $this->path[$indent] = $delayedPath;
-
- $this->delayedPath = array();
-
- }
- return $this->result;
- }
-
- private function loadFromSource ($input) {
- if (!empty($input) && strpos($input, "\n") === false && file_exists($input))
- $input = file_get_contents($input);
-
- return $this->loadFromString($input);
- }
-
- private function loadFromString ($input) {
- $lines = explode("\n",$input);
- foreach ($lines as $k => $_) {
- $lines[$k] = rtrim ($_, "\r");
- }
- return $lines;
- }
-
- /**
- * Parses YAML code and returns an array for a node
- * @access private
- * @return array
- * @param string $line A line from the YAML file
- */
- private function _parseLine($line) {
- if (!$line) return array();
- $line = trim($line);
- if (!$line) return array();
-
- $array = array();
-
- $group = $this->nodeContainsGroup($line);
- if ($group) {
- $this->addGroup($line, $group);
- $line = $this->stripGroup ($line, $group);
- }
-
- if ($this->startsMappedSequence($line))
- return $this->returnMappedSequence($line);
-
- if ($this->startsMappedValue($line))
- return $this->returnMappedValue($line);
-
- if ($this->isArrayElement($line))
- return $this->returnArrayElement($line);
-
- if ($this->isPlainArray($line))
- return $this->returnPlainArray($line);
-
-
- return $this->returnKeyValuePair($line);
-
- }
-
- /**
- * Finds the type of the passed value, returns the value as the new type.
- * @access private
- * @param string $value
- * @return mixed
- */
- private function _toType($value) {
- if ($value === '') return "";
- $first_character = $value[0];
- $last_character = substr($value, -1, 1);
-
- $is_quoted = false;
- do {
- if (!$value) break;
- if ($first_character != '"' && $first_character != "'") break;
- if ($last_character != '"' && $last_character != "'") break;
- $is_quoted = true;
- } while (0);
-
- if ($is_quoted) {
- $value = str_replace('\n', "\n", $value);
- return strtr(substr ($value, 1, -1), array ('\\"' => '"', '\'\'' => '\'', '\\\'' => '\''));
- }
-
- if (strpos($value, ' #') !== false && !$is_quoted)
- $value = preg_replace('/\s+#(.+)$/','',$value);
-
- if ($first_character == '[' && $last_character == ']') {
- // Take out strings sequences and mappings
- $innerValue = trim(substr ($value, 1, -1));
- if ($innerValue === '') return array();
- $explode = $this->_inlineEscape($innerValue);
- // Propagate value array
- $value = array();
- foreach ($explode as $v) {
- $value[] = $this->_toType($v);
- }
- return $value;
- }
-
- if (strpos($value,': ')!==false && $first_character != '{') {
- $array = explode(': ',$value);
- $key = trim($array[0]);
- array_shift($array);
- $value = trim(implode(': ',$array));
- $value = $this->_toType($value);
- return array($key => $value);
- }
-
- if ($first_character == '{' && $last_character == '}') {
- $innerValue = trim(substr ($value, 1, -1));
- if ($innerValue === '') return array();
- // Inline Mapping
- // Take out strings sequences and mappings
- $explode = $this->_inlineEscape($innerValue);
- // Propagate value array
- $array = array();
- foreach ($explode as $v) {
- $SubArr = $this->_toType($v);
- if (empty($SubArr)) continue;
- if (is_array ($SubArr)) {
- $array[key($SubArr)] = $SubArr[key($SubArr)]; continue;
- }
- $array[] = $SubArr;
- }
- return $array;
- }
-
- if ($value == 'null' || $value == 'NULL' || $value == 'Null' || $value == '' || $value == '~') {
- return null;
- }
-
- if ( is_numeric($value) && preg_match ('/^(-|)[1-9]+[0-9]*$/', $value) ){
- $intvalue = (int)$value;
- if ($intvalue != PHP_INT_MAX)
- $value = $intvalue;
- return $value;
- }
-
- if (is_numeric($value) && preg_match('/^0[xX][0-9a-fA-F]+$/', $value)) {
- // Hexadecimal value.
- return hexdec($value);
- }
-
- $this->coerceValue($value);
-
- if (is_numeric($value)) {
- if ($value === '0') return 0;
- if (rtrim ($value, 0) === $value)
- $value = (float)$value;
- return $value;
- }
-
- return $value;
- }
-
- /**
- * Used in inlines to check for more inlines or quoted strings
- * @access private
- * @return array
- */
- private function _inlineEscape($inline) {
- // There's gotta be a cleaner way to do this...
- // While pure sequences seem to be nesting just fine,
- // pure mappings and mappings with sequences inside can't go very
- // deep. This needs to be fixed.
-
- $seqs = array();
- $maps = array();
- $saved_strings = array();
- $saved_empties = array();
-
- // Check for empty strings
- $regex = '/("")|(\'\')/';
- if (preg_match_all($regex,$inline,$strings)) {
- $saved_empties = $strings[0];
- $inline = preg_replace($regex,'YAMLEmpty',$inline);
- }
- unset($regex);
-
- // Check for strings
- $regex = '/(?:(")|(?:\'))((?(1)[^"]+|[^\']+))(?(1)"|\')/';
- if (preg_match_all($regex,$inline,$strings)) {
- $saved_strings = $strings[0];
- $inline = preg_replace($regex,'YAMLString',$inline);
- }
- unset($regex);
-
- // echo $inline;
-
- $i = 0;
- do {
-
- // Check for sequences
- while (preg_match('/\[([^{}\[\]]+)\]/U',$inline,$matchseqs)) {
- $seqs[] = $matchseqs[0];
- $inline = preg_replace('/\[([^{}\[\]]+)\]/U', ('YAMLSeq' . (count($seqs) - 1) . 's'), $inline, 1);
- }
-
- // Check for mappings
- while (preg_match('/{([^\[\]{}]+)}/U',$inline,$matchmaps)) {
- $maps[] = $matchmaps[0];
- $inline = preg_replace('/{([^\[\]{}]+)}/U', ('YAMLMap' . (count($maps) - 1) . 's'), $inline, 1);
- }
-
- if ($i++ >= 10) break;
-
- } while (strpos ($inline, '[') !== false || strpos ($inline, '{') !== false);
-
- $explode = explode(',',$inline);
- $explode = array_map('trim', $explode);
- $stringi = 0; $i = 0;
-
- while (1) {
-
- // Re-add the sequences
- if (!empty($seqs)) {
- foreach ($explode as $key => $value) {
- if (strpos($value,'YAMLSeq') !== false) {
- foreach ($seqs as $seqk => $seq) {
- $explode[$key] = str_replace(('YAMLSeq'.$seqk.'s'),$seq,$value);
- $value = $explode[$key];
- }
- }
- }
- }
-
- // Re-add the mappings
- if (!empty($maps)) {
- foreach ($explode as $key => $value) {
- if (strpos($value,'YAMLMap') !== false) {
- foreach ($maps as $mapk => $map) {
- $explode[$key] = str_replace(('YAMLMap'.$mapk.'s'), $map, $value);
- $value = $explode[$key];
- }
- }
- }
- }
-
-
- // Re-add the strings
- if (!empty($saved_strings)) {
- foreach ($explode as $key => $value) {
- while (strpos($value,'YAMLString') !== false) {
- $explode[$key] = preg_replace('/YAMLString/',$saved_strings[$stringi],$value, 1);
- unset($saved_strings[$stringi]);
- ++$stringi;
- $value = $explode[$key];
- }
- }
- }
-
-
- // Re-add the empties
- if (!empty($saved_empties)) {
- foreach ($explode as $key => $value) {
- while (strpos($value,'YAMLEmpty') !== false) {
- $explode[$key] = preg_replace('/YAMLEmpty/', '', $value, 1);
- $value = $explode[$key];
- }
- }
- }
-
- $finished = true;
- foreach ($explode as $key => $value) {
- if (strpos($value,'YAMLSeq') !== false) {
- $finished = false; break;
- }
- if (strpos($value,'YAMLMap') !== false) {
- $finished = false; break;
- }
- if (strpos($value,'YAMLString') !== false) {
- $finished = false; break;
- }
- if (strpos($value,'YAMLEmpty') !== false) {
- $finished = false; break;
- }
- }
- if ($finished) break;
-
- $i++;
- if ($i > 10)
- break; // Prevent infinite loops.
- }
-
-
- return $explode;
- }
-
- private function literalBlockContinues ($line, $lineIndent) {
- if (!trim($line)) return true;
- if (strlen($line) - strlen(ltrim($line)) > $lineIndent) return true;
- return false;
- }
-
- private function referenceContentsByAlias ($alias) {
- do {
- if (!isset($this->SavedGroups[$alias])) { echo "Bad group name: $alias."; break; }
- $groupPath = $this->SavedGroups[$alias];
- $value = $this->result;
- foreach ($groupPath as $k) {
- $value = $value[$k];
- }
- } while (false);
- return $value;
- }
-
- private function addArrayInline ($array, $indent) {
- $CommonGroupPath = $this->path;
- if (empty ($array)) return false;
-
- foreach ($array as $k => $_) {
- $this->addArray(array($k => $_), $indent);
- $this->path = $CommonGroupPath;
- }
- return true;
- }
-
- private function addArray ($incoming_data, $incoming_indent) {
-
- // print_r ($incoming_data);
-
- if (count ($incoming_data) > 1)
- return $this->addArrayInline ($incoming_data, $incoming_indent);
-
- $key = key ($incoming_data);
- $value = isset($incoming_data[$key]) ? $incoming_data[$key] : null;
- if ($key === '__!YAMLZero') $key = '0';
-
- if ($incoming_indent == 0 && !$this->_containsGroupAlias && !$this->_containsGroupAnchor) { // Shortcut for root-level values.
- if ($key || $key === '' || $key === '0') {
- $this->result[$key] = $value;
- } else {
- $this->result[] = $value; end ($this->result); $key = key ($this->result);
- }
- $this->path[$incoming_indent] = $key;
- return;
- }
-
-
-
- $history = array();
- // Unfolding inner array tree.
- $history[] = $_arr = $this->result;
- foreach ($this->path as $k) {
- $history[] = $_arr = $_arr[$k];
- }
-
- if ($this->_containsGroupAlias) {
- $value = $this->referenceContentsByAlias($this->_containsGroupAlias);
- $this->_containsGroupAlias = false;
- }
-
-
- // Adding string or numeric key to the innermost level or $this->arr.
- if (is_string($key) && $key == '<<') {
- if (!is_array ($_arr)) { $_arr = array (); }
-
- $_arr = array_merge ($_arr, $value);
- } else if ($key || $key === '' || $key === '0') {
- if (!is_array ($_arr))
- $_arr = array ($key=>$value);
- else
- $_arr[$key] = $value;
- } else {
- if (!is_array ($_arr)) { $_arr = array ($value); $key = 0; }
- else { $_arr[] = $value; end ($_arr); $key = key ($_arr); }
- }
-
- $reverse_path = array_reverse($this->path);
- $reverse_history = array_reverse ($history);
- $reverse_history[0] = $_arr;
- $cnt = count($reverse_history) - 1;
- for ($i = 0; $i < $cnt; $i++) {
- $reverse_history[$i+1][$reverse_path[$i]] = $reverse_history[$i];
- }
- $this->result = $reverse_history[$cnt];
-
- $this->path[$incoming_indent] = $key;
-
- if ($this->_containsGroupAnchor) {
- $this->SavedGroups[$this->_containsGroupAnchor] = $this->path;
- if (is_array ($value)) {
- $k = key ($value);
- if (!is_int ($k)) {
- $this->SavedGroups[$this->_containsGroupAnchor][$incoming_indent + 2] = $k;
- }
- }
- $this->_containsGroupAnchor = false;
- }
-
- }
-
- private static function startsLiteralBlock ($line) {
- $lastChar = substr (trim($line), -1);
- if ($lastChar != '>' && $lastChar != '|') return false;
- if ($lastChar == '|') return $lastChar;
- // HTML tags should not be counted as literal blocks.
- if (preg_match ('#<.*?>$#', $line)) return false;
- return $lastChar;
- }
-
- private static function greedilyNeedNextLine($line) {
- $line = trim ($line);
- if (!strlen($line)) return false;
- if (substr ($line, -1, 1) == ']') return false;
- if ($line[0] == '[') return true;
- if (preg_match ('#^[^:]+?:\s*\[#', $line)) return true;
- return false;
- }
-
- private function addLiteralLine ($literalBlock, $line, $literalBlockStyle, $indent = -1) {
- $line = self::stripIndent($line, $indent);
- if ($literalBlockStyle !== '|') {
- $line = self::stripIndent($line);
- }
- $line = rtrim ($line, "\r\n\t ") . "\n";
- if ($literalBlockStyle == '|') {
- return $literalBlock . $line;
- }
- if (strlen($line) == 0)
- return rtrim($literalBlock, ' ') . "\n";
- if ($line == "\n" && $literalBlockStyle == '>') {
- return rtrim ($literalBlock, " \t") . "\n";
- }
- if ($line != "\n")
- $line = trim ($line, "\r\n ") . " ";
- return $literalBlock . $line;
- }
-
- function revertLiteralPlaceHolder ($lineArray, $literalBlock) {
- foreach ($lineArray as $k => $_) {
- if (is_array($_))
- $lineArray[$k] = $this->revertLiteralPlaceHolder ($_, $literalBlock);
- else if (substr($_, -1 * strlen ($this->LiteralPlaceHolder)) == $this->LiteralPlaceHolder)
- $lineArray[$k] = rtrim ($literalBlock, " \r\n");
- }
- return $lineArray;
- }
-
- private static function stripIndent ($line, $indent = -1) {
- if ($indent == -1) $indent = strlen($line) - strlen(ltrim($line));
- return substr ($line, $indent);
- }
-
- private function getParentPathByIndent ($indent) {
- if ($indent == 0) return array();
- $linePath = $this->path;
- do {
- end($linePath); $lastIndentInParentPath = key($linePath);
- if ($indent <= $lastIndentInParentPath) array_pop ($linePath);
- } while ($indent <= $lastIndentInParentPath);
- return $linePath;
- }
-
-
- private function clearBiggerPathValues ($indent) {
-
-
- if ($indent == 0) $this->path = array();
- if (empty ($this->path)) return true;
-
- foreach ($this->path as $k => $_) {
- if ($k > $indent) unset ($this->path[$k]);
- }
-
- return true;
- }
-
-
- private static function isComment ($line) {
- if (!$line) return false;
- if ($line[0] == '#') return true;
- if (trim($line, " \r\n\t") == '---') return true;
- return false;
- }
-
- private static function isEmpty ($line) {
- return (trim ($line) === '');
- }
-
-
- private function isArrayElement ($line) {
- if (!$line || !is_scalar($line)) return false;
- if (substr($line, 0, 2) != '- ') return false;
- if (strlen ($line) > 3)
- if (substr($line,0,3) == '---') return false;
-
- return true;
- }
-
- private function isHashElement ($line) {
- return strpos($line, ':');
- }
-
- private function isLiteral ($line) {
- if ($this->isArrayElement($line)) return false;
- if ($this->isHashElement($line)) return false;
- return true;
- }
-
-
- private static function unquote ($value) {
- if (!$value) return $value;
- if (!is_string($value)) return $value;
- if ($value[0] == '\'') return trim ($value, '\'');
- if ($value[0] == '"') return trim ($value, '"');
- return $value;
- }
-
- private function startsMappedSequence ($line) {
- return (substr($line, 0, 2) == '- ' && substr ($line, -1, 1) == ':');
- }
-
- private function returnMappedSequence ($line) {
- $array = array();
- $key = self::unquote(trim(substr($line,1,-1)));
- $array[$key] = array();
- $this->delayedPath = array(strpos ($line, $key) + $this->indent => $key);
- return array($array);
- }
-
- private function checkKeysInValue($value) {
- if (strchr('[{"\'', $value[0]) === false) {
- if (strchr($value, ': ') !== false) {
- throw new Exception('Too many keys: '.$value);
- }
- }
- }
-
- private function returnMappedValue ($line) {
- $this->checkKeysInValue($line);
- $array = array();
- $key = self::unquote (trim(substr($line,0,-1)));
- $array[$key] = '';
- return $array;
- }
-
- private function startsMappedValue ($line) {
- return (substr ($line, -1, 1) == ':');
- }
-
- private function isPlainArray ($line) {
- return ($line[0] == '[' && substr ($line, -1, 1) == ']');
- }
-
- private function returnPlainArray ($line) {
- return $this->_toType($line);
- }
-
- private function returnKeyValuePair ($line) {
- $array = array();
- $key = '';
- if (strpos ($line, ': ')) {
- // It's a key/value pair most likely
- // If the key is in double quotes pull it out
- if (($line[0] == '"' || $line[0] == "'") && preg_match('/^(["\'](.*)["\'](\s)*:)/',$line,$matches)) {
- $value = trim(str_replace($matches[1],'',$line));
- $key = $matches[2];
- } else {
- // Do some guesswork as to the key and the value
- $explode = explode(': ', $line);
- $key = trim(array_shift($explode));
- $value = trim(implode(': ', $explode));
- $this->checkKeysInValue($value);
- }
- // Set the type of the value. Int, string, etc
- $value = $this->_toType($value);
- if ($key === '0') $key = '__!YAMLZero';
- $array[$key] = $value;
- } else {
- $array = array ($line);
- }
- return $array;
-
- }
-
-
- private function returnArrayElement ($line) {
- if (strlen($line) <= 1) return array(array()); // Weird %)
- $array = array();
- $value = trim(substr($line,1));
- $value = $this->_toType($value);
- if ($this->isArrayElement($value)) {
- $value = $this->returnArrayElement($value);
- }
- $array[] = $value;
- return $array;
- }
-
-
- private function nodeContainsGroup ($line) {
- $symbolsForReference = 'A-z0-9_\-';
- if (strpos($line, '&') === false && strpos($line, '*') === false) return false; // Please die fast ;-)
- if ($line[0] == '&' && preg_match('/^(&['.$symbolsForReference.']+)/', $line, $matches)) return $matches[1];
- if ($line[0] == '*' && preg_match('/^(\*['.$symbolsForReference.']+)/', $line, $matches)) return $matches[1];
- if (preg_match('/(&['.$symbolsForReference.']+)$/', $line, $matches)) return $matches[1];
- if (preg_match('/(\*['.$symbolsForReference.']+$)/', $line, $matches)) return $matches[1];
- if (preg_match ('#^\s*<<\s*:\s*(\*[^\s]+).*$#', $line, $matches)) return $matches[1];
- return false;
-
- }
-
- private function addGroup ($line, $group) {
- if ($group[0] == '&') $this->_containsGroupAnchor = substr ($group, 1);
- if ($group[0] == '*') $this->_containsGroupAlias = substr ($group, 1);
- //print_r ($this->path);
- }
-
- private function stripGroup ($line, $group) {
- $line = trim(str_replace($group, '', $line));
- return $line;
- }
-}
-
-// Enable use of Spyc from command line
-// The syntax is the following: php Spyc.php spyc.yaml
-
-do {
- if (PHP_SAPI != 'cli') break;
- if (empty ($_SERVER['argc']) || $_SERVER['argc'] < 2) break;
- if (empty ($_SERVER['PHP_SELF']) || FALSE === strpos ($_SERVER['PHP_SELF'], 'Spyc.php') ) break;
- $file = $argv[1];
- echo json_encode (spyc_load_file ($file));
-} while (0);
diff --git a/MLEB/Translate/messagegroups/AggregateMessageGroup.php b/MLEB/Translate/messagegroups/AggregateMessageGroup.php
index f1a1eb94..8dc9b4c5 100644
--- a/MLEB/Translate/messagegroups/AggregateMessageGroup.php
+++ b/MLEB/Translate/messagegroups/AggregateMessageGroup.php
@@ -5,7 +5,7 @@
* @file
* @author Niklas Laxström
* @copyright Copyright © 2010-2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -24,7 +24,7 @@ class AggregateMessageGroup extends MessageGroupBase {
}
public function load( $code ) {
- $messages = array();
+ $messages = [];
/**
* @var $group MessageGroup
@@ -38,7 +38,7 @@ class AggregateMessageGroup extends MessageGroupBase {
public function getMangler() {
if ( !isset( $this->mangler ) ) {
- $this->mangler = StringMatcher::emptyMatcher();
+ $this->mangler = StringMatcher::EmptyMatcher();
}
return $this->mangler;
@@ -46,7 +46,7 @@ class AggregateMessageGroup extends MessageGroupBase {
public function getGroups() {
if ( !isset( $this->groups ) ) {
- $groups = array();
+ $groups = [];
$ids = (array)$this->conf['GROUPS'];
$ids = MessageGroups::expandWildcards( $ids );
@@ -76,7 +76,7 @@ class AggregateMessageGroup extends MessageGroupBase {
}
protected function loadMessagesFromCache( $groups ) {
- $messages = array();
+ $messages = [];
foreach ( $groups as $group ) {
if ( $group instanceof MessageGroupOld ) {
$messages += $group->getDefinitions();
@@ -143,7 +143,7 @@ class AggregateMessageGroup extends MessageGroupBase {
}
public function getTags( $type = null ) {
- $tags = array();
+ $tags = [];
/**
* @var $group MessageGroup
@@ -156,23 +156,25 @@ class AggregateMessageGroup extends MessageGroupBase {
}
public function getKeys() {
- $keys = array();
+ $keys = [];
/**
* @var $group MessageGroup
*/
foreach ( $this->getGroups() as $group ) {
// @todo Not all oldstyle groups have getKeys yet
if ( method_exists( $group, 'getKeys' ) ) {
- $keys = array_merge( $keys, $group->getKeys() );
+ $moreKeys = $group->getKeys();
} else {
- $keys = array_keys( $group->getDefinitions() );
+ $moreKeys = array_keys( $group->getDefinitions() );
+ }
+
+ // Array merge is *really* slow (tested in PHP 7.1), so avoiding it. A loop
+ // followed by array_unique (which we need anyway) is magnitudes faster.
+ foreach ( $moreKeys as $key ) {
+ $keys[] = $key;
}
}
- /* In case some groups are included directly and indirectly
- * via other subgroup, we might get the same keys multiple
- * times. Since this is a list we need to remove duplicates
- * manually */
- return array_unique( $keys );
+ return array_values( array_unique( $keys ) );
}
}
diff --git a/MLEB/Translate/messagegroups/FileBasedMessageGroup.php b/MLEB/Translate/messagegroups/FileBasedMessageGroup.php
index df642338..4bf2bcc5 100644
--- a/MLEB/Translate/messagegroups/FileBasedMessageGroup.php
+++ b/MLEB/Translate/messagegroups/FileBasedMessageGroup.php
@@ -5,7 +5,7 @@
* @file
* @author Niklas Laxström
* @copyright Copyright © 2010-2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -22,22 +22,22 @@ class FileBasedMessageGroup extends MessageGroupBase implements MetaYamlSchemaEx
/**
* Constructs a FileBasedMessageGroup from any normal message group.
* Useful for doing special Gettext exports from any group.
- * @param $group MessageGroup
+ * @param MessageGroup $group
* @return FileBasedMessageGroup
*/
public static function newFromMessageGroup( $group ) {
- $conf = array(
- 'BASIC' => array(
+ $conf = [
+ 'BASIC' => [
'class' => 'FileBasedMessageGroup',
'id' => $group->getId(),
'label' => $group->getLabel(),
'namespace' => $group->getNamespace(),
- ),
- 'FILES' => array(
+ ],
+ 'FILES' => [
'sourcePattern' => '',
'targetPattern' => '',
- ),
- );
+ ],
+ ];
return MessageGroupBase::factory( $conf );
}
@@ -51,7 +51,7 @@ class FileBasedMessageGroup extends MessageGroupBase implements MetaYamlSchemaEx
$ffs = $this->getFFS();
$data = $ffs->read( $code );
- return $data ? $data['MESSAGES'] : array();
+ return $data ? $data['MESSAGES'] : [];
}
/**
@@ -112,13 +112,13 @@ class FileBasedMessageGroup extends MessageGroupBase implements MetaYamlSchemaEx
public function replaceVariables( $pattern, $code ) {
global $IP, $wgTranslateGroupRoot;
- $variables = array(
+ $variables = [
'%CODE%' => $this->mapCode( $code ),
'%MWROOT%' => $IP,
'%GROUPROOT%' => $wgTranslateGroupRoot,
- );
+ ];
- wfRunHooks( 'TranslateMessageGroupPathVariables', array( $this, &$variables ) );
+ Hooks::run( 'TranslateMessageGroupPathVariables', [ $this, &$variables ] );
return str_replace( array_keys( $variables ), array_values( $variables ), $pattern );
}
@@ -148,37 +148,37 @@ class FileBasedMessageGroup extends MessageGroupBase implements MetaYamlSchemaEx
}
public static function getExtraSchema() {
- $schema = array(
- 'root' => array(
+ $schema = [
+ 'root' => [
'_type' => 'array',
- '_children' => array(
- 'FILES' => array(
+ '_children' => [
+ 'FILES' => [
'_type' => 'array',
- '_children' => array(
- 'class' => array(
+ '_children' => [
+ 'class' => [
'_type' => 'text',
'_not_empty' => true,
- ),
- 'codeMap' => array(
+ ],
+ 'codeMap' => [
'_type' => 'array',
'_ignore_extra_keys' => true,
- '_children' => array(),
- ),
- 'definitionFile' => array(
+ '_children' => [],
+ ],
+ 'definitionFile' => [
'_type' => 'text',
- ),
- 'sourcePattern' => array(
+ ],
+ 'sourcePattern' => [
'_type' => 'text',
'_not_empty' => true,
- ),
- 'targetPattern' => array(
+ ],
+ 'targetPattern' => [
'_type' => 'text',
- ),
- )
- )
- )
- )
- );
+ ],
+ ]
+ ]
+ ]
+ ]
+ ];
return $schema;
}
diff --git a/MLEB/Translate/messagegroups/MediaWikiExtensionMessageGroup.php b/MLEB/Translate/messagegroups/MediaWikiExtensionMessageGroup.php
index e44d1d5d..6cea415a 100644
--- a/MLEB/Translate/messagegroups/MediaWikiExtensionMessageGroup.php
+++ b/MLEB/Translate/messagegroups/MediaWikiExtensionMessageGroup.php
@@ -4,7 +4,7 @@
*
* @file
* @author Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -17,6 +17,8 @@ class MediaWikiExtensionMessageGroup extends FileBasedMessageGroup {
* describing them. This override method implements the logic
* to retrieve them. Also URLs are included if available.
* Needs the Configure extension.
+ * @param IContextSource|null $context
+ * @return string
*/
public function getDescription( IContextSource $context = null ) {
$language = $this->getSourceLanguage();
@@ -28,12 +30,12 @@ class MediaWikiExtensionMessageGroup extends FileBasedMessageGroup {
$desc = '';
if ( $msgkey ) {
$desc = $this->getMessage( $msgkey, $language );
- if ( strval( $desc ) === '' ) {
+ if ( (string)$desc === '' ) {
$desc = $this->getMessage( $msgkey, $this->getSourceLanguage() );
}
}
- if ( strval( $desc ) === '' ) {
+ if ( (string)$desc === '' ) {
// That failed, default to 'description'
$desc = parent::getDescription( $context );
}
diff --git a/MLEB/Translate/messagegroups/MessageGroup.php b/MLEB/Translate/messagegroups/MessageGroup.php
index a22ad02d..d1b5a51b 100644
--- a/MLEB/Translate/messagegroups/MessageGroup.php
+++ b/MLEB/Translate/messagegroups/MessageGroup.php
@@ -6,7 +6,7 @@
* @defgroup MessageGroup Message group
* @author Niklas Laxström
* @copyright Copyright © 2010-2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -36,7 +36,7 @@ interface MessageGroup {
/**
* Returns the human readable label (as plain text).
* Parameter $context was added in 2012-10-22.
- * @param IContextSource $context Context can be used by subclasses to provide
+ * @param IContextSource|null $context Context can be used by subclasses to provide
* translated descriptions, for example.
* @return string
*/
@@ -45,10 +45,9 @@ interface MessageGroup {
/**
* Returns a longer description about the group. Description can use wikitext.
* Parameter $context was added in 2012-10-22.
- * @param IContextSource $context Context can be used by subclasses to provide
+ * @param IContextSource|null $context Context can be used by subclasses to provide
* translated descriptions, for example.
* @return string
- *
*/
public function getDescription( IContextSource $context = null );
@@ -105,7 +104,7 @@ interface MessageGroup {
/**
* Initialises a message collection with the given language code,
* message definitions and message tags.
- * @param $code
+ * @param string $code
* @return MessageCollection
*/
public function initCollection( $code );
@@ -115,7 +114,7 @@ interface MessageGroup {
* that list may be identical with the translation in the wiki. For other
* groups the messages may be loaded from a file (and differ from the
* current translations or definitions).
- * @param $code
+ * @param string $code
* @return array
*/
public function load( $code );
@@ -128,7 +127,7 @@ interface MessageGroup {
/**
* Returns message tags. If type is given, only message keys with that
* tag are returned. Otherwise an array[tag => keys] is returned.
- * @param $type string
+ * @param string|null $type
* @return array
*/
public function getTags( $type = null );
diff --git a/MLEB/Translate/messagegroups/MessageGroupBase.php b/MLEB/Translate/messagegroups/MessageGroupBase.php
index 2a6cffc7..9d85ba92 100644
--- a/MLEB/Translate/messagegroups/MessageGroupBase.php
+++ b/MLEB/Translate/messagegroups/MessageGroupBase.php
@@ -5,7 +5,7 @@
* @file
* @author Niklas Laxström
* @copyright Copyright © 2010-2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -31,7 +31,7 @@ abstract class MessageGroupBase implements MessageGroup {
}
/**
- * @param $conf
+ * @param array $conf
*
* @return MessageGroup
*/
@@ -124,7 +124,7 @@ abstract class MessageGroupBase implements MessageGroup {
}
foreach ( $checks as $check ) {
- $checker->addCheck( array( $checker, $check ) );
+ $checker->addCheck( [ $checker, $check ] );
}
return $checker;
@@ -135,7 +135,7 @@ abstract class MessageGroupBase implements MessageGroup {
$class = $this->getFromConf( 'MANGLER', 'class' );
if ( $class === null ) {
- $this->mangler = StringMatcher::emptyMatcher();
+ $this->mangler = StringMatcher::EmptyMatcher();
return $this->mangler;
}
@@ -157,19 +157,34 @@ abstract class MessageGroupBase implements MessageGroup {
/**
* Returns the configured InsertablesSuggester if any.
* @since 2013.09
+ * @return CombinedInsertablesSuggester
*/
public function getInsertablesSuggester() {
+ $allClasses = [];
+
$class = $this->getFromConf( 'INSERTABLES', 'class' );
+ if ( $class !== null ) {
+ $allClasses[] = $class;
+ }
- if ( !$class ) {
- return null;
+ $classes = $this->getFromConf( 'INSERTABLES', 'classes' );
+ if ( $classes !== null ) {
+ $allClasses = array_merge( $allClasses, $classes );
}
- if ( !class_exists( $class ) ) {
- throw new MWException( "InsertablesSuggester class $class does not exist." );
+ array_unique( $allClasses, SORT_REGULAR );
+
+ $suggesters = [];
+
+ foreach ( $allClasses as $class ) {
+ if ( !class_exists( $class ) ) {
+ throw new MWException( "InsertablesSuggester class $class does not exist." );
+ }
+
+ $suggesters[] = new $class();
}
- return new $class();
+ return new CombinedInsertablesSuggester( $suggesters );
}
/**
@@ -192,7 +207,7 @@ abstract class MessageGroupBase implements MessageGroup {
*/
public function initCollection( $code ) {
$namespace = $this->getNamespace();
- $messages = array();
+ $messages = [];
$cache = new MessageGroupCache( $this, $this->getSourceLanguage() );
if ( !$cache->exists() ) {
@@ -243,7 +258,7 @@ abstract class MessageGroupBase implements MessageGroup {
public function getTags( $type = null ) {
if ( $type === null ) {
- $taglist = array();
+ $taglist = [];
foreach ( $this->getRawTags() as $type => $patterns ) {
$taglist[$type] = $this->parseTags( $patterns );
@@ -258,7 +273,7 @@ abstract class MessageGroupBase implements MessageGroup {
protected function parseTags( $patterns ) {
$messageKeys = $this->getKeys();
- $matches = array();
+ $matches = [];
/**
* Collect exact keys, no point running them trough string matcher
@@ -291,7 +306,7 @@ abstract class MessageGroupBase implements MessageGroup {
protected function getRawTags( $type = null ) {
if ( !isset( $this->conf['TAGS'] ) ) {
- return array();
+ return [];
}
$tags = $this->conf['TAGS'];
@@ -303,7 +318,7 @@ abstract class MessageGroupBase implements MessageGroup {
return $tags[$type];
}
- return array();
+ return [];
}
protected function setTags( MessageCollection $collection ) {
@@ -345,7 +360,7 @@ abstract class MessageGroupBase implements MessageGroup {
global $wgTranslateWorkflowStates;
if ( !$wgTranslateWorkflowStates ) {
// Not configured
- $conf = array();
+ $conf = [];
} else {
$conf = $wgTranslateWorkflowStates;
}
@@ -370,41 +385,56 @@ abstract class MessageGroupBase implements MessageGroup {
* @return array|null The language codes as array keys.
*/
public function getTranslatableLanguages() {
+ global $wgTranslateBlacklist;
+
$groupConfiguration = $this->getConfiguration();
if ( !isset( $groupConfiguration['LANGUAGES'] ) ) {
// No LANGUAGES section in the configuration.
return null;
}
- $lists = $groupConfiguration['LANGUAGES'];
- $codes = array(); // The list of languages to return
+ $codes = array_flip( array_keys( TranslateUtils::getLanguageNames( null ) ) );
+ $lists = $groupConfiguration['LANGUAGES'];
if ( isset( $lists['blacklist'] ) ) {
$blacklist = $lists['blacklist'];
- if ( is_array( $blacklist ) ) {
- $codes = array_flip( array_keys( TranslateUtils::getLanguageNames( 'en' ) ) );
+ if ( $blacklist === '*' ) {
+ // All languages blacklisted
+ $codes = [];
+ } elseif ( is_array( $blacklist ) ) {
foreach ( $blacklist as $code ) {
unset( $codes[$code] );
}
- } else {
- // All languages blacklisted. This is very rare but not impossible.
- $codes = array();
+ }
+ } else {
+ // Treat lack of explicit blacklist the same as blacklisting everything. This way,
+ // when one defines only whitelist, it means that only those languages are allowed.
+ $codes = [];
+ }
+
+ // DWIM with $wgTranslateBlacklist, e.g. languages in that list should not unexpectedly
+ // be enabled when a whitelist is used to whitelist any language.
+ $checks = [ $this->getId(), strtok( $this->getId(), '-' ), '*' ];
+ foreach ( $checks as $check ) {
+ if ( isset( $wgTranslateBlacklist[ $check ] ) ) {
+ foreach ( array_keys( $wgTranslateBlacklist[ $check ] ) as $blacklistedCode ) {
+ unset( $codes[ $blacklistedCode ] );
+ }
}
}
- $whitelist = array();
if ( isset( $lists['whitelist'] ) ) {
$whitelist = $lists['whitelist'];
- if ( $whitelist === "*" ) {
- // All languages whitelisted
+ if ( $whitelist === '*' ) {
+ // All languages whitelisted (except $wgTranslateBlacklist)
return null;
+ } elseif ( is_array( $whitelist ) ) {
+ foreach ( $whitelist as $code ) {
+ $codes[$code] = true;
+ }
}
}
- foreach ( $whitelist as $code ) {
- $codes[$code] = true;
- }
-
return $codes;
}
diff --git a/MLEB/Translate/messagegroups/MessageGroupOld.php b/MLEB/Translate/messagegroups/MessageGroupOld.php
index e6fda767..bd56f362 100644
--- a/MLEB/Translate/messagegroups/MessageGroupOld.php
+++ b/MLEB/Translate/messagegroups/MessageGroupOld.php
@@ -8,7 +8,7 @@
* @author Niklas Laxström
* @author Siebrand Mazeland
* @copyright Copyright © 2008-2013, Niklas Laxström, Siebrand Mazeland
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -24,7 +24,7 @@ abstract class MessageGroupOld implements MessageGroup {
protected $label = 'none';
/**
- * @param IContextSource $context
+ * @param IContextSource|null $context
* @return string
*/
public function getLabel( IContextSource $context = null ) {
@@ -32,7 +32,7 @@ abstract class MessageGroupOld implements MessageGroup {
}
/**
- * @param $value string
+ * @param string $value
*/
public function setLabel( $value ) {
$this->label = $value;
@@ -51,7 +51,7 @@ abstract class MessageGroupOld implements MessageGroup {
}
/**
- * @param $value string
+ * @param string $value
*/
public function setId( $value ) {
$this->id = $value;
@@ -64,12 +64,18 @@ abstract class MessageGroupOld implements MessageGroup {
*/
protected $namespace = NS_MEDIAWIKI;
- /// Get the namespace where all the messages of this group belong.
+ /**
+ * Get the namespace where all the messages of this group belong.
+ * @return int
+ */
public function getNamespace() {
return $this->namespace;
}
- /// Set the namespace where all the messages of this group belong.
+ /**
+ * Set the namespace where all the messages of this group belong.
+ * @param int $ns
+ */
public function setNamespace( $ns ) {
$this->namespace = $ns;
}
@@ -78,7 +84,7 @@ abstract class MessageGroupOld implements MessageGroup {
* List of messages that are hidden by default, but can still be translated if
* needed.
*/
- protected $optional = array();
+ protected $optional = [];
/**
* @return array
@@ -88,7 +94,7 @@ abstract class MessageGroupOld implements MessageGroup {
}
/**
- * @param $value array
+ * @param array $value
*/
public function setOptional( $value ) {
$this->optional = $value;
@@ -97,7 +103,7 @@ abstract class MessageGroupOld implements MessageGroup {
/**
* List of messages that are always hidden and cannot be translated.
*/
- protected $ignored = array();
+ protected $ignored = [];
/**
* @return array
@@ -107,7 +113,7 @@ abstract class MessageGroupOld implements MessageGroup {
}
/**
- * @param $value array
+ * @param array $value
*/
public function setIgnored( $value ) {
$this->ignored = $value;
@@ -160,7 +166,7 @@ abstract class MessageGroupOld implements MessageGroup {
*/
public function getMangler() {
if ( !isset( $this->mangler ) ) {
- $this->mangler = StringMatcher::emptyMatcher();
+ $this->mangler = StringMatcher::EmptyMatcher();
}
return $this->mangler;
@@ -171,7 +177,7 @@ abstract class MessageGroupOld implements MessageGroup {
}
public function load( $code ) {
- return array();
+ return [];
}
/**
@@ -184,7 +190,7 @@ abstract class MessageGroupOld implements MessageGroup {
public function getDefinitions() {
$defs = $this->load( $this->getSourceLanguage() );
if ( !is_array( $defs ) ) {
- throw new MWException( "Unable to load definitions for " . $this->getLabel() );
+ throw new MWException( 'Unable to load definitions for ' . $this->getLabel() );
}
return $defs;
@@ -197,7 +203,7 @@ abstract class MessageGroupOld implements MessageGroup {
* @return array
*/
public function getUniqueDefinitions() {
- return $this->meta ? array() : $this->getDefinitions();
+ return $this->meta ? [] : $this->getDefinitions();
}
/**
@@ -222,7 +228,7 @@ abstract class MessageGroupOld implements MessageGroup {
return null;
}
- $new = array();
+ $new = [];
foreach ( $array as $key => $v ) {
$key = strtolower( str_replace( ' ', '_', $key ) );
$new[$key] = $v;
@@ -234,7 +240,7 @@ abstract class MessageGroupOld implements MessageGroup {
/**
* All the messages for this group, by language code.
*/
- protected $messages = array();
+ protected $messages = [];
/**
* Returns path to the file where translation of language code $code are.
@@ -251,7 +257,7 @@ abstract class MessageGroupOld implements MessageGroup {
}
/**
- * @param $code
+ * @param string $code
* @return bool|string
*/
public function getMessageFileWithPath( $code ) {
@@ -272,8 +278,8 @@ abstract class MessageGroupOld implements MessageGroup {
/**
* Creates a new MessageCollection for this group.
*
- * @param $code \string Language code for this collection.
- * @param $unique \bool Whether to build collection for messages unique to this
+ * @param string $code Language code for this collection.
+ * @param bool $unique Whether to build collection for messages unique to this
* group only.
* @return MessageCollection
*/
@@ -310,27 +316,30 @@ abstract class MessageGroupOld implements MessageGroup {
}
public function getTags( $type = null ) {
- $tags = array(
+ $tags = [
'optional' => $this->optional,
'ignored' => $this->ignored,
- );
+ ];
if ( !$type ) {
return $tags;
}
- return isset( $tags[$type] ) ? $tags[$type] : array();
+ return isset( $tags[$type] ) ? $tags[$type] : [];
}
/**
- * @param $code string
+ * @param string $code
* @return bool
*/
protected function isSourceLanguage( $code ) {
return $code === $this->getSourceLanguage();
}
- // Unsupported stuff, just to satisfy the new interface
+ /**
+ * Unsupported stuff, just to satisfy the new interface
+ * @param array $conf
+ */
public function setConfiguration( $conf ) {
}
@@ -348,7 +357,7 @@ abstract class MessageGroupOld implements MessageGroup {
global $wgTranslateWorkflowStates;
if ( !$wgTranslateWorkflowStates ) {
// Not configured
- $conf = array();
+ $conf = [];
} else {
$conf = $wgTranslateWorkflowStates;
}
@@ -379,6 +388,8 @@ abstract class MessageGroupOld implements MessageGroup {
protected static function addContext( Message $message, IContextSource $context = null ) {
if ( $context ) {
$message->inLanguage( $context->getLanguage() );
+ } else {
+ $message->inLanguage( 'en' );
}
return $message;
diff --git a/MLEB/Translate/messagegroups/RecentAdditionsMessageGroup.php b/MLEB/Translate/messagegroups/RecentAdditionsMessageGroup.php
index 6a6d6bbd..217af1e5 100644
--- a/MLEB/Translate/messagegroups/RecentAdditionsMessageGroup.php
+++ b/MLEB/Translate/messagegroups/RecentAdditionsMessageGroup.php
@@ -5,7 +5,7 @@
* @file
* @author Niklas Laxström
* @copyright Copyright © 2012-2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -13,7 +13,7 @@
* @ingroup MessageGroup
*/
class RecentAdditionsMessageGroup extends RecentMessageGroup {
- protected $groupInfoCache = array();
+ protected $groupInfoCache = [];
public function getId() {
return '!additions';
@@ -35,14 +35,20 @@ class RecentAdditionsMessageGroup extends RecentMessageGroup {
protected function getQueryConditions() {
global $wgTranslateMessageNamespaces;
- $db = wfGetDB( DB_SLAVE );
- $conds = array(
+ $db = wfGetDB( DB_REPLICA );
+ $conds = [
'rc_title ' . $db->buildLike( $db->anyString(), '/en' ),
'rc_namespace' => $wgTranslateMessageNamespaces,
'rc_type != ' . RC_LOG,
'rc_id > ' . $this->getRCCutoff(),
- 'rc_user' => FuzzyBot::getUser()->getId(),
- );
+ ];
+
+ if ( class_exists( ActorMigration::class ) ) {
+ $conds[] = ActorMigration::newMigration()
+ ->getWhere( $db, 'rc_user', FuzzyBot::getUser() )['conds'];
+ } else {
+ $conds['rc_user'] = FuzzyBot::getUser()->getId();
+ }
return $conds;
}
@@ -52,7 +58,7 @@ class RecentAdditionsMessageGroup extends RecentMessageGroup {
* as they are not displayed in other places.
*
* @param MessageHandle $handle
- * @return boolean
+ * @return bool
*/
protected function matchingMessage( MessageHandle $handle ) {
return MessageGroups::isTranslatableMessage( $handle );
diff --git a/MLEB/Translate/messagegroups/RecentMessageGroup.php b/MLEB/Translate/messagegroups/RecentMessageGroup.php
index aa10eff7..c74710b8 100644
--- a/MLEB/Translate/messagegroups/RecentMessageGroup.php
+++ b/MLEB/Translate/messagegroups/RecentMessageGroup.php
@@ -6,7 +6,7 @@
* @author Niklas Laxström
* @author Siebrand Mazeland
* @copyright Copyright © 2008-2013, Niklas Laxström, Siebrand Mazeland
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -52,25 +52,26 @@ class RecentMessageGroup extends WikiMessageGroup {
}
protected function getRCCutoff() {
- $db = wfGetDB( DB_SLAVE );
+ $db = wfGetDB( DB_REPLICA );
$tables = 'recentchanges';
- $max = $db->selectField( $tables, 'MAX(rc_id)', array(), __METHOD__ );
+ $max = $db->selectField( $tables, 'MAX(rc_id)', [], __METHOD__ );
return max( 0, $max - 50000 );
}
/**
* Allows subclasses to partially customize the query.
+ * @return array
*/
protected function getQueryConditions() {
global $wgTranslateMessageNamespaces;
- $db = wfGetDB( DB_SLAVE );
- $conds = array(
+ $db = wfGetDB( DB_REPLICA );
+ $conds = [
'rc_title ' . $db->buildLike( $db->anyString(), '/' . $this->language ),
'rc_namespace' => $wgTranslateMessageNamespaces,
'rc_type != ' . RC_LOG,
'rc_id > ' . $this->getRCCutoff(),
- );
+ ];
return $conds;
}
@@ -79,7 +80,7 @@ class RecentMessageGroup extends WikiMessageGroup {
* Allows subclasses to filter out more unwanted messages.
*
* @param MessageHandle $msg
- * @return boolean
+ * @return bool
*/
protected function matchingMessage( MessageHandle $msg ) {
return true;
@@ -87,20 +88,29 @@ class RecentMessageGroup extends WikiMessageGroup {
public function getDefinitions() {
if ( !$this->language ) {
- throw new MWException( "Language not set" );
+ throw new MWException( 'Language not set' );
}
- $db = wfGetDB( DB_SLAVE );
- $tables = 'recentchanges';
- $fields = array( 'rc_namespace', 'rc_title' );
+ $db = wfGetDB( DB_REPLICA );
+
+ if ( is_callable( RecentChange::class, 'getQueryInfo' ) ) {
+ $rcQuery = RecentChange::getQueryInfo();
+ $tables = $rcQuery['tables'];
+ $joins = $rcQuery['joins'];
+ } else {
+ $tables = 'recentchanges';
+ $joins = [];
+ }
+
+ $fields = [ 'rc_namespace', 'rc_title' ];
$conds = $this->getQueryConditions();
- $options = array(
+ $options = [
'ORDER BY' => 'rc_id DESC',
'LIMIT' => 5000
- );
- $res = $db->select( $tables, $fields, $conds, __METHOD__, $options );
+ ];
+ $res = $db->select( $tables, $fields, $conds, __METHOD__, $options, $joins );
- $defs = array();
+ $defs = [];
foreach ( $res as $row ) {
$title = Title::makeTitle( $row->rc_namespace, $row->rc_title );
$handle = new MessageHandle( $title );
@@ -134,6 +144,9 @@ class RecentMessageGroup extends WikiMessageGroup {
/**
* Subpage language code, if any in the title, is ignored.
+ * @param MessageHandle $handle
+ * @return null|string
+ * @throws MWException
*/
public function getMessageContent( MessageHandle $handle ) {
$groupId = MessageIndex::getPrimaryGroupId( $handle );
diff --git a/MLEB/Translate/messagegroups/SandboxMessageGroup.php b/MLEB/Translate/messagegroups/SandboxMessageGroup.php
index 13edb914..f0aa1d8b 100644
--- a/MLEB/Translate/messagegroups/SandboxMessageGroup.php
+++ b/MLEB/Translate/messagegroups/SandboxMessageGroup.php
@@ -4,7 +4,7 @@
*
* @file
* @author Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -48,7 +48,7 @@ class SandboxMessageGroup extends WikiMessageGroup {
global $wgTranslateSandboxSuggestions, $wgTranslateSandboxLimit;
// This will contain the list of messages shown to the user
- $list = array();
+ $list = [];
// Ugly
$store = new TranslationStashStorage( wfGetDB( DB_MASTER ) );
@@ -77,12 +77,10 @@ class SandboxMessageGroup extends WikiMessageGroup {
$list[$index] = '';
}
- // Message index of all known messages
- $mi = MessageIndex::singleton();
// Get some random keys
- $all = array_keys( $mi->retrieve() );
+ $all = MessageIndex::singleton()->getKeys();
// In case there aren't any messages
- if ( $all === array() ) {
+ if ( $all === [] ) {
return $list;
}
$min = 0;
@@ -143,6 +141,8 @@ class SandboxMessageGroup extends WikiMessageGroup {
/**
* Subpage language code, if any in the title, is ignored.
+ * @param MessageHandle $handle
+ * @return null|string
*/
public function getMessageContent( MessageHandle $handle ) {
$groupId = MessageIndex::getPrimaryGroupId( $handle );
diff --git a/MLEB/Translate/messagegroups/WikiMessageGroup.php b/MLEB/Translate/messagegroups/WikiMessageGroup.php
index c14ca644..e7b08240 100644
--- a/MLEB/Translate/messagegroups/WikiMessageGroup.php
+++ b/MLEB/Translate/messagegroups/WikiMessageGroup.php
@@ -6,7 +6,7 @@
* @author Niklas Laxström
* @author Siebrand Mazeland
* @copyright Copyright © 2008-2013, Niklas Laxström, Siebrand Mazeland
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -19,7 +19,7 @@
* @ingroup MessageGroup
*/
class WikiMessageGroup extends MessageGroupOld {
- protected $source = null;
+ protected $source;
/**
* Constructor.
@@ -48,12 +48,12 @@ class WikiMessageGroup extends MessageGroupOld {
* @return array Array of messages keys with definitions.
*/
public function getDefinitions() {
- $definitions = array();
+ $definitions = [];
// In theory the page could have templates that are substitued
$source = wfMessage( $this->source );
if ( $source->isDisabled() ) {
- return array();
+ return [];
}
$contents = $source->text();
diff --git a/MLEB/Translate/messagegroups/WikiPageMessageGroup.php b/MLEB/Translate/messagegroups/WikiPageMessageGroup.php
index e24d83a8..806c317b 100644
--- a/MLEB/Translate/messagegroups/WikiPageMessageGroup.php
+++ b/MLEB/Translate/messagegroups/WikiPageMessageGroup.php
@@ -5,17 +5,23 @@
* @file
* @author Niklas Laxström
* @author Siebrand Mazeland
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
* Wraps the translatable page sections into a message group.
* @ingroup PageTranslation MessageGroup
*/
-class WikiPageMessageGroup extends WikiMessageGroup {
- /// @var string|Title
+class WikiPageMessageGroup extends WikiMessageGroup implements IDBAccessObject {
+ /**
+ * @var Title|string
+ */
protected $title;
+ /**
+ * @param string $id
+ * @param Title|string $source
+ */
public function __construct( $id, $source ) {
$this->id = $id;
$this->title = $source;
@@ -51,17 +57,15 @@ class WikiPageMessageGroup extends WikiMessageGroup {
return $this->definitions;
}
- // Avoid replication issues
- $dbr = wfGetDB( DB_MASTER );
+ $dbr = TranslateUtils::getSafeReadDB();
$tables = 'translate_sections';
- $vars = array( 'trs_key', 'trs_text' );
- $conds = array( 'trs_page' => $this->getTitle()->getArticleID() );
- $options = array( 'ORDER BY' => 'trs_order' );
+ $vars = [ 'trs_key', 'trs_text' ];
+ $conds = [ 'trs_page' => $this->getTitle()->getArticleID() ];
+ $options = [ 'ORDER BY' => 'trs_order' ];
$res = $dbr->select( $tables, $vars, $conds, __METHOD__, $options );
- $defs = array();
- $prefix = $this->getTitle()->getPrefixedDBKey() . '/';
- $re = '~<tvar\|([^>]+)>(.*?)</>~u';
+ $defs = [];
+ $prefix = $this->getTitle()->getPrefixedDBkey() . '/';
foreach ( $res as $r ) {
$section = new TPSection();
@@ -69,13 +73,26 @@ class WikiPageMessageGroup extends WikiMessageGroup {
$defs[$r->trs_key] = $section->getTextWithVariables();
}
- $new_defs = array();
+ $new_defs = [];
foreach ( $defs as $k => $v ) {
$k = str_replace( ' ', '_', $k );
$new_defs[$prefix . $k] = $v;
}
- return $this->definitions = $new_defs;
+ $this->definitions = $new_defs;
+ return $this->definitions;
+ }
+
+ /**
+ * Clear caches to avoid stale data.
+ *
+ * For example JobQueue can run for a longer time, and stale definitions would
+ * cause the total number of messages to be incorrect.
+ *
+ * @since 2016.04
+ */
+ public function clearCaches() {
+ $this->definitions = null;
}
public function load( $code ) {
@@ -83,7 +100,7 @@ class WikiPageMessageGroup extends WikiMessageGroup {
return $this->getDefinitions();
}
- return array();
+ return [];
}
/**
@@ -92,17 +109,30 @@ class WikiPageMessageGroup extends WikiMessageGroup {
*
* @param string $key Message key
* @param string $code Language code
+ * @param int $flags READ_* class constant bitfield
* @return string|null Stored translation or null.
*/
- public function getMessage( $key, $code ) {
+ public function getMessage( $key, $code, $flags = self::READ_LATEST ) {
if ( $this->isSourceLanguage( $code ) ) {
$stuff = $this->load( $code );
+ $title = Title::newFromText( $key );
+ if ( $title ) {
+ $key = $title->getPrefixedDBkey();
+ }
+
return isset( $stuff[$key] ) ? $stuff[$key] : null;
}
$title = Title::makeTitleSafe( $this->getNamespace(), "$key/$code" );
- $rev = Revision::newFromTitle( $title, false, Revision::READ_LATEST );
+ if ( PageTranslationHooks::$renderingContext ) {
+ $revFlags = Revision::READ_NORMAL; // bug T95753
+ } else {
+ $revFlags = ( $flags & self::READ_LATEST ) == self::READ_LATEST
+ ? Revision::READ_LATEST
+ : Revision::READ_NORMAL;
+ }
+ $rev = Revision::newFromTitle( $title, false, $revFlags );
if ( !$rev ) {
return null;
@@ -116,13 +146,11 @@ class WikiPageMessageGroup extends WikiMessageGroup {
*/
public function getChecker() {
$checker = new MediaWikiMessageChecker( $this );
- $checker->setChecks( array(
- array( $checker, 'pluralCheck' ),
- array( $checker, 'XhtmlCheck' ),
- array( $checker, 'braceBalanceCheck' ),
- array( $checker, 'pagenameMessagesCheck' ),
- array( $checker, 'miscMWChecks' )
- ) );
+ $checker->setChecks( [
+ [ $checker, 'pluralCheck' ],
+ [ $checker, 'braceBalanceCheck' ],
+ [ $checker, 'miscMWChecks' ]
+ ] );
return $checker;
}
diff --git a/MLEB/Translate/messagegroups/WorkflowStatesMessageGroup.php b/MLEB/Translate/messagegroups/WorkflowStatesMessageGroup.php
index 415bed4a..c4a7dd74 100644
--- a/MLEB/Translate/messagegroups/WorkflowStatesMessageGroup.php
+++ b/MLEB/Translate/messagegroups/WorkflowStatesMessageGroup.php
@@ -6,7 +6,7 @@
* @author Niklas Laxström
* @author Siebrand Mazeland
* @copyright Copyright © 2008-2013, Niklas Laxström, Siebrand Mazeland
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -37,7 +37,7 @@ class WorkflowStatesMessageGroup extends WikiMessageGroup {
public function getDefinitions() {
$groups = MessageGroups::getAllGroups();
- $keys = array();
+ $keys = [];
/**
* @var $g MessageGroup
diff --git a/MLEB/Translate/resources/css/ext.translate.css b/MLEB/Translate/resources/css/ext.translate.css
index de49a987..9b4c65d6 100644
--- a/MLEB/Translate/resources/css/ext.translate.css
+++ b/MLEB/Translate/resources/css/ext.translate.css
@@ -1,72 +1,8 @@
-.mw-translate-page-info {
- font-size: x-small;
- text-align: center;
- direction: ltr;
-}
-
-.mw-pt-languages {
- display: table;
- border: 1px solid rgb(170, 170, 170);
- background: rgb(246, 249, 237) none repeat scroll 0 0;
- border-collapse: collapse;
- line-height: 1.2;
- width: 100%;
- clear: both;
- overflow: auto;
-}
-
-.mw-pt-languages-label {
- display: table-cell;
- border-right: 1px solid rgb(170, 170, 170);
- padding: 0.5em;
- background: rgb(238, 243, 226) none repeat scroll 0 0;
- font-weight: bold;
- width: 15%;
-}
-
-.mw-pt-languages-list {
- padding-left: 0.5em;
- padding-bottom: 0.7em;
- display: table-cell;
- width: 80%;
-}
-
-.mw-pt-languages-list a {
- white-space: nowrap;
+.mw-translate-fuzzy {
+ background-color: #fdd;
}
.mw-pt-translate-header {
font-size: x-small;
text-align: center;
}
-
-.mw-pt-languages-selected,
-.mw-pt-languages-ui {
- font-weight: bold;
-}
-
-.mw-pt-progress {
- padding-right: 11px;
- background: transparent right center no-repeat;
- background-size: 9px 9px;
-}
-
-.mw-pt-progress--stub {
- background-image: url('../images/prog-1.png');
-}
-
-.mw-pt-progress--low {
- background-image: url('../images/prog-2.png');
-}
-
-.mw-pt-progress--med {
- background-image: url('../images/prog-3.png');
-}
-
-.mw-pt-progress--high {
- background-image: url('../images/prog-4.png');
-}
-
-.mw-pt-progress--complete {
- background-image: url('../images/prog-5.png');
-}
diff --git a/MLEB/Translate/resources/css/ext.translate.dropdownmenu.css b/MLEB/Translate/resources/css/ext.translate.dropdownmenu.css
index 10dc335b..46d17ed8 100644
--- a/MLEB/Translate/resources/css/ext.translate.dropdownmenu.css
+++ b/MLEB/Translate/resources/css/ext.translate.dropdownmenu.css
@@ -1,15 +1,11 @@
.tux-dropdown-menu {
- padding-top: 2em;
border: 1px solid #c9c9c9;
/* @noflip */
- -webkit-box-shadow: 0 3px 3px -3px rgba(0, 0, 0, 0.5);
- /* @noflip */
- box-shadow: 0 3px 3px -3px rgba(0, 0, 0, 0.5);
+ box-shadow: 0 3px 3px -3px rgba( 0, 0, 0, 0.5 );
font-size: 14px;
- margin: 0 5px;
+ margin: 0;
list-style: none;
padding: 4px;
- width: 200px;
z-index: 300;
background: #fff;
display: block;
diff --git a/MLEB/Translate/resources/css/ext.translate.editor.css b/MLEB/Translate/resources/css/ext.translate.editor.css
index d02b6091..868a6129 100644
--- a/MLEB/Translate/resources/css/ext.translate.editor.css
+++ b/MLEB/Translate/resources/css/ext.translate.editor.css
@@ -1,64 +1,102 @@
.tux-message-editor {
position: relative;
border: 1px solid #777;
- background-color: #FFFFFF;
+ background-color: #fff;
cursor: default;
- box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3);
+ box-shadow: 0 2px 6px rgba( 0, 0, 0, 0.3 );
}
-.tux-message-editor .close {
- background: url('../images/close.png') no-repeat scroll center center transparent;
- background-image: -webkit-linear-gradient(transparent, transparent), url(../images/close.svg);
+.grid .tux-message-editor .close {
+ background: no-repeat center center;
/* @embed */
- background-image: linear-gradient(transparent, transparent), url(../images/close.svg);
- padding: 15px;
+ background-image: linear-gradient( transparent, transparent ), url( ../images/close.svg );
+ padding: 16px;
cursor: pointer;
float: right;
+ opacity: 0.87;
}
-.tux-message-editor .editor-info-toggle {
- padding: 15px;
+.grid .tux-message-editor .editor-info-toggle {
+ padding: 16px;
cursor: pointer;
float: right;
}
.tux-message-editor .editor-contract {
- background: url('../images/contract-ltr.png') no-repeat scroll center center transparent;
- background-image: -webkit-linear-gradient(transparent, transparent), url(../images/contract-ltr.svg);
+ background: no-repeat center center;
/* @embed */
- background-image: linear-gradient(transparent, transparent), url(../images/contract-ltr.svg);
+ background-image: linear-gradient( transparent, transparent ), url( ../images/contract-ltr.svg );
}
.tux-message-editor .editor-expand {
- background: url('../images/expand-ltr.png') no-repeat scroll center center transparent;
- background-image: -webkit-linear-gradient(transparent, transparent), url(../images/expand-ltr.svg);
+ background: no-repeat center center;
/* @embed */
- background-image: linear-gradient(transparent, transparent), url(../images/expand-ltr.svg);
+ background-image: linear-gradient( transparent, transparent ), url( ../images/expand-ltr.svg );
}
.tux-message-editor .editcolumn {
- border-right: 1px solid #AAA;
- -webkit-transition: width 0.5s;
+ border-right: 1px solid #aaa;
transition: width 0.5s;
+ background-color: #fff;
+ z-index: 1;
+ /* Padding to have space for the arrow indicating split section */
+ padding-right: 40px;
+}
+
+.grid .tux-message-editor--expanded .editcolumn {
+ width: 100%;
+ padding-right: 5px;
+}
+
+.grid .tux-message-editor .tux-editor-titletools {
+ /* Ignore the padding added for the arrow */
+ margin-right: -40px;
+}
+
+.grid .tux-message-editor--expanded .tux-editor-titletools {
+ margin-right: -5px;
}
.tux-message-editor textarea {
border: 1px solid #555;
font-size: 16px;
- padding: 5px 5px 30px 5px;
+ /* The (30px + 5px paddings) 40px for bottom is for the insertables */
+ padding: 5px 5px 40px 5px;
+ /* Normalize margin across skins (esp. Timeless) */
+ margin: 0;
height: 100px;
min-height: 150px;
overflow-y: auto;
position: relative;
z-index: 100;
+ /* We have automatic resizing for height, and horizontal makes no sense */
+ resize: none;
+ /* Avoid weird extra space appearing at the bottom of enclosing div when
+ * the default value inline-block is used in Chrome.
+ * https://stackoverflow.com/questions/5196424/inconsistent-textarea-handling-in-browsers */
+ display: block;
+}
+
+.tux-editor-editsummary-block input {
+ border: 1px solid #c0c0c0;
+ font-size: 14px;
+ width: 100%;
+ height: 30px;
+ margin: 5px 0 0;
+ padding: 1px 4px;
+}
+
+.tux-editor-editsummary-block input:disabled {
+ background-color: #f8f8f8;
}
.tux-message-editor .editarea {
position: relative;
}
-.tux-message-editor .messagekey {
- color: #252525;
+/* Temporary fix for T111685 */
+.grid .tux-message-editor .messagekey {
+ color: #222;
font-size: 13px;
font-weight: bold;
padding: 5px 0 5px 10px;
@@ -66,7 +104,7 @@
}
.tux-message-editor .messagekey .caret {
- border-top: 4px solid #252525;
+ border-top: 4px solid #222;
border-left: 4px solid transparent;
border-right: 4px solid transparent;
display: inline-block;
@@ -74,7 +112,8 @@
margin: 0 4px;
}
-.tux-message-editor .sourcemessage {
+/* Temporary fix for T111685 */
+.grid .tux-message-editor .sourcemessage {
font-size: 18px;
line-height: 1.6em;
padding: 5px 0 10px 10px;
@@ -89,17 +128,17 @@
font-size: 14px;
}
-.tux-message-editor .button {
- text-overflow: ellipsis;
- font-size: 16px;
- height: 35px;
- margin: 10px 5px;
-}
-
.tux-message-editor .shortcutinfo {
+ color: #54595d;
font-size: 13px;
- color: #555;
padding: 0 5px 5px 10px;
+ display: none;
+}
+
+@media screen and ( min-width: 980px ) {
+ .tux-message-editor .shortcutinfo {
+ display: block;
+ }
}
.tux-message-editor .infocolumn-block .infocolumn {
@@ -112,38 +151,41 @@
overflow: auto;
}
-.tux-message-editor .infocolumn-block {
+/* Temporary fix for T111685 */
+.grid .tux-message-editor .infocolumn-block {
font-size: 12pt;
- background: #FCFCFC;
+ background: #fcfcfc;
position: absolute;
top: 0;
right: 0;
bottom: 0;
padding: 0;
- -webkit-transition: width 0.5s;
transition: width 0.5s;
}
-.tux-message-editor .infocolumn-block .caret:before {
+.tux-message-editor__caret:before,
+.tux-message-editor__caret:after {
border-top: 20px solid transparent;
- border-right: 20px solid #AAA;
+ border-right: 20px solid #aaa;
border-bottom: 20px solid transparent;
- content: "";
+ content: '';
display: inline-block;
left: -21px;
position: absolute;
bottom: 50%;
+ z-index: 2;
+ transition: visibility 0s 0.5s;
}
-.tux-message-editor .infocolumn-block .caret:after {
- border-top: 20px solid transparent;
- border-right: 20px solid #FCFCFC;
- border-bottom: 20px solid transparent;
- content: "";
- display: inline-block;
+.tux-message-editor__caret:after {
+ border-right: 20px solid #fcfcfc;
left: -20px;
- position: absolute;
- bottom: 50%;
+}
+
+.tux-message-editor--expanded .tux-message-editor__caret:before,
+.tux-message-editor--expanded .tux-message-editor__caret:after {
+ visibility: hidden;
+ transition: visibility 0s 0s;
}
.infocolumn-block .infocolumn .message-desc-editor {
@@ -164,7 +206,7 @@
.infocolumn-block .infocolumn .message-desc.long {
font-size: 14px;
- border-bottom: 1px solid #DDD;
+ border-bottom: 1px solid #ddd;
}
.infocolumn-block .infocolumn .message-desc.compact {
@@ -180,16 +222,14 @@
.message-desc-control .read-more {
font-size: 14px;
- color: #3366BB;
+ color: #36c;
cursor: pointer;
margin-right: 5px;
}
.message-desc-edit {
- background: transparent url(../images/action-edit.png) left center no-repeat;
- background-image: -webkit-linear-gradient(transparent, transparent), url(../images/action-edit.svg);
- /* @embed */
- background-image: linear-gradient(transparent, transparent), url(../images/action-edit.svg);
+ background: left center no-repeat;
+ background-image: /* @embed */ linear-gradient( transparent, transparent ), url( ../images/action-edit.svg );
background-size: 18px 18px;
padding-left: 19px;
}
@@ -205,7 +245,7 @@
.in-other-language {
font-size: 14px;
border: 1px solid #ddd;
- border-left: 2px solid #3366BB;
+ border-left: 2px solid #36c;
padding: 5px 5px 5px 10px;
background-color: #f5f5f5;
}
@@ -218,11 +258,11 @@
.tm-suggestion:hover,
.in-other-language:hover {
cursor: pointer;
- box-shadow: 0 0 3px rgba(0, 0, 0, 0.2);
+ box-shadow: 0 0 3px rgba( 0, 0, 0, 0.2 );
}
.in-other-language .language {
- color: #565656;
+ color: #54595d;
overflow: hidden;
text-overflow: ellipsis;
}
@@ -242,11 +282,11 @@
}
.tux-warning {
- background-color: #FFFFCC;
+ background-color: #ffc;
}
.tux-highlight {
- background-color: #C9C9C9;
+ background-color: #c9c9c9;
}
.tux-warning-message {
@@ -265,7 +305,7 @@
}
.editarea .tux-more-warnings {
- background-color: #FBF6AD;
+ background-color: #fbf6ad;
position: absolute;
right: 0;
padding: 2px 5px;
@@ -275,31 +315,25 @@
}
.tux-warning-message.validation {
- background-image: url(../images/label-flag.png);
- background-image: -webkit-linear-gradient(transparent, transparent), url(../images/label-flag.svg);
- /* @embed */
- background-image: linear-gradient(transparent, transparent), url(../images/label-flag.svg);
+ background-image: /* @embed */ linear-gradient( transparent, transparent ), url( ../images/label-flag.svg );
}
.tux-warning-message.diff {
- background-image: url(../images/label-clock.png);
- background-image: -webkit-linear-gradient(transparent, transparent), url(../images/label-clock.svg);
- /* @embed */
- background-image: linear-gradient(transparent, transparent), url(../images/label-clock.svg);
+ background-image: /* @embed */ linear-gradient( transparent, transparent ), url( ../images/label-clock.svg );
}
.tux-warning-message .show-diff-link {
- color: #3366BB;
+ color: #36c;
cursor: pointer;
padding-left: 5px;
}
.editarea .tux-more-warnings:before {
- content: "";
- border-bottom: 1em solid #FBF6AD;
+ content: '';
+ border-bottom: 1em solid #fbf6ad;
border-top: 1em solid transparent;
border-left: 1em solid transparent;
- border-right: 1em solid #FBF6AD;
+ border-right: 1em solid #fbf6ad;
display: inline-block;
position: absolute;
right: 100%;
@@ -309,7 +343,7 @@
.tux-editor-request-right {
font-size: 13px;
padding: 0 5px;
- color: #555;
+ color: #54595d;
}
.tux-editor-ask-permission {
@@ -320,47 +354,62 @@
padding: 0 5px;
}
+.tux-editor-editsummary-block {
+ padding: 0 5px;
+}
+
.tux-editor-actions-block {
position: relative;
}
-.tux-editor-actions-block .tux-editor-insert-buttons {
+/* Temporary fix for T111685 */
+.grid .tux-editor-actions-block .tux-editor-insert-buttons {
position: absolute;
- top: -38px;
+ /* 30px + 5px padding on bottom */
+ top: -35px;
margin: 0 10px;
z-index: 110;
}
.tux-editor-insert-buttons button {
- padding: 4px;
- border: 1px solid #DDD;
- background: #FBFBFB;
- color: #252525;
+ padding: 0 5px;
+ min-width: 30px;
+ margin-right: 5px;
+ margin-bottom: 5px;
+ border: 1px solid #ddd;
+ background: #fbfbfb;
+ color: #222;
font-size: 13px;
+ line-height: 30px;
+ height: 30px;
}
.tux-editor-insert-buttons .tux-editor-paste-original-button {
- background: #FBFBFB url(../images/paste.png) left center no-repeat;
- background-image: -webkit-linear-gradient(transparent, transparent), url(../images/paste.svg);
+ background: #fbfbfb left center no-repeat;
/* @embed */
- background-image: linear-gradient(transparent, transparent), url(../images/paste.svg);
+ background-image: linear-gradient( transparent, transparent ), url( ../images/paste.svg );
background-size: 16px 16px;
padding-left: 18px;
}
+.message-desc-editor .mw-ui-button,
+.tux-editor-control-buttons .mw-ui-button {
+ margin: 10px 5px;
+}
+
.sourcemessage,
.suggestiontext {
white-space: pre-wrap;
}
.infocolumn .loading {
+ color: #54595d;
padding: 10px;
font-size: 14px;
- color: #565656;
}
.tux-message-tools-menu li a {
- color: #555555;
+ color: #54595d;
display: block;
font-size: 14px;
padding: 0 2px;
@@ -370,15 +419,14 @@
.tux-message-tools-menu li a:hover {
cursor: pointer;
background-color: #f0f0f0;
- color: #252525;
+ color: #222;
}
.tux-message-tools-menu li.selected {
- background: url(../images/label-tick.png) right no-repeat;
- background-image: -webkit-linear-gradient(transparent, transparent), url(../images/label-tick.svg);
+ background: right no-repeat;
/* @embed */
- background-image: linear-gradient(transparent, transparent), url(../images/label-tick.svg);
- color: #252525;
+ background-image: linear-gradient( transparent, transparent ), url( ../images/label-tick.svg );
+ color: #222;
}
/*
@@ -398,19 +446,14 @@
}
.shortcut-popup {
- /* Firefox likes to add "relative" inline for elements with offset */
- position: absolute !important;
- width: 17px;
- height: 17px;
- line-height: 17px;
+ width: 18px;
+ height: 18px;
+ line-height: 18px;
overflow: hidden;
font-size: 13px;
text-align: center;
- border: 1px dashed gray;
+ border: 1px dashed #808080;
border-radius: 100%;
z-index: 110;
- background-color: white;
- margin-top: -10px;
- /* @noflip */
- margin-left: -10px;
+ background-color: #fff;
}
diff --git a/MLEB/Translate/resources/css/ext.translate.groupselector.css b/MLEB/Translate/resources/css/ext.translate.groupselector.css
deleted file mode 100644
index d3fdca56..00000000
--- a/MLEB/Translate/resources/css/ext.translate.groupselector.css
+++ /dev/null
@@ -1,222 +0,0 @@
-/*
- * Breadcrumb
- */
-.tux-breadcrumb {
- margin-bottom: 10px;
-}
-
-.tux-breadcrumb .grouplink + .grouplink:before {
- border-left: 4px solid #777;
- border-top: 4px solid transparent;
- border-bottom: 4px solid transparent;
- content: "";
- display: inline-block;
- vertical-align: middle;
- position: relative;
- left: -5px;
-}
-
-.tux-breadcrumb span {
- border: medium none;
- color: #555555;
- font-size: 14pt;
- font-weight: normal;
- line-height: 1.25em;
- padding-bottom: 3px;
- padding-left: 15px;
- padding-top: 1.25em;
-}
-
-.tux-breadcrumb span.grouptitle {
- float: left;
- padding: 0 6px 0 0;
-}
-
-.tux-breadcrumb span.grouplink {
- color: #0645AD;
- cursor: pointer;
- float: left;
- min-height: 1px;
- padding: 0 6px;
- position: relative;
-}
-
-/**
- * Group selector
- */
-.tux-groupselector {
- position: absolute;
- top: 14px;
- right: 0;
- z-index: 1000;
- display: none;
- float: left;
- margin-top: 13px;
- min-width: 600px;
- width: 600px;
- padding: 0;
- border: 1px solid #888;
- background-color: #F0F0F0;
- border-radius: 5px;
- -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
- -moz-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
- box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
- -webkit-background-clip: padding-box;
- -moz-background-clip: padding;
- background-clip: padding-box;
- text-align: left;
-}
-
-/* The triangle shaped callout */
-.tux-groupselector:before {
- border-bottom: 7px solid #888;
- border-left: 7px solid transparent;
- border-right: 7px solid transparent;
- content: "";
- display: inline-block;
- left: 99px;
- position: absolute;
- top: -7px;
-}
-
-.tux-groupselector:after {
- border-bottom: 6px solid #F0F0F0;
- border-left: 6px solid transparent;
- border-right: 6px solid transparent;
- content: "";
- display: inline-block;
- left: 100px;
- position: absolute;
- top: -6px;
-}
-
-/* Remove the triangle shaped callout */
-.tux-groupselector.removecallout:before,
-.tux-groupselector.removecallout:after {
- content: none;
-}
-
-.grid .tux-groupselector__title {
- border: none;
- color: #555555;
- font-size: 14pt;
- font-weight: normal;
- line-height: 1.25em;
- padding: 5px 0 0 10px; /* grid override */
- margin: 0;
-}
-
-.tux-groupselector__filter {
- position: relative;
- height: 36px;
- border-bottom: solid 1px #c9c9c9;
-}
-
-.grid .tux-groupselector__filter__tabs {
- position: absolute; /* grid override */
- bottom: 0;
-}
-
-.grid .tux-groupselector__filter__search {
- position: absolute; /* grid override */
- padding-right: 0; /* grid override */
- right: 0;
- bottom: 2px;
-}
-
-.tux-groupselector__filter__search__input {
- font-size: 14px;
- width: 100%;
- height: 28px;
- border: 1px solid #C9C9C9;
- padding: 0 5px;
-}
-
-.tux-groupselector__filter__search__icon {
- background: url('../images/search.png') no-repeat scroll right center transparent;
- background-image: -webkit-linear-gradient(transparent, transparent), url(../images/search.svg);
- /* @embed */
- background-image: linear-gradient(transparent, transparent), url(../images/search.svg);
- background-size: 25px;
- height: 28px;
- width: 28px;
- float: right;
-}
-
-.tux-groupselector button {
- height: 32px;
- margin: 5px;
- font-weight: bold;
-}
-
-/*
- * Group tab
- */
-.tux-grouptab {
- color: #252525;
- cursor: pointer;
- padding: 2px 5px;
- margin: 0 4px;
- display: inline-block;
-}
-
-.tux-grouptab--selected {
- border-bottom: 2px solid #0645AD;
-}
-
-/*
- * Group list
- */
-.tux-grouplist {
- max-height: 400px;
- overflow-y: auto;
- overflow-x: hidden;
- background-color: #FFFFFF;
- min-height: 200px;
- border-radius: 0 0 5px 5px;
-}
-
-.tux-grouplist__item {
- position: relative;
- border-bottom: 1px solid #EEEEEE;
- height: 50px;
- cursor: pointer;
-}
-
-.grid .tux-grouplist__item__label {
- padding-bottom: 3px; /* grid override */
- padding-left: 15px; /* grid override */
- font-weight: normal;
- line-height: 40px;
- cursor: pointer;
- white-space: nowrap;
-}
-
-.tux-grouplist__item__label .tux-statsbar {
- position: absolute;
- bottom: 0;
- width: 150px;
-}
-
-.tux-grouplist__item__icon {
- background: url(../images/project.png) no-repeat scroll right center transparent;
- background-image: -webkit-linear-gradient(transparent, transparent), url(../images/project.svg);
- /* @embed */
- background-image: linear-gradient(transparent, transparent), url(../images/project.svg);
- /* Keep this in sync with js! */
- background-size: 32px;
- height: 50px;
- width: 50px;
-}
-
-.grid .tux-grouplist__item__subgroups {
- position: absolute; /* grid override */
- padding: 0 15px 2px 0; /* grid override */
- font-weight: normal;
- line-height: 1.25em;
- bottom: 0;
- right: 0;
- text-align: right;
- color: #777;
- font-size: 10pt;
-}
diff --git a/MLEB/Translate/resources/css/ext.translate.helplink.css b/MLEB/Translate/resources/css/ext.translate.helplink.css
deleted file mode 100644
index 26457498..00000000
--- a/MLEB/Translate/resources/css/ext.translate.helplink.css
+++ /dev/null
@@ -1,21 +0,0 @@
-.mw-translate-helplink {
- background: url(../images/help.png) no-repeat scroll left center transparent;
- /* @embed */
- background-image: -webkit-linear-gradient(transparent, transparent), url('../images/help.svg');
- /* @embed */
- background-image: linear-gradient(transparent, transparent), url('../images/help.svg');
- padding-left: 20px;
-}
-
-/* BC for MW <= 1.24 */
-.mw-translate-helplink-wrapper {
- float: right;
- width: 100%;
- display: block;
- margin-top: -10px;
- margin-bottom: -10px;
-}
-
-.mw-translate-helplink-wrapper .mw-translate-helplink {
- float: right;
-}
diff --git a/MLEB/Translate/resources/css/ext.translate.loader.css b/MLEB/Translate/resources/css/ext.translate.loader.css
index 73594ea0..2c6c5619 100644
--- a/MLEB/Translate/resources/css/ext.translate.loader.css
+++ b/MLEB/Translate/resources/css/ext.translate.loader.css
@@ -2,28 +2,27 @@
@-webkit-keyframes tux-loading-indicator-spin {
from {
- -webkit-transform: rotate(0deg);
+ -webkit-transform: rotate( 0deg );
}
to {
- -webkit-transform: rotate(360deg);
+ -webkit-transform: rotate( 360deg );
}
}
@keyframes tux-loading-indicator-spin {
from {
- transform: rotate(0deg);
+ transform: rotate( 0deg );
}
to {
- transform: rotate(360deg);
+ transform: rotate( 360deg );
}
}
.tux-loading-indicator {
float: left;
- background: transparent url(../images/loading.gif) right bottom no-repeat;
- background-image: -webkit-linear-gradient(transparent, transparent), url(../images/loading.svg);
+ background: transparent url( ../images/loading.gif ) right bottom no-repeat;
/* @embed */
- background-image: linear-gradient(transparent, transparent), url(../images/loading.svg);
+ background-image: linear-gradient( transparent, transparent ), url( ../images/loading.svg );
background-size: 100%;
-webkit-animation-name: tux-loading-indicator-spin;
-webkit-animation-duration: 1.5s;
@@ -43,3 +42,8 @@
left: 50%;
position: absolute;
}
+
+.tux-loading-indicator--stopped {
+ -webkit-animation: none;
+ animation: none;
+}
diff --git a/MLEB/Translate/resources/css/ext.translate.messagetable.css b/MLEB/Translate/resources/css/ext.translate.messagetable.css
deleted file mode 100644
index 5da964d2..00000000
--- a/MLEB/Translate/resources/css/ext.translate.messagetable.css
+++ /dev/null
@@ -1,382 +0,0 @@
-.mw-sp-translate-table {
- width: 100%;
- border-width: 1px;
- border-collapse: collapse;
-}
-
-.mw-sp-translate-table th {
- background-color: #b2b2ff;
- border: 1px solid;
-}
-
-.mw-sp-translate-table tr.orig {
- background-color: #ffe2e2;
-}
-
-.mw-sp-translate-table tr.new {
- background-color: #e2ffe2;
-}
-
-.mw-sp-translate-table tr.def {
- background-color: #f0f0ff;
-}
-
-.mw-sp-translate-table tr.ign {
- background-color: #202020;
-}
-
-.mw-sp-translate-table tr.opt {
- background-color: #F2F200;
-}
-
-.mw-sp-translate-table .untranslated {
- background-color: #a2f290;
-}
-
-.mw-sp-translate-table > tbody > tr > * {
- vertical-align: top;
- border: 1px solid #909090;
-}
-
-.mw-translate-messagereviewbutton {
- float: right;
-}
-
-.mw-translate-messagereviewstatus {
- clear: right;
- text-align: right;
-}
-
-/*
- * Tux MessageTable
- */
-
-/* Default colors */
-.tux-messagelist {
- color: #252525;
- background-color: #F8F8F8;
- max-width: 800px;
-}
-
-.tux-message {
- height: auto;
- cursor: pointer;
-}
-
-/* The "block" views of page mode and proofreading mode have 0 margin on
- * .tux-message. To make the actual editor be of same width, set 0 margin on
- * the open editor (overriding the -5px set by the grid) */
-.grid .tux-message.open {
- margin: 0 auto;
-}
-
-.tux-message-item {
- line-height: 50px;
- height: 50px;
- overflow: hidden;
- margin-right: 5px !important;
- margin-left: 5px !important;
- vertical-align: middle;
- border-bottom: 1px solid #C9C9C9;
- background: #FFFFFF;
-}
-
-.tux-message-item.translated,
-.tux-message-item.translated:hover,
-.tux-message-item.proofread,
-.tux-message-item.proofread:hover {
- background-color: #F0F0F0;
-}
-
-.tux-message-item:hover {
- background-color: #F8F8F8;
-}
-
-.tux-list-status span,
-.tux-list-edit {
- padding: 5px;
- /* 15px space for icon */
- padding-left: 20px;
- /* Do not combine these two, unless you also fix the
- * tux-status-* styles below. That includes you, Siebrand ;)
- */
- background-position: left;
- background-repeat: no-repeat;
-}
-
-.tux-info {
- background-color: #F0F0F0;
-}
-
-.tux-list-source {
- white-space: nowrap;
- text-overflow: ellipsis;
- unicode-bidi: -webkit-isolate;
- unicode-bidi: -moz-isolate;
- unicode-bidi: isolate;
-}
-
-.tux-list-translation {
- white-space: nowrap;
- color: #565656;
- padding-left: 5px;
- text-overflow: ellipsis;
- unicode-bidi: -webkit-isolate;
- unicode-bidi: -moz-isolate;
- unicode-bidi: isolate;
-}
-
-.tux-list-message {
- overflow: hidden;
- text-overflow: ellipsis;
-}
-
-.tux-status-unsaved {
- background-image: url(../images/label-pen.png);
- background-image: -webkit-linear-gradient(transparent, transparent), url(../images/label-pen.svg);
- /* @embed */
- background-image: linear-gradient(transparent, transparent), url(../images/label-pen.svg);
-}
-
-.tux-status-translated,
-.tux-status-proofread {
- background-image: url(../images/label-tick.png);
- background-image: -webkit-linear-gradient(transparent, transparent), url(../images/label-tick.svg);
- /* @embed */
- background-image: linear-gradient(transparent, transparent), url(../images/label-tick.svg);
-}
-
-.tux-status-fuzzy {
- background-image: url(../images/label-clock.png);
- background-image: -webkit-linear-gradient(transparent, transparent), url(../images/label-clock.svg);
- /* @embed */
- background-image: linear-gradient(transparent, transparent), url(../images/label-clock.svg);
-}
-
-.tux-list-edit a {
- background: transparent url(../images/action-edit.png) left center no-repeat;
- background-image: -webkit-linear-gradient(transparent, transparent), url(../images/action-edit.svg);
- /* @embed */
- background-image: linear-gradient(transparent, transparent), url(../images/action-edit.svg);
- background-size: 18px 18px;
- padding-left: 19px;
-}
-
-.tux-messagetable-loader {
- height: 75px;
- color: #565656;
- padding: 15px;
- top: 0;
- background: #F0F0F0 16px 50%;
- -webkit-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.3), 0 0 20px rgba(0, 0, 0, 0.1) inset;
- box-shadow: 0 1px 4px rgba(0, 0, 0, 0.3), 0 0 20px rgba(0, 0, 0, 0.1) inset;
-}
-
-.tux-messagetable-loader-count {
- padding: 0 0 5px 46px;
- font-size: 25px;
-}
-
-.tux-messagetable-loader-more {
- padding-left: 46px;
- font-size: 15px;
-}
-
-.tux-action-bar {
- background-color: #F0F0F0;
- color: #252525;
- -webkit-box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3);
- box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3);
- transition: width 250ms;
-}
-
-.tux-action-bar.floating {
- border-top: 1px solid #DDD;
- position: fixed;
- bottom: 0;
- z-index: 200;
-}
-
-.tux-action-bar .tux-statsbar {
- position: relative;
- top: 30px;
-}
-
-.tux-action-bar .toggle.button {
- min-height: 40px;
- font-size: 14px;
- vertical-align: middle;
- border-radius: 0;
- text-shadow: none;
- margin: 5px 0;
- text-indent: 0;
-}
-
-.tux-action-bar .tux-view-switcher {
- padding: 0 5px;
-}
-
-.tux-action-bar .tux-view-switcher .toggle.button {
- padding: 0 2px 0 0;
-}
-
-.tux-action-bar .tux-view-switcher .toggle.button:first-child {
- border-radius: 3px 0 0 3px;
- border-right: none;
-}
-
-.tux-action-bar .tux-view-switcher .toggle.button:last-child {
- border-radius: 0 3px 3px 0;
- border-left: none;
-}
-
-.tux-action-bar .tux-view-switcher .toggle.button:before {
- content: "";
- height: 15px;
- width: 25px;
- display: inline-block;
- vertical-align: bottom;
-}
-
-.tux-action-bar .translate-mode-button {
- width: 30%;
-}
-
-.tux-action-bar .translate-mode-button:before {
- background: transparent url(../images/view-list.png) center center no-repeat;
- background-image: -webkit-linear-gradient(transparent, transparent), url(../images/view-list.svg);
- /* @embed */
- background-image: linear-gradient(transparent, transparent), url(../images/view-list.svg);
-}
-
-.tux-action-bar .translate-mode-button.down:before {
- background: transparent url(../images/view-list-hi.png) center center no-repeat;
- background-image: -webkit-linear-gradient(transparent, transparent), url(../images/view-list-hi.svg);
- /* @embed */
- background-image: linear-gradient(transparent, transparent), url(../images/view-list-hi.svg);
-}
-
-.tux-action-bar .page-mode-button {
- width: 30%;
-}
-
-.tux-action-bar .page-mode-button:before {
- background: transparent url(../images/view-page.png) center center no-repeat;
- background-image: -webkit-linear-gradient(transparent, transparent), url(../images/view-page.svg);
- /* @embed */
- background-image: linear-gradient(transparent, transparent), url(../images/view-page.svg);
-}
-
-.tux-action-bar .page-mode-button.down:before {
- background: transparent url(../images/view-list-hi.png) center center no-repeat;
- background-image: -webkit-linear-gradient(transparent, transparent), url(../images/view-page-hi.svg);
- /* @embed */
- background-image: linear-gradient(transparent, transparent), url(../images/view-page-hi.svg);
-}
-
-.tux-action-bar .proofread-mode-button {
- width: 36%;
-}
-
-.tux-action-bar .proofread-mode-button:before {
- background: transparent url(../images/view-proofread.png) center center no-repeat;
- background-image: -webkit-linear-gradient(transparent, transparent), url(../images/view-proofread.svg);
- /* @embed */
- background-image: linear-gradient(transparent, transparent), url(../images/view-proofread.svg);
-}
-
-.tux-action-bar .proofread-mode-button.down:before {
- background: transparent url(../images/view-proofread-hi.png) center center no-repeat;
- background-image: -webkit-linear-gradient(transparent, transparent), url(../images/view-proofread-hi.svg);
- /* @embed */
- background-image: linear-gradient(transparent, transparent), url(../images/view-proofread-hi.svg);
-}
-
-.tux-action-bar .toggle.button.down {
- color: #FFF;
- background: #252525;
-}
-
-.ext-translate-container .tux-messagelist .tux-message-filter-result {
- color: #252525;
- line-height: 35px;
- font-size: 15px;
- vertical-align: middle;
- border-bottom: 1px solid #C9C9C9;
- margin: 0;
- padding: 0 5px;
-}
-
-.tux-message-filter-result.highlight {
- background: #FFF5AA;
-}
-
-.tux-message-filter-result .button {
- float: right;
- padding: 5px;
- margin: 5px 0;
- font-size: 15px;
- vertical-align: middle;
-}
-
-.tux-empty-list {
- padding: 20px;
-}
-
-.tux-empty-list-header {
- font-size: 25px;
- padding: 5px 0;
-}
-
-.tux-empty-list-guide {
- font-size: 15px;
- color: #565656;
- padding: 5px 0;
-}
-
-.tux-empty-list-actions {
- font-size: 15px;
- padding: 8px 0;
-}
-
-.tux-empty-list-actions a {
- cursor: pointer;
- margin: 0 10px;
-}
-
-
-.ext-translate-language-selector-label {
- color: #555555;
-}
-
-.ext-translate-language-selector {
- float: right;
- text-align: right;
- border: medium none;
- font-size: 14pt;
- font-weight: normal;
- line-height: 1.25em;
- padding-bottom: 3px;
- padding-left: 15px;
- padding-top: 1.25em;
-}
-
-/* The triangle shaped down-pointing callout after the language name
- * in the target language selector
- */
-.ext-translate-language-selector:after {
- margin-left: 4px;
- border-left: 4px solid transparent;
- border-right: 4px solid transparent;
- border-top: 4px solid #0645AD;
- content: "";
- display: inline-block;
- vertical-align: middle;
-}
-
-.ext-translate-language-selector .uls {
- color: #0645AD;
- cursor: pointer;
- min-height: 1px;
- position: relative;
-}
diff --git a/MLEB/Translate/resources/css/ext.translate.navitoggle.css b/MLEB/Translate/resources/css/ext.translate.navitoggle.css
index 96882ad7..4ac921a7 100644
--- a/MLEB/Translate/resources/css/ext.translate.navitoggle.css
+++ b/MLEB/Translate/resources/css/ext.translate.navitoggle.css
@@ -1,7 +1,7 @@
/**
* Introduces a toggle icon than can be used to hide navigation menu in vector
* @author Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
.tux-navitoggle {
@@ -14,17 +14,15 @@
}
.tux-navitoggle {
- background: url('../images/expand-rtl.png') no-repeat scroll right center transparent;
- background-image: -webkit-linear-gradient(transparent, transparent), url(../images/expand-rtl.svg);
+ background: no-repeat scroll right center transparent;
/* @embed */
- background-image: linear-gradient(transparent, transparent), url(../images/expand-rtl.svg);
+ background-image: linear-gradient( transparent, transparent ), url( ../images/expand-rtl.svg );
}
.tux-navi-collapsed .tux-navitoggle {
- background: url('../images/expand-ltr.png') no-repeat scroll right center transparent;
- background-image: -webkit-linear-gradient(transparent, transparent), url(../images/expand-ltr.svg);
+ background: no-repeat scroll right center transparent;
/* @embed */
- background-image: linear-gradient(transparent, transparent), url(../images/expand-ltr.svg);
+ background-image: linear-gradient( transparent, transparent ), url( ../images/expand-ltr.svg );
}
.tux-navi-collapsed #mw-panel {
diff --git a/MLEB/Translate/resources/css/ext.translate.pagemode.css b/MLEB/Translate/resources/css/ext.translate.pagemode.css
index b249d9d2..d1f1d274 100644
--- a/MLEB/Translate/resources/css/ext.translate.pagemode.css
+++ b/MLEB/Translate/resources/css/ext.translate.pagemode.css
@@ -2,7 +2,7 @@
min-height: 50px;
margin: 0 auto;
vertical-align: middle;
- background: #F8F8F8;
+ background: #f8f8f8;
}
.ext-translate-container .tux-messagelist .tux-message-pagemode .tux-message-item-compact {
@@ -13,26 +13,26 @@
margin-left: auto;
vertical-align: middle;
border-bottom: 1px solid #f0f0f0;
- border-left: 1px solid #DDDDDD;
- border-right: 1px solid #DDDDDD;
- background: #FFFFFF;
+ border-left: 1px solid #ddd;
+ border-right: 1px solid #ddd;
+ background: #fff;
max-width: 900px;
}
.ext-translate-container .tux-messagelist .tux-message-pagemode .tux-message-item-compact:hover {
- background: #FCFCFC;
+ background: #fcfcfc;
}
.ext-translate-container .tux-messagelist .tux-message-pagemode:first-child .tux-message-item-compact {
margin-top: 10px;
padding-top: 60px;
- border-top: 1px solid #DDDDDD;
+ border-top: 1px solid #ddd;
}
.ext-translate-container .tux-messagelist .tux-message-pagemode:last-child .tux-message-item-compact {
margin-bottom: 10px;
padding-bottom: 60px;
- border-bottom: 1px solid #DDDDDD;
+ border-bottom: 1px solid #ddd;
}
.tux-pagemode-source,
@@ -48,7 +48,7 @@
}
.tux-messagelist .tux-message-pagemode .tux-pagemode-source {
- color: #555;
+ color: #54595d;
font-size: 16px;
line-height: 1.5em;
padding-right: 25px;
@@ -56,7 +56,7 @@
}
.tux-messagelist .tux-message-pagemode .tux-pagemode-translation {
- color: #252525;
+ color: #222;
font-size: 16px;
line-height: 1.5em;
padding-left: 20px;
@@ -69,29 +69,25 @@
.tux-pagemode-status {
top: -10px;
+ height: 40px;
}
.tux-pagemode-status.fuzzy {
- background: url(../images/outdated-ltr.png) left center no-repeat;
- background-image: -webkit-linear-gradient(transparent, transparent), url(../images/outdated-ltr.svg);
+ background: left center no-repeat;
/* @embed */
- background-image: linear-gradient(transparent, transparent), url(../images/outdated-ltr.svg);
- height: 40px;
+ background-image: linear-gradient( transparent, transparent ), url( ../images/outdated-ltr.svg );
}
.tux-pagemode-status.untranslated {
- background: url(../images/translate-ltr.png) left center no-repeat;
- background-image: -webkit-linear-gradient(transparent, transparent), url(../images/translate-ltr.svg);
+ background: left center no-repeat;
/* @embed */
- background-image: linear-gradient(transparent, transparent), url(../images/translate-ltr.svg);
- height: 40px;
+ background-image: linear-gradient( transparent, transparent ), url( ../images/translate-ltr.svg );
}
.tux-pagemode-action {
- background: url(../images/check-sprite-ltr.png) right top no-repeat;
- background-image: -webkit-linear-gradient(transparent, transparent), url(../images/check-sprite-ltr.svg);
+ background: right top no-repeat;
/* @embed */
- background-image: linear-gradient(transparent, transparent), url(../images/check-sprite-ltr.svg);
+ background-image: linear-gradient( transparent, transparent ), url( ../images/check-sprite-ltr.svg );
height: 31px;
cursor: pointer;
}
@@ -101,10 +97,7 @@
}
.tux-pagemode-edit {
- background-image: url(../images/edit-mark.png);
- background-image: -webkit-linear-gradient(transparent, transparent), url(../images/edit-mark.svg);
- /* @embed */
- background-image: linear-gradient(transparent, transparent), url(../images/edit-mark.svg);
+ background-image: /* @embed */ linear-gradient( transparent, transparent ), url( ../images/edit-mark.svg );
background-repeat: no-repeat;
background-position: right center;
height: 40px;
diff --git a/MLEB/Translate/resources/css/ext.translate.proofread.css b/MLEB/Translate/resources/css/ext.translate.proofread.css
index 2e9c8d49..69eddee1 100644
--- a/MLEB/Translate/resources/css/ext.translate.proofread.css
+++ b/MLEB/Translate/resources/css/ext.translate.proofread.css
@@ -2,7 +2,7 @@
min-height: 50px;
margin: 0 auto;
vertical-align: middle;
- background: #F8F8F8;
+ background: #f8f8f8;
}
.ext-translate-container .tux-messagelist .tux-message-proofread .tux-message-item-compact {
@@ -12,26 +12,26 @@
margin-left: auto;
vertical-align: middle;
border-bottom: 1px solid #f0f0f0;
- border-left: 1px solid #DDDDDD;
- border-right: 1px solid #DDDDDD;
- background: #FFFFFF;
+ border-left: 1px solid #ddd;
+ border-right: 1px solid #ddd;
+ background: #fff;
max-width: 900px;
}
.ext-translate-container .tux-messagelist .tux-message-proofread .tux-message-item-compact:hover {
- background: #FCFCFC;
+ background: #fcfcfc;
}
.ext-translate-container .tux-messagelist .tux-message-proofread:first-child .tux-message-item-compact {
margin-top: 10px;
padding-top: 60px;
- border-top: 1px solid #DDDDDD;
+ border-top: 1px solid #ddd;
}
.ext-translate-container .tux-messagelist .tux-message-proofread:last-child .tux-message-item-compact {
margin-bottom: 10px;
padding-bottom: 60px;
- border-bottom: 1px solid #DDDDDD;
+ border-bottom: 1px solid #ddd;
}
.tux-proofread-source,
@@ -48,7 +48,7 @@
}
.tux-messagelist .tux-message-proofread .tux-proofread-source {
- color: #555;
+ color: #54595d;
font-size: 16px;
line-height: 1.5em;
padding-right: 25px;
@@ -56,7 +56,7 @@
}
.tux-messagelist .tux-message-proofread .tux-proofread-translation {
- color: #252525;
+ color: #222;
font-size: 16px;
line-height: 1.5em;
padding-left: 20px;
@@ -69,21 +69,24 @@
.ext-translate-container .tux-messagelist .tux-message-proofread.own-translation,
.ext-translate-container .tux-messagelist .tux-message-proofread.own-translation:hover {
- background: #FBFBFB;
+ background: #fbfbfb;
+}
+
+.tux-messagelist.tux-hide-own .tux-message-proofread.own-translation {
+ display: none;
}
.translated-by-self {
- color: #777;
+ color: #72777d;
text-align: right;
font-size: 12px;
margin-right: 5px;
margin-left: auto;
width: 18px;
height: 18px; /* Icon height + 3px */
- background: url(../images/user-small.png) top right no-repeat;
- background-image: -webkit-linear-gradient(transparent, transparent), url(../images/user-small.svg);
+ background: top right no-repeat;
/* @embed */
- background-image: linear-gradient(transparent, transparent), url(../images/user-small.svg);
+ background-image: linear-gradient( transparent, transparent ), url( ../images/user-small.svg );
}
.tux-proofread-status {
@@ -91,28 +94,23 @@
}
.tux-proofread-status.fuzzy {
- background: url(../images/outdated-ltr.png) left center no-repeat;
- background-image: -webkit-linear-gradient(transparent, transparent), url(../images/outdated-ltr.svg);
+ background: left center no-repeat;
/* @embed */
- background-image: linear-gradient(transparent, transparent), url(../images/outdated-ltr.svg);
+ background-image: linear-gradient( transparent, transparent ), url( ../images/outdated-ltr.svg );
height: 40px;
}
.tux-proofread-status.untranslated {
- background: url(../images/translate-ltr.png) left center no-repeat;
- background-image: -webkit-linear-gradient(transparent, transparent), url(../images/translate-ltr.svg);
+ background: left center no-repeat;
/* @embed */
- background-image: linear-gradient(transparent, transparent), url(../images/translate-ltr.svg);
+ background-image: linear-gradient( transparent, transparent ), url( ../images/translate-ltr.svg );
height: 40px;
}
.tux-proofread-action {
background-position: right top;
background-repeat: no-repeat;
- background-image: url(../images/check-sprite-ltr.png);
- background-image: -webkit-linear-gradient(transparent, transparent), url(../images/check-sprite-ltr.svg);
- /* @embed */
- background-image: linear-gradient(transparent, transparent), url(../images/check-sprite-ltr.svg);
+ background-image: /* @embed */ linear-gradient( transparent, transparent ), url( ../images/check-sprite-ltr.svg );
/* There is 1px white row between each icon */
height: 30px;
cursor: pointer;
@@ -141,10 +139,7 @@
}
.tux-proofread-edit {
- background-image: url(../images/edit-mark.png);
- background-image: -webkit-linear-gradient(transparent, transparent), url(../images/edit-mark.svg);
- /* @embed */
- background-image: linear-gradient(transparent, transparent), url(../images/edit-mark.svg);
+ background-image: /* @embed */ linear-gradient( transparent, transparent ), url( ../images/edit-mark.svg );
background-repeat: no-repeat;
background-position: right center;
height: 50px;
@@ -158,8 +153,8 @@
}
.tux-proofread-edit-label {
+ color: #72777d;
position: relative;
- color: #777777;
display: inline-block;
font-size: 13px;
padding-top: 30px;
@@ -167,7 +162,7 @@
}
.tux-proofread-count {
- color: #777;
+ color: #72777d;
font-size: 15px;
padding-right: 5px;
text-align: right;
@@ -176,10 +171,9 @@
.tux-proofread-count:before {
content: '';
display: inline-block;
- background: url(../images/check-small.png) left bottom no-repeat;
- background-image: -webkit-linear-gradient(transparent, transparent), url(../images/check-small.svg);
+ background: left bottom no-repeat;
/* @embed */
- background-image: linear-gradient(transparent, transparent), url(../images/check-small.svg);
+ background-image: linear-gradient( transparent, transparent ), url( ../images/check-small.svg );
height: 12px;
width: 14px;
}
diff --git a/MLEB/Translate/resources/css/ext.translate.quickedit.css b/MLEB/Translate/resources/css/ext.translate.quickedit.css
index 3e8c7efc..c64d03fa 100644
--- a/MLEB/Translate/resources/css/ext.translate.quickedit.css
+++ b/MLEB/Translate/resources/css/ext.translate.quickedit.css
@@ -1,25 +1,5 @@
-.mw-ajax-dialog .mw-ajax-loader {
- margin: 2em;
-}
-
-.mw-ajax-dialog {
- font-size: small;
-}
-
-.tqe-inlineeditable {
- height: auto;
-}
-
-table .tqe-inlineeditable .mw-ajax-dialog {
- margin: 10px;
-}
-
-.tqe-editor-loaded {
- background-color: #FFF !important;
-}
-
.mw-sp-translate-edit-fields a {
- color: blue;
+ color: #00f;
}
.mw-translate-tmsug {
@@ -29,7 +9,7 @@ table .tqe-inlineeditable .mw-ajax-dialog {
.mw-sp-translate-edit-fields fieldset {
line-height: normal;
margin: 0;
- border: 1px solid #DBDBDB;
+ border: 1px solid #dbdbdb;
/* Browsers suck
max-height: 250px; */
overflow: auto;
@@ -40,7 +20,7 @@ table .tqe-inlineeditable .mw-ajax-dialog {
}
.mw-translate-edit-extra {
- border-bottom: 1px solid black;
+ border-bottom: 1px solid #000;
}
.mw-translate-legend {
@@ -48,7 +28,7 @@ table .tqe-inlineeditable .mw-ajax-dialog {
}
.mw-translate-legend {
- border-left: 1px solid black;
+ border-left: 1px solid #000;
float: right;
margin-left: 1em;
padding-left: 5pt;
@@ -101,51 +81,23 @@ table .tqe-inlineeditable .mw-ajax-dialog {
/* Blue tints for translate fieldsets */
.mw-sp-translate-edit-inother {
- background-color: #F8F8FF;
+ background-color: #f8f8ff;
}
.mw-sp-translate-in-other-small {
- background-color: #F0F8FF;
+ background-color: #f0f8ff;
}
.mw-sp-translate-in-other-big {
- background-color: #F0F8FF;
+ background-color: #f0f8ff;
}
.mw-sp-translate-message-documentation {
- background-color: #EBEBEB;
+ background-color: #ebebeb;
}
.mw-sp-translate-edit-definition {
- background-color: #EAF3FC;
-}
-
-.mw-sp-translate-edit-warnings {
- background-color: #FFDBDB;
-}
-
-.mw-translate-edit-tmsugs {
- background-color: #C0F9B6;
-}
-
-.mw-sp-translate-latestchange {
- padding-bottom: 0;
-}
-
-.tqe-fakeheader {
- border: 1px solid #CCC;
- padding: .75em;
- font-weight: bold;
- line-height: 2em;
-}
-
-.tqe-fakeheader input {
- height: 2em;
- font-weight: bold;
-}
-
-.mw-translate-close {
- float: right;
+ background-color: #eaf3fc;
}
.mw-translate-inputs {
diff --git a/MLEB/Translate/resources/css/ext.translate.special.aggregategroups.css b/MLEB/Translate/resources/css/ext.translate.special.aggregategroups.css
index 7b7b3385..98c80b09 100644
--- a/MLEB/Translate/resources/css/ext.translate.special.aggregategroups.css
+++ b/MLEB/Translate/resources/css/ext.translate.special.aggregategroups.css
@@ -1,31 +1,22 @@
span.tp-aggregate-remove-ag-button,
span.tp-aggregate-remove-button {
- background: url(../images/remove.png) no-repeat scroll left center transparent;
- /* @embed */
- background-image: -webkit-linear-gradient(transparent, transparent), url('../images/remove.svg');
- /* @embed */
- background-image: linear-gradient(transparent, transparent), url('../images/remove.svg');
+ background: no-repeat scroll left center transparent;
+ background-image: /* @embed */ linear-gradient( transparent, transparent ), url( ../images/remove.svg );
padding: 10px;
cursor: pointer;
}
span.tp-aggregate-edit-ag-button {
- background: url(../images/action-edit.png) no-repeat scroll left center transparent;
- /* @embed */
- background-image: -webkit-linear-gradient(transparent, transparent), url('../images/action-edit.svg');
- /* @embed */
- background-image: linear-gradient(transparent, transparent), url('../images/action-edit.svg');
+ background: no-repeat scroll left center transparent;
+ background-image: /* @embed */ linear-gradient( transparent, transparent ), url( ../images/action-edit.svg );
background-size: 18px 18px;
padding: 10px;
cursor: pointer;
}
a.tpt-add-new-group {
- background: url(../images/add.png) no-repeat scroll left center transparent;
- /* @embed */
- background-image: -webkit-linear-gradient(transparent, transparent), url('../images/add.svg');
- /* @embed */
- background-image: linear-gradient(transparent, transparent), url('../images/add.svg');
+ background: no-repeat scroll left center transparent;
+ background-image: /* @embed */ linear-gradient( transparent, transparent ), url( ../images/add.svg );
padding-left: 20px;
}
@@ -48,3 +39,15 @@ div.hidden {
.tp-aggregategroup-edit-description {
width: 500px;
}
+
+.client-nojs .tpt-add-new-group,
+.client-nojs .tp-aggregate-edit-ag-button,
+.client-nojs .tp-aggregate-remove-button,
+.client-nojs .tp-aggregate-remove-ag-button,
+.client-nojs .mw-tpa-group input {
+ display: none;
+}
+
+.client-js .tux-nojs {
+ display: none;
+}
diff --git a/MLEB/Translate/resources/css/ext.translate.special.languagestats.css b/MLEB/Translate/resources/css/ext.translate.special.languagestats.css
index 79bf9a18..0e9a7bb0 100644
--- a/MLEB/Translate/resources/css/ext.translate.special.languagestats.css
+++ b/MLEB/Translate/resources/css/ext.translate.special.languagestats.css
@@ -1,5 +1,5 @@
-.mw-sp-translate-table.wikitable tr:hover td {
- background: white;
+.statstable tr:hover td {
+ background: #fff;
}
.groupexpander-all {
diff --git a/MLEB/Translate/resources/css/ext.translate.special.managetranslatorsandbox.css b/MLEB/Translate/resources/css/ext.translate.special.managetranslatorsandbox.css
index a00c27e0..bd463a29 100644
--- a/MLEB/Translate/resources/css/ext.translate.special.managetranslatorsandbox.css
+++ b/MLEB/Translate/resources/css/ext.translate.special.managetranslatorsandbox.css
@@ -3,7 +3,7 @@
* @author Niklas Laxström
* @author Sucheta Ghoshal
* @author Pau Giner
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/* Hide the page title to give more space for the content */
@@ -20,11 +20,9 @@
font-size: 24px;
}
-.search.pane {
- background: url('../images/search.png') no-repeat scroll left top transparent;
- background-image: -webkit-linear-gradient(transparent, transparent), url(../images/search.svg);
- /* @embed */
- background-image: linear-gradient(transparent, transparent), url(../images/search.svg);
+.grid .search.pane {
+ background: no-repeat scroll left top transparent;
+ background-image: /* @embed */ linear-gradient( transparent, transparent ), url( ../images/search.svg );
background-size: 25px;
padding-left: 25px;
}
@@ -33,13 +31,13 @@
font-size: 14px;
height: 28px;
width: 100%;
- border: 1px solid #C9C9C9;
+ border: 1px solid #c9c9c9;
padding: 0 5px;
}
.tsb-body {
border: 1px solid #c9c9c9;
- border-top: none;
+ border-top: 0;
}
.requests.pane,
@@ -52,16 +50,16 @@
overflow: auto;
}
-.details.pane {
- border-left: 1px solid #DDDDDD;
+.grid .details.pane {
+ border-left: 1px solid #ddd;
left: -1px;
padding: 5px 20px 10px 20px;
}
/* Requests pane */
-.requests.pane,
-.requests.pane .request,
-.requests.pane .request-header {
+.grid .requests.pane,
+.grid .requests.pane .request,
+.grid .requests.pane .request-header {
margin: 0;
padding: 0;
}
@@ -73,7 +71,7 @@
}
.request:last-child {
- border-bottom: none;
+ border-bottom: 0;
}
.request:hover {
@@ -84,10 +82,10 @@
background-color: #f0f0f0;
}
-.request .amount {
+.grid .request .amount {
height: 100%;
font-size: 3em;
- color: #96989A;
+ color: #96989a;
background-color: #f7f8f8;
padding: 20px 5px;
text-align: center;
@@ -98,7 +96,7 @@
height: 30px;
line-height: 30px;
font-size: 16px;
- text-wrap: nowrap;
+ white-space: nowrap;
}
.request .email,
@@ -107,14 +105,14 @@
line-height: 20px;
font-size: 12px;
color: #6c6d70;
- text-wrap: nowrap;
+ white-space: nowrap;
}
.request .tsb-header,
.request .username,
.request .email {
padding-left: 10px;
- overflow: ellipsis;
+ text-overflow: ellipsis;
}
.request .signup-age {
@@ -122,23 +120,23 @@
overflow: hidden;
}
-.request .request-info,
-.request .approval {
+.grid .request .request-info,
+.grid .request .approval {
padding-top: 5px;
}
/* Details pane */
.tsb-details-no-translations {
- color: #999999;
+ color: #72777d;
}
.signup-comment-label {
- color: #E85355;
+ color: #e85355;
font-size: 14px;
}
.signup-comment-text {
- color: #333333;
+ color: #222;
font-size: 16px;
line-height: 1.5em;
padding: 5px 0;
@@ -179,25 +177,25 @@
font-size: 22px;
}
-.actions .button {
+.actions button {
margin-right: 1.5em;
}
.request-header {
+ color: #72777d;
border-right: 1px solid #c9c9c9;
- border-bottom: 1px solid #AAAAAA;
+ border-bottom: 1px solid #aaa;
line-height: 40px;
- color: #969696;
- background-color: #F8F8F8;
+ background-color: #f8f8f8;
}
.request-footer {
+ color: #72777d;
border-right: 1px solid #c9c9c9;
- border-top: 1px solid #AAAAAA;
- color: #969696;
+ border-top: 1px solid #aaa;
line-height: 40px;
padding: 0 5px;
- background-color: #F8F8F8;
+ background-color: #f8f8f8;
}
.request-footer .selected-counter,
@@ -212,17 +210,16 @@
margin: 10px 0;
border-radius: 3px;
background: #f8f8f8;
- border: 1px solid #CCCCCC;
+ border: 1px solid #ccc;
cursor: pointer;
font-size: 1em;
display: block;
float: left;
- border-radius: 3px;
}
.clear-language-selector {
border-radius: 0 3px 3px 0;
- border-left: none;
+ border-left: 0;
}
.language-selector.selected {
@@ -236,12 +233,12 @@
}
.language-selector:hover {
- border-color: #AAAAAA;
+ border-color: #aaa;
}
.language-selector.unselected:after {
- content: "";
- border-top: 4px solid #AAAAAA;
+ content: '';
+ border-top: 4px solid #aaa;
border-left: 4px solid transparent;
border-right: 4px solid transparent;
display: inline-block;
@@ -262,7 +259,7 @@ textarea.body {
.translations .title {
font-size: 16px;
- background-color: #F7F8F8;
+ background-color: #f7f8f8;
font-weight: bold;
}
@@ -276,3 +273,11 @@ textarea.body {
*/
text-align: left;
}
+
+.client-nojs .grid {
+ display: none;
+}
+
+.client-js .tux-nojs {
+ display: none;
+}
diff --git a/MLEB/Translate/resources/css/ext.translate.special.pagemigration.css b/MLEB/Translate/resources/css/ext.translate.special.pagemigration.css
index 514bab8a..09c313b0 100644
--- a/MLEB/Translate/resources/css/ext.translate.special.pagemigration.css
+++ b/MLEB/Translate/resources/css/ext.translate.special.pagemigration.css
@@ -2,11 +2,11 @@
.mw-tpm-sp-unit__target {
overflow-y: auto;
height: 150px;
- border: 2px solid gray;
+ border: 2px solid #808080;
}
-.mw-tpm-sp-unit__actions {
- border: 2px solid transparent;
+#title {
+ width: 35%;
}
.hide {
@@ -22,6 +22,10 @@
padding-bottom: 10px;
}
+.grid .mw-tpm-sp-unit textarea {
+ padding: 10px;
+}
+
.mw-tpm-sp-unit__source,
.mw-tpm-sp-unit__target,
.mw-tpm-sp-unit__actions {
@@ -29,37 +33,45 @@
}
.mw-tpm-sp-action {
- width: 10%;
- height: 10%;
- float: left;
- margin-left: 5%;
- margin-right: 5%;
+ width: 25px;
+ height: 150px;
cursor: pointer;
display: inline-block;
+ margin-left: 20px;
+
+ background-position: center;
+ background-repeat: no-repeat;
+ background-size: 25px 25px;
}
.mw-tpm-sp-action--delete {
- background: url('../images/trash_darkgray.png') transparent no-repeat;
- background-image: -webkit-linear-gradient(transparent, transparent), url('../images/trash_darkgray.svg');
- background-image: linear-gradient(transparent, transparent), url('../images/trash_darkgray.svg');
+ background-image: linear-gradient( transparent, transparent ), url( ../images/trash_darkgray.svg );
}
.mw-tpm-sp-action--swap {
- background: url('../images/switch.png') transparent no-repeat;
- background-image: -webkit-linear-gradient(transparent, transparent), url('../images/switch.svg');
- background-image: linear-gradient(transparent, transparent), url('../images/switch.svg');
+ background-image: linear-gradient( transparent, transparent ), url( ../images/switch.svg );
}
.mw-tpm-sp-action--add {
- background: url('../images/plus_darkgray.png') transparent no-repeat;
- background-image: -webkit-linear-gradient(transparent, transparent), url('../images/plus_darkgray.svg');
- background-image: linear-gradient(transparent, transparent), url('../images/plus_darkgray.svg');
+ background-image: linear-gradient( transparent, transparent ), url( ../images/plus_darkgray.svg );
}
.mw-tpm-sp-error__message {
font-size: 0.9em;
word-wrap: break-word;
- color: #C00;
- border: 1px solid #FAC5C5;
- background-color: #FAE3E3;
-} \ No newline at end of file
+ color: #c00;
+ border: 1px solid #fac5c5;
+ background-color: #fae3e3;
+}
+
+.mw-tpm-sp-instructions {
+ margin: 0.7em 0;
+}
+
+.client-nojs .grid {
+ display: none;
+}
+
+.client-js .tux-nojs {
+ display: none;
+}
diff --git a/MLEB/Translate/resources/css/ext.translate.special.searchtranslations.css b/MLEB/Translate/resources/css/ext.translate.special.searchtranslations.css
index d4d0ae56..c866a818 100644
--- a/MLEB/Translate/resources/css/ext.translate.special.searchtranslations.css
+++ b/MLEB/Translate/resources/css/ext.translate.special.searchtranslations.css
@@ -4,17 +4,23 @@
* @since 2013-01-10
*/
-/* Facets */
-.tux-searchpage .facet {
- font-size: 24px;
- color: #252525;
- padding: 20px 0 10px 0;
+.tux-searchpage .tux-selectedbox .facet-item {
+ background-color: #ededed;
+ margin-right: 5px;
}
+.tux-searchpage .tux-searchboxform .tux-selectedbox,
.tux-searchpage .searchcontent .facets {
padding: 0 15px 0 5px;
}
+/* Facets */
+.tux-searchpage .facet {
+ color: #222;
+ font-size: 24px;
+ padding: 20px 0 10px 0;
+}
+
.tux-searchpage .facet-item {
font-size: 16px;
padding: 4px 5px;
@@ -25,12 +31,12 @@
cursor: pointer;
}
-.tux-searchpage .facet-item:first-child {
+.grid.tux-searchpage .facet-item:first-child {
margin-top: 10px;
}
.tux-searchpage .facet-item .facet-count {
- color: #AAA;
+ color: #aaa;
float: right;
margin-right: 5%;
}
@@ -55,15 +61,20 @@
font-weight: bold;
}
+.tux-searchpage .facet-item a:visited,
+.tux-searchpage .facet-item a:link {
+ color: #0645ad;
+}
+
/* Results */
.tux-searchpage .count {
- color: #555;
+ color: #54595d;
font-size: 16px;
padding-bottom: 10px;
}
.tux-searchpage .searchcontent .results {
- color: #252525;
+ color: #222;
padding-left: 10px;
}
@@ -75,7 +86,7 @@
.tux-searchpage .results .tux-title {
text-align: left;
- color: #555;
+ color: #54595d;
}
/* Pagination links */
@@ -96,43 +107,13 @@
}
.tux-searchpage .searchinput .searchinputbox {
- font-size: 16px;
- padding: 5px;
width: 60%;
-}
-
-.tux-searchpage .searchinput input.button {
- font-size: 16px;
- background-color: #E6E6E6;
- background-image: -webkit-linear-gradient(top, #f0f0f0, #e6e6e6);
- background-image: -moz-linear-gradient(center top, #F0F0F0, #E6E6E6);
- background-image: linear-gradient(#F0F0F0, #E6E6E6);
- border: 1px solid #C9C9C9;
- border-radius: 3px 3px 3px 3px;
- color: #252525;
- cursor: pointer;
display: inline-block;
- padding: 6px 20px;
- text-align: center;
- text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75);
- margin: 0 5px;
-}
-
-.tux-searchpage .searchinput input.button:hover {
- background-color: #F0F0F0;
- background-image: -webkit-linear-gradient(top, #f8f8f8, #f0f0f0);
- background-image: -moz-linear-gradient(center top, #F8F8F8, #F0F0F0);
- background-image: linear-gradient(#F8F8F8, #F0F0F0);
- border-color: #C9C9C9;
+ margin-right: 5px;
}
-.tux-searchpage .searchinput input.button:active,
-.tux-searchpage .searchinput input.button.down {
- background-color: #D8D8D8;
- background-image: -webkit-linear-gradient(top, #d3d3d3, #d8d8d8);
- background-image: -moz-linear-gradient(center top, #D3D3D3, #D8D8D8);
- background-image: linear-gradient(#D3D3D3, #D8D8D8);
- border-color: #C9C9C9;
+.tux-search-operators {
+ margin: 5px 0;
}
h1.firstHeading {
@@ -141,24 +122,44 @@ h1.firstHeading {
.translate-search-more-groups,
.translate-search-more-languages {
- background-color: #F0F0F0;
+ background-color: #f0f0f0;
font-size: 16px;
cursor: pointer;
padding: 0 6px;
border-radius: 2px;
- border: 1px solid #EEE;
+ border: 1px solid #eee;
}
.translate-search-more-groups:hover,
.translate-search-more-languages:hover {
- border: 1px solid #CCC;
+ border: 1px solid #ccc;
text-decoration: none;
}
.translate-search-more-groups-info,
.translate-search-more-languages-info {
- padding: 5px;
- color: #888;
+ color: #72777d;
font-size: 14px;
padding: 0 8px;
}
+
+/* Override tabs */
+.tux-searchpage .tux-messagetable-header .seven {
+ width: 100%;
+}
+
+.tux-searchpage .tux-message-selector .more ul {
+ width: auto;
+}
+
+.tux-searchpage .tux-message-selector .more ul a {
+ white-space: pre-wrap;
+}
+
+.tux-searchpage .successbox {
+ margin-left: 25%;
+}
+
+.tux-search-highlight {
+ background-color: #c9c9c9;
+}
diff --git a/MLEB/Translate/resources/css/ext.translate.special.supportedlanguages.css b/MLEB/Translate/resources/css/ext.translate.special.supportedlanguages.css
index 7cca22dd..fff66837 100644
--- a/MLEB/Translate/resources/css/ext.translate.special.supportedlanguages.css
+++ b/MLEB/Translate/resources/css/ext.translate.special.supportedlanguages.css
@@ -16,5 +16,5 @@
.tagcloud .tag {
white-space: nowrap;
margin: 0.5ex;
- color: black;
+ color: #000;
}
diff --git a/MLEB/Translate/resources/css/ext.translate.special.translate.css b/MLEB/Translate/resources/css/ext.translate.special.translate.css
index e34c8720..8bb45be8 100644
--- a/MLEB/Translate/resources/css/ext.translate.special.translate.css
+++ b/MLEB/Translate/resources/css/ext.translate.special.translate.css
@@ -1,35 +1,78 @@
/*
- * Form at Special:Translate
+ * Breadcrumb for message group selector
*/
-.mw-sp-translate-error {
- font-style: italic;
- background-color: yellow;
+.tux-breadcrumb {
+ color: #54595d;
+ margin-bottom: 10px;
+ font-size: 14pt;
+ line-height: 1.25em;
}
-/* This gets pretty far on wide screens... */
-.mw-sp-translate-settings input[type=submit] {
- float: right;
+/* Arrow between breadcrumb items */
+.tux-breadcrumb .grouplink + .grouplink:before {
+ border-left: 4px solid #777;
+ border-top: 4px solid transparent;
+ border-bottom: 4px solid transparent;
+ content: '';
+ display: inline-block;
+ vertical-align: middle;
+ position: relative;
+ left: -5px;
}
-/* For some reason a non-breaking space is not enough to keep the label
- * with the dropdown. */
-.mw-sp-translate-settings label {
- white-space: nowrap;
+/* This applies to all items in the breadcrumb */
+.tux-breadcrumb .grouptitle {
+ float: left;
+ padding: 0 6px 0 0;
}
-/*
- * This reserves one corner with curvy lines for the message group status.
- */
-#mw-sp-translate-workflow {
+/* Not all of these are links, so name is wrong besides being too generic.
+ * This excludes the first item which says "message group". */
+.tux-breadcrumb .grouplink {
+ padding: 0 6px;
+}
+
+/* Color clickable groups to look as links */
+.tux-breadcrumb__item--aggregate {
+ cursor: pointer;
+ color: #0645ad;
+}
+
+/* Language selector */
+.ext-translate-language-selector-label {
+ color: #54595d;
+}
+
+.ext-translate-language-selector {
float: right;
+ text-align: right;
+ border: medium none;
+ font-size: 14pt;
+ font-weight: normal;
+ line-height: 1.25em;
+ padding-bottom: 3px;
+ padding-left: 15px;
+ padding-top: 1.25em;
+}
+
+/* The triangle shaped down-pointing callout after the language name
+ * in the target language selector
+ */
+.ext-translate-language-selector .uls:after {
+ margin-left: 4px;
+ border-left: 4px solid transparent;
+ border-right: 4px solid transparent;
+ border-top: 4px solid #0645ad;
+ content: '';
+ display: inline-block;
vertical-align: middle;
- padding: 0.5em;
- margin-left: 20px;
- margin-right: -1em;
- margin-top: -1em;
- border-bottom: 2px dotted #666;
- border-left: 1px dotted #AAA;
- border-bottom-left-radius: 10px;
+}
+
+.ext-translate-language-selector .uls {
+ color: #0645ad;
+ cursor: pointer;
+ min-height: 1px;
+ position: relative;
}
.tux-message-selector {
@@ -39,7 +82,7 @@
list-style: none;
}
-.tux-message-selector li {
+.tux-message-selector .column {
border: medium none;
font-size: 14pt;
cursor: pointer;
@@ -88,28 +131,28 @@
}
.tux-message-selector li.selected {
- border-bottom: 2px solid #3366BB;
+ border-bottom: 2px solid #36c;
}
.tux-message-selector li.selected a {
- color: #3366BB;
+ color: #36c;
}
.tux-message-selector li a {
- color: #555555;
+ color: #54595d;
text-decoration: none;
white-space: nowrap;
margin-left: 1px;
}
.tux-message-selector label {
+ color: #54595d;
font-size: 12pt;
- color: #555555;
top: 1px;
}
.tux-editor-header {
- color: #252525;
+ color: #222;
font-size: 14px;
padding-bottom: 20px;
}
@@ -119,7 +162,7 @@
}
.group-warning {
- background: #FFF5AA;
+ background: #fff5aa;
padding: 5px;
margin: 5px 0;
}
@@ -132,40 +175,46 @@
padding-top: 5px;
border-bottom: 1px solid #777;
/* @noflip */
- -webkit-box-shadow: 0 3px 3px -3px rgba(0, 0, 0, 0.5);
- /* @noflip */
- box-shadow: 0 3px 3px -3px rgba(0, 0, 0, 0.5);
+ box-shadow: 0 3px 3px -3px rgba( 0, 0, 0, 0.5 );
font-size: 14px;
margin: 0;
list-style: none;
transition: width 250ms;
}
-.tux-messagetable-header.floating {
- background: white;
- position: fixed;
- padding-top: 5px;
- top: 0;
- z-index: 200;
-}
+@media screen and ( min-height: 600px ) {
+ .tux-messagetable-header.floating {
+ background: #fff;
+ position: fixed;
+ padding-top: 5px;
+ top: 0;
+ z-index: 200;
+ }
-.tux-messagetable-header.floating+.tux-messagelist {
- margin-top: 50px;
+ .tux-messagetable-header.floating + .tux-messagelist {
+ margin-top: 50px;
+ }
}
-.tux-messagetable-header .tux-message-filter-box {
+.tux-message-filter-box {
font-size: 14px;
height: 28px;
- border: 1px solid #C9C9C9;
+ border: 1px solid #c9c9c9;
width: 100%;
padding: 0 5px;
}
-.tux-messagetable-header .tux-message-filter-box-icon {
- background: url('../images/search.png') no-repeat scroll right center transparent;
- background-image: -webkit-linear-gradient(transparent, transparent), url(../images/search.svg);
- /* @embed */
- background-image: linear-gradient(transparent, transparent), url(../images/search.svg);
+.tux-message-filter-wrapper {
+ background: no-repeat scroll left center transparent;
+ background-image: /* @embed */ linear-gradient( transparent, transparent ), url( ../images/search.svg );
background-size: 25px;
- height: 28px;
+ padding-left: 30px;
+}
+
+.client-nojs .tux-messagetable-header {
+ display: none;
+}
+
+.client-js .tux-nojs {
+ display: none;
}
diff --git a/MLEB/Translate/resources/css/ext.translate.special.translationstash.css b/MLEB/Translate/resources/css/ext.translate.special.translationstash.css
index 5031c9ef..f451cb53 100644
--- a/MLEB/Translate/resources/css/ext.translate.special.translationstash.css
+++ b/MLEB/Translate/resources/css/ext.translate.special.translationstash.css
@@ -1,6 +1,6 @@
/**
* @author Santhosh Thottingal
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
* @since 2013.10
*/
@@ -10,17 +10,17 @@ h1.firstHeading {
h1 {
text-decoration: none;
- border-bottom: none;
+ border-bottom: 0;
}
.translate-welcome-header > p {
- color: #555555;
+ color: #54595d;
font-size: 1.2em;
}
.translate-welcome-header {
- background-color: #F8F8F8;
- background-image: linear-gradient(#fAFAFA, #f8f8f8);
+ background-color: #f8f8f8;
+ background-image: linear-gradient( #fafafa, #f8f8f8 );
border-bottom: 1px solid #eee;
padding: 10px;
}
@@ -37,20 +37,19 @@ h1 {
}
.translate-stash-control {
+ color: #54595d;
font-size: 1.5em;
- color: #555555;
padding: 35px 10px 20px 5px;
}
.ext-translate-language-selector-label {
- color: #555555;
+ color: #54595d;
}
.ext-translate-language-selector {
text-align: right;
}
-
/* The triangle shaped down-pointing callout after the language name
* in the target language selector
*/
@@ -58,8 +57,8 @@ h1 {
margin-left: 4px;
border-left: 4px solid transparent;
border-right: 4px solid transparent;
- border-top: 4px solid #0645AD;
- content: "";
+ border-top: 4px solid #0645ad;
+ content: '';
display: inline-block;
vertical-align: middle;
}
@@ -87,7 +86,7 @@ h1 {
}
.tux-message:first-child .tux-message-item {
- border-top: 1px solid #C9C9C9;
+ border-top: 1px solid #c9c9c9;
}
.tux-message-item.translated {
diff --git a/MLEB/Translate/resources/css/ext.translate.statsbar.css b/MLEB/Translate/resources/css/ext.translate.statsbar.css
index 95a96ad2..32df390c 100644
--- a/MLEB/Translate/resources/css/ext.translate.statsbar.css
+++ b/MLEB/Translate/resources/css/ext.translate.statsbar.css
@@ -2,29 +2,26 @@
max-width: 400px;
padding: 0;
height: 5px;
- background-color: #BBB;
+ background-color: #bbb;
}
.tux-statsbar span {
height: 5px;
float: left;
padding: 0;
- -webkit-transition: width 1s;
- -moz-transition: width 1s;
- -o-transition: width 1s;
transition: width 1s;
}
.tux-statsbar .tux-proofread {
- background-color: #23567F;
+ background-color: #00af89;
}
.tux-statsbar .tux-translated {
- background-color: #3A89C9;
+ background-color: #2a4b8d;
}
.tux-statsbar .tux-fuzzy {
- background-color: #EBCC6E;
+ background-color: #fc3;
}
.tux-statsbar .tux-untranslated {
@@ -32,9 +29,9 @@
}
.tux-statsbar-info {
+ color: #72777d;
font-weight: normal;
line-height: 1.25em;
- color: #777;
font-size: 10pt;
position: absolute;
padding-top: 5px;
diff --git a/MLEB/Translate/resources/css/ext.translate.workflowselector.css b/MLEB/Translate/resources/css/ext.translate.workflowselector.css
index f8ce19b6..0181650d 100644
--- a/MLEB/Translate/resources/css/ext.translate.workflowselector.css
+++ b/MLEB/Translate/resources/css/ext.translate.workflowselector.css
@@ -1,44 +1,53 @@
.tux-workflow-status {
background: #eee;
+ color: #222;
border: 1px solid #ddd;
- color: #252525;
cursor: pointer;
display: inline-block;
padding: 2px 4px;
- margin: 5px 0;
+ margin-top: 5px;
+ min-width: 150px;
}
.tux-workflow-status:hover {
border: 1px solid #c9c9c9;
}
-.tux-workflow-status:after {
- margin-left: 3px;
+.tux-workflow-status-triangle {
+ float: right;
+}
+
+.tux-workflow-status-triangle:after {
+ margin: 3px;
border-left: 3px solid transparent;
border-right: 3px solid transparent;
border-top: 3px solid #555;
- content: "";
+ content: '';
display: inline-block;
vertical-align: middle;
}
+ul.tux-workflow-status-selector {
+ min-width: 150px;
+ margin-top: -1px;
+}
+
.tux-workflow-status-selector li {
- color: #555555;
+ color: #54595d;
display: block;
font-size: 14px;
padding: 0 2px;
}
.tux-workflow-status-selector li.changeable:hover {
- cursor: pointer;
background-color: #f0f0f0;
- color: #252525;
+ color: #222;
+ cursor: pointer;
}
.tux-workflow-status-selector li.selected {
- background: url(../images/label-tick.png) right no-repeat;
- background-image: -webkit-linear-gradient(transparent, transparent), url(../images/label-tick.svg);
+ background: right no-repeat;
/* @embed */
- background-image: linear-gradient(transparent, transparent), url(../images/label-tick.svg);
- color: #252525;
+ background-image: linear-gradient( transparent, transparent ), url( ../images/label-tick.svg );
+ color: #222;
}
diff --git a/MLEB/Translate/resources/images/action-edit.png b/MLEB/Translate/resources/images/action-edit.png
deleted file mode 100644
index 5f2600f6..00000000
--- a/MLEB/Translate/resources/images/action-edit.png
+++ /dev/null
Binary files differ
diff --git a/MLEB/Translate/resources/images/action-edit.svg b/MLEB/Translate/resources/images/action-edit.svg
index 9e4213a4..a4c351c6 100644
--- a/MLEB/Translate/resources/images/action-edit.svg
+++ b/MLEB/Translate/resources/images/action-edit.svg
@@ -1,36 +1,4 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-
-<svg
- xmlns:dc="http://purl.org/dc/elements/1.1/"
- xmlns:cc="http://creativecommons.org/ns#"
- xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
- xmlns:svg="http://www.w3.org/2000/svg"
- xmlns="http://www.w3.org/2000/svg"
- version="1.1"
- width="15"
- height="15"
- id="svg17805">
- <defs
- id="defs17807" />
- <metadata
- id="metadata17810">
- <rdf:RDF>
- <cc:Work
- rdf:about="">
- <dc:format>image/svg+xml</dc:format>
- <dc:type
- rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
- <dc:title></dc:title>
- </cc:Work>
- </rdf:RDF>
- </metadata>
- <g
- transform="translate(-159.64355,-100.30805)"
- id="layer1">
- <path
- d="m 169.46861,102.2832 -6.21818,8.8881 -0.0148,0 -0.18891,2.1633 1.97547,-0.9207 6.21818,-8.8881 -1.77168,-1.2443 z"
- id="rect8752-2-8-5-49-6-2-0-2-5-4-0-4-5-8-7-6-4-94-6-2-8-0-2-6-8-9"
- style="fill:#3366bb;fill-opacity:1;stroke:none" />
- </g>
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg" width="15" height="15" viewBox="0 0 15 15">
+ <path d="M9.825 1.975l-6.218 8.888h-.015l-.19 2.164 1.977-.92 6.217-8.89-1.772-1.244z" fill="#36c"/>
</svg>
diff --git a/MLEB/Translate/resources/images/add.png b/MLEB/Translate/resources/images/add.png
deleted file mode 100644
index bcd6b8fa..00000000
--- a/MLEB/Translate/resources/images/add.png
+++ /dev/null
Binary files differ
diff --git a/MLEB/Translate/resources/images/add.svg b/MLEB/Translate/resources/images/add.svg
index 238ebd15..3cb491c0 100644
--- a/MLEB/Translate/resources/images/add.svg
+++ b/MLEB/Translate/resources/images/add.svg
@@ -1 +1,23 @@
-<?xml version="1.0" encoding="UTF-8"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="16" height="16"><defs><linearGradient id="c"><stop offset="0" stop-color="#8ccb81"/><stop offset="1" stop-color="#65ab55"/></linearGradient><linearGradient><stop offset="0" stop-color="#74b75b"/><stop offset="1" stop-color="#86c97a"/></linearGradient><linearGradient id="b"><stop offset="0" stop-color="#dcf1d8"/><stop offset="1" stop-color="#89be78"/></linearGradient><linearGradient id="a"><stop offset="0" stop-color="#34812c" stop-opacity=".957"/><stop offset="1" stop-color="#87b870" stop-opacity=".957"/></linearGradient><linearGradient x1="12.758" y1="13.001" x2="2.583" y2="2.521" xlink:href="#a" gradientUnits="userSpaceOnUse"/><linearGradient x1="2.583" y1="2.521" x2="12.758" y2="13.001" xlink:href="#b" gradientUnits="userSpaceOnUse"/><linearGradient x1="4.551" y1="4.433" x2="11.459" y2="11.341" xlink:href="#c" gradientUnits="userSpaceOnUse"/><linearGradient x1="4.551" y1="4.433" x2="11.459" y2="11.341" id="f" xlink:href="#c" gradientUnits="userSpaceOnUse" gradientTransform="matrix(1.002 0 0 1.002 -.038 0)"/><linearGradient x1="2.583" y1="2.521" x2="12.758" y2="13.001" id="d" xlink:href="#b" gradientUnits="userSpaceOnUse" gradientTransform="translate(.253 .127)"/><linearGradient x1="12.758" y1="13.001" x2="2.583" y2="2.521" id="e" xlink:href="#a" gradientUnits="userSpaceOnUse" gradientTransform="translate(.253 .127)"/></defs><path d="M14.9 7.95a6.85 6.85 0 1 1-13.7 0 6.85 6.85 0 1 1 13.7 0z" fill="url(#d)" fill-rule="evenodd" stroke="url(#e)"/><path d="M13 8A5 5 0 1 1 3 8a5 5 0 1 1 10 0z" fill="url(#f)"/><path d="M7.032 5v2.042H5v1.995h2.063V11h2V9.005H11V7.01H9.032V5.017z" fill="#fff" fill-opacity=".957"/></svg>
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <defs>
+ <linearGradient id="c">
+ <stop offset="0" stop-color="#8ccb81"/>
+ <stop offset="1" stop-color="#65ab55"/>
+ </linearGradient>
+ <linearGradient id="b">
+ <stop offset="0" stop-color="#dcf1d8"/>
+ <stop offset="1" stop-color="#89be78"/>
+ </linearGradient>
+ <linearGradient id="a">
+ <stop offset="0" stop-color="#34812c" stop-opacity=".957"/>
+ <stop offset="1" stop-color="#87b870" stop-opacity=".957"/>
+ </linearGradient>
+ <linearGradient id="f" x1="4.551" x2="11.459" y1="4.433" y2="11.341" xlink:href="#c" gradientUnits="userSpaceOnUse" gradientTransform="translate(-.038) scale(1.002)"/>
+ <linearGradient id="d" x1="2.583" x2="12.758" y1="2.521" y2="13.001" xlink:href="#b" gradientUnits="userSpaceOnUse" gradientTransform="translate(.253 .127)"/>
+ <linearGradient id="e" x1="12.758" x2="2.583" y1="13.001" y2="2.521" xlink:href="#a" gradientUnits="userSpaceOnUse" gradientTransform="translate(.253 .127)"/>
+ </defs>
+ <path fill="url(#d)" fill-rule="evenodd" stroke="url(#e)" d="M14.9 7.95a6.85 6.85 0 1 1-13.7 0 6.85 6.85 0 1 1 13.7 0z"/>
+ <path fill="url(#f)" d="M13 8A5 5 0 1 1 3 8a5 5 0 1 1 10 0z"/>
+ <path fill="#fff" fill-opacity=".957" d="M7.032 5v2.042H5v1.995h2.063V11h2V9.005H11V7.01H9.032V5.017z"/>
+</svg>
diff --git a/MLEB/Translate/resources/images/check-small.png b/MLEB/Translate/resources/images/check-small.png
deleted file mode 100644
index 128da5b1..00000000
--- a/MLEB/Translate/resources/images/check-small.png
+++ /dev/null
Binary files differ
diff --git a/MLEB/Translate/resources/images/check-small.svg b/MLEB/Translate/resources/images/check-small.svg
index 9d146493..9dd46c85 100644
--- a/MLEB/Translate/resources/images/check-small.svg
+++ b/MLEB/Translate/resources/images/check-small.svg
@@ -1,26 +1,4 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-
-<svg
- xmlns:dc="http://purl.org/dc/elements/1.1/"
- xmlns:cc="http://creativecommons.org/ns#"
- xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
- xmlns:svg="http://www.w3.org/2000/svg"
- xmlns="http://www.w3.org/2000/svg"
- version="1.1"
- width="12"
- height="12"
- viewBox="0 0 12 12"
- id="Layer_1"
- xml:space="preserve"><metadata
- id="metadata17"><rdf:RDF><cc:Work
- rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
- rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
- id="defs15" />
-
-
-
-<path
- d="M 9.1873757,0 4.3406758,8.3503536 2.4427828,6.9489046 0.95379575,8.934306 3.990331,11.182457 5.0997526,12 5.8005534,10.802937 11.318717,1.226278 9.1873757,0 z"
- id="path12436-0-1-2-8-1-9-2-9"
- style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#acacac;fill-opacity:1;stroke:none;stroke-width:2.6545198;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" /></svg> \ No newline at end of file
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 12 12">
+ <path fill="#a2a9b1" d="M9.187 0L4.34 8.35l-1.897-1.4-1.49 1.984 3.037 2.248L5.1 12l.7-1.197 5.52-9.577L9.186 0z" overflow="visible"/>
+</svg>
diff --git a/MLEB/Translate/resources/images/check-sprite-ltr.png b/MLEB/Translate/resources/images/check-sprite-ltr.png
deleted file mode 100644
index 2706967a..00000000
--- a/MLEB/Translate/resources/images/check-sprite-ltr.png
+++ /dev/null
Binary files differ
diff --git a/MLEB/Translate/resources/images/check-sprite-ltr.svg b/MLEB/Translate/resources/images/check-sprite-ltr.svg
index fead121b..aee115fc 100644
--- a/MLEB/Translate/resources/images/check-sprite-ltr.svg
+++ b/MLEB/Translate/resources/images/check-sprite-ltr.svg
@@ -1,89 +1,15 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-
-<svg
- xmlns:dc="http://purl.org/dc/elements/1.1/"
- xmlns:cc="http://creativecommons.org/ns#"
- xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
- xmlns:svg="http://www.w3.org/2000/svg"
- xmlns="http://www.w3.org/2000/svg"
- version="1.1"
- width="44"
- height="248"
- id="svg10555">
- <defs
- id="defs10557" />
- <metadata
- id="metadata10560">
- <rdf:RDF>
- <cc:Work
- rdf:about="">
- <dc:format>image/svg+xml</dc:format>
- <dc:type
- rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
- <dc:title></dc:title>
- </cc:Work>
- </rdf:RDF>
- </metadata>
- <g
- transform="translate(0,-804.36218)"
- id="layer1">
- <path
- d="m 44,866.36218 -34.02216,0 -9.80064,15.00002 9.80064,15 34.02216,0 z"
- id="rect12220"
- style="color:#000000;fill:#e5e5e5;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
- <path
- d="m 34.7936,869.20616 -10.28928,17.72734 -4.02912,-2.9752 -3.16104,4.2149 6.4464,4.7727 2.35524,1.7356 1.48776,-2.5413 11.71476,-20.33072 -4.52472,-2.60332 z"
- id="path12436-0-1-2-8-1-9-2-9"
- style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#3e3e3e;fill-opacity:1;stroke:none;stroke-width:2.6545198;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" />
- <path
- d="m 44,897.3622 -34.02216,0 -9.80064,15 9.80064,15 34.02216,0 z"
- id="rect12220-7"
- style="color:#000000;fill:#c8dbf3;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
- <path
- d="m 34.7936,900.2062 -10.28928,17.7273 -4.02912,-2.9752 -3.16104,4.2149 6.4464,4.7727 2.35524,1.7356 1.48776,-2.5413 11.71476,-20.3307 -4.52472,-2.6033 z"
- id="path12436-0-1-2-8-1-9-2-9-9"
- style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#3366bb;fill-opacity:1;stroke:#3366bb;stroke-width:0.75;stroke-opacity:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" />
- <path
- d="m 44,804.36218 -34.02216,0 -9.80064,15 9.80064,15 34.02216,0 z"
- id="rect12220-0"
- style="color:#000000;fill:#e5e5e5;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
- <path
- d="m 34.7936,807.20614 -10.28928,17.72736 -4.02912,-2.97522 -3.16104,4.21491 6.4464,4.77275 2.35524,1.73554 1.48776,-2.54133 11.71476,-20.33068 -4.52472,-2.60333 z"
- id="path12436-0-1-2-8-1-9-2-9-2"
- style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#ffffff;fill-opacity:1;stroke:#aeaeae;stroke-width:0.75;stroke-opacity:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" />
- <path
- d="m 44,835.36218 -34.02216,0 -9.80064,15 9.80064,15 34.02216,0 z"
- id="rect12220-0-0"
- style="color:#000000;fill:#c8dbf3;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
- <path
- d="m 34.7936,838.20614 -10.28928,17.72736 -4.02912,-2.97522 -3.16104,4.21491 6.4464,4.77275 2.35524,1.73554 1.48776,-2.54133 11.71476,-20.33068 -4.52472,-2.60333 z"
- id="path12436-0-1-2-8-1-9-2-9-2-4"
- style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#ffffff;fill-opacity:1;stroke:#9ebfea;stroke-width:0.75;stroke-opacity:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" />
- <polygon
- points="43.396,37.858 32.354,56.604 26.119,51.79 27.582,49.892 31.667,53.045 41.329,36.641 "
- transform="matrix(1.1261478,0,0,1.1592998,-11.17699,889.3127)"
- id="polygon3"
- style="fill:#d1d3d4" />
- <polygon
- points="41.329,76.048 43.396,77.265 32.354,96.011 26.12,91.197 27.583,89.299 31.668,92.453 "
- transform="matrix(1.1261478,0,0,1.1592998,-11.17699,874.6282)"
- id="polygon5"
- style="fill:#9dbfdf" />
- <path
- d="m 8.1875,166.5 0,3.4375 -3.34375,0 0,3.03125 3.34375,0 0,3.40625 2.9375,0 0,-3.40625 3.34375,0 0,-3.03125 -3.34375,0 0,-3.4375 -2.9375,0 z"
- transform="translate(0,804.36218)"
- id="rect9"
- style="fill:#9dbfdf" />
- <polygon
- points="26.119,51.79 27.582,49.892 31.667,53.045 41.329,36.641 43.396,37.858 32.354,56.604 "
- transform="matrix(1.1261478,0,0,1.1592998,-11.17699,951.31273)"
- id="polygon3018"
- style="fill:#5f5f5f;fill-opacity:1" />
- <polygon
- points="27.582,49.892 31.667,53.045 41.329,36.641 43.396,37.858 32.354,56.604 26.119,51.79 "
- transform="matrix(1.1261478,0,0,1.1592998,-11.17699,982.3127)"
- id="polygon3022"
- style="fill:#9dbfdf;fill-opacity:1" />
- </g>
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg" width="44" height="248">
+ <path fill="#eaecf0" d="M44 62H9.978l-9.8 15 9.8 15H44z" overflow="visible"/>
+ <path fill="#3e3e3e" d="M34.794 64.844L24.504 82.57l-4.03-2.974-3.16 4.215 6.447 4.775 2.357 1.735 1.488-2.542 11.714-20.33-4.525-2.604z" overflow="visible"/>
+ <path fill="#c8dbf3" d="M44 93H9.978l-9.8 15 9.8 15H44z" overflow="visible"/>
+ <path fill="#36c" stroke="#36c" stroke-width=".75" d="M34.794 95.844l-10.29 17.727-4.03-2.973-3.16 4.215 6.447 4.774 2.357 1.735 1.488-2.54L39.32 98.45l-4.525-2.605z" overflow="visible"/>
+ <path fill="#eaecf0" d="M44 0H9.978l-9.8 15 9.8 15H44z" overflow="visible"/>
+ <path fill="#fff" stroke="#a2a9b1" stroke-width=".75" d="M34.794 2.844L24.504 20.57l-4.03-2.974-3.16 4.215 6.447 4.775 2.357 1.735 1.488-2.542L39.32 5.448l-4.525-2.604z" overflow="visible"/>
+ <path fill="#c8dbf3" d="M44 31H9.978l-9.8 15 9.8 15H44z" overflow="visible"/>
+ <path fill="#fff" stroke="#9ebfea" stroke-width=".75" d="M34.794 33.844L24.504 51.57l-4.03-2.974-3.16 4.215 6.447 4.775 2.357 1.735 1.488-2.542 11.714-20.33-4.525-2.604z" overflow="visible"/>
+ <path fill="#d1d3d4" d="M37.693 128.84l-12.435 21.73-7.02-5.58 1.646-2.202 4.6 3.656 10.882-19.018"/>
+ <path fill="#9dbfdf" d="M35.366 158.428l2.327 1.41-12.435 21.734-7.02-5.58 1.648-2.202 4.6 3.657M8.188 166.5v3.438H4.844v3.03h3.343v3.407h2.938v-3.406h3.344v-3.033h-3.346V166.5H8.187z"/>
+ <path fill="#54595d" d="M18.237 206.99l1.647-2.2 4.6 3.656 10.882-19.018 2.327 1.41-12.435 21.734"/>
+ <path fill="#9dbfdf" d="M19.884 235.79l4.6 3.656 10.882-19.018 2.327 1.41-12.435 21.734-7.02-5.58"/>
</svg>
diff --git a/MLEB/Translate/resources/images/check-sprite-rtl.png b/MLEB/Translate/resources/images/check-sprite-rtl.png
deleted file mode 100644
index 7da4006b..00000000
--- a/MLEB/Translate/resources/images/check-sprite-rtl.png
+++ /dev/null
Binary files differ
diff --git a/MLEB/Translate/resources/images/check-sprite-rtl.svg b/MLEB/Translate/resources/images/check-sprite-rtl.svg
index 7d55d676..5f15ad22 100644
--- a/MLEB/Translate/resources/images/check-sprite-rtl.svg
+++ b/MLEB/Translate/resources/images/check-sprite-rtl.svg
@@ -1,84 +1,15 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-
-<svg
- xmlns:dc="http://purl.org/dc/elements/1.1/"
- xmlns:cc="http://creativecommons.org/ns#"
- xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
- xmlns:svg="http://www.w3.org/2000/svg"
- xmlns="http://www.w3.org/2000/svg"
- version="1.1"
- width="44"
- height="248"
- id="svg10555">
- <defs
- id="defs10557" />
- <metadata
- id="metadata10560">
- <rdf:RDF>
- <cc:Work
- rdf:about="">
- <dc:format>image/svg+xml</dc:format>
- <dc:type
- rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
- <dc:title></dc:title>
- </cc:Work>
- </rdf:RDF>
- </metadata>
- <path
- d="M 0.1772,62 34.19936,62 44,77.00002 l -9.80064,15 -34.02216,0 z"
- id="rect12220"
- style="color:#000000;fill:#e5e5e5;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
- <path
- d="m 22.33832,64.84398 -10.28928,17.72734 -4.02912,-2.9752 -3.16104,4.2149 6.4464,4.7727 2.35524,1.7356 1.48776,-2.5413 11.71476,-20.33072 -4.52472,-2.60332 z"
- id="path12436-0-1-2-8-1-9-2-9"
- style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#3e3e3e;fill-opacity:1;stroke:none;stroke-width:2.6545198;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" />
- <path
- d="m 0.1772,93.00002 34.02216,0 9.80064,15 -9.80064,15 -34.02216,0 z"
- id="rect12220-7"
- style="color:#000000;fill:#c8dbf3;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
- <path
- d="m 22.33832,95.84402 -10.28928,17.7273 -4.02912,-2.9752 -3.16104,4.2149 6.4464,4.7727 2.35524,1.7356 1.48776,-2.5413 11.71476,-20.3307 -4.52472,-2.6033 z"
- id="path12436-0-1-2-8-1-9-2-9-9"
- style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#3366bb;fill-opacity:1;stroke:#3366bb;stroke-width:0.75;stroke-opacity:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" />
- <path
- d="M 0.1772,0 34.19936,0 44,15 34.19936,30 0.1772,30 z"
- id="rect12220-0"
- style="color:#000000;fill:#e5e5e5;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
- <path
- d="M 22.33832,2.84396 12.04904,20.57132 8.01992,17.5961 l -3.16104,4.21491 6.4464,4.77275 2.35524,1.73554 1.48776,-2.54133 L 26.86304,5.44729 22.33832,2.84396 z"
- id="path12436-0-1-2-8-1-9-2-9-2"
- style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#ffffff;fill-opacity:1;stroke:#aeaeae;stroke-width:0.75;stroke-opacity:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" />
- <path
- d="M 0.1772,31 34.19936,31 44,46 34.19936,61 0.1772,61 z"
- id="rect12220-0-0"
- style="color:#000000;fill:#c8dbf3;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
- <path
- d="M 22.33832,33.84396 12.04904,51.57132 8.01992,48.5961 l -3.16104,4.21491 6.4464,4.77275 2.35524,1.73554 1.48776,-2.54133 11.71476,-20.33068 -4.52472,-2.60333 z"
- id="path12436-0-1-2-8-1-9-2-9-2-4"
- style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#ffffff;fill-opacity:1;stroke:#9ebfea;stroke-width:0.75;stroke-opacity:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" />
- <polygon
- points="41.329,36.641 43.396,37.858 32.354,56.604 26.119,51.79 27.582,49.892 31.667,53.045 "
- transform="matrix(1.1261478,0,0,1.1592998,-23.63227,84.95052)"
- id="polygon3"
- style="fill:#d1d3d4" />
- <polygon
- points="31.668,92.453 41.329,76.048 43.396,77.265 32.354,96.011 26.12,91.197 27.583,89.299 "
- transform="matrix(1.1261478,0,0,1.1592998,-23.63227,70.26602)"
- id="polygon5"
- style="fill:#9dbfdf" />
- <path
- d="m 35.9897,166.5 0,3.4375 3.34375,0 0,3.03125 -3.34375,0 0,3.40625 -2.9375,0 0,-3.40625 -3.34375,0 0,-3.03125 3.34375,0 0,-3.4375 2.9375,0 z"
- id="rect9"
- style="fill:#9dbfdf" />
- <polygon
- points="32.354,56.604 26.119,51.79 27.582,49.892 31.667,53.045 41.329,36.641 43.396,37.858 "
- transform="matrix(1.1261478,0,0,1.1592998,-23.63227,146.95055)"
- id="polygon3018"
- style="fill:#5f5f5f;fill-opacity:1" />
- <polygon
- points="26.119,51.79 27.582,49.892 31.667,53.045 41.329,36.641 43.396,37.858 32.354,56.604 "
- transform="matrix(1.1261478,0,0,1.1592998,-23.63227,177.95052)"
- id="polygon3022"
- style="fill:#9dbfdf;fill-opacity:1" />
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg" width="44" height="248">
+ <path fill="#eaecf0" d="M.177 62H34.2L44 77l-9.8 15H.176z" overflow="visible"/>
+ <path fill="#3e3e3e" d="M22.338 64.844L12.048 82.57 8.02 79.597 4.86 83.81l6.445 4.774 2.356 1.735 1.488-2.542 11.715-20.33-4.525-2.604z" overflow="visible"/>
+ <path fill="#c8dbf3" d="M.177 93H34.2l9.8 15-9.8 15H.176z" overflow="visible"/>
+ <path fill="#36c" stroke="#36c" stroke-width=".75" d="M22.338 95.844l-10.29 17.727-4.028-2.974-3.16 4.215 6.445 4.774 2.356 1.735 1.488-2.542 11.715-20.33-4.525-2.604z" overflow="visible"/>
+ <path fill="#eaecf0" d="M.177 0H34.2L44 15l-9.8 15H.176z" overflow="visible"/>
+ <path fill="#fff" stroke="#aeaeae" stroke-width=".75" d="M22.338 2.844L12.048 20.57 8.02 17.597 4.86 21.81l6.445 4.774 2.356 1.735 1.488-2.542 11.715-20.33-4.525-2.604z" overflow="visible"/>
+ <path fill="#c8dbf3" d="M.177 31H34.2L44 46l-9.8 15H.176z" overflow="visible"/>
+ <path fill="#fff" stroke="#9ebfea" stroke-width=".75" d="M22.338 33.844L12.048 51.57 8.02 48.597 4.86 52.81l6.445 4.774 2.356 1.735 1.488-2.542 11.715-20.33-4.525-2.604z" overflow="visible"/>
+ <path fill="#d1d3d4" d="M22.91 127.428l2.328 1.41-12.435 21.734-7.02-5.58 1.646-2.202 4.6 3.656"/>
+ <path fill="#9dbfdf" d="M12.03 177.447l10.88-19.02 2.328 1.412-12.435 21.732-7.02-5.58 1.647-2.202M35.99 166.5v3.438h3.343v3.03H35.99v3.407h-2.938v-3.406h-3.344v-3.032h3.344V166.5h2.938z"/>
+ <path fill="#54595d" d="M12.803 212.572l-7.02-5.58 1.646-2.202 4.6 3.656 10.88-19.018 2.328 1.41"/>
+ <path fill="#9dbfdf" d="M5.782 237.99l1.647-2.2 4.6 3.656 10.88-19.018 2.328 1.41-12.435 21.734"/>
</svg>
diff --git a/MLEB/Translate/resources/images/close.png b/MLEB/Translate/resources/images/close.png
deleted file mode 100644
index 84631c3d..00000000
--- a/MLEB/Translate/resources/images/close.png
+++ /dev/null
Binary files differ
diff --git a/MLEB/Translate/resources/images/close.svg b/MLEB/Translate/resources/images/close.svg
index 375b4f5c..22619b95 100644
--- a/MLEB/Translate/resources/images/close.svg
+++ b/MLEB/Translate/resources/images/close.svg
@@ -1,40 +1,5 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-
-<svg
- xmlns:dc="http://purl.org/dc/elements/1.1/"
- xmlns:cc="http://creativecommons.org/ns#"
- xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
- xmlns:svg="http://www.w3.org/2000/svg"
- xmlns="http://www.w3.org/2000/svg"
- version="1.1"
- width="12"
- height="12"
- id="svg2">
- <defs
- id="defs4" />
- <metadata
- id="metadata7">
- <rdf:RDF>
- <cc:Work
- rdf:about="">
- <dc:format>image/svg+xml</dc:format>
- <dc:type
- rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
- <dc:title></dc:title>
- </cc:Work>
- </rdf:RDF>
- </metadata>
- <g
- transform="translate(-578.6585,-310.8933)"
- id="layer1">
- <path
- d="m 579.70127,311.93609 9.91446,9.91442"
- id="path6064-1-0-9"
- style="fill:none;stroke:#2e3436;stroke-width:2.085536;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
- <path
- d="m 589.6157,311.93609 -9.91441,9.91442"
- id="path6064-3-2-4-6"
- style="fill:none;stroke:#2e3436;stroke-width:2.085536;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
- </g>
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20">
+ <path d="M3.636 2.222l14.142 14.142-1.414 1.414L2.222 3.636z"/>
+ <path d="M17.778 3.636L3.636 17.778l-1.414-1.414L16.364 2.222z"/>
</svg>
diff --git a/MLEB/Translate/resources/images/contract-ltr.png b/MLEB/Translate/resources/images/contract-ltr.png
deleted file mode 100644
index a8d00dbc..00000000
--- a/MLEB/Translate/resources/images/contract-ltr.png
+++ /dev/null
Binary files differ
diff --git a/MLEB/Translate/resources/images/contract-ltr.svg b/MLEB/Translate/resources/images/contract-ltr.svg
index 0a00db1d..2b7d71b6 100644
--- a/MLEB/Translate/resources/images/contract-ltr.svg
+++ b/MLEB/Translate/resources/images/contract-ltr.svg
@@ -1,51 +1,6 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-
-<svg
- xmlns:dc="http://purl.org/dc/elements/1.1/"
- xmlns:cc="http://creativecommons.org/ns#"
- xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
- xmlns:svg="http://www.w3.org/2000/svg"
- xmlns="http://www.w3.org/2000/svg"
- version="1.1"
- width="16"
- height="12"
- id="svg17805">
- <defs
- id="defs17807" />
- <metadata
- id="metadata17810">
- <rdf:RDF>
- <cc:Work
- rdf:about="">
- <dc:format>image/svg+xml</dc:format>
- <dc:type
- rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
- <dc:title></dc:title>
- </cc:Work>
- </rdf:RDF>
- </metadata>
- <g
- transform="translate(-159.64355,-103.30805)"
- id="layer1">
- <rect
- width="4.2944264"
- height="9.2567539"
- x="170.16307"
- y="104.72025"
- id="rect8020-7-3-7-8"
- style="color:#000000;fill:#b9b9b9;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.5;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
- <rect
- width="14.63288"
- height="10.276761"
- x="160.32709"
- y="104.16966"
- id="rect6062-5-54-4-3"
- style="color:#000000;fill:none;stroke:#2e3436;stroke-width:1.36711919;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
- <path
- d="M 7.03125,2.21875 3.6875,5.53125 3.28125,5.96875 3.6875,6.375 6.9375,9.625 7.78125,8.78125 5.53125,6.5 l 5.78125,0 0,-1.1875 -5.71875,0 2.25,-2.25 -0.8125,-0.84375 z"
- transform="translate(159.64355,103.30805)"
- id="path8014-1-9-7-7"
- style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#2e3436;fill-opacity:1;stroke:none;stroke-width:1.18803263;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" />
- </g>
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg" width="16" height="12" viewBox="0 0 16 12">
+ <path fill="#a2a9b1" d="M10.52 1.412h4.293v9.257H10.52z" overflow="visible"/>
+ <path fill="none" stroke="#222" stroke-width="1.367" d="M.683.862h14.633V11.14H.683z" overflow="visible"/>
+ <path fill="#222" d="M7.03 2.22L3.688 5.53l-.406.44.408.405 3.25 3.25.843-.844L5.53 6.5h5.782V5.312H5.595l2.25-2.25-.813-.843z" overflow="visible"/>
</svg>
diff --git a/MLEB/Translate/resources/images/contract-rtl.png b/MLEB/Translate/resources/images/contract-rtl.png
deleted file mode 100644
index 2822bbaa..00000000
--- a/MLEB/Translate/resources/images/contract-rtl.png
+++ /dev/null
Binary files differ
diff --git a/MLEB/Translate/resources/images/contract-rtl.svg b/MLEB/Translate/resources/images/contract-rtl.svg
index 43a488dc..8a498500 100644
--- a/MLEB/Translate/resources/images/contract-rtl.svg
+++ b/MLEB/Translate/resources/images/contract-rtl.svg
@@ -1,53 +1,6 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-
-<svg
- xmlns:dc="http://purl.org/dc/elements/1.1/"
- xmlns:cc="http://creativecommons.org/ns#"
- xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
- xmlns:svg="http://www.w3.org/2000/svg"
- xmlns="http://www.w3.org/2000/svg"
- version="1.1"
- width="16"
- height="12"
- id="svg17805">
- <defs
- id="defs17807" />
- <metadata
- id="metadata17810">
- <rdf:RDF>
- <cc:Work
- rdf:about="">
- <dc:format>image/svg+xml</dc:format>
- <dc:type
- rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
- <dc:title></dc:title>
- </cc:Work>
- </rdf:RDF>
- </metadata>
- <g
- transform="translate(-159.64355,-103.30805)"
- id="layer1">
- <rect
- width="4.2944264"
- height="9.2567539"
- x="-165.12401"
- y="104.72025"
- transform="scale(-1,1)"
- id="rect8020-7-3-7-8"
- style="color:#000000;fill:#b9b9b9;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.5;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
- <rect
- width="14.63288"
- height="10.276761"
- x="-174.96001"
- y="104.16966"
- transform="scale(-1,1)"
- id="rect6062-5-54-4-3"
- style="color:#000000;fill:none;stroke:#2e3436;stroke-width:1.36711919;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
- <path
- d="M 8.96875,2.21875 8.125,3.0625 l 2.28125,2.25 -5.71875,0 0,1.1875 5.78125,0 -2.28125,2.28125 0.84375,0.84375 3.25,-3.25 0.40625,-0.40625 -0.40625,-0.4375 -3.3125,-3.3125 z"
- transform="translate(159.64355,103.30805)"
- id="path8014-1-9-7-7"
- style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#2e3436;fill-opacity:1;stroke:none;stroke-width:1.18803263;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" />
- </g>
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg" width="16" height="12" viewBox="0 0 16 12">
+ <path fill="#a2a9b1" d="M5.48 1.412H1.186v9.257H5.48z" overflow="visible"/>
+ <path fill="none" stroke="#222" stroke-width="1.367" d="M15.316.862H.683V11.14h14.633z" overflow="visible"/>
+ <path fill="#222" d="M8.97 2.22l-.845.842 2.28 2.25H4.69V6.5h5.78L8.19 8.78l.843.845 3.25-3.25.408-.406-.407-.44-3.31-3.31z" overflow="visible"/>
</svg>
diff --git a/MLEB/Translate/resources/images/edit-mark.png b/MLEB/Translate/resources/images/edit-mark.png
deleted file mode 100644
index af8c96f1..00000000
--- a/MLEB/Translate/resources/images/edit-mark.png
+++ /dev/null
Binary files differ
diff --git a/MLEB/Translate/resources/images/edit-mark.svg b/MLEB/Translate/resources/images/edit-mark.svg
index a1221fb0..80d09ecb 100644
--- a/MLEB/Translate/resources/images/edit-mark.svg
+++ b/MLEB/Translate/resources/images/edit-mark.svg
@@ -1,30 +1,4 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-
-<svg
- xmlns:dc="http://purl.org/dc/elements/1.1/"
- xmlns:cc="http://creativecommons.org/ns#"
- xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
- xmlns:svg="http://www.w3.org/2000/svg"
- xmlns="http://www.w3.org/2000/svg"
- version="1.1"
- width="33.389"
- height="22.857"
- viewBox="0 0 33.389 22.857"
- id="svg2"
- xml:space="preserve"><metadata
- id="metadata9"><rdf:RDF><cc:Work
- rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
- rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
- id="defs7" />
-
-<g
- transform="translate(-2372.5715,-642.2193)"
- id="layer1">
-
- <path
- d="m 2393.896,645.134 -9.343,13.311 -0.022,0.003 -0.284,3.239 2.968,-1.379 9.344,-13.31 -2.663,-1.864 0,0 z"
- id="rect8752-2-8-5-49-6-2-0-2-5-4-0-4-5-8-7-6-4-9-9-0-3-2-1-1-3-7-4-8-3"
- style="fill:#c9c9c9" />
-</g>
-</svg> \ No newline at end of file
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg" width="33.389" height="22.857" viewBox="0 0 33.389 22.857">
+ <path fill="#c8ccd1" d="M21.325 2.915l-9.343 13.31-.022.004-.284 3.238 2.968-1.38 9.344-13.31-2.663-1.863z"/>
+</svg>
diff --git a/MLEB/Translate/resources/images/expand-ltr.png b/MLEB/Translate/resources/images/expand-ltr.png
deleted file mode 100644
index 33278b14..00000000
--- a/MLEB/Translate/resources/images/expand-ltr.png
+++ /dev/null
Binary files differ
diff --git a/MLEB/Translate/resources/images/expand-ltr.svg b/MLEB/Translate/resources/images/expand-ltr.svg
index 87ea35f0..bffe869c 100644
--- a/MLEB/Translate/resources/images/expand-ltr.svg
+++ b/MLEB/Translate/resources/images/expand-ltr.svg
@@ -1,51 +1,6 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-
-<svg
- xmlns:dc="http://purl.org/dc/elements/1.1/"
- xmlns:cc="http://creativecommons.org/ns#"
- xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
- xmlns:svg="http://www.w3.org/2000/svg"
- xmlns="http://www.w3.org/2000/svg"
- version="1.1"
- width="16"
- height="12"
- id="svg17805">
- <defs
- id="defs17807" />
- <metadata
- id="metadata17810">
- <rdf:RDF>
- <cc:Work
- rdf:about="">
- <dc:format>image/svg+xml</dc:format>
- <dc:type
- rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
- <dc:title></dc:title>
- </cc:Work>
- </rdf:RDF>
- </metadata>
- <g
- transform="translate(-159.64355,-103.30805)"
- id="layer1">
- <rect
- width="4.2944264"
- height="9.2567539"
- x="170.16307"
- y="104.72025"
- id="rect8020-7-3-7"
- style="color:#000000;fill:#b9b9b9;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.5;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
- <rect
- width="14.63288"
- height="10.276761"
- x="160.32709"
- y="104.16966"
- id="rect6062-5-54-4"
- style="color:#000000;fill:none;stroke:#2e3436;stroke-width:1.36711919;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
- <path
- d="M 8.40625,2.21875 7.5625,3.0625 l 2.28125,2.25 -5.71875,0 0,1.1875 5.78125,0 L 7.625,8.78125 8.46875,9.625 l 3.25,-3.25 0.40625,-0.40625 -0.40625,-0.4375 -3.3125,-3.3125 z"
- transform="translate(159.64355,103.30805)"
- id="path8014-1-9-7"
- style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#2e3436;fill-opacity:1;stroke:none;stroke-width:1.18803263;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" />
- </g>
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg" width="16" height="12" viewBox="0 0 16 12">
+ <path fill="#a2a9b1" d="M10.52 1.412h4.293v9.257H10.52z" overflow="visible"/>
+ <path fill="none" stroke="#222" stroke-width="1.367" d="M.683.862h14.633V11.14H.683z" overflow="visible"/>
+ <path fill="#222" d="M8.406 2.22l-.844.842 2.282 2.25h-5.72V6.5h5.782l-2.28 2.28.843.845 3.25-3.25.405-.406-.406-.44-3.314-3.31z" overflow="visible"/>
</svg>
diff --git a/MLEB/Translate/resources/images/expand-rtl.png b/MLEB/Translate/resources/images/expand-rtl.png
deleted file mode 100644
index 7b45bbac..00000000
--- a/MLEB/Translate/resources/images/expand-rtl.png
+++ /dev/null
Binary files differ
diff --git a/MLEB/Translate/resources/images/expand-rtl.svg b/MLEB/Translate/resources/images/expand-rtl.svg
index 7f1ded58..d65d5660 100644
--- a/MLEB/Translate/resources/images/expand-rtl.svg
+++ b/MLEB/Translate/resources/images/expand-rtl.svg
@@ -1,53 +1,6 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-
-<svg
- xmlns:dc="http://purl.org/dc/elements/1.1/"
- xmlns:cc="http://creativecommons.org/ns#"
- xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
- xmlns:svg="http://www.w3.org/2000/svg"
- xmlns="http://www.w3.org/2000/svg"
- version="1.1"
- width="16"
- height="12"
- id="svg17805">
- <defs
- id="defs17807" />
- <metadata
- id="metadata17810">
- <rdf:RDF>
- <cc:Work
- rdf:about="">
- <dc:format>image/svg+xml</dc:format>
- <dc:type
- rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
- <dc:title></dc:title>
- </cc:Work>
- </rdf:RDF>
- </metadata>
- <g
- transform="translate(-159.64355,-103.30805)"
- id="layer1">
- <rect
- width="4.2944264"
- height="9.2567539"
- x="-165.12401"
- y="104.72025"
- transform="scale(-1,1)"
- id="rect8020-7-3-7"
- style="color:#000000;fill:#b9b9b9;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.5;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
- <rect
- width="14.63288"
- height="10.276761"
- x="-174.96001"
- y="104.16966"
- transform="scale(-1,1)"
- id="rect6062-5-54-4"
- style="color:#000000;fill:none;stroke:#2e3436;stroke-width:1.36711919;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
- <path
- d="M 7.5625,2.21875 4.25,5.53125 3.84375,5.96875 4.25,6.375 7.5,9.625 8.34375,8.78125 6.09375,6.5 l 5.75,0 0,-1.1875 -5.6875,0 2.25,-2.25 L 7.5625,2.21875 z"
- transform="translate(159.64355,103.30805)"
- id="path8014-1-9-7"
- style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#2e3436;fill-opacity:1;stroke:none;stroke-width:1.18803263;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" />
- </g>
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg" width="16" height="12" viewBox="0 0 16 12">
+ <path fill="#a2a9b1" d="M5.48 1.412H1.186v9.257H5.48z" overflow="visible"/>
+ <path fill="none" stroke="#222" stroke-width="1.367" d="M15.316.862H.683V11.14h14.633z" overflow="visible"/>
+ <path fill="#222" d="M7.563 2.22L4.25 5.53l-.406.44.406.405 3.25 3.25.844-.844-2.25-2.28h5.75V5.312H6.156l2.25-2.25-.844-.843z" overflow="visible"/>
</svg>
diff --git a/MLEB/Translate/resources/images/help.png b/MLEB/Translate/resources/images/help.png
deleted file mode 100644
index f1bc368d..00000000
--- a/MLEB/Translate/resources/images/help.png
+++ /dev/null
Binary files differ
diff --git a/MLEB/Translate/resources/images/help.svg b/MLEB/Translate/resources/images/help.svg
deleted file mode 100644
index 13b20271..00000000
--- a/MLEB/Translate/resources/images/help.svg
+++ /dev/null
@@ -1 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="16" height="16"><defs><linearGradient id="a"><stop offset="0" stop-color="#6bb8e8"/><stop offset="1" stop-color="#45a5e2"/></linearGradient><linearGradient x1="2.445" y1="2.365" x2="13.632" y2="13.552" id="b" xlink:href="#a" gradientUnits="userSpaceOnUse"/></defs><g><path d="M15.982 8.01a7.946 7.946 0 1 1-15.893 0 7.946 7.946 0 1 1 15.892 0z" transform="matrix(1.007 0 0 1.007 -.089 -.063)" fill="url(#b)" fill-rule="evenodd"/><path d="M8.604 9.393H6.64v-.267c0-.297.06-.56.18-.79.12-.23.37-.525.756-.88l.348-.316c.207-.188.357-.366.45-.533.1-.167.148-.334.148-.5 0-.254-.087-.452-.26-.593-.175-.146-.418-.218-.73-.218-.294 0-.61.062-.952.185-.34.12-.696.3-1.066.54V4.31c.438-.15.84-.264 1.202-.336.363-.073.713-.11 1.05-.11.885 0 1.56.182 2.024.545.464.358.696.884.696 1.577 0 .355-.07.675-.212.957-.14.28-.382.58-.723.904l-.348.31c-.246.225-.408.406-.484.544-.076.134-.114.283-.114.446v.245m-1.964.805h1.964v1.937H6.64v-1.937" style="-inkscape-font-specification:Sans Bold" font-size="11.143" font-weight="bold" letter-spacing="0" word-spacing="0" fill="#fff" font-family="Sans"/></g></svg>
diff --git a/MLEB/Translate/resources/images/label-clock.png b/MLEB/Translate/resources/images/label-clock.png
deleted file mode 100644
index d1ef6faa..00000000
--- a/MLEB/Translate/resources/images/label-clock.png
+++ /dev/null
Binary files differ
diff --git a/MLEB/Translate/resources/images/label-clock.svg b/MLEB/Translate/resources/images/label-clock.svg
index b5a2aa42..d1bd36d9 100644
--- a/MLEB/Translate/resources/images/label-clock.svg
+++ b/MLEB/Translate/resources/images/label-clock.svg
@@ -1,28 +1,5 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-
-<svg
- xmlns:dc="http://purl.org/dc/elements/1.1/"
- xmlns:cc="http://creativecommons.org/ns#"
- xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
- xmlns:svg="http://www.w3.org/2000/svg"
- xmlns="http://www.w3.org/2000/svg"
- version="1.1"
- width="15"
- height="15"
- viewBox="0 0 15 15"
- id="svg17805"
- xml:space="preserve"><metadata
- id="metadata9"><rdf:RDF><cc:Work
- rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
- rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
- id="defs7" />
-<path
- d="m 7.5,0.125 c -4.059,0 -7.375,3.316 -7.375,7.375 0,4.059 3.316,7.375 7.375,7.375 4.059,0 7.375,-3.316 7.375,-7.375 0,-4.059 -3.316,-7.375 -7.375,-7.375 z m 0,1.768 c 3.104,0 5.607,2.504 5.607,5.607 0,3.103 -2.504,5.607 -5.607,5.607 -3.103,0 -5.607,-2.503 -5.607,-5.607 0,-3.104 2.503,-5.607 5.607,-5.607 z"
- id="path4660-7-2-3-3"
- style="fill:#565656" />
-<path
- d="m 6.708,2.991 v 4.552 0.764 0.446 h 3.428 V 7.543 H 7.918 V 2.991 h -1.21 z"
- id="rect4662-1-2-3-46"
- style="fill:#565656" />
-</svg> \ No newline at end of file
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg" width="15" height="15" viewBox="0 0 15 15">
+ <path fill="#54595d" d="M7.5.125C3.44.125.125 3.44.125 7.5c0 4.06 3.316 7.375 7.375 7.375 4.06 0 7.375-3.316 7.375-7.375C14.875 3.44 11.56.125 7.5.125zm0 1.768c3.104 0 5.607 2.504 5.607 5.607s-2.504 5.607-5.607 5.607S1.893 10.604 1.893 7.5 4.396 1.893 7.5 1.893z"/>
+ <path fill="#54595d" d="M6.708 2.99v5.763h3.428v-1.21H7.918V2.99h-1.21z"/>
+</svg>
diff --git a/MLEB/Translate/resources/images/label-flag.png b/MLEB/Translate/resources/images/label-flag.png
deleted file mode 100644
index e7744702..00000000
--- a/MLEB/Translate/resources/images/label-flag.png
+++ /dev/null
Binary files differ
diff --git a/MLEB/Translate/resources/images/label-flag.svg b/MLEB/Translate/resources/images/label-flag.svg
index e98ff32e..2ba48b7e 100644
--- a/MLEB/Translate/resources/images/label-flag.svg
+++ b/MLEB/Translate/resources/images/label-flag.svg
@@ -1,29 +1,4 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-
-<svg
- xmlns:dc="http://purl.org/dc/elements/1.1/"
- xmlns:cc="http://creativecommons.org/ns#"
- xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
- xmlns:svg="http://www.w3.org/2000/svg"
- xmlns="http://www.w3.org/2000/svg"
- version="1.1"
- width="15"
- height="15"
- viewBox="0 0 15 15"
- id="svg17805"
- xml:space="preserve"><metadata
- id="metadata8"><rdf:RDF><cc:Work
- rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
- rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
- id="defs6" />
-
-<g
- transform="translate(-159.64355,-100.30805)"
- id="layer1">
- <path
- d="m 162.081,102.058 v 6.469 h 8.844 v 5.031 h 1.281 v -5.031 -6.062 -0.406 h -10.125 z"
- id="rect8962-1"
- style="fill:#565656" />
-</g>
-</svg> \ No newline at end of file
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg" width="15" height="15" viewBox="0 0 15 15">
+ <path fill="#54595d" d="M2.437 1.75v6.47h8.844v5.03h1.282V1.75H2.437z"/>
+</svg>
diff --git a/MLEB/Translate/resources/images/label-page-tick.png b/MLEB/Translate/resources/images/label-page-tick.png
deleted file mode 100644
index da5cd0f2..00000000
--- a/MLEB/Translate/resources/images/label-page-tick.png
+++ /dev/null
Binary files differ
diff --git a/MLEB/Translate/resources/images/label-page-tick.svg b/MLEB/Translate/resources/images/label-page-tick.svg
deleted file mode 100644
index bdd25395..00000000
--- a/MLEB/Translate/resources/images/label-page-tick.svg
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-
-<svg
- xmlns:dc="http://purl.org/dc/elements/1.1/"
- xmlns:cc="http://creativecommons.org/ns#"
- xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
- xmlns:svg="http://www.w3.org/2000/svg"
- xmlns="http://www.w3.org/2000/svg"
- version="1.1"
- width="15"
- height="15"
- viewBox="0 0 15 15"
- id="svg17805"
- xml:space="preserve"><metadata
- id="metadata12"><rdf:RDF><cc:Work
- rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
- rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
- id="defs10" />
-<g
- transform="translate(-159.64355,-100.30805)"
- id="layer1">
- <g
- transform="translate(-279.58355,-315.7339)"
- id="g18113">
- <path
- d="m 440.281,419.25 v 0.562 9.656 0.532 h 0.531 9.657 0.531 v -0.531 -9.656 -0.562 h -0.531 -9.657 -0.531 z m 1.063,1.094 h 8.594 v 8.594 h -8.594 v -8.594 z"
- id="rect8974-9-6-80-1"
- style="fill:#565656" />
- <path
- d="m 447.443,421.423 -2.858,4.925 -1.12,-0.826 -0.878,1.171 1.791,1.326 0.655,0.482 0.413,-0.707 3.254,-5.648 -1.257,-0.723 z"
- id="path12436-0-1-2-8-1-9-2-0-5-7"
- style="fill:#565656" />
- <path
- d="m 442.438,417.094 v 0.531 2.156 0.531 h 0.562 6.938 v 6.969 0.531 h 0.562 2.156 0.531 v -0.531 -9.656 -0.531 H 452.656 443 442.438 z m 1.093,1.062 h 8.563 v 8.594 h -1.062 v -6.969 -0.531 h -0.531 -6.969 v -1.094 z"
- id="rect8974-5-0-4-9"
- style="fill:#565656" />
- </g>
-</g>
-</svg> \ No newline at end of file
diff --git a/MLEB/Translate/resources/images/label-page.png b/MLEB/Translate/resources/images/label-page.png
deleted file mode 100644
index ccead8ad..00000000
--- a/MLEB/Translate/resources/images/label-page.png
+++ /dev/null
Binary files differ
diff --git a/MLEB/Translate/resources/images/label-page.svg b/MLEB/Translate/resources/images/label-page.svg
deleted file mode 100644
index 6d95932e..00000000
--- a/MLEB/Translate/resources/images/label-page.svg
+++ /dev/null
@@ -1,42 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-
-<svg
- xmlns:dc="http://purl.org/dc/elements/1.1/"
- xmlns:cc="http://creativecommons.org/ns#"
- xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
- xmlns:svg="http://www.w3.org/2000/svg"
- xmlns="http://www.w3.org/2000/svg"
- version="1.1"
- width="15"
- height="15"
- viewBox="0 0 15 15"
- id="svg17805"
- xml:space="preserve"><metadata
- id="metadata10"><rdf:RDF><cc:Work
- rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
- rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
- id="defs8" />
-
-<g
- transform="translate(-159.64355,-100.30805)"
- id="layer1">
- <g
- transform="translate(-279.14083,-255.12502)"
- id="g18109">
-
- <rect
- width="9.6630001"
- height="9.6630001"
- x="440.36801"
- y="359.19199"
- id="rect8974-9-6-80-1-7"
- style="fill:none;stroke:#565656;stroke-width:1.07369995;stroke-linecap:round" />
-
- <path
- d="m 442.544,357.012 v 2.156 h 7.5 v 7.5 h 2.156 v -9.656 h -9.656 z"
- id="rect8974-5-0-4-9-8"
- style="fill:none;stroke:#565656;stroke-width:1.07369995;stroke-linecap:round" />
- </g>
-</g>
-</svg> \ No newline at end of file
diff --git a/MLEB/Translate/resources/images/label-pen.png b/MLEB/Translate/resources/images/label-pen.png
deleted file mode 100644
index bda1d7e1..00000000
--- a/MLEB/Translate/resources/images/label-pen.png
+++ /dev/null
Binary files differ
diff --git a/MLEB/Translate/resources/images/label-pen.svg b/MLEB/Translate/resources/images/label-pen.svg
index 8e61dd86..715470d0 100644
--- a/MLEB/Translate/resources/images/label-pen.svg
+++ b/MLEB/Translate/resources/images/label-pen.svg
@@ -1,29 +1,4 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-
-<svg
- xmlns:dc="http://purl.org/dc/elements/1.1/"
- xmlns:cc="http://creativecommons.org/ns#"
- xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
- xmlns:svg="http://www.w3.org/2000/svg"
- xmlns="http://www.w3.org/2000/svg"
- version="1.1"
- width="15"
- height="15"
- viewBox="0 0 15 15"
- id="svg17805"
- xml:space="preserve"><metadata
- id="metadata8"><rdf:RDF><cc:Work
- rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
- rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
- id="defs6" />
-
-<g
- transform="translate(-159.64355,-100.30805)"
- id="layer1">
- <path
- d="m 169.469,102.283 -6.218,8.888 h -0.015 l -0.189,2.163 1.975,-0.921 6.218,-8.888 -1.771,-1.244 v 0.002 z"
- id="rect8752-2-8-5-49-6-2-0-2-5-4-0-4-5-8-7-6-4-94-6-2-8-0-2-6-8-9"
- style="fill:#565656" />
-</g>
-</svg> \ No newline at end of file
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg" width="15" height="15" viewBox="0 0 15 15">
+ <path fill="#54595d" d="M9.825 1.975l-6.218 8.888h-.015l-.19 2.163 1.976-.92 6.218-8.89-1.77-1.243v.002z"/>
+</svg>
diff --git a/MLEB/Translate/resources/images/label-tick.png b/MLEB/Translate/resources/images/label-tick.png
deleted file mode 100644
index a729fd4f..00000000
--- a/MLEB/Translate/resources/images/label-tick.png
+++ /dev/null
Binary files differ
diff --git a/MLEB/Translate/resources/images/label-tick.svg b/MLEB/Translate/resources/images/label-tick.svg
index 59de0e2a..44326a0c 100644
--- a/MLEB/Translate/resources/images/label-tick.svg
+++ b/MLEB/Translate/resources/images/label-tick.svg
@@ -1,29 +1,4 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-
-<svg
- xmlns:dc="http://purl.org/dc/elements/1.1/"
- xmlns:cc="http://creativecommons.org/ns#"
- xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
- xmlns:svg="http://www.w3.org/2000/svg"
- xmlns="http://www.w3.org/2000/svg"
- version="1.1"
- width="15"
- height="15"
- viewBox="0 0 15 15"
- id="svg17805"
- xml:space="preserve"><metadata
- id="metadata8"><rdf:RDF><cc:Work
- rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
- rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
- id="defs6" />
-
-<g
- transform="translate(-159.64355,-100.30805)"
- id="layer1">
- <path
- d="m 170.409,101.386 -5.188,8.938 -2.031,-1.5 -1.594,2.125 3.25,2.406 1.188,0.875 0.75,-1.281 5.906,-10.25 -2.281,-1.313 z"
- id="path12436-0-1-2-8-1-9-2-0"
- style="fill:#565656" />
-</g>
-</svg> \ No newline at end of file
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg" width="15" height="15" viewBox="0 0 15 15">
+ <path fill="#54595d" d="M10.765 1.078l-5.188 8.938-2.03-1.5L1.95 10.64l3.25 2.407 1.188.875.75-1.28 5.906-10.25-2.28-1.314z"/>
+</svg>
diff --git a/MLEB/Translate/resources/images/loading.svg b/MLEB/Translate/resources/images/loading.svg
index 92f84cde..7aa88cb4 100644
--- a/MLEB/Translate/resources/images/loading.svg
+++ b/MLEB/Translate/resources/images/loading.svg
@@ -1,39 +1,7 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-
-<svg
- xmlns:dc="http://purl.org/dc/elements/1.1/"
- xmlns:cc="http://creativecommons.org/ns#"
- xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
- xmlns:svg="http://www.w3.org/2000/svg"
- xmlns="http://www.w3.org/2000/svg"
- version="1.1"
- width="34"
- height="34.03125"
- id="svg9613">
- <defs
- id="defs9615" />
- <metadata
- id="metadata9618">
- <rdf:RDF>
- <cc:Work
- rdf:about="">
- <dc:format>image/svg+xml</dc:format>
- <dc:type
- rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
- <dc:title></dc:title>
- </cc:Work>
- </rdf:RDF>
- </metadata>
- <g
- id="g2987">
- <path
- d="m 16.977523,0.24095147 c -9.2629169,0 -16.73280045,7.51449143 -16.73280045,16.77740253 0,9.262912 7.46988355,16.777403 16.73280045,16.777403 9.262917,0 16.777413,-7.514491 16.777413,-16.777403 0,-9.2629111 -7.514496,-16.77740253 -16.777413,-16.77740253 z m 0,4.14972823 c 6.966927,0 12.627682,5.6607523 12.627682,12.6276743 0,6.966923 -5.660755,12.583053 -12.627682,12.583053 -6.966937,0 -12.5830596,-5.61613 -12.5830596,-12.583053 0,-6.966922 5.6161226,-12.6276743 12.5830596,-12.6276743 z"
- id="path15290-7-0-9-5-1-59-0-3-2"
- style="color:#000000;fill:#000000;fill-opacity:0.08333333;fill-rule:nonzero;stroke:#565656;stroke-width:0.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:0.19607843;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
- <path
- d="M 31.677259,17.003529 A 14.680208,14.680199 0 0 1 20.796571,31.183505"
- id="path15290-6-0-6-1-0-0-16-1-0-06"
- style="color:#000000;fill:none;stroke:#3366bb;stroke-width:2.2583456;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
- </g>
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg" width="34" height="34.031">
+ <g color="#000">
+ <path fill-opacity=".083" stroke="#54595d" stroke-opacity=".196" stroke-width=".5" d="M16.978.24C7.715.24.245 7.756.245 17.02c0 9.263 7.47 16.778 16.733 16.778 9.262 0 16.777-7.515 16.777-16.778C33.755 7.755 26.24.24 16.978.24zm0 4.15c6.966 0 12.627 5.66 12.627 12.628 0 6.967-5.66 12.583-12.627 12.583-6.967 0-12.584-5.615-12.584-12.582 0-6.967 5.617-12.627 12.584-12.627z" overflow="visible"/>
+ <path fill="none" stroke="#36c" stroke-width="2.258" d="M31.677 17.004a14.68 14.68 0 0 1-10.88 14.18" stroke-linecap="round" overflow="visible"/>
+ </g>
</svg>
diff --git a/MLEB/Translate/resources/images/outdated-ltr.png b/MLEB/Translate/resources/images/outdated-ltr.png
deleted file mode 100644
index debc4b24..00000000
--- a/MLEB/Translate/resources/images/outdated-ltr.png
+++ /dev/null
Binary files differ
diff --git a/MLEB/Translate/resources/images/outdated-ltr.svg b/MLEB/Translate/resources/images/outdated-ltr.svg
index c082fda4..cf0fe1dc 100644
--- a/MLEB/Translate/resources/images/outdated-ltr.svg
+++ b/MLEB/Translate/resources/images/outdated-ltr.svg
@@ -1,32 +1,6 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-
-<svg
- xmlns:dc="http://purl.org/dc/elements/1.1/"
- xmlns:cc="http://creativecommons.org/ns#"
- xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
- xmlns:svg="http://www.w3.org/2000/svg"
- xmlns="http://www.w3.org/2000/svg"
- version="1.1"
- width="33.389"
- height="22.857"
- viewBox="0 0 33.389 22.857"
- id="svg2"
- xml:space="preserve"><metadata
- id="metadata10"><rdf:RDF><cc:Work
- rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
- rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
- id="defs8" />
-<path
- d="m 0,0 h 25.922 l 7.467,11.429 -7.467,11.429 H 0 V 0 z"
- id="rect12220-2"
- style="fill:#fef4ba" />
-<path
- d="m 17.981,4.357 c -4.06,0 -7.375,3.316 -7.375,7.375 0,4.059 3.315,7.375 7.375,7.375 4.059,0 7.375,-3.316 7.375,-7.375 0,-4.059 -3.316,-7.375 -7.375,-7.375 z m 0,1.768 c 3.104,0 5.607,2.504 5.607,5.607 0,3.103 -2.504,5.607 -5.607,5.607 -3.103,0 -5.607,-2.504 -5.607,-5.607 0,-3.103 2.504,-5.607 5.607,-5.607 z"
- id="path4660-7-2-3-7-0-0"
- style="fill:#565656" />
-<path
- d="m 17.189,7.223 v 4.552 0.764 0.446 h 3.428 v -1.21 H 18.399 V 7.223 h -1.21 z"
- id="rect4662-1-2-3-7-4-3"
- style="fill:#565656" />
-</svg> \ No newline at end of file
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg" width="33.389" height="22.857" viewBox="0 0 33.389 22.857">
+ <path fill="#fef4ba" d="M0 0h25.922l7.467 11.43-7.468 11.428H0V0z"/>
+ <path fill="#54595d" d="M17.98 4.357c-4.06 0-7.374 3.316-7.374 7.375 0 4.06 3.315 7.375 7.375 7.375 4.06 0 7.376-3.316 7.376-7.375 0-4.06-3.316-7.375-7.375-7.375zm0 1.768c3.105 0 5.608 2.504 5.608 5.607s-2.504 5.607-5.607 5.607c-3.102 0-5.606-2.505-5.606-5.608 0-3.103 2.504-5.607 5.607-5.607z"/>
+ <path fill="#54595d" d="M17.19 7.223v5.761h3.427v-1.21H18.4V7.223h-1.21z"/>
+</svg>
diff --git a/MLEB/Translate/resources/images/outdated-rtl.png b/MLEB/Translate/resources/images/outdated-rtl.png
deleted file mode 100644
index df66f7e5..00000000
--- a/MLEB/Translate/resources/images/outdated-rtl.png
+++ /dev/null
Binary files differ
diff --git a/MLEB/Translate/resources/images/outdated-rtl.svg b/MLEB/Translate/resources/images/outdated-rtl.svg
index 1eeeab78..13bcacd8 100644
--- a/MLEB/Translate/resources/images/outdated-rtl.svg
+++ b/MLEB/Translate/resources/images/outdated-rtl.svg
@@ -1,32 +1,6 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-
-<svg
- xmlns:dc="http://purl.org/dc/elements/1.1/"
- xmlns:cc="http://creativecommons.org/ns#"
- xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
- xmlns:svg="http://www.w3.org/2000/svg"
- xmlns="http://www.w3.org/2000/svg"
- version="1.1"
- width="33.389"
- height="22.857"
- viewBox="0 0 33.389 22.857"
- id="svg2"
- xml:space="preserve"><metadata
- id="metadata10"><rdf:RDF><cc:Work
- rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
- rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
- id="defs8" />
-<path
- d="M 33.389,0 H 7.467 L 0,11.429 7.467,22.858 H 33.389 V 0 z"
- id="rect12220-2"
- style="fill:#fef4ba" />
-<path
- d="m 15.408,4.357 c -4.06,0 -7.375,3.316 -7.375,7.375 0,4.059 3.315,7.375 7.375,7.375 4.059,0 7.375,-3.316 7.375,-7.375 0,-4.059 -3.316,-7.375 -7.375,-7.375 z m 0,1.768 c 3.104,0 5.607,2.504 5.607,5.607 0,3.103 -2.504,5.607 -5.607,5.607 -3.103,0 -5.607,-2.504 -5.607,-5.607 0,-3.103 2.504,-5.607 5.607,-5.607 z"
- id="path4660-7-2-3-7-0-0"
- style="fill:#565656" />
-<path
- d="m 14.616,7.223 v 4.552 0.764 0.446 h 3.428 v -1.21 H 15.826 V 7.223 h -1.21 z"
- id="rect4662-1-2-3-7-4-3"
- style="fill:#565656" />
-</svg> \ No newline at end of file
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg" width="33.389" height="22.857" viewBox="0 0 33.389 22.857">
+ <path fill="#fef4ba" d="M33.39 0H7.466L0 11.43l7.467 11.428H33.39V0z"/>
+ <path fill="#54595d" d="M15.408 4.357c-4.06 0-7.375 3.316-7.375 7.375 0 4.06 3.315 7.375 7.375 7.375 4.06 0 7.375-3.316 7.375-7.375 0-4.06-3.316-7.375-7.375-7.375zm0 1.768c3.104 0 5.607 2.504 5.607 5.607s-2.504 5.607-5.607 5.607S9.8 14.834 9.8 11.73c0-3.103 2.505-5.607 5.608-5.607z"/>
+ <path fill="#54595d" d="M14.616 7.223v5.761h3.428v-1.21h-2.218V7.223h-1.21z"/>
+</svg>
diff --git a/MLEB/Translate/resources/images/paste.png b/MLEB/Translate/resources/images/paste.png
deleted file mode 100644
index bbade5d4..00000000
--- a/MLEB/Translate/resources/images/paste.png
+++ /dev/null
Binary files differ
diff --git a/MLEB/Translate/resources/images/paste.svg b/MLEB/Translate/resources/images/paste.svg
index 38373db2..932c4b22 100644
--- a/MLEB/Translate/resources/images/paste.svg
+++ b/MLEB/Translate/resources/images/paste.svg
@@ -1,17 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 15.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
- width="32px" height="32px" viewBox="0 0 32 32" enable-background="new 0 0 32 32" xml:space="preserve">
-<g>
- <path fill="#6D6E71" d="M29.077,29.012c0,1.061-0.859,1.92-1.92,1.92H4.844c-1.061,0-1.921-0.859-1.921-1.92V4.043
- c0-1.061,0.86-1.92,1.921-1.92h22.313c1.061,0,1.92,0.859,1.92,1.92V29.012z"/>
-
- <rect x="5.368" y="4.054" fill="#F1F2F2" stroke="#58595B" stroke-width="0.5" stroke-miterlimit="10" width="21" height="24.349"/>
- <rect x="7.743" y="8.896" fill="#A7A9AC" width="15.625" height="2.872"/>
- <rect x="7.743" y="15.09" fill="#A7A9AC" width="15.625" height="2.875"/>
- <rect x="7.743" y="21.287" fill="#A7A9AC" width="6.125" height="2.873"/>
- <polygon fill="#414042" points="18.646,2.814 18.646,1.068 13.354,1.068 13.354,2.814 10.459,2.814 10.459,5.152 21.542,5.152
- 21.542,2.814 "/>
-</g>
+<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32">
+ <path fill="#54595d" d="M29.077 29.012c0 1.06-.86 1.92-1.92 1.92H4.844c-1.06 0-1.92-.86-1.92-1.92V4.042c0-1.06.86-1.92 1.92-1.92h22.313c1.06 0 1.92.86 1.92 1.92v24.97z"/>
+ <path fill="#f8f9fa" stroke="#54595d" stroke-width=".5" stroke-miterlimit="10" d="M5.368 4.054h21v24.35h-21z"/>
+ <path fill="#a2a9b1" d="M7.743 8.896h15.625v2.872H7.743zM7.743 15.09h15.625v2.875H7.743zM7.743 21.287h6.125v2.873H7.743z"/>
+ <path fill="#414042" d="M18.646 2.814V1.068h-5.292v1.746H10.46v2.338H21.54V2.814"/>
</svg>
diff --git a/MLEB/Translate/resources/images/plus_darkgray.png b/MLEB/Translate/resources/images/plus_darkgray.png
deleted file mode 100644
index 4780479e..00000000
--- a/MLEB/Translate/resources/images/plus_darkgray.png
+++ /dev/null
Binary files differ
diff --git a/MLEB/Translate/resources/images/plus_darkgray.svg b/MLEB/Translate/resources/images/plus_darkgray.svg
index abedfc22..5cf4e598 100644
--- a/MLEB/Translate/resources/images/plus_darkgray.svg
+++ b/MLEB/Translate/resources/images/plus_darkgray.svg
@@ -1 +1,4 @@
-<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1024 768" enable-background="new 0 0 1024 768"><path fill="#555" d="M870.5 445.2v-122.4h-297.3v-297.3h-122.4v297.3h-297.3v122.4h297.3v297.3h122.4v-297.3z"/></svg>
+<?xml version="1.0" encoding="utf-8"?>
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1024 768">
+ <path fill="#54595d" d="M870.5 445.2V322.8H573.2V25.5H450.8v297.3H153.5v122.4h297.3v297.3h122.4V445.2z"/>
+</svg>
diff --git a/MLEB/Translate/resources/images/prog-3.png b/MLEB/Translate/resources/images/prog-3.png
index f560c348..bfba1464 100644
--- a/MLEB/Translate/resources/images/prog-3.png
+++ b/MLEB/Translate/resources/images/prog-3.png
Binary files differ
diff --git a/MLEB/Translate/resources/images/prog-4.png b/MLEB/Translate/resources/images/prog-4.png
index d556b5b3..132ee756 100644
--- a/MLEB/Translate/resources/images/prog-4.png
+++ b/MLEB/Translate/resources/images/prog-4.png
Binary files differ
diff --git a/MLEB/Translate/resources/images/prog-5.png b/MLEB/Translate/resources/images/prog-5.png
index 8a12f3d7..8b86fbb4 100644
--- a/MLEB/Translate/resources/images/prog-5.png
+++ b/MLEB/Translate/resources/images/prog-5.png
Binary files differ
diff --git a/MLEB/Translate/resources/images/project.png b/MLEB/Translate/resources/images/project.png
deleted file mode 100644
index b8b9462c..00000000
--- a/MLEB/Translate/resources/images/project.png
+++ /dev/null
Binary files differ
diff --git a/MLEB/Translate/resources/images/project.svg b/MLEB/Translate/resources/images/project.svg
index 64ec16b2..0e7a128b 100644
--- a/MLEB/Translate/resources/images/project.svg
+++ b/MLEB/Translate/resources/images/project.svg
@@ -1,66 +1,13 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-
-<svg
- xmlns:dc="http://purl.org/dc/elements/1.1/"
- xmlns:cc="http://creativecommons.org/ns#"
- xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
- xmlns:svg="http://www.w3.org/2000/svg"
- xmlns="http://www.w3.org/2000/svg"
- version="1.1"
- width="32"
- height="32"
- viewBox="0 0 32 32"
- id="svg3945"
- xml:space="preserve"><metadata
- id="metadata18"><rdf:RDF><cc:Work
- rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
- rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
- id="defs16" />
-<g
- transform="translate(-355.875,-530.20145)"
- id="layer1">
- <g
- id="g3815">
-
- <rect
- width="13.336"
- height="6.4949999"
- x="373.173"
- y="532.79199"
- id="rect4026-0-8-9-6-6-2-1-4-7-7-2-4-7-6"
- style="fill:#ffffff;fill-opacity:0.675;stroke:#c9c9c9;stroke-width:0.2572;stroke-linecap:round" />
-
- <linearGradient
- x1="716.99408"
- y1="-394.2966"
- x2="716.99408"
- y2="-422.53201"
- id="rect3213-2-4-3-9-5-6-8-3-5-6_1_"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(1.0287,0,0,-1.0287,-365.6989,126.7675)">
- <stop
- id="stop7"
- style="stop-color:#f4f4f4;stop-opacity:1"
- offset="0" />
- <stop
- id="stop9"
- style="stop-color:#dddddd;stop-opacity:1"
- offset="1" />
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32" xml:space="preserve">
+ <g transform="translate(-355.875,-530.20145)">
+ <rect width="13.336" height="6.4949999" x="373.173" y="532.79199" style="fill:#fff;fill-opacity:0.675;stroke:#c9c9c9;stroke-width:0.2572;stroke-linecap:round"/>
+ <linearGradient id="a" x1="716.99408" y1="-394.2966" x2="716.99408" y2="-422.53201" gradientUnits="userSpaceOnUse" gradientTransform="matrix(1.0287,0,0,-1.0287,-365.6989,126.7675)">
+ <stop style="stop-color:#f4f4f4;stop-opacity:1" offset="0"/>
+ <stop style="stop-color:#dddddd;stop-opacity:1" offset="1"/>
</linearGradient>
-
- <path
- d="m 356.261,530.587 h 16.295 l 6.267,6.267 h 8.667 v 24.962 h -31.229 v -31.229 z"
- id="rect3213-2-4-3-9-5-6-8-3-5-6"
- style="fill:url(#rect3213-2-4-3-9-5-6-8-3-5-6_1_);stroke:#9d9d9d;stroke-width:0.77149999;stroke-linecap:square" />
- <path
- d="m 381.718,548.951 c 0.006,5.437 -4.396,9.848 -9.832,9.854 -5.436,0.006 -9.847,-4.396 -9.854,-9.831 0,-0.008 0,-0.016 0,-0.022 -0.006,-5.436 4.396,-9.847 9.832,-9.854 5.436,-0.006 9.847,4.396 9.854,9.832 0,0.006 0,0.014 0,0.021 z"
- id="path5753-1-5-3-9-8-2-7-5-8"
- style="fill:#f0f0f0;stroke:#6d6d6d;stroke-width:0.84439999;stroke-linecap:round" />
- <path
- d="m 372.031,541.108 c -0.825,0.023 -2.344,0.219 -2.344,0.219 0,0 0.25,0.477 0.25,0.688 0,0.211 -0.062,0.778 -0.062,1.031 0,0.253 0.925,0.053 1.094,-0.031 0.169,-0.084 1.281,-1.062 1.281,-1.062 0,0 0.408,-0.612 0.281,-0.781 -0.031,-0.044 -0.225,-0.072 -0.5,-0.064 l 0,0 z m -4.469,0.718 c 0.06,0.656 0.844,1.094 0.844,1.094 l 0.125,-0.438 c 0,10e-4 -0.67,-0.656 -0.969,-0.656 z m -0.781,0.438 c 0,0 -0.406,0.347 -1.062,0.406 -0.247,0.022 -0.745,-0.072 -1.281,-0.156 -1.188,1.37 -1.995,3.062 -2.281,4.938 l 0.219,-0.312 c 0,0 0.77,1.381 1.188,1.5 0.418,0.119 0.892,0.543 1.25,0.781 0.358,0.238 0.591,1.472 0.531,2.188 -0.06,0.716 0.483,0.804 0.781,1.281 0.298,0.477 0.949,3.326 1.188,3.625 0.239,0.299 0.475,-1.253 0.594,-1.969 0.119,-0.716 1.688,-2.034 1.688,-2.75 0,-0.716 -1.798,-1.736 -2.156,-2.094 -0.358,-0.358 -1.477,-0.531 -2.312,-0.531 -0.835,0 -0.847,-1.128 -1.562,-1.188 -0.715,-0.06 0.125,-1 0.125,-1 0,0 1.958,-0.312 2.375,-0.312 0.417,0 0.54,-1.182 0.719,-1.719 0.179,-0.537 1.506,-0.486 1.625,-0.844 0.119,-0.358 -0.542,-0.719 -0.781,-0.719 -0.239,0 -1.259,0.364 -1.438,0.125 -0.179,-0.239 1.031,-0.969 1.031,-0.969 l -0.441,-0.281 z m 9.063,0 c -0.197,0.016 -0.374,0.052 -0.438,0.094 -0.127,0.084 -0.467,0.216 -0.594,0.406 -0.127,0.19 -0.272,0.624 -0.125,0.75 0.147,0.126 0.26,0.157 0.344,0.094 0.084,-0.063 0.729,-0.616 0.812,-0.531 0.083,0.085 0.283,0.594 0.156,0.594 -0.127,0 -1.031,0.281 -1.031,0.281 0,0 -0.003,-0.171 -0.062,-0.156 -0.06,0.015 -0.003,0.235 -0.062,0.25 -0.06,0.015 -0.844,0.375 -0.844,0.375 0,0 -0.1,0.088 -0.219,0.188 l -0.25,0.25 c -0.006,0.007 -0.027,0.025 -0.031,0.031 -0.06,0.104 -0.39,0.599 -0.375,0.719 0.016,0.119 -0.07,0.375 0.094,0.375 0.164,0 1.27,-0.682 1.344,-0.562 0.074,0.119 0.188,0.125 0.188,0.125 0,0 -0.074,-0.156 0,-0.156 0.074,0 0.562,0.188 0.562,0.188 0,0 -0.073,-0.312 0.031,-0.281 0.104,0.03 0.583,0.594 0.688,0.594 0.105,0 0.358,-0.007 0.344,-0.156 -0.015,-0.149 -0.068,-0.335 0.125,-0.469 0.193,-0.134 0.787,-0.231 0.906,-0.156 0.119,0.074 0.304,0.16 0.125,0.25 -0.18,0.089 -0.396,-0.014 -0.5,0.031 -0.104,0.044 -0.392,0.333 -0.406,0.438 -0.015,0.104 0.561,0.565 0.531,0.625 -0.029,0.06 -0.326,0.344 -0.625,0.344 -0.299,0 -2.484,-0.546 -2.812,-0.531 -0.328,0.015 -0.615,0.099 -0.75,0.219 -0.135,0.119 -0.707,0.648 -0.781,0.812 -0.074,0.164 -0.398,0.957 -0.219,1.375 0.179,0.418 0.584,1.176 1.031,1.25 0.447,0.074 0.99,0.107 1.125,0.062 0.135,-0.045 0.859,0.76 0.875,1.312 0.015,0.552 -0.039,1.938 0.125,2.281 0.164,0.343 0.291,0.982 0.812,0.938 0.521,-0.044 0.945,-0.168 1.125,-0.406 0.179,-0.238 0.678,-1.455 0.812,-2.156 0.134,-0.701 0.754,-1.754 0.844,-2.156 0.09,-0.402 0.102,-0.631 -0.062,-0.75 -0.164,-0.119 -0.485,-0.116 -0.5,-0.25 -0.016,-0.135 0.209,-0.016 0.344,0 0.135,0.015 0.631,-0.022 0.75,-0.156 0.119,-0.135 0.324,-0.571 0.25,-0.75 -0.074,-0.18 -0.406,-0.562 -0.406,-0.562 0,0 1.338,0.161 1.875,0.594 0.312,0.251 0.564,0.577 0.75,0.844 -0.047,-2.462 -0.994,-4.705 -2.531,-6.406 -0.014,0.002 -0.054,0.031 -0.062,0.031 -0.232,0 -2.031,0.344 -2.031,0.344 0,0 -0.393,-0.447 -0.688,-0.469 -0.149,-0.016 -0.367,-0.021 -0.564,-0.005 l 0,0 z m -2.282,1.312 c 0,0 -0.212,0.865 0.094,0.844 0.306,-0.021 -0.094,-0.844 -0.094,-0.844 z m -0.406,0.375 c 0,0 -0.365,0.187 -0.281,0.281 0.084,0.094 0.26,0.147 0.312,0.062 0.052,-0.085 -0.031,-0.343 -0.031,-0.343 l 0,0 z m 5.719,8.094 c -0.121,0.026 -0.265,0.124 -0.344,0.219 -0.079,0.095 -0.198,0.43 -0.156,0.625 0.042,0.195 0.218,0.459 0.281,0.438 0.063,-0.021 0.229,-0.084 0.25,-0.438 0.021,-0.354 0.078,-0.671 0.031,-0.75 -0.047,-0.079 -0.062,-0.094 -0.062,-0.094 l 0,0 z"
- id="path6360-91-0-9-0"
- style="fill:#6d6d6d" />
+ <path d="m 356.261,530.587 h 16.295 l 6.267,6.267 h 8.667 v 24.962 h -31.229 v -31.229 z" style="fill:url(#a);stroke:#9d9d9d;stroke-width:0.77149999;stroke-linecap:square"/>
+ <path d="m 381.718,548.951 c 0.006,5.437 -4.396,9.848 -9.832,9.854 -5.436,0.006 -9.847,-4.396 -9.854,-9.831 0,-0.008 0,-0.016 0,-0.022 -0.006,-5.436 4.396,-9.847 9.832,-9.854 5.436,-0.006 9.847,4.396 9.854,9.832 0,0.006 0,0.014 0,0.021 z" style="fill:#f0f0f0;stroke:#6d6d6d;stroke-width:0.84439999;stroke-linecap:round"/>
+ <path d="m 372.031,541.108 c -0.825,0.023 -2.344,0.219 -2.344,0.219 0,0 0.25,0.477 0.25,0.688 0,0.211 -0.062,0.778 -0.062,1.031 0,0.253 0.925,0.053 1.094,-0.031 0.169,-0.084 1.281,-1.062 1.281,-1.062 0,0 0.408,-0.612 0.281,-0.781 -0.031,-0.044 -0.225,-0.072 -0.5,-0.064 l 0,0 z m -4.469,0.718 c 0.06,0.656 0.844,1.094 0.844,1.094 l 0.125,-0.438 c 0,10e-4 -0.67,-0.656 -0.969,-0.656 z m -0.781,0.438 c 0,0 -0.406,0.347 -1.062,0.406 -0.247,0.022 -0.745,-0.072 -1.281,-0.156 -1.188,1.37 -1.995,3.062 -2.281,4.938 l 0.219,-0.312 c 0,0 0.77,1.381 1.188,1.5 0.418,0.119 0.892,0.543 1.25,0.781 0.358,0.238 0.591,1.472 0.531,2.188 -0.06,0.716 0.483,0.804 0.781,1.281 0.298,0.477 0.949,3.326 1.188,3.625 0.239,0.299 0.475,-1.253 0.594,-1.969 0.119,-0.716 1.688,-2.034 1.688,-2.75 0,-0.716 -1.798,-1.736 -2.156,-2.094 -0.358,-0.358 -1.477,-0.531 -2.312,-0.531 -0.835,0 -0.847,-1.128 -1.562,-1.188 -0.715,-0.06 0.125,-1 0.125,-1 0,0 1.958,-0.312 2.375,-0.312 0.417,0 0.54,-1.182 0.719,-1.719 0.179,-0.537 1.506,-0.486 1.625,-0.844 0.119,-0.358 -0.542,-0.719 -0.781,-0.719 -0.239,0 -1.259,0.364 -1.438,0.125 -0.179,-0.239 1.031,-0.969 1.031,-0.969 l -0.441,-0.281 z m 9.063,0 c -0.197,0.016 -0.374,0.052 -0.438,0.094 -0.127,0.084 -0.467,0.216 -0.594,0.406 -0.127,0.19 -0.272,0.624 -0.125,0.75 0.147,0.126 0.26,0.157 0.344,0.094 0.084,-0.063 0.729,-0.616 0.812,-0.531 0.083,0.085 0.283,0.594 0.156,0.594 -0.127,0 -1.031,0.281 -1.031,0.281 0,0 -0.003,-0.171 -0.062,-0.156 -0.06,0.015 -0.003,0.235 -0.062,0.25 -0.06,0.015 -0.844,0.375 -0.844,0.375 0,0 -0.1,0.088 -0.219,0.188 l -0.25,0.25 c -0.006,0.007 -0.027,0.025 -0.031,0.031 -0.06,0.104 -0.39,0.599 -0.375,0.719 0.016,0.119 -0.07,0.375 0.094,0.375 0.164,0 1.27,-0.682 1.344,-0.562 0.074,0.119 0.188,0.125 0.188,0.125 0,0 -0.074,-0.156 0,-0.156 0.074,0 0.562,0.188 0.562,0.188 0,0 -0.073,-0.312 0.031,-0.281 0.104,0.03 0.583,0.594 0.688,0.594 0.105,0 0.358,-0.007 0.344,-0.156 -0.015,-0.149 -0.068,-0.335 0.125,-0.469 0.193,-0.134 0.787,-0.231 0.906,-0.156 0.119,0.074 0.304,0.16 0.125,0.25 -0.18,0.089 -0.396,-0.014 -0.5,0.031 -0.104,0.044 -0.392,0.333 -0.406,0.438 -0.015,0.104 0.561,0.565 0.531,0.625 -0.029,0.06 -0.326,0.344 -0.625,0.344 -0.299,0 -2.484,-0.546 -2.812,-0.531 -0.328,0.015 -0.615,0.099 -0.75,0.219 -0.135,0.119 -0.707,0.648 -0.781,0.812 -0.074,0.164 -0.398,0.957 -0.219,1.375 0.179,0.418 0.584,1.176 1.031,1.25 0.447,0.074 0.99,0.107 1.125,0.062 0.135,-0.045 0.859,0.76 0.875,1.312 0.015,0.552 -0.039,1.938 0.125,2.281 0.164,0.343 0.291,0.982 0.812,0.938 0.521,-0.044 0.945,-0.168 1.125,-0.406 0.179,-0.238 0.678,-1.455 0.812,-2.156 0.134,-0.701 0.754,-1.754 0.844,-2.156 0.09,-0.402 0.102,-0.631 -0.062,-0.75 -0.164,-0.119 -0.485,-0.116 -0.5,-0.25 -0.016,-0.135 0.209,-0.016 0.344,0 0.135,0.015 0.631,-0.022 0.75,-0.156 0.119,-0.135 0.324,-0.571 0.25,-0.75 -0.074,-0.18 -0.406,-0.562 -0.406,-0.562 0,0 1.338,0.161 1.875,0.594 0.312,0.251 0.564,0.577 0.75,0.844 -0.047,-2.462 -0.994,-4.705 -2.531,-6.406 -0.014,0.002 -0.054,0.031 -0.062,0.031 -0.232,0 -2.031,0.344 -2.031,0.344 0,0 -0.393,-0.447 -0.688,-0.469 -0.149,-0.016 -0.367,-0.021 -0.564,-0.005 l 0,0 z m -2.282,1.312 c 0,0 -0.212,0.865 0.094,0.844 0.306,-0.021 -0.094,-0.844 -0.094,-0.844 z m -0.406,0.375 c 0,0 -0.365,0.187 -0.281,0.281 0.084,0.094 0.26,0.147 0.312,0.062 0.052,-0.085 -0.031,-0.343 -0.031,-0.343 l 0,0 z m 5.719,8.094 c -0.121,0.026 -0.265,0.124 -0.344,0.219 -0.079,0.095 -0.198,0.43 -0.156,0.625 0.042,0.195 0.218,0.459 0.281,0.438 0.063,-0.021 0.229,-0.084 0.25,-0.438 0.021,-0.354 0.078,-0.671 0.031,-0.75 -0.047,-0.079 -0.062,-0.094 -0.062,-0.094 l 0,0 z" style="fill:#6d6d6d"/>
</g>
-</g>
-</svg> \ No newline at end of file
+</svg>
diff --git a/MLEB/Translate/resources/images/remove.png b/MLEB/Translate/resources/images/remove.png
deleted file mode 100644
index 9fcfda42..00000000
--- a/MLEB/Translate/resources/images/remove.png
+++ /dev/null
Binary files differ
diff --git a/MLEB/Translate/resources/images/remove.svg b/MLEB/Translate/resources/images/remove.svg
index bd01e96a..3cc0c703 100644
--- a/MLEB/Translate/resources/images/remove.svg
+++ b/MLEB/Translate/resources/images/remove.svg
@@ -1 +1,23 @@
-<?xml version="1.0" encoding="UTF-8"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="16" height="16"><defs><linearGradient id="c"><stop offset="0" stop-color="#fa9a87"/><stop offset="1" stop-color="#e9594d"/></linearGradient><linearGradient><stop offset="0" stop-color="#74b75b"/><stop offset="1" stop-color="#86c97a"/></linearGradient><linearGradient id="b"><stop offset="0" stop-color="#fddbd4"/><stop offset="1" stop-color="#e47871"/></linearGradient><linearGradient id="a"><stop offset="0" stop-color="#c14d33"/><stop offset="1" stop-color="#e0696a"/></linearGradient><linearGradient x1="12.758" y1="13.001" x2="2.583" y2="2.521" id="e" xlink:href="#a" gradientUnits="userSpaceOnUse"/><linearGradient x1="2.583" y1="2.521" x2="12.758" y2="13.001" id="d" xlink:href="#b" gradientUnits="userSpaceOnUse"/><linearGradient x1="4.551" y1="4.433" x2="11.459" y2="11.341" id="f" xlink:href="#c" gradientUnits="userSpaceOnUse"/></defs><g><path d="M14.647 7.824a6.85 6.85 0 1 1-13.7 0 6.85 6.85 0 1 1 13.7 0z" transform="translate(.253 .127)" fill="url(#d)" fill-rule="evenodd" stroke="url(#e)"/><path d="M13.006 7.982a4.988 4.988 0 1 1-9.976 0 4.988 4.988 0 1 1 9.976 0z" transform="matrix(1.002 0 0 1.002 -.038 -.001)" fill="url(#f)"/><path d="M5 9h6V7H5.004z" fill="#fff" fill-opacity=".957"/></g></svg>
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 16 16">
+ <defs>
+ <linearGradient id="c">
+ <stop offset="0" stop-color="#fa9a87"/>
+ <stop offset="1" stop-color="#e9594d"/>
+ </linearGradient>
+ <linearGradient id="b">
+ <stop offset="0" stop-color="#fddbd4"/>
+ <stop offset="1" stop-color="#e47871"/>
+ </linearGradient>
+ <linearGradient id="a">
+ <stop offset="0" stop-color="#c14d33"/>
+ <stop offset="1" stop-color="#e0696a"/>
+ </linearGradient>
+ <linearGradient id="e" x1="12.758" x2="2.583" y1="13.001" y2="2.521" xlink:href="#a" gradientUnits="userSpaceOnUse"/>
+ <linearGradient id="d" x1="2.583" x2="12.758" y1="2.521" y2="13.001" xlink:href="#b" gradientUnits="userSpaceOnUse"/>
+ <linearGradient id="f" x1="4.551" x2="11.459" y1="4.433" y2="11.341" xlink:href="#c" gradientUnits="userSpaceOnUse"/>
+ </defs>
+ <path fill="url(#d)" fill-rule="evenodd" stroke="url(#e)" d="M14.647 7.824a6.85 6.85 0 1 1-13.7 0 6.85 6.85 0 1 1 13.7 0z" transform="translate(.253 .127)"/>
+ <path fill="url(#f)" d="M13.006 7.982a4.988 4.988 0 1 1-9.976 0 4.988 4.988 0 1 1 9.976 0z" transform="translate(-.038) scale(1.002)"/>
+ <path fill="#fff" fill-opacity=".957" d="M5 9h6V7H5.004z"/>
+</svg>
diff --git a/MLEB/Translate/resources/images/search.png b/MLEB/Translate/resources/images/search.png
deleted file mode 100644
index 9b58456a..00000000
--- a/MLEB/Translate/resources/images/search.png
+++ /dev/null
Binary files differ
diff --git a/MLEB/Translate/resources/images/search.svg b/MLEB/Translate/resources/images/search.svg
index 799cb17e..e9d42573 100644
--- a/MLEB/Translate/resources/images/search.svg
+++ b/MLEB/Translate/resources/images/search.svg
@@ -1,32 +1,4 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-
-<svg
- xmlns:dc="http://purl.org/dc/elements/1.1/"
- xmlns:cc="http://creativecommons.org/ns#"
- xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
- xmlns:svg="http://www.w3.org/2000/svg"
- xmlns="http://www.w3.org/2000/svg"
- version="1.1"
- width="32"
- height="32.000031"
- id="svg2">
- <defs
- id="defs4" />
- <metadata
- id="metadata7">
- <rdf:RDF>
- <cc:Work
- rdf:about="">
- <dc:format>image/svg+xml</dc:format>
- <dc:type
- rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
- <dc:title></dc:title>
- </cc:Work>
- </rdf:RDF>
- </metadata>
- <path
- d="m 3.37703,3.37704 c 4.50273,-4.50274 11.80568,-4.50272 16.3085,6e-5 4.07216,4.07223 4.41687,10.42533 1.12323,14.93559 L 32,29.50385 29.50385,32.00003 18.3126,20.80887 C 13.80244,24.1025 7.44932,23.75797 3.37711,19.68548 -1.1257,15.18284 -1.12568,7.8799 3.37703,3.37704 z m 2.12176,2.12187 c -3.34229,3.34214 -3.38386,8.76418 -0.0416,12.10657 3.34232,3.34223 8.80592,3.34224 12.1482,-2e-5 C 20.94762,14.26307 20.90595,8.84117 17.56369,5.49878 14.22149,2.15665 8.84106,2.15665 5.49878,5.49891 z"
- id="path3017-6-34-0"
- style="fill:#555555;fill-opacity:1;stroke:none" />
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32">
+ <path fill="#54595d" d="M3.377 3.377c4.503-4.503 11.806-4.503 16.31 0 4.07 4.072 4.415 10.425 1.122 14.936L32 29.503 29.504 32l-11.19-11.19C13.8 24.102 7.448 23.757 3.376 19.684c-4.503-4.502-4.503-11.805 0-16.308zM5.5 5.5c-3.344 3.34-3.385 8.763-.043 12.105 3.343 3.343 8.806 3.343 12.148 0 3.343-3.342 3.3-8.764-.04-12.106-3.344-3.343-8.724-3.343-12.066 0z"/>
</svg>
diff --git a/MLEB/Translate/resources/images/switch.png b/MLEB/Translate/resources/images/switch.png
deleted file mode 100644
index 6fb6dbf6..00000000
--- a/MLEB/Translate/resources/images/switch.png
+++ /dev/null
Binary files differ
diff --git a/MLEB/Translate/resources/images/switch.svg b/MLEB/Translate/resources/images/switch.svg
index 0bace40c..40967827 100644
--- a/MLEB/Translate/resources/images/switch.svg
+++ b/MLEB/Translate/resources/images/switch.svg
@@ -1 +1,5 @@
-<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1024 768" enable-background="new 0 0 1024 768"><path d="M751.863 131.86l-186.744-1.106H349.325V27.837L128 233.67l221.326 188.127V318.88H565.12v215.793H462.2L650.33 756l204.726-221.327H752.14V318.88l-.278-187.02zm-90.467 90.745v4.427h-4.427v-4.427h4.426z" fill="#555"/><path d="M655.503 228.447c.062-1.788.05-3.578.046-5.367-.024-1.523-.09-3.04.26-4.532 1.39-4.26 2.03-2.45 9.012-5.744.175 1.704.095 3.43.094 5.144.004 1.708-.003 3.417.003 5.125.006 1.19.008 2.377.024 3.566.014.585.016 1.17.022 1.757-.028 4.033.477.91-8.24 5.074.058-1.59.057-3.18.078-4.77.085-3.247.003-6.496.118-9.742.105-2.014.248-4.026.37-6.04.145-3.94 2.308-3.068 8.245-5.887.213-.1.498.788.733 1.42.733 2.91 1.115 5.89 1.545 8.853.457 3.367.885 6.733 1.15 10.12.152 2.527.183 5.053.587 7.555.26 1.834.743 3.62 1.19 5.415.188.823.355 1.65.407 2.492.288 3.13.21 1.59-8.18 3.726-.477.123.093-.98.134-1.47.065-.776.133-1.55.184-2.327.175-2.656.19-3.618.294-6.34.115-4.458.13-8.92.043-13.378.06-1.338 0-2.536-.664-3.706-.49-.782-1.084-1.407-2.002-1.597-1.142-.125-2.296-.1-3.443-.105-.726-.003-1.08-.067-1.787.197-.342.128-1.292.682-.972.506 2.18-1.2 4.274-2.573 6.55-3.575.537-.236-.858.8-1.246 1.24-.412.468-.765.984-1.147 1.476-1.974 2.593-3.098 5.555-3.673 8.73-.33 2.2-.3 4.426-.313 6.644-.014 2.337.006 4.674.04 7.01-.027 1.143.127 2.262.595 3.304.156.294.303.586.43.893l-8.073 4.495c-.105-.298-.243-.578-.38-.863-.523-1.167-.75-2.414-.668-3.7.015-2.338.01-4.675-.036-7.013-.023-2.277.016-4.557.307-6.817.536-3.302 1.61-6.413 3.59-9.152.234-.33 1.82-2.655 2.22-2.923 3.898-2.61 7.296-5.858 11.956-5.82 1.226 0 2.49-.06 3.675.313 1.013.462 1.74 1.232 2.332 2.17.767 1.33.954 2.665.77 4.197-.172 4.53-.317 9.06-.425 13.59-.05 2.836-.087 5.67-.113 8.507-.005.453.346 1.087-.016 1.36-8.295 6.283-8.283 8.008-8.195 4.66-.02-.802-.1-1.598-.26-2.384-.376-1.835-.88-3.642-1.138-5.5-.442-2.542-.443-5.108-.54-7.68-.216-3.374-.638-6.722-1.096-10.07-.422-2.877-.792-5.777-1.63-8.568-1.09-2.503-1.21.16 7.562-5.02.378-.223-.205.062-.3.447-.038.153-.027.314-.04.472-.172 2.04-.458 4.072-.582 6.117-.173 3.214-.062 6.434-.03 9.652.02 1.564.02 3.13.077 4.692-9.543 5.167-8.17 7.38-8.24 3.323.006-.594.008-1.187.022-1.78.017-1.2.02-2.398.03-3.596.012-1.715.017-3.43.036-5.145.008-1.604.02-3.21-.087-4.81 8.643-4.672 9.406-6.928 7.386-2.63-.568 1.375-.443 2.85-.45 4.312-.003 1.773-.016 3.548.046 5.32l-8.203 4.18z" fill="#555"/></svg> \ No newline at end of file
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1024 768">
+ <path fill="#54595d" d="M751.863 131.86l-186.744-1.106H349.324V27.837L128 233.67l221.326 188.127V318.88H565.12v215.793H462.2L650.33 756l204.726-221.327H752.14V318.88l-.278-187.02zm-90.467 90.745v4.427h-4.427v-4.427h4.425z"/>
+ <path fill="#54595d" d="M655.503 228.447c.062-1.788.05-3.578.046-5.367-.025-1.523-.09-3.04.26-4.532 1.39-4.26 2.03-2.45 9.01-5.744.176 1.704.096 3.43.095 5.144.004 1.708-.003 3.417.003 5.125.006 1.19.008 2.377.024 3.566.014.584.016 1.17.022 1.756-.028 4.033.477.91-8.24 5.074.058-1.59.057-3.18.078-4.77.085-3.247.003-6.496.118-9.742.105-2.014.248-4.026.37-6.04.145-3.94 2.308-3.068 8.245-5.887.213-.1.498.79.733 1.42.733 2.91 1.115 5.89 1.545 8.854.457 3.367.885 6.733 1.15 10.12.152 2.527.183 5.053.587 7.555.26 1.833.743 3.62 1.19 5.414.188.823.355 1.65.407 2.492.288 3.13.21 1.59-8.18 3.726-.477.123.093-.98.134-1.47.066-.776.134-1.55.185-2.327.175-2.656.19-3.618.294-6.34.114-4.458.13-8.92.042-13.378.06-1.338 0-2.536-.664-3.706-.49-.78-1.084-1.406-2.002-1.596-1.142-.125-2.296-.1-3.443-.105-.726-.004-1.08-.068-1.787.196-.342.128-1.292.682-.972.506 2.18-1.2 4.274-2.573 6.55-3.575.537-.236-.858.8-1.246 1.24-.412.468-.765.984-1.147 1.476-1.973 2.593-3.097 5.555-3.672 8.73-.33 2.2-.3 4.426-.313 6.644-.014 2.337.006 4.674.04 7.01-.027 1.143.127 2.262.595 3.304.156.295.303.587.43.894l-8.073 4.495c-.105-.3-.243-.58-.38-.864-.523-1.167-.75-2.414-.668-3.7.014-2.338.01-4.675-.037-7.013-.023-2.277.016-4.557.307-6.817.536-3.302 1.61-6.413 3.59-9.152.234-.33 1.82-2.655 2.22-2.923 3.898-2.61 7.296-5.857 11.956-5.82 1.226 0 2.49-.06 3.675.314 1.014.462 1.74 1.232 2.333 2.17.767 1.33.954 2.665.77 4.197-.172 4.53-.317 9.06-.425 13.59-.05 2.837-.087 5.67-.113 8.508-.005.453.346 1.087-.016 1.36-8.296 6.283-8.284 8.008-8.196 4.66-.02-.802-.1-1.598-.26-2.384-.376-1.835-.88-3.642-1.138-5.5-.442-2.542-.443-5.108-.54-7.68-.216-3.374-.638-6.722-1.096-10.07-.422-2.877-.792-5.777-1.63-8.568-1.09-2.503-1.21.16 7.562-5.02.378-.223-.205.062-.3.447-.038.153-.027.314-.04.472-.172 2.04-.458 4.072-.582 6.117-.173 3.214-.062 6.434-.03 9.652.02 1.564.02 3.13.077 4.692-9.543 5.167-8.17 7.38-8.24 3.323.006-.595.008-1.188.022-1.78.016-1.2.02-2.4.03-3.597.01-1.715.016-3.43.035-5.145.008-1.604.02-3.21-.087-4.81 8.643-4.672 9.406-6.928 7.386-2.63-.568 1.375-.443 2.85-.45 4.312-.003 1.773-.016 3.548.046 5.32l-8.203 4.18z"/>
+</svg>
diff --git a/MLEB/Translate/resources/images/translate-ltr.png b/MLEB/Translate/resources/images/translate-ltr.png
deleted file mode 100644
index 0182a537..00000000
--- a/MLEB/Translate/resources/images/translate-ltr.png
+++ /dev/null
Binary files differ
diff --git a/MLEB/Translate/resources/images/translate-ltr.svg b/MLEB/Translate/resources/images/translate-ltr.svg
index 24e56a34..7bfc8618 100644
--- a/MLEB/Translate/resources/images/translate-ltr.svg
+++ b/MLEB/Translate/resources/images/translate-ltr.svg
@@ -1,29 +1,5 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-
-<svg
- xmlns:dc="http://purl.org/dc/elements/1.1/"
- xmlns:cc="http://creativecommons.org/ns#"
- xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
- xmlns:svg="http://www.w3.org/2000/svg"
- xmlns="http://www.w3.org/2000/svg"
- version="1.1"
- width="33.389"
- height="22.857"
- viewBox="0 0 33.389 22.857"
- id="svg2"
- xml:space="preserve"><metadata
- id="metadata9"><rdf:RDF><cc:Work
- rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
- rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
- id="defs7" />
-
-<path
- d="m 0,0 h 25.922 l 7.467,11.429 -7.467,11.429 H 0 V 0 z"
- id="rect12220"
- style="fill:#729fcf" />
-<path
- d="m 21.324,2.915 -9.343,13.311 -0.022,0.003 -0.284,3.239 2.968,-1.379 9.344,-13.31 -2.663,-1.864 0,0 z"
- id="rect8752-2-8-5-49-6-2-0-2-5-4-0-4-5-8-7-6-4-9-9-0-3-2-1-1-3-7-4-8-3"
- style="fill:#ffffff" />
-</svg> \ No newline at end of file
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg" width="33.389" height="22.857" viewBox="0 0 33.389 22.857">
+ <path fill="#729fcf" d="M0 0h25.922l7.467 11.43-7.468 11.428H0V0z"/>
+ <path fill="#fff" d="M21.324 2.915l-9.343 13.31-.02.004-.285 3.238 2.968-1.38 9.344-13.31-2.663-1.863z"/>
+</svg>
diff --git a/MLEB/Translate/resources/images/translate-rtl.png b/MLEB/Translate/resources/images/translate-rtl.png
deleted file mode 100644
index 90a845cb..00000000
--- a/MLEB/Translate/resources/images/translate-rtl.png
+++ /dev/null
Binary files differ
diff --git a/MLEB/Translate/resources/images/translate-rtl.svg b/MLEB/Translate/resources/images/translate-rtl.svg
index 5f30aea8..9e9857f8 100644
--- a/MLEB/Translate/resources/images/translate-rtl.svg
+++ b/MLEB/Translate/resources/images/translate-rtl.svg
@@ -1,29 +1,5 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-
-<svg
- xmlns:dc="http://purl.org/dc/elements/1.1/"
- xmlns:cc="http://creativecommons.org/ns#"
- xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
- xmlns:svg="http://www.w3.org/2000/svg"
- xmlns="http://www.w3.org/2000/svg"
- version="1.1"
- width="33.389"
- height="22.857"
- viewBox="0 0 33.389 22.857"
- id="svg2"
- xml:space="preserve"><metadata
- id="metadata9"><rdf:RDF><cc:Work
- rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
- rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
- id="defs7" />
-
-<path
- d="M 33.389,0 H 7.467 L 0,11.429 7.467,22.858 H 33.389 V 0 z"
- id="rect12220"
- style="fill:#729fcf" />
-<path
- d="m 21.051,2.915 -9.343,13.311 -0.022,0.003 -0.284,3.239 2.968,-1.379 9.344,-13.31 -2.663,-1.864 0,0 z"
- id="rect8752-2-8-5-49-6-2-0-2-5-4-0-4-5-8-7-6-4-9-9-0-3-2-1-1-3-7-4-8-3"
- style="fill:#ffffff" />
-</svg> \ No newline at end of file
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg" width="33.389" height="22.857" viewBox="0 0 33.389 22.857">
+ <path fill="#729fcf" d="M33.39 0H7.466L0 11.43l7.467 11.428H33.39V0z"/>
+ <path fill="#fff" d="M21.05 2.915l-9.342 13.31-.022.004-.284 3.238 2.968-1.38 9.344-13.31-2.663-1.863z"/>
+</svg>
diff --git a/MLEB/Translate/resources/images/trash_darkgray.png b/MLEB/Translate/resources/images/trash_darkgray.png
deleted file mode 100644
index 81b2f0cb..00000000
--- a/MLEB/Translate/resources/images/trash_darkgray.png
+++ /dev/null
Binary files differ
diff --git a/MLEB/Translate/resources/images/trash_darkgray.svg b/MLEB/Translate/resources/images/trash_darkgray.svg
index 5ac2cf0a..3d1bef76 100644
--- a/MLEB/Translate/resources/images/trash_darkgray.svg
+++ b/MLEB/Translate/resources/images/trash_darkgray.svg
@@ -1 +1,4 @@
-<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96" enable-background="new 0 0 96 96"><g fill="#555"><path d="M13.5 28.2l8.1 63c.3 2.7 2.4 4.8 5.1 4.8h42.6c2.7 0 4.8-2.1 4.8-4.5l8.1-63h-68.7v-.3zM77.4 6.6c3.6 0 6.6 1.5 6.6 3.3v7.2c0 1.8-3 1.5-6.9 1.5h-58.5c-3.6 0-6.6.3-6.6-1.5v-7.2c0-1.8 3-3.3 6.9-3.3l13.5-1.2 4.8-5.4h21.3l5.1 5.7 13.8.9z"/></g></svg>
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg" width="96" height="96" viewBox="0 0 96 96">
+ <path fill="#54595d" d="M13.5 28.2l8.1 63c.3 2.7 2.4 4.8 5.1 4.8h42.6c2.7 0 4.8-2.1 4.8-4.5l8.1-63H13.5v-.3zM77.4 6.6C81 6.6 84 8.1 84 9.9v7.2c0 1.8-3 1.5-6.9 1.5H18.6c-3.6 0-6.6.3-6.6-1.5V9.9c0-1.8 3-3.3 6.9-3.3l13.5-1.2L37.2 0h21.3l5.1 5.7 13.8.9z"/>
+</svg>
diff --git a/MLEB/Translate/resources/images/user-small.png b/MLEB/Translate/resources/images/user-small.png
deleted file mode 100644
index 880b035e..00000000
--- a/MLEB/Translate/resources/images/user-small.png
+++ /dev/null
Binary files differ
diff --git a/MLEB/Translate/resources/images/user-small.svg b/MLEB/Translate/resources/images/user-small.svg
index 082d0470..af79fbf1 100644
--- a/MLEB/Translate/resources/images/user-small.svg
+++ b/MLEB/Translate/resources/images/user-small.svg
@@ -1,9 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!-- Generator: Adobe Illustrator 15.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="15px" height="15px" viewBox="0 0 15 15" enable-background="new 0 0 15 15" xml:space="preserve">
-<g>
- <path fill="#D1D3D4" d="M12.281,4.776c0,2.639-2.142,4.783-4.78,4.783c-2.64,0-4.779-2.144-4.779-4.783 C2.722,2.138,4.861,0,7.501,0C10.14,0,12.281,2.138,12.281,4.776z"/>
- <path fill="#D1D3D4" d="M13.36,8.609h-0.947c-1.031,1.625-2.844,2.707-4.912,2.707c-2.068,0-3.883-1.082-4.914-2.707H1.645 c-0.445,0-0.799,0.358-0.799,0.801v4.795C0.846,14.641,1.199,15,1.645,15H13.36c0.44,0,0.794-0.359,0.794-0.795V9.41 C14.154,8.968,13.801,8.609,13.36,8.609z"/>
-</g>
-</svg> \ No newline at end of file
+<svg xmlns="http://www.w3.org/2000/svg" width="15" height="15" viewBox="0 0 15 15">
+ <g fill="#c8ccd1">
+ <path d="M12.28 4.776c0 2.64-2.14 4.783-4.78 4.783S2.723 7.414 2.723 4.775C2.722 2.138 4.862 0 7.502 0c2.638 0 4.78 2.138 4.78 4.776z"/>
+ <path d="M13.36 8.61h-.947c-1.03 1.624-2.844 2.706-4.912 2.706-2.067 0-3.882-1.082-4.913-2.707h-.942c-.445 0-.8.357-.8.8v4.795c0 .436.354.795.8.795H13.36c.44 0 .794-.36.794-.795V9.41c0-.442-.353-.8-.794-.8z"/>
+ </g>
+</svg>
diff --git a/MLEB/Translate/resources/images/view-list-hi.png b/MLEB/Translate/resources/images/view-list-hi.png
deleted file mode 100644
index 6e7342d0..00000000
--- a/MLEB/Translate/resources/images/view-list-hi.png
+++ /dev/null
Binary files differ
diff --git a/MLEB/Translate/resources/images/view-list-hi.svg b/MLEB/Translate/resources/images/view-list-hi.svg
index a3ea47f2..e9798819 100644
--- a/MLEB/Translate/resources/images/view-list-hi.svg
+++ b/MLEB/Translate/resources/images/view-list-hi.svg
@@ -1,50 +1,4 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-
-<svg
- xmlns:dc="http://purl.org/dc/elements/1.1/"
- xmlns:cc="http://creativecommons.org/ns#"
- xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
- xmlns:svg="http://www.w3.org/2000/svg"
- xmlns="http://www.w3.org/2000/svg"
- version="1.1"
- width="25"
- height="15"
- viewBox="0 0 25 15"
- id="svg17805"
- xml:space="preserve"><metadata
- id="metadata11"><rdf:RDF><cc:Work
- rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
- rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
- id="defs9" />
-
-<g
- transform="translate(-159.64355,-100.30805)"
- id="layer1">
- <g
- transform="matrix(0.65003318,0,0,0.65003318,105.65437,41.0619)"
- id="g3770">
- <rect
- width="20.139999"
- height="4.1040001"
- x="92.216003"
- y="93.653"
- id="rect2996"
- style="fill:#ffffff" />
- <rect
- width="20.139999"
- height="4.1040001"
- x="92.216003"
- y="100.629"
- id="rect3766"
- style="fill:#ffffff" />
- <rect
- width="20.139999"
- height="4.1040001"
- x="92.216003"
- y="107.606"
- id="rect3768"
- style="fill:#ffffff" />
- </g>
-</g>
-</svg> \ No newline at end of file
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg" width="25" height="15" viewBox="0 0 25 15">
+ <path fill="#fff" d="M5.954 1.63h13.092V4.3H5.954zM5.954 6.166h13.092v2.668H5.954zM5.954 10.7h13.092v2.67H5.954z"/>
+</svg>
diff --git a/MLEB/Translate/resources/images/view-list.png b/MLEB/Translate/resources/images/view-list.png
deleted file mode 100644
index b7f3cf06..00000000
--- a/MLEB/Translate/resources/images/view-list.png
+++ /dev/null
Binary files differ
diff --git a/MLEB/Translate/resources/images/view-list.svg b/MLEB/Translate/resources/images/view-list.svg
index c0585828..49f03d57 100644
--- a/MLEB/Translate/resources/images/view-list.svg
+++ b/MLEB/Translate/resources/images/view-list.svg
@@ -1,53 +1,4 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-
-<svg
- xmlns:dc="http://purl.org/dc/elements/1.1/"
- xmlns:cc="http://creativecommons.org/ns#"
- xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
- xmlns:svg="http://www.w3.org/2000/svg"
- xmlns="http://www.w3.org/2000/svg"
- version="1.1"
- width="25"
- height="15"
- id="svg17805">
- <defs
- id="defs17807" />
- <metadata
- id="metadata17810">
- <rdf:RDF>
- <cc:Work
- rdf:about="">
- <dc:format>image/svg+xml</dc:format>
- <dc:type
- rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
- <dc:title></dc:title>
- </cc:Work>
- </rdf:RDF>
- </metadata>
- <g
- transform="translate(-159.64355,-100.30805)"
- id="layer1">
- <rect
- width="13.091612"
- height="2.6675708"
- x="165.59773"
- y="101.93939"
- id="rect2996"
- style="fill:#252525;fill-opacity:1;stroke:none" />
- <rect
- width="13.091612"
- height="2.6675708"
- x="165.59775"
- y="106.47427"
- id="rect3766"
- style="fill:#252525;fill-opacity:1;stroke:none" />
- <rect
- width="13.091612"
- height="2.6675708"
- x="165.59775"
- y="111.00913"
- id="rect3768"
- style="fill:#252525;fill-opacity:1;stroke:none" />
- </g>
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg" width="25" height="15" viewBox="0 0 25 15">
+ <path fill="#222" d="M5.954 1.63h13.092V4.3H5.954zM5.954 6.166h13.092v2.668H5.954zM5.954 10.7h13.092v2.67H5.954z"/>
</svg>
diff --git a/MLEB/Translate/resources/images/view-page-hi.png b/MLEB/Translate/resources/images/view-page-hi.png
deleted file mode 100644
index 05b3e28a..00000000
--- a/MLEB/Translate/resources/images/view-page-hi.png
+++ /dev/null
Binary files differ
diff --git a/MLEB/Translate/resources/images/view-page-hi.svg b/MLEB/Translate/resources/images/view-page-hi.svg
index a4143656..24ad3426 100644
--- a/MLEB/Translate/resources/images/view-page-hi.svg
+++ b/MLEB/Translate/resources/images/view-page-hi.svg
@@ -1,40 +1,4 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-
-<svg
- xmlns:dc="http://purl.org/dc/elements/1.1/"
- xmlns:cc="http://creativecommons.org/ns#"
- xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
- xmlns:svg="http://www.w3.org/2000/svg"
- xmlns="http://www.w3.org/2000/svg"
- version="1.1"
- width="25"
- height="15"
- id="svg17805">
- <defs
- id="defs17807" />
- <metadata
- id="metadata17810">
- <rdf:RDF>
- <cc:Work
- rdf:about="">
- <dc:format>image/svg+xml</dc:format>
- <dc:type
- rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
- <dc:title></dc:title>
- </cc:Work>
- </rdf:RDF>
- </metadata>
- <path
- d="m 5.96875,1.625 0,2.6875 5.65625,0 0,-2.6875 -5.65625,0 z m 7.40625,0 0,2.6875 5.65625,0 0,-2.6875 -5.65625,0 z"
- id="rect2996"
- style="fill:#ffffff;fill-opacity:1;stroke:none" />
- <path
- d="m 5.96875,6.15625 0,2.6875 5.65625,0 0,-2.6875 -5.65625,0 z m 7.40625,0 0,2.6875 5.65625,0 0,-2.6875 -5.65625,0 z"
- id="rect3766"
- style="fill:#ffffff;fill-opacity:1;stroke:none" />
- <path
- d="m 5.96875,10.6875 0,2.6875 5.65625,0 0,-2.6875 -5.65625,0 z m 7.40625,0 0,2.6875 5.65625,0 0,-2.6875 -5.65625,0 z"
- id="rect3768"
- style="fill:#ffffff;fill-opacity:1;stroke:none" />
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg" width="25" height="15" viewBox="0 0 25 15">
+ <path fill="#fff" d="M5.97 1.625v2.688h5.655V1.624H5.97zm7.405 0v2.688h5.656V1.624h-5.655zM5.97 6.156v2.688h5.655V6.156H5.97zm7.405 0v2.688h5.656V6.156h-5.655zM5.97 10.688v2.687h5.655v-2.688H5.97zm7.405 0v2.687h5.656v-2.688h-5.655z"/>
</svg>
diff --git a/MLEB/Translate/resources/images/view-page.png b/MLEB/Translate/resources/images/view-page.png
deleted file mode 100644
index 9a14d86e..00000000
--- a/MLEB/Translate/resources/images/view-page.png
+++ /dev/null
Binary files differ
diff --git a/MLEB/Translate/resources/images/view-page.svg b/MLEB/Translate/resources/images/view-page.svg
index 8eb196b2..7e983678 100644
--- a/MLEB/Translate/resources/images/view-page.svg
+++ b/MLEB/Translate/resources/images/view-page.svg
@@ -1,47 +1,6 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-
-<svg
- xmlns:dc="http://purl.org/dc/elements/1.1/"
- xmlns:cc="http://creativecommons.org/ns#"
- xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
- xmlns:svg="http://www.w3.org/2000/svg"
- xmlns="http://www.w3.org/2000/svg"
- version="1.1"
- width="25"
- height="15"
- id="svg17805">
- <defs
- id="defs17807" />
- <metadata
- id="metadata17810">
- <rdf:RDF>
- <cc:Work
- rdf:about="">
- <dc:format>image/svg+xml</dc:format>
- <dc:type
- rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
- <dc:title></dc:title>
- </cc:Work>
- </rdf:RDF>
- </metadata>
- <g
- transform="translate(-159.64355,-100.30805)"
- id="layer1">
- <path
- d="m 5.96875,1.625 0,2.6875 5.65625,0 0,-2.6875 -5.65625,0 z m 7.40625,0 0,2.6875 5.65625,0 0,-2.6875 -5.65625,0 z"
- transform="translate(159.64355,100.30805)"
- id="rect2996"
- style="fill:#252525;fill-opacity:1;stroke:none" />
- <path
- d="m 5.96875,6.15625 0,2.6875 5.65625,0 0,-2.6875 -5.65625,0 z m 7.40625,0 0,2.6875 5.65625,0 0,-2.6875 -5.65625,0 z"
- transform="translate(159.64355,100.30805)"
- id="rect3766"
- style="fill:#252525;fill-opacity:1;stroke:none" />
- <path
- d="m 5.96875,10.6875 0,2.6875 5.65625,0 0,-2.6875 -5.65625,0 z m 7.40625,0 0,2.6875 5.65625,0 0,-2.6875 -5.65625,0 z"
- transform="translate(159.64355,100.30805)"
- id="rect3768"
- style="fill:#252525;fill-opacity:1;stroke:none" />
- </g>
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg" width="25" height="15" viewBox="0 0 25 15">
+ <g fill="#222">
+ <path d="M5.97 1.625v2.688h5.655V1.624H5.97zm7.405 0v2.688h5.656V1.624h-5.655zM5.97 6.156v2.688h5.655V6.156H5.97zm7.405 0v2.688h5.656V6.156h-5.655zM5.97 10.688v2.687h5.655v-2.688H5.97zm7.405 0v2.687h5.656v-2.688h-5.655z"/>
+ </g>
</svg>
diff --git a/MLEB/Translate/resources/images/view-proofread-hi.png b/MLEB/Translate/resources/images/view-proofread-hi.png
deleted file mode 100644
index 8f385504..00000000
--- a/MLEB/Translate/resources/images/view-proofread-hi.png
+++ /dev/null
Binary files differ
diff --git a/MLEB/Translate/resources/images/view-proofread-hi.svg b/MLEB/Translate/resources/images/view-proofread-hi.svg
index 51b8f2a3..4d38ee33 100644
--- a/MLEB/Translate/resources/images/view-proofread-hi.svg
+++ b/MLEB/Translate/resources/images/view-proofread-hi.svg
@@ -1,36 +1,4 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-
-<svg
- xmlns:dc="http://purl.org/dc/elements/1.1/"
- xmlns:cc="http://creativecommons.org/ns#"
- xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
- xmlns:svg="http://www.w3.org/2000/svg"
- xmlns="http://www.w3.org/2000/svg"
- version="1.1"
- width="25"
- height="15"
- id="svg17805">
- <defs
- id="defs17807" />
- <metadata
- id="metadata17810">
- <rdf:RDF>
- <cc:Work
- rdf:about="">
- <dc:format>image/svg+xml</dc:format>
- <dc:type
- rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
- <dc:title></dc:title>
- </cc:Work>
- </rdf:RDF>
- </metadata>
- <g
- transform="translate(-159.64355,-100.30805)"
- id="layer1">
- <path
- d="m 175.4092,101.38615 -5.1875,8.93751 -2.0313,-1.5 -1.5937,2.125 3.25,2.4063 1.1875,0.875 0.75,-1.2813 5.9062,-10.25001 -2.2812,-1.3125 z"
- id="path12436-0-1-2-8-1-9-2-0"
- style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:2.6545198;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" />
- </g>
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg" width="25" height="15" viewBox="0 0 25 15">
+ <path fill="#fff" d="M15.766 1.078l-5.188 8.938-2.03-1.5-1.595 2.125 3.25 2.407 1.188.875.75-1.28 5.907-10.25-2.28-1.314z" overflow="visible"/>
</svg>
diff --git a/MLEB/Translate/resources/images/view-proofread.png b/MLEB/Translate/resources/images/view-proofread.png
deleted file mode 100644
index bdb61dcc..00000000
--- a/MLEB/Translate/resources/images/view-proofread.png
+++ /dev/null
Binary files differ
diff --git a/MLEB/Translate/resources/images/view-proofread.svg b/MLEB/Translate/resources/images/view-proofread.svg
index 5809b3fe..1b3f287b 100644
--- a/MLEB/Translate/resources/images/view-proofread.svg
+++ b/MLEB/Translate/resources/images/view-proofread.svg
@@ -1,36 +1,4 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-
-<svg
- xmlns:dc="http://purl.org/dc/elements/1.1/"
- xmlns:cc="http://creativecommons.org/ns#"
- xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
- xmlns:svg="http://www.w3.org/2000/svg"
- xmlns="http://www.w3.org/2000/svg"
- version="1.1"
- width="25"
- height="15"
- id="svg17805">
- <defs
- id="defs17807" />
- <metadata
- id="metadata17810">
- <rdf:RDF>
- <cc:Work
- rdf:about="">
- <dc:format>image/svg+xml</dc:format>
- <dc:type
- rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
- <dc:title></dc:title>
- </cc:Work>
- </rdf:RDF>
- </metadata>
- <g
- transform="translate(-159.64355,-100.30805)"
- id="layer1">
- <path
- d="m 175.4092,101.38615 -5.1875,8.93751 -2.0313,-1.5 -1.5937,2.125 3.25,2.4063 1.1875,0.875 0.75,-1.2813 5.9062,-10.25001 -2.2812,-1.3125 z"
- id="path12436-0-1-2-8-1-9-2-0"
- style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#252525;fill-opacity:1;stroke:none;stroke-width:2.6545198;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" />
- </g>
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg" width="25" height="15" viewBox="0 0 25 15">
+ <path fill="#222" d="M15.766 1.078l-5.188 8.938-2.03-1.5-1.595 2.125 3.25 2.407 1.188.875.75-1.28 5.907-10.25-2.28-1.314z" overflow="visible"/>
</svg>
diff --git a/MLEB/Translate/resources/js/ext.translate.base.js b/MLEB/Translate/resources/js/ext.translate.base.js
index 76c8e7d7..d11d47b1 100644
--- a/MLEB/Translate/resources/js/ext.translate.base.js
+++ b/MLEB/Translate/resources/js/ext.translate.base.js
@@ -12,11 +12,12 @@
/**
* Checks if the input placeholder attribute
* is supported on this element in this browser.
- * @param {jQuery} element
+ *
+ * @param {jQuery} $element
* @return {boolean}
*/
- isPlaceholderSupported: function ( element ) {
- return ( 'placeholder' in element[0] );
+ isPlaceholderSupported: function ( $element ) {
+ return ( 'placeholder' in $element[ 0 ] );
},
// Storage for language stats loader functions from API,
@@ -25,53 +26,53 @@
/**
* Get language stats for a language from the API.
+ *
* @param {string} language Language code.
* @return {deferred}
*/
loadLanguageStats: function ( language ) {
- if ( !mw.translate.languageStatsLoader[language] ) {
- mw.translate.languageStatsLoader[language] = new mw.Api().get( {
+ if ( !mw.translate.languageStatsLoader[ language ] ) {
+ mw.translate.languageStatsLoader[ language ] = new mw.Api().get( {
action: 'query',
- format: 'json',
meta: 'languagestats',
lslanguage: language
} );
}
- mw.translate.languageStatsLoader[language].done( function ( result ) {
- mw.translate.languagestats[language] = result.query.languagestats;
+ mw.translate.languageStatsLoader[ language ].done( function ( result ) {
+ mw.translate.languagestats[ language ] = result.query.languagestats;
} );
- return mw.translate.languageStatsLoader[language];
+ return mw.translate.languageStatsLoader[ language ];
},
/**
* Load message group information asynchronously.
*
* @param {string} id Message group id
- * @param {string|array} [props] List of properties to load
+ * @param {string|Array} [props] List of properties to load
* @return {jQuery.Promise} Object containing the requested properties on success.
*/
getMessageGroup: function ( id, props ) {
- var params;
+ var params, api;
- if ( $.isArray( props ) ) {
+ if ( Array.isArray( props ) ) {
props = props.join( '|' );
} else if ( props === undefined ) {
props = 'id|label|description|icon|priority|prioritylangs|priorityforce|workflowstates';
}
params = {
- action: 'query',
- format: 'json',
meta: 'messagegroups',
mgformat: 'flat',
mgprop: props,
mgroot: id
};
- return (new mw.Api()).get( params ).then( function ( result ) {
- return result.query.messagegroups[0];
+ api = new mw.Api();
+
+ return api.get( params ).then( function ( result ) {
+ return result.query.messagegroups[ 0 ];
} );
},
@@ -111,6 +112,7 @@
/**
* Check if the current user is allowed to translate on this wiki.
+ *
* @return {boolean}
*/
canTranslate: function () {
@@ -119,6 +121,7 @@
/**
* Check if the current user is allowed to proofread on this wiki.
+ *
* @return {boolean}
*/
canProofread: function () {
@@ -127,26 +130,36 @@
/**
* Check if the current user can delete translations on this wiki.
+ *
* @return {boolean}
*/
canDelete: function () {
return mw.config.get( 'DeleteRight' ) && mw.config.get( 'TranslateRight' );
},
- addDocumentationLanguage: function () {
- var docLanguageCode = mw.config.get( 'wgTranslateDocumentationLanguageCode' );
- if ( $.uls.data.languages[docLanguageCode] ) {
- return;
+ /**
+ * Adds missing languages to the language database so that they can be used in ULS.
+ *
+ * @param {Object} languages Language tags mapped to language names
+ * @param {Array} regions Which regions to add the languages.
+ */
+ addExtraLanguagesToLanguageData: function ( languages, regions ) {
+ var code;
+ for ( code in languages ) {
+ if ( code in $.uls.data.languages ) {
+ continue;
+ }
+
+ $.uls.data.addLanguage( code, {
+ script: 'Zyyy',
+ regions: regions,
+ autonym: languages[ code ]
+ } );
}
- $.uls.data.addLanguage( docLanguageCode, {
- script: $.uls.data.getScript( mw.config.get( 'wgContentLanguage' ) ),
- regions: ['SP'],
- autonym: mw.msg( 'translate-documentation-language' )
- } );
},
isDirty: function () {
- return $( '.mw-ajax-dialog:visible' ).length || // For old Translate
+ return $( '.mw-ajax-dialog:visible' ).length || // For old Translate
// For new Translate, something being typed in the current editor.
mw.translate.dirty ||
// For new translate, previous editors has some unsaved edits
@@ -172,7 +185,7 @@
$( window ).on( 'pageshow.translate', pageShowHandler );
}
- $( document ).ready( function () {
+ $( function () {
translateOnBeforeUnloadRegister();
} );
}( jQuery, mediaWiki ) );
diff --git a/MLEB/Translate/resources/js/ext.translate.dropdownmenu.js b/MLEB/Translate/resources/js/ext.translate.dropdownmenu.js
index 0b1eb02d..34db251a 100644
--- a/MLEB/Translate/resources/js/ext.translate.dropdownmenu.js
+++ b/MLEB/Translate/resources/js/ext.translate.dropdownmenu.js
@@ -1,7 +1,7 @@
( function ( $ ) {
'use strict';
- $( document ).ready( function () {
+ $( function () {
// Hide the dropdown menu when clicking outside of it
$( 'html' ).on( 'click', function ( e ) {
if ( !e.isDefaultPrevented() ) {
@@ -9,4 +9,4 @@
}
} );
} );
-} )( jQuery );
+}( jQuery ) );
diff --git a/MLEB/Translate/resources/js/ext.translate.editor.helpers.js b/MLEB/Translate/resources/js/ext.translate.editor.helpers.js
index f3184de2..0d507a16 100644
--- a/MLEB/Translate/resources/js/ext.translate.editor.helpers.js
+++ b/MLEB/Translate/resources/js/ext.translate.editor.helpers.js
@@ -1,4 +1,4 @@
-/*
+/*!
* Translate editor additional helper functionality
*/
( function ( $, mw ) {
@@ -21,10 +21,8 @@
$messageDescViewer.addClass( 'hide' );
- $messageDescEditor
- .removeClass( 'hide' )
- .find( '.tux-textarea-documentation' )
- .focus();
+ $messageDescEditor.removeClass( 'hide' );
+ $messageDescEditor.find( '.tux-textarea-documentation' ).focus();
// So that the link won't be followed
return false;
@@ -49,16 +47,18 @@
/**
* Save the documentation
+ *
+ * @return {jQuery.Promise}
*/
saveDocumentation: function () {
var translateEditor = this,
api = new mw.Api(),
newDocumentation = translateEditor.$editor.find( '.tux-textarea-documentation' ).val();
- return api.postWithToken( 'edit', {
+ return api.postWithToken( 'csrf', {
action: 'edit',
title: translateEditor.message.title
- .replace( /\/[a-z\-]+$/, '/' + mw.config.get( 'wgTranslateDocumentationLanguageCode' ) ),
+ .replace( /\/[a-z-]+$/, '/' + mw.config.get( 'wgTranslateDocumentationLanguageCode' ) ),
text: newDocumentation
} ).done( function ( response ) {
var $messageDesc = translateEditor.$editor.find( '.infocolumn-block .message-desc' );
@@ -88,7 +88,8 @@
/**
* Shows the message documentation.
- * @param {object} documentation A documentation object as returned by API.
+ *
+ * @param {Object} documentation A documentation object as returned by API.
*/
showMessageDocumentation: function ( documentation ) {
var $descEditLink,
@@ -97,6 +98,7 @@
$messageDescViewer,
$messageDoc,
readMore,
+ langAttr,
$readMore = null;
if ( !mw.config.get( 'wgTranslateDocumentationLanguageCode' ) ) {
@@ -120,24 +122,25 @@
// lang and dir attributes.
// The message documentation is assumed to be written
// in the content language of the wiki.
+ langAttr = {
+ lang: documentation.language,
+ dir: documentationDir
+ };
+
// Possible classes:
// * mw-content-ltr
// * mw-content-rtl
// (The direction classes are needed, because the documentation
// is likely to be MediaWiki-formatted text.)
$messageDoc
- .attr( {
- lang: documentation.language,
- dir: documentationDir
- } )
+ .attr( langAttr )
.addClass( 'mw-content-' + documentationDir )
.html( documentation.html );
+ $messageDoc.find( 'a[href]' ).prop( 'target', '_blank' );
+
this.$editor.find( '.tux-textarea-documentation' )
- .attr( {
- lang: documentation.language,
- dir: documentationDir
- } )
+ .attr( langAttr )
.val( documentation.value );
$descEditLink.text( mw.msg( 'tux-editor-edit-desc' ) );
@@ -180,6 +183,7 @@
/**
* Shows uneditable documentation.
+ *
* @param {Object} documentation A gettext object as returned by API.
*/
showUneditableDocumentation: function ( documentation ) {
@@ -203,37 +207,36 @@
/**
* Shows the translations from other languages
- * @param {array} translations An inotherlanguages array as returned by the translation helpers API.
+ *
+ * @param {Array} translations An inotherlanguages array as returned by the translation helpers API.
*/
showAssistantLanguages: function ( translations ) {
- var translateEditor = this,
- $translationTextarea;
+ var translateEditor = this;
- $translationTextarea = this.$editor.find( '.tux-textarea-translation' );
+ if ( translations.error ) {
+ // Do not proceed if errored/unsupported
+ return;
+ }
$.each( translations, function ( index ) {
- var $otherLanguage,
- translationDir,
- translation = translations[index];
+ var $otherLanguage, langAttr,
+ translation = translations[ index ];
- translationDir = $.uls.data.getDir( translation.language );
+ langAttr = {
+ lang: translation.language,
+ dir: $.uls.data.getDir( translation.language )
+ };
$otherLanguage = $( '<div>' )
.addClass( 'row in-other-language' )
.append(
$( '<div>' )
.addClass( 'nine columns suggestiontext' )
- .attr( {
- lang: translation.language,
- dir: translationDir
- } )
+ .attr( langAttr )
.text( translation.value ),
$( '<div>' )
.addClass( 'three columns language text-right' )
- .attr( {
- lang: translation.language,
- dir: translationDir
- } )
+ .attr( langAttr )
.text( $.uls.data.getAutonym( translation.language ) )
);
@@ -247,10 +250,11 @@
/**
* Shows the translation suggestions from Translation Memory
- * @param {array} suggestions A ttmserver array as returned by API.
+ *
+ * @param {Array} suggestions A ttmserver array as returned by API.
*/
showTranslationMemory: function ( suggestions ) {
- var $heading, $tmSuggestions,
+ var $heading, $tmSuggestions, $messageList, translationLang, translationDir,
translateEditor = this;
if ( !suggestions.length ) {
@@ -263,6 +267,10 @@
$heading = this.$editor.find( '.tm-suggestions-title' );
$heading.after( $tmSuggestions );
+ $messageList = $( '.tux-messagelist' );
+ translationLang = $messageList.data( 'targetlangcode' );
+ translationDir = $messageList.data( 'targetlangdir' );
+
$.each( suggestions, function ( index, translation ) {
var $translation,
alreadyOnTheList = false;
@@ -300,11 +308,15 @@
.append(
$( '<div>' )
.addClass( 'nine columns suggestiontext' )
+ .attr( {
+ lang: translationLang,
+ dir: translationDir
+ } )
.text( translation.target ),
$( '<div>' )
.addClass( 'three columns quality text-right' )
.text( mw.msg( 'tux-editor-tm-match',
- Math.floor( translation.quality * 100 ) ) ),
+ mw.language.convertNumber( Math.floor( translation.quality * 100 ) ) ) ),
$( '<div>' )
.addClass( 'row text-right' )
.append(
@@ -327,10 +339,11 @@
/**
* Shows the translation from machine translation systems
- * @param {array} suggestions
+ *
+ * @param {Array} suggestions
*/
showMachineTranslations: function ( suggestions ) {
- var $mtSuggestions,
+ var $mtSuggestions, $messageList, translationLang, translationDir,
translateEditor = this;
if ( !suggestions.length ) {
@@ -347,6 +360,10 @@
.removeClass( 'hide' )
.after( $mtSuggestions );
+ $messageList = $( '.tux-messagelist' );
+ translationLang = $messageList.data( 'targetlangcode' );
+ translationDir = $messageList.data( 'targetlangdir' );
+
$.each( suggestions, function ( index, translation ) {
var $translation;
@@ -355,6 +372,10 @@
.append(
$( '<div>' )
.addClass( 'nine columns suggestiontext' )
+ .attr( {
+ lang: translationLang,
+ dir: translationDir
+ } )
.text( translation.target ),
$( '<div>' )
.addClass( 'three columns text-right service' )
@@ -369,10 +390,10 @@
/**
* Makes the $source element clickable and clicking it will replace the
- * transltion textarea with the given suggestion.
+ * translation textarea with the given suggestion.
*
* @param {jQuery} $source
- * @param {String} suggestion Text to add
+ * @param {string} suggestion Text to add
*/
suggestionAdder: function ( $source, suggestion ) {
var inserter,
@@ -397,22 +418,21 @@
/**
* Shows the support options for the translator.
- * @param {object} support A support object as returned by API.
+ *
+ * @param {Object} support A support object as returned by API.
*/
showSupportOptions: function ( support ) {
// Support URL
if ( support.url ) {
- this.$editor.find( '.help' )
- .find( 'a' )
- .attr( 'href', support.url )
- .end()
- .removeClass( 'hide' );
+ this.$editor.find( '.help a' ).attr( 'href', support.url );
+ this.$editor.find( '.help' ).removeClass( 'hide' );
}
},
/**
* Adds buttons for quickly inserting insertables.
- * @param {object} insertables A insertables object as returned by API.
+ *
+ * @param {Object} insertables A insertables object as returned by API.
*/
addInsertables: function ( insertables ) {
var i,
@@ -430,23 +450,25 @@
// on the wrong end.
$( '<button>' )
.prop( {
- dir: $sourceMessage.prop( 'dir' ),
- lang: $sourceMessage.prop( 'lang' )
+ lang: $sourceMessage.prop( 'lang' ),
+ dir: $sourceMessage.prop( 'dir' )
} )
.addClass( 'insertable shortcut-activated' )
- .text( insertables[i].display )
+ .text( insertables[ i ].display )
.data( 'iid', i )
.appendTo( $buttonArea );
}
$buttonArea.on( 'click', '.insertable', function () {
- var data = insertables[$( this ).data( 'iid' )];
+ var data = insertables[ $( this ).data( 'iid' ) ];
$textarea.textSelection( 'encapsulateSelection', {
pre: data.pre,
post: data.post
} );
$textarea.focus().trigger( 'input' );
} );
+
+ this.resizeInsertables( $textarea );
},
/**
@@ -460,8 +482,7 @@
api.get( {
action: 'translationaids',
- title: this.message.title,
- format: 'json'
+ title: this.message.title
} ).done( function ( result ) {
translateEditor.$editor.find( '.infocolumn .loading' ).remove();
@@ -503,23 +524,19 @@
/**
* Get the documentation edit URL for a title
*
- * @param {String} title Message title with namespace
- * @return {String} URL for editing the documentation
+ * @param {string} title Message title with namespace
+ * @return {string} URL for editing the documentation
*/
getDocumentationEditURL: function ( title ) {
- var descUri = new mw.Uri( window.location.href );
-
- descUri.path = mw.config.get( 'wgScript' );
- descUri.query = {
- action: 'edit',
- title: title + '/' + mw.config.get( 'wgTranslateDocumentationLanguageCode' )
- };
-
- return descUri.toString();
+ return mw.util.getUrl(
+ title + '/' + mw.config.get( 'wgTranslateDocumentationLanguageCode' ),
+ { action: 'edit' }
+ );
}
} );
// Extend the translate editor
- $.extend( $.fn.translateeditor.Constructor.prototype, translateEditorHelpers );
+ mw.translate.editor = mw.translate.editor || {};
+ $.extend( mw.translate.editor, translateEditorHelpers );
}( jQuery, mediaWiki ) );
diff --git a/MLEB/Translate/resources/js/ext.translate.editor.js b/MLEB/Translate/resources/js/ext.translate.editor.js
index 77a2b60b..6d7e56df 100644
--- a/MLEB/Translate/resources/js/ext.translate.editor.js
+++ b/MLEB/Translate/resources/js/ext.translate.editor.js
@@ -1,4 +1,6 @@
-( function ( $, mw ) {
+/* global autosize */
+
+( function ( $, mw, autosize ) {
'use strict';
/**
@@ -16,9 +18,10 @@
* internally contain the editor's generated UI. So it is going to have the same width
* and inherited properies of the container.
* The container can mark the message item with class 'message'. This is not
- * mandatory, but if found, when editor is opened the message item will be hidden
+ * mandatory, but if found, when the editor is opened, the message item will be hidden
* and the editor will appear as if the message is replaced by the editor.
- * See the UI of Translate messagetable for demo.
+ * See the UI of Translate messagetable for a demo.
+ *
* @param {HTMLElement} element
* @param {Object} options
* @param {Function} [options.beforeSave] Callback to call when translation is going to be saved.
@@ -42,7 +45,6 @@
this.storage = this.options.storage || new mw.translate.TranslationApiStorage();
this.canDelete = mw.translate.canDelete();
this.delayValidation = delayer();
- this.delayResize = delayer();
}
TranslateEditor.prototype = {
@@ -91,6 +93,7 @@
/**
* Mark the message as unsaved because of edits, can be resumed later
+ *
* @param {string} [highlightClass] Class for background highlighting
*/
markUnsaved: function ( highlightClass ) {
@@ -113,7 +116,6 @@
this.markUnsaved( 'tux-warning' );
},
-
/**
* Mark the message as no longer unsaved
*/
@@ -157,8 +159,8 @@
);
this.$messageItem
- .addClass( 'translated' )
- .removeClass( 'untranslated' );
+ .removeClass( 'untranslated translated fuzzy proofread' )
+ .addClass( 'translated' );
this.dirty = false;
@@ -167,6 +169,8 @@
'change',
[ 'translated', this.message.properties.status ]
);
+
+ this.message.properties.status = 'translated';
// TODO: Update any other statsbar for the same group in the page.
}
},
@@ -175,11 +179,13 @@
* Save the translation
*/
save: function () {
- var translation,
+ var translation, editSummary,
translateEditor = this;
mw.translateHooks.run( 'beforeSubmit', translateEditor.$editor );
translation = translateEditor.$editor.find( '.editcolumn textarea' ).val();
+ editSummary = translateEditor.$editor.find( '.tux-input-editsummary' ).val() || '';
+
translateEditor.saving = true;
// beforeSave callback
@@ -204,15 +210,33 @@
this.storage.save(
translateEditor.message.title,
- translation
- ).done( function () {
- // Update the translation
- translateEditor.message.translation = translation;
- translateEditor.onSaveSuccess();
+ translation,
+ editSummary
+ ).done( function ( response, xhr ) {
+ var editResp = response.edit;
+ if ( editResp.result === 'Success' ) {
+ translateEditor.message.translation = translation;
+ translateEditor.onSaveSuccess();
+ // Handle errors
+ } else if ( editResp.spamblacklist ) {
+ // @todo Show exactly which blacklisted URL triggered it
+ translateEditor.onSaveFail( mw.msg( 'spamprotectiontext' ) );
+ } else if ( editResp.info &&
+ editResp.info.indexOf( 'Hit AbuseFilter:' ) === 0 &&
+ editResp.warning
+ ) {
+ translateEditor.onSaveFail( editResp.warning );
+ } else {
+ translateEditor.onSaveFail( mw.msg( 'tux-save-unknown-error' ) );
+ mw.log( response, xhr );
+ }
} ).fail( function ( errorCode, response ) {
- translateEditor.onSaveFail( response.error && response.error.info || 'Unknown error' );
+ translateEditor.onSaveFail(
+ response.error && response.error.info || mw.msg( 'tux-save-unknown-error' )
+ );
if ( errorCode === 'assertuserfailed' ) {
- window.alert( mw.msg( 'tux-session-expired' ) );
+ // eslint-disable-next-line no-alert
+ alert( mw.msg( 'tux-session-expired' ) );
}
} );
},
@@ -231,10 +255,19 @@
this.removeWarning( 'fuzzy' );
this.removeWarning( 'validation' );
+ this.$editor.find( '.tux-warning' ).empty();
+ this.$editor.find( '.tux-more-warnings' )
+ .addClass( 'hide' )
+ .empty();
+
$( '.tux-editor-clear-translated' )
.removeClass( 'hide' )
.prop( 'disabled', false );
+ this.$editor.find( '.tux-input-editsummary' )
+ .val( '' )
+ .prop( 'disabled', true );
+
// Save callback
if ( this.options.onSave ) {
this.options.onSave( this.message.translation );
@@ -250,6 +283,7 @@
/**
* Marks that there was a problem saving a translation.
+ *
* @param {string} error Strings of warnings to display.
*/
onSaveFail: function ( error ) {
@@ -278,7 +312,9 @@
// Skip if the message is hidden. For example in a filter result.
if ( $next.length && $next.hasClass( 'hide' ) ) {
this.$editTrigger = $next;
- return this.next();
+ this.next();
+
+ return;
}
// If this is the last message, just hide it
@@ -332,7 +368,20 @@
* @return {jQuery} The new message tools menu element
*/
createMessageTools: function () {
- var $historyItem, $deleteItem, $translationsItem;
+ var $editItem, $historyItem, $deleteItem, $translationsItem, $linkToThisItem;
+
+ $editItem = this.createMessageToolsItem(
+ 'message-tools-edit',
+ {
+ title: this.message.title,
+ action: 'edit'
+ },
+ 'tux-editor-message-tools-show-editor'
+ );
+
+ if ( !mw.translate.canTranslate() ) {
+ $editItem.addClass( 'hide' );
+ }
$historyItem = this.createMessageToolsItem(
'message-tools-history',
@@ -372,9 +421,19 @@
'tux-editor-message-tools-translations'
);
+ $linkToThisItem = this.createMessageToolsItem(
+ 'message-tools-linktothis',
+ {
+ title: 'Special:Translate',
+ showMessage: this.message.key,
+ group: this.message.primaryGroup
+ },
+ 'tux-editor-message-tools-linktothis'
+ );
+
return $( '<ul>' )
.addClass( 'tux-dropdown-menu tux-message-tools-menu hide' )
- .append( $historyItem, $deleteItem, $translationsItem );
+ .append( $editItem, $historyItem, $deleteItem, $translationsItem, $linkToThisItem );
},
prepareEditorColumn: function () {
@@ -391,6 +450,8 @@
$controlButtonBlock,
$editingButtonBlock,
$pasteOriginalButton,
+ $editSummary,
+ $editSummaryBlock,
$discardChangesButton = $( [] ),
$saveButton,
$requestRight,
@@ -401,7 +462,7 @@
$layoutActions,
$infoToggleIcon,
$messageList,
- targetLangAttrib, targetLangDir, targetLangCode,
+ targetLangAttrib, targetLangDir, targetLangCode, prefix,
$messageTools = translateEditor.createMessageTools(),
canTranslate = mw.translate.canTranslate();
@@ -443,7 +504,7 @@
.append( $closeIcon, $infoToggleIcon );
$editorColumn.append( $( '<div>' )
- .addClass( 'row' )
+ .addClass( 'row tux-editor-titletools' )
.append( $messageKeyLabel, $layoutActions )
);
@@ -451,7 +512,7 @@
originalTranslation = this.message.translation;
sourceString = this.message.definition;
$sourceString = $( '<span>' )
- .addClass( 'eleven column sourcemessage' )
+ .addClass( 'twelve columns sourcemessage' )
.attr( {
lang: $messageList.data( 'sourcelangcode' ),
dir: $messageList.data( 'sourcelangdir' )
@@ -482,7 +543,7 @@
$moreWarnings = $warnings.children(),
lastWarningIndex = $moreWarnings.length - 1;
- // If the warning list is not open only one warning is shown
+ // If the warning list is not open, only one warning is shown
if ( $this.hasClass( 'open' ) ) {
$moreWarnings.each( function ( index, element ) {
// The first element must always be shown
@@ -529,11 +590,6 @@
$textarea.prop( 'placeholder', mw.msg( 'tux-editor-placeholder' ) );
}
- // The extra newlines is supposed to leave enough space for the
- // insertion buttons. Seems to work as long as all the buttons
- // are only in one line.
- $textarea.autosize( {append: '\n\n\n' } );
-
// Shortcuts for various insertable things
$textarea.on( 'keyup keydown', function ( e ) {
var index, info, direction;
@@ -566,7 +622,7 @@
e.stopPropagation();
translateEditor.$editor.find( '.shortcut-activated:visible' ).eq( index ).trigger( 'click' );
// Update numbers and locations after trigger should be completed
- window.setTimeout( function() { translateEditor.showShortcuts(); }, 100 );
+ window.setTimeout( function () { translateEditor.showShortcuts(); }, 100 );
}
if ( e.which === 18 && e.type === 'keyup' ) {
@@ -598,10 +654,11 @@
mw.translate.dirty = true;
}
- $saveButton.text( mw.msg( 'tux-editor-save-button-label' ) );
+ translateEditor.makeSaveButtonJustSave( $saveButton );
+
// When there is content in the editor enable the button.
// But do not enable when some saving is not finished yet.
- if ( $.trim( current ) && !translateEditor.saving ) {
+ if ( current.trim() && !translateEditor.saving ) {
$pasteSourceButton.addClass( 'hide' );
$saveButton.prop( 'disabled', false );
} else {
@@ -609,6 +666,8 @@
$pasteSourceButton.removeClass( 'hide' );
}
+ translateEditor.resizeInsertables( $textarea );
+
translateEditor.delayValidation( function () {
translateEditor.validateTranslation();
}, 500 );
@@ -621,7 +680,7 @@
$editAreaBlock = $( '<div>' )
.addClass( 'row tux-editor-editarea-block' )
.append( $( '<div>' )
- .addClass( 'editarea eleven columns' )
+ .addClass( 'editarea twelve columns' )
.append( $warningsBlock, $textarea )
);
@@ -640,6 +699,36 @@
$pasteOriginalButton.addClass( 'hide' );
} );
+ $editSummary = $( '<input>' )
+ .addClass( 'tux-input-editsummary' )
+ .attr( {
+ maxlength: 255,
+ disabled: true,
+ placeholder: mw.msg( 'tux-editor-editsummary-placeholder' )
+ } )
+ .val( '' );
+
+ // Enable edit summary if there was a change to translation area
+ // or disable if there is no text in translation area
+ $textarea.on( 'textchange', function () {
+ if ( $editSummary.prop( 'disabled' ) ) {
+ $editSummary.prop( 'disabled', false );
+ }
+ if ( $textarea.val().trim() === '' ) {
+ $editSummary.prop( 'disabled', true );
+ }
+ } ).on( 'keydown', function ( e ) {
+ if ( !e.ctrlKey || e.keyCode !== 13 ) {
+ return;
+ }
+
+ if ( !$saveButton.is( ':disabled' ) ) {
+ $saveButton.click();
+ return;
+ }
+ $skipButton.click();
+ } );
+
if ( originalTranslation !== null ) {
$discardChangesButton = $( '<button>' )
.addClass( 'tux-editor-discard-changes-button hide' ) // Initially hidden
@@ -653,10 +742,14 @@
// and go back to hiding.
$discardChangesButton.addClass( 'hide' );
- // There's nothing new to save
+ // There's nothing new to save...
+ $editSummary.val( '' ).prop( 'disabled', true );
$saveButton.prop( 'disabled', true );
+ // ...unless there is other action
+ translateEditor.makeSaveButtonContextSensitive( $saveButton );
translateEditor.markUnunsaved();
+ translateEditor.resizeInsertables( $textarea );
} );
}
@@ -665,48 +758,55 @@
}
$editingButtonBlock = $( '<div>' )
- .addClass( 'ten columns tux-editor-insert-buttons' )
+ .addClass( 'twelve columns tux-editor-insert-buttons' )
.append(
$pasteOriginalButton,
$discardChangesButton
);
+ $editSummaryBlock = $( '<div>' )
+ .addClass( 'row tux-editor-editsummary-block' )
+ .append(
+ $( '<div>' )
+ .addClass( 'twelve columns' )
+ .append( $editSummary )
+ );
+
$requestRight = $( [] );
$saveButton = $( '<button>' )
.prop( 'disabled', true )
- .addClass( 'blue button tux-editor-save-button' )
+ .addClass( 'tux-editor-save-button mw-ui-button mw-ui-progressive' )
.text( mw.msg( 'tux-editor-save-button-label' ) )
.on( 'click', function ( e ) {
translateEditor.save();
e.stopPropagation();
} );
- // When the user opens an outdated translation, the main button should be enabled
- // and display a "confirm translation" label.
- if ( this.$messageItem.hasClass( 'fuzzy' ) ) {
- $saveButton
- .prop( 'disabled', false )
- .text( mw.msg( 'tux-editor-confirm-button-label' ) );
- }
+ this.makeSaveButtonContextSensitive( $saveButton, this.$messageItem );
} else {
$editingButtonBlock = $( [] );
+ $editSummaryBlock = $( [] );
+
$requestRight = $( '<span>' )
.addClass( 'tux-editor-request-right' )
- .text( mw.msg( 'translate-edit-nopermission' ) )
- .append( $( '<a>' )
- .text( mw.msg( 'translate-edit-askpermission' ) )
- .addClass( 'tux-editor-ask-permission' )
- .attr( {
- href: mw.util.getUrl(
- mw.config.get( 'wgTranslateUseSandbox' )
- ? 'Special:TranslationStash'
- : mw.config.get( 'wgTranslatePermissionUrl' )
- )
- } )
- );
-
+ .text( mw.msg( 'translate-edit-nopermission' ) );
+ // Make sure wgTranslatePermissionUrl setting is not 'false'
+ if ( mw.config.get( 'wgTranslatePermissionUrl' ) !== false ) {
+ $requestRight
+ .append( $( '<a>' )
+ .text( mw.msg( 'translate-edit-askpermission' ) )
+ .addClass( 'tux-editor-ask-permission' )
+ .attr( {
+ href: mw.util.getUrl(
+ mw.config.get( 'wgTranslateUseSandbox' ) ?
+ 'Special:TranslationStash' :
+ mw.config.get( 'wgTranslatePermissionUrl' )
+ )
+ } )
+ );
+ }
// Disable the text area if user has no translation rights.
// Use readonly to allow copy-pasting (except for placeholders)
$textarea.prop( 'readonly', true );
@@ -715,7 +815,7 @@
}
$skipButton = $( '<button>' )
- .addClass( 'button tux-editor-skip-button' )
+ .addClass( 'tux-editor-skip-button mw-ui-button mw-ui-quiet' )
.text( mw.msg( 'tux-editor-skip-button-label' ) )
.on( 'click', function ( e ) {
translateEditor.skip();
@@ -730,7 +830,7 @@
// This appears instead of "Skip" on the last message on the page
$cancelButton = $( '<button>' )
- .addClass( 'button tux-editor-cancel-button' )
+ .addClass( 'tux-editor-cancel-button mw-ui-button mw-ui-quiet' )
.text( mw.msg( 'tux-editor-cancel-button-label' ) )
.on( 'click', function ( e ) {
translateEditor.skip();
@@ -745,17 +845,27 @@
$editorColumn.append( $( '<div>' )
.addClass( 'row tux-editor-actions-block' )
- .append( $editingButtonBlock, $controlButtonBlock )
+ .append( $editingButtonBlock )
+ );
+
+ $editorColumn.append( $editSummaryBlock );
+
+ $editorColumn.append( $( '<div>' )
+ .addClass( 'row tux-editor-actions-block' )
+ .append( $controlButtonBlock )
);
if ( canTranslate ) {
+ prefix = $.fn.updateTooltipAccessKeys.getAccessKeyPrefix();
$editorColumn.append( $( '<div>' )
.addClass( 'row shortcutinfo' )
- .text( mw.msg( 'tux-editor-shortcut-info',
- ( mw.util.tooltipAccessKeyPrefix + 's' ).toUpperCase(),
- ( mw.util.tooltipAccessKeyPrefix + 'd' ).toUpperCase(),
- 'ALT' )
- )
+ .text( mw.msg(
+ 'tux-editor-shortcut-info',
+ 'CTRL-ENTER',
+ ( prefix + 'd' ).toUpperCase(),
+ 'ALT',
+ ( prefix + 'b' ).toUpperCase()
+ ) )
);
}
@@ -763,27 +873,70 @@
},
/**
+ * Modifies the save button to provide suitable default action for *unchanged*
+ * message. It will revert back to normal save button if the text is changed.
+ *
+ * @param {jQuery} $button The save button.
+ */
+ makeSaveButtonContextSensitive: function ( $button ) {
+ var self = this;
+
+ if ( this.message.properties.status === 'fuzzy' ) {
+ $button.prop( 'disabled', false );
+ $button.text( mw.msg( 'tux-editor-confirm-button-label' ) );
+ $button.off( 'click' );
+ $button.on( 'click', function ( e ) {
+ self.save();
+ e.stopPropagation();
+ } );
+ } else if ( this.message.proofreadable ) {
+ $button.prop( 'disabled', false );
+ $button.text( mw.msg( 'tux-editor-proofread-button-label' ) );
+ $button.off( 'click' );
+ $button.on( 'click', function ( e ) {
+ $button.prop( 'disabled', true );
+ self.message.proofreadAction();
+ self.next();
+ e.stopPropagation();
+ } );
+ }
+ },
+
+ /**
+ * Modifies the save button to just save the translation as usual. Whether the
+ * button is enabled or not is controlled elsewhere.
+ *
+ * @param {jQuery} $button The save button.
+ */
+ makeSaveButtonJustSave: function ( $button ) {
+ var self = this;
+
+ $button.text( mw.msg( 'tux-editor-save-button-label' ) );
+ $button.off( 'click' );
+ $button.on( 'click', function ( e ) {
+ self.save();
+ e.stopPropagation();
+ } );
+ },
+
+ /**
* Validate the current translation using the API
* and show the warnings if necessary.
*/
validateTranslation: function () {
var translateEditor = this,
- url = new mw.Uri( mw.config.get( 'wgScript' ) ),
+ api,
$textarea = translateEditor.$editor.find( '.tux-textarea-translation' );
- // TODO: We need a better API for this
- url.extend( {
- title: 'Special:Translate/editpage',
- suggestions: 'checks',
- page: translateEditor.message.title,
- loadgroup: translateEditor.message.group
- } );
+ api = new mw.Api();
- $.post( url.toString(), {
+ api.post( {
+ action: 'translationcheck',
+ title: this.message.title,
translation: $textarea.val()
- }, function ( data ) {
+ } ).done( function ( data ) {
var warningIndex,
- warnings = JSON.parse( data );
+ warnings = data.warnings;
translateEditor.removeWarning( 'validation' );
if ( !warnings || !warnings.length ) {
@@ -802,14 +955,15 @@
}
for ( warningIndex = 0; warningIndex < warnings.length; warningIndex++ ) {
- translateEditor.addWarning( warnings[warningIndex], 'validation' );
+ translateEditor.addWarning( warnings[ warningIndex ], 'validation' );
}
} );
},
/**
* Remove all warning of given type
- * @param type
+ *
+ * @param {string} type
*/
removeWarning: function ( type ) {
var $tuxWarning = this.$editor.find( '.tux-warning' );
@@ -821,10 +975,13 @@
},
/**
- * Displays the supplied warning from the bottom up near the translation edit area.
+ * Displays the supplied warning above the translation edit area.
+ * Newer warnings are added to the top while older warnings are
+ * added to the bottom. This also means that older warnings will
+ * not be shown by default unless the user clicks "more warnings" tab.
*
- * @param {String} warning used as html for the warning display
- * @param {String} type used to group the warnings.eg: validation, diff, error
+ * @param {string} warning used as html for the warning display
+ * @param {string} type used to group the warnings.eg: validation, diff, error
* @return {jQuery} the new warning element
*/
addWarning: function ( warning, type ) {
@@ -832,21 +989,21 @@
$warnings = this.$editor.find( '.tux-warning' ),
$moreWarningsTab = this.$editor.find( '.tux-more-warnings' ),
$newWarning = $( '<div>' )
- .addClass( 'tux-warning-message hide ' + type )
+ .addClass( 'tux-warning-message ' + type )
.html( warning );
+ this.$editor.find( '.tux-warning-message' ).addClass( 'hide' );
+
$warnings
.removeClass( 'hide' )
- .append( $newWarning );
+ .prepend( $newWarning );
warningCount = $warnings.find( '.tux-warning-message' ).length;
- $warnings.find( '.tux-warning-message:first' ).removeClass( 'hide' );
-
if ( warningCount > 1 ) {
$moreWarningsTab
.text( mw.msg( 'tux-warnings-more', warningCount - 1 ) )
- .removeClass( 'hide' );
+ .removeClass( 'hide open' );
} else {
$moreWarningsTab.addClass( 'hide' );
}
@@ -868,7 +1025,7 @@
if ( mw.config.get( 'wgTranslateDocumentationLanguageCode' ) ) {
$messageDescSaveButton = $( '<button>' )
- .addClass( 'blue button tux-editor-savedoc-button' )
+ .addClass( 'tux-editor-savedoc-button mw-ui-button mw-ui-progressive' )
.prop( 'disabled', true )
.text( mw.msg( 'tux-editor-doc-editor-save' ) )
.on( 'click', function () {
@@ -880,7 +1037,7 @@
} );
$messageDescCancelButton = $( '<button>' )
- .addClass( 'button tux-editor-skipdoc-button' )
+ .addClass( 'tux-editor-skipdoc-button mw-ui-button mw-ui-quiet' )
.text( mw.msg( 'tux-editor-doc-editor-cancel' ) )
.on( 'click', function () {
translateEditor.hideDocumentationEditor();
@@ -918,12 +1075,12 @@
.append( $( '<a>' )
.attr( {
href: mw.translate.getDocumentationEditURL(
- this.message.title.replace( /\/[a-z\-]+$/, '' )
+ this.message.title.replace( /\/[a-z-]+$/, '' )
),
target: '_blank'
} )
.addClass( 'message-desc-edit' )
- .on( 'click', $.proxy( this.showDocumentationEditor, this ) )
+ .on( 'click', this.showDocumentationEditor.bind( this ) )
)
);
@@ -969,7 +1126,7 @@
return $( '<div>' )
.addClass( 'five columns infocolumn-block' )
.append(
- $( '<span>' ).addClass( 'caret' ),
+ $( '<span>' ).addClass( 'tux-message-editor__caret' ),
$infoColumn
);
},
@@ -991,19 +1148,15 @@
$( '.tux-editor-save-button, .tux-editor-save-button' ).removeAttr( 'accesskey' );
this.$editor.find( '.tux-editor-save-button' ).attr( 'accesskey', 's' );
this.$editor.find( '.tux-editor-skip-button' ).attr( 'accesskey', 'd' );
+ this.$editor.find( '.tux-input-editsummary' ).attr( 'accesskey', 'b' );
// @todo access key for the cancel button
this.$messageItem.addClass( 'hide' );
this.$editor.removeClass( 'hide' );
$textarea.focus();
- // Apparently there is still something going on that affects the
- // layout of the text area after this function. Use very small
- // delay to have it settle down and have correct results. Otherwise
- // there will be a size change once the first letter is typed.
- this.delayResize( function() {
- $textarea.trigger( 'autosize.resizeIncludeStyle' );
- }, 1 );
+ autosize( $textarea );
+ this.resizeInsertables( $textarea );
this.shown = true;
this.$editTrigger.addClass( 'open' );
@@ -1015,6 +1168,8 @@
$next.data( 'translateeditor' ).init();
}
+ mw.translateHooks.run( 'afterEditorShown', this.$editor );
+
return false;
},
@@ -1056,12 +1211,7 @@
.addClass( 'editor-expand' )
.attr( 'title', mw.msg( 'tux-editor-expand-tooltip' ) );
- this.$editor.find( '.infocolumn-block' )
- .removeClass( 'hide' );
- this.$editor.find( '.editcolumn' )
- .removeClass( 'twelve' )
- .addClass( 'seven' );
-
+ this.$editor.removeClass( 'tux-message-editor--expanded' );
this.expanded = false;
},
@@ -1072,18 +1222,14 @@
.addClass( 'editor-contract' )
.attr( 'title', mw.msg( 'tux-editor-collapse-tooltip' ) );
- this.$editor.find( '.infocolumn-block' )
- .addClass( 'hide' );
- this.$editor.find( '.editcolumn' )
- .removeClass( 'seven' )
- .addClass( 'twelve' );
-
+ this.$editor.addClass( 'tux-message-editor--expanded' );
this.expanded = true;
},
/**
* Adds the diff between old and current definitions to the view.
- * @param {object} definitiondiff A definitiondiff object as returned by API.
+ *
+ * @param {Object} definitiondiff A definitiondiff object as returned by API.
*/
addDefinitionDiff: function ( definitiondiff ) {
var $trigger;
@@ -1094,7 +1240,7 @@
}
// Load the diff styles
- mw.loader.load( 'mediawiki.action.history.diff', undefined, true );
+ mw.loader.load( 'mediawiki.diff.styles' );
$trigger = $( '<span>' )
.addClass( 'show-diff-link' )
@@ -1121,6 +1267,21 @@
return false;
} );
+ },
+
+ /**
+ * Makes the textare large enough for insertables and positions the insertables.
+ *
+ * @param {jQuery} $textarea Text area.
+ */
+ resizeInsertables: function ( $textarea ) {
+ var $buttonArea, buttonAreaHeight;
+
+ $buttonArea = this.$editor.find( '.tux-editor-insert-buttons' );
+ buttonAreaHeight = $buttonArea.height();
+ $textarea.css( 'padding-bottom', buttonAreaHeight + 5 );
+ $buttonArea.css( 'top', -buttonAreaHeight );
+ autosize.update( $textarea );
}
};
@@ -1140,21 +1301,22 @@
}
if ( typeof options === 'string' ) {
- data[options].call( $this );
+ data[ options ].call( $this );
}
} );
};
- $.fn.translateeditor.Constructor = TranslateEditor;
+ mw.translate.editor = mw.translate.editor || {};
+ mw.translate.editor = $.extend( TranslateEditor.prototype, mw.translate.editor );
function delayer() {
- return (function () {
+ return ( function () {
var timer = 0;
return function ( callback, milliseconds ) {
clearTimeout( timer );
timer = setTimeout( callback, milliseconds );
};
- } () );
+ }() );
}
-}( jQuery, mediaWiki ) );
+}( jQuery, mediaWiki, autosize ) );
diff --git a/MLEB/Translate/resources/js/ext.translate.editor.shortcuts.js b/MLEB/Translate/resources/js/ext.translate.editor.shortcuts.js
index e68b6e3a..bb1a49b8 100644
--- a/MLEB/Translate/resources/js/ext.translate.editor.shortcuts.js
+++ b/MLEB/Translate/resources/js/ext.translate.editor.shortcuts.js
@@ -1,7 +1,7 @@
-/*
+/*!
* Translate editor shortcuts
*/
-( function ( $ ) {
+( function ( $, mw ) {
'use strict';
var translateEditorShortcuts = {
@@ -18,7 +18,7 @@
maxLeft = editorOffset.left;
if ( !rtl ) {
- maxLeft += this.$editor.outerWidth();
+ maxLeft += this.$editor.outerWidth();
}
this.hideShortcuts();
@@ -26,15 +26,15 @@
// For scrolling up and down
$( '<div>' )
.text( '↑' )
- .offset( { top: middle - 10, left: maxLeft } )
.addClass( 'shortcut-popup' )
- .appendTo( 'body' );
+ .appendTo( 'body' )
+ .offset( { top: middle - 10, left: maxLeft - 10 } );
$( '<div>' )
.text( '↓' )
- .offset( { top: middle + 10, left: maxLeft } )
.addClass( 'shortcut-popup' )
- .appendTo( 'body' );
+ .appendTo( 'body' )
+ .offset( { top: middle + 10, left: maxLeft - 10 } );
this.$editor.find( '.shortcut-activated:visible' ).each( function ( index ) {
var $this = $( this ),
@@ -51,9 +51,9 @@
$( '<div>' )
.text( index + 1 )
- .offset( offset )
.addClass( 'shortcut-popup' )
- .appendTo( 'body' );
+ .appendTo( 'body' )
+ .offset( { top: offset.top - 10, left: offset.left - 10 } );
} );
},
@@ -62,7 +62,7 @@
}
};
- // Extend the translate editor
- $.extend( $.fn.translateeditor.Constructor.prototype, translateEditorShortcuts );
+ mw.translate.editor = mw.translate.editor || {};
+ $.extend( mw.translate.editor, translateEditorShortcuts );
}( jQuery, mediaWiki ) );
diff --git a/MLEB/Translate/resources/js/ext.translate.groupselector.js b/MLEB/Translate/resources/js/ext.translate.groupselector.js
index a10ee582..1bfd27b2 100644
--- a/MLEB/Translate/resources/js/ext.translate.groupselector.js
+++ b/MLEB/Translate/resources/js/ext.translate.groupselector.js
@@ -1,14 +1,25 @@
( function ( $, mw ) {
'use strict';
- var groupsLoader, recentGroupsLoader, delay;
+ var groupsLoader, delay;
/**
* options
* - position: accepts same values as jquery.ui.position
- * - onSelect: callback with message group id when selected
- * - language: language for statistics.
+ * - onSelect:
+ * - language:
+ * - preventSelector: boolean to load but not show the group selector.
+ * - recent: list of recent group ids
* groups: list of message group ids
+ *
+ * @param {Element} element
+ * @param {Object} options
+ * @param {Object} [options.position] Accepts same values as jquery.ui.position.
+ * @param {Function} [options.onSelect] Callback with message group id when selected.
+ * @param {string} options.language Language code for statistics.
+ * @param {boolean} [options.preventSelector] Whether not to show the group selector.
+ * @param {string[]} [options.recent] List of recent message group ids.
+ * @param {string[]} [groups] List of message group ids to show.
*/
function TranslateMessageGroupSelector( element, options, groups ) {
this.$trigger = $( element );
@@ -24,6 +35,7 @@
this.customOptions = options;
this.flatGroupList = null;
this.groups = groups;
+ this.firstShow = true;
this.init();
}
@@ -44,8 +56,7 @@
* Prepare the selector menu rendering
*/
prepareSelectorMenu: function () {
- var $groupTitle,
- $listFilters,
+ var $listFilters,
$listFiltersGroup,
$search,
$searchIcon,
@@ -55,15 +66,6 @@
.addClass( 'tux-groupselector' )
.addClass( 'grid' );
- $groupTitle = $( '<div>' )
- .addClass( 'row' )
- .append(
- $( '<h3>' )
- .addClass( 'tux-groupselector__title' )
- .addClass( 'ten columns' )
- .text( mw.msg( 'translate-msggroupselector-projects' ) )
- );
-
$searchIcon = $( '<div>' )
.addClass( 'two columns tux-groupselector__filter__search__icon' );
@@ -85,11 +87,16 @@
.append(
$( '<div>' )
.addClass( 'tux-grouptab tux-grouptab--all tux-grouptab--selected' )
- .text( mw.msg( 'translate-msggroupselector-search-all' ) ),
+ .text( mw.msg( 'translate-msggroupselector-search-all' ) )
+ );
+
+ if ( this.options.recent && this.options.recent.length ) {
+ $listFilters.append(
$( '<div>' )
.addClass( 'tux-grouptab tux-grouptab--recent' )
.text( mw.msg( 'translate-msggroupselector-search-recent' ) )
);
+ }
$searchGroup = $( '<div>' )
.addClass( 'tux-groupselector__filter__search' )
@@ -108,7 +115,7 @@
this.$loader = $( '<div>' )
.addClass( 'tux-loading-indicator tux-loading-indicator--centered' );
- this.$menu.append( $groupTitle, $listFiltersGroup, this.$loader, this.$list );
+ this.$menu.append( $listFiltersGroup, this.$loader, this.$list );
$( 'body' ).append( this.$menu );
},
@@ -117,25 +124,29 @@
* Show the selector
*/
show: function () {
- // Hide all other open menus
- $( '.tux-groupselector.open' )
- .removeClass( 'open' )
- .hide();
this.$menu.addClass( 'open' ).show();
this.position();
// Place the focus in the message group search box.
this.$search.focus();
// Start loading the groups, but assess the situation again after
// they are loaded, in case user has made further interactions.
- this.loadGroups().done( $.proxy( this.showList, this ) );
- // Hide the selector panel when clicking outside of it
- $( 'html' ).one( 'click', $.proxy( this.hide, this ) );
+ if ( this.firstShow ) {
+ this.loadGroups().done( this.showList.bind( this ) );
+ this.firstShow = false;
+ }
},
/**
* Hide the selector
+ *
+ * @param {jQuery.Event} e
*/
- hide: function () {
+ hide: function ( e ) {
+ // Do not hide if the trigger is clicked
+ if ( e && ( this.$trigger.is( e.target ) || this.$trigger.has( e.target ).length ) ) {
+ return;
+ }
+
this.$menu.hide().removeClass( 'open' );
},
@@ -157,11 +168,11 @@
var $tabs,
groupSelector = this;
- groupSelector.$trigger.on( 'click', function ( e ) {
- groupSelector.toggle();
+ // Hide the selector panel when clicking outside of it
+ $( 'html' ).on( 'click', this.hide.bind( this ) );
- e.preventDefault();
- e.stopPropagation();
+ groupSelector.$trigger.on( 'click', function () {
+ groupSelector.toggle();
} );
groupSelector.$menu.on( 'click', function ( e ) {
@@ -177,28 +188,26 @@
groupSelector.hide();
- groupSelector.$trigger
- .removeClass( 'tail' )
- .nextAll().remove();
-
- groupSelector.$trigger.addClass( 'expanded' );
- // FIXME In future, if we are going to have multiple groupselectors per page
- // this will fail.
- $( '.tux-breadcrumb .tail' ).remove();
-
- $newLink = $( '<span>' )
- .addClass( 'grouptitle grouplink tail' )
- .text( messageGroup.label );
- $( '.tux-breadcrumb .grouplink:last' ).after( $newLink );
- $newLink.data( 'msggroupid', messageGroup.id );
-
- if ( messageGroup.groups && messageGroup.groups.length > 0 ) {
- // Pass options for callbacks, language etc. but ignore the position
- // option unless explicitly given to allow automatic recalculation
- // of the position compared to the new trigger.
- $newLink.msggroupselector( groupSelector.customOptions );
- // Show the new menu immediately
- $newLink.data( 'msggroupselector' ).show();
+ groupSelector.$trigger.nextAll().remove();
+
+ if ( !groupSelector.options.preventSelector ) {
+ $newLink = $( '<span>' )
+ .addClass( 'grouptitle grouplink' )
+ .text( messageGroup.label )
+ .data( 'msggroupid', messageGroup.id );
+
+ groupSelector.$trigger.after( $newLink );
+
+ if ( messageGroup.groups && messageGroup.groups.length > 0 ) {
+ // Show the new menu immediately.
+ // Pass options for callbacks, language etc. but ignore the position
+ // option unless explicitly given to allow automatic recalculation
+ // of the position compared to the new trigger.
+ $newLink
+ .addClass( 'tux-breadcrumb__item--aggregate' )
+ .msggroupselector( groupSelector.customOptions )
+ .data( 'msggroupselector' ).show();
+ }
}
if ( groupSelector.options.onSelect ) {
@@ -226,12 +235,12 @@
groupSelector.showList();
} );
- this.$search.on( 'click', $.proxy( this.show, this ) )
- .on( 'keypress', $.proxy( this.keyup, this ) )
- .on( 'keyup', $.proxy( this.keyup, this ) );
+ this.$search.on( 'click', this.show.bind( this ) )
+ .on( 'keypress', this.keyup.bind( this ) )
+ .on( 'keyup', this.keyup.bind( this ) );
if ( this.eventSupported( 'keydown' ) ) {
- this.$search.on( 'keydown', $.proxy( this.keyup, this ) );
+ this.$search.on( 'keydown', this.keyup.bind( this ) );
}
},
@@ -239,7 +248,7 @@
* Handle the keypress/keyup events in the message group search box.
*/
keyup: function () {
- delay( $.proxy( this.showList, this ), 300 );
+ delay( this.showList.bind( this ), 300 );
},
/**
@@ -256,7 +265,7 @@
* Shows suitable list for current view, taking possible filter into account
*/
showList: function () {
- var query = $.trim( this.$search.val() ).toLowerCase();
+ var query = this.$search.val().trim().toLowerCase();
if ( query ) {
this.filter( query );
@@ -293,7 +302,7 @@
this.$loader.show();
- this.loadGroups().done( function( groups ) {
+ this.loadGroups().done( function ( groups ) {
var groupsToShow = mw.translate.findGroup( groupSelector.parentGroupId, groups );
// We do not want to display the group itself, only its subgroups
@@ -311,13 +320,15 @@
* Show recent message groups.
*/
showRecentGroups: function () {
- $.when( this.loadRecentGroups(), this.loadGroups() )
- .done( $.proxy( this.showSelectedGroups, this ) );
+ var recent = this.options.recent || [];
+
+ this.showSelectedGroups( recent );
},
/**
* Load message groups.
- * @param {Array} groups: List of the message group ids to show.
+ *
+ * @param {Array} groups List of the message group ids to show.
*/
showSelectedGroups: function ( groups ) {
var groupSelector = this;
@@ -333,17 +344,18 @@
} );
return rows;
} )
- .always( function() {
+ .always( function () {
groupSelector.$loader.hide();
groupSelector.$list.empty();
} )
- .done( function( rows ) {
+ .done( function ( rows ) {
groupSelector.$list.append( rows );
} );
},
/**
* Flattens a message group tree.
+ *
* @param {Array} messageGroups An array or data object.
* @param {Object} foundIDs The array in which the keys are IDs of message groups that were found already.
*/
@@ -356,14 +368,14 @@
for ( i = 0; i < messageGroups.length; i++ ) {
// Avoid duplicate groups, and add the parent before subgroups
- if ( !foundIDs[messageGroups[i].id] ) {
- this.flatGroupList.push( messageGroups[i] );
- foundIDs[messageGroups[i].id] = true;
+ if ( !foundIDs[ messageGroups[ i ].id ] ) {
+ this.flatGroupList.push( messageGroups[ i ] );
+ foundIDs[ messageGroups[ i ].id ] = true;
}
// In case there are subgroups, add them recursively
- if ( messageGroups[i].groups ) {
- this.flattenGroupList( messageGroups[i].groups, foundIDs );
+ if ( messageGroups[ i ].groups ) {
+ this.flattenGroupList( messageGroups[ i ].groups, foundIDs );
}
}
},
@@ -371,12 +383,13 @@
/**
* Search the message groups based on label or id.
* Label match is prefix match, while id match is exact match.
+ *
* @param {string} query
*/
filter: function ( query ) {
var self = this;
- this.loadGroups().done( function( groups ) {
+ this.loadGroups().done( function ( groups ) {
var currentGroup, index, matcher, foundGroups = [];
if ( !self.flatGroupList ) {
@@ -393,9 +406,9 @@
matcher = new RegExp( '\\b' + escapeRegex( query ), 'i' );
for ( index = 0; index < self.flatGroupList.length; index++ ) {
- if ( matcher.test( self.flatGroupList[index].label ) ||
- query === self.flatGroupList[index].id ) {
- foundGroups.push( self.flatGroupList[index] );
+ if ( matcher.test( self.flatGroupList[ index ].label ) ||
+ query === self.flatGroupList[ index ].id ) {
+ foundGroups.push( self.flatGroupList[ index ] );
}
}
@@ -411,13 +424,14 @@
* @return {jQuery.Promise}
*/
loadGroups: function () {
+ var params;
+
if ( groupsLoader !== undefined ) {
return groupsLoader;
}
- var params = {
+ params = {
action: 'query',
- format: 'json',
meta: 'messagegroups',
mgformat: 'tree',
mgprop: 'id|label|icon|priority|prioritylangs|priorityforce',
@@ -426,7 +440,7 @@
groupsLoader = new mw.Api()
.get( params )
- .then( function( result ) {
+ .then( function ( result ) {
return result.query.messagegroups;
} )
.promise();
@@ -435,31 +449,6 @@
},
/**
- * Returns list of recently used message groups by the user.
- *
- * @return {jQuery.Promise}
- */
- loadRecentGroups: function () {
- if ( recentGroupsLoader !== undefined ) {
- return recentGroupsLoader;
- }
-
- var params = {
- action: 'translateuser',
- format: 'json'
- };
-
- recentGroupsLoader = new mw.Api()
- .get( params )
- .then( function( result ) {
- return result.translateuser.recentgroups;
- } )
- .promise();
-
- return recentGroupsLoader;
- },
-
- /**
* Add rows with message groups to the selector.
*
* @param {Array} groups Array of message group objects to add.
@@ -482,7 +471,7 @@
if ( group.priority === 'discouraged' ||
( group.priorityforce &&
group.prioritylangs &&
- $.inArray( targetLanguage, group.prioritylangs ) === -1 )
+ group.prioritylangs.indexOf( targetLanguage ) === -1 )
) {
return;
}
@@ -505,10 +494,11 @@
/**
* Prepare a message group row in the selector.
+ *
* @param {Object} messagegroup object.
- * @returns {Object} a jQuery object with the groups selector row (<div>).
+ * @return {Object} a jQuery object with the groups selector row (<div>).
*/
- prepareMessageGroupRow: function( messagegroup ) {
+ prepareMessageGroupRow: function ( messagegroup ) {
var $row,
$icon,
$label,
@@ -535,7 +525,8 @@
.addClass( 'seven columns' )
.append(
$( '<span>' )
- .prop( { dir: 'auto' } )
+ // T130390: must be attr for IE/Edge.
+ .attr( { dir: 'auto' } )
.text( messagegroup.label ),
$statsbar
);
@@ -546,9 +537,7 @@
}
if ( messagegroup.icon && messagegroup.icon.vector ) {
- style +=
- 'background-image: -webkit-linear-gradient(transparent, transparent), url(--);' +
- 'background-image: linear-gradient(transparent, transparent), url(--);';
+ style += 'background-image: linear-gradient(transparent, transparent), url(--);';
style = style.replace( /--/g, messagegroup.icon.vector );
}
@@ -572,8 +561,8 @@
/**
* Check that a DOM event is supported by the $menu jQuery object.
*
- * @param eventName
- * @returns {boolean}
+ * @param {string} eventName
+ * @return {boolean}
*/
eventSupported: function ( eventName ) {
var $search = this.$menu.find( '.tux-groupselector__filter__search__input' ),
@@ -581,7 +570,7 @@
if ( !isSupported ) {
this.$element.setAttribute( eventName, 'return;' );
- isSupported = typeof this.$element[eventName] === 'function';
+ isSupported = typeof this.$element[ eventName ] === 'function';
}
return isSupported;
@@ -604,7 +593,7 @@
}
if ( typeof options === 'string' ) {
- data[options].call( $this );
+ data[ options ].call( $this );
}
} );
};
@@ -622,13 +611,15 @@
/*
* Private functions
*/
+
/**
* Escape the search query for regex match
+ *
* @param {string} value A search string to be escaped.
- * @returns {string} Escaped string that is safe to use for a search.
+ * @return {string} Escaped string that is safe to use for a search.
*/
function escapeRegex( value ) {
- return value.replace( /[\-\[\]{}()*+?.,\\\^$\|#\s]/g, '\\$&' );
+ return value.replace( /[-[\]{}()*+?.,\\^$|#\s]/g, '\\$&' );
}
delay = ( function () {
@@ -638,5 +629,5 @@
clearTimeout( timer );
timer = setTimeout( callback, milliseconds );
};
- } () );
+ }() );
}( jQuery, mediaWiki ) );
diff --git a/MLEB/Translate/resources/js/ext.translate.hooks.js b/MLEB/Translate/resources/js/ext.translate.hooks.js
index 1155aa9c..855e735c 100644
--- a/MLEB/Translate/resources/js/ext.translate.hooks.js
+++ b/MLEB/Translate/resources/js/ext.translate.hooks.js
@@ -1,9 +1,9 @@
-/**
+/*!
* JavaScript hook framework for Translate (since MediaWiki code doesn't
* yet have one. See hooks.txt in Translate directory for how to use hooks.
*
* @author Harry Burt
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
* @since 2012-08-22
*/
@@ -14,10 +14,10 @@
mw.translateHooks = {
add: function ( name, func ) {
- if ( !registry[name] ) {
- registry[name] = [];
+ if ( !registry[ name ] ) {
+ registry[ name ] = [];
}
- registry[name].push( func );
+ registry[ name ].push( func );
},
run: function ( /* infinite list of parameters */ ) {
@@ -26,11 +26,11 @@
args = Array.prototype.slice.call( arguments );
name = args.shift();
- if ( registry[name] ) {
- length = registry[name].length;
+ if ( registry[ name ] ) {
+ length = registry[ name ].length;
for ( i = 0; i < length; i++ ) {
- registry[name][i].apply( null, args );
+ registry[ name ][ i ].apply( null, args );
}
}
}
diff --git a/MLEB/Translate/resources/js/ext.translate.messagetable.js b/MLEB/Translate/resources/js/ext.translate.messagetable.js
index 335a5644..09b3824d 100644
--- a/MLEB/Translate/resources/js/ext.translate.messagetable.js
+++ b/MLEB/Translate/resources/js/ext.translate.messagetable.js
@@ -1,18 +1,7 @@
( function ( $, mw ) {
'use strict';
- var delay, itemsClass;
-
- delay = ( function () {
- var timer = 0;
-
- return function ( callback, milliseconds ) {
- clearTimeout( timer );
- timer = setTimeout( callback, milliseconds );
- };
- } () );
-
- itemsClass = {
+ var itemsClass = {
proofread: '.tux-message-proofread',
page: '.tux-message-pagemode',
translate: '.tux-message'
@@ -27,62 +16,22 @@
action: 'query',
list: 'messagecollection',
mcgroup: messageGroup,
- format: 'json',
mclanguage: language,
mcoffset: offset,
mclimit: limit,
mcfilter: filter,
mcprop: 'definition|translation|tags|properties',
- rawcontinue: 1
+ rawcontinue: 1,
+ errorformat: 'html'
} );
- },
-
- loadMessages: function ( changes ) {
- // FIXME: this should be member method
- var $container = $( '.tux-messagelist' ),
- $loader = $( '.tux-messagetable-loader' ),
- $statsbar = $( '.tux-message-list-statsbar' );
-
- changes = changes || {};
-
- // Clear current messages
- $container.trigger( 'clear' );
-
- // Change the properties that are provided
- if ( changes.filter !== undefined ) {
- $loader.data( 'filter', changes.filter );
- }
- if ( changes.group !== undefined ) {
- $loader.data( 'messagegroup', changes.group );
- }
-
- // Reset the number of messages remaining
- $loader.find( '.tux-messagetable-loader-count' ).text( '' );
-
- // Reset the statsbar
- $statsbar
- .empty()
- .removeData()
- .languagestatsbar( {
- language: $container.data( 'targetlangcode' ),
- group: $loader.data( 'messagegroup' )
- } );
-
- // Reset other info and make visible
- $loader
- .removeData( 'offset' )
- .removeAttr( 'data-offset' )
- .removeClass( 'hide' );
-
- // And start loading
- $loader.trigger( 'appear' );
}
} );
- function MessageTable( container, options ) {
+ function MessageTable( container, options, settings ) {
this.$container = $( container );
this.options = options;
this.options = $.extend( {}, $.fn.messagetable.defaults, options );
+ this.settings = settings;
// mode can be proofread, page or translate
this.mode = this.options.mode;
this.firstProofreadTipShown = false;
@@ -90,7 +39,11 @@
this.$header = this.$container.siblings( '.tux-messagetable-header' );
// Container is between these in the dom.
this.$loader = this.$container.siblings( '.tux-messagetable-loader' );
+ this.$loaderIcon = this.$loader.find( '.tux-loading-indicator' );
+ this.$loaderInfo = this.$loader.find( '.tux-messagetable-loader-info' );
this.$actionBar = this.$container.siblings( '.tux-action-bar' );
+ this.$statsBar = this.$actionBar.find( '.tux-message-list-statsbar' );
+ this.$proofreadOwnTranslations = this.$actionBar.find( '.tux-proofread-own-translations-button' );
this.messages = [];
this.loading = false;
this.init();
@@ -99,8 +52,7 @@
MessageTable.prototype = {
init: function () {
- this.switchMode( this.mode );
- this.initialized = true;
+ this.$actionBar.removeClass( 'hide' );
},
listen: function () {
@@ -108,32 +60,24 @@
$filterInput = this.$container.parent().find( '.tux-message-filter-box' );
// Vector has transitions of 250ms which affect layout. Let those finish.
- $( window ).on( 'scroll resize', function () {
- delay( function () {
- messageTable.scroll();
- }, 250 );
- } ).resize( function () {
+ $( window ).on( 'scroll', $.debounce( 250, function () {
+ messageTable.scroll();
+
+ if ( isLoaderVisible( messageTable.$loader ) ) {
+ messageTable.load();
+ }
+ } ) ).on( 'resize', $.throttle( 250, function () {
messageTable.resize();
- } );
+ messageTable.scroll();
+ } ) );
if ( mw.translate.isPlaceholderSupported( $filterInput ) ) {
$filterInput.prop( 'placeholder', mw.msg( 'tux-message-filter-placeholder' ) );
}
- $filterInput.on( 'textchange', function () {
- delay( function () {
- messageTable.search( $filterInput.val() );
- }, 300 );
- } );
-
- this.$container.on( 'clear', $.proxy( messageTable.clear, messageTable ) );
-
- this.$loader.appear( function () {
- messageTable.load();
- }, {
- // Appear callback need to be called more than once.
- one: false
- } );
+ $filterInput.on( 'textchange', $.debounce( 250, function () {
+ messageTable.search( $filterInput.val() );
+ } ) );
this.$actionBar.find( 'button.proofread-mode-button' ).on( 'click', function () {
messageTable.switchMode( 'proofread' );
@@ -146,6 +90,20 @@
this.$actionBar.find( 'button.page-mode-button' ).on( 'click', function () {
messageTable.switchMode( 'page' );
} );
+
+ this.$proofreadOwnTranslations.click( function () {
+ var $this = $( this ),
+ hideMessage = mw.msg( 'tux-editor-proofreading-hide-own-translations' ),
+ showMessage = mw.msg( 'tux-editor-proofreading-show-own-translations' );
+
+ if ( $this.hasClass( 'down' ) ) {
+ messageTable.setHideOwnInProofreading( false );
+ $this.removeClass( 'down' ).text( hideMessage );
+ } else {
+ messageTable.setHideOwnInProofreading( true );
+ $this.addClass( 'down' ).text( showMessage );
+ }
+ } );
},
/**
@@ -153,12 +111,17 @@
*/
clear: function () {
this.$container.empty();
- $( '.translate-tipsy' ).remove();
+ $( '.translate-tooltip' ).remove();
this.messages = [];
// Any ongoing loading process will notice this and will reject results.
this.loading = false;
},
+ /**
+ * Adds a new message using current mode.
+ *
+ * @param {Object} message
+ */
add: function ( message ) {
// Prepare the message for display
mw.translateHooks.run( 'formatMessageBeforeTable', message );
@@ -174,6 +137,8 @@
/**
* Add a message to the message table for translation.
+ *
+ * @param {Object} message
*/
addTranslate: function ( message ) {
var $message,
@@ -187,7 +152,7 @@
statusMsg = '';
if ( message.tags.length &&
- $.inArray( 'optional', message.tags ) >= 0 &&
+ message.tags.indexOf( 'optional' ) >= 0 &&
status === 'untranslated'
) {
status = 'optional';
@@ -241,7 +206,7 @@
dir: targetLangDir
} )
.text( message.translation || '' )
- ),
+ ),
$( '<div>' )
.addClass( 'two columns tux-list-status text-center' )
.append(
@@ -255,8 +220,7 @@
$( '<a>' )
.attr( {
title: mw.msg( 'translate-edit-title', message.key ),
- href: ( new mw.Uri( mw.util.getUrl( message.title ) ) )
- .extend( { action: 'edit' } )
+ href: mw.util.getUrl( message.title, { action: 'edit' } )
} )
.text( mw.msg( 'tux-edit' ) )
)
@@ -273,9 +237,11 @@
/**
* Add a message to the message table for proofreading.
+ *
+ * @param {Object} message
*/
addProofread: function ( message ) {
- var icon, $message;
+ var $message, $icon;
$message = $( '<div>' ).addClass( 'row tux-message-proofread' );
@@ -286,30 +252,53 @@
targetlangcode: this.$container.data( 'targetlangcode' )
} );
- // Add autotipsy to first available proofread action icon
- if ( this.firstProofreadTipShown ) {
+ $icon = $message.find( '.tux-proofread-action' );
+ if ( $icon.length === 0 ) {
return;
}
- icon = $message.find( '.tux-proofread-action' );
- if ( icon.length === 0 ) {
+ // Add autotooltip to first available proofread action icon
+ if ( this.firstProofreadTipShown ) {
return;
}
-
this.firstProofreadTipShown = true;
- icon.addClass( 'autotipsy' );
-
- // Selectors are not cached in case the element no longer exists
- setTimeout( function () {
- var icon = $( '.autotipsy' );
- if ( icon.length ) { icon.tipsy( 'show' ); }
- }, 1000 );
- setTimeout( function () {
- var icon = $( '.autotipsy' );
- if ( icon.length ) { icon.tipsy( 'hide' ); }
- }, 4000 );
+ $icon.addClass( 'autotooltip' );
+
+ mw.loader.using( 'oojs-ui-core' ).done( function () {
+ var tooltip = new OO.ui.PopupWidget( {
+ padded: true,
+ align: 'center',
+ width: 250,
+ classes: [ 'translate-tooltip' ],
+ $content: $( '<p>' ).text( $icon.prop( 'title' ) )
+ } );
+
+ setTimeout( function () {
+ var offset, $icon = $( '.autotooltip:visible' );
+ if ( !$icon.length ) {
+ return;
+ }
+
+ offset = $icon.offset();
+ tooltip.$element.appendTo( 'body' );
+ tooltip.toggle( true ).toggleClipping( false ).togglePositioning( false );
+ tooltip.$element.css( {
+ top: offset.top + $icon.outerHeight() + 5,
+ left: offset.left + $icon.outerWidth() - tooltip.$element.width() / 2 - 15
+ } );
+
+ setTimeout( function () {
+ tooltip.$element.remove();
+ }, 4000 );
+ }, 1000 );
+ } );
},
+ /**
+ * Add a message to the message table for wiki page mode.
+ *
+ * @param {Object} message
+ */
addPageModeMessage: function ( message ) {
var $message;
@@ -327,7 +316,7 @@
/**
* Search the message filter
*
- * @param {String} query
+ * @param {string} query
*/
search: function ( query ) {
var $note, $button, $result,
@@ -351,17 +340,14 @@
$result = this.$container.find( '.tux-message-filter-result' );
if ( !$result.length ) {
$note = $( '<div>' )
- .addClass( 'nine columns advanced-search' );
+ .addClass( 'advanced-search' );
- $button = $( '<div>' )
- .addClass( 'three columns' )
- .append( $( '<button>' )
- .addClass( 'button' )
- .text( mw.msg( 'tux-message-filter-advanced-button' ) )
- );
+ $button = $( '<button>' )
+ .addClass( 'mw-ui-button' )
+ .text( mw.msg( 'tux-message-filter-advanced-button' ) );
$result = $( '<div>' )
- .addClass( 'row highlight tux-message-filter-result' )
+ .addClass( 'tux-message-filter-result' )
.append( $note, $button );
this.$container.prepend( $result );
@@ -374,12 +360,10 @@
.find( '.advanced-search' )
.text( mw.msg( 'tux-message-filter-result', resultCount, query ) );
$result.find( 'button' ).on( 'click', function () {
- window.location.href = new mw.Uri( mw.util.getUrl( 'Special:SearchTranslations' ) )
- .extend( { query: query } );
+ window.location.href = mw.util.getUrl( 'Special:SearchTranslations', { query: query } );
} );
}
- this.$loader.trigger( 'appear' );
this.updateLastMessage();
// Trigger a scroll event for the window to make sure all floating toolbars
@@ -406,100 +390,161 @@
}
},
- load: function () {
+ /**
+ * Start loading messages again with new settings.
+ *
+ * @param {Object} changes
+ */
+ changeSettings: function ( changes ) {
+ // Clear current messages
+ this.clear();
+ this.settings = $.extend( this.settings, changes );
+
+ if ( this.initialized === false ) {
+ this.switchMode( this.mode );
+ }
+
+ // Reset the number of messages remaining
+ this.$loaderInfo.text(
+ mw.msg( 'tux-messagetable-loading-messages', this.$loader.data( 'pagesize' ) )
+ );
+
+ // Reset the statsbar
+ this.$statsBar
+ .empty()
+ .removeData()
+ .languagestatsbar( {
+ language: this.settings.language,
+ group: this.settings.group
+ } );
+
+ this.initialized = true;
+ // Reset other info and make visible
+ this.$loader
+ .removeData( 'offset' )
+ .removeAttr( 'data-offset' )
+ .removeClass( 'hide' );
+
+ if ( changes.offset ) {
+ this.$loader.data( 'offset', changes.offset );
+ }
+
+ this.$header.removeClass( 'hide' );
+ this.$actionBar.removeClass( 'hide' );
+
+ // Start loading messages
+ this.load( changes.limit );
+ },
+
+ /**
+ * @param {number} [limit] Only load this many messages and then stop even if there is more.
+ */
+ load: function ( limit ) {
var remaining,
query,
- messageTable = this,
- $messageList = $( '.tux-messagelist' ),
+ self = this,
offset = this.$loader.data( 'offset' ),
- filter = messageTable.$loader.data( 'filter' ),
- targetLangCode = $messageList.data( 'targetlangcode' ),
- messagegroup = messageTable.$loader.data( 'messagegroup' ),
- pageSize = messageTable.$loader.data( 'pagesize' );
+ pageSize = limit || this.$loader.data( 'pagesize' );
if ( offset === -1 ) {
return;
}
- if ( messageTable.loading ) {
+ if ( this.loading ) {
// Avoid duplicate loading - the offset will be wrong and it will result
// in duplicate messages shown in the page
return;
}
- messageTable.loading = true;
-
- mw.translate.getMessages( messagegroup, targetLangCode, offset, pageSize, filter )
- .done( function ( result ) {
- var messages = result.query.messagecollection,
- state;
+ this.loading = true;
+ this.$loaderIcon.removeClass( 'tux-loading-indicator--stopped' );
+
+ mw.translate.getMessages(
+ this.settings.group,
+ this.settings.language,
+ offset,
+ pageSize,
+ this.settings.filter
+ ).done( function ( result ) {
+ var messages = result.query.messagecollection,
+ state;
+
+ if ( !self.loading ) {
+ // reject. This was cancelled.
+ return;
+ }
- if ( !messageTable.loading ) {
- // reject. This was cancelled.
- return;
+ if ( messages.length === 0 ) {
+ // And this is the first load for the filter...
+ if ( self.$container.children().length === 0 ) {
+ self.displayEmptyListHelp();
}
+ }
- messageTable.loading = false;
+ $.each( messages, function ( index, message ) {
+ message.group = self.settings.group;
+ self.add( message );
+ self.messages.push( message );
- if ( messages.length === 0 ) {
- // And this is the first load for the filter...
- if ( messageTable.$container.children().length === 0 ) {
- messageTable.displayEmptyListHelp();
- }
+ if ( index === 0 && self.mode === 'translate' ) {
+ $( '.tux-message:first' ).data( 'translateeditor' ).init();
}
+ } );
- $.each( messages, function ( index, message ) {
- message.group = messagegroup;
- messageTable.add( message );
- messageTable.messages.push( message );
-
- if ( index === 0 && messageTable.mode === 'translate' ) {
- $( '.tux-message:first' ).data( 'translateeditor' ).init();
- }
- } );
+ state = result.query.metadata && result.query.metadata.state;
+ $( '.tux-workflow' ).workflowselector(
+ self.settings.group,
+ self.settings.language,
+ state
+ );
- state = result.query.metadata && result.query.metadata.state;
- $( '.tux-workflow' ).workflowselector( messagegroup, targetLangCode, state );
+ // Dynamically loaded messages should pass the search filter if present.
+ query = $( '.tux-message-filter-box' ).val();
- // Dynamically loaded messages should pass the search filter if present.
- query = $( '.tux-message-filter-box' ).val();
+ if ( query ) {
+ self.search( query );
+ }
- if ( query ) {
- messageTable.search( query );
- }
+ if ( result[ 'query-continue' ] === undefined || limit ) {
+ // End of messages
+ self.$loader.data( 'offset', -1 )
+ .addClass( 'hide' );
- if ( result['query-continue'] === undefined ) {
- // End of messages
- messageTable.$loader.data( 'offset', -1 )
- .addClass( 'hide' );
- } else {
- messageTable.$loader.data( 'offset', result['query-continue'].messagecollection.mcoffset );
+ // Helpfully open the first message in show mode
+ // TODO: Refactor to avoid direct DOM access
+ $( '.tux-message-item' ).first().click();
+ } else {
+ self.$loader.data( 'offset', result[ 'query-continue' ].messagecollection.mcoffset );
- remaining = result.query.metadata.remaining;
+ remaining = result.query.metadata.remaining;
- $( '.tux-messagetable-loader-count' ).text(
- mw.msg( 'tux-messagetable-more-messages', remaining )
- );
+ self.$loaderInfo.text(
+ mw.msg( 'tux-messagetable-more-messages', remaining )
+ );
- $( '.tux-messagetable-loader-more' ).text(
- mw.msg( 'tux-messagetable-loading-messages', Math.min( remaining, pageSize ) )
- );
+ // Make sure the floating toolbars are visible without the need for scroll
+ $( window ).trigger( 'scroll' );
+ }
- // Make sure the floating toolbars are visible without the need for scroll
- $( window ).trigger( 'scroll' );
- }
+ self.updateHideOwnInProofreadingToggleVisibility();
+ self.updateLastMessage();
+ } ).fail( function ( errorCode, response ) {
+ var $warningContainer = $( '.tux-editor-header .group-warning' );
- messageTable.updateLastMessage();
- } )
- .fail( function ( errorCode, response ) {
- if ( response.error && response.error.code === 'mctranslate-language-disabled' ) {
- $( '.tux-editor-header .group-warning' )
- .text( mw.msg( 'translate-language-disabled' ) )
- .show();
- }
- messageTable.$loader.data( 'offset', -1 ).addClass( 'hide' );
- messageTable.loading = false;
- } );
+ if ( response.errors ) {
+ $.map( response.errors, function ( error ) {
+ $warningContainer.append( error[ '*' ] );
+ } );
+ } else {
+ $warningContainer.text( mw.msg( 'api-error-unknownerror', errorCode ) );
+ }
+ self.$loader.data( 'offset', -1 ).addClass( 'hide' );
+ self.$actionBar.addClass( 'hide' );
+ self.$header.addClass( 'hide' );
+ } ).always( function () {
+ self.$loaderIcon.addClass( 'tux-loading-indicator--stopped' );
+ self.loading = false;
+ } );
},
updateLastMessage: function () {
@@ -518,18 +563,40 @@
/**
* Creates a uniformly styled button for different actions,
* shown when there are no messages to display.
- * @param {String} labelMsg A message key for the button label.
+ *
+ * @param {string} labelMsg A message key for the button label.
* @param {Function} callback A callback for clicking the button.
- * @returns {jQuery} A button element.
+ * @return {jQuery} A button element.
*/
otherActionButton: function ( labelMsg, callback ) {
return $( '<button>' )
- .addClass( 'green button' )
+ .addClass( 'mw-ui-button mw-ui-progressive mw-ui-big' )
.text( mw.msg( labelMsg ) )
.on( 'click', callback );
},
/**
+ * Enables own message hiding in proofread mode.
+ *
+ * @param {boolean} enabled
+ */
+ setHideOwnInProofreading: function ( enabled ) {
+ if ( enabled ) {
+ this.$container.addClass( 'tux-hide-own' );
+ } else {
+ this.$container.removeClass( 'tux-hide-own' );
+ }
+ },
+
+ updateHideOwnInProofreadingToggleVisibility: function () {
+ if ( this.$container.find( '.tux-message-proofread.own-translation' ).length ) {
+ this.$proofreadOwnTranslations.removeClass( 'hide' );
+ } else {
+ this.$proofreadOwnTranslations.addClass( 'hide' );
+ }
+ },
+
+ /**
* If the user selection doesn't show anything,
* give some pointers to other things to do.
*/
@@ -632,14 +699,13 @@
*/
switchMode: function ( mode ) {
var messageTable = this,
- filter = messageTable.$loader.data( 'filter' ),
+ filter = this.settings.filter,
userId = mw.config.get( 'wgUserId' ),
$tuxTabUntranslated,
$tuxTabUnproofread,
- $controlOwnButton,
$hideTranslatedButton;
- messageTable.$actionBar.find( '.down' ).removeClass( 'down' );
+ messageTable.$actionBar.find( '.tux-view-switcher .down' ).removeClass( 'down' );
if ( mode === 'translate' ) {
messageTable.$actionBar.find( '.translate-mode-button' ).addClass( 'down' );
}
@@ -657,11 +723,10 @@
// Emulate clear without clearing loaded messages
messageTable.$container.empty();
- $( '.translate-tipsy' ).remove();
+ $( '.translate-tooltip' ).remove();
$tuxTabUntranslated = $( '.tux-message-selector > .tux-tab-untranslated' );
$tuxTabUnproofread = $( '.tux-message-selector > .tux-tab-unproofread' );
- $controlOwnButton = messageTable.$actionBar.find( '.tux-proofread-own-translations-button' );
$hideTranslatedButton = messageTable.$actionBar.find( '.tux-editor-clear-translated' );
if ( messageTable.mode === 'proofread' ) {
@@ -676,16 +741,15 @@
mw.translate.changeFilter( 'translated|!reviewer:' + userId +
'|!last-translator:' + userId );
$tuxTabUnproofread.addClass( 'selected' );
+ // Own translations are not present in proofread + unreviewed mode
}
- $controlOwnButton.removeClass( 'hide' );
$hideTranslatedButton.addClass( 'hide' );
} else {
$tuxTabUntranslated.removeClass( 'hide' );
$tuxTabUnproofread.addClass( 'hide' );
- $controlOwnButton.addClass( 'hide' );
- if ( messageTable.$loader.data( 'filter' ).indexOf( '!translated' ) > -1 ) {
+ if ( filter.indexOf( '!translated' ) > -1 ) {
$hideTranslatedButton.removeClass( 'hide' );
}
@@ -705,6 +769,11 @@
messageTable.displayEmptyListHelp();
}
+ this.$loaderInfo.text(
+ mw.msg( 'tux-messagetable-loading-messages', this.$loader.data( 'pagesize' ) )
+ );
+
+ messageTable.updateHideOwnInProofreadingToggleVisibility();
messageTable.updateLastMessage();
},
@@ -773,7 +842,7 @@
}
if ( typeof options === 'string' ) {
- data[options].call( $this );
+ data[ options ].call( $this );
}
} );
};
@@ -784,47 +853,27 @@
mode: new mw.Uri().query.action || 'translate'
};
- $( 'document' ).ready( function () {
- // Currently used only in the pre-TUX editor
- $( '.mw-translate-messagereviewbutton' ).click( function () {
- var $b, successFunction, failFunction, params;
- $b = $( this );
-
- successFunction = function ( data ) {
- if ( data.error ) {
- // Give grep a chance to find the usages:
- // api-error-invalidrevision, api-error-unknownmessage,
- // api-error-fuzzymessage, api-error-owntranslation
- var reason = mw.msg( 'api-error-' + data.error.code );
- $b.val( mw.msg( 'translate-messagereview-failure', reason ) );
- } else {
- $b.val( mw.msg( 'translate-messagereview-done' ) );
- }
- };
-
- failFunction = function ( jqXHR ) {
- $b.val( mw.msg( 'translate-messagereview-failure', jqXHR.statusText ) );
- };
-
- params = {
- action: 'translationreview',
- token: $b.data( 'token' ),
- revision: $b.data( 'revision' ),
- format: 'json'
- };
- $b.val( mw.msg( 'translate-messagereview-progress' ) );
- $b.prop( 'disabled', true );
-
- $.post( mw.util.wikiScript( 'api' ), params, successFunction ).fail( failFunction );
- } );
- } );
-
/**
- * Escape the search query for regex match
+ * Escape the search query for regex match.
+ *
* @param {string} value A search string to be escaped.
- * @returns {string} Escaped string that is safe to use for a search.
+ * @return {string} Escaped string that is safe to use for a search.
*/
function escapeRegex( value ) {
- return value.replace( /[\-\[\]{}()*+?.,\\\^$\|#\s]/g, '\\$&' );
+ return value.replace( /[-[\]{}()*+?.,\\^$|#\s]/g, '\\$&' );
+ }
+
+ function isLoaderVisible( $loader ) {
+ var viewportBottom, elementTop,
+ $window = $( window );
+
+ viewportBottom = ( window.innerHeight ? window.innerHeight : $window.height() ) +
+ $window.scrollTop();
+
+ elementTop = $loader.offset().top;
+
+ // Start already if user is reaching close to the bottom
+ return elementTop - viewportBottom < 200;
}
+
}( jQuery, mediaWiki ) );
diff --git a/MLEB/Translate/resources/js/ext.translate.multiselectautocomplete.js b/MLEB/Translate/resources/js/ext.translate.multiselectautocomplete.js
index b83c866a..f77de7f9 100644
--- a/MLEB/Translate/resources/js/ext.translate.multiselectautocomplete.js
+++ b/MLEB/Translate/resources/js/ext.translate.multiselectautocomplete.js
@@ -1,14 +1,16 @@
-/*
+/*!
* @author Santhosh Thottingal
* jQuery autocomplete based multiple selector for input box.
* Autocompleted values will be available in input filed as comma separated values.
* The values for autocompletion is from the language selector in this case.
* The input field is created in PHP code.
- * Credits: http://jqueryui.com/demos/autocomplete/#multiple
+ * Credits: https://jqueryui.com/autocomplete/#multiple
*/
jQuery( function ( $ ) {
'use strict';
+ /* eslint-disable no-underscore-dangle */
+
$.widget( 'ui.multiselectautocomplete', {
options: {
inputbox: null // a jQuery selector for the input box where selections are written.
@@ -35,18 +37,22 @@ jQuery( function ( $ ) {
matcher = new RegExp( $.ui.autocomplete.escapeRegex( term ), 'i' );
response( select.children( 'option' ).map( function () {
- var text = $( this ).text(),
+ var text = $( this ).html(),
value = $( this ).val(),
term = split( request.term ).pop();
if ( this.value && ( !request.term || matcher.test( text ) ) ) {
- return {
- label: text.replace(
+ if ( term.trim() !== '' ) {
+ text = text.replace(
new RegExp(
'(?![^&;]+;)(?!<[^<>]*)(' +
$.ui.autocomplete.escapeRegex( term ) +
')(?![^<>]*>)(?![^&;]+;)', 'gi'
- ), '<strong>$1</strong>' ),
+ ), '<strong>$1</strong>' );
+ }
+
+ return {
+ label: text,
value: value,
option: this
};
@@ -54,11 +60,13 @@ jQuery( function ( $ ) {
} ) );
},
select: function ( event, ui ) {
+ var terms;
+
ui.item.option.selected = true;
self._trigger( 'selected', event, {
item: ui.item.option
} );
- var terms = split( $( this ).val() );
+ terms = split( $( this ).val() );
// remove the current input
terms.pop();
// add the selected item
diff --git a/MLEB/Translate/resources/js/ext.translate.navitoggle.js b/MLEB/Translate/resources/js/ext.translate.navitoggle.js
index 6f134560..0cf448ae 100644
--- a/MLEB/Translate/resources/js/ext.translate.navitoggle.js
+++ b/MLEB/Translate/resources/js/ext.translate.navitoggle.js
@@ -1,23 +1,19 @@
-/**
+/*!
* Introduces a toggle icon than can be used to hide navigation menu in vector
* @author Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
-(function ( mw, $ ) {
+( function ( mw, $ ) {
'use strict';
- var delay = ( function () {
- var timer = 0;
+ var $body = $( 'body' );
- return function ( callback, milliseconds ) {
- clearTimeout( timer );
- timer = setTimeout( callback, milliseconds );
- };
- } () );
+ if ( $body.width() < 1000 || mw.storage.get( 'translate-navitoggle' ) === '1' ) {
+ $body.addClass( 'tux-navi-collapsed' );
+ }
- $( document ).ready( function () {
- var $miniLogo, $toggle, rtl, delim,
- $body = $( 'body' );
+ $( function () {
+ var $miniLogo, $toggle, rtl, delim;
rtl = $body.hasClass( 'rtl' );
delim = rtl ?
@@ -31,17 +27,15 @@
$toggle = $( '<div>' )
.addClass( 'tux-navitoggle' )
- .css( rtl ? 'right' : 'left' , delim )
+ .css( rtl ? 'right' : 'left', delim )
.click( function () {
$body.toggleClass( 'tux-navi-collapsed' );
- // Allow for animations etc to go
- delay( function () {
- $( window ).trigger( 'resize' );
- $( window ).trigger( 'scroll' );
- }, 250 );
+ mw.storage.set(
+ 'translate-navitoggle',
+ String( Number( $body.hasClass( 'tux-navi-collapsed' ) ) )
+ );
} );
- $( 'body' ).append( $miniLogo, $toggle );
-
+ $body.append( $miniLogo, $toggle );
} );
}( mediaWiki, jQuery ) );
diff --git a/MLEB/Translate/resources/js/ext.translate.pagemode.js b/MLEB/Translate/resources/js/ext.translate.pagemode.js
index a091fc10..84f9799c 100644
--- a/MLEB/Translate/resources/js/ext.translate.pagemode.js
+++ b/MLEB/Translate/resources/js/ext.translate.pagemode.js
@@ -14,6 +14,12 @@
* sourcelangcode: 'en', // Mandatory source language code
* targetlangcode: 'hi' // Mandatory target language code
* } );
+ *
+ * @param {Element} element
+ * @param {Object} options
+ * @param {Object} options.message
+ * @param {string} options.sourcelangcode Language code.
+ * @param {string} options.targetlangcode Language code.
*/
function PageMode( element, options ) {
this.$message = $( element );
@@ -44,6 +50,10 @@
pagemode.$message.find( '.tux-pagemode-translation' )
.removeClass( 'highlight' );
pagemode.message.translation = translation;
+
+ pagemode.$message.find( '.tux-pagemode-status' )
+ .removeClass( 'translated fuzzy proofread untranslated' )
+ .addClass( pagemode.message.properties.status );
}
} );
@@ -65,7 +75,7 @@
this.$message.append(
$( '<div>' )
- .addClass( 'row tux-message-item-compact message' )
+ .addClass( 'row tux-message-item-compact message ' + this.message.properties.status )
.append(
$( '<div>' )
.addClass( 'one column tux-pagemode-status ' + this.message.properties.status ),
@@ -87,9 +97,7 @@
.attr( 'title', mw.msg( 'translate-edit-title', this.message.key ) )
.addClass( 'tux-pagemode-edit' )
)
- )
-
- .addClass( this.message.properties.status );
+ ).addClass( this.message.properties.status );
},
/**
diff --git a/MLEB/Translate/resources/js/ext.translate.pagetranslation.uls.js b/MLEB/Translate/resources/js/ext.translate.pagetranslation.uls.js
index 42504e70..993e6497 100644
--- a/MLEB/Translate/resources/js/ext.translate.pagetranslation.uls.js
+++ b/MLEB/Translate/resources/js/ext.translate.pagetranslation.uls.js
@@ -2,20 +2,14 @@
'use strict';
mw.uls.changeLanguage = function ( language ) {
- var page, uri;
+ var page;
page = 'Special:MyLanguage/' + mw.config.get( 'wgPageName' );
if ( mw.config.get( 'wgTranslatePageTranslation' ) === 'translation' ) {
- page = page.replace( /\/[^\/]+$/, '' );
+ page = page.replace( /\/[^/]+$/, '' );
}
- uri = new mw.Uri( mw.util.getUrl( page ) );
-
- uri.extend( {
- setlang: language
- } );
-
- location.href = uri.toString();
+ location.href = mw.util.getUrl( page, { setlang: language } );
};
-} ( mediaWiki ) );
+}( mediaWiki ) );
diff --git a/MLEB/Translate/resources/js/ext.translate.parsers.js b/MLEB/Translate/resources/js/ext.translate.parsers.js
index 171e547e..2b135741 100644
--- a/MLEB/Translate/resources/js/ext.translate.parsers.js
+++ b/MLEB/Translate/resources/js/ext.translate.parsers.js
@@ -1,9 +1,9 @@
-/*
+/*!
* A set of simple tools for partial parsing and formatting of translatable
* messages.
*
- * @author Niklas Laxström, 2013
- * @license GPL-2.0+
+ * @author Niklas Laxström
+ * @license GPL-2.0-or-later
*/
( function ( $, mw ) {
@@ -12,10 +12,11 @@
mw.translate = mw.translate || {};
mw.translate = $.extend( mw.translate, {
/**
- * Formats some common wikitext elements
- * @param {String} text Message text
- * @param {String} [key] Message key
- * @return {String} Formatted text in html
+ * Formats some common wikitext elements.
+ *
+ * @param {string} text Message text
+ * @param {string} [key] Message key
+ * @return {string} Formatted text in html
*/
formatMessageGently: function ( text, key ) {
var externals,
@@ -58,7 +59,7 @@
return $( '<div>' ).append( link ).html();
} );
- externals = new RegExp( '\\[((' + protocols + ')[^ ]+) (.+?)\\]', 'g');
+ externals = new RegExp( '\\[((' + protocols + ')[^ ]+) (.+?)\\]', 'g' );
text = text.replace( externals, function ( match, p1, p2, p3 ) {
var link = $( '<a>' ).html( p3 ).prop( 'href', p1 );
return $( '<div>' ).append( link ).html();
@@ -77,4 +78,4 @@
}
} );
-} ( jQuery, mediaWiki ) );
+}( jQuery, mediaWiki ) );
diff --git a/MLEB/Translate/resources/js/ext.translate.proofread.js b/MLEB/Translate/resources/js/ext.translate.proofread.js
index cac69e6d..9c5f00fc 100644
--- a/MLEB/Translate/resources/js/ext.translate.proofread.js
+++ b/MLEB/Translate/resources/js/ext.translate.proofread.js
@@ -1,4 +1,3 @@
-/*global alert: false*/
( function ( $, mw ) {
'use strict';
@@ -15,6 +14,12 @@
* sourcelangcode: 'en', // Mandatory source language code
* targetlangcode: 'hi' // Mandatory target language code
* } );
+ *
+ * @param {Element} element
+ * @param {Object} options
+ * @param {Object} options.message
+ * @param {string} options.sourcelangcode Language code.
+ * @param {string} options.targetlangcode Language code.
*/
function Proofread( element, options ) {
this.$message = $( element );
@@ -33,6 +38,7 @@
var proofread = this;
this.render();
+
// No review before translating.
if ( !this.message.translation ) {
this.disableProofread();
@@ -54,12 +60,10 @@
.text( translation );
proofread.message.translation = translation;
proofread.markSelfTranslation();
- // Update stats - to translated state from current state.
- $( '.tux-action-bar .tux-statsbar' )
- .trigger(
- 'change',
- [ 'translated', proofread.message.properties.status ]
- );
+
+ proofread.$message.find( '.tux-proofread-status' )
+ .removeClass( 'translated fuzzy proofread untranslated' )
+ .addClass( proofread.message.properties.status );
}
} );
@@ -72,15 +76,17 @@
translatedBySelf, proofreadBySelf;
// List of all reviewers
- reviewers = $( this.message.properties.reviewers );
+ reviewers = this.message.properties.reviewers || [];
// The id of the current user, converted to string as the are in reviewers
- userId = mw.config.get( 'wgUserId' ) + '';
+ userId = String( mw.config.get( 'wgUserId' ) );
// List of all reviewers excluding the current user.
- otherReviewers = reviewers.not( [userId] );
+ otherReviewers = reviewers.filter( function ( element ) {
+ return element !== userId;
+ } );
/* Whether the current user if the last translator of this message.
* Accepting own translations is prohibited. */
- translatedBySelf = ( this.message.properties['last-translator-text'] === mw.user.getName() );
- proofreadBySelf = $.inArray( userId, reviewers ) > -1;
+ translatedBySelf = ( this.message.properties[ 'last-translator-text' ] === mw.user.getName() );
+ proofreadBySelf = reviewers.indexOf( userId ) > -1;
sourceLangCode = this.options.sourcelangcode;
sourceLangDir = $.uls.data.getDir( sourceLangCode );
@@ -91,8 +97,7 @@
.attr( 'title', mw.msg( 'tux-proofread-action-tooltip' ) )
.addClass(
'tux-proofread-action ' + this.message.properties.status + ' ' + ( proofreadBySelf ? 'accepted' : '' )
- )
- .tipsy( { gravity: 's', delayIn: 1000, className: 'translate-tipsy' } );
+ );
$proofreadEdit = $( '<div>' )
.addClass( 'tux-proofread-edit' )
@@ -147,8 +152,13 @@
$proofreadEdit
)
)
- )
- .addClass( this.message.properties.status );
+ ).addClass( this.message.properties.status );
+
+ if ( !translatedBySelf && !proofreadBySelf ) {
+ // This will get removed later if any of various other reasons prevent it
+ this.message.proofreadable = true;
+ this.message.proofreadAction = this.proofread.bind( this );
+ }
if ( translatedBySelf ) {
this.markSelfTranslation();
@@ -162,6 +172,7 @@
},
disableProofread: function () {
+ this.message.proofreadable = false;
this.$message.find( '.tux-proofread-action' )
.remove();
},
@@ -178,7 +189,6 @@
.append( $( '<div>' )
.addClass( 'translated-by-self' )
.attr( 'title', mw.msg( 'tux-proofread-translated-by-self' ) )
- .tipsy( { gravity: 'e', className: 'translate-tipsy' } )
);
}
},
@@ -188,19 +198,22 @@
proofread: function () {
var reviews, counter, params,
message = this.message,
- $message = this.$message;
+ $message = this.$message,
+ api = new mw.Api();
params = {
action: 'translationreview',
- revision: this.message.properties.revision,
+ revision: this.message.properties.revision
};
if ( !mw.user.isAnon() ) {
params.assert = 'user';
}
- new mw.Api().postWithToken( 'translationreview', params ).done( function () {
- $message.find( '.tux-proofread-action' ).addClass( 'accepted' );
+ api.postWithToken( 'csrf', params ).done( function () {
+ $message.find( '.tux-proofread-action' )
+ .removeClass( 'tux-warning' ) // in case, it failed previously
+ .addClass( 'accepted' );
counter = $message.find( '.tux-proofread-count' );
reviews = counter.data( 'reviewCount' );
@@ -212,13 +225,15 @@
[ 'proofread', message.properties.status ]
);
+ message.properties.status = 'proofread';
+
if ( mw.track ) {
mw.track( 'ext.translate.event.proofread', message );
}
} ).fail( function ( errorCode ) {
$message.find( '.tux-proofread-action' ).addClass( 'tux-warning' );
- // In MW 1.24 alpha postWithToken returns token-missing instead of assertuserfailed
- if ( errorCode === 'assertuserfailed' || errorCode === 'token-missing' ) {
+ if ( errorCode === 'assertuserfailed' ) {
+ // eslint-disable-next-line no-alert
alert( mw.msg( 'tux-session-expired' ) );
}
} );
@@ -236,8 +251,8 @@
} );
this.$message.find( '.tux-proofread-edit' ).on( 'click', function () {
- // Make sure that the tipsy is hidden when going to the editor
- $( '.translate-tipsy' ).remove();
+ // Make sure that the tooltip is hidden when going to the editor
+ $( '.translate-tooltip' ).remove();
proofread.$message.data( 'translateeditor' ).show();
return false;
diff --git a/MLEB/Translate/resources/js/ext.translate.quickedit.js b/MLEB/Translate/resources/js/ext.translate.quickedit.js
deleted file mode 100644
index 6035ee53..00000000
--- a/MLEB/Translate/resources/js/ext.translate.quickedit.js
+++ /dev/null
@@ -1,394 +0,0 @@
-/**
- * JavaScript that implements the Ajax translation interface, which was at the
- * time of writing this probably the biggest usability problem in the extension.
- * Most importantly, it speeds up translating and keeps the list of translatable
- * messages open. It also allows multiple translation dialogs, for doing quick
- * updates to other messages or documentation, or translating multiple languages
- * simultaneously together with the "In other languages" display included in
- * translation helpers and implemented by utils/TranslationhHelpers.php.
- * The form itself is implemented by utils/TranslationEditPage.php, which is
- * called from Special:Translate/editpage?page=Namespace:pagename.
- *
- * TODO list:
- * * Instead of hc'd onscript, give them a class and use necessary triggers
- *
- * @author Niklas Laxström
- * @copyright Copyright © 2009-2012 Niklas Laxström
- * @license GPL-2.0+
- */
-
-(function ( $, mw, undefined ) {
- 'use strict';
- var dialogwidth = false,
- preloads = {};
-
- mw.translate = mw.translate || {};
- function MessageCheckUpdater( callback ) {
- this.act = function () {
- callback();
- delete this.timeoutID;
- };
-
- this.setup = function () {
- this.cancel();
- var self = this;
- this.timeoutID = window.setTimeout( self.act, 1000 );
- };
-
- this.cancel = function () {
- if ( typeof this.timeoutID === 'number' ) {
- window.clearTimeout( this.timeoutID );
- delete this.timeoutID;
- }
- };
- }
-
- /**
- * This is JS port same method of TranslateUtils.php
- */
- function convertWhiteSpaceToHTML( text ) {
- return mw.html.escape( text )
- .replace( /^ /gm, '&#160;' )
- .replace( / $/gm, '&#160;' )
- .replace( / {2}/g, '&#160; ' )
- .replace( /\n/g, '<br />' );
- }
-
- function addAccessKeys( dialog ) {
- var buttons = {
- a: '.mw-translate-save',
- s: '.mw-translate-next',
- d: '.mw-translate-skip',
- h: '.mw-translate-history'
- };
-
- $.each( buttons, function ( key, selector ) {
- $( selector )
- .val( function ( i, b ) {
- return b.replace( / \(.\)$/, '' );
- } )
- .removeAttr( 'accesskey' )
- .attr( 'title', '' );
-
- dialog.find( selector )
- .val( function ( i, b ) {
- return b + ' (_)'.replace( '_', key );
- } )
- .attr( 'accesskey', key )
- .attr( 'title', '[' + mw.util.tooltipAccessKeyPrefix + key + ']' );
- } );
- }
-
- function registerFeatures( callbacks, form, page, group ) {
- var $identical, textarea, checker;
-
- // Enable the collapsible element
- $identical = $( '.mw-identical-title' );
- if ( $.isFunction( $identical.makeCollapsible ) ) {
- $identical.makeCollapsible();
- }
-
- if ( mw.config.get( 'trlKeys' ) || $( '.tqe-inlineeditable' ).length ) {
- if ( callbacks.next === undefined ) {
- form.find( '.mw-translate-next, .mw-translate-skip' ).attr( 'disabled', 'disabled' );
- } else {
- form.find( '.mw-translate-next' ).click( function () {
- if ( callbacks.next ) {
- callbacks.next();
- }
- } );
- form.find( '.mw-translate-skip' ).click( function () {
- if ( callbacks.close ) {
- callbacks.close();
- }
- if ( callbacks.next ) {
- callbacks.next();
- }
- } );
- }
- } else {
- form.find( '.mw-translate-next, .mw-translate-skip' )
- .attr( 'disabled', 'disabled' )
- .css( 'display', 'none' );
- }
- form.find( '.mw-translate-close' ).click( function () {
- if ( callbacks.close ) {
- callbacks.close();
- }
- } );
-
- form.find( '.mw-translate-history' ).click( function () {
- window.open( mw.util.wikiScript( 'index' ) + '?action=history&title=' + form.find( 'input[name=title]' ).val() );
- return false;
- } );
-
- form.find( '.mw-translate-support, .mw-translate-askpermission' ).click( function () {
- // Can use .data() only with 1.4.3 or newer
- window.open( $( this ).attr( 'data-load-url' ) );
- return false;
- } );
-
- form.find( 'input, textarea' ).focus( function () {
- addAccessKeys( form );
- } );
-
- form.find( 'input#summary' ).focus( function () {
- $( this ).css( 'width', '85%' );
- } );
-
- textarea = form.find( '.mw-translate-edit-area' );
- textarea.css( 'display', 'block' );
- textarea.autosize();
- textarea[0].focus();
-
- if ( form.find( '.mw-translate-messagechecks' ) ) {
- checker = new MessageCheckUpdater( function () {
- var url = mw.config.get( 'wgScript' ) + '?title=Special:Translate/editpage&suggestions=checks&page=$1&loadgroup=$2';
- url = url.replace( '$1', encodeURIComponent( page ) ).replace( '$2', encodeURIComponent( group ) );
- $.post( url, { translation: textarea.val() }, function ( mydata ) {
- form.find( '.mw-translate-messagechecks' ).replaceWith( mydata );
- } );
- } );
-
- textarea.keyup( function () {
- checker.setup();
- } );
- }
-
- }
-
- mw.translate = $.extend( mw.translate, {
- init: function () {
- var $inlines, $first, title, group, prev;
-
- dialogwidth = $( window ).width() * 0.8;
- $inlines = $( '.tqe-inlineeditable' );
- $inlines.dblclick( mw.translate.inlineEditor );
-
- $first = $inlines.first();
- if ( $first.length ) {
- title = $first.data( 'title' );
- group = $first.data( 'group' );
- mw.translate.loadEditor( null, title, group, $.noop );
- }
-
- prev = null;
- $inlines.each( function () {
- if ( prev ) {
- prev.next = this;
- }
- prev = this;
- } );
- },
-
- openDialog: function ( page, group ) {
- var id, dialogElement, dialog, callbacks;
-
- id = 'jsedit' + page.replace( /[^a-zA-Z0-9_]/g, '_' );
- dialogElement = $( '#' + id );
-
- if ( dialogElement.size() > 0 ) {
- dialogElement.dialog( 'option', 'position', 'top' );
- dialogElement.dialog( 'open' );
- return false;
- }
-
- dialog = $( '<div>' ).attr( 'id', id ).appendTo( $( 'body' ) );
-
- callbacks = {};
- callbacks.close = function () {
- dialog.dialog( 'close' );
- };
- callbacks.next = function () {
- mw.translate.openNext( page, group );
- };
- callbacks.success = function ( text ) {
- var $td = $( '.tqe-inlineeditable' ).filter( function () {
- return $( this ).data( 'title' ) === page.replace( '_', ' ' );
- } );
- $td
- .html( convertWhiteSpaceToHTML( text ) )
- .attr( 'dir', 'auto' ) // (bug T31233) hacky, but better than nothing
- .removeClass( 'untranslated' )
- .addClass( 'justtranslated' );
- };
- mw.translate.openEditor( dialog, page, group, callbacks );
-
- dialog.dialog( {
- bgiframe: true,
- width: dialogwidth,
- title: page,
- position: 'top',
- resize: function () {
- $( '#' + id + ' textarea' ).width( '100%' );
- },
- resizeStop: function () {
- dialogwidth = $( '#' + id ).width();
- }
- } );
-
- return false;
- },
-
- loadEditor: function ( $target, page, group, callback ) {
- var id, preload, url, params;
-
- // Try if it has been cached
- id = 'preload-' + page.replace( /[^a-zA-Z0-9_]/g, '_' );
- preload = preloads[id];
-
- if ( preload !== undefined ) {
- if ( $target ) {
- $target.html( preloads[id] );
- delete preloads[id];
- }
- callback();
- return;
- }
-
- // Load the editor into provided target or cache it locally
- url = mw.util.wikiScript( 'index' );
- params = {
- title: 'Special:Translate/editpage',
- suggestions: 'sync',
- page: page,
- loadgroup: group
- };
- if ( $target ) {
- $target.load( url, params, callback );
- delete preloads[id];
- } else {
- $.get( url, params, function ( data ) {
- preloads[id] = data;
- } );
- }
-
- },
-
- openEditor: function ( element, page, group, callbacks ) {
- var $target = $( element ),
- spinner = $( '<div>' ).attr( 'class', 'mw-ajax-loader' );
-
- $target.html( $( '<div>' ).attr( 'class', 'mw-ajax-dialog' ).html( spinner ) );
-
- mw.translate.loadEditor( $target, page, group, function () {
- if ( callbacks.load ) {
- callbacks.load( $target );
- }
-
- var form = $target.find( 'form' );
- registerFeatures( callbacks, form, page, group );
- form.on( 'submit', function () {
- mw.translateHooks.run( 'beforeSubmit', form );
- $( this ).ajaxSubmit( {
- dataType: 'json',
- success: function ( json ) {
- mw.translateHooks.run( 'afterSubmit', form );
- if ( json.error ) {
- if ( json.error.code === 'emptypage' ) {
- window.alert( mw.msg( 'api-error-emptypage' ) );
- } else {
- window.alert( json.error.info + ' (' + json.error.code + ')' );
- }
- } else if ( json.edit.result === 'Failure' ) {
- window.alert( mw.msg( 'translate-js-save-failed' ) );
- } else if ( json.edit.result === 'Success' ) {
- if ( callbacks.close ) {
- callbacks.close();
- }
- if ( callbacks.success ) {
- callbacks.success( form.find( '.mw-translate-edit-area' ).val() );
- }
- } else {
- window.alert( mw.msg( 'translate-js-save-failed' ) );
- }
- }
- } );
- return false;
- } );
- } );
- },
-
- openNext: function ( title, group ) {
- var messages = mw.config.get( 'trlKeys' ),
- found = false, key, value;
-
- for ( key in messages ) {
- if ( !messages.hasOwnProperty( key ) ) {
- continue;
- }
-
- value = messages[key];
- if ( found ) {
- return mw.translate.openDialog( value, group );
- } else if ( value === title ) {
- found = true;
- }
- }
- window.alert( mw.msg( 'translate-js-nonext' ) );
- },
-
- inlineEditor: function () {
- var $this, current, page, group, next, callbacks, ntitle, ngroup, sel;
- $this = $( this );
-
- if ( $this.hasClass( 'tqe-editor-loaded' ) ) {
- // Editor is open, do not replace it
- return;
- }
-
- current = $this.html();
- $this.addClass( 'tqe-editor-loaded' );
-
- page = $this.data( 'title' );
- group = $this.data( 'group' );
- next = $( this.next );
- callbacks = {};
-
- callbacks.success = function ( text ) {
- // Update the cell value with the new translation
- $this
- .html( convertWhiteSpaceToHTML( text ) )
- .attr( 'dir', 'auto' ) // (bug T31233) hacky, but better than nothing
- .removeClass( 'untranslated' )
- .addClass( 'justtranslated' );
- };
- callbacks.close = function () {
- $this.html( current );
- $this.removeClass( 'tqe-editor-loaded' );
- };
- callbacks.load = function ( editor ) {
- var $header = $( '<div class="tqe-fakeheader"></div>' );
- $header.text( page );
- $header.append( '<input type=button class="mw-translate-close" value="X" />' );
-
- $( editor ).find( 'form' ).prepend( $header );
- };
- if ( next.length ) {
- callbacks.next = function () {
- next.dblclick();
- };
- // Preload the next item
- ntitle = next.data( 'title' );
- ngroup = next.data( 'group' );
-
- mw.translate.loadEditor( null, ntitle, ngroup, $.noop );
- }
- mw.translate.openEditor( $this, page, group, callbacks );
-
- // Remove any text selection caused by double clicking
- sel = window.getSelection ? window.getSelection() : document.selection;
-
- if ( sel ) {
- if ( sel.removeAllRanges ) {
- sel.removeAllRanges();
- }
- if ( sel.empty ) {
- sel.empty();
- }
- }
- }
- } );
-
- $( document ).ready( mw.translate.init );
-} )( jQuery, mediaWiki );
diff --git a/MLEB/Translate/resources/js/ext.translate.selecttoinput.js b/MLEB/Translate/resources/js/ext.translate.selecttoinput.js
index 9558ec9e..cb4a51bd 100644
--- a/MLEB/Translate/resources/js/ext.translate.selecttoinput.js
+++ b/MLEB/Translate/resources/js/ext.translate.selecttoinput.js
@@ -1,27 +1,27 @@
window.appendFromSelect = function ( selectid, targetid ) {
'use strict';
- var select, target, atxt;
-
- select = document.getElementById( selectid );
- target = document.getElementById( targetid );
+ var select = document.getElementById( selectid ),
+ target = document.getElementById( targetid ),
+ atxt;
if ( !target || !select ) {
return;
}
- atxt = select.options[select.selectedIndex].value;
+ atxt = select.options[ select.selectedIndex ].value;
if ( !atxt ) {
return;
}
- /* Ugly hack */
-
- target.value = target.value.replace( /default/, '' );
-
- if ( target.value.replace( /[\s\t\n]/ig, '' ) !== '' ) {
+ if ( target.value.replace( /\s+/g, '' ) !== '' ) {
atxt = ', ' + atxt;
}
- target.value += atxt;
+
+ atxt = target.value + atxt;
+
+ atxt = atxt.replace( /\bdefault\b[,\s]*/i, '' );
+
+ target.value = atxt;
};
diff --git a/MLEB/Translate/resources/js/ext.translate.special.aggregategroups.js b/MLEB/Translate/resources/js/ext.translate.special.aggregategroups.js
index 11cd05a4..547fe264 100644
--- a/MLEB/Translate/resources/js/ext.translate.special.aggregategroups.js
+++ b/MLEB/Translate/resources/js/ext.translate.special.aggregategroups.js
@@ -1,20 +1,17 @@
-/*global alert:false */
-
( function ( $, mw ) {
'use strict';
function getApiParams( $target ) {
return {
action: 'aggregategroups',
- token: $( '#token' ).val(),
- aggregategroup: $target.parents( '.mw-tpa-group' ).data( 'groupid' ),
- format: 'json'
+ aggregategroup: $target.parents( '.mw-tpa-group' ).data( 'groupid' )
};
}
function dissociate( event ) {
var params,
- $target = $( event.target );
+ $target = $( event.target ),
+ api = new mw.Api();
function successFunction() {
$target.parent( 'li' ).remove();
@@ -24,9 +21,13 @@
'do': 'dissociate',
group: $target.data( 'groupid' )
} );
- new mw.Api().post( params ).done( successFunction ).fail( function ( code, data ) {
- window.alert( data.error && data.error.info );
- } );
+
+ api.postWithToken( 'csrf', params )
+ .done( successFunction )
+ .fail( function ( code, data ) {
+ // eslint-disable-next-line no-alert
+ alert( data.error && data.error.info );
+ } );
}
function associate( event, resp ) {
@@ -34,7 +35,8 @@
$target = $( event.target ),
$parent = $target.parents( '.mw-tpa-group' ),
parentId = $parent.data( 'id' ),
- subgroupName = $parent.children( '.tp-group-input' ).val();
+ subgroupName = $parent.children( '.tp-group-input' ).val(),
+ api = new mw.Api();
successFunction = function () {
var aAttr, $a, spanAttr, $span, $ol;
@@ -61,7 +63,7 @@
// Get the label for the value and make API request if valid
subgroupId = '';
- $.each( resp, function( key, value ) {
+ $.each( resp, function ( key, value ) {
if ( subgroupName === value.label ) {
subgroupId = value.id;
}
@@ -72,16 +74,23 @@
'do': 'associate',
group: subgroupId
} );
- new mw.Api().post( params ).done( successFunction ).fail( function ( code, data ) {
- window.alert( data.error && data.error.info );
- } );
+
+ api.postWithToken( 'csrf', params )
+ .done( successFunction )
+ .fail( function ( code, data ) {
+ // eslint-disable-next-line no-alert
+ alert( data.error && data.error.info );
+ } );
} else {
+ // eslint-disable-next-line no-alert
alert( mw.msg( 'tpt-invalid-group' ) );
}
}
function removeGroup( event ) {
- var params, $target = $( event.target );
+ var params,
+ $target = $( event.target ),
+ api = new mw.Api();
function successFunction() {
$( event.target ).parents( '.mw-tpa-group' ).remove();
@@ -89,20 +98,25 @@
// XXX: 'confirm' is nonstandard.
if ( $.isFunction( window.confirm ) &&
+ // eslint-disable-next-line no-alert
window.confirm( mw.msg( 'tpt-aggregategroup-remove-confirm' ) ) ) {
params = $.extend( getApiParams( $target ), {
'do': 'remove'
} );
- new mw.Api().post( params ).done( successFunction ).fail( function ( code, data ) {
- window.alert( data.error && data.error.info );
- } );
+
+ api.postWithToken( 'csrf', params )
+ .done( successFunction )
+ .fail( function ( code, data ) {
+ // eslint-disable-next-line no-alert
+ alert( data.error && data.error.info );
+ } );
}
}
function editGroup( event ) {
var $target = $( event.target ),
$parent = $target.closest( '.mw-tpa-group' ),
- aggregateGroupId = $parent.data( 'groupid' ),
+ aggregateGroupId = $parent.data( 'groupid' ),
$displayGroup = $parent.children( '.tp-display-group' ),
$editGroup = $parent.children( '.tp-edit-group' ),
successFunction,
@@ -115,7 +129,7 @@
successFunction = function () {
// Replace the text by the new text without altering the other 2 span tags
- $displayGroup.children( '.tp-name' ).contents().filter( function() {
+ $displayGroup.children( '.tp-name' ).contents().filter( function () {
return this.nodeType === 3;
} ).replaceWith( aggregateGroupName );
$displayGroup.children( '.tp-desc' ).text( aggregateGroupDesc );
@@ -126,16 +140,17 @@
params = {
action: 'aggregategroups',
'do': 'update',
- token: $( '#token' ).val(),
groupname: aggregateGroupName,
groupdescription: aggregateGroupDesc,
- aggregategroup: aggregateGroupId,
- format: 'json'
+ aggregategroup: aggregateGroupId
};
- api.post( params ).done( successFunction ).fail( function ( code, data ) {
- window.alert( data.error.info );
- } );
+ api.postWithToken( 'csrf', params )
+ .done( successFunction )
+ .fail( function ( code, data ) {
+ // eslint-disable-next-line no-alert
+ alert( data.error.info );
+ } );
}
function cancelEditGroup( event ) {
@@ -145,25 +160,25 @@
$parent.children( '.tp-edit-group' ).addClass( 'hidden' );
}
- $( document ).ready( function () {
- var excludeFunction, autocompleteFunction,
+ $( function () {
+ var excludeFunction, autocompleteFunction, resp,
api = new mw.Api(),
- exclude = [], resp, groups=[],
+ exclude = [],
+ groups = [],
$input = $( '.tp-group-input' );
- excludeFunction = function( event ) {
+ excludeFunction = function ( event ) {
exclude = [];
if ( groups.length === 0 ) {
// Get list of subgroups using API
api.get( {
action: 'query',
- format: 'json',
meta: 'messagegroups',
mgformat: 'tree',
mgroot: 'all',
mgprop: 'label|id'
- } ).done( function( result ) {
+ } ).done( function ( result ) {
groups = result.query.messagegroups;
} );
}
@@ -174,18 +189,18 @@
// Need to trim to remove the trailing whitespace
// Can't use innerText not supported by Firefox
var groupName = $( data ).text();
- groupName = $.trim( groupName );
+ groupName = groupName.trim();
exclude.push( groupName );
}
);
};
- autocompleteFunction = function( request, response ) {
- resp = [];
-
+ autocompleteFunction = function ( request, response ) {
// Allow case insensitive search
var inp = new RegExp( request.term, 'i' );
+ resp = [];
+
$.each( groups, function ( key, value ) {
if ( value.label.match( inp ) && exclude.indexOf( value.label ) === -1 ) {
resp.push( value );
@@ -203,7 +218,7 @@
$( this ).autocomplete( 'search', $( this ).val() );
} );
- $( '.tp-aggregate-add-button' ).click( function( event ) {
+ $( '.tp-aggregate-add-button' ).click( function ( event ) {
associate( event, resp );
} );
$( '.tp-aggregate-remove-button' ).click( dissociate );
@@ -229,7 +244,8 @@
aggGroupNameInputName = $( 'input.tp-aggregategroup-add-name' ),
aggGroupNameInputDesc = $( 'input.tp-aggregategroup-add-description' ),
aggregateGroupName = aggGroupNameInputName.val(),
- aggregateGroupDesc = aggGroupNameInputDesc.val();
+ aggregateGroupDesc = aggGroupNameInputDesc.val(),
+ api = new mw.Api();
// Empty the fields. If they are not emptied, then when another group
// is added, the values will appear again.
@@ -253,20 +269,18 @@
.append( $displayHeader )
.append( $( '<p>' ).addClass( 'tp-desc' ).text( aggregateGroupDesc ) );
- $saveButton = ( $( '<input>' )
+ $saveButton = $( '<input>' )
.attr( {
- 'type': 'button',
+ type: 'button',
'class': 'tp-aggregategroup-update'
} )
- .val( mw.msg( 'tpt-aggregategroup-update' ) )
- );
- $cancelButton = ( $( '<input>' )
+ .val( mw.msg( 'tpt-aggregategroup-update' ) );
+ $cancelButton = $( '<input>' )
.attr( {
- 'type': 'button',
+ type: 'button',
'class': 'tp-aggregategroup-update-cancel'
} )
- .val( mw.msg( 'tpt-aggregategroup-update-cancel' ) )
- );
+ .val( mw.msg( 'tpt-aggregategroup-update-cancel' ) );
$divEdit = $( '<div>' )
.addClass( 'tp-edit-group hidden' )
.append( $( '<label>' )
@@ -274,7 +288,7 @@
.append( $( '<input>' )
.attr( {
'class': 'tp-aggregategroup-edit-name',
- 'id': 'tp-agg-name'
+ id: 'tp-agg-name'
} )
.val( aggregateGroupName )
)
@@ -283,7 +297,7 @@
.append( $( '<input>' )
.attr( {
'class': 'tp-aggregategroup-edit-description',
- 'id': 'tp-agg-desc'
+ id: 'tp-agg-desc'
} )
.val( aggregateGroupDesc )
)
@@ -296,9 +310,8 @@
$div.data( 'groupid', aggregateGroupId );
$div.data( 'id', aggregateGroupId );
-
$groupSelector = $( '<input>' ).attr( {
- 'type': 'text' ,
+ type: 'text',
'class': 'tp-group-input'
} );
$groupSelector.focus( excludeFunction );
@@ -311,13 +324,13 @@
} );
$addButton = $( '<input>' )
.attr( {
- 'type': 'button' ,
+ type: 'button',
'class': 'tp-aggregate-add-button',
- 'id': aggregateGroupId
+ id: aggregateGroupId
} )
.val( mw.msg( 'tpt-aggregategroup-add' ) );
$div.append( $groupSelector, $addButton );
- $addButton.click( function( event ) {
+ $addButton.click( function ( event ) {
associate( event, resp );
} );
$editSpan.on( 'click', function ( event ) {
@@ -336,14 +349,16 @@
params = {
action: 'aggregategroups',
'do': 'add',
- token: $( '#token' ).val(),
groupname: aggregateGroupName,
- groupdescription: aggregateGroupDesc,
- format: 'json'
+ groupdescription: aggregateGroupDesc
};
- new mw.Api().post( params ).done( successFunction ).fail( function ( code, data ) {
- window.alert( data.error && data.error.info );
- } );
+
+ api.postWithToken( 'csrf', params )
+ .done( successFunction )
+ .fail( function ( code, data ) {
+ // eslint-disable-next-line no-alert
+ alert( data.error && data.error.info );
+ } );
} );
} );
-} ( jQuery, mediaWiki ) );
+}( jQuery, mediaWiki ) );
diff --git a/MLEB/Translate/resources/js/ext.translate.special.importtranslations.js b/MLEB/Translate/resources/js/ext.translate.special.importtranslations.js
index 99a34bad..2dc070f4 100644
--- a/MLEB/Translate/resources/js/ext.translate.special.importtranslations.js
+++ b/MLEB/Translate/resources/js/ext.translate.special.importtranslations.js
@@ -1,7 +1,7 @@
( function ( $ ) {
'use strict';
- function buttoner ( $input ) {
+ function buttoner( $input ) {
if ( $input.val ) {
$( 'input[type=submit]' ).prop( 'disabled', false );
} else {
@@ -9,7 +9,7 @@
}
}
- $( document ).ready( function ( ) {
+ $( function () {
var $input = $( '#mw-translate-up-local-input' );
$input.on( 'change', function () {
buttoner( $input );
@@ -17,4 +17,4 @@
buttoner( $input );
} );
-} ( jQuery ) );
+}( jQuery ) );
diff --git a/MLEB/Translate/resources/js/ext.translate.special.languagestats.js b/MLEB/Translate/resources/js/ext.translate.special.languagestats.js
index 0ec2a975..73b37c77 100644
--- a/MLEB/Translate/resources/js/ext.translate.special.languagestats.js
+++ b/MLEB/Translate/resources/js/ext.translate.special.languagestats.js
@@ -1,137 +1,137 @@
-/**
+/*!
* Collapsing script for Special:LanguageStats in MediaWiki Extension:Translate
* @author Krinkle <krinklemail (at) gmail (dot) com>
- * @author Niklas Laxström, 2012
- * @created January 3, 2011
- * @license GPL-2.0+, CC-BY-SA-3.0
+ * @author Niklas Laxström
+ * @license GPL-2.0-or-later, CC-BY-SA-3.0
*/
-/*global mw:false*/
-jQuery( document ).ready( function ( $ ) {
- 'use strict';
-
- var $allChildRows, $allTogglesCache, $toggleAllButton,
- $translateTable = $( '.mw-sp-translate-table' ),
- $metaRows = $( 'tr.AggregateMessageGroup', $translateTable );
- // Quick return
- if ( !$metaRows.size() ) {
- return;
- }
+( function ( mw, $ ) {
+ 'use strict';
- $metaRows.each( function () {
- var $toggler,
- $parent = $( this ),
- thisGroupId = $parent.attr( 'data-groupid' ),
- $children = $( 'tr[data-parentgroup="' + thisGroupId + '"]', $translateTable );
+ $( function () {
+ var $allChildRows, $allTogglesCache, $toggleAllButton,
+ $translateTable = $( '.statstable' ),
+ $metaRows = $( 'tr.AggregateMessageGroup', $translateTable );
- // Only do the collapse stuff if this Meta-group actually has children on this page
- if ( !$children.size() ) {
+ // Quick return
+ if ( !$metaRows.length ) {
return;
}
- // Build toggle link
- $toggler = $( '<span class="groupexpander collapsed">[</span>' )
+ $metaRows.each( function () {
+ var $toggler,
+ $parent = $( this ),
+ thisGroupId = $parent.attr( 'data-groupid' ),
+ $children = $( 'tr[data-parentgroup="' + thisGroupId + '"]', $translateTable );
+
+ // Only do the collapse stuff if this Meta-group actually has children on this page
+ if ( !$children.length ) {
+ return;
+ }
+
+ // Build toggle link
+ $toggler = $( '<span class="groupexpander collapsed">[</span>' )
+ .append( $( '<a href="#"></a>' )
+ .text( mw.msg( 'translate-langstats-expand' ) ) )
+ .append( ']' )
+ .click( function ( e ) {
+ var $el = $( this );
+ // Switch the state and toggle the rows
+ if ( $el.hasClass( 'collapsed' ) ) {
+ $children.fadeIn().trigger( 'show' );
+ $el.removeClass( 'collapsed' ).addClass( 'expanded' );
+ $el.find( '> a' ).text( mw.msg( 'translate-langstats-collapse' ) );
+ } else {
+ $children.fadeOut().trigger( 'hide' );
+ $el.addClass( 'collapsed' ).removeClass( 'expanded' );
+ $el.find( '> a' ).text( mw.msg( 'translate-langstats-expand' ) );
+ }
+
+ e.preventDefault();
+ } );
+
+ // Add the toggle link to the first cell of the meta group table-row
+ $parent.find( ' > td:first' ).append( $toggler );
+
+ // Handle hide/show recursively, so that collapsing parent group
+ // hides all sub groups regardless of nesting level
+ $parent.on( 'hide show', function ( event ) {
+ // Reuse $toggle, $parent and $children from parent scope
+ if ( $toggler.hasClass( 'expanded' ) ) {
+ $children.trigger( event.type )[ event.type ]();
+ }
+ } );
+ } );
+
+ // Create, bind and append the toggle-all button
+ $allChildRows = $( 'tr[data-parentgroup]', $translateTable );
+ $allTogglesCache = null;
+ $toggleAllButton = $( '<span class="collapsed">[</span>' )
.append( $( '<a href="#"></a>' )
- .text( mw.msg( 'translate-langstats-expand' ) ) )
+ .text( mw.msg( 'translate-langstats-expandall' ) ) )
.append( ']' )
.click( function ( e ) {
- var $el = $( this );
+ var $el = $( this ),
+ $allToggles = $allTogglesCache || $( '.groupexpander', $translateTable );
+
// Switch the state and toggle the rows
+ // and update the local toggles too
if ( $el.hasClass( 'collapsed' ) ) {
- $children.fadeIn().trigger( 'show' );
- $el.removeClass( 'collapsed' ).addClass( 'expanded' );
- $el.find( '> a' ).text( mw.msg( 'translate-langstats-collapse' ) );
+ $allChildRows.show();
+ $el.add( $allToggles ).removeClass( 'collapsed' ).addClass( 'expanded' );
+ $el.find( '> a' ).text( mw.msg( 'translate-langstats-collapseall' ) );
+ $allToggles.find( '> a' ).text( mw.msg( 'translate-langstats-collapse' ) );
} else {
- $children.fadeOut().trigger( 'hide' );
- $el.addClass( 'collapsed' ).removeClass( 'expanded' );
- $el.find( '> a' ).text( mw.msg( 'translate-langstats-expand' ) );
+ $allChildRows.hide();
+ $el.add( $allToggles ).addClass( 'collapsed' ).removeClass( 'expanded' );
+ $el.find( '> a' ).text( mw.msg( 'translate-langstats-expandall' ) );
+ $allToggles.find( '> a' ).text( mw.msg( 'translate-langstats-expand' ) );
}
e.preventDefault();
} );
- // Add the toggle link to the first cell of the meta group table-row
- $parent.find( ' > td:first' ).append( $toggler );
+ // Initially hide them
+ $allChildRows.hide();
- // Handle hide/show recursively, so that collapsing parent group
- // hides all sub groups regardless of nesting level
- $parent.on( 'hide show', function ( event ) {
- // Reuse $toggle, $parent and $children from parent scope
- if ( $toggler.hasClass( 'expanded' ) ) {
- $children.trigger( event.type )[event.type]();
- }
- } );
+ // Add the toggle-all button above the table
+ $( '<p class="groupexpander-all"></p>' ).append( $toggleAllButton ).insertBefore( $translateTable );
} );
- // Create, bind and append the toggle-all button
- $allChildRows = $( 'tr[data-parentgroup]', $translateTable );
- $allTogglesCache = null;
- $toggleAllButton = $( '<span class="collapsed">[</span>' )
- .append( $( '<a href="#"></a>' )
- .text( mw.msg( 'translate-langstats-expandall' ) ) )
- .append( ']' )
- .click( function ( e ) {
- var $el = $( this ),
- $allToggles = !!$allTogglesCache ? $allTogglesCache : $( '.groupexpander', $translateTable );
-
- // Switch the state and toggle the rows
- // and update the local toggles too
- if ( $el.hasClass( 'collapsed' ) ) {
- $allChildRows.show();
- $el.add( $allToggles ).removeClass( 'collapsed' ).addClass( 'expanded' );
- $el.find( '> a' ).text( mw.msg( 'translate-langstats-collapseall' ) );
- $allToggles.find( '> a' ).text( mw.msg( 'translate-langstats-collapse' ) );
- } else {
- $allChildRows.hide();
- $el.add( $allToggles ).addClass( 'collapsed' ).removeClass( 'expanded' );
- $el.find( '> a' ).text( mw.msg( 'translate-langstats-expandall' ) );
- $allToggles.find( '> a' ).text( mw.msg( 'translate-langstats-expand' ) );
- }
-
- e.preventDefault();
- } );
-
- // Initially hide them
- $allChildRows.hide();
-
- // Add the toggle-all button above the table
- $( '<p class="groupexpander-all"></p>' ).append( $toggleAllButton ).insertBefore( $translateTable );
-} );
+ // When hovering a row, adjust brightness of the last two custom-colored cells as well
+ // See also translate.langstats.css for the highlighting for the other normal rows
+ mw.loader.using( 'jquery.colorUtil', function () {
+ $( function () {
+ // It is possible that the first event we get is hover-out, in
+ // which case the colors will get stuck wrong. Ignore it.
+ var eventHandlers, seenHoverIn = false;
+
+ eventHandlers = {
+ mouseenter: function () {
+ seenHoverIn = true;
+ $( this ).children( '.hover-color' )
+ // 30% more brightness
+ .css( 'background-color', function ( i, val ) {
+ return $.colorUtil.getColorBrightness( val, +0.3 );
+ } );
+ },
+ mouseleave: function () {
+ if ( !seenHoverIn ) {
+ return;
+ }
+ $( this ).children( '.hover-color' )
+ // 30% less brightness
+ .css( 'background-color', function ( i, val ) {
+ return $.colorUtil.getColorBrightness( val, -0.3 );
+ } );
+ }
+ };
-// When hovering a row, adjust brightness of the last two custom-colored cells as well
-// See also translate.langstats.css for the highlighting for the other normal rows
-mw.loader.using( 'jquery.colorUtil', function () {
- 'use strict';
- jQuery( document ).ready( function ( $ ) {
- // It is possible that the first event we get is hover-out, in
- // which case the colors will get stuck wrong. Ignore it.
- var seenHoverIn = false;
-
- $( '.mw-sp-translate-table.wikitable tr' ).hover( function () {
- seenHoverIn = true;
- $( '> td.hover-color', this )
- // 30% more brightness
- .css( 'background-color', function ( i, val ) {
- // @codingStandardsIgnoreStart Bug in CodeSniffer?
- return $.colorUtil.getColorBrightness( val, +0.3 );
- // codingStandardsIgnoreEnd
- } );
- }, function () {
- if ( !seenHoverIn ) {
- return;
- }
- $( '> td.hover-color', this )
- // 30% less brightness
- .css( 'background-color', function ( i, val ) {
- return $.colorUtil.getColorBrightness( val, -0.3 );
- } );
+ $( '.statstable' ).on( eventHandlers, 'tr' );
} );
} );
-} );
-(function ( mw, $ ) {
- 'use strict';
- $( document ).ready( function () {
+ $( function () {
var index,
sort = {},
re = /#sortable:(\d+)=(asc|desc)/,
@@ -139,16 +139,16 @@ mw.loader.using( 'jquery.colorUtil', function () {
$tables = $( '.statstable' );
if ( match ) {
- index = parseInt( match[1], 10 );
- sort[index] = match[2];
+ index = parseInt( match[ 1 ], 10 );
+ sort[ index ] = match[ 2 ];
}
- $tables.tablesorter( {sortList: [sort]} );
+ $tables.tablesorter( { sortList: [ sort ] } );
$tables.on( 'sortEnd.tablesorter', function () {
var $table = $( this );
$table.find( '.headerSortDown, .headerSortUp' ).each( function () {
var index = $table.find( 'th' ).index( $( this ) ),
- dir = $( this ).hasClass( 'headerSortUp' ) ? 'desc' : 'asc';
+ dir = $( this ).hasClass( 'headerSortUp' ) ? 'asc' : 'desc';
window.location.hash = 'sortable:' + index + '=' + dir;
} );
} );
diff --git a/MLEB/Translate/resources/js/ext.translate.special.managetranslatorsandbox.js b/MLEB/Translate/resources/js/ext.translate.special.managetranslatorsandbox.js
index 3607ea98..5aef9ac7 100644
--- a/MLEB/Translate/resources/js/ext.translate.special.managetranslatorsandbox.js
+++ b/MLEB/Translate/resources/js/ext.translate.special.managetranslatorsandbox.js
@@ -1,10 +1,10 @@
-/**
+/*!
* JS for special page.
* @author Niklas Laxström
* @author Sucheta Ghoshal
* @author Amir E. Aharoni
* @author Pau Giner
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
( function ( $, mw ) {
@@ -13,9 +13,10 @@
var delay;
/**
- * A callback for sorting translations
- * @param {object} translationA Object loaded from translation stash
- * @param {object} translationB Object loaded from translation stash
+ * A callback for sorting translations.
+ *
+ * @param {Object} translationA Object loaded from translation stash
+ * @param {Object} translationB Object loaded from translation stash
* @return {number} String comparison of language codes
*/
function sortTranslationsByLanguage( translationA, translationB ) {
@@ -30,8 +31,7 @@
options = $.extend( {}, { action: 'translatesandbox' }, options );
- return api.postWithToken( 'translatesandbox', options )
- .promise();
+ return api.postWithToken( 'csrf', options ).promise();
}
function removeSelectedRequests() {
@@ -68,12 +68,10 @@
* @param {Object} request The request data set from backend on request items
*/
function displayRequestDetails( request ) {
- var storage, reminders,
+ var storage,
$reminderStatus = $( '<span>' ).addClass( 'reminder-status' ),
$detailsPane = $( '.details.pane' );
- reminders = request.reminders ? request.reminders.split( '|' ) : [];
-
if ( request.reminderscount ) {
$reminderStatus.text( mw.msg(
'tsb-reminder-sent',
@@ -119,9 +117,11 @@
.addClass( 'actions row' )
.append(
$( '<button>' )
- .addClass( 'accept primary green button' )
+ .addClass( 'accept mw-ui-button mw-ui-progressive' )
.text( mw.msg( 'tsb-accept-button-label' ) )
.on( 'click', function () {
+ mw.notify( mw.msg( 'tsb-accept-confirmation', 1 ) );
+
window.tsbUpdatingUsers = true;
doApiAction( {
@@ -134,9 +134,11 @@
} );
} ),
$( '<button>' )
- .addClass( 'reject destructive button' )
+ .addClass( 'reject mw-ui-button mw-ui-destructive' )
.text( mw.msg( 'tsb-reject-button-label' ) )
.on( 'click', function () {
+ mw.notify( mw.msg( 'tsb-reject-confirmation', 1 ) );
+
window.tsbUpdatingUsers = true;
doApiAction( {
@@ -216,10 +218,10 @@
.text( mw.msg( 'tsb-translations-current' ) )
.addClass( 'four columns' )
)
- );
+ );
translations.translationstash.translations.sort( sortTranslationsByLanguage );
- $.each( translations.translationstash.translations, function( index, translation ) {
+ $.each( translations.translationstash.translations, function ( index, translation ) {
showTranslation( translation );
} );
}
@@ -261,14 +263,14 @@
}
/**
- * Display when multiple requests are checked
+ * Display when multiple requests are checked.
*/
function displayOnMultipleSelection() {
var selectedUserIDs = $( '.request-selector:checked' ).map( function ( i, checkedBox ) {
return $( checkedBox ).parents( 'div.request' ).data( 'data' ).userid;
} );
- selectedUserIDs = selectedUserIDs.toArray().join( '|' );
+ selectedUserIDs = selectedUserIDs.toArray();
$( '.details.pane' ).empty().append(
$( '<div>' )
@@ -277,9 +279,11 @@
.addClass( 'actions row' )
.append(
$( '<button>' )
- .addClass( 'accept-all primary green button' )
+ .addClass( 'accept-all mw-ui-button mw-ui-progressive' )
.text( mw.msg( 'tsb-accept-all-button-label' ) )
.on( 'click', function () {
+ mw.notify( mw.msg( 'tsb-accept-confirmation', selectedUserIDs.length ) );
+
window.tsbUpdatingUsers = true;
doApiAction( {
@@ -292,9 +296,11 @@
} );
} ),
$( '<button>' )
- .addClass( 'reject-all destructive button' )
+ .addClass( 'reject-all mw-ui-button mw-ui-destructive' )
.text( mw.msg( 'tsb-reject-all-button-label' ) )
.on( 'click', function () {
+ mw.notify( mw.msg( 'tsb-reject-confirmation', selectedUserIDs.length ) );
+
window.tsbUpdatingUsers = true;
doApiAction( {
@@ -312,6 +318,7 @@
/**
* Updates the counter of the selected users.
+ *
* @param {number} count The number of selected users
*/
function updateSelectedIndicator( count ) {
@@ -325,6 +332,7 @@
/**
* Returns older requests with the same number of translations.
+ *
* @return {jQuery} Older requests
*/
function getOlderRequests() {
@@ -428,10 +436,11 @@
/**
* Handle click on request row
+ *
* @param {jQuery.Event} e
*/
function onSelectRequest( e ) {
- var $requestRow = $( e.target ).closest( '.request'),
+ var $requestRow = $( e.target ).closest( '.request' ),
$requestRows = $( '.requests .request' ),
$selectAll = $( '.request-selector-all' );
@@ -441,7 +450,7 @@
$requestRows.each( function ( i, row ) {
var $row = $( row );
- if ( row === $requestRow[0] ) {
+ if ( row === $requestRow[ 0 ] ) {
$row.addClass( 'selected' )
.find( '.request-selector' ).prop( {
checked: true,
@@ -463,7 +472,8 @@
}
/**
- * Event handler for request checkbox selection
+ * Event handler for request checkbox selection.
+ *
* @param {jQuery.Event} e
*/
function requestSelectHandler( e ) {
@@ -529,49 +539,20 @@
}
/**
- * Old request click handler
+ * Old request click handler.
+ *
* @param {jQuery.Event} e
*/
function oldRequestSelector( e ) {
e.preventDefault();
- getOlderRequests().each( function( index, request ) {
+ getOlderRequests().each( function ( index, request ) {
$( request ).find( '.request-selector' )
.prop( 'checked', true ) // Otherwise the state doesn't actually change
.change();
} );
}
- $( document ).ready( function () {
- var $requestCheckboxes = $( '.request-selector' ),
- $selectAll = $( '.request-selector-all' ),
- $requestRows = $( '.requests .request' );
-
- // Delay so we get the correct height on page load
- window.setTimeout( setPanesHeight, 0 );
- $( window ).on( 'resize', setPanesHeight );
-
- $( '.request-filter-box' ).translatorSearch();
- $( '.language-selector' ).languageFilter();
-
- // Handle clicks for the 'Select all' checkbox
- $selectAll.on( 'click', selectAllRequests );
-
- // Handle clicks on request checkboxes.
- $requestCheckboxes.on( 'click change', requestSelectHandler );
-
- // Handle clicks on request rows.
- $requestRows.on( 'click', onSelectRequest );
-
- $( '.older-requests-indicator' ).on( 'click', oldRequestSelector );
-
- if ( $requestRows.length ) {
- $requestRows.first().click();
- }
-
- updateRequestCount();
- } );
-
// ======================================
// LanguageFilter plugin
// ======================================
@@ -605,10 +586,11 @@
$clearButton.removeClass( 'hide' );
indicateOlderRequests();
},
+ ulsPurpose: 'translate-special-managetranslatorsandbox',
quickList: mw.uls.getFrequentLanguageList
} );
- $clearButton.on( 'click', function() {
+ $clearButton.on( 'click', function () {
var userLang = mw.config.get( 'wgUserLanguage' );
languageFilter.$selector
@@ -627,6 +609,7 @@
/**
* Filter the requests by language.
+ *
* @param {string} [language] Language code
*/
LanguageFilter.prototype.filter = function ( language ) {
@@ -653,7 +636,7 @@
$.fn.languageFilter = function () {
return this.each( function () {
- if ( !$.data( this, 'LanguageFilter' ) ) {
+ if ( !$.data( this, 'LanguageFilter' ) ) {
$.data( this, 'LanguageFilter', new LanguageFilter( this ) );
}
} );
@@ -668,21 +651,21 @@
}
TranslatorSearch.prototype.init = function () {
- this.$search.on( 'search keyup', $.proxy( this.keyup, this ) );
+ this.$search.on( 'search keyup', this.keyup.bind( this ) );
};
- TranslatorSearch.prototype.keyup = function() {
+ TranslatorSearch.prototype.keyup = function () {
var query,
translatorSearch = this;
// Respond to the keypress events after a small timeout to avoid freeze when typed fast
delay( function () {
- query = $.trim( translatorSearch.$search.val() ).toLowerCase().trim();
+ query = translatorSearch.$search.val().trim().toLowerCase();
translatorSearch.filter( query );
}, 300 );
};
- TranslatorSearch.prototype.filter = function( query ) {
+ TranslatorSearch.prototype.filter = function ( query ) {
var $requests = $( '.request' );
$requests.each( function ( index, request ) {
@@ -725,7 +708,7 @@
$.fn.translatorSearch = function () {
return this.each( function () {
- if ( !$.data( this, 'TranslatorSearch' ) ) {
+ if ( !$.data( this, 'TranslatorSearch' ) ) {
$.data( this, 'TranslatorSearch', new TranslatorSearch( this ) );
}
} );
@@ -738,5 +721,35 @@
clearTimeout( timer );
timer = setTimeout( callback, milliseconds );
};
- } () );
+ }() );
+
+ $( function () {
+ var $requestCheckboxes = $( '.request-selector' ),
+ $selectAll = $( '.request-selector-all' ),
+ $requestRows = $( '.requests .request' );
+
+ // Delay so we get the correct height on page load
+ window.setTimeout( setPanesHeight, 0 );
+ $( window ).on( 'resize', setPanesHeight );
+
+ $( '.request-filter-box' ).translatorSearch();
+ $( '.language-selector' ).languageFilter();
+
+ // Handle clicks for the 'Select all' checkbox
+ $selectAll.on( 'click', selectAllRequests );
+
+ // Handle clicks on request checkboxes.
+ $requestCheckboxes.on( 'click change', requestSelectHandler );
+
+ // Handle clicks on request rows.
+ $requestRows.on( 'click', onSelectRequest );
+
+ $( '.older-requests-indicator' ).on( 'click', oldRequestSelector );
+
+ if ( $requestRows.length ) {
+ $requestRows.first().click();
+ }
+
+ updateRequestCount();
+ } );
}( jQuery, mediaWiki ) );
diff --git a/MLEB/Translate/resources/js/ext.translate.special.pagemigration.js b/MLEB/Translate/resources/js/ext.translate.special.pagemigration.js
index 3e9d2ce3..89735436 100644
--- a/MLEB/Translate/resources/js/ext.translate.special.pagemigration.js
+++ b/MLEB/Translate/resources/js/ext.translate.special.pagemigration.js
@@ -1,12 +1,17 @@
( function ( $, mw ) {
'use strict';
var noOfSourceUnits, noOfTranslationUnits,
- pageName, langCode, sourceUnits = [];
+ pageName = '',
+ langCode = '',
+ sourceUnits = [];
/**
* Create translation pages using content of right hand side blocks
* and identifiers from left hand side blocks. Create pages only if
* content is not empty.
+ *
+ * @param {number} i Array index to sourceUnits.
+ * @param {string} content
* @return {Function} Returns a function which returns a jQuery.Promise
*/
function createTranslationPage( i, content ) {
@@ -15,23 +20,23 @@
var identifier, title, summary,
api = new mw.Api();
- identifier = sourceUnits[i].identifier;
+ identifier = sourceUnits[ i ].identifier;
title = 'Translations:' + pageName + '/' + identifier + '/' + langCode;
summary = $( '#pm-summary' ).val();
- return api.postWithToken( 'edit', {
+ return api.postWithToken( 'csrf', {
action: 'edit',
- format: 'json',
watchlist: 'nochange',
title: title,
text: content,
- summary: summary,
+ summary: summary
} );
};
}
/**
* Get the old translations of a given page at given time.
+ *
* @param {string} fuzzyTimestamp Timestamp in MediaWiki format
* @param {string} pageTitle
* @return {jQuery.Promise}
@@ -44,7 +49,6 @@
return api.get( {
action: 'query',
prop: 'revisions',
- format: 'json',
rvprop: 'content',
rvstart: fuzzyTimestamp,
titles: pageTitle
@@ -52,7 +56,7 @@
var pageContent, oldTranslationUnits, obj, page,
errorBox = $( '.mw-tpm-sp-error__message' );
for ( page in data.query.pages ) {
- obj = data.query.pages[page];
+ obj = data.query.pages[ page ];
}
if ( typeof obj === undefined ) {
// obj was not initialized
@@ -64,14 +68,15 @@
errorBox.text( mw.msg( 'pm-old-translations-missing', pageTitle ) ).show( 'fast' );
return $.Deferred().reject();
}
- pageContent = obj.revisions[0]['*'];
+ pageContent = obj.revisions[ 0 ][ '*' ];
oldTranslationUnits = pageContent.split( '\n\n' );
return oldTranslationUnits;
} );
}
/**
- * Get the timestamp before FuzzyBot's first edit on page
+ * Get the timestamp before FuzzyBot's first edit on page.
+ *
* @param {string} pageTitle
* @return {jQuery.Promise}
* @return {Function} return.done
@@ -84,17 +89,16 @@
return api.get( {
action: 'query',
prop: 'revisions',
- format: 'json',
rvprop: 'timestamp',
rvuser: 'FuzzyBot',
rvdir: 'newer',
titles: pageTitle
- } ).then ( function ( data ) {
+ } ).then( function ( data ) {
var timestampFB, dateFB, timestampOld,
page, obj,
errorBox = $( '.mw-tpm-sp-error__message' );
for ( page in data.query.pages ) {
- obj = data.query.pages[page];
+ obj = data.query.pages[ page ];
}
// Page does not exist if missing field is present
if ( obj.missing === '' ) {
@@ -107,7 +111,7 @@
return $.Deferred().reject();
} else {
// FB over here refers to FuzzyBot
- timestampFB = obj.revisions[0].timestamp;
+ timestampFB = obj.revisions[ 0 ].timestamp;
dateFB = new Date( timestampFB );
dateFB.setSeconds( dateFB.getSeconds() - 1 );
timestampOld = dateFB.toISOString();
@@ -118,11 +122,12 @@
}
/**
- * Get the translation units created by Translate extension
+ * Get the translation units created by Translate extension.
+ *
* @param {string} pageName
- * return {jQuery.Promise}
- * return {Function} return.done
- * return {Object[]} return.done.data Array of sUnit Objects
+ * @return {jQuery.Promise}
+ * @return {Function} return.done
+ * @return {Object[]} return.done.data Array of sUnit Objects
*/
function getSourceUnits( pageName ) {
var api = new mw.Api();
@@ -130,19 +135,18 @@
return api.get( {
action: 'query',
list: 'messagecollection',
- format: 'json',
mcgroup: 'page-' + pageName,
mclanguage: 'en',
mcprop: 'definition'
- } ).then ( function ( data ) {
+ } ).then( function ( data ) {
var result, i, sUnit, key;
sourceUnits = [];
result = data.query.messagecollection;
for ( i = 1; i < result.length; i++ ) {
sUnit = {};
- key = result[i].key;
+ key = result[ i ].key;
sUnit.identifier = key.slice( key.lastIndexOf( '/' ) + 1 );
- sUnit.definition = result[i].definition;
+ sUnit.definition = result[ i ].definition;
sourceUnits.push( sUnit );
}
return sourceUnits;
@@ -151,10 +155,14 @@
/**
* Shift rows up by one unit. This is called after a unit is deleted.
+ *
* @param {jQuery} $start The starting node
*/
function shiftRowsUp( $start ) {
- var $current = $start, $next = $start.next(), nextVal;
+ var nextVal,
+ $current = $start,
+ $next = $start.next();
+
while ( $next.length ) {
nextVal = $next.find( '.mw-tpm-sp-unit__target' ).val();
$current.find( '.mw-tpm-sp-unit__target' ).val( nextVal );
@@ -171,6 +179,7 @@
/**
* Shift rows down by one unit. This is called after a new empty unit is
* added.
+ *
* @param {jQuery} $nextRow The next row to start with
* @param {string} text The text of the next row
* @return {string} text The text of the last row
@@ -188,7 +197,8 @@
}
/**
- * Create a new row of source text and target text with action icons
+ * Create a new row of source text and target text with action icons.
+ *
* @param {string} sourceText
* @param {string} targetText
* @return {jQuery} newUnit The new row unit object
@@ -199,22 +209,25 @@
newUnit = $( '<div>' ).addClass( 'mw-tpm-sp-unit row' );
sourceUnit = $( '<textarea>' ).addClass( 'mw-tpm-sp-unit__source five columns' )
- .prop( 'readonly', 'readonly' ).attr( 'tabindex', '-1' ).val( sourceText );
+ .prop( 'readonly', true ).attr( 'tabindex', '-1' ).val( sourceText );
targetUnit = $( '<textarea>' ).addClass( 'mw-tpm-sp-unit__target five columns' )
- .val( targetText );
+ .val( targetText ).prop( 'dir', $.uls.data.getDir( langCode ) );
actionUnit = $( '<div>' ).addClass( 'mw-tpm-sp-unit__actions two columns' );
- actionUnit.append( $( '<span>' ).addClass( 'mw-tpm-sp-action mw-tpm-sp-action--add' )
+ actionUnit.append(
+ $( '<span>' ).addClass( 'mw-tpm-sp-action mw-tpm-sp-action--add' )
.attr( 'title', mw.msg( 'pm-add-icon-hover-text' ) ),
$( '<span>' ).addClass( 'mw-tpm-sp-action mw-tpm-sp-action--swap' )
.attr( 'title', mw.msg( 'pm-swap-icon-hover-text' ) ),
$( '<span>' ).addClass( 'mw-tpm-sp-action mw-tpm-sp-action--delete' )
- .attr( 'title', mw.msg( 'pm-delete-icon-hover-text' ) ) );
+ .attr( 'title', mw.msg( 'pm-delete-icon-hover-text' ) )
+ );
newUnit.append( sourceUnit, targetUnit, actionUnit );
return newUnit;
}
/**
* Display the source and target units alongwith the action icons.
+ *
* @param {Array} sourceUnits
* @param {Array} translations
*/
@@ -229,39 +242,42 @@
unitListing.html( '' );
for ( i = 0; i < totalUnits; i++ ) {
sourceText = targetText = '';
- if ( sourceUnits[i] !== undefined ) {
- sourceText = sourceUnits[i].definition;
+ if ( sourceUnits[ i ] !== undefined ) {
+ sourceText = sourceUnits[ i ].definition;
}
- if ( translations[i] !== undefined ) {
- targetText = translations[i];
+ if ( translations[ i ] !== undefined ) {
+ targetText = translations[ i ];
}
newUnit = createNewUnit( sourceText, targetText );
unitListing.append( newUnit );
}
}
- /*
+ /**
* Split headers from remaining text in each translation unit if present.
+ *
* @param {Array} translations Array of initial units obtained on splitting
- * @return {string[]} translationUnits Array having the headers split into new unit
+ * @return {string[]} Array having the headers split into new unit
*/
function splitHeaders( translations ) {
return $.map( translations, function ( elem ) {
- // Check http://regex101.com/r/oT7fZ2 for details
+ // Check https://regex101.com/r/oT7fZ2 for details
return elem.match( /(^==.+$|(?:(?!^==).+\n?)+)/gm );
} );
}
/**
- * Get the index of next translation unit containing h2 header
- * @param {Integer} startIndex Index to start the scan from
- * @return {Integer} i Index of the next unit found, -1 if not
+ * Get the index of next translation unit containing h2 header.
+ *
+ * @param {number} startIndex Index to start the scan from
+ * @param {string[]} translationUnits Segmented units.
+ * @return {number} Index of the next unit found, -1 if not.
*/
function getHeaderUnit( startIndex, translationUnits ) {
var i, regex;
regex = new RegExp( /^==[^=]+==$/m );
for ( i = startIndex; i < translationUnits.length; i++ ) {
- if ( regex.test( translationUnits[i] ) ) {
+ if ( regex.test( translationUnits[ i ] ) ) {
return i;
}
}
@@ -272,6 +288,10 @@
* Align h2 headers in the order they appear.
* Assumption: The source headers and translation headers appear in
* the same order.
+ *
+ * @param {Object[]} sourceUnits
+ * @param {string[]} translationUnits
+ * @return {string[]}
*/
function alignHeaders( sourceUnits, translationUnits ) {
var i, regex, tIndex = 0,
@@ -279,7 +299,7 @@
regex = new RegExp( /^==[^=]+==$/m );
for ( i = 0; i < sourceUnits.length; i++ ) {
- if ( regex.test( sourceUnits[i].definition ) ) {
+ if ( regex.test( sourceUnits[ i ].definition ) ) {
tIndex = getHeaderUnit( tIndex, translationUnits );
mergeText = '';
// search is over
@@ -303,7 +323,7 @@
emptyCount += 1;
}
if ( i !== 0 ) {
- translationUnits[i - 1] += '\n' + mergeText;
+ translationUnits[ i - 1 ] += '\n' + mergeText;
} else {
matchText = mergeText + matchText;
}
@@ -320,7 +340,7 @@
* Handler for 'Save' button click event.
*/
function saveHandler() {
- var i, list = [], content;
+ var i, content, list = [];
$( '.mw-tpm-sp-error__message' ).hide( 'fast' );
if ( noOfSourceUnits < noOfTranslationUnits ) {
@@ -328,10 +348,11 @@
.show( 'fast' );
return;
} else {
- $( 'input' ).attr( 'disabled', 'disabled' );
+ $( 'input' ).prop( 'disabled', true );
+ $( '.mw-tpm-sp-instructions' ).hide( 'fast' );
for ( i = 0; i < noOfSourceUnits; i++ ) {
content = $( '.mw-tpm-sp-unit__target' ).eq( i ).val();
- content = $.trim( content );
+ content = content.trim();
if ( content !== '' ) {
list.push( createTranslationPage( i, content ) );
}
@@ -339,7 +360,11 @@
$.ajaxDispatcher( list, 1 ).done( function () {
$( '#action-import' ).removeClass( 'hide' );
- $( 'input' ).removeAttr( 'disabled' );
+ $( 'input' ).prop( 'disabled', false );
+ $( '.mw-tpm-sp-instructions' ).text( mw.msg( 'pm-on-save-message-text' ) ).show( 'fast' );
+ } ).fail( function ( errmsg ) {
+ $( 'input' ).prop( 'disabled', false );
+ $( '.mw-tpm-sp-error__message' ).text( mw.msg( errmsg ) ).show( 'fast' );
} );
}
}
@@ -349,6 +374,7 @@
*/
function cancelHandler() {
$( '.mw-tpm-sp-error__message' ).hide( 'fast' );
+ $( '.mw-tpm-sp-instructions' ).hide( 'fast' );
$( '#action-save, #action-cancel' ).addClass( 'hide' );
$( '#action-import' ).removeClass( 'hide' );
$( '.mw-tpm-sp-unit-listing' ).html( '' );
@@ -357,6 +383,8 @@
/**
* Handler for add new unit icon ('+') click event. Adds a translation unit
* below the current unit.
+ *
+ * @param {jQuery.Event} event
*/
function addHandler( event ) {
var nextRow, text, newUnit, targetUnit;
@@ -377,6 +405,8 @@
/**
* Handler for delete icon ('-') click event. Deletes the unit and shifts
* the units up by one.
+ *
+ * @param {jQuery.Event} event
*/
function deleteHandler( event ) {
var sourceText, rowUnit;
@@ -394,12 +424,14 @@
/**
* Handler for swap icon click event. Swaps the text in the current unit
* with the text in the unit below.
+ *
+ * @param {jQuery.Event} event
*/
function swapHandler( event ) {
var rowUnit, tempText, nextVal;
rowUnit = $( event.target ).closest( '.mw-tpm-sp-unit' );
tempText = rowUnit.find( '.mw-tpm-sp-unit__target' ).val();
- nextVal = rowUnit.next().find( '.mw-tpm-sp-unit__target').val();
+ nextVal = rowUnit.next().find( '.mw-tpm-sp-unit__target' ).val();
rowUnit.find( '.mw-tpm-sp-unit__target' ).val( nextVal );
rowUnit.next().find( '.mw-tpm-sp-unit__target' ).val( tempText );
}
@@ -407,39 +439,60 @@
/**
* Handler for 'Import' button click event. Imports source and translation
* units and displays them.
+ *
+ * @param {jQuery.Event} e
*/
- function importHandler() {
- var pageTitle, titleObj, errorBox = $( '.mw-tpm-sp-error__message' );
- pageName = $.trim( $( '#title' ).val() );
- langCode = $.trim( $( '#language' ).val() );
- pageTitle = pageName + '/' + langCode;
- errorBox.hide( 'fast' );
+ function importHandler( e ) {
+ var pageTitle, slashPos, titleObj,
+ errorBox = $( '.mw-tpm-sp-error__message' ),
+ messageBox = $( '.mw-tpm-sp-instructions' );
+
+ e.preventDefault();
+
+ pageTitle = $( '#title' ).val().trim();
+ if ( pageTitle === '' ) {
+ errorBox.text( mw.msg( 'pm-pagetitle-missing' ) ).show( 'fast' );
+ return;
+ }
+
titleObj = mw.Title.newFromText( pageTitle );
+ messageBox.hide( 'fast' );
if ( titleObj === null ) {
errorBox.text( mw.msg( 'pm-pagetitle-invalid' ) ).show( 'fast' );
return;
}
+
pageTitle = titleObj.getPrefixedDb();
- if ( pageName === '' ) {
- errorBox.text( mw.msg( 'pm-pagename-missing' ) ).show( 'fast' );
+ slashPos = pageTitle.lastIndexOf( '/' );
+
+ if ( slashPos === -1 ) {
+ errorBox.text( mw.msg( 'pm-langcode-missing' ) ).show( 'fast' );
return;
}
- if ( langCode === '' ) {
- errorBox.text( mw.msg( 'pm-langcode-missing' ) ).show( 'fast' );
+
+ pageName = pageTitle.substring( 0, slashPos );
+ langCode = pageTitle.substring( slashPos + 1 );
+
+ if ( pageName === '' ) {
+ errorBox.text( mw.msg( 'pm-pagetitle-invalid' ) ).show( 'fast' );
return;
}
+
+ errorBox.hide( 'fast' );
+
$.when( getSourceUnits( pageName ), getFuzzyTimestamp( pageTitle ) )
.then( function ( sourceUnits, fuzzyTimestamp ) {
- noOfSourceUnits = sourceUnits.length;
- splitTranslationPage( fuzzyTimestamp, pageTitle ).done( function ( translations ) {
- var translationUnits = splitHeaders( translations );
- translationUnits = alignHeaders( sourceUnits, translationUnits );
- noOfTranslationUnits = translationUnits.length;
- displayUnits( sourceUnits, translationUnits );
- $( '#action-save, #action-cancel').removeClass( 'hide' );
- $( '#action-import' ).addClass( 'hide' );
+ noOfSourceUnits = sourceUnits.length;
+ splitTranslationPage( fuzzyTimestamp, pageTitle ).done( function ( translations ) {
+ var translationUnits = splitHeaders( translations );
+ translationUnits = alignHeaders( sourceUnits, translationUnits );
+ noOfTranslationUnits = translationUnits.length;
+ displayUnits( sourceUnits, translationUnits );
+ $( '#action-save, #action-cancel' ).removeClass( 'hide' );
+ $( '#action-import' ).addClass( 'hide' );
+ messageBox.text( mw.msg( 'pm-on-import-message-text' ) ).show( 'fast' );
+ } );
} );
- } );
}
/**
@@ -447,6 +500,8 @@
*/
function listen() {
var $listing = $( '.mw-tpm-sp-unit-listing' );
+
+ $( '#mw-tpm-sp-primary-form' ).submit( importHandler );
$( '#action-import' ).click( importHandler );
$( '#action-save' ).click( saveHandler );
$( '#action-cancel' ).click( cancelHandler );
@@ -455,7 +510,7 @@
$listing.on( 'click', '.mw-tpm-sp-action--add', addHandler );
}
- $( document ).ready( listen );
+ $( listen );
mw.translate = mw.translate || {};
mw.translate = $.extend( mw.translate, {
@@ -465,4 +520,4 @@
alignHeaders: alignHeaders
} );
-} ( jQuery, mediaWiki ) );
+}( jQuery, mediaWiki ) );
diff --git a/MLEB/Translate/resources/js/ext.translate.special.pagepreparation.js b/MLEB/Translate/resources/js/ext.translate.special.pagepreparation.js
index c3d02861..8ad8a9ec 100644
--- a/MLEB/Translate/resources/js/ext.translate.special.pagepreparation.js
+++ b/MLEB/Translate/resources/js/ext.translate.special.pagepreparation.js
@@ -3,6 +3,7 @@
/**
* Save the page with a given page name and given content to the wiki.
+ *
* @param {string} pageName Page title
* @param {string} pageContent Content of the page to be saved
* @return {jQuery.Promise}
@@ -10,17 +11,17 @@
function savePage( pageName, pageContent ) {
var api = new mw.Api();
- return api.postWithToken( 'edit', {
+ return api.postWithToken( 'csrf', {
action: 'edit',
- format: 'json',
title: pageName,
text: pageContent,
- summary: $( '#pp-summary' ).val(),
+ summary: $( '#pp-summary' ).val()
} ).promise();
}
/**
- * Get the diff between the current revision and the prepared page content
+ * Get the diff between the current revision and the prepared page content.
+ *
* @param {string} pageName Page title
* @param {string} pageContent Content of the page to be saved
* @return {jQuery.Promise}
@@ -31,19 +32,21 @@
var api = new mw.Api();
return api.post( {
- action:'query',
+ action: 'query',
prop: 'revisions',
- format: 'json',
rvprop: 'content',
rvlimit: '1',
titles: pageName,
rvdifftotext: pageContent
} ).then( function ( data ) {
- var obj, diff;
- for ( var page in data.query.pages ) {
- obj = data.query.pages[page];
+ var page, obj, diff;
+
+ for ( page in data.query.pages ) {
+ obj = data.query.pages[ page ];
}
- diff = obj.revisions[0].diff['*'];
+
+ diff = obj.revisions[ 0 ].diff[ '*' ];
+
return diff;
} );
}
@@ -51,6 +54,7 @@
/**
* Remove all the <translate> tags and {{translation}} templates before
* preparing the page. The tool will add them back wherever needed.
+ *
* @param {string} pageContent
* @return {string}
*/
@@ -61,7 +65,8 @@
/**
* Add the <languages/> bar at the top of the page, if not present.
- * Remove the old {{languages}} template, if present
+ * Remove the old {{languages}} template, if present.
+ *
* @param {string} pageContent
* @return {string}
*/
@@ -76,20 +81,21 @@
/**
* Add <translate> tags around Categories to make them a part of the page template
* and tag them with the {{translation}} template.
+ *
* @param {string} pageContent
* @return {jQuery.Promise}
*/
function doCategories( pageContent ) {
return getNamespaceAliases( 14 ).then( function ( aliases ) {
- var aliasList, categoryRegex;
+ var i, aliasList, categoryRegex;
aliases.push( 'category' );
- for ( var i = 0; i < aliases.length; i++ ) {
- aliases[i] = $.escapeRE( aliases[i] );
+ for ( i = 0; i < aliases.length; i++ ) {
+ aliases[ i ] = mw.RegExp.escape( aliases[ i ] );
}
aliasList = aliases.join( '|' );
- // Regex: http://regex101.com/r/sJ3gZ4/2
+ // Regex: https://regex101.com/r/sJ3gZ4/2
categoryRegex = new RegExp( '\\[\\[((' + aliasList + ')' +
':[^\\|]+)(\\|[^\\|]*?)?\\]\\]', 'gi' );
pageContent = pageContent.replace( categoryRegex, '\n</translate>\n' +
@@ -102,6 +108,7 @@
/**
* Add the <translate> and </translate> tags at the start and end of the page.
* The opening tag is added immediately after the <languages/> tag.
+ *
* @param {string} pageContent
* @return {string}
*/
@@ -114,6 +121,7 @@
/**
* Add newlines before and after section headers. Extra newlines resulting after
* this operation are cleaned up in postPreparationCleanup() function.
+ *
* @param {string} pageContent
* @return {string}
*/
@@ -123,36 +131,88 @@
}
/**
+ * Add an anchor to a section header with the given headerText
+ *
+ * @param {string} headerText
+ * @param {string} pageContent
+ * @return {string}
+ */
+ function addAnchor( headerText, pageContent ) {
+ var headerSearchRegex, anchorID, replaceAnchorRegex,
+ spanSearchRegex;
+
+ anchorID = headerText.replace( ' ', '-' ).toLowerCase();
+
+ headerText = mw.RegExp.escape( headerText );
+ // Search for the header having text as headerText
+ // Regex: https://regex101.com/r/fD6iL1
+ headerSearchRegex = new RegExp( '(==+[ ]*' + headerText + '[ ]*==+)', 'gi' );
+ // This is to ensure the tags and the anchor are added only once
+
+ if ( pageContent.indexOf( '<span id="' + mw.html.escape( anchorID ) + '"' ) === -1 ) {
+ pageContent = pageContent.replace( headerSearchRegex, '</translate>\n' +
+ '<span id="' + mw.html.escape( anchorID ) + '"></span>\n<translate>\n$1' );
+ }
+
+ // This is to add back the tags which were removed in cleanupTags()
+ if ( pageContent.indexOf( '</translate>\n<span id="' + anchorID + '"' ) === -1 ) {
+ spanSearchRegex = new RegExp( '(<span id="' + mw.RegExp.escape( anchorID ) + '"></span>)', 'gi' );
+ pageContent = pageContent.replace( spanSearchRegex, '\n</translate>\n$1\n</translate>\n' );
+ }
+
+ // Replace the link text with the anchorID defined above
+ // Regex: https://regex101.com/r/kB5bK3
+ replaceAnchorRegex = new RegExp( '(\\[\\[#)' + headerText + '(.*\\]\\])', 'gi' );
+ pageContent = pageContent.replace( replaceAnchorRegex, '$1' +
+ anchorID.replace( '$', '$$$' ) + '$2' );
+
+ return pageContent;
+ }
+
+ /**
* Convert all the links into two-party form and add the 'Special:MyLanguage/' prefix
* to links in valid namespaces for the wiki. For example, [[Example]] would be converted
* to [[Special:MyLanguage/Example|Example]].
+ *
* @param {string} pageContent
* @return {string}
*/
function fixInternalLinks( pageContent ) {
- var normalizeRegex, linkPrefixRegex,
- namespaces, nsString;
+
+ var normalizeRegex, linkPrefixRegex, sectionLinksRegex,
+ match, searchText, namespaces, nsString;
+ searchText = pageContent;
normalizeRegex = new RegExp( /\[\[(?!Category)([^|]*?)\]\]/gi );
// First convert all links into two-party form. If a link is not having a pipe,
// add a pipe and duplicate the link text
- // Regex : http://regex101.com/r/pO9nN2
+ // Regex: https://regex101.com/r/pO9nN2
pageContent = pageContent.replace( normalizeRegex, '[[$1|$1]]' );
namespaces = getNamespaces();
nsString = namespaces.join( '|' );
+ // Finds all the links to sections on the same page.
+ // Regex: https://regex101.com/r/cX6jT3
+ sectionLinksRegex = new RegExp( /\[\[#(.*?)(\|(.*?))?\]\]/gi );
+ match = sectionLinksRegex.exec( searchText );
+ while ( match !== null ) {
+ pageContent = addAnchor( match[ 1 ], pageContent );
+ match = sectionLinksRegex.exec( searchText );
+ }
+
linkPrefixRegex = new RegExp( '\\[\\[((?:(?:special(?!:MyLanguage\\b)|' + nsString +
'):)?[^:]*?)\\]\\]', 'gi' );
// Add the 'Special:MyLanguage/' prefix for all internal links of valid namespaces and
// mainspace.
- // Regex : http://regex101.com/r/zZ9jH9
+ // Regex: https://regex101.com/r/zZ9jH9
pageContent = pageContent.replace( linkPrefixRegex, '[[Special:MyLanguage/$1]]' );
return pageContent;
}
/**
* Fetch all the aliases for a given namespace on the wiki.
- * @param {integer} namespaceId
+ *
+ * @param {number} namespaceID
* @return {jQuery.Promise}
* @return {Function} return.done
* @return {Array} return.done.data
@@ -161,16 +221,18 @@
var api = new mw.Api();
return api.get( {
- action:'query',
+ action: 'query',
meta: 'siteinfo',
siprop: 'namespacealiases'
} ).then( function ( data ) {
- var aliases = [];
- for ( var alias in data.query.namespacealiases ) {
- if ( data.query.namespacealiases[alias].id === namespaceID ) {
- aliases.push( data.query.namespacealiases[alias]['*'] );
+ var alias, aliases = [];
+
+ for ( alias in data.query.namespacealiases ) {
+ if ( data.query.namespacealiases[ alias ].id === namespaceID ) {
+ aliases.push( data.query.namespacealiases[ alias ][ '*' ] );
}
}
+
return aliases;
} );
}
@@ -178,17 +240,18 @@
/**
* Add translate tags around only translatable content for files and keep everything else
* as a part of the page template.
+ *
* @param {string} pageContent
* @return {jQuery.Promise}
*/
function doFiles( pageContent ) {
return getNamespaceAliases( 6 ).then( function ( aliases ) {
- var aliasList, captionFilesRegex, fileRegex;
+ var i, aliasList, captionFilesRegex, fileRegex;
aliases.push( 'file' );
- for ( var i = 0; i < aliases.length; i++ ) {
- aliases[i] = $.escapeRE( aliases[i] );
+ for ( i = 0; i < aliases.length; i++ ) {
+ aliases[ i ] = mw.RegExp.escape( aliases[ i ] );
}
aliasList = aliases.join( '|' );
@@ -209,12 +272,13 @@
/**
* Keep templates outside <translate>....</translate> tags
* Does not deal with nested templates, needs manual changes.
+ *
* @param {string} pageContent
* @return {string} pageContent
*/
function doTemplates( pageContent ) {
var templateRegex;
- // Regex: http://regex101.com/r/wA3iX0
+ // Regex: https://regex101.com/r/wA3iX0
templateRegex = new RegExp( /^({{[\s\S]*?}})/gm );
pageContent = pageContent.replace( templateRegex, '</translate>\n$1\n<translate>' );
@@ -223,6 +287,7 @@
/**
* Cleanup done after the page is prepared for translation by the tool.
+ *
* @param {string} pageContent
* @return {string}
*/
@@ -231,62 +296,67 @@
pageContent = pageContent.replace( /\n\n+/gi, '\n\n' );
// Removes redundant <translate> tags
pageContent = pageContent.replace( /\n<translate>(\n*?)<\/translate>/gi, '' );
+ // Removes the Special:MyLanguage/ prefix for section links
+ pageContent = pageContent.replace( /Special:MyLanguage\/#/gi, '#' );
return pageContent;
}
/**
* Get the current revision for the given page.
+ *
* @param {string} pageName
* @return {jQuery.Promise}
* @return {Function} return.done
* @return {string} return.done.value The current revision
*/
function getPageContent( pageName ) {
- var api = new mw.Api(), obj;
+ var obj,
+ api = new mw.Api();
+
return api.get( {
- action:'query',
+ action: 'query',
prop: 'revisions',
- format: 'json',
rvprop: 'content',
rvlimit: '1',
titles: pageName
} ).then( function ( data ) {
+ var page;
- for ( var page in data.query.pages ) {
- obj = data.query.pages[page];
+ for ( page in data.query.pages ) {
+ obj = data.query.pages[ page ];
}
- return obj.revisions[0]['*'];
+
+ return obj.revisions[ 0 ][ '*' ];
} );
}
/**
* Get the list of valid namespaces for the wiki and remove unwanted
* ones from the list.
+ *
* @return {Array} Array of valid namespaces
*/
function getNamespaces() {
- var namespacesObject, namespaces = [], i;
+ var key, namespacesObject, i,
+ namespaces = [];
namespacesObject = mw.config.get( 'wgNamespaceIds' );
- for ( var key in namespacesObject ) {
+ for ( key in namespacesObject ) {
namespaces.push( key );
}
// Remove all what has been already handled somewhere else
- namespaces.splice( $.inArray( '', namespaces), 1 );
- namespaces.splice( $.inArray( 'category', namespaces), 1 );
- namespaces.splice( $.inArray( 'category_talk', namespaces), 1 );
- namespaces.splice( $.inArray( 'special', namespaces), 1 );
- namespaces.splice( $.inArray( 'file', namespaces), 1 );
- namespaces.splice( $.inArray( 'file_talk', namespaces), 1 );
+ [ '', 'category', 'category_talk', 'special', 'file', 'file_talk' ].forEach( function ( ns ) {
+ namespaces.splice( namespaces.indexOf( ns ), 1 );
+ } );
for ( i = 0; i < namespaces.length; i++ ) {
- namespaces[i] = $.escapeRE( namespaces[i] );
+ namespaces[ i ] = mw.RegExp.escape( namespaces[ i ] );
}
return namespaces;
}
- $( document ).ready( function () {
+ $( function () {
var pageContent,
$input = $( '#page' );
@@ -295,12 +365,16 @@
} );
$( '#action-save' ).click( function () {
- var serverName, pageUrl = '', pageName;
- pageName = $.trim( $input.val() );
- serverName = mw.config.get( 'wgServerName' );
+ var pageName,
+ pageUrl = '';
+
+ pageName = $input.val().trim();
savePage( pageName, pageContent ).done( function () {
pageUrl = mw.Title.newFromText( pageName ).getUrl( { action: 'edit' } );
- $( '.messageDiv' ).html( mw.message( 'pp-save-message', pageUrl ).parse() ).show();
+ $( '.messageDiv' )
+ .empty()
+ .append( mw.message( 'pp-save-message', pageUrl ).parseDom() )
+ .show();
$( '.divDiff' ).hide( 'fast' );
$( '#action-prepare' ).show();
$input.val( '' );
@@ -311,37 +385,37 @@
$( '#action-prepare' ).click( function () {
var pageName, messageDiv = $( '.messageDiv' );
- pageName = $.trim( $input.val() );
+
+ pageName = $input.val().trim();
messageDiv.hide();
if ( pageName === '' ) {
- window.alert( mw.msg( 'pp-pagename-missing' ) );
+ // eslint-disable-next-line no-alert
+ alert( mw.msg( 'pp-pagename-missing' ) );
return;
}
$.when( getPageContent( pageName ) ).done( function ( content ) {
pageContent = content;
- pageContent = $.trim( pageContent );
+ pageContent = pageContent.trim();
pageContent = cleanupTags( pageContent );
pageContent = addLanguageBar( pageContent );
pageContent = addTranslateTags( pageContent );
pageContent = addNewLines( pageContent );
pageContent = fixInternalLinks( pageContent );
pageContent = doTemplates( pageContent );
- doFiles( pageContent )
- .then( doCategories )
- .done( function( pageContent ) {
+ doFiles( pageContent ).then( doCategories ).done( function ( pageContent ) {
pageContent = postPreparationCleanup( pageContent );
- pageContent = $.trim( pageContent );
+ pageContent = pageContent.trim();
getDiff( pageName, pageContent ).done( function ( diff ) {
$( '.diff tbody' ).append( diff );
$( '.divDiff' ).show( 'fast' );
if ( diff !== '' ) {
- messageDiv.html( mw.msg( 'pp-prepare-message' ) ).show();
+ messageDiv.text( mw.msg( 'pp-prepare-message' ) ).show();
$( '#action-prepare' ).hide();
$( '#action-save' ).show();
$( '#action-cancel' ).show();
} else {
- messageDiv.html( mw.msg( 'pp-already-prepared-message' ) ).show();
+ messageDiv.text( mw.msg( 'pp-already-prepared-message' ) ).show();
}
} );
} );
@@ -349,4 +423,4 @@
} );
} );
-} ( jQuery, mediaWiki ) );
+}( jQuery, mediaWiki ) );
diff --git a/MLEB/Translate/resources/js/ext.translate.special.pagetranslation.js b/MLEB/Translate/resources/js/ext.translate.special.pagetranslation.js
index f47de956..4897189f 100644
--- a/MLEB/Translate/resources/js/ext.translate.special.pagetranslation.js
+++ b/MLEB/Translate/resources/js/ext.translate.special.pagetranslation.js
@@ -1,8 +1,26 @@
-/*
+/*!
* @author Santhosh Thottingal
+ * @author Niklas Laxström
+ * @license GPL-2.0-or-later
*/
-jQuery( function ( $ ) {
+
+( function ( $, mw ) {
'use strict';
- $( '#wpUserLanguage' ).multiselectautocomplete( { inputbox: '#tpt-prioritylangs' } );
-} );
+ $( function () {
+ $( '#wpUserLanguage' ).multiselectautocomplete( { inputbox: '#tpt-prioritylangs' } );
+
+ $( '#mw-content-text' ).on( 'click', '.mw-translate-jspost', function ( e ) {
+ var params,
+ uri = new mw.Uri( e.target.href );
+
+ params = uri.query;
+ params.token = mw.user.tokens.get( 'csrfToken' );
+ $.post( uri.path, params ).done( function () {
+ location.reload();
+ } );
+
+ e.preventDefault();
+ } );
+ } );
+}( jQuery, mediaWiki ) );
diff --git a/MLEB/Translate/resources/js/ext.translate.special.searchtranslations.js b/MLEB/Translate/resources/js/ext.translate.special.searchtranslations.js
index f2b86412..66bfa65c 100644
--- a/MLEB/Translate/resources/js/ext.translate.special.searchtranslations.js
+++ b/MLEB/Translate/resources/js/ext.translate.special.searchtranslations.js
@@ -3,33 +3,40 @@
var resultGroups;
- $( document ).ready( function () {
- var $messages = $( '.tux-message' );
-
+ $( function () {
resultGroups = $( '.facet.groups' ).data( 'facets' );
- // Make the whole rows clickable
- $( '.facet-item' ).click( function () {
- window.location = $( this ).find( 'a' ).attr( 'href' );
- } );
-
- $messages.each( function () {
- var $this = $( this );
-
- $this.translateeditor( {
- message: {
- title: $this.data( 'title' ),
- definition: $this.data( 'definition' ),
- translation: $this.data( 'translation' ),
- group: $this.data( 'group' )
+ $( '.tux-searchpage .button' ).click( function () {
+ var query = $( '.tux-searchpage .searchinputbox' ).val(),
+ result = lexOperators( query ),
+ $form = $( '.tux-searchpage form[name=searchform]' );
+
+ $.each( result, function ( index, value ) {
+ var $input = $( '<input>' ).prop( 'type', 'hidden' ),
+ $elem = $form.find( 'input[name=' + index + ']' );
+
+ if ( $elem.length ) {
+ $elem.val( value );
+ } else {
+ $form.append( $input
+ .prop( {
+ value: value,
+ name: index
+ } )
+ );
}
} );
} );
- $messages.last().addClass( 'last-message' );
-
+ buildSelectedBox();
showLanguages();
showMessageGroups();
+
+ // Make the whole rows clickable
+ $( '.tux-searchpage .row .facet-item' ).click( function ( event ) {
+ window.location = $( this ).find( 'a' ).attr( 'href' );
+ event.stopPropagation();
+ } );
} );
// ES5-compatible Chrome, IE 9+, FF 4+, or Safari 5+ has Object.keys.
@@ -57,12 +64,11 @@
result,
i,
selectedClasss = '',
- docLanguageCode,
languageCode,
quickLanguageList = [],
unique = [],
- regions,
- $ulsTrigger;
+ $ulsTrigger,
+ uri;
$languages = $( '.facet.languages' );
languages = $languages.data( 'facets' );
@@ -71,31 +77,29 @@
return;
}
- resultCount = Object.keys( languages ).length;
-
- // If a documentation pseudo-language is defined,
- // add it to the language selector
- docLanguageCode = mw.config.get( 'wgTranslateDocumentationLanguageCode' );
- if ( languages[docLanguageCode] ) {
- mw.translate.addDocumentationLanguage();
- mw.config.get( 'wgULSLanguages' )[docLanguageCode] = mw.msg( 'translate-documentation-language' );
- regions = ['WW', 'SP', 'AM', 'EU', 'ME', 'AF', 'AS', 'PA'];
+ if ( currentLanguage !== '' ) {
+ uri = new mw.Uri( location.href );
+ uri.extend( { language: '', filter: '' } );
+ addToSelectedBox( getLanguageLabel( currentLanguage ), uri.toString() );
}
+ resultCount = Object.keys( languages ).length;
quickLanguageList = quickLanguageList.concat( mw.uls.getFrequentLanguageList() )
.concat( Object.keys( languages ) );
// Remove duplicates from the language list
- $.each( quickLanguageList, function ( i, v ) {
- result = languages[v];
- if ( result && $.inArray( v, unique ) === -1 ) {
- unique.push( v );
+ quickLanguageList.forEach( function ( lang ) {
+ result = languages[ lang ];
+ if ( result && unique.indexOf( lang ) === -1 ) {
+ unique.push( lang );
}
} );
- if ( currentLanguage && $.inArray( currentLanguage, quickLanguageList ) >= 0 ) {
+ if ( currentLanguage && quickLanguageList.indexOf( currentLanguage ) >= 0 ) {
quickLanguageList = unique.splice( 0, 5 );
- quickLanguageList = quickLanguageList.concat( currentLanguage );
+ if ( quickLanguageList.indexOf( currentLanguage ) === -1 ) {
+ quickLanguageList = quickLanguageList.concat( currentLanguage );
+ }
} else {
quickLanguageList = unique.splice( 0, 6 );
}
@@ -103,8 +107,8 @@
quickLanguageList.sort( sortLanguages );
for ( i = 0; i <= quickLanguageList.length; i++ ) {
- languageCode = quickLanguageList[i];
- result = languages[languageCode];
+ languageCode = quickLanguageList[ i ];
+ result = languages[ languageCode ];
if ( !result ) {
continue;
}
@@ -115,25 +119,28 @@
selectedClasss = '';
}
- $languages.append( $( '<div>')
- .addClass( 'row facet-item ' + selectedClasss )
- .append( $( '<span>')
- .addClass('facet-name')
- .append( $('<a>')
- .attr( 'href', result.url )
- .text( mw.config.get( 'wgULSLanguages' )[languageCode] || languageCode )
- ),
- $( '<span>')
- .addClass('facet-count')
+ $languages.append( $( '<div>' )
+ .addClass( 'row facet-item' )
+ .append(
+ $( '<span>' )
+ .addClass( 'facet-name ' + selectedClasss )
+ .append( $( '<a>' )
+ .attr( 'href', result.url )
+ .text( getLanguageLabel( languageCode ) )
+ ),
+ $( '<span>' )
+ .addClass( 'facet-count' )
.text( result.count )
)
);
}
$.each( Object.keys( languages ), function ( index, languageCode ) {
- ulslanguages[languageCode] = mw.config.get( 'wgULSLanguages' )[languageCode];
+ ulslanguages[ languageCode ] = mw.config.get( 'wgTranslateLanguages' )[ languageCode ];
} );
+ mw.translate.addExtraLanguagesToLanguageData( ulslanguages, [ 'SP' ] );
+
if ( resultCount > 6 ) {
$ulsTrigger = $( '<a>' )
.text( '...' )
@@ -145,12 +152,13 @@
$ulsTrigger.uls( {
onSelect: function ( language ) {
- window.location = languages[language].url;
+ window.location = languages[ language ].url;
},
compact: true,
languages: ulslanguages,
+ ulsPurpose: 'translate-special-searchtranslations',
top: $languages.offset().top,
- showRegions: regions
+ showRegions: [ 'SP' ].concat( $.fn.lcd.defaults.showRegions )
} );
}
}
@@ -161,7 +169,6 @@
$groups;
$groups = $( '.facet.groups' );
- currentGroup = $groups.data( 'group' );
if ( !resultGroups ) {
// No search results
@@ -172,7 +179,7 @@
listGroups( groupList, currentGroup, $groups );
}
- function listGroups( groupList, parentGroup, $parent, level ) {
+ function listGroups( groupList, parentGrouppath, $parent, level ) {
var i,
$grouSelectorTrigger,
selectedClass = '',
@@ -185,57 +192,73 @@
resultCount = groupList.length,
position,
groups,
- options;
+ options,
+ grouppath;
level = level || 0;
- groupList = groupList.splice( 0, maxListSize );
- if ( currentGroup && resultGroups[currentGroup] &&
- $.inArray( currentGroup, groupList ) < 0
+ groupList.sort( sortGroups );
+ if ( level === 0 ) {
+ groupList = groupList.splice( 0, maxListSize );
+ }
+ grouppath = getParameterByName( 'grouppath' ).split( '|' )[ 0 ];
+ if ( currentGroup && resultGroups[ grouppath ] &&
+ groupList.indexOf( grouppath ) < 0 &&
+ level === 0
) {
// Make sure current selected group is displayed always.
- groupList = groupList.concat( currentGroup );
- groupList.sort( sortGroups );
+ groupList = groupList.concat( grouppath );
}
groupList.sort( sortGroups );
- for ( i = 0; i <= groupList.length; i++ ) {
- groupId = groupList[i];
+ for ( i = 0; i < groupList.length; i++ ) {
+ groupId = groupList[ i ];
group = mw.translate.findGroup( groupId, resultGroups );
if ( !group ) {
continue;
}
+
+ uri = new mw.Uri( location.href );
+ if ( parentGrouppath !== undefined ) {
+ grouppath = parentGrouppath + '|' + groupId;
+ } else {
+ grouppath = groupId;
+ }
+ uri.extend( { group: groupId, grouppath: grouppath } );
+
if ( currentGroup === groupId ) {
selectedClass = 'selected';
+ uri.extend( { group: '', grouppath: '' } );
+ addToSelectedBox( group.label, uri.toString() );
} else {
selectedClass = '';
+ uri.extend( { group: groupId, grouppath: grouppath } );
}
- uri = new mw.Uri( window.location.href );
- uri.extend( { 'group': groupId } );
-
$groupRow = $( '<div>' )
- .addClass( 'row facet-item ' + ' facet-level-' + level )
- .append( $( '<span>' )
- .addClass( 'facet-name ' + selectedClass)
- .append( $( '<a>' )
- .attr( 'href', uri.toString() )
- .text( group.label )
- ),
+ .addClass( 'row facet-item facet-level-' + level )
+ .append(
$( '<span>' )
- .addClass( 'facet-count ' + selectedClass )
- .text( group.count )
+ .addClass( 'facet-name ' + selectedClass )
+ .append( $( '<a>' )
+ .attr( 'href', uri.toString() )
+ .text( group.label )
+ ),
+ $( '<span>' )
+ .addClass( 'facet-count' )
+ .text( mw.language.convertNumber( group.count ) )
);
$parent.append( $groupRow );
if ( group.groups && level < 2 ) {
- listGroups( Object.keys( group.groups ), group, $groupRow, level + 1 );
+ listGroups( Object.keys( group.groups ), grouppath, $groupRow, level + 1 );
}
}
- if ( resultCount > maxListSize ) {
- $grouSelectorTrigger = $( '<div>')
+ if ( resultCount > maxListSize && resultCount - groupList.length > 0 && level === 0 ) {
+ $grouSelectorTrigger = $( '<div>' )
.addClass( 'rowfacet-item ' )
- .append( $( '<a>' )
- .text( '...' )
- .addClass( 'translate-search-more-groups' ),
+ .append(
+ $( '<a>' )
+ .text( '...' )
+ .addClass( 'translate-search-more-groups' ),
$( '<span>' )
.addClass( 'translate-search-more-groups-info' )
.text( mw.msg( 'translate-search-more-groups-info',
@@ -261,9 +284,10 @@
position: position,
onSelect: function ( group ) {
var uri = new mw.Uri( location.href );
- uri.extend( { 'group': group.id } );
+ uri.extend( { group: group.id, grouppath: group.id } );
location.href = uri.toString();
- }
+ },
+ preventSelector: true
};
groups = $.map( resultGroups, function ( value, index ) {
return index;
@@ -275,17 +299,99 @@
}
}
+ function lexOperators( str ) {
+ var string = str.split( ' ' ),
+ result = {},
+ query = '';
+
+ $.each( string, function ( index, value ) {
+ matchOperators( value, function ( obj ) {
+ if ( obj === false ) {
+ query = query + ' ' + value;
+ } else {
+ result[ obj.operator ] = obj.value;
+ }
+ } );
+ } );
+ result.query = query.trim();
+
+ return result;
+ }
+
+ function matchOperators( str, callback ) {
+ var matches,
+ counter = false,
+ // Add operators for different filters
+ operatorRegex = [ 'language', 'group', 'filter' ];
+
+ $.each( operatorRegex, function ( index, value ) {
+ var regex = new RegExp( value + ':(\\S+)', 'i' );
+ if ( ( matches = regex.exec( str ) ) !== null ) {
+ counter = true;
+ callback( {
+ operator: value,
+ value: matches[ 1 ]
+ } );
+ }
+ } );
+ if ( !counter ) {
+ callback( false );
+ }
+ }
+
function sortGroups( groupIdA, groupIdB ) {
- var groupAName = mw.translate.findGroup( groupIdA, resultGroups ).label,
- groupBName = mw.translate.findGroup( groupIdB, resultGroups ).label;
+ var groupAName = mw.translate.findGroup( groupIdA, resultGroups ).count,
+ groupBName = mw.translate.findGroup( groupIdB, resultGroups ).count;
- return groupAName.localeCompare( groupBName );
+ if ( groupAName > groupBName ) {
+ return -1;
+ } else if ( groupAName < groupBName ) {
+ return 1;
+ }
+
+ return 0;
}
function sortLanguages( languageA, languageB ) {
- var languageNameA = mw.config.get( 'wgULSLanguages' )[languageA] || languageA,
- languageNameB = mw.config.get( 'wgULSLanguages' )[languageB] || languageB;
+ var languageNameA = mw.config.get( 'wgULSLanguages' )[ languageA ] || languageA,
+ languageNameB = mw.config.get( 'wgULSLanguages' )[ languageB ] || languageB;
return languageNameA.localeCompare( languageNameB );
}
+
+ function getParameterByName( name ) {
+ var uri = new mw.Uri();
+ return uri.query[ name ] || '';
+ }
+
+ function getLanguageLabel( languageCode ) {
+ return mw.config.get( 'wgULSLanguages' )[ languageCode ] || languageCode;
+ }
+
+ // Build a selected box to show the selected items
+ function buildSelectedBox() {
+ $( '.tux-search-inputs' )
+ .removeClass( 'offset-by-three' )
+ .before(
+ $( '<div>' )
+ .addClass( 'three columns tux-selectedbox' )
+ );
+ }
+
+ function addToSelectedBox( label, url ) {
+ $( '.tux-searchpage .tux-selectedbox' ).append( $( '<div>' )
+ .addClass( 'row facet-item' )
+ .append(
+ $( '<span>' )
+ .addClass( 'facet-name selected' )
+ .append( $( '<a>' )
+ .attr( 'href', url )
+ .text( label )
+ ),
+ $( '<span>' )
+ .addClass( 'facet-count' )
+ .text( 'X' )
+ )
+ );
+ }
}( jQuery, mediaWiki ) );
diff --git a/MLEB/Translate/resources/js/ext.translate.special.translate.js b/MLEB/Translate/resources/js/ext.translate.special.translate.js
index 870bd996..d5b43bc3 100644
--- a/MLEB/Translate/resources/js/ext.translate.special.translate.js
+++ b/MLEB/Translate/resources/js/ext.translate.special.translate.js
@@ -1,66 +1,11 @@
( function ( $, mw ) {
'use strict';
- /* Non-TUX Workflow selector code */
- function prepareWorkflowSelector() {
- var $submit, $select, submitFunction;
-
- $submit = $( '#mw-translate-workflowset' );
- $select = $( '#mw-sp-translate-workflow' ).find( 'select' );
-
- $select.find( 'option[value=]' ).prop( 'disabled', true );
-
- submitFunction = function ( event ) {
- var successFunction = function ( data ) {
- if ( data.error ) {
- $submit.val( mw.msg( 'translate-workflow-set-do' ) );
- $submit.prop( 'disabled', false );
- window.alert( data.error.info );
- } else {
- $submit.val( mw.msg( 'translate-workflow-set-done' ) );
- $select.find( 'option[selected]' ).prop( 'selected', false );
- $select.find( 'option[value=' + event.data.newstate + ']' ).prop( 'selected', true );
- }
- };
-
- $submit.prop( 'disabled', true );
- $submit.val( mw.msg( 'translate-workflow-set-doing' ) );
- changeWorkflowStatus( $submit.data( 'group' ),
- $submit.data( 'language' ),
- event.data.newstate,
- $submit.data( 'token' )
- ).done( successFunction );
- };
-
- $select.change( function ( event ) {
- var current = $( this ).find( 'option[selected]' ).val(),
- tobe = event.target.value;
-
- $submit.val( mw.msg( 'translate-workflow-set-do' ) );
- $submit.unbind( 'click' );
- if ( current !== tobe ) {
- $submit.css( 'visibility', 'visible' );
- $submit.prop( 'disabled', false );
- $submit.click( { newstate: tobe }, submitFunction );
- } else {
- $submit.prop( 'disabled', true );
- }
- } );
- }
-
- function changeWorkflowStatus ( group, language, state, token ) {
- var api = new mw.Api(),
- params = {
- action: 'groupreview',
- group: group,
- language: language,
- state: state,
- token: token,
- format: 'json'
- };
-
- return api.post( params );
- }
+ var state = {
+ group: null,
+ language: null,
+ messageList: null
+ };
mw.translate = mw.translate || {};
@@ -69,110 +14,73 @@
/**
* Change the group that is currently displayed
* in the TUX translation editor.
+ *
* @param {Object} group a message group object.
*/
changeGroup: function ( group ) {
- var changes,
- api = new mw.Api(),
- $description = $( '.tux-editor-header .description' );
+ var changes;
if ( !checkDirty() ) {
return;
}
+ state.group = group.id;
+
changes = {
- group: group.id
- };
+ group: group.id,
+ showMessage: null
- // Update the group description in the header
- api.parse(
- group.description
- ).done( function ( parsedDescription ) {
- // The parsed text is returned in a <p> tag,
- // so it's removed here.
- $description.html( $( parsedDescription ).html() );
- } ).fail( function () {
- $description.html( group.description );
- mw.log( 'Error parsing description for group ' + group.id );
- } );
+ };
mw.translate.changeUrl( changes );
mw.translate.updateTabLinks( changes );
- mw.translate.loadMessages( changes );
- updateGroupWarning();
+ $( '.tux-editor-header .group-warning' ).empty();
+ state.messageList.changeSettings( changes );
+ updateGroupInformation( state );
},
changeLanguage: function ( language ) {
- var changes, targetDir, targetLangAttrib,
- userLanguageCode = mw.config.get( 'wgUserLanguage' );
-
- if ( !checkDirty() ) {
- return;
- }
-
- changes = {
- language: language
+ var changes = {
+ language: language,
+ showMessage: null
};
- if ( language === mw.config.get( 'wgTranslateDocumentationLanguageCode' ) ) {
- targetLangAttrib = userLanguageCode;
- targetDir = $.uls.data.getDir( userLanguageCode );
- } else {
- targetLangAttrib = language;
- targetDir = $.uls.data.getDir( language );
- }
-
- // Changes to attributes must also be reflected
- // when the element is created on the server side
- $( '.ext-translate-language-selector > .uls' )
- .text( $.uls.data.getAutonym( language ) )
- .attr( {
- lang: targetLangAttrib,
- dir: targetDir
- } );
- $( '.tux-messagelist' ).data( {
- targetlangcode: language,
- targetlangdir: targetDir
- } );
-
mw.translate.changeUrl( changes );
mw.translate.updateTabLinks( changes );
- mw.translate.loadMessages();
- updateGroupWarning();
+ $( '.tux-editor-header .group-warning' ).empty();
+ state.messageList.changeSettings( changes );
+ updateGroupInformation( state );
+
},
changeFilter: function ( filter ) {
- var realFilters, uri;
-
if ( !checkDirty() ) {
return;
}
- realFilters = [ '!ignored' ];
- uri = new mw.Uri( window.location.href );
- if ( uri.query.optional !== '1' ) {
- realFilters.push( '!optional' );
- }
- if ( filter ) {
- realFilters.push( filter );
- }
-
- mw.translate.changeUrl( { filter: filter } );
- mw.translate.loadMessages( { filter: realFilters.join( '|' ) } );
+ mw.translate.changeUrl( { filter: filter, showMessage: null } );
+ state.messageList.changeSettings( { filter: getActualFilter( filter ) } );
},
- changeUrl: function ( params ) {
+ changeUrl: function ( params, forceChange ) {
var uri = new mw.Uri( window.location.href );
uri.extend( params );
+ // Support removing keys from the query
+ $.each( params, function ( key, val ) {
+ if ( val === null ) {
+ delete uri.query[ key ];
+ }
+ } );
+
if ( uri.toString() === window.location.href ) {
return;
}
- // Change the URL with this URI, but don't leave the page.
- if ( history.pushState && $( '.tux-messagelist' ).length ) {
- // IE<10 does not support pushState. Never mind.
+ // If supported by the browser and requested, change the URL with
+ // this URI but try not to leave the page.
+ if ( !forceChange && history.pushState && $( '.tux-messagelist' ).length ) {
history.pushState( uri, null, uri.toString() );
} else {
// For old browsers, just reload
@@ -182,6 +90,7 @@
/**
* Updates the navigation tabs.
+ *
* @param {Object} params Url parameters to update.
* @since 2013.05
*/
@@ -197,9 +106,25 @@
}
} );
+ function getActualFilter( filter ) {
+ var realFilters, uri;
+
+ realFilters = [ '!ignored' ];
+ uri = new mw.Uri( window.location.href );
+ if ( uri.query.optional !== '1' ) {
+ realFilters.push( '!optional' );
+ }
+ if ( filter ) {
+ realFilters.push( filter );
+ }
+
+ return realFilters.join( '|' );
+ }
+
function checkDirty() {
if ( mw.translate.isDirty() ) {
- return window.confirm( mw.msg( 'translate-js-support-unsaved-warning' ) );
+ // eslint-disable-next-line no-alert
+ return confirm( mw.msg( 'translate-js-support-unsaved-warning' ) );
}
return true;
}
@@ -213,67 +138,128 @@
.filter( '.translated, .proofread' );
}
- function updateGroupWarning() {
- var $groupWarning = $( '.tux-editor-header .group-warning' ),
- id = $( '.tux-messagetable-loader' ).data( 'messagegroup' ),
- props = 'priority|prioritylangs|priorityforce';
+ /**
+ * Updates all group specific stuff on the page.
+ *
+ * @param {Object} state Information about current group and language.
+ * @param {string} state.group Message group id.
+ * @param {string} state.language Language.
+ */
+ function updateGroupInformation( state ) {
+ var props = 'id|priority|prioritylangs|priorityforce|description';
+
+ mw.translate.recentGroups.append( state.group );
+
+ mw.translate.getMessageGroup( state.group, props ).done( function ( group ) {
+ updateDescription( group );
+ updateGroupWarning( group, state.language );
+ } );
+ }
- $groupWarning.empty();
+ function updateDescription( group ) {
+ var
+ api = new mw.Api(),
+ $description = $( '.tux-editor-header .description' );
- mw.translate.getMessageGroup( id, props ).done( function ( group ) {
- var preferredLanguages, headerMessage, languagesMessage,
- targetLanguage = $( '.tux-messagelist' ).data( 'targetlangcode' );
+ if ( group.description === null ) {
+ $description.empty();
+ return;
+ }
- // Check whether the group has priority languages
- if ( !group.prioritylangs ) {
- return;
- }
+ api.parse( group.description ).done( function ( parsedDescription ) {
+ // The parsed text is returned in a <p> tag,
+ // so it's removed here.
+ $description.html( parsedDescription );
+ } ).fail( function () {
+ $description.empty();
+ mw.log( 'Error parsing description for group ' + group.id );
+ } );
+ }
- // And if the current language is among them, we can return early
- if ( $.inArray( targetLanguage, group.prioritylangs ) !== -1 ) {
- return;
- }
+ function updateGroupWarning( group, language ) {
+ var preferredLanguages, headerMessage, languagesMessage,
+ $groupWarning = $( '.tux-editor-header .group-warning' );
- // Make a comma-separated list of preferred languages
- preferredLanguages = $.map( group.prioritylangs, function ( lang ) {
- // bidi isolation for language names
- return '<bdi>' + $.uls.data.getAutonym( lang ) + '</bdi>';
- } ).join( ', ' );
+ // Check whether the group has priority languages
+ if ( !group.prioritylangs ) {
+ return;
+ }
+
+ // And if the current language is among them, we can return early
+ if ( group.prioritylangs.indexOf( language ) !== -1 ) {
+ return;
+ }
- headerMessage = mw.message( group.priorityforce ?
+ // Make a comma-separated list of preferred languages
+ preferredLanguages = $.map( group.prioritylangs, function ( lang ) {
+ // bidi isolation for language names
+ return '<bdi>' + $.uls.data.getAutonym( lang ) + '</bdi>';
+ } ).join( ', ' );
+
+ headerMessage = mw.message(
+ group.priorityforce ?
'tpt-discouraged-language-force-header' :
'tpt-discouraged-language-header',
- $.uls.data.getAutonym( targetLanguage )
- ).parse();
+ $.uls.data.getAutonym( language )
+ ).parse();
- languagesMessage = mw.message( group.priorityforce ?
+ languagesMessage = mw.message(
+ group.priorityforce ?
'tpt-discouraged-language-force-content' :
'tpt-discouraged-language-content',
- preferredLanguages
- ).parse();
-
- $groupWarning.append(
- $( '<p>' ).append( $( '<strong>' ).text( headerMessage ) ),
- // html because of the <bdi> and because it's parsed
- $( '<p>' ).html( languagesMessage )
- );
- } );
+ preferredLanguages
+ ).parse();
+
+ $groupWarning.append(
+ $( '<p>' ).append( $( '<strong>' ).text( headerMessage ) ),
+ // html because of the <bdi> and because it's parsed
+ $( '<p>' ).html( languagesMessage )
+ );
}
- $( document ).ready( function () {
- var $translateContainer, $hideTranslatedButton, $controlOwnButton, $messageList,
- targetLanguage, docLanguageAutonym, docLanguageCode, ulsOptions, filter, uri, position;
+ function setupLanguageSelector( $element ) {
+ var ulsOptions = {
+ languages: mw.config.get( 'wgTranslateLanguages' ),
+ showRegions: [ 'SP' ].concat( $.fn.lcd.defaults.showRegions ),
+ onSelect: function ( language ) {
+ mw.translate.changeLanguage( language );
+ $element.text( $.uls.data.getAutonym( language ) );
+ },
+ ulsPurpose: 'translate-special-translate',
+ quickList: function () {
+ return mw.uls.getFrequentLanguageList();
+ }
+ };
+
+ mw.translate.addExtraLanguagesToLanguageData( ulsOptions.languages, [ 'SP' ] );
+ $element.uls( ulsOptions );
+ }
+
+ $( function () {
+ var $translateContainer, $hideTranslatedButton, $messageList,
+ filter, uri, position, offset, limit;
$messageList = $( '.tux-messagelist' );
+ state.group = $( '.tux-messagetable-loader' ).data( 'messagegroup' );
+ state.language = $messageList.data( 'targetlangcode' );
+
if ( $messageList.length ) {
+ $messageList.messagetable();
+ state.messageList = $messageList.data( 'messagetable' );
+
uri = new mw.Uri( window.location.href );
filter = uri.query.filter;
+ offset = uri.query.showMessage;
+ if ( offset ) {
+ limit = uri.query.limit || 1;
+ // Default to no filters
+ filter = filter || '';
+ }
if ( filter === undefined ) {
filter = '!translated';
}
- mw.translate.changeFilter( filter );
$( '.tux-message-selector li' ).each( function () {
var $this = $( this );
@@ -281,51 +267,47 @@
$this.addClass( 'selected' );
}
} );
- }
- targetLanguage = $messageList.data( 'targetlangcode' ) || // for tux=1
- mw.config.get( 'wgUserLanguage' ); // for tux=0
+ mw.translate.changeUrl( {
+ group: state.group,
+ language: state.language,
+ filter: filter,
+ showMessage: offset,
+ optional: offset ? 1 : undefined
+ } );
+
+ // Start loading messages
+ state.messageList.changeSettings( {
+ group: state.group,
+ language: state.language,
+ offset: offset,
+ limit: limit,
+ filter: getActualFilter( filter )
+ } );
+ }
- // This is the selector for non-TUX mode
- prepareWorkflowSelector();
if ( $( 'body' ).hasClass( 'rtl' ) ) {
position = {
my: 'right top',
at: 'right+80 bottom+5'
};
}
- $( '.tux-breadcrumb .grouplink' ).msggroupselector( {
+ $( '.tux-breadcrumb__item--aggregate' ).msggroupselector( {
onSelect: mw.translate.changeGroup,
- language: targetLanguage,
- position: position
+ language: state.language,
+ position: position,
+ recent: mw.translate.recentGroups.get()
} );
- updateGroupWarning();
+ updateGroupInformation( state );
- $( '.tux-messagelist' ).messagetable();
- // Use ULS for language selection if it's available
- ulsOptions = {
- onSelect: function ( language ) {
- mw.translate.changeLanguage( language );
- },
- languages: mw.config.get( 'wgULSLanguages' ),
- searchAPI: mw.util.wikiScript( 'api' ) + '?action=languagesearch',
- quickList: function () {
- return mw.uls.getFrequentLanguageList();
- }
- };
-
- // If a documentation pseudo-language is defined,
- // add it to the language selector
- docLanguageCode = mw.config.get( 'wgTranslateDocumentationLanguageCode' );
- if ( docLanguageCode ) {
- docLanguageAutonym = mw.msg( 'translate-documentation-language' );
- ulsOptions.languages[docLanguageCode] = docLanguageAutonym;
- mw.translate.addDocumentationLanguage();
- ulsOptions.showRegions = ['WW', 'SP', 'AM', 'EU', 'ME', 'AF', 'AS', 'PA'];
- }
-
- $( '.ext-translate-language-selector .uls' ).uls( ulsOptions );
+ $( '.ext-translate-language-selector .uls' ).one( 'click', function () {
+ var $target = $( this );
+ mw.loader.using( 'ext.uls.mediawiki' ).done( function () {
+ setupLanguageSelector( $target );
+ $target.click();
+ } );
+ } );
if ( $.fn.translateeditor ) {
// New translation editor
@@ -346,22 +328,6 @@
$( this ).prop( 'disabled', true );
} );
- $controlOwnButton = $translateContainer.find( '.tux-proofread-own-translations-button' );
- $controlOwnButton.click( function () {
- var $this = $( this ),
- ownTranslatedMessages = $translateContainer.find( '.own-translation' ),
- hideMessage = mw.msg( 'tux-editor-proofreading-hide-own-translations' ),
- showMessage = mw.msg( 'tux-editor-proofreading-show-own-translations' );
-
- if ( $this.hasClass( 'down' ) ) {
- ownTranslatedMessages.removeClass( 'hide' );
- $this.removeClass( 'down' ).text( hideMessage );
- } else {
- ownTranslatedMessages.addClass( 'hide' );
- $this.addClass( 'down' ).text( showMessage );
- }
- } );
-
// Message filter click handler
$translateContainer.find( '.row.tux-message-selector > li' ).on( 'click', function () {
var newFilter,
diff --git a/MLEB/Translate/resources/js/ext.translate.special.translationstash.js b/MLEB/Translate/resources/js/ext.translate.special.translationstash.js
index b0ca96e4..cfc7ef05 100644
--- a/MLEB/Translate/resources/js/ext.translate.special.translationstash.js
+++ b/MLEB/Translate/resources/js/ext.translate.special.translationstash.js
@@ -1,27 +1,27 @@
-/**
- * TranslationStash front-end logic
+/*!
+ * TranslationStash front-end logic.
+ *
* @author Santhosh Thottingal
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
* @since 2013.10
*/
( function ( $, mw ) {
'use strict';
+ var userTranslations = {},
+ translationStashStorage = new mw.translate.TranslationStashStorage();
+
mw.translate.canTranslate = function () {
// At this page, the new translator can translate
return true;
};
- var userTranslations = {},
- translationStashStorage = new mw.translate.TranslationStashStorage();
-
function getMessages( messageGroup, language, offset, limit ) {
var deferred = new mw.Api().get( {
action: 'query',
list: 'messagecollection',
mcgroup: messageGroup,
- format: 'json',
mclanguage: language,
mcoffset: offset,
mclimit: limit,
@@ -42,10 +42,10 @@
statusClass = 'tux-status-' + status,
statusMsg;
- if ( status === 'translated' ) {
- // tux-status-translated
- statusMsg = 'tux-status-' + status;
- }
+ if ( status === 'translated' ) {
+ // tux-status-translated
+ statusMsg = 'tux-status-' + status;
+ }
$messageWrapper = $( '<div>' )
.addClass( 'row tux-message' );
@@ -76,7 +76,7 @@
dir: targetLanguageDir
} )
.text( message.translation || '' )
- ),
+ ),
$( '<div>' )
.addClass( 'two columns tux-list-status text-center' )
.append(
@@ -151,8 +151,8 @@
// Show a message telling that the limit was reached
$( '.limit-reached' )
.empty()
- .append( $( '<h1>' ).text( mw.message( 'tsb-limit-reached-title' ) ) )
- .append( $( '<p>' ).text( mw.message( 'tsb-limit-reached-body' ) ) )
+ .append( $( '<h1>' ).text( mw.msg( 'tsb-limit-reached-title' ) ) )
+ .append( $( '<p>' ).text( mw.msg( 'tsb-limit-reached-body' ) ) )
.removeClass( 'hide' );
}
}
@@ -175,8 +175,8 @@
message.properties.status = 'untranslated';
message.group = messagegroup;
- if ( userTranslations[message.title] ) {
- message.translation = userTranslations[message.title].translation;
+ if ( userTranslations[ message.title ] ) {
+ message.translation = userTranslations[ message.title ].translation;
message.properties.status = 'translated';
}
@@ -200,7 +200,7 @@
} );
}
- $( 'document' ).ready( function () {
+ $( function () {
var $messageTable = $( '.tux-messagelist' ),
$ulsTrigger = $( '.ext-translate-language-selector > .uls' );
@@ -212,6 +212,7 @@
} );
$ulsTrigger.uls( {
+ ulsPurpose: 'translate-special-translationstash',
onSelect: function ( language ) {
var direction = $.uls.data.getDir( language ),
autonym = $.uls.data.getAutonym( language );
@@ -236,12 +237,12 @@
// Get the user translations if any(possibly from an early attempt)
// and new messages to try.
translationStashStorage.getUserTranslations()
- .done( function( translations ) {
+ .done( function ( translations ) {
if ( translations.translationstash.translations ) {
$.each( translations.translationstash.translations,
function ( index, translation ) {
- userTranslations[translation.title] = translation;
- } );
+ userTranslations[ translation.title ] = translation;
+ } );
}
loadMessages();
} );
diff --git a/MLEB/Translate/resources/js/ext.translate.special.translationstats.js b/MLEB/Translate/resources/js/ext.translate.special.translationstats.js
index 69870391..d935619b 100644
--- a/MLEB/Translate/resources/js/ext.translate.special.translationstats.js
+++ b/MLEB/Translate/resources/js/ext.translate.special.translationstats.js
@@ -1,36 +1,61 @@
-/**
+/*!
* JavaScript functions for embedding jQuery controls
* into translation notification form.
*
* @author Amir E. Aharoni
* @author Siebrand Mazeland
+ * @author Niklas Laxström
* @copyright Copyright © 2012-2013 Amir E. Aharoni, Siebrand Mazeland
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
-jQuery( document ).ready( function ( $ ) {
+( function ( $, mw ) {
'use strict';
- // Based on UploadWizard, TranslationNotifications
- $( '#start' )
- .datepicker( {
- dateFormat: 'yymmdd',
- constrainInput: false,
- showOn: 'focus',
- changeMonth: true,
- changeYear: true,
- showAnim: false,
- showButtonPanel: true,
- maxDate: new Date(),
- onClose: function ( dateText, inst ) {
- // TranslationStats works with the yyyymmddhhmmss format,
- // so zeros that represents generic hh:mm:ss must be added.
- // The zeros are added only if a date was actually selected
- // and is not currently displayed.
- if ( dateText !== '' && inst.input.val().length < 14 ) {
- inst.input.val( dateText + '000000' );
+ $( function () {
+ var $input = $( '#start' ),
+ datepicker = mw.loader.getState( 'mediawiki.widgets.datetime' ) === null;
+
+ // Remove when MediaWiki 1.27 is no longer supported
+ if ( datepicker ) {
+ mw.loader.using( 'jquery.ui.datepicker' ).done( function () {
+ $input.datepicker( {
+ dateFormat: 'yy-mm-ddT00:00:00',
+ constrainInput: false,
+ showOn: 'focus',
+ changeMonth: true,
+ changeYear: true,
+ showAnim: false,
+ showButtonPanel: true,
+ maxDate: new Date()
+ } ).attr( 'autocomplete', 'off' );
+ } );
+ } else {
+ mw.loader.using( 'mediawiki.widgets.datetime' ).done( function () {
+ var widget, defaultValue, defaultDate;
+
+ defaultDate = new Date();
+ defaultDate.setDate( 1 );
+
+ if ( $input.val() ) {
+ defaultValue = new Date( $input.val() );
}
- }
- } )
- .attr( 'autocomplete', 'off' );
-} );
+
+ widget = new mw.widgets.datetime.DateTimeInputWidget( {
+ formatter: {
+ format: '${year|0}-${month|0}-${day|0}',
+ defaultDate: defaultDate
+ },
+ type: 'date',
+ value: defaultValue,
+ max: new Date()
+ } );
+
+ $input.after( widget.$element ).hide();
+ widget.on( 'change', function ( data ) {
+ $input.val( data + 'T00:00:00' );
+ } );
+ } );
+ }
+ } );
+}( jQuery, mediaWiki ) );
diff --git a/MLEB/Translate/resources/js/ext.translate.statsbar.js b/MLEB/Translate/resources/js/ext.translate.statsbar.js
index 8f14c00a..ea193209 100644
--- a/MLEB/Translate/resources/js/ext.translate.statsbar.js
+++ b/MLEB/Translate/resources/js/ext.translate.statsbar.js
@@ -1,8 +1,9 @@
-/**
+/*!
* Translate language statistics bar - jQuery plugin.
+ *
* @author Niklas Laxström
* @author Santhosh Thottingal
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
* @since 2012-11-30
*/
@@ -17,24 +18,22 @@
( function ( mw, $ ) {
'use strict';
- // Use mw.translate namespace for storing the language statistics.
- mw.translate = mw.translate || {};
-
var LanguageStatsBar = function ( container, options ) {
this.$container = $( container );
this.group = options.group;
this.language = options.language;
this.$statsBar = null;
+ this.elements = null;
this.init();
};
LanguageStatsBar.prototype = {
init: function () {
- if ( mw.translate.languagestats[this.language] ) {
+ if ( mw.translate.languagestats[ this.language ] ) {
this.render();
} else {
mw.translate.loadLanguageStats( this.language )
- .done( $.proxy( this.render, this ) );
+ .done( this.render.bind( this ) );
}
},
@@ -44,29 +43,31 @@
listen: function () {
var i,
statsbar = this,
- languageStats = mw.translate.languagestats[this.language];
+ languageStats = mw.translate.languagestats[ this.language ];
statsbar.$statsBar.on( 'change', function ( event, to, from ) {
for ( i = 0; i < languageStats.length; i++ ) {
- if ( languageStats[i].group === statsbar.group ) {
- if ( to === 'translated' && from === 'untranslated' ) {
- languageStats[i].translated++;
+ if ( languageStats[ i ].group === statsbar.group ) {
+ // Changing a proofread message does not create a new translation
+ if ( to === 'translated' && from !== 'proofread' ) {
+ languageStats[ i ].translated++;
}
if ( to === 'proofread' ) {
- languageStats[i].proofread++;
+ languageStats[ i ].proofread++;
}
if ( to === 'fuzzy' ) {
- languageStats[i].fuzzy++;
+ languageStats[ i ].fuzzy++;
}
if ( from === 'fuzzy' ) {
- languageStats[i].fuzzy--;
+ languageStats[ i ].fuzzy--;
}
if ( from === 'proofread' ) {
- languageStats[i].proofread--;
+ languageStats[ i ].proofread--;
}
- if ( from === 'translated' ) {
- languageStats[i].translated--;
+ // Proofreading a message does not remove translation
+ if ( from === 'translated' && to !== 'proofread' ) {
+ languageStats[ i ].translated--;
}
break;
}
@@ -76,10 +77,13 @@
statsbar.update();
} );
- statsbar.$container.hover( function () {
- statsbar.$statsBar.find( '.tux-statsbar-info' ).removeClass( 'hide' );
- }, function () {
- statsbar.$statsBar.find( '.tux-statsbar-info' ).addClass( 'hide' );
+ statsbar.$container.on( {
+ mouseenter: function () {
+ statsbar.elements.$info.removeClass( 'hide' );
+ },
+ mouseleave: function () {
+ statsbar.elements.$info.addClass( 'hide' );
+ }
} );
},
@@ -88,26 +92,32 @@
.addClass( 'tux-statsbar' )
.data( 'group', this.group );
- this.$statsBar.append(
- $( '<span>' ).addClass( 'tux-proofread' ),
- $( '<span>' ).addClass( 'tux-translated' ),
- $( '<span>' ).addClass( 'tux-fuzzy' ),
- $( '<span>' ).addClass( 'tux-untranslated' ),
- $( '<div>' ).addClass( 'tux-statsbar-info hide' )
- );
+ this.elements = {
+ $proofread: $( '<span>' ).addClass( 'tux-proofread' ),
+ $translated: $( '<span>' ).addClass( 'tux-translated' ),
+ $fuzzy: $( '<span>' ).addClass( 'tux-fuzzy' ),
+ $untranslated: $( '<span>' ).addClass( 'tux-untranslated' ),
+ $info: $( '<div>' ).addClass( 'tux-statsbar-info hide' )
+ };
- this.$container.append( this.$statsBar );
this.update();
+ this.$statsBar.append( [
+ // Append needs an array instead of an object
+ this.elements.$proofread,
+ this.elements.$translated,
+ this.elements.$fuzzy,
+ this.elements.$untranslated,
+ this.elements.$info
+ ] );
+ this.$container.append( this.$statsBar );
this.listen();
},
update: function () {
- var proofread, translated, fuzzy, untranslated, untranslatedCount,
+ var proofread, translated, fuzzy, untranslated,
stats = this.getStatsForGroup( this.group );
- this.$statsBar.data( 'total', stats.total );
-
proofread = 100 * stats.proofread / stats.total;
// Proofread messages are also translated, so remove those for
// the bar showing only translated count.
@@ -115,32 +125,22 @@
translated = 100 * translated / stats.total;
fuzzy = 100 * stats.fuzzy / stats.total;
untranslated = 100 - proofread - translated - fuzzy;
- // Again, proofread counts are subset of translated counts
- untranslatedCount = stats.total - stats.translated - stats.fuzzy;
-
- this.$statsBar.find( '.tux-proofread' )
- .data( 'proofread', stats.proofread )
- .css( 'width', proofread + '%' );
- this.$statsBar.find( '.tux-translated' )
- .data( 'translated', stats.translated )
- .css( 'width', translated + '%' );
- this.$statsBar.find( '.tux-fuzzy' )
- .data( 'fuzzy', stats.fuzzy )
- .css( 'width', fuzzy + '%' );
- this.$statsBar.find( '.tux-untranslated' )
- .data( 'untranslated', untranslatedCount )
- .css( 'width', untranslated + '%' );
+
+ this.elements.$proofread[ 0 ].style.width = proofread + '%';
+ this.elements.$translated[ 0 ].style.width = translated + '%';
+ this.elements.$fuzzy[ 0 ].style.width = fuzzy + '%';
+ this.elements.$untranslated[ 0 ].style.width = untranslated + '%';
translated = !translated ? 0 : translated + proofread;
proofread = !proofread ? 0 : proofread;
if ( fuzzy ) {
- this.$statsBar.find( '.tux-statsbar-info' )
+ this.elements.$info
.text( mw.msg( 'translate-statsbar-tooltip-with-fuzzy',
translated.toFixed(), proofread.toFixed(),
fuzzy.toFixed() ) );
} else {
- this.$statsBar.find( '.tux-statsbar-info' )
+ this.elements.$info
.text( mw.msg( 'translate-statsbar-tooltip',
translated.toFixed(), proofread.toFixed() ) );
}
@@ -148,11 +148,11 @@
getStatsForGroup: function ( group ) {
var i,
- languageStats = mw.translate.languagestats[this.language];
+ languageStats = mw.translate.languagestats[ this.language ];
for ( i = 0; i < languageStats.length; i++ ) {
- if ( languageStats[i].group === group ) {
- return languageStats[i];
+ if ( languageStats[ i ].group === group ) {
+ return languageStats[ i ];
}
}
@@ -183,4 +183,5 @@
$.fn.languagestatsbar.Constructor = LanguageStatsBar;
mw.translate = mw.translate || {};
-} ( mediaWiki, jQuery ) );
+
+}( mediaWiki, jQuery ) );
diff --git a/MLEB/Translate/resources/js/ext.translate.storage.js b/MLEB/Translate/resources/js/ext.translate.storage.js
index 698eb669..c17e8e26 100644
--- a/MLEB/Translate/resources/js/ext.translate.storage.js
+++ b/MLEB/Translate/resources/js/ext.translate.storage.js
@@ -1,11 +1,10 @@
( function ( mw ) {
'use strict';
- mw.translate = mw.translate || {};
-
/**
* This class can save a translation into MediaWiki pages using the
* MediaWiki edit WebApi.
+ *
* @since 2013.10
*/
var TranslationApiStorage = function () {
@@ -14,17 +13,22 @@
TranslationApiStorage.prototype = {
/**
- * Save the translation
+ * Save the translation.
+ *
* @param {string} title The title of the page including language code
* to store the translation.
* @param {string} translation The translation of the message
+ * @param {string} editSummary The edit summary
* @return {jQuery.Promise}
*/
- save: function ( title, translation ) {
- return (new mw.Api()).postWithToken( 'edit', {
+ save: function ( title, translation, editSummary ) {
+ var api = new mw.Api();
+
+ return api.postWithToken( 'csrf', {
action: 'edit',
title: title,
text: translation,
+ summary: editSummary,
// If the session expires, fail the saving instead of saving it
// as an anonymous user (if anonymous can save).
// When undefined, the parameter is not included in the request
@@ -33,5 +37,6 @@
}
};
+ mw.translate = mw.translate || {};
mw.translate.TranslationApiStorage = TranslationApiStorage;
}( mediaWiki ) );
diff --git a/MLEB/Translate/resources/js/ext.translate.translationstashstorage.js b/MLEB/Translate/resources/js/ext.translate.translationstashstorage.js
index fb24b36d..39eb506f 100644
--- a/MLEB/Translate/resources/js/ext.translate.translationstashstorage.js
+++ b/MLEB/Translate/resources/js/ext.translate.translationstashstorage.js
@@ -1,10 +1,9 @@
( function ( $, mw ) {
'use strict';
- mw.translate = mw.translate || {};
-
/**
- * This class can save translation to translation stash
+ * This class can save translation to translation stash.
+ *
* @since 2013.10
*/
var TranslationStashStorage = function () {
@@ -13,39 +12,46 @@
TranslationStashStorage.prototype = {
/**
- * Save the translation
+ * Save the translation.
+ *
* @param {string} title The title of the page including language code
* to store the translation.
* @param {string} translation The translation of the message
* @return {jQuery.Promise}
*/
save: function ( title, translation ) {
- var deferred = new mw.Api().postWithToken( 'translationstash', {
+ var api = new mw.Api();
+
+ return api.postWithToken( 'csrf', {
action: 'translationstash',
subaction: 'add',
title: title,
translation: translation
+ } ).then( function () {
+ // Fake normal save API
+ return { edit: { result: 'Success' } };
} );
-
- return deferred.promise();
},
/**
- * Get the current users translations
+ * Get the current users translations.
+ *
+ * @param {string} user User name
* @return {jQuery.Promise}
*/
getUserTranslations: function ( user ) {
- var deferred = new mw.Api().postWithToken( 'translationstash', {
+ var api = new mw.Api();
+
+ return api.postWithToken( 'csrf', {
action: 'translationstash',
subaction: 'query',
username: user
- } );
-
- return deferred.promise();
+ } ).promise();
}
};
+ mw.translate = mw.translate || {};
mw.translate.TranslationStashStorage = TranslationStashStorage;
}( jQuery, mediaWiki ) );
diff --git a/MLEB/Translate/resources/js/ext.translate.workflowselector.js b/MLEB/Translate/resources/js/ext.translate.workflowselector.js
index 4ddd555c..0bb4621d 100644
--- a/MLEB/Translate/resources/js/ext.translate.workflowselector.js
+++ b/MLEB/Translate/resources/js/ext.translate.workflowselector.js
@@ -1,9 +1,9 @@
-/*
+/*!
* A jQuery plugin which handles the display and change of message group
* workflow sates.
*
* @author Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
( function ( $, mw ) {
@@ -25,12 +25,14 @@
WorkflowSelector.prototype = {
/**
* Displays the current state and selector if relevant.
- * @param {String} groupId
- * @param {String} language
- * @param {String} state
+ *
+ * @param {string} groupId
+ * @param {string} language
+ * @param {string} state
*/
receiveState: function ( groupId, language, state ) {
var instance = this;
+
instance.currentState = state;
instance.language = language;
@@ -51,29 +53,29 @@
/**
* Calls the WebApi to change the state to a new value.
- * @param {String} state
+ *
+ * @param {string} state
* @return {jQuery.Promise}
*/
changeState: function ( state ) {
- var token, params,
+ var params,
api = new mw.Api();
params = {
action: 'groupreview',
group: this.groupId,
language: this.language,
- state: state,
- format: 'json'
+ state: state
};
- token = mw.config.get( 'wgTranslateSupportsCsrfToken' ) ? 'csrf' : 'groupreview';
- return api.postWithToken( token, params );
+ return api.postWithToken( 'csrf', params );
},
/**
* Get the text which says that the current state is X.
- * @param {String} stateName
- * @return {String} Text which should be escaped.
+ *
+ * @param {string} stateName
+ * @return {string} Text which should be escaped.
*/
getStateDisplay: function ( stateName ) {
return mw.msg( 'translate-workflowstatus', stateName );
@@ -110,16 +112,17 @@
$state = $( '<li>' )
.data( 'state', data )
- .text( data._name );
+ .text( data.name );
- if ( data._canchange && id !== instance.currentState ) {
+ if ( data.canchange && id !== instance.currentState ) {
$state.addClass( 'changeable' );
} else {
$state.addClass( 'unchangeable' );
}
if ( id === instance.currentState ) {
- $display.text( instance.getStateDisplay( data._name ) );
+ $display.text( instance.getStateDisplay( data.name ) );
+ $display.append( $( '<span>' ).addClass( 'tux-workflow-status-triangle' ) );
$state.addClass( 'selected' );
}
@@ -127,17 +130,20 @@
} );
$list.find( '.changeable' ).click( function () {
- var $this = $( this ), state;
+ var state,
+ $this = $( this );
state = $this.data( 'state' ).id;
$display.text( mw.msg( 'translate-workflow-set-doing' ) );
+ $display.append( $( '<span>' ).addClass( 'tux-workflow-status-triangle' ) );
instance.changeState( state )
.done( function () {
instance.receiveState( instance.groupId, instance.language, state );
} )
.fail( function () {
- window.alert( 'Change of state failed' );
+ // eslint-disable-next-line no-alert
+ alert( 'Change of state failed' );
} );
} );
instance.$container.append( $display, $list );
diff --git a/MLEB/Translate/resources/js/jquery.ajaxdispatcher.js b/MLEB/Translate/resources/js/jquery.ajaxdispatcher.js
index a49a1580..9f45697c 100644
--- a/MLEB/Translate/resources/js/jquery.ajaxdispatcher.js
+++ b/MLEB/Translate/resources/js/jquery.ajaxdispatcher.js
@@ -4,18 +4,22 @@
/**
* Call list of callbacks returning promises in serial order and returns a list of promises.
*
- * @author Niklas Laxström, 2014
+ * @author Niklas Laxström
*
* @param {callable[]} list List of callbacks returning promises.
+ * @param {number} maxRetries Maximum number of times a failed promise is retried.
* @return {jQuery.Promise}
*/
function ajaxDispatcher( list, maxRetries ) {
+ var deferred = $.Deferred();
+
maxRetries = maxRetries || 0;
- var deferred = $.Deferred();
return $.when( helper( list, maxRetries ) )
.then( function ( promises ) {
return deferred.resolve( promises );
+ } ).fail( function ( errmsg ) {
+ return deferred.reject( errmsg );
} );
}
@@ -28,12 +32,14 @@
return deferred;
}
- first = list.slice( 0, 1 )[0];
+ first = list.slice( 0, 1 )[ 0 ];
rest = list.slice( 1 );
retries = 0;
- retrier = function () {
- var promise = this;
+ retrier = function ( result, promise ) {
+ if ( !promise.state ) {
+ return;
+ }
if ( promise.state() === 'rejected' ) {
if ( retries < maxRetries ) {
@@ -49,7 +55,9 @@
}
};
- first.call().always( retrier );
+ first.call().always( retrier ).catch( function ( errmsg ) {
+ return deferred.reject( errmsg );
+ } );
return deferred;
}
diff --git a/MLEB/Translate/resources/js/jquery.autosize.js b/MLEB/Translate/resources/js/jquery.autosize.js
index b2264beb..62873057 100644
--- a/MLEB/Translate/resources/js/jquery.autosize.js
+++ b/MLEB/Translate/resources/js/jquery.autosize.js
@@ -1,243 +1,254 @@
/*!
- Autosize v1.17.2 - 2013-07-30
- Automatically adjust textarea height based on user input.
- (c) 2013 Jack Moore - http://www.jacklmoore.com/autosize
- license: http://www.opensource.org/licenses/mit-license.php
- https://raw.github.com/jackmoore/autosize/1.17.2/jquery.autosize.js
+ Autosize 3.0.15
+ license: MIT
+ http://www.jacklmoore.com/autosize
*/
-(function (factory) {
+(function (global, factory) {
if (typeof define === 'function' && define.amd) {
- // AMD. Register as an anonymous module.
- define(['jquery'], factory);
+ define(['exports', 'module'], factory);
+ } else if (typeof exports !== 'undefined' && typeof module !== 'undefined') {
+ factory(exports, module);
} else {
- // Browser globals: jQuery or jQuery-like library, such as Zepto
- factory(window.jQuery || window.$);
+ var mod = {
+ exports: {}
+ };
+ factory(mod.exports, mod);
+ global.autosize = mod.exports;
}
-}(function ($) {
- var
- defaults = {
- className: 'autosizejs',
- append: '',
- callback: false,
- resizeDelay: 10
- },
-
- // border:0 is unnecessary, but avoids a bug in FireFox on OSX
- copy = '<textarea tabindex="-1" style="position:absolute; top:-999px; left:0; right:auto; bottom:auto; border:0; -moz-box-sizing:content-box; -webkit-box-sizing:content-box; box-sizing:content-box; word-wrap:break-word; height:0 !important; min-height:0 !important; overflow:hidden; transition:none; -webkit-transition:none; -moz-transition:none;"/>',
-
- // line-height is conditionally included because IE7/IE8/old Opera do not return the correct value.
- typographyStyles = [
- 'fontFamily',
- 'fontSize',
- 'fontWeight',
- 'fontStyle',
- 'letterSpacing',
- 'textTransform',
- 'wordSpacing',
- 'textIndent'
- ],
-
- // to keep track which textarea is being mirrored when adjust() is called.
- mirrored,
-
- // the mirror element, which is used to calculate what size the mirrored element should be.
- mirror = $(copy).data('autosize', true)[0];
-
- // test that line-height can be accurately copied.
- mirror.style.lineHeight = '99px';
- if ($(mirror).css('lineHeight') === '99px') {
- typographyStyles.push('lineHeight');
+})(this, function (exports, module) {
+ 'use strict';
+
+ var set = typeof Set === 'function' ? new Set() : (function () {
+ var list = [];
+
+ return {
+ has: function has(key) {
+ return Boolean(list.indexOf(key) > -1);
+ },
+ add: function add(key) {
+ list.push(key);
+ },
+ 'delete': function _delete(key) {
+ list.splice(list.indexOf(key), 1);
+ } };
+ })();
+
+ var createEvent = function createEvent(name) {
+ return new Event(name);
+ };
+ try {
+ new Event('test');
+ } catch (e) {
+ // IE does not support `new Event()`
+ createEvent = function (name) {
+ var evt = document.createEvent('Event');
+ evt.initEvent(name, true, false);
+ return evt;
+ };
}
- mirror.style.lineHeight = '';
- $.fn.autosize = function (options) {
- options = $.extend({}, defaults, options || {});
+ function assign(ta) {
+ var _ref = arguments[1] === undefined ? {} : arguments[1];
- if (mirror.parentNode !== document.body) {
- $(document.body).append(mirror);
- }
+ var _ref$setOverflowX = _ref.setOverflowX;
+ var setOverflowX = _ref$setOverflowX === undefined ? true : _ref$setOverflowX;
+ var _ref$setOverflowY = _ref.setOverflowY;
+ var setOverflowY = _ref$setOverflowY === undefined ? true : _ref$setOverflowY;
- return this.each(function () {
- var
- ta = this,
- $ta = $(ta),
- maxHeight,
- minHeight,
- boxOffset = 0,
- callback = $.isFunction(options.callback),
- originalStyles = {
- height: ta.style.height,
- overflow: ta.style.overflow,
- overflowY: ta.style.overflowY,
- wordWrap: ta.style.wordWrap,
- resize: ta.style.resize
- },
- timeout,
- width = $ta.width();
-
- if ($ta.data('autosize')) {
- // exit if autosize has already been applied, or if the textarea is the mirror element.
- return;
- }
- $ta.data('autosize', true);
+ if (!ta || !ta.nodeName || ta.nodeName !== 'TEXTAREA' || set.has(ta)) return;
+
+ var heightOffset = null;
+ var overflowY = null;
+ var clientWidth = ta.clientWidth;
+
+ function init() {
+ var style = window.getComputedStyle(ta, null);
- if ($ta.css('box-sizing') === 'border-box' || $ta.css('-moz-box-sizing') === 'border-box' || $ta.css('-webkit-box-sizing') === 'border-box'){
- boxOffset = $ta.outerHeight() - $ta.height();
+ overflowY = style.overflowY;
+
+ if (style.resize === 'vertical') {
+ ta.style.resize = 'none';
+ } else if (style.resize === 'both') {
+ ta.style.resize = 'horizontal';
}
- // IE8 and lower return 'auto', which parses to NaN, if no min-height is set.
- minHeight = Math.max(parseInt($ta.css('minHeight'), 10) - boxOffset || 0, $ta.height());
+ if (style.boxSizing === 'content-box') {
+ heightOffset = -(parseFloat(style.paddingTop) + parseFloat(style.paddingBottom));
+ } else {
+ heightOffset = parseFloat(style.borderTopWidth) + parseFloat(style.borderBottomWidth);
+ }
+ // Fix when a textarea is not on document body and heightOffset is Not a Number
+ if (isNaN(heightOffset)) {
+ heightOffset = 0;
+ }
- $ta.css({
- overflow: 'hidden',
- overflowY: 'hidden',
- wordWrap: 'break-word', // horizontal overflow is hidden, so break-word is necessary for handling words longer than the textarea width
- resize: ($ta.css('resize') === 'none' || $ta.css('resize') === 'vertical') ? 'none' : 'horizontal'
- });
+ update();
+ }
- function initMirror() {
- var styles = {}, ignore;
+ function changeOverflow(value) {
+ {
+ // Chrome/Safari-specific fix:
+ // When the textarea y-overflow is hidden, Chrome/Safari do not reflow the text to account for the space
+ // made available by removing the scrollbar. The following forces the necessary text reflow.
+ var width = ta.style.width;
+ ta.style.width = '0px';
+ // Force reflow:
+ /* jshint ignore:start */
+ ta.offsetWidth;
+ /* jshint ignore:end */
+ ta.style.width = width;
+ }
- mirrored = ta;
- mirror.className = options.className;
- maxHeight = parseInt($ta.css('maxHeight'), 10);
+ overflowY = value;
- // mirror is a duplicate textarea located off-screen that
- // is automatically updated to contain the same text as the
- // original textarea. mirror always has a height of 0.
- // This gives a cross-browser supported way getting the actual
- // height of the text, through the scrollTop property.
- $.each(typographyStyles, function(i,val){
- styles[val] = $ta.css(val);
- });
- $(mirror).css(styles);
-
- // The textarea overflow is probably now hidden, but Chrome doesn't reflow the text to account for the
- // new space made available by removing the scrollbars. This workaround causes Chrome to reflow the text.
- if ('oninput' in ta) {
- var width = ta.style.width;
- ta.style.width = '0px';
- ignore = ta.offsetWidth; // This value isn't used, but getting it triggers the necessary reflow
- ta.style.width = width;
- }
+ if (setOverflowY) {
+ ta.style.overflowY = value;
}
- // Using mainly bare JS in this function because it is going
- // to fire very often while typing, and needs to very efficient.
- function adjust() {
- var height, original, width, style;
+ resize();
+ }
- if (mirrored !== ta) {
- initMirror();
- }
+ function resize() {
+ var htmlTop = window.pageYOffset;
+ var bodyTop = document.body.scrollTop;
+ var originalHeight = ta.style.height;
- mirror.value = ta.value + options.append;
- mirror.style.overflowY = ta.style.overflowY;
- original = parseInt(ta.style.height,10);
+ ta.style.height = 'auto';
- // window.getComputedStyle, getBoundingClientRect returning a width are unsupported in IE8 and lower.
- // The mirror width must exactly match the textarea width, so using getBoundingClientRect because it doesn't round the sub-pixel value.
- if ('getComputedStyle' in window) {
- style = window.getComputedStyle(ta);
- width = ta.getBoundingClientRect().width;
+ var endHeight = ta.scrollHeight + heightOffset;
- $.each(['paddingLeft', 'paddingRight', 'borderLeftWidth', 'borderRightWidth'], function(i,val){
- width -= parseInt(style[val],10);
- });
+ if (ta.scrollHeight === 0) {
+ // If the scrollHeight is 0, then the element probably has display:none or is detached from the DOM.
+ ta.style.height = originalHeight;
+ return;
+ }
- mirror.style.width = width + 'px';
- }
- else {
- mirror.style.width = Math.max($ta.width(), 0) + 'px';
- }
+ ta.style.height = endHeight + 'px';
- // Needed for IE8 and lower to reliably return the correct scrollTop
- mirror.scrollTop = 0;
+ // used to check if an update is actually necessary on window.resize
+ clientWidth = ta.clientWidth;
- mirror.scrollTop = 9e4;
+ // prevents scroll-position jumping
+ document.documentElement.scrollTop = htmlTop;
+ document.body.scrollTop = bodyTop;
+ }
- // Using scrollTop rather than scrollHeight because scrollHeight is non-standard and includes padding.
- height = mirror.scrollTop;
+ function update() {
+ var startHeight = ta.style.height;
- if (maxHeight && height > maxHeight) {
- ta.style.overflowY = 'scroll';
- height = maxHeight;
- } else {
- ta.style.overflowY = 'hidden';
- if (height < minHeight) {
- height = minHeight;
- }
- }
+ resize();
- height += boxOffset;
+ var style = window.getComputedStyle(ta, null);
- if (original !== height) {
- ta.style.height = height + 'px';
- if (callback) {
- options.callback.call(ta,ta);
- }
+ if (style.height !== ta.style.height) {
+ if (overflowY !== 'visible') {
+ changeOverflow('visible');
+ }
+ } else {
+ if (overflowY !== 'hidden') {
+ changeOverflow('hidden');
}
}
- function resize () {
- clearTimeout(timeout);
- timeout = setTimeout(function(){
- if ($ta.width() !== width) {
- adjust();
- }
- }, parseInt(options.resizeDelay,10));
+ if (startHeight !== ta.style.height) {
+ var evt = createEvent('autosize:resized');
+ ta.dispatchEvent(evt);
}
+ }
- if ('onpropertychange' in ta) {
- if ('oninput' in ta) {
- // Detects IE9. IE9 does not fire onpropertychange or oninput for deletions,
- // so binding to onkeyup to catch most of those occasions. There is no way that I
- // know of to detect something like 'cut' in IE9.
- $ta.on('input.autosize keyup.autosize', adjust);
- } else {
- // IE7 / IE8
- $ta.on('propertychange.autosize', function(){
- if(event.propertyName === 'value'){
- adjust();
- }
- });
- }
- } else {
- // Modern Browsers
- $ta.on('input.autosize', adjust);
+ var pageResize = function pageResize() {
+ if (ta.clientWidth !== clientWidth) {
+ update();
}
+ };
+
+ var destroy = (function (style) {
+ window.removeEventListener('resize', pageResize, false);
+ ta.removeEventListener('input', update, false);
+ ta.removeEventListener('keyup', update, false);
+ ta.removeEventListener('autosize:destroy', destroy, false);
+ ta.removeEventListener('autosize:update', update, false);
+ set['delete'](ta);
+
+ Object.keys(style).forEach(function (key) {
+ ta.style[key] = style[key];
+ });
+ }).bind(ta, {
+ height: ta.style.height,
+ resize: ta.style.resize,
+ overflowY: ta.style.overflowY,
+ overflowX: ta.style.overflowX,
+ wordWrap: ta.style.wordWrap });
+
+ ta.addEventListener('autosize:destroy', destroy, false);
+
+ // IE9 does not fire onpropertychange or oninput for deletions,
+ // so binding to onkeyup to catch most of those events.
+ // There is no way that I know of to detect something like 'cut' in IE9.
+ if ('onpropertychange' in ta && 'oninput' in ta) {
+ ta.addEventListener('keyup', update, false);
+ }
- // Set options.resizeDelay to false if using fixed-width textarea elements.
- // Uses a timeout and width check to reduce the amount of times adjust needs to be called after window resize.
+ window.addEventListener('resize', pageResize, false);
+ ta.addEventListener('input', update, false);
+ ta.addEventListener('autosize:update', update, false);
+ set.add(ta);
- if (options.resizeDelay !== false) {
- $(window).on('resize.autosize', resize);
- }
+ if (setOverflowX) {
+ ta.style.overflowX = 'hidden';
+ ta.style.wordWrap = 'break-word';
+ }
- // Event for manual triggering if needed.
- // Should only be needed when the value of the textarea is changed through JavaScript rather than user input.
- $ta.on('autosize.resize', adjust);
+ init();
+ }
- // Event for manual triggering that also forces the styles to update as well.
- // Should only be needed if one of typography styles of the textarea change, and the textarea is already the target of the adjust method.
- $ta.on('autosize.resizeIncludeStyle', function() {
- mirrored = null;
- adjust();
- });
+ function destroy(ta) {
+ if (!(ta && ta.nodeName && ta.nodeName === 'TEXTAREA')) return;
+ var evt = createEvent('autosize:destroy');
+ ta.dispatchEvent(evt);
+ }
- $ta.on('autosize.destroy', function(){
- mirrored = null;
- clearTimeout(timeout);
- $(window).off('resize', resize);
- $ta
- .off('autosize')
- .off('.autosize')
- .css(originalStyles)
- .removeData('autosize');
- });
+ function update(ta) {
+ if (!(ta && ta.nodeName && ta.nodeName === 'TEXTAREA')) return;
+ var evt = createEvent('autosize:update');
+ ta.dispatchEvent(evt);
+ }
- // Call adjust in case the textarea already contains text.
- adjust();
- });
- };
-}));
+ var autosize = null;
+
+ // Do nothing in Node.js environment and IE8 (or lower)
+ if (typeof window === 'undefined' || typeof window.getComputedStyle !== 'function') {
+ autosize = function (el) {
+ return el;
+ };
+ autosize.destroy = function (el) {
+ return el;
+ };
+ autosize.update = function (el) {
+ return el;
+ };
+ } else {
+ autosize = function (el, options) {
+ if (el) {
+ Array.prototype.forEach.call(el.length ? el : [el], function (x) {
+ return assign(x, options);
+ });
+ }
+ return el;
+ };
+ autosize.destroy = function (el) {
+ if (el) {
+ Array.prototype.forEach.call(el.length ? el : [el], destroy);
+ }
+ return el;
+ };
+ autosize.update = function (el) {
+ if (el) {
+ Array.prototype.forEach.call(el.length ? el : [el], update);
+ }
+ return el;
+ };
+ }
+
+ module.exports = autosize;
+});
diff --git a/MLEB/Translate/resources/js/jquery.textchange.js b/MLEB/Translate/resources/js/jquery.textchange.js
index 6fdeec87..5f145f02 100644
--- a/MLEB/Translate/resources/js/jquery.textchange.js
+++ b/MLEB/Translate/resources/js/jquery.textchange.js
@@ -1,6 +1,7 @@
-/*
+/*!
* Trigger a textchange event on text change in input fields.
- * And make it cross browser compatible
+ * And make it cross browser compatible.
+ *
* @author Santhosh Thottingal, 2013
* @see https://gist.github.com/mkelly12/424774
*/
@@ -17,7 +18,7 @@
},
teardown: function () {
- $( this ).unbind( '.textchange' );
+ $( this ).off( '.textchange' );
},
handler: function () {
@@ -40,4 +41,4 @@
}
};
-} )( jQuery );
+}( jQuery ) );
diff --git a/MLEB/Translate/resources/js/jquery.ui.position.js b/MLEB/Translate/resources/js/jquery.ui.position.js
deleted file mode 100644
index 1a88c353..00000000
--- a/MLEB/Translate/resources/js/jquery.ui.position.js
+++ /dev/null
@@ -1,498 +0,0 @@
-/*!
- * jQuery UI Position 1.10.3
- * http://jqueryui.com
- *
- * Copyright 2013 jQuery Foundation and other contributors
- * Released under the MIT license.
- * http://jquery.org/license
- *
- * http://api.jqueryui.com/position/
- * @codingStandardsIgnoreFile External lib.
- */
-(function( $, undefined ) {
-
-$.ui = $.ui || {};
-
-var cachedScrollbarWidth,
- max = Math.max,
- abs = Math.abs,
- round = Math.round,
- rhorizontal = /left|center|right/,
- rvertical = /top|center|bottom/,
- roffset = /[\+\-]\d+(\.[\d]+)?%?/,
- rposition = /^\w+/,
- rpercent = /%$/,
- _position = $.fn.position;
-
-function getOffsets( offsets, width, height ) {
- return [
- parseFloat( offsets[ 0 ] ) * ( rpercent.test( offsets[ 0 ] ) ? width / 100 : 1 ),
- parseFloat( offsets[ 1 ] ) * ( rpercent.test( offsets[ 1 ] ) ? height / 100 : 1 )
- ];
-}
-
-function parseCss( element, property ) {
- return parseInt( $.css( element, property ), 10 ) || 0;
-}
-
-function getDimensions( elem ) {
- var raw = elem[0];
- if ( raw.nodeType === 9 ) {
- return {
- width: elem.width(),
- height: elem.height(),
- offset: { top: 0, left: 0 }
- };
- }
- if ( $.isWindow( raw ) ) {
- return {
- width: elem.width(),
- height: elem.height(),
- offset: { top: elem.scrollTop(), left: elem.scrollLeft() }
- };
- }
- if ( raw.preventDefault ) {
- return {
- width: 0,
- height: 0,
- offset: { top: raw.pageY, left: raw.pageX }
- };
- }
- return {
- width: elem.outerWidth(),
- height: elem.outerHeight(),
- offset: elem.offset()
- };
-}
-
-$.position = {
- scrollbarWidth: function() {
- if ( cachedScrollbarWidth !== undefined ) {
- return cachedScrollbarWidth;
- }
- var w1, w2,
- div = $( "<div style='display:block;width:50px;height:50px;overflow:hidden;'><div style='height:100px;width:auto;'></div></div>" ),
- innerDiv = div.children()[0];
-
- $( "body" ).append( div );
- w1 = innerDiv.offsetWidth;
- div.css( "overflow", "scroll" );
-
- w2 = innerDiv.offsetWidth;
-
- if ( w1 === w2 ) {
- w2 = div[0].clientWidth;
- }
-
- div.remove();
-
- return (cachedScrollbarWidth = w1 - w2);
- },
- getScrollInfo: function( within ) {
- var overflowX = within.isWindow ? "" : within.element.css( "overflow-x" ),
- overflowY = within.isWindow ? "" : within.element.css( "overflow-y" ),
- hasOverflowX = overflowX === "scroll" ||
- ( overflowX === "auto" && within.width < within.element[0].scrollWidth ),
- hasOverflowY = overflowY === "scroll" ||
- ( overflowY === "auto" && within.height < within.element[0].scrollHeight );
- return {
- width: hasOverflowY ? $.position.scrollbarWidth() : 0,
- height: hasOverflowX ? $.position.scrollbarWidth() : 0
- };
- },
- getWithinInfo: function( element ) {
- var withinElement = $( element || window ),
- isWindow = $.isWindow( withinElement[0] );
- return {
- element: withinElement,
- isWindow: isWindow,
- offset: withinElement.offset() || { left: 0, top: 0 },
- scrollLeft: withinElement.scrollLeft(),
- scrollTop: withinElement.scrollTop(),
- width: isWindow ? withinElement.width() : withinElement.outerWidth(),
- height: isWindow ? withinElement.height() : withinElement.outerHeight()
- };
- }
-};
-
-$.fn.position = function( options ) {
- if ( !options || !options.of ) {
- return _position.apply( this, arguments );
- }
-
- // make a copy, we don't want to modify arguments
- options = $.extend( {}, options );
-
- var atOffset, targetWidth, targetHeight, targetOffset, basePosition, dimensions,
- target = $( options.of ),
- within = $.position.getWithinInfo( options.within ),
- scrollInfo = $.position.getScrollInfo( within ),
- collision = ( options.collision || "flip" ).split( " " ),
- offsets = {};
-
- dimensions = getDimensions( target );
- if ( target[0].preventDefault ) {
- // force left top to allow flipping
- options.at = "left top";
- }
- targetWidth = dimensions.width;
- targetHeight = dimensions.height;
- targetOffset = dimensions.offset;
- // clone to reuse original targetOffset later
- basePosition = $.extend( {}, targetOffset );
-
- // force my and at to have valid horizontal and vertical positions
- // if a value is missing or invalid, it will be converted to center
- $.each( [ "my", "at" ], function() {
- var pos = ( options[ this ] || "" ).split( " " ),
- horizontalOffset,
- verticalOffset;
-
- if ( pos.length === 1) {
- pos = rhorizontal.test( pos[ 0 ] ) ?
- pos.concat( [ "center" ] ) :
- rvertical.test( pos[ 0 ] ) ?
- [ "center" ].concat( pos ) :
- [ "center", "center" ];
- }
- pos[ 0 ] = rhorizontal.test( pos[ 0 ] ) ? pos[ 0 ] : "center";
- pos[ 1 ] = rvertical.test( pos[ 1 ] ) ? pos[ 1 ] : "center";
-
- // calculate offsets
- horizontalOffset = roffset.exec( pos[ 0 ] );
- verticalOffset = roffset.exec( pos[ 1 ] );
- offsets[ this ] = [
- horizontalOffset ? horizontalOffset[ 0 ] : 0,
- verticalOffset ? verticalOffset[ 0 ] : 0
- ];
-
- // reduce to just the positions without the offsets
- options[ this ] = [
- rposition.exec( pos[ 0 ] )[ 0 ],
- rposition.exec( pos[ 1 ] )[ 0 ]
- ];
- });
-
- // normalize collision option
- if ( collision.length === 1 ) {
- collision[ 1 ] = collision[ 0 ];
- }
-
- if ( options.at[ 0 ] === "right" ) {
- basePosition.left += targetWidth;
- } else if ( options.at[ 0 ] === "center" ) {
- basePosition.left += targetWidth / 2;
- }
-
- if ( options.at[ 1 ] === "bottom" ) {
- basePosition.top += targetHeight;
- } else if ( options.at[ 1 ] === "center" ) {
- basePosition.top += targetHeight / 2;
- }
-
- atOffset = getOffsets( offsets.at, targetWidth, targetHeight );
- basePosition.left += atOffset[ 0 ];
- basePosition.top += atOffset[ 1 ];
-
- return this.each(function() {
- var collisionPosition, using,
- elem = $( this ),
- elemWidth = elem.outerWidth(),
- elemHeight = elem.outerHeight(),
- marginLeft = parseCss( this, "marginLeft" ),
- marginTop = parseCss( this, "marginTop" ),
- collisionWidth = elemWidth + marginLeft + parseCss( this, "marginRight" ) + scrollInfo.width,
- collisionHeight = elemHeight + marginTop + parseCss( this, "marginBottom" ) + scrollInfo.height,
- position = $.extend( {}, basePosition ),
- myOffset = getOffsets( offsets.my, elem.outerWidth(), elem.outerHeight() );
-
- if ( options.my[ 0 ] === "right" ) {
- position.left -= elemWidth;
- } else if ( options.my[ 0 ] === "center" ) {
- position.left -= elemWidth / 2;
- }
-
- if ( options.my[ 1 ] === "bottom" ) {
- position.top -= elemHeight;
- } else if ( options.my[ 1 ] === "center" ) {
- position.top -= elemHeight / 2;
- }
-
- position.left += myOffset[ 0 ];
- position.top += myOffset[ 1 ];
-
- // if the browser doesn't support fractions, then round for consistent results
- if ( !$.support.offsetFractions ) {
- position.left = round( position.left );
- position.top = round( position.top );
- }
-
- collisionPosition = {
- marginLeft: marginLeft,
- marginTop: marginTop
- };
-
- $.each( [ "left", "top" ], function( i, dir ) {
- if ( $.ui.position[ collision[ i ] ] ) {
- $.ui.position[ collision[ i ] ][ dir ]( position, {
- targetWidth: targetWidth,
- targetHeight: targetHeight,
- elemWidth: elemWidth,
- elemHeight: elemHeight,
- collisionPosition: collisionPosition,
- collisionWidth: collisionWidth,
- collisionHeight: collisionHeight,
- offset: [ atOffset[ 0 ] + myOffset[ 0 ], atOffset [ 1 ] + myOffset[ 1 ] ],
- my: options.my,
- at: options.at,
- within: within,
- elem : elem
- });
- }
- });
-
- if ( options.using ) {
- // adds feedback as second argument to using callback, if present
- using = function( props ) {
- var left = targetOffset.left - position.left,
- right = left + targetWidth - elemWidth,
- top = targetOffset.top - position.top,
- bottom = top + targetHeight - elemHeight,
- feedback = {
- target: {
- element: target,
- left: targetOffset.left,
- top: targetOffset.top,
- width: targetWidth,
- height: targetHeight
- },
- element: {
- element: elem,
- left: position.left,
- top: position.top,
- width: elemWidth,
- height: elemHeight
- },
- horizontal: right < 0 ? "left" : left > 0 ? "right" : "center",
- vertical: bottom < 0 ? "top" : top > 0 ? "bottom" : "middle"
- };
- if ( targetWidth < elemWidth && abs( left + right ) < targetWidth ) {
- feedback.horizontal = "center";
- }
- if ( targetHeight < elemHeight && abs( top + bottom ) < targetHeight ) {
- feedback.vertical = "middle";
- }
- if ( max( abs( left ), abs( right ) ) > max( abs( top ), abs( bottom ) ) ) {
- feedback.important = "horizontal";
- } else {
- feedback.important = "vertical";
- }
- options.using.call( this, props, feedback );
- };
- }
-
- elem.offset( $.extend( position, { using: using } ) );
- });
-};
-
-$.ui.position = {
- fit: {
- left: function( position, data ) {
- var within = data.within,
- withinOffset = within.isWindow ? within.scrollLeft : within.offset.left,
- outerWidth = within.width,
- collisionPosLeft = position.left - data.collisionPosition.marginLeft,
- overLeft = withinOffset - collisionPosLeft,
- overRight = collisionPosLeft + data.collisionWidth - outerWidth - withinOffset,
- newOverRight;
-
- // element is wider than within
- if ( data.collisionWidth > outerWidth ) {
- // element is initially over the left side of within
- if ( overLeft > 0 && overRight <= 0 ) {
- newOverRight = position.left + overLeft + data.collisionWidth - outerWidth - withinOffset;
- position.left += overLeft - newOverRight;
- // element is initially over right side of within
- } else if ( overRight > 0 && overLeft <= 0 ) {
- position.left = withinOffset;
- // element is initially over both left and right sides of within
- } else {
- if ( overLeft > overRight ) {
- position.left = withinOffset + outerWidth - data.collisionWidth;
- } else {
- position.left = withinOffset;
- }
- }
- // too far left -> align with left edge
- } else if ( overLeft > 0 ) {
- position.left += overLeft;
- // too far right -> align with right edge
- } else if ( overRight > 0 ) {
- position.left -= overRight;
- // adjust based on position and margin
- } else {
- position.left = max( position.left - collisionPosLeft, position.left );
- }
- },
- top: function( position, data ) {
- var within = data.within,
- withinOffset = within.isWindow ? within.scrollTop : within.offset.top,
- outerHeight = data.within.height,
- collisionPosTop = position.top - data.collisionPosition.marginTop,
- overTop = withinOffset - collisionPosTop,
- overBottom = collisionPosTop + data.collisionHeight - outerHeight - withinOffset,
- newOverBottom;
-
- // element is taller than within
- if ( data.collisionHeight > outerHeight ) {
- // element is initially over the top of within
- if ( overTop > 0 && overBottom <= 0 ) {
- newOverBottom = position.top + overTop + data.collisionHeight - outerHeight - withinOffset;
- position.top += overTop - newOverBottom;
- // element is initially over bottom of within
- } else if ( overBottom > 0 && overTop <= 0 ) {
- position.top = withinOffset;
- // element is initially over both top and bottom of within
- } else {
- if ( overTop > overBottom ) {
- position.top = withinOffset + outerHeight - data.collisionHeight;
- } else {
- position.top = withinOffset;
- }
- }
- // too far up -> align with top
- } else if ( overTop > 0 ) {
- position.top += overTop;
- // too far down -> align with bottom edge
- } else if ( overBottom > 0 ) {
- position.top -= overBottom;
- // adjust based on position and margin
- } else {
- position.top = max( position.top - collisionPosTop, position.top );
- }
- }
- },
- flip: {
- left: function( position, data ) {
- var within = data.within,
- withinOffset = within.offset.left + within.scrollLeft,
- outerWidth = within.width,
- offsetLeft = within.isWindow ? within.scrollLeft : within.offset.left,
- collisionPosLeft = position.left - data.collisionPosition.marginLeft,
- overLeft = collisionPosLeft - offsetLeft,
- overRight = collisionPosLeft + data.collisionWidth - outerWidth - offsetLeft,
- myOffset = data.my[ 0 ] === "left" ?
- -data.elemWidth :
- data.my[ 0 ] === "right" ?
- data.elemWidth :
- 0,
- atOffset = data.at[ 0 ] === "left" ?
- data.targetWidth :
- data.at[ 0 ] === "right" ?
- -data.targetWidth :
- 0,
- offset = -2 * data.offset[ 0 ],
- newOverRight,
- newOverLeft;
-
- if ( overLeft < 0 ) {
- newOverRight = position.left + myOffset + atOffset + offset + data.collisionWidth - outerWidth - withinOffset;
- if ( newOverRight < 0 || newOverRight < abs( overLeft ) ) {
- position.left += myOffset + atOffset + offset;
- }
- }
- else if ( overRight > 0 ) {
- newOverLeft = position.left - data.collisionPosition.marginLeft + myOffset + atOffset + offset - offsetLeft;
- if ( newOverLeft > 0 || abs( newOverLeft ) < overRight ) {
- position.left += myOffset + atOffset + offset;
- }
- }
- },
- top: function( position, data ) {
- var within = data.within,
- withinOffset = within.offset.top + within.scrollTop,
- outerHeight = within.height,
- offsetTop = within.isWindow ? within.scrollTop : within.offset.top,
- collisionPosTop = position.top - data.collisionPosition.marginTop,
- overTop = collisionPosTop - offsetTop,
- overBottom = collisionPosTop + data.collisionHeight - outerHeight - offsetTop,
- top = data.my[ 1 ] === "top",
- myOffset = top ?
- -data.elemHeight :
- data.my[ 1 ] === "bottom" ?
- data.elemHeight :
- 0,
- atOffset = data.at[ 1 ] === "top" ?
- data.targetHeight :
- data.at[ 1 ] === "bottom" ?
- -data.targetHeight :
- 0,
- offset = -2 * data.offset[ 1 ],
- newOverTop,
- newOverBottom;
- if ( overTop < 0 ) {
- newOverBottom = position.top + myOffset + atOffset + offset + data.collisionHeight - outerHeight - withinOffset;
- if ( ( position.top + myOffset + atOffset + offset) > overTop && ( newOverBottom < 0 || newOverBottom < abs( overTop ) ) ) {
- position.top += myOffset + atOffset + offset;
- }
- }
- else if ( overBottom > 0 ) {
- newOverTop = position.top - data.collisionPosition.marginTop + myOffset + atOffset + offset - offsetTop;
- if ( ( position.top + myOffset + atOffset + offset) > overBottom && ( newOverTop > 0 || abs( newOverTop ) < overBottom ) ) {
- position.top += myOffset + atOffset + offset;
- }
- }
- }
- },
- flipfit: {
- left: function() {
- $.ui.position.flip.left.apply( this, arguments );
- $.ui.position.fit.left.apply( this, arguments );
- },
- top: function() {
- $.ui.position.flip.top.apply( this, arguments );
- $.ui.position.fit.top.apply( this, arguments );
- }
- }
-};
-
-// fraction support test
-(function () {
- var testElement, testElementParent, testElementStyle, offsetLeft, i,
- body = document.getElementsByTagName( "body" )[ 0 ],
- div = document.createElement( "div" );
-
- //Create a "fake body" for testing based on method used in jQuery.support
- testElement = document.createElement( body ? "div" : "body" );
- testElementStyle = {
- visibility: "hidden",
- width: 0,
- height: 0,
- border: 0,
- margin: 0,
- background: "none"
- };
- if ( body ) {
- $.extend( testElementStyle, {
- position: "absolute",
- left: "-1000px",
- top: "-1000px"
- });
- }
- for ( i in testElementStyle ) {
- testElement.style[ i ] = testElementStyle[ i ];
- }
- testElement.appendChild( div );
- testElementParent = body || document.documentElement;
- testElementParent.insertBefore( testElement, testElementParent.firstChild );
-
- div.style.cssText = "position: absolute; left: 10.7432222px;";
-
- offsetLeft = $( div ).offset().left;
- $.support.offsetFractions = offsetLeft > 10 && offsetLeft < 11;
-
- testElement.innerHTML = "";
- testElementParent.removeChild( testElement );
-})();
-
-}( jQuery ) );
diff --git a/MLEB/Translate/scripts/characterEditStats.php b/MLEB/Translate/scripts/characterEditStats.php
index 782d0086..69db5a27 100644
--- a/MLEB/Translate/scripts/characterEditStats.php
+++ b/MLEB/Translate/scripts/characterEditStats.php
@@ -3,8 +3,8 @@
* Show number of characters translated over a given period of time.
*
* @author Santhosh Thottingal
- * @copyright Copyright 2013 Santhosh Thottingal
- * @license GPL-2.0+
+ * @copyright Copyright © 2013 Santhosh Thottingal
+ * @license GPL-2.0-or-later
* @file
* @ingroup Script Stats
*/
@@ -30,20 +30,11 @@ class CharacterEditStats extends Maintenance {
);
$this->addOption(
'days',
- '(optional) Calculate for given number of days (default: 30) ' .
- '(capped by the max age of recent changes on the wiki)',
+ '(optional) Calculate for given number of days (default: 30)',
false, /*required*/
true /*has arg*/
);
$this->addOption(
- 'bots',
- '(optional) Include bot edits'
- );
- $this->addOption(
- 'diff',
- '(optional) Count the edit diffs alone'
- );
- $this->addOption(
'ns',
'(optional) Comma separated list of namespace IDs',
false, /*required*/
@@ -52,16 +43,12 @@ class CharacterEditStats extends Maintenance {
}
public function execute() {
- global $wgTranslateFuzzyBotName, $wgSitename;
+ global $wgTranslateFuzzyBotName, $wgSitename, $wgTranslateMessageNamespaces;
$days = (int)$this->getOption( 'days', 30 );
- $hours = $days * 24;
-
$top = (int)$this->getOption( 'top', -1 );
- $bots = $this->hasOption( 'bots' );
-
- $namespaces = array();
+ $namespaces = [];
if ( $this->hasOption( 'ns' ) ) {
$input = explode( ',', $this->getOption( 'ns' ) );
@@ -70,35 +57,30 @@ class CharacterEditStats extends Maintenance {
$namespaces[] = $namespace;
}
}
+ } else {
+ $namespaces = $wgTranslateMessageNamespaces;
}
// Select set of edits to report on
+ $rows = self::getRevisionsFromHistory( $days, $namespaces );
- // Fetch some extrac fields that normally TranslateUtils::translationChanges wont
- $extraFields = array( 'rc_old_len', 'rc_new_len' );
- $rows = TranslateUtils::translationChanges( $hours, $bots, $namespaces, $extraFields );
// Get counts for edits per language code after filtering out edits by FuzzyBot
- $codes = array();
+ $codes = [];
foreach ( $rows as $_ ) {
// Filter out edits by $wgTranslateFuzzyBotName
- if ( $_->rc_user_text === $wgTranslateFuzzyBotName ) {
+ if ( $_->user_text === $wgTranslateFuzzyBotName ) {
continue;
}
- $handle = new MessageHandle( Title::newFromText( $_->rc_title ) );
+ $handle = new MessageHandle( Title::newFromText( $_->title ) );
$code = $handle->getCode();
if ( !isset( $codes[$code] ) ) {
$codes[$code] = 0;
}
- if ( $this->hasOption( 'diff' ) ) {
- $diff = abs( $_->rc_new_len - $_->rc_old_len );
- } else {
- $diff = $_->rc_new_len;
- }
- $codes[$code] += $diff;
+ $codes[$code] += $_->length;
}
// Sort counts and report descending up to $top rows.
@@ -118,13 +100,52 @@ class CharacterEditStats extends Maintenance {
continue;
}
$charRatio = mb_strlen( $language, 'UTF-8' ) / strlen( $language );
- $num = intval( $num * $charRatio );
+ $num = (int)( $num * $charRatio );
$total += $num;
$this->output( "$code\t$language\t$num\n" );
}
$this->output( "-----------------------\n" );
$this->output( "Total\t\t$total\n" );
}
+
+ private function getRevisionsFromHistory( $days, array $namespaces ) {
+ $dbr = wfGetDB( DB_REPLICA );
+ $cutoff = $dbr->addQuotes( $dbr->timestamp( time() - $days * 24 * 3600 ) );
+
+ // The field renames are to be compatible with recentchanges table query
+ if ( is_callable( Revision::class, 'getQueryInfo' ) ) {
+ $revQuery = Revision::getQueryInfo( [ 'page' ] );
+ $revUserText = isset( $revQuery['fields']['rev_user_text'] )
+ ? $revQuery['fields']['rev_user_text']
+ : 'rev_user_text';
+ } else {
+ $revQuery = [
+ 'tables' => [ 'revision', 'page' ],
+ 'joins' => [
+ 'page' => [ 'JOIN', 'rev_page = page_id' ],
+ ]
+ ];
+ $revUserText = 'rev_user_text';
+ }
+ $conds = [
+ "rev_timestamp > $cutoff",
+ 'page_namespace' => $namespaces,
+ ];
+
+ $res = $dbr->select(
+ $revQuery['tables'],
+ [
+ 'title' => 'page_title',
+ 'user_text' => $revUserText,
+ 'length' => 'rev_len',
+ ],
+ $conds,
+ __METHOD__,
+ [],
+ $revQuery['joins']
+ );
+ return iterator_to_array( $res );
+ }
}
$maintClass = 'CharacterEditStats';
diff --git a/MLEB/Translate/scripts/create-language-models.php b/MLEB/Translate/scripts/create-language-models.php
index dfc6216f..7be45a58 100644
--- a/MLEB/Translate/scripts/create-language-models.php
+++ b/MLEB/Translate/scripts/create-language-models.php
@@ -6,7 +6,7 @@
* @author Niklas Laxström
*
* @copyright Copyright © 2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
* @file
*/
@@ -20,7 +20,7 @@ if ( getenv( 'MW_INSTALL_PATH' ) !== false ) {
require_once "$IP/maintenance/Maintenance.php";
class LanguageModelCreator extends Maintenance {
- protected $changes = array();
+ protected $changes = [];
public function __construct() {
parent::__construct();
@@ -43,19 +43,19 @@ TXT;
$languages = TranslateUtils::getLanguageNames( 'en' );
$cache = wfGetCache( CACHE_DB );
- $key = wfMemckey( __METHOD__, $messages );
+ $key = wfMemcKey( __METHOD__, $messages );
$pages = $cache->get( $key );
if ( !is_array( $pages ) ) {
- $dbr = wfGetDB( DB_SLAVE );
- $conds = array();
+ $dbr = wfGetDB( DB_REPLICA );
+ $conds = [];
$conds[] = 'page_title' . $dbr->buildLike( $dbr->anyString(), '/', $dbr->anyString() );
$conds['page_namespace'] = $wgTranslateMessageNamespaces;
echo "Before query\n";
$res = $dbr->select(
- array( 'page' ),
- array( 'page_title, page_id' ),
+ [ 'page' ],
+ [ 'page_title, page_id' ],
$conds,
__METHOD__
);
@@ -93,7 +93,7 @@ TXT;
echo "After sort map\n";
- $cache->set( $key, $pages, 3600*24 );
+ $cache->set( $key, $pages, 3600 * 24 );
echo "After set map\n";
}
@@ -102,14 +102,14 @@ TXT;
unset( $pages['nl-informal'] );
unset( $pages['en-gb'] );
- $pids = array();
+ $pids = [];
$threads = 2;
foreach ( $pages as $code => $pageids ) {
$pid = ( $threads > 1 ) ? pcntl_fork() : -1;
if ( $pid === 0 ) {
// Child, reseed because there is no bug in PHP:
- // http://bugs.php.net/bug.php?id=42465
+ // https://bugs.php.net/bug.php?id=42465
mt_srand( getmypid() );
$this->analyzeLanguage( $code, $pageids );
exit();
@@ -136,8 +136,8 @@ TXT;
$this->output( "Combining languages\n" );
- $huge = array();
- foreach ( glob( "temp-*.json" ) as $file ) {
+ $huge = [];
+ foreach ( glob( 'temp-*.json' ) as $file ) {
$contents = file_get_contents( $file );
$json = FormatJson::decode( $contents, true );
@@ -164,7 +164,7 @@ TXT;
$config->useMb( true );
$c = new LanguageDetector\Learn( $config );
$c->addSample( $code, $text );
- $c->addStepCallback( function( $lang, $status ) {
+ $c->addStepCallback( function ( $lang, $status ) {
echo "Learning {$lang}: $status\n";
} );
@@ -174,11 +174,10 @@ TXT;
protected function cacheSourceText( $code, $ids ) {
$cache = wfGetCache( CACHE_DB );
- $key = wfMemckey( __CLASS__, 'cc', $code );
+ $key = wfMemcKey( __CLASS__, 'cc', $code );
$text = $cache->get( $key );
if ( !is_string( $text ) ) {
-
- $snippets = array();
+ $snippets = [];
$ids = explode( '|', $ids );
@@ -194,23 +193,21 @@ TXT;
$time = microtime( true );
foreach ( $ids as $id ) {
- $params = new FauxRequest( array(
+ $params = new FauxRequest( [
'pageid' => $id,
'action' => 'parse',
'prop' => 'text',
'disablepp' => 'true',
- ) );
+ ] );
$api = new ApiMain( $params );
$api->execute();
- if ( defined( 'ApiResult::META_CONTENT' ) ) {
- $result = $api->getResult()->getResultData( null, array(
- 'BC' => array(),
- ) );
- } else {
- $result = $api->getResultData();
- }
+ $result = $api->getResult()->getResultData(
+ null,
+ [ 'BC' => [] ]
+ );
+
$text = $result['parse']['text']['*'];
$text = strip_tags( $text );
$text = str_replace( '!!FUZZY!!', '', $text );
@@ -220,8 +217,8 @@ TXT;
$snippets[] = $text;
}
- $text = implode( " ", $snippets );
- $cache->set( $key, $text, 3600*24 );
+ $text = implode( ' ', $snippets );
+ $cache->set( $key, $text, 3600 * 24 );
$delta = microtime( true ) - $time;
$this->output( "$code TOOK $delta\n" );
diff --git a/MLEB/Translate/scripts/createCheckIndex.php b/MLEB/Translate/scripts/createCheckIndex.php
index b98318db..d215bbbd 100644
--- a/MLEB/Translate/scripts/createCheckIndex.php
+++ b/MLEB/Translate/scripts/createCheckIndex.php
@@ -5,7 +5,7 @@
* @author Niklas Laxström
* @author Siebrand Mazeland
* @copyright Copyright © 2008-2013, Niklas Laxström, Siebrand Mazeland
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
* @file
*/
@@ -87,7 +87,7 @@ class CreateCheckIndex extends Maintenance {
foreach ( $langCodes as $code ) {
$this->output( "$code ", $id );
- $problematic = array();
+ $problematic = [];
$collection->resetForNewLanguage( $code );
$collection->loadTranslations();
@@ -97,7 +97,6 @@ class CreateCheckIndex extends Maintenance {
foreach ( $collection as $key => $message ) {
$prob = $checker->checkMessageFast( $message, $code );
if ( $prob ) {
-
if ( $verbose ) {
// Print it
$nsText = $wgContLang->getNsText( $g->namespaces[0] );
@@ -105,7 +104,7 @@ class CreateCheckIndex extends Maintenance {
}
// Add it to the array
- $problematic[] = array( $g->namespaces[0], "$key/$code" );
+ $problematic[] = [ $g->namespaces[0], "$key/$code" ];
}
}
@@ -114,27 +113,27 @@ class CreateCheckIndex extends Maintenance {
}
}
- static function tagFuzzy( $problematic ) {
+ public static function tagFuzzy( $problematic ) {
if ( !count( $problematic ) ) {
return;
}
- $db = wfGetDB( DB_MASTER );
+ $dbw = wfGetDB( DB_MASTER );
foreach ( $problematic as $p ) {
$title = Title::makeTitleSafe( $p[0], $p[1] );
- $titleText = $title->getDBKey();
- $res = $db->select( 'page', array( 'page_id', 'page_latest' ),
- array( 'page_namespace' => $p[0], 'page_title' => $titleText ), __METHOD__ );
+ $titleText = $title->getDBkey();
+ $res = $dbw->select( 'page', [ 'page_id', 'page_latest' ],
+ [ 'page_namespace' => $p[0], 'page_title' => $titleText ], __METHOD__ );
- $inserts = array();
+ $inserts = [];
foreach ( $res as $r ) {
- $inserts = array(
+ $inserts = [
'rt_page' => $r->page_id,
'rt_revision' => $r->page_latest,
'rt_type' => RevTag::getType( 'fuzzy' )
- );
+ ];
}
- $db->replace( 'revtag', 'rt_type_page_revision', $inserts, __METHOD__ );
+ $dbw->replace( 'revtag', 'rt_type_page_revision', $inserts, __METHOD__ );
}
}
}
diff --git a/MLEB/Translate/scripts/createMessageIndex.php b/MLEB/Translate/scripts/createMessageIndex.php
index ff1e2ca8..72a3f4f2 100644
--- a/MLEB/Translate/scripts/createMessageIndex.php
+++ b/MLEB/Translate/scripts/createMessageIndex.php
@@ -5,7 +5,7 @@
* is no other way to know which message group a message belongs to.
*
* @author Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
* @file
*/
@@ -25,10 +25,10 @@ class CreateMessageIndex extends Maintenance {
}
public function execute() {
- MessageGroups::clearCache();
+ MessageGroups::singleton()->recache();
MessageIndex::singleton()->rebuild();
}
}
$maintClass = 'CreateMessageIndex';
-require_once DO_MAINTENANCE;
+require_once RUN_MAINTENANCE_IF_MAIN;
diff --git a/MLEB/Translate/scripts/export.php b/MLEB/Translate/scripts/export.php
index 6553adc9..867359d0 100644
--- a/MLEB/Translate/scripts/export.php
+++ b/MLEB/Translate/scripts/export.php
@@ -5,7 +5,7 @@
* @author Niklas Laxström
* @author Siebrand Mazeland
* @copyright Copyright © 2008-2013, Niklas Laxström, Siebrand Mazeland
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
* @file
*/
@@ -107,7 +107,7 @@ class CommandlineExport extends Maintenance {
$noLocation = '--no-location ';
};
- $skip = array();
+ $skip = [];
if ( $this->hasOption( 'skip' ) ) {
$skip = array_map( 'trim', explode( ',', $this->getOption( 'skip' ) ) );
}
@@ -141,13 +141,13 @@ class CommandlineExport extends Maintenance {
}
if ( !count( $groups ) ) {
- $this->error( "EE1: No valid message groups identified.", 1 );
+ $this->error( 'EE1: No valid message groups identified.', 1 );
}
$changeFilter = false;
$hours = $this->getOption( 'hours' );
if ( $hours ) {
- $namespaces = array();
+ $namespaces = [];
/** @var FileBasedMessageGroup $group */
foreach ( $groups as $group ) {
@@ -157,7 +157,7 @@ class CommandlineExport extends Maintenance {
$namespaces = array_keys( $namespaces );
$bots = true;
- $changeFilter = array();
+ $changeFilter = [];
$rows = TranslateUtils::translationChanges( $hours, $bots, $namespaces );
foreach ( $rows as $row ) {
$title = Title::makeTitle( $row->rc_namespace, $row->rc_title );
@@ -173,7 +173,7 @@ class CommandlineExport extends Maintenance {
}
}
- $skipGroups = array();
+ $skipGroups = [];
if ( $this->hasOption( 'skipgroup' ) ) {
$skipGroups = array_map( 'trim', explode( ',', $this->getOption( 'skipgroup' ) ) );
}
@@ -205,6 +205,7 @@ class CommandlineExport extends Maintenance {
foreach ( $langs as $index => $code ) {
if ( !isset( $stats[$code] ) ) {
unset( $langs[$index] );
+ continue;
}
$total = $stats[$code][MessageGroupStats::TOTAL];
@@ -250,7 +251,7 @@ class CommandlineExport extends Maintenance {
$whitelist = $group->getTranslatableLanguages();
foreach ( $langs as $lang ) {
- // Do not export languges that are blacklisted (or not whitelisted).
+ // Do not export languages that are blacklisted (or not whitelisted).
// Also check that whitelist is not null, which means that all
// languages are allowed for translation and export.
if ( is_array( $whitelist ) && !isset( $whitelist[$lang] ) ) {
@@ -278,8 +279,8 @@ class CommandlineExport extends Maintenance {
if ( $definitionFile ) {
if ( is_file( $definitionFile ) ) {
$targetFileName = $ffs->getWritePath() .
- "/" . $group->getTargetFilename( $collection->code );
- $cmd = "msgmerge --quiet " . $noLocation . "--output-file=" .
+ '/' . $group->getTargetFilename( $collection->code );
+ $cmd = 'msgmerge --quiet ' . $noLocation . '--output-file=' .
$targetFileName . ' ' . $targetFileName . ' ' . $definitionFile;
wfShellExec( $cmd, $ret );
diff --git a/MLEB/Translate/scripts/fallbacks-graph.php b/MLEB/Translate/scripts/fallbacks-graph.php
index 2af3bfcb..0209747c 100644
--- a/MLEB/Translate/scripts/fallbacks-graph.php
+++ b/MLEB/Translate/scripts/fallbacks-graph.php
@@ -4,8 +4,7 @@
*
* @author Niklas Laxström
*
- * @copyright Copyright © 2012-2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
* @file
*/
@@ -44,11 +43,10 @@ $1
XML;
$langs = Language::fetchLanguageNames( null, 'mw' );
- $nodes = $edges = array();
+ $nodes = $edges = [];
foreach ( $langs as $code => $name ) {
-
$fallbacks = Language::getFallbacksFor( $code );
- if ( $fallbacks === array( 'en' ) ) {
+ if ( $fallbacks === [ 'en' ] ) {
continue;
}
@@ -57,7 +55,7 @@ XML;
$prev = $code;
foreach ( $fallbacks as $fb ) {
$nodes[$fb] = $this->createNode( $fb );
- $edges[$fb . $prev] = Xml::element( 'edge', array( 'source' => $prev, 'target' => $fb ) );
+ $edges[$fb . $prev] = Xml::element( 'edge', [ 'source' => $prev, 'target' => $fb ] );
$prev = $fb;
}
}
@@ -68,16 +66,22 @@ XML;
}
protected function createNode( $code ) {
- return
- Xml::openElement( 'node', array( 'id' => $code ) )
- . Xml::openElement( 'data', array( 'key' => "code" ) )
- . Xml::openElement( 'y:Shpapenode' )
- . Xml::element( 'y:NodeLabel', array(), $code )
- . Xml::closeElement( 'y:Shpapenode' )
+ return Xml::openElement( 'node', [ 'id' => $code ] )
+ . Xml::openElement( 'data', [ 'key' => 'code' ] )
+ . Xml::openElement( 'y:Shapenode' )
+ . Xml::element(
+ 'y:Geometry',
+ [ 'height' => 30, 'width' => max( 30, 10 * strlen( $code ) ) ],
+ ''
+ )
+ . Xml::element( 'y:NodeLabel', [], $code )
+ . Xml::element( 'y:BorderStyle', [ 'hasColor' => 'false' ], '' )
+ . Xml::element( 'y:Fill', [ 'hasColor' => 'false' ], '' )
+ . Xml::closeElement( 'y:Shapenode' )
. Xml::closeElement( 'data' )
. Xml::closeElement( 'node' );
}
}
$maintClass = 'FallbacksCompare';
-require_once DO_MAINTENANCE;
+require_once RUN_MAINTENANCE_IF_MAIN;
diff --git a/MLEB/Translate/scripts/fuzzy.php b/MLEB/Translate/scripts/fuzzy.php
index d00c9088..977011c3 100644
--- a/MLEB/Translate/scripts/fuzzy.php
+++ b/MLEB/Translate/scripts/fuzzy.php
@@ -6,7 +6,7 @@
* @author Niklas Laxström
* @author Siebrand Mazeland
* @copyright Copyright © 2007-2013, Niklas Laxström, Siebrand Mazeland
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
// Standard boilerplate to define $IP
@@ -26,8 +26,8 @@ class Fuzzy extends Maintenance {
parent::__construct();
$this->mDescription = 'Fuzzy bot command line script.';
$this->addArg(
- 'messages',
- 'Message to fuzzy'
+ 'arg',
+ 'Title pattern or username if user option is provided.'
);
$this->addOption(
'really',
@@ -45,21 +45,34 @@ class Fuzzy extends Maintenance {
false, /*required*/
true /*has arg*/
);
+ $this->addOption(
+ 'user',
+ '(optional) Fuzzy the translations made by user given as an argument.',
+ false, /*required*/
+ false /*has arg*/
+ );
}
public function execute() {
- $bot = new FuzzyScript( $this->getArg( 0 ) );
-
+ $skipLanguages = [];
if ( $this->hasOption( 'skiplanguages' ) ) {
- $bot->skipLanguages = array_map(
+ $skipLanguages = array_map(
'trim',
explode( ',', $this->getOption( 'skiplanguages' ) )
);
}
+ if ( $this->hasOption( 'user' ) ) {
+ $user = User::newFromName( $this->getArg( 0 ) );
+ $pages = FuzzyScript::getPagesForUser( $user, $skipLanguages );
+ } else {
+ $pages = FuzzyScript::getPagesForPattern( $this->getArg( 0 ), $skipLanguages );
+ }
+
+ $bot = new FuzzyScript( $pages );
$bot->comment = $this->getOption( 'comment' );
$bot->dryrun = !$this->hasOption( 'really' );
- $bot->setProgressCallback( array( $this, 'myOutput' ) );
+ $bot->setProgressCallback( [ $this, 'myOutput' ] );
$bot->execute();
}
@@ -67,7 +80,7 @@ class Fuzzy extends Maintenance {
* Public alternative for protected Maintenance::output() as we need to get
* messages from the ChangeSyncer class to the commandline.
* @param string $text The text to show to the user
- * @param string $channel Unique identifier for the channel.
+ * @param string|null $channel Unique identifier for the channel.
* @param bool $error Whether this is an error message
*/
public function myOutput( $text, $channel = null, $error = false ) {
@@ -84,11 +97,6 @@ class Fuzzy extends Maintenance {
*/
class FuzzyScript {
/**
- /* @var string[] List of patterns to mark.
- */
- private $titles = array();
-
- /**
* @var bool Check for configuration problems.
*/
private $allclear = false;
@@ -104,18 +112,13 @@ class FuzzyScript {
/**
* @var string Edit summary.
*/
- public $comment = null;
+ public $comment;
/**
- * string[] List of language codes to skip.
+ * @param array $pages
*/
- public $skipLanguages = array();
-
- /**
- * @param string[] $titles
- */
- public function __construct( $titles ) {
- $this->titles = (array)$titles;
+ public function __construct( $pages ) {
+ $this->pages = $pages;
$this->allclear = true;
}
@@ -136,7 +139,7 @@ class FuzzyScript {
return;
}
- $msgs = $this->getPages();
+ $msgs = $this->pages;
$count = count( $msgs );
$this->reportProgress( "Found $count pages to update.", 'pagecount' );
@@ -148,51 +151,99 @@ class FuzzyScript {
}
/// Searches pages that match given patterns
- private function getPages() {
+ public static function getPagesForPattern( $pattern, $skipLanguages = [] ) {
global $wgTranslateMessageNamespaces;
- $dbr = wfGetDB( DB_SLAVE );
+ $dbr = wfGetDB( DB_REPLICA );
- $search = array();
- foreach ( $this->titles as $title ) {
+ $search = [];
+ foreach ( (array)$pattern as $title ) {
$title = Title::newFromText( $title );
$ns = $title->getNamespace();
if ( !isset( $search[$ns] ) ) {
- $search[$ns] = array();
+ $search[$ns] = [];
}
- $search[$ns][] = 'page_title' . $dbr->buildLike( $title->getDBKey(), $dbr->anyString() );
+ $search[$ns][] = 'page_title' . $dbr->buildLike( $title->getDBkey(), $dbr->anyString() );
}
- $title_conds = array();
+ $title_conds = [];
foreach ( $search as $ns => $names ) {
- if ( $ns == NS_MAIN ) {
+ if ( $ns === NS_MAIN ) {
$ns = $wgTranslateMessageNamespaces;
}
$titles = $dbr->makeList( $names, LIST_OR );
- $title_conds[] = $dbr->makeList( array( 'page_namespace' => $ns, $titles ), LIST_AND );
+ $title_conds[] = $dbr->makeList( [ 'page_namespace' => $ns, $titles ], LIST_AND );
}
- $conds = array(
+ $conds = [
'page_latest=rev_id',
'rev_text_id=old_id',
$dbr->makeList( $title_conds, LIST_OR ),
- );
+ ];
- if ( count( $this->skipLanguages ) ) {
- $skiplist = $dbr->makeList( $this->skipLanguages );
+ if ( count( $skipLanguages ) ) {
+ $skiplist = $dbr->makeList( $skipLanguages );
$conds[] = "substring_index(page_title, '/', -1) NOT IN ($skiplist)";
}
$rows = $dbr->select(
- array( 'page', 'revision', 'text' ),
- array( 'page_title', 'page_namespace', 'old_text', 'old_flags' ),
+ [ 'page', 'revision', 'text' ],
+ [ 'page_title', 'page_namespace', 'old_text', 'old_flags' ],
$conds,
__METHOD__
);
- $messagesContents = array();
+ $messagesContents = [];
+ foreach ( $rows as $row ) {
+ $title = Title::makeTitle( $row->page_namespace, $row->page_title );
+ $messagesContents[] = [ $title, Revision::getRevisionText( $row ) ];
+ }
+
+ $rows->free();
+
+ return $messagesContents;
+ }
+
+ public static function getPagesForUser( User $user, $skipLanguages = [] ) {
+ global $wgTranslateMessageNamespaces;
+ $dbr = wfGetDB( DB_REPLICA );
+
+ if ( class_exists( ActorMigration::class ) ) {
+ $revWhere = ActorMigration::newMigration()->getWhere( $dbr, 'rev_user', $user );
+ } else {
+ $revWhere = [
+ 'tables' => [],
+ 'conds' => 'rev_user = ' . (int)$user->getId(),
+ 'joins' => [],
+ ];
+ }
+
+ $conds = [
+ $revWhere['conds'],
+ 'page_namespace' => $wgTranslateMessageNamespaces,
+ 'page_title' . $dbr->buildLike( $dbr->anyString(), '/', $dbr->anyString() ),
+ ];
+
+ if ( count( $skipLanguages ) ) {
+ $skiplist = $dbr->makeList( $skipLanguages );
+ $conds[] = "substring_index(page_title, '/', -1) NOT IN ($skiplist)";
+ }
+
+ $rows = $dbr->select(
+ [ 'page', 'revision', 'text' ] + $revWhere['tables'],
+ [ 'page_title', 'page_namespace', 'old_text', 'old_flags' ],
+ $conds,
+ __METHOD__,
+ [],
+ [
+ 'revision' => [ 'JOIN', 'page_latest=rev_id' ],
+ 'text' => [ 'JOIN', 'rev_text_id=old_id' ],
+ ] + $revWhere['joins']
+ );
+
+ $messagesContents = [];
foreach ( $rows as $row ) {
$title = Title::makeTitle( $row->page_namespace, $row->page_title );
- $messagesContents[] = array( $title, Revision::getRevisionText( $row ) );
+ $messagesContents[] = [ $title, Revision::getRevisionText( $row ) ];
}
$rows->free();
@@ -212,20 +263,20 @@ class FuzzyScript {
$this->reportProgress( "Updating {$title->getPrefixedText()}... ", $title );
if ( !$title instanceof Title ) {
- $this->reportProgress( "INVALID TITLE!", $title );
+ $this->reportProgress( 'INVALID TITLE!', $title );
return;
}
$items = explode( '/', $title->getText(), 2 );
if ( isset( $items[1] ) && $items[1] === $wgTranslateDocumentationLanguageCode ) {
- $this->reportProgress( "IGNORED!", $title );
+ $this->reportProgress( 'IGNORED!', $title );
return;
}
if ( $dryrun ) {
- $this->reportProgress( "DRY RUN!", $title );
+ $this->reportProgress( 'DRY RUN!', $title );
return;
}
diff --git a/MLEB/Translate/scripts/groupStatistics.php b/MLEB/Translate/scripts/groupStatistics.php
index d4f560a3..0cec6bea 100644
--- a/MLEB/Translate/scripts/groupStatistics.php
+++ b/MLEB/Translate/scripts/groupStatistics.php
@@ -8,7 +8,7 @@
* @author Niklas Laxström
* @author Siebrand Mazeland
* @copyright Copyright © 2007-2013, Niklas Laxström, Siebrand Mazeland
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
// Standard boilerplate to define $IP
@@ -23,7 +23,7 @@ require_once "$IP/maintenance/Maintenance.php";
class GroupStatistics extends Maintenance {
/**
* Array of the most spoken languages in the world.
- * Source: http://stats.wikimedia.org/EN/Sitemap.htm.
+ * Source: https://stats.wikimedia.org/EN/Sitemap.htm.
*
* Key value pairs of:
* [MediaWiki localisation code] => array(
@@ -32,62 +32,62 @@ class GroupStatistics extends Maintenance {
* [continent where localisation is spoken]
* )
*/
- public $mostSpokenLanguages = array(
- 'en' => array( 1, 1500, 'multiple' ),
- 'zh-hans' => array( 2, 1300, 'asia' ),
- 'zh-hant' => array( 2, 1300, 'asia' ),
- 'hi' => array( 3, 550, 'asia' ),
- 'ar' => array( 4, 530, 'multiple' ),
- 'es' => array( 5, 500, 'multiple' ),
- 'ms' => array( 6, 300, 'asia' ),
- 'pt' => array( 7, 290, 'multiple' ),
- 'pt-br' => array( 7, 290, 'america' ),
- 'ru' => array( 8, 278, 'multiple' ),
- 'id' => array( 9, 250, 'asia' ),
- 'bn' => array( 10, 230, 'asia' ),
- 'fr' => array( 11, 200, 'multiple' ),
- 'de' => array( 12, 185, 'europe' ),
- 'ja' => array( 13, 132, 'asia' ),
- 'fa' => array( 14, 107, 'asia' ),
- 'pnb' => array( 15, 104, 'asia' ), // Most spoken variant
- 'tl' => array( 16, 90, 'asia' ),
- 'mr' => array( 17, 90, 'asia' ),
- 'vi' => array( 18, 80, 'asia' ),
- 'jv' => array( 19, 80, 'asia' ),
- 'te' => array( 20, 80, 'asia' ),
- 'ko' => array( 21, 78, 'asia' ),
- 'wuu' => array( 22, 77, 'asia' ),
- 'arz' => array( 23, 76, 'africa' ),
- 'th' => array( 24, 73, 'asia' ),
- 'yue' => array( 25, 71, 'asia' ),
- 'tr' => array( 26, 70, 'multiple' ),
- 'it' => array( 27, 70, 'europe' ),
- 'ta' => array( 28, 66, 'asia' ),
- 'ur' => array( 29, 60, 'asia' ),
- 'my' => array( 30, 52, 'asia' ),
- 'sw' => array( 31, 50, 'africa' ),
- 'nan' => array( 32, 49, 'asia' ),
- 'kn' => array( 33, 47, 'asia' ),
- 'gu' => array( 34, 46, 'asia' ),
- 'uk' => array( 35, 45, 'europe' ),
- 'pl' => array( 36, 43, 'europe' ),
- 'sd' => array( 37, 41, 'asia' ),
- 'ha' => array( 38, 39, 'africa' ),
- 'ml' => array( 39, 37, 'asia' ),
- 'gan-hans' => array( 40, 35, 'asia' ),
- 'gan-hant' => array( 40, 35, 'asia' ),
- 'hak' => array( 41, 34, 'asia' ),
- 'or' => array( 42, 31, 'asia' ),
- 'ne' => array( 43, 30, 'asia' ),
- 'ro' => array( 44, 28, 'europe' ),
- 'su' => array( 45, 27, 'asia' ),
- 'az' => array( 46, 27, 'asia' ),
- 'nl' => array( 47, 27, 'europe' ),
- 'zu' => array( 48, 26, 'africa' ),
- 'ps' => array( 49, 26, 'asia' ),
- 'ckb' => array( 50, 26, 'asia' ),
- 'ku-latn' => array( 50, 26, 'asia' ),
- );
+ public $mostSpokenLanguages = [
+ 'en' => [ 1, 1500, 'multiple' ],
+ 'zh-hans' => [ 2, 1300, 'asia' ],
+ 'zh-hant' => [ 2, 1300, 'asia' ],
+ 'hi' => [ 3, 550, 'asia' ],
+ 'ar' => [ 4, 530, 'multiple' ],
+ 'es' => [ 5, 500, 'multiple' ],
+ 'ms' => [ 6, 300, 'asia' ],
+ 'pt' => [ 7, 290, 'multiple' ],
+ 'pt-br' => [ 7, 290, 'america' ],
+ 'ru' => [ 8, 278, 'multiple' ],
+ 'id' => [ 9, 250, 'asia' ],
+ 'bn' => [ 10, 230, 'asia' ],
+ 'fr' => [ 11, 200, 'multiple' ],
+ 'de' => [ 12, 185, 'europe' ],
+ 'ja' => [ 13, 132, 'asia' ],
+ 'fa' => [ 14, 107, 'asia' ],
+ 'pnb' => [ 15, 104, 'asia' ], // Most spoken variant
+ 'tl' => [ 16, 90, 'asia' ],
+ 'mr' => [ 17, 90, 'asia' ],
+ 'vi' => [ 18, 80, 'asia' ],
+ 'jv' => [ 19, 80, 'asia' ],
+ 'te' => [ 20, 80, 'asia' ],
+ 'ko' => [ 21, 78, 'asia' ],
+ 'wuu' => [ 22, 77, 'asia' ],
+ 'arz' => [ 23, 76, 'africa' ],
+ 'th' => [ 24, 73, 'asia' ],
+ 'yue' => [ 25, 71, 'asia' ],
+ 'tr' => [ 26, 70, 'multiple' ],
+ 'it' => [ 27, 70, 'europe' ],
+ 'ta' => [ 28, 66, 'asia' ],
+ 'ur' => [ 29, 60, 'asia' ],
+ 'my' => [ 30, 52, 'asia' ],
+ 'sw' => [ 31, 50, 'africa' ],
+ 'nan' => [ 32, 49, 'asia' ],
+ 'kn' => [ 33, 47, 'asia' ],
+ 'gu' => [ 34, 46, 'asia' ],
+ 'uk' => [ 35, 45, 'europe' ],
+ 'pl' => [ 36, 43, 'europe' ],
+ 'sd' => [ 37, 41, 'asia' ],
+ 'ha' => [ 38, 39, 'africa' ],
+ 'ml' => [ 39, 37, 'asia' ],
+ 'gan-hans' => [ 40, 35, 'asia' ],
+ 'gan-hant' => [ 40, 35, 'asia' ],
+ 'hak' => [ 41, 34, 'asia' ],
+ 'or' => [ 42, 31, 'asia' ],
+ 'ne' => [ 43, 30, 'asia' ],
+ 'ro' => [ 44, 28, 'europe' ],
+ 'su' => [ 45, 27, 'asia' ],
+ 'az' => [ 46, 27, 'asia' ],
+ 'nl' => [ 47, 27, 'europe' ],
+ 'zu' => [ 48, 26, 'africa' ],
+ 'ps' => [ 49, 26, 'asia' ],
+ 'ckb' => [ 50, 26, 'asia' ],
+ 'ku-latn' => [ 50, 26, 'asia' ],
+ ];
/**
* Variable with key-value pairs with a named index and an array of key-value
@@ -97,32 +97,32 @@ class GroupStatistics extends Maintenance {
* Definitions in this variable can be used to report weighted meta localisation
* scores for the 50 most spoken languages.
*
- * @todo Allow weighted reporting for all available languges.
+ * @todo Allow weighted reporting for all available languages.
*/
- public $localisedWeights = array(
- 'wikimedia' => array(
- //'core-0-mostused' => 40,
+ public $localisedWeights = [
+ 'wikimedia' => [
+ // 'core-0-mostused' => 40,
'core' => 50,
'ext-0-wikimedia' => 50
- ),
- 'fundraiser' => array(
+ ],
+ 'fundraiser' => [
'ext-di-di' => 16,
'ext-di-pfpg' => 84,
- ),
- 'mediawiki' => array(
- //'core-0-mostused' => 30,
+ ],
+ 'mediawiki' => [
+ // 'core-0-mostused' => 30,
'core' => 50,
'ext-0-wikimedia' => 25,
'ext-0-all' => 25
- )
- );
+ ]
+ ];
/**
* Code map to map localisation codes to Wikimedia project codes. Only
* exclusion and remapping is defined here. It is assumed that the first part
* of the localisation code is the WMF project name otherwise (zh-hans -> zh).
*/
- public $wikimediaCodeMap = array(
+ public $wikimediaCodeMap = [
// Codes containing a dash
'bat-smg' => 'bat-smg',
'cbk-zam' => 'cbk-zam',
@@ -181,12 +181,12 @@ class GroupStatistics extends Maintenance {
'zh-cn' => '', // zh
'zh-sg' => '', // zh
'zh-hk' => '', // zh
- 'zh-min-nan' => '', //
+ 'zh-min-nan' => '', // nan
'zh-mo' => '', // zh
'zh-my' => '', // zh
'zh-tw' => '', // zh
'zh-yue' => '', // yue
- );
+ ];
public function __construct() {
parent::__construct();
@@ -288,7 +288,7 @@ class GroupStatistics extends Maintenance {
$out = new TranslateStatsOutput();
}
- $skipLanguages = array();
+ $skipLanguages = [];
if ( $this->hasOption( 'skiplanguages' ) ) {
$skipLanguages = array_map(
'trim',
@@ -299,7 +299,7 @@ class GroupStatistics extends Maintenance {
$reportScore = false;
// Check if score should be reported and prepare weights
$most = $this->getOption( 'most' );
- $weights = array();
+ $weights = [];
if ( $most && isset( $this->localisedWeights[$most] ) ) {
$reportScore = true;
@@ -319,7 +319,7 @@ class GroupStatistics extends Maintenance {
$wmfscore = $this->hasOption( 'wmfscore' );
// Get groups from input
- $groups = array();
+ $groups = [];
if ( $reportScore ) {
$reqGroups = array_keys( $this->localisedWeights[$most] );
} elseif ( $wmfscore ) {
@@ -347,11 +347,11 @@ class GroupStatistics extends Maintenance {
$out = new CsvStatsOutput();
$reportScore = true;
- $weights = array();
+ $weights = [];
foreach ( $this->localisedWeights['wikimedia'] as $weight ) {
$weights[] = $weight;
}
- $wmfscores = array();
+ $wmfscores = [];
}
if ( !count( $groups ) ) {
@@ -364,7 +364,7 @@ class GroupStatistics extends Maintenance {
ksort( $languages );
if ( $this->hasOption( 'legenddetail' ) ) {
- $out->addFreeText( "{{" . $this->getOption( 'legenddetail' ) . "}}\n" );
+ $out->addFreeText( '{{' . $this->getOption( 'legenddetail' ) . "}}\n" );
}
$totalWeight = 0;
@@ -388,22 +388,22 @@ class GroupStatistics extends Maintenance {
$out->blockstart();
if ( $most ) {
- $out->element( ( $l10n ? "{{int:translate-gs-pos}}" : 'Pos.' ), true );
+ $out->element( ( $l10n ? '{{int:translate-gs-pos}}' : 'Pos.' ), true );
}
- $out->element( ( $l10n ? "{{int:translate-gs-code}}" : 'Code' ), true );
- $out->element( ( $l10n ? "{{int:translate-page-language}}" : 'Language' ), true );
+ $out->element( ( $l10n ? '{{int:translate-gs-code}}' : 'Code' ), true );
+ $out->element( ( $l10n ? '{{int:translate-page-language}}' : 'Language' ), true );
if ( $showContinent ) {
- $out->element( ( $l10n ? "{{int:translate-gs-continent}}" : 'Continent' ), true );
+ $out->element( ( $l10n ? '{{int:translate-gs-continent}}' : 'Continent' ), true );
}
if ( $most && $this->hasOption( 'speakers' ) ) {
- $out->element( ( $l10n ? "{{int:translate-gs-speakers}}" : 'Speakers' ), true );
+ $out->element( ( $l10n ? '{{int:translate-gs-speakers}}' : 'Speakers' ), true );
}
if ( $reportScore ) {
$out->element(
- ( $l10n ? "{{int:translate-gs-score}}" : 'Score' ) . ' (' . $totalWeight . ')',
+ ( $l10n ? '{{int:translate-gs-score}}' : 'Score' ) . ' (' . $totalWeight . ')',
true
);
}
@@ -415,26 +415,26 @@ class GroupStatistics extends Maintenance {
// Add unprocessed description of group as heading
if ( $reportScore ) {
$gid = $g->getId();
- $heading = $g->getLabel() . " (" . $this->localisedWeights[$most][$gid] . ")";
+ $heading = $g->getLabel() . ' (' . $this->localisedWeights[$most][$gid] . ')';
} else {
$heading = $g->getLabel();
}
$out->element( $heading, true );
if ( !$reportScore && $this->hasOption( 'fuzzy' ) ) {
- $out->element( ( $l10n ? "{{int:translate-percentage-fuzzy}}" : 'Fuzzy' ), true );
+ $out->element( ( $l10n ? '{{int:translate-percentage-fuzzy}}' : 'Fuzzy' ), true );
}
}
$out->blockend();
}
- $rows = array();
+ $rows = [];
foreach ( $languages as $code => $name ) {
// Skip list
if ( in_array( $code, $skipLanguages ) ) {
continue;
}
- $rows[$code] = array();
+ $rows[$code] = [];
}
foreach ( $groups as $groupName => $g ) {
@@ -449,7 +449,7 @@ class GroupStatistics extends Maintenance {
// Do not calculate if we do not need it for anything.
if ( $wmfscore && isset( $this->wikimediaCodeMap[$code] )
- && $this->wikimediaCodeMap[$code] == ''
+ && $this->wikimediaCodeMap[$code] === ''
) {
continue;
}
@@ -463,10 +463,10 @@ class GroupStatistics extends Maintenance {
$translated = $stats[$code][MessageGroupStats::TRANSLATED];
$fuzzy = $stats[$code][MessageGroupStats::FUZZY];
- $rows[$code][] = array( false, $translated, $total );
+ $rows[$code][] = [ false, $translated, $total ];
if ( $this->hasOption( 'fuzzy' ) ) {
- $rows[$code][] = array( true, $fuzzy, $total );
+ $rows[$code][] = [ true, $fuzzy, $total ];
}
}
@@ -477,7 +477,7 @@ class GroupStatistics extends Maintenance {
$summarise = false;
if ( $this->hasOption( 'summary' ) ) {
$summarise = true;
- $summary = array();
+ $summary = [];
}
foreach ( $languages as $code => $name ) {
@@ -488,7 +488,7 @@ class GroupStatistics extends Maintenance {
// Skip unneeded
if ( $wmfscore && isset( $this->wikimediaCodeMap[$code] )
- && $this->wikimediaCodeMap[$code] == ''
+ && $this->wikimediaCodeMap[$code] === ''
) {
continue;
}
@@ -502,7 +502,7 @@ class GroupStatistics extends Maintenance {
$allZero = true;
foreach ( $columns as $fields ) {
- if ( intval( $fields[1] ) !== 0 ) {
+ if ( (int)$fields[1] !== 0 ) {
$allZero = false;
}
}
@@ -512,7 +512,7 @@ class GroupStatistics extends Maintenance {
continue;
}
- // Output the the row
+ // Output the row
if ( !$wmfscore ) {
$out->blockstart();
}
@@ -528,7 +528,7 @@ class GroupStatistics extends Maintenance {
$out->element( $code );
if ( $l10n && function_exists( 'efI18nTagsInit' ) ) {
- $out->element( "{{#languagename:" . $code . "}}" );
+ $out->element( '{{#languagename:' . $code . '}}' );
} else {
$out->element( $name );
}
@@ -536,11 +536,11 @@ class GroupStatistics extends Maintenance {
// Fill continent field
if ( $showContinent ) {
- if ( $this->mostSpokenLanguages[$code][2] == 'multiple' ) {
- $continent = ( $l10n ? "{{int:translate-gs-multiple}}" : 'Multiple' );
+ if ( $this->mostSpokenLanguages[$code][2] === 'multiple' ) {
+ $continent = ( $l10n ? '{{int:translate-gs-multiple}}' : 'Multiple' );
} else {
$continent = $l10n ?
- "{{int:timezoneregion-" . $this->mostSpokenLanguages[$code][2] . "}}" :
+ '{{int:timezoneregion-' . $this->mostSpokenLanguages[$code][2] . '}}' :
ucfirst( $this->mostSpokenLanguages[$code][2] );
}
@@ -579,7 +579,7 @@ class GroupStatistics extends Maintenance {
$newscore = $score;
}
- $summary[$continent] = array( $newcount, $newscore );
+ $summary[$continent] = [ $newcount, $newscore ];
}
if ( $wmfscore ) {
@@ -598,9 +598,9 @@ class GroupStatistics extends Maintenance {
$tmpWmfScore = (int)$wmfscores[$wmfcode]['score'];
$tmpWmfCount = (int)$wmfscores[$wmfcode]['count'];
$score = ( ( $tmpWmfCount * $tmpWmfScore ) + (int)$score ) / $count;
- $wmfscores[$wmfcode] = array( 'score' => $score, 'count' => $count );
+ $wmfscores[$wmfcode] = [ 'score' => $score, 'count' => $count ];
} else {
- $wmfscores[$wmfcode] = array( 'score' => $score, 'count' => 1 );
+ $wmfscores[$wmfcode] = [ 'score' => $score, 'count' => 1 ];
}
} else {
$out->element( $score );
@@ -623,30 +623,30 @@ class GroupStatistics extends Maintenance {
if ( $reportScore && $this->hasOption( 'summary' ) ) {
if ( $reportScore && $this->hasOption( 'legendsummary' ) ) {
- $out->addFreeText( "{{" . $this->getOption( 'legendsummary' ) . "}}\n" );
+ $out->addFreeText( '{{' . $this->getOption( 'legendsummary' ) . "}}\n" );
}
$out->summaryheading();
$out->blockstart();
- $out->element( $l10n ? "{{int:translate-gs-continent}}" : 'Continent', true );
- $out->element( $l10n ? "{{int:translate-gs-count}}" : 'Count', true );
- $out->element( $l10n ? "{{int:translate-gs-avgscore}}" : 'Avg. score', true );
+ $out->element( $l10n ? '{{int:translate-gs-continent}}' : 'Continent', true );
+ $out->element( $l10n ? '{{int:translate-gs-count}}' : 'Count', true );
+ $out->element( $l10n ? '{{int:translate-gs-avgscore}}' : 'Avg. score', true );
$out->blockend();
ksort( $summary );
- $totals = array( 0, 0 );
+ $totals = [ 0, 0 ];
foreach ( $summary as $key => $values ) {
$out->blockstart();
- if ( $key == 'multiple' ) {
- $out->element( $l10n ? "{{int:translate-gs-multiple}}" : 'Multiple' );
+ if ( $key === 'multiple' ) {
+ $out->element( $l10n ? '{{int:translate-gs-multiple}}' : 'Multiple' );
} else {
- $out->element( $l10n ? "{{int:timezoneregion-" . $key . "}}" : ucfirst( $key ) );
+ $out->element( $l10n ? '{{int:timezoneregion-' . $key . '}}' : ucfirst( $key ) );
}
$out->element( $values[0] );
$out->element( number_format( $values[1] / $values[0] ) );
@@ -658,7 +658,7 @@ class GroupStatistics extends Maintenance {
}
$out->blockstart();
- $out->element( $l10n ? "{{int:translate-gs-total}}" : 'Total' );
+ $out->element( $l10n ? '{{int:translate-gs-total}}' : 'Total' );
$out->element( $totals[0] );
$out->element( number_format( $totals[1] / $totals[0] ) );
$out->blockend();
diff --git a/MLEB/Translate/scripts/languageeditstats.php b/MLEB/Translate/scripts/languageeditstats.php
index 053627ad..1c177a17 100644
--- a/MLEB/Translate/scripts/languageeditstats.php
+++ b/MLEB/Translate/scripts/languageeditstats.php
@@ -5,7 +5,7 @@
* @author Niklas Laxström
* @author Siebrand Mazeland
* @copyright Copyright © 2008-2010 Niklas Laxström, Siebrand Mazeland
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
* @file
* @ingroup Script Stats
*/
@@ -19,7 +19,7 @@ if ( getenv( 'MW_INSTALL_PATH' ) !== false ) {
}
require_once "$IP/maintenance/Maintenance.php";
-class LanguageEditStats extends Maintenance {
+class Languageeditstats extends Maintenance {
public function __construct() {
parent::__construct();
$this->mDescription = 'Script to show number of edits per language for all message groups.';
@@ -56,7 +56,7 @@ class LanguageEditStats extends Maintenance {
$bots = $this->hasOption( 'bots' );
- $namespaces = array();
+ $namespaces = [];
if ( $this->hasOption( 'ns' ) ) {
$input = explode( ',', $this->getOption( 'ns' ) );
@@ -75,7 +75,7 @@ class LanguageEditStats extends Maintenance {
/**
* Get counts for edits per language code after filtering out edits by FuzzyBot
*/
- $codes = array();
+ $codes = [];
global $wgTranslateFuzzyBotName;
foreach ( $rows as $_ ) {
// Filter out edits by $wgTranslateFuzzyBotName
@@ -107,5 +107,5 @@ class LanguageEditStats extends Maintenance {
}
}
-$maintClass = 'LanguageEditStats';
+$maintClass = 'Languageeditstats';
require_once RUN_MAINTENANCE_IF_MAIN;
diff --git a/MLEB/Translate/scripts/magic-export.php b/MLEB/Translate/scripts/magic-export.php
index cd3c9a91..371b4d66 100644
--- a/MLEB/Translate/scripts/magic-export.php
+++ b/MLEB/Translate/scripts/magic-export.php
@@ -5,11 +5,17 @@
* @author Robert Leverington <robert@rhl.me.uk>
*
* @copyright Copyright © 2010 Robert Leverington
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
* @file
*/
-require dirname( dirname( dirname( __DIR__ ) ) ) . '/maintenance/Maintenance.php';
+// Standard boilerplate to define $IP
+if ( getenv( 'MW_INSTALL_PATH' ) !== false ) {
+ $IP = getenv( 'MW_INSTALL_PATH' );
+} else {
+ $IP = __DIR__ . '/../../../';
+}
+require_once "$IP/maintenance/Maintenance.php";
/**
* Maintenance class for the fast export of special page aliases and magic words.
@@ -18,8 +24,9 @@ class MagicExport extends Maintenance {
protected $type;
protected $target;
- protected $handles = array();
- protected $messagesOld = array();
+ protected $handles = [];
+ protected $messagesOld = [];
+ protected $extraInformation = [];
public function __construct() {
parent::__construct();
@@ -93,7 +100,13 @@ class MagicExport extends Maintenance {
}
$inFile = $group->replaceVariables( $inFile, 'en' );
- $outFile = $this->target . '/' . $outFile;
+ $outFile = $this->target . '/' . $outFile;
+ $varName = null;
+
+ if ( !is_readable( $inFile ) ) {
+ $this->error( "File '$inFile' not readable." );
+ continue;
+ }
include $inFile;
switch ( $this->type ) {
@@ -101,9 +114,11 @@ class MagicExport extends Maintenance {
if ( isset( $aliases ) ) {
$this->messagesOld[$group->getId()] = $aliases;
unset( $aliases );
+ $varName = '$aliases';
} elseif ( isset( $specialPageAliases ) ) {
$this->messagesOld[$group->getId()] = $specialPageAliases;
unset( $specialPageAliases );
+ $varName = '$specialPageAliases';
} else {
$this->error( "File '$inFile' does not contain an aliases array." );
continue;
@@ -116,51 +131,83 @@ class MagicExport extends Maintenance {
}
$this->messagesOld[$group->getId()] = $magicWords;
unset( $magicWords );
+ $varName = '$magicWords';
break;
}
wfMkdirParents( dirname( $outFile ), null, __METHOD__ );
$this->handles[$group->getId()] = fopen( $outFile, 'w' );
- fwrite( $this->handles[$group->getId()], $this->readHeader( $inFile ) );
+ $headerInformation = $this->readHeader( $inFile, $varName );
+ fwrite( $this->handles[$group->getId()], $headerInformation['fileBegin'] );
+ $this->extraInformation[$group->getId()] = $headerInformation;
$this->output( "\t{$group->getId()}\n" );
}
}
- protected function readHeader( $file ) {
+ protected function readHeader( $file, $varName ) {
$data = file_get_contents( $file );
// Seek first '*/'.
- $end = strpos( $data, '*/' ) + 2;
+ $end = strpos( $data, '*/' );
+
+ // But not when it is the english comment
+ $varPos = strpos( $data, $varName );
+ if ( $varPos && $end && $varPos <= $end ) {
+ $end = false;
+ }
if ( $end === false ) {
- return "<?php\n";
+ $fileBegin = "<?php\n";
+ } else {
+ // Grab header.
+ $fileBegin = substr( $data, 0, $end + 2 );
}
- // Grab header.
- return substr( $data, 0, $end );
+ // preserve the phpcs codingStandardsIgnoreFile, if exists
+ $preserveIgnoreTag = strpos( $data, '@codingStandardsIgnoreFile' ) !== false;
+
+ // preserve the long array syntax, if varName is written with it
+ $preserveLongArraySyntax = preg_match(
+ '/' . preg_quote( $varName, '/' ) . '\s*=\s*array\s*\(\s*\)\s*;/',
+ $data
+ );
+
+ // avoid difference by the last character
+ $preserveNewlineAtEnd = substr( $data, -1 ) === "\n";
+
+ return [
+ 'fileBegin' => $fileBegin,
+ 'preserveIgnoreTag' => $preserveIgnoreTag,
+ 'preserveLongArraySyntax' => $preserveLongArraySyntax,
+ 'preserveNewlineAtEnd' => $preserveNewlineAtEnd,
+ ];
}
/**
* Write the opening of the files for each output file handle.
*/
protected function writeHeaders() {
- foreach ( $this->handles as $handle ) {
+ foreach ( $this->handles as $group => $handle ) {
+ $arraySyntax = $this->extraInformation[$group]['preserveLongArraySyntax']
+ ? 'array()'
+ : '[]';
switch ( $this->type ) {
case 'special':
+ $ignoreTag = $this->extraInformation[$group]['preserveIgnoreTag']
+ ? "\n// @codingStandardsIgnoreFile"
+ : '';
fwrite( $handle, <<<PHP
+$ignoreTag
-// @codingStandardsIgnoreFile
-
-\$specialPageAliases = array();
+\$specialPageAliases = $arraySyntax;
PHP
);
break;
case 'magic':
fwrite( $handle, <<<PHP
-
-\$magicWords = array();
+\$magicWords = $arraySyntax;
PHP
);
break;
@@ -176,7 +223,7 @@ PHP
protected function writeFiles() {
$langs = TranslateUtils::parseLanguageCodes( '*' );
unset( $langs[array_search( 'en', $langs )] );
- $langs = array_merge( array( 'en' ), $langs );
+ $langs = array_merge( [ 'en' ], $langs );
foreach ( $langs as $l ) {
// Load message page.
switch ( $this->type ) {
@@ -194,7 +241,7 @@ PHP
if ( !$title || !$title->exists() ) {
$this->output( "Skiping $l...\n" );
- $messagesNew = array();
+ $messagesNew = [];
} else {
$this->output( "Processing $l...\n" );
@@ -208,7 +255,7 @@ PHP
array_shift( $segments );
unset( $segments[count( $segments ) - 1] );
unset( $segments[count( $segments ) - 1] );
- $messagesNew = array();
+ $messagesNew = [];
foreach ( $segments as $segment ) {
$parts = explode( ' = ', $segment );
$key = array_shift( $parts );
@@ -223,7 +270,7 @@ PHP
foreach ( $this->handles as $group => $handle ) {
// Find messages to write to this handle.
- $messagesOut = array();
+ $messagesOut = [];
if ( !isset( $this->messagesOld[$group] ) ) {
continue;
}
@@ -235,42 +282,53 @@ PHP
$messagesOut[$key] = $this->messagesOld[$group][$l][$key];
}
}
+ if ( $this->extraInformation[$group]['preserveLongArraySyntax'] ) {
+ $arrayStart = 'array(';
+ $arrayEnd = ')';
+ } else {
+ $arrayStart = '[';
+ $arrayEnd = ']';
+ }
// If there are messages to write, write them.
- if ( count( $messagesOut ) > 0 ) {
+ if ( $messagesOut !== [] ) {
$out = '';
switch ( $this->type ) {
case 'special':
$out .= "\n\n/** {$namesEn[$l]} ({$namesNative[$l]}) " .
- "*/\n\$specialPageAliases['{$l}'] = array(\n";
+ "*/\n\$specialPageAliases['{$l}'] = {$arrayStart}\n";
break;
case 'magic':
$out .= "\n\n/** {$namesEn[$l]} ({$namesNative[$l]}) *" .
- "/\n\$magicWords['{$l}'] = array(\n";
+ "/\n\$magicWords['{$l}'] = {$arrayStart}\n";
break;
}
foreach ( $messagesOut as $key => $translations ) {
+ if ( !is_array( $translations ) ) {
+ $this->error( "$l in $group has not an array..." );
+ continue;
+ }
foreach ( $translations as $id => $translation ) {
$translations[$id] = addslashes( $translation );
- if ( $this->type === 'magic' && $translation == '0' ) {
+ if ( $this->type === 'magic' && $translation === 0 ) {
unset( $translations[$id] );
}
}
$translations = implode( "', '", $translations );
switch ( $this->type ) {
case 'special':
- $out .= "\t'$key' => array( '$translations' ),\n";
+ $out .= "\t'$key' => $arrayStart '$translations' $arrayEnd,\n";
break;
case 'magic':
if ( $this->messagesOld[$group]['en'][$key][0] === 0 ) {
- $out .= "\t'$key' => array( 0, '$translations' ),\n";
+ $out .= "\t'$key' => $arrayStart 0, '$translations' $arrayEnd,\n";
} else {
- $out .= "\t'$key' => array( '$translations' ),\n";
+ $out .= "\t'$key' => $arrayStart '$translations' $arrayEnd,\n";
}
break;
}
}
- $out .= ");";
+ $out .= "$arrayEnd;";
fwrite( $handle, $out );
}
}
@@ -282,6 +340,12 @@ PHP
*/
protected function writeFooters() {
$this->output( "Writing file footers...\n" );
+ foreach ( $this->handles as $group => $handle ) {
+ if ( $this->extraInformation[$group]['preserveNewlineAtEnd'] ) {
+ // php files should end with a newline
+ fwrite( $handle, "\n" );
+ }
+ }
}
/**
@@ -295,5 +359,5 @@ PHP
}
}
-$maintClass = "MagicExport";
-require_once DO_MAINTENANCE;
+$maintClass = 'MagicExport';
+require_once RUN_MAINTENANCE_IF_MAIN;
diff --git a/MLEB/Translate/scripts/migrate-schema2.php b/MLEB/Translate/scripts/migrate-schema2.php
index 02abd0be..1314f0a9 100644
--- a/MLEB/Translate/scripts/migrate-schema2.php
+++ b/MLEB/Translate/scripts/migrate-schema2.php
@@ -4,7 +4,7 @@
*
* @author Niklas Laxström
* @copyright Copyright © 2011, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
* @file
*/
@@ -40,7 +40,7 @@ class TSchema2 extends Maintenance {
}
if ( $dbw->getType() !== 'mysql' ) {
- $this->error( "This migration script only supports mysql. Please help " .
+ $this->error( 'This migration script only supports mysql. Please help ' .
"us to write routine for {$dbw->getType()}.", 1 );
}
@@ -49,16 +49,16 @@ class TSchema2 extends Maintenance {
$res = $dbw->select(
'revtag_type',
- array( 'rtt_id', 'rtt_name' ),
- array(),
+ [ 'rtt_id', 'rtt_name' ],
+ [],
__METHOD__
);
foreach ( $res as $row ) {
$dbw->update(
'revtag',
- array( 'rt_type' => $row->rtt_name ),
- array( 'rt_type' => (string)$row->rtt_id ),
+ [ 'rt_type' => $row->rtt_name ],
+ [ 'rt_type' => (string)$row->rtt_id ],
__METHOD__
);
}
@@ -68,4 +68,4 @@ class TSchema2 extends Maintenance {
}
$maintClass = 'TSchema2';
-require_once DO_MAINTENANCE;
+require_once RUN_MAINTENANCE_IF_MAIN;
diff --git a/MLEB/Translate/scripts/mwcore-export.php b/MLEB/Translate/scripts/mwcore-export.php
index 31ce058a..8ef3d552 100644
--- a/MLEB/Translate/scripts/mwcore-export.php
+++ b/MLEB/Translate/scripts/mwcore-export.php
@@ -5,7 +5,7 @@
* @author Niklas Laxström
* @author Siebrand Mazeland
* @copyright Copyright © 2009-2013, Niklas Laxström, Siebrand Mazeland
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
* @file
*/
@@ -73,7 +73,7 @@ class MwCoreExport extends Maintenance {
continue;
}
- $matches = array();
+ $matches = [];
preg_match( '~^(\$[a-zA-Z]+)\s*=~m', $export, $matches );
if ( !isset( $matches[1] ) ) {
@@ -89,7 +89,7 @@ class MwCoreExport extends Maintenance {
$variable = preg_quote( $matches[1], '~' );
- /// @var FileBasedMessageGroup $group
+ /** @var FileBasedMessageGroup $group */
$file = $group->getSourceFilePath( $l );
// bandage
$real = Language::getFileName( '/messages/Messages', $l );
@@ -114,9 +114,9 @@ class MwCoreExport extends Maintenance {
file_put_contents( $outFile, $data );
} else {
$this->error( "Adding new entry to $outFile, please double check location." );
- $pos = strpos( $data, "*/" );
+ $pos = strpos( $data, '*/' );
if ( $pos === false ) {
- $this->error( ". FAILED! Totally new file? No header?" );
+ $this->error( '. FAILED! Totally new file? No header?' );
} else {
$pos += 3;
}
diff --git a/MLEB/Translate/scripts/plural-comparison.php b/MLEB/Translate/scripts/plural-comparison.php
index dc41b986..66c69ed7 100644
--- a/MLEB/Translate/scripts/plural-comparison.php
+++ b/MLEB/Translate/scripts/plural-comparison.php
@@ -5,7 +5,7 @@
* @author Niklas Laxström
*
* @copyright Copyright © 2010, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
* @file
*/
@@ -13,8 +13,7 @@
if ( getenv( 'MW_INSTALL_PATH' ) !== false ) {
$IP = getenv( 'MW_INSTALL_PATH' );
} else {
- $dir = __DIR__;
- $IP = "$dir/../../..";
+ $IP = __DIR__ . '/../../..';
}
require_once "$IP/maintenance/Maintenance.php";
@@ -111,12 +110,12 @@ class PluralCompare extends Maintenance {
protected function loadPluralFile( $fileName ) {
$doc = new DOMDocument;
$doc->load( $fileName );
- $rulesets = $doc->getElementsByTagName( "pluralRules" );
- $plurals = array();
+ $rulesets = $doc->getElementsByTagName( 'pluralRules' );
+ $plurals = [];
foreach ( $rulesets as $ruleset ) {
$codes = $ruleset->getAttribute( 'locales' );
- $rules = array();
- $ruleElements = $ruleset->getElementsByTagName( "pluralRule" );
+ $rules = [];
+ $ruleElements = $ruleset->getElementsByTagName( 'pluralRule' );
foreach ( $ruleElements as $elt ) {
$rules[] = $elt->nodeValue;
}
@@ -136,6 +135,7 @@ class PluralCompare extends Maintenance {
public function loadMediaWiki() {
global $IP;
+
$rules = $this->loadPluralFile( "$IP/languages/data/plurals.xml" );
$rulesMW = $this->loadPluralFile( "$IP/languages/data/plurals-mediawiki.xml" );
@@ -144,7 +144,7 @@ class PluralCompare extends Maintenance {
public function loadGettext() {
$gtData = file_get_contents( __DIR__ . '/../data/plural-gettext.txt' );
- $gtLanguages = array();
+ $gtLanguages = [];
foreach ( preg_split( '/\n|\r/', $gtData, -1, PREG_SPLIT_NO_EMPTY ) as $line ) {
list( $code, $rule ) = explode( "\t", $line );
$rule = preg_replace( '/^.*?plural=/', '', $rule );
@@ -156,4 +156,4 @@ class PluralCompare extends Maintenance {
}
$maintClass = 'PluralCompare';
-require_once DO_MAINTENANCE;
+require_once RUN_MAINTENANCE_IF_MAIN;
diff --git a/MLEB/Translate/scripts/poimport.php b/MLEB/Translate/scripts/poimport.php
index da2d058a..cb057917 100644
--- a/MLEB/Translate/scripts/poimport.php
+++ b/MLEB/Translate/scripts/poimport.php
@@ -5,7 +5,7 @@
* @author Niklas Laxström
* @author Siebrand Mazeland
* @copyright Copyright © 2007-2013 Niklas Laxström, Siebrand Mazeland
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
* @file
*/
@@ -18,7 +18,7 @@ if ( getenv( 'MW_INSTALL_PATH' ) !== false ) {
}
require_once "$IP/maintenance/Maintenance.php";
-class PoImport extends Maintenance {
+class Poimport extends Maintenance {
public function __construct() {
parent::__construct();
$this->mDescription = 'Po file importer (does not make changes unless specified).';
@@ -45,7 +45,7 @@ class PoImport extends Maintenance {
public function execute() {
// Parse the po file.
$p = new PoImporter( $this->getOption( 'file' ) );
- $p->setProgressCallback( array( $this, 'myOutput' ) );
+ $p->setProgressCallback( [ $this, 'myOutput' ] );
list( $changes, $group ) = $p->parse();
if ( !count( $changes ) ) {
@@ -61,7 +61,7 @@ class PoImport extends Maintenance {
!$this->hasOption( 'really' )
);
- $w->setProgressCallback( array( $this, 'myOutput' ) );
+ $w->setProgressCallback( [ $this, 'myOutput' ] );
$w->execute();
}
@@ -69,7 +69,7 @@ class PoImport extends Maintenance {
* Public alternative for protected Maintenance::output() as we need to get
* messages from the ChangeSyncer class to the commandline.
* @param string $text The text to show to the user
- * @param string $channel Unique identifier for the channel.
+ * @param string|null $channel Unique identifier for the channel.
* @param bool $error Whether this is an error message
*/
public function myOutput( $text, $channel = null, $error = false ) {
@@ -138,7 +138,7 @@ class PoImporter {
$data = file_get_contents( $this->file );
$data = str_replace( "\r\n", "\n", $data );
- $matches = array();
+ $matches = [];
if ( preg_match( '/X-Language-Code:\s+(.*)\\\n/', $data, $matches ) ) {
$code = $matches[1];
$this->reportProgress( "Detected language as $code", 'code' );
@@ -165,9 +165,9 @@ class PoImporter {
$quotePattern = '/(^"|"$\n?)/m';
$sections = preg_split( '/\n{2,}/', $data );
- $changes = array();
+ $changes = [];
foreach ( $sections as $section ) {
- $matches = array();
+ $matches = [];
if ( preg_match( "/^msgctxt\s($poformat)/mx", $section, $matches ) ) {
// Remove quoting
$key = preg_replace( $quotePattern, '', $matches[1] );
@@ -179,7 +179,7 @@ class PoImporter {
} else {
continue;
}
- $matches = array();
+ $matches = [];
if ( preg_match( "/^msgstr\s($poformat)/mx", $section, $matches ) ) {
// Remove quoting
$translation = preg_replace( $quotePattern, '', $matches[1] );
@@ -210,7 +210,7 @@ class PoImporter {
}
}
- return array( $changes, $groupId );
+ return [ $changes, $groupId ];
}
}
@@ -223,7 +223,7 @@ class WikiWriter {
protected $user;
- private $changes = array();
+ private $changes = [];
private $dryrun = true;
private $group = null;
@@ -257,13 +257,13 @@ class WikiWriter {
*/
public function execute() {
if ( !$this->group ) {
- $this->reportProgress( "Given group does not exist.", 'groupId', 'error' );
+ $this->reportProgress( 'Given group does not exist.', 'groupId', 'error' );
return;
}
if ( !$this->user->idForName() ) {
- $this->reportProgress( "Given user does not exist.", 'user', 'error' );
+ $this->reportProgress( 'Given user does not exist.', 'user', 'error' );
return;
}
@@ -318,5 +318,5 @@ class WikiWriter {
}
}
-$maintClass = 'PoImport';
+$maintClass = 'Poimport';
require_once RUN_MAINTENANCE_IF_MAIN;
diff --git a/MLEB/Translate/scripts/populateFuzzy.php b/MLEB/Translate/scripts/populateFuzzy.php
index 401e4b4e..dab8f15b 100644
--- a/MLEB/Translate/scripts/populateFuzzy.php
+++ b/MLEB/Translate/scripts/populateFuzzy.php
@@ -4,7 +4,7 @@
*
* @author Niklas Laxström
* @copyright Copyright © 2009-2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
* @file
*/
@@ -34,31 +34,32 @@ class PopulateFuzzy extends Maintenance {
global $wgTranslateMessageNamespaces;
$namespace = $this->getOption( 'namespace', $wgTranslateMessageNamespaces );
- if ( is_string( $namespace ) ) {
- if ( !MWNamespace::exists( $namespace ) ) {
- $namespace = MWNamespace::getCanonicalIndex( $namespace );
- if ( $namespace === null ) {
- $this->error( 'Bad namespace', true );
- }
+ if ( is_string( $namespace ) &&
+ !MWNamespace::exists( $namespace )
+ ) {
+ $namespace = MWNamespace::getCanonicalIndex( $namespace );
+
+ if ( $namespace === null ) {
+ $this->error( 'Bad namespace', true );
}
}
- $db = wfGetDB( DB_MASTER );
- $tables = array( 'page', 'text', 'revision' );
- $fields = array( 'page_id', 'page_title', 'page_namespace', 'rev_id', 'old_text', 'old_flags' );
- $conds = array(
+ $dbw = wfGetDB( DB_MASTER );
+ $tables = [ 'page', 'text', 'revision' ];
+ $fields = [ 'page_id', 'page_title', 'page_namespace', 'rev_id', 'old_text', 'old_flags' ];
+ $conds = [
'page_latest = rev_id',
'old_id = rev_text_id',
'page_namespace' => $namespace,
- );
+ ];
$limit = 100;
$offset = 0;
while ( true ) {
- $inserts = array();
+ $inserts = [];
$this->output( '.', 0 );
- $options = array( 'LIMIT' => $limit, 'OFFSET' => $offset );
- $res = $db->select( $tables, $fields, $conds, __METHOD__, $options );
+ $options = [ 'LIMIT' => $limit, 'OFFSET' => $offset ];
+ $res = $dbw->select( $tables, $fields, $conds, __METHOD__, $options );
if ( !$res->numRows() ) {
break;
@@ -67,17 +68,17 @@ class PopulateFuzzy extends Maintenance {
foreach ( $res as $r ) {
$text = Revision::getRevisionText( $r );
if ( strpos( $text, TRANSLATE_FUZZY ) !== false ) {
- $inserts[] = array(
+ $inserts[] = [
'rt_page' => $r->page_id,
'rt_revision' => $r->rev_id,
'rt_type' => RevTag::getType( 'fuzzy' ),
- );
+ ];
}
}
$offset += $limit;
- $db->replace( 'revtag', 'rt_type_page_revision', $inserts, __METHOD__ );
+ $dbw->replace( 'revtag', 'rt_type_page_revision', $inserts, __METHOD__ );
}
}
}
diff --git a/MLEB/Translate/scripts/processMessageChanges.php b/MLEB/Translate/scripts/processMessageChanges.php
index 48343bab..45313530 100644
--- a/MLEB/Translate/scripts/processMessageChanges.php
+++ b/MLEB/Translate/scripts/processMessageChanges.php
@@ -5,7 +5,7 @@
* @author Niklas Laxström
*
* @copyright Copyright © 2012-2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
* @file
*/
@@ -28,7 +28,7 @@ require_once "$IP/maintenance/Maintenance.php";
* @since 2012-04-23
*/
class ProcessMessageChanges extends Maintenance {
- protected $changes = array();
+ protected $changes = [];
/**
* @var int
@@ -52,29 +52,64 @@ class ProcessMessageChanges extends Maintenance {
false, /*required*/
true /*has arg*/
);
+ $this->addOption(
+ 'name',
+ '(optional) Unique name to avoid conflicts with multiple invocations of this script.',
+ false, /*required*/
+ true /*has arg*/
+ );
+ $this->addOption(
+ 'safe-import',
+ '(optional) Import "safe" changes: message additions when no other kind of changes.',
+ false, /*required*/
+ false /*has arg*/
+ );
}
public function execute() {
$groups = $this->getGroups();
- $changes = array();
+ $changes = [];
$comparator = new ExternalMessageSourceStateComparator();
+ $scripted = $this->hasOption( 'safe-import' );
+
/** @var FileBasedMessageGroup $group */
foreach ( $groups as $id => $group ) {
- $this->output( "Processing $id\n" );
+ if ( !$scripted ) {
+ $this->output( "Processing $id\n" );
+ }
$changes[$id] = $comparator->processGroup( $group, $comparator::ALL_LANGUAGES );
}
// Remove all groups without changes
$changes = array_filter( $changes );
- if ( count( $changes ) ) {
- ExternalMessageSourceStateComparator::writeChanges( $changes );
- $url = SpecialPage::getTitleFor( 'ManageMessageGroups' )->getFullUrl();
- $this->output( "Process changes at $url\n" );
- } else {
- $this->output( "No changes found\n" );
+ if ( $changes === [] ) {
+ if ( !$scripted ) {
+ $this->output( "No changes found\n" );
+ }
+
+ return;
}
+
+ if ( $this->hasOption( 'safe-import' ) ) {
+ $importer = new ExternalMessageSourceStateImporter();
+ $info = $importer->importSafe( $changes );
+ $this->printChangeInfo( $info );
+
+ return;
+ }
+
+ $name = $this->getOption( 'name', MessageChangeStorage::DEFAULT_NAME );
+ if ( !MessageChangeStorage::isValidCdbName( $name ) ) {
+ $this->error( 'Invalid name', 1 );
+ }
+
+ $file = MessageChangeStorage::getCdbPath( $name );
+
+ MessageChangeStorage::writeChanges( $changes, $file );
+ $url = SpecialPage::getTitleFor( 'ManageMessageGroups', $name )->getFullURL();
+ $this->output( "Process changes at $url\n" );
}
/**
@@ -82,7 +117,6 @@ class ProcessMessageChanges extends Maintenance {
* @return MessageGroup[]
*/
protected function getGroups() {
- /// @var $groups MessageGroup[]
$groups = MessageGroups::getGroupsByType( 'FileBasedMessageGroup' );
// Include all if option not given
@@ -111,6 +145,19 @@ class ProcessMessageChanges extends Maintenance {
return $groups;
}
+
+ protected function printChangeInfo( array $info ) {
+ foreach ( $info['processed'] as $group => $count ) {
+ $this->output( "Imported $count new messages or translations for $group.\n" );
+ }
+
+ if ( $info['skipped'] !== [] ) {
+ $skipped = implode( ', ', array_keys( $info['skipped'] ) );
+ $this->output( "There are changes to check for groups $skipped.\n" );
+ $url = SpecialPage::getTitleFor( 'ManageMessageGroups', $info['name'] )->getFullURL();
+ $this->output( "You can process them at $url\n" );
+ }
+ }
}
$maintClass = 'ProcessMessageChanges';
diff --git a/MLEB/Translate/scripts/refresh-translatable-pages.php b/MLEB/Translate/scripts/refresh-translatable-pages.php
index 37021e12..7fe536f9 100644
--- a/MLEB/Translate/scripts/refresh-translatable-pages.php
+++ b/MLEB/Translate/scripts/refresh-translatable-pages.php
@@ -3,7 +3,7 @@
* Script to ensure all translation pages are up to date.
*
* @author Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
* @file
*/
@@ -24,10 +24,14 @@ class RefreshTranslatablePages extends Maintenance {
public function __construct() {
parent::__construct();
$this->mDescription = 'Ensure all translation pages are up to date.';
+ $this->setBatchSize( 300 );
+ $this->addOption( 'jobqueue', 'Use JobQueue (asynchronous)' );
}
public function execute() {
$groups = MessageGroups::singleton()->getGroups();
+ $counter = 0;
+ $useJobQueue = $this->hasOption( 'jobqueue' );
/** @var MessageGroup $group */
foreach ( $groups as $group ) {
@@ -35,15 +39,27 @@ class RefreshTranslatablePages extends Maintenance {
continue;
}
- // Get all translation subpages and refresh each one of them
- $page = TranslatablePage::newFromTitle( $group->getTitle() );
- $translationPages = $page->getTranslationPages();
+ $counter++;
+ if ( ( $counter % $this->mBatchSize ) === 0 ) {
+ wfWaitForSlaves();
+ }
- foreach ( $translationPages as $subpage ) {
- $job = TranslateRenderJob::newJob( $subpage );
- $job->run();
+ $page = TranslatablePage::newFromTitle( $group->getTitle() );
+ $jobs = TranslationsUpdateJob::getRenderJobs( $page );
+ if ( $useJobQueue ) {
+ JobQueueGroup::singleton()->push( $jobs );
+ } else {
+ foreach ( $jobs as $job ) {
+ $job->run();
+ }
}
}
+
+ if ( $useJobQueue ) {
+ $this->output( "Queued refresh for $counter translatable pages.\n" );
+ } else {
+ $this->output( "Refreshed $counter translatable pages.\n" );
+ }
}
}
diff --git a/MLEB/Translate/scripts/sync-group.php b/MLEB/Translate/scripts/sync-group.php
index 5990eef1..dcd5f674 100644
--- a/MLEB/Translate/scripts/sync-group.php
+++ b/MLEB/Translate/scripts/sync-group.php
@@ -7,7 +7,7 @@
* @author Siebrand Mazeland
* @copyright Copyright © 2007-2013, Niklas Laxström
* @copyright Copyright © 2009-2013, Siebrand Mazeland
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
* @file
*/
@@ -85,13 +85,13 @@ class SyncGroup extends Maintenance {
$groups = MessageGroups::getGroupsById( $groupIds );
if ( !count( $groups ) ) {
- $this->error( "ESG2: No valid message groups identified.", 1 );
+ $this->error( 'ESG2: No valid message groups identified.', 1 );
}
$start = $this->getOption( 'start' ) ? strtotime( $this->getOption( 'start' ) ) : false;
$end = $this->getOption( 'end' ) ? strtotime( $this->getOption( 'end' ) ) : false;
- $this->output( "Conflict times: " . wfTimestamp( TS_ISO_8601, $start ) . " - " .
+ $this->output( 'Conflict times: ' . wfTimestamp( TS_ISO_8601, $start ) . ' - ' .
wfTimestamp( TS_ISO_8601, $end ) . "\n" );
$codes = array_filter( array_map( 'trim', explode( ',', $this->getOption( 'lang' ) ) ) );
@@ -115,7 +115,7 @@ class SyncGroup extends Maintenance {
foreach ( $codes as $code ) {
// No sync possible for unsupported language codes.
if ( !in_array( $code, $supportedCodes ) ) {
- $this->output( "Unsupported code " . $code . ": skipping.\n" );
+ $this->output( 'Unsupported code ' . $code . ": skipping.\n" );
continue;
}
@@ -130,7 +130,7 @@ class SyncGroup extends Maintenance {
}
$cs = new ChangeSyncer( $group, $this );
- $cs->setProgressCallback( array( $this, 'myOutput' ) );
+ $cs->setProgressCallback( [ $this, 'myOutput' ] );
$cs->interactive = !$this->hasOption( 'noask' );
$cs->nocolor = $this->hasOption( 'nocolor' );
$cs->norc = $this->hasOption( 'norc' );
@@ -161,7 +161,7 @@ class SyncGroup extends Maintenance {
* Public alternative for protected Maintenance::output() as we need to get
* messages from the ChangeSyncer class to the commandline.
* @param string $text The text to show to the user
- * @param string $channel Unique identifier for the channel.
+ * @param string|null $channel Unique identifier for the channel.
* @param bool $error Whether this is an error message
*/
public function myOutput( $text, $channel = null, $error = false ) {
@@ -227,7 +227,7 @@ class ChangeSyncer {
return false;
}
- $matches = array();
+ $matches = [];
// PHP doesn't allow foo || return false;
// Thank
// you
@@ -299,7 +299,7 @@ class ChangeSyncer {
}
// @todo Temporary exception. Should be fixed elsewhere more generically.
- if ( $translation == '{{PLURAL:GETTEXT|}}' ) {
+ if ( $translation === '{{PLURAL:GETTEXT|}}' ) {
return;
}
@@ -319,7 +319,7 @@ class ChangeSyncer {
continue;
}
- $this->reportProgress( "Conflict in " . $this->color( 'bold', $page ) . "!", $page );
+ $this->reportProgress( 'Conflict in ' . $this->color( 'bold', $page ) . '!', $page );
$iso = 'xnY-xnm-xnd"T"xnH:xni:xns';
$lang = RequestContext::getMain()->getLanguage();
@@ -350,10 +350,10 @@ class ChangeSyncer {
if ( $changeTs ) {
if ( $wikiTs > $startTs && $changeTs <= $endTs ) {
- $this->reportProgress( " →Changed in wiki after export: IGNORE", $page );
+ $this->reportProgress( ' →Changed in wiki after export: IGNORE', $page );
continue;
} elseif ( !$wikiTs || ( $changeTs > $endTs && $wikiTs < $startTs ) ) {
- $this->reportProgress( " →Changed in source after export: IMPORT", $page );
+ $this->reportProgress( ' →Changed in source after export: IMPORT', $page );
$this->import(
$title,
$translation,
@@ -367,14 +367,14 @@ class ChangeSyncer {
continue;
}
- $this->reportProgress( " →Needs manual resolution", $page );
+ $this->reportProgress( ' →Needs manual resolution', $page );
$this->reportProgress( "Source translation at $changeDate:", 'source' );
$this->reportProgress( $this->color( 'blue', $translation ), 'source' );
$this->reportProgress( "Wiki translation at $wikiDate:", 'translation' );
$this->reportProgress( $this->color( 'green', $current ), 'translation' );
do {
- $this->reportProgress( "Resolution: [S]kip [I]mport [C]onflict: ", 'foo' );
+ $this->reportProgress( 'Resolution: [S]kip [I]mport [C]onflict: ', 'foo' );
// @todo Find an elegant way to use Maintenance::readconsole().
$action = fgets( STDIN );
$action = strtoupper( trim( $action ) );
@@ -440,7 +440,7 @@ class ChangeSyncer {
break;
}
- if ( $revision->getRawUserText() === $wgTranslateFuzzyBotName ) {
+ if ( $revision->getUserText( Revision::RAW ) === $wgTranslateFuzzyBotName ) {
$revision = $revision->getPrevious();
continue;
}
diff --git a/MLEB/Translate/scripts/translator-stats-process.php b/MLEB/Translate/scripts/translator-stats-process.php
index 042039f0..c70b0cdf 100644
--- a/MLEB/Translate/scripts/translator-stats-process.php
+++ b/MLEB/Translate/scripts/translator-stats-process.php
@@ -3,7 +3,7 @@
* Script to gather translator stats.
*
* @author Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
* @file
*/
@@ -27,17 +27,17 @@ class TSP extends Maintenance {
);
}
- function median( $a ) {
+ protected function median( $a ) {
sort( $a );
$len = count( $a );
if ( $len === 0 ) {
return 0;
- } elseif( $len === 1 ) {
+ } elseif ( $len === 1 ) {
return $a[0];
} elseif ( $len % 2 === 0 ) {
- return $a[$len/2];
+ return $a[$len / 2];
} else {
- return ( $a[floor( $len/2 )] + $a[ceil( $len/2 )] ) / 2;
+ return ( $a[floor( $len / 2 )] + $a[ceil( $len / 2 )] ) / 2;
}
}
@@ -46,8 +46,13 @@ class TSP extends Maintenance {
// remove heading
fgets( $handle );
- $data = array();
- while ( ( $l = fgets( $handle ) ) !== false ) {
+ $data = [];
+ while ( true ) {
+ $l = fgets( $handle );
+ if ( $l === false ) {
+ break;
+ }
+
$fields = explode( "\t", trim( $l, "\n" ) );
list( $name, $reg, $edits, $translator, $promoted, $method ) = $fields;
$month = substr( $reg, 0, 4 ) . '-' . substr( $reg, 4, 2 ) . '-01';
@@ -65,10 +70,9 @@ class TSP extends Maintenance {
$total = 0;
$promoted = 0;
$good = 0;
- $delay = array();
- $median = 0;
+ $delay = [];
$avg = 'N/A';
- $sbar = array();
+ $sbar = [];
foreach ( $period as $p ) {
list( $name, $reg, $edits, $translator, $promtime, $method ) = $p;
@@ -100,7 +104,7 @@ class TSP extends Maintenance {
$avg = round( array_sum( $delay ) / count( $delay ) / 3600 );
}
- if ( $sbar === array() ) {
+ if ( $sbar === [] ) {
$sbar = 'N/A';
} else {
$sbar = count( array_filter( $sbar ) ) / count( $sbar );
diff --git a/MLEB/Translate/scripts/translator-stats.php b/MLEB/Translate/scripts/translator-stats.php
index 8c5f8634..6ee2c312 100644
--- a/MLEB/Translate/scripts/translator-stats.php
+++ b/MLEB/Translate/scripts/translator-stats.php
@@ -3,7 +3,7 @@
* Script to gather translator stats.
*
* @author Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
* @file
*/
@@ -24,42 +24,50 @@ class TS extends Maintenance {
}
public function execute() {
- $dbr = wfGetDB( DB_SLAVE );
+ global $wgDisableUserGroupExpiry;
+
+ $dbr = wfGetDB( DB_REPLICA );
$users = $dbr->select(
- array( 'user', 'user_groups' ),
- array(
+ [ 'user', 'user_groups' ],
+ [
'user_name',
'user_registration',
'user_editcount',
'ug_group',
- ),
- array(
+ ],
+ [
'user_registration is not null'
- ),
+ ],
__METHOD__,
- array(
+ [
'ORDER BY' => 'user_id ASC',
- ),
- array(
- 'user_groups' => array(
+ ],
+ [
+ 'user_groups' => [
'LEFT JOIN',
- array( 'user_id=ug_user', 'ug_group' => 'translator' )
- )
- )
+ [
+ 'user_id=ug_user',
+ 'ug_group' => 'translator',
+ ( isset( $wgDisableUserGroupExpiry ) && !$wgDisableUserGroupExpiry ) ?
+ 'ug_expiry IS NULL OR ug_expiry >= ' . $dbr->addQuotes( $dbr->timestamp() ) :
+ ''
+ ]
+ ]
+ ]
);
echo "username\tregistration ts\tedit count\tis translator?\tpromoted ts\tmethod\n";
$rejected = $dbr->select(
- array( 'logging' ),
- array(
+ [ 'logging' ],
+ [
'log_title',
'log_timestamp',
- ),
- array(
+ ],
+ [
'log_type' => 'translatorsandbox',
'log_action' => 'rejected',
- ),
+ ],
__METHOD__
);
@@ -70,20 +78,20 @@ class TS extends Maintenance {
foreach ( $users as $u ) {
$logs = $dbr->select(
'logging',
- array(
+ [
'log_type',
'log_action',
'log_timestamp',
'log_params',
- ),
- array(
+ ],
+ [
'log_title' => $u->user_name,
- 'log_type' => array( 'rights', 'translatorsandbox' ),
- ),
+ 'log_type' => [ 'rights', 'translatorsandbox' ],
+ ],
__METHOD__,
- array(
+ [
'ORDER BY' => 'log_id ASC',
- )
+ ]
);
$promoted = null;
@@ -94,9 +102,9 @@ class TS extends Maintenance {
$method = 'sandbox';
break;
} elseif ( $log->log_action === 'rights' ) {
- wfSuppressWarnings();
+ MediaWiki\suppressWarnings();
$data = unserialize( $log->log_params );
- wfRestoreWarnings();
+ MediaWiki\restoreWarnings();
if ( $data === false ) {
$lines = explode( "\n", $log->log_params );
if ( strpos( $lines[1], 'translator' ) !== false ) {
diff --git a/MLEB/Translate/scripts/ttmserver-export.php b/MLEB/Translate/scripts/ttmserver-export.php
index 5ecd7fd7..8722feff 100644
--- a/MLEB/Translate/scripts/ttmserver-export.php
+++ b/MLEB/Translate/scripts/ttmserver-export.php
@@ -3,7 +3,7 @@
* Script to bootstrap TTMServer translation memory
*
* @author Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
* @file
*/
@@ -21,9 +21,9 @@ require_once "$IP/maintenance/Maintenance.php";
* @since 2012-01-26
*/
class TTMServerBootstrap extends Maintenance {
- /// @var Array Configuration of requested TTMServer
- protected $config;
- // Option for reindexing
+ /**
+ * @var bool Option for reindexing
+ */
protected $reindex;
public function __construct() {
@@ -51,19 +51,19 @@ class TTMServerBootstrap extends Maintenance {
}
public function statusLine( $text, $channel = null ) {
- $pid = sprintf( "%5s", getmypid() );
- $prefix = sprintf( "%6.2f", microtime( true ) - $this->start );
- $mem = sprintf( "%5.1fM", ( memory_get_usage( true ) / ( 1024 * 1024 ) ) );
+ $pid = sprintf( '%5s', getmypid() );
+ $prefix = sprintf( '%6.2f', microtime( true ) - $this->start );
+ $mem = sprintf( '%5.1fM', ( memory_get_usage( true ) / ( 1024 * 1024 ) ) );
$this->output( "$pid $prefix $mem $text", $channel );
}
public function execute() {
- global $wgTranslateTranslationServices;
+ global $wgTranslateTranslationServices,
+ $wgTranslateTranslationDefaultService;
- // TTMServer is the id of the enabled-by-default instance
- $configKey = $this->getOption( 'ttmserver', 'TTMServer' );
+ $configKey = $this->getOption( 'ttmserver', $wgTranslateTranslationDefaultService );
if ( !isset( $wgTranslateTranslationServices[$configKey] ) ) {
- $this->error( "Translation memory is not configured properly", 1 );
+ $this->error( 'Translation memory is not configured properly', 1 );
}
$config = $wgTranslateTranslationServices[$configKey];
@@ -84,10 +84,14 @@ class TTMServerBootstrap extends Maintenance {
$this->statusLine( "Forked thread $pid to handle bootstrapping\n" );
$status = 0;
pcntl_waitpid( $pid, $status );
+ // beginBootStrap probably failed, give up.
+ if ( $status !== 0 ) {
+ $this->error( 'Boostrap failed.', 1 );
+ }
}
$threads = $this->getOption( 'threads', 1 );
- $pids = array();
+ $pids = [];
$groups = MessageGroups::singleton()->getGroups();
foreach ( $groups as $id => $group ) {
@@ -131,9 +135,12 @@ class TTMServerBootstrap extends Maintenance {
}
protected function beginBootStrap( $config ) {
- $this->statusLine( "Cleaning up old entries...\n" );
$server = TTMServer::factory( $config );
$server->setLogger( $this );
+ if ( $server->isFrozen() ) {
+ $this->error( "The service is frozen, giving up.", 1 );
+ }
+ $this->statusLine( "Cleaning up old entries...\n" );
if ( $this->reindex ) {
$server->doMappingUpdate();
}
@@ -162,18 +169,18 @@ class TTMServerBootstrap extends Maintenance {
$server->beginBatch();
- $inserts = array();
+ $inserts = [];
foreach ( $collection->keys() as $mkey => $title ) {
$handle = new MessageHandle( $title );
- $inserts[] = array( $handle, $sourceLanguage, $collection[$mkey]->definition() );
+ $inserts[] = [ $handle, $sourceLanguage, $collection[$mkey]->definition() ];
}
- while ( $inserts !== array() ) {
+ while ( $inserts !== [] ) {
$batch = array_splice( $inserts, 0, $this->mBatchSize );
$server->batchInsertDefinitions( $batch );
}
- $inserts = array();
+ $inserts = [];
foreach ( $stats as $targetLanguage => $numbers ) {
if ( $targetLanguage === $sourceLanguage ) {
continue;
@@ -189,7 +196,7 @@ class TTMServerBootstrap extends Maintenance {
foreach ( $collection->keys() as $mkey => $title ) {
$handle = new MessageHandle( $title );
- $inserts[] = array( $handle, $sourceLanguage, $collection[$mkey]->translation() );
+ $inserts[] = [ $handle, $sourceLanguage, $collection[$mkey]->translation() ];
}
while ( count( $inserts ) >= $this->mBatchSize ) {
@@ -198,7 +205,7 @@ class TTMServerBootstrap extends Maintenance {
}
}
- while ( $inserts !== array() ) {
+ while ( $inserts !== [] ) {
$batch = array_splice( $inserts, 0, $this->mBatchSize );
$server->batchInsertTranslations( $batch );
}
@@ -207,13 +214,9 @@ class TTMServerBootstrap extends Maintenance {
}
protected function resetStateForFork() {
- // Child, reseed because there is no bug in PHP:
- // http://bugs.php.net/bug.php?id=42465
- mt_srand( getmypid() );
-
// Make sure all existing connections are dead,
// we can't use them in forked children.
- LBFactory::destroyInstance();
+ MediaWiki\MediaWikiServices::resetChildProcessServices();
}
}
diff --git a/MLEB/Translate/scripts/yaml-tests.php b/MLEB/Translate/scripts/yaml-tests.php
index 905b8a71..c0bd3dee 100644
--- a/MLEB/Translate/scripts/yaml-tests.php
+++ b/MLEB/Translate/scripts/yaml-tests.php
@@ -5,7 +5,7 @@
* @author Niklas Laxström
*
* @copyright Copyright © 2010, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
* @file
*/
@@ -26,17 +26,17 @@ class YamlTests extends Maintenance {
public function execute() {
global $wgTranslateGroupFiles, $wgTranslateYamlLibrary;
- $documents = array();
- $times = array();
- $mems = array();
- $mempeaks = array();
+ $documents = [];
+ $times = [];
+ $mems = [];
+ $mempeaks = [];
- foreach ( array( 'syck', 'spyc', 'phpyaml' ) as $driver ) {
+ foreach ( [ 'syck', 'spyc', 'phpyaml' ] as $driver ) {
$mempeaks[$driver] = -memory_get_peak_usage( true );
$mems[$driver] = -memory_get_usage( true );
$times[$driver] = -microtime( true );
$wgTranslateYamlLibrary = $driver;
- $documents[$driver] = array();
+ $documents[$driver] = [];
foreach ( $wgTranslateGroupFiles as $file ) {
foreach ( self::parseGroupFile( $file ) as $id => $docu ) {
$documents[$driver]["$file-$id"] = $docu;
@@ -59,7 +59,7 @@ class YamlTests extends Maintenance {
public static function parseGroupFile( $filename ) {
$data = file_get_contents( $filename );
$documents = preg_split( "/^---$/m", $data, -1, PREG_SPLIT_NO_EMPTY );
- $groups = array();
+ $groups = [];
$template = false;
foreach ( $documents as $document ) {
$document = TranslateYaml::loadString( $document );
@@ -67,7 +67,7 @@ class YamlTests extends Maintenance {
$template = $document['TEMPLATE'];
} else {
if ( !isset( $document['BASIC']['id'] ) ) {
- trigger_error( "No path ./BASIC/id (group id not defined) " .
+ trigger_error( 'No path ./BASIC/id (group id not defined) ' .
"in yaml document located in $filename" );
continue;
}
@@ -76,7 +76,7 @@ class YamlTests extends Maintenance {
}
foreach ( $groups as $i => $group ) {
- $groups[$i] = TranslateYaml::mergeTemplate( $template, $group );
+ $groups[$i] = MessageGroupConfigurationParser::mergeTemplate( $template, $group );
}
return $groups;
diff --git a/MLEB/Translate/specials/SpecialAggregateGroups.php b/MLEB/Translate/specials/SpecialAggregateGroups.php
index 0eb463b8..a1b52336 100644
--- a/MLEB/Translate/specials/SpecialAggregateGroups.php
+++ b/MLEB/Translate/specials/SpecialAggregateGroups.php
@@ -7,21 +7,25 @@
* @author Niklas Laxström
* @author Siebrand Mazeland
* @author Kunal Grover
- * @copyright Copyright © 2012 Santhosh Thottingal, Niklas Laxström, Siebrand Mazeland, Kunal Grover
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
-class SpecialAggregateGroups extends TranslateSpecialPage {
+class SpecialAggregateGroups extends SpecialPage {
protected $hasPermission = false;
- function __construct() {
+ public function __construct() {
parent::__construct( 'AggregateGroups', 'translate-manage' );
}
+ protected function getGroupName() {
+ return 'wiki';
+ }
+
public function execute( $parameters ) {
$this->setHeaders();
$out = $this->getOutput();
+ $out->addModuleStyles( 'ext.translate.special.aggregategroups.styles' );
// Check permissions
if ( $this->getUser()->isAllowed( 'translate-manage' ) ) {
@@ -29,9 +33,9 @@ class SpecialAggregateGroups extends TranslateSpecialPage {
}
$groups = MessageGroups::getAllGroups();
- uasort( $groups, array( 'MessageGroups', 'groupLabelSort' ) );
- $aggregates = array();
- $pages = array();
+ uasort( $groups, [ 'MessageGroups', 'groupLabelSort' ] );
+ $aggregates = [];
+ $pages = [];
foreach ( $groups as $group ) {
if ( $group instanceof WikiPageMessageGroup ) {
$pages[] = $group;
@@ -54,7 +58,7 @@ class SpecialAggregateGroups extends TranslateSpecialPage {
}
/**
- * @param array $aggregategroup
+ * @param AggregateMessageGroup $group
* @param array $pages
* @return string
*/
@@ -64,11 +68,11 @@ class SpecialAggregateGroups extends TranslateSpecialPage {
$label = $group->getLabel();
$desc = $group->getDescription( $this->getContext() );
- $div = Html::openElement( 'div', array(
+ $div = Html::openElement( 'div', [
'class' => 'mw-tpa-group',
'data-groupid' => $id,
'data-id' => $this->htmlIdForGroup( $group ),
- ) );
+ ] );
$out .= $div;
@@ -81,8 +85,8 @@ class SpecialAggregateGroups extends TranslateSpecialPage {
// Add divs for editing Aggregate Groups
if ( $this->hasPermission ) {
// Group edit and remove buttons
- $edit = Html::element( 'span', array( 'class' => 'tp-aggregate-edit-ag-button' ) );
- $remove = Html::element( 'span', array( 'class' => 'tp-aggregate-remove-ag-button' ) );
+ $edit = Html::element( 'span', [ 'class' => 'tp-aggregate-edit-ag-button' ] );
+ $remove = Html::element( 'span', [ 'class' => 'tp-aggregate-remove-ag-button' ] );
// Edit group div
$editGroupNameLabel = $this->msg( 'tpt-aggregategroup-edit-name' )->escaped();
@@ -90,28 +94,28 @@ class SpecialAggregateGroups extends TranslateSpecialPage {
'tp-agg-name',
$label,
'text',
- array( 'class' => 'tp-aggregategroup-edit-name', 'maxlength' => '200' )
+ [ 'class' => 'tp-aggregategroup-edit-name', 'maxlength' => '200' ]
);
$editGroupDescriptionLabel = $this->msg( 'tpt-aggregategroup-edit-description' )->escaped();
$editGroupDescription = Html::input(
'tp-agg-desc',
$desc,
'text',
- array( 'class' => 'tp-aggregategroup-edit-description' )
+ [ 'class' => 'tp-aggregategroup-edit-description' ]
);
$saveButton = Xml::submitButton(
$this->msg( 'tpt-aggregategroup-update' )->text(),
- array( 'class' => 'tp-aggregategroup-update' )
+ [ 'class' => 'tp-aggregategroup-update' ]
);
$cancelButton = Xml::submitButton(
$this->msg( 'tpt-aggregategroup-update-cancel' )->text(),
- array( 'class' => 'tp-aggregategroup-update-cancel' )
+ [ 'class' => 'tp-aggregategroup-update-cancel' ]
);
$editGroup = Html::rawElement(
'div',
- array(
+ [
'class' => 'tp-edit-group hidden'
- ),
+ ],
$editGroupNameLabel .
$editGroupName . '<br />' .
$editGroupDescriptionLabel .
@@ -125,26 +129,26 @@ class SpecialAggregateGroups extends TranslateSpecialPage {
'tp-subgroups-input',
'',
'text',
- array( 'class' => 'tp-group-input' )
+ [ 'class' => 'tp-group-input' ]
);
$addButton = Html::element( 'input',
- array( 'type' => 'button',
+ [ 'type' => 'button',
'value' => $this->msg( 'tpt-aggregategroup-add' )->text(),
- 'class' => 'tp-aggregate-add-button' )
+ 'class' => 'tp-aggregate-add-button' ]
);
}
// Aggregate Group info div
$groupName = Html::rawElement( 'h2',
- array( 'class' => 'tp-name' ),
+ [ 'class' => 'tp-name' ],
htmlspecialchars( $label ) . $edit . $remove
);
$groupDesc = Html::element( 'p',
- array( 'class' => 'tp-desc' ),
+ [ 'class' => 'tp-desc' ],
$desc
);
$groupInfo = Html::rawElement( 'div',
- array( 'class' => 'tp-display-group' ),
+ [ 'class' => 'tp-display-group' ],
$groupName .
$groupDesc
);
@@ -153,7 +157,7 @@ class SpecialAggregateGroups extends TranslateSpecialPage {
$out .= $editGroup;
$out .= $this->listSubgroups( $group );
$out .= $select . $addButton;
- $out .= "</div>";
+ $out .= '</div>';
return $out;
}
@@ -166,6 +170,14 @@ class SpecialAggregateGroups extends TranslateSpecialPage {
$out = $this->getOutput();
$out->addModules( 'ext.translate.special.aggregategroups' );
+ $nojs = Html::element(
+ 'div',
+ [ 'class' => 'tux-nojs errorbox' ],
+ $this->msg( 'tux-nojs' )->plain()
+ );
+
+ $out->addHTML( $nojs );
+
/**
* @var $group AggregateMessageGroup
*/
@@ -175,36 +187,31 @@ class SpecialAggregateGroups extends TranslateSpecialPage {
// Add new group if user has permissions
if ( $this->hasPermission ) {
- $out->addHtml( Html::element( 'input', array(
- 'type' => 'hidden',
- 'id' => 'token',
- 'value' => ApiAggregateGroups::getToken()
- ) ) );
- $out->addHtml( "<br/><a class='tpt-add-new-group' href='#'>" .
+ $out->addHTML( "<br/><a class='tpt-add-new-group' href='#'>" .
$this->msg( 'tpt-aggregategroup-add-new' )->escaped() .
- "</a>" );
+ '</a>' );
$newGroupNameLabel = $this->msg( 'tpt-aggregategroup-new-name' )->escaped();
$newGroupName = Html::element(
'input',
- array( 'class' => 'tp-aggregategroup-add-name', 'maxlength' => '200' )
+ [ 'class' => 'tp-aggregategroup-add-name', 'maxlength' => '200' ]
);
$newGroupDescriptionLabel = $this->msg( 'tpt-aggregategroup-new-description' )->escaped();
$newGroupDescription = Html::element( 'input',
- array( 'class' => 'tp-aggregategroup-add-description' )
+ [ 'class' => 'tp-aggregategroup-add-description' ]
);
- $saveButton = Html::element( 'input', array(
+ $saveButton = Html::element( 'input', [
'type' => 'button',
'value' => $this->msg( 'tpt-aggregategroup-save' )->text(),
'id' => 'tpt-aggregategroups-save',
'class' => 'tp-aggregate-save-button'
- ) );
+ ] );
$newGroupDiv = Html::rawElement(
'div',
- array( 'class' => 'tpt-add-new-group hidden' ),
+ [ 'class' => 'tpt-add-new-group hidden' ],
"$newGroupNameLabel $newGroupName<br />" .
"$newGroupDescriptionLabel $newGroupDescription<br />$saveButton"
);
- $out->addHtml( $newGroupDiv );
+ $out->addHTML( $newGroupDiv );
}
}
@@ -213,17 +220,23 @@ class SpecialAggregateGroups extends TranslateSpecialPage {
* @return string
*/
protected function listSubgroups( AggregateMessageGroup $parent ) {
- $out = '';
-
$id = $this->htmlIdForGroup( $parent, 'mw-tpa-grouplist-' );
- $out = Html::openElement( 'ol', array( 'id' => $id ) );
+ $out = Html::openElement( 'ol', [ 'id' => $id ] );
// Not calling $parent->getGroups() because it has done filtering already
$subgroupIds = TranslateMetadata::getSubgroups( $parent->getId() );
// Get the respective groups and sort them
$subgroups = MessageGroups::getGroupsById( $subgroupIds );
- uasort( $subgroups, array( 'MessageGroups', 'groupLabelSort' ) );
+ uasort( $subgroups, [ 'MessageGroups', 'groupLabelSort' ] );
+
+ // Avoid potentially thousands of separate database queries
+ $lb = new LinkBatch();
+ foreach ( $subgroups as $group ) {
+ $lb->addObj( $group->getTitle() );
+ }
+ $lb->setCaller( __METHOD__ );
+ $lb->execute();
// Add missing invalid group ids back, not returned by getGroupsById
foreach ( $subgroupIds as $id ) {
@@ -236,22 +249,22 @@ class SpecialAggregateGroups extends TranslateSpecialPage {
$remove = '';
if ( $this->hasPermission ) {
$remove = Html::element( 'span',
- array(
+ [
'class' => 'tp-aggregate-remove-button',
'data-groupid' => $id,
- )
+ ]
);
}
if ( $group ) {
- $text = Linker::linkKnown( $group->getTitle() );
+ $text = $this->getLinkRenderer()->makeKnownLink( $group->getTitle() );
$note = MessageGroups::getPriority( $id );
} else {
$text = htmlspecialchars( $id );
$note = $this->msg( 'tpt-aggregategroup-invalid-group' )->escaped();
}
- $out .= Html::rawElement( 'li', array(), "$text$remove $note" );
+ $out .= Html::rawElement( 'li', [], "$text$remove $note" );
}
$out .= Html::closeElement( 'ol' );
diff --git a/MLEB/Translate/specials/SpecialImportTranslations.php b/MLEB/Translate/specials/SpecialImportTranslations.php
index 37f50137..fcdd1ace 100644
--- a/MLEB/Translate/specials/SpecialImportTranslations.php
+++ b/MLEB/Translate/specials/SpecialImportTranslations.php
@@ -5,7 +5,7 @@
* @file
* @author Niklas Laxström
* @author Siebrand Mazeland
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -14,7 +14,7 @@
*
* @ingroup SpecialPage TranslateSpecialPage
*/
-class SpecialImportTranslations extends TranslateSpecialPage {
+class SpecialImportTranslations extends SpecialPage {
/**
* Set up and fill some dependencies.
*/
@@ -22,8 +22,18 @@ class SpecialImportTranslations extends TranslateSpecialPage {
parent::__construct( 'ImportTranslations', 'translate-import' );
}
+ public function doesWrites() {
+ return true;
+ }
+
+ protected function getGroupName() {
+ return 'wiki';
+ }
+
/**
* Special page entry point.
+ * @param null|string $parameters
+ * @throws PermissionsError
*/
public function execute( $parameters ) {
$this->setHeaders();
@@ -87,7 +97,7 @@ class SpecialImportTranslations extends TranslateSpecialPage {
return;
}
- $importer = new MessageWebImporter( $this->getTitle(), $group, $code );
+ $importer = new MessageWebImporter( $this->getPageTitle(), $group, $code );
$alldone = $importer->execute( $messages );
if ( $alldone ) {
@@ -99,7 +109,7 @@ class SpecialImportTranslations extends TranslateSpecialPage {
* Checks for error state from the return value of loadFile and parseFile
* functions. Prints the error and the form and returns true if there is an
* error. Returns false and does nothing if there is no error.
- * @param $msg array
+ * @param array $msg
* @return bool
*/
protected function checkError( $msg ) {
@@ -125,29 +135,26 @@ class SpecialImportTranslations extends TranslateSpecialPage {
*/
protected function outputForm() {
$this->getOutput()->addModules( 'ext.translate.special.importtranslations' );
- TranslateUtils::addSpecialHelpLink(
- $this->getOutput(),
- 'Help:Extension:Translate/Off-line_translation'
- );
+ $this->getOutput()->addHelpLink( 'Help:Extension:Translate/Off-line_translation' );
/**
* Ugly but necessary form building ahead, ohoy
*/
$this->getOutput()->addHTML(
- Xml::openElement( 'form', array(
- 'action' => $this->getTitle()->getLocalUrl(),
+ Xml::openElement( 'form', [
+ 'action' => $this->getPageTitle()->getLocalURL(),
'method' => 'post',
'enctype' => 'multipart/form-data',
'id' => 'mw-translate-import',
- ) ) .
+ ] ) .
Html::hidden( 'token', $this->getUser()->getEditToken() ) .
- Html::hidden( 'title', $this->getTitle()->getPrefixedText() ) .
+ Html::hidden( 'title', $this->getPageTitle()->getPrefixedText() ) .
Xml::inputLabel(
$this->msg( 'translate-import-from-local' )->text(),
'upload-local', // name
'mw-translate-up-local-input', // id
50, // size
$this->getRequest()->getText( 'upload-local' ),
- array( 'type' => 'file' )
+ [ 'type' => 'file' ]
) .
Xml::submitButton( $this->msg( 'translate-import-load' )->text() ) .
Xml::closeElement( 'form' )
@@ -156,24 +163,24 @@ class SpecialImportTranslations extends TranslateSpecialPage {
/**
* Try to get the file data from any of the supported methods.
- * @param $filedata
+ * @param string &$filedata
* @return array
*/
protected function loadFile( &$filedata ) {
$filename = $this->getRequest()->getFileTempname( 'upload-local' );
if ( !is_uploaded_file( $filename ) ) {
- return array( 'ul-failed' );
+ return [ 'ul-failed' ];
}
$filedata = file_get_contents( $filename );
- return array( 'ok' );
+ return [ 'ok' ];
}
/**
* Try parsing file.
- * @param $data
+ * @param string $data
* @return array
*/
protected function parseFile( $data ) {
@@ -181,16 +188,16 @@ class SpecialImportTranslations extends TranslateSpecialPage {
* @todo Time to rethink the interface again?
* @var FileBasedMessageGroup $group
*/
- $group = MessageGroupBase::factory( array(
- 'FILES' => array(
+ $group = MessageGroupBase::factory( [
+ 'FILES' => [
'class' => 'GettextFFS',
'CtxtAsKey' => true,
- ),
- 'BASIC' => array(
+ ],
+ 'BASIC' => [
'class' => 'FileBasedMessageGroup',
'namespace' => -1,
- )
- ) );
+ ]
+ ] );
$ffs = new GettextFFS( $group );
$data = $ffs->readFromVariable( $data );
@@ -204,7 +211,7 @@ class SpecialImportTranslations extends TranslateSpecialPage {
* This should catch everything that is not a gettext file exported from us
*/
if ( !isset( $metadata['code'] ) || !isset( $metadata['group'] ) ) {
- return array( 'no-headers' );
+ return [ 'no-headers' ];
}
/**
@@ -212,10 +219,10 @@ class SpecialImportTranslations extends TranslateSpecialPage {
* unfortunately breaks submission.
*/
if ( isset( $metadata['warnings'] ) ) {
- return array( 'warnings', $this->getLanguage()->commaList( $metadata['warnings'] ) );
+ return [ 'warnings', $this->getLanguage()->commaList( $metadata['warnings'] ) ];
}
- return array( 'ok', $data );
+ return [ 'ok', $data ];
}
protected function setCachedData( $data ) {
diff --git a/MLEB/Translate/specials/SpecialLanguageStats.php b/MLEB/Translate/specials/SpecialLanguageStats.php
index 4c2e8c94..3fc58c22 100644
--- a/MLEB/Translate/specials/SpecialLanguageStats.php
+++ b/MLEB/Translate/specials/SpecialLanguageStats.php
@@ -5,8 +5,7 @@
* @file
* @author Siebrand Mazeland
* @author Niklas Laxström
- * @copyright Copyright © 2008-2013 Siebrand Mazeland, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -20,7 +19,7 @@
*
* @ingroup SpecialPage TranslateSpecialPage Stats
*/
-class SpecialLanguageStats extends TranslateSpecialPage {
+class SpecialLanguageStats extends SpecialPage {
/**
* @var StatsTable
*/
@@ -29,7 +28,7 @@ class SpecialLanguageStats extends TranslateSpecialPage {
/**
* @var Array
*/
- protected $targetValueName = array( 'code', 'language' );
+ protected $targetValueName = [ 'code', 'language' ];
/**
* Most of the displayed numbers added together at the bottom of the table.
@@ -37,13 +36,6 @@ class SpecialLanguageStats extends TranslateSpecialPage {
protected $totals;
/**
- * How long spend time calculating missing numbers, before
- * bailing out.
- * @var int
- */
- protected $timelimit = 2;
-
- /**
* Flag to set if nothing to show.
* @var bool
*/
@@ -85,7 +77,7 @@ class SpecialLanguageStats extends TranslateSpecialPage {
*
* @var array
*/
- protected $statsCounted = array();
+ protected $statsCounted = [];
/**
* @var array
@@ -103,10 +95,19 @@ class SpecialLanguageStats extends TranslateSpecialPage {
return true;
}
- function execute( $par ) {
+ protected function getGroupName() {
+ return 'wiki';
+ }
+
+ public function execute( $par ) {
$request = $this->getRequest();
$this->purge = $request->getVal( 'action' ) === 'purge';
+ if ( $this->purge && !$request->wasPosted() ) {
+ $this->showPurgeForm();
+ return;
+ }
+
$this->table = new StatsTable();
$this->setHeaders();
@@ -115,7 +116,6 @@ class SpecialLanguageStats extends TranslateSpecialPage {
$out = $this->getOutput();
$out->addModules( 'ext.translate.special.languagestats' );
- $out->addModuleStyles( 'ext.translate.messagetable' );
$params = explode( '/', $par );
@@ -145,21 +145,26 @@ class SpecialLanguageStats extends TranslateSpecialPage {
$this->noEmpty = $request->getBool( 'suppressempty', $this->noEmpty && !$submitted );
if ( !$this->including() ) {
- TranslateUtils::addSpecialHelpLink(
- $out,
- 'Help:Extension:Translate/Statistics_and_reporting'
- );
- $out->addHTML( $this->getForm() );
+ $out->addHelpLink( 'Help:Extension:Translate/Statistics_and_reporting' );
+ $this->addForm();
}
if ( $this->isValidValue( $this->target ) ) {
$this->outputIntroduction();
- $output = $this->getTable();
+
+ $stats = $this->loadStatistics( $this->target, MessageGroupStats::FLAG_CACHE_ONLY );
+ $output = $this->getTable( $stats );
if ( $this->incomplete ) {
$out->wrapWikiMsg(
"<div class='error'>$1</div>",
'translate-langstats-incomplete'
);
+
+ // $this->purge is only true if request was posted
+ DeferredUpdates::addCallableUpdate( function () {
+ $flags = $this->purge ? MessageGroupStats::FLAG_NO_CACHE : 0;
+ $this->loadStatistics( $this->target, $flags );
+ } );
}
if ( $this->nothing ) {
$out->wrapWikiMsg( "<div class='error'>$1</div>", 'translate-mgs-nothing' );
@@ -171,8 +176,18 @@ class SpecialLanguageStats extends TranslateSpecialPage {
}
/**
+ * Get stats
+ * @param string $target For which target to get stats
+ * @param int $flags See MessageGroupStats for possible flags
+ * @return array[]
+ */
+ protected function loadStatistics( $target, $flags ) {
+ return MessageGroupStats::forLanguage( $target, $flags );
+ }
+
+ /**
* Return the list of allowed values for target here.
- * @param $value
+ * @param string $value
* @return array
*/
protected function isValidValue( $value ) {
@@ -181,7 +196,9 @@ class SpecialLanguageStats extends TranslateSpecialPage {
return isset( $langs[$value] );
}
- /// Called when the target is unknown.
+ /**
+ * Called when the target is unknown.
+ */
protected function invalidTarget() {
$this->getOutput()->wrapWikiMsg(
"<div class='error'>$1</div>",
@@ -189,79 +206,71 @@ class SpecialLanguageStats extends TranslateSpecialPage {
);
}
+ protected function showPurgeForm() {
+ $formDescriptor[ 'intro' ] = [
+ 'type' => 'info',
+ 'vertical-label' => true,
+ 'raw' => true,
+ 'default' => $this->msg( 'confirm-purge-top' )->parse()
+ ];
+
+ $context = new DerivativeContext( $this->getContext() );
+ $requestValues = $this->getRequest()->getQueryValues();
+
+ HTMLForm::factory( 'ooui', $formDescriptor, $context )
+ ->setWrapperLegendMsg( 'confirm-purge-title' )
+ ->setSubmitTextMsg( 'confirm_purge_button' )
+ ->addHiddenFields( $requestValues )
+ ->show();
+ }
+
/**
- * HTML for the top form.
- * @return \string HTML
- * @todo duplicated code
+ * HTMLForm for the top form rendering.
*/
- protected function getForm() {
- global $wgScript;
-
- $out = Html::openElement( 'div' );
- $out .= Html::openElement( 'form', array( 'method' => 'get', 'action' => $wgScript ) );
- $out .= Html::hidden( 'title', $this->getTitle()->getPrefixedText() );
- $out .= Html::hidden( 'x', 'D' ); // To detect submission
- $out .= Html::openElement( 'fieldset' );
- $out .= Html::element(
- 'legend',
- array(),
- $this->msg( 'translate-language-code' )->text()
- );
- $out .= Html::openElement( 'table' );
+ protected function addForm() {
+ $formDescriptor[ 'language' ] = [
+ 'type' => 'text',
+ 'name' => 'language',
+ 'id' => 'language',
+ 'label' => $this->msg( 'translate-language-code-field-name' )->text(),
+ 'size' => 10,
+ 'default' => $this->target,
+ ];
+ $formDescriptor[ 'suppresscomplete' ] = [
+ 'type' => 'check',
+ 'label' => $this->msg( 'translate-suppress-complete' )->text(),
+ 'name' => 'suppresscomplete',
+ 'id' => 'suppresscomplete',
+ 'default' => $this->noComplete,
+ ];
+ $formDescriptor[ 'suppressempty' ] = [
+ 'type' => 'check',
+ 'label' => $this->msg( 'translate-ls-noempty' )->text(),
+ 'name' => 'suppressempty',
+ 'id' => 'suppressempty',
+ 'default' => $this->noEmpty,
+ ];
+
+ $context = new DerivativeContext( $this->getContext() );
+ $context->setTitle( $this->getPageTitle() ); // Remove subpage
+
+ $htmlForm = HTMLForm::factory( 'ooui', $formDescriptor, $context );
- $out .= Html::openElement( 'tr' );
- $out .= Html::openElement( 'td', array( 'class' => 'mw-label' ) );
- $out .= Xml::label(
- $this->msg( 'translate-language-code-field-name' )->text(),
- 'language'
- );
- $out .= Html::closeElement( 'td' );
- $out .= Html::openElement( 'td', array( 'class' => 'mw-input' ) );
- $out .= Xml::input( 'language', 10, $this->target, array( 'id' => 'language' ) );
- $out .= Html::closeElement( 'td' );
- $out .= Html::closeElement( 'tr' );
-
- $out .= Html::openElement( 'tr' );
- $out .= Html::openElement( 'td', array( 'colspan' => 2 ) );
- $out .= Xml::checkLabel(
- $this->msg( 'translate-suppress-complete' )->text(),
- 'suppresscomplete',
- 'suppresscomplete',
- $this->noComplete
- );
- $out .= Html::closeElement( 'td' );
- $out .= Html::closeElement( 'tr' );
-
- $out .= Html::openElement( 'tr' );
- $out .= Html::openElement( 'td', array( 'colspan' => 2 ) );
- $out .= Xml::checkLabel(
- $this->msg( 'translate-ls-noempty' )->text(),
- 'suppressempty',
- 'suppressempty',
- $this->noEmpty
- );
- $out .= Html::closeElement( 'td' );
- $out .= Html::closeElement( 'tr' );
-
- $out .= Html::openElement( 'tr' );
- $out .= Html::openElement( 'td', array( 'class' => 'mw-input', 'colspan' => 2 ) );
- $out .= Xml::submitButton( $this->msg( 'translate-ls-submit' )->text() );
- $out .= Html::closeElement( 'td' );
- $out .= Html::closeElement( 'tr' );
-
- $out .= Html::closeElement( 'table' );
- $out .= Html::closeElement( 'fieldset' );
/* Since these pages are in the tabgroup with Special:Translate,
- * it makes sense to retain the selected group/language parameter
- * on post requests even when not relevant to the current page. */
+ * it makes sense to retain the selected group/language parameter
+ * on post requests even when not relevant to the current page. */
$val = $this->getRequest()->getVal( 'group' );
if ( $val !== null ) {
- $out .= Html::hidden( 'group', $val );
+ $htmlForm->addHiddenField( 'group', $val );
}
- $out .= Html::closeElement( 'form' );
- $out .= Html::closeElement( 'div' );
- return $out;
+ $htmlForm
+ ->addHiddenField( 'x', 'D' ) // To detect submission
+ ->setMethod( 'get' )
+ ->setSubmitTextMsg( 'translate-ls-submit' )
+ ->setWrapperLegendMsg( 'translate-mgs-fieldset' )
+ ->prepareForm()
+ ->displayForm( false );
}
/**
@@ -273,14 +282,14 @@ class SpecialLanguageStats extends TranslateSpecialPage {
$this->getLanguage()->getCode()
);
- $rcInLangLink = Linker::link(
+ $rcInLangLink = $this->getLinkRenderer()->makeKnownLink(
SpecialPage::getTitleFor( 'Translate', '!recent' ),
- $this->msg( 'languagestats-recenttranslations' )->escaped(),
- array(),
- array(
+ $this->msg( 'languagestats-recenttranslations' )->text(),
+ [],
+ [
'action' => 'proofread',
'language' => $this->target
- )
+ ]
);
$out = $this->msg( 'languagestats-stats-for', $languageName )->rawParams( $rcInLangLink )
@@ -291,7 +300,7 @@ class SpecialLanguageStats extends TranslateSpecialPage {
/**
* If workflow states are configured, adds a workflow states column
*/
- function addWorkflowStatesColumn() {
+ protected function addWorkflowStatesColumn() {
global $wgTranslateWorkflowStates;
if ( $wgTranslateWorkflowStates ) {
@@ -300,8 +309,6 @@ class SpecialLanguageStats extends TranslateSpecialPage {
// An array where keys are state names and values are numbers
$this->table->addExtraColumn( $this->msg( 'translate-stats-workflow' ) );
}
-
- return;
}
protected function getWorkflowStateValue( $target ) {
@@ -311,7 +318,7 @@ class SpecialLanguageStats extends TranslateSpecialPage {
/**
* If workflow states are configured, adds a cell with the workflow state to the row,
* @param String $target Whose workflow state do we want, such as language code or group id.
- * @param String $state The workflow state id
+ * @param String $state The workflow state id
* @return string Html
*/
protected function getWorkflowStateCell( $target, $state ) {
@@ -360,24 +367,18 @@ class SpecialLanguageStats extends TranslateSpecialPage {
/**
* Returns the table itself.
- * @return \string HTML
+ * @param array $stats
+ * @return string HTML
*/
- function getTable() {
+ protected function getTable( $stats ) {
$table = $this->table;
$this->addWorkflowStatesColumn();
$out = '';
- MessageGroupStats::setTimeLimit( $this->timelimit );
- $cache = MessageGroupStats::forLanguage( $this->target );
-
- if ( $this->purge ) {
- MessageGroupStats::clearLanguage( $this->target );
- }
-
$structure = MessageGroups::getGroupStructure();
foreach ( $structure as $item ) {
- $out .= $this->makeGroupGroup( $item, $cache );
+ $out .= $this->makeGroupGroup( $item, $stats );
}
if ( $out ) {
@@ -400,12 +401,6 @@ class SpecialLanguageStats extends TranslateSpecialPage {
return '';
}
-
- /// @todo Allow extra message here, once total translated volume goes
- /// over a certain percentage? (former live hack at translatewiki)
- /// if ( $this->totals['2'] && ( $this->totals['1'] / $this->totals['2'] ) > 0.95 ) {
- /// $out .= $this->msg( 'translate-somekey' );
- /// }
}
/**
@@ -413,9 +408,9 @@ class SpecialLanguageStats extends TranslateSpecialPage {
* If $item is an array, meaning that the first group is an
* AggregateMessageGroup and the latter are its children, it will recurse
* and create rows for them too.
- * @param $item Array|MessageGroup
- * @param $cache Array Cache as returned by MessageGroupStats::forLanguage
- * @param $parent MessageGroup (do not use, used internally only)
+ * @param MessageGroup|MessageGroup[] $item
+ * @param array $cache Cache as returned by MessageGroupStats::forLanguage
+ * @param MessageGroup|null $parent MessageGroup (do not use, used internally only)
* @return string
*/
protected function makeGroupGroup( $item, array $cache, MessageGroup $parent = null ) {
@@ -441,7 +436,7 @@ class SpecialLanguageStats extends TranslateSpecialPage {
* is blacklisted or hidden by filters.
* @param MessageGroup $group
* @param array $cache
- * @param MessageGroup $parent
+ * @param MessageGroup|null $parent
* @return string
*/
protected function makeGroupRow( MessageGroup $group, array $cache,
@@ -466,35 +461,38 @@ class SpecialLanguageStats extends TranslateSpecialPage {
return '';
}
+ if ( $total === null ) {
+ $this->incomplete = true;
+ }
+
// Calculation of summary row values
- if ( !$group instanceof AggregateMessageGroup ) {
- if ( !isset( $this->statsCounted[$groupId] ) ) {
- $this->totals = MessageGroupStats::multiAdd( $this->totals, $stats );
- $this->statsCounted[$groupId] = true;
- }
+ if ( !$group instanceof AggregateMessageGroup &&
+ !isset( $this->statsCounted[$groupId] )
+ ) {
+ $this->totals = MessageGroupStats::multiAdd( $this->totals, $stats );
+ $this->statsCounted[$groupId] = true;
}
$state = $this->getWorkflowStateValue( $groupId );
+ // Place any state checks like $this->incomplete above this
$params = $stats;
$params[] = $state;
- $params[] = $groupId;
+ $params[] = md5( $groupId );
$params[] = $this->getLanguage()->getCode();
- $params[] = $this->target;
+ $params[] = md5( $this->target );
$cachekey = wfMemcKey( __METHOD__, implode( '-', $params ) );
$cacheval = wfGetCache( CACHE_ANYTHING )->get( $cachekey );
- if ( !$this->purge && is_string( $cacheval ) ) {
+ if ( is_string( $cacheval ) ) {
return $cacheval;
}
- $extra = array();
- if ( $total === null ) {
- $this->incomplete = true;
- } elseif ( $translated === $total ) {
- $extra = array( 'action' => 'proofread' );
+ $extra = [];
+ if ( $translated === $total ) {
+ $extra = [ 'action' => 'proofread' ];
}
- $rowParams = array();
+ $rowParams = [];
$rowParams['data-groupid'] = $groupId;
$rowParams['class'] = get_class( $group );
if ( $parent ) {
@@ -502,7 +500,7 @@ class SpecialLanguageStats extends TranslateSpecialPage {
}
$out = "\t" . Html::openElement( 'tr', $rowParams );
- $out .= "\n\t\t" . Html::rawElement( 'td', array(),
+ $out .= "\n\t\t" . Html::rawElement( 'td', [],
$this->table->makeGroupLink( $group, $this->target, $extra ) );
$out .= $this->table->makeNumberColumns( $stats );
$out .= $this->getWorkflowStateCell( $groupId, $state );
@@ -514,15 +512,15 @@ class SpecialLanguageStats extends TranslateSpecialPage {
}
protected function getWorkflowStates( $field = 'tgr_group', $filter = 'tgr_lang' ) {
- $db = wfGetDB( DB_SLAVE );
+ $db = wfGetDB( DB_REPLICA );
$res = $db->select(
'translate_groupreviews',
- array( 'tgr_state', $field ),
- array( $filter => $this->target ),
+ [ 'tgr_state', $field ],
+ [ $filter => $this->target ],
__METHOD__
);
- $states = array();
+ $states = [];
foreach ( $res as $row ) {
$states[$row->$field] = $row->tgr_state;
}
diff --git a/MLEB/Translate/specials/SpecialMagic.php b/MLEB/Translate/specials/SpecialMagic.php
index b63114f1..11d42249 100644
--- a/MLEB/Translate/specials/SpecialMagic.php
+++ b/MLEB/Translate/specials/SpecialMagic.php
@@ -5,8 +5,7 @@
* @file
* @author Niklas Laxström
* @author Siebrand Mazeland
- * @copyright Copyright © 2008-2013, Niklas Laxström, Siebrand Mazeland
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -15,7 +14,7 @@
*
* @ingroup SpecialPage TranslateSpecialPage
*/
-class SpecialMagic extends TranslateSpecialPage {
+class SpecialMagic extends SpecialPage {
const MODULE_MAGIC = 'words';
const MODULE_SPECIAL = 'special';
const MODULE_NAMESPACE = 'namespace';
@@ -23,23 +22,31 @@ class SpecialMagic extends TranslateSpecialPage {
/**
* List of supported modules
*/
- private $aModules = array(
+ private $aModules = [
self::MODULE_SPECIAL,
self::MODULE_NAMESPACE,
self::MODULE_MAGIC
- );
+ ];
/**
* Page options
*/
- private $options = array();
- private $defaults = array();
- private $nondefaults = array();
+ private $options = [];
+ private $defaults = [];
+ private $nondefaults = [];
public function __construct() {
parent::__construct( 'Magic' );
}
+ public function doesWrites() {
+ return true;
+ }
+
+ protected function getGroupName() {
+ return 'wiki';
+ }
+
/**
* @see SpecialPage::getDescription
*
@@ -58,10 +65,10 @@ class SpecialMagic extends TranslateSpecialPage {
global $wgScript;
$form = Xml::tags( 'form',
- array(
+ [
'action' => $wgScript,
'method' => 'get'
- ),
+ ],
'<table><tr><td>' .
$this->msg( 'translate-page-language' )->escaped() .
@@ -78,10 +85,10 @@ class SpecialMagic extends TranslateSpecialPage {
Xml::submitButton( $this->msg( 'translate-magic-submit' )->text() ) . ' ' .
Xml::submitButton(
$this->msg( 'translate-magic-cm-export' )->text(),
- array( 'name' => 'export' )
+ [ 'name' => 'export' ]
) .
'</td></tr></table>' .
- Html::hidden( 'title', $this->getTitle()->getPrefixedText() )
+ Html::hidden( 'title', $this->getPageTitle()->getPrefixedText() )
);
return $form;
@@ -105,17 +112,17 @@ class SpecialMagic extends TranslateSpecialPage {
}
protected function setup( $parameters ) {
- $defaults = array(
+ $defaults = [
/* str */'module' => '',
/* str */'language' => $this->getUser()->getOption( 'language' ),
/* bool */'export' => false,
/* bool */'savetodb' => false,
- );
+ ];
/**
* Place where all non default variables will end.
*/
- $nondefaults = array();
+ $nondefaults = [];
/**
* Temporary store possible values parsed from parameters.
@@ -145,16 +152,16 @@ class SpecialMagic extends TranslateSpecialPage {
/**
* The special page running code
+ *
+ * @param null|string $parameters
+ * @throws MWException|PermissionsError
*/
public function execute( $parameters ) {
$this->setup( $parameters );
$this->setHeaders();
$out = $this->getOutput();
- TranslateUtils::addSpecialHelpLink(
- $out,
- '//translatewiki.net/wiki/FAQ#Special:AdvancedTranslate', true
- );
+ $out->addHelpLink( '//translatewiki.net/wiki/FAQ#Special:AdvancedTranslate', true );
$out->addHTML( $this->getForm() );
@@ -177,12 +184,12 @@ class SpecialMagic extends TranslateSpecialPage {
}
$request = $this->getRequest();
- if ( $request->wasPosted() && $this->options['savetodb'] ) {
+ if ( $this->options['savetodb'] && $request->wasPosted() ) {
if ( !$this->getUser()->isAllowed( 'translate' ) ) {
throw new PermissionsError( 'translate' );
}
- $errors = array();
+ $errors = [];
$o->loadFromRequest( $request );
$o->validate( $errors );
if ( $errors ) {
@@ -208,14 +215,14 @@ class SpecialMagic extends TranslateSpecialPage {
return;
}
- $result = Xml::element( 'textarea', array( 'rows' => '30' ), $output );
+ $result = Xml::element( 'textarea', [ 'rows' => '30' ], $output );
$out->addHTML( $result );
return;
}
$out->addWikiMsg( 'translate-magic-help' );
- $errors = array();
+ $errors = [];
$o->validate( $errors );
if ( $errors ) {
$this->outputErrors( $errors );
diff --git a/MLEB/Translate/specials/SpecialManageGroups.php b/MLEB/Translate/specials/SpecialManageGroups.php
index 42abcef4..c266d33d 100644
--- a/MLEB/Translate/specials/SpecialManageGroups.php
+++ b/MLEB/Translate/specials/SpecialManageGroups.php
@@ -6,8 +6,7 @@
* @file
* @author Niklas Laxström
* @author Siebrand Mazeland
- * @copyright Copyright © 2009-2013, Niklas Laxström, Siebrand Mazeland
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -19,8 +18,7 @@
* @ingroup SpecialPage TranslateSpecialPage
* Rewritten in 2012-04-23
*/
-class SpecialManageGroups extends TranslateSpecialPage {
- const CHANGEFILE = 'translate_messagechanges.cdb';
+class SpecialManageGroups extends SpecialPage {
const RIGHT = 'translate-manage';
/**
@@ -28,23 +26,38 @@ class SpecialManageGroups extends TranslateSpecialPage {
*/
protected $diff;
+ /**
+ * @var string Path to the change cdb file.
+ */
+ protected $cdb;
+
public function __construct() {
// Anyone is allowed to see, but actions are restricted
parent::__construct( 'ManageMessageGroups' );
}
+ public function doesWrites() {
+ return true;
+ }
+
protected function getGroupName() {
return 'wiki';
}
+ function getDescription() {
+ return $this->msg( 'managemessagegroups' )->text();
+ }
+
public function execute( $par ) {
$this->setHeaders();
$out = $this->getOutput();
- $out->addModules( 'ext.translate.special.managegroups' );
- TranslateUtils::addSpecialHelpLink( $out, 'Help:Extension:Translate/Group_management' );
+ $out->addModuleStyles( 'ext.translate.special.managegroups' );
+ $out->addHelpLink( 'Help:Extension:Translate/Group_management' );
+
+ $name = $par ?: MessageChangeStorage::DEFAULT_NAME;
- $changefile = TranslateUtils::cacheFile( self::CHANGEFILE );
- if ( !file_exists( $changefile ) ) {
+ $this->cdb = MessageChangeStorage::getCdbPath( $name );
+ if ( !MessageChangeStorage::isValidCdbName( $name ) || !file_exists( $this->cdb ) ) {
// @todo Tell them when changes was last checked/process
// or how to initiate recheck.
$out->addWikiMsg( 'translate-smg-nochanges' );
@@ -75,12 +88,12 @@ class SpecialManageGroups extends TranslateSpecialPage {
* @return int
*/
protected function getLimit() {
- $limits = array(
+ $limits = [
1000, // Default max
ini_get( 'max_input_vars' ),
ini_get( 'suhosin.post.max_vars' ),
ini_get( 'suhosin.request.max_vars' )
- );
+ ];
// Ignore things not set
$limits = array_filter( $limits );
return min( $limits );
@@ -93,7 +106,7 @@ class SpecialManageGroups extends TranslateSpecialPage {
$this->msg( 'translate-smg-right' )->escaped()
);
- return Html::rawElement( 'div', array( 'class' => "mw-translate-smg-header" ), $text );
+ return Html::rawElement( 'div', [ 'class' => 'mw-translate-smg-header' ], $text );
}
protected function showChanges( $allowed, $limit ) {
@@ -105,10 +118,10 @@ class SpecialManageGroups extends TranslateSpecialPage {
$this->diff = $diff;
$out = $this->getOutput();
- $out->addHtml(
+ $out->addHTML(
'' .
- Html::openElement( 'form', array( 'method' => 'post' ) ) .
- Html::hidden( 'title', $this->getTitle()->getPrefixedText() ) .
+ Html::openElement( 'form', [ 'method' => 'post' ] ) .
+ Html::hidden( 'title', $this->getPageTitle()->getPrefixedText() ) .
Html::hidden( 'token', $this->getUser()->getEditToken() ) .
$this->getLegend()
);
@@ -116,8 +129,7 @@ class SpecialManageGroups extends TranslateSpecialPage {
// The above count as two
$limit = $limit - 2;
- $changefile = TranslateUtils::cacheFile( self::CHANGEFILE );
- $reader = CdbReader::open( $changefile );
+ $reader = \Cdb\Reader::open( $this->cdb );
$groups = unserialize( $reader->get( '#keys' ) );
foreach ( $groups as $id ) {
$group = MessageGroups::getGroup( $id );
@@ -126,7 +138,7 @@ class SpecialManageGroups extends TranslateSpecialPage {
}
$changes = unserialize( $reader->get( $id ) );
- $out->addHtml( Html::element( 'h2', array(), $group->getLabel() ) );
+ $out->addHTML( Html::element( 'h2', [], $group->getLabel() ) );
// Reduce page existance queries to one per group
$lb = new LinkBatch();
@@ -150,7 +162,7 @@ class SpecialManageGroups extends TranslateSpecialPage {
foreach ( $subchanges as $type => $messages ) {
foreach ( $messages as $params ) {
$change = $this->formatChange( $group, $code, $type, $params, $limit );
- $out->addHtml( $change );
+ $out->addHTML( $change );
if ( $limit <= 0 ) {
// We need to restrict the changes per page per form submission
@@ -163,14 +175,14 @@ class SpecialManageGroups extends TranslateSpecialPage {
}
}
- $attribs = array( 'type' => 'submit', 'class' => 'mw-translate-smg-submit' );
+ $attribs = [ 'type' => 'submit', 'class' => 'mw-translate-smg-submit' ];
if ( !$allowed ) {
$attribs['disabled'] = 'disabled';
$attribs['title'] = $this->msg( 'translate-smg-notallowed' )->text();
}
$button = Html::element( 'button', $attribs, $this->msg( 'translate-smg-submit' )->text() );
- $out->addHtml( $button );
- $out->addHtml( Html::closeElement( 'form' ) );
+ $out->addHTML( $button );
+ $out->addHTML( Html::closeElement( 'form' ) );
}
/**
@@ -178,7 +190,7 @@ class SpecialManageGroups extends TranslateSpecialPage {
* @param string $code
* @param string $type
* @param array $params
- * @param int $limit
+ * @param int &$limit
* @return string HTML
*/
protected function formatChange( MessageGroup $group, $code, $type, $params, &$limit ) {
@@ -186,7 +198,7 @@ class SpecialManageGroups extends TranslateSpecialPage {
$title = Title::makeTitleSafe( $group->getNamespace(), "$key/$code" );
$id = self::changeId( $group->getId(), $code, $type, $key );
- if ( $title && $title->exists() && $type === 'addition' ) {
+ if ( $title && $type === 'addition' && $title->exists() ) {
// The message has for some reason dropped out from cache
// or perhaps it is being reused. In any case treat it
// as a change for display, so the admin can see if
@@ -195,11 +207,13 @@ class SpecialManageGroups extends TranslateSpecialPage {
// forever and will prevent rebuilding the cache, which
// leads to many other annoying problems.
$type = 'change';
- } elseif ( $title && !$title->exists() && ( $type === 'deletion' || $type === 'change' ) ) {
+ } elseif ( $title && ( $type === 'deletion' || $type === 'change' ) && !$title->exists() ) {
return '';
}
$text = '';
+ $titleLink = $this->getLinkRenderer()->makeLink( $title );
+
if ( $type === 'deletion' ) {
$wiki = ContentHandler::getContentText( Revision::newFromTitle( $title )->getContent() );
$oldContent = ContentHandler::makeContent( $wiki, $title );
@@ -207,14 +221,14 @@ class SpecialManageGroups extends TranslateSpecialPage {
$this->diff->setContent( $oldContent, $newContent );
- $text = $this->diff->getDiff( Linker::link( $title ), '' );
+ $text = $this->diff->getDiff( $titleLink, '' );
} elseif ( $type === 'addition' ) {
$oldContent = ContentHandler::makeContent( '', $title );
$newContent = ContentHandler::makeContent( $params['content'], $title );
$this->diff->setContent( $oldContent, $newContent );
- $text = $this->diff->getDiff( '', Linker::link( $title ) );
+ $text = $this->diff->getDiff( '', $titleLink );
} elseif ( $type === 'change' ) {
$wiki = ContentHandler::getContentText( Revision::newFromTitle( $title )->getContent() );
@@ -237,7 +251,7 @@ class SpecialManageGroups extends TranslateSpecialPage {
$newContent = ContentHandler::makeContent( $params['content'], $title );
$this->diff->setContent( $oldContent, $newContent );
- $text .= $this->diff->getDiff( Linker::link( $title ), $actions );
+ $text .= $this->diff->getDiff( $titleLink, $actions );
}
$hidden = Html::hidden( $id, 1 );
@@ -250,21 +264,20 @@ class SpecialManageGroups extends TranslateSpecialPage {
return '';
}
- return Html::rawElement( 'div', array( 'class' => $classes ), $text );
+ return Html::rawElement( 'div', [ 'class' => $classes ], $text );
}
protected function processSubmit() {
$req = $this->getRequest();
$out = $this->getOutput();
- $jobs = array();
+ $jobs = [];
$jobs[] = MessageIndexRebuildJob::newJob();
- $changefile = TranslateUtils::cacheFile( self::CHANGEFILE );
- $reader = CdbReader::open( $changefile );
+ $reader = \Cdb\Reader::open( $this->cdb );
$groups = unserialize( $reader->get( '#keys' ) );
- $postponed = array();
+ $postponed = [];
foreach ( $groups as $groupId ) {
$group = MessageGroups::getGroup( $groupId );
@@ -301,17 +314,10 @@ class SpecialManageGroups extends TranslateSpecialPage {
JobQueueGroup::singleton()->push( $jobs );
$reader->close();
- rename( $changefile, $changefile . '-' . wfTimestamp() );
+ rename( $this->cdb, $this->cdb . '-' . wfTimestamp() );
if ( count( $postponed ) ) {
- $changefile = TranslateUtils::cacheFile( self::CHANGEFILE );
- $writer = CdbWriter::open( $changefile );
- $keys = array_keys( $postponed );
- $writer->set( '#keys', serialize( $keys ) );
- foreach ( $postponed as $groupId => $changes ) {
- $writer->set( $groupId, serialize( $changes ) );
- }
- $writer->close();
+ MessageChangeStorage::writeChanges( $postponed, $this->cdb );
$this->showChanges( true, $this->getLimit() );
} else {
$out->addWikiMsg( 'translate-smg-submitted' );
@@ -326,37 +332,39 @@ class SpecialManageGroups extends TranslateSpecialPage {
* Adds the task-based tabs on Special:Translate and few other special pages.
* Hook: SkinTemplateNavigation::SpecialPage
* @since 2012-05-14
+ * @param Skin $skin
+ * @param array &$tabs
+ * @return true
*/
- static function tabify( Skin $skin, array &$tabs ) {
+ public static function tabify( Skin $skin, array &$tabs ) {
$title = $skin->getTitle();
- list( $alias, ) = SpecialPageFactory::resolveAlias( $title->getText() );
+ list( $alias, ) = TranslateUtils::resolveSpecialPageAlias( $title->getText() );
- $pagesInGroup = array(
+ $pagesInGroup = [
'ManageMessageGroups' => 'namespaces',
'AggregateGroups' => 'namespaces',
'SupportedLanguages' => 'views',
'TranslationStats' => 'views',
- );
+ ];
if ( !isset( $pagesInGroup[$alias] ) ) {
return true;
}
- $skin->getOutput()->addModules( 'ext.translate.tabgroup' );
+ $skin->getOutput()->addModuleStyles( 'ext.translate.tabgroup' );
- $tabs['namespaces'] = array();
+ $tabs['namespaces'] = [];
foreach ( $pagesInGroup as $spName => $section ) {
- $spClass = SpecialPageFactory::getPage( $spName );
+ $spClass = TranslateUtils::getSpecialPage( $spName );
if ( $spClass === null ) {
continue; // Page explicitly disabled
}
- // @todo Change to getPageTitle() when lowest supported version is 1.23.
- $spTitle = $spClass->getTitle();
+ $spTitle = $spClass->getPageTitle();
- $tabs[$section][strtolower( $spName )] = array(
+ $tabs[$section][strtolower( $spName )] = [
'text' => $spClass->getDescription(),
- 'href' => $spTitle->getLocalUrl(),
+ 'href' => $spTitle->getLocalURL(),
'class' => $alias === $spName ? 'selected' : '',
- );
+ ];
}
return true;
diff --git a/MLEB/Translate/specials/SpecialManageTranslatorSandbox.php b/MLEB/Translate/specials/SpecialManageTranslatorSandbox.php
index b3bac886..28311452 100644
--- a/MLEB/Translate/specials/SpecialManageTranslatorSandbox.php
+++ b/MLEB/Translate/specials/SpecialManageTranslatorSandbox.php
@@ -5,7 +5,7 @@
* @file
* @author Niklas Laxström
* @author Amir E. Aharoni
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -13,11 +13,11 @@
*
* @ingroup SpecialPage TranslateSpecialPage
*/
-class SpecialManageTranslatorSandbox extends TranslateSpecialPage {
+class SpecialManageTranslatorSandbox extends SpecialPage {
/** @var TranslationStashStorage */
protected $stash;
- function __construct() {
+ public function __construct() {
global $wgTranslateUseSandbox;
parent::__construct(
'ManageTranslatorSandbox',
@@ -26,6 +26,10 @@ class SpecialManageTranslatorSandbox extends TranslateSpecialPage {
);
}
+ public function doesWrites() {
+ return true;
+ }
+
protected function getGroupName() {
return 'users';
}
@@ -34,6 +38,11 @@ class SpecialManageTranslatorSandbox extends TranslateSpecialPage {
$this->setHeaders();
$this->checkPermissions();
$out = $this->getOutput();
+ $out->addModuleStyles( [
+ 'ext.translate.special.managetranslatorsandbox.styles',
+ 'mediawiki.ui.button',
+ 'jquery.uls.grid'
+ ] );
$out->addModules( 'ext.translate.special.managetranslatorsandbox' );
$this->stash = new TranslationStashStorage( wfGetDB( DB_MASTER ) );
@@ -81,8 +90,8 @@ class SpecialManageTranslatorSandbox extends TranslateSpecialPage {
// to ensure the number of users is what the tests expect
$this->emptySandbox();
- $textUsernamePrefixes = array( 'Pupu', 'Orava' );
- $testLanguages = array( 'fi', 'uk', 'nl', 'he', 'bn' );
+ $textUsernamePrefixes = [ 'Pupu', 'Orava' ];
+ $testLanguages = [ 'fi', 'uk', 'nl', 'he', 'bn' ];
$testLanguagesCount = count( $testLanguages );
foreach ( $textUsernamePrefixes as $prefix ) {
@@ -97,13 +106,13 @@ class SpecialManageTranslatorSandbox extends TranslateSpecialPage {
$user = TranslateSandbox::addUser( $name, "$name@blackhole.io", 'porkkana' );
$user->setOption(
'translate-sandbox',
- FormatJson::encode( array(
- 'languages' => array( $testLanguages[$i] ),
+ FormatJson::encode( [
+ 'languages' => [ $testLanguages[$i] ],
'comment' => '',
- ) )
+ ] )
);
- $reminders = array();
+ $reminders = [];
for ( $reminderIndex = 0; $reminderIndex < $i; $reminderIndex++ ) {
$reminders[] = wfTimestamp() - $reminderIndex * $i * 10000;
}
@@ -134,10 +143,10 @@ class SpecialManageTranslatorSandbox extends TranslateSpecialPage {
$polyglotUser = TranslateSandbox::addUser( 'Kissa', 'kissa@blackhole.io', 'porkkana' );
$polyglotUser->setOption(
'translate-sandbox',
- FormatJson::encode( array(
+ FormatJson::encode( [
'languages' => $testLanguages,
'comment' => "I know some languages, and I'm a developer.",
- ) )
+ ] )
);
$polyglotUser->saveSettings();
for ( $polyglotLang = 0; $polyglotLang < $testLanguagesCount; $polyglotLang++ ) {
@@ -171,7 +180,15 @@ class SpecialManageTranslatorSandbox extends TranslateSpecialPage {
*/
protected function showPage() {
$out = $this->getOutput();
- $out->addHtml( <<<HTML
+
+ $nojs = Html::element(
+ 'div',
+ [ 'class' => 'tux-nojs errorbox' ],
+ $this->msg( 'tux-nojs' )->plain()
+ );
+ $out->addHTML( $nojs );
+
+ $out->addHTML( <<<HTML
<div class="grid">
<div class="row">
<div class="nine columns pane filter">{$this->makeFilter()}</div>
@@ -208,14 +225,14 @@ HTML;
}
protected function makeList() {
- $items = array();
- $requests = array();
+ $items = [];
+ $requests = [];
$users = TranslateSandbox::getUsers();
/** @var User $user */
foreach ( $users as $user ) {
$reminders = $user->getOption( 'translate-sandbox-reminders' );
- $reminders = $reminders ? explode( '|', $reminders ) : array();
+ $reminders = $reminders ? explode( '|', $reminders ) : [];
$remindersCount = count( $reminders );
if ( $remindersCount ) {
$lastReminderTimestamp = new MWTimestamp( end( $reminders ) );
@@ -226,7 +243,7 @@ HTML;
$lastReminderAgo = '';
}
- $requests[] = array(
+ $requests[] = [
'username' => $user->getName(),
'email' => $user->getEmail(),
'gender' => $user->getOption( 'gender' ),
@@ -236,11 +253,11 @@ HTML;
'userid' => $user->getId(),
'reminderscount' => $remindersCount,
'lastreminder' => $lastReminderAgo,
- );
+ ];
}
// Sort the requests based on translations and registration date
- usort( $requests, array( __CLASS__, 'translatorRequestSort' ) );
+ usort( $requests, [ __CLASS__, 'translatorRequestSort' ] );
foreach ( $requests as $request ) {
$items[] = $this->makeRequestItem( $request );
@@ -252,7 +269,7 @@ HTML;
<div class="row request-header">
<div class="four columns">
<button class="language-selector unselected">
- {$this->msg( "tsb-all-languages-button-label" )->escaped()}
+ {$this->msg( 'tsb-all-languages-button-label' )->escaped()}
</button>
</div>
<div class="five columns request-count"></div>
@@ -269,7 +286,7 @@ HTML;
protected function makeRequestItem( $request ) {
$requestdataEnc = htmlspecialchars( FormatJson::encode( $request ) );
$nameEnc = htmlspecialchars( $request['username'] );
- $nameEncForId = htmlspecialchars( Sanitizer::escapeId( $request['username'] ) );
+ $nameEncForId = htmlspecialchars( Sanitizer::escapeId( $request['username'], 'noninitial' ) );
$emailEnc = htmlspecialchars( $request['email'] );
$countEnc = htmlspecialchars( $request['translations'] );
$timestamp = new MWTimestamp( $request['registrationdate'] );
@@ -296,7 +313,7 @@ HTML;
* Sorts groups by descending order of number of translations,
* registration date and username
*
- * @since 1.23
+ * @since 2013.12
* @param array $a Translation request
* @param array $b Translation request
* @return int comparison result
diff --git a/MLEB/Translate/specials/SpecialMessageGroupStats.php b/MLEB/Translate/specials/SpecialMessageGroupStats.php
index 20545c11..cb8c0b63 100644
--- a/MLEB/Translate/specials/SpecialMessageGroupStats.php
+++ b/MLEB/Translate/specials/SpecialMessageGroupStats.php
@@ -5,8 +5,7 @@
* @file
* @author Niklas Laxström
* @author Siebrand Mazeland
- * @copyright Copyright © 2011-2013 Niklas Laxström, Siebrand Mazeland
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -17,7 +16,7 @@
*/
class SpecialMessageGroupStats extends SpecialLanguageStats {
/// Overwritten from SpecialLanguageStats
- protected $targetValueName = array( 'group' );
+ protected $targetValueName = [ 'group' ];
/// Overwritten from SpecialLanguageStats
protected $noComplete = false;
/// Overwritten from SpecialLanguageStats
@@ -37,8 +36,9 @@ class SpecialMessageGroupStats extends SpecialLanguageStats {
return $this->msg( 'translate-mgs-pagename' )->text();
}
- protected function getGroupName() {
- return 'wiki';
+ /// Overwritten from SpecialLanguageStats
+ protected function loadStatistics( $target, $flags = 0 ) {
+ return MessageGroupStats::forGroup( $target, $flags );
}
/// Overwritten from SpecialLanguageStats
@@ -64,111 +64,82 @@ class SpecialMessageGroupStats extends SpecialLanguageStats {
protected function invalidTarget() {
$this->getOutput()->wrapWikiMsg(
"<div class='error'>$1</div>",
- array( 'translate-mgs-invalid-group', $this->target )
+ [ 'translate-mgs-invalid-group', $this->target ]
);
}
/// Overwritten from SpecialLanguageStats
protected function outputIntroduction() {
- $group = $this->getRequest()->getVal( 'group' );
- $priorityLangs = TranslateMetadata::get( $group, 'prioritylangs' );
+ $priorityLangs = TranslateMetadata::get( $this->target, 'prioritylangs' );
if ( $priorityLangs ) {
$this->getOutput()->addWikiMsg( 'tpt-priority-languages', $priorityLangs );
}
}
/// Overwriten from SpecialLanguageStats
- function getform() {
- global $wgScript;
-
- $out = Html::openElement( 'div' );
- $out .= Html::openElement( 'form', array( 'method' => 'get', 'action' => $wgScript ) );
- $out .= Html::hidden( 'title', $this->getTitle()->getPrefixedText() );
- $out .= Html::hidden( 'x', 'D' ); // To detect submission
- $out .= Html::openElement( 'fieldset' );
- $out .= Html::element( 'legend', array(), $this->msg( 'translate-mgs-fieldset' )->text() );
- $out .= Html::openElement( 'table' );
-
- $out .= Html::openElement( 'tr' );
- $out .= Html::openElement( 'td', array( 'class' => 'mw-label' ) );
- $out .= Xml::label( $this->msg( 'translate-mgs-group' )->text(), 'group' );
- $out .= Html::closeElement( 'td' );
- $out .= Html::openElement( 'td', array( 'class' => 'mw-input' ) );
- $out .= $this->getGroupSelector( $this->target )->getHTML();
- $out .= Html::closeElement( 'td' );
- $out .= Html::closeElement( 'tr' );
-
- $out .= Html::openElement( 'tr' );
- $out .= Html::openElement( 'td', array( 'colspan' => 2 ) );
- $out .= Xml::checkLabel(
- $this->msg( 'translate-mgs-nocomplete' )->text(),
- 'suppresscomplete',
- 'suppresscomplete',
- $this->noComplete
- );
- $out .= Html::closeElement( 'td' );
- $out .= Html::closeElement( 'tr' );
-
- $out .= Html::openElement( 'tr' );
- $out .= Html::openElement( 'td', array( 'colspan' => 2 ) );
- $out .= Xml::checkLabel(
- $this->msg( 'translate-mgs-noempty' )->text(),
- 'suppressempty',
- 'suppressempty',
- $this->noEmpty
- );
- $out .= Html::closeElement( 'td' );
- $out .= Html::closeElement( 'tr' );
+ protected function addForm() {
+ $formDescriptor = [
+ 'select' => [
+ 'type' => 'select',
+ 'name' => 'group',
+ 'id' => 'group',
+ 'label' => $this->msg( 'translate-mgs-group' )->text(),
+ 'options' => $this->getGroupOptions(),
+ 'default' => $this->target
+ ],
+ 'nocomplete-check' => [
+ 'type' => 'check',
+ 'name' => 'suppresscomplete',
+ 'id' => 'suppresscomplete',
+ 'label' => $this->msg( 'translate-mgs-nocomplete' )->text(),
+ 'default' => $this->noComplete,
+ ],
+ 'noempty-check' => [
+ 'type' => 'check',
+ 'name' => 'suppressempty',
+ 'id' => 'suppressempty',
+ 'label' => $this->msg( 'translate-mgs-noempty' )->text(),
+ 'default' => $this->noEmpty,
+ ]
+ ];
+
+ $htmlForm = HTMLForm::factory( 'ooui', $formDescriptor, $this->getContext() );
- $out .= Html::openElement( 'tr' );
- $out .= Html::openElement( 'td', array( 'class' => 'mw-input', 'colspan' => 2 ) );
- $out .= Xml::submitButton( $this->msg( 'translate-mgs-submit' )->text() );
- $out .= Html::closeElement( 'td' );
- $out .= Html::closeElement( 'tr' );
-
- $out .= Html::closeElement( 'table' );
- $out .= Html::closeElement( 'fieldset' );
/* Since these pages are in the tabgroup with Special:Translate,
* it makes sense to retain the selected group/language parameter
* on post requests even when not relevant to the current page. */
$val = $this->getRequest()->getVal( 'language' );
if ( $val !== null ) {
- $out .= Html::hidden( 'language', $val );
+ $htmlForm->addHiddenField( 'language', $val );
}
- $out .= Html::closeElement( 'form' );
- $out .= Html::closeElement( 'div' );
- return $out;
+ $htmlForm
+ ->addHiddenField( 'x', 'D' ) // To detect submission
+ ->setMethod( 'get' )
+ ->setSubmitTextMsg( 'translate-mgs-submit' )
+ ->setWrapperLegendMsg( 'translate-mgs-fieldset' )
+ ->prepareForm()
+ ->displayForm( false );
}
- /**
- * Overwriten from SpecialLanguageStats
- *
- * @return string
- */
- function getTable() {
+ /// Overwritten from SpecialLanguageStats
+ protected function getTable( $stats ) {
$table = $this->table;
$this->addWorkflowStatesColumn();
$out = '';
- if ( $this->purge ) {
- MessageGroupStats::clearGroup( $this->target );
- }
-
- MessageGroupStats::setTimeLimit( $this->timelimit );
- $cache = MessageGroupStats::forGroup( $this->target );
-
+ $this->numberOfShownLanguages = 0;
$languages = array_keys(
TranslateUtils::getLanguageNames( $this->getLanguage()->getCode() )
);
sort( $languages );
- $this->filterPriorityLangs( $languages, $this->target, $cache );
+ $this->filterPriorityLangs( $languages, $this->target, $stats );
foreach ( $languages as $code ) {
if ( $table->isBlacklisted( $this->target, $code ) !== null ) {
continue;
}
- $out .= $this->makeRow( $code, $cache );
+ $out .= $this->makeRow( $code, $stats );
}
if ( $out ) {
@@ -177,7 +148,11 @@ class SpecialMessageGroupStats extends SpecialLanguageStats {
$out .= Html::closeElement( 'tbody' );
$out .= Html::openElement( 'tfoot' );
- $out .= $table->makeTotalRow( $this->msg( 'translate-mgs-totals' ), $this->totals );
+ $out .= $table->makeTotalRow(
+ $this->msg( 'translate-mgs-totals' )
+ ->numParams( $this->numberOfShownLanguages ),
+ $this->totals
+ );
$out .= Html::closeElement( 'tfoot' );
$out .= Html::closeElement( 'table' );
@@ -194,9 +169,9 @@ class SpecialMessageGroupStats extends SpecialLanguageStats {
* Filter an array of languages based on whether a priority set of
* languages present for the passed group. If priority languages are
* present, to that list add languages with more than 0% translation.
- * @param $languages Array of Languages to be filtered
- * @param $group
- * @param $cache
+ * @param array &$languages Array of Languages to be filtered
+ * @param string $group
+ * @param array $cache
*/
protected function filterPriorityLangs( &$languages, $group, $cache ) {
$filterLangs = TranslateMetadata::get( $group, 'prioritylangs' );
@@ -217,8 +192,8 @@ class SpecialMessageGroupStats extends SpecialLanguageStats {
}
/**
- * @param $code
- * @param $cache
+ * @param string $code
+ * @param array $cache
* @return string
*/
protected function makeRow( $code, $cache ) {
@@ -229,7 +204,7 @@ class SpecialMessageGroupStats extends SpecialLanguageStats {
if ( $total === null ) {
$this->incomplete = true;
- $extra = array();
+ $extra = [];
} else {
if ( $this->noComplete && $fuzzy === 0 && $translated === $total ) {
return '';
@@ -245,12 +220,12 @@ class SpecialMessageGroupStats extends SpecialLanguageStats {
}
if ( $translated === $total ) {
- $extra = array( 'action' => 'proofread' );
+ $extra = [ 'action' => 'proofread' ];
} else {
- $extra = array();
+ $extra = [];
}
}
-
+ $this->numberOfShownLanguages += 1;
$this->totals = MessageGroupStats::multiAdd( $this->totals, $stats );
$out = "\t" . Html::openElement( 'tr' );
@@ -265,8 +240,8 @@ class SpecialMessageGroupStats extends SpecialLanguageStats {
}
/**
- * @param $code
- * @param $params
+ * @param string $code
+ * @param array $params
* @return string
*/
protected function getMainColumnCell( $code, $params ) {
@@ -275,23 +250,26 @@ class SpecialMessageGroupStats extends SpecialLanguageStats {
$this->translate = SpecialPage::getTitleFor( 'Translate' );
}
- $queryParameters = $params + array(
+ $queryParameters = $params + [
'group' => $this->target,
'language' => $code
- );
+ ];
if ( isset( $this->names[$code] ) ) {
- $text = htmlspecialchars( "$code: {$this->names[$code]}" );
+ $text = "$code: {$this->names[$code]}";
} else {
- $text = htmlspecialchars( $code );
+ $text = $code;
}
- $link = Linker::link( $this->translate, $text, array(), $queryParameters );
+ $link = $this->getLinkRenderer()->makeKnownLink(
+ $this->translate,
+ $text,
+ [],
+ $queryParameters
+ );
- return Html::rawElement( 'td', array(), $link );
+ return Html::rawElement( 'td', [], $link );
}
- // @codingStandardsIgnoreStart PHP CodeSniffer warns "Useless method overriding
- // detected", but that's not the case.
/**
* @param string $field
* @param string $filter
@@ -299,24 +277,23 @@ class SpecialMessageGroupStats extends SpecialLanguageStats {
*/
protected function getWorkflowStates( $field = 'tgr_lang', $filter = 'tgr_group' ) {
return parent::getWorkflowStates( $field, $filter );
- } // @codingStandardsIgnoreEnd
+ }
/**
- * Creates a simple message group selector.
+ * Creates a simple message group options.
*
- * @param string $default Group id of the group chosen by default. Optional.
- * @return XmlSelect
+ * @return array $options
*/
- protected function getGroupSelector( $default = false ) {
+ protected function getGroupOptions() {
+ $options = [];
$groups = MessageGroups::getAllGroups();
- $selector = new XmlSelect( 'group', 'group', $default );
foreach ( $groups as $id => $class ) {
if ( MessageGroups::getGroup( $id )->exists() ) {
- $selector->addOption( $class->getLabel(), $id );
+ $options[$class->getLabel()] = $id;
}
}
- return $selector;
+ return $options;
}
}
diff --git a/MLEB/Translate/specials/SpecialMyLanguage.php b/MLEB/Translate/specials/SpecialMyLanguage.php
deleted file mode 100644
index c3e2505c..00000000
--- a/MLEB/Translate/specials/SpecialMyLanguage.php
+++ /dev/null
@@ -1,78 +0,0 @@
-<?php
-/**
- * Contains logic for special page Special:MyLanguage
- *
- * @file
- * @author Niklas Laxström
- * @author Siebrand Mazeland
- * @copyright Copyright © 2010-2013 Niklas Laxström, Siebrand Mazeland
- * @license GPL-2.0+
- */
-
-/**
- * Unlisted special page just to redirect the user to the translated version of
- * a page, if it exists.
- *
- * Usage: [[Special:MyLanguage/Page name|link text]]
- *
- * @ingroup SpecialPage TranslateSpecialPage
- */
-class SpecialMyLanguage extends TranslateSpecialPage {
- public function __construct() {
- parent::__construct( 'MyLanguage' );
- }
-
- public function isListed() {
- return false;
- }
-
- /// Only takes arguments from $par
- public function execute( $par ) {
- $title = $this->findTitle( $par );
- // Go to the main page if given invalid title.
- if ( !$title ) {
- $title = Title::newMainPage();
- }
-
- $this->getOutput()->redirect( $title->getLocalURL() );
- }
-
- /**
- * Assuming the user's interface language is fi. Given input Page, it
- * returns Page/fi if it exists, otherwise Page. Given input Page/de,
- * it returns Page/fi if it exists, otherwise Page/de if it exists,
- * otherwise Page.
- * @param $par
- * @return Title|null
- */
- protected function findTitle( $par ) {
- global $wgLanguageCode;
- // base = title without language code suffix
- // provided = the title as it was given
- $base = $provided = Title::newFromText( $par );
-
- if ( strpos( $par, '/' ) !== false ) {
- $pos = strrpos( $par, '/' );
- $basepage = substr( $par, 0, $pos );
- $code = substr( $par, $pos + 1 );
- $codes = Language::fetchLanguageNames();
- if ( isset( $codes[$code] ) ) {
- $base = Title::newFromText( $basepage );
- }
- }
-
- if ( !$base ) {
- return null;
- }
-
- $uiCode = $this->getLanguage()->getCode();
- $proposed = Title::newFromText( $base->getPrefixedText() . "/$uiCode" );
- if ( $uiCode !== $wgLanguageCode && $proposed && $proposed->exists() ) {
- return $proposed;
- } elseif ( $provided && $provided->exists() ) {
- return $provided;
- } else {
- return $base;
- }
- }
-}
diff --git a/MLEB/Translate/specials/SpecialPageMigration.php b/MLEB/Translate/specials/SpecialPageMigration.php
deleted file mode 100644
index 098c056f..00000000
--- a/MLEB/Translate/specials/SpecialPageMigration.php
+++ /dev/null
@@ -1,58 +0,0 @@
-<?php
-/**
- * Contains code for special page Special:PageMigration
- *
- * @file
- * @author Pratik Lahoti
- * @copyright Copyright © 2014-2015 Pratik Lahoti
- * @license GPL-2.0+
- */
-
-class SpecialPageMigration extends SpecialPage {
- function __construct() {
- parent::__construct( 'PageMigration', 'pagetranslation' );
- }
-
- function execute( $par ) {
- $request = $this->getRequest();
- $output = $this->getOutput();
- $this->setHeaders();
- $this->checkPermissions();
- $output->addModules( 'ext.translate.special.pagemigration' );
- $output->addModuleStyles( 'jquery.uls.grid' );
- # Get request data from, e.g.
- $param = $request->getText( 'param' );
- # Do stuff
- # ...
- $out = '';
- $out .= Html::openElement( 'div', array( 'class' => 'grid' ) );
- $out .= Html::openElement( 'div', array( 'class' => 'mw-tpm-sp-error row',
- 'id' => 'mw-tpm-sp-error-div' ) );
- $out .= Html::element( 'div',
- array( 'class' => 'mw-tpm-sp-error__message five columns hide' ) );
- $out .= Html::closeElement( 'div' );
- $out .= Html::openElement( 'form', array( 'class' => 'mw-tpm-sp-form row',
- 'id' => 'mw-tpm-sp-primary-form' ) );
- $out .= Html::element( 'input', array( 'id' => 'pm-summary', 'type' => 'hidden',
- 'value' => $this->msg( 'pm-summary-import' )->inContentLanguage()->text() ) );
- $out .= Html::element( 'input', array( 'id' => 'title', 'class' => 'mw-searchInput',
- 'placeholder' => $this->msg( 'pm-pagename-placeholder' )->text() ) );
- $out .= Html::element( 'input', array( 'id' => 'language', 'type' => 'text',
- 'placeholder' => $this->msg( 'pm-langcode-placeholder' )->text() ) );
- $out .= Html::element( 'input', array( 'id' => 'action-import',
- 'class' => 'mw-ui-button mw-ui-primary', 'type' => 'button',
- 'value' => $this->msg( 'pm-import-button-label' )->text() ) );
- $out .= Html::element( 'input', array( 'id' => 'action-save',
- 'class' => 'mw-ui-button mw-ui-constructive hide', 'type' => 'button',
- 'value' => $this->msg( 'pm-savepages-button-label' )->text() ) );
- $out .= Html::element( 'input', array( 'id' => 'action-cancel',
- 'class' => 'mw-ui-button mw-ui-quiet hide', 'type' => 'button',
- 'value' => $this->msg( 'pm-cancel-button-label' )->text() ) );
- $out .= Html::closeElement( 'form' );
- $out .= Html::openElement( 'div', array( 'class' => 'mw-tpm-sp-unit-listing' ) );
- $out .= Html::closeElement( 'div' );
- $out .= Html::closeElement( 'div' );
-
- $output->addHTML( $out );
- }
-}
diff --git a/MLEB/Translate/specials/SpecialPagePreparation.php b/MLEB/Translate/specials/SpecialPagePreparation.php
deleted file mode 100644
index aa91cc9b..00000000
--- a/MLEB/Translate/specials/SpecialPagePreparation.php
+++ /dev/null
@@ -1,57 +0,0 @@
-<?php
-/**
- * Contains code for special page Special:PagePreparation
- *
- * @file
- * @author Pratik Lahoti
- * @copyright Copyright © 2014 Pratik Lahoti
- * @license GPL-2.0+
- */
-
-class SpecialPagePreparation extends SpecialPage {
- function __construct() {
- parent::__construct( 'PagePreparation', 'pagetranslation' );
- }
-
- function execute( $par ) {
- $request = $this->getRequest();
- $output = $this->getOutput();
- $this->setHeaders();
- $this->checkPermissions();
-
- $inputValue = htmlspecialchars( $request->getText( 'page', $par ) );
- $pagenamePlaceholder = $this->msg( 'pp-pagename-placeholder' )->escaped();
- $prepareButtonValue = $this->msg( 'pp-prepare-button-label' )->escaped();
- $saveButtonValue = $this->msg( 'pp-save-button-label' )->escaped();
- $cancelButtonValue = $this->msg( 'pp-cancel-button-label' )->escaped();
- $summaryValue = $this->msg( 'pp-save-summary' )->inContentLanguage()->escaped();
- $output->addModules( 'ext.translate.special.pagepreparation' );
- $output->addModuleStyles( 'jquery.uls.grid' );
-
- $out = '';
- $diff = new DifferenceEngine( $this->getContext() );
- $diffHeader = $diff->addHeader( " ", $this->msg( 'pp-diff-old-header' )->escaped(),
- $this->msg( 'pp-diff-new-header' )->escaped() );
-
- $out = <<<HTML
-<div class="grid">
- <form class="mw-tpp-sp-form row" name="mw-tpp-sp-input-form" action="">
- <input id="pp-summary" type="hidden" value="{$summaryValue}" />
- <input name="page" id="page" class="mw-searchInput mw-ui-input"
- placeholder="{$pagenamePlaceholder}" value="{$inputValue}"/>
- <button id="action-prepare" class="mw-ui-button mw-ui-primary" type="button">
- {$prepareButtonValue}</button>
- <button id="action-save" class="mw-ui-button mw-ui-constructive hide" type="button">
- {$saveButtonValue}</button>
- <button id="action-cancel" class="mw-ui-button mw-ui-quiet hide" type="button">
- {$cancelButtonValue}</button>
- </form>
- <div class="messageDiv hide"></div>
- <div class="divDiff hide">
- {$diffHeader}
- </div>
-</div>
-HTML;
- $output->addHTML( $out );
- }
-}
diff --git a/MLEB/Translate/specials/SpecialSearchTranslations.php b/MLEB/Translate/specials/SpecialSearchTranslations.php
index 945d060b..8b2f476b 100644
--- a/MLEB/Translate/specials/SpecialSearchTranslations.php
+++ b/MLEB/Translate/specials/SpecialSearchTranslations.php
@@ -4,8 +4,7 @@
*
* @file
* @author Niklas Laxström
- * @copyright Copyright © 2013 Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -13,7 +12,7 @@
*
* @ingroup SpecialPage TranslateSpecialPage
*/
-class SpecialSearchTranslations extends TranslateSpecialPage {
+class SpecialSearchTranslations extends SpecialPage {
/** @var FormOptions */
protected $opts;
@@ -24,7 +23,7 @@ class SpecialSearchTranslations extends TranslateSpecialPage {
* don't contain any chars that are escaped in html.
* @var array
*/
- protected $hl = array();
+ protected $hl = [];
/**
* How many search results to display per page
@@ -34,10 +33,10 @@ class SpecialSearchTranslations extends TranslateSpecialPage {
public function __construct() {
parent::__construct( 'SearchTranslations' );
- $this->hl = array(
+ $this->hl = [
TranslateUtils::getPlaceholder(),
TranslateUtils::getPlaceholder(),
- );
+ ];
}
public function setHeaders() {
@@ -52,6 +51,7 @@ class SpecialSearchTranslations extends TranslateSpecialPage {
}
public function execute( $par ) {
+ global $wgLanguageCode;
$this->setHeaders();
$this->checkPermissions();
@@ -61,13 +61,24 @@ class SpecialSearchTranslations extends TranslateSpecialPage {
}
$out = $this->getOutput();
+ $out->addModuleStyles( 'jquery.uls.grid' );
+ $out->addModuleStyles( 'ext.translate.special.searchtranslations.styles' );
+ $out->addModuleStyles( 'ext.translate.special.translate.styles' );
+ $out->addModuleStyles( [ 'mediawiki.ui.button', 'mediawiki.ui.input', 'mediawiki.ui.checkbox' ] );
$out->addModules( 'ext.translate.special.searchtranslations' );
+ $out->addModules( 'ext.translate.special.searchtranslations.operatorsuggest' );
+ $out->addHelpLink( 'Help:Extension:Translate#searching' );
+ $out->addJsConfigVars( 'wgTranslateLanguages', TranslateUtils::getLanguageNames( null ) );
$this->opts = $opts = new FormOptions();
$opts->add( 'query', '' );
+ $opts->add( 'sourcelanguage', $wgLanguageCode );
$opts->add( 'language', '' );
$opts->add( 'group', '' );
$opts->add( 'grouppath', '' );
+ $opts->add( 'filter', '' );
+ $opts->add( 'match', '' );
+ $opts->add( 'case', '' );
$opts->add( 'limit', $this->limit );
$opts->add( 'offset', 0 );
@@ -81,41 +92,88 @@ class SpecialSearchTranslations extends TranslateSpecialPage {
return;
}
+ $options = $params = $opts->getAllValues();
+ $filter = $opts->getValue( 'filter' );
try {
- $resultset = $server->search( $queryString, $opts, $this->hl );
+ if ( $opts->getValue( 'language' ) === '' ) {
+ $options['language'] = $this->getLanguage()->getCode();
+ }
+ $translationSearch = new CrossLanguageTranslationSearchQuery( $options, $server );
+ if ( in_array( $filter, $translationSearch->getAvailableFilters() ) ) {
+ $opts->setValue( 'language', $options['language'] );
+ $documents = $translationSearch->getDocuments();
+ $total = $translationSearch->getTotalHits();
+ $resultset = $translationSearch->getResultSet();
+ } else {
+ $resultset = $server->search( $queryString, $params, $this->hl );
+ $documents = $server->getDocuments( $resultset );
+ $total = $server->getTotalHits( $resultset );
+ }
} catch ( TTMServerException $e ) {
- error_log( 'Translation search server unavailable:' . $e->getMessage() );
+ error_log( 'Translation search server unavailable: ' . $e->getMessage() );
throw new ErrorPageError( 'tux-sst-solr-offline-title', 'tux-sst-solr-offline-body' );
}
// Part 1: facets
$facets = $server->getFacets( $resultset );
+ $facetHtml = '';
- $facetHtml = Html::element( 'div',
- array( 'class' => 'row facet languages',
- 'data-facets' => FormatJson::encode( $this->getLanguages( $facets['language'] ) ),
- 'data-language' => $opts->getValue( 'language' ),
- ),
- $this->msg( 'tux-sst-facet-language' )
- );
+ if ( $facets['language'] !== [] ) {
+ if ( $filter !== '' ) {
+ $facets['language'] = array_merge(
+ $facets['language'],
+ [ $opts->getValue( 'language' ) => $total ]
+ );
+ }
+ $facetHtml = Html::element( 'div',
+ [ 'class' => 'row facet languages',
+ 'data-facets' => FormatJson::encode( $this->getLanguages( $facets['language'] ) ),
+ 'data-language' => $opts->getValue( 'language' ),
+ ],
+ $this->msg( 'tux-sst-facet-language' )->text()
+ );
+ }
- $facetHtml .= Html::element( 'div',
- array( 'class' => 'row facet groups',
- 'data-facets' => FormatJson::encode( $this->getGroups( $facets['group'] ) ),
- 'data-group' => $opts->getValue( 'group' ) ),
- $this->msg( 'tux-sst-facet-group' )
- );
+ if ( $facets['group'] !== [] ) {
+ $facetHtml .= Html::element( 'div',
+ [ 'class' => 'row facet groups',
+ 'data-facets' => FormatJson::encode( $this->getGroups( $facets['group'] ) ),
+ 'data-group' => $opts->getValue( 'group' ) ],
+ $this->msg( 'tux-sst-facet-group' )->text()
+ );
+ }
// Part 2: results
$resultsHtml = '';
- $documents = $server->getDocuments( $resultset );
+
+ $title = Title::newFromText( $queryString );
+ if ( $title && !in_array( $filter, $translationSearch->getAvailableFilters() ) ) {
+ $handle = new MessageHandle( $title );
+ $code = $handle->getCode();
+ $language = $opts->getValue( 'language' );
+ if ( $code !== '' && $code !== $language && $handle->isValid() ) {
+ $dataProvider = new TranslationAidDataProvider( $handle );
+ $aid = new CurrentTranslationAid(
+ $handle->getGroup(),
+ $handle,
+ $this->getContext(),
+ $dataProvider
+ );
+ $document['wiki'] = wfWikiID();
+ $document['localid'] = $handle->getTitleForBase()->getPrefixedText();
+ $document['content'] = $aid->getData()['value'];
+ $document['language'] = $handle->getCode();
+ array_unshift( $documents, $document );
+ $total++;
+ }
+ }
foreach ( $documents as $document ) {
$text = $document['content'];
$text = TranslateUtils::convertWhiteSpaceToHTML( $text );
list( $pre, $post ) = $this->hl;
- $text = str_replace( $pre, '<strong class="tux-highlight">', $text );
+ $text = str_replace( $pre, '<strong class="tux-search-highlight">', $text );
$text = str_replace( $post, '</strong>', $text );
$title = Title::newFromText( $document['localid'] . '/' . $document['language'] );
@@ -124,107 +182,118 @@ class SpecialSearchTranslations extends TranslateSpecialPage {
continue;
}
- $resultAttribs = array(
+ $resultAttribs = [
'class' => 'row tux-message',
'data-title' => $title->getPrefixedText(),
'data-language' => $document['language'],
- );
+ ];
$handle = new MessageHandle( $title );
- $edit = '';
if ( $handle->isValid() ) {
- $groupId = $handle->getGroup()->getId();
- $helpers = new TranslationHelpers( $title, $groupId );
- $resultAttribs['data-definition'] = $helpers->getDefinition();
- $resultAttribs['data-translation'] = $helpers->getTranslation();
- $resultAttribs['data-group'] = $groupId;
-
- $uri = wfAppendQuery( $document['uri'], array( 'action' => 'edit' ) );
- $link = Html::element( 'a', array(
- 'href' => $uri,
- ), $this->msg( 'tux-sst-edit' )->text() );
- $edit = Html::rawElement(
- 'div',
- array( 'class' => 'row tux-edit tux-message-item' ),
- $link
+ $uri = TranslateUtils::getEditorUrl( $handle );
+ $link = Html::element(
+ 'a',
+ [ 'href' => $uri ],
+ $this->msg( 'tux-sst-edit' )->text()
+ );
+ } else {
+ $url = wfParseUrl( $document['uri'] );
+ $domain = $url['host'];
+ $link = Html::element(
+ 'a',
+ [ 'href' => $document['uri'] ],
+ $this->msg( 'tux-sst-view-foreign', $domain )->text()
);
}
+ $access = Html::rawElement(
+ 'div',
+ [ 'class' => 'row tux-edit tux-message-item' ],
+ $link
+ );
+
$titleText = $title->getPrefixedText();
- $titleAttribs = array(
+ $titleAttribs = [
'class' => 'row tux-title',
'dir' => 'ltr',
- );
+ ];
- $textAttribs = array(
+ $language = Language::factory( $document['language'] );
+ $textAttribs = [
'class' => 'row tux-text',
- 'lang' => wfBCP47( $document['language'] ),
- 'dir' => Language::factory( $document['language'] )->getDir(),
- );
+ 'lang' => $language->getHtmlCode(),
+ 'dir' => $language->getDir(),
+ ];
$resultsHtml = $resultsHtml
. Html::openElement( 'div', $resultAttribs )
. Html::rawElement( 'div', $textAttribs, $text )
. Html::element( 'div', $titleAttribs, $titleText )
- . $edit
+ . $access
. Html::closeElement( 'div' );
}
- $resultsHtml .= Html::rawElement( 'hr', array( 'class' => 'tux-pagination-line' ) );
+ $resultsHtml .= Html::rawElement( 'hr', [ 'class' => 'tux-pagination-line' ] );
$prev = $next = '';
- $total = $server->getTotalHits( $resultset );
$offset = $this->opts->getValue( 'offset' );
$params = $this->opts->getChangedValues();
if ( $total - $offset > $this->limit ) {
- $newParams = array( 'offset' => $offset + $this->limit ) + $params;
- $attribs = array(
+ $newParams = [ 'offset' => $offset + $this->limit ] + $params;
+ $attribs = [
'class' => 'mw-ui-button pager-next',
- 'href' => $this->getTitle()->getLocalUrl( $newParams ),
- );
+ 'href' => $this->getPageTitle()->getLocalURL( $newParams ),
+ ];
$next = Html::element( 'a', $attribs, $this->msg( 'tux-sst-next' )->text() );
}
if ( $offset ) {
- $newParams = array( 'offset' => max( 0, $offset - $this->limit ) ) + $params;
- $attribs = array(
+ $newParams = [ 'offset' => max( 0, $offset - $this->limit ) ] + $params;
+ $attribs = [
'class' => 'mw-ui-button pager-prev',
- 'href' => $this->getTitle()->getLocalUrl( $newParams ),
- );
+ 'href' => $this->getPageTitle()->getLocalURL( $newParams ),
+ ];
$prev = Html::element( 'a', $attribs, $this->msg( 'tux-sst-prev' )->text() );
}
- $resultsHtml .= Html::rawElement( 'div', array( 'class' => 'tux-pagination-links' ),
+ $resultsHtml .= Html::rawElement( 'div', [ 'class' => 'tux-pagination-links' ],
"$prev $next"
);
$search = $this->getSearchInput( $queryString );
$count = $this->msg( 'tux-sst-count' )->numParams( $total );
- $this->showSearch( $search, $count, $facetHtml, $resultsHtml );
+ $this->showSearch( $search, $count, $facetHtml, $resultsHtml, $total );
}
protected function getLanguages( array $facet ) {
- $output = array();
+ $output = [];
$nondefaults = $this->opts->getChangedValues();
$selected = $this->opts->getValue( 'language' );
+ $filter = $this->opts->getValue( 'filter' );
foreach ( $facet as $key => $value ) {
- if ( $key === $selected ) {
+ if ( $filter !== '' && $key === $selected ) {
+ unset( $nondefaults['language'] );
+ unset( $nondefaults['filter'] );
+ } elseif ( $filter !== '' ) {
+ $nondefaults['language'] = $key;
+ $nondefaults['filter'] = $filter;
+ } elseif ( $key === $selected ) {
unset( $nondefaults['language'] );
} else {
$nondefaults['language'] = $key;
}
- $url = $this->getTitle()->getLocalUrl( $nondefaults );
+ $url = $this->getPageTitle()->getLocalURL( $nondefaults );
$value = $this->getLanguage()->formatNum( $value );
- $output[$key] = array(
+ $output[$key] = [
'count' => $value,
'url' => $url
- );
+ ];
}
return $output;
@@ -236,7 +305,7 @@ class SpecialSearchTranslations extends TranslateSpecialPage {
}
protected function makeGroupFacetRows( array $groups, $counts, $level = 0, $pathString = '' ) {
- $output = array();
+ $output = [];
$nondefaults = $this->opts->getChangedValues();
$selected = $this->opts->getValue( 'group' );
@@ -248,7 +317,7 @@ class SpecialSearchTranslations extends TranslateSpecialPage {
if ( is_array( $mixed ) ) {
$group = array_shift( $subgroups );
} else {
- $subgroups = array();
+ $subgroups = [];
}
$id = $group->getId();
@@ -266,13 +335,12 @@ class SpecialSearchTranslations extends TranslateSpecialPage {
}
$value = isset( $counts[$id] ) ? $counts[$id] : 0;
- $count = $this->getLanguage()->formatNum( $value );
- $output[$id] = array(
+ $output[$id] = [
'id' => $id,
- 'count' => $count,
+ 'count' => $value,
'label' => $group->getLabel(),
- );
+ ];
if ( isset( $path[$level] ) && $path[$level] === $id ) {
$output[$id]['groups'] = $this->makeGroupFacetRows(
@@ -287,15 +355,40 @@ class SpecialSearchTranslations extends TranslateSpecialPage {
return $output;
}
- protected function showSearch( $search, $count, $facets, $results ) {
- $this->getOutput()->addHtml( <<<HTML
+ protected function showSearch( $search, $count, $facets, $results, $total ) {
+ $messageSelector = $this->messageSelector();
+ $this->getOutput()->addHTML( <<<HTML
<div class="grid tux-searchpage">
- <div class="row searchinput">
- <div class="nine columns offset-by-three">$search</div>
- </div>
- <div class="row count">
- <div class="nine columns offset-by-three">$count</div>
+ <div class="row tux-searchboxform">
+ <div class="tux-search-tabs offset-by-three">$messageSelector</div>
+ <div class="row tux-search-options">
+ <div class="offset-by-three nine columns tux-search-inputs">
+ <div class="row searchinput">$search</div>
+ <div class="row count">$count</div>
+ </div>
+ </div>
</div>
+HTML
+ );
+
+ $query = trim( $this->opts->getValue( 'query' ) );
+ $hasSpace = preg_match( '/\s/', $query );
+ $match = $this->opts->getValue( 'match' );
+ $size = 100;
+ if ( $total > $size && $match !== 'all' && $hasSpace ) {
+ $params = $this->opts->getChangedValues();
+ $params = [ 'match' => 'all' ] + $params;
+ $linkText = $this->msg( 'tux-sst-link-all-match' )->text();
+ $link = $this->getPageTitle()->getFullURL( $params );
+ $link = "<span class='plainlinks'>[$link $linkText]</span>";
+
+ $this->getOutput()->wrapWikiMsg(
+ '<div class="successbox">$1</div>',
+ [ 'tux-sst-match-message', $link ]
+ );
+ }
+
+ $this->getOutput()->addHTML( <<<HTML
<div class="row searchcontent">
<div class="three columns facets">$facets</div>
<div class="nine columns results">$results</div>
@@ -307,7 +400,7 @@ HTML
protected function showEmptySearch() {
$search = $this->getSearchInput( '' );
- $this->getOutput()->addHtml( <<<HTML
+ $this->getOutput()->addHTML( <<<HTML
<div class="grid tux-searchpage">
<div class="row searchinput">
<div class="nine columns offset-by-three">$search</div>
@@ -317,21 +410,153 @@ HTML
);
}
+ /**
+ * Build ellipsis to select options
+ * @param string $key
+ * @param string $value
+ * @return string
+ */
+ protected function ellipsisSelector( $key, $value ) {
+ $nondefaults = $this->opts->getChangedValues();
+ $taskParams = [ 'filter' => $value ] + $nondefaults;
+ ksort( $taskParams );
+ $href = $this->getPageTitle()->getLocalURL( $taskParams );
+ $link = Html::element( 'a',
+ [ 'href' => $href ],
+ // Messages for grepping:
+ // tux-sst-ellipsis-untranslated
+ // tux-sst-ellipsis-outdated
+ $this->msg( 'tux-sst-ellipsis-' . $key )->text()
+ );
+
+ $container = Html::rawElement( 'li', [
+ 'class' => 'column',
+ 'data-filter' => $value,
+ 'data-title' => $key,
+ ], $link );
+
+ return $container;
+ }
+
+ /**
+ * Design the tabs
+ * @return string
+ */
+ protected function messageSelector() {
+ $nondefaults = $this->opts->getChangedValues();
+ $output = Html::openElement( 'div', [ 'class' => 'row tux-messagetable-header' ] );
+ $output .= Html::openElement( 'div', [ 'class' => 'nine columns' ] );
+ $output .= Html::openElement( 'ul', [ 'class' => 'row tux-message-selector' ] );
+ $tabs = [
+ 'default' => '',
+ 'translated' => 'translated',
+ 'untranslated' => 'untranslated'
+ ];
+
+ $ellipsisOptions = [
+ 'outdated' => 'fuzzy'
+ ];
+
+ $selected = $this->opts->getValue( 'filter' );
+ $keys = array_keys( $tabs );
+ if ( in_array( $selected, array_values( $ellipsisOptions ) ) ) {
+ $key = $keys[count( $keys ) - 1];
+ $ellipsisOptions = [ $key => $tabs[$key] ];
+
+ // Remove the last tab
+ unset( $tabs[$key] );
+ $tabs = array_merge( $tabs, [ 'outdated' => $selected ] );
+ } elseif ( !in_array( $selected, array_values( $tabs ) ) ) {
+ $selected = '';
+ }
+
+ $container = Html::openElement( 'ul', [ 'class' => 'column tux-message-selector' ] );
+ foreach ( $ellipsisOptions as $optKey => $optValue ) {
+ $container .= $this->ellipsisSelector( $optKey, $optValue );
+ }
+
+ $sourcelanguage = $this->opts->getValue( 'sourcelanguage' );
+ $sourcelanguage = TranslateUtils::getLanguageName( $sourcelanguage );
+ foreach ( $tabs as $tab => $filter ) {
+ // Messages for grepping:
+ // tux-sst-default
+ // tux-sst-translated
+ // tux-sst-untranslated
+ // tux-sst-outdated
+ $tabClass = "tux-sst-$tab";
+ $taskParams = [ 'filter' => $filter ] + $nondefaults;
+ ksort( $taskParams );
+ $href = $this->getPageTitle()->getLocalURL( $taskParams );
+ if ( $tab === 'default' ) {
+ $link = Html::element(
+ 'a',
+ [ 'href' => $href ],
+ $this->msg( $tabClass )->text()
+ );
+ } else {
+ $link = Html::element(
+ 'a',
+ [ 'href' => $href ],
+ $this->msg( $tabClass, $sourcelanguage )->text()
+ );
+ }
+
+ if ( $selected === $filter ) {
+ $tabClass = $tabClass . ' selected';
+ }
+ $output .= Html::rawElement( 'li', [
+ 'class' => [ 'column', $tabClass ],
+ 'data-filter' => $filter,
+ 'data-title' => $tab,
+ ], $link );
+ }
+
+ // More column
+ $output .= Html::openElement( 'li', [ 'class' => 'column more' ] ) .
+ '...' .
+ $container .
+ Html::closeElement( 'li' );
+
+ $output .= Html::closeElement( 'ul' );
+ $output .= Html::closeElement( 'div' );
+ $output .= Html::closeElement( 'div' );
+
+ return $output;
+ }
+
protected function getSearchInput( $query ) {
- $attribs = array(
+ $attribs = [
'placeholder' => $this->msg( 'tux-sst-search-ph' ),
- 'class' => 'searchinputbox',
+ 'class' => 'searchinputbox mw-ui-input',
'dir' => $this->getLanguage()->getDir(),
- );
+ ];
- $title = Html::hidden( 'title', $this->getTitle()->getPrefixedText() );
+ $title = Html::hidden( 'title', $this->getPageTitle()->getPrefixedText() );
$input = Xml::input( 'query', false, $query, $attribs );
- $submit = Xml::submitButton( $this->msg( 'tux-sst-search' ), array( 'class' => 'button' ) );
+ $submit = Xml::submitButton(
+ $this->msg( 'tux-sst-search' ),
+ [ 'class' => 'mw-ui-button' ]
+ );
+
+ $nondefaults = $this->opts->getChangedValues();
+ $checkLabel = Xml::checkLabel(
+ $this->msg( 'tux-sst-case-sensitive' )->text(),
+ 'case',
+ 'tux-case-sensitive',
+ isset( $nondefaults['case'] )
+ );
+ $checkLabel = Html::openElement(
+ 'div',
+ [ 'class' => 'tux-search-operators mw-ui-checkbox' ]
+ ) .
+ $checkLabel .
+ Html::closeElement( 'div' );
+
$lang = $this->getRequest()->getVal( 'language' );
$language = is_null( $lang ) ? '' : Html::hidden( 'language', $lang );
- $form = Html::rawElement( 'form', array( 'action' => wfScript() ),
- $title . $input . $submit . $language
+ $form = Html::rawElement( 'form', [ 'action' => wfScript(), 'name' => 'searchform' ],
+ $title . $input . $submit . $checkLabel . $language
);
return $form;
diff --git a/MLEB/Translate/specials/SpecialSupportedLanguages.php b/MLEB/Translate/specials/SpecialSupportedLanguages.php
index 11e5c151..d7f454f1 100644
--- a/MLEB/Translate/specials/SpecialSupportedLanguages.php
+++ b/MLEB/Translate/specials/SpecialSupportedLanguages.php
@@ -5,8 +5,7 @@
* @file
* @author Niklas Laxström
* @author Siebrand Mazeland
- * @copyright Copyright © 2012-2013, Niklas Laxström, Siebrand Mazeland
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -19,7 +18,7 @@
*
* @ingroup SpecialPage TranslateSpecialPage Stats
*/
-class SpecialSupportedLanguages extends TranslateSpecialPage {
+class SpecialSupportedLanguages extends SpecialPage {
/// Whether to skip and regenerate caches
protected $purge = false;
@@ -30,6 +29,14 @@ class SpecialSupportedLanguages extends TranslateSpecialPage {
parent::__construct( 'SupportedLanguages' );
}
+ protected function getGroupName() {
+ return 'wiki';
+ }
+
+ function getDescription() {
+ return $this->msg( 'supportedlanguages' )->text();
+ }
+
public function execute( $par ) {
$out = $this->getOutput();
$lang = $this->getLanguage();
@@ -39,17 +46,19 @@ class SpecialSupportedLanguages extends TranslateSpecialPage {
$this->setHeaders();
$out->addModules( 'ext.translate.special.supportedlanguages' );
+ $out->addModuleStyles( 'ext.translate.special.supportedlanguages' );
- TranslateUtils::addSpecialHelpLink(
- $out,
+ $out->addHelpLink(
'Help:Extension:Translate/Statistics_and_reporting#List_of_languages_and_translators'
);
- $this->outputHeader();
- $dbr = wfGetDB( DB_SLAVE );
+ $this->outputHeader( 'supportedlanguages-summary' );
+ $dbr = wfGetDB( DB_REPLICA );
if ( $dbr->getType() === 'sqlite' ) {
- $out->addWikiText( '<div class=errorbox>SQLite is not supported.</div>' );
-
+ $out->wrapWikiMsg(
+ '<div class="errorbox">$1</div>',
+ 'supportedlanguages-sqlite-error'
+ );
return;
}
@@ -90,11 +99,11 @@ class SpecialSupportedLanguages extends TranslateSpecialPage {
$userStats = $this->getUserStats( $usernames );
// Information to be used inside the foreach loop.
- $linkInfo = array();
+ $linkInfo = [];
$linkInfo['rc']['title'] = SpecialPage::getTitleFor( 'Recentchanges' );
- $linkInfo['rc']['msg'] = $this->msg( 'supportedlanguages-recenttranslations' )->escaped();
+ $linkInfo['rc']['msg'] = $this->msg( 'supportedlanguages-recenttranslations' )->text();
$linkInfo['stats']['title'] = SpecialPage::getTitleFor( 'LanguageStats' );
- $linkInfo['stats']['msg'] = $this->msg( 'languagestats' )->escaped();
+ $linkInfo['stats']['msg'] = $this->msg( 'languagestats' )->text();
$local = Language::fetchLanguageName( $code, $lang->getCode(), 'all' );
$native = Language::fetchLanguageName( $code, null, 'all' );
@@ -108,33 +117,31 @@ class SpecialSupportedLanguages extends TranslateSpecialPage {
->params( $code, $native )->escaped();
}
- $out->addHtml( Html::rawElement( 'h2', array( 'id' => $code ), $headerText ) );
+ $out->addHTML( Html::rawElement( 'h2', [ 'id' => $code ], $headerText ) );
// Add useful links for language stats and recent changes for the language.
- $links = array();
- $links[] = Linker::link(
+ $links = [];
+ $links[] = $this->getLinkRenderer()->makeKnownLink(
$linkInfo['stats']['title'],
$linkInfo['stats']['msg'],
- array(),
- array(
+ [],
+ [
'code' => $code,
'suppresscomplete' => '1'
- ),
- array( 'known', 'noclasses' )
+ ]
);
- $links[] = Linker::link(
+ $links[] = $this->getLinkRenderer()->makeKnownLink(
$linkInfo['rc']['title'],
$linkInfo['rc']['msg'],
- array(),
- array(
+ [],
+ [
'translations' => 'only',
- 'trailer' => "/" . $code
- ),
- array( 'known', 'noclasses' )
+ 'trailer' => '/' . $code
+ ]
);
$linkList = $lang->listToText( $links );
- $out->addHTML( "<p>" . $linkList . "</p>\n" );
+ $out->addHTML( '<p>' . $linkList . "</p>\n" );
$this->makeUserList( $users, $userStats );
}
@@ -152,21 +159,21 @@ class SpecialSupportedLanguages extends TranslateSpecialPage {
}
}
- $dbr = wfGetDB( DB_SLAVE );
- $tables = array( 'recentchanges' );
- $fields = array( 'substring_index(rc_title, \'/\', -1) as lang', 'count(*) as count' );
- $timestamp = $dbr->timestamp( wfTimeStamp( TS_UNIX ) - 60 * 60 * 24 * $this->period );
- $conds = array(
+ $dbr = wfGetDB( DB_REPLICA );
+ $tables = [ 'recentchanges' ];
+ $fields = [ 'substring_index(rc_title, \'/\', -1) as lang', 'count(*) as count' ];
+ $timestamp = $dbr->timestamp( wfTimestamp( TS_UNIX ) - 60 * 60 * 24 * $this->period );
+ $conds = [
# Without the quotes the rc_timestamp index isn't used and this query is much slower
"rc_timestamp > '$timestamp'",
'rc_namespace' => $wgTranslateMessageNamespaces,
'rc_title' . $dbr->buildLike( $dbr->anyString(), '/', $dbr->anyString() ),
- );
- $options = array( 'GROUP BY' => 'lang', 'HAVING' => 'count > 20', 'ORDER BY' => 'NULL' );
+ ];
+ $options = [ 'GROUP BY' => 'lang', 'HAVING' => 'count > 20', 'ORDER BY' => 'NULL' ];
$res = $dbr->select( $tables, $fields, $conds, __METHOD__, $options );
- $data = array();
+ $data = [];
foreach ( $res as $row ) {
$data[$row->lang] = $row->count;
}
@@ -201,10 +208,10 @@ class SpecialSupportedLanguages extends TranslateSpecialPage {
$work = new PoolCounterWorkViaCallback(
'TranslateFetchTranslators',
"TranslateFetchTranslators-$code",
- array(
+ [
'doWork' => function () use ( $that, $code, $cache, $cachekey ) {
$users = $that->loadTranslators( $code );
- $newData = array( 'users' => $users, 'asOfTime' => time() );
+ $newData = [ 'users' => $users, 'asOfTime' => time() ];
$cache->set( $cachekey, $newData, 86400 );
return $users;
},
@@ -217,7 +224,7 @@ class SpecialSupportedLanguages extends TranslateSpecialPage {
// Use stale cache if possible
return is_array( $data ) ? $data['users'] : false;
}
- )
+ ]
);
return $work->execute();
@@ -226,28 +233,41 @@ class SpecialSupportedLanguages extends TranslateSpecialPage {
/**
* Fetch the translators for a language
*
- * @param type $code
+ * @param string $code
* @return array Map of (user name => page count)
*/
public function loadTranslators( $code ) {
global $wgTranslateMessageNamespaces;
- $dbr = wfGetDB( DB_SLAVE, 'vslow' );
- $tables = array( 'page', 'revision' );
- $fields = array(
- 'rev_user_text',
+ $dbr = wfGetDB( DB_REPLICA, 'vslow' );
+
+ if ( class_exists( ActorMigration::class ) ) {
+ $actorQuery = ActorMigration::newMigration()->getJoin( 'rev_user' );
+ } else {
+ $actorQuery = [
+ 'tables' => [],
+ 'fields' => [ 'rev_user_text' => 'rev_user_text' ],
+ 'joins' => [],
+ ];
+ }
+
+ $tables = [ 'page', 'revision' ] + $actorQuery['tables'];
+ $fields = [
+ 'rev_user_text' => $actorQuery['fields']['rev_user_text'],
'count(page_id) as count'
- );
- $conds = array(
+ ];
+ $conds = [
'page_title' . $dbr->buildLike( $dbr->anyString(), '/', $code ),
'page_namespace' => $wgTranslateMessageNamespaces,
- 'page_id=rev_page',
- );
- $options = array( 'GROUP BY' => 'rev_user_text', 'ORDER BY' => 'NULL' );
+ ];
+ $options = [ 'GROUP BY' => $actorQuery['fields']['rev_user_text'], 'ORDER BY' => 'NULL' ];
+ $joins = [
+ 'revision' => [ 'JOIN', 'page_id=rev_page' ],
+ ] + $actorQuery['joins'];
- $res = $dbr->select( $tables, $fields, $conds, __METHOD__, $options );
+ $res = $dbr->select( $tables, $fields, $conds, __METHOD__, $options, $joins );
- $data = array();
+ $data = [];
foreach ( $res as $row ) {
$data[$row->rev_user_text] = $row->count;
}
@@ -285,23 +305,23 @@ class SpecialSupportedLanguages extends TranslateSpecialPage {
protected function outputLanguageCloud( array $languages, array $names ) {
$out = $this->getOutput();
- $out->addHtml( '<div class="tagcloud autonym">' );
- $langs = $this->shuffle_assoc( $languages );
+ $out->addHTML( '<div class="tagcloud autonym">' );
+
foreach ( $languages as $k => $v ) {
$name = $names[$k];
$size = round( log( $v ) * 20 ) + 10;
- $params = array(
- 'href' => $this->getPageTitle( $k )->getLocalUrl(),
+ $params = [
+ 'href' => $this->getPageTitle( $k )->getLocalURL(),
'class' => 'tag',
'style' => "font-size:$size%",
'lang' => $k,
- );
+ ];
$tag = Html::element( 'a', $params, $name );
- $out->addHtml( $tag . "\n" );
+ $out->addHTML( $tag . "\n" );
}
- $out->addHtml( '</div>' );
+ $out->addHTML( '</div>' );
}
protected function makeUserList( $users, $stats ) {
@@ -311,15 +331,16 @@ class SpecialSupportedLanguages extends TranslateSpecialPage {
// longer than this is just inactive
$period = $this->period;
- $links = array();
+ $links = [];
$statsTable = new StatsTable();
+ arsort( $users );
foreach ( $users as $username => $count ) {
$title = Title::makeTitleSafe( NS_USER, $username );
$enc = htmlspecialchars( $username );
- $attribs = array();
- $styles = array();
+ $attribs = [];
+ $styles = [];
if ( isset( $stats[$username][0] ) ) {
if ( $count === -1 ) {
$count = $stats[$username][0];
@@ -327,7 +348,7 @@ class SpecialSupportedLanguages extends TranslateSpecialPage {
$styles['font-size'] = round( log( $count, 10 ) * 30 ) + 70 . '%';
- $last = wfTimestamp( TS_UNIX ) - wfTimeStamp( TS_UNIX, $stats[$username][1] );
+ $last = wfTimestamp( TS_UNIX ) - wfTimestamp( TS_UNIX, $stats[$username][1] );
$last = round( $last / $day );
$attribs['title'] = $this->msg( 'supportedlanguages-activity', $username )
->numParams( $count, $last )->text();
@@ -343,7 +364,7 @@ class SpecialSupportedLanguages extends TranslateSpecialPage {
$attribs['style'] = $stylestr;
}
- $links[] = Linker::link( $title, $enc, $attribs );
+ $links[] = $this->getLinkRenderer()->makeLink( $title, new HtmlArmor( $enc ), $attribs );
}
// for GENDER support
@@ -366,15 +387,15 @@ class SpecialSupportedLanguages extends TranslateSpecialPage {
protected function getUserStats( $users ) {
$cache = wfGetCache( CACHE_ANYTHING );
- $dbr = wfGetDB( DB_SLAVE );
- $keys = array();
+ $dbr = wfGetDB( DB_REPLICA );
+ $keys = [];
foreach ( $users as $username ) {
$keys[] = wfMemcKey( 'translate', 'sl-usertats', $username );
}
$cached = $cache->getMulti( $keys );
- $data = array();
+ $data = [];
foreach ( $users as $index => $username ) {
$cachekey = $keys[$index];
@@ -384,15 +405,24 @@ class SpecialSupportedLanguages extends TranslateSpecialPage {
continue;
}
- $tables = array( 'user', 'revision' );
- $fields = array( 'user_name', 'user_editcount', 'MAX(rev_timestamp) as lastedit' );
- $conds = array(
+ if ( class_exists( ActorMigration::class ) ) {
+ $actorQuery = ActorMigration::newMigration()->getJoin( 'rev_user' );
+ $tables = [ 'user', 'r' => [ 'revision' ] + $actorQuery['tables'] ];
+ $joins = [
+ 'r' => [ 'JOIN', 'user_id = rev_user' ],
+ ] + $actorQuery['joins'];
+ } else {
+ $tables = [ 'user', 'revision' ];
+ $joins = [ 'revision' => [ 'JOIN', 'user_id = rev_user' ] ];
+ }
+
+ $fields = [ 'user_name', 'user_editcount', 'MAX(rev_timestamp) as lastedit' ];
+ $conds = [
'user_name' => $username,
- 'user_id = rev_user',
- );
+ ];
- $res = $dbr->selectRow( $tables, $fields, $conds, __METHOD__ );
- $data[$username] = array( $res->user_editcount, $res->lastedit );
+ $res = $dbr->selectRow( $tables, $fields, $conds, __METHOD__, [], $joins );
+ $data[$username] = [ $res->user_editcount, $res->lastedit ];
$cache->set( $cachekey, $data[$username], 3600 );
}
@@ -409,20 +439,6 @@ class SpecialSupportedLanguages extends TranslateSpecialPage {
return $stylestr;
}
- function shuffle_assoc( $list ) {
- if ( !is_array( $list ) ) {
- return $list;
- }
-
- $keys = array_keys( $list );
- shuffle( $keys );
- $random = array();
- foreach ( $keys as $key )
- $random[$key] = $list[$key];
-
- return $random;
- }
-
protected function preQueryUsers( $users ) {
$lb = new LinkBatch;
foreach ( $users as $user => $count ) {
diff --git a/MLEB/Translate/specials/SpecialTranslate.php b/MLEB/Translate/specials/SpecialTranslate.php
index 88d6b684..8eb31229 100644
--- a/MLEB/Translate/specials/SpecialTranslate.php
+++ b/MLEB/Translate/specials/SpecialTranslate.php
@@ -5,8 +5,7 @@
* @file
* @author Niklas Laxström
* @author Siebrand Mazeland
- * @copyright Copyright © 2006-2013 Niklas Laxström, Siebrand Mazeland
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -15,43 +14,43 @@
*
* @ingroup SpecialPage TranslateSpecialPage
*/
-class SpecialTranslate extends TranslateSpecialPage {
- /** @var TranslateTask */
- protected $task = null;
-
+class SpecialTranslate extends SpecialPage {
/** @var MessageGroup */
- protected $group = null;
+ protected $group;
- protected $defaults = null;
- protected $nondefaults = array();
- protected $options = null;
+ protected $defaults;
+ protected $nondefaults = [];
+ protected $options;
- function __construct() {
+ public function __construct() {
parent::__construct( 'Translate' );
}
+ public function doesWrites() {
+ return true;
+ }
+
+ protected function getGroupName() {
+ return 'wiki';
+ }
+
/**
* Access point for this special page.
+ *
+ * @param null|string $parameters
+ * @throws ErrorPageError
*/
public function execute( $parameters ) {
- global $wgTranslateBlacklist, $wgContLang;
-
$out = $this->getOutput();
- $out->addModules( 'ext.translate.special.translate' );
+ $out->addModuleStyles( [
+ 'ext.translate.special.translate.styles',
+ 'jquery.uls.grid',
+ 'mediawiki.ui.button'
+ ] );
$this->setHeaders();
$request = $this->getRequest();
- // @todo Move to api or so
- if ( $parameters === 'editpage' ) {
- $editpage = TranslationEditPage::newFromRequest( $request );
-
- if ( $editpage ) {
- $editpage->execute();
-
- return;
- }
- }
if ( !defined( 'ULS_VERSION' ) ) {
throw new ErrorPageError(
@@ -61,209 +60,37 @@ class SpecialTranslate extends TranslateSpecialPage {
}
$this->setup( $parameters );
- $isBeta = self::isBeta( $request );
-
- if ( $this->options['group'] === '' || ( $isBeta && !$this->group ) ) {
- $this->groupInformation();
-
- return;
- }
-
- $errors = $this->getFormErrors();
-
- if ( $isBeta && $this->options['taction'] !== 'export' ) {
- $out->addHTML( Html::openElement( 'div', array(
- 'class' => 'grid ext-translate-container',
- ) ) );
-
- $out->addHTML( $this->tuxSettingsForm( $errors ) );
- $out->addHTML( $this->messageSelector() );
- } else {
- TranslateUtils::addSpecialHelpLink( $out, 'Help:Extension:Translate/Translation_example' );
- // Show errors nicely.
- $out->addHTML( $this->settingsForm( $errors ) );
- }
-
- if ( count( $errors ) ) {
- return;
- } else {
- $checks = array(
- $this->options['group'],
- strtok( $this->options['group'], '-' ),
- '*'
- );
-
- foreach ( $checks as $check ) {
- if ( isset( $wgTranslateBlacklist[$check][$this->options['language']] ) ) {
- $reason = $wgTranslateBlacklist[$check][$this->options['language']];
- $out->addWikiMsg( 'translate-page-disabled', $reason );
- if ( $isBeta ) {
- // Close div.ext-translate-container
- $out->addHTML( Html::closeElement( 'div' ) );
- }
- return;
- }
- }
- }
-
- $params = array( $this->getContext(), $this->task, $this->group, $this->options );
- if ( !wfRunHooks( 'SpecialTranslate::executeTask', $params ) ) {
- return;
- }
-
- // Initialise and get output.
- if ( !$this->task ) {
- return;
- }
-
- $this->task->init( $this->group, $this->options, $this->nondefaults, $this->getContext() );
- $output = $this->task->execute();
-
- if ( $this->task->plainOutput() ) {
- $out->disable();
- header( 'Content-type: text/plain; charset=UTF-8' );
- echo $output;
- } else {
- $description = $this->getGroupDescription( $this->group );
-
- $taskid = $this->options['task'];
- if ( in_array( $taskid, array( 'untranslated', 'reviewall' ), true ) ) {
- $hasOptional = count( $this->group->getTags( 'optional' ) );
- if ( $hasOptional ) {
- $linktext = $this->msg( 'translate-page-description-hasoptional-open' )->escaped();
- $params = array( 'task' => 'optional' ) + $this->nondefaults;
- $link = Linker::link( $this->getTitle(), $linktext, array(), $params );
- $note = $this->msg( 'translate-page-description-hasoptional' )
- ->rawParams( $link )->parseAsBlock();
-
- if ( $description ) {
- $description .= '<br />' . $note;
- } else {
- $description = $note;
- }
- }
- }
-
- $status = $this->getWorkflowStatus();
- if ( $status !== false ) {
- $description = $status . $description;
- }
-
- $groupId = $this->group->getId();
- // PHP is such an awesome language
- $priorityLangs = TranslateMetadata::get( $groupId, 'prioritylangs' );
- $priorityLangs = array_flip( array_filter( explode( ',', $priorityLangs ) ) );
- $priorityLangsCount = count( $priorityLangs );
- if ( $priorityLangsCount && !isset( $priorityLangs[$this->options['language']] ) ) {
- $priorityForce = TranslateMetadata::get( $groupId, 'priorityforce' );
- if ( $priorityForce === 'on' ) {
- // Hide table
- $priorityMessageClass = 'errorbox';
- $priorityMessageKey = 'tpt-discouraged-language-force';
- } else {
- $priorityMessageClass = 'warningbox';
- $priorityMessageKey = 'tpt-discouraged-language';
- }
-
- $priorityLanguageNames = array();
- $languageNames = TranslateUtils::getLanguageNames( $this->getLanguage()->getCode() );
- foreach ( array_keys( $priorityLangs ) as $langCode ) {
- $priorityLanguageNames[] = $languageNames[$langCode];
- }
-
- $priorityReason = TranslateMetadata::get( $groupId, 'priorityreason' );
- if ( $priorityReason !== '' ) {
- $priorityReason = "\n\n" . $this->msg(
- 'tpt-discouraged-language-reason',
- Xml::element( 'span',
- // The reason is probably written in the content language
- array(
- 'lang' => $wgContLang->getCode(),
- 'dir' => $wgContLang->getDir(),
- ),
- $priorityReason
- )
- )->parse();
- }
-
- $description .= Html::RawElement( 'div',
- array( 'class' => $priorityMessageClass ),
- $this->msg(
- $priorityMessageKey,
- '', // param formerly used for reason, now empty
- $languageNames[$this->options['language']],
- $this->getLanguage()->listToText( $priorityLanguageNames )
- )->parseAsBlock() . $priorityReason
- );
- }
-
- if ( $description ) {
- $description = Xml::fieldset(
- $this->msg( 'translate-page-description-legend' )->text(),
- $description,
- array( 'class' => 'mw-sp-translate-description' )
- );
- }
-
- if ( $isBeta ) {
- $out->addHTML( $output );
- } else {
- $out->addHTML( $description . $output );
- }
-
- ApiTranslateUser::trackGroup( $this->group, $this->getUser() );
- }
-
- if ( $isBeta ) {
- $out->addHTML( Html::closeElement( 'div' ) );
- }
- }
+ $out->addModules( 'ext.translate.special.translate' );
+ $out->addJsConfigVars( 'wgTranslateLanguages', TranslateUtils::getLanguageNames( null ) );
- /**
- * Returns array of errors in the form parameters.
- */
- protected function getFormErrors() {
- $errors = array();
+ $out->addHTML( Html::openElement( 'div', [
+ 'class' => 'grid ext-translate-container',
+ ] ) );
- $codes = TranslateUtils::getLanguageNames( 'en' );
- if ( !$this->options['language'] || !isset( $codes[$this->options['language']] ) ) {
- $errors['language'] = $this->msg( 'translate-page-no-such-language' )->text();
- $this->options['language'] = $this->defaults['language'];
- }
+ $out->addHTML( $this->tuxSettingsForm() );
+ $out->addHTML( $this->messageSelector() );
- if ( !$this->group instanceof MessageGroup ) {
- $errors['group'] = $this->msg( 'translate-page-no-such-group' )->text();
- $this->options['group'] = $this->defaults['group'];
- } else {
- $languages = $this->group->getTranslatableLanguages();
-
- if ( $languages !== null && !isset( $languages[$this->options['language']] ) ) {
- $errors['language'] = $this->msg( 'translate-language-disabled' )->text();
- }
- }
+ $table = new TuxMessageTable( $this->getContext(), $this->group, $this->options['language'] );
+ $output = $table->fullTable();
- return $errors;
+ $out->addHTML( $output );
+ $out->addHTML( Html::closeElement( 'div' ) );
}
protected function setup( $parameters ) {
$request = $this->getRequest();
- $isBeta = self::isBeta( $request );
- $defaults = array(
+ $defaults = [
/* str */'taction' => 'translate',
- /* str */'task' => $isBeta ? 'custom' : 'untranslated',
/* str */'language' => $this->getLanguage()->getCode(),
- /* str */'group' => $isBeta ? '!additions' : '',
- /* str */'offset' => '', // Used to be int, now str
- /* int */'limit' => $isBeta ? 0 : 100,
- /* int */'optional' => '0',
- );
+ /* str */'group' => '!additions',
+ ];
// Dump everything here
- $nondefaults = array();
+ $nondefaults = [];
$parameters = array_map( 'trim', explode( ';', $parameters ) );
- $pars = array();
+ $pars = [];
foreach ( $parameters as $_ ) {
if ( $_ === '' ) {
@@ -301,175 +128,69 @@ class SpecialTranslate extends TranslateSpecialPage {
// Fix defaults based on what we got
if ( isset( $nondefaults['taction'] ) ) {
- if ( $nondefaults['taction'] === 'proofread' ) {
- if ( $this->getUser()->isAllowed( 'translate-messagereview' ) ) {
- $defaults['task'] = 'acceptqueue';
- } else {
- $defaults['task'] = 'reviewall';
+ if ( $nondefaults['taction'] === 'export' ) {
+ // Redirect old export URLs to Special:ExportTranslations
+ $params = [];
+ if ( isset( $nondefaults['group'] ) ) {
+ $params['group'] = $nondefaults['group'];
+ }
+ if ( isset( $nondefaults['language'] ) ) {
+ $params['language'] = $nondefaults['language'];
}
- } elseif ( $nondefaults['taction'] === 'export' ) {
- $defaults['task'] = '';
- }
- }
- if ( $isBeta ) {
- /* @todo fix all the places in Translate to create correct links.
- * The least effort way is to change them once we totally drop the
- * old UI. The penalty is only http redirect in some cases. More
- * effort would be to create utilities like makeTranslationLink
- * and makeProofreadLink.
- */
- $this->rewriteLegacyUrls( $nondefaults );
+ $export = SpecialPage::getTitleFor( 'ExportTranslations' )->getLocalURL( $params );
+ $this->getOutput()->redirect( $export );
+ }
}
$this->defaults = $defaults;
$this->nondefaults = $nondefaults;
- wfRunHooks( 'TranslateGetSpecialTranslateOptions', array( &$defaults, &$nondefaults ) );
+ Hooks::run( 'TranslateGetSpecialTranslateOptions', [ &$defaults, &$nondefaults ] );
$this->options = $nondefaults + $defaults;
$this->group = MessageGroups::getGroup( $this->options['group'] );
if ( $this->group ) {
$this->options['group'] = $this->group->getId();
+ } else {
+ $this->group = MessageGroups::getGroup( $this->defaults['group'] );
}
- $this->task = TranslateTasks::getTask( $this->options['task'] );
- if ( $this->group && MessageGroups::isDynamic( $this->group ) ) {
+ if ( MessageGroups::isDynamic( $this->group ) ) {
$this->group->setLanguage( $this->options['language'] );
}
}
- protected function rewriteLegacyUrls( $params ) {
- if (
- !isset( $params['task'] ) &&
- isset( $params['taction'] ) && $params['taction'] === 'proofread'
- ) {
- $params['task'] = 'acceptqueue';
- }
-
- if ( !isset( $params['task'] ) || $params['task'] === 'custom' ) {
- return;
- }
-
- // Not used in TUX
- unset( $params['taction'], $params['limit'], $params['offset'] );
-
- $out = $this->getOutput();
-
- switch ( $params['task'] ) {
- case 'reviewall':
- case 'acceptqueue':
- // @todo handle these two separately
- unset( $params['task'] );
- $params['action'] = 'proofread';
- $out->redirect( $this->getTitle()->getLocalUrl( $params ) );
- break;
-
- case 'view':
- unset( $params['task'] );
- $params['filter'] = '';
- $out->redirect( $this->getTitle()->getLocalUrl( $params ) );
- break;
-
- // Optional does not directly map to the new UI.
- // Handle it as untranslated with optional filter.
- case 'optional':
- $params['optional'] = 1;
- case 'untranslated':
- unset( $params['task'] );
- $params['filter'] = '!translated';
- $out->redirect( $this->getTitle()->getLocalUrl( $params ) );
- break;
- }
- }
-
- protected function settingsForm( $errors ) {
- global $wgScript;
-
- $taction = $this->options['taction'];
-
- $selectors = array(
- 'group' => $this->groupSelector(),
- 'language' => $this->languageSelector(),
- 'limit' => $this->limitSelector(),
- );
-
- if ( $taction === 'export' ) {
- unset( $selectors['limit'] );
- }
-
- $options = array();
- foreach ( $selectors as $g => $selector ) {
- // Give grep a chance to find the usages:
- // translate-page-group, translate-page-language, translate-page-limit
- $options[] = self::optionRow(
- $this->msg( 'translate-page-' . $g )->escaped(),
- $selector,
- array_key_exists( $g, $errors ) ? $errors[$g] : null
- );
- }
-
- if ( $taction === 'proofread' ) {
- $extra = $this->taskLinks( array( 'acceptqueue', 'reviewall' ) );
- } elseif ( $taction === 'translate' ) {
- $extra = $this->taskLinks( array( 'view', 'untranslated', 'optional' ) );
- } elseif ( $taction === 'export' ) {
- $extra = $this->taskLinks( array( 'export-as-po', 'export-to-file' ) );
- } else {
- $extra = '';
- }
-
- $nonEssential = Html::rawElement(
- 'span',
- array( 'class' => 'mw-sp-translate-nonessential' ),
- implode( "", $options )
+ protected function tuxSettingsForm() {
+ $nojs = Html::element(
+ 'div',
+ [ 'class' => 'tux-nojs errorbox' ],
+ $this->msg( 'tux-nojs' )->plain()
);
- $button = Xml::submitButton( $this->msg( 'translate-submit' )->text() );
-
- $formAttributes = array( 'class' => 'mw-sp-translate-settings' );
- if ( $this->group ) {
- $formAttributes['data-grouptype'] = get_class( $this->group );
- }
- $form =
- Html::openElement( 'fieldset', $formAttributes ) .
- Html::element( 'legend', array(), $this->msg( 'translate-page-settings-legend' )->text() ) .
- Html::openElement( 'form', array( 'action' => $wgScript, 'method' => 'get' ) ) .
- Html::hidden( 'title', $this->getTitle()->getPrefixedText() ) .
- Html::hidden( 'taction', $this->options['taction'] ) .
- "$nonEssential\n$extra\n$button\n" .
- Html::closeElement( 'form' ) .
- Html::closeElement( 'fieldset' );
-
- return $form;
- }
-
- protected function tuxSettingsForm() {
- $attrs = array( 'class' => 'row tux-editor-header' );
+ $attrs = [ 'class' => 'row tux-editor-header' ];
$selectors = $this->tuxGroupSelector() .
$this->tuxLanguageSelector() .
$this->tuxGroupDescription() .
$this->tuxWorkflowSelector() .
$this->tuxGroupWarning();
- return Html::rawElement( 'div', $attrs, $selectors );
+ return Html::rawElement( 'div', $attrs, $selectors ) . $nojs;
}
protected function messageSelector() {
- $output = Html::openElement( 'div', array( 'class' => 'row tux-messagetable-header' ) );
- $output .= Html::openElement( 'div', array( 'class' => 'nine columns' ) );
- $output .= Html::openElement( 'ul', array( 'class' => 'row tux-message-selector' ) );
+ $output = Html::openElement( 'div', [ 'class' => 'row tux-messagetable-header hide' ] );
+ $output .= Html::openElement( 'div', [ 'class' => 'nine columns' ] );
+ $output .= Html::openElement( 'ul', [ 'class' => 'row tux-message-selector' ] );
$userId = $this->getUser()->getId();
- $tabs = array(
+ $tabs = [
'all' => '',
'untranslated' => '!translated',
- //'Hardest',
'outdated' => 'fuzzy',
'translated' => 'translated',
'unproofread' => "translated|!reviewer:$userId|!last-translator:$userId",
- );
+ ];
$params = $this->nondefaults;
- $params['task'] = 'custom';
foreach ( $tabs as $tab => $filter ) {
// Possible classes and messages, for grepping:
@@ -479,15 +200,15 @@ class SpecialTranslate extends TranslateSpecialPage {
// tux-tab-translated
// tux-tab-unproofread
$tabClass = "tux-tab-$tab";
- $taskParams = array( 'filter' => $filter ) + $params;
+ $taskParams = [ 'filter' => $filter ] + $params;
ksort( $taskParams );
- $href = $this->getTitle()->getLocalUrl( $taskParams );
- $link = Html::element( 'a', array( 'href' => $href ), $this->msg( $tabClass )->text() );
- $output .= Html::rawElement( 'li', array(
+ $href = $this->getPageTitle()->getLocalURL( $taskParams );
+ $link = Html::element( 'a', [ 'href' => $href ], $this->msg( $tabClass )->text() );
+ $output .= Html::rawElement( 'li', [
'class' => 'column ' . $tabClass,
'data-filter' => $filter,
'data-title' => $tab,
- ), $link );
+ ], $link );
}
// Check boxes for the "more" tab.
@@ -495,20 +216,20 @@ class SpecialTranslate extends TranslateSpecialPage {
// in the id attribute as tux-option-KEY,
// and and also for the data-filter attribute.
// The message is shown as the check box's label.
- $options = array(
+ $options = [
'optional' => $this->msg( 'tux-message-filter-optional-messages-label' )->escaped(),
- );
+ ];
- $container = Html::openElement( 'ul', array( 'class' => 'column tux-message-selector' ) );
+ $container = Html::openElement( 'ul', [ 'class' => 'column tux-message-selector' ] );
foreach ( $options as $optFilter => $optLabel ) {
$container .= Html::rawElement( 'li',
- array( 'class' => 'column' ),
+ [ 'class' => 'column' ],
Xml::checkLabel(
$optLabel,
$optFilter,
"tux-option-$optFilter",
isset( $this->nondefaults[$optFilter] ),
- array( 'data-filter' => $optFilter )
+ [ 'data-filter' => $optFilter ]
)
);
}
@@ -516,23 +237,20 @@ class SpecialTranslate extends TranslateSpecialPage {
$container .= Html::closeElement( 'ul' );
// @todo FIXME: Hard coded "ellipsis".
- $output .= Html::openElement( 'li', array( 'class' => 'column more' ) ) .
+ $output .= Html::openElement( 'li', [ 'class' => 'column more' ] ) .
'...' .
$container .
Html::closeElement( 'li' );
$output .= Html::closeElement( 'ul' );
- $output .= Html::closeElement( 'div' ); //close nine columns
- $output .= Html::openElement( 'div', array( 'class' => 'three columns' ) );
- $output .= Html::openElement( 'div', array( 'class' => 'two columns' ) );
- $output .= Html::element( 'div', array( 'class' => 'tux-message-filter-box-icon' ) );
- $output .= Html::closeElement( 'div' ); // close two columns
- $output .= Html::openElement( 'div', array( 'class' => 'ten columns' ) );
- $output .= Html::element( 'input', array(
+ $output .= Html::closeElement( 'div' ); // close nine columns
+ $output .= Html::openElement( 'div', [ 'class' => 'three columns' ] );
+ $output .= Html::openElement( 'div', [ 'class' => 'tux-message-filter-wrapper' ] );
+ $output .= Html::element( 'input', [
'class' => 'tux-message-filter-box',
'type' => 'search',
- ) );
- $output .= Html::closeElement( 'div' ); // close ten columns
+ ] );
+ $output .= Html::closeElement( 'div' ); // close tux-message-filter-wrapper
$output .= Html::closeElement( 'div' ); // close three columns
@@ -542,27 +260,30 @@ class SpecialTranslate extends TranslateSpecialPage {
}
protected function tuxGroupSelector() {
- $group = MessageGroups::getGroup( $this->options['group'] );
+ $groupClass = [ 'grouptitle', 'grouplink' ];
+ if ( $this->group instanceof AggregateMessageGroup ) {
+ $groupClass[] = 'tux-breadcrumb__item--aggregate';
+ }
// @todo FIXME The selector should have expanded parent-child lists
- $output = Html::openElement( 'div', array(
+ $output = Html::openElement( 'div', [
'class' => 'eight columns tux-breadcrumb',
'data-language' => $this->options['language'],
- ) ) .
+ ] ) .
Html::element( 'span',
- array( 'class' => 'grouptitle' ),
+ [ 'class' => 'grouptitle' ],
$this->msg( 'translate-msggroupselector-projects' )->text()
) .
Html::element( 'span',
- array( 'class' => 'grouptitle grouplink expanded' ),
+ [ 'class' => 'grouptitle grouplink tux-breadcrumb__item--aggregate' ],
$this->msg( 'translate-msggroupselector-search-all' )->text()
) .
Html::element( 'span',
- array(
- 'class' => 'grouptitle grouplink tail',
- 'data-msggroupid' => $this->options['group'],
- ),
- $group->getLabel()
+ [
+ 'class' => $groupClass,
+ 'data-msggroupid' => $this->group->getId(),
+ ],
+ $this->group->getLabel()
) .
Html::closeElement( 'div' );
@@ -570,323 +291,91 @@ class SpecialTranslate extends TranslateSpecialPage {
}
protected function tuxLanguageSelector() {
- // Changes here must also be reflected when the language
- // changes on the client side
global $wgTranslateDocumentationLanguageCode;
if ( $this->options['language'] === $wgTranslateDocumentationLanguageCode ) {
- // The name will be displayed in the UI language,
- // so use for lang and dir
- $targetLangCode = $this->getLanguage()->getCode();
- $targetLangDir = $this->getLanguage()->getDir();
$targetLangName = $this->msg( 'translate-documentation-language' )->text();
} else {
- $targetLangCode = $this->options['language'];
- $targetLangDir = Language::factory( $this->options['language'] )->getDir();
$targetLangName = Language::fetchLanguageName( $this->options['language'] );
}
- // No-break space is added for spacing after the label
- // and to ensure separation of words (in Arabic, for example)
- return Html::rawElement( 'div',
- array( 'class' => 'four columns ext-translate-language-selector' ),
- Html::element( 'span',
- array( 'class' => 'ext-translate-language-selector-label' ),
- $this->msg( 'tux-languageselector' )->text()
- ) .
- '&#160;' . // nbsp
- Html::element( 'span',
- array(
- 'class' => 'uls',
- 'lang' => $targetLangCode,
- 'dir' => $targetLangDir,
- ),
- $targetLangName
- )
+ $label = Html::element(
+ 'span',
+ [ 'class' => 'ext-translate-language-selector-label' ],
+ $this->msg( 'tux-languageselector' )->text()
+ );
+ $value = Html::element(
+ 'span',
+ [ 'class' => 'uls' ],
+ $targetLangName
);
- }
- protected function tuxGroupDescription() {
return Html::rawElement(
'div',
- array( 'class' => 'twelve columns description' ),
- $this->getGroupDescription( $this->group )
+ [ 'class' => 'four columns ext-translate-language-selector' ],
+ "$label $value"
);
}
- protected function tuxGroupWarning() {
+ protected function tuxGroupDescription() {
// Initialize an empty warning box to be filled client-side.
- return Html::element(
+ return Html::rawElement(
'div',
- array( 'class' => 'twelve columns group-warning' ),
- ''
- );
- }
-
- /**
- * @param $label string
- * @param $option string
- * @param $error string Html
- * @return string
- */
- private static function optionRow( $label, $option, $error = null ) {
- return "<label>$label&nbsp;$option</label>" .
- ( $error ?
- Html::rawElement( 'span', array( 'class' => 'mw-sp-translate-error' ), $error ) :
- ''
- ) . ' ';
- }
-
- protected function taskLinks( $tasks ) {
- $user = $this->getUser();
-
- foreach ( $tasks as $index => $id ) {
- $task = TranslateTasks::getTask( $id );
-
- if ( !$task ) {
- unset( $tasks[$index] );
- continue;
- }
-
- if ( !$task->isAllowedFor( $user ) ) {
- unset( $tasks[$index] );
- continue;
- }
- }
-
- $sep = Html::element( 'br' );
- $count = count( $tasks );
- if ( $count === 0 ) {
- return $sep . $this->msg( 'translate-taction-disabled' )->escaped();
- } elseif ( $count === 1 ) {
- $id = array_pop( $tasks );
-
- // If there is only one task, and it is the default task, hide it.
- // If someone disables the default task for action, we will show
- // a list of alternative task(s), but not showing anything
- // by default. */
- if ( $this->defaults['task'] === $id ) {
- return '';
- }
-
- // Give grep a chance to find the usages:
- // translate-taskui-view, translate-taskui-untranslated, translate-taskui-optional,
- // translate-taskui-acceptqueue, translate-taskui-reviewall,
- // translate-taskui-export-to-file, translate-taskui-export-as-po
- return $sep . Html::rawElement( 'label', array(),
- Xml::radio( 'task', $id, true ) . ' ' .
- $this->msg( "translate-taskui-$id" )->escaped()
- );
- } else {
- $output = '';
-
- foreach ( $tasks as $id ) {
- // Give grep a chance to find the usages:
- // translate-taskui-view, translate-taskui-untranslated, translate-taskui-optional,
- // translate-taskui-acceptqueue, translate-taskui-reviewall,
- // translate-taskui-export-to-file, translate-taskui-export-as-po
- $output .= Html::rawElement( 'label', array(),
- Xml::radio( 'task', $id, $this->options['task'] === $id ) . ' ' .
- $this->msg( "translate-taskui-$id" )->escaped()
- ) . ' ';
- }
-
- return $sep . $output;
- }
- }
-
- protected function groupSelector() {
- $groups = MessageGroups::getAllGroups();
- uasort( $groups, array( 'MessageGroups', 'groupLabelSort' ) );
- $dynamic = MessageGroups::getDynamicGroups();
- $groups = array_keys( array_merge( $dynamic, $groups ) );
-
- $selected = $this->options['group'];
-
- $selector = new XmlSelect( 'group', 'group' );
- $selector->setDefault( $selected );
-
- foreach ( $groups as $id ) {
- $group = MessageGroups::getGroup( $id );
- $hide = MessageGroups::getPriority( $group ) === 'discouraged';
-
- if ( !$group->exists() || ( $hide && $id !== $selected ) ) {
- continue;
- }
-
- $selector->addOption( $group->getLabel(), $id );
- }
-
- return $selector->getHTML();
- }
-
- protected function languageSelector() {
- return TranslateUtils::languageSelector(
- $this->getLanguage()->getCode(),
- $this->options['language']
+ [ 'class' => 'twelve columns description' ],
+ $this->getGroupDescription( $this->group )
);
}
- protected function limitSelector() {
- $items = array( 100, 1000, 5000 );
- $selector = new XmlSelect( 'limit', 'limit' );
- $selector->setDefault( $this->options['limit'] );
-
- foreach ( $items as $count ) {
- $selector->addOption(
- $this->msg( 'translate-page-limit-option' )->numParams( $count )->text(),
- $count
- );
- }
-
- return $selector->getHTML();
- }
-
protected function getGroupDescription( MessageGroup $group ) {
$description = $group->getDescription( $this->getContext() );
if ( $description !== null ) {
- return $this->getOutput()->parse( $description, false );
+ return $this->getOutput()->parse( $description, true, true );
}
-
return '';
}
- /**
- * This function renders the default list of groups when no parameters
- * are passed.
- */
- public function groupInformation() {
- $output = $this->getOutput();
-
- // If we get here in the TUX mode, it means that invalid group
- // was requested. There is default group for no params case.
- if ( self::isBeta( $this->getRequest() ) ) {
- $output->addHtml( Html::rawElement(
+ protected function tuxGroupWarning() {
+ if ( $this->options['group'] === '' ) {
+ return Html::rawElement(
'div',
- array( 'class' => 'twelve columns group-warning' ),
+ [ 'class' => 'twelve columns group-warning' ],
$this->msg( 'tux-translate-page-no-such-group' )->parse()
- ) );
- }
-
- $output->addHtml(
- Html::openElement( 'div', array(
- 'class' => 'eight columns tux-breadcrumb',
- 'data-language' => $this->options['language'],
- ) ) .
- '<span class="grouptitle">' .
- $this->msg( 'translate-msggroupselector-projects' )->escaped() .
- '</span>
- <span class="grouptitle grouplink tail">' .
- $this->msg( 'translate-msggroupselector-search-all' )->escaped() .
- '</span>
- </div>'
- );
- }
-
- protected function tuxWorkflowSelector() {
- return Html::element( 'div', array( 'class' => 'tux-workflow twelve columns' ) );
- }
-
- protected function getWorkflowStatus() {
- $stateConfig = $this->group->getMessageGroupStates()->getStates();
- if ( !$stateConfig ) {
- return false;
- }
-
- if ( MessageGroups::isDynamic( $this->group ) ) {
- return false;
- }
-
- $dbr = wfGetDB( DB_SLAVE );
- $current = $dbr->selectField(
- 'translate_groupreviews',
- 'tgr_state',
- array( 'tgr_group' => $this->options['group'], 'tgr_lang' => $this->options['language'] ),
- __METHOD__
- );
-
- $options = array();
- $stateConfig = array_merge(
- array( '' => array( 'right' => 'impossible-right' ) ),
- $stateConfig
- );
-
- $user = $this->getUser();
- if ( $user->isAllowed( 'translate-groupreview' ) ) {
- // Add an option for every state
- foreach ( $stateConfig as $state => $config ) {
- $stateMessage = $this->msg( "translate-workflow-state-$state" );
- $stateText = $stateMessage->isBlank() ? $state : $stateMessage->text();
-
- $attributes = array(
- 'value' => $state,
- );
-
- if ( $state === strval( $current ) ) {
- $attributes['selected'] = 'selected';
- }
-
- if ( is_array( $config ) && isset( $config['right'] )
- && !$user->isAllowed( $config['right'] )
- ) {
- // Grey out the forbidden option
- $attributes['disabled'] = 'disabled';
- }
-
- $options[] = Html::element( 'option', $attributes, $stateText );
- }
- $stateIndicator = Html::rawElement( 'select',
- array(
- 'class' => 'mw-translate-workflowselector',
- 'name' => 'workflow',
- ),
- implode( "\n", $options )
);
-
- $setButtonAttributes = array(
- 'type' => 'button',
- 'id' => 'mw-translate-workflowset',
- 'data-token' => ApiGroupReview::getToken( 0, '' ),
- 'data-group' => $this->options['group'],
- 'data-language' => $this->options['language'],
- 'style' => 'visibility: hidden;',
- 'value' => 'Set',
- );
- $stateIndicator .= Html::element( 'input', $setButtonAttributes );
- } elseif ( strval( $current ) !== '' ) {
- $stateIndicator = $current;
- } else {
- $stateIndicator = $this->msg( 'translate-workflow-state-' )->escaped();
}
- $message = $this->msg( 'translate-workflowstatus' )->rawParams( $stateIndicator );
- $box = Html::rawElement(
+ // Initialize an empty warning box to be filled client-side.
+ return Html::element(
'div',
- array( 'id' => 'mw-sp-translate-workflow' ),
- $message->escaped()
+ [ 'class' => 'twelve columns group-warning' ],
+ ''
);
+ }
- return $box;
+ protected function tuxWorkflowSelector() {
+ return Html::element( 'div', [ 'class' => 'tux-workflow twelve columns' ] );
}
/**
* Adds the task-based tabs on Special:Translate and few other special pages.
* Hook: SkinTemplateNavigation::SpecialPage
* @since 2012-02-10
+ * @param Skin $skin
+ * @param array &$tabs
+ * @return true
*/
- static function tabify( Skin $skin, array &$tabs ) {
+ public static function tabify( Skin $skin, array &$tabs ) {
$title = $skin->getTitle();
- list( $alias, $sub ) = SpecialPageFactory::resolveAlias( $title->getText() );
+ list( $alias, $sub ) = TranslateUtils::resolveSpecialPageAlias( $title->getText() );
- $pagesInGroup = array( 'Translate', 'LanguageStats', 'MessageGroupStats' );
+ $pagesInGroup = [ 'Translate', 'LanguageStats', 'MessageGroupStats' ];
if ( !in_array( $alias, $pagesInGroup, true ) ) {
return true;
}
- $skin->getOutput()->addModules( 'ext.translate.tabgroup' );
+ $skin->getOutput()->addModuleStyles( 'ext.translate.tabgroup' );
// Extract subpage syntax, otherwise the values are not passed forward
- $params = array();
+ $params = [];
if ( trim( $sub ) !== '' ) {
if ( $alias === 'Translate' || $alias === 'MessageGroupStats' ) {
$params['group'] = $sub;
@@ -908,84 +397,43 @@ class SpecialTranslate extends TranslateSpecialPage {
$messagegroupstats = SpecialPage::getTitleFor( 'MessageGroupStats' );
// Clear the special page tab that might be there already
- $tabs['namespaces'] = array();
+ $tabs['namespaces'] = [];
- $tabs['namespaces']['translate'] = array(
+ $tabs['namespaces']['translate'] = [
'text' => wfMessage( 'translate-taction-translate' )->text(),
- 'href' => $translate->getLocalUrl( $params ),
+ 'href' => $translate->getLocalURL( $params ),
'class' => 'tux-tab',
- );
+ ];
if ( $alias === 'Translate' && $taction === 'translate' ) {
$tabs['namespaces']['translate']['class'] .= ' selected';
}
- if ( !self::isBeta( $request ) ) {
- $tabs['namespaces']['proofread'] = array(
- 'text' => wfMessage( 'translate-taction-proofread' )->text(),
- 'href' => $translate->getLocalUrl( array( 'taction' => 'proofread' ) + $params ),
- 'class' => 'tux-tab',
- );
-
- if ( $alias === 'Translate' && $taction === 'proofread' ) {
- $tabs['namespaces']['proofread']['class'] .= ' selected';
- }
- }
-
- $tabs['views']['lstats'] = array(
+ $tabs['views']['lstats'] = [
'text' => wfMessage( 'translate-taction-lstats' )->text(),
- 'href' => $languagestats->getLocalUrl( $params ),
+ 'href' => $languagestats->getLocalURL( $params ),
'class' => 'tux-tab',
- );
+ ];
if ( $alias === 'LanguageStats' ) {
$tabs['views']['lstats']['class'] .= ' selected';
}
- $tabs['views']['mstats'] = array(
+ $tabs['views']['mstats'] = [
'text' => wfMessage( 'translate-taction-mstats' )->text(),
- 'href' => $messagegroupstats->getLocalUrl( $params ),
+ 'href' => $messagegroupstats->getLocalURL( $params ),
'class' => 'tux-tab',
- );
+ ];
if ( $alias === 'MessageGroupStats' ) {
$tabs['views']['mstats']['class'] .= ' selected';
}
- // Kind of hackish, but works for now
- global $wgTranslateTasks;
- foreach ( array_keys( $wgTranslateTasks ) as $taskname ) {
- if ( !preg_match( '/^export-/', $taskname ) ) {
- continue;
- }
-
- $tabs['views']['export'] = array(
- 'text' => wfMessage( 'translate-taction-export' )->text(),
- 'href' => $translate->getLocalUrl( array( 'taction' => 'export' ) + $params ),
- 'class' => 'tux-tab',
- );
-
- if ( $alias === 'Translate' && $taction === 'export' ) {
- $tabs['views']['export']['class'] .= ' selected';
- }
-
- // We only need the tab to apper once ;)
- break;
- }
+ $tabs['views']['export'] = [
+ 'text' => wfMessage( 'translate-taction-export' )->text(),
+ 'href' => SpecialPage::getTitleFor( 'ExportTranslations' )->getLocalURL( $params ),
+ 'class' => 'tux-tab',
+ ];
return true;
}
-
- public static function isBeta( WebRequest $request ) {
- $tux = $request->getVal( 'tux', null );
-
- if ( $tux === null ) {
- $tux = $request->getCookie( 'tux', null, true );
- } elseif ( $tux ) {
- $request->response()->setCookie( 'tux', 1 );
- } else {
- $request->response()->setCookie( 'tux', 0 );
- }
-
- return $tux;
- }
}
diff --git a/MLEB/Translate/specials/SpecialTranslationStash.php b/MLEB/Translate/specials/SpecialTranslationStash.php
index 0c3e82fd..78ff4b38 100644
--- a/MLEB/Translate/specials/SpecialTranslationStash.php
+++ b/MLEB/Translate/specials/SpecialTranslationStash.php
@@ -4,7 +4,7 @@
*
* @file
* @author Santhosh Thottingal
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -12,14 +12,22 @@
*
* @ingroup SpecialPage TranslateSpecialPage
*/
-class SpecialTranslationStash extends TranslateSpecialPage {
+class SpecialTranslationStash extends SpecialPage {
/** @var TranslationStashStorage */
protected $stash;
- function __construct() {
+ public function __construct() {
parent::__construct( 'TranslationStash' );
}
+ public function doesWrites() {
+ return true;
+ }
+
+ protected function getGroupName() {
+ return 'wiki';
+ }
+
public function execute( $params ) {
global $wgTranslateSandboxLimit, $wgTranslateSecondaryPermissionUrl;
@@ -29,21 +37,22 @@ class SpecialTranslationStash extends TranslateSpecialPage {
$this->stash = new TranslationStashStorage( wfGetDB( DB_MASTER ) );
if ( !$this->hasPermissionToUse() ) {
- if ( $this->getUser()->isLoggedIn() && $wgTranslateSecondaryPermissionUrl ) {
+ if ( $wgTranslateSecondaryPermissionUrl && $this->getUser()->isLoggedIn() ) {
$out->redirect(
- Title::newFromText( $wgTranslateSecondaryPermissionUrl )->getLocalUrl()
+ Title::newFromText( $wgTranslateSecondaryPermissionUrl )->getLocalURL()
);
return;
}
- $out->redirect( Title::newMainPage()->getLocalUrl() );
+ $out->redirect( Title::newMainPage()->getLocalURL() );
return;
}
$out->addJsConfigVars( 'wgTranslateSandboxLimit', $wgTranslateSandboxLimit );
$out->addModules( 'ext.translate.special.translationstash' );
+ $out->addModuleStyles( 'mediawiki.ui.button' );
$this->showPage();
}
@@ -94,7 +103,7 @@ class SpecialTranslationStash extends TranslateSpecialPage {
->numParams( $count )->parse();
}
- $out->addHtml( <<<HTML
+ $out->addHTML( <<<HTML
<div class="grid">
<div class="row translate-welcome-header">
<h1>
@@ -123,13 +132,13 @@ HTML
$sourceLang = $this->getSourceLanguage();
$targetLang = $this->getTargetLanguage();
- $list = Html::element( 'div', array(
+ $list = Html::element( 'div', [
'class' => 'row tux-messagelist',
'data-sourcelangcode' => $sourceLang->getCode(),
'data-sourcelangdir' => $sourceLang->getDir(),
'data-targetlangcode' => $targetLang->getCode(),
'data-targetlangdir' => $targetLang->getDir(),
- ) );
+ ] );
return $list;
}
@@ -142,17 +151,17 @@ HTML
$label = Html::element(
'span',
- array( 'class' => 'ext-translate-language-selector-label' ),
+ [ 'class' => 'ext-translate-language-selector-label' ],
$this->msg( 'tux-languageselector' )->text()
);
$trigger = Html::element(
'span',
- array(
+ [
'class' => 'uls',
- 'lang' => $language->getCode(),
+ 'lang' => $language->getHtmlCode(),
'dir' => $language->getDir(),
- ),
+ ],
$targetLangName
);
@@ -177,7 +186,7 @@ HTML
protected function getTargetLanguage() {
$ui = $this->getLanguage();
$source = $this->getSourceLanguage();
- if ( $ui->getCode() !== $source->getCode() ) {
+ if ( !$ui->equals( $source ) ) {
return $ui;
}
@@ -196,8 +205,7 @@ HTML
}
}
- // User has not chosen any valid language. Pick one at random.
- $codes = array_keys( $supported );
- return Language::factory( $codes[rand( 0, count( $codes ) - 1 )] );
+ // User has not chosen any valid language. Pick the source.
+ return Language::factory( $source->getCode() );
}
}
diff --git a/MLEB/Translate/specials/SpecialTranslationStats.php b/MLEB/Translate/specials/SpecialTranslationStats.php
index 40e35e64..376220e6 100644
--- a/MLEB/Translate/specials/SpecialTranslationStats.php
+++ b/MLEB/Translate/specials/SpecialTranslationStats.php
@@ -5,8 +5,7 @@
* @file
* @author Niklas Laxström
* @author Siebrand Mazeland
- * @copyright Copyright © 2008-2013, Niklas Laxström, Siebrand Mazeland
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -19,15 +18,15 @@
*
* @ingroup SpecialPage TranslateSpecialPage Stats
*/
-class SpecialTranslationStats extends TranslateSpecialPage {
+class SpecialTranslationStats extends SpecialPage {
/// @since 2012-03-05
- protected static $graphs = array(
+ protected static $graphs = [
'edits' => 'TranslatePerLanguageStats',
'users' => 'TranslatePerLanguageStats',
'registrations' => 'TranslateRegistrationStats',
'reviews' => 'ReviewPerLanguageStats',
'reviewers' => 'ReviewPerLanguageStats',
- );
+ ];
public function __construct() {
parent::__construct( 'TranslationStats' );
@@ -37,6 +36,10 @@ class SpecialTranslationStats extends TranslateSpecialPage {
return true;
}
+ protected function getGroupName() {
+ return 'wiki';
+ }
+
/**
* @since 2012-03-05
* @return array List of graph types
@@ -69,6 +72,7 @@ class SpecialTranslationStats extends TranslateSpecialPage {
$opts->add( 'group', '' );
$opts->add( 'uselang', '' );
$opts->add( 'start', '' );
+ $opts->add( 'imagescale', 1.0 );
$opts->fetchValuesFromRequest( $this->getRequest() );
$pars = explode( ';', $par );
@@ -87,12 +91,13 @@ class SpecialTranslationStats extends TranslateSpecialPage {
$opts->validateIntBounds( 'days', 1, 10000 );
$opts->validateIntBounds( 'width', 200, 1000 );
$opts->validateIntBounds( 'height', 200, 1000 );
+ $opts->validateBounds( 'imagescale', 1.0, 4.0 );
if ( $opts['start'] !== '' ) {
- $opts['start'] = strval( wfTimestamp( TS_MW, $opts['start'] ) );
+ $opts['start'] = rtrim( wfTimestamp( TS_ISO_8601, $opts['start'] ), 'Z' );
}
- $validScales = array( 'months', 'weeks', 'days', 'hours' );
+ $validScales = [ 'months', 'weeks', 'days', 'hours' ];
if ( !in_array( $opts['scale'], $validScales ) ) {
$opts['scale'] = 'days';
}
@@ -106,7 +111,7 @@ class SpecialTranslationStats extends TranslateSpecialPage {
$opts['count'] = 'edits';
}
- foreach ( array( 'group', 'language' ) as $t ) {
+ foreach ( [ 'group', 'language' ] as $t ) {
$values = array_map( 'trim', explode( ',', $opts[$t] ) );
$values = array_splice( $values, 0, 4 );
if ( $t === 'group' ) {
@@ -119,10 +124,9 @@ class SpecialTranslationStats extends TranslateSpecialPage {
if ( $this->including() ) {
$this->getOutput()->addHTML( $this->image( $opts ) );
} elseif ( $opts['graphit'] ) {
-
if ( !class_exists( 'PHPlot' ) ) {
- header( "HTTP/1.0 500 Multi fail" );
- echo "PHPlot not found";
+ header( 'HTTP/1.0 500 Multi fail' );
+ echo 'PHPlot not found';
}
if ( !$this->getRequest()->getBool( 'debug' ) ) {
@@ -140,19 +144,20 @@ class SpecialTranslationStats extends TranslateSpecialPage {
/**
* Constructs the form which can be used to generate custom graphs.
* @param FormOptions $opts
+ * @suppress SecurityCheck-DoubleEscaped Intentionally outputting what user should type
*/
protected function form( FormOptions $opts ) {
global $wgScript;
$this->setHeaders();
$out = $this->getOutput();
- TranslateUtils::addSpecialHelpLink( $out, 'Help:Extension:Translate/Statistics_and_reporting' );
+ $out->addHelpLink( 'Help:Extension:Translate/Statistics_and_reporting' );
$out->addWikiMsg( 'translate-statsf-intro' );
$out->addHTML(
Xml::fieldset( $this->msg( 'translate-statsf-options' )->text() ) .
- Html::openElement( 'form', array( 'action' => $wgScript ) ) .
- Html::hidden( 'title', $this->getTitle()->getPrefixedText() ) .
+ Html::openElement( 'form', [ 'action' => $wgScript ] ) .
+ Html::hidden( 'title', $this->getPageTitle()->getPrefixedText() ) .
Html::hidden( 'preview', 1 ) .
'<table>'
);
@@ -163,9 +168,9 @@ class SpecialTranslationStats extends TranslateSpecialPage {
$this->eInput( 'width', $opts ) .
$this->eInput( 'height', $opts ) .
'<tr><td colspan="2"><hr /></td></tr>' .
- $this->eInput( 'start', $opts, 16 ) . // Should fit yyyymmddhhmmss
+ $this->eInput( 'start', $opts, 24 ) .
$this->eInput( 'days', $opts ) .
- $this->eRadio( 'scale', $opts, array( 'months', 'weeks', 'days', 'hours' ) ) .
+ $this->eRadio( 'scale', $opts, [ 'months', 'weeks', 'days', 'hours' ] ) .
$this->eRadio( 'count', $opts, $this->getGraphTypes() ) .
'<tr><td colspan="2"><hr /></td></tr>' .
$this->eLanguage( 'language', $opts ) .
@@ -201,18 +206,18 @@ class SpecialTranslationStats extends TranslateSpecialPage {
$spiParams = '/' . $spiParams;
}
- $titleText = $this->getTitle()->getPrefixedText();
+ $titleText = $this->getPageTitle()->getPrefixedText();
$out->addHTML(
Html::element( 'hr' ) .
- Html::element( 'pre', array(), "{{{$titleText}{$spiParams}}}" )
+ Html::element( 'pre', [], "{{{$titleText}{$spiParams}}}" )
);
$out->addHTML(
Html::element( 'hr' ) .
Html::rawElement(
'div',
- array( 'style' => 'margin: 1em auto; text-align: center;' ),
+ [ 'style' => 'margin: 1em auto; text-align: center;' ],
$this->image( $opts )
)
);
@@ -228,9 +233,8 @@ class SpecialTranslationStats extends TranslateSpecialPage {
protected function eInput( $name, FormOptions $opts, $width = 4 ) {
$value = $opts[$name];
- return
- '<tr><td>' . $this->eLabel( $name ) . '</td><td>' .
- Xml::input( $name, $width, $value, array( 'id' => $name ) ) .
+ return '<tr><td>' . $this->eLabel( $name ) . '</td><td>' .
+ Xml::input( $name, $width, $value, [ 'id' => $name ] ) .
'</td></tr>' . "\n";
}
@@ -247,7 +251,7 @@ class SpecialTranslationStats extends TranslateSpecialPage {
$label = 'translate-statsf-' . $name;
$label = $this->msg( $label )->escaped();
- return Xml::tags( 'label', array( 'for' => $name ), $label );
+ return Xml::tags( 'label', [ 'for' => $name ], $label );
}
/**
@@ -264,11 +268,11 @@ class SpecialTranslationStats extends TranslateSpecialPage {
$label = $this->msg( $label )->escaped();
$s = '<tr><td>' . $label . '</td><td>';
- $options = array();
+ $options = [];
foreach ( $alts as $alt ) {
$id = "$name-$alt";
$radio = Xml::radio( $name, $alt, $alt === $opts[$name],
- array( 'id' => $id ) ) . ' ';
+ [ 'id' => $id ] ) . ' ';
$options[] = $radio . ' ' . $this->eLabel( $id );
}
@@ -290,10 +294,9 @@ class SpecialTranslationStats extends TranslateSpecialPage {
$select = $this->languageSelector();
$select->setTargetId( 'language' );
- return
- '<tr><td>' . $this->eLabel( $name ) . '</td><td>' .
- $select->getHtmlAndPrepareJs() . '<br />' .
- Xml::input( $name, 20, $value, array( 'id' => $name ) ) .
+ return '<tr><td>' . $this->eLabel( $name ) . '</td><td>' .
+ $select->getHtmlAndPrepareJS() . '<br />' .
+ Xml::input( $name, 20, $value, [ 'id' => $name ] ) .
'</td></tr>' . "\n";
}
@@ -302,14 +305,7 @@ class SpecialTranslationStats extends TranslateSpecialPage {
* @return JsSelectToInput
*/
protected function languageSelector() {
- if ( is_callable( array( 'LanguageNames', 'getNames' ) ) ) {
- $languages = LanguageNames::getNames( $this->getLanguage()->getCode(),
- LanguageNames::FALLBACK_NORMAL,
- LanguageNames::LIST_MW_AND_CLDR
- );
- } else {
- $languages = Language::fetchLanguageNames();
- }
+ $languages = TranslateUtils::getLanguageNames( $this->getLanguage()->getCode() );
ksort( $languages );
@@ -319,7 +315,6 @@ class SpecialTranslationStats extends TranslateSpecialPage {
}
$jsSelect = new JsSelectToInput( $selector );
- $jsSelect->setSourceId( 'mw-language-selector' );
return $jsSelect;
}
@@ -336,10 +331,9 @@ class SpecialTranslationStats extends TranslateSpecialPage {
$select = $this->groupSelector();
$select->setTargetId( 'group' );
- return
- '<tr><td>' . $this->eLabel( $name ) . '</td><td>' .
- $select->getHtmlAndPrepareJs() . '<br />' .
- Xml::input( $name, 20, $value, array( 'id' => $name ) ) .
+ return '<tr><td>' . $this->eLabel( $name ) . '</td><td>' .
+ $select->getHtmlAndPrepareJS() . '<br />' .
+ Xml::input( $name, 20, $value, [ 'id' => $name ] ) .
'</td></tr>' . "\n";
}
@@ -370,7 +364,6 @@ class SpecialTranslationStats extends TranslateSpecialPage {
}
$jsSelect = new JsSelectToInput( $selector );
- $jsSelect->setSourceId( 'mw-group-selector' );
return $jsSelect;
}
@@ -381,16 +374,25 @@ class SpecialTranslationStats extends TranslateSpecialPage {
* @return string Html.
*/
protected function image( FormOptions $opts ) {
- $title = $this->getTitle();
- $cgiparams = wfArrayToCgi( array( 'graphit' => true ), $opts->getAllValues() );
- $href = $title->getLocalUrl( $cgiparams );
+ $title = $this->getPageTitle();
+
+ $params = $opts->getChangedValues();
+ $params[ 'graphit' ] = true;
+ $src = $title->getLocalURL( $params );
+
+ $srcsets = [];
+ foreach ( [ 1.5, 2, 3 ] as $scale ) {
+ $params[ 'imagescale' ] = $scale;
+ $srcsets[] = "{$title->getLocalURL( $params )} {$scale}x";
+ }
return Xml::element( 'img',
- array(
- 'src' => $href,
+ [
+ 'src' => $src,
+ 'srcset' => implode( ', ', $srcsets ),
'width' => $opts['width'],
'height' => $opts['height'],
- )
+ ]
);
}
@@ -400,7 +402,7 @@ class SpecialTranslationStats extends TranslateSpecialPage {
* @return array ( string => array ) Data indexed by their date labels.
*/
protected function getData( FormOptions $opts ) {
- $dbr = wfGetDB( DB_SLAVE );
+ $dbr = wfGetDB( DB_REPLICA );
$class = $this->getGraphClass( $opts['count'] );
$so = new $class( $opts );
@@ -425,14 +427,15 @@ class SpecialTranslationStats extends TranslateSpecialPage {
$end = null;
}
- $tables = array();
- $fields = array();
- $conds = array();
+ $tables = [];
+ $fields = [];
+ $conds = [];
$type = __METHOD__;
- $options = array();
+ $options = [];
+ $joins = [];
- $so->preQuery( $tables, $fields, $conds, $type, $options, $start, $end );
- $res = $dbr->select( $tables, $fields, $conds, $type, $options );
+ $so->preQuery( $tables, $fields, $conds, $type, $options, $joins, $start, $end );
+ $res = $dbr->select( $tables, $fields, $conds, $type, $options, $joins );
wfDebug( __METHOD__ . "-queryend\n" );
// Start processing the data
@@ -441,10 +444,10 @@ class SpecialTranslationStats extends TranslateSpecialPage {
$labels = $so->labels();
$keys = array_keys( $labels );
- $values = array_pad( array(), count( $labels ), 0 );
+ $values = array_pad( [], count( $labels ), 0 );
$defaults = array_combine( $keys, $values );
- $data = array();
+ $data = [];
// Allow 10 seconds in the future for processing time
$lastValue = $end !== null ? $end : $now + 10;
$lang = $this->getLanguage();
@@ -479,7 +482,7 @@ class SpecialTranslationStats extends TranslateSpecialPage {
// Don't display dummy label
if ( count( $labels ) === 1 && $labels[0] === 'all' ) {
- $labels = array();
+ $labels = [];
}
foreach ( $labels as &$label ) {
@@ -500,13 +503,13 @@ class SpecialTranslationStats extends TranslateSpecialPage {
}
}
- if ( $end == null ) {
+ if ( $end === null ) {
$last = array_splice( $data, -1, 1 );
// Indicator that the last value is not full
$data[key( $last ) . '*'] = current( $last );
}
- return array( $labels, $data );
+ return [ $labels, $data ];
}
/**
@@ -529,14 +532,14 @@ class SpecialTranslationStats extends TranslateSpecialPage {
} elseif ( $scale === 'weeks' ) {
/* Here we assume that week starts on monday, which does not
* always hold true. Go Xwards day by day until we are on monday */
- while ( date( 'D', $cutoff ) !== "Mon" ) {
+ while ( date( 'D', $cutoff ) !== 'Mon' ) {
$cutoff += $dir * 86400;
}
// Round to nearest day
$cutoff -= ( $cutoff % 86400 );
} elseif ( $scale === 'months' ) {
// Go Xwards/ day by day until we are on the first day of the month
- while ( date( 'j', $cutoff ) !== "1" ) {
+ while ( date( 'j', $cutoff ) !== '1' ) {
$cutoff += $dir * 86400;
}
// Round to nearest day
@@ -567,22 +570,23 @@ class SpecialTranslationStats extends TranslateSpecialPage {
public function draw( FormOptions $opts ) {
global $wgTranslatePHPlotFont;
+ $imageScale = $opts->getValue( 'imagescale' );
$width = $opts->getValue( 'width' );
$height = $opts->getValue( 'height' );
// Define the object
- $plot = new PHPlot( $width, $height );
+ $plot = new PHPlot( $width * $imageScale, $height * $imageScale );
list( $legend, $resData ) = $this->getData( $opts );
$count = count( $resData );
- $skip = intval( $count / ( $width / 60 ) - 1 );
+ $skip = (int)( $count / ( $width / 60 ) - 1 );
$i = $count;
- $data = array();
+ $data = [];
foreach ( $resData as $date => $edits ) {
- if ( $skip > 0 ) {
- if ( ( $count - $i ) % $skip !== 0 ) {
- $date = '';
- }
+ if ( $skip > 0 &&
+ ( $count - $i ) % $skip !== 0
+ ) {
+ $date = '';
}
if ( strpos( $date, ';' ) !== false ) {
@@ -595,22 +599,24 @@ class SpecialTranslationStats extends TranslateSpecialPage {
}
$font = FCFontFinder::findFile( $this->getLanguage()->getCode() );
-
- if ( $font ) {
- $plot->SetDefaultTTFont( $font );
- } else {
- $plot->SetDefaultTTFont( $wgTranslatePHPlotFont );
+ if ( !$font ) {
+ $font = $wgTranslatePHPlotFont;
}
+ $numberFont = FCFontFinder::findFile( 'en' );
+ $plot->setDefaultTTFont( $font );
+ $plot->SetFontTTF( 'generic', $font, 12 * $imageScale );
+ $plot->SetFontTTF( 'legend', $font, 12 * $imageScale );
+ $plot->SetFontTTF( 'x_title', $font, 10 * $imageScale );
+ $plot->SetFontTTF( 'y_title', $font, 10 * $imageScale );
+ $plot->setFontTTF( 'x_label', $numberFont, 8 * $imageScale );
+ $plot->setFontTTF( 'y_label', $numberFont, 8 * $imageScale );
+
$plot->SetDataValues( $data );
if ( $legend !== null ) {
$plot->SetLegend( $legend );
}
- $numberFont = FCFontFinder::findFile( 'en' );
-
- $plot->setFont( 'x_label', $numberFont, 8 );
- $plot->setFont( 'y_label', $numberFont, 8 );
// Give grep a chance to find the usages:
// translate-stats-edits, translate-stats-users, translate-stats-registrations,
// translate-stats-reviews, translate-stats-reviewers
@@ -624,7 +630,7 @@ class SpecialTranslationStats extends TranslateSpecialPage {
$max = max( array_map( 'max', $resData ) );
$max = self::roundToSignificant( $max, 1 );
- $max = round( $max, intval( -log( $max, 10 ) ) );
+ $max = round( $max, (int)( -log( $max, 10 ) ) );
$yTick = 10;
while ( $max / $yTick > $height / 20 ) {
@@ -661,7 +667,7 @@ class SpecialTranslationStats extends TranslateSpecialPage {
$nonSignificant = max( 0, $log - $significant + 1 );
$factor = pow( 10, $nonSignificant );
- return intval( ceil( $number / $factor ) * $factor );
+ return (int)( ceil( $number / $factor ) * $factor );
}
/**
@@ -703,15 +709,16 @@ interface TranslationStatsInterface {
/**
* Query details that the graph must fill.
- * @param array $tables Empty list. Append table names.
- * @param array $fields Empty list. Append field names.
- * @param array $conds Empty array. Append select conditions.
- * @param string $type Append graph type (used to identify queries).
- * @param array $options Empty array. Append extra query options.
+ * @param array &$tables Empty list. Append table names.
+ * @param array &$fields Empty list. Append field names.
+ * @param array &$conds Empty array. Append select conditions.
+ * @param string &$type Append graph type (used to identify queries).
+ * @param array &$options Empty array. Append extra query options.
+ * @param array &$joins Empty array. Append extra join conditions.
* @param string $start Precalculated start cutoff timestamp
* @param string $end Precalculated end cutoff timestamp
*/
- public function preQuery( &$tables, &$fields, &$conds, &$type, &$options, $start, $end );
+ public function preQuery( &$tables, &$fields, &$conds, &$type, &$options, &$joins, $start, $end );
/**
* Return the indexes which this result contributes to.
@@ -731,7 +738,7 @@ interface TranslationStatsInterface {
/**
* Return the timestamp associated with this result row.
* @param array $row Database Result Row
- * @return \string Timestamp.
+ * @return string Timestamp.
*/
public function getTimestamp( $row );
@@ -758,11 +765,11 @@ abstract class TranslationStatsBase implements TranslationStatsInterface {
}
public function indexOf( $row ) {
- return array( 'all' );
+ return [ 'all' ];
}
public function labels() {
- return array( 'all' );
+ return [ 'all' ];
}
public function getDateFormat() {
@@ -779,9 +786,9 @@ abstract class TranslationStatsBase implements TranslationStatsInterface {
}
protected static function makeTimeCondition( $field, $start, $end ) {
- $db = wfGetDB( DB_SLAVE );
+ $db = wfGetDB( DB_REPLICA );
- $conds = array();
+ $conds = [];
if ( $start !== null ) {
$conds[] = "$field >= '{$db->timestamp( $start )}'";
}
@@ -792,9 +799,13 @@ abstract class TranslationStatsBase implements TranslationStatsInterface {
return $conds;
}
- /// @since 2012-03-05
+ /**
+ * @since 2012-03-05
+ * @param array $groupIds
+ * @return array
+ */
protected static function namespacesFromGroups( $groupIds ) {
- $namespaces = array();
+ $namespaces = [];
foreach ( $groupIds as $id ) {
$group = MessageGroups::getGroup( $id );
if ( $group ) {
@@ -812,7 +823,7 @@ abstract class TranslationStatsBase implements TranslationStatsInterface {
* @ingroup Stats
*/
class TranslatePerLanguageStats extends TranslationStatsBase {
- /// array ( string => bool ) Cache used to count active users only once per day.
+ /** @var bool[] array( string => bool ) Cache used to count active users only once per day. */
protected $usercache;
protected $codes, $groups;
@@ -823,26 +834,28 @@ class TranslatePerLanguageStats extends TranslationStatsBase {
$opts->validateIntBounds( 'days', 1, 200 );
}
- public function preQuery( &$tables, &$fields, &$conds, &$type, &$options, $start, $end ) {
+ public function preQuery( &$tables, &$fields, &$conds, &$type, &$options, &$joins, $start, $end ) {
global $wgTranslateMessageNamespaces;
- $db = wfGetDB( DB_SLAVE );
+ $db = wfGetDB( DB_REPLICA );
- $tables = array( 'recentchanges' );
- $fields = array( 'rc_timestamp' );
+ $tables = [ 'recentchanges' ];
+ $fields = [ 'rc_timestamp' ];
+ $joins = [];
- $conds = array(
+ $conds = [
'rc_namespace' => $wgTranslateMessageNamespaces,
'rc_bot' => 0,
'rc_type != ' . RC_LOG,
- );
+ ];
$timeConds = self::makeTimeCondition( 'rc_timestamp', $start, $end );
$conds = array_merge( $conds, $timeConds );
- $options = array( 'ORDER BY' => 'rc_timestamp' );
+ $options = [ 'ORDER BY' => 'rc_timestamp' ];
$this->groups = array_filter( array_map( 'trim', explode( ',', $this->opts['group'] ) ) );
+ $this->groups = array_map( 'MessageGroups::normalizeId', $this->groups );
$this->codes = array_filter( array_map( 'trim', explode( ',', $this->opts['language'] ) ) );
$namespaces = self::namespacesFromGroups( $this->groups );
@@ -850,7 +863,7 @@ class TranslatePerLanguageStats extends TranslationStatsBase {
$conds['rc_namespace'] = $namespaces;
}
- $languages = array();
+ $languages = [];
foreach ( $this->codes as $code ) {
$languages[] = 'rc_title ' . $db->buildLike( $db->anyString(), "/$code" );
}
@@ -865,7 +878,14 @@ class TranslatePerLanguageStats extends TranslationStatsBase {
}
if ( $this->opts['count'] === 'users' ) {
- $fields[] = 'rc_user_text';
+ if ( class_exists( ActorMigration::class ) ) {
+ $actorQuery = ActorMigration::newMigration()->getJoin( 'rc_user' );
+ $tables += $actorQuery['tables'];
+ $fields['rc_user_text'] = $actorQuery['fields']['rc_user_text'];
+ $joins += $actorQuery['joins'];
+ } else {
+ $fields[] = 'rc_user_text';
+ }
}
$type .= '-perlang';
@@ -896,8 +916,8 @@ class TranslatePerLanguageStats extends TranslationStatsBase {
// The key-building needs to be in sync with ::labels().
list( $key, $code ) = TranslateUtils::figureMessage( $row->rc_title );
- $groups = array();
- $codes = array();
+ $groups = [];
+ $codes = [];
if ( $this->groups ) {
/*
@@ -909,7 +929,7 @@ class TranslatePerLanguageStats extends TranslationStatsBase {
}
if ( $this->codes ) {
- $codes = array( $code );
+ $codes = [ $code ];
}
return $this->combineTwoArrays( $groups, $codes );
@@ -954,7 +974,7 @@ class TranslatePerLanguageStats extends TranslationStatsBase {
$codes[] = false;
}
- $items = array();
+ $items = [];
foreach ( $groups as $group ) {
foreach ( $codes as $code ) {
$items[] = $this->makeLabel( $group, $code );
@@ -996,12 +1016,13 @@ class TranslatePerLanguageStats extends TranslationStatsBase {
* @ingroup Stats
*/
class TranslateRegistrationStats extends TranslationStatsBase {
- public function preQuery( &$tables, &$fields, &$conds, &$type, &$options, $start, $end ) {
+ public function preQuery( &$tables, &$fields, &$conds, &$type, &$options, &$joins, $start, $end ) {
$tables = 'user';
$fields = 'user_registration';
$conds = self::makeTimeCondition( 'user_registration', $start, $end );
$type .= '-registration';
- $options = array();
+ $options = [];
+ $joins = [];
}
public function getTimestamp( $row ) {
@@ -1015,23 +1036,24 @@ class TranslateRegistrationStats extends TranslationStatsBase {
* @ingroup Stats
*/
class ReviewPerLanguageStats extends TranslatePerLanguageStats {
- public function preQuery( &$tables, &$fields, &$conds, &$type, &$options, $start, $end ) {
+ public function preQuery( &$tables, &$fields, &$conds, &$type, &$options, &$joins, $start, $end ) {
global $wgTranslateMessageNamespaces;
- $db = wfGetDB( DB_SLAVE );
+ $db = wfGetDB( DB_REPLICA );
- $tables = array( 'logging' );
- $fields = array( 'log_timestamp' );
+ $tables = [ 'logging' ];
+ $fields = [ 'log_timestamp' ];
+ $joins = [];
- $conds = array(
+ $conds = [
'log_namespace' => $wgTranslateMessageNamespaces,
'log_action' => 'message',
- );
+ ];
$timeConds = self::makeTimeCondition( 'log_timestamp', $start, $end );
$conds = array_merge( $conds, $timeConds );
- $options = array( 'ORDER BY' => 'log_timestamp' );
+ $options = [ 'ORDER BY' => 'log_timestamp' ];
$this->groups = array_filter( array_map( 'trim', explode( ',', $this->opts['group'] ) ) );
$this->codes = array_filter( array_map( 'trim', explode( ',', $this->opts['language'] ) ) );
@@ -1041,7 +1063,7 @@ class ReviewPerLanguageStats extends TranslatePerLanguageStats {
$conds['log_namespace'] = $namespaces;
}
- $languages = array();
+ $languages = [];
foreach ( $this->codes as $code ) {
$languages[] = 'log_title ' . $db->buildLike( $db->anyString(), "/$code" );
}
@@ -1056,7 +1078,14 @@ class ReviewPerLanguageStats extends TranslatePerLanguageStats {
}
if ( $this->opts['count'] === 'reviewers' ) {
- $fields[] = 'log_user_text';
+ if ( class_exists( ActorMigration::class ) ) {
+ $actorQuery = ActorMigration::newMigration()->getJoin( 'log_user' );
+ $tables += $actorQuery['tables'];
+ $fields['log_user_text'] = $actorQuery['fields']['log_user_text'];
+ $joins += $actorQuery['joins'];
+ } else {
+ $fields[] = 'log_user_text';
+ }
}
$type .= '-reviews';
@@ -1087,8 +1116,8 @@ class ReviewPerLanguageStats extends TranslatePerLanguageStats {
// The key-building needs to be in sync with ::labels().
list( $key, $code ) = TranslateUtils::figureMessage( $row->log_title );
- $groups = array();
- $codes = array();
+ $groups = [];
+ $codes = [];
if ( $this->groups ) {
/* Get list of keys that the message belongs to, and filter
@@ -1098,7 +1127,7 @@ class ReviewPerLanguageStats extends TranslatePerLanguageStats {
}
if ( $this->codes ) {
- $codes = array( $code );
+ $codes = [ $code ];
}
return $this->combineTwoArrays( $groups, $codes );
diff --git a/MLEB/Translate/specials/SpecialTranslations.php b/MLEB/Translate/specials/SpecialTranslations.php
index 203391e5..5329e7a4 100644
--- a/MLEB/Translate/specials/SpecialTranslations.php
+++ b/MLEB/Translate/specials/SpecialTranslations.php
@@ -5,8 +5,7 @@
* @file
* @author Siebrand Mazeland
* @author Niklas Laxstörm
- * @copyright Copyright © 2008-2013 Niklas Laxström, Siebrand Mazeland
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -15,8 +14,8 @@
*
* @ingroup SpecialPage TranslateSpecialPage
*/
-class SpecialTranslations extends SpecialAllpages {
- function __construct() {
+class SpecialTranslations extends SpecialAllPages {
+ public function __construct() {
parent::__construct( 'Translations' );
}
@@ -24,17 +23,21 @@ class SpecialTranslations extends SpecialAllpages {
return 'pages';
}
+ function getDescription() {
+ return $this->msg( 'translations' )->text();
+ }
+
/**
* Entry point : initialise variables and call subfunctions.
* @param string $par Message key. Becomes "MediaWiki:Allmessages" when called like
* Special:Translations/MediaWiki:Allmessages (default null)
*/
- function execute( $par ) {
+ public function execute( $par ) {
$this->setHeaders();
$this->outputHeader();
- $this->includeAssets();
$out = $this->getOutput();
+ $out->addModuleStyles( 'ext.translate.legacy' );
$par = (string)$par;
@@ -62,16 +65,16 @@ class SpecialTranslations extends SpecialAllpages {
$title = Title::newFromText( $par, $namespace );
}
- TranslateUtils::addSpecialHelpLink(
- $out,
+ $out->addHelpLink(
'Help:Extension:Translate/Statistics_and_reporting#Translations_in_all_languages'
);
if ( !$title ) {
$title = Title::makeTitle( NS_MEDIAWIKI, '' );
- $out->addHTML( $this->namespaceMessageForm( $title ) );
+ $this->namespaceMessageForm( $title );
} else {
- $out->addHTML( $this->namespaceMessageForm( $title ) . '<br />' );
+ $this->namespaceMessageForm( $title );
+ $out->addHTML( '<br />' );
$this->showTranslations( $title );
}
}
@@ -79,52 +82,44 @@ class SpecialTranslations extends SpecialAllpages {
/**
* Message input fieldset
*
- * @param Title $title (default: null)
- * @return string HTML for fieldset.
+ * @param Title|null $title (default: null)
*/
- function namespaceMessageForm( Title $title = null ) {
- global $wgScript;
-
- $namespaces = new XmlSelect( 'namespace', 'namespace' );
- $namespaces->setDefault( $title->getNamespace() );
+ protected function namespaceMessageForm( Title $title = null ) {
+ $options = [];
foreach ( $this->getSortedNamespaces() as $text => $index ) {
- $namespaces->addOption( $text, $index );
+ $options[ $text ] = $index;
}
- $out = Xml::openElement( 'div', array( 'class' => 'namespaceoptions' ) );
- $out .= Xml::openElement( 'form', array( 'method' => 'get', 'action' => $wgScript ) );
- $out .= Html::hidden( 'title', $this->getTitle()->getPrefixedText() );
- $out .= Xml::openElement( 'fieldset' );
- $out .= Xml::element(
- 'legend',
- null,
- $this->msg( 'translate-translations-fieldset-title' )->text()
- );
- $out .= Xml::openElement( 'table', array( 'id' => 'nsselect', 'class' => 'allpages' ) );
- $out .= "<tr>
- <td class='mw-label'>" .
- Xml::label( $this->msg( 'translate-translations-messagename' )->text(), 'message' ) .
- "</td>
- <td class='mw-input'>" .
- Xml::input( 'message', 30, $title->getText(), array( 'id' => 'message' ) ) .
- "</td>
- </tr>
- <tr>
- <td class='mw-label'>" .
- Xml::label( $this->msg( 'translate-translations-project' )->text(), 'namespace' ) .
- "</td>
- <td class='mw-input'>" .
- $namespaces->getHTML() . ' ' .
- Xml::submitButton( $this->msg( 'allpagessubmit' )->text() ) .
- "</td>
- </tr>";
- $out .= Xml::closeElement( 'table' );
- $out .= Xml::closeElement( 'fieldset' );
- $out .= Xml::closeElement( 'form' );
- $out .= Xml::closeElement( 'div' );
-
- return $out;
+ $formDescriptor = [
+ 'textbox' => [
+ 'type' => 'text',
+ 'name' => 'message',
+ 'id' => 'message',
+ 'label-message' => 'translate-translations-messagename',
+ 'size' => 30,
+ 'default' => $title->getText(),
+ ],
+ 'selector' => [
+ 'type' => 'select',
+ 'name' => 'namespace',
+ 'id' => 'namespace',
+ 'label-message' => 'translate-translations-project',
+ 'options' => $options,
+ 'default' => $title->getNamespace(),
+ ]
+ ];
+
+ $context = new DerivativeContext( $this->getContext() );
+ $context->setTitle( $this->getPageTitle() ); // Remove subpage
+
+ $htmlForm = HTMLForm::factory( 'ooui', $formDescriptor, $context );
+ $htmlForm
+ ->setMethod( 'get' )
+ ->setSubmitTextMsg( 'allpagessubmit' )
+ ->setWrapperLegendMsg( 'translate-translations-fieldset-title' )
+ ->prepareForm()
+ ->displayForm( false );
}
/**
@@ -135,7 +130,7 @@ class SpecialTranslations extends SpecialAllpages {
public function getSortedNamespaces() {
global $wgTranslateMessageNamespaces, $wgContLang;
- $nslist = array();
+ $nslist = [];
foreach ( $wgTranslateMessageNamespaces as $ns ) {
$nslist[$wgContLang->getFormattedNsText( $ns )] = $ns;
}
@@ -149,7 +144,7 @@ class SpecialTranslations extends SpecialAllpages {
*
* @param Title $title (default: null)
*/
- function showTranslations( Title $title ) {
+ protected function showTranslations( Title $title ) {
$handle = new MessageHandle( $title );
$namespace = $title->getNamespace();
$message = $handle->getKey();
@@ -160,19 +155,19 @@ class SpecialTranslations extends SpecialAllpages {
return;
}
- $dbr = wfGetDB( DB_SLAVE );
+ $dbr = wfGetDB( DB_REPLICA );
$res = $dbr->select( 'page',
- array( 'page_namespace', 'page_title' ),
- array(
+ [ 'page_namespace', 'page_title' ],
+ [
'page_namespace' => $namespace,
'page_title ' . $dbr->buildLike( "$message/", $dbr->anyString() ),
- ),
+ ],
__METHOD__,
- array(
+ [
'ORDER BY' => 'page_title',
'USE INDEX' => 'name_title',
- )
+ ]
);
if ( !$res->numRows() ) {
@@ -190,7 +185,7 @@ class SpecialTranslations extends SpecialAllpages {
}
// Normal output.
- $titles = array();
+ $titles = [];
foreach ( $res as $s ) {
$titles[] = $s->page_title;
@@ -198,9 +193,9 @@ class SpecialTranslations extends SpecialAllpages {
$pageInfo = TranslateUtils::getContents( $titles, $namespace );
- $tableheader = Xml::openElement( 'table', array(
+ $tableheader = Xml::openElement( 'table', [
'class' => 'mw-sp-translate-table sortable'
- ) );
+ ] );
$tableheader .= Xml::openElement( 'tr' );
$tableheader .= Xml::element( 'th', null, $this->msg( 'allmessagesname' )->text() );
@@ -212,16 +207,14 @@ class SpecialTranslations extends SpecialAllpages {
$canTranslate = $this->getUser()->isAllowed( 'translate' );
- $ajaxPageList = array();
- $historyText = "&#160;<sup>" .
+ $historyText = '&#160;<sup>' .
$this->msg( 'translate-translations-history-short' )->escaped() .
- "</sup>&#160;";
+ '</sup>&#160;';
$separator = $this->msg( 'word-separator' )->plain();
foreach ( $res as $s ) {
$key = $s->page_title;
$tTitle = Title::makeTitle( $s->page_namespace, $key );
- $ajaxPageList[] = $tTitle->getPrefixedDBkey();
$tHandle = new MessageHandle( $tTitle );
$code = $tHandle->getCode();
@@ -229,25 +222,19 @@ class SpecialTranslations extends SpecialAllpages {
$text = TranslateUtils::getLanguageName( $code, $this->getLanguage()->getCode() );
$text .= $separator;
$text .= $this->msg( 'parentheses' )->params( $code )->plain();
- $text = htmlspecialchars( $text );
-
- if ( $canTranslate ) {
- $tools['edit'] = TranslationHelpers::ajaxEditLink(
- $tTitle,
- $text
- );
- } else {
- $tools['edit'] = Linker::link( $tTitle, $text );
- }
+ $tools['edit'] = Html::element(
+ 'a',
+ [ 'href' => TranslateUtils::getEditorUrl( $tHandle ) ],
+ $text
+ );
- $tools['history'] = Linker::link(
+ $tools['history'] = $this->getLinkRenderer()->makeLink(
$tTitle,
- $historyText,
- array(
- 'action',
+ new HtmlArmor( $historyText ),
+ [
'title' => $this->msg( 'history-title', $tTitle->getPrefixedDBkey() )->text()
- ),
- array( 'action' => 'history' )
+ ],
+ [ 'action' => 'history' ]
);
if ( MessageHandle::hasFuzzyString( $pageInfo[$key][0] ) || $tHandle->isFuzzy() ) {
@@ -256,56 +243,25 @@ class SpecialTranslations extends SpecialAllpages {
$class = 'def';
}
+ $languageAttributes = [];
+ if ( Language::isKnownLanguageTag( $code ) ) {
+ $language = Language::factory( $code );
+ $languageAttributes = [
+ 'lang' => $language->getHtmlCode(),
+ 'dir' => $language->getDir(),
+ ];
+ }
+
+ $formattedContent = TranslateUtils::convertWhiteSpaceToHTML( $pageInfo[$key][0] );
+
$leftColumn = $tools['history'] . $tools['edit'];
- $out .= Xml::tags( 'tr', array( 'class' => $class ),
+ $out .= Xml::tags( 'tr', [ 'class' => $class ],
Xml::tags( 'td', null, $leftColumn ) .
- Xml::tags( 'td', array( 'lang' => $code, 'dir' => Language::factory( $code )->getDir() ),
- TranslateUtils::convertWhiteSpaceToHTML( $pageInfo[$key][0] ) )
+ Xml::tags( 'td', $languageAttributes, $formattedContent )
);
}
$out .= Xml::closeElement( 'table' );
$this->getOutput()->addHTML( $out );
-
- $vars = array( 'trlKeys' => $ajaxPageList );
- $this->getOutput()->addScript( Skin::makeVariablesScript( $vars ) );
- }
-
- /**
- * Get a self-referential title object
- *
- * For backward compatibility for https://gerrit.wikimedia.org/r/#/c/103587.
- * Should be removed when the lowest supported version is MediaWiki 1.23.
- *
- * @param string|bool $subpage
- * @return Title|void
- */
- public function getTitle( $subpage = false ) {
- if ( method_exists( $this, 'getPageTitle' ) ) {
- return $this->getPageTitle();
- } else {
- return self::getTitleFor( $this->mName, $subpage );
- }
- }
-
- /**
- * Get code for a page name
- *
- * @param string $name Page title (f.e. "MediaWiki:Main_page/nl").
- * @return string Language code
- */
- private function getCode( $name ) {
- $from = strrpos( $name, '/' );
-
- return substr( $name, $from + 1 );
- }
-
- /**
- * Add JavaScript assets
- */
- private function includeAssets() {
- $out = $this->getOutput();
- TranslationHelpers::addModules( $out );
- $out->addModules( 'ext.translate.messagetable' );
}
}
diff --git a/MLEB/Translate/specials/TranslateSpecialPage.php b/MLEB/Translate/specials/TranslateSpecialPage.php
deleted file mode 100644
index 8d8f9e34..00000000
--- a/MLEB/Translate/specials/TranslateSpecialPage.php
+++ /dev/null
@@ -1,37 +0,0 @@
-<?php
-/**
- * Contains logic for all special pages of the Translate extension
- *
- * @file
- * @author Siebrand Mazeland
- * @copyright Copyright © 2013 Siebrand Mazeland
- * @license GPL-2.0+
- */
-
-/**
- * A special page that all special pages of the Translate extension should use.
- *
- * @ingroup SpecialPage TranslateSpecialPage
- */
-class TranslateSpecialPage extends SpecialPage {
- /**
- * Get a self-referential title object
- *
- * For backward compatibility for https://gerrit.wikimedia.org/r/#/c/103587.
- * Should be removed when the lowest supported version is MediaWiki 1.23.
- *
- * @param string|bool $subpage
- * @return Title|void
- */
- public function getTitle( $subpage = false ) {
- if ( method_exists( $this, 'getPageTitle' ) ) {
- return $this->getPageTitle();
- } else {
- return self::getTitleFor( $this->mName, $subpage );
- }
- }
-
- protected function getGroupName() {
- return 'wiki';
- }
-}
diff --git a/MLEB/Translate/sql/translate_reviews.sql b/MLEB/Translate/sql/translate_reviews.sql
index 28bee7d9..63f1d8d8 100644
--- a/MLEB/Translate/sql/translate_reviews.sql
+++ b/MLEB/Translate/sql/translate_reviews.sql
@@ -6,8 +6,7 @@ CREATE TABLE /*$wgDBprefix*/translate_reviews (
trr_page int NOT NULL,
-- Link to revision.rev_id
- trr_revision int NOT NULL
-) /*$wgDBTableOptions*/;
+ trr_revision int NOT NULL,
-CREATE UNIQUE INDEX /*i*/trr_user_page_revision ON /*$wgDBprefix*/translate_reviews
-(trr_user, trr_page, trr_revision);
+ PRIMARY KEY (trr_page, trr_revision, trr_user)
+) /*$wgDBTableOptions*/;
diff --git a/MLEB/Translate/sql/translate_tm.sql b/MLEB/Translate/sql/translate_tm.sql
index 6e3a44c2..99442078 100644
--- a/MLEB/Translate/sql/translate_tm.sql
+++ b/MLEB/Translate/sql/translate_tm.sql
@@ -13,7 +13,7 @@ CREATE TABLE /*_*/translate_tms (
-- The actual text
tms_text mediumblob NOT NULL,
-- Identifier where this text came from
- tms_context mediumblob NOT NULL default ''
+ tms_context mediumblob NOT NULL
) /*$wgDBTableOptions*/;
CREATE INDEX /*i*/tms_lang_len ON /*_*/translate_tms (tms_lang, tms_len);
@@ -33,6 +33,6 @@ DROP TABLE IF EXISTS /*_*/translate_tmf;
CREATE TABLE /*_*/translate_tmf (
tmf_sid int unsigned NOT NULL,
tmf_text text
-) ENGINE=MYISAM;
+) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4;
CREATE FULLTEXT INDEX /*i*/tmf_text ON /*_*/translate_tmf (tmf_text);
diff --git a/MLEB/Translate/stash/StashedTranslation.php b/MLEB/Translate/stash/StashedTranslation.php
index c2c05bda..773d3069 100644
--- a/MLEB/Translate/stash/StashedTranslation.php
+++ b/MLEB/Translate/stash/StashedTranslation.php
@@ -4,7 +4,7 @@
*
* @file
* @author Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -24,22 +24,30 @@ class StashedTranslation {
$this->metadata = $metadata;
}
- /// @return User
+ /**
+ * @return User
+ */
public function getUser() {
return $this->user;
}
- /// @return Title
+ /**
+ * @return Title
+ */
public function getTitle() {
return $this->title;
}
- /// @return string
+ /**
+ * @return string
+ */
public function getValue() {
return $this->value;
}
- /// @return array
+ /**
+ * @return array
+ */
public function getMetadata() {
return $this->metadata;
}
diff --git a/MLEB/Translate/stash/TranslationStashStorage.php b/MLEB/Translate/stash/TranslationStashStorage.php
index 6b9ea358..75809710 100644
--- a/MLEB/Translate/stash/TranslationStashStorage.php
+++ b/MLEB/Translate/stash/TranslationStashStorage.php
@@ -4,9 +4,11 @@
*
* @file
* @author Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
+use Wikimedia\Rdbms\IDatabase;
+
/**
* Storage class for stashed translations. This one uses sql tables as storage.
* @since 2013.06
@@ -15,7 +17,7 @@ class TranslationStashStorage {
protected $db;
protected $dbTable;
- public function __construct( DatabaseBase $db, $table = 'translate_stash' ) {
+ public function __construct( IDatabase $db, $table = 'translate_stash' ) {
$this->db = $db;
$this->dbTable = $table;
}
@@ -23,36 +25,37 @@ class TranslationStashStorage {
/**
* Adds a new translation to the stash. If the same key already exists, the
* previous translation and metadata will be replaced with the new one.
+ *
+ * @param StashedTranslation $item
*/
public function addTranslation( StashedTranslation $item ) {
- $row = array(
+ $row = [
'ts_user' => $item->getUser()->getId(),
- 'ts_title' => $item->getTitle()->getDBKey(),
+ 'ts_title' => $item->getTitle()->getDBkey(),
'ts_namespace' => $item->getTitle()->getNamespace(),
'ts_value' => $item->getValue(),
'ts_metadata' => serialize( $item->getMetadata() ),
- );
+ ];
- $indexes = array(
- array( 'ts_user', 'ts_namespace', 'ts_title' )
- );
+ $indexes = [
+ [ 'ts_user', 'ts_namespace', 'ts_title' ]
+ ];
$this->db->replace( $this->dbTable, $indexes, $row, __METHOD__ );
}
-
/**
* Gets all stashed translations for the given user.
* @param User $user
* @return StashedTranslation[]
*/
public function getTranslations( User $user ) {
- $conds = array( 'ts_user' => $user->getId() );
- $fields = array( 'ts_namespace', 'ts_title', 'ts_value', 'ts_metadata' );
+ $conds = [ 'ts_user' => $user->getId() ];
+ $fields = [ 'ts_namespace', 'ts_title', 'ts_value', 'ts_metadata' ];
$res = $this->db->select( $this->dbTable, $fields, $conds, __METHOD__ );
- $objects = array();
+ $objects = [];
foreach ( $res as $row ) {
$objects[] = new StashedTranslation(
$user,
@@ -71,7 +74,7 @@ class TranslationStashStorage {
* @since 2013.10
*/
public function deleteTranslations( User $user ) {
- $conds = array( 'ts_user' => $user->getId() );
+ $conds = [ 'ts_user' => $user->getId() ];
$this->db->delete( $this->dbTable, $conds, __METHOD__ );
}
}
diff --git a/MLEB/Translate/stringmangler/StringMangler.php b/MLEB/Translate/stringmangler/StringMangler.php
index 9215f6f2..6e0e1575 100644
--- a/MLEB/Translate/stringmangler/StringMangler.php
+++ b/MLEB/Translate/stringmangler/StringMangler.php
@@ -3,7 +3,7 @@
* StringMangler interface.
* @file
* @author Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -13,8 +13,7 @@
* with multiple message groups.
*
* The operations have to be reversible so that
- * x equals unMangle( mangle( x ) ).
- *
+ * x equals unmangle( mangle( x ) ).
*/
interface StringMangler {
/// @todo Does this really need to be in the interface???
@@ -30,7 +29,7 @@ interface StringMangler {
* Match strings against a pattern.
* If string matches, mangle() should mangle the key.
* @param string $string Message key.
- * @return \bool
+ * @return bool
*/
public function match( $string );
@@ -46,5 +45,5 @@ interface StringMangler {
* @param string|string[] $data Mangled message keys.
* @return string|string[] Umangled message keys.
*/
- public function unMangle( $data );
+ public function unmangle( $data );
}
diff --git a/MLEB/Translate/stringmangler/StringMatcher.php b/MLEB/Translate/stringmangler/StringMatcher.php
index 88c12c61..630ea144 100644
--- a/MLEB/Translate/stringmangler/StringMatcher.php
+++ b/MLEB/Translate/stringmangler/StringMatcher.php
@@ -3,7 +3,7 @@
* Default StringMangler implementation.
* @file
* @author Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -12,27 +12,31 @@
* All matching strings are prefixed with the same prefix.
*/
class StringMatcher implements StringMangler, MetaYamlSchemaExtender {
- /// Prefix for mangled message keys
+ /** @var string Prefix for mangled message keys */
protected $sPrefix = '';
- /// Exact message keys
- protected $aExact = array();
- /// Patterns of type foo*
- protected $aPrefix = array();
- /// Patterns that contain wildcard anywhere else than in the end
- protected $aRegex = array();
+ /** @var string[] Exact message keys */
+ protected $aExact = [];
+ /** @var string[] Patterns of type foo* */
+ protected $aPrefix = [];
+ /** @var string[] Patterns that contain wildcard anywhere else than in the end */
+ protected $aRegex = [];
/**
* Alias for making NO-OP string mangler.
+ *
* @return StringMatcher
*/
public static function EmptyMatcher() {
- return new StringMatcher;
+ return new StringMatcher();
}
/**
* Constructor, see EmptyMatcher();
+ *
+ * @param string $prefix
+ * @param array $patterns
*/
- public function __construct( $prefix = '', $patterns = array() ) {
+ public function __construct( $prefix = '', array $patterns = [] ) {
$this->sPrefix = $prefix;
$this->init( $patterns );
}
@@ -41,11 +45,11 @@ class StringMatcher implements StringMangler, MetaYamlSchemaExtender {
static $valid = null;
if ( $valid === null ) {
global $wgLegalTitleChars;
- $valid = strtr( $wgLegalTitleChars, array(
+ $valid = strtr( $wgLegalTitleChars, [
'=' => '', // equals sign, which is itself usef for escaping
'&' => '', // ampersand, for entities
'%' => '', // percent sign, which is used in URL encoding
- ) );
+ ] );
}
return $valid;
@@ -71,7 +75,7 @@ class StringMatcher implements StringMangler, MetaYamlSchemaExtender {
$prefix = substr( $string, 0, -1 );
$this->aPrefix[$prefix] = strlen( $prefix );
} else {
- $string = str_replace( '\\*', '.+', preg_quote( $string ) );
+ $string = str_replace( '\\*', '.+', preg_quote( $string, '/' ) );
$this->aRegex[] = "/^$string$/";
}
}
@@ -118,11 +122,11 @@ class StringMatcher implements StringMangler, MetaYamlSchemaExtender {
} elseif ( $data === null ) {
return $data;
} else {
- throw new MWException( __METHOD__ . ": Unsupported datatype" );
+ throw new MWException( __METHOD__ . ': Unsupported datatype' );
}
}
- public function unMangle( $data ) {
+ public function unmangle( $data ) {
if ( is_array( $data ) ) {
return $this->mangleArray( $data, true );
} elseif ( is_string( $data ) ) {
@@ -130,7 +134,7 @@ class StringMatcher implements StringMangler, MetaYamlSchemaExtender {
} elseif ( $data === null ) {
return $data;
} else {
- throw new MWException( __METHOD__ . ": Unsupported datatype" );
+ throw new MWException( __METHOD__ . ': Unsupported datatype' );
}
}
@@ -149,16 +153,23 @@ class StringMatcher implements StringMangler, MetaYamlSchemaExtender {
$string = $this->sPrefix . $string;
}
+ $escaper = function ( $match ) {
+ $esc = '';
+ foreach ( str_split( $match[ 0 ] ) as $c ) {
+ $esc .= '=' . sprintf( '%02X', ord( $c ) );
+ }
+ return $esc;
+ };
+
// Apply a "quoted-printable"-like escaping
$valid = self::getValidKeyChars();
- $escapedString = preg_replace_callback( "/[^$valid]/",
- function ( $match ) {
- return '=' . sprintf( '%02X', ord( $match[0] ) );
- },
- $string
- );
+ $string = preg_replace_callback( "/[^$valid]/", $escaper, $string );
+ // Additional limitations in MediaWiki, see MediaWikiTitleCodec::splitTitleString
+ $string = preg_replace_callback( '/(~~~|^[ _]|[ _]$|[ _]{2,}|^:)/', $escaper, $string );
+ // TODO: length check + truncation
+ // TODO: forbid path travels
- return $escapedString;
+ return $string;
}
/**
@@ -169,7 +180,7 @@ class StringMatcher implements StringMangler, MetaYamlSchemaExtender {
protected function unMangleString( $string ) {
// Unescape the "quoted-printable"-like escaping,
// which is applied in mangleString.
- $unescapedString = preg_replace_callback( "/=([A-F0-9]{2})/",
+ $unescapedString = preg_replace_callback( '/=([A-F0-9]{2})/',
function ( $match ) {
return chr( hexdec( $match[0] ) );
},
@@ -192,7 +203,7 @@ class StringMatcher implements StringMangler, MetaYamlSchemaExtender {
* @return string[]|array (Un)mangled strings.
*/
protected function mangleArray( array $array, $reverse = false ) {
- $temp = array();
+ $temp = [];
if ( !$this->isAssoc( $array ) ) {
foreach ( $array as $key => &$value ) {
@@ -220,28 +231,28 @@ class StringMatcher implements StringMangler, MetaYamlSchemaExtender {
}
public static function getExtraSchema() {
- $schema = array(
- 'root' => array(
+ $schema = [
+ 'root' => [
'_type' => 'array',
- '_children' => array(
- 'MANGLER' => array(
+ '_children' => [
+ 'MANGLER' => [
'_type' => 'array',
- '_children' => array(
- 'prefix' => array(
+ '_children' => [
+ 'prefix' => [
'_type' => 'text',
'_not_empty' => true
- ),
- 'patterns' => array(
+ ],
+ 'patterns' => [
'_type' => 'array',
'_required' => true,
'_ignore_extra_keys' => true,
- '_children' => array(),
- ),
- )
- )
- )
- )
- );
+ '_children' => [],
+ ],
+ ]
+ ]
+ ]
+ ]
+ ];
return $schema;
}
diff --git a/MLEB/Translate/tag/PageTranslationHooks.php b/MLEB/Translate/tag/PageTranslationHooks.php
index b75ccb48..bc134bc3 100644
--- a/MLEB/Translate/tag/PageTranslationHooks.php
+++ b/MLEB/Translate/tag/PageTranslationHooks.php
@@ -4,10 +4,11 @@
*
* @file
* @author Niklas Laxström
- * @copyright Copyright © 2008-2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
+use Wikimedia\ScopedCallback;
+
/**
* Hooks for page translation.
*
@@ -20,11 +21,17 @@ class PageTranslationHooks {
// Check if job queue is running
public static $jobQueueRunning = false;
+ // Check if we are just rendering tags or such
+ public static $renderingContext = false;
+
+ // Used to communicate data between LanguageLinks and SkinTemplateGetLanguageLink hooks.
+ private static $languageLinkData = [];
+
/**
* Hook: ParserBeforeStrip
- * @param $parser Parser
- * @param $text
- * @param $state
+ * @param Parser $parser
+ * @param string &$text
+ * @param string $state
* @return bool
*/
public static function renderTagPage( $parser, &$text, $state ) {
@@ -34,48 +41,106 @@ class PageTranslationHooks {
try {
$parse = TranslatablePage::newFromText( $parser->getTitle(), $text )->getParse();
$text = $parse->getTranslationPageText( null );
+ $parser->getOutput()->addModuleStyles( 'ext.translate' );
} catch ( TPException $e ) {
- // Show ugly preview without processed <translate> tags
wfDebug( 'TPException caught; expected' );
}
}
+ // For section previews, perform additional clean-up, given tags are often
+ // unbalanced when we preview one section only.
+ if ( $parser->getOptions()->getIsSectionPreview() ) {
+ $text = TranslatablePage::cleanupTags( $text );
+ }
+
// Set display title
$page = TranslatablePage::isTranslationPage( $title );
if ( !$page ) {
return true;
}
+ self::$renderingContext = true;
list( , $code ) = TranslateUtils::figureMessage( $title->getText() );
$name = $page->getPageDisplayTitle( $code );
-
if ( $name ) {
$name = $parser->recursivePreprocess( $name );
$parser->getOutput()->setDisplayTitle( $name );
}
+ self::$renderingContext = false;
+
+ $parser->getOutput()->setExtensionData(
+ 'translate-translation-page',
+ [
+ 'sourcepagetitle' => $page->getTitle(),
+ 'languagecode' => $code,
+ 'messagegroupid' => $page->getMessageGroupId()
+ ]
+ );
// Disable edit section links
- $parser->getOptions()->setEditSection( false );
+ $parser->getOutput()->setExtensionData( 'Translate-noeditsection', true );
+ if ( !defined( 'ParserOutput::SUPPORTS_STATELESS_TRANSFORMS' ) ) {
+ $parser->getOptions()->setEditSection( false );
+ }
return true;
}
/**
+ * Hook: ParserOutputPostCacheTransform
+ * @param ParserOutput $out
+ * @param string &$text
+ * @param array &$options
+ */
+ public static function onParserOutputPostCacheTransform(
+ ParserOutput $out, &$text, array &$options
+ ) {
+ if ( $out->getExtensionData( 'Translate-noeditsection' ) ) {
+ $options['enableSectionEditLinks'] = false;
+ }
+ }
+
+ /**
* Set the right page content language for translated pages ("Page/xx").
* Hook: PageContentLanguage
+ *
+ * @param Title $title
+ * @param Language &$pageLang
+ * @return true
*/
- public static function onPageContentLanguage( Title $title, /*string*/&$pageLang ) {
+ public static function onPageContentLanguage( Title $title, &$pageLang ) {
// For translation pages, parse plural, grammar etc with correct language,
// and set the right direction
if ( TranslatablePage::isTranslationPage( $title ) ) {
list( , $code ) = TranslateUtils::figureMessage( $title->getText() );
- $pageLang = $code;
+ $pageLang = Language::factory( $code );
}
return true;
}
- /// Hook: OutputPageBeforeHTML
+ /**
+ * Display an edit notice for translatable source pages if it's enabled
+ * Hook: TitleGetEditNotices
+ *
+ * @param Title $title
+ * @param int $oldid
+ * @param array &$notices
+ */
+ public static function onTitleGetEditNotices( Title $title, $oldid, array &$notices ) {
+ $msg = wfMessage( 'translate-edit-tag-warning' )->inContentLanguage();
+
+ if ( !$msg->isDisabled() && TranslatablePage::isSourcePage( $title ) ) {
+ $notices['translate-tag'] = $msg->parseAsBlock();
+ }
+ }
+
+ /**
+ * Hook: OutputPageBeforeHTML
+ * @param OutputPage $out
+ * @param string $text
+ * @return true
+ */
public static function injectCss( OutputPage $out, /*string*/$text ) {
global $wgTranslatePageTranslationULS;
@@ -84,44 +149,40 @@ class PageTranslationHooks {
$isTranslation = TranslatablePage::isTranslationPage( $title );
if ( $isSource || $isTranslation ) {
- $out->addModules( 'ext.translate' );
if ( $wgTranslatePageTranslationULS ) {
$out->addModules( 'ext.translate.pagetranslation.uls' );
}
- // Per bug T63331
- $type = $isSource ? 'source' : 'translation';
- $out->addJsConfigVars( 'wgTranslatePageTranslation', $type );
+ if ( $isTranslation ) {
+ // Source pages get this module via <translate>, but for translation
+ // pages we need to add it manually.
+ $out->addModuleStyles( 'ext.translate' );
+ $out->addJsConfigVars( 'wgTranslatePageTranslation', 'translation' );
+ } else {
+ $out->addJsConfigVars( 'wgTranslatePageTranslation', 'source' );
+ }
}
return true;
}
/**
- * Hook: PageContentSaveComplete
+ * This is triggered after saves to translation unit pages
+ * @param WikiPage $wikiPage
+ * @param User $user
+ * @param TextContent $content
+ * @param string $summary
+ * @param bool $minor
+ * @param int $flags
+ * @param Revision $revision
+ * @param MessageHandle $handle
+ * @return true
*/
- public static function onSectionSave( WikiPage $wikiPage, User $user, $content, $summary,
- $minor, $_, $_, $flags, $revision
+ public static function onSectionSave( WikiPage $wikiPage, User $user, TextContent $content,
+ $summary, $minor, $flags, $revision, MessageHandle $handle
) {
- $title = $wikiPage->getTitle();
-
- if ( $content instanceof TextContent ) {
- $text = $content->getNativeData();
- } else {
- // Screw it, not interested
- return true;
- }
-
- // Some checks
- $handle = new MessageHandle( $title );
-
- // We are only interested in the translations namespace
- if ( !$handle->isPageTranslation() || !$handle->isValid() ) {
- return true;
- }
-
- // Do not trigger renders for fuzzy
- if ( strpos( $text, TRANSLATE_FUZZY ) !== false ) {
+ // FuzzyBot may do some duplicate work already worked on by other jobs
+ if ( FuzzyBot::getName() === $user->getName() ) {
return true;
}
@@ -146,7 +207,7 @@ class PageTranslationHooks {
$code, $user, $flags, $summary
) {
$source = $page->getTitle();
- $target = Title::makeTitle( $source->getNamespace(), $source->getDBkey() . "/$code" );
+ $target = $source->getSubpage( $code );
// We don't know and don't care
$flags &= ~EDIT_NEW & ~EDIT_UPDATE;
@@ -158,85 +219,64 @@ class PageTranslationHooks {
$job->setFlags( $flags );
$job->run();
- // Regenerate translation caches
- $page->getTranslationPercentages( 'force' );
-
- // Invalidate caches
+ // Invalidate caches so that language bar is up-to-date
$pages = $page->getTranslationPages();
foreach ( $pages as $title ) {
$wikiPage = WikiPage::factory( $title );
$wikiPage->doPurge();
}
-
- // And the source page itself too
- $wikiPage = WikiPage::factory( $page->getTitle() );
- $wikiPage->doPurge();
+ $sourceWikiPage = WikiPage::factory( $source );
+ $sourceWikiPage->doPurge();
}
/**
- * @param $data
- * @param $params
- * @param $parser Parser
+ * @param string $data
+ * @param array $params
+ * @param Parser $parser
* @return string
*/
public static function languages( $data, $params, $parser ) {
- $currentTitle = $parser->getTitle();
+ global $wgPageTranslationLanguageList;
- // Check if this is a source page or a translation page
- $page = TranslatablePage::newFromTitle( $currentTitle );
- if ( $page->getMarkedTag() === false ) {
- $page = TranslatablePage::isTranslationPage( $currentTitle );
- }
-
- if ( $page === false || $page->getMarkedTag() === false ) {
+ if ( $wgPageTranslationLanguageList === 'sidebar-only' ) {
return '';
}
- $status = $page->getTranslationPercentages();
- if ( !$status ) {
- return '';
- }
+ self::$renderingContext = true;
+ $context = new ScopedCallback( function () {
+ self::$renderingContext = false;
+ } );
- // If priority languages have been set always show those languages
- $priorityLangs = TranslateMetadata::get( $page->getMessageGroupId(), 'prioritylangs' );
- $priorityForce = TranslateMetadata::get( $page->getMessageGroupId(), 'priorityforce' );
- $filter = null;
- if ( strlen( $priorityLangs ) > 0 ) {
- $filter = array_flip( explode( ',', $priorityLangs ) );
+ // Add a dummy language link that is removed in self::addLanguageLinks.
+ if ( $wgPageTranslationLanguageList === 'sidebar-fallback' ) {
+ $parser->getOutput()->addLanguageLink( 'x-pagetranslation-tag' );
}
- if ( $filter !== null ) {
- // If translation is restricted to some languages, only show them
- if ( $priorityForce === 'on' ) {
- // Do not filter the source language link
- $filter[$page->getMessageGroup()->getSourceLanguage()] = true;
- $status = array_intersect_key( $status, $filter );
- }
- foreach ( $filter as $langCode => $value ) {
- if ( !isset( $status[$langCode] ) ) {
- // We need to show all priority languages even if no translation started
- $status[$langCode] = 0;
- }
- }
+
+ $currentTitle = $parser->getTitle();
+ $pageStatus = self::getTranslatablePageStatus( $currentTitle );
+ if ( !$pageStatus ) {
+ return '';
}
- // Fix title
+ $page = $pageStatus[ 'page' ];
+ $status = $pageStatus[ 'languages' ];
$pageTitle = $page->getTitle();
// Sort by language code, which seems to be the only sane method
ksort( $status );
// This way the parser knows to fragment the parser cache by language code
- $userLangCode = $parser->getOptions()->getUserLang();
- $userLangDir = $parser->getOptions()->getUserLangObj()->getDir();
+ $userLang = $parser->getOptions()->getUserLangObj();
+ $userLangCode = $userLang->getCode();
// Should call $page->getMessageGroup()->getSourceLanguage(), but
// group is sometimes null on WMF during page moves, reason unknown.
// This should do the same thing for now.
$sourceLanguage = $pageTitle->getPageLanguage()->getCode();
- $languages = array();
+ $languages = [];
foreach ( $status as $code => $percent ) {
- // Get autonyms
- $name = TranslateUtils::getLanguageName( $code, $code );
+ // Get autonyms (null)
+ $name = TranslateUtils::getLanguageName( $code, null );
$name = htmlspecialchars( $name ); // Unlikely, but better safe
// Add links to other languages
@@ -244,7 +284,7 @@ class PageTranslationHooks {
$targetTitleString = $pageTitle->getDBkey() . $suffix;
$subpage = Title::makeTitle( $pageTitle->getNamespace(), $targetTitleString );
- $classes = array();
+ $classes = [];
if ( $code === $userLangCode ) {
$classes[] = 'mw-pt-languages-ui';
}
@@ -252,7 +292,11 @@ class PageTranslationHooks {
if ( $currentTitle->equals( $subpage ) ) {
$classes[] = 'mw-pt-languages-selected';
$classes = array_merge( $classes, self::tpProgressIcon( $percent ) );
- $name = Html::rawElement( 'span', array( 'class' => $classes ), $name );
+ $element = Html::rawElement(
+ 'span',
+ [ 'class' => $classes , 'lang' => TranslateUtils::bcp47( $code ) ],
+ $name
+ );
} elseif ( $subpage->isKnown() ) {
$pagename = $page->getPageDisplayTitle( $code );
if ( !is_string( $pagename ) ) {
@@ -262,70 +306,77 @@ class PageTranslationHooks {
$classes = array_merge( $classes, self::tpProgressIcon( $percent ) );
$title = wfMessage( 'tpt-languages-nonzero' )
+ ->inLanguage( $userLang )
->params( $pagename )
->numParams( 100 * $percent )
->text();
- $attribs = array(
+ $attribs = [
'title' => $title,
'class' => $classes,
- );
+ 'lang' => TranslateUtils::bcp47( $code ),
+ ];
- $name = Linker::linkKnown( $subpage, $name, $attribs );
+ $element = Linker::linkKnown( $subpage, $name, $attribs );
} else {
/* When language is included because it is a priority language,
* but translation does not yet exists, link directly to the
* translation view. */
$specialTranslateTitle = SpecialPage::getTitleFor( 'Translate' );
- $params = array(
+ $params = [
'group' => $page->getMessageGroupId(),
'language' => $code,
'task' => 'view'
- );
+ ];
$classes[] = 'new'; // For red link color
- $attribs = array(
- 'title' => wfMessage( 'tpt-languages-zero' )->text(),
+ $attribs = [
+ 'title' => wfMessage( 'tpt-languages-zero' )->inLanguage( $userLang )->text(),
'class' => $classes,
- );
- $name = Linker::link( $specialTranslateTitle, $name, $attribs, $params );
+ ];
+ $element = Linker::linkKnown( $specialTranslateTitle, $name, $attribs, $params );
}
- $languages[] = $name;
+ $languages[ $name ] = $element;
}
+ // Sort languages by autonym
+ ksort( $languages );
+ $languages = array_values( $languages );
+
// dirmark (rlm/lrm) is added, because languages with RTL names can
// mess the display
- $lang = Language::factory( $userLangCode );
- $sep = wfMessage( 'tpt-languages-separator' )->inLanguage( $lang )->escaped();
- $sep .= $lang->getDirMark();
+ $sep = wfMessage( 'tpt-languages-separator' )->inLanguage( $userLang )->escaped();
+ $sep .= $userLang->getDirMark();
$languages = implode( $sep, $languages );
- $out = Html::openElement( 'div', array(
+ $out = Html::openElement( 'div', [
'class' => 'mw-pt-languages noprint',
- 'lang' => $userLangCode,
- 'dir' => $userLangDir
- ) );
- $out .= Html::rawElement( 'div', array( 'class' => 'mw-pt-languages-label' ),
- wfMessage( 'tpt-languages-legend' )->escaped()
+ 'lang' => $userLang->getHtmlCode(),
+ 'dir' => $userLang->getDir()
+ ] );
+ $out .= Html::rawElement( 'div', [ 'class' => 'mw-pt-languages-label' ],
+ wfMessage( 'tpt-languages-legend' )->inLanguage( $userLang )->escaped()
);
$out .= Html::rawElement(
'div',
- array( 'class' => 'mw-pt-languages-list autonym' ),
+ [ 'class' => 'mw-pt-languages-list autonym' ],
$languages
);
$out .= Html::closeElement( 'div' );
+ $parser->getOutput()->addModuleStyles( 'ext.translate.tag.languages' );
+
return $out;
}
/**
* Return icon CSS class for given progress status: percentages
* are too accurate and take more space than simple images.
- * @param $percent float
+ * @param float $percent
* @return string[]
*/
protected static function tpProgressIcon( $percent ) {
- $classes = array( 'mw-pt-progress' );
+ $classes = [ 'mw-pt-progress' ];
$percent *= 100;
if ( $percent < 20 ) {
$classes[] = 'mw-pt-progress--stub';
@@ -342,8 +393,181 @@ class PageTranslationHooks {
}
/**
+ * Returns translatable page and language stats for given title.
+ * @param Title $title
+ * @return array|null Returns null if not a translatable page.
+ */
+ private static function getTranslatablePageStatus( Title $title ) {
+ // Check if this is a source page or a translation page
+ $page = TranslatablePage::newFromTitle( $title );
+ if ( $page->getMarkedTag() === false ) {
+ $page = TranslatablePage::isTranslationPage( $title );
+ }
+
+ if ( $page === false || $page->getMarkedTag() === false ) {
+ return null;
+ }
+
+ $status = $page->getTranslationPercentages();
+ if ( !$status ) {
+ return null;
+ }
+
+ // If priority languages have been set always show those languages
+ $priorityLangs = TranslateMetadata::get( $page->getMessageGroupId(), 'prioritylangs' );
+ $priorityForce = TranslateMetadata::get( $page->getMessageGroupId(), 'priorityforce' );
+ $filter = null;
+ if ( strlen( $priorityLangs ) > 0 ) {
+ $filter = array_flip( explode( ',', $priorityLangs ) );
+ }
+ if ( $filter !== null ) {
+ // If translation is restricted to some languages, only show them
+ if ( $priorityForce === 'on' ) {
+ // Do not filter the source language link
+ $filter[$page->getMessageGroup()->getSourceLanguage()] = true;
+ $status = array_intersect_key( $status, $filter );
+ }
+ foreach ( $filter as $langCode => $value ) {
+ if ( !isset( $status[$langCode] ) ) {
+ // We need to show all priority languages even if no translation started
+ $status[$langCode] = 0;
+ }
+ }
+ }
+
+ return [
+ 'page' => $page,
+ 'languages' => $status
+ ];
+ }
+
+ /**
+ * Hooks: LanguageLinks
+ * @param Title $title Title of the page for which links are needed.
+ * @param array &$languageLinks List of language links to modify.
+ */
+ public static function addLanguageLinks( Title $title, array &$languageLinks ) {
+ global $wgPageTranslationLanguageList;
+
+ $hasLanguagesTag = false;
+ foreach ( $languageLinks as $index => $name ) {
+ if ( $name === 'x-pagetranslation-tag' ) {
+ $hasLanguagesTag = true;
+ unset( $languageLinks[ $index ] );
+ }
+ }
+
+ if ( $wgPageTranslationLanguageList === 'tag-only' ) {
+ return;
+ }
+
+ if ( $wgPageTranslationLanguageList === 'sidebar-fallback' && $hasLanguagesTag ) {
+ return;
+ }
+
+ // $wgPageTranslationLanguageList === 'sidebar-always' OR 'sidebar-only'
+
+ $status = self::getTranslatablePageStatus( $title );
+ if ( !$status ) {
+ return;
+ }
+
+ self::$renderingContext = true;
+ $context = new ScopedCallback( function () {
+ self::$renderingContext = false;
+ } );
+
+ $page = $status[ 'page' ];
+ $languages = $status[ 'languages' ];
+ $en = Language::factory( 'en' );
+
+ $newLanguageLinks = [];
+
+ // Batch the Title::exists queries used below
+ $lb = new LinkBatch();
+ foreach ( array_keys( $languages ) as $code ) {
+ $title = $page->getTitle()->getSubpage( $code );
+ $lb->addObj( $title );
+ }
+ $lb->execute();
+
+ foreach ( $languages as $code => $percentage ) {
+ $title = $page->getTitle()->getSubpage( $code );
+ $key = "x-pagetranslation:{$title->getPrefixedText()}";
+ $translatedName = $page->getPageDisplayTitle( $code ) ?: $title->getPrefixedText();
+
+ if ( $title->exists() ) {
+ $href = $title->getLocalURL();
+ $classes = self::tpProgressIcon( $percentage );
+ $title = wfMessage( 'tpt-languages-nonzero' )
+ ->params( $translatedName )
+ ->numParams( 100 * $percentage );
+ } else {
+ $href = SpecialPage::getTitleFor( 'Translate' )->getLocalURL( [
+ 'group' => $page->getMessageGroupId(),
+ 'language' => $code,
+ ] );
+ $classes = [ 'mw-pt-progress--none' ];
+ $title = wfMessage( 'tpt-languages-zero' );
+ }
+
+ self::$languageLinkData[ $key ] = [
+ 'href' => $href,
+ 'language' => $code,
+ 'percentage' => $percentage,
+ 'classes' => $classes,
+ 'autonym' => $en->ucfirst( Language::fetchLanguageName( $code ) ),
+ 'title' => $title,
+ ];
+
+ $newLanguageLinks[ $key ] = self::$languageLinkData[ $key ][ 'autonym' ];
+ }
+
+ asort( $newLanguageLinks );
+ $languageLinks = array_merge( array_keys( $newLanguageLinks ), $languageLinks );
+ }
+
+ /**
+ * Hooks: SkinTemplateGetLanguageLink
+ * @param array &$link
+ * @param Title $linkTitle
+ * @param Title $pageTitle
+ * @param OutputPage $out
+ */
+ public static function formatLanguageLink(
+ array &$link,
+ Title $linkTitle,
+ Title $pageTitle,
+ OutputPage $out
+ ) {
+ if ( substr( $link[ 'text' ], 0, 18 ) !== 'x-pagetranslation:' ) {
+ return;
+ }
+
+ if ( !isset( self::$languageLinkData[ $link[ 'text' ] ] ) ) {
+ return;
+ }
+
+ $data = self::$languageLinkData[ $link[ 'text' ] ];
+
+ $link[ 'class' ] .= ' ' . implode( ' ', $data[ 'classes' ] );
+ $link[ 'href' ] = $data[ 'href' ];
+ $link[ 'text' ] = $data[ 'autonym' ];
+ $link[ 'title' ] = $data[ 'title' ]->inLanguage( $out->getLanguage()->getCode() )->text();
+ $link[ 'lang'] = wfBCP47( $data[ 'language' ] );
+ $link[ 'hreflang'] = wfBCP47( $data[ 'language' ] );
+
+ $out->addModuleStyles( 'ext.translate.tag.languages' );
+ }
+
+ /**
* Display nice error when editing content.
* Hook: EditFilterMergedContent
+ * @param IContextSource $context
+ * @param Content $content
+ * @param Status $status
+ * @param string $summary
+ * @return true
*/
public static function tpSyntaxCheckForEditContent( $context, $content, $status, $summary ) {
if ( !$content instanceof TextContent ) {
@@ -351,16 +575,18 @@ class PageTranslationHooks {
}
$text = $content->getNativeData();
+ // See T154500
+ $text = str_replace( [ "\r\n", "\r" ], "\n", rtrim( $text ) );
$title = $context->getTitle();
$e = self::tpSyntaxError( $title, $text );
if ( $e ) {
$msg = $e->getMsg();
- //$msg is an array containing a message key followed by any parameters.
- //todo: use Message object instead.
+ // $msg is an array containing a message key followed by any parameters.
+ // @todo Use Message object instead.
- call_user_func_array( array( $status, 'fatal' ), $msg );
+ call_user_func_array( [ $status, 'fatal' ], $msg );
}
return true;
@@ -368,6 +594,9 @@ class PageTranslationHooks {
/**
* Returns any syntax error.
+ * @param Title $title
+ * @param string $text
+ * @return null|TPException
*/
protected static function tpSyntaxError( $title, $text ) {
if ( strpos( $text, '<translate>' ) === false ) {
@@ -388,12 +617,24 @@ class PageTranslationHooks {
* When attempting to save, last resort. Edit page would only display
* edit conflict if there wasn't tpSyntaxCheckForEditPage.
* Hook: PageContentSave
+ * @param WikiPage $wikiPage
+ * @param User $user
+ * @param Content $content
+ * @param string $summary
+ * @param bool $minor
+ * @param string $_1
+ * @param bool $_2
+ * @param int $flags
+ * @param Status $status
+ * @return true
*/
- public static function tpSyntaxCheck( $wikiPage, $user, $content, $summary,
- $minor, $_, $_, $flags, $status
+ public static function tpSyntaxCheck( WikiPage $wikiPage, $user, $content, $summary,
+ $minor, $_1, $_2, $flags, $status
) {
if ( $content instanceof TextContent ) {
$text = $content->getNativeData();
+ // See T154500
+ $text = str_replace( [ "\r\n", "\r" ], "\n", rtrim( $text ) );
} else {
// Screw it, not interested
return true;
@@ -408,7 +649,7 @@ class PageTranslationHooks {
try {
$page->getParse();
} catch ( TPException $e ) {
- call_user_func_array( array( $status, 'fatal' ), $e->getMsg() );
+ call_user_func_array( [ $status, 'fatal' ], $e->getMsg() );
return false;
}
@@ -418,9 +659,19 @@ class PageTranslationHooks {
/**
* Hook: PageContentSaveComplete
+ * @param WikiPage $wikiPage
+ * @param User $user
+ * @param Content $content
+ * @param string $summary
+ * @param bool $minor
+ * @param string $_1
+ * @param bool $_2
+ * @param int $flags
+ * @param Revision $revision
+ * @return true
*/
- public static function addTranstag( $wikiPage, $user, $content, $summary,
- $minor, $_, $_, $flags, $revision
+ public static function addTranstag( WikiPage $wikiPage, $user, $content, $summary,
+ $minor, $_1, $_2, $flags, $revision
) {
// We are not interested in null revisions
if ( $revision === null ) {
@@ -461,6 +712,10 @@ class PageTranslationHooks {
* at the moment.
* Hook: RevisionInsertComplete
* @since 2012-05-08
+ * @param Revision $rev
+ * @param string $text
+ * @param int $flags
+ * @return true
*/
public static function updateTranstagOnNullRevisions( Revision $rev, $text, $flags ) {
$title = $rev->getTitle();
@@ -474,14 +729,14 @@ class PageTranslationHooks {
$dbw = wfGetDB( DB_MASTER );
$table = 'revision';
$field = 'rev_text_id';
- $conds = array(
+ $conds = [
'rev_page' => $rev->getPage(),
'rev_id' => $oldRevId,
- );
+ ];
// FIXME: optimize away this query. Bug T38588.
$oldTextId = $dbw->selectField( $table, $field, $conds, __METHOD__ );
- if ( strval( $newTextId ) !== strval( $oldTextId ) ) {
+ if ( (string)$newTextId !== (string)$oldTextId ) {
// Not a null revision, bail out.
return true;
}
@@ -495,41 +750,52 @@ class PageTranslationHooks {
}
/**
- * Prevent editing of unknown pages in Translations namespace.
+ * Prevent editing of certain pages in Translations namespace.
* Hook: getUserPermissionsErrorsExpensive
+ *
+ * @param Title $title
+ * @param User $user
+ * @param string $action
+ * @param mixed &$result
+ * @return bool
*/
- public static function preventUnknownTranslations( Title $title, User $user,
+ public static function onGetUserPermissionsErrorsExpensive( Title $title, User $user,
$action, &$result
) {
$handle = new MessageHandle( $title );
- if ( $handle->isPageTranslation() && $action === 'edit' ) {
- if ( !$handle->isValid() ) {
- $result = array( 'tpt-unknown-page' );
- return false;
- }
+ // Check only when someone tries to edit (or create) page translation messages
+ if ( $action !== 'edit' || !$handle->isPageTranslation() ) {
+ return true;
+ }
+
+ if ( !$handle->isValid() ) {
+ // Don't allow editing invalid messages that do not belong to any translatable page
+ $result = [ 'tpt-unknown-page' ];
+ return false;
+ }
+
+ $error = self::getTranslationRestrictions( $handle );
+ if ( count( $error ) ) {
+ $result = $error;
+ return false;
}
return true;
}
/**
- * Prevent editing of restricted languages.
- * Hook: getUserPermissionsErrorsExpensive
- * @since 2012-03-01
+ * Prevent editing of restricted languages when prioritized.
+ *
+ * @param MessageHandle $handle
+ * @return array array containing error message if restricted, empty otherwise
*/
- public static function preventRestrictedTranslations( Title $title, User $user,
- $action, &$result
- ) {
+ private static function getTranslationRestrictions( MessageHandle $handle ) {
global $wgTranslateDocumentationLanguageCode;
- // Preventing editing (includes creation) should be enough
- if ( $action !== 'edit' ) {
- return true;
- }
- $handle = new MessageHandle( $title );
- if ( !$handle->isValid() ) {
- return true;
+ // Allow adding message documentation even when translation is restricted
+ if ( $handle->getCode() === $wgTranslateDocumentationLanguageCode ) {
+ return [];
}
// Get the primary group id
@@ -539,12 +805,7 @@ class PageTranslationHooks {
// Check if anything is prevented for the group in the first place
$force = TranslateMetadata::get( $groupId, 'priorityforce' );
if ( $force !== 'on' ) {
- return true;
- }
-
- // Allow adding message documentation even when translation is restricted
- if ( $handle->getCode() === $wgTranslateDocumentationLanguageCode ) {
- return true;
+ return [];
}
// And finally check whether the language is not included in whitelist
@@ -553,42 +814,45 @@ class PageTranslationHooks {
if ( !isset( $filter[$handle->getCode()] ) ) {
// @todo Default reason if none provided
$reason = TranslateMetadata::get( $groupId, 'priorityreason' );
- $result = array( 'tpt-translation-restricted', $reason );
-
- return false;
+ return [ 'tpt-translation-restricted', $reason ];
}
- return true;
+ return [];
}
/**
* Prevent editing of translation pages directly.
* Hook: getUserPermissionsErrorsExpensive
+ * @param Title $title
+ * @param User $user
+ * @param string $action
+ * @param bool &$result
+ * @return bool
*/
public static function preventDirectEditing( Title $title, User $user, $action, &$result ) {
- $page = TranslatablePage::isTranslationPage( $title );
- $whitelist = array(
- 'read' => true,
- 'delete' => true,
- 'review' => true, // FlaggedRevs
- );
+ if ( self::$allowTargetEdit ) {
+ return true;
+ }
- if ( $page !== false && !isset( $whitelist[$action] ) ) {
- if ( self::$allowTargetEdit ) {
- return true;
- }
+ $whitelist = [
+ 'read', 'delete', 'undelete', 'deletedtext', 'deletedhistory',
+ 'review', // FlaggedRevs
+ ];
+ if ( in_array( $action, $whitelist ) ) {
+ return true;
+ }
- if ( $page->getMarkedTag() ) {
- list( , $code ) = TranslateUtils::figureMessage( $title->getText() );
- $result = array(
- 'tpt-target-page',
- ':' . $page->getTitle()->getPrefixedText(),
- // This url shouldn't get cached
- wfExpandUrl( $page->getTranslationUrl( $code ) )
- );
+ $page = TranslatablePage::isTranslationPage( $title );
+ if ( $page !== false && $page->getMarkedTag() ) {
+ list( , $code ) = TranslateUtils::figureMessage( $title->getText() );
+ $result = [
+ 'tpt-target-page',
+ ':' . $page->getTitle()->getPrefixedText(),
+ // This url shouldn't get cached
+ wfExpandUrl( $page->getTranslationUrl( $code ) )
+ ];
- return false;
- }
+ return false;
}
return true;
@@ -601,19 +865,19 @@ class PageTranslationHooks {
* @param Title $title
* @param User $user
* @param string $action
- * @param mixed $result
+ * @param mixed &$result
*
* @return bool
*/
public static function preventPatrolling( Title $title, User $user, $action, &$result ) {
- if ( $action !== 'patrol') {
+ if ( $action !== 'patrol' ) {
return true;
}
$page = TranslatablePage::isTranslationPage( $title );
if ( $page !== false ) {
- $result[] = 'tpt-patrolling-blocked';
+ $result = [ 'tpt-patrolling-blocked' ];
return false;
}
@@ -624,22 +888,25 @@ class PageTranslationHooks {
* Redirects the delete action to our own for translatable pages.
* Hook: ArticleConfirmDelete
*
- * @param $article Article
- * @param $out OutputPage
- * @param $reason
+ * @param Article $article
+ * @param OutputPage $out
+ * @param string &$reason
*
* @return bool
*/
public static function disableDelete( $article, $out, &$reason ) {
$title = $article->getTitle();
- if ( TranslatablePage::isSourcePage( $title ) ||
+ $translatablePage = TranslatablePage::newFromTitle( $title );
+
+ if (
+ $translatablePage->getMarkedTag() !== false ||
TranslatablePage::isTranslationPage( $title )
) {
$new = SpecialPage::getTitleFor(
'PageTranslationDeletePage',
$title->getPrefixedText()
);
- $out->redirect( $new->getFullUrl() );
+ $out->redirect( $new->getFullURL() );
}
return true;
@@ -648,9 +915,9 @@ class PageTranslationHooks {
/**
* Hook: ArticleViewHeader
*
- * @param $article Article
- * @param $outputDone
- * @param $pcache
+ * @param Article &$article
+ * @param bool &$outputDone
+ * @param bool &$pcache
* @return bool
*/
public static function translatablePageHeader( &$article, &$outputDone, &$pcache ) {
@@ -658,58 +925,47 @@ class PageTranslationHooks {
return true;
}
- $title = $article->getTitle();
-
- if ( TranslatablePage::isTranslationPage( $title ) ) {
- self::translationPageHeader( $title );
+ $transPage = TranslatablePage::isTranslationPage( $article->getTitle() );
+ $context = $article->getContext();
+ if ( $transPage ) {
+ self::translationPageHeader( $context, $transPage );
} else {
// Check for pages that are tagged or marked
- self::sourcePageHeader( $title );
+ self::sourcePageHeader( $context );
}
return true;
}
- protected static function sourcePageHeader( Title $title ) {
- $context = RequestContext::getMain();
+ protected static function sourcePageHeader( IContextSource $context ) {
+ $language = $context->getLanguage();
+ $title = $context->getTitle();
$page = TranslatablePage::newFromTitle( $title );
$marked = $page->getMarkedTag();
$ready = $page->getReadyTag();
+ $latest = $title->getLatestRevID();
- $title = $page->getTitle();
-
- $latest = $title->getLatestRevId();
- $canmark = $ready === $latest && $marked !== $latest;
-
- $actions = array();
-
+ $actions = [];
if ( $marked && $context->getUser()->isAllowed( 'translate' ) ) {
- $par = array(
- 'group' => $page->getMessageGroupId(),
- 'language' => $context->getLanguage()->getCode(),
- 'action' => 'page',
- 'filter' => '',
- );
-
- $translate = SpecialPage::getTitleFor( 'Translate' );
- $linkDesc = $context->msg( 'translate-tag-translate-link-desc' )->escaped();
- $actions[] = Linker::link( $translate, $linkDesc, array(), $par );
+ $actions[] = self::getTranslateLink( $context, $page, $language->getCode() );
}
- if ( $canmark ) {
- $diffUrl = $title->getFullUrl( array( 'oldid' => $marked, 'diff' => $latest ) );
- $par = array( 'target' => $title->getPrefixedText() );
- $translate = SpecialPage::getTitleFor( 'PageTranslation' );
+ $hasChanges = $ready === $latest && $marked !== $latest;
+ if ( $hasChanges ) {
+ $diffUrl = $title->getFullURL( [ 'oldid' => $marked, 'diff' => $latest ] );
if ( $context->getUser()->isAllowed( 'pagetranslation' ) ) {
- // This page has never been marked
+ $pageTranslation = SpecialPage::getTitleFor( 'PageTranslation' );
+ $params = [ 'target' => $title->getPrefixedText(), 'do' => 'mark' ];
+
if ( $marked === false ) {
+ // This page has never been marked
$linkDesc = $context->msg( 'translate-tag-markthis' )->escaped();
- $actions[] = Linker::link( $translate, $linkDesc, array(), $par );
+ $actions[] = Linker::linkKnown( $pageTranslation, $linkDesc, [], $params );
} else {
- $markUrl = $translate->getFullUrl( $par );
+ $markUrl = $pageTranslation->getFullURL( $params );
$actions[] = $context->msg( 'translate-tag-markthisagain', $diffUrl, $markUrl )
->parse();
}
@@ -722,28 +978,42 @@ class PageTranslationHooks {
return;
}
- $language = $context->getLanguage();
- $legend = Html::rawElement(
+ $header = Html::rawElement(
'div',
- array(
+ [
'class' => 'mw-pt-translate-header noprint nomobile',
'dir' => $language->getDir(),
- 'lang' => $language->getCode(),
- ),
- $context->getLanguage()->semicolonList( $actions )
+ 'lang' => $language->getHtmlCode(),
+ ],
+ $language->semicolonList( $actions )
) . Html::element( 'hr' );
- $context->getOutput()->addHTML( $legend );
+ $context->getOutput()->addHTML( $header );
}
- protected static function translationPageHeader( Title $title ) {
- if ( !$title->exists() ) {
- return;
- }
+ private static function getTranslateLink(
+ IContextSource $context, TranslatablePage $page, $langCode
+ ) {
+ return Linker::linkKnown(
+ SpecialPage::getTitleFor( 'Translate' ),
+ $context->msg( 'translate-tag-translate-link-desc' )->escaped(),
+ [],
+ [
+ 'group' => $page->getMessageGroupId(),
+ 'language' => $langCode,
+ 'action' => 'page',
+ 'filter' => '',
+ ]
+ );
+ }
- // Check if applicable
- $page = TranslatablePage::isTranslationPage( $title );
- if ( $page === false ) {
+ protected static function translationPageHeader(
+ IContextSource $context, TranslatablePage $page
+ ) {
+ global $wgTranslateKeepOutdatedTranslations;
+
+ $title = $context->getTitle();
+ if ( !$title->exists() ) {
return;
}
@@ -755,56 +1025,74 @@ class PageTranslationHooks {
if ( isset( $pers[$code] ) ) {
$per = $pers[$code] * 100;
}
- $titleText = $page->getTitle()->getPrefixedText();
-
- // This url might get cached
- $url = wfExpandUrl( $page->getTranslationUrl( $code ), PROTO_RELATIVE );
- // Output
- $context = RequestContext::getMain();
$language = $context->getLanguage();
- $wrap = Html::rawElement(
+ $output = $context->getOutput();
+
+ if ( $page->getSourceLanguageCode() === $code ) {
+ // If we are on the source language page, link to translate for user's language
+ $msg = self::getTranslateLink( $context, $page, $language->getCode() );
+ } else {
+ $url = wfExpandUrl( $page->getTranslationUrl( $code ), PROTO_RELATIVE );
+ $msg = $context->msg( 'tpt-translation-intro',
+ $url,
+ ':' . $page->getTitle()->getPrefixedText(),
+ $language->formatNum( $per )
+ )->parse();
+ }
+
+ $header = Html::rawElement(
'div',
- array(
- 'class' => 'mw-translate-page-info',
- 'lang' => $language->getCode(),
+ [
+ 'class' => 'mw-pt-translate-header noprint',
'dir' => $language->getDir(),
- ),
- '$1'
- );
+ 'lang' => $language->getHtmlCode(),
+ ],
+ $msg
+ ) . Html::element( 'hr' );
- $out = $context->getOutput();
+ $output->addHTML( $header );
- $out->wrapWikiMsg(
- $wrap,
- array(
- 'tpt-translation-intro',
- $url,
- ':' . $titleText,
- $language->formatNum( $per )
- )
- );
- $out->addHTML( '<hr />' );
+ if ( $wgTranslateKeepOutdatedTranslations ) {
+ $groupId = $page->getMessageGroupId();
+ // This is already calculated and cached by above call to getTranslationPercentages
+ $stats = MessageGroupStats::forItem( $groupId, $code );
+ if ( $stats[MessageGroupStats::FUZZY] ) {
+ // Only show if there is fuzzy messages
+ $wrap = '<div class="mw-pt-translate-header"><span class="mw-translate-fuzzy">$1</span></div>';
+ $output->wrapWikiMsg( $wrap, [ 'tpt-translation-intro-fuzzy' ] );
+ }
+ }
}
- /// Hook: SpecialPage_initList
+ /**
+ * Hook: SpecialPage_initList
+ * @param array &$list
+ * @return true
+ */
public static function replaceMovePage( &$list ) {
$list['Movepage'] = 'SpecialPageTranslationMovePage';
return true;
}
- /// Hook: getUserPermissionsErrorsExpensive
+ /**
+ * Hook: getUserPermissionsErrorsExpensive
+ * @param Title $title
+ * @param User $user
+ * @param string $action
+ * @param array &$result
+ * @return bool
+ */
public static function lockedPagesCheck( Title $title, User $user, $action, &$result ) {
- if ( $action == 'read' ) {
+ if ( $action === 'read' ) {
return true;
}
$cache = wfGetCache( CACHE_ANYTHING );
$key = wfMemcKey( 'pt-lock', sha1( $title->getPrefixedText() ) );
- // At least memcached mangles true to "1"
- if ( $cache->get( $key ) == true ) {
- $result = array( 'pt-locked-page' );
+ if ( $cache->get( $key ) === 'locked' ) {
+ $result = [ 'pt-locked-page' ];
return false;
}
@@ -812,9 +1100,16 @@ class PageTranslationHooks {
return true;
}
- /// Hook: SkinSubPageSubtitle
+ /**
+ * Hook: SkinSubPageSubtitle
+ * @param array &$subpages
+ * @param Skin|null $skin
+ * @param OutputPage $out
+ * @return bool
+ */
public static function replaceSubtitle( &$subpages, $skin = null, OutputPage $out ) {
- if ( !TranslatablePage::isTranslationPage( $out->getTitle() )
+ $isTranslationPage = TranslatablePage::isTranslationPage( $out->getTitle() );
+ if ( !$isTranslationPage
&& !TranslatablePage::isSourcePage( $out->getTitle() )
) {
return true;
@@ -823,23 +1118,24 @@ class PageTranslationHooks {
// Copied from Skin::subPageSubtitle()
if ( $out->isArticle() && MWNamespace::hasSubpages( $out->getTitle()->getNamespace() ) ) {
$ptext = $out->getTitle()->getPrefixedText();
- if ( preg_match( '/\//', $ptext ) ) {
+ if ( strpos( $ptext, '/' ) !== false ) {
$links = explode( '/', $ptext );
array_pop( $links );
- // Also pop of one extra for language code is needed
- if ( TranslatablePage::isTranslationPage( $out->getTitle() ) ) {
+ if ( $isTranslationPage ) {
+ // Also remove language code page
array_pop( $links );
}
$c = 0;
$growinglink = '';
$display = '';
+ $lang = $skin->getLanguage();
foreach ( $links as $link ) {
$growinglink .= $link;
$display .= $link;
$linkObj = Title::newFromText( $growinglink );
- if ( is_object( $linkObj ) && $linkObj->exists() ) {
+ if ( is_object( $linkObj ) && $linkObj->isKnown() ) {
$getlink = Linker::linkKnown(
SpecialPage::getTitleFor( 'MyLanguage', $growinglink ),
htmlspecialchars( $display )
@@ -848,10 +1144,9 @@ class PageTranslationHooks {
$c++;
if ( $c > 1 ) {
- $subpages .= wfMessage( 'pipe-separator' )->plain();
+ $subpages .= $lang->getDirMarkEntity() . $skin->msg( 'pipe-separator' )->escaped();
} else {
- // This one is stupid imho, doesn't work with chihuahua
- // $subpages .= '&lt; ';
+ $subpages .= '&lt; ';
}
$subpages .= $getlink;
@@ -870,45 +1165,26 @@ class PageTranslationHooks {
return true;
}
- /// Hook: SpecialTranslate::executeTask
- public static function sourceExport( RequestContext $context,
- TranslateTask $task = null, MessageGroup $group, array $options
- ) {
- if ( $task || $options['taction'] !== 'export'
- || !$group instanceof WikiPageMessageGroup
- ) {
- return true;
- }
-
- $page = TranslatablePage::newFromTitle( $group->getTitle() );
- $collection = $group->initCollection( $options['language'] );
- $collection->loadTranslations( DB_MASTER );
- $text = $page->getParse()->getTranslationPageText( $collection );
- $display = $page->getPageDisplayTitle( $options['language'] );
- if ( $display ) {
- $text = "{{DISPLAYTITLE:$display}}$text";
- }
- $output = Html::element( 'textarea', array( 'rows' => 25 ), $text );
- $context->getOutput()->addHtml( $output );
-
- return false;
- }
-
/**
* Converts the edit tab (if exists) for translation pages to translate tab.
* Hook: SkinTemplateNavigation
* @since 2013.06
+ * @param Skin $skin
+ * @param array &$tabs
+ * @return true
*/
- static function translateTab( Skin $skin, array &$tabs ) {
+ public static function translateTab( Skin $skin, array &$tabs ) {
$title = $skin->getTitle();
- // Set display title
+ $handle = new MessageHandle( $title );
+ $code = $handle->getCode();
$page = TranslatablePage::isTranslationPage( $title );
if ( !$page ) {
return true;
}
-
- $handle = new MessageHandle( $title );
- $code = $handle->getCode();
+ // The source language has a subpage too, but cannot be translated
+ if ( $page->getSourceLanguageCode() === $code ) {
+ return true;
+ }
if ( isset( $tabs['views']['edit'] ) ) {
$tabs['views']['edit']['text'] = $skin->msg( 'tpt-tab-translate' )->text();
@@ -922,17 +1198,26 @@ class PageTranslationHooks {
* Hook to update source and destination translation pages on moving translation units
* Hook: TitleMoveComplete
* @since 2014.08
+ * @param Title $ot
+ * @param Title $nt
+ * @param User $user
+ * @param int $oldid
+ * @param int $newid
+ * @param string $reason
*/
- public static function onMoveTranslationUnits( Title &$ot, Title &$nt, User &$user,
+ public static function onMoveTranslationUnits( Title $ot, Title $nt, User $user,
$oldid, $newid, $reason
) {
- // Do the update only once. In case running by job queue, the update is not done here
- if ( self::$jobQueueRunning ) {
+ // TranslatablePageMoveJob takes care of handling updates because it performs
+ // a lot of moves at once. As a performance optimization, skip this hook if
+ // we detect moves from that job. As there isn't a good way to pass information
+ // to this hook what originated the move, we use some heuristics.
+ if ( defined( 'MEDIAWIKI_JOB_RUNNER' ) && $user->equals( FuzzyBot::getUser() ) ) {
return;
}
$groupLast = null;
- foreach ( array( $ot, $nt ) as $title ) {
+ foreach ( [ $ot, $nt ] as $title ) {
$handle = new MessageHandle( $title );
if ( !$handle->isValid() ) {
continue;
@@ -950,6 +1235,11 @@ class PageTranslationHooks {
$language = $handle->getCode();
+ // Ignore pages such as Translations:Page/unit without language code
+ if ( (string)$language === '' ) {
+ continue;
+ }
+
// Update the page only once if source and destination units
// belong to the same page
if ( $group !== $groupLast ) {
@@ -959,4 +1249,79 @@ class PageTranslationHooks {
}
}
}
+
+ /**
+ * Hook to update translation page on deleting a translation unit
+ * Hook: ArticleDeleteComplete
+ * @since 2016.05
+ * @param WikiPage &$unit
+ * @param User &$user
+ * @param string $reason
+ * @param int $id
+ * @param Content $content
+ * @param ManualLogEntry $logEntry
+ */
+ public static function onDeleteTranslationUnit( WikiPage &$unit, User &$user, $reason,
+ $id, $content, $logEntry
+ ) {
+ // Do the update. In case job queue is doing the work, the update is not done here
+ if ( self::$jobQueueRunning ) {
+ return;
+ }
+ $title = $unit->getTitle();
+
+ $handle = new MessageHandle( $title );
+ if ( !$handle->isValid() ) {
+ return;
+ }
+
+ $group = $handle->getGroup();
+ if ( !$group instanceof WikiPageMessageGroup ) {
+ return;
+ }
+
+ // There could be interfaces which may allow mass deletion (eg. Nuke). Since they could
+ // delete many units in one request, it may do several unnecessary edits and cause several
+ // other unnecessary updates to be done slowing down the user. To avoid that, we push this
+ // to a queue that is run after the current transaction is committed so that we can see the
+ // version that is after all the deletions has been done. This allows us to do just one edit
+ // per translation page after the current deletions has been done. This is sort of hackish
+ // but this is better user experience and is also more efficent.
+ static $queuedPages = [];
+ $target = $group->getTitle();
+ $langCode = $handle->getCode();
+ $targetPage = $target->getSubpage( $langCode )->getPrefixedText();
+
+ if ( !isset( $queuedPages[ $targetPage ] ) ) {
+ $queuedPages[ $targetPage ] = true;
+ $fname = __METHOD__;
+
+ $dbw = wfGetDB( DB_MASTER );
+ $dbw->onTransactionIdle( function () use ( $dbw, $queuedPages, $targetPage,
+ $target, $handle, $langCode, $user, $reason, $fname
+ ) {
+ $dbw->startAtomic( $fname );
+
+ $page = TranslatablePage::newFromTitle( $target );
+
+ MessageGroupStats::forItem(
+ $page->getMessageGroupId(),
+ $langCode,
+ MessageGroupStats::FLAG_NO_CACHE
+ );
+
+ if ( !$handle->isDoc() ) {
+ // Assume that $user and $reason for the first deletion is the same for all
+ self::updateTranslationPage( $page, $langCode, $user, 0, $reason );
+ }
+
+ // If a unit was deleted after the edit here is done, this allows us
+ // to add the page back to the queue again and so we can make another
+ // edit here with the latest changes.
+ unset( $queuedPages[ $targetPage ] );
+
+ $dbw->endAtomic( $fname );
+ } );
+ }
+ }
}
diff --git a/MLEB/Translate/tag/PageTranslationLogFormatter.php b/MLEB/Translate/tag/PageTranslationLogFormatter.php
index 4008223c..7e0d4938 100644
--- a/MLEB/Translate/tag/PageTranslationLogFormatter.php
+++ b/MLEB/Translate/tag/PageTranslationLogFormatter.php
@@ -4,8 +4,7 @@
*
* @file
* @author Niklas Laxström
- * @copyright Copyright © 2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -23,7 +22,7 @@ class PageTranslationLogFormatter extends LogFormatter {
$targetPage = $this->makePageLink(
$this->entry->getTarget(),
- array( 'oldid' => $revision )
+ [ 'oldid' => $revision ]
);
$params[2] = Message::rawParam( $targetPage );
@@ -81,6 +80,9 @@ class PageTranslationLogFormatter extends LogFormatter {
protected function getMessageKey() {
$key = parent::getMessageKey();
$type = $this->entry->getFullType();
+
+ // logentry-pagetranslation-prioritylanguages-unset
+ // logentry-pagetranslation-prioritylanguages-force
if ( $type === 'pagetranslation/prioritylanguages' ) {
$params = $this->getMessageParameters();
if ( !isset( $params[4] ) ) {
diff --git a/MLEB/Translate/tag/SpecialPageTranslation.php b/MLEB/Translate/tag/SpecialPageTranslation.php
index 7d4daf46..c0a021e8 100644
--- a/MLEB/Translate/tag/SpecialPageTranslation.php
+++ b/MLEB/Translate/tag/SpecialPageTranslation.php
@@ -5,8 +5,7 @@
* @file
* @author Niklas Laxström
* @author Siebrand Mazeland
- * @copyright Copyright © 2008-2013 Niklas Laxström, Siebrand Mazeland
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -18,11 +17,19 @@
*
* @ingroup SpecialPage PageTranslation
*/
-class SpecialPageTranslation extends TranslateSpecialPage {
- function __construct() {
+class SpecialPageTranslation extends SpecialPage {
+ public function __construct() {
parent::__construct( 'PageTranslation' );
}
+ public function doesWrites() {
+ return true;
+ }
+
+ protected function getGroupName() {
+ return 'pagetools';
+ }
+
public function execute( $parameters ) {
$this->setHeaders();
@@ -33,37 +40,55 @@ class SpecialPageTranslation extends TranslateSpecialPage {
$revision = $request->getInt( 'revision', 0 );
$action = $request->getVal( 'do' );
$out = $this->getOutput();
+ $out->addModules( 'ext.translate.special.pagetranslation' );
+ $out->addHelpLink( 'Help:Extension:Translate/Page_translation_example' );
- TranslateUtils::addSpecialHelpLink(
- $out,
- 'Help:Extension:Translate/Page_translation_example'
- );
-
- // No specific page or invalid input
- $title = Title::newFromText( $target );
- if ( !$title ) {
- if ( $target !== '' ) {
- $out->addWikiMsg( 'tpt-badtitle' );
- } else {
- $this->listPages();
- }
+ if ( $target === '' ) {
+ $this->listPages();
return;
}
- // Check permissions
+ // Anything else than listing the pages need permissions
if ( !$user->isAllowed( 'pagetranslation' ) ) {
throw new PermissionsError( 'pagetranslation' );
}
- // Check permissions
+ $title = Title::newFromText( $target );
+ if ( !$title ) {
+ $out->addWikiMsg( 'tpt-badtitle' );
+
+ return;
+ } elseif ( !$title->exists() ) {
+ $out->addWikiMsg( 'tpt-nosuchpage', $title->getPrefixedText() );
+
+ return;
+ }
+
+ // Check token for all POST actions here
if ( $request->wasPosted() && !$user->matchEditToken( $request->getText( 'token' ) ) ) {
throw new PermissionsError( 'pagetranslation' );
}
- // We are processing some specific page
- if ( !$title->exists() ) {
- $out->addWikiMsg( 'tpt-nosuchpage', $title->getPrefixedText() );
+ if ( $action === 'mark' ) {
+ // Has separate form
+ $this->onActionMark( $title, $revision );
+
+ return;
+ }
+
+ // On GET requests, show form which has token
+ if ( !$request->wasPosted() ) {
+ if ( $action === 'unlink' ) {
+ $this->showUnlinkConfirmation( $title, $target );
+ } else {
+ $params = [
+ 'do' => $action,
+ 'target' => $title->getPrefixedText(),
+ 'revision' => $revision
+ ];
+ $this->showGenericConfirmation( $params );
+ }
return;
}
@@ -91,48 +116,42 @@ class SpecialPageTranslation extends TranslateSpecialPage {
$group = MessageGroups::getGroup( $id );
$parents = MessageGroups::getSharedGroups( $group );
- MessageGroupStats::clearGroup( $parents );
+ MessageGroupStats::forGroup( $parents, MessageGroupStats::FLAG_NO_CACHE );
return;
}
if ( $action === 'unlink' ) {
- if ( !$request->wasPosted() ) {
- $this->showUnlinkConfirmation( $title );
-
- return;
- } else {
- $page = TranslatablePage::newFromTitle( $title );
- $content = ContentHandler::makeContent(
- self::getStrippedSourcePageText( $page->getParse() ),
- $title
- );
-
- $status = WikiPage::factory( $title )->doEditContent(
- $content,
- $this->msg( 'tpt-unlink-summary' )->inContentLanguage()->text(),
- EDIT_FORCE_BOT | EDIT_UPDATE
- );
-
- if ( !$status->isOK() ) {
- $out->wrapWikiMsg(
- '<div class="errorbox">$1</div>',
- array( 'tpt-edit-failed', $status->getWikiText() )
- );
+ $page = TranslatablePage::newFromTitle( $title );
+ $content = ContentHandler::makeContent(
+ self::getStrippedSourcePageText( $page->getParse() ),
+ $title
+ );
- return;
- }
+ $status = WikiPage::factory( $title )->doEditContent(
+ $content,
+ $this->msg( 'tpt-unlink-summary' )->inContentLanguage()->text(),
+ EDIT_FORCE_BOT | EDIT_UPDATE
+ );
- $page = TranslatablePage::newFromTitle( $title );
- $this->unmarkPage( $page, $user );
+ if ( !$status->isOK() ) {
$out->wrapWikiMsg(
- '<div class="successbox">$1</div>',
- array( 'tpt-unmarked', $title->getPrefixedText() )
+ '<div class="errorbox">$1</div>',
+ [ 'tpt-edit-failed', $status->getWikiText() ]
);
- $this->listPages();
return;
}
+
+ $page = TranslatablePage::newFromTitle( $title );
+ $this->unmarkPage( $page, $user );
+ $out->wrapWikiMsg(
+ '<div class="successbox">$1</div>',
+ [ 'tpt-unmarked', $title->getPrefixedText() ]
+ );
+ $this->listPages();
+
+ return;
}
if ( $action === 'unmark' ) {
@@ -140,35 +159,42 @@ class SpecialPageTranslation extends TranslateSpecialPage {
$this->unmarkPage( $page, $user );
$out->wrapWikiMsg(
'<div class="successbox">$1</div>',
- array( 'tpt-unmarked', $title->getPrefixedText() )
+ [ 'tpt-unmarked', $title->getPrefixedText() ]
);
$this->listPages();
return;
}
+ }
+
+ protected function onActionMark( Title $title, $revision ) {
+ $request = $this->getRequest();
+ $out = $this->getOutput();
+
+ $out->addModuleStyles( 'ext.translate.special.pagetranslation.styles' );
if ( $revision === 0 ) {
// Get the latest revision
- $revision = intval( $title->getLatestRevID() );
+ $revision = (int)$title->getLatestRevID();
}
$page = TranslatablePage::newFromRevision( $title, $revision );
if ( !$page instanceof TranslatablePage ) {
$out->wrapWikiMsg(
'<div class="errorbox">$1</div>',
- array( 'tpt-notsuitable', $title->getPrefixedText(), $revision )
+ [ 'tpt-notsuitable', $title->getPrefixedText(), $revision ]
);
return;
}
- if ( $revision !== intval( $title->getLatestRevID() ) ) {
+ if ( $revision !== (int)$title->getLatestRevID() ) {
// We do want to notify the reviewer if the underlying page changes during review
- $target = $title->getFullUrl( array( 'oldid' => $revision ) );
+ $target = $title->getFullURL( [ 'oldid' => $revision ] );
$link = "<span class='plainlinks'>[$target $revision]</span>";
$out->wrapWikiMsg(
'<div class="warningbox">$1</div>',
- array( 'tpt-oldrevision', $title->getPrefixedText(), $link )
+ [ 'tpt-oldrevision', $title->getPrefixedText(), $link ]
);
$this->listPages();
@@ -179,7 +205,7 @@ class SpecialPageTranslation extends TranslateSpecialPage {
if ( $lastrev !== false && $lastrev === $revision ) {
$out->wrapWikiMsg(
'<div class="warningbox">$1</div>',
- array( 'tpt-already-marked' )
+ [ 'tpt-already-marked' ]
);
$this->listPages();
@@ -195,7 +221,7 @@ class SpecialPageTranslation extends TranslateSpecialPage {
// Check if user wants to translate title
// If not, remove it from the list of sections
if ( !$request->getCheck( 'translatetitle' ) ) {
- $sections = array_filter( $sections, function( $s ) {
+ $sections = array_filter( $sections, function ( $s ) {
return $s->id !== 'Page display title';
} );
}
@@ -203,7 +229,7 @@ class SpecialPageTranslation extends TranslateSpecialPage {
$err = $this->markForTranslation( $page, $sections );
if ( $err ) {
- call_user_func_array( array( $out, 'addWikiMsg' ), $err );
+ call_user_func_array( [ $out, 'addWikiMsg' ], $err );
} else {
$this->showSuccess( $page );
$this->listPages();
@@ -221,15 +247,15 @@ class SpecialPageTranslation extends TranslateSpecialPage {
public function showSuccess( TranslatablePage $page ) {
$titleText = $page->getTitle()->getPrefixedText();
$num = $this->getLanguage()->formatNum( $page->getParse()->countSections() );
- $link = SpecialPage::getTitleFor( 'Translate' )->getFullUrl( array(
+ $link = SpecialPage::getTitleFor( 'Translate' )->getFullURL( [
'group' => $page->getMessageGroupId(),
'action' => 'page',
'filter' => '',
- ) );
+ ] );
$this->getOutput()->wrapWikiMsg(
'<div class="successbox">$1</div>',
- array( 'tpt-saveok', $titleText, $num, $link )
+ [ 'tpt-saveok', $titleText, $num, $link ]
);
// If TranslationNotifications is installed, and the user can notify
@@ -237,28 +263,54 @@ class SpecialPageTranslation extends TranslateSpecialPage {
if ( method_exists( 'SpecialNotifyTranslators', 'execute' ) &&
$this->getUser()->isAllowed( SpecialNotifyTranslators::$right )
) {
- $link = SpecialPage::getTitleFor( 'NotifyTranslators' )->getFullUrl(
- array( 'tpage' => $page->getTitle()->getArticleID() ) );
+ $link = SpecialPage::getTitleFor( 'NotifyTranslators' )->getFullURL(
+ [ 'tpage' => $page->getTitle()->getArticleID() ] );
$this->getOutput()->addWikiMsg( 'tpt-offer-notify', $link );
}
}
- protected function showUnlinkConfirmation( Title $target ) {
- $formParams = array(
+ protected function showGenericConfirmation( array $params ) {
+ $formParams = [
'method' => 'post',
- 'action' => $this->getTitle()->getFullURL(),
+ 'action' => $this->getPageTitle()->getFullURL(),
+ ];
+
+ $params['title'] = $this->getPageTitle()->getPrefixedText();
+ $params['token'] = $this->getUser()->getEditToken();
+
+ $hidden = '';
+ foreach ( $params as $key => $value ) {
+ $hidden .= Html::hidden( $key, $value );
+ }
+
+ $this->getOutput()->addHTML(
+ Html::openElement( 'form', $formParams ) .
+ $hidden .
+ $this->msg( 'tpt-generic-confirm' )->parseAsBlock() .
+ Xml::submitButton(
+ $this->msg( 'tpt-generic-button' )->text(),
+ [ 'class' => 'mw-ui-button mw-ui-progressive' ]
+ ) .
+ Html::closeElement( 'form' )
);
+ }
- $this->getOutput()->addHtml(
+ protected function showUnlinkConfirmation( Title $target ) {
+ $formParams = [
+ 'method' => 'post',
+ 'action' => $this->getPageTitle()->getFullURL(),
+ ];
+
+ $this->getOutput()->addHTML(
Html::openElement( 'form', $formParams ) .
Html::hidden( 'do', 'unlink' ) .
- Html::hidden( 'title', $this->getTitle()->getPrefixedText() ) .
+ Html::hidden( 'title', $this->getPageTitle()->getPrefixedText() ) .
Html::hidden( 'target', $target->getPrefixedText() ) .
Html::hidden( 'token', $this->getUser()->getEditToken() ) .
- $this->msg( 'tpt-unlink-confirm', $target->getPrefixedtext() )->parseAsBlock() .
+ $this->msg( 'tpt-unlink-confirm', $target->getPrefixedText() )->parseAsBlock() .
Xml::submitButton(
$this->msg( 'tpt-unlink-button' )->text(),
- array( 'class' => 'mw-ui-button mw-ui-destructive' )
+ [ 'class' => 'mw-ui-button mw-ui-destructive' ]
) .
Html::closeElement( 'form' )
);
@@ -276,42 +328,42 @@ class SpecialPageTranslation extends TranslateSpecialPage {
}
public function loadPagesFromDB() {
- $dbr = wfGetDB( DB_MASTER );
- $tables = array( 'page', 'revtag' );
- $vars = array(
+ $dbr = TranslateUtils::getSafeReadDB();
+ $tables = [ 'page', 'revtag' ];
+ $vars = [
'page_id',
'page_title',
'page_namespace',
'page_latest',
'MAX(rt_revision) AS rt_revision',
'rt_type'
- );
- $conds = array(
+ ];
+ $conds = [
'page_id=rt_page',
- 'rt_type' => array( RevTag::getType( 'tp:mark' ), RevTag::getType( 'tp:tag' ) ),
- );
- $options = array(
+ 'rt_type' => [ RevTag::getType( 'tp:mark' ), RevTag::getType( 'tp:tag' ) ],
+ ];
+ $options = [
'ORDER BY' => 'page_namespace, page_title',
'GROUP BY' => 'page_id, rt_type',
- );
+ ];
$res = $dbr->select( $tables, $vars, $conds, __METHOD__, $options );
return $res;
}
protected function buildPageArray( /*db result*/$res ) {
- $pages = array();
+ $pages = [];
foreach ( $res as $r ) {
// We have multiple rows for same page, because of different tags
if ( !isset( $pages[$r->page_id] ) ) {
- $pages[$r->page_id] = array();
+ $pages[$r->page_id] = [];
$title = Title::newFromRow( $r );
$pages[$r->page_id]['title'] = $title;
- $pages[$r->page_id]['latest'] = intval( $title->getLatestRevID() );
+ $pages[$r->page_id]['latest'] = (int)$title->getLatestRevID();
}
$tag = RevTag::typeToTag( $r->rt_type );
- $pages[$r->page_id][$tag] = intval( $r->rt_revision );
+ $pages[$r->page_id][$tag] = (int)$r->rt_revision;
}
return $pages;
@@ -322,12 +374,12 @@ class SpecialPageTranslation extends TranslateSpecialPage {
* @return array
*/
protected function classifyPages( array $in ) {
- $out = array(
- 'proposed' => array(),
- 'active' => array(),
- 'broken' => array(),
- 'discouraged' => array(),
- );
+ $out = [
+ 'proposed' => [],
+ 'active' => [],
+ 'broken' => [],
+ 'discouraged' => [],
+ ];
foreach ( $in as $index => $page ) {
if ( !isset( $page['tp:mark'] ) ) {
@@ -361,32 +413,40 @@ class SpecialPageTranslation extends TranslateSpecialPage {
$out = $this->getOutput();
$res = $this->loadPagesFromDB();
- $allpages = $this->buildPageArray( $res );
- if ( !count( $allpages ) ) {
+ $allPages = $this->buildPageArray( $res );
+ if ( !count( $allPages ) ) {
$out->addWikiMsg( 'tpt-list-nopages' );
return;
}
- $types = $this->classifyPages( $allpages );
+
+ $lb = new LinkBatch();
+ $lb->setCaller( __METHOD__ );
+ foreach ( $allPages as $page ) {
+ $lb->addObj( $page['title'] );
+ }
+ $lb->execute();
+
+ $types = $this->classifyPages( $allPages );
$pages = $types['proposed'];
if ( count( $pages ) ) {
$out->wrapWikiMsg( '== $1 ==', 'tpt-new-pages-title' );
$out->addWikiMsg( 'tpt-new-pages', count( $pages ) );
- $out->addHtml( '<ol>' );
+ $out->addHTML( '<ol>' );
foreach ( $pages as $page ) {
$link = Linker::link( $page['title'] );
$acts = $this->actionLinks( $page, 'proposed' );
- $out->addHtml( "<li>$link $acts</li>" );
+ $out->addHTML( "<li>$link $acts</li>" );
}
- $out->addHtml( '</ol>' );
+ $out->addHTML( '</ol>' );
}
$pages = $types['active'];
if ( count( $pages ) ) {
$out->wrapWikiMsg( '== $1 ==', 'tpt-old-pages-title' );
$out->addWikiMsg( 'tpt-old-pages', count( $pages ) );
- $out->addHtml( '<ol>' );
+ $out->addHTML( '<ol>' );
foreach ( $pages as $page ) {
$link = Linker::link( $page['title'] );
if ( $page['tp:mark'] !== $page['tp:tag'] ) {
@@ -394,29 +454,29 @@ class SpecialPageTranslation extends TranslateSpecialPage {
}
$acts = $this->actionLinks( $page, 'active' );
- $out->addHtml( "<li>$link $acts</li>" );
+ $out->addHTML( "<li>$link $acts</li>" );
}
- $out->addHtml( '</ol>' );
+ $out->addHTML( '</ol>' );
}
$pages = $types['broken'];
if ( count( $pages ) ) {
$out->wrapWikiMsg( '== $1 ==', 'tpt-other-pages-title' );
$out->addWikiMsg( 'tpt-other-pages', count( $pages ) );
- $out->addHtml( '<ol>' );
+ $out->addHTML( '<ol>' );
foreach ( $pages as $page ) {
$link = Linker::link( $page['title'] );
$acts = $this->actionLinks( $page, 'broken' );
- $out->addHtml( "<li>$link $acts</li>" );
+ $out->addHTML( "<li>$link $acts</li>" );
}
- $out->addHtml( '</ol>' );
+ $out->addHTML( '</ol>' );
}
$pages = $types['discouraged'];
if ( count( $pages ) ) {
$out->wrapWikiMsg( '== $1 ==', 'tpt-discouraged-pages-title' );
$out->addWikiMsg( 'tpt-discouraged-pages', count( $pages ) );
- $out->addHtml( '<ol>' );
+ $out->addHTML( '<ol>' );
foreach ( $pages as $page ) {
$link = Linker::link( $page['title'] );
if ( $page['tp:mark'] !== $page['tp:tag'] ) {
@@ -424,9 +484,9 @@ class SpecialPageTranslation extends TranslateSpecialPage {
}
$acts = $this->actionLinks( $page, 'discouraged' );
- $out->addHtml( "<li>$link $acts</li>" );
+ $out->addHTML( "<li>$link $acts</li>" );
}
- $out->addHtml( '</ol>' );
+ $out->addHTML( '</ol>' );
}
}
@@ -436,68 +496,65 @@ class SpecialPageTranslation extends TranslateSpecialPage {
* @return string
*/
protected function actionLinks( array $page, $type ) {
- $actions = array();
+ $actions = [];
/**
* @var Title $title
*/
$title = $page['title'];
$user = $this->getUser();
- if ( $user->isAllowed( 'pagetranslation' ) ) {
- $token = $user->getEditToken();
+ // Class to allow one-click POSTs
+ $js = [ 'class' => 'mw-translate-jspost' ];
+ if ( $user->isAllowed( 'pagetranslation' ) ) {
$pending = $type === 'active' && $page['latest'] !== $page['tp:mark'];
if ( $type === 'proposed' || $pending ) {
- $actions[] = Linker::link(
- $this->getTitle(),
+ $actions[] = Linker::linkKnown(
+ $this->getPageTitle(),
$this->msg( 'tpt-rev-mark' )->escaped(),
- array( 'title' => $this->msg( 'tpt-rev-mark-tooltip' )->text() ),
- array(
+ [ 'title' => $this->msg( 'tpt-rev-mark-tooltip' )->text() ],
+ [
'do' => 'mark',
'target' => $title->getPrefixedText(),
- 'revision' => $title->getLatestRevId(),
- 'token' => $token,
- )
+ 'revision' => $title->getLatestRevID(),
+ ]
);
}
if ( $type === 'active' ) {
- $actions[] = Linker::link(
- $this->getTitle(),
+ $actions[] = Linker::linkKnown(
+ $this->getPageTitle(),
$this->msg( 'tpt-rev-discourage' )->escaped(),
- array( 'title' => $this->msg( 'tpt-rev-discourage-tooltip' )->text() ),
- array(
+ [ 'title' => $this->msg( 'tpt-rev-discourage-tooltip' )->text() ] + $js,
+ [
'do' => 'discourage',
'target' => $title->getPrefixedText(),
'revision' => -1,
- 'token' => $token,
- )
+ ]
);
} elseif ( $type === 'discouraged' ) {
- $actions[] = Linker::link(
- $this->getTitle(),
+ $actions[] = Linker::linkKnown(
+ $this->getPageTitle(),
$this->msg( 'tpt-rev-encourage' )->escaped(),
- array( 'title' => $this->msg( 'tpt-rev-encourage-tooltip' )->text() ),
- array(
+ [ 'title' => $this->msg( 'tpt-rev-encourage-tooltip' )->text() ] + $js,
+ [
'do' => 'encourage',
'target' => $title->getPrefixedText(),
'revision' => -1,
- 'token' => $token,
- )
+ ]
);
}
if ( $type !== 'proposed' ) {
- $actions[] = Linker::link(
- $this->getTitle(),
+ $actions[] = Linker::linkKnown(
+ $this->getPageTitle(),
$this->msg( 'tpt-rev-unmark' )->escaped(),
- array( 'title' => $this->msg( 'tpt-rev-unmark-tooltip' )->text() ),
- array(
+ [ 'title' => $this->msg( 'tpt-rev-unmark-tooltip' )->text() ],
+ [
'do' => $type === 'broken' ? 'unmark' : 'unlink',
'target' => $title->getPrefixedText(),
'revision' => -1,
- 'token' => $token,
- )
+ ]
);
}
}
@@ -510,19 +567,19 @@ class SpecialPageTranslation extends TranslateSpecialPage {
return Html::rawElement(
'span',
- array( 'class' => 'mw-tpt-actions' ),
+ [ 'class' => 'mw-tpt-actions' ],
$this->msg( 'parentheses' )->rawParams( $flattened )->escaped()
);
}
/**
* @param TranslatablePage $page
- * @param bool $error
- * @return array
+ * @param bool &$error
+ * @return TPSection[] The array has string keys.
*/
- public function checkInput( TranslatablePage $page, &$error = false ) {
- $usedNames = array();
- $highest = intval( TranslateMetadata::get( $page->getMessageGroupId(), 'maxid' ) );
+ public function checkInput( TranslatablePage $page, &$error ) {
+ $usedNames = [];
+ $highest = (int)TranslateMetadata::get( $page->getMessageGroupId(), 'maxid' );
$parse = $page->getParse();
$sections = $parse->getSectionsForSave( $highest );
@@ -544,29 +601,27 @@ class SpecialPageTranslation extends TranslateSpecialPage {
/**
* Displays the sections and changes for the user to review
* @param TranslatablePage $page
- * @param array $sections
+ * @param TPSection[] $sections
*/
public function showPage( TranslatablePage $page, array $sections ) {
- global $wgContLang;
-
$out = $this->getOutput();
$out->setSubtitle( Linker::link( $page->getTitle() ) );
- $out->addModules( 'ext.translate.special.pagetranslation' );
$out->addWikiMsg( 'tpt-showpage-intro' );
- $formParams = array(
+ $formParams = [
'method' => 'post',
- 'action' => $this->getTitle()->getFullURL(),
+ 'action' => $this->getPageTitle()->getFullURL(),
'class' => 'mw-tpt-sp-markform',
- );
+ ];
$out->addHTML(
Xml::openElement( 'form', $formParams ) .
- Html::hidden( 'title', $this->getTitle()->getPrefixedText() ) .
+ Html::hidden( 'do', 'mark' ) .
+ Html::hidden( 'title', $this->getPageTitle()->getPrefixedText() ) .
Html::hidden( 'revision', $page->getRevision() ) .
- Html::hidden( 'target', $page->getTitle()->getPrefixedtext() ) .
+ Html::hidden( 'target', $page->getTitle()->getPrefixedText() ) .
Html::hidden( 'token', $this->getUser()->getEditToken() )
);
@@ -580,16 +635,15 @@ class SpecialPageTranslation extends TranslateSpecialPage {
// If the page is marked for translation the first time, default to checked.
$defaultChecked = $page->hasPageDisplayTitle();
- /**
- * @var TPSection $s
- */
+ $sourceLanguage = Language::factory( $page->getSourceLanguageCode() );
+
foreach ( $sections as $s ) {
if ( $s->name === 'Page display title' ) {
// Set section type as new if title previously unchecked
$s->type = $defaultChecked ? $s->type : 'new';
// Checkbox for page title optional translation
- $this->getOutput()->addHTML ( Xml::checkLabel(
+ $this->getOutput()->addHTML( Xml::checkLabel(
$this->msg( 'tpt-translate-title' )->text(),
'translatetitle',
'mw-translate-title',
@@ -607,9 +661,7 @@ class SpecialPageTranslation extends TranslateSpecialPage {
if ( $s->type === 'changed' ) {
$hasChanges = true;
$diff = new DifferenceEngine;
- if ( method_exists( 'DifferenceEngine', 'setTextLanguage' ) ) {
- $diff->setTextLanguage( $wgContLang );
- }
+ $diff->setTextLanguage( $sourceLanguage );
$diff->setReducedLineNumbers();
$oldContent = ContentHandler::makeContent( $s->getOldText(), $diff->getTitle() );
@@ -634,11 +686,12 @@ class SpecialPageTranslation extends TranslateSpecialPage {
}
# For changed text, the language is set by $diff->setTextLanguage()
- $lang = $s->type === 'changed' ? null : $wgContLang;
+ $lang = $s->type === 'changed' ? null : $sourceLanguage;
$out->addHTML( MessageWebImporter::makeSectionElement(
$name,
$s->type,
- $text, $lang
+ $text,
+ $lang
) );
}
@@ -657,7 +710,7 @@ class SpecialPageTranslation extends TranslateSpecialPage {
$name,
$s->type,
$text,
- $wgContLang
+ $sourceLanguage
) );
}
}
@@ -676,9 +729,7 @@ class SpecialPageTranslation extends TranslateSpecialPage {
$out->wrapWikiMsg( '==$1==', 'tpt-sections-template' );
$diff = new DifferenceEngine;
- if ( method_exists( 'DifferenceEngine', 'setTextLanguage' ) ) {
- $diff->setTextLanguage( $wgContLang );
- }
+ $diff->setTextLanguage( $sourceLanguage );
$oldContent = ContentHandler::makeContent( $oldTemplate, $diff->getTitle() );
$newContent = ContentHandler::makeContent( $newTemplate, $diff->getTitle() );
@@ -692,7 +743,7 @@ class SpecialPageTranslation extends TranslateSpecialPage {
$diff->showDiffStyle();
$diff->setReducedLineNumbers();
- $contentParams = array( 'class' => 'mw-tpt-sp-content' );
+ $contentParams = [ 'class' => 'mw-tpt-sp-content' ];
$out->addHTML( Xml::tags( 'div', $contentParams, $text ) );
}
}
@@ -748,17 +799,17 @@ class SpecialPageTranslation extends TranslateSpecialPage {
);
$this->getOutput()->addHTML(
- "<table>" .
- "<tr>" .
+ '<table>' .
+ '<tr>' .
"<td class='mw-label'>$hLangs[0]</td>" .
"<td class='mw-input'>$hLangs[1]$langSelector[1]</td>" .
- "</tr>" .
+ '</tr>' .
"<tr><td></td><td class='mw-inout'>$hForce</td></tr>" .
- "<tr>" .
+ '<tr>' .
"<td class='mw-label'>$hReason[0]</td>" .
"<td class='mw-input'>$hReason[1]</td>" .
- "</tr>" .
- "</table>"
+ '</tr>' .
+ '</table>'
);
}
@@ -770,7 +821,7 @@ class SpecialPageTranslation extends TranslateSpecialPage {
* - Setups renderjobs to update the translation pages
* - Invalidates caches
* @param TranslatablePage $page
- * @param array $sections
+ * @param TPSection[] $sections
* @return array|bool
*/
public function markForTranslation( TranslatablePage $page, array $sections ) {
@@ -788,7 +839,7 @@ class SpecialPageTranslation extends TranslateSpecialPage {
);
if ( !$status->isOK() ) {
- return array( 'tpt-edit-failed', $status->getWikiText() );
+ return [ 'tpt-edit-failed', $status->getWikiText() ];
}
$newrevision = $status->value['revision'];
@@ -802,51 +853,48 @@ class SpecialPageTranslation extends TranslateSpecialPage {
if ( $newrevision === null ) {
// Probably a no-change edit, so no new revision was assigned.
// Get the latest revision manually
- $newrevision = $page->getTitle()->getLatestRevId();
+ $newrevision = $page->getTitle()->getLatestRevID();
}
- $inserts = array();
- $changed = array();
- $maxid = intval( TranslateMetadata::get( $page->getMessageGroupId(), 'maxid' ) );
+ $inserts = [];
+ $changed = [];
+ $maxid = (int)TranslateMetadata::get( $page->getMessageGroupId(), 'maxid' );
$pageId = $page->getTitle()->getArticleID();
/**
* @var TPSection $s
*/
foreach ( array_values( $sections ) as $index => $s ) {
- $maxid = max( $maxid, intval( $s->name ) );
+ $maxid = max( $maxid, (int)$s->name );
$changed[] = $s->name;
if ( $this->getRequest()->getCheck( "tpt-sect-{$s->id}-action-nofuzzy" ) ) {
- // This will be checked by getTranslationUnitJobs
+ // TranslationsUpdateJob will only fuzzy when type is changed
$s->type = 'old';
}
- $inserts[] = array(
+ $inserts[] = [
'trs_page' => $pageId,
'trs_key' => $s->name,
'trs_text' => $s->getText(),
'trs_order' => $index
- );
+ ];
}
$dbw = wfGetDB( DB_MASTER );
$dbw->delete(
'translate_sections',
- array( 'trs_page' => $page->getTitle()->getArticleID() ),
+ [ 'trs_page' => $page->getTitle()->getArticleID() ],
__METHOD__
);
$dbw->insert( 'translate_sections', $inserts, __METHOD__ );
TranslateMetadata::set( $page->getMessageGroupId(), 'maxid', $maxid );
$page->addMarkedTag( $newrevision );
- MessageGroups::clearCache();
+ MessageGroups::singleton()->recache();
- $jobs = self::getRenderJobs( $page );
- JobQueueGroup::singleton()->push( $jobs );
-
- $jobs = self::getTranslationUnitJobs( $page, $sections );
- JobQueueGroup::singleton()->push( $jobs );
+ $job = TranslationsUpdateJob::newFromPage( $page, $sections );
+ JobQueueGroup::singleton()->push( $job );
// Logging
$this->handlePriorityLanguages( $this->getRequest(), $page );
@@ -854,16 +902,15 @@ class SpecialPageTranslation extends TranslateSpecialPage {
$entry = new ManualLogEntry( 'pagetranslation', 'mark' );
$entry->setPerformer( $this->getUser() );
$entry->setTarget( $page->getTitle() );
- $entry->setParameters( array(
+ $entry->setParameters( [
'revision' => $newrevision,
'changed' => count( $changed ),
- ) );
+ ] );
$logid = $entry->insert();
$entry->publish( $logid );
// Clear more caches
$page->getTitle()->invalidateCache();
- MessageIndexRebuildJob::newJob()->insert();
return false;
}
@@ -906,11 +953,11 @@ class SpecialPageTranslation extends TranslateSpecialPage {
TranslateMetadata::set( $groupId, 'priorityreason', $npReason );
if ( $opLangs !== $npLangs || $opForce !== $npForce || $opReason !== $npReason ) {
- $params = array(
+ $params = [
'languages' => $npLangs,
'force' => $npForce,
'reason' => $npReason,
- );
+ ];
$entry = new ManualLogEntry( 'pagetranslation', 'prioritylanguages' );
$entry->setPerformer( $this->getUser() );
@@ -923,47 +970,6 @@ class SpecialPageTranslation extends TranslateSpecialPage {
}
/**
- * Creates jobs needed to create or update all translation pages.
- * @param TranslatablePage $page
- * @return Job[]
- * @since 2013-01-28
- */
- public static function getRenderJobs( TranslatablePage $page ) {
- $jobs = array();
-
- $titles = $page->getTranslationPages();
- foreach ( $titles as $t ) {
- $jobs[] = TranslateRenderJob::newJob( $t );
- }
-
- return $jobs;
- }
-
- /**
- * Creates jobs needed to create or update all translation page definitions.
- * @param TranslatablePage $page
- * @param array $sections
- * @return Job[]
- * @since 2013-01-28
- */
- public static function getTranslationUnitJobs( TranslatablePage $page, array $sections ) {
- $jobs = array();
-
- $code = $page->getSourceLanguageCode();
- $prefix = $page->getTitle()->getPrefixedText();
-
- foreach ( $sections as $s ) {
- $unit = $s->name;
- $title = Title::makeTitle( NS_TRANSLATIONS, "$prefix/$unit/$code" );
-
- $fuzzy = $s->type === 'changed';
- $jobs[] = MessageUpdateJob::newJob( $title, $s->getTextWithVariables(), $fuzzy );
- }
-
- return $jobs;
- }
-
- /**
* Returns the source page without any translation markup.
*
* @param TPParse $parse
@@ -971,7 +977,7 @@ class SpecialPageTranslation extends TranslateSpecialPage {
* @since 2014.09
*/
public static function getStrippedSourcePageText( TPParse $parse ) {
- $text = $parse->getTranslationPageText( array() );
+ $text = $parse->getTranslationPageText( [] );
$text = preg_replace( '~<languages\s*/>\n?~s', '', $text );
return $text;
}
diff --git a/MLEB/Translate/tag/SpecialPageTranslationDeletePage.php b/MLEB/Translate/tag/SpecialPageTranslationDeletePage.php
index 943a449b..8fe011dc 100644
--- a/MLEB/Translate/tag/SpecialPageTranslationDeletePage.php
+++ b/MLEB/Translate/tag/SpecialPageTranslationDeletePage.php
@@ -4,8 +4,7 @@
*
* @file
* @author Niklas Laxström
- * @copyright Copyright © 2012-2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -13,7 +12,7 @@
*
* @ingroup SpecialPage PageTranslation
*/
-class SpecialPageTranslationDeletePage extends TranslateSpecialPage {
+class SpecialPageTranslationDeletePage extends SpecialPage {
// Basic form parameters both as text and as titles
protected $text;
@@ -48,6 +47,10 @@ class SpecialPageTranslationDeletePage extends TranslateSpecialPage {
parent::__construct( 'PageTranslationDeletePage', 'pagetranslation' );
}
+ public function doesWrites() {
+ return true;
+ }
+
public function isListed() {
return false;
}
@@ -60,7 +63,7 @@ class SpecialPageTranslationDeletePage extends TranslateSpecialPage {
// Yes, the use of getVal() and getText() is wanted, see bug T22365
$this->text = $request->getVal( 'wpTitle', $par );
$this->title = Title::newFromText( $this->text );
- $this->reason = $request->getText( 'reason' );
+ $this->reason = $request->getText( 'wpReason' );
// Checkboxes that default being checked are tricky
$this->doSubpages = $request->getBool( 'subpages', !$request->wasPosted() );
@@ -75,7 +78,7 @@ class SpecialPageTranslationDeletePage extends TranslateSpecialPage {
// Real stuff starts here
if ( TranslatablePage::isSourcePage( $this->title ) ) {
$title = $this->msg( 'pt-deletepage-full-title', $this->title->getPrefixedText() );
- $out->setPagetitle( $title );
+ $out->setPageTitle( $title );
$this->code = '';
$this->page = TranslatablePage::newFromTitle( $this->title );
@@ -83,7 +86,7 @@ class SpecialPageTranslationDeletePage extends TranslateSpecialPage {
$page = TranslatablePage::isTranslationPage( $this->title );
if ( $page ) {
$title = $this->msg( 'pt-deletepage-lang-title', $this->title->getPrefixedText() );
- $out->setPagetitle( $title );
+ $out->setPageTitle( $title );
list( , $this->code ) = TranslateUtils::figureMessage( $this->title->getText() );
$this->page = $page;
@@ -132,9 +135,8 @@ class SpecialPageTranslationDeletePage extends TranslateSpecialPage {
*/
protected function doBasicChecks() {
# Check rights
- if ( !$this->userCanExecute( $this->getUser() ) ) {
+ if ( !$this->userCanExecute( $this->getUser() ) ) {
$this->displayRestrictionError();
- return;
}
if ( $this->title === null ) {
@@ -174,57 +176,33 @@ class SpecialPageTranslationDeletePage extends TranslateSpecialPage {
protected function showForm() {
$this->getOutput()->addWikiMsg( 'pt-deletepage-intro' );
- $subaction = array( 'name' => 'subaction' );
- $formParams = array(
- 'method' => 'post',
- 'action' => $this->getTitle( $this->text )->getLocalURL()
- );
-
- $form = array();
- $form[] = Xml::fieldset( $this->msg( 'pt-deletepage-any-legend' )->text() );
- $form[] = Html::openElement( 'form', $formParams );
- $form[] = Html::hidden( 'wpEditToken', $this->getUser()->getEditToken() );
- $this->addInputLabel(
- $form,
- $this->msg( 'pt-deletepage-current' )->text(),
- 'wpTitle',
- 30,
- $this->text
- );
- $this->addInputLabel(
- $form,
- $this->msg( 'pt-deletepage-reason' )->text(),
- 'reason',
- 60,
- $this->reason
- );
- $form[] = Xml::submitButton(
- $this->msg( 'pt-deletepage-action-check' )->text(),
- $subaction
- );
- $form[] = Xml::closeElement( 'form' );
- $form[] = Xml::closeElement( 'fieldset' );
- $this->getOutput()->addHTML( implode( "\n", $form ) );
- }
-
- /**
- * Shortcut for keeping the code at least a bit readable. Adds label and
- * input into $form array.
- *
- * @param array $form \list{String} Array where input element and label is appended.
- * @param string $label Label text.
- * @param string $name Name attribute.
- * @param int|bool $size Size attribute of the input element. Default false.
- * @param string|bool $text Text of the value attribute. Default false.
- * @param array $attribs Extra attributes. Default empty array.
- */
- protected function addInputLabel( &$form, $label, $name, $size = false, $text = false,
- $attribs = array()
- ) {
- $br = Html::element( 'br' );
- list( $label, $input ) = Xml::inputLabelSep( $label, $name, $name, $size, $text, $attribs );
- $form[] = $label . $br;
- $form[] = $input . $br;
+ $formDescriptor = [
+ 'wpTitle' => [
+ 'type' => 'text',
+ 'name' => 'wpTitle',
+ 'label' => $this->msg( 'pt-deletepage-current' )->text(),
+ 'size' => 30,
+ 'default' => $this->text,
+ ],
+ 'wpReason' => [
+ 'type' => 'text',
+ 'name' => 'wpReason',
+ 'label' => $this->msg( 'pt-deletepage-reason' )->text(),
+ 'size' => 60,
+ 'default' => $this->reason,
+ ]
+ ];
+
+ $htmlForm = HTMLForm::factory( 'ooui', $formDescriptor, $this->getContext() );
+ $htmlForm
+ ->addHiddenField( 'wpEditToken', $this->getUser()->getEditToken() )
+ ->setMethod( 'post' )
+ ->setAction( $this->getPageTitle( $this->text )->getLocalURL() )
+ ->setSubmitName( 'subaction' )
+ ->setSubmitTextMsg( 'pt-deletepage-action-check' )
+ ->setWrapperLegendMsg( 'pt-deletepage-any-legend' )
+ ->prepareForm()
+ ->displayForm( false );
}
/**
@@ -233,32 +211,40 @@ class SpecialPageTranslationDeletePage extends TranslateSpecialPage {
*/
protected function showConfirmation() {
$out = $this->getOutput();
+ $count = 0;
$out->addWikiMsg( 'pt-deletepage-intro' );
- $count = 1; // Base page
-
$out->wrapWikiMsg( '== $1 ==', 'pt-deletepage-list-pages' );
if ( !$this->singleLanguage() ) {
- $this->printChangeLine( $this->title );
+ $count++;
+ TranslateUtils::addWikiTextAsInterface(
+ $out,
+ $this->getChangeLine( $this->title )
+ );
}
$out->wrapWikiMsg( '=== $1 ===', 'pt-deletepage-list-translation' );
$translationPages = $this->getTranslationPages();
+ $lines = [];
foreach ( $translationPages as $old ) {
$count++;
- $this->printChangeLine( $old );
+ $lines[] = $this->getChangeLine( $old );
}
+ TranslateUtils::addWikiTextAsInterface( $out, implode( "\n", $lines ) );
$out->wrapWikiMsg( '=== $1 ===', 'pt-deletepage-list-section' );
$sectionPages = $this->getSectionPages();
+ $lines = [];
foreach ( $sectionPages as $old ) {
$count++;
- $this->printChangeLine( $old );
+ $lines[] = $this->getChangeLine( $old );
}
+ TranslateUtils::addWikiTextAsInterface( $out, implode( "\n", $lines ) );
$out->wrapWikiMsg( '=== $1 ===', 'pt-deletepage-list-other' );
$subpages = $this->getSubpages();
+ $lines = [];
foreach ( $subpages as $old ) {
if ( TranslatablePage::isTranslationPage( $old ) ) {
continue;
@@ -268,75 +254,75 @@ class SpecialPageTranslationDeletePage extends TranslateSpecialPage {
$count++;
}
- $this->printChangeLine( $old, $this->doSubpages );
+ $lines[] = $this->getChangeLine( $old, $this->doSubpages );
}
+ TranslateUtils::addWikiTextAsInterface( $out, implode( "\n", $lines ) );
- $out->addWikiText( "----\n" );
+ TranslateUtils::addWikiTextAsInterface( $out, "----\n" );
$out->addWikiMsg( 'pt-deletepage-list-count', $this->getLanguage()->formatNum( $count ) );
- $br = Html::element( 'br' );
- $readonly = array( 'readonly' => 'readonly' );
+ $formDescriptor = [
+ 'wpTitle' => [
+ 'type' => 'text',
+ 'name' => 'wpTitle',
+ 'label' => $this->msg( 'pt-deletepage-current' )->text(),
+ 'size' => 30,
+ 'default' => $this->text,
+ 'readonly' => true,
+ ],
+ 'wpReason' => [
+ 'type' => 'text',
+ 'name' => 'wpReason',
+ 'label' => $this->msg( 'pt-deletepage-reason' )->text(),
+ 'size' => 60,
+ 'default' => $this->reason,
+ ],
+ 'subpages' => [
+ 'type' => 'check',
+ 'name' => 'subpages',
+ 'id' => 'mw-subpages',
+ 'label' => $this->msg( 'pt-deletepage-subpages' )->text(),
+ 'default' => $this->doSubpages,
+ ]
+ ];
+
+ $htmlForm = HTMLForm::factory( 'ooui', $formDescriptor, $this->getContext() );
- $subaction = array( 'name' => 'subaction' );
- $formParams = array(
- 'method' => 'post',
- 'action' => $this->getTitle( $this->text )->getLocalURL()
- );
-
- $form = array();
if ( $this->singleLanguage() ) {
- $form[] = Xml::fieldset( $this->msg( 'pt-deletepage-lang-legend' )->text() );
+ $htmlForm->setWrapperLegendMsg( 'pt-deletepage-lang-legend' );
} else {
- $form[] = Xml::fieldset( $this->msg( 'pt-deletepage-full-legend' )->text() );
+ $htmlForm->setWrapperLegendMsg( 'pt-deletepage-full-legend' );
}
- $form[] = Html::openElement( 'form', $formParams );
- $form[] = Html::hidden( 'wpEditToken', $this->getUser()->getEditToken() );
- $this->addInputLabel(
- $form,
- $this->msg( 'pt-deletepage-current' )->text(),
- 'wpTitle',
- 30,
- $this->text, $readonly );
- $this->addInputLabel(
- $form,
- $this->msg( 'pt-deletepage-reason' )->text(),
- 'reason',
- 60,
- $this->reason );
- $form[] = Xml::checkLabel(
- $this->msg( 'pt-deletepage-subpages' )->text(),
- 'subpages',
- 'mw-subpages',
- $this->doSubpages,
- $readonly
- ) . $br;
- $form[] = Xml::submitButton(
- $this->msg( 'pt-deletepage-action-perform' )->text(),
- $subaction
- );
- $form[] = Xml::submitButton(
- $this->msg( 'pt-deletepage-action-other' )->text(),
- $subaction
- );
- $form[] = Xml::closeElement( 'form' );
- $form[] = Xml::closeElement( 'fieldset' );
- $out->addHTML( implode( "\n", $form ) );
+
+ $htmlForm
+ ->addHiddenField( 'wpEditToken', $this->getUser()->getEditToken() )
+ ->setMethod( 'post' )
+ ->setAction( $this->getPageTitle( $this->text )->getLocalURL() )
+ ->setSubmitTextMsg( 'pt-deletepage-action-perform' )
+ ->setSubmitName( 'subaction' )
+ ->addButton( [
+ 'name' => 'subaction',
+ 'value' => $this->msg( 'pt-deletepage-action-other' )->text(),
+ ] )
+ ->prepareForm()
+ ->displayForm( false );
}
/**
- * @param $title Title
- * @param $enabled bool
+ * @param Title $title
+ * @param bool $enabled
+ * @return string One line of wikitext, without trailing newline.
*/
- protected function printChangeLine( $title, $enabled = true ) {
+ protected function getChangeLine( $title, $enabled = true ) {
if ( $enabled ) {
- $this->getOutput()->addWikiText( '* ' . $title->getPrefixedText() );
+ return '* ' . $title->getPrefixedText();
} else {
- $this->getOutput()->addWikiText( '* <s>' . $title->getPrefixedText() . '</s>' );
+ return '* <s>' . $title->getPrefixedText() . '</s>';
}
}
protected function performAction() {
- $jobs = array();
+ $jobs = [];
$target = $this->title;
$base = $this->title->getPrefixedText();
@@ -347,7 +333,8 @@ class SpecialPageTranslationDeletePage extends TranslateSpecialPage {
$old,
$base,
!$this->singleLanguage(),
- $user
+ $user,
+ $this->reason
);
}
@@ -357,7 +344,8 @@ class SpecialPageTranslationDeletePage extends TranslateSpecialPage {
$old,
$base,
!$this->singleLanguage(),
- $user
+ $user,
+ $this->reason
);
}
@@ -372,7 +360,8 @@ class SpecialPageTranslationDeletePage extends TranslateSpecialPage {
$old,
$base,
!$this->singleLanguage(),
- $user
+ $user,
+ $this->reason
);
}
}
@@ -391,8 +380,8 @@ class SpecialPageTranslationDeletePage extends TranslateSpecialPage {
}
$this->clearMetadata();
- MessageGroups::clearCache();
- MessageIndexRebuildJob::newJob()->insert();
+ MessageGroups::singleton()->recache();
+ MessageIndexRebuildJob::newJob()->insertIntoJobQueue();
$this->getOutput()->addWikiMsg( 'pt-deletepage-started' );
}
@@ -441,7 +430,7 @@ class SpecialPageTranslationDeletePage extends TranslateSpecialPage {
*/
protected function getTranslationPages() {
if ( $this->singleLanguage() ) {
- return array( $this->title );
+ return [ $this->title ];
}
if ( !isset( $this->translationPages ) ) {
diff --git a/MLEB/Translate/tag/SpecialPageTranslationMovePage.php b/MLEB/Translate/tag/SpecialPageTranslationMovePage.php
index b8a77b36..e7153469 100644
--- a/MLEB/Translate/tag/SpecialPageTranslationMovePage.php
+++ b/MLEB/Translate/tag/SpecialPageTranslationMovePage.php
@@ -4,8 +4,7 @@
*
* @file
* @author Niklas Laxström
- * @copyright Copyright © 2010-2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -14,7 +13,7 @@
*
* @ingroup SpecialPage PageTranslation
*/
-class SpecialPageTranslationMovePage extends TranslateSpecialPage {
+class SpecialPageTranslationMovePage extends MovePageForm {
// Basic form parameters both as text and as titles
protected $newText, $oldText;
@@ -52,17 +51,21 @@ class SpecialPageTranslationMovePage extends TranslateSpecialPage {
/**
* @var Title[] Cached list of translation pages. Not yet loaded if null.
*/
- protected $translationPages = null;
+ protected $translationPages;
/**
* @var Title[] Cached list of section pages. Not yet loaded if null.
*/
- protected $sectionPages = null;
+ protected $sectionPages;
public function __construct() {
parent::__construct( 'Movepage' );
}
+ public function doesWrites() {
+ return true;
+ }
+
public function isListed() {
return false;
}
@@ -70,11 +73,16 @@ class SpecialPageTranslationMovePage extends TranslateSpecialPage {
/**
* Partially copies from SpecialMovepage.php, because it cannot be
* extended in other ways.
+ *
+ * @param string|null $par null if subpage not provided, string otherwise
+ * @throws PermissionsError
*/
public function execute( $par ) {
$request = $this->getRequest();
$user = $this->getUser();
+ $par = is_null( $par ) ? '' : $par; // Title::newFromText expects strings only
+
// Yes, the use of getVal() and getText() is wanted, see bug T22365
$this->oldText = $request->getVal( 'wpOldTitle', $request->getVal( 'target', $par ) );
$this->newText = $request->getText( 'wpNewTitle' );
@@ -86,16 +94,15 @@ class SpecialPageTranslationMovePage extends TranslateSpecialPage {
// Checkboxes that default being checked are tricky
$this->moveSubpages = $request->getBool( 'subpages', !$request->wasPosted() );
- if ( $this->doBasicChecks() !== true ) {
- return;
- }
+ // This will throw exceptions if there is an error.
+ $this->doBasicChecks();
// Real stuff starts here
$page = TranslatablePage::newFromTitle( $this->oldTitle );
if ( $page->getMarkedTag() !== false ) {
$this->page = $page;
- $this->getOutput()->setPagetitle( $this->msg( 'pt-movepage-title', $this->oldText ) );
+ $this->getOutput()->setPageTitle( $this->msg( 'pt-movepage-title', $this->oldText ) );
if ( !$user->isAllowed( 'pagetranslation' ) ) {
throw new PermissionsError( 'pagetranslation' );
@@ -121,14 +128,14 @@ class SpecialPageTranslationMovePage extends TranslateSpecialPage {
$blockers = $this->checkMoveBlockers();
if ( count( $blockers ) ) {
$this->showErrors( $blockers );
- $this->showForm();
+ $this->showForm( [] );
} else {
$this->showConfirmation();
}
} elseif ( $subaction === 'perform' && $this->checkToken() && $request->wasPosted() ) {
$this->performAction();
} else {
- $this->showForm();
+ $this->showForm( [] );
}
} else {
// Delegate... don't want to reimplement this
@@ -140,14 +147,10 @@ class SpecialPageTranslationMovePage extends TranslateSpecialPage {
/**
* Do the basic checks whether moving is possible and whether
* the input looks anywhere near sane.
- * @throws PermissionsError|ErrorPageError|ReadOnlyError
- * @return bool
+ * @throws PermissionsError|ErrorPageError|ReadOnlyError|ThrottledError
*/
protected function doBasicChecks() {
- # Check for database lock
- if ( wfReadOnly() ) {
- throw new ReadOnlyError;
- }
+ $this->checkReadOnly();
if ( $this->oldTitle === null ) {
throw new ErrorPageError( 'notargettitle', 'notargettext' );
@@ -157,14 +160,15 @@ class SpecialPageTranslationMovePage extends TranslateSpecialPage {
throw new ErrorPageError( 'nopagetitle', 'nopagetext' );
}
- # Check rights
+ if ( $this->getUser()->pingLimiter( 'move' ) ) {
+ throw new ThrottledError;
+ }
+
+ // Check rights
$permErrors = $this->oldTitle->getUserPermissionsErrors( 'move', $this->getUser() );
- if ( !empty( $permErrors ) ) {
+ if ( count( $permErrors ) ) {
throw new PermissionsError( 'move', $permErrors );
}
-
- // Let the caller know it's safe to continue
- return true;
}
/**
@@ -185,78 +189,77 @@ class SpecialPageTranslationMovePage extends TranslateSpecialPage {
if ( count( $errors ) ) {
$out = $this->getOutput();
- $out->addHTML( Html::openElement( 'div', array( 'class' => 'error' ) ) );
+ $out->addHTML( Html::openElement( 'div', [ 'class' => 'error' ] ) );
$out->addWikiMsg(
'pt-movepage-blockers',
$this->getLanguage()->formatNum( count( $errors ) )
);
- $out->addHTML( '<ul>' );
+ $s = '';
foreach ( $errors as $error ) {
- // I have no idea what the parser is doing, but this is mad.
- // <li>$1</li> doesn't work.
- $out->wrapWikiMsg( "<li>$1", $error );
+ $s .= '* ' . wfMessage( ...$error )->plain() . "\n";
}
- $out->addHTML( '</ul></div>' );
+ TranslateUtils::addWikiTextAsInterface( $out, $s );
+ $out->addHTML( '</div>' );
}
}
/**
* The query form.
+ *
+ * @param array $par
*/
- protected function showForm() {
+ public function showForm( $par ) {
$this->getOutput()->addWikiMsg( 'pt-movepage-intro' );
- $br = Html::element( 'br' );
- $subaction = array( 'name' => 'subaction' );
- $readonly = array( 'readonly' => 'readonly' );
- $formParams = array(
- 'method' => 'post',
- 'action' => $this->getTitle( $this->oldText )->getLocalURL()
- );
-
- $form = array();
- $form[] = Xml::fieldset( $this->msg( 'pt-movepage-legend' )->text() );
- $form[] = Html::openElement( 'form', $formParams );
- $form[] = Html::hidden( 'wpEditToken', $this->getUser()->getEditToken() );
- $this->addInputLabel(
- $form,
- $this->msg( 'pt-movepage-current' )->text(),
- 'wpOldTitle',
- 30,
- $this->oldText,
- $readonly
- );
- $this->addInputLabel(
- $form,
- $this->msg( 'pt-movepage-new' )->text(),
- 'wpNewTitle',
- 30,
- $this->newText
- );
- $this->addInputLabel(
- $form,
- $this->msg( 'pt-movepage-reason' )->text(),
- 'reason',
- 45,
- $this->reason
- );
- $form[] = Xml::checkLabel(
- $this->msg( 'pt-movepage-subpages' )->text(),
- 'subpages',
- 'mw-subpages',
- $this->moveSubpages
- ) . $br;
- $form[] = Xml::submitButton( $this->msg( 'pt-movepage-action-check' )->text(), $subaction );
- $form[] = Xml::closeElement( 'form' );
- $form[] = Xml::closeElement( 'fieldset' );
- $this->getOutput()->addHTML( implode( "\n", $form ) );
+ $formDescriptor = [
+ 'wpOldTitle' => [
+ 'type' => 'text',
+ 'name' => 'wpOldTitle',
+ 'label' => $this->msg( 'pt-movepage-current' )->text(),
+ 'size' => 30,
+ 'default' => $this->oldText,
+ 'readonly' => true,
+ ],
+ 'wpNewTitle' => [
+ 'type' => 'text',
+ 'name' => 'wpNewTitle',
+ 'label' => $this->msg( 'pt-movepage-new' )->text(),
+ 'size' => 30,
+ 'default' => $this->newText,
+ ],
+ 'reason' => [
+ 'type' => 'text',
+ 'name' => 'reason',
+ 'label' => $this->msg( 'pt-movepage-reason' )->text(),
+ 'size' => 45,
+ 'default' => $this->reason,
+ ],
+ 'subpages' => [
+ 'type' => 'check',
+ 'name' => 'subpages',
+ 'id' => 'mw-subpages',
+ 'label' => $this->msg( 'pt-movepage-subpages' )->text(),
+ 'default' => $this->moveSubpages,
+ ]
+ ];
+
+ $htmlForm = HTMLForm::factory( 'ooui', $formDescriptor, $this->getContext() );
+ $htmlForm
+ ->addHiddenField( 'wpEditToken', $this->getUser()->getEditToken() )
+ ->setMethod( 'post' )
+ ->setAction( $this->getPageTitle( $this->oldText )->getLocalURL() )
+ ->setSubmitName( 'subaction' )
+ ->setSubmitTextMsg( 'pt-movepage-action-check' )
+ ->setWrapperLegendMsg( 'pt-movepage-legend' )
+ ->prepareForm()
+ ->displayForm( false );
}
/**
* Shortcut for keeping the code at least a bit readable. Adds label and
* input into $form array.
*
- * @param string[] $form Array where input element and label is appended.
+ * @param string[] &$form Array where input element and label is appended.
* @param string $label Label text.
* @param string $name Name attribute.
* @param bool|int $size Size attribute of the input element. Default false.
@@ -264,7 +267,7 @@ class SpecialPageTranslationMovePage extends TranslateSpecialPage {
* @param array $attribs Extra attributes. Default empty array.
*/
protected function addInputLabel( &$form, $label, $name, $size = false, $text = false,
- $attribs = array()
+ array $attribs = []
) {
$br = Html::element( 'br' );
list( $label, $input ) = Xml::inputLabelSep(
@@ -292,17 +295,17 @@ class SpecialPageTranslationMovePage extends TranslateSpecialPage {
$target = $this->newTitle;
$count = 0;
- $types = array(
- 'pt-movepage-list-pages' => array( $this->oldTitle ),
+ $types = [
+ 'pt-movepage-list-pages' => [ $this->oldTitle ],
'pt-movepage-list-translation' => $this->getTranslationPages(),
'pt-movepage-list-section' => $this->getSectionPages(),
'pt-movepage-list-other' => $this->getSubpages(),
- );
+ ];
foreach ( $types as $type => $pages ) {
- $out->wrapWikiMsg( '=== $1 ===', array( $type, count( $pages ) ) );
+ $out->wrapWikiMsg( '=== $1 ===', [ $type, count( $pages ) ] );
- $lines = array();
+ $lines = [];
foreach ( $pages as $old ) {
$toBeMoved = true;
@@ -322,21 +325,21 @@ class SpecialPageTranslationMovePage extends TranslateSpecialPage {
$lines[] = $this->getChangeLine( $base, $old, $target, $toBeMoved );
}
- $out->addWikiText( implode( "\n", $lines ) );
+ TranslateUtils::addWikiTextAsInterface( $out, implode( "\n", $lines ) );
}
- $out->addWikiText( "----\n" );
+ TranslateUtils::addWikiTextAsInterface( $out, "----\n" );
$out->addWikiMsg( 'pt-movepage-list-count', $this->getLanguage()->formatNum( $count ) );
$br = Html::element( 'br' );
- $readonly = array( 'readonly' => 'readonly' );
- $subaction = array( 'name' => 'subaction' );
- $formParams = array(
+ $readonly = [ 'readonly' => 'readonly' ];
+ $subaction = [ 'name' => 'subaction' ];
+ $formParams = [
'method' => 'post',
- 'action' => $this->getTitle( $this->oldText )->getLocalURL()
- );
+ 'action' => $this->getPageTitle( $this->oldText )->getLocalURL()
+ ];
- $form = array();
+ $form = [];
$form[] = Xml::fieldset( $this->msg( 'pt-movepage-legend' )->text() );
$form[] = Html::openElement( 'form', $formParams );
$form[] = Html::hidden( 'wpEditToken', $this->getUser()->getEditToken() );
@@ -396,131 +399,57 @@ class SpecialPageTranslationMovePage extends TranslateSpecialPage {
}
protected function performAction() {
- $jobs = array();
- $user = $this->getUser();
$target = $this->newTitle;
$base = $this->oldTitle->getPrefixedText();
- $oldLatest = $this->oldTitle->getLatestRevId();
- $params = array(
- 'base-source' => $this->oldTitle->getPrefixedText(),
- 'base-target' => $this->newTitle->getPrefixedText(),
- );
+ $moves = [];
+ $moves[$base] = $target->getPrefixedText();
- $translationPages = $this->getTranslationPages();
- foreach ( $translationPages as $old ) {
- $to = $this->newPageTitle( $base, $old, $target );
- $jobs[$old->getPrefixedText()] = TranslateMoveJob::newJob( $old, $to, $params, $user );
+ foreach ( $this->getTranslationPages() as $from ) {
+ $to = $this->newPageTitle( $base, $from, $target );
+ $moves[$from->getPrefixedText()] = $to->getPrefixedText();
}
- $sectionPages = $this->getSectionPages();
- foreach ( $sectionPages as $old ) {
- $to = $this->newPageTitle( $base, $old, $target );
- $jobs[$old->getPrefixedText()] = TranslateMoveJob::newJob( $old, $to, $params, $user );
+ foreach ( $this->getSectionPages() as $from ) {
+ $to = $this->newPageTitle( $base, $from, $target );
+ $moves[$from->getPrefixedText()] = $to->getPrefixedText();
}
if ( $this->moveSubpages ) {
$subpages = $this->getSubpages();
- foreach ( $subpages as $old ) {
- if ( TranslatablePage::isTranslationPage( $old ) ) {
+ foreach ( $subpages as $from ) {
+ if ( TranslatablePage::isTranslationPage( $from ) ) {
continue;
}
- $to = $this->newPageTitle( $base, $old, $target );
- $jobs[$old->getPrefixedText()] = TranslateMoveJob::newJob(
- $old,
- $to,
- $params,
- $user
- );
+ $to = $this->newPageTitle( $base, $from, $target );
+ $moves[$from->getPrefixedText()] = $to->getPrefixedText();
}
}
- // This is used by TranslateMoveJob
- wfGetCache( CACHE_ANYTHING )->set( wfMemcKey( 'translate-pt-move', $base ), count( $jobs ) );
- JobQueueGroup::singleton()->push( $jobs );
-
- TranslateMoveJob::forceRedirects( false );
-
- $errors = $this->oldTitle->moveTo( $this->newTitle, true, $this->reason, false );
- if ( is_array( $errors ) ) {
- $this->showErrors( $errors );
- }
-
- TranslateMoveJob::forceRedirects( true );
-
- $newTpage = TranslatablePage::newFromTitle( $this->newTitle );
- $newTpage->addReadyTag( $this->newTitle->getLatestRevId( Title::GAID_FOR_UPDATE ) );
-
- if ( $newTpage->getMarkedTag() === $oldLatest ) {
- $newTpage->addMarkedTag( $this->newTitle->getLatestRevId( Title::GAID_FOR_UPDATE ) );
- }
-
- // remove the entries from metadata table.
- $oldGroupId = $this->page->getMessageGroupId();
- $newGroupId = $newTpage->getMessageGroupId();
- $this->moveMetadata( $oldGroupId, $newGroupId );
+ $summary = $this->msg( 'pt-movepage-logreason', $base )->inContentLanguage()->text();
+ $job = TranslatablePageMoveJob::newJob(
+ $this->oldTitle, $this->newTitle, $moves, $summary, $this->getUser()
+ );
- MessageGroups::clearCache();
- MessageIndexRebuildJob::newJob()->insert();
+ JobQueueGroup::singleton()->push( $job );
$this->getOutput()->addWikiMsg( 'pt-movepage-started' );
}
- protected function moveMetadata( $oldGroupId, $newGroupId ) {
- $prioritylangs = TranslateMetadata::get( $oldGroupId, 'prioritylangs' );
- $priorityforce = TranslateMetadata::get( $oldGroupId, 'priorityforce' );
- $priorityreason = TranslateMetadata::get( $oldGroupId, 'priorityreason' );
- TranslateMetadata::set( $oldGroupId, 'prioritylangs', false );
- TranslateMetadata::set( $oldGroupId, 'priorityforce', false );
- TranslateMetadata::set( $oldGroupId, 'priorityreason', false );
- if ( $prioritylangs ) {
- TranslateMetadata::set( $newGroupId, 'prioritylangs', $prioritylangs );
- }
- if ( $priorityforce ) {
- TranslateMetadata::set( $newGroupId, 'priorityforce', $priorityforce );
- }
- if ( $priorityreason !== false ) {
- TranslateMetadata::set( $newGroupId, 'priorityreason', $priorityreason );
- }
- // make the changes in aggregate groups metadata, if present in any of them.
- $groups = MessageGroups::getAllGroups();
- foreach ( $groups as $group ) {
- if ( $group instanceof AggregateMessageGroup ) {
- $subgroups = TranslateMetadata::get( $group->getId(), 'subgroups' );
- if ( $subgroups !== false ) {
- $subgroups = explode( ',', $subgroups );
- $subgroups = array_flip( $subgroups );
- if ( isset( $subgroups[$oldGroupId] ) ) {
- $subgroups[$newGroupId] = $subgroups[$oldGroupId];
- unset( $subgroups[$oldGroupId] );
- $subgroups = array_flip( $subgroups );
- TranslateMetadata::set(
- $group->getId(),
- 'subgroups',
- implode( ',', $subgroups )
- );
- }
- }
- }
- }
- }
-
protected function checkMoveBlockers() {
- $blockers = array();
+ $blockers = [];
$target = $this->newTitle;
if ( !$target ) {
- $blockers[] = array( 'pt-movepage-block-base-invalid' );
+ $blockers[] = [ 'pt-movepage-block-base-invalid' ];
return $blockers;
}
- if ( $target->getNamespace() == NS_MEDIAWIKI ||
- $target->getNamespace() == NS_TRANSLATIONS
- ) {
- $blockers[] = array( 'immobile-target-namespace', $target->getNsText() );
+ if ( $target->inNamespaces( NS_MEDIAWIKI, NS_TRANSLATIONS ) ) {
+ $blockers[] = [ 'immobile-target-namespace', $target->getNsText() ];
return $blockers;
}
@@ -528,7 +457,7 @@ class SpecialPageTranslationMovePage extends TranslateSpecialPage {
$base = $this->oldTitle->getPrefixedText();
if ( $target->exists() ) {
- $blockers[] = array( 'pt-movepage-block-base-exists', $target->getPrefixedText() );
+ $blockers[] = [ 'pt-movepage-block-base-exists', $target->getPrefixedText() ];
} else {
$errors = $this->oldTitle->isValidMoveOperation( $target, true, $this->reason );
if ( is_array( $errors ) ) {
@@ -542,25 +471,25 @@ class SpecialPageTranslationMovePage extends TranslateSpecialPage {
}
// Collect all the old and new titles for checcks
- $titles = array();
+ $titles = [];
$pages = $this->getTranslationPages();
foreach ( $pages as $old ) {
- $titles['tp'][] = array( $old, $this->newPageTitle( $base, $old, $target ) );
+ $titles['tp'][] = [ $old, $this->newPageTitle( $base, $old, $target ) ];
}
$pages = $this->getSectionPages();
foreach ( $pages as $old ) {
- $titles['section'][] = array( $old, $this->newPageTitle( $base, $old, $target ) );
+ $titles['section'][] = [ $old, $this->newPageTitle( $base, $old, $target ) ];
}
- $subpages = array();
+ $subpages = [];
if ( $this->moveSubpages ) {
$subpages = $this->getSubpages();
}
foreach ( $subpages as $old ) {
if ( !TranslatablePage::isTranslationPage( $old ) ) {
- $titles['subpage'][] = array( $old, $this->newPageTitle( $base, $old, $target ) );
+ $titles['subpage'][] = [ $old, $this->newPageTitle( $base, $old, $target ) ];
}
}
@@ -573,10 +502,10 @@ class SpecialPageTranslationMovePage extends TranslateSpecialPage {
foreach ( $list as $pair ) {
list( $old, $new ) = $pair;
if ( $new === null ) {
- $blockers[] = array(
+ $blockers[] = [
"pt-movepage-block-$type-invalid",
$old->getPrefixedText()
- );
+ ];
continue;
}
$lb->addObj( $old );
@@ -597,11 +526,11 @@ class SpecialPageTranslationMovePage extends TranslateSpecialPage {
foreach ( $list as $pair ) {
list( $old, $new ) = $pair;
if ( $new->exists() ) {
- $blockers[] = array(
+ $blockers[] = [
"pt-movepage-block-$type-exists",
$old->getPrefixedText(),
$new->getPrefixedText()
- );
+ ];
} else {
/* This method has terrible performance:
* - 2 queries by core
@@ -635,7 +564,7 @@ class SpecialPageTranslationMovePage extends TranslateSpecialPage {
protected function newPageTitle( $base, Title $old, Title $target ) {
$search = preg_quote( $base, '~' );
- if ( $old->getNamespace() == NS_TRANSLATIONS ) {
+ if ( $old->inNamespace( NS_TRANSLATIONS ) ) {
$new = $old->getText();
$new = preg_replace( "~^$search~", $target->getPrefixedText(), $new, 1 );
@@ -650,7 +579,7 @@ class SpecialPageTranslationMovePage extends TranslateSpecialPage {
/**
* Returns all section pages, including those which are currently not active.
- * @return TitleArray.
+ * @return TitleArray
*/
protected function getSectionPages() {
if ( !isset( $this->sectionPages ) ) {
diff --git a/MLEB/Translate/tag/TPException.php b/MLEB/Translate/tag/TPException.php
index d4a5cfcd..b01682d6 100644
--- a/MLEB/Translate/tag/TPException.php
+++ b/MLEB/Translate/tag/TPException.php
@@ -5,7 +5,7 @@
* @file
* @author Niklas Laxström
* @copyright Copyright © 2009-2013 Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -14,7 +14,7 @@
* @ingroup PageTranslation
*/
class TPException extends MWException {
- protected $msg = null;
+ protected $msg;
/**
* @todo Pass around Messages when Status class doesn't suck
diff --git a/MLEB/Translate/tag/TPParse.php b/MLEB/Translate/tag/TPParse.php
index cee3d533..9e1b32bc 100644
--- a/MLEB/Translate/tag/TPParse.php
+++ b/MLEB/Translate/tag/TPParse.php
@@ -5,7 +5,7 @@
* @file
* @author Niklas Laxström
* @copyright Copyright © 2009-2013 Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -15,14 +15,14 @@
* @ingroup PageTranslation
*/
class TPParse {
- /// \type{Title} Title of the page.
- protected $title = null;
+ /** @var Title Title of the page. */
+ protected $title;
- /** \arrayof{String,TPSection} Parsed sections indexed with placeholder.
+ /** @var TPSection[] Parsed sections indexed with placeholder.
* @todo Encapsulate
*/
- public $sections = array();
- /** \string Page source with content replaced with placeholders.
+ public $sections = [];
+ /** @var string Page source with content replaced with placeholders.
* @todo Encapsulate
*/
public $template = null;
@@ -38,7 +38,7 @@ class TPParse {
/**
* Returns the number of sections in this page.
- * @return \int
+ * @return int
*/
public function countSections() {
return count( $this->sections );
@@ -47,7 +47,7 @@ class TPParse {
/**
* Returns the page template where translatable content is replaced with
* placeholders.
- * @return \string
+ * @return string
*/
public function getTemplate() {
return $this->template;
@@ -57,7 +57,7 @@ class TPParse {
* Returns the page template where the ugly placeholders are replaced with
* section markers. Sections which previously had no number will get one
* assigned now.
- * @return \string
+ * @return string
*/
public function getTemplatePretty() {
$text = $this->template;
@@ -72,18 +72,18 @@ class TPParse {
/**
* Gets the sections and assigns section id for new sections
* @param int $highest The largest used integer id (Since 2012-08-02)
- * @return array array( string => TPSection, ... )
+ * @return TPSection[] array( string => TPSection, ... )
*/
public function getSectionsForSave( $highest = 0 ) {
$this->loadFromDatabase();
$sections = $this->sections;
foreach ( array_keys( $this->dbSections ) as $key ) {
- $highest = max( $highest, intval( $key ) );
+ $highest = max( $highest, (int)$key );
}
foreach ( $sections as $_ ) {
- $highest = max( $highest, intval( $_->id ) );
+ $highest = max( $highest, (int)$_->id );
}
foreach ( $sections as $s ) {
@@ -108,7 +108,7 @@ class TPParse {
/**
* Returns list of deleted sections.
- * @return array List of sections indexed by id. array( string => TPsection, ... )
+ * @return TPSection[] List of sections indexed by id. array( string => TPsection, ... )
*/
public function getDeletedSections() {
$sections = $this->getSectionsForSave();
@@ -131,12 +131,12 @@ class TPParse {
return;
}
- $this->dbSections = array();
+ $this->dbSections = [];
- $db = wfGetDB( DB_MASTER );
+ $db = TranslateUtils::getSafeReadDB();
$tables = 'translate_sections';
- $vars = array( 'trs_key', 'trs_text' );
- $conds = array( 'trs_page' => $this->title->getArticleID() );
+ $vars = [ 'trs_key', 'trs_text' ];
+ $conds = [ 'trs_page' => $this->title->getArticleID() ];
$res = $db->select( $tables, $vars, $conds, __METHOD__ );
foreach ( $res as $r ) {
@@ -164,32 +164,51 @@ class TPParse {
}
/**
- * Returns translation page with all possible translations replaced in
- * and ugly translation tags removed.
+ * Returns translation page with all possible translations replaced in, ugly
+ * translation tags removed and outdated translation marked with a class
+ * mw-translate-fuzzy.
*
* @param MessageCollection $collection Collection that holds translated messages.
+ * @param bool $showOutdated Whether to show outdated sections, wrapped in a HTML class.
* @return string Whole page as wikitext.
*/
- public function getTranslationPageText( $collection ) {
+ public function getTranslationPageText( $collection, $showOutdated = false ) {
$text = $this->template; // The source
// For finding the messages
- $prefix = $this->title->getPrefixedDBKey() . '/';
+ $prefix = $this->title->getPrefixedDBkey() . '/';
if ( $collection instanceof MessageCollection ) {
- $collection->loadTranslations( DB_MASTER );
- $collection->filter( 'translated', false );
+ $collection->loadTranslations();
+ if ( $showOutdated ) {
+ $collection->filter( 'hastranslation', false );
+ } else {
+ $collection->filter( 'translated', false );
+ }
}
foreach ( $this->sections as $ph => $s ) {
$sectiontext = null;
if ( isset( $collection[$prefix . $s->id] ) ) {
- /**
- * @var TMessage $msg
- */
+ /** @var TMessage $msg */
$msg = $collection[$prefix . $s->id];
+ /** @var string|null */
$sectiontext = $msg->translation();
+
+ // If translation is fuzzy, $sectiontext must be a string
+ if ( $msg->hasTag( 'fuzzy' ) ) {
+ // We do not ever want to show explicit fuzzy marks in the rendered pages
+ $sectiontext = str_replace( TRANSLATE_FUZZY, '', $sectiontext );
+
+ if ( $s->isInline() ) {
+ $sectiontext = "<span class=\"mw-translate-fuzzy\">$sectiontext</span>";
+ } else {
+ // We add new lines around the text to avoid disturbing any mark-up that
+ // has special handling on line start, such as lists.
+ $sectiontext = "<div class=\"mw-translate-fuzzy\">\n$sectiontext\n</div>";
+ }
+ }
}
// Use the original text if no translation is available.
@@ -208,11 +227,11 @@ class TPParse {
$text = str_replace( $ph, $sectiontext, $text );
}
- $nph = array();
+ $nph = [];
$text = TranslatablePage::armourNowiki( $nph, $text );
// Remove translation markup from the template to produce final text
- $cb = array( __CLASS__, 'replaceTagCb' );
+ $cb = [ __CLASS__, 'replaceTagCb' ];
$text = preg_replace_callback( '~(<translate>)(.*)(</translate>)~sU', $cb, $text );
$text = TranslatablePage::unArmourNowiki( $nph, $text );
@@ -222,7 +241,7 @@ class TPParse {
/**
* Chops of trailing or preceeding whitespace intelligently to avoid
* build up of unintented whitespace.
- * @param array $matches
+ * @param string[] $matches
* @return string
*/
protected static function replaceTagCb( $matches ) {
diff --git a/MLEB/Translate/tag/TPSection.php b/MLEB/Translate/tag/TPSection.php
index d662fb3d..f63f6db4 100644
--- a/MLEB/Translate/tag/TPSection.php
+++ b/MLEB/Translate/tag/TPSection.php
@@ -4,8 +4,7 @@
*
* @file
* @author Niklas Laxström
- * @copyright Copyright © 2009-2013 Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -14,18 +13,56 @@
* @ingroup PageTranslation
*/
class TPSection {
- /// @var string Section name
+ /**
+ * @var string Section name
+ */
public $id;
- /// @var string New name of the section, that will be saved to database.
+
+ /**
+ * @var string New name of the section, that will be saved to database.
+ */
public $name;
- /// @var string Section text.
+
+ /**
+ * @var string Section text.
+ */
public $text;
- /// @var string Is this new, existing, changed or deleted section.
+
+ /**
+ * @var string Is this new, existing, changed or deleted section.
+ */
public $type;
- /// @var string Text of previous version of this section.
+
+ /**
+ * @var string Text of previous version of this section.
+ */
public $oldText;
/**
+ * @var bool Whether this section is inline section.
+ * E.g. "Something <translate>foo</translate> bar".
+ */
+ protected $inline = false;
+
+ /**
+ * @var int Version number for the serialization.
+ */
+ private $version = 1;
+
+ /**
+ * @var string[] List of properties to serialize.
+ */
+ private static $properties = [ 'version', 'id', 'name', 'text', 'type', 'oldText', 'inline' ];
+
+ public function setIsInline( $value ) {
+ $this->inline = (bool)$value;
+ }
+
+ public function isInline() {
+ return $this->inline;
+ }
+
+ /**
* Returns section text unmodified.
* @return string Wikitext.
*/
@@ -39,7 +76,7 @@ class TPSection {
* @since 2014.07
*/
public function getTextWithVariables() {
- $re = '~<tvar\|([^>]+)>(.*?)</>~u';
+ $re = '~<tvar\|([^>]+)>(.*?)</>~us';
return preg_replace( $re, '$\1', $this->text );
}
@@ -49,13 +86,14 @@ class TPSection {
* @return string Wikitext.
*/
public function getTextForTrans() {
- $re = '~<tvar\|([^>]+)>(.*?)</>~u';
+ $re = '~<tvar\|([^>]+)>(.*?)</>~us';
return preg_replace( $re, '\2', $this->text );
}
/**
* Returns the section text with updated or added section marker.
+ *
* @return string Wikitext.
*/
public function getMarkedText() {
@@ -68,7 +106,11 @@ class TPSection {
$text = preg_replace( $re, $rep, $this->text, 1, $count );
if ( $count === 0 ) {
- $text = $header . "\n" . $this->text;
+ if ( $this->inline ) {
+ $text = $header . ' ' . $this->text;
+ } else {
+ $text = $header . "\n" . $this->text;
+ }
}
return $text;
@@ -88,10 +130,10 @@ class TPSection {
* prefixed with a dollar sign.
*/
public function getVariables() {
- $re = '~<tvar\|([^>]+)>(.*?)</>~u';
- $matches = array();
+ $re = '~<tvar\|([^>]+)>(.*?)</>~us';
+ $matches = [];
preg_match_all( $re, $this->text, $matches, PREG_SET_ORDER );
- $vars = array();
+ $vars = [];
foreach ( $matches as $m ) {
$vars['$' . $m[1]] = $m[2];
@@ -99,4 +141,35 @@ class TPSection {
return $vars;
}
+
+ /**
+ * Serialize this object to a PHP array.
+ * @return array
+ * @since 2018.07
+ */
+ public function serializeToArray() {
+ $data = [];
+ foreach ( self::$properties as $index => $property ) {
+ // Because this is used for the JobQueue, use a list
+ // instead of an array to save space.
+ $data[ $index ] = $this->$property;
+ }
+
+ return $data;
+ }
+
+ /**
+ * Construct an object from previously serialized array.
+ * @param array $data
+ * @return TPSection
+ * @since 2018.07
+ */
+ public static function unserializeFromArray( $data ) {
+ $section = new self;
+ foreach ( self::$properties as $index => $property ) {
+ $section->$property = $data[ $index ];
+ }
+
+ return $section;
+ }
}
diff --git a/MLEB/Translate/tag/TranslatablePage.php b/MLEB/Translate/tag/TranslatablePage.php
index 97e14315..21b06a5f 100644
--- a/MLEB/Translate/tag/TranslatablePage.php
+++ b/MLEB/Translate/tag/TranslatablePage.php
@@ -4,9 +4,11 @@
*
* @file
* @author Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
+use Wikimedia\Rdbms\Database;
+
/**
* Class to parse translatable wiki pages.
*
@@ -16,25 +18,25 @@ class TranslatablePage {
/**
* Title of the page.
*/
- protected $title = null;
+ protected $title;
/**
* Text contents of the page.
*/
- protected $text = null;
+ protected $text;
/**
* Revision of the page, if applicaple.
*
* @var int
*/
- protected $revision = null;
+ protected $revision;
/**
* From which source this object was constructed.
* Can be: text, revision, title
*/
- protected $source = null;
+ protected $source;
/**
* Whether the page contents is already loaded.
@@ -50,7 +52,7 @@ class TranslatablePage {
* Whether the title should be translated
* @var bool
*/
- protected $pageDisplayTitle = null;
+ protected $pageDisplayTitle;
protected $cachedParse;
@@ -87,7 +89,7 @@ class TranslatablePage {
* behavior will happen.
*
* @param Title $title
- * @param integer $revision Revision number
+ * @param int $revision Revision number
* @throws MWException
* @return TranslatablePage
*/
@@ -138,9 +140,9 @@ class TranslatablePage {
switch ( $this->source ) {
case 'text':
break;
+ /** @noinspection PhpMissingBreakStatementInspection */
case 'title':
$this->revision = $this->getMarkedTag();
- // There is no break statement here on purpose
case 'revision':
$rev = Revision::newFromTitle( $this->getTitle(), $this->revision );
$this->text = ContentHandler::getContentText( $rev->getContent() );
@@ -159,7 +161,7 @@ class TranslatablePage {
/**
* Revision is null if object was constructed using newFromText.
- * @return null or integer
+ * @return null|int
*/
public function getRevision() {
return $this->revision;
@@ -167,7 +169,7 @@ class TranslatablePage {
/**
* Manually set a revision number to use loading page text.
- * @param integer $revision
+ * @param int $revision
*/
public function setRevision( $revision ) {
$this->revision = $revision;
@@ -216,7 +218,7 @@ class TranslatablePage {
/**
* Check whether title is marked for translation
* @return bool
- * @return 2014.06
+ * @since 2014.06
*/
public function hasPageDisplayTitle() {
// Cached value
@@ -248,7 +250,7 @@ class TranslatablePage {
// Display title from DB
$section = str_replace( ' ', '_', $this->displayTitle );
- $page = $this->getTitle()->getPrefixedDBKey();
+ $page = $this->getTitle()->getPrefixedDBkey();
$group = $this->getMessageGroup();
// Sanity check, seems to happen during moves
@@ -256,7 +258,7 @@ class TranslatablePage {
return null;
}
- return $group->getMessage( "$page/$section", $code );
+ return $group->getMessage( "$page/$section", $code, $group::READ_NORMAL );
}
/**
@@ -272,10 +274,10 @@ class TranslatablePage {
$text = $this->getText();
- $nowiki = array();
+ $nowiki = [];
$text = self::armourNowiki( $nowiki, $text );
- $sections = array();
+ $sections = [];
// Add section to allow translating the page name
$displaytitle = new TPSection;
@@ -283,11 +285,11 @@ class TranslatablePage {
$displaytitle->text = $this->getTitle()->getPrefixedText();
$sections[TranslateUtils::getPlaceholder()] = $displaytitle;
- $tagPlaceHolders = array();
+ $tagPlaceHolders = [];
while ( true ) {
- $re = '~(<translate>)\s*(.*?)(</translate>)~s';
- $matches = array();
+ $re = '~(<translate>)(.*?)(</translate>)~s';
+ $matches = [];
$ok = preg_match_all( $re, $text, $matches, PREG_OFFSET_CAPTURE );
if ( $ok === 0 ) {
@@ -311,15 +313,16 @@ class TranslatablePage {
$sectiontext = substr( $contents, $start, $len );
if ( strpos( $sectiontext, '<translate>' ) !== false ) {
- throw new TPException( array( 'pt-parse-nested', $sectiontext ) );
+ throw new TPException( [ 'pt-parse-nested', $sectiontext ] );
}
$sectiontext = self::unArmourNowiki( $nowiki, $sectiontext );
- $ret = $this->sectionise( $sections, $sectiontext );
+ $parse = self::sectionise( $sectiontext );
+ $sections += $parse['sections'];
$tagPlaceHolders[$ph] =
- self::index_replace( $contents, $ret, $start, $end );
+ self::index_replace( $contents, $parse['template'], $start, $end );
}
$prettyTemplate = $text;
@@ -328,9 +331,9 @@ class TranslatablePage {
}
if ( strpos( $text, '<translate>' ) !== false ) {
- throw new TPException( array( 'pt-parse-open', $prettyTemplate ) );
+ throw new TPException( [ 'pt-parse-open', $prettyTemplate ] );
} elseif ( strpos( $text, '</translate>' ) !== false ) {
- throw new TPException( array( 'pt-parse-close', $prettyTemplate ) );
+ throw new TPException( [ 'pt-parse-close', $prettyTemplate ] );
}
foreach ( $tagPlaceHolders as $ph => $value ) {
@@ -339,7 +342,7 @@ class TranslatablePage {
if ( count( $sections ) === 1 ) {
// Don't return display title for pages which have no sections
- $sections = array();
+ $sections = [];
}
$text = self::unArmourNowiki( $nowiki, $text );
@@ -354,10 +357,30 @@ class TranslatablePage {
return $parse;
}
+ /**
+ * Remove all opening and closing translate tags following the same whitespace rules
+ * as the regular parsing. The difference is that this doesn't try to parse the page,
+ * so it can handle unbalanced tags.
+ *
+ * @param string $text Wikitext
+ * @return string Wikitext without translate tags.
+ */
+ public static function cleanupTags( $text ) {
+ $nowiki = [];
+ $text = self::armourNowiki( $nowiki, $text );
+ $text = preg_replace( '~<translate>\n?~s', '', $text );
+ $text = preg_replace( '~\n?</translate>~s', '', $text );
+ // Mirroring what TPSection::getTextForTrans does
+ $text = preg_replace( '~<tvar\|([^>]+)>(.*?)</>~u', '\2', $text );
+
+ $text = self::unArmourNowiki( $nowiki, $text );
+ return $text;
+ }
+
// Inner functionality //
/**
- * @param array $holders
+ * @param array &$holders
* @param string $text
* @return string
*/
@@ -374,7 +397,7 @@ class TranslatablePage {
}
/**
- * @param $holders
+ * @param array $holders
* @param string $text
* @return mixed
*/
@@ -400,27 +423,36 @@ class TranslatablePage {
/**
* Splits the content marked with \<translate> tags into sections, which
* are separated with with two or more newlines. Extra whitespace is captured
- * in the template and not included in the sections.
- * @param array $sections Array of placeholder => TPSection.
+ * in the template and is not included in the sections.
+ *
* @param string $text Contents of one pair of \<translate> tags.
- * @return string Template with placeholders for sections, which itself are added to $sections.
+ * @return array Contains a template and array of unparsed sections.
*/
- protected function sectionise( &$sections, $text ) {
+ public static function sectionise( $text ) {
$flags = PREG_SPLIT_NO_EMPTY | PREG_SPLIT_DELIM_CAPTURE;
- $parts = preg_split( '~(\s*\n\n\s*|\s*$)~', $text, -1, $flags );
+ $parts = preg_split( '~(^\s*|\s*\n\n\s*|\s*$)~', $text, -1, $flags );
+
+ $inline = preg_match( '~\n~', $text ) === 0;
$template = '';
+ $sections = [];
+
foreach ( $parts as $_ ) {
if ( trim( $_ ) === '' ) {
$template .= $_;
} else {
$ph = TranslateUtils::getPlaceholder();
- $sections[$ph] = $this->shakeSection( $_ );
+ $tpsection = self::shakeSection( $_ );
+ $tpsection->setIsInline( $inline );
+ $sections[$ph] = $tpsection;
$template .= $ph;
}
}
- return $template;
+ return [
+ 'template' => $template,
+ 'sections' => $sections,
+ ];
}
/**
@@ -435,13 +467,13 @@ class TranslatablePage {
* @throws TPException
* @return TPSection
*/
- protected function shakeSection( $content ) {
+ public static function shakeSection( $content ) {
$re = '~<!--T:(.*?)-->~';
- $matches = array();
+ $matches = [];
$count = preg_match_all( $re, $content, $matches, PREG_SET_ORDER );
if ( $count > 1 ) {
- throw new TPException( array( 'pt-shake-multiple', $content ) );
+ throw new TPException( [ 'pt-shake-multiple', $content ] );
}
$section = new TPSection;
@@ -452,15 +484,15 @@ class TranslatablePage {
// Currently handle only these two standard places.
// Is this too strict?
- $rer1 = '~^<!--T:(.*?)-->\n~'; // Normal sections
+ $rer1 = '~^<!--T:(.*?)-->( |\n)~'; // Normal sections
$rer2 = '~\s*<!--T:(.*?)-->$~m'; // Sections with title
$content = preg_replace( $rer1, '', $content );
$content = preg_replace( $rer2, '', $content );
if ( preg_match( $re, $content ) === 1 ) {
- throw new TPException( array( 'pt-shake-position', $content ) );
+ throw new TPException( [ 'pt-shake-position', $content ] );
} elseif ( trim( $content ) === '' ) {
- throw new TPException( array( 'pt-shake-empty', $id ) );
+ throw new TPException( [ 'pt-shake-empty', $id ] );
}
}
} else {
@@ -475,23 +507,22 @@ class TranslatablePage {
// Tag methods //
- protected static $tagCache = array();
+ protected static $tagCache = [];
/**
* Adds a tag which indicates that this page is
* suitable for translation.
- * @param integer $revision
+ * @param int $revision
* @param null|string $value
*/
public function addMarkedTag( $revision, $value = null ) {
$this->addTag( 'tp:mark', $revision, $value );
- MessageGroups::clearCache();
}
/**
* Adds a tag which indicates that this page source is
* ready for marking for translation.
- * @param integer $revision
+ * @param int $revision
*/
public function addReadyTag( $revision ) {
$this->addTag( 'tp:tag', $revision );
@@ -500,7 +531,7 @@ class TranslatablePage {
/**
* @param string $tag Tag name
* @param int $revision Revision ID to add tag for
- * @param mixed $value Optional. Value to be stored as serialized with | as separator
+ * @param mixed|null $value Optional. Value to be stored as serialized with | as separator
* @throws MWException
*/
protected function addTag( $tag, $revision, $value = null ) {
@@ -512,11 +543,11 @@ class TranslatablePage {
throw new MWException( 'Got object, expected id' );
}
- $conds = array(
+ $conds = [
'rt_page' => $aid,
'rt_type' => RevTag::getType( $tag ),
'rt_revision' => $revision
- );
+ ];
$dbw->delete( 'revtag', $conds, __METHOD__ );
if ( $value !== null ) {
@@ -530,7 +561,7 @@ class TranslatablePage {
/**
* Returns the latest revision which has marked tag, if any.
- * @return integer|bool false
+ * @return int|bool false
*/
public function getMarkedTag() {
return $this->getTag( 'tp:mark' );
@@ -552,51 +583,47 @@ class TranslatablePage {
$aid = $this->getTitle()->getArticleID();
$dbw = wfGetDB( DB_MASTER );
- $conds = array(
+ $conds = [
'rt_page' => $aid,
- 'rt_type' => array(
+ 'rt_type' => [
RevTag::getType( 'tp:mark' ),
RevTag::getType( 'tp:tag' ),
- ),
- );
+ ],
+ ];
$dbw->delete( 'revtag', $conds, __METHOD__ );
- $dbw->delete( 'translate_sections', array( 'trs_page' => $aid ), __METHOD__ );
+ $dbw->delete( 'translate_sections', [ 'trs_page' => $aid ], __METHOD__ );
unset( self::$tagCache[$aid] );
}
/**
- * @param $tag
+ * @param string $tag
* @param int $dbt
- * @return array|bool False if tag is not found
+ * @return int|bool False if tag is not found, else revision id
*/
- protected function getTag( $tag, $dbt = DB_SLAVE ) {
+ protected function getTag( $tag, $dbt = DB_REPLICA ) {
if ( !$this->getTitle()->exists() ) {
return false;
}
$aid = $this->getTitle()->getArticleID();
+ // ATTENTION: Cache should only be updated on POST requests.
if ( isset( self::$tagCache[$aid][$tag] ) ) {
return self::$tagCache[$aid][$tag];
}
$db = wfGetDB( $dbt );
- $conds = array(
+ $conds = [
'rt_page' => $aid,
'rt_type' => RevTag::getType( $tag ),
- );
+ ];
- $options = array( 'ORDER BY' => 'rt_revision DESC' );
+ $options = [ 'ORDER BY' => 'rt_revision DESC' ];
- // Tag values are not stored, only the associated revision
- $tagRevision = $db->selectField( 'revtag', 'rt_revision', $conds, __METHOD__, $options );
- if ( $tagRevision !== false ) {
- return self::$tagCache[$aid][$tag] = intval( $tagRevision );
- } else {
- return self::$tagCache[$aid][$tag] = false;
- }
+ $value = $db->selectField( 'revtag', 'rt_revision', $conds, __METHOD__, $options );
+ return $value === false ? $value : (int)$value;
}
/**
@@ -605,12 +632,12 @@ class TranslatablePage {
* @return string Relative url
*/
public function getTranslationUrl( $code = false ) {
- $params = array(
+ $params = [
'group' => $this->getMessageGroupId(),
'action' => 'page',
'filter' => '',
'language' => $code,
- );
+ ];
$translate = SpecialPage::getTitleFor( 'Translate' );
@@ -618,15 +645,14 @@ class TranslatablePage {
}
public function getMarkedRevs() {
- // Avoid replication lag issues
- $db = wfGetDB( DB_MASTER );
+ $db = TranslateUtils::getSafeReadDB();
- $fields = array( 'rt_revision', 'rt_value' );
- $conds = array(
+ $fields = [ 'rt_revision', 'rt_value' ];
+ $conds = [
'rt_page' => $this->getTitle()->getArticleID(),
'rt_type' => RevTag::getType( 'tp:mark' ),
- );
- $options = array( 'ORDER BY' => 'rt_revision DESC' );
+ ];
+ $options = [ 'ORDER BY' => 'rt_revision DESC' ];
return $db->select( 'revtag', $fields, $conds, __METHOD__, $options );
}
@@ -636,22 +662,22 @@ class TranslatablePage {
* @return Title[]
*/
public function getTranslationPages() {
- // Avoid replication lag issues
- $dbr = wfGetDB( DB_MASTER );
+ $dbr = TranslateUtils::getSafeReadDB();
+
$prefix = $this->getTitle()->getDBkey() . '/';
$likePattern = $dbr->buildLike( $prefix, $dbr->anyString() );
$res = $dbr->select(
'page',
- array( 'page_namespace', 'page_title' ),
- array(
+ [ 'page_namespace', 'page_title' ],
+ [
'page_namespace' => $this->getTitle()->getNamespace(),
"page_title $likePattern"
- ),
+ ],
__METHOD__
);
$titles = TitleArray::newFromResult( $res );
- $filtered = array();
+ $filtered = [];
// Make sure we only get translation subpages while ignoring others
$codes = Language::fetchLanguageNames();
@@ -674,11 +700,12 @@ class TranslatablePage {
* @since 2012-08-06
*/
protected function getSections() {
- $dbw = wfGetDB( DB_MASTER );
- $conds = array( 'trs_page' => $this->getTitle()->getArticleID() );
- $res = $dbw->select( 'translate_sections', 'trs_key', $conds, __METHOD__ );
+ $dbr = TranslateUtils::getSafeReadDB();
- $sections = array();
+ $conds = [ 'trs_page' => $this->getTitle()->getArticleID() ];
+ $res = $dbr->select( 'translate_sections', 'trs_key', $conds, __METHOD__ );
+
+ $sections = [];
foreach ( $res as $row ) {
$sections[] = $row->trs_key;
}
@@ -695,7 +722,8 @@ class TranslatablePage {
*/
public function getTranslationUnitPages( $set = 'active', $code = false ) {
$dbw = wfGetDB( DB_MASTER );
- $base = $this->getTitle()->getPrefixedDBKey();
+
+ $base = $this->getTitle()->getPrefixedDBkey();
// Including the / used as separator
$baseLength = strlen( $base ) + 1;
@@ -705,11 +733,11 @@ class TranslatablePage {
$like = $dbw->buildLike( "$base/", $dbw->anyString() );
}
- $fields = array( 'page_namespace', 'page_title' );
- $conds = array(
+ $fields = [ 'page_namespace', 'page_title' ];
+ $conds = [
'page_namespace' => NS_TRANSLATIONS,
'page_title ' . $like
- );
+ ];
$res = $dbw->select( 'page', $fields, $conds, __METHOD__ );
// Only include pages which belong to this translatable page.
@@ -717,7 +745,7 @@ class TranslatablePage {
// translatable. Then when querying for Foo, we also get units
// belonging to Foo/bar.
$sections = array_flip( $this->getSections() );
- $units = array();
+ $units = [];
foreach ( $res as $row ) {
$title = Title::newFromRow( $row );
@@ -750,12 +778,12 @@ class TranslatablePage {
// Calculate percentages for the available translations
$group = $this->getMessageGroup();
if ( !$group instanceof WikiPageMessageGroup ) {
- return array();
+ return [];
}
$titles = $this->getTranslationPages();
$temp = MessageGroupStats::forGroup( $this->getMessageGroupId() );
- $stats = array();
+ $stats = [];
foreach ( $titles as $t ) {
$handle = new MessageHandle( $t );
@@ -781,14 +809,13 @@ class TranslatablePage {
public function getTransRev( $suffix ) {
$title = Title::makeTitle( NS_TRANSLATIONS, $suffix );
- // Avoid replication lag issues
- $db = wfGetDB( DB_MASTER );
+ $db = TranslateUtils::getSafeReadDB();
$fields = 'rt_value';
- $conds = array(
+ $conds = [
'rt_page' => $title->getArticleID(),
'rt_type' => RevTag::getType( 'tp:transver' ),
- );
- $options = array( 'ORDER BY' => 'rt_revision DESC' );
+ ];
+ $options = [ 'ORDER BY' => 'rt_revision DESC' ];
return $db->selectField( 'revtag', $fields, $conds, __METHOD__, $options );
}
@@ -820,7 +847,7 @@ class TranslatablePage {
return false;
}
- $page = TranslatablePage::newFromTitle( $newtitle );
+ $page = self::newFromTitle( $newtitle );
if ( $page->getMarkedTag() === false ) {
return false;
@@ -838,40 +865,42 @@ class TranslatablePage {
* @return bool
*/
public static function isSourcePage( Title $title ) {
- static $cache = null;
-
- $cacheObj = wfGetCache( CACHE_ANYTHING );
- $cacheKey = wfMemcKey( 'pagetranslation', 'sourcepages' );
-
- if ( $cache === null ) {
- $cache = $cacheObj->get( $cacheKey );
- }
- if ( !is_array( $cache ) ) {
- $cache = self::getTranslatablePages();
- $cacheObj->set( $cacheKey, $cache, 60 * 5 );
- }
+ $cache = ObjectCache::getMainWANInstance();
+ $pcTTL = $cache::TTL_PROC_LONG;
+
+ $translatablePageIds = $cache->getWithSetCallback(
+ $cache->makeKey( 'pagetranslation', 'sourcepages' ),
+ $cache::TTL_MINUTE * 5,
+ function ( $oldValue, &$ttl, array &$setOpts ) {
+ $dbr = wfGetDB( DB_REPLICA );
+ $setOpts += Database::getCacheSetOptions( $dbr );
+
+ return TranslatablePage::getTranslatablePages();
+ },
+ [ 'pcTTL' => $pcTTL, 'pcGroup' => __CLASS__ . ':30' ]
+ );
- return in_array( $title->getArticleID(), $cache );
+ return in_array( $title->getArticleID(), $translatablePageIds );
}
/**
* Get a list of page ids where the latest revision is either tagged or marked
+ * @return array
*/
public static function getTranslatablePages() {
- // Avoid replication lag issues
- $dbr = wfGetDB( DB_MASTER );
+ $dbr = TranslateUtils::getSafeReadDB();
- $tables = array( 'revtag', 'page' );
+ $tables = [ 'revtag', 'page' ];
$fields = 'rt_page';
- $conds = array(
+ $conds = [
'rt_page = page_id',
'rt_revision = page_latest',
- 'rt_type' => array( RevTag::getType( 'tp:mark' ), RevTag::getType( 'tp:tag' ) ),
- );
- $options = array( 'GROUP BY' => 'rt_page' );
+ 'rt_type' => [ RevTag::getType( 'tp:mark' ), RevTag::getType( 'tp:tag' ) ],
+ ];
+ $options = [ 'GROUP BY' => 'rt_page' ];
$res = $dbr->select( $tables, $fields, $conds, __METHOD__, $options );
- $results = array();
+ $results = [];
foreach ( $res as $row ) {
$results[] = $row->rt_page;
}
diff --git a/MLEB/Translate/tag/TranslateDeleteJob.php b/MLEB/Translate/tag/TranslateDeleteJob.php
index 177721d0..b994ed7e 100644
--- a/MLEB/Translate/tag/TranslateDeleteJob.php
+++ b/MLEB/Translate/tag/TranslateDeleteJob.php
@@ -5,7 +5,7 @@
* @file
* @author Niklas Laxström
* @copyright Copyright © 2008-2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -15,13 +15,14 @@
*/
class TranslateDeleteJob extends Job {
/**
- * @param $target Title
- * @param $base
- * @param $full
- * @param $performer
+ * @param Title $target
+ * @param string $base
+ * @param string $full
+ * @param User $performer
+ * @param string $reason
* @return TranslateDeleteJob
*/
- public static function newJob( Title $target, $base, $full, /*User*/$performer ) {
+ public static function newJob( Title $target, $base, $full, /*User*/$performer, $reason ) {
$job = new self( $target );
$job->setUser( FuzzyBot::getUser() );
$job->setFull( $full );
@@ -29,15 +30,20 @@ class TranslateDeleteJob extends Job {
$msg = $job->getFull() ? 'pt-deletepage-full-logreason' : 'pt-deletepage-lang-logreason';
$job->setSummary( wfMessage( $msg, $base )->inContentLanguage()->text() );
$job->setPerformer( $performer );
+ $job->setReason( $reason );
return $job;
}
- function __construct( $title, $params = array(), $id = 0 ) {
- parent::__construct( __CLASS__, $title, $params, $id );
+ /**
+ * @param Title $title
+ * @param array $params
+ */
+ public function __construct( $title, $params = [] ) {
+ parent::__construct( __CLASS__, $title, $params );
}
- function run() {
+ public function run() {
// Initialization
$title = $this->title;
// Other stuff
@@ -45,21 +51,25 @@ class TranslateDeleteJob extends Job {
$summary = $this->getSummary();
$base = $this->getBase();
$doer = User::newFromName( $this->getPerformer() );
+ $reason = $this->getReason();
PageTranslationHooks::$allowTargetEdit = true;
+ PageTranslationHooks::$jobQueueRunning = true;
$error = '';
$wikipage = new WikiPage( $title );
- $ok = $wikipage->doDeleteArticle( $summary, false, 0, true, $error, $user );
- if ( !$ok ) {
- $params = array(
+ $status = $wikipage->doDeleteArticleReal( "{$summary}: $reason", false, 0, true, $error,
+ $user, [], 'delete', true );
+ if ( !$status->isGood() ) {
+ $params = [
'target' => $base,
- 'error' => $ok,
- );
+ 'errors' => $status->getErrorsArray(),
+ ];
$type = $this->getFull() ? 'deletefnok' : 'deletelnok';
$entry = new ManualLogEntry( 'pagetranslation', $type );
$entry->setPerformer( $doer );
+ $entry->setComment( $reason );
$entry->setTarget( $title );
$entry->setParameters( $params );
$logid = $entry->insert();
@@ -77,6 +87,7 @@ class TranslateDeleteJob extends Job {
$type = $this->getFull() ? 'deletefok' : 'deletelok';
$entry = new ManualLogEntry( 'pagetranslation', $type );
$entry->setPerformer( $doer );
+ $entry->setComment( $reason );
$entry->setTarget( Title::newFromText( $base ) );
$logid = $entry->insert();
$entry->publish( $logid );
@@ -87,6 +98,7 @@ class TranslateDeleteJob extends Job {
$page->invalidateCache();
}
$title->invalidateCache();
+ PageTranslationHooks::$jobQueueRunning = false;
}
return true;
@@ -100,6 +112,14 @@ class TranslateDeleteJob extends Job {
return $this->params['summary'];
}
+ public function setReason( $reason ) {
+ $this->params['reason'] = $reason;
+ }
+
+ public function getReason() {
+ return $this->params['reason'];
+ }
+
public function setFull( $full ) {
$this->params['full'] = $full;
}
@@ -109,7 +129,7 @@ class TranslateDeleteJob extends Job {
}
/**
- * @param $performer User|string
+ * @param User|string $performer
*/
public function setPerformer( $performer ) {
if ( is_object( $performer ) ) {
@@ -124,7 +144,7 @@ class TranslateDeleteJob extends Job {
}
/**
- * @param $user User|string
+ * @param User|string $user
*/
public function setUser( $user ) {
if ( is_object( $user ) ) {
diff --git a/MLEB/Translate/tag/TranslateMoveJob.php b/MLEB/Translate/tag/TranslateMoveJob.php
index da3035b7..45d8072a 100644
--- a/MLEB/Translate/tag/TranslateMoveJob.php
+++ b/MLEB/Translate/tag/TranslateMoveJob.php
@@ -5,7 +5,7 @@
* @file
* @author Niklas Laxström
* @copyright Copyright © 2008-2010, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -16,10 +16,10 @@
*/
class TranslateMoveJob extends Job {
/**
- * @param $source Title
- * @param $target Title
- * @param $params array, should include base-source and base-target
- * @param $performer
+ * @param Title $source
+ * @param Title $target
+ * @param array $params should include base-source and base-target
+ * @param User $performer
* @return TranslateMoveJob
*/
public static function newJob( Title $source, Title $target, array $params,
@@ -38,11 +38,15 @@ class TranslateMoveJob extends Job {
return $job;
}
- function __construct( $title, $params = array(), $id = 0 ) {
- parent::__construct( __CLASS__, $title, $params, $id );
+ /**
+ * @param Title $title
+ * @param array $params
+ */
+ public function __construct( $title, $params = [] ) {
+ parent::__construct( __CLASS__, $title, $params );
}
- function run() {
+ public function run() {
// Unfortunately the global is needed until bug is fixed:
// https://phabricator.wikimedia.org/T51086
// Once MW >= 1.24 is supported, can use MovePage class.
@@ -66,10 +70,10 @@ class TranslateMoveJob extends Job {
// Don't check perms, don't leave a redirect
$ok = $title->moveTo( $target, false, $summary, false );
if ( !$ok ) {
- $params = array(
+ $params = [
'target' => $target->getPrefixedText(),
'error' => $ok,
- );
+ ];
$entry = new ManualLogEntry( 'pagetranslation', 'movenok' );
$entry->setPerformer( $doer );
@@ -88,14 +92,14 @@ class TranslateMoveJob extends Job {
$key = wfMemcKey( 'translate-pt-move', $base );
$count = $cache->decr( $key );
- $last = strval( $count ) === '0';
+ $last = (string)$count === '0';
if ( $last ) {
$cache->delete( $key );
- $params = array(
+ $params = [
'target' => $this->params['base-target'],
- );
+ ];
$entry = new ManualLogEntry( 'pagetranslation', 'moveok' );
$entry->setPerformer( $doer );
@@ -180,7 +184,7 @@ class TranslateMoveJob extends Job {
/**
* Adapted from wfSuppressWarnings to allow not leaving redirects.
- * @param $end bool
+ * @param bool $end
*/
public static function forceRedirects( $end = false ) {
static $suppressCount = 0;
diff --git a/MLEB/Translate/tag/TranslateRenderJob.php b/MLEB/Translate/tag/TranslateRenderJob.php
index 89736e7e..5927fc8c 100644
--- a/MLEB/Translate/tag/TranslateRenderJob.php
+++ b/MLEB/Translate/tag/TranslateRenderJob.php
@@ -4,7 +4,7 @@
*
* @file
* @author Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -15,7 +15,7 @@
class TranslateRenderJob extends Job {
/**
- * @param $target Title
+ * @param Title $target
* @return TranslateRenderJob
*/
public static function newJob( Title $target ) {
@@ -27,13 +27,19 @@ class TranslateRenderJob extends Job {
return $job;
}
- function __construct( $title, $params = array(), $id = 0 ) {
- parent::__construct( __CLASS__, $title, $params, $id );
+ /**
+ * @param Title $title
+ * @param array $params
+ */
+ public function __construct( $title, $params = [] ) {
+ parent::__construct( __CLASS__, $title, $params );
$this->params = $params;
$this->removeDuplicates = true;
}
- function run() {
+ public function run() {
+ global $wgTranslateKeepOutdatedTranslations;
+
// Initialization
$title = $this->title;
list( , $code ) = TranslateUtils::figureMessage( $title->getPrefixedText() );
@@ -41,15 +47,16 @@ class TranslateRenderJob extends Job {
// Return the actual translation page...
$page = TranslatablePage::isTranslationPage( $title );
if ( !$page ) {
- var_dump( $this->params );
- var_dump( $title );
- throw new MWException( "Oops, this should not happen!" );
+ throw new MWException( "Cannot render translation page for {$title->getPrefixedText()}!" );
}
$group = $page->getMessageGroup();
$collection = $group->initCollection( $code );
- $text = $page->getParse()->getTranslationPageText( $collection );
+ $text = $page->getParse()->getTranslationPageText(
+ $collection,
+ $wgTranslateKeepOutdatedTranslations
+ );
// Other stuff
$user = $this->getUser();
@@ -85,7 +92,7 @@ class TranslateRenderJob extends Job {
}
/**
- * @param $user User|string
+ * @param User|string $user
*/
public function setUser( $user ) {
if ( $user instanceof User ) {
diff --git a/MLEB/Translate/tests/browser/README.md b/MLEB/Translate/tests/browser/README.md
deleted file mode 100644
index 36319498..00000000
--- a/MLEB/Translate/tests/browser/README.md
+++ /dev/null
@@ -1 +0,0 @@
-Please see https://github.com/wikimedia/mediawiki-selenium for instructions on how to run tests.
diff --git a/MLEB/Translate/tests/browser/features/manage_translator_sandbox.feature b/MLEB/Translate/tests/browser/features/manage_translator_sandbox.feature
deleted file mode 100644
index 29d33d82..00000000
--- a/MLEB/Translate/tests/browser/features/manage_translator_sandbox.feature
+++ /dev/null
@@ -1,287 +0,0 @@
-@firefox @login @sandbox.translatewiki.net
-Feature: Manage translator sandbox
-
- As a translation administrator,
- I can review translations submitted by sandboxed users and pass or fail them,
- so that I can promote sandboxed translators to full translators.
-
- Design:
- - http://commons.wikimedia.org/wiki/File:Translate_UX_Onboarding_designs.pdf
-
- These scenarios test the Special:TranslatorSandbox page.
-
- Background:
- Given I am logged in as a translation administrator
- And I have reset my preferences
-
- Scenario: There are no users in the sandbox
- Given I am on the Translator sandbox management page with no users in the sandbox
- Then no users are displayed in the first column
- And I should see "0 requests" at the top of the first column
- And I should see "0 users selected" at the bottom of the first column
- And I should see "No requests from new users" in the header of the second column
- And I should not see the older requests link at the bottom of the first column
-
- Scenario: Existing users can be searched on the list
- Given I am on the Translator sandbox management page with users in the sandbox
- When I search for "pupu" in the sandboxed users search field
- Then only users whose name begins with "pupu" are displayed in the first column
- And I should see "5 requests" at the top of the first column
-
- Scenario: Searching for non-existing users displays no results
- Given I am on the Translator sandbox management page with users in the sandbox
- When I search for "nosuchuser" in the sandboxed users search field
- Then no users are displayed in the first column
- And I should see "0 requests" at the top of the first column
-
- Scenario: Emptying the search field shows all the users
- Given I am on the Translator sandbox management page with users in the sandbox
- When I search for "pupu" in the sandboxed users search field
- And I search for "" in the sandboxed users search field
- Then a user whose name begins with "pupu" is displayed in the first column
- And a user whose name begins with "orava" is displayed in the first column
-
- Scenario: Selecting the last request should make the older requests counter disappear
- Given I am on the Translator sandbox management page with users in the sandbox
- When I click on "Pupu0" in the first column
- Then I should not see the older requests link at the bottom of the first column
-
- Scenario: Selecting older requests
- Given I am on the Translator sandbox management page with users in the sandbox
- When I click on "Orava3" in the first column
- And I click on the link that says "1 older requests" at the bottom of the first column
- Then I should see the checkbox next to the request from "Pupu3" checked
- And I should see the checkbox next to the request from "Pupu3" enabled
- And I should see the checkbox next to the request from "Orava3" checked
- And I should see the checkbox next to the request from "Orava3" enabled
- And I should see the checkbox next to the request from "Pupu2" unchecked
- And I should see "2 users selected" at the bottom of the first column
- And I should see "2 users selected" in the header of the second column
-
- Scenario: Selecting all users
- Given I am on the Translator sandbox management page with users in the sandbox
- And I click the checkbox to select all users
- Then I should not see the older requests link at the bottom of the first column
- And I should see "11 users selected" at the bottom of the first column
- And I should see "11 users selected" in the header of the second column
-
- Scenario: Searching for a user by language
- Given I am on the Translator sandbox management page with users in the sandbox
- When I click the sandboxed users language filter button
- And I type "he" in the language filter
- Then only users who translate to language "he" are displayed in the first column
- And I should see "3 requests" at the top of the first column
- And I should see "1 user selected" at the bottom of the first column
- And I should see the name of the first user in the first column in the header of the second column
- And I should see the button that clears language selection
- And the direction of the users language filter button is "rtl"
- And the language code of the users language filter button is "he"
-
- Scenario: Searching for a user by language and selecting all users
- Given I am on the Translator sandbox management page with users in the sandbox
- When I click the sandboxed users language filter button
- And I type "uk" in the language filter
- And I click the checkbox to select all users
- Then only users who translate to language "uk" are displayed in the first column
- And I should see "3 requests" at the top of the first column
- And I should see "3 users selected" at the bottom of the first column
- And I should see "3 users selected" in the header of the second column
-
- Scenario: Showing users who translate to all languages
- Given I am on the Translator sandbox management page with users in the sandbox
- When I click the sandboxed users language filter button
- And I type "nl" in the language filter
- And I click the button that clears language selection
- Then I should see the checkbox next to the request from "Kissa" checked
- And I should see the checkbox next to the request from "Kissa" disabled
- And I should see "11 requests" at the top of the first column
- And I should see "1 user selected" at the bottom of the first column
- And I should not see the button that clears language selection
- And the direction of the users language filter button is "ltr"
- And the language code of the users language filter button is "en"
-
- Scenario: Searching for languages to which nobody translates
- Given I am on the Translator sandbox management page with users in the sandbox
- When I click the sandboxed users language filter button
- And I type "be" in the language filter
- Then no users are displayed in the first column
- And I should see "0 requests" at the top of the first column
- And I should see "0 users selected" at the bottom of the first column
- And I should not see the older requests link at the bottom of the first column
-
- Scenario: Translation Administrator should be able to see a list of pending requests with usernames in the first column, sorted by the number of translations and the most recent within them, and the first user should be selected
- Given I am on the Translator sandbox management page with users in the sandbox
- Then I should see the userlist in the first column sorted by the number of translations and the most recent within them
- And I should see the checkbox next to the request from "Kissa" checked
- And I should see the checkbox next to the request from "Kissa" disabled
- And I should see the name of the first user in the first column in the header of the second column
- And I should see that the user's translations are sorted by the language code
- And I should see the "Accept" button displayed in the second column
- And I should see the "Reject" button displayed in the second column
- And I should see "1 user selected" at the bottom of the first column
- And I should not see the older requests link at the bottom of the first column
-
- Scenario: Clicking on a name of a user who didn't make any translations shows the user information and the action buttons and doesn't show translations
- Given I am on the Translator sandbox management page with users in the sandbox
- When I click on "Orava0" in the first column
- Then I should see the checkbox next to the request from "Orava0" checked
- And I should see the checkbox next to the request from "Orava0" disabled
- And I should not see any users except "Orava0" selected
- And I should see "Orava0" in the header of the second column
- And I should not see any translations done by the user in the second column
- And I should see the "Accept" button displayed in the second column
- And I should see the "Reject" button displayed in the second column
- And I should see "1 user selected" at the bottom of the first column
- And I should see "11 requests" at the top of the first column
- And I should see that no reminders have been sent to the user
-
- Scenario: Clicking a username when another user is selected selects only the new user; Clicking on a name of a user who made some translations shows the user information and the action buttons and some translations
- Given I am on the Translator sandbox management page with users in the sandbox
- When I click on "Orava0" in the first column
- And I click on "Orava3" in the first column
- Then I should see the checkbox next to the request from "Orava3" checked
- And I should see the checkbox next to the request from "Orava3" disabled
- And I should not see any users except "Orava3" selected
- And I should see "Orava3" in the header of the second column
- And I should see the details of 3 sandboxed translations done by the user in the second column
- And I should see the "Accept" button displayed in the second column
- And I should see the "Reject" button displayed in the second column
- And I should see "1 user selected" at the bottom of the first column
- And I should see that 3 reminders were sent to the user
-
- Scenario: Selecting multiple users
- Given I am on the Translator sandbox management page with users in the sandbox
- When I click on "Orava4" in the first column
- And I click on the checkbox near "Pupu3" in the first column
- Then I should see the checkbox next to the request from "Orava4" checked
- And I should see the checkbox next to the request from "Orava4" enabled
- And I should see the checkbox next to the request from "Pupu3" checked
- And I should see the checkbox next to the request from "Pupu3" enabled
- And I should see "2 users selected" in the header of the second column
- And I should see "2 users selected" at the bottom of the first column
- And I should not see any translations done by the users in the second column
- And I should see the "Accept all" button displayed in the second column
- And I should see the "Reject all" button displayed in the second column
-
- Scenario: Selecting multiple users and then one user again
- Given I am on the Translator sandbox management page with users in the sandbox
- When I click on "Pupu3" in the first column
- And I click on the checkbox near "Pupu2" in the first column
- And I click on "Orava2" in the first column
- Then I should see the checkbox next to the request from "Pupu3" unchecked
- And I should see the checkbox next to the request from "Pupu3" enabled
- And I should see the checkbox next to the request from "Pupu2" unchecked
- And I should see the checkbox next to the request from "Pupu2" enabled
- And I should see the checkbox next to the request from "Orava2" checked
- And I should see the checkbox next to the request from "Orava2" disabled
- And I should see "Orava2" in the header of the second column
- And I should see "1 user selected" at the bottom of the first column
- And I should see the details of 2 sandboxed translations done by the user in the second column
- And I should see the "Accept" button displayed in the second column
- And I should see the "Reject" button displayed in the second column
- And I should see the name of language "Nederlands" in the second column
- And I should see that the language of the first translation is "Nederlands"
-
- Scenario: Selecting a second user with translations and deselecting it
- Given I am on the Translator sandbox management page with users in the sandbox
- When I click on the checkbox near "Pupu4" in the first column
- And I click on the checkbox near "Pupu4" in the first column
- Then I should see the checkbox next to the request from "Pupu4" unchecked
- And I should see the checkbox next to the request from "Pupu4" enabled
- And I should see the checkbox next to the request from "Kissa" checked
- And I should see the checkbox next to the request from "Kissa" disabled
- And I should see the details of 5 sandboxed translations done by the user in the second column
-
- Scenario: Selecting a second user without translations and deselecting it
- Given I am on the Translator sandbox management page with users in the sandbox
- When I click on "Pupu0" in the first column
- And I click on the checkbox near "Orava0" in the first column
- And I click on the checkbox near "Orava0" in the first column
- Then I should see the checkbox next to the request from "Orava0" unchecked
- And I should see the checkbox next to the request from "Orava0" enabled
- And I should see the checkbox next to the request from "Pupu0" checked
- And I should see the checkbox next to the request from "Pupu0" disabled
- And I should not see any translations done by the user in the second column
-
- Scenario: Selecting a user who wrote a comment when signing up
- Given I am on the Translator sandbox management page with users in the sandbox
- When I click on "Kissa" in the first column
- Then I should see that the user wrote a comment that says "I know some languages, and I'm a developer."
-
- Scenario: Selecting a user who didn't write a comment when signing up
- Given I am on the Translator sandbox management page with users in the sandbox
- When I click on "Pupu2" in the first column
- Then I should not see that the user wrote a comment
-
- Scenario: Accepting one user
- Given I am on the Translator sandbox management page with users in the sandbox
- When I click on "Pupu2" in the first column
- And I click the "Accept" button
- Then I should not see user "Pupu2" in the first column
- And I should see "Orava2" in the header of the second column
- And I should see the checkbox next to the request from "Orava2" checked
- And I should see the checkbox next to the request from "Orava2" disabled
- And I should see "1 user selected" at the bottom of the first column
- And I should see "10 requests" at the top of the first column
-
- Scenario: Rejecting one user
- Given I am on the Translator sandbox management page with users in the sandbox
- When I click on "Pupu2" in the first column
- And I click the "Reject" button
- Then I should not see user "Pupu2" in the first column
- And I should see "Orava2" in the header of the second column
- And I should see the checkbox next to the request from "Orava2" checked
- And I should see the checkbox next to the request from "Orava2" disabled
- And I should see "1 user selected" at the bottom of the first column
- And I should see "10 requests" at the top of the first column
-
- Scenario: Accepting multiple users
- Given I am on the Translator sandbox management page with users in the sandbox
- When I click on "Pupu2" in the first column
- And I click on the checkbox near "Orava3" in the first column
- And I click the "Accept all" button
- Then I should not see user "Pupu2" in the first column
- And I should not see user "Orava3" in the first column
- And I should see "Pupu4" in the header of the second column
- And I should see the checkbox next to the request from "Pupu4" checked
- And I should see the checkbox next to the request from "Pupu4" disabled
- And I should see "1 user selected" at the bottom of the first column
- And I should see "9 requests" at the top of the first column
-
- Scenario: Rejecting multiple users
- Given I am on the Translator sandbox management page with users in the sandbox
- When I click on "Pupu2" in the first column
- And I click on the checkbox near "Orava3" in the first column
- And I click the "Reject all" button
- Then I should not see user "Pupu2" in the first column
- And I should not see user "Orava3" in the first column
- And I should see "Pupu4" in the header of the second column
- And I should see the checkbox next to the request from "Pupu4" checked
- And I should see the checkbox next to the request from "Pupu4" disabled
- And I should see "1 user selected" at the bottom of the first column
- And I should see "9 requests" at the top of the first column
-
- Scenario: Accepting all users
- Given I am on the Translator sandbox management page with users in the sandbox
- When I click the checkbox to select all users
- And I click the "Accept all" button
- Then no users are displayed in the first column
- And I should see "0 requests" at the top of the first column
-
- Scenario: Search for users and accept the first user
- Given I am on the Translator sandbox management page with users in the sandbox
- When I search for "pupu" in the sandboxed users search field
- And I click on "Pupu4" in the first column
- And I click the "Accept" button
- Then I should see "Pupu3" in the header of the second column
- And I should see the checkbox next to the request from "Pupu3" checked
- And I should see the checkbox next to the request from "Pupu3" disabled
- And I should see "1 user selected" at the bottom of the first column
- And I should see "4 requests" at the top of the first column
-
- Scenario: Accepting a user creates a user page
- Given I am on the Translator sandbox management page with users in the sandbox
- When I click on "Kissa" in the first column
- And I click the "Accept" button
- And I go to the userpage of user "Kissa"
- Then I should see a babel box with languages "bn, he, uk, nl, fi"
diff --git a/MLEB/Translate/tests/browser/features/special_translate.feature b/MLEB/Translate/tests/browser/features/special_translate.feature
deleted file mode 100644
index 17c5b737..00000000
--- a/MLEB/Translate/tests/browser/features/special_translate.feature
+++ /dev/null
@@ -1,25 +0,0 @@
-@firefox @meta.wikimedia.org
-Feature: Special:Translate
-
- This page is the primary web translation interface for users.
-
- https://www.mediawiki.org/wiki/Help:Extension:Translate/Quality_assurance#Workflows
- describes how the workflow state selector can be used.
- https://commons.wikimedia.org/wiki/File:Translate-workflow-spec.pdf?page=10
- describes how it is meant to look and behave.
-
- @sandbox.translatewiki.net
- Scenario: Workflow selector not being visible
- Given I am translating a message group which doesn't have workflow states
- Then I should not see a workflow state
-
- @custom-setup-needed
- Scenario: Workflow selector being visible
- Given I am translating a message group which has workflow states
- Then I should see a workflow state
-
- @custom-setup-needed
- Scenario: Workflow selector being clickable
- Given I am translating a message group which has workflow states
- When I click the workflow state
- Then I should see a list of states
diff --git a/MLEB/Translate/tests/browser/features/step_definitions/manage_translator_sandbox_steps.rb b/MLEB/Translate/tests/browser/features/step_definitions/manage_translator_sandbox_steps.rb
deleted file mode 100644
index 6fb29990..00000000
--- a/MLEB/Translate/tests/browser/features/step_definitions/manage_translator_sandbox_steps.rb
+++ /dev/null
@@ -1,214 +0,0 @@
-Given(/^I am logged in as a translation administrator$/) do
- step "I am logged in"
-end
-
-Given(/^I am on the Translator sandbox management page with no users in the sandbox$/) do
- visit(ManageTranslatorSandboxPage, :using_params => {:extra => "integrationtesting=empty"})
-end
-
-Given(/^I am on the Translator sandbox management page with users in the sandbox$/) do
- visit(ManageTranslatorSandboxPage, :using_params => {:extra => "integrationtesting=populate"})
-end
-
-When(/^I search for "(.*)" in the sandboxed users search field$/) do |string|
- on(ManageTranslatorSandboxPage) do |page|
- page.search = string
- page.search_element.send_keys :enter
- end
-end
-
-When(/^I click the sandboxed users language filter button$/) do
- on(ManageTranslatorSandboxPage).language_selector_button
-end
-
-When(/^I type "(.+)" in the language filter$/) do |text|
- on(ManageTranslatorSandboxPage) do |page|
- page.language_filter = text
- page.language_filter_element.send_keys [:enter, "\n"]
- end
-end
-
-When(/^I click the button that clears language selection$/) do
- on(ManageTranslatorSandboxPage).clear_language_selector_element.click
-end
-
-When(/^I click the checkbox to select all users$/) do
- on(ManageTranslatorSandboxPage).select_all_checkbox_element.click
-end
-
-When(/^I click the "(.+)" button$/) do |label|
- on(ManageTranslatorSandboxPage).click_button(label)
-end
-
-When(/^I click on "(.+)" in the first column$/) do |username|
- on(ManageTranslatorSandboxPage).request_with_username(username).click
-end
-
-When(/^I click on the checkbox near "(.+)" in the first column$/) do |username|
- on(ManageTranslatorSandboxPage).checkbox_for_request_with_username(username).click
-end
-
-When(/^I click on the link that says "\d+ older requests?" at the bottom of the first column$/) do
- on(ManageTranslatorSandboxPage).older_requests_indicator_element.click
-end
-
-When(/^I go to the userpage of user "(.*?)"$/) do |username|
- visit(UserPage, :using_params => {:extra => username})
-end
-
-Then(/^I should see a babel box with languages "(.*?)"$/) do |languages|
- on(UserPage).babel_box_has_languages?(languages).should be_true
-end
-
-Then(/^I should not see the older requests link at the bottom of the first column$/) do
- on(ManageTranslatorSandboxPage).older_requests_indicator_element.should_not be_visible
-end
-
-Then(/^I should not see any users except "(.+)" selected$/) do |username|
- on(ManageTranslatorSandboxPage).only_request_with_username_is_selected?(username).should be_true
-end
-
-Then(/^I should not see any translations done by the user in the second column$/) do
- on(ManageTranslatorSandboxPage) do |page|
- page.translation_elements.size.should == 0
- page.details_no_translations.size.should == 1
- page.details_no_translations[0].should be_visible
- end
-end
-
-Then(/^I should not see any translations done by the users in the second column$/) do
- on(ManageTranslatorSandboxPage).translation_elements.length.should == 0
-end
-
-Then(/^I should see the details of (\d+) sandboxed translations done by the user in the second column$/) do |translations|
- on(ManageTranslatorSandboxPage) do |page|
- page.translation_elements.size.should == translations.to_i
- page.details_no_translations.size.should == 0
- end
-end
-
-Then(/^I should not see user "(.+)" in the first column$/) do |username|
- on(ManageTranslatorSandboxPage) do |page|
- Watir::Wait.until { page.visible_requests_element.size < 11 }
- page.request_with_username(username).should_not exist
- end
-end
-
-Then(/^I should see that (\d+) reminders were sent to the user$/) do |count|
- on(ManageTranslatorSandboxPage) do |page|
- page.reminder_status_element.should be_visible
- page.reminder_status.should match(/^Sent #{count} reminders/i)
- end
-end
-
-Then(/^I should see that no reminders have been sent to the user$/) do
- on(ManageTranslatorSandboxPage).reminder_status.should == ""
-end
-
-Then(/^the direction of the users language filter button is "(.+)"$/) do |dir_value|
- on(ManageTranslatorSandboxPage).language_selector_button_element.attribute("dir").should == dir_value
-end
-
-Then(/^the language code of the users language filter button is "(.+)"$/) do |lang_value|
- on(ManageTranslatorSandboxPage).language_selector_button_element.attribute("lang").should == lang_value
-end
-
-Then(/^usernames are visible in the first column$/) do
- on(ManageTranslatorSandboxPage).visible_users_element.size.should_not == 0
-end
-
-Then(/^I should see the name of language "(.+)" in the second column$/) do |language|
- on(ManageTranslatorSandboxPage).details_autonym.text.should == language
-end
-
-Then(/^I should see that the language of the first translation is "(.+)"$/) do |language|
- on(ManageTranslatorSandboxPage).translations_autonyms[0].text.should == language
-end
-
-Then(/^only users whose name begins with "(.*)" are displayed in the first column$/) do |prefix|
- on(ManageTranslatorSandboxPage).visible_users_start_with?(prefix).should be_true
-end
-
-Then(/^a user whose name begins with "(.*)" is displayed in the first column$/) do |prefix|
- on(ManageTranslatorSandboxPage).the_first_column_has_username_starting_with?(prefix).should be_true
-end
-
-Then(/^no users are displayed in the first column$/) do
- on(ManageTranslatorSandboxPage) do |page|
- Watir::Wait.until { page.visible_requests_element.size < 11 }
- page.visible_users_element.length.should == 0
- end
-end
-
-Then(/^I should see "(.+)" at the top of the first column$/) do |text|
- on(ManageTranslatorSandboxPage).request_count.should == text
-end
-
-Then(/^I should see the button that clears language selection$/) do
- on(ManageTranslatorSandboxPage).clear_language_selector_element.should be_visible
-end
-
-Then(/^I should not see the button that clears language selection$/) do
- on(ManageTranslatorSandboxPage).clear_language_selector_element.should_not be_visible
-end
-
-Then(/^only users who translate to language "(.+)" are displayed in the first column$/) do |language|
- on(ManageTranslatorSandboxPage).all_visible_requests_translate_to?(language).should be_true
-end
-
-Then(/^I should see "(.+)" at the bottom of the first column$/) do |text|
- on(ManageTranslatorSandboxPage).selected_counter.should == text
-end
-
-Then(/^I should see that the user wrote a comment that says "(.*?)"$/) do |text|
- on(ManageTranslatorSandboxPage).signup_comment_text.should == text
-end
-
-Then(/^I should not see that the user wrote a comment$/) do
- on(ManageTranslatorSandboxPage).signup_comment_text_element.should_not exist
-end
-
-Then(/^I should see the name of the first user in the first column in the header of the second column$/) do
- on(ManageTranslatorSandboxPage) do |page|
- page.details_header.text.should == page.username_in_request(0)
- end
-end
-
-Then(/^I should see "(.+)" in the header of the second column$/) do |text|
- on(ManageTranslatorSandboxPage).details_header.text.should == text
-end
-
-Then(/^I should see the userlist in the first column sorted by the number of translations and the most recent within them$/) do
- on(ManageTranslatorSandboxPage).requests_are_sorted_by_translation_count_and_date?.should be_true
-end
-
-Then(/^I should see the checkbox next to the request from "(.+)" checked$/) do |user|
- on(ManageTranslatorSandboxPage).checkbox_for_request_with_username(user).should be_checked
-end
-
-Then(/^I should see the checkbox next to the request from "(.+)" unchecked$/) do |user|
- on(ManageTranslatorSandboxPage).checkbox_for_request_with_username(user).should_not be_checked
-end
-
-Then(/^I should see the checkbox next to the request from "(.+)" disabled$/) do |user|
- on(ManageTranslatorSandboxPage).checkbox_for_request_with_username(user).should be_disabled
-end
-
-Then(/^I should see the checkbox next to the request from "(.+)" enabled$/) do |user|
- on(ManageTranslatorSandboxPage).checkbox_for_request_with_username(user).should_not be_disabled
-end
-
-Then(/^I should see the "(.+)" button displayed in the second column$/) do |label|
- on(ManageTranslatorSandboxPage).details_button(label).should be_visible
-end
-
-Then(/^I should see "(.+)" in the older requests link at the bottom of the first column$/) do |text|
- on(ManageTranslatorSandboxPage) do |page|
- page.older_requests_indicator_element.should be_visible
- page.older_requests_indicator_element.text.should == text
- end
-end
-
-Then(/^I should see that the user's translations are sorted by the language code$/) do
- on(ManageTranslatorSandboxPage).translations_languages_are_sorted?.should be_true
-end
diff --git a/MLEB/Translate/tests/browser/features/step_definitions/special_translate_steps.rb b/MLEB/Translate/tests/browser/features/step_definitions/special_translate_steps.rb
deleted file mode 100644
index a0c861b2..00000000
--- a/MLEB/Translate/tests/browser/features/step_definitions/special_translate_steps.rb
+++ /dev/null
@@ -1,23 +0,0 @@
-Given(/^I am translating a message group which doesn't have workflow states$/) do
- visit(TranslatePage, :using_params => {:extra => "language=fi"})
-end
-
-Given(/^I am translating a message group which has workflow states$/) do
- visit(TranslatePage, :using_params => {:extra => "language=fi&group=page-Language+committee"})
-end
-
-When(/^I click the workflow state$/) do
- on(TranslatePage).workflow_state_element.when_present.click
-end
-
-Then(/^I should see a workflow state$/) do
- on(TranslatePage).workflow_state_element.when_present.should be_visible
-end
-
-Then(/^I should not see a workflow state$/) do
- on(TranslatePage).workflow_state_element.should_not be_visible
-end
-
-Then(/^I should see a list of states$/) do
- on(TranslatePage).workflow_state_selector_element.should be_visible
-end
diff --git a/MLEB/Translate/tests/browser/features/step_definitions/translation_stash_steps.rb b/MLEB/Translate/tests/browser/features/step_definitions/translation_stash_steps.rb
deleted file mode 100644
index 94943330..00000000
--- a/MLEB/Translate/tests/browser/features/step_definitions/translation_stash_steps.rb
+++ /dev/null
@@ -1,68 +0,0 @@
-Given(/^I am logged in at sandbox$/) do
- visit(LoginPage).login_with(ENV["MEDIAWIKI_USER"], ENV["MEDIAWIKI_PASSWORD"], false)
-end
-
-Given(/^I am a sandboxed user on the stash page$/) do
- visit(StashPage, :using_params => {:extra => "integrationtesting=activatestash"})
-end
-
-Then(/^I should see a language selector$/) do
- on(StashPage).language_selector_element.should be_visible
-end
-
-Then(/^I should be able to select a language$/) do
- on(StashPage).select_language("fi")
-end
-
-Then(/^I should see the save button$/) do
- on(StashPage).save_button_element.when_present.should be_visible
-end
-
-Then(/^I should see the skip button$/) do
- on(StashPage).skip_button_element.when_present.should be_visible
-end
-
-When(/^I make a translation$/) do
- on(StashPage).make_a_translation
-end
-
-Then(/^I should see my translation saved$/) do
- on(StashPage).status_saved_element.when_present.should be_visible
-end
-
-Then(/^I should see the next message open for translation$/) do
- on(StashPage) do |page|
- page.translation_element(1).when_present.should be_visible
- page.translation_element(1).value.should == ""
- end
-end
-
-When(/^I reload the page$/) do
- visit StashPage
-end
-
-Then(/^I can open and see my earlier translation$/) do
- pending("Does not work because of random language selection on reload.") do
- on(StashPage) do |page|
- page.edit_element.when_present(10).click
- page.translation_element.when_present.value.should == "Pupu"
- end
- end
-end
-
-Then(/^I should see a message indicating I have one completed translation$/) do
- on(StashPage).translation_stats.should match(/1/)
-end
-
-When(/^I translate all the messages in the sandbox$/) do
- # Sandbox needs to get enough messages
- pending
- (0..19).each do |i|
- on(StashPage).make_a_translation(i)
- step "I should see my translation saved"
- end
-end
-
-Then(/^I can see a message that maximum number of translations has been reached$/) do
- on(StashPage).limit_message_element.should be_visible
-end
diff --git a/MLEB/Translate/tests/browser/features/support/env.rb b/MLEB/Translate/tests/browser/features/support/env.rb
deleted file mode 100644
index 8ac08eab..00000000
--- a/MLEB/Translate/tests/browser/features/support/env.rb
+++ /dev/null
@@ -1 +0,0 @@
-require "mediawiki_selenium"
diff --git a/MLEB/Translate/tests/browser/features/support/hooks.rb b/MLEB/Translate/tests/browser/features/support/hooks.rb
deleted file mode 100644
index ce657f4e..00000000
--- a/MLEB/Translate/tests/browser/features/support/hooks.rb
+++ /dev/null
@@ -1,3 +0,0 @@
-After("@stash") do |scenario|
- visit(StashPage, :using_params => {:extra => "integrationtesting=deactivatestash"})
-end
diff --git a/MLEB/Translate/tests/browser/features/support/pages/manage_translator_sandbox_page.rb b/MLEB/Translate/tests/browser/features/support/pages/manage_translator_sandbox_page.rb
deleted file mode 100644
index e3b01710..00000000
--- a/MLEB/Translate/tests/browser/features/support/pages/manage_translator_sandbox_page.rb
+++ /dev/null
@@ -1,144 +0,0 @@
-require "json"
-
-class ManageTranslatorSandboxPage
- include PageObject
-
- include URL
- page_url URL.url("Special:ManageTranslatorSandbox?<%=params[:extra]%>")
-
- button(:clear_language_selector, class: "clear-language-selector")
-
- div(:details, class: "details")
-
- text_field(:language_filter, id: "languagefilter")
- button(:language_selector_button, class: "language-selector")
-
- a(:older_requests_indicator, class: "older-requests-indicator")
-
- div(:request_count, class: "request-count")
- span(:reminder_status, class: "reminder-status")
-
- span(:selected_counter, class: "selected-counter")
-
- text_field(:search, class: "request-filter-box")
-
- checkbox(:select_all_checkbox, class: "request-selector-all")
-
- div(:signup_comment_text, class: "signup-comment-text")
-
- # This must be reloaded every time, because it may change during the test
- def details_header
- @browser.element(class: "tsb-header")
- end
-
- def details_button(label)
- button_class = label.downcase.gsub(" ", "-")
- @browser.button(class: button_class)
- end
-
- def details_no_translations
- @browser.divs(class: "tsb-details-no-translations")
- end
-
- def visible_request_selectors_element
- @browser.elements(css: ".row.request:not(.hide) .request-selector")
- end
-
- def visible_users_element
- @browser.elements(css: ".row.request:not(.hide) .username")
- end
-
- def visible_requests_element
- @browser.elements(css: ".row.request:not(.hide)")
- end
-
- def hidden_users_element
- @browser.elements(css: ".requests .request.hide")
- end
-
- def request_with_username(username)
- @browser.div(id: "tsb-request-#{username}")
- end
-
- def requests_without_username(username)
- @browser.elements(css: ".row.request:not(#tsb-request-#{username})")
- end
-
- def translation_elements
- @browser.elements(css: ".details .translation")
- end
-
- def checkbox_for_request_with_username(username)
- @browser.div(id: "tsb-request-#{username}").checkbox(class: "request-selector")
- end
-
- def visible_users_start_with?(prefix)
- Watir::Wait.until { hidden_users_element.size > 0 }
- visible_users_element.all? do |element|
- element.text.match(/^#{prefix}/i)
- end
- end
-
- def the_first_column_has_username_starting_with?(prefix)
- visible_users_element.any? do |element|
- element.text.match(/^#{prefix}/i)
- end
- end
-
- def all_visible_requests_translate_to?(language)
- Watir::Wait.until { hidden_users_element.size > 0 }
- visible_requests_element.all? do |element|
- user_data = JSON.parse(element.attribute_value("data-data"))
- user_data["languagepreferences"]["languages"].include?(language)
- end
- end
-
- def username_in_request(index)
- visible_users_element[index].text
- end
-
- def requests_are_sorted_by_translation_count_and_date?
- expected_usernames = []
- Array(0..4).each do |num|
- %w{Pupu Orava}.each do |name|
- expected_usernames.unshift("#{name}#{num}")
- end
- end
- expected_usernames.unshift("Kissa")
- usernames = visible_users_element.collect { |element| element.text }
-
- expected_usernames == usernames
- end
-
- def details_autonym
- @browser.elements(css: ".details.pane .languages span")[0]
- end
-
- def translations_languages_are_sorted?
- expected_langs = ["bn", "fi", "he", "nl", "uk"]
- langs = translations_autonyms.collect { |element| element.attribute_value("lang") }
-
- expected_langs == langs
- end
-
- def translations_autonyms
- @browser.elements(css: ".details.pane .translations .info.autonym")
- end
-
- def click_button(label)
- initial_header_text = details_header.text
-
- details_button(label).click
-
- # It takes a few moments until Accept and Reject buttons
- # finish performing the action, and this action always
- # removes the currently displayed users and changes the header
- Watir::Wait.while { @browser.execute_script "return window.tsbUpdatingUsers" }
- end
-
- def only_request_with_username_is_selected?(username)
- requests_without_username(username).all? do |element|
- not element.attribute_value("class").split(" ").include?("selected")
- end
- end
-end
diff --git a/MLEB/Translate/tests/browser/features/support/pages/stash_page.rb b/MLEB/Translate/tests/browser/features/support/pages/stash_page.rb
deleted file mode 100644
index a058efbf..00000000
--- a/MLEB/Translate/tests/browser/features/support/pages/stash_page.rb
+++ /dev/null
@@ -1,34 +0,0 @@
-class StashPage
- include PageObject
-
- include URL
- page_url URL.url("Special:TranslationStash?<%=params[:extra]%>")
-
- a(:edit, text: "Edit")
-
- a(:language_selector, :class => "uls-trigger")
- text_field(:language_filter, :id => "uls-languagefilter")
-
- button(:skip_button, :class => "tux-editor-skip-button")
-
- span(:status_saved, :class => "tux-status-translated")
-
- div(:translation_stats, :class => "stash-stats")
- div(:limit_message, :class => "limit-reached")
-
- def make_a_translation(index = 0)
- translation_element(index).when_present.set "Pupu"
- save_button_element(index).click
- end
- def save_button_element(index = 0)
- @browser.button(:class => "tux-editor-save-button", :index => index)
- end
- def select_language(language)
- self.language_selector_element.click
- self.language_filter = language
- self.language_filter_element.send_keys :enter
- end
- def translation_element(index = 0)
- @browser.text_field(:class => "tux-textarea-translation", :index => index)
- end
-end
diff --git a/MLEB/Translate/tests/browser/features/support/pages/translate_page.rb b/MLEB/Translate/tests/browser/features/support/pages/translate_page.rb
deleted file mode 100644
index 5cf59479..00000000
--- a/MLEB/Translate/tests/browser/features/support/pages/translate_page.rb
+++ /dev/null
@@ -1,9 +0,0 @@
-class TranslatePage
- include PageObject
-
- include URL
- page_url URL.url("Special:Translate?<%=params[:extra]%>")
-
- div(:workflow_state, class: "tux-workflow-status")
- ul(:workflow_state_selector, class: "tux-workflow-status-selector")
-end
diff --git a/MLEB/Translate/tests/browser/features/support/pages/user_page.rb b/MLEB/Translate/tests/browser/features/support/pages/user_page.rb
deleted file mode 100644
index b6a7a035..00000000
--- a/MLEB/Translate/tests/browser/features/support/pages/user_page.rb
+++ /dev/null
@@ -1,13 +0,0 @@
-class UserPage
- include PageObject
-
- include URL
- page_url URL.url("User:<%=params[:extra]%>")
-
- def babel_box_has_languages?(languages)
- languages.split(/, /).all? do |language|
- @browser.element(css: ".mw-babel-box td[lang=#{language}]").visible?
- end
- end
-
-end
diff --git a/MLEB/Translate/tests/browser/features/translation_stash.feature b/MLEB/Translate/tests/browser/features/translation_stash.feature
deleted file mode 100644
index 8bfcc732..00000000
--- a/MLEB/Translate/tests/browser/features/translation_stash.feature
+++ /dev/null
@@ -1,44 +0,0 @@
-@firefox @login @sandbox.translatewiki.net @stash
-Feature: Translation stash
-
- As a new translator, I can make translations in sandbox mode so that a translation administrator
- can check them and give me translator rights, so that I do not have to register and wait for
- approval before contributing translation for the site.
-
- Design:
- - http://commons.wikimedia.org/wiki/File:Translate_UX_Onboarding_designs.pdf
-
- These scenarios test the Special:TranslationStash page. User needs to be inside the sandbox
- to access this page.
- The easiest way to achieve this is to add the test username to $wgTranslateTestUsers[].
-
- Background:
- Given I am logged in at sandbox
- And I am a sandboxed user on the stash page
-
- Scenario: Can select a language to translate into
- Then I should see a language selector
- And I should be able to select a language
-
- Scenario: Common elements in translation widget
-
- The first message is automatically opened for editing
-
- Then I should see the save button
- And I should see the skip button
-
- Scenario: Can make a translation
- When I make a translation
- Then I should see my translation saved
- And I should see the next message open for translation
- And I should see a message indicating I have one completed translation
-
- Scenario: Can improve own earlier translation
- When I make a translation
- Then I should see my translation saved
- And I reload the page
- And I can open and see my earlier translation
-
- Scenario: User is displayed a message when all messages have been translated
- When I translate all the messages in the sandbox
- Then I can see a message that maximum number of translations has been reached
diff --git a/MLEB/Translate/tests/generateRandomSandboxData.php b/MLEB/Translate/tests/generateRandomSandboxData.php
index 2b3208c4..36ceb6c4 100644
--- a/MLEB/Translate/tests/generateRandomSandboxData.php
+++ b/MLEB/Translate/tests/generateRandomSandboxData.php
@@ -3,7 +3,7 @@
* Script to generate some random data to help testing sandbox.
*
* @author Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
* @file
*/
@@ -37,14 +37,14 @@ class TranslateGenerateRandomSandboxData extends Maintenance {
$language = $languages[rand( 0, count( $languages ) - 1 )];
- $count = gauss_ms( $mean, $stddev );
+ $count = wfGaussMs( $mean, $stddev );
$count = min( 20, $count );
$count = max( 0, $count );
for ( $j = 0; $j < $count; $j++ ) {
$title = Title::makeTitle( NS_MEDIAWIKI, wfRandomString( 24 ) . '/' . $language );
- $value = array( 'Pupu söi' );
+ $value = [ 'Pupu söi' ];
for ( $k = rand( 0, 20 ); $k > 0; $k-- ) {
$value[] = wfRandomString( rand( 1, 28 ) );
}
@@ -59,31 +59,28 @@ class TranslateGenerateRandomSandboxData extends Maintenance {
/*
* Gauss functions are based on Mark Baker's code from
- * http://stackoverflow.com/questions/5188900/bell-curve-algorithm-with-php
+ * https://stackoverflow.com/questions/5188900/bell-curve-algorithm-with-php
*/
-function gauss() {
+function wfGauss() {
static $useExists = false;
static $useValue;
if ( $useExists ) {
// Use value from a previous call to this function
- //
$useExists = false;
return $useValue;
} else {
// Polar form of the Box-Muller transformation
- //
$w = 2.0;
while ( ( $w >= 1.0 ) || ( $w == 0.0 ) ) {
- $x = random_PN();
- $y = random_PN();
- $w = ($x * $x) + ($y * $y);
+ $x = wfRandomPn();
+ $y = wfRandomPn();
+ $w = ( $x * $x ) + ( $y * $y );
}
$w = sqrt( ( -2.0 * log( $w ) ) / $w );
// Set value for next call to this function
- //
$useValue = $y * $w;
$useExists = true;
@@ -91,21 +88,21 @@ function gauss() {
}
}
-function gauss_ms( $mean, $stddev ) {
+function wfGaussMs( $mean, $stddev ) {
// Adjust our gaussian random to fit the mean and standard deviation.
// The division by 4 is an arbitrary value to help fit the distribution
// within our required range, and gives a best fit for $stddev = 1.0.
- return gauss() * ( $stddev / 4 ) + $mean;
+ return wfGauss() * ( $stddev / 4 ) + $mean;
}
-function random_0_1() {
+function wfRandom01() {
// Returns random number using mt_rand() with a flat distribution from 0 to 1 inclusive
- return (float) mt_rand() / (float) mt_getrandmax();
+ return (float)mt_rand() / (float)mt_getrandmax();
}
-function random_PN() {
+function wfRandomPn() {
// Returns random number using mt_rand() with a flat distribution from -1 to 1 inclusive
- return (2.0 * random_0_1()) - 1.0;
+ return ( 2.0 * wfRandom01() ) - 1.0;
}
$maintClass = 'TranslateGenerateRandomSandboxData';
diff --git a/MLEB/Translate/tests/phpunit/BlackListTest.php b/MLEB/Translate/tests/phpunit/BlackListTest.php
index 19806b3e..861f95b9 100644
--- a/MLEB/Translate/tests/phpunit/BlackListTest.php
+++ b/MLEB/Translate/tests/phpunit/BlackListTest.php
@@ -5,7 +5,7 @@
* @file
* @author Santhosh Thottingal
* @copyright Copyright © 2012-2013, Santhosh Thottingal
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -18,18 +18,18 @@ class BlackListTest extends MediaWikiTestCase {
*/
protected $group;
protected $codes;
- protected $groupConfiguration = array(
- 'BASIC' => array(
+ protected $groupConfiguration = [
+ 'BASIC' => [
'class' => 'FileBasedMessageGroup',
'id' => 'test-id',
'label' => 'Test Label',
'namespace' => 'NS_MEDIAWIKI',
'description' => 'Test description',
- ),
- 'FILES' => array(
+ ],
+ 'FILES' => [
'class' => 'TestFFS',
- ),
- );
+ ],
+ ];
protected function setUp() {
parent::setUp();
@@ -49,9 +49,9 @@ class BlackListTest extends MediaWikiTestCase {
public function testAllBlackList() {
$conf = $this->groupConfiguration;
- $conf['LANGUAGES'] = array(
+ $conf['LANGUAGES'] = [
'blacklist' => '*',
- );
+ ];
$group = MessageGroupBase::factory( $conf );
$translatableLanguages = $group->getTranslatableLanguages();
$this->assertEquals( count( $translatableLanguages ), 0 );
@@ -59,9 +59,9 @@ class BlackListTest extends MediaWikiTestCase {
public function testAllWhiteList() {
$conf = $this->groupConfiguration;
- $conf['LANGUAGES'] = array(
+ $conf['LANGUAGES'] = [
'whitelist' => '*',
- );
+ ];
$group = MessageGroupBase::factory( $conf );
$translatableLanguages = $group->getTranslatableLanguages();
$this->assertNull( $translatableLanguages );
@@ -69,10 +69,10 @@ class BlackListTest extends MediaWikiTestCase {
public function testWhiteListOverrideBlackList() {
$conf = $this->groupConfiguration;
- $conf['LANGUAGES'] = array(
- 'whitelist' => array( 'en', 'hi', 'ta' ),
- 'blacklist' => array( 'ta' ),
- );
+ $conf['LANGUAGES'] = [
+ 'whitelist' => [ 'en', 'hi', 'ta' ],
+ 'blacklist' => [ 'ta' ],
+ ];
$group = MessageGroupBase::factory( $conf );
$translatableLanguages = $group->getTranslatableLanguages();
$this->assertTrue( isset( $translatableLanguages['ta'] ) );
@@ -81,9 +81,9 @@ class BlackListTest extends MediaWikiTestCase {
public function testSomeBlackList() {
$conf = $this->groupConfiguration;
- $conf['LANGUAGES'] = array(
- 'blacklist' => array( 'or', 'hi' ),
- );
+ $conf['LANGUAGES'] = [
+ 'blacklist' => [ 'or', 'hi' ],
+ ];
$group = MessageGroupBase::factory( $conf );
$translatableLanguages = $group->getTranslatableLanguages();
$this->assertTrue( !isset( $translatableLanguages['hi'] ) );
diff --git a/MLEB/Translate/tests/phpunit/HookDocTest.php b/MLEB/Translate/tests/phpunit/HookDocTest.php
index f6bc77cd..d2cb6aaa 100644
--- a/MLEB/Translate/tests/phpunit/HookDocTest.php
+++ b/MLEB/Translate/tests/phpunit/HookDocTest.php
@@ -5,14 +5,14 @@
* @file
* @author Niklas Laxström
* @copyright Copyright © 2012-2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
class HookDocTest extends MediaWikiTestCase {
- protected $documented = array();
- protected $used = array();
- protected $paths = array(
- 'php' => array(
+ protected $documented = [];
+ protected $used = [];
+ protected $paths = [
+ 'php' => [
'',
'api',
'ffs',
@@ -23,11 +23,11 @@ class HookDocTest extends MediaWikiTestCase {
'ttmserver',
'utils',
'webservices',
- ),
- 'js' => array(
+ ],
+ 'js' => [
'resources/js',
- ),
- );
+ ],
+ ];
protected function setUp() {
parent::setUp();
@@ -72,11 +72,11 @@ class HookDocTest extends MediaWikiTestCase {
protected static function getJSHooksFromFile( $file ) {
$content = file_get_contents( $file );
- $m = array();
+ $m = [];
preg_match_all( '/(?:mw\.translateHooks\.run)\(\s*([\'"])(.*?)\1/', $content, $m );
- $hooks = array();
+ $hooks = [];
foreach ( $m[2] as $hook ) {
- $hooks[$hook] = array();
+ $hooks[$hook] = [];
}
return $hooks;
@@ -84,24 +84,26 @@ class HookDocTest extends MediaWikiTestCase {
protected static function getPHPHooksFromFile( $file ) {
$content = file_get_contents( $file );
- $m = array();
+ $m = [];
preg_match_all( '/(?:wfRunHooks|Hooks\:\:run)\(\s*([\'"])(.*?)\1/', $content, $m );
- $hooks = array();
+ $hooks = [];
foreach ( $m[2] as $hook ) {
- $hooks[$hook] = array();
+ $hooks[$hook] = [];
}
return $hooks;
}
protected static function getHooksFromPath( $path, $callback ) {
- $hooks = array();
+ $hooks = [];
$dh = opendir( $path );
if ( $dh ) {
- while ( ( $file = readdir( $dh ) ) !== false ) {
- if ( filetype( $path . $file ) == 'file' ) {
+ $file = readdir( $dh );
+ while ( $file !== false ) {
+ if ( filetype( $path . $file ) === 'file' ) {
$hooks = array_merge( $hooks, call_user_func( $callback, $path . $file ) );
}
+ $file = readdir( $dh );
}
closedir( $dh );
}
@@ -113,12 +115,12 @@ class HookDocTest extends MediaWikiTestCase {
preg_match( '/^;([^ ]+):/', $block, $match );
$name = $match[1];
preg_match_all( '/^ ([^ ]+)\s+([ ^])/', $block, $matches, PREG_SET_ORDER );
- $params = array();
+ $params = [];
foreach ( $matches as $match ) {
$params[$match[2]] = $match[1];
}
- return array( $name, $params );
+ return [ $name, $params ];
}
public function testHookIsDocumentedPHP() {
diff --git a/MLEB/Translate/tests/phpunit/Makefile b/MLEB/Translate/tests/phpunit/Makefile
index 2435061e..c86c77cf 100644
--- a/MLEB/Translate/tests/phpunit/Makefile
+++ b/MLEB/Translate/tests/phpunit/Makefile
@@ -2,7 +2,7 @@ ifndef MW_INSTALL_PATH
MW_INSTALL_PATH=../../../..
endif
-DIRS = api ffs insertables
+DIRS = api ffs insertables utils
default:
php ${MW_INSTALL_PATH}/tests/phpunit/phpunit.php .
diff --git a/MLEB/Translate/tests/phpunit/MediaWikiExtensionTest.php b/MLEB/Translate/tests/phpunit/MediaWikiExtensionTest.php
deleted file mode 100644
index b94167b4..00000000
--- a/MLEB/Translate/tests/phpunit/MediaWikiExtensionTest.php
+++ /dev/null
@@ -1,40 +0,0 @@
-<?php
-/**
- * Tests for MediaWikiExtension
- * @author Niklas Laxström
- * @file
- * @copyright Copyright © 2012-2013, Niklas Laxström
- * @license GPL-2.0+
- */
-
-/**
- * Tests that the special definition file is parsed properly.
- */
-class MediaWikiExtensionTest extends MediaWikiTestCase {
- public function testParsing() {
- $defs = __DIR__ . '/data/mediawiki-extensions.txt';
- $path = '%GROUPROOT%/mediawiki-extensions/extensions';
- $foo = new PremadeMediawikiExtensionGroups( $defs, $path );
- $list = $deps = $autoload = array();
- $foo->register( $list, $deps, $autoload );
-
- $this->assertEquals( 1, count( $deps ), 'A dependency to definition file was added' );
- $this->assertEquals( 4, count( $list ), 'Four groups were created' );
-
- $this->assertArrayHasKey( 'ext-exampleextension', $list );
- $expected = TranslateYaml::load( __DIR__ . '/data/MediaWikiExtensionTest-conf1.yaml' );
- $this->assertEquals( $expected, $list['ext-exampleextension']->getConfiguration() );
-
- $this->assertArrayHasKey( 'ext-wikimediamessages', $list );
- $expected = TranslateYaml::load( __DIR__ . '/data/MediaWikiExtensionTest-conf2.yaml' );
- $this->assertEquals( $expected, $list['ext-wikimediamessages']->getConfiguration() );
-
- $this->assertArrayHasKey( 'ext-examplejsonextension', $list );
- $expected = TranslateYaml::load( __DIR__ . '/data/MediaWikiExtensionTest-conf3.yaml' );
- $this->assertEquals( $expected, $list['ext-examplejsonextension']->getConfiguration() );
-
- $this->assertArrayHasKey( 'ext-exampleextension2', $list );
- $expected = TranslateYaml::load( __DIR__ . '/data/MediaWikiExtensionTest-conf4.yaml' );
- $this->assertEquals( $expected, $list['ext-exampleextension2']->getConfiguration() );
- }
-}
diff --git a/MLEB/Translate/tests/phpunit/MediaWikiMessageCheckerTest.php b/MLEB/Translate/tests/phpunit/MediaWikiMessageCheckerTest.php
index 2ca8bc16..a87a5b46 100644
--- a/MLEB/Translate/tests/phpunit/MediaWikiMessageCheckerTest.php
+++ b/MLEB/Translate/tests/phpunit/MediaWikiMessageCheckerTest.php
@@ -5,7 +5,7 @@
* @file
* @author Niklas Laxström
* @copyright Copyright © 2012-2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -17,16 +17,16 @@ class MediaWikiMessageCheckerTest extends MediaWikiTestCase {
* @dataProvider getPluralFormCountProvider
*/
public function testGetPluralFormCount( $expected, $code, $comment ) {
- $provided = MediaWikiMessageChecker::GetPluralFormCount( $code );
+ $provided = MediaWikiMessageChecker::getPluralFormCount( $code );
$this->assertEquals( $expected, $provided, $comment );
}
public function getPluralFormCountProvider() {
- return array(
- array( 2, 'en', 'English has two plural forms' ),
- array( 3, 'ro', 'Romanian has three plural forms' ),
- array( 5, 'br', 'Breton has five plural forms' ),
- );
+ return [
+ [ 2, 'en', 'English has two plural forms' ],
+ [ 3, 'ro', 'Romanian has three plural forms' ],
+ [ 5, 'br', 'Breton has five plural forms' ],
+ ];
}
/**
@@ -38,55 +38,55 @@ class MediaWikiMessageCheckerTest extends MediaWikiTestCase {
}
public function getPluralFormsProvider() {
- return array(
- array(
- array( array( '1', '2' ) ),
+ return [
+ [
+ [ [ '1', '2' ] ],
'a{{PLURAL:#|1|2}}b',
'one plural magic word is parsed correctly'
- ),
+ ],
- array(
- array( array( '1', '2' ), array( '3', '4' ) ),
+ [
+ [ [ '1', '2' ], [ '3', '4' ] ],
'{{PLURAL:#|1|2}}{{PLURAL:#|3|4}}',
'two plural magic words are parsed correctly'
- ),
+ ],
- array(
- array( array( '1', '2{{}}3' ) ),
+ [
+ [ [ '1', '2{{}}3' ] ],
'a{{PLURAL:#|1|2{{}}3}}',
'one plural magic word with curlies inside is parsed correctly'
- ),
+ ],
- array(
- array( array( '0=0', '1=one', '1', '2' ) ),
+ [
+ [ [ '0=0', '1=one', '1', '2' ] ],
'a{{PLURAL:#|0=0|1=one|1|2}}',
'one plural magic word with explicit forms is parsed correctly'
- ),
- array(
- array(),
+ ],
+ [
+ [],
'a{{PLURAL:#|0=0|1=one|1|2}',
'unclosed plural tag is ignored'
- ),
- array(
- array( array( '1=foo', '{{GENDER:#|he}}' ) ),
+ ],
+ [
+ [ [ '1=foo', '{{GENDER:#|he}}' ] ],
'a{{PLURAL:#|1=foo|{{GENDER:#|he}}}}',
'pipes in subtemplates are ignored'
- ),
- array(
- array( array( '[[Special:A|письмо]]', '[[Special:A|писем]]', '[[Special:A|письма]]' ) ),
+ ],
+ [
+ [ [ '[[Special:A|письмо]]', '[[Special:A|писем]]', '[[Special:A|письма]]' ] ],
'{{PLURAL:#|[[Special:A|письмо]]|[[Special:A|писем]]|[[Special:A|письма]]}}',
'pipes in links are ignored'
- ),
- array(
- array(
- array( 'a', 'b' ),
- array( 'c', 'd' ),
- array( '{{PLURAL:#|a|b}}', '{{PLURAL:#|c|d}}' ),
- ),
+ ],
+ [
+ [
+ [ 'a', 'b' ],
+ [ 'c', 'd' ],
+ [ '{{PLURAL:#|a|b}}', '{{PLURAL:#|c|d}}' ],
+ ],
'{{PLURAL:#|{{PLURAL:#|a|b}}|{{PLURAL:#|c|d}}}}',
'nested plurals are handled correctly'
- )
- );
+ ]
+ ];
}
/**
@@ -98,24 +98,24 @@ class MediaWikiMessageCheckerTest extends MediaWikiTestCase {
}
public function removeExplicitPluralFormsProvider() {
- return array(
- array(
- array( '1', '2' ),
- array( '1', '2' ),
+ return [
+ [
+ [ '1', '2' ],
+ [ '1', '2' ],
'default forms are not removed',
- ),
+ ],
- array(
- array( '1', '2' ),
- array( '0=0', '1', '0=0', '2', '1=one' ),
+ [
+ [ '1', '2' ],
+ [ '0=0', '1', '0=0', '2', '1=one' ],
'explicit forms are removed regardless of position',
- ),
+ ],
- array(
- array( '1', '2' ),
- array( '1', '2', '500=lots' ),
+ [
+ [ '1', '2' ],
+ [ '1', '2', '500=lots' ],
'works for any number',
- ),
- );
+ ],
+ ];
}
}
diff --git a/MLEB/Translate/tests/phpunit/MessageCollectionTest.php b/MLEB/Translate/tests/phpunit/MessageCollectionTest.php
index 9362f67b..e73eb4ff 100644
--- a/MLEB/Translate/tests/phpunit/MessageCollectionTest.php
+++ b/MLEB/Translate/tests/phpunit/MessageCollectionTest.php
@@ -3,8 +3,7 @@
* Tests for MessageCollection.
* @author Niklas Laxström
* @file
- * @copyright Copyright © 2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -17,24 +16,25 @@ class MessageCollectionTest extends MediaWikiTestCase {
parent::setUp();
global $wgHooks;
- $this->setMwGlobals( array(
+ $this->setMwGlobals( [
'wgHooks' => $wgHooks,
- 'wgTranslateCC' => array(),
- 'wgTranslateMessageIndex' => array( 'DatabaseMessageIndex' ),
- 'wgTranslateWorkflowStates' => false,
- 'wgTranslateGroupFiles' => array(),
- 'wgTranslateTranslationServices' => array(),
- ) );
- $wgHooks['TranslatePostInitGroups'] = array( array( $this, 'getTestGroups' ) );
- MessageGroups::clearCache();
- MessageIndexRebuildJob::newJob()->run();
+ 'wgTranslateTranslationServices' => [],
+ ] );
+ $wgHooks['TranslatePostInitGroups'] = [ [ $this, 'getTestGroups' ] ];
+
+ $mg = MessageGroups::singleton();
+ $mg->setCache( wfGetCache( 'hash' ) );
+ $mg->recache();
+
+ MessageIndex::setInstance( new HashMessageIndex() );
+ MessageIndex::singleton()->rebuild();
}
public function getTestGroups( &$list ) {
- $messages = array(
+ $messages = [
'translated' => 'bunny',
'untranslated' => 'fanny',
- );
+ ];
$list['test-group'] = new MockWikiMessageGroup( 'test-group', $messages );
return false;
@@ -59,7 +59,7 @@ class MessageCollectionTest extends MediaWikiTestCase {
/** @var TMessage $translated */
$translated = $collection['translated'];
- $this->assertInstanceof( 'TMessage', $translated );
+ $this->assertInstanceOf( 'TMessage', $translated );
$this->assertEquals( 'translated', $translated->key() );
$this->assertEquals( 'bunny', $translated->definition() );
$this->assertEquals( 'pupuliini', $translated->translation() );
@@ -74,7 +74,7 @@ class MessageCollectionTest extends MediaWikiTestCase {
/** @var TMessage $untranslated */
$untranslated = $collection['untranslated'];
- $this->assertInstanceof( 'TMessage', $untranslated );
+ $this->assertInstanceOf( 'TMessage', $untranslated );
$this->assertEquals( null, $untranslated->translation(), 'no translation is null' );
$this->assertEquals( false, $untranslated->getProperty( 'last-translator-text' ) );
$this->assertEquals( false, $untranslated->getProperty( 'last-translator-id' ) );
diff --git a/MLEB/Translate/tests/phpunit/MessageGroupBaseTest.php b/MLEB/Translate/tests/phpunit/MessageGroupBaseTest.php
index e7688bad..305db391 100644
--- a/MLEB/Translate/tests/phpunit/MessageGroupBaseTest.php
+++ b/MLEB/Translate/tests/phpunit/MessageGroupBaseTest.php
@@ -7,15 +7,15 @@ class MessageGroupBaseTest extends MediaWikiTestCase {
*/
protected $group;
- protected $groupConfiguration = array(
- 'BASIC' => array(
+ protected $groupConfiguration = [
+ 'BASIC' => [
'class' => 'FileBasedMessageGroup',
'id' => 'test-id',
'label' => 'Test Label',
'namespace' => 'NS_MEDIAWIKI',
'description' => 'Test description',
- ),
- );
+ ],
+ ];
protected function setUp() {
parent::setUp();
@@ -31,7 +31,7 @@ class MessageGroupBaseTest extends MediaWikiTestCase {
$this->assertEquals(
$this->groupConfiguration,
$this->group->getConfiguration(),
- "configuration should not change."
+ 'configuration should not change.'
);
}
@@ -39,7 +39,7 @@ class MessageGroupBaseTest extends MediaWikiTestCase {
$this->assertEquals(
$this->groupConfiguration['BASIC']['id'],
$this->group->getId(),
- "id comes from config."
+ 'id comes from config.'
);
}
@@ -47,7 +47,7 @@ class MessageGroupBaseTest extends MediaWikiTestCase {
$this->assertEquals(
'en',
$this->group->getSourceLanguage(),
- "source language defaults to en."
+ 'source language defaults to en.'
);
}
@@ -55,19 +55,19 @@ class MessageGroupBaseTest extends MediaWikiTestCase {
$this->assertEquals(
NS_MEDIAWIKI,
$this->group->getNamespace(),
- "should parse string namespace contant."
+ 'should parse string namespace contant.'
);
}
public function testGetNamespaceNumber() {
$conf = $this->groupConfiguration;
- $conf['BASIC']['namespace'] = NS_IMAGE;
+ $conf['BASIC']['namespace'] = NS_FILE;
$this->group = MessageGroupBase::factory( $conf );
$this->assertEquals(
- NS_IMAGE,
+ NS_FILE,
$this->group->getNamespace(),
- "should parse integer namespace number."
+ 'should parse integer namespace number.'
);
}
@@ -77,9 +77,69 @@ class MessageGroupBaseTest extends MediaWikiTestCase {
$this->group = MessageGroupBase::factory( $conf );
$this->assertEquals(
- NS_IMAGE,
+ NS_FILE,
$this->group->getNamespace(),
- "should parse string namespace name."
+ 'should parse string namespace name.'
+ );
+ }
+
+ public function testInsertablesSuggesterClass() {
+ $conf = $this->groupConfiguration;
+ $conf['INSERTABLES']['class'] = 'FakeInsertablesSuggester';
+ $this->group = MessageGroupBase::factory( $conf );
+
+ $this->assertArrayEquals(
+ [ new Insertable( 'Fake', 'Insertables', 'Suggester' ) ],
+ $this->group->getInsertablesSuggester()->getInsertables( '' ),
+ 'should correctly get an InsertablesSuggester using \'class\' option.'
+ );
+ }
+
+ public function testInsertablesSuggesterClasses() {
+ $conf = $this->groupConfiguration;
+ $conf['INSERTABLES']['classes'] = [
+ 'FakeInsertablesSuggester',
+ 'AnotherFakeInsertablesSuggester',
+ ];
+ $this->group = MessageGroupBase::factory( $conf );
+
+ $this->assertArrayEquals(
+ [
+ new Insertable( 'Fake', 'Insertables', 'Suggester' ),
+ new Insertable( 'AnotherFake', 'Insertables', 'Suggester' ),
+ ],
+ $this->group->getInsertablesSuggester()->getInsertables( '' ),
+ 'should correctly get InsertablesSuggesters using \'classes\' option.'
+ );
+ }
+
+ public function testInsertablesSuggesterClassAndClasses() {
+ $conf = $this->groupConfiguration;
+ $conf['INSERTABLES']['class'] = 'FakeInsertablesSuggester';
+ $conf['INSERTABLES']['classes'] = [ 'AnotherFakeInsertablesSuggester' ];
+ $this->group = MessageGroupBase::factory( $conf );
+
+ $this->assertArrayEquals(
+ [
+ new Insertable( 'Fake', 'Insertables', 'Suggester' ),
+ new Insertable( 'AnotherFake', 'Insertables', 'Suggester' ),
+ ],
+ $this->group->getInsertablesSuggester()->getInsertables( '' ),
+ 'should correctly get InsertablesSuggesters using both \'class\' and \'classes\' options.'
+ );
+
+ $conf['INSERTABLES']['classes'][] = 'FakeInsertablesSuggester';
+ $conf['INSERTABLES']['classes'][] = 'AnotherFakeInsertablesSuggester';
+ $this->group = MessageGroupBase::factory( $conf );
+
+ $this->assertArrayEquals(
+ [
+ new Insertable( 'Fake', 'Insertables', 'Suggester' ),
+ new Insertable( 'AnotherFake', 'Insertables', 'Suggester' ),
+ ],
+ $this->group->getInsertablesSuggester()->getInsertables( '' ),
+ 'should correctly get InsertablesSuggesters using ' .
+ 'both \'class\' and \'classes\' options and removing duplicates.'
);
}
@@ -93,3 +153,15 @@ class MessageGroupBaseTest extends MediaWikiTestCase {
MessageGroupBase::factory( $conf );
}
}
+
+class FakeInsertablesSuggester implements InsertablesSuggester {
+ public function getInsertables( $text ) {
+ return [ new Insertable( 'Fake', 'Insertables', 'Suggester' ) ];
+ }
+}
+
+class AnotherFakeInsertablesSuggester implements InsertablesSuggester {
+ public function getInsertables( $text ) {
+ return [ new Insertable( 'AnotherFake', 'Insertables', 'Suggester' ) ];
+ }
+}
diff --git a/MLEB/Translate/tests/phpunit/MessageGroupStatesUpdaterJobTest.php b/MLEB/Translate/tests/phpunit/MessageGroupStatesUpdaterJobTest.php
index 542cf5f2..078868ce 100644
--- a/MLEB/Translate/tests/phpunit/MessageGroupStatesUpdaterJobTest.php
+++ b/MLEB/Translate/tests/phpunit/MessageGroupStatesUpdaterJobTest.php
@@ -9,24 +9,22 @@ class MessageGroupStatesUpdaterJobTest extends MediaWikiTestCase {
parent::setUp();
global $wgHooks;
- $this->setMwGlobals( array(
+ $this->setMwGlobals( [
'wgHooks' => $wgHooks,
- 'wgTranslateCC' => array(),
- 'wgTranslateMessageIndex' => array( 'DatabaseMessageIndex' ),
- 'wgTranslateWorkflowStates' => false,
- 'wgTranslateGroupFiles' => array(),
- 'wgTranslateTranslationServices' => array(),
- 'wgTranslateMessageNamespaces' => array( NS_MEDIAWIKI ),
- ) );
- $wgHooks['TranslatePostInitGroups'] = array( array( $this, 'getTestGroups' ) );
- MessageGroups::clearCache();
- MessageIndexRebuildJob::newJob()->run();
+ 'wgTranslateTranslationServices' => [],
+ 'wgTranslateMessageNamespaces' => [ NS_MEDIAWIKI ],
+ ] );
+ $wgHooks['TranslatePostInitGroups'] = [ [ $this, 'getTestGroups' ] ];
+
+ $mg = MessageGroups::singleton();
+ $mg->setCache( wfGetCache( 'hash' ) );
+ $mg->recache();
}
public function getTestGroups( &$list ) {
- $messages = array( 'key1' => 'msg1', 'key2' => 'msg2' );
+ $messages = [ 'key1' => 'msg1', 'key2' => 'msg2' ];
$list['group-trans'] = new MessageGroupWithTransitions( 'group-trans', $messages );
- $list['group-notrans'] = new MessageGroupWithoutTransitions( 'group-notrans', array() );
+ $list['group-notrans'] = new MessageGroupWithoutTransitions( 'group-notrans', [] );
return false;
}
@@ -43,23 +41,23 @@ class MessageGroupStatesUpdaterJobTest extends MediaWikiTestCase {
* @dataProvider provideStatValues
*/
public function testGetStatValue( $type, $expected ) {
- $stats = array(
+ $stats = [
MessageGroupStats::TOTAL => 666,
MessageGroupStats::FUZZY => 111,
MessageGroupStats::TRANSLATED => 222,
MessageGroupStats::PROOFREAD => 111,
- );
+ ];
$actual = MessageGroupStatesUpdaterJob::getStatValue( $stats, $type );
$this->assertEquals( $expected, $actual );
}
public static function provideStatValues() {
- return array(
- array( 'UNTRANSLATED', 333 ),
- array( 'OUTDATED', 111 ),
- array( 'TRANSLATED', 222 ),
- array( 'PROOFREAD', 111 ),
- );
+ return [
+ [ 'UNTRANSLATED', 333 ],
+ [ 'OUTDATED', 111 ],
+ [ 'TRANSLATED', 222 ],
+ [ 'PROOFREAD', 111 ],
+ ];
}
/**
@@ -71,38 +69,38 @@ class MessageGroupStatesUpdaterJobTest extends MediaWikiTestCase {
}
public static function provideMatchCondition() {
- return array(
- array( true, 0, 'ZERO', 666 ),
- array( false, 1, 'ZERO', 666 ),
- array( true, 1, 'NONZERO', 666 ),
- array( false, 0, 'NONZERO', 666 ),
- array( true, 666, 'MAX', 666 ),
- array( false, 0, 'MAX', 666 ),
- array( false, 12, 'MAX', 666 ),
- );
+ return [
+ [ true, 0, 'ZERO', 666 ],
+ [ false, 1, 'ZERO', 666 ],
+ [ true, 1, 'NONZERO', 666 ],
+ [ false, 0, 'NONZERO', 666 ],
+ [ true, 666, 'MAX', 666 ],
+ [ false, 0, 'MAX', 666 ],
+ [ false, 12, 'MAX', 666 ],
+ ];
}
public function testGetNewState() {
$group = MessageGroups::getGroup( 'group-trans' );
$transitions = $group->getMessageGroupStates()->getConditions();
- $stats = array( 5, 0, 0, 0 );
+ $stats = [ 5, 0, 0, 0 ];
$newstate = MessageGroupStatesUpdaterJob::getNewState( $stats, $transitions );
$this->assertEquals( 'unset', $newstate, 'all zero, should be unset' );
- $stats = array( 5, 1, 0, 0 );
+ $stats = [ 5, 1, 0, 0 ];
$newstate = MessageGroupStatesUpdaterJob::getNewState( $stats, $transitions );
$this->assertEquals( 'inprogress', $newstate, 'one translated message' );
- $stats = array( 5, 0, 1, 0 );
+ $stats = [ 5, 0, 1, 0 ];
$newstate = MessageGroupStatesUpdaterJob::getNewState( $stats, $transitions );
$this->assertEquals( 'inprogress', $newstate, 'one outdated message' );
- $stats = array( 5, 1, 1, 0 );
+ $stats = [ 5, 1, 1, 0 ];
$newstate = MessageGroupStatesUpdaterJob::getNewState( $stats, $transitions );
$this->assertEquals( 'inprogress', $newstate, 'one translated and one outdated message' );
- $stats = array( 5, 5, 0, 0 );
+ $stats = [ 5, 5, 0, 0 ];
$newstate = MessageGroupStatesUpdaterJob::getNewState( $stats, $transitions );
$this->assertEquals( 'proofreading', $newstate, 'all translated' );
}
@@ -191,7 +189,7 @@ class MockMessageHandle extends MessageHandle {
}
public function getGroupIds() {
- return array( 'group-trans', 'group-notrans' );
+ return [ 'group-trans', 'group-notrans' ];
}
}
@@ -203,20 +201,20 @@ class MessageGroupWithoutTransitions extends MockWikiMessageGroup {
class MessageGroupWithTransitions extends MockWikiMessageGroup {
public function getMessageGroupStates() {
- return new MessageGroupStates( array(
- 'state conditions' => array(
- array( 'ready', array( 'PROOFREAD' => 'MAX' ) ),
- array( 'proofreading', array( 'TRANSLATED' => 'MAX' ) ),
- array(
+ return new MessageGroupStates( [
+ 'state conditions' => [
+ [ 'ready', [ 'PROOFREAD' => 'MAX' ] ],
+ [ 'proofreading', [ 'TRANSLATED' => 'MAX' ] ],
+ [
'unset',
- array(
+ [
'UNTRANSLATED' => 'MAX',
'OUTDATED' => 'ZERO',
'TRANSLATED' => 'ZERO'
- )
- ),
- array( 'inprogress', array( 'UNTRANSLATED' => 'NONZERO' ) ),
- )
- ) );
+ ]
+ ],
+ [ 'inprogress', [ 'UNTRANSLATED' => 'NONZERO' ] ],
+ ]
+ ] );
}
}
diff --git a/MLEB/Translate/tests/phpunit/MessageGroupsTest.php b/MLEB/Translate/tests/phpunit/MessageGroupsTest.php
index a2543fa6..1ab9fad5 100644
--- a/MLEB/Translate/tests/phpunit/MessageGroupsTest.php
+++ b/MLEB/Translate/tests/phpunit/MessageGroupsTest.php
@@ -3,35 +3,37 @@
* Unit tests.
*
* @author Niklas Laxström
- * @copyright Copyright © 2012 Niklas Laxström
* @file
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
* @group Database
+ * ^ See AggregateMessageGroup::getGroups -> MessageGroups::getPriority
*/
class MessageGroupsTest extends MediaWikiTestCase {
protected function setUp() {
parent::setUp();
- $conf = array(
+ $conf = [
__DIR__ . '/data/ParentGroups.yaml',
- );
+ ];
global $wgHooks;
- $this->setMwGlobals( array(
+ $this->setMwGlobals( [
'wgHooks' => $wgHooks,
- 'wgTranslateCC' => array(),
- 'wgTranslateMessageIndex' => array( 'DatabaseMessageIndex' ),
- 'wgTranslateWorkflowStates' => false,
- 'wgEnablePageTranslation' => false,
'wgTranslateGroupFiles' => $conf,
- 'wgTranslateTranslationServices' => array(),
- ) );
- $wgHooks['TranslatePostInitGroups'] = array();
- MessageGroups::clearCache();
- MessageIndexRebuildJob::newJob()->run();
+ 'wgTranslateTranslationServices' => [],
+ 'wgTranslateMessageNamespaces' => [ NS_MEDIAWIKI ],
+ ] );
+ $wgHooks['TranslatePostInitGroups'] = [ 'MessageGroups::getConfiguredGroups' ];
+
+ $mg = MessageGroups::singleton();
+ $mg->setCache( wfGetCache( 'hash' ) );
+ $mg->recache();
+
+ MessageIndex::setInstance( new HashMessageIndex() );
+ MessageIndex::singleton()->rebuild();
}
/**
@@ -44,45 +46,45 @@ class MessageGroupsTest extends MediaWikiTestCase {
}
public static function provideGroups() {
- $cases = array();
- $cases[] = array(
- array( array( 'root1' ), array( 'root2' ) ),
+ $cases = [];
+ $cases[] = [
+ [ [ 'root1' ], [ 'root2' ] ],
'twoparents'
- );
+ ];
- $cases[] = array(
- array( array( 'root3', 'sub1' ), array( 'root3', 'sub2' ) ),
+ $cases[] = [
+ [ [ 'root3', 'sub1' ], [ 'root3', 'sub2' ] ],
'oneparent-twopaths'
- );
+ ];
- $cases[] = array(
- array(
- array( 'root4' ),
- array( 'root4', 'nested1' ),
- array( 'root4', 'nested1', 'nested2' ),
- array( 'root4', 'nested2' ),
- ),
+ $cases[] = [
+ [
+ [ 'root4' ],
+ [ 'root4', 'nested1' ],
+ [ 'root4', 'nested1', 'nested2' ],
+ [ 'root4', 'nested2' ],
+ ],
'multilevelnested'
- );
+ ];
return $cases;
}
public function testHaveSingleSourceLanguage() {
- $this->setMwGlobals( array(
- 'wgTranslateGroupFiles' => array( __DIR__ . '/data/MixedSourceLanguageGroups.yaml' ),
- ) );
- MessageGroups::clearCache();
+ $this->setMwGlobals( [
+ 'wgTranslateGroupFiles' => [ __DIR__ . '/data/MixedSourceLanguageGroups.yaml' ],
+ ] );
+ MessageGroups::singleton()->recache();
$enGroup1 = MessageGroups::getGroup( 'EnglishGroup1' );
$enGroup2 = MessageGroups::getGroup( 'EnglishGroup2' );
$teGroup1 = MessageGroups::getGroup( 'TeluguGroup1' );
$this->assertEquals( 'en', MessageGroups::haveSingleSourceLanguage(
- array( $enGroup1, $enGroup2 ) )
+ [ $enGroup1, $enGroup2 ] )
);
$this->assertEquals( '', MessageGroups::haveSingleSourceLanguage(
- array( $enGroup1, $enGroup2, $teGroup1 ) )
+ [ $enGroup1, $enGroup2, $teGroup1 ] )
);
}
}
diff --git a/MLEB/Translate/tests/phpunit/MessageIndexRebuildJobTest.php b/MLEB/Translate/tests/phpunit/MessageIndexRebuildJobTest.php
index f1aa1fd1..a756c069 100644
--- a/MLEB/Translate/tests/phpunit/MessageIndexRebuildJobTest.php
+++ b/MLEB/Translate/tests/phpunit/MessageIndexRebuildJobTest.php
@@ -4,7 +4,7 @@
*
* @file
* @author Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -13,25 +13,31 @@
* @group medium
*/
class MessageIndexRebuildJobTest extends MediaWikiTestCase {
- protected $config = array();
+ protected $config = [];
public function setUp() {
parent::setUp();
- $this->setMwGlobals( array(
- 'wgTranslateCC' => array(),
- 'wgTranslateMessageIndex' => array( 'DatabaseMessageIndex' ),
- 'wgTranslateWorkflowStates' => false,
- 'wgEnablePageTranslation' => false,
- 'wgTranslateGroupFiles' => array(),
- 'wgTranslateTranslationServices' => array(),
+
+ global $wgHooks;
+ $this->setMwGlobals( [
+ 'wgHooks' => $wgHooks,
+ 'wgTranslateTranslationServices' => [],
'wgTranslateDelayedMessageIndexRebuild' => false
- ) );
+ ] );
+ $wgHooks['TranslatePostInitGroups'] = [];
+
+ $mg = MessageGroups::singleton();
+ $mg->setCache( wfGetCache( 'hash' ) );
+ $mg->recache();
+
+ MessageIndex::setInstance( new HashMessageIndex() );
+ MessageIndex::singleton()->rebuild();
}
public function testInsertImmediate() {
global $wgTranslateDelayedMessageIndexRebuild;
$wgTranslateDelayedMessageIndexRebuild = false;
- MessageIndexRebuildJob::newJob()->insert();
+ MessageIndexRebuildJob::newJob()->insertIntoJobQueue();
$this->assertFalse(
JobQueueGroup::singleton()->get( 'MessageIndexRebuildJob' )->pop(),
'There is no job in the JobQueue'
@@ -41,13 +47,13 @@ class MessageIndexRebuildJobTest extends MediaWikiTestCase {
public function testInsertDelayed() {
global $wgTranslateDelayedMessageIndexRebuild;
$wgTranslateDelayedMessageIndexRebuild = true;
- MessageIndexRebuildJob::newJob()->insert();
+ MessageIndexRebuildJob::newJob()->insertIntoJobQueue();
$job = JobQueueGroup::singleton()->get( 'MessageIndexRebuildJob' )->pop();
$this->assertInstanceOf(
'MessageIndexRebuildJob',
$job,
'There is a job in the JobQueue'
);
- $this->assertTrue( $job->run(), 'Job is executed succesfully' );
+ $this->assertTrue( $job->run(), 'Job is executed successfully' );
}
}
diff --git a/MLEB/Translate/tests/phpunit/MessageIndexTest.php b/MLEB/Translate/tests/phpunit/MessageIndexTest.php
index 54df4f59..6d61f4be 100644
--- a/MLEB/Translate/tests/phpunit/MessageIndexTest.php
+++ b/MLEB/Translate/tests/phpunit/MessageIndexTest.php
@@ -4,8 +4,7 @@
*
* @file
* @author Niklas Laxström
- * @copyright Copyright © 2012-2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -15,10 +14,103 @@
class MessageIndexTest extends MediaWikiTestCase {
protected function setUp() {
parent::setUp();
- $this->setMwGlobals( array(
+ $this->setMwGlobals( [
'wgTranslateCacheDirectory' => $this->getNewTempDirectory(),
- 'wgTranslateTranslationServices' => array(),
- ) );
+ 'wgTranslateTranslationServices' => [],
+ ] );
+ }
+
+ /**
+ * @dataProvider provideTestGetArrayDiff
+ */
+ public function testGetArrayDiff( $expected, $old, $new ) {
+ $actual = MessageIndex::getArrayDiff( $old, $new );
+ $this->assertEquals( $expected['keys'], $actual['keys'], 'key diff' );
+ $this->assertEquals( $expected['values'], $actual['values'], 'value diff' );
+ }
+
+ public function provideTestGetArrayDiff() {
+ $tests = [];
+
+ // Addition
+ $old = [];
+ $new = [
+ 'label' => 'carpet',
+ ];
+ $expected = [
+ 'keys' => [
+ 'add' => [
+ 'label' => [
+ [],
+ [ 'carpet' ],
+ ],
+ ],
+ 'del' => [],
+ 'mod' => [],
+ ],
+ 'values' => [ 'carpet' ],
+ ];
+ $tests[] = [ $expected, $old, $new ];
+
+ // Deletion
+ $old = [
+ 'bath' => [ 'goal', 'morals', 'coronation' ],
+ ];
+ $new = [];
+ $expected = [
+ 'keys' => [
+ 'add' => [],
+ 'del' => [
+ 'bath' => [
+ [ 'goal', 'morals', 'coronation' ],
+ [],
+ ],
+ ],
+ 'mod' => [],
+ ],
+ 'values' => [ 'goal', 'morals', 'coronation' ],
+ ];
+ $tests[] = [ $expected, $old, $new ];
+
+ // No change
+ $old = $new = [
+ 'label' => 'carpet',
+ 'salt' => [ 'morals' ],
+ 'bath' => [ 'goal', 'morals', 'coronation' ],
+ ];
+ $expected = [
+ 'keys' => [
+ 'add' => [],
+ 'del' => [],
+ 'mod' => [],
+ ],
+ 'values' => [],
+ ];
+ $tests[] = [ $expected, $old, $new ];
+
+ // Modification
+ $old = [
+ 'bath' => [ 'goal', 'morals', 'coronation' ],
+ ];
+ $new = [
+ 'bath' => [ 'goal', 'beliefs', 'coronation', 'showcase' ],
+ ];
+ $expected = [
+ 'keys' => [
+ 'add' => [],
+ 'del' => [],
+ 'mod' => [
+ 'bath' => [
+ [ 'goal', 'morals', 'coronation' ],
+ [ 'goal', 'beliefs', 'coronation', 'showcase' ],
+ ],
+ ],
+ ],
+ 'values' => [ 'morals', 'beliefs', 'showcase' ],
+ ];
+ $tests[] = [ $expected, $old, $new ];
+
+ return $tests;
}
protected static function getTestData() {
@@ -36,7 +128,8 @@ class MessageIndexTest extends MediaWikiTestCase {
public function testMessageIndexImplementation( $mi ) {
$data = self::getTestData();
/** @var TestableDatabaseMessageIndex|TestableCDBMessageIndex|TestableSerializedMessageIndex */
- $mi->store( $data );
+ $diff = MessageIndex::getArrayDiff( [], $data );
+ $mi->store( $data, $diff['keys'] );
$tests = array_rand( $data, 10 );
foreach ( $tests as $key ) {
@@ -67,47 +160,52 @@ class MessageIndexTest extends MediaWikiTestCase {
}
public static function provideMessageIndexImplementation() {
- return array(
- array( new TestableDatabaseMessageIndex() ),
- array( new TestableCDBMessageIndex() ),
- array( new TestableSerializedMessageIndex() ),
+ return [
+ [ new TestableDatabaseMessageIndex() ],
+ [ new TestableCDBMessageIndex() ],
+ [ new TestableSerializedMessageIndex() ],
+ [ new TestableHashMessageIndex() ],
// Not testing CachedMessageIndex because there is no easy way to mockup those.
- );
+ ];
}
}
class TestableDatabaseMessageIndex extends DatabaseMessageIndex {
- // @codingStandardsIgnoreStart PHP CodeSniffer warns "Useless method overriding
- // detected", but store() and get() are protected in parent.
- public function store( array $a ) {
- parent::store( $a );
+ public function store( array $a, array $diff ) {
+ parent::store( $a, $diff );
}
public function get( $a ) {
return parent::get( $a );
- } // @codingStandardsIgnoreEnd
+ }
}
class TestableCDBMessageIndex extends CDBMessageIndex {
- // @codingStandardsIgnoreStart PHP CodeSniffer warns "Useless method overriding
- // detected", but store() and get() are protected in parent.
- public function store( array $a ) {
- parent::store( $a );
+ public function store( array $a, array $diff ) {
+ parent::store( $a, $diff );
}
public function get( $a ) {
return parent::get( $a );
- } // @codingStandardsIgnoreEnd
+ }
}
class TestableSerializedMessageIndex extends SerializedMessageIndex {
- // @codingStandardsIgnoreStart PHP CodeSniffer warns "Useless method overriding
- // detected", but store() and get() are protected in parent.
- public function store( array $a ) {
- parent::store( $a );
+ public function store( array $a, array $diff ) {
+ parent::store( $a, $diff );
}
public function get( $a ) {
return parent::get( $a );
- } // @codingStandardsIgnoreEnd
+ }
+}
+
+class TestableHashMessageIndex extends HashMessageIndex {
+ public function store( array $a, array $diff ) {
+ parent::store( $a, $diff );
+ }
+
+ public function get( $a ) {
+ return parent::get( $a );
+ }
}
diff --git a/MLEB/Translate/tests/phpunit/MockFileBasedMessageGroup.php b/MLEB/Translate/tests/phpunit/MockFileBasedMessageGroup.php
index 6685505a..b0baa86f 100644
--- a/MLEB/Translate/tests/phpunit/MockFileBasedMessageGroup.php
+++ b/MLEB/Translate/tests/phpunit/MockFileBasedMessageGroup.php
@@ -5,12 +5,12 @@
* @file
* @author Niklas Laxström
* @copyright Copyright © 2012-2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
class MockFileBasedMessageGroup extends FileBasedMessageGroup {
public function load( $code ) {
- return array( $this->getId() . '-messagekey' => 'üga' );
+ return [ $this->getId() . '-messagekey' => 'üga' ];
}
public function exists() {
diff --git a/MLEB/Translate/tests/phpunit/MockMessageCollectionForExport.php b/MLEB/Translate/tests/phpunit/MockMessageCollectionForExport.php
index d7f40459..0f260f85 100644
--- a/MLEB/Translate/tests/phpunit/MockMessageCollectionForExport.php
+++ b/MLEB/Translate/tests/phpunit/MockMessageCollectionForExport.php
@@ -4,7 +4,7 @@
* @author Niklas Laxström
* @file
* @copyright Copyright © 2012-2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -24,15 +24,15 @@ class MockMessageCollectionForExport extends MessageCollection {
$msg = new FatMessage( 'untranslatedmsg', 'definition' );
$this->messages['untranslatedmsg'] = $msg;
- $this->tags = array(
- 'fuzzy' => array( 'fuzzymsg' ),
- );
+ $this->tags = [
+ 'fuzzy' => [ 'fuzzymsg' ],
+ ];
$this->keys = array_flip( array_keys( $this->messages ) );
}
public function getAuthors() {
- return array( 'Nike the bunny' );
+ return [ 'Nike the bunny' ];
}
public function getLanguage() {
diff --git a/MLEB/Translate/tests/phpunit/MockWikiMessageGroup.php b/MLEB/Translate/tests/phpunit/MockWikiMessageGroup.php
index 5801bbe3..f10e1903 100644
--- a/MLEB/Translate/tests/phpunit/MockWikiMessageGroup.php
+++ b/MLEB/Translate/tests/phpunit/MockWikiMessageGroup.php
@@ -6,7 +6,7 @@
* @author Niklas Laxström
* @author Siebrand Mazeland
* @copyright Copyright © 2008-2013, Niklas Laxström, Siebrand Mazeland
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
class MockWikiMessageGroup extends WikiMessageGroup {
diff --git a/MLEB/Translate/tests/phpunit/PageTranslationParserTest.php b/MLEB/Translate/tests/phpunit/PageTranslationParserTest.php
index 8abd4976..1e01c669 100644
--- a/MLEB/Translate/tests/phpunit/PageTranslationParserTest.php
+++ b/MLEB/Translate/tests/phpunit/PageTranslationParserTest.php
@@ -4,7 +4,7 @@
*
* @author Niklas Laxström
* @copyright Copyright © 2010-2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
* @file
*/
@@ -18,7 +18,7 @@ class PageTranslationParserTest extends MediaWikiTestCase {
$dir = __DIR__;
$testFiles = glob( "$dir/pagetranslation/*.ptfile" );
foreach ( $testFiles as $i => $file ) {
- $testFiles[$i] = array( $file );
+ $testFiles[$i] = [ $file ];
}
return $testFiles;
@@ -28,13 +28,12 @@ class PageTranslationParserTest extends MediaWikiTestCase {
* @dataProvider provideTestFiles
*/
public function testParsing( $file ) {
-
$filename = basename( $file );
list( $pagename, ) = explode( '.', $filename, 2 );
$title = Title::newFromText( $pagename );
$translatablePage = TranslatablePage::newFromText( $title, file_get_contents( $file ) );
- $pattern = $file;
+ $pattern = dirname( $file ) . "/$pagename";
if ( $filename === 'FailNotAtomic.ptfile' ) {
$this->markTestSkipped( 'Extended validation not yet implemented' );
@@ -51,12 +50,12 @@ class PageTranslationParserTest extends MediaWikiTestCase {
if ( file_exists( "$pattern.ptsource" ) ) {
$source = $parse->getSourcePageText();
- $this->assertEquals( $source, file_get_contents( "$pattern.ptsource" ) );
+ $this->assertEquals( file_get_contents( "$pattern.ptsource" ), $source );
}
if ( file_exists( "$pattern.pttarget" ) ) {
- $target = $parse->getTranslationPageText( MessageCollection::newEmpty( 'foo' ) );
- $this->assertEquals( $target, file_get_contents( "$pattern.pttarget" ) );
+ $target = $parse->getTranslationPageText( [] );
+ $this->assertEquals( file_get_contents( "$pattern.pttarget" ), $target );
}
// Custom tests written in php
diff --git a/MLEB/Translate/tests/phpunit/PageTranslationTaggingTest.php b/MLEB/Translate/tests/phpunit/PageTranslationTaggingTest.php
index e4b5b6db..2e2a6c20 100644
--- a/MLEB/Translate/tests/phpunit/PageTranslationTaggingTest.php
+++ b/MLEB/Translate/tests/phpunit/PageTranslationTaggingTest.php
@@ -4,24 +4,25 @@
* @group Database
* @group medium
*/
-class PageTranslationTaggingText extends MediaWikiTestCase {
+class PageTranslationTaggingTest extends MediaWikiTestCase {
protected function setUp() {
parent::setUp();
global $wgHooks;
- $this->setMwGlobals( array(
+ $this->setMwGlobals( [
'wgHooks' => $wgHooks,
- 'wgTranslateCC' => array(),
- 'wgTranslateMessageIndex' => array( 'DatabaseMessageIndex' ),
- 'wgTranslateWorkflowStates' => false,
'wgEnablePageTranslation' => true,
- 'wgTranslateGroupFiles' => array(),
- 'wgTranslateTranslationServices' => array(),
- ) );
+ 'wgTranslateTranslationServices' => [],
+ ] );
TranslateHooks::setupTranslate();
- $wgHooks['TranslatePostInitGroups'] = array();
- MessageGroups::clearCache();
- MessageIndexRebuildJob::newJob()->run();
+ $wgHooks['TranslatePostInitGroups'] = [ 'MessageGroups::getTranslatablePages' ];
+
+ $mg = MessageGroups::singleton();
+ $mg->setCache( wfGetCache( 'hash' ) );
+ $mg->recache();
+
+ MessageIndex::setInstance( new HashMessageIndex() );
+ MessageIndex::singleton()->rebuild();
}
public function testNormalPage() {
@@ -64,15 +65,15 @@ class PageTranslationTaggingText extends MediaWikiTestCase {
$status = $page->doEditContent( $content, 'Test case' );
$latest = $status->value['revision']->getId();
- $translatablePage->addMarkedTag( $latest, array( 'foo' ) );
+ $translatablePage->addMarkedTag( $latest, [ 'foo' ] );
$this->assertSame( $latest, $translatablePage->getReadyTag(), 'Ready tag was added' );
$this->assertSame( $latest, $translatablePage->getMarkedTag(), 'Marked tag was added' );
global $wgUser;
$cascade = false;
$page->doUpdateRestrictions(
- array( 'edit' => 'sysop' ),
- array(),
+ [ 'edit' => 'sysop' ],
+ [],
$cascade,
'Test case',
$wgUser
@@ -89,6 +90,8 @@ class PageTranslationTaggingText extends MediaWikiTestCase {
$translatablePage->getMarkedTag(),
'Marked tag was not updated after protection'
);
+
+ $page->doUpdateRestrictions( [], [], $cascade, 'Test case', $wgUser );
}
public function testTranslationPageRestrictions() {
@@ -108,7 +111,7 @@ class PageTranslationTaggingText extends MediaWikiTestCase {
$revision = $status->value['revision']->getId();
$translatablePage = TranslatablePage::newFromRevision( $title, $revision );
$translatablePage->addMarkedTag( $revision );
- MessageGroups::clearCache();
+ MessageGroups::singleton()->recache();
$translationPage = Title::newFromText( 'Translatable page/fi' );
TranslateRenderJob::newJob( $translationPage )->run();
diff --git a/MLEB/Translate/tests/phpunit/ResourcesOrderTest.php b/MLEB/Translate/tests/phpunit/ResourcesOrderTest.php
index cd7f3c26..612840b2 100644
--- a/MLEB/Translate/tests/phpunit/ResourcesOrderTest.php
+++ b/MLEB/Translate/tests/phpunit/ResourcesOrderTest.php
@@ -5,13 +5,13 @@
* @file
* @author Niklas Laxström
* @copyright Copyright © 2012-2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
class ResourcesOrderTest extends MediaWikiTestCase {
public function setUp() {
parent::setUp();
- $this->setMwGlobals( 'wgResourceModules', array() );
+ $this->setMwGlobals( 'wgResourceModules', [] );
}
public function testAlphabeticalOrder() {
@@ -23,7 +23,7 @@ class ResourcesOrderTest extends MediaWikiTestCase {
$this->assertEquals(
array_keys( $sorted ),
array_keys( $wgResourceModules ),
- "Modules are defined in alphabetical order."
+ 'Modules are defined in alphabetical order.'
);
}
}
diff --git a/MLEB/Translate/tests/phpunit/SolrTTMServerTest.php b/MLEB/Translate/tests/phpunit/SolrTTMServerTest.php
index a3f5dffc..ac0a19d6 100644
--- a/MLEB/Translate/tests/phpunit/SolrTTMServerTest.php
+++ b/MLEB/Translate/tests/phpunit/SolrTTMServerTest.php
@@ -4,8 +4,7 @@
*
* @file
* @author Niklas Laxström
- * @copyright Copyright © 2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -16,29 +15,31 @@ class SolrTTMServerTest extends MediaWikiTestCase {
protected function setUp() {
parent::setUp();
- global $wgHooks, $wgTranslateTranslationServices, $wgTranslateTestTTMServer;
- $this->setMwGlobals( array(
+ global $wgHooks,
+ $wgTranslateTranslationServices,
+ $wgTranslateTranslationDefaultService,
+ $wgTranslateTestTTMServer;
+ $this->setMwGlobals( [
'wgHooks' => $wgHooks,
- 'wgTranslateCC' => array(),
- 'wgTranslateMessageIndex' => array( 'DatabaseMessageIndex' ),
- 'wgTranslateWorkflowStates' => false,
- 'wgEnablePageTranslation' => false,
- 'wgTranslateGroupFiles' => array(),
- 'wgTranslateTranslationServices' => array(),
- ) );
- $wgTranslateTranslationServices['TTMServer'] = $wgTranslateTestTTMServer;
-
- $wgHooks['TranslatePostInitGroups'] = array( array( $this, 'addGroups' ) );
- MessageGroups::clearCache();
- MessageIndexRebuildJob::newJob()->run();
- // Also clear the "old" value when running multiple tests together
- MessageIndexRebuildJob::newJob()->run();
- self::runJobs();
+ 'wgTranslateTranslationServices' => [],
+ ] );
+ // because var names are too long...
+ $default = $wgTranslateTranslationDefaultService;
+ $wgTranslateTranslationServices[$default] = $wgTranslateTestTTMServer;
+
+ $wgHooks['TranslatePostInitGroups'] = [ [ $this, 'addGroups' ] ];
+
+ $mg = MessageGroups::singleton();
+ $mg->setCache( wfGetCache( 'hash' ) );
+ $mg->recache();
+
+ MessageIndex::setInstance( new HashMessageIndex() );
+ MessageIndex::singleton()->rebuild();
}
public function addGroups( &$list ) {
- $list['ttmserver-test'] = new MockWikiMessageGroup( 'ttmserver-test', array(
- 'one' => '1', 'two' => 'kaksi', 'three' => '3' ) );
+ $list['ttmserver-test'] = new MockWikiMessageGroup( 'ttmserver-test', [
+ 'one' => '1', 'two' => 'kaksi', 'three' => '3' ] );
return true;
}
@@ -80,10 +81,10 @@ class SolrTTMServerTest extends MediaWikiTestCase {
foreach ( $result as $doc ) {
// @todo FIXME Empty foreach statement.
}
- $this->assertEquals( wfWikiId(), $doc->wiki );
+ $this->assertEquals( wfWikiID(), $doc->wiki );
$this->assertEquals( 'en', $doc->language );
$this->assertEquals( '1', $doc->content );
- $this->assertEquals( array( 'ttmserver-test' ), $doc->group );
+ $this->assertEquals( [ 'ttmserver-test' ], $doc->group );
// Add one translation
$title = Title::newFromText( 'MediaWiki:one/fi' );
@@ -101,7 +102,7 @@ class SolrTTMServerTest extends MediaWikiTestCase {
// @todo FIXME Empty foreach statement.
}
$this->assertEquals( 'yksi', $doc->content );
- $this->assertEquals( array( 'ttmserver-test' ), $doc->group );
+ $this->assertEquals( [ 'ttmserver-test' ], $doc->group );
// Update definition
$title = Title::newFromText( 'MediaWiki:one/en' );
@@ -143,9 +144,9 @@ class SolrTTMServerTest extends MediaWikiTestCase {
// And now the messages should be orphaned
global $wgHooks;
- $wgHooks['TranslatePostInitGroups'] = array();
- MessageGroups::clearCache();
- MessageIndexRebuildJob::newJob()->run();
+ $wgHooks['TranslatePostInitGroups'] = [];
+ MessageGroups::singleton()->recache();
+ MessageIndex::singleton()->rebuild();
self::runJobs();
$select = $solarium->createSelect();
diff --git a/MLEB/Translate/tests/phpunit/SpecialPagesTest.php b/MLEB/Translate/tests/phpunit/SpecialPagesTest.php
index 0521cb1c..4a412da8 100644
--- a/MLEB/Translate/tests/phpunit/SpecialPagesTest.php
+++ b/MLEB/Translate/tests/phpunit/SpecialPagesTest.php
@@ -4,7 +4,7 @@
*
* @file
* @author Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -17,22 +17,30 @@ class SpecialPagesTest extends MediaWikiTestCase {
protected function setUp() {
parent::setUp();
- $this->setMwGlobals( array(
+ global $wgHooks;
+ $this->setMwGlobals( [
+ 'wgHooks' => $wgHooks,
+ 'wgTranslateTranslationServices' => [],
'wgTranslateCacheDirectory' => $this->getNewTempDirectory(),
- 'wgTranslateMessageIndex' => array( 'DatabaseMessageIndex' ),
- 'wgDeprecationReleaseLimit' => 1.22,
- 'wgTranslateTranslationServices' => array(),
- ) );
+ ] );
+ $wgHooks['TranslatePostInitGroups'] = [];
+
+ $mg = MessageGroups::singleton();
+ $mg->setCache( wfGetCache( 'hash' ) );
+ $mg->recache();
+
+ MessageIndex::setInstance( new HashMessageIndex() );
+ MessageIndex::singleton()->rebuild();
}
public static function provideSpecialPages() {
require __DIR__ . '/../../Autoload.php';
global $wgSpecialPages;
- $pages = array();
+ $pages = [];
foreach ( $wgSpecialPages as $name => $class ) {
if ( is_string( $class ) && isset( $al[$class] ) ) {
- $pages[] = array( $name );
+ $pages[] = [ $name ];
}
}
@@ -43,9 +51,8 @@ class SpecialPagesTest extends MediaWikiTestCase {
* @dataProvider provideSpecialPages
*/
public function testSpecialPage( $name ) {
- $page = SpecialPageFactory::getPage( $name );
- // @todo Change to getPageTitle() when lowest supported version is 1.23.
- $title = $page->getTitle();
+ $page = TranslateUtils::getSpecialPage( $name );
+ $title = $page->getPageTitle();
$context = RequestContext::newExtraneousContext( $title );
$page->setContext( $context );
@@ -60,7 +67,7 @@ class SpecialPagesTest extends MediaWikiTestCase {
wfDebug( 'Page error caught; expected.' );
}
- $this->assertTrue( true, "Special page $name was executed succesfully with anon user" );
+ $this->assertTrue( true, "Special page $name was executed successfully with anon user" );
$user = new MockSuperUser();
$context->setUser( $user );
diff --git a/MLEB/Translate/tests/phpunit/StringMatcherTest.php b/MLEB/Translate/tests/phpunit/StringMatcherTest.php
index cf93ad47..b38b9b8a 100644
--- a/MLEB/Translate/tests/phpunit/StringMatcherTest.php
+++ b/MLEB/Translate/tests/phpunit/StringMatcherTest.php
@@ -15,34 +15,35 @@ class StringMatcherTest extends MediaWikiTestCase {
$mangled = $matcher->mangle( $key );
$title = Title::makeTitleSafe( NS_MEDIAWIKI, $mangled );
$this->assertInstanceOf( 'Title', $title, "Key '$mangled' did not produce valid title" );
- $unmangled = $matcher->unMangle( $mangled );
+ $unmangled = $matcher->unmangle( $mangled );
$this->assertEquals( $key, $unmangled, 'Mangling is reversable' );
$this->assertEquals( $expected, $mangled, 'Message is prefixed correctly' );
}
public function messageKeyProvider() {
// The fourth parameter causes the key to be prefixed or unprefixed
- $keys = array(
- array( 'key', 'p-key', 'p-', array( 'key' ), 'Exact match' ),
- array( 'key', 'key', 'p-', array( 'bar' ), 'Exact not match' ),
- array( 'key', 'p-key', 'p-', array( 'k*' ), 'Prefix match' ),
- array( 'key', 'key', 'p-', array( 'b*' ), 'Prefix not match' ),
- array( 'key', 'p-key', 'p-', array( '*y' ), 'Suffix match' ),
- array( 'key', 'key', 'p-', array( '*r' ), 'Suffix not match' ),
- array( 'key', 'p-key', 'p-', array( 'k*y' ), 'Wildcard match' ),
- array( 'key', 'key', 'p-', array( '*a*' ), 'Wildcard not match' ),
- array( 'key', 'p-key', 'p-', array( 'key', '*ey', 'ke*' ), 'Multiple rules match' ),
- array( 'key', 'key', 'p-', array( '*a*', '*ar', 'ba*' ), 'Multiple rules not match' ),
- array( 'key', 'p-key', 'p-', array( '*' ), 'All match' ),
- array(
- '[k.ssa]', 'p-=5Bk.ssa=5D', 'p-', array( '[k.s*' ),
+ $keys = [
+ [ 'key', 'p-key', 'p-', [ 'key' ], 'Exact match' ],
+ [ 'key', 'key', 'p-', [ 'bar' ], 'Exact not match' ],
+ [ 'key', 'p-key', 'p-', [ 'k*' ], 'Prefix match' ],
+ [ 'key', 'key', 'p-', [ 'b*' ], 'Prefix not match' ],
+ [ 'key', 'p-key', 'p-', [ '*y' ], 'Suffix match' ],
+ [ 'key', 'key', 'p-', [ '*r' ], 'Suffix not match' ],
+ [ 'key', 'p-key', 'p-', [ 'k*y' ], 'Wildcard match' ],
+ [ 'key', 'key', 'p-', [ '*a*' ], 'Wildcard not match' ],
+ [ 'key', 'p-key', 'p-', [ 'key', '*ey', 'ke*' ], 'Multiple rules match' ],
+ [ 'key', 'key', 'p-', [ '*a*', '*ar', 'ba*' ], 'Multiple rules not match' ],
+ [ 'key', 'p-key', 'p-', [ '*' ], 'All match' ],
+ [
+ '[k.ssa]', 'p-=5Bk.ssa=5D', 'p-', [ '[k.s*' ],
'Message key with special chars'
- ),
- array(
- '[kissa]', '=5Bkissa=5D', 'p-', array( '[k.s*' ),
+ ],
+ [
+ '[kissa]', '=5Bkissa=5D', 'p-', [ '[k.s*' ],
'Message key with special chars'
- ),
- );
+ ],
+ [ 'keyblah/i', 'p-keyblah/i', 'p-', [ 'key*/i' ], 'Slash in pattern does not trigger modifier' ],
+ ];
return $keys;
}
@@ -51,12 +52,12 @@ class StringMatcherTest extends MediaWikiTestCase {
* @dataProvider problematicMessageKeyProvider
*/
public function testKeyMangling( $key, $comment ) {
- $matcher = StringMatcher::emptyMatcher();
+ $matcher = StringMatcher::EmptyMatcher();
$mangled = $matcher->mangle( $key );
$title = Title::makeTitleSafe( NS_MEDIAWIKI, $mangled );
$this->assertInstanceOf( 'Title', $title, "Key '$mangled' did not produce a valid title" );
- $unmangled = $matcher->unMangle( $mangled );
+ $unmangled = $matcher->unmangle( $mangled );
$this->assertEquals( $key, $unmangled, 'Mangling is reversible' );
}
@@ -64,25 +65,28 @@ class StringMatcherTest extends MediaWikiTestCase {
* @dataProvider problematicMessageKeyProvider
*/
public function testKeyManglingWithPrefixing( $key, $comment ) {
- $matcher = new StringMatcher( 'prefix', array( '*' ) );
+ $matcher = new StringMatcher( 'prefix', [ '*' ] );
$mangled = $matcher->mangle( $key );
$title = Title::makeTitleSafe( NS_MEDIAWIKI, $mangled );
$this->assertInstanceOf( 'Title', $title, "Key '$mangled' did not produce a valid title" );
- $unmangled = $matcher->unMangle( $mangled );
+ $unmangled = $matcher->unmangle( $mangled );
$this->assertEquals( $key, $unmangled, 'Mangling is reversible' );
}
public function problematicMessageKeyProvider() {
- $keys = array(
- array( 'key', 'simple string' ),
- array( 'key[]', 'string with brackets' ),
- array( 'key%AB', 'string with invalid url encoding' ),
- array( 'key&amp;', 'string with html entity' ),
- array( 'key=2A', 'string with fake escaping' ),
- array( 'abcdefgh', 'string with fake escaping' ),
- array( 'общегосударственные', 'Unicode string' ),
- );
+ $keys = [
+ [ 'key', 'simple string' ],
+ [ 'key[]', 'string with brackets' ],
+ [ 'key%AB', 'string with invalid url encoding' ],
+ [ 'key&amp;', 'string with html entity' ],
+ [ 'key=2A', 'string with fake escaping' ],
+ [ 'общегосударственные', 'Unicode string' ],
+ [ ' la la land_', 'string starting or ending with spaces or underscores' ],
+ [ 'one two__three _four', 'multiple spaces consisting of spaces or underscores' ],
+ [ 'Signed by ~~~', 'Magic tilde expansion' ],
+ [ ':iam', 'string starting with a colon' ],
+ ];
// Add tests for ranges of exotic ASCII characters
foreach ( range( 0, 7 ) as $k ) {
@@ -93,7 +97,7 @@ class StringMatcherTest extends MediaWikiTestCase {
$start = $k * 16;
$end = $start + 16;
- $keys[] = array( $key, "ASCII range $start..$end" );
+ $keys[] = [ $key, "ASCII range $start..$end" ];
}
return $keys;
diff --git a/MLEB/Translate/tests/phpunit/TPParseTest.php b/MLEB/Translate/tests/phpunit/TPParseTest.php
index f5a9f385..8ee4a8e6 100644
--- a/MLEB/Translate/tests/phpunit/TPParseTest.php
+++ b/MLEB/Translate/tests/phpunit/TPParseTest.php
@@ -3,7 +3,7 @@
* Unit tests for class TPParse
*
* @author Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
* @file
*/
@@ -18,10 +18,10 @@ class TPParseTest extends MediaWikiTestCase {
$title,
'<translate>Hello <tvar|abc>peter!</></translate>'
);
- $prefix = $title->getPrefixedDBKey() . '/';
+ $prefix = $title->getPrefixedDBkey() . '/';
$parse = $page->getParse();
- $collection = array();
+ $collection = [];
$expected = 'Hello peter!';
$actual = $parse->getTranslationPageText( $collection );
diff --git a/MLEB/Translate/tests/phpunit/TTMServerTest.php b/MLEB/Translate/tests/phpunit/TTMServerTest.php
index c5869ce2..5b1526c2 100644
--- a/MLEB/Translate/tests/phpunit/TTMServerTest.php
+++ b/MLEB/Translate/tests/phpunit/TTMServerTest.php
@@ -5,7 +5,7 @@
* @file
* @author Niklas Laxström
* @copyright Copyright © 2012-2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
class TTMServerTest extends MediaWikiTestCase {
@@ -16,15 +16,15 @@ class TTMServerTest extends MediaWikiTestCase {
$this->config = $wgTranslateTranslationServices;
parent::setUp();
- $wgTranslateTranslationServices = array();
- $wgTranslateTranslationServices['localtm'] = array(
+ $wgTranslateTranslationServices = [];
+ $wgTranslateTranslationServices['localtm'] = [
'url' => 'http://example.com/sandwiki/api.php',
'displayname' => 'example.com',
'cutoff' => 0.75,
'type' => 'ttmserver',
- );
+ ];
- $wgTranslateTranslationServices['apitm'] = array(
+ $wgTranslateTranslationServices['apitm'] = [
'url' => 'http://example.com/w/api.php',
'displayname' => 'example.com',
'cutoff' => 0.75,
@@ -32,7 +32,7 @@ class TTMServerTest extends MediaWikiTestCase {
'timeout-async' => 4,
'type' => 'ttmserver',
'class' => 'RemoteTTMServer',
- );
+ ];
}
protected function tearDown() {
@@ -48,26 +48,27 @@ class TTMServerTest extends MediaWikiTestCase {
get_class( $server ),
'Fake server given when default server is disabled'
);
- global $wgTranslateTranslationServices;
- $wgTranslateTranslationServices['TTMServer'] = array(
+ global $wgTranslateTranslationServices,
+ $wgTranslateTranslationDefaultService;
+ $wgTranslateTranslationServices[$wgTranslateTranslationDefaultService] = [
'database' => false, // Passed to wfGetDB
'cutoff' => 0.75,
'type' => 'ttmserver',
'public' => false,
- );
+ ];
$server = TTMServer::primary();
$this->assertEquals(
'DatabaseTTMServer',
get_class( $server ),
'Real server given when default server is enabled'
);
- unset( $wgTranslateTranslationServices['TTMServer'] );
+ unset( $wgTranslateTranslationServices[$wgTranslateTranslationDefaultService] );
}
public function testFakeTTMServer() {
$server = new FakeTTMServer();
$this->assertEquals(
- array(),
+ [],
$server->query( 'en', 'fi', 'daa' ),
'FakeTTMServer returns no suggestions for all queries'
);
@@ -80,4 +81,21 @@ class TTMServerTest extends MediaWikiTestCase {
'FakeTTMServer returns null on update'
);
}
+
+ public function testMirrorsConfig() {
+ global $wgTranslateTranslationServices;
+ $wgTranslateTranslationServices['primary'] = [
+ 'class' => 'ElasticSearchTTMServer',
+ 'mirrors' => [ 'secondary' ]
+ ];
+ $wgTranslateTranslationServices['secondary'] = [
+ 'class' => 'ElasticSearchTTMServer',
+ 'mirrors' => [ 'primary', 'unknown' ]
+ ];
+ $primary = TTMServer::factory( $wgTranslateTranslationServices['primary'] );
+ $this->assertEquals( [ 'secondary' ], $primary->getMirrors() );
+ $secondary = TTMServer::factory( $wgTranslateTranslationServices['secondary'] );
+ $this->setExpectedException( TTMServerException::class );
+ $secondary->getMirrors();
+ }
}
diff --git a/MLEB/Translate/tests/phpunit/TranslateHooksTest.php b/MLEB/Translate/tests/phpunit/TranslateHooksTest.php
index 98e4d983..e591fc81 100644
--- a/MLEB/Translate/tests/phpunit/TranslateHooksTest.php
+++ b/MLEB/Translate/tests/phpunit/TranslateHooksTest.php
@@ -4,8 +4,7 @@
*
* @file
* @author Niklas Laxström
- * @copyright Copyright © 2012-2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -17,27 +16,27 @@ class TranslateHooksTest extends MediaWikiLangTestCase {
parent::setUp();
global $wgHooks;
- $this->setMwGlobals( array(
+ $this->setMwGlobals( [
'wgHooks' => $wgHooks,
- 'wgTranslateCC' => array(),
- 'wgTranslateMessageIndex' => array( 'DatabaseMessageIndex' ),
- 'wgTranslateWorkflowStates' => false,
- 'wgEnablePageTranslation' => false,
- 'wgTranslateGroupFiles' => array(),
'wgTranslateDocumentationLanguageCode' => 'qqq',
- 'wgTranslateTranslationServices' => array(),
- 'wgTranslateMessageNamespaces' => array( NS_MEDIAWIKI ),
- ) );
- $wgHooks['TranslatePostInitGroups'] = array( array( $this, 'getTestGroups' ) );
- MessageGroups::clearCache();
- MessageIndexRebuildJob::newJob()->run();
+ 'wgTranslateTranslationServices' => [],
+ 'wgTranslateMessageNamespaces' => [ NS_MEDIAWIKI ],
+ ] );
+ $wgHooks['TranslatePostInitGroups'] = [ [ $this, 'getTestGroups' ] ];
+
+ $mg = MessageGroups::singleton();
+ $mg->setCache( wfGetCache( 'hash' ) );
+ $mg->recache();
+
+ MessageIndex::setInstance( new HashMessageIndex() );
+ MessageIndex::singleton()->rebuild();
}
public function getTestGroups( &$list ) {
- $messages = array(
+ $messages = [
'ugakey1' => 'value1',
'ugakey2' => 'value2',
- );
+ ];
$list['testgroup'] = new MockWikiMessageGroup( 'testgroup', $messages );
@@ -52,7 +51,7 @@ class TranslateHooksTest extends MediaWikiLangTestCase {
$wikipage->doEditContent( $content, __METHOD__, 0, false, $user );
$this->assertEquals(
- array(),
+ [],
$title->getParentCategories(),
'translation of known message'
);
@@ -63,7 +62,7 @@ class TranslateHooksTest extends MediaWikiLangTestCase {
$wikipage->doEditContent( $content, __METHOD__, 0, false, $user );
$this->assertEquals(
- array( 'Category:Shouldbe' => 'MediaWiki:ugakey2/qqq' ),
+ [ 'Category:Shouldbe' => 'MediaWiki:ugakey2/qqq' ],
$title->getParentCategories(),
'message docs'
);
@@ -73,17 +72,17 @@ class TranslateHooksTest extends MediaWikiLangTestCase {
$content = ContentHandler::makeContent( '[[Category:Shouldbealso]]', $title );
$wikipage->doEditContent( $content, __METHOD__, 0, false, $user );
- $this->assertEquals( array(), $title->getParentCategories(), 'unknown message' );
+ $this->assertEquals( [], $title->getParentCategories(), 'unknown message' );
}
public function testSearchProfile() {
- $profiles = array(
- 'files' => array(),
- 'all' => array(),
- 'advanced' => array()
- );
+ $profiles = [
+ 'files' => [],
+ 'all' => [],
+ 'advanced' => []
+ ];
- $expected = array( 'files', 'translation', 'all', 'advanced' );
+ $expected = [ 'files', 'translation', 'all', 'advanced' ];
TranslateHooks::searchProfile( $profiles );
diff --git a/MLEB/Translate/tests/phpunit/TranslateSandboxTest.php b/MLEB/Translate/tests/phpunit/TranslateSandboxTest.php
index 94a3e3d7..c6f8b740 100644
--- a/MLEB/Translate/tests/phpunit/TranslateSandboxTest.php
+++ b/MLEB/Translate/tests/phpunit/TranslateSandboxTest.php
@@ -4,7 +4,7 @@
*
* @file
* @author Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -13,10 +13,13 @@
class TranslateSandboxTest extends MediaWikiTestCase {
protected function setUp() {
parent::setUp();
- $this->setMwGlobals( array(
+ $this->setMwGlobals( [
'wgTranslateUseSandbox' => true,
'wgTranslateSandboxPromotedGroup' => 'translator',
- ) );
+ ] );
+
+ // Make sure the hooks are installed even if $wgTranslateUseSandbox is false.
+ TranslateHooks::setupTranslate();
}
public function testAddUser() {
@@ -25,7 +28,7 @@ class TranslateSandboxTest extends MediaWikiTestCase {
$groups = array_unique( $user->getGroups() );
- $this->assertSame( array( 'translate-sandboxed' ), $groups, 'User is in the sandboxed group' );
+ $this->assertSame( [ 'translate-sandboxed' ], $groups, 'User is in the sandboxed group' );
}
public function testDeleteUser() {
diff --git a/MLEB/Translate/tests/phpunit/TranslationFuzzyUpdaterTest.php b/MLEB/Translate/tests/phpunit/TranslationFuzzyUpdaterTest.php
index c06f25e5..ec4368e2 100644
--- a/MLEB/Translate/tests/phpunit/TranslationFuzzyUpdaterTest.php
+++ b/MLEB/Translate/tests/phpunit/TranslationFuzzyUpdaterTest.php
@@ -3,8 +3,7 @@
* Tests for fuzzy flag change on edits.
* @author Niklas Laxström
* @file
- * @copyright Copyright © 2012-2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -17,22 +16,23 @@ class TranslationFuzzyUpdaterTest extends MediaWikiTestCase {
parent::setUp();
global $wgHooks;
- $this->setMwGlobals( array(
+ $this->setMwGlobals( [
'wgHooks' => $wgHooks,
- 'wgTranslateCC' => array(),
- 'wgTranslateMessageIndex' => array( 'DatabaseMessageIndex' ),
- 'wgTranslateWorkflowStates' => false,
- 'wgTranslateGroupFiles' => array(),
- 'wgTranslateTranslationServices' => array(),
- 'wgTranslateMessageNamespaces' => array( NS_MEDIAWIKI ),
- ) );
- $wgHooks['TranslatePostInitGroups'] = array( array( $this, 'getTestGroups' ) );
- MessageGroups::clearCache();
- MessageIndexRebuildJob::newJob()->run();
+ 'wgTranslateTranslationServices' => [],
+ 'wgTranslateMessageNamespaces' => [ NS_MEDIAWIKI ],
+ ] );
+ $wgHooks['TranslatePostInitGroups'] = [ [ $this, 'getTestGroups' ] ];
+
+ $mg = MessageGroups::singleton();
+ $mg->setCache( wfGetCache( 'hash' ) );
+ $mg->recache();
+
+ MessageIndex::setInstance( new HashMessageIndex() );
+ MessageIndex::singleton()->rebuild();
}
public function getTestGroups( &$list ) {
- $messages = array( 'ugakey' => '$1 of $2', );
+ $messages = [ 'ugakey' => '$1 of $2', ];
$list['test-group'] = new MockWikiMessageGroup( 'test-group', $messages );
return false;
@@ -51,14 +51,14 @@ class TranslationFuzzyUpdaterTest extends MediaWikiTestCase {
$revision = $rev->getId();
$dbw = wfGetDB( DB_MASTER );
- $conds = array(
+ $conds = [
'rt_page' => $title->getArticleID(),
'rt_type' => RevTag::getType( 'fuzzy' ),
'rt_revision' => $revision
- );
+ ];
$index = array_keys( $conds );
- $dbw->replace( 'revtag', array( $index ), $conds, __METHOD__ );
+ $dbw->replace( 'revtag', [ $index ], $conds, __METHOD__ );
$handle = new MessageHandle( $title );
$this->assertTrue( $handle->isValid(), 'Message is known' );
diff --git a/MLEB/Translate/tests/phpunit/TranslationStashStorageTest.php b/MLEB/Translate/tests/phpunit/TranslationStashStorageTest.php
index 3208ab01..0908f3f9 100644
--- a/MLEB/Translate/tests/phpunit/TranslationStashStorageTest.php
+++ b/MLEB/Translate/tests/phpunit/TranslationStashStorageTest.php
@@ -2,7 +2,7 @@
/**
* @file
* @author Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -17,14 +17,14 @@ class TranslationStashStorageTest extends MediaWikiTestCase {
User::newFromId( 1 ),
Title::makeTitle( NS_MAIN, __METHOD__ ),
'test value',
- array( 'kissa', 'kala' )
+ [ 'kissa', 'kala' ]
);
$translation2 = new StashedTranslation(
User::newFromId( 2 ),
Title::makeTitle( NS_MAIN, __METHOD__ ),
'test value 2',
- array( 'kissa', 'kala' )
+ [ 'kissa', 'kala' ]
);
$storage->addTranslation( $translation1 );
diff --git a/MLEB/Translate/tests/phpunit/api/ApiGroupReviewTest.php b/MLEB/Translate/tests/phpunit/api/ApiGroupReviewTest.php
index 6da4016b..c072f2a0 100644
--- a/MLEB/Translate/tests/phpunit/api/ApiGroupReviewTest.php
+++ b/MLEB/Translate/tests/phpunit/api/ApiGroupReviewTest.php
@@ -4,24 +4,13 @@
*
* @file
* @author Niklas Laxström
- * @copyright Copyright © 2012-2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
* @group Database
*/
class ApiGroupReviewTest extends MediaWikiTestCase {
- protected function setUp() {
- parent::setUp();
-
- $this->setMwGlobals( array(
- 'wgTranslateMessageIndex' => array( 'DatabaseMessageIndex' ),
- 'wgTranslateWorkflowStates' => false,
- 'wgTranslateTranslationServices' => array(),
- ) );
- }
-
public function testGetSetState() {
$group = new WikiMessageGroup( 'testgroup', 'wewgweg' );
diff --git a/MLEB/Translate/tests/phpunit/api/ApiQueryMessageGroupsTest.php b/MLEB/Translate/tests/phpunit/api/ApiQueryMessageGroupsTest.php
index 0a11031a..670c2def 100644
--- a/MLEB/Translate/tests/phpunit/api/ApiQueryMessageGroupsTest.php
+++ b/MLEB/Translate/tests/phpunit/api/ApiQueryMessageGroupsTest.php
@@ -5,11 +5,10 @@
* @file
* @author Harry Burt
* @copyright Copyright © 2012-2013, Harry Burt
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
- * @group Database
* @group medium
*/
class ApiQueryMessageGroupsTest extends ApiTestCase {
@@ -18,18 +17,15 @@ class ApiQueryMessageGroupsTest extends ApiTestCase {
parent::setUp();
global $wgHooks;
- $this->setMwGlobals( array(
+ $this->setMwGlobals( [
'wgHooks' => $wgHooks,
- 'wgTranslateCC' => array(),
- 'wgTranslateMessageIndex' => array( 'DatabaseMessageIndex' ),
- 'wgTranslateWorkflowStates' => false,
- 'wgTranslateGroupFiles' => array(),
- 'wgEnablePageTranslation' => false,
- 'wgTranslateTranslationServices' => array(),
- ) );
- $wgHooks['TranslatePostInitGroups'] = array( array( $this, 'getTestGroups' ) );
- MessageGroups::clearCache();
- MessageIndexRebuildJob::newJob()->run();
+ 'wgTranslateTranslationServices' => [],
+ ] );
+ $wgHooks['TranslatePostInitGroups'] = [ [ $this, 'getTestGroups' ] ];
+
+ $mg = MessageGroups::singleton();
+ $mg->setCache( wfGetCache( 'hash' ) );
+ $mg->recache();
}
public function getTestGroups( &$list ) {
@@ -48,13 +44,13 @@ class ApiQueryMessageGroupsTest extends ApiTestCase {
public function testAPIAccuracy() {
list( $data ) = $this->doApiRequest(
- array(
+ [
'action' => 'query',
'meta' => 'messagegroups',
'mgprop' => 'id|label|class|namespace|exists',
// @see https://gerrit.wikimedia.org/r/#/c/160222/
'continue' => ''
- )
+ ]
);
// Check structure
@@ -90,19 +86,19 @@ class ApiQueryMessageGroupsTest extends ApiTestCase {
}
public function testAPIFilterAccuracy() {
- $ids = array( 'MadeUpGroup' );
+ $ids = [ 'MadeUpGroup' ];
$ids += array_keys( MessageGroups::getAllGroups() );
foreach ( $ids as $id ) {
list( $data ) = $this->doApiRequest(
- array(
+ [
'action' => 'query',
'meta' => 'messagegroups',
'mgprop' => 'id|label|class|namespace|exists',
'mgfilter' => $id,
// @see https://gerrit.wikimedia.org/r/#/c/160222/
'continue' => ''
- )
+ ]
);
if ( $id === 'MadeUpGroup' ) {
@@ -137,13 +133,13 @@ class ApiQueryMessageGroupsTest extends ApiTestCase {
public function testBadProperty() {
list( $data ) = $this->doApiRequest(
- array(
+ [
'action' => 'query',
'meta' => 'messagegroups',
'mgprop' => 'madeupproperty',
// @see https://gerrit.wikimedia.org/r/#/c/160222/
'continue' => ''
- )
+ ]
);
$this->assertArrayHasKey( 'query', $data );
diff --git a/MLEB/Translate/tests/phpunit/api/ApiTokensTest.php b/MLEB/Translate/tests/phpunit/api/ApiTokensTest.php
deleted file mode 100644
index 5992828a..00000000
--- a/MLEB/Translate/tests/phpunit/api/ApiTokensTest.php
+++ /dev/null
@@ -1,57 +0,0 @@
-<?php
-/**
- * Unit tests.
- *
- * @file
- * @author Niklas Laxström
- * @copyright Copyright © 2012-2013, Niklas Laxström
- * @license GPL-2.0+
- */
-
-/**
- * Unit tests for api token retrieval.
- */
-class ApiTokensTranslateTest extends MediaWikiTestCase {
- /** @dataProvider provideTokenClasses */
- public function testTokenRetrieval( $id, $class ) {
- // Make sure we have the right to get the token
- global $wgGroupPermissions;
- $wgGroupPermissions['*'][$class::getRight()] = true;
- RequestContext::getMain()->getUser()->clearInstanceCache(); // Reread above global
-
- // We should be getting anonymous user token
- $expected = $class::getToken();
- $this->assertNotSame( false, $expected, 'We did not get a valid token' );
-
- $actionString = TranslateUtils::getTokenAction( $id );
- $params = wfCgiToArray( $actionString );
-
- $req = new FauxRequest( $params );
- $api = new ApiMain( $req );
- $api->execute();
-
- if ( defined( 'ApiResult::META_CONTENT' ) ) {
- $data = $api->getResult()->getResultData( null, array(
- 'Strip' => 'all',
- ) );
- } else {
- $data = $api->getResultData();
- }
- if ( isset( $data['query'] ) ) {
- foreach ( $data['query']['pages'] as $page ) {
- $this->assertSame( $expected, $page[$id . 'token'] );
- }
- } else {
- $this->assertArrayHasKey( 'tokens', $data, 'Result has tokens' );
- $this->assertSame( $expected, $data['tokens'][$id . 'token'] );
- }
- }
-
- public static function provideTokenClasses() {
- return array(
- array( 'groupreview', 'ApiGroupReview' ),
- array( 'translationreview', 'ApiTranslationReview' ),
- array( 'aggregategroups', 'ApiAggregateGroups' ),
- );
- }
-}
diff --git a/MLEB/Translate/tests/phpunit/api/ApiTranslationReviewTest.php b/MLEB/Translate/tests/phpunit/api/ApiTranslationReviewTest.php
index 47c85efe..8266c0d4 100644
--- a/MLEB/Translate/tests/phpunit/api/ApiTranslationReviewTest.php
+++ b/MLEB/Translate/tests/phpunit/api/ApiTranslationReviewTest.php
@@ -3,8 +3,7 @@
*
* @file
* @author Niklas Laxström
- * @copyright Copyright © 2012-2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -15,27 +14,25 @@ class ApiTranslationReviewTest extends MediaWikiTestCase {
parent::setUp();
global $wgHooks;
- $this->setMwGlobals( array(
+ $this->setMwGlobals( [
'wgHooks' => $wgHooks,
- 'wgTranslateCC' => array(),
- 'wgTranslateMessageIndex' => array( 'DatabaseMessageIndex' ),
- 'wgTranslateWorkflowStates' => false,
- 'wgEnablePageTranslation' => false,
- 'wgTranslateGroupFiles' => array(),
- 'wgGroupPermissions' => array(),
- 'wgTranslateTranslationServices' => array(),
- 'wgTranslateMessageNamespaces' => array( NS_MEDIAWIKI ),
- ) );
- $wgHooks['TranslatePostInitGroups'] = array( array( $this, 'getTestGroups' ) );
- MessageGroups::clearCache();
- MessageIndexRebuildJob::newJob()->run();
+ 'wgGroupPermissions' => [],
+ 'wgTranslateMessageNamespaces' => [ NS_MEDIAWIKI ],
+ ] );
+ $wgHooks['TranslatePostInitGroups'] = [ [ $this, 'getTestGroups' ] ];
+ $mg = MessageGroups::singleton();
+ $mg->setCache( wfGetCache( 'hash' ) );
+ $mg->recache();
+
+ MessageIndex::setInstance( new HashMessageIndex() );
+ MessageIndex::singleton()->rebuild();
}
public function getTestGroups( &$list ) {
- $messages = array(
+ $messages = [
'ugakey1' => 'value1',
'ugakey2' => 'value2',
- );
+ ];
$list['testgroup'] = new MockWikiMessageGroup( 'testgroup', $messages );
@@ -63,38 +60,38 @@ class ApiTranslationReviewTest extends MediaWikiTestCase {
$content = ContentHandler::makeContent( 'unknown message', $title );
WikiPage::factory( $title )->doEditContent( $content, __METHOD__, 0, false, $superUser1 );
- $testcases = array(
- array(
+ $testcases = [
+ [
'permissiondenied',
$plainUser,
'Ugakey1/fi',
'Unpriviledged user is not allowed to change state'
- ),
- array(
+ ],
+ [
'owntranslation',
$superUser1,
'Ugakey1/fi',
'Cannot approve own translation'
- ),
- array(
+ ],
+ [
'fuzzymessage',
$superUser1,
'Ugakey2/fi',
'Cannot approve fuzzy translation'
- ),
- array(
+ ],
+ [
'unknownmessage',
$superUser1,
'Ugakey3/fi',
'Cannot approve unknown translation'
- ),
- array(
+ ],
+ [
'',
$superUser2,
'Ugakey1/fi',
'Can approve non-fuzzy known non-own translation'
- ),
- );
+ ],
+ ];
foreach ( $testcases as $case ) {
list( $expected, $user, $page, $comment ) = $case;
diff --git a/MLEB/Translate/tests/phpunit/data/Example-result.i18n.php b/MLEB/Translate/tests/phpunit/data/Example-result.i18n.php
index 51b4f49f..d7f34138 100644
--- a/MLEB/Translate/tests/phpunit/data/Example-result.i18n.php
+++ b/MLEB/Translate/tests/phpunit/data/Example-result.i18n.php
@@ -4,7 +4,8 @@
*
* @file
* @ingroup Extensions
-*/
+ */
+// @codingStandardsIgnoreFile
$messages = array();
diff --git a/MLEB/Translate/tests/phpunit/data/Example.i18n.php b/MLEB/Translate/tests/phpunit/data/Example.i18n.php
index b27e428d..48c25d0f 100644
--- a/MLEB/Translate/tests/phpunit/data/Example.i18n.php
+++ b/MLEB/Translate/tests/phpunit/data/Example.i18n.php
@@ -4,7 +4,8 @@
*
* @file
* @ingroup Extensions
-*/
+ */
+// @codingStandardsIgnoreFile
$messages = array();
diff --git a/MLEB/Translate/tests/phpunit/data/MediaWikiExtensionTest-conf1.yaml b/MLEB/Translate/tests/phpunit/data/MediaWikiExtensionTest-conf1.yaml
deleted file mode 100644
index fbc8ac0a..00000000
--- a/MLEB/Translate/tests/phpunit/data/MediaWikiExtensionTest-conf1.yaml
+++ /dev/null
@@ -1,26 +0,0 @@
-BASIC:
- class: MediaWikiExtensionMessageGroup
- id: ext-exampleextension
- namespace: 8
- label: Example Extension
- descriptionmsg: exampleextension-desc
- extensionurl: false
-
-FILES:
- class: MediaWikiExtensionFFS
- sourcePattern: "%GROUPROOT%/mediawiki-extensions/extensions/ExampleExtension/ExampleExtension.i18n.php"
-
-CHECKER:
- class: MediaWikiMessageChecker
- checks:
- - pluralCheck
- - pluralFormsCheck
- - wikiParameterCheck
- - wikiLinksCheck
- - XhtmlCheck
- - braceBalanceCheck
- - pagenameMessagesCheck
- - miscMWChecks
-
-INSERTABLES:
- class: MediaWikiInsertablesSuggester
diff --git a/MLEB/Translate/tests/phpunit/data/MediaWikiExtensionTest-conf2.yaml b/MLEB/Translate/tests/phpunit/data/MediaWikiExtensionTest-conf2.yaml
index c64de62b..aee2933d 100644
--- a/MLEB/Translate/tests/phpunit/data/MediaWikiExtensionTest-conf2.yaml
+++ b/MLEB/Translate/tests/phpunit/data/MediaWikiExtensionTest-conf2.yaml
@@ -6,8 +6,8 @@ BASIC:
description: Plop
FILES:
- class: MediaWikiExtensionFFS
- sourcePattern: "%GROUPROOT%/mediawiki-extensions/extensions/WikimediaMessages/WikimediaMessages.i18n.php"
+ class: JsonFFS
+ sourcePattern: "%GROUPROOT%/mediawiki-extensions/extensions/WikimediaMessages/i18n/%CODE%.json"
aliasFile: FooBar.alias.php
magicFile: FooBar.magic.php
aliasFileSource: "%GROUPROOT%/mediawiki-extensions/extensions/FooBar.alias.php"
@@ -20,7 +20,6 @@ CHECKER:
- pluralFormsCheck
- wikiParameterCheck
- wikiLinksCheck
- - XhtmlCheck
- braceBalanceCheck
- pagenameMessagesCheck
- miscMWChecks
@@ -40,6 +39,8 @@ MANGLER:
TAGS:
optional:
- grouppage-recursive-export
+ - "*-extensionname"
+ - skinname-*
ignored:
- wmf-sidebar
- robots.txt
diff --git a/MLEB/Translate/tests/phpunit/data/MediaWikiExtensionTest-conf3.yaml b/MLEB/Translate/tests/phpunit/data/MediaWikiExtensionTest-conf3.yaml
index c9fdad9d..dd62fa32 100644
--- a/MLEB/Translate/tests/phpunit/data/MediaWikiExtensionTest-conf3.yaml
+++ b/MLEB/Translate/tests/phpunit/data/MediaWikiExtensionTest-conf3.yaml
@@ -17,10 +17,14 @@ CHECKER:
- pluralFormsCheck
- wikiParameterCheck
- wikiLinksCheck
- - XhtmlCheck
- braceBalanceCheck
- pagenameMessagesCheck
- miscMWChecks
INSERTABLES:
class: MediaWikiInsertablesSuggester
+
+TAGS:
+ optional:
+ - "*-extensionname"
+ - skinname-*
diff --git a/MLEB/Translate/tests/phpunit/data/MediaWikiExtensionTest-conf4.yaml b/MLEB/Translate/tests/phpunit/data/MediaWikiExtensionTest-conf4.yaml
index bc39deeb..ca8a2fa3 100644
--- a/MLEB/Translate/tests/phpunit/data/MediaWikiExtensionTest-conf4.yaml
+++ b/MLEB/Translate/tests/phpunit/data/MediaWikiExtensionTest-conf4.yaml
@@ -7,7 +7,7 @@ BASIC:
extensionurl: false
FILES:
- class: MediaWikiExtensionFFS
+ class: JsonFFS
sourcePattern: "%GROUPROOT%/mediawiki-extensions/extensions/foo"
CHECKER:
@@ -17,10 +17,14 @@ CHECKER:
- pluralFormsCheck
- wikiParameterCheck
- wikiLinksCheck
- - XhtmlCheck
- braceBalanceCheck
- pagenameMessagesCheck
- miscMWChecks
INSERTABLES:
class: MediaWikiInsertablesSuggester
+
+TAGS:
+ optional:
+ - "*-extensionname"
+ - skinname-*
diff --git a/MLEB/Translate/tests/phpunit/data/mediawiki-extensions.txt b/MLEB/Translate/tests/phpunit/data/mediawiki-extensions.txt
index af963a8b..37554f24 100644
--- a/MLEB/Translate/tests/phpunit/data/mediawiki-extensions.txt
+++ b/MLEB/Translate/tests/phpunit/data/mediawiki-extensions.txt
@@ -1,5 +1,4 @@
Wikimedia Messages
-format = php
desc = Plop
ignored = sidebar, robots.txt
optional = grouppage-recursive-export
@@ -7,11 +6,13 @@ prefix = wmf- | sidebar, grouppage-Staff, group-Staff, group-Staff-member
aliasfile = FooBar.alias.php
magicfile = FooBar.magic.php
-Example Extension
-format = php
-
Example JsonExtension
Example Extension 2
-format = php
file = foo
+
+Languages Modified
+languages = +foo, -bar
+
+Languages Set
+languages = foo, bar
diff --git a/MLEB/Translate/tests/phpunit/ffs/AmdFFSTest.php b/MLEB/Translate/tests/phpunit/ffs/AmdFFSTest.php
index c9eb5b06..44ad2147 100644
--- a/MLEB/Translate/tests/phpunit/ffs/AmdFFSTest.php
+++ b/MLEB/Translate/tests/phpunit/ffs/AmdFFSTest.php
@@ -5,7 +5,7 @@
* @file
* @author Matthias Palmer
* @copyright Copyright © 2011-2015, MetaSolutions AB
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -15,20 +15,20 @@ class AmdFFSTest extends MediaWikiTestCase {
public function setUp() {
parent::setUp();
- $this->groupConfiguration = array(
- 'BASIC' => array(
+ $this->groupConfiguration = [
+ 'BASIC' => [
'class' => 'FileBasedMessageGroup',
'id' => 'test-id',
'label' => 'Test Label',
'namespace' => 'NS_MEDIAWIKI',
'description' => 'Test description',
- ),
- 'FILES' => array(
+ ],
+ 'FILES' => [
'class' => 'AmdFFS',
'sourcePattern' => 'fake_reference_not_used_in_practise',
'targetPattern' => 'fake_reference_not_used_in_practise',
- ),
- );
+ ],
+ ];
}
protected $groupConfiguration;
@@ -43,16 +43,16 @@ class AmdFFSTest extends MediaWikiTestCase {
$group = MessageGroupBase::factory( $this->groupConfiguration );
$ffs = new AmdFFS( $group );
$parsed = $ffs->readFromVariable( $file );
- $expected = array(
+ $expected = [
'MESSAGES' => $messages,
- 'AUTHORS' => $authors,
- 'METADATA' => array(),
- );
+ 'AUTHORS' => $authors,
+ 'METADATA' => [],
+ ];
$this->assertEquals( $parsed, $expected );
}
public function amdProvider() {
- $values = array();
+ $values = [];
$file1 =
<<<JS
@@ -63,15 +63,15 @@ define({
});
JS;
- $values[] = array(
- array(
+ $values[] = [
+ [
'one' => 'jeden',
'two' => 'dwa',
'three' => 'trzy',
- ),
- array(),
+ ],
+ [],
$file1,
- );
+ ];
$file2 =
<<<JS
@@ -87,11 +87,11 @@ define({
});
JS;
- $values[] = array(
- array( 'word' => 'слово' ),
- array( 'Matthias', 'Hannes'),
+ $values[] = [
+ [ 'word' => 'слово' ],
+ [ 'Matthias', 'Hannes' ],
$file2,
- );
+ ];
return $values;
}
@@ -107,7 +107,7 @@ JS;
$parsed = $ffs->readFromVariable( $data );
$this->assertEquals(
- array( 'Nike the bunny' ),
+ [ 'Nike the bunny' ],
$parsed['AUTHORS'],
'Authors are exported'
);
diff --git a/MLEB/Translate/tests/phpunit/ffs/AndroidXmlFFSTest.php b/MLEB/Translate/tests/phpunit/ffs/AndroidXmlFFSTest.php
index 6a526485..1c071b7b 100644
--- a/MLEB/Translate/tests/phpunit/ffs/AndroidXmlFFSTest.php
+++ b/MLEB/Translate/tests/phpunit/ffs/AndroidXmlFFSTest.php
@@ -4,29 +4,32 @@
*
* @file
* @author Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
class AndroidXmlFFSTest extends MediaWikiTestCase {
- protected $groupConfiguration = array(
- 'BASIC' => array(
+ protected $groupConfiguration = [
+ 'BASIC' => [
'class' => 'FileBasedMessageGroup',
'id' => 'test-id',
'label' => 'Test Label',
'namespace' => 'NS_MEDIAWIKI',
'description' => 'Test description',
- ),
- 'FILES' => array(
+ ],
+ 'FILES' => [
'class' => 'AndroidXmlFFS',
'sourcePattern' => '',
- ),
- );
+ ],
+ ];
public function testParsing() {
$file =
<<<XML
<?xml version="1.0" encoding="utf-8"?>
+<!-- Authors:
+* Imaginary translator
+-->
<resources>
<string name="wpt_voicerec">Voice recording</string>
<string name="wpt_stillimage" fuzzy="true">Picture</string>
@@ -36,6 +39,8 @@ class AndroidXmlFFSTest extends MediaWikiTestCase {
</plurals>
<string name="has_quotes">Go to \"Wikipedia\"</string>
<string name="starts_with_at">\@Wikipedia</string>
+ <string name="has_ampersand">1&amp;nbsp;000</string>
+ <string name="has_newline">first\nsecond</string>
</resources>
XML;
@@ -45,14 +50,21 @@ XML;
$group = MessageGroupBase::factory( $this->groupConfiguration );
$ffs = new AndroidXmlFFS( $group );
$parsed = $ffs->readFromVariable( $file );
- $expected = array(
- 'wpt_voicerec' => 'Voice recording',
- 'wpt_stillimage' => '!!FUZZY!!Picture',
- 'alot' => '{{PLURAL|one=bunny|other=bunnies}}',
- 'has_quotes' => 'Go to "Wikipedia"',
- 'starts_with_at' => '@Wikipedia',
- );
- $expected = array( 'MESSAGES' => $expected, 'AUTHORS' => array() );
+ $expected = [
+ 'MESSAGES' => [
+ 'wpt_voicerec' => 'Voice recording',
+ 'wpt_stillimage' => '!!FUZZY!!Picture',
+ 'alot' => '{{PLURAL|one=bunny|bunnies}}',
+ 'has_quotes' => 'Go to "Wikipedia"',
+ 'starts_with_at' => '@Wikipedia',
+ 'has_ampersand' => '1&nbsp;000',
+ 'has_newline' => "first\nsecond",
+ ],
+ 'AUTHORS' => [
+ 'Imaginary translator',
+ ]
+ ];
+
$this->assertEquals( $expected, $parsed );
}
@@ -63,16 +75,28 @@ XML;
$group = MessageGroupBase::factory( $this->groupConfiguration );
$ffs = new AndroidXmlFFS( $group );
- $messages = array(
+ $messages = [
'ko=26ra' => 'wawe',
'foobar' => '!!FUZZY!!Kissa kala <koira> "a\'b',
- 'amuch' => '{{PLURAL|one=bunny|other=bunnies}}',
- );
+ 'amuch' => '{{PLURAL|one=bunny|bunnies}}',
+ 'ampersand' => '&nbsp; &foo',
+ 'newlines' => "first\nsecond",
+ ];
+ $authors = [
+ '1 Hyphen-Fan',
+ '2 Hyphen--Lover',
+ '3 Hyphen---Fanatic-',
+ ];
+
$collection = new MockMessageCollection( $messages );
+ $collection->addCollectionAuthors( $authors, 'set' );
$xml = $ffs->writeIntoVariable( $collection );
$parsed = $ffs->readFromVariable( $xml );
- $expected = array( 'MESSAGES' => $messages, 'AUTHORS' => array() );
+ $expected = [
+ 'MESSAGES' => $messages,
+ 'AUTHORS' => $authors,
+ ];
$this->assertEquals( $expected, $parsed );
}
}
@@ -92,4 +116,7 @@ class MockMessageCollection extends MessageCollection {
public function filter( $type, $condition = true, $value = null ) {
}
+
+ public function loadTranslations() {
+ }
}
diff --git a/MLEB/Translate/tests/phpunit/ffs/AppleFFSTest.php b/MLEB/Translate/tests/phpunit/ffs/AppleFFSTest.php
index 6f5e7ead..f9f00b1a 100644
--- a/MLEB/Translate/tests/phpunit/ffs/AppleFFSTest.php
+++ b/MLEB/Translate/tests/phpunit/ffs/AppleFFSTest.php
@@ -11,18 +11,18 @@
class AppleFFSTest extends MediaWikiTestCase {
- protected $groupConfiguration = array(
- 'BASIC' => array(
+ protected $groupConfiguration = [
+ 'BASIC' => [
'class' => 'FileBasedMessageGroup',
'id' => 'test-id',
'label' => 'Test Label',
'namespace' => 'NS_MEDIAWIKI',
'description' => 'Test description',
- ),
- 'FILES' => array(
+ ],
+ 'FILES' => [
'class' => 'AppleFFS',
- ),
- );
+ ],
+ ];
public function testParsing() {
$file =
@@ -45,17 +45,17 @@ STRINGS;
$group = MessageGroupBase::factory( $this->groupConfiguration );
$ffs = new AppleFFS( $group );
$parsed = $ffs->readFromVariable( $file );
- $expected = array(
+ $expected = [
'website' => '<nowiki>http://en.wikipedia.org/</nowiki>',
'language' => 'English',
'key with spaces' => 'Value that can be looked up with "key with spaces".',
// We expect this one to be mangled for storage
'key-with-=7Bcurlies=7D' => 'Value that can be looked up with "key-with-{curlies}".',
- );
- $authors = array(
+ ];
+ $authors = [
'Testy McTesterson',
- );
- $expected = array( 'MESSAGES' => $expected, 'AUTHORS' => $authors );
+ ];
+ $expected = [ 'MESSAGES' => $expected, 'AUTHORS' => $authors ];
$this->assertEquals( $expected, $parsed );
}
@@ -74,6 +74,7 @@ STRINGS;
public function testFileRoundtrip() {
$infile = file_get_contents( __DIR__ . '/../data/AppleFFSTest1.strings' );
+ /** @var FileBasedMessageGroup $group */
$group = MessageGroupBase::factory( $this->groupConfiguration );
$ffs = new AppleFFS( $group );
$parsed = $ffs->readFromVariable( $infile );
@@ -85,28 +86,28 @@ STRINGS;
$reparsed = $ffs->readFromVariable( $outfile );
$this->assertSame( $parsed['MESSAGES'], $reparsed['MESSAGES'],
- "Messages survive roundtrip through write and read" );
+ 'Messages survive roundtrip through write and read' );
}
public function rowValuesProvider() {
- return array(
- array( 'key', 'value', 'simple row' ),
- array( 'key', 'value', 'row with different sep' ),
- array( 'key', 'val=ue', 'row with sep inside value' ),
- array( 'k=ey', 'value', 'row with sep inside key' ),
- array( '!key', 'value', 'row with ! at the beginning of key' ),
- array( 'k!ey', 'value', 'row with ! inside key' ),
- array( '#key', 'value', 'row with # at the beginning of key' ),
- array( 'k#ey', 'value', 'row with # inside key' ),
- array( 'k{ey}', 'value', 'row with { and } inside key' ),
- array( 'k\\tey', 'value\\', 'row with escapes' ),
- array( '01234', '13.34', 'row with numbers' ),
- array( '\\n\\tкая', 'кая', 'row with annoying characteres' ),
- array( '=', '', 'row with empty value' ),
- array( '#k e\\=y#', '=v!\\=alue\\ \\\\', 'complex row' ),
- array( 'Key with "quotes"', 'Value "with quotes" also', 'row with double-quotes' ),
- array( 'Key with \\"quotes\\"', 'Value \\"with quotes\\" also',
- 'row with double-quotes AND backslashes' ),
- );
+ return [
+ [ 'key', 'value', 'simple row' ],
+ [ 'key', 'value', 'row with different sep' ],
+ [ 'key', 'val=ue', 'row with sep inside value' ],
+ [ 'k=ey', 'value', 'row with sep inside key' ],
+ [ '!key', 'value', 'row with ! at the beginning of key' ],
+ [ 'k!ey', 'value', 'row with ! inside key' ],
+ [ '#key', 'value', 'row with # at the beginning of key' ],
+ [ 'k#ey', 'value', 'row with # inside key' ],
+ [ 'k{ey}', 'value', 'row with { and } inside key' ],
+ [ 'k\\tey', 'value\\', 'row with escapes' ],
+ [ '01234', '13.34', 'row with numbers' ],
+ [ '\\n\\tкая', 'кая', 'row with annoying characteres' ],
+ [ '=', '', 'row with empty value' ],
+ [ '#k e\\=y#', '=v!\\=alue\\ \\\\', 'complex row' ],
+ [ 'Key with "quotes"', 'Value "with quotes" also', 'row with double-quotes' ],
+ [ 'Key with \\"quotes\\"', 'Value \\"with quotes\\" also',
+ 'row with double-quotes AND backslashes' ],
+ ];
}
}
diff --git a/MLEB/Translate/tests/phpunit/ffs/DtdFFSTest.php b/MLEB/Translate/tests/phpunit/ffs/DtdFFSTest.php
index bb44c21c..9e76454d 100644
--- a/MLEB/Translate/tests/phpunit/ffs/DtdFFSTest.php
+++ b/MLEB/Translate/tests/phpunit/ffs/DtdFFSTest.php
@@ -6,23 +6,23 @@
* @author Niklas Laxström
* @author Amir E. Aharoni
* @file
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
class DtdFFSTest extends MediaWikiTestCase {
- protected $groupConfiguration = array(
- 'BASIC' => array(
+ protected $groupConfiguration = [
+ 'BASIC' => [
'class' => 'FileBasedMessageGroup',
'id' => 'test-id',
'label' => 'Test Label',
'namespace' => 'NS_MEDIAWIKI',
'description' => 'Test description',
- ),
- 'FILES' => array(
+ ],
+ 'FILES' => [
'class' => 'DtdFFS',
- ),
- );
+ ],
+ ];
public function testParsing() {
$file =
@@ -44,11 +44,11 @@ DTD;
$group = MessageGroupBase::factory( $this->groupConfiguration );
$ffs = new DtdFFS( $group );
$parsed = $ffs->readFromVariable( $file );
- $expected = array(
+ $expected = [
'okawix.title' => 'Okawix &okawix.vernum; - Navigator de Wikipedia',
'okawix.back' => 'Retro',
- );
- $expected = array( 'MESSAGES' => $expected, 'AUTHORS' => array( 'McDutchie' ) );
+ ];
+ $expected = [ 'MESSAGES' => $expected, 'AUTHORS' => [ 'McDutchie' ] ];
$this->assertEquals( $expected, $parsed );
}
}
diff --git a/MLEB/Translate/tests/phpunit/ffs/GettextFFSTest.php b/MLEB/Translate/tests/phpunit/ffs/GettextFFSTest.php
index f4e7a1f8..e471ceb9 100644
--- a/MLEB/Translate/tests/phpunit/ffs/GettextFFSTest.php
+++ b/MLEB/Translate/tests/phpunit/ffs/GettextFFSTest.php
@@ -5,7 +5,7 @@
* @file
* @author Niklas Laxström
* @copyright Copyright © 2012-2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -16,19 +16,19 @@ class GettextFFSTest extends MediaWikiTestCase {
public function setUp() {
parent::setUp();
- $this->groupConfiguration = array(
- 'BASIC' => array(
+ $this->groupConfiguration = [
+ 'BASIC' => [
'class' => 'FileBasedMessageGroup',
'id' => 'test-id',
'label' => 'Test Label',
'namespace' => 'NS_MEDIAWIKI',
'description' => 'Test description',
- ),
- 'FILES' => array(
+ ],
+ 'FILES' => [
'class' => 'GettextFFS',
'sourcePattern' => __DIR__ . '/../data/gettext.po',
- ),
- );
+ ],
+ ];
}
/**
@@ -39,44 +39,44 @@ class GettextFFSTest extends MediaWikiTestCase {
}
public static function provideMangling() {
- return array(
- array(
+ return [
+ [
'3f9999051ce0bc6e98f43224fe6ee1c220e34e49-Hello!_world_loooooooooooooooo',
- array( 'id' => 'Hello! world loooooooooooooooooooooooooooooooooooooooooong', 'ctxt' => 'baa' ),
+ [ 'id' => 'Hello! world loooooooooooooooooooooooooooooooooooooooooong', 'ctxt' => 'baa' ],
'legacy'
- ),
- array(
+ ],
+ [
'3f9999-Hello!_world_loooooooooooooooo',
- array( 'id' => 'Hello! world loooooooooooooooooooooooooooooooooooooooooong', 'ctxt' => 'baa' ),
+ [ 'id' => 'Hello! world loooooooooooooooooooooooooooooooooooooooooong', 'ctxt' => 'baa' ],
'simple'
- ),
+ ],
- array(
+ [
'1437e478b59e220640bf530f7e3bac93950eb8ae-"¤_=FJQ"_¤r_£_ab',
- array( 'id' => '"¤#=FJQ"<>¤r £}[]}%ab', 'ctxt' => false ),
+ [ 'id' => '"¤#=FJQ"<>¤r £}[]}%ab', 'ctxt' => false ],
'legacy'
- ),
- array(
+ ],
+ [
'1437e4-"¤#=FJQ"<>¤r_£}[]}%ab',
- array( 'id' => '"¤#=FJQ"<>¤r £}[]}%ab', 'ctxt' => false ),
+ [ 'id' => '"¤#=FJQ"<>¤r £}[]}%ab', 'ctxt' => false ],
'simple'
- ),
+ ],
- );
+ ];
}
public function testHashing() {
- $item1 = array(
+ $item1 = [
'id' => 'a',
'str' => 'b',
'ctxt' => false,
- );
+ ];
- $item2 = array(
+ $item2 = [
'id' => 'a',
'str' => 'b',
'ctxt' => '',
- );
+ ];
$this->assertNotEquals(
GettextFFS::generateKeyFromItem( $item1, 'legacy' ),
@@ -113,8 +113,8 @@ class GettextFFSTest extends MediaWikiTestCase {
$key = 'key';
$m = new FatMessage( 'key', 'definition' );
$m->setTranslation( 'translation' );
- $trans = array();
- $pot = array();
+ $trans = [];
+ $pot = [];
$pluralCount = 0;
$results = <<<GETTEXT
@@ -155,4 +155,102 @@ GETTEXT;
trim( $method->invoke( $ffs, $key, $m, $trans, $pot, $pluralCount ) )
);
}
+
+ /**
+ * @dataProvider provideShouldOverwrite
+ */
+ public function testShouldOverwrite( $a, $b, $expected, $comment ) {
+ $group = MessageGroupBase::factory( $this->groupConfiguration );
+ $ffs = new GettextFFS( $group );
+ $actual = $ffs->shouldOverwrite( $a, $b );
+ $this->assertEquals( $expected, $actual, $comment );
+ }
+
+ public function provideShouldOverwrite() {
+ $cases = [];
+
+ $cases[] = [
+<<<GETTEXT
+#
+msgid ""
+msgstr ""
+""
+"PO-Revision-Date: 2017-02-09 07:24:07+0000\\n"
+"X-POT-Import-Date: 2016-08-11 04:53:15+0000\\n"
+"Content-Type: text/plain; charset=UTF-8\\n"
+"Content-Transfer-Encoding: 8bit\\n"
+"Language: azb\\n"
+"X-Generator: MediaWiki 1.29.0-alpha; Translate 2017-01-24\\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\\n"
+
+#: frontend/templates/index.html:38
+msgid "About the map"
+msgstr ""
+GETTEXT
+ ,
+<<<GETTEXT
+#
+msgid ""
+msgstr ""
+""
+"PO-Revision-Date: 2017-02-06 07:07:03+0000\\n"
+"X-POT-Import-Date: 2016-08-11 04:53:15+0000\\n"
+"Content-Type: text/plain; charset=UTF-8\\n"
+"Content-Transfer-Encoding: 8bit\\n"
+"Language: azb\\n"
+"X-Generator: MediaWiki 1.29.0-alpha; Translate 2017-01-24\\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\\n"
+
+#: frontend/templates/index.html:38
+msgid "About the map"
+msgstr ""
+GETTEXT
+ ,
+ false,
+ "Only date has changed"
+ ];
+
+ $cases[] = [
+<<<GETTEXT
+#
+msgid ""
+msgstr ""
+""
+"PO-Revision-Date: 2017-02-09 07:24:07+0000\\n"
+"X-POT-Import-Date: 2016-08-11 04:53:15+0000\\n"
+"Content-Type: text/plain; charset=UTF-8\\n"
+"Content-Transfer-Encoding: 8bit\\n"
+"Language: azb\\n"
+"X-Generator: MediaWiki 1.29.0-alpha; Translate 2017-01-24\\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\\n"
+
+#: frontend/templates/index.html:38
+msgid "About the map"
+msgstr ""
+GETTEXT
+ ,
+<<<GETTEXT
+#
+msgid ""
+msgstr ""
+""
+"PO-Revision-Date: 2017-02-06 07:07:03+0000\\n"
+"X-POT-Import-Date: 2016-08-11 04:53:15+0000\\n"
+"Content-Type: text/plain; charset=UTF-8\\n"
+"Content-Transfer-Encoding: 8bit\\n"
+"Language: fi\\n"
+"X-Generator: MediaWiki 1.29.0-alpha; Translate 2017-01-24\\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\\n"
+
+#: frontend/templates/index.html:38
+msgid "About the map"
+msgstr "Tietoja kartasta"
+GETTEXT
+ ,
+ true,
+ "Content has changed"
+ ];
+
+ return $cases;
+ }
}
diff --git a/MLEB/Translate/tests/phpunit/ffs/IniFFSTest.php b/MLEB/Translate/tests/phpunit/ffs/IniFFSTest.php
index 05250b20..ac9cd96b 100644
--- a/MLEB/Translate/tests/phpunit/ffs/IniFFSTest.php
+++ b/MLEB/Translate/tests/phpunit/ffs/IniFFSTest.php
@@ -4,25 +4,25 @@
* files, which are sometimes used for translations.
* @author Niklas Laxström
* @copyright Copyright © 2012-2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
* @file
*/
class IniFFSTest extends MediaWikiTestCase {
- protected $groupConfiguration = array(
- 'BASIC' => array(
+ protected $groupConfiguration = [
+ 'BASIC' => [
'class' => 'FileBasedMessageGroup',
'id' => 'test-id',
'label' => 'Test Label',
'namespace' => 'NS_MEDIAWIKI',
'description' => 'Test description',
- ),
- 'FILES' => array(
+ ],
+ 'FILES' => [
'class' => 'IniFFS',
'sourcePattern' => 'ignored',
- ),
- );
+ ],
+ ];
public function testParsing() {
$file = file_get_contents( __DIR__ . '/../data/IniFFSTest1.ini' );
@@ -36,17 +36,17 @@ class IniFFSTest extends MediaWikiTestCase {
$this->assertTrue( IniFFS::isValid( $file ) );
$parsed = $ffs->readFromVariable( $file );
- $expected = array(
+ $expected = [
'hello' => 'Hello',
'world' => 'World!',
'all' => 'all = all',
'foo.bar' => 'bar',
'quote' => "We're having fun?",
- );
- $expected = array(
+ ];
+ $expected = [
'MESSAGES' => $expected,
- 'AUTHORS' => array( 'The king of very small kingdom' )
- );
+ 'AUTHORS' => [ 'The king of very small kingdom' ]
+ ];
$this->assertEquals( $expected, $parsed );
}
diff --git a/MLEB/Translate/tests/phpunit/ffs/JavaFFSTest.php b/MLEB/Translate/tests/phpunit/ffs/JavaFFSTest.php
index f6e7d4e7..17657079 100644
--- a/MLEB/Translate/tests/phpunit/ffs/JavaFFSTest.php
+++ b/MLEB/Translate/tests/phpunit/ffs/JavaFFSTest.php
@@ -10,18 +10,18 @@
class JavaFFSTest extends MediaWikiTestCase {
- protected $groupConfiguration = array(
- 'BASIC' => array(
+ protected $groupConfiguration = [
+ 'BASIC' => [
'class' => 'FileBasedMessageGroup',
'id' => 'test-id',
'label' => 'Test Label',
'namespace' => 'NS_MEDIAWIKI',
'description' => 'Test description',
- ),
- 'FILES' => array(
+ ],
+ 'FILES' => [
'class' => 'JavaFFS',
- ),
- );
+ ],
+ ];
public function testParsing() {
$file =
@@ -45,15 +45,15 @@ PROPERTIES;
$group = MessageGroupBase::factory( $this->groupConfiguration );
$ffs = new JavaFFS( $group );
$parsed = $ffs->readFromVariable( $file );
- $expected = array(
+ $expected = [
'website' => '<nowiki>http://en.wikipedia.org/</nowiki>',
'language' => 'English',
'message' => 'Welcome to Wikipedia!',
'key with spaces' => 'Value that can be looked up with "key with spaces".',
// We expect this one to be mangled for storage
'key-with-=7Bcurlies=7D' => 'Value that can be looked up with "key-with-{curlies}".',
- );
- $expected = array( 'MESSAGES' => $expected, 'AUTHORS' => array() );
+ ];
+ $expected = [ 'MESSAGES' => $expected, 'AUTHORS' => [] ];
$this->assertEquals( $expected, $parsed );
}
@@ -71,21 +71,21 @@ PROPERTIES;
}
public function rowValuesProvider() {
- return array(
- array( 'key', '=', 'value', 'simple row' ),
- array( 'key', ':', 'value', 'row with different sep' ),
- array( 'key', '=', 'val=ue', 'row with sep inside value' ),
- array( 'k=ey', '=', 'value', 'row with sep inside key' ),
- array( '!key', '=', 'value', 'row with ! at the beginning of key' ),
- array( 'k!ey', '=', 'value', 'row with ! inside key' ),
- array( '#key', '=', 'value', 'row with # at the beginning of key' ),
- array( 'k#ey', '=', 'value', 'row with # inside key' ),
- array( 'k{ey}', '=', 'value', 'row with { and } inside key' ),
- array( 'k\\tey', '=', 'value\\', 'row with escapes' ),
- array( '01234', '=', '13.34', 'row with numbers' ),
- array( '\\n\\tкая', '=', 'кая', 'row with annoying characteres' ),
- array( '=', '=', '', 'row with empty value' ),
- array( '#k e\\=y#', '=', '=v!\\=alue\\ \\\\', 'complex row' ),
- );
+ return [
+ [ 'key', '=', 'value', 'simple row' ],
+ [ 'key', ':', 'value', 'row with different sep' ],
+ [ 'key', '=', 'val=ue', 'row with sep inside value' ],
+ [ 'k=ey', '=', 'value', 'row with sep inside key' ],
+ [ '!key', '=', 'value', 'row with ! at the beginning of key' ],
+ [ 'k!ey', '=', 'value', 'row with ! inside key' ],
+ [ '#key', '=', 'value', 'row with # at the beginning of key' ],
+ [ 'k#ey', '=', 'value', 'row with # inside key' ],
+ [ 'k{ey}', '=', 'value', 'row with { and } inside key' ],
+ [ 'k\\tey', '=', 'value\\', 'row with escapes' ],
+ [ '01234', '=', '13.34', 'row with numbers' ],
+ [ '\\n\\tкая', '=', 'кая', 'row with annoying characteres' ],
+ [ '=', '=', '', 'row with empty value' ],
+ [ '#k e\\=y#', '=', '=v!\\=alue\\ \\\\', 'complex row' ],
+ ];
}
}
diff --git a/MLEB/Translate/tests/phpunit/ffs/JsonFFSTest.php b/MLEB/Translate/tests/phpunit/ffs/JsonFFSTest.php
index 0431fe49..12d05194 100644
--- a/MLEB/Translate/tests/phpunit/ffs/JsonFFSTest.php
+++ b/MLEB/Translate/tests/phpunit/ffs/JsonFFSTest.php
@@ -5,7 +5,7 @@
* @file
* @author Niklas Laxström
* @copyright Copyright © 2012-2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -15,20 +15,20 @@ class JsonFFSTest extends MediaWikiTestCase {
public function setUp() {
parent::setUp();
- $this->groupConfiguration = array(
- 'BASIC' => array(
+ $this->groupConfiguration = [
+ 'BASIC' => [
'class' => 'FileBasedMessageGroup',
'id' => 'test-id',
'label' => 'Test Label',
'namespace' => 'NS_MEDIAWIKI',
'description' => 'Test description',
- ),
- 'FILES' => array(
+ ],
+ 'FILES' => [
'class' => 'JsonFFS',
'sourcePattern' => __DIR__ . '/../data/jsontest_%CODE%.json',
'targetPattern' => 'jsontest_%CODE%.json',
- ),
- );
+ ],
+ ];
}
protected $groupConfiguration;
@@ -43,14 +43,14 @@ class JsonFFSTest extends MediaWikiTestCase {
$group = MessageGroupBase::factory( $this->groupConfiguration );
$ffs = new JsonFFS( $group );
$parsed = $ffs->readFromVariable( $file );
- $expected = array(
+ $expected = [
'MESSAGES' => $messages,
'AUTHORS' => $authors,
- 'METADATA' => array(),
- );
+ 'METADATA' => [],
+ ];
$this->assertEquals( $expected, $parsed );
- if ( $messages === array() ) {
+ if ( $messages === [] ) {
$this->assertFalse( JsonFFS::isValid( $file ) );
} else {
$this->assertTrue( JsonFFS::isValid( $file ) );
@@ -58,7 +58,7 @@ class JsonFFSTest extends MediaWikiTestCase {
}
public function jsonProvider() {
- $values = array();
+ $values = [];
$file1 =
<<<JSON
@@ -69,15 +69,15 @@ class JsonFFSTest extends MediaWikiTestCase {
}
JSON;
- $values[] = array(
- array(
+ $values[] = [
+ [
'one' => 'jeden',
'two' => 'dwa',
'three' => 'trzy',
- ),
- array(),
+ ],
+ [],
$file1,
- );
+ ];
$file2 =
<<<JSON
@@ -89,11 +89,11 @@ JSON;
}
JSON;
- $values[] = array(
- array( 'word' => 'слово' ),
- array( 'Niklas', 'Amir' ),
+ $values[] = [
+ [ 'word' => 'слово' ],
+ [ 'Niklas', 'Amir' ],
$file2,
- );
+ ];
$file3 =
<<<JSON
@@ -101,11 +101,11 @@ JSON;
Json!>@£0 file
JSON;
- $values[] = array(
- array(),
- array(),
+ $values[] = [
+ [],
+ [],
$file3,
- );
+ ];
return $values;
}
@@ -121,7 +121,7 @@ JSON;
$parsed = $ffs->readFromVariable( $data );
$this->assertEquals(
- array( 'Nike the bunny' ),
+ [ 'Nike the bunny' ],
$parsed['AUTHORS'],
'Authors are exported'
);
diff --git a/MLEB/Translate/tests/phpunit/ffs/MediaWikiExtensionFFSTest.php b/MLEB/Translate/tests/phpunit/ffs/MediaWikiExtensionFFSTest.php
deleted file mode 100644
index 98a6c847..00000000
--- a/MLEB/Translate/tests/phpunit/ffs/MediaWikiExtensionFFSTest.php
+++ /dev/null
@@ -1,110 +0,0 @@
-<?php
-/**
- * Tests for MediaWikiExtensionFFS
- * @author Niklas Laxström
- * @file
- * @copyright Copyright © 2012-2013, Niklas Laxström
- * @license GPL-2.0+
- */
-
-/**
- * @see MediaWikiExtensionFFS
- */
-class MediaWikiExtensionFFSTest extends MediaWikiTestCase {
- protected $conf = array(
- 'BASIC' => array(
- 'class' => 'MediaWikiExtensionMessageGroup',
- 'id' => 'test-id',
- 'label' => 'Test Label',
- 'namespace' => 'NS_MEDIAWIKI',
- 'description' => 'Test description',
- ),
- 'FILES' => array(
- 'class' => 'MediaWikiExtensionFFS',
- ),
- );
-
- protected function setUp() {
- parent::setUp();
- $this->setMwGlobals( array(
- 'wgTranslateDocumentationLanguageCode' => 'qqq',
- ) );
- }
-
- public function testWriteReal() {
- if ( !method_exists( 'LanguageNames', 'getNames' ) ) {
- $this->markTestSkipped( 'Cldr extension is not installed' );
- }
-
- $this->conf['FILES']['sourcePattern'] = __DIR__ . '/../data/Example.i18n.php';
- $ffs = MessageGroupBase::factory( $this->conf )->getFFS();
- $obj = new ReflectionObject( $ffs );
- $method = $obj->getMethod( 'writeReal' );
- $method->setAccessible( true );
- $collection = new MockMessageCollectionForExport();
- $result = $method->invoke( $ffs, $collection );
-
- $expected = file_get_contents( __DIR__ . '/../data/Example-result.i18n.php' );
- $this->assertEquals( $expected, $result );
- }
-
- public function testGenerateMessageBlock() {
- $ffs = MessageGroupBase::factory( $this->conf )->getFFS();
- $obj = new ReflectionObject( $ffs );
- $method = $obj->getMethod( 'generateMessageBlock' );
- $method->setAccessible( true );
- $collection = new MockMessageCollectionForExport();
- $mangler = StringMatcher::emptyMatcher();
-
- $result = $method->invoke( $ffs, $collection, $mangler );
-
- $expected = "\n\t'translatedmsg' => 'translation',\n\t'fuzzymsg' => 'translation', # Fuzzy\n";
- $this->assertEquals( $expected, $result );
- }
-
- /**
- * @dataProvider provideQuotableStrings
- */
- public function testQuote( $source, $expected ) {
- $class = new ReflectionClass( 'MediaWikiExtensionFFS' );
- $method = $class->getMethod( 'quote' );
- $method->setAccessible( true );
- $result = $method->invoke( null, $source );
- $this->assertEquals( $expected, $result );
- }
-
- public static function provideQuotableStrings() {
- return array(
- array( 'key', "'key'" ),
- array( 'normal $1 variable', "'normal $1 variable'" ),
- array( 'abnormal $foo variable', "'abnormal \$foo variable'" ),
- array( 'quote " and quote \'', "'quote \" and quote \\''" ),
- array( 'quote " and quote \' twice \'', "\"quote \\\" and quote ' twice '\"" ),
- );
- }
-
- /**
- * @dataProvider provideComments
- */
- public function testParseAuthorsFromString( $source, $expected ) {
- $class = new ReflectionClass( 'MediaWikiExtensionFFS' );
- $method = $class->getMethod( 'parseAuthorsFromString' );
- $method->setAccessible( true );
- $result = $method->invoke( null, $source );
- $this->assertEquals( $expected, $result );
- }
-
- public static function provideComments() {
- $comment =
- <<<PHP
- /** Message documentation (Message documentation)
- * @author Purodha
- * @author The Evil IP address
- */
-PHP;
-
- return array(
- array( $comment, array( 'Purodha', 'The Evil IP address' ) ),
- );
- }
-}
diff --git a/MLEB/Translate/tests/phpunit/ffs/RubyYamlFFSTest.php b/MLEB/Translate/tests/phpunit/ffs/RubyYamlFFSTest.php
deleted file mode 100644
index 3629b2e9..00000000
--- a/MLEB/Translate/tests/phpunit/ffs/RubyYamlFFSTest.php
+++ /dev/null
@@ -1,125 +0,0 @@
-<?php
-
-class RubyYamlFFSTest extends MediaWikiTestCase {
- /** @var MessageGroup */
- protected $group;
-
- /** @var FFS */
- protected $ffs;
-
- protected $groupConfiguration = array(
- 'BASIC' => array(
- 'class' => 'FileBasedMessageGroup',
- 'id' => 'test-id',
- 'label' => 'Test Label',
- 'namespace' => 'NS_MEDIAWIKI',
- 'description' => 'Test description',
- ),
- 'FILES' => array(
- 'class' => 'RubyYamlFFS',
- ),
- );
-
- protected function setUp() {
- parent::setUp();
- $group = MessageGroupBase::factory( $this->groupConfiguration );
- /** @var YamlFFS $ffs */
- $this->ffs = $group->getFFS();
- }
-
- public function testFlattenPluralWithNoPlurals() {
- $input = array(
- 'much' => 'a lot',
- 'less' => 'not so much',
- );
- $output = false;
- $this->assertEquals( $output, $this->ffs->flattenPlural( $input ) );
- }
-
- public function testFlattenPluralWithPlurals() {
- $input = array(
- 'one' => 'just a tiny bit',
- 'two' => 'not so much',
- 'other' => 'maybe a lot',
- );
- $output = '{{PLURAL|one=just a tiny bit|two=not so much|maybe a lot}}';
- $this->assertEquals( $output, $this->ffs->flattenPlural( $input ) );
- }
-
- public function testFlattenPluralWithArrays() {
- $input = array(
- 'one' => array(
- 'multi' => 'he lives in a multistorey house',
- 'row' => 'he lives in a row house',
- ),
- 'other' => array(
- 'multi' => 'he lives in mountain cave',
- 'row' => 'he lives in a cave near the river',
- ),
- );
- $output = false;
- $this->assertEquals( $output, $this->ffs->flattenPlural( $input ) );
- }
-
- /**
- * @expectedException MWException
- * @expectedExceptionMessage Reserved plural keywords mixed with other keys
- * @dataProvider flattenPluralsWithMixedKeywordsProvider
- */
-
- public function testFlattenPluralsWithMixedKeywords( $input, $comment ) {
- $this->ffs->flattenPlural( $input );
- }
-
- public function flattenPluralsWithMixedKeywordsProvider() {
- return array(
- array(
- array(
- 'carrot' => 'I like carrots',
- 'other' => 'I like milk',
- ),
- 'reserved keyword at the end',
- ),
- array(
- array(
- 'one' => 'I am the one leader',
- 'club' => 'I am the club leader',
- ),
- 'reserved keyword at the beginning',
- )
- );
- }
-
- /**
- * @dataProvider unflattenDataProvider
- */
- public function testUnflattenPural( $key, $value, $result ) {
- $this->assertEquals(
- $result,
- $this->ffs->unflattenPlural( $key, $value )
- );
- }
-
- public function unflattenDataProvider() {
- return array(
- array( 'key', '{{PLURAL}}', false ),
- array( 'key', 'value', array( 'key' => 'value' ) ),
- array( 'key', '{{PLURAL|one=cat|other=cats}}',
- array( 'key.one' => 'cat', 'key.other' => 'cats' )
- ),
- array( 'key', '{{PLURAL|one=шляху %{related_ways}|шляхоў %{related_ways}}}',
- array(
- 'key.one' => 'шляху %{related_ways}',
- 'key.other' => 'шляхоў %{related_ways}'
- )
- ),
- array( 'key', '{{PLURAL|foo=cat}}',
- array( 'key.other' => 'foo=cat' )
- ),
- array( 'key', '{{PLURAL|zero=0|one=1|two=2|few=3|many=160|other=898}}',
- array( 'key.zero' => '0', 'key.one' => '1', 'key.two' => '2',
- 'key.few' => '3', 'key.many' => '160', 'key.other' => '898' )
- ),
- );
- }
-}
diff --git a/MLEB/Translate/tests/phpunit/ffs/XliffFFSTest.php b/MLEB/Translate/tests/phpunit/ffs/XliffFFSTest.php
index 3974338f..ac9c7db3 100644
--- a/MLEB/Translate/tests/phpunit/ffs/XliffFFSTest.php
+++ b/MLEB/Translate/tests/phpunit/ffs/XliffFFSTest.php
@@ -4,45 +4,46 @@
*
* @file
* @author Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
class XliffFFSTest extends MediaWikiTestCase {
- protected $groupConfiguration = array(
- 'BASIC' => array(
+ protected $groupConfiguration = [
+ 'BASIC' => [
'class' => 'FileBasedMessageGroup',
'id' => 'test-id',
'label' => 'Test Label',
'namespace' => 'NS_MEDIAWIKI',
'description' => 'Test description',
- ),
- 'FILES' => array(
+ ],
+ 'FILES' => [
'class' => 'XliffFFS',
'sourcePattern' => '',
- ),
- );
+ ],
+ ];
public function testParsing() {
+ /** @var FileBasedMessageGroup $group */
$group = MessageGroupBase::factory( $this->groupConfiguration );
$ffs = new XliffFFS( $group );
$file = file_get_contents( __DIR__ . '/../data/minimal.xlf' );
$parsed = $ffs->readFromVariable( $file, 'target' );
- $expected = array(
+ $expected = [
'1' => 'Hei maailma',
'2' => TRANSLATE_FUZZY . 'Fuzzy translation',
'3' => 'Tämä on <g id="1" ctype="bold">paksu</g>.',
- );
- $expected = array( 'MESSAGES' => $expected );
+ ];
+ $expected = [ 'MESSAGES' => $expected ];
$this->assertEquals( $expected, $parsed );
$parsed = $ffs->readFromVariable( $file, 'source' );
- $expected = array(
+ $expected = [
'1' => 'Hello world',
'2' => 'Fuzzy message',
'3' => 'This is <g id="1" ctype="bold">bold</g>.',
- );
- $expected = array( 'MESSAGES' => $expected );
+ ];
+ $expected = [ 'MESSAGES' => $expected ];
$this->assertEquals( $expected, $parsed );
}
}
diff --git a/MLEB/Translate/tests/phpunit/insertables/MediaWikiInsertablesSuggesterTest.php b/MLEB/Translate/tests/phpunit/insertables/MediaWikiInsertablesSuggesterTest.php
index a96eca2a..be621739 100644
--- a/MLEB/Translate/tests/phpunit/insertables/MediaWikiInsertablesSuggesterTest.php
+++ b/MLEB/Translate/tests/phpunit/insertables/MediaWikiInsertablesSuggesterTest.php
@@ -4,10 +4,10 @@
*
* @file
* @author Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
-class MediaWikiInsertablesSuggesterTest extends MediaWikiTestCase {
+class MediaWikiInsertablesSuggesterTest extends PHPUnit\Framework\TestCase {
/**
* @dataProvider getInsertablesProvider
@@ -18,18 +18,21 @@ class MediaWikiInsertablesSuggesterTest extends MediaWikiTestCase {
}
public function getInsertablesProvider() {
- return array(
- array( 'Hi $1', array(
+ return [
+ [ 'Hi $1', [
new Insertable( '$1', '$1', '' )
- ) ),
- array( '{{GENDER:$1|he|she}}', array(
+ ] ],
+ [ 'Hello $1user', [
+ new Insertable( '$1user', '$1user', '' ),
+ ] ],
+ [ '{{GENDER:$1|he|she}}', [
new Insertable( '$1', '$1', '' ),
new Insertable( 'GENDER:$1', '{{GENDER:$1|', '}}' ),
- ) ),
+ ] ],
// Parameterless gender
- array( '{{GENDER:|he|she}}', array(
+ [ '{{GENDER:|he|she}}', [
new Insertable( 'GENDER:', '{{GENDER:|', '}}' ),
- ) ),
- );
+ ] ],
+ ];
}
}
diff --git a/MLEB/Translate/tests/phpunit/insertables/TranslatablePageInsertablesSuggesterTest.php b/MLEB/Translate/tests/phpunit/insertables/TranslatablePageInsertablesSuggesterTest.php
index d0fb3f2a..4d0a5171 100644
--- a/MLEB/Translate/tests/phpunit/insertables/TranslatablePageInsertablesSuggesterTest.php
+++ b/MLEB/Translate/tests/phpunit/insertables/TranslatablePageInsertablesSuggesterTest.php
@@ -4,10 +4,10 @@
*
* @file
* @author Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
-class TranslatablePageInsertablesSuggesterTest extends MediaWikiInsertablesSuggesterTest {
+class TranslatablePageInsertablesSuggesterTest extends PHPUnit\Framework\TestCase {
/**
* @dataProvider getInsertablesProvider
*/
@@ -17,23 +17,23 @@ class TranslatablePageInsertablesSuggesterTest extends MediaWikiInsertablesSugge
}
public function getInsertablesProvider() {
- return array(
- array(
+ return [
+ [
'Hi $1, I am $myname $myLastName.',
- array(
+ [
new Insertable( '$1', '$1', '' ),
new Insertable( '$myname', '$myname', '' ),
new Insertable( '$myLastName', '$myLastName', '' ),
- )
- ),
- array(
+ ]
+ ],
+ [
'Insertables can $have-hyphens, $number9 and $under_scores',
- array(
+ [
new Insertable( '$have-hyphens', '$have-hyphens', '' ),
new Insertable( '$number9', '$number9', '' ),
new Insertable( '$under_scores', '$under_scores', '' ),
- )
- ),
- );
+ ]
+ ],
+ ];
}
}
diff --git a/MLEB/Translate/tests/qunit/ext.translate.parsers.test.js b/MLEB/Translate/tests/qunit/ext.translate.parsers.test.js
index 96d0077c..004d7dff 100644
--- a/MLEB/Translate/tests/qunit/ext.translate.parsers.test.js
+++ b/MLEB/Translate/tests/qunit/ext.translate.parsers.test.js
@@ -1,8 +1,7 @@
-/**
+/*!
* Tests for ext.translate.parsers.js.
*
- * @file
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
( function ( $, mw ) {
@@ -10,7 +9,7 @@
QUnit.module( 'ext.translate.parsers', QUnit.newMwEnvironment() );
- QUnit.test( '-- External links', 3, function ( assert ) {
+ QUnit.test( '-- External links', function ( assert ) {
mw.config.set( 'wgArticlePath', '/wiki/$1' );
assert.strictEqual(
diff --git a/MLEB/Translate/tests/qunit/ext.translate.special.pagemigration.test.js b/MLEB/Translate/tests/qunit/ext.translate.special.pagemigration.test.js
index 4eb5feda..e5c97ae5 100644
--- a/MLEB/Translate/tests/qunit/ext.translate.special.pagemigration.test.js
+++ b/MLEB/Translate/tests/qunit/ext.translate.special.pagemigration.test.js
@@ -1,8 +1,7 @@
-/**
+/*!
* Tests for ext.translate.special.pagemigration.js.
*
- * @file
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
( function ( $, mw ) {
@@ -14,15 +13,15 @@
}
} ) );
- QUnit.asyncTest( '-- Source units', function ( assert ) {
- QUnit.expect( 1 );
- var data = '{ "query": { "messagecollection": [ { "key": "key_",' +
+ QUnit.test( '-- Source units', function ( assert ) {
+ var done, data = '{ "query": { "messagecollection": [ { "key": "key_",' +
' "definition": "definition_", "title": "title_" }, { "key": "key_1",' +
' "definition": "definition_1", "title": "title_1" } ] } }';
+ done = assert.async();
mw.translate.getSourceUnits( 'Help:Special pages' ).done( function ( sourceUnits ) {
assert.strictEqual( 1, sourceUnits.length, 'Source units retrieved' );
- QUnit.start();
+ done();
} );
this.server.respond( function ( request ) {
@@ -30,13 +29,13 @@
} );
} );
- QUnit.asyncTest( '-- Page does not exist', function ( assert ) {
- QUnit.expect( 1 );
- var data = '{ "query": { "pages": { "-1": { "missing": "" } } } }';
+ QUnit.test( '-- Page does not exist', function ( assert ) {
+ var done, data = '{ "query": { "pages": { "-1": { "missing": "" } } } }';
+ done = assert.async();
mw.translate.getFuzzyTimestamp( 'ugagagagagaga/uga' ).fail( function ( timestamp ) {
assert.strictEqual( undefined, timestamp, 'Page does not exist' );
- QUnit.start();
+ done();
} );
this.server.respond( function ( request ) {
@@ -44,14 +43,14 @@
} );
} );
- QUnit.asyncTest( '-- Fuzzy timestamp', function ( assert ) {
- QUnit.expect( 1 );
- var data = '{ "query": { "pages": { "19563": {"revisions": ' +
+ QUnit.test( '-- Fuzzy timestamp', function ( assert ) {
+ var done, data = '{ "query": { "pages": { "19563": {"revisions": ' +
'[ {"timestamp": "2014-02-18T20:59:58Z" }, { "timestamp": "t2" } ] } } } }';
+ done = assert.async();
mw.translate.getFuzzyTimestamp( 'Help:Special pages/fr' ).done( function ( timestamp ) {
assert.strictEqual( '2014-02-18T20:59:57.000Z', timestamp, 'Fuzzy timestamp retrieved' );
- QUnit.start();
+ done();
} );
this.server.respond( function ( request ) {
@@ -59,15 +58,15 @@
} );
} );
- QUnit.asyncTest( '-- Split translation page', function ( assert ) {
- QUnit.expect( 1 );
- var data = '{ "query": { "pages": { "19563": { "revisions": ' +
+ QUnit.test( '-- Split translation page', function ( assert ) {
+ var done, data = '{ "query": { "pages": { "19563": { "revisions": ' +
'[ { "*": "unit1\\n\\nunit2\\n\\nunit3" } ] } } } }';
+ done = assert.async();
mw.translate.splitTranslationPage( '2014-02-18T20:59:57.000Z', 'Help:Special pages/fr' )
.done( function ( translationUnits ) {
assert.strictEqual( 3, translationUnits.length, 'Translation page split into units' );
- QUnit.start();
+ done();
} );
this.server.respond( function ( request ) {
@@ -76,21 +75,20 @@
} );
QUnit.test( '-- Align h2 headers', function ( assert ) {
- QUnit.expect( 2 );
var sourceUnits, translationUnits1, result1,
translationUnits2, result2;
- sourceUnits = [{'identifier':'1','definition':'abc'}, {'identifier':'2','definition':'==123=='},
- {'identifier':'3','definition':'pqr'}, {'identifier':'4','definition':'xyz'},
- {'identifier':'5','definition':'mno'}, {'identifier':'6','definition':'==456=='}];
+ sourceUnits = [ { identifier: '1', definition: 'abc' }, { identifier: '2', definition: '==123==' },
+ { identifier: '3', definition: 'pqr' }, { identifier: '4', definition: 'xyz' },
+ { identifier: '5', definition: 'mno' }, { identifier: '6', definition: '==456==' } ];
- translationUnits1 = ['==123==', 'pqr', '==456=='];
+ translationUnits1 = [ '==123==', 'pqr', '==456==' ];
- translationUnits2 = ['abc', 'lmn', '==123==', 'pqr', '==456=='];
+ translationUnits2 = [ 'abc', 'lmn', '==123==', 'pqr', '==456==' ];
- result1 = ['', '==123==', 'pqr', '', '', '==456=='];
+ result1 = [ '', '==123==', 'pqr', '', '', '==456==' ];
- result2 = ['abc\nlmn\n', '==123==', 'pqr', '', '', '==456=='];
+ result2 = [ 'abc\nlmn\n', '==123==', 'pqr', '', '', '==456==' ];
translationUnits1 = mw.translate.alignHeaders( sourceUnits, translationUnits1 );
assert.deepEqual( translationUnits1, result1, 'h2 headers aligned without merging' );
@@ -98,5 +96,4 @@
translationUnits2 = mw.translate.alignHeaders( sourceUnits, translationUnits2 );
assert.deepEqual( translationUnits2, result2, 'h2 headers aligned with merging' );
} );
-
-}( jQuery, mediaWiki ) ); \ No newline at end of file
+}( jQuery, mediaWiki ) );
diff --git a/MLEB/Translate/translationaids/CurrentTranslationAid.php b/MLEB/Translate/translationaids/CurrentTranslationAid.php
index 43bc084b..df1c38d2 100644
--- a/MLEB/Translate/translationaids/CurrentTranslationAid.php
+++ b/MLEB/Translate/translationaids/CurrentTranslationAid.php
@@ -4,8 +4,7 @@
*
* @file
* @author Niklas Laxström
- * @copyright Copyright © 2012-2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -25,14 +24,14 @@ class CurrentTranslationAid extends TranslationAid {
$title->getNamespace()
);
- wfRunHooks( 'TranslatePrefillTranslation', array( &$translation, $this->handle ) );
+ Hooks::run( 'TranslatePrefillTranslation', [ &$translation, $this->handle ] );
$fuzzy = MessageHandle::hasFuzzyString( $translation ) || $this->handle->isFuzzy();
$translation = str_replace( TRANSLATE_FUZZY, '', $translation );
- return array(
+ return [
'language' => $this->handle->getCode(),
'fuzzy' => $fuzzy,
'value' => $translation,
- );
+ ];
}
}
diff --git a/MLEB/Translate/translationaids/DocumentationAid.php b/MLEB/Translate/translationaids/DocumentationAid.php
index 4eeb4478..48d330eb 100644
--- a/MLEB/Translate/translationaids/DocumentationAid.php
+++ b/MLEB/Translate/translationaids/DocumentationAid.php
@@ -5,7 +5,7 @@
* @file
* @author Niklas Laxström
* @copyright Copyright © 2012-2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -26,10 +26,10 @@ class DocumentationAid extends TranslationAid {
$info = TranslateUtils::getMessageContent( $page, $wgTranslateDocumentationLanguageCode, $ns );
- return array(
+ return [
'language' => $wgContLang->getCode(),
'value' => $info,
'html' => $this->context->getOutput()->parse( $info ),
- );
+ ];
}
}
diff --git a/MLEB/Translate/translationaids/GettextDocumentationAid.php b/MLEB/Translate/translationaids/GettextDocumentationAid.php
index 5f599cb1..b7cd68cf 100644
--- a/MLEB/Translate/translationaids/GettextDocumentationAid.php
+++ b/MLEB/Translate/translationaids/GettextDocumentationAid.php
@@ -5,7 +5,7 @@
* @file
* @author Niklas Laxström
* @copyright Copyright © 2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -16,17 +16,16 @@
*/
class GettextDocumentationAid extends TranslationAid {
public function getData() {
-
// We need to get the primary group to get the correct file
// So $group can be different from $this->group
$group = $this->handle->getGroup();
if ( !$group instanceof FileBasedMessageGroup ) {
- throw new TranslationHelperException( "Not a Gettext group" );
+ throw new TranslationHelperException( 'Not a Gettext group' );
}
$ffs = $group->getFFS();
if ( !$ffs instanceof GettextFFS ) {
- throw new TranslationHelperException( "Not a Gettext group" );
+ throw new TranslationHelperException( 'Not a Gettext group' );
}
global $wgContLang;
@@ -60,11 +59,11 @@ class GettextDocumentationAid extends TranslationAid {
}
}
- return array(
+ return [
'language' => $wgContLang->getCode(),
// @todo Provide raw data when possible
- //'value' => $help,
+ // 'value' => $help,
'html' => $this->context->getOutput()->parse( $out ),
- );
+ ];
}
}
diff --git a/MLEB/Translate/translationaids/InOtherLanguagesAid.php b/MLEB/Translate/translationaids/InOtherLanguagesAid.php
index f10d7d30..41570860 100644
--- a/MLEB/Translate/translationaids/InOtherLanguagesAid.php
+++ b/MLEB/Translate/translationaids/InOtherLanguagesAid.php
@@ -5,7 +5,7 @@
* @file
* @author Niklas Laxström
* @copyright Copyright © 2012-2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -16,12 +16,12 @@
*/
class InOtherLanguagesAid extends TranslationAid {
public function getData() {
- $suggestions = array(
+ $suggestions = [
'**' => 'suggestion',
- );
+ ];
// Fuzzy translations are not included in these
- $translations = $this->getTranslations();
+ $translations = $this->dataProvider->getGoodTranslations();
$code = $this->handle->getCode();
$sourceLanguage = $this->handle->getGroup()->getSourceLanguage();
@@ -35,10 +35,10 @@ class InOtherLanguagesAid extends TranslationAid {
continue;
}
- $suggestions[] = array(
+ $suggestions[] = [
'language' => $fbcode,
'value' => $translations[$fbcode],
- );
+ ];
}
return $suggestions;
@@ -67,7 +67,7 @@ class InOtherLanguagesAid extends TranslationAid {
}
// Global configuration settings
- $fallbacks = array();
+ $fallbacks = [];
if ( isset( $wgTranslateLanguageFallbacks[$code] ) ) {
$fallbacks = (array)$wgTranslateLanguageFallbacks[$code];
}
diff --git a/MLEB/Translate/translationaids/InsertablesAid.php b/MLEB/Translate/translationaids/InsertablesAid.php
index 65b36f84..0bd964f5 100644
--- a/MLEB/Translate/translationaids/InsertablesAid.php
+++ b/MLEB/Translate/translationaids/InsertablesAid.php
@@ -4,7 +4,7 @@
*
* @file
* @author Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -16,7 +16,6 @@
*/
class InsertablesAid extends TranslationAid {
public function getData() {
-
// We need to get the primary group to get the correct file
// So $group can be different from $this->group
$group = $this->handle->getGroup();
@@ -25,27 +24,27 @@ class InsertablesAid extends TranslationAid {
// the message group class hierarche doesn't lend itself easily
// to the user of interfaces for this purpose.
if ( !method_exists( $group, 'getInsertablesSuggester' ) ) {
- throw new TranslationHelperException( "Group does not have a suggester" );
+ throw new TranslationHelperException( 'Group does not have a suggester' );
}
$suggester = $group->getInsertablesSuggester();
// It is okay to return null suggester
if ( !$suggester ) {
- throw new TranslationHelperException( "Group does not have a suggester" );
+ throw new TranslationHelperException( 'Group does not have a suggester' );
}
- $insertables = $suggester->getInsertables( $this->getDefinition() );
- $blob = array();
+ $insertables = $suggester->getInsertables( $this->dataProvider->getDefinition() );
+ $blob = [];
foreach ( $insertables as $insertable ) {
$displayText = $insertable->getDisplayText();
// The keys are used for de-duplication
- $blob[$displayText] = array(
+ $blob[$displayText] = [
'display' => $displayText,
'pre' => $insertable->getPreText(),
'post' => $insertable->getPostText(),
- );
+ ];
}
$blob = array_values( $blob );
diff --git a/MLEB/Translate/translationaids/MachineTranslationAid.php b/MLEB/Translate/translationaids/MachineTranslationAid.php
index dee7680d..fa14a13b 100644
--- a/MLEB/Translate/translationaids/MachineTranslationAid.php
+++ b/MLEB/Translate/translationaids/MachineTranslationAid.php
@@ -5,38 +5,83 @@
* @file
* @author Niklas Laxström
* @copyright Copyright © 2012-2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
* Translation aid which gives suggestion from machine translation services.
*
* @ingroup TranslationAids
- * @since 2013-01-01
+ * @since 2013-01-01 | 2015.02 extends QueryAggregatorAwareTranslationAid
*/
-class MachineTranslationAid extends TranslationAid {
- public function getData() {
- $suggestions = array( '**' => 'suggestion' );
-
- $translations = $this->getTranslations();
+class MachineTranslationAid extends QueryAggregatorAwareTranslationAid {
+ public function populateQueries() {
+ $definition = $this->dataProvider->getDefinition();
+ $translations = $this->dataProvider->getGoodTranslations();
$from = $this->group->getSourceLanguage();
$to = $this->handle->getCode();
- global $wgTranslateTranslationServices;
- foreach ( $wgTranslateTranslationServices as $name => $config ) {
- if ( $config['type'] === 'ttmserver' ) {
+ if ( trim( $definition ) === '' ) {
+ return;
+ }
+
+ foreach ( $this->getWebServices( 'mt' ) as $service ) {
+ if ( $service->checkTranslationServiceFailure() ) {
continue;
}
- $service = TranslationWebService::factory( $name, $config );
- if ( !$service ) {
- continue;
+ try {
+ if ( $service->isSupportedLanguagePair( $from, $to ) ) {
+ $this->storeQuery( $service, $from, $to, $definition );
+ continue;
+ }
+
+ // Search for translations which we can use as a source for MT
+ // @todo: Support setting priority of languages like Yandex used to have
+ foreach ( $translations as $from => $text ) {
+ if ( !$service->isSupportedLanguagePair( $from, $to ) ) {
+ continue;
+ }
+
+ $this->storeQuery( $service, $from, $to, $text );
+ break;
+ }
+ } catch ( TranslationWebServiceConfigurationException $e ) {
+ throw new TranslationHelperException( $service->getName() . ': ' . $e->getMessage() );
}
+ }
+ }
+
+ public function getData() {
+ $suggestions = [ '**' => 'suggestion' ];
+
+ foreach ( $this->getQueryData() as $queryData ) {
+ $suggestions[] = $this->formatSuggestion( $queryData );
+ }
+
+ return array_filter( $suggestions );
+ }
+
+ /**
+ * @param array $queryData
+ * @return array|null
+ */
+ protected function formatSuggestion( array $queryData ) {
+ $service = $queryData['service'];
+ $response = $queryData['response'];
+ $sourceLanguage = $queryData['language'];
+ $sourceText = $queryData['text'];
- $results = $service->getSuggestions( $translations, $from, $to );
- $suggestions = array_merge( $suggestions, $results );
+ $result = $service->getResultData( $response );
+ if ( $result === null ) {
+ return null;
}
- return $suggestions;
+ return [
+ 'target' => $result,
+ 'service' => $service->getName(),
+ 'source_language' => $sourceLanguage,
+ 'source' => $sourceText,
+ ];
}
}
diff --git a/MLEB/Translate/translationaids/MessageDefinitionAid.php b/MLEB/Translate/translationaids/MessageDefinitionAid.php
index 0cb536cf..257435c5 100644
--- a/MLEB/Translate/translationaids/MessageDefinitionAid.php
+++ b/MLEB/Translate/translationaids/MessageDefinitionAid.php
@@ -5,7 +5,7 @@
* @file
* @author Niklas Laxström
* @copyright Copyright © 2012-2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -19,9 +19,9 @@ class MessageDefinitionAid extends TranslationAid {
public function getData() {
$language = $this->group->getSourceLanguage();
- return array(
- 'value' => $this->getDefinition(),
+ return [
+ 'value' => $this->dataProvider->getDefinition(),
'language' => $language,
- );
+ ];
}
}
diff --git a/MLEB/Translate/translationaids/SupportAid.php b/MLEB/Translate/translationaids/SupportAid.php
index f1550fc4..b4a65c12 100644
--- a/MLEB/Translate/translationaids/SupportAid.php
+++ b/MLEB/Translate/translationaids/SupportAid.php
@@ -5,35 +5,62 @@
* @file
* @author Niklas Laxström
* @copyright Copyright © 2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
- * Translation aid which gives an url where users can ask for hlep
+ * Translation aid which gives an url where users can ask for help
*
* @ingroup TranslationAids
* @since 2013-01-02
*/
class SupportAid extends TranslationAid {
public function getData() {
- global $wgTranslateSupportUrl;
- if ( !$wgTranslateSupportUrl ) {
- throw new TranslationHelperException( "Support page not configured" );
- }
+ return [
+ 'url' => self::getSupportUrl( $this->handle->getTitle() ),
+ ];
+ }
- $supportTitle = Title::newFromText( $wgTranslateSupportUrl['page'] );
- if ( !$supportTitle ) {
- throw new TranslationHelperException( "Support page not configured properly" );
+ /**
+ * Target URL for a link provided by a support button/aid.
+ *
+ * @param Title $title Title object for the translation message.
+ * @since 2015.09
+ * @return string
+ * @throws TranslationHelperException
+ */
+ public static function getSupportUrl( Title $title ) {
+ global $wgTranslateSupportUrl, $wgTranslateSupportUrlNamespace;
+ $namespace = $title->getNamespace();
+
+ // Fetch the configuration for this namespace if possible, or the default.
+ if ( isset( $wgTranslateSupportUrlNamespace[$namespace] ) ) {
+ $config = $wgTranslateSupportUrlNamespace[$namespace];
+ } elseif ( $wgTranslateSupportUrl ) {
+ $config = $wgTranslateSupportUrl;
+ } else {
+ throw new TranslationHelperException( 'Support page not configured' );
}
- $supportParams = $wgTranslateSupportUrl['params'];
- $title = $this->handle->getTitle();
- foreach ( $supportParams as &$value ) {
- $value = str_replace( '%MESSAGE%', $title->getPrefixedText(), $value );
+ // Preprocess params
+ $params = [];
+ if ( isset( $config['params'] ) ) {
+ foreach ( $config['params'] as $key => $value ) {
+ $params[$key] = str_replace( '%MESSAGE%', $title->getPrefixedText(), $value );
+ }
}
- return array(
- 'url' => $supportTitle->getFullUrl( $supportParams ),
- );
+ // Return the URL or make one from the page
+ if ( isset( $config['url'] ) ) {
+ return wfAppendQuery( $config['url'], $params );
+ } elseif ( isset( $config['page'] ) ) {
+ $page = Title::newFromText( $config['page'] );
+ if ( !$page ) {
+ throw new TranslationHelperException( 'Support page not configured properly' );
+ }
+ return $page->getFullURL( $params );
+ } else {
+ throw new TranslationHelperException( 'Support page not configured properly' );
+ }
}
}
diff --git a/MLEB/Translate/translationaids/TTMServerAid.php b/MLEB/Translate/translationaids/TTMServerAid.php
index 2146918d..6f4f69a5 100644
--- a/MLEB/Translate/translationaids/TTMServerAid.php
+++ b/MLEB/Translate/translationaids/TTMServerAid.php
@@ -4,33 +4,49 @@
*
* @file
* @author Niklas Laxström
- * @copyright Copyright © 2012-2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
* Translation aid which gives suggestion from translation memory.
*
* @ingroup TranslationAids
- * @since 2013-01-01
+ * @since 2013-01-01 | 2015.02 extends QueryAggregatorAwareTranslationAid
*/
-class TTMServerAid extends TranslationAid {
+class TTMServerAid extends QueryAggregatorAwareTranslationAid {
+ public function populateQueries() {
+ $text = $this->dataProvider->getDefinition();
+ $from = $this->group->getSourceLanguage();
+ $to = $this->handle->getCode();
+
+ foreach ( $this->getWebServices( 'ttmserver' ) as $service ) {
+ $this->storeQuery( $service, $from, $to, $text );
+ }
+ }
+
public function getData() {
- $suggestions = array();
+ $suggestions = [];
- $text = $this->getDefinition();
+ $text = $this->dataProvider->getDefinition();
$from = $this->group->getSourceLanguage();
$to = $this->handle->getCode();
+ if ( trim( $text ) === '' ) {
+ return $suggestions;
+ }
+
+ // "Local" queries using a client can't be run in parallel with web services
global $wgTranslateTranslationServices;
foreach ( $wgTranslateTranslationServices as $name => $config ) {
$server = TTMServer::factory( $config );
try {
- if ( $server instanceof RemoteTTMServer ) {
- $service = TranslationWebService::factory( $name, $config );
- $query = $service->getSuggestions( array( $from => $text ), $from, $to );
- } elseif ( $server instanceof ReadableTTMServer ) {
+ if ( $server instanceof ReadableTTMServer ) {
+ // Except if they are public, we can call back via API
+ if ( isset( $config['public'] ) && $config['public'] === true ) {
+ continue;
+ }
+
$query = $server->query( $from, $to, $text );
} else {
continue;
@@ -49,9 +65,38 @@ class TTMServerAid extends TranslationAid {
}
}
+ // Results from web services
+ foreach ( $this->getQueryData() as $queryData ) {
+ $sugs = $this->formatSuggestions( $queryData );
+ $suggestions = array_merge( $suggestions, $sugs );
+ }
+
$suggestions = TTMServer::sortSuggestions( $suggestions );
+ // Must be here to not mess up the sorting function
$suggestions['**'] = 'suggestion';
return $suggestions;
}
+
+ protected function formatSuggestions( array $queryData ) {
+ $service = $queryData['service'];
+ $response = $queryData['response'];
+ $sourceLanguage = $queryData['language'];
+ $sourceText = $queryData['text'];
+
+ // getResultData returns a null on failure instead of throwing an exception
+ $sugs = $service->getResultData( $response );
+ if ( $sugs === null ) {
+ return [];
+ }
+
+ foreach ( $sugs as &$sug ) {
+ $sug += [
+ 'service' => $service->getName(),
+ 'source_language' => $sourceLanguage,
+ 'source' => $sourceText,
+ ];
+ }
+ return $sugs;
+ }
}
diff --git a/MLEB/Translate/translationaids/TranslationAid.php b/MLEB/Translate/translationaids/TranslationAid.php
index 9c0f26a9..a8068a34 100644
--- a/MLEB/Translate/translationaids/TranslationAid.php
+++ b/MLEB/Translate/translationaids/TranslationAid.php
@@ -4,15 +4,13 @@
*
* @file
* @author Niklas Laxström
- * @copyright Copyright © 2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
* Multipurpose class for translation aids:
* - interface for translation aid classes
* - listing of available translation aids
- * - some utility functions for translation aid classes
*
* @defgroup TranslationAids Translation Aids
* @since 2013-01-01
@@ -33,12 +31,21 @@ abstract class TranslationAid {
*/
protected $context;
- public function __construct( MessageGroup $group, MessageHandle $handle,
- IContextSource $context
+ /**
+ * @var TranslationAidDataProvider
+ */
+ protected $dataProvider;
+
+ public function __construct(
+ MessageGroup $group,
+ MessageHandle $handle,
+ IContextSource $context,
+ TranslationAidDataProvider $dataProvider
) {
$this->group = $group;
$this->handle = $handle;
$this->context = $context;
+ $this->dataProvider = $dataProvider;
}
/**
@@ -50,91 +57,20 @@ abstract class TranslationAid {
* to 'suggestion' and then list of arrays, each containing fields for the
* information of the suggestions. See InOtherLanguagesAid for example.
*
- * @throw TranslationHelperException Used to signal unexpected errors to aid
+ * @throws TranslationHelperException Used to signal unexpected errors to aid
* debugging
* @return array
*/
abstract public function getData();
/**
- * Get the message definition. Cached for performance.
- *
- * @return string
- */
- public function getDefinition() {
- static $cache = array();
-
- $key = $this->handle->getTitle()->getPrefixedText();
-
- if ( array_key_exists( $key, $cache ) ) {
- return $cache[$key];
- }
-
- if ( method_exists( $this->group, 'getMessageContent' ) ) {
- $cache[$key] = $this->group->getMessageContent( $this->handle );
- } else {
- $cache[$key] = $this->group->getMessage(
- $this->handle->getKey(),
- $this->group->getSourceLanguage()
- );
- }
-
- return $cache[$key];
- }
-
- /**
- * @return Content
- */
- protected function getDefinitionContent() {
- $text = $this->getDefinition();
-
- return ContentHandler::makeContent( $text, $this->handle->getTitle() );
- }
-
- /**
- * Get the translations in all languages. Cached for performance.
- * Fuzzy translation are not included.
- *
- * @return array Language code => Translation
- */
- public function getTranslations() {
- static $cache = array();
-
- $key = $this->handle->getTitle()->getPrefixedText();
-
- if ( array_key_exists( $key, $cache ) ) {
- return $cache[$key];
- }
-
- $data = ApiQueryMessageTranslations::getTranslations( $this->handle );
- $namespace = $this->handle->getTitle()->getNamespace();
-
- $cache[$key] = array();
-
- foreach ( $data as $page => $info ) {
- $tTitle = Title::makeTitle( $namespace, $page );
- $tHandle = new MessageHandle( $tTitle );
-
- $fuzzy = MessageHandle::hasFuzzyString( $info[0] ) || $tHandle->isFuzzy();
- if ( $fuzzy ) {
- continue;
- }
-
- $code = $tHandle->getCode();
- $cache[$key][$code] = $info[0];
- }
-
- return $cache[$key];
- }
-
- /**
* List of available message types mapped to the classes
* implementing them.
*
* @return array
*/
public static function getTypes() {
- $types = array(
+ $types = [
'definition' => 'MessageDefinitionAid',
'translation' => 'CurrentTranslationAid',
'inotherlanguages' => 'InOtherLanguagesAid',
@@ -145,7 +81,7 @@ abstract class TranslationAid {
'support' => 'SupportAid',
'gettext' => 'GettextDocumentationAid',
'insertables' => 'InsertablesAid',
- );
+ ];
return $types;
}
diff --git a/MLEB/Translate/translationaids/UnsupportedTranslationAid.php b/MLEB/Translate/translationaids/UnsupportedTranslationAid.php
index 6c92c531..af118e73 100644
--- a/MLEB/Translate/translationaids/UnsupportedTranslationAid.php
+++ b/MLEB/Translate/translationaids/UnsupportedTranslationAid.php
@@ -5,7 +5,7 @@
* @file
* @author Harry Burt
* @copyright Copyright © 2013, Harry Burt
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
diff --git a/MLEB/Translate/translationaids/UpdatedDefinitionAid.php b/MLEB/Translate/translationaids/UpdatedDefinitionAid.php
index 0b918f40..42ece6b6 100644
--- a/MLEB/Translate/translationaids/UpdatedDefinitionAid.php
+++ b/MLEB/Translate/translationaids/UpdatedDefinitionAid.php
@@ -5,7 +5,7 @@
* @file
* @author Niklas Laxström
* @copyright Copyright © 2012-2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -17,18 +17,18 @@
*/
class UpdatedDefinitionAid extends TranslationAid {
public function getData() {
- $db = wfGetDB( DB_MASTER );
- $conds = array(
+ $db = TranslateUtils::getSafeReadDB();
+ $conds = [
'rt_page' => $this->handle->getTitle()->getArticleID(),
'rt_type' => RevTag::getType( 'tp:transver' ),
- );
- $options = array(
+ ];
+ $options = [
'ORDER BY' => 'rt_revision DESC',
- );
+ ];
$translationRevision = $db->selectField( 'revtag', 'rt_value', $conds, __METHOD__, $options );
if ( $translationRevision === false ) {
- throw new TranslationHelperException( "No definition revision recorded" );
+ throw new TranslationHelperException( 'No definition revision recorded' );
}
$definitionTitle = Title::makeTitleSafe(
@@ -37,20 +37,20 @@ class UpdatedDefinitionAid extends TranslationAid {
);
if ( !$definitionTitle || !$definitionTitle->exists() ) {
- throw new TranslationHelperException( "Definition page doesn't exist" );
+ throw new TranslationHelperException( 'Definition page does not exist' );
}
// Using newFromId instead of newFromTitle, because the page might have been renamed
$oldrev = Revision::newFromId( $translationRevision );
if ( !$oldrev ) {
- throw new TranslationHelperException( "Old definition version doesn't exist anymore" );
+ throw new TranslationHelperException( 'Old definition version does not exist anymore' );
}
$oldContent = $oldrev->getContent();
- $newContent = $this->getDefinitionContent();
+ $newContent = $this->dataProvider->getDefinitionContent();
if ( !$oldContent ) {
- throw new TranslationHelperException( "Old definition version doesn't exist anymore" );
+ throw new TranslationHelperException( 'Old definition version does not exist anymore' );
}
if ( !$oldContent instanceof WikitextContent || !$newContent instanceof WikitextContent ) {
@@ -62,9 +62,7 @@ class UpdatedDefinitionAid extends TranslationAid {
}
$diff = new DifferenceEngine( $this->context );
- if ( method_exists( 'DifferenceEngine', 'setTextLanguage' ) ) {
- $diff->setTextLanguage( $this->group->getSourceLanguage() );
- }
+ $diff->setTextLanguage( wfGetLangObj( $this->group->getSourceLanguage() ) );
$diff->setContent( $oldContent, $newContent );
$diff->setReducedLineNumbers();
$diff->showDiffStyle();
@@ -74,13 +72,13 @@ class UpdatedDefinitionAid extends TranslationAid {
$this->context->msg( 'tpt-diff-new' )->escaped()
);
- return array(
+ return [
'value_old' => $oldContent->getNativeData(),
'value_new' => $newContent->getNativeData(),
'revisionid_old' => $oldrev->getId(),
- 'revisionid_new' => $definitionTitle->getLatestRevId(),
+ 'revisionid_new' => $definitionTitle->getLatestRevID(),
'language' => $this->group->getSourceLanguage(),
'html' => $html,
- );
+ ];
}
}
diff --git a/MLEB/Translate/ttmserver/DatabaseTTMServer.php b/MLEB/Translate/ttmserver/DatabaseTTMServer.php
index 4500faeb..74d2360d 100644
--- a/MLEB/Translate/ttmserver/DatabaseTTMServer.php
+++ b/MLEB/Translate/ttmserver/DatabaseTTMServer.php
@@ -5,10 +5,12 @@
* @file
* @author Niklas Laxström
* @copyright Copyright © 2012-2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
* @ingroup TTMServer
*/
+use Wikimedia\Rdbms\DBQueryError;
+
/**
* Mysql based backend.
* @ingroup TTMServer
@@ -18,10 +20,10 @@ class DatabaseTTMServer extends TTMServer implements WritableTTMServer, Readable
protected $sids;
/**
- * @param $mode int DB_SLAVE|DB_MASTER
- * @return DatabaseBase
+ * @param int $mode DB_REPLICA|DB_MASTER
+ * @return \Wikimedia\Rdbms\IDatabase
*/
- protected function getDB( $mode = DB_SLAVE ) {
+ protected function getDB( $mode = DB_REPLICA ) {
return wfGetDB( $mode, 'ttmserver', $this->config['database'] );
}
@@ -54,10 +56,10 @@ class DatabaseTTMServer extends TTMServer implements WritableTTMServer, Readable
* get suggestions which do not match the original definition any
* longer. The old translations are still kept until purged by
* rerunning the bootstrap script. */
- $conds = array(
+ $conds = [
'tms_context' => $context->getPrefixedText(),
'tms_text' => $definition,
- );
+ ];
$sid = $dbw->selectField( 'translate_tms', 'tms_sid', $conds, __METHOD__ );
if ( $sid === false ) {
@@ -65,17 +67,17 @@ class DatabaseTTMServer extends TTMServer implements WritableTTMServer, Readable
}
// Delete old translations for this message if any. Could also use replace
- $deleteConds = array(
+ $deleteConds = [
'tmt_sid' => $sid,
'tmt_lang' => $targetLanguage,
- );
+ ];
$dbw->delete( 'translate_tmt', $deleteConds, __METHOD__ );
// Insert the new translation
if ( $targetText !== null ) {
- $row = $deleteConds + array(
+ $row = $deleteConds + [
'tmt_text' => $targetText,
- );
+ ];
$dbw->insert( 'translate_tmt', $row, __METHOD__ );
}
@@ -84,12 +86,12 @@ class DatabaseTTMServer extends TTMServer implements WritableTTMServer, Readable
}
protected function insertSource( Title $context, $sourceLanguage, $text ) {
- $row = array(
+ $row = [
'tms_lang' => $sourceLanguage,
'tms_len' => mb_strlen( $text ),
'tms_text' => $text,
'tms_context' => $context->getPrefixedText(),
- );
+ ];
$dbw = $this->getDB( DB_MASTER );
$dbw->insert( 'translate_tms', $row, __METHOD__ );
@@ -97,10 +99,10 @@ class DatabaseTTMServer extends TTMServer implements WritableTTMServer, Readable
$fulltext = $this->filterForFulltext( $sourceLanguage, $text );
if ( count( $fulltext ) ) {
- $row = array(
+ $row = [
'tmf_sid' => $sid,
'tmf_text' => implode( ' ', $fulltext ),
- );
+ ];
$dbw->insert( 'translate_tmf', $row, __METHOD__ );
}
@@ -110,6 +112,10 @@ class DatabaseTTMServer extends TTMServer implements WritableTTMServer, Readable
/**
* Tokenizes the text for fulltext search.
* Tries to find the most useful tokens.
+ *
+ * @param string $language Language code
+ * @param string $input
+ * @return array
*/
protected function filterForFulltext( $language, $input ) {
$lang = Language::factory( $language );
@@ -119,8 +125,7 @@ class DatabaseTTMServer extends TTMServer implements WritableTTMServer, Readable
$text = $lang->lc( $text );
$segments = preg_split( '/\s+/', $text, -1, PREG_SPLIT_NO_EMPTY );
if ( count( $segments ) < 4 ) {
-
- return array();
+ return [];
}
foreach ( $segments as $i => $segment ) {
@@ -152,7 +157,7 @@ class DatabaseTTMServer extends TTMServer implements WritableTTMServer, Readable
}
public function beginBatch() {
- $this->sids = array();
+ $this->sids = [];
}
public function batchInsertDefinitions( array $batch ) {
@@ -166,14 +171,14 @@ class DatabaseTTMServer extends TTMServer implements WritableTTMServer, Readable
}
public function batchInsertTranslations( array $batch ) {
- $rows = array();
+ $rows = [];
foreach ( $batch as $key => $data ) {
list( , $language, $text ) = $data;
- $rows[] = array(
+ $rows[] = [
'tmt_sid' => $this->sids[$key],
'tmt_lang' => $language,
'tmt_text' => $text,
- );
+ ];
}
$dbw = $this->getDB( DB_MASTER );
@@ -199,7 +204,7 @@ class DatabaseTTMServer extends TTMServer implements WritableTTMServer, Readable
public function expandLocation( array $suggestion ) {
$title = Title::newFromText( $suggestion['location'] );
- return $title->getCanonicalUrl();
+ return $title->getCanonicalURL();
}
public function query( $sourceLanguage, $targetLanguage, $text ) {
@@ -210,16 +215,16 @@ class DatabaseTTMServer extends TTMServer implements WritableTTMServer, Readable
$max = floor( $len / $this->config['cutoff'] );
// We could use fulltext index to narrow the results further
- $dbr = $this->getDB( DB_SLAVE );
- $tables = array( 'translate_tmt', 'translate_tms' );
- $fields = array( 'tms_context', 'tms_text', 'tmt_lang', 'tmt_text' );
+ $dbr = $this->getDB( DB_REPLICA );
+ $tables = [ 'translate_tmt', 'translate_tms' ];
+ $fields = [ 'tms_context', 'tms_text', 'tmt_lang', 'tmt_text' ];
- $conds = array(
+ $conds = [
'tms_lang' => $sourceLanguage,
'tmt_lang' => $targetLanguage,
"tms_len BETWEEN $min AND $max",
'tms_sid = tmt_sid',
- );
+ ];
$fulltext = $this->filterForFulltext( $sourceLanguage, $text );
if ( $fulltext ) {
@@ -238,7 +243,7 @@ class DatabaseTTMServer extends TTMServer implements WritableTTMServer, Readable
$timeLimit = microtime( true ) + 5;
$lenA = mb_strlen( $text );
- $results = array();
+ $results = [];
foreach ( $res as $row ) {
if ( microtime( true ) > $timeLimit ) {
// Having no suggestions is better than preventing translation
@@ -260,14 +265,14 @@ class DatabaseTTMServer extends TTMServer implements WritableTTMServer, Readable
$quality = 1 - ( $dist * 0.9 / $len );
if ( $quality >= $this->config['cutoff'] ) {
- $results[] = array(
+ $results[] = [
'source' => $row->tms_text,
'target' => $row->tmt_text,
'context' => $row->tms_context,
'location' => $row->tms_context . '/' . $targetLanguage,
'quality' => $quality,
- 'wiki' => isset( $row->tms_wiki ) ? $row->tms_wiki : wfWikiId(),
- );
+ 'wiki' => isset( $row->tms_wiki ) ? $row->tms_wiki : wfWikiID(),
+ ];
}
}
$results = TTMServer::sortSuggestions( $results );
diff --git a/MLEB/Translate/ttmserver/ElasticSearchTTMServer.php b/MLEB/Translate/ttmserver/ElasticSearchTTMServer.php
index 40d9199b..a1a01c0e 100644
--- a/MLEB/Translate/ttmserver/ElasticSearchTTMServer.php
+++ b/MLEB/Translate/ttmserver/ElasticSearchTTMServer.php
@@ -4,10 +4,12 @@
*
* @file
* @author Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
* @ingroup TTMServer
*/
+use MediaWiki\Logger\LoggerFactory;
+
/**
* TTMServer backed based on ElasticSearch. Depends on Elastica.
* @since 2014.04
@@ -18,6 +20,38 @@ class ElasticSearchTTMServer
implements ReadableTTMServer, WritableTTMServer, SearchableTTMserver
{
/**
+ * @const int number of documents that will be loaded and deleted in a
+ * single operation
+ */
+ const BULK_DELETE_CHUNK_SIZE = 100;
+
+ /**
+ * @const int in case a write operation fails during a batch process
+ * this constant controls the number of times we will retry the same
+ * operation.
+ */
+ const BULK_INDEX_RETRY_ATTEMPTS = 5;
+
+ /**
+ * @const int time (seconds) to wait for the index to ready before
+ * starting to index. Since we wait for index status it can be relatively
+ * long especially if some nodes are restarted.
+ */
+ const WAIT_UNTIL_READY_TIMEOUT = 3600;
+
+ /**
+ * Flag in the frozen index that indicates that all indices
+ * are frozen (useful only when this service shares the cluster with
+ * CirrusSearch)
+ */
+ const ALL_INDEXES_FROZEN_NAME = 'freeze_everything';
+
+ /**
+ * Type used in the frozen index
+ */
+ const FROZEN_TYPE = 'frozen';
+
+ /**
* @var \Elastica\Client
*/
protected $client;
@@ -33,7 +67,7 @@ class ElasticSearchTTMServer
protected $updateMapping = false;
public function isLocalSuggestion( array $suggestion ) {
- return $suggestion['wiki'] === wfWikiId();
+ return $suggestion['wiki'] === wfWikiID();
}
public function expandLocation( array $suggestion ) {
@@ -49,6 +83,11 @@ class ElasticSearchTTMServer
}
protected function doQuery( $sourceLanguage, $targetLanguage, $text ) {
+ if ( !$this->useWikimediaExtraPlugin() ) {
+ // ElasticTTM is currently not compatible with elasticsearch 2.x/5.x
+ // It needs FuzzyLikeThis ported via the wmf extra plugin
+ throw new \RuntimeException( 'The wikimedia extra plugin is mandatory.' );
+ }
/* Two query system:
* 1) Find all strings in source language that match text
* 2) Do another query for translations for those strings
@@ -57,37 +96,56 @@ class ElasticSearchTTMServer
$oldTimeout = $connection->getTimeout();
$connection->setTimeout( 10 );
- $fuzzyQuery = new \Elastica\Query\FuzzyLikeThis();
+ $fuzzyQuery = new FuzzyLikeThis();
$fuzzyQuery->setLikeText( $text );
- $fuzzyQuery->addFields( array( 'content' ) );
+ $fuzzyQuery->addFields( [ 'content' ] );
- $groovyScript =
+ $boostQuery = new \Elastica\Query\FunctionScore();
+ if ( $this->useWikimediaExtraPlugin() ) {
+ $boostQuery->addFunction(
+ 'levenshtein_distance_score',
+ [
+ 'text' => $text,
+ 'field' => 'content'
+ ]
+ );
+ } else {
+ // TODO: should we remove this code block the extra
+ // plugin is now mandatory and we will never use the
+ // groovy script.
+ if ( $this->isElastica5() ) {
+ $scriptClass = \Elastica\Script\Script::class;
+ } else {
+ $scriptClass = \Elastica\Script::class;
+ }
+
+ $groovyScript =
<<<GROOVY
import org.apache.lucene.search.spell.*
new LevensteinDistance().getDistance(srctxt, _source['content'])
GROOVY;
- $script = new \Elastica\Script(
- $groovyScript,
- array( 'srctxt' => $text ),
- \Elastica\Script::LANG_GROOVY
- );
- $boostQuery = new \Elastica\Query\FunctionScore();
- $boostQuery->addScriptScoreFunction( $script );
+ $script = new $scriptClass(
+ $groovyScript,
+ [ 'srctxt' => $text ],
+ $scriptClass::LANG_GROOVY
+ );
+ $boostQuery->addScriptScoreFunction( $script );
+ }
$boostQuery->setBoostMode( \Elastica\Query\FunctionScore::BOOST_MODE_REPLACE );
// Wrap the fuzzy query so it can be used as a filter.
// This is slightly faster, as ES can throw away the scores by this query.
- $fuzzyFilter = new \Elastica\Filter\Query();
- $fuzzyFilter->setQuery( $fuzzyQuery );
- $boostQuery->setFilter( $fuzzyFilter );
+ $bool = new \Elastica\Query\BoolQuery();
+ $bool->addFilter( $fuzzyQuery );
+ $bool->addMust( $boostQuery );
+
+ $languageFilter = new \Elastica\Query\Term();
+ $languageFilter->setTerm( 'language', $sourceLanguage );
+ $bool->addFilter( $languageFilter );
// The whole query
$query = new \Elastica\Query();
- $query->setQuery( $boostQuery );
-
- $languageFilter = new \Elastica\Filter\Term();
- $languageFilter->setTerm( 'language', $sourceLanguage );
- $query->setFilter( $languageFilter );
+ $query->setQuery( $bool );
// The interface usually displays three best candidates. These might
// come from more than three source things, if the translations are
@@ -102,16 +160,17 @@ GROOVY;
$query->setFrom( 0 );
$query->setSize( $sizeFirst );
- $query->setParam( '_source', array( 'content' ) );
+ $query->setParam( '_source', [ 'content' ] );
$cutoff = isset( $this->config['cutoff'] ) ? $this->config['cutoff'] : 0.65;
$query->setParam( 'min_score', $cutoff );
- $query->setSort( array( '_score', '_uid' ) );
+ $query->setSort( [ '_score', '_uid' ] );
- // This query is doing two unrelated things:
- // 1) Collect the message contents and scores so that they can
- // be accessed later for the translations we found.
- // 2) Build the query string for the query that fetches the translations.
- $contents = $scores = $terms = array();
+ /* This query is doing two unrelated things:
+ * 1) Collect the message contents and scores so that they can
+ * be accessed later for the translations we found.
+ * 2) Build the query string for the query that fetches the translations.
+ */
+ $contents = $scores = $terms = [];
do {
$resultset = $this->getType()->search( $query );
@@ -152,17 +211,17 @@ GROOVY;
// Break if we already got all hits
} while ( $resultset->getTotalHits() > count( $contents ) );
- $suggestions = array();
+ $suggestions = [];
// Skip second query if first query found nothing. Keeping only one return
// statement in this method to avoid forgetting to reset connection timeout
- if ( $terms !== array() ) {
+ if ( $terms !== [] ) {
$idQuery = new \Elastica\Query\Terms();
$idQuery->setTerms( '_id', $terms );
$query = new \Elastica\Query( $idQuery );
$query->setSize( 25 );
- $query->setParam( '_source', array( 'wiki', 'uri', 'content', 'localid' ) );
+ $query->setParam( '_source', [ 'wiki', 'uri', 'content', 'localid' ] );
$resultset = $this->getType()->search( $query );
foreach ( $resultset->getResults() as $result ) {
@@ -171,7 +230,7 @@ GROOVY;
// Construct the matching source id
$sourceId = preg_replace( '~/[^/]+$~', '', $result->getId() );
- $suggestions[] = array(
+ $suggestions[] = [
'source' => $contents[$sourceId],
'target' => $data['content'],
'context' => $data['localid'],
@@ -179,10 +238,10 @@ GROOVY;
'wiki' => $data['wiki'],
'location' => $data['localid'] . '/' . $targetLanguage,
'uri' => $data['uri'],
- );
+ ];
}
- // Ensure reults are in quality order
+ // Ensure results are in quality order
uasort( $suggestions, function ( $a, $b ) {
if ( $a['quality'] === $b['quality'] ) {
return 0;
@@ -214,20 +273,19 @@ GROOVY;
* These only apply to known messages.
*/
- $title = $handle->getTitle();
$sourceLanguage = $handle->getGroup()->getSourceLanguage();
// Do not delete definitions, because the translations are attached to that
if ( $handle->getCode() !== $sourceLanguage ) {
$localid = $handle->getTitleForBase()->getPrefixedText();
- $boolQuery = new \Elastica\Query\Bool();
- $boolQuery->addMust( new Elastica\Query\Term( array( 'wiki' => wfWikiId() ) ) );
- $boolQuery->addMust( new Elastica\Query\Term( array( 'language' => $handle->getCode() ) ) );
- $boolQuery->addMust( new Elastica\Query\Term( array( 'localid' => $localid ) ) );
+ $boolQuery = new \Elastica\Query\BoolQuery();
+ $boolQuery->addFilter( new Elastica\Query\Term( [ 'wiki' => wfWikiID() ] ) );
+ $boolQuery->addFilter( new Elastica\Query\Term( [ 'language' => $handle->getCode() ] ) );
+ $boolQuery->addFilter( new Elastica\Query\Term( [ 'localid' => $localid ] ) );
$query = new \Elastica\Query( $boolQuery );
- $this->getType()->deleteByQuery( $query );
+ $this->deleteByQuery( $this->getType(), $query );
}
// If translation was made fuzzy, we do not need to add anything
@@ -237,45 +295,44 @@ GROOVY;
$revId = $handle->getTitleForLanguage( $sourceLanguage )->getLatestRevID();
$doc = $this->createDocument( $handle, $targetText, $revId );
+ $fname = __METHOD__;
- $retries = 5;
- while ( $retries-- > 0 ) {
- try {
+ MWElasticUtils::withRetry( self::BULK_INDEX_RETRY_ATTEMPTS,
+ function () use ( $doc ) {
$this->getType()->addDocument( $doc );
- break;
- } catch ( \Elastica\Exception\ExceptionInterface $e ) {
- if ( $retries === 0 ) {
- throw $e;
- } else {
- $c = get_class( $e );
- $msg = $e->getMessage();
- error_log( __METHOD__ . ": update failed ($c: $msg); retrying." );
- sleep( 10 );
- }
+ },
+ function ( $e, $errors ) use ( $fname ) {
+ $c = get_class( $e );
+ $msg = $e->getMessage();
+ error_log( $fname . ": update failed ($c: $msg); retrying." );
+ sleep( 10 );
}
- }
+ );
return true;
}
/**
+ * @param MessageHandle $handle
+ * @param string $text
+ * @param int $revId
* @return \Elastica\Document
*/
protected function createDocument( MessageHandle $handle, $text, $revId ) {
$language = $handle->getCode();
$localid = $handle->getTitleForBase()->getPrefixedText();
- $wiki = wfWikiId();
+ $wiki = wfWikiID();
$globalid = "$wiki-$localid-$revId/$language";
- $data = array(
+ $data = [
'wiki' => $wiki,
- 'uri' => $handle->getTitle()->getCanonicalUrl(),
+ 'uri' => $handle->getTitle()->getCanonicalURL(),
'localid' => $localid,
'language' => $language,
'content' => $text,
'group' => $handle->getGroupIds(),
- );
+ ];
return new \Elastica\Document( $globalid, $data );
}
@@ -285,14 +342,38 @@ GROOVY;
* @param bool $rebuild Deletes index first if already exists
*/
public function createIndex( $rebuild ) {
+ $indexSettings = [
+ 'number_of_shards' => $this->getShardCount(),
+ 'analysis' => [
+ 'filter' => [
+ 'prefix_filter' => [
+ 'type' => 'edge_ngram',
+ 'min_gram' => 2,
+ 'max_gram' => 20
+ ]
+ ],
+ 'analyzer' => [
+ 'prefix' => [
+ 'type' => 'custom',
+ 'tokenizer' => 'standard',
+ 'filter' => [ 'standard', 'lowercase', 'prefix_filter' ]
+ ],
+ 'casesensitive' => [
+ 'tokenizer' => 'standard',
+ 'filter' => [ 'standard' ]
+ ]
+ ]
+ ]
+ ];
+ $replicas = $this->getReplicaCount();
+ if ( strpos( $replicas, '-' ) === false ) {
+ $indexSettings['number_of_replicas'] = $replicas;
+ } else {
+ $indexSettings['auto_expand_replicas'] = $replicas;
+ }
+
$type = $this->getType();
- $type->getIndex()->create(
- array(
- 'number_of_shards' => $this->getShardCount(),
- 'number_of_replicas' => $this->getReplicaCount(),
- ),
- $rebuild
- );
+ $type->getIndex()->create( $indexSettings, $rebuild );
}
public function beginBootstrap() {
@@ -305,23 +386,51 @@ GROOVY;
}
$settings = $type->getIndex()->getSettings();
- $settings->setRefreshInterval( -1 );
+ $settings->setRefreshInterval( '-1' );
$term = new Elastica\Query\Term();
- $term->setTerm( 'wiki', wfWikiId() );
+ $term->setTerm( 'wiki', wfWikiID() );
$query = new \Elastica\Query( $term );
- $type->deleteByQuery( $query );
+ $this->deleteByQuery( $type, $query );
$mapping = new \Elastica\Type\Mapping();
$mapping->setType( $type );
- $mapping->setProperties( array(
- 'wiki' => array( 'type' => 'string', 'index' => 'not_analyzed' ),
- 'localid' => array( 'type' => 'string', 'index' => 'not_analyzed' ),
- 'uri' => array( 'type' => 'string', 'index' => 'not_analyzed' ),
- 'language' => array( 'type' => 'string', 'index' => 'not_analyzed' ),
- 'group' => array( 'type' => 'string', 'index' => 'not_analyzed' ),
- 'content' => array( 'type' => 'string', 'index' => 'analyzed', 'term_vector' => 'yes' ),
- ) );
+
+ $keywordType = [ 'type' => 'string', 'index' => 'not_analyzed' ];
+ $textType = 'string';
+ if ( $this->isElastica5() ) {
+ $keywordType = [ 'type' => 'keyword' ];
+ $textType = 'text';
+ }
+ $mapping->setProperties( [
+ 'wiki' => $keywordType,
+ 'localid' => $keywordType,
+ 'uri' => $keywordType,
+ 'language' => $keywordType,
+ 'group' => $keywordType,
+ 'content' => [
+ 'type' => $textType,
+ 'fields' => [
+ 'content' => [
+ 'type' => $textType,
+ 'index' => 'analyzed',
+ 'term_vector' => 'yes'
+ ],
+ 'prefix_complete' => [
+ 'type' => $textType,
+ 'analyzer' => 'prefix',
+ 'search_analyzer' => 'standard',
+ 'term_vector' => 'yes'
+ ],
+ 'case_sensitive' => [
+ 'type' => $textType,
+ 'index' => 'analyzed',
+ 'analyzer' => 'casesensitive',
+ 'term_vector' => 'yes'
+ ]
+ ]
+ ],
+ ] );
$mapping->send();
$this->waitUntilReady();
@@ -342,29 +451,24 @@ GROOVY;
}
public function batchInsertTranslations( array $batch ) {
- $docs = array();
+ $docs = [];
foreach ( $batch as $data ) {
list( $handle, $sourceLanguage, $text ) = $data;
$revId = $handle->getTitleForLanguage( $sourceLanguage )->getLatestRevID();
$docs[] = $this->createDocument( $handle, $text, $revId );
}
- $retries = 5;
- while ( $retries-- > 0 ) {
- try {
+ MWElasticUtils::withRetry( self::BULK_INDEX_RETRY_ATTEMPTS,
+ function () use ( $docs ) {
$this->getType()->addDocuments( $docs );
- break;
- } catch ( \Elastica\Exception\ExceptionInterface $e ) {
- if ( $retries === 0 ) {
- throw $e;
- } else {
- $c = get_class( $e );
- $msg = $e->getMessage();
- $this->logOutput( "Batch failed ($c: $msg), trying again in 10 seconds" );
- sleep( 10 );
- }
+ },
+ function ( $e, $errors ) {
+ $c = get_class( $e );
+ $msg = $e->getMessage();
+ $this->logOutput( "Batch failed ($c: $msg), trying again in 10 seconds" );
+ sleep( 10 );
}
- }
+ );
}
public function endBatch() {
@@ -374,8 +478,12 @@ GROOVY;
public function endBootstrap() {
$index = $this->getType()->getIndex();
$index->refresh();
- $index->optimize();
- $index->getSettings()->setRefreshInterval( 5 );
+ if ( $this->isElastica5() ) {
+ $index->forcemerge();
+ } else {
+ $index->optimize();
+ }
+ $index->getSettings()->setRefreshInterval( '5s' );
}
public function getClient() {
@@ -389,49 +497,89 @@ GROOVY;
return $this->client;
}
- public function getType() {
+ /**
+ * @return true if the backend is configured with the wikimedia extra plugin
+ */
+ public function useWikimediaExtraPlugin() {
+ return isset( $this->config['use_wikimedia_extra'] ) && $this->config['use_wikimedia_extra'];
+ }
+
+ /**
+ * @return string
+ */
+ private function getIndexName() {
if ( isset( $this->config['index'] ) ) {
- $index = $this->config['index'];
+ return $this->config['index'];
} else {
- $index = 'ttmserver';
+ return 'ttmserver';
}
- return $this->getClient()->getIndex( $index )->getType( 'message' );
+ }
+
+ public function getType() {
+ return $this->getClient()
+ ->getIndex( $this->getIndexName() )
+ ->getType( 'message' );
}
protected function getShardCount() {
- return isset( $this->config['shards'] ) ? $this->config['shards'] : 5;
+ return isset( $this->config['shards'] ) ? $this->config['shards'] : 1;
}
protected function getReplicaCount() {
- return isset( $this->config['replicas'] ) ? $this->config['replicas'] : 0;
+ return isset( $this->config['replicas'] ) ? $this->config['replicas'] : '0-2';
}
- protected function waitUntilReady() {
- $expectedActive = $this->getShardCount() * ( 1 + $this->getReplicaCount() );
- $indexName = $this->getType()->getIndex()->getName();
+ /**
+ * Get index health
+ *
+ * @param string $indexName
+ * @return array the index health status
+ */
+ protected function getIndexHealth( $indexName ) {
$path = "_cluster/health/$indexName";
+ $response = $this->getClient()->request( $path );
+ if ( $response->hasError() ) {
+ throw new \Exception( "Error while fetching index health status: ". $response->getError() );
+ }
+ return $response->getData();
+ }
- while ( true ) {
- $response = $this->getClient()->request( $path );
- if ( $response->hasError() ) {
- $this->logOutput( 'Error fetching index health. Retrying.' );
- $this->logOutput( 'Message: ' + $response->getError() );
- } else {
- $health = $response->getData();
- $active = $health['active_shards'];
- $this->logOutput(
- "active:$active/$expectedActive ".
- "relocating:{$health['relocating_shards']} " .
- "initializing:{$health['initializing_shards']} ".
- "unassigned:{$health['unassigned_shards']}"
- );
- }
-
- if ( $active === $expectedActive ) {
- break;
+ /**
+ * Wait for the index to go green
+ *
+ * NOTE: This method has been copied and adjusted from
+ * CirrusSearch/includes/Maintenance/ConfigUtils.php. Ideally we'd
+ * like to make these utility methods available in the Elastica
+ * extension, but this one requires some refactoring in cirrus first.
+ *
+ * @param string $indexName
+ * @param int $timeout
+ * @return bool true if the index is green false otherwise.
+ */
+ protected function waitForGreen( $indexName, $timeout ) {
+ $startTime = time();
+ while ( ( $startTime + $timeout ) > time() ) {
+ try {
+ $response = $this->getIndexHealth( $indexName );
+ $status = isset( $response['status'] ) ? $response['status'] : 'unknown';
+ if ( $status === 'green' ) {
+ $this->logOutput( "\tGreen!" );
+ return true;
+ }
+ $this->logOutput( "\tIndex is $status retrying..." );
+ sleep( 5 );
+ } catch ( \Exception $e ) {
+ $this->logOutput( "Error while waiting for green ({$e->getMessage()}), retrying..." );
}
+ }
+ return false;
+ }
- sleep( 10 );
+ protected function waitUntilReady() {
+ $indexName = $this->getType()->getIndex()->getName();
+ $this->logOutput( "Waiting for the index to go green..." );
+ if ( !$this->waitForGreen( $indexName, self::WAIT_UNTIL_READY_TIMEOUT ) ) {
+ die( "Timeout! Please check server logs for {$this->getIndex()->getName()}." );
}
}
@@ -454,72 +602,137 @@ GROOVY;
$this->updateMapping = true;
}
- // Search interface
- public function search( $queryString, $opts, $highlight ) {
- $query = new \Elastica\Query();
+ /**
+ * Parse query string and build the search query
+ * @param string $queryString
+ * @param array $opts
+ * @return array
+ */
+ protected function parseQueryString( $queryString, array $opts ) {
+ $fields = $highlights = [];
+ $terms = preg_split( '/\s+/', $queryString );
+ $match = $opts['match'];
+ $case = $opts['case'];
+
+ // Map each word in the query string with its corresponding field
+ foreach ( $terms as $term ) {
+ $prefix = strstr( $term, '*', true );
+ if ( $prefix ) {
+ // For wildcard search
+ $fields['content.prefix_complete'][] = $prefix;
+ } elseif ( $case === '1' ) {
+ // For case sensitive search
+ $fields['content.case_sensitive'][] = $term;
+ } else {
+ $fields['content'][] = $term;
+ }
+ }
// Allow searching either by message content or message id (page name
// without language subpage) with exact match only.
- $serchQuery = new \Elastica\Query\Bool();
- $contentQuery = new \Elastica\Query\Match();
- $contentQuery->setFieldQuery( 'content', $queryString );
- $serchQuery->addShould( $contentQuery );
- $messageQuery = new \Elastica\Query\Term();
- $messageQuery->setTerm( 'localid', $queryString );
- $serchQuery->addShould( $messageQuery );
- $query->setQuery( $serchQuery );
-
- $language = new \Elastica\Facet\Terms( 'language' );
+ $searchQuery = new \Elastica\Query\BoolQuery();
+ foreach ( $fields as $analyzer => $words ) {
+ foreach ( $words as $word ) {
+ $boolQuery = new \Elastica\Query\BoolQuery();
+ $contentQuery = new \Elastica\Query\Match();
+ $contentQuery->setFieldQuery( $analyzer, $word );
+ $boolQuery->addShould( $contentQuery );
+ $messageQuery = new \Elastica\Query\Term();
+ $messageQuery->setTerm( 'localid', $word );
+ $boolQuery->addShould( $messageQuery );
+
+ if ( $match === 'all' ) {
+ $searchQuery->addMust( $boolQuery );
+ } else {
+ $searchQuery->addShould( $boolQuery );
+ }
+
+ // Fields for highlighting
+ $highlights[$analyzer] = [
+ 'number_of_fragments' => 0
+ ];
+
+ // Allow searching by exact message title (page name with
+ // language subpage).
+ $title = Title::newFromText( $word );
+ if ( !$title ) {
+ continue;
+ }
+ $handle = new MessageHandle( $title );
+ if ( $handle->isValid() && $handle->getCode() !== '' ) {
+ $localid = $handle->getTitleForBase()->getPrefixedText();
+ $boolQuery = new \Elastica\Query\BoolQuery();
+ $messageId = new \Elastica\Query\Term();
+ $messageId->setTerm( 'localid', $localid );
+ $boolQuery->addMust( $messageId );
+ $searchQuery->addShould( $boolQuery );
+ }
+ }
+ }
+
+ return [ $searchQuery, $highlights ];
+ }
+
+ /**
+ * Search interface
+ * @param string $queryString
+ * @param array $opts
+ * @param array $highlight
+ * @return array
+ */
+ public function search( $queryString, $opts, $highlight ) {
+ $query = new \Elastica\Query();
+
+ list( $searchQuery, $highlights ) = $this->parseQueryString( $queryString, $opts );
+ $query->setQuery( $searchQuery );
+
+ $language = new \Elastica\Aggregation\Terms( 'language' );
$language->setField( 'language' );
$language->setSize( 500 );
- $query->addFacet( $language );
+ $query->addAggregation( $language );
- $group = new \Elastica\Facet\Terms( 'group' );
+ $group = new \Elastica\Aggregation\Terms( 'group' );
$group->setField( 'group' );
// Would like to prioritize the top level groups and not show subgroups
// if the top group has only few hits, but that doesn't seem to be possile.
$group->setSize( 500 );
- $query->addFacet( $group );
+ $query->addAggregation( $group );
- $query->setSize( $opts->getValue( 'limit' ) );
- $query->setFrom( $opts->getValue( 'offset' ) );
+ $query->setSize( $opts['limit'] );
+ $query->setFrom( $opts['offset'] );
// BoolAnd filters are executed in sequence per document. Bool filters with
// multiple must clauses are executed by converting each filter into a bit
// field then anding them together. The latter is normally faster if either
// of the subfilters are reused. May not make a difference in this context.
- $filters = new \Elastica\Filter\Bool();
+ $filters = new \Elastica\Query\BoolQuery();
- $language = $opts->getValue( 'language' );
+ $language = $opts['language'];
if ( $language !== '' ) {
- $languageFilter = new \Elastica\Filter\Term();
+ $languageFilter = new \Elastica\Query\Term();
$languageFilter->setTerm( 'language', $language );
- $filters->addMust( $languageFilter );
+ $filters->addFilter( $languageFilter );
}
- $group = $opts->getValue( 'group' );
+ $group = $opts['group'];
if ( $group !== '' ) {
- $groupFilter = new \Elastica\Filter\Term();
+ $groupFilter = new \Elastica\Query\Term();
$groupFilter->setTerm( 'group', $group );
- $filters->addMust( $groupFilter );
+ $filters->addFilter( $groupFilter );
}
// Check that we have at least one filter to avoid invalid query errors.
if ( $language !== '' || $group !== '' ) {
- $query->setFilter( $filters );
+ $query->setPostFilter( $filters );
}
list( $pre, $post ) = $highlight;
- $query->setHighlight( array(
+ $query->setHighlight( [
// The value must be an object
- 'fields' => array(
- 'content' => array(
- 'number_of_fragments' => 0,
- ),
- ),
- 'pre_tags' => array( $pre ),
- 'post_tags' => array( $post ),
- ) );
+ 'pre_tags' => [ $pre ],
+ 'post_tags' => [ $post ],
+ 'fields' => $highlights,
+ ] );
try {
return $this->getType()->getIndex()->search( $query );
@@ -529,16 +742,16 @@ GROOVY;
}
public function getFacets( $resultset ) {
- $facets = $resultset->getFacets();
+ $aggs = $resultset->getAggregations();
- $ret = array(
- 'language' => array(),
- 'group' => array()
- );
+ $ret = [
+ 'language' => [],
+ 'group' => []
+ ];
- foreach ( $facets as $type => $facetInfo ) {
- foreach ( $facetInfo['terms'] as $facetRow ) {
- $ret[$type][$facetRow['term']] = $facetRow['count'];
+ foreach ( $aggs as $type => $info ) {
+ foreach ( $info['buckets'] as $row ) {
+ $ret[$type][$row['key']] = $row['doc_count'];
}
}
@@ -550,11 +763,15 @@ GROOVY;
}
public function getDocuments( $resultset ) {
- $ret = array();
+ $ret = [];
foreach ( $resultset->getResults() as $document ) {
$data = $document->getData();
$hl = $document->getHighlights();
- if ( isset( $hl['content'][0] ) ) {
+ if ( isset( $hl['content.prefix_complete'][0] ) ) {
+ $data['content'] = $hl['content.prefix_complete'][0];
+ } elseif ( isset( $hl['content.case_sensitive'][0] ) ) {
+ $data['content'] = $hl['content.case_sensitive'][0];
+ } elseif ( isset( $hl['content'][0] ) ) {
$data['content'] = $hl['content'][0];
}
$ret[] = $data;
@@ -562,4 +779,78 @@ GROOVY;
return $ret;
}
+
+ /**
+ * Delete docs by query by using the scroll API.
+ *
+ * @param \Elastica\Type $type the source index
+ * @param \Elastica\Query $query the query
+ */
+ private function deleteByQuery( \Elastica\Type $type, \Elastica\Query $query ) {
+ $retryAttempts = self::BULK_INDEX_RETRY_ATTEMPTS;
+
+ $search = new \Elastica\Search( $this->getClient() );
+ $search->setQuery( $query );
+ $search->addType( $type );
+ $search->addIndex( $type->getIndex() );
+ $scroll = new \Elastica\Scroll( $search, '15m' );
+
+ foreach ( $scroll as $results ) {
+ $ids = [];
+ foreach ( $results as $result ) {
+ $ids[] = $result->getId();
+ }
+
+ if ( $ids === [] ) {
+ continue;
+ }
+
+ MWElasticUtils::withRetry( $retryAttempts,
+ function () use ( $ids, $type ) {
+ $type->deleteIds( $ids );
+ }
+ );
+ }
+ }
+
+ /**
+ * @return bool
+ */
+ public function isFrozen() {
+ if ( !isset( $this->config['frozen_index'] ) ) {
+ return false;
+ }
+ $frozenIndex = $this->config['frozen_index'];
+ $indices = [ static::ALL_INDEXES_FROZEN_NAME, $this->getIndexName() ];
+ $ids = new \Elastica\Query\Ids( null, $indices );
+
+ try {
+ $resp = $this->getClient()
+ ->getIndex( $frozenIndex )
+ ->getType( static::FROZEN_TYPE )
+ ->search( \Elastica\Query::create( $ids ) );
+
+ if ( $resp->count() === 0 ) {
+ return false;
+ } else {
+ return true;
+ }
+ } catch ( Exception $e ) {
+ LoggerFactory::getInstance( 'ElasticSearchTTMServer' )->warning(
+ 'Problem encountered while checking the frozen index.',
+ [ 'exception' => $e ]
+ );
+ return false;
+ }
+ }
+
+ /**
+ * @return bool true if running with Elastica 5+
+ */
+ private function isElastica5() {
+ // Sadly Elastica does not seem to expose its version so we
+ // check the inexistence of a class that was removed in the
+ // version 5
+ return !class_exists( \Elastica\Script::class );
+ }
}
diff --git a/MLEB/Translate/ttmserver/FakeTTMServer.php b/MLEB/Translate/ttmserver/FakeTTMServer.php
index 15f8d377..16715592 100644
--- a/MLEB/Translate/ttmserver/FakeTTMServer.php
+++ b/MLEB/Translate/ttmserver/FakeTTMServer.php
@@ -5,7 +5,7 @@
* @file
* @author Niklas Laxström
* @copyright Copyright © 2012-2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
* @ingroup TTMServer
*/
@@ -18,7 +18,7 @@
*/
class FakeTTMServer implements ReadableTTMServer, WritableTTMServer {
public function query( $sourceLanguage, $targetLanguage, $text ) {
- return array();
+ return [];
}
public function isLocalSuggestion( array $suggestion ) {
@@ -49,4 +49,12 @@ class FakeTTMServer implements ReadableTTMServer, WritableTTMServer {
public function endBootstrap() {
}
+
+ public function getMirrors() {
+ return [];
+ }
+
+ public function isFrozen() {
+ return false;
+ }
}
diff --git a/MLEB/Translate/ttmserver/Interfaces.php b/MLEB/Translate/ttmserver/Interfaces.php
index 711b4b4e..1f8cb20e 100644
--- a/MLEB/Translate/ttmserver/Interfaces.php
+++ b/MLEB/Translate/ttmserver/Interfaces.php
@@ -5,7 +5,7 @@
* @file
* @author Niklas Laxström
* @copyright Copyright © 2012-2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
* @ingroup TTMServer
*/
@@ -18,9 +18,9 @@ interface ReadableTTMServer {
/**
* Fetches all relevant suggestions for given text.
*
- * @param $sourceLanguage String: language code for the provide text
- * @param $targetLanguage String: language code for the suggestions
- * @param $text String: the text for which to search suggestions
+ * @param string $sourceLanguage language code for the provide text
+ * @param string $targetLanguage language code for the suggestions
+ * @param string $text the text for which to search suggestions
* @return array List: unordered suggestions, which each has fields:
* - source: String: the original text of the suggestion
* - target: String: the suggestion
@@ -77,11 +77,15 @@ interface WritableTTMServer {
/**
* Called multiple times per batch if necessary.
+ *
+ * @param array $batch
*/
public function batchInsertDefinitions( array $batch );
/**
* Called multiple times per batch if necessary.
+ *
+ * @param array $batch
*/
public function batchInsertTranslations( array $batch );
@@ -94,6 +98,24 @@ interface WritableTTMServer {
* Do any cleanup, optimizing etc.
*/
public function endBootstrap();
+
+ /**
+ * Get the list of services to duplicate writes to make them "mirrors"
+ * of this service.
+ *
+ * @since 2017.04
+ * @return string[]
+ */
+ public function getMirrors();
+
+ /**
+ * Check if the service is frozen, attempting to write to
+ * a frozen service may lead to errors or unexpected behaviors.
+ *
+ * @since 2017.04
+ * @return bool true if the service is frozen
+ */
+ public function isFrozen();
}
/**
@@ -106,23 +128,26 @@ interface SearchableTTMServer {
* Performs a search in the translation database.
*
* @param string $queryString String to search for.
- * @param FormOptions $opts Query options like language.
+ * @param array $opts Query options like language.
* @param array $highlight Tags for highlighting.
* @return mixed Result set
*/
public function search( $queryString, $opts, $highlight );
/**
- * ...
+ * @param stdClass $resultset
+ * @return array[]
*/
public function getFacets( $resultset );
/**
+ * @param stdClass $resultset
* @return int
*/
public function getTotalHits( $resultset );
/**
+ * @param stdClass $resultset
* @return array[]
*/
public function getDocuments( $resultset );
diff --git a/MLEB/Translate/ttmserver/RemoteTTMServer.php b/MLEB/Translate/ttmserver/RemoteTTMServer.php
index 4225b2c8..402ad5ac 100644
--- a/MLEB/Translate/ttmserver/RemoteTTMServer.php
+++ b/MLEB/Translate/ttmserver/RemoteTTMServer.php
@@ -5,7 +5,7 @@
* @file
* @author Niklas Laxström
* @copyright Copyright © 2012-2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
* @ingroup TTMServer
*/
@@ -19,7 +19,7 @@
class RemoteTTMServer extends TTMServer implements ReadableTTMServer {
public function query( $sourceLanguage, $targetLanguage, $text ) {
// @todo Implement some day perhaps?
- return array();
+ return [];
}
public function isLocalSuggestion( array $suggestion ) {
diff --git a/MLEB/Translate/ttmserver/SolrTTMServer.php b/MLEB/Translate/ttmserver/SolrTTMServer.php
index b81aaf2e..bb6c244c 100644
--- a/MLEB/Translate/ttmserver/SolrTTMServer.php
+++ b/MLEB/Translate/ttmserver/SolrTTMServer.php
@@ -5,7 +5,7 @@
* @file
* @author Niklas Laxström
* @copyright Copyright © 2012-2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
* @ingroup TTMServer
*/
@@ -13,6 +13,7 @@
* TTMServer backed based on Solr instance. Depends on Solarium.
* @since 2012-06-27
* @ingroup TTMServer
+ * @deprecated 1.27. Will be removed in 1.29.
*/
class SolrTTMServer
extends TTMServer
@@ -32,7 +33,10 @@ class SolrTTMServer
protected $logger;
public function __construct( $config ) {
+ wfDeprecated( __METHOD__, '1.24' );
+
parent::__construct( $config );
+
if ( isset( $config['config'] ) ) {
$this->client = new Solarium_Client( $config['config'] );
} else {
@@ -41,7 +45,7 @@ class SolrTTMServer
}
public function isLocalSuggestion( array $suggestion ) {
- return $suggestion['wiki'] === wfWikiId();
+ return $suggestion['wiki'] === wfWikiID();
}
public function expandLocation( array $suggestion ) {
@@ -65,11 +69,11 @@ class SolrTTMServer
// For now impose a length limit on query string to avoid doing
// very slow queries. Magic number.
if ( strlen( $text ) > 789 ) {
- return array();
+ return [];
}
$query = $this->client->createSelect();
- $query->setFields( array( 'globalid', 'content', 'score' ) );
+ $query->setFields( [ 'globalid', 'content', 'score' ] );
/* The interface usually displays three best candidates. These might
* come from more than three matches, if the translation is the same.
@@ -88,12 +92,12 @@ class SolrTTMServer
/* Note how we need to escape twice here, first the string for strdist
* and then the strdist call itself for the query. And of course every-
* thing will be URL encoded once sent over the line. */
- $query->setQuery( '_val_:%P1%', array( $dist ) );
+ $query->setQuery( '_val_:%P1%', [ $dist ] );
/* Filter queries are supposed to be efficient as they are separately
* cached, but I haven't done any benchmarks. */
$query->createFilterQuery( 'lang' )
- ->setQuery( 'language:%P1%', array( $sourceLanguage ) );
+ ->setQuery( 'language:%P1%', [ $sourceLanguage ] );
$resultset = $this->client->select( $query );
@@ -105,7 +109,7 @@ class SolrTTMServer
* This code is a bit uglier than I'd like it to be, since there
* there is no field that globally identifies a message (message
* definition and translations). */
- $contents = $scores = array();
+ $contents = $scores = [];
$queryString = '';
foreach ( $resultset as $doc ) {
$sourceId = preg_replace( '~/[^/]+$~', '', $doc->globalid );
@@ -118,7 +122,7 @@ class SolrTTMServer
// Second query to fetch available translations
$fetchQuery = $this->client->createSelect();
- $fetchQuery->setFields( array( 'wiki', 'uri', 'content', 'messageid', 'globalid' ) );
+ $fetchQuery->setFields( [ 'wiki', 'uri', 'content', 'messageid', 'globalid' ] );
// This come in random order, so have to fetch all and sort
$fetchQuery->setRows( 25 );
$fetchQuery->setQuery( $queryString );
@@ -127,7 +131,7 @@ class SolrTTMServer
$translations = $this->client->select( $fetchQuery );
- $suggestions = array();
+ $suggestions = [];
foreach ( $translations as $doc ) {
/* Construct the matching source id */
$sourceId = preg_replace( '~/[^/]+$~', '', $doc->globalid );
@@ -140,7 +144,7 @@ class SolrTTMServer
continue;
}
- $suggestions[] = array(
+ $suggestions[] = [
'source' => $contents[$sourceId],
'target' => $doc->content,
'context' => $doc->messageid,
@@ -148,7 +152,7 @@ class SolrTTMServer
'wiki' => $doc->wiki,
'location' => $doc->messageid . '/' . $targetLanguage,
'uri' => $doc->uri,
- );
+ ];
}
/* Like mentioned above, we get results in random order. Sort them
@@ -195,11 +199,11 @@ class SolrTTMServer
if ( $doDelete ) {
$base = Title::makeTitle( $title->getNamespace(), $handle->getKey() );
- $conds = array(
- 'wiki' => wfWikiId(),
+ $conds = [
+ 'wiki' => wfWikiID(),
'language' => $handle->getCode(),
'messageid' => $base->getPrefixedText(),
- );
+ ];
foreach ( $conds as $key => &$value ) {
$value = "$key:" . $update->getHelper()->escapePhrase( $value );
}
@@ -214,7 +218,7 @@ class SolrTTMServer
$targetTitle->getNamespace(),
$handle->getKey() . '/' . $sourceLanguage
);
- $revId = intval( $sourceTitle->getLatestRevID() );
+ $revId = (int)$sourceTitle->getLatestRevID();
/* Note: in some cases the source page might not exist, in this case
* we use 0 as message version identifier, to differentiate them from
* orphan messages */
@@ -230,7 +234,7 @@ class SolrTTMServer
try {
$this->client->update( $update );
} catch ( Solarium_Exception $e ) {
- error_log( "SolrTTMServer update-write failed" );
+ error_log( 'SolrTTMServer update-write failed' );
return false;
}
@@ -240,19 +244,23 @@ class SolrTTMServer
/**
* @see schema.xml
+ * @param MessageHandle $handle
+ * @param string $text
+ * @param int $revId
+ * @return Solarium_Document_ReadWrite
*/
protected function createDocument( MessageHandle $handle, $text, $revId ) {
$language = $handle->getCode();
$translationTitle = $handle->getTitle();
$title = Title::makeTitle( $handle->getTitle()->getNamespace(), $handle->getKey() );
- $wiki = wfWikiId();
+ $wiki = wfWikiID();
$messageid = $title->getPrefixedText();
$globalid = "$wiki-$messageid-$revId/$language";
$doc = new Solarium_Document_ReadWrite();
$doc->wiki = $wiki;
- $doc->uri = $translationTitle->getCanonicalUrl();
+ $doc->uri = $translationTitle->getCanonicalURL();
$doc->messageid = $messageid;
$doc->globalid = $globalid;
@@ -265,7 +273,7 @@ class SolrTTMServer
public function beginBootstrap() {
$update = $this->client->createUpdate();
- $query = 'wiki:' . $update->getHelper()->escapePhrase( wfWikiId() );
+ $query = 'wiki:' . $update->getHelper()->escapePhrase( wfWikiID() );
$update->addDeleteQuery( $query );
$update->addCommit();
$this->client->update( $update );
@@ -290,7 +298,7 @@ class SolrTTMServer
foreach ( $batch as $key => $data ) {
list( $handle, $sourceLanguage, $text ) = $data;
$revId = $handle->getTitleForLanguage( $sourceLanguage )->getLatestRevID();
- $doc = $this->createDocument( $handle, $text, $id );
+ $doc = $this->createDocument( $handle, $text, $revId );
// Add document and commit within X seconds.
$update->addDocument( $doc, null, self::COMMIT_WITHIN );
}
@@ -341,7 +349,13 @@ class SolrTTMServer
}
}
- // Search interface
+ /**
+ * Search interface
+ * @param string $queryString
+ * @param array $opts
+ * @param array $highlight
+ * @return array
+ */
public function search( $queryString, $opts, $highlight ) {
$client = $this->getSolarium();
@@ -349,8 +363,8 @@ class SolrTTMServer
$dismax = $query->getDisMax();
$dismax->setQueryParser( 'edismax' );
$query->setQuery( $queryString );
- $query->setRows( $opts->getValue( 'limit' ) );
- $query->setStart( $opts->getValue( 'offset' ) );
+ $query->setRows( $opts['limit'] );
+ $query->setStart( $opts['offset'] );
list( $pre, $post ) = $highlight;
$hl = $query->getHighlighting();
@@ -361,17 +375,17 @@ class SolrTTMServer
$hl->setFragSize( '5000' );
$hl->setSnippets( 1 );
- $languageFilter = $opts->getValue( 'language' );
+ $languageFilter = $opts['language'];
if ( $languageFilter !== '' ) {
$query->createFilterQuery( 'languageFilter' )
- ->setQuery( 'language:%P1%', array( $languageFilter ) )
+ ->setQuery( 'language:%P1%', [ $languageFilter ] )
->addTag( 'filter' );
}
- $groupFilter = $opts->getValue( 'group' );
+ $groupFilter = $opts['group'];
if ( $groupFilter !== '' ) {
$query->createFilterQuery( 'groupFilter' )
- ->setQuery( 'group:%P1%', array( $groupFilter ) )
+ ->setQuery( 'group:%P1%', [ $groupFilter ] )
->addTag( 'filter' );
}
@@ -379,12 +393,12 @@ class SolrTTMServer
$language = $facetSet->createFacetField( 'language' );
$language->setField( 'language' );
- $language->setMincount( 1 );
+ $language->setMinCount( 1 );
$language->addExclude( 'filter' );
$group = $facetSet->createFacetField( 'group' );
$group->setField( 'group' );
- $group->setMincount( 1 );
+ $group->setMinCount( 1 );
$group->setMissing( true );
$group->addExclude( 'filter' );
@@ -396,10 +410,10 @@ class SolrTTMServer
}
public function getFacets( $resultset ) {
- return array(
+ return [
'language' => iterator_to_array( $resultset->getFacetSet()->getFacet( 'language' ) ),
'group' => iterator_to_array( $resultset->getFacetSet()->getFacet( 'group' ) ),
- );
+ ];
}
public function getTotalHits( $resultset ) {
@@ -408,7 +422,7 @@ class SolrTTMServer
public function getDocuments( $resultset ) {
$highlighting = $resultset->getHighlighting();
- $ret = array();
+ $ret = [];
foreach ( $resultset as $document ) {
$fields = iterator_to_array( $document );
// Compatibility mapping
@@ -416,7 +430,7 @@ class SolrTTMServer
$hdoc = $highlighting->getResult( $document->globalid );
$text = $hdoc->getField( 'text' );
- if ( $text === array() ) {
+ if ( $text === [] ) {
$text = $document->text;
} else {
$text = $text[0];
diff --git a/MLEB/Translate/ttmserver/TTMServer.php b/MLEB/Translate/ttmserver/TTMServer.php
index d1cf443a..98724869 100644
--- a/MLEB/Translate/ttmserver/TTMServer.php
+++ b/MLEB/Translate/ttmserver/TTMServer.php
@@ -4,8 +4,7 @@
*
* @file
* @author Niklas Laxström
- * @copyright Copyright © 2012-2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
* @defgroup TTMServer The Translate extension translation memory interface
*/
@@ -39,19 +38,20 @@ class TTMServer {
}
}
- throw new MWEXception( "TTMServer with no type" );
+ throw new MWEXception( 'TTMServer with no type' );
}
/**
* Returns the primary server instance, useful for chaining.
- * Primary one is defined as config with key TTMServer
- * in $wgTranslateTranslationServices.
+ * Primary instance is defined by $wgTranslateTranslationDefaultService
+ * which is a key to $wgTranslateTranslationServices.
* @return WritableTTMServer
*/
public static function primary() {
- global $wgTranslateTranslationServices;
- if ( isset( $wgTranslateTranslationServices['TTMServer'] ) ) {
- $obj = self::factory( $wgTranslateTranslationServices['TTMServer'] );
+ global $wgTranslateTranslationServices,
+ $wgTranslateTranslationDefaultService;
+ if ( isset( $wgTranslateTranslationServices[$wgTranslateTranslationDefaultService] ) ) {
+ $obj = self::factory( $wgTranslateTranslationServices[$wgTranslateTranslationDefaultService] );
if ( $obj instanceof WritableTTMServer ) {
return $obj;
}
@@ -61,13 +61,13 @@ class TTMServer {
}
public static function sortSuggestions( array $suggestions ) {
- usort( $suggestions, array( __CLASS__, 'qualitySort' ) );
+ usort( $suggestions, [ __CLASS__, 'qualitySort' ] );
return $suggestions;
}
protected static function qualitySort( $a, $b ) {
- list( $c, $d ) = array( $a['quality'], $b['quality'] );
+ list( $c, $d ) = [ $a['quality'], $b['quality'] ];
if ( $c === $d ) {
return 0;
}
@@ -81,17 +81,17 @@ class TTMServer {
* Uses the native PHP implementation when possible for speed.
* The native levenshtein is limited to 255 bytes.
*
- * @param $str1
- * @param $str2
- * @param $length1
- * @param $length2
+ * @param string $str1
+ * @param string $str2
+ * @param int $length1
+ * @param int $length2
* @return int
*/
public static function levenshtein( $str1, $str2, $length1, $length2 ) {
- if ( $length1 == 0 ) {
+ if ( $length1 === 0 ) {
return $length2;
}
- if ( $length2 == 0 ) {
+ if ( $length2 === 0 ) {
return $length1;
}
if ( $str1 === $str2 ) {
@@ -108,14 +108,14 @@ class TTMServer {
$prevRow = range( 0, $length2 );
for ( $i = 0; $i < $length1; $i++ ) {
- $currentRow = array();
+ $currentRow = [];
$currentRow[0] = $i + 1;
$c1 = mb_substr( $str1, $i, 1 );
for ( $j = 0; $j < $length2; $j++ ) {
$c2 = mb_substr( $str2, $j, 1 );
$insertions = $prevRow[$j + 1] + 1;
$deletions = $currentRow[$j] + 1;
- $substitutions = $prevRow[$j] + ( ( $c1 != $c2 ) ? 1 : 0 );
+ $substitutions = $prevRow[$j] + ( ( $c1 !== $c2 ) ? 1 : 0 );
$currentRow[] = min( $insertions, $deletions, $substitutions );
}
$prevRow = $currentRow;
@@ -124,31 +124,64 @@ class TTMServer {
return $prevRow[$length2];
}
- /// Hook: ArticleDeleteComplete
+ /**
+ * Hook: ArticleDeleteComplete
+ * @param WikiPage $wikipage
+ */
public static function onDelete( WikiPage $wikipage ) {
$handle = new MessageHandle( $wikipage->getTitle() );
- TTMServer::primary()->update( $handle, null );
-
- return true;
+ $job = TTMServerMessageUpdateJob::newJob( $handle, 'delete' );
+ JobQueueGroup::singleton()->push( $job );
}
- /// Called from TranslateEditAddons::onSave
+ /**
+ * Called from TranslateEditAddons::onSave
+ * @param MessageHandle $handle
+ * @param string $text
+ * @param bool $fuzzy
+ */
public static function onChange( MessageHandle $handle, $text, $fuzzy ) {
- if ( $fuzzy ) {
- $text = null;
- }
- TTMServer::primary()->update( $handle, $text );
+ $job = TTMServerMessageUpdateJob::newJob( $handle, 'refresh' );
+ JobQueueGroup::singleton()->push( $job );
}
public static function onGroupChange( MessageHandle $handle, $old, $new ) {
- if ( $old === array() ) {
+ if ( $old === [] ) {
// Don't bother for newly added messages
- return true;
+ return;
}
- $job = TTMServerMessageUpdateJob::newJob( $handle );
- $job->insert();
+ $job = TTMServerMessageUpdateJob::newJob( $handle, 'rebuild' );
+ JobQueueGroup::singleton()->push( $job );
+ }
- return true;
+ /**
+ * @return string[]
+ */
+ public function getMirrors() {
+ global $wgTranslateTranslationServices;
+ if ( isset( $this->config['mirrors'] ) ) {
+ $mirrors = [];
+ foreach ( $this->config['mirrors'] as $name ) {
+ if ( !is_string( $name ) ) {
+ throw new TTMServerException( "Invalid configuration set in " .
+ "mirrors, expected an array of strings" );
+ }
+ if ( !isset( $wgTranslateTranslationServices[$name] ) ) {
+ throw new TTMServerException( "Invalid configuration in " .
+ "mirrors, unknown service $name" );
+ }
+ $mirrors[$name] = true;
+ }
+ return array_keys( $mirrors );
+ }
+ return [];
+ }
+
+ /**
+ * @return bool
+ */
+ public function isFrozen() {
+ return false;
}
}
diff --git a/MLEB/Translate/ttmserver/TTMServerMessageUpdateJob.php b/MLEB/Translate/ttmserver/TTMServerMessageUpdateJob.php
index d304b857..9eb379ec 100644
--- a/MLEB/Translate/ttmserver/TTMServerMessageUpdateJob.php
+++ b/MLEB/Translate/ttmserver/TTMServerMessageUpdateJob.php
@@ -4,42 +4,344 @@
*
* @file
* @author Niklas Laxström
- * @copyright Copyright © 2012-2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
+use MediaWiki\Logger\LoggerFactory;
+
/**
* Job for updating translation memory.
*
+ * job params:
+ * - command: the command to run, defaults to 'rebuild'
+ * - service: the service to write to, if set to null the job will write
+ * to the default (primary) service and its replicas.
+ * - errorCount: number of errors encountered while trying to perform the write
+ * on this service
+ *
+ * This job handles retries itself and return false in allowRetries to disable
+ * JobQueue's internal retry service.
+ *
+ * If mirroring is activated on the primary service then the first job
+ * will try to write to all services, it will resend a new job to
+ * every single service that failed and will increment errorCount.
+ * When too many errors occur on single service the job is dropped.
+ *
* @ingroup JobQueue
*/
class TTMServerMessageUpdateJob extends Job {
/**
+ * Number of *retries* allowed, 4 means we attempt
+ * to run the job 5 times (1 initial attempt + 4 retries).
+ */
+ const MAX_ERROR_RETRY = 4;
+
+ /**
+ * Constant used by backoffDelay().
+ * With 7 the cumulative delay between the first and last attempt is
+ * between 8 and 33 minutes.
+ */
+ const WRITE_BACKOFF_EXPONENT = 7;
+
+ /**
+ * The maximum amount of time jobs delayed due to frozen services can remain
+ * in the job queue.
+ */
+ const DROP_DELAYED_JOBS_AFTER = 86400; // 60 * 60 * 24 * 1;
+
+ /**
* @param MessageHandle $handle
+ * @param string $command
* @return TTMServerMessageUpdateJob
*/
- public static function newJob( MessageHandle $handle ) {
- $job = new self( $handle->getTitle() );
+ public static function newJob( MessageHandle $handle, $command ) {
+ $job = new self( $handle->getTitle(), [ 'command' => $command ] );
return $job;
}
- function __construct( $title, $params = array(), $id = 0 ) {
- parent::__construct( __CLASS__, $title, $params, $id );
+ /**
+ * @param Title $title
+ * @param array $params
+ */
+ public function __construct( $title, $params = [] ) {
+ parent::__construct(
+ __CLASS__,
+ $title,
+ $params + [
+ 'command' => 'rebuild',
+ 'service' => null,
+ 'errorCount' => 0,
+ 'createdAt' => time(),
+ 'retryCount' => 0,
+ ]
+ );
}
/**
* Fetch all the translations and update them.
+ * @return bool
+ */
+ public function run() {
+ global $wgTranslateTranslationServices,
+ $wgTranslateTranslationDefaultService;
+
+ $service = $this->params['service'];
+ $writeToMirrors = false;
+
+ if ( $service === null ) {
+ $service = $wgTranslateTranslationDefaultService;
+ $writeToMirrors = true;
+ }
+
+ if ( !isset( $wgTranslateTranslationServices[$service] ) ) {
+ LoggerFactory::getInstance( 'TTMServerUpdates' )->warning(
+ 'Received update job for a an unknown service {service}.',
+ [ 'service' => $service ]
+ );
+ return true;
+ }
+
+ $services = [ $service ];
+ if ( $writeToMirrors ) {
+ $config = $wgTranslateTranslationServices[$service];
+ $server = TTMServer::factory( $config );
+ $services = array_unique(
+ array_merge( $services, $server->getMirrors() )
+ );
+ }
+
+ foreach ( $services as $service ) {
+ $this->runCommandWithRetry( $service );
+ }
+ return true;
+ }
+
+ /**
+ * @inheritDoc
+ */
+ public function allowRetries() {
+ return false;
+ }
+
+ /**
+ * Run the update on the specified service name.
+ *
+ * @param string $serviceName the service name
+ */
+ private function runCommandWithRetry( $serviceName ) {
+ global $wgTranslateTranslationServices;
+
+ if ( !isset( $wgTranslateTranslationServices[$serviceName] ) ) {
+ LoggerFactory::getInstance( 'TTMServerUpdates' )->warning(
+ 'Cannot write to {service}: service is unknown.',
+ [ 'service' => $serviceName ]
+ );
+ return;
+ }
+ $ttmserver = TTMServer::factory( $wgTranslateTranslationServices[$serviceName] );
+
+ if ( $serviceName === null || !( $ttmserver instanceof WritableTTMServer ) ) {
+ LoggerFactory::getInstance( 'TTMServerUpdates' )->warning(
+ 'Received update job for a service that does not implement ' .
+ 'WritableTTMServer, please check config for {service}.',
+ [ 'service' => $serviceName ]
+ );
+ return;
+ }
+
+ try {
+ if ( $ttmserver->isFrozen() ) {
+ $this->requeueRetry( $serviceName );
+ } else {
+ $this->runCommand( $ttmserver );
+ }
+ } catch ( \Exception $e ) {
+ $this->requeueError( $serviceName, $e );
+ }
+ }
+
+ /**
+ * @param string $serviceName the service in error
+ * @param Exception $e the error
+ */
+ private function requeueError( $serviceName, $e ) {
+ LoggerFactory::getInstance( 'TTMServerUpdates' )->warning(
+ 'Exception thrown while running {command} on ' .
+ 'service {service}: {errorMessage}',
+ [
+ 'command' => $this->params['command'],
+ 'service' => $serviceName,
+ 'errorMessage' => $e->getMessage(),
+ 'exception' => $e,
+ ]
+ );
+ if ( $this->params['errorCount'] >= self::MAX_ERROR_RETRY ) {
+ LoggerFactory::getInstance( 'TTMServerUpdates' )->warning(
+ 'Dropping failing job {command} for service {service} ' .
+ 'after repeated failure',
+ [
+ 'command' => $this->params['command'],
+ 'service' => $serviceName,
+ ]
+ );
+ return;
+ }
+
+ $delay = self::backoffDelay( $this->params['errorCount'] );
+ $job = clone $this;
+ $job->params['errorCount']++;
+ $job->params['service'] = $serviceName;
+ $job->setDelay( $delay );
+ LoggerFactory::getInstance( 'TTMServerUpdates' )->info(
+ 'Update job reported failure on service {service}. ' .
+ 'Requeueing job with delay of {delay}.',
+ [
+ 'service' => $serviceName,
+ 'delay' => $delay
+ ]
+ );
+ $this->resend( $job );
+ }
+
+ /**
+ * Re-queue job that is frozen, or drop the job if it has
+ * been frozen for too long.
+ *
+ * @param string $serviceName
+ */
+ private function requeueRetry( $serviceName ) {
+ $diff = time() - $this->params['createdAt'];
+ $dropTimeout = self::DROP_DELAYED_JOBS_AFTER;
+ if ( $diff > $dropTimeout ) {
+ LoggerFactory::getInstance( 'TTMServerUpdates' )->warning(
+ 'Dropping delayed job {command} for service {service} ' .
+ 'after waiting {diff}s',
+ [
+ 'command' => $this->params['command'],
+ 'service' => $serviceName,
+ 'diff' => $diff,
+ ]
+ );
+ } else {
+ $delay = self::backoffDelay( $this->params['retryCount'] );
+ $job = clone $this;
+ $job->params['retryCount']++;
+ $job->params['service'] = $serviceName;
+ $job->setDelay( $delay );
+ LoggerFactory::getInstance( 'TTMServerUpdates' )->debug(
+ 'Service {service} reported frozen. ' .
+ 'Requeueing job with delay of {delay}s',
+ [
+ 'service' => $serviceName,
+ 'delay' => $delay
+ ]
+ );
+ $this->resend( $job );
+ }
+ }
+
+ /**
+ * Extracted for testing purpose
+ * @param TTMServerMessageUpdateJob $job
+ */
+ protected function resend( TTMServerMessageUpdateJob $job ) {
+ JobQueueGroup::singleton()->push( $job );
+ }
+
+ private function runCommand( WritableTTMServer $ttmserver ) {
+ $handle = $this->getHandle();
+ $command = $this->params['command'];
+
+ if ( $command === 'delete' ) {
+ $this->updateItem( $ttmserver, $handle, null, false );
+ } elseif ( $command === 'rebuild' ) {
+ $this->updateMessage( $ttmserver, $handle );
+ } elseif ( $command === 'refresh' ) {
+ $this->updateTranslation( $ttmserver, $handle );
+ }
+ }
+
+ /**
+ * Extracted for testing purpose
+ *
+ * @return MessageHandle
+ */
+ protected function getHandle() {
+ return new MessageHandle( $this->title );
+ }
+
+ /**
+ * Extracted for testing purpose
+ *
+ * @param MessageHandle $handle
+ * @return string
*/
- function run() {
- $handle = new MessageHandle( $this->title );
+ protected function getTranslation( MessageHandle $handle ) {
+ return TranslateUtils::getMessageContent(
+ $handle->getKey(),
+ $handle->getCode(),
+ $handle->getTitle()->getNamespace()
+ );
+ }
+
+ private function updateMessage( WritableTTMServer $ttmserver, MessageHandle $handle ) {
+ // Base page update, e.g. group change. Update everything.
$translations = ApiQueryMessageTranslations::getTranslations( $handle );
foreach ( $translations as $page => $data ) {
$tTitle = Title::makeTitle( $this->title->getNamespace(), $page );
$tHandle = new MessageHandle( $tTitle );
- TTMServer::onChange( $tHandle, $data[0], $tHandle->isFuzzy() );
+ $this->updateItem( $ttmserver, $tHandle, $data[0], $tHandle->isFuzzy() );
}
+ }
- return true;
+ private function updateTranslation( WritableTTMServer $ttmserver, MessageHandle $handle ) {
+ // Update only this translation
+ $translation = $this->getTranslation( $handle );
+ $this->updateItem( $ttmserver, $handle, $translation, $handle->isFuzzy() );
+ }
+
+ private function updateItem( WritableTTMServer $ttmserver, MessageHandle $handle, $text, $fuzzy ) {
+ if ( $fuzzy ) {
+ $text = null;
+ }
+ $ttmserver->update( $handle, $text );
+ }
+
+ /**
+ * Set a delay for this job. Note that this might not be possible, the JobQueue
+ * implementation handling this job doesn't support it (JobQueueDB) but is possible
+ * for the high performance JobQueueRedis. Note also that delays are minimums -
+ * at least JobQueueRedis makes no effort to remove the delay as soon as possible
+ * after it has expired. By default it only checks every five minutes or so.
+ * Note yet again that if another delay has been set that is longer then this one
+ * then the _longer_ delay stays.
+ *
+ * @param int $delay seconds to delay this job if possible
+ */
+ public function setDelay( $delay ) {
+ $jobQueue = JobQueueGroup::singleton()->get( $this->getType() );
+ if ( !$delay || !$jobQueue->delayedJobsEnabled() ) {
+ return;
+ }
+ $oldTime = $this->getReleaseTimestamp();
+ $newTime = time() + $delay;
+ if ( $oldTime !== null && $oldTime >= $newTime ) {
+ return;
+ }
+ $this->params[ 'jobReleaseTimestamp' ] = $newTime;
+ }
+
+ /**
+ * @param int $retryCount The number of times the job has errored out.
+ * @return int Number of seconds to delay. With the default minimum exponent
+ * of 6 the possible return values are 64, 128, 256, 512 and 1024 giving a
+ * maximum delay of 17 minutes.
+ */
+ public static function backoffDelay( $retryCount ) {
+ return ceil( pow(
+ 2,
+ static::WRITE_BACKOFF_EXPONENT + rand( 0, min( $retryCount, 4 ) )
+ ) );
}
}
diff --git a/MLEB/Translate/utils/ExternalMessageSourceStateComparator.php b/MLEB/Translate/utils/ExternalMessageSourceStateComparator.php
index 3dc9b9c8..5b24b5e0 100644
--- a/MLEB/Translate/utils/ExternalMessageSourceStateComparator.php
+++ b/MLEB/Translate/utils/ExternalMessageSourceStateComparator.php
@@ -4,14 +4,14 @@
* Finds external changes for file based message groups.
*
* @author Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
* @since 2013.12
*/
class ExternalMessageSourceStateComparator {
/** Process all languages supported by the message group */
const ALL_LANGUAGES = 'all languages';
- protected $changes = array();
+ protected $changes = [];
/**
* Finds changes in external sources compared to wiki state.
@@ -33,9 +33,11 @@ class ExternalMessageSourceStateComparator {
* @return array array[language code][change type] = change.
*/
public function processGroup( FileBasedMessageGroup $group, $languages ) {
- $this->changes = array();
+ $this->changes = [];
+ $processAll = false;
if ( $languages === self::ALL_LANGUAGES ) {
+ $processAll = true;
$languages = $group->getTranslatableLanguages();
// This means all languages
@@ -48,10 +50,13 @@ class ExternalMessageSourceStateComparator {
throw new MWException( 'Invalid input given for $languages' );
}
- // Process the source language before others
+ // Process the source language before others. Source language might not
+ // be included in $group->getTranslatableLanguages(). The expected
+ // behavior is that source language is always processed when given
+ // self::ALL_LANGUAGES.
$sourceLanguage = $group->getSourceLanguage();
$index = array_search( $sourceLanguage, $languages );
- if ( $index !== false ) {
+ if ( $processAll || $index !== false ) {
unset( $languages[$index] );
$this->processLanguage( $group, $sourceLanguage );
}
@@ -104,9 +109,9 @@ class ExternalMessageSourceStateComparator {
) {
/* This throws a warning if message definitions are not yet
* cached and will read the file for definitions. */
- wfSuppressWarnings();
+ MediaWiki\suppressWarnings();
$wiki = $group->initCollection( $code );
- wfRestoreWarnings();
+ MediaWiki\restoreWarnings();
$wiki->filter( 'hastranslation', false );
$wiki->loadTranslations();
$wikiKeys = $wiki->getMessageKeys();
@@ -123,7 +128,6 @@ class ExternalMessageSourceStateComparator {
// Does not exist
if ( $file === false ) {
-
return;
}
@@ -149,6 +153,7 @@ class ExternalMessageSourceStateComparator {
$wikiMessage = $wiki[$key];
$wikiContent = $wikiMessage->translation();
+ // @todo: Fuzzy checking can also be moved to $ffs->isContentEqual();
// If FFS doesn't support it, ignore fuzziness as difference
$wikiContent = str_replace( TRANSLATE_FUZZY, '', $wikiContent );
@@ -157,7 +162,7 @@ class ExternalMessageSourceStateComparator {
$wikiContent = TRANSLATE_FUZZY . $wikiContent;
}
- if ( self::compareContent( $sourceContent, $wikiContent ) ) {
+ if ( $ffs->isContentEqual( $sourceContent, $wikiContent ) ) {
// File and wiki stage agree, nothing to do
continue;
}
@@ -173,8 +178,8 @@ class ExternalMessageSourceStateComparator {
* Hence we check that source === cache && cache !== wiki
* and if so we skip this string. */
if (
- !self::compareContent( $wikiContent, $cacheContent ) &&
- self::compareContent( $sourceContent, $cacheContent )
+ !$ffs->isContentEqual( $wikiContent, $cacheContent ) &&
+ $ffs->isContentEqual( $sourceContent, $cacheContent )
) {
continue;
}
@@ -207,49 +212,12 @@ class ExternalMessageSourceStateComparator {
$this->addChange( 'deletion', $code, $key, null );
}
}
-
}
protected function addChange( $type, $language, $key, $content ) {
- $this->changes[$language][$type][] = array(
+ $this->changes[$language][$type][] = [
'key' => $key,
'content' => $content,
- );
- }
-
- /**
- * Compares two strings.
- * @todo Ignore changes in different way inlined plurals.
- * @todo Handle fuzzy state changes if FFS supports it.
- *
- * @param string $a
- * @param string $b
- * @return bool Whether two strings are equal
- */
- protected static function compareContent( $a, $b ) {
- return $a === $b;
- }
-
- /**
- * Writes change array as a serialized file into a known place.
- * @param array $array Array of changes as returned by processGroup
- * indexed by message group id.
- * @todo does not belong to this class.
- */
- public static function writeChanges( $array ) {
- // This method is almost identical with MessageIndex::store
- /* This will overwrite the previous cache file if any. Once the cache
- * file is processed with Special:ManageMessageGroups, it is
- * renamed so that it wont be processed again. */
- $file = TranslateUtils::cacheFile( SpecialManageGroups::CHANGEFILE );
- $cache = CdbWriter::open( $file );
- $keys = array_keys( $array );
- $cache->set( '#keys', serialize( $keys ) );
-
- foreach ( $array as $key => $value ) {
- $value = serialize( $value );
- $cache->set( $key, $value );
- }
- $cache->close();
+ ];
}
}
diff --git a/MLEB/Translate/utils/Font.php b/MLEB/Translate/utils/Font.php
index 1b35b614..37fa4ac7 100644
--- a/MLEB/Translate/utils/Font.php
+++ b/MLEB/Translate/utils/Font.php
@@ -4,8 +4,7 @@
*
* @author Niklas Laxström
* @author Harry Burt
- * @copyright Copyright © 2008-2013, Niklas Laxström
- * @license Public Domain
+ * @license Unlicense
* @file
*/
@@ -19,7 +18,7 @@
class FCFontFinder {
/**
* Searches for suitable font in the system.
- * @param $code \string Language code.
+ * @param string $code Language code.
* @return bool|string Full path to the font file, false on failure
*/
public static function findFile( $code ) {
@@ -33,7 +32,7 @@ class FCFontFinder {
/**
* Searches for suitable font family in the system.
- * @param $code \string Language code.
+ * @param string $code Language code.
* @return bool|string Name of font family, false on failure
*/
public static function findFamily( $code ) {
@@ -54,7 +53,7 @@ class FCFontFinder {
}
$cache = self::getCache();
- $cachekey = wfMemckey( 'fcfont', $code );
+ $cachekey = wfMemcKey( 'fcfont', $code );
$timeout = 60 * 60 * 12;
$cached = $cache->get( $cachekey );
@@ -79,7 +78,7 @@ class FCFontFinder {
}
$pattern = '/^(.*?): "(.*)" "(.*)"$/';
- $matches = array();
+ $matches = [];
if ( !preg_match( $pattern, $suggestion, $matches ) ) {
wfDebugLog( 'fcfont', "fc-match: return format not understood: $suggestion" );
@@ -119,11 +118,11 @@ class FCFontFinder {
wfDebugLog( 'fcfont', "fc-list got $count candidates; using $chosen" );
- $data = array(
+ $data = [
'family' => $family,
'type' => $type,
'file' => $chosen,
- );
+ ];
$cache->set( $cachekey, $data, $timeout );
diff --git a/MLEB/Translate/utils/FuzzyBot.php b/MLEB/Translate/utils/FuzzyBot.php
index e9992117..093e39e1 100644
--- a/MLEB/Translate/utils/FuzzyBot.php
+++ b/MLEB/Translate/utils/FuzzyBot.php
@@ -5,7 +5,7 @@
* @file
* @author Niklas Laxström
* @copyright Copyright © 2012-2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -14,12 +14,7 @@
*/
class FuzzyBot {
public static function getUser() {
- $bot = User::newFromName( self::getName() );
- if ( $bot->isAnon() ) {
- $bot->addToDatabase();
- }
-
- return $bot;
+ return User::newSystemUser( self::getName(), [ 'steal' => true ] );
}
public static function getName() {
diff --git a/MLEB/Translate/utils/HTMLJsSelectToInputField.php b/MLEB/Translate/utils/HTMLJsSelectToInputField.php
index 8035f2f4..ad7dedb2 100644
--- a/MLEB/Translate/utils/HTMLJsSelectToInputField.php
+++ b/MLEB/Translate/utils/HTMLJsSelectToInputField.php
@@ -4,7 +4,7 @@
* @file
* @author Niklas Laxström
* @copyright Copyright © 2010 Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -12,7 +12,7 @@
*/
class HTMLJsSelectToInputField extends HTMLTextField {
/**
- * @param $value
+ * @param string $value
* @return string
*/
function getInputHTML( $value ) {
@@ -23,17 +23,17 @@ class HTMLJsSelectToInputField extends HTMLTextField {
* @var JsSelectToInput $select
*/
$select = $this->mParams['select'];
- $input = $select->getHtmlAndPrepareJs() . '<br />' . $input;
+ $input = $select->getHtmlAndPrepareJS() . '<br />' . $input;
}
return $input;
}
/**
- * @param $value
+ * @param string $value
* @return array
*/
- function tidy( $value ) {
+ protected function tidy( $value ) {
$value = array_map( 'trim', explode( ',', $value ) );
$value = array_unique( array_filter( $value ) );
@@ -41,9 +41,9 @@ class HTMLJsSelectToInputField extends HTMLTextField {
}
/**
- * @param $value
- * @param $alldata
- * @return bool|String
+ * @param string $value
+ * @param array $alldata
+ * @return bool|string
*/
function validate( $value, $alldata ) {
$p = parent::validate( $value, $alldata );
@@ -73,8 +73,8 @@ class HTMLJsSelectToInputField extends HTMLTextField {
}
/**
- * @param $value
- * @param $alldata
+ * @param string $value
+ * @param array $alldata
* @return string
*/
function filter( $value, $alldata ) {
diff --git a/MLEB/Translate/utils/JsSelectToInput.php b/MLEB/Translate/utils/JsSelectToInput.php
index 12bea5a7..24f30bc1 100644
--- a/MLEB/Translate/utils/JsSelectToInput.php
+++ b/MLEB/Translate/utils/JsSelectToInput.php
@@ -4,7 +4,7 @@
* @file
* @author Niklas Laxström
* @copyright Copyright © 2010 Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -34,14 +34,8 @@ class JsSelectToInput {
}
/**
- * Set the source id of the selector
- * @param string $id
+ * @return string
*/
- public function setSourceId( $id ) {
- $this->sourceId = $id;
- }
-
- /// @return string
public function getSourceId() {
return $this->sourceId;
}
@@ -69,7 +63,9 @@ class JsSelectToInput {
$this->msg = $message;
}
- /// @return string Message key.
+ /**
+ * @return string Message key.
+ */
public function getMessage() {
return $this->msg;
}
@@ -80,18 +76,14 @@ class JsSelectToInput {
* @return string Html code.
*/
public function getHtmlAndPrepareJS() {
- if ( $this->sourceId === false ) {
- if ( is_callable( array( $this->select, 'getAttribute' ) ) ) {
- $this->sourceId = $this->select->getAttribute['id'];
- }
-
- if ( !$this->sourceId ) {
- throw new MWException( "ID needs to be specified for the selector" );
- }
+ $this->sourceId = $this->select->getAttribute( 'id' );
+
+ if ( !is_string( $this->sourceId ) ) {
+ throw new MWException( 'ID needs to be specified for the selector' );
}
self::injectJs();
- $html = $this->select->getHtml();
+ $html = $this->select->getHTML();
$html .= $this->getButton( $this->msg, $this->sourceId, $this->targetId );
return $html;
@@ -105,16 +97,18 @@ class JsSelectToInput {
* @return string
*/
protected function getButton( $msg, $source, $target ) {
- $html = Xml::element( 'input', array(
+ $html = Xml::element( 'input', [
'type' => 'button',
'value' => wfMessage( $msg )->text(),
- 'onclick' => Xml::encodeJsCall( 'appendFromSelect', array( $source, $target ) )
- ) );
+ 'onclick' => Xml::encodeJsCall( 'appendFromSelect', [ $source, $target ] )
+ ] );
return $html;
}
- /// Inject needed JavaScript in the page.
+ /**
+ * Inject needed JavaScript in the page.
+ */
public static function injectJs() {
static $done = false;
if ( $done ) {
diff --git a/MLEB/Translate/utils/MemProfile.php b/MLEB/Translate/utils/MemProfile.php
index 4d626d8f..7ebc3423 100644
--- a/MLEB/Translate/utils/MemProfile.php
+++ b/MLEB/Translate/utils/MemProfile.php
@@ -8,17 +8,17 @@ if ( !defined( 'MEDIAWIKI' ) ) {
* @file
* @author Niklas Laxström
* @copyright Copyright © 2008, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/// Memory usage at checkpoints
-$wgMemUse = array();
+$wgMemUse = [];
/// Tracks the deepness of the stack
$wgMemStack = 0;
/**
* Call to start memory counting for a block.
- * @param $a \string Block name.
+ * @param string $a Block name.
*/
function wfMemIn( $a ) {
global $wgLang, $wgMemUse, $wgMemStack;
@@ -26,19 +26,19 @@ function wfMemIn( $a ) {
$mem = memory_get_usage();
$memR = memory_get_usage();
- $wgMemUse[$a][] = array( $mem, $memR );
+ $wgMemUse[$a][] = [ $mem, $memR ];
$memF = $wgLang->formatNum( $mem );
$memRF = $wgLang->formatNum( $memR );
- $pad = str_repeat( ".", $wgMemStack );
+ $pad = str_repeat( '.', $wgMemStack );
wfDebug( "$pad$a-IN: \t$memF\t\t$memRF\n" );
$wgMemStack++;
}
/**
* Call to start stop counting for a block. Difference from start is shown.
- * @param $a \string Block name.
+ * @param string $a Block name.
*/
function wfMemOut( $a ) {
global $wgLang, $wgMemUse, $wgMemStack;
@@ -57,7 +57,7 @@ function wfMemOut( $a ) {
$memDF = $wgLang->formatNum( $memD );
$memRDF = $wgLang->formatNum( $memRD );
- $pad = str_repeat( ".", $wgMemStack - 1 );
+ $pad = str_repeat( '.', $wgMemStack - 1 );
wfDebug( "$pad$a-OUT:\t$memF ($memDF)\t$memRF ($memRDF)\n" );
$wgMemStack--;
}
diff --git a/MLEB/Translate/utils/MessageGroupCache.php b/MLEB/Translate/utils/MessageGroupCache.php
index 4f5713f9..fa44f561 100644
--- a/MLEB/Translate/utils/MessageGroupCache.php
+++ b/MLEB/Translate/utils/MessageGroupCache.php
@@ -4,7 +4,7 @@
* @file
* @author Niklas Laxström
* @copyright Copyright © 2009-2013 Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -26,7 +26,7 @@ class MessageGroupCache {
protected $group;
/**
- * @var CdbReader
+ * @var \Cdb\Reader
*/
protected $cache;
@@ -116,7 +116,7 @@ class MessageGroupCache {
$this->close(); // Close the reader instance just to be sure
$messages = $this->group->load( $this->code );
- if ( $messages === array() ) {
+ if ( $messages === [] ) {
if ( $this->exists() ) {
// Delete stale cache files
unlink( $this->getCacheFileName() );
@@ -127,7 +127,7 @@ class MessageGroupCache {
$hash = md5( file_get_contents( $this->group->getSourceFilePath( $this->code ) ) );
wfMkdirParents( dirname( $this->getCacheFileName() ) );
- $cache = CdbWriter::open( $this->getCacheFileName() );
+ $cache = \Cdb\Writer::open( $this->getCacheFileName() );
$keys = array_keys( $messages );
$cache->set( '#keys', serialize( $keys ) );
@@ -149,10 +149,10 @@ class MessageGroupCache {
* Checks whether the cache still reflects the source file.
* It uses multiple conditions to speed up the checking from file
* modification timestamps to hashing.
- * @param int $reason
+ * @param int &$reason
* @return bool Whether the cache is up to date.
*/
- public function isValid( &$reason = 0 ) {
+ public function isValid( &$reason ) {
$group = $this->group;
$groupId = $group->getId();
@@ -206,7 +206,7 @@ class MessageGroupCache {
// Message count check
$messages = $group->load( $this->code );
// CDB converts numbers to strings
- $count = intval( $this->get( '#msgcount' ) );
+ $count = (int)( $this->get( '#msgcount' ) );
if ( $count !== count( $messages ) ) {
// Number of messsages has changed
$reason = self::CHANGED;
@@ -234,7 +234,7 @@ class MessageGroupCache {
*/
protected function open() {
if ( $this->cache === null ) {
- $this->cache = CdbReader::open( $this->getCacheFileName() );
+ $this->cache = \Cdb\Reader::open( $this->getCacheFileName() );
if ( $this->cache->get( '#version' ) !== '3' ) {
$this->close();
unlink( $this->getCacheFileName() );
diff --git a/MLEB/Translate/utils/MessageGroupStates.php b/MLEB/Translate/utils/MessageGroupStates.php
index 1838381c..de20f6c8 100644
--- a/MLEB/Translate/utils/MessageGroupStates.php
+++ b/MLEB/Translate/utils/MessageGroupStates.php
@@ -6,7 +6,7 @@
* @author Niklas Laxström
* @author Siebrand Mazeland
* @copyright Copyright © 2012-2013 Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -34,7 +34,7 @@ class MessageGroupStates {
if ( isset( $conf[self::CONDKEY] ) ) {
return $conf[self::CONDKEY];
} else {
- return array();
+ return [];
}
}
}
diff --git a/MLEB/Translate/utils/MessageGroupStatesUpdaterJob.php b/MLEB/Translate/utils/MessageGroupStatesUpdaterJob.php
index 78b44962..7ad6ddd0 100644
--- a/MLEB/Translate/utils/MessageGroupStatesUpdaterJob.php
+++ b/MLEB/Translate/utils/MessageGroupStatesUpdaterJob.php
@@ -5,7 +5,7 @@
* @file
* @author Niklas Laxström
* @copyright Copyright © 2012-2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -14,14 +14,20 @@
* @ingroup JobQueue
*/
class MessageGroupStatesUpdaterJob extends Job {
- public function __construct( $title, $params = array() ) {
+ /**
+ * @param Title $title
+ * @param array $params
+ */
+ public function __construct( $title, $params = [] ) {
parent::__construct( __CLASS__, $title, $params );
$this->removeDuplicates = true;
}
/**
- * Hook: TranslateEventTranslationEdit
* Hook: TranslateEventTranslationReview
+ * and also on translation changes
+ * @param MessageHandle $handle
+ * @return true
*/
public static function onChange( MessageHandle $handle ) {
$job = self::newJob( $handle->getTitle() );
@@ -31,7 +37,7 @@ class MessageGroupStatesUpdaterJob extends Job {
}
/**
- * @param $title
+ * @param Title $title
* @return MessageGroupStatesUpdaterJob
*/
public static function newJob( $title ) {
@@ -45,7 +51,7 @@ class MessageGroupStatesUpdaterJob extends Job {
$handle = new MessageHandle( $title );
$code = $handle->getCode();
- if ( !$handle->isValid() && !$code ) {
+ if ( !$code && !$handle->isValid() ) {
return true;
}
@@ -63,7 +69,7 @@ class MessageGroupStatesUpdaterJob extends Job {
}
public static function getGroupsWithTransitions( MessageHandle $handle ) {
- $listeners = array();
+ $listeners = [];
foreach ( $handle->getGroupIds() as $id ) {
$group = MessageGroups::getGroup( $id );
@@ -114,6 +120,12 @@ class MessageGroupStatesUpdaterJob extends Job {
}
}
+ /**
+ * @param int[] $stats
+ * @param array[] $transitions
+ *
+ * @return string|bool
+ */
public static function getNewState( $stats, $transitions ) {
foreach ( $transitions as $transition ) {
list( $newState, $conds ) = $transition;
diff --git a/MLEB/Translate/utils/MessageGroupStats.php b/MLEB/Translate/utils/MessageGroupStats.php
index b813eaaa..dd40af82 100644
--- a/MLEB/Translate/utils/MessageGroupStats.php
+++ b/MLEB/Translate/utils/MessageGroupStats.php
@@ -6,9 +6,12 @@
* @author Wikia (trac.wikia-code.com/browser/wikia/trunk/extensions/wikia/TranslationStatistics)
* @author Niklas Laxström
* @copyright Copyright © 2012-2013 Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
+use MediaWiki\MediaWikiServices;
+use Wikimedia\Rdbms\IDatabase;
+
/**
* This class abstract MessageGroup statistics calculation and storing.
* You can access stats easily per language or per group.
@@ -25,53 +28,44 @@ class MessageGroupStats {
const FUZZY = 2; ///< Array index
const PROOFREAD = 3; ///< Array index
- /// @var float
- protected static $timeStart = null;
- /// @var float
- protected static $limit = null;
- /// @var array
- protected static $updates = array();
+ const FLAG_CACHE_ONLY = 1;
+ const FLAG_NO_CACHE = 2;
/**
- * Set the maximum time statistics are calculated.
- * If the time limit is exceeded, the missing
- * entries will be null.
- * @param $limit float time in seconds
+ * @var array[]
*/
- public static function setTimeLimit( $limit ) {
- self::$timeStart = microtime( true );
- self::$limit = $limit;
- }
+ protected static $updates = [];
/**
* Returns empty stats array. Useful because the number of elements
* may change.
- * @return array
+ * @return int[]
* @since 2012-09-21
*/
public static function getEmptyStats() {
- return array( 0, 0, 0, 0 );
+ return [ 0, 0, 0, 0 ];
}
/**
* Returns empty stats array that indicates stats are incomplete or
* unknown.
- * @return array
+ * @return null[]
* @since 2013-01-02
*/
protected static function getUnknownStats() {
- return array( null, null, null, null );
+ return [ null, null, null, null ];
}
/**
* Returns stats for given group in given language.
- * @param $id string Group id
- * @param $code string Language code
- * @return Array
+ * @param string $id Group id
+ * @param string $code Language code
+ * @param int $flags Combination of FLAG_* constants.
+ * @return null[]|int[]
*/
- public static function forItem( $id, $code ) {
- $res = self::selectRowsIdLang( $id, $code );
- $stats = self::extractResults( $res );
+ public static function forItem( $id, $code, $flags = 0 ) {
+ $res = self::selectRowsIdLang( [ $id ], $code, $flags );
+ $stats = self::extractResults( $res, [ $id ] );
/* In case some code calls this for dynamic groups, return the default
* values for unknown/incomplete stats. Calculating these numbers don't
@@ -82,7 +76,7 @@ class MessageGroupStats {
}
if ( !isset( $stats[$id][$code] ) ) {
- $stats[$id][$code] = self::forItemInternal( $stats, $group, $code );
+ $stats[$id][$code] = self::forItemInternal( $stats, $group, $code, $flags );
}
self::queueUpdates();
@@ -92,12 +86,13 @@ class MessageGroupStats {
/**
* Returns stats for all groups in given language.
- * @param $code string Language code
- * @return Array
+ * @param string $code Language code
+ * @param int $flags Combination of FLAG_* constants.
+ * @return array[]
*/
- public static function forLanguage( $code ) {
- $stats = self::forLanguageInternal( $code );
- $flattened = array();
+ public static function forLanguage( $code, $flags = 0 ) {
+ $stats = self::forLanguageInternal( $code, [], $flags );
+ $flattened = [];
foreach ( $stats as $group => $languages ) {
$flattened[$group] = $languages[$code];
}
@@ -109,15 +104,16 @@ class MessageGroupStats {
/**
* Returns stats for all languages in given group.
- * @param $id string Group id
- * @return Array
+ * @param string $id Group id
+ * @param int $flags Combination of FLAG_* constants.
+ * @return array[]
*/
- public static function forGroup( $id ) {
+ public static function forGroup( $id, $flags = 0 ) {
$group = MessageGroups::getGroup( $id );
if ( $group === null ) {
- return array();
+ return [];
}
- $stats = self::forGroupInternal( $group );
+ $stats = self::forGroupInternal( $group, [], $flags );
self::queueUpdates();
@@ -128,13 +124,14 @@ class MessageGroupStats {
* Returns stats for all group in all languages.
* Might be slow, might use lots of memory.
* Returns two dimensional array indexed by group and language.
- * @return Array
+ * @param int $flags Combination of FLAG_* constants.
+ * @return array[]
*/
- public static function forEverything() {
+ public static function forEverything( $flags = 0 ) {
$groups = MessageGroups::singleton()->getGroups();
- $stats = array();
+ $stats = [];
foreach ( $groups as $g ) {
- $stats = self::forGroupInternal( $g, $stats );
+ $stats = self::forGroupInternal( $g, $stats, $flags );
}
self::queueUpdates();
@@ -145,26 +142,32 @@ class MessageGroupStats {
/**
* Clears the cache for all groups associated with the message.
*
- * Hook: TranslateEventTranslationEdit
* Hook: TranslateEventTranslationReview
+ * @param MessageHandle $handle
*/
public static function clear( MessageHandle $handle ) {
$code = $handle->getCode();
- $ids = $handle->getGroupIds();
+ $dbids = array_map( 'self::getDatabaseIdForGroupId', $handle->getGroupIds() );
+
$dbw = wfGetDB( DB_MASTER );
- $conds = array( 'tgs_group' => $ids, 'tgs_lang' => $code );
+ $conds = [ 'tgs_group' => $dbids, 'tgs_lang' => $code ];
$dbw->delete( self::TABLE, $conds, __METHOD__ );
- wfDebugLog( 'messagegroupstats', "Cleared " . serialize( $conds ) );
+ wfDebugLog( 'messagegroupstats', 'Cleared ' . serialize( $conds ) );
}
public static function clearGroup( $id ) {
- if ( !count( $id ) ) {
+ // T206904: Fix countable error for group id
+ // NOTE: An empty string ('') is not a valid group id
+ if ( $id === [] ) {
return;
}
+
+ $dbids = array_map( 'self::getDatabaseIdForGroupId', (array)$id );
+
$dbw = wfGetDB( DB_MASTER );
- $conds = array( 'tgs_group' => $id );
+ $conds = [ 'tgs_group' => $dbids ];
$dbw->delete( self::TABLE, $conds, __METHOD__ );
- wfDebugLog( 'messagegroupstats', "Cleared " . serialize( $conds ) );
+ wfDebugLog( 'messagegroupstats', 'Cleared ' . serialize( $conds ) );
}
public static function clearLanguage( $code ) {
@@ -172,9 +175,9 @@ class MessageGroupStats {
return;
}
$dbw = wfGetDB( DB_MASTER );
- $conds = array( 'tgs_lang' => $code );
+ $conds = [ 'tgs_lang' => $code ];
$dbw->delete( self::TABLE, $conds, __METHOD__ );
- wfDebugLog( 'messagegroupstats', "Cleared " . serialize( $conds ) );
+ wfDebugLog( 'messagegroupstats', 'Cleared ' . serialize( $conds ) );
}
/**
@@ -183,26 +186,47 @@ class MessageGroupStats {
public static function clearAll() {
$dbw = wfGetDB( DB_MASTER );
$dbw->delete( self::TABLE, '*' );
- wfDebugLog( 'messagegroupstats', "Cleared everything :(" );
+ wfDebugLog( 'messagegroupstats', 'Cleared everything :(' );
}
- protected static function extractResults( $res, $stats = array() ) {
+ /**
+ * Use this to extract results returned from selectRowsIdLang. You must pass the
+ * message group ids you want to retrieve. Entries that do not match are not returned.
+ *
+ * @param Traversable $res Database result object
+ * @param string[] $ids List of message group ids
+ * @param array[] $stats Optional array to append results to.
+ * @return array[]
+ */
+ protected static function extractResults( $res, array $ids, array $stats = [] ) {
+ // Map the internal ids back to real ids
+ $idmap = array_combine( array_map( 'self::getDatabaseIdForGroupId', $ids ), $ids );
+
foreach ( $res as $row ) {
- $stats[$row->tgs_group][$row->tgs_lang] = self::extractNumbers( $row );
+ if ( !isset( $idmap[$row->tgs_group] ) ) {
+ // Stale entry, ignore for now
+ // TODO: Schedule for purge
+ continue;
+ }
+
+ $realId = $idmap[$row->tgs_group];
+ $stats[$realId][$row->tgs_lang] = self::extractNumbers( $row );
}
return $stats;
}
- public static function update( MessageHandle $handle, $changes = array() ) {
+ public static function update( MessageHandle $handle, array $changes = [] ) {
+ $dbids = array_map( 'self::getDatabaseIdForGroupId', $handle->getGroupIds() );
+
$dbw = wfGetDB( DB_MASTER );
- $conds = array(
- 'tgs_group' => $handle->getGroupIds(),
+ $conds = [
+ 'tgs_group' => $dbids,
'tgs_lang' => $handle->getCode(),
- );
+ ];
- $values = array();
- foreach ( array( 'total', 'translated', 'fuzzy', 'proofread' ) as $type ) {
+ $values = [];
+ foreach ( [ 'total', 'translated', 'fuzzy', 'proofread' ] as $type ) {
if ( isset( $changes[$type] ) ) {
$values[] = "tgs_$type=tgs_$type" .
self::stringifyNumber( $changes[$type] );
@@ -214,33 +238,36 @@ class MessageGroupStats {
/**
* Returns an array of needed database fields.
- * @param $row
+ * @param stdClass $row
* @return array
*/
protected static function extractNumbers( $row ) {
- return array(
+ return [
self::TOTAL => (int)$row->tgs_total,
self::TRANSLATED => (int)$row->tgs_translated,
self::FUZZY => (int)$row->tgs_fuzzy,
self::PROOFREAD => (int)$row->tgs_proofread,
- );
+ ];
}
/**
- * @param $code
- * @param array $stats
- * @return array
+ * @param string $code Language code
+ * @param array[] $stats
+ * @param int $flags Combination of FLAG_* constants.
+ * @return array[]
*/
- protected static function forLanguageInternal( $code, $stats = array() ) {
- $res = self::selectRowsIdLang( null, $code );
- $stats = self::extractResults( $res, $stats );
-
+ protected static function forLanguageInternal( $code, array $stats = [], $flags ) {
$groups = MessageGroups::singleton()->getGroups();
+
+ $ids = array_keys( $groups );
+ $res = self::selectRowsIdLang( null, $code, $flags );
+ $stats = self::extractResults( $res, $ids, $stats );
+
foreach ( $groups as $id => $group ) {
if ( isset( $stats[$id][$code] ) ) {
continue;
}
- $stats[$id][$code] = self::forItemInternal( $stats, $group, $code );
+ $stats[$id][$code] = self::forItemInternal( $stats, $group, $code, $flags );
}
return $stats;
@@ -251,7 +278,7 @@ class MessageGroupStats {
* @return mixed
*/
protected static function expandAggregates( AggregateMessageGroup $agg ) {
- $flattened = array();
+ $flattened = [];
/** @var MessageGroup|AggregateMessageGroup $group */
foreach ( $agg->getGroups() as $group ) {
@@ -267,23 +294,24 @@ class MessageGroupStats {
/**
* @param MessageGroup $group
- * @param array $stats
- * @return array
+ * @param array[] $stats
+ * @param int $flags Combination of FLAG_* constants.
+ * @return array[]
*/
- protected static function forGroupInternal( $group, $stats = array() ) {
+ protected static function forGroupInternal( $group, array $stats = [], $flags ) {
$id = $group->getId();
- $res = self::selectRowsIdLang( $id, null );
- $stats = self::extractResults( $res, $stats );
+ $res = self::selectRowsIdLang( [ $id ], null, $flags );
+ $stats = self::extractResults( $res, [ $id ], $stats );
# Go over each language filling missing entries
- $languages = array_keys( Language::fetchLanguageNames() );
+ $languages = array_keys( TranslateUtils::getLanguageNames( 'en' ) );
// This is for calculating things in correct order
sort( $languages );
foreach ( $languages as $code ) {
if ( isset( $stats[$id][$code] ) ) {
continue;
}
- $stats[$id][$code] = self::forItemInternal( $stats, $group, $code );
+ $stats[$id][$code] = self::forItemInternal( $stats, $group, $code, $flags );
}
// This is for sorting the values added later in correct order
@@ -294,73 +322,103 @@ class MessageGroupStats {
return $stats;
}
- protected static function selectRowsIdLang( $ids = null, $codes = null ) {
- $conds = array();
+ /**
+ * Fetch rows from the database. Use extractResults to process this value.
+ *
+ * @param null|string[] $ids List of message group ids
+ * @param null|string[] $codes List of language codes
+ * @param int $flags Combination of FLAG_* constants.
+ * @return Traversable Database result object
+ */
+ protected static function selectRowsIdLang( $ids = null, $codes = null, $flags ) {
+ if ( $flags & self::FLAG_NO_CACHE ) {
+ return [];
+ }
+
+ $conds = [];
if ( $ids !== null ) {
- $conds['tgs_group'] = $ids;
+ $dbids = array_map( 'self::getDatabaseIdForGroupId', $ids );
+ $conds['tgs_group'] = $dbids;
}
if ( $codes !== null ) {
$conds['tgs_lang'] = $codes;
}
- $dbr = wfGetDB( DB_MASTER );
+ $dbr = TranslateUtils::getSafeReadDB();
$res = $dbr->select( self::TABLE, '*', $conds, __METHOD__ );
return $res;
}
- protected static function forItemInternal( &$stats, $group, $code ) {
+ /**
+ * @param array[] &$stats
+ * @param MessageGroup $group
+ * @param string $code Language code
+ * @param int $flags Combination of FLAG_* constants.
+ * @return null[]|int[]
+ */
+ protected static function forItemInternal( &$stats, $group, $code, $flags ) {
$id = $group->getId();
- if ( self::$timeStart !== null && ( microtime( true ) - self::$timeStart ) > self::$limit ) {
- return $stats[$id][$code] = self::getUnknownStats();
+ if ( $flags & self::FLAG_CACHE_ONLY ) {
+ $stats[$id][$code] = self::getUnknownStats();
+ return $stats[$id][$code];
}
if ( $group instanceof AggregateMessageGroup ) {
- $aggregates = self::getEmptyStats();
-
- $expanded = self::expandAggregates( $group );
- if ( $expanded === array() ) {
- return $aggregates;
- }
- $res = self::selectRowsIdLang( array_keys( $expanded ), $code );
- $stats = self::extractResults( $res, $stats );
-
- foreach ( $expanded as $sid => $subgroup ) {
- # Discouraged groups may belong to another group, usually if there
- # is an aggregate group for all translatable pages. In that case
- # calculate and store the statistics, but don't count them as part of
- # the aggregate group, so that the numbers in Special:LanguageStats
- # add up. The statistics for discouraged groups can still be viewed
- # through Special:MessageGroupStats.
- if ( !isset( $stats[$sid][$code] ) ) {
- $stats[$sid][$code] = self::forItemInternal( $stats, $subgroup, $code );
- }
-
- $include = wfRunHooks( 'Translate:MessageGroupStats:isIncluded', array( $sid, $code ) );
- if ( $include ) {
- $aggregates = self::multiAdd( $aggregates, $stats[$sid][$code] );
- }
- }
- $stats[$id][$code] = $aggregates;
+ $aggregates = self::calculateAggregageGroup( $stats, $group, $code, $flags );
} else {
$aggregates = self::calculateGroup( $group, $code );
}
+ // Cache for use in subsequent forItemInternal calls
+ $stats[$id][$code] = $aggregates;
// Don't add nulls to the database, causes annoying warnings
if ( $aggregates[self::TOTAL] === null ) {
return $aggregates;
}
- self::$updates[] = array(
- 'tgs_group' => $id,
+ self::$updates[] = [
+ 'tgs_group' => self::getDatabaseIdForGroupId( $id ),
'tgs_lang' => $code,
'tgs_total' => $aggregates[self::TOTAL],
'tgs_translated' => $aggregates[self::TRANSLATED],
'tgs_fuzzy' => $aggregates[self::FUZZY],
'tgs_proofread' => $aggregates[self::PROOFREAD],
- );
+ ];
+
+ return $aggregates;
+ }
+
+ private static function calculateAggregageGroup( &$stats, $group, $code, $flags ) {
+ $aggregates = self::getEmptyStats();
+
+ $expanded = self::expandAggregates( $group );
+ if ( $expanded === [] ) {
+ return $aggregates;
+ }
+
+ $subGroupIds = array_keys( $expanded );
+ $res = self::selectRowsIdLang( $subGroupIds, $code, $flags );
+ $stats = self::extractResults( $res, $subGroupIds, $stats );
+
+ foreach ( $expanded as $sid => $subgroup ) {
+ # Discouraged groups may belong to another group, usually if there
+ # is an aggregate group for all translatable pages. In that case
+ # calculate and store the statistics, but don't count them as part of
+ # the aggregate group, so that the numbers in Special:LanguageStats
+ # add up. The statistics for discouraged groups can still be viewed
+ # through Special:MessageGroupStats.
+ if ( !isset( $stats[$sid][$code] ) ) {
+ $stats[$sid][$code] = self::forItemInternal( $stats, $subgroup, $code, $flags );
+ }
+
+ $include = Hooks::run( 'Translate:MessageGroupStats:isIncluded', [ $sid, $code ] );
+ if ( $include ) {
+ $aggregates = self::multiAdd( $aggregates, $stats[$sid][$code] );
+ }
+ }
return $aggregates;
}
@@ -379,18 +437,18 @@ class MessageGroupStats {
/**
* @param MessageGroup $group
* @param string $code Language code
- * @return array ( total, translated, fuzzy, proofread )
+ * @return int[] ( total, translated, fuzzy, proofread )
*/
protected static function calculateGroup( $group, $code ) {
global $wgTranslateDocumentationLanguageCode;
- # Calculate if missing and store in the db
+ // Calculate if missing and store in the db
$collection = $group->initCollection( $code );
if ( $code === $wgTranslateDocumentationLanguageCode ) {
$ffs = $group->getFFS();
if ( $ffs instanceof GettextFFS ) {
$template = $ffs->read( 'en' );
- $infile = array();
+ $infile = [];
foreach ( $template['TEMPLATE'] as $key => $data ) {
if ( isset( $data['comments']['.'] ) ) {
$infile[$key] = '1';
@@ -418,62 +476,80 @@ class MessageGroupStats {
$collection->filter( 'reviewer', false );
$proofread = count( $collection );
- return array(
+ return [
self::TOTAL => $total,
self::TRANSLATED => $translated,
self::FUZZY => $fuzzy,
self::PROOFREAD => $proofread,
- );
+ ];
}
/**
* Converts input to "+2" "-4" type of string.
- * @param $number int
+ * @param int $number
* @return string
*/
protected static function stringifyNumber( $number ) {
- $number = intval( $number );
+ $number = (int)$number;
return $number < 0 ? "$number" : "+$number";
}
protected static function queueUpdates() {
+ if ( wfReadOnly() ) {
+ return;
+ }
+
if ( !count( self::$updates ) ) {
return;
}
- $dbw = wfGetDB( DB_MASTER );
+ $lb = MediaWikiServices::getInstance()->getDBLoadBalancer();
+ $dbw = $lb->getLazyConnectionRef( DB_MASTER ); // avoid connecting yet
$table = self::TABLE;
$updates = &self::$updates;
- self::runWithLock(
+ self::queueWithLock(
$dbw,
'updates',
__METHOD__,
- function ( $dbw, $method ) use( $table, &$updates ) {
+ function ( IDatabase $dbw, $method ) use( $table, &$updates ) {
$dbw->insert(
$table,
$updates,
$method,
- array( 'IGNORE' )
+ [ 'IGNORE' ]
);
- $updates = array();
+ $updates = [];
}
);
}
- protected static function runWithLock( $dbw, $key, $method, $callback ) {
- $dbw->onTransactionIdle( function () use ( $dbw, $key, $method, $callback ) {
- $key = 'MessageGroupStats:' . $key;
- $locked = $dbw->lock( $key, $method, 1 );
- if ( !$locked ) {
- return; // Raced out
+ protected static function queueWithLock( IDatabase $dbw, $key, $method, $callback ) {
+ $fname = __METHOD__;
+ DeferredUpdates::addCallableUpdate( function () use ( $dbw, $key, $method, $callback, $fname ) {
+ $lockName = 'MessageGroupStats:' . $key;
+ if ( !$dbw->lock( $lockName, $fname, 1 ) ) {
+ return; // raced out
}
+ $dbw->commit( $fname, 'flush' );
call_user_func( $callback, $dbw, $method );
+ $dbw->commit( $fname, 'flush' );
- $dbw->unlock( $key, $method );
+ $dbw->unlock( $lockName, $fname );
} );
}
+
+ public static function getDatabaseIdForGroupId( $id ) {
+ // The column is 100 bytes long, but we don't need to use it all
+ if ( strlen( $id ) <= 72 ) {
+ return $id;
+ }
+
+ $hash = hash( 'sha256', $id, /*asHex*/false );
+ $dbid = substr( $id, 0, 50 ) . '||' . substr( $hash, 0, 20 );
+ return $dbid;
+ }
}
diff --git a/MLEB/Translate/utils/MessageHandle.php b/MLEB/Translate/utils/MessageHandle.php
index dcb217eb..65f95bd5 100644
--- a/MLEB/Translate/utils/MessageHandle.php
+++ b/MLEB/Translate/utils/MessageHandle.php
@@ -4,7 +4,7 @@
* @file
* @author Niklas Laxström
* @copyright Copyright © 2011-2013 Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -12,16 +12,25 @@
* @since 2011-03-13
*/
class MessageHandle {
- /// @var Title
- protected $title = null;
- /// @var String
- protected $key = null;
- /// @var String
- protected $code = null;
- /// @var String
- protected $groupIds = null;
- /// @var MessageGroup
- protected $group = false;
+ /**
+ * @var Title
+ */
+ protected $title;
+
+ /**
+ * @var string|null
+ */
+ protected $key;
+
+ /**
+ * @var string|null Language code
+ */
+ protected $code;
+
+ /**
+ * @var string[]|null
+ */
+ protected $groupIds;
public function __construct( Title $title ) {
$this->title = $title;
@@ -40,26 +49,26 @@ class MessageHandle {
/**
* Recommended to use getCode and getKey instead.
- * @return Array of the message key and the language code
+ * @return string[] Array of the message key and the language code
*/
public function figureMessage() {
if ( $this->key === null ) {
$title = $this->getTitle();
// Check if this is a valid message first
- $this->key = $title->getDBKey();
- $known = MessageIndex::singleton()->getGroupIds( $this ) !== array();
+ $this->key = $title->getDBkey();
+ $known = MessageIndex::singleton()->getGroupIds( $this ) !== [];
$pos = strrpos( $this->key, '/' );
if ( $known || $pos === false ) {
$this->code = '';
} else {
// For keys like Foo/, substr returns false instead of ''
- $this->code = strval( substr( $this->key, $pos + 1 ) );
+ $this->code = (string)( substr( $this->key, $pos + 1 ) );
$this->key = substr( $this->key, 0, $pos );
}
}
- return array( $this->key, $this->code );
+ return [ $this->key, $this->code ];
}
/**
@@ -84,19 +93,19 @@ class MessageHandle {
}
/**
- * Return the code for the assumed language of the content, which might
+ * Return the Language object for the assumed language of the content, which might
* be different from the subpage code (qqq, no subpage).
- * @return String
- * @since 2012-08-05
+ * @return Language
+ * @since 2016-01
*/
- public function getEffectiveLanguageCode() {
+ public function getEffectiveLanguage() {
global $wgContLang;
$code = $this->getCode();
if ( $code === '' || $this->isDoc() ) {
- return $wgContLang->getCode();
+ return $wgContLang;
}
- return $code;
+ return wfGetLangObj( $code );
}
/**
@@ -115,7 +124,7 @@ class MessageHandle {
* @return bool
*/
public function isPageTranslation() {
- return $this->getTitle()->getNamespace() == NS_TRANSLATIONS;
+ return $this->getTitle()->inNamespace( NS_TRANSLATIONS );
}
/**
@@ -123,7 +132,7 @@ class MessageHandle {
* The primary message group id is always the first one.
* If the handle does not correspond to any message, the returned array
* is empty.
- * @return array
+ * @return string[]
*/
public function getGroupIds() {
if ( $this->groupIds === null ) {
@@ -167,7 +176,7 @@ class MessageHandle {
$group = $this->getGroup();
if ( !$group ) {
$warning = "MessageIndex is out of date – refers to unknown group {$groups[0]}. ";
- $warning .= "Doing a rebuild.";
+ $warning .= 'Doing a rebuild.';
wfWarn( $warning );
MessageIndexRebuildJob::newJob()->run();
@@ -213,7 +222,7 @@ class MessageHandle {
/**
* Check if a string contains the fuzzy string.
*
- * @param $text string Arbitrary text
+ * @param string $text Arbitrary text
* @return bool If string contains fuzzy string.
*/
public static function hasFuzzyString( $text ) {
@@ -225,20 +234,58 @@ class MessageHandle {
* @return bool If title is marked fuzzy.
*/
public function isFuzzy() {
- $dbr = wfGetDB( DB_SLAVE );
+ $dbr = wfGetDB( DB_REPLICA );
- $tables = array( 'page', 'revtag' );
+ $tables = [ 'page', 'revtag' ];
$field = 'rt_type';
- $conds = array(
+ $conds = [
'page_namespace' => $this->title->getNamespace(),
'page_title' => $this->title->getDBkey(),
'rt_type' => RevTag::getType( 'fuzzy' ),
'page_id=rt_page',
'page_latest=rt_revision'
- );
+ ];
$res = $dbr->selectField( $tables, $field, $conds, __METHOD__ );
return $res !== false;
}
+
+ /**
+ * This returns the key that can be used for showMessage parameter for Special:Translate
+ * for regular message groups. It is not possible to automatically determine this key
+ * from the title alone.
+ * @return string
+ * @since 2017.10
+ */
+ public function getInternalKey() {
+ global $wgContLang;
+
+ $key = $this->getKey();
+
+ if ( !MWNamespace::isCapitalized( $this->getTitle()->getNamespace() ) ) {
+ return $key;
+ }
+
+ $group = $this->getGroup();
+ $keys = [];
+ // We cannot reliably map from the database key to the internal key if
+ // capital links setting is enabled for the namespace.
+ if ( method_exists( $group, 'getKeys' ) ) {
+ $keys = $group->getKeys();
+ } else {
+ $keys = array_keys( $group->getDefinitions() );
+ }
+
+ if ( in_array( $key, $keys, true ) ) {
+ return $key;
+ }
+
+ $lcKey = $wgContLang->lcfirst( $key );
+ if ( in_array( $lcKey, $keys, true ) ) {
+ return $lcKey;
+ }
+
+ return "BUG:$key";
+ }
}
diff --git a/MLEB/Translate/utils/MessageIndex.php b/MLEB/Translate/utils/MessageIndex.php
index 98ca8128..6d0bb520 100644
--- a/MLEB/Translate/utils/MessageIndex.php
+++ b/MLEB/Translate/utils/MessageIndex.php
@@ -5,7 +5,7 @@
* @file
* @author Niklas Laxstrom
* @copyright Copyright © 2008-2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -17,11 +17,18 @@
* to message groups.
*/
abstract class MessageIndex {
- /// @var MessageIndex
+ /**
+ * @var self
+ */
protected static $instance;
/**
- * @return MessageIndex
+ * @var MapCacheLRU|null
+ */
+ private static $keysCache;
+
+ /**
+ * @return self
*/
public static function singleton() {
if ( self::$instance === null ) {
@@ -35,22 +42,55 @@ abstract class MessageIndex {
}
/**
+ * Override the global instance, for testing.
+ *
+ * @since 2015.04
+ * @param MessageIndex $instance
+ */
+ public static function setInstance( self $instance ) {
+ self::$instance = $instance;
+ }
+
+ /**
* Retrieves a list of groups given MessageHandle belongs to.
* @since 2012-01-04
* @param MessageHandle $handle
* @return array
*/
public static function getGroupIds( MessageHandle $handle ) {
- $namespace = $handle->getTitle()->getNamespace();
+ global $wgTranslateMessageNamespaces;
+
+ $title = $handle->getTitle();
+
+ if ( !$title->inNamespaces( $wgTranslateMessageNamespaces ) ) {
+ return [];
+ }
+
+ $namespace = $title->getNamespace();
$key = $handle->getKey();
$normkey = TranslateUtils::normaliseKey( $namespace, $key );
- $value = self::singleton()->get( $normkey );
- if ( $value !== null ) {
- return (array)$value;
- } else {
- return array();
+ $cache = self::getCache();
+ $value = $cache->get( $normkey );
+ if ( $value === null ) {
+ $value = self::singleton()->get( $normkey );
+ $value = $value !== null
+ ? (array)$value
+ : [];
+ $cache->set( $normkey, $value );
}
+
+ return $value;
+ }
+
+ /**
+ * @return MapCacheLRU
+ */
+ private static function getCache() {
+ if ( self::$keysCache === null ) {
+ self::$keysCache = new MapCacheLRU( 30 );
+ }
+ return self::$keysCache;
}
/**
@@ -80,10 +120,29 @@ abstract class MessageIndex {
}
}
- /// @return array
- abstract public function retrieve();
+ /**
+ * @param bool $forRebuild
+ * @return array
+ */
+ abstract public function retrieve( $forRebuild = false );
+
+ /**
+ * @since 2018.01
+ * @return string[]
+ */
+ public function getKeys() {
+ return array_keys( $this->retrieve() );
+ }
+
+ abstract protected function store( array $array, array $diff );
- abstract protected function store( array $array );
+ protected function lock() {
+ return true;
+ }
+
+ protected function unlock() {
+ return true;
+ }
public function rebuild() {
static $recursion = 0;
@@ -93,21 +152,29 @@ abstract class MessageIndex {
wfWarn( $msg );
$recursion--;
- return array();
+ return [];
}
$recursion++;
$groups = MessageGroups::singleton()->getGroups();
- $new = $old = array();
- $old = $this->retrieve();
- $postponed = array();
+ if ( !$this->lock() ) {
+ throw new Exception( __CLASS__ . ': unable to acquire lock' );
+ }
+
+ self::getCache()->clear();
+
+ $new = $old = [];
+ $old = $this->retrieve( 'rebuild' );
+ $postponed = [];
/**
* @var MessageGroup $g
*/
foreach ( $groups as $g ) {
if ( !$g->exists() ) {
+ $id = $g->getId();
+ wfWarn( __METHOD__ . ": group '$id' is registered but does not exist" );
continue;
}
@@ -124,61 +191,106 @@ abstract class MessageIndex {
$this->checkAndAdd( $new, $g, true );
}
- $this->store( $new );
- $this->clearMessageGroupStats( $old, $new );
+ $diff = self::getArrayDiff( $old, $new );
+ $this->store( $new, $diff['keys'] );
+ $this->unlock();
+ $this->clearMessageGroupStats( $diff );
+
$recursion--;
return $new;
}
/**
- * Purge message group stats when set of keys have changed.
+ * Compares two associative arrays.
+ *
+ * Values must be a string or list of strings. Returns an array of added,
+ * deleted and modified keys as well as value changes (you can think values
+ * as categories and keys as pages). Each of the keys ('add', 'del', 'mod'
+ * respectively) maps to an array whose keys are the changed keys of the
+ * original arrays and values are lists where first element contains the
+ * old value and the second element the new value.
+ *
+ * @code
+ * $a = [ 'a' => '1', 'b' => '2', 'c' => '3' ];
+ * $b = [ 'b' => '2', 'c' => [ '3', '2' ], 'd' => '4' ];
+ *
+ * self::getArrayDiff( $a, $b ) ) === [
+ * 'keys' => [
+ * 'add' => [ 'd' => [ [], [ '4' ] ] ],
+ * 'del' => [ 'a' => [ [ '1' ], [] ] ],
+ * 'mod' => [ 'c' => [ [ '3' ], [ '3', '2' ] ] ],
+ * ],
+ * 'values' => [ 2, 4, 1 ]
+ * ];
+ * @endcode
+ *
* @param array $old
* @param array $new
+ * @return array
*/
- protected function clearMessageGroupStats( array $old, array $new ) {
- $changes = array();
+ public static function getArrayDiff( array $old, array $new ) {
+ $values = [];
+ $record = function ( $groups ) use ( &$values ) {
+ foreach ( $groups as $group ) {
+ $values[$group] = true;
+ }
+ };
+
+ $keys = [
+ 'add' => [],
+ 'del' => [],
+ 'mod' => [],
+ ];
foreach ( $new as $key => $groups ) {
- // Using != here on purpose to ignore order of items
if ( !isset( $old[$key] ) ) {
- $changes[$key] = array( array(), (array)$groups );
+ $keys['add'][$key] = [ [], (array)$groups ];
+ $record( (array)$groups );
+ // Using != here on purpose to ignore the order of items
} elseif ( $groups != $old[$key] ) {
- $changes[$key] = array( (array)$old[$key], (array)$groups );
+ $keys['mod'][$key] = [ (array)$old[$key], (array)$groups ];
+ $record( array_diff( (array)$old[$key], (array)$groups ) );
+ $record( array_diff( (array)$groups, (array)$old[$key] ) );
}
}
foreach ( $old as $key => $groups ) {
if ( !isset( $new[$key] ) ) {
- $changes[$key] = array( (array)$groups, array() );
+ $keys['del'][$key] = [ (array)$groups, [] ];
+ $record( (array)$groups, [] );
}
// We already checked for diffs above
}
- $changedGroups = array();
- foreach ( $changes as $data ) {
- foreach ( $data[0] as $group ) {
- $changedGroups[$group] = true;
- }
- foreach ( $data[1] as $group ) {
- $changedGroups[$group] = true;
- }
- }
-
- MessageGroupStats::clearGroup( array_keys( $changedGroups ) );
+ return [
+ 'keys' => $keys,
+ 'values' => array_keys( $values ),
+ ];
+ }
- foreach ( $changes as $key => $data ) {
- list( $ns, $pagename ) = explode( ':', $key, 2 );
- $title = Title::makeTitle( $ns, $pagename );
- $handle = new MessageHandle( $title );
- list ( $oldGroups, $newGroups ) = $data;
- wfRunHooks( 'TranslateEventMessageMembershipChange',
- array( $handle, $oldGroups, $newGroups ) );
+ /**
+ * Purge stuff when set of keys have changed.
+ *
+ * @param array $diff
+ */
+ protected function clearMessageGroupStats( array $diff ) {
+ MessageGroupStats::forGroup( $diff['values'], MessageGroupStats::FLAG_NO_CACHE );
+
+ foreach ( $diff['keys'] as $keys ) {
+ foreach ( $keys as $key => $data ) {
+ list( $ns, $pagename ) = explode( ':', $key, 2 );
+ $title = Title::makeTitle( $ns, $pagename );
+ $handle = new MessageHandle( $title );
+ list( $oldGroups, $newGroups ) = $data;
+ Hooks::run( 'TranslateEventMessageMembershipChange',
+ [ $handle, $oldGroups, $newGroups ] );
+ }
}
}
/**
- * @param array $hugearray
+ * @param array &$hugearray
* @param MessageGroup $g
* @param bool $ignore
*/
@@ -219,7 +331,7 @@ abstract class MessageIndex {
// references instead. References are hard!
$value = & $hugearray[$key];
unset( $hugearray[$key] );
- $hugearray[$key] = array( &$value, &$id );
+ $hugearray[$key] = [ &$value, &$id ];
}
} else {
$hugearray[$key] = & $id;
@@ -228,9 +340,13 @@ abstract class MessageIndex {
unset( $id ); // Disconnect the previous references to this $id
}
- /* These are probably slower than serialize and unserialize,
+ /**
+ * These are probably slower than serialize and unserialize,
* but they are more space efficient because we only need
- * strings and arrays. */
+ * strings and arrays.
+ * @param mixed $data
+ * @return mixed
+ */
protected function serialize( $data ) {
if ( is_array( $data ) ) {
return implode( '|', $data );
@@ -263,13 +379,18 @@ abstract class MessageIndex {
* which provides random access - this backend doesn't support that.
*/
class SerializedMessageIndex extends MessageIndex {
- /// @var array
+ /**
+ * @var array|null
+ */
protected $index;
protected $filename = 'translate_messageindex.ser';
- /** @return array */
- public function retrieve() {
+ /**
+ * @param bool $forRebuild
+ * @return array
+ */
+ public function retrieve( $forRebuild = false ) {
if ( $this->index !== null ) {
return $this->index;
}
@@ -284,7 +405,7 @@ class SerializedMessageIndex extends MessageIndex {
return $this->index;
}
- protected function store( array $array ) {
+ protected function store( array $array, array $diff ) {
$file = TranslateUtils::cacheFile( $this->filename );
file_put_contents( $file, serialize( $array ) );
$this->index = $array;
@@ -307,18 +428,55 @@ class FileCachedMessageIndex extends SerializedMessageIndex {
* @since 2012-04-12
*/
class DatabaseMessageIndex extends MessageIndex {
- /// @var array
+ /**
+ * @var array|null
+ */
protected $index;
- /** @return array */
- public function retrieve() {
- if ( $this->index !== null ) {
+ protected function lock() {
+ $dbw = wfGetDB( DB_MASTER );
+
+ // Any transaction should be flushed after getting the lock to avoid
+ // stale pre-lock REPEATABLE-READ snapshot data.
+ $ok = $dbw->lock( 'translate-messageindex', __METHOD__, 30 );
+ if ( $ok ) {
+ $dbw->commit( __METHOD__, 'flush' );
+ }
+
+ return $ok;
+ }
+
+ protected function unlock() {
+ $fname = __METHOD__;
+ $dbw = wfGetDB( DB_MASTER );
+ // Unlock once the rows are actually unlocked to avoid deadlocks
+ if ( !$dbw->trxLevel() ) {
+ $dbw->unlock( 'translate-messageindex', $fname );
+ } elseif ( method_exists( $dbw, 'onTransactionResolution' ) ) { // 1.28
+ $dbw->onTransactionResolution( function () use ( $dbw, $fname ) {
+ $dbw->unlock( 'translate-messageindex', $fname );
+ } );
+ } else {
+ $dbw->onTransactionIdle( function () use ( $dbw, $fname ) {
+ $dbw->unlock( 'translate-messageindex', $fname );
+ } );
+ }
+
+ return true;
+ }
+
+ /**
+ * @param bool $forRebuild
+ * @return array
+ */
+ public function retrieve( $forRebuild = false ) {
+ if ( $this->index !== null && !$forRebuild ) {
return $this->index;
}
- $dbr = wfGetDB( DB_SLAVE );
- $res = $dbr->select( 'translate_messageindex', '*', array(), __METHOD__ );
- $this->index = array();
+ $dbr = wfGetDB( $forRebuild ? DB_MASTER : DB_REPLICA );
+ $res = $dbr->select( 'translate_messageindex', '*', [], __METHOD__ );
+ $this->index = [];
foreach ( $res as $row ) {
$this->index[$row->tmi_key] = $this->unserialize( $row->tmi_value );
}
@@ -327,11 +485,11 @@ class DatabaseMessageIndex extends MessageIndex {
}
protected function get( $key ) {
- $dbr = wfGetDB( DB_SLAVE );
+ $dbr = wfGetDB( DB_REPLICA );
$value = $dbr->selectField(
'translate_messageindex',
'tmi_value',
- array( 'tmi_key' => $key ),
+ [ 'tmi_key' => $key ],
__METHOD__
);
@@ -344,25 +502,35 @@ class DatabaseMessageIndex extends MessageIndex {
return $value;
}
- protected function store( array $array ) {
- $dbw = wfGetDB( DB_MASTER );
- $rows = array();
+ protected function store( array $array, array $diff ) {
+ $updates = [];
- foreach ( $array as $key => $value ) {
- $value = $this->serialize( $value );
- $rows[] = array( 'tmi_key' => $key, 'tmi_value' => $value );
+ foreach ( [ $diff['add'], $diff['mod'] ] as $changes ) {
+ foreach ( $changes as $key => $data ) {
+ list( $old, $new ) = $data;
+ $updates[] = [
+ 'tmi_key' => $key,
+ 'tmi_value' => $this->serialize( $new ),
+ ];
+ }
}
- // BC for <= MW 1.22
- if ( method_exists( $dbw, 'startAtomic' ) ) {
- $dbw->startAtomic( __METHOD__ );
+ $index = [ 'tmi_key' ];
+ $deletions = array_keys( $diff['del'] );
+
+ $dbw = wfGetDB( DB_MASTER );
+ $dbw->startAtomic( __METHOD__ );
+
+ if ( $updates !== [] ) {
+ $dbw->replace( 'translate_messageindex', [ $index ], $updates, __METHOD__ );
}
- $dbw->delete( 'translate_messageindex', '*', __METHOD__ );
- $dbw->insert( 'translate_messageindex', $rows, __METHOD__ );
- if ( method_exists( $dbw, 'endAtomic' ) ) {
- $dbw->endAtomic( __METHOD__ );
+
+ if ( $deletions !== [] ) {
+ $dbw->delete( 'translate_messageindex', [ 'tmi_key' => $deletions ], __METHOD__ );
}
+ $dbw->endAtomic( __METHOD__ );
+
$this->index = $array;
}
}
@@ -379,20 +547,25 @@ class CachedMessageIndex extends MessageIndex {
protected $key = 'translate-messageindex';
protected $cache;
- /// @var array
+ /**
+ * @var array|null
+ */
protected $index;
protected function __construct( array $params ) {
$this->cache = wfGetCache( CACHE_ANYTHING );
}
- /** @return array */
- public function retrieve() {
+ /**
+ * @param bool $forRebuild
+ * @return array
+ */
+ public function retrieve( $forRebuild = false ) {
if ( $this->index !== null ) {
return $this->index;
}
- $key = wfMemckey( $this->key );
+ $key = wfMemcKey( $this->key );
$data = $this->cache->get( $key );
if ( is_array( $data ) ) {
$this->index = $data;
@@ -403,8 +576,8 @@ class CachedMessageIndex extends MessageIndex {
return $this->index;
}
- protected function store( array $array ) {
- $key = wfMemckey( $this->key );
+ protected function store( array $array, array $diff ) {
+ $key = wfMemcKey( $this->key );
$this->cache->set( $key, $array );
$this->index = $array;
@@ -425,32 +598,54 @@ class CachedMessageIndex extends MessageIndex {
* @since 2012-04-10
*/
class CDBMessageIndex extends MessageIndex {
- /// @var array
+ /**
+ * @var array|null
+ */
protected $index;
- /// @var CdbReader
+ /**
+ * @var \Cdb\Reader|null
+ */
protected $reader;
- /// @var string
+ /**
+ * @var string
+ */
protected $filename = 'translate_messageindex.cdb';
- /** @return array */
- public function retrieve() {
+ /**
+ * @param bool $forRebuild
+ * @return array
+ */
+ public function retrieve( $forRebuild = false ) {
$reader = $this->getReader();
// This must be below the line above, which may fill the index
if ( $this->index !== null ) {
return $this->index;
}
- $keys = (array)$this->unserialize( $reader->get( '#keys' ) );
- $this->index = array();
- foreach ( $keys as $key ) {
+ $this->index = [];
+ foreach ( $this->getKeys() as $key ) {
$this->index[$key] = $this->unserialize( $reader->get( $key ) );
}
return $this->index;
}
+ public function getKeys() {
+ $reader = $this->getReader();
+ $keys = [];
+ while ( true ) {
+ $key = $keys === [] ? $reader->firstkey() : $reader->nextkey();
+ if ( $key === false ) {
+ break;
+ }
+ $keys[] = $key;
+ }
+
+ return $keys;
+ }
+
protected function get( $key ) {
$reader = $this->getReader();
// We might have the full cache loaded
@@ -472,13 +667,11 @@ class CDBMessageIndex extends MessageIndex {
return $value;
}
- protected function store( array $array ) {
+ protected function store( array $array, array $diff ) {
$this->reader = null;
$file = TranslateUtils::cacheFile( $this->filename );
- $cache = CdbWriter::open( $file );
- $keys = array_keys( $array );
- $cache->set( '#keys', $this->serialize( $keys ) );
+ $cache = \Cdb\Writer::open( $file );
foreach ( $array as $key => $value ) {
$value = $this->serialize( $value );
@@ -498,10 +691,53 @@ class CDBMessageIndex extends MessageIndex {
$file = TranslateUtils::cacheFile( $this->filename );
if ( !file_exists( $file ) ) {
// Create an empty index to allow rebuild
- $this->store( array() );
+ $this->store( [], [] );
$this->index = $this->rebuild();
}
- return $this->reader = CdbReader::open( $file );
+ $this->reader = \Cdb\Reader::open( $file );
+ return $this->reader;
+ }
+}
+
+/**
+ * Storage on hash.
+ *
+ * For testing.
+ *
+ * @since 2015.04
+ */
+class HashMessageIndex extends MessageIndex {
+ /**
+ * @var array
+ */
+ protected $index = [];
+
+ /**
+ * @param bool $forRebuild
+ * @return array
+ */
+ public function retrieve( $forRebuild = false ) {
+ return $this->index;
+ }
+
+ /**
+ * @param string $key
+ *
+ * @return mixed
+ */
+ protected function get( $key ) {
+ if ( isset( $this->index[$key] ) ) {
+ return $this->index[$key];
+ } else {
+ return null;
+ }
+ }
+
+ protected function store( array $array, array $diff ) {
+ $this->index = $array;
+ }
+
+ protected function clearMessageGroupStats( array $diff ) {
}
}
diff --git a/MLEB/Translate/utils/MessageIndexRebuildJob.php b/MLEB/Translate/utils/MessageIndexRebuildJob.php
index 413df987..a3cc905f 100644
--- a/MLEB/Translate/utils/MessageIndexRebuildJob.php
+++ b/MLEB/Translate/utils/MessageIndexRebuildJob.php
@@ -5,7 +5,7 @@
* @file
* @author Niklas Laxström
* @copyright Copyright © 2011-2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -24,11 +24,15 @@ class MessageIndexRebuildJob extends Job {
return $job;
}
- function __construct( $title, $params = array(), $id = 0 ) {
- parent::__construct( __CLASS__, $title, $params, $id );
+ /**
+ * @param Title $title
+ * @param array $params
+ */
+ public function __construct( $title, $params = [] ) {
+ parent::__construct( __CLASS__, $title, $params );
}
- function run() {
+ public function run() {
MessageIndex::singleton()->rebuild();
return true;
@@ -40,14 +44,20 @@ class MessageIndexRebuildJob extends Job {
* in installations with errant job queue processing.
* @override
*/
- public function insert() {
+ public function insertIntoJobQueue() {
global $wgTranslateDelayedMessageIndexRebuild;
if ( $wgTranslateDelayedMessageIndexRebuild ) {
- return JobQueueGroup::singleton()->push( $this );
+ JobQueueGroup::singleton()->push( $this );
} else {
$this->run();
-
- return true;
}
}
+
+ /**
+ * @deprecated since 2017-11-03 alias for insertIntoJobQueue()
+ */
+ public function insert() {
+ $this->insertIntoJobQueue();
+ }
+
}
diff --git a/MLEB/Translate/utils/MessageTable.php b/MLEB/Translate/utils/MessageTable.php
deleted file mode 100644
index d2dc83a7..00000000
--- a/MLEB/Translate/utils/MessageTable.php
+++ /dev/null
@@ -1,418 +0,0 @@
-<?php
-/**
- * Contains classes to build tables for MessageCollection objects.
- *
- * @file
- * @author Niklas Laxström
- * @license GPL-2.0+
- */
-
-/**
- * Pretty formatter for MessageCollection objects.
- */
-class MessageTable {
- /*
- * @var bool
- */
- protected $reviewMode = false;
-
- /**
- * @var MessageCollection
- */
- protected $collection;
-
- /**
- * @var MessageGroup
- */
- protected $group;
-
- /**
- * @var IContextSource
- */
- protected $context;
-
- /**
- * @var array
- */
- protected $headers = array(
- 'table' => array( 'msg', 'allmessagesname' ),
- 'current' => array( 'msg', 'allmessagescurrent' ),
- 'default' => array( 'msg', 'allmessagesdefault' ),
- );
-
- /**
- * Use this rather than the constructor directly
- * to allow alternative implementations.
- *
- * @since 2012-11-29
- */
- public static function newFromContext(
- IContextSource $context,
- MessageCollection $collection,
- MessageGroup $group
- ) {
- $table = new self( $collection, $group );
- $table->setContext( $context );
-
- wfRunHooks( 'TranslateMessageTableInit', array( &$table, $context, $collection, $group ) );
-
- return $table;
- }
-
- public function setContext( IContextSource $context ) {
- $this->context = $context;
- }
-
- /**
- * Use the newFromContext() function rather than the constructor directly
- * to construct the object to allow alternative implementations.
- */
- public function __construct( MessageCollection $collection, MessageGroup $group ) {
- $this->collection = $collection;
- $this->group = $group;
- $this->setHeaderText( 'table', $group->getLabel() );
- }
-
- public function setReviewMode( $mode = true ) {
- $this->reviewMode = $mode;
- }
-
- public function setHeaderTextMessage( $type, $value ) {
- if ( !isset( $this->headers[$type] ) ) {
- throw new MWException( "Unexpected type $type" );
- }
-
- $this->headers[$type] = array( 'msg', $value );
- }
-
- public function setHeaderText( $type, $value ) {
- if ( !isset( $this->headers[$type] ) ) {
- throw new MWException( "Unexpected type $type" );
- }
-
- $this->headers[$type] = array( 'raw', htmlspecialchars( $value ) );
- }
-
- public function includeAssets() {
- TranslationHelpers::addModules( $this->context->getOutput() );
- $pages = array();
-
- foreach ( $this->collection->getTitles() as $title ) {
- $pages[] = $title->getPrefixedDBKey();
- }
-
- $vars = array( 'trlKeys' => $pages );
- $this->context->getOutput()->addScript( Skin::makeVariablesScript( $vars ) );
- }
-
- public function header() {
- $tableheader = Xml::openElement( 'table', array(
- 'class' => 'mw-sp-translate-table'
- ) );
-
- if ( $this->reviewMode ) {
- $tableheader .= Xml::openElement( 'tr' );
- $tableheader .= Xml::element( 'th',
- array( 'rowspan' => '2' ),
- $this->headerText( 'table' )
- );
- $tableheader .= Xml::tags( 'th', null, $this->headerText( 'default' ) );
- $tableheader .= Xml::closeElement( 'tr' );
-
- $tableheader .= Xml::openElement( 'tr' );
- $tableheader .= Xml::tags( 'th', null, $this->headerText( 'current' ) );
- $tableheader .= Xml::closeElement( 'tr' );
- } else {
- $tableheader .= Xml::openElement( 'tr' );
- $tableheader .= Xml::tags( 'th', null, $this->headerText( 'table' ) );
- $tableheader .= Xml::tags( 'th', null, $this->headerText( 'current' ) );
- $tableheader .= Xml::closeElement( 'tr' );
- }
-
- return $tableheader . "\n";
- }
-
- public function contents() {
- $optional = $this->context->msg( 'translate-optional' )->escaped();
-
- $this->doLinkBatch();
-
- $sourceLang = Language::factory( $this->group->getSourceLanguage() );
- $targetLang = Language::factory( $this->collection->getLanguage() );
- $titleMap = $this->collection->keys();
-
- $output = '';
-
- $this->collection->initMessages(); // Just to be sure
-
- /**
- * @var TMessage $m
- */
- foreach ( $this->collection as $key => $m ) {
- $tools = array();
- /**
- * @var Title $title
- */
- $title = $titleMap[$key];
-
- $original = $m->definition();
- $translation = $m->translation();
-
- $hasTranslation = $translation !== null;
-
- if ( $hasTranslation ) {
- $message = $translation;
- $extraAttribs = self::getLanguageAttributes( $targetLang );
- } else {
- $message = $original;
- $extraAttribs = self::getLanguageAttributes( $sourceLang );
- }
-
- wfRunHooks(
- 'TranslateFormatMessageBeforeTable',
- array( &$message, $m, $this->group, $targetLang, &$extraAttribs )
- );
-
- // Using Html::element( a ) because Linker::link is memory hog.
- // It takes about 20 KiB per call, and that times 5000 is quite
- // a lot of memory.
- $niceTitle = htmlspecialchars( $this->context->getLanguage()->truncate(
- $title->getPrefixedText(),
- -35
- ) );
- $linkAttribs = array(
- 'href' => $title->getLocalUrl( array( 'action' => 'edit' ) ),
- );
- $linkAttribs += TranslationEditPage::jsEdit( $title, $this->group->getId() );
-
- $tools['edit'] = Html::element( 'a', $linkAttribs, $niceTitle );
-
- $anchor = 'msg_' . $key;
- $anchor = Xml::element( 'a', array( 'id' => $anchor, 'href' => "#$anchor" ), "↓" );
-
- $extra = '';
- if ( $m->hasTag( 'optional' ) ) {
- $extra = '<br />' . $optional;
- }
-
- $tqeData = $extraAttribs + array(
- 'data-title' => $title->getPrefixedText(),
- 'data-group' => $this->group->getId(),
- 'id' => 'tqe-anchor-' . substr( sha1( $title->getPrefixedText() ), 0, 12 ),
- 'class' => 'tqe-inlineeditable ' . ( $hasTranslation ? 'translated' : 'untranslated' )
- );
-
- $button = $this->getReviewButton( $m );
- $status = $this->getReviewStatus( $m );
- $leftColumn = $button . $anchor . $tools['edit'] . $extra . $status;
-
- if ( $this->reviewMode ) {
- $output .= Xml::tags( 'tr', array( 'class' => 'orig' ),
- Xml::tags( 'td', array( 'rowspan' => '2' ), $leftColumn ) .
- Xml::tags( 'td', self::getLanguageAttributes( $sourceLang ),
- TranslateUtils::convertWhiteSpaceToHTML( $original )
- )
- );
-
- $output .= Xml::tags( 'tr', null,
- Xml::tags( 'td', $tqeData, TranslateUtils::convertWhiteSpaceToHTML( $message ) )
- );
- } else {
- $output .= Xml::tags( 'tr', array( 'class' => 'def' ),
- Xml::tags( 'td', null, $leftColumn ) .
- Xml::tags( 'td', $tqeData, TranslateUtils::convertWhiteSpaceToHTML( $message ) )
- );
- }
-
- $output .= "\n";
- }
-
- return $output;
- }
-
- public function fullTable( $offsets, $nondefaults ) {
- $this->includeAssets();
-
- $content = $this->header() . $this->contents() . '</table>';
- $pager = $this->doStupidLinks( $offsets, $nondefaults );
-
- if ( $offsets['count'] === 0 ) {
- return $pager;
- } elseif ( $offsets['count'] === $offsets['total'] ) {
- return $content . $pager;
- } else {
- return $pager . $content . $pager;
- }
- }
-
- protected function headerText( $type ) {
- if ( !isset( $this->headers[$type] ) ) {
- throw new MWException( "Unexpected type $type" );
- }
-
- list( $format, $value ) = $this->headers[$type];
- if ( $format === 'msg' ) {
- return wfMessage( $value )->escaped();
- } elseif ( $format === 'raw' ) {
- return $value;
- } else {
- throw new MWException( "Unexcepted format $format" );
- }
- }
-
- protected static function getLanguageAttributes( Language $language ) {
- global $wgTranslateDocumentationLanguageCode;
-
- $code = $language->getCode();
- $dir = $language->getDir();
-
- if ( $code === $wgTranslateDocumentationLanguageCode ) {
- // Should be good enough for now
- $code = 'en';
- }
-
- return array( 'lang' => $code, 'dir' => $dir );
- }
-
- protected function getReviewButton( TMessage $message ) {
- $revision = $message->getProperty( 'revision' );
- $user = $this->context->getUser();
-
- if ( !$this->reviewMode || !$user->isAllowed( 'translate-messagereview' ) || !$revision ) {
- return '';
- }
-
- $attribs = array(
- 'type' => 'button',
- 'class' => 'mw-translate-messagereviewbutton',
- 'data-token' => ApiTranslationReview::getToken( 0, '' ),
- 'data-revision' => $revision,
- 'name' => 'acceptbutton-' . $revision, // Otherwise Firefox disables buttons on page load
- );
-
- $reviewers = (array)$message->getProperty( 'reviewers' );
- if ( in_array( $user->getId(), $reviewers ) ) {
- $attribs['value'] = wfMessage( 'translate-messagereview-done' )->text();
- $attribs['disabled'] = 'disabled';
- $attribs['title'] = wfMessage( 'translate-messagereview-doit' )->text();
- } elseif ( $message->hasTag( 'fuzzy' ) ) {
- $attribs['value'] = wfMessage( 'translate-messagereview-submit' )->text();
- $attribs['disabled'] = 'disabled';
- $attribs['title'] = wfMessage( 'translate-messagereview-no-fuzzy' )->text();
- } elseif ( $user->getName() === $message->getProperty( 'last-translator-text' ) ) {
- $attribs['value'] = wfMessage( 'translate-messagereview-submit' )->text();
- $attribs['disabled'] = 'disabled';
- $attribs['title'] = wfMessage( 'translate-messagereview-no-own' )->text();
- } else {
- $attribs['value'] = wfMessage( 'translate-messagereview-submit' )->text();
- }
-
- $review = Html::element( 'input', $attribs );
-
- return $review;
- }
-
- /// For optimization
- protected $reviewStatusCache = array();
-
- protected function getReviewStatus( TMessage $message ) {
- if ( !$this->reviewMode ) {
- return '';
- }
-
- $reviewers = (array)$message->getProperty( 'reviewers' );
- $count = count( $reviewers );
-
- if ( $count === 0 ) {
- return '';
- }
-
- $userId = $this->context->getUser()->getId();
- $you = in_array( $userId, $reviewers );
- $key = $you ? "y$count" : "n$count";
-
- // ->text() (and ->parse()) invokes the parser. Each call takes
- // about 70 KiB, so it makes sense to cache these messages which
- // have high repetition.
- if ( isset( $this->reviewStatusCache[$key] ) ) {
- return $this->reviewStatusCache[$key];
- } elseif ( $you ) {
- $msg = wfMessage( 'translate-messagereview-reviewswithyou' )->numParams( $count )->text();
- } else {
- $msg = wfMessage( 'translate-messagereview-reviews' )->numParams( $count )->text();
- }
-
- $wrap = Html::rawElement( 'div', array( 'class' => 'mw-translate-messagereviewstatus' ), $msg );
- $this->reviewStatusCache[$key] = $wrap;
-
- return $wrap;
- }
-
- protected function doLinkBatch() {
- $batch = new LinkBatch();
- $batch->setCaller( __METHOD__ );
-
- foreach ( $this->collection->getTitles() as $title ) {
- $batch->addObj( $title );
- }
-
- $batch->execute();
- }
-
- protected function doStupidLinks( $info, $nondefaults ) {
- // Total number of messages for this query
- $total = $info['total'];
- // Messages in this page
- $count = $info['count'];
-
- $allInThisPage = $info['start'] === 0 && $total === $count;
-
- if ( $info['count'] === 0 ) {
- $navigation = wfMessage( 'translate-page-showing-none' )->parse();
- } elseif ( $allInThisPage ) {
- $navigation = wfMessage( 'translate-page-showing-all' )->numParams( $total )->parse();
- } else {
- $previous = wfMessage( 'translate-prev' )->escaped();
-
- if ( $info['backwardsOffset'] !== false ) {
- $previous = $this->makeOffsetLink( $previous, $info['backwardsOffset'], $nondefaults );
- }
-
- $nextious = wfMessage( 'translate-next' )->escaped();
- if ( $info['forwardsOffset'] !== false ) {
- $nextious = $this->makeOffsetLink( $nextious, $info['forwardsOffset'], $nondefaults );
- }
-
- $start = $info['start'] + 1;
- $stop = $start + $info['count'] - 1;
- $total = $info['total'];
-
- $navigation = wfMessage( 'translate-page-showing' )
- ->numParams( $start, $stop, $total )->parse();
- $navigation .= ' ';
- $navigation .= wfMessage( 'translate-page-paging-links' )
- ->rawParams( $previous, $nextious )->escaped();
- }
-
- return Html::openElement( 'fieldset' ) .
- Html::element( 'legend', array(), wfMessage( 'translate-page-navigation-legend' )->text() ) .
- $navigation .
- Html::closeElement( 'fieldset' );
- }
-
- protected function makeOffsetLink( $label, $offset, $nondefaults ) {
- $query = array_merge(
- $nondefaults,
- array( 'offset' => $offset )
- );
-
- $link = Linker::link(
- $this->context->getTitle(),
- $label,
- array(),
- $query
- );
-
- return $link;
- }
-}
diff --git a/MLEB/Translate/utils/MessageUpdateJob.php b/MLEB/Translate/utils/MessageUpdateJob.php
index a12972a3..1cc0ff6a 100644
--- a/MLEB/Translate/utils/MessageUpdateJob.php
+++ b/MLEB/Translate/utils/MessageUpdateJob.php
@@ -5,7 +5,7 @@
* @file
* @author Niklas Laxström
* @copyright Copyright © 2008-2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -15,27 +15,31 @@
*/
class MessageUpdateJob extends Job {
public static function newJob( Title $target, $content, $fuzzy = false ) {
- $params = array(
+ $params = [
'content' => $content,
'fuzzy' => $fuzzy,
- );
+ ];
$job = new self( $target, $params );
return $job;
}
- function __construct( $title, $params = array(), $id = 0 ) {
- parent::__construct( __CLASS__, $title, $params, $id );
+ /**
+ * @param Title $title
+ * @param array $params
+ */
+ public function __construct( $title, $params = [] ) {
+ parent::__construct( __CLASS__, $title, $params );
$this->params = $params;
}
- function run() {
+ public function run() {
global $wgTranslateDocumentationLanguageCode;
$title = $this->title;
$params = $this->params;
$user = FuzzyBot::getUser();
- $flags = EDIT_DEFER_UPDATES | EDIT_FORCE_BOT;
+ $flags = EDIT_FORCE_BOT;
$wikiPage = WikiPage::factory( $title );
$summary = wfMessage( 'translate-manage-import-summary' )
@@ -53,34 +57,38 @@ class MessageUpdateJob extends Job {
$languages = array_keys( $languages );
$dbw = wfGetDB( DB_MASTER );
- $fields = array( 'page_id', 'page_latest' );
- $conds = array( 'page_namespace' => $title->getNamespace() );
+ $fields = [ 'page_id', 'page_latest' ];
+ $conds = [ 'page_namespace' => $title->getNamespace() ];
- $pages = array();
+ $pages = [];
foreach ( $languages as $code ) {
$otherTitle = Title::makeTitleSafe( $title->getNamespace(), "$key/$code" );
- $pages[$otherTitle->getDBKey()] = true;
+ $pages[$otherTitle->getDBkey()] = true;
}
- unset( $pages[$title->getDBKey()] );
- if ( count( $pages ) === 0 ) {
+ unset( $pages[$title->getDBkey()] );
+ if ( $pages === [] ) {
return true;
}
$conds['page_title'] = array_keys( $pages );
$res = $dbw->select( 'page', $fields, $conds, __METHOD__ );
- $inserts = array();
+ $inserts = [];
foreach ( $res as $row ) {
- $inserts[] = array(
+ $inserts[] = [
'rt_type' => RevTag::getType( 'fuzzy' ),
'rt_page' => $row->page_id,
'rt_revision' => $row->page_latest,
- );
+ ];
+ }
+
+ if ( $inserts === [] ) {
+ return true;
}
$dbw->replace(
'revtag',
- array( array( 'rt_type', 'rt_page', 'rt_revision' ) ),
+ [ [ 'rt_type', 'rt_page', 'rt_revision' ] ],
$inserts,
__METHOD__
);
diff --git a/MLEB/Translate/utils/MessageWebImporter.php b/MLEB/Translate/utils/MessageWebImporter.php
index ec9c968b..f94d94eb 100644
--- a/MLEB/Translate/utils/MessageWebImporter.php
+++ b/MLEB/Translate/utils/MessageWebImporter.php
@@ -7,7 +7,7 @@
* @author Niklas Laxström
* @author Siebrand Mazeland
* @copyright Copyright © 2009-2013, Niklas Laxström, Siebrand Mazeland
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -42,6 +42,11 @@ class MessageWebImporter {
*/
protected $processingTime = 43;
+ /**
+ * @param Title|null $title
+ * @param MessageGroup|string|null $group
+ * @param string $code
+ */
public function __construct( Title $title = null, $group = null, $code = 'en' ) {
$this->setTitle( $title );
$this->setGroup( $group );
@@ -57,6 +62,9 @@ class MessageWebImporter {
return $this->title;
}
+ /**
+ * @param Title $title
+ */
public function setTitle( Title $title ) {
$this->title = $title;
}
@@ -68,6 +76,9 @@ class MessageWebImporter {
return $this->user ? $this->user : RequestContext::getMain()->getUser();
}
+ /**
+ * @param User $user
+ */
public function setUser( User $user ) {
$this->user = $user;
}
@@ -91,10 +102,16 @@ class MessageWebImporter {
}
}
+ /**
+ * @return string
+ */
public function getCode() {
return $this->code;
}
+ /**
+ * @param string $code
+ */
public function setCode( $code = 'en' ) {
$this->code = $code;
}
@@ -110,14 +127,13 @@ class MessageWebImporter {
* @return string
*/
protected function doHeader() {
- $formParams = array(
+ $formParams = [
'method' => 'post',
'action' => $this->getAction(),
'class' => 'mw-translate-manage'
- );
+ ];
- return
- Xml::openElement( 'form', $formParams ) .
+ return Xml::openElement( 'form', $formParams ) .
Html::hidden( 'title', $this->getTitle()->getPrefixedText() ) .
Html::hidden( 'token', $this->getUser()->getEditToken() ) .
Html::hidden( 'process', 1 );
@@ -136,15 +152,9 @@ class MessageWebImporter {
protected function allowProcess() {
$request = RequestContext::getMain()->getRequest();
- if ( $request->wasPosted() &&
- $request->getBool( 'process', false ) &&
- $this->getUser()->matchEditToken( $request->getVal( 'token' ) )
- ) {
-
- return true;
- }
-
- return false;
+ return $request->wasPosted()
+ && $request->getBool( 'process', false )
+ && $this->getUser()->matchEditToken( $request->getVal( 'token' ) );
}
/**
@@ -152,10 +162,10 @@ class MessageWebImporter {
*/
protected function getActions() {
if ( $this->code === 'en' ) {
- return array( 'import', 'fuzzy', 'ignore' );
- } else {
- return array( 'import', 'conflict', 'ignore' );
+ return [ 'import', 'fuzzy', 'ignore' ];
}
+
+ return [ 'import', 'conflict', 'ignore' ];
}
/**
@@ -191,23 +201,39 @@ class MessageWebImporter {
$this->out->addHTML( $this->doHeader() );
- // Determine changes
+ // Initialise variable to keep track whether all changes were imported
+ // or not. If we're allowed to process, initially assume they were.
$alldone = $process;
- $changed = array();
+
+ // Determine changes for each message.
+ $changed = [];
foreach ( $messages as $key => $value ) {
- $fuzzy = $old = false;
+ $fuzzy = $old = null;
if ( isset( $collection[$key] ) ) {
+ // This returns null if no existing translation is found
$old = $collection[$key]->translation();
}
// No changes at all, ignore
- if ( strval( $old ) === strval( $value ) ) {
+ if ( (string)$old === (string)$value ) {
continue;
}
- if ( $old === false ) {
+ if ( $old === null ) {
+ // We found a new translation for this message of the
+ // current group: import it.
+ $action = 'import';
+ self::doAction(
+ $action,
+ $group,
+ $key,
+ $code,
+ $value
+ );
+
+ // Show the user that we imported the new translation
$para = '<code class="mw-tmi-new">' . htmlspecialchars( $key ) . '</code>';
$name = $context->msg( 'translate-manage-import-new' )->rawParams( $para )
->escaped();
@@ -216,26 +242,33 @@ class MessageWebImporter {
} else {
$oldContent = ContentHandler::makeContent( $old, $diff->getTitle() );
$newContent = ContentHandler::makeContent( $value, $diff->getTitle() );
-
$diff->setContent( $oldContent, $newContent );
-
$text = $diff->getDiff( '', '' );
+
+ // This is a changed translation. Note it for the next steps.
$type = 'changed';
+ // Get the user instructions for the current message,
+ // submitted together with the form
$action = $context->getRequest()
->getVal( self::escapeNameForPHP( "action-$type-$key" ) );
if ( $process ) {
- if ( !count( $changed ) ) {
+ if ( $changed === [] ) {
+ // Initialise the HTML list showing the changes performed
$changed[] = '<ul>';
}
if ( $action === null ) {
+ // We have been told to process the messages, but not
+ // what to do with this one. Tell the user.
$message = $context->msg(
'translate-manage-inconsistent',
wfEscapeWikiText( "action-$type-$key" )
)->parse();
$changed[] = "<li>$message</li></ul>";
+
+ // Also stop any further processing for the other messages.
$process = false;
} else {
// Check processing time
@@ -243,7 +276,9 @@ class MessageWebImporter {
$this->time = wfTimestamp();
}
- $message = self::doAction(
+ // We have all the necessary information on this changed
+ // translation: actually process the message
+ $messageKeyAndParams = self::doAction(
$action,
$group,
$key,
@@ -251,27 +286,34 @@ class MessageWebImporter {
$value
);
- $key = array_shift( $message );
- $params = $message;
- $message = $context->msg( $key, $params )->parse();
+ // Show what we just did, adding to the list of changes
+ $msgKey = array_shift( $messageKeyAndParams );
+ $params = $messageKeyAndParams;
+ $message = $context->msg( $msgKey, $params )->parse();
$changed[] = "<li>$message</li>";
+ // Stop processing further messages if too much time
+ // has been spent.
if ( $this->checkProcessTime() ) {
$process = false;
$message = $context->msg( 'translate-manage-toolong' )
->numParams( $this->processingTime )->parse();
$changed[] = "<li>$message</li></ul>";
}
+
continue;
}
}
+ // We are not processing messages, or no longer, or this was an
+ // unactionable translation. We will eventually return false
$alldone = false;
+ // Prepare to ask the user what to do with this message
$actions = $this->getActions();
$defaction = $this->getDefaultAction( $fuzzy, $action );
- $act = array();
+ $act = [];
// Give grep a chance to find the usages:
// translate-manage-action-import, translate-manage-action-conflict,
@@ -284,9 +326,9 @@ class MessageWebImporter {
}
$param = '<code class="mw-tmi-diff">' . htmlspecialchars( $key ) . '</code>';
- $name = $context->msg( 'translate-manage-import-diff', $param,
- implode( ' ', $act )
- )->text();
+ $name = $context->msg( 'translate-manage-import-diff' )
+ ->rawParams( $param, implode( ' ', $act ) )
+ ->escaped();
$changed[] = self::makeSectionElement( $name, $type, $text );
}
@@ -306,12 +348,12 @@ class MessageWebImporter {
}
}
- if ( $process || ( !count( $changed ) && $code !== 'en' ) ) {
- if ( !count( $changed ) ) {
+ if ( $process || ( $changed === [] && $code !== 'en' ) ) {
+ if ( $changed === [] ) {
$this->out->addWikiMsg( 'translate-manage-nochanges-other' );
}
- if ( !count( $changed ) || strpos( $changed[count( $changed ) - 1], '<li>' ) !== 0 ) {
+ if ( $changed === [] || strpos( end( $changed ), '<li>' ) !== 0 ) {
$changed[] = '<ul>';
}
@@ -320,7 +362,7 @@ class MessageWebImporter {
$this->out->addHTML( implode( "\n", $changed ) );
} else {
// END
- if ( count( $changed ) ) {
+ if ( $changed !== [] ) {
if ( $code === 'en' ) {
$this->out->addWikiMsg( 'translate-manage-intro-en' );
} else {
@@ -352,7 +394,7 @@ class MessageWebImporter {
* @param string $code Language code
* @param string $message Contents for the $key/code combination
* @param string $comment Edit summary (default: empty) - see Article::doEdit
- * @param User $user User that will make the edit (default: null - RequestContext user).
+ * @param User|null $user User that will make the edit (default: null - RequestContext user).
* See Article::doEdit.
* @param int $editFlags Integer bitfield: see Article::doEdit
* @throws MWException
@@ -375,14 +417,14 @@ class MessageWebImporter {
return self::doImport( $title, $message, $comment, $user, $editFlags );
} elseif ( $action === 'ignore' ) {
- return array( 'translate-manage-import-ignore', $key );
+ return [ 'translate-manage-import-ignore', $key ];
} elseif ( $action === 'fuzzy' && $code !== 'en' &&
$code !== $wgTranslateDocumentationLanguageCode
) {
$message = self::makeTextFuzzy( $message );
return self::doImport( $title, $message, $comment, $user, $editFlags );
- } elseif ( $action === 'fuzzy' && $code == 'en' ) {
+ } elseif ( $action === 'fuzzy' && $code === 'en' ) {
return self::doFuzzy( $title, $message, $comment, $user, $editFlags );
} else {
throw new MWException( "Unhandled action $action" );
@@ -396,10 +438,10 @@ class MessageWebImporter {
/**
* @throws MWException
* @param Title $title
- * @param $message
- * @param $summary
- * @param User $user
- * @param $editFlags
+ * @param string $message
+ * @param string $summary
+ * @param User|null $user
+ * @param int $editFlags
* @return array
*/
public static function doImport( $title, $message, $summary, $user = null, $editFlags = 0 ) {
@@ -409,21 +451,21 @@ class MessageWebImporter {
$success = $status->isOK();
if ( $success ) {
- return array( 'translate-manage-import-ok',
+ return [ 'translate-manage-import-ok',
wfEscapeWikiText( $title->getPrefixedText() )
- );
- } else {
- $text = "Failed to import new version of page {$title->getPrefixedText()}\n";
- $text .= "{$status->getWikiText()}";
- throw new MWException( $text );
+ ];
}
+
+ $text = "Failed to import new version of page {$title->getPrefixedText()}\n";
+ $text .= "{$status->getWikiText()}";
+ throw new MWException( $text );
}
/**
* @param Title $title
- * @param $message
- * @param $comment
- * @param $user
+ * @param string $message
+ * @param string $comment
+ * @param User $user
* @param int $editFlags
* @return array|String
*/
@@ -440,16 +482,16 @@ class MessageWebImporter {
$handle = new MessageHandle( $title );
$titleText = $handle->getKey();
- $conds = array(
+ $conds = [
'page_namespace' => $title->getNamespace(),
'page_latest=rev_id',
'rev_text_id=old_id',
'page_title' . $dbw->buildLike( "$titleText/", $dbw->anyString() ),
- );
+ ];
$rows = $dbw->select(
- array( 'page', 'revision', 'text' ),
- array( 'page_title', 'page_namespace', 'old_text', 'old_flags' ),
+ [ 'page', 'revision', 'text' ],
+ [ 'page_title', 'page_namespace', 'old_text', 'old_flags' ],
$conds,
__METHOD__
);
@@ -460,7 +502,7 @@ class MessageWebImporter {
}
// Process all rows.
- $changed = array();
+ $changed = [];
foreach ( $rows as $row ) {
global $wgTranslateDocumentationLanguageCode;
@@ -491,10 +533,10 @@ class MessageWebImporter {
$text = '';
foreach ( $changed as $c ) {
$key = array_shift( $c );
- $text .= "* " . $context->msg( $key, $c )->plain() . "\n";
+ $text .= '* ' . $context->msg( $key, $c )->plain() . "\n";
}
- return array( 'translate-manage-import-fuzzy', "\n" . $text );
+ return [ 'translate-manage-import-fuzzy', "\n" . $text ];
}
/**
@@ -518,16 +560,16 @@ class MessageWebImporter {
* @param string $legend Legend as raw html.
* @param string $type Contents of type class.
* @param string $content Contents as raw html.
- * @param Language $lang The language in which the text is written.
+ * @param Language|null $lang The language in which the text is written.
* @return string Section element as html.
*/
public static function makeSectionElement( $legend, $type, $content, $lang = null ) {
- $containerParams = array( 'class' => "mw-tpt-sp-section mw-tpt-sp-section-type-{$type}" );
- $legendParams = array( 'class' => 'mw-tpt-sp-legend' );
- $contentParams = array( 'class' => 'mw-tpt-sp-content' );
+ $containerParams = [ 'class' => "mw-tpt-sp-section mw-tpt-sp-section-type-{$type}" ];
+ $legendParams = [ 'class' => 'mw-tpt-sp-legend' ];
+ $contentParams = [ 'class' => 'mw-tpt-sp-content' ];
if ( $lang ) {
- $contentParams['dir'] = wfGetLangObj( $lang )->getDir();
- $contentParams['lang'] = wfGetLangObj( $lang )->getCode();
+ $contentParams['dir'] = $lang->getDir();
+ $contentParams['lang'] = $lang->getCode();
}
$output = Html::rawElement( 'div', $containerParams,
@@ -558,16 +600,16 @@ class MessageWebImporter {
* @return string
*/
public static function escapeNameForPHP( $name ) {
- $replacements = array(
- "(" => '(OP)',
- " " => '(SP)',
+ $replacements = [
+ '(' => '(OP)',
+ ' ' => '(SP)',
"\t" => '(TAB)',
- "." => '(DOT)',
+ '.' => '(DOT)',
"'" => '(SQ)',
"\"" => '(DQ)',
- "%" => '(PC)',
- "&" => '(AMP)',
- );
+ '%' => '(PC)',
+ '&' => '(AMP)',
+ ];
/* How nice of you PHP. No way to split array into keys and values in one
* function or have str_replace which takes one array? */
diff --git a/MLEB/Translate/utils/RcFilter.php b/MLEB/Translate/utils/RcFilter.php
index 8dbda197..7c2334f2 100644
--- a/MLEB/Translate/utils/RcFilter.php
+++ b/MLEB/Translate/utils/RcFilter.php
@@ -6,7 +6,7 @@
* @file
* @author Niklas Laxström
* @copyright Copyright © 2010, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -15,32 +15,36 @@
*/
class TranslateRcFilter {
/**
- * Hooks SpecialRecentChangesQuery. See the hook documentation for
+ * Hooks ChangesListSpecialPageQuery. See the hook documentation for
* documentation of the function parameters.
*
* Appends SQL filter conditions into $conds.
- * @param array $conds
- * @param array|string $tables
- * @param array $join_conds
+ * @param string $pageName
+ * @param array &$tables
+ * @param array &$fields
+ * @param array &$conds
+ * @param array &$query_options
+ * @param array &$join_conds
* @param FormOptions $opts
* @return bool true
*/
- public static function translationFilter( &$conds, &$tables, &$join_conds, $opts ) {
- global $wgTranslateMessageNamespaces, $wgTranslateRcFilterDefault;
+ public static function translationFilter( $pageName, &$tables, &$fields, &$conds,
+ &$query_options, &$join_conds, FormOptions $opts
+ ) {
+ global $wgTranslateRcFilterDefault;
+
+ if ( $pageName !== 'Recentchanges' || self::isStructuredFilterUiEnabled() ) {
+ return true;
+ }
$request = RequestContext::getMain()->getRequest();
$translations = $request->getVal( 'translations', $wgTranslateRcFilterDefault );
$opts->add( 'translations', $wgTranslateRcFilterDefault );
$opts->setValue( 'translations', $translations );
- $dbr = wfGetDB( DB_SLAVE );
-
- $namespaces = array();
+ $dbr = wfGetDB( DB_REPLICA );
- foreach ( $wgTranslateMessageNamespaces as $index ) {
- $namespaces[] = $index;
- $namespaces[] = $index + 1; // Talk too
- }
+ $namespaces = self::getTranslateNamespaces();
if ( $translations === 'only' ) {
$conds[] = 'rc_namespace IN (' . $dbr->makeList( $namespaces ) . ')';
@@ -55,16 +59,32 @@ class TranslateRcFilter {
return true;
}
+ private static function getTranslateNamespaces() {
+ global $wgTranslateMessageNamespaces;
+ $namespaces = [];
+
+ foreach ( $wgTranslateMessageNamespaces as $index ) {
+ $namespaces[] = $index;
+ $namespaces[] = $index + 1; // Include Talk namespaces
+ }
+
+ return $namespaces;
+ }
+
/**
* Hooks SpecialRecentChangesPanel. See the hook documentation for
* documentation of the function parameters.
*
* Adds a HTMl selector into $items
- * @param $items
+ * @param array &$items
* @param FormOptions $opts
* @return bool true
*/
public static function translationFilterForm( &$items, $opts ) {
+ if ( self::isStructuredFilterUiEnabled() ) {
+ return true;
+ }
+
$opts->consumeValue( 'translations' );
$default = $opts->getValue( 'translations' );
@@ -84,8 +104,150 @@ class TranslateRcFilter {
);
$select->addOption( wfMessage( 'translate-rc-translation-filter-site' )->text(), 'site' );
- $items['translations'] = array( $label, $select->getHTML() );
+ $items['translations'] = [ $label, $select->getHTML() ];
+
+ return true;
+ }
+
+ private static function isStructuredFilterUiEnabled() {
+ $context = RequestContext::getMain();
+
+ // This assumes usage only on RC page
+ $page = new SpecialRecentChanges();
+ $page->setContext( $context );
+
+ // isStructuredFilterUiEnabled used to be a protected method in older versions :(
+ return is_callable( [ $page, 'isStructuredFilterUiEnabled' ] ) &&
+ $page->isStructuredFilterUiEnabled();
+ }
+
+ /**
+ * Hooks ChangesListSpecialPageStructuredFilters. See the hook documentation for
+ * documentation of the function parameters.
+ *
+ * Adds translations filters to structured UI
+ * @param ChangesListSpecialPage $special
+ * @return bool true
+ */
+ public static function onChangesListSpecialPageStructuredFilters(
+ ChangesListSpecialPage $special
+ ) {
+ global $wgTranslateRcFilterDefault;
+ $defaultFilter = $wgTranslateRcFilterDefault !== 'noaction' ?
+ $wgTranslateRcFilterDefault :
+ ChangesListStringOptionsFilterGroup::NONE;
+
+ $translationsGroup = new ChangesListStringOptionsFilterGroup(
+ [
+ 'name' => 'translations',
+ 'title' => 'translate-rcfilters-translations',
+ 'priority' => -7,
+ 'default' => $defaultFilter,
+ 'isFullCoverage' => true,
+ 'filters' => [
+ [
+ 'name' => 'only',
+ 'label' => 'translate-rcfilters-translations-only-label',
+ 'description' => 'translate-rcfilters-translations-only-desc',
+ 'cssClassSuffix' => 'only',
+ 'isRowApplicableCallable' => function ( $ctx, $rc ) {
+ $namespaces = self::getTranslateNamespaces();
+
+ return in_array( $rc->getAttribute( 'rc_namespace' ), $namespaces ) &&
+ strpos( $rc->getAttribute( 'rc_title' ), '/' ) !== false;
+ }
+ ],
+ [
+ 'name' => 'site',
+ 'label' => 'translate-rcfilters-translations-site-label',
+ 'description' => 'translate-rcfilters-translations-site-desc',
+ 'cssClassSuffix' => 'site',
+ 'isRowApplicableCallable' => function ( $ctx, $rc ) {
+ $namespaces = self::getTranslateNamespaces();
+
+ return in_array( $rc->getAttribute( 'rc_namespace' ), $namespaces ) &&
+ strpos( $rc->getAttribute( 'rc_title' ), '/' ) === false;
+ }
+ ],
+ [
+ 'name' => 'filter',
+ 'label' => 'translate-rcfilters-translations-filter-label',
+ 'description' => 'translate-rcfilters-translations-filter-desc',
+ 'cssClassSuffix' => 'filter',
+ 'isRowApplicableCallable' => function ( $ctx, $rc ) {
+ $namespaces = self::getTranslateNamespaces();
+
+ return !in_array( $rc->getAttribute( 'rc_namespace' ), $namespaces );
+ }
+ ],
+ ],
+ 'queryCallable' => function ( $specialClassName, $ctx, $dbr, &$tables,
+ &$fields, &$conds, &$query_options, &$join_conds, $selectedValues
+ ) {
+ $fields[] = 'rc_title';
+ $fields[] = 'rc_namespace';
+
+ $namespaces = self::getTranslateNamespaces();
+ $inNamespaceCond = 'rc_namespace IN (' .
+ $dbr->makeList( $namespaces ) . ')';
+ $notInNamespaceCond = 'rc_namespace NOT IN (' .
+ $dbr->makeList( $namespaces ) . ')';
+
+ $onlyCond = $dbr->makeList( [
+ $inNamespaceCond,
+ 'rc_title ' .
+ $dbr->buildLike( $dbr->anyString(), '/', $dbr->anyString() )
+ ], LIST_AND );
+ $siteCond = $dbr->makeList( [
+ $inNamespaceCond,
+ 'rc_title NOT' .
+ $dbr->buildLike( $dbr->anyString(), '/', $dbr->anyString() )
+ ], LIST_AND );
+
+ if ( count( $selectedValues ) === 3 ) {
+ // no filters
+ return;
+ }
+
+ if ( $selectedValues === [ 'filter', 'only' ] ) {
+ $conds[] = $dbr->makeList( [
+ $notInNamespaceCond,
+ $onlyCond
+ ], LIST_OR );
+ return;
+ }
+
+ if ( $selectedValues === [ 'filter', 'site' ] ) {
+ $conds[] = $dbr->makeList( [
+ $notInNamespaceCond,
+ $siteCond
+ ], LIST_OR );
+ return;
+ }
+
+ if ( $selectedValues === [ 'only', 'site' ] ) {
+ $conds[] = $inNamespaceCond;
+ return;
+ }
+
+ if ( $selectedValues === [ 'filter' ] ) {
+ $conds[] = $notInNamespaceCond;
+ return;
+ }
+
+ if ( $selectedValues === [ 'only' ] ) {
+ $conds[] = $onlyCond;
+ return;
+ }
+
+ if ( $selectedValues === [ 'site' ] ) {
+ $conds[] = $siteCond;
+ }
+ }
+ ]
+ );
+ $special->registerFilterGroup( $translationsGroup );
return true;
}
}
diff --git a/MLEB/Translate/utils/ResourceLoader.php b/MLEB/Translate/utils/ResourceLoader.php
index 9c9e1716..3a349897 100644
--- a/MLEB/Translate/utils/ResourceLoader.php
+++ b/MLEB/Translate/utils/ResourceLoader.php
@@ -4,7 +4,7 @@
* @file
* @author Niklas Laxström
* @copyright Copyright © 2010 Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -13,9 +13,9 @@
class PHPVariableLoader {
/**
* Returns a global variable from PHP file by executing the file.
- * @param $_filename \string Path to the file.
- * @param $_variable \string Name of the variable.
- * @return \mixed The variable contents or null.
+ * @param string $_filename Path to the file.
+ * @param string $_variable Name of the variable.
+ * @return mixed The variable contents or null.
*/
public static function loadVariableFromPHPFile( $_filename, $_variable ) {
if ( !file_exists( $_filename ) ) {
diff --git a/MLEB/Translate/utils/RevTag.php b/MLEB/Translate/utils/RevTag.php
index 7779a754..40d5b5b5 100644
--- a/MLEB/Translate/utils/RevTag.php
+++ b/MLEB/Translate/utils/RevTag.php
@@ -4,101 +4,28 @@
*
* @file
* @author Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
* Abstraction for revtag table to handle new and old schemas during migration.
*/
class RevTag {
- protected static $schema = false;
-
- /**
- * Determines the schema version.
- *
- * @return int
- */
- public static function checkSchema() {
- if ( self::$schema !== false ) {
- return self::$schema;
- } else {
- $dbr = wfGetDB( DB_SLAVE );
- if ( $dbr->tableExists( 'revtag_type' ) ) {
- throw new Exception(
- "Please run migrate-schema2.php. " .
- "https://phabricator.wikimedia.org/T60273"
- );
- } else {
- return self::$schema = 2;
- }
- }
- }
-
/**
* Returns value suitable for rt_type field.
* @param string $tag Tag name
- * @throws MWException
- * @return int|string
+ * @return string
*/
public static function getType( $tag ) {
- if ( self::checkSchema() === 2 ) {
- return $tag;
- }
-
- $tags = self::loadTags();
-
- if ( isset( $tags[$tag] ) ) {
- return $tags[$tag];
- } else {
- $text = "Unknown revtag $tag. Known are " . implode( ', ', array_keys( $tags ) );
- throw new MWException( $text );
- }
+ return $tag;
}
/**
* Converts rt_type field back to the tag name.
- * @param $tag int rt_type value
- * @throws MWException
+ * @param int $tag rt_type value
* @return string
*/
public static function typeToTag( $tag ) {
- if ( self::checkSchema() === 2 ) {
- return $tag;
- }
-
- $tags = self::loadTags();
- $tags = array_flip( $tags );
-
- if ( isset( $tags[$tag] ) ) {
- return $tags[$tag];
- } else {
- $text = "Unknown revtag type $tag. Known are " . implode( ', ', array_keys( $tags ) );
- throw new MWException( $text );
- }
- }
-
- /**
- * Loads the list of tags from database using the old schema
- * @return array tag names => tag id
- */
- protected static function loadTags() {
- static $tags = null;
- if ( $tags === null ) {
- $tags = array();
-
- $dbr = wfGetDB( DB_SLAVE );
- $res = $dbr->select(
- 'revtag_type',
- array( 'rtt_name', 'rtt_id' ),
- array(),
- __METHOD__
- );
-
- foreach ( $res as $row ) {
- $tags[$row->rtt_name] = $row->rtt_id;
- }
- }
-
- return $tags;
+ return $tag;
}
}
diff --git a/MLEB/Translate/utils/StatsBar.php b/MLEB/Translate/utils/StatsBar.php
index 39bd66a0..df2801a2 100644
--- a/MLEB/Translate/utils/StatsBar.php
+++ b/MLEB/Translate/utils/StatsBar.php
@@ -5,7 +5,7 @@
* @file
* @author Niklas Laxström
* @copyright Copyright © 2012-2013 Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -15,16 +15,27 @@
class StatsBar {
/**
* @see MessageGroupStats
- * @var array
+ * @var int[]
*/
protected $stats;
- /// @var string Message group id
+ /**
+ * @var string Message group id
+ */
protected $group;
- /// @var string Language
+ /**
+ * @var string Language
+ */
protected $language;
+ /**
+ * @param string $group
+ * @param string $language
+ * @param array[]|null $stats
+ *
+ * @return self
+ */
public static function getNew( $group, $language, array $stats = null ) {
$self = new self();
$self->group = $group;
@@ -39,6 +50,11 @@ class StatsBar {
return $self;
}
+ /**
+ * @param IContextSource $context
+ *
+ * @return string HTML
+ */
public function getHtml( IContextSource $context ) {
$context->getOutput()->addModules( 'ext.translate.statsbar' );
@@ -60,29 +76,29 @@ class StatsBar {
$wuntranslated = round( 100 - $wproofread - $wtranslated - $wfuzzy, 2 );
}
- return Html::rawElement( 'div', array(
+ return Html::rawElement( 'div', [
'class' => 'tux-statsbar',
'data-total' => $total,
'data-group' => $this->group,
'data-language' => $this->language,
- ),
- Html::element( 'span', array(
+ ],
+ Html::element( 'span', [
'class' => 'tux-proofread',
'style' => "width: $wproofread%",
'data-proofread' => $proofread,
- ) ) . Html::element( 'span', array(
+ ] ) . Html::element( 'span', [
'class' => 'tux-translated',
'style' => "width: $wtranslated%",
'data-translated' => $translated,
- ) ) . Html::element( 'span', array(
+ ] ) . Html::element( 'span', [
'class' => 'tux-fuzzy',
'style' => "width: $wfuzzy%",
'data-fuzzy' => $fuzzy,
- ) ) . Html::element( 'span', array(
+ ] ) . Html::element( 'span', [
'class' => 'tux-untranslated',
'style' => "width: $wuntranslated%",
'data-untranslated' => $untranslated,
- ) )
+ ] )
);
}
}
diff --git a/MLEB/Translate/utils/StatsTable.php b/MLEB/Translate/utils/StatsTable.php
index 52fd4cae..b06a0f6e 100644
--- a/MLEB/Translate/utils/StatsTable.php
+++ b/MLEB/Translate/utils/StatsTable.php
@@ -6,7 +6,7 @@
* @author Siebrand Mazeland
* @author Niklas Laxström
* @copyright Copyright © 2008-2013 Siebrand Mazeland, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -21,14 +21,25 @@
* @ingroup Stats
*/
class StatsTable {
- /// @var Language
+ /**
+ * @var Language
+ */
protected $lang;
- /// @var SpecialPage
+
+ /**
+ * @var Title
+ */
protected $translate;
- /// @var string
+
+ /**
+ * @var string
+ */
protected $mainColumnHeader;
- /// @var array
- protected $extraColumns = array();
+
+ /**
+ * @var Message[]
+ */
+ protected $extraColumns = [];
public function __construct() {
$this->lang = RequestContext::getMain()->getLanguage();
@@ -38,20 +49,20 @@ class StatsTable {
/**
* Statistics table element (heading or regular cell)
*
- * @param $in \string Element contents.
- * @param $bgcolor \string Backround color in ABABAB format.
- * @param $sort \string Value used for sorting.
- * @return \string Html td element.
+ * @param string $in Element contents.
+ * @param string $bgcolor Backround color in ABABAB format.
+ * @param string $sort Value used for sorting.
+ * @return string Html td element.
*/
public function element( $in, $bgcolor = '', $sort = '' ) {
- $attributes = array();
+ $attributes = [];
if ( $sort ) {
$attributes['data-sort-value'] = $sort;
}
if ( $bgcolor ) {
- $attributes['style'] = "background-color: #" . $bgcolor;
+ $attributes['style'] = 'background-color: #' . $bgcolor;
$attributes['class'] = 'hover-color';
}
@@ -61,9 +72,9 @@ class StatsTable {
}
public function getBackgroundColor( $subset, $total, $fuzzy = false ) {
- wfSuppressWarnings();
+ MediaWiki\suppressWarnings();
$v = round( 255 * $subset / $total );
- wfRestoreWarnings();
+ MediaWiki\restoreWarnings();
if ( $fuzzy ) {
// Weigh fuzzy with factor 20.
@@ -78,48 +89,65 @@ class StatsTable {
if ( $v < 128 ) {
// Red to Yellow
- $red = 'FF';
- $green = sprintf( '%02X', 2 * $v );
+ $red = 0.26 * $v + 221;
+ $green = 1.33 * $v + 33;
+ $blue = 51;
} else {
// Yellow to Green
- $red = sprintf( '%02X', 2 * ( 255 - $v ) );
- $green = 'FF';
+ $red = 2 * ( 255 - $v );
+ $green = 0.22 * ( 255 - $v ) + 175;
+ $blue = 0.67 * $v - 34;
}
- $blue = '00';
- return $red . $green . $blue;
+ return sprintf( '%02X%02X%02X', $red, $green, $blue );
}
+ /**
+ * @return string
+ */
public function getMainColumnHeader() {
return $this->mainColumnHeader;
}
+ /**
+ * @param Message $msg
+ */
public function setMainColumnHeader( Message $msg ) {
$this->mainColumnHeader = $this->createColumnHeader( $msg );
}
+ /**
+ * @param Message $msg
+ * @return string HTML
+ */
public function createColumnHeader( Message $msg ) {
- return Html::element( 'th', array(), $msg->text() );
+ return Html::element( 'th', [], $msg->text() );
}
public function addExtraColumn( Message $column ) {
$this->extraColumns[] = $column;
}
+ /**
+ * @return Message[]
+ */
public function getOtherColumnHeaders() {
- return array_merge( array(
+ return array_merge( [
wfMessage( 'translate-total' ),
wfMessage( 'translate-untranslated' ),
wfMessage( 'translate-percentage-complete' ),
wfMessage( 'translate-percentage-fuzzy' ),
- ), $this->extraColumns );
+ ], $this->extraColumns );
}
+ /**
+ * @return string HTML
+ */
public function createHeader() {
// Create table header
$out = Html::openElement(
'table',
- array( 'class' => "statstable wikitable mw-sp-translate-table" )
+ [ 'class' => 'statstable wikitable' ]
);
$out .= "\n\t" . Html::openElement( 'thead' );
@@ -144,7 +172,7 @@ class StatsTable {
*/
public function makeTotalRow( Message $message, $stats ) {
$out = "\t" . Html::openElement( 'tr' );
- $out .= "\n\t\t" . Html::element( 'td', array(), $message->text() );
+ $out .= "\n\t\t" . Html::element( 'td', [], $message->text() );
$out .= $this->makeNumberColumns( $stats );
$out .= "\n\t" . Xml::closeElement( 'tr' ) . "\n";
@@ -162,7 +190,7 @@ class StatsTable {
$fuzzy = $stats[MessageGroupStats::FUZZY];
if ( $total === null ) {
- $na = "\n\t\t" . Html::element( 'td', array( 'data-sort-value' => -1 ), '...' );
+ $na = "\n\t\t" . Html::element( 'td', [ 'data-sort-value' => -1 ], '...' );
$nap = "\n\t\t" . $this->element( '...', 'AFAFAF', -1 );
$out = $na . $na . $nap . $nap;
@@ -170,11 +198,11 @@ class StatsTable {
}
$out = "\n\t\t" . Html::element( 'td',
- array( 'data-sort-value' => $total ),
+ [ 'data-sort-value' => $total ],
$this->lang->formatNum( $total ) );
$out .= "\n\t\t" . Html::element( 'td',
- array( 'data-sort-value' => $total - $translated ),
+ [ 'data-sort-value' => $total - $translated ],
$this->lang->formatNum( $total - $translated ) );
if ( $total === 0 ) {
@@ -198,8 +226,8 @@ class StatsTable {
/**
* Makes a nice print from plain float.
- * @param $num float
- * @param $to string floor or ceil
+ * @param number $num
+ * @param string $to floor or ceil
* @return string Plain text
*/
public function formatPercentage( $num, $to = 'floor' ) {
@@ -211,7 +239,7 @@ class StatsTable {
/**
* Gets the name of group with some extra formatting.
- * @param $group MessageGroup
+ * @param MessageGroup $group
* @return string Html
*/
public function getGroupLabel( MessageGroup $group ) {
@@ -219,7 +247,7 @@ class StatsTable {
// Bold for meta groups.
if ( $group->isMeta() ) {
- $groupLabel = Html::rawElement( 'b', array(), $groupLabel );
+ $groupLabel = Html::rawElement( 'b', [], $groupLabel );
}
return $groupLabel;
@@ -227,20 +255,18 @@ class StatsTable {
/**
* Gets the name of group linked to translation tool.
- * @param $group MessageGroup
- * @param $code string Language code
- * @param $params array Any extra query parameters.
+ * @param MessageGroup $group
+ * @param string $code Language code
+ * @param array $params Any extra query parameters.
* @return string Html
*/
public function makeGroupLink( MessageGroup $group, $code, $params ) {
- $queryParameters = $params + array(
+ $queryParameters = $params + [
'group' => $group->getId(),
'language' => $code
- );
+ ];
- $attributes = array(
- 'title' => $this->getGroupDescription( $group )
- );
+ $attributes = [];
$translateGroupLink = Linker::link(
$this->translate, $this->getGroupLabel( $group ), $attributes, $queryParameters
@@ -250,43 +276,10 @@ class StatsTable {
}
/**
- * Gets the description of a group. This is a bit slow thing to do for
- * thousand+ groups, so some caching is involved.
- * @param $group MessageGroup
- * @return string Plain text
- */
- public function getGroupDescription( MessageGroup $group ) {
- $code = $this->lang->getCode();
-
- $cache = wfGetCache( CACHE_ANYTHING );
- $key = wfMemckey( "translate-groupdesc-$code-" . $group->getId() );
- $desc = $cache->get( $key );
-
- if ( is_string( $desc ) ) {
- return $desc;
- }
-
- $realFunction = array( 'MessageCache', 'singleton' );
-
- if ( is_callable( $realFunction ) ) {
- $mc = MessageCache::singleton();
- } else {
- global $wgMessageCache;
-
- $mc = $wgMessageCache;
- }
-
- $desc = $mc->transform( $group->getDescription(), true, $this->lang );
- $cache->set( $key, $desc );
-
- return $desc;
- }
-
- /**
* Check whether translations in given group in given language
* has been disabled.
- * @param $groupId string Message group id
- * @param $code string Language code
+ * @param string $groupId Message group id
+ * @param string $code Language code
* @return bool
*/
public function isBlacklisted( $groupId, $code ) {
@@ -294,11 +287,11 @@ class StatsTable {
$blacklisted = null;
- $checks = array(
+ $checks = [
$groupId,
strtok( $groupId, '-' ),
'*'
- );
+ ];
foreach ( $checks as $check ) {
if ( isset( $wgTranslateBlacklist[$check] ) && isset( $wgTranslateBlacklist[$check][$code] ) ) {
@@ -316,7 +309,7 @@ class StatsTable {
$blacklisted = true;
}
- $include = wfRunHooks( 'Translate:MessageGroupStats:isIncluded', array( $groupId, $code ) );
+ $include = Hooks::run( 'Translate:MessageGroupStats:isIncluded', [ $groupId, $code ] );
if ( !$include ) {
$blacklisted = true;
}
@@ -327,17 +320,17 @@ class StatsTable {
/**
* Used to circumvent ugly tooltips when newlines are used in the
* message content ("x\ny" becomes "x y").
- * @param $text
+ * @param string $text
* @return string
*/
public static function formatTooltip( $text ) {
$wordSeparator = wfMessage( 'word-separator' )->text();
- $text = strtr( $text, array(
+ $text = strtr( $text, [
"\n" => $wordSeparator,
"\r" => $wordSeparator,
"\t" => $wordSeparator,
- ) );
+ ] );
return $text;
}
diff --git a/MLEB/Translate/utils/ToolBox.php b/MLEB/Translate/utils/ToolBox.php
index 66934696..7efc2980 100644
--- a/MLEB/Translate/utils/ToolBox.php
+++ b/MLEB/Translate/utils/ToolBox.php
@@ -6,7 +6,7 @@
* @author Siebrand Mazeland
* @author Niklas Laxström
* @copyright Copyright © 2008-2010, Siebrand Mazeland, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -18,22 +18,25 @@ class TranslateToolbox {
* available translations for a message. Only shown when it
* actually is a translatable/translated message.
*
- * @param $quickTemplate QuickTemplate
+ * @param BaseTemplate $baseTemplate The base skin template
+ * @param array &$toolbox An array of toolbox items
*
* @return bool
*/
- static function toolboxAllTranslations( &$quickTemplate ) {
- $title = $quickTemplate->getSkin()->getTitle();
+ public static function toolboxAllTranslations( $baseTemplate, &$toolbox ) {
+ $title = $baseTemplate->getSkin()->getTitle();
$handle = new MessageHandle( $title );
if ( $handle->isValid() ) {
$message = $title->getNsText() . ':' . $handle->getKey();
- $desc = wfMessage( 'translate-sidebar-alltrans' )->escaped();
- $url = htmlspecialchars( SpecialPage::getTitleFor( 'Translations' )
- ->getLocalURL( array ('message' => $message ) ) );
+ $url = SpecialPage::getTitleFor( 'Translations' )
+ ->getLocalURL( [ 'message' => $message ] );
// Add the actual toolbox entry.
- // Add newlines and tabs for nicer HTML output.
- echo "\n\t\t\t\t<li id=\"t-alltrans\"><a href=\"$url\">$desc</a></li>\n";
+ $toolbox[ 'alltrans' ] = [
+ 'href' => $url,
+ 'id' => 't-alltrans',
+ 'msg' => 'translate-sidebar-alltrans',
+ ];
}
return true;
diff --git a/MLEB/Translate/utils/TranslateLogFormatter.php b/MLEB/Translate/utils/TranslateLogFormatter.php
index 019d6c5e..2925f2cb 100644
--- a/MLEB/Translate/utils/TranslateLogFormatter.php
+++ b/MLEB/Translate/utils/TranslateLogFormatter.php
@@ -5,7 +5,7 @@
* @file
* @author Niklas Laxström
* @copyright Copyright © 2013, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -21,7 +21,7 @@ class TranslateLogFormatter extends LogFormatter {
if ( $type === 'translationreview/message' ) {
$targetPage = $this->makePageLink(
$this->entry->getTarget(),
- array( 'oldid' => $params[3] )
+ [ 'oldid' => $params[3] ]
);
$params[2] = Message::rawParam( $targetPage );
@@ -39,7 +39,7 @@ class TranslateLogFormatter extends LogFormatter {
$targetPage = $this->makePageLinkWithText(
$this->entry->getTarget(),
$params[4],
- array( 'language' => $language )
+ [ 'language' => $language ]
);
$params[2] = Message::rawParam( $targetPage );
@@ -63,9 +63,11 @@ class TranslateLogFormatter extends LogFormatter {
return $message->isBlank() ? $value : $message->text();
}
- protected function makePageLinkWithText( Title $title = null, $text, $parameters = array() ) {
+ protected function makePageLinkWithText(
+ Title $title = null, $text, array $parameters = []
+ ) {
if ( !$this->plaintext ) {
- $link = Linker::link( $title, htmlspecialchars( $text ), array(), $parameters );
+ $link = Linker::link( $title, htmlspecialchars( $text ), [], $parameters );
} else {
$target = '***';
if ( $title instanceof Title ) {
diff --git a/MLEB/Translate/utils/TranslateMetadata.php b/MLEB/Translate/utils/TranslateMetadata.php
index 540128ce..9fe7be1a 100644
--- a/MLEB/Translate/utils/TranslateMetadata.php
+++ b/MLEB/Translate/utils/TranslateMetadata.php
@@ -7,22 +7,22 @@
* @author Niklas Laxström
* @author Santhosh Thottingal
* @copyright Copyright © 2012-2013, Niklas Laxström, Santhosh Thottingal
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
class TranslateMetadata {
- protected static $cache = null;
+ protected static $cache;
/**
* Get a metadata value for the given group and key.
- * @param $group string The group name
- * @param $key string Metadata key
- * @return String
+ * @param string $group The group name
+ * @param string $key Metadata key
+ * @return string|bool
*/
public static function get( $group, $key ) {
if ( self::$cache === null ) {
- $dbr = wfGetDB( DB_SLAVE );
- $res = $dbr->select( 'translate_metadata', '*', array(), __METHOD__ );
+ $dbr = wfGetDB( DB_REPLICA );
+ $res = $dbr->select( 'translate_metadata', '*', [], __METHOD__ );
foreach ( $res as $row ) {
self::$cache[$row->tmd_group][$row->tmd_key] = $row->tmd_value;
}
@@ -38,20 +38,20 @@ class TranslateMetadata {
/**
* Set a metadata value for the given group and metadata key. Updates the
* value if already existing.
- * @param $group string The group id
- * @param $key string Metadata key
- * @param $value string Metadata value
+ * @param string $group The group id
+ * @param string $key Metadata key
+ * @param string $value Metadata value
*/
public static function set( $group, $key, $value ) {
$dbw = wfGetDB( DB_MASTER );
- $data = array( 'tmd_group' => $group, 'tmd_key' => $key, 'tmd_value' => $value );
+ $data = [ 'tmd_group' => $group, 'tmd_key' => $key, 'tmd_value' => $value ];
if ( $value === false ) {
unset( $data['tmd_value'] );
$dbw->delete( 'translate_metadata', $data );
} else {
$dbw->replace(
'translate_metadata',
- array( array( 'tmd_group', 'tmd_key' ) ),
+ [ [ 'tmd_group', 'tmd_key' ] ],
$data,
__METHOD__
);
@@ -63,9 +63,8 @@ class TranslateMetadata {
/**
* Wrapper for getting subgroups.
* @param string $groupId
- * @return array|String
+ * @return string[]|bool
* @since 2012-05-09
- * return array|false
*/
public static function getSubgroups( $groupId ) {
$groups = self::get( $groupId, 'subgroups' );
@@ -104,7 +103,7 @@ class TranslateMetadata {
*/
public static function deleteGroup( $groupId ) {
$dbw = wfGetDB( DB_MASTER );
- $conds = array( 'tmd_group' => $groupId );
+ $conds = [ 'tmd_group' => $groupId ];
$dbw->delete( 'translate_metadata', $conds );
}
}
diff --git a/MLEB/Translate/utils/TranslateSandbox.php b/MLEB/Translate/utils/TranslateSandbox.php
index 12d3c0d6..999c4a3e 100644
--- a/MLEB/Translate/utils/TranslateSandbox.php
+++ b/MLEB/Translate/utils/TranslateSandbox.php
@@ -4,15 +4,23 @@
*
* @file
* @author Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
+use MediaWiki\Auth\AuthManager;
+use MediaWiki\Auth\AuthenticationRequest;
+use MediaWiki\Auth\AuthenticationResponse;
+
/**
- * Utility class for the sandbox feature of Translate.
+ * Utility class for the sandbox feature of Translate. Do not try this yourself. This code makes a
+ * lot of assumptions about what happens to the user account.
*/
class TranslateSandbox {
+ public static $userToCreate = null;
+
/**
* Adds a new user without doing much validation.
+ *
* @param string $name User name.
* @param string $email Email address.
* @param string $password User provided password.
@@ -21,22 +29,51 @@ class TranslateSandbox {
*/
public static function addUser( $name, $email, $password ) {
$user = User::newFromName( $name, 'creatable' );
+
if ( !$user instanceof User ) {
- throw new MWException( "Invalid user name" );
+ throw new MWException( 'Invalid user name' );
}
- $user->setEmail( $email );
- $user->setPassword( $password );
- $status = $user->addToDatabase();
-
- if ( !$status->isOK() ) {
- throw new MWException( $status->getWikiText() );
+ $data = [
+ 'username' => $user->getName(),
+ 'password' => $password,
+ 'retype' => $password,
+ 'email' => $email,
+ 'realname' => '',
+ ];
+
+ self::$userToCreate = $user;
+ $reqs = AuthManager::singleton()->getAuthenticationRequests( AuthManager::ACTION_CREATE );
+ $reqs = AuthenticationRequest::loadRequestsFromSubmission( $reqs, $data );
+ $res = AuthManager::singleton()->beginAccountCreation( $user, $reqs, 'null:' );
+ self::$userToCreate = null;
+
+ switch ( $res->status ) {
+ case AuthenticationResponse::PASS:
+ break;
+ case AuthenticationResponse::FAIL:
+ // Unless things are misconfigured, this will handle errors such as username taken,
+ // invalid user name or too short password. The WebAPI is prechecking these to
+ // provide nicer error messages.
+ $reason = $res->message->inLanguage( 'en' )->useDatabase( false )->text();
+ throw new MWException( "Account creation failed: $reason" );
+ default:
+ // Just in case it was a Secondary that failed
+ $user->clearInstanceCache( 'name' );
+ if ( $user->getId() ) {
+ self::deleteUser( $user, 'force' );
+ }
+ throw new MWException(
+ 'AuthManager does not support such simplified account creation'
+ );
}
- // Need to have an id first
- $user->addGroup( 'translate-sandboxed' );
+ // User now has an id, but we must clear the cache to see it. Without this the group
+ // addition below would not be saved in the database.
$user->clearInstanceCache( 'name' );
- $user->sendConfirmationMail();
+
+ // group-translate-sandboxed group-translate-sandboxed-member
+ $user->addGroup( 'translate-sandboxed' );
return $user;
}
@@ -50,15 +87,32 @@ class TranslateSandbox {
*/
public static function deleteUser( User $user, $force = '' ) {
$uid = $user->getId();
+ $username = $user->getName();
if ( $force !== 'force' && !self::isSandboxed( $user ) ) {
- throw new MWException( "Not a sandboxed user" );
+ throw new MWException( 'Not a sandboxed user' );
}
// Delete from database
$dbw = wfGetDB( DB_MASTER );
- $dbw->delete( 'user', array( 'user_id' => $uid ), __METHOD__ );
- $dbw->delete( 'user_groups', array( 'ug_user' => $uid ), __METHOD__ );
+ $dbw->delete( 'user', [ 'user_id' => $uid ], __METHOD__ );
+ $dbw->delete( 'user_groups', [ 'ug_user' => $uid ], __METHOD__ );
+ $dbw->delete( 'user_properties', [ 'up_user' => $uid ], __METHOD__ );
+
+ if ( class_exists( ActorMigration::class ) ) {
+ $m = ActorMigration::newMigration();
+
+ // Assume no joins are needed for logging or recentchanges
+ $dbw->delete( 'logging', $m->getWhere( $dbw, 'log_user', $user )['conds'], __METHOD__ );
+ $dbw->delete( 'recentchanges', $m->getWhere( $dbw, 'rc_user', $user )['conds'], __METHOD__ );
+ } else {
+ $dbw->delete( 'logging', [ 'log_user' => $uid ], __METHOD__ );
+ $dbw->delete(
+ 'recentchanges',
+ [ 'rc_user' => $uid, 'rc_user_text' => $username ],
+ __METHOD__
+ );
+ }
// If someone tries to access still object still, they will get anon user
// data.
@@ -66,10 +120,7 @@ class TranslateSandbox {
// Nobody should access the user by id anymore, but in case they do, purge
// the cache so they wont get stale data
- // @todo why the bunny is this private?!
- // $user->clearSharedCache();
- global $wgMemc;
- $wgMemc->delete( wfMemcKey( 'user', 'id', $uid ) );
+ $user->invalidateCache();
// In case we create an user with same name as was deleted during the same
// request, we must also reset this cache or the User class will try to load
@@ -87,15 +138,26 @@ class TranslateSandbox {
* @return UserArray List of users.
*/
public static function getUsers() {
- $dbw = wfGetDB( DB_MASTER );
- $tables = array( 'user', 'user_groups' );
- $fields = User::selectFields();
- $conds = array(
+ $dbw = TranslateUtils::getSafeReadDB();
+ if ( is_callable( [ User::class, 'getQueryInfo' ] ) ) {
+ $userQuery = User::getQueryInfo();
+ } else {
+ $userQuery = [
+ 'tables' => [ 'user' ],
+ 'fields' => User::selectFields(),
+ 'joins' => [],
+ ];
+ }
+ $tables = array_merge( $userQuery['tables'], [ 'user_groups' ] );
+ $fields = $userQuery['fields'];
+ $conds = [
'ug_group' => 'translate-sandboxed',
- 'ug_user = user_id',
- );
+ ];
+ $joins = [
+ 'user_groups' => [ 'JOIN', 'ug_user = user_id' ],
+ ] + $userQuery['joins'];
- $res = $dbw->select( $tables, $fields, $conds, __METHOD__ );
+ $res = $dbw->select( $tables, $fields, $conds, __METHOD__, [], $joins );
return UserArray::newFromResult( $res );
}
@@ -109,7 +171,7 @@ class TranslateSandbox {
global $wgTranslateSandboxPromotedGroup;
if ( !self::isSandboxed( $user ) ) {
- throw new MWException( "Not a sandboxed user" );
+ throw new MWException( 'Not a sandboxed user' );
}
$user->removeGroup( 'translate-sandboxed' );
@@ -165,19 +227,19 @@ class TranslateSandbox {
$body = wfMessage(
$bodyMsg,
$target->getName(),
- SpecialPage::getTitleFor( $targetSpecialPage )->getCanonicalUrl(),
+ SpecialPage::getTitleFor( $targetSpecialPage )->getCanonicalURL(),
$sender->getName()
)->inLanguage( $targetLang )->text();
- $params = array(
+ $params = [
'user' => $target->getId(),
- 'to' => new MailAddress( $target ),
- 'from' => new MailAddress( $sender ),
+ 'to' => MailAddress::newFromUser( $target ),
+ 'from' => MailAddress::newFromUser( $sender ),
'replyto' => new MailAddress( $wgNoReplyAddress ),
'subj' => $subject,
'body' => $body,
'emailType' => $type,
- );
+ ];
JobQueueGroup::singleton()->push( TranslateSandboxEmailJob::newJob( $params ) );
}
@@ -196,7 +258,12 @@ class TranslateSandbox {
return false;
}
- /// Hook: UserGetRights
+ /**
+ * Hook: UserGetRights
+ * @param User $user
+ * @param array &$rights
+ * @return true
+ */
public static function enforcePermissions( User $user, array &$rights ) {
global $wgTranslateUseSandbox;
@@ -208,7 +275,8 @@ class TranslateSandbox {
return true;
}
- $rights = array(
+ // right-translate-sandboxaction action-translate-sandboxaction
+ $rights = [
'editmyoptions',
'editmyprivateinfo',
'read',
@@ -216,16 +284,23 @@ class TranslateSandbox {
'translate-sandboxaction',
'viewmyprivateinfo',
'writeapi',
- );
+ ];
// Do not let other hooks add more actions
return false;
}
+ /// Hook: UserGetRights
+ public static function allowAccountCreation( $user, &$rights ) {
+ if ( self::$userToCreate && $user->equals( self::$userToCreate ) ) {
+ $rights[] = 'createaccount';
+ }
+ }
+
/// Hook: onGetPreferences
public static function onGetPreferences( $user, &$preferences ) {
$preferences['translate-sandbox'] = $preferences['translate-sandbox-reminders'] =
- array( 'type' => 'api' );
+ [ 'type' => 'api' ];
return true;
}
@@ -233,19 +308,27 @@ class TranslateSandbox {
/**
* Whitelisting for certain API modules. See also enforcePermissions.
* Hook: ApiCheckCanExecute
+ * @param ApiBase $module
+ * @param User $user
+ * @param string &$message
+ * @return bool
*/
public static function onApiCheckCanExecute( ApiBase $module, User $user, &$message ) {
- $whitelist = array(
+ $whitelist = [
// Obviously this is needed to get out of the sandbox
'ApiTranslationStash',
// Used by UniversalLanguageSelector for example
'ApiOptions'
- );
+ ];
- if ( TranslateSandbox::isSandboxed( $user ) ) {
+ if ( self::isSandboxed( $user ) ) {
$class = get_class( $module );
if ( $module->isWriteMode() && !in_array( $class, $whitelist, true ) ) {
- $message = 'writerequired';
+ $message = ApiMessage::create( 'apierror-writeapidenied' );
+ if ( $message->getApiCode() === 'apierror-writeapidenied' ) {
+ // Backwards compatibility for pre-1.29 MediaWiki
+ $message = 'writerequired';
+ }
return false;
}
}
diff --git a/MLEB/Translate/utils/TranslateSandboxEmailJob.php b/MLEB/Translate/utils/TranslateSandboxEmailJob.php
index 1496bfda..7ffb7513 100644
--- a/MLEB/Translate/utils/TranslateSandboxEmailJob.php
+++ b/MLEB/Translate/utils/TranslateSandboxEmailJob.php
@@ -1,21 +1,29 @@
<?php
class TranslateSandboxEmailJob extends Job {
+ /**
+ * @param array $params
+ * @return TranslateSandboxEmailJob
+ */
public static function newJob( array $params ) {
return new self( Title::newMainPage(), $params );
}
- function __construct( $title, $params, $id = 0 ) {
- parent::__construct( __CLASS__, $title, $params, $id );
+ /**
+ * @param Title $title
+ * @param array $params
+ */
+ public function __construct( $title, $params ) {
+ parent::__construct( __CLASS__, $title, $params );
}
- function run() {
+ public function run() {
$status = UserMailer::send(
$this->params['to'],
$this->params['from'],
$this->params['subj'],
$this->params['body'],
- $this->params['replyto']
+ [ 'replyTo' => $this->params['replyto'] ]
);
$isOK = $status->isOK();
@@ -24,7 +32,7 @@ class TranslateSandboxEmailJob extends Job {
$user = User::newFromId( $this->params['user'] );
$reminders = $user->getOption( 'translate-sandbox-reminders' );
- $reminders = $reminders ? explode( '|', $reminders ) : array();
+ $reminders = $reminders ? explode( '|', $reminders ) : [];
$reminders[] = wfTimestamp();
$user->setOption( 'translate-sandbox-reminders', implode( '|', $reminders ) );
diff --git a/MLEB/Translate/utils/TranslateYaml.php b/MLEB/Translate/utils/TranslateYaml.php
index 2677cb0a..699676a9 100644
--- a/MLEB/Translate/utils/TranslateYaml.php
+++ b/MLEB/Translate/utils/TranslateYaml.php
@@ -6,7 +6,7 @@
* @author Ævar Arnfjörð Bjarmason
* @author Niklas Laxström
* @copyright Copyright © 2009-2013, Niklas Laxström, Ævar Arnfjörð Bjarmason
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -15,27 +15,7 @@
*/
class TranslateYaml {
/**
- * @deprecated in 2014.01
- */
- public static function parseGroupFile( $filename ) {
- $data = file_get_contents( $filename );
- wfDeprecated( 'Use MessageGroupConfigurationParser' );
- $parser = new MessageGroupConfigurationParser();
-
- return $parser->getHopefullyValidConfigurations( $data );
- }
-
- /**
- * @deprecated in 2014.01
- */
- public static function mergeTemplate( $base, $specific ) {
- wfDeprecated( 'Use MessageGroupConfigurationParser' );
-
- return MessageGroupConfigurationParser::mergeTemplate( $base, $specific );
- }
-
- /**
- * @param $text string
+ * @param string $text
* @return array
* @throws MWException
*/
@@ -44,19 +24,23 @@ class TranslateYaml {
switch ( $wgTranslateYamlLibrary ) {
case 'phpyaml':
- $ret = yaml_parse( $text );
+ // Harden: do not support unserializing objects.
+ // Method 1: PHP ini setting (not supported by HHVM)
+ // Method 2: Callback handler for !php/object
+ $previousValue = ini_set( 'yaml.decode_php', false );
+ $ignored = 0;
+ $callback = function ( $value ) {
+ return $value;
+ };
+ $ret = yaml_parse( $text, 0, $ignored, [ '!php/object' => $callback ] );
+ ini_set( 'yaml.decode_php', $previousValue );
if ( $ret === false ) {
// Convert failures to exceptions
- throw new InvalidArgumentException( "Invalid Yaml string" );
+ throw new InvalidArgumentException( 'Invalid Yaml string' );
}
return $ret;
-
case 'spyc':
- // Load the bundled version if not otherwise available
- if ( !class_exists( 'Spyc' ) ) {
- require_once __DIR__ . '/../libs/spyc/spyc.php';
- }
$yaml = spyc_load( $text );
return self::fixSpycSpaces( $yaml );
@@ -65,12 +49,12 @@ class TranslateYaml {
return self::fixSyckBooleans( $yaml );
default:
- throw new MWException( "Unknown Yaml library" );
+ throw new MWException( 'Unknown Yaml library' );
}
}
/**
- * @param $yaml array
+ * @param array &$yaml
* @return array
*/
public static function fixSyckBooleans( &$yaml ) {
@@ -86,7 +70,7 @@ class TranslateYaml {
}
/**
- * @param $yaml array
+ * @param array &$yaml
* @return array
*/
public static function fixSpycSpaces( &$yaml ) {
@@ -112,17 +96,36 @@ class TranslateYaml {
switch ( $wgTranslateYamlLibrary ) {
case 'phpyaml':
- return yaml_emit( $text, YAML_UTF8_ENCODING );
-
+ return self::phpyamlDump( $text );
case 'spyc':
- require_once __DIR__ . '/../libs/spyc/spyc.php';
-
return Spyc::YAMLDump( $text );
case 'syck':
return self::syckDump( $text );
default:
- throw new MWException( "Unknown Yaml library" );
+ throw new MWException( 'Unknown Yaml library' );
+ }
+ }
+
+ protected static function phpyamlDump( $data ) {
+ if ( !is_array( $data ) ) {
+ return yaml_emit( $data, YAML_UTF8_ENCODING );
}
+
+ // Fix decimal-less floats strings such as "2."
+ // https://bugs.php.net/bug.php?id=76309
+ $random = MWCryptRand::generateHex( 8 );
+ // Ensure our random does not look like a number
+ $random = "X$random";
+ $mangler = function ( &$item ) use ( $random ) {
+ if ( preg_match( '/^[0-9]+\.$/', $item ) ) {
+ $item = "$random$item$random";
+ }
+ };
+
+ array_walk_recursive( $data, $mangler );
+ $yaml = yaml_emit( $data, YAML_UTF8_ENCODING );
+ $yaml = str_replace( $random, '"', $yaml );
+ return $yaml;
}
protected static function syckLoad( $data ) {
@@ -143,7 +146,7 @@ class TranslateYaml {
$out = wfShellExec( $cmd, $ret );
- if ( $ret != 0 ) {
+ if ( (int)$ret !== 0 ) {
throw new MWException( "The command '$cmd' died in execution with exit code '$ret': $out" );
}
@@ -186,7 +189,7 @@ class TranslateYaml {
'}' .
"' 2>&1";
$out = wfShellExec( $cmd, $ret );
- if ( $ret != 0 ) {
+ if ( (int)$ret !== 0 ) {
throw new MWException( "The command '$cmd' died in execution with exit code '$ret': $out" );
}
diff --git a/MLEB/Translate/utils/TranslationEditPage.php b/MLEB/Translate/utils/TranslationEditPage.php
deleted file mode 100644
index 83644228..00000000
--- a/MLEB/Translate/utils/TranslationEditPage.php
+++ /dev/null
@@ -1,314 +0,0 @@
-<?php
-/**
- * Contains classes that imeplement the server side component of AJAX
- * translation page.
- *
- * @file
- * @author Niklas Laxström
- * @license GPL-2.0+
- */
-
-/**
- * This class together with some JavaScript implements the AJAX translation
- * page.
- */
-class TranslationEditPage {
- // Instance of an Title object
- protected $title;
- protected $suggestions = 'sync';
-
- /**
- * Constructor.
- * @param $title Title A title object
- */
- public function __construct( Title $title ) {
- $this->setTitle( $title );
- }
-
- /**
- * Constructs a page from WebRequest.
- * This interface is a big klunky.
- * @param $request WebRequest
- * @return TranslationEditPage
- */
- public static function newFromRequest( WebRequest $request ) {
- $title = Title::newFromText( $request->getText( 'page' ) );
-
- if ( !$title ) {
- return null;
- }
-
- $obj = new self( $title );
- $obj->suggestions = $request->getText( 'suggestions' );
-
- return $obj;
- }
-
- /**
- * Change the title of the page we are working on.
- * @param $title Title
- */
- public function setTitle( Title $title ) {
- $this->title = $title;
- }
-
- /**
- * Get the title of the page we are working on.
- * @return Title
- */
- public function getTitle() {
- return $this->title;
- }
-
- /**
- * Generates the html snippet for ajax edit. Echoes it to the output and
- * disabled all other output.
- */
- public function execute() {
- global $wgServer, $wgScriptPath;
-
- $context = RequestContext::getMain();
-
- $context->getOutput()->disable();
-
- $data = $this->getEditInfo();
- $helpers = new TranslationHelpers( $this->getTitle(), '' );
-
- $id = "tm-target-{$helpers->dialogID()}";
- $helpers->setTextareaId( $id );
-
- if ( $this->suggestions === 'only' ) {
- echo $helpers->getBoxes( $this->suggestions );
-
- return;
- }
-
- if ( $this->suggestions === 'checks' ) {
- echo $helpers->getBoxes( $this->suggestions );
-
- return;
- }
-
- $handle = new MessageHandle( $this->getTitle() );
- $groupId = MessageIndex::getPrimaryGroupId( $handle );
-
- $translation = '';
- if ( $groupId ) {
- $translation = $helpers->getTranslation();
- }
-
- $targetLang = Language::factory( $helpers->getTargetLanguage() );
- $textareaParams = array(
- 'name' => 'text',
- 'class' => 'mw-translate-edit-area',
- 'id' => $id,
- /* Target language might differ from interface language. Set
- * a suitable default direction */
- 'lang' => $targetLang->getCode(),
- 'dir' => $targetLang->getDir(),
- );
-
- if ( !$groupId || !$context->getUser()->isAllowed( 'translate' ) ) {
- $textareaParams['readonly'] = 'readonly';
- }
-
- $extraInputs = '';
- wfRunHooks( 'TranslateGetExtraInputs', array( &$translation, &$extraInputs ) );
-
- $textarea = Html::element( 'textarea', $textareaParams, $translation );
-
- $hidden = array();
- $hidden[] = Html::hidden( 'title', $this->getTitle()->getPrefixedDbKey() );
-
- if ( isset( $data['revisions'][0]['timestamp'] ) ) {
- $hidden[] = Html::hidden( 'basetimestamp', $data['revisions'][0]['timestamp'] );
- }
-
- $hidden[] = Html::hidden( 'starttimestamp', $data['starttimestamp'] );
- if ( isset( $data['edittoken'] ) ) {
- $hidden[] = Html::hidden( 'token', $data['edittoken'] );
- }
- $hidden[] = Html::hidden( 'format', 'json' );
- $hidden[] = Html::hidden( 'action', 'edit' );
-
- $summary = Xml::inputLabel(
- $context->msg( 'translate-js-summary' )->text(),
- 'summary',
- 'summary',
- 40
- );
- $save = Xml::submitButton(
- $context->msg( 'translate-js-save' )->text(),
- array( 'class' => 'mw-translate-save' )
- );
- $saveAndNext = Xml::submitButton(
- $context->msg( 'translate-js-next' )->text(),
- array( 'class' => 'mw-translate-next' )
- );
- $skip = Html::element( 'input', array(
- 'class' => 'mw-translate-skip',
- 'type' => 'button',
- 'value' => $context->msg( 'translate-js-skip' )->text()
- ) );
-
- if ( $this->getTitle()->exists() ) {
- $history = Html::element(
- 'input',
- array(
- 'class' => 'mw-translate-history',
- 'type' => 'button',
- 'value' => $context->msg( 'translate-js-history' )->text()
- )
- );
- } else {
- $history = '';
- }
-
- $support = $this->getSupportButton( $this->getTitle() );
-
- if ( $context->getUser()->isAllowed( 'translate' ) ) {
- $bottom = "$summary$save$saveAndNext$skip$history$support";
- } else {
- $text = $context->msg( 'translate-edit-nopermission' )->escaped();
- $button = $this->getPermissionPageButton();
- $bottom = "$text $button$skip$history$support";
- }
-
- // Use the api to submit edits
- $formParams = array(
- 'action' => "{$wgServer}{$wgScriptPath}/api.php",
- 'method' => 'post',
- );
-
- $form = Html::rawElement( 'form', $formParams,
- implode( "\n", $hidden ) . "\n" .
- $helpers->getBoxes( $this->suggestions ) . "\n" .
- Html::rawElement(
- 'div',
- array( 'class' => 'mw-translate-inputs' ),
- "$textarea\n$extraInputs"
- ) . "\n" .
- Html::rawElement( 'div', array( 'class' => 'mw-translate-bottom' ), $bottom )
- );
-
- echo Html::rawElement( 'div', array( 'class' => 'mw-ajax-dialog' ), $form );
- }
-
- /**
- * Gets the edit token and timestamps in some ugly array structure. Needs to
- * be cleaned up.
- * @throws MWException
- * @return \array
- */
- protected function getEditInfo() {
- $params = new FauxRequest( array(
- 'action' => 'query',
- 'prop' => 'info|revisions',
- 'intoken' => 'edit',
- 'titles' => $this->getTitle(),
- 'rvprop' => 'timestamp',
- ) );
-
- $api = new ApiMain( $params );
- $api->execute();
- if ( defined( 'ApiResult::META_CONTENT' ) ) {
- $data = $api->getResult()->getResultData();
- } else {
- $data = $api->getResultData();
- }
-
- if ( !isset( $data['query']['pages'] ) ) {
- throw new MWException( 'Api query failed' );
- }
- $data = $data['query']['pages'];
- if ( defined( 'ApiResult::META_CONTENT' ) ) {
- $data = ApiResult::stripMetadataNonRecursive( $data );
- }
- $data = array_shift( $data );
-
- return $data;
- }
-
- /**
- * Returns link attributes that enable javascript translation dialog.
- * Will degrade gracefully if user does not have permissions or JavaScript
- * is not enabled.
- * @param $title Title Title object for the translatable message.
- * @param $group \string The group in which this message belongs to.
- * Optional, but avoids a lookup later if provided.
- * @param $type \string Force the type of editor to be used. Use dialog
- * where embedded editor is no applicable.
- * @return \array
- */
- public static function jsEdit( Title $title, $group = "", $type = 'default' ) {
- $context = RequestContext::getMain();
-
- if ( $type === 'default' ) {
- $text = 'tqe-anchor-' . substr( sha1( $title->getPrefixedText() ), 0, 12 );
- $onclick = "jQuery( '#$text' ).dblclick(); return false;";
- } else {
- $onclick = Xml::encodeJsCall(
- 'return mw.translate.openDialog', array( $title->getPrefixedDbKey(), $group )
- );
- }
-
- return array(
- 'onclick' => $onclick,
- 'title' => $context->msg( 'translate-edit-title', $title->getPrefixedText() )->text()
- );
- }
-
- protected function getSupportButton( $title ) {
- global $wgTranslateSupportUrl;
- if ( !$wgTranslateSupportUrl ) {
- return '';
- }
-
- $supportTitle = Title::newFromText( $wgTranslateSupportUrl['page'] );
- if ( !$supportTitle ) {
- return '';
- }
-
- $supportParams = $wgTranslateSupportUrl['params'];
- foreach ( $supportParams as &$value ) {
- $value = str_replace( '%MESSAGE%', $title->getPrefixedText(), $value );
- }
-
- $support = Html::element(
- 'input',
- array(
- 'class' => 'mw-translate-support',
- 'type' => 'button',
- 'value' => wfMessage( 'translate-js-support' )->text(),
- 'title' => wfMessage( 'translate-js-support-title' )->text(),
- 'data-load-url' => $supportTitle->getLocalUrl( $supportParams ),
- )
- );
-
- return $support;
- }
-
- protected function getPermissionPageButton() {
- global $wgTranslatePermissionUrl;
- if ( !$wgTranslatePermissionUrl ) {
- return '';
- }
-
- $title = Title::newFromText( $wgTranslatePermissionUrl );
- if ( !$title ) {
- return '';
- }
-
- $button = Html::element(
- 'input',
- array(
- 'class' => 'mw-translate-askpermission',
- 'type' => 'button',
- 'value' => wfMessage( 'translate-edit-askpermission' )->text(),
- 'data-load-url' => $title->getLocalUrl(),
- )
- );
-
- return $button;
- }
-}
diff --git a/MLEB/Translate/utils/TranslationHelpers.php b/MLEB/Translate/utils/TranslationHelpers.php
index e33e7e86..4cb2ca8c 100644
--- a/MLEB/Translate/utils/TranslationHelpers.php
+++ b/MLEB/Translate/utils/TranslationHelpers.php
@@ -5,7 +5,7 @@
*
* @file
* @author Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -19,6 +19,12 @@ class TranslationHelpers {
* @since 2012-01-04
*/
protected $handle;
+
+ /**
+ * @var TranslationAidDataProvider
+ */
+ private $dataProvider;
+
/**
* The group object of the message (or null if there isn't any)
* @var MessageGroup
@@ -26,13 +32,11 @@ class TranslationHelpers {
protected $group;
/**
- * The current translation as a string.
- */
- protected $translation;
- /**
- * The message definition as a string.
+ * The current translation.
+ * @var string
*/
- protected $definition;
+ private $translation;
+
/**
* HTML id to the text area that contains the translation. Used to insert
* suggestion directly into the text area, for example.
@@ -49,6 +53,7 @@ class TranslationHelpers {
*/
public function __construct( Title $title, $groupId ) {
$this->handle = new MessageHandle( $title );
+ $this->dataProvider = new TranslationAidDataProvider( $this->handle );
$this->group = $this->getMessageGroup( $this->handle, $groupId );
}
@@ -82,7 +87,7 @@ class TranslationHelpers {
/**
* Sets the HTML id of the text area that contains the translation.
- * @param $id String
+ * @param String $id
*/
public function setTextareaId( $id ) {
$this->textareaId = $id;
@@ -90,7 +95,7 @@ class TranslationHelpers {
/**
* Enable or disable extra help for editing.
- * @param $mode Boolean
+ * @param bool $mode
*/
public function setEditMode( $mode = true ) {
$this->editMode = $mode;
@@ -101,22 +106,16 @@ class TranslationHelpers {
* @return String
*/
public function getDefinition() {
- if ( $this->definition !== null ) {
- return $this->definition;
- }
-
$this->mustBeKnownMessage();
- if ( method_exists( $this->group, 'getMessageContent' ) ) {
- $this->definition = $this->group->getMessageContent( $this->handle );
- } else {
- $this->definition = $this->group->getMessage(
- $this->handle->getKey(),
- $this->group->getSourceLanguage()
- );
- }
+ $obj = new MessageDefinitionAid(
+ $this->group,
+ $this->handle,
+ RequestContext::getMain(),
+ $this->dataProvider
+ );
- return $this->definition;
+ return $obj->getData()['value'];
}
/**
@@ -126,7 +125,12 @@ class TranslationHelpers {
*/
public function getTranslation() {
if ( $this->translation === null ) {
- $obj = new CurrentTranslationAid( $this->group, $this->handle, RequestContext::getMain() );
+ $obj = new CurrentTranslationAid(
+ $this->group,
+ $this->handle,
+ RequestContext::getMain(),
+ $this->dataProvider
+ );
$aid = $obj->getData();
$this->translation = $aid['value'];
@@ -149,6 +153,7 @@ class TranslationHelpers {
/**
* Gets the linguistically correct language code for translation
+ * @return string
*/
public function getTargetLanguage() {
global $wgLanguageCode, $wgTranslateDocumentationLanguageCode;
@@ -169,33 +174,13 @@ class TranslationHelpers {
* Returns block element HTML snippet that contains the translation aids.
* Not all boxes are shown all the time depending on whether they have
* any information to show and on configuration variables.
- * @param $suggestions string
- * @return String. Block level HTML snippet or empty string.
+ * @return String Block level HTML snippet or empty string.
*/
- public function getBoxes( $suggestions = 'sync' ) {
+ public function getBoxes() {
// Box filter
$all = $this->getBoxNames();
- if ( $suggestions === 'async' ) {
- $all['translation-memory'] = array( $this, 'getLazySuggestionBox' );
- } elseif ( $suggestions === 'only' ) {
- return (string)$this->callBox(
- 'translation-memory',
- $all['translation-memory'],
- array( 'lazy' )
- );
- } elseif ( $suggestions === 'checks' ) {
- $request = RequestContext::getMain()->getRequest();
- $this->translation = $request->getText( 'translation' );
-
- return (string)$this->callBox( 'check', $all['check'] );
- }
-
- if ( $this->group instanceof RecentMessageGroup ) {
- $all['last-diff'] = array( $this, 'getLastDiff' );
- }
-
- $boxes = array();
+ $boxes = [];
foreach ( $all as $type => $cb ) {
$box = $this->callBox( $type, $cb );
if ( $box ) {
@@ -203,12 +188,12 @@ class TranslationHelpers {
}
}
- wfRunHooks( 'TranslateGetBoxes', array( $this->group, $this->handle, &$boxes ) );
+ Hooks::run( 'TranslateGetBoxes', [ $this->group, $this->handle, &$boxes ] );
if ( count( $boxes ) ) {
return Html::rawElement(
'div',
- array( 'class' => 'mw-sp-translate-edit-fields' ),
+ [ 'class' => 'mw-sp-translate-edit-fields' ],
implode( "\n\n", $boxes )
);
} else {
@@ -218,9 +203,14 @@ class TranslationHelpers {
/**
* Public since 2012-06-26
+ *
* @since 2012-01-04
+ * @param string $type
+ * @param callback $cb
+ * @param array $params
+ * @return mixed
*/
- public function callBox( $type, $cb, $params = array() ) {
+ public function callBox( $type, $cb, array $params = [] ) {
try {
return call_user_func_array( $cb, $params );
} catch ( TranslationHelperException $e ) {
@@ -232,557 +222,12 @@ class TranslationHelpers {
* @return array
*/
public function getBoxNames() {
- return array(
- 'other-languages' => array( $this, 'getOtherLanguagesBox' ),
- 'translation-memory' => array( $this, 'getSuggestionBox' ),
- 'translation-diff' => array( $this, 'getPageDiff' ),
- 'separator' => array( $this, 'getSeparatorBox' ),
- 'documentation' => array( $this, 'getDocumentationBox' ),
- 'definition' => array( $this, 'getDefinitionBox' ),
- 'check' => array( $this, 'getCheckBox' ),
- );
- }
-
- /**
- * Returns suggestions from a translation memory.
- * @param $serviceName
- * @param $config
- * @throws TranslationHelperException
- * @return string Html snippet which contains the suggestions.
- */
- protected function getTTMServerBox( $serviceName, $config ) {
- $this->mustHaveDefinition();
- $this->mustBeTranslation();
-
- $source = $this->group->getSourceLanguage();
- $code = $this->handle->getCode();
- $definition = $this->getDefinition();
- $TTMServer = TTMServer::factory( $config );
- $suggestions = $TTMServer->query( $source, $code, $definition );
- if ( count( $suggestions ) === 0 ) {
- throw new TranslationHelperException( 'No suggestions' );
- }
-
- return $suggestions;
- }
-
- /**
- * Returns suggestions from a translation memory.
- * @param $serviceName
- * @param $config
- * @throws TranslationHelperException
- * @return string Html snippet which contains the suggestions.
- */
- protected function getRemoteTTMServerBox( $serviceName, $config ) {
- $this->mustHaveDefinition();
- $this->mustBeTranslation();
-
- self::checkTranslationServiceFailure( $serviceName );
-
- $source = $this->group->getSourceLanguage();
- $code = $this->handle->getCode();
- $definition = $this->getDefinition();
- $params = array(
- 'format' => 'json',
- 'action' => 'ttmserver',
- 'sourcelanguage' => $source,
- 'targetlanguage' => $code,
- 'text' => $definition,
- '*', // Because we hate IE
- );
-
- wfProfileIn( 'TranslateWebServiceRequest-' . $serviceName );
- $json = Http::get( wfAppendQuery( $config['url'], $params ) );
- wfProfileOut( 'TranslateWebServiceRequest-' . $serviceName );
-
- $response = FormatJson::decode( $json, true );
-
- if ( $json === false ) {
- // Most likely a timeout or other general error
- self::reportTranslationServiceFailure( $serviceName );
- throw new TranslationHelperException( 'No reply from remote server' );
- } elseif ( !is_array( $response ) ) {
- error_log( __METHOD__ . ': Unable to parse reply: ' . strval( $json ) );
- throw new TranslationHelperException( 'Malformed reply from remote server' );
- }
-
- if ( !isset( $response['ttmserver'] ) ) {
- self::reportTranslationServiceFailure( $serviceName );
- throw new TranslationHelperException( 'Unexpected reply from remote server' );
- }
-
- $suggestions = $response['ttmserver'];
- if ( count( $suggestions ) === 0 ) {
- throw new TranslationHelperException( 'No suggestions' );
- }
-
- return $suggestions;
- }
-
- /// Since 2012-03-05
- protected function formatTTMServerSuggestions( $data ) {
- $sugFields = array();
-
- foreach ( $data as $serviceWrapper ) {
- $config = $serviceWrapper['config'];
- $suggestions = $serviceWrapper['suggestions'];
-
- foreach ( $suggestions as $s ) {
- $tooltip = wfMessage( 'translate-edit-tmmatch-source', $s['source'] )->plain();
- $text = wfMessage(
- 'translate-edit-tmmatch',
- sprintf( '%.2f', $s['quality'] * 100 )
- )->plain();
- $accuracy = Html::element( 'span', array( 'title' => $tooltip ), $text );
- $legend = array( $accuracy => array() );
-
- $TTMServer = TTMServer::factory( $config );
- if ( $TTMServer->isLocalSuggestion( $s ) ) {
- $title = Title::newFromText( $s['location'] );
- $symbol = isset( $config['symbol'] ) ? $config['symbol'] : '•';
- $legend[$accuracy][] = self::ajaxEditLink( $title, $symbol );
- } else {
- if ( $TTMServer instanceof RemoteTTMServer ) {
- $displayName = $config['displayname'];
- } else {
- $wiki = WikiMap::getWiki( $s['wiki'] );
- $displayName = $wiki->getDisplayName() . ': ' . $s['location'];
- }
-
- $params = array(
- 'href' => $TTMServer->expandLocation( $s ),
- 'target' => '_blank',
- 'title' => $displayName,
- );
-
- $symbol = isset( $config['symbol'] ) ? $config['symbol'] : '‣';
- $legend[$accuracy][] = Html::element( 'a', $params, $symbol );
- }
-
- $suggestion = $s['target'];
- $text = $this->suggestionField( $suggestion );
- $params = array( 'class' => 'mw-sp-translate-edit-tmsug' );
-
- // Group identical suggestions together
- if ( isset( $sugFields[$suggestion] ) ) {
- $sugFields[$suggestion][2] = array_merge_recursive( $sugFields[$suggestion][2], $legend );
- } else {
- $sugFields[$suggestion] = array( $text, $params, $legend );
- }
- }
- }
-
- $boxes = array();
- foreach ( $sugFields as $field ) {
- list( $text, $params, $label ) = $field;
- $legend = array();
-
- foreach ( $label as $acc => $links ) {
- $legend[] = $acc . ' ' . implode( " ", $links );
- }
-
- $legend = implode( ' | ', $legend );
- $boxes[] = Html::rawElement(
- 'div',
- $params,
- self::legend( $legend ) . $text . self::clear()
- ) . "\n";
- }
-
- // Limit to three best
- $boxes = array_slice( $boxes, 0, 3 );
- $result = implode( "\n", $boxes );
-
- return $result;
- }
-
- /**
- * @return string
- * @throws MWException
- */
- public function getSuggestionBox() {
- global $wgTranslateTranslationServices;
-
- $handlers = array(
- 'microsoft' => 'getMicrosoftSuggestion',
- 'apertium' => 'getApertiumSuggestion',
- 'yandex' => 'getYandexSuggestion',
- );
-
- $errors = '';
- $boxes = array();
- $TTMSSug = array();
- foreach ( $wgTranslateTranslationServices as $name => $config ) {
- $type = $config['type'];
-
- if ( !isset( $config['timeout'] ) ) {
- $config['timeout'] = 3;
- }
-
- $method = null;
- if ( isset( $handlers[$type] ) ) {
- $method = $handlers[$type];
-
- try {
- $boxes[] = $this->$method( $name, $config );
- } catch ( TranslationHelperException $e ) {
- $errors .= "<!-- Box $name not available: {$e->getMessage()} -->\n";
- }
- continue;
- }
-
- $server = TTMServer::factory( $config );
- if ( $server instanceof RemoteTTMServer ) {
- $method = 'getRemoteTTMServerBox';
- } elseif ( $server instanceof ReadableTTMServer ) {
- $method = 'getTTMServerBox';
- }
-
- if ( !$method ) {
- throw new MWException( __METHOD__ . ": Unsupported type {$config['type']}" );
- }
-
- try {
- $TTMSSug[$name] = array(
- 'config' => $config,
- 'suggestions' => $this->$method( $name, $config ),
- );
- } catch ( TranslationHelperException $e ) {
- $errors .= "<!-- Box $name not available: {$e->getMessage()} -->\n";
- }
- }
-
- if ( count( $TTMSSug ) ) {
- array_unshift( $boxes, $this->formatTTMServerSuggestions( $TTMSSug ) );
- }
-
- // Remove nulls and falses
- $boxes = array_filter( $boxes );
-
- // Enclose if there is more than one box
- if ( count( $boxes ) ) {
- $sep = Html::element( 'hr', array( 'class' => 'mw-translate-sep' ) );
-
- return $errors . TranslateUtils::fieldset(
- wfMessage( 'translate-edit-tmsugs' )->escaped(),
- implode( "$sep\n", $boxes ),
- array( 'class' => 'mw-translate-edit-tmsugs' )
- );
- } else {
- return $errors;
- }
- }
-
- protected static function makeGoogleQueryParams( $definition, $pair, $config ) {
- global $wgSitename, $wgVersion, $wgSecretKey;
-
- $app = "$wgSitename (MediaWiki $wgVersion; Translate " . TRANSLATE_VERSION . ")";
- $context = RequestContext::getMain();
- $options = array();
- $options['timeout'] = $config['timeout'];
-
- $options['postData'] = array(
- 'q' => $definition,
- 'v' => '1.0',
- 'langpair' => $pair,
- // Unique but not identifiable
- 'userip' => sha1( $wgSecretKey . $context->getUser()->getName() ),
- 'x-application' => $app,
- );
-
- if ( $config['key'] ) {
- $options['postData']['key'] = $config['key'];
- }
-
- return $options;
- }
-
- protected function getMicrosoftSuggestion( $serviceName, $config ) {
- $this->mustHaveDefinition();
- self::checkTranslationServiceFailure( $serviceName );
-
- $code = $this->handle->getCode();
- $definition = trim( strval( $this->getDefinition() ) );
- $definition = self::wrapUntranslatable( $definition );
-
- $memckey = wfMemckey( 'translate-tmsug-badcodes-' . $serviceName );
- $unsupported = wfGetCache( CACHE_ANYTHING )->get( $memckey );
-
- if ( isset( $unsupported[$code] ) ) {
- throw new TranslationHelperException( 'Unsupported language' );
- }
-
- $options = array();
- $options['timeout'] = $config['timeout'];
-
- $params = array(
- 'text' => $definition,
- 'to' => $code,
- );
-
- if ( isset( $config['key'] ) ) {
- $params['appId'] = $config['key'];
- } else {
- throw new TranslationHelperException( 'API key is not set' );
- }
-
- $url = $config['url'] . '?' . wfArrayToCgi( $params );
- $url = wfExpandUrl( $url );
-
- $options['method'] = 'GET';
-
- $req = MWHttpRequest::factory( $url, $options );
-
- wfProfileIn( 'TranslateWebServiceRequest-' . $serviceName );
- $status = $req->execute();
- wfProfileOut( 'TranslateWebServiceRequest-' . $serviceName );
-
- if ( !$status->isOK() ) {
- $error = $req->getContent();
- if ( strpos( $error, 'must be a valid language' ) !== false ) {
- $unsupported[$code] = true;
- wfGetCache( CACHE_ANYTHING )->set( $memckey, $unsupported, 60 * 60 * 8 );
- throw new TranslationHelperException( 'Unsupported language code' );
- }
-
- if ( $error ) {
- error_log( __METHOD__ . ': Http::get failed:' . $error );
- } else {
- error_log( __METHOD__ . ': Unknown error, grr' );
- }
- // Most likely a timeout or other general error
- self::reportTranslationServiceFailure( $serviceName );
- }
-
- $ret = $req->getContent();
- $text = preg_replace( '~<string.*>(.*)</string>~', '\\1', $ret );
- $text = Sanitizer::decodeCharReferences( $text );
- $text = self::unwrapUntranslatable( $text );
- $text = $this->suggestionField( $text );
-
- return Html::rawElement( 'div', array(), self::legend( $serviceName ) . $text . self::clear() );
- }
-
- protected static function wrapUntranslatable( $text ) {
- $text = str_replace( "\n", "!N!", $text );
- $wrap = '<span class="notranslate">\0</span>';
- $pattern = '~%[^% ]+%|\$\d|{VAR:[^}]+}|{?{(PLURAL|GRAMMAR|GENDER):[^|]+\||%(\d\$)?[sd]~';
- $text = preg_replace( $pattern, $wrap, $text );
-
- return $text;
- }
-
- protected static function unwrapUntranslatable( $text ) {
- $text = str_replace( '!N!', "\n", $text );
- $text = preg_replace( '~<span class="notranslate">(.*?)</span>~', '\1', $text );
-
- return $text;
- }
-
- protected function getApertiumSuggestion( $serviceName, $config ) {
- self::checkTranslationServiceFailure( $serviceName );
-
- $page = $this->handle->getKey();
- $code = $this->handle->getCode();
- $ns = $this->handle->getTitle()->getNamespace();
-
- $memckey = wfMemckey( 'translate-tmsug-pairs-' . $serviceName );
- $pairs = wfGetCache( CACHE_ANYTHING )->get( $memckey );
-
- if ( !$pairs ) {
-
- $pairs = array();
- $json = Http::get( $config['pairs'], 5 );
- $response = FormatJson::decode( $json );
-
- if ( $json === false ) {
- self::reportTranslationServiceFailure( $serviceName );
- } elseif ( !is_object( $response ) ) {
- error_log( __METHOD__ . ': Unable to parse reply: ' . strval( $json ) );
- throw new TranslationHelperException( 'Malformed reply from remote server' );
- }
-
- foreach ( $response->responseData as $pair ) {
- $source = $pair->sourceLanguage;
- $target = $pair->targetLanguage;
- if ( !isset( $pairs[$target] ) ) {
- $pairs[$target] = array();
- }
- $pairs[$target][$source] = true;
- }
-
- wfGetCache( CACHE_ANYTHING )->set( $memckey, $pairs, 60 * 60 * 24 );
- }
-
- if ( isset( $config['codemap'][$code] ) ) {
- $code = $config['codemap'][$code];
- }
-
- $code = str_replace( '-', '_', wfBCP47( $code ) );
-
- if ( !isset( $pairs[$code] ) ) {
- throw new TranslationHelperException( 'Unsupported language' );
- }
-
- $suggestions = array();
-
- $codemap = array_flip( $config['codemap'] );
- foreach ( $pairs[$code] as $candidate => $unused ) {
- $mwcode = str_replace( '_', '-', strtolower( $candidate ) );
-
- if ( isset( $codemap[$mwcode] ) ) {
- $mwcode = $codemap[$mwcode];
- }
-
- $text = TranslateUtils::getMessageContent( $page, $mwcode, $ns );
- if ( $text === null || MessageHandle::hasFuzzyString( $text ) ) {
- continue;
- }
-
- $title = Title::makeTitleSafe( $ns, "$page/$mwcode" );
- $handle = new MessageHandle( $title );
- if ( $handle->isFuzzy() ) {
- continue;
- }
-
- $options = self::makeGoogleQueryParams( $text, "$candidate|$code", $config );
- $options['postData']['format'] = 'html';
-
- wfProfileIn( 'TranslateWebServiceRequest-' . $serviceName );
- $json = Http::post( $config['url'], $options );
- wfProfileOut( 'TranslateWebServiceRequest-' . $serviceName );
-
- $response = FormatJson::decode( $json );
- if ( $json === false || !is_object( $response ) ) {
- self::reportTranslationServiceFailure( $serviceName );
- } elseif ( $response->responseStatus !== 200 ) {
- error_log( __METHOD__ .
- " (HTTP {$response->responseStatus}) with ($serviceName ($candidate|$code)): " .
- $response->responseDetails
- );
- } else {
- $sug = Sanitizer::decodeCharReferences( $response->responseData->translatedText );
- $sug = trim( $sug );
- $sug = $this->suggestionField( $sug );
- $suggestions[] = Html::rawElement( 'div',
- array( 'title' => $text ),
- self::legend( "$serviceName ($candidate)" ) . $sug . self::clear()
- );
- }
- }
-
- if ( !count( $suggestions ) ) {
- throw new TranslationHelperException( 'No suggestions' );
- }
-
- $divider = Html::element( 'div', array( 'style' => 'margin-bottom: 0.5ex' ) );
-
- return implode( "$divider\n", $suggestions );
- }
-
- protected function getYandexSuggestion( $serviceName, $config ) {
- self::checkTranslationServiceFailure( $serviceName );
-
- $page = $this->handle->getKey();
- $code = $this->handle->getCode();
- $ns = $this->handle->getTitle()->getNamespace();
-
- $memckey = wfMemckey( 'translate-tmsug-pairs-' . $serviceName );
- $pairs = wfGetCache( CACHE_ANYTHING )->get( $memckey );
-
- if ( !$pairs ) {
- $pairs = array();
- $json = Http::get( $config['pairs'], $config['timeout'] );
- $response = FormatJson::decode( $json );
-
- if ( $json === false ) {
- self::reportTranslationServiceFailure( $serviceName );
- } elseif ( !is_object( $response ) ) {
- error_log( __METHOD__ . ': Unable to parse reply: ' . strval( $json ) );
- throw new TranslationHelperException( 'Malformed reply from remote server' );
- }
-
- foreach ( $response->dirs as $pair ) {
- list( $source, $target ) = explode( '-', $pair );
- if ( !isset( $pairs[$target] ) ) {
- $pairs[$target] = array();
- }
- $pairs[$target][$source] = true;
- }
-
- $weights = array_flip( $config['langorder'] );
- $cmpLangs = function ( $lang1, $lang2 ) use ( $weights ) {
- $weight1 = isset( $weights[$lang1] ) ? $weights[$lang1] : PHP_INT_MAX;
- $weight2 = isset( $weights[$lang2] ) ? $weights[$lang2] : PHP_INT_MAX;
-
- if ( $weight1 === $weight2 ) {
- return 0;
- }
-
- return ( $weight1 < $weight2 ) ? -1 : 1;
- };
-
- foreach ( $pairs as &$langs ) {
- uksort( $langs, $cmpLangs );
- }
-
- wfGetCache( CACHE_ANYTHING )->set( $memckey, $pairs, 60 * 60 * 24 );
- }
-
- if ( !isset( $pairs[$code] ) ) {
- throw new TranslationHelperException( 'Unsupported language' );
- }
-
- $suggestions = array();
-
- foreach ( $pairs[$code] as $candidate => $unused ) {
- $text = TranslateUtils::getMessageContent( $page, $candidate, $ns );
- if ( $text === null || MessageHandle::hasFuzzyString( $text ) ) {
- continue;
- }
-
- $title = Title::makeTitleSafe( $ns, "$page/$candidate" );
- $handle = new MessageHandle( $title );
- if ( $handle->isFuzzy() ) {
- continue;
- }
-
- $options = array(
- 'timeout' => $config['timeout'],
- 'postData' => array(
- 'lang' => "$candidate-$code",
- 'text' => $text,
- )
- );
- wfProfileIn( 'TranslateWebServiceRequest-' . $serviceName );
- $json = Http::post( $config['url'], $options );
- wfProfileOut( 'TranslateWebServiceRequest-' . $serviceName );
- $response = FormatJson::decode( $json );
-
- if ( $json === false || !is_object( $response ) ) {
- self::reportTranslationServiceFailure( $serviceName );
- } elseif ( $response->code !== 200 ) {
- error_log( __METHOD__ . " (HTTP {$response->code}) with ($serviceName ($candidate|$code))" );
- } else {
- $sug = Sanitizer::decodeCharReferences( $response->text[0] );
- $sug = $this->suggestionField( $sug );
- $suggestions[] = Html::rawElement( 'div',
- array( 'title' => $text ),
- self::legend( "$serviceName ($candidate)" ) . $sug . self::clear()
- );
- if ( count( $suggestions ) === $config['langlimit'] ) {
- break;
- }
- }
- }
-
- if ( $suggestions === array() ) {
- throw new TranslationHelperException( 'No suggestions' );
- }
-
- $divider = Html::element( 'div', array( 'style' => 'margin-bottom: 0.5ex' ) );
-
- return implode( "$divider\n", $suggestions );
+ return [
+ 'other-languages' => [ $this, 'getOtherLanguagesBox' ],
+ 'separator' => [ $this, 'getSeparatorBox' ],
+ 'documentation' => [ $this, 'getDocumentationBox' ],
+ 'definition' => [ $this, 'getDefinitionBox' ],
+ ];
}
public function getDefinitionBox() {
@@ -792,17 +237,17 @@ class TranslationHelpers {
$title = Linker::link(
SpecialPage::getTitleFor( 'Translate' ),
htmlspecialchars( $this->group->getLabel() ),
- array(),
- array(
+ [],
+ [
'group' => $this->group->getId(),
'language' => $this->handle->getCode()
- )
+ ]
);
$label =
- wfMessage( 'translate-edit-definition' )->text() .
- wfMessage( 'word-separator' )->text() .
- wfMessage( 'parentheses', $title )->text();
+ wfMessage( 'translate-edit-definition' )->escaped() .
+ wfMessage( 'word-separator' )->escaped() .
+ wfMessage( 'parentheses' )->rawParams( $title )->escaped();
// Source language object
$sl = Language::factory( $this->group->getSourceLanguage() );
@@ -810,17 +255,17 @@ class TranslationHelpers {
$dialogID = $this->dialogID();
$id = Sanitizer::escapeId( "def-$dialogID" );
$msg = $this->adder( $id, $sl ) . "\n" . Html::rawElement( 'div',
- array(
+ [
'class' => 'mw-translate-edit-deftext',
'dir' => $sl->getDir(),
- 'lang' => $sl->getCode(),
- ),
+ 'lang' => $sl->getHtmlCode(),
+ ],
TranslateUtils::convertWhiteSpaceToHTML( $en )
);
$msg .= $this->wrapInsert( $id, $en );
- $class = array( 'class' => 'mw-sp-translate-edit-definition mw-translate-edit-definition' );
+ $class = [ 'class' => 'mw-sp-translate-edit-definition mw-translate-edit-definition' ];
return TranslateUtils::fieldset( $label, $msg, $class );
}
@@ -830,121 +275,53 @@ class TranslationHelpers {
if ( $en === null ) {
return null;
}
- $label = wfMessage( 'translate-edit-translation' )->text();
- $class = array( 'class' => 'mw-translate-edit-translation' );
+ $label = wfMessage( 'translate-edit-translation' )->escaped();
+ $class = [ 'class' => 'mw-translate-edit-translation' ];
$msg = Html::rawElement( 'span',
- array( 'class' => 'mw-translate-edit-translationtext' ),
+ [ 'class' => 'mw-translate-edit-translationtext' ],
TranslateUtils::convertWhiteSpaceToHTML( $en )
);
return TranslateUtils::fieldset( $label, $msg, $class );
}
- public function getCheckBox() {
- $this->mustBeKnownMessage();
-
- global $wgTranslateDocumentationLanguageCode;
-
- $context = RequestContext::getMain();
- $title = $context->getOutput()->getTitle();
- list( $alias, ) = SpecialPageFactory::resolveAlias( $title->getText() );
-
- $tux = SpecialTranslate::isBeta( $context->getRequest() )
- && $title->isSpecialPage()
- && ( $alias === 'Translate' );
-
- $formattedChecks = $tux ?
- FormatJson::encode( array() ) :
- Html::element( 'div', array( 'class' => 'mw-translate-messagechecks' ) );
-
- $page = $this->handle->getKey();
- $translation = $this->getTranslation();
- $code = $this->handle->getCode();
- $en = $this->getDefinition();
-
- if ( strval( $translation ) === '' ) {
- return $formattedChecks;
- }
-
- if ( $code === $wgTranslateDocumentationLanguageCode ) {
- return $formattedChecks;
- }
-
- // We need to get the primary group of the message. It may differ from
- // the supplied group (aggregate groups, dynamic groups).
- $checker = $this->handle->getGroup()->getChecker();
- if ( !$checker ) {
- return $formattedChecks;
- }
-
- $message = new FatMessage( $page, $en );
- // Take the contents from edit field as a translation
- $message->setTranslation( $translation );
-
- $checks = $checker->checkMessage( $message, $code );
- if ( !count( $checks ) ) {
- return $formattedChecks;
- }
-
- $checkMessages = array();
-
- foreach ( $checks as $checkParams ) {
- $key = array_shift( $checkParams );
- $checkMessages[] = $context->msg( $key, $checkParams )->parse();
- }
-
- if ( $tux ) {
- $formattedChecks = FormatJson::encode( $checkMessages );
- } else {
- $formattedChecks = Html::rawElement(
- 'div',
- array( 'class' => 'mw-translate-messagechecks' ),
- TranslateUtils::fieldset(
- $context->msg( 'translate-edit-warnings' )->escaped(),
- implode( '<hr />', $checkMessages ),
- array( 'class' => 'mw-sp-translate-edit-warnings' )
- )
- );
- }
-
- return $formattedChecks;
- }
-
public function getOtherLanguagesBox() {
$code = $this->handle->getCode();
$page = $this->handle->getKey();
$ns = $this->handle->getTitle()->getNamespace();
- $boxes = array();
+ $boxes = [];
foreach ( self::getFallbacks( $code ) as $fbcode ) {
$text = TranslateUtils::getMessageContent( $page, $fbcode, $ns );
if ( $text === null ) {
continue;
}
+ $fbLanguage = Language::factory( $fbcode );
$context = RequestContext::getMain();
$label = TranslateUtils::getLanguageName( $fbcode, $context->getLanguage()->getCode() ) .
$context->msg( 'word-separator' )->text() .
- $context->msg( 'parentheses', wfBCP47( $fbcode ) )->text();
+ $context->msg( 'parentheses', $fbLanguage->getHtmlCode() )->text();
+
+ $target = $this->handle->getTitleForLanguage( $fbcode );
- $target = Title::makeTitleSafe( $ns, "$page/$fbcode" );
if ( $target ) {
- $label = self::ajaxEditLink( $target, htmlspecialchars( $label ) );
+ $label = self::ajaxEditLink( $target, $label );
}
$dialogID = $this->dialogID();
$id = Sanitizer::escapeId( "other-$fbcode-$dialogID" );
- $params = array( 'class' => 'mw-translate-edit-item' );
+ $params = [ 'class' => 'mw-translate-edit-item' ];
$display = TranslateUtils::convertWhiteSpaceToHTML( $text );
- $display = Html::rawElement( 'div', array(
- 'lang' => $fbcode,
- 'dir' => Language::factory( $fbcode )->getDir() ),
+ $display = Html::rawElement( 'div', [
+ 'lang' => $fbLanguage->getHtmlCode(),
+ 'dir' => $fbLanguage->getDir() ],
$display
);
- $contents = self::legend( $label ) . "\n" . $this->adder( $id, $fbcode ) .
+ $contents = self::legend( $label ) . "\n" . $this->adder( $id, $fbLanguage ) .
$display . self::clear();
$boxes[] = Html::rawElement( 'div', $params, $contents ) .
@@ -952,7 +329,7 @@ class TranslationHelpers {
}
if ( count( $boxes ) ) {
- $sep = Html::element( 'hr', array( 'class' => 'mw-translate-sep' ) );
+ $sep = Html::element( 'hr', [ 'class' => 'mw-translate-sep' ] );
return TranslateUtils::fieldset(
wfMessage(
@@ -960,7 +337,7 @@ class TranslationHelpers {
$page
)->escaped(),
implode( "$sep\n", $boxes ),
- array( 'class' => 'mw-sp-translate-edit-inother' )
+ [ 'class' => 'mw-sp-translate-edit-inother' ]
);
}
@@ -968,7 +345,7 @@ class TranslationHelpers {
}
public function getSeparatorBox() {
- return Html::element( 'div', array( 'class' => 'mw-translate-edit-extra' ) );
+ return Html::element( 'div', [ 'class' => 'mw-translate-edit-extra' ] );
}
public function getDocumentationBox() {
@@ -982,30 +359,24 @@ class TranslationHelpers {
$page = $this->handle->getKey();
$ns = $this->handle->getTitle()->getNamespace();
- $title = Title::makeTitle( $ns, $page . '/' . $wgTranslateDocumentationLanguageCode );
+ $title = $this->handle->getTitleForLanguage( $wgTranslateDocumentationLanguageCode );
$edit = self::ajaxEditLink(
$title,
- $context->msg( 'translate-edit-contribute' )->escaped()
+ $context->msg( 'translate-edit-contribute' )->text()
);
$info = TranslateUtils::getMessageContent( $page, $wgTranslateDocumentationLanguageCode, $ns );
$class = 'mw-sp-translate-edit-info';
- $gettext = $this->formatGettextComments();
- if ( $info !== null && $gettext ) {
- $info .= Html::element( 'hr' );
- }
- $info .= $gettext;
-
// The information is most likely in English
- $divAttribs = array( 'dir' => 'ltr', 'lang' => 'en', 'class' => 'mw-content-ltr' );
+ $divAttribs = [ 'dir' => 'ltr', 'lang' => 'en', 'class' => 'mw-content-ltr' ];
- if ( strval( $info ) === '' ) {
+ if ( (string)$info === '' ) {
$info = $context->msg( 'translate-edit-no-information' )->text();
$class = 'mw-sp-translate-edit-noinfo';
$lang = $context->getLanguage();
// The message saying that there's no info, should be translated
- $divAttribs = array( 'dir' => $lang->getDir(), 'lang' => $lang->getCode() );
+ $divAttribs = [ 'dir' => $lang->getDir(), 'lang' => $lang->getHtmlCode() ];
}
$class .= ' mw-sp-translate-message-documentation';
@@ -1015,201 +386,28 @@ class TranslationHelpers {
return TranslateUtils::fieldset(
$context->msg( 'translate-edit-information' )->rawParams( $edit )->escaped(),
- Html::rawElement( 'div', $divAttribs, $contents ), array( 'class' => $class )
- );
- }
-
- protected function formatGettextComments() {
- if ( !$this->handle->isValid() ) {
- return '';
- }
-
- // We need to get the primary group to get the correct file
- // So $group can be different from $this->group
- $group = $this->handle->getGroup();
- if ( !$group instanceof FileBasedMessageGroup ) {
- return '';
- }
-
- $ffs = $group->getFFS();
- if ( $ffs instanceof GettextFFS ) {
- global $wgContLang;
- $mykey = $wgContLang->lcfirst( $this->handle->getKey() );
- $mykey = str_replace( ' ', '_', $mykey );
- $data = $ffs->read( $group->getSourceLanguage() );
- $help = $data['TEMPLATE'][$mykey]['comments'];
- // Do not display an empty comment. That's no help and takes up unnecessary space.
- $conf = $group->getConfiguration();
- if ( isset( $conf['BASIC']['codeBrowser'] ) ) {
- $out = '';
- $pattern = $conf['BASIC']['codeBrowser'];
- $pattern = str_replace( '%FILE%', '\1', $pattern );
- $pattern = str_replace( '%LINE%', '\2', $pattern );
- $pattern = "[$pattern \\1:\\2]";
- foreach ( $help as $type => $lines ) {
- if ( $type === ':' ) {
- $files = '';
- foreach ( $lines as $line ) {
- $files .= ' ' . preg_replace( '/([^ :]+):(\d+)/', $pattern, $line );
- }
- $out .= "<nowiki>#:</nowiki> $files<br />";
- } else {
- foreach ( $lines as $line ) {
- $out .= "<nowiki>#$type</nowiki> $line<br />";
- }
- }
- }
-
- return "$out";
- }
- }
-
- return '';
- }
-
- protected function getPageDiff() {
- $this->mustBeKnownMessage();
-
- $title = $this->handle->getTitle();
- $key = $this->handle->getKey();
-
- if ( !$title->exists() ) {
- return null;
- }
-
- $definitionTitle = Title::makeTitleSafe( $title->getNamespace(), "$key/en" );
- if ( !$definitionTitle || !$definitionTitle->exists() ) {
- return null;
- }
-
- $db = wfGetDB( DB_MASTER );
- $conds = array(
- 'rt_page' => $title->getArticleID(),
- 'rt_type' => RevTag::getType( 'tp:transver' ),
- );
- $options = array(
- 'ORDER BY' => 'rt_revision DESC',
- );
-
- $latestRevision = $definitionTitle->getLatestRevID();
-
- $translationRevision = $db->selectField( 'revtag', 'rt_value', $conds, __METHOD__, $options );
- if ( $translationRevision === false ) {
- return null;
- }
-
- // Using newFromId instead of newFromTitle, because the page might have been renamed
- $oldrev = Revision::newFromId( $translationRevision );
- if ( !$oldrev ) {
- // And someone might still have deleted it
- return null;
- }
-
- $oldtext = ContentHandler::getContentText( $oldrev->getContent() );
- $newContent = Revision::newFromTitle( $definitionTitle, $latestRevision )->getContent();
- $newtext = ContentHandler::getContentText( $newContent );
-
- if ( $oldtext === $newtext ) {
- return null;
- }
-
- $diff = new DifferenceEngine;
- if ( method_exists( 'DifferenceEngine', 'setTextLanguage' ) ) {
- $diff->setTextLanguage( $this->group->getSourceLanguage() );
- }
-
- $oldContent = ContentHandler::makeContent( $oldtext, $diff->getTitle() );
- $newContent = ContentHandler::makeContent( $newtext, $diff->getTitle() );
-
- $diff->setContent( $oldContent, $newContent );
- $diff->setReducedLineNumbers();
- $diff->showDiffStyle();
-
- return $diff->getDiff(
- wfMessage( 'tpt-diff-old' )->escaped(),
- wfMessage( 'tpt-diff-new' )->escaped()
- );
- }
-
- protected function getLastDiff() {
- // Shortcuts
- $title = $this->handle->getTitle();
- $latestRevId = $title->getLatestRevID();
- $previousRevId = $title->getPreviousRevisionID( $latestRevId );
-
- $latestRev = Revision::newFromTitle( $title, $latestRevId );
- $previousRev = Revision::newFromTitle( $title, $previousRevId );
-
- $diffText = '';
-
- if ( $latestRev && $previousRev ) {
- $latest = ContentHandler::getContentText( $latestRev->getContent() );
- $previous = ContentHandler::getContentText( $previousRev->getContent() );
-
- if ( $previous !== $latest ) {
- $diff = new DifferenceEngine;
-
- if ( method_exists( 'DifferenceEngine', 'setTextLanguage' ) ) {
- $diff->setTextLanguage( $this->getTargetLanguage() );
- }
-
- $oldContent = ContentHandler::makeContent( $previous, $diff->getTitle() );
- $newContent = ContentHandler::makeContent( $latest, $diff->getTitle() );
-
- $diff->setContent( $oldContent, $newContent );
- $diff->setReducedLineNumbers();
- $diff->showDiffStyle();
- $diffText = $diff->getDiff( false, false );
- }
- }
-
- if ( !$latestRev ) {
- return null;
- }
-
- $context = RequestContext::getMain();
- $user = $latestRev->getUserText( Revision::FOR_THIS_USER, $context->getUser() );
- $comment = $latestRev->getComment();
-
- if ( $diffText === '' ) {
- if ( strval( $comment ) !== '' ) {
- $text = $context->msg( 'translate-dynagroup-byc', $user, $comment )->escaped();
- } else {
- $text = $context->msg( 'translate-dynagroup-by', $user )->escaped();
- }
- } else {
- if ( strval( $comment ) !== '' ) {
- $text = $context->msg( 'translate-dynagroup-lastc', $user, $comment )->escaped();
- } else {
- $text = $context->msg( 'translate-dynagroup-last', $user )->escaped();
- }
- }
-
- return TranslateUtils::fieldset(
- $text,
- $diffText,
- array( 'class' => 'mw-sp-translate-latestchange' )
+ Html::rawElement( 'div', $divAttribs, $contents ), [ 'class' => $class ]
);
}
/**
- * @param $label string
+ * @param string $label
* @return string
*/
protected static function legend( $label ) {
# Float it to the opposite direction
- return Html::rawElement( 'div', array( 'class' => 'mw-translate-legend' ), $label );
+ return Html::rawElement( 'div', [ 'class' => 'mw-translate-legend' ], $label );
}
/**
* @return string
*/
protected static function clear() {
- return Html::element( 'div', array( 'style' => 'clear:both;' ) );
+ return Html::element( 'div', [ 'style' => 'clear:both;' ] );
}
/**
- * @param $code string
+ * @param string $code
* @return array
*/
protected static function getFallbacks( $code ) {
@@ -1230,7 +428,7 @@ class TranslationHelpers {
}
// Global configuration settings
- $fallbacks = array();
+ $fallbacks = [];
if ( isset( $wgTranslateLanguageFallbacks[$code] ) ) {
$fallbacks = (array)$wgTranslateLanguageFallbacks[$code];
}
@@ -1243,42 +441,17 @@ class TranslationHelpers {
}
/**
- * @return null|string
- */
- public function getLazySuggestionBox() {
- $this->mustBeKnownMessage();
- if ( !$this->handle->getCode() ) {
- return null;
- }
-
- $url = SpecialPage::getTitleFor( 'Translate', 'editpage' )->getLocalUrl( array(
- 'suggestions' => 'only',
- 'page' => $this->handle->getTitle()->getPrefixedDbKey(),
- 'loadgroup' => $this->group->getId(),
- ) );
- $url = Xml::encodeJsVar( $url );
-
- $id = Sanitizer::escapeId( 'tm-lazysug-' . $this->dialogID() );
- $target = self::jQueryPathId( $id );
-
- $script = Html::inlineScript( "jQuery($target).load($url)" );
- $spinner = Html::element( 'div', array( 'class' => 'mw-ajax-loader' ) );
-
- return Html::rawElement( 'div', array( 'id' => $id ), $script . $spinner );
- }
-
- /**
* @return string
*/
public function dialogID() {
- $hash = sha1( $this->handle->getTitle()->getPrefixedDbKey() );
+ $hash = sha1( $this->handle->getTitle()->getPrefixedDBkey() );
return substr( $hash, 0, 4 );
}
/**
* @param string $source jQuery selector for element containing the source
- * @param string|Language $lang Language code or object
+ * @param Language $lang Language object
* @return string
*/
public function adder( $source, $lang ) {
@@ -1287,68 +460,47 @@ class TranslationHelpers {
}
$target = self::jQueryPathId( $this->getTextareaId() );
$source = self::jQueryPathId( $source );
- $dir = wfGetLangObj( $lang )->getDir();
- $params = array(
+ $dir = $lang->getDir();
+ $params = [
'onclick' => "jQuery($target).val(jQuery($source).text()).focus(); return false;",
'href' => '#',
'title' => wfMessage( 'translate-use-suggestion' )->text(),
'class' => 'mw-translate-adder mw-translate-adder-' . $dir,
- );
+ ];
return Html::element( 'a', $params, '↓' );
}
/**
- * @param $id string|int
- * @param $text string
+ * @param string|int $id
+ * @param string $text
* @return string
*/
public function wrapInsert( $id, $text ) {
- return Html::element( 'pre', array( 'id' => $id, 'style' => 'display: none;' ), $text );
- }
-
- /**
- * @param $text string
- * @return string
- */
- public function suggestionField( $text ) {
- static $counter = 0;
-
- $code = $this->getTargetLanguage();
-
- $counter++;
- $dialogID = $this->dialogID();
- $id = Sanitizer::escapeId( "tmsug-$dialogID-$counter" );
- $contents = Html::rawElement( 'div', array( 'lang' => $code,
- 'dir' => Language::factory( $code )->getDir() ),
- TranslateUtils::convertWhiteSpaceToHTML( $text ) );
- $contents .= $this->wrapInsert( $id, $text );
-
- return $this->adder( $id, $code ) . "\n" . $contents;
+ return Html::element( 'pre', [ 'id' => $id, 'style' => 'display: none;' ], $text );
}
/**
* Ajax-enabled message editing link.
- * @param $target Title: Title of the target message.
- * @param $text String: Link text for Linker::link()
+ * @param Title $target Title of the target message.
+ * @param string $text Link text for Linker::link()
* @return string HTML link
*/
- public static function ajaxEditLink( $target, $text ) {
+ public static function ajaxEditLink( Title $target, $text ) {
$handle = new MessageHandle( $target );
- $groupId = MessageIndex::getPrimaryGroupId( $handle );
-
- $params = array();
- $params['action'] = 'edit';
- $params['loadgroup'] = $groupId;
-
- $jsEdit = TranslationEditPage::jsEdit( $target, $groupId, 'dialog' );
+ $uri = TranslateUtils::getEditorUrl( $handle );
+ $link = Html::element(
+ 'a',
+ [ 'href' => $uri ],
+ $text
+ );
- return Linker::link( $target, $text, $jsEdit, $params );
+ return $link;
}
/**
* Escapes $id such that it can be used in jQuery selector.
- * @param $id string
+ * @param string $id
* @return string
*/
public static function jQueryPathId( $id ) {
@@ -1357,80 +509,8 @@ class TranslationHelpers {
return Xml::encodeJsVar( "#$id" );
}
- /**
- * How many failures during failure period need to happen to consider
- * the service being temporarily off-line. */
- protected static $serviceFailureCount = 5;
- /**
- * How long after the last detected failure we clear the status and
- * try again.
- */
- protected static $serviceFailurePeriod = 900;
-
- /**
- * Checks whether the given service has exceeded failure count
- * @param $service string
- * @throws TranslationHelperException
- */
- public static function checkTranslationServiceFailure( $service ) {
- $key = wfMemckey( "translate-service-$service" );
- $value = wfGetCache( CACHE_ANYTHING )->get( $key );
- if ( !is_string( $value ) ) {
- return;
- }
- list( $count, $failed ) = explode( '|', $value, 2 );
-
- if ( $failed + ( 2 * self::$serviceFailurePeriod ) < wfTimestamp() ) {
- if ( $count >= self::$serviceFailureCount ) {
- error_log( "Translation service $service (was) restored" );
- }
- wfGetCache( CACHE_ANYTHING )->delete( $key );
-
- return;
- } elseif ( $failed + self::$serviceFailurePeriod < wfTimestamp() ) {
- /* We are in suspicious mode and one failure is enough to update
- * failed timestamp. If the service works however, let's use it.
- * Previous failures are forgotten after another failure period
- * has passed */
- return;
- }
-
- if ( $count >= self::$serviceFailureCount ) {
- throw new TranslationHelperException( "web service $service is temporarily disabled" );
- }
- }
-
- /**
- * Increases the failure count for a given service
- * @param $service
- * @throws TranslationHelperException
- */
- public static function reportTranslationServiceFailure( $service ) {
- $key = wfMemckey( "translate-service-$service" );
- $value = wfGetCache( CACHE_ANYTHING )->get( $key );
- if ( !is_string( $value ) ) {
- $count = 0;
- } else {
- list( $count, ) = explode( '|', $value, 2 );
- }
-
- $count += 1;
- $failed = wfTimestamp();
- wfGetCache( CACHE_ANYTHING )->set( $key, "$count|$failed", self::$serviceFailurePeriod * 5 );
-
- if ( $count == self::$serviceFailureCount ) {
- error_log( "Translation service $service suspended" );
- } elseif ( $count > self::$serviceFailureCount ) {
- error_log( "Translation service $service still suspended" );
- }
-
- throw new TranslationHelperException( "web service $service failed to provide valid response" );
- }
-
public static function addModules( OutputPage $out ) {
- $modules = array( 'ext.translate.quickedit' );
- wfRunHooks( 'TranslateBeforeAddModules', array( &$modules ) );
- $out->addModules( $modules );
+ $out->addModuleStyles( 'ext.translate.quickedit' );
// Might be needed, but ajax doesn't load it
// Globals :(
@@ -1446,15 +526,8 @@ class TranslationHelpers {
}
/// @since 2012-01-04
- protected function mustBeTranslation() {
- if ( !$this->handle->getCode() ) {
- throw new TranslationHelperException( 'editing source language' );
- }
- }
-
- /// @since 2012-01-04
protected function mustHaveDefinition() {
- if ( strval( $this->getDefinition() ) === '' ) {
+ if ( (string)$this->getDefinition() === '' ) {
throw new TranslationHelperException( 'message does not have definition' );
}
}
@@ -1465,7 +538,6 @@ class TranslationHelpers {
* anything useful with the current message. This helps in debugging
* why some fields are not shown. See also helpers in TranslationHelpers:
* - mustBeKnownMessage()
- * - mustBeTranslation()
* - mustHaveDefinition()
* @since 2012-01-04 (Renamed in 2012-07-24 to fix typo in name)
*/
diff --git a/MLEB/Translate/utils/TranslationStats.php b/MLEB/Translate/utils/TranslationStats.php
index 0a918f47..8ec59075 100644
--- a/MLEB/Translate/utils/TranslationStats.php
+++ b/MLEB/Translate/utils/TranslationStats.php
@@ -6,7 +6,7 @@
* @author Niklas Laxström
* @author Siebrand Mazeland
* @copyright Copyright © 2010-2013, Niklas Laxström, Siebrand Mazeland
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -19,19 +19,19 @@ class TranslationStats {
* Returns translated percentage for message group in given
* languages
*
- * @param $group \string Unique key identifying the group
- * @param $languages \array List of language codes
- * @param bool|int $threshold \int Minimum required percentage translated to
+ * @param string $group Unique key identifying the group
+ * @param string[] $languages List of language codes
+ * @param bool|int $threshold Minimum required percentage translated to
* return. Other given language codes will not be returned.
- * @param $simple \bool Return only codes or code/pecentage pairs
+ * @param bool $simple Return only codes or code/pecentage pairs
*
- * @return \array Array of key value pairs code (string)/percentage
+ * @return (float|string)[] Array of key value pairs code (string)/percentage
* (float) or array of codes, depending on $simple
*/
public static function getPercentageTranslated( $group, $languages, $threshold = false,
$simple = false
) {
- $stats = array();
+ $stats = [];
$g = MessageGroups::singleton()->getGroup( $group );
diff --git a/MLEB/Translate/utils/TuxMessageTable.php b/MLEB/Translate/utils/TuxMessageTable.php
index bc77fa68..0585ac84 100644
--- a/MLEB/Translate/utils/TuxMessageTable.php
+++ b/MLEB/Translate/utils/TuxMessageTable.php
@@ -11,22 +11,22 @@ class TuxMessageTable extends ContextSource {
}
public function fullTable() {
- $modules = array( 'ext.translate.editor' );
- wfRunHooks( 'TranslateBeforeAddModules', array( &$modules ) );
+ $modules = [];
+ Hooks::run( 'TranslateBeforeAddModules', [ &$modules ] );
$this->getOutput()->addModules( $modules );
$sourceLang = Language::factory( $this->group->getSourceLanguage() );
$targetLang = Language::factory( $this->language );
$batchSize = 100;
- $list = Html::element( 'div', array(
+ $list = Html::element( 'div', [
'class' => 'row tux-messagelist',
'data-grouptype' => get_class( $this->group ),
'data-sourcelangcode' => $sourceLang->getCode(),
'data-sourcelangdir' => $sourceLang->getDir(),
'data-targetlangcode' => $targetLang->getCode(),
'data-targetlangdir' => $targetLang->getDir(),
- ) );
+ ] );
$groupId = htmlspecialchars( $this->group->getId() );
$msg = $this->msg( 'tux-messagetable-loading-messages' )
@@ -36,8 +36,7 @@ class TuxMessageTable extends ContextSource {
$loader = <<<HTML
<div class="tux-messagetable-loader hide" data-messagegroup="$groupId" data-pagesize="$batchSize">
<span class="tux-loading-indicator"></span>
- <div class="tux-messagetable-loader-count"></div>
- <div class="tux-messagetable-loader-more">$msg</div>
+ <div class="tux-messagetable-loader-info">$msg</div>
</div>
HTML;
@@ -48,7 +47,7 @@ HTML;
$modeProofread = $this->msg( 'tux-editor-proofreading-mode' )->escaped();
$actionbar = <<<HTML
-<div class="tux-action-bar row">
+<div class="tux-action-bar hide row">
<div class="three columns tux-message-list-statsbar" data-messagegroup="$groupId"></div>
<div class="three columns text-center">
<button class="toggle button tux-proofread-own-translations-button hide-own hide">
@@ -57,9 +56,9 @@ HTML;
<button class="toggle button tux-editor-clear-translated hide">$clearTranslated</button>
</div>
<div class="six columns tux-view-switcher text-center">
- <button class="toggle button down translate-mode-button">$modeTranslate
- </button><button class="toggle button down page-mode-button">$modePage
- </button><button class="toggle button hide proofread-mode-button">$modeProofread
+ <button class="toggle down translate-mode-button">$modeTranslate
+ </button><button class="toggle down page-mode-button">$modePage
+ </button><button class="toggle hide proofread-mode-button">$modeProofread
</button>
</div>
</div>
diff --git a/MLEB/Translate/utils/UserToggles.php b/MLEB/Translate/utils/UserToggles.php
index 030a3024..b3205598 100644
--- a/MLEB/Translate/utils/UserToggles.php
+++ b/MLEB/Translate/utils/UserToggles.php
@@ -6,7 +6,7 @@
* @author Siebrand Mazeland
* @author Niklas Laxström
* @copyright Copyright © 2008-2010 Siebrand Mazeland, Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -17,38 +17,30 @@ class TranslatePreferences {
* Add 'translate-pref-nonewsletter' preference.
* This is most probably specific to translatewiki.net. Can be enabled
* with $wgTranslateNewsletterPreference.
- *
- * @param $user User
- * @param $preferences array
- * @return bool true
+ * @param User $user
+ * @param array &$preferences
+ * @return bool
*/
- public static function onGetPreferences( $user, &$preferences ) {
+ public static function onGetPreferences( User $user, array &$preferences ) {
global $wgTranslateNewsletterPreference;
if ( !$wgTranslateNewsletterPreference ) {
return true;
}
- global $wgEnableEmail, $wgEnotifRevealEditorAddress;
+ global $wgEnableEmail;
// Only show if email is enabled and user has a confirmed email address.
if ( $wgEnableEmail && $user->isEmailConfirmed() ) {
// 'translate-pref-nonewsletter' is used as opt-out for
// users with a confirmed email address
- $prefs = array(
- 'translate-nonewsletter' => array(
- 'type' => 'toggle',
- 'section' => 'personal/email',
- 'label-message' => 'translate-pref-nonewsletter'
- )
- );
+ $preferences['translate-nonewsletter'] = [
+ 'type' => 'toggle',
+ 'section' => 'personal/email',
+ 'label-message' => 'translate-pref-nonewsletter'
+ ];
- // Add setting after 'enotifrevealaddr'.
- $preferences = wfArrayInsertAfter( $preferences, $prefs,
- $wgEnotifRevealEditorAddress ? 'enotifrevealaddr' : 'enotifminoredits' );
}
-
- return true;
}
/**
@@ -56,7 +48,7 @@ class TranslatePreferences {
* These are the languages also shown when translating.
*
* @param User $user
- * @param array $preferences
+ * @param array &$preferences
* @return bool true
*/
public static function translationAssistLanguages( User $user, &$preferences ) {
@@ -67,15 +59,16 @@ class TranslatePreferences {
// Get available languages.
$languages = Language::fetchLanguageNames();
- $preferences['translate-editlangs'] = array(
+ $preferences['translate-editlangs'] = [
'class' => 'HTMLJsSelectToInputField',
+ // prefs-translate
'section' => 'editing/translate',
'label-message' => 'translate-pref-editassistlang',
'help-message' => 'translate-pref-editassistlang-help',
'select' => $select,
'valid-values' => array_keys( $languages ),
'name' => 'translate-editlangs',
- );
+ ];
return true;
}
@@ -85,7 +78,7 @@ class TranslatePreferences {
* @return JsSelectToInput
*/
protected static function languageSelector() {
- if ( is_callable( array( 'LanguageNames', 'getNames' ) ) ) {
+ if ( is_callable( [ 'LanguageNames', 'getNames' ] ) ) {
$lang = RequestContext::getMain()->getLanguage();
$languages = LanguageNames::getNames( $lang->getCode(),
LanguageNames::FALLBACK_NORMAL
@@ -96,13 +89,12 @@ class TranslatePreferences {
ksort( $languages );
- $selector = new XmlSelect( 'mw-language-selector', 'mw-language-selector' );
+ $selector = new XmlSelect( false, 'mw-language-selector' );
foreach ( $languages as $code => $name ) {
$selector->addOption( "$code - $name", $code );
}
$jsSelect = new JsSelectToInput( $selector );
- $jsSelect->setSourceId( 'mw-language-selector' );
return $jsSelect;
}
diff --git a/MLEB/Translate/webservices/ApertiumWebService.php b/MLEB/Translate/webservices/ApertiumWebService.php
index 0e421a6c..21d6a885 100644
--- a/MLEB/Translate/webservices/ApertiumWebService.php
+++ b/MLEB/Translate/webservices/ApertiumWebService.php
@@ -4,8 +4,7 @@
*
* @file
* @author Niklas Laxström
- * @copyright Copyright © 2010-2013 Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -15,17 +14,25 @@
* @since 2013-01-01
*/
class ApertiumWebService extends TranslationWebService {
+ public function getType() {
+ return 'mt';
+ }
+
protected function mapCode( $code ) {
- return str_replace( '-', '_', wfBCP47( $code ) );
+ return str_replace( '-', '_', TranslateUtils::bcp47( $code ) );
}
protected function doPairs() {
- $pairs = array();
- $json = Http::get( $this->config['pairs'], $this->config['timeout'] );
+ $pairs = [];
+ $json = Http::get(
+ $this->config['pairs'],
+ [ 'timeout' => $this->config['timeout'] ],
+ __METHOD__
+ );
$response = FormatJson::decode( $json );
if ( !is_object( $response ) ) {
- $error = 'Malformed reply from remote server: ' . strval( $json );
+ $error = 'Malformed reply from remote server: ' . (string)$json;
throw new TranslationWebServiceException( $error );
}
@@ -38,53 +45,37 @@ class ApertiumWebService extends TranslationWebService {
return $pairs;
}
- protected function doRequest( $text, $from, $to ) {
- $service = $this->service;
+ protected function getQuery( $text, $from, $to ) {
+ if ( !isset( $this->config['key'] ) ) {
+ throw new TranslationWebServiceConfigurationException( 'API key is not set' );
+ }
$text = trim( $text );
$text = $this->wrapUntranslatable( $text );
- $options = array();
- $options['timeout'] = $this->config['timeout'];
- $params = array(
+ $params = [
'q' => $text,
'langpair' => "$from|$to",
- 'x-application' => "Translate " . TRANSLATE_VERSION . ")",
- );
-
- if ( $this->config['key'] ) {
- $params['key'] = $this->config['key'];
- }
-
- $url = $this->config['url'] . '?' . wfArrayToCgi( $params );
-
- $req = MWHttpRequest::factory( $url, $options );
- wfProfileIn( 'TranslateWebServiceRequest-' . $this->service );
- $status = $req->execute();
- wfProfileOut( 'TranslateWebServiceRequest-' . $this->service );
+ 'x-application' => 'MediaWiki Translate extension ' . TRANSLATE_VERSION,
+ ];
- if ( !$status->isOK() ) {
- $error = $req->getContent();
- // Most likely a timeout or other general error
- throw new TranslationWebServiceException(
- "Http::get failed:\n" .
- "* " . serialize( $error ) . "\n" .
- "* " . serialize( $status )
- );
- }
+ return TranslationQuery::factory( $this->config['url'] )
+ ->timeout( $this->config['timeout'] )
+ ->queryParameters( $params );
+ }
- $response = FormatJson::decode( $req->getContent() );
+ protected function parseResponse( TranslationQueryResponse $reply ) {
+ $body = $reply->getBody();
+ $response = FormatJson::decode( $body );
if ( !is_object( $response ) ) {
- throw new TranslationWebServiceException( serialize( $req->getContent() ) );
+ throw new TranslationWebServiceException( 'Invalid json: ' . serialize( $body ) );
} elseif ( $response->responseStatus !== 200 ) {
- $error = "(HTTP {$response->responseStatus}) with ($service ($from|$to)): " .
- $response->responseDetails;
- throw new TranslationWebServiceException( $error );
+ throw new TranslationWebServiceException( $response->responseDetails );
}
- $sug = Sanitizer::decodeCharReferences( $response->responseData->translatedText );
- $sug = $this->unwrapUntranslatable( $sug );
+ $text = Sanitizer::decodeCharReferences( $response->responseData->translatedText );
+ $text = $this->unwrapUntranslatable( $text );
- return trim( $sug );
+ return trim( $text );
}
}
diff --git a/MLEB/Translate/webservices/CxserverWebService.php b/MLEB/Translate/webservices/CxserverWebService.php
index 44800bf5..6ed7189d 100644
--- a/MLEB/Translate/webservices/CxserverWebService.php
+++ b/MLEB/Translate/webservices/CxserverWebService.php
@@ -4,7 +4,7 @@
*
* @file
* @author Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -13,27 +13,35 @@
* @since 2015.02
*/
class CxserverWebService extends TranslationWebService {
+ public function getType() {
+ return 'mt';
+ }
+
protected function mapCode( $code ) {
return $code;
}
protected function doPairs() {
if ( !isset( $this->config['host'] ) ) {
- throw new TranslationWebServiceException( 'Cxserver host not set' );
+ throw new TranslationWebServiceConfigurationException( 'Cxserver host not set' );
}
- $pairs = array();
+ $pairs = [];
- $url = $this->config['host'] . '/languagepairs';
- $json = Http::get( $url, $this->config['timeout'] );
+ $url = $this->config['host'] . '/v1/list/mt';
+ $json = Http::get(
+ $url,
+ [ $this->config['timeout'] ],
+ __METHOD__
+ );
$response = FormatJson::decode( $json, true );
if ( !is_array( $response ) ) {
- $exception = 'Malformed reply from remote server: ' . strval( $json );
+ $exception = 'Malformed reply from remote server: ' . (string)$json;
throw new TranslationWebServiceException( $exception );
}
- foreach ( $response as $source => $targets ) {
+ foreach ( $response['Apertium'] as $source => $targets ) {
foreach ( $targets as $target ) {
$pairs[$source][$target] = true;
}
@@ -42,44 +50,33 @@ class CxserverWebService extends TranslationWebService {
return $pairs;
}
- protected function doRequest( $text, $from, $to ) {
+ protected function getQuery( $text, $from, $to ) {
if ( !isset( $this->config['host'] ) ) {
- throw new TranslationWebServiceException( 'Cxserver host not set' );
+ throw new TranslationWebServiceConfigurationException( 'Cxserver host not set' );
}
- $service = $this->service;
-
$text = trim( $text );
$text = $this->wrapUntranslatable( $text );
+ $url = $this->config['host'] . "/v1/mt/$from/$to/Apertium";
- $options = array();
- $options['timeout'] = $this->config['timeout'];
- $options['method'] = 'POST';
- $options['postData'] = $text;
-
- $url = $this->config['host'] . "/mt/$from/$to";
- $req = MWHttpRequest::factory( $url, $options );
- wfProfileIn( 'TranslateWebServiceRequest-' . $service );
- $status = $req->execute();
- wfProfileOut( 'TranslateWebServiceRequest-' . $service );
-
- if ( !$status->isOK() ) {
- $error = $req->getContent();
- // Most likely a timeout or other general error
- throw new TranslationWebServiceException( "Http::get failed:\n" .
- "* " . serialize( $error ) . "\n" .
- "* " . serialize( $status )
- );
- }
+ return TranslationQuery::factory( $url )
+ ->timeout( $this->config['timeout'] )
+ ->postWithData( wfArrayToCgi( [ 'html' => $text ] ) );
+ }
- $response = FormatJson::decode( $req->getContent() );
+ protected function parseResponse( TranslationQueryResponse $reply ) {
+ $body = $reply->getBody();
+ $response = FormatJson::decode( $body );
if ( !is_object( $response ) ) {
- throw new TranslationWebServiceException( serialize( $req->getContent() ) );
+ throw new TranslationWebServiceException( 'Invalid json: ' . serialize( $body ) );
}
- $sug = preg_replace( '~^<div>(.*)</div>$~', '\1', $response->contents );
- $sug = $this->unwrapUntranslatable( $sug );
+ $text = $response->contents;
+ if ( preg_match( '~^<div>(.*)</div>$~', $text ) ) {
+ $text = preg_replace( '~^<div>(.*)</div>$~', '\1', $text );
+ }
+ $text = $this->unwrapUntranslatable( $text );
- return trim( $sug );
+ return trim( $text );
}
}
diff --git a/MLEB/Translate/webservices/MicrosoftWebService.php b/MLEB/Translate/webservices/MicrosoftWebService.php
index 391facee..f559bac7 100644
--- a/MLEB/Translate/webservices/MicrosoftWebService.php
+++ b/MLEB/Translate/webservices/MicrosoftWebService.php
@@ -4,64 +4,104 @@
*
* @file
* @author Niklas Laxström
- * @copyright Copyright © 2010-2013 Niklas Laxström
- * @license GPL-2.0+
+ * @author Ulrich Strauss
+ * @license GPL-2.0-or-later
*/
/**
* Implements support for Microsoft translation api v2.
- * @see http://msdn.microsoft.com/en-us/library/ff512421.aspx
+ * @see https://msdn.microsoft.com/en-us/library/ff512421.aspx
* @ingroup TranslationWebService
* @since 2013-01-01
*/
class MicrosoftWebService extends TranslationWebService {
+ public function getType() {
+ return 'mt';
+ }
+
protected function mapCode( $code ) {
- $map = array(
+ $map = [
'zh-hant' => 'zh-CHT',
'zh-hans' => 'zh-CHS',
- );
+ ];
return isset( $map[$code] ) ? $map[$code] : $code;
}
+ protected function getMSTokens( $clientID, $clientSecret ) {
+ $authUrl = "https://datamarket.accesscontrol.windows.net/v2/OAuth2-13/";
+
+ $params = [
+ 'grant_type' => "client_credentials",
+ 'scope' => "http://api.microsofttranslator.com",
+ 'client_id' => $clientID,
+ 'client_secret' => $clientSecret
+ ];
+
+ $params = wfArrayToCgi( $params );
+
+ $options['method'] = 'POST';
+ $options['timeout'] = $this->config['timeout'];
+ $options['postData'] = $params;
+
+ $req = MWHttpRequest::factory( $authUrl, $options );
+
+ $status = $req->execute();
+
+ if ( !$status->isOK() ) {
+ $error = $req->getContent();
+ // Most likely a timeout or other general error
+ throw new TranslationWebServiceException(
+ 'Http::get failed: ' . $authUrl . serialize( $error ) . serialize( $status )
+ );
+ }
+ $ret = $req->getContent();
+
+ $response = json_decode( $ret, true );
+ if ( isset( $response['error'] ) ) {
+ throw new TranslationWebServiceException( $response['error_description'] );
+ }
+
+ return $response['access_token'];
+ }
+
protected function doPairs() {
- if ( !isset( $this->config['key'] ) ) {
- throw new TranslationWebServiceException( 'API key is not set' );
+ if ( !isset( $this->config['clientId'] ) || !isset( $this->config['clientSecret'] ) ) {
+ throw new TranslationWebServiceConfigurationException( 'clientId or clientSecret is not set' );
}
- $options = array();
- $options['method'] = 'GET';
- $options['timeout'] = $this->config['timeout'];
+ $clientID = $this->config['clientId'];
+ $clientSecret = $this->config['clientSecret'];
- $params = array(
- 'appId' => $this->config['key'],
- );
+ // get access token from service
+ $accessToken = $this->getMSTokens( $clientID, $clientSecret );
+
+ $options = [];
+ $options['method'] = 'GET';
+ $options['timeout'] = $this->config['timeout'];
$url = 'http://api.microsofttranslator.com/V2/Http.svc/GetLanguagesForTranslate?';
- $url .= wfArrayToCgi( $params );
$req = MWHttpRequest::factory( $url, $options );
- wfProfileIn( 'TranslateWebServiceRequest-' . $this->service . '-pairs' );
- $status = $req->execute();
- wfProfileOut( 'TranslateWebServiceRequest-' . $this->service . '-pairs' );
+ $req->setHeader( 'Authorization', "Bearer $accessToken" );
+ $status = $req->execute();
if ( !$status->isOK() ) {
$error = $req->getContent();
// Most likely a timeout or other general error
- $exception = 'Http::get failed:' . serialize( $error ) . serialize( $status );
- throw new TranslationWebServiceException( $exception );
+ throw new TranslationWebServiceException(
+ 'Http::get failed:' . serialize( $error ) . serialize( $status )
+ );
}
-
$xml = simplexml_load_string( $req->getContent() );
- $languages = array();
+ $languages = [];
foreach ( $xml->string as $language ) {
- $languages[] = strval( $language );
+ $languages[] = (string)$language;
}
- // Let's make a cartesian product, assuming we can translate from any
- // language to any language
- $pairs = array();
+ // Let's make a cartesian product, assuming we can translate from any language to any language
+ $pairs = [];
foreach ( $languages as $from ) {
foreach ( $languages as $to ) {
$pairs[$from][$to] = true;
@@ -71,43 +111,57 @@ class MicrosoftWebService extends TranslationWebService {
return $pairs;
}
- protected function doRequest( $text, $from, $to ) {
- if ( !isset( $this->config['key'] ) ) {
- throw new TranslationWebServiceException( 'API key is not set' );
+ protected function getQuery( $text, $from, $to ) {
+ if ( !isset( $this->config['clientId'] ) || !isset( $this->config['clientSecret'] ) ) {
+ throw new TranslationWebServiceConfigurationException(
+ 'clientId or clientSecret is not set'
+ );
}
$text = trim( $text );
$text = $this->wrapUntranslatable( $text );
- $options = array();
- $options['timeout'] = $this->config['timeout'];
+ // get access token from service
+ $accessToken = $this->getMSTokens(
+ $this->config['clientId'],
+ $this->config['clientSecret']
+ );
- $params = array(
+ $params = [
'text' => $text,
'from' => $from,
'to' => $to,
- 'appId' => $this->config['key'],
- );
+ ];
+ $headers = [
+ 'Authorization' => 'Bearer ' . $accessToken,
+ ];
+
+ return TranslationQuery::factory( $this->config['url'] )
+ ->timeout( $this->config['timeout'] )
+ ->queryParameters( $params )
+ ->queryHeaders( $headers );
+ }
- $url = 'http://api.microsofttranslator.com/V2/Http.svc/Translate?';
- $url .= wfArrayToCgi( $params );
+ protected function parseResponse( TranslationQueryResponse $reply ) {
+ $body = $reply->getBody();
- $req = MWHttpRequest::factory( $url, $options );
- wfProfileIn( 'TranslateWebServiceRequest-' . $this->service );
- $status = $req->execute();
- wfProfileOut( 'TranslateWebServiceRequest-' . $this->service );
+ $text = preg_replace( '~<string.*>(.*)</string>~s', '\\1', $body );
+ $text = Sanitizer::decodeCharReferences( $text );
+ $text = $this->unwrapUntranslatable( $text );
- if ( !$status->isOK() ) {
- $error = $req->getContent();
- // Most likely a timeout or other general error
- $exception = 'Http::get failed: ' . $url . serialize( $error ) . serialize( $status );
- throw new TranslationWebServiceException( $exception );
- }
+ return $text;
+ }
- $ret = $req->getContent();
- $text = preg_replace( '~<string.*>(.*)</string>~', '\\1', $ret );
- $text = Sanitizer::decodeCharReferences( $text );
+ /// Override from parent
+ protected function wrapUntranslatable( $text ) {
+ $pattern = '~%[^% ]+%|\$\d|{VAR:[^}]+}|{?{(PLURAL|GRAMMAR|GENDER):[^|]+\||%(\d\$)?[sd]~';
+ $wrap = '<span translate="no">\0</span>';
+ return preg_replace( $pattern, $wrap, $text );
+ }
- return $this->unwrapUntranslatable( $text );
+ /// Override from parent
+ protected function unwrapUntranslatable( $text ) {
+ $pattern = '~<span translate="no">(.*?)</span>~';
+ return preg_replace( $pattern, '\1', $text );
}
}
diff --git a/MLEB/Translate/webservices/RemoteTTMServerWebService.php b/MLEB/Translate/webservices/RemoteTTMServerWebService.php
index 3fccee0c..c54d319a 100644
--- a/MLEB/Translate/webservices/RemoteTTMServerWebService.php
+++ b/MLEB/Translate/webservices/RemoteTTMServerWebService.php
@@ -5,7 +5,7 @@
* @file
* @author Niklas Laxström
* @copyright Copyright © 2010-2013 Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -15,20 +15,8 @@
* @since 2013-01-01
*/
class RemoteTTMServerWebService extends TranslationWebService {
- public function getSuggestions( $translations, $from, $to ) {
- if ( $this->checkTranslationServiceFailure() ) {
- return array();
- }
-
- try {
- $text = $translations[$from];
-
- return $this->doRequest( $text, $from, $to );
- } catch ( Exception $e ) {
- $this->reportTranslationServiceFailure( $e );
-
- return array();
- }
+ public function getType() {
+ return 'ttmserver';
}
protected function mapCode( $code ) {
@@ -39,36 +27,29 @@ class RemoteTTMServerWebService extends TranslationWebService {
return null; // Unused
}
- protected function doRequest( $text, $from, $to ) {
- $params = array(
+ protected function getQuery( $text, $from, $to ) {
+ $params = [
'format' => 'json',
'action' => 'ttmserver',
'sourcelanguage' => $from,
'targetlanguage' => $to,
- 'text' => $text,
- '*', // Because we hate IE
- );
-
- $url = $this->config['url'] . '?';
- $url .= wfArrayToCgi( $params );
- $req = MWHttpRequest::factory( $url );
- wfProfileIn( 'TranslateWebServiceRequest-' . $this->service );
- $status = $req->execute();
- wfProfileOut( 'TranslateWebServiceRequest-' . $this->service );
- $response = $req->getContent();
+ 'text' => $text
+ ];
- if ( !$status->isOK() ) {
- // Most likely a timeout or other general error
- throw new TranslationWebServiceException(
- "Http::get failed:\n" .
- "* " . serialize( $response ) . "\n" .
- "* " . serialize( $status )
- );
+ if ( isset( $this->config['service'] ) ) {
+ $params['service'] = $this->config['service'];
}
- $parsed = FormatJson::decode( $response, true );
+ return TranslationQuery::factory( $this->config['url'] )
+ ->timeout( $this->config['timeout'] )
+ ->queryParameters( $params );
+ }
+
+ protected function parseResponse( TranslationQueryResponse $reply ) {
+ $body = $reply->getBody();
+ $parsed = FormatJson::decode( $body, true );
if ( !is_array( $parsed ) ) {
- throw new TranslationWebServiceException( serialize( $response ) );
+ throw new TranslationWebServiceException( 'Invalid json: ' . serialize( $body ) );
}
if ( !isset( $parsed['ttmserver'] ) ) {
diff --git a/MLEB/Translate/webservices/TranslationWebService.php b/MLEB/Translate/webservices/TranslationWebService.php
index 1a9e85a7..77f0d13d 100644
--- a/MLEB/Translate/webservices/TranslationWebService.php
+++ b/MLEB/Translate/webservices/TranslationWebService.php
@@ -1,13 +1,16 @@
<?php
/**
- * Contains code related to webs ervice support.
+ * Contains code related to web service support.
*
* @file
* @author Niklas Laxström
- * @copyright Copyright © 2010-2013 Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
+use MediaWiki\Logger\LoggerFactory;
+use Psr\Log\LoggerAwareInterface;
+use Psr\Log\LoggerInterface;
+
/**
* Multipurpose class:
* - 1) Interface for web services.
@@ -17,7 +20,7 @@
* @since 2013-01-01
* @defgroup TranslationWebService Translation Web Services
*/
-abstract class TranslationWebService {
+abstract class TranslationWebService implements LoggerAwareInterface {
/* Public api */
/**
@@ -29,92 +32,106 @@ abstract class TranslationWebService {
* @return TranslationWebService|null
*/
public static function factory( $name, $config ) {
- $handlers = array(
+ $handlers = [
'microsoft' => 'MicrosoftWebService',
'apertium' => 'ApertiumWebService',
'yandex' => 'YandexWebService',
- 'ttmserver' => 'RemoteTTMServerWebService',
+ 'remote-ttmserver' => 'RemoteTTMServerWebService',
'cxserver' => 'CxserverWebService',
- );
+ 'restbase' => 'RESTBaseWebService',
+ 'caighdean' => 'CaighdeanWebService',
+ ];
if ( !isset( $config['timeout'] ) ) {
$config['timeout'] = 3;
}
+ // Alter local ttmserver instance to appear as remote
+ // to take advantage of the query aggregator. But only
+ // if they are public.
+ if (
+ isset( $config['class'] ) &&
+ $config['class'] === 'ElasticSearchTTMServer' &&
+ isset( $config['public'] ) &&
+ $config['public'] === true
+ ) {
+ $config['type'] = 'remote-ttmserver';
+ $config['service'] = $name;
+ $config['url'] = wfExpandUrl( wfScript( 'api' ), PROTO_CANONICAL );
+ }
+
if ( isset( $handlers[$config['type']] ) ) {
$class = $handlers[$config['type']];
- return new $class( $name, $config );
+ $obj = new $class( $name, $config );
+ $obj->setLogger( LoggerFactory::getInstance( 'translationservices' ) );
+ return $obj;
}
return null;
}
/**
- * Do the only supported thing for web services: get a suggestion for
- * translation. Prefers source language as input for suggestions.
+ * Gets the name of this service, for example to display it for the user.
*
- * @param array $translations List of all translations listed by language code.
- * @param string $sourceLanguage Language code as used by MediaWiki.
- * @param string $targetLanguage Language code as used by MediaWiki.
- * @return array[] The returned suggestion arrays contain the following keys:
- * - value: the suggestion
- * - language: the language of the suggestion (=$targetLanguage)
- * - source_text: the text used as input for the web service
- * - source_language: the language of the text used as input
- * - service: name of the web service
+ * @return string Plain text name for this service.
+ * @since 2014.02
*/
- public function getSuggestions( $translations, $sourceLanguage, $targetLanguage ) {
- if ( $this->checkTranslationServiceFailure() ) {
- return array();
- }
-
- $from = $this->mapCode( $sourceLanguage );
- $to = $this->mapCode( $targetLanguage );
+ public function getName() {
+ return $this->service;
+ }
+ /**
+ * Get queries for this service. Queries from multiple services can be
+ * collected and run asynchronously with QueryAggregator.
+ *
+ * @param string $text Source text
+ * @param string $from Source language
+ * @param string $to Target language
+ * @return TranslationQuery[]
+ * @since 2015.12
+ * @throws TranslationWebServiceConfigurationException
+ */
+ public function getQueries( $text, $from, $to ) {
try {
- $results = array();
-
- // Try to use the source language when possible.
- $supported = $this->getSupportedLanguagePairs();
- if ( isset( $supported[$from][$to] ) && isset( $translations[$from] ) ) {
- // Delete all the other languages.
- // Use the unmapped code to avoid double mapping
- $translations = array( $sourceLanguage => $translations[$from] );
- }
-
- // Loop of the the translations we have to see which can be used as source
- // @todo: Support setting priority of languages like Yandex used to have
- foreach ( $translations as $language => $text ) {
- $from = $this->mapCode( $language );
-
- if ( isset( $supported[$from][$to] ) ) {
- $sug = $this->doRequest( $text, $from, $to );
- if ( strval( $sug === '' ) ) {
- continue;
- }
-
- $results[] = array(
- 'target' => $sug,
- 'service' => $this->service,
- 'source_language' => $language,
- 'source' => $text,
- );
- }
-
- if ( count( $results ) >= 3 ) {
- break;
- }
- }
+ return [ $this->getQuery( $text, $from, $to ) ];
+ } catch ( TranslationWebServiceException $e ) {
+ $this->reportTranslationServiceFailure( $e->getMessage() );
+ return [];
+ } catch ( TranslationWebServiceInvalidInputException $e ) {
+ // Not much we can do about this, just ignore.
+ return [];
+ }
+ }
- return $results;
- } catch ( Exception $e ) {
- $this->reportTranslationServiceFailure( $e );
+ /**
+ * Get the web service specific response returned by QueryAggregator.
+ *
+ * @param TranslationQueryResponse $response
+ * @return mixed|null Returns null on error.
+ * @since 2015.12
+ */
+ public function getResultData( TranslationQueryResponse $response ) {
+ if ( $response->getStatusCode() !== 200 ) {
+ $this->reportTranslationServiceFailure( $response->getStatusMessage() );
+ return null;
+ }
- return array();
+ try {
+ return $this->parseResponse( $response );
+ } catch ( TranslationWebServiceException $e ) {
+ $this->reportTranslationServiceFailure( $e->getMessage() );
+ return null;
}
}
+ /**
+ * Returns the type of this web service.
+ * @see TranslationAid::getTypes
+ * @return string
+ */
+ abstract public function getType();
+
/* Service api */
/**
@@ -132,18 +149,34 @@ abstract class TranslationWebService {
* getSupportedLanguagePairs.
*
* @return array $list[source language][target language] = true
+ * @throws TranslationWebServiceException
+ * @throws TranslationWebServiceConfigurationException
*/
abstract protected function doPairs();
/**
- * Get the suggestion. See getSuggestions for the public method.
+ * Get the query. See getQueries for the public method.
*
* @param string $text Text to translate.
* @param string $from Language code of the text, as used by the service.
* @param string $to Language code of the translation, as used by the service.
- * @return string Translation suggestion.
+ * @return TranslationQuery
+ * @since 2015.02
+ * @throws TranslationWebServiceException
+ * @throws TranslationWebServiceConfigurationException
+ * @throws TranslationWebServiceInvalidInputException
+ */
+ abstract protected function getQuery( $text, $from, $to );
+
+ /**
+ * Get the response. See getResultData for the public method.
+ *
+ * @param TranslationQueryResponse $response
+ * @return string
+ * @since 2015.02
+ * @throws TranslationWebServiceException
*/
- abstract protected function doRequest( $text, $from, $to );
+ abstract protected function parseResponse( TranslationQueryResponse $response );
/* Default implementation */
@@ -157,19 +190,45 @@ abstract class TranslationWebService {
*/
protected $config;
+ /**
+ * TranslationWebService constructor.
+ * @param string $service Name of the webservice
+ * @param array $config
+ */
protected function __construct( $service, $config ) {
$this->service = $service;
$this->config = $config;
}
/**
- * @see doPairs
+ * Test whether given language pair is supported by the service.
+ *
+ * @param string $from Source language
+ * @param string $to Target language
+ * @return bool
+ * @since 2015.12
+ * @throws TranslationWebServiceConfigurationException
+ */
+ public function isSupportedLanguagePair( $from, $to ) {
+ $pairs = $this->getSupportedLanguagePairs();
+ return isset( $pairs[$from][$to] );
+ }
+
+ /**
+ * @see self::doPairs
+ * @return array
+ * @throws TranslationWebServiceConfigurationException
*/
protected function getSupportedLanguagePairs() {
- $key = wfMemckey( 'translate-tmsug-pairs-' . $this->service );
+ $key = wfMemcKey( 'translate-tmsug-pairs-' . $this->service );
$pairs = wfGetCache( CACHE_ANYTHING )->get( $key );
if ( !is_array( $pairs ) ) {
- $pairs = $this->doPairs();
+ try {
+ $pairs = $this->doPairs();
+ } catch ( Exception $e ) {
+ $this->reportTranslationServiceFailure( $e->getMessage() );
+ return [];
+ }
// Cache the result for a day
wfGetCache( CACHE_ANYTHING )->set( $key, $pairs, 60 * 60 * 24 );
}
@@ -181,36 +240,41 @@ abstract class TranslationWebService {
* Some mangling that tries to keep some parts of the message unmangled
* by the translation service. Most of them support either class=notranslate
* or translate=no.
+ * @param string $text
+ * @return string
*/
protected function wrapUntranslatable( $text ) {
- $text = str_replace( "\n", "!N!", $text );
+ $text = str_replace( "\n", '!N!', $text );
$pattern = '~%[^% ]+%|\$\d|{VAR:[^}]+}|{?{(PLURAL|GRAMMAR|GENDER):[^|]+\||%(\d\$)?[sd]~';
$wrap = '<span class="notranslate" translate="no">\0</span>';
- $text = preg_replace( $pattern, $wrap, $text );
-
- return $text;
+ return preg_replace( $pattern, $wrap, $text );
}
/**
* Undo the hopyfully untouched mangling done by wrapUntranslatable.
+ * @param string $text
+ * @return string
*/
protected function unwrapUntranslatable( $text ) {
$text = str_replace( '!N!', "\n", $text );
$pattern = '~<span class="notranslate" translate="no">(.*?)</span>~';
- $text = preg_replace( $pattern, '\1', $text );
-
- return $text;
+ return preg_replace( $pattern, '\1', $text );
}
/* Failure handling and suspending */
+ public function setLogger( LoggerInterface $logger ) {
+ $this->logger = $logger;
+ }
+
/**
- * How many failures during failure period need to happen to consider
- * the service being temporarily off-line.
+ * @var int How many failures during failure period need to happen to
+ * consider the service being temporarily off-line.
*/
protected $serviceFailureCount = 5;
+
/**
- * How long after the last detected failure we clear the status and
+ * @var int How long after the last detected failure we clear the status and
* try again.
*/
protected $serviceFailurePeriod = 900;
@@ -221,7 +285,7 @@ abstract class TranslationWebService {
*/
public function checkTranslationServiceFailure() {
$service = $this->service;
- $key = wfMemckey( "translate-service-$service" );
+ $key = wfMemcKey( "translate-service-$service" );
$value = wfGetCache( CACHE_ANYTHING )->get( $key );
if ( !is_string( $value ) ) {
return false;
@@ -230,7 +294,7 @@ abstract class TranslationWebService {
if ( $failed + ( 2 * $this->serviceFailurePeriod ) < wfTimestamp() ) {
if ( $count >= $this->serviceFailureCount ) {
- wfDebugLog( 'translationservices', "Translation service $service (was) restored" );
+ $this->logger->warning( "Translation service $service (was) restored" );
}
wfGetCache( CACHE_ANYTHING )->delete( $key );
@@ -249,15 +313,13 @@ abstract class TranslationWebService {
/**
* Increases the failure count for this service
+ * @param string $msg
*/
- protected function reportTranslationServiceFailure( Exception $e ) {
+ protected function reportTranslationServiceFailure( $msg ) {
$service = $this->service;
- wfDebugLog(
- 'translationservices',
- "Translation service $service problem: " . $e->getMessage()
- );
+ $this->logger->warning( "Translation service $service problem: $msg" );
- $key = wfMemckey( "translate-service-$service" );
+ $key = wfMemcKey( "translate-service-$service" );
$value = wfGetCache( CACHE_ANYTHING )->get( $key );
if ( !is_string( $value ) ) {
$count = 0;
@@ -265,7 +327,7 @@ abstract class TranslationWebService {
list( $count, ) = explode( '|', $value, 2 );
}
- $count += 1;
+ $count++;
$failed = wfTimestamp();
wfGetCache( CACHE_ANYTHING )->set(
$key,
@@ -273,10 +335,10 @@ abstract class TranslationWebService {
$this->serviceFailurePeriod * 5
);
- if ( $count == $this->serviceFailureCount ) {
- wfDebugLog( 'translationservices', "Translation service $service suspended" );
+ if ( $count === $this->serviceFailureCount ) {
+ $this->logger->error( "Translation service $service suspended" );
} elseif ( $count > $this->serviceFailureCount ) {
- wfDebugLog( 'translationservices', "Translation service $service still suspended" );
+ $this->logger->warning( "Translation service $service still suspended" );
}
}
}
diff --git a/MLEB/Translate/webservices/TranslationWebServiceException.php b/MLEB/Translate/webservices/TranslationWebServiceException.php
index af5368ca..fa4c1240 100644
--- a/MLEB/Translate/webservices/TranslationWebServiceException.php
+++ b/MLEB/Translate/webservices/TranslationWebServiceException.php
@@ -5,7 +5,7 @@
* @file
* @author Niklas Laxström
* @copyright Copyright © 2010-2013 Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
diff --git a/MLEB/Translate/webservices/YandexWebService.php b/MLEB/Translate/webservices/YandexWebService.php
index f830e471..fbb16844 100644
--- a/MLEB/Translate/webservices/YandexWebService.php
+++ b/MLEB/Translate/webservices/YandexWebService.php
@@ -4,17 +4,20 @@
*
* @file
* @author Niklas Laxström
- * @copyright Copyright © 2010-2013 Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
* Implements support for Yandex translation api v1.
- * @see http://api.yandex.com/translate/
+ * @see https://tech.yandex.com/translate/
* @ingroup TranslationWebService
* @since 2013-01-01
*/
class YandexWebService extends TranslationWebService {
+ public function getType() {
+ return 'mt';
+ }
+
protected function mapCode( $code ) {
if ( $code === 'be-tarask' ) {
$code = 'be';
@@ -24,21 +27,25 @@ class YandexWebService extends TranslationWebService {
protected function doPairs() {
if ( !isset( $this->config['key'] ) ) {
- throw new TranslationWebServiceException( 'API key is not set' );
+ throw new TranslationWebServiceConfigurationException( 'API key is not set' );
}
- $pairs = array();
+ $pairs = [];
- $params = array(
+ $params = [
'key' => $this->config['key'],
- );
+ ];
$url = $this->config['pairs'] . '?' . wfArrayToCgi( $params );
- $json = Http::get( $url, $this->config['timeout'] );
+ $json = Http::get(
+ $url,
+ [ 'timeout' => $this->config['timeout'] ],
+ __METHOD__
+ );
$response = FormatJson::decode( $json );
if ( !is_object( $response ) ) {
- $exception = 'Malformed reply from remote server: ' . strval( $json );
+ $exception = 'Malformed reply from remote server: ' . (string)$json;
throw new TranslationWebServiceException( $exception );
}
@@ -50,58 +57,43 @@ class YandexWebService extends TranslationWebService {
return $pairs;
}
- protected function doRequest( $text, $from, $to ) {
+ protected function getQuery( $text, $from, $to ) {
if ( !isset( $this->config['key'] ) ) {
- throw new TranslationWebServiceException( 'API key is not set' );
+ throw new TranslationWebServiceConfigurationException( 'API key is not set' );
}
- # http://api.yandex.com/translate/doc/dg/reference/translate.xml
+ # https://tech.yandex.com/translate/doc/dg/reference/translate-docpage/
if ( strlen( $text ) > 10000 ) {
- throw new TranslationWebServiceException( 'Source text too long' );
+ throw new TranslationWebServiceInvalidInputException( 'Source text too long' );
}
- $service = $this->service;
-
$text = trim( $text );
$text = $this->wrapUntranslatable( $text );
- $options = array();
- $options['timeout'] = $this->config['timeout'];
- $options['method'] = 'POST';
- $options['postData'] = array(
- 'key' => $this->config['key'],
- 'text' => $text,
- 'lang' => "$from-$to",
- 'format' => 'html',
- );
-
- $url = $this->config['url'];
- $req = MWHttpRequest::factory( $url, $options );
- wfProfileIn( 'TranslateWebServiceRequest-' . $service );
- $status = $req->execute();
- wfProfileOut( 'TranslateWebServiceRequest-' . $service );
-
- if ( !$status->isOK() ) {
- $error = $req->getContent();
- // Most likely a timeout or other general error
- throw new TranslationWebServiceException( "Http::get failed:\n" .
- "* " . serialize( $error ) . "\n" .
- "* " . serialize( $status )
+ return TranslationQuery::factory( $this->config['url'] )
+ ->timeout( $this->config['timeout'] )
+ ->postWithData(
+ [
+ 'key' => $this->config['key'],
+ 'text' => $text,
+ 'lang' => "$from-$to",
+ 'format' => 'html',
+ ]
);
- }
+ }
- $response = FormatJson::decode( $req->getContent() );
+ protected function parseResponse( TranslationQueryResponse $reply ) {
+ $body = $reply->getBody();
+ $response = FormatJson::decode( $body );
if ( !is_object( $response ) ) {
- throw new TranslationWebServiceException( serialize( $req->getContent() ) );
+ throw new TranslationWebServiceException( 'Invalid json: ' . serialize( $body ) );
} elseif ( $response->code !== 200 ) {
- $exception = "(HTTP {$response->code}) with ($service ($from|$to)): " .
- $response->message;
- throw new TranslationWebServiceException( $exception );
+ throw new TranslationWebServiceException( $response->message );
}
- $sug = Sanitizer::decodeCharReferences( $response->text[0] );
- $sug = $this->unwrapUntranslatable( $sug );
+ $text = Sanitizer::decodeCharReferences( $response->text[0] );
+ $text = $this->unwrapUntranslatable( $text );
- return trim( $sug );
+ return trim( $text );
}
}
diff --git a/MLEB/UniversalLanguageSelector/.gitignore b/MLEB/UniversalLanguageSelector/.gitignore
deleted file mode 100644
index 28df33c6..00000000
--- a/MLEB/UniversalLanguageSelector/.gitignore
+++ /dev/null
@@ -1,7 +0,0 @@
-.svn
-*~
-*.kate-swp
-.*.swp
-.idea
-.bundle/
-node_modules/
diff --git a/MLEB/UniversalLanguageSelector/.gitreview b/MLEB/UniversalLanguageSelector/.gitreview
deleted file mode 100644
index f85a7610..00000000
--- a/MLEB/UniversalLanguageSelector/.gitreview
+++ /dev/null
@@ -1,6 +0,0 @@
-[gerrit]
-host=gerrit.wikimedia.org
-port=29418
-project=mediawiki/extensions/UniversalLanguageSelector.git
-defaultbranch=REL1_26
-defaultrebase=0
diff --git a/MLEB/UniversalLanguageSelector/.jshintignore b/MLEB/UniversalLanguageSelector/.jshintignore
deleted file mode 100644
index 4c02d63b..00000000
--- a/MLEB/UniversalLanguageSelector/.jshintignore
+++ /dev/null
@@ -1,4 +0,0 @@
-# upstream libs
-lib/*
-# Generated file that contains JSON. Would fail "Strings must use singlequote."
-resources/js/ext.uls.webfonts.repository.js
diff --git a/MLEB/UniversalLanguageSelector/.jshintrc b/MLEB/UniversalLanguageSelector/.jshintrc
deleted file mode 100644
index cfe8a311..00000000
--- a/MLEB/UniversalLanguageSelector/.jshintrc
+++ /dev/null
@@ -1,32 +0,0 @@
-{
-
- "camelcase": true,
- "curly": true,
- "eqeqeq": true,
- "immed": true,
- "latedef": true,
- "newcap": true,
- "noarg": true,
- "noempty": true,
- "nonew": true,
- "quotmark": "single",
- "trailing": true,
- "undef": true,
- "unused": true,
-
- "bitwise": true,
- "forin": false,
- "regexp": false,
- "strict": true,
- "laxbreak": true,
- "smarttabs": true,
- "multistr": true,
- "browser": true,
- "onevar": true,
-
- "predef": [
- "mediaWiki",
- "jQuery",
- "QUnit"
- ]
-}
diff --git a/MLEB/UniversalLanguageSelector/.rubocop.yml b/MLEB/UniversalLanguageSelector/.rubocop.yml
deleted file mode 100644
index cc32da4b..00000000
--- a/MLEB/UniversalLanguageSelector/.rubocop.yml
+++ /dev/null
@@ -1 +0,0 @@
-inherit_from: .rubocop_todo.yml
diff --git a/MLEB/UniversalLanguageSelector/.rubocop_todo.yml b/MLEB/UniversalLanguageSelector/.rubocop_todo.yml
deleted file mode 100644
index e80fb512..00000000
--- a/MLEB/UniversalLanguageSelector/.rubocop_todo.yml
+++ /dev/null
@@ -1,125 +0,0 @@
-# This configuration was generated by `rubocop --auto-gen-config`
-# on 2014-10-21 16:45:03 +0200 using RuboCop version 0.26.1.
-# The point is for the user to remove these configuration records
-# one by one as the offenses are removed from the code base.
-# Note that changes in the inspected code, or installation of new
-# versions of RuboCop, may require this file to be generated again.
-
-# Offense count: 1
-Lint/AmbiguousRegexpLiteral:
- Enabled: false
-
-# Offense count: 1
-# Cop supports --auto-correct.
-Lint/BlockAlignment:
- Enabled: false
-
-# Offense count: 1
-# Configuration parameters: AlignWith, SupportedStyles.
-Lint/DefEndAlignment:
- Enabled: false
-
-# Offense count: 1
-Metrics/CyclomaticComplexity:
- Max: 7
-
-# Offense count: 17
-# Configuration parameters: AllowURI, URISchemes.
-Metrics/LineLength:
- Max: 168
-
-# Offense count: 1
-# Configuration parameters: CountComments.
-Metrics/MethodLength:
- Max: 16
-
-# Offense count: 1
-# Cop supports --auto-correct.
-# Configuration parameters: EnforcedStyle, SupportedStyles.
-Style/AccessModifierIndentation:
- Enabled: false
-
-# Offense count: 1
-# Cop supports --auto-correct.
-# Configuration parameters: EnforcedStyle, SupportedStyles.
-Style/BracesAroundHashParameters:
- Enabled: false
-
-# Offense count: 6
-# Configuration parameters: IndentWhenRelativeTo, SupportedStyles, IndentOneStep.
-Style/CaseIndentation:
- Enabled: false
-
-# Offense count: 1
-# Cop supports --auto-correct.
-# Configuration parameters: PreferredMethods.
-Style/CollectionMethods:
- Enabled: false
-
-# Offense count: 9
-Style/Documentation:
- Enabled: false
-
-# Offense count: 1
-# Cop supports --auto-correct.
-Style/EmptyLinesAroundAccessModifier:
- Enabled: false
-
-# Offense count: 1
-# Cop supports --auto-correct.
-Style/EmptyLinesAroundBody:
- Enabled: false
-
-# Offense count: 1
-# Configuration parameters: AllowedVariables.
-Style/GlobalVars:
- Enabled: false
-
-# Offense count: 7
-# Cop supports --auto-correct.
-# Configuration parameters: EnforcedStyle, SupportedStyles.
-Style/HashSyntax:
- Enabled: false
-
-# Offense count: 1
-# Cop supports --auto-correct.
-Style/IndentationConsistency:
- Enabled: false
-
-# Offense count: 90
-# Cop supports --auto-correct.
-Style/IndentationWidth:
- Enabled: false
-
-# Offense count: 2
-# Cop supports --auto-correct.
-Style/LeadingCommentSpace:
- Enabled: false
-
-# Offense count: 8
-# Cop supports --auto-correct.
-# Configuration parameters: EnforcedStyleForEmptyBraces, SupportedStyles.
-Style/SpaceInsideHashLiteralBraces:
- EnforcedStyle: no_space
-
-# Offense count: 10
-# Cop supports --auto-correct.
-Style/SpaceInsideParens:
- Enabled: false
-
-# Offense count: 130
-# Cop supports --auto-correct.
-# Configuration parameters: EnforcedStyle, SupportedStyles.
-Style/StringLiterals:
- Enabled: false
-
-# Offense count: 216
-# Cop supports --auto-correct.
-Style/Tab:
- Enabled: false
-
-# Offense count: 1
-# Cop supports --auto-correct.
-# Configuration parameters: EnforcedStyle, SupportedStyles.
-Style/TrailingBlankLines:
- Enabled: false
diff --git a/MLEB/UniversalLanguageSelector/CREDITS b/MLEB/UniversalLanguageSelector/CREDITS
index 51b31ed6..f4ef3d0f 100644
--- a/MLEB/UniversalLanguageSelector/CREDITS
+++ b/MLEB/UniversalLanguageSelector/CREDITS
@@ -7,6 +7,8 @@ recognize the following names for their contribution to the product.
* Amir Aharoni
* Arun Ganesh
* Brandon Harris
+* Kartik Mistry
+* Niharika Kohli
* Niklas Laxström
* Pau Giner
* Santhosh Thottingal
diff --git a/MLEB/UniversalLanguageSelector/Gemfile b/MLEB/UniversalLanguageSelector/Gemfile
deleted file mode 100644
index db0d9c59..00000000
--- a/MLEB/UniversalLanguageSelector/Gemfile
+++ /dev/null
@@ -1,7 +0,0 @@
-#ruby=ruby-2.1.2
-#ruby-gemset=UniversalLanguageSelector
-
-source "https://rubygems.org"
-
-gem 'mediawiki_selenium', '~> 0.4.2'
-gem "rubocop", require: false
diff --git a/MLEB/UniversalLanguageSelector/Gemfile.lock b/MLEB/UniversalLanguageSelector/Gemfile.lock
deleted file mode 100644
index f220a958..00000000
--- a/MLEB/UniversalLanguageSelector/Gemfile.lock
+++ /dev/null
@@ -1,97 +0,0 @@
-GEM
- remote: https://rubygems.org/
- specs:
- ast (2.0.0)
- astrolabe (1.3.0)
- parser (>= 2.2.0.pre.3, < 3.0)
- builder (3.2.2)
- childprocess (0.5.5)
- ffi (~> 1.0, >= 1.0.11)
- cucumber (1.3.19)
- builder (>= 2.1.2)
- diff-lcs (>= 1.1.3)
- gherkin (~> 2.12)
- multi_json (>= 1.7.5, < 2.0)
- multi_test (>= 0.1.2)
- data_magic (0.20)
- faker (>= 1.1.2)
- yml_reader (>= 0.4)
- diff-lcs (1.2.5)
- domain_name (0.5.23)
- unf (>= 0.0.5, < 1.0.0)
- faker (1.4.3)
- i18n (~> 0.5)
- faraday (0.9.1)
- multipart-post (>= 1.2, < 3)
- faraday-cookie_jar (0.0.6)
- faraday (>= 0.7.4)
- http-cookie (~> 1.0.0)
- ffi (1.9.8)
- gherkin (2.12.2)
- multi_json (~> 1.3)
- headless (1.0.2)
- http-cookie (1.0.2)
- domain_name (~> 0.5)
- i18n (0.7.0)
- json (1.8.2)
- mediawiki_api (0.3.1)
- faraday (~> 0.9, >= 0.9.0)
- faraday-cookie_jar (~> 0.0, >= 0.0.6)
- mediawiki_selenium (0.4.2)
- cucumber (~> 1.3, >= 1.3.10)
- headless (~> 1.0, >= 1.0.1)
- json (~> 1.8, >= 1.8.1)
- mediawiki_api (~> 0.2, >= 0.2.1)
- page-object (~> 1.0)
- rest-client (~> 1.6, >= 1.6.7)
- rspec-expectations (~> 2.14, >= 2.14.4)
- syntax (~> 1.2, >= 1.2.0)
- mime-types (2.4.3)
- multi_json (1.11.0)
- multi_test (0.1.2)
- multipart-post (2.0.0)
- netrc (0.10.3)
- page-object (1.0.3)
- page_navigation (>= 0.9)
- selenium-webdriver (>= 2.44.0)
- watir-webdriver (>= 0.6.11)
- page_navigation (0.9)
- data_magic (>= 0.14)
- parser (2.2.0.3)
- ast (>= 1.1, < 3.0)
- powerpack (0.1.0)
- rainbow (2.0.0)
- rest-client (1.8.0)
- http-cookie (>= 1.0.2, < 2.0)
- mime-types (>= 1.16, < 3.0)
- netrc (~> 0.7)
- rspec-expectations (2.99.2)
- diff-lcs (>= 1.1.3, < 2.0)
- rubocop (0.29.1)
- astrolabe (~> 1.3)
- parser (>= 2.2.0.1, < 3.0)
- powerpack (~> 0.1)
- rainbow (>= 1.99.1, < 3.0)
- ruby-progressbar (~> 1.4)
- ruby-progressbar (1.7.5)
- rubyzip (1.1.7)
- selenium-webdriver (2.45.0)
- childprocess (~> 0.5)
- multi_json (~> 1.0)
- rubyzip (~> 1.0)
- websocket (~> 1.0)
- syntax (1.2.0)
- unf (0.1.4)
- unf_ext
- unf_ext (0.0.6)
- watir-webdriver (0.7.0)
- selenium-webdriver (>= 2.45)
- websocket (1.2.1)
- yml_reader (0.5)
-
-PLATFORMS
- ruby
-
-DEPENDENCIES
- mediawiki_selenium (~> 0.4.2)
- rubocop
diff --git a/MLEB/UniversalLanguageSelector/Gruntfile.js b/MLEB/UniversalLanguageSelector/Gruntfile.js
index 34bc8f1d..4d11aeb9 100644
--- a/MLEB/UniversalLanguageSelector/Gruntfile.js
+++ b/MLEB/UniversalLanguageSelector/Gruntfile.js
@@ -1,30 +1,76 @@
-/*jshint node:true */
+/* eslint-env node, es6 */
module.exports = function ( grunt ) {
- 'use strict';
- grunt.loadNpmTasks( 'grunt-contrib-jshint' );
+ var conf = grunt.file.readJSON( 'extension.json' );
+
grunt.loadNpmTasks( 'grunt-banana-checker' );
+ grunt.loadNpmTasks( 'grunt-eslint' );
grunt.loadNpmTasks( 'grunt-jsonlint' );
+ grunt.loadNpmTasks( 'grunt-stylelint' );
+ grunt.loadNpmTasks( 'grunt-svgmin' );
grunt.initConfig( {
- jshint: {
+ eslint: {
+ all: '.'
+ },
+ stylelint: {
options: {
- jshintrc: true
+ syntax: 'less'
},
- all: [
- '*.js'
+ src: [
+ '**/*.css',
+ '**/*.less',
+ '!lib/**',
+ '!node_modules/**',
+ '!vendor/**'
]
},
- banana: {
- all: 'i18n/'
- },
jsonlint: {
all: [
'**/*.json',
- '!node_modules/**'
+ '!node_modules/**',
+ '!vendor/**'
]
+ },
+ banana: conf.MessagesDirs,
+ // SVG Optimization
+ svgmin: {
+ options: {
+ js2svg: {
+ indent: ' ',
+ pretty: true
+ },
+ multipass: true,
+ plugins: [ {
+ cleanupIDs: false
+ }, {
+ removeDesc: false
+ }, {
+ removeRasterImages: true
+ }, {
+ removeTitle: false
+ }, {
+ removeViewBox: false
+ }, {
+ removeXMLProcInst: false
+ }, {
+ sortAttrs: true
+ } ]
+ },
+ all: {
+ files: [ {
+ expand: true,
+ cwd: 'resources/images',
+ src: [
+ '**/*.svg'
+ ],
+ dest: 'resources/images/',
+ ext: '.svg'
+ } ]
+ }
}
} );
- grunt.registerTask( 'test', [ 'jshint', 'jsonlint', 'banana' ] );
- grunt.registerTask( 'default', 'test' );
+ grunt.registerTask( 'minify', 'svgmin' );
+ grunt.registerTask( 'test', [ 'eslint', 'stylelint', 'jsonlint', 'banana' ] );
+ grunt.registerTask( 'default', [ 'minify', 'test' ] );
};
diff --git a/MLEB/UniversalLanguageSelector/README b/MLEB/UniversalLanguageSelector/README
index 60fff0d2..91542378 100644
--- a/MLEB/UniversalLanguageSelector/README
+++ b/MLEB/UniversalLanguageSelector/README
@@ -20,7 +20,7 @@ See GPL-LICENSE and MIT-LICENSE for details.
For a very, very quick start add the following lines to LocalSettings.php of
your MediaWiki setup:
-require_once "$IP/extensions/UniversalLanguageSelector/UniversalLanguageSelector.php";
+wfLoadExtension( 'UniversalLanguageSelector' );
By default, ULS will appear at personal toolbar position. If you want ULS at
interlanguage position, add the following line:
diff --git a/MLEB/UniversalLanguageSelector/Resources.php b/MLEB/UniversalLanguageSelector/Resources.php
deleted file mode 100644
index cad40972..00000000
--- a/MLEB/UniversalLanguageSelector/Resources.php
+++ /dev/null
@@ -1,272 +0,0 @@
-<?php
-/**
- * JavaScript and CSS resource definitions.
- *
- * @file
- * @license GPL-2.0+
- */
-
-$resourcePaths = array(
- 'localBasePath' => __DIR__,
- 'remoteExtPath' => 'UniversalLanguageSelector'
-);
-
-global $wgResourceModules;
-$wgResourceModules['ext.uls.languagenames'] = array(
- 'class' => 'ResourceLoaderULSModule'
-);
-
-$wgResourceModules['ext.uls.messages'] = array(
- 'class' => 'ResourceLoaderULSJsonMessageModule',
- 'dependencies' => 'ext.uls.i18n',
-);
-
-$wgResourceModules['ext.uls.buttons'] = array(
- 'styles' => 'resources/css/ext.uls.buttons.css',
-) + $resourcePaths;
-
-$wgResourceModules['ext.uls.displaysettings'] = array(
- 'scripts' => 'resources/js/ext.uls.displaysettings.js',
- 'styles' => 'resources/css/ext.uls.displaysettings.css',
- 'dependencies' => array(
- // Common dependencies come from languagesettings
- 'ext.uls.languagesettings',
- 'ext.uls.mediawiki',
- 'ext.uls.webfonts',
- 'mediawiki.api.parse',
- ),
-) + $resourcePaths;
-
-$wgResourceModules['ext.uls.geoclient'] = array(
- 'scripts' => 'resources/js/ext.uls.geoclient.js',
-) + $resourcePaths;
-
-$wgResourceModules['ext.uls.ime'] = array(
- 'scripts' => 'resources/js/ext.uls.ime.js',
- 'dependencies' => array(
- 'ext.uls.init',
- 'ext.uls.preferences',
- 'ext.uls.mediawiki',
- 'ext.uls.messages',
- 'jquery.ime',
- 'mediawiki.notify',
- ),
- 'messages' => array(
- 'uls-ime-helppage',
- ),
-) + $resourcePaths;
-
-// Styles for users who disabled JavaScript
-$wgResourceModules['ext.uls.nojs'] = array(
- 'styles' => 'resources/css/ext.uls.nojs.css',
- 'position' => 'top',
-) + $resourcePaths;
-
-// Initialization of MW ULS functionality
-$wgResourceModules['ext.uls.init'] = array(
- 'scripts' => 'resources/js/ext.uls.init.js',
- 'styles' => 'resources/css/ext.uls.css',
- 'skinStyles' => array(
- 'monobook' => 'resources/css/ext.uls-monobook.css',
- ),
- 'dependencies' => array(
- 'mediawiki.api',
- 'mediawiki.cookie',
- 'jquery.client',
- 'jquery.cookie',
- ),
- 'position' => 'top',
-) + $resourcePaths;
-
-$wgResourceModules['ext.uls.eventlogger'] = array(
- 'scripts' => 'resources/js/ext.uls.eventlogger.js',
- 'dependencies' => array(
- 'mediawiki.user',
- 'schema.UniversalLanguageSelector',
- ),
-) + $resourcePaths;
-
-$wgResourceModules['ext.uls.i18n'] = array(
- 'scripts' => 'resources/js/ext.uls.i18n.js',
- 'dependencies' => array(
- 'jquery.i18n',
- 'mediawiki.util',
- ),
-) + $resourcePaths;
-
-$wgResourceModules['ext.uls.inputsettings'] = array(
- 'scripts' => 'resources/js/ext.uls.inputsettings.js',
- 'styles' => 'resources/css/ext.uls.inputsettings.css',
- 'dependencies' => array(
- 'ext.uls.ime',
- // Common dependencies come from languagesettings
- 'ext.uls.languagesettings',
- 'ext.uls.mediawiki',
- 'jquery.ime',
- ),
-) + $resourcePaths;
-
-// Interface language selection module
-$wgResourceModules['ext.uls.interface'] = array(
- 'scripts' => 'resources/js/ext.uls.interface.js',
- 'dependencies' => array(
- 'ext.uls.init',
- 'jquery.tipsy',
- 'mediawiki.jqueryMsg',
- 'mediawiki.user',
- // We cannot delay the loading of the basic webfonts library
- // because it is required immediately after page load
- 'ext.uls.webfonts',
- ),
- 'messages' => array(
- 'uls-plang-title-languages',
- 'ext-uls-select-language-settings-icon-tooltip',
- 'ext-uls-undo-language-tooltip-text',
- 'ext-uls-language-settings-preferences-link',
- ),
- 'position' => 'top',
-) + $resourcePaths;
-
-$wgResourceModules['ext.uls.languagesettings'] = array(
- 'scripts' => 'resources/js/ext.uls.languagesettings.js',
- 'styles' => 'resources/css/ext.uls.languagesettings.css',
- 'dependencies' => array(
- 'ext.uls.buttons',
- 'ext.uls.messages',
- 'ext.uls.preferences',
- // The grid styles are used here,
- // but ULS itself is lazy-loaded
- 'jquery.uls.grid',
- ),
-) + $resourcePaths;
-
-$wgResourceModules['ext.uls.preferences'] = array(
- 'scripts' => 'resources/js/ext.uls.preferences.js',
- 'dependencies' => array(
- 'mediawiki.user',
- 'mediawiki.api',
- ),
-) + $resourcePaths;
-
-$wgResourceModules['ext.uls.compactlinks'] = array(
- 'scripts' => 'resources/js/ext.uls.compactlinks.js',
- 'styles' => 'resources/css/ext.uls.compactlinks.css',
- 'dependencies' => array(
- 'ext.uls.mediawiki',
- 'ext.uls.init',
- 'jquery.uls.compact',
- 'mediawiki.language',
- 'mediawiki.ui.button',
- ),
- 'messages' => array(
- 'ext-uls-compact-link-count',
- ),
-) + $resourcePaths;
-
-$wgResourceModules['ext.uls.webfonts'] = array(
- 'scripts' => 'resources/js/ext.uls.webfonts.js',
- 'dependencies' => array(
- 'ext.uls.init',
- 'ext.uls.preferences',
- ),
-) + $resourcePaths;
-
-$wgResourceModules['ext.uls.webfonts.fonts'] = array(
- 'dependencies' => array(
- 'jquery.webfonts',
- 'jquery.uls.data',
- 'ext.uls.webfonts.repository',
- ),
-) + $resourcePaths;
-
-$wgResourceModules['ext.uls.webfonts.repository'] = array(
- 'scripts' => 'resources/js/ext.uls.webfonts.repository.js',
- 'targets' => array( 'desktop', 'mobile' ),
-) + $resourcePaths;
-
-$wgResourceModules['ext.uls.webfonts.mobile'] = array(
- 'scripts' => 'resources/js/ext.uls.webfonts.mobile.js',
- 'targets' => array( 'mobile' ),
- 'dependencies' => array(
- 'jquery.webfonts',
- 'ext.uls.webfonts.repository',
- ),
-) + $resourcePaths;
-
-$wgResourceModules['jquery.ime'] = array(
- 'scripts' => 'lib/jquery.ime/jquery.ime.js',
- 'styles' => 'lib/jquery.ime/css/jquery.ime.css',
-) + $resourcePaths;
-
-// This module sets default options for the language selector that are
-// suitable for MediaWiki and loads necessary dependencies like grid,
-// messages and jquery.uls itself.
-$wgResourceModules['ext.uls.mediawiki'] = array(
- 'scripts' => 'resources/js/ext.uls.mediawiki.js',
- 'dependencies' => array(
- 'ext.uls.init',
- 'ext.uls.languagenames',
- 'ext.uls.messages',
- 'jquery.uls',
- 'jquery.uls.grid',
- 'mediawiki.util',
- ),
-) + $resourcePaths;
-
-$wgResourceModules['jquery.uls'] = array(
- 'scripts' => array(
- 'lib/jquery.uls/src/jquery.uls.core.js',
- 'lib/jquery.uls/src/jquery.uls.lcd.js',
- 'lib/jquery.uls/src/jquery.uls.languagefilter.js',
- 'lib/jquery.uls/src/jquery.uls.regionfilter.js',
- ),
- 'styles' => array(
- 'lib/jquery.uls/css/jquery.uls.css',
- 'lib/jquery.uls/css/jquery.uls.lcd.css',
- ),
- 'dependencies' => array(
- 'jquery.i18n',
- 'jquery.uls.data',
- 'jquery.uls.grid',
- ),
-) + $resourcePaths;
-
-$wgResourceModules['jquery.uls.compact'] = array(
- 'styles' => 'lib/jquery.uls/css/jquery.uls.compact.css',
- 'dependencies' => 'jquery.uls',
-) + $resourcePaths;
-
-$wgResourceModules['jquery.uls.data'] = array(
- 'scripts' => array(
- 'lib/jquery.uls/src/jquery.uls.data.js',
- 'lib/jquery.uls/src/jquery.uls.data.utils.js',
- ),
- 'targets' => array( 'desktop', 'mobile' ),
-) + $resourcePaths;
-
-$wgResourceModules['jquery.uls.grid'] = array(
- 'position' => 'top',
- 'styles' => 'lib/jquery.uls/css/jquery.uls.grid.css',
-) + $resourcePaths;
-
-$wgResourceModules['jquery.webfonts'] = array(
- 'scripts' => 'lib/jquery.webfonts.js',
- 'targets' => array( 'desktop', 'mobile' ),
-) + $resourcePaths;
-
-$wgResourceModules['ext.uls.pt'] = array(
- 'styles' => 'resources/css/ext.uls.pt.css',
-) + $resourcePaths;
-
-$wgResourceModules['ext.uls.interlanguage'] = array(
- 'styles' => 'resources/css/ext.uls.interlanguage.css',
-) + $resourcePaths;
-
-// A module named rangy is defined in VisualExtension with more features of rangy.
-// Here we need only the core library. This module is loaded dynamically from
-// client when rangy is undefined. If VE is present rangy will be defined, the module
-// defined in VE will be used. ie, This get loaded only when VE is not present and
-// user trying to type in a contenteditable
-$wgResourceModules['rangy.core'] = array(
- 'scripts' => 'lib/rangy/rangy-core.js',
-) + $resourcePaths;
diff --git a/MLEB/UniversalLanguageSelector/UniversalLanguageSelector.hooks.php b/MLEB/UniversalLanguageSelector/UniversalLanguageSelector.hooks.php
index c5e2f305..5ade811c 100644
--- a/MLEB/UniversalLanguageSelector/UniversalLanguageSelector.hooks.php
+++ b/MLEB/UniversalLanguageSelector/UniversalLanguageSelector.hooks.php
@@ -2,9 +2,9 @@
/**
* Hooks for UniversalLanguageSelector extension.
*
- * Copyright (C) 2012 Alolita Sharma, Amir Aharoni, Arun Ganesh, Brandon Harris,
- * Niklas Laxström, Pau Giner, Santhosh Thottingal, Siebrand Mazeland and other
- * contributors. See CREDITS for a list.
+ * Copyright (C) 2012-2018 Alolita Sharma, Amir Aharoni, Arun Ganesh, Brandon
+ * Harris, Niklas Laxström, Pau Giner, Santhosh Thottingal, Siebrand Mazeland
+ * and other contributors. See CREDITS for a list.
*
* UniversalLanguageSelector is dual licensed GPLv2 or later and MIT. You don't
* have to do anything special to choose one license or the other and you don't
@@ -14,14 +14,17 @@
*
* @file
* @ingroup Extensions
- * @licence GNU General Public Licence 2.0 or later
- * @licence MIT License
+ * @license GPL-2.0-or-later
+ * @license MIT
*/
class UniversalLanguageSelectorHooks {
- // Used when extension registration in use which skips the main php file
+
+ /**
+ * Used when extension registration in use which skips the main php file
+ */
public static function setVersionConstant() {
- define( 'ULS_VERSION', '2015-06-08' );
+ define( 'ULS_VERSION', '2018-10-26' );
}
/**
@@ -44,45 +47,86 @@ class UniversalLanguageSelectorHooks {
}
/**
+ * Whether ULS Compact interlanguage links enabled
+ *
+ * @param User $user
+ * @return bool
+ */
+ public static function isCompactLinksEnabled( $user ) {
+ global $wgULSEnable, $wgInterwikiMagic,
+ $wgULSCompactLinksEnableAnon,
+ $wgHideInterlanguageLinks, $wgULSCompactLanguageLinksBetaFeature;
+
+ // Whether any user visible features are enabled
+ if ( !$wgULSEnable ) {
+ return false;
+ }
+
+ if ( $user->isAnon() && $wgULSCompactLinksEnableAnon ) {
+ return true;
+ }
+
+ if ( $wgULSCompactLanguageLinksBetaFeature === true &&
+ $wgInterwikiMagic === true &&
+ $wgHideInterlanguageLinks === false &&
+ class_exists( 'BetaFeatures' ) &&
+ BetaFeatures::isFeatureEnabled( $user, 'uls-compact-links' )
+ ) {
+ // Compact language links is a beta feature in this wiki. Check the user's
+ // preference.
+ return true;
+ }
+
+ if ( $wgULSCompactLanguageLinksBetaFeature === false ) {
+ // Compact language links is a default feature in this wiki.
+ // Check user preference
+ return $user->getBoolOption( 'compact-language-links' );
+ }
+
+ return false;
+ }
+
+ /**
+ * Sets user preference to enable the Compact language links if the
+ * user account is new.
+ *
+ * To be removed once no longer needed.
+ * @param User $user
+ * @param bool $autoCreate
+ */
+ public static function onLocalUserCreated( User $user, $autoCreate ) {
+ if ( RequestContext::getMain()->getConfig()->get( 'ULSCompactLinksForNewAccounts' ) ) {
+ $user->setOption( 'compact-language-links', 1 );
+ $user->saveSettings();
+ }
+ }
+
+ /**
* @param OutputPage $out
* @param Skin $skin
- * @return bool
* Hook: BeforePageDisplay
*/
public static function addModules( $out, $skin ) {
- global $wgULSCompactLinks, $wgULSPosition, $wgULSGeoService, $wgULSEventLogging,
- $wgInterwikiMagic, $wgHideInterlanguageLinks;
-
- // Load the style for users without JS, to hide the useless links
- $out->addModuleStyles( 'ext.uls.nojs' );
+ global $wgULSPosition, $wgULSGeoService, $wgULSEventLogging;
// If EventLogging integration is enabled, load the schema module
// and the event logging functions module
if ( $wgULSEventLogging ) {
- $out->addModules( array(
- 'schema.UniversalLanguageSelector',
- 'ext.uls.eventlogger',
- ) );
+ $out->addModules( 'ext.uls.eventlogger' );
}
// If the extension is enabled, basic features (API, language data) available.
$out->addModules( 'ext.uls.init' );
- // If compact ULS beta feature is enabled and is actually functional
- // (see onGetBetaFeaturePreferences)
- if ( $wgULSCompactLinks &&
- $wgInterwikiMagic === true &&
- $wgHideInterlanguageLinks === false &&
- class_exists( 'BetaFeatures' ) &&
- BetaFeatures::isFeatureEnabled( $out->getUser(), 'uls-compact-links' )
- ) {
+ // Soft dependency to Wikibase client. Don't enable CLL if links are managed manually.
+ $excludedLinks = $out->getProperty( 'noexternallanglinks' );
+ $override = is_array( $excludedLinks ) && in_array( '*', $excludedLinks );
+ if ( !$override && self::isCompactLinksEnabled( $out->getUser() ) ) {
$out->addModules( 'ext.uls.compactlinks' );
}
if ( is_string( $wgULSGeoService ) ) {
$out->addModules( 'ext.uls.geoclient' );
- } elseif ( $wgULSGeoService === true ) {
- $out->addScript( '<script src="//meta.wikimedia.org/geoiplookup"></script>' );
}
if ( self::isToolbarEnabled( $out->getUser() ) ) {
@@ -91,64 +135,59 @@ class UniversalLanguageSelectorHooks {
}
if ( $wgULSPosition === 'personal' ) {
- $out->addModules( 'ext.uls.pt' );
+ $out->addModuleStyles( 'ext.uls.pt' );
} else {
- $out->addModules( 'ext.uls.interlanguage' );
+ $out->addModuleStyles( 'ext.uls.interlanguage' );
}
- return true;
- }
-
- public static function onEventLoggingRegisterSchemas( array &$schemas ) {
- $schemas['UniversalLanguageSelector'] = 7327441;
+ if ( $out->getTitle()->isSpecial( 'Preferences' ) ) {
+ $out->addModuleStyles( 'ext.uls.preferencespage' );
+ }
}
/**
- * @param $testModules array of javascript testing modules. 'qunit' is fed
+ * @param array &$testModules array of javascript testing modules. 'qunit' is fed
* using tests/qunit/QUnitTestResources.php.
* @param ResourceLoader $resourceLoader
- * @return bool
* Hook: ResourceLoaderTestModules
*/
- public static function addTestModules( array &$testModules, ResourceLoader &$resourceLoader ) {
- $testModules['qunit']['ext.uls.tests'] = array(
- 'scripts' => array( 'tests/qunit/ext.uls.tests.js' ),
- 'dependencies' => array( 'jquery.uls', 'ext.uls.init', 'ext.uls.preferences' ),
+ public static function addTestModules( array &$testModules, ResourceLoader $resourceLoader ) {
+ $testModules['qunit']['ext.uls.tests'] = [
+ 'scripts' => [ 'tests/qunit/ext.uls.tests.js' ],
+ 'dependencies' => [ 'jquery.uls', 'ext.uls.init', 'ext.uls.preferences' ],
'localBasePath' => __DIR__,
'remoteExtPath' => 'UniversalLanguageSelector',
- );
-
- return true;
+ ];
}
/**
* Add some tabs for navigation for users who do not use Ajax interface.
* Hook: PersonalUrls
+ * @param array &$personal_urls
+ * @param string &$title
*/
- static function addPersonalBarTrigger( array &$personal_urls, &$title ) {
+ public static function addPersonalBarTrigger( array &$personal_urls, &$title ) {
global $wgULSPosition;
if ( $wgULSPosition !== 'personal' ) {
- return true;
+ return;
}
$context = RequestContext::getMain();
if ( !self::isToolbarEnabled( $context->getUser() ) ) {
- return true;
+ return;
}
// The element id will be 'pt-uls'
- $lang = $context->getLanguage();
- $personal_urls = array(
- 'uls' => array(
- 'text' => $lang->fetchLanguageName( $lang->getCode() ),
+ $langCode = $context->getLanguage()->getCode();
+ $personal_urls = [
+ 'uls' => [
+ 'text' => Language::fetchLanguageName( $langCode ),
'href' => '#',
- 'class' => 'uls-trigger autonym',
+ 'class' => 'uls-trigger',
'active' => true
- )
- ) + $personal_urls;
-
- return true;
+ ]
+ ] + $personal_urls;
}
/**
@@ -182,24 +221,31 @@ class UniversalLanguageSelectorHooks {
/**
* Hook to UserGetLanguageObject
* @param User $user
- * @param string $code
+ * @param string &$code
* @param IContextSource $context
- * @return bool
*/
public static function getLanguage( User $user, &$code, IContextSource $context ) {
global $wgULSAnonCanChangeLanguage, $wgULSLanguageDetection;
+ if ( $wgULSLanguageDetection ) {
+ // Vary any caching based on the header value. Note that
+ // we need to vary regardless of whether we end up using
+ // the header or not, so that requests without the header
+ // don't show up for people with it.
+ $context->getOutput()->addVaryHeader( 'Accept-Language' );
+ }
+
if ( !self::isToolbarEnabled( $user ) ) {
- return true;
+ return;
}
$request = $context->getRequest();
$languageToSave = $request->getText( 'setlang' );
- if ( $request->getText( 'uselang' ) && !$languageToSave ) {
+ if ( !$languageToSave && $request->getText( 'uselang' ) ) {
// uselang can be used for temporary override of language preference
// when setlang is not provided
- return true;
+ return;
}
// Registered users - simple
@@ -210,53 +256,49 @@ class UniversalLanguageSelectorHooks {
$user->setOption( 'language', $languageToSave );
$code = $languageToSave;
// Promise to sync the DB on post-send
- DeferredUpdates::addCallableUpdate( function() use ( $user ) {
+ DeferredUpdates::addCallableUpdate( function () use ( $user ) {
$user->saveSettings();
} );
}
// Otherwise just use what is stored in preferences
- return true;
+ return;
}
- // Logged out users - less simple
- if ( !$wgULSAnonCanChangeLanguage ) {
- return true;
- }
-
- // Language change
- if ( Language::isSupportedLanguage( $languageToSave ) ) {
- $request->response()->setcookie( 'language', $languageToSave );
- $code = $languageToSave;
+ // If using cookie storage for anons is OK, read/write from that
+ if ( $wgULSAnonCanChangeLanguage ) {
+ // Language change
+ if ( Language::isSupportedLanguage( $languageToSave ) ) {
+ $request->response()->setCookie( 'language', $languageToSave );
+ $code = $languageToSave;
- return true;
- }
+ return;
+ }
- // Try cookie
- $languageToUse = $request->getCookie( 'language', null, '' );
- if ( Language::isSupportedLanguage( $languageToUse ) ) {
- $code = $languageToUse;
+ // Try cookie
+ $languageToUse = $request->getCookie( 'language', null, '' );
+ if ( Language::isSupportedLanguage( $languageToUse ) ) {
+ $code = $languageToUse;
- return true;
+ return;
+ }
}
// As last resort, try Accept-Language headers if allowed
if ( $wgULSLanguageDetection ) {
+ // We added a Vary header at the top of this function,
+ // since we're depending upon the Accept-Language header
$preferred = $request->getAcceptLang();
$default = self::getDefaultLanguage( $preferred );
if ( $default !== '' ) {
$code = $default;
}
}
-
- // Fall back to other hooks or content language
- return true;
}
/**
* Hook: ResourceLoaderGetConfigVars
- * @param array $vars
- * @return bool
+ * @param array &$vars
*/
public static function addConfig( &$vars ) {
global $wgULSGeoService,
@@ -266,9 +308,11 @@ class UniversalLanguageSelectorHooks {
$wgULSEventLogging,
$wgULSImeSelectors, $wgULSNoImeSelectors,
$wgULSFontRepositoryBasePath,
- $wgExtensionAssetsPath;
+ $wgExtensionAssetsPath,
+ $wgInterwikiSortingSortPrepend;
// Place constant stuff here (not depending on request context)
+
if ( is_string( $wgULSGeoService ) ) {
$vars['wgULSGeoService'] = $wgULSGeoService;
}
@@ -277,7 +321,8 @@ class UniversalLanguageSelectorHooks {
$vars['wgULSWebfontsEnabled'] = $wgULSWebfontsEnabled;
$vars['wgULSPosition'] = $wgULSPosition;
$vars['wgULSAnonCanChangeLanguage'] = $wgULSAnonCanChangeLanguage;
- $vars['wgULSEventLogging'] = $wgULSEventLogging && class_exists( 'ResourceLoaderSchemaModule' );
+ $vars['wgULSEventLogging'] = $wgULSEventLogging
+ && ExtensionRegistry::getInstance()->isLoaded( 'EventLogging' );
$vars['wgULSImeSelectors'] = $wgULSImeSelectors;
$vars['wgULSNoImeSelectors'] = $wgULSNoImeSelectors;
$vars['wgULSNoWebfontsSelectors'] = $wgULSNoWebfontsSelectors;
@@ -289,65 +334,97 @@ class UniversalLanguageSelectorHooks {
'/UniversalLanguageSelector/data/fontrepo/fonts/';
}
- return true;
+ if ( isset( $wgInterwikiSortingSortPrepend ) && $wgInterwikiSortingSortPrepend !== [] ) {
+ $vars['wgULSCompactLinksPrepend'] = $wgInterwikiSortingSortPrepend;
+ }
}
/**
* Hook: MakeGlobalVariablesScript
- * @param array $vars
+ * @param array &$vars
* @param OutputPage $out
- * @return bool
*/
public static function addVariables( &$vars, OutputPage $out ) {
+ global $wgULSAnonCanChangeLanguage;
+
// Place request context dependent stuff here
- $vars['wgULSAcceptLanguageList'] = array_keys( $out->getRequest()->getAcceptLang() );
- // An optimization to avoid loading all of uls.data just to get the autonym
- $lang = $out->getLanguage();
- $vars['wgULSCurrentAutonym'] = $lang->fetchLanguageName( $lang->getCode() );
+ $user = $out->getUser();
+ $loggedIn = $user->isLoggedIn();
- return true;
+ // Do not output accept languages if there is risk it will get cached across requests
+ if ( $wgULSAnonCanChangeLanguage || $loggedIn ) {
+ $vars['wgULSAcceptLanguageList'] = array_keys( $out->getRequest()->getAcceptLang() );
+ }
+
+ if ( $loggedIn && class_exists( Babel::class ) ) {
+ $userLanguageInfo = Babel::getCachedUserLanguageInfo( $user );
+
+ // This relies on the fact that Babel levels are 'N' and
+ // the digits 0 to 5 as strings, and that in reverse
+ // ASCII order they will be 'N', '5', '4', '3', '2', '1', '0'.
+ arsort( $userLanguageInfo );
+
+ $vars['wgULSBabelLanguages'] = array_keys( $userLanguageInfo );
+ }
+
+ // An optimization to avoid loading all of uls.data just to get the autonym
+ $langCode = $out->getLanguage()->getCode();
+ $vars['wgULSCurrentAutonym'] = Language::fetchLanguageName( $langCode );
}
public static function onGetPreferences( $user, &$preferences ) {
- $preferences['uls-preferences'] = array(
+ global $wgULSCompactLanguageLinksBetaFeature;
+
+ $preferences['uls-preferences'] = [
'type' => 'api',
- );
+ ];
// A link shown for accessing ULS language settings from preferences screen
- $preferences['languagesettings'] = array(
+ $preferences['languagesettings'] = [
'type' => 'info',
'raw' => true,
'section' => 'personal/i18n',
- 'default' => "<a id='uls-preferences-link' href='#'></a>",
- // The above link will have text set from javascript. Just to avoid
- // showing the link when javascript is disabled.
- );
-
- return true;
+ // We use this class to hide this from no-JS users
+ 'cssclass' => 'uls-preferences-link-wrapper',
+ 'default' => "<a id='uls-preferences-link' role='button' tabindex='0'>" .
+ wfMessage( 'ext-uls-language-settings-preferences-link' )->escaped() . "</a>",
+ ];
+
+ if ( $wgULSCompactLanguageLinksBetaFeature === false ) {
+ $preferences['compact-language-links'] = [
+ 'type' => 'check',
+ 'section' => 'rendering/languages',
+ 'label-message' => [
+ 'ext-uls-compact-language-links-preference',
+ 'mediawikiwiki:Special:MyLanguage/Universal_Language_Selector/Compact_Language_Links'
+ ]
+ ];
+ }
}
public static function onGetBetaFeaturePreferences( $user, &$prefs ) {
- global $wgExtensionAssetsPath, $wgULSCompactLinks,
+ global $wgExtensionAssetsPath, $wgULSCompactLanguageLinksBetaFeature,
$wgHideInterlanguageLinks, $wgInterwikiMagic;
- if ( $wgULSCompactLinks &&
+ if ( $wgULSCompactLanguageLinksBetaFeature === true &&
$wgInterwikiMagic === true &&
$wgHideInterlanguageLinks === false
) {
$imagesDir = "$wgExtensionAssetsPath/UniversalLanguageSelector/resources/images";
- $prefs['uls-compact-links'] = array(
+ $prefs['uls-compact-links'] = [
'label-message' => 'uls-betafeature-label',
'desc-message' => 'uls-betafeature-desc',
- 'screenshot' => array(
- 'ltr' => "$imagesDir/compact-links-ltr.png",
- 'rtl' => "$imagesDir/compact-links-rtl.png",
- ),
+ 'screenshot' => [
+ 'ltr' => "$imagesDir/compact-links-ltr.svg",
+ 'rtl' => "$imagesDir/compact-links-rtl.svg",
+ ],
'info-link' =>
- 'https://www.mediawiki.org/wiki/Universal_Language_Selector/Design/Interlanguage_links',
+ 'https://www.mediawiki.org/wiki/Special:MyLanguage/' .
+ 'Universal_Language_Selector/Compact_Language_Links',
'discussion-link' =>
- 'https://www.mediawiki.org/wiki/Talk:Universal_Language_Selector/Design/Interlanguage_links',
- );
+ 'https://www.mediawiki.org/wiki/Talk:Universal_Language_Selector/Compact_Language_Links',
+ ];
}
}
@@ -355,36 +432,30 @@ class UniversalLanguageSelectorHooks {
* Hook: SkinTemplateOutputPageBeforeExec
* @param Skin $skin
* @param QuickTemplate $template
- * @return bool
*/
- public static function onSkinTemplateOutputPageBeforeExec( Skin &$skin,
- QuickTemplate &$template
+ public static function onSkinTemplateOutputPageBeforeExec( Skin $skin,
+ QuickTemplate $template
) {
global $wgULSPosition;
if ( $wgULSPosition !== 'interlanguage' ) {
- return true;
+ return;
}
if ( !self::isToolbarEnabled( $skin->getUser() ) ) {
- return true;
+ return;
}
- // A dummy link, just to make sure that the section appears
- $template->data['language_urls'][] = array(
- 'href' => '#',
- 'text' => '',
- 'class' => 'uls-p-lang-dummy',
- );
-
- return true;
+ // Set to an empty array, just to make sure that the section appears
+ if ( $template->get( 'language_urls' ) === false ) {
+ $template->set( 'language_urls', [] );
+ }
}
/**
* Add basic webfonts support to the mobile interface (via MobileFrontend extension)
* Hook: EnterMobileMode
* @param MobileContext $context
- * @return bool
*/
public static function onEnterMobileMode( $context ) {
global $wgULSEnable, $wgULSMobileWebfontsEnabled;
@@ -393,65 +464,59 @@ class UniversalLanguageSelectorHooks {
if ( $wgULSEnable && $wgULSMobileWebfontsEnabled && $context->isBetaGroupMember() ) {
$context->getOutput()->addModules( 'ext.uls.webfonts.mobile' );
}
-
- return true;
}
/**
- * Conditionally register jquery.18n (backwards copatbility for those on pre-MediaWiki 1.26).
+ * Conditionally register module ext.uls.eventlogger.
*
* @param ResourceLoader $resourceLoader
- * @return boolean true
*/
- public static function onResourceLoaderRegisterModules( ResourceLoader &$resourceLoader ) {
- global $wgResourceModules;
-
- if (
- (
- (
- is_callable( array( $resourceLoader, 'isModuleRegistered' ) ) &&
- !$resourceLoader->isModuleRegistered( 'jquery.i18n' )
- )
- ||
- $resourceLoader->getModule( 'jquery.i18n' ) === null
- )
- &&
- !isset( $wgResourceModules[ 'jquery.i18n' ] )
- ) {
- $resourceLoader->register( array(
- 'jquery.i18n' => array(
- 'scripts' => array(
- 'lib/jquery.i18n/jquery.i18n.js',
- 'lib/jquery.i18n/jquery.i18n.messagestore.js',
- 'lib/jquery.i18n/jquery.i18n.parser.js',
- 'lib/jquery.i18n/jquery.i18n.emitter.js',
- 'lib/jquery.i18n/jquery.i18n.emitter.bidi.js',
- 'lib/jquery.i18n/jquery.i18n.language.js',
- ),
- 'dependencies' => 'mediawiki.libs.pluralruleparser',
- 'languageScripts' => array(
- 'bs' => 'lib/jquery.i18n/languages/bs.js',
- 'dsb' => 'lib/jquery.i18n/languages/dsb.js',
- 'fi' => 'lib/jquery.i18n/languages/fi.js',
- 'ga' => 'lib/jquery.i18n/languages/ga.js',
- 'he' => 'lib/jquery.i18n/languages/he.js',
- 'hsb' => 'lib/jquery.i18n/languages/hsb.js',
- 'hu' => 'lib/jquery.i18n/languages/hu.js',
- 'hy' => 'lib/jquery.i18n/languages/hy.js',
- 'la' => 'lib/jquery.i18n/languages/la.js',
- 'ml' => 'lib/jquery.i18n/languages/ml.js',
- 'os' => 'lib/jquery.i18n/languages/os.js',
- 'ru' => 'lib/jquery.i18n/languages/ru.js',
- 'sl' => 'lib/jquery.i18n/languages/sl.js',
- 'uk' => 'lib/jquery.i18n/languages/uk.js',
- ),
- 'targets' => array( 'desktop', 'mobile' ),
- 'localBasePath' => __DIR__,
- 'remoteExtPath' => 'UniversalLanguageSelector',
- )
- ) );
+ public static function onResourceLoaderRegisterModules( ResourceLoader $resourceLoader ) {
+ global $wgULSEventLogging, $wgVersion;
+
+ $modules = [];
+ $modules['ext.uls.displaysettings'] = [
+ 'scripts' => 'js/ext.uls.displaysettings.js',
+ 'styles' => 'css/ext.uls.displaysettings.less',
+ 'dependencies' => [
+ 'ext.uls.languagesettings',
+ 'ext.uls.mediawiki',
+ 'ext.uls.webfonts',
+ 'mediawiki.api',
+ 'mediawiki.ui.checkbox',
+ 'mediawiki.ui.button',
+ 'mediawiki.user'
+ ],
+ 'localBasePath' => __DIR__ . '/resources',
+ 'remoteExtPath' => 'UniversalLanguageSelector/resources'
+ ];
+ $modules['ext.uls.preferences'] = [
+ 'scripts' => 'js/ext.uls.preferences.js',
+ 'dependencies' => [
+ 'mediawiki.user',
+ 'mediawiki.api'
+ ],
+ 'localBasePath' => __DIR__ . '/resources',
+ 'remoteExtPath' => 'UniversalLanguageSelector/resources'
+ ];
+ if ( version_compare( $wgVersion, '1.32', '<' ) ) {
+ // Support: MediaWiki 1.31 and earlier (T200168)
+ $modules['ext.uls.displaysettings']['dependencies'][] = 'mediawiki.api.parse';
+ $modules['ext.uls.preferences']['dependencies'][] = 'mediawiki.api.options';
}
- return true;
+ if ( $wgULSEventLogging ) {
+ $modules['ext.uls.eventlogger'] = [
+ 'scripts' => 'js/ext.uls.eventlogger.js',
+ 'dependencies' => [
+ 'mediawiki.user',
+ 'schema.UniversalLanguageSelector',
+ ],
+ 'localBasePath' => __DIR__ . '/resources',
+ 'remoteExtPath' => 'UniversalLanguageSelector/resources',
+ ];
+ }
+
+ $resourceLoader->register( $modules );
}
}
diff --git a/MLEB/UniversalLanguageSelector/UniversalLanguageSelector.php b/MLEB/UniversalLanguageSelector/UniversalLanguageSelector.php
index 97e322cb..e69de29b 100644
--- a/MLEB/UniversalLanguageSelector/UniversalLanguageSelector.php
+++ b/MLEB/UniversalLanguageSelector/UniversalLanguageSelector.php
@@ -1,233 +0,0 @@
-<?php
-/**
- * Initialisation file for MediaWiki extension UniversalLanguageSelector.
- *
- * Copyright (C) 2012-2014 Alolita Sharma, Amir Aharoni, Arun Ganesh, Brandon
- * Harris, Niklas Laxström, Pau Giner, Santhosh Thottingal, Siebrand Mazeland
- * and other contributors. See CREDITS for a list.
- *
- * UniversalLanguageSelector is dual licensed GPLv2 or later and MIT. You don't
- * have to do anything special to choose one license or the other and you don't
- * have to notify anyone which license you are using. You are free to use
- * UniversalLanguageSelector in commercial projects as long as the copyright
- * header is left intact. See files GPL-LICENSE and MIT-LICENSE for details.
- *
- * @file
- * @ingroup Extensions
- * @licence GNU General Public Licence 2.0 or later
- * @licence MIT License
- */
-
-if ( function_exists( 'wfLoadExtension' ) ) {
- wfLoadExtension( 'UniversalLanguageSelector' );
- // Keep i18n globals so mergeMessageFileList.php doesn't break
- $wgMessagesDirs['UniversalLanguageSelector'] = __DIR__ . '/i18n';
- /* wfWarn(
- 'Deprecated PHP entry point used for UniversalLanguageSelector extension. Please use wfLoadExtension instead, ' .
- 'see https://www.mediawiki.org/wiki/Extension_registration for more details.'
- ); */
- return;
-}
-
-if ( !defined( 'MEDIAWIKI' ) ) {
- echo "This file is an extension to the MediaWiki software and cannot be used standalone.\n";
- die( -1 );
-}
-/**
- * Version number used in extension credits and in other placed where needed.
- */
-define( 'ULS_VERSION', '2015-08-28' );
-
-$wgExtensionCredits['other'][] = array(
- 'path' => __FILE__,
- 'name' => 'UniversalLanguageSelector',
- 'version' => ULS_VERSION,
- 'author' => array(
- 'Alolita Sharma',
- 'Amir Aharoni',
- 'Arun Ganesh',
- 'Brandon Harris',
- 'Niklas Laxström',
- 'Pau Giner',
- 'Santhosh Thottingal',
- 'Siebrand Mazeland'
- ),
- 'url' => 'https://www.mediawiki.org/wiki/Extension:UniversalLanguageSelector',
- 'descriptionmsg' => 'uls-desc',
-);
-
-/**
- * ULS can use geolocation services to suggest languages based on the
- * country the user is vising from. Setting this to false will prevent
- * builtin geolocation from being used. You can provide your own geolocation
- * by setting window.Geo to object which has key 'country_code' or 'country'.
- * If set to true, it will query Wikimedia's geoip service.
- *
- * The service should return jsonp that uses the supplied callback parameter.
- */
-$wgULSGeoService = true;
-
-/**
- * Enable language selection, input methods and webfonts for everyone, unless
- * the behavior is overridden by the configuration variables below.
- *
- * Even if false the classes and resource loader modules are registered for the
- * use of other extensions. Language changing via cookie or setlang query
- * parameter is not possible.
- */
-$wgULSEnable = true;
-
-/**
- * Equivalent to $wgULSEnable for anonymous users only.
- *
- * Does not have any effect if $wgULSEnable is false.
- */
-$wgULSEnableAnon = true;
-
-/**
- * Allow anonymous users to change language with cookie and setlang
- * query parameter.
- *
- * Do not use if you are caching anonymous page views without
- * taking cookies into account.
- *
- * Does not have any effect if either of $wgULSEnable or
- * $wgULSEnableAnon is set to false.
- *
- * @since 2013.04
- */
-$wgULSAnonCanChangeLanguage = true;
-
-/**
- * Try to use preferred interface language for anonymous users.
- *
- * Do not use if you are caching anonymous page views without
- * taking Accept-Language into account.
- *
- * Does not have any effect if any of $wgULSEnable, $wgULSEnableAnon
- * or $wgULSAnonCanChangeLanguage is set to false.
- */
-$wgULSLanguageDetection = true;
-
-/**
- * Enable the input methods feature for all users by default.
- * Can be controlled by the user.
- */
-$wgULSIMEEnabled = true;
-
-/**
- * Enable the webfonts feature for all users by default.
- * Can be controlled by the user.
- * @since 2014.02
- */
-$wgULSWebfontsEnabled = true;
-
-/**
- * Set whether webfont support is loaded within the mobile interface (via the
- * MobileFrontend extension).
- */
-$wgULSMobileWebfontsEnabled = false;
-
-/**
- * The location and the form of the language selection trigger.
- * The possible values are:
- * 'personal': as a link near the username or the log in link in
- * the personal toolbar (default).
- * 'interlanguage': as an icon near the header of the list of interlanguage
- * links in the sidebar.
- *
- * @since 2013.04
- */
-$wgULSPosition = 'personal';
-
-/**
- * Whether to use EventLogging. The EventLogging extension must be installed
- * if this option is enabled.
- * @since 2013.06
- */
-$wgULSEventLogging = false;
-
-/**
- * Array of jQuery selectors of elements on which IME should be enabled.
- *
- * @since 2013.11
- */
-$wgULSImeSelectors = array(
- 'input:not([type])',
- 'input[type=text]',
- 'input[type=search]',
- 'textarea',
- '[contenteditable]',
-);
-
-/**
- * Array of jQuery selectors of elements on which IME must not be enabled.
- *
- * @since 2013.07
- */
-$wgULSNoImeSelectors = array( '#wpCaptchaWord', '.ve-ce-surface *' );
-
-/**
- * Array of jQuery selectors of elements on which webfonts must not be applied.
- * By default exclude elements with .autonym because that style set font as
- * Autonym
- * @since 2013.09
- */
-$wgULSNoWebfontsSelectors = array( '#p-lang li.interlanguage-link > a' );
-
-/**
- * Base path of ULS font repository.
- * If not set, will be set to 'UniversalLanguageSelector/data/fontrepo/fonts/',
- * relative to $wgExtensionAssetsPath.
- * @since 2013.10
- */
-$wgULSFontRepositoryBasePath = false;
-
-/**
- * Whether the "Compact language links" Beta Feature is exposed. Requires
- * $wgULSPosition to be 'interlanguage'.
- *
- * Defaults to false.
- *
- * @since 2014.03
- */
-$wgULSCompactLinks = false;
-
-// Internationalization
-$wgMessagesDirs['UniversalLanguageSelector'] = __DIR__ . '/i18n';
-
-// Register auto load for the page class
-$wgAutoloadClasses += array(
- 'UniversalLanguageSelectorHooks' => __DIR__ . '/UniversalLanguageSelector.hooks.php',
- 'ResourceLoaderULSModule' => __DIR__ . '/includes/ResourceLoaderULSModule.php',
- 'ResourceLoaderULSJsonMessageModule' =>
- __DIR__ . '/includes/ResourceLoaderULSJsonMessageModule.php',
- 'ApiLanguageSearch' => __DIR__ . '/api/ApiLanguageSearch.php',
- 'ApiULSLocalization' => __DIR__ . '/api/ApiULSLocalization.php',
- 'ULSJsonMessageLoader' => __DIR__ . '/includes/ULSJsonMessageLoader.php',
- 'LanguageNameSearch' => __DIR__ . '/data/LanguageNameSearch.php',
-);
-
-$wgHooks['BeforePageDisplay'][] = 'UniversalLanguageSelectorHooks::addModules';
-$wgHooks['EventLoggingRegisterSchemas'][] =
- 'UniversalLanguageSelectorHooks::onEventLoggingRegisterSchemas';
-$wgHooks['PersonalUrls'][] = 'UniversalLanguageSelectorHooks::addPersonalBarTrigger';
-$wgHooks['ResourceLoaderRegisterModules'][] =
- 'UniversalLanguageSelectorHooks::onResourceLoaderRegisterModules';
-$wgHooks['ResourceLoaderTestModules'][] =
- 'UniversalLanguageSelectorHooks::addTestModules';
-$wgHooks['ResourceLoaderGetConfigVars'][] = 'UniversalLanguageSelectorHooks::addConfig';
-$wgHooks['MakeGlobalVariablesScript'][] = 'UniversalLanguageSelectorHooks::addVariables';
-$wgAPIModules['languagesearch'] = 'ApiLanguageSearch';
-$wgAPIModules['ulslocalization'] = 'ApiULSLocalization';
-$wgHooks['UserGetLanguageObject'][] = 'UniversalLanguageSelectorHooks::getLanguage';
-$wgHooks['SkinTemplateOutputPageBeforeExec'][] =
- 'UniversalLanguageSelectorHooks::onSkinTemplateOutputPageBeforeExec';
-$wgHooks['EnterMobileMode'][] = 'UniversalLanguageSelectorHooks::onEnterMobileMode';
-
-$wgDefaultUserOptions['uls-preferences'] = '';
-$wgHooks['GetPreferences'][] = 'UniversalLanguageSelectorHooks::onGetPreferences';
-$wgHooks['GetBetaFeaturePreferences'][] =
- 'UniversalLanguageSelectorHooks::onGetBetaFeaturePreferences';
-
-require __DIR__ . '/Resources.php';
diff --git a/MLEB/UniversalLanguageSelector/api/ApiLanguageSearch.php b/MLEB/UniversalLanguageSelector/api/ApiLanguageSearch.php
index d1c4c977..09beef1a 100644
--- a/MLEB/UniversalLanguageSelector/api/ApiLanguageSearch.php
+++ b/MLEB/UniversalLanguageSelector/api/ApiLanguageSearch.php
@@ -14,80 +14,47 @@
*
* @file
* @ingroup Extensions
- * @licence GNU General Public Licence 2.0 or later
- * @licence MIT License
+ * @license GPL-2.0-or-later
+ * @license MIT
*/
/**
* @ingroup API
*/
class ApiLanguageSearch extends ApiBase {
-
- public function getCustomPrinter() {
- return $this->getMain()->createPrinterByName( 'json' );
- }
-
public function execute() {
$params = $this->extractRequestParams();
$search = $params['search'];
$typos = $params['typos'];
- $searches = LanguageNameSearch::search( $search, $typos );
+ $searches = LanguageNameSearch::search( $search, $typos, $this->getLanguage()->getCode() );
$result = $this->getResult();
$result->addValue( null, $this->getModuleName(), $searches );
}
public function getAllowedParams() {
- return array(
- 'search' => array(
+ return [
+ 'search' => [
ApiBase::PARAM_REQUIRED => true
- ),
- 'typos' => array(
+ ],
+ 'typos' => [
ApiBase::PARAM_REQUIRED => false,
ApiBase::PARAM_TYPE => 'integer',
ApiBase::PARAM_DFLT => 1
- ),
- );
- }
-
- /**
- * @deprecated since MediaWiki core 1.25
- */
- public function getParamDescription() {
- return array(
- 'search' => 'Search string',
- 'typos' => 'Number of spelling mistakes allowed in the search string',
- );
- }
-
- /**
- * @deprecated since MediaWiki core 1.25
- */
- public function getDescription() {
- return 'Search for language names in any script';
- }
-
- /**
- * @deprecated since MediaWiki core 1.25
- */
- public function getExamples() {
- return array(
- 'api.php?action=languagesearch&search=Te',
- 'api.php?action=languagesearch&search=ഫി',
- 'api.php?action=languagesearch&search=ഫി&typos=1',
- );
+ ],
+ ];
}
/**
- * @see ApiBase::getExamplesMessages()
+ * @inheritDoc
*/
protected function getExamplesMessages() {
- return array(
+ return [
'action=languagesearch&search=Te'
=> 'apihelp-languagesearch-example-1',
'action=languagesearch&search=ഫി'
=> 'apihelp-languagesearch-example-2',
'action=languagesearch&search=ഫി&typos=1'
=> 'apihelp-languagesearch-example-3',
- );
+ ];
}
}
diff --git a/MLEB/UniversalLanguageSelector/api/ApiULSLocalization.php b/MLEB/UniversalLanguageSelector/api/ApiULSLocalization.php
index 2699a4d9..6d856a30 100644
--- a/MLEB/UniversalLanguageSelector/api/ApiULSLocalization.php
+++ b/MLEB/UniversalLanguageSelector/api/ApiULSLocalization.php
@@ -14,8 +14,8 @@
*
* @file
* @ingroup Extensions
- * @licence GNU General Public Licence 2.0 or later
- * @licence MIT License
+ * @license GPL-2.0-or-later
+ * @license MIT
*/
/**
@@ -30,7 +30,7 @@ class ApiULSLocalization extends ApiBase {
$params = $this->extractRequestParams();
$language = $params['language'];
if ( !Language::isValidCode( $language ) ) {
- $this->dieUsage( 'Invalid language', 'invalidlanguage' );
+ $this->dieWithError( [ 'apierror-invalidlang', 'language' ], 'invalidlanguage' );
}
$contents = ULSJsonMessageLoader::getMessages( $language );
// Output the file's contents raw
@@ -46,49 +46,28 @@ class ApiULSLocalization extends ApiBase {
}
public function getAllowedParams() {
- return array(
- 'language' => array(
+ return [
+ 'language' => [
ApiBase::PARAM_REQUIRED => true,
ApiBase::PARAM_TYPE => 'string',
- ),
- );
- }
-
- /**
- * @deprecated since MediaWiki core 1.25
- */
- public function getParamDescription() {
- return array(
- 'language' => 'Language string',
- );
- }
-
- /**
- * @deprecated since MediaWiki core 1.25
- */
- public function getDescription() {
- return 'Get the localization of ULS in given language';
+ ],
+ ];
}
/**
- * @deprecated since MediaWiki core 1.25
- */
- public function getExamples() {
- return array(
- 'api.php?action=ulslocalization&language=ta',
- 'api.php?action=ulslocalization&language=hi',
- );
- }
-
- /**
- * @see ApiBase::getExamplesMessages()
+ * @inheritDoc
*/
protected function getExamplesMessages() {
- return array(
+ return [
'action=ulslocalization&language=ta'
=> 'apihelp-ulslocalization-example-1',
'action=ulslocalization&language=hi'
=> 'apihelp-ulslocalization-example-2',
- );
+ ];
+ }
+
+ public function isInternal() {
+ // Try to scare people away from using this externally
+ return true;
}
}
diff --git a/MLEB/UniversalLanguageSelector/composer.json b/MLEB/UniversalLanguageSelector/composer.json
index 31940fa3..e749dc1e 100644
--- a/MLEB/UniversalLanguageSelector/composer.json
+++ b/MLEB/UniversalLanguageSelector/composer.json
@@ -9,16 +9,39 @@
"Web fonts"
],
"homepage": "https://www.mediawiki.org/wiki/Extension:UniversalLanguageSelector",
- "license": [ "GPL-2.0+", "MIT" ],
+ "license": [
+ "GPL-2.0-or-later",
+ "MIT"
+ ],
"support": {
"issues": "https://phabricator.wikimedia.org/tag/mediawiki-extensions-universallanguageselector/",
"irc": "irc://irc.freenode.net/mediawiki-i18n"
},
"require": {
- "php": ">=5.3.0",
+ "php": ">=5.5.9",
"composer/installers": ">=1.0.1"
},
"suggest": {
"mediawiki/cldr": "Language names in all languages"
+ },
+ "require-dev": {
+ "jakub-onderka/php-parallel-lint": "1.0.0",
+ "mediawiki/mediawiki-codesniffer": "19.1.0",
+ "jakub-onderka/php-console-highlighter": "0.3.2",
+ "mediawiki/minus-x": "0.3.1"
+ },
+ "scripts": {
+ "fix": [
+ "phpcbf",
+ "minus-x fix ."
+ ],
+ "test": [
+ "parallel-lint . --exclude vendor --exclude node_modules",
+ "phpcs -p -s",
+ "minus-x check ."
+ ]
+ },
+ "extra": {
+ "phan-taint-check-plugin": "1.5.0"
}
}
diff --git a/MLEB/UniversalLanguageSelector/composer.lock b/MLEB/UniversalLanguageSelector/composer.lock
deleted file mode 100644
index b24274c7..00000000
--- a/MLEB/UniversalLanguageSelector/composer.lock
+++ /dev/null
@@ -1,118 +0,0 @@
-{
- "_readme": [
- "This file locks the dependencies of your project to a known state",
- "Read more about it at http://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file",
- "This file is @generated automatically"
- ],
- "hash": "42e13229efe35e23cd1fd7eb6e4e9e10",
- "packages": [
- {
- "name": "composer/installers",
- "version": "v1.0.22",
- "source": {
- "type": "git",
- "url": "https://github.com/composer/installers.git",
- "reference": "bd9b14f094c89c8b5804a4e41edeb7853bb85046"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/composer/installers/zipball/bd9b14f094c89c8b5804a4e41edeb7853bb85046",
- "reference": "bd9b14f094c89c8b5804a4e41edeb7853bb85046",
- "shasum": ""
- },
- "require": {
- "composer-plugin-api": "1.0.0"
- },
- "replace": {
- "roundcube/plugin-installer": "*",
- "shama/baton": "*"
- },
- "require-dev": {
- "composer/composer": "1.0.*@dev",
- "phpunit/phpunit": "4.1.*"
- },
- "type": "composer-plugin",
- "extra": {
- "class": "Composer\\Installers\\Plugin",
- "branch-alias": {
- "dev-master": "1.0-dev"
- }
- },
- "autoload": {
- "psr-0": {
- "Composer\\Installers\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Kyle Robinson Young",
- "email": "kyle@dontkry.com",
- "homepage": "https://github.com/shama"
- }
- ],
- "description": "A multi-framework Composer library installer",
- "homepage": "http://composer.github.com/installers/",
- "keywords": [
- "Craft",
- "Dolibarr",
- "Hurad",
- "MODX Evo",
- "OXID",
- "SMF",
- "Thelia",
- "WolfCMS",
- "agl",
- "aimeos",
- "annotatecms",
- "bitrix",
- "cakephp",
- "chef",
- "codeigniter",
- "concrete5",
- "croogo",
- "dokuwiki",
- "drupal",
- "elgg",
- "fuelphp",
- "grav",
- "installer",
- "joomla",
- "kohana",
- "laravel",
- "lithium",
- "magento",
- "mako",
- "mediawiki",
- "modulework",
- "moodle",
- "phpbb",
- "piwik",
- "ppi",
- "puppet",
- "roundcube",
- "shopware",
- "silverstripe",
- "symfony",
- "typo3",
- "wordpress",
- "zend",
- "zikula"
- ],
- "time": "2015-10-29 23:28:48"
- }
- ],
- "packages-dev": [],
- "aliases": [],
- "minimum-stability": "stable",
- "stability-flags": [],
- "prefer-stable": false,
- "prefer-lowest": false,
- "platform": {
- "php": ">=5.3.0"
- },
- "platform-dev": []
-}
diff --git a/MLEB/UniversalLanguageSelector/data/LanguageNameIndexer.php b/MLEB/UniversalLanguageSelector/data/LanguageNameIndexer.php
index 0715d985..c4a970bd 100644
--- a/MLEB/UniversalLanguageSelector/data/LanguageNameIndexer.php
+++ b/MLEB/UniversalLanguageSelector/data/LanguageNameIndexer.php
@@ -14,8 +14,8 @@
*
* @file
* @ingroup Extensions
- * @licence GNU General Public Licence 2.0 or later
- * @licence MIT License
+ * @license GPL-2.0-or-later
+ * @license MIT
*/
$IP = getenv( 'MW_INSTALL_PATH' );
@@ -31,26 +31,128 @@ class LanguageNameIndexer extends Maintenance {
}
public function execute() {
+ global $wgExtraLanguageNames;
+
+ // Avoid local configuration leaking to this script
+ $wgExtraLanguageNames = [];
+
$languages = Language::fetchLanguageNames( null, 'all' );
- $all = array();
- $buckets = array();
- foreach ( $languages as $code => $name ) {
- $all[$code][strtolower( $name )] = true;
- $langnames = LanguageNames::getNames( $code, 0, 2 );
- foreach ( $langnames as $langCode => $langName ) {
- $all[$langCode][] = strtolower( $langName );
+ $buckets = [];
+ foreach ( $languages as $sourceLanguage => $autonym ) {
+ $translations = LanguageNames::getNames( $sourceLanguage, 0, 2 );
+
+ foreach ( $translations as $targetLanguage => $translation ) {
+ // Remove directionality markers used in Names.php: users are not
+ // going to type these.
+ $translation = str_replace( "\xE2\x80\x8E", '', $translation );
+ $translation = mb_strtolower( $translation );
+ $translation = trim( $translation );
+
+ // Clean up "gjermanishte zvicerane (dialekti i alpeve)" to "gjermanishte zvicerane".
+ // The original name is still shown, but avoid us creating entries such as
+ // "(dialekti" or "alpeve)".
+ $basicForm = preg_replace( '/\(.+\)$/', '', $translation );
+ $words = preg_split( '/[\s]+/u', $basicForm, -1, PREG_SPLIT_NO_EMPTY );
+
+ foreach ( $words as $index => $word ) {
+ $bucket = LanguageNameSearch::getIndex( $word );
+
+ $type = 'prefix';
+ $display = $translation;
+ if ( $index > 0 && count( $words ) > 1 ) {
+ $type = 'infix';
+ $display = "$word — $translation";
+ }
+ $buckets[$bucket][$type][$display] = $targetLanguage;
+ }
+ }
+ }
+
+ // Some languages don't have a conveniently searchable name in CLDR.
+ // For example, the name of Western Punjabi doesn't start with
+ // the string "punjabi" in any language, so it cannot be found
+ // by people who search in English.
+ // To resolve this, some languages are added here locally.
+ $specialLanguages = [
+ // Catalan, sometimes searched as "Valencià"
+ 'ca' => [ 'valencia' ],
+ // Spanish, the transliteration of the autonym is often used for searching
+ 'es' => [ 'castellano' ],
+ // Armenian, the transliteration of the autonym is often used for searching
+ 'hy' => [ 'hayeren' ],
+ // Georgian, the transliteration of the autonym is often used for searching
+ 'ka' => [ 'kartuli', 'qartuli' ],
+ // Japanese, the transliteration of the autonym is often used for searching
+ 'ja' => [ 'nihongo', 'にほんご' ],
+ // Western Punjabi, doesn't start with the word "Punjabi" in any language
+ 'pnb' => [ 'punjabi western' ],
+ // Simplified and Traditional Chinese, because zh-hans and zh-hant
+ // are not mapped to any English name
+ 'zh-hans' => [ 'chinese simplified' ],
+ 'zh-hant' => [ 'chinese traditional' ],
+ ];
+
+ foreach ( $specialLanguages as $targetLanguage => $translations ) {
+ foreach ( $translations as $translation ) {
+ $bucket = LanguageNameSearch::getIndex( $translation );
+ $buckets[$bucket]['prefix'][$translation] = $targetLanguage;
}
}
- foreach ( $all as $code => $names ) {
- foreach ( $names as $name ) {
- $bucket = LanguageNameSearch::getIndex( $name );
- $buckets[$bucket][$name] = $code;
+ $lengths = [];
+ // Sorting the bucket contents gives two benefits:
+ // - more consistent output across environments
+ // - shortest matches appear first, especially exact matches
+ // Sort buckets by index
+ ksort( $buckets );
+ foreach ( $buckets as $index => &$bucketTypes ) {
+ $lengths[] = array_sum( array_map( 'count', $bucketTypes ) );
+ // Ensure 'prefix' is before 'infix';
+ krsort( $bucketTypes );
+ // Ensure each bucket has entries sorted
+ foreach ( $bucketTypes as $type => &$bucket ) {
+ ksort( $bucket );
}
}
- $this->output( "Total buckets: " . count( $buckets ) . "\n" );
- file_put_contents( 'langnames.ser', serialize( $buckets ) );
+
+ $count = count( $buckets );
+ $min = min( $lengths );
+ $max = max( $lengths );
+ $median = $lengths[ceil( $count / 2 )];
+ $avg = array_sum( $lengths ) / $count;
+ $this->output( "Bucket stats:\n - $count buckets\n - smallest has $min entries\n" );
+ $this->output( " - largest has $max entries\n - median size is $median entries\n" );
+ $this->output( " - average size is $avg entries\n" );
+
+ $this->generateFile( $buckets );
+ }
+
+ private function generateFile( array $buckets ) {
+ $template = <<<PHP
+<?php
+// This file is generated by script!
+class LanguageNameSearchData {
+ public static \$buckets = ___;
+}
+
+PHP;
+
+ // Format for short array format
+ $data = var_export( $buckets, true );
+ $data = str_replace( "array (", '[', $data );
+ $data = str_replace( "),", '],', $data );
+ // Closing of the array, add correct indendation
+ $data = preg_replace( "/\)$/", "\t]", $data );
+ // Remove newlines after =>s
+ $data = preg_replace( '/(=>)\s+(\[)/m', '\1 \2', $data );
+ // Convert spaces to tabs. Since we are not top-level need more tabs.
+ $data = preg_replace( '/^ /m', "\t\t\t", $data );
+ $data = preg_replace( '/^ /m', "\t\t", $data );
+
+ $template = str_replace( '___', $data, $template );
+
+ file_put_contents( __DIR__ . '/LanguageNameSearchData.php', $template );
}
}
diff --git a/MLEB/UniversalLanguageSelector/data/LanguageNameSearch.php b/MLEB/UniversalLanguageSelector/data/LanguageNameSearch.php
index 3062f818..44de5c4b 100644
--- a/MLEB/UniversalLanguageSelector/data/LanguageNameSearch.php
+++ b/MLEB/UniversalLanguageSelector/data/LanguageNameSearch.php
@@ -14,56 +14,115 @@
*
* @file
* @ingroup Extensions
- * @licence GNU General Public Licence 2.0 or later
- * @licence MIT License
+ * @license GPL-2.0-or-later
+ * @license MIT
*/
class LanguageNameSearch {
- protected static $languagenames;
-
- public static function init() {
- self::$languagenames = unserialize( file_get_contents( __DIR__ . '/langnames.ser' ) );
- }
-
- public static function search( $searchKey, $typos = 0 ) {
- if ( self::$languagenames === null ) {
- self::init();
+ /**
+ * Find languages with fuzzy matching.
+ * The order of results is following:
+ * 1: exact language code match
+ * 2: exact language name match in any language
+ * 3: prefix language name match in any language
+ * 4: infix language name match in any language
+ *
+ * The returned language name for autocompletion is the first one that
+ * matches in this list:
+ * 1: exact match in [user, autonym, any other language]
+ * 2: prefix match in [user, autonum, any other language]
+ * 3: inline match in [user, autonym, any other language]
+ *
+ * @param string $searchKey
+ * @param int $typos
+ * @param string|null $userLanguage Language tag.
+ * @return array
+ */
+ public static function search( $searchKey, $typos = 0, $userLanguage = null ) {
+ $results = [];
+ $searchKey = mb_strtolower( $searchKey );
+
+ // Always prefer exact language code match
+ if ( Language::isKnownLanguageTag( $searchKey ) ) {
+ $name = mb_strtolower( Language::fetchLanguageName( $searchKey, $userLanguage ) );
+ // Check if language code is a prefix of the name
+ if ( strpos( $name, $searchKey ) === 0 ) {
+ $results[$searchKey] = $name;
+ } else {
+ $results[$searchKey] = "$searchKey – $name";
+ }
}
- // @todo: Shouldn't this be unicode aware?
- $searchKey = strtolower( $searchKey );
$index = self::getIndex( $searchKey );
-
- if ( !isset( self::$languagenames[$index] ) ) {
- return array();
+ $bucketsForIndex = [];
+ if ( isset( LanguageNameSearchData::$buckets[$index] ) ) {
+ $bucketsForIndex = LanguageNameSearchData::$buckets[$index];
}
- $bucket = self::$languagenames[$index];
+ // types are 'prefix', 'infix' (in this order!)
+ foreach ( $bucketsForIndex as $bucketType => $bucket ) {
+ foreach ( $bucket as $name => $code ) {
+ // We can skip checking languages we already have in the list
+ if ( isset( $results[ $code ] ) ) {
+ continue;
+ }
+
+ // Apply fuzzy search
+ if ( !self::matchNames( $name, $searchKey, $typos ) ) {
+ continue;
+ }
+
+ // Once we find a match, figure out the best name to display to the user
+ // If $userLanguage is not provided (null), it is the same as autonym
+ $candidates = [
+ mb_strtolower( Language::fetchLanguageName( $code, $userLanguage ) ),
+ mb_strtolower( Language::fetchLanguageName( $code, null ) ),
+ $name
+ ];
+
+ foreach ( $candidates as $candidate ) {
+ if ( $searchKey === $candidate ) {
+ $results[$code] = $candidate;
+ continue 2;
+ }
+ }
- $results = array();
- foreach ( $bucket as $name => $code ) {
- // Prefix search
- if ( strrpos( $name, $searchKey, -strlen( $name ) ) !== false
- || ( $typos > 0 && self::levenshteinDistance( $name, $searchKey ) <= $typos )
- ) {
- $results[$code] = $name;
+ foreach ( $candidates as $candidate ) {
+ if ( self::matchNames( $candidate, $searchKey, $typos ) ) {
+ $results[$code] = $candidate;
+ continue 2;
+ }
+ }
}
}
return $results;
}
+ public static function matchNames( $name, $searchKey, $typos ) {
+ return strrpos( $name, $searchKey, -strlen( $name ) ) !== false
+ || ( $typos > 0 && self::levenshteinDistance( $name, $searchKey ) <= $typos );
+ }
+
public static function getIndex( $name ) {
- return self::getCodepoint( $name ) % 1000;
+ $codepoint = self::getCodepoint( $name );
+
+ if ( $codepoint < 4000 ) {
+ // For latin etc. we need smaller buckets for speed
+ return $codepoint;
+ } else {
+ // Try to group names of same script together
+ return $codepoint - ( $codepoint % 1000 );
+ }
}
/**
* Get the code point of first letter of string
*
- * @param $str string
- * @return integer Code point of first letter of string
+ * @param string $str
+ * @return int Code point of first letter of string
*/
- static function getCodepoint( $str ) {
- $values = array();
+ public static function getCodepoint( $str ) {
+ $values = [];
$lookingFor = 1;
$strLen = strlen( $str );
$number = 0;
@@ -76,7 +135,7 @@ class LanguageNameSearch {
break;
} else {
// Codepoints larger than 127 are represented by multi-byte sequences
- if ( count( $values ) === 0 ) {
+ if ( $values === [] ) {
// 224 is the lowest non-overlong-encoded codepoint.
$lookingFor = ( $thisValue < 224 ) ? 2 : 3;
}
@@ -103,25 +162,25 @@ class LanguageNameSearch {
/**
* Calculate the Levenshtein distance between two strings
- * @param $str1
- * @param $str2
- * @return integer
+ * @param string $str1
+ * @param string $str2
+ * @return int
*/
- static function levenshteinDistance( $str1, $str2 ) {
+ public static function levenshteinDistance( $str1, $str2 ) {
+ if ( $str1 === $str2 ) {
+ return 0;
+ }
$length1 = mb_strlen( $str1, 'UTF-8' );
$length2 = mb_strlen( $str2, 'UTF-8' );
- if ( $length1 < $length2 ) {
- return self::levenshteinDistance( $str2, $str1 );
- }
if ( $length1 === 0 ) {
return $length2;
}
- if ( $str1 === $str2 ) {
- return 0;
+ if ( $length1 < $length2 ) {
+ return self::levenshteinDistance( $str2, $str1 );
}
$prevRow = range( 0, $length2 );
for ( $i = 0; $i < $length1; $i++ ) {
- $currentRow = array();
+ $currentRow = [];
$currentRow[0] = $i + 1;
$c1 = mb_substr( $str1, $i, 1, 'UTF-8' );
for ( $j = 0; $j < $length2; $j++ ) {
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/TODO b/MLEB/UniversalLanguageSelector/data/fontrepo/TODO
index 17db685b..0167eb9c 100644
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/TODO
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/TODO
@@ -1,6 +1,5 @@
* New version of Amiri font is available
* Siyam Rupali TTF claims GPL2+, website GPL3
-* Madan only says "GPL", no proper upstream link
* Miriam CLM has new upstream version (maybe also Taamey Frank?)
* KhmerOS font version number does not match upstream (v5)
* New version of CharisSIL is available
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/AbyssinicaSIL/AbyssinicaSIL-R.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/AbyssinicaSIL/AbyssinicaSIL-R.eot
deleted file mode 100644
index 2bad89c9..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/AbyssinicaSIL/AbyssinicaSIL-R.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Akkadian/Akkadian.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Akkadian/Akkadian.eot
deleted file mode 100644
index b7f36918..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Akkadian/Akkadian.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Akkadian/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Akkadian/font.ini
index e63fe4cf..f5b24552 100644
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Akkadian/font.ini
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Akkadian/font.ini
@@ -4,4 +4,4 @@ version=2.56
license=George-Douros
licensefile=George-Douros.txt
request-url=http://ultimategerardm.blogspot.in/2012/02/cuneiform-is-supported-at.html
-url=http://users.teilar.gr/~g1951d/
+url="http://users.teilar.gr/~g1951d/"
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Alef/Alef-Bold.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Alef/Alef-Bold.eot
deleted file mode 100644
index 42112a80..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Alef/Alef-Bold.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Alef/Alef-Regular.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Alef/Alef-Regular.eot
deleted file mode 100644
index 2dd6f2ed..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Alef/Alef-Regular.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Alef/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Alef/font.ini
index 61ca3254..722cf2d3 100644
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Alef/font.ini
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Alef/font.ini
@@ -5,12 +5,12 @@ license=OFL-1.1
licensefile=OFL.txt
url=http://alef.hagilda.com/
ttf=Alef-Regular.ttf
-eot=Alef-Regular.eot
woff=Alef-Regular.woff
+woff2=Alef-Regular.woff2
bold=Alef Bold
[Alef Bold]
ttf=Alef-Bold.ttf
-eot=Alef-Bold.eot
woff=Alef-Bold.woff
+woff2=Alef-Bold.woff2
fontweight=bold
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/AnjaliOldLipi/AnjaliOldLipi.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/AnjaliOldLipi/AnjaliOldLipi.eot
deleted file mode 100644
index d8595eda..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/AnjaliOldLipi/AnjaliOldLipi.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/AnjaliOldLipi/AnjaliOldLipi.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/AnjaliOldLipi/AnjaliOldLipi.ttf
deleted file mode 100644
index 6c76fa73..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/AnjaliOldLipi/AnjaliOldLipi.ttf
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/AnjaliOldLipi/AnjaliOldLipi.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/AnjaliOldLipi/AnjaliOldLipi.woff
deleted file mode 100644
index 835a05e4..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/AnjaliOldLipi/AnjaliOldLipi.woff
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/AnjaliOldLipi/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/AnjaliOldLipi/font.ini
deleted file mode 100644
index b3852fa6..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/AnjaliOldLipi/font.ini
+++ /dev/null
@@ -1,6 +0,0 @@
-[AnjaliOldLipi]
-languages=ml
-version=.0.730
-license=OFL-1.1
-licensefile=OFL.txt
-url=https://sites.google.com/site/cibu/anjalioldlipi-font
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Artaxerxes/Artaxerxes.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Artaxerxes/Artaxerxes.eot
deleted file mode 100644
index f2fe6d23..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Artaxerxes/Artaxerxes.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Artaxerxes/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Artaxerxes/font.ini
index d09b45ac..e97253ae 100644
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Artaxerxes/font.ini
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Artaxerxes/font.ini
@@ -1,7 +1,7 @@
[Artaxerxes]
languages=peo*
version=1.400
-license=GPL-2.0-with-font-exception
+license=GPL-2.0-or-later WITH Font-exception-2.0
licensefile=gpl-2.0.txt
request-url=https://gerrit.wikimedia.org/r/#/c/110534
url=https://github.com/PersianWikipedia/artaxerxes
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Autonym/Autonym.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Autonym/Autonym.eot
deleted file mode 100644
index 5e1a2636..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Autonym/Autonym.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Autonym/Autonym.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Autonym/Autonym.ttf
deleted file mode 100644
index 0565206d..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Autonym/Autonym.ttf
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Autonym/Autonym.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Autonym/Autonym.woff
deleted file mode 100644
index 13b55d32..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Autonym/Autonym.woff
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Autonym/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Autonym/font.ini
deleted file mode 100644
index 14e9ee48..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Autonym/font.ini
+++ /dev/null
@@ -1,6 +0,0 @@
-[Autonym]
-languages=mul
-version=20131205
-license=OFL-1.1
-licensefile=OFL.txt
-url=https://github.com/santhoshtr/AutonymFont/
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/CharisSIL/CharisSIL-R.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/CharisSIL/CharisSIL-R.eot
deleted file mode 100644
index 50375688..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/CharisSIL/CharisSIL-R.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/ComicNeue/ComicNeue-Bold.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/ComicNeue/ComicNeue-Bold.eot
deleted file mode 100644
index 992e2cb6..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/ComicNeue/ComicNeue-Bold.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/ComicNeue/ComicNeue-Regular-Oblique.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/ComicNeue/ComicNeue-Regular-Oblique.eot
deleted file mode 100644
index 32b81645..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/ComicNeue/ComicNeue-Regular-Oblique.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/ComicNeue/ComicNeue-Regular.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/ComicNeue/ComicNeue-Regular.eot
deleted file mode 100644
index 3bfc4531..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/ComicNeue/ComicNeue-Regular.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/ComicNeue/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/ComicNeue/font.ini
index f6810186..5cbfa728 100644
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/ComicNeue/font.ini
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/ComicNeue/font.ini
@@ -5,19 +5,19 @@ license=CC0 1.0 Universal
licensefile=CC0-3.0.txt
version=1.1
ttf=ComicNeue-Regular.ttf
-eot=ComicNeue-Regular.eot
woff=ComicNeue-Regular.woff
+woff2=ComicNeue-Regular.woff2
bold=ComicNeue Bold
italic=ComicNeue Oblique
[ComicNeue Bold]
ttf=ComicNeue-Bold.ttf
-eot=ComicNeue-Bold.eot
woff=ComicNeue-Bold.woff
+woff2=ComicNeue-Bold.woff2
fontweight=bold
[ComicNeue Oblique]
ttf=ComicNeue-Regular-Oblique.ttf
-eot=ComicNeue-Regular-Oblique.eot
woff=ComicNeue-Regular-Oblique.woff
+woff2=ComicNeue-Regular-Oblique.woff2
fontstyle=italic
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/DoulosSIL/DoulosSIL-R.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/DoulosSIL/DoulosSIL-R.eot
deleted file mode 100644
index 06d562e9..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/DoulosSIL/DoulosSIL-R.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/EastSyriacAdiabene/SyrCOMAdiabene.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/EastSyriacAdiabene/SyrCOMAdiabene.eot
deleted file mode 100644
index 202cb211..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/EastSyriacAdiabene/SyrCOMAdiabene.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/EstrangeloEdessa/SyrCOMEdessa.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/EstrangeloEdessa/SyrCOMEdessa.eot
deleted file mode 100644
index 1a4d1eed..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/EstrangeloEdessa/SyrCOMEdessa.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/FreeFontThana/FreeFont-Thaana-Bold.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/FreeFontThana/FreeFont-Thaana-Bold.eot
deleted file mode 100644
index 9b04d36c..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/FreeFontThana/FreeFont-Thaana-Bold.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/FreeFontThana/FreeFont-Thaana.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/FreeFontThana/FreeFont-Thaana.eot
deleted file mode 100644
index 9eaaf780..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/FreeFontThana/FreeFont-Thaana.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/FreeFontThana/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/FreeFontThana/font.ini
index 65c3aa67..7806d7c9 100644
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/FreeFontThana/font.ini
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/FreeFontThana/font.ini
@@ -1,17 +1,17 @@
[FreeFont-Thaana]
languages=dv*
version=1.0
-license=GPL-3.0
+license=GPL-3.0-only
licensefile=gpl-3.0.txt
url=www.gnu.org/software/freefont
request-url=https://phabricator.wikimedia.org/T44812
ttf=FreeFont-Thaana.ttf
-eot=FreeFont-Thaana.eot
woff=FreeFont-Thaana.woff
+woff2=FreeFont-Thaana.woff2
bold=FreeFont-Thaana Bold
[FreeFont-Thaana Bold]
ttf=FreeFont-Thaana-Bold.ttf
-eot=FreeFont-Thaana-Bold.eot
woff=FreeFont-Thaana-Bold.woff
+woff2=FreeFont-Thaana-Bold.woff2
fontweight=bold
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/GentiumPlus/GentiumPlus-I.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/GentiumPlus/GentiumPlus-I.eot
deleted file mode 100644
index 20c98232..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/GentiumPlus/GentiumPlus-I.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/GentiumPlus/GentiumPlus-R.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/GentiumPlus/GentiumPlus-R.eot
deleted file mode 100644
index abbfe64b..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/GentiumPlus/GentiumPlus-R.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/GentiumPlus/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/GentiumPlus/font.ini
index 913ee8bb..7fa17207 100644
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/GentiumPlus/font.ini
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/GentiumPlus/font.ini
@@ -5,12 +5,12 @@ license=OFL-1.1
licensefile=OFL.txt
url=http://scripts.sil.org/gentium
ttf=GentiumPlus-R.ttf
-eot=GentiumPlus-R.eot
woff=GentiumPlus-R.woff
+woff2=GentiumPlus-R.woff2
italic=GentiumPlus Italic
[GentiumPlus Italic]
ttf=GentiumPlus-I.ttf
-eot=GentiumPlus-I.eot
woff=GentiumPlus-I.woff
+woff2=GentiumPlus-I.woff2
fontstyle=italic
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Gubbi/Gubbi.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Gubbi/Gubbi.eot
deleted file mode 100644
index 847cc220..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Gubbi/Gubbi.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Gubbi/Gubbi.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Gubbi/Gubbi.ttf
deleted file mode 100644
index 57e3470d..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Gubbi/Gubbi.ttf
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Gubbi/Gubbi.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Gubbi/Gubbi.woff
deleted file mode 100644
index 2b79d1c8..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Gubbi/Gubbi.woff
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Gubbi/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Gubbi/font.ini
deleted file mode 100644
index 525d8435..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Gubbi/font.ini
+++ /dev/null
@@ -1,6 +0,0 @@
-[Gubbi]
-languages=kn, tcy
-version=1.3
-license=GPL-3.0+
-licensefile=gpl-3.0.txt
-url=https://github.com/aravindavk/Gubbi/
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Hanuman/Hanuman.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Hanuman/Hanuman.eot
deleted file mode 100644
index 2415a887..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Hanuman/Hanuman.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Hanuman/Hanumanb.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Hanuman/Hanumanb.eot
deleted file mode 100644
index 9c643406..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Hanuman/Hanumanb.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Hanuman/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Hanuman/font.ini
index 25d1450e..a0a3e4a9 100644
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Hanuman/font.ini
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Hanuman/font.ini
@@ -6,12 +6,12 @@ licensefile=OFL.txt
url=http://www.google.com/fonts/specimen/Hanuman
request-url=https://phabricator.wikimedia.org/T55673
ttf=Hanuman.ttf
-eot=Hanuman.eot
woff=Hanuman.woff
+woff2=Hanuman.woff2
bold=Hanuman Bold
[Hanuman Bold]
ttf=Hanumanb.ttf
-eot=Hanumanb.eot
woff=Hanumanb.woff
+woff2=Hanumanb.woff2
fontweight=bold
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/HussainiNastaleeq/hussaini-nastaleeq.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/HussainiNastaleeq/hussaini-nastaleeq.eot
deleted file mode 100644
index a8db6c3b..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/HussainiNastaleeq/hussaini-nastaleeq.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSans/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSans/font.ini
index 2fcf361a..ff0d51de 100644
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSans/font.ini
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSans/font.ini
@@ -6,12 +6,12 @@ licensefile=IranianSans.txt
request-url=https://fa.wikipedia.org/wiki/%D9%88%DB%8C%DA%A9%DB%8C%E2%80%8C%D9%BE%D8%AF%DB%8C%D8%A7:%D9%86%D8%B8%D8%B1%D8%AE%D9%88%D8%A7%D9%87%DB%8C/%D8%A7%D9%81%D8%B2%D9%88%D8%AF%D9%86_%DB%8C%DA%A9_%D9%82%D9%84%D9%85_%D9%88_%D8%AD%D8%B0%D9%81_%D9%82%D9%84%D9%85%DB%8C_%D8%AF%DB%8C%DA%AF%D8%B1
url=http://fedoraproject.org/wiki/Iranian_fonts
ttf=irsans.ttf
-eot=irsans.eot
woff=irsans.woff
+woff2=irsans.woff2
bold=Iranian Sans Bold
[Iranian Sans Bold]
ttf=irsansb.ttf
-eot=irsansb.eot
woff=irsansb.woff
+woff2=irsansb.woff2
fontweight=bold
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSans/irsans.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSans/irsans.eot
deleted file mode 100644
index 5e5b8dac..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSans/irsans.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSans/irsansb.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSans/irsansb.eot
deleted file mode 100644
index 179a7ea5..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSans/irsansb.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSerif/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSerif/font.ini
index bb975ebc..2ae106e5 100644
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSerif/font.ini
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSerif/font.ini
@@ -6,5 +6,5 @@ licensefile=IranianSans.txt
request-url=https://fa.wikipedia.org/wiki/%D9%88%DB%8C%DA%A9%DB%8C%E2%80%8C%D9%BE%D8%AF%DB%8C%D8%A7:%D9%86%D8%B8%D8%B1%D8%AE%D9%88%D8%A7%D9%87%DB%8C/%D8%A7%D9%81%D8%B2%D9%88%D8%AF%D9%86_%DB%8C%DA%A9_%D9%82%D9%84%D9%85_%D9%88_%D8%AD%D8%B0%D9%81_%D9%82%D9%84%D9%85%DB%8C_%D8%AF%DB%8C%DA%AF%D8%B1
url=http://fedoraproject.org/wiki/Iranian_fonts
ttf=irseri.ttf
-eot=irseri.eot
woff=irseri.woff
+woff2=irseri.woff2
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSerif/irseri.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSerif/irseri.eot
deleted file mode 100644
index d6b7e4fd..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSerif/irseri.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Jomolhari/Jomolhari.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Jomolhari/Jomolhari.eot
deleted file mode 100644
index 33529b91..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Jomolhari/Jomolhari.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode-Bold.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode-Bold.eot
deleted file mode 100644
index de4a9404..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode-Bold.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode-BoldItalic.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode-BoldItalic.eot
deleted file mode 100644
index 8d5614f8..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode-BoldItalic.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode-Italic.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode-Italic.eot
deleted file mode 100644
index ba971814..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode-Italic.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode.eot
deleted file mode 100644
index 9de769b7..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/font.ini
index a206475f..610d8e75 100644
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/font.ini
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/font.ini
@@ -5,27 +5,27 @@ license=OFL-1.1
licensefile=OFL.txt
url=http://junicode.sourceforge.net/
ttf=Junicode.ttf
-eot=Junicode.eot
woff=Junicode.woff
+woff2=Junicode.woff2
italic=Junicode Italic
bold=Junicode Bold
bolditalic=Junicode Bold Italic
[Junicode Italic]
ttf=Junicode-Italic.ttf
-eot=Junicode-Italic.eot
woff=Junicode-Italic.woff
+woff2=Junicode-Italic.woff2
fontstyle=italic
[Junicode Bold]
ttf=Junicode-Bold.ttf
-eot=Junicode-Bold.eot
woff=Junicode-Bold.woff
+woff2=Junicode-Bold.woff2
fontweight=bold
[Junicode Bold Italic]
ttf=Junicode-BoldItalic.ttf
-eot=Junicode-BoldItalic.eot
woff=Junicode-BoldItalic.woff
+woff2=Junicode-BoldItalic.woff2
fontstyle=italic
fontweight=bold
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/KhmerOS/KhmerOS.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/KhmerOS/KhmerOS.eot
deleted file mode 100644
index 2e8a7058..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/KhmerOS/KhmerOS.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/KhmerOS/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/KhmerOS/font.ini
index 152ad1a4..0a974bdd 100644
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/KhmerOS/font.ini
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/KhmerOS/font.ini
@@ -1,6 +1,6 @@
[KhmerOS]
languages=km
version=1.10
-license=LGPL-2.0.1+
+license=LGPL-2.1-or-later
licensefile=lgpl-2.1.txt
url=http://www.khmeros.info/drupal612/en/fonts
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/KhmerOSbattambang/KhmerOSbattambang.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/KhmerOSbattambang/KhmerOSbattambang.eot
deleted file mode 100644
index b7f6aa94..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/KhmerOSbattambang/KhmerOSbattambang.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/KhmerOSbattambang/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/KhmerOSbattambang/font.ini
index 83db3697..93916a90 100644
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/KhmerOSbattambang/font.ini
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/KhmerOSbattambang/font.ini
@@ -1,7 +1,7 @@
[KhmerOSbattambang]
languages=km*
version=1.10
-license=LGPL-2.1+
+license=LGPL-2.1-or-later
licensefile=lgpl-2.1.txt
request-url=https://www.mediawiki.org/wiki/Special:Code/MediaWiki/87161
url=http://www.khmeros.info/drupal612/en/fonts
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Lateef/LateefRegOT.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Lateef/LateefRegOT.eot
deleted file mode 100644
index e8fb726a..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Lateef/LateefRegOT.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Lateef/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Lateef/font.ini
index 5bb92a82..8a3f3617 100644
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Lateef/font.ini
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Lateef/font.ini
@@ -6,5 +6,5 @@ licensefile=OFL.txt
request-url=https://phabricator.wikimedia.org/T60382, https://phabricator.wikimedia.org/T60381
url=http://scripts.sil.org/Lateef
ttf=LateefRegOT.ttf
-eot=LateefRegOT.eot
woff=LateefRegOT.woff
+woff2=LateefRegOT.woff2
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_RBIah.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_RBIah.eot
deleted file mode 100644
index d6fdbbc7..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_RBIah.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_RBah.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_RBah.eot
deleted file mode 100644
index 60c39f11..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_RBah.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_RIah.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_RIah.eot
deleted file mode 100644
index 183a18aa..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_RIah.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_Rah.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_Rah.eot
deleted file mode 100644
index e751b12a..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_Rah.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/font.ini
index 81cb9ca9..1ac9e3c3 100644
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/font.ini
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/font.ini
@@ -4,27 +4,27 @@ license=OFL-1.1
licensefile=OFL.txt
url=http://linuxlibertine.org
ttf=LinLibertine_Rah.ttf
-eot=LinLibertine_Rah.eot
woff=LinLibertine_Rah.woff
+woff2=LinLibertine_Rah.woff2
bold=Linux Libertine Bold
italic=Linux Libertine Italic
bolditalic=Linux Libertine Bold Italic
[Linux Libertine Bold]
ttf=LinLibertine_RBah.ttf
-eot=LinLibertine_RBah.eot
woff=LinLibertine_RBah.woff
+woff2=LinLibertine_RBah.woff2
fontweight=bold
[Linux Libertine Italic]
ttf=LinLibertine_RIah.ttf
-eot=LinLibertine_RIah.eot
woff=LinLibertine_RIah.woff
+woff2=LinLibertine_RIah.woff2
fontstyle=italic
[Linux Libertine Bold Italic]
ttf=LinLibertine_RBIah.ttf
-eot=LinLibertine_RBIah.eot
woff=LinLibertine_RBIah.woff
+woff2=LinLibertine_RBIah.woff2
fontstyle=italic
fontweight=bold
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitAssamese/Lohit-Assamese.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitAssamese/Lohit-Assamese.eot
deleted file mode 100644
index 93286d4a..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitAssamese/Lohit-Assamese.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitAssamese/Lohit-Assamese.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitAssamese/Lohit-Assamese.ttf
deleted file mode 100644
index 729164e9..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitAssamese/Lohit-Assamese.ttf
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitAssamese/Lohit-Assamese.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitAssamese/Lohit-Assamese.woff
deleted file mode 100644
index 779550f3..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitAssamese/Lohit-Assamese.woff
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitAssamese/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitAssamese/font.ini
deleted file mode 100644
index 3470e87c..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitAssamese/font.ini
+++ /dev/null
@@ -1,6 +0,0 @@
-[Lohit Assamese]
-languages=as
-version=2.5.3
-license=OFL-1.1
-licensefile=OFL.txt
-url=https://fedorahosted.org/lohit/
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitBengali/Lohit-Bengali.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitBengali/Lohit-Bengali.eot
deleted file mode 100644
index 5039a8bd..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitBengali/Lohit-Bengali.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitBengali/Lohit-Bengali.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitBengali/Lohit-Bengali.ttf
deleted file mode 100644
index 2f537a19..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitBengali/Lohit-Bengali.ttf
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitBengali/Lohit-Bengali.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitBengali/Lohit-Bengali.woff
deleted file mode 100644
index 1c42940a..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitBengali/Lohit-Bengali.woff
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitBengali/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitBengali/font.ini
deleted file mode 100644
index 7eec0066..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitBengali/font.ini
+++ /dev/null
@@ -1,6 +0,0 @@
-[Lohit Bengali]
-languages=bn, bpy
-version=2.5.3
-license=OFL-1.1
-licensefile=OFL.txt
-url=https://fedorahosted.org/lohit/
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitDevanagari/Lohit-Devanagari.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitDevanagari/Lohit-Devanagari.eot
deleted file mode 100644
index 6cc85874..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitDevanagari/Lohit-Devanagari.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitDevanagari/Lohit-Devanagari.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitDevanagari/Lohit-Devanagari.ttf
deleted file mode 100644
index ca50e052..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitDevanagari/Lohit-Devanagari.ttf
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitDevanagari/Lohit-Devanagari.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitDevanagari/Lohit-Devanagari.woff
deleted file mode 100644
index 534123cf..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitDevanagari/Lohit-Devanagari.woff
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitDevanagari/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitDevanagari/font.ini
deleted file mode 100644
index cd724563..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitDevanagari/font.ini
+++ /dev/null
@@ -1,8 +0,0 @@
-[Lohit Devanagari]
-languages=bh*, bho*, hi*, kok*, gom*, mai*, sa*
-version=2.5.3
-license=OFL-1.1
-licensefile=OFL.txt
-request-url=https://mediawiki.org/wiki/Special:Code/MediaWiki/103749, https://mediawiki.org/wiki/Special:Code/MediaWiki/97982
-; Sanskrit (sa) support originally added in the Lohit Hindi font
-url=https://fedorahosted.org/lohit/
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitGujarati/Lohit-Gujarati.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitGujarati/Lohit-Gujarati.eot
deleted file mode 100644
index d7ad8b8c..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitGujarati/Lohit-Gujarati.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitGujarati/Lohit-Gujarati.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitGujarati/Lohit-Gujarati.ttf
deleted file mode 100644
index aaa5678d..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitGujarati/Lohit-Gujarati.ttf
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitGujarati/Lohit-Gujarati.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitGujarati/Lohit-Gujarati.woff
deleted file mode 100644
index 47b9bfe8..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitGujarati/Lohit-Gujarati.woff
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitGujarati/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitGujarati/font.ini
deleted file mode 100644
index e7370042..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitGujarati/font.ini
+++ /dev/null
@@ -1,7 +0,0 @@
-[Lohit Gujarati]
-languages=gu*
-version=2.5.3
-license=OFL-1.1
-licensefile=OFL.txt
-request-url=https://mediawiki.org/wiki/Special:Code/MediaWiki/103728
-url=https://fedorahosted.org/lohit/
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitKannada/Lohit-Kannada.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitKannada/Lohit-Kannada.eot
deleted file mode 100644
index 1c7738f5..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitKannada/Lohit-Kannada.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitKannada/Lohit-Kannada.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitKannada/Lohit-Kannada.ttf
deleted file mode 100644
index 2911ce7b..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitKannada/Lohit-Kannada.ttf
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitKannada/Lohit-Kannada.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitKannada/Lohit-Kannada.woff
deleted file mode 100644
index 6314f1e2..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitKannada/Lohit-Kannada.woff
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitKannada/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitKannada/font.ini
deleted file mode 100644
index 511d25d3..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitKannada/font.ini
+++ /dev/null
@@ -1,7 +0,0 @@
-[Lohit Kannada]
-languages=kn*, tcy*
-version=2.5.3
-license=OFL-1.1
-licensefile=OFL.txt
-request-url=https://www.mediawiki.org/wiki/Special:Code/MediaWiki/85714
-url=https://fedorahosted.org/lohit/
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitMarathi/Lohit-Marathi.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitMarathi/Lohit-Marathi.eot
deleted file mode 100644
index 2d819c7a..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitMarathi/Lohit-Marathi.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitMarathi/Lohit-Marathi.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitMarathi/Lohit-Marathi.ttf
deleted file mode 100644
index d4ff22d4..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitMarathi/Lohit-Marathi.ttf
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitMarathi/Lohit-Marathi.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitMarathi/Lohit-Marathi.woff
deleted file mode 100644
index 3d7f0ffd..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitMarathi/Lohit-Marathi.woff
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitMarathi/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitMarathi/font.ini
deleted file mode 100644
index c474036e..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitMarathi/font.ini
+++ /dev/null
@@ -1,8 +0,0 @@
-[Lohit Marathi]
-languages=ahr*, mr*
-version=2.5.3
-license=OFL-1.1
-licensefile=OFL.txt
-request-url=https://mediawiki.org/wiki/Special:Code/MediaWiki/108715, https://mediawiki.org/wiki/Special:Code/MediaWiki/103749
-; originally added as part of the Lohit Devanagari font
-url=https://fedorahosted.org/lohit/
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitNepali/Lohit-Nepali.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitNepali/Lohit-Nepali.eot
deleted file mode 100644
index defc94dc..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitNepali/Lohit-Nepali.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitNepali/Lohit-Nepali.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitNepali/Lohit-Nepali.ttf
deleted file mode 100644
index 13dd9712..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitNepali/Lohit-Nepali.ttf
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitNepali/Lohit-Nepali.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitNepali/Lohit-Nepali.woff
deleted file mode 100644
index 41a936ec..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitNepali/Lohit-Nepali.woff
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitNepali/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitNepali/font.ini
deleted file mode 100644
index c9fee66a..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitNepali/font.ini
+++ /dev/null
@@ -1,8 +0,0 @@
-[Lohit Nepali]
-languages=ne*
-version=2.5.3
-license=OFL-1.1
-licensefile=OFL.txt
-request-url=https://mediawiki.org/wiki/Special:Code/MediaWiki/103749
-; originally added as part of the Lohit Devanagari font
-url=https://fedorahosted.org/lohit/
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitOdia/Lohit-Odia.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitOdia/Lohit-Odia.eot
deleted file mode 100644
index 318f2ee5..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitOdia/Lohit-Odia.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitOdia/Lohit-Odia.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitOdia/Lohit-Odia.ttf
deleted file mode 100644
index 41b007a0..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitOdia/Lohit-Odia.ttf
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitOdia/Lohit-Odia.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitOdia/Lohit-Odia.woff
deleted file mode 100644
index 7d938807..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitOdia/Lohit-Odia.woff
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitOdia/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitOdia/font.ini
deleted file mode 100644
index fbdae782..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitOdia/font.ini
+++ /dev/null
@@ -1,7 +0,0 @@
-[Lohit Odia]
-languages=or*
-version=2.5.5
-license=OFL-1.1
-licensefile=OFL.txt
-request-url=https://www.mediawiki.org/wiki/Special:Code/MediaWiki/85673
-url=https://fedorahosted.org/lohit/
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitPunjabi/Lohit-Punjabi.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitPunjabi/Lohit-Punjabi.eot
deleted file mode 100644
index 5de2238f..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitPunjabi/Lohit-Punjabi.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitPunjabi/Lohit-Punjabi.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitPunjabi/Lohit-Punjabi.ttf
deleted file mode 100644
index 1bf4a03f..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitPunjabi/Lohit-Punjabi.ttf
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitPunjabi/Lohit-Punjabi.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitPunjabi/Lohit-Punjabi.woff
deleted file mode 100644
index c592d8b2..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitPunjabi/Lohit-Punjabi.woff
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitPunjabi/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitPunjabi/font.ini
deleted file mode 100644
index 53b77dcf..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitPunjabi/font.ini
+++ /dev/null
@@ -1,7 +0,0 @@
-[Lohit Punjabi]
-languages=pa*
-version=2.5.3
-license=OFL-1.1
-licensefile=OFL.txt
-request-url=https://mediawiki.org/wiki/Special:Code/MediaWiki/104552
-url=https://fedorahosted.org/lohit/
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamil/Lohit-Tamil.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamil/Lohit-Tamil.eot
deleted file mode 100644
index 22955419..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamil/Lohit-Tamil.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamil/Lohit-Tamil.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamil/Lohit-Tamil.ttf
deleted file mode 100644
index 49cd57ab..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamil/Lohit-Tamil.ttf
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamil/Lohit-Tamil.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamil/Lohit-Tamil.woff
deleted file mode 100644
index 0bbf8f22..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamil/Lohit-Tamil.woff
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamil/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamil/font.ini
deleted file mode 100644
index d7d3da8c..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamil/font.ini
+++ /dev/null
@@ -1,6 +0,0 @@
-[Lohit Tamil]
-languages=ta
-version=2.5.3
-license=OFL-1.1
-licensefile=OFL.txt
-url=https://fedorahosted.org/lohit/
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamilClassical/Lohit-Tamil-Classical.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamilClassical/Lohit-Tamil-Classical.eot
deleted file mode 100644
index a51fd4b6..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamilClassical/Lohit-Tamil-Classical.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamilClassical/Lohit-Tamil-Classical.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamilClassical/Lohit-Tamil-Classical.ttf
deleted file mode 100644
index ddce397a..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamilClassical/Lohit-Tamil-Classical.ttf
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamilClassical/Lohit-Tamil-Classical.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamilClassical/Lohit-Tamil-Classical.woff
deleted file mode 100644
index 293cc65a..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamilClassical/Lohit-Tamil-Classical.woff
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamilClassical/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamilClassical/font.ini
deleted file mode 100644
index 3e9ba728..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamilClassical/font.ini
+++ /dev/null
@@ -1,6 +0,0 @@
-[Lohit Tamil Classical]
-languages=ta
-version=2.5.3
-license=OFL-1.1
-licensefile=OFL.txt
-url=https://fedorahosted.org/lohit/
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTelugu/Lohit-Telugu.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTelugu/Lohit-Telugu.eot
deleted file mode 100644
index 9ff94821..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTelugu/Lohit-Telugu.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTelugu/Lohit-Telugu.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTelugu/Lohit-Telugu.ttf
deleted file mode 100644
index f14fd4e7..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTelugu/Lohit-Telugu.ttf
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTelugu/Lohit-Telugu.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTelugu/Lohit-Telugu.woff
deleted file mode 100644
index 60fadce0..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTelugu/Lohit-Telugu.woff
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTelugu/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTelugu/font.ini
deleted file mode 100644
index 5ae9b412..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTelugu/font.ini
+++ /dev/null
@@ -1,7 +0,0 @@
-[Lohit Telugu]
-languages=te*
-version=2.5.3
-license=OFL-1.1
-licensefile=OFL.txt
-request-url=https://www.mediawiki.org/wiki/Special:Code/MediaWiki/85714
-url=https://fedorahosted.org/lohit/
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Meera/Meera.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Meera/Meera.eot
deleted file mode 100644
index c88b7a7a..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Meera/Meera.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Meera/Meera.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Meera/Meera.ttf
deleted file mode 100644
index c54a55bb..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Meera/Meera.ttf
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Meera/Meera.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Meera/Meera.woff
deleted file mode 100644
index cef8b92d..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Meera/Meera.woff
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Meera/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Meera/font.ini
deleted file mode 100644
index 1b561346..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Meera/font.ini
+++ /dev/null
@@ -1,6 +0,0 @@
-[Meera]
-languages=ml
-version=6.0
-license=GPL-3.0.0+-with-font-exception
-licensefile=gpl-3.0.txt
-url=https://savannah.nongnu.org/projects/smc
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/MiriamCLM/MiriamCLM-Book.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/MiriamCLM/MiriamCLM-Book.eot
deleted file mode 100644
index 0f401228..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/MiriamCLM/MiriamCLM-Book.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/MiriamCLM/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/MiriamCLM/font.ini
index f4fa7b38..f1a3c350 100644
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/MiriamCLM/font.ini
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/MiriamCLM/font.ini
@@ -1,6 +1,6 @@
[Miriam CLM]
languages=he
version=0.130
-license=GPL-2.0+
+license=GPL-2.0-or-later
licensefile=gpl-2.0.txt
url=http://culmus.sourceforge.net/
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Myanmar3/Myanmar3.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Myanmar3/Myanmar3.eot
deleted file mode 100644
index 8e83abc2..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Myanmar3/Myanmar3.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Myanmar3/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Myanmar3/font.ini
index c6110d0b..2384aa00 100644
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Myanmar3/font.ini
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Myanmar3/font.ini
@@ -1,6 +1,6 @@
[Myanmar3]
languages=my
version=3.0
-license=LGPL-2.1+
+license=LGPL-2.1-or-later
licensefile=lgpl-2.1.txt
url=http://code.google.com/p/myanmar3source/
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/NafeesWeb/NafeesWeb.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/NafeesWeb/NafeesWeb.eot
deleted file mode 100644
index aa90c1aa..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/NafeesWeb/NafeesWeb.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/NafeesWeb/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/NafeesWeb/font.ini
index 4ced3482..0e8eb1dd 100644
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/NafeesWeb/font.ini
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/NafeesWeb/font.ini
@@ -1,7 +1,7 @@
[NafeesWeb]
languages=ur
version=1.2
-license=GPL-2.0
+license=GPL-2.0-only
licensefile=gpl-2.0.txt
request-url=https://phabricator.wikimedia.org/T48693
;URL seems broken but, Debian has this font confirming its license validity.
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nazli/Nazli-bold.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nazli/Nazli-bold.eot
deleted file mode 100644
index c15e03f4..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nazli/Nazli-bold.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nazli/Nazli.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nazli/Nazli.eot
deleted file mode 100644
index 0be7b03c..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nazli/Nazli.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nazli/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nazli/font.ini
index a05b61c4..7a420672 100644
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nazli/font.ini
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nazli/font.ini
@@ -1,17 +1,17 @@
[Nazli]
languages=fa
version=0.4
-license=GPL-2.0
+license=GPL-2.0-only
licensefile=gpl-2.0.txt
request-url=https://gerrit.wikimedia.org/r/#/c/76349/
url=http://persian-computing.org/
ttf=Nazli.ttf
-eot=Nazli.eot
woff=Nazli.woff
+woff2=Nazli.woff2
bold=Nazli Bold
[Nazli Bold]
ttf=Nazli-bold.ttf
-eot=Nazli-bold.eot
woff=Nazli-bold.woff
+woff2=Nazli-bold.woff2
fontweight=bold
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nokora/Nokora-Bold.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nokora/Nokora-Bold.eot
deleted file mode 100644
index f4c978b3..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nokora/Nokora-Bold.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nokora/Nokora-Regular.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nokora/Nokora-Regular.eot
deleted file mode 100644
index e54ee7a6..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nokora/Nokora-Regular.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nokora/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nokora/font.ini
index b760ac94..40f502f6 100644
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nokora/font.ini
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nokora/font.ini
@@ -6,12 +6,12 @@ licensefile=apache-2.0.txt
url=http://www.google.com/fonts/specimen/Nokora
request-url=https://phabricator.wikimedia.org/T55673
ttf=Nokora-Regular.ttf
-eot=Nokora-Regular.eot
woff=Nokora-Regular.woff
+woff2=Nokora-Regular.woff2
bold= Nokora Bold
[Nokora Bold]
ttt=Nokora-Bold.ttf
-eot=Nokora-Bold.eot
woff=Nokora-Bold.woff
+woff2=Nokora-Bold.woff2
fontweight=bold
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/NuosuSIL/NuosuSIL.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/NuosuSIL/NuosuSIL.eot
deleted file mode 100644
index 17449d3c..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/NuosuSIL/NuosuSIL.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/NuosuSIL/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/NuosuSIL/font.ini
index f8353dfe..0e58f0e9 100644
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/NuosuSIL/font.ini
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/NuosuSIL/font.ini
@@ -6,5 +6,5 @@ licensefile=OFL.txt
request-url=https://phabricator.wikimedia.org/T54959
url=http://scripts.sil.org/SILYI_home
ttf=NuosuSIL.ttf
-eot=NuosuSIL.eot
woff=NuosuSIL.woff
+woff2=NuosuSIL.woff2
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Bold.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Bold.eot
deleted file mode 100644
index 276d9a64..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Bold.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Bold.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Bold.woff
index 96dc141a..fd695fbf 100644
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Bold.woff
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Bold.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-BoldItalic.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-BoldItalic.eot
deleted file mode 100644
index 34fbea7f..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-BoldItalic.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-BoldItalic.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-BoldItalic.woff
index 609ece96..e1cee27f 100644
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-BoldItalic.woff
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-BoldItalic.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Italic.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Italic.eot
deleted file mode 100644
index 00b0482a..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Italic.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Italic.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Italic.woff
index fa0a8441..1ab6f982 100644
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Italic.woff
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Italic.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Regular.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Regular.eot
deleted file mode 100644
index 3af2452f..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Regular.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Regular.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Regular.woff
index 79de258e..7cb3b373 100644
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Regular.woff
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Regular.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/font.ini
index 8671c28f..02c96776 100644
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/font.ini
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/font.ini
@@ -1,32 +1,32 @@
[OpenDyslexic]
languages=af,bk,ca,cy,da,de,en,es,et,fi,fo,fr,fy,ga,gd,gl,hu,id,is,it,lb,li,mi,ms,nb,nl,oc,pl,pt,sq,sv,sw,tl,tr,wa
-version=2.1.0+git060dc841
-license=CC-BY-3.0
-licensefile=CC-BY-3.0.txt
+version=2.1.0+git03aa683
+license=OpenDyslexic
+licensefile=OpenDyslexic.txt
url=https://github.com/antijingoist/open-dyslexic
request-url=https://phabricator.wikimedia.org/T42539
ttf=OpenDyslexic-Regular.ttf
-eot=OpenDyslexic-Regular.eot
woff=OpenDyslexic-Regular.woff
+woff2=OpenDyslexic-Regular.woff2
bold=OpenDyslexic Bold
italic=OpenDyslexic Italic
bolditalic=OpenDyslexic BoldItalic
[OpenDyslexic Bold]
ttf=OpenDyslexic-Bold.ttf
-eot=OpenDyslexic-Bold.eot
woff=OpenDyslexic-Bold.woff
+woff2=OpenDyslexic-Bold.woff2
fontweight=bold
[OpenDyslexic Italic]
ttf=OpenDyslexic-Italic.ttf
-eot=OpenDyslexic-Italic.eot
woff=OpenDyslexic-Italic.woff
+woff2=OpenDyslexic-Italic.woff2
fontstyle=italic
[OpenDyslexic BoldItalic]
ttf=OpenDyslexic-BoldItalic.ttf
-eot=OpenDyslexic-BoldItalic.eot
woff=OpenDyslexic-BoldItalic.woff
+woff2=OpenDyslexic-BoldItalic.woff2
fontweight=bold
fontstyle=italic
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/font.ini
index 9ebe50ce..4113416d 100644
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/font.ini
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/font.ini
@@ -1,32 +1,32 @@
[OskiEast]
languages=cr*, iu
version=2.200
-license=GPL-3.0
+license=GPL-3.0-only
licensefile=gpl-3.0.txt
request-url=https://gerrit.wikimedia.org/r/#/c/80548/
url=http://www.languagegeek.com/font/fontdownload.html#AlgonAndInu
ttf=oskie.ttf
-eot=oskie.eot
woff=oskie.woff
+woff2=oskie.woff2
italic=OskiEast Italic
bold=OskiEast Bold
bolditalic=OskiEast Bold Italic
[OskiEast Italic]
ttf=oskieitalic.ttf
-eot=oskieitalic.eot
woff=oskieitalic.woff
+woff2=oskieitalic.woff2
fontstyle=italic
[OskiEast Bold]
ttf=oskiebold.ttf
-eot=oskiebold.eot
woff=oskiebold.woff
+woff2=oskiebold.woff2
fontweight=bold
[OskiEast Bold Italic]
ttf=oskiebolditalic.ttf
-eot=oskiebolditalic.eot
woff=oskiebolditalic.woff
+woff2=oskiebolditalic.woff2
fontstyle=italic
fontweight=bold
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskie.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskie.eot
deleted file mode 100644
index 673fd4b1..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskie.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskiebold.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskiebold.eot
deleted file mode 100644
index 403042a3..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskiebold.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskiebolditalic.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskiebolditalic.eot
deleted file mode 100644
index 9e3e5037..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskiebolditalic.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskieitalic.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskieitalic.eot
deleted file mode 100644
index 59461473..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskieitalic.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Padauk/Padauk-Regular.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Padauk/Padauk-Regular.eot
deleted file mode 100644
index e1299c0e..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Padauk/Padauk-Regular.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Padauk/Padauk-Regular.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Padauk/Padauk-Regular.ttf
index b647b19c..e5d9f01f 100644
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Padauk/Padauk-Regular.ttf
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Padauk/Padauk-Regular.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Padauk/Padauk-Regular.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Padauk/Padauk-Regular.woff
index 3b633f5a..e37e6c45 100644
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Padauk/Padauk-Regular.woff
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Padauk/Padauk-Regular.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Padauk/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Padauk/font.ini
index ea63dc09..eb1cea29 100644
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Padauk/font.ini
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Padauk/font.ini
@@ -1,6 +1,6 @@
[Padauk]
languages=my
-version=2.8
+version=3.003
license=OFL-1.1
licensefile=OFL.txt
url=http://scripts.sil.org/Padauk
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Pagul/Pagul.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Pagul/Pagul.eot
deleted file mode 100644
index 6f43fd6b..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Pagul/Pagul.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Pagul/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Pagul/font.ini
index 24c1cf62..a4c8c4db 100644
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Pagul/font.ini
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Pagul/font.ini
@@ -1,7 +1,7 @@
[Pagul]
languages=saz*
version=1.0
-license=GPL-3.0.0-with-font-exception
+license=GPL-3.0-only WITH Font-exception-2.0
licensefile=gpl-3.0.txt
request-url=https://www.mediawiki.org/wiki/Special:Code/MediaWiki/87738
url=http://sourceforge.net/projects/pagul/
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Pangururan/Pangururan.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Pangururan/Pangururan.eot
deleted file mode 100644
index 0867c7b5..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Pangururan/Pangururan.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Pangururan/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Pangururan/font.ini
index 880bff87..48c0c057 100644
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Pangururan/font.ini
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Pangururan/font.ini
@@ -5,5 +5,5 @@ license=OFL-1.1
licensefile=OFL.txt
url=http://evertype.com/fonts/batak/
ttf=Pangururan.ttf
-eot=Pangururan.eot
woff=Pangururan.woff
+woff2=Pangururan.woff2
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Phetsarath/Phetsarath-Bold.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Phetsarath/Phetsarath-Bold.eot
deleted file mode 100644
index 50ae0a98..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Phetsarath/Phetsarath-Bold.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Phetsarath/Phetsarath-Regular.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Phetsarath/Phetsarath-Regular.eot
deleted file mode 100644
index 63815231..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Phetsarath/Phetsarath-Regular.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Phetsarath/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Phetsarath/font.ini
index c8c1997e..6ba1d2e4 100644
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Phetsarath/font.ini
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Phetsarath/font.ini
@@ -6,12 +6,12 @@ licensefile=OFL.txt
request-url=https://gerrit.wikimedia.org/r/#/c/80550
url=http://phetsarath.gov.la
ttf=Phetsarath-Regular.ttf
-eot=Phetsarath-Regular.eot
woff=Phetsarath-Regular.woff
+woff2=Phetsarath-Regular.woff2
bold=Phetsarath-Bold
[Phetsarath-Bold]
ttf=Phetsarath-Bold.ttf
-eot=Phetsarath-Bold.eot
woff=Phetsarath-Bold.woff
+woff2=Phetsarath-Bold.woff2
fontweight=bold
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/README b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/README
index f1e938f0..8fdbee59 100644
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/README
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/README
@@ -1,4 +1,10 @@
-This file describes common fields in font.ini file. Use ';' to add any comments.
+This is font repository for Universal Language Selector. These fonts are used
+by jquery.webfonts to deliver on demand or based on users preferences. There is
+a script named "compile-font-repo.php" to generate the font repository in
+JavaScript syntax. It reads this font.ini files.
+
+Each folder contains a font.ini file, which is the description about the font.
+The fields in the font.ini is described below. Use ';' to add any comments.
languages
---------
@@ -24,8 +30,22 @@ languages, use URLs separated by comma in,
request-url=url1, url2
-format.
-
url
---
Upstream location of font to download.
+
+formats
+-------
+If there are style variants, font.ini should contain file names for each
+variants(bold, italic etc). Otherwise, based on the extension of files, the
+font compilation script can pick it up.
+
+Preparing font formats
+-----------------------
+
+1. From the upstream releases, take the TTF versions.
+2. To generate woff format, get: https://github.com/rillig/sfntly
+3. Use https://github.com/google/woff2 to generate woff2 from ttf. This will
+ produce a compressed woff2 file. Modern browsers support this format.
+4. The eot file format is used only by older IE, but it can be generated using
+ sfntly. Make sure to use -mtx flag to get enhanced compression.
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/RailwaySans/RailwaySans.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/RailwaySans/RailwaySans.eot
deleted file mode 100644
index 378dc765..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/RailwaySans/RailwaySans.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/RailwaySans/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/RailwaySans/font.ini
index 640a7f32..f9c216b6 100644
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/RailwaySans/font.ini
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/RailwaySans/font.ini
@@ -5,5 +5,5 @@ licensefile=OFL.txt
url=http://openfontlibrary.org/en/font/railway-sans
request-url=https://phabricator.wikimedia.org/T60203
ttf=RailwaySans.ttf
-eot=RailwaySans.eot
woff=RailwaySans.woff
+woff2=RailwaySans.woff2
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Saab/Saab.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Saab/Saab.eot
deleted file mode 100644
index 8c359b4c..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Saab/Saab.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Saab/Saab.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Saab/Saab.ttf
deleted file mode 100644
index b0144b28..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Saab/Saab.ttf
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Saab/Saab.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Saab/Saab.woff
deleted file mode 100644
index 62891208..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Saab/Saab.woff
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Saab/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Saab/font.ini
deleted file mode 100644
index 1e00c542..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Saab/font.ini
+++ /dev/null
@@ -1,6 +0,0 @@
-[Saab]
-languages=pa
-version=0.91
-license=GPL-2.0-with-font-exception
-licensefile=gpl-2.0.txt
-url=http://guca.sourceforge.net/typography/fonts/saab/
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Scheherazade/Scheherazade-R.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Scheherazade/Scheherazade-R.eot
deleted file mode 100644
index 51dacfc5..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Scheherazade/Scheherazade-R.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Scheherazade/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Scheherazade/font.ini
index 164a2775..8f086754 100644
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Scheherazade/font.ini
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Scheherazade/font.ini
@@ -6,5 +6,5 @@ licensefile=OFL.txt
request-url=https://phabricator.wikimedia.org/T60382, https://phabricator.wikimedia.org/T60381
url=http://scripts.sil.org/Scheherazade
ttf=Scheherazade-R.ttf
-eot=Scheherazade-R.eot
woff=Scheherazade-R.woff
+woff2=Scheherazade-R.woff2
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/SertoUrhoy/SyrCOMUrhoy.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/SertoUrhoy/SyrCOMUrhoy.eot
deleted file mode 100644
index a0aa3a9a..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/SertoUrhoy/SyrCOMUrhoy.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Shapour/Shapour.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Shapour/Shapour.eot
deleted file mode 100644
index c754d15a..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Shapour/Shapour.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Shapour/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Shapour/font.ini
index c9f25d9e..6913d812 100644
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Shapour/font.ini
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Shapour/font.ini
@@ -1,7 +1,7 @@
[Shapour]
languages=pal*
version=001.000
-license=GPL-3.0+
+license=GPL-3.0-or-later
licensefile=gpl-3.0.txt
request-url=https://phabricator.wikimedia.org/T46076
url=https://github.com/behaafarid/shapour_font
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/SiyamRupali/SiyamRupali.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/SiyamRupali/SiyamRupali.eot
deleted file mode 100644
index 4203c0a1..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/SiyamRupali/SiyamRupali.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/SiyamRupali/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/SiyamRupali/font.ini
index 938040c7..b00b93cc 100644
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/SiyamRupali/font.ini
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/SiyamRupali/font.ini
@@ -1,7 +1,7 @@
[Siyam Rupali]
languages=bn*, bpy*
version=1.070
-license=GPL-3.0
+license=GPL-3.0-only
licensefile=gpl-3.0.txt
request-url=https://phabricator.wikimedia.org/T35599, https://phabricator.wikimedia.org/T39863
url=https://github.com/potasiyam/Siyam-Rupali
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Skeirs/Skeirs II.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Skeirs/Skeirs II.eot
deleted file mode 100644
index 4426ab47..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Skeirs/Skeirs II.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Skeirs/Skeirs II.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Skeirs/Skeirs II.ttf
deleted file mode 100644
index f8762446..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Skeirs/Skeirs II.ttf
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Skeirs/Skeirs II.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Skeirs/Skeirs II.woff
deleted file mode 100644
index be3faafa..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Skeirs/Skeirs II.woff
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Skeirs/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Skeirs/font.ini
index 90076c96..e462950b 100644
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Skeirs/font.ini
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Skeirs/font.ini
@@ -4,6 +4,6 @@ url=http://robert-pfeffer.net/schriftarten/englisch/nachgeladener_rahmen.html?sk
license=OFL-1.1
licensefile=OFL.txt
version=4.0
-ttf=Skeirs II.ttf
-eot=Skeirs II.eot
-woff=Skeirs II.woff
+ttf=Skeirs-II.ttf
+woff=Skeirs-II.woff
+woff2=Skeirs-II.woff2
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Suwannaphum/Suwannaphum.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Suwannaphum/Suwannaphum.eot
deleted file mode 100644
index 8ded8b79..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Suwannaphum/Suwannaphum.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Suwannaphum/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Suwannaphum/font.ini
index b19c465e..b771587c 100644
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Suwannaphum/font.ini
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Suwannaphum/font.ini
@@ -6,5 +6,5 @@ licensefile=OFL.txt
url=http://www.google.com/fonts/specimen/Suwannaphum
request-url=https://phabricator.wikimedia.org/T55673
ttf=Suwannaphum.ttf
-eot=Suwannaphum.eot
woff=Suwannaphum.woff
+woff2=Suwannaphum.woff2
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TaameyFrankCLM/TaameyFrankCLM.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TaameyFrankCLM/TaameyFrankCLM.eot
deleted file mode 100644
index 86b22ef3..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TaameyFrankCLM/TaameyFrankCLM.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TaameyFrankCLM/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TaameyFrankCLM/font.ini
index 3b144fa4..ddd61aea 100644
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TaameyFrankCLM/font.ini
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TaameyFrankCLM/font.ini
@@ -1,7 +1,7 @@
[Taamey Frank CLM]
languages=hbo*, he
version=0.110
-license=GPL-2.0+
+license=GPL-2.0-or-later
licensefile=gpl-2.0.txt
request-url=https://he.wikisource.org/wiki/%D7%95%D7%99%D7%A7%D7%99%D7%98%D7%A7%D7%A1%D7%98:%D7%9E%D7%96%D7%A0%D7%95%D7%9F/%D7%90%D7%A8%D7%9B%D7%99%D7%95%D7%9F_%D7%99%D7%95%D7%9C%D7%99_2013#.D7.92.D7.95.D7.A4.D7.A0.D7.99.D7.9D.21
url=http://culmus.sourceforge.net/
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TharLon/TharLon.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TharLon/TharLon.eot
deleted file mode 100644
index 26757e0d..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TharLon/TharLon.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thendral/ThendralUni.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thendral/ThendralUni.eot
deleted file mode 100644
index 1dc01752..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thendral/ThendralUni.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thendral/ThendralUni.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thendral/ThendralUni.ttf
deleted file mode 100644
index 17cb07e7..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thendral/ThendralUni.ttf
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thendral/ThendralUni.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thendral/ThendralUni.woff
deleted file mode 100644
index 335a6724..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thendral/ThendralUni.woff
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thendral/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thendral/font.ini
deleted file mode 100644
index 792b528b..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thendral/font.ini
+++ /dev/null
@@ -1,6 +0,0 @@
-[Thendral]
-languages=ta
-version=1.0
-license=GPL-2.0
-licensefile=gpl-2.0.txt
-url=https://github.com/thamizha/tamil-fonts
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thenee/TheneeUni.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thenee/TheneeUni.eot
deleted file mode 100644
index 733ff767..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thenee/TheneeUni.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thenee/TheneeUni.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thenee/TheneeUni.ttf
deleted file mode 100644
index 2a994447..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thenee/TheneeUni.ttf
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thenee/TheneeUni.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thenee/TheneeUni.woff
deleted file mode 100644
index 1e7023d6..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thenee/TheneeUni.woff
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thenee/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thenee/font.ini
deleted file mode 100644
index b196f410..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thenee/font.ini
+++ /dev/null
@@ -1,6 +0,0 @@
-[Thenee]
-languages=ta
-version=1.0
-license=GPL-2.0
-licensefile=gpl-2.0.txt
-url=https://github.com/thamizha/tamil-fonts
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TuladhaJejeg/TuladhaJejeg_gr.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TuladhaJejeg/TuladhaJejeg_gr.eot
deleted file mode 100644
index 1e6395f2..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TuladhaJejeg/TuladhaJejeg_gr.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/UnifrakturMaguntia/UnifrakturMaguntia.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/UnifrakturMaguntia/UnifrakturMaguntia.eot
deleted file mode 100644
index af4265ae..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/UnifrakturMaguntia/UnifrakturMaguntia.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/UnifrakturMaguntia/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/UnifrakturMaguntia/font.ini
index bc4d42c8..27cd91be 100644
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/UnifrakturMaguntia/font.ini
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/UnifrakturMaguntia/font.ini
@@ -4,5 +4,5 @@ license=OFL-1.1
licensefile=OFL.txt
url=http://unifraktur.sourceforge.net/maguntia.html
ttf=UnifrakturMaguntia.ttf
-eot=UnifrakturMaguntia.eot
woff=UnifrakturMaguntia.woff
+woff2=UnifrakturMaguntia.woff2
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-bold.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-bold.eot
deleted file mode 100644
index c4a31c39..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-bold.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-bold.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-bold.ttf
index 9d6b98fa..a97bf9cf 100644
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-bold.ttf
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-bold.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-bold.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-bold.woff
index c0547da3..8688b15c 100644
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-bold.woff
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-bold.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-boldslanted.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-boldslanted.eot
deleted file mode 100644
index 203bfeb1..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-boldslanted.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-boldslanted.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-boldslanted.ttf
index 79ea126b..d3e6cdca 100644
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-boldslanted.ttf
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-boldslanted.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-boldslanted.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-boldslanted.woff
index a7ea9a90..aee55823 100644
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-boldslanted.woff
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-boldslanted.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-regular.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-regular.eot
deleted file mode 100644
index 3c77551a..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-regular.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-regular.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-regular.ttf
index 0fa885b4..a6df4284 100644
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-regular.ttf
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-regular.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-regular.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-regular.woff
index ab4046f6..6f72f646 100644
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-regular.woff
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-regular.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-slanted.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-slanted.eot
deleted file mode 100644
index 762d6420..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-slanted.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-slanted.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-slanted.ttf
index a2f2c0ca..c86e2a72 100644
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-slanted.ttf
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-slanted.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-slanted.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-slanted.woff
index 13e66a8d..9a303533 100644
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-slanted.woff
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-slanted.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/font.ini
index 201bc06b..86e80260 100644
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/font.ini
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/font.ini
@@ -1,32 +1,32 @@
[Amiri]
languages=ar, arb, ckb
-version=1.0.2
+version=0.107
license=OFL-1.1
licensefile=OFL.txt
request-url=https://phabricator.wikimedia.org/T43359, https://phabricator.wikimedia.org/T59767
url=http://amirifont.org
ttf=amiri-regular.ttf
-eot=amiri-regular.eot
woff=amiri-regular.woff
+woff2=amiri-regular.woff2
bold=Amiri Bold
italic=Amiri Italic
bolditalic=Amiri Bold Italic
[Amiri Bold]
ttf=amiri-bold.ttf
-eot=amiri-bold.eot
woff=amiri-bold.woff
+woff2=amiri-bold.woff2
fontweight=bold
[Amiri Italic]
ttf=amiri-slanted.ttf
-eot=amiri-slanted.eot
woff=amiri-slanted.woff
+woff2=amiri-slanted.woff2
fontstyle=italic
[Amiri Bold Italic]
ttf=amiri-boldslanted.ttf
-eot=amiri-boldslanted.eot
woff=amiri-boldslanted.woff
+woff2=amiri-boldslanted.woff2
fontstyle=italic
fontweight=bold
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/lklug/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/lklug/font.ini
index b011c10a..83e7f636 100644
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/lklug/font.ini
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/lklug/font.ini
@@ -1,11 +1,11 @@
[lklug]
languages=si
version=0.6
-license=GPL-2.0
+license=GPL-2.0-only
licensefile=gpl-2.0.txt
; URL is 404 at present. Current version is derived from Debian.
url=http://www.lug.lk/fonts/lklug
request-url=https://phabricator.wikimedia.org/T54964
ttf=lklug.ttf
-eot=lklug.eot
woff=lklug.woff
+woff2=lklug.woff2
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/lklug/lklug.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/lklug/lklug.eot
deleted file mode 100644
index adfd10a5..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/lklug/lklug.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/madan/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/madan/font.ini
deleted file mode 100644
index c3f6b234..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/madan/font.ini
+++ /dev/null
@@ -1,6 +0,0 @@
-[Madan]
-languages=ne
-version=2
-license=GPL-2.0
-licensefile=gpl-2.0.txt
-url=http://www.mpp.org.np
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/madan/madan.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/madan/madan.eot
deleted file mode 100644
index e1810c18..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/madan/madan.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/madan/madan.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/madan/madan.ttf
deleted file mode 100644
index f9060bd8..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/madan/madan.ttf
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/madan/madan.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/madan/madan.woff
deleted file mode 100644
index aa43ef01..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/madan/madan.woff
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/madan/madan_license.txt b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/madan/madan_license.txt
deleted file mode 100644
index f02dccb9..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/madan/madan_license.txt
+++ /dev/null
@@ -1,16 +0,0 @@
-Open Type rules and Nepali glyphsets developed at Madan Puraskar Pustakalaya and released under GPL.
-
-Contacts:
-Madan Puraskar Pustakalaya
-Yalamaya Kendra, Patan, NEPAL
-GPO Box. 42
-www.mpp.org.np
-info@mpp.org.np
-
-Font Developers:
-Gaurav Shrestha | gaurav@mpp.org.np
-Anjan Ale | anjan@mpp.org.np
-
-
-Copyright (c) 2007 by Madan Puraskar Pustakalaya. All rights reserved.
-
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/saweri/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/saweri/font.ini
index 8008abfd..b0be3e93 100644
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/saweri/font.ini
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/saweri/font.ini
@@ -1,7 +1,7 @@
[Saweri]
languages=bug*, mak*
version=2
-license=GPL-3.0
+license=GPL-3.0-only
licensefile=gpl-3.0.txt
-request-url=http://www.mediawiki.org/wiki/Special:Code/MediaWiki/111928
+request-url=https://www.mediawiki.org/wiki/Special:Code/MediaWiki/111928
url=https://sites.google.com/site/niariot87/
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/saweri/saweri.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/saweri/saweri.eot
deleted file mode 100644
index b4c4eaf0..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/saweri/saweri.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/utkal/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/utkal/font.ini
deleted file mode 100644
index 486df0c3..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/utkal/font.ini
+++ /dev/null
@@ -1,6 +0,0 @@
-[Utkal]
-languages=or
-version=0.13
-license=GPL-2.0
-licensefile=gpl-2.0.txt
-url=http://oriya.sarovar.org/user_download.html
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/utkal/utkal.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/utkal/utkal.eot
deleted file mode 100644
index f5553313..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/utkal/utkal.eot
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/utkal/utkal.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/utkal/utkal.ttf
deleted file mode 100644
index 12d64f2c..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/utkal/utkal.ttf
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/utkal/utkal.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/utkal/utkal.woff
deleted file mode 100644
index f93a7534..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/utkal/utkal.woff
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/licenses/README b/MLEB/UniversalLanguageSelector/data/fontrepo/licenses/README
index ed0b35d0..eee9519f 100644
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/licenses/README
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/licenses/README
@@ -5,14 +5,13 @@ Common Licenses
---------------
Apache-2.0
CC-BY-3.0
-GPL-2.0
-GPL-2.0+
-GPL-2.0-with-font-exception
-GPL-3.0
-GPL-3.0+
-GPL-3.0-with-font-exception
-LGPL-2.0.1+
-LGPL-2.1+
+GPL-2.0-only
+GPL-2.0-or-later
+GPL-2.0-or-later WITH Font-exception-2.0
+GPL-3.0-only
+GPL-3.0-or-later
+GPL-3.0-only WITH Font-exception-2.0
+LGPL-2.1-or-later
OFL-1.1
Other
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/scripts/compile.php b/MLEB/UniversalLanguageSelector/data/fontrepo/scripts/compile.php
deleted file mode 100644
index 1ab1726e..00000000
--- a/MLEB/UniversalLanguageSelector/data/fontrepo/scripts/compile.php
+++ /dev/null
@@ -1,102 +0,0 @@
-<?php
-
-if ( isset( $_SERVER['REQUEST_METHOD'] ) ) {
- exit( "compile.php should be run from the command line\n" );
-}
-
-if ( !is_dir( '../fonts/' ) ) {
- exit( "compile.php should be run from the data/fontrepo/scripts directory\n" );
-}
-
-$list = array();
-$list['base'] = '../data/fontrepo/fonts/';
-foreach ( glob( '../fonts/*/font.ini' ) as $inifile ) {
- $conf = parse_ini_file( $inifile, true );
- $languages = array();
- $version = null;
- foreach ( $conf as $fontname => $font ) {
-
- if ( isset( $font['languages'] ) ) {
- $languages = explode( ',', $font['languages'] );
- foreach ( $languages as $rcode ) {
- $rcode = trim( $rcode );
- $code = str_replace( '*', '', $rcode );
- if ( !isset( $list['languages'][$code] ) ) {
- $list['languages'][$code] = array( 'system' );
- }
- if ( strpos( $rcode, '*' ) !== false ) {
- unset( $list['languages'][$code][0] );
- array_unshift( $list['languages'][$code], $fontname );
- } else {
- $list['languages'][$code][] = $fontname;
- }
- }
- }
- if ( isset( $font['version'] ) ) {
- $version = $font['version'];
- }
- $list['fonts'][$fontname] = array(
- 'version' => $version,
- );
-
- if ( isset( $font['fontweight'] ) ) {
- $list['fonts'][$fontname]['fontweight'] = $font['fontweight'];
- }
- if ( isset( $font['fontstyle'] ) ) {
- $list['fonts'][$fontname]['fontstyle'] = $font['fontstyle'];
- }
-
- $dir = dirname( $inifile );
-
- if ( isset( $font['ttf'] ) ) {
- $list['fonts'][$fontname]['ttf'] = basename( $dir ) . '/' . $font['ttf'];
- }
- if ( isset( $font['svg'] ) ) {
- $list['fonts'][$fontname]['svg'] = basename( $dir ) . '/' . $font['svg'];
- }
- if ( isset( $font['eot'] ) ) {
- $list['fonts'][$fontname]['eot'] = basename( $dir ) . '/' . $font['eot'];
- }
- if ( isset( $font['woff'] ) ) {
- $list['fonts'][$fontname]['woff'] = basename( $dir ) . '/' . $font['woff'];
- }
- if ( isset( $font['woff2'] ) ) {
- $list['fonts'][$fontname]['woff2'] = basename( $dir ) . '/' . $font['woff2'];
- }
-
- // If font formats are not explicitly defined, scan the directory.
- if ( !isset( $list['fonts'][$fontname]['ttf'] ) ) {
- foreach ( glob( "$dir/*.{eot,ttf,woff,woff2,svg}", GLOB_BRACE ) as $fontfile ) {
- $type = substr( $fontfile, strrpos( $fontfile, '.' ) + 1 );
- $list['fonts'][$fontname][$type] = str_replace( dirname( $dir ) . '/', '', $fontfile );
- }
- }
-
- // Font variants
- if ( isset( $font['bold'] ) ) {
- $list['fonts'][$fontname]['variants']['bold'] = $font['bold'];
- }
- if ( isset( $font['bolditalic'] ) ) {
- $list['fonts'][$fontname]['variants']['bolditalic'] = $font['bolditalic'];
- }
- if ( isset( $font['italic'] ) ) {
- $list['fonts'][$fontname]['variants']['italic'] = $font['italic'];
- }
- }
-}
-
-ksort( $list['languages'] );
-ksort( $list['fonts'] );
-
-$json = json_encode( $list );
-$js = <<<JAVASCRIPT
-// Do not edit! This file is generated from data/fontrepo by data/fontrepo/scripts/compile.php
-( function ( $ ) {
- $.webfonts = $.webfonts || {};
- $.webfonts.repository = $json;
-}( jQuery ) );
-
-JAVASCRIPT;
-file_put_contents( '../../../resources/js/ext.uls.webfonts.repository.js', $js );
-
-echo "Done.\n";
diff --git a/MLEB/UniversalLanguageSelector/data/langnames.ser b/MLEB/UniversalLanguageSelector/data/langnames.ser
deleted file mode 100644
index 8eedcc85..00000000
--- a/MLEB/UniversalLanguageSelector/data/langnames.ser
+++ /dev/null
@@ -1 +0,0 @@
-a:773:{i:0;a:26:{i:1;s:2:"zu";s:12:"티베트어";s:2:"bo";s:47:"ஸ்விஸ் ஹை ஜெர்மன்";s:5:"de-ch";s:24:"ஸ்பானிஷ்";s:2:"es";s:9:"斐济文";s:2:"fj";s:9:"斐濟文";s:2:"fj";s:43:"ஸ்காட்ஸ் கேலிக்";s:2:"gd";s:40:"ஸ்விஸ் ஜெர்மன்";s:3:"gsw";s:15:"斐濟印地文";s:3:"hif";s:24:"ஸ்காட்ஸ்";s:3:"sco";s:24:"ஸ்லோவாக்";s:2:"sk";s:33:"ஸ்லோவேனியன்";s:2:"sl";s:24:"ஸாமோவான்";s:2:"sm";s:40:"ஸ்ரானன் டோங்கோ";s:3:"srn";s:18:"ஸ்வாடீ";s:2:"ss";s:24:"ஸ்வீடிஷ்";s:2:"sv";s:15:"티그리냐어";s:2:"ti";s:18:"ஸ்வானா";s:2:"tn";s:18:"ஸோங்கா";s:2:"ts";s:34:"ஸ்கோல்ட் சமி";s:3:"sms";s:83:"ஸ்டாண்டர்ட் மொராக்கன் தமாசைட்";s:3:"zgh";s:40:"ஸ்விஸ் பிரஞ்சு";s:5:"fr-ch";s:12:"티그레어";s:3:"tig";s:18:"ஸ்லாவ்";s:3:"den";s:9:"티비어";s:3:"tiv";s:9:"티얍어";s:3:"kcg";}i:113;a:59:{s:5:"qafar";s:2:"aa";s:9:"qafár af";s:2:"aa";s:18:"qədimi ingiliscə";s:3:"ang";s:14:"qırımtatarca";s:3:"crh";s:25:"qırımtatarca (latin)‎";s:8:"crh-latn";s:11:"qallunaatut";s:2:"da";s:12:"quyi sorbcha";s:3:"dsb";s:11:"qərbi friz";s:2:"fy";s:6:"qaqauz";s:3:"gag";s:8:"qalisian";s:2:"gl";s:7:"quarani";s:2:"gn";s:15:"qədimi yunanca";s:3:"grc";s:7:"qucarat";s:2:"gu";s:13:"qaraqalpaqsha";s:3:"kaa";s:16:"qara-qalpaq dili";s:3:"kaa";s:8:"qobilcha";s:3:"kab";s:7:"quicuio";s:2:"ki";s:5:"qazax";s:2:"kk";s:8:"qozoqcha";s:2:"kk";s:20:"qazaqşa (latın)‎";s:7:"kk-latn";s:23:"qazaqşa (türkïya)‎";s:5:"kk-tr";s:20:"qaraçay-balkar dili";s:3:"krc";s:9:"qırğız";s:2:"ky";s:8:"quirguiz";s:2:"ky";s:11:"qirgʻizcha";s:2:"ky";s:5:"qanda";s:2:"lg";s:7:"quechua";s:2:"qu";s:8:"quítxua";s:2:"qu";s:9:"quechuera";s:2:"qu";s:8:"quíchua";s:2:"qu";s:11:"qvechuancha";s:2:"qu";s:26:"quichua du haut-chimborazo";s:3:"qug";s:39:"quechua dell’altopiano del chimborazo";s:3:"qug";s:15:"qulla sami simi";s:3:"sma";s:18:"ထိုင်း";s:2:"th";s:18:"qədimi misir dili";s:3:"egy";s:7:"qa dili";s:3:"gaa";s:4:"qusi";s:3:"guz";s:13:"qoyra-chincha";s:3:"khq";s:7:"quitxé";s:3:"quc";s:7:"quiché";s:3:"quc";s:15:"quiché-sprooch";s:3:"quc";s:6:"quiche";s:3:"quc";s:10:"qichiancha";s:3:"quc";s:8:"qez dili";s:3:"gez";s:18:"qədimi fransızca";s:3:"fro";s:9:"qayo dili";s:3:"gay";s:11:"qabaya dili";s:3:"gba";s:12:"qilbert gili";s:3:"gil";s:15:"qədimi almanca";s:3:"goh";s:10:"qondi dili";s:3:"gon";s:14:"qorontalo dili";s:3:"gor";s:10:"qrebo dili";s:3:"grb";s:12:"qviçin dili";s:3:"gwi";s:9:"quimbundo";s:3:"kmb";s:14:"qədimi norsca";s:3:"non";s:14:"qədimi farsca";s:3:"peo";s:20:"qədimi provensialca";s:3:"pro";s:16:"qədimi irlandca";s:3:"sga";}i:768;a:24:{s:12:"አፋርኛ";s:2:"aa";s:15:"አብሐዚኛ";s:2:"ab";s:18:"አፍሪካንኛ";s:2:"af";s:21:"አፍሪቃንሰኛ";s:2:"af";s:12:"አካንኛ";s:2:"ak";s:12:"አማርኛ";s:2:"am";s:15:"አምሐረኛ";s:2:"am";s:15:"አሳሜዛዊ";s:2:"as";s:15:"አያማርኛ";s:2:"ay";s:21:"አዘርባጃንኛ";s:2:"az";s:24:"አዜርባይጃንኛ";s:2:"az";s:12:"አይሪሽ";s:2:"ga";s:15:"አርመናዊ";s:2:"hy";s:21:"አይስላንድኛ";s:2:"is";s:21:"አይስላንደኛ";s:2:"is";s:12:"니웨언어";s:3:"niu";s:31:"니안자어; 치츄어; 츄어";s:2:"ny";s:15:"አልቤኒኛ";s:2:"sq";s:12:"አኮሊኛ";s:3:"ach";s:9:"አገም";s:3:"agq";s:6:"አሱ";s:3:"asa";s:12:"니안콜어";s:3:"nyn";s:12:"니아스어";s:3:"nia";s:15:"니암웨지어";s:3:"nym";}i:575;a:603:{s:16:"الأفارية";s:2:"aa";s:10:"اَفار";s:2:"aa";s:18:"الأبخازية";s:2:"ab";s:20:"اَبخازِیان";s:2:"ab";s:16:"ابقازیان";s:2:"ab";s:22:"الأتشينيزية";s:3:"ace";s:18:"اَچَےنیٖز";s:3:"ace";s:22:"الأفريقانية";s:2:"af";s:22:"اَفریٖکانٛز";s:2:"af";s:16:"افريکاني";s:2:"af";s:18:"ایفریکانز";s:2:"af";s:16:"الأكانية";s:2:"ak";s:10:"اَکان";s:2:"ak";s:8:"اکان";s:2:"ak";s:16:"الأمهرية";s:2:"am";s:10:"امهری";s:2:"am";s:14:"اَمہاری";s:2:"am";s:12:"امهاري";s:2:"am";s:12:"امہاری";s:2:"am";s:20:"الأراجونية";s:2:"an";s:16:"اَراگونی";s:2:"an";s:35:"الإنجليزية القديمة";s:3:"ang";s:27:"انگلیسی باستان";s:3:"ang";s:16:"الأنجيكا";s:3:"anp";s:16:"اَنٛگِکا";s:3:"anp";s:14:"العربية";s:2:"ar";s:16:"الآرامية";s:3:"arc";s:14:"اَرَمیک";s:3:"arc";s:20:"الأروكانية";s:3:"arn";s:23:"ایرو کونِیَن";s:3:"arn";s:16:"الأسامية";s:2:"as";s:10:"اسٲمۍ";s:2:"as";s:19:"اسمائى ژبه";s:2:"as";s:16:"الأسترية";s:3:"ast";s:20:"ایسٹوٗریَن";s:3:"ast";s:20:"الأفاريكية";s:2:"av";s:14:"اَوارِک";s:2:"av";s:16:"الأيمارا";s:2:"ay";s:12:"ایمارا";s:2:"ay";s:24:"الأذربيجانية";s:2:"az";s:22:"اَزَربیجانی";s:2:"az";s:20:"الباشكيرية";s:2:"ba";s:22:"البيلوروسية";s:2:"be";s:18:"البلغارية";s:2:"bg";s:20:"البهوجبرية";s:3:"bho";s:20:"البيسلامية";s:2:"bi";s:18:"البامبارا";s:2:"bm";s:18:"البنغالية";s:2:"bn";s:14:"التبتية";s:2:"bo";s:20:"البريتونية";s:2:"br";s:16:"البوسنية";s:2:"bs";s:20:"البجينيزية";s:3:"bug";s:20:"الكتالانية";s:2:"ca";s:18:"الشيشانية";s:2:"ce";s:18:"السيبيونو";s:3:"ceb";s:18:"التشامورو";s:2:"ch";s:14:"الشوكتو";s:3:"cho";s:16:"الشيروكي";s:3:"chr";s:14:"الشايان";s:3:"chy";s:33:"السريانية الكردية";s:3:"ckb";s:20:"الكورسيكية";s:2:"co";s:10:"الكرى";s:2:"cr";s:35:"التركية الكريمينية";s:3:"crh";s:16:"التشيكية";s:2:"cs";s:20:"الكاشبايان";s:3:"csb";s:27:"اسلاوی کلیسایی";s:2:"cu";s:14:"التشفاش";s:2:"cv";s:14:"الولزية";s:2:"cy";s:22:"الدانماركية";s:2:"da";s:18:"الألمانية";s:2:"de";s:12:"الماني";s:2:"de";s:37:"الألمانية النمساوية";s:5:"de-at";s:50:"الألمانية العليا السويسرية";s:5:"de-ch";s:27:"الصربية السفلى";s:3:"dsb";s:20:"المالديفية";s:2:"dv";s:18:"الزونخاية";s:2:"dz";s:12:"الإيوي";s:2:"ee";s:13:"اوه‌ای";s:2:"ee";s:8:"ایٖو";s:2:"ee";s:6:"ایو";s:2:"ee";s:18:"اليونانية";s:2:"el";s:25:"امیلیانو-روما";s:3:"eml";s:20:"الإنجليزية";s:2:"en";s:14:"انگلیسی";s:2:"en";s:18:"اَنٛگیٖزۍ";s:2:"en";s:14:"انګلیسي";s:2:"en";s:14:"انگریزی";s:2:"en";s:35:"الإنجليزية الكندية";s:5:"en-ca";s:27:"انگلیسی کانادا";s:5:"en-ca";s:41:"الإنجليزية البريطانية";s:5:"en-gb";s:31:"انگلیسی بریتانیا";s:5:"en-gb";s:20:"الإسبرانتو";s:2:"eo";s:16:"اسپرانتو";s:2:"eo";s:22:"ایٚسپَرینٹو";s:2:"eo";s:18:"ایسپرانٹو";s:2:"eo";s:18:"الإسبانية";s:2:"es";s:18:"اسپانیایی";s:2:"es";s:18:"الإستونية";s:2:"et";s:18:"استونیایی";s:2:"et";s:20:"ایٚسٹونیَن";s:2:"et";s:14:"اسٹونین";s:2:"et";s:28:"اکسترامادورایی";s:3:"ext";s:16:"الفارسية";s:2:"fa";s:10:"الفلة";s:2:"ff";s:18:"الفنلندية";s:2:"fi";s:14:"الفيجية";s:2:"fj";s:16:"الفارويز";s:2:"fo";s:16:"الفرنسية";s:2:"fr";s:37:"الفريزينية الشمالية";s:3:"frr";s:20:"الفريلايان";s:3:"fur";s:18:"الفريزيان";s:2:"fy";s:20:"الأيرلندية";s:2:"ga";s:14:"ایرلندی";s:2:"ga";s:12:"اَیرِش";s:2:"ga";s:18:"ائيرلېنډي";s:2:"ga";s:14:"الغاغوز";s:3:"gag";s:37:"الغيلية الأسكتلندية";s:2:"gd";s:18:"الجاليكية";s:2:"gl";s:18:"الجواراني";s:2:"gn";s:14:"القوطية";s:3:"got";s:33:"اليونانية القديمة";s:3:"grc";s:37:"الألمانية السويسرية";s:3:"gsw";s:22:"الغوجاراتية";s:2:"gu";s:14:"المنكية";s:2:"gv";s:12:"الهوسا";s:2:"ha";s:14:"العبرية";s:2:"he";s:14:"الهندية";s:2:"hi";s:22:"الهيليجينون";s:3:"hil";s:21:"الهيري موتو";s:2:"ho";s:18:"الكرواتية";s:2:"hr";s:27:"الصربية العليا";s:3:"hsb";s:21:"اپر سربیائی";s:3:"hsb";s:16:"الهايتية";s:2:"ht";s:18:"الهنغارية";s:2:"hu";s:18:"الأرمينية";s:2:"hy";s:10:"ارمنی";s:2:"hy";s:18:"اَرمینیَن";s:2:"hy";s:10:"ارمني";s:2:"hy";s:12:"ارمینی";s:2:"hy";s:16:"الهيريرو";s:2:"hz";s:27:"اللّغة الوسيطة";s:2:"ia";s:26:"اِنٹَرلِنٛگوا";s:2:"ia";s:18:"انټرلنګوا";s:2:"ia";s:22:"الإندونيسية";s:2:"id";s:20:"اندونزیایی";s:2:"id";s:20:"اِنڈونیشیا";s:2:"id";s:22:"انډونېشيايي";s:2:"id";s:22:"انڈونیثیائی";s:2:"id";s:20:"الإنترلينج";s:2:"ie";s:18:"اکسیدنتال";s:2:"ie";s:31:"اِنٹَر لِنٛنگویے";s:2:"ie";s:14:"الإيجبو";s:2:"ig";s:14:"ایگبویی";s:2:"ig";s:10:"اِگبو";s:2:"ig";s:23:"السيتشيون يي";s:2:"ii";s:18:"الإينبياك";s:2:"ik";s:14:"اینوپیک";s:2:"ik";s:18:"اِنُپِیاک";s:2:"ik";s:16:"الإيلوكو";s:3:"ilo";s:16:"ایلوکویی";s:3:"ilo";s:12:"اِلوکو";s:3:"ilo";s:18:"الإنجوشية";s:3:"inh";s:14:"اینگوشی";s:3:"inh";s:14:"اِنٛگُش";s:3:"inh";s:12:"الإيدو";s:2:"io";s:8:"ایدو";s:2:"io";s:8:"اِڈو";s:2:"io";s:22:"الأيسلاندية";s:2:"is";s:14:"ایسلندی";s:2:"is";s:18:"الإيطالية";s:2:"it";s:18:"ایتالیایی";s:2:"it";s:16:"اِٹیلیَن";s:2:"it";s:14:"ایټالوي";s:2:"it";s:12:"اطالوی";s:2:"it";s:20:"الإينكتيتت";s:2:"iu";s:20:"اینوکتیتوت";s:2:"iu";s:20:"اِنُکتِتوٗ";s:2:"iu";s:18:"انیوکتیتت";s:2:"iu";s:18:"اليابانية";s:2:"ja";s:16:"اللوجبان";s:3:"jbo";s:14:"الجاوية";s:2:"jv";s:16:"الجورجية";s:2:"ka";s:25:"الكارا-كالباك";s:3:"kaa";s:16:"القبيلية";s:3:"kab";s:24:"الكاباردايان";s:3:"kbd";s:14:"الكونغو";s:2:"kg";s:14:"الكيكيو";s:2:"ki";s:20:"الكيونياما";s:2:"kj";s:26:"الكازاخستانية";s:2:"kk";s:20:"الكالاليست";s:2:"kl";s:16:"الخميرية";s:2:"km";s:16:"الكانادا";s:2:"kn";s:14:"الكورية";s:2:"ko";s:18:"الكانيوري";s:2:"kr";s:33:"الكاراتشاي-بالكار";s:3:"krc";s:18:"الكشميرية";s:2:"ks";s:14:"الكردية";s:2:"ku";s:12:"الكومي";s:2:"kv";s:16:"الكورنية";s:2:"kw";s:18:"القرغيزية";s:2:"ky";s:18:"اللاتينية";s:2:"la";s:22:"الإسباعبرية";s:3:"lad";s:24:"اللوكسمبرجية";s:2:"lb";s:26:"الليزجهايانية";s:3:"lez";s:14:"الجاندا";s:2:"lg";s:24:"الليمبرجيشية";s:2:"li";s:18:"اللينجالا";s:2:"ln";s:14:"اللاوية";s:2:"lo";s:12:"اللوزي";s:3:"loz";s:18:"اللتوانية";s:2:"lt";s:12:"اللشاي";s:3:"lus";s:16:"اللاتفية";s:2:"lv";s:18:"المايثيلي";s:3:"mai";s:14:"الموكشا";s:3:"mdf";s:22:"المالاجاشية";s:2:"mg";s:20:"المارشالية";s:2:"mh";s:16:"الماورية";s:2:"mi";s:26:"المينانجكاباو";s:3:"min";s:18:"المقدونية";s:2:"mk";s:20:"الماليالام";s:2:"ml";s:18:"المنغولية";s:2:"mn";s:16:"الماراثي";s:2:"mr";s:16:"المالطية";s:2:"mt";s:12:"الكريك";s:3:"mus";s:20:"الميرانديز";s:3:"mwl";s:16:"البورمية";s:2:"my";s:14:"الأرزية";s:3:"myv";s:14:"ارزیایی";s:3:"myv";s:16:"ایٚرزِیا";s:3:"myv";s:12:"النورو";s:2:"na";s:29:"اللغة النابولية";s:3:"nap";s:39:"البوكمالية النرويجية";s:2:"nb";s:31:"الألمانية السفلى";s:3:"nds";s:18:"النيبالية";s:2:"ne";s:16:"النيواري";s:3:"new";s:16:"الندونجا";s:2:"ng";s:18:"اندونگایی";s:2:"ng";s:12:"النيوي";s:3:"niu";s:18:"الهولندية";s:2:"nl";s:35:"النينورسك النرويجي";s:2:"nn";s:18:"النرويجية";s:2:"no";s:29:"السوتو الشمالية";s:3:"nso";s:16:"النافاجو";s:2:"nv";s:16:"النيانجا";s:2:"ny";s:22:"الأوكيتانية";s:2:"oc";s:16:"اوکیتایی";s:2:"oc";s:18:"اوکسیٖٹَن";s:2:"oc";s:18:"اوکسيټاني";s:2:"oc";s:16:"الأورومو";s:2:"om";s:16:"اورومویی";s:2:"om";s:14:"اوٚرومو";s:2:"om";s:12:"اورومو";s:2:"om";s:16:"الأورييا";s:2:"or";s:17:"اوریه‌ای";s:2:"or";s:14:"اوٚرِیا";s:2:"or";s:10:"اوريا";s:2:"or";s:12:"اورِیا";s:2:"or";s:18:"الأوسيتيك";s:2:"os";s:18:"اوٚسیٚٹِک";s:2:"os";s:12:"اوسیٹک";s:2:"os";s:18:"البنجابية";s:2:"pa";s:24:"البانجاسينان";s:3:"pag";s:20:"البامبانجا";s:3:"pam";s:24:"البابيامينتو";s:3:"pap";s:14:"البالية";s:2:"pi";s:18:"البولندية";s:2:"pl";s:18:"البشتونية";s:2:"ps";s:20:"البرتغالية";s:2:"pt";s:41:"البرتغالية البرازيلية";s:5:"pt-br";s:18:"الكويتشوا";s:2:"qu";s:20:"الرومانشية";s:2:"rm";s:12:"الرندي";s:2:"rn";s:18:"الرومانية";s:2:"ro";s:14:"الروسية";s:2:"ru";s:22:"الأرومانيان";s:3:"rup";s:16:"اَرومانی";s:3:"rup";s:26:"الكينيارواندا";s:2:"rw";s:22:"السنسكريتية";s:2:"sa";s:14:"الساخية";s:3:"sah";s:18:"السانتالي";s:3:"sat";s:18:"السردينية";s:2:"sc";s:14:"الصقلية";s:3:"scn";s:22:"الأسكتلندية";s:3:"sco";s:18:"اسکاتلندی";s:3:"sco";s:14:"السندية";s:2:"sd";s:27:"السامي الشمالي";s:2:"se";s:14:"السانجو";s:2:"sg";s:18:"السنهالية";s:2:"si";s:23:"انگلیسی ساده";s:6:"simple";s:20:"السلوفاكية";s:2:"sk";s:14:"اسلواکی";s:2:"sk";s:20:"السلوفانية";s:2:"sl";s:22:"اسلووینیایی";s:2:"sl";s:20:"الساموائية";s:2:"sm";s:27:"السامي الجنوبي";s:3:"sma";s:12:"الشونا";s:2:"sn";s:18:"الصومالية";s:2:"so";s:18:"الألبانية";s:2:"sq";s:18:"البانِیَن";s:2:"sq";s:12:"الباني";s:2:"sq";s:12:"البانی";s:2:"sq";s:14:"الصربية";s:2:"sr";s:27:"السرانان تونجو";s:3:"srn";s:14:"السواتي";s:2:"ss";s:29:"السوتو الجنوبية";s:2:"st";s:20:"السوندانية";s:2:"su";s:16:"السويدية";s:2:"sv";s:18:"السواحلية";s:2:"sw";s:18:"التاميلية";s:2:"ta";s:14:"التيلجو";s:2:"te";s:12:"التيتم";s:3:"tet";s:18:"الطاجيكية";s:2:"tg";s:22:"التايلاندية";s:2:"th";s:20:"التيجرينيا";s:2:"ti";s:20:"التركمانية";s:2:"tk";s:22:"التاغالوغية";s:2:"tl";s:18:"التسوانية";s:2:"tn";s:16:"التونغية";s:2:"to";s:21:"التوك بيسين";s:3:"tpi";s:14:"التركية";s:2:"tr";s:14:"السونجا";s:2:"ts";s:16:"التتارية";s:2:"tt";s:18:"التامبوكا";s:3:"tum";s:10:"التوي";s:2:"tw";s:18:"التاهيتية";s:2:"ty";s:12:"التُرك";s:3:"tyv";s:40:"الأمازيغية وسط الأطلس";s:3:"tzm";s:14:"الأدمرت";s:3:"udm";s:16:"اودمورتی";s:3:"udm";s:14:"اُدمُرت";s:3:"udm";s:16:"الأغورية";s:2:"ug";s:14:"اویغوری";s:2:"ug";s:12:"اويگور";s:2:"ug";s:30:"اویغوری (خط عربی)";s:7:"ug-arab";s:32:"اویغوری (خط لاتین)";s:7:"ug-latn";s:20:"الأوكرانية";s:2:"uk";s:16:"اوکراینی";s:2:"uk";s:18:"اوکرانايي";s:2:"uk";s:8:"اردو";s:2:"ur";s:14:"الأردية";s:2:"ur";s:12:"اُردوٗ";s:2:"ur";s:20:"الأوزباكية";s:2:"uz";s:10:"ازبکی";s:2:"uz";s:12:"اُزبیک";s:2:"uz";s:10:"ازبکي";s:2:"uz";s:10:"ازبیک";s:2:"uz";s:14:"الفيندا";s:2:"ve";s:20:"الفيتنامية";s:2:"vi";s:14:"الفوتيك";s:3:"vot";s:16:"الولونية";s:2:"wa";s:14:"الواراي";s:3:"war";s:12:"الولوف";s:2:"wo";s:16:"الكالميك";s:3:"xal";s:12:"الخوسا";s:2:"xh";s:16:"اليديشية";s:2:"yi";s:18:"اليوروبية";s:2:"yo";s:24:"الكَنْتُونية";s:3:"yue";s:16:"الزهيونج";s:2:"za";s:14:"الصينية";s:2:"zh";s:29:"الصينية المبسطة";s:7:"zh-hans";s:33:"الصينية التقليدية";s:7:"zh-hant";s:12:"الزولو";s:2:"zu";s:16:"الأكولية";s:3:"ach";s:12:"اَکولی";s:3:"ach";s:10:"اکولی";s:3:"ach";s:10:"الأغم";s:3:"agq";s:6:"اغم";s:3:"agq";s:44:"العربية الرسمية الحديثة";s:6:"ar-001";s:14:"البيمبا";s:3:"bem";s:12:"البودو";s:3:"brx";s:14:"القبطية";s:3:"cop";s:16:"الزارمية";s:3:"dje";s:14:"الديولا";s:3:"dua";s:8:"امبو";s:3:"ebu";s:12:"الإفيك";s:3:"efi";s:10:"افیکی";s:3:"efi";s:12:"ایٚفِک";s:3:"efi";s:10:"ایفِک";s:3:"efi";s:29:"المصرية القديمة";s:3:"egy";s:18:"الفلبينية";s:3:"fil";s:8:"الجا";s:3:"gaa";s:14:"الغيزية";s:3:"guz";s:12:"الحثية";s:3:"hit";s:14:"الكامبا";s:3:"kam";s:20:"الكونكانية";s:3:"kok";s:25:"اللبا-كاتانجا";s:2:"lu";s:19:"اللبا-لؤلؤ";s:3:"lua";s:8:"اللو";s:3:"luo";s:14:"الماساي";s:3:"mas";s:22:"المورسيانية";s:3:"mfe";s:14:"الموهوك";s:3:"moh";s:31:"النديبيل الشمالي";s:2:"nd";s:35:"انده‌بله‌ای شمالی";s:2:"nd";s:14:"الفلمنك";s:5:"nl-be";s:13:"ایٚن کو";s:3:"nqo";s:10:"اینکو";s:3:"nqo";s:31:"النديبيل الجنوبي";s:2:"nr";s:35:"انده‌بله‌ای جنوبی";s:2:"nr";s:12:"النوير";s:3:"nus";s:18:"النيانكول";s:3:"nyn";s:18:"الفينيقية";s:3:"phn";s:20:"المولدوفية";s:5:"ro-md";s:19:"اللول سامي";s:3:"smj";s:25:"الإيناري سامي";s:3:"smn";s:21:"ایناری سامی";s:3:"smn";s:21:"اِناری سَمی";s:3:"smn";s:19:"اناری سامی";s:3:"smn";s:23:"السكولت سامي";s:3:"sms";s:21:"اسکولت سامی";s:3:"sms";s:21:"اسکولٹ سامی";s:3:"sms";s:14:"القمرية";s:3:"swb";s:33:"الكونغو السواحلية";s:3:"swc";s:18:"الكلينجون";s:3:"tlh";s:52:"اَنزٲنۍ یا نَہ لَگہٕہار زبان";s:3:"und";s:10:"الفاي";s:3:"vai";s:10:"اونجو";s:3:"vun";s:54:"التمازيغية المغربية القياسية";s:3:"zgh";s:42:"اسٹینڈرڈ مغربی امازیقی";s:3:"zgh";s:16:"البلينية";s:3:"byn";s:41:"الإنجليزية الأسترالية";s:5:"en-au";s:31:"انگلیسی استرالیا";s:5:"en-au";s:52:"الإنجليزية الولايات المتحدة";s:5:"en-us";s:27:"انگلیسی امریکا";s:5:"en-us";s:27:"امریکی انگریزی";s:5:"en-us";s:44:"اسپانیایی امریکای لاتین";s:6:"es-419";s:37:"الإسبانية الأوروبية";s:5:"es-es";s:29:"اسپانیایی اروپا";s:5:"es-es";s:31:"الفرنسية الكندية";s:5:"fr-ca";s:35:"الفرنسية السويسرية";s:5:"fr-ch";s:10:"الجيز";s:3:"gez";s:39:"البرتغالية الأوروبية";s:5:"pt-pt";s:16:"السيدامو";s:3:"sid";s:12:"التيجر";s:3:"tig";s:20:"الأدانجمية";s:3:"ada";s:20:"اَدَنٛگمیے";s:3:"ada";s:14:"الأديجه";s:3:"ady";s:18:"اَدَیٖگیے";s:3:"ady";s:16:"الأفستية";s:2:"ae";s:14:"اوستایی";s:2:"ae";s:16:"اَویستَن";s:2:"ae";s:22:"الأفريهيلية";s:3:"afh";s:18:"اَفرِہِلی";s:3:"afh";s:16:"الآينوية";s:3:"ain";s:10:"اینوٗ";s:3:"ain";s:16:"الأكادية";s:3:"akk";s:8:"اکدی";s:3:"akk";s:18:"اَکادِیَن";s:3:"akk";s:18:"الأليوتية";s:3:"ale";s:14:"اَلویتی";s:3:"ale";s:35:"الألطائية الجنوبية";s:3:"alt";s:18:"الأراباهو";s:3:"arp";s:16:"اَراپاہو";s:3:"arp";s:20:"الأراواكية";s:3:"arw";s:14:"اَراوَک";s:3:"arw";s:16:"الأوادية";s:3:"awa";s:12:"اَوَدی";s:3:"awa";s:16:"البلوشية";s:3:"bal";s:25:"اللغة البالية";s:3:"ban";s:12:"الباسا";s:3:"bas";s:12:"البيجا";s:3:"bej";s:18:"البيكولية";s:3:"bik";s:14:"البينية";s:3:"bin";s:20:"السيكسيكية";s:3:"bla";s:16:"البراجية";s:3:"bra";s:18:"البرياتية";s:3:"bua";s:12:"الكادو";s:3:"cad";s:18:"الكاريبية";s:3:"car";s:14:"الأتسام";s:3:"cch";s:10:"اتسَم";s:3:"cch";s:16:"التشيبشا";s:3:"chb";s:20:"التشاجاتاي";s:3:"chg";s:18:"التشكيزية";s:3:"chk";s:12:"الماري";s:3:"chm";s:27:"الشينوك جارجون";s:3:"chn";s:22:"الشيباوايان";s:3:"chp";s:16:"الداكوتا";s:3:"dak";s:16:"الدارجوا";s:3:"dar";s:16:"الديلوير";s:3:"del";s:16:"السلافية";s:3:"den";s:16:"الدوجريب";s:3:"dgr";s:12:"الدنكا";s:3:"din";s:14:"الدوجري";s:3:"doi";s:31:"الهولندية الوسطى";s:3:"dum";s:14:"الدايلا";s:3:"dyu";s:18:"القرعانية";s:3:"dzg";s:14:"الإكاجك";s:3:"eka";s:12:"اکاجوک";s:3:"eka";s:16:"ایٚکاجُک";s:3:"eka";s:14:"الإمايت";s:3:"elx";s:20:"ایٚلامایِٹ";s:3:"elx";s:33:"الإنجليزية الوسطى";s:3:"enm";s:25:"انگلیسی میانه";s:3:"enm";s:16:"الإيوندو";s:3:"ewo";s:12:"اواندو";s:3:"ewo";s:16:"ایٚوونڈو";s:3:"ewo";s:12:"الفانج";s:3:"fan";s:14:"الفانتي";s:3:"fat";s:10:"الفون";s:3:"fon";s:29:"الفرنسية الوسطى";s:3:"frm";s:31:"الفرنسية القديمة";s:3:"fro";s:35:"الفريزينية الشرقية";s:3:"frs";s:12:"الجايو";s:3:"gay";s:12:"الجبيا";s:3:"gba";s:44:"الألمانية العليا الوسطى";s:3:"gmh";s:46:"الألمانية العليا القديمة";s:3:"goh";s:12:"الجندي";s:3:"gon";s:22:"الجورونتالو";s:3:"gor";s:14:"الجريبو";s:3:"grb";s:12:"الهيدا";s:3:"hai";s:18:"الهمونجية";s:3:"hmn";s:10:"الهبا";s:3:"hup";s:14:"الإيبان";s:3:"iba";s:10:"اِبان";s:3:"iba";s:29:"الجيدو - الفارسي";s:3:"jpr";s:27:"الجيدو - العربي";s:3:"jrb";s:16:"الكاتشين";s:3:"kac";s:8:"الجو";s:3:"kaj";s:10:"الكوي";s:3:"kaw";s:12:"الكورو";s:3:"kfo";s:14:"الكازية";s:3:"kha";s:18:"الخوتانيز";s:3:"kho";s:18:"الكيمبندو";s:3:"kmb";s:18:"الكوسراين";s:3:"kos";s:12:"الكبيل";s:3:"kpe";s:16:"الكريلية";s:3:"krl";s:12:"الكميك";s:3:"kum";s:16:"الكتيناي";s:3:"kut";s:16:"اللاهندا";s:3:"lah";s:14:"اللامبا";s:3:"lam";s:16:"اللوسينو";s:3:"lui";s:14:"اللوندا";s:3:"lun";s:16:"المادريز";s:3:"mad";s:12:"الماجا";s:3:"mag";s:18:"الماكاسار";s:3:"mak";s:18:"الماندينغ";s:3:"man";s:16:"الماندار";s:3:"mdr";s:12:"الميند";s:3:"men";s:33:"الأيرلندية الوسطى";s:3:"mga";s:25:"ایرلندی میانه";s:3:"mga";s:26:"الميكماكيونية";s:3:"mic";s:14:"المانشو";s:3:"mnc";s:18:"المانيبري";s:3:"mni";s:12:"الموسي";s:3:"mos";s:18:"المارواري";s:3:"mwr";s:12:"النياس";s:3:"nia";s:14:"النوجاي";s:3:"nog";s:25:"النورس القديم";s:3:"non";s:35:"النوارية التقليدية";s:3:"nwc";s:20:"النيامويزي";s:3:"nym";s:14:"النيورو";s:3:"nyo";s:14:"النزيما";s:3:"nzi";s:18:"الأوجيبوا";s:2:"oj";s:18:"اوجیبوایی";s:2:"oj";s:14:"اوجِبوا";s:2:"oj";s:14:"الأوساج";s:3:"osa";s:12:"اوسیجی";s:3:"osa";s:12:"اوٚسیج";s:3:"osa";s:33:"التركية العثمانية";s:3:"ota";s:27:"اوٹومَن تُرکِش";s:3:"ota";s:16:"البهلوية";s:3:"pal";s:16:"البالوان";s:3:"pau";s:31:"الفارسية القديمة";s:3:"peo";s:24:"البوهنبيايان";s:3:"pon";s:37:"البروفانسية القديمة";s:3:"pro";s:24:"الراجاسثانية";s:3:"raj";s:16:"الراباني";s:3:"rap";s:26:"الراروتونجاني";s:3:"rar";s:18:"السانداوي";s:3:"sad";s:35:"الآرامية السومارية";s:3:"sam";s:14:"الساساك";s:3:"sas";s:14:"السيلكب";s:3:"sel";s:35:"الأيرلندية القديمة";s:3:"sga";s:27:"ایرلندی باستان";s:3:"sga";s:14:"الشانية";s:3:"shn";s:31:"العربية التشادية";s:3:"shu";s:16:"السونينك";s:3:"snk";s:16:"السوجدين";s:3:"sog";s:10:"السرر";s:3:"srr";s:16:"السوكوما";s:3:"suk";s:12:"السوسو";s:3:"sus";s:18:"السومارية";s:3:"sux";s:18:"السريانية";s:3:"syr";s:12:"التيمن";s:3:"tem";s:16:"التيرينو";s:3:"ter";s:10:"التيف";s:3:"tiv";s:18:"التوكيلاو";s:3:"tkl";s:22:"التلينغيتية";s:3:"tli";s:18:"التاماشيك";s:3:"tmh";s:20:"التسيمشيان";s:3:"tsi";s:16:"التوفالو";s:3:"tvl";s:20:"اليجاريتيك";s:3:"uga";s:16:"اوگاریتی";s:3:"uga";s:16:"اُگارتِک";s:3:"uga";s:16:"الأمبندو";s:3:"umb";s:18:"امبوندویی";s:3:"umb";s:16:"الوالامو";s:3:"wal";s:12:"الواشو";s:3:"was";s:10:"الياو";s:3:"yao";s:14:"اليابيز";s:3:"yap";s:18:"الزابوتيك";s:3:"zap";s:16:"الزيناجا";s:3:"zen";s:14:"الزونية";s:3:"zun";s:29:"اسپانیایی مکزیک";s:5:"es-mx";}i:97;a:1370:{s:4:"afar";s:2:"aa";s:6:"afarca";s:2:"aa";s:7:"afarski";s:2:"aa";s:10:"afarština";s:2:"aa";s:7:"affareg";s:2:"aa";s:11:"afaršćina";s:2:"aa";s:5:"afara";s:2:"aa";s:5:"afari";s:2:"aa";s:8:"afáiris";s:2:"aa";s:5:"afár";s:2:"aa";s:9:"afahresch";s:2:"aa";s:6:"afarų";s:2:"aa";s:6:"afāru";s:2:"aa";s:9:"afarčina";s:2:"aa";s:11:"afarščina";s:2:"aa";s:8:"abkasies";s:2:"ab";s:10:"abkhazianu";s:2:"ab";s:5:"abxaz";s:2:"ab";s:8:"abkhazeg";s:2:"ab";s:10:"abhazijski";s:2:"ab";s:6:"abkhaz";s:2:"ab";s:13:"abcházština";s:2:"ab";s:8:"abchaseg";s:2:"ab";s:9:"abkhasisk";s:2:"ab";s:10:"abchasisch";s:2:"ab";s:13:"abchazšćina";s:2:"ab";s:11:"abkhaziagbe";s:2:"ab";s:9:"abkhazian";s:2:"ab";s:7:"abĥaza";s:2:"ab";s:7:"abjasio";s:2:"ab";s:7:"abhaasi";s:2:"ab";s:9:"abkhazera";s:2:"ab";s:10:"abkhaziskt";s:2:"ab";s:7:"abkhaze";s:2:"ab";s:8:"abcazian";s:2:"ab";s:9:"abchazysk";s:2:"ab";s:9:"abcáisis";s:2:"ab";s:9:"abchasais";s:2:"ab";s:7:"abkhazo";s:2:"ab";s:7:"abhaski";s:2:"ab";s:14:"abchazišćina";s:2:"ab";s:6:"abház";s:2:"ab";s:10:"abkasíska";s:2:"ab";s:6:"abcaso";s:2:"ab";s:11:"abchahsesch";s:2:"ab";s:10:"abchasesch";s:2:"ab";s:8:"abchazų";s:2:"ab";s:7:"abhāzu";s:2:"ab";s:8:"abkhazia";s:2:"ab";s:9:"abkażjan";s:2:"ab";s:9:"abchaasch";s:2:"ab";s:10:"abchazisch";s:2:"ab";s:8:"abchaski";s:2:"ab";s:8:"abcázio";s:2:"ab";s:9:"abchasian";s:2:"ab";s:7:"abhază";s:2:"ab";s:10:"abkazijski";s:2:"ab";s:12:"abcházčina";s:2:"ab";s:11:"abhaščina";s:2:"ab";s:9:"abkazisht";s:2:"ab";s:10:"abchaziska";s:2:"ab";s:7:"abhazca";s:2:"ab";s:8:"abxazcha";s:2:"ab";s:5:"acèh";s:3:"ace";s:8:"achinés";s:3:"ace";s:9:"akin dili";s:3:"ace";s:7:"achineg";s:3:"ace";s:9:"ačineski";s:3:"ace";s:5:"atjeh";s:3:"ace";s:10:"acehština";s:3:"ace";s:7:"acehneg";s:3:"ace";s:10:"achinesisk";s:3:"ace";s:12:"aceh-sprache";s:3:"ace";s:8:"achinese";s:3:"ace";s:8:"acehnés";s:3:"ace";s:7:"atšehi";s:3:"ace";s:6:"atšeh";s:3:"ace";s:4:"aceh";s:3:"ace";s:7:"atjeesk";s:3:"ace";s:8:"achinéz";s:3:"ace";s:8:"akkíska";s:3:"ace";s:8:"accinese";s:3:"ace";s:13:"aschenehsesch";s:3:"ace";s:12:"aceh-sprooch";s:3:"ace";s:9:"ačinezų";s:3:"ace";s:6:"ačinu";s:3:"ace";s:8:"aċiniż";s:3:"ace";s:6:"atjehs";s:3:"ace";s:6:"achém";s:3:"ace";s:10:"acehgiella";s:3:"ace";s:9:"acehčina";s:3:"ace";s:12:"ačejščina";s:3:"ace";s:11:"acehnesiska";s:3:"ace";s:9:"afrikaans";s:2:"af";s:12:"afrikanerski";s:2:"af";s:14:"afrikánština";s:2:"af";s:11:"affricâneg";s:2:"af";s:8:"afrikans";s:2:"af";s:11:"afrikaangbe";s:2:"af";s:9:"afrikansa";s:2:"af";s:10:"afrikáans";s:2:"af";s:9:"afrikaani";s:2:"af";s:10:"afrikaansa";s:2:"af";s:8:"afríska";s:2:"af";s:10:"afrikaansk";s:2:"af";s:11:"afracáinis";s:2:"af";s:10:"afraganais";s:2:"af";s:9:"afirkanci";s:2:"af";s:15:"afrikaanšćina";s:2:"af";s:11:"afríkanska";s:2:"af";s:9:"afrikansi";s:2:"af";s:9:"afrikanų";s:2:"af";s:9:"afrikandu";s:2:"af";s:11:"afrikaansch";s:2:"af";s:9:"afrikoota";s:2:"af";s:11:"africânder";s:2:"af";s:10:"africâner";s:2:"af";s:14:"afrikaans simi";s:2:"af";s:16:"afrikánsagiella";s:2:"af";s:13:"afrikánčina";s:2:"af";s:14:"afrikanščina";s:2:"af";s:11:"afrikaanays";s:2:"af";s:11:"afrikanisht";s:2:"af";s:10:"afrikaanca";s:2:"af";s:10:"afrikancha";s:2:"af";s:4:"akan";s:2:"ak";s:2:"ak";s:2:"ak";s:6:"akanca";s:2:"ak";s:7:"akankan";s:2:"ak";s:10:"akanština";s:2:"ak";s:6:"acaneg";s:2:"ak";s:11:"akanšćina";s:2:"ak";s:5:"akana";s:2:"ak";s:5:"akani";s:2:"ak";s:7:"akanera";s:2:"ak";s:5:"akaan";s:2:"ak";s:8:"acáinis";s:2:"ak";s:5:"akán";s:2:"ak";s:7:"akanski";s:2:"ak";s:9:"akahnesch";s:2:"ak";s:6:"akanų";s:2:"ak";s:5:"akanu";s:2:"ak";s:6:"akâan";s:2:"ak";s:9:"akančina";s:2:"ak";s:11:"akanščina";s:2:"ak";s:8:"akanisht";s:2:"ak";s:7:"akancha";s:2:"ak";s:19:"albánština (gheg)";s:3:"aln";s:14:"albanese ghego";s:3:"aln";s:27:"albanų kalbos gegų tarmė";s:3:"aln";s:18:"albański gegijski";s:3:"aln";s:11:"alemannisch";s:3:"gsw";s:8:"amharies";s:2:"am";s:6:"amarik";s:2:"am";s:8:"amharicu";s:2:"am";s:5:"amhar";s:2:"am";s:10:"amarikikan";s:2:"am";s:7:"amhareg";s:2:"am";s:8:"amharski";s:2:"am";s:8:"amhàric";s:2:"am";s:11:"amharština";s:2:"am";s:8:"amharisk";s:2:"am";s:9:"amharisch";s:2:"am";s:12:"amharšćina";s:2:"am";s:10:"amhariagbe";s:2:"am";s:7:"amharic";s:2:"am";s:6:"amhara";s:2:"am";s:8:"amárico";s:2:"am";s:6:"amhari";s:2:"am";s:8:"amharera";s:2:"am";s:9:"amhariskt";s:2:"am";s:9:"amharique";s:2:"am";s:6:"amaric";s:2:"am";s:8:"amhaarsk";s:2:"am";s:8:"amáiris";s:2:"am";s:9:"amtharais";s:2:"am";s:7:"amharik";s:2:"am";s:8:"amharico";s:2:"am";s:10:"amariikị";s:2:"am";s:10:"amharíska";s:2:"am";s:7:"amarico";s:2:"am";s:10:"amhahresch";s:2:"am";s:9:"amharesch";s:2:"am";s:7:"amharų";s:2:"am";s:6:"amharu";s:2:"am";s:8:"amharika";s:2:"am";s:9:"amħariku";s:2:"am";s:9:"amhaarsch";s:2:"am";s:7:"amhaars";s:2:"am";s:14:"afaan sidaamaa";s:2:"am";s:12:"amarico simi";s:2:"am";s:9:"amharică";s:2:"am";s:8:"amarîki";s:2:"am";s:10:"amharčina";s:2:"am";s:12:"amharščina";s:2:"am";s:7:"axmaari";s:2:"am";s:7:"amarike";s:2:"am";s:9:"amhariska";s:2:"am";s:8:"amhariki";s:2:"am";s:7:"amharca";s:2:"am";s:8:"amxarcha";s:2:"am";s:9:"aragonés";s:2:"an";s:8:"aragonca";s:2:"an";s:8:"aragoneg";s:2:"an";s:14:"aragonežanski";s:2:"an";s:9:"aragonès";s:2:"an";s:12:"aragonština";s:2:"an";s:11:"aragonesisk";s:2:"an";s:12:"aragonesisch";s:2:"an";s:13:"aragonšćina";s:2:"an";s:9:"aragonese";s:2:"an";s:7:"aragoni";s:2:"an";s:8:"aragonia";s:2:"an";s:9:"aragonais";s:2:"an";s:9:"aragonês";s:2:"an";s:10:"aragoneesk";s:2:"an";s:10:"aragóinis";s:2:"an";s:9:"aragonski";s:2:"an";s:9:"aragonéz";s:2:"an";s:6:"aragon";s:2:"an";s:9:"aragonska";s:2:"an";s:14:"arrajonehsesch";s:2:"an";s:12:"aragonesesch";s:2:"an";s:10:"aragonesų";s:2:"an";s:11:"aragoniešu";s:2:"an";s:8:"aragonsk";s:2:"an";s:11:"aragoneesch";s:2:"an";s:9:"aragonees";s:2:"an";s:10:"aragoński";s:2:"an";s:10:"aragoneză";s:2:"an";s:14:"aragoniagiella";s:2:"an";s:12:"aragónčina";s:2:"an";s:13:"aragonščina";s:2:"an";s:12:"aragonesiska";s:2:"an";s:13:"anglès antic";s:3:"ang";s:11:"altenglisch";s:3:"ang";s:18:"anglosaksojšćina";s:3:"ang";s:14:"ancien anglais";s:3:"ang";s:12:"altänglisch";s:3:"ang";s:15:"anglosakšćina";s:3:"ang";s:13:"ahl Änglesch";s:3:"ang";s:10:"alenglesch";s:3:"ang";s:6:"angika";s:3:"anp";s:12:"angikə dili";s:3:"anp";s:7:"angíka";s:3:"anp";s:7:"angikų";s:3:"anp";s:13:"angikaščina";s:3:"anp";s:7:"arabies";s:2:"ar";s:6:"arabik";s:2:"ar";s:6:"arabeg";s:2:"ar";s:7:"arapski";s:2:"ar";s:10:"arabština";s:2:"ar";s:7:"arabisk";s:2:"ar";s:8:"arabisch";s:2:"ar";s:11:"arabšćina";s:2:"ar";s:9:"arabiagbe";s:2:"ar";s:6:"arabic";s:2:"ar";s:5:"araba";s:2:"ar";s:7:"araabia";s:2:"ar";s:8:"arabiera";s:2:"ar";s:9:"aarabeere";s:2:"ar";s:6:"arabia";s:2:"ar";s:8:"arabiskt";s:2:"ar";s:5:"arabe";s:2:"ar";s:4:"arap";s:2:"ar";s:7:"arabysk";s:2:"ar";s:7:"araibis";s:2:"ar";s:7:"arabais";s:2:"ar";s:4:"arab";s:2:"ar";s:10:"arabiikị";s:2:"ar";s:9:"arabíska";s:2:"ar";s:5:"arabo";s:2:"ar";s:12:"arabiamiusut";s:2:"ar";s:9:"arahbesch";s:2:"ar";s:6:"arabek";s:2:"ar";s:8:"arabesch";s:2:"ar";s:6:"arabų";s:2:"ar";s:6:"arābu";s:2:"ar";s:8:"araabsch";s:2:"ar";s:9:"arabiffaa";s:2:"ar";s:7:"arabski";s:2:"ar";s:10:"arabe simi";s:2:"ar";s:6:"arabă";s:2:"ar";s:12:"arábagiella";s:2:"ar";s:6:"arâbo";s:2:"ar";s:9:"arabčina";s:2:"ar";s:11:"arabščina";s:2:"ar";s:8:"arabisht";s:2:"ar";s:8:"arabiska";s:2:"ar";s:7:"arapça";s:2:"ar";s:7:"arabcha";s:2:"ar";s:7:"aramees";s:3:"arc";s:7:"araméu";s:3:"arc";s:11:"aramik dili";s:3:"arc";s:7:"arameeg";s:3:"arc";s:8:"armajski";s:3:"arc";s:6:"arameu";s:3:"arc";s:12:"aramejština";s:3:"arc";s:7:"aramaeg";s:3:"arc";s:9:"aramæisk";s:3:"arc";s:10:"aramäisch";s:3:"arc";s:7:"aramaic";s:3:"arc";s:6:"arameo";s:3:"arc";s:6:"aramea";s:3:"arc";s:8:"araméen";s:3:"arc";s:8:"arameesk";s:3:"arc";s:7:"aramais";s:3:"arc";s:12:"aramääisch";s:3:"arc";s:9:"aramejski";s:3:"arc";s:6:"arámi";s:3:"arc";s:4:"aram";s:3:"arc";s:10:"arameíska";s:3:"arc";s:8:"aramaico";s:3:"arc";s:10:"aramäesch";s:3:"arc";s:9:"aramaikų";s:3:"arc";s:9:"aramiešu";s:3:"arc";s:7:"aramajk";s:3:"arc";s:8:"arameisk";s:3:"arc";s:11:"aramääsch";s:3:"arc";s:7:"arameic";s:3:"arc";s:9:"aramaică";s:3:"arc";s:11:"aramejčina";s:3:"arc";s:13:"aramejščina";s:3:"arc";s:9:"arameiska";s:3:"arc";s:7:"aramice";s:3:"arc";s:9:"araukanca";s:3:"arn";s:10:"araoukaneg";s:3:"arn";s:10:"araukanski";s:3:"arn";s:7:"araucà";s:3:"arn";s:14:"araukánština";s:3:"arn";s:9:"arawcaneg";s:3:"arn";s:9:"araukansk";s:3:"arn";s:11:"araukanisch";s:3:"arn";s:13:"arawkašćina";s:3:"arn";s:8:"araucano";s:3:"arn";s:9:"araukaani";s:3:"arn";s:7:"araukan";s:3:"arn";s:10:"araukaansk";s:3:"arn";s:14:"arawkanšćina";s:3:"arn";s:8:"araucani";s:3:"arn";s:12:"arákaníska";s:3:"arn";s:11:"araukanesch";s:3:"arn";s:10:"araukāņu";s:3:"arn";s:10:"arawkanjan";s:3:"arn";s:11:"araukaansch";s:3:"arn";s:11:"araukański";s:3:"arn";s:9:"araucanic";s:3:"arn";s:12:"araucaniană";s:3:"arn";s:11:"arokanijski";s:3:"arn";s:13:"araukánčina";s:3:"arn";s:14:"aravkanščina";s:3:"arn";s:10:"araukanska";s:3:"arn";s:14:"araukanya dili";s:3:"arn";s:14:"arabeg aljeria";s:3:"arq";s:24:"arabština (alžírská)";s:3:"arq";s:14:"arabeg algeria";s:3:"arq";s:20:"algerisches arabisch";s:3:"arq";s:22:"algerian spoken arabic";s:3:"arq";s:14:"algerianarabia";s:3:"arq";s:15:"arabe algérien";s:3:"arq";s:18:"arabais aildireach";s:3:"arq";s:12:"arab algeria";s:3:"arq";s:14:"arabo algerino";s:3:"arq";s:20:"aljehresch arahbesch";s:3:"arq";s:19:"algerescht arabesch";s:3:"arq";s:14:"alžyro arabų";s:3:"arq";s:18:"algerijns arabisch";s:3:"arq";s:17:"algierski arabski";s:3:"arq";s:17:"algerisk arabiska";s:3:"arq";s:13:"arabeg maroko";s:3:"ary";s:21:"arabština (marocká)";s:3:"ary";s:13:"arabeg moroco";s:3:"ary";s:14:"arabe marocain";s:3:"ary";s:17:"arabais mhorocach";s:3:"ary";s:11:"arab maroko";s:3:"ary";s:16:"arabo marocchino";s:3:"ary";s:13:"arab maghribi";s:3:"ary";s:12:"arabeg egipt";s:3:"arz";s:22:"arabština (egyptská)";s:3:"arz";s:15:"arabeg yr aifft";s:3:"arz";s:15:"arabe égyptien";s:3:"arz";s:20:"arabais Èipheiteach";s:3:"arz";s:10:"arab mesir";s:3:"arz";s:14:"arabo egiziano";s:3:"arz";s:8:"assamees";s:2:"as";s:7:"asamés";s:2:"as";s:5:"assam";s:2:"as";s:6:"asameg";s:2:"as";s:9:"asemijski";s:2:"as";s:8:"assamès";s:2:"as";s:10:"assamesisk";s:2:"as";s:11:"assamesisch";s:2:"as";s:11:"asamšćina";s:2:"as";s:9:"assamegbe";s:2:"as";s:8:"assamese";s:2:"as";s:5:"asama";s:2:"as";s:6:"assami";s:2:"as";s:8:"assamera";s:2:"as";s:11:"assamesiskt";s:2:"as";s:8:"assamais";s:2:"as";s:8:"assamês";s:2:"as";s:9:"assameesk";s:2:"as";s:7:"asaimis";s:2:"as";s:7:"asamais";s:2:"as";s:8:"assamés";s:2:"as";s:10:"asamisanci";s:2:"as";s:7:"asamski";s:2:"as";s:8:"asszámi";s:2:"as";s:8:"assamska";s:2:"as";s:12:"aßamehsesch";s:2:"as";s:11:"assamesesch";s:2:"as";s:6:"asamų";s:2:"as";s:9:"asamiešu";s:2:"as";s:8:"assamisk";s:2:"as";s:10:"assameesch";s:2:"as";s:11:"asames simi";s:2:"as";s:8:"asameză";s:2:"as";s:11:"asamščina";s:2:"as";s:8:"asaamiis";s:2:"as";s:10:"asamezisht";s:2:"as";s:11:"assamesiska";s:2:"as";s:7:"assamca";s:2:"as";s:8:"assamcha";s:2:"as";s:9:"asturianu";s:3:"ast";s:9:"asturicə";s:3:"ast";s:10:"asturijski";s:3:"ast";s:8:"asturià";s:3:"ast";s:11:"asturština";s:3:"ast";s:8:"asturisk";s:3:"ast";s:12:"asturianisch";s:3:"ast";s:12:"asturšćina";s:3:"ast";s:10:"asturiagbe";s:3:"ast";s:8:"asturian";s:3:"ast";s:9:"asturiano";s:3:"ast";s:8:"astuuria";s:3:"ast";s:7:"asturia";s:3:"ast";s:8:"asturien";s:3:"ast";s:8:"asturysk";s:3:"ast";s:9:"astúiris";s:3:"ast";s:9:"astùrais";s:3:"ast";s:14:"aschturianisch";s:3:"ast";s:7:"asztúr";s:3:"ast";s:5:"astur";s:3:"ast";s:11:"astúríska";s:3:"ast";s:15:"astuhrejahnesch";s:3:"ast";s:12:"asturianesch";s:3:"ast";s:10:"asturianų";s:3:"ast";s:11:"astūriešu";s:3:"ast";s:12:"asturiaansch";s:3:"ast";s:9:"asturisch";s:3:"ast";s:10:"asturyjski";s:3:"ast";s:10:"asturiană";s:3:"ast";s:13:"asturiagiella";s:3:"ast";s:11:"astúrčina";s:3:"ast";s:14:"asturijščina";s:3:"ast";s:9:"asturiska";s:3:"ast";s:10:"asturyasca";s:3:"ast";s:8:"aváricu";s:2:"av";s:9:"avarikcə";s:2:"av";s:4:"avar";s:2:"av";s:7:"avarski";s:2:"av";s:10:"avarština";s:2:"av";s:6:"afareg";s:2:"av";s:7:"avarisk";s:2:"av";s:8:"awarisch";s:2:"av";s:11:"awaršćina";s:2:"av";s:9:"avariagbe";s:2:"av";s:6:"avaric";s:2:"av";s:6:"avaari";s:2:"av";s:7:"avarysk";s:2:"av";s:8:"aváiris";s:2:"av";s:7:"avarais";s:2:"av";s:9:"avaríska";s:2:"av";s:5:"avaro";s:2:"av";s:9:"avahresch";s:2:"av";s:8:"awaresch";s:2:"av";s:8:"avarikų";s:2:"av";s:6:"avāru";s:2:"av";s:6:"avarik";s:2:"av";s:8:"awaarsch";s:2:"av";s:8:"avarisch";s:2:"av";s:7:"awarski";s:2:"av";s:6:"avară";s:2:"av";s:9:"avarčina";s:2:"av";s:11:"avarščina";s:2:"av";s:8:"avariska";s:2:"av";s:9:"avar dili";s:2:"av";s:9:"aymar aru";s:2:"ay";s:6:"aymara";s:2:"ay";s:7:"aymarca";s:2:"ay";s:6:"ajmara";s:2:"ay";s:6:"aimara";s:2:"ay";s:11:"ajmarština";s:2:"ay";s:12:"aymaršćina";s:2:"ay";s:8:"aymargbe";s:2:"ay";s:7:"aymarà";s:2:"ay";s:9:"aidhmiris";s:2:"ay";s:7:"aimará";s:2:"ay";s:7:"aímara";s:2:"ay";s:10:"aimahresch";s:2:"ay";s:7:"aimarų";s:2:"ay";s:6:"aimaru";s:2:"ay";s:10:"aymarčina";s:2:"ay";s:12:"ajmarščina";s:2:"ay";s:13:"azərbaycanca";s:2:"az";s:12:"azerbeidjans";s:2:"az";s:11:"azerbaixanu";s:2:"az";s:11:"azərbaycan";s:2:"az";s:5:"azeri";s:2:"az";s:15:"azerbejdžanski";s:2:"az";s:14:"azerbaidjanès";s:2:"az";s:12:"aserbaijaneg";s:2:"az";s:14:"aserbajdsjansk";s:2:"az";s:17:"aserbaidschanisch";s:2:"az";s:19:"azerbajdžanšćina";s:2:"az";s:13:"azerbaijangbe";s:2:"az";s:11:"azerbaijani";s:2:"az";s:12:"azerbajĝana";s:2:"az";s:6:"azerí";s:2:"az";s:14:"aserbaidžaani";s:2:"az";s:13:"azerbaijanera";s:2:"az";s:14:"azerbaijaniskt";s:2:"az";s:6:"azéri";s:2:"az";s:15:"azerbeidzjaansk";s:2:"az";s:15:"asarbaiseáinis";s:2:"az";s:15:"asarbaideànais";s:2:"az";s:11:"acerbaixano";s:2:"az";s:12:"azerbaijanci";s:2:"az";s:15:"azerbajdžanski";s:2:"az";s:19:"azerbajdźanšćina";s:2:"az";s:14:"azerbajdzsáni";s:2:"az";s:13:"azerbaidzhani";s:2:"az";s:10:"azerbaijan";s:2:"az";s:7:"aserska";s:2:"az";s:12:"azerbaigiano";s:2:"az";s:19:"aserbajdsjaniskisut";s:2:"az";s:19:"asserbaidschahnesch";s:2:"az";s:17:"aserbaidschanesch";s:2:"az";s:19:"azerbaidžaniečių";s:2:"az";s:15:"azerbaidžāņu";s:2:"az";s:13:"ażerbajġani";s:2:"az";s:17:"aserbaidschaansch";s:2:"az";s:14:"azerbeidzjaans";s:2:"az";s:17:"afaan azerbaijani";s:2:"az";s:7:"azerski";s:2:"az";s:11:"azerbaijano";s:2:"az";s:16:"azerbaiyano simi";s:2:"az";s:15:"aserbeidschanic";s:2:"az";s:6:"azeră";s:2:"az";s:17:"azerbajdžančina";s:2:"az";s:19:"azerbajdžanščina";s:2:"az";s:5:"azere";s:2:"az";s:15:"azerbajdzjanska";s:2:"az";s:7:"azerice";s:2:"az";s:19:"azerbaixanu del sur";s:3:"azb";s:11:"azeri ar su";s:3:"azb";s:20:"aserbaijaneg deheuol";s:3:"azb";s:18:"azéri méridional";s:3:"azb";s:24:"asarbaideànais dheasach";s:3:"azb";s:19:"azerbaijani selatan";s:3:"azb";s:17:"azero meridionale";s:3:"azb";s:18:"azerbaijan selatan";s:3:"azb";s:15:"afaan belarusia";s:2:"be";s:15:"afaan bulgariya";s:2:"bg";s:9:"arayanice";s:3:"bho";s:18:"afaan baangladeshi";s:2:"bn";s:14:"afaan bosniyaa";s:2:"bs";s:13:"afaan katalaa";s:2:"ca";s:24:"ချေချင်း";s:2:"ce";s:24:"ချာရိုကီ";s:3:"chr";s:24:"ခိုစီကန်";s:2:"co";s:12:"ခရီး";s:2:"cr";s:12:"ချက်";s:2:"cs";s:11:"afaan czech";s:2:"cs";s:15:"afaan deenmaark";s:2:"da";s:7:"alemán";s:2:"de";s:5:"alman";s:2:"de";s:11:"alimaɲikan";s:2:"de";s:8:"alamaneg";s:2:"de";s:7:"alemany";s:2:"de";s:8:"almaeneg";s:2:"de";s:7:"alemana";s:2:"de";s:8:"allemand";s:2:"de";s:8:"almaynek";s:2:"de";s:9:"alemanina";s:2:"de";s:14:"afaan jarmanii";s:2:"de";s:7:"alemão";s:2:"de";s:11:"aleman simi";s:2:"de";s:7:"almanca";s:2:"de";s:19:"avstriya almancası";s:5:"de-at";s:16:"alamaneg aostria";s:5:"de-at";s:20:"austrijski njemački";s:5:"de-at";s:17:"alemany austríac";s:5:"de-at";s:16:"almaeneg awstria";s:5:"de-at";s:28:"austriatɔwo ƒe germaniagbe";s:5:"de-at";s:15:"austrian german";s:5:"de-at";s:15:"aŭstra germana";s:5:"de-at";s:18:"alemán austríaco";s:5:"de-at";s:19:"allemand autrichien";s:5:"de-at";s:18:"alemán de austria";s:5:"de-at";s:19:"awstriska němčina";s:5:"de-at";s:19:"austurrísk þýska";s:5:"de-at";s:20:"austrijos vokiečių";s:5:"de-at";s:15:"austrijas vācu";s:5:"de-at";s:16:"austerriksk tysk";s:5:"de-at";s:20:"austriacki niemiecki";s:5:"de-at";s:18:"alemão austríaco";s:5:"de-at";s:19:"austrijski nemački";s:5:"de-at";s:21:"avstrijska nemščina";s:5:"de-at";s:20:"avusturya almancası";s:5:"de-at";s:19:"avstriya olmonchasi";s:5:"de-at";s:20:"altualemán de suiza";s:5:"de-ch";s:18:"alamaneg uhel suis";s:5:"de-ch";s:17:"alt alemany suís";s:5:"de-ch";s:26:"almaeneg safonol y swistir";s:5:"de-ch";s:21:"alto alemán de suiza";s:5:"de-ch";s:22:"aleman garaia (suitza)";s:5:"de-ch";s:15:"allemand suisse";s:5:"de-ch";s:22:"alt todesc de svuizare";s:5:"de-ch";s:29:"ard-ghearmáinis eilvéiseach";s:5:"de-ch";s:19:"alto alemán suízo";s:5:"de-ch";s:21:"alto tedesco svizzero";s:5:"de-ch";s:20:"alto alemão suíço";s:5:"de-ch";s:13:"aşağı sorb";s:3:"dsb";s:9:"alamsorbi";s:3:"dsb";s:8:"alasorbi";s:3:"dsb";s:11:"alsó szorb";s:3:"dsb";s:16:"aşağı sorbça";s:3:"dsb";s:13:"afaan giriiki";s:2:"el";s:10:"angilɛkan";s:2:"en";s:7:"anglès";s:2:"en";s:11:"angličtina";s:2:"en";s:5:"angla";s:2:"en";s:7:"anglais";s:2:"en";s:5:"angol";s:2:"en";s:7:"anglese";s:2:"en";s:9:"ꑱꇩꉙ";s:2:"en";s:6:"anglų";s:2:"en";s:6:"angļu";s:2:"en";s:7:"anglisy";s:2:"en";s:9:"angielski";s:2:"en";s:7:"anglëe";s:2:"en";s:12:"angleščina";s:2:"en";s:8:"anglisht";s:2:"en";s:16:"anglès canadenc";s:5:"en-ca";s:16:"anglais canadien";s:5:"en-ca";s:23:"angličtina (kanadská)";s:5:"en-ca";s:18:"anglishte kanadeze";s:5:"en-ca";s:17:"anglès britànic";s:5:"en-gb";s:19:"anglais britannique";s:5:"en-gb";s:12:"anglese (ru)";s:5:"en-gb";s:22:"angličtina (britská)";s:5:"en-gb";s:17:"angleščina (vb)";s:5:"en-gb";s:19:"anglishte britanike";s:5:"en-gb";s:16:"afaan esperantoo";s:2:"eo";s:12:"afaan ispeen";s:2:"es";s:15:"afaan istooniya";s:2:"et";s:12:"afaan baskuu";s:2:"eu";s:12:"afaan persia";s:2:"fa";s:15:"afaan fiilaandi";s:2:"fi";s:13:"afaan faroese";s:2:"fo";s:17:"afaan faransaayii";s:2:"fr";s:7:"arpetan";s:3:"frp";s:8:"arpitanu";s:3:"frp";s:9:"arpitaneg";s:3:"frp";s:9:"arpitaani";s:3:"frp";s:7:"arpitan";s:3:"frp";s:8:"arpitano";s:3:"frp";s:9:"arpitaans";s:3:"frp";s:9:"arpitanca";s:3:"frp";s:17:"afaan firisiyaani";s:2:"fy";s:6:"airių";s:2:"ga";s:15:"afaan ayirishii";s:2:"ga";s:6:"ayrish";s:2:"ga";s:14:"afaan galishii";s:2:"gl";s:10:"avañe'ẽ";s:2:"gn";s:13:"afaan guarani";s:2:"gn";s:14:"antieke grieks";s:3:"grc";s:13:"altgriechisch";s:3:"grc";s:13:"ancient greek";s:3:"grc";s:8:"aldgryks";s:3:"grc";s:12:"algriichesch";s:3:"grc";s:13:"antik yunanca";s:3:"grc";s:16:"alemán de suiza";s:3:"gsw";s:13:"alamaneg suis";s:3:"gsw";s:13:"alemany suís";s:3:"gsw";s:18:"almaeneg y swistir";s:3:"gsw";s:13:"alemán suizo";s:3:"gsw";s:16:"alemana (suitza)";s:3:"gsw";s:11:"alémanique";s:3:"gsw";s:14:"alemán suízo";s:3:"gsw";s:15:"alemão suíço";s:3:"gsw";s:14:"alsaciano simi";s:3:"gsw";s:14:"afaan gujarati";s:2:"gu";s:8:"awusakan";s:2:"ha";s:7:"awụsa";s:2:"ha";s:12:"afaan hebrew";s:2:"he";s:12:"afaan hindii";s:2:"hi";s:30:"ခရိုအေရှန်";s:2:"hr";s:14:"afaan croatian";s:2:"hr";s:11:"altu sorbiu";s:3:"hsb";s:10:"alt sòrab";s:3:"hsb";s:12:"alto sorabio";s:3:"hsb";s:11:"alto sorabo";s:3:"hsb";s:20:"aukštutinių sorbų";s:3:"hsb";s:10:"augšsorbu";s:3:"hsb";s:13:"alto sórabio";s:3:"hsb";s:16:"alto sorbio simi";s:3:"hsb";s:8:"aut sorb";s:3:"hsb";s:14:"afaan hangaari";s:2:"hu";s:7:"armeens";s:2:"hy";s:7:"armeniu";s:2:"hy";s:10:"armenianeg";s:2:"hy";s:6:"armeni";s:2:"hy";s:12:"arménština";s:2:"hy";s:7:"armeneg";s:2:"hy";s:7:"armensk";s:2:"hy";s:9:"armenisch";s:2:"hy";s:13:"armeńšćina";s:2:"hy";s:10:"armeniagbe";s:2:"hy";s:8:"armenian";s:2:"hy";s:6:"armena";s:2:"hy";s:7:"armenio";s:2:"hy";s:8:"armeenia";s:2:"hy";s:9:"armeniera";s:2:"hy";s:7:"armenia";s:2:"hy";s:8:"armenskt";s:2:"hy";s:9:"arménien";s:2:"hy";s:5:"armen";s:2:"hy";s:8:"armeensk";s:2:"hy";s:10:"airméinis";s:2:"hy";s:9:"airmeinis";s:2:"hy";s:11:"armeniyanci";s:2:"hy";s:8:"armenski";s:2:"hy";s:12:"armenšćina";s:2:"hy";s:9:"armeniano";s:2:"hy";s:8:"armenska";s:2:"hy";s:6:"armeno";s:2:"hy";s:10:"armeenesch";s:2:"hy";s:9:"armenesch";s:2:"hy";s:8:"armėnų";s:2:"hy";s:8:"armēņu";s:2:"hy";s:8:"armenjan";s:2:"hy";s:9:"armeensch";s:2:"hy";s:8:"arménio";s:2:"hy";s:8:"armênio";s:2:"hy";s:12:"armenio simi";s:2:"hy";s:8:"armeană";s:2:"hy";s:13:"armeenagiella";s:2:"hy";s:11:"arménčina";s:2:"hy";s:12:"armenščina";s:2:"hy";s:11:"armeeniyaan";s:2:"hy";s:9:"armenisht";s:2:"hy";s:9:"armeniska";s:2:"hy";s:8:"armancha";s:2:"hy";s:15:"alþjóðatunga";s:2:"ia";s:16:"afaan indoneziya";s:2:"id";s:14:"ayiislandiffaa";s:2:"is";s:10:"ayslandays";s:2:"is";s:16:"afaan xaaliyaani";s:2:"it";s:13:"afaan japanii";s:2:"ja";s:10:"afaan java";s:2:"jv";s:14:"afaan georgian";s:2:"ka";s:24:"ခဘိုင်လ်";s:3:"kab";s:9:"콩고어";s:2:"kg";s:18:"ခီခူယူ";s:2:"ki";s:4:"ambo";s:2:"kj";s:18:"ခါဇါခ်";s:2:"kk";s:30:"ခလာအ်လီဆပ်";s:2:"kl";s:9:"ခမာ";s:2:"km";s:13:"afaan kannada";s:2:"kn";s:11:"afaan korea";s:2:"ko";s:24:"ခိုနီရှ်";s:2:"kw";s:18:"ခရူဂစ်";s:2:"ky";s:13:"afaan laatini";s:2:"la";s:16:"afaan liituniyaa";s:2:"lt";s:15:"afaan lativiyaa";s:2:"lv";s:18:"afaan macedooniyaa";s:2:"mk";s:13:"afaan maratii";s:2:"mr";s:14:"afaan maltesii";s:2:"mt";s:16:"aşağı almanca";s:3:"nds";s:13:"alamaneg izel";s:3:"nds";s:9:"alamsaksa";s:3:"nds";s:8:"alasaksa";s:3:"nds";s:11:"alsónémet";s:3:"nds";s:13:"afaan nepalii";s:2:"ne";s:12:"afaan dachii";s:2:"nl";s:15:"afaan norwegian";s:2:"nn";s:14:"afaan norweyii";s:2:"no";s:16:"af noorwiijiyaan";s:2:"no";s:11:"afaan occit";s:2:"oc";s:11:"afaan oromo";s:2:"om";s:14:"afaan punjabii";s:2:"pa";s:23:"alemán de pennsylvania";s:3:"pdc";s:21:"alamaneg pennsylvania";s:3:"pdc";s:20:"almaeneg pensylfania";s:3:"pdc";s:24:"allemand de pennsylvanie";s:3:"pdc";s:16:"alemán palatinu";s:3:"pfl";s:16:"almaeneg palatin";s:3:"pfl";s:16:"allemand palatin";s:3:"pfl";s:14:"afaan polandii";s:2:"pl";s:13:"altpreußisch";s:3:"prg";s:13:"altpreussisch";s:3:"prg";s:9:"afghanskt";s:2:"ps";s:9:"afghanska";s:2:"ps";s:16:"afaan porchugaal";s:2:"pt";s:25:"afaan portugali (braazil)";s:5:"pt-br";s:24:"ခက်ချ်ဝါ";s:2:"qu";s:15:"afaan romaniyaa";s:2:"ro";s:12:"armãneashce";s:3:"rup";s:9:"aromanian";s:3:"rup";s:14:"afaan rushiyaa";s:2:"ru";s:8:"aromanca";s:3:"rup";s:9:"aroumaneg";s:3:"rup";s:11:"aromanijski";s:3:"rup";s:9:"aromanès";s:3:"rup";s:12:"arumunština";s:3:"rup";s:8:"aromaneg";s:3:"rup";s:9:"arumænsk";s:3:"rup";s:10:"aromunisch";s:3:"rup";s:8:"arrumano";s:3:"rup";s:8:"aromuuni";s:3:"rup";s:8:"aromania";s:3:"rup";s:12:"aromaniaansk";s:3:"rup";s:11:"arómáinis";s:3:"rup";s:9:"aromunski";s:3:"rup";s:7:"aromán";s:3:"rup";s:10:"arúmenska";s:3:"rup";s:7:"arumeno";s:3:"rup";s:10:"aromunesch";s:3:"rup";s:9:"aromanių";s:3:"rup";s:8:"aromūnu";s:3:"rup";s:10:"aromanijan";s:3:"rup";s:8:"aromansk";s:3:"rup";s:10:"aromuunsch";s:3:"rup";s:9:"aroemeens";s:3:"rup";s:10:"arumuński";s:3:"rup";s:7:"aromeno";s:3:"rup";s:8:"aromunic";s:3:"rup";s:9:"aromână";s:3:"rup";s:11:"arumunčina";s:3:"rup";s:13:"aromunščina";s:3:"rup";s:10:"arumänska";s:3:"rup";s:8:"albainis";s:3:"sco";s:6:"albais";s:3:"sco";s:15:"afaan sinhalese";s:2:"si";s:12:"afaan slovak";s:2:"sk";s:17:"afaan islovaniyaa";s:2:"sl";s:18:"aşağı silezyaca";s:3:"sli";s:8:"albanees";s:2:"sq";s:6:"albanu";s:2:"sq";s:5:"alban";s:2:"sq";s:7:"albaneg";s:2:"sq";s:8:"albanski";s:2:"sq";s:8:"albanès";s:2:"sq";s:12:"albánština";s:2:"sq";s:7:"albansk";s:2:"sq";s:9:"albanisch";s:2:"sq";s:12:"albanšćina";s:2:"sq";s:10:"albaniagbe";s:2:"sq";s:8:"albanian";s:2:"sq";s:6:"albana";s:2:"sq";s:8:"albanés";s:2:"sq";s:8:"albaania";s:2:"sq";s:9:"albaniera";s:2:"sq";s:7:"albania";s:2:"sq";s:8:"albanskt";s:2:"sq";s:8:"albanais";s:2:"sq";s:8:"albanês";s:2:"sq";s:9:"albaneesk";s:2:"sq";s:9:"albáinis";s:2:"sq";s:9:"albàinis";s:2:"sq";s:6:"albán";s:2:"sq";s:8:"albanese";s:2:"sq";s:8:"albanska";s:2:"sq";s:10:"albaanesch";s:2:"sq";s:9:"albanesch";s:2:"sq";s:7:"albanų";s:2:"sq";s:8:"albāņu";s:2:"sq";s:8:"albaniż";s:2:"sq";s:9:"albaansch";s:2:"sq";s:15:"afaan albaniyaa";s:2:"sq";s:9:"albański";s:2:"sq";s:12:"albanes simi";s:2:"sq";s:9:"albaneză";s:2:"sq";s:13:"albánagiella";s:2:"sq";s:11:"albánčina";s:2:"sq";s:12:"albanščina";s:2:"sq";s:11:"albaaniyaan";s:2:"sq";s:10:"arnavutça";s:2:"sq";s:8:"albancha";s:2:"sq";s:13:"afaan serbiya";s:2:"sr";s:16:"anyiehe sothogbe";s:2:"st";s:14:"afaan sudaanii";s:2:"su";s:14:"afaan suwidiin";s:2:"sv";s:13:"afaan tamilii";s:2:"ta";s:12:"afaan telugu";s:2:"te";s:11:"afaan tayii";s:2:"th";s:13:"afaan tigiree";s:2:"ti";s:12:"afaan turkii";s:2:"tr";s:25:"amazic del marroc central";s:3:"tzm";s:34:"atlas tamazight កណ្ដាល";s:3:"tzm";s:14:"afaan ukreenii";s:2:"uk";s:10:"afaan urdu";s:2:"ur";s:11:"afaan uzbek";s:2:"uz";s:14:"afaan veetinam";s:2:"vi";s:11:"afaan xhosa";s:2:"xh";s:19:"anʼanaviy xitoycha";s:7:"zh-hant";s:11:"afaan zuulu";s:2:"zu";s:5:"akoli";s:3:"ach";s:5:"acoli";s:3:"ach";s:10:"akoli dili";s:3:"ach";s:10:"akolština";s:3:"ach";s:14:"acholi-sprache";s:3:"ach";s:9:"acholiera";s:3:"ach";s:7:"atšoli";s:3:"ach";s:6:"acholi";s:3:"ach";s:6:"acioli";s:3:"ach";s:14:"acholi-sprooch";s:3:"ach";s:7:"akolių";s:3:"ach";s:6:"ačolu";s:3:"ach";s:6:"aczoli";s:3:"ach";s:6:"ačoli";s:3:"ach";s:14:"ačolijščina";s:3:"ach";s:5:"aghem";s:3:"agq";s:5:"aqhem";s:3:"agq";s:7:"aghemeg";s:3:"agq";s:8:"aghemgbe";s:3:"agq";s:6:"aghemi";s:3:"agq";s:8:"aghemera";s:3:"agq";s:12:"aghemšćina";s:3:"agq";s:4:"agem";s:3:"agq";s:7:"aghemų";s:3:"agq";s:6:"aghemu";s:3:"agq";s:12:"aghemščina";s:3:"agq";s:8:"agemisht";s:3:"agq";s:10:"ag‘emcha";s:3:"agq";s:13:"arabeg modern";s:6:"ar-001";s:33:"arabština (moderní standardní)";s:6:"ar-001";s:21:"arabeg modern safonol";s:6:"ar-001";s:23:"araabia (tänapäevane)";s:6:"ar-001";s:27:"arabiera moderno estandarra";s:6:"ar-001";s:22:"arabe standard moderne";s:6:"ar-001";s:22:"araibis chaighdeánach";s:6:"ar-001";s:19:"arab standar modern";s:6:"ar-001";s:22:"arabo moderno standard";s:6:"ar-001";s:19:"arab standard moden";s:6:"ar-001";s:24:"arabă standard modernă";s:6:"ar-001";s:33:"arabčina (moderná štandardná)";s:6:"ar-001";s:27:"arabishte standarde moderne";s:6:"ar-001";s:3:"asu";s:3:"asa";s:6:"asagbe";s:3:"asa";s:3:"asa";s:3:"asa";s:4:"asua";s:3:"asa";s:14:"asu (tanzania)";s:3:"asa";s:5:"assou";s:3:"asa";s:11:"asujščina";s:3:"asa";s:7:"asuisht";s:3:"asa";s:6:"asucha";s:3:"asa";s:15:"ချီဂါ";s:3:"cgg";s:16:"antieke egipties";s:3:"egy";s:16:"ancient egyptian";s:3:"egy";s:11:"aldegyptysk";s:3:"egy";s:13:"altägyptisch";s:3:"egy";s:14:"ahl Äjiptesch";s:3:"egy";s:16:"afaan filippinii";s:3:"fil";s:15:"ခမ်ဘာ";s:3:"kam";s:33:"ခဘူဗာဒီအာနူ";s:3:"kea";s:37:"ခိုရာ ချီအီနီ";s:3:"khq";s:30:"ခါလိမ်ဂျင်";s:3:"kln";s:18:"anyiehe ndebelegbe";s:2:"nr";s:8:"ankolera";s:3:"nyn";s:27:"ခီခ်အီချီ";s:3:"quc";s:49:"ခိုရာဘိုရို ဆမ်နီ";s:3:"ses";s:14:"anárašgiella";s:3:"smn";s:28:"ခိုလ် ဆာမိ";s:3:"sms";s:22:"콩고 스와힐리어";s:3:"swc";s:43:"ခွန်ဂို စွာဟီလီ";s:3:"swc";s:5:"ateso";s:3:"teo";s:14:"afaan kilingon";s:3:"tlh";s:33:"af aan la aqoon ama aan sax ahayn";s:3:"und";s:27:"amazic estàndard marroquí";s:3:"zgh";s:26:"amazighe standard marocain";s:3:"zgh";s:25:"akukho okuqukethwe kolimi";s:3:"zxx";s:23:"avstraliya ingiliscəsi";s:5:"en-au";s:19:"australski engleski";s:5:"en-au";s:18:"anglès australià";s:5:"en-au";s:17:"australsk engelsk";s:5:"en-au";s:22:"australisches englisch";s:5:"en-au";s:23:"awstralska engelšćina";s:5:"en-au";s:26:"australiatɔwo ƒe yevugbe";s:5:"en-au";s:18:"australian english";s:5:"en-au";s:16:"aŭstralia angla";s:5:"en-au";s:18:"australianenglanti";s:5:"en-au";s:18:"anglais australien";s:5:"en-au";s:18:"australysk ingelsk";s:5:"en-au";s:24:"auschtralischs Änglisch";s:5:"en-au";s:26:"awstralska jendźelšćina";s:5:"en-au";s:15:"ausztrál angol";s:5:"en-au";s:21:"australescht englesch";s:5:"en-au";s:18:"australijos anglų";s:5:"en-au";s:19:"austrālijas angļu";s:5:"en-au";s:20:"austraalsch engelsch";s:5:"en-au";s:18:"australisch engels";s:5:"en-au";s:18:"australisk engelsk";s:5:"en-au";s:22:"australijski angielski";s:5:"en-au";s:21:"australijski engleski";s:5:"en-au";s:25:"angličtina (austrálska)";s:5:"en-au";s:23:"avstralska angleščina";s:5:"en-au";s:21:"anglishte australiane";s:5:"en-au";s:19:"australisk engelska";s:5:"en-au";s:23:"avustralya İngilizcesi";s:5:"en-au";s:22:"avstraliya inglizchasi";s:5:"en-au";s:20:"amerika ingiliscəsi";s:5:"en-us";s:18:"američki engleski";s:5:"en-us";s:16:"anglès americà";s:5:"en-us";s:17:"angličtina (usa)";s:5:"en-us";s:18:"amerikansk engelsk";s:5:"en-us";s:23:"amerikanisches englisch";s:5:"en-us";s:21:"ameriska engelšćina";s:5:"en-us";s:16:"american english";s:5:"en-us";s:16:"amerikanenglanti";s:5:"en-us";s:18:"anglais américain";s:5:"en-us";s:19:"amerikaansk ingelsk";s:5:"en-us";s:23:"amerikanischs Änglisch";s:5:"en-us";s:24:"ameriska jendźelšćina";s:5:"en-us";s:14:"amerikai angol";s:5:"en-us";s:13:"anglese (sua)";s:5:"en-us";s:25:"amärrekaanesch Änglesch";s:5:"en-us";s:22:"amerikanescht englesch";s:5:"en-us";s:10:"asv angļu";s:5:"en-us";s:21:"amerikaansch engelsch";s:5:"en-us";s:17:"amerikaans engels";s:5:"en-us";s:22:"amerykański angielski";s:5:"en-us";s:23:"angličtina (americká)";s:5:"en-us";s:18:"angleščina (zda)";s:5:"en-us";s:19:"anglishte amerikane";s:5:"en-us";s:19:"amerikansk engelska";s:5:"en-us";s:21:"amerikan İngilizcesi";s:5:"en-us";s:15:"amerika hispana";s:6:"es-419";s:15:"amerikanespanja";s:6:"es-419";s:24:"amerykański hiszpański";s:6:"es-419";s:21:"avrupa İspanyolcası";s:5:"es-es";s:9:"aetóipis";s:3:"gez";s:16:"afaan protuguese";s:5:"pt-pt";s:19:"avrupa portekizcesi";s:5:"pt-pt";s:7:"adangme";s:3:"ada";s:12:"adangme dili";s:3:"ada";s:11:"adangmejski";s:3:"ada";s:8:"adangmeg";s:3:"ada";s:8:"adangmų";s:3:"ada";s:7:"adangmu";s:3:"ada";s:8:"andangme";s:3:"ada";s:15:"adangmejščina";s:3:"ada";s:6:"adyghe";s:3:"ady";s:10:"aduge dili";s:3:"ady";s:8:"adygeieg";s:3:"ady";s:9:"adigejski";s:3:"ady";s:7:"adigué";s:3:"ady";s:12:"adygejština";s:3:"ady";s:9:"adygeisch";s:3:"ady";s:9:"adyghegbe";s:3:"ady";s:6:"adigeo";s:3:"ady";s:7:"adõgee";s:3:"ady";s:5:"adyge";s:3:"ady";s:9:"adyghéen";s:3:"ady";s:6:"adygai";s:3:"ady";s:6:"adygei";s:3:"ady";s:6:"adýge";s:3:"ady";s:11:"adygéiesch";s:3:"ady";s:9:"adygėjų";s:3:"ady";s:5:"adigu";s:3:"ady";s:7:"adygees";s:3:"ady";s:9:"adygejski";s:3:"ady";s:6:"adigue";s:3:"ady";s:9:"adygčina";s:3:"ady";s:13:"adigejščina";s:3:"ady";s:9:"adygeiska";s:3:"ady";s:7:"adigece";s:3:"ady";s:10:"avestanín";s:2:"ae";s:9:"avestanca";s:2:"ae";s:7:"avesteg";s:2:"ae";s:10:"avestanski";s:2:"ae";s:8:"avèstic";s:2:"ae";s:14:"avestánština";s:2:"ae";s:9:"afestaneg";s:2:"ae";s:7:"avestan";s:2:"ae";s:9:"avestisch";s:2:"ae";s:9:"avéstico";s:2:"ae";s:6:"avesta";s:2:"ae";s:9:"avestique";s:2:"ae";s:8:"avestysk";s:2:"ae";s:10:"aivéistis";s:2:"ae";s:10:"avestanais";s:2:"ae";s:9:"avesztán";s:2:"ae";s:10:"avestíska";s:2:"ae";s:13:"avästahnesch";s:2:"ae";s:9:"avestesch";s:2:"ae";s:7:"avestų";s:2:"ae";s:8:"avestisk";s:2:"ae";s:8:"avestsch";s:2:"ae";s:10:"awestyjski";s:2:"ae";s:7:"avestic";s:2:"ae";s:9:"avestană";s:2:"ae";s:10:"avestčina";s:2:"ae";s:14:"avestijščina";s:2:"ae";s:9:"avestiska";s:2:"ae";s:8:"avestçe";s:2:"ae";s:8:"afrihili";s:3:"afh";s:13:"afrihili dili";s:3:"afh";s:9:"affrihili";s:3:"afh";s:11:"afríhílí";s:3:"afh";s:12:"afrehihlesch";s:3:"afh";s:9:"afriħili";s:3:"afh";s:4:"ainu";s:3:"ain";s:6:"aynuca";s:3:"ain";s:7:"ainoueg";s:3:"ain";s:9:"ainština";s:3:"ain";s:7:"ainŵeg";s:3:"ain";s:12:"ainu-sprache";s:3:"ain";s:6:"aïnou";s:3:"ain";s:10:"aidhniúis";s:3:"ain";s:13:"aínu (japan)";s:3:"ain";s:12:"ainu-sprooch";s:3:"ain";s:5:"ainų";s:3:"ain";s:4:"ajnu";s:3:"ain";s:8:"ainčina";s:3:"ain";s:12:"ainujščina";s:3:"ain";s:9:"ayni dili";s:3:"ain";s:8:"acadianu";s:3:"akk";s:9:"akadianca";s:3:"akk";s:6:"akadeg";s:3:"akk";s:9:"akadijski";s:3:"akk";s:6:"accadi";s:3:"akk";s:11:"akkadština";s:3:"akk";s:6:"acadeg";s:3:"akk";s:8:"akkadisk";s:3:"akk";s:9:"akkadisch";s:3:"akk";s:8:"akkadian";s:3:"akk";s:6:"acadio";s:3:"akk";s:5:"akadi";s:3:"akk";s:6:"akkadi";s:3:"akk";s:8:"akkadien";s:3:"akk";s:8:"akkadysk";s:3:"akk";s:8:"acáidis";s:3:"akk";s:6:"akkád";s:3:"akk";s:7:"akkadia";s:3:"akk";s:10:"akkadíska";s:3:"akk";s:6:"accado";s:3:"akk";s:9:"akahdesch";s:3:"akk";s:9:"akkadesch";s:3:"akk";s:9:"akadianų";s:3:"akk";s:9:"akadiešu";s:3:"akk";s:8:"akkadjen";s:3:"akk";s:8:"akkadsch";s:3:"akk";s:9:"akadyjski";s:3:"akk";s:8:"acadiano";s:3:"akk";s:7:"accadic";s:3:"akk";s:10:"akkadiană";s:3:"akk";s:10:"akkadčina";s:3:"akk";s:11:"akadščina";s:3:"akk";s:9:"akkadiska";s:3:"akk";s:9:"akad dili";s:3:"akk";s:5:"aleut";s:3:"ale";s:7:"aleutca";s:3:"ale";s:8:"aleouteg";s:3:"ale";s:5:"aljut";s:3:"ale";s:6:"aleuta";s:3:"ale";s:11:"aleutština";s:3:"ale";s:7:"alewteg";s:3:"ale";s:8:"aleutisk";s:3:"ale";s:9:"aleutisch";s:3:"ale";s:9:"aleutiano";s:3:"ale";s:7:"aleuudi";s:3:"ale";s:7:"aleutti";s:3:"ale";s:8:"aléoute";s:3:"ale";s:8:"aleutais";s:3:"ale";s:8:"aleutski";s:3:"ale";s:8:"aleúska";s:3:"ale";s:6:"aleuto";s:3:"ale";s:13:"ale’uhtesch";s:3:"ale";s:9:"aleutesch";s:3:"ale";s:7:"aleutų";s:3:"ale";s:6:"aleutu";s:3:"ale";s:8:"aleutsch";s:3:"ale";s:10:"aleoetisch";s:3:"ale";s:7:"aleucki";s:3:"ale";s:7:"aleúte";s:3:"ale";s:7:"aleutic";s:3:"ale";s:7:"aleută";s:3:"ale";s:10:"aleutčina";s:3:"ale";s:12:"aleutščina";s:3:"ale";s:9:"aleutiska";s:3:"ale";s:13:"altai del sur";s:3:"alt";s:13:"altaieg ar su";s:3:"alt";s:17:"altaic meridional";s:3:"alt";s:21:"altajština (jižní)";s:3:"alt";s:15:"altäeg deheuol";s:3:"alt";s:17:"altái meridional";s:3:"alt";s:5:"altai";s:3:"alt";s:13:"altaï du sud";s:3:"alt";s:13:"altai selatan";s:3:"alt";s:17:"altai meridionale";s:3:"alt";s:12:"altai do sul";s:3:"alt";s:14:"altaic dal sid";s:3:"alt";s:21:"altaică meridională";s:3:"alt";s:7:"arapaho";s:3:"arp";s:12:"arapaho dili";s:3:"arp";s:13:"arapažština";s:3:"arp";s:15:"arapaho-sprache";s:3:"arp";s:8:"arapahó";s:3:"arp";s:15:"arapaho-sprooch";s:3:"arp";s:8:"arapahų";s:3:"arp";s:7:"arapahu";s:3:"arp";s:8:"arapaħo";s:3:"arp";s:12:"arapaščina";s:3:"arp";s:6:"arawak";s:3:"arw";s:9:"aravakça";s:3:"arw";s:8:"arawakeg";s:3:"arw";s:6:"aravak";s:3:"arw";s:6:"arauac";s:3:"arw";s:16:"arawacké jazyky";s:3:"arw";s:8:"arawaceg";s:3:"arw";s:14:"arawak-sprache";s:3:"arw";s:8:"arahuaco";s:3:"arw";s:7:"aravaki";s:3:"arw";s:9:"aravakska";s:3:"arw";s:6:"aruaco";s:3:"arw";s:14:"arawak-sprooch";s:3:"arw";s:8:"aravakų";s:3:"arw";s:7:"aravaku";s:3:"arw";s:14:"arawak-spraken";s:3:"arw";s:8:"arauaqui";s:3:"arw";s:11:"arawačtina";s:3:"arw";s:12:"aravaščina";s:3:"arw";s:10:"arawakiska";s:3:"arw";s:11:"arawak dili";s:3:"arw";s:6:"awadhi";s:3:"awa";s:8:"avadicə";s:3:"awa";s:6:"avadhi";s:3:"awa";s:11:"awadhština";s:3:"awa";s:6:"awádi";s:3:"awa";s:6:"avadí";s:3:"awa";s:6:"avadhu";s:3:"awa";s:7:"awadħi";s:3:"awa";s:10:"avadhčina";s:3:"awa";s:11:"avadščina";s:3:"awa";s:6:"akoose";s:3:"bss";s:10:"akoosiagbe";s:3:"bss";s:7:"akūsų";s:3:"bss";s:5:"akose";s:3:"bss";s:5:"atsam";s:3:"cch";s:7:"atsamca";s:3:"cch";s:7:"atsameg";s:3:"cch";s:6:"atsami";s:3:"cch";s:6:"atszam";s:3:"cch";s:7:"atsamų";s:3:"cch";s:6:"atsamu";s:3:"cch";s:11:"athapaskisk";s:3:"den";s:14:"anglès mitjà";s:3:"enm";s:27:"angličtina (středověká)";s:3:"enm";s:15:"altfranzösisch";s:3:"fro";s:16:"ancien français";s:3:"fro";s:10:"aldfrânsk";s:3:"fro";s:13:"alfranséisch";s:3:"fro";s:16:"austurfrísneska";s:3:"frs";s:13:"austrumfrīzu";s:3:"frs";s:11:"austfrisisk";s:3:"frs";s:17:"altualemán mediu";s:3:"gmh";s:18:"alt alemany mitjà";s:3:"gmh";s:29:"alemán de la alta edad media";s:3:"gmh";s:21:"alemão medieval alto";s:3:"gmh";s:19:"alemão médio-alto";s:3:"gmh";s:19:"altualemán antiguu";s:3:"goh";s:17:"alt alemany antic";s:3:"goh";s:14:"althochdeutsch";s:3:"goh";s:31:"alemán de la alta edad antigua";s:3:"goh";s:20:"ancien haut allemand";s:3:"goh";s:14:"alsheechdútsk";s:3:"goh";s:16:"althochtüütsch";s:3:"goh";s:16:"alhéichdäitsch";s:3:"goh";s:20:"alemão arcaico alto";s:3:"goh";s:16:"arabais iùdhach";s:3:"jrb";s:12:"ခါစီ";s:3:"kha";s:11:"altnordisch";s:3:"non";s:9:"aldnoarsk";s:3:"non";s:10:"alnordesch";s:3:"non";s:10:"alt-newari";s:3:"nwc";s:9:"al-newari";s:3:"nwc";s:16:"anašinabščina";s:2:"oj";s:11:"altpersisch";s:3:"peo";s:10:"aldperzysk";s:3:"peo";s:10:"alpersesch";s:3:"peo";s:16:"altprovenzalisch";s:3:"pro";s:15:"aldprovençaals";s:3:"pro";s:15:"alprovenzalesch";s:3:"pro";s:18:"araméu samaritanu";s:3:"sam";s:22:"arameeg ar samaritaned";s:3:"sam";s:16:"arameu samarità";s:3:"sam";s:15:"aramaeg samaria";s:3:"sam";s:17:"arameo samaritano";s:3:"sam";s:19:"araméen samaritain";s:3:"sam";s:18:"aramais shamárach";s:3:"sam";s:21:"aramais shamaritanach";s:3:"sam";s:12:"aram samaria";s:3:"sam";s:19:"aramaico samaritano";s:3:"sam";s:17:"arameic samaritan";s:3:"sam";s:22:"aramaică samariteană";s:3:"sam";s:9:"altirisch";s:3:"sga";s:16:"ancien irlandais";s:3:"sga";s:7:"aldyrsk";s:3:"sga";s:8:"aliresch";s:3:"sga";s:12:"arabeg tchad";s:3:"shu";s:21:"arabština (čadská)";s:3:"shu";s:11:"arabeg chad";s:3:"shu";s:14:"arabe tchadien";s:3:"shu";s:16:"arabais seàdach";s:3:"shu";s:9:"arab suwa";s:3:"shu";s:14:"arabski (czad)";s:3:"shu";s:16:"arabă ciadiană";s:3:"shu";s:10:"altsyrisch";s:3:"syc";s:9:"alsyresch";s:3:"syc";s:5:"ameto";s:3:"wal";s:14:"arabeg tunizia";s:3:"aeb";s:21:"arabština (tuniská)";s:3:"aeb";s:14:"arabeg tunisia";s:3:"aeb";s:14:"arabe tunisien";s:3:"aeb";s:19:"arabais thuiniseach";s:3:"aeb";s:12:"arab tunisia";s:3:"aeb";s:14:"arabo tunisino";s:3:"aeb";s:7:"alabama";s:3:"akz";s:9:"alabamaeg";s:3:"akz";s:12:"alabamština";s:3:"akz";s:10:"alabamäeg";s:3:"akz";s:13:"alabamiečių";s:3:"akz";s:9:"alabamaca";s:3:"akz";s:6:"araona";s:3:"aro";s:11:"araonština";s:3:"aro";s:8:"araonaeg";s:3:"aro";s:7:"araonų";s:3:"aro";s:9:"araoniska";s:3:"aro";s:30:"amerikanische gebärdensprache";s:3:"ase";s:22:"american sign language";s:3:"ase";s:28:"amerikkalainen viittomakieli";s:3:"ase";s:32:"amärrekahnesche blendeschprohch";s:3:"ase";s:26:"amerikanesch zeechesprooch";s:3:"ase";s:23:"amerikos ženklų kalba";s:3:"ase";s:23:"amerikaanse gebarentaal";s:3:"ase";s:26:"amerykański język migowy";s:3:"ase";s:24:"amerikanskt teckenspråk";s:3:"ase";s:22:"amerikan İşaret dili";s:3:"ase";s:12:"alaskanjupik";s:3:"esu";s:7:"ao naga";s:3:"njo";s:23:"ao (jazyky nágálandu)";s:3:"njo";s:7:"ao-naga";s:3:"njo";s:2:"ao";s:3:"njo";s:23:"afro-asiaatsche spraken";s:3:"afa";s:14:"afro-azijatski";s:3:"afa";s:16:"algonkin-spraken";s:3:"alg";s:20:"algonkvijanski jezik";s:3:"alg";s:6:"apache";s:3:"apa";s:13:"apački jezik";s:3:"apa";s:20:"athabasksche spraken";s:3:"ath";s:9:"atapaskan";s:3:"ath";s:20:"austraalsche spraken";s:3:"aus";s:18:"australijski jezik";s:3:"aus";s:21:"austroneesche spraken";s:3:"map";s:15:"austronežanski";s:3:"map";s:17:"altaische spraken";s:3:"tut";s:15:"altaički jezik";s:3:"tut";}i:72;a:190:{s:8:"афар";s:2:"aa";s:14:"афарски";s:2:"aa";s:16:"афарська";s:2:"aa";s:18:"абхазская";s:2:"ab";s:16:"абхаская";s:2:"ab";s:14:"абхазки";s:2:"ab";s:19:"абхаз тілі";s:2:"ab";s:14:"абхазча";s:2:"ab";s:14:"апхаски";s:2:"ab";s:10:"абхаз";s:2:"ab";s:14:"абхазаг";s:2:"ab";s:18:"абхазский";s:2:"ab";s:14:"абхаски";s:2:"ab";s:16:"абхазька";s:2:"ab";s:14:"ачински";s:3:"ace";s:12:"ачешки";s:3:"ace";s:16:"ачехский";s:3:"ace";s:16:"ачехська";s:3:"ace";s:18:"афрыкаанс";s:2:"af";s:16:"африканс";s:2:"af";s:18:"африкаанс";s:2:"af";s:20:"африкаанча";s:2:"af";s:10:"африк";s:2:"af";s:8:"акан";s:2:"ak";s:12:"аканча";s:2:"ak";s:14:"акански";s:2:"ak";s:18:"амхарская";s:2:"am";s:16:"амхарски";s:2:"am";s:10:"амхар";s:2:"am";s:14:"амхарча";s:2:"am";s:18:"амхарский";s:2:"am";s:18:"амхарська";s:2:"am";s:20:"арагонская";s:2:"an";s:18:"арагонски";s:2:"an";s:20:"арагонский";s:2:"an";s:20:"арагонська";s:2:"an";s:12:"ангика";s:3:"anp";s:12:"ангіка";s:3:"anp";s:16:"арабская";s:2:"ar";s:14:"арабски";s:2:"ar";s:17:"араб тілі";s:2:"ar";s:12:"арабча";s:2:"ar";s:14:"арапски";s:2:"ar";s:8:"араб";s:2:"ar";s:14:"араббаг";s:2:"ar";s:16:"арабский";s:2:"ar";s:16:"арабська";s:2:"ar";s:20:"арамейская";s:3:"arc";s:18:"арамейски";s:3:"arc";s:18:"арамејски";s:3:"arc";s:20:"арамейский";s:3:"arc";s:20:"арамейська";s:3:"arc";s:22:"арауканский";s:3:"arn";s:22:"арауканська";s:3:"arn";s:31:"алжирски арапски";s:3:"arq";s:16:"асамская";s:2:"as";s:14:"асамски";s:2:"as";s:19:"ассам тілі";s:2:"as";s:14:"ассамча";s:2:"as";s:10:"ассам";s:2:"as";s:18:"ассамский";s:2:"as";s:18:"ассамська";s:2:"as";s:22:"астурыйская";s:3:"ast";s:16:"астурски";s:3:"ast";s:22:"астурийский";s:3:"ast";s:18:"астурська";s:3:"ast";s:8:"авар";s:2:"av";s:16:"аварская";s:2:"av";s:14:"аварски";s:2:"av";s:14:"авайраг";s:2:"av";s:16:"аварский";s:2:"av";s:16:"аварська";s:2:"av";s:12:"аймара";s:2:"ay";s:16:"ајмарски";s:2:"ay";s:30:"азербайджанская";s:2:"az";s:30:"азэрбайджанская";s:2:"az";s:28:"азербайджански";s:2:"az";s:24:"азербайжанча";s:2:"az";s:26:"азербејџански";s:2:"az";s:20:"азербайжан";s:2:"az";s:30:"азербайджанский";s:2:"az";s:30:"азербайджанська";s:2:"az";s:39:"аўстрыйская нямецкая";s:5:"de-at";s:33:"австрийски немски";s:5:"de-at";s:40:"австриялық неміс тілі";s:5:"de-at";s:25:"австри герман";s:5:"de-at";s:35:"австралиаг немыцаг";s:5:"de-at";s:39:"австрийский немецкий";s:5:"de-at";s:35:"афіцыйная нямецкая";s:9:"de-formal";s:20:"англійская";s:2:"en";s:20:"ангельская";s:2:"en";s:18:"английски";s:2:"en";s:23:"ағылшын тілі";s:2:"en";s:16:"англисче";s:2:"en";s:16:"англиски";s:2:"en";s:10:"англи";s:2:"en";s:16:"англисаг";s:2:"en";s:20:"английский";s:2:"en";s:20:"англійська";s:2:"en";s:34:"англійская (канад.)";s:5:"en-ca";s:41:"англійська британська";s:5:"en-gb";s:18:"армянская";s:2:"hy";s:16:"арменски";s:2:"hy";s:19:"армян тілі";s:2:"hy";s:14:"армянча";s:2:"hy";s:10:"армен";s:2:"hy";s:18:"армянский";s:2:"hy";s:20:"асецінская";s:2:"os";s:20:"асэтынская";s:2:"os";s:18:"арумънски";s:3:"rup";s:20:"арумынский";s:3:"rup";s:20:"арумунська";s:3:"rup";s:18:"албанская";s:2:"sq";s:20:"альбанская";s:2:"sq";s:16:"албански";s:2:"sq";s:10:"албан";s:2:"sq";s:14:"албанча";s:2:"sq";s:12:"албани";s:2:"sq";s:18:"албанский";s:2:"sq";s:18:"албанська";s:2:"sq";s:10:"аколи";s:3:"ach";s:10:"ачоли";s:3:"ach";s:10:"ачолі";s:3:"ach";s:8:"агем";s:3:"agq";s:10:"агхем";s:3:"agq";s:12:"агемче";s:3:"agq";s:14:"агемски";s:3:"agq";s:49:"азыркы адабий араб тилинде";s:6:"ar-001";s:41:"арабский литературный";s:6:"ar-001";s:6:"асу";s:3:"asa";s:10:"асуча";s:3:"asa";s:6:"аса";s:3:"asa";s:38:"англійская (аўстрал.)";s:5:"en-au";s:47:"аўстралійская ангельская";s:5:"en-au";s:43:"австралийски английски";s:5:"en-au";s:48:"австралиялық ағылшын тілі";s:5:"en-au";s:27:"австрали англи";s:5:"en-au";s:37:"австралиаг англисаг";s:5:"en-au";s:47:"австралийский английский";s:5:"en-au";s:29:"англійская (ЗША)";s:5:"en-us";s:45:"амэрыканская ангельская";s:5:"en-us";s:41:"американски английски";s:5:"en-us";s:46:"американдық ағылшын тілі";s:5:"en-us";s:39:"американски англиски";s:5:"en-us";s:29:"америкийн англи";s:5:"en-us";s:33:"америкаг англисаг";s:5:"en-us";s:45:"американский английский";s:5:"en-us";s:14:"адангме";s:3:"ada";s:20:"адыгейская";s:3:"ady";s:10:"адиге";s:3:"ady";s:18:"адигејски";s:3:"ady";s:16:"адыгейаг";s:3:"ady";s:20:"адыгейский";s:3:"ady";s:20:"адигейська";s:3:"ady";s:16:"авестски";s:2:"ae";s:20:"авестански";s:2:"ae";s:12:"авестӕ";s:2:"ae";s:22:"авестийский";s:2:"ae";s:22:"авестійська";s:2:"ae";s:16:"африхили";s:3:"afh";s:16:"африхілі";s:3:"afh";s:8:"айну";s:3:"ain";s:8:"ајну";s:3:"ain";s:14:"айнська";s:3:"ain";s:16:"акадзкая";s:3:"akk";s:14:"акадски";s:3:"akk";s:18:"аккадский";s:3:"akk";s:18:"аккадська";s:3:"akk";s:16:"алеуцкая";s:3:"ale";s:16:"алеутски";s:3:"ale";s:18:"алеутский";s:3:"ale";s:18:"алеутська";s:3:"ale";s:14:"арапахо";s:3:"arp";s:12:"аравак";s:3:"arw";s:16:"аравачки";s:3:"arw";s:20:"аравакский";s:3:"arw";s:20:"аравакська";s:3:"arw";s:10:"авади";s:3:"awa";s:12:"авадхи";s:3:"awa";s:12:"авадхі";s:3:"awa";s:10:"акосе";s:3:"bss";s:12:"акоосе";s:3:"bss";s:8:"акус";s:3:"bss";s:10:"атсам";s:3:"cch";s:8:"ацам";s:3:"cch";s:14:"аджыбве";s:2:"oj";s:18:"алабамски";s:3:"akz";s:12:"араона";s:3:"aro";s:50:"американски знаковен јазик";s:3:"ase";s:4:"ао";s:3:"njo";}i:438;a:35:{s:12:"আফার";s:2:"aa";s:27:"আব্খাজিয়";s:2:"ab";s:21:"আচিনিয়";s:3:"ace";s:30:"আফ্রিকান্স";s:2:"af";s:12:"আকান";s:2:"ak";s:21:"আমহারিক";s:2:"am";s:24:"আর্গোনিজ";s:2:"an";s:21:"আঙ্গীকা";s:3:"anp";s:12:"আরবী";s:2:"ar";s:21:"আরামাইক";s:3:"arc";s:15:"আসামি";s:2:"as";s:27:"আস্তুরিয়";s:3:"ast";s:18:"আভেরিক";s:2:"av";s:21:"আয়মারা";s:2:"ay";s:33:"আজারবাইজানী";s:2:"az";s:15:"আইরিশ";s:2:"ga";s:27:"আর্মেনিয়";s:2:"hy";s:39:"আইসল্যান্ডীয়";s:2:"is";s:27:"আরোমানিয়";s:3:"rup";s:24:"আলবেনীয়";s:2:"sq";s:15:"আকোলী";s:3:"ach";s:47:"আধুনিক আদর্শ আরবী";s:6:"ar-001";s:9:"আসু";s:3:"asa";s:65:"আদর্শ মরক্কোন তামাজিগাত";s:3:"zgh";s:43:"আমেরিকার ইংরেজি";s:5:"en-us";s:15:"আদেগে";s:3:"ady";s:27:"আবেস্তীয়";s:2:"ae";s:27:"আফ্রিহিলি";s:3:"afh";s:12:"আইনু";s:3:"ain";s:33:"আক্কাদিয়ান";s:3:"akk";s:15:"আলেউত";s:3:"ale";s:21:"আরাপাহো";s:3:"arp";s:24:"আরাওয়াক";s:3:"arw";s:21:"আওয়াধি";s:3:"awa";s:18:"আত্সাম";s:3:"cch";}i:224;a:10:{s:5:"àfar";s:2:"aa";s:5:"àkan";s:2:"ak";s:5:"àrab";s:2:"ar";s:5:"àvar";s:2:"av";s:24:"남아제르바이잔어";s:3:"azb";s:16:"남부 사미어";s:3:"sma";s:23:"àrab estàndard modern";s:6:"ar-001";s:22:"남부 은데벨레어";s:2:"nr";s:19:"남부 알타이어";s:3:"alt";s:13:"àrab txadià";s:3:"shu";}i:944;a:36:{s:18:"ཨ་ཕར་ཁ";s:2:"aa";s:36:"ཨཱབ་ཁ་ཟི་ཡ་ཁ";s:2:"ab";s:36:"ཨཕ་རི་ཀཱནས་ཁ";s:2:"af";s:30:"ཨམ་ཧ་རིཀ་ཁ";s:2:"am";s:30:"ཨེ་ར་བིཀ་ཁ";s:2:"ar";s:27:"ཨ་ས་མིས་ཁ";s:2:"as";s:45:"ཨ་ཛར་བྷའི་ཇཱན་ཁ";s:2:"az";s:66:"ཨཱོས་ཊྲི་ཡཱན་ཇཱར་མཱན་ཁ";s:5:"de-at";s:27:"ཨིང་ལིཤ་ཁ";s:2:"en";s:42:"ཨེས་པ་རཱན་ཏོ་ཁ";s:2:"eo";s:36:"ཨིས་པེ་ནིཤ་ཁ";s:2:"es";s:45:"ཨེས་ཊོ་ནི་ཡཱན་ཁ";s:2:"et";s:15:"ፐርሺያኛ";s:2:"fa";s:15:"ፐርሲያኛ";s:2:"fa";s:30:"ཨཱའི་རིཤ་ཁ";s:2:"ga";s:32:"Ἀρχαία ἑλληνικὴ";s:3:"grc";s:42:"ཨར་མི་ནི་ཡཱན་ཁ";s:2:"hy";s:51:"ཨིན་དོ་ནི་སི་སྐད།";s:2:"id";s:54:"ཨིན་ཌོ་ནེ་ཤི་ཡཱན་ཁ";s:2:"id";s:24:"ཨིག་བོ་ཁ";s:2:"ig";s:45:"ཨ་ཡིས་ལེན་ཌིཀ་ཁ";s:2:"is";s:39:"ཨི་ཊ་ལི་ཡཱན་ཁ";s:2:"it";s:36:"ཨཽ་རི་ཡ་སྐད།";s:2:"or";s:27:"ཨོ་རི་ཡ་ཁ";s:2:"or";s:39:"ཨུ་རུ་སུ་སྐད་";s:2:"ru";s:36:"ཨུ་རུ་སུའི་ཁ";s:2:"ru";s:45:"ཨཱལ་བེ་ནི་ཡཱན་ཁ";s:2:"sq";s:9:"트위어";s:2:"tw";s:24:"ཨུར་དུ་ཁ";s:2:"ur";s:27:"ཨུས་བེཀ་ཁ";s:2:"uz";s:63:"ཨི་ཇིཔ་ཤཱན (སྔ་དུས་ཀྱི)";s:3:"egy";s:75:"ཨཱོས་ཊྲེ་ལི་ཡཱན་ཨིང་ལིཤ་ཁ";s:5:"en-au";s:75:"ཨི་བེ་རི་ཡཱན་པོར་ཅུ་གིས་ཁ";s:5:"pt-pt";s:15:"델라웨어어";s:3:"del";s:12:"敘利亞文";s:3:"syr";s:15:"트심시안어";s:3:"tsi";}i:913;a:44:{s:8:"Αφάρ";s:2:"aa";s:18:"Αμπχαζικά";s:2:"ab";s:12:"Αχινίζ";s:3:"ace";s:18:"Αφρικάανς";s:2:"af";s:8:"Ακάν";s:2:"ak";s:14:"Αμαρικά";s:2:"am";s:20:"Αραγκονικά";s:2:"an";s:14:"Ανγκικά";s:3:"anp";s:14:"Αραβικά";s:2:"ar";s:16:"Αραμαϊκά";s:3:"arc";s:20:"Αρουκάνιαν";s:3:"arn";s:18:"Ασαμεζικά";s:2:"as";s:20:"Αστουριανά";s:3:"ast";s:12:"Αϊμάρα";s:2:"ay";s:30:"Αζερμπαϊτζανικά";s:2:"az";s:14:"Αγγλικά";s:2:"en";s:27:"Αγγλικά Καναδά";s:5:"en-ca";s:50:"Αγγλικά Ηνωμένου Βασιλείου";s:5:"en-gb";s:29:"Αρχαία Ελληνικά";s:3:"grc";s:14:"Αϊτιανά";s:2:"ht";s:16:"Αρμενικά";s:2:"hy";s:18:"Αρομανικά";s:3:"rup";s:16:"Αλβανικά";s:2:"sq";s:41:"Απλοποιημένα Κινεζικά";s:7:"zh-hans";s:10:"Ακολί";s:3:"ach";s:10:"Αγκέμ";s:3:"agq";s:33:"Αρχαία Αιγυπτιακά";s:3:"egy";s:35:"Αγγλικά Αυστραλίας";s:5:"en-au";s:31:"Αγγλικά Αμερικής";s:5:"en-us";s:18:"Αντάνγκμε";s:3:"ada";s:16:"Αντιγκέα";s:3:"ady";s:14:"Αβεστάν";s:2:"ae";s:16:"Αφριχίλι";s:3:"afh";s:10:"Αϊνού";s:3:"ain";s:16:"Ακάντιαν";s:3:"akk";s:10:"Αλούτ";s:3:"ale";s:14:"Αράπαχο";s:3:"arp";s:16:"Αραγουάκ";s:3:"arw";s:16:"Αγουαντί";s:3:"awa";s:10:"Ακόσι";s:3:"bss";s:10:"Ατσάμ";s:3:"cch";s:35:"Ανατολικά Φριζιανά";s:3:"frs";s:27:"Αρχαία Περσικά";s:3:"peo";s:32:"Αραβικά του Τσαντ";s:3:"shu";}i:570;a:50:{s:10:"آفاری";s:2:"aa";s:12:"آبخازی";s:2:"ab";s:8:"آچئی";s:3:"ace";s:16:"آفریکانس";s:2:"af";s:8:"آکان";s:2:"ak";s:14:"آراگونی";s:2:"an";s:12:"آنگیکا";s:3:"anp";s:10:"آرامی";s:3:"arc";s:10:"آسامی";s:2:"as";s:12:"آستوری";s:3:"ast";s:10:"آواری";s:2:"av";s:16:"آیمارایی";s:2:"ay";s:22:"آزربائیجانی";s:2:"az";s:12:"آلمانی";s:2:"de";s:23:"آلمانی اتریش";s:5:"de-at";s:29:"آسٹرِیَن جٔرمَن";s:5:"de-at";s:25:"آسٹریائی جرمن";s:5:"de-at";s:34:"آلمانی علیای سوئیس";s:5:"de-ch";s:14:"آرپیتان";s:3:"frp";s:12:"آئیرِش";s:2:"ga";s:25:"آلمانی سوئیسی";s:3:"gsw";s:18:"آسا نا جبة";s:2:"ie";s:20:"آیِسلینڈِک";s:2:"is";s:17:"آئس لینڈک";s:2:"is";s:21:"آلمانی سفلی";s:3:"nds";s:14:"آكسیٹان";s:2:"oc";s:6:"آسی";s:2:"os";s:37:"آلمانی پنسیلوانیایی";s:3:"pdc";s:14:"آرومانی";s:7:"roa-rup";s:18:"آلبانیایی";s:2:"sq";s:34:"آمازیغی اطلس مرکزی";s:3:"tzm";s:16:"آچولیایی";s:3:"ach";s:8:"آگیم";s:3:"agq";s:6:"آسو";s:3:"asa";s:36:"آمازیغی معیار مراکش";s:3:"zgh";s:39:"آسٹریلیَن اَنٛگریٖزۍ";s:5:"en-au";s:35:"آسٹریلیائی انگریزی";s:5:"en-au";s:21:"آدانگمه‌ای";s:3:"ada";s:16:"آدیجیایی";s:3:"ady";s:16:"آفریهیلی";s:3:"afh";s:12:"آینویی";s:3:"ain";s:12:"آلئوتی";s:3:"ale";s:23:"آلتایی جنوبی";s:3:"alt";s:18:"آراپاهویی";s:3:"arp";s:14:"آراواکی";s:3:"arw";s:34:"آلمانی علیای میانه";s:3:"gmh";s:36:"آلمانی علیای باستان";s:3:"goh";s:8:"آیبن";s:3:"iba";s:21:"آرامی سامری";s:3:"sam";s:18:"آلابامایی";s:3:"akz";}i:693;a:29:{s:12:"અફાર";s:2:"aa";s:24:"અબખાજિયન";s:2:"ab";s:15:"અચીની";s:3:"ace";s:12:"અકાન";s:2:"ak";s:24:"અર્ગોનીઝ";s:2:"an";s:18:"અંગીકા";s:3:"anp";s:12:"અરબી";s:2:"ar";s:21:"અર્માઇક";s:3:"arc";s:27:"અસ્તુરિયન";s:3:"ast";s:18:"અવેરિક";s:2:"av";s:27:"અઝરબૈજાની";s:2:"az";s:24:"અંગ્રેજી";s:2:"en";s:40:"અપ્પર સોર્બિયન";s:3:"hsb";s:27:"અરોમેનિયન";s:3:"rup";s:27:"અલ્બેનિયન";s:2:"sq";s:12:"અઘેમ";s:3:"agq";s:9:"અસુ";s:3:"asa";s:31:"અજ્ઞાત ભાષા";s:3:"und";s:46:"અમેરિકન અંગ્રેજી";s:5:"en-us";s:24:"અદાંગ્મી";s:3:"ada";s:15:"અદિઘે";s:3:"ady";s:21:"અવેસ્તન";s:2:"ae";s:27:"અફ્રિહિલી";s:3:"afh";s:30:"અક્કાદીયાન";s:3:"akk";s:15:"અલેઉત";s:3:"ale";s:21:"અરાપાહો";s:3:"arp";s:15:"અરાવક";s:3:"arw";s:12:"અવધી";s:3:"awa";s:15:"અત્સમ";s:3:"cch";}i:488;a:180:{s:12:"אפארית";s:2:"aa";s:14:"אַפֿאַר";s:2:"aa";s:12:"אבחזית";s:2:"ab";s:14:"אכינזית";s:3:"ace";s:16:"אפריקאנס";s:2:"af";s:22:"אַפֿריקאַנס";s:2:"af";s:8:"אקאן";s:2:"ak";s:12:"אמהרית";s:2:"am";s:18:"אַמהאַריש";s:2:"am";s:16:"אראגונית";s:2:"an";s:20:"אַראַגאניש";s:2:"an";s:23:"אנגלית עתיקה";s:3:"ang";s:21:"אַלט ענגליש";s:3:"ang";s:14:"אנג׳יקה";s:3:"anp";s:16:"אַראַביש";s:2:"ar";s:10:"ארמית";s:3:"arc";s:16:"אַראַמיש";s:3:"arc";s:16:"אראוקנית";s:3:"arn";s:12:"אסאמית";s:2:"as";s:16:"אַסאַמיש";s:2:"as";s:14:"אסטורית";s:3:"ast";s:12:"אבארית";s:2:"av";s:16:"איימארית";s:2:"ay";s:10:"אזרית";s:2:"az";s:32:"אַזערביידזשאַניש";s:2:"az";s:21:"トバ・バタク語";s:3:"bbc";s:18:"චෙරොකී";s:3:"chr";s:40:"সোরানি কুর্দিশ";s:3:"ckb";s:12:"චෙත්";s:2:"cs";s:50:"সুইস উচ্চ জার্মানি";s:5:"de-ch";s:26:"אונטער־סארביש";s:3:"dsb";s:8:"אווה";s:2:"ee";s:12:"אנגלית";s:2:"en";s:23:"אנגלית קנדית";s:5:"en-ca";s:25:"אנגלית בריטית";s:5:"en-gb";s:14:"אספרנטו";s:2:"eo";s:27:"স্প্যানিশ";s:2:"es";s:14:"אסטונית";s:2:"et";s:42:"トルネダール・フィンランド語";s:3:"fit";s:10:"אירית";s:2:"ga";s:10:"איריש";s:2:"ga";s:37:"স্কটস-গ্যেলিক";s:2:"gd";s:28:"אוראַלט־גריכיש";s:3:"grc";s:34:"সুইস জার্মান";s:3:"gsw";s:26:"אייבער־סארביש";s:3:"hsb";s:16:"אונגעריש";s:2:"hu";s:12:"ארמנית";s:2:"hy";s:16:"אַרמעניש";s:2:"hy";s:18:"אינדונזית";s:2:"id";s:20:"אינדאנעזיש";s:2:"id";s:20:"אינטרלינגה";s:2:"ie";s:10:"איגבו";s:2:"ig";s:34:"সিচুয়ান য়ি";s:2:"ii";s:16:"אינופיאק";s:2:"ik";s:12:"אילוקו";s:3:"ilo";s:16:"אינגושית";s:3:"inh";s:8:"אידו";s:2:"io";s:8:"אידא";s:2:"io";s:16:"איסלנדית";s:2:"is";s:20:"איסלאַנדיש";s:2:"is";s:14:"איטלקית";s:2:"it";s:22:"איטאַליעניש";s:2:"it";s:20:"אינוקטיטוט";s:2:"iu";s:10:"ארזיה";s:3:"myv";s:18:"אוקסיטנית";s:2:"oc";s:20:"אקסיטאַניש";s:2:"oc";s:12:"אורומו";s:2:"om";s:10:"אוריה";s:2:"or";s:12:"אוסטית";s:2:"os";s:12:"אסעטיש";s:2:"os";s:14:"ארומנית";s:3:"rup";s:21:"সংষ্কৃত";s:2:"sa";s:24:"সাঁওতালি";s:3:"sat";s:36:"সার্ডিনিয়ান";s:2:"sc";s:30:"সিসিলিয়ান";s:3:"scn";s:15:"স্কটস";s:3:"sco";s:18:"সিন্ধি";s:2:"sd";s:18:"সাঙ্গো";s:2:"sg";s:52:"সার্বো-ক্রোয়েশিয়";s:2:"sh";s:18:"সিংহলী";s:2:"si";s:21:"স্লোভাক";s:2:"sk";s:30:"স্লোভেনীয়";s:2:"sl";s:25:"אונטער שלעזיש";s:3:"sli";s:24:"সামোয়ান";s:2:"sm";s:18:"সোমালী";s:2:"so";s:12:"אלבנית";s:2:"sq";s:18:"אַלבאַניש";s:2:"sq";s:24:"সার্বীয়";s:2:"sr";s:40:"স্রানান টোঙ্গো";s:3:"srn";s:21:"সোয়াতি";s:2:"ss";s:18:"সুদানী";s:2:"su";s:18:"সুইডিশ";s:2:"sv";s:27:"সোয়াহিলি";s:2:"sw";s:12:"トゥル語";s:3:"tcy";s:18:"トルクメン語";s:2:"tk";s:21:"সোয়ানা";s:2:"tn";s:12:"トンガ語";s:2:"to";s:12:"トキポナ";s:8:"tokipona";s:21:"トク・ピシン語";s:3:"tpi";s:12:"トルコ語";s:2:"tr";s:15:"トゥロヨ語";s:3:"tru";s:15:"সঙ্গা";s:2:"ts";s:18:"トゥンブカ語";s:3:"tum";s:12:"トウィ語";s:2:"tw";s:15:"トゥヴァ語";s:3:"tyv";s:71:"সেন্ট্রাল আটলাস তামাজিগাত";s:3:"tzm";s:14:"אודמורט";s:3:"udm";s:14:"אויגהור";s:2:"ug";s:18:"אוקראינית";s:2:"uk";s:22:"אוקראַאיניש";s:2:"uk";s:10:"אורדו";s:2:"ur";s:14:"אוזבקית";s:2:"uz";s:16:"אוזבעקיש";s:2:"uz";s:9:"චීන";s:2:"zh";s:34:"সরলীকৃত চীনা";s:7:"zh-hans";s:10:"אקולי";s:3:"ach";s:10:"אהיים";s:3:"agq";s:6:"אסו";s:3:"asa";s:12:"චිගා";s:3:"cgg";s:9:"台塔文";s:3:"dav";s:8:"אמבו";s:3:"ebu";s:8:"אפיק";s:3:"efi";s:21:"সামবুরু";s:3:"saq";s:18:"সাঙ্গু";s:3:"sbp";s:12:"সেনা";s:3:"seh";s:21:"אינארי סאמי";s:3:"smn";s:34:"স্কোল্ট সামি";s:3:"sms";s:41:"אומבאַוואוסטע שפּראַך";s:3:"und";s:12:"সোগা";s:3:"xog";s:29:"אנגלית אוסטרלית";s:5:"en-au";s:29:"אנגלית אמריקאית";s:5:"en-us";s:28:"সুইস ফরাসি";s:5:"fr-ch";s:18:"সিডামো";s:3:"sid";s:10:"אדנמה";s:3:"ada";s:12:"אדיגית";s:3:"ady";s:10:"אבסטן";s:2:"ae";s:16:"אפריהילי";s:3:"afh";s:8:"אינו";s:3:"ain";s:10:"אכדית";s:3:"akk";s:16:"אַקאַדיש";s:3:"akk";s:10:"אלאוט";s:3:"ale";s:23:"אלטאי דרומית";s:3:"alt";s:10:"ארפהו";s:3:"arp";s:12:"ארוואק";s:3:"arw";s:14:"אוואדית";s:3:"awa";s:21:"সিকসিকা";s:3:"bla";s:10:"אקוסה";s:3:"bss";s:8:"אטסם";s:3:"cch";s:21:"স্ল্যাভ";s:3:"den";s:10:"אקיוק";s:3:"eka";s:25:"אנגלית תיכונה";s:3:"enm";s:12:"אוונדו";s:3:"ewo";s:34:"אַלט־פֿראַנצויזיש";s:3:"fro";s:29:"אַלט־ הויכדויטש";s:3:"goh";s:10:"איבאן";s:3:"iba";s:23:"אירית תיכונה";s:3:"mga";s:18:"אוג׳יבווה";s:2:"oj";s:12:"אוסג׳ה";s:3:"osa";s:23:"אַלט פּערסיש";s:3:"peo";s:36:"স্যান্ডাওয়ে";s:3:"sad";s:46:"সামারিটান আরামিক";s:3:"sam";s:27:"ארמית שומרונית";s:3:"sam";s:15:"সাসাক";s:3:"sas";s:21:"সেল্কুপ";s:3:"sel";s:21:"אירית עתיקה";s:3:"sga";s:20:"אַלט־איריש";s:3:"sga";s:24:"সোনিঙ্কে";s:3:"snk";s:27:"সোগডিয়ান";s:3:"sog";s:15:"সেরের";s:3:"srr";s:18:"সুকুমা";s:3:"suk";s:12:"সুসু";s:3:"sus";s:24:"সুমেরীয়";s:3:"sux";s:24:"সিরিয়াক";s:3:"syr";s:15:"トケラウ語";s:3:"tkl";s:21:"トリンギット語";s:3:"tli";s:23:"トンガ語(ニアサ)";s:3:"tog";s:27:"সিমশিয়ান";s:3:"tsi";s:16:"אוגריתית";s:3:"uga";s:16:"אומבונדו";s:3:"umb";s:14:"איביביו";s:3:"ibb";}i:309;a:65:{s:15:"अफ़ार";s:2:"aa";s:12:"अफार";s:2:"aa";s:33:"अब्ख़ाज़ियन";s:2:"ab";s:24:"अबखेजियन";s:2:"ab";s:33:"अब्खाजियाली";s:2:"ab";s:21:"अचाइनीस";s:3:"ace";s:15:"अचीनी";s:3:"ace";s:24:"अफ़्रीकी";s:2:"af";s:30:"अफ्रिकान्स";s:2:"af";s:9:"अकन";s:2:"ak";s:12:"अकान";s:2:"ak";s:21:"अम्हेरी";s:2:"am";s:24:"अम्हारिक";s:2:"am";s:21:"अर्गोनी";s:2:"an";s:24:"अर्गोनीज";s:2:"an";s:21:"अङ्गिका";s:3:"anp";s:18:"अंगिका";s:3:"anp";s:12:"अरबी";s:2:"ar";s:27:"अ‍ॅरेमाइक";s:3:"arc";s:18:"असमिया";s:2:"as";s:27:"अस्तुरियन";s:3:"ast";s:18:"अवेरिक";s:2:"av";s:30:"अ‍ॅव्हेरिक";s:2:"av";s:30:"अज़रबैजानी";s:2:"az";s:27:"अझरबैजानी";s:2:"az";s:27:"अजरबैजानी";s:2:"az";s:9:"벵골어";s:2:"bn";s:43:"अष्ट्रियन जर्मन";s:5:"de-at";s:27:"अंग्रेज़ी";s:2:"en";s:24:"अंग्रेजी";s:2:"en";s:40:"अप्पर सॉर्बियन";s:3:"hsb";s:27:"अन्तरभाषी";s:2:"ie";s:21:"अक्सिटन";s:2:"oc";s:27:"अरोमानियन";s:3:"rup";s:30:"अल्बानियाई";s:2:"sq";s:27:"अल्बानियन";s:2:"sq";s:27:"अल्बेनियन";s:2:"sq";s:30:"ვიეტნამური";s:2:"vi";s:24:"ვოლოფური";s:2:"wo";s:15:"अकोली";s:3:"ach";s:18:"अग्हेम";s:3:"agq";s:12:"अघेम";s:3:"agq";s:9:"असु";s:3:"asa";s:31:"अज्ञात भाषा";s:3:"und";s:9:"ვაი";s:3:"vai";s:15:"ვუნჯო";s:3:"vun";s:49:"अमेरिकी अंग्रेज़ी";s:5:"en-us";s:43:"अमेरिकन इंग्रजी";s:5:"en-us";s:24:"अदान्गमे";s:3:"ada";s:24:"अडांग्मे";s:3:"ada";s:15:"अदिघे";s:3:"ady";s:15:"अडिघे";s:3:"ady";s:21:"अवस्ताई";s:2:"ae";s:21:"अवेस्तन";s:2:"ae";s:27:"अफ्रिहिली";s:3:"afh";s:21:"अक्कादी";s:3:"akk";s:27:"अक्कादिआन";s:3:"akk";s:15:"अलेउत";s:3:"ale";s:18:"अराफाओ";s:3:"arp";s:15:"अरावक";s:3:"arw";s:12:"अवधी";s:3:"awa";s:15:"अत्सम";s:3:"cch";s:37:"अभिजात नेवारी";s:3:"nwc";s:40:"अभिजात सिरियाक";s:3:"syc";s:21:"ველაითა";s:3:"wal";}i:450;a:48:{s:15:"アファル語";s:2:"aa";s:15:"アブハズ語";s:2:"ab";s:12:"アチェ語";s:3:"ace";s:24:"アフリカーンス語";s:2:"af";s:12:"アカン語";s:2:"ak";s:15:"アレマン語";s:3:"als";s:15:"アムハラ語";s:2:"am";s:15:"アラゴン語";s:2:"an";s:15:"アンギカ語";s:3:"anp";s:15:"アラビア語";s:2:"ar";s:12:"アラム語";s:3:"arc";s:18:"アラウカン語";s:3:"arn";s:39:"アラビア語アルジェリア方言";s:3:"arq";s:33:"アラビア語モロッコ方言";s:3:"ary";s:33:"アラビア語エジプト方言";s:3:"arz";s:15:"アッサム語";s:2:"as";s:24:"アストゥリアス語";s:3:"ast";s:15:"アヴァル語";s:2:"av";s:15:"アイマラ語";s:2:"ay";s:27:"アゼルバイジャン語";s:2:"az";s:18:"アルピタン語";s:3:"frp";s:21:"アイルランド語";s:2:"ga";s:18:"アルメニア語";s:2:"hy";s:21:"アイスランド語";s:2:"is";s:6:"漢文";s:12:"zh-classical";s:21:"アルーマニア語";s:3:"rup";s:18:"アルバニア語";s:2:"sq";s:15:"アチョリ語";s:3:"ach";s:12:"アゲム語";s:3:"agq";s:9:"アス語";s:3:"asa";s:18:"アメリカ英語";s:5:"en-us";s:18:"アダングメ語";s:3:"ada";s:15:"アディゲ語";s:3:"ady";s:18:"アヴェスタ語";s:2:"ae";s:18:"アフリヒリ語";s:3:"afh";s:12:"アイヌ語";s:3:"ain";s:15:"アッカド語";s:3:"akk";s:15:"アレウト語";s:3:"ale";s:18:"アラパホー語";s:3:"arp";s:15:"アラワク語";s:3:"arw";s:18:"アワディー語";s:3:"awa";s:15:"アコース語";s:3:"bss";s:18:"アタパスカ語";s:3:"hup";s:36:"アラビア語チュニジア方言";s:3:"aeb";s:15:"アラバマ語";s:3:"akz";s:15:"アラオナ語";s:3:"aro";s:18:"アメリカ手話";s:3:"ase";s:18:"アオ・ナガ語";s:3:"njo";}i:304;a:50:{s:15:"აფარი";s:2:"aa";s:24:"აფხაზური";s:2:"ab";s:21:"აჩეხური";s:3:"ace";s:30:"აფრიკაანსი";s:2:"af";s:15:"აკანი";s:2:"ak";s:24:"ამჰარული";s:2:"am";s:27:"არაგონული";s:2:"an";s:18:"ანგიკა";s:3:"anp";s:21:"არაბული";s:2:"ar";s:24:"არამეული";s:3:"arc";s:21:"ასამური";s:2:"as";s:27:"ასტურიული";s:3:"ast";s:18:"აიმარა";s:2:"ay";s:39:"აზერბაიჯანული";s:2:"az";s:55:"ავსტრიული გერმანული";s:5:"de-at";s:30:"İsveçrə yüksək almancası";s:5:"de-ch";s:28:"İsviçre yüksek almancası";s:5:"de-ch";s:10:"İngilizce";s:2:"en";s:21:"İngiliz İngilizcesi";s:5:"en-gb";s:11:"İspanyolca";s:2:"es";s:10:"İrlandaca";s:2:"ga";s:16:"İskoç gal dili";s:2:"gd";s:21:"İsveçrə almancası";s:3:"gsw";s:20:"İsviçre almancası";s:3:"gsw";s:9:"İbranice";s:2:"he";s:9:"İbo dili";s:2:"ig";s:10:"İnguşça";s:3:"inh";s:10:"İzlandaca";s:2:"is";s:10:"İtalyanca";s:2:"it";s:24:"ალბანური";s:2:"sq";s:10:"İsveççe";s:2:"sv";s:15:"აჩოლი";s:3:"ach";s:15:"აღემი";s:3:"agq";s:9:"ასუ";s:3:"asa";s:9:"벰바어";s:3:"bem";s:61:"ავსტრალიური ინგლისური";s:5:"en-au";s:55:"ამერიკული ინგლისური";s:5:"en-us";s:24:"İsveçrə fransızcası";s:5:"fr-ch";s:23:"İsviçre fransızcası";s:5:"fr-ch";s:21:"ადანგმე";s:3:"ada";s:24:"ადიღეური";s:3:"ady";s:24:"ავესტური";s:2:"ae";s:21:"აინუური";s:3:"ain";s:21:"აქადური";s:3:"akk";s:24:"ალეუტური";s:3:"ale";s:21:"არაპაჰო";s:3:"arp";s:21:"არავაკი";s:3:"arw";s:15:"ავადი";s:3:"awa";s:54:"აღმოსავლეთფრიზიული";s:3:"frs";s:13:"İngriya dili";s:3:"izh";}i:39;a:15:{s:33:"ភាសាអាហ្វារ";s:2:"aa";s:42:"ភាសាអារ៉ាហ្គោន";s:2:"an";s:36:"ភាសាអីម៉ារ៉ា";s:2:"ay";s:30:"ភាសាប៊ូតាន";s:2:"dz";s:15:"ភឺសៀន";s:2:"fa";s:38:"ភាសាហ្កែលិគ (gd)";s:2:"gd";s:27:"ភាសាខ្មែរ";s:2:"km";s:12:"ភូមា";s:2:"my";s:30:"ភាសាន័រវែស";s:2:"no";s:30:"ភាសាសាមូអា";s:2:"sm";s:33:"ភាសាយីឌីហ្ស";s:2:"yi";s:21:"ភាសាចួង";s:2:"za";s:36:"ភាសាម៉ុលដាវី";s:5:"ro-md";s:6:"Џиз";s:3:"gez";s:39:"ភាសាអាវែស្តង់";s:2:"ae";}i:205;a:32:{s:15:"ಅಫಾರ್";s:2:"aa";s:30:"ಅಬ್ಖಾಜಿಯನ್";s:2:"ab";s:21:"ಅಛಿನೀಸ್";s:3:"ace";s:15:"ಅಕಾನ್";s:2:"ak";s:21:"ಅಂಹರಿಕ್";s:2:"am";s:24:"ಅರಗೊನೀಸ್";s:2:"an";s:21:"ಅರೇಬಿಕ್";s:2:"ar";s:21:"ಅರಾಮಿಕ್";s:3:"arc";s:27:"ಅಸ್ಸಾಮೀಸ್";s:2:"as";s:18:"ಅವರಿಕ್";s:2:"av";s:21:"ಅಯ್ಮಾರಾ";s:2:"ay";s:33:"ಅಜೆರ್ಬೈಜಾನಿ";s:2:"az";s:43:"ಅಪ್ಪರ್ ಸರ್ಬಿಯನ್";s:3:"hsb";s:30:"ಅರ್ಮೇನಿಯನ್";s:2:"hy";s:9:"Íogbóis";s:2:"ig";s:11:"Íoslainnis";s:2:"is";s:30:"ಅರೋಮಾನಿಯನ್";s:3:"rup";s:30:"ಅಲ್ಬೇನಿಯನ್";s:2:"sq";s:15:"ಅಕೋಲಿ";s:3:"ach";s:15:"ಅಘೆಮ್";s:3:"agq";s:9:"ಅಸು";s:3:"asa";s:66:"ಅಪರಿಚಿತ ಅಥವಾ ಅಮಾನ್ಯ ಭಾಷೆ";s:3:"und";s:49:"ಅಮೆರಿಕನ್ ಇಂಗ್ಲೀಷ್";s:5:"en-us";s:24:"ಅಡಂಗ್‌ಮೆ";s:3:"ada";s:15:"ಅಡೈಘೆ";s:3:"ady";s:24:"ಅವೆಸ್ಟನ್";s:2:"ae";s:30:"ಅಕ್ಕಾಡಿಯನ್";s:3:"akk";s:21:"ಅಲೆಯುಟ್";s:3:"ale";s:18:"ಅರಪಾಹೋ";s:3:"arp";s:21:"ಅರಾವಾಕ್";s:3:"arw";s:12:"ಅವಧಿ";s:3:"awa";s:18:"ಅಟ್ಸಮ್";s:3:"cch";}i:500;a:72:{s:12:"아파르어";s:2:"aa";s:9:"아체어";s:3:"ace";s:18:"아프리칸스어";s:2:"af";s:9:"아칸어";s:2:"ak";s:12:"아라곤어";s:2:"an";s:9:"아랍어";s:2:"ar";s:9:"아람어";s:3:"arc";s:15:"아라우칸어";s:3:"arn";s:9:"아샘어";s:2:"as";s:18:"아스투리아어";s:3:"ast";s:12:"아바릭어";s:2:"av";s:15:"아이마라어";s:2:"ay";s:21:"아제르바이잔어";s:2:"az";s:9:"富拉文";s:2:"ff";s:15:"아일랜드어";s:2:"ga";s:12:"아이티어";s:2:"ht";s:18:"아르메니아어";s:2:"hy";s:18:"아이슬란드어";s:2:"is";s:12:"לויבאן";s:3:"jbo";s:16:"לאזשבאָן";s:3:"jbo";s:12:"לטינית";s:2:"la";s:16:"לאטייניש";s:2:"la";s:10:"לדינו";s:3:"lad";s:14:"לאַדינא";s:3:"lad";s:22:"לוקסמבורגית";s:2:"lb";s:24:"לוקסעמבורגיש";s:2:"lb";s:10:"לזגית";s:3:"lez";s:18:"לימבורגיש";s:2:"li";s:12:"ליוויש";s:3:"liv";s:12:"לינגלה";s:2:"ln";s:8:"לאית";s:2:"lo";s:8:"לאַא";s:2:"lo";s:8:"לוזי";s:3:"loz";s:12:"ליטאית";s:2:"lt";s:14:"ליטוויש";s:2:"lt";s:10:"לושאי";s:3:"lus";s:10:"לטבית";s:2:"lv";s:10:"לעטיש";s:2:"lv";s:18:"ピカルディ語";s:3:"pcd";s:18:"ピエモンテ語";s:3:"pms";s:18:"아로마니아어";s:3:"rup";s:23:"לאפית צפונית";s:2:"se";s:12:"维吾尔文";s:2:"ug";s:12:"아콜리어";s:3:"ach";s:12:"아그햄어";s:3:"agq";s:9:"아수어";s:3:"asa";s:10:"לאנגי";s:3:"lag";s:10:"לקוטה";s:3:"lkt";s:19:"לובה-קטנגה";s:2:"lu";s:22:"לובה, לולואה";s:3:"lua";s:8:"לואו";s:3:"luo";s:8:"לויה";s:3:"luy";s:17:"לולה סאמי";s:3:"smj";s:26:"ללא תוכן לשוני";s:3:"zxx";s:12:"아당메어";s:3:"ada";s:12:"아닥헤어";s:3:"ady";s:15:"아베스타어";s:2:"ae";s:18:"아프리히리어";s:3:"afh";s:12:"아이누어";s:3:"ain";s:12:"아카드어";s:3:"akk";s:15:"아라파호어";s:3:"arp";s:15:"아라와크어";s:3:"arw";s:12:"아와히어";s:3:"awa";s:12:"아쿠즈어";s:3:"bss";s:9:"아삼어";s:3:"cch";s:8:"לנדה";s:3:"lah";s:8:"למבה";s:3:"lam";s:14:"לואיסנו";s:3:"lui";s:10:"לונדה";s:3:"lun";s:23:"아일랜드어, 중세";s:3:"mga";s:20:"아일랜드, 고대";s:3:"sga";s:9:"富特文";s:3:"bfd";}i:757;a:72:{s:12:"ອະຟາ";s:2:"aa";s:24:"ອາຟຣິການ";s:2:"af";s:15:"ອາການ";s:2:"ak";s:21:"ອຳຮາຣິກ";s:2:"am";s:30:"ອາຣາໂກເນັດ";s:2:"an";s:33:"ອັງກິດໂບຮານ";s:3:"ang";s:15:"ອາຣັບ";s:2:"ar";s:21:"ອາລາມິກ";s:3:"arc";s:30:"ອາຣົວຄານຽນ";s:3:"arn";s:24:"ອັສຊາມີສ";s:2:"as";s:24:"ອັສຕູຮຽນ";s:3:"ast";s:21:"ອາວາຣິກ";s:2:"av";s:21:"ອາຍມາລາ";s:2:"ay";s:33:"ອາເຊີໄບຈານິ";s:2:"az";s:40:"ອອສຕຣຽນ ເຈີແມນ";s:5:"de-at";s:12:"ອິວາ";s:2:"ee";s:18:"ອັງກິດ";s:2:"en";s:42:"ອັງກິດ (ເຄເນດຽນ)";s:5:"en-ca";s:42:"ອັງກິດ (ບຣິດທິຊ)";s:5:"en-gb";s:21:"ອາເມນຽນ";s:2:"hy";s:36:"ອິນເຕີລິງລົວ";s:2:"ia";s:30:"ອິນໂດເນຊຽນ";s:2:"id";s:36:"ອິນເຕີລິງກຣີ";s:2:"ie";s:15:"ອິກໂບ";s:2:"ig";s:24:"ອິນນູປຽກ";s:2:"ik";s:18:"ອິນກັຊ";s:3:"inh";s:12:"ອີໂດ";s:2:"io";s:21:"ອິຕາລຽນ";s:2:"it";s:33:"ອິນນຸກຕິຕັດ";s:2:"iu";s:12:"ንያንጃ";s:2:"ny";s:27:"ອັອກຊີຕານ";s:2:"oc";s:24:"ອອດເຊຕິກ";s:2:"os";s:27:"ອາໂຣມານຽນ";s:3:"rup";s:24:"ອານບານຽນ";s:2:"sq";s:50:"ອັດລາສ ທາມາຊີກ ກາງ";s:3:"tzm";s:18:"ອຸດມັດ";s:3:"udm";s:18:"ອຸຍເຄີ";s:2:"ug";s:18:"ອູຣະດູ";s:2:"ur";s:18:"ອຸສເບກ";s:2:"uz";s:18:"ອາໂຄລີ";s:3:"ach";s:18:"ອາເຮັມ";s:3:"agq";s:66:"ອາຣາບິກມາດຕະຖານສະໄໝໃໝ່";s:6:"ar-001";s:12:"ອາຊູ";s:3:"asa";s:15:"ອີຟິກ";s:3:"efi";s:30:"ອີຢິບບູຮານ";s:3:"egy";s:12:"ንጎባኛ";s:3:"jgo";s:9:"梅鲁文";s:3:"mer";s:9:"梅魯文";s:3:"mer";s:6:"梅塔";s:3:"mgo";s:6:"ንኮ";s:3:"nqo";s:15:"ອາຣວາ";s:3:"rwk";s:30:"ອີນາຣິຊາມິ";s:3:"smn";s:48:"ອັງກິດ (ອອສເຕຣລຽນ)";s:5:"en-au";s:48:"ອັງກິດ (ອາເມລິກັນ)";s:5:"en-us";s:21:"ອາແດງມີ";s:3:"ada";s:27:"ອາເວັສແຕນ";s:2:"ae";s:24:"ອັກກາດຽມ";s:3:"akk";s:18:"ອາເລີດ";s:3:"ale";s:24:"ອານໄຕໃຕ້";s:3:"alt";s:24:"ອາຣາປາໂຮ";s:3:"arp";s:21:"ອາຣາແວກ";s:3:"arw";s:18:"ອາວາຮິ";s:3:"awa";s:15:"ອາຄຸດ";s:3:"bss";s:18:"ອາດແຊມ";s:3:"cch";s:21:"ອີກາຈັກ";s:3:"eka";s:18:"ອີລາໄມ";s:3:"elx";s:27:"ອັງກິດກາງ";s:3:"enm";s:21:"ອີວອນດູ";s:3:"ewo";s:30:"ອີຣິຊເກົ່າ";s:3:"sga";s:25:"ອາລັບ-ຊາດ";s:3:"shu";s:21:"ອຳບັນດູ";s:3:"umb";s:12:"梅敦巴文";s:3:"byv";}i:333;a:40:{s:12:"അഫാർ";s:2:"aa";s:30:"അബ്‌ഖാസിയൻ";s:2:"ab";s:21:"അചിനീസ്";s:3:"ace";s:15:"അകാൻ‌";s:2:"ak";s:24:"അംഹാരിക്";s:2:"am";s:24:"അരഗോണീസ്";s:2:"an";s:18:"അറബിക്";s:2:"ar";s:24:"അരമായഭാഷ";s:3:"arc";s:21:"അവാരിക്";s:2:"av";s:18:"അയ്മാറ";s:2:"ay";s:27:"അസർബൈജാനി";s:2:"az";s:15:"白俄罗斯文";s:2:"be";s:15:"白俄羅斯文";s:2:"be";s:9:"झेक";s:2:"cs";s:9:"종카어";s:2:"dz";s:18:"झोंगखा";s:2:"dz";s:37:"അപ്പർ സോർബിയൻ";s:3:"hsb";s:24:"അർമേനിയൻ";s:2:"hy";s:24:"അൽബേനിയൻ";s:2:"sq";s:15:"झुआंग";s:2:"za";s:12:"झुलू";s:2:"zu";s:15:"അകോലി";s:3:"ach";s:18:"झार्मा";s:3:"dje";s:28:"അജ്ഞാത ഭാഷ";s:3:"und";s:52:"അമേരിക്കൻ ഇംഗ്ലീഷ്";s:5:"en-us";s:24:"അഡാങ്ഗമി";s:3:"ada";s:15:"അഡൈഗേ";s:3:"ady";s:27:"അവസ്റ്റാൻ";s:2:"ae";s:15:"അയിനു";s:3:"ain";s:27:"അക്കാഡിയൻ";s:3:"akk";s:21:"അലൈട്ട്";s:3:"ale";s:18:"അരപാഹോ";s:3:"arp";s:18:"അറാവക്";s:3:"arw";s:12:"അവധി";s:3:"awa";s:21:"അക്കൂസ്";s:3:"bss";s:24:"അറ്റ്സാം";s:3:"cch";s:21:"झेपोटेक";s:3:"zap";s:24:"झेनान्गा";s:3:"zen";s:12:"झुनी";s:3:"zun";s:12:"झाझा";s:3:"zza";}i:821;a:9:{s:15:"ଅଫାର୍";s:2:"aa";s:12:"ଅକନ୍";s:2:"ak";s:18:"ଅଁଗୀକା";s:3:"anp";s:49:"ଅଷ୍ଟ୍ରିଆନ୍ ଜର୍ମାନ";s:5:"de-at";s:15:"ዕብራስጥ";s:2:"he";s:48:"ଅଜଣା ଏବଂ ଅବୈଧ ଭାଷା";s:3:"und";s:55:"ଅଷ୍ଟ୍ରେଲିଆନ୍ ଇଁରାଜୀ";s:5:"en-au";s:18:"ଅଦ୍ୟଘେ";s:3:"ady";s:21:"ଅବେସ୍ତନ";s:2:"ae";}i:40;a:43:{s:14:"Афарски";s:2:"aa";s:12:"Аҧсшәа";s:2:"ab";s:18:"Абхаастыы";s:2:"ab";s:16:"Ачинески";s:3:"ace";s:30:"Аппырыкааныстыы";s:2:"af";s:26:"Арагонежански";s:2:"an";s:12:"Ангика";s:3:"anp";s:16:"Араабтыы";s:2:"ar";s:16:"Армајски";s:3:"arc";s:20:"Астуријски";s:3:"ast";s:14:"Аварски";s:2:"av";s:12:"Аймара";s:2:"ay";s:12:"Ајмара";s:2:"ay";s:32:"Адьырбайдьаанныы";s:2:"az";s:24:"Аҥылычаанныы";s:2:"en";s:14:"Англисӣ";s:2:"en";s:15:"갈리시아어";s:2:"gl";s:16:"Адыгэбзэ";s:8:"kbd-cyrl";s:36:"ម៉ាឡាហ្គាស៊ី";s:2:"mg";s:15:"ម៉ោរី";s:2:"mi";s:27:"ម៉ាសេដូនី";s:2:"mk";s:21:"មលយាល័ម";s:2:"ml";s:30:"ម៉ុងហ្គោលី";s:2:"mn";s:15:"មរាធិ";s:2:"mr";s:24:"ម៉ាឡេស៊ី";s:2:"ms";s:21:"ម៉ាល់តា";s:2:"mt";s:22:"Ароманијски";s:3:"rup";s:26:"Албаанскайдыы";s:2:"sq";s:10:"Аколи";s:3:"ach";s:29:"(atorsinnaanngitsoq oqaatsit)";s:3:"und";s:45:"មិន​ស្គាល់​ភាសា";s:3:"und";s:21:"ម៉ារ៉ុក";s:3:"zgh";s:22:"Адангмејски";s:3:"ada";s:18:"Адигејски";s:3:"ady";s:20:"Авестански";s:2:"ae";s:16:"Африхили";s:3:"afh";s:8:"Аину";s:3:"ain";s:18:"Акадијски";s:3:"akk";s:8:"Аљут";s:3:"ale";s:14:"Арапахо";s:3:"arp";s:12:"Аравак";s:3:"arw";s:12:"Авадхи";s:3:"awa";s:16:"Атсамски";s:3:"cch";}i:949;a:31:{s:18:"அஃபார்";s:2:"aa";s:33:"அப்காஜியான்";s:2:"ab";s:15:"அகான்";s:2:"ak";s:27:"அம்ஹாரிக்";s:2:"am";s:21:"அங்கிகா";s:3:"anp";s:18:"அரபிக்";s:2:"ar";s:21:"அராமைக்";s:3:"arc";s:21:"அஸ்ஸாமி";s:2:"as";s:30:"அஸ்துரியன்";s:3:"ast";s:21:"அவேரிக்";s:2:"av";s:18:"அய்மரா";s:2:"ay";s:30:"அஸர்பைஜானி";s:2:"az";s:49:"அப்பர் சோர்பியான்";s:3:"hsb";s:9:"ꏝꀪꉙ";s:2:"ja";s:30:"அரோமானியன்";s:3:"rup";s:30:"அல்பேனியன்";s:2:"sq";s:15:"அகோலி";s:3:"ach";s:15:"அகெம்";s:3:"agq";s:9:"அசு";s:3:"asa";s:43:"அறியப்படாத மொழி";s:3:"und";s:49:"அமெரிக்க ஆங்கிலம்";s:5:"en-us";s:21:"அதாங்மே";s:3:"ada";s:12:"அதகே";s:3:"ady";s:27:"அவெஸ்தான்";s:2:"ae";s:30:"அஃப்ரிஹிலி";s:3:"afh";s:30:"அக்கேதியன்";s:3:"akk";s:15:"அலூட்";s:3:"ale";s:15:"அரபஹோ";s:3:"arp";s:21:"அராவாக்";s:3:"arw";s:12:"அவதி";s:3:"awa";s:27:"அம்பொண்டு";s:3:"umb";}i:77;a:66:{s:15:"అఫార్";s:2:"aa";s:30:"అబ్ఖాజియన్";s:2:"ab";s:15:"అకాన్";s:2:"ak";s:27:"అమ్హారిక్";s:2:"am";s:24:"అరగోనిస్";s:2:"an";s:18:"అరబిక్";s:2:"ar";s:21:"అరామేక్";s:3:"arc";s:30:"అరౌకేనియన్";s:3:"arn";s:33:"египетски арапски";s:3:"arz";s:21:"అస్సామీ";s:2:"as";s:33:"అస్టురియాన్";s:3:"ast";s:21:"అవారిక్";s:2:"av";s:30:"అజర్బైజాని";s:2:"az";s:6:"еве";s:2:"ee";s:22:"емилијански";s:3:"egl";s:16:"енглески";s:2:"en";s:18:"есперанто";s:2:"eo";s:16:"естонски";s:2:"et";s:16:"естойнаг";s:2:"et";s:18:"естонська";s:2:"et";s:28:"екстремадурски";s:3:"ext";s:10:"еврей";s:2:"he";s:46:"అప్పర్ సోర్బియన్";s:3:"hsb";s:16:"ерменски";s:2:"hy";s:10:"ерзиа";s:3:"myv";s:18:"ерзјански";s:3:"myv";s:8:"ерзя";s:3:"myv";s:30:"అల్బేనియన్";s:2:"sq";s:15:"అకోలి";s:3:"ach";s:15:"అగేమ్";s:3:"agq";s:9:"అసు";s:3:"asa";s:8:"ембу";s:3:"ebu";s:8:"ефик";s:3:"efi";s:8:"ефік";s:3:"efi";s:18:"египетски";s:3:"egy";s:49:"అమెరికన్ ఇంగ్లీష్";s:5:"en-us";s:27:"европын испани";s:5:"es-es";s:35:"европӕйаг англисаг";s:5:"es-es";s:41:"европейский испанский";s:5:"es-es";s:44:"еуропалық португал тілі";s:5:"pt-pt";s:31:"европын португал";s:5:"pt-pt";s:41:"европӕйаг полтугалиаг";s:5:"pt-pt";s:49:"европейский португальский";s:5:"pt-pt";s:24:"అడాంగ్మే";s:3:"ada";s:27:"అడిగాబ్జే";s:3:"ady";s:27:"అవేస్టాన్";s:2:"ae";s:27:"అఫ్రిహిలి";s:3:"afh";s:33:"అక్కాడియాన్";s:3:"akk";s:21:"అలియుట్";s:3:"ale";s:21:"అరాపాహో";s:3:"arp";s:21:"అరావాక్";s:3:"arw";s:12:"అవధి";s:3:"awa";s:21:"అట్సామ్";s:3:"cch";s:12:"екажук";s:3:"eka";s:12:"екаџук";s:3:"eka";s:14:"екаджук";s:3:"eka";s:18:"еламитски";s:3:"elx";s:14:"еламски";s:3:"elx";s:16:"еламська";s:3:"elx";s:12:"евондо";s:3:"ewo";s:35:"еврейско-персийски";s:3:"jpr";s:32:"еврејскоперсиски";s:3:"jpr";s:37:"еврейско-персидский";s:3:"jpr";s:31:"еврейско-арабски";s:3:"jrb";s:30:"еврејскоарапски";s:3:"jrb";s:33:"еврейско-арабский";s:3:"jrb";}i:629;a:75:{s:18:"อะฟาร์";s:2:"aa";s:18:"อับคาซ";s:2:"ab";s:21:"อาเจะห์";s:3:"ace";s:15:"อาคัน";s:2:"ak";s:21:"อัมฮารา";s:2:"am";s:21:"อารากอน";s:2:"an";s:33:"อังกฤษโบราณ";s:3:"ang";s:21:"อังคิกา";s:3:"anp";s:18:"อาหรับ";s:2:"ar";s:24:"อราเมอิก";s:3:"arc";s:36:"อาเราคาเนียน";s:3:"arn";s:45:"อาหรับแอลจีเรีย";s:3:"arq";s:42:"อาหรับโมร็อกโก";s:3:"ary";s:66:"อาหรับพื้นเมืองอียิปต์";s:3:"arz";s:18:"อัสสัม";s:2:"as";s:30:"อัสตูเรียส";s:3:"ast";s:18:"อาวาร์";s:2:"av";s:36:"อาเซอร์ไบจาน";s:2:"az";s:45:"อาเซอร์ไบจานใต้";s:3:"azb";s:18:"อังกฤษ";s:2:"en";s:39:"อังกฤษ - แคนาดา";s:5:"en-ca";s:60:"อังกฤษ - สหราชอาณาจักร";s:5:"en-gb";s:24:"อาร์พิตา";s:3:"frp";s:12:"ሕንደኛ";s:2:"hi";s:30:"อาร์เมเนีย";s:2:"hy";s:42:"อินเตอร์ลิงกัว";s:2:"ia";s:33:"อินโดนีเชีย";s:2:"id";s:42:"อินเตอร์ลิงกิว";s:2:"ie";s:15:"อิกโบ";s:2:"ig";s:27:"อีนูเปียก";s:2:"ik";s:18:"อีโลโก";s:3:"ilo";s:18:"อินกุช";s:3:"inh";s:12:"อีโด";s:2:"io";s:18:"อิตาลี";s:2:"it";s:30:"อินุกติตุต";s:2:"iu";s:54:"อังกฤษคลีโอลจาเมกา";s:3:"jam";s:27:"อ็อกซิตัน";s:2:"oc";s:27:"ออสเซเตีย";s:2:"os";s:33:"อาโรมาเนียน";s:3:"rup";s:24:"อุดมูร์ต";s:3:"udm";s:18:"อุยกัว";s:2:"ug";s:15:"อูรดู";s:2:"ur";s:18:"อุซเบก";s:2:"uz";s:18:"อาโคลิ";s:3:"ach";s:18:"อักเฮม";s:3:"agq";s:63:"อาหรับมาตรฐานสมัยใหม่";s:6:"ar-001";s:12:"อาซู";s:3:"asa";s:15:"อีฟิก";s:3:"efi";s:36:"อียิปต์โบราณ";s:3:"egy";s:24:"อึนกอมบา";s:3:"jgo";s:51:"อังกฤษ - ออสเตรเลีย";s:5:"en-au";s:45:"อังกฤษ - อเมริกัน";s:5:"en-us";s:21:"อาแดงมี";s:3:"ada";s:21:"อะดืยเก";s:3:"ady";s:18:"อเวสตะ";s:2:"ae";s:18:"อักกาด";s:3:"akk";s:21:"อาลิวต์";s:3:"ale";s:24:"อัลไตใต้";s:3:"alt";s:24:"อาราปาโฮ";s:3:"arp";s:21:"อาราวัก";s:3:"arw";s:12:"อวธี";s:3:"awa";s:18:"อาโคซี";s:3:"bss";s:21:"อีกาจุก";s:3:"eka";s:24:"อีลาไมต์";s:3:"elx";s:30:"อังกฤษกลาง";s:3:"enm";s:21:"อีวันโด";s:3:"ewo";s:15:"อิบาน";s:3:"iba";s:48:"อราเมอิกซามาเรีย";s:3:"sam";s:28:"อาหรับ-ชาด";s:3:"shu";s:24:"อุมบุนดู";s:3:"umb";s:42:"อาหรับตูนิเซีย";s:3:"aeb";s:21:"อาเรานา";s:3:"aro";s:24:"อิบิบิโอ";s:3:"ibb";s:27:"อินเกรียน";s:3:"izh";s:24:"อ๋าวนากา";s:3:"njo";}i:108;a:1324:{s:16:"lea fakaʻafāla";s:2:"aa";s:18:"lea fakaʻapakasia";s:2:"ab";s:16:"lea fakaʻatisē";s:3:"ace";s:19:"lea fakaʻafilikana";s:2:"af";s:9:"lu-akaani";s:2:"ak";s:15:"lea fakaʻakani";s:2:"ak";s:24:"lea fakaʻalapēnia-keki";s:3:"aln";s:11:"lu-amhariki";s:2:"am";s:9:"liamariki";s:2:"am";s:17:"lea fakaʻameliki";s:2:"am";s:17:"lea fakaʻalakoni";s:2:"an";s:24:"lea fakapālangi-motuʻa";s:3:"ang";s:16:"lea fakaʻangika";s:3:"anp";s:9:"larabukan";s:2:"ar";s:7:"larabci";s:2:"ar";s:8:"luwarabu";s:2:"ar";s:7:"lialabo";s:2:"ar";s:16:"lea fakaʻalepea";s:2:"ar";s:18:"lea fakaʻalāmiti";s:3:"arc";s:14:"lea fakamapuse";s:3:"arn";s:26:"lea fakaʻalepea-ʻaisilia";s:3:"arq";s:23:"lea fakaʻalepea-moloko";s:3:"ary";s:26:"lea fakaʻalepea-ʻisipite";s:3:"arz";s:16:"lea fakaʻasamia";s:2:"as";s:19:"lea fakaʻasitūlia";s:3:"ast";s:17:"lea fakaʻavaliki";s:2:"av";s:14:"lea fakakotava";s:3:"avk";s:16:"lea fakaʻaimala";s:2:"ay";s:20:"lea fakaʻasapaisani";s:2:"az";s:26:"lea fakaʻasapaisani-tonga";s:3:"azb";s:16:"lea fakapasikili";s:2:"ba";s:16:"lea fakapavālia";s:3:"bar";s:21:"lea fakatōpe-pēteki";s:3:"bbc";s:10:"lubelarusi";s:2:"be";s:12:"libyelorisí";s:2:"be";s:16:"lea fakapelalusi";s:2:"be";s:12:"lubulugariya";s:2:"bg";s:10:"libiligali";s:2:"bg";s:17:"lea fakapulukalia";s:2:"bg";s:16:"lea fakaposipuli";s:3:"bho";s:16:"lea fakapisilama";s:2:"bi";s:16:"lea fakapanisali";s:3:"bjn";s:16:"lea fakapamipala";s:2:"bm";s:9:"lubengali";s:2:"bn";s:9:"libengali";s:2:"bn";s:17:"lea fakapengikali";s:2:"bn";s:14:"lea fakatipeti";s:2:"bo";s:19:"lea fakapisinupilia";s:3:"bpy";s:18:"lea fakapakitiāli";s:3:"bqi";s:8:"llydaweg";s:2:"br";s:16:"lea fakapeletoni";s:2:"br";s:15:"lea fakapalahui";s:3:"brh";s:15:"lea fakaposinia";s:2:"bs";s:14:"lea fakapukisi";s:3:"bug";s:16:"lea fakakatalani";s:2:"ca";s:12:"lea fakasese";s:2:"ce";s:15:"lea fakasepuano";s:3:"ceb";s:14:"lea fakakamolo";s:2:"ch";s:15:"lea fakasokitau";s:3:"cho";s:15:"lea fakaselokī";s:3:"chr";s:14:"lea fakaseiene";s:3:"chy";s:22:"lea fakakūtisi-solani";s:3:"ckb";s:15:"lea fakakōsika";s:2:"co";s:16:"lea fakakapiseno";s:3:"cps";s:13:"lea fakakelī";s:2:"cr";s:21:"lea fakatoake-kilimea";s:3:"crh";s:7:"luceeke";s:2:"cs";s:9:"litshekɛ";s:2:"cs";s:12:"lea fakaseki";s:2:"cs";s:16:"lea fakakasiupia";s:3:"csb";s:25:"lea fakasilavia-fakasiasi";s:2:"cu";s:14:"lea fakasuvasa";s:2:"cv";s:15:"lea fakauēlesi";s:2:"cy";s:19:"lea fakatenimaʻake";s:2:"da";s:7:"ludaaki";s:2:"de";s:8:"lialemá";s:2:"de";s:15:"lea fakasiamane";s:2:"de";s:20:"lialémani ya otrish";s:5:"de-at";s:27:"lea fakasiamane-ʻaositulia";s:5:"de-at";s:19:"lialémani ya swisi";s:5:"de-ch";s:30:"lea fakasiamane-hake-suisilani";s:5:"de-ch";s:11:"lae sorbies";s:3:"dsb";s:13:"lower sorbian";s:3:"dsb";s:15:"lužičkosrpski";s:3:"dsb";s:13:"lágsorbneska";s:3:"dsb";s:10:"lejassorbu";s:3:"dsb";s:10:"lavsorbisk";s:3:"dsb";s:11:"lågsorbisk";s:3:"dsb";s:12:"lågsorbiska";s:3:"dsb";s:19:"lea fakasōpia-hifo";s:3:"dsb";s:21:"lea fakatusuni-loloto";s:3:"dtp";s:14:"lea fakativehi";s:2:"dv";s:14:"lea fakaputeni";s:2:"dz";s:13:"lea fakaʻeue";s:2:"ee";s:16:"lea fakaʻemilia";s:3:"egl";s:19:"lugereeki/luyonaani";s:2:"el";s:8:"ligeleki";s:2:"el";s:14:"lea fakakalisi";s:2:"el";s:9:"lungereza";s:2:"en";s:13:"lingɛlɛ́sa";s:2:"en";s:16:"lea fakapālangi";s:2:"en";s:13:"linglänapük";s:2:"en";s:24:"lingɛlɛ́sa ya kanadá";s:5:"en-ca";s:24:"lea fakapālangi-kānata";s:5:"en-ca";s:33:"lingɛlɛ́sa ya ingɛlɛ́tɛlɛ";s:5:"en-gb";s:22:"lielbritānijas angļu";s:5:"en-gb";s:18:"lea fakapilitānia";s:5:"en-gb";s:21:"lea fakaʻesipulanito";s:2:"eo";s:9:"lusipanya";s:2:"es";s:9:"lisipanye";s:2:"es";s:17:"lea fakasipēnisi";s:2:"es";s:19:"lea fakaʻesitōnia";s:2:"et";s:15:"lea fakapāsiki";s:2:"eu";s:23:"lea fakaʻekisitematula";s:3:"ext";s:8:"luperusi";s:2:"fa";s:12:"lipelésanɛ";s:2:"fa";s:14:"lea fakapēsia";s:2:"fa";s:13:"lea fakafulā";s:2:"ff";s:16:"lea fakafinilani";s:2:"fi";s:26:"lea fakafinilani-tōnetale";s:3:"fit";s:12:"lea fakafisi";s:2:"fj";s:13:"lea fakafaloe";s:2:"fo";s:9:"lufalansa";s:2:"fr";s:12:"lifalansɛ́";s:2:"fr";s:17:"lea fakafalanisē";s:2:"fr";s:24:"lea fakafalanisē-kasuni";s:3:"frc";s:18:"lea fakaʻāpitano";s:3:"frp";s:23:"lea fakafilisia-tokelau";s:3:"frr";s:17:"lea fakafulilāni";s:3:"fur";s:13:"läänefriisi";s:2:"fy";s:12:"länsifriisi";s:2:"fy";s:22:"lea fakafilisia-hihifo";s:2:"fy";s:16:"lea fakaʻaelani";s:2:"ga";s:15:"lea fakakakausi";s:3:"gag";s:19:"lea fakasiaina-kani";s:3:"gan";s:15:"lea fakakaeliki";s:2:"gd";s:15:"lea fakakalisia";s:2:"gl";s:14:"lea fakakilaki";s:3:"glk";s:15:"lea fakakualani";s:2:"gn";s:14:"lea fakakotika";s:3:"got";s:19:"lea fakakalisimuʻa";s:3:"grc";s:11:"lialemaniki";s:3:"gsw";s:25:"lea fakasiamane-suisilani";s:3:"gsw";s:16:"lea fakakutalati";s:2:"gu";s:16:"lea fakamangikī";s:2:"gv";s:8:"luhawuza";s:2:"ha";s:13:"lea fakahausa";s:2:"ha";s:19:"lea fakasiaina-haka";s:3:"hak";s:16:"lea fakahauaiʻi";s:3:"haw";s:9:"liébeleo";s:2:"he";s:15:"lea fakahepelū";s:2:"he";s:7:"luhindu";s:2:"hi";s:7:"lihindi";s:2:"hi";s:15:"lea fakahinitī";s:2:"hi";s:20:"lea fakahihitī-fisi";s:3:"hif";s:19:"lea fakahilikainoni";s:3:"hil";s:17:"lea fakahili-motu";s:2:"ho";s:16:"lea fakakuloisia";s:2:"hr";s:19:"lea fakasōpia-hake";s:3:"hsb";s:13:"lea fakahaiti";s:2:"ht";s:9:"luhangare";s:2:"hu";s:8:"liongili";s:2:"hu";s:18:"lea fakahungakalia";s:2:"hu";s:17:"lea fakaʻāmenia";s:2:"hy";s:14:"lea fakahelelo";s:2:"hz";s:18:"lea fakavahaʻalea";s:2:"ia";s:12:"luyindonezya";s:2:"id";s:9:"lindonezi";s:2:"id";s:21:"lea fakaʻinitōnesia";s:2:"id";s:18:"lugha ya kisayansi";s:2:"ie";s:23:"lea fakavahaʻalingikē";s:2:"ie";s:6:"luyibo";s:2:"ig";s:16:"lea fakaʻikipō";s:2:"ig";s:19:"lea fakasisiuani-ī";s:2:"ii";s:18:"lea fakaʻinupiaki";s:2:"ik";s:15:"lea fakaʻiloko";s:3:"ilo";s:16:"lea fakaʻingusi";s:3:"inh";s:13:"lea fakaʻito";s:2:"io";s:18:"lea fakaʻaisilani";s:2:"is";s:8:"luyitale";s:2:"it";s:9:"litaliano";s:2:"it";s:16:"lea fakaʻītali";s:2:"it";s:21:"lea fakaʻinuketituti";s:2:"iu";s:8:"lujapani";s:2:"ja";s:7:"lizapɔ";s:2:"ja";s:15:"lea fakasiapani";s:2:"ja";s:24:"lea fakapālangi-samaika";s:3:"jam";s:6:"lojban";s:3:"jbo";s:12:"loğban dili";s:3:"jbo";s:7:"lojbani";s:3:"jbo";s:10:"lojbanisch";s:3:"jbo";s:10:"lodschbahn";s:3:"jbo";s:6:"loiban";s:3:"jbo";s:8:"ložbans";s:3:"jbo";s:16:"lea fakalosipani";s:3:"jbo";s:18:"lea fakaʻiutilani";s:3:"jut";s:10:"lunnajjava";s:2:"jv";s:6:"lizava";s:2:"jv";s:12:"lea fakasava";s:2:"jv";s:15:"lea fakaseōsia";s:2:"ka";s:21:"lea fakakala-kalipaki";s:3:"kaa";s:14:"lea fakakapile";s:3:"kab";s:18:"lea fakakapālitia";s:3:"kbd";s:16:"lea fakakongikō";s:2:"kg";s:14:"lea fakakouali";s:3:"khw";s:14:"lea fakakikuiu";s:2:"ki";s:21:"lea fakakilimanisikī";s:3:"kiu";s:16:"lea fakakuaniama";s:2:"kj";s:14:"lea fakakasaki";s:2:"kk";s:21:"lea fakakalaʻalisuti";s:2:"kl";s:5:"lukme";s:2:"km";s:10:"likambodza";s:2:"km";s:18:"lea fakakamipōtia";s:2:"km";s:14:"lea fakakanata";s:2:"kn";s:8:"lukoreya";s:2:"ko";s:8:"likoreya";s:2:"ko";s:14:"lea fakakōlea";s:2:"ko";s:22:"lea fakakomi-pelemiaki";s:3:"koi";s:14:"lea fakakanuli";s:2:"kr";s:23:"lea fakakalate-palakili";s:3:"krc";s:13:"lea fakakilio";s:3:"kri";s:17:"lea fakakinaraiā";s:3:"krj";s:17:"lea fakakāsimila";s:2:"ks";s:16:"lea fakakolongia";s:3:"ksh";s:15:"lea fakakulitī";s:2:"ku";s:12:"lea fakakomi";s:2:"kv";s:16:"lea fakakoniuali";s:2:"kw";s:15:"lea fakakīsisi";s:2:"ky";s:6:"latina";s:2:"la";s:5:"latyn";s:2:"la";s:7:"llatín";s:2:"la";s:6:"latın";s:2:"la";s:5:"latin";s:2:"la";s:8:"latinski";s:2:"la";s:6:"llatí";s:2:"la";s:6:"lladin";s:2:"la";s:6:"latein";s:2:"la";s:6:"latino";s:2:"la";s:6:"latín";s:2:"la";s:6:"ladina";s:2:"la";s:6:"laidin";s:2:"la";s:8:"laideann";s:2:"la";s:6:"latiin";s:2:"la";s:7:"lākina";s:2:"la";s:7:"latína";s:2:"la";s:12:"latiinerisut";s:2:"la";s:11:"lateijnesch";s:2:"la";s:7:"latäin";s:2:"la";s:7:"lotynų";s:2:"la";s:8:"latīņu";s:2:"la";s:9:"latiensch";s:2:"la";s:6:"latijn";s:2:"la";s:5:"latim";s:2:"la";s:7:"latină";s:2:"la";s:13:"láhtengiella";s:2:"la";s:10:"latinčina";s:2:"la";s:12:"latinščina";s:2:"la";s:7:"laatiin";s:2:"la";s:9:"latinisht";s:2:"la";s:14:"lea fakalatina";s:2:"la";s:7:"latince";s:2:"la";s:8:"lotincha";s:2:"la";s:6:"ladino";s:3:"lad";s:10:"ladin dili";s:3:"lad";s:5:"ladí";s:3:"lad";s:11:"ladinština";s:3:"lad";s:7:"ladiino";s:3:"lad";s:5:"ladin";s:3:"lad";s:9:"laidínis";s:3:"lad";s:9:"ladínska";s:3:"lad";s:7:"ladinsk";s:3:"lad";s:9:"ladiensch";s:3:"lad";s:9:"ladyński";s:3:"lad";s:12:"ladinščina";s:3:"lad";s:14:"lea fakalatino";s:3:"lad";s:15:"lëtzebuergesch";s:2:"lb";s:10:"luxemburgs";s:2:"lb";s:13:"luxemburgués";s:2:"lb";s:11:"lüksemburq";s:2:"lb";s:13:"luksembourgeg";s:2:"lb";s:13:"luksemburški";s:2:"lb";s:13:"luxemburguès";s:2:"lb";s:14:"lucemburština";s:2:"lb";s:12:"lwcsembwrgeg";s:2:"lb";s:12:"luxembourgsk";s:2:"lb";s:13:"luxemburgisch";s:2:"lb";s:16:"luxemburgšćina";s:2:"lb";s:13:"laksembɔggbe";s:2:"lb";s:13:"luxembourgish";s:2:"lb";s:11:"luksemburga";s:2:"lb";s:10:"letseburgi";s:2:"lb";s:12:"luxenburgera";s:2:"lb";s:9:"luxemburg";s:2:"lb";s:13:"luxemburgiskt";s:2:"lb";s:14:"luxembourgeois";s:2:"lb";s:14:"lussemburghês";s:2:"lb";s:13:"lucsambuirgis";s:2:"lb";s:13:"lugsamburgais";s:2:"lb";s:10:"luxemburgi";s:2:"lb";s:10:"luksemburg";s:2:"lb";s:15:"lúxemborgíska";s:2:"lb";s:14:"lussemburghese";s:2:"lb";s:13:"luxemborjesch";s:2:"lb";s:18:"liuksemburgiečių";s:2:"lb";s:15:"luksemburgiešu";s:2:"lb";s:10:"luxembourg";s:2:"lb";s:12:"letżburgiż";s:2:"lb";s:11:"luxemburgsk";s:2:"lb";s:12:"luxemborgsch";s:2:"lb";s:12:"luksemburski";s:2:"lb";s:13:"luxemburguês";s:2:"lb";s:17:"luxemburgues simi";s:2:"lb";s:12:"luxemburgais";s:2:"lb";s:14:"luxemburgheză";s:2:"lb";s:17:"luxemburggagiella";s:2:"lb";s:13:"luxemburčina";s:2:"lb";s:16:"luksemburščina";s:2:"lb";s:13:"luksemburgase";s:2:"lb";s:13:"luxemburgiska";s:2:"lb";s:20:"lea fakalakisimipeki";s:2:"lb";s:13:"lüksemburgca";s:2:"lb";s:14:"lyuksemburgcha";s:2:"lb";s:9:"lezghianu";s:3:"lez";s:11:"ləzqi dili";s:3:"lez";s:5:"lezgi";s:3:"lez";s:7:"lezgian";s:3:"lez";s:8:"lesguià";s:3:"lez";s:12:"lezginština";s:3:"lez";s:7:"lezgheg";s:3:"lez";s:8:"lezghian";s:3:"lez";s:8:"lesgisch";s:3:"lez";s:10:"lezghiagbe";s:3:"lez";s:8:"lezgiano";s:3:"lez";s:5:"lesgi";s:3:"lez";s:8:"lezghien";s:3:"lez";s:7:"lezgysk";s:3:"lez";s:9:"lezgiški";s:3:"lez";s:4:"lezg";s:3:"lez";s:7:"lezghia";s:3:"lez";s:9:"lesgíska";s:3:"lez";s:8:"lesgesch";s:3:"lez";s:8:"lezginų";s:3:"lez";s:8:"lezgīnu";s:3:"lez";s:8:"leżgjan";s:3:"lez";s:8:"lezgisch";s:3:"lez";s:9:"lezgijski";s:3:"lez";s:9:"lezghiano";s:3:"lez";s:11:"lezginčina";s:3:"lez";s:13:"lezginščina";s:3:"lez";s:15:"lea fakalesikia";s:3:"lez";s:7:"lezgice";s:3:"lez";s:18:"lingua franca nova";s:3:"lfn";s:23:"lea fakakavakava-foʻou";s:3:"lfn";s:7:"luganda";s:2:"lg";s:9:"lugandais";s:2:"lg";s:14:"lea fakakanita";s:2:"lg";s:8:"limburgs";s:2:"li";s:11:"limburgués";s:2:"li";s:15:"limburqiş dili";s:2:"li";s:10:"limbourgeg";s:2:"li";s:10:"limburgiš";s:2:"li";s:11:"limburguès";s:2:"li";s:12:"limburština";s:2:"li";s:9:"limbwrgeg";s:2:"li";s:9:"limburgsk";s:2:"li";s:11:"limburgisch";s:2:"li";s:13:"limburšćina";s:2:"li";s:10:"limburgish";s:2:"li";s:8:"limburgi";s:2:"li";s:7:"limburg";s:2:"li";s:12:"limbourgeois";s:2:"li";s:11:"limburghês";s:2:"li";s:9:"limburgia";s:2:"li";s:13:"limbúrgíska";s:2:"li";s:10:"limburgese";s:2:"li";s:11:"limburgesch";s:2:"li";s:12:"limburgiešu";s:2:"li";s:10:"limburgisk";s:2:"li";s:10:"limborgsch";s:2:"li";s:12:"limburgijski";s:2:"li";s:11:"limburguês";s:2:"li";s:10:"limburgais";s:2:"li";s:12:"limburgheză";s:2:"li";s:11:"limburčina";s:2:"li";s:13:"limburščina";s:2:"li";s:11:"limburgiska";s:2:"li";s:19:"lea fakalimipūliki";s:2:"li";s:9:"limburgca";s:2:"li";s:6:"ligure";s:3:"lij";s:9:"ligurianu";s:3:"lij";s:8:"ligurieg";s:3:"lij";s:11:"ligurština";s:3:"lij";s:9:"ligurisch";s:3:"lij";s:8:"ligurian";s:3:"lij";s:7:"liguuri";s:3:"lij";s:10:"liogúiris";s:3:"lij";s:10:"liogùrais";s:3:"lij";s:7:"liguria";s:3:"lij";s:9:"liguresch";s:3:"lij";s:8:"ligūrų";s:3:"lij";s:10:"liguryjski";s:3:"lij";s:9:"liguriska";s:3:"lij";s:15:"lea fakalikulia";s:3:"lij";s:7:"ligurca";s:3:"lij";s:12:"līvõ kēļ";s:3:"liv";s:9:"livonianu";s:3:"liv";s:11:"livonština";s:3:"liv";s:7:"livisch";s:3:"liv";s:8:"livonian";s:3:"liv";s:5:"liivi";s:3:"liv";s:8:"livonien";s:3:"liv";s:10:"liovóinis";s:3:"liv";s:6:"livone";s:3:"liv";s:7:"livesch";s:3:"liv";s:6:"lyvių";s:3:"liv";s:5:"lijfs";s:3:"liv";s:6:"liwski";s:3:"liv";s:9:"livoniska";s:3:"liv";s:15:"lea fakalivonia";s:3:"liv";s:7:"livonca";s:3:"liv";s:8:"lumbaart";s:3:"lmo";s:8:"lombardu";s:3:"lmo";s:13:"lombardština";s:3:"lmo";s:9:"lombardeg";s:3:"lmo";s:11:"lombardisch";s:3:"lmo";s:7:"lombard";s:3:"lmo";s:8:"lombardi";s:3:"lmo";s:10:"lombairdis";s:3:"lmo";s:10:"lombardais";s:3:"lmo";s:8:"lombardo";s:3:"lmo";s:11:"lombardesch";s:3:"lmo";s:9:"lombardų";s:3:"lmo";s:10:"lombardzki";s:3:"lmo";s:11:"lombardiska";s:3:"lmo";s:17:"lea fakalomipāti";s:3:"lmo";s:10:"lombardça";s:3:"lmo";s:8:"lingála";s:2:"ln";s:8:"lingaals";s:2:"ln";s:7:"lingala";s:2:"ln";s:7:"linqala";s:2:"ln";s:12:"lingalština";s:2:"ln";s:11:"liongáilis";s:2:"ln";s:9:"lingjalla";s:2:"ln";s:9:"lingaljan";s:2:"ln";s:11:"lingalčina";s:2:"ln";s:10:"lingalisht";s:2:"ln";s:13:"lea lingikala";s:2:"ln";s:9:"lingalcha";s:2:"ln";s:3:"lao";s:2:"lo";s:8:"laosianu";s:2:"lo";s:4:"laos";s:2:"lo";s:6:"laoseg";s:2:"lo";s:7:"laoški";s:2:"lo";s:7:"laosià";s:2:"lo";s:9:"laoština";s:2:"lo";s:5:"laoeg";s:2:"lo";s:8:"laotisch";s:2:"lo";s:10:"laošćina";s:2:"lo";s:6:"laogbe";s:2:"lo";s:5:"laŭa";s:2:"lo";s:8:"laosiano";s:2:"lo";s:7:"laosera";s:2:"lo";s:8:"laotiskt";s:2:"lo";s:10:"laotiaansk";s:2:"lo";s:7:"laoisis";s:2:"lo";s:6:"làtho";s:2:"lo";s:8:"laotiano";s:2:"lo";s:8:"laozisch";s:2:"lo";s:8:"laothian";s:2:"lo";s:6:"laoski";s:2:"lo";s:6:"laoszi";s:2:"lo";s:4:"laó";s:2:"lo";s:10:"lahootesch";s:2:"lo";s:8:"laotesch";s:2:"lo";s:11:"laosiečių";s:2:"lo";s:9:"laosiešu";s:2:"lo";s:7:"laotisk";s:2:"lo";s:8:"laootsch";s:2:"lo";s:9:"laotiaans";s:2:"lo";s:10:"laotański";s:2:"lo";s:8:"lao simi";s:2:"lo";s:4:"laot";s:2:"lo";s:10:"laoțiană";s:2:"lo";s:9:"laogiella";s:2:"lo";s:10:"laoščina";s:2:"lo";s:8:"laosisht";s:2:"lo";s:8:"laotiska";s:2:"lo";s:11:"lea fakalau";s:2:"lo";s:5:"laoca";s:2:"lo";s:7:"laoscha";s:2:"lo";s:4:"lozi";s:3:"loz";s:9:"lozi dili";s:3:"loz";s:9:"lozština";s:3:"loz";s:7:"loziera";s:3:"loz";s:4:"lozu";s:3:"loz";s:5:"lożi";s:3:"loz";s:12:"lea fakalosi";s:3:"loz";s:9:"lietuvių";s:2:"lt";s:6:"litaus";s:2:"lt";s:7:"lituanu";s:2:"lt";s:5:"litva";s:2:"lt";s:8:"lituaneg";s:2:"lt";s:9:"litvanski";s:2:"lt";s:6:"lituà";s:2:"lt";s:11:"litevština";s:2:"lt";s:9:"lithwaneg";s:2:"lt";s:8:"litauisk";s:2:"lt";s:9:"litauisch";s:2:"lt";s:12:"litawšćina";s:2:"lt";s:12:"lithuaniagbe";s:2:"lt";s:10:"lithuanian";s:2:"lt";s:6:"litova";s:2:"lt";s:7:"lituano";s:2:"lt";s:5:"leedu";s:2:"lt";s:10:"lituaniera";s:2:"lt";s:7:"liettua";s:2:"lt";s:8:"litavskt";s:2:"lt";s:9:"lituanien";s:2:"lt";s:6:"lituan";s:2:"lt";s:7:"litouws";s:2:"lt";s:11:"liotuáinis";s:2:"lt";s:10:"liotuainis";s:2:"lt";s:13:"lituweniyanci";s:2:"lt";s:8:"litavski";s:2:"lt";s:7:"litván";s:2:"lt";s:8:"lithuano";s:2:"lt";s:7:"lituavi";s:2:"lt";s:11:"litháíska";s:2:"lt";s:14:"litauenimiutut";s:2:"lt";s:10:"littouesch";s:2:"lt";s:9:"litauesch";s:2:"lt";s:11:"lietuviešu";s:2:"lt";s:9:"lithuania";s:2:"lt";s:9:"litwanjan";s:2:"lt";s:8:"litausch";s:2:"lt";s:8:"litewski";s:2:"lt";s:12:"lituano simi";s:2:"lt";s:11:"lituaniană";s:2:"lt";s:14:"liettuvagiella";s:2:"lt";s:10:"litovčina";s:2:"lt";s:12:"litovščina";s:2:"lt";s:11:"lituwaanays";s:2:"lt";s:10:"lituanisht";s:2:"lt";s:9:"litauiska";s:2:"lt";s:16:"lea fakalituania";s:2:"lt";s:10:"litvanyaca";s:2:"lt";s:8:"litovcha";s:2:"lt";s:8:"latgaļu";s:3:"ltg";s:10:"latgalianu";s:3:"ltg";s:12:"latgalština";s:3:"ltg";s:9:"latgalieg";s:3:"ltg";s:12:"lettgallisch";s:3:"ltg";s:9:"latgalian";s:3:"ltg";s:8:"latgalli";s:3:"ltg";s:9:"latgalien";s:3:"ltg";s:8:"letgallo";s:3:"ltg";s:12:"lettgallesch";s:3:"ltg";s:9:"latgalių";s:3:"ltg";s:8:"letgaals";s:3:"ltg";s:12:"lettgalliska";s:3:"ltg";s:16:"lea fakalatakale";s:3:"ltg";s:8:"lushayca";s:3:"lus";s:6:"lushai";s:3:"lus";s:6:"lušai";s:3:"lus";s:8:"lwshaieg";s:3:"lus";s:14:"lushai-sprache";s:3:"lus";s:6:"lušei";s:3:"lus";s:5:"lusai";s:3:"lus";s:16:"lushai-schpraach";s:3:"lus";s:7:"lúsaí";s:3:"lus";s:14:"lushai-sprooch";s:3:"lus";s:7:"lušeju";s:3:"lus";s:5:"luxaj";s:3:"lus";s:6:"lusahi";s:3:"lus";s:12:"lea fakamiso";s:3:"lus";s:9:"latviešu";s:2:"lv";s:7:"letties";s:2:"lv";s:6:"letón";s:2:"lv";s:7:"latış";s:2:"lv";s:7:"latvieg";s:2:"lv";s:8:"letonski";s:2:"lv";s:5:"letó";s:2:"lv";s:10:"lotyština";s:2:"lv";s:7:"latfieg";s:2:"lv";s:7:"lettisk";s:2:"lv";s:8:"lettisch";s:2:"lv";s:11:"letišćina";s:2:"lv";s:9:"latviagbe";s:2:"lv";s:7:"latvian";s:2:"lv";s:5:"latva";s:2:"lv";s:5:"läti";s:2:"lv";s:9:"letoniera";s:2:"lv";s:6:"latvia";s:2:"lv";s:8:"latviskt";s:2:"lv";s:6:"letton";s:2:"lv";s:5:"leton";s:2:"lv";s:8:"letlâns";s:2:"lv";s:7:"laitvis";s:2:"lv";s:9:"laitbheis";s:2:"lv";s:10:"latbiyanci";s:2:"lv";s:9:"latvijski";s:2:"lv";s:4:"lett";s:2:"lv";s:5:"latvi";s:2:"lv";s:9:"lettneska";s:2:"lv";s:7:"lettone";s:2:"lv";s:14:"letlandimiutut";s:2:"lv";s:9:"lättesch";s:2:"lv";s:8:"lettesch";s:2:"lv";s:7:"latvių";s:2:"lv";s:7:"latvjan";s:2:"lv";s:7:"latvisk";s:2:"lv";s:7:"lettsch";s:2:"lv";s:4:"lets";s:2:"lv";s:6:"letão";s:2:"lv";s:10:"leton simi";s:2:"lv";s:7:"letonă";s:2:"lv";s:13:"látviagiella";s:2:"lv";s:13:"latvijščina";s:2:"lv";s:10:"laatfiyaan";s:2:"lv";s:9:"letonisht";s:2:"lv";s:8:"lettiska";s:2:"lv";s:15:"lea fakalativia";s:2:"lv";s:7:"letonca";s:2:"lv";s:9:"latishcha";s:2:"lv";s:16:"literary chinese";s:3:"lzh";s:24:"lea fakasiaina-faʻutohi";s:3:"lzh";s:6:"lazuri";s:3:"lzz";s:3:"laz";s:3:"lzz";s:9:"lazština";s:3:"lzz";s:7:"lasisch";s:3:"lzz";s:4:"lazi";s:3:"lzz";s:4:"laze";s:3:"lzz";s:15:"lasesch sprooch";s:3:"lzz";s:7:"lazisch";s:3:"lzz";s:8:"lazyjski";s:3:"lzz";s:12:"lea fakalasu";s:3:"lzz";s:5:"lazca";s:3:"lzz";s:15:"lea fakamaitili";s:3:"mai";s:16:"lea fakamokisiā";s:3:"mdf";s:16:"lea fakamalakasi";s:2:"mg";s:15:"lea fakamāsolo";s:2:"mh";s:13:"lea fakamauli";s:2:"mi";s:20:"lea fakaminangikapau";s:3:"min";s:18:"lea fakamasitōnia";s:2:"mk";s:28:"lea fakaʻinitia-malāialami";s:2:"ml";s:19:"lea fakamongokōlia";s:2:"mn";s:14:"lea fakamalati";s:2:"mr";s:19:"lea fakamali-hihifo";s:3:"mrj";s:8:"lumalayi";s:2:"ms";s:8:"limalezi";s:2:"ms";s:13:"lea fakamalei";s:2:"ms";s:14:"lea fakamolota";s:2:"mt";s:14:"lea fakakileki";s:3:"mus";s:19:"lea fakamilanitēsi";s:3:"mwl";s:7:"lubbama";s:2:"my";s:9:"libilimá";s:2:"my";s:12:"lea fakapema";s:2:"my";s:16:"lea fakaʻelisia";s:3:"myv";s:20:"lea fakamasanitelani";s:3:"mzn";s:13:"lea fakanaulu";s:2:"na";s:23:"lea fakasiaina-mininani";s:3:"nan";s:18:"lea fakanapoletano";s:3:"nap";s:23:"lea fakanouaē-pokimali";s:2:"nb";s:10:"low german";s:3:"nds";s:9:"laagduits";s:3:"nds";s:25:"lágþýska; lágsaxneska";s:3:"nds";s:10:"lejasvācu";s:3:"nds";s:7:"lavtysk";s:3:"nds";s:8:"lågtysk";s:3:"nds";s:9:"lågtyska";s:3:"nds";s:20:"lea fakasiamane-hifo";s:3:"nds";s:23:"low saxon (netherlands)";s:6:"nds-nl";s:8:"lunepali";s:2:"ne";s:9:"linepalɛ";s:2:"ne";s:14:"lea fakanepali";s:2:"ne";s:14:"lea fakaneuali";s:3:"new";s:18:"lea fakanetongikā";s:2:"ng";s:13:"lea fakaniuē";s:3:"niu";s:9:"luholandi";s:2:"nl";s:9:"lifalamá";s:2:"nl";s:15:"lea fakahōlani";s:2:"nl";s:23:"lea fakanoauē-ninosiki";s:2:"nn";s:13:"lea fakanouē";s:2:"no";s:15:"lea fakanoviale";s:3:"nov";s:19:"leasotais thuathach";s:3:"nso";s:20:"lea fakasoto-tokelau";s:3:"nso";s:14:"lea fakanavaho";s:2:"nv";s:15:"lea fakanianisa";s:2:"ny";s:17:"lea fakaʻokitane";s:2:"oc";s:15:"lea fakaʻolomo";s:2:"om";s:25:"lea fakaʻinitia-ʻolāea";s:2:"or";s:17:"lea fakaʻosetiki";s:2:"os";s:9:"lupunjabi";s:2:"pa";s:10:"lipendzabi";s:2:"pa";s:17:"lea fakapūnusapi";s:2:"pa";s:19:"lea fakapangasinani";s:3:"pag";s:17:"lea fakapamipanga";s:3:"pam";s:20:"lea fakapapiamēnito";s:3:"pap";s:15:"lea fakapikāti";s:3:"pcd";s:29:"lea fakasiamane-penisilivania";s:3:"pdc";s:24:"lea fakasiamane-lafalafa";s:3:"pdt";s:24:"lea fakasiamane-palatine";s:3:"pfl";s:13:"lea fakapāli";s:2:"pi";s:7:"lengyel";s:2:"pl";s:9:"lupolandi";s:2:"pl";s:9:"lipolonɛ";s:2:"pl";s:6:"lenkų";s:2:"pl";s:15:"lea fakapōlani";s:2:"pl";s:6:"lehçe";s:2:"pl";s:17:"lea fakapiemonite";s:3:"pms";s:16:"lea fakaponitiki";s:3:"pnt";s:16:"lea fakapulūsia";s:3:"prg";s:15:"lea fakapasitō";s:2:"ps";s:11:"lupotugiizi";s:2:"pt";s:15:"lipulutugɛ́si";s:2:"pt";s:16:"lea fakapotukali";s:2:"pt";s:25:"lipulutugɛ́si ya brazil";s:5:"pt-br";s:26:"lea fakapotukali-palāsili";s:5:"pt-br";s:15:"lea fakakuetisa";s:2:"qu";s:26:"lea fakakuitisa-simipolaso";s:3:"qug";s:17:"lea fakaromaniolo";s:3:"rgn";s:12:"lea fakalifi";s:3:"rif";s:9:"liromansh";s:2:"rm";s:22:"lea fakalaito-lomēnia";s:2:"rm";s:15:"lea fakaluaniti";s:2:"rn";s:10:"lulomaniya";s:2:"ro";s:8:"liromani";s:2:"ro";s:16:"lea fakalōmenia";s:2:"ro";s:6:"lūkia";s:2:"ru";s:6:"lulasa";s:2:"ru";s:7:"lirisí";s:2:"ru";s:14:"lea fakalūsia";s:2:"ru";s:14:"lea fakalusini";s:3:"rue";s:18:"lea fakaʻalomania";s:3:"rup";s:10:"lunarwanda";s:2:"rw";s:20:"lea fakakiniāuanita";s:2:"rw";s:20:"lea fakasanisukuliti";s:2:"sa";s:12:"lea fakasaka";s:3:"sah";s:16:"lea fakasanitali";s:3:"sat";s:18:"lea fakasaletīnia";s:2:"sc";s:16:"lea fakasisīlia";s:3:"scn";s:18:"lea fakasikotilani";s:3:"sco";s:15:"lea fakasīniti";s:2:"sd";s:27:"lea fakasaletīnia-sasalesu";s:3:"sdc";s:10:"lapšćina";s:2:"se";s:20:"lapoński północny";s:2:"se";s:20:"lea fakasami-tokelau";s:2:"se";s:12:"lea fakaseli";s:3:"sei";s:16:"lea fakasangikō";s:2:"sg";s:17:"lea fakasamositia";s:3:"sgs";s:23:"lea fakakuloisia-sēpia";s:2:"sh";s:18:"lea fakataselihiti";s:3:"shi";s:17:"lea fakasingihala";s:2:"si";s:17:"lea fakasolāvaki";s:2:"sk";s:17:"lea fakasolovenia";s:2:"sl";s:14:"lower silesian";s:3:"sli";s:13:"lågsilesiska";s:3:"sli";s:20:"lea fakasilesia-hifo";s:3:"sli";s:16:"lea fakahaʻamoa";s:2:"sm";s:11:"lõunasaami";s:3:"sma";s:21:"lapoński południowy";s:3:"sma";s:16:"lullisámegiella";s:3:"sma";s:18:"lea fakasami-tonga";s:3:"sma";s:13:"lea fakasiona";s:2:"sn";s:10:"lusomaliya";s:2:"so";s:8:"lisomali";s:2:"so";s:14:"lea fakasomali";s:2:"so";s:19:"lea fakaʻalapēnia";s:2:"sq";s:14:"lea fakasēpia";s:2:"sr";s:25:"lea fakasuranane-tongikō";s:3:"srn";s:17:"lea fakasuasilani";s:2:"ss";s:11:"lõunasotho";s:2:"st";s:18:"leasotach dheasach";s:2:"st";s:18:"lea fakasoto-tonga";s:2:"st";s:25:"lea fakafilisia-satēlani";s:3:"stq";s:15:"lea fakasunitā";s:2:"su";s:9:"luswideni";s:2:"sv";s:9:"lisuwedɛ";s:2:"sv";s:16:"lea fakasuēteni";s:2:"sv";s:15:"lea fakasuahili";s:2:"sw";s:15:"lea fakasilesia";s:3:"szl";s:9:"lutamiiru";s:2:"ta";s:8:"litamuli";s:2:"ta";s:18:"తమిళము";s:2:"ta";s:14:"lea fakatamili";s:2:"ta";s:12:"తుళు";s:3:"tcy";s:12:"lea fakatulu";s:3:"tcy";s:18:"తెలుగు";s:2:"te";s:23:"lea fakaʻinitia-teluku";s:2:"te";s:14:"lea fakatetumu";s:3:"tet";s:15:"తజిక్";s:2:"tg";s:15:"lea fakatāsiki";s:2:"tg";s:8:"luttaayi";s:2:"th";s:6:"litaye";s:2:"th";s:15:"lea fakatailani";s:2:"th";s:30:"తిగ్రిన్యా";s:2:"ti";s:17:"lea fakatikilinia";s:2:"ti";s:13:"lammii turkii";s:2:"tk";s:27:"తుర్కమెన్";s:2:"tk";s:17:"lea fakatēkimeni";s:2:"tk";s:18:"తగలోగ్";s:2:"tl";s:17:"lea fakatakāloka";s:2:"tl";s:14:"lea fakatalisi";s:3:"tly";s:9:"lea suana";s:2:"tn";s:14:"lea faka-tonga";s:2:"to";s:13:"lea fakatonga";s:2:"to";s:19:"lea fakatoki-pisini";s:3:"tpi";s:6:"lutake";s:2:"tr";s:8:"litiliki";s:2:"tr";s:13:"lea fakatoake";s:2:"tr";s:14:"lea fakatuloio";s:3:"tru";s:15:"lea fakatisonga";s:2:"ts";s:14:"lea fakatatale";s:2:"tt";s:16:"lea fakatumepuka";s:3:"tum";s:14:"lea fakatusuī";s:2:"tw";s:24:"తహితియన్";s:2:"ty";s:14:"lea fakatahiti";s:2:"ty";s:16:"lea fakatuvīnia";s:3:"tyv";s:34:"lea fakatamasaiti-ʻatilasi-loloto";s:3:"tzm";s:19:"lea fakaʻutimuliti";s:3:"udm";s:17:"lea fakaʻuikūli";s:2:"ug";s:12:"luyukurayine";s:2:"uk";s:8:"likrɛni";s:2:"uk";s:21:"lea fakaʻūkalaʻine";s:2:"uk";s:8:"lu-urudu";s:2:"ur";s:6:"liurdu";s:2:"ur";s:15:"lea fakaʻūtū";s:2:"ur";s:17:"lea fakaʻusipeki";s:2:"uz";s:15:"lea fakavenitā";s:2:"ve";s:16:"lea fakavenēsia";s:3:"vec";s:14:"lea fakavepisi";s:3:"vep";s:12:"luvyetinaamu";s:2:"vi";s:13:"liviyetinámi";s:2:"vi";s:17:"lea fakavietinami";s:2:"vi";s:12:"länsiflaami";s:3:"vls";s:24:"lea fakavelamingi-hihifo";s:3:"vls";s:25:"lea fakafalanikoni-loloto";s:3:"vmf";s:16:"lea fakavolapiki";s:2:"vo";s:14:"lea fakavotiki";s:3:"vot";s:13:"lea fakavōlo";s:3:"vro";s:17:"lea fakaʻualonia";s:2:"wa";s:15:"lea fakaʻualai";s:3:"war";s:16:"lea fakaʻuolofo";s:2:"wo";s:18:"lea fakasiaina-uū";s:3:"wuu";s:16:"lea fakakalimiki";s:3:"xal";s:13:"lea fakatōsa";s:2:"xh";s:18:"lea fakamingilelia";s:3:"xmf";s:14:"lea fakaītisi";s:2:"yi";s:8:"luyoruba";s:2:"yo";s:17:"lea fakaʻiōlupa";s:2:"yo";s:19:"lea fakakuangitongi";s:3:"yue";s:14:"lea fakasuangi";s:2:"za";s:15:"lea fakasēlani";s:3:"zea";s:8:"lucayina";s:2:"zh";s:7:"lisinwa";s:2:"zh";s:14:"lea fakasiaina";s:2:"zh";s:28:"lea fakasiaina-fakafaingofua";s:7:"zh-hans";s:27:"lea fakasiaina-tukufakaholo";s:7:"zh-hant";s:7:"luzzulu";s:2:"zu";s:12:"lea fakasulu";s:2:"zu";s:15:"lea fakaʻakoli";s:3:"ach";s:17:"lea fakaʻakihemi";s:3:"agq";s:26:"lea fakaʻalepea (māmani)";s:6:"ar-001";s:13:"lea fakaʻasu";s:3:"asa";s:15:"lea fakapēmipa";s:3:"bem";s:12:"lea fakapena";s:3:"bez";s:13:"lea fakapōto";s:3:"brx";s:12:"lea fakakika";s:3:"cgg";s:16:"lea fakakopitika";s:3:"cop";s:13:"lea fakataita";s:3:"dav";s:15:"lea fakatisāma";s:3:"dje";s:13:"lea fakatuala";s:3:"dua";s:18:"lea fakaiola-fonī";s:3:"dyo";s:16:"lea fakaʻemipū";s:3:"ebu";s:15:"lea fakaʻefiki";s:3:"efi";s:22:"lea fakaʻisipitemuʻa";s:3:"egy";s:17:"lea fakafilipaini";s:3:"fil";s:11:"lea fakakā";s:3:"gaa";s:13:"lea fakakusī";s:3:"guz";s:14:"lea fakahitite";s:3:"hit";s:17:"lea fakanikōmipa";s:3:"jgo";s:14:"lea fakamasame";s:3:"jmc";s:14:"lea fakakamipa";s:3:"kam";s:17:"lea fakamakōnite";s:3:"kde";s:21:"lea fakakapuvelitianu";s:3:"kea";s:19:"lea fakakoila-sīni";s:3:"khq";s:18:"lea fakakalenisini";s:3:"kln";s:17:"lea fakakonikanī";s:3:"kok";s:14:"lea fakakuluki";s:3:"kru";s:17:"lea fakasiamipala";s:3:"ksb";s:13:"lea fakapafia";s:3:"ksf";s:5:"langi";s:3:"lag";s:8:"langiera";s:3:"lag";s:5:"lango";s:3:"lag";s:6:"langí";s:3:"lag";s:13:"langijščina";s:3:"lag";s:8:"langisht";s:3:"lag";s:13:"lea fakalangi";s:3:"lag";s:7:"langcha";s:3:"lag";s:6:"lakota";s:3:"lkt";s:11:"lakotština";s:3:"lkt";s:12:"lakotšćina";s:3:"lkt";s:8:"lakotera";s:3:"lkt";s:8:"lakhóta";s:3:"lkt";s:7:"lakóta";s:3:"lkt";s:14:"lakota-sprooch";s:3:"lkt";s:7:"lakotų";s:3:"lkt";s:6:"lakotu";s:3:"lkt";s:6:"lacota";s:3:"lkt";s:10:"lakotčina";s:3:"lkt";s:12:"lakotščina";s:3:"lkt";s:9:"lakotisht";s:3:"lkt";s:14:"lea fakalakota";s:3:"lkt";s:8:"lakotaca";s:3:"lkt";s:8:"lakotcha";s:3:"lkt";s:12:"luba-katanga";s:2:"lu";s:12:"luba-katanqa";s:2:"lu";s:12:"luba katanga";s:2:"lu";s:18:"lubu-katanžština";s:2:"lu";s:15:"luba-katangagbe";s:2:"lu";s:4:"luba";s:2:"lu";s:14:"luba-katangera";s:2:"lu";s:15:"lúba-cataingis";s:2:"lu";s:12:"lúbakatanga";s:2:"lu";s:11:"lubakatanga";s:2:"lu";s:12:"luba-catanga";s:2:"lu";s:11:"lubakatange";s:2:"lu";s:20:"lea fakalupa-katanga";s:2:"lu";s:14:"luba-katangcha";s:2:"lu";s:10:"luba-lulua";s:3:"lua";s:15:"luba-lulua dili";s:3:"lua";s:16:"luba-luluaština";s:3:"lua";s:12:"luba-lulugbe";s:3:"lua";s:10:"luluanluba";s:3:"lua";s:10:"luba lulua";s:3:"lua";s:9:"lubalulva";s:3:"lua";s:11:"luba-luluwa";s:3:"lua";s:17:"luba-luluánčina";s:3:"lua";s:18:"lea fakalupa-lulua";s:3:"lua";s:3:"luo";s:3:"luo";s:9:"luoština";s:3:"luo";s:4:"lŵo";s:3:"luo";s:11:"luo-sprache";s:3:"luo";s:6:"luoera";s:3:"luo";s:13:"luo-schpraach";s:3:"luo";s:5:"lúó";s:3:"luo";s:11:"luo-sprooch";s:3:"luo";s:4:"luwa";s:3:"luo";s:7:"luoisht";s:3:"luo";s:11:"lea fakaluo";s:3:"luo";s:6:"luocha";s:3:"luo";s:5:"luyia";s:3:"luy";s:5:"luhja";s:3:"luy";s:5:"lwyia";s:3:"luy";s:6:"luyana";s:3:"luy";s:5:"luhya";s:3:"luy";s:8:"luyiagbe";s:3:"luy";s:7:"luhyera";s:3:"luy";s:5:"lujia";s:3:"luy";s:10:"luyjanesch";s:3:"luy";s:4:"luja";s:3:"luy";s:5:"luhju";s:3:"luy";s:12:"luhijščina";s:3:"luy";s:8:"lujaisht";s:3:"luy";s:13:"lea fakaluīa";s:3:"luy";s:6:"luycha";s:3:"luy";s:13:"lea fakamasai";s:3:"mas";s:12:"lea fakamelu";s:3:"mer";s:17:"lea fakamolisieni";s:3:"mfe";s:22:"lea fakamakūa-meʻeto";s:3:"mgh";s:12:"lea fakameta";s:3:"mgo";s:15:"lea fakamohauki";s:3:"moh";s:17:"lea fakamunitangi";s:3:"mua";s:17:"llengües vàries";s:3:"mul";s:18:"lenguas múltiples";s:3:"mul";s:17:"lenghis multiplis";s:3:"mul";s:14:"lingwi diversi";s:3:"mul";s:14:"limbi multiple";s:3:"mul";s:12:"lugha nyingi";s:3:"mul";s:10:"lea tuifio";s:3:"mul";s:12:"lea fakanama";s:3:"naq";s:24:"lea fakanetepele-tokelau";s:2:"nd";s:25:"lea fakahōlani-pelesiume";s:5:"nl-be";s:14:"lea fakakuasio";s:3:"nmg";s:13:"lea fakanikō";s:3:"nqo";s:13:"lõunandebele";s:2:"nr";s:22:"lea fakanetepele-tonga";s:2:"nr";s:13:"lea fakanueli";s:3:"nus";s:17:"lea fakanianikole";s:3:"nyn";s:16:"lea fakafoinikia";s:3:"phn";s:14:"lea fakakīsē";s:3:"quc";s:18:"lea fakamolitāvia";s:5:"ro-md";s:15:"lea fakalomipō";s:3:"rof";s:12:"lea fakaluā";s:3:"rwk";s:16:"lea fakasamipulu";s:3:"saq";s:13:"lea fakasangu";s:3:"sbp";s:12:"lea fakasena";s:3:"seh";s:22:"lea fakakoilapolo-seni";s:3:"ses";s:9:"lule sami";s:3:"smj";s:10:"lulesamisk";s:3:"smj";s:13:"lule-lappisch";s:3:"smj";s:16:"lule-samišćina";s:3:"smj";s:10:"lule saami";s:3:"smj";s:12:"lule samiera";s:3:"smj";s:13:"luulajansaame";s:3:"smj";s:12:"lule-samisch";s:3:"smj";s:11:"lule számi";s:3:"smj";s:13:"lúlesamíska";s:3:"smj";s:13:"lule-lappesch";s:3:"smj";s:14:"lulėjo samių";s:3:"smj";s:11:"luleo sāmu";s:3:"smj";s:12:"lule-lappsch";s:3:"smj";s:14:"lapoński lule";s:3:"smj";s:21:"luleška samijščina";s:3:"smj";s:11:"lulesamiska";s:3:"smj";s:17:"lea fakasami-lule";s:3:"smj";s:13:"luli semiycha";s:3:"smj";s:15:"lapoński inari";s:3:"smn";s:20:"lea fakasami-ʻinali";s:3:"smn";s:15:"lapoński skolt";s:3:"sms";s:21:"lea fakasami-sikolita";s:3:"sms";s:17:"língua comoriana";s:3:"swb";s:14:"lea fakakomolo";s:3:"swb";s:24:"lea fakasuahili-kongikō";s:3:"swc";s:12:"lea fakateso";s:3:"teo";s:17:"lea fakakilingoni";s:3:"tlh";s:16:"lea fakatasauaki";s:3:"twq";s:19:"llingua desconocida";s:3:"und";s:18:"lengua desconocida";s:3:"und";s:21:"langue indéterminée";s:3:"und";s:34:"lingua descoñecida ou non válida";s:3:"und";s:18:"lingua imprecisata";s:3:"und";s:21:"lingwa mhux magħrufa";s:3:"und";s:25:"linguas betg determinadas";s:3:"und";s:19:"limbă necunoscută";s:3:"und";s:19:"lugha isiyojulikana";s:3:"und";s:31:"తెలియని భాష";s:3:"und";s:15:"lea taʻeʻiloa";s:3:"und";s:11:"lea fakavai";s:3:"vai";s:15:"lea fakavūniso";s:3:"vun";s:6:"lusoga";s:3:"xog";s:12:"lea fakasoka";s:3:"xog";s:24:"lea fakatamasaiti-moloko";s:3:"zgh";s:14:"lea fakapilini";s:3:"byn";s:31:"lea fakapālangi-ʻaositelēlia";s:5:"en-au";s:26:"lea fakapālangi-ʻamelika";s:5:"en-us";s:28:"latın amerikası ispancası";s:6:"es-419";s:24:"latinoamerički španski";s:6:"es-419";s:22:"latinamerikansk spansk";s:6:"es-419";s:29:"lateinamerikanisches spanisch";s:6:"es-419";s:32:"latin amerikatɔwo ƒe spaniagbe";s:6:"es-419";s:22:"latin american spanish";s:6:"es-419";s:27:"latynsk-amerikaansk spaansk";s:6:"es-419";s:30:"latiinamerikanischs schpanisch";s:6:"es-419";s:27:"latinoamerički španjolski";s:6:"es-419";s:22:"latin-amerikai spanyol";s:6:"es-419";s:30:"latäinamerikanescht spuenesch";s:6:"es-419";s:30:"lispanyoli ya ameríka latína";s:6:"es-419";s:24:"lotynų amerikos ispanų";s:6:"es-419";s:23:"latīņamerikas spāņu";s:6:"es-419";s:27:"latienamerikaansch spaansch";s:6:"es-419";s:25:"latijns-amerikaans spaans";s:6:"es-419";s:25:"latino-američki španski";s:6:"es-419";s:30:"latinskoameriška španščina";s:6:"es-419";s:23:"latinamerikansk spanska";s:6:"es-419";s:35:"lea fakasipēnisi lātini-ʻamelika";s:6:"es-419";s:28:"latin amerika İspanyolcası";s:6:"es-419";s:24:"lotin amerika ispanchasi";s:6:"es-419";s:20:"lispanyoli ya erópa";s:5:"es-es";s:27:"lea fakasipēnisi-‘iulope";s:5:"es-es";s:23:"lifalansɛ́ ya kanadá";s:5:"fr-ca";s:25:"lea fakafalanisē-kānata";s:5:"fr-ca";s:21:"lifalansɛ́ ya swisi";s:5:"fr-ch";s:27:"lea fakafalanisē-suisilani";s:5:"fr-ch";s:15:"lea fakasiʻisi";s:3:"gez";s:25:"lipulutugɛ́si ya erópa";s:5:"pt-pt";s:25:"lea fakapotukali-ʻiulope";s:5:"pt-pt";s:14:"lea fakasitamo";s:3:"sid";s:18:"lea fakatikilīnia";s:3:"tig";s:19:"lea fakaʻatangimē";s:3:"ada";s:16:"lea fakaʻatikē";s:3:"ady";s:19:"lea fakaʻavesitani";s:2:"ae";s:19:"lea fakaʻafilihili";s:3:"afh";s:14:"lea fakaʻainu";s:3:"ain";s:16:"lea fakaʻakatia";s:3:"akk";s:16:"lea fakaʻaleuti";s:3:"ale";s:22:"lea fakaʻalitai-tonga";s:3:"alt";s:17:"lea fakaʻalapaho";s:3:"arp";s:17:"lea fakaʻalauaki";s:3:"arw";s:15:"lea fakaʻauati";s:3:"awa";s:14:"lea fakapalusi";s:3:"bal";s:12:"lea fakapali";s:3:"ban";s:15:"lea fakapasaʻa";s:3:"bas";s:14:"lea fakapamuni";s:3:"bax";s:12:"lea fakapesa";s:3:"bej";s:14:"lea fakapikoli";s:3:"bik";s:12:"lea fakapini";s:3:"bin";s:17:"lea fakasikesikā";s:3:"bla";s:13:"lea fakapalai";s:3:"bra";s:16:"lea fakaʻakōse";s:3:"bss";s:15:"lea fakapuliati";s:3:"bua";s:12:"lea fakakato";s:3:"cad";s:14:"lea fakakalipa";s:3:"car";s:17:"lea fakaʻatisami";s:3:"cch";s:15:"lea fakasīpisa";s:3:"chb";s:16:"lea fakasakatāi";s:3:"chg";s:13:"lea fakatūke";s:3:"chk";s:13:"lea fakamalī";s:3:"chm";s:21:"lea fakasinuki-takote";s:3:"chn";s:17:"lea fakasipeuiani";s:3:"chp";s:14:"lea fakatakota";s:3:"dak";s:16:"lea fakatalakuā";s:3:"dar";s:16:"lea fakatelauale";s:3:"del";s:14:"lea fakasilave";s:3:"den";s:17:"lea fakatōkelipi";s:3:"dgr";s:16:"lea fakatingikā";s:3:"din";s:14:"lea fakatokili";s:3:"doi";s:24:"lea fakahōlani-lotoloto";s:3:"dum";s:13:"lea fakatiula";s:3:"dyu";s:14:"lea fakatasaka";s:3:"dzg";s:17:"lea fakaʻekaiuki";s:3:"eka";s:17:"lea fakaʻelamite";s:3:"elx";s:25:"lea fakapālangi-lotoloto";s:3:"enm";s:18:"lea fakaʻeuōnito";s:3:"ewo";s:13:"lea fakafangi";s:3:"fan";s:15:"lea fakafanitē";s:3:"fat";s:14:"lea fakafōngi";s:3:"fon";s:26:"lea fakafalanisē-lotoloto";s:3:"frm";s:25:"lea fakafalanisē-motuʻa";s:3:"fro";s:46:"తూర్పు ఫ్రిసియన్";s:3:"frs";s:22:"lea fakafilisia-hahake";s:3:"frs";s:12:"lea fakakaio";s:3:"gay";s:14:"lea fakakapaia";s:3:"gba";s:16:"lea fakakilipasi";s:3:"gil";s:29:"lea fakasiamane-hake-lotoloto";s:3:"gmh";s:28:"lea fakasiamane-hake-motuʻa";s:3:"goh";s:15:"lea fakakonitī";s:3:"gon";s:18:"lea fakakolonitalo";s:3:"gor";s:13:"lea fakakēpo";s:3:"grb";s:17:"lea fakaʻuīsini";s:3:"gwi";s:13:"lea fakahaita";s:3:"hai";s:14:"lea fakamōngi";s:3:"hmn";s:12:"lea fakahupa";s:3:"hup";s:15:"lea fakaʻipani";s:3:"iba";s:13:"lhudi-persjan";s:3:"jpr";s:22:"lea fakaʻiuteo-pēsia";s:3:"jpr";s:13:"lhudi-għarbi";s:3:"jrb";s:24:"lea fakaʻiuteo-ʻalepea";s:3:"jrb";s:14:"lea fakakasini";s:3:"kac";s:13:"lea fakasisū";s:3:"kaj";s:12:"lea fakakavi";s:3:"kaw";s:17:"lea fakakanēmipu";s:3:"kbl";s:12:"lea fakakolo";s:3:"kfo";s:13:"lea fakakāsi";s:3:"kha";s:16:"limbp khotaneză";s:3:"kho";s:15:"lea fakakōtani";s:3:"kho";s:19:"lea fakakimipūnitu";s:3:"kmb";s:15:"lea fakakosilae";s:3:"kos";s:14:"lea fakakepele";s:3:"kpe";s:15:"lea fakakalelia";s:3:"krl";s:14:"lea fakakumiki";s:3:"kum";s:15:"lea fakakutenai";s:3:"kut";s:6:"lahnda";s:3:"lah";s:11:"laxnda dili";s:3:"lah";s:5:"landa";s:3:"lah";s:11:"lahndština";s:3:"lah";s:9:"lahndagbe";s:3:"lah";s:11:"lahndanisch";s:3:"lah";s:5:"landu";s:3:"lah";s:11:"lahandčina";s:3:"lah";s:15:"lea fakalānita";s:3:"lah";s:5:"lamba";s:3:"lam";s:10:"lamba dili";s:3:"lam";s:10:"lambština";s:3:"lam";s:13:"lamba-sprache";s:3:"lam";s:10:"lambanisch";s:3:"lam";s:13:"lamba-sprooch";s:3:"lam";s:5:"lambu";s:3:"lam";s:15:"lea fakalamipā";s:3:"lam";s:10:"lolo bantu";s:3:"lol";s:7:"lomongo";s:3:"lol";s:16:"lea fakamongikō";s:3:"lol";s:7:"luiseno";s:3:"lui";s:12:"luyseno dili";s:3:"lui";s:8:"luisenyo";s:3:"lui";s:8:"luiseňo";s:3:"lui";s:15:"luiseno-sprache";s:3:"lui";s:8:"luiseño";s:3:"lui";s:8:"luisenjo";s:3:"lui";s:17:"luiseno-schpraach";s:3:"lui";s:9:"lúisenó";s:3:"lui";s:15:"luiseno-sprooch";s:3:"lui";s:7:"luisenu";s:3:"lui";s:10:"luwisinuż";s:3:"lui";s:13:"luisenščina";s:3:"lui";s:15:"lea fakaluiseno";s:3:"lui";s:5:"lunda";s:3:"lun";s:10:"lunda dili";s:3:"lun";s:10:"lundština";s:3:"lun";s:5:"lwnda";s:3:"lun";s:13:"lunda-sprache";s:3:"lun";s:15:"lunda-schpraach";s:3:"lun";s:6:"lúnda";s:3:"lun";s:13:"lunda-sprooch";s:3:"lun";s:5:"lundu";s:3:"lun";s:15:"lea fakalunitā";s:3:"lun";s:14:"lea fakamatula";s:3:"mad";s:14:"lea fakamakahi";s:3:"mag";s:16:"lea fakamakasali";s:3:"mak";s:20:"lea fakamanitīngiko";s:3:"man";s:12:"lea fakamapa";s:3:"mde";s:16:"lea fakamanetali";s:3:"mdr";s:15:"lea fakamenetī";s:3:"men";s:25:"lea fakaʻaelani-lotoloto";s:3:"mga";s:16:"lea fakamikemaki";s:3:"mic";s:15:"lea fakamanisū";s:3:"mnc";s:16:"lea fakamanipuli";s:3:"mni";s:12:"lea fakamosi";s:3:"mos";s:16:"lea fakamaliwali";s:3:"mwr";s:13:"lea fakaniasi";s:3:"nia";s:13:"lea fakanokai";s:3:"nog";s:22:"lea fakanoauē-motuʻa";s:3:"non";s:22:"lea fakaneuali-motuʻa";s:3:"nwc";s:17:"lea fakaniamiuesi";s:3:"nym";s:13:"lea fakaniolo";s:3:"nyo";s:14:"lea fakanesima";s:3:"nzi";s:18:"lea fakaʻosipiuā";s:2:"oj";s:16:"lea fakaʻosēse";s:3:"osa";s:23:"lea fakatoake-ʻotomani";s:3:"ota";s:15:"lea fakapālavi";s:3:"pal";s:13:"lea fakapalau";s:3:"pau";s:22:"lea fakapēsia-motuʻa";s:3:"peo";s:15:"lea fakaponapē";s:3:"pon";s:26:"lea fakapolovenisi-motuʻa";s:3:"pro";s:18:"lea fakalasasitani";s:3:"raj";s:15:"lea fakalapanui";s:3:"rap";s:17:"lea fakalalotonga";s:3:"rar";s:14:"lea fakalomani";s:3:"rom";s:16:"lea fakasanitaue";s:3:"sad";s:29:"lea fakasamalitani-ʻalāmiti";s:3:"sam";s:14:"lea fakasasaki";s:3:"sas";s:17:"lea fakangāmipai";s:3:"sba";s:16:"lea fakaselikupi";s:3:"sel";s:24:"lea fakaʻaelani-motuʻa";s:3:"sga";s:13:"lea fakasiani";s:3:"shn";s:22:"lea fakaʻalepea-sāti";s:3:"shu";s:17:"lea fakasoninekē";s:3:"snk";s:17:"lea fakasokitiana";s:3:"sog";s:16:"lea fakasēlēle";s:3:"srr";s:14:"lea fakasukuma";s:3:"suk";s:13:"lea fakasusū";s:3:"sus";s:15:"lea fakasumelia";s:3:"sux";s:23:"lea fakasuliāiā-muʻa";s:3:"syc";s:17:"lea fakasuliāiā";s:3:"syr";s:15:"lea fakatimenē";s:3:"tem";s:14:"lea fakateleno";s:3:"ter";s:12:"lea fakativi";s:3:"tiv";s:15:"lea fakatokelau";s:3:"tkl";s:20:"lea fakatilingikīte";s:3:"tli";s:17:"lea fakatamasieki";s:3:"tmh";s:13:"lingua tsonga";s:3:"tog";s:19:"lea fakaniasa-tonga";s:3:"tog";s:20:"lea fakatisīmisiani";s:3:"tsi";s:15:"lea fakatūvalu";s:3:"tvl";s:18:"lea fakaʻūkaliti";s:3:"uga";s:20:"lea fakaʻumipūnitu";s:3:"umb";s:17:"lea fakaʻuolaita";s:3:"wal";s:16:"lea fakaʻuasiō";s:3:"was";s:13:"lea fakaʻiao";s:3:"yao";s:14:"lea fakaʻiapi";s:3:"yap";s:19:"lea fakaʻiangipeni";s:3:"yav";s:16:"lea fakasapoteki";s:3:"zap";s:23:"lea fakaʻilonga-pilisi";s:3:"zbl";s:14:"lea fakasenaka";s:3:"zen";s:12:"lea fakasuni";s:3:"zun";s:14:"lea fakasāsā";s:3:"zza";s:25:"lea fakaʻalepea-tunīsia";s:3:"aeb";s:17:"lea fakaʻalapama";s:3:"akz";s:16:"lea fakaʻalaona";s:3:"aro";s:27:"llingua de signos americana";s:3:"ase";s:29:"langue des signes américaine";s:3:"ase";s:26:"lingua dei segni americana";s:3:"ase";s:26:"lea fakaʻilonga-ʻamelika";s:3:"ase";s:14:"lea fakakomala";s:3:"bbj";s:14:"lea fakapetavi";s:3:"bew";s:14:"lea fakapafuti";s:3:"bfd";s:14:"lea fakapataka";s:3:"bfq";s:12:"lea fakakome";s:3:"bkm";s:12:"lea fakapulu";s:3:"bum";s:17:"lea fakametūmipa";s:3:"byv";s:14:"lea fakakaiuka";s:3:"cay";s:27:"lea fakasipēnisi-mekisikou";s:5:"es-mx";s:22:"lea fakaiūpiki-loloto";s:3:"esu";s:25:"lea fakateli-soloasitelia";s:3:"gbz";s:23:"lea fakakonikanī-koani";s:3:"gom";s:15:"lea fakaʻuaiū";s:3:"guc";s:16:"lea fakafalefale";s:3:"gur";s:21:"lea fakasiaina-siangi";s:3:"hsn";s:16:"lea fakaʻipipio";s:3:"ibb";s:19:"lea fakaʻingiliani";s:3:"izh";s:13:"lea fakatiapi";s:3:"kcg";s:16:"lea fakakeniangi";s:3:"ken";s:17:"lea fakakaingangi";s:3:"kgp";s:12:"lea fakakako";s:3:"kkj";s:12:"lea fakamafa";s:3:"maf";s:17:"lea fakamenitauai";s:3:"mwv";s:13:"lea fakamiene";s:3:"mye";s:16:"lea fakaʻaonasa";s:3:"njo";s:19:"lea fakangiemipōni";s:3:"nnh";s:14:"lea fakalotuma";s:3:"rtm";s:20:"lea fakasaulasitilā";s:3:"saz";s:14:"lea fakaseneka";s:3:"see";s:12:"lea fakasaho";s:3:"ssy";s:14:"lea fakataloko";s:3:"trv";s:17:"lea fakaʻiēmipa";s:3:"ybb";s:8:"ємба";s:3:"ybb";s:18:"lea fakaʻualiseli";s:3:"wae";s:15:"lea fakaloviana";s:3:"rug";s:15:"lea fakaselaiā";s:3:"sly";s:15:"lea fakasākuli";s:3:"tkr";s:16:"lea fakasakōnia";s:3:"tsd";s:21:"lea fakatati-moselemi";s:3:"ttt";s:20:"lea fakaneʻēngatū";s:3:"yrl";s:7:"lappsch";s:3:"smi";}i:574;a:86:{s:14:"ئافارچە";s:2:"aa";s:16:"ئابخازچە";s:2:"ab";s:14:"ئاتجېچە";s:3:"ace";s:20:"ئافرىكانچە";s:2:"af";s:14:"ئاكانچە";s:2:"ak";s:18:"ئامخاراچە";s:2:"am";s:18:"ئاراگونچە";s:2:"an";s:18:"ئانگىكاچە";s:3:"anp";s:14:"ئەرەبچە";s:2:"ar";s:16:"ئارامۇچە";s:3:"arc";s:16:"ئاسسامچە";s:2:"as";s:22:"ئاستۇرىيەچە";s:3:"ast";s:14:"ئاۋارچە";s:2:"av";s:18:"ئايماراچە";s:2:"ay";s:16:"ئەزەرىچە";s:2:"az";s:37:"ئاۋستىرىيە گېرمانچە";s:5:"de-at";s:12:"ئېۋېچە";s:2:"ee";s:18:"ئىنگلىزچە";s:2:"en";s:35:"ئەنگلىيە ئىنگلىزچە";s:5:"en-gb";s:16:"ئىسپانچە";s:2:"es";s:16:"ئېستونچە";s:2:"et";s:20:"ئىرېلاندچە";s:2:"ga";s:18:"ئىبرانىچە";s:2:"he";s:16:"ئەرمەنچە";s:2:"hy";s:21:"ئارىلىق تىل";s:2:"ia";s:22:"ئىنتىرلىڭچە";s:2:"ie";s:12:"ئىبوچە";s:2:"ig";s:18:"ئىنۇپىكچە";s:2:"ik";s:20:"ئىلوكانوچە";s:3:"ilo";s:16:"ئىنگۇشچە";s:3:"inh";s:12:"ئىدوچە";s:2:"io";s:18:"ئىسلاندچە";s:2:"is";s:20:"ئىتاليانچە";s:2:"it";s:24:"ئىنۇكتىتۇتچە";s:2:"iu";s:14:"ئېرزاچە";s:3:"myv";s:20:"ئوكسىتانچە";s:2:"oc";s:16:"ئوروموچە";s:2:"om";s:16:"ئورىياچە";s:2:"or";s:20:"ئوسسېتچەچە";s:2:"os";s:18:"ئارومانچە";s:3:"rup";s:16:"ئالبانچە";s:2:"sq";s:18:"ئۇدمۇرتچە";s:3:"udm";s:28:"ئۇيغۇرچە / uyghurche";s:2:"ug";s:16:"ئۇيغۇرچە";s:7:"ug-arab";s:20:"ئۇكرائىنچە";s:2:"uk";s:14:"ئوردوچە";s:2:"ur";s:16:"ئۆزبېكچە";s:2:"uz";s:23:"ئاددىي خەنچە";s:7:"zh-hans";s:16:"ئاچولىچە";s:3:"ach";s:14:"ئاگەمچە";s:3:"agq";s:12:"ئاسۇچە";s:3:"asa";s:14:"ئېمبۇچە";s:3:"ebu";s:14:"ئېفىكچە";s:3:"efi";s:25:"ئىنارى سامىچە";s:3:"smn";s:52:"ئۆلچەملىك ماراكەش تامازىتچە";s:3:"zgh";s:41:"ئاۋسترالىيە ئىنگلىزچە";s:5:"en-au";s:35:"ئامېرىكا ئىنگلىزچە";s:5:"en-us";s:18:"ئاداڭمېچە";s:3:"ada";s:18:"ئادىگېيچە";s:3:"ady";s:18:"ئاۋېستاچە";s:2:"ae";s:22:"ئافرىخىلىچە";s:3:"afh";s:14:"ئاينۇچە";s:3:"ain";s:16:"ئاككادچە";s:3:"akk";s:18:"ئالېيۇتچە";s:3:"ale";s:20:"ئاراپاخوچە";s:3:"arp";s:18:"ئاراۋاكچە";s:3:"arw";s:16:"ئاۋادىچە";s:3:"awa";s:14:"ئاكۇسچە";s:3:"bss";s:16:"ئاتسامچە";s:3:"cch";s:39:"ئوتتۇرا گوللاندىيەچە";s:3:"dum";s:18:"ئېكاجۇكچە";s:3:"eka";s:18:"ئېلامىتچە";s:3:"elx";s:44:"ئوتتۇرا ئەسىر ئىنگلىزچە";s:3:"enm";s:18:"ئېۋوندوچە";s:3:"ewo";s:46:"ئوتتۇرا ئەسىر فىرانسۇزچە";s:3:"frm";s:59:"ئوتتۇرا ئەسىر ئېگىزلىك گېرمانچە";s:3:"gmh";s:14:"ئىبانچە";s:3:"iba";s:27:"ئىبرانى پارسچە";s:3:"jpr";s:29:"ئىبرانى ئەرەبچە";s:3:"jrb";s:46:"ئوتتۇرا ئەسىر ئىرېلاندچە";s:3:"mga";s:18:"ئوجىبۋاچە";s:2:"oj";s:22:"ئوساگېلارچە";s:3:"osa";s:25:"ئوسمان تۈركچە";s:3:"ota";s:22:"ئۇگارىتىكچە";s:3:"uga";s:20:"ئۇمبۇندۇچە";s:3:"umb";s:20:"ئىبىبىئوچە";s:3:"ibb";}i:116;a:1616:{s:12:"tiếng afar";s:2:"aa";s:16:"tiếng abkhazia";s:2:"ab";s:16:"tiếng achinese";s:3:"ace";s:15:"tiếng nam phi";s:2:"af";s:7:"takanit";s:2:"ak";s:6:"takant";s:2:"ak";s:12:"tiếng akan";s:2:"ak";s:9:"tamahrict";s:2:"am";s:8:"tamharit";s:2:"am";s:15:"tiếng amharic";s:2:"am";s:14:"tiếng aragon";s:2:"an";s:16:"tiếng anh cổ";s:3:"ang";s:14:"tiếng angika";s:3:"anp";s:8:"taɛrabt";s:2:"ar";s:8:"taεrabt";s:2:"ar";s:17:"tiếng Ả rập";s:2:"ar";s:15:"tiếng aramaic";s:3:"arc";s:18:"tiếng araucanian";s:3:"arn";s:13:"tiếng assam";s:2:"as";s:8:"ti assam";s:2:"as";s:16:"tiếng asturias";s:3:"ast";s:14:"tiếng avaric";s:2:"av";s:14:"tiếng aymara";s:2:"ay";s:18:"tiếng azerbaijan";s:2:"az";s:21:"బష్కిర్";s:2:"ba";s:15:"tiếng bashkir";s:2:"ba";s:11:"tabilarusit";s:2:"be";s:10:"tabilarust";s:2:"be";s:30:"బెలరుశియన్";s:2:"be";s:15:"tiếng belarus";s:2:"be";s:10:"tabulgarit";s:2:"bg";s:10:"tablɣarit";s:2:"bg";s:30:"బల్గేరియన్";s:2:"bg";s:11:"tabelɣarit";s:2:"bg";s:16:"tiếng bulgaria";s:2:"bg";s:16:"tiếng bhojpuri";s:3:"bho";s:24:"బిస్లామా";s:2:"bi";s:15:"tiếng bislama";s:2:"bi";s:18:"బంబారా";s:2:"bm";s:15:"tiếng bambara";s:2:"bm";s:10:"tabengalit";s:2:"bn";s:10:"tabnɣalit";s:2:"bn";s:21:"బెంగాలీ";s:2:"bn";s:11:"tabinɣalit";s:2:"bn";s:15:"tiếng bengali";s:2:"bn";s:10:"tibettaans";s:2:"bo";s:8:"tibetanu";s:2:"bo";s:5:"tibet";s:2:"bo";s:9:"tibetaneg";s:2:"bo";s:10:"tibetanski";s:2:"bo";s:7:"tibetà";s:2:"bo";s:11:"tibetština";s:2:"bo";s:7:"tibeteg";s:2:"bo";s:9:"tibetansk";s:2:"bo";s:9:"tibetisch";s:2:"bo";s:12:"tibetšćina";s:2:"bo";s:9:"tibetagbe";s:2:"bo";s:7:"tibetan";s:2:"bo";s:6:"tibeta";s:2:"bo";s:8:"tibetano";s:2:"bo";s:7:"tiibeti";s:2:"bo";s:8:"tibetera";s:2:"bo";s:6:"tiibet";s:2:"bo";s:10:"tibetanskt";s:2:"bo";s:9:"tibétain";s:2:"bo";s:10:"tibetaansk";s:2:"bo";s:9:"tibéidis";s:2:"bo";s:8:"tibeitis";s:2:"bo";s:10:"tibeetisch";s:2:"bo";s:6:"tibeti";s:2:"bo";s:8:"tíbeska";s:2:"bo";s:10:"tibehtesch";s:2:"bo";s:9:"tibetesch";s:2:"bo";s:12:"tibetiečių";s:2:"bo";s:10:"tibetiešu";s:2:"bo";s:8:"tibetjan";s:2:"bo";s:9:"tibeetsch";s:2:"bo";s:9:"tibetaans";s:2:"bo";s:11:"tybetański";s:2:"bo";s:13:"tibetano simi";s:2:"bo";s:9:"tibetană";s:2:"bo";s:12:"tibetagiella";s:2:"bo";s:10:"tibetčina";s:2:"bo";s:14:"tibetanščina";s:2:"bo";s:9:"tibetisht";s:2:"bo";s:10:"tibetanska";s:2:"bo";s:8:"tibetçe";s:2:"bo";s:8:"tibetcha";s:2:"bo";s:19:"tiếng tây tạng";s:2:"bo";s:33:"బిష్ణుప్రియ";s:3:"bpy";s:21:"బ్రెటన్";s:2:"br";s:14:"tiếng breton";s:2:"br";s:27:"బోస్నియన్";s:2:"bs";s:15:"tiếng nam tư";s:2:"bs";s:30:"బ్యుగినిస్";s:3:"bug";s:13:"tiếng bugin";s:3:"bug";s:15:"tiếng catalan";s:2:"ca";s:11:"tchetcheneg";s:2:"ce";s:7:"txetxè";s:2:"ce";s:11:"tsietsieneg";s:2:"ce";s:9:"tjetjensk";s:2:"ce";s:15:"tschetschenisch";s:2:"ce";s:11:"tšetšeeni";s:2:"ce";s:12:"tchétchène";s:2:"ce";s:12:"tsjetsjeensk";s:2:"ce";s:16:"tschetscheenisch";s:2:"ce";s:12:"tsjetsjenska";s:2:"ce";s:15:"tschetschenesch";s:2:"ce";s:11:"tsjetsjensk";s:2:"ce";s:15:"tschetscheensch";s:2:"ce";s:11:"tsjetsjeens";s:2:"ce";s:11:"tschetschen";s:2:"ce";s:10:"tjetjenska";s:2:"ce";s:15:"tiếng chechen";s:2:"ce";s:15:"tiếng cebuano";s:3:"ceb";s:9:"tsiamorro";s:2:"ch";s:9:"tšamorro";s:2:"ch";s:16:"tiếng chamorro";s:2:"ch";s:7:"tšokto";s:3:"cho";s:15:"tiếng choctaw";s:3:"cho";s:9:"tsierocî";s:3:"chr";s:9:"tšerokii";s:3:"chr";s:10:"txerokiera";s:3:"chr";s:16:"tiếng cherokee";s:3:"chr";s:17:"tsetsêhestâhese";s:3:"chy";s:16:"tiếng cheyenne";s:3:"chy";s:19:"tiếng kurd sorani";s:3:"ckb";s:15:"tiếng corsica";s:2:"co";s:12:"tiếng cree";s:2:"cr";s:15:"turcu de crimea";s:3:"crh";s:13:"turkeg krimea";s:3:"crh";s:16:"tàtar de crimea";s:3:"crh";s:21:"turečtina (krymská)";s:3:"crh";s:15:"tyrceg y crimea";s:3:"crh";s:18:"tártaro de crimea";s:3:"crh";s:15:"turc de crimée";s:3:"crh";s:17:"turcais chriomach";s:3:"crh";s:12:"tatar krimea";s:3:"crh";s:12:"turco crimeo";s:3:"crh";s:12:"turki krimea";s:3:"crh";s:16:"turco da crimeia";s:3:"crh";s:12:"tirc crimean";s:3:"crh";s:17:"turcă crimeeană";s:3:"crh";s:31:"tiếng thổ nhĩ kỳ crimean";s:3:"crh";s:9:"tsjeggies";s:2:"cs";s:7:"tchekeg";s:2:"cs";s:4:"txec";s:2:"cs";s:7:"tsieceg";s:2:"cs";s:8:"tjekkisk";s:2:"cs";s:11:"tschechisch";s:2:"cs";s:8:"tsɛkgbe";s:2:"cs";s:7:"tšehhi";s:2:"cs";s:8:"txekiera";s:2:"cs";s:7:"tšekki";s:2:"cs";s:8:"tchèque";s:2:"cs";s:9:"tsjechysk";s:2:"cs";s:10:"tékkneska";s:2:"cs";s:8:"tačikit";s:2:"cs";s:10:"tjekkiamut";s:2:"cs";s:13:"tschäschesch";s:2:"cs";s:11:"tschechesch";s:2:"cs";s:5:"tseky";s:2:"cs";s:9:"tsjekkisk";s:2:"cs";s:13:"tschech’sch";s:2:"cs";s:10:"tsjechisch";s:2:"cs";s:6:"tcheco";s:2:"cs";s:6:"tschec";s:2:"cs";s:6:"tyêki";s:2:"cs";s:8:"tatcikit";s:2:"cs";s:9:"tjeckiska";s:2:"cs";s:7:"tačikt";s:2:"cs";s:12:"tiếng séc";s:2:"cs";s:16:"tiếng kashubia";s:3:"csb";s:25:"tiếng slavơ nhà thờ";s:2:"cu";s:10:"tchouvatch";s:2:"cv";s:7:"txuvaix";s:2:"cv";s:14:"tschuwaschisch";s:2:"cv";s:9:"tšuvaši";s:2:"cv";s:9:"tšuvassi";s:2:"cv";s:10:"tchouvache";s:2:"cv";s:12:"tsjoevasjysk";s:2:"cv";s:14:"tschowaschesch";s:2:"cv";s:14:"tschuwaschesch";s:2:"cv";s:9:"tsjuvansk";s:2:"cv";s:16:"tschuwasch’sch";s:2:"cv";s:13:"tsjoevasjisch";s:2:"cv";s:10:"tschuvasch";s:2:"cv";s:11:"tjuvasjiska";s:2:"cv";s:15:"tiếng chuvash";s:2:"cv";s:13:"tiếng wales";s:2:"cy";s:5:"taani";s:2:"da";s:6:"tanska";s:2:"da";s:8:"tänisch";s:2:"da";s:19:"tiếng Đan mạch";s:2:"da";s:4:"tysk";s:2:"de";s:6:"týskt";s:2:"de";s:6:"todesc";s:2:"de";s:9:"tüütsch";s:2:"de";s:7:"tedesco";s:2:"de";s:7:"talmant";s:2:"de";s:8:"tyskisut";s:2:"de";s:7:"tudestg";s:2:"de";s:8:"talimant";s:2:"de";s:5:"tyska";s:2:"de";s:8:"talmanit";s:2:"de";s:14:"tiếng Đức";s:2:"de";s:17:"todesc de austrie";s:5:"de-at";s:17:"tedesco austriaco";s:5:"de-at";s:16:"tudestg austriac";s:5:"de-at";s:40:"tiếng thượng giéc-man (thụy sĩ)";s:5:"de-ch";s:19:"tiếng hạ sorbia";s:3:"dsb";s:14:"tiếng divehi";s:2:"dv";s:16:"tiếng dzongkha";s:2:"dz";s:11:"tiếng ewe";s:2:"ee";s:8:"tagrikit";s:2:"el";s:8:"tagrigit";s:2:"el";s:9:"tayunanit";s:2:"el";s:16:"tiếng hy lạp";s:2:"el";s:7:"turanci";s:2:"en";s:8:"taglizit";s:2:"en";s:8:"tuluttut";s:2:"en";s:8:"tanglizt";s:2:"en";s:11:"tiếng anh";s:2:"en";s:49:"బ్రిటిష్ ఇంగ్లీష్";s:5:"en-gb";s:17:"tiếng anh (anh)";s:5:"en-gb";s:25:"tiếng quốc tế ngữ";s:2:"eo";s:11:"taspenyulit";s:2:"es";s:10:"tasbnyulit";s:2:"es";s:11:"tasbelyunit";s:2:"es";s:20:"tiếng tây ban nha";s:2:"es";s:15:"tiếng estonia";s:2:"et";s:18:"బాస్క్";s:2:"eu";s:14:"tiếng basque";s:2:"eu";s:9:"tafarisit";s:2:"fa";s:8:"tafursit";s:2:"fa";s:14:"tiếng ba tư";s:2:"fa";s:13:"tiếng fulah";s:2:"ff";s:18:"tiếng phần lan";s:2:"fi";s:18:"tornedalen finnish";s:3:"fit";s:13:"tornedal-fins";s:3:"fit";s:18:"tornedalin fincesi";s:3:"fit";s:12:"tiếng fiji";s:2:"fj";s:13:"tiếng faore";s:2:"fo";s:9:"tubabukan";s:2:"fr";s:10:"tafransist";s:2:"fr";s:12:"tafṛansist";s:2:"fr";s:13:"tiếng pháp";s:2:"fr";s:28:"tiếng frisian miền bắc";s:3:"frr";s:16:"tiếng friulian";s:3:"fur";s:14:"tiếng frisia";s:2:"fy";s:14:"tiếng ai-len";s:2:"ga";s:14:"tiếng gagauz";s:3:"gag";s:22:"traditional gan script";s:8:"gan-hant";s:27:"tiếng xentơ (xcốt len)";s:2:"gd";s:16:"tiếng galician";s:2:"gl";s:15:"tiếng guarani";s:2:"gn";s:17:"tiếng gô-tích";s:3:"got";s:21:"tiếng hy lạp cổ";s:3:"grc";s:16:"tedesco svizzero";s:3:"gsw";s:15:"tudestg svizzer";s:3:"gsw";s:27:"tiếng Đức (thụy sĩ)";s:3:"gsw";s:16:"tiếng gujarati";s:2:"gu";s:12:"tiếng manx";s:2:"gv";s:8:"tahwasit";s:2:"ha";s:8:"tahawsat";s:2:"ha";s:13:"tiếng hausa";s:2:"ha";s:14:"tiếng hawaii";s:3:"haw";s:16:"tiếng do thái";s:2:"he";s:8:"tahendit";s:2:"hi";s:8:"tahindit";s:2:"hi";s:13:"tiếng hindi";s:2:"hi";s:18:"tiếng hiligaynon";s:3:"hil";s:17:"tiếng hiri motu";s:2:"ho";s:15:"tiếng croatia";s:2:"hr";s:24:"tiếng thượng sorbia";s:3:"hsb";s:13:"tiếng haiti";s:2:"ht";s:10:"tahungarit";s:2:"hu";s:10:"tahnɣarit";s:2:"hu";s:11:"tahenɣarit";s:2:"hu";s:15:"tiếng hungary";s:2:"hu";s:15:"tiếng armenia";s:2:"hy";s:14:"tiếng herero";s:2:"hz";s:30:"tiếng khoa học quốc tế";s:2:"ia";s:10:"tandunisit";s:2:"id";s:10:"tindunisit";s:2:"id";s:17:"tiếng indonesia";s:2:"id";s:19:"tiếng interlingue";s:2:"ie";s:6:"tigbut";s:2:"ig";s:12:"tiếng igbo";s:2:"ig";s:22:"tiếng di tứ xuyên";s:2:"ii";s:15:"tiếng inupiaq";s:2:"ik";s:13:"tiếng iloko";s:3:"ilo";s:14:"tiếng ingush";s:3:"inh";s:11:"tiếng ido";s:2:"io";s:15:"tiếng iceland";s:2:"is";s:6:"talian";s:2:"it";s:10:"talijanski";s:2:"it";s:12:"taṭalyanit";s:2:"it";s:6:"taljan";s:2:"it";s:11:"taṭalyant";s:2:"it";s:11:"taliančina";s:2:"it";s:8:"talyaani";s:2:"it";s:10:"tiếng Ý";s:2:"it";s:17:"tiếng inuktitut";s:2:"iu";s:9:"tajapunit";s:2:"ja";s:10:"tajabbunit";s:2:"ja";s:10:"tajappunit";s:2:"ja";s:14:"tiếng nhật";s:2:"ja";s:14:"tiếng lojban";s:3:"jbo";s:9:"tajavanit";s:2:"jv";s:12:"tiếng java";s:2:"jv";s:14:"tiếng gruzia";s:2:"ka";s:19:"tiếng kara-kalpak";s:3:"kaa";s:9:"taqbaylit";s:3:"kab";s:14:"tiếng kabyle";s:3:"kab";s:17:"tiếng kabardian";s:3:"kbd";s:13:"tiếng kongo";s:2:"kg";s:14:"tiếng kikuyu";s:2:"ki";s:16:"tiếng kuanyama";s:2:"kj";s:14:"tiếng kazakh";s:2:"kk";s:19:"tiếng kalaallisut";s:2:"kl";s:8:"takemrit";s:2:"km";s:7:"taxmirt";s:2:"km";s:18:"taxmert ,talammast";s:2:"km";s:15:"tiếng khơ-me";s:2:"km";s:15:"tiếng kannada";s:2:"kn";s:7:"takurit";s:2:"ko";s:12:"tiếng hàn";s:2:"ko";s:20:"tiếng komi-permyak";s:3:"koi";s:14:"tiếng kanuri";s:2:"kr";s:23:"tiếng karachay-balkar";s:3:"krc";s:16:"tiếng kashmiri";s:2:"ks";s:15:"tiếng cologne";s:3:"ksh";s:12:"tiếng kurd";s:2:"ku";s:12:"tiếng komi";s:2:"kv";s:16:"tiếng cornwall";s:2:"kw";s:14:"tiếng kyrgyz";s:2:"ky";s:15:"tiếng la-tinh";s:2:"la";s:14:"tiếng ladino";s:3:"lad";s:18:"tiếng luxembourg";s:2:"lb";s:16:"tiếng lezghian";s:3:"lez";s:13:"tiếng ganda";s:2:"lg";s:15:"tiếng limburg";s:2:"li";s:15:"tiếng lingala";s:2:"ln";s:12:"tiếng lào";s:2:"lo";s:12:"tiếng lozi";s:3:"loz";s:15:"tiếng lít-va";s:2:"lt";s:14:"tiếng lushai";s:3:"lus";s:14:"tiếng latvia";s:2:"lv";s:16:"tiếng maithili";s:3:"mai";s:14:"tiếng moksha";s:3:"mdf";s:16:"tiếng malagasy";s:2:"mg";s:16:"tiếng marshall";s:2:"mh";s:13:"tiếng maori";s:2:"mi";s:19:"tiếng minangkabau";s:3:"min";s:17:"tiếng macedonia";s:2:"mk";s:17:"tiếng malayalam";s:2:"ml";s:18:"tiếng mông cổ";s:2:"mn";s:15:"tiếng marathi";s:2:"mr";s:9:"tamalawit";s:2:"ms";s:9:"tamalizit";s:2:"ms";s:16:"tiếng malaysia";s:2:"ms";s:12:"tiếng malt";s:2:"mt";s:13:"tiếng creek";s:3:"mus";s:15:"tiếng miranda";s:3:"mwl";s:10:"taburmisit";s:2:"my";s:10:"tabirmanit";s:2:"my";s:21:"బర్మీస్";s:2:"my";s:10:"taburmanit";s:2:"my";s:22:"tiếng miến Điện";s:2:"my";s:13:"tiếng erzya";s:3:"myv";s:13:"tiếng nauru";s:2:"na";s:14:"tiếng napoli";s:3:"nap";s:23:"tiếng na uy (bokmål)";s:2:"nb";s:22:"tiếng hạ giéc-man";s:3:"nds";s:9:"tanipalit";s:2:"ne";s:18:"နီပါလီ";s:2:"ne";s:9:"tanibalit";s:2:"ne";s:10:"tanippalit";s:2:"ne";s:13:"tiếng nepal";s:2:"ne";s:14:"tiếng newari";s:3:"new";s:14:"tiếng ndonga";s:2:"ng";s:14:"tiếng niuean";s:3:"niu";s:8:"tadučit";s:2:"nl";s:10:"tahulandit";s:2:"nl";s:12:"tahulanḍit";s:2:"nl";s:15:"tiếng hà lan";s:2:"nl";s:55:"နော်ဝေး နီးနော်စ်ခ်";s:2:"nn";s:23:"tiếng na uy (nynorsk)";s:2:"nn";s:21:"နော်ဝေး";s:2:"no";s:13:"tiếng na uy";s:2:"no";s:14:"tiếng navajo";s:2:"nv";s:14:"tiếng nyanja";s:2:"ny";s:15:"tiếng occitan";s:2:"oc";s:13:"tiếng oromo";s:2:"om";s:13:"tiếng oriya";s:2:"or";s:15:"tiếng ossetic";s:2:"os";s:10:"tapunjabit";s:2:"pa";s:9:"tabnjabit";s:2:"pa";s:10:"tabenjabit";s:2:"pa";s:14:"tiếng punjab";s:2:"pa";s:18:"tiếng pangasinan";s:3:"pag";s:16:"tiếng pampanga";s:3:"pam";s:18:"tiếng papiamento";s:3:"pap";s:26:"tedesco della pennsylvania";s:3:"pdc";s:16:"tedesco palatino";s:3:"pfl";s:12:"tiếng pali";s:2:"pi";s:9:"tapulunit";s:2:"pl";s:9:"tabulunit";s:2:"pl";s:10:"tappulunit";s:2:"pl";s:14:"tiếng ba lan";s:2:"pl";s:14:"tiếng pashto";s:2:"ps";s:12:"tapurtugalit";s:2:"pt";s:13:"tabṛṭqizt";s:2:"pt";s:13:"taburtuɣalit";s:2:"pt";s:22:"tiếng bồ Đào nha";s:2:"pt";s:64:"బ్రెజీలియన్ పోర్చుగీస్";s:5:"pt-br";s:31:"tiếng bồ Đào nha (braxin)";s:5:"pt-br";s:15:"tiếng quechua";s:2:"qu";s:7:"tarifit";s:3:"rif";s:15:"tiếng romansh";s:2:"rm";s:13:"tiếng rundi";s:2:"rn";s:9:"tarumanit";s:2:"ro";s:11:"taṛumanit";s:2:"ro";s:14:"tiếng rumani";s:2:"ro";s:10:"tarandíne";s:8:"roa-tara";s:7:"tarusit";s:2:"ru";s:11:"tiếng nga";s:2:"ru";s:16:"tiếng aromania";s:3:"rup";s:10:"taruwandit";s:2:"rw";s:9:"tarwandit";s:2:"rw";s:19:"tiếng kinyarwanda";s:2:"rw";s:14:"tiếng phạn";s:2:"sa";s:13:"tiếng sakha";s:3:"sah";s:15:"tiếng santali";s:3:"sat";s:16:"tiếng sardinia";s:2:"sc";s:15:"tiếng sicilia";s:3:"scn";s:13:"tiếng scots";s:3:"sco";s:14:"tiếng sindhi";s:2:"sd";s:25:"tiếng sami miền bắc";s:2:"se";s:13:"tiếng sango";s:2:"sg";s:25:"tiếng xéc bi - croatia";s:2:"sh";s:33:"tašlḥiyt/ⵜⴰⵛⵍⵃⵉⵜ";s:3:"shi";s:9:"tachelhit";s:3:"shi";s:8:"taçelit";s:3:"shi";s:8:"tahelhit";s:3:"shi";s:9:"taixelhit";s:3:"shi";s:10:"taschelhit";s:3:"shi";s:9:"tašelhit";s:3:"shi";s:9:"tashelhit";s:3:"shi";s:10:"tachelhiti";s:3:"shi";s:10:"tachelhita";s:3:"shi";s:10:"tashelhiyt";s:3:"shi";s:11:"tachelhitų";s:3:"shi";s:9:"tamazight";s:3:"tmh";s:24:"tahelitska berberščina";s:3:"shi";s:9:"taşelhit";s:3:"shi";s:12:"tachilgitcha";s:3:"shi";s:17:"tiếng tachelhit";s:3:"shi";s:11:"tašlḥiyt";s:8:"shi-latn";s:15:"tiếng sinhala";s:2:"si";s:14:"tiếng slovak";s:2:"sk";s:16:"tiếng slovenia";s:2:"sl";s:16:"tedesco slesiano";s:3:"sli";s:13:"tiếng samoa";s:2:"sm";s:23:"tiếng sami miền nam";s:3:"sma";s:13:"tiếng shona";s:2:"sn";s:11:"taṣumalit";s:2:"so";s:9:"tasumalit";s:2:"so";s:14:"tiếng somali";s:2:"so";s:16:"tiếng an-ba-ni";s:2:"sq";s:14:"tiếng serbia";s:2:"sr";s:20:"tiếng sranan tongo";s:3:"srn";s:13:"tiếng swati";s:2:"ss";s:15:"tiếng sesotho";s:2:"st";s:13:"tiếng sudan";s:2:"su";s:8:"taswidit";s:2:"sv";s:22:"tiếng thụy Điển";s:2:"sv";s:15:"tiếng swahili";s:2:"sw";s:5:"tamil";s:2:"ta";s:10:"tamil kasa";s:2:"ta";s:9:"tamulikan";s:2:"ta";s:7:"tamileg";s:2:"ta";s:8:"tamilski";s:2:"ta";s:6:"tàmil";s:2:"ta";s:11:"tamilština";s:2:"ta";s:7:"tamilsk";s:2:"ta";s:9:"tamilisch";s:2:"ta";s:12:"tamilšćina";s:2:"ta";s:8:"tamilgbe";s:2:"ta";s:6:"tamila";s:2:"ta";s:6:"tamili";s:2:"ta";s:8:"tamilera";s:2:"ta";s:8:"tamilskt";s:2:"ta";s:6:"tamoul";s:2:"ta";s:8:"tamailis";s:2:"ta";s:8:"taimilis";s:2:"ta";s:10:"tamụlụ";s:2:"ta";s:9:"tamílska";s:2:"ta";s:11:"taṭamulit";s:2:"ta";s:10:"tamiilesch";s:2:"ta";s:9:"tamilesch";s:2:"ta";s:7:"tamilų";s:2:"ta";s:6:"tamilu";s:2:"ta";s:7:"tamoila";s:2:"ta";s:8:"tamilsch";s:2:"ta";s:6:"tâmil";s:2:"ta";s:10:"tamil simi";s:2:"ta";s:7:"tamilă";s:2:"ta";s:8:"tämûli";s:2:"ta";s:8:"tatamilt";s:2:"ta";s:10:"tamilčina";s:2:"ta";s:12:"tamilščina";s:2:"ta";s:6:"tamiil";s:2:"ta";s:6:"tamile";s:2:"ta";s:7:"tamilce";s:2:"ta";s:8:"tamilcha";s:2:"ta";s:13:"tiếng tamil";s:2:"ta";s:4:"tulu";s:3:"tcy";s:8:"touloueg";s:3:"tcy";s:10:"tuluština";s:3:"tcy";s:6:"toulou";s:3:"tcy";s:5:"tulų";s:3:"tcy";s:6:"tuluca";s:3:"tcy";s:6:"telugu";s:2:"te";s:6:"teluqu";s:2:"te";s:8:"telougou";s:2:"te";s:11:"telugština";s:2:"te";s:12:"telugšćina";s:2:"te";s:9:"telegugbe";s:2:"te";s:7:"telugua";s:2:"te";s:9:"teluguera";s:2:"te";s:9:"telugiskt";s:2:"te";s:9:"télougou";s:2:"te";s:6:"telegu";s:2:"te";s:11:"teileagúis";s:2:"te";s:8:"telúgú";s:2:"te";s:8:"telluuju";s:2:"te";s:7:"telugų";s:2:"te";s:11:"telugu simi";s:2:"te";s:10:"telugčina";s:2:"te";s:14:"telugijščina";s:2:"te";s:7:"teluugu";s:2:"te";s:6:"teluge";s:2:"te";s:9:"telugiska";s:2:"te";s:11:"telugu dili";s:2:"te";s:11:"telugvancha";s:2:"te";s:14:"tiếng telugu";s:2:"te";s:5:"tetun";s:3:"tet";s:5:"tetum";s:3:"tet";s:10:"tetum dili";s:3:"tet";s:11:"tetumština";s:3:"tet";s:7:"tetumeg";s:3:"tet";s:13:"tetum-sprache";s:3:"tet";s:8:"tetumgbe";s:3:"tet";s:6:"tetún";s:3:"tet";s:6:"tetumi";s:3:"tet";s:6:"tetuma";s:3:"tet";s:15:"tetum-schpraach";s:3:"tet";s:6:"tetúm";s:3:"tet";s:8:"tetumsch";s:3:"tet";s:13:"tetum-sprooch";s:3:"tet";s:6:"tetumu";s:3:"tet";s:6:"tétum";s:3:"tet";s:12:"tetumščina";s:3:"tet";s:9:"tadzjieks";s:2:"tg";s:14:"taxiquistanín";s:2:"tg";s:5:"tacik";s:2:"tg";s:6:"tadjik";s:2:"tg";s:10:"tadžički";s:2:"tg";s:13:"tádžičtina";s:2:"tg";s:7:"tajiceg";s:2:"tg";s:5:"tajik";s:2:"tg";s:12:"tadschikisch";s:2:"tg";s:15:"tadžikišćina";s:2:"tg";s:14:"tadzikistangbe";s:2:"tg";s:7:"taĝika";s:2:"tg";s:6:"tayiko";s:2:"tg";s:8:"tadžiki";s:2:"tg";s:13:"tajikistanera";s:2:"tg";s:9:"tadžikki";s:2:"tg";s:9:"tajikiskt";s:2:"tg";s:5:"tagic";s:2:"tg";s:11:"táidsícis";s:2:"tg";s:8:"taidigis";s:2:"tg";s:6:"taxico";s:2:"tg";s:14:"tadźikšćina";s:2:"tg";s:7:"tadzsik";s:2:"tg";s:10:"tadsjikska";s:2:"tg";s:6:"tagico";s:2:"tg";s:13:"tadschiikesch";s:2:"tg";s:12:"tadschikesch";s:2:"tg";s:9:"tadžikų";s:2:"tg";s:8:"tadžiku";s:2:"tg";s:6:"taġik";s:2:"tg";s:10:"tadsjikisk";s:2:"tg";s:11:"tadschiksch";s:2:"tg";s:10:"tatsjikisk";s:2:"tg";s:9:"tadżycki";s:2:"tg";s:7:"tajique";s:2:"tg";s:11:"tayiko simi";s:2:"tg";s:8:"tadjică";s:2:"tg";s:6:"tađik";s:2:"tg";s:12:"tadžičtina";s:2:"tg";s:13:"tadžiščina";s:2:"tg";s:10:"taxhikisht";s:2:"tg";s:11:"tadzjikiska";s:2:"tg";s:8:"tacikçe";s:2:"tg";s:8:"tojikcha";s:2:"tg";s:13:"tiếng tajik";s:2:"tg";s:23:"tajik (cyrillic script)";s:7:"tg-cyrl";s:7:"tojikī";s:7:"tg-latn";s:20:"tajik (latin script)";s:7:"tg-latn";s:4:"thai";s:2:"th";s:12:"taeland kasa";s:2:"th";s:10:"tailandés";s:2:"th";s:3:"tay";s:2:"th";s:7:"tayikan";s:2:"th";s:10:"tajlandski";s:2:"th";s:10:"tailandès";s:2:"th";s:10:"thajština";s:2:"th";s:10:"thailandsk";s:2:"th";s:13:"thailändisch";s:2:"th";s:15:"thailandšćina";s:2:"th";s:10:"tailandgbe";s:2:"th";s:4:"taja";s:2:"th";s:3:"tai";s:2:"th";s:12:"thailandiera";s:2:"th";s:4:"taay";s:2:"th";s:11:"thailendskt";s:2:"th";s:5:"thaï";s:2:"th";s:5:"thais";s:2:"th";s:11:"téalainnis";s:2:"th";s:6:"tàidh";s:2:"th";s:5:"taị";s:2:"th";s:10:"taílenska";s:2:"th";s:13:"taṭaylundit";s:2:"th";s:15:"thailandimiutut";s:2:"th";s:12:"tailändesch";s:2:"th";s:13:"thailännesch";s:2:"th";s:5:"tajų";s:2:"th";s:4:"taju";s:2:"th";s:8:"taioaney";s:2:"th";s:10:"tajlandiż";s:2:"th";s:6:"tajski";s:2:"th";s:10:"tailandês";s:2:"th";s:14:"tailandes simi";s:2:"th";s:10:"tailandais";s:2:"th";s:12:"thailandeză";s:2:"th";s:5:"thâi";s:2:"th";s:11:"tataylandit";s:2:"th";s:9:"thajčina";s:2:"th";s:10:"tajščina";s:2:"th";s:11:"taaylandays";s:2:"th";s:11:"tajlandisht";s:2:"th";s:12:"thailändska";s:2:"th";s:5:"tayca";s:2:"th";s:8:"taṭayt";s:2:"th";s:6:"taycha";s:2:"th";s:13:"tiếng thái";s:2:"th";s:8:"tigrinya";s:2:"ti";s:6:"tiqrin";s:2:"ti";s:8:"tigrigna";s:2:"ti";s:8:"tigrinja";s:2:"ti";s:14:"tigrinijština";s:2:"ti";s:11:"tigrinyagbe";s:2:"ti";s:7:"tigraja";s:2:"ti";s:8:"tigriña";s:2:"ti";s:10:"tigriñera";s:2:"ti";s:8:"tigrinis";s:2:"ti";s:10:"tigriyanci";s:2:"ti";s:13:"tigrinšćina";s:2:"ti";s:9:"tígrinja";s:2:"ti";s:7:"tigrino";s:2:"ti";s:15:"tijrenejaanesch";s:2:"ti";s:8:"tigrajų";s:2:"ti";s:8:"tigrinia";s:2:"ti";s:9:"tigrínia";s:2:"ti";s:13:"tigriña simi";s:2:"ti";s:8:"tigrină";s:2:"ti";s:8:"tigriňa";s:2:"ti";s:13:"tigrajščina";s:2:"ti";s:8:"tigrinje";s:2:"ti";s:9:"tigrincha";s:2:"ti";s:16:"tiếng tigrigya";s:2:"ti";s:11:"türkmençe";s:2:"tk";s:9:"turkmeens";s:2:"tk";s:9:"turcomanu";s:2:"tk";s:9:"türkmən";s:2:"tk";s:9:"turkmeneg";s:2:"tk";s:10:"turkmenski";s:2:"tk";s:7:"turcman";s:2:"tk";s:13:"turkmenština";s:2:"tk";s:9:"twrcmeneg";s:2:"tk";s:9:"turkmensk";s:2:"tk";s:11:"turkmenisch";s:2:"tk";s:15:"turkmeńšćina";s:2:"tk";s:10:"tɛkmengbe";s:2:"tk";s:7:"turkmen";s:2:"tk";s:8:"turkmena";s:2:"tk";s:9:"turcomano";s:2:"tk";s:10:"türkmeeni";s:2:"tk";s:11:"turkmeniera";s:2:"tk";s:9:"turkmeeni";s:2:"tk";s:10:"turkmenskt";s:2:"tk";s:9:"turkmène";s:2:"tk";s:7:"turcmen";s:2:"tk";s:12:"tuircméinis";s:2:"tk";s:10:"turcmanais";s:2:"tk";s:13:"tukmenistanci";s:2:"tk";s:14:"turkmenšćina";s:2:"tk";s:9:"türkmén";s:2:"tk";s:8:"turkmeno";s:2:"tk";s:11:"túrkmenska";s:2:"tk";s:10:"turcomanno";s:2:"tk";s:13:"törkmeenesch";s:2:"tk";s:11:"turkmenesch";s:2:"tk";s:10:"turkmėnų";s:2:"tk";s:10:"turkmēņu";s:2:"tk";s:8:"turkmeni";s:2:"tk";s:11:"turkmeensch";s:2:"tk";s:11:"turkmeński";s:2:"tk";s:9:"turcomeno";s:2:"tk";s:14:"turcomano simi";s:2:"tk";s:9:"turkmenă";s:2:"tk";s:13:"turkménčina";s:2:"tk";s:14:"turkmenščina";s:2:"tk";s:12:"turkumaanish";s:2:"tk";s:11:"turkmenisht";s:2:"tk";s:11:"turkmeniska";s:2:"tk";s:10:"türkmence";s:2:"tk";s:10:"turkmancha";s:2:"tk";s:12:"tiếng turk";s:2:"tk";s:7:"tagalog";s:3:"fil";s:12:"taqaloq dili";s:2:"tl";s:8:"tagalski";s:2:"tl";s:8:"tagàlog";s:2:"tl";s:9:"tagalogbe";s:2:"tl";s:8:"tagaloga";s:3:"fil";s:6:"tagalo";s:2:"tl";s:8:"tagalogi";s:2:"tl";s:11:"tagálaigis";s:2:"tl";s:9:"tagalogų";s:2:"tl";s:6:"tagalu";s:2:"tl";s:9:"tagalogue";s:2:"tl";s:10:"tagalčina";s:2:"tl";s:14:"tagalogščina";s:2:"tl";s:10:"takalotça";s:2:"tl";s:15:"tiếng tagalog";s:2:"tl";s:10:"talyština";s:3:"tly";s:7:"talisch";s:3:"tly";s:6:"talysh";s:3:"tly";s:7:"tališi";s:3:"tly";s:8:"taliscio";s:3:"tly";s:7:"talesch";s:3:"tly";s:8:"talyšų";s:3:"tly";s:8:"tałyski";s:3:"tly";s:10:"talışça";s:3:"tly";s:6:"tswana";s:2:"tn";s:6:"tsvana";s:2:"tn";s:14:"tswana-sprache";s:2:"tn";s:9:"tswanagbe";s:2:"tn";s:8:"tswanera";s:2:"tn";s:16:"tswana-schpraach";s:2:"tn";s:7:"tsúana";s:2:"tn";s:14:"tswana-sprooch";s:2:"tn";s:10:"tswančina";s:2:"tn";s:14:"tiếng tswana";s:2:"tn";s:8:"tongaans";s:2:"to";s:7:"tonganu";s:2:"to";s:5:"tonqa";s:2:"to";s:5:"tonga";s:3:"tog";s:9:"tongalès";s:2:"to";s:13:"tongánština";s:2:"to";s:6:"tongeg";s:2:"to";s:8:"tongansk";s:2:"to";s:9:"tongaisch";s:2:"to";s:13:"tonganšćina";s:2:"to";s:8:"tongagbe";s:2:"to";s:6:"tongan";s:2:"to";s:6:"tongaa";s:2:"to";s:7:"tongano";s:2:"to";s:7:"tongera";s:2:"to";s:9:"tonganskt";s:2:"to";s:8:"tonguien";s:2:"to";s:9:"tongaansk";s:2:"to";s:7:"tongais";s:2:"to";s:9:"tonganés";s:2:"to";s:9:"tonganski";s:2:"to";s:12:"tongašćina";s:2:"to";s:10:"tongverska";s:2:"to";s:12:"tongjaanesch";s:2:"to";s:9:"tongaesch";s:2:"to";s:8:"tonganų";s:2:"to";s:9:"tongiešu";s:2:"to";s:9:"tongaasch";s:2:"to";s:20:"tonga (tonga-øyane)";s:2:"to";s:9:"tonganês";s:2:"to";s:9:"tongčina";s:2:"to";s:11:"tongščina";s:2:"to";s:10:"tonganisht";s:2:"to";s:9:"tonganska";s:2:"to";s:7:"tongaca";s:2:"to";s:8:"tongocha";s:2:"to";s:13:"tiếng tonga";s:2:"to";s:9:"toki pona";s:8:"tokipona";s:9:"tok pisin";s:3:"tpi";s:14:"tok pisin dili";s:3:"tpi";s:11:"tok pisigbe";s:3:"tpi";s:10:"tok pisina";s:3:"tpi";s:9:"tok-pisin";s:3:"tpi";s:8:"tokpisin";s:3:"tpi";s:10:"took pisin";s:3:"tpi";s:9:"tokpisins";s:3:"tpi";s:17:"tiếng tok pisin";s:3:"tpi";s:8:"türkçe";s:2:"tr";s:5:"turks";s:2:"tr";s:12:"tɛɛki kasa";s:2:"tr";s:5:"turcu";s:2:"tr";s:5:"türk";s:2:"tr";s:9:"turikikan";s:2:"tr";s:6:"turkeg";s:2:"tr";s:6:"turski";s:2:"tr";s:4:"turc";s:2:"tr";s:10:"turečtina";s:2:"tr";s:6:"tyrceg";s:2:"tr";s:7:"tyrkisk";s:2:"tr";s:9:"türkisch";s:2:"tr";s:13:"turkojšćina";s:2:"tr";s:8:"tɛkigbe";s:2:"tr";s:7:"turkish";s:2:"tr";s:5:"turka";s:2:"tr";s:5:"turco";s:2:"tr";s:6:"türgi";s:2:"tr";s:8:"turkiera";s:2:"tr";s:8:"turkeere";s:2:"tr";s:6:"turkki";s:2:"tr";s:8:"turkiskt";s:2:"tr";s:7:"tuircis";s:2:"tr";s:7:"turcais";s:2:"tr";s:13:"turkowšćina";s:2:"tr";s:7:"török";s:2:"tr";s:5:"turki";s:2:"tr";s:10:"tọkiishi";s:2:"tr";s:9:"tyrkneska";s:2:"tr";s:10:"taṭurkit";s:2:"tr";s:11:"tyrkiskisut";s:2:"tr";s:9:"törkesch";s:2:"tr";s:9:"tierkesch";s:2:"tr";s:6:"turkų";s:2:"tr";s:5:"turku";s:2:"tr";s:6:"tiorka";s:2:"tr";s:4:"tork";s:2:"tr";s:8:"törksch";s:2:"tr";s:7:"turecki";s:2:"tr";s:10:"turco simi";s:2:"tr";s:4:"tirc";s:2:"tr";s:6:"turcă";s:2:"tr";s:8:"tûrûku";s:2:"tr";s:8:"taturkit";s:2:"tr";s:10:"turščina";s:2:"tr";s:8:"turqisht";s:2:"tr";s:8:"turkiska";s:2:"tr";s:7:"turkcha";s:2:"tr";s:23:"tiếng thổ nhĩ kỳ";s:2:"tr";s:11:"turojština";s:3:"tru";s:6:"turoyo";s:3:"tru";s:6:"turojo";s:3:"tru";s:7:"touroyo";s:3:"tru";s:6:"tsonga";s:2:"ts";s:8:"tsongaeg";s:2:"ts";s:9:"tsongagbe";s:2:"ts";s:8:"tsongera";s:2:"ts";s:14:"tiếng tsonga";s:2:"ts";s:7:"tataars";s:2:"tt";s:8:"tártaru";s:2:"tt";s:5:"tatar";s:2:"tt";s:8:"tatarski";s:2:"tt";s:6:"tàtar";s:2:"tt";s:11:"tatarština";s:2:"tt";s:7:"tatareg";s:2:"tt";s:8:"tatarisk";s:2:"tt";s:9:"tatarisch";s:2:"tt";s:12:"tataršćina";s:2:"tt";s:8:"tatargbe";s:2:"tt";s:6:"tatara";s:2:"tt";s:8:"tártaro";s:2:"tt";s:6:"tatari";s:2:"tt";s:8:"tatarera";s:2:"tt";s:7:"tataari";s:2:"tt";s:9:"tatariskt";s:2:"tt";s:6:"tartar";s:2:"tt";s:8:"tatairis";s:2:"tt";s:8:"tatarais";s:2:"tt";s:6:"tatár";s:2:"tt";s:8:"tatarska";s:2:"tt";s:6:"tataro";s:2:"tt";s:11:"tattaaresch";s:2:"tt";s:9:"tataresch";s:2:"tt";s:8:"totorių";s:2:"tt";s:7:"tatāru";s:2:"tt";s:9:"tataarsch";s:2:"tt";s:12:"tartaro simi";s:2:"tt";s:8:"tătară";s:2:"tt";s:11:"tatárčina";s:2:"tt";s:12:"tatarščina";s:2:"tt";s:9:"tatarisht";s:2:"tt";s:9:"tatariska";s:2:"tt";s:7:"tatarca";s:2:"tt";s:8:"tatarcha";s:2:"tt";s:13:"tiếng tatar";s:2:"tt";s:23:"tatar (cyrillic script)";s:7:"tt-cyrl";s:8:"tatarça";s:7:"tt-latn";s:20:"tatar (latin script)";s:7:"tt-latn";s:9:"toemboeka";s:3:"tum";s:7:"tumbuka";s:3:"tum";s:12:"tumbuka dili";s:3:"tum";s:12:"tumbukština";s:3:"tum";s:15:"tumbuka-sprache";s:3:"tum";s:9:"tumbukera";s:3:"tum";s:17:"tumbuka-schpraach";s:3:"tum";s:9:"túmbúka";s:3:"tum";s:15:"tumbuka-sprooch";s:3:"tum";s:8:"tumbukų";s:3:"tum";s:7:"tumbuku";s:3:"tum";s:13:"tumbukščina";s:3:"tum";s:15:"tiếng tumbuka";s:3:"tum";s:3:"twi";s:2:"tw";s:8:"tvi dili";s:2:"tw";s:3:"tvi";s:2:"tw";s:2:"tw";s:2:"tw";s:4:"tvii";s:2:"tw";s:4:"twia";s:2:"tw";s:7:"tíbhis";s:2:"tw";s:11:"tiwiniyanci";s:2:"tw";s:4:"tví";s:2:"tw";s:4:"tvī";s:2:"tw";s:7:"tiwiyan";s:2:"tw";s:11:"tiếng twi";s:2:"tw";s:8:"tahities";s:2:"ty";s:9:"tahitianu";s:2:"ty";s:11:"taxiti dili";s:2:"ty";s:10:"tahitianeg";s:2:"ty";s:11:"tahićanski";s:2:"ty";s:8:"tahitià";s:2:"ty";s:11:"tahitština";s:2:"ty";s:9:"tahitïeg";s:2:"ty";s:10:"tahitiansk";s:2:"ty";s:9:"tahitisch";s:2:"ty";s:13:"tahitišćina";s:2:"ty";s:9:"tahitigbe";s:2:"ty";s:8:"tahitian";s:2:"ty";s:9:"tahitiano";s:2:"ty";s:6:"tahiti";s:2:"ty";s:9:"tahitiera";s:2:"ty";s:9:"tahitiskt";s:2:"ty";s:8:"tahitien";s:2:"ty";s:8:"tahitysk";s:2:"ty";s:9:"taihítis";s:2:"ty";s:11:"tahítíska";s:2:"ty";s:8:"taitiano";s:2:"ty";s:9:"tahitesch";s:2:"ty";s:11:"taitiečių";s:2:"ty";s:9:"taitiešu";s:2:"ty";s:9:"taħitjan";s:2:"ty";s:8:"tahitisk";s:2:"ty";s:8:"tahitsch";s:2:"ty";s:10:"tahitiaans";s:2:"ty";s:11:"tahitański";s:2:"ty";s:10:"tahitiană";s:2:"ty";s:12:"tahitigiella";s:2:"ty";s:10:"tahitčina";s:2:"ty";s:12:"tahitščina";s:2:"ty";s:9:"tahitiska";s:2:"ty";s:11:"tahiti dili";s:2:"ty";s:14:"tiếng tahiti";s:2:"ty";s:9:"tuvinianu";s:3:"tyv";s:13:"tuvinyan dili";s:3:"tyv";s:5:"touva";s:3:"tyv";s:10:"tuvinijski";s:3:"tyv";s:8:"tuvinià";s:3:"tyv";s:11:"tuvinština";s:3:"tyv";s:8:"tuvinian";s:3:"tyv";s:9:"tuwinisch";s:3:"tyv";s:10:"tuviniagbe";s:3:"tyv";s:9:"tuviniano";s:3:"tyv";s:5:"tõva";s:3:"tyv";s:4:"tuva";s:3:"tyv";s:8:"tuvinysk";s:3:"tyv";s:5:"tuvai";s:3:"tyv";s:7:"tuvinia";s:3:"tyv";s:10:"túvínska";s:3:"tyv";s:9:"tuwinesch";s:3:"tyv";s:6:"tuvių";s:3:"tyv";s:8:"tuviešu";s:3:"tyv";s:8:"tuvinjan";s:3:"tyv";s:8:"tuvinisk";s:3:"tyv";s:8:"tuwinsch";s:3:"tyv";s:8:"toevaans";s:3:"tyv";s:9:"tuwiński";s:3:"tyv";s:7:"tuvană";s:3:"tyv";s:11:"tuviančina";s:3:"tyv";s:12:"tuvinščina";s:3:"tyv";s:9:"tuviniska";s:3:"tyv";s:6:"tuvaca";s:3:"tyv";s:16:"tiếng tuvinian";s:3:"tyv";s:27:"tamazight del atlas central";s:3:"tzm";s:28:"tamazight (střední maroko)";s:3:"tzm";s:31:"tamazight del marruecos central";s:3:"tzm";s:28:"tamazight (sintraal-marokko)";s:3:"tzm";s:28:"tamazight meadhan na h-atlas";s:3:"tzm";s:27:"tamazight marroquí central";s:3:"tzm";s:29:"tamazight (srjedźny marokko)";s:3:"tzm";s:23:"tamazight maroko tengah";s:3:"tzm";s:22:"tamazight atlas tengah";s:3:"tzm";s:28:"tamazight (centraal-marokko)";s:3:"tzm";s:26:"tamazight do atlas central";s:3:"tzm";s:27:"tamazight central marocană";s:3:"tzm";s:25:"tamašek (stredomarocký)";s:3:"tzm";s:24:"tamašek (srednji atlas)";s:3:"tzm";s:29:"tamaziatishte atlase qendrore";s:3:"tzm";s:9:"tamaziɣt";s:3:"tzm";s:39:"tiếng tamazight miền trung ma-rốc";s:3:"tzm";s:14:"tiếng udmurt";s:3:"udm";s:14:"tiếng uyghur";s:2:"ug";s:8:"tukranit";s:2:"uk";s:15:"tiếng ucraina";s:2:"uk";s:6:"turdut";s:2:"ur";s:12:"tiếng uđu";s:2:"ur";s:13:"tiếng uzbek";s:2:"uz";s:9:"tshivenda";s:2:"ve";s:11:"tshivenḓa";s:2:"ve";s:13:"tiếng venda";s:2:"ve";s:14:"tiếng việt";s:2:"vi";s:13:"tabyiṭnamit";s:2:"vi";s:10:"tafitnamit";s:2:"vi";s:12:"taviṭnamit";s:2:"vi";s:16:"tiếng volapük";s:2:"vo";s:13:"tiếng votic";s:3:"vot";s:15:"tiếng walloon";s:2:"wa";s:13:"tiếng waray";s:3:"war";s:13:"tiếng wolof";s:2:"wo";s:14:"tiếng kalmyk";s:3:"xal";s:13:"tiếng xhosa";s:2:"xh";s:14:"tiếng y-đit";s:2:"yi";s:9:"tayurubit";s:2:"yo";s:8:"tayrubat";s:2:"yo";s:9:"tayurubat";s:2:"yo";s:14:"tiếng yoruba";s:2:"yo";s:22:"tiếng quảng Đông";s:3:"yue";s:8:"tšuangi";s:2:"za";s:14:"tiếng zhuang";s:2:"za";s:9:"tsieineeg";s:2:"zh";s:7:"txinera";s:2:"zh";s:21:"tacinwat, tamundarint";s:2:"zh";s:8:"tacinwit";s:2:"zh";s:17:"tacinwit,mandarin";s:2:"zh";s:13:"tiếng trung";s:2:"zh";s:18:"tsieineeg symledig";s:7:"zh-hans";s:9:"tsainagbe";s:7:"zh-hans";s:15:"txinera soildua";s:7:"zh-hans";s:22:"tsieineeg traddodiadol";s:7:"zh-hant";s:21:"traditionelt kinesisk";s:7:"zh-hant";s:19:"traditional chinese";s:7:"zh-hant";s:20:"txinera tradizionala";s:7:"zh-hant";s:20:"tradisjoneel sineesk";s:7:"zh-hant";s:25:"tradizionells chineesisch";s:7:"zh-hant";s:16:"tradicinė kinų";s:7:"zh-hant";s:21:"tradisjonell kinesisk";s:7:"zh-hant";s:24:"traditschonell chineesch";s:7:"zh-hant";s:20:"traditioneel chinees";s:7:"zh-hant";s:26:"tradicionalna kitajščina";s:7:"zh-hant";s:22:"traditionell kinesiska";s:7:"zh-hant";s:7:"tazulut";s:2:"zu";s:12:"tiếng zulu";s:2:"zu";s:13:"tiếng acoli";s:3:"ach";s:13:"tiếng aghem";s:3:"agq";s:31:"tiếng Ả rập hiện đại";s:6:"ar-001";s:11:"tiếng asu";s:3:"asa";s:15:"బెంబా";s:3:"bem";s:13:"tiếng bemba";s:3:"bem";s:12:"బీనా";s:3:"bez";s:12:"tiếng bena";s:3:"bez";s:12:"బోడో";s:3:"brx";s:12:"tiếng bodo";s:3:"brx";s:13:"tiếng chiga";s:3:"cgg";s:14:"tiếng coptic";s:3:"cop";s:5:"taita";s:3:"dav";s:7:"taitera";s:3:"dav";s:6:"taíta";s:3:"dav";s:6:"taitų";s:3:"dav";s:5:"taitu";s:3:"dav";s:13:"taitajščina";s:3:"dav";s:8:"taitisht";s:3:"dav";s:7:"taitcha";s:3:"dav";s:13:"tiếng taita";s:3:"dav";s:13:"tiếng zarma";s:3:"dje";s:5:"tuala";s:3:"dua";s:13:"tiếng duala";s:3:"dua";s:18:"tiếng jola-fonyi";s:3:"dyo";s:12:"tiếng embu";s:3:"ebu";s:12:"tiếng efik";s:3:"efi";s:21:"tiếng ai cập cổ";s:3:"egy";s:16:"tiếng philipin";s:3:"fil";s:10:"tiếng ga";s:3:"gaa";s:13:"tiếng gusii";s:3:"guz";s:15:"tiếng hittite";s:3:"hit";s:14:"tiếng ngomba";s:3:"jgo";s:15:"tiếng machame";s:3:"jmc";s:13:"tiếng kamba";s:3:"kam";s:15:"tiếng makonde";s:3:"kde";s:20:"tiếng kabuverdianu";s:3:"kea";s:16:"timbuktu-songhoy";s:3:"khq";s:20:"tiếng koyra chiini";s:3:"khq";s:16:"tiếng kalenjin";s:3:"kln";s:15:"tiếng konkani";s:3:"kok";s:14:"tiếng kurukh";s:3:"kru";s:16:"tiếng shambala";s:3:"ksb";s:15:"బాఫియ";s:3:"ksf";s:13:"tiếng bafia";s:3:"ksf";s:13:"tiếng langi";s:3:"lag";s:14:"tiếng lakota";s:3:"lkt";s:20:"tiếng luba-katanga";s:2:"lu";s:18:"tiếng luba-lulua";s:3:"lua";s:11:"tiếng luo";s:3:"luo";s:13:"tiếng luyia";s:3:"luy";s:13:"tiếng masai";s:3:"mas";s:12:"tiếng meru";s:3:"mer";s:16:"tiếng morisyen";s:3:"mfe";s:22:"tiếng makhuwa-meetto";s:3:"mgh";s:15:"tiếng meta’";s:3:"mgo";s:14:"tiếng mohawk";s:3:"moh";s:15:"tiếng mundang";s:3:"mua";s:21:"többszörös nyelvek";s:3:"mul";s:28:"బహుళ భాషలు";s:3:"mul";s:12:"နာမာ";s:3:"naq";s:12:"tiếng nama";s:3:"naq";s:28:"tiếng ndebele miền bắc";s:2:"nd";s:15:"tiếng flemish";s:5:"nl-be";s:14:"tiếng kwasio";s:3:"nmg";s:12:"နကို";s:3:"nqo";s:14:"tiếng n’ko";s:3:"nqo";s:26:"tiếng ndebele miền nam";s:2:"nr";s:12:"နူအာ";s:3:"nus";s:12:"tiếng nuer";s:3:"nus";s:16:"tiếng nyankole";s:3:"nyn";s:17:"tiếng phoenicia";s:3:"phn";s:17:"tiếng kʼicheʼ";s:3:"quc";s:15:"tiếng moldova";s:5:"ro-md";s:13:"tiếng rombo";s:3:"rof";s:11:"tiếng rwa";s:3:"rwk";s:15:"tiếng samburu";s:3:"saq";s:13:"tiếng sangu";s:3:"sbp";s:12:"tiếng sena";s:3:"seh";s:23:"tiếng koyraboro senni";s:3:"ses";s:17:"tiếng lule sami";s:3:"smj";s:18:"tiếng inari sami";s:3:"smn";s:18:"tiếng skolt sami";s:3:"sms";s:13:"tiếng cômo";s:3:"swb";s:21:"tiếng swahili congo";s:3:"swc";s:4:"teso";s:3:"teo";s:7:"tesoera";s:3:"teo";s:6:"teszó";s:3:"teo";s:5:"tesó";s:3:"teo";s:8:"tezoisht";s:3:"teo";s:9:"tesoancha";s:3:"teo";s:12:"tiếng teso";s:3:"teo";s:15:"tiếng klingon";s:3:"tlh";s:7:"tasawaq";s:3:"twq";s:7:"tasavaq";s:3:"twq";s:7:"tasavak";s:3:"twq";s:10:"tasawakgbe";s:3:"twq";s:7:"taswaqi";s:3:"twq";s:8:"tasawaqa";s:3:"twq";s:9:"tasavakų";s:3:"twq";s:8:"tasavaku";s:3:"twq";s:10:"tasaukisht";s:3:"twq";s:10:"tosovoqcha";s:3:"twq";s:15:"tiếng tasawaq";s:3:"twq";s:16:"teanga anaithnid";s:3:"und";s:11:"tiếng vai";s:3:"vai";s:13:"tiếng vunjo";s:3:"vun";s:12:"tiếng soga";s:3:"xog";s:32:"tamazight estándar de marruecos";s:3:"zgh";s:6:"tamazi";s:3:"zgh";s:24:"tamacheg maroko standart";s:3:"zgh";s:32:"tamazight (standardní marocký)";s:3:"zgh";s:24:"tamazight safonol moroco";s:3:"zgh";s:18:"tamasikti (maroko)";s:3:"zgh";s:20:"tamazight estandarra";s:3:"zgh";s:28:"tamazight stannardach moroco";s:3:"zgh";s:31:"tamazight de marrocos estándar";s:3:"zgh";s:24:"tamazight maroko standar";s:3:"zgh";s:30:"tamazight del marocco standard";s:3:"zgh";s:27:"tamazight maghribi standard";s:3:"zgh";s:29:"tamazight padrão de marrocos";s:3:"zgh";s:28:"tamazight marroquino padrão";s:3:"zgh";s:28:"tamazight standard marocană";s:3:"zgh";s:32:"tamašek (štandardný marocký)";s:3:"zgh";s:29:"tamazishte standarde marokene";s:3:"zgh";s:27:"tamaziti msingi ya kimoroko";s:3:"zgh";s:40:"tiếng tamazight chuẩn của ma-rốc";s:3:"zgh";s:27:"tidak ada konten linguistik";s:3:"zxx";s:26:"tiada kandungan linguistik";s:3:"zxx";s:17:"til tarkibi yoʻq";s:3:"zxx";s:18:"బ్లిన్";s:3:"byn";s:12:"tiếng blin";s:3:"byn";s:18:"tiếng anh (mỹ)";s:5:"en-us";s:35:"tiếng tây ban nha (mỹ la tinh)";s:6:"es-419";s:12:"tiếng geez";s:3:"gez";s:14:"tiếng sidamo";s:3:"sid";s:5:"tigre";s:3:"tig";s:10:"tiqre dili";s:3:"tig";s:9:"tigreaneg";s:3:"tig";s:12:"tigrejština";s:3:"tig";s:6:"tigré";s:3:"tig";s:6:"tigree";s:3:"tig";s:9:"tigriški";s:3:"tig";s:6:"tígre";s:3:"tig";s:5:"tigru";s:3:"tig";s:11:"tigrejčina";s:3:"tig";s:13:"tigrejščina";s:3:"tig";s:13:"tiếng tigre";s:3:"tig";s:15:"tiếng adangme";s:3:"ada";s:14:"tiếng adyghe";s:3:"ady";s:15:"tiếng avestan";s:2:"ae";s:16:"tiếng afrihili";s:3:"afh";s:12:"tiếng ainu";s:3:"ain";s:15:"tiếng akkadia";s:3:"akk";s:13:"tiếng aleut";s:3:"ale";s:24:"tiếng altai miền nam";s:3:"alt";s:15:"tiếng arapaho";s:3:"arp";s:14:"tiếng arawak";s:3:"arw";s:14:"tiếng awadhi";s:3:"awa";s:18:"బాలుచి";s:3:"bal";s:15:"tiếng baluchi";s:3:"bal";s:24:"బాలినీస్";s:3:"ban";s:12:"tiếng bali";s:3:"ban";s:9:"బసా";s:3:"bas";s:13:"tiếng basaa";s:3:"bas";s:13:"tiếng bamun";s:3:"bax";s:12:"బేజా";s:3:"bej";s:12:"tiếng beja";s:3:"bej";s:18:"బికోల్";s:3:"bik";s:13:"tiếng bikol";s:3:"bik";s:12:"బిని";s:3:"bin";s:12:"tiếng bini";s:3:"bin";s:15:"tiếng siksika";s:3:"bla";s:18:"బ్రాజ్";s:3:"bra";s:12:"tiếng braj";s:3:"bra";s:14:"tiếng akoose";s:3:"bss";s:21:"బురియట్";s:3:"bua";s:14:"tiếng buriat";s:3:"bua";s:13:"tiếng caddo";s:3:"cad";s:13:"tiếng carib";s:3:"car";s:13:"tiếng atsam";s:3:"cch";s:7:"txibtxa";s:3:"chb";s:9:"tšibtša";s:3:"chb";s:11:"tschibtscha";s:3:"chb";s:15:"tiếng chibcha";s:3:"chb";s:8:"txagatai";s:3:"chg";s:13:"tschagataisch";s:3:"chg";s:9:"tšagatai";s:3:"chg";s:11:"tchaghataï";s:3:"chg";s:13:"tschagataesch";s:3:"chg";s:11:"tschagataic";s:3:"chg";s:16:"tiếng chagatai";s:3:"chg";s:10:"trukesisch";s:3:"chk";s:10:"tsukesegbe";s:3:"chk";s:7:"trukés";s:3:"chk";s:7:"tšuugi";s:3:"chk";s:10:"trukesesch";s:3:"chk";s:9:"trukeesch";s:3:"chk";s:4:"truk";s:3:"chk";s:12:"trukeščina";s:3:"chk";s:13:"tiếng chuuk";s:3:"chk";s:15:"tscheremissisch";s:3:"chm";s:11:"tsetsniagbe";s:3:"chm";s:12:"tiếng mari";s:3:"chm";s:17:"tšinuki žargoon";s:3:"chn";s:9:"tšipevai";s:3:"chp";s:17:"tiếng chipewyan";s:3:"chp";s:6:"takota";s:3:"dak";s:14:"tiếng dakota";s:3:"dak";s:11:"targiinisch";s:3:"dar";s:14:"tiếng dargwa";s:3:"dar";s:16:"tiếng delaware";s:3:"del";s:13:"tiếng slave";s:3:"den";s:6:"togrib";s:3:"dgr";s:14:"tiếng dogrib";s:3:"dgr";s:5:"tinka";s:3:"din";s:13:"tiếng dinka";s:3:"din";s:5:"togri";s:3:"doi";s:13:"tiếng dogri";s:3:"doi";s:26:"tiếng hà lan trung cổ";s:3:"dum";s:5:"tiula";s:3:"dyu";s:13:"tiếng dyula";s:3:"dyu";s:14:"tiếng dazaga";s:3:"dzg";s:14:"tiếng ekajuk";s:3:"eka";s:15:"tiếng elamite";s:3:"elx";s:22:"tiếng anh trung cổ";s:3:"enm";s:14:"tiếng ewondo";s:3:"ewo";s:12:"tiếng fang";s:3:"fan";s:13:"tiếng fanti";s:3:"fat";s:11:"tiếng fon";s:3:"fon";s:24:"tiếng pháp trung cổ";s:3:"frm";s:18:"tiếng pháp cổ";s:3:"fro";s:29:"tiếng frisian miền Đông";s:3:"frs";s:12:"tiếng gayo";s:3:"gay";s:13:"tiếng gbaya";s:3:"gba";s:15:"tiếng gilbert";s:3:"gil";s:18:"tedesco medio alto";s:3:"gmh";s:14:"tudestg mesaun";s:3:"gmh";s:38:"tiếng thượng giéc-man trung cổ";s:3:"gmh";s:19:"tedesco antico alto";s:3:"goh";s:32:"tiếng thượng giéc-man cổ";s:3:"goh";s:13:"tiếng gondi";s:3:"gon";s:17:"tiếng gorontalo";s:3:"gor";s:13:"tiếng grebo";s:3:"grb";s:17:"tiếng gwichʼin";s:3:"gwi";s:13:"tiếng haida";s:3:"hai";s:14:"tiếng hmông";s:3:"hmn";s:12:"tiếng hupa";s:3:"hup";s:12:"tiếng iban";s:3:"iba";s:20:"tiếng judeo-ba tư";s:3:"jpr";s:23:"tiếng judeo-Ả rập";s:3:"jrb";s:14:"tiếng kachin";s:3:"kac";s:11:"tiếng jju";s:3:"kaj";s:12:"tiếng kawi";s:3:"kaw";s:15:"tiếng kanembu";s:3:"kbl";s:12:"tiếng koro";s:3:"kfo";s:13:"tiếng khasi";s:3:"kha";s:14:"tiếng khotan";s:3:"kho";s:16:"tiếng kimbundu";s:3:"kmb";s:14:"tiếng kosrae";s:3:"kos";s:14:"tiếng kpelle";s:3:"kpe";s:16:"tiếng karelian";s:3:"krl";s:13:"tiếng kumyk";s:3:"kum";s:15:"tiếng kutenai";s:3:"kut";s:14:"tiếng lahnda";s:3:"lah";s:13:"tiếng lamba";s:3:"lam";s:13:"tiếng mongo";s:3:"lol";s:15:"tiếng luiseno";s:3:"lui";s:13:"tiếng lunda";s:3:"lun";s:14:"tiếng madura";s:3:"mad";s:14:"tiếng magahi";s:3:"mag";s:15:"tiếng makasar";s:3:"mak";s:16:"tiếng mandingo";s:3:"man";s:12:"tiếng maba";s:3:"mde";s:14:"tiếng mandar";s:3:"mdr";s:13:"tiếng mende";s:3:"men";s:25:"tiếng ai-len trung cổ";s:3:"mga";s:14:"tiếng micmac";s:3:"mic";s:14:"tiếng manchu";s:3:"mnc";s:16:"tiếng manipuri";s:3:"mni";s:13:"tiếng mossi";s:3:"mos";s:15:"tiếng marwari";s:3:"mwr";s:12:"tiếng nias";s:3:"nia";s:13:"tiếng nogai";s:3:"nog";s:18:"tiếng na uy cổ";s:3:"non";s:27:"tiếng newari cổ điển";s:3:"nwc";s:16:"tiếng nyamwezi";s:3:"nym";s:13:"tiếng nyoro";s:3:"nyo";s:13:"tiếng nzima";s:3:"nzi";s:14:"tiếng ojibwa";s:2:"oj";s:13:"tiếng osage";s:3:"osa";s:13:"turcu otomanu";s:3:"ota";s:13:"turkeg otoman";s:3:"ota";s:11:"turc otomà";s:3:"ota";s:22:"turečtina (osmanská)";s:3:"ota";s:13:"tyrceg otoman";s:3:"ota";s:13:"turco otomano";s:3:"ota";s:12:"turc ottoman";s:3:"ota";s:11:"turc otoman";s:3:"ota";s:17:"turcais otomanach";s:3:"ota";s:18:"turski - otomanski";s:3:"ota";s:12:"turki osmani";s:3:"ota";s:19:"tyrkneska, ottóman";s:3:"ota";s:14:"turco ottomano";s:3:"ota";s:13:"turku osmaņu";s:3:"ota";s:21:"tork (imperu ottoman)";s:3:"ota";s:12:"tirc ottoman";s:3:"ota";s:15:"turcă otomană";s:3:"ota";s:31:"tiếng thổ nhĩ kỳ ottoman";s:3:"ota";s:15:"tiếng pahlavi";s:3:"pal";s:15:"tiếng palauan";s:3:"pau";s:19:"tiếng ba tư cổ";s:3:"peo";s:17:"tiếng pohnpeian";s:3:"pon";s:23:"tiếng provençal cổ";s:3:"pro";s:18:"tiếng rajasthani";s:3:"raj";s:15:"tiếng rapanui";s:3:"rap";s:18:"tiếng rarotongan";s:3:"rar";s:7:"tzigane";s:3:"rom";s:14:"tiếng romany";s:3:"rom";s:15:"tiếng sandawe";s:3:"sad";s:25:"tiếng samaritan aramaic";s:3:"sam";s:13:"tiếng sasak";s:3:"sas";s:15:"tiếng ngambay";s:3:"sba";s:14:"tiếng selkup";s:3:"sel";s:19:"tiếng ai-len cổ";s:3:"sga";s:12:"tiếng shan";s:3:"shn";s:16:"tchadisk-arabisk";s:3:"shu";s:19:"tschadisch-arabisch";s:3:"shu";s:15:"tšaadi araabia";s:3:"shu";s:13:"tšadinarabia";s:3:"shu";s:16:"tsjadysk arabysk";s:3:"shu";s:19:"tschadesch-arabesch";s:3:"shu";s:13:"tsjad-arabisk";s:3:"shu";s:18:"tsjadisch arabisch";s:3:"shu";s:22:"tiếng Ả-rập chad";s:3:"shu";s:15:"tiếng soninke";s:3:"snk";s:15:"tiếng sogdien";s:3:"sog";s:13:"tiếng serer";s:3:"srr";s:14:"tiếng sukuma";s:3:"suk";s:12:"tiếng susu";s:3:"sus";s:15:"tiếng sumeria";s:3:"sux";s:26:"tiếng syria cổ điển";s:3:"syc";s:14:"tiếng syriac";s:3:"syr";s:5:"timne";s:3:"tem";s:10:"timne dili";s:3:"tem";s:5:"temne";s:3:"tem";s:6:"timneg";s:3:"tem";s:6:"tímne";s:3:"tem";s:5:"temnu";s:3:"tem";s:13:"temnejščina";s:3:"tem";s:13:"tiếng timne";s:3:"tem";s:11:"tereno dili";s:3:"ter";s:6:"tereno";s:3:"ter";s:6:"terena";s:3:"ter";s:14:"tereno-sprache";s:3:"ter";s:16:"tereno-schpraach";s:3:"ter";s:7:"terenó";s:3:"ter";s:14:"tereno-sprooch";s:3:"ter";s:14:"tiếng tereno";s:3:"ter";s:3:"tiv";s:3:"tiv";s:8:"tiv dili";s:3:"tiv";s:9:"tivština";s:3:"tiv";s:4:"tivi";s:3:"tiv";s:11:"tiv-sprache";s:3:"tiv";s:13:"tiv-schpraach";s:3:"tiv";s:4:"tív";s:3:"tiv";s:11:"tiv-sprooch";s:3:"tiv";s:4:"tivu";s:3:"tiv";s:3:"tiw";s:3:"tiv";s:10:"tivščina";s:3:"tiv";s:11:"tiếng tiv";s:3:"tiv";s:7:"tokelau";s:3:"tkl";s:12:"tokelay dili";s:3:"tkl";s:10:"tokelauès";s:3:"tkl";s:13:"tokelauština";s:3:"tkl";s:13:"tokelauanisch";s:3:"tkl";s:10:"tokelaugbe";s:3:"tkl";s:10:"tokelauano";s:3:"tkl";s:8:"tokelaus";s:3:"tkl";s:11:"tokelaunski";s:3:"tkl";s:8:"tokelaui";s:3:"tkl";s:11:"tókeláska";s:3:"tkl";s:13:"tokelauanesch";s:3:"tkl";s:12:"tokelaviešu";s:3:"tkl";s:10:"tokelausch";s:3:"tkl";s:11:"toquelauano";s:3:"tkl";s:12:"tokelaučina";s:3:"tkl";s:14:"tokelavščina";s:3:"tkl";s:11:"tokelauiska";s:3:"tkl";s:15:"tiếng tokelau";s:3:"tkl";s:12:"tlinqit dili";s:3:"tli";s:7:"tinglit";s:3:"tli";s:7:"tlingit";s:3:"tli";s:15:"tlingit-sprache";s:3:"tli";s:8:"tlingiti";s:3:"tli";s:17:"tlingit-schpraach";s:3:"tli";s:15:"tlingit-sprooch";s:3:"tli";s:8:"tlinkitu";s:3:"tli";s:9:"tlinguite";s:3:"tli";s:12:"tlingitčina";s:3:"tli";s:14:"tlingitščina";s:3:"tli";s:15:"tiếng tlingit";s:3:"tli";s:8:"tamashek";s:3:"tmh";s:13:"tamaşek dili";s:3:"tmh";s:8:"tamacheg";s:3:"tmh";s:8:"tamašek";s:3:"tmh";s:10:"tamasheceg";s:3:"tmh";s:7:"tamaseq";s:3:"tmh";s:9:"tamašeki";s:3:"tmh";s:8:"tamacheq";s:3:"tmh";s:7:"tamasek";s:3:"tmh";s:8:"tamasjek";s:3:"tmh";s:7:"tuaregu";s:3:"tmh";s:7:"tamaxek";s:3:"tmh";s:9:"tamaschek";s:3:"tmh";s:8:"tamaszek";s:3:"tmh";s:9:"tamaxeque";s:3:"tmh";s:8:"tamasheq";s:3:"tmh";s:13:"tamajaščina";s:3:"tmh";s:8:"tamaşek";s:3:"tmh";s:16:"tiếng tamashek";s:3:"tmh";s:19:"tonžština (nyasa)";s:3:"tog";s:14:"tsonga-sprache";s:3:"tog";s:15:"tonga del nyasa";s:3:"tog";s:9:"tšitonga";s:3:"tog";s:11:"tonga nyasa";s:3:"tog";s:16:"tsonga-schpraach";s:3:"tog";s:18:"tongverska (nyasa)";s:3:"tog";s:14:"tsonga-sprooch";s:3:"tog";s:13:"tonga (njasa)";s:3:"tog";s:13:"tonga (nyasa)";s:3:"tog";s:13:"tonga (niasa)";s:3:"tog";s:8:"toganês";s:3:"tog";s:18:"tonganês de nyasa";s:3:"tog";s:19:"tiếng nyasa tonga";s:3:"tog";s:9:"tsimshian";s:3:"tsi";s:9:"tsimšian";s:3:"tsi";s:9:"tsimshià";s:3:"tsi";s:19:"tsimšijské jazyky";s:3:"tsi";s:9:"tsimshisk";s:3:"tsi";s:17:"tsimshian-sprache";s:3:"tsi";s:10:"tsimshiano";s:3:"tsi";s:8:"tšimši";s:3:"tsi";s:7:"tsimši";s:3:"tsi";s:19:"tsimshian-schpraach";s:3:"tsi";s:8:"tsimshia";s:3:"tsi";s:10:"tsimsíska";s:3:"tsi";s:17:"tsimshian-sprooch";s:3:"tsi";s:19:"tsimshijské jazyky";s:3:"tsi";s:11:"tsimščina";s:3:"tsi";s:17:"tiếng tsimshian";s:3:"tsi";s:6:"tuvalu";s:3:"tvl";s:11:"tuvalu dili";s:3:"tvl";s:8:"tuvaluà";s:3:"tvl";s:11:"tuvalština";s:3:"tvl";s:8:"twfalweg";s:3:"tvl";s:9:"tuvalugbe";s:3:"tvl";s:9:"tuvaluano";s:3:"tvl";s:11:"tuvaluaansk";s:3:"tvl";s:11:"tuvaluanski";s:3:"tvl";s:11:"túvalúska";s:3:"tvl";s:10:"tuvaliešu";s:3:"tvl";s:10:"tuvaluaans";s:3:"tvl";s:10:"tuvalčina";s:3:"tvl";s:14:"tuvalujščina";s:3:"tvl";s:11:"tuvaluanska";s:3:"tvl";s:14:"tiếng tuvalu";s:3:"tvl";s:16:"tiếng ugaritic";s:3:"uga";s:15:"tiếng umbundu";s:3:"umb";s:14:"tiếng walamo";s:3:"wal";s:13:"tiếng washo";s:3:"was";s:11:"tiếng yao";s:3:"yao";s:11:"tiếng yap";s:3:"yap";s:15:"tiếng yangben";s:3:"yav";s:15:"tiếng zapotec";s:3:"zap";s:36:"బ్లిసింబల్స్";s:3:"zbl";s:14:"tiếng zenaga";s:3:"zen";s:12:"tiếng zuni";s:3:"zun";s:12:"tiếng zaza";s:3:"zza";s:20:"tunesisches arabisch";s:3:"aeb";s:22:"tunisian spoken arabic";s:3:"aeb";s:14:"tunisianarabia";s:3:"aeb";s:20:"tonehsesch arahbesch";s:3:"aeb";s:19:"tunesescht arabesch";s:3:"aeb";s:13:"tuniso arabų";s:3:"aeb";s:18:"tunesisch arabisch";s:3:"aeb";s:18:"tunezyjski arabski";s:3:"aeb";s:17:"tunisisk arabiska";s:3:"aeb";s:16:"tunus arapçası";s:3:"aeb";s:15:"tiếng ghomala";s:3:"bbj";s:13:"tiếng bafut";s:3:"bfd";s:11:"tiếng kom";s:3:"bkm";s:12:"tiếng bulu";s:3:"bum";s:15:"tiếng medumba";s:3:"byv";s:14:"tiếng cayuga";s:3:"cay";s:14:"tiếng ibibio";s:3:"ibb";s:4:"tyap";s:3:"kcg";s:10:"tiyap dili";s:3:"kcg";s:4:"tjap";s:3:"kcg";s:5:"tyapi";s:3:"kcg";s:22:"tjapska nigerijščina";s:3:"kcg";s:12:"tiếng tyap";s:3:"kcg";s:12:"tiếng kako";s:3:"kkj";s:12:"tiếng mafa";s:3:"maf";s:13:"tiếng myene";s:3:"mye";s:17:"tiếng ngiemboon";s:3:"nnh";s:14:"tiếng seneca";s:3:"see";s:12:"tiếng saho";s:3:"ssy";s:6:"taroko";s:3:"trv";s:7:"tarokó";s:3:"trv";s:14:"tiếng taroko";s:3:"trv";s:13:"tiếng yemba";s:3:"ybb";s:14:"tiếng walser";s:3:"wae";s:11:"tsachurisch";s:3:"tkr";s:7:"tsakhur";s:3:"tkr";s:7:"tsahuri";s:3:"tkr";s:11:"tsachuresch";s:3:"tkr";s:8:"tsakurų";s:3:"tkr";s:12:"tsakonština";s:3:"tsd";s:10:"tsakonisch";s:3:"tsd";s:9:"tsakonian";s:3:"tsd";s:8:"tsakonia";s:3:"tsd";s:9:"tsakonien";s:3:"tsd";s:10:"tsakonesch";s:3:"tsd";s:8:"tsakonų";s:3:"tsd";s:10:"tsakodiska";s:3:"tsd";s:8:"tsakonca";s:3:"tsd";s:9:"tatština";s:3:"ttt";s:7:"tatisch";s:3:"ttt";s:4:"tati";s:3:"ttt";s:14:"tati caucasien";s:3:"ttt";s:10:"tat muslim";s:3:"ttt";s:12:"tat islamico";s:3:"ttt";s:7:"tatesch";s:3:"ttt";s:5:"tacki";s:3:"ttt";s:6:"tatça";s:3:"ttt";s:12:"tekenspraken";s:3:"sgn";s:11:"thaispraken";s:3:"tai";s:9:"tai jezik";s:3:"tai";s:12:"tupi-spraken";s:3:"tup";s:10:"tupi jezik";s:3:"tup";}i:463;a:81:{s:9:"阿法文";s:2:"aa";s:33:"ඇබ්කාසියානු";s:2:"ab";s:18:"阿布哈西亚文";s:2:"ab";s:15:"阿布哈茲文";s:2:"ab";s:9:"阿肯文";s:2:"ak";s:9:"阿坎文";s:2:"ak";s:27:"ඇම්හාරික්";s:2:"am";s:15:"阿姆哈拉文";s:2:"am";s:12:"阿拉贡文";s:2:"an";s:12:"阿拉貢文";s:2:"an";s:12:"阿拉伯文";s:2:"ar";s:12:"阿拉米文";s:3:"arc";s:27:"阿爾及利亞阿拉伯文";s:3:"arq";s:24:"ඇසමියානු";s:2:"as";s:12:"阿萨姆文";s:2:"as";s:12:"阿薩姆文";s:2:"as";s:24:"阿斯图里亚思特文";s:3:"ast";s:18:"阿斯圖里亞文";s:3:"ast";s:12:"阿瓦尔文";s:2:"av";s:12:"阿瓦爾文";s:2:"av";s:15:"阿塞拜疆文";s:2:"az";s:26:"クルド語(ソラニー)";s:3:"ckb";s:12:"クリー語";s:2:"cr";s:30:"クリミア・タタール語";s:3:"crh";s:9:"捷克文";s:2:"cs";s:18:"クロアチア語";s:2:"hr";s:18:"クワニャマ語";s:2:"kj";s:15:"クメール語";s:2:"km";s:12:"クリオ語";s:3:"kri";s:12:"クルド語";s:2:"ku";s:15:"クリーク語";s:3:"mus";s:18:"阿罗马尼亚文";s:3:"rup";s:33:"ඇල්බේනියානු";s:2:"sq";s:18:"阿尔巴尼亚文";s:2:"sq";s:18:"阿爾巴尼亞文";s:2:"sq";s:21:"টোঙ্গান";s:2:"to";s:25:"টোক পিসিন";s:3:"tpi";s:18:"টোয়াই";s:2:"tw";s:30:"টুভিনিয়ান";s:3:"tyv";s:12:"阿乔利文";s:3:"ach";s:12:"阿僑利文";s:3:"ach";s:12:"ඇගම්";s:3:"agq";s:9:"阿苏文";s:3:"asa";s:9:"阿蘇文";s:3:"asa";s:12:"クルク語";s:3:"kru";s:15:"クワシオ語";s:3:"nmg";s:18:"クリンゴン語";s:3:"tlh";s:55:"ඇමෙරිකානු ඉංග්‍රීසි";s:5:"en-us";s:21:"টাইগ্রে";s:3:"tig";s:12:"阿当梅文";s:3:"ada";s:12:"阿當莫文";s:3:"ada";s:12:"阿迪何文";s:3:"ady";s:12:"阿迪各文";s:3:"ady";s:15:"阿维斯塔文";s:2:"ae";s:15:"阿緯斯陀文";s:2:"ae";s:18:"阿弗里希利文";s:3:"afh";s:12:"阿伊努文";s:3:"ain";s:12:"阿卡德文";s:3:"akk";s:12:"阿留申文";s:3:"ale";s:15:"阿拉帕霍文";s:3:"arp";s:15:"阿拉瓦克文";s:3:"arw";s:12:"阿瓦乔文";s:3:"awa";s:9:"阿瓦文";s:3:"awa";s:12:"阿库色文";s:3:"bss";s:12:"阿庫色文";s:3:"bss";s:9:"阿灿文";s:3:"cch";s:9:"阿燦文";s:3:"cch";s:12:"クペレ語";s:3:"kpe";s:12:"クムク語";s:3:"kum";s:15:"クテナイ語";s:3:"kut";s:18:"经典尼瓦尔文";s:3:"nwc";s:24:"阿拉伯文(查德)";s:3:"shu";s:18:"经典叙利亚文";s:3:"syc";s:21:"টাইম্নে";s:3:"tem";s:9:"টিভ";s:3:"tiv";s:21:"টোকেলাউ";s:3:"tkl";s:18:"টুভালু";s:3:"tvl";s:15:"阿拉巴馬文";s:3:"akz";s:15:"阿拉奧納文";s:3:"aro";s:21:"টাইয়াপ";s:3:"kcg";s:15:"阿沃那加文";s:3:"njo";}i:377;a:26:{s:18:"աբխազերեն";s:2:"ab";s:18:"աֆրիկաանս";s:2:"af";s:16:"աքաներեն";s:2:"ak";s:18:"ամհարերեն";s:2:"am";s:16:"արաբերեն";s:2:"ar";s:16:"ասամերեն";s:2:"as";s:24:"ադրբեջաներեն";s:2:"az";s:41:"ավստրիական գերմաներեն";s:5:"de-at";s:16:"անգլերեն";s:2:"en";s:33:"արևմտյան ֆրիզերեն";s:2:"fy";s:24:"റൊമാഞ്ച്";s:2:"rm";s:18:"റുണ്ടി";s:2:"rn";s:24:"റൊമാനിയൻ";s:2:"ro";s:15:"റഷ്യൻ";s:2:"ru";s:18:"ալբաներեն";s:2:"sq";s:33:"ավանդական չինարեն";s:7:"zh-hant";s:8:"աղեմ";s:3:"agq";s:8:"ասու";s:3:"asa";s:15:"റോംബോ";s:3:"rof";s:12:"റുവാ";s:3:"rwk";s:23:"անհայտ լեզու";s:3:"und";s:56:"առանց լեզվային բովանդակության";s:3:"zxx";s:39:"ավստրալական անգլերեն";s:5:"en-au";s:35:"ամերիկյան անգլերեն";s:5:"en-us";s:9:"딩카어";s:3:"din";s:15:"റോമനി";s:3:"rom";}i:50;a:74:{s:36:"អាប់ខាហ៊្សាន";s:2:"ab";s:39:"អាហ្វ្រីកាអាន";s:2:"af";s:24:"អាមហារីច";s:2:"am";s:21:"អារ៉ាប់";s:2:"ar";s:21:"អាសាមីស";s:2:"as";s:45:"អាហ៊្សែរបែហ្សង់";s:2:"az";s:22:"Каталаанныы";s:2:"ca";s:16:"Каталанӣ";s:2:"ca";s:6:"Кри";s:2:"cr";s:33:"Кримеански турски";s:3:"crh";s:24:"Кашубијански";s:3:"csb";s:30:"អាល្លឺម៉ង់";s:2:"de";s:52:"អាល្លឺម៉ង់ អូទ្រីស";s:5:"de-at";s:46:"អាល្លឺម៉ង់ ស្វីស";s:5:"de-ch";s:24:"អង់គ្លេស";s:2:"en";s:43:"អង់គ្លេស កាណាដា";s:5:"en-ca";s:70:"អង់គ្លេស ចក្រភព​អង់គ្លេស";s:5:"en-gb";s:39:"អេស្ពេរ៉ាន់តូ";s:2:"eo";s:24:"អេស្ប៉ាញ";s:2:"es";s:24:"អេស្តូនី";s:2:"et";s:18:"អៀរឡង់";s:2:"ga";s:43:"អាល្លឺម៉ង ស្វីស";s:3:"gsw";s:30:"អ៊ីស្រាអែល";s:2:"he";s:21:"អារមេនី";s:2:"hy";s:24:"អីនធើលីង";s:2:"ia";s:18:"អ៊ីកបូ";s:2:"ig";s:24:"អ៊ីស្លង់";s:2:"is";s:21:"អ៊ីតាលី";s:2:"it";s:25:"Кара-калпашки";s:3:"kaa";s:22:"Кабардијски";s:3:"kbd";s:10:"Конго";s:2:"kg";s:14:"Куањама";s:2:"kj";s:18:"Кэриэйдии";s:2:"ko";s:12:"Канури";s:2:"kr";s:27:"Карачај-балкар";s:3:"krc";s:8:"Крио";s:3:"kri";s:8:"Коми";s:2:"kv";s:16:"Кыргызча";s:2:"ky";s:18:"Кыргыстыы";s:2:"ky";s:12:"Кришки";s:3:"mus";s:24:"អូសីតាន់";s:2:"oc";s:21:"អូរីយ៉ា";s:2:"or";s:24:"អាល់បានី";s:2:"sq";s:27:"អ៊ុយហ្គឺរ";s:2:"ug";s:27:"អ៊ុយក្រែន";s:2:"uk";s:18:"អ៊ូរឌូ";s:2:"ur";s:45:"អ៊ូហ្សបេគីស្តង់";s:2:"uz";s:12:"Калмик";s:3:"xal";s:18:"Кантонски";s:3:"yue";s:16:"Кытайдыы";s:2:"zh";s:66:"អារ៉ាប់​ស្តង់ដារ​ទំនើប";s:6:"ar-001";s:14:"Коптски";s:3:"cop";s:12:"Курукх";s:3:"kru";s:16:"Коморски";s:3:"swb";s:20:"Клингонски";s:3:"tlh";s:55:"អង់គ្លេស អូស្ត្រាលី";s:5:"en-au";s:46:"អង់គ្លេស អាមេរិក";s:5:"en-us";s:64:"អេស្ប៉ាញ អាមេរីកឡាតាំង";s:6:"es-419";s:43:"អេស្ប៉ាញ អឺរ៉ុប";s:5:"es-es";s:8:"Кадо";s:3:"cad";s:16:"Карипски";s:3:"car";s:10:"Качин";s:3:"kac";s:8:"Кави";s:3:"kaw";s:8:"Коро";s:3:"kfo";s:8:"Каси";s:3:"kha";s:18:"Котанешки";s:3:"kho";s:16:"Кимбунду";s:3:"kmb";s:20:"Косреански";s:3:"kos";s:10:"Кпеле";s:3:"kpe";s:20:"Карелијски";s:3:"krl";s:10:"Кумик";s:3:"kum";s:14:"Кутенаи";s:3:"kut";s:29:"Класични невари";s:3:"nwc";s:33:"Класични сиријски";s:3:"syc";}i:517;a:16:{s:12:"압카즈어";s:2:"ab";s:15:"ලතින්";s:2:"la";s:36:"ලක්සැම්බර්ග්";s:2:"lb";s:21:"ලින්ගලා";s:2:"ln";s:9:"ලාඕ";s:2:"lo";s:36:"ලිතුවේනියානු";s:2:"lt";s:30:"ලැට්වියානු";s:2:"lv";s:9:"缅甸文";s:2:"my";s:21:"ලන්දේසි";s:2:"nl";s:12:"ලංගි";s:3:"lag";s:12:"ලකොට";s:3:"lkt";s:6:"ලු";s:2:"lu";s:9:"ලුඔ";s:3:"luo";s:18:"ලුයියා";s:3:"luy";s:25:"ලුලේ සාමි";s:3:"smj";s:62:"ලතින් ඇමරිකානු ස්පාඤ්ඤ";s:6:"es-419";}i:777;a:23:{s:24:"ແອບຄາຊຽນ";s:2:"ab";s:30:"ແອັກຊີເນັສ";s:3:"ace";s:21:"ແອນຈີກາ";s:3:"anp";s:15:"ແດນິຊ";s:2:"da";s:30:"ແອນຊຽນກຣີກ";s:3:"grc";s:15:"ແມງຊ໌";s:2:"gv";s:15:"ኩርድሽኛ";s:2:"ku";s:12:"ኩርድሽ";s:2:"ku";s:15:"ແກນດາ";s:2:"lg";s:33:"ແມັກເຊໂດນຽນ";s:2:"mk";s:15:"ແຊງໂກ";s:2:"sg";s:15:"簡体中国語";s:7:"zh-hans";s:12:"簡體中文";s:7:"zh-hans";s:15:"ແລນກິ";s:3:"lag";s:24:"ແອຟີຮີລີ";s:3:"afh";s:15:"ແຄດໂດ";s:3:"cad";s:9:"ແຟງ";s:3:"fan";s:15:"ແຟນຕີ";s:3:"fat";s:15:"ແລມບາ";s:3:"lam";s:21:"ແມັງໂກ້";s:3:"lol";s:15:"ແມນຈູ";s:3:"mnc";s:18:"ແຍງເບນ";s:3:"yav";s:15:"ແຢມບາ";s:3:"ybb";}i:129;a:54:{s:30:"အက်ခါဇူအနျ";s:2:"ab";s:33:"အာဖရိကန်းစ်";s:2:"af";s:18:"အာကိန်";s:2:"ak";s:30:"အန်ဟာရစျချ";s:2:"am";s:51:"အင်္ဂလိပ်စာဟောင်း";s:3:"ang";s:18:"အာရေဗီ";s:2:"ar";s:24:"အက္စမီစ်";s:2:"as";s:54:"အော်ဇောဘိုင်ဂျောနီ";s:2:"az";s:39:"အောက်ဆိုဘီအမ်";s:3:"dsb";s:27:"အင်္ဂလိပ်";s:2:"en";s:33:"အက္စပရန္တို";s:2:"eo";s:48:"အက်စ်တိုးနီးရန်း";s:2:"et";s:61:"အနောက်ပိုင်း ဖရီစီရန်";s:2:"fy";s:27:"အိုင်းရစ်";s:2:"ga";s:12:"హౌసా";s:2:"ha";s:24:"హవాయియన్";s:3:"haw";s:18:"హీబ్రు";s:2:"he";s:15:"హిందీ";s:2:"hi";s:37:"హిలి గేయినోన్";s:3:"hil";s:25:"హిరి మోటు";s:2:"ho";s:39:"အပေါ်ဆိုဘီအမ်";s:3:"hsb";s:21:"హైతియన్";s:2:"ht";s:30:"హన్గేరియన్";s:2:"hu";s:27:"အာမေနီအန်";s:2:"hy";s:18:"హిరేరో";s:2:"hz";s:39:"အင်ဒိုနီးရှား";s:2:"id";s:21:"အစ္ဂဘို";s:2:"ig";s:36:"အိုင်စ်လန္ဒီ";s:2:"is";s:15:"အီတလီ";s:2:"it";s:30:"အီနုခ်တီတု";s:2:"iu";s:24:"အာလာဂါစီ";s:2:"mg";s:37:"အနိမ့် ဂျာမန်";s:3:"nds";s:27:"အိုရိုမို";s:2:"om";s:21:"အိုရီရာ";s:2:"or";s:45:"အယ်လ်ဘေးနီးယန်း";s:2:"sq";s:70:"အလယ်အက်တ်လက်စ် တာမာဇိုက်";s:3:"tzm";s:18:"အော်ဒူ";s:2:"ur";s:27:"အာဂ်ဟိန်း";s:3:"agq";s:38:"အရေဗီ(ပုံမှန်)";s:6:"ar-001";s:12:"အာစု";s:3:"asa";s:15:"အမ်ဘူ";s:3:"ebu";s:24:"హిట్టిటే";s:3:"hit";s:76:"အကြိမ်များစွာ ဘာသာစကားများ";s:3:"mul";s:31:"အီနာရီ ဆာမိ";s:3:"smn";s:52:"အမေရိကန် အင်္ဂလိပ်";s:5:"en-us";s:49:"အလယ်ပိုင်း ဒတ်ချ်";s:3:"dum";s:58:"အလယ်ပိုင်း အင်္ဂလိပ်";s:3:"enm";s:51:"အလယ်ပိုင်းပြင်သစ်";s:3:"frm";s:58:"အရှေ့ပိုင်း ဖရီစီရန်";s:3:"frs";s:66:"အလယ်ပိုင်းအမြင့်ဂျာမန်";s:3:"gmh";s:12:"హైడా";s:3:"hai";s:12:"హుపా";s:3:"hup";s:58:"အလယ်ပိုင်း အိုင်းရစ်";s:3:"mga";s:46:"အိုင်းရစ် ဟောင်း";s:3:"sga";}i:822;a:30:{s:30:"ଆବ୍ଖାଜିଆନ୍";s:2:"ab";s:24:"ଆଚାଇନୀଜ୍";s:3:"ace";s:30:"ଆଫ୍ରିକାନସ୍";s:2:"af";s:21:"ଆମହାରକି";s:2:"am";s:21:"ଆର୍ଗୋନୀ";s:2:"an";s:18:"ଆରବିକ୍";s:2:"ar";s:24:"ଆରାମାଇକ୍";s:3:"arc";s:33:"ଆରାଉକାନିଆନ୍";s:3:"arn";s:15:"ଆସାମୀ";s:2:"as";s:30:"ଆଷ୍ଟୁରିଆନ୍";s:3:"ast";s:21:"ଆଭାରିକ୍";s:2:"av";s:18:"ଆୟମାରା";s:2:"ay";s:33:"ଆଜେରବାଇଜାନି";s:2:"az";s:30:"ଆର୍ମେନିଆନ୍";s:2:"hy";s:33:"ଆଇସଲାଣ୍ଡିକ୍";s:2:"is";s:30:"ଆରୋମାନିଆନ୍";s:3:"rup";s:27:"ଆଲବାନିଆନ୍";s:2:"sq";s:15:"ଆକୋଲି";s:3:"ach";s:12:"ଆଘେମ";s:3:"agq";s:9:"ଆସୁ";s:3:"asa";s:27:"ଆଦାଙ୍ଗେମ୍";s:3:"ada";s:27:"ଆଫ୍ରିହିଲି";s:3:"afh";s:12:"ଆଇନୁ";s:3:"ain";s:24:"ଆକାଡିଆନ୍";s:3:"akk";s:18:"ଆଲେଇଟୁ";s:3:"ale";s:21:"ଆରାପାହୋ";s:3:"arp";s:12:"ଆରୱକ";s:3:"arw";s:15:"ଆୱାଧି";s:3:"awa";s:18:"ଆତ୍ସମ୍";s:3:"cch";s:12:"耶姆巴文";s:3:"ybb";}i:565;a:17:{s:27:"ਅਬਖਾਜ਼ੀਅਨ";s:2:"ab";s:15:"ਅਚੀਨੀ";s:3:"ace";s:21:"ਅਫ਼ਰੀਕੀ";s:2:"af";s:12:"ਅਕਾਨ";s:2:"ak";s:21:"ਅਮਹਾਰਿਕ";s:2:"am";s:12:"ਅਰਬੀ";s:2:"ar";s:15:"ਅਸਾਮੀ";s:2:"as";s:33:"ਅਜ਼ਰਬਾਈਜਾਨੀ";s:2:"az";s:24:"ਅੰਗਰੇਜ਼ੀ";s:2:"en";s:34:"ਅੱਪਰ ਸੋਰਬੀਅਨ";s:3:"hsb";s:24:"ਅਰਮੀਨੀਆਈ";s:2:"hy";s:24:"ਅਲਬਾਨੀਆਈ";s:2:"sq";s:15:"ਅਕੋਲੀ";s:3:"ach";s:12:"ਅਗੇਮ";s:3:"agq";s:9:"ਅਸੂ";s:3:"asa";s:37:"ਅਣਪਛਾਤੀ ਭਾਸ਼ਾ";s:3:"und";s:43:"ਅਮਰੀਕੀ ਅੰਗਰੇਜ਼ੀ";s:5:"en-us";}i:107;a:1658:{s:9:"kiabkhazi";s:2:"ab";s:10:"kiafrikana";s:2:"af";s:6:"kiakan";s:2:"ak";s:7:"kiakani";s:2:"ak";s:8:"kiamhari";s:2:"am";s:19:"kiingereza cha kale";s:3:"ang";s:8:"kĩarabu";s:2:"ar";s:7:"kiarabu";s:2:"ar";s:7:"kiaramu";s:3:"arc";s:9:"kimapuche";s:3:"arn";s:21:"kiarabu cha kialjeria";s:3:"arq";s:17:"kiarabu cha misri";s:3:"arz";s:7:"kiassam";s:2:"as";s:6:"kotava";s:3:"avk";s:8:"kiaimara";s:2:"ay";s:11:"kiazabajani";s:2:"az";s:9:"kibashkir";s:2:"ba";s:10:"kibelarusi";s:2:"be";s:12:"kviterussisk";s:2:"be";s:10:"kibulgaria";s:2:"bg";s:9:"kibambara";s:2:"bm";s:8:"kibangla";s:2:"bn";s:9:"kibengali";s:2:"bn";s:8:"kitibeti";s:2:"bo";s:9:"kibretoni";s:2:"br";s:8:"kibosnia";s:2:"bs";s:9:"katalaans";s:2:"ca";s:7:"katalan";s:2:"ca";s:9:"katalaneg";s:2:"ca";s:10:"katalonski";s:2:"ca";s:14:"katalánština";s:2:"ca";s:11:"katalanisch";s:2:"ca";s:15:"katanlanšćina";s:2:"ca";s:9:"katalagbe";s:2:"ca";s:8:"kataluna";s:2:"ca";s:9:"katalaani";s:2:"ca";s:8:"katalana";s:2:"ca";s:10:"katalanskt";s:2:"ca";s:10:"katalaansk";s:2:"ca";s:12:"katalaanisch";s:2:"ca";s:13:"kataloniyanci";s:2:"ca";s:14:"katalanšćina";s:2:"ca";s:8:"katalán";s:2:"ca";s:11:"katalónska";s:2:"ca";s:13:"kattalahnesch";s:2:"ca";s:11:"katalanesch";s:2:"ca";s:9:"katalonų";s:2:"ca";s:10:"katalāņu";s:2:"ca";s:9:"katalansk";s:2:"ca";s:11:"katalaansch";s:2:"ca";s:11:"kataloński";s:2:"ca";s:15:"katalánagiella";s:2:"ca";s:13:"katalánčina";s:2:"ca";s:14:"katalonščina";s:2:"ca";s:8:"katalaan";s:2:"ca";s:11:"katalonisht";s:2:"ca";s:10:"katalanska";s:2:"ca";s:10:"kikatalani";s:2:"ca";s:9:"katalanca";s:2:"ca";s:10:"katalancha";s:2:"ca";s:12:"kebuano dili";s:3:"ceb";s:9:"kebúanó";s:3:"ceb";s:10:"kamorrogbe";s:2:"ch";s:8:"kamorró";s:2:"ch";s:6:"koktaw";s:3:"cho";s:10:"kicherokee";s:3:"chr";s:12:"kurdu sorani";s:3:"ckb";s:13:"kurdeg sorani";s:3:"ckb";s:11:"kurd sorani";s:3:"ckb";s:21:"kurdština (sorání)";s:3:"ckb";s:12:"kurdo sorani";s:3:"ckb";s:12:"kurdi sorani";s:3:"ckb";s:14:"kurdu (sorani)";s:3:"ckb";s:16:"kurdisk (sorani)";s:3:"ckb";s:13:"kurdă sorani";s:3:"ckb";s:20:"kurdčina (sorání)";s:3:"ckb";s:16:"kurdishte sorani";s:3:"ckb";s:18:"kikurdi cha sorani";s:3:"ckb";s:10:"korsikaans";s:2:"co";s:7:"korsika";s:2:"co";s:6:"korseg";s:2:"co";s:11:"korzikanski";s:2:"co";s:11:"korsičtina";s:2:"co";s:10:"korsikansk";s:2:"co";s:8:"korsisch";s:2:"co";s:12:"korsišćina";s:2:"co";s:9:"korsikera";s:2:"co";s:11:"korsikaansk";s:2:"co";s:9:"korzički";s:2:"co";s:8:"korzikai";s:2:"co";s:9:"korsíska";s:2:"co";s:8:"korsesch";s:2:"co";s:13:"korsikiečių";s:2:"co";s:11:"korsikāņu";s:2:"co";s:7:"korsiku";s:2:"co";s:7:"koorsch";s:2:"co";s:12:"korsykański";s:2:"co";s:11:"korzičtina";s:2:"co";s:12:"korziščina";s:2:"co";s:12:"korsikanisht";s:2:"co";s:11:"korsikanska";s:2:"co";s:10:"kikosikani";s:2:"co";s:9:"korsikaca";s:2:"co";s:10:"korsiancha";s:2:"co";s:14:"kapiznonština";s:3:"cps";s:8:"kri dili";s:2:"cr";s:3:"kri";s:2:"cr";s:11:"kríjština";s:2:"cr";s:4:"krii";s:2:"cr";s:4:"krí";s:2:"cr";s:4:"kree";s:2:"cr";s:3:"kry";s:2:"cr";s:4:"krī";s:2:"cr";s:4:"krij";s:2:"cr";s:11:"krijščina";s:2:"cr";s:15:"krım türkçə";s:3:"crh";s:17:"krimeanski turski";s:3:"crh";s:12:"krim tyrkisk";s:3:"crh";s:13:"krimtatarisch";s:3:"crh";s:12:"krimmitatari";s:3:"crh";s:13:"krimintataari";s:3:"crh";s:13:"krim-tataarsk";s:3:"crh";s:14:"krimski turski";s:3:"crh";s:13:"krími tatár";s:3:"crh";s:14:"krímtyrkneska";s:3:"crh";s:13:"krimtataresch";s:3:"crh";s:12:"krymo turkų";s:3:"crh";s:14:"krimas tatāru";s:3:"crh";s:12:"krimtatarisk";s:3:"crh";s:13:"krimtataarsch";s:3:"crh";s:12:"krim-tataars";s:3:"crh";s:15:"krymski turecki";s:3:"crh";s:19:"krymská turečtina";s:3:"crh";s:20:"krimska tatarščina";s:3:"crh";s:13:"krimtatariska";s:3:"crh";s:18:"kırım türkçesi";s:3:"crh";s:10:"kyɛk kasa";s:2:"cs";s:8:"kekkiskt";s:2:"cs";s:8:"kichecki";s:2:"cs";s:7:"kicheki";s:2:"cs";s:11:"kaszëbsczi";s:3:"csb";s:10:"kashubianu";s:3:"csb";s:14:"kaşubyan dili";s:3:"csb";s:9:"kachoubeg";s:3:"csb";s:13:"kašubijanski";s:3:"csb";s:12:"kašubština";s:3:"csb";s:9:"kasjubisk";s:3:"csb";s:11:"kaschubisch";s:3:"csb";s:9:"kashubian";s:3:"csb";s:8:"kašuubi";s:3:"csb";s:7:"kašubi";s:3:"csb";s:8:"kachoube";s:3:"csb";s:10:"kasjoebysk";s:3:"csb";s:9:"kašupski";s:3:"csb";s:5:"kasub";s:3:"csb";s:8:"kashubia";s:3:"csb";s:11:"kasúbíska";s:3:"csb";s:12:"kaschuhbesch";s:3:"csb";s:11:"kaschubesch";s:3:"csb";s:8:"kašubų";s:3:"csb";s:7:"kašubu";s:3:"csb";s:11:"kaschuubsch";s:3:"csb";s:11:"kasjoebisch";s:3:"csb";s:9:"kaszubski";s:3:"csb";s:9:"kaschubic";s:3:"csb";s:11:"kašubčina";s:3:"csb";s:13:"kašubščina";s:3:"csb";s:10:"kasjubiska";s:3:"csb";s:11:"kerkslawies";s:2:"cu";s:16:"kilsə slav dili";s:2:"cu";s:12:"kirkeslavisk";s:2:"cu";s:15:"kirchenslawisch";s:2:"cu";s:12:"kirikuslaavi";s:2:"cu";s:12:"kirkkoslaavi";s:2:"cu";s:11:"kerkslavysk";s:2:"cu";s:15:"kirkjuslavneska";s:2:"cu";s:17:"kerscheßlahwesch";s:2:"cu";s:15:"kiercheslawesch";s:2:"cu";s:14:"karkenslaavsch";s:2:"cu";s:12:"kerkslavisch";s:2:"cu";s:13:"kyrkjeslavisk";s:2:"cu";s:12:"kyrkslaviska";s:2:"cu";s:16:"kilise slavcası";s:2:"cu";s:8:"kembraeg";s:2:"cy";s:5:"kimra";s:2:"cy";s:6:"kõmri";s:2:"cy";s:5:"kymri";s:2:"cy";s:13:"kabilar welsh";s:2:"cy";s:7:"kembrek";s:2:"cy";s:6:"kimric";s:2:"cy";s:11:"kymragiella";s:2:"cy";s:8:"kiwelisi";s:2:"cy";s:8:"kenemaka";s:2:"da";s:9:"kidenmaki";s:2:"da";s:10:"kelemānia";s:2:"de";s:12:"kĩnjeremani";s:2:"de";s:10:"kijerumani";s:2:"de";s:14:"kidolnoserbski";s:3:"dsb";s:18:"kadazandusunština";s:3:"dtp";s:8:"kidivehi";s:2:"dv";s:9:"kizongkha";s:2:"dz";s:5:"kiewe";s:2:"ee";s:6:"kreeka";s:2:"el";s:7:"kreikka";s:2:"el";s:8:"kigiriki";s:2:"el";s:10:"kiingereza";s:2:"en";s:19:"kanada ingiliscəsi";s:5:"en-ca";s:17:"kanadski engleski";s:5:"en-ca";s:20:"kanadisches englisch";s:5:"en-ca";s:22:"kanadiska engelšćina";s:5:"en-ca";s:23:"kanadatɔwo ƒe yevugbe";s:5:"en-ca";s:12:"kanada angla";s:5:"en-ca";s:15:"kanadanenglanti";s:5:"en-ca";s:17:"kanadeesk ingelsk";s:5:"en-ca";s:20:"kanadischs Änglisch";s:5:"en-ca";s:25:"kanadiska jendźelšćina";s:5:"en-ca";s:13:"kanadai angol";s:5:"en-ca";s:15:"kanadísk enska";s:5:"en-ca";s:19:"kanadescht englesch";s:5:"en-ca";s:14:"kanados anglų";s:5:"en-ca";s:15:"kanādas angļu";s:5:"en-ca";s:18:"kanaadsch engelsch";s:5:"en-ca";s:16:"kanadisk engelsk";s:5:"en-ca";s:20:"kanadyjski angielski";s:5:"en-ca";s:21:"kanadska angleščina";s:5:"en-ca";s:20:"kanadensisk engelska";s:5:"en-ca";s:19:"kanada İngilizcesi";s:5:"en-ca";s:18:"kanada inglizchasi";s:5:"en-ca";s:11:"kiesperanto";s:2:"eo";s:10:"kihispania";s:2:"es";s:9:"kiestonia";s:2:"et";s:8:"kibasque";s:2:"eu";s:7:"kiajemi";s:2:"fa";s:10:"kifulfulde";s:2:"ff";s:10:"kifinlandi";s:2:"fi";s:6:"kifiji";s:2:"fj";s:7:"kifaroe";s:2:"fo";s:10:"kĩbaranja";s:2:"fr";s:9:"kifaransa";s:2:"fr";s:20:"kadžunų prancūzų";s:3:"frc";s:22:"kifrisia cha kaskazini";s:3:"frr";s:12:"kuzey frizce";s:3:"frr";s:15:"kʼabilan firsi";s:2:"fy";s:22:"kifrisia cha magharibi";s:2:"fy";s:10:"kiayalandi";s:2:"ga";s:9:"kigagauzi";s:3:"gag";s:28:"kinų kalbos dziangsi tarmė";s:3:"gan";s:22:"kʼabilan scots gaelic";s:2:"gd";s:18:"kigaeli cha uskoti";s:2:"gd";s:8:"kigalisi";s:2:"gl";s:9:"kiguarani";s:2:"gn";s:7:"konknni";s:8:"gom-latn";s:8:"kiyunani";s:3:"grc";s:20:"kuikilani kelemānia";s:3:"gsw";s:21:"kijerumani cha uswisi";s:3:"gsw";s:10:"kigujarati";s:2:"gu";s:6:"kimanx";s:2:"gv";s:7:"kihausa";s:2:"ha";s:25:"kinų kalbos hakų tarmė";s:3:"hak";s:7:"kihawai";s:3:"haw";s:9:"kiebrania";s:2:"he";s:10:"kĩhĩndĩ";s:2:"hi";s:7:"kihindi";s:2:"hi";s:8:"kroaties";s:2:"hr";s:7:"kroateg";s:2:"hr";s:8:"kroatisk";s:2:"hr";s:9:"kroatisch";s:2:"hr";s:10:"kroatiagbe";s:2:"hr";s:6:"kroata";s:2:"hr";s:9:"kroaziera";s:2:"hr";s:7:"kroatia";s:2:"hr";s:9:"kroatiskt";s:2:"hr";s:8:"kroatysk";s:2:"hr";s:9:"kroazisch";s:2:"hr";s:10:"kuroshiyan";s:2:"hr";s:7:"kroasia";s:2:"hr";s:11:"króatíska";s:2:"hr";s:10:"krowatesch";s:2:"hr";s:9:"kroatesch";s:2:"hr";s:7:"kroatų";s:2:"hr";s:5:"kroat";s:2:"hr";s:9:"kroaatsch";s:2:"hr";s:14:"kroátiagiella";s:2:"hr";s:16:"koro’eeshiyaan";s:2:"hr";s:9:"kroatisht";s:2:"hr";s:9:"kroatiska";s:2:"hr";s:8:"kroeshia";s:2:"hr";s:15:"kreyòl ayisyen";s:2:"ht";s:8:"kreolski";s:2:"ht";s:7:"kihaiti";s:2:"ht";s:9:"kihungari";s:2:"hu";s:9:"kiarmenia";s:2:"hy";s:8:"kiherero";s:2:"hz";s:12:"kiintalingua";s:2:"ia";s:11:"kiindonesia";s:2:"id";s:6:"kiigbo";s:2:"ig";s:11:"kiaisilandi";s:2:"is";s:10:"kĩtaliano";s:2:"it";s:10:"kiitaliano";s:2:"it";s:7:"kepanī";s:2:"ja";s:10:"kĩnjabani";s:2:"ja";s:8:"kijapani";s:2:"ja";s:6:"kijava";s:2:"jv";s:8:"kartvela";s:2:"ka";s:7:"kijojia";s:2:"ka";s:11:"kara-kalpak";s:3:"kaa";s:10:"karakalpak";s:3:"kaa";s:14:"kara-kalpaški";s:3:"kaa";s:15:"karakalpačtina";s:3:"kaa";s:13:"karakalpakisk";s:3:"kaa";s:14:"karakalpakisch";s:3:"kaa";s:11:"karakalpako";s:3:"kaa";s:11:"karakalpaki";s:3:"kaa";s:12:"karakalpakki";s:3:"kaa";s:11:"karakalpaks";s:3:"kaa";s:14:"karakalpakesch";s:3:"kaa";s:12:"karakalpakų";s:3:"kaa";s:11:"karakalpaku";s:3:"kaa";s:13:"karakalpaksch";s:3:"kaa";s:13:"karakałpacki";s:3:"kaa";s:16:"karakalpaščina";s:3:"kaa";s:14:"karakalpakiska";s:3:"kaa";s:13:"karakalpakça";s:3:"kaa";s:6:"kabyle";s:3:"kab";s:9:"kabileñu";s:3:"kab";s:6:"kabile";s:3:"kab";s:7:"kabileg";s:3:"kab";s:11:"kabylština";s:3:"kab";s:8:"kabylisk";s:3:"kab";s:9:"kabylisch";s:3:"kab";s:12:"kabylšćina";s:3:"kab";s:7:"kabiili";s:3:"kab";s:8:"kabilera";s:3:"kab";s:7:"kabyyli";s:3:"kab";s:8:"kabilski";s:3:"kab";s:6:"kabije";s:3:"kab";s:7:"kabíle";s:3:"kab";s:9:"kabylesch";s:3:"kab";s:8:"kebailų";s:3:"kab";s:6:"kabilu";s:3:"kab";s:8:"kabuljan";s:3:"kab";s:7:"kabylsk";s:3:"kab";s:9:"kabyylsch";s:3:"kab";s:8:"kabylski";s:3:"kab";s:10:"kabylčina";s:3:"kab";s:12:"kabilščina";s:3:"kab";s:9:"kabilisht";s:3:"kab";s:9:"kabyliska";s:3:"kab";s:9:"kikabylia";s:3:"kab";s:10:"kabiliyece";s:3:"kab";s:10:"kabardianu";s:3:"kbd";s:8:"kabardca";s:3:"kbd";s:8:"kabardeg";s:3:"kbd";s:11:"kabardijski";s:3:"kbd";s:8:"kabardí";s:3:"kbd";s:14:"kabardinština";s:3:"kbd";s:9:"kabardian";s:3:"kbd";s:12:"kabardinisch";s:3:"kbd";s:11:"kabardiagbe";s:3:"kbd";s:10:"kabardiano";s:3:"kbd";s:18:"kabardi-tšerkessi";s:3:"kbd";s:7:"kabardi";s:3:"kbd";s:8:"kabardin";s:3:"kbd";s:9:"kabardysk";s:3:"kbd";s:11:"kabardíska";s:3:"kbd";s:8:"kabardia";s:3:"kbd";s:12:"kabardinesch";s:3:"kbd";s:10:"kabardinų";s:3:"kbd";s:11:"kabardiešu";s:3:"kbd";s:9:"kabardisk";s:3:"kbd";s:12:"kabardiensch";s:3:"kbd";s:10:"kabardisch";s:3:"kbd";s:11:"kabardyjski";s:3:"kbd";s:8:"kabardic";s:3:"kbd";s:11:"kabardčina";s:3:"kbd";s:15:"kabardinščina";s:3:"kbd";s:11:"kabardinska";s:3:"kbd";s:10:"kabardeyce";s:3:"kbd";s:5:"kongo";s:2:"kg";s:9:"kongolees";s:2:"kg";s:10:"konqo dili";s:2:"kg";s:11:"konžština";s:2:"kg";s:12:"kongolesisch";s:2:"kg";s:8:"kongogbe";s:2:"kg";s:8:"kikongoa";s:2:"kg";s:9:"kongóska";s:2:"kg";s:12:"kongolesesch";s:2:"kg";s:11:"kikɔ́ngɔ";s:2:"kg";s:5:"kongu";s:2:"kg";s:7:"kikongo";s:2:"kg";s:9:"kongčina";s:2:"kg";s:13:"kongovščina";s:2:"kg";s:6:"khowar";s:3:"khw";s:8:"khovarų";s:3:"khw";s:6:"kikuyu";s:2:"ki";s:6:"kikuju";s:2:"ki";s:6:"kikuiu";s:2:"ki";s:11:"kikujština";s:2:"ki";s:2:"ki";s:2:"ki";s:9:"kikuyuera";s:2:"ki";s:16:"kikuyu-schpraach";s:2:"ki";s:9:"kíkújú";s:2:"ki";s:14:"kikuyu-sprooch";s:2:"ki";s:7:"kikujų";s:2:"ki";s:6:"kikuya";s:2:"ki";s:10:"kikujčina";s:2:"ki";s:12:"kikujščina";s:2:"ki";s:10:"kikujuisht";s:2:"ki";s:8:"kikikuyu";s:2:"ki";s:8:"kikuycha";s:2:"ki";s:10:"kırmancki";s:3:"kiu";s:9:"kirmanjki";s:3:"kiu";s:10:"kirmanckî";s:3:"kiu";s:11:"kirmandżki";s:3:"kiu";s:12:"kırmançça";s:3:"kiu";s:8:"kwanyama";s:2:"kj";s:8:"kuanyama";s:2:"kj";s:13:"kuanyama dili";s:2:"kj";s:8:"kuanjama";s:2:"kj";s:13:"kuaňamština";s:2:"kj";s:10:"kunyamagbe";s:2:"kj";s:9:"kúanjama";s:2:"kj";s:8:"kuaniama";s:2:"kj";s:8:"kvaņamu";s:2:"kj";s:8:"kuaňama";s:2:"kj";s:8:"kvanjama";s:2:"kj";s:10:"kikwanyama";s:2:"kj";s:6:"kazaks";s:2:"kk";s:14:"kazaquistanín";s:2:"kk";s:5:"kazak";s:2:"kk";s:8:"kazački";s:2:"kk";s:6:"kazakh";s:2:"kk";s:10:"kazaština";s:2:"kk";s:9:"kasakhisk";s:2:"kk";s:10:"kasachisch";s:2:"kk";s:13:"kazachšćina";s:2:"kk";s:13:"kazakhstangbe";s:2:"kk";s:7:"kazaĥa";s:2:"kk";s:6:"kazajo";s:2:"kk";s:7:"kasahhi";s:2:"kk";s:9:"kazakhera";s:2:"kk";s:7:"kazakki";s:2:"kk";s:9:"kazakiskt";s:2:"kk";s:5:"kazac";s:2:"kk";s:7:"kazachs";s:2:"kk";s:8:"kazaški";s:2:"kk";s:5:"kazah";s:2:"kk";s:8:"kasakska";s:2:"kk";s:6:"kazako";s:2:"kk";s:10:"kassakesch";s:2:"kk";s:10:"kasachesch";s:2:"kk";s:8:"kazachų";s:2:"kk";s:6:"kazahu";s:2:"kk";s:10:"kazakhstan";s:2:"kk";s:6:"każak";s:2:"kk";s:12:"kasach’sch";s:2:"kk";s:9:"kazachski";s:2:"kk";s:11:"kazajo simi";s:2:"kk";s:7:"kazahă";s:2:"kk";s:11:"kazakgiella";s:2:"kk";s:8:"kozački";s:2:"kk";s:11:"kazaščina";s:2:"kk";s:9:"kazakisht";s:2:"kk";s:9:"kazakiska";s:2:"kk";s:8:"kikazaki";s:2:"kk";s:8:"kazakça";s:2:"kk";s:22:"kazakh (arabic script)";s:7:"kk-arab";s:24:"kazakh (cyrillic script)";s:7:"kk-cyrl";s:21:"kazakh (latin script)";s:7:"kk-latn";s:14:"kazakh (china)";s:5:"kk-cn";s:19:"kazakh (kazakhstan)";s:5:"kk-kz";s:15:"kazakh (turkey)";s:5:"kk-tr";s:11:"kalaallisut";s:2:"kl";s:12:"kalalisutski";s:2:"kl";s:12:"kalaalisugbe";s:2:"kl";s:14:"kalaallisutera";s:2:"kl";s:9:"kalalisut";s:2:"kl";s:10:"kalallisut";s:2:"kl";s:24:"kalaallisut; grønlandsk";s:2:"kl";s:10:"kalalisute";s:2:"kl";s:13:"kikalaallisut";s:2:"kl";s:13:"kalallisutcha";s:2:"kl";s:5:"khmer";s:2:"km";s:13:"kambodia kasa";s:2:"km";s:5:"kxmer";s:2:"km";s:10:"kambojikan";s:2:"km";s:7:"kmerski";s:2:"km";s:12:"khmérština";s:2:"km";s:15:"kambodschanisch";s:2:"km";s:17:"kambodžanšćina";s:2:"km";s:8:"khmergbe";s:2:"km";s:5:"kmera";s:2:"km";s:7:"khmeeri";s:2:"km";s:9:"khemerera";s:2:"km";s:7:"kemeere";s:2:"km";s:12:"kambodjanskt";s:2:"km";s:12:"khmeršćina";s:2:"km";s:10:"kambodzsai";s:2:"km";s:11:"keme, etiti";s:2:"km";s:4:"kmer";s:2:"km";s:10:"kikambodia";s:2:"km";s:15:"kambodschanesch";s:2:"km";s:7:"khmerų";s:2:"km";s:6:"khmeru";s:2:"km";s:15:"kambodschaansch";s:2:"km";s:8:"khmerski";s:2:"km";s:10:"khmer simi";s:2:"km";s:7:"khmeră";s:2:"km";s:14:"kambodiagiella";s:2:"km";s:6:"kmêre";s:2:"km";s:11:"khmérčina";s:2:"km";s:11:"kmerščina";s:2:"km";s:11:"kamboodhian";s:2:"km";s:5:"kmere";s:2:"km";s:12:"kambodjanska";s:2:"km";s:6:"kmerce";s:2:"km";s:7:"kannada";s:2:"kn";s:7:"kanareg";s:2:"kn";s:6:"kanada";s:2:"kn";s:12:"kannadština";s:2:"kn";s:13:"kannadšćina";s:2:"kn";s:10:"kannadagbe";s:2:"kn";s:6:"kanara";s:2:"kn";s:9:"kannadera";s:2:"kn";s:9:"kannadski";s:2:"kn";s:7:"kanadų";s:2:"kn";s:7:"kannadu";s:2:"kn";s:12:"kannada simi";s:2:"kn";s:11:"kannadčina";s:2:"kn";s:9:"kannadays";s:2:"kn";s:6:"kanade";s:2:"kn";s:9:"kikannada";s:2:"kn";s:9:"kannadcha";s:2:"kn";s:8:"koreaans";s:2:"ko";s:10:"korea kasa";s:2:"ko";s:6:"koreya";s:2:"ko";s:7:"korekan";s:2:"ko";s:8:"koreaneg";s:2:"ko";s:8:"korejski";s:2:"ko";s:11:"korejština";s:2:"ko";s:8:"koreansk";s:2:"ko";s:10:"koreanisch";s:2:"ko";s:15:"korejańšćina";s:2:"ko";s:8:"koreagbe";s:2:"ko";s:6:"korean";s:2:"ko";s:5:"korea";s:2:"ko";s:7:"koreera";s:2:"ko";s:7:"koreere";s:2:"ko";s:9:"koreanskt";s:2:"ko";s:9:"koreaansk";s:2:"ko";s:11:"koreaanisch";s:2:"ko";s:6:"kōlea";s:2:"ko";s:12:"korejšćina";s:2:"ko";s:6:"koreai";s:2:"ko";s:5:"koria";s:2:"ko";s:8:"kóreska";s:2:"ko";s:7:"kikorea";s:2:"ko";s:11:"koreamiusut";s:2:"ko";s:13:"korrejaanesch";s:2:"ko";s:10:"koreanesch";s:2:"ko";s:13:"korėjiečių";s:2:"ko";s:10:"korejiešu";s:2:"ko";s:9:"koreanina";s:2:"ko";s:7:"korejan";s:2:"ko";s:10:"koreaansch";s:2:"ko";s:10:"koreański";s:2:"ko";s:11:"koreagiella";s:2:"ko";s:9:"koreyëen";s:2:"ko";s:11:"kórejčina";s:2:"ko";s:12:"korejščina";s:2:"ko";s:9:"kuuriyaan";s:2:"ko";s:10:"koreanisht";s:2:"ko";s:9:"koreanska";s:2:"ko";s:6:"korece";s:2:"ko";s:9:"koreyscha";s:2:"ko";s:13:"komi-permyaks";s:3:"koi";s:12:"komi-permyak";s:3:"koi";s:15:"komi-permjački";s:3:"koi";s:12:"komi-permiac";s:3:"koi";s:17:"komi-permjačtina";s:3:"koi";s:15:"komi-permjakisk";s:3:"koi";s:16:"komi-permjakisch";s:3:"koi";s:11:"komi permio";s:3:"koi";s:15:"komi-permyakera";s:3:"koi";s:13:"komipermjakki";s:3:"koi";s:12:"komi-permiak";s:3:"koi";s:18:"komski ili permski";s:3:"koi";s:13:"komi-permják";s:3:"koi";s:14:"kómí-permyak";s:3:"koi";s:14:"komių-permių";s:3:"koi";s:18:"komiešu-permiešu";s:3:"koi";s:14:"komipermjakisk";s:3:"koi";s:14:"komi-permjaaks";s:3:"koi";s:14:"komi-permiacki";s:3:"koi";s:17:"komi-permiačtina";s:3:"koi";s:18:"komi-permjaščina";s:3:"koi";s:17:"komishte permiake";s:3:"koi";s:16:"komi-permjakiska";s:3:"koi";s:13:"kikomipermyak";s:3:"koi";s:15:"komi-permyakcha";s:3:"koi";s:6:"kanuri";s:2:"kr";s:10:"kanur dili";s:2:"kr";s:7:"kanouri";s:2:"kr";s:14:"kanuri-sprache";s:2:"kr";s:10:"kanuriagbe";s:2:"kr";s:16:"kanuri-schpraach";s:2:"kr";s:8:"kanúrí";s:2:"kr";s:14:"kanuri-sprooch";s:2:"kr";s:6:"kanuru";s:2:"kr";s:9:"kanuursch";s:2:"kr";s:12:"kanurijčina";s:2:"kr";s:12:"kanurščina";s:2:"kr";s:8:"kikanuri";s:2:"kr";s:15:"karachay-balkar";s:3:"krc";s:16:"karatchay-balkar";s:3:"krc";s:15:"karačaj-balkar";s:3:"krc";s:8:"karatxai";s:3:"krc";s:24:"karačajevo-balkarština";s:3:"krc";s:15:"karatjai-balkar";s:3:"krc";s:25:"karatschaiisch-balkarisch";s:3:"krc";s:16:"karakay-bakargbe";s:3:"krc";s:18:"karatšai-balkaari";s:3:"krc";s:17:"karatchaï balkar";s:3:"krc";s:17:"karacsáj-balkár";s:3:"krc";s:15:"karachai balkar";s:3:"krc";s:14:"karasaíbalkar";s:3:"krc";s:25:"karatschaiesch-balkaresch";s:3:"krc";s:22:"karačiajų balkarijos";s:3:"krc";s:21:"karačaju un balkāru";s:3:"krc";s:24:"karatschaisch-balkaarsch";s:3:"krc";s:20:"karatsjaj-balkarisch";s:3:"krc";s:22:"karaczajsko-bałkarski";s:3:"krc";s:15:"karaceai-balkar";s:3:"krc";s:30:"karačajevsko-balkarský jazyk";s:3:"krc";s:22:"karačaj-balkarščina";s:3:"krc";s:17:"karaçay-balkarca";s:3:"krc";s:4:"krio";s:3:"kri";s:9:"kinaray-a";s:3:"krj";s:9:"kinaraj-a";s:3:"krj";s:8:"kinaraya";s:3:"krj";s:8:"kasjmirs";s:2:"ks";s:7:"kaşmir";s:2:"ks";s:8:"kashmiri";s:2:"ks";s:8:"kašmiri";s:2:"ks";s:14:"kašmírština";s:2:"ks";s:12:"kaschmirisch";s:2:"ks";s:14:"kašmiršćina";s:2:"ks";s:10:"kashmirgbe";s:2:"ks";s:8:"kaŝmira";s:2:"ks";s:9:"kašmiiri";s:2:"ks";s:10:"kashmirera";s:2:"ks";s:11:"kashmiriskt";s:2:"ks";s:8:"kasjmiri";s:2:"ks";s:10:"kašmirski";s:2:"ks";s:9:"kásmíri";s:2:"ks";s:7:"kashmir";s:2:"ks";s:10:"kasmírska";s:2:"ks";s:13:"kaschmieresch";s:2:"ks";s:12:"kaschmiresch";s:2:"ks";s:9:"kašmyrų";s:2:"ks";s:12:"kašmiriešu";s:2:"ks";s:7:"kaxmiri";s:2:"ks";s:12:"kaschmiersch";s:2:"ks";s:10:"kaszmirski";s:2:"ks";s:13:"kašmírčina";s:2:"ks";s:14:"kašmirščina";s:2:"ks";s:8:"kashmire";s:2:"ks";s:11:"kashmiriska";s:2:"ks";s:10:"kikashmiri";s:2:"ks";s:9:"keşmirce";s:2:"ks";s:10:"kashmircha";s:2:"ks";s:24:"kashmiri (arabic script)";s:7:"ks-arab";s:28:"kashmiri (devanagari script)";s:7:"ks-deva";s:7:"kelnski";s:3:"ksh";s:12:"kolínština";s:3:"ksh";s:7:"kölsch";s:3:"ksh";s:10:"kölníska";s:3:"ksh";s:8:"kolognų";s:3:"ksh";s:7:"kølnsk";s:3:"ksh";s:11:"kolínčina";s:3:"ksh";s:9:"kölniska";s:3:"ksh";s:15:"köln diyalekti";s:3:"ksh";s:6:"kurdî";s:2:"ku";s:8:"koerdies";s:2:"ku";s:5:"kürd";s:2:"ku";s:6:"kurdeg";s:2:"ku";s:7:"kurdski";s:2:"ku";s:4:"kurd";s:2:"ku";s:10:"kurdština";s:2:"ku";s:7:"kurdisk";s:2:"ku";s:8:"kurdisch";s:2:"ku";s:12:"kurdišćina";s:2:"ku";s:9:"kurdiagbe";s:2:"ku";s:7:"kurdish";s:2:"ku";s:5:"kurda";s:2:"ku";s:5:"kurdo";s:2:"ku";s:5:"kurdi";s:2:"ku";s:8:"kurduera";s:2:"ku";s:8:"kurdiskt";s:2:"ku";s:5:"kurde";s:2:"ku";s:8:"koerdysk";s:2:"ku";s:8:"kurdanci";s:2:"ku";s:10:"kúrdíska";s:2:"ku";s:11:"kurdiskisut";s:2:"ku";s:8:"kurdesch";s:2:"ku";s:6:"kurdų";s:2:"ku";s:5:"kurdu";s:2:"ku";s:7:"kurdiż";s:2:"ku";s:7:"kurdsch";s:2:"ku";s:9:"koerdisch";s:2:"ku";s:9:"kurdyjski";s:2:"ku";s:6:"kurdă";s:2:"ku";s:11:"kurdigiella";s:2:"ku";s:9:"kurdčina";s:2:"ku";s:11:"kurdščina";s:2:"ku";s:9:"kurdishka";s:2:"ku";s:8:"kurdiska";s:2:"ku";s:7:"kikurdi";s:2:"ku";s:8:"kürtçe";s:2:"ku";s:7:"kurdcha";s:2:"ku";s:20:"kurdî (latînî)‎";s:7:"ku-latn";s:22:"kurdish (latin script)";s:7:"ku-latn";s:4:"komi";s:2:"kv";s:9:"komi dili";s:2:"kv";s:11:"komijština";s:2:"kv";s:12:"komi-sprache";s:2:"kv";s:14:"komi-schpraach";s:2:"kv";s:8:"komíska";s:2:"kv";s:12:"komi-sprooch";s:2:"kv";s:8:"komiešu";s:2:"kv";s:10:"komigiella";s:2:"kv";s:10:"komijčina";s:2:"kv";s:12:"komijščina";s:2:"kv";s:4:"kome";s:2:"kv";s:6:"kikomi";s:2:"kv";s:8:"kernowek";s:2:"kw";s:7:"kornies";s:2:"kw";s:4:"korn";s:2:"kw";s:11:"kerneveureg";s:2:"kw";s:9:"korniški";s:2:"kw";s:10:"kornština";s:2:"kw";s:8:"kornisch";s:2:"kw";s:12:"kornišćina";s:2:"kw";s:5:"korni";s:2:"kw";s:10:"kornubiera";s:2:"kw";s:7:"kornski";s:2:"kw";s:7:"kornish";s:2:"kw";s:10:"kornbreska";s:2:"kw";s:8:"kernewek";s:2:"kw";s:8:"kornesch";s:2:"kw";s:6:"kornų";s:2:"kw";s:9:"korniešu";s:2:"kw";s:7:"korniku";s:2:"kw";s:7:"kornisk";s:2:"kw";s:8:"koornsch";s:2:"kw";s:9:"kornijski";s:2:"kw";s:11:"kornagiella";s:2:"kw";s:9:"kornčina";s:2:"kw";s:13:"kornijščina";s:2:"kw";s:8:"kornisht";s:2:"kw";s:8:"korniska";s:2:"kw";s:7:"kikorni";s:2:"kw";s:11:"kernevekçe";s:2:"kw";s:10:"kornishcha";s:2:"kw";s:9:"kirgisies";s:2:"ky";s:13:"kirguistanín";s:2:"ky";s:6:"kirgiz";s:2:"ky";s:8:"kirgiski";s:2:"ky";s:8:"kirguís";s:2:"ky";s:12:"kyrgyzština";s:2:"ky";s:9:"kirgisisk";s:2:"ky";s:10:"kirgisisch";s:2:"ky";s:12:"kirgišćina";s:2:"ky";s:13:"kirghistangbe";s:2:"ky";s:6:"kyrgyz";s:2:"ky";s:7:"kirgiza";s:2:"ky";s:8:"kirgiisi";s:2:"ky";s:9:"kirgizera";s:2:"ky";s:9:"kirgisikt";s:2:"ky";s:8:"kirghize";s:2:"ky";s:9:"kirgizysk";s:2:"ky";s:11:"kirgiisisch";s:2:"ky";s:10:"kirgizanci";s:2:"ky";s:9:"kirgiški";s:2:"ky";s:8:"kirghizo";s:2:"ky";s:8:"kirgiska";s:2:"ky";s:11:"kirjihsesch";s:2:"ky";s:10:"kirgisesch";s:2:"ky";s:8:"kirgizų";s:2:"ky";s:8:"kirgīzu";s:2:"ky";s:7:"kirghiz";s:2:"ky";s:7:"kirgiż";s:2:"ky";s:9:"kirgiesch";s:2:"ky";s:10:"kirgizisch";s:2:"ky";s:12:"kirghiz simi";s:2:"ky";s:7:"kirghis";s:2:"ky";s:10:"kârgâză";s:2:"ky";s:12:"kirgizština";s:2:"ky";s:12:"kirgiščina";s:2:"ky";s:7:"kirgiis";s:2:"ky";s:10:"kirgizisht";s:2:"ky";s:10:"kirgisiska";s:2:"ky";s:10:"kikirigizi";s:2:"ky";s:10:"kırgızca";s:2:"ky";s:8:"kilatini";s:2:"la";s:11:"kilasembagi";s:2:"lb";s:7:"kiganda";s:2:"lg";s:15:"淋布尔吉文";s:2:"li";s:9:"kilingala";s:2:"ln";s:7:"kilaosi";s:2:"lo";s:6:"kilozi";s:3:"loz";s:11:"kilithuania";s:2:"lt";s:8:"kilatvia";s:2:"lv";s:22:"klassisches chinesisch";s:3:"lzh";s:15:"klassinen kiina";s:3:"lzh";s:21:"klassescht chinesesch";s:3:"lzh";s:16:"klasikinė kinų";s:3:"lzh";s:16:"klassiek chinees";s:3:"lzh";s:11:"kajin-majol";s:2:"mh";s:7:"kimaori";s:2:"mi";s:11:"kimasedonia";s:2:"mk";s:17:"kabilar maleyalam";s:2:"ml";s:11:"kimalayalam";s:2:"ml";s:10:"kimongolia";s:2:"mn";s:17:"kʼabilan marathi";s:2:"mr";s:9:"kimarathi";s:2:"mr";s:9:"kimalesia";s:2:"ms";s:7:"kimalta";s:2:"mt";s:9:"krik dili";s:3:"mus";s:7:"kriški";s:3:"mus";s:11:"kríkština";s:3:"mus";s:4:"krik";s:3:"mus";s:5:"krík";s:3:"mus";s:6:"krykų";s:3:"mus";s:6:"krīku";s:3:"mus";s:5:"kriek";s:3:"mus";s:10:"kríkčina";s:3:"mus";s:7:"kiburma";s:2:"my";s:32:"kinų kalbos pietų minų tarmė";s:3:"nan";s:20:"književni norveški";s:2:"nb";s:21:"knjižna norveščina";s:2:"nb";s:18:"kibokmal cha norwe";s:2:"nb";s:8:"kinepali";s:2:"ne";s:8:"kinewari";s:3:"new";s:8:"kindonga";s:2:"ng";s:9:"kiholanzi";s:2:"nl";s:13:"kinorwe kipya";s:2:"nn";s:7:"kinorwe";s:2:"no";s:21:"kisotho cha kaskazini";s:3:"nso";s:11:"kuzey sotho";s:3:"nso";s:8:"kinyanja";s:2:"ny";s:9:"kiokitani";s:2:"oc";s:7:"kioromo";s:2:"om";s:7:"kioriya";s:2:"or";s:8:"kiosetia";s:2:"os";s:9:"kipunjabi";s:2:"pa";s:11:"kapampangan";s:3:"pam";s:9:"kipolandi";s:2:"pl";s:19:"kuzeybatı kafkasya";s:3:"pnt";s:8:"kipashto";s:2:"ps";s:6:"kireno";s:2:"pt";s:6:"keçua";s:2:"qu";s:8:"kechuaeg";s:2:"qu";s:7:"kvenča";s:2:"qu";s:14:"kečuánština";s:2:"qu";s:6:"kečua";s:2:"qu";s:10:"kwetsuagbe";s:2:"qu";s:6:"keĉua";s:2:"qu";s:7:"ketšua";s:2:"qu";s:6:"kecsua";s:2:"qu";s:8:"kvesjúa";s:2:"qu";s:11:"kättschowa";s:2:"qu";s:8:"kečujų";s:2:"qu";s:6:"kečvu";s:2:"qu";s:6:"keċwa";s:2:"qu";s:6:"keczua";s:2:"qu";s:13:"kečuánčina";s:2:"qu";s:14:"kečuanščina";s:2:"qu";s:9:"kiquechua";s:2:"qu";s:9:"keçuvaca";s:2:"qu";s:27:"kečuánština (chimborazo)";s:3:"qug";s:28:"kichwa (chimborazo-gebidder)";s:3:"qug";s:6:"kichwa";s:3:"qug";s:10:"kiromanshi";s:2:"rm";s:7:"kirundi";s:2:"rn";s:12:"kirundština";s:2:"rn";s:14:"kirundišćina";s:2:"rn";s:8:"kiroundi";s:2:"rn";s:10:"k-rundesch";s:2:"rn";s:11:"kirundčina";s:2:"rn";s:9:"kiromania";s:2:"ro";s:8:"kĩracia";s:2:"ru";s:6:"krievu";s:2:"ru";s:6:"kirusi";s:2:"ru";s:11:"kinyarwanda";s:2:"rw";s:11:"kinyarvanda";s:2:"rw";s:11:"kinjarvanda";s:2:"rw";s:16:"kiňarwandština";s:2:"rw";s:11:"kinjarwanda";s:2:"rw";s:11:"kinyaruanda";s:2:"rw";s:13:"kiniyaruwanda";s:2:"rw";s:8:"kiruanda";s:2:"rw";s:12:"kínjarvanda";s:2:"rw";s:15:"kinja-ruandesch";s:2:"rw";s:12:"kinjaruandų";s:2:"rw";s:11:"kiņaruanda";s:2:"rw";s:12:"kinya-ruanda";s:2:"rw";s:16:"kinyarwanda simi";s:2:"rw";s:11:"kiňarwanda";s:2:"rw";s:14:"kiniaruandisht";s:2:"rw";s:13:"kinyarvandcha";s:2:"rw";s:11:"kisanskriti";s:2:"sa";s:8:"kisindhi";s:2:"sd";s:20:"kisami cha kaskazini";s:2:"se";s:10:"kuzey sami";s:2:"se";s:7:"kisango";s:2:"sg";s:22:"kuroweshiyancin-sabiya";s:2:"sh";s:17:"kiserbia-kroeshia";s:2:"sh";s:9:"kisinhala";s:2:"si";s:10:"kislovakia";s:2:"sk";s:10:"kislovenia";s:2:"sl";s:6:"kāmoa";s:2:"sm";s:7:"kisamoa";s:2:"sm";s:17:"kisami cha kusini";s:3:"sma";s:7:"kishona";s:2:"sn";s:10:"kĩcumarĩ";s:2:"so";s:8:"kisomali";s:2:"so";s:9:"kialbania";s:2:"sq";s:8:"kiserbia";s:2:"sr";s:7:"kiswati";s:2:"ss";s:18:"kisotho cha kusini";s:2:"st";s:7:"kisunda";s:2:"su";s:7:"kuekene";s:2:"sv";s:7:"kiswidi";s:2:"sv";s:9:"kiswahili";s:2:"sw";s:10:"kiswahíli";s:2:"sw";s:7:"kitamil";s:2:"ta";s:8:"kitelugu";s:2:"te";s:7:"kitetum";s:3:"tet";s:8:"kitajiki";s:2:"tg";s:10:"kitailandi";s:2:"th";s:10:"kitigrinya";s:2:"ti";s:12:"kiturukimeni";s:2:"tk";s:8:"kitswana";s:2:"tn";s:7:"kitonga";s:2:"to";s:10:"kitokpisin";s:3:"tpi";s:8:"kituruki";s:2:"tr";s:8:"kitsonga";s:2:"ts";s:8:"kitatari";s:2:"tt";s:9:"kitumbuka";s:3:"tum";s:5:"kitwi";s:2:"tw";s:8:"kitahiti";s:2:"ty";s:22:"kesk-maroko tamazighti";s:3:"tzm";s:22:"keskiatlaksentamazight";s:3:"tzm";s:26:"közép-marokkói tamazigt";s:3:"tzm";s:8:"kiuiguri";s:2:"ug";s:9:"kiukrania";s:2:"uk";s:6:"kiurdu";s:2:"ur";s:8:"kiuzbeki";s:2:"uz";s:7:"kivenda";s:2:"ve";s:11:"kivietinamu";s:2:"vi";s:8:"kiwolofu";s:2:"wo";s:22:"kinų kalbos vu tarmė";s:3:"wuu";s:9:"kalmıqca";s:3:"xal";s:7:"kalmouk";s:3:"xal";s:6:"kalmik";s:3:"xal";s:11:"kalmyčtina";s:3:"xal";s:6:"kalmyk";s:3:"xal";s:12:"kalmückisch";s:3:"xal";s:8:"kalmõki";s:3:"xal";s:8:"kalmukki";s:3:"xal";s:7:"kalmük";s:3:"xal";s:6:"kalmuk";s:3:"xal";s:10:"kalmúkska";s:3:"xal";s:12:"kalmückesch";s:3:"xal";s:8:"kalmukų";s:3:"xal";s:7:"kalmiku";s:3:"xal";s:11:"kalmücksch";s:3:"xal";s:7:"kalmuks";s:3:"xal";s:9:"kałmucki";s:3:"xal";s:12:"kalmiščina";s:3:"xal";s:11:"kalmuckiska";s:3:"xal";s:10:"kalmıkça";s:3:"xal";s:4:"kosa";s:2:"xh";s:5:"ksosa";s:2:"xh";s:5:"koosa";s:2:"xh";s:5:"kosų";s:2:"xh";s:5:"khosu";s:2:"xh";s:5:"khosa";s:2:"xh";s:7:"kixhosa";s:2:"xh";s:6:"kiyidi";s:2:"yi";s:8:"kiyoruba";s:2:"yo";s:9:"kantonees";s:3:"yue";s:8:"kantoneg";s:3:"yue";s:9:"kantonski";s:3:"yue";s:12:"kantonština";s:3:"yue";s:11:"kantonesisk";s:3:"yue";s:12:"kantonesisch";s:3:"yue";s:7:"kantoni";s:3:"yue";s:13:"kantoninkiina";s:3:"yue";s:13:"kantonesískt";s:3:"yue";s:10:"kantoneesk";s:3:"yue";s:6:"kanton";s:3:"yue";s:10:"kantoneska";s:3:"yue";s:19:"kanton-schineesesch";s:3:"yue";s:8:"kantonek";s:3:"yue";s:12:"kantonesesch";s:3:"yue";s:27:"kinų kalbos kantono tarmė";s:3:"yue";s:11:"kantoniešu";s:3:"yue";s:10:"kantoński";s:3:"yue";s:12:"kantongiella";s:3:"yue";s:11:"kantončina";s:3:"yue";s:13:"kantonščina";s:3:"yue";s:12:"kantonesiska";s:3:"yue";s:8:"kantonca";s:3:"yue";s:11:"kyaena kasa";s:2:"zh";s:7:"kineski";s:2:"zh";s:8:"kinesisk";s:2:"zh";s:7:"kinagbe";s:2:"zh";s:5:"kiina";s:2:"zh";s:9:"kinesiskt";s:2:"zh";s:6:"kínai";s:2:"zh";s:10:"kínverska";s:2:"zh";s:8:"kĩcaina";s:2:"zh";s:11:"kineserisut";s:2:"zh";s:5:"kinų";s:2:"zh";s:13:"kiinnágiella";s:2:"zh";s:12:"kitajščina";s:2:"zh";s:9:"kinezisht";s:2:"zh";s:9:"kinesiska";s:2:"zh";s:7:"kichina";s:2:"zh";s:26:"kineski (pojednostavljeni)";s:7:"zh-hans";s:24:"kínverska (einfölduð)";s:7:"zh-hans";s:25:"kineski (pojednostavljen)";s:7:"zh-hans";s:23:"kinezishte e thjeshtuar";s:7:"zh-hans";s:23:"kineski (tradicionalni)";s:7:"zh-hant";s:24:"kínverska (hefðbundin)";s:7:"zh-hant";s:23:"kinezishte tradicionale";s:7:"zh-hant";s:16:"kichina cha jadi";s:7:"zh-hant";s:6:"kizulu";s:2:"zu";s:7:"kiakoli";s:3:"ach";s:7:"kiaghem";s:3:"agq";s:25:"kiarabu sanifu cha kisasa";s:6:"ar-001";s:5:"kiasu";s:3:"asa";s:7:"kibemba";s:3:"bem";s:6:"kibena";s:3:"bez";s:4:"kiga";s:3:"gaa";s:5:"kíga";s:3:"cgg";s:7:"kichiga";s:3:"cgg";s:6:"kigaca";s:3:"cgg";s:7:"kopties";s:3:"cop";s:9:"kopt dili";s:3:"cop";s:6:"kopteg";s:3:"cop";s:7:"koptski";s:3:"cop";s:10:"koptština";s:3:"cop";s:7:"koptisk";s:3:"cop";s:8:"koptisch";s:3:"cop";s:5:"kopti";s:3:"cop";s:7:"koptysk";s:3:"cop";s:4:"kopt";s:3:"cop";s:6:"koptik";s:3:"cop";s:9:"koptíska";s:3:"cop";s:8:"koptesch";s:3:"cop";s:6:"koptų";s:3:"cop";s:5:"koptu";s:3:"cop";s:7:"koptiku";s:3:"cop";s:7:"koptsch";s:3:"cop";s:9:"koptyjski";s:3:"cop";s:9:"koptčina";s:3:"cop";s:11:"koptščina";s:3:"cop";s:8:"koptiska";s:3:"cop";s:8:"kikhufti";s:3:"cop";s:8:"kıptice";s:3:"cop";s:7:"kitaita";s:3:"dav";s:7:"kizarma";s:3:"dje";s:7:"kiduala";s:3:"dua";s:12:"kijola-fonyi";s:3:"dyo";s:6:"kiembu";s:3:"ebu";s:6:"kjembu";s:3:"ebu";s:7:"kiefiki";s:3:"efi";s:7:"kimisri";s:3:"egy";s:10:"kifilipino";s:3:"fil";s:7:"kikisii";s:3:"guz";s:6:"kihiti";s:3:"hit";s:8:"kingomba";s:3:"jgo";s:9:"kimashami";s:3:"jmc";s:9:"kimachame";s:3:"jmc";s:5:"kamba";s:3:"kam";s:10:"kambština";s:3:"kam";s:7:"kambera";s:3:"kam";s:6:"kembų";s:3:"kam";s:5:"kambu";s:3:"kam";s:12:"kambaščina";s:3:"kam";s:9:"kambishte";s:3:"kam";s:7:"kikamba";s:3:"kam";s:7:"kambcha";s:3:"kam";s:9:"kimakonde";s:3:"kde";s:12:"kabuverdianu";s:3:"kea";s:11:"kabuverdian";s:3:"kea";s:13:"kapverdština";s:3:"kea";s:10:"kapverdisk";s:3:"kea";s:14:"kapverdšćina";s:3:"kea";s:15:"kapverdenkreoli";s:3:"kea";s:11:"kapverdiskt";s:3:"kea";s:19:"kaapverdysk creools";s:3:"kea";s:12:"kapvärdesch";s:3:"kea";s:13:"kaboverdiešu";s:3:"kea";s:11:"kappverdisk";s:3:"kea";s:20:"kaapverdisch creools";s:3:"kea";s:34:"kreolski wysp zielonego przylądka";s:3:"kea";s:12:"kapverdčina";s:3:"kea";s:15:"kabuverdianisht";s:3:"kea";s:11:"kapverdiska";s:3:"kea";s:14:"kikabuverdianu";s:3:"kea";s:14:"kabuverdiancha";s:3:"kea";s:12:"koyra chiini";s:3:"khq";s:12:"koyra çiini";s:3:"khq";s:12:"koyra-chiini";s:3:"khq";s:15:"koyra chiiniera";s:3:"khq";s:12:"kojra-csíni";s:3:"khq";s:11:"kojra čini";s:3:"khq";s:12:"koiračiinī";s:3:"khq";s:11:"koyra chini";s:3:"khq";s:13:"kojraçinisht";s:3:"khq";s:14:"kikoyra chiini";s:3:"khq";s:8:"kalenjin";s:3:"kln";s:3:"kln";s:3:"kln";s:8:"kalencin";s:3:"kln";s:10:"kalendžin";s:3:"kln";s:9:"kaljenjin";s:3:"kln";s:11:"kalenjinera";s:3:"kln";s:10:"kalendzsin";s:3:"kln";s:10:"kalenjinų";s:3:"kln";s:12:"kalendžīnu";s:3:"kln";s:15:"kalenjinščina";s:3:"kln";s:12:"kalenjinisht";s:3:"kln";s:10:"kikalenjin";s:3:"kln";s:11:"kalenjincha";s:3:"kln";s:7:"konkani";s:3:"kok";s:6:"konkan";s:3:"kok";s:13:"konkánština";s:3:"kok";s:11:"konkaniagbe";s:3:"kok";s:8:"konkaní";s:3:"kok";s:10:"konkaniera";s:3:"kok";s:9:"konkanių";s:3:"kok";s:7:"konkanu";s:3:"kok";s:12:"konkani simi";s:3:"kok";s:12:"konkánčina";s:3:"kok";s:13:"konkanščina";s:3:"kok";s:10:"konkanisht";s:3:"kok";s:3:"kok";s:3:"kok";s:9:"konkancha";s:3:"kok";s:6:"kurukh";s:3:"kru";s:10:"kurux dili";s:3:"kru";s:12:"kuruchština";s:3:"kru";s:8:"kuruški";s:3:"kru";s:5:"kuruh";s:3:"kru";s:5:"kuruk";s:3:"kru";s:7:"kúrúk";s:3:"kru";s:6:"kuruhu";s:3:"kru";s:6:"kurusk";s:3:"kru";s:11:"kurukhčina";s:3:"kru";s:8:"kisambaa";s:3:"ksb";s:7:"kibafia";s:3:"ksf";s:7:"kirangi";s:3:"lag";s:8:"kilakota";s:3:"lkt";s:12:"katanganluba";s:2:"lu";s:6:"kiluba";s:2:"lu";s:14:"kiluba-katanga";s:2:"lu";s:12:"kiluba-lulua";s:3:"lua";s:7:"kijaluo";s:3:"luo";s:7:"kiluhya";s:3:"luy";s:8:"kimaasai";s:3:"mas";s:6:"kimeru";s:3:"mer";s:19:"kreolski mauritiusa";s:3:"mfe";s:10:"kimoriseni";s:3:"mfe";s:16:"kimakhuwa-meetto";s:3:"mgh";s:6:"kimeta";s:3:"mgo";s:8:"kimohoki";s:3:"moh";s:9:"kimundang";s:3:"mua";s:13:"kelios kalbos";s:3:"mul";s:8:"khoekhoe";s:3:"naq";s:6:"kinama";s:3:"naq";s:23:"kindebele cha kaskazini";s:2:"nd";s:13:"kuzey ndebele";s:2:"nd";s:6:"kwasio";s:3:"nmg";s:6:"kvasio";s:3:"nmg";s:9:"kwasiogbe";s:3:"nmg";s:8:"kwasiera";s:3:"nmg";s:7:"kvasių";s:3:"nmg";s:8:"kuasisht";s:3:"nmg";s:8:"kikwasio";s:3:"nmg";s:9:"kvaziycha";s:3:"nmg";s:9:"kindebele";s:2:"nr";s:6:"kinuer";s:3:"nus";s:10:"kinyankole";s:3:"nyn";s:12:"腓尼基文";s:3:"phn";s:11:"k’iche’";s:3:"quc";s:9:"kʼicheʼ";s:3:"quc";s:5:"kiçe";s:3:"quc";s:5:"kiče";s:3:"quc";s:6:"kičé";s:3:"quc";s:13:"k’iche’ra";s:3:"quc";s:5:"kicse";s:3:"quc";s:5:"kiche";s:3:"quc";s:7:"kičių";s:3:"quc";s:5:"kicze";s:3:"quc";s:14:"kʼicheʼ simi";s:3:"quc";s:9:"kiçeisht";s:3:"quc";s:7:"kiçece";s:3:"quc";s:7:"kirombo";s:3:"rof";s:5:"kirwo";s:3:"rwk";s:9:"kisamburu";s:3:"saq";s:7:"kisangu";s:3:"sbp";s:6:"kisena";s:3:"seh";s:15:"koyraboro senni";s:3:"ses";s:14:"kojraboro seni";s:3:"ses";s:11:"koyra senni";s:3:"ses";s:16:"koyraboro sennia";s:3:"ses";s:12:"kojra-szenni";s:3:"ses";s:18:"koíraboró-senní";s:3:"ses";s:15:"koiraboro senni";s:3:"ses";s:19:"koryaboro senniycha";s:3:"ses";s:15:"kisami cha lule";s:3:"smj";s:16:"kisami cha inari";s:3:"smn";s:10:"koltasaami";s:3:"sms";s:11:"koltansaame";s:3:"sms";s:11:"koltta lapp";s:3:"sms";s:16:"kisami cha skolt";s:3:"sms";s:7:"komoreg";s:3:"swb";s:8:"komorski";s:3:"swb";s:11:"komorština";s:3:"swb";s:9:"komorisch";s:3:"swb";s:9:"komorogbe";s:3:"swb";s:7:"komoori";s:3:"swb";s:6:"komori";s:3:"swb";s:7:"komoria";s:3:"swb";s:11:"kommooresch";s:3:"swb";s:9:"komoresch";s:3:"swb";s:7:"komorų";s:3:"swb";s:6:"komoru";s:3:"swb";s:8:"komorisk";s:3:"swb";s:10:"komoryjski";s:3:"swb";s:10:"komorčina";s:3:"swb";s:7:"komorca";s:3:"swb";s:18:"konqo suahilicəsi";s:3:"swc";s:18:"kongoanski swahili";s:3:"swc";s:13:"kongo-suaheli";s:3:"swc";s:24:"kongojska swahilišćina";s:3:"swc";s:14:"kongo suahiili";s:3:"swc";s:16:"kongoko swahilia";s:3:"swc";s:8:"kingwana";s:3:"swc";s:18:"kiswahili na congo";s:3:"swc";s:22:"kongoska suahelšćina";s:3:"swc";s:17:"kongói szuahéli";s:3:"swc";s:13:"kongo swahili";s:3:"swc";s:16:"kongó-svahílí";s:3:"swc";s:13:"kongo-swahili";s:3:"swc";s:15:"kongo suahilių";s:3:"swc";s:13:"kongo svahili";s:3:"swc";s:19:"kongolesisk swahili";s:3:"swc";s:17:"kongijski suahili";s:3:"swc";s:17:"kongo svahiliycha";s:3:"swc";s:6:"kiteso";s:3:"teo";s:7:"klingon";s:3:"tlh";s:7:"klinqon";s:3:"tlh";s:10:"klingonski";s:3:"tlh";s:10:"klingonià";s:3:"tlh";s:13:"klingonština";s:3:"tlh";s:11:"klingonisch";s:3:"tlh";s:8:"klingona";s:3:"tlh";s:8:"klingoni";s:3:"tlh";s:10:"klingonera";s:3:"tlh";s:10:"klingonskt";s:3:"tlh";s:10:"klingonska";s:3:"tlh";s:11:"klingonesch";s:3:"tlh";s:9:"klingonų";s:3:"tlh";s:9:"klingoņu";s:3:"tlh";s:11:"klingoonsch";s:3:"tlh";s:11:"klingoński";s:3:"tlh";s:9:"klingonic";s:3:"tlh";s:12:"klingoniană";s:3:"tlh";s:13:"klingónčina";s:3:"tlh";s:14:"klingonščina";s:3:"tlh";s:8:"kiligoon";s:3:"tlh";s:10:"kiklingoni";s:3:"tlh";s:9:"klingonca";s:3:"tlh";s:9:"kitasawaq";s:3:"twq";s:5:"kivai";s:3:"vai";s:7:"kivunjo";s:3:"vun";s:6:"kisoga";s:3:"xog";s:19:"keine sprachinhalte";s:3:"zxx";s:26:"kän schpraachliche inhalt";s:3:"zxx";s:14:"kein schprooch";s:3:"zxx";s:20:"keng sproochinhalter";s:3:"zxx";s:17:"keen spraakinhold";s:3:"zxx";s:33:"không có nội dung ngôn ngữ";s:3:"zxx";s:20:"kastiliya ispancası";s:5:"es-es";s:20:"kihispania cha ulaya";s:5:"es-es";s:20:"kanada fransızcası";s:5:"fr-ca";s:18:"kanadski francuski";s:5:"fr-ca";s:24:"kanadisches französisch";s:5:"fr-ca";s:24:"kanadiska francojšćina";s:5:"fr-ca";s:25:"kanadatɔwo ƒe fransegbe";s:5:"fr-ca";s:13:"kanada franca";s:5:"fr-ca";s:13:"kanadanranska";s:5:"fr-ca";s:17:"kanadeesk frânsk";s:5:"fr-ca";s:23:"kanadischs französisch";s:5:"fr-ca";s:23:"kanadiska francošćina";s:5:"fr-ca";s:15:"kanadai francia";s:5:"fr-ca";s:17:"kanadísk franska";s:5:"fr-ca";s:22:"kanadescht franséisch";s:5:"fr-ca";s:18:"kanados prancūzų";s:5:"fr-ca";s:16:"kanādas franču";s:5:"fr-ca";s:22:"kanaadsch franzöösch";s:5:"fr-ca";s:15:"kanadisk fransk";s:5:"fr-ca";s:20:"kanadyjski francuski";s:5:"fr-ca";s:22:"kanadska francoščina";s:5:"fr-ca";s:19:"kanadensisk franska";s:5:"fr-ca";s:19:"kanada fransuzchasi";s:5:"fr-ca";s:9:"kuikilani";s:5:"fr-ch";s:9:"kige’ez";s:3:"gez";s:7:"kibasaa";s:3:"bas";s:7:"kibamun";s:3:"bax";s:6:"kibeja";s:3:"bej";s:5:"koose";s:3:"bss";s:5:"koszi";s:3:"bss";s:9:"kado dili";s:3:"cad";s:4:"kado";s:3:"cad";s:5:"kaddo";s:3:"cad";s:6:"kaddó";s:3:"cad";s:4:"kadu";s:3:"cad";s:11:"kadoščina";s:3:"cad";s:10:"karib dili";s:3:"car";s:7:"karibeg";s:3:"car";s:8:"karipski";s:3:"car";s:11:"karibština";s:3:"car";s:9:"karibisch";s:3:"car";s:7:"kariibi";s:3:"car";s:6:"karibi";s:3:"car";s:8:"karibysk";s:3:"car";s:10:"kariibisch";s:3:"car";s:5:"karib";s:3:"car";s:11:"karíbamál";s:3:"car";s:9:"karibesch";s:3:"car";s:7:"karibų";s:3:"car";s:7:"karību";s:3:"car";s:8:"karibisk";s:3:"car";s:18:"kariebsche spraken";s:3:"car";s:9:"karibský";s:3:"car";s:14:"karibski jezik";s:3:"car";s:9:"karibiska";s:3:"car";s:12:"keskhollandi";s:3:"dum";s:13:"keskihollanti";s:3:"dum";s:15:"közép holland";s:3:"dum";s:6:"kijula";s:3:"dyu";s:8:"kiekajuk";s:3:"eka";s:12:"krennsaozneg";s:3:"enm";s:11:"keskinglise";s:3:"enm";s:13:"keskienglanti";s:3:"enm";s:13:"közép angol";s:3:"enm";s:8:"kiewondo";s:3:"ewo";s:5:"kifon";s:3:"fon";s:14:"krenncʼhalleg";s:3:"frm";s:13:"keskprantsuse";s:3:"frm";s:11:"keskiranska";s:3:"frm";s:15:"közép francia";s:3:"frm";s:18:"kifaransa cha kale";s:3:"fro";s:12:"keleti fríz";s:3:"frs";s:22:"kifrisia cha mashariki";s:3:"frs";s:7:"kigbaya";s:3:"gba";s:13:"kiribatština";s:3:"gil";s:8:"kiribati";s:3:"gil";s:12:"kiribatiešu";s:3:"gil";s:10:"kiribatisk";s:3:"gil";s:12:"kiribatčina";s:3:"gil";s:14:"kiribatščina";s:3:"gil";s:13:"kiribati dili";s:3:"gil";s:18:"krennalamaneg uhel";s:3:"gmh";s:14:"keskülemsaksa";s:3:"gmh";s:14:"keskiyläsaksa";s:3:"gmh";s:21:"közép felső német";s:3:"gmh";s:15:"kutchin-sprache";s:3:"gwi";s:7:"kutchin";s:3:"gwi";s:11:"kutchinisch";s:3:"gwi";s:15:"kutchin-sprooch";s:3:"gwi";s:7:"kučinu";s:3:"gwi";s:6:"kachin";s:3:"kac";s:8:"kaçinca";s:3:"kac";s:6:"kačin";s:3:"kac";s:6:"katxin";s:3:"kac";s:12:"kačijština";s:3:"kac";s:14:"kachin-sprache";s:3:"kac";s:8:"katšini";s:3:"kac";s:7:"katšin";s:3:"kac";s:16:"kachin-schpraach";s:3:"kac";s:6:"kacsin";s:3:"kac";s:6:"kasín";s:3:"kac";s:14:"kachin-sprooch";s:3:"kac";s:7:"kačinu";s:3:"kac";s:6:"kaċin";s:3:"kac";s:6:"kaczin";s:3:"kac";s:12:"kačjinčina";s:3:"kac";s:13:"kačinščina";s:3:"kac";s:6:"kaçin";s:3:"kac";s:4:"kaje";s:3:"kaj";s:3:"kai";s:3:"kaj";s:6:"kadži";s:3:"kaj";s:4:"kawi";s:3:"kaw";s:9:"kavi dili";s:3:"kaw";s:4:"kavi";s:3:"kaw";s:5:"kaavi";s:3:"kaw";s:5:"kaví";s:3:"kaw";s:5:"kāvi";s:3:"kaw";s:7:"kanembu";s:3:"kbl";s:8:"kanembou";s:3:"kbl";s:8:"kanembų";s:3:"kbl";s:8:"kaņembu";s:3:"kbl";s:9:"kikanembu";s:3:"kbl";s:4:"koro";s:3:"kfo";s:9:"koro dili";s:3:"kfo";s:4:"koru";s:3:"kfo";s:6:"kikoro";s:3:"kfo";s:5:"khasi";s:3:"kha";s:4:"kasi";s:3:"kha";s:7:"khásí";s:3:"kha";s:13:"khasi-sprache";s:3:"kha";s:8:"khasigbe";s:3:"kha";s:8:"khasisch";s:3:"kha";s:5:"kaszi";s:3:"kha";s:5:"kasí";s:3:"kha";s:13:"khasi-sprooch";s:3:"kha";s:5:"khasu";s:3:"kha";s:11:"khasijčina";s:3:"kha";s:9:"khotanés";s:3:"kho";s:8:"khotaneg";s:3:"kho";s:12:"kotanizijski";s:3:"kho";s:9:"khotanès";s:3:"kho";s:11:"khotanesisk";s:3:"kho";s:9:"khotanese";s:3:"kho";s:8:"kotanés";s:3:"kho";s:7:"khotani";s:3:"kho";s:9:"khotanais";s:3:"kho";s:10:"khotaneesk";s:3:"kho";s:8:"kotanéz";s:3:"kho";s:6:"khotan";s:3:"kho";s:7:"kotaska";s:3:"kho";s:9:"kotanezų";s:3:"kho";s:8:"kotaniż";s:3:"kho";s:9:"khotanees";s:3:"kho";s:9:"khotanês";s:3:"kho";s:12:"kotanščina";s:3:"kho";s:12:"khotanesiska";s:3:"kho";s:8:"kimbundu";s:3:"kmb";s:13:"kimbundu dili";s:3:"kmb";s:13:"kimbundština";s:3:"kmb";s:16:"kimbundu-sprache";s:3:"kmb";s:10:"kimboundou";s:3:"kmb";s:18:"kimbundu-schpraach";s:3:"kmb";s:10:"kimbúndú";s:3:"kmb";s:16:"kimbundu-sprooch";s:3:"kmb";s:9:"kosraeanu";s:3:"kos";s:13:"kosreyan dili";s:3:"kos";s:6:"kosrae";s:3:"kos";s:10:"kosreanski";s:3:"kos";s:8:"kosraeà";s:3:"kos";s:12:"kosrajština";s:3:"kos";s:8:"kosraean";s:3:"kos";s:12:"kosraeanisch";s:3:"kos";s:10:"kosraeagbe";s:3:"kos";s:9:"kosraeano";s:3:"kos";s:7:"kusaien";s:3:"kos";s:11:"kosraeaansk";s:3:"kos";s:6:"kosrei";s:3:"kos";s:5:"kosre";s:3:"kos";s:8:"kosraska";s:3:"kos";s:12:"kosraeanesch";s:3:"kos";s:9:"kosreanų";s:3:"kos";s:12:"kosrājiešu";s:3:"kos";s:8:"kosrejan";s:3:"kos";s:10:"kosraeansk";s:3:"kos";s:12:"kosraeaansch";s:3:"kos";s:10:"kosraeaans";s:3:"kos";s:6:"kusaie";s:3:"kos";s:13:"kosrajščina";s:3:"kos";s:10:"kosreanska";s:3:"kos";s:6:"kpelle";s:3:"kpe";s:11:"kpelle dili";s:3:"kpe";s:5:"kpele";s:3:"kpe";s:14:"kpelle-sprache";s:3:"kpe";s:7:"kpellé";s:3:"kpe";s:16:"kpelle-schpraach";s:3:"kpe";s:14:"kpelle-sprooch";s:3:"kpe";s:6:"kpellu";s:3:"kpe";s:13:"kpelejščina";s:3:"kpe";s:9:"karelianu";s:3:"krl";s:13:"karelyan dili";s:3:"krl";s:8:"karelieg";s:3:"krl";s:10:"karelijski";s:3:"krl";s:11:"karelština";s:3:"krl";s:7:"karelsk";s:3:"krl";s:9:"karelisch";s:3:"krl";s:8:"karelian";s:3:"krl";s:7:"karjala";s:3:"krl";s:8:"karelysk";s:3:"krl";s:7:"karelai";s:3:"krl";s:7:"karelia";s:3:"krl";s:9:"karélska";s:3:"krl";s:9:"karelesch";s:3:"krl";s:7:"karelų";s:3:"krl";s:8:"karēļu";s:3:"krl";s:9:"kareelsch";s:3:"krl";s:8:"karelski";s:3:"krl";s:10:"kareliană";s:3:"krl";s:10:"karelčina";s:3:"krl";s:12:"karelščina";s:3:"krl";s:8:"karelska";s:3:"krl";s:9:"karelyaca";s:3:"krl";s:5:"kumyk";s:3:"kum";s:10:"kumuk dili";s:3:"kum";s:5:"kumik";s:3:"kum";s:6:"kúmik";s:3:"kum";s:10:"kumyčtina";s:3:"kum";s:5:"kymyk";s:3:"kum";s:10:"kumükisch";s:3:"kum";s:9:"kumikagbe";s:3:"kum";s:7:"kumõki";s:3:"kum";s:7:"kumykki";s:3:"kum";s:6:"koumyk";s:3:"kum";s:7:"koemuks";s:3:"kum";s:6:"kumük";s:3:"kum";s:7:"kúmík";s:3:"kum";s:10:"kumükesch";s:3:"kum";s:7:"kumikų";s:3:"kum";s:6:"kumiku";s:3:"kum";s:10:"kumücksch";s:3:"kum";s:7:"kumycki";s:3:"kum";s:5:"kumuk";s:3:"kum";s:11:"kumiščina";s:3:"kum";s:9:"kumykiska";s:3:"kum";s:8:"kumukça";s:3:"kum";s:7:"kutenai";s:3:"kut";s:12:"kutenay dili";s:3:"kut";s:13:"kutenajština";s:3:"kut";s:7:"kutenaj";s:3:"kut";s:15:"kutenai-sprache";s:3:"kut";s:17:"kutenai-schpraach";s:3:"kut";s:9:"kútenaí";s:3:"kut";s:15:"kutenai-sprooch";s:3:"kut";s:8:"kutenaju";s:3:"kut";s:12:"kutenajčina";s:3:"kut";s:14:"kutenajščina";s:3:"kut";s:7:"kimongo";s:3:"lol";s:7:"kilunda";s:3:"lun";s:6:"khotta";s:3:"mag";s:8:"kimagahi";s:3:"mag";s:6:"kimaba";s:3:"mde";s:7:"kimende";s:3:"men";s:15:"krenniwerzhoneg";s:3:"mga";s:8:"keskiiri";s:3:"mga";s:10:"keski-iiri";s:3:"mga";s:11:"közép ír";s:3:"mga";s:7:"kimoore";s:3:"mos";s:16:"klasični nevari";s:3:"nwc";s:17:"klassisk newarisk";s:3:"nwc";s:16:"klassinen newari";s:3:"nwc";s:15:"klassiek newari";s:3:"nwc";s:16:"klasični newari";s:3:"nwc";s:17:"klasszikus newari";s:3:"nwc";s:20:"klassísk nevaríska";s:3:"nwc";s:17:"klasikinė nevari";s:3:"nwc";s:16:"klasiskā nevaru";s:3:"nwc";s:15:"klassisk newari";s:3:"nwc";s:19:"klassiek nepalbhasa";s:3:"nwc";s:21:"klasická nevárčina";s:3:"nwc";s:22:"klasična nevarščina";s:3:"nwc";s:18:"klassisk newariska";s:3:"nwc";s:17:"kinewari cha kale";s:3:"nwc";s:13:"klasik nevari";s:3:"nwc";s:10:"kinyamwezi";s:3:"nym";s:7:"kinyoro";s:3:"nyo";s:7:"kinzema";s:3:"nzi";s:16:"kiajemi cha kale";s:3:"peo";s:9:"kirapanui";s:3:"rap";s:11:"kiraratonga";s:3:"rar";s:9:"kisandawe";s:3:"sad";s:21:"kiaramu cha wasamaria";s:3:"sam";s:17:"kiarabu cha chadi";s:3:"shu";s:9:"kisoninke";s:3:"snk";s:8:"kisukuma";s:3:"suk";s:6:"kisusu";s:3:"sus";s:18:"klasični sirijski";s:3:"syc";s:15:"klassisk syrisk";s:3:"syc";s:21:"klassikaline süüria";s:3:"syc";s:15:"klassiek syrysk";s:3:"syc";s:16:"klasični sirski";s:3:"syc";s:16:"klasszikus szír";s:3:"syc";s:20:"klassísk sýrlenska";s:3:"syc";s:21:"klasikinė siriečių";s:3:"syc";s:19:"klasiskā sīriešu";s:3:"syc";s:16:"klassiek syrisch";s:3:"syc";s:19:"klasická sýrčina";s:3:"syc";s:20:"klasična sirščina";s:3:"syc";s:16:"klassisk syriska";s:3:"syc";s:17:"klasik süryanice";s:3:"syc";s:7:"kitemne";s:3:"tem";s:5:"kiyao";s:3:"yao";s:22:"ký hiệu blissymbols";s:3:"zbl";s:9:"kighomala";s:3:"bbj";s:7:"kibafut";s:3:"bfd";s:3:"kom";s:3:"bkm";s:6:"komgbe";s:3:"bkm";s:5:"komų";s:3:"bkm";s:4:"komu";s:3:"bkm";s:5:"kikom";s:3:"bkm";s:6:"kibulu";s:3:"bum";s:9:"kimedumba";s:3:"byv";s:11:"kajugština";s:3:"cay";s:6:"kajuga";s:3:"cay";s:7:"kajúga";s:3:"cay";s:9:"kaijūgų";s:3:"cay";s:19:"konkánština (goa)";s:3:"gom";s:14:"konkani de goa";s:3:"gom";s:13:"konkani goano";s:3:"gom";s:13:"konkani (goa)";s:3:"gom";s:26:"kinų kalbos hunano tarmė";s:3:"hsn";s:8:"kiibibio";s:3:"ibb";s:6:"katabu";s:3:"kcg";s:7:"kenyang";s:3:"ken";s:8:"kaingang";s:3:"kgp";s:4:"kako";s:3:"kkj";s:7:"kakogbe";s:3:"kkj";s:5:"kakó";s:3:"kkj";s:6:"kikako";s:3:"kkj";s:6:"kimafa";s:3:"maf";s:6:"kisaho";s:3:"ssy";s:7:"kiyemba";s:3:"ybb";s:12:"kunstspraken";s:3:"art";s:18:"kaukaasche spraken";s:3:"cau";s:8:"kavkaski";s:3:"cau";s:16:"keltsche spraken";s:3:"cel";s:13:"keltski jezik";s:3:"cel";s:27:"kreoolsch-engelsche spraken";s:3:"cpe";s:42:"kreolski ili pidžin zasnovan na engleskom";s:3:"cpe";s:31:"kreoolsch-franzöösche spraken";s:3:"cpf";s:43:"kreolski ili pidžin zasnovan na francuskom";s:3:"cpf";s:30:"kreoolsch-portugeesche spraken";s:3:"cpp";s:44:"kreolski ili pidžin baziran na portugalskom";s:3:"cpp";s:18:"kreoolsche spraken";s:3:"crp";s:20:"kreolski ili pidžin";s:3:"crp";s:20:"kuschietsche spraken";s:3:"cus";s:17:"kušitički jezik";s:3:"cus";s:9:"kareensch";s:3:"kar";s:8:"karenski";s:3:"kar";s:15:"khoisan-spraken";s:3:"khi";s:15:"koisanski jezik";s:3:"khi";s:11:"kru-spraken";s:3:"kro";s:3:"kru";s:3:"kro";}i:105;a:913:{s:13:"isi-abkhazian";s:2:"ab";s:16:"ikinyafurikaneri";s:2:"af";s:8:"isibhulu";s:2:"af";s:13:"isi-afrikaans";s:2:"af";s:7:"igikani";s:2:"ak";s:8:"isi-akan";s:2:"ak";s:11:"ikimuhariki";s:2:"am";s:12:"inyamuhariki";s:2:"am";s:11:"isi-amharic";s:2:"am";s:15:"inglés antiguu";s:3:"ang";s:15:"inglés antiguo";s:3:"ang";s:12:"inggris kuno";s:3:"ang";s:14:"inglese antico";s:3:"ang";s:14:"ingliż, antik";s:3:"ang";s:15:"inglês arcaico";s:3:"ang";s:7:"icarabu";s:2:"ar";s:8:"icyarabu";s:2:"ar";s:10:"isi-arabic";s:2:"ar";s:11:"isi-mapuche";s:3:"arn";s:10:"icyasamizi";s:2:"as";s:11:"isiassamese";s:2:"as";s:12:"isi-assamese";s:2:"as";s:10:"isi-aymara";s:2:"ay";s:16:"inyazeribayijani";s:2:"az";s:15:"isi-azerbaijani";s:2:"az";s:11:"isi-bashkir";s:2:"ba";s:13:"ikibelarusiya";s:2:"be";s:14:"isi-belarusian";s:2:"be";s:16:"ikinyabuligariya";s:2:"bg";s:12:"isi-bulgaria";s:2:"bg";s:11:"isi-bulgari";s:2:"bg";s:10:"isi-bihari";s:2:"bh";s:11:"isi-bambara";s:2:"bm";s:10:"ikibengali";s:2:"bn";s:11:"isi-bengali";s:2:"bn";s:11:"isi-tibetan";s:2:"bo";s:12:"inyebiritoni";s:2:"br";s:10:"isi-breton";s:2:"br";s:12:"inyebosiniya";s:2:"bs";s:10:"isi-bosnia";s:2:"bs";s:11:"isi-bosnian";s:2:"bs";s:11:"igikatalani";s:2:"ca";s:11:"isi-calatan";s:2:"ca";s:11:"isi-catalan";s:2:"ca";s:12:"isi-cherokee";s:3:"chr";s:18:"isi-sorani kurdish";s:3:"ckb";s:12:"isi-corsican";s:2:"co";s:7:"igiceke";s:2:"cs";s:9:"isi-czech";s:2:"cs";s:9:"ikigaluwa";s:2:"cy";s:9:"isi-welsh";s:2:"cy";s:10:"ikidaninwa";s:2:"da";s:18:"డేనిష్";s:2:"da";s:10:"isi-danish";s:2:"da";s:7:"ikidage";s:2:"de";s:10:"isi-german";s:2:"de";s:15:"itävallansaksa";s:5:"de-at";s:19:"isi-austrian german";s:5:"de-at";s:21:"isi-swiss high german";s:5:"de-ch";s:11:"izelsorabeg";s:3:"dsb";s:17:"isi-lower sorbian";s:3:"dsb";s:10:"isi-divehi";s:2:"dv";s:12:"isi-dzongkha";s:2:"dz";s:6:"ivicha";s:2:"ee";s:7:"isi-ewe";s:2:"ee";s:29:"italų kalbos emilijos tarmė";s:3:"egl";s:9:"ikigereki";s:2:"el";s:9:"isi-greek";s:2:"el";s:7:"inglés";s:2:"en";s:7:"ingilis";s:2:"en";s:7:"inglise";s:2:"en";s:8:"ingelesa";s:2:"en";s:7:"inglês";s:2:"en";s:7:"ingelsk";s:2:"en";s:7:"inggris";s:2:"en";s:7:"inglese";s:2:"en";s:8:"inggeris";s:2:"en";s:7:"ingliż";s:2:"en";s:8:"ingliffa";s:2:"en";s:11:"ingles simi";s:2:"en";s:10:"icongereza";s:2:"en";s:11:"icyongereza";s:2:"en";s:9:"ingiriisi";s:2:"en";s:9:"inglizcha";s:2:"en";s:8:"isingesi";s:2:"en";s:9:"i-english";s:2:"en";s:18:"inglés de canadá";s:5:"en-ca";s:18:"inglés canadiense";s:5:"en-ca";s:16:"inglês canadês";s:5:"en-ca";s:17:"inglés canadiano";s:5:"en-ca";s:14:"inggris kanada";s:5:"en-ca";s:16:"inglese canadese";s:5:"en-ca";s:15:"inggeris kanada";s:5:"en-ca";s:17:"inglês canadiano";s:5:"en-ca";s:17:"inglês canadense";s:5:"en-ca";s:18:"i-canadian english";s:5:"en-ca";s:24:"inglés de gran bretaña";s:5:"en-gb";s:18:"inglés británico";s:5:"en-gb";s:15:"inglise (briti)";s:5:"en-gb";s:16:"inglês britanic";s:5:"en-gb";s:15:"inggris inggris";s:5:"en-gb";s:18:"inglese britannico";s:5:"en-gb";s:16:"inggeris british";s:5:"en-gb";s:18:"ingliż brittaniku";s:5:"en-gb";s:18:"inglês britânico";s:5:"en-gb";s:33:"ingiriisi (boqortooyada midowday)";s:5:"en-gb";s:17:"i-british english";s:5:"en-gb";s:13:"icyesiperanto";s:2:"eo";s:9:"isberento";s:2:"eo";s:13:"isi-esperanto";s:2:"eo";s:5:"ispan";s:2:"es";s:11:"ispaniyanci";s:2:"es";s:7:"ispanų";s:2:"es";s:12:"icesipanyolo";s:2:"es";s:13:"icyesipanyolo";s:2:"es";s:9:"isbaanish";s:2:"es";s:8:"ispancha";s:2:"es";s:11:"isi-spanish";s:2:"es";s:11:"istoniyanci";s:2:"et";s:7:"igauņu";s:2:"et";s:12:"icyesitoniya";s:2:"et";s:11:"istooniyaan";s:2:"et";s:12:"isi-estonian";s:2:"et";s:11:"isi-estonia";s:2:"et";s:9:"ikibasiki";s:2:"eu";s:10:"isi-basque";s:2:"eu";s:36:"ispanų kalbos ekstremadūros tarmė";s:3:"ext";s:9:"igiperisi";s:2:"fa";s:10:"inyeperisi";s:2:"fa";s:10:"isi-persia";s:2:"fa";s:11:"isi-persian";s:2:"fa";s:12:"igifinilande";s:2:"fi";s:11:"isi-finnish";s:2:"fi";s:10:"isi-fijian";s:2:"fj";s:12:"inyefaroyizi";s:2:"fo";s:11:"isi-faroese";s:2:"fo";s:10:"igifaransa";s:2:"fr";s:10:"isi-french";s:2:"fr";s:13:"igifiriziyani";s:2:"fy";s:11:"isi-frisian";s:2:"fy";s:19:"isi-western frisian";s:2:"fy";s:4:"iers";s:2:"ga";s:9:"irlandés";s:2:"ga";s:6:"irland";s:2:"ga";s:10:"iwerzhoneg";s:2:"ga";s:5:"irski";s:2:"ga";s:9:"irlandès";s:2:"ga";s:8:"irština";s:2:"ga";s:4:"irsk";s:2:"ga";s:6:"irisch";s:2:"ga";s:9:"iršćina";s:2:"ga";s:11:"irelanɖgbe";s:2:"ga";s:5:"irish";s:2:"ga";s:7:"irlanda";s:2:"ga";s:4:"iiri";s:2:"ga";s:9:"irlandais";s:2:"ga";s:5:"iersk";s:2:"ga";s:7:"iirisch";s:2:"ga";s:9:"irlandese";s:2:"ga";s:8:"irlandia";s:2:"ga";s:13:"irlandimiutut";s:2:"ga";s:7:"ieresch";s:2:"ga";s:6:"iresch";s:2:"ga";s:7:"ireland";s:2:"ga";s:9:"irlandiż";s:2:"ga";s:6:"iersch";s:2:"ga";s:9:"irlandzki";s:2:"ga";s:9:"irlandês";s:2:"ga";s:13:"irlandes simi";s:2:"ga";s:10:"irlandeză";s:2:"ga";s:10:"ikirilandi";s:2:"ga";s:11:"iirragiella";s:2:"ga";s:9:"irščina";s:2:"ga";s:11:"irlandezçe";s:2:"ga";s:6:"iriska";s:2:"ga";s:9:"irlandcha";s:2:"ga";s:9:"isi-irish";s:2:"ga";s:10:"isi-gagauz";s:3:"gag";s:25:"ikigaluwa cy’igisweduwa";s:2:"gd";s:12:"iskot giilik";s:2:"gd";s:17:"i-scottish gaelic";s:2:"gd";s:11:"ikigalisiya";s:2:"gl";s:12:"isi-galician";s:2:"gl";s:11:"isi-galicia";s:2:"gl";s:12:"inyaguwarani";s:2:"gn";s:11:"isi-guarani";s:2:"gn";s:16:"isi-swiss german";s:3:"gsw";s:12:"inyegujarati";s:2:"gu";s:12:"isi-gujarati";s:2:"gu";s:8:"isi-manx";s:2:"gv";s:9:"igihawusa";s:2:"ha";s:9:"isi-hausa";s:2:"ha";s:12:"isi-hawaiian";s:3:"haw";s:5:"ivrit";s:2:"he";s:6:"ibrani";s:2:"he";s:6:"ivrits";s:2:"he";s:11:"igiheburayo";s:2:"he";s:7:"ibroniy";s:2:"he";s:10:"isi-hebrew";s:2:"he";s:8:"inidikan";s:2:"hi";s:8:"igihindi";s:2:"hi";s:8:"indishte";s:2:"hi";s:9:"isi-hindi";s:2:"hi";s:7:"ilonggo";s:3:"hil";s:13:"igikorowasiya";s:2:"hr";s:11:"isi-croatia";s:2:"hr";s:12:"isi-croatian";s:2:"hr";s:17:"isi-upper sorbian";s:3:"hsb";s:11:"isi-haitian";s:2:"ht";s:15:"ikinyahongiriya";s:2:"hu";s:12:"igihongiriya";s:2:"hu";s:13:"isi-hungarian";s:2:"hu";s:14:"ikinyarumeniya";s:2:"hy";s:11:"isiarmenian";s:2:"hy";s:11:"isi-armenia";s:2:"hy";s:11:"interlingua";s:2:"ia";s:16:"interlingua dili";s:2:"ia";s:11:"interlingva";s:2:"ia";s:12:"interlingvao";s:2:"ia";s:12:"interlíngua";s:2:"ia";s:12:"interlinguwa";s:2:"ia";s:19:"izilimi ezihlangene";s:2:"ia";s:10:"indonesies";s:2:"id";s:15:"indonihyia kasa";s:2:"id";s:9:"indonesiu";s:2:"id";s:7:"indonez";s:2:"id";s:9:"indonezeg";s:2:"id";s:12:"indonezijski";s:2:"id";s:8:"indonesi";s:2:"id";s:13:"indonéština";s:2:"id";s:9:"indoneseg";s:2:"id";s:10:"indonesisk";s:2:"id";s:11:"indonesisch";s:2:"id";s:13:"indonešćina";s:2:"id";s:12:"indonesiagbe";s:2:"id";s:10:"indonesian";s:2:"id";s:9:"indonezia";s:2:"id";s:9:"indonesio";s:2:"id";s:10:"indoneesia";s:2:"id";s:11:"indonesiera";s:2:"id";s:9:"indonesia";s:2:"id";s:11:"indonesiskt";s:2:"id";s:11:"indonésien";s:2:"id";s:11:"indinéisis";s:2:"id";s:11:"innd-innsis";s:2:"id";s:8:"indonéz";s:2:"id";s:11:"indonesiano";s:2:"id";s:9:"indonisia";s:2:"id";s:13:"indónesíska";s:2:"id";s:15:"indonesiamiutut";s:2:"id";s:12:"indoneesesch";s:2:"id";s:11:"indonesesch";s:2:"id";s:14:"indoneziečių";s:2:"id";s:13:"indonēziešu";s:2:"id";s:13:"indonezianina";s:2:"id";s:11:"indoneżjan";s:2:"id";s:10:"indoneesch";s:2:"id";s:12:"indonezyjski";s:2:"id";s:10:"indonésio";s:2:"id";s:14:"indonesio simi";s:2:"id";s:8:"indonais";s:2:"id";s:13:"ikinyendoziya";s:2:"id";s:12:"indoneziană";s:2:"id";s:15:"indonesiagiella";s:2:"id";s:14:"indonézština";s:2:"id";s:16:"indonezijščina";s:2:"id";s:13:"indunuusiyaan";s:2:"id";s:11:"indonezisht";s:2:"id";s:11:"indonesiska";s:2:"id";s:11:"indoneyzcha";s:2:"id";s:14:"isi-indonesian";s:2:"id";s:11:"interlingue";s:2:"ie";s:16:"interlingue dili";s:2:"ie";s:11:"interlingve";s:2:"ie";s:11:"intagulanci";s:2:"ie";s:10:"interligua";s:2:"ie";s:10:"interkalba";s:2:"ie";s:14:"isiinterlingue";s:2:"ie";s:9:"iru Èdè";s:2:"ie";s:7:"izilimu";s:2:"ie";s:4:"igbo";s:2:"ig";s:4:"iqbo";s:2:"ig";s:8:"igibokan";s:2:"ig";s:10:"igboština";s:2:"ig";s:7:"igbogbe";s:2:"ig";s:3:"ibo";s:2:"ig";s:7:"igboera";s:2:"ig";s:8:"igiboore";s:2:"ig";s:11:"inyamuranci";s:2:"ig";s:5:"igbó";s:2:"ig";s:12:"igbo-sprooch";s:2:"ig";s:5:"igbų";s:2:"ig";s:9:"igbo simi";s:2:"ig";s:7:"ikigubo";s:2:"ig";s:11:"igboščina";s:2:"ig";s:4:"igbe";s:2:"ig";s:7:"igbocha";s:2:"ig";s:8:"isi-igbo";s:2:"ig";s:14:"isi-sichuan yi";s:2:"ii";s:8:"iñupiak";s:2:"ik";s:7:"inupiaq";s:2:"ik";s:12:"inupiaq dili";s:2:"ik";s:7:"inupiak";s:2:"ik";s:13:"inupiakština";s:2:"ik";s:9:"inwpiaceg";s:2:"ik";s:9:"injupiaki";s:2:"ik";s:13:"iniúipiaicis";s:2:"ik";s:8:"inupiaku";s:2:"ik";s:7:"inupjak";s:2:"ik";s:9:"inupiaque";s:2:"ik";s:13:"inupiaščina";s:2:"ik";s:9:"inuktitut";s:2:"iu";s:7:"ilokano";s:3:"ilo";s:5:"iloko";s:3:"ilo";s:10:"iloko dili";s:3:"ilo";s:6:"ilocà";s:3:"ilo";s:13:"ilokánština";s:3:"ilo";s:8:"ilocaneg";s:3:"ilo";s:15:"ilokano-sprache";s:3:"ilo";s:8:"ilikogbe";s:3:"ilo";s:7:"ilocano";s:3:"ilo";s:6:"ilokó";s:3:"ilo";s:15:"ilokano-sprooch";s:3:"ilo";s:5:"iloku";s:3:"ilo";s:12:"ilokánčina";s:3:"ilo";s:13:"ilokanščina";s:3:"ilo";s:6:"ingush";s:3:"inh";s:11:"inquş dili";s:3:"inh";s:9:"ingoucheg";s:3:"inh";s:11:"ingušetski";s:3:"inh";s:7:"ingúix";s:3:"inh";s:10:"inguština";s:3:"inh";s:8:"ingwsieg";s:3:"inh";s:11:"inguschisch";s:3:"inh";s:9:"ingusigbe";s:3:"inh";s:7:"inguši";s:3:"inh";s:8:"inguuši";s:3:"inh";s:8:"ingouche";s:3:"inh";s:7:"ingoesj";s:3:"inh";s:8:"iongúis";s:3:"inh";s:5:"ingus";s:3:"inh";s:10:"ingushetia";s:3:"inh";s:6:"ingús";s:3:"inh";s:11:"inguschesch";s:3:"inh";s:8:"ingušų";s:3:"inh";s:7:"ingušu";s:3:"inh";s:9:"ingusjisk";s:3:"inh";s:13:"ingusch’sch";s:3:"inh";s:13:"ingoesjetisch";s:3:"inh";s:7:"inguski";s:3:"inh";s:7:"inguche";s:3:"inh";s:8:"ingușă";s:3:"inh";s:11:"inguščina";s:3:"inh";s:10:"ingusjiska";s:3:"inh";s:3:"ido";s:2:"io";s:8:"ido dili";s:2:"io";s:11:"ido-sprache";s:2:"io";s:4:"idó";s:2:"io";s:11:"ido-sprooch";s:2:"io";s:9:"islandés";s:2:"is";s:6:"island";s:2:"is";s:8:"islandeg";s:2:"is";s:9:"islandski";s:2:"is";s:9:"islandès";s:2:"is";s:12:"islandština";s:2:"is";s:8:"islandsk";s:2:"is";s:11:"isländisch";s:2:"is";s:13:"islandšćina";s:2:"is";s:11:"icelanɖgbe";s:2:"is";s:9:"icelandic";s:2:"is";s:7:"islanda";s:2:"is";s:7:"islandi";s:2:"is";s:10:"islandiera";s:2:"is";s:7:"islanti";s:2:"is";s:9:"islandais";s:2:"is";s:9:"islandês";s:2:"is";s:12:"innis tìlis";s:2:"is";s:12:"iisländisch";s:2:"is";s:7:"izlandi";s:2:"is";s:9:"islandese";s:2:"is";s:8:"islandia";s:2:"is";s:13:"islandimiusut";s:2:"is";s:12:"ißländesch";s:2:"is";s:11:"islännesch";s:2:"is";s:8:"islandų";s:2:"is";s:7:"iceland";s:2:"is";s:10:"iżlandiż";s:2:"is";s:10:"ieslandsch";s:2:"is";s:8:"ijslands";s:2:"is";s:9:"islandzki";s:2:"is";s:13:"islandes simi";s:2:"is";s:10:"islandeză";s:2:"is";s:10:"igisilande";s:2:"is";s:15:"islánddagiella";s:2:"is";s:11:"islandčina";s:2:"is";s:13:"islandščina";s:2:"is";s:10:"islandisht";s:2:"is";s:10:"isländska";s:2:"is";s:9:"islandcha";s:2:"is";s:13:"isi-icelandic";s:2:"is";s:8:"italiano";s:2:"it";s:9:"italiaans";s:2:"it";s:10:"italy kasa";s:2:"it";s:8:"italianu";s:2:"it";s:7:"italyan";s:2:"it";s:8:"italikan";s:2:"it";s:9:"italianeg";s:2:"it";s:11:"italijanski";s:2:"it";s:7:"italià";s:2:"it";s:10:"italština";s:2:"it";s:9:"italiensk";s:2:"it";s:11:"italienisch";s:2:"it";s:11:"italšćina";s:2:"it";s:9:"italiagbe";s:2:"it";s:7:"italian";s:2:"it";s:5:"itala";s:2:"it";s:7:"itaalia";s:2:"it";s:8:"italiera";s:2:"it";s:10:"italiyeere";s:2:"it";s:6:"italia";s:2:"it";s:7:"italskt";s:2:"it";s:7:"italien";s:2:"it";s:10:"italiaansk";s:2:"it";s:9:"iodáilis";s:2:"it";s:12:"italiänisch";s:2:"it";s:10:"italiyanci";s:2:"it";s:5:"italo";s:2:"it";s:12:"italiamiutut";s:2:"it";s:6:"italek";s:2:"it";s:11:"italienesch";s:2:"it";s:6:"italų";s:2:"it";s:7:"itāļu";s:2:"it";s:10:"italianina";s:2:"it";s:5:"itali";s:2:"it";s:11:"italieensch";s:2:"it";s:13:"italiano simi";s:2:"it";s:11:"igitaliyani";s:2:"it";s:9:"italiană";s:2:"it";s:13:"itáliagiella";s:2:"it";s:15:"italijanščina";s:2:"it";s:8:"italisht";s:2:"it";s:10:"italienska";s:2:"it";s:10:"italyancha";s:2:"it";s:11:"isi-italian";s:2:"it";s:10:"innuïties";s:2:"iu";s:15:"inuktitutština";s:2:"iu";s:9:"inwctitwt";s:2:"iu";s:12:"inuitšćina";s:2:"iu";s:6:"inuita";s:2:"iu";s:10:"inuktituti";s:2:"iu";s:8:"inuitera";s:2:"iu";s:9:"ionúitis";s:2:"iu";s:5:"inuit";s:2:"iu";s:8:"inukitut";s:2:"iu";s:11:"inúktitút";s:2:"iu";s:7:"inuītu";s:2:"iu";s:14:"inuktitut simi";s:2:"iu";s:16:"inuktitutščina";s:2:"iu";s:2:"iu";s:2:"iu";s:12:"inuktitutcha";s:2:"iu";s:13:"isi-inuktitut";s:2:"iu";s:9:"ikiyapani";s:2:"ja";s:12:"isi-japanese";s:2:"ja";s:25:"inglés criollu xamaicanu";s:3:"jam";s:11:"iútlainnis";s:3:"jut";s:7:"iáivis";s:2:"jv";s:10:"ikinyejava";s:2:"jv";s:8:"inyejava";s:2:"jv";s:12:"isi-javanese";s:2:"jv";s:14:"inyejeworujiya";s:2:"ka";s:11:"isi-georgia";s:2:"ka";s:12:"isi-georgian";s:2:"ka";s:10:"isi-kabyle";s:3:"kab";s:9:"isi-kongo";s:2:"kg";s:10:"isi-kikuyu";s:2:"ki";s:10:"isi-kazakh";s:2:"kk";s:15:"isi-kalaallisut";s:2:"kl";s:12:"igikambodiya";s:2:"km";s:11:"isicambodia";s:2:"km";s:9:"isi-khmer";s:2:"km";s:9:"igikanada";s:2:"kn";s:11:"isi-kannada";s:2:"kn";s:12:"ikinyakoreya";s:2:"ko";s:9:"igikoreya";s:2:"ko";s:10:"isi-korean";s:2:"ko";s:16:"isi-komi-permyak";s:3:"koi";s:12:"isi-kashmiri";s:2:"ks";s:13:"inyekuridishi";s:2:"ku";s:11:"isi-kurdish";s:2:"ku";s:11:"isi-cornish";s:2:"kw";s:10:"inkerigizi";s:2:"ky";s:10:"isi-kyrgyz";s:2:"ky";s:9:"ikilatini";s:2:"la";s:9:"isi-latin";s:2:"la";s:13:"iddew-sbaeneg";s:3:"lad";s:17:"isi-luxembourgish";s:2:"lb";s:9:"isi-ganda";s:2:"lg";s:8:"ilingala";s:2:"ln";s:7:"iilwimi";s:2:"ln";s:11:"isi-lingala";s:2:"ln";s:13:"ikilawotiyani";s:2:"lo";s:11:"isiloathian";s:2:"lo";s:5:"i-lao";s:2:"lo";s:8:"isi-lozi";s:3:"loz";s:13:"ikilituwaniya";s:2:"lt";s:14:"isi-lithuanian";s:2:"lt";s:16:"ikinyaletoviyani";s:2:"lv";s:11:"isi-latvian";s:2:"lv";s:12:"isi-malagasy";s:2:"mg";s:9:"isi-maori";s:2:"mi";s:15:"ikimasedoniyani";s:2:"mk";s:14:"isi-macedonian";s:2:"mk";s:13:"ikimalayalami";s:2:"ml";s:13:"isi-malayalam";s:2:"ml";s:10:"ikimongoli";s:2:"mn";s:12:"isimongolian";s:2:"mn";s:13:"isi-mongolian";s:2:"mn";s:9:"ikimarati";s:2:"mr";s:11:"isi-marathi";s:2:"mr";s:14:"ikinyamaleziya";s:2:"ms";s:9:"ikimalayi";s:2:"ms";s:9:"isi-malay";s:2:"ms";s:11:"ikimaliteze";s:2:"mt";s:11:"isi-maltese";s:2:"mt";s:16:"ikinyabirimaniya";s:2:"my";s:11:"isi-burmese";s:2:"my";s:15:"ioruais bokmål";s:2:"nb";s:21:"isi-norwegian bokmål";s:2:"nb";s:13:"isel almaeneg";s:3:"nds";s:9:"ikinepali";s:2:"ne";s:10:"isi-nepali";s:2:"ne";s:9:"iseldireg";s:2:"nl";s:10:"iseldiryek";s:2:"nl";s:10:"igiholandi";s:2:"nl";s:12:"ikinerilande";s:2:"nl";s:9:"డచ్";s:2:"nl";s:9:"isi-dutch";s:2:"nl";s:26:"inyenoruveji (nyonorusiki)";s:2:"nn";s:22:"isi-norwegia (nynorsk)";s:2:"nn";s:19:"i-norwegian nynorsk";s:2:"nn";s:7:"ioruais";s:2:"no";s:11:"ikinoruveji";s:2:"no";s:13:"isi-norwegian";s:2:"no";s:9:"isinoweyi";s:2:"no";s:18:"isi-northern sotho";s:3:"nso";s:10:"isi-nyanja";s:2:"ny";s:12:"inyogusitani";s:2:"oc";s:11:"iso-occitan";s:2:"oc";s:12:"isi-osithani";s:2:"oc";s:9:"isi-oromo";s:2:"om";s:8:"inyoriya";s:2:"or";s:9:"isi-oriya";s:2:"or";s:11:"isi-ossetic";s:2:"os";s:10:"igipunjabi";s:2:"pa";s:11:"isi-punjabi";s:2:"pa";s:13:"ikinyapolonye";s:2:"pl";s:9:"igipolone";s:2:"pl";s:10:"isi-polish";s:2:"pl";s:29:"italų kalbos pjemonto tarmė";s:3:"pms";s:9:"impashito";s:2:"ps";s:10:"isi-pashto";s:2:"ps";s:13:"igiporutugari";s:2:"pt";s:13:"igiporutugali";s:2:"pt";s:14:"isi-portuguese";s:2:"pt";s:24:"inyeporutigali (brezili)";s:5:"pt-br";s:25:"isi-brazillian portuguese";s:5:"pt-br";s:11:"isi-quechua";s:2:"qu";s:30:"italų kalbos romanijos tarmė";s:3:"rgn";s:11:"isi-romansh";s:2:"rm";s:8:"ikirundi";s:2:"rn";s:9:"isi-rundi";s:2:"rn";s:14:"ikinyarumaniya";s:2:"ro";s:12:"isi-romanian";s:2:"ro";s:8:"irisikan";s:2:"ru";s:9:"ikirusiya";s:2:"ru";s:11:"isi-russian";s:2:"ru";s:12:"ikinyarwanda";s:2:"rw";s:15:"isi-kinyarwanda";s:2:"rw";s:12:"igisansikiri";s:2:"sa";s:9:"isanskrit";s:2:"sa";s:12:"isi-sanskrit";s:2:"sa";s:5:"iacut";s:3:"sah";s:7:"iacwteg";s:3:"sah";s:7:"iakoute";s:3:"sah";s:6:"iacuto";s:3:"sah";s:8:"igisindi";s:2:"sd";s:9:"isisindhi";s:2:"sd";s:10:"isi-sindhi";s:2:"sd";s:19:"iparraldeko samiera";s:2:"se";s:17:"isi-northern sami";s:2:"se";s:9:"isi-sango";s:2:"sg";s:26:"inyeseribiya na korowasiya";s:2:"sh";s:13:"isi-tachelhit";s:3:"shi";s:13:"inyesimpaleze";s:2:"si";s:13:"isi-sinhalese";s:2:"si";s:9:"i-sinhala";s:2:"si";s:11:"igisilovaki";s:2:"sk";s:9:"isloofaak";s:2:"sk";s:10:"isi-slovak";s:2:"sk";s:16:"ikinyasiloveniya";s:2:"sl";s:13:"islofeeniyaan";s:2:"sl";s:13:"isi-slovenian";s:2:"sl";s:11:"is-silesieg";s:3:"sli";s:10:"isi-samoan";s:2:"sm";s:17:"isi-southern sami";s:3:"sma";s:9:"isi-shona";s:2:"sn";s:9:"igisomali";s:2:"so";s:11:"isisomaliya";s:2:"so";s:10:"isi-somali";s:2:"so";s:12:"icyalubaniya";s:2:"sq";s:11:"isi-albania";s:2:"sq";s:9:"igiseribe";s:2:"sr";s:10:"isi-serbia";s:2:"sr";s:11:"isi-serbian";s:2:"sr";s:17:"idioma surinamês";s:3:"srn";s:8:"isiswati";s:2:"ss";s:10:"inyesesoto";s:2:"st";s:8:"isisuthu";s:2:"st";s:10:"inyesudani";s:2:"su";s:12:"isi-sudanese";s:2:"su";s:13:"isi-sundanese";s:2:"su";s:6:"isveç";s:2:"sv";s:11:"igisuweduwa";s:2:"sv";s:11:"isi-swedish";s:2:"sv";s:10:"igiswahili";s:2:"sw";s:11:"isi-swahili";s:2:"sw";s:9:"igitamili";s:2:"ta";s:9:"isi-tamil";s:2:"ta";s:9:"igitelugu";s:2:"te";s:10:"isi-telegu";s:2:"te";s:10:"isi-telugu";s:2:"te";s:9:"isi-tetum";s:3:"tet";s:9:"isi-tajik";s:2:"tg";s:15:"ikinyatayilandi";s:2:"th";s:7:"igitayi";s:2:"th";s:8:"isi-thai";s:2:"th";s:13:"inyatigirinya";s:2:"ti";s:12:"isi-tigrinya";s:2:"ti";s:14:"inyeturukimeni";s:2:"tk";s:11:"isi-turkmen";s:2:"tk";s:10:"isi-tswana";s:2:"tn";s:10:"isi-tongan";s:2:"to";s:13:"isi-tok pisin";s:3:"tpi";s:11:"igiturukiya";s:2:"tr";s:11:"isi-turkish";s:2:"tr";s:10:"isi-tsonga";s:2:"ts";s:9:"isi-tatar";s:2:"tt";s:11:"isi-tumbuka";s:3:"tum";s:8:"inyetuwi";s:2:"tw";s:12:"isi-tahitian";s:2:"ty";s:27:"isi-central atlas tamazight";s:3:"tzm";s:9:"ikiwiguri";s:2:"ug";s:10:"isi uighur";s:2:"ug";s:10:"isi-uighur";s:2:"ug";s:14:"ikinyayukereni";s:2:"uk";s:12:"isi-ukranian";s:2:"uk";s:13:"isi-ukrainian";s:2:"uk";s:10:"inyeyurudu";s:2:"ur";s:8:"isi-urdu";s:2:"ur";s:12:"inyeyuzubeki";s:2:"uz";s:9:"isi-uzbek";s:2:"uz";s:9:"isi-venda";s:2:"ve";s:16:"ikinyaviyetinamu";s:2:"vi";s:14:"isi-vietnamese";s:2:"vi";s:9:"isi-wolof";s:2:"wo";s:8:"isixhosa";s:2:"xh";s:10:"isi-khoosa";s:2:"xh";s:13:"isixhosa simi";s:2:"xh";s:10:"inyehawusa";s:2:"xh";s:14:"iddew-almaeneg";s:2:"yi";s:8:"iùdhais";s:2:"yi";s:8:"iídiche";s:2:"yi";s:5:"idiș";s:2:"yi";s:11:"inyeyidishi";s:2:"yi";s:10:"isi-yidish";s:2:"yi";s:6:"ioruba";s:2:"yo";s:6:"iorwba";s:2:"yo";s:9:"iarúibis";s:2:"yo";s:10:"ёруба";s:2:"yo";s:9:"ikiyoruba";s:2:"yo";s:10:"isi-yoruba";s:2:"yo";s:9:"igishinwa";s:2:"zh";s:11:"isi-chinese";s:2:"zh";s:22:"isi-sipmlified chinese";s:7:"zh-hans";s:23:"isi-traditional chinese";s:7:"zh-hant";s:7:"isizulu";s:2:"zu";s:12:"isizulu simi";s:2:"zu";s:7:"ikizulu";s:2:"zu";s:8:"inyezulu";s:2:"zu";s:9:"isi-acoli";s:3:"ach";s:9:"isi-aghem";s:3:"agq";s:33:"isi-arabic esijwayelekile samanje";s:6:"ar-001";s:9:"isi-bemba";s:3:"bem";s:8:"isi-bena";s:3:"bez";s:8:"isi-bodo";s:3:"brx";s:9:"isi-chiga";s:3:"cgg";s:9:"isi-taita";s:3:"dav";s:9:"isi-zarma";s:3:"dje";s:9:"isi-duala";s:3:"dua";s:14:"isi-jola-fonyl";s:3:"dyo";s:8:"isi-embu";s:3:"ebu";s:11:"ibibioefika";s:3:"efi";s:6:"ibibio";s:3:"ibb";s:8:"isi-efik";s:3:"efi";s:14:"ikinyafilipine";s:3:"fil";s:10:"isi-taglog";s:3:"fil";s:12:"isi-filipino";s:3:"fil";s:6:"isi-ga";s:3:"gaa";s:9:"isi-gusli";s:3:"guz";s:10:"isi-ngomba";s:3:"jgo";s:11:"isi-machame";s:3:"jmc";s:9:"isi-kamba";s:3:"kam";s:11:"isi-makonde";s:3:"kde";s:16:"isi-kabuverdianu";s:3:"kea";s:16:"isi-koyra chiini";s:3:"khq";s:12:"isi-kalenjin";s:3:"kln";s:11:"isi-konkani";s:3:"kok";s:12:"isi-shambala";s:3:"ksb";s:9:"isi-bafia";s:3:"ksf";s:9:"isi-langi";s:3:"lag";s:10:"isi-lakota";s:3:"lkt";s:16:"isi-luba-katanga";s:2:"lu";s:14:"isi-luba-lulua";s:3:"lua";s:7:"isi-luo";s:3:"luo";s:9:"isi-luyia";s:3:"luy";s:9:"isi-masai";s:3:"mas";s:8:"isi-meru";s:3:"mer";s:12:"isi-morisyen";s:3:"mfe";s:18:"isi-makhuwa-meetto";s:3:"mgh";s:11:"isi-meta’";s:3:"mgo";s:10:"isi-mohawk";s:3:"moh";s:11:"isi-mundang";s:3:"mua";s:13:"iomadh cànan";s:3:"mul";s:18:"idiomas múltiplos";s:3:"mul";s:8:"isi-nama";s:3:"naq";s:22:"iparraldeko ndebeleera";s:2:"nd";s:17:"isi-north ndebele";s:2:"nd";s:11:"isi-flemish";s:5:"nl-be";s:10:"isi-kwasio";s:3:"nmg";s:10:"isi-n’ko";s:3:"nqo";s:8:"isi-nuer";s:3:"nus";s:12:"isi-nyankole";s:3:"nyn";s:13:"isi-kʼicheʼ";s:3:"quc";s:13:"isi-moldavian";s:5:"ro-md";s:9:"isi-rombo";s:3:"rof";s:7:"isi-rwa";s:3:"rwk";s:11:"isi-samburu";s:3:"saq";s:9:"isi-sangu";s:3:"sbp";s:8:"isi-sena";s:3:"seh";s:19:"isi-koyraboro senni";s:3:"ses";s:13:"isi-lule sami";s:3:"smj";s:10:"inari sami";s:3:"smn";s:14:"inari-lappisch";s:3:"smn";s:17:"inari-samišćina";s:3:"smn";s:11:"inari saami";s:3:"smn";s:13:"inari samiera";s:3:"smn";s:11:"inarinsaame";s:3:"smn";s:13:"inari-samisch";s:3:"smn";s:9:"inar sami";s:3:"smn";s:14:"inari-lappesch";s:3:"smn";s:13:"inario samių";s:3:"smn";s:11:"inari sāmu";s:3:"smn";s:13:"inari-lappsch";s:3:"smn";s:20:"inarska samijščina";s:3:"smn";s:14:"inari semiycha";s:3:"smn";s:14:"isi-inari sami";s:3:"smn";s:14:"isi-skolt sami";s:3:"sms";s:17:"isi-congo swahili";s:3:"swc";s:8:"isi-teso";s:3:"teo";s:13:"inyekilingoni";s:3:"tlh";s:11:"isi-klingon";s:3:"tlh";s:11:"isi-tasawaq";s:3:"twq";s:17:"idioma desconegut";s:3:"und";s:14:"iaith anhysbys";s:3:"und";s:13:"indeterminade";s:3:"und";s:16:"ismeretlen nyelv";s:3:"und";s:19:"idioma desconhecido";s:3:"und";s:7:"isi-vai";s:3:"vai";s:9:"isi-vunjo";s:3:"vun";s:8:"isi-soga";s:3:"xog";s:31:"isi-standard moroccan tamazight";s:3:"zgh";s:23:"intet sprogligt indhold";s:3:"zxx";s:26:"inget språkligt innehåll";s:3:"zxx";s:19:"inglés australiano";s:5:"en-au";s:18:"inglês australian";s:5:"en-au";s:17:"inggris australia";s:5:"en-au";s:19:"inglese australiano";s:5:"en-au";s:18:"inggeris australia";s:5:"en-au";s:18:"ingliż awstraljan";s:5:"en-au";s:19:"inglês australiano";s:5:"en-au";s:23:"isi-austrillian english";s:5:"en-au";s:17:"inglés americanu";s:5:"en-us";s:22:"inglés estadounidense";s:5:"en-us";s:13:"inglise (usa)";s:5:"en-us";s:14:"ingelesa (aeb)";s:5:"en-us";s:14:"ingles merecan";s:5:"en-us";s:26:"inglés dos estados unidos";s:5:"en-us";s:15:"inggris amerika";s:5:"en-us";s:17:"inglese americano";s:5:"en-us";s:11:"inggeris as";s:5:"en-us";s:16:"ingliż amerikan";s:5:"en-us";s:17:"inglês americano";s:5:"en-us";s:20:"ingiriisi (maraykan)";s:5:"en-us";s:18:"i-american english";s:5:"en-us";s:28:"isbaanishka laatiin ameerika";s:6:"es-419";s:26:"isi-latin american spanish";s:6:"es-419";s:25:"iberiatɔwo ƒe spaniagbe";s:5:"es-es";s:21:"ibeerischs schpanisch";s:5:"es-es";s:17:"ibeersch spaansch";s:5:"es-es";s:14:"iberisk spansk";s:5:"es-es";s:17:"iberijskišpanski";s:5:"es-es";s:20:"iberska španščina";s:5:"es-es";s:18:"isbaanish (isbayn)";s:5:"es-es";s:19:"isi-canadian french";s:5:"fr-ca";s:16:"isi-swiss french";s:5:"fr-ch";s:27:"iberiatɔwo ƒe portugalgbe";s:5:"pt-pt";s:23:"iberischs portugiisisch";s:5:"pt-pt";s:20:"ibeersch portugeesch";s:5:"pt-pt";s:30:"inyeporutigali (igiporutigali)";s:5:"pt-pt";s:21:"iberijski portugalski";s:5:"pt-pt";s:23:"iberska portugalščina";s:5:"pt-pt";s:25:"isi-portuguese (portugal)";s:5:"pt-pt";s:23:"isi-european portuguese";s:5:"pt-pt";s:15:"డకోటా";s:3:"dak";s:24:"డార్గ్వా";s:3:"dar";s:24:"డెలావేర్";s:3:"del";s:24:"డోగ్రిబ్";s:3:"dgr";s:15:"డింకా";s:3:"din";s:18:"డోగ్రి";s:3:"doi";s:15:"iseldireg canol";s:3:"dum";s:18:"డ్యులా";s:3:"dyu";s:13:"inglés mediu";s:3:"enm";s:16:"inglés medieval";s:3:"enm";s:24:"inggris abad pertengahan";s:3:"enm";s:13:"inglese medio";s:3:"enm";s:18:"ingliż, medjevali";s:3:"enm";s:16:"inglês medieval";s:3:"enm";s:14:"inglês médio";s:3:"enm";s:18:"istočni frizijski";s:3:"frs";s:9:"idafriisi";s:3:"frs";s:10:"itäfriisi";s:3:"frs";s:17:"istočnofrizijski";s:3:"frs";s:9:"ikiribati";s:3:"gil";s:4:"iban";s:3:"iba";s:9:"iban dili";s:3:"iba";s:10:"ibanština";s:3:"iba";s:6:"ibaneg";s:3:"iba";s:5:"ibani";s:3:"iba";s:8:"ibanisch";s:3:"iba";s:5:"ibanu";s:3:"iba";s:6:"ibanag";s:3:"iba";s:9:"ibančina";s:3:"iba";s:11:"ibanščina";s:3:"iba";s:7:"ibanska";s:3:"iba";s:13:"iddew-bersieg";s:3:"jpr";s:13:"ibrani-persia";s:3:"jpr";s:14:"iudeo-persană";s:3:"jpr";s:12:"iddew-arabeg";s:3:"jrb";s:11:"ibrani-arab";s:3:"jrb";s:12:"iudeo-arabă";s:3:"jrb";s:15:"idioma carélio";s:3:"krl";s:24:"irština (středověká)";s:3:"mga";s:18:"irlandés medieval";s:3:"mga";s:14:"irski, srednji";s:3:"mga";s:25:"irlandia abad pertengahan";s:3:"mga";s:15:"irlandese medio";s:3:"mga";s:20:"irlandiż, medjevali";s:3:"mga";s:19:"irlandês, medieval";s:3:"mga";s:16:"irlandês médio";s:3:"mga";s:16:"irlandais mesaun";s:3:"mga";s:19:"irlandeză mijlocie";s:3:"mga";s:17:"irlandés antiguu";s:3:"sga";s:15:"irlandès antic";s:3:"sga";s:17:"irština (stará)";s:3:"sga";s:17:"irlandés antiguo";s:3:"sga";s:13:"irlandia kuno";s:3:"sga";s:16:"irlandese antico";s:3:"sga";s:16:"irlandiż, antik";s:3:"sga";s:17:"irlandês arcaico";s:3:"sga";s:14:"irlandais vegl";s:3:"sga";s:16:"irlandeză veche";s:3:"sga";s:23:"iaith arwyddion america";s:3:"ase";s:10:"itaŋikomi";s:3:"bkm";s:19:"isi-mexican spanish";s:5:"es-mx";s:9:"ibibiogbe";s:3:"ibb";s:6:"ibibis";s:3:"ibb";s:7:"ibibió";s:3:"ibb";s:8:"ingrianu";s:3:"izh";s:12:"ingrijština";s:3:"izh";s:10:"ischorisch";s:3:"izh";s:7:"ingrian";s:3:"izh";s:10:"inkeroinen";s:3:"izh";s:7:"ingrien";s:3:"izh";s:7:"ingrico";s:3:"izh";s:14:"ingjrijahnesch";s:3:"izh";s:10:"ischoresch";s:3:"izh";s:6:"ingrų";s:3:"izh";s:8:"ingrisch";s:3:"izh";s:9:"ingryjski";s:3:"izh";s:8:"ingriska";s:3:"izh";s:7:"iembaeg";s:3:"ybb";s:33:"indianerspraken in zentralamerika";s:3:"cai";s:3:"ijo";s:3:"ijo";s:19:"indoarische spraken";s:3:"inc";s:5:"indik";s:3:"inc";s:23:"indogermaansche spraken";s:3:"ine";s:19:"indo-evropski jezik";s:3:"ine";s:17:"iraansche spraken";s:3:"ira";s:13:"iranski jezik";s:3:"ira";s:18:"irokeesche spraken";s:3:"iro";s:12:"irokvojanski";s:3:"iro";s:31:"indianerspraken in noordamerika";s:3:"nai";s:32:"indianerspraken in süüdamerika";s:3:"sai";}i:950;a:14:{s:27:"ஆச்சினீஸ்";s:3:"ace";s:36:"ஆஃப்ரிகான்ஸ்";s:2:"af";s:27:"ஆர்கோனீஸ்";s:2:"an";s:46:"ஆஸ்திரிய ஜெர்மன்";s:5:"de-at";s:24:"ஆங்கிலம்";s:2:"en";s:30:"ஆர்மேனியன்";s:2:"hy";s:12:"ፖሊሽኛ";s:2:"pl";s:9:"ፖሊሽ";s:2:"pl";s:18:"ፖርቹጋልኛ";s:2:"pt";s:18:"ፖርቱጋሊኛ";s:2:"pt";s:40:"ፖርቱጋልኛ (ናይ ብራዚል)";s:5:"pt-br";s:61:"ஆஸ்திரேலியன் ஆங்கிலம்";s:5:"en-au";s:43:"ፖርቱጋልኛ (ናይ ፖርቱጋል)";s:5:"pt-pt";s:18:"ஆட்சம்";s:3:"cch";}i:78;a:22:{s:21:"ఆఖినీస్";s:3:"ace";s:33:"ఆఫ్రికాన్స్";s:2:"af";s:15:"ఆంగిక";s:3:"anp";s:55:"ఆస్ట్రేలియన్ జర్మన్";s:5:"de-at";s:50:"жогорку немисче (Швейцария)";s:5:"de-ch";s:14:"жонгуча";s:2:"dz";s:10:"жонха";s:2:"dz";s:18:"ఆంగ్లం";s:2:"en";s:27:"жоғарғы лужица";s:3:"hsb";s:33:"жогорку сорбианча";s:3:"hsb";s:30:"ఆర్మేనియన్";s:2:"hy";s:19:"жапон тілі";s:2:"ja";s:18:"жаванизче";s:2:"jv";s:24:"ఆక్సిటన్";s:2:"oc";s:30:"ఆరోమేనియన్";s:3:"rup";s:46:"жеңілдетілген қытай тілі";s:7:"zh-hans";s:65:"ఆధునిక ప్రామాణిక అరబిక్";s:6:"ar-001";s:21:"жола-фониче";s:3:"dyo";s:17:"жола-фони";s:3:"dyo";s:61:"ఆస్ట్రేలియన్ ఇంగ్లీష్";s:5:"en-au";s:25:"жаргон чинуук";s:3:"chn";s:6:"жжи";s:3:"kaj";}i:122;a:174:{s:9:"亚齐文";s:3:"ace";s:28:"zuid-azerbeidzjaans arabisch";s:3:"azb";s:7:"zâmani";s:2:"de";s:18:"zwitsers hoogduits";s:5:"de-ch";s:6:"zazaki";s:3:"zza";s:43:"లోవర్ సోర్బియన్";s:3:"dsb";s:13:"zentral-dusun";s:3:"dtp";s:13:"ziemeļfrīzu";s:3:"frr";s:16:"zapadnofrizijski";s:2:"fy";s:18:"zachodniofryzyjski";s:2:"fy";s:21:"západná frízština";s:2:"fy";s:12:"zwitserduits";s:3:"gsw";s:15:"亚美尼亚文";s:2:"hy";s:13:"zichuan yicha";s:2:"ii";s:10:"zapɔnekan";s:2:"ja";s:8:"zaponëe";s:2:"ja";s:24:"లోజ్బాన్";s:3:"jbo";s:8:"zavanëe";s:2:"jv";s:11:"zazakština";s:3:"kiu";s:18:"లాటిన్";s:2:"la";s:18:"లాడినో";s:3:"lad";s:39:"లుక్సంబర్గిష్";s:2:"lb";s:27:"లేజ్ఘియన్";s:3:"lez";s:33:"లిమ్బర్గిష్";s:2:"li";s:18:"లింగాల";s:2:"ln";s:12:"లావో";s:2:"lo";s:12:"లోజి";s:3:"loz";s:33:"లిథుయేనియన్";s:2:"lt";s:12:"లుషై";s:3:"lus";s:27:"లాట్వియన్";s:2:"lv";s:17:"zachodniomaryjski";s:3:"mrj";s:25:"లో జర్మన్";s:3:"nds";s:11:"ziemeļsotu";s:3:"nso";s:12:"ziemeļsāmu";s:2:"se";s:12:"zuid-samisch";s:3:"sma";s:10:"zuid-sotho";s:2:"st";s:6:"zweeds";s:2:"sv";s:7:"zviedru";s:2:"sv";s:5:"zwana";s:2:"tn";s:22:"zentralatlas-tamazight";s:3:"tzm";s:24:"ယူကရိန်း";s:2:"uk";s:19:"zachodnioflamandzki";s:3:"vls";s:4:"zosa";s:2:"xh";s:6:"zhuang";s:2:"za";s:5:"zuang";s:2:"za";s:8:"zhuangbe";s:2:"za";s:6:"zsuang";s:2:"za";s:7:"zeêuws";s:3:"zea";s:10:"zeelandés";s:3:"zea";s:8:"zelandeg";s:3:"zea";s:13:"zélandština";s:3:"zea";s:9:"zêlandeg";s:3:"zea";s:6:"zeeuws";s:3:"zea";s:10:"zélandais";s:3:"zea";s:9:"zelandese";s:3:"zea";s:8:"zelandų";s:3:"zea";s:9:"zelandzki";s:3:"zea";s:11:"zeeländska";s:3:"zea";s:9:"zelandaca";s:3:"zea";s:6:"zoeloe";s:2:"zu";s:4:"zulu";s:2:"zu";s:5:"zulú";s:2:"zu";s:7:"zulukan";s:2:"zu";s:8:"zouloueg";s:2:"zu";s:10:"zuluština";s:2:"zu";s:7:"zulugbe";s:2:"zu";s:5:"zulua";s:2:"zu";s:7:"zuluera";s:2:"zu";s:6:"zoulou";s:2:"zu";s:12:"zulušćina"";s:2:"zu";s:5:"zulų";s:2:"zu";s:5:"zolò";s:2:"zu";s:5:"zûlu";s:2:"zu";s:12:"zulujščina";s:2:"zu";s:5:"zuulu";s:2:"zu";s:6:"zuluca";s:2:"zu";s:9:"zuluancha";s:2:"zu";s:9:"亚罕文";s:3:"agq";s:26:"zamonavij standart arabcha";s:6:"ar-001";s:5:"zarma";s:3:"dje";s:10:"zarmština";s:3:"dje";s:7:"zarmaeg";s:3:"dje";s:7:"zamagbe";s:3:"dje";s:7:"zarmera";s:3:"dje";s:7:"zarmais";s:3:"dje";s:6:"zarmų";s:3:"dje";s:5:"zarmu";s:3:"dje";s:13:"zarmajščina";s:3:"dje";s:8:"zarmisht";s:3:"dje";s:8:"zarmacha";s:3:"dje";s:11:"zelenortski";s:3:"kea";s:31:"zelenortskootoška kreolščina";s:3:"kea";s:22:"západná songhajčina";s:3:"khq";s:15:"లాంగీ";s:3:"lag";s:15:"లకొటా";s:3:"lkt";s:25:"లూబ-కటాంగ";s:2:"lu";s:28:"లుబా-లులువ";s:3:"lua";s:12:"లువో";s:3:"luo";s:15:"లుయియ";s:3:"luy";s:14:"ziemeļndebelu";s:2:"nd";s:11:"zuid-ndbele";s:2:"nr";s:24:"ယန်ကိုလီ";s:3:"nyn";s:25:"లులే సామి";s:3:"smj";s:3:"zgh";s:3:"zgh";s:25:"లిపి లేదు";s:3:"zxx";s:71:"లాటిన్ అమెరికెన్ స్పానిష్";s:6:"es-419";s:14:"zwitsers frans";s:5:"fr-ch";s:14:"zuid-altaïsch";s:3:"alt";s:13:"zsidó-perzsa";s:3:"jpr";s:11:"zsidó-arab";s:3:"jrb";s:18:"లాహండా";s:3:"lah";s:15:"లాంబా";s:3:"lam";s:21:"లుఇసేనో";s:3:"lui";s:15:"లుండా";s:3:"lun";s:21:"鄂圖曼土耳其文";s:3:"ota";s:19:"zigüünerschpraach";s:3:"rom";s:21:"లింగిట్";s:3:"tli";s:7:"zimxjan";s:3:"tsi";s:8:"zapoteca";s:3:"zap";s:12:"zapotek dili";s:3:"zap";s:7:"zapoteg";s:3:"zap";s:10:"zapotečki";s:3:"zap";s:13:"zapotéčtina";s:3:"zap";s:9:"zapoteceg";s:3:"zap";s:7:"zapotec";s:3:"zap";s:11:"zapotekisch";s:3:"zap";s:8:"zapoteco";s:3:"zap";s:10:"zapoteekki";s:3:"zap";s:10:"zapotèque";s:3:"zap";s:8:"zapoték";s:3:"zap";s:7:"zapotek";s:3:"zap";s:11:"zapotekesch";s:3:"zap";s:9:"zapotekų";s:3:"zap";s:11:"zapoteeksch";s:3:"zap";s:9:"zapotecki";s:3:"zap";s:9:"zapotecă";s:3:"zap";s:13:"zapoteščina";s:3:"zap";s:20:"znakovni jezik bliss";s:3:"zbl";s:11:"zenaqa dili";s:3:"zen";s:6:"zenaga";s:3:"zen";s:6:"zenagu";s:3:"zen";s:11:"zenaščina";s:3:"zen";s:9:"zuni dili";s:3:"zun";s:4:"zuni";s:3:"zun";s:11:"zunijština";s:3:"zun";s:12:"zuni-sprache";s:3:"zun";s:7:"zúinis";s:3:"zun";s:14:"zuni-schpraach";s:3:"zun";s:12:"zuni-sprooch";s:3:"zun";s:5:"zunju";s:3:"zun";s:5:"zunhi";s:3:"zun";s:10:"zuniština";s:3:"zun";s:12:"zunijščina";s:3:"zun";s:9:"zaza dili";s:3:"zza";s:4:"zaza";s:3:"zza";s:7:"zazäeg";s:3:"zza";s:11:"zázáíska";s:3:"zza";s:6:"zázá";s:3:"zza";s:12:"zazajščina";s:3:"zza";s:8:"zazaiska";s:3:"zza";s:6:"zazaca";s:3:"zza";s:26:"znaková řeč (americká)";s:3:"ase";s:20:"zentral-alaska-yupik";s:3:"esu";s:14:"zätrahl-jupik";s:3:"esu";s:16:"zoroastrian dari";s:3:"gbz";s:18:"zoroastrialaisdari";s:3:"gbz";s:21:"zoroastrianescht dari";s:3:"gbz";s:15:"zoroastrų dari";s:3:"gbz";s:17:"zoroastrisch dari";s:3:"gbz";s:22:"zaratusztriański dari";s:3:"gbz";s:16:"zoroastrisk dari";s:3:"gbz";s:18:"zerdüşt daricesi";s:3:"gbz";s:8:"zaconico";s:3:"tsd";s:5:"zande";s:3:"znd";}i:126;a:10:{s:9:"亞齊文";s:3:"ace";s:15:"亞塞拜然文";s:2:"az";s:15:"亞美尼亞文";s:2:"hy";s:25:"శిషువన్ ఈ";s:2:"ii";s:33:"သင်္သကရိုက်";s:2:"sa";s:15:"明格列爾文";s:3:"xmf";s:9:"亞罕文";s:3:"agq";s:18:"శంబాలా";s:3:"ksb";s:24:"శింషీయన్";s:3:"tsi";s:12:"明打威文";s:3:"mwv";}i:694;a:9:{s:27:"આફ્રિકન્સ";s:2:"af";s:40:"આલ્જેરિયન અરબી";s:3:"arq";s:15:"આસામી";s:2:"as";s:18:"આયમારા";s:2:"ay";s:15:"આઇરિશ";s:2:"ga";s:27:"આર્મેનિયન";s:2:"hy";s:30:"આઇસલેન્ડિક";s:2:"is";s:27:"現代標準アラビア語";s:6:"ar-001";s:24:"現代標準阿拉伯文";s:6:"ar-001";}i:206;a:9:{s:33:"ಆಫ್ರಿಕಾನ್ಸ್";s:2:"af";s:18:"ಆಂಗಿಕಾ";s:3:"anp";s:30:"ಆಸ್ಟುರಿಯನ್";s:3:"ast";s:49:"ಆಸ್ಟ್ರಿಯನ್ ಜರ್ಮನ್";s:5:"de-at";s:12:"Ҷопонӣ";s:2:"ja";s:16:"Ҷаванизӣ";s:2:"jv";s:65:"ಆಧುನಿಕ ಪ್ರಮಾಣಿತ ಅರೇಬಿಕ್";s:6:"ar-001";s:61:"ಆಸ್ಟ್ರೇಲಿಯನ್ ಇಂಗ್ಲೀಷ್";s:5:"en-au";s:27:"ಆಫ್ರಿಹಿಲಿ";s:3:"afh";}i:334;a:11:{s:36:"ആഫ്രിക്കാൻസ്";s:2:"af";s:15:"ആൻഗിക";s:3:"anp";s:27:"ആസ്സാമീസ്";s:2:"as";s:21:"ხუნძური";s:2:"av";s:27:"ხორვატული";s:2:"hr";s:27:"ആരോമാനിയൻ";s:3:"rup";s:12:"ആഘേം";s:3:"agq";s:74:"ആധുനിക സ്റ്റാൻഡേർഡ് അറബിക്";s:6:"ar-001";s:9:"ആസു";s:3:"asa";s:28:"ხეთური ენა";s:3:"hit";s:27:"ആഫ്രിഹിലി";s:3:"afh";}i:461;a:16:{s:30:"අප්‍රිකානු";s:2:"af";s:15:"අකාන්";s:2:"ak";s:15:"අරාබි";s:2:"ar";s:33:"අසර්බයිජාන්";s:2:"az";s:24:"අයර්ලන්ත";s:2:"ga";s:27:"අයිස්ලන්ත";s:2:"is";s:12:"キクユ語";s:2:"ki";s:24:"キルマンジュキ語";s:3:"kiu";s:18:"キナライア語";s:3:"krj";s:15:"キルギス語";s:2:"ky";s:9:"绍纳文";s:2:"sn";s:21:"ঝু্য়াঙ";s:2:"za";s:9:"අසු";s:3:"asa";s:12:"キチェ語";s:3:"quc";s:15:"キリバス語";s:3:"gil";s:18:"キンブンド語";s:3:"kmb";}i:115;a:1739:{s:6:"seburu";s:2:"af";s:9:"se-amhari";s:2:"am";s:13:"staroengleski";s:3:"ang";s:16:"staroangličtina";s:3:"ang";s:13:"sean-bhéarla";s:3:"ang";s:13:"seann-bheurla";s:3:"ang";s:13:"senoji anglų";s:3:"ang";s:9:"senangļu";s:3:"ang";s:14:"staroangielski";s:3:"ang";s:18:"stará angličtina";s:3:"ang";s:18:"stara angleščina";s:3:"ang";s:7:"se-arab";s:2:"ar";s:14:"se-azerbaijani";s:2:"az";s:21:"südaserbaidschanisch";s:3:"azb";s:17:"south azerbaijani";s:3:"azb";s:23:"södasserbaidschahnesch";s:3:"azb";s:22:"süd-aserbaidschanesch";s:3:"azb";s:16:"sydazerbadjanska";s:3:"azb";s:10:"samogitian";s:3:"sgs";s:16:"southern balochi";s:3:"bcc";s:12:"se-belarusia";s:2:"be";s:11:"se-bulgaria";s:2:"bg";s:9:"se-bihari";s:2:"bh";s:10:"se-bengali";s:2:"bn";s:9:"se-bosnia";s:2:"bs";s:8:"sebosnia";s:2:"bs";s:10:"se-catalia";s:2:"ca";s:7:"sisinis";s:2:"ce";s:10:"sebuanogbe";s:3:"ceb";s:4:"sebu";s:3:"ceb";s:12:"seabúáinis";s:3:"ceb";s:7:"sebuano";s:3:"ceb";s:9:"sebuāņu";s:3:"ceb";s:7:"sibwano";s:3:"ceb";s:13:"sebuanščina";s:3:"ceb";s:10:"seamóiris";s:2:"ch";s:6:"siocto";s:3:"cho";s:7:"sjoktá";s:3:"cho";s:8:"seiricis";s:3:"chr";s:6:"sjeyen";s:3:"chy";s:15:"sorani koerdies";s:3:"ckb";s:12:"sorani kürd";s:3:"ckb";s:16:"soranski kurdski";s:3:"ckb";s:6:"sorani";s:3:"ckb";s:14:"sorani kurdish";s:3:"ckb";s:6:"sorana";s:3:"ckb";s:12:"sorani kurdi";s:3:"ckb";s:9:"soraniera";s:3:"ckb";s:7:"soranî";s:3:"ckb";s:13:"szoráni kurd";s:3:"ckb";s:17:"sorani-kúrdíska";s:3:"ckb";s:15:"soranių kurdų";s:3:"ckb";s:12:"sorani curdo";s:3:"ckb";s:13:"sorâni curdo";s:3:"ckb";s:20:"soranska kurdščina";s:3:"ckb";s:17:"soranisk kurdiska";s:3:"ckb";s:16:"sorani kurd tili";s:3:"ckb";s:6:"seicis";s:2:"cs";s:7:"seacais";s:2:"cs";s:8:"se-czech";s:2:"cs";s:8:"se czeck";s:2:"cs";s:13:"slavoneg iliz";s:2:"cu";s:14:"staroslovenski";s:2:"cu";s:18:"staroslověnština";s:2:"cu";s:18:"slavon d’église";s:2:"cu";s:16:"sclâf de glesie";s:2:"cu";s:20:"slavais na heaglaise";s:2:"cu";s:23:"slàbhais na h-eaglaise";s:2:"cu";s:18:"slavo della chiesa";s:2:"cu";s:13:"slavik gereja";s:2:"cu";s:18:"slaviku tal-knisja";s:2:"cu";s:28:"staro-cerkiewno-słowiański";s:2:"cu";s:16:"slav da baselgia";s:2:"cu";s:8:"slavonă";s:2:"cu";s:28:"stara cerkvena slovanščina";s:2:"cu";s:8:"suvaisis";s:2:"cv";s:7:"sjúvas";s:2:"cv";s:8:"se-welsh";s:2:"cy";s:8:"se-dutch";s:2:"da";s:5:"saksa";s:2:"de";s:11:"se-jeremane";s:2:"de";s:21:"schweizer hochdeutsch";s:5:"de-ch";s:20:"switserse hoog-duits";s:5:"de-ch";s:17:"schweizerhøjtysk";s:5:"de-ch";s:33:"swizerlanɖ germaniagbe kɔkɔtɔ";s:5:"de-ch";s:17:"swiss high german";s:5:"de-ch";s:13:"svisa germana";s:5:"de-ch";s:18:"saksa (kõrgsaksa)";s:5:"de-ch";s:17:"sveitsinyläsaksa";s:5:"de-ch";s:21:"switsersk heechdútsk";s:5:"de-ch";s:23:"schwiizer hochtüütsch";s:5:"de-ch";s:17:"svájci felnémet";s:5:"de-ch";s:20:"svissnesk háþýska";s:5:"de-ch";s:25:"schwäizer héichdäitsch";s:5:"de-ch";s:18:"sveitsisk høytysk";s:5:"de-ch";s:22:"swiezer hoochdüütsch";s:5:"de-ch";s:18:"sveitsisk høgtysk";s:5:"de-ch";s:20:"schweizisk högtyska";s:5:"de-ch";s:21:"shvesariya olmonchasi";s:5:"de-ch";s:11:"sorbeg isaf";s:3:"dsb";s:15:"sorbio inferior";s:3:"dsb";s:19:"sorbais Íochtarach";s:3:"dsb";s:20:"sòrbais Ìochdarach";s:3:"dsb";s:13:"sorbia rendah";s:3:"dsb";s:13:"sérvio baixo";s:3:"dsb";s:14:"sorabă de jos";s:3:"dsb";s:19:"sorbishte e poshtme";s:3:"dsb";s:9:"seoinicis";s:2:"dz";s:8:"se-greek";s:2:"el";s:8:"segerika";s:2:"el";s:7:"saozneg";s:2:"en";s:7:"saesneg";s:2:"en";s:7:"sowsnek";s:2:"en";s:11:"senyesemane";s:2:"en";s:6:"sekgoa";s:2:"en";s:14:"saozneg kanada";s:5:"en-ca";s:14:"saesneg canada";s:5:"en-ca";s:19:"saozneg breizh-veur";s:5:"en-gb";s:15:"saesneg prydain";s:5:"en-gb";s:12:"se-esperanto";s:2:"eo";s:12:"sperantapük";s:2:"eo";s:6:"spaans";s:2:"es";s:10:"spain kasa";s:2:"es";s:9:"spagnoleg";s:2:"es";s:7:"sbaeneg";s:2:"es";s:6:"spansk";s:2:"es";s:8:"spanisch";s:2:"es";s:9:"spaniagbe";s:2:"es";s:7:"spanish";s:2:"es";s:7:"spanskt";s:2:"es";s:8:"spagnûl";s:2:"es";s:7:"spaansk";s:2:"es";s:9:"spáinnis";s:2:"es";s:10:"spàinntis";s:2:"es";s:10:"schpanisch";s:2:"es";s:7:"spanyol";s:2:"es";s:8:"spænska";s:2:"es";s:8:"spagnolo";s:2:"es";s:10:"spanskisut";s:2:"es";s:11:"schpahnesch";s:2:"es";s:7:"spaynek";s:2:"es";s:9:"spuenesch";s:2:"es";s:7:"spāņu";s:2:"es";s:8:"sepanyol";s:2:"es";s:7:"spanjol";s:2:"es";s:8:"spaansch";s:2:"es";s:7:"spagnol";s:2:"es";s:9:"spaniolă";s:2:"es";s:15:"spánskkagiella";s:2:"es";s:9:"spanjisht";s:2:"es";s:7:"sespain";s:2:"es";s:7:"spanska";s:2:"es";s:13:"spanyänapük";s:2:"es";s:10:"se-estonia";s:2:"et";s:9:"se-basque";s:2:"eu";s:9:"se-persia";s:2:"fa";s:15:"ఫ్యుల";s:2:"ff";s:5:"suomi";s:2:"fi";s:5:"soome";s:2:"fi";s:7:"suomių";s:2:"fi";s:4:"somu";s:2:"fi";s:11:"suomagiella";s:2:"fi";s:10:"se-finnish";s:2:"fi";s:24:"ఫిన్నిష్";s:2:"fi";s:10:"se-finland";s:2:"fi";s:32:"suomių kalbos tornedalio tarmė";s:3:"fit";s:21:"ఫిజియన్";s:2:"fj";s:13:"savalimmiutut";s:2:"fo";s:10:"se-foroese";s:2:"fo";s:24:"ఫారోయీజ్";s:2:"fo";s:9:"se-french";s:2:"fr";s:21:"ఫ్రెంచ్";s:2:"fr";s:7:"se fora";s:2:"fr";s:17:"severno-frizijski";s:3:"frr";s:17:"sjevernofrizijski";s:3:"frr";s:20:"severná frízština";s:3:"frr";s:21:"severna frizijščina";s:3:"frr";s:33:"ఫ్రియులియన్";s:3:"fur";s:9:"se-frisia";s:2:"fy";s:8:"se-irish";s:2:"ga";s:10:"sinaeg gan";s:3:"gan";s:21:"simplified gan script";s:8:"gan-hans";s:14:"skotse gallies";s:2:"gd";s:16:"skot gaelik dili";s:2:"gd";s:6:"skoseg";s:2:"gd";s:19:"skotská gaelština";s:2:"gd";s:14:"skotsk gælisk";s:2:"gd";s:21:"schottisches gälisch";s:2:"gd";s:20:"skɔtlanɖ gaeliagbe";s:2:"gd";s:15:"scottish gaelic";s:2:"gd";s:16:"skotskt gæliskt";s:2:"gd";s:14:"schotsk gaelic";s:2:"gd";s:21:"schottisch-gäälisch";s:2:"gd";s:10:"skót gael";s:2:"gd";s:12:"scoto gaelic";s:2:"gd";s:14:"skosk gelíska";s:2:"gd";s:21:"schottescht gällesch";s:2:"gd";s:12:"scots gaelic";s:2:"gd";s:19:"schottsch gäälsch";s:2:"gd";s:15:"schots-gaelisch";s:2:"gd";s:14:"skotsk-gælisk";s:2:"gd";s:16:"szkocki gaelicki";s:2:"gd";s:15:"se-scots gaelic";s:2:"gd";s:10:"se-galicia";s:2:"gl";s:11:"starogrčki";s:3:"grc";s:14:"starořečtina";s:3:"grc";s:14:"sean-ghréigis";s:3:"grc";s:16:"senovės graikų";s:3:"grc";s:10:"sengrieķu";s:3:"grc";s:11:"starogrecki";s:3:"grc";s:15:"starogréčtina";s:3:"grc";s:15:"stara grščina";s:3:"grc";s:15:"switserse duits";s:3:"gsw";s:13:"schweizertysk";s:3:"gsw";s:16:"schweizerdeutsch";s:3:"gsw";s:32:"swizerlanɖtɔwo ƒe germaniagbe";s:3:"gsw";s:12:"swiss german";s:3:"gsw";s:13:"sveitsinsaksa";s:3:"gsw";s:15:"switsers dútsk";s:3:"gsw";s:18:"schwiizertüütsch";s:3:"gsw";s:14:"svájci német";s:3:"gsw";s:17:"svissnesk þýska";s:3:"gsw";s:16:"schwitzerdütsch";s:3:"gsw";s:18:"schwäizerdäitsch";s:3:"gsw";s:12:"sveitsertysk";s:3:"gsw";s:16:"swiezerdüütsch";s:3:"gsw";s:21:"szwajcarski niemiecki";s:3:"gsw";s:14:"schweizertyska";s:3:"gsw";s:22:"shveysariya nemischasi";s:3:"gsw";s:11:"se-gujarati";s:2:"gu";s:12:"sinaeg hakka";s:3:"hak";s:9:"se-hebrew";s:2:"he";s:9:"se heberu";s:2:"he";s:8:"se-hindi";s:2:"hi";s:10:"se-croatia";s:2:"hr";s:12:"sorbeg uchaf";s:3:"hsb";s:15:"sorbio superior";s:3:"hsb";s:18:"sorbais uachtarach";s:3:"hsb";s:19:"sòrbais uachdarach";s:3:"hsb";s:11:"sorbia atas";s:3:"hsb";s:17:"sorábio superior";s:3:"hsb";s:14:"sorabă de sus";s:3:"hsb";s:19:"sorbiane e sipërme";s:3:"hsb";s:11:"se-hungaria";s:2:"hu";s:14:"se-interlingua";s:2:"ia";s:12:"se-indonesia";s:2:"id";s:10:"sichuan yi";s:2:"ii";s:10:"siçuan yi";s:2:"ii";s:10:"sičuan ji";s:2:"ii";s:14:"s’-čchuan i";s:2:"ii";s:12:"sichuani jii";s:2:"ii";s:11:"sichuan yia";s:2:"ii";s:12:"sichuanin-yi";s:2:"ii";s:14:"sezuanischs yi";s:2:"ii";s:12:"szecsuán ji";s:2:"ii";s:11:"sísúanjí";s:2:"ii";s:13:"sičuaņas ji";s:2:"ii";s:10:"sichuan-yi";s:2:"ii";s:11:"syczuański";s:2:"ii";s:24:"s’čchuanská ioština";s:2:"ii";s:20:"sečuanska jiščina";s:2:"ii";s:11:"sishuanisht";s:2:"ii";s:9:"szezuan i";s:2:"ii";s:10:"se-iceland";s:2:"is";s:10:"se-tariana";s:2:"it";s:11:"se italiano";s:2:"it";s:9:"saponeere";s:2:"ja";s:10:"seapáinis";s:2:"ja";s:9:"seapanais";s:2:"ja";s:9:"se-japane";s:2:"ja";s:8:"se japan";s:2:"ja";s:9:"sawaneere";s:2:"jv";s:9:"se-javane";s:2:"jv";s:8:"seoirsis";s:2:"ka";s:9:"se-geogia";s:2:"ka";s:10:"se-kannada";s:2:"kn";s:8:"se-korea";s:2:"ko";s:8:"se korea";s:2:"ko";s:9:"se-latino";s:2:"la";s:6:"silozi";s:3:"loz";s:11:"se-lithuano";s:2:"lt";s:15:"sinaeg lennegel";s:3:"lzh";s:21:"sìnis an litreachais";s:3:"lzh";s:12:"se-masedonia";s:2:"mk";s:12:"se-malayalam";s:2:"ml";s:10:"se-marathi";s:2:"mr";s:8:"se-malay";s:2:"ms";s:10:"se-maltese";s:2:"mt";s:14:"sinaeg min nan";s:3:"nan";s:9:"se-nepali";s:2:"ne";s:8:"se dutch";s:2:"nl";s:19:"se-norway (nynorsk)";s:2:"nn";s:9:"se-norway";s:2:"no";s:16:"sesotho sa leboa";s:3:"nso";s:15:"sotho del norte";s:3:"nso";s:14:"sotho an norzh";s:3:"nso";s:12:"severni soto";s:3:"nso";s:19:"sotho septentrional";s:3:"nso";s:20:"sotština (severní)";s:3:"nso";s:15:"sotho gogleddol";s:3:"nso";s:13:"sotho du nord";s:3:"nso";s:19:"sotho setentrionâl";s:3:"nso";s:21:"sútúis an tuaiscirt";s:3:"nso";s:14:"sjeverni sotho";s:3:"nso";s:11:"sotho utara";s:3:"nso";s:14:"sotho del nord";s:3:"nso";s:15:"soto, ta’ fuq";s:3:"nso";s:16:"sotho północny";s:3:"nso";s:17:"soto setentrional";s:3:"nso";s:21:"sesotho sa leboa simi";s:3:"nso";s:14:"sotho dal nord";s:3:"nso";s:13:"sotho de nord";s:3:"nso";s:18:"severná sothčina";s:3:"nso";s:18:"severna sotščina";s:3:"nso";s:9:"siséivis";s:2:"ny";s:11:"schi-schewa";s:2:"ny";s:10:"se-occitan";s:2:"oc";s:10:"se-punjabi";s:2:"pa";s:9:"se-polish";s:2:"pl";s:9:"se poland";s:2:"pl";s:11:"se-portugal";s:2:"pt";s:12:"se potoketsi";s:2:"pt";s:22:"seputukesi (sa brazil)";s:5:"pt-br";s:10:"se-romania";s:2:"ro";s:7:"se roma";s:2:"ro";s:9:"se-rushia";s:2:"ru";s:8:"sanskrit";s:2:"sa";s:10:"sánscritu";s:2:"sa";s:10:"sanskriteg";s:2:"sa";s:9:"sànscrit";s:2:"sa";s:7:"sanskrt";s:2:"sa";s:8:"sansgrit";s:2:"sa";s:10:"sanskrigbe";s:2:"sa";s:9:"sanskrito";s:2:"sa";s:10:"sánscrito";s:2:"sa";s:9:"sanskriti";s:2:"sa";s:10:"sanskritoa";s:2:"sa";s:8:"sanscrit";s:2:"sa";s:9:"sanskriet";s:2:"sa";s:9:"sanscrait";s:2:"sa";s:10:"sanschkrit";s:2:"sa";s:10:"sanskrtski";s:2:"sa";s:10:"szanszkrit";s:2:"sa";s:9:"sanscrito";s:2:"sa";s:9:"sanskerta";s:2:"sa";s:9:"sanskrít";s:2:"sa";s:10:"sanskritas";s:2:"sa";s:9:"sanskrits";s:2:"sa";s:8:"sanskryt";s:2:"sa";s:10:"sânscrito";s:2:"sa";s:14:"sanscrito simi";s:2:"sa";s:10:"sanscrită";s:2:"sa";s:12:"sanskritisht";s:2:"sa";s:11:"sanskritçe";s:2:"sa";s:11:"sanskritcha";s:2:"sa";s:5:"sakha";s:3:"sah";s:7:"sakagbe";s:3:"sah";s:7:"sachais";s:3:"sah";s:10:"sakha simi";s:3:"sah";s:7:"santali";s:3:"sat";s:11:"santal dili";s:3:"sat";s:13:"santálština";s:3:"sat";s:10:"santaligbe";s:3:"sat";s:6:"santal";s:3:"sat";s:10:"santáilis";s:3:"sat";s:9:"szantáli";s:3:"sat";s:8:"santalí";s:3:"sat";s:7:"santalu";s:3:"sat";s:11:"santalčina";s:3:"sat";s:13:"santalščina";s:3:"sat";s:5:"sardu";s:2:"sc";s:11:"sardin dili";s:2:"sc";s:6:"sardeg";s:2:"sc";s:11:"sardinijski";s:2:"sc";s:4:"sard";s:2:"sc";s:10:"sardština";s:2:"sc";s:8:"sardinsk";s:2:"sc";s:8:"sardisch";s:2:"sc";s:13:"sardinšćina";s:2:"sc";s:9:"sardinian";s:2:"sc";s:5:"sardo";s:2:"sc";s:9:"sardiinia";s:2:"sc";s:5:"sardi";s:2:"sc";s:5:"sarde";s:2:"sc";s:10:"sardegnûl";s:2:"sc";s:9:"sardinysk";s:2:"sc";s:10:"sairdínis";s:2:"sc";s:8:"sàrdais";s:2:"sc";s:7:"sardski";s:2:"sc";s:11:"szardíniai";s:2:"sc";s:8:"sardinia";s:2:"sc";s:10:"sardínska";s:2:"sc";s:8:"sardesch";s:2:"sc";s:13:"sardiniečių";s:2:"sc";s:12:"sardīniešu";s:2:"sc";s:9:"sardinjan";s:2:"sc";s:7:"sardsch";s:2:"sc";s:8:"sardijns";s:2:"sc";s:10:"sardyński";s:2:"sc";s:11:"sardiniană";s:2:"sc";s:11:"sardigiella";s:2:"sc";s:12:"sardínčina";s:2:"sc";s:13:"sardinščina";s:2:"sc";s:8:"sardiska";s:2:"sc";s:13:"sardunya dili";s:2:"sc";s:9:"sicilianu";s:3:"scn";s:11:"sisili dili";s:3:"scn";s:8:"sikilieg";s:3:"scn";s:12:"sicilijanski";s:3:"scn";s:8:"sicilià";s:3:"scn";s:11:"sicilština";s:3:"scn";s:7:"sisileg";s:3:"scn";s:10:"siciliansk";s:3:"scn";s:12:"sizilianisch";s:3:"scn";s:16:"sicilianišćina";s:3:"scn";s:8:"sicilian";s:3:"scn";s:9:"siciliano";s:3:"scn";s:9:"sitsiilia";s:3:"scn";s:7:"sisilia";s:3:"scn";s:8:"sicilien";s:3:"scn";s:11:"siciliaansk";s:3:"scn";s:7:"sicilis";s:3:"scn";s:7:"sisilis";s:3:"scn";s:10:"sicilijski";s:3:"scn";s:12:"sicilšćina";s:3:"scn";s:10:"szicíliai";s:3:"scn";s:10:"sikileyska";s:3:"scn";s:12:"sizilianesch";s:3:"scn";s:12:"siciliečių";s:3:"scn";s:11:"sicīliešu";s:3:"scn";s:12:"siziliaansch";s:3:"scn";s:10:"siciliaans";s:3:"scn";s:10:"sycylijski";s:3:"scn";s:10:"siciliană";s:3:"scn";s:13:"sisiliagiella";s:3:"scn";s:11:"sicílčina";s:3:"scn";s:16:"sicilijanščina";s:3:"scn";s:11:"sicilianska";s:3:"scn";s:9:"sicilyaca";s:3:"scn";s:5:"scots";s:3:"sco";s:5:"skots";s:3:"sco";s:10:"skots dili";s:3:"sco";s:6:"skoteg";s:3:"sco";s:10:"skotština";s:3:"sco";s:6:"sgoteg";s:3:"sco";s:6:"skotsk";s:3:"sco";s:10:"schottisch";s:3:"sco";s:6:"skotti";s:3:"sco";s:7:"scozês";s:3:"sco";s:6:"schots";s:3:"sco";s:5:"skót";s:3:"sco";s:10:"skotlandia";s:3:"sco";s:6:"skoska";s:3:"sco";s:8:"scozzese";s:3:"sco";s:10:"schottesch";s:3:"sco";s:5:"skotu";s:3:"sco";s:10:"skoċċiż";s:3:"sco";s:9:"schottsch";s:3:"sco";s:7:"szkocki";s:3:"sco";s:4:"scot";s:3:"sco";s:7:"skotska";s:3:"sco";s:6:"sindhi";s:2:"sd";s:5:"sindi";s:2:"sd";s:11:"sindhština";s:2:"sd";s:11:"sindšćina";s:2:"sd";s:8:"sindhgbe";s:2:"sd";s:5:"sinda";s:2:"sd";s:7:"sindhia";s:2:"sd";s:6:"sindis";s:2:"sd";s:10:"sindiyanci";s:2:"sd";s:13:"sindhišćina";s:2:"sd";s:7:"szindhi";s:2:"sd";s:6:"sindí";s:2:"sd";s:6:"sinndi";s:2:"sd";s:6:"sindų";s:2:"sd";s:6:"sindhu";s:2:"sd";s:11:"sindhi simi";s:2:"sd";s:10:"sindhčina";s:2:"sd";s:11:"sindščina";s:2:"sd";s:10:"sindxiycha";s:2:"sd";s:9:"sassaresu";s:3:"sdc";s:15:"sardu sassarés";s:3:"sdc";s:9:"sasareseg";s:3:"sdc";s:12:"sassarština";s:3:"sdc";s:18:"sasareseg sardinia";s:3:"sdc";s:10:"sassarisch";s:3:"sdc";s:19:"sassarese sardinian";s:3:"sdc";s:13:"sassarinsardi";s:3:"sdc";s:15:"sarde sassarais";s:3:"sdc";s:9:"sassarese";s:3:"sdc";s:12:"sassaresesch";s:3:"sdc";s:18:"sasaresų sardinų";s:3:"sdc";s:9:"sassarees";s:3:"sdc";s:9:"sassarski";s:3:"sdc";s:20:"sassaresisk sardiska";s:3:"sdc";s:15:"sassari sarduca";s:3:"sdc";s:11:"sámegiella";s:2:"se";s:14:"sami del norte";s:2:"se";s:14:"sámi an norzh";s:2:"se";s:13:"sjeverni sami";s:3:"sma";s:18:"sami septentrional";s:2:"se";s:21:"sámština (severní)";s:2:"se";s:14:"sami gogleddol";s:2:"se";s:12:"sami du nord";s:2:"se";s:18:"sami setentrionâl";s:2:"se";s:15:"sáimis thuaidh";s:2:"se";s:17:"sàmais thuathach";s:2:"se";s:13:"sami do norte";s:2:"se";s:18:"sewjerosamišćina";s:2:"se";s:10:"sami utara";s:2:"se";s:13:"sami del nord";s:2:"se";s:38:"sami ភាគ​ខាង​ជើង";s:2:"se";s:14:"sami ta’ fuq";s:2:"se";s:13:"sami dal nord";s:2:"se";s:12:"sami de nord";s:2:"se";s:12:"severni sami";s:2:"se";s:13:"severné sami";s:2:"se";s:20:"severna samijščina";s:2:"se";s:16:"samishte veriore";s:2:"se";s:17:"shimoliy semiycha";s:2:"se";s:10:"seriština";s:3:"sei";s:4:"seri";s:3:"sei";s:5:"séri";s:3:"sei";s:7:"sängö";s:2:"sg";s:5:"sango";s:2:"sg";s:5:"sanqo";s:2:"sg";s:10:"sangština";s:2:"sg";s:8:"sangogbe";s:2:"sg";s:6:"sangoa";s:2:"sg";s:8:"sangoera";s:2:"sg";s:6:"sangho";s:2:"sg";s:8:"sangóis";s:2:"sg";s:7:"szangó";s:2:"sg";s:6:"sangó";s:2:"sg";s:6:"sangjo";s:2:"sg";s:9:"sangoisht";s:2:"sg";s:10:"sangoancha";s:2:"sg";s:11:"samogitisch";s:3:"sgs";s:10:"samogiitti";s:3:"sgs";s:10:"samogitien";s:3:"sgs";s:10:"samogitico";s:3:"sgs";s:11:"samogitesch";s:3:"sgs";s:11:"samogitiska";s:3:"sgs";s:10:"samogitçe";s:3:"sgs";s:45:"srpskohrvatski / српскохрватски";s:2:"sh";s:14:"serwo-kroaties";s:2:"sh";s:12:"serbo-croata";s:2:"sh";s:13:"serb-xorvatca";s:2:"sh";s:12:"serb-kroateg";s:2:"sh";s:14:"srpskohrvatski";s:2:"sh";s:10:"serbocroat";s:2:"sh";s:17:"srbochorvatština";s:2:"sh";s:13:"serbo-croateg";s:2:"sh";s:13:"serbokroatisk";s:2:"sh";s:15:"serbo-kroatisch";s:2:"sh";s:19:"serbochorwatšćina";s:2:"sh";s:16:"serbo-croatiagbe";s:2:"sh";s:14:"serbo-croatian";s:2:"sh";s:12:"serbo-kroata";s:2:"sh";s:11:"serbocroata";s:2:"sh";s:15:"serbia-horvaadi";s:2:"sh";s:14:"serbokroaziera";s:2:"sh";s:13:"serbokroaatti";s:2:"sh";s:14:"serbokroatiskt";s:2:"sh";s:12:"serbo-croate";s:2:"sh";s:13:"servokroatysk";s:2:"sh";s:17:"seirbea-chróitis";s:2:"sh";s:19:"sèirb-chròthaisis";s:2:"sh";s:15:"srpsko-hrvatski";s:2:"sh";s:12:"szerbhorvát";s:2:"sh";s:11:"serbocroate";s:2:"sh";s:13:"serbo-kroasia";s:2:"sh";s:17:"serbókróatíska";s:2:"sh";s:12:"serbo-croato";s:2:"sh";s:15:"särbokowatesch";s:2:"sh";s:15:"serbo-kroatesch";s:2:"sh";s:14:"serbų-kroatų";s:2:"sh";s:14:"serbu-horvātu";s:2:"sh";s:12:"serbocroatia";s:2:"sh";s:11:"serbo-kroat";s:2:"sh";s:14:"servokroatisch";s:2:"sh";s:17:"serbsko-chorwacki";s:2:"sh";s:12:"servo-croata";s:2:"sh";s:11:"serbo-croat";s:2:"sh";s:14:"sârbo-croată";s:2:"sh";s:18:"serbokroatiagiella";s:2:"sh";s:17:"srbochorvátčina";s:2:"sh";s:15:"srbohrvaščina";s:2:"sh";s:9:"serbiyaan";s:2:"sh";s:15:"serbo-kroatisht";s:2:"sh";s:14:"serbokroatiska";s:2:"sh";s:18:"sırp-hırvat dili";s:2:"sh";s:7:"sinhala";s:2:"si";s:6:"sinhal";s:2:"si";s:9:"singhaleg";s:2:"si";s:10:"singaleski";s:2:"si";s:9:"singalès";s:2:"si";s:13:"sinhálština";s:2:"si";s:8:"sinhaleg";s:2:"si";s:11:"singalesisk";s:2:"si";s:13:"singhalesisch";s:2:"si";s:13:"singalšćina";s:2:"si";s:9:"sinhalgbe";s:2:"si";s:7:"singali";s:2:"si";s:12:"sinhalesiskt";s:2:"si";s:8:"sinalês";s:2:"si";s:9:"singalees";s:2:"si";s:10:"siolóinis";s:2:"si";s:10:"sinhalanci";s:2:"si";s:11:"sinhaleški";s:2:"si";s:14:"singhalšćina";s:2:"si";s:10:"szingaléz";s:2:"si";s:9:"sinhalese";s:2:"si";s:11:"singalíska";s:2:"si";s:9:"singalese";s:2:"si";s:14:"singjaleesesch";s:2:"si";s:13:"singhalesesch";s:2:"si";s:8:"sinhalų";s:2:"si";s:9:"singāļu";s:2:"si";s:10:"sinħaliż";s:2:"si";s:12:"singhaleesch";s:2:"si";s:10:"syngaleski";s:2:"si";s:9:"singalais";s:2:"si";s:11:"singhaleză";s:2:"si";s:11:"sinhalčina";s:2:"si";s:13:"singalščina";s:2:"si";s:9:"sinhaleys";s:2:"si";s:7:"sinhale";s:2:"si";s:10:"se-sinhali";s:2:"si";s:12:"singalesiska";s:2:"si";s:8:"seylanca";s:2:"si";s:9:"sinholcha";s:2:"si";s:14:"simple english";s:6:"simple";s:11:"slovenčina";s:2:"sk";s:8:"slowaaks";s:2:"sk";s:6:"slovak";s:2:"sk";s:8:"slovakeg";s:2:"sk";s:9:"slovački";s:2:"sk";s:12:"slovenština";s:2:"sk";s:8:"slofaceg";s:2:"sk";s:9:"slovakisk";s:2:"sk";s:10:"slowakisch";s:2:"sk";s:14:"słowakšćina";s:2:"sk";s:11:"slovakiagbe";s:2:"sk";s:7:"slovaka";s:2:"sk";s:7:"slovaki";s:2:"sk";s:8:"slovakki";s:2:"sk";s:10:"slovakiskt";s:2:"sk";s:8:"slovaque";s:2:"sk";s:6:"slovac";s:2:"sk";s:10:"slóvaicis";s:2:"sk";s:11:"slòbhacais";s:2:"sk";s:8:"szlovák";s:2:"sk";s:7:"slovaco";s:2:"sk";s:12:"slóvakíska";s:2:"sk";s:8:"slovacco";s:2:"sk";s:13:"slovakimiusut";s:2:"sk";s:10:"slowakesch";s:2:"sk";s:8:"slovakų";s:2:"sk";s:8:"slovāku";s:2:"sk";s:7:"slovakk";s:2:"sk";s:10:"slowaaksch";s:2:"sk";s:9:"słowacki";s:2:"sk";s:8:"slovacă";s:2:"sk";s:15:"slovákiagiella";s:2:"sk";s:12:"slovaščina";s:2:"sk";s:11:"sllovakisht";s:2:"sk";s:9:"se-slovak";s:2:"sk";s:10:"slovakiska";s:2:"sk";s:9:"slovakça";s:2:"sk";s:9:"slovakcha";s:2:"sk";s:13:"slovenščina";s:2:"sl";s:8:"sloweens";s:2:"sl";s:6:"sloven";s:2:"sl";s:8:"sloveneg";s:2:"sl";s:11:"slovenački";s:2:"sl";s:12:"slovinština";s:2:"sl";s:8:"slofeneg";s:2:"sl";s:8:"slovensk";s:2:"sl";s:10:"slowenisch";s:2:"sl";s:16:"słowjeńšćina";s:2:"sl";s:11:"sloveniagbe";s:2:"sl";s:9:"slovenian";s:2:"sl";s:7:"slovena";s:2:"sl";s:8:"sloveeni";s:2:"sl";s:9:"slovenskt";s:2:"sl";s:8:"slovène";s:2:"sl";s:9:"sloveensk";s:2:"sl";s:12:"slóivéinis";s:2:"sl";s:11:"slòbhainis";s:2:"sl";s:9:"slovenski";s:2:"sl";s:15:"słowjenšćina";s:2:"sl";s:8:"szlovén";s:2:"sl";s:7:"sloveno";s:2:"sl";s:10:"slóvenska";s:2:"sl";s:10:"slowenesch";s:2:"sl";s:9:"slovėnų";s:2:"sl";s:9:"slovēņu";s:2:"sl";s:8:"slovenia";s:2:"sl";s:10:"sloweensch";s:2:"sl";s:8:"sloveens";s:2:"sl";s:11:"słoweński";s:2:"sl";s:8:"slovenă";s:2:"sl";s:13:"slovenagiella";s:2:"sl";s:11:"slovinčina";s:2:"sl";s:11:"sllovenisht";s:2:"sl";s:11:"se-slovania";s:2:"sl";s:9:"slovenska";s:2:"sl";s:8:"slovence";s:2:"sl";s:9:"slovencha";s:2:"sl";s:9:"schläsch";s:3:"sli";s:10:"schlesisch";s:3:"sli";s:13:"sleesiansaksa";s:3:"sli";s:13:"silesia bawah";s:3:"sli";s:24:"sileziečių žemaičių";s:3:"sli";s:15:"silezisch duits";s:3:"sli";s:8:"samoaans";s:2:"sm";s:7:"samoanu";s:2:"sm";s:10:"samoa dili";s:2:"sm";s:6:"samoan";s:2:"sm";s:9:"samoanski";s:2:"sm";s:6:"samoà";s:2:"sm";s:11:"samojština";s:2:"sm";s:7:"samöeg";s:2:"sm";s:8:"samoansk";s:2:"sm";s:10:"samoanisch";s:2:"sm";s:11:"samošćina";s:2:"sm";s:8:"samoagbe";s:2:"sm";s:5:"samoa";s:2:"sm";s:7:"samoano";s:2:"sm";s:7:"samoera";s:2:"sm";s:8:"samoiskt";s:2:"sm";s:9:"samoaansk";s:2:"sm";s:7:"samóis";s:2:"sm";s:9:"samothais";s:2:"sm";s:12:"samoašćina";s:2:"sm";s:7:"szamoai";s:2:"sm";s:8:"samóska";s:2:"sm";s:12:"sammohanesch";s:2:"sm";s:10:"samoanesch";s:2:"sm";s:9:"samoāņu";s:2:"sm";s:7:"samojan";s:2:"sm";s:10:"samoaansch";s:2:"sm";s:10:"samoański";s:2:"sm";s:8:"samoană";s:2:"sm";s:11:"samoagiella";s:2:"sm";s:10:"samojčina";s:2:"sm";s:13:"samoanščina";s:2:"sm";s:9:"samoanska";s:2:"sm";s:9:"suid-sami";s:3:"sma";s:12:"sami del sur";s:3:"sma";s:11:"sámi ar su";s:3:"sma";s:15:"sami meridional";s:3:"sma";s:20:"sámština (jižní)";s:3:"sma";s:12:"sami deheuol";s:3:"sma";s:9:"sydsamisk";s:3:"sma";s:12:"süd-samisch";s:3:"sma";s:13:"southern sami";s:3:"sma";s:11:"sami du sud";s:3:"sma";s:11:"sûd-samysk";s:3:"sma";s:16:"sàmais dheasach";s:3:"sma";s:12:"saami do sur";s:3:"sma";s:14:"süüd-samisch";s:3:"sma";s:12:"sami selatan";s:3:"sma";s:14:"suðursamíska";s:3:"sma";s:12:"sami del sud";s:3:"sma";s:44:"sami ភាគ​ខាង​ត្បូង";s:3:"sma";s:11:"südsamesch";s:3:"sma";s:10:"sørsamisk";s:3:"sma";s:14:"süüd-lappsch";s:3:"sma";s:11:"sami do sul";s:3:"sma";s:12:"sami dal sid";s:3:"sma";s:11:"sami de sud";s:3:"sma";s:15:"samishte jugore";s:3:"sma";s:10:"sydsamiska";s:3:"sma";s:5:"shona";s:2:"sn";s:8:"shonagbe";s:2:"sn";s:7:"shonera";s:2:"sn";s:7:"seoinis";s:2:"sn";s:7:"schhona";s:2:"sn";s:4:"sona";s:2:"sn";s:11:"schi-schona";s:2:"sn";s:6:"schona";s:2:"sn";s:5:"szona";s:2:"sn";s:8:"shonisht";s:2:"sn";s:9:"shoniycha";s:2:"sn";s:10:"soomaaliga";s:2:"so";s:8:"somalies";s:2:"so";s:12:"somalia kasa";s:2:"so";s:8:"somalín";s:2:"so";s:6:"somali";s:2:"so";s:9:"somalikan";s:2:"so";s:8:"somalski";s:2:"so";s:12:"somálština";s:2:"so";s:7:"somaleg";s:2:"so";s:8:"somalisk";s:2:"so";s:13:"somališćina";s:2:"so";s:10:"somaliagbe";s:2:"so";s:6:"somala";s:2:"so";s:7:"somalí";s:2:"so";s:7:"somaali";s:2:"so";s:9:"somaliera";s:2:"so";s:7:"somalii";s:2:"so";s:9:"somaliskt";s:2:"so";s:5:"somal";s:2:"so";s:8:"somalysk";s:2:"so";s:9:"somáilis";s:2:"so";s:9:"somàilis";s:2:"so";s:10:"szomáliai";s:2:"so";s:9:"sómalska";s:2:"so";s:6:"somalo";s:2:"so";s:10:"somaalesch";s:2:"so";s:12:"somaliečių";s:2:"so";s:8:"somāļu";s:2:"so";s:11:"somalianina";s:2:"so";s:9:"somaalsch";s:2:"so";s:9:"somalisch";s:2:"so";s:10:"somalijski";s:2:"so";s:9:"somaleză";s:2:"so";s:8:"somalïi";s:2:"so";s:11:"somálčina";s:2:"so";s:12:"somalščina";s:2:"so";s:8:"soomaali";s:2:"so";s:9:"somalisht";s:2:"so";s:9:"somaliska";s:2:"so";s:8:"somalice";s:2:"so";s:9:"somalicha";s:2:"so";s:5:"shqip";s:2:"sq";s:11:"se-albanian";s:2:"sq";s:7:"serwies";s:2:"sr";s:6:"serbiu";s:2:"sr";s:4:"serb";s:2:"sr";s:6:"serbeg";s:2:"sr";s:6:"srpski";s:2:"sr";s:5:"serbi";s:2:"sr";s:9:"srbština";s:2:"sr";s:7:"serbisk";s:2:"sr";s:8:"serbisch";s:2:"sr";s:12:"serbišćina";s:2:"sr";s:9:"serbiagbe";s:2:"sr";s:7:"serbian";s:2:"sr";s:5:"serba";s:2:"sr";s:6:"serbio";s:2:"sr";s:6:"serbia";s:2:"sr";s:8:"serbiera";s:2:"sr";s:8:"serbiskt";s:2:"sr";s:5:"serbe";s:2:"sr";s:4:"serp";s:2:"sr";s:7:"servysk";s:2:"sr";s:7:"seirbis";s:2:"sr";s:8:"sèirbis";s:2:"sr";s:7:"sabiyan";s:2:"sr";s:5:"szerb";s:2:"sr";s:5:"serbo";s:2:"sr";s:9:"serbneska";s:2:"sr";s:9:"särbesch";s:2:"sr";s:8:"serbesch";s:2:"sr";s:6:"serbų";s:2:"sr";s:5:"serbu";s:2:"sr";s:7:"serbsch";s:2:"sr";s:8:"servisch";s:2:"sr";s:7:"serbski";s:2:"sr";s:7:"sérvio";s:2:"sr";s:11:"serbio simi";s:2:"sr";s:7:"sârbă";s:2:"sr";s:12:"serbiagiella";s:2:"sr";s:8:"srbčina";s:2:"sr";s:10:"srbščina";s:2:"sr";s:10:"seerbiyaan";s:2:"sr";s:8:"serbisht";s:2:"sr";s:10:"se-serbian";s:2:"sr";s:8:"serbiska";s:2:"sr";s:8:"sırpça";s:2:"sr";s:7:"serbcha";s:2:"sr";s:25:"serbian (cyrillic script)";s:5:"sr-ec";s:20:"srpski (latinica)‎";s:5:"sr-el";s:22:"serbian (latin script)";s:5:"sr-el";s:11:"sranantongo";s:3:"srn";s:12:"sranan tongo";s:3:"srn";s:17:"sranan tonqo dili";s:3:"srn";s:15:"srananski tongo";s:3:"srn";s:6:"sranan";s:3:"srn";s:10:"srananisch";s:3:"srn";s:7:"sranani";s:3:"srn";s:14:"szranai tongó";s:3:"srn";s:10:"srananesch";s:3:"srn";s:10:"sranantogo";s:3:"srn";s:11:"surinaamsch";s:3:"srn";s:23:"surinamska kreolščina";s:3:"srn";s:7:"siswati";s:2:"ss";s:5:"swazi";s:2:"ss";s:5:"swati";s:2:"ss";s:10:"svati dili";s:2:"ss";s:5:"svati";s:2:"ss";s:12:"siswatština";s:2:"ss";s:7:"swatgbe";s:2:"ss";s:6:"svazia";s:2:"ss";s:6:"svaasi";s:2:"ss";s:8:"swatiera";s:2:"ss";s:8:"swatiskt";s:2:"ss";s:7:"suaisis";s:2:"ss";s:9:"sziszuati";s:2:"ss";s:6:"svatí";s:2:"ss";s:11:"si-swatesch";s:2:"ss";s:5:"svatu";s:2:"ss";s:11:"svazijčina";s:2:"ss";s:13:"svazijščina";s:2:"ss";s:7:"sisvati";s:2:"ss";s:7:"sesotho";s:2:"st";s:10:"suid-sotho";s:2:"st";s:13:"sotho del sur";s:2:"st";s:11:"sesoto dili";s:2:"st";s:11:"sotho ar su";s:2:"st";s:6:"sesoto";s:2:"st";s:16:"sotho meridional";s:2:"st";s:19:"sotština (jižní)";s:2:"st";s:8:"sesotheg";s:2:"st";s:8:"sydsotho";s:2:"st";s:18:"süd-sotho-sprache";s:2:"st";s:14:"southern sotho";s:2:"st";s:4:"sota";s:2:"st";s:18:"sesotho meridional";s:2:"st";s:17:"sotho meridionâl";s:2:"st";s:10:"sûd-sotho";s:2:"st";s:10:"seasóitis";s:2:"st";s:22:"süüd-sotho-schpraach";s:2:"st";s:9:"sesotanci";s:2:"st";s:8:"sesotski";s:2:"st";s:9:"szeszotó";s:2:"st";s:13:"sotho selatan";s:2:"st";s:12:"suðursótó";s:2:"st";s:13:"sotho del sud";s:2:"st";s:10:"söd-sooto";s:2:"st";s:18:"süd-sotho-sprooch";s:2:"st";s:15:"soto, t’isfel";s:2:"st";s:10:"sør-sotho";s:2:"st";s:12:"süüd-sotho";s:2:"st";s:9:"sørsotho";s:2:"st";s:17:"sotho południowy";s:2:"st";s:11:"soto do sul";s:2:"st";s:13:"sotho dal sid";s:2:"st";s:7:"sesooto";s:2:"st";s:9:"seeltersk";s:3:"stq";s:14:"saterfriesisch";s:3:"stq";s:17:"saterfrizišćina";s:3:"stq";s:17:"saterland frisian";s:3:"stq";s:17:"saterlandinfriisi";s:3:"stq";s:14:"saterfriesesch";s:3:"stq";s:17:"saterlendo fryzų";s:3:"stq";s:10:"saterfries";s:3:"stq";s:13:"saterfrisiska";s:3:"stq";s:18:"saterland frizcesi";s:3:"stq";s:9:"sundanees";s:2:"su";s:9:"sondanés";s:2:"su";s:5:"sudan";s:2:"su";s:8:"sundaneg";s:2:"su";s:8:"sudanski";s:2:"su";s:9:"sundanès";s:2:"su";s:10:"sundština";s:2:"su";s:8:"swndaneg";s:2:"su";s:11:"sundanesisk";s:2:"su";s:12:"sundanesisch";s:2:"su";s:13:"sundanšćina";s:2:"su";s:8:"sudangbe";s:2:"su";s:9:"sundanese";s:2:"su";s:5:"sunda";s:2:"su";s:9:"sundanés";s:2:"su";s:9:"sundanera";s:2:"su";s:12:"sundanesiskt";s:2:"su";s:10:"soundanais";s:2:"su";s:9:"sundanês";s:2:"su";s:11:"soendaneesk";s:2:"su";s:7:"sundais";s:2:"su";s:9:"sundanski";s:2:"su";s:16:"sundanezišćina";s:2:"su";s:10:"szundanéz";s:2:"su";s:10:"súndanska";s:2:"su";s:13:"sindaneesesch";s:2:"su";s:12:"sundanesesch";s:2:"su";s:6:"sundų";s:2:"su";s:11:"sundaniešu";s:2:"su";s:9:"sundaniż";s:2:"su";s:11:"sundaneesch";s:2:"su";s:10:"soendanees";s:2:"su";s:9:"sundajski";s:2:"su";s:9:"sundanais";s:2:"su";s:10:"sundaneză";s:2:"su";s:9:"sundčina";s:2:"su";s:13:"sundanščina";s:2:"su";s:10:"suudaaniis";s:2:"su";s:10:"sundanisht";s:2:"su";s:12:"se-sundanese";s:2:"su";s:12:"sundanesiska";s:2:"su";s:10:"sunda dili";s:2:"su";s:9:"sundancha";s:2:"su";s:7:"svenska";s:2:"sv";s:6:"sweeds";s:2:"sv";s:11:"sweden kasa";s:2:"sv";s:5:"suecu";s:2:"sv";s:10:"suwɛdikan";s:2:"sv";s:6:"svedeg";s:2:"sv";s:4:"suec";s:2:"sv";s:6:"swedeg";s:2:"sv";s:6:"svensk";s:2:"sv";s:10:"schwedisch";s:2:"sv";s:9:"swedengbe";s:2:"sv";s:7:"swedish";s:2:"sv";s:5:"sveda";s:2:"sv";s:5:"sueco";s:2:"sv";s:8:"suediera";s:2:"sv";s:9:"sweedeere";s:2:"sv";s:7:"svenskt";s:2:"sv";s:8:"suédois";s:2:"sv";s:7:"svedês";s:2:"sv";s:10:"sualainnis";s:2:"sv";s:7:"suainis";s:2:"sv";s:5:"svéd";s:2:"sv";s:7:"svedese";s:2:"sv";s:6:"swedia";s:2:"sv";s:12:"sụwidiishi";s:2:"sv";s:7:"sænska";s:2:"sv";s:10:"svenskisut";s:2:"sv";s:11:"schweedesch";s:2:"sv";s:10:"schwedesch";s:2:"sv";s:5:"soisa";s:2:"sv";s:6:"sweden";s:2:"sv";s:7:"svediż";s:2:"sv";s:8:"sweedsch";s:2:"sv";s:8:"szwedzki";s:2:"sv";s:10:"sueco simi";s:2:"sv";s:7:"svedais";s:2:"sv";s:8:"suedeză";s:2:"sv";s:8:"sueduäa";s:2:"sv";s:8:"swiidhis";s:2:"sv";s:8:"suedisht";s:2:"sv";s:9:"se-sweden";s:2:"sv";s:8:"shvedcha";s:2:"sv";s:7:"swahili";s:2:"sw";s:9:"suaḥili";s:2:"sw";s:7:"suahili";s:2:"sw";s:7:"svahili";s:2:"sw";s:12:"svahilština";s:2:"sw";s:7:"suaheli";s:2:"sw";s:14:"swahilišćina";s:2:"sw";s:7:"svahila";s:2:"sw";s:8:"suahiili";s:2:"sw";s:10:"svahaílis";s:2:"sw";s:13:"suahelšćina";s:2:"sw";s:9:"szuahéli";s:2:"sw";s:9:"svahílí";s:2:"sw";s:13:"swahilimiutut";s:2:"sw";s:11:"suaheelesch";s:2:"sw";s:9:"suahilių";s:2:"sw";s:8:"swaħili";s:2:"sw";s:9:"suwahilii";s:2:"sw";s:7:"suaíli";s:2:"sw";s:12:"suajili simi";s:2:"sw";s:11:"svahilčina";s:2:"sw";s:9:"sawaaxili";s:2:"sw";s:10:"suahilisht";s:2:"sw";s:10:"se-swahili";s:2:"sw";s:9:"svahilcha";s:2:"sw";s:9:"silesianu";s:3:"szl";s:10:"slezština";s:3:"szl";s:8:"silesieg";s:3:"szl";s:18:"schlesisch (polen)";s:3:"szl";s:8:"silesian";s:3:"szl";s:7:"sleesia";s:3:"szl";s:9:"silésien";s:3:"szl";s:9:"siléisis";s:3:"szl";s:7:"silesia";s:3:"szl";s:8:"slesiano";s:3:"szl";s:10:"schlesesch";s:3:"szl";s:12:"sileziečių";s:3:"szl";s:9:"silezisch";s:3:"szl";s:9:"silesiska";s:3:"szl";s:9:"silezyaca";s:3:"szl";s:8:"se-tamil";s:2:"ta";s:9:"se-telegu";s:2:"te";s:7:"se-thai";s:2:"th";s:11:"se-tigrinya";s:2:"ti";s:8:"setswana";s:2:"tn";s:10:"svana dili";s:2:"tn";s:13:"setswanština";s:2:"tn";s:9:"setchwana";s:2:"tn";s:8:"suáinis";s:2:"tn";s:10:"szecsuáni";s:2:"tn";s:12:"se-zwaanesch";s:2:"tn";s:13:"setsuana simi";s:2:"tn";s:8:"setsvana";s:2:"tn";s:8:"se-theki";s:2:"tr";s:10:"sonqa dili";s:2:"ts";s:7:"songais";s:2:"ts";s:24:"sentraal atlas tamazight";s:3:"tzm";s:27:"sentralmarokkansk tamazight";s:3:"tzm";s:10:"se-ukrania";s:2:"uk";s:7:"se-urdu";s:2:"ur";s:8:"se-uzbek";s:2:"uz";s:10:"se-vietnam";s:2:"vi";s:9:"sinaeg wu";s:3:"wuu";s:5:"sósa";s:2:"xh";s:8:"se xhosa";s:2:"xh";s:10:"siuáingis";s:2:"za";s:6:"súang";s:2:"za";s:12:"seeländisch";s:3:"zea";s:8:"seelanti";s:3:"zea";s:11:"séalainnis";s:3:"zea";s:12:"seelännesch";s:3:"zea";s:7:"sjinees";s:2:"zh";s:9:"siniwakan";s:2:"zh";s:6:"sinaeg";s:2:"zh";s:9:"sinuwaare";s:2:"zh";s:7:"sineesk";s:2:"zh";s:6:"sínis";s:2:"zh";s:6:"sìnis";s:2:"zh";s:12:"schineesesch";s:2:"zh";s:15:"sinoa, mandarin";s:2:"zh";s:8:"shinuäa";s:2:"zh";s:19:"sadələşmiş çin";s:7:"zh-hans";s:14:"sinaeg eeunaet";s:7:"zh-hans";s:18:"simplified chinese";s:7:"zh-hans";s:17:"sínis shimplithe";s:7:"zh-hans";s:18:"sìnis shimplichte";s:7:"zh-hans";s:36:"schineesesch en de eijfacher schreff";s:7:"zh-hans";s:21:"supaprastintoji kinų";s:7:"zh-hans";s:26:"soddalashtirilgan xitoycha";s:7:"zh-hans";s:16:"sinaeg hengounel";s:7:"zh-hant";s:21:"sínis thraidisiúnta";s:7:"zh-hant";s:20:"sìnis thradaiseanta";s:7:"zh-hant";s:41:"schineesesch en de tradizjonälle schreff";s:7:"zh-hant";s:4:"swlw";s:2:"zu";s:5:"suulu";s:2:"zu";s:11:"suluŋkoore";s:2:"zu";s:4:"sulu";s:2:"zu";s:8:"súlúis";s:2:"zu";s:6:"súlú";s:2:"zu";s:7:"se zulu";s:2:"zu";s:28:"stöðluð nútímaarabíska";s:6:"ar-001";s:20:"schtandatt arahbesch";s:6:"ar-001";s:30:"sodobna standardna arabščina";s:6:"ar-001";s:5:"sjiga";s:3:"cgg";s:14:"staroegipatski";s:3:"egy";s:14:"sean-Éigiptis";s:3:"egy";s:21:"senovės egiptiečių";s:3:"egy";s:19:"starożytny egipski";s:3:"egy";s:14:"staroegyptský";s:3:"egy";s:21:"stara egipčanščina";s:3:"egy";s:10:"se-tagalog";s:3:"fil";s:24:"ఫిలిపినో";s:3:"fil";s:8:"shambala";s:3:"ksb";s:10:"shambalera";s:3:"ksb";s:7:"sambala";s:3:"ksb";s:8:"sjambala";s:3:"ksb";s:11:"shambalisht";s:3:"ksb";s:11:"shambalacha";s:3:"ksb";s:34:"složené (víceřádkové) jazyky";s:3:"mul";s:16:"sjeverni ndebele";s:2:"nd";s:15:"sewjero-ndebele";s:2:"nd";s:15:"severni ndebele";s:2:"nd";s:16:"severné ndebele";s:2:"nd";s:21:"severna ndebelščina";s:2:"nd";s:18:"shimoliy ndebelcha";s:2:"nd";s:24:"ఫ్లెమిష్";s:5:"nl-be";s:12:"suid-ndebele";s:2:"nr";s:10:"sydndebele";s:2:"nr";s:20:"süd-ndebele-sprache";s:2:"nr";s:13:"south ndebele";s:2:"nr";s:11:"sûd-ndbele";s:2:"nr";s:24:"süüd-ndebele-schpraach";s:2:"nr";s:13:"suðurndebele";s:2:"nr";s:20:"süd-ndebele-sprooch";s:2:"nr";s:12:"sør-ndebele";s:2:"nr";s:14:"süüd-ndebele";s:2:"nr";s:21:"ఫోనికన్";s:3:"phn";s:7:"samburu";s:3:"saq";s:8:"sambŵrw";s:3:"saq";s:10:"samburuera";s:3:"saq";s:8:"szamburu";s:3:"saq";s:9:"sambúrú";s:3:"saq";s:9:"sambūrų";s:3:"saq";s:13:"samburščina";s:3:"saq";s:10:"samburisht";s:3:"saq";s:9:"samburcha";s:3:"saq";s:5:"sangu";s:3:"sbp";s:5:"sanqu";s:3:"sbp";s:11:"sangoština";s:3:"sbp";s:5:"sangw";s:3:"sbp";s:8:"sangugbe";s:3:"sbp";s:8:"sanguera";s:3:"sbp";s:6:"szangu";s:3:"sbp";s:6:"sangú";s:3:"sbp";s:6:"sangų";s:3:"sbp";s:13:"sangujščina";s:3:"sbp";s:9:"sanguisht";s:3:"sbp";s:10:"sanguancha";s:3:"sbp";s:4:"sena";s:3:"seh";s:6:"senera";s:3:"seh";s:5:"szena";s:3:"seh";s:5:"senų";s:3:"seh";s:4:"senu";s:3:"seh";s:9:"senaishte";s:3:"seh";s:8:"seniycha";s:3:"seh";s:16:"songhai oriental";s:3:"ses";s:18:"senishte kojrabore";s:3:"ses";s:12:"sámi luleå";s:3:"smj";s:9:"sami lule";s:3:"smj";s:22:"sámština (lulejská)";s:3:"smj";s:9:"sami lwle";s:3:"smj";s:12:"sami de lule";s:3:"smj";s:12:"sáimis lule";s:3:"smj";s:12:"sàmais lule";s:3:"smj";s:10:"saami lule";s:3:"smj";s:12:"sami di lule";s:3:"smj";s:14:"sami lule simi";s:3:"smj";s:11:"sami (lule)";s:3:"smj";s:15:"samishte luleje";s:3:"smj";s:11:"sámi inari";s:3:"smn";s:14:"sami d’inari";s:3:"smn";s:23:"sámština (inarijská)";s:3:"smn";s:10:"sami inari";s:3:"smn";s:13:"sàmais inari";s:3:"smn";s:11:"saami inari";s:3:"smn";s:13:"sami di inari";s:3:"smn";s:15:"sami inari simi";s:3:"smn";s:12:"sami (inari)";s:3:"smn";s:15:"samishte inarie";s:3:"smn";s:10:"skolt sami";s:3:"sms";s:5:"skolt";s:3:"sms";s:11:"sámi skolt";s:3:"sms";s:14:"skoltski jezik";s:3:"sms";s:10:"sami skolt";s:3:"sms";s:22:"sámština (skoltská)";s:3:"sms";s:10:"sami scolt";s:3:"sms";s:12:"skoltesamisk";s:3:"sms";s:14:"skolt-lappisch";s:3:"sms";s:17:"skolt-samišćina";s:3:"sms";s:13:"skolt samiera";s:3:"sms";s:13:"sàmais skolt";s:3:"sms";s:11:"saami skolt";s:3:"sms";s:13:"skolt-samisch";s:3:"sms";s:14:"skoltesamíska";s:3:"sms";s:14:"skolt-lappesch";s:3:"sms";s:13:"skolto samių";s:3:"sms";s:10:"skoltsāmu";s:3:"sms";s:13:"skolt-lappsch";s:3:"sms";s:15:"sami skolt simi";s:3:"sms";s:12:"sami (skolt)";s:3:"sms";s:18:"samijščina skolt";s:3:"sms";s:15:"samishte skolte";s:3:"sms";s:12:"skoltsamiska";s:3:"sms";s:15:"shkolt semiycha";s:3:"sms";s:10:"shimaorees";s:3:"swb";s:8:"shimaore";s:3:"swb";s:9:"shimaoré";s:3:"swb";s:11:"shimaorisch";s:3:"swb";s:12:"shimaoríska";s:3:"swb";s:14:"shimaorigiella";s:3:"swb";s:8:"shikomor";s:3:"swb";s:15:"swahili (kongo)";s:3:"swc";s:17:"swahili del congo";s:3:"swc";s:17:"suahili del congo";s:3:"swc";s:20:"svahilština (kongo)";s:3:"swc";s:17:"swahili’r congo";s:3:"swc";s:16:"swahili du congo";s:3:"swc";s:21:"svahaílis an chongó";s:3:"swc";s:17:"suahili congolés";s:3:"swc";s:16:"suaíli do congo";s:3:"swc";s:13:"swahili congo";s:3:"swc";s:23:"svahilčina (konžská)";s:3:"swc";s:15:"svahili (kongo)";s:3:"swc";s:19:"suahilishte kongoje";s:3:"swc";s:10:"se-klingon";s:3:"tlh";s:7:"szavák";s:3:"twq";s:4:"soga";s:3:"xog";s:4:"soqa";s:3:"xog";s:9:"sogština";s:3:"xog";s:6:"sogera";s:3:"xog";s:5:"szoga";s:3:"xog";s:5:"sóga";s:3:"xog";s:5:"sogų";s:3:"xog";s:4:"sogu";s:3:"xog";s:10:"sogščina";s:3:"xog";s:7:"sogisht";s:3:"xog";s:8:"sogancha";s:3:"xog";s:31:"standaard marokkaanse tamazight";s:3:"zgh";s:30:"standardni marokanski tamazigt";s:3:"zgh";s:33:"standardny marokkański tamazight";s:3:"zgh";s:27:"standard moroccan tamazight";s:3:"zgh";s:31:"standert marokkaanske tamazight";s:3:"zgh";s:31:"standardni marokanski tamazight";s:3:"zgh";s:31:"staðlað marokkóskt tamazight";s:3:"zgh";s:30:"standartinė maroko tamazigtų";s:3:"zgh";s:28:"standarta marokāņu berberu";s:3:"zgh";s:29:"standard marrokansk tamazight";s:3:"zgh";s:27:"standardni maroški tamazig";s:3:"zgh";s:31:"standart berberi dili tamazight";s:3:"zgh";s:25:"standart marokash tamazit";s:3:"zgh";s:28:"sense contingut lingüístic";s:3:"zxx";s:27:"sin contenido lingüístico";s:3:"zxx";s:25:"sans contenu linguistique";s:3:"zxx";s:31:"susbaint nach eil ‘na chànan";s:3:"zxx";s:25:"sen contido lingüístico";s:3:"zxx";s:26:"sem conteúdo linguístico";s:3:"zxx";s:17:"saozneg aostralia";s:5:"en-au";s:17:"saesneg awstralia";s:5:"en-au";s:15:"saozneg amerika";s:5:"en-us";s:15:"saesneg america";s:5:"en-us";s:23:"spagnoleg amerika latin";s:6:"es-419";s:21:"sbaeneg america ladin";s:6:"es-419";s:27:"spagnûl de americhe latine";s:6:"es-419";s:30:"spáinnis mheiriceá laidinigh";s:6:"es-419";s:38:"spàinntis na h-aimeireaga laidinneach";s:6:"es-419";s:21:"spanyol amerika latin";s:6:"es-419";s:24:"spagnolo latinoamericano";s:6:"es-419";s:34:"schpaanesch uß latting-ammärrika";s:6:"es-419";s:22:"sepanyol amerika latin";s:6:"es-419";s:21:"spagnol latinamerican";s:6:"es-419";s:27:"spaniolă latino-americană";s:6:"es-419";s:27:"spanjishte amerikano-latine";s:6:"es-419";s:16:"spagnoleg europa";s:5:"es-es";s:13:"sbaeneg ewrop";s:5:"es-es";s:15:"spagnûl iberic";s:5:"es-es";s:17:"spáinnis eorpach";s:5:"es-es";s:19:"spàinntis eòrpach";s:5:"es-es";s:13:"spanyol eropa";s:5:"es-es";s:16:"spagnolo europeo";s:5:"es-es";s:25:"schpahnesch en schpahneje";s:5:"es-es";s:15:"sepanyol eropah";s:5:"es-es";s:14:"spagnol iberic";s:5:"es-es";s:20:"spaniolă europeană";s:5:"es-es";s:20:"spanjishte evropiane";s:5:"es-es";s:17:"schweizisk fransk";s:5:"fr-ch";s:22:"schweizer französisch";s:5:"fr-ch";s:30:"swizerlanɖtɔwo ƒe fransegbe";s:5:"fr-ch";s:12:"swiss french";s:5:"fr-ch";s:12:"svisa franca";s:5:"fr-ch";s:14:"sveitsinranska";s:5:"fr-ch";s:17:"switserse frânsk";s:5:"fr-ch";s:22:"schwiizer französisch";s:5:"fr-ch";s:15:"svájci francia";s:5:"fr-ch";s:17:"svissnesk franska";s:5:"fr-ch";s:22:"schwäizer franséisch";s:5:"fr-ch";s:16:"sveitsisk fransk";s:5:"fr-ch";s:20:"swiezer franzöösch";s:5:"fr-ch";s:21:"szwajcarski francuski";s:5:"fr-ch";s:18:"schweizisk franska";s:5:"fr-ch";s:23:"shvesariya fransuzchasi";s:5:"fr-ch";s:13:"staroetiopski";s:3:"gez";s:22:"se-portugal (portugal)";s:5:"pt-pt";s:6:"sidamo";s:3:"sid";s:11:"sidamo dili";s:3:"sid";s:8:"szidamó";s:3:"sid";s:8:"sídamó";s:3:"sid";s:6:"sidamu";s:3:"sid";s:12:"sidamščina";s:3:"sid";s:10:"sydaltaisk";s:3:"alt";s:13:"süd-altaisch";s:3:"alt";s:14:"southern altai";s:3:"alt";s:13:"sûd-altaïsk";s:3:"alt";s:15:"süüd-altaisch";s:3:"alt";s:15:"suðuraltaíska";s:3:"alt";s:12:"süd-alaesch";s:3:"alt";s:11:"søraltaisk";s:3:"alt";s:10:"sør-altai";s:3:"alt";s:11:"sydaltaiska";s:3:"alt";s:7:"siksika";s:3:"bla";s:13:"siksikə dili";s:3:"bla";s:7:"siksiku";s:3:"bla";s:7:"síbsja";s:3:"chb";s:9:"sjagataí";s:3:"chg";s:10:"sjúkíska";s:3:"chk";s:7:"sínúk";s:3:"chn";s:11:"sípevíska";s:3:"chp";s:4:"siuu";s:3:"dak";s:5:"slave";s:3:"den";s:6:"slavey";s:3:"den";s:7:"slavski";s:3:"den";s:30:"slejvština (athabaský jazyk)";s:3:"den";s:6:"sleivi";s:3:"den";s:5:"slevi";s:3:"den";s:6:"sclâf";s:3:"den";s:6:"szlevi";s:3:"den";s:9:"slavneska";s:3:"den";s:6:"sleivu";s:3:"den";s:4:"slav";s:3:"den";s:7:"slavisk";s:3:"den";s:6:"slavej";s:3:"den";s:11:"slovančina";s:3:"den";s:13:"slavejščina";s:3:"den";s:17:"srednji holandski";s:3:"dum";s:20:"stredná holandčina";s:3:"dum";s:22:"srednja nizozemščina";s:3:"dum";s:16:"srednji engleski";s:3:"enm";s:13:"saesneg canol";s:3:"enm";s:20:"stredná angličtina";s:3:"enm";s:20:"srednja angleščina";s:3:"enm";s:15:"ఫాంగ్";s:3:"fan";s:15:"ఫాంటి";s:3:"fat";s:12:"ఫాన్";s:3:"fon";s:17:"srednji francuski";s:3:"frm";s:23:"stredná francúzština";s:3:"frm";s:21:"srednja francoščina";s:3:"frm";s:14:"starofrancuski";s:3:"fro";s:14:"sean-fhraincis";s:3:"fro";s:15:"seann-fhraingis";s:3:"fro";s:17:"senoji prancūzų";s:3:"fro";s:10:"senfranču";s:3:"fro";s:21:"stará francúzština";s:3:"fro";s:19:"stara francoščina";s:3:"fro";s:12:"saterfreesch";s:3:"frs";s:23:"srednji visoki nemački";s:3:"gmh";s:24:"stredná horná nemčina";s:3:"gmh";s:25:"srednja visoka nemščina";s:3:"gmh";s:13:"staronemački";s:3:"goh";s:21:"sean-ard-ghearmáinis";s:3:"goh";s:22:"seann-Àrd-gearmailtis";s:3:"goh";s:22:"staronjemački, visoki";s:3:"goh";s:29:"senoji aukštosios vokietijos";s:3:"goh";s:13:"senaugšvācu";s:3:"goh";s:22:"staro-wysoko-niemiecki";s:3:"goh";s:22:"stará horná nemčina";s:3:"goh";s:23:"stara visoka nemščina";s:3:"goh";s:7:"sakisch";s:3:"kho";s:4:"saki";s:3:"kho";s:7:"sakesch";s:3:"kho";s:7:"saaksch";s:3:"kho";s:13:"srednji irski";s:3:"mga";s:17:"stredná írčina";s:3:"mga";s:17:"srednja irščina";s:3:"mga";s:12:"stari norski";s:3:"non";s:16:"sean-lochlainnis";s:3:"non";s:17:"seann-lochlannais";s:3:"non";s:14:"staronorveški";s:3:"non";s:12:"sennorvēģu";s:3:"non";s:16:"skandinav, antik";s:3:"non";s:14:"staronordyjski";s:3:"non";s:16:"stará nórčina";s:3:"non";s:19:"stara nordijščina";s:3:"non";s:14:"staropersijski";s:3:"peo";s:14:"staroperština";s:3:"peo";s:13:"sean-pheirsis";s:3:"peo";s:14:"seann-pheirsis";s:3:"peo";s:14:"staroperzijski";s:3:"peo";s:13:"senoji persų";s:3:"peo";s:8:"senpersu";s:3:"peo";s:11:"staroperski";s:3:"peo";s:17:"stará perzština";s:3:"peo";s:19:"stara perzijščina";s:3:"peo";s:17:"staroprovansalski";s:3:"pro";s:20:"senovės provansalų";s:3:"pro";s:15:"senprovansiešu";s:3:"pro";s:17:"staroprowansalski";s:3:"pro";s:20:"stará okcitánčina";s:3:"pro";s:22:"stara provansalščina";s:3:"pro";s:12:"sandave dili";s:3:"sad";s:7:"sandawe";s:3:"sad";s:7:"sandave";s:3:"sad";s:12:"sandawština";s:3:"sad";s:9:"sandäweg";s:3:"sad";s:15:"sandawe-sprache";s:3:"sad";s:17:"sandawe-schpraach";s:3:"sad";s:8:"szandave";s:3:"sad";s:15:"sandawe-sprooch";s:3:"sad";s:7:"sandavi";s:3:"sad";s:7:"sandavu";s:3:"sad";s:14:"samaritan dili";s:3:"sam";s:22:"samaritanski aramejski";s:3:"sam";s:11:"samarština";s:3:"sam";s:11:"samaritansk";s:3:"sam";s:13:"samaritanisch";s:3:"sam";s:17:"samaritan aramaic";s:3:"sam";s:15:"samaaria aramea";s:3:"sam";s:14:"samarianaramea";s:3:"sam";s:21:"samaritaansk-arameesk";s:3:"sam";s:22:"samarijanski aramejski";s:3:"sam";s:20:"szamaritánus arámi";s:3:"sam";s:19:"samversk arameíska";s:3:"sam";s:13:"samaritanesch";s:3:"sam";s:18:"samarėjų aramių";s:3:"sam";s:20:"samārijas aramiešu";s:3:"sam";s:8:"samritan";s:3:"sam";s:20:"samaritansk arameisk";s:3:"sam";s:13:"samaritaansch";s:3:"sam";s:19:"samaritaans-aramees";s:3:"sam";s:23:"samarytański aramejski";s:3:"sam";s:25:"samaritánska aramejčina";s:3:"sam";s:26:"samaritanska aramejščina";s:3:"sam";s:12:"samaritanska";s:3:"sam";s:17:"samarit aramcası";s:3:"sam";s:5:"sasak";s:3:"sas";s:10:"sasak dili";s:3:"sas";s:11:"sasakština";s:3:"sas";s:7:"sasaceg";s:3:"sas";s:6:"sasaki";s:3:"sas";s:6:"sasaku";s:3:"sas";s:5:"saska";s:3:"sas";s:10:"sasačtina";s:3:"sas";s:11:"sasaščina";s:3:"sas";s:11:"selkup dili";s:3:"sel";s:6:"selkap";s:3:"sel";s:6:"selkup";s:3:"sel";s:12:"selkupština";s:3:"sel";s:8:"selcypeg";s:3:"sel";s:9:"selkupisk";s:3:"sel";s:10:"selkupisch";s:3:"sel";s:8:"sölkupi";s:3:"sel";s:8:"selkuppi";s:3:"sel";s:8:"selkoupe";s:3:"sel";s:9:"selkupski";s:3:"sel";s:8:"szölkup";s:3:"sel";s:7:"selkúp";s:3:"sel";s:10:"selkupesch";s:3:"sel";s:7:"selkupu";s:3:"sel";s:9:"selkupsch";s:3:"sel";s:8:"selkoeps";s:3:"sel";s:13:"selkupagiella";s:3:"sel";s:11:"selkupčina";s:3:"sel";s:13:"selkupščina";s:3:"sel";s:10:"staroirski";s:3:"sga";s:13:"sean-ghaeilge";s:3:"sga";s:14:"seann-ghaeilge";s:3:"sga";s:13:"senoji airių";s:3:"sga";s:7:"senīru";s:3:"sga";s:14:"staroirlandzki";s:3:"sga";s:15:"stará írčina";s:3:"sga";s:15:"stara irščina";s:3:"sga";s:4:"shan";s:3:"shn";s:13:"schan-sprache";s:3:"shn";s:15:"schan-schpraach";s:3:"shn";s:3:"san";s:3:"shn";s:4:"sjan";s:3:"shn";s:13:"schan-sprooch";s:3:"shn";s:5:"schan";s:3:"shn";s:9:"shan dili";s:3:"shn";s:7:"soninke";s:3:"snk";s:12:"soninke dili";s:3:"snk";s:11:"sonikština";s:3:"snk";s:8:"soninceg";s:3:"snk";s:15:"soninke-sprache";s:3:"snk";s:8:"soninké";s:3:"snk";s:17:"soninke-schpraach";s:3:"snk";s:8:"szoninke";s:3:"snk";s:8:"sóninke";s:3:"snk";s:15:"soninke-sprooch";s:3:"snk";s:7:"soninku";s:3:"snk";s:9:"soninquê";s:3:"snk";s:13:"soqdiyen dili";s:3:"sog";s:7:"sogdieg";s:3:"sog";s:12:"sodžijenski";s:3:"sog";s:7:"sogdià";s:3:"sog";s:10:"sogdština";s:3:"sog";s:6:"sogdeg";s:3:"sog";s:9:"sogdiansk";s:3:"sog";s:8:"sogdisch";s:3:"sog";s:7:"sogdien";s:3:"sog";s:8:"sogdiano";s:3:"sog";s:5:"sogdi";s:3:"sog";s:7:"sogdysk";s:3:"sog";s:10:"sogdánais";s:3:"sog";s:8:"sogdíen";s:3:"sog";s:8:"sogdesch";s:3:"sog";s:9:"sogdiešu";s:3:"sog";s:7:"sogdisk";s:3:"sog";s:9:"sogdyjski";s:3:"sog";s:7:"sogdian";s:3:"sog";s:11:"sogdijčina";s:3:"sog";s:8:"sogdiska";s:3:"sog";s:13:"sogdiana dili";s:3:"sog";s:5:"serer";s:3:"srr";s:11:"serer dilii";s:3:"srr";s:11:"sererština";s:3:"srr";s:13:"serer-sprache";s:3:"srr";s:6:"sereri";s:3:"srr";s:8:"sérère";s:3:"srr";s:15:"serer-schpraach";s:3:"srr";s:6:"szerer";s:3:"srr";s:13:"serer-sprooch";s:3:"srr";s:7:"sererų";s:3:"srr";s:7:"serēru";s:3:"srr";s:6:"serere";s:3:"srr";s:12:"sererščina";s:3:"srr";s:6:"sukuma";s:3:"suk";s:11:"sukuma dili";s:3:"suk";s:6:"swcwma";s:3:"suk";s:14:"sukuma-sprache";s:3:"suk";s:16:"sukuma-schpraach";s:3:"suk";s:7:"szukuma";s:3:"suk";s:8:"súkúma";s:3:"suk";s:14:"sukuma-sprooch";s:3:"suk";s:6:"sukumu";s:3:"suk";s:4:"susu";s:3:"sus";s:9:"susu dili";s:3:"sus";s:5:"susú";s:3:"sus";s:7:"swsŵeg";s:3:"sus";s:7:"soussou";s:3:"sus";s:6:"soesoe";s:3:"sus";s:6:"szuszu";s:3:"sus";s:6:"súsú";s:3:"sus";s:5:"sosso";s:3:"sus";s:12:"susujščina";s:3:"sus";s:7:"sumeriu";s:3:"sux";s:13:"sumeryan dili";s:3:"sux";s:7:"sumereg";s:3:"sux";s:8:"sumerski";s:3:"sux";s:6:"sumeri";s:3:"sux";s:11:"sumerština";s:3:"sux";s:7:"swmereg";s:3:"sux";s:8:"sumerisk";s:3:"sux";s:9:"sumerisch";s:3:"sux";s:8:"sumerian";s:3:"sux";s:7:"sumerio";s:3:"sux";s:9:"sumérien";s:3:"sux";s:7:"sumeric";s:3:"sux";s:9:"soemerysk";s:3:"sux";s:10:"suiméiris";s:3:"sux";s:6:"sumér";s:3:"sux";s:7:"sumeria";s:3:"sux";s:9:"súmerska";s:3:"sux";s:6:"sumero";s:3:"sux";s:9:"sumeresch";s:3:"sux";s:8:"sumerjan";s:3:"sux";s:8:"sumersch";s:3:"sux";s:10:"soemerisch";s:3:"sux";s:10:"sumeryjski";s:3:"sux";s:8:"sumério";s:3:"sux";s:10:"sumeriană";s:3:"sux";s:10:"sumerčina";s:3:"sux";s:12:"sumerščina";s:3:"sux";s:9:"sumeriska";s:3:"sux";s:8:"sümerce";s:3:"sux";s:16:"siriacu clásicu";s:3:"syc";s:13:"sirieg klasel";s:3:"syc";s:16:"siríac clàssic";s:3:"syc";s:21:"syrština (klasická)";s:3:"syc";s:17:"siríaco clásico";s:3:"syc";s:18:"syriaque classique";s:3:"syc";s:23:"suraidheac chlasaigeach";s:3:"syc";s:13:"suriah klasik";s:3:"syc";s:16:"siriaco classico";s:3:"syc";s:8:"syriacki";s:3:"syc";s:18:"siríaco clássico";s:3:"syc";s:13:"siric classic";s:3:"syc";s:17:"siriacă clasică";s:3:"syc";s:7:"siriacu";s:3:"syr";s:11:"siryak dili";s:3:"syr";s:6:"sirieg";s:3:"syr";s:8:"sirijski";s:3:"syr";s:7:"siríac";s:3:"syr";s:9:"syrština";s:3:"syr";s:6:"syrieg";s:3:"syr";s:6:"syrisk";s:3:"syr";s:7:"syrisch";s:3:"syr";s:6:"syriac";s:3:"syr";s:7:"siriaco";s:3:"syr";s:8:"süüria";s:3:"syr";s:6:"syyria";s:3:"syr";s:8:"syriaque";s:3:"syr";s:6:"syrysk";s:3:"syr";s:7:"siricis";s:3:"syr";s:10:"suraidheac";s:3:"syr";s:8:"szíriai";s:3:"syr";s:6:"suriah";s:3:"syr";s:10:"sýrlenska";s:3:"syr";s:7:"syresch";s:3:"syr";s:5:"sirų";s:3:"syr";s:9:"sīriešu";s:3:"syr";s:6:"sirjan";s:3:"syr";s:7:"syyrsch";s:3:"syr";s:8:"syryjski";s:3:"syr";s:8:"siríaco";s:3:"syr";s:12:"siriaco simi";s:3:"syr";s:5:"siric";s:3:"syr";s:8:"siriacă";s:3:"syr";s:9:"sýrčina";s:3:"syr";s:10:"sirščina";s:3:"syr";s:7:"syriska";s:3:"syr";s:10:"süryanice";s:3:"syr";s:13:"simşyan dili";s:3:"tsi";s:9:"sapoteegi";s:3:"zap";s:8:"sapótek";s:3:"zap";s:8:"sapoteku";s:3:"zap";s:14:"símbols bliss";s:3:"zbl";s:15:"símbolos bliss";s:3:"zbl";s:14:"symboles bliss";s:3:"zbl";s:14:"símbolos blis";s:3:"zbl";s:16:"simbols da bliss";s:3:"zbl";s:15:"simboluri bilss";s:3:"zbl";s:13:"systém bliss";s:3:"zbl";s:6:"senaga";s:3:"zen";s:5:"sunji";s:3:"zun";s:6:"súní";s:3:"zun";s:4:"seki";s:3:"bum";s:19:"spagnoleg mecʼhiko";s:5:"es-mx";s:15:"sbaeneg mecsico";s:5:"es-mx";s:22:"spáinnis mheicsiceach";s:5:"es-mx";s:22:"spàinntis mheagsagach";s:5:"es-mx";s:18:"spanyol (mexikói)";s:5:"es-mx";s:15:"spanyol meksiko";s:5:"es-mx";s:18:"spagnolo messicano";s:5:"es-mx";s:23:"schpahnesch en mäxikoh";s:5:"es-mx";s:15:"sepanyol mexico";s:5:"es-mx";s:15:"spagnol mexican";s:5:"es-mx";s:19:"spaniolă mexicană";s:5:"es-mx";s:20:"spanjishte meksikane";s:5:"es-mx";s:11:"sinaeg xian";s:3:"hsn";s:10:"saurashtra";s:3:"saz";s:17:"saurášterština";s:3:"saz";s:10:"sauraštri";s:3:"saz";s:11:"sauraštrų";s:3:"saz";s:14:"saurasztryjski";s:3:"saz";s:7:"séneca";s:3:"see";s:6:"seneca";s:3:"see";s:7:"szeneka";s:3:"see";s:7:"senecų";s:3:"see";s:6:"seneku";s:3:"see";s:6:"seneka";s:3:"see";s:4:"saho";s:3:"ssy";s:6:"szahó";s:3:"ssy";s:6:"seediq";s:3:"trv";s:18:"semietsche spraken";s:3:"sem";s:14:"semitski jezik";s:3:"sem";s:13:"selajarština";s:3:"sly";s:7:"selayar";s:3:"sly";s:9:"selajarų";s:3:"sly";s:3:"sly";s:3:"sly";s:7:"sahurca";s:3:"tkr";s:6:"salish";s:3:"sal";s:17:"sališanski jezik";s:3:"sal";s:13:"sioux-spraken";s:3:"sio";s:14:"siuanski jezik";s:3:"sio";s:22:"sinotibeetsche spraken";s:3:"sit";s:21:"sino-tibetanski jezik";s:3:"sit";s:17:"slaavsche spraken";s:3:"sla";s:15:"slovenski jezik";s:3:"sla";s:10:"sami jezik";s:3:"smi";s:7:"songhai";s:3:"son";s:6:"songai";s:3:"son";s:7:"sorbsch";s:3:"wen";s:17:"sorbijanski jezik";s:3:"wen";}i:649;a:17:{s:30:"แอฟริกานส์";s:2:"af";s:12:"แฟโร";s:2:"fo";s:9:"แลซ";s:3:"lzz";s:12:"ሩንዲኛ";s:2:"rn";s:15:"แซงโก";s:2:"sg";s:27:"แอลเบเนีย";s:2:"sq";s:15:"แลนจี";s:3:"lag";s:21:"แซมบูรู";s:3:"saq";s:15:"แซงกู";s:3:"sbp";s:27:"แอฟริฮีลี";s:3:"afh";s:18:"แอตแซม";s:3:"cch";s:24:"แกรเลียน";s:3:"krl";s:15:"แลมบา";s:3:"lam";s:15:"แมนจู";s:3:"mnc";s:18:"แยงเบน";s:3:"yav";s:24:"แอละแบมา";s:3:"akz";s:24:"แซคเซอร์";s:3:"tkr";}i:200;a:99:{s:14:"Èdè afrikani";s:2:"af";s:11:"Èdè akani";s:2:"ak";s:13:"Èdè amariki";s:2:"am";s:13:"Èdè arabiki";s:2:"ar";s:17:"Èdè azerbaijani";s:2:"az";s:14:"Èdè belarusi";s:2:"be";s:13:"Èdè bugaria";s:2:"bg";s:13:"Èdè bengali";s:2:"bn";s:13:"Èdè bretoni";s:2:"br";s:12:"Èdè bosnia";s:2:"bs";s:12:"Èdè catala";s:2:"ca";s:11:"Èdè seeki";s:2:"cs";s:12:"Èdè welshi";s:2:"cy";s:21:"Èdè ilẹ̀ denmark";s:2:"da";s:20:"Èdè ilẹ̀ gemani";s:2:"de";s:22:"저지 소르비아어";s:3:"dsb";s:12:"Èdè giriki";s:2:"el";s:20:"Èdè gẹ̀ẹ́sì";s:2:"en";s:15:"Èdè esperanto";s:2:"eo";s:14:"Èdè sipanisi";s:2:"es";s:13:"Èdè estonia";s:2:"et";s:11:"Èdè baski";s:2:"eu";s:11:"Èdè pasia";s:2:"fa";s:12:"Èdè finisi";s:2:"fi";s:13:"Èdè faroesi";s:2:"fo";s:14:"Èdè faransé";s:2:"fr";s:12:"Èdè frisia";s:2:"fy";s:13:"Èdè ireland";s:2:"ga";s:28:"Èdè gaelik ti ilu scotland";s:2:"gd";s:13:"Èdè galicia";s:2:"gl";s:13:"Èdè guarani";s:2:"gn";s:14:"Èdè gujarati";s:2:"gu";s:11:"Èdè hausa";s:2:"ha";s:12:"Èdè heberu";s:2:"he";s:11:"Èdè hindi";s:2:"hi";s:13:"Èdè kroatia";s:2:"hr";s:14:"Èdè hungaria";s:2:"hu";s:17:"Èdè ile armenia";s:2:"hy";s:10:"Èdè pipo";s:2:"ia";s:15:"Èdè indonasia";s:2:"id";s:9:"Èdè ibo";s:2:"ig";s:15:"Èdè icelandic";s:2:"is";s:14:"Èdè italiani";s:2:"it";s:14:"Èdè japanisi";s:2:"ja";s:14:"Èdè javanasi";s:2:"jv";s:13:"Èdè georgia";s:2:"ka";s:12:"Èdè kameri";s:2:"km";s:13:"Èdè kannada";s:2:"kn";s:11:"Èdè koria";s:2:"ko";s:12:"Èdè latini";s:2:"la";s:15:"Èdè lithuania";s:2:"lt";s:14:"Èdè latvianu";s:2:"lv";s:15:"Èdè macedonia";s:2:"mk";s:13:"Èdè marathi";s:2:"mr";s:12:"Èdè malaya";s:2:"ms";s:11:"Èdè malta";s:2:"mt";s:13:"Èdè bumiisi";s:2:"my";s:16:"저지 독일어";s:3:"nds";s:12:"Èdè nepali";s:2:"ne";s:10:"Èdè duki";s:2:"nl";s:12:"Èdè norway";s:2:"no";s:14:"Èdè occitani";s:2:"oc";s:13:"Èdè punjabi";s:2:"pa";s:21:"Èdè ilẹ̀ polandi";s:2:"pl";s:14:"Èdè pọtugi";s:2:"pt";s:13:"Èdè romania";s:2:"ro";s:18:"Èdè ̣rọọsia";s:2:"ru";s:13:"Èdè ruwanda";s:2:"rw";s:19:"Èdè awon ara indo";s:2:"sa";s:12:"Èdè sindhi";s:2:"sd";s:21:"Èdè serbo-croatiani";s:2:"sh";s:15:"Èdè sinhalese";s:2:"si";s:13:"Èdè slovaki";s:2:"sk";s:14:"Èdè slovenia";s:2:"sl";s:17:"Èdè ara somalia";s:2:"so";s:13:"Èdè albania";s:2:"sq";s:12:"Èdè serbia";s:2:"sr";s:12:"Èdè sesoto";s:2:"st";s:12:"Èdè sudani";s:2:"su";s:15:"Èdè suwidiisi";s:2:"sv";s:13:"Èdè swahili";s:2:"sw";s:12:"Èdè tamili";s:2:"ta";s:12:"Èdè telugu";s:2:"te";s:9:"Èdè tai";s:2:"th";s:14:"Èdè tigrinya";s:2:"ti";s:13:"Èdè turkmen";s:2:"tk";s:17:"Èdè tọọkisi";s:2:"tr";s:12:"Èdè ukania";s:2:"uk";s:9:"Èdè udu";s:2:"ur";s:11:"Èdè uzbek";s:2:"uz";s:14:"Èdè jetinamu";s:2:"vi";s:11:"Èdè xhosa";s:2:"xh";s:14:"Èdè yiddishi";s:2:"yi";s:14:"Èdè yorùbá";s:2:"yo";s:13:"Èdè mandari";s:2:"zh";s:12:"Èdè Ṣulu";s:2:"zu";s:19:"Èipheitis Àrsaidh";s:3:"egy";s:14:"Èdè tagalogi";s:3:"fil";s:14:"Èdè klingoni";s:3:"tlh";}i:335;a:49:{s:15:"南非荷兰文";s:2:"af";s:15:"南非荷蘭文";s:2:"af";s:33:"南部アゼルバイジャン語";s:3:"azb";s:18:"南亞塞拜然文";s:3:"azb";s:24:"南部バローチー語";s:3:"bcc";s:9:"ഇവ്";s:2:"ee";s:24:"ഇംഗ്ലീഷ്";s:2:"en";s:39:"ഇന്റർലിൻ‌ഗ്വാ";s:2:"ia";s:30:"ഇൻഡോനേഷ്യൻ";s:2:"id";s:33:"ഇന്റർലിംഗ്വ";s:2:"ie";s:15:"ഇഗ്ബോ";s:2:"ig";s:27:"ഇനുപിയാക്";s:2:"ik";s:15:"ഇലോകോ";s:3:"ilo";s:24:"ഇംഗ്വിഷ്";s:3:"inh";s:9:"ഇഡോ";s:2:"io";s:27:"ഇറ്റാലിയൻ";s:2:"it";s:48:"ഇനുക്റ്റിറ്റട്ട്";s:2:"iu";s:27:"टाचेल्हिट";s:3:"shi";s:15:"南サーミ語";s:3:"sma";s:12:"南萨米文";s:3:"sma";s:12:"南薩米文";s:3:"sma";s:15:"南部ソト語";s:2:"st";s:12:"南索托文";s:2:"st";s:21:"टर्कमेन";s:2:"tk";s:21:"टागालोग";s:2:"tl";s:15:"टोंगन";s:2:"to";s:18:"टोङ्गन";s:2:"to";s:25:"टोक पिसिन";s:3:"tpi";s:18:"टर्किश";s:2:"tr";s:12:"ट्वी";s:2:"tw";s:24:"टुवीनियन";s:3:"tyv";s:12:"ഇൻകോ";s:3:"nqo";s:18:"南ンデベレ語";s:2:"nr";s:18:"南恩德贝勒文";s:2:"nr";s:15:"南地畢列文";s:2:"nr";s:28:"ഇനാരി സാമി";s:3:"smn";s:12:"टेसो";s:3:"teo";s:18:"टासवाक";s:3:"twq";s:21:"टाइग्रे";s:3:"tig";s:18:"南アルタイ語";s:3:"alt";s:15:"南阿尔泰文";s:3:"alt";s:15:"南阿爾泰文";s:3:"alt";s:12:"ഇബാൻ";s:3:"iba";s:15:"路易塞诺文";s:3:"lui";s:15:"路易塞諾文";s:3:"lui";s:18:"टिम्ने";s:3:"tem";s:21:"टोकेलाऊ";s:3:"tkl";s:18:"टुवालु";s:3:"tvl";s:21:"ഇബീബിയോ";s:3:"ibb";}i:98;a:873:{s:6:"blugbe";s:2:"ak";s:22:"boares eaŋgalasgiella";s:3:"ang";s:6:"baskir";s:2:"ba";s:7:"bashkir";s:2:"ba";s:9:"başqırd";s:2:"ba";s:7:"bachkir";s:2:"ba";s:10:"baškirski";s:2:"ba";s:7:"baixkir";s:2:"ba";s:13:"baškirština";s:2:"ba";s:10:"bashcorteg";s:2:"ba";s:12:"baschkirisch";s:2:"ba";s:14:"baškiršćina";s:2:"ba";s:9:"bashkigbe";s:2:"ba";s:8:"baŝkira";s:2:"ba";s:9:"baškiiri";s:2:"ba";s:11:"bashkirrera";s:2:"ba";s:10:"basjkiersk";s:2:"ba";s:10:"baiscíris";s:2:"ba";s:7:"baskír";s:2:"ba";s:8:"baschiro";s:2:"ba";s:13:"baschkihresch";s:2:"ba";s:12:"baschkiresch";s:2:"ba";s:9:"baškirų";s:2:"ba";s:9:"baškīru";s:2:"ba";s:6:"baxkir";s:2:"ba";s:9:"basjkirsk";s:2:"ba";s:12:"baschkiersch";s:2:"ba";s:9:"basjkiers";s:2:"ba";s:10:"baszkirski";s:2:"ba";s:11:"baskir simi";s:2:"ba";s:8:"baschkir";s:2:"ba";s:9:"bașkiră";s:2:"ba";s:7:"baškir";s:2:"ba";s:12:"baškirčina";s:2:"ba";s:14:"baškirščina";s:2:"ba";s:11:"bashkirisht";s:2:"ba";s:11:"basjkiriska";s:2:"ba";s:12:"başkırtça";s:2:"ba";s:10:"boshqircha";s:2:"ba";s:8:"boarisch";s:3:"bar";s:7:"bávaru";s:3:"bar";s:8:"bavarieg";s:3:"bar";s:11:"bavorština";s:3:"bar";s:8:"bairisch";s:3:"bar";s:8:"bavarian";s:3:"bar";s:7:"baijeri";s:3:"bar";s:8:"bavarois";s:3:"bar";s:9:"baváiris";s:3:"bar";s:7:"bavaria";s:3:"bar";s:8:"bavarese";s:3:"bar";s:8:"bairesch";s:3:"bar";s:7:"bavarų";s:3:"bar";s:6:"beiers";s:3:"bar";s:8:"bawarski";s:3:"bar";s:8:"bayerska";s:3:"bar";s:12:"bavyera dili";s:3:"bar";s:10:"batak toba";s:8:"bbc-latn";s:10:"batak-toba";s:3:"bbc";s:13:"bikol central";s:3:"bcl";s:12:"belarus kasa";s:2:"be";s:10:"bielorrusu";s:2:"be";s:7:"belarus";s:2:"be";s:13:"biyelorisikan";s:2:"be";s:9:"belaruseg";s:2:"be";s:10:"bjeloruski";s:2:"be";s:9:"bielorús";s:2:"be";s:13:"běloruština";s:2:"be";s:9:"belarwseg";s:2:"be";s:15:"běłorušćina";s:2:"be";s:12:"belarusiagbe";s:2:"be";s:10:"belarusian";s:2:"be";s:8:"belorusa";s:2:"be";s:10:"bielorruso";s:2:"be";s:13:"bielorrusiera";s:2:"be";s:9:"belaruuse";s:2:"be";s:11:"biélorusse";s:2:"be";s:9:"bielorùs";s:2:"be";s:12:"bealarúisis";s:2:"be";s:11:"bealaruisis";s:2:"be";s:11:"belarusanci";s:2:"be";s:8:"belorusz";s:2:"be";s:10:"bielorusso";s:2:"be";s:9:"belarusia";s:2:"be";s:9:"belaruusu";s:2:"be";s:11:"baltarusių";s:2:"be";s:10:"baltkrievu";s:2:"be";s:9:"bielorosy";s:2:"be";s:9:"belarussu";s:2:"be";s:11:"białoruski";s:2:"be";s:11:"bielorrusso";s:2:"be";s:15:"bielorruso simi";s:2:"be";s:9:"bieloruss";s:2:"be";s:10:"bielorusă";s:2:"be";s:11:"bielörûsi";s:2:"be";s:9:"beloruski";s:2:"be";s:13:"bieloruština";s:2:"be";s:13:"beloruščina";s:2:"be";s:13:"beleruusiyaan";s:2:"be";s:13:"bjellorusisht";s:2:"be";s:12:"beyaz rusça";s:2:"be";s:10:"belaruscha";s:2:"be";s:38:"belarusian (taraškievica orthography)";s:9:"be-tarask";s:8:"bulgaars";s:2:"bg";s:14:"bɔlgeria kasa";s:2:"bg";s:8:"búlgaru";s:2:"bg";s:6:"bolqar";s:2:"bg";s:11:"buligarikan";s:2:"bg";s:8:"bulgareg";s:2:"bg";s:8:"bugarski";s:2:"bg";s:7:"búlgar";s:2:"bg";s:12:"bulharština";s:2:"bg";s:8:"bwlgareg";s:2:"bg";s:8:"bulgarsk";s:2:"bg";s:10:"bulgarisch";s:2:"bg";s:13:"bulgaršćina";s:2:"bg";s:11:"bulgariagbe";s:2:"bg";s:9:"bulgarian";s:2:"bg";s:7:"bulgara";s:2:"bg";s:8:"búlgaro";s:2:"bg";s:9:"bulgaaria";s:2:"bg";s:10:"bulgariera";s:2:"bg";s:10:"bulgariire";s:2:"bg";s:8:"bulgaria";s:2:"bg";s:9:"bulgarskt";s:2:"bg";s:7:"bulgare";s:2:"bg";s:6:"bulgar";s:2:"bg";s:9:"bulgaarsk";s:2:"bg";s:10:"bulgáiris";s:2:"bg";s:9:"bulgarais";s:2:"bg";s:11:"bulgaarisch";s:2:"bg";s:10:"bulgaranci";s:2:"bg";s:14:"bołharšćina";s:2:"bg";s:7:"bolgár";s:2:"bg";s:7:"bulgaro";s:2:"bg";s:15:"bọlụgarịa";s:2:"bg";s:10:"búlgarska";s:2:"bg";s:12:"bulljaaresch";s:2:"bg";s:10:"bulgaresch";s:2:"bg";s:8:"bulgarų";s:2:"bg";s:8:"bulgāru";s:2:"bg";s:8:"biolgara";s:2:"bg";s:7:"bulgaru";s:2:"bg";s:10:"bulgaarsch";s:2:"bg";s:10:"bułgarski";s:2:"bg";s:12:"bulgaro simi";s:2:"bg";s:8:"bulgară";s:2:"bg";s:15:"bulgáriagiella";s:2:"bg";s:9:"bulugäri";s:2:"bg";s:11:"bulharčina";s:2:"bg";s:13:"bolgarščina";s:2:"bg";s:12:"bulgeeriyaan";s:2:"bg";s:11:"bullgarisht";s:2:"bg";s:10:"bulgariska";s:2:"bg";s:8:"bulgarca";s:2:"bg";s:9:"bolgarcha";s:2:"bg";s:9:"bihaarsch";s:2:"bh";s:8:"biharski";s:2:"bh";s:8:"bhojpuri";s:3:"bho";s:14:"bxoçpuri dili";s:3:"bho";s:7:"bojpuri";s:3:"bho";s:13:"bhojpurština";s:3:"bho";s:11:"bhodschpuri";s:3:"bho";s:10:"bhodžpuri";s:3:"bho";s:9:"bodzspuri";s:3:"bho";s:9:"bojpúrí";s:3:"bho";s:9:"baučpuri";s:3:"bho";s:11:"bhodžpūru";s:3:"bho";s:10:"bhodźpuri";s:3:"bho";s:15:"bhódžpurčina";s:3:"bho";s:9:"bodžpuri";s:3:"bho";s:7:"bislama";s:2:"bi";s:12:"bislama dili";s:2:"bi";s:12:"bislamština";s:2:"bi";s:13:"bislamšćina";s:2:"bi";s:10:"bislamagbe";s:2:"bi";s:7:"bislamo";s:2:"bi";s:10:"bichelamar";s:2:"bi";s:10:"bioslaimis";s:2:"bi";s:8:"bíslama";s:2:"bi";s:9:"bišlamā";s:2:"bi";s:8:"bislamá";s:2:"bi";s:13:"bislamščina";s:2:"bi";s:13:"bahasa banjar";s:3:"bjn";s:6:"banjar";s:3:"bjn";s:14:"bandžarština";s:3:"bjn";s:12:"banjaresisch";s:3:"bjn";s:12:"banjaresesch";s:3:"bjn";s:10:"bandžarų";s:3:"bjn";s:10:"banjariska";s:3:"bjn";s:11:"banjar dili";s:3:"bjn";s:10:"bamanankan";s:2:"bm";s:7:"bambara";s:2:"bm";s:9:"bamanakan";s:2:"bm";s:12:"bambarština";s:2:"bm";s:8:"bambareg";s:2:"bm";s:15:"bambara-sprache";s:2:"bm";s:10:"bambaragbe";s:2:"bm";s:9:"bambarera";s:2:"bm";s:15:"bambara-sprooch";s:2:"bm";s:8:"bambarų";s:2:"bm";s:7:"bambaru";s:2:"bm";s:11:"bambarčina";s:2:"bm";s:13:"bambarščina";s:2:"bm";s:9:"bambarcha";s:2:"bm";s:8:"bengaals";s:2:"bn";s:12:"bengali kasa";s:2:"bn";s:9:"bengalín";s:2:"bn";s:6:"benqal";s:2:"bn";s:11:"bɛngalikan";s:2:"bn";s:7:"bengali";s:2:"bn";s:9:"bengalski";s:2:"bn";s:8:"bengalí";s:2:"bn";s:13:"bengálština";s:2:"bn";s:8:"bengaleg";s:2:"bn";s:10:"bengalisch";s:2:"bn";s:13:"bengalšćina";s:2:"bn";s:9:"bengalgbe";s:2:"bn";s:7:"bengala";s:2:"bn";s:9:"bengalera";s:2:"bn";s:10:"bengaliskt";s:2:"bn";s:9:"bengalês";s:2:"bn";s:9:"bengaalsk";s:2:"bn";s:11:"beangáilis";s:2:"bn";s:10:"beangailis";s:2:"bn";s:8:"bengáli";s:2:"bn";s:9:"bengalska";s:2:"bn";s:9:"bengalese";s:2:"bn";s:13:"bengalimiutut";s:2:"bn";s:13:"bängjaalesch";s:2:"bn";s:10:"bengalesch";s:2:"bn";s:8:"bengalų";s:2:"bn";s:9:"bengāļu";s:2:"bn";s:8:"benggala";s:2:"bn";s:10:"bengaalsch";s:2:"bn";s:11:"bangla simi";s:2:"bn";s:6:"bengal";s:2:"bn";s:10:"bengaleză";s:2:"bn";s:12:"bengalgiella";s:2:"bn";s:8:"bengäli";s:2:"bn";s:12:"bengálčina";s:2:"bn";s:13:"bengalščina";s:2:"bn";s:8:"bangaali";s:2:"bn";s:10:"bengalisht";s:2:"bn";s:8:"bengalce";s:2:"bn";s:9:"bengalcha";s:2:"bn";s:11:"bishnupriya";s:3:"bpy";s:26:"bišnuprijskomanipurština";s:3:"bpy";s:21:"bishnupuriya manipuri";s:3:"bpy";s:10:"bišnupria";s:3:"bpy";s:18:"bischnuprejahnesch";s:3:"bpy";s:12:"bišnuprijos";s:3:"bpy";s:20:"bisznuprija-manipuri";s:3:"bpy";s:9:"bakhtiari";s:3:"bqi";s:16:"bachtijárština";s:3:"bqi";s:12:"bachtiarisch";s:3:"bqi";s:8:"bahtiari";s:3:"bqi";s:12:"bachtiaresch";s:3:"bqi";s:11:"bachtiarski";s:3:"bqi";s:9:"bahtiyari";s:3:"bqi";s:9:"brezhoneg";s:2:"br";s:7:"bretons";s:2:"br";s:7:"bretón";s:2:"br";s:8:"bretonca";s:2:"br";s:9:"bretonski";s:2:"br";s:6:"bretó";s:2:"br";s:12:"bretonština";s:2:"br";s:8:"bretonsk";s:2:"br";s:10:"bretonisch";s:2:"br";s:13:"bretonšćina";s:2:"br";s:9:"bretongbe";s:2:"br";s:6:"breton";s:2:"br";s:7:"bretona";s:2:"br";s:8:"bretooni";s:2:"br";s:9:"bretoiera";s:2:"br";s:7:"bretoni";s:2:"br";s:9:"bretonskt";s:2:"br";s:11:"briotáinis";s:2:"br";s:9:"breatnais";s:2:"cy";s:12:"brötoonisch";s:2:"br";s:11:"buretananci";s:2:"br";s:10:"bretónska";s:2:"br";s:7:"bretone";s:2:"br";s:11:"bettohnesch";s:2:"br";s:10:"bretonesch";s:2:"br";s:8:"bretonų";s:2:"br";s:8:"bretoņu";s:2:"br";s:7:"brenton";s:2:"br";s:10:"bretoonsch";s:2:"br";s:10:"bretoński";s:2:"br";s:7:"bretão";s:2:"br";s:11:"breton simi";s:2:"br";s:8:"bretonă";s:2:"br";s:13:"bretonagiella";s:2:"br";s:12:"bretónčina";s:2:"br";s:13:"bretonščina";s:2:"br";s:7:"bereton";s:2:"br";s:9:"bretonska";s:2:"br";s:9:"bretoncha";s:2:"br";s:8:"bráhuí";s:3:"brh";s:6:"brahui";s:3:"brh";s:7:"brahweg";s:3:"brh";s:12:"brahujština";s:3:"brh";s:7:"brahoui";s:3:"brh";s:11:"brahuijesch";s:3:"brh";s:8:"brahujų";s:3:"brh";s:9:"brahuiska";s:3:"brh";s:7:"brohice";s:3:"brh";s:8:"bosanski";s:2:"bs";s:7:"bosnies";s:2:"bs";s:6:"bosniu";s:2:"bs";s:7:"bosniak";s:2:"bs";s:6:"bosneg";s:2:"bs";s:7:"bosnià";s:2:"bs";s:11:"bosenština";s:2:"bs";s:7:"bosnieg";s:2:"bs";s:7:"bosnisk";s:2:"bs";s:8:"bosnisch";s:2:"bs";s:12:"bosnišćina";s:2:"bs";s:9:"bosniagbe";s:2:"bs";s:7:"bosnian";s:2:"bs";s:6:"bosnia";s:2:"bs";s:6:"bosnio";s:2:"bs";s:8:"bosniera";s:2:"bs";s:8:"bosniskt";s:2:"bs";s:9:"bosniaque";s:2:"bs";s:7:"bosniac";s:2:"bs";s:7:"bosnysk";s:2:"bs";s:7:"boisnis";s:2:"bs";s:7:"bosnais";s:2:"bs";s:10:"bosniyanci";s:2:"bs";s:8:"bosnyák";s:2:"bs";s:8:"bosniaco";s:2:"bs";s:9:"bosníska";s:2:"bs";s:9:"boßnesch";s:2:"bs";s:8:"bosnesch";s:2:"bs";s:7:"bosnių";s:2:"bs";s:9:"bosniešu";s:2:"bs";s:8:"bosnijan";s:2:"bs";s:10:"bośniacki";s:2:"bs";s:7:"bósnio";s:2:"bs";s:11:"bosnio simi";s:2:"bs";s:9:"bosniacă";s:2:"bs";s:12:"bosniagiella";s:2:"bs";s:12:"bosniačtina";s:2:"bs";s:12:"bosanščina";s:2:"bs";s:8:"boosniya";s:2:"bs";s:12:"boshnjakisht";s:2:"bs";s:8:"bosniska";s:2:"bs";s:10:"boşnakça";s:2:"bs";s:9:"bosniycha";s:2:"bs";s:8:"buginés";s:3:"bug";s:10:"bugin dili";s:3:"bug";s:4:"bugi";s:3:"bug";s:14:"buginežanskii";s:3:"bug";s:5:"bugui";s:3:"bug";s:10:"bugiština";s:3:"bug";s:10:"buginesisk";s:3:"bug";s:11:"buginesisch";s:3:"bug";s:11:"bugišćina";s:3:"bug";s:8:"buginese";s:3:"bug";s:9:"bugineesk";s:3:"bug";s:8:"buiginis";s:3:"bug";s:12:"bugineesisch";s:3:"bug";s:8:"buginski";s:3:"bug";s:15:"buginezišćina";s:3:"bug";s:8:"buginéz";s:3:"bug";s:5:"bugis";s:3:"bug";s:9:"búgíska";s:3:"bug";s:12:"bujinehsesch";s:3:"bug";s:11:"buginesesch";s:3:"bug";s:9:"buginezų";s:3:"bug";s:4:"bugu";s:3:"bug";s:8:"buginiż";s:3:"bug";s:10:"bugineesch";s:3:"bug";s:8:"buginees";s:3:"bug";s:9:"bugiński";s:3:"bug";s:9:"buguinês";s:3:"bug";s:9:"bugineză";s:3:"bug";s:12:"buginščina";s:3:"bug";s:11:"buginesiska";s:3:"bug";s:18:"చెచెన్";s:2:"ce";s:18:"చమర్రో";s:2:"ch";s:27:"చొచ్కతావ్";s:3:"cho";s:18:"చెరోకీ";s:3:"chr";s:18:"చేయేన్";s:3:"chy";s:12:"చెక్";s:2:"cs";s:22:"bahasa gereja slavonia";s:2:"cu";s:18:"bažnytinė slavų";s:2:"cu";s:13:"baznīcslāvu";s:2:"cu";s:37:"చర్చ స్లావిక్";s:2:"cu";s:18:"చువాష్";s:2:"cv";s:18:"ဂျာမန်";s:2:"de";s:11:"baxu sorbiu";s:3:"dsb";s:11:"baix sòrab";s:3:"dsb";s:14:"behe-sorabiera";s:3:"dsb";s:10:"bas-sorabe";s:3:"dsb";s:13:"baixo sorabio";s:3:"dsb";s:12:"basso sorabo";s:3:"dsb";s:14:"baixo sórabio";s:3:"dsb";s:16:"bajo sorbio simi";s:3:"dsb";s:9:"bass sorb";s:3:"dsb";s:10:"bhutanisch";s:2:"dz";s:7:"butáni";s:2:"dz";s:10:"butahnesch";s:2:"dz";s:10:"bhutanesch";s:2:"dz";s:7:"botijų";s:2:"dz";s:10:"bhutaansch";s:2:"dz";s:12:"bhutanesiska";s:2:"dz";s:10:"butan dili";s:2:"dz";s:9:"ဂရိ";s:2:"el";s:7:"borɔfo";s:2:"en";s:7:"béarla";s:2:"en";s:6:"beurla";s:2:"en";s:17:"béarla ceanadach";s:5:"en-ca";s:14:"beurla chanada";s:5:"en-ca";s:15:"british english";s:5:"en-gb";s:22:"britaniya ingiliscəsi";s:5:"en-gb";s:18:"britanski engleski";s:5:"en-gb";s:15:"britisk engelsk";s:5:"en-gb";s:19:"britisches englisch";s:5:"en-gb";s:21:"britiska engelšćina";s:5:"en-gb";s:24:"britaintɔwo ƒe yevugbe";s:5:"en-gb";s:11:"brita angla";s:5:"en-gb";s:18:"britannianenglanti";s:5:"en-gb";s:14:"britsk ingelsk";s:5:"en-gb";s:18:"béarla briotanach";s:5:"en-gb";s:17:"beurla bhreatainn";s:5:"en-gb";s:19:"britischs Änglisch";s:5:"en-gb";s:24:"britiska jendźelšćina";s:5:"en-gb";s:10:"brit angol";s:5:"en-gb";s:11:"bresk enska";s:5:"en-gb";s:18:"britescht englesch";s:5:"en-gb";s:17:"brietsch engelsch";s:5:"en-gb";s:12:"brits engels";s:5:"en-gb";s:19:"brytyjski angielski";s:5:"en-gb";s:17:"brittisk engelska";s:5:"en-gb";s:21:"britaniya inglizchasi";s:5:"en-gb";s:7:"baskies";s:2:"eu";s:4:"bask";s:2:"eu";s:9:"baskijski";s:2:"eu";s:4:"basc";s:2:"eu";s:11:"baskičtina";s:2:"eu";s:6:"basgeg";s:2:"eu";s:7:"baskisk";s:2:"eu";s:8:"baskisch";s:2:"eu";s:12:"baskišćina";s:2:"eu";s:8:"basqugbe";s:2:"eu";s:6:"basque";s:2:"eu";s:5:"baski";s:2:"eu";s:8:"baskiskt";s:2:"eu";s:7:"baskysk";s:2:"eu";s:7:"bascais";s:2:"eu";s:7:"basgais";s:2:"eu";s:5:"baszk";s:2:"eu";s:5:"basco";s:2:"eu";s:9:"baskneska";s:2:"eu";s:8:"baskesch";s:2:"eu";s:6:"baskek";s:2:"eu";s:6:"baskų";s:2:"eu";s:5:"basku";s:2:"eu";s:7:"basksch";s:2:"eu";s:6:"bască";s:2:"eu";s:13:"baskovščina";s:2:"eu";s:6:"basquu";s:2:"eu";s:8:"baskisht";s:2:"eu";s:8:"baskiska";s:2:"eu";s:7:"baskça";s:2:"eu";s:7:"baskcha";s:2:"eu";s:14:"batı frizcesi";s:2:"fy";s:18:"ဂါဂါဇ်";s:3:"gag";s:8:"bagalike";s:2:"gl";s:24:"ဂါလာစီယံ";s:2:"gl";s:24:"ဂူအာရာနီ";s:2:"gn";s:24:"ဂူဂျာရသီ";s:2:"gu";s:13:"böversorbsch";s:3:"hsb";s:16:"bahasa indonesia";s:2:"id";s:15:"ဂျပန်";s:2:"ja";s:28:"beurla crìtheolach diameuga";s:3:"jam";s:9:"basa jawa";s:2:"jv";s:33:"ဂျာဗားနီးစ်";s:2:"jv";s:33:"ဂျော်ဂျီယန်";s:2:"ka";s:15:"ဂန်ဒီ";s:2:"lg";s:15:"basa banyumasan";s:7:"map-bms";s:16:"baso minangkabau";s:3:"min";s:8:"bergmari";s:3:"mrj";s:13:"bahasa melayu";s:2:"ms";s:15:"bahasa muskogee";s:3:"mus";s:8:"birmaans";s:2:"my";s:13:"bɛɛmis kasa";s:2:"my";s:7:"birmanu";s:2:"my";s:5:"birma";s:2:"my";s:11:"birimanikan";s:2:"my";s:8:"birmaneg";s:2:"my";s:9:"burmanski";s:2:"my";s:6:"birmà";s:2:"my";s:10:"barmština";s:2:"my";s:8:"byrmaneg";s:2:"my";s:9:"burmesisk";s:2:"my";s:10:"birmanisch";s:2:"my";s:12:"burmašćina";s:2:"my";s:8:"burmagbe";s:2:"my";s:7:"burmese";s:2:"my";s:7:"birmano";s:2:"my";s:10:"burmatarra";s:2:"my";s:8:"burmeese";s:2:"my";s:5:"burma";s:2:"my";s:10:"burmesiskt";s:2:"my";s:6:"birman";s:2:"my";s:7:"birmees";s:2:"my";s:7:"burmais";s:2:"my";s:8:"burmanci";s:2:"my";s:6:"burmai";s:2:"my";s:9:"burmneska";s:2:"my";s:11:"burmessesch";s:2:"my";s:10:"birmanesch";s:2:"my";s:11:"birmiečių";s:2:"my";s:9:"birmiešu";s:2:"my";s:7:"birmana";s:2:"my";s:7:"burmiż";s:2:"my";s:10:"birmaansch";s:2:"my";s:10:"birmański";s:2:"my";s:9:"birmanês";s:2:"my";s:10:"birmaneză";s:2:"my";s:11:"burmagiella";s:2:"my";s:9:"barmčina";s:2:"my";s:13:"burmanščina";s:2:"my";s:10:"birmanisht";s:2:"my";s:10:"burmesiska";s:2:"my";s:7:"burmaca";s:2:"my";s:9:"birmancha";s:2:"my";s:13:"bân-lâm-gú";s:10:"zh-min-nan";s:14:"bokmal norveç";s:2:"nb";s:14:"bokmal noruego";s:2:"nb";s:18:"bokmala (norvegia)";s:2:"nb";s:21:"bokmål na nirribhidh";s:2:"nb";s:16:"bokmål norwegia";s:2:"nb";s:14:"bokmål norway";s:2:"nb";s:19:"bokmahal norveġiż";s:2:"nb";s:7:"bokmål";s:2:"nb";s:18:"bokmål norueguês";s:2:"nb";s:22:"bokmalishte norvegjeze";s:2:"nb";s:12:"baxu alemán";s:3:"nds";s:12:"baix alemany";s:3:"nds";s:12:"bajo alemán";s:3:"nds";s:12:"bas-allemand";s:3:"nds";s:10:"bas todesc";s:3:"nds";s:13:"basso tedesco";s:3:"nds";s:13:"baixo alemão";s:3:"nds";s:13:"baixo-alemão";s:3:"nds";s:12:"bass tudestg";s:3:"nds";s:7:"belanda";s:2:"nl";s:11:"bắc sotho";s:3:"nso";s:8:"bunjaabi";s:2:"pa";s:12:"bas-prussien";s:3:"pdt";s:7:"boolish";s:2:"pl";s:7:"bashtuu";s:2:"ps";s:10:"boortaqiis";s:2:"pt";s:23:"braziliya portuqalcası";s:5:"pt-br";s:23:"brasiliansk portugisisk";s:5:"pt-br";s:29:"brasilianisches portugiesisch";s:5:"pt-br";s:25:"brazilska portugalšćina";s:5:"pt-br";s:27:"braziltɔwo ƒe portugalgbe";s:5:"pt-br";s:20:"brazilian portuguese";s:5:"pt-br";s:15:"brazilportugala";s:5:"pt-br";s:18:"brasilianportugali";s:5:"pt-br";s:22:"brazyljaansk portugees";s:5:"pt-br";s:28:"brasilianischs portugiisisch";s:5:"pt-br";s:21:"brazilski portugalski";s:5:"pt-br";s:20:"brazíliai portugál";s:5:"pt-br";s:24:"brasílísk portúgalska";s:5:"pt-br";s:29:"brasilljaanesch pochtojesesch";s:5:"pt-br";s:27:"brasilianescht portugisesch";s:5:"pt-br";s:21:"brazilijos portugalų";s:5:"pt-br";s:23:"brazīlijas portugāļu";s:5:"pt-br";s:25:"brasiliaansch portugeesch";s:5:"pt-br";s:21:"braziliaans portugees";s:5:"pt-br";s:23:"brazylijski portugalski";s:5:"pt-br";s:25:"brazilska portugalščina";s:5:"pt-br";s:22:"boortaqiiska baraasiil";s:5:"pt-br";s:24:"brasiliansk portugisiska";s:5:"pt-br";s:21:"brezilya portekizcesi";s:5:"pt-br";s:23:"braziliya portugalchasi";s:5:"pt-br";s:7:"burunda";s:2:"rn";s:8:"basulake";s:2:"sk";s:8:"basulabe";s:2:"sl";s:13:"bas-silésien";s:3:"sli";s:10:"basa sunda";s:2:"su";s:12:"benátština";s:3:"vec";s:12:"bhiet-namais";s:2:"vi";s:14:"batı flamanca";s:3:"vls";s:6:"bazosa";s:2:"xh";s:18:"చైనీస్";s:2:"zh";s:25:"basitleştirilmiş Çince";s:7:"zh-hans";s:15:"blema tsainagbe";s:7:"zh-hant";s:5:"bemba";s:3:"bem";s:10:"bembština";s:3:"bem";s:6:"bembeg";s:3:"bem";s:13:"bemba-sprache";s:3:"bem";s:8:"bembagbe";s:3:"bem";s:7:"bembera";s:3:"bem";s:7:"beimbis";s:3:"bem";s:13:"bemba-sprooch";s:3:"bem";s:6:"bembų";s:3:"bem";s:5:"bembu";s:3:"bem";s:8:"bembacha";s:3:"bem";s:4:"bena";s:3:"bez";s:7:"benagbe";s:3:"bez";s:6:"benera";s:3:"bez";s:15:"bena (tanzania)";s:3:"bez";s:5:"béna";s:3:"bez";s:5:"benų";s:3:"bez";s:12:"benajščina";s:3:"bez";s:7:"benacha";s:3:"bez";s:4:"bodo";s:3:"brx";s:10:"bodoština";s:3:"brx";s:7:"bodogbe";s:3:"brx";s:5:"bodoa";s:3:"brx";s:7:"bodoera";s:3:"brx";s:6:"bódó";s:3:"brx";s:5:"boddo";s:3:"brx";s:12:"bodojščina";s:3:"brx";s:3:"brx";s:3:"brx";s:7:"bodocha";s:3:"brx";s:37:"ဂျိုလာ-ဖွန်ရီ";s:3:"dyo";s:15:"ဂူစီး";s:3:"guz";s:18:"ဂွမ်ဘာ";s:3:"jgo";s:5:"bafia";s:3:"ksf";s:6:"baffia";s:3:"ksf";s:8:"bafiagbe";s:3:"ksf";s:7:"bafiera";s:3:"ksf";s:6:"bafía";s:3:"ksf";s:5:"bafų";s:3:"ksf";s:6:"bafiju";s:3:"ksf";s:10:"bafianisht";s:3:"ksf";s:8:"bafiycha";s:3:"ksf";s:15:"beberapa bahasa";s:3:"mul";s:16:"birden fazla dil";s:3:"mul";s:6:"bissio";s:3:"nmg";s:20:"bahasa tidak dikenal";s:3:"und";s:22:"bahasa tidak diketahui";s:3:"und";s:14:"bilinmeyen dil";s:3:"und";s:28:"bez lingvističkog sadržaja";s:3:"zxx";s:23:"bez jezičnog sadržaja";s:3:"zxx";s:23:"bez lingvistiska satura";s:3:"zxx";s:23:"bla kontent lingwistiku";s:3:"zxx";s:37:"brak treści o charakterze językowym";s:3:"zxx";s:22:"bez jazykového obsahu";s:3:"zxx";s:25:"brez jezikoslovne vsebine";s:3:"zxx";s:4:"blin";s:3:"byn";s:8:"bilincə";s:3:"byn";s:5:"bilin";s:3:"byn";s:10:"blinština";s:3:"byn";s:6:"bilini";s:3:"byn";s:5:"blín";s:3:"byn";s:6:"bilinu";s:3:"byn";s:11:"blinščina";s:3:"byn";s:18:"béarla astrálach";s:5:"en-au";s:17:"beurla astràilia";s:5:"en-au";s:21:"béarla meiriceánach";s:5:"en-us";s:22:"beurla na h-aimeireaga";s:5:"en-us";s:16:"bandarísk enska";s:5:"en-us";s:23:"boortaqiis (boortuqaal)";s:5:"pt-pt";s:7:"baluchi";s:3:"bal";s:10:"baluc dili";s:3:"bal";s:9:"baloutchi";s:3:"bal";s:7:"baluči";s:3:"bal";s:7:"balutxi";s:3:"bal";s:13:"balúčština";s:3:"bal";s:7:"balwtsi";s:3:"bal";s:12:"belutschisch";s:3:"bal";s:8:"belutši";s:3:"bal";s:11:"baloetsjysk";s:3:"bal";s:8:"baluchì";s:3:"bal";s:7:"balucsi";s:3:"bal";s:8:"balúkí";s:3:"bal";s:6:"beluci";s:3:"bal";s:13:"beluhtschesch";s:3:"bal";s:12:"belutschesch";s:3:"bal";s:8:"beludžu";s:3:"bal";s:7:"baluċi";s:3:"bal";s:9:"beloetsji";s:3:"bal";s:8:"beludżi";s:3:"bal";s:8:"balúchi";s:3:"bal";s:9:"belutschi";s:3:"bal";s:11:"balúčtina";s:3:"bal";s:16:"beludžijščina";s:3:"bal";s:10:"baluchiska";s:3:"bal";s:8:"balinés";s:3:"ban";s:8:"balincə";s:3:"ban";s:7:"balineg";s:3:"ban";s:12:"balinezijski";s:3:"ban";s:8:"balinès";s:3:"ban";s:11:"balijština";s:3:"ban";s:7:"balïeg";s:3:"ban";s:10:"balinesisk";s:3:"ban";s:11:"balinesisch";s:3:"ban";s:8:"balinese";s:3:"ban";s:4:"bali";s:3:"ban";s:8:"balinais";s:3:"ban";s:9:"balineesk";s:3:"ban";s:7:"bailís";s:3:"ban";s:8:"balinéz";s:3:"ban";s:8:"balíska";s:3:"ban";s:12:"balinehsesch";s:3:"ban";s:11:"balinesesch";s:3:"ban";s:9:"balinezų";s:3:"ban";s:8:"baliešu";s:3:"ban";s:8:"baliniż";s:3:"ban";s:10:"balineesch";s:3:"ban";s:8:"balinees";s:3:"ban";s:8:"balijski";s:3:"ban";s:8:"balinês";s:3:"ban";s:9:"balineză";s:3:"ban";s:10:"balijčina";s:3:"ban";s:12:"balijščina";s:3:"ban";s:11:"balinesiska";s:3:"ban";s:9:"bali dili";s:3:"ban";s:5:"basaa";s:3:"bas";s:9:"basa dili";s:3:"bas";s:4:"basa";s:3:"bas";s:7:"basâeg";s:3:"bas";s:13:"basaa-sprache";s:3:"bas";s:8:"basaagbe";s:3:"bas";s:5:"bassa";s:3:"bas";s:5:"basza";s:3:"bas";s:13:"basaa-sprooch";s:3:"bas";s:5:"basų";s:3:"bas";s:4:"basu";s:3:"bas";s:5:"bamun";s:3:"bax";s:8:"bamunski";s:3:"bax";s:7:"bamwmeg";s:3:"bax";s:7:"bamugbe";s:3:"bax";s:6:"bamuni";s:3:"bax";s:5:"bamum";s:3:"bax";s:6:"bamoun";s:3:"bax";s:7:"bamunų";s:3:"bax";s:6:"bamumu";s:3:"bax";s:8:"bamunska";s:3:"bax";s:4:"beja";s:3:"bej";s:9:"beja dili";s:3:"bej";s:8:"bedawieg";s:3:"bej";s:6:"bedža";s:3:"bej";s:7:"bejäeg";s:3:"bej";s:7:"bedauye";s:3:"bej";s:5:"bedja";s:3:"bej";s:6:"bedzsa";s:3:"bej";s:5:"begia";s:3:"bej";s:6:"bėjų";s:3:"bej";s:6:"bedžu";s:3:"bej";s:7:"bedscha";s:3:"bej";s:6:"bedża";s:3:"bej";s:5:"bikol";s:3:"bik";s:7:"bikolca";s:3:"bik";s:5:"bicol";s:3:"bik";s:11:"bikolština";s:3:"bik";s:13:"bikol-sprache";s:3:"bik";s:6:"bikoli";s:3:"bik";s:9:"bikolisch";s:3:"bik";s:6:"bíkol";s:3:"bik";s:13:"bikol-sprooch";s:3:"bik";s:7:"bikolų";s:3:"bik";s:6:"bikolu";s:3:"bik";s:14:"bikolski jezik";s:3:"bik";s:4:"bini";s:3:"bin";s:9:"bini dili";s:3:"bin";s:12:"bini-sprache";s:3:"bin";s:6:"bíní";s:3:"bin";s:12:"bini-sprooch";s:3:"bin";s:4:"binu";s:3:"bin";s:9:"blackfoot";s:3:"bla";s:17:"blackfoot-sprache";s:3:"bla";s:19:"blackfoot-schpraach";s:3:"bla";s:17:"blackfoot-sprooch";s:3:"bla";s:4:"braj";s:3:"bra";s:9:"braj dili";s:3:"bra";s:12:"bradžština";s:3:"bra";s:11:"braj-bhakha";s:3:"bra";s:7:"bradži";s:3:"bra";s:6:"bradž";s:3:"bra";s:5:"braí";s:3:"bra";s:8:"brajesch";s:3:"bra";s:6:"brajų";s:3:"bra";s:11:"bradžiešu";s:3:"bra";s:6:"bradź";s:3:"bra";s:11:"bradžčina";s:3:"bra";s:18:"bradžbakanščina";s:3:"bra";s:7:"bakossi";s:3:"bss";s:6:"buriat";s:3:"bua";s:11:"buryat dili";s:3:"bua";s:7:"bouriat";s:3:"bua";s:12:"burjatština";s:3:"bua";s:8:"bwriateg";s:3:"bua";s:9:"buriatisk";s:3:"bua";s:10:"burjatisch";s:3:"bua";s:8:"burjaadi";s:3:"bua";s:9:"burjaatti";s:3:"bua";s:8:"bouriate";s:3:"bua";s:11:"buiriáitis";s:3:"bua";s:7:"burját";s:3:"bua";s:8:"búríat";s:3:"bua";s:12:"burejahtesch";s:3:"bua";s:10:"burjatesch";s:3:"bua";s:8:"buriatų";s:3:"bua";s:7:"burjatu";s:3:"bua";s:6:"burjat";s:3:"bua";s:10:"burjaatsch";s:3:"bua";s:11:"boerjatisch";s:3:"bua";s:9:"burjatisk";s:3:"bua";s:8:"buriacki";s:3:"bua";s:11:"buriatčina";s:3:"bua";s:13:"burjatščina";s:3:"bua";s:11:"burjätiska";s:3:"bua";s:6:"buryat";s:3:"bua";s:18:"చిబ్చా";s:3:"chb";s:15:"చాగటై";s:3:"chg";s:18:"చూకిస్";s:3:"chk";s:40:"చినూక్ జార్గన్";s:3:"chn";s:20:"biệt ngữ chinook";s:3:"chn";s:30:"చిపెవ్యాన్";s:3:"chp";s:14:"belanda tengah";s:3:"dum";s:43:"ဂျူဒီယို-ပါရှန်";s:3:"jpr";s:43:"ဂျူဒီယို-အာရေဗျ";s:3:"jrb";s:12:"చేవా";s:2:"oj";s:5:"belau";s:3:"pau";s:15:"blisimbols dili";s:3:"zbl";s:5:"bliss";s:3:"zbl";s:10:"blisimboli";s:3:"zbl";s:13:"bliss systém";s:3:"zbl";s:12:"blisssymbols";s:3:"zbl";s:12:"blissymboler";s:3:"zbl";s:13:"bliss-symbole";s:3:"zbl";s:11:"blissymbols";s:3:"zbl";s:13:"blissümbolid";s:3:"zbl";s:10:"blisskieli";s:3:"zbl";s:12:"blissymbolen";s:3:"zbl";s:13:"bliss-symbool";s:3:"zbl";s:21:"bliss jelképrendszer";s:3:"zbl";s:10:"blissymbol";s:3:"zbl";s:10:"blisstákn";s:3:"zbl";s:14:"bliss-symboler";s:3:"zbl";s:13:"blissimbolika";s:3:"zbl";s:14:"bliss-symbolen";s:3:"zbl";s:15:"blis sembolleri";s:3:"zbl";s:22:"bahasa isyarat amerika";s:3:"ase";s:6:"betawi";s:3:"bew";s:11:"batavština";s:3:"bew";s:6:"betavi";s:3:"bew";s:9:"betawiska";s:3:"bew";s:5:"bafut";s:3:"bfd";s:8:"bafutgbe";s:3:"bfd";s:6:"bafuti";s:3:"bfd";s:7:"bafutų";s:3:"bfd";s:6:"bafutu";s:3:"bfd";s:6:"badaga";s:3:"bfq";s:11:"badagština";s:3:"bfq";s:6:"bagada";s:3:"bfq";s:7:"bamekon";s:3:"bkm";s:4:"bulu";s:3:"bum";s:4:"bwlw";s:3:"bum";s:7:"bulugbe";s:3:"bum";s:6:"boulou";s:3:"bum";s:8:"bagangte";s:3:"byv";s:19:"bamileké-ngiemboon";s:3:"nnh";s:15:"bamileké-jemba";s:3:"ybb";s:5:"banda";s:3:"bad";s:8:"bamileke";s:3:"bai";s:16:"baltsche spraken";s:3:"bat";s:15:"baltički jezik";s:3:"bat";s:13:"berberspraken";s:3:"ber";s:6:"berber";s:3:"ber";s:12:"bantuspraken";s:3:"bnt";s:5:"bantu";s:3:"bnt";s:5:"batak";s:3:"btk";}i:310;a:21:{s:12:"आकान";s:2:"ak";s:15:"आसामी";s:2:"as";s:18:"आयमारा";s:2:"ay";s:15:"आइरिश";s:2:"ga";s:15:"आयरिश";s:2:"ga";s:33:"ზემოსორბული";s:3:"hsb";s:30:"आर्मेनियाई";s:2:"hy";s:27:"आर्मेनियन";s:2:"hy";s:33:"आर्मेनियाली";s:2:"hy";s:24:"आइसलैंडी";s:2:"is";s:24:"आईसलँडिक";s:2:"is";s:36:"आइसल्यान्डिक";s:2:"is";s:13:"Ķelnes vācu";s:3:"ksh";s:12:"ზულუ";s:2:"zu";s:12:"आघेम";s:3:"agq";s:44:"आधुनिक मानक अरबी";s:6:"ar-001";s:56:"आधुनिक प्रमाणित अरबी";s:6:"ar-001";s:9:"आसु";s:3:"asa";s:15:"ზარმა";s:3:"dje";s:18:"ზენაგა";s:3:"zen";s:18:"ზაზაკი";s:3:"zza";}i:612;a:72:{s:18:"ⵜⴰⴽⴰⵏⵜ";s:2:"ak";s:24:"ⵜⴰⵎⵀⴰⵔⵉⵜ";s:2:"am";s:21:"ⵜⴰⵄⵔⴰⴱⵜ";s:2:"ar";s:30:"ⵜⴰⴱⵉⵍⴰⵔⵓⵙⵜ";s:2:"be";s:27:"ⵜⴰⴱⵍⵖⴰⵔⵉⵜ";s:2:"bg";s:27:"ⵜⴰⴱⵏⵖⴰⵍⵉⵜ";s:2:"bn";s:12:"柴羅基文";s:3:"chr";s:24:"ⵜⴰⵜⵛⵉⴽⵉⵜ";s:2:"cs";s:24:"ⵜⴰⵍⵉⵎⴰⵏⵜ";s:2:"de";s:24:"ⵜⴰⴳⵔⵉⴳⵉⵜ";s:2:"el";s:24:"ⵜⴰⵏⴳⵍⵉⵣⵜ";s:2:"en";s:30:"ⵜⴰⵙⴱⵏⵢⵓⵍⵉⵜ";s:2:"es";s:24:"ⵜⴰⴼⵓⵔⵙⵉⵜ";s:2:"fa";s:30:"ⵜⴰⴼⵔⴰⵏⵙⵉⵙⵜ";s:2:"fr";s:24:"ⵜⴰⵀⴰⵡⵙⴰⵜ";s:2:"ha";s:24:"ⵜⴰⵀⵉⵏⴷⵉⵜ";s:2:"hi";s:27:"ⵜⴰⵀⵏⵖⴰⵔⵉⵜ";s:2:"hu";s:30:"ⵜⴰⵏⴷⵓⵏⵉⵙⵉⵜ";s:2:"id";s:18:"ⵜⵉⴳⴱⵓⵜ";s:2:"ig";s:27:"ⵜⴰⵟⴰⵍⵢⴰⵏⵜ";s:2:"it";s:30:"ⵜⴰⵊⴰⴱⴱⵓⵏⵉⵜ";s:2:"ja";s:27:"ⵜⴰⵊⴰⴼⴰⵏⵉⵜ";s:2:"jv";s:21:"ⵜⴰⵅⵎⵉⵔⵜ";s:2:"km";s:21:"ⵜⴰⴽⵓⵔⵉⵜ";s:2:"ko";s:27:"ⵜⴰⵎⴰⵍⴰⵡⵉⵜ";s:2:"ms";s:30:"ⵜⴰⴱⵉⵔⵎⴰⵏⵉⵜ";s:2:"my";s:27:"ⵜⴰⵏⵉⴱⴰⵍⵉⵜ";s:2:"ne";s:12:"尼泊尔文";s:2:"ne";s:12:"尼泊爾文";s:2:"ne";s:12:"尼瓦尔文";s:3:"new";s:12:"尼瓦爾文";s:3:"new";s:30:"ⵜⴰⵀⵓⵍⴰⵏⴷⵉⵜ";s:2:"nl";s:12:"尼扬扎文";s:2:"ny";s:12:"尼揚賈文";s:2:"ny";s:27:"ⵜⴰⴱⵏⵊⴰⴱⵉⵜ";s:2:"pa";s:27:"ⵜⴰⴱⵓⵍⵓⵏⵉⵜ";s:2:"pl";s:27:"ⵜⴰⴱⵕⵟⵇⵉⵣⵜ";s:2:"pt";s:27:"ⵜⴰⵔⵓⵎⴰⵏⵉⵜ";s:2:"ro";s:21:"ⵜⴰⵔⵓⵙⵉⵜ";s:2:"ru";s:30:"ⵜⴰⵔⵓⵡⴰⵏⴷⵉⵜ";s:2:"rw";s:24:"ⵜⴰⵎⴰⵣⵉⵖⵜ";s:3:"tzm";s:21:"ⵜⴰⵛⵍⵃⵉⵜ";s:8:"shi-tfng";s:27:"ⵜⴰⵙⵓⵎⴰⵍⵉⵜ";s:2:"so";s:24:"ⵜⴰⵙⵡⵉⴷⵉⵜ";s:2:"sv";s:24:"ⵜⴰⵜⴰⵎⵉⵍⵜ";s:2:"ta";s:12:"塔吉克文";s:2:"tg";s:33:"ⵜⴰⵜⴰⵢⵍⴰⵏⴷⵉⵜ";s:2:"th";s:12:"塔加洛文";s:2:"tl";s:15:"塔加路族文";s:2:"tl";s:12:"塔里什文";s:3:"tly";s:24:"ⵜⴰⵜⵓⵔⴽⵉⵜ";s:2:"tr";s:12:"塔塔尔文";s:2:"tt";s:12:"塔西提文";s:2:"ty";s:18:"塔马齐格特文";s:3:"tzm";s:18:"塔馬齊格特文";s:3:"tzm";s:24:"ⵜⵓⴽⵔⴰⵏⵉⵜ";s:2:"uk";s:18:"ⵜⵓⵔⴷⵓⵜ";s:2:"ur";s:30:"ⵜⴰⴼⵉⵜⵏⴰⵎⵉⵜ";s:2:"vi";s:24:"ⵜⴰⵢⵔⵓⴱⴰⵜ";s:2:"yo";s:24:"ⵜⴰⵛⵉⵏⵡⵉⵜ";s:2:"zh";s:21:"ⵜⴰⵣⵓⵍⵓⵜ";s:2:"zu";s:15:"尼昂科勒文";s:3:"nyn";s:15:"尼揚科萊文";s:3:"nyn";s:12:"尼亚斯文";s:3:"nia";s:12:"尼亞斯文";s:3:"nia";s:18:"尼亚姆韦齐文";s:3:"nym";s:15:"尼揚韋齊文";s:3:"nym";s:12:"尼约罗文";s:3:"nyo";s:12:"尼奧囉文";s:3:"nyo";s:12:"尼茲馬文";s:3:"nzi";s:15:"塔马奇克文";s:3:"tmh";s:15:"塔馬奇克文";s:3:"tmh";}i:99;a:529:{s:8:"chiakani";s:2:"ak";s:9:"chiamaric";s:2:"am";s:8:"chiarabu";s:2:"ar";s:6:"carabi";s:2:"ar";s:18:"cezayir arapçası";s:3:"arq";s:11:"chibelarusi";s:2:"be";s:12:"chibulgarian";s:2:"bg";s:10:"chibengali";s:2:"bn";s:7:"català";s:2:"ca";s:8:"catalán";s:2:"ca";s:9:"catalaneg";s:2:"ca";s:9:"catalansk";s:2:"ca";s:7:"catalan";s:2:"ca";s:11:"catalóinis";s:2:"ca";s:10:"catalanais";s:2:"ca";s:8:"catalano";s:2:"ca";s:9:"catalonia";s:2:"ca";s:9:"catalaans";s:2:"ca";s:8:"catalão";s:2:"ca";s:12:"catalan simi";s:2:"ca";s:9:"catalană";s:2:"ca";s:22:"chavacano de zamboanga";s:7:"cbk-zam";s:8:"chechenu";s:2:"ce";s:7:"chechen";s:2:"ce";s:8:"checheno";s:2:"ce";s:5:"cecen";s:2:"ce";s:7:"csecsen";s:2:"ce";s:6:"ceceno";s:2:"ce";s:11:"czeczeński";s:2:"ce";s:8:"chechene";s:2:"ce";s:7:"cecenă";s:2:"ce";s:7:"cebuano";s:3:"ceb";s:7:"cebuanu";s:3:"ceb";s:6:"cebuà";s:3:"ceb";s:13:"cebuánština";s:3:"ceb";s:5:"cebui";s:3:"ceb";s:8:"cebuanų";s:3:"ceb";s:8:"cebuansk";s:3:"ceb";s:12:"cebuánčina";s:3:"ceb";s:7:"chamoru";s:2:"ch";s:8:"chamorro";s:2:"ch";s:8:"chamorru";s:2:"ch";s:16:"chamorro-sprache";s:2:"ch";s:8:"csamoró";s:2:"ch";s:16:"chamorro-sprooch";s:2:"ch";s:7:"choctaw";s:3:"cho";s:7:"choktaw";s:3:"cho";s:14:"choctawšćina";s:3:"cho";s:7:"csoktó";s:3:"cho";s:9:"cherokees";s:3:"chr";s:8:"cheroqui";s:3:"chr";s:8:"cherokee";s:3:"chr";s:7:"cseroki";s:3:"chr";s:13:"cherokee-mál";s:3:"chr";s:11:"cherokesisk";s:3:"chr";s:10:"czirokeski";s:3:"chr";s:13:"cheroqui simi";s:3:"chr";s:12:"cherokesiska";s:3:"chr";s:9:"cherokcha";s:3:"chr";s:8:"cheyenne";s:3:"chy";s:7:"cheyene";s:3:"chy";s:6:"csejen";s:3:"chy";s:7:"cheiene";s:3:"chy";s:13:"cwrdeg sorani";s:3:"ckb";s:16:"cùrdais soranî";s:3:"ckb";s:13:"curdo soraní";s:3:"ckb";s:12:"curdo sorani";s:3:"ckb";s:17:"chawpi kurdo simi";s:3:"ckb";s:5:"corsu";s:2:"co";s:4:"cors";s:2:"co";s:6:"corseg";s:2:"co";s:8:"corsican";s:2:"co";s:5:"corso";s:2:"co";s:5:"corse";s:2:"co";s:9:"corsaicis";s:2:"co";s:7:"corsais";s:2:"co";s:7:"corsica";s:2:"co";s:10:"corsicaans";s:2:"co";s:8:"córsico";s:2:"co";s:10:"corso simi";s:2:"co";s:10:"corsicană";s:2:"co";s:13:"corsicagiella";s:2:"co";s:9:"capiceño";s:3:"cps";s:8:"capiznon";s:3:"cps";s:4:"cree";s:2:"cr";s:3:"cri";s:2:"cr";s:6:"craís";s:2:"cr";s:15:"crimean turkish";s:3:"crh";s:30:"crimean turkish; crimean tatar";s:3:"crh";s:30:"crimean turkish (latin script)";s:8:"crh-latn";s:33:"crimean turkish (cyrillic script)";s:8:"crh-cyrl";s:5:"checu";s:2:"cs";s:8:"cɛkikan";s:2:"cs";s:5:"czech";s:2:"cs";s:5:"checo";s:2:"cs";s:7:"cekkere";s:2:"cs";s:3:"cec";s:2:"cs";s:4:"cseh";s:2:"cs";s:6:"cheska";s:2:"cs";s:8:"cheekị";s:2:"cs";s:4:"ceco";s:2:"cs";s:6:"czeski";s:2:"cs";s:10:"checo simi";s:2:"cs";s:5:"cehă";s:2:"cs";s:8:"chiczech";s:2:"cs";s:7:"chexcha";s:2:"cs";s:7:"caixubi";s:3:"csb";s:7:"casubio";s:3:"csb";s:11:"caisiúibis";s:3:"csb";s:10:"caisiubais";s:3:"csb";s:11:"cașubiană";s:3:"csb";s:13:"church slavic";s:2:"cu";s:13:"chileslawisch";s:2:"cu";s:16:"crkvenoslavenski";s:2:"cu";s:21:"cirkevná slovančina";s:2:"cu";s:7:"chuvash";s:2:"cv";s:6:"csuvas";s:2:"cv";s:8:"czuwaski";s:2:"cv";s:9:"ciuvașă";s:2:"cv";s:7:"cymraeg";s:2:"cy";s:2:"cy";s:2:"cy";s:7:"cuimris";s:2:"cy";s:11:"chijerimani";s:2:"de";s:13:"central dusun";s:3:"dtp";s:16:"centrinio dusuno";s:3:"dtp";s:8:"chigreek";s:2:"el";s:8:"chirungu";s:2:"en";s:16:"canadian english";s:5:"en-ca";s:16:"canadisk engelsk";s:5:"en-ca";s:15:"canadees engels";s:5:"en-ca";s:10:"chispanish";s:2:"es";s:10:"chipeshiya";s:2:"fa";s:11:"chifurenchi";s:2:"fr";s:5:"cajun";s:3:"frc";s:12:"cajun french";s:3:"frc";s:11:"cajun-frans";s:3:"frc";s:13:"cajun-franska";s:3:"frc";s:19:"cajun fransızcası";s:3:"frc";s:9:"chinu gan";s:3:"gan";s:8:"chihausa";s:2:"ha";s:11:"chinu hakka";s:3:"hak";s:16:"cànan hawai’i";s:3:"haw";s:5:"cibri";s:2:"he";s:8:"chihindi";s:2:"hi";s:6:"croata";s:2:"hr";s:5:"croat";s:2:"hr";s:13:"chorvatština";s:2:"hr";s:7:"croateg";s:2:"hr";s:14:"chorwatšćina";s:2:"hr";s:8:"croatian";s:2:"hr";s:6:"croate";s:2:"hr";s:7:"cravuat";s:2:"hr";s:8:"cróitis";s:2:"hr";s:11:"cròthaisis";s:2:"hr";s:6:"croato";s:2:"hr";s:9:"chorwacki";s:2:"hr";s:11:"croata simi";s:2:"hr";s:7:"croată";s:2:"hr";s:13:"chorvátčina";s:2:"hr";s:11:"creol haiti";s:2:"ht";s:18:"criól háítíoch";s:2:"ht";s:17:"crìtheol haidhti";s:2:"ht";s:10:"chihungari";s:2:"hu";s:12:"chiindonesia";s:2:"id";s:7:"chiigbo";s:2:"ig";s:10:"chitariana";s:2:"it";s:9:"chijapani";s:2:"ja";s:26:"créole anglais jamaïcain";s:3:"jam";s:17:"creolo giamaicano";s:3:"jam";s:7:"chijava";s:2:"jv";s:9:"cava dili";s:2:"jv";s:12:"cairtbheilis";s:2:"ka";s:13:"cara-calpaceg";s:3:"kaa";s:14:"cara-chalpáis";s:3:"kaa";s:8:"cabilenc";s:3:"kab";s:7:"cabileg";s:3:"kab";s:6:"cabila";s:3:"kab";s:6:"cabilo";s:3:"kab";s:19:"circaseg dwyreiniol";s:3:"kbd";s:5:"congo";s:2:"kg";s:8:"congóis";s:2:"kg";s:8:"conguês";s:2:"kg";s:9:"congolês";s:2:"kg";s:10:"congoleză";s:2:"kg";s:12:"chovarština";s:3:"khw";s:8:"ciocúis";s:2:"ki";s:12:"cuainiáimis";s:2:"kj";s:8:"casacheg";s:2:"kk";s:8:"casaicis";s:2:"kk";s:9:"casachais";s:2:"kk";s:6:"casaco";s:2:"kk";s:7:"cazaque";s:2:"kk";s:5:"casac";s:2:"kk";s:7:"chmereg";s:2:"km";s:9:"ciméiris";s:2:"km";s:6:"cmèar";s:2:"km";s:10:"cambodiano";s:2:"km";s:4:"cmer";s:2:"km";s:11:"cambodschan";s:2:"km";s:8:"chikhema";s:2:"km";s:8:"canarés";s:2:"kn";s:9:"cannadais";s:2:"kn";s:7:"canarim";s:2:"kn";s:8:"canarês";s:2:"kn";s:7:"coreanu";s:2:"ko";s:6:"coreà";s:2:"ko";s:6:"coreeg";s:2:"ko";s:7:"coreano";s:2:"ko";s:7:"coréen";s:2:"ko";s:6:"corean";s:2:"ko";s:9:"cóiréis";s:2:"ko";s:11:"coirèanais";s:2:"ko";s:12:"coreano simi";s:2:"ko";s:9:"coreeană";s:2:"ko";s:8:"chikoria";s:2:"ko";s:6:"canwri";s:2:"kr";s:9:"canúiris";s:2:"kr";s:7:"canúri";s:2:"kr";s:11:"cachemirés";s:2:"ks";s:8:"caixmiri";s:2:"ks";s:9:"cashmireg";s:2:"ks";s:9:"cachemiro";s:2:"ks";s:10:"caismíris";s:2:"ks";s:9:"caismiris";s:2:"ks";s:8:"cachemir";s:2:"ks";s:8:"caxemira";s:2:"ks";s:9:"cașmiră";s:2:"ks";s:9:"colonianu";s:3:"ksh";s:9:"colognian";s:3:"ksh";s:7:"cwleneg";s:3:"ksh";s:10:"cologniani";s:3:"ksh";s:9:"coloniese";s:3:"ksh";s:5:"curdu";s:2:"ku";s:6:"cwrdeg";s:2:"ku";s:4:"curd";s:2:"ku";s:7:"coirdis";s:2:"ku";s:8:"cùrdais";s:2:"ku";s:5:"curdo";s:2:"ku";s:4:"comi";s:2:"kv";s:6:"coimis";s:2:"kv";s:8:"córnicu";s:2:"kw";s:7:"còrnic";s:2:"kw";s:8:"cernyweg";s:2:"kw";s:7:"cornisk";s:2:"kw";s:7:"cornish";s:2:"kw";s:8:"córnico";s:2:"kw";s:8:"cornique";s:2:"kw";s:11:"cornualiês";s:2:"kw";s:7:"coirnis";s:2:"kw";s:8:"còrnais";s:2:"kw";s:7:"cornico";s:2:"kw";s:6:"cornic";s:2:"kw";s:8:"cornică";s:2:"kw";s:8:"cirgiseg";s:2:"ky";s:8:"cirgisis";s:2:"ky";s:11:"cìorgasais";s:2:"ky";s:9:"chirghiso";s:2:"ky";s:16:"chinu lliterariu";s:3:"lzh";s:19:"chinois littéraire";s:3:"lzh";s:15:"cinese classico";s:3:"lzh";s:18:"chiński klasyczny";s:3:"lzh";s:8:"chimalay";s:2:"ms";s:5:"creek";s:3:"mus";s:8:"chiburma";s:2:"my";s:13:"chinu min nan";s:3:"nan";s:9:"chinepali";s:2:"ne";s:11:"cànan niue";s:3:"niu";s:8:"chidutch";s:2:"nl";s:9:"chi-chewa";s:2:"ny";s:8:"chichewa";s:2:"ny";s:5:"chewa";s:2:"ny";s:15:"chewa-schpraach";s:2:"ny";s:10:"chipunjabi";s:2:"pa";s:9:"chipolish";s:2:"pl";s:11:"chiputukezi";s:2:"pt";s:9:"ceatsuais";s:2:"qu";s:7:"ceatsua";s:2:"qu";s:27:"chimborazo hochland-quechua";s:3:"qug";s:27:"chimborazo highland quichua";s:3:"qug";s:26:"chimborazonylänköketšua";s:3:"qug";s:25:"chimborazo górski keczua";s:3:"qug";s:26:"chimborazo-höglandskichwa";s:3:"qug";s:11:"chiromanian";s:2:"ro";s:10:"chirashiya";s:2:"ru";s:13:"ciniarŵandeg";s:2:"rw";s:13:"ciniaruaindis";s:2:"rw";s:9:"chirwanda";s:2:"rw";s:17:"chincha sami simi";s:2:"se";s:11:"cmique itom";s:3:"sei";s:6:"chleuh";s:3:"shi";s:9:"cingalés";s:2:"si";s:10:"cinghalais";s:2:"si";s:9:"cingalês";s:2:"si";s:13:"cingales simi";s:2:"si";s:12:"cənubi sami";s:3:"sma";s:8:"chishona";s:2:"sn";s:9:"chisomali";s:2:"so";s:12:"cànan sunda";s:2:"su";s:10:"chiswedish";s:2:"sv";s:8:"chitamil";s:2:"ta";s:7:"chithai";s:2:"th";s:5:"cvana";s:2:"tn";s:5:"cvanu";s:2:"tn";s:11:"cvanščina";s:2:"tn";s:10:"chiturkish";s:2:"tr";s:5:"conga";s:2:"ts";s:5:"congu";s:2:"ts";s:10:"chitumbuka";s:3:"tum";s:2:"ci";s:2:"tw";s:27:"centralmarokkansk tamazight";s:3:"tzm";s:26:"centralnoatlaski tamazight";s:3:"tzm";s:23:"central atlas tamazight";s:3:"tzm";s:26:"centrinio maroko tamazitų";s:3:"tzm";s:25:"centrālmarokas tamazīts";s:3:"tzm";s:30:"centralnomarokański tamazight";s:3:"tzm";s:27:"centralmarockansk tamazight";s:3:"tzm";s:10:"chiukrenia";s:2:"uk";s:7:"chiurdu";s:2:"ur";s:10:"chivietnam";s:2:"vi";s:8:"chinu wu";s:3:"wuu";s:10:"chinois wu";s:3:"wuu";s:6:"calmuc";s:3:"xal";s:8:"calmyceg";s:3:"xal";s:10:"cailmícis";s:3:"xal";s:8:"calmucă";s:3:"xal";s:7:"cóisis";s:2:"xh";s:9:"chiyoruba";s:2:"yo";s:9:"cantonés";s:3:"yue";s:9:"cantonès";s:3:"yue";s:9:"cantoneeg";s:3:"yue";s:9:"cantongbe";s:3:"yue";s:9:"cantonese";s:6:"zh-yue";s:9:"cantonais";s:3:"yue";s:9:"cantainis";s:3:"yue";s:9:"cantonês";s:3:"yue";s:10:"cantoneză";s:3:"yue";s:6:"chuang";s:2:"za";s:6:"czuang";s:2:"za";s:5:"chinu";s:2:"zh";s:10:"chinesisch";s:2:"zh";s:11:"chinšćina";s:2:"zh";s:7:"chinese";s:2:"zh";s:5:"chino";s:2:"zh";s:7:"chinois";s:2:"zh";s:6:"cinês";s:2:"zh";s:7:"chinés";s:2:"zh";s:11:"chineesisch";s:2:"zh";s:5:"china";s:2:"zh";s:6:"cinese";s:2:"zh";s:6:"chinek";s:2:"zh";s:10:"chinesesch";s:2:"zh";s:4:"cina";s:2:"zh";s:9:"chineesch";s:2:"zh";s:7:"chinees";s:2:"zh";s:8:"chiński";s:2:"zh";s:7:"chinês";s:2:"zh";s:10:"chino simi";s:2:"zh";s:7:"chinais";s:2:"zh";s:8:"chineză";s:2:"zh";s:10:"chichinese";s:2:"zh";s:17:"classical chinese";s:12:"zh-classical";s:15:"chinese (china)";s:5:"zh-cn";s:18:"chinu simplificáu";s:7:"zh-hans";s:24:"chinesisch (vereinfacht)";s:7:"zh-hans";s:25:"chinšćina (zjadnorjona)";s:7:"zh-hans";s:18:"chino simplificado";s:7:"zh-hans";s:18:"chinois simplifié";s:7:"zh-hans";s:19:"cinês semplificât";s:7:"zh-hans";s:20:"chinés simplificado";s:7:"zh-hans";s:25:"chinšćina (zjednorjena)";s:7:"zh-hans";s:24:"china (aksara sederhana)";s:7:"zh-hans";s:19:"cinese semplificato";s:7:"zh-hans";s:13:"chinek sempel";s:7:"zh-hans";s:24:"chinesesch (vereinfacht)";s:7:"zh-hans";s:12:"cina ringkas";s:7:"zh-hans";s:22:"chiński (uproszczony)";s:7:"zh-hans";s:20:"chinês simplificado";s:7:"zh-hans";s:20:"chinais simplifitgà";s:7:"zh-hans";s:22:"chineză simplificată";s:7:"zh-hans";s:17:"chinu tradicional";s:7:"zh-hant";s:25:"chinesisch (traditionell)";s:7:"zh-hant";s:27:"chinšćina (tradicionalna)";s:7:"zh-hant";s:17:"chino tradicional";s:7:"zh-hant";s:20:"chinois traditionnel";s:7:"zh-hant";s:19:"cinês tradizionâl";s:7:"zh-hant";s:19:"chinés tradicional";s:7:"zh-hant";s:26:"china (aksara tradisional)";s:7:"zh-hant";s:19:"cinese tradizionale";s:7:"zh-hant";s:19:"chînek tradycyonal";s:7:"zh-hant";s:25:"chinesesch (traditionell)";s:7:"zh-hant";s:16:"cina tradisional";s:7:"zh-hant";s:21:"chiński (tradycyjny)";s:7:"zh-hant";s:19:"chinês tradicional";s:7:"zh-hant";s:19:"chinais tradiziunal";s:7:"zh-hant";s:23:"chineză tradițională";s:7:"zh-hant";s:19:"chinese (hong kong)";s:5:"zh-hk";s:17:"chinese (min nan)";s:10:"zh-min-nan";s:19:"chinese (singapore)";s:5:"zh-sg";s:16:"chinese (taiwan)";s:5:"zh-tw";s:7:"chizulu";s:2:"zu";s:5:"chiga";s:3:"cgg";s:7:"chigera";s:3:"cgg";s:12:"ఛిగా";s:3:"cgg";s:7:"chigcha";s:3:"cgg";s:5:"coptu";s:3:"cop";s:5:"copte";s:3:"cop";s:6:"copteg";s:3:"cop";s:6:"coptic";s:3:"cop";s:5:"copto";s:3:"cop";s:7:"coptais";s:3:"cop";s:5:"copta";s:3:"cop";s:6:"coptă";s:3:"cop";s:12:"chetitština";s:3:"hit";s:11:"chetitčina";s:3:"hit";s:5:"camba";s:3:"kam";s:12:"cabuverdianu";s:3:"kea";s:17:"crioll capverdià";s:3:"kea";s:13:"caboferdianeg";s:3:"kea";s:13:"cape verdegbe";s:3:"kea";s:20:"criollo caboverdiano";s:3:"kea";s:19:"cabo verdeko kreola";s:3:"kea";s:10:"capverdien";s:3:"kea";s:12:"caboverdiano";s:3:"kea";s:12:"capoverdiano";s:3:"kea";s:13:"cabo-verdiano";s:3:"kea";s:7:"concani";s:3:"kok";s:10:"concáinis";s:3:"kok";s:9:"curúicis";s:3:"kru";s:8:"chambala";s:3:"ksb";s:6:"ciluba";s:3:"lua";s:18:"criollo mauriciano";s:3:"mfe";s:17:"créole mauricien";s:3:"mfe";s:17:"crioulo mauritano";s:3:"mfe";s:17:"creolo mauriziano";s:3:"mfe";s:19:"cənub ndebele dili";s:2:"nr";s:9:"comorianu";s:3:"swb";s:8:"comorià";s:3:"swb";s:7:"comoreg";s:3:"swb";s:8:"comorian";s:3:"swb";s:9:"comorense";s:3:"swb";s:8:"comorien";s:3:"swb";s:8:"comorais";s:3:"swb";s:7:"comorei";s:3:"swb";s:9:"comoriano";s:3:"swb";s:7:"comoria";s:3:"swb";s:9:"comoreză";s:3:"swb";s:19:"congolesisk swahili";s:3:"swc";s:13:"congo swahili";s:3:"swc";s:21:"cànan neo-aithnichte";s:3:"und";s:9:"castelán";s:5:"es-es";s:15:"canadisk fransk";s:5:"fr-ca";s:15:"canadian french";s:5:"fr-ca";s:14:"canadees frans";s:5:"fr-ca";s:20:"circaseg gorllewinol";s:3:"ady";s:17:"cənub altay dili";s:3:"alt";s:5:"caddo";s:3:"cad";s:4:"cado";s:3:"cad";s:6:"caribe";s:3:"car";s:5:"carib";s:3:"car";s:7:"caribeg";s:3:"car";s:8:"caribisk";s:3:"car";s:8:"caribico";s:3:"car";s:9:"caribisch";s:3:"car";s:7:"caribic";s:3:"car";s:7:"chibcha";s:3:"chb";s:15:"chibcha-sprache";s:3:"chb";s:7:"csibcsa";s:3:"chb";s:15:"chibcha-sprooch";s:3:"chb";s:15:"chibcha-spraken";s:3:"chb";s:7:"czibcza";s:3:"chb";s:8:"chagatai";s:3:"chg";s:9:"chagatái";s:3:"chg";s:9:"csagatáj";s:3:"chg";s:10:"ciagataico";s:3:"chg";s:11:"czagatajski";s:3:"chg";s:8:"chuukés";s:3:"chk";s:5:"chuuk";s:3:"chk";s:8:"chuukese";s:3:"chk";s:9:"chuukeesk";s:3:"chk";s:7:"csukéz";s:3:"chk";s:6:"chuuke";s:3:"chk";s:10:"chuukesisk";s:3:"chk";s:8:"chuukees";s:3:"chk";s:8:"chuukais";s:3:"chk";s:11:"chuukesiska";s:3:"chk";s:7:"chinook";s:3:"chn";s:14:"chinook jargon";s:3:"chn";s:14:"chinook-jargon";s:3:"chn";s:15:"chinook žargon";s:3:"chn";s:14:"csinuk zsargon";s:3:"chn";s:10:"chipewyanu";s:3:"chp";s:9:"chipewyan";s:3:"chp";s:8:"csipevé";s:3:"chp";s:11:"chipewiansk";s:3:"chp";s:11:"ciribeasais";s:3:"gil";s:6:"càseg";s:3:"kha";s:13:"chotánština";s:3:"kho";s:10:"chotański";s:3:"kho";s:11:"chotančina";s:3:"kho";s:8:"carelià";s:3:"krl";s:7:"careleg";s:3:"krl";s:7:"carelio";s:3:"krl";s:9:"carélien";s:3:"krl";s:10:"cairéilis";s:3:"krl";s:9:"careliano";s:3:"krl";s:8:"carelian";s:3:"krl";s:7:"cwmiceg";s:3:"kum";s:8:"chilamba";s:3:"lam";s:16:"classical newari";s:3:"nwc";s:9:"cygański";s:3:"rom";s:14:"chadian arabic";s:3:"shu";s:11:"csádi arab";s:3:"shu";s:14:"chadian arabų";s:3:"shu";s:12:"chadian arab";s:3:"shu";s:13:"chad-arabiska";s:3:"shu";s:16:"classical syriac";s:3:"syc";s:10:"csimsiáni";s:3:"tsi";s:11:"cimšiāņu";s:3:"tsi";s:30:"cainnt-shanais na h-aimeireaga";s:3:"ase";s:5:"comeg";s:3:"bkm";s:6:"cayuga";s:3:"cay";s:13:"central yupik";s:3:"esu";s:27:"centrinės aliaskos jupikų";s:3:"esu";s:11:"chinu xiang";s:3:"hsn";s:10:"caingangue";s:3:"kgp";s:12:"cachurština";s:3:"tkr";s:9:"cachurski";s:3:"tkr";s:9:"cakoński";s:3:"tsd";s:12:"cham-spraken";s:3:"cmc";}i:103;a:598:{s:5:"gegë";s:3:"aln";s:16:"gheg d’albania";s:3:"aln";s:5:"gegeg";s:3:"aln";s:14:"ghegeg albania";s:3:"aln";s:7:"gegisch";s:3:"aln";s:13:"gheg albanian";s:3:"aln";s:3:"geg";s:3:"aln";s:7:"guègue";s:3:"aln";s:7:"gegesch";s:3:"aln";s:7:"gegiska";s:3:"aln";s:18:"gheg arnavutçası";s:3:"aln";s:13:"gammelengelsk";s:3:"ang";s:13:"gammalengelsk";s:3:"ang";s:7:"għarbi";s:2:"ar";s:14:"güney azerice";s:3:"azb";s:21:"టిబెటన్";s:2:"bo";s:6:"galés";s:2:"cy";s:9:"gal·lès";s:2:"cy";s:8:"galesera";s:2:"cy";s:7:"gallois";s:2:"cy";s:6:"galês";s:2:"cy";s:7:"gallese";s:2:"cy";s:10:"gales simi";s:2:"cy";s:7:"galeză";s:2:"cy";s:5:"galce";s:2:"cy";s:7:"gyaaman";s:2:"de";s:11:"germaniagbe";s:2:"de";s:6:"german";s:2:"de";s:7:"germana";s:2:"de";s:11:"gearmáinis";s:2:"de";s:11:"gearmailtis";s:2:"de";s:7:"germano";s:2:"de";s:8:"germană";s:2:"de";s:11:"gjermanisht";s:2:"de";s:20:"gearmáinis ostarach";s:5:"de-at";s:24:"gearmailtis na h-ostaire";s:5:"de-at";s:19:"germană austriacă";s:5:"de-at";s:22:"gjermanishte austriake";s:5:"de-at";s:28:"gornjonjemački (švicarski)";s:5:"de-ch";s:29:"germană standard elvețiană";s:5:"de-ch";s:42:"gjermanishte zvicerane (dialekti i alpeve)";s:5:"de-ch";s:23:"german (formal address)";s:9:"de-formal";s:6:"grieks";s:2:"el";s:10:"greek kasa";s:2:"el";s:6:"griegu";s:2:"el";s:11:"gɛrɛsikan";s:2:"el";s:9:"gresianeg";s:2:"el";s:6:"grčki";s:2:"el";s:4:"grec";s:2:"el";s:5:"groeg";s:2:"el";s:6:"græsk";s:2:"el";s:10:"griechisch";s:2:"el";s:13:"grichišćina";s:2:"el";s:8:"grisigbe";s:2:"el";s:5:"greek";s:2:"el";s:5:"greka";s:2:"el";s:6:"griego";s:2:"el";s:8:"greziera";s:2:"el";s:5:"gerke";s:2:"el";s:8:"grikiskt";s:2:"el";s:5:"grêc";s:2:"el";s:5:"gryks";s:2:"el";s:8:"gréigis";s:2:"el";s:8:"greugais";s:2:"el";s:5:"grego";s:2:"el";s:8:"girkanci";s:2:"el";s:12:"grjekšćina";s:2:"el";s:7:"görög";s:2:"el";s:5:"greco";s:2:"el";s:9:"giriikị";s:2:"el";s:7:"gríska";s:2:"el";s:10:"griichesch";s:2:"el";s:7:"graikų";s:2:"el";s:7:"grieķu";s:2:"el";s:5:"grika";s:2:"el";s:5:"grieg";s:2:"el";s:5:"gresk";s:2:"el";s:8:"greeksch";s:2:"el";s:6:"grecki";s:2:"el";s:11:"griego simi";s:2:"el";s:7:"greacă";s:2:"el";s:13:"greikkagiella";s:2:"el";s:7:"gerêki";s:2:"el";s:10:"gréčtina";s:2:"el";s:9:"grščina";s:2:"el";s:6:"giriik";s:2:"el";s:8:"greqisht";s:2:"el";s:8:"grekiska";s:2:"el";s:10:"gĩthungũ";s:2:"en";s:6:"galleg";s:2:"fr";s:19:"gʻarbiy friziancha";s:2:"fy";s:7:"gaeilge";s:2:"ga";s:9:"gwyddeleg";s:2:"ga";s:8:"gaelikoa";s:2:"ga";s:16:"gaelic irlandês";s:2:"ga";s:6:"gagauz";s:3:"gag";s:9:"gagaouzeg";s:3:"gag";s:9:"gagauški";s:3:"gag";s:7:"gagaús";s:3:"gag";s:12:"gagauzština";s:3:"gag";s:9:"gagauzisk";s:3:"gag";s:10:"gagausisch";s:3:"gag";s:13:"gagauzšćina";s:3:"gag";s:7:"gagauzo";s:3:"gag";s:8:"gagauusi";s:3:"gag";s:9:"gagauzera";s:3:"gag";s:7:"gagauzi";s:3:"gag";s:8:"gagaouze";s:3:"gag";s:8:"gagauski";s:3:"gag";s:14:"gagauzišćina";s:3:"gag";s:6:"gagás";s:3:"gag";s:10:"gagausesch";s:3:"gag";s:9:"gagaūzų";s:3:"gag";s:7:"gagauzu";s:3:"gag";s:9:"gagausisk";s:3:"gag";s:11:"gagaoezisch";s:3:"gag";s:10:"găgăuză";s:3:"gag";s:12:"gagavščina";s:3:"gag";s:10:"gagauzisht";s:3:"gag";s:10:"gagauziska";s:3:"gag";s:9:"gagavuzca";s:3:"gag";s:8:"gagozcha";s:3:"gag";s:3:"gan";s:3:"gan";s:9:"gan-kiina";s:3:"gan";s:14:"gan-chinesesch";s:3:"gan";s:12:"gan Çincesi";s:3:"gan";s:9:"gàidhlig";s:2:"gd";s:17:"gaélicu escocés";s:2:"gd";s:16:"gaèlic escocès";s:2:"gd";s:15:"gaeleg yr alban";s:2:"gd";s:5:"gaela";s:2:"gd";s:17:"gaélico escocés";s:2:"gd";s:5:"gaeli";s:2:"gd";s:19:"gaélique écossais";s:2:"gd";s:14:"gaelic scozês";s:2:"gd";s:17:"gaeilge na halban";s:2:"gd";s:17:"gaelik skotlandia";s:2:"gd";s:16:"gaelico scozzese";s:2:"gd";s:5:"gēlu";s:2:"gd";s:18:"galliku skoċċiż";s:2:"gd";s:17:"gaélico escocês";s:2:"gd";s:20:"gaelico escoces simi";s:2:"gd";s:11:"gaelic scot";s:2:"gd";s:19:"gaelică scoțiană";s:2:"gd";s:7:"galisht";s:2:"gd";s:6:"galego";s:2:"gl";s:8:"galisies";s:2:"gl";s:7:"gallegu";s:2:"gl";s:7:"galizeg";s:2:"gl";s:6:"galski";s:2:"gl";s:6:"gallec";s:2:"gl";s:13:"galicijština";s:2:"gl";s:8:"galisieg";s:2:"gl";s:8:"galicisk";s:2:"gl";s:9:"galizisch";s:2:"gl";s:13:"galicišćina";s:2:"gl";s:9:"galatagbe";s:2:"gl";s:8:"galician";s:2:"gl";s:6:"galega";s:2:"gl";s:7:"gallego";s:2:"gl";s:7:"galeegi";s:2:"gl";s:9:"galiziera";s:2:"gl";s:7:"galicia";s:2:"gl";s:9:"galisiskt";s:2:"gl";s:8:"galicien";s:2:"gl";s:8:"galizian";s:2:"gl";s:8:"galisysk";s:2:"gl";s:9:"gailísis";s:2:"gl";s:9:"gailìsis";s:2:"gl";s:10:"galicijski";s:2:"gl";s:9:"galíciai";s:2:"gl";s:7:"galisia";s:2:"gl";s:10:"galíanska";s:2:"gl";s:9:"galiziano";s:2:"gl";s:9:"galizesch";s:2:"gl";s:7:"galisų";s:2:"gl";s:10:"galisiešu";s:2:"gl";s:9:"gallegjan";s:2:"gl";s:8:"galisisk";s:2:"gl";s:9:"galicisch";s:2:"gl";s:10:"galicyjski";s:2:"gl";s:12:"gallego simi";s:2:"gl";s:10:"galiciană";s:2:"gl";s:13:"galícijčina";s:2:"gl";s:14:"galicijščina";s:2:"gl";s:11:"galiisiyaan";s:2:"gl";s:6:"galike";s:2:"gl";s:9:"galiciska";s:2:"gl";s:10:"galiçyaca";s:2:"gl";s:11:"galitsiycha";s:2:"gl";s:6:"gilaki";s:3:"glk";s:10:"gilačtina";s:3:"glk";s:10:"giliański";s:3:"glk";s:8:"gilanice";s:3:"glk";s:7:"guarani";s:2:"gn";s:8:"guaraní";s:2:"gn";s:7:"gvarani";s:2:"gn";s:12:"guaranština";s:2:"gn";s:9:"guarangbe";s:2:"gn";s:8:"gvarania";s:2:"gn";s:8:"guaranii";s:2:"gn";s:10:"guaraniera";s:2:"gn";s:8:"guaranì";s:2:"gn";s:10:"guaráinis";s:2:"gn";s:13:"guwaraniyanci";s:2:"gn";s:8:"gvaraní";s:2:"gn";s:9:"gvaranių";s:2:"gn";s:7:"gvaranu";s:2:"gn";s:7:"gwarani";s:2:"gn";s:15:"gvaranijščina";s:2:"gn";s:7:"guraani";s:2:"gn";s:10:"guaranisht";s:2:"gn";s:12:"guarani dili";s:2:"gn";s:8:"gorancha";s:2:"gn";s:27:"goan konkani (latin script)";s:8:"gom-latn";s:6:"goties";s:3:"got";s:7:"góticu";s:3:"got";s:6:"gotça";s:3:"got";s:5:"goteg";s:3:"got";s:6:"gotski";s:3:"got";s:6:"gòtic";s:3:"got";s:10:"gótština";s:3:"got";s:6:"gotheg";s:3:"got";s:6:"gotisk";s:3:"got";s:7:"gotisch";s:3:"got";s:11:"gotišćina";s:3:"got";s:6:"gothic";s:3:"got";s:7:"gótico";s:3:"got";s:5:"gooti";s:3:"got";s:6:"gootti";s:3:"got";s:7:"gotique";s:3:"got";s:5:"gotic";s:3:"got";s:7:"gothysk";s:3:"got";s:6:"gotais";s:3:"got";s:10:"gotšćina";s:3:"got";s:4:"gót";s:3:"got";s:6:"gothik";s:3:"got";s:8:"gotneska";s:3:"got";s:6:"gotico";s:3:"got";s:7:"gotesch";s:3:"got";s:5:"gotų";s:3:"got";s:4:"gotu";s:3:"got";s:6:"gotiku";s:3:"got";s:7:"gootsch";s:3:"got";s:8:"gothisch";s:3:"got";s:5:"gocki";s:3:"got";s:7:"gotică";s:3:"got";s:9:"gótčina";s:3:"got";s:10:"gotščina";s:3:"got";s:7:"gotiska";s:3:"got";s:14:"griegu antiguu";s:3:"grc";s:10:"grec antic";s:3:"grc";s:14:"griego antiguo";s:3:"grc";s:11:"grec ancien";s:3:"grc";s:17:"greugais Àrsaidh";s:3:"grc";s:12:"grego antigo";s:3:"grc";s:12:"greco antico";s:3:"grc";s:11:"greek purba";s:3:"grc";s:12:"grieg, antik";s:3:"grc";s:11:"gammelgresk";s:3:"grc";s:11:"gammalgresk";s:3:"grc";s:15:"grego clássico";s:3:"grc";s:13:"grego arcaico";s:3:"grc";s:9:"grec vegl";s:3:"grc";s:13:"greacă veche";s:3:"grc";s:24:"gearmáinis eilvéiseach";s:3:"gsw";s:24:"gearmailtis eilbheiseach";s:3:"gsw";s:20:"germană elvețiană";s:3:"gsw";s:22:"gjermanishte zvicerane";s:3:"gsw";s:10:"goedjarati";s:2:"gu";s:9:"guyaratí";s:2:"gu";s:8:"gujarati";s:2:"gu";s:10:"gudžarati";s:2:"gu";s:16:"gudžarátština";s:2:"gu";s:8:"gwjarati";s:2:"gu";s:16:"gudžaratšćina";s:2:"gu";s:9:"guĝarata";s:2:"gu";s:10:"gujaratera";s:2:"gu";s:8:"gujariti";s:2:"gu";s:14:"gúisearáitis";s:2:"gu";s:11:"guxaratiano";s:2:"gu";s:12:"gudžaratski";s:2:"gu";s:10:"gudzsarati";s:2:"gu";s:10:"gújaratí";s:2:"gu";s:14:"gutscharatesch";s:2:"gu";s:11:"gudžaratų";s:2:"gu";s:10:"gudžaratu";s:2:"gu";s:7:"gujerat";s:2:"gu";s:9:"guġarati";s:2:"gu";s:11:"gudźaracki";s:2:"gu";s:8:"guzerate";s:2:"gu";s:13:"gujarati simi";s:2:"gu";s:14:"gujaratagiella";s:2:"gu";s:15:"gudžarátčina";s:2:"gu";s:16:"gudžaratščina";s:2:"gu";s:9:"gujaraati";s:2:"gu";s:12:"guxharatisht";s:2:"gu";s:11:"güceratça";s:2:"gu";s:10:"gujoratcha";s:2:"gu";s:5:"gaelg";s:2:"gv";s:15:"gaélico manés";s:2:"gv";s:8:"gavaycha";s:3:"haw";s:21:"gornjolužičkosrpski";s:3:"hsb";s:17:"górnoserbšćina";s:3:"hsb";s:13:"goi-sorabiera";s:3:"hsb";s:15:"gornjolužički";s:3:"hsb";s:15:"górnołużycki";s:3:"hsb";s:16:"gornji sorbijski";s:3:"hsb";s:27:"gornja lužiška srbščina";s:3:"hsb";s:7:"gaitcha";s:2:"ht";s:18:"gjuha nderkombtare";s:2:"ie";s:11:"gyapan kasa";s:2:"ja";s:16:"японская";s:2:"ja";s:14:"японски";s:2:"ja";s:9:"gjaponês";s:2:"ja";s:10:"giapponese";s:2:"ja";s:12:"япончо";s:2:"ja";s:8:"япон";s:2:"ja";s:14:"япойнаг";s:2:"ja";s:9:"giapunais";s:2:"ja";s:16:"японский";s:2:"ja";s:16:"японська";s:2:"ja";s:13:"gyabanis kasa";s:2:"jv";s:16:"яванская";s:2:"jv";s:14:"явански";s:2:"jv";s:9:"giavanese";s:2:"jv";s:6:"ява";s:2:"jv";s:16:"яванский";s:2:"jv";s:16:"яванська";s:2:"jv";s:8:"georgies";s:2:"ka";s:7:"gürcü";s:2:"ka";s:9:"gruzijski";s:2:"ka";s:8:"georgià";s:2:"ka";s:13:"gruzínština";s:2:"ka";s:7:"georgeg";s:2:"ka";s:8:"georgisk";s:2:"ka";s:9:"georgisch";s:2:"ka";s:13:"georgišćina";s:2:"ka";s:9:"gɔgiagbe";s:2:"ka";s:8:"georgian";s:2:"ka";s:9:"georgiano";s:2:"ka";s:7:"gruusia";s:2:"ka";s:9:"georgiera";s:2:"ka";s:7:"georgia";s:2:"ka";s:9:"georgiskt";s:2:"ka";s:9:"géorgien";s:2:"ka";s:10:"gjeorgjian";s:2:"ka";s:8:"georgysk";s:2:"ka";s:5:"grúz";s:2:"ka";s:10:"georgíska";s:2:"ka";s:9:"georgesch";s:2:"ka";s:8:"gruzinų";s:2:"ka";s:8:"gruzīnu";s:2:"ka";s:8:"georgsch";s:2:"ka";s:10:"gruziński";s:2:"ka";s:14:"georgiano simi";s:2:"ka";s:10:"georgiană";s:2:"ka";s:13:"georgiagiella";s:2:"ka";s:12:"gruzínčina";s:2:"ka";s:13:"gruzinščina";s:2:"ka";s:11:"gjeorgjisht";s:2:"ka";s:9:"georgiska";s:2:"ka";s:9:"gürcüce";s:2:"ka";s:9:"gruzincha";s:2:"ka";s:9:"gĩkũyũ";s:2:"ki";s:6:"gikuyu";s:2:"ki";s:11:"grenlandès";s:2:"kl";s:11:"grónština";s:2:"kl";s:11:"grønlandsk";s:2:"kl";s:14:"grönländisch";s:2:"kl";s:16:"grönlandšćina";s:2:"kl";s:9:"gronlanda";s:2:"kl";s:12:"groenlandés";s:2:"kl";s:8:"grööni";s:2:"kl";s:12:"groenlandais";s:2:"kl";s:10:"grienlâns";s:2:"kl";s:16:"gröönländisch";s:2:"kl";s:17:"gröndlandšćina";s:2:"kl";s:10:"grönlandi";s:2:"kl";s:11:"grænlenska";s:2:"kl";s:14:"grönlännesch";s:2:"kl";s:13:"grenlandiešu";s:2:"kl";s:14:"gröönlandsch";s:2:"kl";s:10:"groenlands";s:2:"kl";s:11:"grenlandzki";s:2:"kl";s:12:"groenlandês";s:2:"kl";s:16:"groenlandes simi";s:2:"kl";s:12:"grönlandais";s:2:"kl";s:10:"grónčina";s:2:"kl";s:15:"grenlandščina";s:2:"kl";s:13:"grönländska";s:2:"kl";s:14:"grönland dili";s:2:"kl";s:15:"gwara kolońska";s:3:"ksh";s:15:"giudeo-spagnolo";s:3:"lad";s:5:"ganda";s:2:"lg";s:10:"gandština";s:2:"lg";s:11:"gandšćina";s:2:"lg";s:7:"gandera";s:2:"lg";s:15:"ganda-schpraach";s:2:"lg";s:13:"ganda-sprooch";s:2:"lg";s:5:"gandu";s:2:"lg";s:9:"gandčina";s:2:"lg";s:8:"gandisht";s:2:"lg";s:7:"gandcha";s:2:"lg";s:16:"girjedárogiella";s:2:"nb";s:23:"gearmáinis Íochtarach";s:3:"nds";s:14:"germana de jos";s:3:"nds";s:10:"gollandcha";s:2:"nl";s:25:"gearmailtis phennsylvania";s:3:"pdc";s:14:"якуцкая";s:3:"sah";s:14:"якутски";s:3:"sah";s:8:"якут";s:3:"sah";s:16:"якутский";s:3:"sah";s:16:"якутська";s:3:"sah";s:33:"టాచెల్‌హిట్";s:3:"shi";s:12:"gagana samoa";s:2:"sm";s:11:"güney sami";s:3:"sma";s:12:"güney sotho";s:2:"st";s:12:"టేటం";s:3:"tet";s:21:"టాంగాన్";s:2:"to";s:31:"టోక్ పిసిన్";s:3:"tpi";s:21:"టర్కిష్";s:2:"tr";s:15:"టాటర్";s:2:"tt";s:21:"టుంబుకా";s:3:"tum";s:12:"ట్వి";s:2:"tw";s:27:"టువినియన్";s:3:"tyv";s:15:"ဇိုစာ";s:2:"xh";s:8:"giúdais";s:2:"yi";s:17:"geleneksel Çince";s:7:"zh-hant";s:12:"ဇူလူ";s:2:"zu";s:23:"għarbi standard modern";s:6:"ar-001";s:12:"టైటా";s:3:"dav";s:12:"ဇာမာ";s:3:"dje";s:14:"gammelegyptisk";s:3:"egy";s:14:"gammalegyptisk";s:3:"egy";s:3:"gaa";s:3:"gaa";s:2:"ga";s:3:"gaa";s:8:"gaština";s:3:"gaa";s:10:"ga-sprache";s:3:"gaa";s:6:"gɛgbe";s:3:"gaa";s:10:"ga-sprooch";s:3:"gaa";s:3:"gã";s:3:"gaa";s:5:"gusii";s:3:"guz";s:5:"gusí";s:3:"guz";s:8:"gusiiera";s:3:"guz";s:6:"guszii";s:3:"guz";s:13:"gusii-sprooch";s:3:"guz";s:4:"gusi";s:3:"guz";s:12:"gusijščina";s:3:"guz";s:7:"gusisht";s:3:"guz";s:6:"guzcha";s:3:"guz";s:16:"grænhöfðeyska";s:3:"kea";s:22:"gbegbɔgblɔ sɔgbɔwo";s:3:"mul";s:14:"güney ndebele";s:2:"nr";s:11:"gao-songhay";s:3:"ses";s:12:"టెసో";s:3:"teo";s:21:"టసావాఖ్";s:3:"twq";s:18:"gbegbɔgblɔ manya";s:3:"und";s:24:"geen linguistiese inhoud";s:3:"zxx";s:21:"gbegbɔgblɔ manɔmee";s:3:"zxx";s:26:"gjin linguïstyske ynhâld";s:3:"zxx";s:25:"gan ábhar teangeolaíoch";s:3:"zxx";s:26:"geen linguïstische inhoud";s:3:"zxx";s:13:"galleg kanada";s:5:"fr-ca";s:11:"galleg suis";s:5:"fr-ch";s:4:"geez";s:3:"gez";s:5:"gezeg";s:3:"gez";s:5:"gueez";s:3:"gez";s:7:"ge’ez";s:3:"gez";s:6:"guèze";s:3:"gez";s:4:"gís";s:3:"gez";s:3:"gyz";s:3:"gez";s:5:"gēzu";s:3:"gez";s:3:"ges";s:3:"gez";s:4:"gyyz";s:3:"gez";s:18:"టీగ్రె";s:3:"tig";s:14:"güney altayca";s:3:"alt";s:13:"gergo chinook";s:3:"chn";s:12:"gammelfransk";s:3:"fro";s:12:"gammalfransk";s:3:"fro";s:4:"gayo";s:3:"gay";s:4:"gajo";s:3:"gay";s:4:"gaio";s:3:"gay";s:5:"gajó";s:3:"gay";s:10:"gajščina";s:3:"gay";s:5:"gbaya";s:3:"gba";s:5:"gbaja";s:3:"gba";s:5:"gbaia";s:3:"gba";s:13:"gbaya-sprache";s:3:"gba";s:13:"gbaya-sprooch";s:3:"gba";s:5:"gbaju";s:3:"gba";s:11:"gbajščina";s:3:"gba";s:10:"gilbertés";s:3:"gil";s:9:"gilberteg";s:3:"gil";s:11:"gilbertški";s:3:"gil";s:10:"gilbertès";s:3:"gil";s:12:"gilbertesisk";s:3:"gil";s:13:"gilbertesisch";s:3:"gil";s:10:"gilbertgbe";s:3:"gil";s:10:"gilbertese";s:3:"gil";s:10:"gilbertais";s:3:"gil";s:11:"gilberteesk";s:3:"gil";s:10:"gilbertski";s:3:"gil";s:7:"gilbert";s:3:"gil";s:9:"gilberska";s:3:"gil";s:13:"gilbertesesch";s:3:"gil";s:10:"gilbertjan";s:3:"gil";s:12:"gilberteesch";s:3:"gil";s:10:"gilbertees";s:3:"gil";s:13:"gilbertański";s:3:"gil";s:10:"gilbertês";s:3:"gil";s:11:"gilbertină";s:3:"gil";s:11:"gilbertiska";s:3:"gil";s:26:"germană mijlocie înaltă";s:3:"gmh";s:14:"gammelhøytysk";s:3:"goh";s:14:"gammalhøgtysk";s:3:"goh";s:23:"germană veche înaltă";s:3:"goh";s:5:"gondi";s:3:"gon";s:11:"góndština";s:3:"gon";s:13:"gondi-sprache";s:3:"gon";s:6:"gondí";s:3:"gon";s:13:"gondi-sprooch";s:3:"gon";s:13:"gondu valodas";s:3:"gon";s:10:"góndčina";s:3:"gon";s:9:"gorontalo";s:3:"gor";s:10:"gorontaló";s:3:"gor";s:9:"gorontalu";s:3:"gor";s:15:"gorontalščina";s:3:"gor";s:5:"grebo";s:3:"grb";s:13:"grebo-sprache";s:3:"grb";s:6:"grebó";s:3:"grb";s:6:"gerbó";s:3:"grb";s:5:"gerbo";s:3:"grb";s:13:"grebo-sprooch";s:3:"grb";s:11:"grebščina";s:3:"grb";s:9:"gwichʼin";s:3:"gwi";s:10:"gwich’in";s:3:"gwi";s:7:"gwichin";s:3:"gwi";s:9:"gvitšini";s:3:"gwi";s:8:"gwitšin";s:3:"gwi";s:7:"gvicsin";s:3:"gwi";s:8:"gvísín";s:3:"gwi";s:8:"gvičino";s:3:"gwi";s:7:"gwiċin";s:3:"gwi";s:8:"gvich'in";s:3:"gwi";s:17:"gyðingapersneska";s:3:"jpr";s:15:"giudeo persiano";s:3:"jpr";s:15:"giudaic-persian";s:3:"jpr";s:17:"gyðingaarabíska";s:3:"jrb";s:12:"giudeo arabo";s:3:"jrb";s:12:"giudaic-arab";s:3:"jrb";s:13:"gárjilgiella";s:3:"krl";s:24:"gaèlic irlandès mitjà";s:3:"mga";s:15:"gwyddeleg canol";s:3:"mga";s:11:"gammelnorsk";s:3:"non";s:11:"gammalnorsk";s:3:"non";s:13:"gammelpersisk";s:3:"peo";s:13:"gammalpersisk";s:3:"peo";s:18:"gammelprovençalsk";s:3:"pro";s:18:"gammalprovençalsk";s:3:"pro";s:10:"gammelirsk";s:3:"sga";s:10:"gammalirsk";s:3:"sga";s:15:"టింనే";s:3:"tem";s:18:"టెరెనో";s:3:"ter";s:12:"టివ్";s:3:"tiv";s:24:"టోకెలావ్";s:3:"tkl";s:21:"టామషేక్";s:3:"tmh";s:18:"టువాలు";s:3:"tvl";s:4:"яо";s:3:"yao";s:10:"япезе";s:3:"yap";s:4:"яп";s:3:"yap";s:10:"янбан";s:3:"yav";s:12:"янгбен";s:3:"yav";s:43:"టునీషియా అరబిక్";s:3:"aeb";s:7:"ghomala";s:3:"bbj";s:10:"ghomalagbe";s:3:"bbj";s:10:"ghomala’";s:3:"bbj";s:6:"gomala";s:3:"bbj";s:12:"ghomálá’";s:3:"bbj";s:8:"ghomalų";s:3:"bbj";s:6:"gomalu";s:3:"bbj";s:5:"gabri";s:3:"gbz";s:12:"goan konkani";s:3:"gom";s:11:"goa-konkani";s:3:"gom";s:11:"goankonkani";s:3:"gom";s:12:"goan-konkani";s:3:"gom";s:13:"goa konkanių";s:3:"gom";s:11:"goa konkani";s:3:"gom";s:15:"goa konkanicesi";s:3:"gom";s:7:"gurenne";s:3:"gur";s:6:"gurune";s:3:"gur";s:18:"ట్యాప్";s:3:"kcg";s:32:"goan konkani (devanagari script)";s:8:"gom-deva";s:29:"goan konkani (kannada script)";s:8:"gom-knda";s:31:"goan konkani (malayalam script)";s:8:"gom-mlym";s:28:"goan konkani (arabic script)";s:8:"gom-arab";s:19:"germaansche spraken";s:3:"gem";s:15:"germanski jezik";s:3:"gem";}i:466;a:2:{s:27:"ゲグ・アルバニア語";s:3:"aln";s:12:"ゲエズ語";s:3:"gez";}i:75;a:113:{s:27:"гешки албански";s:3:"aln";s:18:"германски";s:2:"de";s:12:"герман";s:2:"de";s:14:"грэцкая";s:2:"el";s:12:"гръцки";s:2:"el";s:17:"грек тілі";s:2:"el";s:12:"грекче";s:2:"el";s:10:"грчки";s:2:"el";s:8:"грек";s:2:"el";s:18:"греческий";s:2:"el";s:14:"грецька";s:2:"el";s:20:"гішпанская";s:2:"es";s:16:"гагаузки";s:3:"gag";s:12:"гагауз";s:3:"gag";s:16:"гагаузча";s:3:"gag";s:16:"гагауски";s:3:"gag";s:10:"гагуз";s:3:"gag";s:20:"гагаузский";s:3:"gag";s:18:"гагаузька";s:3:"gag";s:6:"ган";s:3:"gan";s:16:"гэльский";s:2:"gd";s:18:"гаельська";s:2:"gd";s:22:"галісійская";s:2:"gl";s:22:"галіцыйская";s:2:"gl";s:20:"галисийски";s:2:"gl";s:8:"гали";s:2:"gl";s:18:"галисияча";s:2:"gl";s:18:"галициски";s:2:"gl";s:10:"галик";s:2:"gl";s:22:"галисийский";s:2:"gl";s:20:"галицијски";s:2:"gl";s:22:"галісійська";s:2:"gl";s:16:"гилански";s:3:"glk";s:14:"гуарані";s:2:"gn";s:14:"гуарани";s:2:"gn";s:12:"гуараш";s:2:"gn";s:18:"гварански";s:2:"gn";s:14:"гварани";s:2:"gn";s:18:"готически";s:3:"got";s:12:"готски";s:3:"got";s:14:"готский";s:3:"got";s:14:"готська";s:3:"got";s:14:"гуяраці";s:2:"gu";s:18:"гуджарати";s:2:"gu";s:18:"гужаратча";s:2:"gu";s:16:"гуџарати";s:2:"gu";s:16:"гужарати";s:2:"gu";s:18:"гуджараті";s:2:"gu";s:10:"гавай";s:3:"haw";s:14:"гавайча";s:3:"haw";s:18:"гавайский";s:3:"haw";s:18:"гавайська";s:3:"haw";s:12:"гіндзі";s:2:"hi";s:10:"гінді";s:2:"hi";s:24:"горнолужишки";s:3:"hsb";s:24:"горнолужички";s:3:"hsb";s:37:"горњи лужичкосрпски";s:3:"hsb";s:12:"гаитян";s:2:"ht";s:14:"гаитиче";s:2:"ht";s:10:"гаити";s:2:"ht";s:20:"гаитянский";s:2:"ht";s:20:"гаїтянська";s:2:"ht";s:12:"гереро";s:2:"hz";s:20:"грузінская";s:2:"ka";s:18:"грузински";s:2:"ka";s:21:"грузин тілі";s:2:"ka";s:16:"грузинче";s:2:"ka";s:16:"грузиски";s:2:"ka";s:8:"гүрж";s:2:"ka";s:18:"гуырдзиаг";s:2:"ka";s:20:"грузинский";s:2:"ka";s:18:"грузијски";s:2:"ka";s:20:"грузинська";s:2:"ka";s:24:"грэнляндзкая";s:2:"kl";s:22:"гренландски";s:2:"kl";s:24:"гренландский";s:2:"kl";s:10:"ганда";s:2:"lg";s:14:"гандача";s:2:"lg";s:20:"галандская";s:2:"nl";s:18:"голландча";s:2:"nl";s:14:"голланд";s:2:"nl";s:22:"голландский";s:2:"nl";s:22:"голландська";s:2:"nl";s:12:"ᏓᎶᏂᎨ";s:2:"zh";s:4:"га";s:3:"gaa";s:10:"гусии";s:3:"guz";s:12:"гусиче";s:3:"guz";s:8:"гуси";s:3:"guz";s:8:"гузы";s:3:"guz";s:10:"гусії";s:3:"guz";s:8:"гииз";s:3:"gez";s:6:"гиз";s:3:"gez";s:8:"геэз";s:3:"gez";s:8:"гєез";s:3:"gez";s:8:"гайо";s:3:"gay";s:8:"гајо";s:3:"gay";s:8:"гбая";s:3:"gba";s:10:"гбаја";s:3:"gba";s:10:"гбайя";s:3:"gba";s:20:"гилбертски";s:3:"gil";s:24:"гилбертански";s:3:"gil";s:24:"гильбертский";s:3:"gil";s:24:"гільбертська";s:3:"gil";s:10:"гонди";s:3:"gon";s:10:"гонді";s:3:"gon";s:18:"горонтало";s:3:"gor";s:10:"гребо";s:3:"grb";s:12:"гвичин";s:3:"gwi";s:18:"гвичински";s:3:"gwi";s:12:"гомала";s:3:"bbj";s:14:"гхомала";s:3:"bbj";s:29:"гоански конкани";s:3:"gom";s:14:"гвахиро";s:3:"guc";}i:648;a:94:{s:36:"เกกแอลเบเนีย";s:3:"aln";s:21:"เบลารุส";s:2:"be";s:21:"เบงกาลี";s:2:"bn";s:18:"เบรตัน";s:2:"br";s:15:"เชเชน";s:2:"ce";s:12:"เซบู";s:3:"ceb";s:21:"เชอโรกี";s:3:"chr";s:21:"เชเยนเน";s:3:"chy";s:36:"เคิร์ดโซรานี";s:3:"ckb";s:12:"เช็ก";s:2:"cs";s:36:"เชอร์ชสลาวิก";s:2:"cu";s:15:"เวลส์";s:2:"cy";s:24:"เดนมาร์ก";s:2:"da";s:21:"เยอรมัน";s:2:"de";s:48:"เยอรมัน - ออสเตรีย";s:5:"de-at";s:45:"เยอรมันสูง (สวิส)";s:5:"de-ch";s:12:"เอเว";s:2:"ee";s:24:"เอมีเลีย";s:3:"egl";s:33:"เอสเปอรันโต";s:2:"eo";s:27:"เอสโตเนีย";s:2:"et";s:42:"เอกซ์เตรมาดูรา";s:3:"ext";s:27:"เปอร์เซีย";s:2:"fa";s:33:"เยอรมันสวิส";s:3:"gsw";s:15:"เฮาชา";s:2:"ha";s:12:"เฮติ";s:2:"ht";s:18:"เฮเรโร";s:2:"hz";s:21:"เสฉวนยิ";s:2:"ii";s:33:"เคอร์มานิกิ";s:3:"kiu";s:12:"เขมร";s:2:"km";s:18:"เกาหลี";s:2:"ko";s:18:"เคิร์ด";s:2:"ku";s:24:"เลซเกียน";s:3:"lez";s:15:"เมารี";s:2:"mi";s:12:"엘즈야어";s:3:"myv";s:27:"เอียร์ซยา";s:3:"myv";s:60:"เยอรมันต่ำ - แซกซอนต่ำ";s:3:"nds";s:15:"เนปาล";s:2:"ne";s:18:"เนวาร์";s:3:"new";s:21:"เนียนจา";s:2:"ny";s:57:"เยอรมันเพนซิลเวเนีย";s:3:"pdc";s:27:"เพลาท์ดิช";s:3:"pdt";s:48:"เยอรมันพาลาทิเนต";s:3:"pfl";s:12:"เซรี";s:3:"sei";s:49:"เซอร์โบ-โครเอเชีย";s:2:"sh";s:27:"เซอร์เบีย";s:2:"sr";s:18:"เตลูกู";s:2:"te";s:15:"เตตุม";s:3:"tet";s:42:"เติร์กเมนิสถาน";s:2:"tk";s:15:"เวนดา";s:2:"ve";s:21:"เวเนโต้";s:3:"vec";s:15:"เวปส์";s:3:"vep";s:24:"เวียดนาม";s:2:"vi";s:39:"เฟลมิชตะวันตก";s:3:"vls";s:40:"เมน-ฟรานโกเนีย";s:3:"vmf";s:27:"เมเกรเลีย";s:3:"xmf";s:21:"เซแลนด์";s:3:"zea";s:15:"เบมบา";s:3:"bem";s:12:"เบนา";s:3:"bez";s:18:"เอ็มบู";s:3:"ebu";s:12:"เมรู";s:3:"mer";s:12:"เมตา";s:3:"mgo";s:45:"เอ็นเดเบเลเหนือ";s:2:"nd";s:18:"เฟลมิช";s:5:"nl-be";s:18:"เอ็นโก";s:3:"nqo";s:39:"เอ็นเดเบเลใต้";s:2:"nr";s:18:"เนือร์";s:3:"nus";s:27:"เนียนโกเล";s:3:"nyn";s:12:"เซนา";s:3:"seh";s:12:"เตโซ";s:3:"teo";s:12:"เบจา";s:3:"bej";s:24:"เดลาแวร์";s:3:"del";s:9:"엘람어";s:3:"elx";s:42:"เยอรมันสูงกลาง";s:3:"gmh";s:45:"เยอรมันสูงโบราณ";s:3:"goh";s:15:"เกรโบ";s:3:"grb";s:15:"เมนเด";s:3:"men";s:42:"เนวาร์ดั้งเดิม";s:3:"nwc";s:27:"เนียมเวซี";s:3:"nym";s:42:"เปอร์เซียโบราณ";s:3:"peo";s:18:"เซลคุป";s:3:"sel";s:18:"เซแรร์";s:3:"srr";s:18:"เทเรโน";s:3:"ter";s:12:"เย้า";s:3:"yao";s:18:"เซนากา";s:3:"zen";s:18:"เบตาวี";s:3:"bew";s:21:"เมดุมบา";s:3:"byv";s:21:"เกินยาง";s:3:"ken";s:21:"เคนก่าง";s:3:"kgp";s:24:"เม็นตาไว";s:3:"mwv";s:27:"เสาราษฏร์";s:3:"saz";s:18:"เซนิกา";s:3:"see";s:15:"เยมบา";s:3:"ybb";s:24:"เซลายาร์";s:3:"sly";s:24:"เหงงกาตุ";s:3:"yrl";}i:995;a:2:{s:24:"蓋格阿爾巴尼亞文";s:3:"aln";s:12:"蓋楚瓦文";s:2:"qu";}i:703;a:11:{s:24:"એમ્હારિક";s:2:"am";s:27:"એરોકૈનિયન";s:3:"arn";s:33:"એસ્પેરાન્ટો";s:2:"eo";s:27:"એસ્ટોનિયન";s:2:"et";s:18:"એર્ઝયા";s:3:"myv";s:15:"એકોલી";s:3:"ach";s:12:"એફિક";s:3:"efi";s:15:"એન’કો";s:3:"nqo";s:18:"એકાજુક";s:3:"eka";s:21:"એલામાઇટ";s:3:"elx";s:9:"岗德文";s:3:"gon";}i:516;a:6:{s:12:"암하라어";s:2:"am";s:15:"ヤクート語";s:3:"sah";s:9:"분조어";s:3:"vun";s:9:"ヤオ語";s:3:"yao";s:12:"ヤップ語";s:3:"yap";s:15:"ヤンベン語";s:3:"yav";}i:198;a:2:{s:8:"Ænglisc";s:3:"ang";s:18:"Үзбиэктии";s:2:"uz";}i:89;a:263:{s:30:"стараанглійская";s:3:"ang";s:30:"стараангельская";s:3:"ang";s:28:"староанглийски";s:3:"ang";s:26:"староанглиски";s:3:"ang";s:30:"староанглийский";s:3:"ang";s:14:"себуано";s:3:"ceb";s:18:"себуански";s:3:"ceb";s:20:"себуанська";s:3:"ceb";s:21:"сорани тілі";s:3:"ckb";s:21:"сорани курд";s:3:"ckb";s:31:"сорански курдски";s:3:"ckb";s:21:"сорани күрд";s:3:"ckb";s:29:"сорани курдский";s:3:"ckb";s:27:"сорани курдски";s:3:"ckb";s:53:"словѣньскъ / ⰔⰎⰑⰂⰡⰐⰠⰔⰍⰟ";s:2:"cu";s:29:"северен фризски";s:3:"frr";s:30:"севернофризиски";s:3:"frr";s:24:"старагрэцкая";s:3:"grc";s:34:"старажытнагрэцкая";s:3:"grc";s:20:"старогрчки";s:3:"grc";s:14:"сомихаг";s:2:"hy";s:21:"съчуански и";s:2:"ii";s:24:"сычуан и тілі";s:2:"ii";s:14:"сычуань";s:2:"ii";s:17:"сечуан ји";s:2:"ii";s:14:"сичуань";s:2:"ii";s:16:"солонгос";s:2:"ko";s:23:"северен сото";s:3:"nso";s:25:"сото северный";s:3:"nso";s:25:"сото північна";s:3:"nso";s:16:"санскрыт";s:2:"sa";s:24:"санкскритски";s:2:"sa";s:16:"санскрит";s:2:"sa";s:20:"санскритче";s:2:"sa";s:17:"саха тыла";s:3:"sah";s:14:"сантали";s:3:"sat";s:22:"сантальська";s:3:"sat";s:18:"сардински";s:2:"sc";s:20:"сардинский";s:2:"sc";s:20:"сардинська";s:2:"sc";s:22:"сицилиански";s:3:"scn";s:24:"сицилијански";s:3:"scn";s:22:"сицилийский";s:3:"scn";s:22:"сицилійська";s:3:"scn";s:12:"сіндхі";s:2:"sd";s:12:"синдхи";s:2:"sd";s:16:"синдхиче";s:2:"sd";s:10:"синди";s:2:"sd";s:35:"сасарски сардински";s:3:"sdc";s:28:"северносаамски";s:2:"se";s:27:"солтүстік сами";s:2:"se";s:30:"севернолапонски";s:2:"se";s:30:"северносаамский";s:2:"se";s:23:"северни сами";s:2:"se";s:33:"саамська північна";s:2:"se";s:8:"сери";s:3:"sei";s:10:"санго";s:2:"sg";s:14:"сангочо";s:2:"sg";s:20:"самогитски";s:3:"sgs";s:33:"сербска-харвацкая";s:2:"sh";s:32:"сэрбскахарвацкая";s:2:"sh";s:28:"сърбохърватски";s:2:"sh";s:20:"сербхорват";s:2:"sh";s:21:"серб-хорват";s:2:"sh";s:28:"српскохрватски";s:2:"sh";s:34:"сербскохорватский";s:2:"sh";s:37:"сербсько-хорватська";s:2:"sh";s:22:"сінгальская";s:2:"si";s:18:"синхалски";s:2:"si";s:12:"сингал";s:2:"si";s:18:"сингалача";s:2:"si";s:14:"синхала";s:2:"si";s:22:"сингальский";s:2:"si";s:22:"сингальська";s:2:"si";s:41:"спрошчаная ангельская";s:6:"simple";s:18:"славацкая";s:2:"sk";s:16:"словашки";s:2:"sk";s:12:"словак";s:2:"sk";s:16:"словакча";s:2:"sk";s:16:"словачки";s:2:"sk";s:18:"словацкий";s:2:"sk";s:18:"словацька";s:2:"sk";s:20:"славенская";s:2:"sl";s:18:"словенски";s:2:"sl";s:12:"словен";s:2:"sl";s:16:"словенче";s:2:"sl";s:20:"словенечки";s:2:"sl";s:20:"словенский";s:2:"sl";s:20:"словеначки";s:2:"sl";s:20:"словенська";s:2:"sl";s:18:"самоански";s:2:"sm";s:20:"самоанский";s:2:"sm";s:20:"самоанська";s:2:"sm";s:29:"саамский (южный)";s:3:"sma";s:33:"саамська південна";s:3:"sma";s:22:"самалійская";s:2:"so";s:20:"сомалийски";s:2:"so";s:12:"сомали";s:2:"so";s:16:"сомаличе";s:2:"so";s:18:"сомалиски";s:2:"so";s:16:"сомалски";s:2:"so";s:12:"сомалі";s:2:"so";s:21:"српски / srpski";s:2:"sr";s:16:"сербская";s:2:"sr";s:16:"сэрбская";s:2:"sr";s:14:"сръбски";s:2:"sr";s:17:"серб тілі";s:2:"sr";s:12:"сербче";s:2:"sr";s:12:"српски";s:2:"sr";s:8:"серб";s:2:"sr";s:16:"сербский";s:2:"sr";s:16:"сербська";s:2:"sr";s:34:"српски (ћирилица)‎";s:5:"sr-ec";s:35:"сэрбская (кірыліца)";s:5:"sr-ec";s:35:"сэрбская (лацініца)";s:5:"sr-el";s:23:"сранан тонго";s:3:"srn";s:25:"срански тонго";s:3:"srn";s:10:"суази";s:2:"ss";s:10:"свати";s:2:"ss";s:10:"свази";s:2:"ss";s:14:"сісваті";s:2:"ss";s:12:"сесуто";s:2:"st";s:12:"сесото";s:2:"st";s:19:"сото южный";s:2:"st";s:25:"сото південна";s:2:"st";s:18:"суданская";s:2:"su";s:18:"сундански";s:2:"su";s:10:"судан";s:2:"su";s:16:"сунданча";s:2:"su";s:14:"сундски";s:2:"su";s:12:"сундан";s:2:"su";s:20:"сунданский";s:2:"su";s:16:"судански";s:2:"su";s:20:"сунданська";s:2:"su";s:14:"суахілі";s:2:"sw";s:14:"суахили";s:2:"sw";s:18:"суахиличе";s:2:"sw";s:14:"свахили";s:2:"sw";s:57:"среднеатласский тамазигхтский";s:3:"tzm";s:39:"спрошчаная кітайская";s:7:"zh-hans";s:56:"съвременен стандартен арабски";s:6:"ar-001";s:25:"стандарт араб";s:6:"ar-001";s:52:"сучасна стандартна арабська";s:6:"ar-001";s:28:"стараэгіпецкая";s:3:"egy";s:28:"староегипетски";s:3:"egy";s:29:"северен ндебеле";s:2:"nd";s:31:"солтүстік ндебел";s:2:"nd";s:31:"северный ндебели";s:2:"nd";s:29:"северни ндебеле";s:2:"nd";s:14:"самбуру";s:3:"saq";s:18:"самбуруча";s:3:"saq";s:14:"самбүрү";s:3:"saq";s:10:"сангу";s:3:"sbp";s:14:"сангуча";s:3:"sbp";s:10:"сангү";s:3:"sbp";s:8:"сена";s:3:"seh";s:12:"сенача";s:3:"seh";s:25:"саамська луле";s:3:"smj";s:27:"саамська інарі";s:3:"smn";s:25:"сколт-саамски";s:3:"sms";s:19:"сколт саам";s:3:"sms";s:25:"сколт саамиче";s:3:"sms";s:33:"сколтски лапонски";s:3:"sms";s:19:"сколт сами";s:3:"sms";s:29:"скольт-саамский";s:3:"sms";s:29:"саамська скольт";s:3:"sms";s:8:"сога";s:3:"xog";s:12:"согача";s:3:"xog";s:58:"стандартен марокански тамазигт";s:3:"zgh";s:64:"стандарден марокански тамазигтски";s:3:"zgh";s:58:"стандардни марокански тамазигт";s:3:"zgh";s:66:"стандартна марокканська берберська";s:3:"zgh";s:12:"сидамо";s:3:"sid";s:12:"сидама";s:3:"sid";s:12:"сідамо";s:3:"sid";s:14:"сиксика";s:3:"bla";s:14:"сіксіка";s:3:"bla";s:12:"слейви";s:3:"den";s:12:"слејви";s:3:"den";s:20:"славянский";s:3:"den";s:10:"слейв";s:3:"den";s:45:"средновековен холандски";s:3:"dum";s:30:"среднохоландски";s:3:"dum";s:38:"средненидерландский";s:3:"dum";s:42:"середньонідерландська";s:3:"dum";s:45:"средновековен английски";s:3:"enm";s:28:"средноанглиски";s:3:"enm";s:32:"среднеанглийский";s:3:"enm";s:36:"середньоанглійська";s:3:"enm";s:41:"средновековен френски";s:3:"frm";s:30:"среднофранцуски";s:3:"frm";s:34:"среднефранцузский";s:3:"frm";s:36:"середньофранцузька";s:3:"frm";s:32:"старафранцузская";s:3:"fro";s:24:"старофренски";s:3:"fro";s:28:"старофранцуски";s:3:"fro";s:32:"старофранцузский";s:3:"fro";s:39:"средновековен немски";s:3:"gmh";s:40:"средногорногермански";s:3:"gmh";s:40:"средневерхненемецкий";s:3:"gmh";s:46:"середньоверхньонімецька";s:3:"gmh";s:34:"старовисоконемски";s:3:"goh";s:38:"старогорногермански";s:3:"goh";s:45:"средновековен ирландски";s:3:"mga";s:22:"средноирски";s:3:"mga";s:32:"среднеирландский";s:3:"mga";s:36:"середньоірландська";s:3:"mga";s:30:"старанарвежская";s:3:"non";s:28:"старанарвэская";s:3:"non";s:28:"старонорвежски";s:3:"non";s:26:"старонордиски";s:3:"non";s:30:"старонорвежский";s:3:"non";s:26:"старотурецкий";s:3:"ota";s:28:"средноперсиски";s:3:"pal";s:30:"стараперсідская";s:3:"peo";s:30:"старапэрсыдзкая";s:3:"peo";s:28:"староперсийски";s:3:"peo";s:26:"староперсиски";s:3:"peo";s:30:"староперсидский";s:3:"peo";s:38:"стараправансальская";s:3:"pro";s:34:"старопровансалски";s:3:"pro";s:38:"старопровансальский";s:3:"pro";s:12:"сандве";s:3:"sad";s:14:"сандаве";s:3:"sad";s:43:"самаритански арамейски";s:3:"sam";s:41:"самарјански арамејски";s:3:"sam";s:47:"самаритянский арамейский";s:3:"sam";s:47:"самаритянська арамейська";s:3:"sam";s:10:"сасак";s:3:"sas";s:14:"сасачки";s:3:"sas";s:12:"сасаки";s:3:"sas";s:18:"сасакська";s:3:"sas";s:12:"селкуп";s:3:"sel";s:18:"селкупски";s:3:"sel";s:22:"селькупский";s:3:"sel";s:22:"селькупська";s:3:"sel";s:30:"стараірландская";s:3:"sga";s:28:"староирландски";s:3:"sga";s:20:"староирски";s:3:"sga";s:30:"староирландский";s:3:"sga";s:14:"сонинке";s:3:"snk";s:14:"сонінке";s:3:"snk";s:18:"согдийски";s:3:"sog";s:20:"согдийский";s:3:"sog";s:20:"согдійська";s:3:"sog";s:10:"серер";s:3:"srr";s:12:"сукума";s:3:"suk";s:8:"сусу";s:3:"sus";s:16:"сумерски";s:3:"sux";s:35:"сирійська класична";s:3:"syc";s:16:"сирийски";s:3:"syr";s:14:"сириски";s:3:"syr";s:18:"сирийский";s:3:"syr";s:18:"сирійська";s:3:"syr";s:18:"сапатэкаў";s:3:"zap";s:22:"сапотекский";s:3:"zap";s:22:"сапотекська";s:3:"zap";s:10:"сјанг";s:3:"hsn";s:18:"саураштра";s:3:"saz";s:12:"сенека";s:3:"see";s:8:"сахо";s:3:"ssy";s:25:"сэміцкая мова";s:3:"sem";s:20:"селајарски";s:3:"sly";}i:474;a:26:{s:40:"প্রাচীন ইংরেজী";s:3:"ang";s:43:"পশ্চিম ফ্রিসিয়";s:2:"fy";s:37:"প্রাচীন গ্রীক";s:3:"grc";s:24:"পাঞ্জাবী";s:2:"pa";s:33:"পাঙ্গাসিনান";s:3:"pag";s:30:"পাম্পাঙ্গা";s:3:"pam";s:39:"পাপিয়ামেন্টো";s:3:"pap";s:12:"পালি";s:2:"pi";s:15:"পোলিশ";s:2:"pl";s:18:"পাশ্তু";s:2:"ps";s:24:"পর্তুগীজ";s:2:"pt";s:15:"ズールー語";s:2:"zu";s:43:"প্রাচীন মিশরীয়";s:3:"egy";s:37:"প্রাচীন ফরাসি";s:3:"fro";s:40:"পূর্ব ফ্রিসিয়";s:3:"frs";s:59:"প্রাচীন উচ্চ জার্মানি";s:3:"goh";s:34:"প্রাচীন নর্স";s:3:"non";s:46:"প্রাচীন নেওয়ারী";s:3:"nwc";s:24:"পাহ্লাভি";s:3:"pal";s:33:"পালায়ুয়ান";s:3:"pau";s:40:"প্রাচীন ফার্সি";s:3:"peo";s:36:"পোহ্নপেইয়ান";s:3:"pon";s:52:"প্রাচীন প্রোভেনসাল";s:3:"pro";s:37:"প্রাচীন আইরিশ";s:3:"sga";s:37:"প্রাচীন সিরিও";s:3:"syc";s:9:"ズニ語";s:3:"zun";}i:104;a:391:{s:10:"hensaozneg";s:3:"ang";s:11:"hen saesneg";s:3:"ang";s:12:"hviderussisk";s:2:"be";s:13:"hvitarussiskt";s:2:"be";s:15:"hvítrússneska";s:2:"be";s:12:"hviterussisk";s:2:"be";s:11:"harshen cak";s:2:"cs";s:12:"hen slafoneg";s:2:"cu";s:6:"helene";s:2:"el";s:7:"hispana";s:2:"es";s:9:"hispaania";s:2:"es";s:11:"hiszpański";s:2:"es";s:13:"hi xi estonia";s:2:"et";s:16:"höglandsskotska";s:2:"gd";s:15:"hencʼhresianeg";s:3:"grc";s:8:"hen roeg";s:3:"grc";s:5:"hausa";s:2:"ha";s:6:"haousa";s:2:"ha";s:6:"haussa";s:2:"ha";s:9:"hauština";s:2:"ha";s:5:"hawsa";s:2:"ha";s:8:"hausagbe";s:2:"ha";s:6:"haŭsa";s:2:"ha";s:12:"hawsaŋkoore";s:2:"ha";s:7:"haoussa";s:2:"ha";s:7:"hásais";s:2:"ha";s:6:"hausza";s:2:"ha";s:5:"hása";s:2:"ha";s:6:"haußa";s:2:"ha";s:6:"hausų";s:2:"ha";s:5:"hausu";s:2:"ha";s:7:"haúça";s:2:"ha";s:7:"hauçá";s:2:"ha";s:10:"hausa simi";s:2:"ha";s:12:"haussagiella";s:2:"ha";s:7:"haüsä";s:2:"ha";s:10:"havščina";s:2:"ha";s:8:"hausisht";s:2:"ha";s:5:"hakka";s:3:"hak";s:11:"hakka-kiina";s:3:"hak";s:8:"haicéis";s:3:"hak";s:16:"hakka-chinesesch";s:3:"hak";s:14:"hakka Çincesi";s:3:"hak";s:7:"hawai`i";s:3:"haw";s:8:"hawaiies";s:3:"haw";s:8:"hawaianu";s:3:"haw";s:5:"havay";s:3:"haw";s:7:"hawaieg";s:3:"haw";s:8:"havajski";s:3:"haw";s:7:"hawaià";s:3:"haw";s:11:"havajština";s:3:"haw";s:8:"hawäieg";s:3:"haw";s:10:"hawaiiansk";s:3:"haw";s:9:"hawaiisch";s:3:"haw";s:13:"hawaiišćina";s:3:"haw";s:8:"hawaigbe";s:3:"haw";s:8:"hawaiian";s:3:"haw";s:6:"havaja";s:3:"haw";s:8:"hawaiano";s:3:"haw";s:5:"havai";s:3:"haw";s:9:"hawaiiera";s:3:"haw";s:7:"havaiji";s:3:"haw";s:11:"hawaiianskt";s:3:"haw";s:8:"hawaïen";s:3:"haw";s:11:"hawaïaansk";s:3:"haw";s:7:"haváis";s:3:"haw";s:12:"hawaiianisch";s:3:"haw";s:6:"hawaii";s:3:"haw";s:9:"havaíska";s:3:"haw";s:12:"hauajaanesch";s:3:"haw";s:9:"hawaiesch";s:3:"haw";s:12:"havajiečių";s:3:"haw";s:10:"havajiešu";s:3:"haw";s:8:"hawaiisk";s:3:"haw";s:12:"hawaiiaansch";s:3:"haw";s:10:"hawaïaans";s:3:"haw";s:8:"hawajski";s:3:"haw";s:8:"havaiano";s:3:"haw";s:7:"hawaian";s:3:"haw";s:10:"hawaiiană";s:3:"haw";s:12:"hawaiigiella";s:3:"haw";s:10:"havajčina";s:3:"haw";s:12:"havajščina";s:3:"haw";s:8:"hauajane";s:3:"haw";s:9:"hawaiiska";s:3:"haw";s:11:"hawaii dili";s:3:"haw";s:8:"hebreeus";s:2:"he";s:7:"hebréu";s:2:"he";s:7:"hebraeg";s:2:"he";s:9:"hebrejski";s:2:"he";s:6:"hebreu";s:2:"he";s:12:"hebrejština";s:2:"he";s:8:"hebraisk";s:2:"he";s:10:"hebräisch";s:2:"he";s:13:"hebrejšćina";s:2:"he";s:8:"hebrigbe";s:2:"he";s:6:"hebrew";s:2:"he";s:6:"hebrea";s:2:"he";s:6:"hebreo";s:2:"he";s:7:"heebrea";s:2:"he";s:8:"hebreera";s:2:"he";s:6:"heprea";s:2:"he";s:9:"hebraiskt";s:2:"he";s:7:"hébreu";s:2:"he";s:10:"hebreeuwsk";s:2:"he";s:6:"hebera";s:2:"he";s:6:"héber";s:2:"he";s:8:"hebreska";s:2:"he";s:12:"hebraimiutut";s:2:"he";s:11:"hebräjesch";s:2:"he";s:10:"hebräesch";s:2:"he";s:8:"hebrajų";s:2:"he";s:11:"hebrääsch";s:2:"he";s:9:"hebreeuws";s:2:"he";s:9:"hebrajski";s:2:"he";s:8:"hebraico";s:2:"he";s:11:"hebreo simi";s:2:"he";s:11:"hebrejčina";s:2:"he";s:13:"hebrejščina";s:2:"he";s:9:"hebraisht";s:2:"he";s:9:"hebreiska";s:2:"he";s:5:"hindi";s:2:"hi";s:10:"hindština";s:2:"hi";s:12:"hindišćina";s:2:"hi";s:8:"hindigbe";s:2:"hi";s:5:"hinda";s:2:"hi";s:6:"hindia";s:2:"hi";s:6:"hinndi";s:2:"hi";s:9:"hiondúis";s:2:"hi";s:6:"hindis";s:2:"hi";s:13:"harshen hindi";s:2:"hi";s:7:"hindski";s:2:"hi";s:6:"hindí";s:2:"hi";s:11:"hindimiutut";s:2:"hi";s:6:"híndi";s:2:"hi";s:10:"hindi simi";s:2:"hi";s:11:"hindigiella";s:2:"hi";s:6:"hîndi";s:2:"hi";s:9:"hindčina";s:2:"hi";s:13:"hindujščina";s:2:"hi";s:7:"hintçe";s:2:"hi";s:7:"hindcha";s:2:"hi";s:13:"hindi de fiji";s:3:"hif";s:19:"hindština (fidži)";s:3:"hif";s:13:"hindi fidjien";s:3:"hif";s:17:"hiondúis fhidsí";s:3:"hif";s:19:"hindis fhìditheach";s:3:"hif";s:10:"hindi fiji";s:3:"hif";s:13:"hindi figiano";s:3:"hif";s:17:"hindi fidżyjskie";s:3:"hif";s:10:"hiligaynon";s:3:"hil";s:15:"hiliqaynon dili";s:3:"hil";s:10:"hiligajnon";s:3:"hil";s:10:"hiligainon";s:3:"hil";s:16:"hiligajnonština";s:3:"hil";s:18:"hiligaynon-sprache";s:3:"hil";s:12:"hiligenɔgbe";s:3:"hil";s:11:"hiligainoni";s:3:"hil";s:9:"hiligaino";s:3:"hil";s:13:"hilgeanóinis";s:3:"hil";s:14:"hiligaynonisch";s:3:"hil";s:12:"híligaínon";s:3:"hil";s:9:"hiligayna";s:3:"hil";s:18:"hiligaynon-sprooch";s:3:"hil";s:11:"hiligainonu";s:3:"hil";s:15:"hiligajnončina";s:3:"hil";s:17:"hiligajnonščina";s:3:"hil";s:9:"hiri motu";s:2:"ho";s:14:"hiri motu dili";s:2:"ho";s:8:"hirimotu";s:2:"ho";s:9:"hiri-motu";s:2:"ho";s:12:"hiri motugbe";s:2:"ho";s:12:"hírímótú";s:2:"ho";s:8:"hrvatski";s:2:"hr";s:8:"horvaadi";s:2:"hr";s:7:"horvát";s:2:"hr";s:8:"horvātu";s:2:"hr";s:11:"hrvaščina";s:2:"hr";s:10:"hırvatça";s:2:"hr";s:7:"hunsrik";s:3:"hrx";s:13:"hornjoserbsce";s:3:"hsb";s:12:"hoog-sorbies";s:3:"hsb";s:24:"hornolužická srbština";s:3:"hsb";s:11:"haut-sorabe";s:3:"hsb";s:17:"hornjoserbšćina";s:3:"hsb";s:12:"hásorbneska";s:3:"hsb";s:11:"høysorbisk";s:3:"hsb";s:11:"høgsorbisk";s:3:"hsb";s:23:"hornolužická srbčina";s:3:"hsb";s:12:"högsorbiska";s:3:"hsb";s:3:"hsb";s:3:"hsb";s:10:"haïtiaans";s:2:"ht";s:8:"haitianu";s:2:"ht";s:5:"haiti";s:2:"ht";s:7:"haitieg";s:2:"ht";s:10:"haićanski";s:2:"ht";s:7:"haitià";s:2:"ht";s:10:"haitština";s:2:"ht";s:7:"haitisk";s:2:"ht";s:11:"haitianisch";s:2:"ht";s:12:"haitišćina";s:2:"ht";s:8:"haitigbe";s:2:"ht";s:7:"haitian";s:2:"ht";s:13:"haitia kreola";s:2:"ht";s:8:"haitiano";s:2:"ht";s:8:"haitiera";s:2:"ht";s:8:"haitiskt";s:2:"ht";s:8:"haïtien";s:2:"ht";s:11:"haïtiaansk";s:2:"ht";s:8:"haitisch";s:2:"ht";s:10:"haítíska";s:2:"ht";s:12:"ha’iitesch";s:2:"ht";s:11:"haitianesch";s:2:"ht";s:7:"haičio";s:2:"ht";s:9:"haitiešu";s:2:"ht";s:21:"haitiaansch-kreoolsch";s:2:"ht";s:18:"haïtiaans creools";s:2:"ht";s:10:"haitański";s:2:"ht";s:21:"haitiano criollo simi";s:2:"ht";s:9:"haitiană";s:2:"ht";s:11:"haitigiella";s:2:"ht";s:9:"haitčina";s:2:"ht";s:22:"haitijska kreolščina";s:2:"ht";s:10:"haitiançe";s:2:"ht";s:8:"haitiska";s:2:"ht";s:10:"haiti dili";s:2:"ht";s:8:"hongaars";s:2:"hu";s:11:"hangri kasa";s:2:"hu";s:8:"húngaru";s:2:"hu";s:8:"hungareg";s:2:"hu";s:9:"hongarès";s:2:"hu";s:8:"hwngareg";s:2:"hu";s:13:"hungoršćina";s:2:"hu";s:10:"hungarigbe";s:2:"hu";s:9:"hungarian";s:2:"hu";s:7:"hungara";s:2:"hu";s:8:"húngaro";s:2:"hu";s:10:"hungariera";s:2:"hu";s:10:"hongariire";s:2:"hu";s:8:"hongrois";s:2:"hu";s:9:"hongaarsk";s:2:"hu";s:15:"harshen hungari";s:2:"hu";s:7:"hungaro";s:2:"hu";s:8:"hungaria";s:2:"hu";s:8:"hongroà";s:2:"hu";s:7:"hungary";s:2:"hu";s:12:"hungaro simi";s:2:"hu";s:9:"hongruäa";s:2:"hu";s:11:"hangariyaan";s:2:"hu";s:10:"hungarisht";s:2:"hu";s:13:"hi xi hungary";s:2:"hu";s:6:"herero";s:2:"hz";s:10:"herer dili";s:2:"hz";s:11:"hererština";s:2:"hz";s:14:"herero-sprache";s:2:"hz";s:8:"héréro";s:2:"hz";s:10:"heiréiris";s:2:"hz";s:7:"hereró";s:2:"hz";s:14:"herero-sprooch";s:2:"hz";s:6:"hereru";s:2:"hz";s:18:"harshen indunusiya";s:2:"id";s:13:"hi xi iceland";s:2:"is";s:13:"harshen kimar";s:2:"km";s:14:"harshen koreya";s:2:"ko";s:15:"hi xi lithuania";s:2:"lt";s:12:"hi xi latvia";s:2:"lv";s:9:"hill mari";s:3:"mrj";s:13:"harshen malai";s:2:"ms";s:14:"harshen maltis";s:2:"mt";s:7:"holland";s:2:"nl";s:9:"holandski";s:2:"nl";s:9:"hollandsk";s:2:"nl";s:10:"hɔlandgbe";s:2:"nl";s:8:"hollandi";s:2:"nl";s:8:"hollanti";s:2:"nl";s:10:"hollendskt";s:2:"nl";s:9:"holandés";s:2:"nl";s:7:"holanci";s:2:"nl";s:7:"hōlani";s:2:"nl";s:9:"hollenska";s:2:"nl";s:14:"hollandimiutut";s:2:"nl";s:12:"holländesch";s:2:"nl";s:12:"hollännesch";s:2:"nl";s:11:"holandiešu";s:2:"nl";s:8:"holandey";s:2:"nl";s:9:"holandês";s:2:"nl";s:16:"hollánddagiella";s:2:"nl";s:9:"holandëe";s:2:"nl";s:11:"holandčina";s:2:"nl";s:9:"holandays";s:2:"nl";s:10:"holandisht";s:2:"nl";s:10:"hollandaca";s:2:"nl";s:13:"harshen polan";s:2:"pl";s:9:"henbruseg";s:3:"prg";s:16:"harshen portugal";s:2:"pt";s:13:"hi xi romania";s:2:"ro";s:18:"hegoaldeko samiera";s:3:"sma";s:19:"hegoaldeko sothoera";s:2:"st";s:15:"harshen suwedan";s:2:"sv";s:16:"harshen suwahili";s:2:"sw";s:16:"harshen turkiyya";s:2:"tr";s:15:"harshen yukuren";s:2:"uk";s:12:"harshen urdu";s:2:"ur";s:17:"harshen biyetinam";s:2:"vi";s:5:"hosza";s:2:"xh";s:6:"hoosta";s:2:"xh";s:5:"hiina";s:2:"zh";s:11:"harshen sin";s:2:"zh";s:20:"hiina (lihtsustatud)";s:7:"zh-hans";s:24:"hiina (traditsiooniline)";s:7:"zh-hant";s:19:"hagyományos kínai";s:7:"zh-hant";s:12:"harshen zulu";s:2:"zu";s:10:"henegipteg";s:3:"egy";s:11:"hen eiffteg";s:3:"egy";s:8:"hetities";s:3:"hit";s:6:"hitita";s:3:"hit";s:11:"hittit dili";s:3:"hit";s:6:"hitite";s:3:"hit";s:6:"hetheg";s:3:"hit";s:9:"hittitisk";s:3:"hit";s:10:"hethitisch";s:3:"hit";s:7:"hittite";s:3:"hit";s:4:"heti";s:3:"hit";s:6:"heetti";s:3:"hit";s:9:"hettitysk";s:3:"hit";s:5:"hitis";s:3:"hit";s:8:"hetitski";s:3:"hit";s:5:"hitit";s:3:"hit";s:11:"hettitíska";s:3:"hit";s:10:"hethitesch";s:3:"hit";s:7:"hititų";s:3:"hit";s:4:"hetu";s:3:"hit";s:10:"hettittisk";s:3:"hit";s:9:"hethitsch";s:3:"hit";s:10:"hettitisch";s:3:"hit";s:7:"hetycki";s:3:"hit";s:7:"hitită";s:3:"hit";s:12:"hetitščina";s:3:"hit";s:10:"hettitiska";s:3:"hit";s:8:"hititçe";s:3:"hit";s:17:"hizkuntza anitzak";s:3:"mul";s:19:"hizkuntza ezezaguna";s:3:"und";s:23:"hakuna maudhui ya lugha";s:3:"zxx";s:19:"hispaania (euroopa)";s:5:"es-es";s:28:"holandština (středověká)";s:3:"dum";s:16:"holandês médio";s:3:"dum";s:12:"hencʼhalleg";s:3:"fro";s:12:"hen ffrangeg";s:3:"fro";s:30:"hornoněmčina (středověká)";s:3:"gmh";s:16:"henalamaneg uhel";s:3:"goh";s:23:"hornoněmčina (stará)";s:3:"goh";s:18:"hen uchel almaeneg";s:3:"goh";s:5:"haida";s:3:"hai";s:10:"hayda dili";s:3:"hai";s:10:"haidština";s:3:"hai";s:13:"haida-sprache";s:3:"hai";s:5:"haidi";s:3:"hai";s:6:"haída";s:3:"hai";s:13:"haida-sprooch";s:3:"hai";s:5:"haido";s:3:"hai";s:5:"haidu";s:3:"hai";s:11:"haidščina";s:3:"hai";s:5:"hmong";s:3:"hmn";s:11:"hmongština";s:3:"hmn";s:7:"hmongeg";s:3:"hmn";s:6:"hmongi";s:3:"hmn";s:6:"hmongu";s:3:"hmn";s:10:"hmongijski";s:3:"hmn";s:14:"hmong daw simi";s:3:"hmn";s:11:"hmonščina";s:3:"hmn";s:11:"hmongspråk";s:3:"hmn";s:4:"hupa";s:3:"hup";s:9:"hupa dili";s:3:"hup";s:7:"húipis";s:3:"hup";s:5:"húpa";s:3:"hup";s:4:"hupu";s:3:"hup";s:8:"hupčina";s:3:"hup";s:10:"hotaniešu";s:3:"kho";s:7:"hotanca";s:3:"kho";s:9:"hennorseg";s:3:"non";s:10:"hen norseg";s:3:"non";s:10:"hen newari";s:3:"nwc";s:9:"henberseg";s:3:"peo";s:11:"hen bersieg";s:3:"peo";s:13:"henbrovañseg";s:3:"pro";s:15:"hen brofensaleg";s:3:"pro";s:13:"heniwerzhoneg";s:3:"sga";s:12:"hen wyddeleg";s:3:"sga";s:10:"hen syrieg";s:3:"syc";s:9:"himachali";s:3:"him";s:9:"himačali";s:3:"him";}i:111;a:277:{s:10:"oldengelsk";s:3:"ang";s:11:"old english";s:3:"ang";s:12:"ooldengelsch";s:3:"ang";s:9:"oudengels";s:3:"ang";s:13:"ozarbayjoncha";s:2:"az";s:13:"orta kürtçe";s:3:"ckb";s:15:"osztrák német";s:5:"de-at";s:17:"oostenrijks duits";s:5:"de-at";s:12:"orta kadazan";s:3:"dtp";s:5:"oyibo";s:2:"en";s:17:"oarjifriisagiella";s:2:"fy";s:9:"oldgræsk";s:3:"grc";s:12:"ooldgreeksch";s:3:"grc";s:9:"oudgrieks";s:3:"grc";s:12:"obersorbisch";s:3:"hsb";s:12:"oppersorbysk";s:3:"hsb";s:13:"oppersorbisch";s:3:"hsb";s:9:"oŋirikan";s:2:"hu";s:9:"ongjarês";s:2:"hu";s:10:"ormiański";s:2:"hy";s:10:"otsiherero";s:2:"hz";s:11:"okcidentalo";s:2:"ie";s:5:"olasz";s:2:"it";s:17:"ova Çirmişçesi";s:3:"mrj";s:9:"oshiwambo";s:2:"ng";s:9:"olandekan";s:2:"nl";s:8:"olandês";s:2:"nl";s:9:"ollainnis";s:2:"nl";s:8:"olandese";s:2:"nl";s:7:"olandų";s:2:"nl";s:8:"olandiż";s:2:"nl";s:9:"ollandais";s:2:"nl";s:9:"olandeză";s:2:"nl";s:17:"ođđadárogiella";s:2:"nn";s:7:"occitan";s:2:"oc";s:9:"oksitaans";s:2:"oc";s:8:"occitanu";s:2:"oc";s:9:"oksitanca";s:2:"oc";s:8:"okitaneg";s:2:"oc";s:7:"occità";s:2:"oc";s:14:"okcitánština";s:2:"oc";s:9:"ocsitaneg";s:2:"oc";s:9:"occitansk";s:2:"oc";s:11:"okzitanisch";s:2:"oc";s:14:"okcitanšćina";s:2:"oc";s:8:"okcitana";s:2:"oc";s:8:"occitano";s:2:"oc";s:11:"okzitaniera";s:2:"oc";s:9:"oksitaani";s:2:"oc";s:6:"ocitan";s:2:"oc";s:10:"occitaansk";s:2:"oc";s:11:"ocsatáinis";s:2:"oc";s:10:"ogsatanais";s:2:"oc";s:8:"ositanci";s:2:"oc";s:10:"okcitanski";s:2:"oc";s:9:"okszitán";s:2:"oc";s:8:"ositania";s:2:"oc";s:13:"oksítaníska";s:2:"oc";s:11:"okzitanesch";s:2:"oc";s:9:"očitarų";s:2:"oc";s:10:"oksitāņu";s:2:"oc";s:9:"occitania";s:2:"oc";s:9:"oċċitan";s:2:"oc";s:9:"oksitansk";s:2:"oc";s:11:"okzitaansch";s:2:"oc";s:9:"occitaans";s:2:"oc";s:11:"occitânico";s:2:"oc";s:13:"occitano simi";s:2:"oc";s:9:"occitană";s:2:"oc";s:15:"oksitánagiella";s:2:"oc";s:13:"okcitánčina";s:2:"oc";s:14:"okcitanščina";s:2:"oc";s:7:"okitaan";s:2:"oc";s:11:"oksitanisht";s:2:"oc";s:10:"occitanska";s:2:"oc";s:6:"oromoo";s:2:"om";s:5:"oromo";s:2:"om";s:10:"oromština";s:2:"om";s:5:"oroma";s:2:"om";s:8:"oromoera";s:2:"om";s:7:"oraimis";s:2:"om";s:7:"oromski";s:2:"om";s:7:"oromói";s:2:"om";s:6:"oromų";s:2:"om";s:5:"oromu";s:2:"om";s:12:"oromo (afan)";s:2:"om";s:9:"oromčina";s:2:"om";s:9:"oromoisht";s:2:"om";s:8:"oromocha";s:2:"om";s:5:"oriya";s:2:"or";s:7:"orijski";s:2:"or";s:12:"orojišćina";s:2:"or";s:8:"oriyagbe";s:2:"or";s:5:"orijo";s:2:"or";s:4:"oria";s:2:"or";s:7:"oriyera";s:2:"or";s:5:"orija";s:2:"or";s:4:"odia";s:2:"or";s:8:"oirísis";s:2:"or";s:8:"oriyanci";s:2:"or";s:11:"orijšćina";s:2:"or";s:6:"oriija";s:2:"or";s:6:"orijų";s:2:"or";s:5:"oriju";s:2:"or";s:9:"odia simi";s:2:"or";s:11:"orijščina";s:2:"or";s:5:"orije";s:2:"or";s:10:"oriya dili";s:2:"or";s:7:"oriycha";s:2:"or";s:8:"osseties";s:2:"os";s:8:"oséticu";s:2:"os";s:11:"osetik dili";s:2:"os";s:6:"oseteg";s:2:"os";s:7:"osetski";s:2:"os";s:5:"osset";s:2:"os";s:10:"osetština";s:2:"os";s:8:"ossetisk";s:2:"os";s:9:"ossetisch";s:2:"os";s:10:"ossetiagbe";s:2:"os";s:7:"ossetic";s:2:"os";s:8:"osético";s:2:"os";s:7:"osseedi";s:2:"os";s:8:"osetiera";s:2:"os";s:8:"osseetti";s:2:"os";s:9:"ossetiskt";s:2:"os";s:7:"ossète";s:2:"os";s:6:"osetic";s:2:"os";s:8:"ossetysk";s:2:"os";s:9:"oiséitis";s:2:"os";s:6:"osetio";s:2:"os";s:9:"ossezisch";s:2:"os";s:6:"oszét";s:2:"os";s:7:"ossetia";s:2:"os";s:10:"ossetíska";s:2:"os";s:8:"ossetico";s:2:"os";s:10:"oßeetesch";s:2:"os";s:9:"ossetesch";s:2:"os";s:8:"osetinų";s:2:"os";s:8:"osetīnu";s:2:"os";s:6:"ossete";s:2:"os";s:9:"ossettiku";s:2:"os";s:8:"ossetsch";s:2:"os";s:9:"osetyjski";s:2:"os";s:9:"ossético";s:2:"os";s:6:"osetă";s:2:"os";s:9:"osetčina";s:2:"os";s:13:"osetinščina";s:2:"os";s:9:"ossetiska";s:2:"os";s:7:"osetçe";s:2:"os";s:12:"oudpruisisch";s:3:"prg";s:5:"orosz";s:2:"ru";s:18:"orta fas tamazigti";s:3:"tzm";s:10:"oudmourteg";s:3:"udm";s:9:"oudmourte";s:3:"udm";s:9:"oedmoerts";s:3:"udm";s:9:"ouigoureg";s:2:"ug";s:9:"ouïghour";s:2:"ug";s:8:"oeigoers";s:2:"ug";s:10:"oekraïens";s:2:"uk";s:12:"okrainianina";s:2:"uk";s:6:"oerdoe";s:2:"ur";s:6:"ourdou";s:2:"ur";s:5:"ordò";s:2:"ur";s:10:"oʻzbekcha";s:2:"uz";s:8:"oezbeeks";s:2:"uz";s:8:"ouzbekeg";s:2:"uz";s:6:"ouzbek";s:2:"uz";s:11:"oldegyptisk";s:3:"egy";s:12:"oudegyptisch";s:3:"egy";s:13:"oraon-sprache";s:3:"kru";s:6:"oraoni";s:3:"kru";s:15:"oraon-schpraach";s:3:"kru";s:13:"oraon-sprooch";s:3:"kru";s:5:"oraon";s:3:"kru";s:8:"olulujia";s:3:"luy";s:8:"oluluyia";s:3:"luy";s:27:"onbekende of ongeldige taal";s:3:"und";s:14:"onbekende taal";s:3:"und";s:19:"onbestëmmt sprooch";s:3:"und";s:16:"obestämt språk";s:3:"und";s:17:"ortacaq hollandca";s:3:"dum";s:14:"olandese medio";s:3:"dum";s:19:"olandiż, medjevali";s:3:"dum";s:16:"ollandais mesaun";s:3:"dum";s:18:"olandeză mijlocie";s:3:"dum";s:23:"ortaçağ felemenkçesi";s:3:"dum";s:18:"ortacaq ingiliscə";s:3:"enm";s:22:"ortaçağ İngilizcesi";s:3:"enm";s:18:"ortacaq fransızca";s:3:"frm";s:23:"ortaçağ fransızcası";s:3:"frm";s:9:"oldfransk";s:3:"fro";s:10:"old french";s:3:"fro";s:16:"ooldfranzöösch";s:3:"fro";s:8:"oudfrans";s:3:"fro";s:12:"ostfriesisch";s:3:"frs";s:14:"oschtfriesisch";s:3:"frs";s:12:"ostfriesesch";s:3:"frs";s:10:"oost-fries";s:3:"frs";s:24:"ortacaq yüksək almanca";s:3:"gmh";s:28:"ortaçağ yüksek almancası";s:3:"gmh";s:11:"oldhøjtysk";s:3:"goh";s:15:"old high german";s:3:"goh";s:18:"ooldhoochdüütsch";s:3:"goh";s:12:"oudhoogduits";s:3:"goh";s:16:"ortacaq irlandca";s:3:"mga";s:23:"ortaçağ İrlandacası";s:3:"mga";s:11:"oldislandsk";s:3:"non";s:9:"old norse";s:3:"non";s:11:"ooldnoorsch";s:3:"non";s:8:"oudnoors";s:3:"non";s:11:"oold-newari";s:3:"nwc";s:6:"ojibwa";s:2:"oj";s:11:"ocibva dili";s:2:"oj";s:6:"ojibva";s:2:"oj";s:15:"odžibvejština";s:2:"oj";s:14:"ojibwa-sprache";s:2:"oj";s:9:"odžibvei";s:2:"oj";s:8:"odžibwa";s:2:"oj";s:16:"ojibwa-schpraach";s:2:"oj";s:14:"ojibwa-sprooch";s:2:"oj";s:8:"odžibvu";s:2:"oj";s:7:"oġibwa";s:2:"oj";s:8:"odżibwa";s:2:"oj";s:8:"odžibva";s:2:"oj";s:7:"odjibwa";s:2:"oj";s:11:"ojibva dili";s:2:"oj";s:10:"osage dili";s:3:"osa";s:5:"osage";s:3:"osa";s:6:"osageg";s:3:"osa";s:13:"osage-sprache";s:3:"osa";s:8:"oseidži";s:3:"osa";s:15:"osage-schpraach";s:3:"osa";s:13:"osage-sprooch";s:3:"osa";s:8:"osaġjan";s:3:"osa";s:9:"osagčina";s:3:"osa";s:10:"osman dili";s:3:"ota";s:16:"otomanski turski";s:3:"ota";s:17:"osmannisk-tyrkisk";s:3:"ota";s:9:"osmanisch";s:3:"ota";s:15:"ottoman turkish";s:3:"ota";s:12:"osmanitürgi";s:3:"ota";s:6:"osmani";s:3:"ota";s:16:"ottomaansk-turks";s:3:"ota";s:16:"ottomán török";s:3:"ota";s:9:"osmanesch";s:3:"ota";s:14:"osmanų turkų";s:3:"ota";s:17:"ottomansk tyrkisk";s:3:"ota";s:9:"osmaansch";s:3:"ota";s:15:"ottomaans-turks";s:3:"ota";s:17:"osmańsko-turecki";s:3:"ota";s:20:"osmanská turečtina";s:3:"ota";s:20:"otomanska turščina";s:3:"ota";s:10:"ottomanska";s:3:"ota";s:19:"osmanlı türkçesi";s:3:"ota";s:10:"oldpersisk";s:3:"peo";s:11:"old persian";s:3:"peo";s:14:"ooldpers’sch";s:3:"peo";s:11:"oudperzisch";s:3:"peo";s:14:"oldprovencalsk";s:3:"pro";s:14:"old provençal";s:3:"pro";s:17:"ooldprovenzaalsch";s:3:"pro";s:15:"oudprovençaals";s:3:"pro";s:18:"osterinsel-sprache";s:3:"rap";s:22:"oschterinsel-schpraach";s:3:"rap";s:21:"ouschterinsel-sprooch";s:3:"rap";s:18:"oosterinsel-spraak";s:3:"rap";s:7:"oldirsk";s:3:"sga";s:9:"old irish";s:3:"sga";s:11:"oold-iersch";s:3:"sga";s:7:"oudiers";s:3:"sga";s:12:"oold-syyrsch";s:3:"syc";s:9:"ougariteg";s:3:"uga";s:11:"ougaritique";s:3:"uga";s:10:"oegaritysk";s:3:"uga";s:11:"oegaritisch";s:3:"uga";s:17:"otomangue-spraken";s:3:"oto";s:15:"otomanski jezik";s:3:"oto";}i:928;a:36:{s:27:"Παλαιά Αγγλικά";s:3:"ang";s:14:"Περσικά";s:2:"fa";s:30:"མ་ལ་ག་སི་ཁ";s:2:"mg";s:27:"མ་ཨོ་རི་ཁ";s:2:"mi";s:48:"མ་སེ་ཌོ་ནི་ཡཱན་ཁ";s:2:"mk";s:30:"མ་ལ་ཡ་ལམ་ཁ";s:2:"ml";s:33:"མ་ར་ཐི་སྐད།";s:2:"mr";s:24:"མ་ར་ཐི་ཁ";s:2:"mr";s:30:"མ་ལ་ཡ་སྐད།";s:2:"ms";s:18:"མ་ལེ་ཁ";s:2:"ms";s:21:"མཱལ་ཊ་ཁ";s:2:"mt";s:20:"Παντζαπικά";s:2:"pa";s:22:"Πανγκασινάν";s:3:"pag";s:18:"Παμπάνγκα";s:3:"pam";s:20:"Παπιαμέντο";s:3:"pap";s:8:"Πάλι";s:2:"pi";s:16:"Πολωνικά";s:2:"pl";s:16:"Ποντιακά";s:3:"pnt";s:10:"Πάστο";s:2:"ps";s:22:"Πορτογαλικά";s:2:"pt";s:41:"Πορτογαλικά Βραζιλίας";s:5:"pt-br";s:39:"Παραδοσιακά Κινεζικά";s:7:"zh-hant";s:9:"문당어";s:3:"mua";s:33:"Πολλαπλές γλώσσες";s:3:"mul";s:154:"མིའི་ཤེས་རྟོགས་མ་བྱུང་བ། ཡང་ན་ཆད་ལྷག་ཅན་གྱི་སྐད་བརྡ།";s:3:"und";s:37:"Πορτογαλικά Ευρώπης";s:5:"pt-pt";s:27:"Παλαιά Γαλλικά";s:3:"fro";s:38:"Παλαιά Άνω Γερμανικά";s:3:"goh";s:21:"མན་ཇུ་ཁ";s:3:"mnc";s:30:"མ་ནི་པུ་རི";s:3:"mni";s:31:"Παλαιά Νορβηγικά";s:3:"non";s:14:"Παχλάβι";s:3:"pal";s:16:"Παλάουαν";s:3:"pau";s:16:"Ποχπέιαν";s:3:"pon";s:33:"Παλαιά Προβενσιάλ";s:3:"pro";s:31:"Παλαιά Ιρλανδικά";s:3:"sga";}i:118;a:317:{s:11:"vanainglise";s:3:"ang";s:13:"vieri inglês";s:3:"ang";s:17:"valtakunnanaramea";s:3:"arc";s:9:"valgevene";s:2:"be";s:13:"valkovenäjä";s:2:"be";s:21:"vilges-ruoššagiella";s:2:"be";s:8:"vitryska";s:2:"be";s:9:"velština";s:2:"cy";s:9:"valisiskt";s:2:"cy";s:7:"velški";s:2:"cy";s:6:"velska";s:2:"cy";s:5:"valų";s:2:"cy";s:9:"velsiešu";s:2:"cy";s:15:"valižanščina";s:2:"cy";s:10:"vokiečių";s:2:"de";s:5:"vācu";s:2:"de";s:26:"visoka nemščina (Švica)";s:5:"de-ch";s:4:"viro";s:2:"et";s:5:"vascu";s:2:"eu";s:27:"ဖင်နစ်ရှ်";s:2:"fi";s:5:"võro";s:3:"vro";s:15:"ဖီဂျီ";s:2:"fj";s:27:"ဖာရိုအိစ်";s:2:"fo";s:11:"vestfrisikt";s:2:"fy";s:16:"vesturfrísneska";s:2:"fy";s:14:"vakarų fryzų";s:2:"fy";s:11:"vestfrisisk";s:2:"fy";s:13:"västfrisiska";s:2:"fy";s:10:"vanakreeka";s:3:"grc";s:11:"vieri grêc";s:3:"grc";s:15:"మంకస్";s:2:"gv";s:7:"vengrų";s:2:"hu";s:8:"vengrcha";s:2:"hu";s:18:"మైథిలి";s:3:"mai";s:18:"మొక్షా";s:3:"mdf";s:21:"మాలాగసి";s:2:"mg";s:27:"మార్షలీస్";s:2:"mh";s:15:"మయోరి";s:2:"mi";s:33:"మినాంగ్కాబో";s:3:"min";s:27:"మసడోనియన్";s:2:"mk";s:18:"మలయాళం";s:2:"ml";s:27:"మంగోలియన్";s:2:"mn";s:15:"మరాఠీ";s:2:"mr";s:9:"vuorimari";s:3:"mrj";s:12:"vakarų mari";s:3:"mrj";s:12:"västmariska";s:3:"mrj";s:15:"మలేయ్";s:2:"ms";s:24:"మాల్టీస్";s:2:"mt";s:27:"మిరాండిస్";s:3:"mwl";s:36:"vokiečių kalbos žemaičių tarmė";s:3:"pdt";s:31:"vokiečių kalbos pfalco tarmė";s:3:"pfl";s:4:"vene";s:2:"ru";s:8:"venäjä";s:2:"ru";s:7:"valaque";s:3:"rup";s:10:"vlăheşte";s:8:"ruq-latn";s:5:"venda";s:2:"ve";s:10:"venda dili";s:2:"ve";s:13:"venda-sprache";s:2:"ve";s:8:"vendagbe";s:2:"ve";s:7:"vendera";s:2:"ve";s:7:"veindis";s:2:"ve";s:15:"venda-schpraach";s:2:"ve";s:13:"venda-sprooch";s:2:"ve";s:5:"vendu";s:2:"ve";s:9:"vendčina";s:2:"ve";s:7:"vèneto";s:3:"vec";s:9:"venecianu";s:3:"vec";s:9:"venetisch";s:3:"vec";s:8:"venetian";s:3:"vec";s:8:"venetsia";s:3:"vec";s:9:"vénitien";s:3:"vec";s:10:"veinéisis";s:3:"vec";s:7:"venesia";s:3:"vec";s:6:"veneto";s:3:"vec";s:9:"venezesch";s:3:"vec";s:7:"venetų";s:3:"vec";s:10:"venetiaans";s:3:"vec";s:11:"venetianska";s:3:"vec";s:10:"venedikçe";s:3:"vec";s:14:"vepsän kel’";s:3:"vep";s:9:"vepština";s:3:"vep";s:4:"veps";s:3:"vep";s:6:"vepsä";s:3:"vep";s:5:"vepse";s:3:"vep";s:5:"vepso";s:3:"vep";s:6:"vepsų";s:3:"vep";s:11:"viëtnamees";s:2:"vi";s:13:"viɛtnam kasa";s:2:"vi";s:10:"vietnamín";s:2:"vi";s:7:"vyetnam";s:2:"vi";s:9:"vietnameg";s:2:"vi";s:11:"vijetnamski";s:2:"vi";s:10:"vietnamita";s:2:"vi";s:13:"vietnamština";s:2:"vi";s:12:"vietnamesisk";s:2:"vi";s:13:"vietnamesisch";s:2:"vi";s:14:"vietnamšćina";s:2:"vi";s:10:"vietnamgbe";s:2:"vi";s:10:"vietnamese";s:2:"vi";s:8:"vjetnama";s:2:"vi";s:8:"vietnami";s:2:"vi";s:10:"vietnamera";s:2:"vi";s:7:"vietnam";s:2:"vi";s:13:"vietnamesiskt";s:2:"vi";s:10:"vietnamien";s:2:"vi";s:10:"vietnamite";s:2:"vi";s:10:"vietnamees";s:2:"vi";s:11:"vítneaimis";s:2:"vi";s:15:"viyetịnaamụ";s:2:"vi";s:11:"víetnamska";s:2:"vi";s:14:"vietnamimiusut";s:2:"vi";s:17:"vijätnammeesesch";s:2:"vi";s:13:"vietnamesesch";s:2:"vi";s:14:"vietnamiečių";s:2:"vi";s:12:"vjetnamiešu";s:2:"vi";s:13:"vietnamianina";s:2:"vi";s:10:"vjetnamiż";s:2:"vi";s:12:"vietnameesch";s:2:"vi";s:15:"vietnamita simi";s:2:"vi";s:10:"vietnamais";s:2:"vi";s:11:"vietnameză";s:2:"vi";s:13:"vietnamgiella";s:2:"vi";s:8:"vietnäm";s:2:"vi";s:12:"vietnamčina";s:2:"vi";s:14:"vietnamščina";s:2:"vi";s:11:"vietnamisht";s:2:"vi";s:13:"vietnamesiska";s:2:"vi";s:9:"vietnamca";s:2:"vi";s:10:"vyetnamcha";s:2:"vi";s:23:"vlámština (západní)";s:3:"vls";s:17:"vakarų flamandų";s:3:"vls";s:17:"västflamländska";s:3:"vls";s:8:"volapük";s:2:"vo";s:13:"volapük dili";s:2:"vo";s:7:"volapyk";s:2:"vo";s:8:"volapuko";s:2:"vo";s:9:"volapüki";s:2:"vo";s:7:"volapuk";s:2:"vo";s:8:"volapiuk";s:2:"vo";s:8:"volapiks";s:2:"vo";s:9:"volapuque";s:2:"vo";s:7:"vaďďa";s:3:"vot";s:10:"votik dili";s:3:"vot";s:8:"votyakeg";s:3:"vot";s:6:"votski";s:3:"vot";s:6:"vòtic";s:3:"vot";s:9:"votština";s:3:"vot";s:6:"votisk";s:3:"vot";s:5:"votic";s:3:"vot";s:7:"vótico";s:3:"vot";s:5:"vadja";s:3:"vot";s:5:"vatja";s:3:"vot";s:4:"vote";s:3:"vot";s:6:"votysk";s:3:"vot";s:7:"votják";s:3:"vot";s:5:"votia";s:3:"vot";s:8:"votíska";s:3:"vot";s:4:"voto";s:3:"vot";s:5:"votik";s:3:"vot";s:4:"votu";s:3:"vot";s:7:"votisch";s:3:"vot";s:8:"vodčina";s:3:"vot";s:12:"votjaščina";s:3:"vot";s:7:"votiska";s:3:"vot";s:11:"võruština";s:3:"vro";s:4:"voro";s:3:"vro";s:5:"võru";s:3:"vro";s:6:"valón";s:2:"wa";s:10:"valun dili";s:2:"wa";s:5:"valun";s:2:"wa";s:5:"való";s:2:"wa";s:11:"valonština";s:2:"wa";s:8:"vallonsk";s:2:"wa";s:8:"vallooni";s:2:"wa";s:7:"valloni";s:2:"wa";s:5:"valon";s:2:"wa";s:10:"vallúnais";s:2:"wa";s:8:"valonski";s:2:"wa";s:6:"vallon";s:2:"wa";s:10:"vallónska";s:2:"wa";s:7:"vallone";s:2:"wa";s:7:"valonų";s:2:"wa";s:7:"valoņu";s:2:"wa";s:6:"valão";s:2:"wa";s:7:"valonă";s:2:"wa";s:13:"vallonagiella";s:2:"wa";s:11:"valónčina";s:2:"wa";s:12:"valonščina";s:2:"wa";s:9:"vallonska";s:2:"wa";s:7:"valonca";s:2:"wa";s:10:"varay dili";s:3:"war";s:5:"varej";s:3:"war";s:5:"varai";s:3:"war";s:6:"varaó";s:3:"war";s:6:"varaí";s:3:"war";s:6:"varaju";s:3:"war";s:12:"varajščina";s:3:"war";s:5:"varay";s:3:"war";s:5:"volof";s:2:"wo";s:6:"volofa";s:2:"wo";s:6:"volofi";s:2:"wo";s:8:"volaifis";s:2:"wo";s:7:"volofų";s:2:"wo";s:6:"volofu";s:2:"wo";s:12:"volofščina";s:2:"wo";s:8:"volofça";s:2:"wo";s:8:"volofcha";s:2:"wo";s:9:"vahcuengh";s:2:"za";s:24:"veräifachts chineesisch";s:7:"zh-hans";s:21:"vereenfacht chineesch";s:7:"zh-hans";s:21:"vereenvoudigd chinees";s:7:"zh-hans";s:14:"vieri egjizian";s:3:"egy";s:30:"ဖိလစ်ပီနို";s:3:"fil";s:15:"మకొమ్";s:3:"jmc";s:18:"మకొండే";s:3:"kde";s:18:"మాసాయి";s:3:"mas";s:12:"మెరు";s:3:"mer";s:30:"మొరిస్యేన్";s:3:"mfe";s:34:"మక్వా-మిట్టో";s:3:"mgh";s:12:"మెటా";s:3:"mgo";s:18:"మోహుక్";s:3:"moh";s:21:"ముదాంగ్";s:3:"mua";s:16:"veelvuldige tale";s:3:"mul";s:12:"više jezika";s:3:"mul";s:14:"varias linguas";s:3:"mul";s:17:"vairākas valodas";s:3:"mul";s:15:"viaceré jazyky";s:3:"mul";s:12:"več jezikov";s:3:"mul";s:6:"vlaams";s:5:"nl-be";s:11:"vlámština";s:5:"nl-be";s:27:"ဖလီမစ်ရှ်";s:5:"nl-be";s:33:"మొల్డావియన్";s:5:"ro-md";s:3:"vai";s:3:"vai";s:6:"vaigbe";s:3:"vai";s:6:"vaiera";s:3:"vai";s:4:"vaï";s:3:"vai";s:13:"vai-schpraach";s:3:"vai";s:4:"vaí";s:3:"vai";s:11:"vai-sprooch";s:3:"vai";s:4:"vaju";s:3:"vai";s:10:"vajščina";s:3:"vai";s:6:"vaisht";s:3:"vai";s:3:"vaj";s:3:"vai";s:8:"vayancha";s:3:"vai";s:5:"vunjo";s:3:"vun";s:5:"vunyo";s:3:"vun";s:6:"vunjoa";s:3:"vun";s:6:"vunjó";s:3:"vun";s:7:"vundžo";s:3:"vun";s:8:"vunjisht";s:3:"vun";s:10:"vunjoancha";s:3:"vun";s:18:"vakioitu tamazight";s:3:"zgh";s:12:"మారి";s:3:"chm";s:18:"vidurio vokietijos";s:3:"dum";s:16:"vidusholandiešu";s:3:"dum";s:25:"మధ్యమ డచ్";s:3:"dum";s:16:"vidurio anglijos";s:3:"enm";s:11:"vidusangļu";s:3:"enm";s:34:"మధ్యమ ఆంగ్లం";s:3:"enm";s:20:"vidurio prancūzijos";s:3:"frm";s:12:"vidusfranču";s:3:"frm";s:37:"మధ్యమ ప్రెంచ్";s:3:"frm";s:13:"vanaprantsuse";s:3:"fro";s:14:"vieri francês";s:3:"fro";s:22:"východná frízština";s:3:"frs";s:21:"vzhodna frizijščina";s:3:"frs";s:30:"vidurio aukštosios vokietijos";s:3:"gmh";s:15:"vidusaugšvācu";s:3:"gmh";s:41:"మధ్యమ హై జర్మన్";s:3:"gmh";s:14:"vanaülemsaksa";s:3:"goh";s:25:"vegl tudestg da scrittira";s:3:"goh";s:15:"మోంగ్";s:3:"hmn";s:15:"మొంగో";s:3:"lol";s:24:"మాదురీస్";s:3:"mad";s:15:"మగాహి";s:3:"mag";s:21:"మకాసార్";s:3:"mak";s:21:"మండింగో";s:3:"man";s:18:"మండార్";s:3:"mdr";s:15:"మెండే";s:3:"men";s:15:"vidurio airijos";s:3:"mga";s:9:"vidusīru";s:3:"mga";s:31:"మధ్యమ ఐరిష్";s:3:"mga";s:21:"మికమాక్";s:3:"mic";s:12:"మంచు";s:3:"mnc";s:21:"మణిపూరి";s:3:"mni";s:18:"మోస్సి";s:3:"mos";s:24:"మార్వాడి";s:3:"mwr";s:12:"vanapõhjala";s:3:"non";s:13:"vieux norrois";s:3:"non";s:16:"vieri norvegjês";s:3:"non";s:10:"vananevari";s:3:"nwc";s:9:"važāžu";s:3:"osa";s:11:"vanapärsia";s:3:"peo";s:13:"vieri persian";s:3:"peo";s:12:"vanaprovansi";s:3:"pro";s:16:"vieri provenzâl";s:3:"pro";s:8:"vanaiiri";s:3:"sga";s:15:"vieri irlandês";s:3:"sga";s:11:"valamo dili";s:3:"wal";s:6:"valamo";s:3:"wal";s:6:"volamo";s:3:"wal";s:7:"valamó";s:3:"wal";s:6:"valamu";s:3:"wal";s:12:"valamščina";s:3:"wal";s:10:"vaşo dili";s:3:"was";s:5:"vašo";s:3:"was";s:5:"vasó";s:3:"was";s:6:"vasjó";s:3:"was";s:13:"vašajščina";s:3:"was";s:5:"vaşo";s:3:"was";s:52:"మెక్సికన్ స్పానిష్";s:5:"es-mx";s:5:"vajų";s:3:"guc";s:10:"veštački";s:3:"art";s:8:"valserų";s:3:"wae";s:14:"vallisas vācu";s:3:"wae";s:19:"verschedene spraken";s:3:"mis";s:17:"vakašanski jezik";s:3:"wak";}i:109;a:1064:{s:15:"muinaisenglanti";s:3:"ang";s:10:"mapudungun";s:3:"arn";s:7:"mapuche";s:3:"arn";s:7:"mapuĉa";s:3:"arn";s:8:"maputxea";s:3:"arn";s:10:"mapúitsis";s:3:"arn";s:12:"mapudungunų";s:3:"arn";s:12:"mapuche simi";s:3:"arn";s:10:"mapuçisht";s:3:"arn";s:11:"mapuchiycha";s:3:"arn";s:8:"maġribi";s:3:"ary";s:23:"marokkanisches arabisch";s:3:"ary";s:22:"moroccan spoken arabic";s:3:"ary";s:13:"marokonarabia";s:3:"ary";s:22:"marokahnesch arahbesch";s:3:"ary";s:22:"marokkanescht arabesch";s:3:"ary";s:13:"maroko arabų";s:3:"ary";s:19:"marokkaans arabisch";s:3:"ary";s:19:"marokański arabski";s:3:"ary";s:19:"marockansk arabiska";s:3:"ary";s:18:"mısır arapçası";s:3:"arz";s:21:"mìng-dĕ̤ng-ngṳ̄";s:3:"cdo";s:16:"min dong chinese";s:3:"cdo";s:14:"malsuprasoraba";s:3:"dsb";s:13:"maledivština";s:2:"dv";s:11:"maledivisch";s:2:"dv";s:5:"mahla";s:2:"dv";s:8:"maldiivi";s:2:"dv";s:9:"maldivien";s:2:"dv";s:12:"malediivisch";s:2:"dv";s:10:"maldivesch";s:2:"dv";s:12:"maldīviešu";s:2:"dv";s:11:"maledievsch";s:2:"dv";s:10:"malediwski";s:2:"dv";s:9:"maledivic";s:2:"dv";s:12:"ѕонгка";s:2:"dz";s:13:"mo/seperishia";s:2:"fa";s:10:"meänkieli";s:3:"fit";s:14:"muinaiskreikka";s:3:"grc";s:4:"manx";s:2:"gv";s:6:"manés";s:2:"gv";s:5:"manks";s:2:"gv";s:7:"manaveg";s:2:"gv";s:9:"manština";s:2:"gv";s:7:"manaweg";s:2:"gv";s:10:"manšćina";s:2:"gv";s:7:"mänksi";s:2:"gv";s:7:"manxera";s:2:"gv";s:6:"manksi";s:2:"gv";s:9:"manainnis";s:2:"gv";s:15:"manx-gäälisch";s:2:"gv";s:6:"manski";s:2:"gv";s:11:"man-szigeti";s:2:"gv";s:6:"manska";s:2:"gv";s:10:"meniečių";s:2:"gv";s:8:"meniešu";s:2:"gv";s:5:"mansk";s:2:"gv";s:11:"manksgiella";s:2:"gv";s:8:"mančina";s:2:"gv";s:10:"manščina";s:2:"gv";s:6:"mankse";s:2:"gv";s:6:"mencha";s:2:"gv";s:4:"motu";s:2:"ho";s:14:"motúis hírí";s:2:"ho";s:6:"magyar";s:2:"hu";s:5:"macar";s:2:"hu";s:9:"mađarski";s:2:"hu";s:12:"maďarština";s:2:"hu";s:14:"madźaršćina";s:2:"hu";s:8:"magịya";s:2:"hu";s:9:"maghiară";s:2:"hu";s:11:"maďarčina";s:2:"hu";s:14:"madžarščina";s:2:"hu";s:7:"macarca";s:2:"hu";s:10:"mo/sejojia";s:2:"ka";s:11:"mizo ţawng";s:3:"lus";s:4:"mizo";s:3:"lus";s:10:"mizoština";s:3:"lus";s:13:"mizorámčina";s:3:"lus";s:8:"maithili";s:3:"mai";s:12:"maitili dili";s:3:"mai";s:7:"maitili";s:3:"mai";s:14:"maithiliština";s:3:"mai";s:10:"maitiligbe";s:3:"mai";s:10:"maítílí";s:3:"mai";s:7:"majtili";s:3:"mai";s:12:"maithilčina";s:3:"mai";s:6:"moksha";s:3:"mdf";s:11:"mokşa dili";s:3:"mdf";s:6:"mokša";s:3:"mdf";s:15:"mordovià moksa";s:3:"mdf";s:13:"mokšanština";s:3:"mdf";s:6:"mocsia";s:3:"mdf";s:10:"moktsiagbe";s:3:"mdf";s:5:"moksa";s:3:"mdf";s:18:"mokschamordwinisch";s:3:"mdf";s:7:"moksán";s:3:"mdf";s:6:"mokšu";s:3:"mdf";s:7:"mokscha";s:3:"mdf";s:6:"moksja";s:3:"mdf";s:5:"mocsa";s:3:"mdf";s:12:"mokšagiella";s:3:"mdf";s:13:"mokšiančina";s:3:"mdf";s:14:"mokšavščina";s:3:"mdf";s:8:"malagasy";s:2:"mg";s:10:"malgassies";s:2:"mg";s:7:"malgaxe";s:2:"mg";s:7:"malaqas";s:2:"mg";s:9:"malgacheg";s:2:"mg";s:12:"malagazijski";s:2:"mg";s:7:"malgaix";s:2:"mg";s:11:"malgaština";s:2:"mg";s:9:"malagaseg";s:2:"mg";s:11:"malagassisk";s:2:"mg";s:12:"madagassisch";s:2:"mg";s:12:"malgašćina";s:2:"mg";s:11:"malagasegbe";s:2:"mg";s:8:"malagasa";s:2:"mg";s:8:"malgache";s:2:"mg";s:9:"malagassi";s:2:"mg";s:11:"malagasyera";s:2:"mg";s:11:"malagasiskt";s:2:"mg";s:10:"malagasysk";s:2:"mg";s:11:"malagáisis";s:2:"mg";s:10:"malagasais";s:2:"mg";s:9:"malgaški";s:2:"mg";s:16:"malagassišćina";s:2:"mg";s:7:"málgas";s:2:"mg";s:8:"malagasi";s:2:"mg";s:12:"malagasíska";s:2:"mg";s:9:"malgascio";s:2:"mg";s:15:"malagassiskisut";s:2:"mg";s:13:"madajaßkesch";s:2:"mg";s:17:"malagassi-sprooch";s:2:"mg";s:9:"malagasų";s:2:"mg";s:8:"malagasu";s:2:"mg";s:9:"malagażi";s:2:"mg";s:11:"madagassisk";s:2:"mg";s:12:"malagassisch";s:2:"mg";s:8:"malgaski";s:2:"mg";s:9:"malgașă";s:2:"mg";s:13:"malagaščina";s:2:"mg";s:8:"malageze";s:2:"mg";s:12:"malagassiska";s:2:"mg";s:10:"malgaşça";s:2:"mg";s:12:"malagasiycha";s:2:"mg";s:11:"marshallés";s:2:"mh";s:12:"marşal dili";s:2:"mh";s:8:"marshall";s:2:"mh";s:10:"maršalski";s:2:"mh";s:11:"marshallès";s:2:"mh";s:14:"maršálština";s:2:"mh";s:9:"marsialeg";s:2:"mh";s:11:"marshallese";s:2:"mh";s:15:"marschallesisch";s:2:"mh";s:10:"marshalgbe";s:2:"mh";s:10:"marshalés";s:2:"mh";s:9:"maršalli";s:2:"mh";s:11:"marshallees";s:2:"mh";s:10:"mairsillis";s:2:"mh";s:11:"marshallais";s:2:"mh";s:9:"marshalli";s:2:"mh";s:11:"marshallska";s:2:"mh";s:15:"marschallesesch";s:2:"mh";s:14:"maršalo salų";s:2:"mh";s:13:"māršaliešu";s:2:"mh";s:7:"marxall";s:2:"mh";s:13:"marshallesisk";s:2:"mh";s:14:"marschalleesch";s:2:"mh";s:10:"marshalês";s:2:"mh";s:12:"marschallais";s:2:"mh";s:12:"marshalleză";s:2:"mh";s:17:"marshallovščina";s:2:"mh";s:12:"marshalliska";s:2:"mh";s:22:"marshall adaları dili";s:2:"mh";s:6:"māori";s:2:"mi";s:5:"maori";s:2:"mi";s:6:"maorí";s:2:"mi";s:7:"maorski";s:2:"mi";s:10:"maorština";s:2:"mi";s:12:"maorišćina";s:2:"mi";s:7:"maorgbe";s:2:"mi";s:6:"maoria";s:2:"mi";s:6:"maoori";s:2:"mi";s:8:"maoriera";s:2:"mi";s:8:"maoriskt";s:2:"mi";s:7:"maorais";s:2:"mi";s:11:"maoršćina";s:2:"mi";s:11:"maorimiutut";s:2:"mi";s:7:"maahori";s:2:"mi";s:7:"maorių";s:2:"mi";s:5:"maoru";s:2:"mi";s:9:"maoryjski";s:2:"mi";s:10:"maori simi";s:2:"mi";s:11:"maorigiella";s:2:"mi";s:11:"maorijčina";s:2:"mi";s:11:"maorščina";s:2:"mi";s:8:"maorisht";s:2:"mi";s:10:"maori dili";s:2:"mi";s:9:"maoriycha";s:2:"mi";s:11:"minangkabau";s:3:"min";s:16:"minanqkaban dili";s:3:"min";s:19:"minangkabau-sprache";s:3:"min";s:21:"minangkabau-schpraach";s:3:"min";s:12:"mínangkabá";s:3:"min";s:11:"menangkabau";s:3:"min";s:19:"minangkabau-sprooch";s:3:"min";s:9:"minankabu";s:3:"min";s:12:"minangkabavu";s:3:"min";s:11:"minangkabaw";s:3:"min";s:10:"minangkabu";s:3:"min";s:16:"minangkabaučina";s:3:"min";s:10:"masedonies";s:2:"mk";s:9:"macedoniu";s:2:"mk";s:7:"makedon";s:2:"mk";s:9:"makedoneg";s:2:"mk";s:10:"makedonski";s:2:"mk";s:8:"macedoni";s:2:"mk";s:13:"makedonština";s:2:"mk";s:9:"macedoneg";s:2:"mk";s:9:"makedonsk";s:2:"mk";s:11:"mazedonisch";s:2:"mk";s:15:"makedońšćina";s:2:"mk";s:12:"makedoniagbe";s:2:"mk";s:10:"macedonian";s:2:"mk";s:8:"makedona";s:2:"mk";s:9:"macedonio";s:2:"mk";s:10:"makedoonia";s:2:"mk";s:11:"mazedoniera";s:2:"mk";s:9:"makedonia";s:2:"mk";s:10:"makedonskt";s:2:"mk";s:11:"macédonien";s:2:"mk";s:7:"macedon";s:2:"mk";s:10:"macedonysk";s:2:"mk";s:11:"macadóinis";s:2:"mk";s:10:"masadonais";s:2:"mk";s:14:"makedonšćina";s:2:"mk";s:8:"macedón";s:2:"mk";s:8:"macedone";s:2:"mk";s:11:"makedónska";s:2:"mk";s:12:"mazedoonesch";s:2:"mk";s:11:"mazedonesch";s:2:"mk";s:9:"makedonų";s:2:"mk";s:13:"maķedoniešu";s:2:"mk";s:9:"macedonia";s:2:"mk";s:11:"maċedonjan";s:2:"mk";s:11:"mazedoonsch";s:2:"mk";s:11:"macedonisch";s:2:"mk";s:11:"macedoński";s:2:"mk";s:10:"macedónio";s:2:"mk";s:10:"macedônio";s:2:"mk";s:14:"macedonio simi";s:2:"mk";s:12:"macedoneană";s:2:"mk";s:15:"makedoniagiella";s:2:"mk";s:13:"macedónčina";s:2:"mk";s:14:"makedonščina";s:2:"mk";s:13:"masadooniyaan";s:2:"mk";s:11:"maqedonisht";s:2:"mk";s:10:"makedonska";s:2:"mk";s:9:"makedonca";s:2:"mk";s:10:"makedoncha";s:2:"mk";s:9:"malabaars";s:2:"ml";s:9:"malayalam";s:2:"ml";s:9:"malajalam";s:2:"ml";s:10:"malaiàlam";s:2:"ml";s:16:"malajálamština";s:2:"ml";s:14:"malajamšćina";s:2:"ml";s:9:"malayagbe";s:2:"ml";s:10:"malajalama";s:2:"ml";s:10:"malajalami";s:2:"ml";s:12:"malayalamera";s:2:"ml";s:13:"mailéalaimis";s:2:"ml";s:7:"malabar";s:2:"ml";s:12:"malajalamski";s:2:"ml";s:10:"malajálam";s:2:"ml";s:10:"mallajalam";s:2:"ml";s:10:"malajalių";s:2:"ml";s:8:"malajalu";s:2:"ml";s:15:"malayaalamiffaa";s:2:"ml";s:8:"malaiala";s:2:"ml";s:14:"malayalam simi";s:2:"ml";s:15:"malajálamčina";s:2:"ml";s:16:"malajalamščina";s:2:"ml";s:10:"malajalame";s:2:"ml";s:10:"malayamcha";s:2:"ml";s:8:"mongools";s:2:"mn";s:6:"mongol";s:2:"mn";s:6:"monqol";s:2:"mn";s:8:"mongoleg";s:2:"mn";s:9:"mongolski";s:2:"mn";s:12:"mongolština";s:2:"mn";s:8:"mongolsk";s:2:"mn";s:10:"mongolisch";s:2:"mn";s:13:"mongolšćina";s:2:"mn";s:11:"mongoliagbe";s:2:"mn";s:9:"mongolian";s:2:"mn";s:7:"mongola";s:2:"mn";s:7:"mongoli";s:2:"mn";s:10:"mongoliera";s:2:"mn";s:10:"mongoliskt";s:2:"mn";s:6:"mongul";s:2:"mn";s:10:"mongóilis";s:2:"mn";s:9:"mongolais";s:2:"mn";s:9:"mongolico";s:2:"mn";s:8:"mongolia";s:2:"mn";s:10:"mongólska";s:2:"mn";s:7:"mongolo";s:2:"mn";s:11:"mongjolesch";s:2:"mn";s:10:"mongolesch";s:2:"mn";s:8:"mongolų";s:2:"mn";s:8:"mongoļu";s:2:"mn";s:9:"mongoljan";s:2:"mn";s:10:"mongoolsch";s:2:"mn";s:11:"mongol simi";s:2:"mn";s:8:"mongolic";s:2:"mn";s:8:"mongolă";s:2:"mn";s:14:"mongoliagiella";s:2:"mn";s:11:"mongolčina";s:2:"mn";s:13:"mongolščina";s:2:"mn";s:8:"mangooli";s:2:"mn";s:10:"mongolisht";s:2:"mn";s:10:"mongoliska";s:2:"mn";s:8:"moğolca";s:2:"mn";s:14:"mo‘g‘ulcha";s:2:"mn";s:10:"moldaawsch";s:2:"mo";s:9:"moldavski";s:5:"ro-md";s:7:"marathi";s:2:"mr";s:6:"marati";s:2:"mr";s:13:"maráthština";s:2:"mr";s:9:"marathisk";s:2:"mr";s:13:"maratišćina";s:2:"mr";s:11:"marathiagbe";s:2:"mr";s:6:"marata";s:2:"mr";s:9:"marathera";s:2:"mr";s:10:"marathiskt";s:2:"mr";s:7:"marathe";s:2:"mr";s:8:"maraitis";s:2:"mr";s:9:"marathski";s:2:"mr";s:7:"maratí";s:2:"mr";s:11:"marraatesch";s:2:"mr";s:7:"maratų";s:2:"mr";s:6:"maratu";s:2:"mr";s:12:"marathi simi";s:2:"mr";s:12:"maráthčina";s:2:"mr";s:12:"maratščina";s:2:"mr";s:7:"maarati";s:2:"mr";s:9:"maratisht";s:2:"mr";s:8:"maratcha";s:2:"mr";s:15:"mari occidental";s:3:"mrj";s:20:"marieg ar cʼhornôg";s:3:"mrj";s:23:"marijština (západní)";s:3:"mrj";s:17:"mairis iartharach";s:3:"mrj";s:16:"mari occidentale";s:3:"mrj";s:6:"maleis";s:2:"ms";s:10:"malay kasa";s:2:"ms";s:6:"malayu";s:2:"ms";s:5:"malay";s:2:"ms";s:10:"malɛzikan";s:2:"ms";s:8:"malayseg";s:2:"ms";s:8:"malajski";s:2:"ms";s:5:"malai";s:2:"ms";s:11:"malajština";s:2:"ms";s:7:"maleieg";s:2:"ms";s:9:"malaiisch";s:2:"ms";s:12:"malajšćina";s:2:"ms";s:8:"malaygbe";s:2:"ms";s:6:"malaja";s:2:"ms";s:6:"malayo";s:2:"ms";s:10:"malaysiera";s:2:"ms";s:9:"malayeere";s:2:"ms";s:7:"malaiji";s:2:"ms";s:9:"malajiskt";s:2:"ms";s:6:"malais";s:2:"ms";s:6:"malês";s:2:"ms";s:7:"malaeis";s:2:"ms";s:9:"malaidhis";s:2:"ms";s:6:"malaio";s:2:"ms";s:6:"maláj";s:2:"ms";s:6:"melayu";s:2:"ms";s:6:"maleyi";s:2:"ms";s:9:"malaíska";s:2:"ms";s:6:"malese";s:2:"ms";s:11:"mallaijesch";s:2:"ms";s:9:"malaiesch";s:2:"ms";s:12:"malajiečių";s:2:"ms";s:10:"malajiešu";s:2:"ms";s:7:"malajan";s:2:"ms";s:8:"malayisk";s:2:"ms";s:8:"malaisch";s:2:"ms";s:11:"malaayiffaa";s:2:"ms";s:11:"malayo simi";s:2:"ms";s:6:"malaic";s:2:"ms";s:8:"malaeză";s:2:"ms";s:6:"malëe";s:2:"ms";s:10:"malajčina";s:2:"ms";s:12:"malajščina";s:2:"ms";s:6:"malaay";s:2:"ms";s:9:"malajisht";s:2:"ms";s:9:"malajiska";s:2:"ms";s:7:"malayca";s:2:"ms";s:8:"malaycha";s:2:"ms";s:5:"malti";s:2:"mt";s:7:"maltees";s:2:"mt";s:7:"maltés";s:2:"mt";s:5:"malta";s:2:"mt";s:6:"malteg";s:2:"mt";s:9:"malteški";s:2:"mt";s:7:"maltès";s:2:"mt";s:10:"maltština";s:2:"mt";s:9:"maltesisk";s:2:"mt";s:10:"maltesisch";s:2:"mt";s:12:"maltašćina";s:2:"mt";s:8:"maltagbe";s:2:"mt";s:7:"maltese";s:2:"mt";s:7:"maltera";s:2:"mt";s:10:"maltesiskt";s:2:"mt";s:7:"maltais";s:2:"mt";s:7:"maltês";s:2:"mt";s:8:"máltais";s:2:"mt";s:7:"máltai";s:2:"mt";s:9:"maltneska";s:2:"mt";s:11:"malteesesch";s:2:"mt";s:10:"maltesesch";s:2:"mt";s:11:"maltiečių";s:2:"mt";s:9:"maltiešu";s:2:"mt";s:9:"malteesch";s:2:"mt";s:10:"maltański";s:2:"mt";s:11:"maltes simi";s:2:"mt";s:8:"malteză";s:2:"mt";s:11:"maltagiella";s:2:"mt";s:9:"melteški";s:2:"mt";s:9:"maltčina";s:2:"mt";s:12:"malteščina";s:2:"mt";s:7:"maltiis";s:2:"mt";s:8:"maltisht";s:2:"mt";s:10:"maltesiska";s:2:"mt";s:7:"maltaca";s:2:"mt";s:8:"maltacha";s:2:"mt";s:7:"mvskoke";s:3:"mus";s:7:"muskogi";s:3:"mus";s:16:"muskogee-sprache";s:3:"mus";s:7:"maskogi";s:3:"mus";s:18:"muskogee-schpraach";s:3:"mus";s:16:"muskogee-sprooch";s:3:"mus";s:16:"muskogee-spraken";s:3:"mus";s:8:"muskogee";s:3:"mus";s:9:"mirandés";s:3:"mwl";s:11:"mirand dili";s:3:"mwl";s:11:"mirandeški";s:3:"mwl";s:9:"mirandès";s:3:"mwl";s:12:"mirandština";s:3:"mwl";s:8:"mirandeg";s:3:"mwl";s:11:"mirandesisk";s:3:"mwl";s:12:"mirandesisch";s:3:"mwl";s:9:"mirandese";s:3:"mwl";s:7:"miranda";s:3:"mwl";s:10:"mirandeesi";s:3:"mwl";s:9:"mirandais";s:3:"mwl";s:9:"mirandês";s:3:"mwl";s:9:"mirandees";s:3:"mwl";s:12:"mioraindéis";s:3:"mwl";s:9:"mirandski";s:3:"mwl";s:9:"mirandéz";s:3:"mwl";s:13:"mirandesíska";s:3:"mwl";s:12:"mirandesesch";s:3:"mwl";s:10:"mirandezų";s:3:"mwl";s:11:"mirandiešu";s:3:"mwl";s:9:"mirandiż";s:3:"mwl";s:11:"mirandeesch";s:3:"mwl";s:10:"mirandeză";s:3:"mwl";s:11:"mirandčina";s:3:"mwl";s:14:"mirandeščina";s:3:"mwl";s:12:"mirandesiska";s:3:"mwl";s:12:"miranda dili";s:3:"mwl";s:8:"mịanma";s:2:"my";s:19:"miamära, birimäni";s:2:"my";s:14:"mordovià erza";s:3:"myv";s:10:"mordvinski";s:3:"myv";s:11:"mazanderani";s:3:"mzn";s:18:"mázandaránština";s:3:"mzn";s:14:"masanderanisch";s:3:"mzn";s:11:"mazandarani";s:3:"mzn";s:12:"mazandérani";s:3:"mzn";s:13:"mazenderanių";s:3:"mzn";s:14:"mazanderański";s:3:"mzn";s:12:"mazenderanca";s:3:"mzn";s:7:"min nan";s:3:"nan";s:15:"min nan chinese";s:3:"nan";s:14:"min nan -kiina";s:3:"nan";s:6:"minnan";s:3:"nan";s:18:"min-nan-chinesesch";s:3:"nan";s:8:"minnanyu";s:3:"nan";s:10:"minnański";s:3:"nan";s:16:"min nan Çincesi";s:3:"nan";s:21:"mennonitisk lågtyska";s:3:"pdt";s:14:"muinaispreussi";s:3:"prg";s:14:"makedo-rumania";s:3:"rup";s:16:"megleno-romanian";s:3:"ruq";s:34:"megleno-romanian (cyrillic script)";s:8:"ruq-cyrl";s:31:"megleno-romanian (latin script)";s:8:"ruq-latn";s:12:"mo/sesundane";s:2:"su";s:12:"థాయ్";s:2:"th";s:27:"mərkəzi atlas tamazicəsi";s:3:"tzm";s:19:"marokanski tamazigt";s:3:"tzm";s:28:"maroko erdialdeko tamazighta";s:3:"tzm";s:20:"marokanski tamazight";s:3:"tzm";s:25:"mëttlert-atlas-tamazight";s:3:"tzm";s:26:"markaziy atlas vaqt zonasi";s:3:"tzm";s:14:"mainfränkisch";s:3:"vmf";s:13:"maininfrankki";s:3:"vmf";s:14:"mainfränkesch";s:3:"vmf";s:19:"meński frankoński";s:3:"vmf";s:14:"main-frankiska";s:3:"vmf";s:19:"main frankonya dili";s:3:"vmf";s:13:"mingrelština";s:3:"xmf";s:11:"mingrelisch";s:3:"xmf";s:10:"mingrelian";s:3:"xmf";s:8:"mingreli";s:3:"xmf";s:11:"mingrélien";s:3:"xmf";s:9:"mengrelio";s:3:"xmf";s:19:"mingrelesch sprooch";s:3:"xmf";s:8:"megrelų";s:3:"xmf";s:9:"mingreels";s:3:"xmf";s:9:"megrelski";s:3:"xmf";s:8:"megrelce";s:3:"xmf";s:16:"mandarịịnị";s:2:"zh";s:25:"moderne standaard arabies";s:6:"ar-001";s:25:"modern standart Ərəbcə";s:6:"ar-001";s:26:"moderni standardni arapski";s:6:"ar-001";s:23:"moderne standardarabisk";s:6:"ar-001";s:21:"modernes hocharabisch";s:6:"ar-001";s:25:"moderna wusokoarabšćina";s:6:"ar-001";s:22:"modern standard arabic";s:6:"ar-001";s:19:"moderna norma araba";s:6:"ar-001";s:23:"modern standert arabysk";s:6:"ar-001";s:25:"moderna wysokoarabšćina";s:6:"ar-001";s:22:"modern szabányos arab";s:6:"ar-001";s:22:"modernt héicharabesch";s:6:"ar-001";s:26:"mūsdienu standarta arābu";s:6:"ar-001";s:24:"moderne standard arabisk";s:6:"ar-001";s:25:"modern standaard arabisch";s:6:"ar-001";s:23:"modern standardarabiska";s:6:"ar-001";s:23:"modern standart arapça";s:6:"ar-001";s:14:"muinasegiptuse";s:3:"egy";s:13:"muinaisegypti";s:3:"egy";s:10:"mesir kuno";s:3:"egy";s:7:"machame";s:3:"jmc";s:6:"maçam";s:3:"jmc";s:7:"mašame";s:3:"jmc";s:8:"matsiame";s:3:"jmc";s:9:"machamera";s:3:"jmc";s:8:"masjáme";s:3:"jmc";s:8:"mačamų";s:3:"jmc";s:7:"mačamu";s:3:"jmc";s:15:"mačamejščina";s:3:"jmc";s:10:"maçamisht";s:3:"jmc";s:9:"machamcha";s:3:"jmc";s:7:"makonde";s:3:"kde";s:6:"makond";s:3:"kde";s:8:"macondeg";s:3:"kde";s:9:"makondera";s:3:"kde";s:8:"makondų";s:3:"kde";s:7:"maconde";s:3:"kde";s:13:"makondščina";s:3:"kde";s:10:"makondisht";s:3:"kde";s:8:"maqondiy";s:3:"kde";s:5:"masai";s:3:"mas";s:5:"masay";s:3:"mas";s:6:"massai";s:3:"mas";s:11:"masajština";s:3:"mas";s:14:"massai-sprache";s:3:"mas";s:12:"masaišćina";s:3:"mas";s:6:"masái";s:3:"mas";s:8:"masaiera";s:3:"mas";s:6:"maasai";s:3:"mas";s:16:"massai-schpraach";s:3:"mas";s:8:"masajski";s:3:"mas";s:6:"masaí";s:3:"mas";s:14:"massai-sprooch";s:3:"mas";s:7:"masajų";s:3:"mas";s:6:"masaju";s:3:"mas";s:5:"masaj";s:3:"mas";s:3:"maa";s:3:"mas";s:10:"masajčina";s:3:"mas";s:12:"masajščina";s:3:"mas";s:8:"masaisht";s:3:"mas";s:10:"massajiska";s:3:"mas";s:8:"masaycha";s:3:"mas";s:4:"meru";s:3:"mer";s:5:"mêrw";s:3:"mer";s:7:"meruera";s:3:"mer";s:5:"merou";s:3:"mer";s:5:"merú";s:3:"mer";s:12:"meru-sprooch";s:3:"mer";s:5:"merų";s:3:"mer";s:8:"meruisht";s:3:"mer";s:7:"merucha";s:3:"mer";s:8:"morisjen";s:3:"mfe";s:8:"morisyen";s:3:"mfe";s:8:"morisien";s:3:"mfe";s:7:"moriseg";s:3:"mfe";s:20:"mauricijski kreolski";s:3:"mfe";s:9:"mauricià";s:3:"mfe";s:24:"mauricijská kreolština";s:3:"mfe";s:23:"mauriciska kreolšćina";s:3:"mfe";s:21:"mauritiuse kreoolkeel";s:3:"mfe";s:21:"mauritaniako kreolera";s:3:"mfe";s:16:"mauritiusi kreol";s:3:"mfe";s:11:"máritíska";s:3:"mfe";s:9:"morisijų";s:3:"mfe";s:18:"maurīcijas kreolu";s:3:"mfe";s:17:"mauritisk-kreolsk";s:3:"mfe";s:24:"maurícijská kreolčina";s:3:"mfe";s:15:"morisjenščina";s:3:"mfe";s:16:"mauritansk kreol";s:3:"mfe";s:11:"morisyencha";s:3:"mfe";s:14:"makhuwa-meetto";s:3:"mgh";s:13:"maxuva-meetto";s:3:"mgh";s:13:"makhuwa-metto";s:3:"mgh";s:14:"makuwa-mitogbe";s:3:"mgh";s:17:"makhuwa-meettoera";s:3:"mgh";s:12:"makua-meetto";s:3:"mgh";s:11:"makua-metó";s:3:"mgh";s:11:"makua-maeto";s:3:"mgh";s:5:"makua";s:3:"mgh";s:5:"macua";s:3:"mgh";s:11:"makuva-meto";s:3:"mgh";s:9:"makuamito";s:3:"mgh";s:15:"makuva-mittocha";s:3:"mgh";s:7:"meta’";s:3:"mgo";s:4:"meta";s:3:"mgo";s:6:"metaʼ";s:3:"mgo";s:6:"metera";s:3:"mgo";s:8:"méta’";s:3:"mgo";s:3:"mgo";s:3:"mgo";s:8:"metaisht";s:3:"mgo";s:7:"metacha";s:3:"mgo";s:6:"mohawk";s:3:"moh";s:6:"mohavk";s:3:"moh";s:8:"mahavski";s:3:"moh";s:12:"mohawkština";s:3:"moh";s:7:"mohoceg";s:3:"moh";s:13:"mohawkšćina";s:3:"moh";s:7:"mohoogi";s:3:"moh";s:9:"mohawkera";s:3:"moh";s:10:"móháicis";s:3:"moh";s:16:"mohawk-schpraach";s:3:"moh";s:9:"móhíska";s:3:"moh";s:14:"mohawk-sprooch";s:3:"moh";s:5:"mohok";s:3:"moh";s:7:"mohauku";s:3:"moh";s:6:"moħak";s:3:"moh";s:7:"moicano";s:3:"moh";s:11:"mohawk simi";s:3:"moh";s:11:"mohawkčina";s:3:"moh";s:11:"mohoščina";s:3:"moh";s:10:"mohaukisht";s:3:"moh";s:11:"mohavk dili";s:3:"moh";s:9:"mohaukcha";s:3:"moh";s:7:"mundang";s:3:"mua";s:7:"mundanq";s:3:"mua";s:3:"mas";s:3:"mua";s:9:"mundangbe";s:3:"mua";s:8:"mundangi";s:3:"mua";s:9:"mudangera";s:3:"mua";s:9:"mundangų";s:3:"mua";s:8:"mundangu";s:3:"mua";s:11:"mundagishte";s:3:"mua";s:10:"mundangcha";s:3:"mua";s:20:"múltiples llingües";s:3:"mul";s:16:"mwy nag un iaith";s:3:"mul";s:12:"mehrsprachig";s:3:"mul";s:18:"multiple languages";s:3:"mul";s:10:"mitu keelt";s:3:"mul";s:13:"monia kieliä";s:3:"mul";s:11:"multilingue";s:3:"mul";s:14:"meardere talen";s:3:"mul";s:15:"mehrschpraachig";s:3:"mul";s:16:"margvísleg mál";s:3:"mul";s:11:"multilingua";s:3:"mul";s:13:"méisproocheg";s:3:"mul";s:11:"mehrsprakig";s:3:"mul";s:14:"meerdere talen";s:3:"mul";s:9:"moldawies";s:5:"ro-md";s:7:"moldavu";s:5:"ro-md";s:6:"moldav";s:5:"ro-md";s:8:"moldoveg";s:5:"ro-md";s:6:"moldau";s:5:"ro-md";s:12:"moldavština";s:5:"ro-md";s:8:"moldofeg";s:5:"ro-md";s:9:"moldovisk";s:5:"ro-md";s:10:"moldauisch";s:5:"ro-md";s:14:"moldawišćina";s:5:"ro-md";s:9:"moldavian";s:5:"ro-md";s:7:"moldavo";s:5:"ro-md";s:7:"moldova";s:5:"ro-md";s:7:"moldave";s:5:"ro-md";s:7:"moldâf";s:5:"ro-md";s:9:"moldavysk";s:5:"ro-md";s:10:"moldáivis";s:5:"ro-md";s:10:"moldobhais";s:5:"ro-md";s:10:"moldawisch";s:5:"ro-md";s:13:"moldawšćina";s:5:"ro-md";s:7:"moldvai";s:5:"ro-md";s:8:"moldavia";s:5:"ro-md";s:10:"moldóvska";s:5:"ro-md";s:10:"moldawesch";s:5:"ro-md";s:8:"moldavų";s:5:"ro-md";s:8:"moldāvu";s:5:"ro-md";s:9:"moldavjan";s:5:"ro-md";s:8:"moldovsk";s:5:"ro-md";s:9:"moldavisk";s:5:"ro-md";s:10:"mołdawski";s:5:"ro-md";s:9:"moldávio";s:5:"ro-md";s:14:"moldovenească";s:5:"ro-md";s:11:"moldavčina";s:5:"ro-md";s:13:"moldavščina";s:5:"ro-md";s:11:"moldavishte";s:5:"ro-md";s:10:"moldaviska";s:5:"ro-md";s:9:"moldovaca";s:5:"ro-md";s:17:"moldovan rumincha";s:5:"ro-md";s:11:"määramata";s:3:"und";s:24:"määrittämätön kieli";s:3:"und";s:19:"marokkói tamazight";s:3:"zgh";s:32:"marokkanescht standard-tamazight";s:3:"zgh";s:29:"marockansk standard-tamazight";s:3:"zgh";s:14:"mittekeeleline";s:3:"zxx";s:4:"mari";s:3:"chm";s:9:"mari dili";s:3:"chm";s:6:"marieg";s:3:"chm";s:11:"marijština";s:3:"chm";s:5:"marí";s:3:"chm";s:6:"mairis";s:3:"chm";s:8:"mariešu";s:3:"chm";s:8:"maryjski";s:3:"chm";s:10:"marigiella";s:3:"chm";s:10:"marijčina";s:3:"chm";s:12:"marijščina";s:3:"chm";s:7:"mariska";s:3:"chm";s:15:"middelhollandsk";s:3:"dum";s:21:"mittelniederländisch";s:3:"dum";s:12:"middle dutch";s:3:"dum";s:18:"moyen néerlandais";s:3:"dum";s:17:"middelnederlânsk";s:3:"dum";s:15:"meán-ollainnis";s:3:"dum";s:16:"meadhan-dhuitsis";s:3:"dum";s:20:"mittelniderländisch";s:3:"dum";s:13:"miðhollenska";s:3:"dum";s:20:"meddelnehderlängsch";s:3:"dum";s:19:"mëttelhollännesch";s:3:"dum";s:17:"mellomnederlandsk";s:3:"dum";s:19:"middelnedderlandsch";s:3:"dum";s:16:"middelnederlands";s:3:"dum";s:17:"mellumnederlandsk";s:3:"dum";s:18:"medelnederländska";s:3:"dum";s:13:"middelengelsk";s:3:"enm";s:14:"mittelenglisch";s:3:"enm";s:14:"middle english";s:3:"enm";s:13:"moyen anglais";s:3:"enm";s:13:"middelingelsk";s:3:"enm";s:14:"meán-bhéarla";s:3:"enm";s:15:"meadhan-bheurla";s:3:"enm";s:15:"mittelänglisch";s:3:"enm";s:9:"miðenska";s:3:"enm";s:15:"meddelänglesch";s:3:"enm";s:15:"mëttelenglesch";s:3:"enm";s:13:"mellomengelsk";s:3:"enm";s:14:"middelengelsch";s:3:"enm";s:12:"middelengels";s:3:"enm";s:13:"medelengelska";s:3:"enm";s:12:"middelfransk";s:3:"frm";s:18:"mittelfranzösisch";s:3:"frm";s:13:"middle french";s:3:"frm";s:15:"moyen français";s:3:"frm";s:13:"middelfrânsk";s:3:"frm";s:15:"meán-fhraincis";s:3:"frm";s:17:"meadhan-fhraingis";s:3:"frm";s:11:"miðfranska";s:3:"frm";s:18:"mëttelfranséisch";s:3:"frm";s:12:"mellomfransk";s:3:"frm";s:18:"middelfranzöösch";s:3:"frm";s:11:"middelfrans";s:3:"frm";s:12:"medelfranska";s:3:"frm";s:13:"muinaisranska";s:3:"fro";s:14:"middelhøjtysk";s:3:"gmh";s:17:"mittelhochdeutsch";s:3:"gmh";s:18:"middle high german";s:3:"gmh";s:19:"moyen haut-allemand";s:3:"gmh";s:17:"middelheechdútsk";s:3:"gmh";s:22:"meán-ard-ghearmáinis";s:3:"gmh";s:24:"meadhan-Àrd-gearmailtis";s:3:"gmh";s:19:"mittelhochtüütsch";s:3:"gmh";s:14:"miðháþýska";s:3:"gmh";s:21:"mëttelhéichdäitsch";s:3:"gmh";s:14:"mellomhøytysk";s:3:"gmh";s:20:"middelhoochdüütsch";s:3:"gmh";s:15:"middelhoogduits";s:3:"gmh";s:14:"mellomhøgtysk";s:3:"gmh";s:14:"medelhögtyska";s:3:"gmh";s:16:"muinaisyläsaksa";s:3:"goh";s:9:"mongondou";s:3:"gor";s:9:"monq dili";s:3:"hmn";s:12:"miao-sprache";s:3:"hmn";s:7:"mongais";s:3:"hmn";s:4:"miao";s:3:"hmn";s:12:"miao-sprooch";s:3:"hmn";s:12:"miao-spraken";s:3:"hmn";s:6:"mbundu";s:3:"umb";s:5:"mongo";s:3:"lol";s:10:"monqo dili";s:3:"lol";s:10:"mongština";s:3:"lol";s:6:"mongó";s:3:"lol";s:5:"mongu";s:3:"lol";s:8:"madurés";s:3:"mad";s:12:"maduriz dili";s:3:"mad";s:10:"madureški";s:3:"mad";s:8:"madurès";s:3:"mad";s:11:"madurština";s:3:"mad";s:7:"madwreg";s:3:"mad";s:8:"madurese";s:3:"mad";s:11:"maduresisch";s:3:"mad";s:6:"madura";s:3:"mad";s:8:"madurais";s:3:"mad";s:8:"madurees";s:3:"mad";s:8:"madurski";s:3:"mad";s:7:"madurai";s:3:"mad";s:9:"madúrska";s:3:"mad";s:11:"maduresesch";s:3:"mad";s:9:"madurezų";s:3:"mad";s:10:"maduriešu";s:3:"mad";s:8:"maduriż";s:3:"mad";s:10:"maduresisk";s:3:"mad";s:10:"madureesch";s:3:"mad";s:9:"madoerees";s:3:"mad";s:10:"madurajski";s:3:"mad";s:8:"madurês";s:3:"mad";s:9:"madureză";s:3:"mad";s:10:"madurčina";s:3:"mad";s:12:"madurščina";s:3:"mad";s:11:"maduresiska";s:3:"mad";s:11:"madura dili";s:3:"mad";s:6:"magahi";s:3:"mag";s:11:"maqahi dili";s:3:"mag";s:13:"magahijština";s:3:"mag";s:6:"magali";s:3:"mag";s:7:"magahí";s:3:"mag";s:10:"magahiešu";s:3:"mag";s:7:"magaħi";s:3:"mag";s:11:"magadhčina";s:3:"mag";s:12:"magadščina";s:3:"mag";s:7:"makasar";s:3:"mak";s:12:"makasar dili";s:3:"mak";s:8:"makassar";s:3:"mak";s:13:"makasarština";s:3:"mak";s:9:"macasareg";s:3:"mak";s:12:"makassarisch";s:3:"mak";s:7:"macasar";s:3:"mak";s:9:"makassari";s:3:"mak";s:10:"makassaars";s:3:"mak";s:8:"makaszar";s:3:"mak";s:12:"makassaresch";s:3:"mak";s:8:"makasaro";s:3:"mak";s:8:"makasaru";s:3:"mak";s:11:"makassarsch";s:3:"mak";s:12:"makasarčina";s:3:"mak";s:14:"makasarščina";s:3:"mak";s:8:"mandingo";s:3:"man";s:14:"məndinqo dili";s:3:"man";s:8:"mandinga";s:3:"man";s:13:"mandingština";s:3:"man";s:15:"manding-sprache";s:3:"man";s:7:"malinke";s:3:"man";s:9:"mandingue";s:3:"man";s:17:"manding-schpraach";s:3:"man";s:9:"mandingó";s:3:"man";s:15:"manding-sprooch";s:3:"man";s:8:"mandingu";s:3:"man";s:10:"mandingwan";s:3:"man";s:7:"manding";s:3:"man";s:5:"mande";s:3:"man";s:4:"maba";s:3:"mde";s:5:"mabų";s:3:"mde";s:4:"mabu";s:3:"mde";s:6:"mandar";s:3:"mdr";s:11:"mandar dili";s:3:"mdr";s:8:"mandareg";s:3:"mdr";s:12:"mandaresisch";s:3:"mdr";s:7:"mandari";s:3:"mdr";s:12:"mandaresesch";s:3:"mdr";s:7:"mandaru";s:3:"mdr";s:11:"mandareesch";s:3:"mdr";s:11:"mandarčina";s:3:"mdr";s:13:"mandarščina";s:3:"mdr";s:5:"mende";s:3:"men";s:10:"mende dili";s:3:"men";s:6:"mendeg";s:3:"men";s:13:"mende-sprache";s:3:"men";s:6:"mendé";s:3:"men";s:7:"meindis";s:3:"men";s:15:"mende-schpraach";s:3:"men";s:13:"mende-sprooch";s:3:"men";s:5:"mendu";s:3:"men";s:5:"mendi";s:3:"men";s:10:"middelirsk";s:3:"mga";s:12:"mittelirisch";s:3:"mga";s:12:"middle irish";s:3:"mga";s:15:"moyen irlandais";s:3:"mga";s:10:"middeliers";s:3:"mga";s:14:"meán-ghaeilge";s:3:"mga";s:16:"meadhan-ghaeilge";s:3:"mga";s:10:"miðírska";s:3:"mga";s:13:"mëtteliresch";s:3:"mga";s:10:"mellomirsk";s:3:"mga";s:12:"middeliersch";s:3:"mga";s:11:"medeliriska";s:3:"mga";s:6:"micmac";s:3:"mic";s:11:"mikmak dili";s:3:"mic";s:6:"mikmak";s:3:"mic";s:8:"micmaceg";s:3:"mic";s:14:"micmac-sprache";s:3:"mic";s:7:"mikmaki";s:3:"mic";s:9:"mi’kmaq";s:3:"mic";s:16:"micmac-schpraach";s:3:"mic";s:14:"micmac-sprooch";s:3:"mic";s:7:"mikmaku";s:3:"mic";s:6:"mikmek";s:3:"mic";s:10:"miquemaque";s:3:"mic";s:11:"mikmakčina";s:3:"mic";s:12:"mikmaščina";s:3:"mic";s:7:"manchú";s:3:"mnc";s:11:"mançu dili";s:3:"mnc";s:7:"manchou";s:3:"mnc";s:6:"manču";s:3:"mnc";s:6:"manxú";s:3:"mnc";s:13:"mandžuština";s:3:"mnc";s:6:"manshw";s:3:"mnc";s:6:"manchu";s:3:"mnc";s:13:"mandschurisch";s:3:"mnc";s:7:"mandžu";s:3:"mnc";s:7:"mantšu";s:3:"mnc";s:8:"mandchou";s:3:"mnc";s:8:"mantsjoe";s:3:"mnc";s:11:"mandžurski";s:3:"mnc";s:7:"mandzsu";s:3:"mnc";s:9:"manchuria";s:3:"mnc";s:7:"mansjú";s:3:"mnc";s:13:"mandschuresch";s:3:"mnc";s:10:"mandžūru";s:3:"mnc";s:10:"manċurjan";s:3:"mnc";s:7:"mandsju";s:3:"mnc";s:13:"mandschuursch";s:3:"mnc";s:12:"manciuriană";s:3:"mnc";s:15:"mandžurščina";s:3:"mnc";s:11:"manchuriska";s:3:"mnc";s:14:"mançurya dili";s:3:"mnc";s:8:"manipuri";s:3:"mni";s:14:"manipüri dili";s:3:"mni";s:9:"manipurí";s:3:"mni";s:13:"manipurština";s:3:"mni";s:8:"manipwri";s:3:"mni";s:15:"meithei-sprache";s:3:"mni";s:9:"manipoeri";s:3:"mni";s:11:"manapúiris";s:3:"mni";s:17:"meithei-schpraach";s:3:"mni";s:10:"manipurski";s:3:"mni";s:11:"manípúrí";s:3:"mni";s:15:"meithei-sprooch";s:3:"mni";s:9:"manipūru";s:3:"mni";s:6:"meitei";s:3:"mni";s:12:"manipuryjski";s:3:"mni";s:7:"manipur";s:3:"mni";s:13:"manípurčina";s:3:"mni";s:14:"manipurščina";s:3:"mni";s:5:"mossi";s:3:"mos";s:9:"mosi dili";s:3:"mos";s:4:"mosi";s:3:"mos";s:5:"moré";s:3:"mos";s:13:"mossi-sprache";s:3:"mos";s:4:"more";s:3:"mos";s:15:"mossi-schpraach";s:3:"mos";s:5:"moszi";s:3:"mos";s:6:"mossí";s:3:"mos";s:13:"mossi-sprooch";s:3:"mos";s:4:"mosu";s:3:"mos";s:12:"mosijščina";s:3:"mos";s:7:"marwari";s:3:"mwr";s:12:"maruari dili";s:3:"mwr";s:7:"marvari";s:3:"mwr";s:14:"márvárština";s:3:"mwr";s:8:"marwarî";s:3:"mwr";s:10:"marmhairis";s:3:"mwr";s:10:"marwarisch";s:3:"mwr";s:8:"marvarí";s:3:"mwr";s:7:"marvaru";s:3:"mwr";s:8:"marawari";s:3:"mwr";s:13:"marvarščina";s:3:"mwr";s:12:"muinaisnorja";s:3:"non";s:14:"mittelpersisch";s:3:"pal";s:15:"mëttelpersesch";s:3:"pal";s:16:"middelpers’sch";s:3:"pal";s:13:"medelpersiska";s:3:"pal";s:13:"muinaispersia";s:3:"peo";s:18:"muinaisprovensaali";s:3:"pro";s:11:"mustlaskeel";s:3:"rom";s:11:"muinaisiiri";s:3:"sga";s:13:"muinaissyyria";s:3:"syc";s:12:"malawintonga";s:3:"tog";s:22:"malavijska tongščina";s:3:"tog";s:14:"mbundu-sprache";s:3:"umb";s:16:"mbundu-schpraach";s:3:"umb";s:14:"mbundu-sprooch";s:3:"umb";s:7:"medumba";s:3:"byv";s:10:"medumbagbe";s:3:"byv";s:8:"medumbų";s:3:"byv";s:7:"medumbu";s:3:"byv";s:18:"meksika ispancası";s:5:"es-mx";s:18:"meksički španski";s:5:"es-mx";s:16:"mexicansk spansk";s:5:"es-mx";s:22:"mexikanisches spanisch";s:5:"es-mx";s:25:"mexikańska špańšćina";s:5:"es-mx";s:15:"mexican spanish";s:5:"es-mx";s:15:"meksika hispana";s:5:"es-mx";s:15:"meksikonespanja";s:5:"es-mx";s:19:"meksikaansk spaansk";s:5:"es-mx";s:21:"meksički španjolski";s:5:"es-mx";s:21:"mexiska španišćina";s:5:"es-mx";s:19:"mexíkósk spænska";s:5:"es-mx";s:22:"mexikanescht spuenesch";s:5:"es-mx";s:16:"meksikos ispanų";s:5:"es-mx";s:16:"meksikas spāņu";s:5:"es-mx";s:17:"meksikansk spansk";s:5:"es-mx";s:16:"mexicaans spaans";s:5:"es-mx";s:24:"meksykański hiszpański";s:5:"es-mx";s:17:"mexikansk spanska";s:5:"es-mx";s:22:"meksika İspanyolcası";s:5:"es-mx";s:18:"meksika ispanchasi";s:5:"es-mx";s:16:"merkezi yupikçe";s:3:"esu";s:5:"mkako";s:3:"kkj";s:4:"mafa";s:3:"maf";s:7:"mafagbe";s:3:"maf";s:5:"mafų";s:3:"maf";s:4:"mafu";s:3:"maf";s:8:"mentawai";s:3:"mwv";s:14:"mentavajština";s:3:"mwv";s:9:"mentawaï";s:3:"mwv";s:8:"mentavai";s:3:"mwv";s:5:"myene";s:3:"mye";s:8:"myenegbe";s:3:"mye";s:7:"myènè";s:3:"mye";s:6:"mjenų";s:3:"mye";s:5:"mjenu";s:3:"mye";s:10:"muslim tat";s:3:"ttt";s:16:"musulmonų tatų";s:3:"ttt";s:10:"moslim tat";s:3:"ttt";s:4:"musi";s:3:"mui";s:31:"megleno-romanian (greek script)";s:8:"ruq-grek";s:17:"mon-khmer-spraken";s:3:"mkh";s:17:"mon-kmerski jezik";s:3:"mkh";s:6:"manobo";s:3:"mno";s:12:"manobo jezik";s:3:"mno";s:13:"munda-spraken";s:3:"mun";s:11:"munda jezik";s:3:"mun";s:12:"maya-spraken";s:3:"myn";s:14:"majanski jezik";s:3:"myn";}i:226;a:15:{s:11:"âldingelsk";s:3:"ang";s:15:"ಚೆಚನ್";s:2:"ce";s:24:"ಚೋಕ್ಟಾವ್";s:3:"cho";s:18:"ಚೆರೋಕೀ";s:3:"chr";s:24:"ಚೀಯೆನ್ನೇ";s:3:"chy";s:40:"ಚರ್ಚ್ ಸ್ಲಾವಿಕ್";s:2:"cu";s:18:"ಚುವಾಶ್";s:2:"cv";s:9:"爪哇文";s:2:"jv";s:18:"ಚೈನೀಸ್";s:2:"zh";s:12:"ಚಿಗಾ";s:3:"cgg";s:18:"ಚಿಬ್ಚಾ";s:3:"chb";s:18:"ಚಗಟಾಯ್";s:3:"chg";s:18:"ಚೂಕಿಸೆ";s:3:"chk";s:43:"ಚಿನೂಕ್ ಜಾರ್ಗೋನ್";s:3:"chn";s:30:"ಚಿಪೆವ್ಯಾನ್";s:3:"chp";}i:716;a:46:{s:37:"જુની અંગ્રેજી";s:3:"ang";s:21:"ຄາຕາລານ";s:2:"ca";s:18:"ຄໍຊິກາ";s:2:"co";s:6:"ຄີ";s:2:"cr";s:36:"ຄຣີເມນເຕີຄິຊ";s:3:"crh";s:15:"જર્મન";s:2:"de";s:21:"જાપાનીઝ";s:2:"ja";s:21:"જાવાનીસ";s:2:"jv";s:30:"જ્યોર્જિઅન";s:2:"ka";s:15:"ຄອງໂກ";s:2:"kg";s:18:"ຄິຄູຢຸ";s:2:"ki";s:15:"ຄາຊັກ";s:2:"kk";s:21:"ຄັນນາດາ";s:2:"kn";s:18:"ຄານຸລິ";s:2:"kr";s:27:"ຄັດຊະມີຣີ";s:2:"ks";s:15:"ຄໍນິຊ";s:2:"kw";s:12:"ຄຣິກ";s:3:"mus";s:15:"ຄີຊົວ";s:2:"qu";s:30:"ຄິນຢາວານດາ";s:2:"rw";s:9:"ቬንዳ";s:2:"ve";s:18:"ຄອບຕິກ";s:3:"cop";s:31:"જોલા-ફોન્યી";s:3:"dyo";s:30:"ຄາເວີເດຍນູ";s:3:"kea";s:28:"ຄອຍຣາ ຊິນີ";s:3:"khq";s:27:"ຄາເລັນຈິນ";s:3:"kln";s:37:"ຄອງໂກ ຊວາຮີລິ";s:3:"swc";s:21:"ຄຣິງກອນ";s:3:"tlh";s:15:"ຄາຣິບ";s:3:"car";s:31:"જૂની ફ્રેંચ";s:3:"fro";s:27:"જિલ્બરટીઝ";s:3:"gil";s:38:"જૂની હાઇ જર્મન";s:3:"goh";s:37:"જુદેઓ-પર્શિયન";s:3:"jpr";s:28:"જુદેઓ-અરબી";s:3:"jrb";s:12:"જ્જુ";s:3:"kaj";s:21:"ຄາແນມບູ";s:3:"kbl";s:12:"ຄາສິ";s:3:"kha";s:24:"ຄິມບັນດູ";s:3:"kmb";s:15:"ຄູສໄລ";s:3:"kos";s:15:"ຄູມີກ";s:3:"kum";s:18:"ຄູເທໄນ";s:3:"kut";s:28:"જૂની નોર્સ";s:3:"non";s:28:"જૂની ફારસી";s:3:"peo";s:43:"જુની પ્રોવેન્સલ";s:3:"pro";s:28:"જૂની આયરિશ";s:3:"sga";s:18:"ຄາຢູກາ";s:3:"cay";s:12:"ຄາໂກ";s:3:"kkj";}i:346;a:55:{s:46:"पुरानी अंग्रेज़ी";s:3:"ang";s:40:"पुरातन इंग्रजी";s:3:"ang";s:52:"पश्चिमी फ़्रिसियाई";s:2:"fy";s:46:"पश्चिमी फ्रिशियन";s:2:"fy";s:40:"प्राचीन यूनानी";s:3:"grc";s:37:"प्राचीन ग्रीक";s:3:"grc";s:12:"卢森堡文";s:2:"lb";s:12:"卢干达文";s:2:"lg";s:9:"卢晒文";s:3:"lus";s:15:"ഒറോമോ";s:2:"om";s:12:"ഒഡിയ";s:2:"or";s:33:"ഒസ്സെറ്റിക്";s:2:"os";s:18:"पंजाबी";s:2:"pa";s:27:"पंगासीनान";s:3:"pag";s:30:"पाम्पान्गा";s:3:"pam";s:36:"पापियामेन्टो";s:3:"pap";s:12:"पालि";s:2:"pi";s:12:"पाली";s:2:"pi";s:15:"पोलिश";s:2:"pl";s:15:"पश्तो";s:2:"ps";s:18:"पाश्तो";s:2:"ps";s:27:"पुर्तगाली";s:2:"pt";s:27:"पोर्तुगीज";s:2:"pt";s:24:"पोर्तुगी";s:2:"pt";s:12:"卢旺达文";s:2:"rw";s:37:"पारंपरिक चीनी";s:7:"zh-hant";s:40:"पारंपारिक चीनी";s:7:"zh-hant";s:49:"परम्परागत चिनियाँ";s:7:"zh-hant";s:40:"प्राचीन मिस्री";s:3:"egy";s:49:"प्राचीन इजिप्शियन";s:3:"egy";s:9:"卢奥文";s:3:"luo";s:9:"卢雅文";s:3:"luy";s:68:"प्रमाण मोरोक्कन तॅमॅझायट";s:3:"zgh";s:42:"पोर्तुगी (युरोप)";s:5:"pt-pt";s:49:"पुरातन फ़्रांसीसी";s:3:"fro";s:37:"पुरातन फ्रेंच";s:3:"fro";s:43:"पूर्वी फ्रीसीयन";s:3:"frs";s:52:"पौर्वात्य फ्रिशियन";s:3:"frs";s:44:"पुरातन हाइ जर्मन";s:3:"goh";s:34:"पुराना नॉर्स";s:3:"non";s:34:"पुरातन नॉर्स";s:3:"non";s:46:"पारम्परिक नेवारी";s:3:"nwc";s:15:"ഒസേജ്";s:3:"osa";s:24:"पाह्लावी";s:3:"pal";s:15:"पहलवी";s:3:"pal";s:18:"पलोउआन";s:3:"pau";s:21:"पालाउआन";s:3:"pau";s:34:"पुरानी फारसी";s:3:"peo";s:34:"पुरातन फारसी";s:3:"peo";s:27:"पोह्नपिएन";s:3:"pon";s:27:"पोह्नपियन";s:3:"pon";s:49:"पुरानी प्रोवेन्सल";s:3:"pro";s:55:"पुरातन प्रोव्हेन्सल";s:3:"pro";s:34:"पुरानी आइरिश";s:3:"sga";s:34:"पुरातन आयरिश";s:3:"sga";}i:243;a:24:{s:7:"óangol";s:3:"ang";s:18:"ಫುಲಾಹ್";s:2:"ff";s:24:"ಫಿನ್ನಿಶ್";s:2:"fi";s:21:"ಫಿಜಿಯನ್";s:2:"fj";s:15:"ಫರೋಸಿ";s:2:"fo";s:21:"ಫ್ರೆಂಚ್";s:2:"fr";s:33:"ಫ್ರಿಯುಲಿಯನ್";s:3:"fur";s:9:"ógörög";s:3:"grc";s:6:"óría";s:2:"or";s:11:"óegyiptomi";s:3:"egy";s:24:"ಫಿಲಿಪಿನೊ";s:3:"fil";s:24:"ಫ್ಲೆಮಿಷ್";s:5:"nl-be";s:27:"ಫೀನಿಷಿಯನ್";s:3:"phn";s:18:"óþekkt tungumál";s:3:"und";s:15:"ಫೆಂಗ್";s:3:"fan";s:15:"ಫಾಂಟಿ";s:3:"fat";s:12:"ಫೋನ್";s:3:"fon";s:9:"ófrancia";s:3:"fro";s:15:"ófelső német";s:3:"goh";s:12:"óskandináv";s:3:"non";s:6:"ósage";s:3:"osa";s:8:"óperzsa";s:3:"peo";s:12:"óprovánszi";s:3:"pro";s:5:"óír";s:3:"sga";}i:102;a:580:{s:9:"fornenska";s:3:"ang";s:12:"fornengelska";s:3:"ang";s:14:"fas arapçası";s:3:"ary";s:46:"ဆိုရာနီ ကူဒစ်ရှ်";s:3:"ckb";s:50:"ဆွစ် အမြင့် ဂျာမန်";s:5:"de-ch";s:4:"fars";s:2:"fa";s:5:"farsi";s:2:"fa";s:8:"farsaidh";s:2:"fa";s:6:"farsî";s:2:"fa";s:7:"faarisi";s:2:"fa";s:7:"farsça";s:2:"fa";s:7:"forscha";s:2:"fa";s:8:"fulfulde";s:2:"ff";s:5:"fulah";s:2:"ff";s:9:"fula dili";s:2:"ff";s:3:"ful";s:2:"ff";s:10:"fulbština";s:2:"ff";s:5:"ffwla";s:2:"ff";s:7:"fulagbe";s:2:"ff";s:4:"fula";s:2:"ff";s:5:"fulbe";s:2:"ff";s:6:"fulani";s:2:"ff";s:9:"fuláinis";s:2:"ff";s:5:"fúla";s:2:"ff";s:7:"fulahų";s:2:"ff";s:4:"fulu";s:2:"ff";s:6:"fulaħ";s:2:"ff";s:10:"fulah simi";s:2:"ff";s:9:"fulbčina";s:2:"ff";s:10:"fulščina";s:2:"ff";s:4:"fins";s:2:"fi";s:10:"finlandés";s:2:"fi";s:3:"fin";s:2:"fi";s:6:"finneg";s:2:"fi";s:6:"finski";s:2:"fi";s:6:"finès";s:2:"fi";s:9:"finština";s:2:"fi";s:7:"ffinneg";s:2:"fi";s:5:"finsk";s:2:"fi";s:8:"finnisch";s:2:"fi";s:10:"finšćina";s:2:"fi";s:11:"finlanɖgbe";s:2:"fi";s:7:"finnish";s:2:"fi";s:5:"finna";s:2:"fi";s:6:"finés";s:2:"fi";s:11:"finlandiera";s:2:"fi";s:6:"finskt";s:2:"fi";s:7:"finnois";s:2:"fi";s:10:"finlandês";s:2:"fi";s:11:"fionlainnis";s:2:"fi";s:12:"fionnlannais";s:2:"fi";s:4:"finn";s:2:"fi";s:7:"finnese";s:2:"fi";s:7:"finnska";s:2:"fi";s:10:"finlandese";s:2:"fi";s:14:"finlandimiutut";s:2:"fi";s:8:"finnesch";s:2:"fi";s:7:"finland";s:2:"fi";s:10:"finlandiż";s:2:"fi";s:7:"finnsch";s:2:"fi";s:7:"fiński";s:2:"fi";s:10:"fines simi";s:2:"fi";s:10:"finlandais";s:2:"fi";s:11:"finlandeză";s:2:"fi";s:9:"fínčina";s:2:"fi";s:10:"finščina";s:2:"fi";s:12:"fiinlaandees";s:2:"fi";s:11:"finlandisht";s:2:"fi";s:6:"finska";s:2:"fi";s:5:"fince";s:2:"fi";s:6:"fincha";s:2:"fi";s:24:"finlandés de tornedalen";s:3:"fit";s:24:"finština (tornedalská)";s:3:"fit";s:16:"ffinneg tornedal";s:3:"fit";s:20:"finnois tornédalien";s:3:"fit";s:25:"finlandese del tornedalen";s:3:"fit";s:9:"fidjiaans";s:2:"fj";s:6:"fixanu";s:2:"fj";s:4:"fici";s:2:"fj";s:7:"fidjieg";s:2:"fj";s:10:"fidžijski";s:2:"fj";s:6:"fijià";s:2:"fj";s:13:"fidžijština";s:2:"fj";s:8:"ffijïeg";s:2:"fj";s:8:"fijiansk";s:2:"fj";s:7:"fidschi";s:2:"fj";s:13:"fidžišćina";s:2:"fj";s:8:"fidzigbe";s:2:"fj";s:6:"fijian";s:2:"fj";s:6:"fiĝia";s:2:"fj";s:7:"fiyiano";s:2:"fj";s:6:"fidži";s:2:"fj";s:7:"fijiera";s:2:"fj";s:10:"fidjianskt";s:2:"fj";s:7:"fidjien";s:2:"fj";s:6:"fizian";s:2:"fj";s:6:"fijysk";s:2:"fj";s:6:"fidsis";s:2:"fj";s:6:"fìdis";s:2:"fj";s:7:"fixiano";s:2:"fj";s:13:"fidschianisch";s:2:"fj";s:13:"fidźišćina";s:2:"fj";s:6:"fidzsi";s:2:"fj";s:4:"fiji";s:2:"fj";s:10:"fídjeyska";s:2:"fj";s:7:"figiano";s:2:"fj";s:10:"fidschesch";s:2:"fj";s:13:"fidschianesch";s:2:"fj";s:8:"fidžių";s:2:"fj";s:10:"fidžiešu";s:2:"fj";s:5:"fiġi";s:2:"fj";s:13:"fidschiaansch";s:2:"fj";s:7:"fijisch";s:2:"fj";s:10:"fidżijski";s:2:"fj";s:7:"fijiano";s:2:"fj";s:9:"fidschian";s:2:"fj";s:8:"fijiană";s:2:"fj";s:11:"fidjigiella";s:2:"fj";s:12:"fidžijčina";s:2:"fj";s:14:"fidžijščina";s:2:"fj";s:8:"fixhiane";s:2:"fj";s:9:"fijianska";s:2:"fj";s:9:"fiji dili";s:2:"fj";s:6:"fijcha";s:2:"fj";s:9:"føroyskt";s:2:"fo";s:7:"faroees";s:2:"fo";s:7:"feroés";s:2:"fo";s:5:"farer";s:2:"fo";s:7:"faeroeg";s:2:"fo";s:6:"farski";s:2:"fo";s:7:"feroès";s:2:"fo";s:10:"faerština";s:2:"fo";s:8:"ffaröeg";s:2:"fo";s:8:"færøsk";s:2:"fo";s:10:"färöisch";s:2:"fo";s:12:"ferejšćina";s:2:"fo";s:8:"faroegbe";s:2:"fo";s:7:"faroese";s:2:"fo";s:5:"feroa";s:2:"fo";s:7:"fääri";s:2:"fo";s:7:"faroera";s:2:"fo";s:9:"féroïen";s:2:"fo";s:7:"faroês";s:2:"fo";s:10:"faeröersk";s:2:"fo";s:7:"faróis";s:2:"fo";s:10:"fàrothais";s:2:"fo";s:7:"faroés";s:2:"fo";s:8:"ferojski";s:2:"fo";s:13:"färöšćina";s:2:"fo";s:8:"feröeri";s:2:"fo";s:4:"faro";s:2:"fo";s:9:"færeyska";s:2:"fo";s:13:"färröeresch";s:2:"fo";s:10:"färöesch";s:2:"fo";s:7:"farerų";s:2:"fo";s:5:"fēru";s:2:"fo";s:5:"faroe";s:2:"fo";s:7:"fawriż";s:2:"fo";s:9:"færøysk";s:2:"fo";s:11:"färöösch";s:2:"fo";s:9:"faeröers";s:2:"fo";s:8:"farerski";s:2:"fo";s:7:"feroês";s:2:"fo";s:11:"feroes simi";s:2:"fo";s:7:"ferrais";s:2:"fo";s:8:"faroeză";s:2:"fo";s:11:"fearagiella";s:2:"fo";s:9:"faerčina";s:2:"fo";s:10:"ferščina";s:2:"fo";s:7:"farowsi";s:2:"fo";s:8:"faroisht";s:2:"fo";s:10:"färöiska";s:2:"fo";s:10:"faroe dili";s:2:"fo";s:8:"farercha";s:2:"fo";s:9:"français";s:2:"fr";s:5:"frans";s:2:"fr";s:8:"frɛnkye";s:2:"fr";s:8:"francés";s:2:"fr";s:8:"fransız";s:2:"fr";s:9:"francuski";s:2:"fr";s:8:"francès";s:2:"fr";s:14:"francouzština";s:2:"fr";s:8:"ffrangeg";s:2:"fr";s:6:"fransk";s:2:"fr";s:12:"französisch";s:2:"fr";s:14:"francojšćina";s:2:"fr";s:9:"fransegbe";s:2:"fr";s:6:"french";s:2:"fr";s:6:"franca";s:2:"fr";s:9:"frantsesa";s:2:"fr";s:10:"farayseere";s:2:"fr";s:7:"franskt";s:2:"fr";s:8:"francês";s:2:"fr";s:7:"frânsk";s:2:"fr";s:8:"fraincis";s:2:"fr";s:8:"fraingis";s:2:"fr";s:10:"faransanci";s:2:"fr";s:13:"francošćina";s:2:"fr";s:7:"francia";s:2:"fr";s:8:"francese";s:2:"fr";s:9:"fụrench";s:2:"fr";s:7:"franska";s:2:"fr";s:10:"franskisut";s:2:"fr";s:14:"franzüüsesch";s:2:"fr";s:7:"frenkek";s:2:"fr";s:11:"franséisch";s:2:"fr";s:7:"franču";s:2:"fr";s:8:"frantsay";s:2:"fr";s:9:"franċiż";s:2:"fr";s:12:"franzöösch";s:2:"fr";s:12:"frances simi";s:2:"fr";s:7:"franzos";s:2:"fr";s:9:"franceză";s:2:"fr";s:15:"fránskkagiella";s:2:"fr";s:8:"farânzi";s:2:"fr";s:14:"francúzština";s:2:"fr";s:13:"francoščina";s:2:"fr";s:9:"faransiis";s:2:"fr";s:11:"frëngjisht";s:2:"fr";s:10:"fransızca";s:2:"fr";s:10:"fransuzcha";s:2:"fr";s:16:"français cadien";s:3:"frc";s:14:"francés cajun";s:3:"frc";s:26:"francouzština (kajunská)";s:3:"frc";s:14:"ffrangeg cajwn";s:3:"frc";s:14:"francese cajun";s:3:"frc";s:23:"franko-provensálština";s:3:"frp";s:19:"frankoprovenzalisch";s:3:"frp";s:17:"franco-provençal";s:3:"frp";s:16:"francoprovenzale";s:3:"frp";s:19:"frankoprovenzalesch";s:3:"frp";s:19:"franko-prowansalski";s:3:"frp";s:18:"frankoprovensalska";s:3:"frp";s:17:"frisón del norte";s:3:"frr";s:15:"frizeg an norzh";s:3:"frr";s:20:"frisó septentrional";s:3:"frr";s:21:"fríština (severní)";s:3:"frr";s:17:"ffriseg y gogledd";s:3:"frr";s:21:"frisón septentrional";s:3:"frr";s:14:"frison du nord";s:3:"frr";s:25:"freaslainnis an tuaiscirt";s:3:"frr";s:23:"frìoslannais thuathach";s:3:"frr";s:12:"frisia utara";s:3:"frr";s:22:"frisone settentrionale";s:3:"frr";s:20:"frísio setentrional";s:3:"frr";s:13:"fris dal nord";s:3:"frr";s:17:"frizonă nordică";s:3:"frr";s:6:"furlan";s:3:"fur";s:9:"friulianu";s:3:"fur";s:10:"friul dili";s:3:"fur";s:10:"frioulaneg";s:3:"fur";s:10:"friulijski";s:3:"fur";s:8:"friülà";s:3:"fur";s:12:"furlanština";s:3:"fur";s:8:"ffriwleg";s:3:"fur";s:8:"friulian";s:3:"fur";s:9:"friulisch";s:3:"fur";s:8:"friulano";s:3:"fur";s:7:"friuuli";s:3:"fur";s:6:"friuli";s:3:"fur";s:8:"frioulan";s:3:"fur";s:8:"friulysk";s:3:"fur";s:9:"friúilis";s:3:"fur";s:9:"friùilis";s:3:"fur";s:8:"friulski";s:3:"fur";s:10:"fríúlska";s:3:"fur";s:9:"friulesch";s:3:"fur";s:6:"frulan";s:3:"fur";s:7:"friūlu";s:3:"fur";s:9:"frijuljan";s:3:"fur";s:10:"friuliansk";s:3:"fur";s:9:"friuulsch";s:3:"fur";s:7:"friulan";s:3:"fur";s:9:"friulană";s:3:"fur";s:10:"friulčina";s:3:"fur";s:13:"furlanščina";s:3:"fur";s:11:"friulianska";s:3:"fur";s:5:"frysk";s:2:"fy";s:18:"frisón occidental";s:2:"fy";s:20:"frizeg ar cʼhornôg";s:2:"fy";s:9:"frizijski";s:2:"fy";s:15:"frisó oriental";s:2:"fy";s:10:"fríština";s:2:"fy";s:19:"ffriseg y gorllewin";s:2:"fy";s:7:"frisisk";s:2:"fy";s:12:"frizišćina";s:2:"fy";s:5:"frisa";s:2:"fy";s:8:"frisiera";s:2:"fy";s:17:"frison occidental";s:2:"fy";s:7:"frisian";s:2:"fy";s:23:"freaslainnis iartharach";s:2:"fy";s:21:"frìoslannais siarach";s:2:"fy";s:7:"frisón";s:2:"fy";s:9:"friesisch";s:2:"fy";s:5:"fríz";s:2:"fy";s:8:"frisiano";s:2:"fy";s:12:"frisia barat";s:2:"fy";s:19:"frisone occidentale";s:2:"fy";s:8:"friżjan";s:2:"fy";s:5:"fries";s:2:"fy";s:18:"frísico ocidental";s:2:"fy";s:17:"frísio ocidental";s:2:"fy";s:11:"frison simi";s:2:"fy";s:4:"fris";s:2:"fy";s:21:"frizonă occidentală";s:2:"fy";s:13:"frizijščina";s:2:"fy";s:18:"firiisiyan galbeed";s:2:"fy";s:11:"frizianisht";s:2:"fy";s:11:"forngríska";s:3:"grc";s:12:"forngrekiska";s:3:"grc";s:31:"ဆွစ် ဂျာမန်";s:3:"gsw";s:10:"fiji hindi";s:8:"hif-latn";s:13:"fidschi-hindi";s:3:"hif";s:12:"fidžinhindi";s:3:"hif";s:13:"fidžio hindi";s:3:"hif";s:13:"fijisch hindi";s:3:"hif";s:10:"fiji-hindi";s:3:"hif";s:14:"fiji hintçesi";s:3:"hif";s:25:"fiji hindi (latin script)";s:8:"hif-latn";s:12:"felső szorb";s:3:"hsb";s:18:"francique ripuaire";s:3:"ksh";s:9:"falčtina";s:3:"pfl";s:14:"fornpreussiska";s:3:"prg";s:17:"fotigis (burazil)";s:5:"pt-br";s:18:"ဆမ်ဂို";s:2:"sg";s:18:"ဆင်ဟာလ";s:2:"si";s:22:"южносаамски";s:3:"sma";s:21:"ဆိုမာလီ";s:2:"so";s:30:"ဆားဗီးယန်း";s:2:"sr";s:20:"frisón de saterland";s:3:"stq";s:26:"fríština (saterlandská)";s:3:"stq";s:19:"frison de saterland";s:3:"stq";s:22:"fryzyjski saterlandzki";s:3:"stq";s:15:"ဆူဒန်";s:2:"su";s:18:"ဆွီဒင်";s:2:"sv";s:21:"ဆြာဟီလီ";s:2:"sw";s:8:"fotiaceg";s:3:"udm";s:6:"fendeg";s:2:"ve";s:7:"feniseg";s:3:"vec";s:9:"fietnameg";s:2:"vi";s:11:"fiitnaamays";s:2:"vi";s:19:"flamencu occidental";s:3:"vls";s:25:"flandrezeg ar c’hornôg";s:3:"vls";s:19:"fflemeg gorllewinol";s:3:"vls";s:18:"flamand occidental";s:3:"vls";s:17:"flannrais siarach";s:3:"vls";s:21:"fiammingo occidentale";s:3:"vls";s:18:"franconien du main";s:3:"vmf";s:18:"forenklet kinesisk";s:7:"zh-hans";s:22:"ferienfâldich sineesk";s:7:"zh-hans";s:17:"forenkla kinesisk";s:7:"zh-hans";s:20:"förenklad kinesiska";s:7:"zh-hans";s:12:"fonyi jolera";s:3:"dyo";s:11:"fornegypska";s:3:"egy";s:13:"fornegyptiska";s:3:"egy";s:9:"filippyns";s:3:"fil";s:8:"filipín";s:3:"fil";s:8:"filippin";s:3:"fil";s:9:"filipineg";s:3:"fil";s:10:"filipinski";s:3:"fil";s:7:"filipí";s:3:"fil";s:14:"filipínština";s:3:"fil";s:10:"ffilipineg";s:3:"fil";s:10:"filippinsk";s:3:"fil";s:8:"filipino";s:3:"fil";s:14:"filipinšćina";s:3:"fil";s:10:"filipingbe";s:3:"fil";s:8:"filipina";s:3:"fil";s:11:"filipiniskt";s:3:"fil";s:7:"filipin";s:3:"fil";s:9:"filipynsk";s:3:"fil";s:10:"filipínis";s:3:"fil";s:9:"filipinis";s:3:"fil";s:11:"filippínó";s:3:"fil";s:12:"filippseyska";s:3:"fil";s:9:"filippino";s:3:"fil";s:3:"fil";s:3:"fil";s:14:"filipiniečių";s:3:"fil";s:13:"filipīniešu";s:3:"fil";s:9:"filipijns";s:3:"fil";s:13:"filipino simi";s:3:"fil";s:11:"filipineză";s:3:"fil";s:17:"filippiinnagiella";s:3:"fil";s:13:"filipínčina";s:3:"fil";s:14:"filipinščina";s:3:"fil";s:10:"filipinase";s:3:"fil";s:11:"filippinska";s:3:"fil";s:9:"filipince";s:3:"fil";s:10:"filipincha";s:3:"fil";s:11:"flere sprog";s:3:"mul";s:12:"flere språk";s:3:"mul";s:13:"fleire språk";s:3:"mul";s:12:"flera språk";s:3:"mul";s:8:"flamencu";s:5:"nl-be";s:7:"flamand";s:5:"nl-be";s:10:"flandrezeg";s:5:"nl-be";s:9:"flamanski";s:5:"nl-be";s:7:"flamenc";s:5:"nl-be";s:7:"fflemeg";s:5:"nl-be";s:6:"flamsk";s:5:"nl-be";s:9:"flämisch";s:5:"nl-be";s:11:"flamšćina";s:5:"nl-be";s:9:"flemiagbe";s:5:"nl-be";s:7:"flemish";s:5:"nl-be";s:7:"flandra";s:5:"nl-be";s:8:"flamenco";s:5:"nl-be";s:6:"flaami";s:5:"nl-be";s:10:"flandriera";s:5:"nl-be";s:7:"flamant";s:5:"nl-be";s:9:"flannrais";s:5:"nl-be";s:11:"fläämisch";s:5:"nl-be";s:8:"flæmska";s:5:"nl-be";s:9:"fiammingo";s:5:"nl-be";s:9:"flämesch";s:5:"nl-be";s:9:"flamandų";s:5:"nl-be";s:6:"flāmu";s:5:"nl-be";s:10:"fläämsch";s:5:"nl-be";s:19:"flamandzki (belgia)";s:5:"nl-be";s:8:"flamengo";s:5:"nl-be";s:4:"flam";s:5:"nl-be";s:9:"flamandă";s:5:"nl-be";s:10:"flámčina";s:5:"nl-be";s:11:"flamščina";s:5:"nl-be";s:8:"flamande";s:5:"nl-be";s:12:"flamländska";s:5:"nl-be";s:8:"flamanca";s:5:"nl-be";s:10:"flamandcha";s:5:"nl-be";s:23:"южен ндебеле";s:2:"nr";s:8:"fenisies";s:3:"phn";s:7:"feniciu";s:3:"phn";s:12:"foyenik dili";s:3:"phn";s:10:"fenikianeg";s:3:"phn";s:11:"feničanski";s:3:"phn";s:6:"fenici";s:3:"phn";s:11:"féničtina";s:3:"phn";s:9:"fønikisk";s:3:"phn";s:7:"fenicio";s:3:"phn";s:9:"foiniikia";s:3:"phn";s:8:"foinikia";s:3:"phn";s:9:"foenisysk";s:3:"phn";s:8:"fenički";s:3:"phn";s:9:"főniciai";s:3:"phn";s:7:"funisia";s:3:"phn";s:11:"fönikíska";s:3:"phn";s:12:"finikiečių";s:3:"phn";s:11:"feniķiešu";s:3:"phn";s:8:"feniċju";s:3:"phn";s:10:"foenicisch";s:3:"phn";s:7:"fenicki";s:3:"phn";s:8:"fenício";s:3:"phn";s:8:"fenizian";s:3:"phn";s:10:"feniciană";s:3:"phn";s:10:"feničtina";s:3:"phn";s:15:"feničanščina";s:3:"phn";s:9:"feniciska";s:3:"phn";s:11:"fenike dili";s:3:"phn";s:21:"ဆန်ဘူရု";s:3:"saq";s:15:"ဆန်ဂု";s:3:"sbp";s:5:"faieg";s:3:"vai";s:15:"ဆိုဂါ";s:3:"xog";s:26:"fară conținut lingvistic";s:3:"zxx";s:19:"francés de canadá";s:5:"fr-ca";s:17:"francès canadenc";s:5:"fr-ca";s:15:"ffrangeg canada";s:5:"fr-ca";s:19:"francés canadiense";s:5:"fr-ca";s:18:"français canadien";s:5:"fr-ca";s:19:"francês dal canade";s:5:"fr-ca";s:19:"fraincis cheanadach";s:5:"fr-ca";s:16:"fraingis chanada";s:5:"fr-ca";s:18:"francés canadiano";s:5:"fr-ca";s:17:"francese canadese";s:5:"fr-ca";s:25:"franzüüsesch uß kanada";s:5:"fr-ca";s:18:"franċiż kanadiż";s:5:"fr-ca";s:18:"francês canadiano";s:5:"fr-ca";s:18:"francês canadense";s:5:"fr-ca";s:16:"franzos canadais";s:5:"fr-ca";s:20:"franceză canadiană";s:5:"fr-ca";s:26:"francúzština (kanadská)";s:5:"fr-ca";s:21:"frëngjishte kanadeze";s:5:"fr-ca";s:17:"francés de suiza";s:5:"fr-ch";s:14:"francès suís";s:5:"fr-ch";s:18:"ffrangeg y swistir";s:5:"fr-ch";s:14:"francés suizo";s:5:"fr-ch";s:16:"français suisse";s:5:"fr-ch";s:20:"francês de svuizare";s:5:"fr-ch";s:21:"fraincis eilvéiseach";s:5:"fr-ch";s:21:"fraingis eilbheiseach";s:5:"fr-ch";s:15:"francés suízo";s:5:"fr-ch";s:17:"francese svizzero";s:5:"fr-ch";s:30:"franzüüsesch uß de schweijz";s:5:"fr-ch";s:19:"franċiż Żvizzeru";s:5:"fr-ch";s:34:"ဆွစ် ပြင်သစ်";s:5:"fr-ch";s:16:"francês suíço";s:5:"fr-ch";s:15:"franzos svizzer";s:5:"fr-ch";s:21:"franceză elvețiană";s:5:"fr-ch";s:30:"francúzština (švajčiarska)";s:5:"fr-ch";s:25:"faransiis (iswiiserlaand)";s:5:"fr-ch";s:22:"frëngjishte zvicerane";s:5:"fr-ch";s:24:"южноалтайски";s:3:"alt";s:26:"южноалтайский";s:3:"alt";s:4:"fang";s:3:"fan";s:9:"fang dili";s:3:"fan";s:6:"fangbe";s:3:"fan";s:5:"fangi";s:3:"fan";s:5:"fangu";s:3:"fan";s:6:"fangue";s:3:"fan";s:9:"fangčina";s:3:"fan";s:13:"fangijščina";s:3:"fan";s:5:"fanti";s:3:"fat";s:10:"fanti dili";s:3:"fat";s:10:"fantština";s:3:"fat";s:6:"ffanti";s:3:"fat";s:13:"fanti-sprache";s:3:"fat";s:15:"fanti-schpraach";s:3:"fat";s:6:"fantí";s:3:"fat";s:13:"fanti-sprooch";s:3:"fat";s:5:"fantu";s:3:"fat";s:13:"fantijščina";s:3:"fat";s:3:"fon";s:3:"fon";s:8:"fon dili";s:3:"fon";s:9:"fonština";s:3:"fon";s:11:"fon-sprache";s:3:"fon";s:4:"foni";s:3:"fon";s:4:"fón";s:3:"fon";s:11:"fon-sprooch";s:3:"fon";s:4:"fonu";s:3:"fon";s:3:"fom";s:3:"fon";s:8:"fončina";s:3:"fon";s:10:"fonščina";s:3:"fon";s:11:"fonspråket";s:3:"fon";s:14:"francés mediu";s:3:"frm";s:15:"francès mitjà";s:3:"frm";s:30:"francouzština (středověká)";s:3:"frm";s:14:"ffrangeg canol";s:3:"frm";s:17:"francés medieval";s:3:"frm";s:18:"francuski, srednji";s:3:"frm";s:14:"francese medio";s:3:"frm";s:20:"franċiż, medjevali";s:3:"frm";s:17:"francês medieval";s:3:"frm";s:15:"francês médio";s:3:"frm";s:14:"franzos mesaun";s:3:"frm";s:18:"franceză mijlocie";s:3:"frm";s:16:"francés antiguu";s:3:"fro";s:14:"francès antic";s:3:"fro";s:23:"francouzština (stará)";s:3:"fro";s:16:"francés antiguo";s:3:"fro";s:11:"fornfranska";s:3:"fro";s:15:"francese antico";s:3:"fro";s:16:"franċiż, antik";s:3:"fro";s:16:"francês arcaico";s:3:"fro";s:12:"franzos vegl";s:3:"fro";s:15:"franceză veche";s:3:"fro";s:16:"frisón oriental";s:3:"frs";s:15:"frizeg ar reter";s:3:"frs";s:17:"frisó occidental";s:3:"frs";s:23:"fríština (východní)";s:3:"frs";s:17:"ffriseg y dwyrain";s:3:"frs";s:15:"frison oriental";s:3:"frs";s:20:"frìoslannais earach";s:3:"frs";s:12:"frisia timur";s:3:"frs";s:17:"frisone orientale";s:3:"frs";s:18:"fryzyjski wschodni";s:3:"frs";s:16:"frísio oriental";s:3:"frs";s:16:"frisão oriental";s:3:"frs";s:15:"fris da l’ost";s:3:"frs";s:19:"frizonă orientală";s:3:"frs";s:14:"fornháþýska";s:3:"goh";s:13:"fornhögtyska";s:3:"goh";s:12:"fornnordiska";s:3:"non";s:13:"fornpersneska";s:3:"peo";s:12:"fornpersiska";s:3:"peo";s:17:"fornpróvensalska";s:3:"pro";s:16:"fornprovensalska";s:3:"pro";s:10:"fornírska";s:3:"sga";s:10:"forniriska";s:3:"sga";s:3:"fut";s:3:"bfd";s:6:"frafra";s:3:"gur";s:8:"farefare";s:3:"gur";s:21:"finnougrische spraken";s:3:"fiu";s:16:"filipinski jezik";s:3:"phi";}i:476;a:66:{s:9:"古英語";s:3:"ang";s:9:"古英文";s:3:"ang";s:18:"বাশকির";s:2:"ba";s:30:"বেলারুশিয়";s:2:"be";s:27:"বুলগেরিয়";s:2:"bg";s:21:"বিসলামা";s:2:"bi";s:21:"বামবারা";s:2:"bm";s:15:"বাংলা";s:2:"bn";s:61:"বিষ্ণুপ্রিয়া মণিপুরী";s:3:"bpy";s:18:"ব্রেটন";s:2:"br";s:24:"বসনীয়ান";s:2:"bs";s:18:"বুগিনি";s:3:"bug";s:55:"ඔස්ට්‍රියානු ජර්මන්";s:5:"de-at";s:40:"ব্রিটিশ ইংরেজি";s:5:"en-gb";s:15:"বাস্ক";s:2:"eu";s:21:"古代ギリシャ語";s:3:"grc";s:12:"古希腊文";s:3:"grc";s:12:"古希臘文";s:3:"grc";s:15:"古吉拉特文";s:2:"gu";s:15:"বর্মি";s:2:"my";s:15:"ඔරොමෝ";s:2:"om";s:15:"ඔරියා";s:2:"or";s:52:"ব্রাজিলের পর্তুগীজ";s:5:"pt-br";s:12:"르완다어";s:2:"rw";s:18:"ゼーランド語";s:3:"zea";s:18:"বেম্বা";s:3:"bem";s:12:"বেনা";s:3:"bez";s:12:"বড়ো";s:3:"brx";s:21:"古代エジプト語";s:3:"egy";s:12:"古埃及文";s:3:"egy";s:9:"古西文";s:3:"guz";s:21:"বাফিয়া";s:3:"ksf";s:52:"বহুগুণিতক ভাষাসমূহ";s:3:"mul";s:9:"르와어";s:3:"rwk";s:15:"ব্লিন";s:3:"byn";s:18:"বেলুচী";s:3:"bal";s:24:"বালিনীয়";s:3:"ban";s:12:"বাসা";s:3:"bas";s:12:"বেজা";s:3:"bej";s:15:"বিকোল";s:3:"bik";s:12:"বিনি";s:3:"bin";s:15:"ব্রাজ";s:3:"bra";s:24:"বুরিয়াত";s:3:"bua";s:18:"古フランス語";s:3:"fro";s:9:"古法文";s:3:"fro";s:15:"বায়া";s:3:"gba";s:18:"古高ドイツ語";s:3:"goh";s:15:"古高地德文";s:3:"goh";s:21:"古高地日耳曼文";s:3:"goh";s:15:"古ノルド語";s:3:"non";s:15:"古诺尔斯文";s:3:"non";s:15:"古諾爾斯文";s:3:"non";s:21:"古典ネワール語";s:3:"nwc";s:15:"古尼瓦爾文";s:3:"nwc";s:21:"古代ペルシア語";s:3:"peo";s:15:"古老波斯文";s:3:"peo";s:12:"古波斯文";s:3:"peo";s:24:"古期プロバンス語";s:3:"pro";s:18:"古普羅旺斯文";s:3:"pro";s:27:"古期アイルランド語";s:3:"sga";s:15:"古爱尔兰文";s:3:"sga";s:15:"古愛爾蘭文";s:3:"sga";s:12:"古粟特文";s:3:"sog";s:18:"古典シリア語";s:3:"syc";s:15:"古敘利亞文";s:3:"syc";s:12:"ゼナガ語";s:3:"zen";}i:331;a:14:{s:43:"ძველი ინგლისური";s:3:"ang";s:21:"ძონგკხა";s:2:"dz";s:37:"Գաելյան Շոտլանդերեն";s:2:"gd";s:40:"ძველი ბერძნული";s:3:"grc";s:9:"溫達文";s:2:"ve";s:39:"ძველეგვიპტური";s:3:"egy";s:9:"溫舊文";s:3:"vun";s:18:"छगाताई";s:3:"chg";s:40:"ძველი ფრანგული";s:3:"fro";s:55:"ძველი ზემოგერმანული";s:3:"goh";s:51:"ძველსკანდინავიური";s:3:"non";s:40:"ძველი სპარსული";s:3:"peo";s:46:"ძველი პროვანსული";s:3:"pro";s:46:"ძველი ირლანდიური";s:3:"sga";}i:242;a:23:{s:46:"ಪ್ರಾಚೀನ ಇಂಗ್ಲೀಷ್";s:3:"ang";s:24:"ಪರ್ಶಿಯನ್";s:2:"fa";s:46:"ಪಶ್ಚಿಮ ಫ್ರಿಸಿಯನ್";s:2:"fy";s:40:"ಪ್ರಾಚೀನ ಗ್ರೀಕ್";s:3:"grc";s:18:"ಪಂಜಾಬಿ";s:2:"pa";s:27:"ಪಂಗಾಸಿನನ್";s:3:"pag";s:21:"ಪಂಪಾಂಗಾ";s:3:"pam";s:30:"ಪಾಪಿಯಮೆಂಟೋ";s:3:"pap";s:12:"ಪಾಲಿ";s:2:"pi";s:18:"ಪೋಲಿಶ್";s:2:"pl";s:18:"ಪಾಷ್ಟೋ";s:2:"ps";s:30:"ಪೋರ್ಚುಗೀಸ್";s:2:"pt";s:52:"ಪ್ರಾಚೀನ ಈಜಿಪ್ಟಿಯನ್";s:3:"egy";s:43:"ಪ್ರಾಚೀನ ಫ್ರೆಂಚ್";s:3:"fro";s:43:"ಪೂರ್ವ ಫ್ರಿಸಿಯನ್";s:3:"frs";s:47:"ಪ್ರಾಚೀನ ಹೈ ಜರ್ಮನ್";s:3:"goh";s:40:"ಪ್ರಾಚೀನ ನೋರ್ಸ್";s:3:"non";s:18:"ಪಹ್ಲವಿ";s:3:"pal";s:18:"ಪಲುಆನ್";s:3:"pau";s:46:"ಪ್ರಾಚೀನ ಪರ್ಶಿಯನ್";s:3:"peo";s:33:"ಪೋನ್‌‌ಪಿಯನ್";s:3:"pon";s:61:"ಪ್ರಾಚೀನ ಪ್ರೊವೆನ್ಶಿಯಲ್";s:3:"pro";s:37:"ಪ್ರಾಚೀನ ಐರಿಷ್";s:3:"sga";}i:256;a:66:{s:13:"고대 영어";s:3:"ang";s:21:"ಸೆಬುಆನೋ";s:3:"ceb";s:43:"ಸೊರಾನಿ ಕುರ್ದಿಷ್";s:3:"ckb";s:44:"ಸ್ವಿಸ್ ಹೈ ಜರ್ಮನ್";s:5:"de-ch";s:28:"고지 독일어 (스위스)";s:5:"de-ch";s:30:"ಸ್ಪ್ಯಾನಿಷ್";s:2:"es";s:49:"ಸ್ಕಾಟಿಶ್ ಗ್ಯಾಲಿಕ್";s:2:"gd";s:9:"고트어";s:3:"got";s:37:"ಸ್ವಿಸ್ ಜರ್ಮನ್";s:3:"gsw";s:22:"고지 소르비아어";s:3:"hsb";s:12:"匈牙利文";s:2:"hu";s:28:"ಸಿಚುಅನ್ ಯಿ";s:2:"ii";s:9:"폰틱어";s:3:"pnt";s:21:"ಸಂಸ್ಕೃತ";s:2:"sa";s:18:"ಸಂತಾಲಿ";s:3:"sat";s:30:"ಸರ್ಡೀನಿಯನ್";s:2:"sc";s:27:"ಸಿಸಿಲಿಯನ್";s:3:"scn";s:24:"ಸ್ಕೋಟ್ಸ್";s:3:"sco";s:15:"ಸಿಂಧಿ";s:2:"sd";s:15:"ಸಾಂಗೋ";s:2:"sg";s:49:"ಸರ್ಬೋ-ಕ್ರೊಯೇಶಿಯನ್";s:2:"sh";s:15:"ಸಿಂಹಳ";s:2:"si";s:24:"ಸ್ಲೋವಾಕ್";s:2:"sk";s:33:"ಸ್ಲೋವೇನಿಯನ್";s:2:"sl";s:18:"ಸಮೋವನ್";s:2:"sm";s:18:"ಸೊಮಾಲಿ";s:2:"so";s:24:"ಸರ್ಬಿಯನ್";s:2:"sr";s:37:"ಸ್ರಾನನ್ ಟೋಂಗೋ";s:3:"srn";s:18:"ಸ್ವಾತಿ";s:2:"ss";s:27:"ಸುಂಡಾನೀಸ್";s:2:"su";s:24:"ಸ್ವೀಡಿಷ್";s:2:"sv";s:21:"ಸ್ವಹಿಲಿ";s:2:"sw";s:18:"ಸ್ವಾನಾ";s:2:"tn";s:15:"ಸೋಂಗಾ";s:2:"ts";s:40:"ಸರಳೀಕೃತ ಚೈನೀಸ್";s:7:"zh-hans";s:52:"ಸಾಂಪ್ರದಾಯಿಕ ಚೈನೀಸ್";s:7:"zh-hant";s:18:"ಸಂಬುರು";s:3:"saq";s:12:"ಸಂಗು";s:3:"sbp";s:9:"ಸೆನ";s:3:"seh";s:31:"ಸ್ಕೋಟ್ ಸಾಮಿ";s:3:"sms";s:9:"ಸೊಗ";s:3:"xog";s:83:"ಸ್ಟ್ಯಾಂಡರ್ಡ್ ಮೊರೊಕ್ಕನ್ ಟಮಜೈಟ್";s:3:"zgh";s:40:"ಸ್ವಿಸ್ ಫ್ರೆಂಚ್";s:5:"fr-ch";s:18:"ಸಿಡಾಮೋ";s:3:"sid";s:24:"ಸಿಕ್ಸಿಕಾ";s:3:"bla";s:18:"ಸ್ಲೇವ್";s:3:"den";s:6:"폰어";s:3:"fon";s:19:"고대 프랑스어";s:3:"fro";s:23:"고대 고지 독일어";s:3:"goh";s:15:"고론탈로어";s:3:"gor";s:22:"고대 페르시아어";s:3:"peo";s:22:"고대 프로방스어";s:3:"pro";s:18:"ಸಂಡಾವೇ";s:3:"sad";s:43:"ಸಮರಿಟನ್ ಅರಾಮಿಕ್";s:3:"sam";s:15:"ಸಸಾಕ್";s:3:"sas";s:21:"ಸೆಲ್ಕಪ್";s:3:"sel";s:21:"ಸೋನಿಂಕೆ";s:3:"snk";s:27:"ಸೋಗ್ಡಿಏನ್";s:3:"sog";s:18:"ಸೇರೇರ್";s:3:"srr";s:18:"ಸುಕುಮಾ";s:3:"suk";s:12:"ಸುಸು";s:3:"sus";s:27:"ಸುಮೇರಿಯನ್";s:3:"sux";s:21:"ಸಿರಿಯಕ್";s:3:"syr";s:24:"ಸಿಂಶಿಯನ್";s:3:"tsi";s:12:"고말라어";s:3:"bbj";s:16:"고아 콘칸어";s:3:"gom";}i:662;a:54:{s:29:"پرون اَنٛگریٖزی";s:3:"ang";s:12:"پارسچە";s:2:"fa";s:12:"پنجابی";s:3:"pnb";s:14:"پَنجٲبۍ";s:2:"pa";s:12:"پنجابي";s:2:"pa";s:16:"پەنجابچە";s:2:"pa";s:22:"پانگاسینانی";s:3:"pag";s:22:"پَنٛگاسِنَن";s:3:"pag";s:24:"پانگاسىنانچە";s:3:"pag";s:20:"پامپانگایی";s:3:"pam";s:18:"پَمپَنٛگا";s:3:"pam";s:20:"پامپانگاچە";s:3:"pam";s:18:"پاپیامنتو";s:3:"pap";s:24:"پَپِیامیٚنٹو";s:3:"pap";s:26:"پاپىيامەنتۇچە";s:3:"pap";s:8:"پالی";s:2:"pi";s:12:"پالىچە";s:2:"pi";s:10:"پالِش";s:2:"pl";s:12:"پولنډي";s:2:"pl";s:14:"پولەكچە";s:2:"pl";s:16:"پولستانی";s:2:"pl";s:16:"پیدمونتی";s:3:"pms";s:8:"پروس";s:3:"prg";s:8:"پښتو";s:2:"ps";s:8:"پشتو";s:2:"ps";s:12:"پَشتوٗ";s:2:"ps";s:14:"پۇشتۇچە";s:2:"ps";s:14:"پرتغالی";s:2:"pt";s:18:"پُرتَگیٖز";s:2:"pt";s:16:"پورتګالي";s:2:"pt";s:20:"پورتۇگالچە";s:2:"pt";s:16:"پُرتگالی";s:2:"pt";s:25:"پرتغالی برزیل";s:5:"pt-br";s:27:"پرتگال (برازيل)";s:5:"pt-br";s:9:"ሶዞኛ";s:2:"st";s:6:"ሶጋ";s:3:"xog";s:25:"پرتغالی اروپا";s:5:"pt-pt";s:29:"پرتګالي (پرتګال)";s:5:"pt-pt";s:21:"پرون فریٚنچ";s:3:"fro";s:28:"پرون ہاے جٔرمَن";s:3:"goh";s:19:"پرون نارسی";s:3:"non";s:10:"پهلوی";s:3:"pal";s:14:"پَہلَوی";s:3:"pal";s:18:"پەھلەۋىچە";s:3:"pal";s:16:"پالائویی";s:3:"pau";s:18:"پَلااُواں";s:3:"pau";s:14:"پالاۋچە";s:3:"pau";s:19:"پرون فارسی";s:3:"peo";s:12:"پانپیی";s:3:"pon";s:18:"پانپیٚیَن";s:3:"pon";s:22:"پوناپېئانچە";s:3:"pon";s:29:"پرووانسی باستان";s:3:"pro";s:29:"پرون پروویٚنچَل";s:3:"pro";s:19:"پرون ایرِش";s:3:"sga";}i:370;a:24:{s:34:"പഴയ ഇംഗ്ലീഷ്";s:3:"ang";s:21:"പേർഷ്യൻ";s:2:"fa";s:43:"പശ്ചിമ ഫ്രിഷിയൻ";s:2:"fy";s:38:"പുരാതന യവന ഭാഷ";s:3:"grc";s:21:"പഞ്ചാബി";s:2:"pa";s:27:"പങ്കാസിനൻ";s:3:"pag";s:18:"പാംപൻഗ";s:3:"pam";s:33:"പാപിയാമെൻറൊ";s:3:"pap";s:12:"പാലി";s:2:"pi";s:18:"പോളിഷ്";s:2:"pl";s:15:"പഷ്തു";s:2:"ps";s:33:"പോർച്ചുഗീസ്";s:2:"pt";s:49:"പ്രാചീന ഈജിപ്ഷ്യൻ";s:3:"egy";s:21:"പലഭാഷകൾ";s:3:"mul";s:31:"പഴയ ഫ്രഞ്ച്";s:3:"fro";s:47:"പ്രാചീന ഉച്ച ജർമൻ";s:3:"goh";s:31:"പഴയ പേർഷ്യൻ";s:3:"non";s:21:"പാഹ്ലവി";s:3:"pal";s:18:"പലാവുൻ";s:3:"pau";s:43:"പ്രാചീന പേർഷ്യൻ";s:3:"peo";s:21:"പൊൻപിയൻ";s:3:"pon";s:27:"പ്രൊവൻഷ്ൽ";s:3:"pro";s:37:"പ്രാചീന ഐറിഷ്";s:3:"sga";s:52:"പുരാതന സുറിയാനിഭാഷ";s:3:"syc";}i:858;a:25:{s:37:"ପୁରୁଣା ଇଁରାଜୀ";s:3:"ang";s:24:"ପର୍ସିଆନ୍";s:2:"fa";s:46:"ପଶ୍ଚିମ ଫ୍ରିସିୟନ୍";s:2:"fy";s:43:"ପ୍ରାଚୀନ୍ ୟୁନାନୀ";s:3:"grc";s:21:"ପଞ୍ଜାବୀ";s:2:"pa";s:39:"ପାଙ୍ଗାସିନିଆନ୍";s:3:"pag";s:30:"ପାମ୍ପାଙ୍ଗା";s:3:"pam";s:36:"ପାପିୟାମିଣ୍ଟୋ";s:3:"pap";s:12:"ପାଲି";s:2:"pi";s:18:"ପୋଲିଶ୍";s:2:"pl";s:18:"ପାସ୍ତୋ";s:2:"ps";s:39:"ପର୍ତ୍ତୁଗ୍ରୀଜ୍";s:2:"pt";s:49:"ପାରମ୍ପରିକ ଚାଇନୀଜ୍";s:7:"zh-hant";s:43:"ପ୍ରାଚୀନ୍ ମିଶିରି";s:3:"egy";s:40:"ପୁରୁଣା ଫ୍ରେଞ୍ଚ";s:3:"fro";s:46:"ପୂର୍ବ ଫ୍ରିସିୟାନ୍";s:3:"frs";s:50:"ପୁରୁଣା ହାଇ ଜର୍ମାନ୍";s:3:"goh";s:31:"ପୁରୁଣା ନର୍ସ";s:3:"non";s:46:"ପାରମ୍ପରିକ ନେୱାରୀ";s:3:"nwc";s:24:"ପାହ୍ଲାଭି";s:3:"pal";s:24:"ପାଲାଉଆନ୍";s:3:"pau";s:43:"ପୁରୁଣା ପର୍ସିଆନ୍";s:3:"peo";s:24:"ପୋହପିଏନ୍";s:3:"pon";s:58:"ପୁରୁଣା ପ୍ରେଭେନେସିଆଲ୍";s:3:"pro";s:34:"ପୁରୁଣା ଇରିଶ୍";s:3:"sga";}i:88;a:63:{s:27:"рагон англисаг";s:3:"ang";s:15:"ఐమారా";s:2:"ay";s:15:"ఐరిష్";s:2:"ga";s:31:"рагон бердзейнаг";s:3:"grc";s:15:"ఐయోకో";s:3:"ilo";s:30:"ఐస్లాండిక్";s:2:"is";s:9:"자바어";s:2:"jv";s:20:"ромањолски";s:3:"rgn";s:12:"рифски";s:3:"rif";s:27:"рэта-раманская";s:2:"rm";s:24:"реторомански";s:2:"rm";s:12:"романш";s:2:"rm";s:16:"романшча";s:2:"rm";s:20:"романшский";s:2:"rm";s:25:"рето-романски";s:2:"rm";s:26:"ретороманська";s:2:"rm";s:10:"рунди";s:2:"rn";s:14:"рундиче";s:2:"rn";s:10:"рунді";s:2:"rn";s:18:"румынская";s:2:"ro";s:16:"румънски";s:2:"ro";s:10:"румын";s:2:"ro";s:14:"румынча";s:2:"ro";s:16:"романски";s:2:"ro";s:18:"румынский";s:2:"ro";s:16:"румунски";s:2:"ro";s:18:"румунська";s:2:"ro";s:14:"русский";s:2:"ru";s:12:"руская";s:2:"ru";s:18:"расейская";s:2:"ru";s:10:"руски";s:2:"ru";s:18:"російська";s:2:"ru";s:20:"русиньскый";s:3:"rue";s:16:"русински";s:3:"rue";s:16:"руандача";s:2:"rw";s:12:"руанда";s:3:"rwk";s:12:"자르마어";s:3:"dje";s:25:"рагон египтаг";s:3:"egy";s:10:"ромбо";s:3:"rof";s:14:"ромбочо";s:3:"rof";s:6:"рва";s:3:"rwk";s:6:"руа";s:3:"rwk";s:10:"руача";s:3:"rwk";s:9:"ఐను";s:3:"ain";s:25:"рагон францаг";s:3:"fro";s:15:"ఐబాన్";s:3:"iba";s:28:"раджастханская";s:3:"raj";s:24:"раджастански";s:3:"raj";s:22:"раџастански";s:3:"raj";s:22:"раджастхани";s:3:"raj";s:22:"раджастхані";s:3:"raj";s:15:"рапа нуи";s:3:"rap";s:20:"рапанујски";s:3:"rap";s:14:"рапануи";s:3:"rap";s:14:"рапануї";s:3:"rap";s:20:"рапотонган";s:3:"rar";s:26:"раротонгански";s:3:"rar";s:28:"раротонганский";s:3:"rar";s:18:"раротонга";s:3:"rar";s:12:"ромски";s:3:"rom";s:9:"자자어";s:3:"zza";s:20:"ротумански";s:3:"rtm";s:20:"ровијански";s:3:"rug";}i:602;a:45:{s:43:"ਪੁਰਾਣੀ ਅੰਗਰੇਜ਼ੀ";s:3:"ang";s:33:"قەدىمكى ئىنگلىزچە";s:3:"ang";s:23:"قىرىم تۈركچە";s:3:"crh";s:33:"قەدىمكى سلاۋيانچە";s:2:"cu";s:40:"ਪੱਛਮੀ ਫ੍ਰਿਸੀਅਨ";s:2:"fy";s:25:"قدیٖم یوٗنٲنی";s:3:"grc";s:37:"ਪੁਰਾਤਨ ਯੂਨਾਨੀ";s:3:"grc";s:29:"قەدىمكى گىرېكچە";s:3:"grc";s:23:"قره‌قالپاقی";s:3:"kaa";s:25:"قارا-قالپاقچە";s:3:"kaa";s:12:"قبایلی";s:3:"kab";s:12:"قبائلی";s:3:"kab";s:10:"قزاقی";s:2:"kk";s:14:"قازاقچە";s:2:"kk";s:8:"قزاخ";s:2:"kk";s:30:"قازاقشا (تٴوتە)‏";s:7:"kk-arab";s:26:"قزاقی (خط عربی)";s:7:"kk-arab";s:30:"قزاقی (خط سریلیک)";s:7:"kk-cyrl";s:30:"قزاقی (خط لاتینی)";s:7:"kk-latn";s:30:"قازاقشا (جۇنگو)‏";s:5:"kk-cn";s:20:"قزافی(چینی)";s:5:"kk-cn";s:29:"قزاقی (قزاقستان)";s:5:"kk-kz";s:23:"قزاقی (ترکیە)";s:5:"kk-tr";s:34:"قره‌چایی‐بالکاری";s:3:"krc";s:31:"قاراچاي-بالقارچە";s:3:"krc";s:12:"قرقیزی";s:2:"ky";s:16:"قىرغىزچە";s:2:"ky";s:18:"ਪੰਜਾਬੀ";s:2:"pa";s:9:"ਪਲੀ";s:2:"pi";s:21:"ਪੋਲੈਂਡੀ";s:2:"pl";s:15:"ਪਸ਼ਤੋ";s:2:"ps";s:24:"ਪੁਰਤਗਾਲੀ";s:2:"pt";s:12:"قلموقی";s:3:"xal";s:16:"قالماقچە";s:3:"xal";s:8:"قبطی";s:3:"cop";s:23:"قدیٖمی مِصری";s:3:"egy";s:34:"ਪੁਰਾਤਨ ਮਿਸਰੀ";s:3:"egy";s:29:"قەدىمكى مىسىرچە";s:3:"egy";s:35:"قەدىمكى فىرانسۇزچە";s:3:"fro";s:48:"قەدىمكى ئېگىزلىك گېرمانچە";s:3:"goh";s:14:"قۇمۇقچە";s:3:"kum";s:31:"قەدىمكى نورۋېگچە";s:3:"non";s:29:"قەدىمكى پارىسچە";s:3:"peo";s:37:"قەدىمكى پروۋېنچالچە";s:3:"pro";s:35:"قەدىمكى ئىرېلاندچە";s:3:"sga";}i:101;a:393:{s:12:"englais vegl";s:3:"ang";s:14:"engleză veche";s:3:"ang";s:15:"eski İngilizce";s:3:"ang";s:35:"эгіпецкая арабская";s:3:"arz";s:22:"egyptian spoken arabic";s:3:"arz";s:13:"egyptinarabia";s:3:"arz";s:19:"egyptescht arabesch";s:3:"arz";s:13:"egipto arabų";s:3:"arz";s:18:"egyptisch arabisch";s:3:"arz";s:15:"egipski arabski";s:3:"arz";s:17:"egyptisk arabiska";s:3:"arz";s:11:"eteläazeri";s:3:"azb";s:23:"eslávicu eclesiásticu";s:2:"cu";s:18:"eslau eclesiàstic";s:2:"cu";s:20:"eslavo eclesiástico";s:2:"cu";s:15:"egyházi szláv";s:2:"cu";s:17:"eastenryks dútsk";s:5:"de-at";s:7:"eʋegbe";s:2:"ee";s:3:"ewe";s:2:"ee";s:3:"eve";s:2:"ee";s:9:"eweština";s:2:"ee";s:4:"ewé";s:2:"ee";s:6:"eweera";s:2:"ee";s:6:"эве";s:2:"ee";s:10:"эбече";s:2:"ee";s:11:"ewe-sprooch";s:2:"ee";s:5:"evių";s:2:"ee";s:3:"evu";s:2:"ee";s:6:"эвэ";s:2:"ee";s:11:"evenščina";s:2:"ee";s:8:"emiliàn";s:3:"egl";s:8:"emilianu";s:3:"egl";s:12:"emilijština";s:3:"egl";s:11:"emilianisch";s:3:"egl";s:7:"emilian";s:3:"egl";s:6:"emilia";s:3:"egl";s:8:"emiliano";s:3:"egl";s:13:"emilijahnesch";s:3:"egl";s:11:"emilianesch";s:3:"egl";s:9:"emilijski";s:3:"egl";s:8:"emiliska";s:3:"egl";s:11:"emilia dili";s:3:"egl";s:20:"emiliàn e rumagnòl";s:3:"eml";s:18:"emiliano-romagnolo";s:3:"eml";s:7:"english";s:2:"en";s:6:"engels";s:2:"en";s:8:"engleski";s:2:"en";s:7:"engelsk";s:2:"en";s:8:"englisch";s:2:"en";s:12:"engelšćina";s:2:"en";s:9:"engeleere";s:2:"en";s:8:"englanti";s:2:"en";s:5:"enskt";s:2:"en";s:5:"enska";s:2:"en";s:8:"englesch";s:2:"en";s:8:"engelsch";s:2:"en";s:7:"englais";s:2:"en";s:8:"engleză";s:2:"en";s:14:"eaŋgalsgiella";s:2:"en";s:8:"engelska";s:2:"en";s:16:"englais canadais";s:5:"en-ca";s:19:"engleză canadiană";s:5:"en-ca";s:17:"englais britannic";s:5:"en-gb";s:19:"engleză britanică";s:5:"en-gb";s:9:"esperanto";s:2:"eo";s:18:"эсперанта";s:2:"eo";s:18:"эспэранта";s:2:"eo";s:10:"esperanteg";s:2:"eo";s:12:"esperantogbe";s:2:"eo";s:10:"esperantoa";s:2:"eo";s:10:"espéranto";s:2:"eo";s:11:"eschperanto";s:2:"eo";s:11:"eszperantó";s:2:"eo";s:10:"esperantó";s:2:"eo";s:18:"эсперанто";s:2:"eo";s:12:"esperantocha";s:2:"eo";s:8:"español";s:2:"es";s:12:"esipaɲolkan";s:2:"es";s:8:"espanyol";s:2:"es";s:10:"espainiera";s:2:"es";s:7:"espanja";s:2:"es";s:8:"espagnol";s:2:"es";s:8:"espaniol";s:2:"es";s:9:"espaniola";s:2:"es";s:15:"စပိန်";s:2:"es";s:8:"espanhol";s:2:"es";s:13:"español simi";s:2:"es";s:9:"espanyöl";s:2:"es";s:5:"eesti";s:2:"et";s:7:"estnies";s:2:"et";s:7:"estoniu";s:2:"et";s:5:"eston";s:2:"et";s:18:"эстонская";s:2:"et";s:7:"estoneg";s:2:"et";s:8:"estonski";s:2:"et";s:8:"estonià";s:2:"et";s:11:"estonština";s:2:"et";s:6:"estisk";s:2:"et";s:8:"estnisch";s:2:"et";s:11:"estišćina";s:2:"et";s:10:"estoniagbe";s:2:"et";s:8:"estonian";s:2:"et";s:6:"estona";s:2:"et";s:7:"estonio";s:2:"et";s:9:"estoniera";s:2:"et";s:10:"estlendskt";s:2:"et";s:8:"estonien";s:2:"et";s:9:"estlânsk";s:2:"et";s:10:"eastóinis";s:2:"et";s:9:"eastoinis";s:2:"et";s:9:"estoniano";s:2:"et";s:9:"eestnisch";s:2:"et";s:4:"esti";s:2:"et";s:9:"eistneska";s:2:"et";s:6:"estone";s:2:"et";s:19:"эстон тілі";s:2:"et";s:14:"estlandimiutut";s:2:"et";s:14:"эстончо";s:2:"et";s:8:"estnesch";s:2:"et";s:5:"estų";s:2:"et";s:12:"эстони";s:2:"et";s:7:"estonia";s:2:"et";s:8:"estonjan";s:2:"et";s:7:"estisch";s:2:"et";s:9:"estoński";s:2:"et";s:8:"estónio";s:2:"et";s:12:"estonio simi";s:2:"et";s:10:"estoniană";s:2:"et";s:18:"эстонский";s:2:"et";s:11:"esttegiella";s:2:"et";s:11:"estónčina";s:2:"et";s:12:"estonščina";s:2:"et";s:9:"estonisht";s:2:"et";s:8:"estniska";s:2:"et";s:7:"estonca";s:2:"et";s:8:"estoncha";s:2:"et";s:7:"euskara";s:2:"eu";s:8:"euskareg";s:2:"eu";s:6:"eŭska";s:2:"eu";s:7:"euskera";s:2:"eu";s:12:"euskera simi";s:2:"eu";s:10:"estremeñu";s:3:"ext";s:16:"extremadurština";s:3:"ext";s:12:"extremadureg";s:3:"ext";s:14:"extremadurisch";s:3:"ext";s:12:"extremaduran";s:3:"ext";s:11:"extremadura";s:3:"ext";s:12:"estrémègne";s:3:"ext";s:10:"estremegno";s:3:"ext";s:14:"extremaduresch";s:3:"ext";s:10:"extremeens";s:3:"ext";s:13:"estremadurski";s:3:"ext";s:17:"ekstremadura dili";s:3:"ext";s:18:"eskoziako gaelikoa";s:2:"gd";s:6:"ebraic";s:2:"he";s:8:"eabhrais";s:2:"he";s:6:"eabhra";s:2:"he";s:7:"ebraico";s:2:"he";s:6:"ebrajk";s:2:"he";s:8:"ebraică";s:2:"he";s:7:"erməni";s:2:"hy";s:8:"ermenice";s:2:"hy";s:11:"endonesiire";s:2:"id";s:11:"enndonezïi";s:2:"id";s:9:"endonezce";s:2:"id";s:28:"စီချွမ် ရီ";s:2:"ii";s:6:"eskima";s:2:"ik";s:39:"eastern canadian (aboriginal syllabics)";s:8:"ike-cans";s:31:"eastern canadian (latin script)";s:8:"ike-latn";s:12:"engjuschesch";s:3:"inh";s:7:"eidaleg";s:2:"it";s:9:"eadailtis";s:2:"it";s:13:"etalljänesch";s:2:"it";s:12:"edebi Çince";s:3:"lzh";s:4:"ebon";s:2:"mh";s:12:"eastern mari";s:3:"mhr";s:12:"эрзянь";s:3:"myv";s:5:"erzya";s:3:"myv";s:10:"erzya dili";s:3:"myv";s:4:"erza";s:3:"myv";s:6:"erzija";s:3:"myv";s:12:"erzjanština";s:3:"myv";s:17:"ersja-mordwinisch";s:3:"myv";s:9:"erziyagbe";s:3:"myv";s:4:"ersa";s:3:"myv";s:5:"ersä";s:3:"myv";s:5:"erzja";s:3:"myv";s:8:"erzjány";s:3:"myv";s:5:"eryza";s:3:"myv";s:5:"ersja";s:3:"myv";s:17:"ersja-mordwinesch";s:3:"myv";s:7:"erzyjų";s:3:"myv";s:5:"erzju";s:3:"myv";s:8:"эрзя";s:3:"myv";s:10:"ersagiella";s:3:"myv";s:11:"erzjančina";s:3:"myv";s:13:"erzjanščina";s:3:"myv";s:5:"erjya";s:3:"myv";s:12:"erromantxera";s:2:"rm";s:11:"errumaniera";s:2:"ro";s:9:"errusiera";s:2:"ru";s:8:"escocès";s:3:"sco";s:8:"escocés";s:3:"sco";s:15:"စကော့";s:3:"sco";s:8:"escocês";s:3:"sco";s:15:"စင်ဒီ";s:2:"sd";s:8:"eslovacu";s:2:"sk";s:7:"eslovac";s:2:"sk";s:8:"eslovaco";s:2:"sk";s:11:"eslovakiera";s:2:"sk";s:21:"စလိုဗက်";s:2:"sk";s:13:"eslovaco simi";s:2:"sk";s:8:"eslovenu";s:2:"sl";s:7:"eslovè";s:2:"sl";s:8:"esloveno";s:2:"sl";s:11:"esloveniera";s:2:"sl";s:42:"စလိုဗေးနီးယမ်း";s:2:"sl";s:13:"esloveno simi";s:2:"sl";s:11:"eteläsaame";s:3:"sma";s:11:"eteläsotho";s:2:"st";s:23:"egyszerűsített kínai";s:7:"zh-hans";s:4:"embu";s:3:"ebu";s:5:"embú";s:3:"ebu";s:4:"embw";s:3:"ebu";s:7:"embugbe";s:3:"ebu";s:5:"embua";s:3:"ebu";s:5:"embou";s:3:"ebu";s:12:"эмбуча";s:3:"ebu";s:8:"эмбу";s:3:"ebu";s:12:"embujščina";s:3:"ebu";s:8:"embuisht";s:3:"ebu";s:7:"embucha";s:3:"ebu";s:4:"efik";s:3:"efi";s:9:"efik dili";s:3:"efi";s:7:"efikski";s:3:"efi";s:10:"efikština";s:3:"efi";s:6:"efigbe";s:3:"efi";s:5:"efiki";s:3:"efi";s:7:"efikera";s:3:"efi";s:8:"efikisch";s:3:"efi";s:5:"efík";s:3:"efi";s:8:"эфик";s:3:"efi";s:5:"efiku";s:3:"efi";s:6:"efique";s:3:"efi";s:10:"efiščina";s:3:"efi";s:15:"exipciu antiguu";s:3:"egy";s:12:"egipci antic";s:3:"egy";s:18:"egyptština stará";s:3:"egy";s:15:"egipcio antiguo";s:3:"egy";s:14:"exipcio antigo";s:3:"egy";s:15:"egiziano antico";s:3:"egy";s:9:"egyptesch";s:3:"egy";s:17:"eġizzjan (antik)";s:3:"egy";s:18:"egípcio clássico";s:3:"egy";s:16:"egípcio arcaico";s:3:"egy";s:13:"egipzian vegl";s:3:"egy";s:16:"egipteană veche";s:3:"egy";s:17:"eski mısır dili";s:3:"egy";s:7:"ettitic";s:3:"hit";s:4:"enko";s:3:"nqo";s:14:"etelä-ndebele";s:2:"nr";s:12:"စီနာ";s:3:"seh";s:11:"enaresamisk";s:3:"smn";s:13:"enaresamíska";s:3:"smn";s:12:"enaresamiska";s:3:"smn";s:10:"e panjohur";s:3:"und";s:30:"ensin conteníu llingüísticu";s:3:"zxx";s:28:"ez dago eduki linguistikorik";s:3:"zxx";s:27:"ei kielellistä sisältöä";s:3:"zxx";s:21:"ekkert tungumálaefni";s:3:"zxx";s:18:"englais australian";s:5:"en-au";s:21:"engleză australiană";s:5:"en-au";s:20:"engelsk (amerikansk)";s:5:"en-us";s:16:"englais american";s:5:"en-us";s:19:"engleză americană";s:5:"en-us";s:14:"engleski (sad)";s:5:"en-us";s:24:"espanyol hispanoamericà";s:6:"es-419";s:20:"español de américa";s:6:"es-419";s:26:"espagnol latino-américain";s:6:"es-419";s:24:"español latinoamericano";s:6:"es-419";s:25:"espanhol latino-americano";s:6:"es-419";s:17:"evropski španski";s:5:"es-es";s:16:"espanyol europeu";s:5:"es-es";s:17:"europæisk spansk";s:5:"es-es";s:22:"europäisches spanisch";s:5:"es-es";s:24:"europejska špańšćina";s:5:"es-es";s:16:"european spanish";s:5:"es-es";s:15:"eŭropa hispana";s:5:"es-es";s:19:"español de españa";s:5:"es-es";s:19:"espainiera (europa)";s:5:"es-es";s:15:"espanjanespanja";s:5:"es-es";s:19:"espagnol d’europe";s:5:"es-es";s:17:"europeesk spaansk";s:5:"es-es";s:20:"europski španjolski";s:5:"es-es";s:22:"europska španišćina";s:5:"es-es";s:16:"európai spanyol";s:5:"es-es";s:17:"evrópsk spænska";s:5:"es-es";s:22:"europäescht spuenesch";s:5:"es-es";s:15:"europos ispanų";s:5:"es-es";s:15:"eiropas spāņu";s:5:"es-es";s:32:"စပိန်(ဥရောပ)";s:5:"es-es";s:16:"europeisk spansk";s:5:"es-es";s:15:"europees spaans";s:5:"es-es";s:22:"europejski hiszpański";s:5:"es-es";s:16:"espanhol europeu";s:5:"es-es";s:17:"europeisk spanska";s:5:"es-es";s:8:"etioopia";s:3:"gez";s:11:"etiópčina";s:3:"gez";s:12:"etiopščina";s:3:"gez";s:9:"etiopiska";s:3:"gez";s:22:"europæisk portugisisk";s:5:"pt-pt";s:27:"europäisches portugiesisch";s:5:"pt-pt";s:26:"europejska portugalšćina";s:5:"pt-pt";s:19:"european portuguese";s:5:"pt-pt";s:15:"eŭropportugala";s:5:"pt-pt";s:18:"europees portugees";s:5:"pt-pt";s:20:"europski portugalski";s:5:"pt-pt";s:24:"europska portugalšćina";s:5:"pt-pt";s:18:"európai portugál";s:5:"pt-pt";s:21:"evrópsk portúgalska";s:5:"pt-pt";s:25:"europäescht portugisesch";s:5:"pt-pt";s:18:"europos portugalų";s:5:"pt-pt";s:19:"eiropas portugāļu";s:5:"pt-pt";s:21:"europeisk portugisisk";s:5:"pt-pt";s:22:"europejski portugalski";s:5:"pt-pt";s:22:"europeisk portugisiska";s:5:"pt-pt";s:3:"edo";s:3:"bin";s:6:"ekajuk";s:3:"eka";s:11:"ekacuk dili";s:3:"eka";s:9:"ekadžuki";s:3:"eka";s:8:"ekadzsuk";s:3:"eka";s:7:"ekajúk";s:3:"eka";s:7:"ekajuka";s:3:"eka";s:9:"ekadžuku";s:3:"eka";s:14:"экаджук";s:3:"eka";s:8:"ekadžuk";s:3:"eka";s:7:"elamita";s:3:"elx";s:11:"elamit dili";s:3:"elx";s:6:"elameg";s:3:"elx";s:9:"elamitski";s:3:"elx";s:12:"elamitština";s:3:"elx";s:9:"elamitisk";s:3:"elx";s:8:"elamisch";s:3:"elx";s:7:"elamite";s:3:"elx";s:6:"eelami";s:3:"elx";s:5:"elami";s:3:"elx";s:9:"elamitysk";s:3:"elx";s:7:"elamais";s:3:"elx";s:6:"elamit";s:3:"elx";s:4:"elam";s:3:"elx";s:7:"elamít";s:3:"elx";s:9:"elamitico";s:3:"elx";s:8:"elamesch";s:3:"elx";s:8:"elamitų";s:3:"elx";s:9:"elamiešu";s:3:"elx";s:10:"elamittisk";s:3:"elx";s:8:"elaamsch";s:3:"elx";s:10:"elamitisch";s:3:"elx";s:8:"elamicki";s:3:"elx";s:8:"elamitic";s:3:"elx";s:8:"elamită";s:3:"elx";s:16:"эламский";s:3:"elx";s:9:"elamčina";s:3:"elx";s:11:"elamščina";s:3:"elx";s:10:"elamitiska";s:3:"elx";s:17:"engleski, srednji";s:3:"enm";s:14:"englais mesaun";s:3:"enm";s:17:"engleză mijlocie";s:3:"enm";s:6:"ewondo";s:3:"ewo";s:11:"evondo dili";s:3:"ewo";s:6:"evondo";s:3:"ewo";s:9:"ewondogbe";s:3:"ewo";s:7:"evondó";s:3:"ewo";s:6:"evondu";s:3:"ewo";s:12:"эвондо";s:3:"ewo";s:14:"evondovščina";s:3:"ewo";s:15:"eski fransızca";s:3:"fro";s:15:"eastern frisian";s:3:"frs";s:10:"east-frysk";s:3:"frs";s:20:"eski yüksek almanca";s:3:"goh";s:10:"eski norse";s:3:"non";s:12:"eski farsça";s:3:"peo";s:14:"eski provensal";s:3:"pro";s:15:"eski İrlandaca";s:3:"sga";s:12:"elliceanisch";s:3:"tvl";s:12:"elliceanesch";s:3:"tvl";s:12:"elliceaansch";s:3:"tvl";s:19:"español de méxico";s:5:"es-mx";s:18:"espanyol de mèxic";s:5:"es-mx";s:17:"espagnol mexicain";s:5:"es-mx";s:19:"espanhol do méxico";s:5:"es-mx";s:17:"espanhol mexicano";s:5:"es-mx";s:15:"eastern yiddish";s:3:"ydd";}i:57;a:42:{s:26:"Староенглески";s:3:"ang";s:28:"Старословенски";s:2:"cu";s:33:"Северно-фризијски";s:3:"frr";s:37:"Солтүстік Шотландия";s:2:"gd";s:20:"Старогрчки";s:3:"grc";s:29:"Солтүстік сотхо";s:3:"nso";s:23:"Северни сото";s:3:"nso";s:14:"Сантали";s:3:"sat";s:20:"Сардињаски";s:2:"sc";s:24:"Сицилијански";s:3:"scn";s:28:"Српскохрватски";s:2:"sh";s:20:"Словаактыы";s:2:"sk";s:18:"Самоански";s:2:"sm";s:29:"Сранански тонго";s:3:"srn";s:10:"Свати";s:2:"ss";s:12:"Сесото";s:2:"st";s:28:"Староегипатски";s:3:"egy";s:12:"Сидамо";s:3:"sid";s:12:"Сисика";s:3:"bla";s:14:"Славски";s:3:"den";s:31:"Средњи холандски";s:3:"dum";s:29:"Средњи енглески";s:3:"enm";s:31:"Средњи француски";s:3:"frm";s:28:"Старофранцуски";s:3:"fro";s:40:"Средњи високи немачки";s:3:"gmh";s:24:"Старонемачки";s:3:"goh";s:23:"Средњи ирски";s:3:"mga";s:23:"Стари норски";s:3:"non";s:28:"Староперсијски";s:3:"peo";s:34:"Старопровансалски";s:3:"pro";s:14:"Сандаве";s:3:"sad";s:43:"Самаритански арамејски";s:3:"sam";s:10:"Сасак";s:3:"sas";s:12:"Селкап";s:3:"sel";s:20:"Староирски";s:3:"sga";s:14:"Сонинке";s:3:"snk";s:20:"Соџијенски";s:3:"sog";s:10:"Серер";s:3:"srr";s:12:"Сукума";s:3:"suk";s:8:"Сусу";s:3:"sus";s:16:"Сумерски";s:3:"sux";s:16:"Сиријски";s:3:"syr";}i:986;a:59:{s:37:"பழைய ஆங்கிலம்";s:3:"ang";s:24:"பாஷ்கிர்";s:2:"ba";s:33:"பெலாருஷியன்";s:2:"be";s:30:"பல்கேரியன்";s:2:"bg";s:24:"போஜ்பூரி";s:3:"bho";s:24:"பிஸ்லாமா";s:2:"bi";s:21:"பம்பாரா";s:2:"bm";s:42:"பிஷ்ணுப்பிரியா";s:3:"bpy";s:27:"பிரெட்டன்";s:2:"br";s:27:"போஸ்னியன்";s:2:"bs";s:24:"புகினீஸ்";s:3:"bug";s:18:"பூடானி";s:2:"dz";s:55:"பிரிட்டிஷ் ஆங்கிலம்";s:5:"en-gb";s:15:"பஸ்க்";s:2:"eu";s:27:"பெர்ஷியன்";s:2:"fa";s:24:"பிரெஞ்சு";s:2:"fr";s:46:"பண்டைய கிரேக்கம்";s:3:"grc";s:28:"பிஜி இந்தி";s:3:"hif";s:21:"பர்மிஸ்";s:2:"my";s:21:"பஞ்சாபி";s:2:"pa";s:30:"பன்காசினன்";s:3:"pag";s:27:"பம்பாங்கா";s:3:"pam";s:33:"பபியேமென்டோ";s:3:"pap";s:61:"பென்சில்வேனிய ஜெர்மன்";s:3:"pdc";s:12:"பாலி";s:2:"pi";s:18:"போலிஷ்";s:2:"pl";s:15:"பஷ்தோ";s:2:"ps";s:42:"போர்ச்சுக்கீஸ்";s:2:"pt";s:63:"போர்ச்சுகீஸ் (பிரேசில்)";s:5:"pt-br";s:43:"பாரம்பரிய சீனம்";s:7:"zh-hant";s:18:"பெம்பா";s:3:"bem";s:12:"பெனா";s:3:"bez";s:12:"போடோ";s:3:"brx";s:49:"பண்டைய எகிப்தியன்";s:3:"egy";s:21:"பாஃபியா";s:3:"ksf";s:28:"பல மொழிகள்";s:3:"mul";s:24:"பிலெமிஷ்";s:5:"nl-be";s:18:"ப்லின்";s:3:"byn";s:18:"பெலுசி";s:3:"bal";s:21:"பலினீஸ்";s:3:"ban";s:12:"பாஸா";s:3:"bas";s:12:"பேஜா";s:3:"bej";s:18:"பிகோல்";s:3:"bik";s:12:"பினி";s:3:"bin";s:18:"ப்ராஜ்";s:3:"bra";s:24:"புரியாத்";s:3:"bua";s:40:"பழைய ஃப்ரென்ச்";s:3:"fro";s:9:"பயா";s:3:"gba";s:41:"பழைய ஹை ஜெர்மன்";s:3:"goh";s:31:"பழைய நோர்ஸ்";s:3:"non";s:46:"பாரம்பரிய நேவாரி";s:3:"nwc";s:21:"பாஹ்லவி";s:3:"pal";s:21:"பலௌவ்ன்";s:3:"pau";s:40:"பழைய பெர்ஷியன்";s:3:"peo";s:49:"பழைய ப்ரோவென்சால்";s:3:"pro";s:28:"பழைய ஐரிஷ்";s:3:"sga";s:52:"பாரம்பரிய சிரியாக்";s:3:"syc";s:48:"ப்லிஸ்ஸிம்பால்ஸ்";s:3:"zbl";s:12:"படகா";s:3:"bfq";}i:114;a:355:{s:37:"ప్రాచీన ఆగ్లం";s:3:"ang";s:9:"昂加文";s:3:"anp";s:24:"ဒိန်းမတ်";s:2:"da";s:18:"ဒွန်ကာ";s:2:"dz";s:24:"పర్షియన్";s:2:"fa";s:6:"ranska";s:2:"fr";s:12:"rietumfrīzu";s:2:"fy";s:46:"పశ్చిమ ఫ్రిసియన్";s:2:"fy";s:40:"ప్రాచీన గ్రీక్";s:3:"grc";s:10:"ripoarisch";s:3:"ksh";s:13:"rotse-sprache";s:3:"loz";s:15:"rotse-schpraach";s:3:"loz";s:13:"rotse-sprooch";s:3:"loz";s:5:"rotse";s:3:"loz";s:18:"ဒတ်ချ်";s:2:"nl";s:10:"њанџа";s:2:"ny";s:18:"పంజాబీ";s:2:"pa";s:31:"పంగా సినాన్";s:3:"pag";s:18:"పంపగ్న";s:3:"pam";s:27:"పపియమేంటో";s:3:"pap";s:12:"పాలీ";s:2:"pi";s:18:"పోలిష్";s:2:"pl";s:18:"పాష్టో";s:2:"ps";s:30:"పోర్చుగీస్";s:2:"pt";s:9:"runa simi";s:2:"qu";s:8:"runasimi";s:2:"qu";s:10:"runa shimi";s:3:"qug";s:9:"rumagnôl";s:3:"rgn";s:8:"romañol";s:3:"rgn";s:10:"romagnoleg";s:3:"rgn";s:14:"romaňolština";s:3:"rgn";s:8:"romagnol";s:3:"rgn";s:9:"romagnoli";s:3:"rgn";s:9:"romagnolo";s:3:"rgn";s:10:"romanyolca";s:3:"rgn";s:7:"rifianu";s:3:"rif";s:10:"rífština";s:3:"rif";s:7:"riffian";s:3:"rif";s:7:"riffain";s:3:"rif";s:5:"rifų";s:3:"rif";s:8:"riffijns";s:3:"rif";s:10:"riffianska";s:3:"rif";s:15:"rif berbericesi";s:3:"rif";s:9:"rumantsch";s:2:"rm";s:12:"reto-romaans";s:2:"rm";s:8:"romanche";s:2:"rm";s:9:"retoroman";s:2:"rm";s:10:"romañcheg";s:2:"rm";s:13:"reto-romanski";s:2:"rm";s:12:"retoromànic";s:2:"rm";s:17:"rétorománština";s:2:"rm";s:9:"romaunsch";s:2:"rm";s:12:"rætoromansk";s:2:"rm";s:14:"rätoromanisch";s:2:"rm";s:17:"retoromańšćina";s:2:"rm";s:10:"romanshgbe";s:2:"rm";s:7:"romansh";s:2:"rm";s:8:"romanĉa";s:2:"rm";s:14:"retorrománico";s:2:"rm";s:11:"retoromaani";s:2:"rm";s:7:"rumanç";s:2:"rm";s:13:"reto-romaansk";s:2:"rm";s:9:"rómainis";s:2:"rm";s:7:"rumains";s:2:"rm";s:7:"romanš";s:2:"rm";s:16:"retoromanšćina";s:2:"rm";s:12:"réto-román";s:2:"rm";s:10:"reto-roman";s:2:"rm";s:9:"rómanska";s:2:"rm";s:8:"romancio";s:2:"rm";s:15:"rätoromaanesch";s:2:"rm";s:14:"rätoromanesch";s:2:"rm";s:11:"retoromanų";s:2:"rm";s:12:"retoromāņu";s:2:"rm";s:11:"reto-romanz";s:2:"rm";s:11:"retoromansk";s:2:"rm";s:14:"rätoromaansch";s:2:"rm";s:13:"retoromański";s:2:"rm";s:13:"romanche simi";s:2:"rm";s:9:"romanșă";s:2:"rm";s:13:"romanšgiella";s:2:"rm";s:16:"rétorománčina";s:2:"rm";s:16:"retoromanščina";s:2:"rm";s:4:"rome";s:2:"rm";s:13:"rätoromanska";s:2:"rm";s:10:"romanşça";s:2:"rm";s:8:"romancha";s:2:"rm";s:6:"romani";s:3:"rom";s:5:"rundi";s:2:"rn";s:5:"rwndi";s:2:"rn";s:13:"rundi-sprache";s:2:"rn";s:8:"rundigbe";s:2:"rn";s:8:"rundiera";s:2:"rn";s:6:"roundi";s:2:"rn";s:8:"rúindis";s:2:"rn";s:15:"rundi-schpraach";s:2:"rn";s:7:"rúndí";s:2:"rn";s:13:"rundi-sprooch";s:2:"rn";s:5:"rundu";s:2:"rn";s:11:"rundščina";s:2:"rn";s:8:"rundisht";s:2:"rn";s:7:"rundcha";s:2:"rn";s:8:"română";s:2:"ro";s:8:"roemeens";s:2:"ro";s:12:"romenia kasa";s:2:"ro";s:6:"rumanu";s:2:"ro";s:6:"rumın";s:2:"ro";s:9:"rumanikan";s:2:"ro";s:8:"roumaneg";s:2:"ro";s:8:"rumunski";s:2:"ro";s:8:"romanès";s:2:"ro";s:11:"rumunština";s:2:"ro";s:7:"rwmaneg";s:2:"ro";s:8:"rumænsk";s:2:"ro";s:10:"rumänisch";s:2:"ro";s:12:"rumunšćina";s:2:"ro";s:10:"romaniagbe";s:2:"ro";s:8:"romanian";s:2:"ro";s:6:"rumana";s:2:"ro";s:6:"rumano";s:2:"ro";s:8:"rumeenia";s:2:"ro";s:9:"romaneere";s:2:"ro";s:7:"romania";s:2:"ro";s:8:"romanskt";s:2:"ro";s:7:"roumain";s:2:"ro";s:5:"romen";s:2:"ro";s:9:"roemeensk";s:2:"ro";s:10:"rómáinis";s:2:"ro";s:9:"romàinis";s:2:"ro";s:8:"romanés";s:2:"ro";s:11:"romaniyanci";s:2:"ro";s:9:"rumunjski";s:2:"ro";s:6:"román";s:2:"ro";s:9:"romaniano";s:2:"ro";s:7:"rumania";s:2:"ro";s:7:"rumenia";s:2:"ro";s:9:"rúmenska";s:2:"ro";s:6:"rumeno";s:2:"ro";s:13:"rumænimiutut";s:2:"ro";s:10:"rumänesch";s:2:"ro";s:7:"rumunų";s:2:"ro";s:8:"rumāņu";s:2:"ro";s:11:"romanianina";s:2:"ro";s:5:"rumen";s:2:"ro";s:7:"rumensk";s:2:"ro";s:11:"rumäänsch";s:2:"ro";s:9:"rumuński";s:2:"ro";s:6:"romeno";s:2:"ro";s:11:"rumano simi";s:2:"ro";s:14:"romániagiella";s:2:"ro";s:7:"rumëen";s:2:"ro";s:10:"rumunčina";s:2:"ro";s:12:"romunščina";s:2:"ro";s:7:"romanka";s:2:"ro";s:9:"rumanisht";s:2:"ro";s:9:"rumänska";s:2:"ro";s:7:"romence";s:2:"ro";s:8:"rumincha";s:2:"ro";s:7:"russies";s:2:"ru";s:11:"rahyia kasa";s:2:"ru";s:4:"rusu";s:2:"ru";s:3:"rus";s:2:"ru";s:8:"rusianeg";s:2:"ru";s:5:"ruski";s:2:"ru";s:8:"ruština";s:2:"ru";s:5:"rwseg";s:2:"ru";s:7:"russisk";s:2:"ru";s:8:"russisch";s:2:"ru";s:9:"rušćina";s:2:"ru";s:10:"rɔtsiagbe";s:2:"ru";s:7:"russian";s:2:"ru";s:4:"rusa";s:2:"ru";s:4:"ruso";s:2:"ru";s:4:"riis";s:2:"ru";s:8:"russiskt";s:2:"ru";s:5:"russe";s:2:"ru";s:7:"russysk";s:2:"ru";s:7:"rúisis";s:2:"ru";s:6:"ruisis";s:2:"ru";s:8:"rashanci";s:2:"ru";s:5:"russo";s:2:"ru";s:5:"rusia";s:2:"ru";s:8:"rọshan";s:2:"ru";s:10:"rússneska";s:2:"ru";s:8:"russisut";s:2:"ru";s:10:"rußßesch";s:2:"ru";s:6:"russek";s:2:"ru";s:8:"russesch";s:2:"ru";s:5:"rusų";s:2:"ru";s:9:"rosianina";s:2:"ru";s:5:"russu";s:2:"ru";s:10:"russ’sch";s:2:"ru";s:8:"rosyjski";s:2:"ru";s:9:"ruso simi";s:2:"ru";s:4:"russ";s:2:"ru";s:5:"rusă";s:2:"ru";s:14:"ruoššagiella";s:2:"ru";s:5:"rûsi";s:2:"ru";s:9:"ruščina";s:2:"ru";s:5:"ruush";s:2:"ru";s:7:"rusisht";s:2:"ru";s:5:"ryska";s:2:"ru";s:6:"rusça";s:2:"ru";s:6:"ruscha";s:2:"ru";s:11:"rusänapük";s:2:"ru";s:5:"rusyn";s:3:"rue";s:12:"rusínština";s:3:"rue";s:10:"russinisch";s:3:"rue";s:7:"ruteeni";s:3:"rue";s:8:"ruthène";s:3:"rue";s:6:"ruteno";s:3:"rue";s:10:"russinesch";s:3:"rue";s:7:"rusinų";s:3:"rue";s:9:"roetheens";s:3:"rue";s:9:"rusiński";s:3:"rue";s:7:"rusince";s:3:"rue";s:8:"rwandees";s:2:"rw";s:12:"rewanda kasa";s:2:"rw";s:2:"rw";s:2:"rw";s:10:"ruwandakan";s:2:"rw";s:8:"ruandès";s:2:"rw";s:9:"ruandisch";s:2:"rw";s:10:"ruwandagbe";s:2:"rw";s:6:"ruanda";s:3:"rwk";s:12:"ruwaanndeere";s:2:"rw";s:6:"rwanda";s:2:"rw";s:8:"ruandés";s:2:"rw";s:9:"rụwanda";s:2:"rw";s:9:"ruandesch";s:2:"rw";s:6:"roande";s:2:"rw";s:8:"ruandsch";s:2:"rw";s:8:"ruandäa";s:2:"rw";s:12:"ruandščina";s:2:"rw";s:6:"rootsi";s:2:"sv";s:6:"ruotsi";s:2:"sv";s:12:"ruoŧagiella";s:2:"sv";s:10:"reo tahiti";s:2:"ty";s:6:"rukiga";s:3:"cgg";s:15:"ဒူအလာ";s:3:"dua";s:52:"ప్రాచీన ఇజిప్షియన్";s:3:"egy";s:14:"њанколе";s:3:"nyn";s:16:"romanés moldavo";s:5:"ro-md";s:5:"rombo";s:3:"rof";s:8:"rombogbe";s:3:"rof";s:8:"romboera";s:3:"rof";s:6:"rombó";s:3:"rof";s:10:"romboishte";s:3:"rof";s:8:"rombacha";s:3:"rof";s:3:"rwa";s:3:"rwk";s:3:"rua";s:3:"rwk";s:3:"rwo";s:3:"rwk";s:6:"rwagbe";s:3:"rwk";s:6:"rwaera";s:3:"rwk";s:4:"rúa";s:3:"rwk";s:7:"ruaisht";s:3:"rwk";s:3:"rwk";s:3:"rwk";s:8:"ruandcha";s:3:"rwk";s:71:"ప్రామాణిక మొరొకన్ తమజియట్";s:3:"zgh";s:25:"rómanskamerísk spænska";s:6:"es-419";s:21:"ဒါကိုတာ";s:3:"dak";s:18:"ဒီလာဝဲ";s:3:"del";s:43:"ప్రాచీన ప్రెంచ్";s:3:"fro";s:12:"rytų fryzų";s:3:"frs";s:47:"ప్రాచీన హై జర్మన్";s:3:"goh";s:18:"పెల్లే";s:3:"kpe";s:40:"ప్రాచిన నోర్స్";s:3:"non";s:14:"њамвези";s:3:"nym";s:8:"њоро";s:3:"nyo";s:21:"పహ్లావి";s:3:"pal";s:21:"పాలుఆన్";s:3:"pau";s:46:"ప్రాచీన పర్షియన్";s:3:"peo";s:33:"పోహ్న్పెయన్";s:3:"pon";s:55:"ప్రాచీన ప్రోవెంసాల్";s:3:"pro";s:12:"rajasthanín";s:3:"raj";s:13:"racastan dili";s:3:"raj";s:10:"rajasthani";s:3:"raj";s:10:"rađastani";s:3:"raj";s:18:"rádžastánština";s:3:"raj";s:11:"rajasthaneg";s:3:"raj";s:11:"radžastani";s:3:"raj";s:13:"radzsasztáni";s:3:"raj";s:10:"rajastaní";s:3:"raj";s:11:"radžastano";s:3:"raj";s:13:"radžastāņu";s:3:"raj";s:10:"raġastani";s:3:"raj";s:12:"radźasthani";s:3:"raj";s:9:"rajastani";s:3:"raj";s:15:"radžastančina";s:3:"raj";s:17:"radžastanščina";s:3:"raj";s:11:"rapanu dili";s:3:"rap";s:7:"rapanui";s:3:"rap";s:13:"rapanujština";s:3:"rap";s:8:"rapanŵi";s:3:"rap";s:8:"rapa nui";s:3:"rap";s:9:"rapanúí";s:3:"rap";s:8:"rapanuju";s:3:"rap";s:7:"rapanwi";s:3:"rap";s:12:"rapanujčina";s:3:"rap";s:14:"rapanujščina";s:3:"rap";s:15:"rarotonqan dili";s:3:"rar";s:9:"rarotonga";s:3:"rar";s:10:"rarotongan";s:3:"rar";s:10:"rarotongà";s:3:"rar";s:17:"rarotongánština";s:3:"rar";s:10:"raratongeg";s:3:"rar";s:14:"rarotonganisch";s:3:"rar";s:11:"rarotongano";s:3:"rar";s:11:"rarotongien";s:3:"rar";s:11:"rarotonški";s:3:"rar";s:10:"rarotongai";s:3:"rar";s:12:"rarótongska";s:3:"rar";s:14:"rarotonganesch";s:3:"rar";s:13:"rarotongiešu";s:3:"rar";s:11:"rarotongani";s:3:"rar";s:12:"rarotongansk";s:3:"rar";s:14:"rarotongaansch";s:3:"rar";s:15:"rarotongščina";s:3:"rar";s:13:"rarotonganska";s:3:"rar";s:7:"romaní";s:3:"rom";s:10:"roman dili";s:3:"rom";s:8:"romanieg";s:3:"rom";s:9:"romština";s:3:"rom";s:6:"romany";s:3:"rom";s:8:"romainis";s:3:"rom";s:8:"romanais";s:3:"rom";s:6:"romski";s:3:"rom";s:4:"roma";s:3:"rom";s:5:"romų";s:3:"rom";s:8:"romanês";s:3:"rom";s:9:"rómčina";s:3:"rom";s:10:"romščina";s:3:"rom";s:7:"romanca";s:3:"rom";s:37:"ప్రాచీన ఐరిష్";s:3:"sga";s:19:"њаса тонга";s:3:"tog";s:8:"rotumanu";s:3:"rtm";s:13:"rotumanština";s:3:"rtm";s:9:"rotumaneg";s:3:"rtm";s:11:"rotumanisch";s:3:"rtm";s:7:"rotuman";s:3:"rtm";s:6:"rotuma";s:3:"rtm";s:8:"rotumano";s:3:"rtm";s:11:"rotumanesch";s:3:"rtm";s:9:"rotumanų";s:3:"rtm";s:9:"rotumaans";s:3:"rtm";s:11:"rotumański";s:3:"rtm";s:11:"rotumänska";s:3:"rtm";s:12:"rovianština";s:3:"rug";s:7:"roviana";s:3:"rug";s:8:"rovianos";s:3:"rug";s:9:"rovianska";s:3:"rug";s:14:"њенгату";s:3:"yrl";s:12:"razni jezici";s:3:"mis";s:18:"romaansche spraken";s:3:"roa";s:14:"romanski jezik";s:3:"roa";s:3:"run";s:4:"root";}i:76;a:84:{s:32:"давньоанглійська";s:3:"ang";s:15:"코르시카어";s:2:"co";s:12:"дацкая";s:2:"da";s:12:"датски";s:2:"da";s:6:"дат";s:2:"da";s:10:"датча";s:2:"da";s:12:"дански";s:2:"da";s:8:"дани";s:2:"da";s:12:"даниаг";s:2:"da";s:14:"датский";s:2:"da";s:14:"данська";s:2:"da";s:24:"долнолужишки";s:3:"dsb";s:24:"долнолужички";s:3:"dsb";s:35:"доњи лужичкосрпски";s:3:"dsb";s:16:"дусунски";s:3:"dtp";s:12:"дивехи";s:2:"dv";s:12:"дівехі";s:2:"dv";s:12:"дзонха";s:2:"dz";s:15:"дзонг-кэ";s:2:"dz";s:15:"дзонг-ке";s:2:"dz";s:9:"希腊文";s:2:"el";s:9:"希臘文";s:2:"el";s:24:"древногръцки";s:3:"grc";s:30:"древнегреческий";s:3:"grc";s:26:"давньогрецька";s:3:"grc";s:12:"希伯来文";s:2:"he";s:12:"希伯來文";s:2:"he";s:15:"希利盖农文";s:3:"hil";s:15:"希利蓋農文";s:3:"hil";s:15:"希里莫图文";s:2:"ho";s:19:"дээд сорби";s:3:"hsb";s:12:"코와르어";s:3:"khw";s:21:"코미페르먀크어";s:3:"koi";s:9:"코미어";s:2:"kv";s:28:"долносаксонски";s:3:"nds";s:28:"долногермански";s:3:"nds";s:12:"希尔哈文";s:3:"shi";s:12:"希爾哈文";s:3:"shi";s:26:"долношлезиски";s:3:"sli";s:9:"코사어";s:2:"xh";s:36:"дәстүрлі қытай тілі";s:7:"zh-hant";s:12:"джерма";s:3:"dje";s:10:"дуала";s:3:"dua";s:14:"дуалача";s:3:"dua";s:10:"диола";s:3:"dyo";s:21:"дьола-фоньи";s:3:"dyo";s:19:"дьола-фоні";s:3:"dyo";s:32:"древнеегипетский";s:3:"egy";s:32:"давньоєгипетська";s:3:"egy";s:19:"코이라 친니어";s:3:"khq";s:12:"코카니어";s:3:"kok";s:23:"декілька мов";s:3:"mul";s:25:"코이야보로 세니어";s:3:"ses";s:12:"코모로어";s:3:"swb";s:12:"希達摩文";s:3:"sid";s:16:"дакотски";s:3:"dak";s:12:"дакота";s:3:"dak";s:12:"даргва";s:3:"dar";s:20:"даргінська";s:3:"dar";s:14:"делауер";s:3:"del";s:14:"делавер";s:3:"del";s:22:"делаварский";s:3:"del";s:22:"делаварська";s:3:"del";s:12:"догриб";s:3:"dgr";s:18:"догрипски";s:3:"dgr";s:20:"догрибська";s:3:"dgr";s:10:"динка";s:3:"din";s:10:"дінка";s:3:"din";s:10:"догри";s:3:"doi";s:10:"догрі";s:3:"doi";s:10:"диула";s:3:"dyu";s:23:"диула (дьюла)";s:3:"dyu";s:10:"діула";s:3:"dyu";s:12:"дазага";s:3:"dzg";s:18:"дазагский";s:3:"dzg";s:32:"давньофранцузька";s:3:"fro";s:40:"древневерхненемецкий";s:3:"goh";s:42:"давньоверхньонімецька";s:3:"goh";s:9:"코로어";s:3:"kfo";s:18:"코스라이엔어";s:3:"kos";s:30:"давньонорвезька";s:3:"non";s:26:"давньоперська";s:3:"peo";s:40:"давньопровансальська";s:3:"pro";s:32:"давньоірландська";s:3:"sga";}i:521;a:22:{s:9:"앙가어";s:3:"anp";s:6:"英語";s:2:"en";s:6:"英文";s:2:"en";s:12:"英式英文";s:5:"en-gb";s:12:"ラテン語";s:2:"la";s:15:"ラディノ語";s:3:"lad";s:9:"ラク語";s:3:"lbe";s:9:"ラオ語";s:2:"lo";s:18:"ラトガリア語";s:3:"ltg";s:15:"ラトビア語";s:2:"lv";s:9:"ラズ語";s:3:"lzz";s:12:"ශෝනා";s:2:"sn";s:12:"ශෝසා";s:2:"xh";s:21:"ශාම්බලා";s:3:"ksb";s:12:"ランギ語";s:3:"lag";s:12:"ラコタ語";s:3:"lkt";s:18:"ラフンダー語";s:3:"lah";s:12:"ランバ語";s:3:"lam";s:27:"ラージャスターン語";s:3:"raj";s:15:"ラパヌイ語";s:3:"rap";s:18:"ラロトンガ語";s:3:"rar";s:15:"英格裏亞文";s:3:"izh";}i:819;a:2:{s:12:"ዓረብኛ";s:2:"ar";s:12:"ዓረበኛ";s:2:"ar";}i:225;a:18:{s:6:"árabe";s:2:"ar";s:18:"árabe d’arxelia";s:3:"arq";s:19:"árabe de marruecos";s:3:"ary";s:17:"árabe d’exiptu";s:3:"arz";s:12:"ásámština";s:2:"as";s:10:"ásamčina";s:2:"as";s:21:"ázerbájdžánština";s:2:"az";s:31:"ázerbájdžánština (jižní)";s:3:"azb";s:18:"álki kiinágiella";s:7:"zh-hans";s:27:"árbevirolaš kiinnágiella";s:7:"zh-hant";s:24:"árabe estándar modernu";s:6:"ar-001";s:24:"árabe estándar moderno";s:6:"ar-001";s:22:"árabe moderno padrão";s:6:"ar-001";s:14:"árabe moderno";s:6:"ar-001";s:16:"áströlsk enska";s:5:"en-au";s:15:"árabe chadiano";s:3:"shu";s:15:"árabe do chade";s:3:"shu";s:16:"árabe de túnez";s:3:"aeb";}i:601;a:60:{s:6:"ərəb";s:2:"ar";s:10:"فارسی";s:2:"fa";s:10:"فارسي";s:2:"fa";s:12:"فولایی";s:2:"ff";s:10:"فُلاہ";s:2:"ff";s:12:"فۇلاچە";s:2:"ff";s:14:"فنلاندی";s:2:"fi";s:10:"فِنِش";s:2:"fi";s:14:"فینلنډي";s:2:"fi";s:10:"فىنچە";s:2:"fi";s:10:"فینیش";s:2:"fi";s:14:"فیجیایی";s:2:"fj";s:12:"فِجیَن";s:2:"fj";s:12:"فىجىچە";s:2:"fj";s:6:"فجی";s:2:"fj";s:12:"فارویی";s:2:"fo";s:10:"فَروس";s:2:"fo";s:12:"فاروئې";s:2:"fo";s:16:"فائېروچە";s:2:"fo";s:14:"فیروئیز";s:2:"fo";s:14:"فرانسوی";s:2:"fr";s:12:"فریٚنچ";s:2:"fr";s:14:"فرانسوي";s:2:"fr";s:20:"فىرانسۇزچە";s:2:"fr";s:16:"فرانسیسی";s:2:"fr";s:25:"فرانسوی کاژون";s:3:"frc";s:21:"فریزی شمالی";s:3:"frr";s:18:"فریولیایی";s:3:"fur";s:18:"فروٗلِیَن";s:3:"fur";s:20:"فىرىئۇلىچە";s:3:"fur";s:19:"فریزی غربی";s:2:"fy";s:10:"فريزي";s:2:"fy";s:15:"ənənəvi çin";s:7:"zh-hant";s:16:"فیلیپینی";s:3:"fil";s:18:"فِلِپیٖنو";s:3:"fil";s:20:"فىلىپپىنچە";s:3:"fil";s:14:"فلیپینو";s:3:"fil";s:12:"فلمنگی";s:5:"nl-be";s:14:"فلیٚمِش";s:5:"nl-be";s:12:"فلیمِش";s:5:"nl-be";s:10:"فنیقی";s:3:"phn";s:18:"فونیٖشیَن";s:3:"phn";s:20:"فىنىكىيەچە";s:3:"phn";s:10:"فونجو";s:3:"vun";s:27:"فرانسوی کانادا";s:5:"fr-ca";s:25:"فرانسوی سوئیس";s:5:"fr-ch";s:10:"فانکی";s:3:"fan";s:10:"فینٛگ";s:3:"fan";s:10:"فاڭچە";s:3:"fan";s:16:"فانتیایی";s:3:"fat";s:10:"فانٹی";s:3:"fat";s:14:"فانتىچە";s:3:"fat";s:8:"فونی";s:3:"fon";s:6:"فون";s:3:"fon";s:10:"فونچە";s:3:"fon";s:25:"فرانسوی میانه";s:3:"frm";s:27:"فرانسوی باستان";s:3:"fro";s:19:"فریزی شرقی";s:3:"frs";s:21:"فارسی یهودی";s:3:"jpr";s:23:"فارسی باستان";s:3:"peo";}i:593;a:17:{s:8:"عربی";s:2:"ar";s:8:"عربي";s:2:"ar";s:25:"عربی الجزائری";s:3:"arq";s:21:"عربی مراکشی";s:3:"ary";s:17:"عربی مصری";s:3:"arz";s:18:"ਡੈਨਿਸ਼";s:2:"da";s:8:"عبری";s:2:"he";s:12:"عبرٲنۍ";s:2:"he";s:8:"عبري";s:2:"he";s:12:"عبرانی";s:2:"he";s:9:"ਡੱਚ";s:2:"nl";s:17:"عربی رسمی";s:6:"ar-001";s:15:"ਡੂਆਲਾ";s:3:"dua";s:12:"عیلامی";s:3:"elx";s:19:"عربی یهودی";s:3:"jrb";s:17:"عربی چادی";s:3:"shu";s:19:"عربی تونسی";s:3:"aeb";}i:699;a:6:{s:8:"ʻalapia";s:2:"ar";s:8:"ʻailiki";s:2:"ga";s:17:"ʻŌlelo hawaiʻi";s:3:"haw";s:10:"ʻĪkālia";s:2:"it";s:50:"ʻike ʻole ‘ia a kūpono ʻole paha ka ʻōlelo";s:3:"und";s:13:"ʻikai ha lea";s:3:"zxx";}i:506;a:11:{s:10:"ערבית";s:2:"ar";s:12:"ענגליש";s:2:"en";s:22:"עספּעראַנטא";s:2:"eo";s:10:"עסטיש";s:2:"et";s:15:"ペルシア語";s:2:"fa";s:10:"עברית";s:2:"he";s:33:"ペンシルバニアドイツ語";s:3:"pdc";s:25:"ערבית ספרותית";s:6:"ar-001";s:12:"עילמית";s:3:"elx";s:23:"ערבית יהודית";s:3:"jrb";s:23:"ערבית צ׳אדית";s:3:"shu";}i:808;a:3:{s:10:"ܐܪܡܝܐ";s:3:"arc";s:9:"ወልሽ";s:2:"cy";s:12:"迈蒂利文";s:3:"mai";}i:320;a:13:{s:18:"ऐरेमेक";s:3:"arc";s:12:"ऐमरा";s:2:"ay";s:36:"რეტორომანული";s:2:"rm";s:15:"რუნდი";s:2:"rn";s:24:"რუმინული";s:2:"ro";s:18:"რუსული";s:2:"ru";s:16:"졸라 포니어";s:3:"dyo";s:15:"რომბო";s:3:"rof";s:9:"რუა";s:3:"rwk";s:9:"ऐनू";s:3:"ain";s:27:"რაჯასთანი";s:3:"raj";s:21:"რაპანუი";s:3:"rap";s:33:"რაროტონგული";s:3:"rar";}i:635;a:14:{s:9:"ማፑቼ";s:3:"arn";s:15:"ማንክስኛ";s:2:"gv";s:15:"ማላጋስኛ";s:2:"mg";s:12:"ማዮሪኛ";s:2:"mi";s:15:"ማሴዶንኛ";s:2:"mk";s:15:"ማክዶኒኛ";s:2:"mk";s:18:"ማላያላምኛ";s:2:"ml";s:12:"ማራቲኛ";s:2:"mr";s:12:"ማላይኛ";s:2:"ms";s:15:"ማልቲስኛ";s:2:"mt";s:12:"ማቻሜኛ";s:3:"jmc";s:12:"ማኮንዴ";s:3:"kde";s:9:"ማሳይ";s:3:"mas";s:16:"ማኩዋ ሜቶ";s:3:"mgh";}i:84;a:187:{s:12:"мапуче";s:3:"arn";s:16:"мапучеде";s:3:"arn";s:14:"мапучки";s:3:"arn";s:12:"мапүчи";s:3:"arn";s:35:"марокански арапски";s:3:"ary";s:22:"мальдивский";s:2:"dv";s:14:"манкски";s:2:"gv";s:8:"мэнс";s:2:"gv";s:16:"манксыча";s:2:"gv";s:10:"манкс";s:2:"gv";s:14:"мэнский";s:2:"gv";s:16:"менкська";s:2:"gv";s:14:"мажарча";s:2:"hu";s:16:"мађарски";s:2:"hu";s:16:"мӕхъӕлон";s:3:"inh";s:18:"콜로그니안어";s:3:"ksh";s:8:"мизо";s:3:"lus";s:16:"майтхили";s:3:"mai";s:14:"маитили";s:3:"mai";s:16:"майтхілі";s:3:"mai";s:14:"мокшень";s:3:"mdf";s:10:"мокша";s:3:"mdf";s:18:"мокшански";s:3:"mdf";s:20:"мокшанский";s:3:"mdf";s:22:"мальгашская";s:2:"mg";s:16:"малгашки";s:2:"mg";s:16:"малагаси";s:2:"mg";s:18:"малагасча";s:2:"mg";s:26:"малагасийский";s:2:"mg";s:26:"малагасійська";s:2:"mg";s:18:"маршалезе";s:2:"mh";s:18:"маршалски";s:2:"mh";s:24:"маршалльский";s:2:"mh";s:24:"маршалльська";s:2:"mh";s:14:"маорски";s:2:"mi";s:10:"маори";s:2:"mi";s:14:"маориче";s:2:"mi";s:10:"маорі";s:2:"mi";s:18:"минангбау";s:3:"min";s:22:"минангкабау";s:3:"min";s:22:"мінангкабау";s:3:"min";s:20:"македонски";s:2:"mk";s:22:"македонская";s:2:"mk";s:23:"македон тілі";s:2:"mk";s:18:"македончо";s:2:"mk";s:14:"македон";s:2:"mk";s:16:"мӕчъидон";s:2:"mk";s:22:"македонский";s:2:"mk";s:22:"македонська";s:2:"mk";s:24:"малаяламская";s:2:"ml";s:16:"малаялам";s:2:"ml";s:18:"малайялам";s:2:"ml";s:22:"малайаламча";s:2:"ml";s:18:"малајалам";s:2:"ml";s:16:"малайлам";s:2:"ml";s:12:"монгол";s:2:"mn";s:22:"мангольская";s:2:"mn";s:18:"монголски";s:2:"mn";s:21:"моңғол тілі";s:2:"mn";s:16:"моңголчо";s:2:"mn";s:22:"монгольский";s:2:"mn";s:22:"монгольська";s:2:"mn";s:24:"молдовеняскэ";s:2:"mo";s:20:"малдаўская";s:5:"ro-md";s:14:"маратхі";s:2:"mr";s:12:"марати";s:2:"mr";s:14:"маратхи";s:2:"mr";s:16:"маратиче";s:2:"mr";s:18:"малайская";s:2:"ms";s:16:"малайски";s:2:"ms";s:10:"малай";s:2:"ms";s:14:"малайча";s:2:"ms";s:16:"малајски";s:2:"ms";s:18:"малайский";s:2:"ms";s:18:"малайська";s:2:"ms";s:22:"мальтыйская";s:2:"mt";s:18:"малтийски";s:2:"mt";s:12:"мальта";s:2:"mt";s:16:"малтизче";s:2:"mt";s:16:"малтешки";s:2:"mt";s:10:"малти";s:2:"mt";s:22:"мальтийский";s:2:"mt";s:22:"мальтійська";s:2:"mt";s:22:"мирандийски";s:3:"mwl";s:18:"мирандски";s:3:"mwl";s:24:"мирандийский";s:3:"mwl";s:20:"мірандська";s:3:"mwl";s:26:"мазендерански";s:3:"mzn";s:49:"менонитски долногермански";s:3:"pdt";s:12:"러시아어";s:2:"ru";s:34:"мајнскофранконски";s:3:"vmf";s:18:"мегрелски";s:3:"xmf";s:50:"модеран стандардни арапски";s:6:"ar-001";s:12:"мачаме";s:3:"jmc";s:16:"мачамече";s:3:"jmc";s:12:"мачамэ";s:3:"jmc";s:14:"маконде";s:3:"kde";s:18:"макондече";s:3:"kde";s:10:"масаі";s:3:"mas";s:16:"масайски";s:3:"mas";s:10:"масай";s:3:"mas";s:14:"масайча";s:3:"mas";s:16:"масајски";s:3:"mas";s:10:"масаи";s:3:"mas";s:10:"масаї";s:3:"mas";s:8:"меру";s:3:"mer";s:12:"меруча";s:3:"mer";s:16:"морисиен";s:3:"mfe";s:20:"морисианча";s:3:"mfe";s:16:"морисјен";s:3:"mfe";s:14:"морисен";s:3:"mfe";s:45:"маврикийский креольский";s:3:"mfe";s:45:"маврикійська креольська";s:3:"mfe";s:19:"макуа мето";s:3:"mgh";s:23:"макуа-меетто";s:3:"mgh";s:14:"макуача";s:3:"mgh";s:21:"макува-мито";s:3:"mgh";s:23:"макува-меето";s:3:"mgh";s:8:"мета";s:3:"mgo";s:12:"метөчө";s:3:"mgo";s:12:"мохоук";s:3:"moh";s:12:"мохоки";s:3:"moh";s:16:"мохаукча";s:3:"moh";s:16:"мохавски";s:3:"moh";s:12:"мохаук";s:3:"moh";s:10:"мохок";s:3:"moh";s:12:"магавк";s:3:"moh";s:14:"мунданг";s:3:"mua";s:18:"мундангча";s:3:"mua";s:22:"многоезични";s:3:"mul";s:18:"молдовски";s:5:"ro-md";s:25:"молдован тілі";s:5:"ro-md";s:20:"молдованча";s:5:"ro-md";s:18:"молдавски";s:5:"ro-md";s:12:"молдав";s:5:"ro-md";s:20:"молдавский";s:5:"ro-md";s:20:"молдавська";s:5:"ro-md";s:60:"марокколық стандартты тамазигхт";s:3:"zgh";s:59:"марокко тамазигт адабий тилинде";s:3:"zgh";s:16:"марийски";s:3:"chm";s:14:"мариски";s:3:"chm";s:43:"марийский (черемисский)";s:3:"chm";s:18:"марійська";s:3:"chm";s:10:"монга";s:3:"lol";s:10:"монго";s:3:"lol";s:16:"мадурски";s:3:"mad";s:18:"мадурский";s:3:"mad";s:18:"мадурська";s:3:"mad";s:12:"магахи";s:3:"mag";s:14:"магадхі";s:3:"mag";s:14:"макасар";s:3:"mak";s:20:"макасарски";s:3:"mak";s:24:"макассарский";s:3:"mak";s:22:"макасарська";s:3:"mak";s:16:"мандынга";s:3:"man";s:16:"мандинго";s:3:"man";s:16:"мандінго";s:3:"man";s:8:"маба";s:3:"mde";s:18:"мабанский";s:3:"mde";s:12:"мандар";s:3:"mdr";s:18:"мандарски";s:3:"mdr";s:20:"мандарский";s:3:"mdr";s:20:"мандарська";s:3:"mdr";s:10:"мендэ";s:3:"men";s:10:"менде";s:3:"men";s:12:"микмак";s:3:"mic";s:12:"мікмак";s:3:"mic";s:20:"манчжурски";s:3:"mnc";s:18:"манџурски";s:3:"mnc";s:24:"маньчжурский";s:3:"mnc";s:22:"манчжурська";s:3:"mnc";s:16:"манипури";s:3:"mni";s:22:"манипурский";s:3:"mni";s:16:"маніпурі";s:3:"mni";s:8:"мосі";s:3:"mos";s:8:"моси";s:3:"mos";s:10:"моссі";s:3:"mos";s:14:"марвари";s:3:"mwr";s:14:"марварі";s:3:"mwr";s:14:"медумба";s:3:"byv";s:39:"мексикански испански";s:5:"es-mx";s:40:"мексикалық испан тілі";s:5:"es-mx";s:31:"мексикийн испани";s:5:"es-mx";s:8:"мафа";s:3:"maf";s:10:"мјене";s:3:"mye";s:10:"миене";s:3:"mye";s:8:"миін";s:3:"mye";}i:478;a:46:{s:18:"মাপুচি";s:3:"arn";s:12:"ゾンカ語";s:2:"dz";s:24:"ম্যাঙ্কস";s:2:"gv";s:18:"মৈথিলি";s:3:"mai";s:15:"মোকশা";s:3:"mdf";s:24:"মালাগাসি";s:2:"mg";s:27:"মার্শালিজ";s:2:"mh";s:15:"মাওরি";s:2:"mi";s:42:"মিনাঙ্গ্‌কাবাউ";s:3:"min";s:36:"ম্যাসিডোনীয়";s:2:"mk";s:30:"মালায়ালাম";s:2:"ml";s:27:"মঙ্গোলিয়";s:2:"mn";s:18:"মারাঠি";s:2:"mr";s:15:"মালয়";s:2:"ms";s:21:"মল্টিয়";s:2:"mt";s:27:"মিরান্ডিজ";s:3:"mwl";s:18:"মাকামে";s:3:"jmc";s:24:"মাকোন্দে";s:3:"kde";s:15:"মাসাই";s:3:"mas";s:12:"মেরু";s:3:"mer";s:27:"মরিসিয়ান";s:3:"mfe";s:40:"মাখুয়া-মেত্তো";s:3:"mgh";s:12:"মেটা";s:3:"mgo";s:18:"মোহাওক";s:3:"moh";s:21:"মুদাঙ্গ";s:3:"mua";s:24:"মলদাভিয়";s:5:"ro-md";s:12:"俾路支文";s:3:"bal";s:12:"মারি";s:3:"chm";s:22:"মধ্য ডাচ";s:3:"dum";s:31:"মধ্য ইংরেজি";s:3:"enm";s:28:"মধ্য ফরাসি";s:3:"frm";s:50:"মধ্য-উচ্চ জার্মানি";s:3:"gmh";s:18:"মোঙ্গো";s:3:"lol";s:24:"মাদুরেসে";s:3:"mad";s:18:"মাগাহি";s:3:"mag";s:27:"ম্যাকাসার";s:3:"mak";s:36:"ম্যান্ডিঙ্গো";s:3:"man";s:27:"ম্যাণ্ডার";s:3:"mdr";s:18:"মেন্ডে";s:3:"men";s:28:"মধ্য আইরিশ";s:3:"mga";s:24:"মিকম্যাক";s:3:"mic";s:18:"মাঞ্চু";s:3:"mnc";s:21:"মণিপুরী";s:3:"mni";s:9:"মসি";s:3:"mos";s:27:"মারোয়ারি";s:3:"mwr";s:61:"ম্যাক্সিকান স্প্যানিশ";s:5:"es-mx";}i:605;a:183:{s:19:"ماپوچه‌ای";s:3:"arn";s:12:"ماپۇچە";s:3:"arn";s:12:"ماپوچے";s:3:"arn";s:8:"مصرى";s:3:"arz";s:21:"ਭੋਜਪੁਰੀ";s:3:"bho";s:36:"ตุรกีไครเมีย";s:3:"crh";s:14:"مالدیوی";s:2:"dv";s:25:"مغربی فرِشیَن";s:2:"fy";s:25:"مغربی فریسیئن";s:2:"fy";s:8:"مانی";s:2:"gv";s:12:"مینٛکس";s:2:"gv";s:10:"مانچە";s:2:"gv";s:10:"مینکس";s:2:"gv";s:21:"موتویی هیری";s:2:"ho";s:10:"مجاری";s:2:"hu";s:14:"ماجارچە";s:2:"hu";s:19:"میان‌زبان";s:2:"ia";s:12:"مىزوچە";s:3:"lus";s:14:"مایدیلی";s:3:"mai";s:14:"میتَھلی";s:3:"mai";s:18:"مايتىلىچە";s:3:"mai";s:12:"مکشایی";s:3:"mdf";s:10:"موکشا";s:3:"mdf";s:14:"موكشاچە";s:3:"mdf";s:22:"مالاگاسیایی";s:2:"mg";s:16:"مَلاگَسی";s:2:"mg";s:12:"ملغاسي";s:2:"mg";s:24:"ماداغاسقارچە";s:2:"mg";s:14:"ملاگاسی";s:2:"mg";s:14:"مارشالی";s:2:"mh";s:18:"مارشَلیٖز";s:2:"mh";s:16:"مارشالچە";s:2:"mh";s:8:"ماری";s:3:"chm";s:18:"مائوریایی";s:2:"mi";s:10:"ماوری";s:2:"mi";s:14:"ماۋرىچە";s:2:"mi";s:10:"ماؤری";s:2:"mi";s:27:"مینانگ‌کابویی";s:3:"min";s:24:"مِنَنٛگکَباو";s:3:"min";s:26:"مىناڭكابائۇچە";s:3:"min";s:12:"مقدونی";s:2:"mk";s:20:"میکَڈونیَن";s:2:"mk";s:12:"مقدوني";s:2:"mk";s:18:"ماكېدونچە";s:2:"mk";s:18:"مقدونیائی";s:2:"mk";s:20:"مالایالامی";s:2:"ml";s:16:"مٔلیالَم";s:2:"ml";s:16:"مالايالم";s:2:"ml";s:18:"مالايامچە";s:2:"ml";s:16:"مالایالم";s:2:"ml";s:10:"مغولی";s:2:"mn";s:16:"مَنٛگولی";s:2:"mn";s:10:"مغولي";s:2:"mn";s:16:"موڭغۇلچە";s:2:"mn";s:12:"منگؤلی";s:2:"mn";s:10:"مراتی";s:2:"mr";s:14:"مَرٲٹھۍ";s:2:"mr";s:12:"مراټهي";s:2:"mr";s:14:"ماراتچە";s:2:"mr";s:12:"مراٹهی";s:2:"mr";s:12:"مالایی";s:2:"ms";s:10:"مَلَے";s:2:"ms";s:10:"ملایا";s:2:"ms";s:14:"مالايچە";s:2:"ms";s:12:"مالائی";s:2:"ms";s:10:"مالتی";s:2:"mt";s:14:"مَلتیٖس";s:2:"mt";s:14:"مالټايي";s:2:"mt";s:14:"مالتاچە";s:2:"mt";s:10:"مالٹی";s:2:"mt";s:18:"مِراندیٖز";s:3:"mwl";s:20:"مىراندېسچە";s:3:"mwl";s:16:"مازِرونی";s:3:"mzn";s:18:"مازندرانی";s:3:"mzn";s:13:"مین نان";s:3:"nan";s:23:"مگلنو رومانی";s:3:"ruq";s:41:"مگلنو رومانی (خط سرلیک)";s:8:"ruq-cyrl";s:41:"مگلنو رومانی (خط لاتین)";s:8:"ruq-latn";s:12:"ตูลู";s:3:"tcy";s:24:"ติกริญญา";s:2:"ti";s:24:"ตากาล็อก";s:2:"tl";s:15:"ตองกา";s:2:"to";s:15:"ตุรกี";s:2:"tr";s:18:"ตูโรโย";s:3:"tru";s:18:"ตาตาร์";s:2:"tt";s:18:"ตาฮิตี";s:2:"ty";s:12:"ตูวา";s:3:"tyv";s:46:"مەركىزى ئاتلاس تاماچاگىت";s:3:"tzm";s:27:"مۇرەككەپ خەنچە";s:7:"zh-hant";s:36:"ماڈرن اسٹینڈرڈ عربی";s:6:"ar-001";s:15:"مصری کهن";s:3:"egy";s:12:"ماتشيم";s:3:"jmc";s:19:"ماچامه‌ای";s:3:"jmc";s:14:"ماچامچە";s:3:"jmc";s:10:"ماشیم";s:3:"jmc";s:14:"ماكونده";s:3:"kde";s:14:"ماکونده";s:3:"kde";s:18:"ماكوندېچە";s:3:"kde";s:12:"ماسایی";s:3:"mas";s:10:"مَساے";s:3:"mas";s:14:"ماسايچە";s:3:"mas";s:10:"ماسای";s:3:"mas";s:8:"ميرو";s:3:"mer";s:10:"مرویی";s:3:"mer";s:12:"مېرۇچە";s:3:"mer";s:8:"میرو";s:3:"mer";s:14:"موریسین";s:3:"mfe";s:20:"مورىسيېنچە";s:3:"mfe";s:16:"موریسیین";s:3:"mfe";s:21:"ماخاوا-ميتو";s:3:"mgh";s:17:"ماکوا متو";s:3:"mgh";s:16:"ماكۇۋاچە";s:3:"mgh";s:8:"ميتا";s:3:"mgo";s:10:"متایی";s:3:"mgo";s:15:"مېتاچە’";s:3:"mgo";s:8:"میٹا";s:3:"mgo";s:12:"موهاکی";s:3:"moh";s:10:"موہاک";s:3:"moh";s:14:"موخوكچە";s:3:"moh";s:12:"موہاوک";s:3:"moh";s:10:"مندنج";s:3:"mua";s:16:"ماندانگی";s:3:"mua";s:16:"مۇنداڭچە";s:3:"mua";s:12:"منڈانگ";s:3:"mua";s:14:"مۇئېرچە";s:3:"nus";s:20:"مولداویایی";s:5:"ro-md";s:20:"مولداوِیَن";s:5:"ro-md";s:14:"مالدووا";s:5:"ro-md";s:24:"ตัสซาวัค";s:3:"twq";s:15:"ตีเกร";s:3:"tig";s:12:"毕库尔文";s:3:"bik";s:14:"ماریایی";s:3:"chm";s:12:"مارىچە";s:3:"chm";s:27:"مشرِقی فرِشیَن";s:3:"frs";s:10:"مۆڭچە";s:3:"hmn";s:12:"منغولى";s:3:"lol";s:14:"مونگویی";s:3:"lol";s:12:"مونٛگو";s:3:"lol";s:14:"مونگوچە";s:3:"lol";s:16:"مادورایی";s:3:"mad";s:16:"مَدُریٖز";s:3:"mad";s:18:"مادۇرېسچە";s:3:"mad";s:18:"ماگاهیایی";s:3:"mag";s:10:"مَگاے";s:3:"mag";s:16:"ماگاخىچە";s:3:"mag";s:14:"ماکاسار";s:3:"mak";s:14:"مَکَسار";s:3:"mak";s:18:"ماكاسارچە";s:3:"mak";s:20:"ماندینگویی";s:3:"man";s:18:"مَندِنٛگو";s:3:"man";s:20:"ماندىنگوچە";s:3:"man";s:8:"مابا";s:3:"mde";s:12:"ماباچە";s:3:"mde";s:12:"ماندار";s:3:"mdr";s:12:"مَندَر";s:3:"mdr";s:16:"ماندارچە";s:3:"mdr";s:15:"منده‌ای";s:3:"men";s:12:"میندیے";s:3:"men";s:14:"مېندېچە";s:3:"men";s:14:"میکماکی";s:3:"mic";s:12:"مِکمیک";s:3:"mic";s:16:"مىكماكچە";s:3:"mic";s:14:"مانچویی";s:3:"mnc";s:14:"مانٛچوٗ";s:3:"mnc";s:14:"مانجۇچە";s:3:"mnc";s:15:"میته‌ای";s:3:"mni";s:18:"مَنیپوٗری";s:3:"mni";s:20:"مانىپۇرىچە";s:3:"mni";s:14:"ماسیایی";s:3:"mos";s:8:"موسی";s:3:"mos";s:14:"موسسىچە";s:3:"mos";s:14:"مارواری";s:3:"mwr";s:14:"مارواڑی";s:3:"mwr";s:18:"مارۋارىچە";s:3:"mwr";s:39:"ตุรกีออตโตมัน";s:3:"ota";s:18:"ตูวาลู";s:3:"tvl";s:18:"مېدۇمباچە";s:3:"byv";s:31:"مېكسىكا ئىسپانچە";s:5:"es-mx";s:29:"میکسیکن ہسپانوی";s:5:"es-mx";s:12:"مافاچە";s:3:"maf";s:14:"ميېنېچە";s:3:"mye";s:27:"ตัตมุสลิม";s:3:"ttt";s:43:"مگلنو رومانی (خط یونانی)";s:8:"ruq-grek";}i:350;a:102:{s:18:"मापूचे";s:3:"arn";s:18:"मापुची";s:3:"arn";s:18:"मापुचे";s:3:"arn";s:11:"Şayen dili";s:3:"chy";s:18:"मैंक्स";s:2:"gv";s:18:"मांक्स";s:2:"gv";s:21:"मान्क्स";s:2:"gv";s:49:"माथिल्लो सोर्बियन";s:3:"hsb";s:12:"ഖമെർ";s:2:"km";s:12:"坎那達文";s:2:"kn";s:18:"मैथिली";s:3:"mai";s:15:"मोक्ष";s:3:"mdf";s:24:"मालागासी";s:2:"mg";s:18:"मलागसी";s:2:"mg";s:21:"मलागासी";s:2:"mg";s:27:"मार्शलीज़";s:2:"mh";s:24:"मार्शलीज";s:2:"mh";s:15:"माओरी";s:2:"mi";s:36:"मिनांग्काबाउ";s:3:"min";s:33:"मैसिडोनियाई";s:2:"mk";s:30:"मॅसेडोनियन";s:2:"mk";s:36:"म्याकेडोनियन";s:2:"mk";s:18:"मलयालम";s:2:"ml";s:21:"मल्याळम";s:2:"ml";s:27:"मंगोलीयाई";s:2:"mn";s:24:"मंगोलियन";s:2:"mn";s:15:"मंगोल";s:2:"mn";s:15:"मराठी";s:2:"mr";s:9:"मलय";s:2:"ms";s:15:"मलाया";s:2:"ms";s:24:"माल्टीज़";s:2:"mt";s:24:"माल्टिज्";s:2:"mt";s:21:"माल्टिज";s:2:"mt";s:21:"मिरांडी";s:3:"mwl";s:27:"मिरांडिज्";s:3:"mwl";s:20:"Նորվեգերեն";s:2:"no";s:47:"मध्य एटलस तमाज़ित";s:3:"tzm";s:53:"मध्य ऍटलास तॅमॅझायट";s:3:"tzm";s:9:"ഖോസ";s:2:"xh";s:21:"मैकहैमे";s:3:"jmc";s:15:"मशामे";s:3:"jmc";s:18:"माचामे";s:3:"jmc";s:18:"मैकोंड";s:3:"kde";s:24:"माकोन्दे";s:3:"kde";s:24:"माकोन्डे";s:3:"kde";s:12:"मसाई";s:3:"mas";s:15:"मासाल";s:3:"mas";s:12:"मेरु";s:3:"mer";s:12:"मेरू";s:3:"mer";s:27:"मोरीस्येन";s:3:"mfe";s:27:"मोरिस्येन";s:3:"mfe";s:21:"मोरिसेन";s:3:"mfe";s:37:"मैखुवा-मीट्टो";s:3:"mgh";s:43:"माखुव्हा-मीट्टो";s:3:"mgh";s:37:"माखुवा-मिट्टो";s:3:"mgh";s:12:"मेटा";s:3:"mgo";s:12:"मीटा";s:3:"mgo";s:15:"मोहौक";s:3:"moh";s:15:"मोहॉक";s:3:"moh";s:12:"मोहक";s:3:"moh";s:21:"मुंडैंग";s:3:"mua";s:21:"मुंडांग";s:3:"mua";s:21:"मुन्डाङ";s:3:"mua";s:27:"मोलडावियन";s:5:"ro-md";s:36:"मोल्डाव्हियन";s:5:"ro-md";s:30:"माल्डाभियन";s:5:"ro-md";s:62:"मानक मोरक्कन तामाज़ाइट";s:3:"zgh";s:65:"मानक मोरोक्कोन तामाजिघट";s:3:"zgh";s:12:"मारी";s:3:"chm";s:40:"मध्य पुर्तगाली";s:3:"dum";s:19:"मिडल डच";s:3:"dum";s:55:"मध्यकालीन अंग्रेज़ी";s:3:"enm";s:34:"मिडल इंग्रजी";s:3:"enm";s:58:"मध्यकालीन फ़्रांसीसी";s:3:"frm";s:31:"मिडल फ्रेंच";s:3:"frm";s:53:"मध्यकालीन हाइ जर्मन";s:3:"gmh";s:38:"मिडल हाय जर्मन";s:3:"gmh";s:12:"माँग";s:3:"hmn";s:15:"मोंगो";s:3:"lol";s:21:"मादुरीस";s:3:"mad";s:15:"मगाही";s:3:"mag";s:12:"मगही";s:3:"mag";s:15:"मकासर";s:3:"mak";s:18:"मकस्सर";s:3:"mak";s:27:"मन्डिन्गो";s:3:"man";s:15:"मंधार";s:3:"mdr";s:15:"मंडार";s:3:"mdr";s:18:"मेन्डे";s:3:"men";s:37:"मध्यकाल आइरिश";s:3:"mga";s:28:"मिडल आयरिश";s:3:"mga";s:18:"मिकमैक";s:3:"mic";s:18:"मिकमॅक";s:3:"mic";s:15:"मन्चु";s:3:"mnc";s:18:"मान्चु";s:3:"mnc";s:21:"मणिपूरी";s:3:"mni";s:21:"मणिपुरी";s:3:"mni";s:18:"मोस्सी";s:3:"mos";s:24:"मारवाड़ी";s:3:"mwr";s:21:"मारवाडी";s:3:"mwr";s:46:"मैक्सिकन स्पेनिश";s:5:"es-mx";s:46:"मेक्सिकन स्पॅनिश";s:5:"es-mx";s:9:"坎剛文";s:3:"kgp";}i:396;a:24:{s:14:"մապուչի";s:3:"arn";s:15:"구자라트어";s:2:"gu";s:14:"մեներեն";s:2:"gv";s:22:"մալագասերեն";s:2:"mg";s:10:"մաորի";s:2:"mi";s:22:"մակեդոներեն";s:2:"mk";s:18:"մալայալամ";s:2:"ml";s:20:"մոնղոլերեն";s:2:"mn";s:12:"մարաթի";s:2:"mr";s:18:"մալայերեն";s:2:"ms";s:16:"մալթերեն";s:2:"mt";s:9:"구시어";s:3:"guz";s:12:"մաշամե";s:3:"jmc";s:14:"մակոնդե";s:3:"kde";s:12:"샴발라어";s:3:"ksb";s:10:"մասաի";s:3:"mas";s:10:"մերու";s:3:"mer";s:16:"մորիսյեն";s:3:"mfe";s:23:"մաքուա-մետտո";s:3:"mgh";s:8:"մետա";s:3:"mgo";s:12:"մոհավք";s:3:"moh";s:16:"մունդանգ";s:3:"mua";s:20:"մոլդովերեն";s:5:"ro-md";s:39:"մեքսիկական իսպաներեն";s:5:"es-mx";}i:315;a:41:{s:33:"მაპუდუნგუნი";s:3:"arn";s:18:"მენური";s:2:"gv";s:12:"მიზო";s:3:"lus";s:21:"მაითილი";s:3:"mai";s:15:"მოქშა";s:3:"mdf";s:33:"მალაგასიური";s:2:"mg";s:15:"მაორი";s:2:"mi";s:33:"მინანგკაბაუ";s:3:"min";s:30:"მაკედონური";s:2:"mk";s:36:"მალაიალამური";s:2:"ml";s:27:"მონღოლური";s:2:"mn";s:21:"მარათჰი";s:2:"mr";s:24:"მალაიური";s:2:"ms";s:21:"მალტური";s:2:"mt";s:27:"მირანდული";s:3:"mwl";s:9:"佛羅文";s:3:"vro";s:27:"მარგალური";s:3:"xmf";s:21:"მაკონდე";s:3:"kde";s:15:"მასაი";s:3:"mas";s:12:"მერუ";s:3:"mer";s:27:"მორისიენი";s:3:"mfe";s:34:"მაქუვა-მეეტო";s:3:"mgh";s:25:"მეტა’ ენა";s:3:"mgo";s:27:"მოჰაუკური";s:3:"moh";s:24:"მუნდანგი";s:3:"mua";s:12:"佛兰芒文";s:5:"nl-be";s:12:"佛蘭芒文";s:5:"nl-be";s:27:"მოლდავური";s:5:"ro-md";s:21:"მარიული";s:3:"chm";s:15:"მონგო";s:3:"lol";s:18:"მაგაჰი";s:3:"mag";s:12:"მაბა";s:3:"mde";s:15:"მენდე";s:3:"men";s:21:"მიკმაკი";s:3:"mic";s:30:"მანჯურიული";s:3:"mnc";s:24:"მანიპური";s:3:"mni";s:15:"მოორე";s:3:"mos";s:21:"მარვარი";s:3:"mwr";s:52:"მექსიკური ესპანური";s:5:"es-mx";s:12:"მაფა";s:3:"maf";s:15:"მიენე";s:3:"mye";}i:246;a:49:{s:15:"ಮಪುಚೆ";s:3:"arn";s:18:"österrikisk tyska";s:5:"de-at";s:27:"ಮ್ಯಾಂಕ್ಸ್";s:2:"gv";s:8:"örmény";s:2:"hy";s:18:"ಮೈಥಿಲಿ";s:3:"mai";s:15:"ಮೋಕ್ಷ";s:3:"mdf";s:18:"ಮಲಗಾಸಿ";s:2:"mg";s:33:"ಮಾರ್ಶಲ್ಲೀಸ್";s:2:"mh";s:18:"ಮಾವೋರಿ";s:2:"mi";s:36:"ಮಿನಂಗ್‌ಕಬಾವು";s:3:"min";s:33:"ಮೆಸಿಡೋನಿಯನ್";s:2:"mk";s:18:"ಮಲಯಾಳಂ";s:2:"ml";s:27:"ಮಂಗೋಲಿಯನ್";s:2:"mn";s:15:"ಮರಾಠಿ";s:2:"mr";s:12:"ಮಲಯ್";s:2:"ms";s:24:"ಮಾಲ್ಟೀಸ್";s:2:"mt";s:53:"ಮಧ್ಯ ಅಟ್ಲಾಸ್ ಟಮಜೈಟ್";s:3:"tzm";s:7:"özbək";s:2:"uz";s:18:"ಮ್ಯಕಮೆ";s:3:"jmc";s:27:"ಮ್ಯಾಕೊಂಡ್";s:3:"kde";s:15:"ಮಸಾಯ್";s:3:"mas";s:12:"ಮೆರು";s:3:"mer";s:21:"ಮೊರಿಸನ್";s:3:"mfe";s:41:"ಮ್ಯಖುವಾ- ಮೀಟ್ಟೊ";s:3:"mgh";s:12:"ಮೆಟಾ";s:3:"mgo";s:24:"ಮೊಹಾವ್ಕ್";s:3:"moh";s:21:"ಮುಂಡಂಗ್";s:3:"mua";s:33:"ಮೊಲ್ಡೆವಿಯನ್";s:5:"ro-md";s:12:"ಮಾರಿ";s:3:"chm";s:22:"ಮಧ್ಯ ಡಚ್";s:3:"dum";s:37:"ಮಧ್ಯ ಇಂಗ್ಲೀಷ್";s:3:"enm";s:34:"ಮಧ್ಯ ಫ್ರೆಂಚ್";s:3:"frm";s:12:"östfrisiska";s:3:"frs";s:38:"ಮಧ್ಯ ಹೈ ಜರ್ಮನ್";s:3:"gmh";s:15:"ಮೋಂಗ್";s:3:"hmn";s:15:"ಮೊಂಗೋ";s:3:"lol";s:21:"ಮದುರೀಸ್";s:3:"mad";s:15:"ಮಗಾಹಿ";s:3:"mag";s:18:"ಮಕಾಸರ್";s:3:"mak";s:21:"ಮಂಡಿಂಗೊ";s:3:"man";s:18:"ಮಂದಾರ್";s:3:"mdr";s:15:"ಮೆಂಡೆ";s:3:"men";s:28:"ಮಧ್ಯ ಐರಿಷ್";s:3:"mga";s:33:"ಮಿಕ್‌ಮ್ಯಾಕ್";s:3:"mic";s:12:"ಮಂಚು";s:3:"mnc";s:21:"ಮಣಿಪುರಿ";s:3:"mni";s:18:"ಮೊಸ್ಸಿ";s:3:"mos";s:24:"ಮಾರ್ವಾಡಿ";s:3:"mwr";s:58:"ಮೆಕ್ಸಿಕನ್ ಸ್ಪ್ಯಾನಿಷ್";s:5:"es-mx";}i:374;a:53:{s:18:"മാപുചി";s:3:"arn";s:15:"മാൻസ്";s:2:"gv";s:12:"മിസോ";s:3:"lus";s:18:"മൈഥിലി";s:3:"mai";s:15:"മോക്ഷ";s:3:"mdf";s:18:"മലഗാസി";s:2:"mg";s:30:"മാർഷല്ലീസ്";s:2:"mh";s:15:"മവോറി";s:2:"mi";s:27:"മിനാങ്കബൗ";s:3:"min";s:30:"മാസിഡോണിയൻ";s:2:"mk";s:18:"മലയാളം";s:2:"ml";s:24:"മംഗോളിയൻ";s:2:"mn";s:21:"മറാത്തി";s:2:"mr";s:15:"മലെയ്";s:2:"ms";s:27:"മാൾട്ടീസ്";s:2:"mt";s:24:"മിരാൻറസേ";s:3:"mwl";s:12:"坦米爾文";s:2:"ta";s:68:"മധ്യ അറ്റ്‌ലസ് ടമാസൈറ്റ്";s:3:"tzm";s:12:"മചേം";s:3:"jmc";s:27:"മക്കോണ്ടെ";s:3:"kde";s:15:"മസായ്";s:3:"mas";s:12:"മേരു";s:3:"mer";s:21:"മൊറിസിൻ";s:3:"mfe";s:37:"മാഖുവാ-മീത്തോ";s:3:"mgh";s:18:"മേത്താ";s:3:"mgo";s:18:"മോഹാക്";s:3:"moh";s:27:"മുന്ദാംഗ്";s:3:"mua";s:27:"മോൾഡാവിയൻ";s:5:"ro-md";s:71:"മൊറോക്കൻ സാധാരണ താമസൈറ്റ്";s:3:"zgh";s:12:"മാരി";s:3:"chm";s:34:"മദ്ധ്യ ഡച്ച്";s:3:"dum";s:43:"മദ്ധ്യ ഇംഗ്ലീഷ്";s:3:"enm";s:40:"മദ്ധ്യ ഫ്രഞ്ച്";s:3:"frm";s:44:"മദ്ധ്യ ഉച്ച ജർമൻ";s:3:"gmh";s:12:"മോങ്";s:3:"hmn";s:18:"മോങ്കോ";s:3:"lol";s:21:"മദുരേസേ";s:3:"mad";s:15:"മഗാഹി";s:3:"mag";s:15:"മകാസർ";s:3:"mak";s:24:"മണ്ഡിൻഗോ";s:3:"man";s:9:"മാബ";s:3:"mde";s:18:"മണ്ഡാർ";s:3:"mdr";s:15:"മെൻഡെ";s:3:"men";s:34:"മദ്ധ്യ ഐറിഷ്";s:3:"mga";s:24:"മിക്മാക്";s:3:"mic";s:12:"മൻചു";s:3:"mnc";s:27:"മണിപ്പൂരി";s:3:"mni";s:18:"മൊസ്സി";s:3:"mos";s:18:"മർവാരി";s:3:"mwr";s:18:"മെഡുംബ";s:3:"byv";s:55:"മെക്സിക്കൻ സ്പാനിഷ്";s:5:"es-mx";s:9:"മാഫ";s:3:"maf";s:12:"മയീൻ";s:3:"mye";}i:121;a:124:{s:21:"မာပုချီ";s:3:"arn";s:8:"yovoncha";s:2:"dz";s:5:"yunan";s:2:"el";s:6:"yunani";s:2:"el";s:7:"yunanca";s:2:"el";s:8:"yunoncha";s:2:"el";s:7:"yevugbe";s:2:"en";s:21:"yaren mutanen finland";s:2:"fi";s:61:"မြောက်ပိုင်း ဖရီစီရန်";s:3:"frr";s:11:"yunani kuno";s:3:"grc";s:18:"မန်းဇ်";s:2:"gv";s:9:"yahudanci";s:2:"he";s:12:"yuxarı sorb";s:3:"hsb";s:9:"yläsorbi";s:3:"hsb";s:15:"yukarı sorbça";s:3:"hsb";s:14:"yuqori sorbcha";s:3:"hsb";s:21:"yare tsakanin kasashe";s:2:"ia";s:10:"yndonezysk";s:2:"id";s:13:"yi de sichuan";s:2:"ii";s:12:"yieg sichuan";s:2:"ii";s:10:"yi sichuan";s:2:"ii";s:2:"yi";s:2:"ii";s:14:"yi de sichuán";s:2:"ii";s:13:"yi du sichuan";s:2:"ii";s:13:"yi sichuanés";s:2:"ii";s:7:"yi simi";s:2:"ii";s:7:"yslands";s:2:"is";s:7:"yslâns";s:2:"is";s:21:"yaren mutanen iceland";s:2:"is";s:5:"yapon";s:2:"ja";s:8:"yaponcha";s:2:"ja";s:12:"yutland dili";s:3:"jut";s:4:"yava";s:2:"jv";s:8:"yavancha";s:2:"jv";s:163:"မောင်းရီ (နယူးဇီလန်ကျွန်းရှိ ပင်ရင်းတိုင်းရင်းသားလူမျိုး)";s:2:"mi";s:33:"မာစီဒိုနီယံ";s:2:"mk";s:27:"မလေးရာလမ်";s:2:"ml";s:42:"မွန်ဂိုလီးယန်း";s:2:"mn";s:15:"မာရသီ";s:2:"mr";s:12:"မလေး";s:2:"ms";s:27:"မောလ္တီစ်";s:2:"mt";s:30:"မြန်မာဘာသာ";s:2:"my";s:18:"yaren kasar norway";s:2:"nn";s:20:"yaren mutanen norway";s:2:"no";s:10:"yakut dili";s:3:"sah";s:8:"yakouteg";s:3:"sah";s:5:"yakut";s:3:"sah";s:8:"yakutça";s:3:"sah";s:12:"yukreeniyaan";s:2:"uk";s:7:"yiddish";s:2:"yi";s:11:"yahudi dili";s:2:"yi";s:7:"yídish";s:2:"yi";s:7:"yadhish";s:2:"yi";s:6:"yidiş";s:2:"yi";s:8:"yorùbá";s:2:"yo";s:6:"yoruba";s:2:"yo";s:9:"yorubakan";s:2:"yo";s:7:"yorouba";s:2:"yo";s:9:"yorubagbe";s:2:"yo";s:8:"yorubera";s:2:"yo";s:8:"yorrubaa";s:2:"yo";s:8:"yarbanci";s:2:"yo";s:8:"yôrobà";s:2:"yo";s:11:"yoruba simi";s:2:"yo";s:7:"yoruuba";s:2:"yo";s:8:"yorubaca";s:2:"yo";s:8:"yorubcha";s:2:"yo";s:23:"yksinkertaistettu kiina";s:7:"zh-hans";s:11:"yleisarabia";s:6:"ar-001";s:13:"yola-fonyicha";s:3:"dyo";s:18:"မချာမီ";s:3:"jmc";s:24:"မာခွန်ဒီ";s:3:"kde";s:21:"မာဆိုင်";s:3:"mas";s:12:"မီရု";s:3:"mer";s:36:"မိုရှီစ်ယန်း";s:3:"mfe";s:40:"မာခူဝါ-မီအီတို";s:3:"mgh";s:12:"မီတာ";s:3:"mgo";s:27:"မိုဟော့ခ်";s:3:"moh";s:21:"မန်ဒန်း";s:3:"mua";s:12:"yezhoù lies";s:3:"mul";s:11:"yezh dianav";s:3:"und";s:85:"မသိ သို့မဟုတ် မရှိ သော ဘာသာစကား";s:3:"und";s:65:"မိုရိုကန် တွမ်မဇိုတ် စံ";s:3:"zgh";s:18:"yevropa ispanchasi";s:5:"es-es";s:20:"yaren kasar portugal";s:5:"pt-pt";s:21:"yevropa portugalchasi";s:5:"pt-pt";s:12:"yuzev-perseg";s:3:"jpr";s:17:"yahudi farsçası";s:3:"jpr";s:12:"yuzev-arabeg";s:3:"jrb";s:17:"yahudi arapçası";s:3:"jrb";s:21:"မန်ချူး";s:3:"mnc";s:21:"မနိပူရီ";s:3:"mni";s:3:"yao";s:3:"yao";s:8:"yao dili";s:3:"yao";s:11:"yao-sprache";s:3:"yao";s:13:"yao-schpraach";s:3:"yao";s:11:"yao (bantu)";s:3:"yao";s:11:"yao-sprooch";s:3:"yao";s:6:"yapés";s:3:"yap";s:10:"yapiz dili";s:3:"yap";s:5:"yapeg";s:3:"yap";s:6:"yapeà";s:3:"yap";s:6:"yapese";s:3:"yap";s:9:"yapesisch";s:3:"yap";s:9:"yapesigbe";s:3:"yap";s:6:"yapois";s:3:"yap";s:6:"yapees";s:3:"yap";s:9:"yapesesch";s:3:"yap";s:8:"yapesisk";s:3:"yap";s:8:"yapeesch";s:3:"yap";s:6:"yapais";s:3:"yap";s:7:"yapeză";s:3:"yap";s:6:"yapça";s:3:"yap";s:7:"yangben";s:3:"yav";s:10:"yangbengbe";s:3:"yav";s:8:"yangbeni";s:3:"yav";s:13:"yupik central";s:3:"esu";s:14:"youpik central";s:3:"esu";s:14:"yupik centrale";s:3:"esu";s:8:"yup’ik";s:3:"esu";s:5:"yupik";s:3:"ypk";s:25:"yupik środkowosyberyjski";s:3:"esu";s:5:"yemba";s:3:"ybb";s:8:"yembagbe";s:3:"ybb";}i:606;a:100:{s:18:"ਮਾਪੁਚੇ";s:3:"arn";s:15:"ਮੈਂਕਸ";s:2:"gv";s:15:"ਮੈਥਲੀ";s:3:"mai";s:21:"ਮੇਲੇਗਸੀ";s:2:"mg";s:15:"ਮਾਉਰੀ";s:2:"mi";s:27:"ਮੈਕਡੋਨੀਆਈ";s:2:"mk";s:18:"ਮਲਿਆਲਮ";s:2:"ml";s:24:"ਮੰਗੋਲੀਅਨ";s:2:"mn";s:15:"ਮਰਾਠੀ";s:2:"mr";s:9:"ਮਲਯ";s:2:"ms";s:21:"ਮਾਲਟੀਜ਼";s:2:"mt";s:16:"نائورویی";s:2:"na";s:10:"ناورُ";s:2:"na";s:14:"ناۋرۇچە";s:2:"na";s:10:"ناپلی";s:3:"nap";s:20:"نیٖپالیٹَن";s:3:"nap";s:16:"ناپولىچە";s:3:"nap";s:29:"ناروییَن بوکمال";s:2:"nb";s:35:"نورۋىگىيە بوكمالچە";s:2:"nb";s:27:"نارویجین بوکمل";s:2:"nb";s:10:"نپالی";s:2:"ne";s:14:"نیٚپٲلۍ";s:2:"ne";s:12:"نېپالي";s:2:"ne";s:14:"نېپالچە";s:2:"ne";s:12:"نیپالی";s:2:"ne";s:16:"نواریایی";s:3:"new";s:14:"نیٚواری";s:3:"new";s:16:"نېۋارىچە";s:3:"new";s:16:"ندونگاچە";s:2:"ng";s:10:"نیویی";s:3:"niu";s:14:"نِیویَن";s:3:"niu";s:14:"نيۇئېچە";s:3:"niu";s:26:"نرس جدید نروژی";s:2:"nn";s:34:"ناروییَن نَے نورسک";s:2:"nn";s:33:"ناروېئي (نائنورسک)";s:2:"nn";s:33:"نورویجینی نینورسک";s:2:"nn";s:25:"نروژی (بوکمال)";s:2:"no";s:16:"ناروییَن";s:2:"no";s:14:"ناروېئې";s:2:"no";s:16:"نورۋېگچە";s:2:"no";s:16:"نارویجین";s:2:"no";s:16:"ناواهویی";s:2:"nv";s:12:"نَواجو";s:2:"nv";s:16:"ناۋاخوچە";s:2:"nv";s:16:"نیانجایی";s:2:"ny";s:14:"نِیَنجا";s:2:"ny";s:16:"نيانجاچە";s:2:"ny";s:12:"نیانجا";s:2:"ny";s:44:"ਮੱਧ ਐਟਲਸ ਤਮਾਜ਼ਿਤ";s:3:"tzm";s:12:"نغومبا";s:3:"jgo";s:12:"نگومبا";s:3:"jgo";s:16:"نگومباچە";s:3:"jgo";s:15:"ਮਚਾਮੇ";s:3:"jmc";s:15:"ਮਕੋਂਡ";s:3:"kde";s:12:"ਮਸਾਈ";s:3:"mas";s:12:"ਮੇਰੂ";s:3:"mer";s:24:"ਮੋਰੀਸਿਅਨ";s:3:"mfe";s:31:"ਮਖੋਵਾ-ਮਿੱਟੋ";s:3:"mgh";s:12:"ਮੇਟਾ";s:3:"mgo";s:18:"ਮੋਹਾਵਕ";s:3:"moh";s:21:"ਮੁੰਡੇਂਗ";s:3:"mua";s:8:"ناما";s:3:"naq";s:12:"نامایی";s:3:"naq";s:12:"ناماچە";s:3:"naq";s:6:"نکو";s:3:"nqo";s:12:"نىكوچە";s:3:"nqo";s:8:"نویر";s:3:"nus";s:23:"نیانکوله‌ای";s:3:"nyn";s:16:"نِیَنکول";s:3:"nyn";s:22:"نىيانكولېچە";s:3:"nyn";s:12:"نینکول";s:3:"nyn";s:27:"ਮੋਲਡਾਵੀਆਈ";s:5:"ro-md";s:23:"نامعلوم زبان";s:3:"und";s:62:"ਮਿਆਰੀ ਮੋਰੋਕੇਨ ਟਾਮਾਜ਼ਿਕ";s:3:"zgh";s:12:"ਮਾਰੀ";s:3:"chm";s:21:"ਮਨੀਪੁਰੀ";s:3:"mni";s:10:"نیاسی";s:3:"nia";s:10:"نِیاس";s:3:"nia";s:14:"نىئاسچە";s:3:"nia";s:10:"نغایی";s:3:"nog";s:10:"نوگاے";s:3:"nog";s:14:"نوغايچە";s:3:"nog";s:19:"نرس باستان";s:3:"non";s:29:"نواریایی کلاسیک";s:3:"nwc";s:14:"نېۋارچە";s:3:"nwc";s:23:"نیام‌وزیایی";s:3:"nym";s:20:"نِیَمویٚزی";s:3:"nym";s:20:"نيامۋېزىچە";s:3:"nym";s:14:"نیورویی";s:3:"nyo";s:12:"نِیورو";s:3:"nyo";s:16:"نىئوروچە";s:3:"nyo";s:14:"نزیمایی";s:3:"nzi";s:14:"نَظیٖما";s:3:"nzi";s:16:"نىزەماچە";s:3:"nzi";s:10:"نامبي";s:3:"sba";s:18:"نگامبايچە";s:3:"sba";s:23:"نیاسا ٹونٛگا";s:3:"tog";s:25:"نياسا توڭانچە";s:3:"tog";s:43:"ਮੈਕਸੀਕਨ ਸਪੈਨਿਸ਼";s:5:"es-mx";s:18:"نگېمبۇنچە";s:3:"nnh";}i:512;a:38:{s:15:"මපුචෙ";s:3:"arn";s:9:"부기어";s:3:"bug";s:24:"මැන්ක්ස්";s:2:"gv";s:18:"මලගාසි";s:2:"mg";s:18:"මාවොරි";s:2:"mi";s:36:"මැසිඩෝනියානු";s:2:"mk";s:21:"මලයාලම්";s:2:"ml";s:33:"මොංගෝලියානු";s:2:"mn";s:15:"මරාති";s:2:"mr";s:12:"මැලේ";s:2:"ms";s:24:"මොල්ටිස්";s:2:"mt";s:12:"רומאנש";s:2:"rm";s:12:"רומנית";s:2:"ro";s:14:"רומעניש";s:2:"ro";s:10:"רוסית";s:2:"ru";s:10:"רוסיש";s:2:"ru";s:14:"רוסיניש";s:3:"rue";s:56:"මධ්‍යම ඇට්ලස් ටමසිට්";s:3:"tzm";s:18:"මැකාමී";s:3:"jmc";s:24:"මැකොන්ඩ්";s:3:"kde";s:15:"මසායි";s:3:"mas";s:12:"මෙරු";s:3:"mer";s:30:"මොරිස්යෙම්";s:3:"mfe";s:28:"මඛුවා-මීටෝ";s:3:"mgh";s:12:"මෙටා";s:3:"mgo";s:24:"මොහොව්ක්";s:3:"moh";s:15:"ムンダン語";s:3:"mua";s:21:"මුන්ඩන්";s:3:"mua";s:10:"רומבו";s:3:"rof";s:8:"רווא";s:3:"rwk";s:12:"부리아타";s:3:"bua";s:14:"ראג׳סטן";s:3:"raj";s:12:"רפאנוי";s:3:"rap";s:18:"ררוטונגאן";s:3:"rar";s:14:"רומאנית";s:3:"rom";s:18:"ムブンドゥ語";s:3:"umb";s:52:"මෙක්සිකානු ස්පාඤ්ඤ";s:5:"es-mx";s:30:"ムスリム・タタール語";s:3:"ttt";}i:990;a:50:{s:15:"மபுசே";s:3:"arn";s:9:"世界文";s:2:"eo";s:61:"மேற்கத்திய ஃப்ரிஷியன்";s:2:"fy";s:24:"மேங்க்ஸ்";s:2:"gv";s:18:"மைதிலி";s:3:"mai";s:24:"மோக்க்ஷா";s:3:"mdf";s:18:"மலகாஸி";s:2:"mg";s:30:"மார்ஷெலிஷ்";s:2:"mh";s:12:"மௌரி";s:2:"mi";s:33:"மின்னாங்கபௌ";s:3:"min";s:33:"மாஸிடோனியன்";s:2:"mk";s:24:"மலையாளம்";s:2:"ml";s:30:"மங்கோலியன்";s:2:"mn";s:21:"மராத்தி";s:2:"mr";s:15:"மலாய்";s:2:"ms";s:24:"மால்டிஸ்";s:2:"mt";s:30:"மிரான்டீஸ்";s:3:"mwl";s:56:"மத்திய அட்லஸ் தமசைட்";s:3:"tzm";s:74:"மாடர்ன் ஸ்டாண்டர்ட் அரபிக்";s:6:"ar-001";s:18:"மாசெம்";s:3:"jmc";s:21:"மகொண்டே";s:3:"kde";s:18:"மாசாய்";s:3:"mas";s:12:"மெரு";s:3:"mer";s:27:"மொரிசியன்";s:3:"mfe";s:34:"மகுவா-மீட்டோ";s:3:"mgh";s:12:"மேடா";s:3:"mgo";s:24:"மோஹாவ்க்";s:3:"moh";s:24:"முன்டாங்";s:3:"mua";s:33:"மோல்டாவியன்";s:5:"ro-md";s:71:"மொழி உள்ளடக்கம் ஏதுமில்லை";s:3:"zxx";s:12:"மாரி";s:3:"chm";s:34:"மத்திய டச்சு";s:3:"dum";s:43:"மத்திய ஆங்கிலம்";s:3:"enm";s:46:"மத்திய ஃப்ரென்ச்";s:3:"frm";s:47:"மத்திய ஹை ஜெர்மன்";s:3:"gmh";s:18:"மாங்க்";s:3:"hmn";s:18:"மோங்கோ";s:3:"lol";s:21:"மதுரீஸ்";s:3:"mad";s:15:"மகாஹி";s:3:"mag";s:21:"மகாசார்";s:3:"mak";s:30:"மான்டிங்கோ";s:3:"man";s:24:"மான்டார்";s:3:"mdr";s:18:"மென்டீ";s:3:"men";s:34:"மத்திய ஐரிஷ்";s:3:"mga";s:24:"மிக்மாக்";s:3:"mic";s:15:"மன்சு";s:3:"mnc";s:21:"மனிபூரி";s:3:"mni";s:18:"மோஸ்ஸி";s:3:"mos";s:24:"மார்வாரி";s:3:"mwr";s:52:"மெக்சிகன் ஸ்பானிஷ்";s:5:"es-mx";}i:532;a:32:{s:12:"马普切文";s:3:"arn";s:12:"ヴォロ語";s:3:"vro";s:12:"프랑스어";s:2:"fr";s:18:"프리우리안어";s:3:"fur";s:15:"프리지아어";s:2:"fy";s:12:"马恩岛文";s:2:"gv";s:18:"리투아니아어";s:2:"lt";s:15:"马尔加什文";s:2:"mg";s:12:"马绍尔文";s:2:"mh";s:12:"马其顿文";s:2:"mk";s:18:"马拉雅拉姆文";s:2:"ml";s:12:"马拉地文";s:2:"mr";s:9:"马来文";s:2:"ms";s:12:"马耳他文";s:2:"mt";s:21:"ヴェネツィア語";s:3:"vec";s:15:"ヴェプス語";s:3:"vep";s:21:"ヴォラピュク語";s:2:"vo";s:15:"ヴォート語";s:3:"vot";s:12:"马切姆文";s:3:"jmc";s:12:"马孔德文";s:3:"kde";s:9:"马夸文";s:3:"mgh";s:12:"ヴァイ語";s:3:"vai";s:15:"ヴンジョ語";s:3:"vun";s:24:"프랑스어 (캐나다)";s:5:"fr-ca";s:24:"프랑스어 (스위스)";s:5:"fr-ch";s:9:"马里文";s:3:"chm";s:12:"马都拉文";s:3:"mad";s:12:"马加伊文";s:3:"mag";s:9:"马坝文";s:3:"mde";s:15:"马尔瓦利文";s:3:"mwr";s:9:"马法文";s:3:"maf";s:15:"ヴァリス語";s:3:"wae";}i:340;a:61:{s:12:"馬普切文";s:3:"arn";s:21:"तिब्बती";s:2:"bo";s:18:"तिबेटी";s:2:"bo";s:40:"तल्लो सोर्बियन";s:3:"dsb";s:15:"馬拉加什文";s:2:"mg";s:12:"馬紹爾文";s:2:"mh";s:12:"馬其頓文";s:2:"mk";s:18:"馬來亞拉姆文";s:2:"ml";s:12:"馬拉地文";s:2:"mr";s:9:"馬來文";s:2:"ms";s:12:"馬爾他文";s:2:"mt";s:9:"룬디어";s:2:"rn";s:27:"तैचेल्हित";s:3:"shi";s:27:"ताशेल्हिट";s:3:"shi";s:12:"तमिल";s:2:"ta";s:15:"तामिळ";s:2:"ta";s:15:"तामिल";s:2:"ta";s:18:"तेलुगू";s:2:"te";s:15:"तेलगू";s:2:"te";s:18:"तेलुगु";s:2:"te";s:15:"तेतुम";s:3:"tet";s:15:"ताजिक";s:2:"tg";s:30:"तिग्रीन्या";s:2:"ti";s:30:"तिग्रिन्या";s:2:"ti";s:24:"तुर्कमेन";s:2:"tk";s:21:"तागालोग";s:2:"tl";s:24:"त्स्वाना";s:2:"tn";s:18:"तुर्की";s:2:"tr";s:15:"तातार";s:2:"tt";s:12:"तातर";s:2:"tt";s:21:"तम्बूका";s:3:"tum";s:24:"तुम्बुका";s:3:"tum";s:24:"ताहितियन";s:2:"ty";s:24:"ताहितीयन";s:2:"ty";s:24:"तुवीनियन";s:3:"tyv";s:12:"तैता";s:3:"dav";s:15:"तायता";s:3:"dav";s:15:"ताइता";s:3:"dav";s:12:"馬恰美文";s:3:"jmc";s:12:"馬孔德文";s:3:"kde";s:9:"馬賽文";s:3:"mas";s:9:"馬夸文";s:3:"mgh";s:12:"삼부루어";s:3:"saq";s:12:"तेसो";s:3:"teo";s:27:"तासाव्हाक";s:3:"twq";s:21:"तासावाक";s:3:"twq";s:9:"馬里文";s:3:"chm";s:9:"룬다어";s:3:"lun";s:12:"馬都拉文";s:3:"mad";s:12:"馬加伊文";s:3:"mag";s:9:"馬巴文";s:3:"mde";s:15:"馬爾尼裡文";s:3:"mwr";s:18:"तेरेनो";s:3:"ter";s:9:"तिव";s:3:"tiv";s:21:"तोकेलाऊ";s:3:"tkl";s:24:"त्लिंगित";s:3:"tli";s:21:"तामाशेक";s:3:"tmh";s:30:"त्सिमीशियन";s:3:"tsi";s:18:"तुवालु";s:3:"tvl";s:15:"त्याप";s:3:"kcg";s:9:"馬法文";s:3:"maf";}i:580;a:36:{s:16:"جازايرية";s:3:"arq";s:12:"جٔرمَن";s:2:"de";s:8:"جرمن";s:2:"de";s:14:"جونخایی";s:2:"dz";s:12:"جاپٲنۍ";s:2:"ja";s:12:"جاپانی";s:2:"ja";s:15:"جاوه‌ای";s:2:"jv";s:16:"جَوَنیٖز";s:2:"jv";s:12:"جاوايې";s:2:"jv";s:8:"جاوی";s:2:"jv";s:16:"جارجِیَن";s:2:"ka";s:16:"جورجيائي";s:2:"ka";s:10:"جارجی";s:2:"ka";s:21:"جنوٗبی سَمی";s:3:"sma";s:36:"جەنۇبى سامى تىللىرى";s:3:"sma";s:19:"جنوبی سامی";s:3:"sma";s:19:"جنوبی ستھو";s:2:"st";s:25:"جەنۇبى سوتوچە";s:2:"st";s:21:"جنوبی سوتھو";s:2:"st";s:9:"테툼어";s:3:"tet";s:12:"جۇاڭچە";s:2:"za";s:19:"جولا فونيا";s:3:"dyo";s:12:"جولاچە";s:3:"dyo";s:21:"جنوب ڈیٚبیل";s:2:"nr";s:31:"جەنۇبى ندەبەلەچە";s:2:"nr";s:9:"테조어";s:3:"teo";s:27:"جنوٗبی اَلتایی";s:3:"alt";s:40:"جەنۇبى ئالتاي تىللىرى";s:3:"alt";s:12:"جغتایی";s:3:"chg";s:21:"جوڈیو فارسی";s:3:"jpr";s:19:"جوڈیو عربی";s:3:"jrb";s:4:"جو";s:3:"kaj";s:8:"جُوٗ";s:3:"kaj";s:8:"جۇچە";s:3:"kaj";s:12:"테레노어";s:3:"ter";s:12:"澤納加文";s:3:"zen";}i:508;a:57:{s:19:"알제리 아랍어";s:3:"arq";s:24:"ボージュプリー語";s:3:"bho";s:15:"ボスニア語";s:2:"bs";s:34:"පහළ සෝබියානු";s:3:"dsb";s:10:"פרסית";s:2:"fa";s:27:"පර්සියානු";s:2:"fa";s:14:"פּערסיש";s:2:"fa";s:8:"פולה";s:2:"ff";s:10:"פינית";s:2:"fi";s:12:"פֿיניש";s:2:"fi";s:12:"פיג׳ית";s:2:"fj";s:14:"פֿידזשי";s:2:"fj";s:16:"פארואזית";s:2:"fo";s:16:"פֿאַראיש";s:2:"fo";s:18:"ප්‍රංශ";s:2:"fr";s:24:"פֿראַנצויזיש";s:2:"fr";s:25:"פריזית צפונית";s:3:"frr";s:14:"פריולית";s:3:"fur";s:12:"פריזית";s:2:"fy";s:23:"פידזשי הינדי";s:3:"hif";s:16:"פנג׳אבית";s:2:"pa";s:16:"פנגסינאן";s:3:"pag";s:14:"פמפאניה";s:3:"pam";s:16:"פפיאמנטו";s:3:"pap";s:8:"פאלי";s:2:"pi";s:12:"פולנית";s:2:"pl";s:18:"පෝලන්ත";s:2:"pl";s:14:"פּויליש";s:2:"pl";s:16:"פּרייסיש";s:3:"prg";s:10:"פאשטו";s:2:"ps";s:15:"පෂ්ටො";s:2:"ps";s:16:"פּאַשטאָ";s:2:"ps";s:18:"פורטוגלית";s:2:"pt";s:24:"පෘතුගීසි";s:2:"pt";s:22:"פּארטוגעזיש";s:2:"pt";s:35:"פורטוגלית ברזילאית";s:5:"pt-br";s:15:"알바니아어";s:2:"sq";s:9:"ボド語";s:3:"brx";s:18:"פיליפינית";s:3:"fil";s:21:"පිලිපීන";s:3:"fil";s:20:"פֿיליפּינא";s:3:"fil";s:10:"פלמית";s:5:"nl-be";s:14:"פֿלעמיש";s:5:"nl-be";s:12:"פניקית";s:3:"phn";s:21:"알 수 없는 언어";s:3:"und";s:35:"פורטוגלית אירופאית";s:5:"pt-pt";s:12:"알류트어";s:3:"ale";s:6:"פנג";s:3:"fan";s:10:"פאנטי";s:3:"fat";s:6:"פון";s:3:"fon";s:27:"פריזיאן מזרחית";s:3:"frs";s:23:"פרסית יהודית";s:3:"jpr";s:10:"פלאבי";s:3:"pal";s:12:"פלוואן";s:3:"pau";s:21:"פרסית עתיקה";s:3:"peo";s:14:"פונפיאן";s:3:"pon";s:27:"פרובנסאל עתיקה";s:3:"pro";}i:734;a:47:{s:37:"મોરોક્કન અરબી";s:3:"ary";s:18:"માંક્સ";s:2:"gv";s:18:"મૈથિલી";s:3:"mai";s:15:"મોક્ષ";s:3:"mdf";s:18:"મલાગસી";s:2:"mg";s:24:"માર્શલીઝ";s:2:"mh";s:15:"માઓરી";s:2:"mi";s:36:"મિનાંગ્કાબાઉ";s:3:"min";s:30:"મેસેડોનિયન";s:2:"mk";s:18:"મલયાલમ";s:2:"ml";s:27:"મોંગોલિયન";s:2:"mn";s:15:"મરાઠી";s:2:"mr";s:9:"મલય";s:2:"ms";s:21:"માલ્ટિઝ";s:2:"mt";s:21:"મિરાંડી";s:3:"mwl";s:62:"મોડર્ન સ્ટાન્ડર્ડ અરબી";s:6:"ar-001";s:15:"મકામે";s:3:"jmc";s:21:"મકોન્ડે";s:3:"kde";s:12:"મસાઇ";s:3:"mas";s:12:"મેરુ";s:3:"mer";s:27:"મોરીસ્યેન";s:3:"mfe";s:37:"માખુવા-મીટ્ટુ";s:3:"mgh";s:12:"મેતા";s:3:"mgo";s:15:"મોહૌક";s:3:"moh";s:24:"મુનડાન્ગ";s:3:"mua";s:27:"મોલડાવિયન";s:5:"ro-md";s:12:"મારી";s:3:"chm";s:19:"મધ્ય ડચ";s:3:"dum";s:40:"મિડિલ અંગ્રેજી";s:3:"enm";s:34:"મિડિલ ફ્રેંચ";s:3:"frm";s:38:"મધ્ય હાઇ જર્મન";s:3:"gmh";s:12:"મોંગ";s:3:"hmn";s:12:"મોગો";s:3:"lol";s:21:"માદુરીસ";s:3:"mad";s:12:"મગહી";s:3:"mag";s:15:"મકાસર";s:3:"mak";s:27:"મન્ડિન્ગો";s:3:"man";s:15:"મંડાર";s:3:"mdr";s:18:"મેન્ડે";s:3:"men";s:31:"મિડિલ આઇરિશ";s:3:"mga";s:18:"મિકમેક";s:3:"mic";s:18:"માન્ચુ";s:3:"mnc";s:21:"મણિપુરી";s:3:"mni";s:18:"મોસ્સી";s:3:"mos";s:21:"મારવાડી";s:3:"mwr";s:46:"મેક્સિકન સ્પેનિશ";s:5:"es-mx";s:31:"મુસ્લિમ તાટ";s:3:"ttt";}i:784;a:6:{s:19:"모로코 아랍어";s:3:"ary";s:12:"모크샤어";s:3:"mdf";s:21:"耐諾斯克挪威文";s:2:"nn";s:15:"모리스얀어";s:3:"mfe";s:12:"모호크어";s:3:"moh";s:9:"모시어";s:3:"mos";}i:705;a:145:{s:21:"摩洛哥阿拉伯文";s:3:"ary";s:15:"ቡልጋሪኛ";s:2:"bg";s:14:"کاتالان";s:2:"ca";s:12:"کَتلان";s:2:"ca";s:12:"کټلاني";s:2:"ca";s:18:"کاٹالانین";s:2:"ca";s:12:"کَمورو";s:2:"ch";s:10:"کوردی";s:3:"ckb";s:21:"کردی سورانی";s:3:"ckb";s:10:"کورسی";s:2:"co";s:16:"کارسِکَن";s:2:"co";s:16:"کوراسیکن";s:2:"co";s:12:"کریایی";s:2:"cr";s:6:"کری";s:2:"cr";s:25:"کرٕمیٖن تُرکی";s:3:"crh";s:12:"کاشوبی";s:3:"csb";s:20:"کَشوٗبِیَن";s:3:"csb";s:41:"کینَڈِیٲیی اَنٛگریٖزۍ";s:5:"en-ca";s:29:"کینیڈین انگریزی";s:5:"en-ca";s:37:"کونکانی گن (خط لاتین)";s:8:"gom-latn";s:10:"کروات";s:2:"hr";s:16:"کروشِیَن";s:2:"hr";s:14:"کروواتي";s:2:"hr";s:10:"کراتی";s:2:"hr";s:49:"کانادایی شرقی (هجاهای بومی)";s:8:"ike-cans";s:45:"کانادایی شرقی (خط لاتینی)";s:8:"ike-latn";s:21:"کارا کَلپَک";s:3:"kaa";s:14:"کَبایِل";s:3:"kab";s:18:"کاباردینی";s:3:"kbd";s:20:"کَبارڈِیَن";s:3:"kbd";s:12:"کنگویی";s:2:"kg";s:12:"کونٛگو";s:2:"kg";s:10:"کانگو";s:2:"kg";s:10:"کھوار";s:3:"khw";s:10:"کهوار";s:3:"khw";s:16:"کیکویویی";s:2:"ki";s:14:"کِکُیوٗ";s:2:"ki";s:8:"کیکو";s:2:"ki";s:16:"کرمانجکی";s:3:"kiu";s:16:"کوانیاما";s:2:"kj";s:18:"کُوانیاما";s:2:"kj";s:10:"کازَخ";s:2:"kk";s:18:"کَلالِسُت";s:2:"kl";s:41:"کمبوډيايې يا د کمبوډيا";s:2:"km";s:19:"کاناده‌ای";s:2:"kn";s:10:"کَنَڑ";s:2:"kn";s:10:"کنأډه";s:2:"kn";s:12:"کنّاڈا";s:2:"kn";s:13:"کره‌ای";s:2:"ko";s:12:"کوریَن";s:2:"ko";s:14:"کوريائي";s:2:"ko";s:14:"کوریائی";s:2:"ko";s:21:"کومی پرمیاک";s:3:"koi";s:18:"کانوریایی";s:2:"kr";s:14:"کَنوٗری";s:2:"kr";s:25:"کراچیے بَلکار";s:3:"krc";s:12:"کشمیری";s:2:"ks";s:10:"کٲشُر";s:7:"ks-arab";s:28:"کشمیری (خط عربی)";s:7:"ks-arab";s:38:"کشمیری (خط دیواناگری)";s:7:"ks-deva";s:8:"کردی";s:2:"ku";s:12:"کُردِش";s:2:"ku";s:8:"کردي";s:2:"ku";s:8:"کردش";s:2:"ku";s:26:"کردی (خط لاتین)";s:7:"ku-latn";s:14:"کومیایی";s:2:"kv";s:8:"کومی";s:2:"kv";s:14:"کرنوالی";s:2:"kw";s:12:"کورنِش";s:2:"kw";s:10:"کورنش";s:2:"kw";s:12:"کِرگِز";s:2:"ky";s:10:"کرګيز";s:2:"ky";s:12:"کرغیزی";s:2:"ky";s:10:"کریکی";s:3:"mus";s:10:"کریٖک";s:3:"mus";s:12:"ቡርማኛ";s:2:"my";s:12:"کچوایی";s:2:"qu";s:16:"کُویشُوا";s:2:"qu";s:12:"کویچوآ";s:2:"qu";s:26:"کینیارواندایی";s:2:"rw";s:20:"کِنیاوِندا";s:2:"rw";s:22:"کینیاروانڈا";s:2:"rw";s:12:"桑塔利文";s:3:"sat";s:9:"桑戈文";s:2:"sg";s:12:"کالمِک";s:3:"xal";s:10:"کھوسا";s:2:"xh";s:14:"کانتونی";s:6:"zh-yue";s:12:"کاپٹِک";s:3:"cop";s:14:"کامبایی";s:3:"kam";s:10:"کامبا";s:3:"kam";s:22:"کابووردیانو";s:3:"kea";s:18:"کوجراچینی";s:3:"khq";s:14:"کالنجین";s:3:"kln";s:12:"کنکانی";s:3:"kok";s:14:"کونکَنی";s:3:"kok";s:12:"کونکنی";s:3:"kok";s:12:"کوروخی";s:3:"kru";s:12:"کُرُکھ";s:3:"kru";s:12:"摩霍克文";s:3:"moh";s:12:"کوازیو";s:3:"nmg";s:11:"کیچه‌";s:3:"quc";s:15:"摩尔多瓦文";s:5:"ro-md";s:15:"摩爾多瓦文";s:5:"ro-md";s:12:"桑布鲁文";s:3:"saq";s:9:"桑古文";s:3:"sbp";s:25:"کویرابورا سنی";s:3:"ses";s:12:"کوموری";s:3:"swb";s:23:"کانگو سواحلی";s:3:"swc";s:14:"کلینگون";s:3:"tlh";s:16:"کِلِنگون";s:3:"tlh";s:16:"کلينګاني";s:3:"tlh";s:10:"کلنگن";s:3:"tlh";s:54:"کانٛہہ تہِ لِسانیاتی مواد نہٕ";s:3:"zxx";s:37:"کوئی لسانی مواد نہیں";s:3:"zxx";s:29:"کَنیڈیَن فریٚنچ";s:5:"fr-ca";s:31:"کینیڈین فرانسیسی";s:5:"fr-ca";s:12:"کادویی";s:3:"cad";s:8:"کاڈو";s:3:"cad";s:12:"کاریبی";s:3:"car";s:10:"کارِب";s:3:"car";s:12:"کاچینی";s:3:"kac";s:10:"کاچِن";s:3:"kac";s:14:"کاویایی";s:3:"kaw";s:8:"کَوی";s:3:"kaw";s:8:"کورو";s:3:"kfo";s:10:"کھاسی";s:3:"kha";s:18:"کھوتَنیٖز";s:3:"kho";s:20:"کیمبوندویی";s:3:"kmb";s:18:"کِمبُندوٗ";s:3:"kmb";s:16:"کوسرییَن";s:3:"kos";s:15:"کپله‌ای";s:3:"kpe";s:12:"کَپیلی";s:3:"kpe";s:18:"کَریلِیَن";s:3:"krl";s:12:"کومیکی";s:3:"kum";s:10:"کُمِک";s:3:"kum";s:10:"کوتنی";s:3:"kut";s:14:"کُتینَے";s:3:"kut";s:29:"کلاسِکَل نیواری";s:3:"nwc";s:12:"桑達韋文";s:3:"sad";s:12:"翁本杜文";s:3:"umb";s:19:"کونکانی گن";s:3:"gom";s:45:"کونکانی گن (خط دیواناگری)";s:8:"gom-deva";s:39:"کونکانی گن (خط کانادا)";s:8:"gom-knda";s:45:"کونکانی گن (خط مالایالمی)";s:8:"gom-mlym";s:35:"کونکانی گن (خط عربی)";s:8:"gom-arab";}i:196;a:12:{s:21:"Ägyptisches arabisch";s:3:"arz";s:20:"Äjiptesch arahbesch";s:3:"arz";s:9:"Änglisch";s:2:"en";s:9:"Änglesch";s:2:"en";s:20:"Änglesch uß kanada";s:5:"en-ca";s:31:"Änglesch uß jruußbrettannije";s:5:"en-gb";s:9:"Äßnesch";s:2:"et";s:9:"로반어";s:3:"jbo";s:9:"로지어";s:3:"loz";s:10:"Ägyptisch";s:3:"egy";s:9:"Ägyptsch";s:3:"egy";s:26:"Änglesch uß außtraalije";s:5:"en-au";}i:696;a:3:{s:40:"ઈજિપ્શિયન અરબી";s:3:"arz";s:6:"ઈવ";s:2:"ee";s:21:"墨西哥西班牙文";s:5:"es-mx";}i:60;a:28:{s:19:"이집트 아랍어";s:3:"arz";s:10:"Форсӣ";s:2:"fa";s:10:"Фулах";s:2:"ff";s:10:"Финнӣ";s:2:"fi";s:12:"Фарозӣ";s:2:"fo";s:18:"Фаронсавӣ";s:2:"fr";s:20:"Фриулијски";s:3:"fur";s:16:"Фрисианӣ";s:2:"fy";s:12:"이그보어";s:2:"ig";s:18:"이누피아크어";s:2:"ik";s:12:"이로코어";s:3:"ilo";s:9:"이도어";s:2:"io";s:15:"이탈리아어";s:2:"it";s:18:"이눅티투트어";s:2:"iu";s:12:"이디시어";s:2:"yi";s:9:"이픽어";s:3:"efi";s:21:"이집트어 (고대)";s:3:"egy";s:18:"Филиппинӣ";s:3:"fil";s:20:"Феничански";s:3:"phn";s:19:"이나리 사미어";s:3:"smn";s:37:"ᏄᏬᎵᏍᏛᎾ ᎦᏬᏂᎯᏍᏗ";s:3:"und";s:12:"이카죽어";s:3:"eka";s:12:"이원도어";s:3:"ewo";s:8:"Фанг";s:3:"fan";s:10:"Фанти";s:3:"fat";s:6:"Фон";s:3:"fon";s:9:"이반어";s:3:"iba";s:15:"이비비오어";s:3:"ibb";}i:80;a:72:{s:40:"ఈజిప్ట్ అరబిక్";s:3:"arz";s:9:"ఈవీ";s:2:"ee";s:16:"испански";s:2:"es";s:19:"испан тілі";s:2:"es";s:14:"испанча";s:2:"es";s:12:"испани";s:2:"es";s:16:"испайнаг";s:2:"es";s:18:"испанский";s:2:"es";s:30:"ఈస్టొనియన్";s:2:"et";s:18:"ирландски";s:2:"ga";s:21:"ирланд тілі";s:2:"ga";s:16:"ирландча";s:2:"ga";s:10:"ирски";s:2:"ga";s:12:"ирланд";s:2:"ga";s:18:"ирландиаг";s:2:"ga";s:20:"ирландский";s:2:"ga";s:10:"иврит";s:2:"he";s:14:"ивритте";s:2:"he";s:22:"интерлингва";s:2:"ia";s:22:"интерлингво";s:2:"ia";s:24:"индонезийски";s:2:"id";s:23:"индонез тілі";s:2:"id";s:18:"индонезче";s:2:"id";s:22:"индонезиски";s:2:"id";s:16:"индонези";s:2:"id";s:26:"индонезийский";s:2:"id";s:24:"индонежански";s:2:"id";s:22:"интерлингве";s:2:"ie";s:8:"игбо";s:2:"ig";s:12:"игбочо";s:2:"ig";s:14:"инупиак";s:2:"ik";s:20:"инупијачки";s:2:"ik";s:10:"илоко";s:3:"ilo";s:18:"илокански";s:3:"ilo";s:20:"ингушетски";s:3:"inh";s:14:"ингушки";s:3:"inh";s:18:"ингушский";s:3:"inh";s:6:"идо";s:2:"io";s:9:"ఈడౌ";s:2:"io";s:18:"исландски";s:2:"is";s:12:"исланд";s:2:"is";s:16:"исландча";s:2:"is";s:20:"исландский";s:2:"is";s:20:"италиански";s:2:"it";s:23:"итальян тілі";s:2:"it";s:18:"италиянча";s:2:"it";s:22:"италијански";s:2:"it";s:10:"итали";s:2:"it";s:14:"италиаг";s:2:"it";s:22:"итальянский";s:2:"it";s:18:"инуктитут";s:2:"iu";s:22:"инуктитутта";s:2:"iu";s:9:"콘월어";s:2:"kw";s:8:"ирон";s:2:"os";s:8:"идиш";s:2:"yi";s:12:"идишче";s:2:"yi";s:10:"иддиш";s:2:"yi";s:25:"инари-саамски";s:3:"smn";s:19:"инари саам";s:3:"smn";s:25:"инари саамиче";s:3:"smn";s:31:"инарски лапонски";s:3:"smn";s:19:"инари сами";s:3:"smn";s:27:"инари-саамский";s:3:"smn";s:15:"无语言内容";s:3:"zxx";s:38:"ибериялық испан тілі";s:5:"es-es";s:29:"испанча (Европа)";s:5:"es-es";s:29:"източен фризски";s:3:"frs";s:30:"источнофризиски";s:3:"frs";s:8:"ибан";s:3:"iba";s:16:"ибанский";s:3:"iba";s:12:"ибибио";s:3:"ibb";s:14:"ижорски";s:3:"izh";}i:467;a:31:{s:18:"埃及阿拉伯文";s:3:"arz";s:12:"コタヴァ";s:3:"avk";s:15:"コルシカ語";s:2:"co";s:9:"埃维文";s:2:"ee";s:9:"埃維文";s:2:"ee";s:15:"埃米利安文";s:3:"egl";s:24:"埃斯特雷馬杜拉文";s:3:"ext";s:12:"コンゴ語";s:2:"kg";s:15:"コワール語";s:3:"khw";s:27:"コミ・ペルミャク語";s:3:"koi";s:9:"コミ語";s:2:"kv";s:24:"コーンウォール語";s:2:"kw";s:28:"උතුරු සාමි";s:2:"se";s:18:"උයිගර්";s:2:"ug";s:15:"උර්දු";s:2:"ur";s:21:"උස්බෙක්";s:2:"uz";s:9:"コサ語";s:2:"xh";s:12:"コプト語";s:3:"cop";s:12:"埃菲克文";s:3:"efi";s:24:"コイラ・チーニ語";s:3:"khq";s:15:"コンカニ語";s:3:"kok";s:43:"උතුරු එන්ඩිබෙලෙ";s:2:"nd";s:30:"コイラボロ・センニ語";s:3:"ses";s:12:"コモロ語";s:3:"swb";s:27:"コンゴ・スワヒリ語";s:3:"swc";s:15:"埃克丘克文";s:3:"eka";s:9:"埃蘭文";s:3:"elx";s:9:"コロ語";s:3:"kfo";s:15:"コータン語";s:3:"kho";s:15:"コスラエ語";s:3:"kos";s:9:"コム語";s:3:"bkm";}i:437;a:9:{s:21:"অসমীয়া";s:2:"as";s:58:"অস্ট্রিয়ান জার্মানি";s:5:"de-at";s:24:"অক্সিটান";s:2:"oc";s:15:"অরোমো";s:2:"om";s:28:"অজানা ভাষা";s:3:"und";s:52:"অস্ট্রেলীয় ইংরেজি";s:5:"en-au";s:21:"অদাগ্মে";s:3:"ada";s:15:"অজ্জু";s:3:"kaj";s:37:"অটোমান তুর্কি";s:3:"ota";}i:347;a:42:{s:30:"ഓസ്‌ട്രിയൻ";s:3:"ast";s:43:"ഓസ്‌ട്രിയൻ ജർമൻ";s:5:"de-at";s:18:"फ़ारसी";s:2:"fa";s:15:"फारसी";s:2:"fa";s:15:"फुलाह";s:2:"ff";s:18:"फ़िनिश";s:2:"fi";s:21:"फिन्निश";s:2:"fi";s:15:"फिनिश";s:2:"fi";s:15:"फ़ीजी";s:2:"fj";s:18:"फिजियन";s:2:"fj";s:24:"फिजियाली";s:2:"fj";s:24:"फ़ैरोइज़";s:2:"fo";s:15:"फरोइज";s:2:"fo";s:15:"फारोज";s:2:"fo";s:21:"फ़्रेंच";s:2:"fr";s:18:"फ्रेंच";s:2:"fr";s:30:"फ्रान्सेली";s:2:"fr";s:33:"फ्रीयुलीयान";s:3:"fur";s:33:"फ्रियुलियान";s:3:"fur";s:24:"फ्रिजीयन";s:2:"fy";s:30:"ഓക്‌സിറ്റൻ";s:2:"oc";s:9:"ślůnski";s:3:"szl";s:8:"śląski";s:3:"szl";s:27:"फ़िलिपीनो";s:3:"fil";s:24:"फिलिपिनो";s:3:"fil";s:24:"फिलिपिनी";s:3:"fil";s:24:"फ़्लेमिश";s:5:"nl-be";s:21:"फ्लेमिश";s:5:"nl-be";s:27:"फोएनिशियन";s:3:"phn";s:24:"फोनिशियन";s:3:"phn";s:61:"ഓസ്‌ട്രേലിയൻ ഇംഗ്ലീഷ്";s:5:"en-au";s:28:"średniowieczny niderlandzki";s:3:"dum";s:17:"średnioangielski";s:3:"enm";s:15:"फैन्ग";s:3:"fan";s:9:"फँग";s:3:"fan";s:15:"फन्टी";s:3:"fat";s:9:"फॉन";s:3:"fon";s:17:"średniofrancuski";s:3:"frm";s:25:"średnio-wysoko-niemiecki";s:3:"gmh";s:17:"średnioirlandzki";s:3:"mga";s:21:"ഓജിബ്വാ";s:2:"oj";s:49:"ഓട്ടോമൻ തുർക്കിഷ്";s:3:"ota";}i:902;a:3:{s:12:"Άβαρικ";s:2:"av";s:8:"Άσου";s:3:"asa";s:27:"Άγνωστη γλώσσα";s:3:"und";}i:82;a:309:{s:12:"котава";s:3:"avk";s:22:"каталонская";s:2:"ca";s:22:"каталёнская";s:2:"ca";s:20:"каталонски";s:2:"ca";s:14:"каталан";s:2:"ca";s:18:"каталанча";s:2:"ca";s:20:"каталайнаг";s:2:"ca";s:22:"каталанский";s:2:"ca";s:22:"каталонська";s:2:"ca";s:14:"кебуано";s:3:"ceb";s:29:"кюрдски (сорани)";s:3:"ckb";s:31:"курдська (сорані)";s:3:"ckb";s:22:"корсикански";s:2:"co";s:25:"корсикан тілі";s:2:"co";s:20:"корсиканча";s:2:"co";s:22:"корзикански";s:2:"co";s:12:"корсик";s:2:"co";s:24:"корсиканский";s:2:"co";s:24:"корсиканська";s:2:"co";s:16:"капизнон";s:3:"cps";s:8:"крии";s:2:"cr";s:6:"кри";s:2:"cr";s:18:"криийский";s:2:"cr";s:6:"крі";s:2:"cr";s:33:"крымска-татарская";s:3:"crh";s:30:"кримскотатарски";s:3:"crh";s:26:"кримскотурски";s:3:"crh";s:33:"крымско-татарский";s:3:"crh";s:34:"кримськотатарська";s:3:"crh";s:52:"крымска-татарская (лацініца)";s:8:"crh-latn";s:46:"къырымтатарджа (Кирилл)‎";s:8:"crh-cyrl";s:52:"крымска-татарская (кірыліца)";s:8:"crh-cyrl";s:16:"кашубски";s:3:"csb";s:16:"кашупски";s:3:"csb";s:24:"кашубианский";s:3:"csb";s:18:"кашубська";s:3:"csb";s:39:"канадзкая ангельская";s:5:"en-ca";s:35:"канадски английски";s:5:"en-ca";s:42:"канадалық ағылшын тілі";s:5:"en-ca";s:21:"канад англи";s:5:"en-ca";s:35:"канадӕйаг англисаг";s:5:"en-ca";s:39:"канадский английский";s:5:"en-ca";s:35:"каџунски француски";s:3:"frc";s:24:"каракалпашки";s:3:"kaa";s:24:"каракалпачки";s:3:"kaa";s:28:"каракалпакский";s:3:"kaa";s:26:"каракалпацька";s:3:"kaa";s:16:"кабилски";s:3:"kab";s:10:"кабил";s:3:"kab";s:14:"кабылча";s:3:"kab";s:12:"кабиле";s:3:"kab";s:20:"кабильский";s:3:"kab";s:20:"кабільська";s:3:"kab";s:18:"кабардиан";s:3:"kbd";s:22:"кабардински";s:3:"kbd";s:12:"кӕсгон";s:3:"kbd";s:24:"кабардинский";s:3:"kbd";s:24:"кабардинська";s:3:"kbd";s:20:"конгоански";s:2:"kg";s:10:"конго";s:2:"kg";s:22:"конґолезька";s:2:"kg";s:16:"коварски";s:3:"khw";s:10:"кикую";s:2:"ki";s:12:"кикуйю";s:2:"ki";s:16:"кикуйиче";s:2:"ki";s:12:"кикују";s:2:"ki";s:12:"кикуюү";s:2:"ki";s:12:"кікуйю";s:2:"ki";s:14:"кваняма";s:2:"kj";s:14:"квањама";s:2:"kj";s:12:"кунама";s:2:"kj";s:18:"казахская";s:2:"kk";s:16:"казаская";s:2:"kk";s:16:"казахски";s:2:"kk";s:14:"казакча";s:2:"kk";s:24:"казакстански";s:2:"kk";s:18:"казахский";s:2:"kk";s:14:"казашки";s:2:"kk";s:18:"казахська";s:2:"kk";s:35:"казаская (арабская)";s:7:"kk-arab";s:20:"калаалисут";s:2:"kl";s:24:"калаалисутча";s:2:"kl";s:18:"калалисут";s:2:"kl";s:22:"калааллісут";s:2:"kl";s:16:"кхмерски";s:2:"km";s:10:"кхмер";s:2:"km";s:12:"кмерче";s:2:"km";s:14:"кмерски";s:2:"km";s:12:"камбож";s:2:"km";s:18:"кхмерский";s:2:"km";s:18:"кхмерська";s:2:"km";s:14:"каннада";s:2:"kn";s:18:"каннадача";s:2:"kn";s:12:"канада";s:2:"kn";s:18:"карэйская";s:2:"ko";s:16:"корейски";s:2:"ko";s:19:"кәріс тілі";s:2:"ko";s:14:"корейче";s:2:"ko";s:16:"корејски";s:2:"ko";s:18:"корейский";s:2:"ko";s:18:"корейська";s:2:"ko";s:29:"карэйская (КНДР)";s:5:"ko-kp";s:25:"коми-пермяцки";s:3:"koi";s:28:"коми-пермь тілі";s:3:"koi";s:25:"коми-пермякча";s:3:"koi";s:27:"коми-пермјачки";s:3:"koi";s:21:"коми-пермяк";s:3:"koi";s:27:"коми-пермяцкий";s:3:"koi";s:23:"коми-пермски";s:3:"koi";s:30:"комі-перм’яцька";s:3:"koi";s:12:"канури";s:2:"kr";s:12:"канурі";s:2:"kr";s:31:"къарачай-малкъар";s:3:"krc";s:33:"карачай-балкарски";s:3:"krc";s:41:"карачаевско-балкарски";s:3:"krc";s:39:"карачаево-балкарский";s:3:"krc";s:39:"карачаєво-балкарська";s:3:"krc";s:8:"крио";s:3:"kri";s:20:"кинарајски";s:3:"krj";s:18:"кашмирски";s:2:"ks";s:21:"кашмир тілі";s:2:"ks";s:16:"кашмирче";s:2:"ks";s:12:"кашмир";s:2:"ks";s:14:"кашмири";s:2:"ks";s:20:"кашмірська";s:2:"ks";s:16:"колоњски";s:3:"ksh";s:10:"кёльш";s:3:"ksh";s:16:"колоніан";s:3:"ksh";s:16:"курдская";s:2:"ku";s:14:"кюрдски";s:2:"ku";s:17:"күрд тілі";s:2:"ku";s:12:"курдча";s:2:"ku";s:14:"курдски";s:2:"ku";s:8:"күрд";s:2:"ku";s:12:"курдаг";s:2:"ku";s:16:"курдский";s:2:"ku";s:16:"курдська";s:2:"ku";s:8:"коми";s:2:"kv";s:8:"комі";s:2:"kv";s:20:"корнуолски";s:2:"kw";s:12:"корниш";s:2:"kw";s:16:"корнишче";s:2:"kw";s:14:"корнски";s:2:"kw";s:10:"корны";s:2:"kw";s:20:"корнийский";s:2:"kw";s:20:"корнволски";s:2:"kw";s:20:"корнійська";s:2:"kw";s:18:"кыргыская";s:2:"ky";s:16:"киргизки";s:2:"ky";s:16:"кыргызча";s:2:"ky";s:16:"киргиски";s:2:"ky";s:12:"киргиз";s:2:"ky";s:20:"киргизский";s:2:"ky";s:18:"киргизька";s:2:"ky";s:31:"книжевен кинески";s:3:"lzh";s:19:"кырык мары";s:3:"mrj";s:8:"крик";s:3:"mus";s:8:"крік";s:3:"mus";s:10:"кечуа";s:2:"qu";s:14:"кечуача";s:2:"qu";s:18:"кечуански";s:2:"qu";s:18:"кичвански";s:3:"qug";s:20:"киняруанда";s:2:"rw";s:22:"киньяруанда";s:2:"rw";s:20:"кинярванда";s:2:"rw";s:22:"кинјаруанда";s:2:"rw";s:22:"кіньяруанда";s:2:"rw";s:12:"калмик";s:3:"xal";s:16:"калмички";s:3:"xal";s:18:"калмыцкий";s:3:"xal";s:18:"калмицька";s:3:"xal";s:10:"ксоса";s:2:"xh";s:10:"ксоза";s:2:"xh";s:12:"косача";s:2:"xh";s:8:"коса";s:2:"xh";s:10:"кхоса";s:2:"xh";s:18:"кантонски";s:3:"yue";s:20:"кантонский";s:3:"yue";s:20:"кантонська";s:3:"yue";s:18:"кітайская";s:2:"zh";s:16:"китайски";s:2:"zh";s:14:"кытайча";s:2:"zh";s:14:"кинески";s:2:"zh";s:14:"китайаг";s:2:"zh";s:18:"китайский";s:2:"zh";s:18:"китайська";s:2:"zh";s:53:"кытайча (жөнөкөйлөштүрүлгөн)";s:7:"zh-hans";s:31:"кытайча (салттуу)";s:7:"zh-hant";s:8:"кига";s:3:"cgg";s:8:"кіга";s:3:"cgg";s:14:"копцкая";s:3:"cop";s:14:"коптски";s:3:"cop";s:12:"коптаг";s:3:"cop";s:16:"коптский";s:3:"cop";s:16:"коптська";s:3:"cop";s:10:"камба";s:3:"kam";s:14:"камбача";s:3:"kam";s:42:"крэольская (Капа-Вэрдэ)";s:3:"kea";s:28:"кабовердиански";s:3:"kea";s:24:"кабувердиана";s:3:"kea";s:22:"кабувердиче";s:3:"kea";s:24:"кабувердиану";s:3:"kea";s:24:"кабүвердиану";s:3:"kea";s:24:"кабувердьяну";s:3:"kea";s:24:"кабувердіану";s:3:"kea";s:21:"койра чиини";s:3:"khq";s:19:"койра чини";s:3:"khq";s:23:"койра чиниче";s:3:"khq";s:21:"којра чиини";s:3:"khq";s:21:"койра чіїні";s:3:"khq";s:18:"календжин";s:3:"kln";s:16:"каленжин";s:3:"kln";s:18:"каленжиче";s:3:"kln";s:16:"каленџин";s:3:"kln";s:14:"конкани";s:3:"kok";s:18:"конканиче";s:3:"kok";s:14:"конкані";s:3:"kok";s:10:"курук";s:3:"kru";s:10:"курух";s:3:"kru";s:12:"курукх";s:3:"kru";s:12:"квасио";s:3:"nmg";s:16:"квасиочо";s:3:"nmg";s:12:"квазио";s:3:"nmg";s:12:"квазіо";s:3:"nmg";s:8:"киче";s:3:"quc";s:12:"кичече";s:3:"quc";s:11:"к’иче";s:3:"quc";s:8:"кіче";s:3:"quc";s:27:"койраборо сени";s:3:"ses";s:29:"койраборо сенни";s:3:"ses";s:33:"койраборо сенниче";s:3:"ses";s:27:"којраборо сени";s:3:"ses";s:25:"кёраборо сени";s:3:"ses";s:27:"койраборо сені";s:3:"ses";s:16:"коморски";s:3:"swb";s:24:"коморијански";s:3:"swb";s:18:"коморский";s:3:"swb";s:18:"коморська";s:3:"swb";s:35:"конгоански суахили";s:3:"swc";s:34:"конго суахили тілі";s:3:"swc";s:29:"конго суахаличе";s:3:"swc";s:35:"конгоански свахили";s:3:"swc";s:25:"конго свахили";s:3:"swc";s:39:"конголезский суахили";s:3:"swc";s:35:"конгійське суахілі";s:3:"swc";s:14:"клінгон";s:3:"tlh";s:14:"клингон";s:3:"tlh";s:18:"клингончо";s:3:"tlh";s:20:"клингонски";s:3:"tlh";s:21:"клингон хэл";s:3:"tlh";s:22:"клингонский";s:3:"tlh";s:39:"канадзкая француская";s:5:"fr-ca";s:31:"канадски френски";s:5:"fr-ca";s:42:"канадалық француз тілі";s:5:"fr-ca";s:21:"канад франц";s:5:"fr-ca";s:33:"канадӕйаг францаг";s:5:"fr-ca";s:41:"канадский французский";s:5:"fr-ca";s:10:"каддо";s:3:"cad";s:8:"кадо";s:3:"cad";s:16:"карибски";s:3:"car";s:16:"карипски";s:3:"car";s:10:"кариб";s:3:"car";s:18:"карібська";s:3:"car";s:10:"кучін";s:3:"gwi";s:16:"качински";s:3:"kac";s:18:"качинский";s:3:"kac";s:10:"качін";s:3:"kac";s:8:"каџе";s:3:"kaj";s:10:"каджи";s:3:"kaj";s:8:"кави";s:3:"kaw";s:8:"каві";s:3:"kaw";s:14:"канембу";s:3:"kbl";s:8:"коро";s:3:"kfo";s:10:"кхаси";s:3:"kha";s:8:"каси";s:3:"kha";s:10:"кхасі";s:3:"kha";s:12:"котски";s:3:"kho";s:16:"кимбунду";s:3:"kmb";s:26:"кимбундийский";s:3:"kmb";s:16:"кімбунду";s:3:"kmb";s:14:"косраен";s:3:"kos";s:18:"козрејски";s:3:"kos";s:22:"косраенский";s:3:"kos";s:12:"косрае";s:3:"kos";s:10:"кпеле";s:3:"kpe";s:12:"кпелле";s:3:"kpe";s:12:"кпеллє";s:3:"kpe";s:16:"карелски";s:3:"krl";s:20:"карельский";s:3:"krl";s:20:"карельська";s:3:"krl";s:16:"кумикски";s:3:"kum";s:14:"кумички";s:3:"kum";s:18:"кумыкский";s:3:"kum";s:16:"кумицька";s:3:"kum";s:14:"кутенай";s:3:"kut";s:20:"кутенајски";s:3:"kut";s:14:"кутенаи";s:3:"kut";s:14:"кутенаї";s:3:"kut";s:33:"класически невари";s:3:"nwc";s:33:"класичен неварски";s:3:"nwc";s:37:"класически сирийски";s:3:"syc";s:31:"класичен сириски";s:3:"syc";s:43:"классический сирийский";s:3:"syc";s:6:"ком";s:3:"bkm";s:12:"кајуга";s:3:"cay";s:12:"кайюга";s:3:"cay";s:12:"кењанг";s:3:"ken";s:20:"каинганшки";s:3:"kgp";s:8:"како";s:3:"kkj";}i:650;a:51:{s:18:"โคตาวา";s:3:"avk";s:21:"โภชปุรี";s:3:"bho";s:15:"โกธิก";s:3:"got";s:27:"โครเอเชีย";s:2:"hr";s:18:"โลชบัน";s:3:"jbo";s:18:"โควาร์";s:3:"khw";s:46:"โคมิ-เปียร์เมียค";s:3:"koi";s:15:"โคโลญ";s:3:"ksh";s:12:"โกมิ";s:2:"kv";s:12:"โลซิ";s:3:"loz";s:21:"โนเวียล";s:3:"nov";s:27:"โซโทเหนือ";s:3:"nso";s:18:"โอโรโม";s:2:"om";s:18:"โอริยา";s:2:"or";s:21:"โปแลนด์";s:2:"pl";s:24:"โปรตุเกส";s:2:"pt";s:45:"โปรตุเกส - บราซิล";s:5:"pt-br";s:21:"โรมัณโญ";s:3:"rgn";s:21:"โรแมนซ์";s:2:"rm";s:24:"โรมาเนีย";s:2:"ro";s:12:"โชนา";s:2:"sn";s:18:"โซมาลี";s:2:"so";s:21:"โซโทใต้";s:2:"st";s:21:"โวลาพึค";s:2:"vo";s:15:"โวทิก";s:3:"vot";s:12:"โวโร";s:3:"vro";s:15:"โวลอฟ";s:2:"wo";s:18:"โยรูบา";s:2:"yo";s:12:"โพโฑ";s:3:"brx";s:28:"โจลา-ฟอนยี";s:3:"dyo";s:30:"โคย์ราชีนี";s:3:"khq";s:21:"โมฮอว์ก";s:3:"moh";s:45:"โคย์ราโบโรเซนนี";s:3:"ses";s:30:"โคเมอเรียน";s:3:"swb";s:12:"โซกา";s:3:"xog";s:42:"โปรตุเกส - ยุโรป";s:5:"pt-pt";s:18:"โดกริบ";s:3:"dgr";s:15:"โฑครี";s:3:"doi";s:12:"โคโร";s:3:"kfo";s:15:"โคตัน";s:3:"kho";s:12:"โมซี";s:3:"mos";s:12:"โนไก";s:3:"nog";s:21:"โอจิบวา";s:2:"oj";s:18:"โอซากี";s:3:"osa";s:42:"โปรวองซาลโบราณ";s:3:"pro";s:18:"โรมานี";s:3:"rom";s:21:"โซนีนเก";s:3:"snk";s:21:"โตเกเลา";s:3:"tkl";s:18:"โคมาลา";s:3:"bbj";s:21:"โรทูมัน";s:3:"rtm";s:24:"โรเวียนา";s:3:"rug";}i:185;a:18:{s:12:"科塔瓦文";s:3:"avk";s:12:"科西嘉文";s:2:"co";s:9:"科瓦文";s:3:"khw";s:25:"科米-彼尔米亚克文";s:3:"koi";s:25:"科米-彼爾米亞克文";s:3:"koi";s:9:"科隆文";s:3:"ksh";s:9:"科米文";s:2:"kv";s:9:"科萨文";s:2:"xh";s:9:"科薩文";s:2:"xh";s:12:"科普特文";s:3:"cop";s:12:"科摩罗文";s:3:"swb";s:18:"科洛涅达罗文";s:3:"gor";s:15:"科隆達羅文";s:3:"gor";s:9:"科罗文";s:3:"kfo";s:9:"科羅文";s:3:"kfo";s:15:"科斯拉伊文";s:3:"kos";s:15:"科斯雷恩文";s:3:"kos";s:9:"科姆文";s:3:"bkm";}i:652;a:20:{s:24:"ไอย์มารา";s:2:"ay";s:15:"브르타뉴어";s:2:"br";s:15:"브라후이어";s:3:"brh";s:15:"ไอริช";s:2:"ga";s:27:"ไอซ์แลนด์";s:2:"is";s:18:"ไมถิลี";s:3:"mai";s:45:"ไซลีเซียตอนล่าง";s:3:"sli";s:24:"ไซลีเซีย";s:3:"szl";s:9:"ไทย";s:2:"th";s:12:"ไททา";s:3:"dav";s:6:"ไว";s:3:"vai";s:45:"ไม่มีข้อมูลภาษา";s:3:"zxx";s:9:"브린어";s:3:"byn";s:12:"ไอนุ";s:3:"ain";s:12:"브라지어";s:3:"bra";s:12:"ไฮดา";s:3:"hai";s:27:"ไอริชกลาง";s:3:"mga";s:30:"ไอริชโบราณ";s:3:"sga";s:18:"ไทใหญ่";s:3:"shn";s:33:"ไนอะซาตองกา";s:3:"tog";}i:406;a:10:{s:12:"艾马拉文";s:2:"ay";s:12:"艾馬拉文";s:2:"ay";s:29:"վերին սորբիերեն";s:3:"hsb";s:16:"վրացերեն";s:2:"ka";s:22:"վիետնամերեն";s:2:"vi";s:10:"վոլոֆ";s:2:"wo";s:6:"վաի";s:3:"vai";s:12:"վունջո";s:3:"vun";s:15:"艾卡朱克文";s:3:"eka";s:15:"艾拉米特文";s:3:"elx";}i:578;a:119:{s:29:"ترکی آذربایجانی";s:2:"az";s:12:"تورکجه";s:3:"azb";s:28:"ترکی آذری جنوبی";s:3:"azb";s:8:"تبتی";s:2:"bo";s:10:"تِبتی";s:2:"bo";s:14:"تىبەتچە";s:2:"bo";s:19:"ترکی کریمه";s:3:"crh";s:37:"ترکی کریمه (خط لاتین)";s:8:"crh-latn";s:37:"ترکی کریمه (خط سرلیک)";s:8:"crh-cyrl";s:23:"توۋەن سېربچە";s:3:"dsb";s:27:"تۆۋەن گېرمانچە";s:3:"nds";s:12:"تشلحيت";s:3:"shi";s:17:"تاچل‌هیت";s:3:"shi";s:19:"تاکی‌تاکی";s:3:"srn";s:12:"تامیلی";s:2:"ta";s:10:"تَمِل";s:2:"ta";s:8:"تامل";s:2:"ta";s:14:"تامىلچە";s:2:"ta";s:6:"تمل";s:2:"ta";s:8:"تولو";s:3:"tcy";s:14:"تلوگویی";s:2:"te";s:12:"تیلگوٗ";s:2:"te";s:12:"تېليګو";s:2:"te";s:16:"تېلۇگۇچە";s:2:"te";s:10:"تیلگو";s:2:"te";s:10:"تتومی";s:3:"tet";s:14:"تېتۇمچە";s:3:"tet";s:12:"تاجیکی";s:2:"tg";s:10:"تاجِک";s:2:"tg";s:8:"تاجک";s:2:"tg";s:14:"تاجىكچە";s:2:"tg";s:30:"تاجیکی (خط سرلیک)";s:7:"tg-cyrl";s:30:"تاجیکی (خط لاتین)";s:7:"tg-latn";s:14:"تایلندی";s:2:"th";s:8:"تھاے";s:2:"th";s:16:"تايلېنډي";s:2:"th";s:18:"تايلاندچە";s:2:"th";s:10:"تھائی";s:2:"th";s:20:"تیگرینیایی";s:2:"ti";s:14:"تيګريني";s:2:"ti";s:20:"تىگرىنياچە";s:2:"ti";s:12:"ترکمنی";s:2:"tk";s:14:"تُرکمین";s:2:"tk";s:12:"ترکمني";s:2:"tk";s:18:"تۈركمەنچە";s:2:"tk";s:12:"ترکمان";s:2:"tk";s:16:"تاگالوگی";s:2:"tl";s:14:"تَماشیک";s:2:"tl";s:18:"تاگالوگچە";s:2:"tl";s:16:"تسوانایی";s:2:"tn";s:14:"تونگایی";s:2:"to";s:14:"توڭانچە";s:2:"to";s:21:"توک‌پیسینی";s:3:"tpi";s:21:"توك-پىسىنچە";s:3:"tpi";s:27:"ترکی استانبولی";s:2:"tr";s:12:"تُرکِش";s:2:"tr";s:8:"ترکي";s:2:"tr";s:12:"تۈركچە";s:2:"tr";s:8:"ترکی";s:2:"tr";s:16:"تسونگایی";s:2:"ts";s:12:"تاتاری";s:2:"tt";s:10:"تَتار";s:2:"tt";s:10:"تاتار";s:2:"tt";s:14:"تاتارچە";s:2:"tt";s:30:"تاتاری (خط سرلیک)";s:7:"tt-cyrl";s:30:"تاتاری (خط لاتین)";s:7:"tt-latn";s:18:"تومبوکایی";s:3:"tum";s:14:"تُمبُکا";s:3:"tum";s:18:"تۇمبۇكاچە";s:3:"tum";s:17:"توی‌یایی";s:2:"tw";s:6:"توی";s:2:"tw";s:12:"تىۋىچە";s:2:"tw";s:18:"تاهیتیایی";s:2:"ty";s:18:"تاہیشِیَن";s:2:"ty";s:14:"تاختىچە";s:2:"ty";s:12:"تاہیتی";s:2:"ty";s:12:"تووایی";s:3:"tyv";s:18:"تُویٖنیَن";s:3:"tyv";s:12:"توۋاچە";s:3:"tyv";s:10:"تشيغا";s:3:"cgg";s:8:"تيتا";s:3:"dav";s:10:"تایتا";s:3:"dav";s:14:"تايتاچە";s:3:"dav";s:10:"تائتا";s:3:"dav";s:12:"تګالوګ";s:3:"fil";s:12:"尚巴拉文";s:3:"ksb";s:8:"تيسو";s:3:"teo";s:10:"تسویی";s:3:"teo";s:12:"تېسوچە";s:3:"teo";s:8:"تیسو";s:3:"teo";s:14:"تاساواق";s:3:"twq";s:12:"تسواکی";s:3:"twq";s:28:"تىل مەزمۇنى يوق";s:3:"zxx";s:17:"تیگره‌ای";s:3:"tig";s:14:"تىگرېچە";s:3:"tig";s:21:"ترکی عثمانی";s:3:"ota";s:15:"تمنه‌ای";s:3:"tem";s:14:"تېمنېچە";s:3:"tem";s:8:"ترنو";s:3:"ter";s:16:"تېرېناچە";s:3:"ter";s:8:"تیوی";s:3:"tiv";s:8:"تیٖو";s:3:"tiv";s:10:"تىۋچە";s:3:"tiv";s:18:"توكېلاۋچە";s:3:"tkl";s:19:"تلین‌گیتی";s:3:"tli";s:20:"تىلىنگىتچە";s:3:"tli";s:14:"تاماشقی";s:3:"tmh";s:14:"تاماشیک";s:3:"tmh";s:18:"تاماشېكچە";s:3:"tmh";s:23:"تونجا - نياسا";s:3:"tog";s:25:"تونگایی نیاسا";s:3:"tog";s:21:"تسیم‌شیانی";s:3:"tsi";s:16:"تووالویی";s:3:"tvl";s:14:"تُوالوٗ";s:3:"tvl";s:16:"تۇۋالۇچە";s:3:"tvl";s:10:"تیاپی";s:3:"kcg";s:10:"تَیَپ";s:3:"kcg";s:12:"تياپچە";s:3:"kcg";s:16:"توروكوچە";s:3:"trv";}i:241;a:2:{s:29:"әзірбайжан тілі";s:2:"az";s:10:"ñeengatú";s:3:"yrl";}i:90;a:164:{s:16:"тӕтӕйраг";s:2:"az";s:8:"тоба";s:3:"bbc";s:16:"тыбэцкая";s:2:"bo";s:16:"тибетски";s:2:"bo";s:19:"тибет тілі";s:2:"bo";s:14:"тибетче";s:2:"bo";s:8:"төвд";s:2:"bo";s:18:"тибетский";s:2:"bo";s:20:"тибетански";s:2:"bo";s:18:"тибетська";s:2:"bo";s:36:"төменгі лужица тілі";s:3:"dsb";s:33:"төмөнкү сорбианча";s:3:"dsb";s:39:"турнедаленски фински";s:3:"fit";s:15:"ఒరోమో";s:2:"om";s:15:"ఒరియా";s:2:"or";s:21:"ఒసేటిక్";s:2:"os";s:25:"түндүк самиче";s:2:"se";s:16:"ташелхит";s:3:"shi";s:18:"ташелитче";s:3:"shi";s:16:"тачелхит";s:3:"shi";s:16:"тахелхит";s:3:"shi";s:14:"тачеліт";s:3:"shi";s:27:"түштүк саамиче";s:3:"sma";s:20:"тамільская";s:2:"ta";s:16:"тамилски";s:2:"ta";s:10:"тамил";s:2:"ta";s:14:"тамилче";s:2:"ta";s:20:"тамильский";s:2:"ta";s:20:"тамільська";s:2:"ta";s:8:"тулу";s:3:"tcy";s:12:"тэлугу";s:2:"te";s:12:"телугу";s:2:"te";s:16:"телугуча";s:2:"te";s:12:"тэлүгү";s:2:"te";s:10:"тетум";s:3:"tet";s:12:"тоҷикӣ";s:7:"tg-cyrl";s:20:"таджыкская";s:2:"tg";s:18:"таджыцкая";s:2:"tg";s:18:"таджикски";s:2:"tg";s:19:"тәжік тілі";s:2:"tg";s:14:"тажикче";s:2:"tg";s:26:"таџикистански";s:2:"tg";s:10:"тажик";s:2:"tg";s:20:"таджикский";s:2:"tg";s:18:"таджицька";s:2:"tg";s:37:"таджыцкая (кірыліца)";s:7:"tg-cyrl";s:37:"таджыцкая (лацініца)";s:7:"tg-latn";s:14:"тайская";s:2:"th";s:12:"тайски";s:2:"th";s:6:"тай";s:2:"th";s:10:"тайча";s:2:"th";s:20:"тајландски";s:2:"th";s:14:"тайский";s:2:"th";s:14:"тайська";s:2:"th";s:16:"тыгрынья";s:2:"ti";s:14:"тигриня";s:2:"ti";s:16:"тигринья";s:2:"ti";s:20:"тигриниача";s:2:"ti";s:14:"тигриња";s:2:"ti";s:14:"тигрина";s:2:"ti";s:22:"туркменская";s:2:"tk";s:22:"туркмэнская";s:2:"tk";s:20:"туркменски";s:2:"tk";s:16:"түрікмен";s:2:"tk";s:18:"түркмөнчө";s:2:"tk";s:14:"туркмен";s:2:"tk";s:22:"туркменский";s:2:"tk";s:22:"туркменська";s:2:"tk";s:14:"тагалог";s:2:"tl";s:20:"тагальська";s:2:"tl";s:23:"толышә зывон";s:3:"tly";s:14:"талишки";s:3:"tly";s:12:"тсвана";s:2:"tn";s:10:"тонга";s:2:"to";s:12:"тонган";s:2:"to";s:14:"тонгача";s:2:"to";s:18:"тонгански";s:2:"to";s:20:"тонганский";s:2:"to";s:20:"тонганська";s:2:"to";s:17:"ток писин";s:3:"tpi";s:17:"ток-писин";s:3:"tpi";s:17:"ток-пісін";s:3:"tpi";s:16:"турэцкая";s:2:"tr";s:12:"турски";s:2:"tr";s:10:"түрік";s:2:"tr";s:12:"түркчө";s:2:"tr";s:8:"турк";s:2:"tr";s:16:"турецкий";s:2:"tr";s:16:"турецька";s:2:"tr";s:12:"туројо";s:3:"tru";s:12:"туройо";s:3:"tru";s:12:"тсонга";s:2:"ts";s:23:"татарча/tatarça";s:2:"tt";s:18:"татарская";s:2:"tt";s:16:"татарски";s:2:"tt";s:19:"татар тілі";s:2:"tt";s:14:"татарча";s:7:"tt-cyrl";s:10:"татар";s:2:"tt";s:18:"татарский";s:2:"tt";s:18:"татарська";s:2:"tt";s:37:"татарская (кірыліца)";s:7:"tt-cyrl";s:37:"татарская (лацініца)";s:7:"tt-latn";s:14:"тумбука";s:3:"tum";s:6:"туи";s:2:"tw";s:6:"тви";s:2:"tw";s:6:"тві";s:2:"tw";s:18:"таитянски";s:2:"ty";s:16:"тахитски";s:2:"ty";s:20:"таитянский";s:2:"ty";s:20:"таїтянська";s:2:"ty";s:15:"тыва дыл";s:3:"tyv";s:18:"тувінская";s:3:"tyv";s:16:"тувински";s:3:"tyv";s:16:"тувански";s:3:"tyv";s:18:"тувинский";s:3:"tyv";s:18:"тувинська";s:3:"tyv";s:38:"төв атласын тамазайт";s:3:"tzm";s:41:"традыцыйная кітайская";s:7:"zh-hant";s:39:"традиционен китайски";s:7:"zh-hant";s:41:"традиционален кинески";s:7:"zh-hant";s:33:"традицион китайаг";s:7:"zh-hant";s:43:"традиционный китайский";s:7:"zh-hant";s:10:"таита";s:3:"dav";s:14:"таитача";s:3:"dav";s:10:"тайта";s:3:"dav";s:10:"таіта";s:3:"dav";s:20:"тагальская";s:3:"fil";s:29:"түндүк ндыбелче";s:2:"nd";s:8:"тесо";s:3:"teo";s:12:"тесочо";s:3:"teo";s:8:"тэсо";s:3:"teo";s:14:"тасавак";s:3:"twq";s:18:"тасабакча";s:3:"twq";s:14:"тазавак";s:3:"twq";s:29:"тодорхойгүй хэл";s:3:"und";s:14:"тамазит";s:3:"zgh";s:26:"тамазигхтский";s:3:"zgh";s:34:"тілдік мазмұны жоқ";s:3:"zxx";s:32:"тилдик мазмун жок";s:3:"zxx";s:10:"тигре";s:3:"tig";s:15:"ఒసాజ్";s:3:"osa";s:46:"ఒట్టోమన్ టర్కిష్";s:3:"ota";s:10:"темне";s:3:"tem";s:10:"тимне";s:3:"tem";s:12:"терено";s:3:"ter";s:6:"тив";s:3:"tiv";s:8:"тиви";s:3:"tiv";s:6:"тів";s:3:"tiv";s:20:"токелайски";s:3:"tkl";s:24:"токелауански";s:3:"tkl";s:22:"токелайский";s:3:"tkl";s:14:"токелау";s:3:"tkl";s:14:"тлингит";s:3:"tli";s:14:"тлінгіт";s:3:"tli";s:14:"тамашек";s:3:"tmh";s:22:"тувалуански";s:3:"tvl";s:12:"тувалу";s:3:"tvl";s:29:"туниски арапски";s:3:"aeb";s:8:"туап";s:3:"kcg";s:8:"тјап";s:3:"kcg";s:8:"тьяп";s:3:"kcg";s:8:"тіап";s:3:"kcg";s:12:"тароко";s:3:"trv";s:12:"татски";s:3:"ttt";}i:571;a:4:{s:20:"أذربائجاني";s:2:"az";s:16:"أيسلېنډي";s:2:"is";s:8:"أنكو";s:3:"nqo";s:8:"أكوس";s:3:"bss";}i:726;a:19:{s:43:"દક્ષિણ ઝરબૈજાની";s:3:"azb";s:18:"દિવેહી";s:2:"dv";s:14:"ھاۋايچە";s:3:"haw";s:14:"ھىندىچە";s:2:"hi";s:21:"ھىرى موتۇچە";s:2:"ho";s:14:"ھايتىچە";s:2:"ht";s:26:"ھىندونېزىيەچە";s:2:"id";s:31:"દક્ષિણ સામી";s:3:"sma";s:12:"ቶንጋኛ";s:2:"to";s:16:"ቶክ ፒሲን";s:3:"tpi";s:59:"ھازىرقى زامان ئۆلچەملىك ئەرەبچە";s:6:"ar-001";s:15:"દુઆલા";s:3:"dua";s:34:"દક્ષિણ દેબેલ";s:2:"nr";s:37:"દક્ષિણ અલ્તાઇ";s:3:"alt";s:18:"દાકોતા";s:3:"dak";s:21:"દાર્ગવા";s:3:"dar";s:21:"દેલેવેર";s:3:"del";s:18:"દિન્કા";s:3:"din";s:14:"ھەيدەچە";s:3:"hai";}i:112;a:624:{s:20:"pietų azerbaidžano";s:3:"azb";s:36:"јужноазербејџански";s:3:"azb";s:18:"południowoazerski";s:3:"azb";s:15:"တိဘက်";s:2:"bo";s:10:"pelekānia";s:2:"en";s:17:"pelekāne kanakā";s:5:"en-ca";s:20:"pelekānia pekekāne";s:5:"en-gb";s:7:"paniolo";s:2:"es";s:5:"panya";s:2:"es";s:7:"persies";s:2:"fa";s:14:"pɛɛhyia kasa";s:2:"fa";s:5:"persa";s:2:"fa";s:11:"perisanikan";s:2:"fa";s:6:"perseg";s:2:"fa";s:9:"perzijski";s:2:"fa";s:9:"perština";s:2:"fa";s:7:"persisk";s:2:"fa";s:8:"persisch";s:2:"fa";s:12:"persišćina";s:2:"fa";s:9:"persiagbe";s:2:"fa";s:7:"persian";s:2:"fa";s:7:"pärsia";s:2:"fa";s:8:"persiera";s:2:"fa";s:8:"perseere";s:2:"fa";s:8:"persiskt";s:2:"fa";s:6:"persan";s:2:"fa";s:7:"perzysk";s:2:"fa";s:7:"peirsis";s:2:"fa";s:9:"parisanci";s:2:"fa";s:6:"perzsa";s:2:"fa";s:8:"persiano";s:2:"fa";s:6:"persia";s:2:"fa";s:6:"peshan";s:2:"fa";s:9:"persneska";s:2:"fa";s:11:"persiskisut";s:2:"fa";s:9:"pärsesch";s:2:"fa";s:8:"persesch";s:2:"fa";s:6:"persų";s:2:"fa";s:9:"persiešu";s:2:"fa";s:5:"parsi";s:2:"fa";s:7:"persjan";s:2:"fa";s:10:"pers’sch";s:2:"fa";s:8:"perzisch";s:2:"fa";s:6:"perski";s:2:"fa";s:10:"persa simi";s:2:"fa";s:8:"persană";s:2:"fa";s:13:"persijagiella";s:2:"fa";s:9:"persijski";s:2:"fa";s:10:"perzština";s:2:"fa";s:13:"perzijščina";s:2:"fa";s:8:"persisht";s:2:"fa";s:8:"persiska";s:2:"fa";s:6:"pulaar";s:2:"ff";s:4:"peul";s:2:"ff";s:6:"pīkī";s:2:"fj";s:9:"prantsuse";s:2:"fr";s:6:"palani";s:2:"fr";s:7:"prancis";s:2:"fr";s:10:"prancūzų";s:2:"fr";s:8:"perancis";s:2:"fr";s:12:"põhjafriisi";s:3:"frr";s:13:"pohjoisfriisi";s:3:"frr";s:19:"północnofryzyjski";s:3:"frr";s:18:"јерменски";s:2:"hy";s:16:"јапонски";s:2:"ja";s:16:"јапански";s:2:"ja";s:6:"patois";s:3:"jam";s:33:"јамајски креолски";s:3:"jam";s:12:"јитски";s:3:"jut";s:16:"јавански";s:2:"jv";s:9:"permikomi";s:3:"koi";s:19:"permska komišćina";s:3:"koi";s:8:"permiaco";s:3:"koi";s:15:"레즈기안어";s:3:"lez";s:12:"నౌరు";s:2:"na";s:22:"јужномински";s:3:"nan";s:33:"నియాపోలిటన్";s:3:"nap";s:58:"నార్వీజియన్ బొక్మాల్";s:2:"nb";s:14:"plattdüütsch";s:3:"nds";s:18:"నేపాలి";s:2:"ne";s:18:"నెవారి";s:3:"new";s:27:"నియూఇయాన్";s:3:"niu";s:67:"నార్విజియాన్ న్యోర్స్క్";s:2:"nn";s:36:"నార్విజియాన్";s:2:"no";s:17:"puo ya kwa norway";s:2:"no";s:4:"pedi";s:3:"nso";s:7:"pediera";s:3:"nso";s:12:"pohjoissotho";s:3:"nso";s:15:"నవాహో";s:2:"nv";s:24:"న్యాన్జా";s:2:"ny";s:12:"provansalski";s:2:"oc";s:8:"provansi";s:2:"oc";s:12:"prowansalski";s:2:"oc";s:10:"provençal";s:2:"oc";s:8:"pandjabi";s:2:"pa";s:13:"pungyabi kasa";s:2:"pa";s:8:"punyabí";s:2:"pa";s:7:"pəncab";s:2:"pa";s:12:"pɛnijabikan";s:2:"pa";s:7:"punjabi";s:2:"pa";s:11:"pandžabski";s:2:"pa";s:7:"panjabi";s:2:"pa";s:16:"paňdžábština";s:2:"pa";s:8:"pwnjabeg";s:2:"pa";s:15:"pandžabšćina";s:2:"pa";s:10:"pundzabgbe";s:2:"pa";s:8:"panĝaba";s:2:"pa";s:8:"punjabí";s:2:"pa";s:9:"pandžabi";s:2:"pa";s:9:"punjabera";s:2:"pa";s:10:"punjabeere";s:2:"pa";s:10:"punjabiskt";s:2:"pa";s:8:"pendjabi";s:2:"pa";s:12:"puinseáibis";s:2:"pa";s:13:"pandschabisch";s:2:"pa";s:11:"pandžapski";s:2:"pa";s:15:"pandźabšćina";s:2:"pa";s:10:"pandzsábi";s:2:"pa";s:9:"púnjabí";s:2:"pa";s:13:"panschaabesch";s:2:"pa";s:13:"pandschabesch";s:2:"pa";s:10:"pendžabų";s:2:"pa";s:9:"pandžabu";s:2:"pa";s:7:"penjabi";s:2:"pa";s:8:"punġabi";s:2:"pa";s:12:"pandschabsch";s:2:"pa";s:11:"pendżabski";s:2:"pa";s:12:"punyabi simi";s:2:"pa";s:13:"panjabigiella";s:2:"pa";s:9:"penzäbï";s:2:"pa";s:14:"pandžábčina";s:2:"pa";s:15:"pandžabščina";s:2:"pa";s:8:"panxhabe";s:2:"pa";s:9:"pencapça";s:2:"pa";s:9:"panjobcha";s:2:"pa";s:10:"pangasinan";s:3:"pag";s:15:"panqasinan dili";s:3:"pag";s:11:"pangasinski";s:3:"pag";s:7:"pangasi";s:3:"pag";s:16:"pangasinanština";s:3:"pag";s:10:"pangasineg";s:3:"pag";s:18:"pangasinan-sprache";s:3:"pag";s:11:"pangsinagbe";s:3:"pag";s:11:"pangasinán";s:3:"pag";s:11:"pangasinani";s:3:"pag";s:14:"pangasinanisch";s:3:"pag";s:11:"pangaszinan";s:3:"pag";s:9:"pangasina";s:3:"pag";s:13:"pangasínmál";s:3:"pag";s:18:"pangasinan-sprooch";s:3:"pag";s:11:"pangasinanu";s:3:"pag";s:11:"pangasinjan";s:3:"pag";s:9:"pangasino";s:3:"pag";s:10:"pangasinã";s:3:"pag";s:15:"pangasinančina";s:3:"pag";s:17:"pangasinanščina";s:3:"pag";s:8:"pampanga";s:3:"pam";s:13:"pampanqa dili";s:3:"pam";s:9:"pampangà";s:3:"pam";s:8:"papangau";s:3:"pam";s:18:"pampanggan-sprache";s:3:"pam";s:9:"pampangan";s:3:"pam";s:20:"pampanggan-schpraach";s:3:"pam";s:18:"pampanggan-sprooch";s:3:"pam";s:10:"pampanganu";s:3:"pam";s:8:"pampamga";s:3:"pam";s:10:"pampanggan";s:3:"pam";s:8:"pampango";s:3:"pam";s:13:"pampanščina";s:3:"pam";s:10:"papiamentu";s:3:"pap";s:10:"papiamento";s:3:"pap";s:15:"papyamento dili";s:3:"pap";s:13:"papiamentogbe";s:3:"pap";s:10:"papiaments";s:3:"pap";s:11:"papiamentó";s:3:"pap";s:12:"papíamentó";s:3:"pap";s:10:"papiemento";s:3:"pap";s:10:"papjamento";s:3:"pap";s:15:"papiamento simi";s:3:"pap";s:6:"picard";s:3:"pcd";s:7:"pícaru";s:3:"pcd";s:8:"pikardeg";s:3:"pcd";s:12:"picardština";s:3:"pcd";s:8:"picardeg";s:3:"pcd";s:10:"picardisch";s:3:"pcd";s:7:"picardi";s:3:"pcd";s:8:"piccardo";s:3:"pcd";s:10:"picardesch";s:3:"pcd";s:8:"pikardų";s:3:"pcd";s:11:"pikardyjski";s:3:"pcd";s:10:"pikardiska";s:3:"pcd";s:11:"picard dili";s:3:"pcd";s:19:"pennsylvaniadeutsch";s:3:"pdc";s:19:"pennsylvania german";s:3:"pdc";s:18:"pennsylvaniansaksa";s:3:"pdc";s:20:"pennsylvaniadäitsch";s:3:"pdc";s:24:"pensilvanijos vokiečių";s:3:"pdc";s:18:"pennsylvania-duits";s:3:"pdc";s:13:"pensylwański";s:3:"pdc";s:17:"pennsylvaniatyska";s:3:"pdc";s:22:"pensilvanya almancası";s:3:"pdc";s:12:"plautdietsch";s:3:"pdt";s:13:"plattdäitsch";s:3:"pdt";s:9:"pälzisch";s:3:"pfl";s:10:"pfälzisch";s:3:"pfl";s:15:"palatine german";s:3:"pfl";s:7:"pfaltsi";s:3:"pfl";s:19:"pfälzesch däitsch";s:3:"pfl";s:9:"paltsisch";s:3:"pfl";s:11:"palatynacki";s:3:"pfl";s:11:"pfalz-tyska";s:3:"pfl";s:18:"palatin almancası";s:3:"pfl";s:9:"pali dili";s:2:"pi";s:4:"pali";s:2:"pi";s:6:"pálí";s:2:"pi";s:5:"paali";s:2:"pi";s:7:"páilis";s:2:"pi";s:5:"palí";s:2:"pi";s:5:"pāli";s:2:"pi";s:8:"palijski";s:2:"pi";s:5:"páli";s:2:"pi";s:12:"palijščina";s:2:"pi";s:6:"polski";s:2:"pl";s:5:"pools";s:2:"pl";s:12:"pɔland kasa";s:2:"pl";s:6:"polacu";s:2:"pl";s:6:"polyak";s:2:"pl";s:9:"polonekan";s:2:"pl";s:7:"poloneg";s:2:"pl";s:7:"poljski";s:2:"pl";s:8:"polonès";s:2:"pl";s:9:"polština";s:2:"pl";s:6:"pwyleg";s:2:"pl";s:5:"polsk";s:2:"pl";s:8:"polnisch";s:2:"pl";s:11:"pólšćina";s:2:"pl";s:9:"polandgbe";s:2:"pl";s:6:"polish";s:2:"pl";s:4:"pola";s:2:"pl";s:6:"polaco";s:2:"pl";s:5:"poola";s:2:"pl";s:9:"poloniera";s:2:"pl";s:9:"poloneere";s:2:"pl";s:5:"puola";s:2:"pl";s:6:"polskt";s:2:"pl";s:8:"polonais";s:2:"pl";s:5:"polac";s:2:"pl";s:6:"poalsk";s:2:"pl";s:9:"polainnis";s:2:"pl";s:10:"pòlainnis";s:2:"pl";s:8:"polonese";s:2:"pl";s:8:"poliishi";s:2:"pl";s:7:"pólska";s:2:"pl";s:7:"polacco";s:2:"pl";s:12:"polenimiutut";s:2:"pl";s:9:"pollnesch";s:2:"pl";s:8:"polnesch";s:2:"pl";s:5:"poļu";s:2:"pl";s:7:"poloney";s:2:"pl";s:6:"poland";s:2:"pl";s:7:"pollakk";s:2:"pl";s:7:"poolsch";s:2:"pl";s:8:"polonês";s:2:"pl";s:11:"polaco simi";s:2:"pl";s:9:"poloneză";s:2:"pl";s:13:"polskkagiella";s:2:"pl";s:8:"polonëe";s:2:"pl";s:10:"poľština";s:2:"pl";s:11:"poljščina";s:2:"pl";s:9:"polonisht";s:2:"pl";s:6:"polska";s:2:"pl";s:9:"polyakcha";s:2:"pl";s:11:"piemontèis";s:3:"pms";s:10:"piamontés";s:3:"pms";s:9:"piemonteg";s:3:"pms";s:12:"piemonština";s:3:"pms";s:10:"piedmonteg";s:3:"pms";s:13:"piemontesisch";s:3:"pms";s:11:"piedmontese";s:3:"pms";s:8:"piemonte";s:3:"pms";s:11:"piémontais";s:3:"pms";s:10:"piemontese";s:3:"pms";s:13:"piemontesesch";s:3:"pms";s:11:"piëmontees";s:3:"pms";s:9:"piemoncki";s:3:"pms";s:13:"piemontesiska";s:3:"pms";s:11:"piyemontece";s:3:"pms";s:6:"ponteg";s:3:"pnt";s:10:"pontština";s:3:"pnt";s:8:"pontisch";s:3:"pnt";s:6:"pontic";s:3:"pnt";s:16:"pontoksenkreikka";s:3:"pnt";s:8:"pontique";s:3:"pnt";s:7:"pontico";s:3:"pnt";s:8:"pontesch";s:3:"pnt";s:5:"ponto";s:3:"pnt";s:9:"pontyjski";s:3:"pnt";s:8:"pontiska";s:3:"pnt";s:10:"prūsiskan";s:3:"prg";s:8:"prusianu";s:3:"prg";s:9:"pruština";s:3:"prg";s:6:"prwseg";s:3:"prg";s:9:"prusčina";s:3:"prg";s:8:"prussian";s:3:"prg";s:8:"prussien";s:3:"prg";s:8:"prúisis";s:3:"prg";s:7:"pruisis";s:3:"prg";s:10:"prušćina";s:3:"prg";s:9:"prussiano";s:3:"prg";s:9:"preisesch";s:3:"prg";s:7:"prūsų";s:3:"prg";s:6:"pruski";s:3:"prg";s:8:"prusyaca";s:3:"prg";s:6:"pasjto";s:2:"ps";s:6:"pashtu";s:2:"ps";s:6:"puştu";s:2:"ps";s:6:"pachto";s:2:"ps";s:10:"paštunski";s:2:"ps";s:6:"paixtu";s:2:"ps";s:11:"paštština";s:2:"ps";s:6:"pashto";s:2:"ps";s:7:"paschtu";s:2:"ps";s:14:"paštunšćina";s:2:"ps";s:9:"pashtogbe";s:2:"ps";s:7:"paŝtoa";s:2:"ps";s:7:"pastún";s:2:"ps";s:6:"puštu";s:2:"ps";s:8:"paxtuera";s:2:"ps";s:6:"paštu";s:2:"ps";s:7:"pasjtoe";s:2:"ps";s:7:"paistis";s:2:"ps";s:6:"pachtu";s:2:"ps";s:7:"paxtún";s:2:"ps";s:9:"pashtanci";s:2:"ps";s:5:"pastu";s:2:"ps";s:6:"pastú";s:2:"ps";s:12:"pashtomiutut";s:2:"ps";s:13:"paschtuunesch";s:2:"ps";s:10:"puštūnų";s:2:"ps";s:6:"paxtun";s:2:"ps";s:6:"paszto";s:2:"ps";s:6:"pastó";s:2:"ps";s:11:"pashto simi";s:2:"ps";s:7:"paschto";s:2:"ps";s:9:"paștună";s:2:"ps";s:10:"paštčina";s:2:"ps";s:14:"paštunščina";s:2:"ps";s:8:"peştuca";s:2:"ps";s:11:"pushtu tili";s:2:"ps";s:10:"português";s:2:"pt";s:9:"portugees";s:2:"pt";s:15:"pɔɔtugal kasa";s:2:"pt";s:10:"portugués";s:2:"pt";s:8:"portuqal";s:2:"pt";s:14:"pɔritigalikan";s:2:"pt";s:10:"portugaleg";s:2:"pt";s:11:"portugalski";s:2:"pt";s:10:"portuguès";s:2:"pt";s:14:"portugalština";s:2:"pt";s:10:"portiwgeeg";s:2:"pt";s:11:"portugisisk";s:2:"pt";s:13:"portugiesisch";s:2:"pt";s:15:"portugalšćina";s:2:"pt";s:11:"pɔtugalgbe";s:2:"pt";s:10:"portuguese";s:2:"pt";s:9:"portugala";s:2:"pt";s:9:"portugali";s:2:"pt";s:9:"portugesa";s:2:"pt";s:10:"purtugeere";s:2:"pt";s:12:"portugisiskt";s:2:"pt";s:9:"portugais";s:2:"pt";s:10:"portughês";s:2:"pt";s:10:"portugeesk";s:2:"pt";s:14:"portaingéilis";s:2:"pt";s:11:"portagailis";s:2:"pt";s:13:"portugiisisch";s:2:"pt";s:7:"pukikī";s:2:"pt";s:9:"portugál";s:2:"pt";s:9:"portugese";s:2:"pt";s:8:"portugis";s:2:"pt";s:6:"potoki";s:2:"pt";s:12:"portúgalska";s:2:"pt";s:10:"portoghese";s:2:"pt";s:15:"portugalimiutut";s:2:"pt";s:13:"pochtojesesch";s:2:"pt";s:11:"portyngalek";s:2:"pt";s:12:"portugisesch";s:2:"pt";s:10:"portugalų";s:2:"pt";s:11:"portugāļu";s:2:"pt";s:9:"portiogey";s:2:"pt";s:9:"portugiż";s:2:"pt";s:11:"portugeesch";s:2:"pt";s:14:"portugues simi";s:2:"pt";s:11:"portugheză";s:2:"pt";s:16:"portugálagiella";s:2:"pt";s:16:"portugëe, pûra";s:2:"pt";s:13:"portugalčina";s:2:"pt";s:15:"portugalščina";s:2:"pt";s:12:"portugalisht";s:2:"pt";s:12:"portugisiska";s:2:"pt";s:10:"portekizce";s:2:"pt";s:8:"putukezi";s:2:"pt";s:11:"portugalcha";s:2:"pt";s:14:"portugänapük";s:2:"pt";s:20:"português do brasil";s:5:"pt-br";s:21:"portugués del brasil";s:5:"pt-br";s:17:"portugaleg brazil";s:5:"pt-br";s:21:"portuguès del brasil";s:5:"pt-br";s:17:"portiwgeeg brasil";s:5:"pt-br";s:20:"portugués de brasil";s:5:"pt-br";s:20:"portugais brésilien";s:5:"pt-br";s:20:"portughês brasilian";s:5:"pt-br";s:27:"portaingéilis na brasaíle";s:5:"pt-br";s:24:"portagailis bhraisileach";s:5:"pt-br";s:21:"portugués brasileiro";s:5:"pt-br";s:16:"pukikī palakila";s:5:"pt-br";s:15:"portugis brasil";s:5:"pt-br";s:21:"portoghese brasiliano";s:5:"pt-br";s:18:"portyngalek brasil";s:5:"pt-br";s:15:"portugis brazil";s:5:"pt-br";s:19:"portugais brasilian";s:5:"pt-br";s:23:"portugheză braziliană";s:5:"pt-br";s:26:"portugalčina (brazílska)";s:5:"pt-br";s:24:"portugalishte braziliane";s:5:"pt-br";s:14:"portokugusseee";s:5:"pt-br";s:15:"레토로만어";s:2:"rm";s:16:"јакутски";s:3:"sah";s:11:"põhjasaami";s:2:"se";s:12:"pohjoissaame";s:2:"se";s:27:"တောင်ဆာမိ";s:2:"se";s:33:"တာချယ်လ်ဟစ်";s:3:"shi";s:26:"pódpołdnjowa samišćina";s:3:"sma";s:13:"pietų samių";s:3:"sma";s:26:"јужнолапонски";s:3:"sma";s:46:"တောင်ပိုင်း ဆာမိ";s:3:"sma";s:19:"јужни сами";s:3:"sma";s:35:"pódpołdnjowa sotšćina (sesotho)";s:2:"st";s:13:"pietų sesuto";s:2:"st";s:18:"တမီးလ်";s:2:"ta";s:18:"တီလီဂု";s:2:"te";s:21:"တာဂွီခ်";s:2:"tg";s:27:"တီဂ်ရင်ရာ";s:2:"ti";s:18:"တခ္မင်";s:2:"tk";s:18:"တွန်ဂါ";s:2:"to";s:15:"တာကစ်";s:2:"tr";s:9:"တတာ";s:2:"tt";s:8:"polapola";s:2:"ty";s:24:"pléimeannais iartharach";s:3:"vls";s:21:"pagrindinė frankonų";s:3:"vmf";s:10:"јидиш";s:2:"yi";s:16:"јорупски";s:2:"yo";s:12:"јоруба";s:2:"yo";s:6:"pākē";s:2:"zh";s:15:"တရုတ်";s:2:"zh";s:26:"pākē hoʻomaʻalahi ʻia";s:7:"zh-hans";s:27:"poenostavljena kitajščina";s:7:"zh-hans";s:17:"perinteinen kiina";s:7:"zh-hant";s:14:"pākē kuʻuna";s:7:"zh-hant";s:4:"pare";s:3:"asa";s:21:"တိုင်တာ";s:3:"dav";s:17:"јола-фоњи";s:3:"dyo";s:13:"philippiensch";s:3:"fil";s:14:"pluraj lingvoj";s:3:"mul";s:9:"pluriling";s:3:"mul";s:6:"నమ";s:3:"naq";s:21:"pódpołnocne ndebele";s:2:"nd";s:13:"põhjandebele";s:2:"nd";s:15:"pohjois-ndebele";s:2:"nd";s:33:"တောင်ဒီဘီလီ";s:2:"nd";s:13:"pléimeannais";s:5:"nl-be";s:12:"న్కో";s:3:"nqo";s:14:"pietų ndebele";s:2:"nr";s:25:"јужен ндебеле";s:2:"nr";s:18:"న్యుర్";s:3:"nus";s:30:"న్యాన్కోలె";s:3:"nyn";s:9:"phoeniceg";s:3:"phn";s:11:"phönikisch";s:3:"phn";s:10:"phoenician";s:3:"phn";s:10:"phénicien";s:3:"phn";s:11:"phönikesch";s:3:"phn";s:11:"phönieksch";s:3:"phn";s:15:"တီဆို";s:3:"teo";s:24:"တာဆာဝါခ်";s:3:"twq";s:21:"pelekāne nū hōlani";s:5:"en-au";s:20:"pelekānia ʻamelika";s:5:"en-us";s:14:"palani kanakā";s:5:"fr-ca";s:14:"prancis kanada";s:5:"fr-ca";s:15:"perancis kanada";s:5:"fr-ca";s:13:"prancis swiss";s:5:"fr-ch";s:20:"perancis switzerland";s:5:"fr-ch";s:25:"portuqaliya portuqalcası";s:5:"pt-pt";s:17:"portugaleg europa";s:5:"pt-pt";s:22:"portuguès de portugal";s:5:"pt-pt";s:23:"portugalština (evropa)";s:5:"pt-pt";s:16:"portiwgeeg ewrop";s:5:"pt-pt";s:22:"portugués de portugal";s:5:"pt-pt";s:19:"portugali (euroopa)";s:5:"pt-pt";s:18:"portugesa (europa)";s:5:"pt-pt";s:19:"portugalinportugali";s:5:"pt-pt";s:20:"portugais d’europe";s:5:"pt-pt";s:17:"portughês iberic";s:5:"pt-pt";s:24:"portaingéilis ibéarach";s:5:"pt-pt";s:20:"portagailis eòrpach";s:5:"pt-pt";s:18:"portugués europeo";s:5:"pt-pt";s:14:"portugis eropa";s:5:"pt-pt";s:18:"portoghese europeo";s:5:"pt-pt";s:28:"pochtojesesch uß pochtojall";s:5:"pt-pt";s:15:"portugis eropah";s:5:"pt-pt";s:18:"português europeu";s:5:"pt-pt";s:17:"portugais iberian";s:5:"pt-pt";s:22:"portugheză europeană";s:5:"pt-pt";s:25:"portugalčina (európska)";s:5:"pt-pt";s:23:"portugalishte evropiane";s:5:"pt-pt";s:15:"pietų altajaus";s:3:"alt";s:26:"јужноалтајски";s:3:"alt";s:20:"południowoałtajski";s:3:"alt";s:14:"pidgin chinook";s:3:"chn";s:14:"patuà chinook";s:3:"chn";s:14:"pangwe-sprache";s:3:"fan";s:16:"pangwe-schpraach";s:3:"fan";s:14:"pangwe-sprooch";s:3:"fan";s:6:"pangwe";s:3:"fan";s:24:"prancis abad pertengahan";s:3:"frm";s:12:"prancis kuno";s:3:"fro";s:16:"peirsis iùdhach";s:3:"jpr";s:18:"panjabi occidental";s:3:"lah";s:23:"puinseáibis iartharach";s:3:"lah";s:18:"నియాస్";s:3:"nia";s:12:"నోగై";s:3:"nog";s:24:"న్యంవేజి";s:3:"nym";s:15:"నిఓరో";s:3:"nyo";s:12:"paxlavi dili";s:3:"pal";s:7:"pahlavi";s:3:"pal";s:12:"pahlavština";s:3:"pal";s:7:"pahlafi";s:3:"pal";s:7:"pahlevi";s:3:"pal";s:7:"palaví";s:3:"pal";s:7:"pehlevi";s:3:"pal";s:8:"paħlavi";s:3:"pal";s:7:"pálavi";s:3:"pal";s:8:"pahlaví";s:3:"pal";s:12:"pehlevi dili";s:3:"pal";s:8:"palauanu";s:3:"pau";s:9:"palayanca";s:3:"pau";s:5:"palau";s:3:"pau";s:10:"palauanski";s:3:"pau";s:7:"palauà";s:3:"pau";s:11:"palauština";s:3:"pau";s:9:"palauansk";s:3:"pau";s:8:"paluagbe";s:3:"pau";s:7:"palauan";s:3:"pau";s:8:"palauano";s:3:"pau";s:10:"palauaansk";s:3:"pau";s:9:"palabhais";s:3:"pau";s:6:"palaui";s:3:"pau";s:8:"paláska";s:3:"pau";s:10:"palaviešu";s:3:"pau";s:8:"palawjan";s:3:"pau";s:8:"palauisk";s:3:"pau";s:8:"palausch";s:3:"pau";s:6:"palaus";s:3:"pau";s:9:"palauană";s:3:"pau";s:10:"palaučina";s:3:"pau";s:14:"palavanščina";s:3:"pau";s:10:"palau dili";s:3:"pau";s:13:"persa antiguu";s:3:"peo";s:11:"persa antic";s:3:"peo";s:13:"persa antiguo";s:3:"peo";s:13:"persan ancien";s:3:"peo";s:11:"persia kuno";s:3:"peo";s:15:"persiano antico";s:3:"peo";s:13:"persjan antik";s:3:"peo";s:13:"persa arcaico";s:3:"peo";s:12:"persian vegl";s:3:"peo";s:14:"persană veche";s:3:"peo";s:10:"pohnpeianu";s:3:"pon";s:13:"ponpeyan dili";s:3:"pon";s:7:"pohnpei";s:3:"pon";s:9:"ponpejski";s:3:"pon";s:8:"ponapeà";s:3:"pon";s:13:"pohnpeiština";s:3:"pon";s:11:"pohnpeianeg";s:3:"pon";s:6:"ponape";s:3:"pon";s:12:"ponapeanisch";s:3:"pon";s:10:"ponpeiagbe";s:3:"pon";s:9:"pohnpeian";s:3:"pon";s:10:"pohnpeiano";s:3:"pon";s:7:"poonpei";s:3:"pon";s:12:"pohnpeiaansk";s:3:"pon";s:8:"pohnpeia";s:3:"pon";s:9:"ponpeiska";s:3:"pon";s:12:"ponapeanesch";s:3:"pon";s:8:"ponapės";s:3:"pon";s:10:"ponapiešu";s:3:"pon";s:8:"ponpejan";s:3:"pon";s:8:"ponapisk";s:3:"pon";s:12:"ponapeaansch";s:3:"pon";s:11:"pohnpeiaans";s:3:"pon";s:8:"ponapean";s:3:"pon";s:11:"pohnpeiană";s:3:"pon";s:12:"pohnpeičina";s:3:"pon";s:13:"ponpejščina";s:3:"pon";s:17:"provenzal antiguu";s:3:"pro";s:16:"provençal antic";s:3:"pro";s:16:"provensálština";s:3:"pro";s:17:"provenzal antiguo";s:3:"pro";s:17:"provençal ancien";s:3:"pro";s:14:"provencal lama";s:3:"pro";s:17:"provenzale antico";s:3:"pro";s:16:"provenzal, antik";s:3:"pro";s:19:"provençal, arcaico";s:3:"pro";s:18:"provençal arcaico";s:3:"pro";s:14:"provenzal vegl";s:3:"pro";s:17:"provensală veche";s:3:"pro";s:37:"న్యాసా టోన్గా";s:3:"tog";s:6:"јао";s:3:"yao";s:12:"јапски";s:3:"yap";s:14:"јенгбен";s:3:"yav";s:10:"јемба";s:3:"ybb";s:12:"papuaspraken";s:3:"paa";s:15:"papuanski jezik";s:3:"paa";s:33:"philippinen-austroneesche spraken";s:3:"phi";s:7:"prakrit";s:3:"pra";s:16:"prakritski jezik";s:3:"pra";}i:491;a:25:{s:41:"דרום אַזערביידזשאַניש";s:3:"azb";s:8:"דנית";s:2:"da";s:10:"דעניש";s:2:"da";s:10:"דײַטש";s:2:"de";s:10:"דיבהי";s:2:"dv";s:12:"דזונקה";s:2:"dz";s:24:"דרום־פֿריזיש";s:3:"frr";s:18:"ニウーエイ語";s:3:"niu";s:18:"ニャンジャ語";s:2:"ny";s:10:"דואלה";s:3:"dua";s:19:"דרום נדבלה";s:2:"nr";s:18:"ニャンコレ語";s:3:"nyn";s:10:"דקוטה";s:3:"dak";s:12:"דרגווה";s:3:"dar";s:12:"דלאוור";s:3:"del";s:12:"דוגריב";s:3:"dgr";s:10:"דינקה";s:3:"din";s:10:"דוגרי";s:3:"doi";s:10:"דיולה";s:3:"dyu";s:12:"דזאנגה";s:3:"dzg";s:12:"ニアス語";s:3:"nia";s:21:"ニャムウェジ語";s:3:"nym";s:12:"ニョロ語";s:3:"nyo";s:12:"ニャン語";s:3:"ken";s:24:"ニェエンガトゥ語";s:3:"yrl";}i:73;a:167:{s:18:"башҡортса";s:2:"ba";s:20:"башкірская";s:2:"ba";s:18:"башкирски";s:2:"ba";s:23:"башқұрт тілі";s:2:"ba";s:16:"башкырча";s:2:"ba";s:12:"башкир";s:2:"ba";s:16:"башкираг";s:2:"ba";s:20:"башкирский";s:2:"ba";s:20:"башкирська";s:2:"ba";s:18:"баварская";s:3:"bar";s:16:"баварски";s:3:"bar";s:20:"беларуская";s:2:"be";s:18:"беларуски";s:2:"be";s:23:"беларус тілі";s:2:"be";s:18:"беларусча";s:2:"be";s:18:"белоруски";s:2:"be";s:16:"беларусь";s:2:"be";s:22:"белорусский";s:2:"be";s:20:"білоруська";s:2:"be";s:48:"беларуская (тарашкевіца)‎";s:8:"be-x-old";s:45:"беларуская (тарашкевіца)";s:8:"be-x-old";s:18:"български";s:2:"bg";s:20:"балгарская";s:2:"bg";s:20:"баўгарская";s:2:"bg";s:21:"болгар тілі";s:2:"bg";s:16:"болгарча";s:2:"bg";s:16:"бугарски";s:2:"bg";s:12:"болгар";s:2:"bg";s:18:"болгайраг";s:2:"bg";s:20:"болгарский";s:2:"bg";s:20:"болгарська";s:2:"bg";s:14:"божпури";s:3:"bho";s:14:"боџпури";s:3:"bho";s:18:"бходжпури";s:3:"bho";s:18:"бходжпурі";s:3:"bho";s:14:"бислама";s:2:"bi";s:14:"біслама";s:2:"bi";s:18:"банџарски";s:3:"bjn";s:14:"бамбара";s:2:"bm";s:18:"бамбарада";s:2:"bm";s:24:"бамбарийский";s:2:"bm";s:22:"бенгальская";s:2:"bn";s:22:"бэнгальская";s:2:"bn";s:18:"бенгалски";s:2:"bn";s:21:"бенгал тілі";s:2:"bn";s:22:"бангладешче";s:2:"bn";s:12:"бенгал";s:2:"bn";s:22:"бенгальский";s:2:"bn";s:22:"бенгальська";s:2:"bn";s:20:"бишнуприја";s:3:"bpy";s:22:"бахтијарски";s:3:"bqi";s:20:"брэтонская";s:2:"br";s:18:"бретонски";s:2:"br";s:21:"бретон тілі";s:2:"br";s:16:"бретончо";s:2:"br";s:12:"бретон";s:2:"br";s:20:"бретонский";s:2:"br";s:20:"бретонська";s:2:"br";s:18:"брахујски";s:3:"brh";s:20:"баснійская";s:2:"bs";s:22:"басьнійская";s:2:"bs";s:18:"босненски";s:2:"bs";s:21:"босния тілі";s:2:"bs";s:16:"боснийче";s:2:"bs";s:16:"босански";s:2:"bs";s:10:"босни";s:2:"bs";s:14:"босниаг";s:2:"bs";s:20:"боснийский";s:2:"bs";s:20:"боснійська";s:2:"bs";s:16:"бугински";s:3:"bug";s:14:"бугиски";s:3:"bug";s:18:"бугийский";s:3:"bug";s:18:"бугійська";s:3:"bug";s:12:"буряад";s:3:"bxr";s:16:"бурацкая";s:3:"bua";s:20:"бердзейнаг";s:2:"el";s:41:"брытанская ангельская";s:5:"en-gb";s:37:"британски английски";s:5:"en-gb";s:46:"британиялық ағылшын тілі";s:5:"en-gb";s:35:"британски англиски";s:5:"en-gb";s:29:"британийн англи";s:5:"en-gb";s:35:"бритайнаг англисаг";s:5:"en-gb";s:41:"британский английский";s:5:"en-gb";s:16:"баскская";s:2:"eu";s:20:"баскаўская";s:2:"eu";s:10:"баски";s:2:"eu";s:8:"баск";s:2:"eu";s:12:"баскча";s:2:"eu";s:16:"баскиски";s:2:"eu";s:12:"баскаг";s:2:"eu";s:16:"баскский";s:2:"eu";s:18:"баскијски";s:2:"eu";s:16:"баскська";s:2:"eu";s:19:"батыс фриз";s:2:"fy";s:23:"батыш фризче";s:2:"fy";s:25:"баруун фризын";s:2:"fy";s:18:"бӕлхъӕрон";s:3:"krc";s:18:"бирмански";s:2:"my";s:12:"бирман";s:2:"my";s:14:"бурмача";s:2:"my";s:18:"бурмански";s:2:"my";s:8:"бирм";s:2:"my";s:20:"бирманский";s:2:"my";s:20:"бірманська";s:2:"my";s:31:"букмол (Норвегія)";s:2:"nb";s:10:"балба";s:2:"ne";s:49:"бразыльская партугальская";s:5:"pt-br";s:48:"бразилиялық португал тілі";s:5:"pt-br";s:41:"бразилиаг португалиаг";s:5:"pt-br";s:49:"бразильский португальский";s:5:"pt-br";s:48:"борбордук Атлас тамазитче";s:3:"tzm";s:10:"бемба";s:3:"bem";s:14:"бембача";s:3:"bem";s:8:"бена";s:3:"bez";s:12:"бенача";s:3:"bez";s:8:"бодо";s:3:"brx";s:17:"бодо тілі";s:3:"brx";s:12:"бододо";s:3:"brx";s:10:"бафия";s:3:"ksf";s:10:"бафиа";s:3:"ksf";s:14:"бафияча";s:3:"ksf";s:12:"бафија";s:3:"ksf";s:10:"бафіа";s:3:"ksf";s:23:"белгісіз тіл";s:3:"und";s:27:"белгисиз тилде";s:3:"und";s:52:"без лингвистично съдържание";s:3:"zxx";s:48:"без лингвистичка содржина";s:3:"zxx";s:46:"без языкового содержания";s:3:"zxx";s:50:"без лингвистичког садржаја";s:3:"zxx";s:16:"биленски";s:3:"byn";s:21:"билин (блин)";s:3:"byn";s:8:"блін";s:3:"byn";s:12:"балучи";s:3:"bal";s:18:"белуџиски";s:3:"bal";s:20:"белуджский";s:3:"bal";s:12:"балучі";s:3:"bal";s:20:"балинейски";s:3:"ban";s:14:"балиски";s:3:"ban";s:18:"балийский";s:3:"ban";s:18:"балійська";s:3:"ban";s:8:"баса";s:3:"bas";s:16:"бамунски";s:3:"bax";s:10:"бамум";s:3:"bax";s:6:"бея";s:3:"bej";s:8:"беџа";s:3:"bej";s:10:"беджа";s:3:"bej";s:16:"биколски";s:3:"bik";s:20:"бикольский";s:3:"bik";s:20:"бікольська";s:3:"bik";s:8:"бини";s:3:"bin";s:8:"біні";s:3:"bin";s:10:"брадж";s:3:"bra";s:8:"брај";s:3:"bra";s:10:"брауи";s:3:"bra";s:16:"бурятски";s:3:"bua";s:18:"бурјатски";s:3:"bua";s:14:"бурятаг";s:3:"bua";s:18:"бурятский";s:3:"bua";s:18:"бурятська";s:3:"bua";s:23:"блис символи";s:3:"zbl";s:22:"блиссимболи";s:3:"zbl";s:26:"блиссимволика";s:3:"zbl";s:21:"блісса мова";s:3:"zbl";s:16:"бетавски";s:3:"bew";s:10:"бафут";s:3:"bfd";s:12:"бадага";s:3:"bfq";s:8:"булу";s:3:"bum";}i:707;a:19:{s:15:"ባስኪርኛ";s:2:"ba";s:15:"ባምባርኛ";s:2:"bm";s:43:"ઓસ્ટ્રિઅન જર્મન";s:5:"de-at";s:12:"ባስክኛ";s:2:"eu";s:16:"ګلېشيايي";s:2:"gl";s:12:"ګوراني";s:2:"gn";s:12:"ګجراتي";s:2:"gu";s:12:"莫克沙文";s:3:"mdf";s:21:"ઓક્સિટન";s:2:"oc";s:15:"ઓરોમો";s:2:"om";s:24:"ઓસ્સેટિક";s:2:"os";s:25:"ባህላዊ ቻይንኛ";s:7:"zh-hant";s:9:"ባፊያ";s:3:"ksf";s:12:"莫霍克文";s:3:"moh";s:58:"ઓસ્ટ્રેલિયન અંગ્રેજી";s:5:"en-au";s:9:"莫西文";s:3:"mos";s:24:"ઓઝિંબ્વા";s:2:"oj";s:12:"ઓસેજ";s:3:"osa";s:40:"ઓટોમાન તુર્કિશ";s:3:"ota";}i:924;a:75:{s:14:"Μπασκίρ";s:2:"ba";s:18:"Μποζπούρι";s:3:"bho";s:16:"Μπισλάμα";s:2:"bi";s:16:"Μπαμπάρα";s:2:"bm";s:18:"Μπενγκάλι";s:2:"bn";s:16:"Μπουγκίζ";s:3:"bug";s:33:"པར་ཤི་ཡཱན་ཁ";s:2:"fa";s:8:"Μανξ";s:2:"gv";s:16:"Μαϊτχίλι";s:3:"mai";s:10:"Μόκσα";s:3:"mdf";s:16:"Μαλαγάσι";s:2:"mg";s:12:"Μάρσαλ";s:2:"mh";s:10:"Μάορι";s:2:"mi";s:26:"Μινανγκαμπάου";s:3:"min";s:20:"Μαλαγιαλάμ";s:2:"ml";s:18:"Μογγολικά";s:2:"mn";s:12:"Μαράθι";s:2:"mr";s:10:"Μαλάι";s:2:"ms";s:18:"Μαλτεζικά";s:2:"mt";s:22:"Μιραντεζικά";s:3:"mwl";s:30:"པཱན་ཇ་བི་ཁ";s:2:"pa";s:12:"པ་ལི";s:2:"pi";s:30:"པོ་ལན་སྐད།";s:2:"pl";s:24:"པོ་ལིཤ་ཁ";s:2:"pl";s:24:"པཱཤ་ཏོ་ཁ";s:2:"ps";s:36:"པོར་ཅུ་གིས་ཁ";s:2:"pt";s:67:"པ་ཞའི་མི། ཕི་ཐོ་ཡའི་མི།";s:5:"pt-br";s:12:"Μπέμπα";s:3:"bem";s:10:"Μπένα";s:3:"bez";s:12:"Μπόντο";s:3:"brx";s:12:"Μάχαμε";s:3:"jmc";s:14:"Μακόντε";s:3:"kde";s:12:"Μπάφια";s:3:"ksf";s:10:"Μασάι";s:3:"mas";s:10:"Μερού";s:3:"mer";s:16:"Μορίσιεν";s:3:"mfe";s:23:"Μακούβα-Μέτο";s:3:"mgh";s:8:"Μετά";s:3:"mgo";s:10:"Μοχόκ";s:3:"moh";s:18:"Μουντάνγκ";s:3:"mua";s:18:"Μολδαβικά";s:5:"ro-md";s:10:"Μπλιν";s:3:"byn";s:18:"Μπαλούτσι";s:3:"bal";s:16:"Μπαλινίζ";s:3:"ban";s:10:"Μπάσα";s:3:"bas";s:14:"Μπαμούν";s:3:"bax";s:10:"Μπέζα";s:3:"bej";s:12:"Μπικόλ";s:3:"bik";s:10:"Μπίνι";s:3:"bin";s:12:"Μπρατζ";s:3:"bra";s:16:"Μπουριάτ";s:3:"bua";s:8:"Μάρι";s:3:"chm";s:27:"Μέσα Ολλανδικά";s:3:"dum";s:23:"Μέσα Αγγλικά";s:3:"enm";s:23:"Μέσα Γαλλικά";s:3:"frm";s:34:"Μέσα Άνω Γερμανικά";s:3:"gmh";s:12:"Μόνγκο";s:3:"lol";s:18:"Μαντουρίζ";s:3:"mad";s:14:"Μαγκάχι";s:3:"mag";s:14:"Μακαζάρ";s:3:"mak";s:18:"Μαντίνγκο";s:3:"man";s:10:"Μάμπα";s:3:"mde";s:12:"Μανδάρ";s:3:"mdr";s:10:"Μέντε";s:3:"men";s:27:"Μέσα Ιρλανδικά";s:3:"mga";s:12:"Μικμάκ";s:3:"mic";s:14:"Μαντσού";s:3:"mnc";s:18:"Μανιπούρι";s:3:"mni";s:8:"Μόσι";s:3:"mos";s:18:"Μαργουάρι";s:3:"mwr";s:14:"Μπαφούτ";s:3:"bfd";s:14:"Μπουλού";s:3:"bum";s:18:"Μεντούμπα";s:3:"byv";s:8:"Μάφα";s:3:"maf";s:10:"Μιένε";s:3:"mye";}i:576;a:116:{s:14:"باشغیری";s:2:"ba";s:14:"بَشکیٖر";s:2:"ba";s:18:"باشقىرتچە";s:2:"ba";s:12:"باشکیر";s:2:"ba";s:12:"بایرنی";s:3:"bar";s:23:"بلوچی مکرانی";s:3:"bcc";s:21:"بلوچی جنوبی";s:3:"bcc";s:14:"بلوروسی";s:2:"be";s:22:"بیلَروٗشیَن";s:2:"be";s:16:"بېلاروسي";s:2:"be";s:18:"بېلارۇسچە";s:2:"be";s:16:"بیلاروسی";s:2:"be";s:44:"بلاروسی (دستورخط کلاسیک)";s:9:"be-tarask";s:12:"بلغاری";s:2:"bg";s:8:"بینا";s:3:"bez";s:12:"بلغاري";s:2:"bg";s:16:"بۇلغارچە";s:2:"bg";s:14:"بوجپوری";s:3:"bho";s:16:"بوجپوٗری";s:3:"bho";s:18:"بوجپۇرىچە";s:3:"bho";s:14:"بیسلاما";s:2:"bi";s:14:"بِسلاما";s:2:"bi";s:18:"بىسلاماچە";s:2:"bi";s:14:"بانجاری";s:3:"bjn";s:18:"بامبارایی";s:2:"bm";s:14:"بَمبارا";s:2:"bm";s:18:"بامباراچە";s:2:"bm";s:12:"بمبارا";s:2:"bm";s:12:"بنگالی";s:2:"bn";s:16:"بَنٛگٲلۍ";s:2:"bn";s:12:"بنګالي";s:2:"bn";s:16:"بېنگالچە";s:2:"bn";s:14:"بختياري";s:3:"bqi";s:14:"بختیاری";s:3:"bqi";s:18:"برتانیایی";s:2:"br";s:12:"بریٹَن";s:2:"br";s:12:"برېتون";s:2:"br";s:18:"بىرېتونچە";s:2:"br";s:10:"بریٹن";s:2:"br";s:14:"براهوئی";s:3:"brh";s:16:"بوسنیایی";s:2:"bs";s:16:"بوسنِیَن";s:2:"bs";s:10:"بوسني";s:2:"bs";s:18:"بوسنىيەچە";s:2:"bs";s:10:"بوسنی";s:2:"bs";s:14:"بوگیایی";s:3:"bug";s:14:"بَگنیٖز";s:3:"bug";s:12:"بۇگىچە";s:3:"bug";s:29:"بوٚنِم ساربِیَن";s:3:"dsb";s:14:"بۇتانچە";s:2:"dz";s:37:"بَرطانوی اَنٛگریٖزۍ";s:5:"en-gb";s:29:"برطانوی انگریزی";s:5:"en-gb";s:10:"باسکی";s:2:"eu";s:8:"باسک";s:2:"eu";s:10:"باسکي";s:2:"eu";s:14:"باسكىچە";s:2:"eu";s:21:"بین لسانیات";s:2:"ia";s:15:"برمه‌ای";s:2:"my";s:12:"بٔمیٖز";s:2:"my";s:14:"بىرماچە";s:2:"my";s:8:"برمی";s:2:"my";s:25:"بوکسمال نروژی";s:2:"nb";s:25:"بوٚنِم جٔرمَن";s:3:"nds";s:33:"برازیٖلی پُتَگیٖز";s:5:"pt-br";s:41:"بىرازىلىيە پورتۇگالچە";s:5:"pt-br";s:29:"برازیلی پرتگالی";s:5:"pt-br";s:12:"بمبایی";s:3:"bem";s:12:"بیٚمبا";s:3:"bem";s:14:"بېمباچە";s:3:"bem";s:10:"بیمبا";s:3:"bem";s:8:"بينا";s:3:"bez";s:10:"بنایی";s:3:"bez";s:12:"بېناچە";s:3:"bez";s:12:"بودویی";s:3:"brx";s:12:"بودوچە";s:3:"brx";s:8:"بوڈو";s:3:"brx";s:10:"بافيا";s:3:"ksf";s:14:"بافیایی";s:3:"ksf";s:16:"بافىياچە";s:3:"ksf";s:12:"ਐਂਕੋ";s:3:"nqo";s:28:"بدون محتوى لغوي";s:3:"zxx";s:32:"بدون محتوای زبانی";s:3:"zxx";s:8:"بلین";s:3:"byn";s:10:"بٕلِن";s:3:"byn";s:14:"بىلىنچە";s:3:"byn";s:10:"بلوچی";s:3:"bal";s:14:"بَلوٗچی";s:3:"bal";s:10:"بلوڅي";s:3:"bal";s:16:"بېلۇجىچە";s:3:"bal";s:14:"بالیایی";s:3:"ban";s:16:"بالِنیٖز";s:3:"ban";s:12:"بالىچە";s:3:"ban";s:12:"باسایی";s:3:"bas";s:8:"باسا";s:3:"bas";s:12:"باساچە";s:3:"bas";s:8:"بامن";s:3:"bax";s:10:"بمونی";s:3:"bax";s:14:"بامۇنچە";s:3:"bax";s:10:"بجایی";s:3:"bej";s:8:"بیجا";s:3:"bej";s:12:"بېجاچە";s:3:"bej";s:12:"بیکولی";s:3:"bik";s:10:"بِکول";s:3:"bik";s:14:"بىكولچە";s:3:"bik";s:8:"بینی";s:3:"bin";s:8:"بِنی";s:3:"bin";s:12:"بىنىچە";s:3:"bin";s:8:"براج";s:3:"bra";s:8:"برٛج";s:3:"bra";s:14:"بىراجچە";s:3:"bra";s:14:"بوریاتی";s:3:"bua";s:14:"بُرِیَت";s:3:"bua";s:18:"بۇرىياتچە";s:3:"bua";s:29:"بىلىس بەلگىلىرى";s:3:"zbl";s:14:"بافۇتچە";s:3:"bfd";s:12:"بۇلۇچە";s:3:"bum";}i:732;a:45:{s:18:"બશ્કીર";s:2:"ba";s:30:"બેલારુશિયન";s:2:"be";s:27:"બલ્ગેરિયન";s:2:"bg";s:24:"બિસ્લામા";s:2:"bi";s:24:"બામ્બારા";s:2:"bm";s:18:"બંગાળી";s:2:"bn";s:36:"બિષ્નુપ્રિયા";s:3:"bpy";s:21:"બ્રેટોન";s:2:"br";s:21:"બ્રાહુઈ";s:3:"brh";s:24:"બોસ્નિયન";s:2:"bs";s:18:"બગિનીસ";s:3:"bug";s:12:"ቼሮኬኛ";s:3:"chr";s:9:"ቼክኛ";s:2:"cs";s:18:"ດີວີຮີ";s:2:"dv";s:21:"ດີຊອງຄາ";s:2:"dz";s:46:"બ્રિટિશ અંગ્રેજી";s:5:"en-gb";s:15:"બાસ્ક";s:2:"eu";s:18:"બર્મીઝ";s:2:"my";s:9:"ດັຊ";s:2:"nl";s:58:"બ્રાઝિલીયન પોર્ટુગીઝ";s:5:"pt-br";s:12:"올로프어";s:2:"wo";s:18:"બેમ્બા";s:3:"bem";s:12:"બેના";s:3:"bez";s:12:"બોડો";s:3:"brx";s:15:"ດົວລາ";s:3:"dua";s:15:"બફિયા";s:3:"ksf";s:31:"બહુવિધ ભાષા";s:3:"mul";s:15:"બ્લિન";s:3:"byn";s:15:"બલૂચી";s:3:"bal";s:21:"બાલિનીસ";s:3:"ban";s:9:"બસા";s:3:"bas";s:12:"બામન";s:3:"bax";s:12:"બેજા";s:3:"bej";s:15:"બિકોલ";s:3:"bik";s:12:"બિની";s:3:"bin";s:21:"બુરિયાત";s:3:"bua";s:18:"ດາໂກຕາ";s:3:"dak";s:15:"ດາກວາ";s:3:"dar";s:15:"ດິນກາ";s:3:"din";s:15:"ດອກຣີ";s:3:"doi";s:18:"ດັກກາງ";s:3:"dum";s:12:"ດູລາ";s:3:"dyu";s:18:"ດາຊາກາ";s:3:"dzg";s:12:"બાયા";s:3:"gba";s:39:"બ્લિસિમ્બોલ્સ";s:3:"zbl";}i:489;a:58:{s:14:"בשקירית";s:2:"ba";s:14:"בווארית";s:3:"bar";s:14:"בײַעריש";s:3:"bar";s:16:"בלארוסית";s:2:"be";s:20:"בעלאַרוסיש";s:2:"be";s:14:"בולגרית";s:2:"bg";s:18:"בולגאַריש";s:2:"bg";s:16:"בוג׳פורי";s:3:"bho";s:12:"ביסלמה";s:2:"bi";s:12:"במבארה";s:2:"bm";s:12:"בנגלית";s:2:"bn";s:18:"בענגאַליש";s:2:"bn";s:14:"ברטונית";s:2:"br";s:16:"ברעטאניש";s:2:"br";s:12:"בוסנית";s:2:"bs";s:12:"באסניש";s:2:"bs";s:16:"בוגינזית";s:3:"bug";s:9:"촉토어";s:3:"cho";s:12:"ドイツ語";s:2:"de";s:10:"בסקית";s:2:"eu";s:14:"באַסקיש";s:2:"eu";s:15:"হাউসা";s:2:"ha";s:33:"হাওয়াইয়ান";s:3:"haw";s:18:"হিব্রু";s:2:"he";s:18:"হিন্দি";s:2:"hi";s:39:"হিলিগ্যায়নোন";s:3:"hil";s:25:"হিরি মোতু";s:2:"ho";s:27:"হাইতিয়ান";s:2:"ht";s:30:"হাঙ্গেরীয়";s:2:"hu";s:18:"হেরেরো";s:2:"hz";s:14:"בורמזית";s:2:"my";s:18:"בירמאַניש";s:2:"my";s:8:"במבה";s:3:"bem";s:6:"בנה";s:3:"bez";s:8:"בודו";s:3:"brx";s:15:"ドゥアラ語";s:3:"dua";s:21:"হিট্টিট";s:3:"hit";s:10:"באפיה";s:3:"ksf";s:8:"בלין";s:3:"byn";s:14:"באלוצ׳י";s:3:"bal";s:14:"בלינזית";s:3:"ban";s:20:"באַלינעזיש";s:3:"ban";s:8:"בסאא";s:3:"bas";s:8:"באקס";s:3:"bax";s:8:"בז׳ה";s:3:"bej";s:10:"ביקול";s:3:"bik";s:8:"ביני";s:3:"bin";s:10:"בראג׳";s:3:"bra";s:12:"בוריאט";s:3:"bua";s:15:"ドグリブ語";s:3:"dgr";s:18:"ドーグリー語";s:3:"doi";s:15:"হাইডা";s:3:"hai";s:18:"হ্‌মোঙ";s:3:"hmn";s:12:"হুপা";s:3:"hup";s:12:"復活島文";s:3:"rap";s:20:"בליסימבולס";s:3:"zbl";s:10:"באפוט";s:3:"bfd";s:8:"בולו";s:3:"bum";}i:348;a:45:{s:18:"बशख़िर";s:2:"ba";s:18:"बष्किर";s:2:"ba";s:21:"बाश्किर";s:2:"ba";s:24:"बेलारूसी";s:2:"be";s:30:"बेलारुशियन";s:2:"be";s:33:"बुल्गारियाई";s:2:"bg";s:27:"बल्गेरियन";s:2:"bg";s:36:"बुल्गेरियाली";s:2:"bg";s:24:"बिस्लामा";s:2:"bi";s:24:"बाम्बारा";s:2:"bm";s:18:"बंगाली";s:2:"bn";s:18:"ब्रेटन";s:2:"br";s:21:"ब्रेतॉन";s:2:"br";s:27:"बोस्नियाई";s:2:"bs";s:24:"बोस्नियन";s:2:"bs";s:30:"बोस्नियाली";s:2:"bs";s:18:"बगिनीस";s:3:"bug";s:49:"ब्रिटिश अंग्रेज़ी";s:5:"en-gb";s:43:"ब्रिटिश इंग्रजी";s:5:"en-gb";s:15:"बास्क";s:2:"eu";s:21:"बर्मीज़";s:2:"my";s:15:"बर्मी";s:2:"my";s:9:"네팔어";s:2:"ne";s:12:"네와르어";s:3:"new";s:15:"네덜란드어";s:2:"nl";s:55:"ब्राज़ीली पुर्तगाली";s:5:"pt-br";s:58:"ब्राझिलियन पोर्तुगीज";s:5:"pt-br";s:18:"बेम्बा";s:3:"bem";s:12:"बेना";s:3:"bez";s:12:"बोडो";s:3:"brx";s:12:"बफिआ";s:3:"ksf";s:18:"बाफिया";s:3:"ksf";s:15:"ब्लिन";s:3:"byn";s:15:"बलूची";s:3:"bal";s:15:"बलुची";s:3:"bal";s:21:"बालिनीस";s:3:"ban";s:9:"बसा";s:3:"bas";s:12:"बेजा";s:3:"bej";s:15:"बिकोल";s:3:"bik";s:12:"बिनी";s:3:"bin";s:12:"ब्रज";s:3:"bra";s:21:"बुरियात";s:3:"bua";s:12:"बाया";s:3:"gba";s:21:"네와르어 (고전)";s:3:"nwc";s:39:"ब्लिसिम्बॉल्स";s:3:"zbl";}i:378;a:41:{s:20:"բաշկիրերեն";s:2:"ba";s:24:"բելառուսերեն";s:2:"be";s:22:"բուլղարերեն";s:2:"bg";s:14:"բամբարա";s:2:"bm";s:20:"բենգալերեն";s:2:"bn";s:20:"բրետոներեն";s:2:"br";s:18:"բոսնիերեն";s:2:"bs";s:34:"ലോവർ സോർബിയൻ";s:3:"dsb";s:37:"բրիտանական անգլերեն";s:5:"en-gb";s:16:"բասկերեն";s:2:"eu";s:21:"ലോജ്ബാൻ";s:3:"jbo";s:21:"ലാറ്റിൻ";s:2:"la";s:18:"ലാഡിനോ";s:3:"lad";s:36:"ലക്‌സംബർഗിഷ്";s:2:"lb";s:24:"ലഹ്ഗിയാൻ";s:3:"lez";s:27:"ലിംബർഗിഷ്";s:2:"li";s:18:"ലിംഗാല";s:2:"ln";s:12:"ലാവോ";s:2:"lo";s:12:"ലൊസി";s:3:"loz";s:30:"ലിത്വാനിയൻ";s:2:"lt";s:30:"ലാറ്റ്വിയൻ";s:2:"lv";s:20:"բիրմայերեն";s:2:"my";s:19:"ലോ ജർമൻ";s:3:"nds";s:47:"բրազիլական պորտուգալերեն";s:5:"pt-br";s:10:"բեմբա";s:3:"bem";s:8:"բենա";s:3:"bez";s:8:"բոդո";s:3:"brx";s:10:"բաֆիա";s:3:"ksf";s:15:"ലാംഗി";s:3:"lag";s:18:"ലഗോത്ത";s:3:"lkt";s:28:"ലുബ-കറ്റംഗ";s:2:"lu";s:25:"ലൂബ-ലുലുവ";s:3:"lua";s:12:"ലുവോ";s:3:"luo";s:15:"ലുയിയ";s:3:"luy";s:22:"ലൂലീ സമി";s:3:"smj";s:77:"ലാറ്റിൻ അമേരിക്കൻ സ്‌പാനിഷ്";s:6:"es-419";s:18:"ലഹ്‌ൻഡ";s:3:"lah";s:9:"ലംബ";s:3:"lam";s:24:"ലൂയിസെനോ";s:3:"lui";s:12:"ലുൻഡ";s:3:"lun";s:33:"ലിംഗ്വിറ്റ്";s:3:"tli";}i:496;a:60:{s:18:"バシキール語";s:2:"ba";s:39:"バイエルン・オーストリア語";s:3:"bar";s:18:"バンジャル語";s:3:"bjn";s:15:"バンバラ語";s:2:"bm";s:12:"טיבטית";s:2:"bo";s:14:"טיבעטיש";s:2:"bo";s:27:"バフティヤーリー語";s:3:"bqi";s:24:"טטרית של קרים";s:3:"crh";s:12:"טשעכיש";s:2:"cs";s:12:"バスク語";s:2:"eu";s:18:"バニュマス語";s:7:"map-bms";s:14:"טצ׳להיט";s:3:"shi";s:12:"טמילית";s:2:"ta";s:12:"טאַמיל";s:2:"ta";s:10:"טלוגו";s:2:"te";s:8:"טטום";s:3:"tet";s:14:"טג׳יקית";s:2:"tg";s:18:"טיגרינאית";s:2:"ti";s:16:"טורקמנית";s:2:"tk";s:18:"טורקמעניש";s:2:"tk";s:10:"טגלוג";s:2:"tl";s:18:"טאַגאַלאג";s:2:"tl";s:14:"טוניסיה";s:2:"tn";s:10:"טונגן";s:2:"to";s:17:"טוק פיסין";s:3:"tpi";s:12:"טורקית";s:2:"tr";s:12:"טסונגה";s:2:"ts";s:10:"טטרית";s:2:"tt";s:16:"טאָטעריש";s:2:"tt";s:14:"טומבוקה";s:3:"tum";s:8:"טווי";s:2:"tw";s:12:"טהיטית";s:2:"ty";s:14:"טובינית";s:3:"tyv";s:37:"טמזייט של מרכז מרוקו";s:3:"tzm";s:10:"טאיטה";s:3:"dav";s:15:"バフィア語";s:3:"ksf";s:6:"טסו";s:3:"teo";s:12:"טסוואק";s:3:"twq";s:12:"טיגרית";s:3:"tig";s:10:"טיגרע";s:3:"tig";s:18:"バルーチー語";s:3:"bal";s:9:"バリ語";s:3:"ban";s:9:"バサ語";s:3:"bas";s:12:"バムン語";s:3:"bax";s:15:"司克司卡文";s:3:"bla";s:12:"司雷夫文";s:3:"den";s:9:"バヤ語";s:3:"gba";s:29:"טורקית עותומנית";s:3:"ota";s:10:"טימנה";s:3:"tem";s:8:"טרנו";s:3:"ter";s:6:"טיב";s:3:"tiv";s:12:"טוקלאו";s:3:"tkl";s:14:"טלינגיט";s:3:"tli";s:10:"טמאשק";s:3:"tmh";s:16:"טסימשיאן";s:3:"tsi";s:12:"טובאלו";s:3:"tvl";s:15:"バフット語";s:3:"bfd";s:12:"バダガ語";s:3:"bfq";s:8:"טיאפ";s:3:"kcg";s:10:"טרוקו";s:3:"trv";}i:305;a:37:{s:27:"ბაშკირული";s:2:"ba";s:30:"ბელორუსული";s:2:"be";s:27:"ბულგარული";s:2:"bg";s:21:"ბოჯპური";s:3:"bho";s:21:"ბამბარა";s:2:"bm";s:27:"ბენგალური";s:2:"bn";s:27:"ბრეტონული";s:2:"br";s:24:"ბოსნიური";s:2:"bs";s:24:"ბერძნული";s:2:"el";s:55:"ბრიტანული ინგლისური";s:5:"en-gb";s:21:"ბასკური";s:2:"eu";s:21:"ბირმული";s:2:"my";s:67:"ბრაზილიური პორტუგალიური";s:5:"pt-br";s:12:"特塔姆文";s:3:"tet";s:12:"特松加文";s:2:"ts";s:9:"特威文";s:2:"tw";s:9:"광둥어";s:3:"yue";s:15:"ბემბა";s:3:"bem";s:12:"ბენა";s:3:"bez";s:12:"ბოდო";s:3:"brx";s:15:"ბაფია";s:3:"ksf";s:9:"特索文";s:3:"teo";s:18:"ბილინი";s:3:"byn";s:18:"ბელუჯი";s:3:"bal";s:24:"ბალინური";s:3:"ban";s:12:"ბასა";s:3:"bas";s:18:"ბამუნი";s:3:"bax";s:12:"ბეჯა";s:3:"bej";s:15:"ბრაჯი";s:3:"bra";s:27:"ბურიატული";s:3:"bua";s:12:"特拉华文";s:3:"del";s:18:"ბოშური";s:3:"rom";s:12:"特列纳文";s:3:"ter";s:15:"特林吉特文";s:3:"tli";s:15:"特林基特文";s:3:"tli";s:42:"ბლისსიმბოლოები";s:3:"zbl";s:18:"特薩克尼恩文";s:3:"tsd";}i:36;a:17:{s:18:"បែស្កឺ";s:2:"ba";s:27:"បេឡារុស្ស";s:2:"be";s:30:"ប៊ុលហ្ការី";s:2:"bg";s:24:"បាម្បារា";s:2:"bm";s:30:"បង់ក្លាដែស";s:2:"bn";s:27:"ប្រីស្តុន";s:2:"br";s:18:"បូស្នី";s:2:"bs";s:18:"បាស្កេ";s:2:"eu";s:18:"បារាំង";s:2:"fr";s:24:"𐌲𐌿𐍄𐌹𐍃𐌺";s:3:"got";s:18:"ᎬᏩᎵᏲᏥᎢ";s:2:"it";s:9:"간다어";s:2:"lg";s:21:"បឹនជាពិ";s:2:"pa";s:9:"팔리어";s:2:"pi";s:18:"ប៉ូឡូញ";s:2:"pl";s:18:"បាស្តូ";s:2:"ps";s:12:"팔레비어";s:3:"pal";}i:244;a:28:{s:21:"ಬಶ್ಕಿರ್";s:2:"ba";s:30:"ಬೆಲರೂಸಿಯನ್";s:2:"be";s:30:"ಬಲ್ಗೇರಿಯನ್";s:2:"bg";s:24:"ಬಿಸ್ಲಾಮಾ";s:2:"bi";s:18:"ಬಂಬಾರಾ";s:2:"bm";s:21:"ಬೆಂಗಾಲಿ";s:2:"bn";s:21:"ಬ್ರೆಟನ್";s:2:"br";s:27:"ಬೋಸ್ನಿಯನ್";s:2:"bs";s:24:"ಬುಗಿನೀಸ್";s:3:"bug";s:49:"ಬ್ರಿಟಿಷ್ ಇಂಗ್ಲೀಷ್";s:5:"en-gb";s:18:"ಬಾಸ್ಕ್";s:2:"eu";s:21:"ಬರ್ಮೀಸ್";s:2:"my";s:64:"ಬ್ರೆಜಿಲಿಯನ್ ಪೋರ್ಚುಗೀಸ್";s:5:"pt-br";s:15:"ಬೆಂಬಾ";s:3:"bem";s:9:"ಬೆನ";s:3:"bez";s:12:"ಬೋಡೊ";s:3:"brx";s:12:"ಬಫಿಯ";s:3:"ksf";s:52:"ಬಹುಸಂಖ್ಯೆಯ ಭಾಷೆಗಳು";s:3:"mul";s:18:"ಬ್ಲಿನ್";s:3:"byn";s:15:"ಬಲೂಚಿ";s:3:"bal";s:21:"ಬಲಿನೀಸ್";s:3:"ban";s:9:"ಬಸಾ";s:3:"bas";s:12:"ಬೇಜಾ";s:3:"bej";s:18:"ಬಿಕೊಲ್";s:3:"bik";s:12:"ಬಿನಿ";s:3:"bin";s:18:"ಬ್ರಾಜ್";s:3:"bra";s:21:"ಬುರಿಯಟ್";s:3:"bua";s:45:"ಬ್ಲಿಸ್‌ಸಿಂಬಲ್ಸ್";s:3:"zbl";}i:148;a:7:{s:15:"바슈키르어";s:2:"ba";s:12:"바스크어";s:2:"eu";s:12:"바피아어";s:3:"ksf";s:9:"바이어";s:3:"vai";s:9:"바사어";s:3:"bas";s:9:"바문어";s:3:"bax";s:12:"바푸트어";s:3:"bfd";}i:738;a:52:{s:15:"ບາຣກີ";s:2:"ba";s:24:"ບັງກາຣຽນ";s:2:"bg";s:21:"ບິສລະມາ";s:2:"bi";s:21:"ບາມບາຣາ";s:2:"bm";s:18:"ບອສນຽນ";s:2:"bs";s:24:"ບູຈີເນັດ";s:3:"bug";s:15:"ບັສກີ";s:2:"eu";s:21:"લોજ્બાન";s:3:"jbo";s:15:"લેટિન";s:2:"la";s:18:"લાદીનો";s:3:"lad";s:36:"લક્ઝેમબર્ગિશ";s:2:"lb";s:21:"લેઝધીયન";s:3:"lez";s:53:"લિંગ્વા ફેન્કા નોવા";s:3:"lfn";s:30:"લિંબૂર્ગિશ";s:2:"li";s:21:"લિંગાલા";s:2:"ln";s:21:"લાઓથિયન";s:2:"lo";s:12:"લોઝી";s:3:"loz";s:24:"લિથુનિયન";s:2:"lt";s:15:"લુશાઇ";s:3:"lus";s:21:"લાતવિયન";s:2:"lv";s:22:"લો જર્મન";s:3:"nds";s:46:"ບຣາຊິລຽນ ປໍຕູກີສ";s:5:"pt-br";s:12:"ບີນາ";s:3:"bez";s:15:"ບາເຟຍ";s:3:"ksf";s:12:"લંગી";s:3:"lag";s:18:"લાકોટા";s:3:"lkt";s:37:"લ્યૂબા કટાંગા";s:2:"lu";s:34:"લ્યૂબા-લુલુઆ";s:3:"lua";s:15:"લ્યુઓ";s:3:"luo";s:15:"લુઈયા";s:3:"luy";s:28:"લ્યુલ સામી";s:3:"smj";s:48:"ບໍ່ສາມາດລະບຸພາສາ";s:3:"und";s:48:"ບໍ່ມີເນື້ອຫາພາສາ";s:3:"zxx";s:12:"ບລິນ";s:3:"byn";s:59:"લેટિન અમેરિકન સ્પેનિશ";s:6:"es-419";s:18:"ບາລູຊີ";s:3:"bal";s:24:"ບາລີເນັດ";s:3:"ban";s:12:"ບາຊາ";s:3:"bas";s:15:"ບາມຸນ";s:3:"bax";s:12:"ບີເຈ";s:3:"bej";s:15:"ບີຄອນ";s:3:"bik";s:12:"ບີນີ";s:3:"bin";s:9:"ບຣາ";s:3:"bra";s:15:"ບູຣຽດ";s:3:"bua";s:12:"ບາຍາ";s:3:"gba";s:21:"લાહન્ડા";s:3:"lah";s:18:"લામ્બા";s:3:"lam";s:21:"લુઇસેનો";s:3:"lui";s:18:"લુન્ડા";s:3:"lun";s:18:"લિંગિત";s:3:"tli";s:15:"ບາຟັດ";s:3:"bfd";s:12:"ບູລູ";s:3:"bum";}i:372;a:32:{s:18:"ബഷ്ഖിർ";s:2:"ba";s:30:"ബെലാറുഷ്യൻ";s:2:"be";s:24:"ബൾഗേറിയൻ";s:2:"bg";s:24:"ബിസ്‌ലാമ";s:2:"bi";s:15:"ബംബാറ";s:2:"bm";s:18:"ബംഗാളി";s:2:"bn";s:24:"ബ്രെട്ടൺ";s:2:"br";s:15:"보스니아어";s:2:"bs";s:24:"ബോസ്നിയൻ";s:2:"bs";s:24:"ബുഗിനീസ്";s:3:"bug";s:55:"ബ്രിട്ടീഷ് ഇംഗ്ലീഷ്";s:5:"en-gb";s:21:"ബാസ്‌ക്";s:2:"eu";s:18:"ബർമീസ്";s:2:"my";s:61:"ബ്രസീലിയൻ പോർച്ചുഗീസ്";s:5:"pt-br";s:9:"보틱어";s:3:"vot";s:12:"ബേംബ";s:3:"bem";s:12:"ബെനാ";s:3:"bez";s:9:"보도어";s:3:"brx";s:12:"ബോഡോ";s:3:"brx";s:15:"ബ്ലിൻ";s:3:"byn";s:15:"ബലൂചി";s:3:"bal";s:24:"ബാലിനീസ്";s:3:"ban";s:6:"ബസ";s:3:"bas";s:15:"ബാമുൻ";s:3:"bax";s:9:"ബേജ";s:3:"bej";s:15:"ബികോൽ";s:3:"bik";s:12:"ബിനി";s:3:"bin";s:15:"ബ്രജ്";s:3:"bra";s:27:"ബുറിയത്ത്";s:3:"bua";s:39:"ബ്ലിസ്സിംബൽസ്";s:3:"zbl";s:21:"ബാഫട്ട്";s:3:"bfd";s:12:"ബുളു";s:3:"bum";}i:120;a:85:{s:30:"ဘက်ရှ်ကီအာ";s:2:"ba";s:18:"ဘီလာရု";s:2:"be";s:33:"ဘူဂေးရီးယား";s:2:"bg";s:21:"ဘန်ဘာရာ";s:2:"bm";s:24:"ဘင်္ဂါလီ";s:2:"bn";s:21:"ဘရီတွန်";s:2:"br";s:36:"ဘော့စ်နီးယား";s:2:"bs";s:7:"xeienne";s:3:"chy";s:6:"xajenn";s:3:"chy";s:8:"xi czech";s:2:"cs";s:9:"xi danish";s:2:"da";s:11:"xi jarimani";s:2:"de";s:6:"xongka";s:2:"dz";s:9:"xi giriki";s:2:"el";s:9:"xi nghezi";s:2:"en";s:8:"xi spain";s:2:"es";s:21:"ဘစ်က္ကီ";s:2:"eu";s:10:"xi finnish";s:2:"fi";s:8:"xi furwa";s:2:"fr";s:7:"xauscha";s:2:"ha";s:8:"xiheberu";s:2:"he";s:6:"xorvat";s:2:"hr";s:9:"xorvatcha";s:2:"hr";s:9:"xi ithali";s:2:"it";s:8:"xaponés";s:2:"ja";s:9:"xi japani";s:2:"ja";s:8:"xavanés";s:2:"jv";s:8:"xeorxanu";s:2:"ka";s:9:"xeorxiano";s:2:"ka";s:7:"xmercha";s:2:"km";s:7:"xikorea";s:2:"ko";s:15:"미낭카바우";s:3:"min";s:12:"미란데어";s:3:"mwl";s:30:"ဘွတ်မော်လ်";s:2:"nb";s:7:"xi bunu";s:2:"nl";s:9:"xi norway";s:2:"no";s:9:"xi polixi";s:2:"pl";s:43:"ဘရာဇီး ပေါ်တူဂီ";s:5:"pt-br";s:21:"రోమన్ష్";s:2:"rm";s:12:"రండి";s:2:"rn";s:27:"రోమానియన్";s:2:"ro";s:18:"రష్యన్";s:2:"ru";s:10:"xi rhaxiya";s:2:"ru";s:4:"xona";s:2:"sn";s:9:"xi swiden";s:2:"sv";s:8:"xitsonga";s:2:"ts";s:14:"xi-zongjanesch";s:2:"ts";s:5:"xhosa";s:2:"xh";s:4:"xosa";s:2:"xh";s:9:"xhoština";s:2:"xh";s:8:"xhosagbe";s:2:"xh";s:7:"xhosera";s:2:"xh";s:5:"xhose";s:2:"xh";s:8:"xosancha";s:2:"xh";s:6:"xinès";s:2:"zh";s:8:"xitoycha";s:2:"zh";s:18:"xinès simplificat";s:7:"zh-hans";s:18:"xinès tradicional";s:7:"zh-hant";s:18:"ဘိန်ဘာ";s:3:"bem";s:12:"ဘီနာ";s:3:"bez";s:11:"xhula-fonji";s:3:"dyo";s:18:"ဘာဖီအာ";s:3:"ksf";s:15:"రోంబో";s:3:"rof";s:12:"ర్వా";s:3:"rwk";s:90:"ဘာသာစကား နှင့် ပတ်သက် သောအရာမရှိ";s:3:"zxx";s:12:"ဘာလီ";s:3:"ban";s:12:"ဘာဆာ";s:3:"bas";s:15:"xíriga chinook";s:3:"chn";s:11:"xudeo-persa";s:3:"jpr";s:12:"xudeo-árabe";s:3:"jrb";s:9:"xazi dili";s:3:"kha";s:10:"xotan dili";s:3:"kho";s:12:"미크맥어";s:3:"mic";s:27:"రాజస్తాని";s:3:"raj";s:27:"రాపన్యుయి";s:3:"rap";s:33:"రారోటొంగాన్";s:3:"rar";s:18:"రోమానీ";s:3:"rom";s:3:"xan";s:3:"shn";s:5:"xiang";s:3:"hsn";s:13:"xiang chinese";s:3:"hsn";s:11:"xiang-kiina";s:3:"hsn";s:16:"xiang-chinesesch";s:3:"hsn";s:7:"xiangyu";s:3:"hsn";s:14:"xiang Çincesi";s:3:"hsn";s:12:"미예네어";s:3:"mye";}i:860;a:29:{s:18:"ବଶଖିର୍";s:2:"ba";s:33:"ବେଲାରୁଷିଆନ୍";s:2:"be";s:30:"ବୁଲଗେରିଆନ୍";s:2:"bg";s:21:"ବିସଲାମା";s:2:"bi";s:24:"ବାମ୍ବାରା";s:2:"bm";s:21:"ବଙ୍ଗାଳୀ";s:2:"bn";s:21:"ବ୍ରେଟନ୍";s:2:"br";s:24:"ବୁଗୀନୀଜ୍";s:3:"bug";s:43:"ବ୍ରିଟିଶ୍ ଇଁରାଜୀ";s:5:"en-gb";s:24:"ବାସ୍କ୍ୱି";s:2:"eu";s:21:"ବର୍ମୀଜ୍";s:2:"my";s:67:"ବ୍ରାଜିଲିଆନ୍ ପର୍ତ୍ତୁଗୀଜ୍";s:5:"pt-br";s:21:"ବୋଲାପୁକ";s:2:"vo";s:12:"칼미크어";s:3:"xal";s:18:"ବେମ୍ବା";s:3:"bem";s:12:"ବେନା";s:3:"bez";s:12:"칼렌진어";s:3:"kln";s:37:"ବିବିଧ ଭାଷାମାନ";s:3:"mul";s:18:"ବ୍ଲିନ୍";s:3:"byn";s:18:"ବାଲୁଚି";s:3:"bal";s:24:"ବାଲିନୀଜ୍";s:3:"ban";s:12:"ବାସା";s:3:"bas";s:12:"ବେଜା";s:3:"bej";s:18:"ବିକୋଲ୍";s:3:"bik";s:12:"ବିନି";s:3:"bin";s:24:"ବିକ୍ସିକା";s:3:"bla";s:18:"ବ୍ରାଜ୍";s:3:"bra";s:21:"ବୁରିଆଟ୍";s:3:"bua";s:36:"ବ୍ଲିସିମ୍ବଲସ୍";s:3:"zbl";}i:604;a:127:{s:18:"ਬਸ਼ਕੀਰ";s:2:"ba";s:24:"ਬੇਲਾਰੂਸੀ";s:2:"be";s:27:"ਬੁਲਗਾਰੀਆਈ";s:2:"bg";s:15:"比斯拉马文";s:2:"bi";s:15:"比斯拉馬文";s:2:"bi";s:18:"ਬੰਬਾਰਾ";s:2:"bm";s:18:"ਬੰਗਾਲੀ";s:2:"bn";s:24:"比什奴普萊利亞文";s:3:"bpy";s:15:"ਬਰੇਟਨ";s:2:"br";s:21:"ਬੋਸਨੀਆਈ";s:2:"bs";s:27:"ดูซุนกลาง";s:3:"dtp";s:46:"ਬਰਤਾਨਵੀ ਅੰਗਰੇਜ਼ੀ";s:5:"en-gb";s:19:"لغة الباسك";s:2:"eu";s:12:"ਬਾਸਕ";s:2:"eu";s:28:"لغة أهل الهاواي";s:3:"haw";s:12:"لوجبان";s:3:"jbo";s:16:"لوجبانچە";s:3:"jbo";s:12:"لاتینی";s:2:"la";s:14:"لاتیٖنی";s:2:"la";s:12:"لاتیني";s:2:"la";s:14:"لاتىنچە";s:2:"la";s:12:"لاطینی";s:2:"la";s:12:"لادینو";s:3:"lad";s:12:"لیڈِنو";s:3:"lad";s:16:"لادىنوچە";s:3:"lad";s:22:"لوگزامبورگی";s:2:"lb";s:26:"لُکھزیمبورگِش";s:2:"lb";s:28:"لىيۇكسېمبۇرگچە";s:2:"lb";s:32:"لگژمبرگ کا باشندہ";s:2:"lb";s:8:"لزگی";s:3:"lez";s:16:"لیزگِیَن";s:3:"lez";s:16:"لېزگىنچە";s:3:"lez";s:16:"لیمبورگی";s:2:"li";s:18:"لِمبٔرگِش";s:2:"li";s:18:"لىمبۇرگچە";s:2:"li";s:14:"لینگالا";s:2:"ln";s:14:"لِنگالا";s:2:"ln";s:18:"لىنگالاچە";s:2:"ln";s:14:"لِنگَلا";s:2:"ln";s:12:"لائوسی";s:2:"lo";s:6:"لاو";s:2:"lo";s:12:"لويتين";s:2:"lo";s:14:"لائوسچە";s:2:"lo";s:6:"لاؤ";s:2:"lo";s:8:"لوری";s:3:"lrc";s:14:"لوزیایی";s:3:"loz";s:8:"لوزی";s:3:"loz";s:12:"لوزىچە";s:3:"loz";s:20:"لیتوانیایی";s:2:"lt";s:22:"لِتھوانِیَن";s:2:"lt";s:14:"ليتواني";s:2:"lt";s:14:"لىتۋاچە";s:2:"lt";s:20:"لتھُواینین";s:2:"lt";s:14:"لاتگالی";s:3:"ltg";s:15:"لوشه‌ای";s:3:"lus";s:12:"لُسہاے";s:3:"lus";s:16:"لتونیایی";s:2:"lv";s:16:"لَتوِیَن";s:2:"lv";s:14:"لېټواني";s:2:"lv";s:18:"لاتۋىيەچە";s:2:"lv";s:12:"لیٹوین";s:2:"lv";s:21:"لغة الملايو";s:2:"ms";s:12:"ਬਰਮੀ";s:2:"my";s:15:"ดองกา";s:2:"ng";s:15:"ดัตช์";s:2:"nl";s:14:"لهستانی";s:2:"pl";s:58:"ਬ੍ਰਾਜ਼ੀਲੀਆਈ ਪੁਰਤਗਾਲੀ";s:5:"pt-br";s:15:"ਬੇਮਬਾ";s:3:"bem";s:12:"ਬੇਨਾ";s:3:"bez";s:12:"ਬੋਡੋ";s:3:"brx";s:15:"ดัวลา";s:3:"dua";s:15:"ਬਫ਼ੀਆ";s:3:"ksf";s:10:"لانجي";s:3:"lag";s:10:"لانگی";s:3:"lag";s:14:"لانگىچە";s:3:"lag";s:12:"لاكوتا";s:3:"lkt";s:12:"لاکوتا";s:3:"lkt";s:12:"لاکوٹا";s:3:"lkt";s:29:"لوبایی‐کاتانگا";s:2:"lu";s:27:"لوُبا کَتَنٛگا";s:2:"lu";s:27:"لۇبا-كاتانگاچە";s:2:"lu";s:21:"لبا-كاتانجا";s:2:"lu";s:25:"لوبایی‐لولوا";s:3:"lua";s:25:"لوٗبا لوٗلُوا";s:3:"lua";s:21:"لۇبا-لۇئاچە";s:3:"lua";s:21:"لیوبا لولوآ";s:3:"lua";s:12:"لوئویی";s:3:"luo";s:8:"لُوو";s:3:"luo";s:12:"لۇئوچە";s:3:"luo";s:4:"لو";s:3:"luo";s:8:"لويا";s:3:"luy";s:8:"لویا";s:3:"luy";s:12:"لۇياچە";s:3:"luy";s:21:"لغات متعددة";s:3:"mul";s:17:"لوله سامی";s:3:"smj";s:19:"لولیے سَمی";s:3:"smj";s:21:"لۇلې سامىچە";s:3:"smj";s:15:"لول سامی";s:3:"smj";s:26:"لغة غير معروفة";s:3:"und";s:9:"比林文";s:3:"byn";s:38:"لیٹٕن امریٖکی سپینِش";s:6:"es-419";s:44:"لاتىن ئامېرىكا ئىسپانچە";s:6:"es-419";s:40:"لاطینی امریکی ہسپانوی";s:6:"es-419";s:29:"لِبیریَن سپینِش";s:5:"es-es";s:35:"لِبیریَن پُرتَگیٖز";s:5:"pt-pt";s:12:"比科爾文";s:3:"bik";s:9:"比尼文";s:3:"bin";s:18:"ดาโกทา";s:3:"dak";s:21:"ดาร์กิน";s:3:"dar";s:15:"ดิงกา";s:3:"din";s:27:"ดัตช์กลาง";s:3:"dum";s:15:"ดิวลา";s:3:"dyu";s:18:"ดาซากา";s:3:"dzg";s:29:"لغة أهل جبل طارق";s:3:"gil";s:12:"لاهندا";s:3:"lah";s:14:"لَہَندا";s:3:"lah";s:14:"لانداچە";s:3:"lah";s:10:"لامبا";s:3:"lam";s:10:"لَمبا";s:3:"lam";s:14:"لامباچە";s:3:"lam";s:12:"لویسنو";s:3:"lui";s:16:"لویِسینو";s:3:"lui";s:20:"لۇيسېنگوچە";s:3:"lui";s:14:"لوندایی";s:3:"lun";s:10:"لُندا";s:3:"lun";s:14:"لۇنداچە";s:3:"lun";s:48:"ดารีโซโรอัสเตอร์";s:3:"gbz";}i:510;a:59:{s:24:"බාෂ්කිර්";s:2:"ba";s:33:"බෙලරුසියානු";s:2:"be";s:33:"බල්ගේරියානු";s:2:"bg";s:18:"බම්බරා";s:2:"bm";s:21:"බෙංගාලි";s:2:"bn";s:27:"බ්‍රේටොන්";s:2:"br";s:30:"බොස්නියානු";s:2:"bs";s:14:"צ׳צ׳נית";s:2:"ce";s:12:"צ׳מורו";s:2:"ch";s:14:"צ׳וקטאו";s:3:"cho";s:12:"צ׳רוקי";s:3:"chr";s:10:"צ׳כית";s:2:"cs";s:12:"צ׳ובאש";s:2:"cv";s:61:"බ්‍රිතාන්‍ය ඉංග්‍රීසි";s:5:"en-gb";s:18:"බොස්කෝ";s:2:"eu";s:12:"צרפתית";s:2:"fr";s:49:"බටහිර ෆ්‍රිසියානු";s:2:"fy";s:12:"マン島語";s:2:"gv";s:21:"マイティリー語";s:3:"mai";s:21:"マダガスカル語";s:2:"mg";s:18:"マーシャル語";s:2:"mh";s:12:"マオリ語";s:2:"mi";s:18:"マケドニア語";s:2:"mk";s:21:"マラヤーラム語";s:2:"ml";s:21:"マラーティー語";s:2:"mr";s:12:"マレー語";s:2:"ms";s:12:"マルタ語";s:2:"mt";s:15:"බුරුම";s:2:"my";s:27:"マーザンダラーン語";s:3:"mzn";s:46:"බ්‍රසීල පෘතුගීසි";s:5:"pt-br";s:24:"マインフランク語";s:3:"vmf";s:18:"බෙම්බා";s:3:"bem";s:12:"බෙනා";s:3:"bez";s:12:"බොඩො";s:3:"brx";s:10:"צ׳יגה";s:3:"cgg";s:15:"マチャメ語";s:3:"jmc";s:15:"マコンデ語";s:3:"kde";s:18:"බාෆියා";s:3:"ksf";s:12:"マサイ語";s:3:"mas";s:24:"マクア・ミート語";s:3:"mgh";s:19:"צפון נדבלה";s:2:"nd";s:23:"צרפתית קנדית";s:5:"fr-ca";s:29:"צרפתית שוויצרית";s:5:"fr-ch";s:14:"צ׳יבצ׳ה";s:3:"chb";s:16:"צ׳אגאטאי";s:3:"chg";s:12:"צ׳וקסה";s:3:"chk";s:9:"マリ語";s:3:"chm";s:18:"צ׳יפוויאן";s:3:"chp";s:25:"צרפתית תיכונה";s:3:"frm";s:23:"צרפתית עתיקה";s:3:"fro";s:15:"マドゥラ語";s:3:"mad";s:15:"マガヒー語";s:3:"mag";s:18:"マカッサル語";s:3:"mak";s:21:"マンディンゴ語";s:3:"man";s:9:"マバ語";s:3:"mde";s:15:"マンダル語";s:3:"mdr";s:15:"マニプリ語";s:3:"mni";s:24:"マールワーリー語";s:3:"mwr";s:12:"マファ語";s:3:"maf";}i:610;a:58:{s:21:"บัชคีร์";s:2:"ba";s:24:"บาวาเรีย";s:3:"bar";s:27:"บาตักโทบา";s:3:"bbc";s:27:"บัลแกเรีย";s:2:"bg";s:21:"บิสลามา";s:2:"bi";s:21:"บันจาร์";s:3:"bjn";s:21:"บัมบารา";s:2:"bm";s:27:"บักติยารี";s:3:"bqi";s:18:"บราฮุย";s:3:"brh";s:21:"บอสเนีย";s:2:"bs";s:15:"บูกิส";s:3:"bug";s:34:"ਲੋਅਰ ਸੋਰਬੀਅਨ";s:3:"dsb";s:15:"บัสเก";s:2:"eu";s:29:"يۇقىرىقى سېربچە";s:3:"hsb";s:23:"يىچە (سىچۈەن)";s:2:"ii";s:14:"ياپونچە";s:2:"ja";s:12:"ياۋاچە";s:2:"jv";s:18:"ਲਾਤੀਨੀ";s:2:"la";s:33:"ਲਕਜ਼ਮਬਰਗਿਸ਼";s:2:"lb";s:21:"ਲਿੰਗਾਲਾ";s:2:"ln";s:9:"ਲਾਓ";s:2:"lo";s:27:"ਲਿਥੁਆਨੀਅਨ";s:2:"lt";s:21:"ਲਾਟਵਿਅਨ";s:2:"lv";s:25:"يېڭى نورۋېگچە";s:2:"nn";s:12:"บาลี";s:2:"pi";s:21:"บุรุนดี";s:2:"rn";s:14:"ياقۇتچە";s:3:"sah";s:24:"บอตสวานา";s:2:"tn";s:8:"يديش";s:2:"yi";s:16:"يىددىشچە";s:2:"yi";s:16:"يورۇباچە";s:2:"yo";s:18:"บาเฟีย";s:3:"ksf";s:15:"ਲੰਗਾਈ";s:3:"lag";s:15:"ਲਕੋਟਾ";s:3:"lkt";s:34:"ਲੂਬਾ-ਕਾਟਾਂਗਾ";s:2:"lu";s:9:"ਲੂਓ";s:3:"luo";s:12:"ਲੂਈਆ";s:3:"luy";s:25:"ਲਿਊਲ ਸਾਮੀ";s:3:"smj";s:17:"يوچۇن تىل";s:3:"und";s:12:"บลิน";s:3:"byn";s:53:"ਲਾਤੀਨੀ ਅਮਰੀਕੀ ਸਪੇਨੀ";s:6:"es-419";s:31:"ياۋروپا ئىسپانچە";s:5:"es-es";s:35:"ياۋروپا پورتۇگالچە";s:5:"pt-pt";s:18:"บาลูชิ";s:3:"bal";s:15:"บาหลี";s:3:"ban";s:12:"บาสา";s:3:"bas";s:15:"บามัน";s:3:"bax";s:15:"บิกอล";s:3:"bik";s:12:"บินี";s:3:"bin";s:21:"บูเรียต";s:3:"bua";s:10:"ياۋچە";s:3:"yao";s:10:"ياپچە";s:3:"yap";s:12:"يانجبن";s:3:"yav";s:16:"ياڭبەنچە";s:3:"yav";s:36:"บลิสซิมโบลส์";s:3:"zbl";s:15:"บาฟัต";s:3:"bfd";s:12:"บูลู";s:3:"bum";s:14:"يېمباچە";s:3:"ybb";}i:52;a:44:{s:15:"巴什客尔文";s:2:"ba";s:15:"巴什客爾文";s:2:"ba";s:15:"巴伐利亞文";s:3:"bar";s:18:"巴塔克托巴文";s:3:"bbc";s:18:"巴赫蒂亞里文";s:3:"bqi";s:12:"乔克托文";s:3:"cho";s:14:"Мальдив";s:2:"dv";s:12:"巴斯克文";s:2:"eu";s:10:"Манкс";s:2:"gv";s:12:"Маҷорӣ";s:2:"hu";s:22:"Међујезички";s:2:"ie";s:14:"Маитили";s:3:"mai";s:10:"Мокша";s:3:"mdf";s:18:"Маршалски";s:2:"mh";s:22:"Минангкабау";s:3:"min";s:18:"Моҕуоллуу";s:2:"mn";s:20:"Мирандешки";s:3:"mwl";s:18:"巴克摩挪威文";s:2:"nb";s:9:"巴利文";s:2:"pi";s:18:"巴西葡萄牙文";s:5:"pt-br";s:12:"巴菲亚文";s:3:"ksf";s:12:"巴菲亞文";s:3:"ksf";s:9:"ᎼᎻᎦ";s:3:"moh";s:9:"巴里文";s:3:"ban";s:9:"巴萨文";s:3:"bas";s:9:"巴薩文";s:3:"bas";s:12:"巴姆穆文";s:3:"bax";s:12:"巴勒比文";s:3:"car";s:8:"Мари";s:3:"chm";s:10:"Монго";s:3:"lol";s:18:"Мадурешки";s:3:"mad";s:12:"Магахи";s:3:"mag";s:14:"Макасар";s:3:"mak";s:16:"Мандинго";s:3:"man";s:12:"Мандар";s:3:"mdr";s:10:"Менде";s:3:"men";s:12:"Микмак";s:3:"mic";s:10:"Манчу";s:3:"mnc";s:16:"Манипури";s:3:"mni";s:8:"Моси";s:3:"mos";s:14:"Марвари";s:3:"mwr";s:12:"巴列維文";s:3:"pal";s:12:"巴非特文";s:3:"bfd";s:12:"巴達加文";s:3:"bfq";}i:382;a:15:{s:13:"žemaitėška";s:3:"sgs";s:18:"žemutinių sorbų";s:3:"dsb";s:24:"židovská španielčina";s:3:"lad";s:15:"皮埃蒙特文";s:3:"pms";s:13:"žemaitština";s:3:"sgs";s:11:"žemaičių";s:3:"sgs";s:37:"ശ്രാനൻ ഡോങ്കോ";s:3:"srn";s:22:"զուլուսերեն";s:2:"zu";s:10:"զարմա";s:3:"dje";s:24:"žádný jazykový obsah";s:3:"zxx";s:26:"žedno rěcne wopśimjeśe";s:3:"zxx";s:21:"žadyn rěčny wobsah";s:3:"zxx";s:21:"židovská perzština";s:3:"jpr";s:20:"židovská arabčina";s:3:"jrb";s:4:"žju";s:3:"kaj";}i:587;a:163:{s:16:"ساموگیتی";s:3:"sgs";s:10:"سبویی";s:3:"ceb";s:14:"سیباونو";s:3:"ceb";s:12:"سېبۇچە";s:3:"ceb";s:25:"سورانى كۇردچە";s:3:"ckb";s:21:"سورانی کردش";s:3:"ckb";s:23:"سلافية كنسية";s:2:"cu";s:29:"سٕوِس ہاےجٔرمَن";s:5:"de-ch";s:26:"سوئس ہائی جرمن";s:5:"de-ch";s:12:"سپینِش";s:2:"es";s:25:"سکوٹِش گیےلِک";s:2:"gd";s:27:"سکاټلېنډي ګېلک";s:2:"gd";s:12:"سكوتچە";s:2:"gd";s:19:"سکاٹ گیلِک";s:2:"gd";s:23:"سٕوِس جٔرمَن";s:3:"gsw";s:17:"سوئس جرمن";s:3:"gsw";s:19:"سِچوان یٖی";s:2:"ii";s:15:"سچوان ای";s:2:"ii";s:23:"سوتویی شمالی";s:3:"nso";s:14:"سنسکریت";s:2:"sa";s:16:"سَنسکرٕت";s:2:"sa";s:14:"سنسکریټ";s:2:"sa";s:20:"سانسكرىتچە";s:2:"sa";s:16:"سَنسکرِت";s:2:"sa";s:14:"سانتالی";s:3:"sat";s:14:"سَنتالی";s:3:"sat";s:18:"سانتالىچە";s:3:"sat";s:20:"ساردینیایی";s:2:"sc";s:16:"سراڈیٖنی";s:2:"sc";s:22:"ساردىنىيەچە";s:2:"sc";s:12:"سیسیلی";s:3:"scn";s:18:"سِچِلِیَن";s:3:"scn";s:22:"سىتسىلىيەچە";s:3:"scn";s:10:"سکاٹس";s:3:"sco";s:8:"سنڌي";s:2:"sd";s:8:"سندی";s:2:"sd";s:10:"سِندی";s:2:"sd";s:10:"سندهي";s:2:"sd";s:14:"سىندىچە";s:2:"sd";s:10:"سندھی";s:2:"sd";s:19:"سامی شمالی";s:2:"se";s:14:"سانگویی";s:2:"sg";s:10:"سَنگو";s:2:"sg";s:14:"سانگوچە";s:2:"sg";s:10:"سانغو";s:3:"sbp";s:29:"سیٚربو کروشِیَن";s:2:"sh";s:23:"سرب-کروشيايي";s:2:"sh";s:27:"سېرب-كرودىيەچە";s:2:"sh";s:25:"سربو-کروئیشین";s:2:"sh";s:14:"سینهالی";s:2:"si";s:14:"سِنہالا";s:2:"si";s:14:"سينهالي";s:2:"si";s:16:"سىنگالچە";s:2:"si";s:12:"سنہالا";s:2:"si";s:12:"سلووَک";s:2:"sk";s:14:"سلوواکي";s:2:"sk";s:18:"سىلوۋاكچە";s:2:"sk";s:12:"سلوواک";s:2:"sk";s:18:"سلووینیَن";s:2:"sl";s:14:"سلوواني";s:2:"sl";s:24:"سىلوۋېنىيەچە";s:2:"sl";s:20:"سلووینیائی";s:2:"sl";s:27:"سیلزیایی پایین";s:3:"sli";s:14:"ساموآیی";s:2:"sm";s:14:"سَمواَن";s:2:"sm";s:16:"ساموئاچە";s:2:"sm";s:12:"ساموآن";s:2:"sm";s:19:"سامی جنوبی";s:3:"sma";s:18:"سومالیایی";s:2:"so";s:12:"سومٲلی";s:2:"so";s:12:"سومالي";s:2:"so";s:16:"سومالىچە";s:2:"so";s:16:"سٔربِیَن";s:2:"sr";s:14:"سربيائي";s:2:"sr";s:12:"سېربچە";s:2:"sr";s:27:"سرٛانَن ٹونٛگو";s:3:"srn";s:27:"سىرانان-توڭوچە";s:3:"srn";s:16:"سوازیایی";s:2:"ss";s:10:"سواتی";s:2:"ss";s:16:"سىۋاتىچە";s:2:"ss";s:23:"سوتویی جنوبی";s:2:"st";s:12:"سيسوتو";s:2:"st";s:14:"سوندایی";s:2:"su";s:18:"سَنڈَنیٖز";s:2:"su";s:12:"سوډاني";s:2:"su";s:14:"سۇنداچە";s:2:"su";s:14:"سنڈانیز";s:2:"su";s:10:"سوئدی";s:2:"sv";s:14:"سویٖڈِش";s:2:"sv";s:12:"سویډنی";s:2:"sv";s:10:"سویڈش";s:2:"sv";s:12:"سواحلی";s:2:"sw";s:14:"سواہِلی";s:2:"sw";s:14:"سواهېلي";s:2:"sw";s:16:"سىۋالىچە";s:2:"sw";s:16:"سیلزیایی";s:3:"szl";s:10:"سوانا";s:2:"tn";s:16:"سىۋاناچە";s:2:"tn";s:14:"سونگاچە";s:2:"ts";s:38:"سینٹرل ایٹلس ٹمازائٹ";s:3:"tzm";s:21:"سیٚود چیٖنی";s:7:"zh-hans";s:14:"سامبورو";s:3:"saq";s:18:"سامبۇرۇچە";s:3:"saq";s:10:"سانگو";s:3:"sbp";s:14:"سانگۇچە";s:3:"sbp";s:8:"سينا";s:3:"seh";s:6:"سنا";s:3:"seh";s:12:"سېناچە";s:3:"seh";s:8:"سینا";s:3:"seh";s:19:"سکولٹ سَمی";s:3:"sms";s:25:"سىكولت سامىچە";s:3:"sms";s:25:"سواحلی کنگویی";s:3:"swc";s:8:"سوجا";s:3:"xog";s:12:"سوگایی";s:3:"xog";s:12:"سوگاچە";s:3:"xog";s:8:"سوگا";s:3:"xog";s:23:"سٕوٕس فریٚنچ";s:5:"fr-ch";s:19:"سوئس فرینچ";s:5:"fr-ch";s:16:"سیدامویی";s:3:"sid";s:12:"سِدامو";s:3:"sid";s:16:"سىداموچە";s:3:"sid";s:14:"سِکسِکا";s:3:"bla";s:18:"سىكسىكاچە";s:3:"bla";s:8:"سلیو";s:3:"den";s:12:"سلاۋچە";s:3:"den";s:14:"سىگانچە";s:3:"rom";s:21:"سانداوه‌ای";s:3:"sad";s:16:"سَندَویے";s:3:"sad";s:18:"سانداۋېچە";s:3:"sad";s:33:"سَمارِتَن اَرامیک";s:3:"sam";s:22:"سامارىتانچە";s:3:"sam";s:12:"ساساکی";s:3:"sas";s:10:"سَسَک";s:3:"sas";s:14:"ساساكچە";s:3:"sas";s:12:"سلکوپی";s:3:"sel";s:14:"سیٚلکُپ";s:3:"sel";s:16:"سېلكاپچە";s:3:"sel";s:21:"سونینکه‌ای";s:3:"snk";s:16:"سونِنکیے";s:3:"snk";s:18:"سونىنكەچە";s:3:"snk";s:8:"سغدی";s:3:"sog";s:16:"سوگڈِیَن";s:3:"sog";s:14:"سوغدىچە";s:3:"sog";s:10:"سریری";s:3:"srr";s:12:"سیٚریر";s:3:"srr";s:14:"سېرېرچە";s:3:"srr";s:16:"سوکومایی";s:3:"suk";s:12:"سُکُما";s:3:"suk";s:16:"سۇكۇماچە";s:3:"suk";s:12:"سوسویی";s:3:"sus";s:10:"سُسوٗ";s:3:"sus";s:12:"سۇسۇچە";s:3:"sus";s:10:"سومری";s:3:"sux";s:16:"سُمیریَن";s:3:"sux";s:14:"سۈمەرچە";s:3:"sux";s:29:"سريانية تقليدية";s:3:"syc";s:25:"سریانی کلاسیک";s:3:"syc";s:12:"سریانی";s:3:"syr";s:16:"سیٖریٲیی";s:3:"syr";s:16:"سۈرىيەچە";s:3:"syr";s:18:"سىمشيانچە";s:3:"tsi";s:18:"سېكنېكاچە";s:3:"see";s:12:"ساخوچە";s:3:"ssy";}i:469;a:18:{s:21:"サモギティア語";s:7:"bat-smg";s:24:"サンスクリット語";s:2:"sa";s:21:"サンターリー語";s:3:"sat";s:21:"サルデーニャ語";s:2:"sc";s:36:"サッサリ・サルデーニャ語";s:3:"sdc";s:12:"サンゴ語";s:2:"sg";s:22:"サモギティア語)";s:3:"sgs";s:12:"サモア語";s:2:"sm";s:9:"থাই";s:2:"th";s:15:"サンバー語";s:3:"ksb";s:15:"サンブル語";s:3:"saq";s:12:"サング語";s:3:"sbp";s:18:"サンダウェ語";s:3:"sad";s:27:"サマリア・アラム語";s:3:"sam";s:12:"ササク語";s:3:"sas";s:15:"サポテカ語";s:3:"zap";s:27:"サウラーシュトラ語";s:3:"saz";s:9:"サホ語";s:3:"ssy";}i:499;a:11:{s:15:"ビコール語";s:3:"bcl";s:15:"ビスラマ語";s:2:"bi";s:39:"ビシュヌプリヤ・マニプリ語";s:3:"bpy";s:27:"כורדית סוראנית";s:3:"ckb";s:8:"כמער";s:2:"km";s:12:"כורדית";s:2:"ku";s:12:"ビルマ語";s:2:"my";s:14:"כינעזיש";s:2:"zh";s:12:"ビリン語";s:3:"byn";s:12:"ビコル語";s:3:"bik";s:9:"ビニ語";s:3:"bin";}i:119;a:141:{s:11:"wit-russies";s:2:"be";s:13:"weißrussisch";s:2:"be";s:13:"weissrussisch";s:2:"be";s:11:"wyt-russysk";s:2:"be";s:13:"wiissrussisch";s:2:"be";s:13:"wiißrußesch";s:2:"be";s:14:"wäissrussesch";s:2:"be";s:14:"wittruss’sch";s:2:"be";s:12:"wit-russisch";s:2:"be";s:7:"wallies";s:2:"cy";s:8:"walisisk";s:2:"cy";s:9:"walisisch";s:2:"cy";s:13:"walizišćina";s:2:"cy";s:8:"walesgbe";s:2:"cy";s:5:"welsh";s:2:"cy";s:5:"welsk";s:2:"cy";s:4:"wale";s:2:"cy";s:6:"walesi";s:2:"cy";s:11:"wallihsesch";s:2:"cy";s:9:"walisesch";s:2:"cy";s:5:"wales";s:2:"cy";s:4:"welx";s:2:"cy";s:8:"waliesch";s:2:"cy";s:11:"welishiffaa";s:2:"cy";s:8:"walijski";s:2:"cy";s:10:"waleština";s:2:"cy";s:9:"walesiska";s:2:"cy";s:28:"wysokoniemiecki (szwajcaria)";s:5:"de-ch";s:10:"џонга";s:2:"dz";s:52:"ဗြိတိသျှ အင်္ဂလိပ်";s:5:"en-gb";s:9:"wes-fries";s:2:"fy";s:13:"westfriesisch";s:2:"fy";s:15:"western frisian";s:2:"fy";s:10:"west-frysk";s:2:"fy";s:14:"wäßfriisesch";s:2:"fy";s:13:"westfriesesch";s:2:"fy";s:11:"westfreesch";s:2:"fy";s:9:"wordhonek";s:2:"ga";s:10:"węgierski";s:2:"hu";s:7:"włoski";s:2:"it";s:9:"west-mari";s:3:"mrj";s:9:"ဗမာ";s:2:"my";s:15:"western punjabi";s:3:"pnb";s:18:"యాకుట్";s:3:"sah";s:5:"wigur";s:2:"ug";s:8:"wcreineg";s:2:"uk";s:4:"wrdw";s:2:"ur";s:7:"wsbeceg";s:2:"uz";s:5:"wenda";s:2:"ve";s:7:"wenecki";s:3:"vec";s:8:"wepsisch";s:3:"vep";s:8:"wepsesch";s:3:"vep";s:6:"wepski";s:3:"vep";s:14:"wiyɛtinamukan";s:2:"vi";s:12:"wiyetnameere";s:2:"vi";s:9:"wiekanama";s:2:"vi";s:24:"ဗီယက်နမ်";s:2:"vi";s:10:"wietnamski";s:2:"vi";s:10:"west-vlams";s:3:"vls";s:13:"westflämisch";s:3:"vls";s:12:"west flemish";s:3:"vls";s:13:"westflämesch";s:3:"vls";s:11:"west-vlaams";s:3:"vls";s:7:"wotisch";s:3:"vot";s:7:"wotesch";s:3:"vot";s:7:"wootsch";s:3:"vot";s:8:"wotiacki";s:3:"vot";s:5:"walon";s:2:"wa";s:8:"walloneg";s:2:"wa";s:7:"walwneg";s:2:"wa";s:10:"wallonisch";s:2:"wa";s:12:"walonšćina";s:2:"wa";s:7:"walloon";s:2:"wa";s:6:"wallon";s:2:"wa";s:5:"waals";s:2:"wa";s:11:"wallounesch";s:2:"wa";s:10:"walloonsch";s:2:"wa";s:9:"waloński";s:2:"wa";s:7:"winaray";s:3:"war";s:5:"waray";s:3:"war";s:11:"waray-waray";s:3:"war";s:11:"warajština";s:3:"war";s:8:"waraygbe";s:3:"war";s:5:"warai";s:3:"war";s:5:"waraj";s:3:"war";s:5:"wolof";s:2:"wo";s:6:"wòlof";s:2:"wo";s:11:"wolofština";s:2:"wo";s:6:"woloff";s:2:"wo";s:8:"wolofgbe";s:2:"wo";s:6:"wólof";s:2:"wo";s:8:"wolofera";s:2:"wo";s:10:"wolof simi";s:2:"wo";s:2:"wu";s:3:"wuu";s:8:"wu-kiina";s:3:"wuu";s:13:"wu-chinesesch";s:3:"wuu";s:4:"wuyu";s:3:"wuu";s:11:"wu Çincesi";s:3:"wuu";s:18:"యోరుబా";s:2:"yo";s:14:"џуаншки";s:2:"za";s:21:"współczesny arabski";s:6:"ar-001";s:5:"wemba";s:3:"bem";s:18:"ဗိုဒို";s:3:"brx";s:17:"џола фоњи";s:3:"dyo";s:15:"wiele języków";s:3:"mul";s:15:"ဗိုင်";s:3:"vai";s:3:"wai";s:3:"vai";s:21:"ဗန်ဂျို";s:3:"vun";s:52:"యూరోపియన్ స్పానిష్";s:5:"es-es";s:58:"యూరోపియన్ పోర్చుగీస్";s:5:"pt-pt";s:8:"џула";s:3:"dyu";s:8:"wgariteg";s:3:"uga";s:8:"wolaytta";s:3:"wal";s:6:"walamo";s:3:"wal";s:12:"wolajtština";s:3:"wal";s:14:"walamo-sprache";s:3:"wal";s:8:"wolaitta";s:3:"wal";s:16:"walamo-schpraach";s:3:"wal";s:14:"walamo-sprooch";s:3:"wal";s:5:"washo";s:3:"was";s:8:"waština";s:3:"was";s:13:"washo-sprache";s:3:"was";s:15:"washo-schpraach";s:3:"was";s:13:"washo-sprooch";s:3:"was";s:4:"waxo";s:3:"was";s:9:"యాఒ";s:3:"yao";s:18:"యాపిస్";s:3:"yap";s:5:"wayuu";s:3:"guc";s:12:"wayúuština";s:3:"guc";s:6:"wayúu";s:3:"guc";s:6:"walser";s:3:"wae";s:10:"walsertysk";s:3:"wae";s:15:"walser-dialekte";s:3:"wae";s:8:"walsegbe";s:3:"wae";s:7:"walseri";s:3:"wae";s:13:"walserdütsch";s:3:"wae";s:16:"walliserdäitsch";s:3:"wae";s:11:"walserčina";s:3:"wae";s:11:"walsertyska";s:3:"wae";s:6:"wortel";s:4:"root";s:12:"wakashaansch";s:3:"wak";}i:708;a:7:{s:15:"ቤላራሻኛ";s:2:"be";s:15:"비슬라마어";s:2:"bi";s:15:"ቤንጋሊኛ";s:2:"bn";s:9:"ቤምባ";s:3:"bem";s:6:"ቤና";s:3:"bez";s:9:"비콜어";s:3:"bik";s:9:"비니어";s:3:"bin";}i:926;a:24:{s:33:"བེལ་ཨ་རུས་ཁ";s:2:"be";s:45:"བཱལ་གེ་རི་ཡཱན་ཁ";s:2:"bg";s:42:"བྷང་ག་ལའི་སྐད།";s:2:"bn";s:21:"བངྒ་ལ་ཁ";s:2:"bn";s:21:"བོད་ཡིག";s:2:"bo";s:24:"བོད་སྐད་";s:2:"bo";s:15:"བོད་ཁ";s:2:"bo";s:39:"བྷོས་ནི་ཡཱན་ཁ";s:2:"bs";s:51:"བྲི་ཊིཤ་ཨིང་ལིཤ་ཁ";s:5:"en-gb";s:18:"བཱསཀ་ཁ";s:2:"eu";s:24:"བར་མིས་ཁ";s:2:"my";s:75:"བྲ་ཛི་ལི་ཡཱན་པོར་ཅུ་གིས་ཁ";s:5:"pt-br";s:12:"ጾንጋኛ";s:2:"ts";s:36:"བེཊ་ནཱ་མིས་ཁ";s:2:"vi";s:9:"瓦隆文";s:2:"wa";s:9:"瓦赖文";s:3:"war";s:9:"瓦瑞文";s:3:"war";s:9:"瓦伊文";s:3:"vai";s:12:"瓦拉莫文";s:3:"wal";s:9:"瓦绍文";s:3:"was";s:9:"瓦紹文";s:3:"was";s:9:"瓦尤文";s:3:"guc";s:12:"瓦尔瑟文";s:3:"wae";s:9:"瓦瑟文";s:3:"wae";}i:923;a:33:{s:22:"Λευκορωσικά";s:2:"be";s:45:"ནུབ་ཕྼི་སི་ཡན་ཁ";s:2:"fy";s:14:"Λόζμπαν";s:3:"jbo";s:9:"逻辑文";s:3:"jbo";s:16:"Λατινικά";s:2:"la";s:12:"Λαδίνο";s:3:"lad";s:30:"Λουξεμβουργιανά";s:2:"lb";s:16:"Λαζγκιάν";s:3:"lez";s:24:"Λιμβουργιανά";s:2:"li";s:16:"Λινγκάλα";s:2:"ln";s:16:"Λαοθιανά";s:2:"lo";s:8:"Λόζι";s:3:"loz";s:20:"Λιθουανικά";s:2:"lt";s:12:"Λουσάι";s:3:"lus";s:16:"Λετονικά";s:2:"lv";s:69:"ནོར་ཝེ་ཇི་ཡཱན་བོཀ་མཱལ་ཁ";s:2:"nb";s:21:"ནེ་པ་ལི";s:2:"ne";s:27:"ནེ་པཱལི་ཁ";s:2:"ne";s:21:"ནི་ཝ་རི";s:3:"new";s:30:"ནོ་ཝེ་སྐད།";s:2:"nn";s:63:"ནོར་ཝེ་ཇི་ཡཱན་ནོརསཀ་ཁ";s:2:"nn";s:42:"ནོར་ཝི་ཇི་ཡན་ཁ";s:2:"no";s:12:"Λάνγκι";s:3:"lag";s:12:"Λακότα";s:3:"lkt";s:29:"Λούμπα-Κατάνγκα";s:2:"lu";s:27:"Λούμπα-Λουλούα";s:3:"lua";s:8:"Λούο";s:3:"luo";s:12:"Λουχία";s:3:"luy";s:19:"Λούλε Σάμι";s:3:"smj";s:10:"Λάχδα";s:3:"lah";s:10:"Λάμπα";s:3:"lam";s:16:"Λουισένο";s:3:"lui";s:12:"Λούντα";s:3:"lun";}i:505;a:88:{s:18:"ベラルーシ語";s:2:"be";s:48:"ベラルーシ語(タラシケヴィツァ)";s:8:"be-x-old";s:15:"ベンガル語";s:2:"bn";s:18:"סעבואַניש";s:3:"ceb";s:40:"סלאבית כנסייתית עתיקה";s:2:"cu";s:23:"סורבית נמוכה";s:3:"dsb";s:12:"ספרדית";s:2:"es";s:23:"סקאטיש געליש";s:2:"gd";s:23:"סורבית גבוהה";s:3:"hsb";s:19:"סיצ׳ואן יי";s:2:"ii";s:55:"නෝවේජියානු බොක්මාල්";s:2:"nb";s:15:"නේපාල";s:2:"ne";s:70:"නොවේර්ජියානු නයිනෝර්ස්ක්";s:2:"nn";s:23:"סוטו הצפונית";s:3:"nso";s:14:"סנסקריט";s:2:"sa";s:18:"סאַנסקריט";s:2:"sa";s:8:"סאחה";s:3:"sah";s:12:"סאנטלי";s:3:"sat";s:14:"סרדינית";s:2:"sc";s:14:"סאַרדיש";s:2:"sc";s:20:"סיציליאנית";s:3:"scn";s:22:"סיציליאַניש";s:3:"scn";s:12:"סקוטית";s:3:"sco";s:10:"סקאטס";s:3:"sco";s:14:"סינדהית";s:2:"sd";s:12:"סינדהי";s:2:"sd";s:8:"סנגו";s:2:"sg";s:23:"סרבו-קרואטית";s:2:"sh";s:28:"סערבא־קראאַטיש";s:2:"sh";s:12:"סינהלה";s:2:"si";s:18:"סינהאַליש";s:2:"si";s:14:"סלובקית";s:2:"sk";s:20:"סלאוואַקיש";s:2:"sk";s:14:"סלובנית";s:2:"sl";s:18:"סלאוועניש";s:2:"sl";s:12:"סמואית";s:2:"sm";s:20:"סאַמאאַניש";s:2:"sm";s:21:"סאמי דרומית";s:3:"sma";s:12:"סומלית";s:2:"so";s:16:"סאמאַליש";s:2:"so";s:10:"סרבית";s:2:"sr";s:12:"סערביש";s:2:"sr";s:21:"סרנאן טונגו";s:3:"srn";s:16:"סיסוואטי";s:2:"ss";s:12:"ססות׳ו";s:2:"st";s:14:"סונדנית";s:2:"su";s:16:"סווהילית";s:2:"sw";s:20:"סוואַהיליש";s:2:"sw";s:12:"ベンダ語";s:2:"ve";s:15:"ベトナム語";s:2:"vi";s:10:"סינית";s:2:"zh";s:23:"סינית מפושטת";s:7:"zh-hans";s:25:"סינית מסורתית";s:7:"zh-hant";s:44:"නවීන සම්මත අරාබි";s:6:"ar-001";s:12:"ベンバ語";s:3:"bem";s:9:"ベナ語";s:3:"bez";s:18:"නොම්බා";s:3:"jgo";s:12:"නාමා";s:3:"naq";s:15:"නොයර්";s:3:"nus";s:24:"නයන්කොළේ";s:3:"nyn";s:12:"סמבורו";s:3:"saq";s:10:"סאנגו";s:3:"sbp";s:6:"סנה";s:3:"seh";s:19:"סקולט סאמי";s:3:"sms";s:35:"סווהילי קונגולטזית";s:3:"swc";s:37:"නොදන්නා භාෂාව";s:3:"und";s:8:"סוגה";s:3:"xog";s:41:"ספרדית לטינו־אמריקאית";s:6:"es-419";s:29:"ספרדית אירופאית";s:5:"es-es";s:10:"סידמו";s:3:"sid";s:12:"ベジャ語";s:3:"bej";s:14:"סיקסיקה";s:3:"bla";s:12:"סלאבית";s:3:"den";s:14:"סנדאווה";s:3:"sad";s:8:"ססאק";s:3:"sas";s:10:"סלקופ";s:3:"sel";s:14:"סונינקה";s:3:"snk";s:14:"סוגדיאן";s:3:"sog";s:6:"סרר";s:3:"srr";s:12:"סוקומה";s:3:"suk";s:8:"סוסו";s:3:"sus";s:14:"סומעריש";s:3:"sux";s:23:"סירית קלאסית";s:3:"syc";s:10:"סורית";s:3:"syr";s:15:"ベタウィ語";s:3:"bew";s:29:"ספרדית מקסיקנית";s:5:"es-mx";s:8:"סנקה";s:3:"see";s:8:"סאהו";s:3:"ssy";}i:296;a:1:{s:15:"벨라루스어";s:2:"be";}i:776;a:52:{s:30:"ເບລາຣັສຊຽນ";s:2:"be";s:24:"ເບັງກາລີ";s:2:"bn";s:18:"ເບຣຕັນ";s:2:"br";s:9:"ເຊກ";s:2:"cs";s:9:"ເວວ";s:2:"cy";s:24:"ເຢຍລະມັນ";s:2:"de";s:33:"ເອສເປີຣັນໂຕ";s:2:"eo";s:24:"ເອສໂຕນຽນ";s:2:"et";s:18:"ເປີຊຽນ";s:2:"fa";s:40:"ເວສເທີນ ຟຣິຊຽນ";s:2:"fy";s:18:"ເຮົາຊາ";s:2:"ha";s:21:"ເຮິຮິໂຣ";s:2:"hz";s:21:"ເຊສວຍຢີ";s:2:"ii";s:21:"ເກົາຫລີ";s:2:"ko";s:18:"ເຄີດິສ";s:2:"ku";s:18:"ເກຍກີສ";s:2:"ky";s:15:"ເອີຍາ";s:3:"myv";s:64:"ເຢຍລະມັນຕ່ຳ ແຊກຊອນຕໍ່ຳ";s:3:"nds";s:18:"ເນປາລີ";s:2:"ne";s:27:"ເອັນດອງກາ";s:2:"ng";s:31:"ເຊີໂບ-ໂກເຊຍ";s:2:"sh";s:18:"ເຊີບຽນ";s:2:"sr";s:18:"ເຕລູກູ";s:2:"te";s:15:"ເຕຕູມ";s:3:"tet";s:24:"ເທີກເມັນ";s:2:"tk";s:24:"ເຕສະວານາ";s:2:"tn";s:18:"ເທີຄິຊ";s:2:"tr";s:21:"ເຕຊອງກາ";s:2:"ts";s:15:"ເວນດາ";s:2:"ve";s:18:"ເບັມບາ";s:3:"bem";s:18:"ເອັມບູ";s:3:"ebu";s:12:"ເມຣູ";s:3:"mer";s:12:"ເມທາ";s:3:"mgo";s:42:"ເອັນເດເບເລເໜືອ";s:2:"nd";s:18:"ເອັນໂກ";s:3:"nqo";s:9:"ເນີ";s:3:"nus";s:12:"ເຕໂຊ";s:3:"teo";s:37:"ເຄເນດຽນ ຝຣັ່ງ";s:5:"fr-ca";s:18:"ເອດີຮິ";s:3:"ady";s:18:"ເດລາວາ";s:3:"del";s:42:"ເຢຍລະມັນສູງກາງ";s:3:"gmh";s:48:"ເຢຍລະມັນສູງໂບຮານ";s:3:"goh";s:15:"ເມນເດ";s:3:"men";s:36:"ເນວາດັ້ງເດີມ";s:3:"nwc";s:33:"ເປີເຊຍໂບຮານ";s:3:"peo";s:18:"ເຊນຄັບ";s:3:"sel";s:15:"ເຊເລີ";s:3:"srr";s:18:"ເຕເລໂນ";s:3:"ter";s:15:"ເຢົ້າ";s:3:"yao";s:18:"ເຊນາກາ";s:3:"zen";s:21:"ເມດູມບາ";s:3:"byv";s:52:"ເມັກຊິກັນ ສະແປນນິຊ";s:5:"es-mx";}i:357;a:24:{s:24:"वेलारूसी";s:2:"be";s:15:"वेल्श";s:2:"cy";s:21:"वर्मेली";s:2:"my";s:31:"Սերբա-Խորվաթերեն";s:2:"sh";s:12:"Սեսոտո";s:2:"st";s:15:"विघुर";s:2:"ug";s:18:"वेन्दा";s:2:"ve";s:21:"व्हेंदा";s:2:"ve";s:24:"वियतनामी";s:2:"vi";s:30:"व्हिएतनामी";s:2:"vi";s:21:"वोलापुक";s:2:"vo";s:15:"वॉटिक";s:3:"vot";s:21:"वाल्लून";s:2:"wa";s:15:"वालून";s:2:"wa";s:12:"वारै";s:3:"war";s:12:"वारे";s:3:"war";s:18:"वोलोफ़";s:2:"wo";s:15:"वोलोफ";s:2:"wo";s:15:"वुलुफ";s:2:"wo";s:34:"विविध भाषाएँ";s:3:"mul";s:9:"वाई";s:3:"vai";s:15:"वुंजो";s:3:"vun";s:15:"वलामो";s:3:"wal";s:12:"वाशो";s:3:"was";}i:41;a:32:{s:22:"Бөлөрүүстүү";s:2:"be";s:16:"Белорусӣ";s:2:"be";s:20:"Булҕаардыы";s:2:"bg";s:14:"Булғорӣ";s:2:"bg";s:12:"Биҳарӣ";s:2:"bh";s:14:"Бојпури";s:3:"bho";s:14:"Бислама";s:2:"bi";s:18:"Бенгаллыы";s:2:"bn";s:14:"Бенгалӣ";s:2:"bn";s:14:"Бретонӣ";s:2:"br";s:20:"Босныйалыы";s:2:"bs";s:16:"Босниягӣ";s:2:"bs";s:24:"Бугинежански";s:3:"bug";s:12:"威尔士文";s:2:"cy";s:12:"威爾斯文";s:2:"cy";s:10:"Баскӣ";s:2:"eu";s:20:"Бэҥгиэрдии";s:2:"hu";s:23:"Байни забонӣ";s:2:"ia";s:41:"Бразилски португалски";s:5:"pt-br";s:12:"威尼斯文";s:3:"vec";s:15:"យរូបា";s:2:"yo";s:8:"Блин";s:3:"byn";s:12:"Балучи";s:3:"bal";s:24:"Балинезијски";s:3:"ban";s:8:"Баса";s:3:"bas";s:8:"Беја";s:3:"bej";s:10:"Бикол";s:3:"bik";s:8:"Бини";s:3:"bin";s:8:"Брај";s:3:"bra";s:12:"Буриат";s:3:"bua";s:25:"동부 프리슬란드어";s:3:"frs";s:20:"Блисимболи";s:3:"zbl";}i:914;a:19:{s:20:"Βουλγαρικά";s:2:"bg";s:18:"Βρετονικά";s:2:"br";s:16:"Βοσνιακά";s:2:"bs";s:14:"Βασκικά";s:2:"eu";s:29:"Βόρεια Φριζιανά";s:3:"frr";s:18:"Βιρμανικά";s:2:"my";s:21:"Βόρεια Σόθο";s:3:"nso";s:21:"Βόρεια Σάμι";s:2:"se";s:30:"ཊཱརཀ་མེན་ཁ";s:2:"tk";s:27:"ཊོང་གྷན་ཁ";s:2:"to";s:27:"ཊཱར་ཀིཤ་ཁ";s:2:"tr";s:18:"ཊ་ཊར་ཁ";s:2:"tt";s:10:"Βένδα";s:2:"ve";s:20:"Βιετναμικά";s:2:"vi";s:14:"Βόλαπικ";s:2:"vo";s:10:"Βότικ";s:3:"vot";s:6:"Βάι";s:3:"vai";s:14:"Βούντζο";s:3:"vun";s:12:"Βάλσερ";s:3:"wae";}i:502;a:64:{s:18:"ブルガリア語";s:2:"bg";s:15:"ブルトン語";s:2:"br";s:24:"ブラーフーイー語";s:3:"brh";s:9:"ブギ語";s:3:"bug";s:18:"ブリヤート語";s:3:"bua";s:24:"מערב־פֿריזיש";s:2:"fy";s:10:"מאנית";s:2:"gv";s:12:"מאַנקס";s:2:"gv";s:8:"מיזא";s:3:"lus";s:16:"מאיטילית";s:3:"mai";s:10:"מוקשה";s:3:"mdf";s:12:"מלגשית";s:2:"mg";s:12:"מרשאלס";s:2:"mh";s:12:"מאורית";s:2:"mi";s:14:"מאַאריש";s:2:"mi";s:18:"מיננגקבאו";s:3:"min";s:14:"מקדונית";s:2:"mk";s:20:"מאַקעדאניש";s:2:"mk";s:14:"מלאיאלם";s:2:"ml";s:26:"מאַלאַיאַלאַם";s:2:"ml";s:16:"מונגולית";s:2:"mn";s:16:"מאנגאליש";s:2:"mn";s:10:"מרטהי";s:2:"mr";s:10:"מלאית";s:2:"ms";s:10:"מלטית";s:2:"mt";s:18:"מאַלטעזיש";s:2:"mt";s:16:"מירנדזית";s:3:"mwl";s:23:"מערב פֿלעמיש";s:3:"vls";s:21:"מצרית עתיקה";s:3:"egy";s:12:"מצ׳אמה";s:3:"jmc";s:12:"מקונדה";s:3:"kde";s:12:"מאסאית";s:3:"mas";s:6:"מרו";s:3:"mer";s:16:"מוריסיין";s:3:"mfe";s:19:"מקואה-מיטו";s:3:"mgh";s:6:"מטא";s:3:"mgo";s:10:"מוהוק";s:3:"moh";s:14:"מונדאנג";s:3:"mua";s:17:"מספר שפות";s:3:"mul";s:14:"מולדבית";s:5:"ro-md";s:12:"ブラジ語";s:3:"bra";s:8:"מארי";s:3:"chm";s:21:"מיטל ענגליש";s:3:"enm";s:24:"מזרח־פֿריזיש";s:3:"frs";s:27:"מיטל הויכדויטש";s:3:"gmh";s:8:"מונג";s:3:"hmn";s:10:"מונגו";s:3:"lol";s:12:"מדורסה";s:3:"mad";s:14:"מאגאהית";s:3:"mag";s:10:"מקסאר";s:3:"mak";s:14:"מנדינגו";s:3:"man";s:8:"מאבא";s:3:"mde";s:10:"מנדאר";s:3:"mdr";s:8:"מנדה";s:3:"men";s:10:"מיקמק";s:3:"mic";s:10:"מנצ׳ו";s:3:"mnc";s:16:"מניפורית";s:3:"mni";s:8:"מוסי";s:3:"mos";s:14:"מרווארי";s:3:"mwr";s:21:"ブリスシンボル";s:3:"zbl";s:9:"ブル語";s:3:"bum";s:12:"מדומבה";s:3:"byv";s:8:"מאפא";s:3:"maf";s:10:"מאיין";s:3:"mye";}i:520;a:10:{s:15:"불가리아어";s:2:"bg";s:18:"වේල්ස්";s:2:"cy";s:27:"වියට්නාම්";s:2:"vi";s:18:"වොලොෆ්";s:2:"wo";s:12:"ヨルバ語";s:2:"yo";s:9:"වයි";s:3:"vai";s:18:"වුන්ජෝ";s:3:"vun";s:78:"වාග් විද්‍යා අන්තර්ගතයක් නැත";s:3:"zxx";s:12:"吐瓦魯文";s:3:"tvl";s:9:"불루어";s:3:"bum";}i:117;a:242:{s:16:"urunyabuligariya";s:2:"bg";s:25:"భోజ్ పూరి";s:3:"bho";s:4:"uels";s:2:"cy";s:9:"uellsisht";s:2:"cy";s:7:"uelscha";s:2:"cy";s:18:"ပါရှန်";s:2:"fa";s:21:"ပြင်သစ်";s:2:"fr";s:11:"uhelsorabeg";s:3:"hsb";s:13:"upper sorbian";s:3:"hsb";s:13:"uewersorbesch";s:3:"hsb";s:7:"ungarsk";s:2:"hu";s:9:"ungarisch";s:2:"hu";s:6:"ungari";s:2:"hu";s:6:"unkari";s:2:"hu";s:8:"ungarskt";s:2:"hu";s:9:"ungáiris";s:2:"hu";s:8:"ungairis";s:2:"hu";s:9:"ungverska";s:2:"hu";s:9:"ungherese";s:2:"hu";s:10:"unjarresch";s:2:"hu";s:9:"ungaresch";s:2:"hu";s:7:"ungāru";s:2:"hu";s:8:"ungeriż";s:2:"hu";s:9:"ungaarsch";s:2:"hu";s:8:"ungarais";s:2:"hu";s:12:"ungárgiella";s:2:"hu";s:8:"ungerska";s:2:"hu";s:22:"ururimi gahuzamiryango";s:2:"ia";s:12:"uruhuzandimi";s:2:"ie";s:10:"urijština";s:2:"or";s:10:"uríjčina";s:2:"or";s:24:"ပန်ချာပီ";s:2:"pa";s:12:"ပါဠိ";s:2:"pi";s:18:"ပိုလန်";s:2:"pl";s:24:"ပါရှ်တို";s:2:"ps";s:24:"ပေါ်တူဂီ";s:2:"pt";s:7:"ulahça";s:3:"rup";s:13:"uusmelaneesia";s:3:"tpi";s:6:"udmurt";s:3:"udm";s:11:"udmurt dili";s:3:"udm";s:12:"udmurtština";s:3:"udm";s:10:"udmurtisch";s:3:"udm";s:9:"udmurtgbe";s:3:"udm";s:7:"udmurdi";s:3:"udm";s:8:"udmurtti";s:3:"udm";s:9:"udmairtis";s:3:"udm";s:9:"udmurtski";s:3:"udm";s:10:"udmurtesch";s:3:"udm";s:8:"udmurtų";s:3:"udm";s:7:"udmurtu";s:3:"udm";s:9:"udmurtsch";s:3:"udm";s:8:"udmurcki";s:3:"udm";s:13:"udmurtagiella";s:3:"udm";s:11:"udmurtčina";s:3:"udm";s:13:"udmurtščina";s:3:"udm";s:10:"udmurtiska";s:3:"udm";s:9:"udmurtça";s:3:"udm";s:6:"uighur";s:2:"ug";s:5:"uigur";s:2:"ug";s:6:"uyğur";s:2:"ug";s:8:"ujgurski";s:2:"ug";s:11:"ujgurština";s:2:"ug";s:8:"uygurisk";s:2:"ug";s:9:"uigurisch";s:2:"ug";s:12:"ujguršćina";s:2:"ug";s:9:"uighurgbe";s:2:"ug";s:6:"uyghur";s:2:"ug";s:6:"ujgura";s:2:"ug";s:7:"uiguuri";s:2:"ug";s:9:"uigurrera";s:2:"ug";s:10:"uigiúiris";s:2:"ug";s:8:"ugiranci";s:2:"ug";s:5:"ujgur";s:2:"ug";s:6:"uiguro";s:2:"ug";s:13:"uj’juuersch";s:2:"ug";s:9:"uiguresch";s:2:"ug";s:8:"uigūrų";s:2:"ug";s:6:"uiguru";s:2:"ug";s:8:"uigurisk";s:2:"ug";s:9:"uiguursch";s:2:"ug";s:10:"uigur simi";s:2:"ug";s:7:"uiguric";s:2:"ug";s:7:"uigură";s:2:"ug";s:10:"ujgurčina";s:2:"ug";s:12:"ujgurščina";s:2:"ug";s:6:"ujgure";s:2:"ug";s:9:"uiguriska";s:2:"ug";s:7:"uygurca";s:2:"ug";s:10:"uygʻurcha";s:2:"ug";s:22:"uyghur (arabic script)";s:7:"ug-arab";s:9:"uyghurche";s:7:"ug-latn";s:21:"uyghur (latin script)";s:7:"ug-latn";s:10:"ukren kasa";s:2:"uk";s:7:"ucraín";s:2:"uk";s:7:"ukrayna";s:2:"uk";s:12:"ukɛrɛnikan";s:2:"uk";s:8:"ukraineg";s:2:"uk";s:10:"ukrajinski";s:2:"uk";s:10:"ucraïnès";s:2:"uk";s:13:"ukrajinština";s:2:"uk";s:8:"ukrainsk";s:2:"uk";s:10:"ukrainisch";s:2:"uk";s:13:"ukrainšćina";s:2:"uk";s:9:"ukraingbe";s:2:"uk";s:9:"ukrainian";s:2:"uk";s:7:"ukraina";s:2:"uk";s:9:"ucraniano";s:2:"uk";s:9:"ukrainera";s:2:"uk";s:10:"ukereneere";s:2:"uk";s:9:"ukrainskt";s:2:"uk";s:9:"ukrainien";s:2:"uk";s:6:"ucrain";s:2:"uk";s:9:"ucràinis";s:2:"uk";s:8:"ucraíno";s:2:"uk";s:6:"ukrán";s:2:"uk";s:10:"ukrainiano";s:2:"uk";s:10:"ukureenị";s:2:"uk";s:7:"ucraino";s:2:"uk";s:13:"ukrainimiusut";s:2:"uk";s:10:"ukrainesch";s:2:"uk";s:13:"ukrainiečių";s:2:"uk";s:8:"ukraiņu";s:2:"uk";s:7:"ukraine";s:2:"uk";s:8:"ukranjan";s:2:"uk";s:9:"ukrainsch";s:2:"uk";s:10:"ukraiński";s:2:"uk";s:14:"ucraniano simi";s:2:"uk";s:8:"ucranais";s:2:"uk";s:11:"ucraineană";s:2:"uk";s:13:"ukrainagiella";s:2:"uk";s:7:"ukrêni";s:2:"uk";s:12:"ukrajinčina";s:2:"uk";s:14:"ukrajinščina";s:2:"uk";s:10:"ukrainisht";s:2:"uk";s:9:"ukrainska";s:2:"uk";s:9:"ukraynaca";s:2:"uk";s:9:"ukraincha";s:2:"uk";s:9:"urdu kasa";s:2:"ur";s:2:"ur";s:2:"ur";s:4:"urdu";s:2:"ur";s:8:"urudukan";s:2:"ur";s:5:"urdú";s:2:"ur";s:9:"urdština";s:2:"ur";s:11:"urdušćina";s:2:"ur";s:7:"urdugbe";s:2:"ur";s:5:"urduo";s:2:"ur";s:5:"urdua";s:2:"ur";s:7:"urdúis";s:2:"ur";s:6:"urdski";s:2:"ur";s:5:"urudu";s:2:"ur";s:10:"urdumiutut";s:2:"ur";s:10:"urdu/hindi";s:2:"ur";s:5:"urdų";s:2:"ur";s:9:"urdu simi";s:2:"ur";s:10:"urdugiella";s:2:"ur";s:8:"urdčina";s:2:"ur";s:12:"urdujščina";s:2:"ur";s:5:"urduu";s:2:"ur";s:6:"urduca";s:2:"ur";s:7:"urducha";s:2:"ur";s:14:"uzbequistanín";s:2:"uz";s:8:"uzbečki";s:2:"uz";s:5:"uzbek";s:2:"uz";s:10:"uzbečtina";s:2:"uz";s:8:"usbekisk";s:2:"uz";s:9:"usbekisch";s:2:"uz";s:12:"usbekšćina";s:2:"uz";s:13:"uzbekistangbe";s:2:"uz";s:6:"uzbeka";s:2:"uz";s:6:"uzbeko";s:2:"uz";s:6:"usbeki";s:2:"uz";s:8:"uzbekera";s:2:"uz";s:7:"uzbekki";s:2:"uz";s:9:"uzbekiskt";s:2:"uz";s:5:"uzbec";s:2:"uz";s:8:"usbagais";s:2:"uz";s:6:"uzbeco";s:2:"uz";s:12:"uzbekšćina";s:2:"uz";s:6:"usbeco";s:2:"uz";s:11:"ußbeekesch";s:2:"uz";s:9:"usbekesch";s:2:"uz";s:7:"uzbekų";s:2:"uz";s:6:"uzbeku";s:2:"uz";s:10:"uzbekistan";s:2:"uz";s:6:"użbek";s:2:"uz";s:9:"usbeeksch";s:2:"uz";s:7:"uzbecki";s:2:"uz";s:7:"usbeque";s:2:"uz";s:11:"uzbeko simi";s:2:"uz";s:5:"usbec";s:2:"uz";s:7:"uzbecă";s:2:"uz";s:11:"uzbeščina";s:2:"uz";s:7:"usbakis";s:2:"uz";s:6:"uzbeke";s:2:"uz";s:9:"uzbekiska";s:2:"uz";s:16:"upper franconian";s:3:"vmf";s:7:"uólofe";s:2:"wo";s:8:"ulufisht";s:2:"wo";s:12:"都阿拉文";s:3:"dua";s:12:"ukendt sprog";s:3:"und";s:19:"unbestimmte sprache";s:3:"und";s:16:"unknown language";s:3:"und";s:11:"ukjent mál";s:3:"und";s:23:"unbeschtimmti schpraach";s:3:"und";s:13:"ukjent språk";s:3:"und";s:18:"unbestimmte spraak";s:3:"und";s:16:"ulimi olungaziwa";s:3:"und";s:22:"uten språklig innhold";s:3:"zxx";s:22:"utan språkleg innhald";s:3:"zxx";s:28:"u.s.dukɔmetɔwo ƒe yevugbe";s:5:"en-us";s:11:"usona angla";s:5:"en-us";s:39:"ပြင်သစ်ဟောင်း";s:3:"fro";s:20:"uchel almaeneg canol";s:3:"gmh";s:40:"ပါရှန် အဟောင်း";s:3:"peo";s:10:"ugaríticu";s:3:"uga";s:13:"uqaritik dili";s:3:"uga";s:9:"ugaritski";s:3:"uga";s:9:"ugarític";s:3:"uga";s:12:"ugaritština";s:3:"uga";s:10:"ugaristisk";s:3:"uga";s:10:"ugaritisch";s:3:"uga";s:8:"ugaritic";s:3:"uga";s:10:"ugarítico";s:3:"uga";s:7:"ugariti";s:3:"uga";s:6:"ugarit";s:3:"uga";s:9:"ugaritico";s:3:"uga";s:10:"ugaritesch";s:3:"uga";s:11:"ugaritiešu";s:3:"uga";s:9:"ugaritiku";s:3:"uga";s:9:"ugaritisk";s:3:"uga";s:9:"ugaritsch";s:3:"uga";s:8:"ugarycki";s:3:"uga";s:10:"ugaritică";s:3:"uga";s:11:"ugaritčina";s:3:"uga";s:15:"ugaritski jezik";s:3:"uga";s:10:"ugaritiska";s:3:"uga";s:11:"ugarit dili";s:3:"uga";s:7:"umbundu";s:3:"umb";s:12:"umbundu dili";s:3:"umb";s:13:"umbundščina";s:3:"umb";s:6:"uaúis";s:3:"guc";s:17:"ugro-finski jezik";s:3:"fiu";}i:445;a:3:{s:15:"保加利亚文";s:2:"bg";s:15:"保加利亞文";s:2:"bg";s:9:"纽埃文";s:3:"niu";}i:349;a:71:{s:21:"भोजपुरी";s:3:"bho";s:24:"കറ്റാലാൻ";s:2:"ca";s:15:"കമോറോ";s:2:"ch";s:27:"കോർസിക്കൻ";s:2:"co";s:12:"ക്രീ";s:2:"cr";s:49:"ക്രിമിയൻ ടർക്കിഷ്";s:3:"crh";s:27:"കാഷുബിയാൻ";s:3:"csb";s:46:"കനേഡിയൻ ഇംഗ്ലീഷ്";s:5:"en-ca";s:30:"ക്രൊയേഷ്യൻ";s:2:"hr";s:31:"കര-കാൽപ്പക്";s:3:"kaa";s:12:"കബൈൽ";s:3:"kab";s:24:"കബർഡിയാൻ";s:3:"kbd";s:15:"കോംഗോ";s:2:"kg";s:18:"കികൂയു";s:2:"ki";s:24:"ക്വാന്യമ";s:2:"kj";s:15:"കസാഖ്";s:2:"kk";s:36:"കലാല്ലിസട്ട്";s:2:"kl";s:15:"കന്നഡ";s:2:"kn";s:18:"കൊറിയൻ";s:2:"ko";s:46:"കോമി-പെർമ്യാക്ക്";s:3:"koi";s:15:"കനൂറി";s:2:"kr";s:28:"കരചൈ-ബാൽകർ";s:3:"krc";s:27:"കാശ്‌മീരി";s:2:"ks";s:30:"കൊളോഞ്ഞിയൻ";s:3:"ksh";s:27:"കുർദ്ദിഷ്";s:2:"ku";s:12:"കോമി";s:2:"kv";s:21:"കോർണിഷ്";s:2:"kw";s:21:"കിർഗിസ്";s:2:"ky";s:24:"ക്രീക്ക്";s:3:"mus";s:27:"ക്വെച്ചുവ";s:2:"qu";s:36:"കിന്യാർവാണ്ട";s:2:"rw";s:5:"ŝona";s:2:"sn";s:24:"भियतनामी";s:2:"vi";s:18:"കൽമൈക്";s:3:"xal";s:27:"കാന്റണീസ്";s:3:"yue";s:30:"കോപ്റ്റിക്";s:3:"cop";s:9:"കംബ";s:3:"kam";s:36:"കബുവെർദിയാനു";s:3:"kea";s:28:"കൊയ്റ ചീനി";s:3:"khq";s:24:"കലെഞ്ഞിൻ";s:3:"kln";s:21:"കൊങ്കണി";s:3:"kok";s:18:"കുരുഖ്";s:3:"kru";s:24:"ക്വാസിയോ";s:3:"nmg";s:24:"ക്വിച്ചെ";s:3:"quc";s:9:"蘭博文";s:3:"rof";s:49:"കൊയ്റാബൊറോ സെന്നി";s:3:"ses";s:24:"കൊമോറിയൻ";s:3:"swb";s:40:"കോംഗോ സ്വാഹിലി";s:3:"swc";s:24:"ക്ലിംഗോൺ";s:3:"tlh";s:9:"भाइ";s:3:"vai";s:18:"भुन्जो";s:3:"vun";s:74:"भाषावैज्ञानिक सामग्री नाही";s:3:"zxx";s:47:"भाषिक सामग्री छैन";s:3:"zxx";s:43:"കനേഡിയൻ ഫ്രഞ്ച്";s:5:"fr-ca";s:12:"കാഡോ";s:3:"cad";s:18:"കാരിബ്";s:3:"car";s:15:"കാചിൻ";s:3:"kac";s:12:"കാവി";s:3:"kaw";s:18:"കനെംബു";s:3:"kbl";s:12:"കോറോ";s:3:"kfo";s:21:"ക്ലിംഗൻ";s:3:"kmb";s:21:"കൊസറേയൻ";s:3:"kos";s:21:"കപെല്ലേ";s:3:"kpe";s:21:"കരീലിയൻ";s:3:"krl";s:18:"കുമൈക്";s:3:"kum";s:18:"കുതേനൈ";s:3:"kut";s:9:"蘭巴文";s:3:"lam";s:49:"ക്ലാസിക്കൽ നേവാരി";s:3:"nwc";s:9:"കോം";s:3:"bkm";s:12:"കയൂഗ";s:3:"cay";s:15:"കക്കോ";s:3:"kkj";}i:477;a:13:{s:21:"ভোজপুরি";s:3:"bho";s:12:"ソマリ語";s:2:"so";s:18:"ভেন্ডা";s:2:"ve";s:30:"ভিয়েতনামী";s:2:"vi";s:21:"ভোলাপুক";s:2:"vo";s:15:"ভোটিক";s:3:"vot";s:9:"ভাই";s:3:"vai";s:18:"ভুঞ্জো";s:3:"vun";s:9:"ソガ語";s:3:"xog";s:74:"ভাষাভিত্তিক বিষয়বস্তু নেই";s:3:"zxx";s:70:"ඕස්ට්‍රේලියානු ඉංග්‍රීසි";s:5:"en-au";s:15:"ソニンケ語";s:3:"snk";s:12:"ソグド語";s:3:"sog";}i:733;a:14:{s:21:"ભોજપુરી";s:3:"bho";s:9:"哥特文";s:3:"got";s:9:"哥德文";s:3:"got";s:24:"ຕິກຣິນຢາ";s:2:"ti";s:21:"ຕາກາລອກ";s:2:"tl";s:18:"ຕຳບູກາ";s:3:"tum";s:21:"ຕາຮີຕຽນ";s:2:"ty";s:21:"ຕູວີນຽນ";s:3:"tyv";s:21:"ຕາຊາວັກ";s:3:"twq";s:36:"ຕູກີອອດໂຕມັນ";s:3:"ota";s:9:"ຕີວ";s:3:"tiv";s:18:"ຕູວາລູ";s:3:"tvl";s:9:"ຕີບ";s:3:"kcg";s:18:"ຕາໂລໂກ";s:3:"trv";}i:245;a:1:{s:21:"ಭೋಜಪುರಿ";s:3:"bho";}i:840;a:23:{s:15:"호즈푸리어";s:3:"bho";s:25:"የሶራኒ ኩርድኛ";s:3:"ckb";s:31:"የኦስትሪያ ጀርመን";s:5:"de-at";s:41:"የስዊዝ ከፍተኛ ጀርመንኛ";s:5:"de-ch";s:34:"የታችኛው ሶርቢያንኛ";s:3:"dsb";s:31:"የካናዳ እንግሊዝኛ";s:5:"en-ca";s:34:"የብሪቲሽ እንግሊዝኛ";s:5:"en-gb";s:28:"የምዕራብ ፍሪስኛ";s:2:"fy";s:25:"የስዊዝ ጀርመን";s:3:"gsw";s:34:"የላይኛው ሶርቢያንኛ";s:3:"hsb";s:28:"የኖርዌይ ቦክማል";s:2:"nb";s:34:"የኖርዌይ ናይኖርስክ";s:2:"nn";s:34:"የብራዚል ፖርቹጋልኛ";s:5:"pt-br";s:12:"夸西奥文";s:3:"nmg";s:12:"夸西奧文";s:3:"nmg";s:43:"የአውስትራሊያ እንግሊዝኛ";s:5:"en-au";s:34:"የአሜሪካ እንግሊዝኛ";s:5:"en-us";s:38:"የላቲን አሜሪካ ስፓኒሽ";s:6:"es-419";s:31:"የአውሮፓ እስፓንኛ";s:5:"es-es";s:31:"የካናዳ ፈረንሳይኛ";s:5:"fr-ca";s:31:"የስዊዝ ፈረንሳይኛ";s:5:"fr-ch";s:34:"የአውሮፓ ፖርቹጋልኛ";s:5:"pt-pt";s:9:"호탄어";s:3:"kho";}i:778;a:49:{s:18:"ໂບພູຣິ";s:3:"bho";s:37:"ໂຊຣານິ ເຄີດິຊ";s:3:"ckb";s:27:"ໂບດສລາວິກ";s:2:"cu";s:24:"ໂຄຣເອທຽນ";s:2:"hr";s:18:"ໂລບບັນ";s:3:"jbo";s:9:"ኪኩዩ";s:2:"ki";s:34:"ໂຄມີ-ເພີມຢັກ";s:3:"koi";s:24:"ໂຄລອກນຽນ";s:3:"ksh";s:12:"ໂຄມິ";s:2:"kv";s:15:"ኪርጊዝኛ";s:2:"ky";s:12:"ኪሩጋዚ";s:2:"ky";s:12:"ໂລຊິ";s:3:"loz";s:24:"ໂຊໂທເໜືອ";s:3:"nso";s:18:"ໂອໂຣໂມ";s:2:"om";s:18:"ໂອຣິຢາ";s:2:"or";s:15:"ໂປລິຊ";s:2:"pl";s:15:"ໂຣແມນ";s:2:"rm";s:21:"ໂຣແມນຽນ";s:2:"ro";s:24:"ኪንያርዋንድኛ";s:2:"rw";s:12:"ໂຊນາ";s:2:"sn";s:18:"ໂຊມາລີ";s:2:"so";s:21:"ໂຊໂທໃຕ້";s:2:"st";s:21:"ໂວລາພັກ";s:2:"vo";s:15:"ໂວຕິກ";s:3:"vot";s:12:"ໂຮຊາ";s:2:"xh";s:18:"ໂຢຣູບາ";s:2:"yo";s:12:"ໂບດູ";s:3:"brx";s:28:"ໂຈລາ-ຟອນຢີ";s:3:"dyo";s:12:"菲律宾文";s:3:"fil";s:12:"菲律賓文";s:3:"fil";s:12:"ໂມຫາ";s:3:"moh";s:6:"ኪቼ";s:3:"quc";s:21:"ໂມດາວຽນ";s:5:"ro-md";s:43:"ໂຄຍຣາໂບໂຣ ເຊນນິ";s:3:"ses";s:21:"ໂຄໂນຣຽນ";s:3:"swb";s:12:"ໂຊກາ";s:3:"xog";s:74:"ໂມຣັອກແຄນ ທາມາຊີກ ມາດຕະຖານ";s:3:"zgh";s:18:"ໂດກຣິບ";s:3:"dgr";s:27:"ໂກຣອນຕາໂຣ";s:3:"gor";s:12:"ໂຄໂລ";s:3:"kfo";s:15:"ໂຄຕັນ";s:3:"kho";s:12:"ໂນໂຣ";s:3:"nyo";s:21:"ໂອຈິບວາ";s:2:"oj";s:15:"ໂອແຊກ";s:3:"osa";s:39:"ໂປວອງຊານໂບຮານ";s:3:"pro";s:18:"ໂຣເມນີ";s:3:"rom";s:21:"ໂຊນິນກີ";s:3:"snk";s:24:"ໂຕເກເລົາ";s:3:"tkl";s:18:"ໂຄມາລາ";s:3:"bbj";}i:373;a:4:{s:27:"ഭോജ്‌പൂരി";s:3:"bho";s:15:"ഭാഫിയ";s:3:"ksf";s:85:"ഭാഷാപരമായ ഉള്ളടക്കമൊന്നുമില്ല";s:3:"zxx";s:9:"滕内文";s:3:"tem";}i:861;a:10:{s:21:"ଭୋଜପୁରୀ";s:3:"bho";s:18:"ଭୂଟାନୀ";s:2:"dz";s:9:"法罗文";s:2:"fo";s:9:"法羅文";s:2:"fo";s:6:"法文";s:2:"fr";s:25:"法蘭克-普羅旺斯文";s:3:"frp";s:18:"ଭେଣ୍ଡା";s:2:"ve";s:30:"ଭିଏତନାମିଜ୍";s:2:"vi";s:18:"ଭୋଟିକ୍";s:3:"vot";s:9:"ଭାଇ";s:3:"vai";}i:338;a:3:{s:15:"博杰普尔文";s:3:"bho";s:15:"博傑普爾文";s:3:"bho";s:9:"博多文";s:3:"brx";}i:706;a:1:{s:15:"ቢስላምኛ";s:2:"bi";}i:677;a:2:{s:12:"班亞爾文";s:3:"bjn";s:12:"班巴拉文";s:2:"bm";}i:164;a:1:{s:12:"밤바라어";s:2:"bm";}i:997;a:17:{s:24:"வங்காளம்";s:2:"bn";s:18:"வெல்ஷ்";s:2:"cy";s:52:"வடக்கு ஃப்ரிஸியான்";s:3:"frr";s:31:"வடக்கு சோதோ";s:3:"nso";s:28:"வடக்கு சமி";s:2:"se";s:18:"வென்டா";s:2:"ve";s:33:"வியட்நாமிஸ்";s:2:"vi";s:18:"வோட்க்";s:3:"vot";s:12:"வாரே";s:3:"war";s:9:"貝納文";s:3:"bez";s:37:"வடக்கு தெபெலே";s:2:"nd";s:6:"வை";s:3:"vai";s:18:"வுன்ஜோ";s:3:"vun";s:9:"貝扎文";s:3:"bej";s:18:"வாலாமோ";s:3:"wal";s:12:"வாஷோ";s:3:"was";s:12:"貝塔維文";s:3:"bew";}i:704;a:5:{s:15:"በንጋሊኛ";s:2:"bn";s:12:"哈萨克文";s:2:"kk";s:12:"哈薩克文";s:2:"kk";s:9:"ઐનુ";s:3:"ain";s:9:"멘데어";s:3:"men";}i:391;a:24:{s:12:"孟加拉文";s:2:"bn";s:22:"կատալաներեն";s:2:"ca";s:20:"կորսիկերեն";s:2:"co";s:35:"կանադական անգլերեն";s:5:"en-ca";s:18:"կաբիլերեն";s:3:"kab";s:16:"կիկույու";s:2:"ki";s:22:"կալաալիսուտ";s:2:"kl";s:14:"կաննադա";s:2:"kn";s:16:"կորեերեն";s:2:"ko";s:23:"կոմի-պերմյակ";s:3:"koi";s:16:"կոռներեն";s:2:"kw";s:47:"կենտրոնատլասյան թամազիխտ";s:3:"tzm";s:10:"կամբա";s:3:"kam";s:28:"կուբավերդիանու";s:3:"kea";s:19:"կոյրա չինի";s:3:"khq";s:16:"կալենջին";s:3:"kln";s:14:"կոնկանի";s:3:"kok";s:9:"朗吉文";s:3:"lag";s:12:"կվասիո";s:3:"nmg";s:8:"կիչե";s:3:"quc";s:29:"կոյրաբորո սեննի";s:3:"ses";s:31:"կոնգոյի սուահիլի";s:3:"swc";s:37:"կանադական ֆրանսերեն";s:5:"fr-ca";s:6:"孟文";s:3:"hmn";}i:722;a:49:{s:15:"ቲቤታንኛ";s:2:"bo";s:15:"ຊີເຄນ";s:2:"ce";s:18:"ຊີບູໂນ";s:3:"ceb";s:18:"ຊາມໍໂຣ";s:2:"ch";s:18:"ຊອກຕິວ";s:3:"cho";s:18:"ຊີໂຣກີ";s:3:"chr";s:21:"ຊີເຢນນີ";s:3:"chy";s:15:"ຊູວາຊ";s:2:"cv";s:36:"ຊໍບຽນຕໍ່ກວ່າ";s:3:"dsb";s:33:"ຊຸບເປີຊໍບຽນ";s:3:"hsb";s:12:"ຊາກາ";s:3:"sah";s:21:"ຊານທາລິ";s:3:"sat";s:21:"ຊີຊິລີນ";s:3:"scn";s:24:"ຊາມິເໜືອ";s:2:"se";s:15:"ຊາມົວ";s:2:"sm";s:21:"ຊາມິໃຕ້";s:3:"sma";s:15:"ຊຣາຕິ";s:2:"ss";s:27:"ຊຸນແດນນີສ";s:2:"su";s:21:"ຊວາຮີລິ";s:2:"sw";s:12:"ຊວາງ";s:2:"za";s:12:"ຊູລູ";s:2:"zu";s:12:"ຊີກາ";s:3:"cgg";s:12:"ຊາມາ";s:3:"dje";s:21:"ຊຳບາລ້າ";s:3:"ksb";s:18:"ຊຳບູຣູ";s:3:"saq";s:15:"ຊານກູ";s:3:"sbp";s:12:"ຊີນາ";s:3:"seh";s:18:"ຊິດາໂມ";s:3:"sid";s:21:"ຊິກຊິກາ";s:3:"bla";s:15:"ຊິບຊາ";s:3:"chb";s:18:"ຊາກາໄຕ";s:3:"chg";s:15:"ຊູເກດ";s:3:"chk";s:30:"ຊີນຸກຈາກອນ";s:3:"chn";s:24:"ຊີພິວຢານ";s:3:"chp";s:18:"ຊີເລັບ";s:3:"den";s:18:"ຊັນດາວ";s:3:"sad";s:15:"ຊາຊັກ";s:3:"sas";s:18:"ຊອກດິນ";s:3:"sog";s:21:"ຊູຄູມ້າ";s:3:"suk";s:12:"ຊູຊູ";s:3:"sus";s:24:"ຊູເມີເລຍ";s:3:"sux";s:48:"ຊີເລຍແບບດັ້ງເດີມ";s:3:"syc";s:15:"ຊີເລຍ";s:3:"syr";s:24:"ຊີມຊີແອນ";s:3:"tsi";s:21:"ຊາໂປແຕບ";s:3:"zap";s:12:"ຊູນີ";s:3:"zun";s:12:"ຊາຊາ";s:3:"zza";s:18:"ຊີນີກາ";s:3:"see";s:12:"ຊາໂຮ";s:3:"ssy";}i:468;a:25:{s:21:"তিব্বতি";s:2:"bo";s:12:"ゴート語";s:3:"got";s:24:"তাচেলহিত";s:3:"shi";s:15:"তামিল";s:2:"ta";s:18:"তেলেগু";s:2:"te";s:15:"তেতুম";s:3:"tet";s:15:"তাজিক";s:2:"tg";s:9:"태국어";s:2:"th";s:30:"তিগরিনিয়া";s:2:"ti";s:27:"তুর্কমেনী";s:2:"tk";s:18:"তাগালগ";s:2:"tl";s:18:"তুর্কী";s:2:"tr";s:15:"তাতার";s:2:"tt";s:24:"তুম্বুকা";s:3:"tum";s:30:"তাহিতিয়ান";s:2:"ty";s:15:"তাইতা";s:3:"dav";s:12:"তেসো";s:3:"teo";s:27:"তাসাওয়াক";s:3:"twq";s:21:"ゴーンディー語";s:3:"gon";s:18:"ゴロンタロ語";s:3:"gor";s:18:"তেরেনো";s:3:"ter";s:27:"ত্লিঙ্গিট";s:3:"tli";s:21:"তামাশেক";s:3:"tmh";s:15:"ゴーマラ語";s:3:"bbj";s:24:"ゴア・コンカニ語";s:3:"gom";}i:920;a:6:{s:18:"Θιβετιανά";s:2:"bo";s:12:"웨일스어";s:2:"cy";s:39:"ཐའའི་ཡུལ་སྐད།";s:2:"th";s:18:"ཐཱའི་ཁ";s:2:"th";s:39:"ཐུར་ཁེའི་སྐད།";s:2:"tr";s:6:"豐文";s:3:"fon";}i:724;a:29:{s:24:"તિબેટીયન";s:2:"bo";s:9:"오크어";s:2:"oc";s:12:"오로모어";s:2:"om";s:12:"오리야어";s:2:"or";s:12:"오세트어";s:2:"os";s:24:"તેશીલહિટ";s:3:"shi";s:12:"તમિલ";s:2:"ta";s:12:"તુલુ";s:3:"tcy";s:18:"તેલુગુ";s:2:"te";s:9:"ቴተም";s:3:"tet";s:15:"તેતુમ";s:3:"tet";s:15:"તાજીક";s:2:"tg";s:24:"તુર્કમેન";s:2:"tk";s:24:"ત્સ્વાના";s:2:"tn";s:12:"તતાર";s:2:"tt";s:24:"તુમ્બુકા";s:3:"tum";s:24:"તાહિતિયન";s:2:"ty";s:12:"તૈતા";s:3:"dav";s:6:"ቴሶ";s:3:"teo";s:12:"તેસો";s:3:"teo";s:18:"તસાવાક";s:3:"twq";s:18:"오지브웨이어";s:2:"oj";s:15:"오세이지어";s:3:"osa";s:18:"તેરેનો";s:3:"ter";s:9:"તિવ";s:3:"tiv";s:21:"તોકેલાઉ";s:3:"tkl";s:21:"તામાશેખ";s:3:"tmh";s:18:"તુવાલુ";s:3:"tvl";s:15:"ત્યાપ";s:3:"kcg";}i:407;a:6:{s:18:"տիբեթերեն";s:2:"bo";s:16:"տաշելհիթ";s:3:"shi";s:18:"տաջիկերեն";s:2:"tg";s:10:"տոնգա";s:2:"to";s:8:"տեսո";s:3:"teo";s:14:"տասավաք";s:3:"twq";}i:481;a:25:{s:15:"チベット語";s:2:"bo";s:18:"チャバカノ語";s:7:"cbk-zam";s:18:"チェチェン語";s:2:"ce";s:15:"チャモロ語";s:2:"ch";s:18:"チョクトー語";s:3:"cho";s:18:"チェロキー語";s:3:"chr";s:12:"チェコ語";s:2:"cs";s:18:"チュヴァシ語";s:2:"cv";s:15:"東部マリ語";s:3:"mhr";s:36:"チンボラソ高地ケチュア語";s:3:"qug";s:9:"東加文";s:2:"to";s:12:"チワン語";s:2:"za";s:9:"チガ語";s:3:"cgg";s:12:"東桑海文";s:3:"ses";s:15:"チャワイ語";s:3:"cch";s:15:"チブチャ語";s:3:"chb";s:18:"チャガタイ語";s:3:"chg";s:15:"チューク語";s:3:"chk";s:21:"チヌーク混成語";s:3:"chn";s:21:"チペワイアン語";s:3:"chp";s:18:"東フリジア語";s:3:"frs";s:18:"東弗里西亞文";s:3:"frs";s:27:"チャド・アラビア語";s:3:"shu";s:24:"東加文(尼亞薩)";s:3:"tog";s:15:"チムシュ語";s:3:"tsi";}i:322;a:19:{s:24:"ტიბეტური";s:2:"bo";s:14:"łatyńšćina";s:2:"la";s:14:"łaćonšćina";s:2:"la";s:10:"łaciński";s:2:"la";s:10:"łatgalski";s:3:"ltg";s:9:"łotewski";s:2:"lv";s:24:"ტამილური";s:2:"ta";s:18:"ტელუგუ";s:2:"te";s:24:"ტაჯიკური";s:2:"tg";s:9:"ტაი";s:2:"th";s:18:"ტსვანა";s:2:"tn";s:27:"ტონგანური";s:2:"to";s:12:"ტუვა";s:3:"tyv";s:49:"ტრადიციული ჩინური";s:7:"zh-hant";s:15:"ტაიტა";s:3:"dav";s:12:"ტესო";s:3:"teo";s:24:"ტასავაქი";s:3:"twq";s:36:"łatyńskoamerikańska špańšćina";s:6:"es-419";s:32:"łaćonskoameriska španišćina";s:6:"es-419";}i:33;a:8:{s:12:"ទីបេ";s:2:"bo";s:9:"ᎩᎵᏏ";s:2:"en";s:15:"利古里亞文";s:3:"lij";s:15:"利伏尼亞文";s:3:"liv";s:21:"ទីរិនយា";s:2:"ti";s:36:"ទួគមេនីស្តង់";s:2:"tk";s:15:"ទួរគី";s:2:"tr";s:12:"ទ្វី";s:2:"tw";}i:231;a:41:{s:27:"ಟಿಬೇಟಿಯನ್";s:2:"bo";s:12:"çeçen dili";s:2:"ce";s:12:"çamoro dili";s:2:"ch";s:12:"çoktau dili";s:3:"cho";s:7:"çiroki";s:3:"chr";s:7:"çeroki";s:3:"chr";s:11:"çeyen dili";s:3:"chy";s:4:"çex";s:2:"cs";s:8:"çekisht";s:2:"cs";s:12:"çuvaş dili";s:2:"cv";s:30:"ಟಷೆಲ್‍ಹಿಟ್";s:3:"shi";s:15:"ಟೇಟಮ್";s:3:"tet";s:30:"ಟಿಗ್ರಿನ್ಯಾ";s:2:"ti";s:30:"ಟರ್ಕ್‌ಮೆನ್";s:2:"tk";s:27:"ಟ್ಯಾಗಲೋಗ್";s:2:"tl";s:18:"ಟೋಂಗನ್";s:2:"to";s:31:"ಟೋಕ್ ಪಿಸಿನ್";s:3:"tpi";s:21:"ಟರ್ಕಿಶ್";s:2:"tr";s:15:"ಟಾಟರ್";s:2:"tt";s:12:"ಟ್ವಿ";s:2:"tw";s:27:"ಟುವಿನಿಯನ್";s:3:"tyv";s:4:"çin";s:2:"zh";s:5:"çiqa";s:3:"cgg";s:8:"çigisht";s:3:"cgg";s:9:"ಟೈಟ";s:3:"dav";s:12:"ಟೆಸೊ";s:3:"teo";s:15:"ಟಸವಕ್";s:3:"twq";s:18:"ಟೈಗ್ರೆ";s:3:"tig";s:13:"çibçə dili";s:3:"chb";s:14:"çağatay dili";s:3:"chg";s:11:"çukiz dili";s:3:"chk";s:17:"çinuk ləhçəsi";s:3:"chn";s:14:"çipevyan dili";s:3:"chp";s:18:"ಟಿಮ್ನೆ";s:3:"tem";s:18:"ಟೆರೆನೋ";s:3:"ter";s:12:"ಟಿವ್";s:3:"tiv";s:24:"ಟೊಕೆಲಾವ್";s:3:"tkl";s:27:"ಟ್ಲಿಂಗಿಟ್";s:3:"tli";s:21:"ಟಮಾಷೆಕ್";s:3:"tmh";s:18:"ಟುವಾಲು";s:3:"tvl";s:18:"ಟ್ಯಾಪ್";s:3:"kcg";}i:735;a:21:{s:21:"ທິເບທັນ";s:2:"bo";s:27:"ທີແນງກາບູ";s:3:"min";s:15:"યાકૂત";s:3:"sah";s:24:"ທາເຊວຫິດ";s:3:"shi";s:15:"ທາມິລ";s:2:"ta";s:15:"ທາຈິກ";s:2:"tg";s:18:"ທອງການ";s:2:"to";s:24:"ທອກພີຊິນ";s:3:"tpi";s:12:"ທາທາ";s:2:"tt";s:9:"ທວີ";s:2:"tw";s:30:"યુક્રેનિયન";s:2:"uk";s:21:"યિદ્દિશ";s:2:"yi";s:18:"યોરૂબા";s:2:"yo";s:46:"યુરોપિયન સ્પેનિશ";s:5:"es-es";s:52:"યુરોપિયન પોર્ટુગીઝ";s:5:"pt-pt";s:15:"ທີມເນ";s:3:"tem";s:21:"ທລີງກິດ";s:3:"tli";s:24:"ທາມາກເຊກ";s:3:"tmh";s:27:"યુગેરિટિક";s:3:"uga";s:9:"યાઓ";s:3:"yao";s:15:"યાપીસ";s:3:"yap";}i:359;a:20:{s:21:"ടിബറ്റൻ";s:2:"bo";s:21:"ടെറ്റും";s:3:"tet";s:10:"ŧaigiella";s:2:"th";s:27:"ടൈഗ്രിന്യ";s:2:"ti";s:15:"ടോംഗൻ";s:2:"to";s:28:"ടോക് പിസിൻ";s:3:"tpi";s:24:"ടർക്കിഷ്";s:2:"tr";s:18:"ടാട്ടർ";s:2:"tt";s:18:"ടുംബുക";s:3:"tum";s:8:"Տուի";s:2:"tw";s:12:"ട്വി";s:2:"tw";s:12:"ടെസോ";s:3:"teo";s:24:"ടസവാക്ക്";s:3:"twq";s:18:"ടൈഗ്രി";s:3:"tig";s:15:"ടിംനേ";s:3:"tem";s:18:"ടെറേനോ";s:3:"ter";s:12:"ടിവ്";s:3:"tiv";s:24:"ടൊക്കേലൗ";s:3:"tkl";s:18:"ടമഷേക്";s:3:"tmh";s:18:"ട്യാപ്";s:3:"kcg";}i:852;a:36:{s:24:"ତିବେତାନ୍";s:2:"bo";s:18:"카탈로니아어";s:2:"ca";s:15:"카슈비아어";s:3:"csb";s:9:"ዴኒሽ";s:2:"da";s:18:"카라칼파크어";s:3:"kaa";s:15:"카바르디어";s:3:"kbd";s:12:"카자흐어";s:2:"kk";s:25:"카라챠이-발카르어";s:3:"krc";s:15:"카슈미르어";s:2:"ks";s:18:"ତାମିଲ୍";s:2:"ta";s:18:"ତେଲୁଗୁ";s:2:"te";s:18:"ତେତୁମ୍";s:3:"tet";s:18:"ତାଜିକ୍";s:2:"tg";s:27:"ତୁର୍କମେନ୍";s:2:"tk";s:24:"ତୁର୍କିସ୍";s:2:"tr";s:18:"ତାତାର୍";s:2:"tt";s:12:"ତ୍ୱି";s:2:"tw";s:27:"ତାହିତିଆନ୍";s:2:"ty";s:27:"ତୁଭିନିଆନ୍";s:3:"tyv";s:9:"카도어";s:3:"cad";s:12:"카리브어";s:3:"car";s:9:"카친어";s:3:"kac";s:9:"카위어";s:3:"kaw";s:12:"카넴부어";s:3:"kbl";s:9:"카시어";s:3:"kha";s:15:"카렐리야어";s:3:"krl";s:15:"ତିମନେ";s:3:"tem";s:18:"ତେରେନୋ";s:3:"ter";s:12:"ତୀଭ୍";s:3:"tiv";s:30:"ତ୍ଲିଙ୍ଗିଟ୍";s:3:"tli";s:24:"ତାମାଶେକ୍";s:3:"tmh";s:33:"ତିସିମିସିଆନ୍";s:3:"tsi";s:18:"ତୁଭାଲୁ";s:3:"tvl";s:12:"카유가어";s:3:"cay";s:18:"ତ୍ୟାପ୍";s:3:"kcg";s:9:"카코어";s:3:"kkj";}i:596;a:11:{s:18:"ਤਿੱਬਤੀ";s:2:"bo";s:12:"ਤਮਿਲ";s:2:"ta";s:15:"ਤੇਲਗੂ";s:2:"te";s:15:"ਤਾਜਿਕ";s:2:"tg";s:27:"ਤਿਗ੍ਰੀਨਿਆ";s:2:"ti";s:21:"ਤੁਰਕਮੇਨ";s:2:"tk";s:15:"ਤੁਰਕੀ";s:2:"tr";s:12:"ਤਤਾਰ";s:2:"tt";s:12:"ਤ੍ਵਿ";s:2:"tw";s:12:"필리핀어";s:3:"fil";s:21:"ਤਾਸਾਵਿਕ";s:3:"twq";}i:58;a:25:{s:18:"Тибиэттии";s:2:"bo";s:16:"Тамыллыы";s:2:"ta";s:18:"Төлүгүлүү";s:2:"te";s:10:"Тетум";s:3:"tet";s:20:"Тадьыыктыы";s:2:"tg";s:10:"Тађик";s:2:"tg";s:12:"Тоҷикӣ";s:2:"tg";s:16:"Тагалски";s:2:"tl";s:12:"Тсвана";s:2:"tn";s:17:"Ток Писин";s:3:"tpi";s:12:"Тсонга";s:2:"ts";s:14:"Тумбука";s:3:"tum";s:6:"Тви";s:2:"tw";s:20:"Тахићански";s:2:"ty";s:20:"Тувинијски";s:3:"tyv";s:10:"Тигре";s:3:"tig";s:10:"Тимне";s:3:"tem";s:12:"Терено";s:3:"ter";s:6:"Тив";s:3:"tiv";s:14:"Токелау";s:3:"tkl";s:14:"Тлингит";s:3:"tli";s:14:"Тамашек";s:3:"tmh";s:16:"Тсимшиан";s:3:"tsi";s:12:"Тувалу";s:3:"tvl";s:8:"Тјап";s:3:"kcg";}i:495;a:17:{s:18:"ටිබෙට්";s:2:"bo";s:12:"ハウサ語";s:2:"ha";s:12:"ハワイ語";s:3:"haw";s:12:"ハイチ語";s:2:"ht";s:18:"ハンガリー語";s:2:"hu";s:27:"ටචේල්හිට්";s:3:"shi";s:15:"ටජික්";s:2:"tg";s:33:"ටිග්‍රින්යා";s:2:"ti";s:27:"ටර්ක්මෙන්";s:2:"tk";s:15:"ටොංගා";s:2:"to";s:15:"ටාටර්";s:2:"tt";s:15:"ටයිටා";s:3:"dav";s:10:"חיתית";s:3:"hit";s:12:"ටෙසෝ";s:3:"teo";s:18:"ටසවාක්";s:3:"twq";s:12:"ハイダ語";s:3:"hai";s:49:"ටියුනිසියනු අරාබි";s:3:"aeb";}i:980;a:20:{s:33:"திபெத்தியன்";s:2:"bo";s:18:"திவேஹி";s:2:"dv";s:18:"தோங்கா";s:2:"ng";s:21:"தசேஹித்";s:3:"shi";s:28:"தெற்கு சமி";s:3:"sma";s:31:"தெற்கு ஸோதோ";s:2:"st";s:15:"தமிழ்";s:2:"ta";s:24:"தெலுங்கு";s:2:"te";s:18:"தாஜிக்";s:2:"tg";s:12:"தாய்";s:2:"th";s:24:"தும்புகா";s:3:"tum";s:37:"தெற்கு தெபெலே";s:2:"nr";s:34:"தெற்கு அல்தை";s:3:"alt";s:15:"தகோடா";s:3:"dak";s:24:"தார்குவா";s:3:"dar";s:24:"தெலாவேர்";s:3:"del";s:9:"후파어";s:3:"hup";s:12:"윤번두어";s:3:"umb";s:34:"துனிசிய அரபு";s:3:"aeb";s:18:"தையாப்";s:3:"kcg";}i:607;a:40:{s:15:"ทิเบต";s:2:"bo";s:18:"ਯੂਨਾਨੀ";s:2:"el";s:14:"هسپانوي";s:2:"es";s:14:"هوسیایی";s:2:"ha";s:18:"هاوائیایی";s:3:"haw";s:8:"هندی";s:2:"hi";s:8:"هندي";s:2:"hi";s:23:"هندی فیجیایی";s:3:"hif";s:37:"هندی فیجی (خط لاتینی)";s:8:"hif-latn";s:25:"هیلی‌گاینونی";s:3:"hil";s:18:"هائیتیایی";s:2:"ht";s:10:"هنګري";s:2:"hu";s:14:"هریرویی";s:2:"hz";s:15:"هیل ماری";s:3:"mrj";s:10:"هلندی";s:2:"nl";s:14:"هالېنډي";s:2:"nl";s:27:"ทาเชลีห์ท";s:3:"shi";s:12:"ทมิฬ";s:2:"ta";s:15:"ทาจิก";s:2:"tg";s:15:"ทาลิช";s:3:"tly";s:27:"ท็อกพิซิน";s:3:"tpi";s:21:"ทุมบูกา";s:3:"tum";s:9:"ทวิ";s:2:"tw";s:54:"ทามาไซต์แอตลาสกลาง";s:3:"tzm";s:27:"ਯੂਕਰੇਨੀਆਈ";s:2:"uk";s:18:"ਯੋਰੂਬਾ";s:2:"yo";s:8:"هیتی";s:3:"hit";s:69:"ทามาไซต์โมร็อกโกมาตรฐาน";s:3:"zgh";s:31:"ਯੂਰਪੀ ਸਪੇਨੀ";s:5:"es-es";s:40:"ਯੂਰਪੀ ਪੁਰਤਗਾਲੀ";s:5:"pt-pt";s:21:"هلندی میانه";s:3:"dum";s:14:"هایدایی";s:3:"hai";s:10:"همونگ";s:3:"hmn";s:8:"هوپا";s:3:"hup";s:15:"ทิมเน";s:3:"tem";s:9:"ทิฟ";s:3:"tiv";s:21:"ทลิงกิต";s:3:"tli";s:21:"ทามาเชก";s:3:"tmh";s:15:"ทีแยป";s:3:"kcg";s:18:"ทาโรโก";s:3:"trv";}i:255;a:1:{s:6:"藏文";s:2:"bo";}i:614;a:8:{s:30:"พิศนุปริยะ";s:3:"bpy";s:12:"พม่า";s:2:"my";s:24:"พีดมอนต์";s:3:"pms";s:18:"พอนติก";s:3:"pnt";s:15:"พาชตู";s:2:"ps";s:12:"พัรช";s:3:"bra";s:21:"พอห์นเพ";s:3:"pon";s:12:"พทคะ";s:3:"bfq";}i:709;a:60:{s:15:"ብሬቶንኛ";s:2:"br";s:12:"ብሬቶን";s:2:"br";s:15:"કતલાન";s:2:"ca";s:18:"કેમોરો";s:2:"ch";s:24:"કોર્સિકન";s:2:"co";s:12:"ક્રી";s:2:"cr";s:43:"ક્રિમિયન તુર્કી";s:3:"crh";s:24:"કાશુબિયન";s:3:"csb";s:49:"કેનેડિયન અંગ્રેજી";s:5:"en-ca";s:27:"ક્રોએશિયન";s:2:"hr";s:28:"કારા-કલ્પક";s:3:"kaa";s:15:"કબાઇલ";s:3:"kab";s:27:"કબાર્ડિયન";s:3:"kbd";s:15:"કોંગો";s:2:"kg";s:18:"કિકુયૂ";s:2:"ki";s:30:"ક્વાન્યામા";s:2:"kj";s:12:"કઝાખ";s:2:"kk";s:30:"કલાલ્લિસુત";s:2:"kl";s:15:"કન્નડ";s:2:"kn";s:18:"કોરિયન";s:2:"ko";s:37:"કોમી-પર્મ્યાક";s:3:"koi";s:15:"કનુરી";s:2:"kr";s:34:"કરાચય-બલ્કાર";s:3:"krc";s:24:"કાશ્મીરી";s:2:"ks";s:21:"કુર્દિશ";s:2:"ku";s:12:"કોમી";s:2:"kv";s:21:"કોર્નિશ";s:2:"kw";s:21:"કિર્ગીઝ";s:2:"ky";s:15:"ક્રિક";s:3:"mus";s:21:"ક્વેચુઆ";s:2:"qu";s:39:"કિન્યારવાન્ડા";s:2:"rw";s:21:"કાલ્મિક";s:3:"xal";s:24:"કેંટોનીઝ";s:3:"yue";s:21:"કોપ્ટિક";s:3:"cop";s:15:"કમ્બા";s:3:"kam";s:36:"કાબુવર્ડિઆનુ";s:3:"kea";s:28:"કોયરા ચિનિ";s:3:"khq";s:18:"કલેજિન";s:3:"kln";s:18:"કોંકણી";s:3:"kok";s:15:"કુરૂખ";s:3:"kru";s:21:"ક્વાસિઓ";s:3:"nmg";s:12:"કિચે";s:3:"quc";s:46:"કોયરાબોરો સેન્ની";s:3:"ses";s:24:"કોમોરિયન";s:3:"swb";s:40:"કોંગો સ્વાહિલી";s:3:"swc";s:27:"ક્લિન્ગોન";s:3:"tlh";s:81:"કોઇ ભાષાશાસ્ત્રીય સામગ્રી નથી";s:3:"zxx";s:9:"ብሊን";s:3:"byn";s:43:"કેનેડિયન ફ્રેંચ";s:5:"fr-ca";s:15:"કડ્ડો";s:3:"cad";s:12:"કરિબ";s:3:"car";s:15:"કાચિન";s:3:"kac";s:12:"કાવી";s:3:"kaw";s:12:"કોરો";s:3:"kfo";s:27:"કિમ્બન્દુ";s:3:"kmb";s:21:"કોસરિયન";s:3:"kos";s:24:"ક્પેલ્લે";s:3:"kpe";s:21:"કરેલિયન";s:3:"krl";s:15:"કુમીક";s:3:"kum";s:21:"કુતેનાઇ";s:3:"kut";}i:67;a:15:{s:15:"布里多尼文";s:2:"br";s:15:"布列塔尼文";s:2:"br";s:12:"布拉維文";s:3:"brh";s:9:"布吉文";s:3:"bug";s:12:"布吉斯文";s:3:"bug";s:18:"Ыспаанныы";s:2:"es";s:22:"Ытаалыйалыы";s:2:"it";s:9:"布林文";s:3:"byn";s:12:"布拉杰文";s:3:"bra";s:15:"布里亚特文";s:3:"bua";s:15:"布里阿特文";s:3:"bua";s:15:"布利斯符号";s:3:"zbl";s:15:"布列斯符號";s:3:"zbl";s:9:"布鲁文";s:3:"bum";s:9:"布魯文";s:3:"bum";}i:710;a:8:{s:18:"ቦስኒያንኛ";s:2:"bs";s:15:"ቦስኒያን";s:2:"bs";s:9:"车臣文";s:2:"ce";s:15:"ખ્મેર";s:2:"km";s:12:"ખોસા";s:2:"xh";s:6:"ቦዶ";s:3:"brx";s:12:"ખાસી";s:3:"kha";s:21:"ખોતાનીસ";s:3:"kho";}i:837;a:47:{s:21:"କାଟଲାନ୍";s:2:"bs";s:24:"କାଟାଲାନ୍";s:2:"ca";s:30:"କୋର୍ସିକାନ୍";s:2:"co";s:12:"କ୍ରୀ";s:2:"cr";s:49:"କ୍ରୀମିନ୍ ତୁର୍କୀସ୍";s:3:"crh";s:27:"କାଶୁବିଆନ୍";s:3:"csb";s:46:"କାନାଡିଆନ୍ ଇଁରାଜୀ";s:5:"en-ca";s:30:"କ୍ରୋଆଟିଆନ୍";s:2:"hr";s:31:"କାରା-କଲ୍ପକ୍";s:3:"kaa";s:18:"କବାଇଲ୍";s:3:"kab";s:33:"କାବାର୍ଡିଆନ୍";s:3:"kbd";s:15:"କଙ୍ଗୋ";s:2:"kg";s:18:"କୀକୁୟୁ";s:2:"ki";s:30:"କ୍ୱାନ୍ୟାମ୍";s:2:"kj";s:18:"କାଜାକ୍";s:2:"kk";s:15:"କନ୍ନଡ";s:2:"kn";s:21:"କୋରିଆନ୍";s:2:"ko";s:15:"କନୁରୀ";s:2:"kr";s:34:"କରାଚୟ-ବଲ୍କାର";s:3:"krc";s:24:"କାଶ୍ମିରୀ";s:2:"ks";s:30:"କୁର୍ଦ୍ଦିଶ୍";s:2:"ku";s:12:"କୋମି";s:2:"kv";s:24:"କୋର୍ନିସ୍";s:2:"kw";s:21:"କିରଗିଜ୍";s:2:"ky";s:18:"କ୍ରୀକ୍";s:3:"mus";s:21:"କ୍ୱେଚୁଆ";s:2:"qu";s:39:"କିନ୍ୟାରୱାଣ୍ଡା";s:2:"rw";s:24:"କାଲ୍ମୀକ୍";s:3:"xal";s:21:"କପ୍ଟିକ୍";s:3:"cop";s:15:"କମ୍ବା";s:3:"kam";s:21:"କୋନକାନୀ";s:3:"kok";s:15:"କୁରୁଖ";s:3:"kru";s:27:"କ୍ଲିଙ୍ଗନ୍";s:3:"tlh";s:84:"କୌଣସି ଲିଙ୍ଗୁଇଷ୍ଟ ସାମଗ୍ରୀ ନାହିଁ";s:3:"zxx";s:49:"କାନାଡିଆନ୍ ଫ୍ରେଞ୍ଚ";s:5:"fr-ca";s:12:"କାଡୋ";s:3:"cad";s:18:"କାରିବ୍";s:3:"car";s:15:"କଚିନ୍";s:3:"kac";s:12:"କାୱି";s:3:"kaw";s:12:"କୋରୋ";s:3:"kfo";s:30:"କିମ୍ବୁଣ୍ଡୁ";s:3:"kmb";s:21:"କୋସରୈନ୍";s:3:"kos";s:18:"କୈପେଲେ";s:3:"kpe";s:30:"କାରେଲିୟାନ୍";s:3:"krl";s:18:"କୁମୀକ୍";s:3:"kum";s:21:"କୁତେନାଉ";s:3:"kut";s:49:"କ୍ଲାସିକାଲ୍ ସିରିକ୍";s:3:"syc";}i:874;a:9:{s:15:"波斯尼亚文";s:2:"bs";s:15:"波士尼亞文";s:2:"bs";s:9:"波斯文";s:2:"fa";s:18:"ጊዮርጊያኛ";s:2:"ka";s:9:"波兰文";s:2:"pl";s:9:"波蘭文";s:2:"pl";s:12:"波纳佩文";s:3:"pon";s:12:"波那貝文";s:3:"pon";s:12:"谢列尔文";s:3:"srr";}i:661;a:11:{s:19:"ᨅᨔ ᨕᨘᨁᨗ";s:3:"bug";s:12:"ስፓኒሽ";s:2:"es";s:15:"ስንሃልኛ";s:2:"si";s:15:"ስሎቫክኛ";s:2:"sk";s:15:"ስሎቨክኛ";s:2:"sk";s:12:"ስሎቪኛ";s:2:"sl";s:12:"ስቁቪኛ";s:2:"sl";s:12:"ስዋቲኛ";s:2:"ss";s:15:"ስዊድንኛ";s:2:"sv";s:15:"ስዋሂሊኛ";s:2:"sw";s:19:"ስኮልት ሳሚ";s:3:"sms";}i:779;a:15:{s:15:"ካታላንኛ";s:2:"ca";s:12:"ካታላን";s:2:"ca";s:12:"ካብይል";s:3:"kab";s:12:"ካዛክኛ";s:2:"kk";s:18:"ካላሊሱትኛ";s:2:"kl";s:12:"ካናዳኛ";s:2:"kn";s:12:"ካማደኛ";s:2:"kn";s:15:"ካሽሚርኛ";s:2:"ks";s:15:"沃蒂艾克文";s:3:"udm";s:15:"沃拉普克文";s:2:"vo";s:12:"沃提克文";s:3:"vot";s:12:"沃洛夫文";s:2:"wo";s:9:"ካምባ";s:3:"kam";s:21:"ካቡቨርዲያኑ";s:3:"kea";s:15:"ካለንጂን";s:3:"kln";}i:453;a:58:{s:21:"কাতালান";s:2:"ca";s:24:"কর্সিকান";s:2:"co";s:12:"ক্রি";s:2:"cr";s:49:"ক্রিমিয়ান তুর্কি";s:3:"crh";s:30:"কাশুবিয়ান";s:3:"csb";s:43:"কানাডীয় ইংরেজি";s:5:"en-ca";s:33:"ক্রোয়েশীয়";s:2:"hr";s:34:"কারা-কাল্পাক";s:3:"kaa";s:21:"কাবাইলে";s:3:"kab";s:36:"কাবার্ডিয়ান";s:3:"kbd";s:15:"কঙ্গো";s:2:"kg";s:27:"কিকু্ইয়ু";s:2:"ki";s:36:"কোয়ানিয়ামা";s:2:"kj";s:15:"কাজাখ";s:2:"kk";s:39:"ক্যালাল্লিসুট";s:2:"kl";s:33:"কম্বোডিয়ান";s:2:"km";s:27:"কান্নাড়ী";s:2:"kn";s:24:"কোরিয়ান";s:2:"ko";s:31:"কমি-পারমিআক";s:3:"koi";s:18:"কানুরি";s:2:"kr";s:37:"কারচে-বাল্কার";s:3:"krc";s:24:"কাশ্মীরী";s:2:"ks";s:18:"কুর্দি";s:2:"ku";s:12:"কোমি";s:2:"kv";s:18:"কর্ণিশ";s:2:"kw";s:21:"কির্গিজ";s:2:"ky";s:15:"ক্রিক";s:3:"mus";s:21:"কেচুয়া";s:2:"qu";s:30:"欽博拉索海蘭蓋丘亞文";s:3:"qug";s:45:"কিনয়ারোয়ান্ডা";s:2:"rw";s:21:"কাল্মইক";s:3:"xal";s:30:"ক্যানটোনীজ";s:3:"yue";s:15:"কপটিক";s:3:"cop";s:18:"কাম্বা";s:3:"kam";s:42:"কাবুভারদিয়ানু";s:3:"kea";s:31:"কোয়রা চীনি";s:3:"khq";s:24:"কালেনজিন";s:3:"kln";s:24:"কোঙ্কানি";s:3:"kok";s:15:"কুরুখ";s:3:"kru";s:24:"কোয়াসিও";s:3:"nmg";s:15:"কি‘চে";s:3:"quc";s:49:"কোয়রাবেনো সেন্নী";s:3:"ses";s:27:"কমোরিয়ান";s:3:"swb";s:43:"কঙ্গো সোয়াহিলি";s:3:"swc";s:24:"ক্লিঙ্গন";s:3:"tlh";s:40:"কানাডীয় ফরাসি";s:5:"fr-ca";s:18:"ক্যাডো";s:3:"cad";s:21:"ক্যারিব";s:3:"car";s:15:"কাচিন";s:3:"kac";s:12:"কাউই";s:3:"kaw";s:12:"কোরো";s:3:"kfo";s:30:"কিম্বুন্দু";s:3:"kmb";s:24:"কোস্রাইন";s:3:"kos";s:27:"ক্‌পেল্লে";s:3:"kpe";s:30:"কারেলিয়ান";s:3:"krl";s:15:"কুমিক";s:3:"kum";s:21:"কুটেনাই";s:3:"kut";s:12:"欽西安文";s:3:"tsi";}i:904;a:16:{s:30:"ཀེ་ཊ་ལཱན་ཁ";s:2:"ca";s:63:"ཀེ་ན་ཌི་ཡཱན་ཨིང་ལིཤ་ཁ";s:5:"en-ca";s:45:"ཀྲོ་ཨེ་ཤི་ཡཱན་ཁ";s:2:"hr";s:21:"ཀ་ཛགས་ཁ";s:2:"kk";s:30:"ཀནྣ་ཌ་སྐད།";s:2:"kn";s:21:"ཀ་ན་ཌ་ཁ";s:2:"kn";s:33:"ཀོ་རི་ཡཱན་ཁ";s:2:"ko";s:33:"ཀཱཤ་མི་རི་ཁ";s:2:"ks";s:24:"ཀར་ཌིཤ་ཁ";s:2:"ku";s:27:"ཀིར་གིས་ཁ";s:2:"ky";s:10:"Έρζυα";s:3:"myv";s:30:"ཀྭེ་ཆུ་ཨ་ཁ";s:2:"qu";s:10:"Έμπου";s:3:"ebu";s:54:"ཀེ་ན་ཌི་ཡཱན་ཕྲནཅ་ཁ";s:5:"fr-ca";s:21:"ཀ་ཆིན་ཁ";s:3:"kac";s:21:"ཀོ་རོ་ཁ";s:3:"kfo";}i:922;a:69:{s:20:"Καταλανικά";s:2:"ca";s:18:"Κεμπουάνο";s:3:"ceb";s:14:"Καμόρρο";s:2:"ch";s:29:"Κουρδικά Σοράνι";s:3:"ckb";s:22:"Κορσικανικά";s:2:"co";s:6:"Κρι";s:2:"cr";s:20:"Κασούμπιαν";s:3:"csb";s:16:"Κροατικά";s:2:"hr";s:21:"Κάρα-Καλπάκ";s:3:"kaa";s:14:"Καμπίλε";s:3:"kab";s:24:"Καμπαρντιανά";s:3:"kbd";s:12:"Κονγκό";s:2:"kg";s:18:"Κικούγιου";s:2:"ki";s:22:"Κουανιγιάμα";s:2:"kj";s:16:"Καζακικά";s:2:"kk";s:22:"Καλαάλισουτ";s:2:"kl";s:22:"Καμποτζιανά";s:2:"km";s:14:"Κανάντα";s:2:"kn";s:18:"Κορεατικά";s:2:"ko";s:23:"Κόμι-Περμιάκ";s:3:"koi";s:14:"Κανούρι";s:2:"kr";s:31:"Καρατσάι-Μπαλκάρ";s:3:"krc";s:14:"Κασμίρι";s:2:"ks";s:16:"Κολωνικά";s:3:"ksh";s:16:"Κουρδικά";s:2:"ku";s:8:"Κόμι";s:2:"kv";s:12:"Κόρνις";s:2:"kw";s:18:"Κυργιζικά";s:2:"ky";s:8:"Κρικ";s:3:"mus";s:27:"Κάτω Γερμανικά";s:3:"nds";s:14:"Κετσούα";s:2:"qu";s:22:"Κινιαρβάντα";s:2:"rw";s:12:"Καλμίκ";s:3:"xal";s:22:"Καντονέζικα";s:3:"yue";s:16:"Κινεζικά";s:2:"zh";s:14:"Κοπτικά";s:3:"cop";s:10:"Κάμπα";s:3:"kam";s:21:"Κόιρα Τσίνι";s:3:"khq";s:18:"Καλεντζίν";s:3:"kln";s:14:"Κονκάνι";s:3:"kok";s:14:"Κουρούχ";s:3:"kru";s:12:"Κβάσιο";s:3:"nmg";s:8:"Κισέ";s:3:"quc";s:29:"Κοϊραμπόρο Σένι";s:3:"ses";s:16:"Κομόρρια";s:3:"swb";s:29:"Κονγκό Σουαχίλι";s:3:"swc";s:16:"Κλίνγκον";s:3:"tlh";s:12:"蒂格雷文";s:3:"tig";s:10:"Κάντο";s:3:"cad";s:12:"Καρίμπ";s:3:"car";s:12:"Κατσίν";s:3:"kac";s:10:"Κάουι";s:3:"kaw";s:16:"Κανέμπου";s:3:"kbl";s:8:"Κόρο";s:3:"kfo";s:8:"Κάσι";s:3:"kha";s:16:"Κοτανικά";s:3:"kho";s:20:"Κιμπούντου";s:3:"kmb";s:20:"Κοσραενικά";s:3:"kos";s:10:"Κπέλε";s:3:"kpe";s:18:"Καρελιακά";s:3:"krl";s:18:"Κουμγιούκ";s:3:"kum";s:16:"Κουτενάι";s:3:"kut";s:29:"Κλασικά Νεουάρι";s:3:"nwc";s:29:"Κλασικά Συριακά";s:3:"syc";s:9:"蒂夫文";s:3:"tiv";s:15:"蒂姆西亚文";s:3:"tsi";s:6:"Κομ";s:3:"bkm";s:18:"Καγιούγκα";s:3:"cay";s:8:"Κάκο";s:3:"kkj";}i:511;a:78:{s:14:"קטלאנית";s:2:"ca";s:22:"קאַטאַלאניש";s:2:"ca";s:12:"קבואנו";s:3:"ceb";s:18:"קורסיקנית";s:2:"co";s:6:"קרי";s:2:"cr";s:22:"קרים־טערקיש";s:3:"crh";s:14:"קשוביאן";s:3:"csb";s:16:"קאַשוביש";s:3:"csb";s:34:"קלויסטער־סלאַוויש";s:2:"cu";s:14:"קרואטית";s:2:"hr";s:16:"קראאַטיש";s:2:"hr";s:19:"קארא-קלפאק";s:3:"kaa";s:10:"קבילה";s:3:"kab";s:12:"קברדית";s:3:"kbd";s:10:"קונגו";s:2:"kg";s:12:"קיקויו";s:2:"ki";s:16:"קואניאמה";s:2:"kj";s:10:"קזחית";s:2:"kk";s:18:"קאַזאַכיש";s:2:"kk";s:22:"קאלאליסוטית";s:2:"kl";s:10:"קמרית";s:2:"km";s:10:"קנאדה";s:2:"kn";s:18:"קאַנאַדאַ";s:2:"kn";s:16:"קוריאנית";s:2:"ko";s:14:"קארעאיש";s:2:"ko";s:25:"קומי-פרמיאקית";s:3:"koi";s:12:"קאנורי";s:2:"kr";s:21:"קראצ׳י-בלקר";s:3:"krc";s:14:"קשמירית";s:2:"ks";s:16:"קולוניאן";s:3:"ksh";s:12:"קורדיש";s:2:"ku";s:8:"קומי";s:2:"kv";s:12:"קורנית";s:2:"kw";s:12:"קארניש";s:2:"kw";s:16:"קירגיזית";s:2:"ky";s:16:"קירגיזיש";s:2:"ky";s:21:"ミナンカバウ語";s:3:"min";s:8:"קריק";s:3:"mus";s:15:"ミランダ語";s:3:"mwl";s:12:"קצ׳ואה";s:2:"qu";s:14:"קירונדי";s:2:"rn";s:20:"קינירואנדה";s:2:"rw";s:10:"קלמיק";s:3:"xal";s:10:"קסוסה";s:2:"xh";s:16:"קנטונזית";s:3:"yue";s:12:"קופטית";s:3:"cop";s:8:"קמבה";s:3:"kam";s:22:"קאבוורדיאנו";s:3:"kea";s:21:"קוירה צ׳יני";s:3:"khq";s:16:"קאלנג׳ין";s:3:"kln";s:14:"קונקאני";s:3:"kok";s:10:"קורוק";s:3:"kru";s:14:"קוואסיו";s:3:"nmg";s:10:"קיצ׳ה";s:3:"quc";s:25:"קויראבורו סני";s:3:"ses";s:12:"קומורו";s:3:"swb";s:14:"קאמאריש";s:3:"swb";s:32:"קאנגא־סוואַהיליש";s:3:"swc";s:14:"קלינגון";s:3:"tlh";s:8:"קאדו";s:3:"cad";s:10:"קאריב";s:3:"car";s:10:"קצ׳ין";s:3:"kac";s:10:"קאווי";s:3:"kaw";s:10:"קנמבו";s:3:"kbl";s:8:"קורו";s:3:"kfo";s:8:"קאסי";s:3:"kha";s:16:"קוטאנזית";s:3:"kho";s:16:"קימבונדו";s:3:"kmb";s:16:"קוסראיאן";s:3:"kos";s:8:"קפלה";s:3:"kpe";s:12:"קארלית";s:3:"krl";s:10:"קומיק";s:3:"kum";s:12:"קוטנאי";s:3:"kut";s:15:"ミクマク語";s:3:"mic";s:6:"קום";s:3:"bkm";s:12:"קאיוגה";s:3:"cay";s:8:"קאקו";s:3:"kkj";s:12:"ミエネ語";s:3:"mye";}i:325;a:116:{s:21:"कातालान";s:2:"ca";s:24:"क्याटालन";s:2:"ca";s:15:"कमोरो";s:2:"ch";s:18:"कॅमोरो";s:2:"ch";s:24:"कोर्सीकन";s:2:"co";s:24:"कॉर्सिकन";s:2:"co";s:24:"कोर्सिकन";s:2:"co";s:12:"क्री";s:2:"cr";s:40:"क्रीमीन तुर्की";s:3:"crh";s:43:"क्राइमीन तुर्की";s:3:"crh";s:24:"काशुबियन";s:3:"csb";s:36:"ქვემოსორბული";s:3:"dsb";s:46:"कनाडाई अंग्रेज़ी";s:5:"en-ca";s:43:"कॅनडियन इंग्रजी";s:5:"en-ca";s:30:"क्रोएशियाई";s:2:"hr";s:27:"क्रोएशियन";s:2:"hr";s:33:"क्रोएशियाली";s:2:"hr";s:21:"ქართული";s:2:"ka";s:28:"कारा-कल्पक";s:3:"kaa";s:15:"कबाइल";s:3:"kab";s:15:"काबिल";s:3:"kab";s:27:"कबार्डियन";s:3:"kbd";s:15:"कोंगो";s:2:"kg";s:15:"काँगो";s:2:"kg";s:18:"किकुयू";s:2:"ki";s:18:"किकुयु";s:2:"ki";s:30:"क्वान्यामा";s:2:"kj";s:18:"कज़ाख़";s:2:"kk";s:12:"कझाक";s:2:"kk";s:15:"काजाख";s:2:"kk";s:27:"कलाल्लिसत";s:2:"kl";s:27:"कालालिसुट";s:2:"kl";s:21:"ქმერული";s:2:"km";s:18:"कन्नड़";s:2:"kn";s:15:"कन्नड";s:2:"kn";s:21:"कन्नाडा";s:2:"kn";s:21:"कोरियाई";s:2:"ko";s:18:"कोरियन";s:2:"ko";s:24:"कोरियाली";s:2:"ko";s:34:"कोमी-पर्मयाक";s:3:"koi";s:34:"कोमी-परम्याक";s:3:"koi";s:37:"कोमी-पर्म्याक";s:3:"koi";s:15:"कनुरी";s:2:"kr";s:34:"कराचय-बल्कार";s:3:"krc";s:34:"कराचय-बाल्कर";s:3:"krc";s:28:"कॉशुर / کٲشُر";s:2:"ks";s:21:"कश्मीरी";s:2:"ks";s:27:"ქაშმირული";s:2:"ks";s:24:"काश्मीरी";s:2:"ks";s:15:"कॉशुर";s:7:"ks-deva";s:21:"कुर्दिश";s:2:"ku";s:21:"ქურთული";s:2:"ku";s:12:"कोमी";s:2:"kv";s:21:"कोर्निश";s:2:"kw";s:24:"किर्गीज़";s:2:"ky";s:18:"किरगीझ";s:2:"ky";s:21:"किर्गिज";s:2:"ky";s:15:"क्रीक";s:3:"mus";s:42:"ქვემოგერმანული";s:3:"nds";s:21:"क्वेचुआ";s:2:"qu";s:24:"क्वेचुवा";s:2:"qu";s:36:"किन्यारवांडा";s:2:"rw";s:42:"किन्यार्वान्डा";s:2:"rw";s:39:"किन्यारवान्डा";s:2:"rw";s:71:"केन्द्रीय एट्लास टामाजिघट";s:3:"tzm";s:21:"काल्मिक";s:3:"xal";s:15:"ქჰოსა";s:2:"xh";s:27:"कैंटोनीज़";s:3:"yue";s:21:"कँटोनीज";s:3:"yue";s:12:"किगा";s:3:"cgg";s:21:"कॉप्टिक";s:3:"cop";s:15:"कम्बा";s:3:"kam";s:18:"काम्बा";s:3:"kam";s:42:"काबुवेर्दियानु";s:3:"kea";s:36:"काबवर्दियानु";s:3:"kea";s:42:"काबुभेर्डियानु";s:3:"kea";s:28:"कोयरा चीनी";s:3:"khq";s:28:"कोयरा चिनी";s:3:"khq";s:21:"कलेंजिन";s:3:"kln";s:24:"कालेंजीन";s:3:"kln";s:27:"कालेन्जिन";s:3:"kln";s:18:"कोंकणी";s:3:"kok";s:24:"कोन्कानी";s:3:"kok";s:15:"कुरूख";s:3:"kru";s:21:"क्वासिओ";s:3:"nmg";s:24:"क्वासियो";s:3:"nmg";s:9:"किश";s:3:"quc";s:15:"कीशेइ";s:3:"quc";s:12:"किचे";s:3:"quc";s:46:"कोयराबोरो सेन्नी";s:3:"ses";s:24:"कोमोरियन";s:3:"swb";s:40:"कांगो स्वाहिली";s:3:"swc";s:40:"काँगो स्वाहिली";s:3:"swc";s:43:"कोङ्गो स्वाहिली";s:3:"swc";s:21:"क्लिंगन";s:3:"tlh";s:24:"क्लिंगोन";s:3:"tlh";s:24:"क्लिङ्गन";s:3:"tlh";s:57:"कोई भाषा सामग्री नहीं";s:3:"zxx";s:40:"कनाडाई फ़्रेंच";s:5:"fr-ca";s:40:"कॅनडियन फ्रेंच";s:5:"fr-ca";s:18:"कैड्डो";s:3:"cad";s:18:"कॅड्डो";s:3:"cad";s:15:"कैरिब";s:3:"car";s:15:"कॅरिब";s:3:"car";s:15:"काचिन";s:3:"kac";s:12:"कावी";s:3:"kaw";s:12:"कोरो";s:3:"kfo";s:27:"किम्बन्दु";s:3:"kmb";s:18:"कोसरैन";s:3:"kos";s:21:"कोसरियन";s:3:"kos";s:24:"क्पेल्लै";s:3:"kpe";s:24:"क्पेल्ले";s:3:"kpe";s:21:"करेलियन";s:3:"krl";s:15:"कुमीक";s:3:"kum";s:21:"कुतेनाई";s:3:"kut";s:43:"क्लासिकल सिरिएक";s:3:"syc";}i:459;a:32:{s:18:"カタロニア語";s:2:"ca";s:12:"カピス語";s:3:"cps";s:18:"カシューブ語";s:3:"csb";s:15:"カナダ英語";s:5:"en-ca";s:21:"カラカルパク語";s:3:"kaa";s:12:"カビル語";s:3:"kab";s:15:"カバルド語";s:3:"kbd";s:12:"カザフ語";s:2:"kk";s:15:"カンナダ語";s:2:"kn";s:12:"カヌリ語";s:2:"kr";s:18:"カラチャイ語";s:3:"krc";s:18:"カシミール語";s:2:"ks";s:18:"カルムイク語";s:3:"xal";s:12:"カンバ語";s:3:"kam";s:39:"カーボベルデ・クレオール語";s:3:"kea";s:18:"カレンジン語";s:3:"kln";s:18:"律勒欧萨米文";s:3:"smj";s:12:"カドー語";s:3:"cad";s:12:"カリブ語";s:3:"car";s:9:"芳格文";s:3:"fan";s:9:"芳族文";s:3:"fan";s:9:"芳蒂文";s:3:"fat";s:12:"カチン語";s:3:"kac";s:12:"カジェ語";s:3:"kaj";s:12:"カウィ語";s:3:"kaw";s:15:"カネンブ語";s:3:"kbl";s:9:"カシ語";s:3:"kha";s:15:"カレリア語";s:3:"krl";s:15:"カユーガ語";s:3:"cay";s:12:"カタブ語";s:3:"kcg";s:21:"カインガング語";s:3:"kgp";s:9:"カコ語";s:3:"kkj";}i:313;a:62:{s:30:"კატალანური";s:2:"ca";s:9:"閩東語";s:3:"cdo";s:27:"კორსიკული";s:2:"co";s:9:"კრი";s:2:"cr";s:24:"კაშუბური";s:3:"csb";s:52:"კანადური ინგლისური";s:5:"en-ca";s:43:"उत्तरी फ्रीसीयन";s:3:"frr";s:43:"उत्तरी फ्रिशियन";s:3:"frr";s:24:"კაბილური";s:3:"kab";s:15:"კონგო";s:2:"kg";s:18:"კიკუიუ";s:2:"ki";s:18:"კანადა";s:2:"kn";s:21:"კორეული";s:2:"ko";s:43:"კომი-პერმიაკული";s:3:"koi";s:18:"კანური";s:2:"kr";s:12:"კომი";s:2:"kv";s:21:"კორნული";s:2:"kw";s:15:"კრიკი";s:3:"mus";s:9:"閩南語";s:10:"zh-min-nan";s:31:"उत्तरी सोथो";s:3:"nso";s:18:"उड़िया";s:2:"or";s:15:"उडिया";s:2:"or";s:15:"კეჩუა";s:2:"qu";s:33:"კინიარუანდა";s:2:"rw";s:31:"उत्तरी सामी";s:2:"se";s:21:"उदमुर्त";s:3:"udm";s:15:"उइगुर";s:2:"ug";s:15:"उइघुर";s:2:"ug";s:15:"उर्दू";s:2:"ur";s:15:"उर्दु";s:2:"ur";s:21:"उज़्बेक";s:2:"uz";s:18:"उझ्बेक";s:2:"uz";s:21:"उज्बेकी";s:2:"uz";s:27:"კანტონური";s:3:"yue";s:21:"კოპტური";s:3:"cop";s:24:"კიმაშამი";s:3:"jmc";s:15:"კამბა";s:3:"kam";s:36:"კაბუვერდიანუ";s:3:"kea";s:31:"კოირა-ჩიინი";s:3:"khq";s:27:"კალენჯინი";s:3:"kln";s:21:"კონკანი";s:3:"kok";s:18:"კურუქი";s:3:"kru";s:34:"उत्तरी देबेल";s:2:"nd";s:34:"उत्तर देबेली";s:2:"nd";s:40:"उत्तर नेडेबेले";s:2:"nd";s:18:"კვასიო";s:3:"nmg";s:12:"კიჩე";s:3:"quc";s:40:"კოირაბორო-სენი";s:3:"ses";s:24:"კომორული";s:3:"swb";s:40:"კონგოს სუაჰილი";s:3:"swc";s:24:"კლინგონი";s:3:"tlh";s:49:"კანადური ფრანგული";s:5:"fr-ca";s:18:"კაჩინი";s:3:"kac";s:24:"კიმბუნდუ";s:3:"kmb";s:18:"კუსაიე";s:3:"kos";s:15:"კპელე";s:3:"kpe";s:27:"კარელიური";s:3:"krl";s:21:"კუტენაი";s:3:"kut";s:52:"კლასიკური ნევარული";s:3:"nwc";s:49:"კლასიკური სირიული";s:3:"syc";s:27:"उम्बुन्डु";s:3:"umb";s:18:"კაიუგა";s:3:"cay";}i:16;a:11:{s:21:"កាតាឡាន";s:2:"ca";s:15:"ក្រិច";s:2:"el";s:21:"ក្រូអាត";s:2:"hr";s:42:"កាហ្សាក់ស្តង់់";s:2:"kk";s:15:"កន្នដ";s:2:"kn";s:15:"កូរ៉េ";s:2:"ko";s:21:"កាស្មៀរ";s:2:"ks";s:9:"紐埃文";s:3:"niu";s:21:"កេទជួអា";s:2:"qu";s:6:"丰文";s:3:"fon";s:9:"팀니어";s:3:"tem";}i:221;a:58:{s:21:"ಕೆಟಲಾನ್";s:2:"ca";s:15:"ಕಮೊರೊ";s:2:"ch";s:27:"ಕೋರ್ಸಿಕನ್";s:2:"co";s:12:"ಕ್ರೀ";s:2:"cr";s:49:"ಕ್ರಿಮೀಯನ್ ಟರ್ಕಿಷ್";s:3:"crh";s:24:"ಕಶುಬಿಯನ್";s:3:"csb";s:52:"ಕೆನೆಡಿಯನ್ ಇಂಗ್ಲೀಷ್";s:5:"en-ca";s:33:"ಕ್ರೊಯೇಶಿಯನ್";s:2:"hr";s:34:"ಕಾರಾ-ಕಲ್ಪಾಕ್";s:3:"kaa";s:15:"ಕಬೈಲ್";s:3:"kab";s:27:"ಕಬರ್ಡಿಯನ್";s:3:"kbd";s:15:"ಕೊಂಗೊ";s:2:"kg";s:18:"ಕಿಕುಯು";s:2:"ki";s:33:"ಕ್ವಾನ್‌ಯಾಮಾ";s:2:"kj";s:12:"ಕಝಕ್";s:2:"kk";s:33:"ಕಲಾಲ್ಲಿಸುಟ್";s:2:"kl";s:15:"ಕನ್ನಡ";s:2:"kn";s:21:"ಕೊರಿಯನ್";s:2:"ko";s:37:"ಕೊಮಿ-ಪರ್ಮ್ಯಕ್";s:3:"koi";s:15:"ಕನುರಿ";s:2:"kr";s:37:"ಕರಚಯ್-ಬಲ್ಕಾರ್";s:3:"krc";s:24:"ಕಾಶ್ಮೀರಿ";s:2:"ks";s:24:"ಕುರ್ದಿಷ್";s:2:"ku";s:12:"ಕೋಮಿ";s:2:"kv";s:24:"ಕೋರ್ನಿಷ್";s:2:"kw";s:24:"ಕಿರ್ಗಿಜ್";s:2:"ky";s:18:"ಕಾಡಿನೋ";s:3:"lad";s:18:"ಕ್ರೀಕ್";s:3:"mus";s:27:"ಕಿರಾಂಡೀಸ್";s:3:"mwl";s:24:"ಕ್ವೆಚುವಾ";s:2:"qu";s:39:"ಕೀನ್ಯಾರುವಾಂಡಾ";s:2:"rw";s:24:"ಕಲ್‌ಮೈಕ್";s:3:"xal";s:15:"ಕ್ಸೋಸ";s:2:"xh";s:27:"ಕಾಂಟೊನೀಸ್";s:3:"yue";s:24:"ಕೊಪ್ಟಿಕ್";s:3:"cop";s:12:"ಕಂಬಾ";s:3:"kam";s:36:"ಕಬುವೆರ್ಡಿಯನು";s:3:"kea";s:28:"ಕೊಯ್ರ ಚೀನಿ";s:3:"khq";s:24:"ಕಲೆಂಜಿನ್";s:3:"kln";s:18:"ಕೊಂಕಣಿ";s:3:"kok";s:18:"ಕುರುಖ್";s:3:"kru";s:12:"ಕಿಷೆ";s:3:"quc";s:46:"ಕೊಯ್ರಬೊರೊ ಸೆನ್ನಿ";s:3:"ses";s:27:"ಕೊಮೊರಿಯನ್";s:3:"swb";s:37:"ಕಾಂಗೊ ಸ್ವಹಿಲಿ";s:3:"swc";s:24:"ಕ್ಲಿಂಗನ್";s:3:"tlh";s:49:"ಕೆನೆಡಿಯನ್ ಫ್ರೆಂಚ್";s:5:"fr-ca";s:24:"ಕ್ಯಾಡ್ಡೋ";s:3:"cad";s:18:"ಕಾರಿಬ್";s:3:"car";s:15:"ಕಚಿನ್";s:3:"kac";s:12:"ಕಾವಿ";s:3:"kaw";s:12:"ಕೋರೋ";s:3:"kfo";s:24:"ಕಿಂಬುಂಡು";s:3:"kmb";s:24:"ಕೊಸರಿಯನ್";s:3:"kos";s:21:"ಕಪೆಲ್ಲೆ";s:3:"kpe";s:24:"ಕರೇಲಿಯನ್";s:3:"krl";s:18:"ಕುಮೈಕ್";s:3:"kum";s:24:"ಕುಟೇನಾಯ್";s:3:"kut";}i:96;a:64:{s:21:"ကာတာလန်";s:2:"ca";s:39:"швайцарская нямецкая";s:5:"de-ch";s:49:"швейцарски горногермански";s:5:"de-ch";s:38:"швейцари дээр герман";s:5:"de-ch";s:35:"швйецариаг немыцаг";s:5:"de-ch";s:51:"швейцарский верхненемецкий";s:5:"de-ch";s:48:"швајцарски високи немачки";s:5:"de-ch";s:43:"ကနေဒါ အင်္ဂလိပ်";s:5:"en-ca";s:14:"шпански";s:2:"es";s:39:"шатландская гэльская";s:2:"gd";s:39:"шатляндзкая гэльская";s:2:"gd";s:33:"шотландски галски";s:2:"gd";s:27:"шкотски гелски";s:2:"gd";s:23:"шотланд келт";s:2:"gd";s:33:"швейцарски немски";s:3:"gsw";s:44:"швейцариялық неміс тілі";s:3:"gsw";s:39:"швајцарски германски";s:3:"gsw";s:29:"швейцари герман";s:3:"gsw";s:39:"швейцарский немецкий";s:3:"gsw";s:17:"шичуан еи";s:2:"ii";s:21:"ကွန်ဂို";s:2:"kg";s:21:"ကန္နာဒါ";s:2:"kn";s:30:"ကိုးရီးယား";s:2:"ko";s:34:"ကိုမီ-ပါမြက်";s:3:"koi";s:30:"ကက်ရှ်မီရီ";s:2:"ks";s:9:"ကဒ်";s:2:"ku";s:30:"ကင်ရာဝန်ဒါ";s:2:"rw";s:22:"шатляндзкая";s:3:"sco";s:20:"шотландски";s:3:"sco";s:33:"шкотски германски";s:3:"sco";s:22:"шотландский";s:3:"sco";s:22:"шотландська";s:3:"sco";s:8:"шона";s:2:"sn";s:12:"шонача";s:2:"sn";s:16:"шведская";s:2:"sv";s:16:"швэдзкая";s:2:"sv";s:14:"шведски";s:2:"sv";s:8:"швед";s:2:"sv";s:12:"шведче";s:2:"sv";s:16:"шведский";s:2:"sv";s:16:"шведська";s:2:"sv";s:16:"шлезиски";s:3:"szl";s:21:"ကွန်ကနီ";s:3:"kok";s:14:"шамбала";s:3:"ksb";s:20:"шамабалача";s:3:"ksb";s:34:"шпански (во Европа)";s:5:"es-es";s:37:"ကနေဒါ ပြင်သစ်";s:5:"fr-ca";s:43:"швайцарская француская";s:5:"fr-ch";s:35:"швейцарски френски";s:5:"fr-ch";s:48:"швейцариялық француз тілі";s:5:"fr-ch";s:27:"швейцари франц";s:5:"fr-ch";s:35:"швейцариаг францаг";s:5:"fr-ch";s:45:"швейцарский французский";s:5:"fr-ch";s:15:"ကချင်";s:3:"kac";s:6:"шан";s:3:"shn";s:14:"шанский";s:3:"shn";s:14:"шанська";s:3:"shn";s:18:"шумерская";s:3:"sux";s:16:"шумерски";s:3:"sux";s:18:"шумерский";s:3:"sux";s:18:"шумерська";s:3:"sux";s:12:"戈马拉文";s:3:"bbj";s:12:"戈馬拉文";s:3:"bbj";s:23:"штучная мова";s:3:"art";}i:581;a:30:{s:21:"ਕੈਟਾਲਾਨ";s:2:"ca";s:21:"ਕੋਰਸੀਕਨ";s:2:"co";s:49:"ਕੈਨੇਡੀਅਨ ਅੰਗਰੇਜ਼ੀ";s:5:"en-ca";s:8:"حبشي";s:2:"et";s:30:"ਕ੍ਰੋਏਸ਼ਿਆਈ";s:2:"hr";s:15:"ਕਬਾਇਲ";s:3:"kab";s:18:"ਕਿਕੂਯੂ";s:2:"ki";s:18:"ਕਜ਼ਾਖ਼";s:2:"kk";s:30:"ਕਲਾਅੱਲੀਸੁਟ";s:2:"kl";s:12:"ਕੰਨੜ";s:2:"kn";s:18:"ਕੋਰੀਆਈ";s:2:"ko";s:34:"ਕੋਮੀ-ਪੇਰਮਿਆਕ";s:3:"koi";s:21:"ਕਸ਼ਮੀਰੀ";s:2:"ks";s:12:"ਕੁਰਦ";s:2:"ku";s:21:"ਕੋਰਨਿਸ਼";s:2:"kw";s:21:"ਕਿਰਗੀਜ਼";s:2:"ky";s:21:"ਕਕੇਸ਼ੁਆ";s:2:"qu";s:33:"ਕਿਨਿਆਰਵਾਂਡਾ";s:2:"rw";s:12:"ਕੰਬਾ";s:3:"kam";s:36:"ਕਾਬੁਵੇਰਦਿਆਨੂ";s:3:"kea";s:28:"ਕੋਯਰਾ ਚੀਨੀ";s:3:"khq";s:18:"ਕਲੇਜਿਨ";s:3:"kln";s:18:"ਕੋਂਕਣੀ";s:3:"kok";s:31:"ਕਈ ਭਾਸ਼ਾਵਾਂ";s:3:"mul";s:18:"ਕਵਾਸਿਓ";s:3:"nmg";s:12:"ਕੇਸ਼";s:3:"quc";s:43:"ਕੋਇਰਾਬੋਰੋ ਸੇਂਨੀ";s:3:"ses";s:37:"ਕਾਂਗੋ ਸਵਾਹਿਲੀ";s:3:"swc";s:60:"ਕੋਈ ਭਾਸ਼ਾਈ ਸਮੱਗਰੀ ਨਹੀਂ";s:3:"zxx";s:49:"ਕੈਨੇਡੀਅਨ ਫਰਾਂਸੀਸੀ";s:5:"fr-ca";}i:482;a:52:{s:18:"කැටලන්";s:2:"ca";s:36:"ක්‍රොඑශියානු";s:2:"co";s:58:"කැනේඩියානු ඉංග්‍රීසි";s:5:"en-ca";s:39:"ක්‍රෝයේශියානු";s:2:"hr";s:18:"লোজবান";s:3:"jbo";s:15:"කැබලා";s:3:"kab";s:18:"කිකුයු";s:2:"ki";s:15:"කසාඛ්";s:2:"kk";s:24:"කලාලිසට්";s:2:"kl";s:12:"කමර්";s:2:"km";s:15:"කණ්ණඩ";s:2:"kn";s:24:"කොරියානු";s:2:"ko";s:40:"කොමි-පර්මියාක්";s:3:"koi";s:24:"කාෂ්මීර්";s:2:"ks";s:18:"කුර්දි";s:2:"ku";s:30:"කෝනීසියානු";s:2:"kw";s:24:"කිර්ගිස්";s:2:"ky";s:15:"লাটিন";s:2:"la";s:18:"লাডিনো";s:3:"lad";s:45:"লুক্সেমবার্গীয়";s:2:"lb";s:27:"লেজঘিয়ান";s:3:"lez";s:33:"লিম্বুর্গিশ";s:2:"li";s:24:"লিঙ্গালা";s:2:"ln";s:9:"লাও";s:2:"lo";s:12:"লোজি";s:3:"loz";s:33:"লিথুয়েনীয়";s:2:"lt";s:15:"লুশাই";s:3:"lus";s:27:"লাত্‌ভীয়";s:2:"lv";s:24:"ක්වීචුවා";s:2:"qu";s:36:"කින්යර්වන්ඩා";s:2:"rw";s:18:"කැම්බා";s:3:"kam";s:39:"කබුවෙර්ඩියානෝ";s:3:"kea";s:31:"කොයිරා චිනි";s:3:"khq";s:24:"කලෙන්ජන්";s:3:"kln";s:21:"කොන්කනි";s:3:"kok";s:18:"লাঙ্গি";s:3:"lag";s:18:"লাকোটা";s:3:"lkt";s:37:"লুবা-কাটাঙ্গা";s:2:"lu";s:34:"লুবা-লুলুয়া";s:3:"lua";s:15:"লুয়ো";s:3:"luo";s:18:"লুইয়া";s:3:"luy";s:21:"කුවාසිඔ";s:3:"nmg";s:18:"කියිචේ";s:3:"quc";s:49:"කෝයිරාබොරො සෙන්නි";s:3:"ses";s:25:"লুলে সামি";s:3:"smj";s:43:"කොන්ගෝ ස්වාහිලි";s:3:"swc";s:74:"ল্যাটিন আমেরিকান স্প্যানিশ";s:6:"es-419";s:49:"කැනේඩියානු ප්‍රංශ";s:5:"fr-ca";s:18:"লান্ডা";s:3:"lah";s:18:"লাম্বা";s:3:"lam";s:21:"লুইসেনো";s:3:"lui";s:18:"লুন্ডা";s:3:"lun";}i:965;a:75:{s:27:"கேட்டலான்";s:2:"ca";s:27:"கோர்சிகன்";s:2:"co";s:12:"க்ரீ";s:2:"cr";s:52:"கிரிமியன் துர்க்கி";s:3:"crh";s:24:"கஷுபியன்";s:3:"csb";s:27:"கிரேக்கம்";s:2:"el";s:46:"கனடியன் ஆங்கிலம்";s:5:"en-ca";s:18:"காகௌஸ்";s:3:"gag";s:27:"காலிஸியன்";s:2:"gl";s:18:"குரானி";s:2:"gn";s:18:"கோதிக்";s:3:"got";s:27:"குஜராத்தி";s:2:"gu";s:27:"குரோஷியன்";s:2:"hr";s:34:"காரா-கல்பாக்";s:3:"kaa";s:21:"கபாய்ல்";s:3:"kab";s:30:"கபார்டியன்";s:3:"kbd";s:18:"காங்கோ";s:2:"kg";s:18:"கிகுயூ";s:2:"ki";s:30:"குவான்யாமா";s:2:"kj";s:15:"கசாக்";s:2:"kk";s:27:"கலாலிசூட்";s:2:"kl";s:18:"கெமெர்";s:2:"km";s:21:"கன்னடம்";s:2:"kn";s:21:"கொரியன்";s:2:"ko";s:43:"கொமி-பெர்ம்யாக்";s:3:"koi";s:15:"கனுரி";s:2:"kr";s:37:"கராசே-பல்கார்";s:3:"krc";s:24:"காஷ்மிரி";s:2:"ks";s:24:"குர்திஷ்";s:2:"ku";s:12:"கோமி";s:2:"kv";s:24:"கார்னிஷ்";s:2:"kw";s:24:"கிர்கிஸ்";s:2:"ky";s:18:"கான்டா";s:2:"lg";s:18:"க்ரீக்";s:3:"mus";s:24:"கிவேசுவா";s:2:"qu";s:42:"கின்யாருவான்டா";s:2:"rw";s:21:"கல்மிக்";s:3:"xal";s:30:"காண்டோனீஸ்";s:3:"yue";s:24:"காப்டிக்";s:3:"cop";s:6:"கா";s:3:"gaa";s:12:"குஸி";s:3:"guz";s:15:"கம்பா";s:3:"kam";s:39:"கபுவெர்தியானு";s:3:"kea";s:31:"கொய்ரா சீனீ";s:3:"khq";s:27:"கலின்ஜின்";s:3:"kln";s:21:"கொங்கணி";s:3:"kok";s:18:"குருக்";s:3:"kru";s:24:"க்வாசியோ";s:3:"nmg";s:12:"கீசீ";s:3:"quc";s:49:"கொய்ராபோரோ சென்னி";s:3:"ses";s:27:"கொமோரியன்";s:3:"swb";s:43:"காங்கோ சுவாஹிலி";s:3:"swc";s:30:"க்ளிங்கோன்";s:3:"tlh";s:40:"கனடிய பிரெஞ்சு";s:5:"fr-ca";s:12:"கீஜ்";s:3:"gez";s:12:"கேடோ";s:3:"cad";s:15:"கரீப்";s:3:"car";s:55:"கிழக்கு ஃப்ரிஸியான்";s:3:"frs";s:9:"கயோ";s:3:"gay";s:36:"கில்பெர்டீஸ்";s:3:"gil";s:18:"கோன்டி";s:3:"gon";s:27:"கோரோன்டலோ";s:3:"gor";s:18:"க்ரேபோ";s:3:"grb";s:24:"குவிசின்";s:3:"gwi";s:18:"காசின்";s:3:"kac";s:12:"காவி";s:3:"kaw";s:12:"கோரோ";s:3:"kfo";s:12:"காஸி";s:3:"kha";s:24:"கோதானீஸ்";s:3:"kho";s:30:"கிம்புன்து";s:3:"kmb";s:24:"கோஸ்ரைன்";s:3:"kos";s:24:"க்பெல்லே";s:3:"kpe";s:24:"கரேலியன்";s:3:"krl";s:21:"கும்இக்";s:3:"kum";s:18:"குடேனை";s:3:"kut";}i:93;a:107:{s:21:"కెటలాన్";s:2:"ca";s:27:"కోర్సికన్";s:2:"co";s:12:"క్రి";s:2:"cr";s:49:"క్రిమియన్ టర్కిష్";s:3:"crh";s:24:"కషుబియన్";s:3:"csb";s:49:"కెనడియన్ ఇంగ్లీష్";s:5:"en-ca";s:12:"ꑭꀠꑸꉙ";s:2:"es";s:10:"хауза";s:2:"ha";s:10:"хауса";s:2:"ha";s:14:"хаусача";s:2:"ha";s:8:"хака";s:3:"hak";s:16:"хавайски";s:3:"haw";s:16:"хавајски";s:3:"haw";s:10:"хавай";s:3:"haw";s:18:"хебрејски";s:2:"he";s:12:"хіндзі";s:2:"hi";s:10:"хинди";s:2:"hi";s:14:"хиндиче";s:2:"hi";s:20:"хилигайнон";s:3:"hil";s:26:"хилигајнонски";s:3:"hil";s:20:"хілігайнон";s:3:"hil";s:17:"хири моту";s:2:"ho";s:16:"хиримоту";s:2:"ho";s:17:"хірі-моту";s:2:"ho";s:18:"харвацкая";s:2:"hr";s:18:"хърватски";s:2:"hr";s:12:"хорват";s:2:"hr";s:16:"хорватча";s:2:"hr";s:16:"хрватски";s:2:"hr";s:16:"хорватаг";s:2:"hr";s:20:"хорватский";s:2:"hr";s:33:"క్రొయెషియన్";s:2:"hr";s:20:"хорватська";s:2:"hr";s:18:"хаитянски";s:2:"ht";s:14:"хаитски";s:2:"ht";s:12:"хереро";s:2:"hz";s:34:"కారా-కల్పాక్";s:3:"kaa";s:18:"కాబిల్";s:3:"kab";s:30:"కబార్డియన్";s:3:"kbd";s:15:"కోంగో";s:2:"kg";s:18:"కికుయు";s:2:"ki";s:27:"క్వాన్యామ";s:2:"kj";s:10:"хасаг";s:2:"kk";s:12:"కజఖ్";s:2:"kk";s:33:"కలాల్లిసూట్";s:2:"kl";s:15:"కన్నడ";s:2:"kn";s:21:"కొరియన్";s:2:"ko";s:34:"కోమి-పర్మాక్";s:3:"koi";s:18:"కానురి";s:2:"kr";s:34:"కరచే-బల్కార్";s:3:"krc";s:24:"కాశ్మీరి";s:2:"ks";s:21:"కర్డిష్";s:2:"ku";s:12:"కోమి";s:2:"kv";s:24:"కోర్నిష్";s:2:"kw";s:24:"కిర్గిజ్";s:2:"ky";s:18:"క్రీక్";s:3:"mus";s:18:"холандски";s:2:"nl";s:18:"కెషుయా";s:2:"qu";s:36:"కిన్యర్వాండా";s:2:"rw";s:17:"хойд сами";s:2:"se";s:25:"хорватын серб";s:2:"sh";s:12:"хальмг";s:3:"xal";s:21:"కల్మిక్";s:3:"xal";s:8:"хоса";s:2:"xh";s:24:"కాంటనీస్";s:3:"yue";s:10:"хятад";s:2:"zh";s:37:"хялбаршуулсан хятад";s:7:"zh-hans";s:9:"콥트어";s:3:"cop";s:24:"కోప్టిక్";s:3:"cop";s:12:"хитски";s:3:"hit";s:16:"хетитски";s:3:"hit";s:16:"хеттский";s:3:"hit";s:12:"хітіті";s:3:"hit";s:12:"కంబా";s:3:"kam";s:39:"కాబువేర్దియను";s:3:"kea";s:34:"కొయరా చీన్నీ";s:3:"khq";s:24:"కలెంజిన్";s:3:"kln";s:18:"కొంకణి";s:3:"kok";s:18:"కూరుఖ్";s:3:"kru";s:23:"хойд ндебеле";s:2:"nd";s:24:"క్వాసియె";s:3:"nmg";s:12:"కిచే";s:3:"quc";s:9:"賽納文";s:3:"seh";s:49:"కోయోరాబోరో సెన్నీ";s:3:"ses";s:27:"కొమొరియన్";s:3:"swb";s:40:"కాంగో స్వాహిలి";s:3:"swc";s:27:"క్లింగాన్";s:3:"tlh";s:45:"хэл зүйн агуулга байхгүй";s:3:"zxx";s:49:"కెనడియెన్ ఫ్రెంచ్";s:5:"fr-ca";s:18:"కేడ్డో";s:3:"cad";s:18:"కేరిబ్";s:3:"car";s:10:"хайда";s:3:"hai";s:10:"хајда";s:3:"hai";s:10:"хмонг";s:3:"hmn";s:8:"хупа";s:3:"hup";s:18:"కాచిన్";s:3:"kac";s:12:"కావి";s:3:"kaw";s:12:"కోరో";s:3:"kfo";s:16:"хотански";s:3:"kho";s:18:"хотанский";s:3:"kho";s:26:"хотаносакська";s:3:"kho";s:27:"కిమ్బుండు";s:3:"kmb";s:27:"కోస్రేయన్";s:3:"kos";s:24:"కరేలియన్";s:3:"krl";s:24:"хъуымыхъхъаг";s:3:"kum";s:24:"కుమ్యిక్";s:3:"kum";s:18:"కుటేనై";s:3:"kut";}i:585;a:73:{s:21:"กาตาลัง";s:2:"ca";s:24:"กาปิซนอน";s:3:"cps";s:12:"กรีก";s:2:"el";s:21:"กากาอุซ";s:3:"gag";s:24:"กาลิเซีย";s:2:"gl";s:18:"กิลากี";s:3:"glk";s:21:"กวารานี";s:2:"gn";s:27:"กรีกโบราณ";s:3:"grc";s:31:"การา-กาลพาก";s:3:"kaa";s:15:"กาไบล";s:3:"kab";s:18:"กีกูยู";s:2:"ki";s:21:"กวนยามา";s:2:"kj";s:27:"กรีนแลนด์";s:2:"kl";s:21:"กันนาดา";s:2:"kn";s:27:"กินารายอา";s:3:"krj";s:21:"กัศมีร์";s:2:"ks";s:18:"رومانیولو";s:3:"rgn";s:12:"رومانش";s:2:"rm";s:18:"رومانىشچە";s:2:"rm";s:16:"روندیایی";s:2:"rn";s:10:"رُندی";s:2:"rn";s:14:"رۇندىچە";s:2:"rn";s:10:"رونڈی";s:2:"rn";s:18:"رومانیایی";s:2:"ro";s:12:"رومٲنی";s:2:"ro";s:12:"روماني";s:2:"ro";s:20:"رۇمىنىيەچە";s:2:"ro";s:10:"رومنی";s:2:"ro";s:8:"روسی";s:2:"ru";s:10:"روٗسی";s:2:"ru";s:8:"روسي";s:2:"ru";s:10:"رۇسچە";s:2:"ru";s:18:"رىۋانداچە";s:2:"rw";s:24:"กวางตุ้ง";s:3:"yue";s:23:"رِوٲجی چیٖنی";s:7:"zh-hant";s:21:"روایتی چینی";s:7:"zh-hant";s:6:"กา";s:3:"gaa";s:15:"กุซซี";s:3:"guz";s:21:"กอนกานี";s:3:"kok";s:15:"กุรุข";s:3:"kru";s:21:"กวาซิโอ";s:3:"nmg";s:12:"กีเช";s:3:"quc";s:10:"رومبو";s:3:"rof";s:14:"رومبویی";s:3:"rof";s:14:"رومبوچە";s:3:"rof";s:6:"روا";s:3:"rwk";s:10:"روایی";s:3:"rwk";s:12:"رىۋاچە";s:3:"rwk";s:9:"กีซ";s:3:"gez";s:12:"กาโย";s:3:"gay";s:15:"กบายา";s:3:"gba";s:27:"กิลเบอร์ต";s:3:"gil";s:15:"กอนดิ";s:3:"gon";s:27:"กอรอนทาโล";s:3:"gor";s:21:"กวิชอิน";s:3:"gwi";s:18:"กะฉิ่น";s:3:"kac";s:9:"กวี";s:3:"kaw";s:12:"กาสี";s:3:"kha";s:15:"กาแปล";s:3:"kpe";s:16:"راجستانی";s:3:"raj";s:20:"راجِستھٲنۍ";s:3:"raj";s:20:"راجاستانچە";s:3:"raj";s:16:"راپانویی";s:3:"rap";s:14:"رَپانوی";s:3:"rap";s:18:"راپانىيچە";s:3:"rap";s:22:"راروتونگایی";s:3:"rar";s:22:"رَروٹونٛگَن";s:3:"rar";s:16:"رومانویی";s:3:"rom";s:12:"رومَنی";s:3:"rom";s:15:"กัมเบ";s:3:"sba";s:42:"رموز المعايير الأساسية";s:3:"zbl";s:6:"กม";s:3:"bkm";s:39:"กอนกานีของกัว";s:3:"gom";}i:603;a:74:{s:18:"كاتالانچە";s:2:"ca";s:14:"كورساچە";s:2:"co";s:10:"كرىچە";s:2:"cr";s:18:"كاسزۇبىچە";s:3:"csb";s:31:"كانادا ئىنگلىزچە";s:5:"en-ca";s:18:"ਫ਼ਾਰਸੀ";s:2:"fa";s:18:"ਫਿਨਿਸ਼";s:2:"fi";s:18:"ਫ਼ਿਜ਼ੀ";s:2:"fj";s:21:"ਫ਼ੇਰੋਸੇ";s:2:"fo";s:24:"ਫਰਾਂਸੀਸੀ";s:2:"fr";s:28:"ਫਿਜੀ ਹਿੰਦੀ";s:3:"hif";s:16:"كابىلېچە";s:3:"kab";s:20:"كاباردەيچە";s:3:"kbd";s:14:"كونگوچە";s:2:"kg";s:16:"كىكۇيۇچە";s:2:"ki";s:22:"كىۋانياماچە";s:2:"kj";s:16:"كالاليست";s:2:"kl";s:16:"كىخمېرچە";s:2:"km";s:18:"كانناداچە";s:2:"kn";s:16:"كورېيەچە";s:2:"ko";s:25:"كومي-بيرماياك";s:3:"koi";s:16:"كانۇرىچە";s:2:"kr";s:16:"كەشمىرچە";s:2:"ks";s:14:"كولىشچە";s:3:"ksh";s:12:"كۇردچە";s:2:"ku";s:28:"كوردي (عەرەبی)‏";s:7:"ku-arab";s:12:"كومىچە";s:2:"kv";s:16:"كورنىشچە";s:2:"kw";s:14:"كىرىكچە";s:3:"mus";s:14:"كېچياچە";s:2:"qu";s:16:"كوپتىكچە";s:3:"cop";s:24:"ਫਿਲੀਪਿਨੋ";s:3:"fil";s:14:"كامباچە";s:3:"kam";s:24:"كابوفيرديانو";s:3:"kea";s:28:"كابۇۋېردىيانچە";s:3:"kea";s:22:"كابويرديانو";s:3:"kea";s:21:"كويرا تشيني";s:3:"khq";s:23:"كويرا چىنىچە";s:3:"khq";s:19:"كويرا شيني";s:3:"khq";s:16:"كالينجين";s:3:"kln";s:20:"كالېنجىنچە";s:3:"kln";s:18:"كونكانىچە";s:3:"kok";s:12:"كرخانة";s:3:"kru";s:14:"كۇرۇكچە";s:3:"kru";s:19:"كۆپ تىللار";s:3:"mul";s:21:"ਫਲੈਮਿਸ਼";s:5:"nl-be";s:12:"كواسيو";s:3:"nmg";s:18:"كۋاسىيوچە";s:3:"nmg";s:12:"كوايسو";s:3:"nmg";s:8:"كيشي";s:3:"quc";s:8:"كيشی";s:3:"quc";s:27:"كويرابورو سيني";s:3:"ses";s:27:"كويرابورو سينی";s:3:"ses";s:16:"كومورىچە";s:3:"swb";s:27:"كونگو سىۋالىچە";s:3:"swc";s:20:"كىلىنگونچە";s:3:"tlh";s:33:"كانادا فىرانسۇزچە";s:5:"fr-ca";s:14:"كاددوچە";s:3:"cad";s:14:"كارىبچە";s:3:"car";s:14:"كاچىنچە";s:3:"kac";s:12:"كاۋىچە";s:3:"kaw";s:12:"كانمبو";s:3:"kbl";s:18:"كانېمبۇچە";s:3:"kbl";s:12:"كوروچە";s:3:"kfo";s:12:"كاسىچە";s:3:"kha";s:20:"كىمبۇندۇچە";s:3:"kmb";s:18:"كوسرايېچە";s:3:"kos";s:18:"كىپەللېچە";s:3:"kpe";s:14:"كارەلچە";s:3:"krl";s:18:"كۇتەنايچە";s:3:"kut";s:31:"كلاسسىك سۈرىيەچە";s:3:"syc";s:10:"كومچە";s:3:"bkm";s:16:"كايۇگاچە";s:3:"cay";s:12:"كاكوچە";s:3:"kkj";}i:152;a:13:{s:18:"加泰罗尼亚文";s:2:"ca";s:18:"加泰羅尼亞文";s:2:"ca";s:15:"加拿大英文";s:5:"en-ca";s:12:"加告兹文";s:3:"gag";s:12:"加告茲文";s:3:"gag";s:15:"加利西亚文";s:2:"gl";s:15:"加利西亞文";s:2:"gl";s:6:"加文";s:3:"gaa";s:9:"加族文";s:3:"gaa";s:15:"加拿大法文";s:5:"fr-ca";s:12:"加勒比文";s:3:"car";s:9:"加約文";s:3:"gay";s:15:"加涅姆布文";s:3:"kbl";}i:670;a:54:{s:24:"چینی مین شرقی";s:3:"cdo";s:8:"چچنی";s:2:"ce";s:10:"چیچَن";s:2:"ce";s:14:"چېچىنچە";s:2:"ce";s:16:"چامورویی";s:2:"ch";s:18:"چامورروچە";s:2:"ch";s:14:"چوکتویی";s:3:"cho";s:12:"چوکتَو";s:3:"cho";s:16:"چوكتاۋچە";s:3:"cho";s:16:"چروکیایی";s:3:"chr";s:14:"چیٚروکی";s:3:"chr";s:16:"چېروكىچە";s:3:"chr";s:12:"چیروکی";s:3:"chr";s:14:"چېيېنچە";s:3:"chy";s:6:"چکی";s:2:"cs";s:8:"چیٚک";s:2:"cs";s:6:"چېک";s:2:"cs";s:10:"چېخچە";s:2:"cs";s:6:"چیک";s:2:"cs";s:21:"چٔرچ سلاوِک";s:2:"cu";s:12:"چوواشی";s:2:"cv";s:10:"چُواش";s:2:"cv";s:14:"چۇۋاشچە";s:2:"cv";s:17:"چینی ادبی";s:3:"lzh";s:9:"ሾናኛ";s:2:"sn";s:12:"چوانگی";s:2:"za";s:8:"چینی";s:2:"zh";s:10:"چیٖنی";s:2:"zh";s:8:"چیني";s:2:"zh";s:21:"چینی کلاسیک";s:12:"zh-classical";s:17:"چینی (چین)";s:5:"zh-cn";s:26:"چینی ساده‌شده";s:7:"zh-hans";s:28:"چینی (آسان کردہ)";s:7:"zh-hans";s:17:"چینی سنتی";s:7:"zh-hant";s:24:"چینی (هنگ کنگ)";s:5:"zh-hk";s:24:"چینی (مین نان)";s:10:"zh-min-nan";s:25:"چینی (سنگاپور)";s:5:"zh-sg";s:23:"چینی (تایوان)";s:5:"zh-tw";s:8:"چیگا";s:3:"cgg";s:12:"چىگاچە";s:3:"cgg";s:19:"چندین زبان";s:3:"mul";s:10:"چیبچا";s:3:"chb";s:12:"چیٖبچا";s:3:"chb";s:14:"چىبچاچە";s:3:"chb";s:14:"چھَگتاے";s:3:"chg";s:18:"چاغاتايچە";s:3:"chg";s:8:"چوکی";s:3:"chk";s:12:"چُکیٖز";s:3:"chk";s:10:"چۇكچە";s:3:"chk";s:25:"چِنوٗک جارگَن";s:3:"chn";s:27:"چىنۇك-ژارگونچە";s:3:"chn";s:24:"چیپه‌ویه‌ای";s:3:"chp";s:20:"چىپېۋيانچە";s:3:"chp";s:21:"چاد ئەرەبچە";s:3:"shu";}i:85;a:135:{s:14:"нохчийн";s:2:"ce";s:16:"нямецкая";s:2:"de";s:12:"немски";s:2:"de";s:19:"неміс тілі";s:2:"de";s:14:"немисче";s:2:"de";s:14:"немыцаг";s:2:"de";s:16:"немецкий";s:2:"de";s:14:"немачки";s:2:"de";s:16:"німецька";s:2:"de";s:30:"нямецкая (аўстр.)";s:5:"de-at";s:30:"нямецкая (швейц.)";s:5:"de-ch";s:67:"неміс тілінің швейцариялық диалекті";s:5:"de-ch";s:26:"нижнелужицкий";s:3:"dsb";s:28:"нижньолужицька";s:3:"dsb";s:35:"немисче (Швейцария)";s:3:"gsw";s:39:"німецька швейцарська";s:3:"gsw";s:21:"нэгдмэл хэл";s:2:"ie";s:12:"носуча";s:2:"ii";s:8:"носу";s:2:"ii";s:9:"日本語";s:2:"ja";s:6:"日文";s:2:"ja";s:12:"日德蘭文";s:3:"jut";s:10:"науру";s:2:"na";s:20:"науруански";s:2:"na";s:28:"нэапалітанская";s:3:"nap";s:26:"неаполитански";s:3:"nap";s:18:"неаполски";s:3:"nap";s:28:"неаполитанский";s:3:"nap";s:28:"неаполітанська";s:3:"nap";s:31:"нарвэская букмал";s:2:"nb";s:33:"нарвэская (букмал)";s:2:"nb";s:29:"норвежки букмол";s:2:"nb";s:35:"норвегиялық букмол";s:2:"nb";s:31:"норвежче (Букмал)";s:2:"nb";s:29:"норвешки букмол";s:2:"nb";s:31:"норвегийн букмол";s:2:"nb";s:33:"норвежский букмол";s:2:"nb";s:29:"норвешки бокмал";s:2:"nb";s:30:"нижнегерманский";s:3:"nds";s:28:"нижньонімецька";s:3:"nds";s:20:"непальская";s:2:"ne";s:16:"непалски";s:2:"ne";s:10:"непал";s:2:"ne";s:14:"непалча";s:2:"ne";s:20:"непальский";s:2:"ne";s:20:"непальська";s:2:"ne";s:16:"неварски";s:3:"new";s:18:"неварский";s:3:"new";s:12:"неварі";s:3:"new";s:12:"ндонга";s:2:"ng";s:12:"ниуеан";s:3:"niu";s:16:"ниуејски";s:3:"niu";s:8:"ниуэ";s:3:"niu";s:8:"ніуе";s:3:"niu";s:26:"нідэрляндзкая";s:2:"nl";s:24:"нидерландски";s:2:"nl";s:27:"нидерланд тілі";s:2:"nl";s:37:"нарвежская (нюнорск)";s:2:"nn";s:33:"нарвэская (нюнашк)";s:2:"nn";s:29:"норвежки нюношк";s:2:"nn";s:37:"норвегиялық нинорск";s:2:"nn";s:33:"норвежче (Нинорск)";s:2:"nn";s:31:"норвешки нинорск";s:2:"nn";s:33:"норвегийн нинорск";s:2:"nn";s:35:"норвежский нюнорск";s:2:"nn";s:31:"нюношк (Норвегія)";s:2:"nn";s:20:"нарвежская";s:2:"no";s:33:"нарвэская (букмол)";s:2:"no";s:16:"норвежки";s:2:"no";s:12:"норвег";s:2:"no";s:16:"норвежче";s:2:"no";s:16:"норвешки";s:2:"no";s:14:"норвеги";s:2:"no";s:20:"норвежский";s:2:"no";s:18:"норвезька";s:2:"no";s:14:"новијал";s:3:"nov";s:12:"навахо";s:2:"nv";s:14:"ньянджа";s:2:"ny";s:18:"帕皮亚门托文";s:3:"pap";s:18:"帕皮阿門托文";s:3:"pap";s:12:"нгомба";s:3:"jgo";s:16:"нгомбача";s:3:"jgo";s:31:"несколько языков";s:3:"mul";s:8:"нама";s:3:"naq";s:12:"намача";s:3:"naq";s:31:"ндебелє північна";s:2:"nd";s:6:"нко";s:3:"nqo";s:10:"нкочо";s:3:"nqo";s:25:"ндебели южный";s:2:"nr";s:31:"ндебелє південна";s:2:"nr";s:8:"нуер";s:3:"nus";s:12:"нуерче";s:3:"nus";s:8:"нуэр";s:3:"nus";s:16:"нианколе";s:3:"nyn";s:20:"ныйанколчо";s:3:"nyn";s:14:"нянколе";s:3:"nyn";s:16:"ньянколе";s:3:"nyn";s:16:"нјанколе";s:3:"nyn";s:27:"невядомая мова";s:3:"und";s:18:"невядомая";s:3:"und";s:22:"неопределен";s:3:"und";s:27:"непознат јазик";s:3:"und";s:25:"нӕзонгӕ ӕвзаг";s:3:"und";s:31:"неизвестный язык";s:3:"und";s:27:"непознат језик";s:3:"und";s:25:"невідома мова";s:3:"und";s:38:"немає мовного вмісту";s:3:"zxx";s:8:"ниас";s:3:"nia";s:10:"нијас";s:3:"nia";s:14:"ніаська";s:3:"nia";s:18:"нагайская";s:3:"nog";s:10:"ногаи";s:3:"nog";s:16:"ногајски";s:3:"nog";s:18:"ногайский";s:3:"nog";s:18:"ногайська";s:3:"nog";s:39:"невари (классический)";s:3:"nwc";s:29:"неварі класична";s:3:"nwc";s:16:"ниамвези";s:3:"nym";s:16:"ньямвези";s:3:"nym";s:16:"ньямвезі";s:3:"nym";s:10:"нуоро";s:3:"nyo";s:10:"ньоро";s:3:"nyo";s:10:"нзима";s:3:"nzi";s:10:"нзіма";s:3:"nzi";s:12:"帕拉维文";s:3:"pal";s:9:"帕劳文";s:3:"pau";s:14:"нгембеј";s:3:"sba";s:22:"нгамбайский";s:3:"sba";s:14:"нгамбай";s:3:"sba";s:23:"нианса тонга";s:3:"tog";s:23:"ньяса (тонга)";s:3:"tog";s:21:"ньяса тонга";s:3:"tog";s:16:"нгиембун";s:3:"nnh";s:18:"нгиембунд";s:3:"nnh";s:14:"нгємбун";s:3:"nnh";}i:95;a:77:{s:18:"чачэнская";s:2:"ce";s:16:"чеченски";s:2:"ce";s:18:"чеченский";s:2:"ce";s:18:"чеченська";s:2:"ce";s:12:"чаморо";s:2:"ch";s:16:"чаморски";s:2:"ch";s:14:"чаморро";s:2:"ch";s:10:"чокто";s:3:"cho";s:18:"чоктавски";s:3:"cho";s:12:"чоктав";s:3:"cho";s:12:"чероки";s:3:"chr";s:21:"чероки тілі";s:3:"chr";s:16:"черокиче";s:3:"chr";s:18:"черокиски";s:3:"chr";s:12:"чироки";s:3:"chr";s:12:"черокі";s:3:"chr";s:16:"чейенски";s:3:"chy";s:16:"чејенски";s:3:"chy";s:12:"чейенн";s:3:"chy";s:12:"чейєнн";s:3:"chy";s:14:"чэшская";s:2:"cs";s:12:"чэская";s:2:"cs";s:10:"чешки";s:2:"cs";s:15:"чех тілі";s:2:"cs";s:10:"чехче";s:2:"cs";s:6:"чех";s:2:"cs";s:10:"чехаг";s:2:"cs";s:14:"чешский";s:2:"cs";s:12:"чеська";s:2:"cs";s:18:"чувашская";s:2:"cv";s:16:"чуваская";s:2:"cv";s:14:"чувашки";s:2:"cv";s:14:"чувашаг";s:2:"cv";s:18:"чувашский";s:2:"cv";s:16:"чуваська";s:2:"cv";s:18:"గ్రీక్";s:2:"el";s:18:"గాగౌజ్";s:3:"gag";s:27:"గెలిషియన్";s:2:"gl";s:18:"గురాని";s:2:"gn";s:18:"గోథిక్";s:3:"got";s:21:"గుజరాతి";s:2:"gu";s:15:"గాండా";s:2:"lg";s:16:"чинянджа";s:2:"ny";s:12:"чжуань";s:2:"za";s:10:"чжуан";s:2:"za";s:8:"чига";s:3:"cgg";s:12:"чигача";s:3:"cgg";s:6:"గా";s:3:"gaa";s:18:"గుస్సీ";s:3:"guz";s:15:"గోంబా";s:3:"jgo";s:10:"чыбча";s:3:"chb";s:10:"чибча";s:3:"chb";s:10:"чібча";s:3:"chb";s:14:"чагатай";s:3:"chg";s:20:"чагатајски";s:3:"chg";s:22:"чагатайский";s:3:"chg";s:22:"чагатайська";s:3:"chg";s:8:"чуук";s:3:"chk";s:10:"чучки";s:3:"chk";s:18:"чукотский";s:3:"chk";s:16:"чуукська";s:3:"chk";s:27:"чинучки жаргон";s:3:"chn";s:23:"чинук жаргон";s:3:"chn";s:18:"чиипувски";s:3:"chp";s:22:"чипевјански";s:3:"chp";s:18:"чипевайян";s:3:"chp";s:17:"чіпев’ян";s:3:"chp";s:12:"గాయో";s:3:"gay";s:18:"గ్బాయా";s:3:"gba";s:33:"గిల్బర్టీస్";s:3:"gil";s:15:"గోండి";s:3:"gon";s:24:"గోరోంటలా";s:3:"gor";s:18:"గ్రేబో";s:3:"grb";s:24:"గ్విచిన్";s:3:"gwi";s:27:"чадски арапски";s:3:"shu";s:25:"чадский арабс";s:3:"shu";s:35:"чадійська арабська";s:3:"shu";}i:458;a:29:{s:15:"চেচেন";s:2:"ce";s:27:"চেবুয়ানো";s:3:"ceb";s:18:"চামেরো";s:2:"ch";s:15:"চক্টো";s:3:"cho";s:18:"চেরোকী";s:3:"chr";s:9:"চেক";s:2:"cs";s:37:"চার্চ স্লাভিও";s:2:"cu";s:15:"চুবাস";s:2:"cv";s:22:"客家語/hak-kâ-ngî";s:3:"hak";s:9:"客家語";s:3:"hak";s:9:"客家話";s:3:"hak";s:30:"オランダ低ザクセン語";s:6:"nds-nl";s:15:"オランダ語";s:2:"nl";s:12:"オック語";s:2:"oc";s:12:"オロモ語";s:2:"om";s:15:"オリヤー語";s:2:"or";s:15:"オセット語";s:2:"os";s:12:"চীনা";s:2:"zh";s:12:"চিগা";s:3:"cgg";s:27:"オーストラリア英語";s:5:"en-au";s:15:"চিবচা";s:3:"chb";s:21:"চাগাতাই";s:3:"chg";s:12:"চুকি";s:3:"chk";s:37:"চিনুক পরিভাষা";s:3:"chn";s:27:"চিপেওয়ান";s:3:"chp";s:21:"オジブウェー語";s:2:"oj";s:15:"オセージ語";s:3:"osa";s:24:"オスマントルコ語";s:3:"ota";s:28:"চিত্র ভাষা";s:3:"zbl";}i:269;a:88:{s:10:"čečenski";s:2:"ce";s:13:"čečenština";s:2:"ce";s:10:"čečėnų";s:2:"ce";s:8:"čečenu";s:2:"ce";s:12:"čečenčina";s:2:"ce";s:14:"čečenščina";s:2:"ce";s:7:"čamoro";s:2:"ch";s:13:"čamoršćina";s:2:"ch";s:8:"čamorų";s:2:"ch";s:8:"čamorru";s:2:"ch";s:11:"čamorčina";s:2:"ch";s:13:"čamorščina";s:2:"ch";s:10:"čoktavski";s:3:"cho";s:11:"čoktština";s:3:"cho";s:7:"čoktau";s:3:"cho";s:8:"čoktavu";s:3:"cho";s:12:"čoktavčina";s:3:"cho";s:14:"čoktavščina";s:3:"cho";s:7:"čiroki";s:3:"chr";s:15:"čerokézština";s:3:"chr";s:7:"čeroki";s:3:"chr";s:9:"čerokių";s:3:"chr";s:7:"čiroku";s:3:"chr";s:8:"čerokí";s:3:"chr";s:14:"čerokeščina";s:3:"chr";s:9:"čejenski";s:3:"chy";s:12:"čejenština";s:3:"chy";s:8:"čajenų";s:3:"chy";s:11:"čejenčina";s:3:"chy";s:13:"čejenščina";s:3:"chy";s:9:"čeština";s:2:"cs";s:7:"češki";s:2:"cs";s:10:"češćina";s:2:"cs";s:11:"čěšćina";s:2:"cs";s:6:"čekų";s:2:"cs";s:5:"čehu";s:2:"cs";s:13:"čeahkagiella";s:2:"cs";s:10:"češčina";s:2:"cs";s:9:"čuvaški";s:2:"cv";s:11:"čuvaština";s:2:"cv";s:10:"čiuvašų";s:2:"cv";s:8:"čuvašu";s:2:"cv";s:12:"čuvaščina";s:2:"cv";s:26:"čínština (dialekty gan)";s:3:"gan";s:28:"čínština (dialekty hakka)";s:3:"hak";s:12:"国际文字";s:2:"ia";s:19:"国际文字(e)";s:2:"ie";s:23:"čínština (klasická)";s:3:"lzh";s:29:"čínština (dialekty minnan)";s:3:"nan";s:8:"čičeva";s:2:"ny";s:5:"čewa";s:2:"ny";s:25:"čínština (dialekty wu)";s:3:"wuu";s:12:"čuangština";s:2:"za";s:11:"čuangčina";s:2:"za";s:11:"čínština";s:2:"zh";s:28:"čínština (zjednodušená)";s:7:"zh-hans";s:24:"čínština (tradičná)";s:7:"zh-hant";s:5:"čiga";s:3:"cgg";s:6:"čigų";s:3:"cgg";s:13:"čigajščina";s:3:"cgg";s:7:"čibča";s:3:"chb";s:7:"čibču";s:3:"chb";s:15:"čibčevščina";s:3:"chb";s:8:"čagatai";s:3:"chg";s:14:"čagatajština";s:3:"chg";s:8:"čagatų";s:3:"chg";s:13:"čagatajčina";s:3:"chg";s:15:"čagatajščina";s:3:"chg";s:8:"čukeski";s:3:"chk";s:10:"čukština";s:3:"chk";s:8:"čukesų";s:3:"chk";s:6:"čūku";s:3:"chk";s:9:"činukski";s:3:"chn";s:14:"činuk pidžin";s:3:"chn";s:16:"činuk žargonas";s:3:"chn";s:16:"činuku žargons";s:3:"chn";s:18:"činucký žargón";s:3:"chn";s:17:"činuški žargon";s:3:"chn";s:12:"čipvijanski";s:3:"chp";s:14:"čipevajština";s:3:"chp";s:10:"čipvėjų";s:3:"chp";s:11:"čipevaianu";s:3:"chp";s:13:"čipevajčina";s:3:"chp";s:13:"čipevščina";s:3:"chp";s:8:"čigānu";s:3:"rom";s:15:"čadski arapski";s:3:"shu";s:18:"čadská arabčina";s:3:"shu";s:28:"čínština (dialekty xiang)";s:3:"hsn";}i:932;a:49:{s:18:"Τσέτσνιαν";s:2:"ce";s:16:"Τσοκτάου";s:3:"cho";s:12:"喬克托文";s:3:"cho";s:14:"Τσερόκι";s:3:"chr";s:33:"Τουρκικά Κριμαίας";s:3:"crh";s:14:"Τσεχικά";s:2:"cs";s:12:"喬治亞文";s:2:"ka";s:16:"Τασελχίτ";s:3:"shi";s:10:"Ταμίλ";s:2:"ta";s:18:"Τελούγκου";s:2:"te";s:12:"Τέτουμ";s:3:"tet";s:12:"Τατζίκ";s:2:"tg";s:20:"Ταϊλανδικά";s:2:"th";s:18:"Τιγκρίνυα";s:2:"ti";s:22:"Τουρκμενικά";s:2:"tk";s:18:"Ταγκαλόγκ";s:2:"tl";s:18:"Τσιγουάνα";s:2:"tn";s:20:"Τονγκανικά";s:2:"to";s:17:"Τοκ Πισίν";s:3:"tpi";s:16:"Τουρκικά";s:2:"tr";s:14:"Τσόνγκα";s:2:"ts";s:10:"Τατάρ";s:2:"tt";s:18:"Τουμπούκα";s:3:"tum";s:8:"Τούι";s:2:"tw";s:16:"Ταϊτιανά";s:2:"ty";s:18:"Τουβίνιαν";s:3:"tyv";s:46:"Ταμαζίτ Κεντρικού Μαρόκο";s:3:"tzm";s:12:"Τσίγκα";s:3:"cgg";s:10:"Τάιτα";s:3:"dav";s:19:"Τζόλα-Φόνι";s:3:"dyo";s:8:"Τέσο";s:3:"teo";s:14:"Τασαβάκ";s:3:"twq";s:46:"Τυπικά Ταμαζίγκτ Μαρόκου";s:3:"zgh";s:12:"Τίγκρε";s:3:"tig";s:16:"Τσίμπτσα";s:3:"chb";s:18:"Τσαγκατάι";s:3:"chg";s:16:"Τσουκίζι";s:3:"chk";s:18:"Τσίπιουαν";s:3:"chp";s:8:"Τζου";s:3:"kaj";s:10:"Τίμνε";s:3:"tem";s:12:"Τερένο";s:3:"ter";s:6:"Τιβ";s:3:"tiv";s:16:"Τοκελάου";s:3:"tkl";s:16:"Τλίνγκιτ";s:3:"tli";s:14:"Ταμασέκ";s:3:"tmh";s:16:"Τσίμσιαν";s:3:"tsi";s:16:"Τουβαλού";s:3:"tvl";s:10:"Τουάπ";s:3:"kcg";s:12:"Ταρόκο";s:3:"trv";}i:100;a:277:{s:10:"deideanais";s:2:"ce";s:5:"dansk";s:2:"da";s:5:"deens";s:2:"da";s:6:"danés";s:2:"da";s:9:"danimarka";s:2:"da";s:5:"daneg";s:2:"da";s:6:"danski";s:2:"da";s:6:"danès";s:2:"da";s:10:"dánština";s:2:"da";s:8:"dänisch";s:2:"da";s:10:"danšćina";s:2:"da";s:10:"denmarkgbe";s:2:"da";s:6:"danish";s:2:"da";s:4:"dana";s:2:"da";s:7:"daniera";s:2:"da";s:6:"danskt";s:2:"da";s:6:"danois";s:2:"da";s:6:"danês";s:2:"da";s:6:"deensk";s:2:"da";s:11:"danmhairgis";s:2:"da";s:12:"dinamarqués";s:2:"da";s:4:"dán";s:2:"da";s:6:"danese";s:2:"da";s:6:"danska";s:2:"da";s:9:"dähnesch";s:2:"da";s:5:"danek";s:2:"da";s:8:"dänesch";s:2:"da";s:5:"danų";s:2:"da";s:6:"dāņu";s:2:"da";s:7:"denmark";s:2:"da";s:6:"daniż";s:2:"da";s:9:"däänsch";s:2:"da";s:7:"duński";s:2:"da";s:12:"dinamarquês";s:2:"da";s:10:"danes simi";s:2:"da";s:6:"danais";s:2:"da";s:7:"daneză";s:2:"da";s:14:"dánskkagiella";s:2:"da";s:9:"dánčina";s:2:"da";s:10:"danščina";s:2:"da";s:10:"danmarkays";s:2:"da";s:7:"danisht";s:2:"da";s:5:"danca";s:2:"da";s:6:"datcha";s:2:"da";s:7:"deutsch";s:2:"de";s:5:"duits";s:2:"de";s:8:"docceere";s:2:"de";s:6:"dútsk";s:2:"de";s:8:"däitsch";s:2:"de";s:9:"düütsch";s:2:"de";s:13:"duiskkagiella";s:2:"de";s:18:"జర్మన్";s:2:"de";s:22:"deutsch uß Ößterich";s:5:"de-at";s:23:"deutsch uß de schweijz";s:5:"de-ch";s:21:"deutsch (sie-form)‎";s:9:"de-formal";s:12:"dolnoserbski";s:3:"dsb";s:20:"donjolužičkosrpski";s:3:"dsb";s:24:"dolnolužická srbština";s:3:"dsb";s:16:"dolnoserbšćina";s:3:"dsb";s:17:"delnjoserbšćina";s:3:"dsb";s:14:"dolnołużycki";s:3:"dsb";s:23:"dolnolužická srbčina";s:3:"dsb";s:27:"dolnja lužiška srbščina";s:3:"dsb";s:17:"dusun bundu-liwan";s:3:"dtp";s:13:"dusun central";s:3:"dtp";s:5:"dusun";s:3:"dtp";s:14:"dusun centrale";s:3:"dtp";s:15:"dusun centralny";s:3:"dtp";s:6:"divehi";s:2:"dv";s:10:"diveh dili";s:2:"dv";s:10:"divehijski";s:2:"dv";s:6:"difehi";s:2:"dv";s:8:"divehgbe";s:2:"dv";s:9:"divehiera";s:2:"dv";s:9:"divéihis";s:2:"dv";s:8:"dívehí";s:2:"dv";s:10:"divehjesch";s:2:"dv";s:7:"diveħi";s:2:"dv";s:11:"divehi simi";s:2:"dv";s:12:"divehigiella";s:2:"dv";s:11:"diveščina";s:2:"dv";s:8:"dzongkha";s:2:"dz";s:6:"dzonqa";s:2:"dz";s:7:"džonga";s:2:"dz";s:7:"dzongka";s:2:"dz";s:8:"dzongkä";s:2:"dz";s:11:"dzongkhagbe";s:2:"dz";s:6:"dzonko";s:2:"dz";s:10:"dschongkha";s:2:"dz";s:7:"dsongka";s:2:"dz";s:7:"dzongke";s:2:"dz";s:8:"dżongka";s:2:"dz";s:6:"dzonga";s:2:"dz";s:14:"dzongkhagiella";s:2:"dz";s:6:"dzonka";s:2:"dz";s:18:"జొన్ఖా";s:2:"dz";s:29:"didžiosios britanijos anglų";s:5:"en-gb";s:27:"dʼan/ʼyar kabilar andalus";s:2:"eo";s:21:"dan/ʼyar kabilar bas";s:2:"eu";s:9:"dan ailan";s:2:"ga";s:12:"ꑴꄊꆺꉙ";s:2:"it";s:9:"dzapangbe";s:2:"ja";s:21:"జాపనీస్";s:2:"ja";s:25:"danų kalbos jutų tarmė";s:3:"jut";s:9:"dzavangbe";s:2:"jv";s:11:"deàbhanais";s:2:"jv";s:21:"జావనీస్";s:2:"jv";s:27:"జార్జియన్";s:2:"ka";s:25:"dan/ʼyar kabilar kannada";s:2:"kn";s:13:"dialek kolsch";s:3:"ksh";s:17:"dan kabilar latin";s:2:"la";s:14:"dan masedoniya";s:2:"mk";s:14:"dorerin naoero";s:2:"na";s:10:"dannorvega";s:2:"nb";s:14:"dolnoněmčina";s:3:"nds";s:15:"dolnonimšćina";s:3:"nds";s:14:"donjonjemački";s:3:"nds";s:15:"delnjoněmčina";s:3:"nds";s:15:"dolnosaksoński";s:3:"nds";s:15:"dolná nemčina";s:3:"nds";s:5:"dongo";s:2:"ng";s:8:"dɛɛkye";s:2:"nl";s:5:"dutch";s:2:"nl";s:8:"dacceere";s:2:"nl";s:7:"duitsis";s:2:"nl";s:9:"dọọch";s:2:"nl";s:11:"dárogiella";s:2:"no";s:15:"dziehe sothogbe";s:3:"nso";s:12:"diné bizaad";s:2:"nv";s:7:"deitsch";s:3:"pdc";s:14:"dziehe samigbe";s:2:"se";s:16:"davvisámegiella";s:2:"se";s:13:"dolnośląski";s:3:"sli";s:12:"déli számi";s:3:"sma";s:12:"dienvidsāmu";s:3:"sma";s:28:"dʼan/ʼyar kabilar albaniya";s:2:"sq";s:11:"dienvidsotu";s:2:"st";s:25:"dʼan/ʼyar kabilar telug";s:2:"te";s:7:"dagalog";s:2:"tl";s:11:"durkagiella";s:2:"tr";s:7:"džuanu";s:2:"za";s:18:"జువాన్";s:2:"za";s:12:"జూలూ";s:2:"zu";s:6:"djerma";s:3:"dje";s:7:"dżerma";s:3:"dje";s:18:"జార్మా";s:3:"dje";s:5:"duala";s:3:"dua";s:6:"douala";s:3:"dua";s:10:"dualština";s:3:"dua";s:8:"dualagbe";s:3:"dua";s:7:"dualera";s:3:"dua";s:6:"dúala";s:3:"dua";s:6:"dualų";s:3:"dua";s:5:"dualu";s:3:"dua";s:5:"dwala";s:3:"dua";s:8:"dualisht";s:3:"dua";s:7:"dualcha";s:3:"dua";s:5:"diola";s:3:"dyo";s:14:"dzola-fonyigbe";s:3:"dyo";s:11:"diola-fogny";s:3:"dyo";s:12:"džiola-foni";s:3:"dyo";s:12:"diola-fonjī";s:3:"dyo";s:28:"జోలా-ఫోనయి";s:3:"dyo";s:11:"dan filifin";s:3:"fil";s:14:"digər dillər";s:3:"mul";s:17:"dziehe ndebelegbe";s:2:"nd";s:13:"déli ndebele";s:2:"nr";s:14:"dienvidndebelu";s:2:"nr";s:20:"dovdameahttun giella";s:3:"und";s:19:"dil məzmunu yoxdur";s:3:"zxx";s:6:"diyezh";s:3:"zxx";s:22:"dim cynnwys ieithyddol";s:3:"zxx";s:22:"dilbilim içeriği yok";s:3:"zxx";s:5:"džiz";s:3:"gez";s:12:"జీజ్";s:3:"gez";s:11:"dél-altaji";s:3:"alt";s:17:"dienvidaltajiešu";s:3:"alt";s:10:"džagatajs";s:3:"chg";s:6:"dakota";s:3:"dak";s:11:"dakota dili";s:3:"dak";s:11:"dakotština";s:3:"dak";s:8:"dacotaeg";s:3:"dak";s:14:"dakota-sprache";s:3:"dak";s:12:"dakota jezik";s:3:"dak";s:7:"dakóta";s:3:"dak";s:14:"dakota-sprooch";s:3:"dak";s:7:"dakotų";s:3:"dak";s:6:"dakotu";s:3:"dak";s:6:"dacota";s:3:"dak";s:10:"dakotčina";s:3:"dak";s:12:"dakotščina";s:3:"dak";s:6:"dargwa";s:3:"dar";s:11:"darqva dili";s:3:"dar";s:6:"dargva";s:3:"dar";s:7:"darguà";s:3:"dar";s:10:"dargština";s:3:"dar";s:10:"darginisch";s:3:"dar";s:5:"dargi";s:3:"dar";s:10:"darginesch";s:3:"dar";s:5:"dargu";s:3:"dar";s:10:"dargiensch";s:3:"dar";s:10:"dargwijski";s:3:"dar";s:11:"darginčina";s:3:"dar";s:13:"darginščina";s:3:"dar";s:9:"darginska";s:3:"dar";s:8:"dargince";s:3:"dar";s:8:"delaware";s:3:"del";s:12:"delaver dili";s:3:"del";s:7:"delaver";s:3:"del";s:13:"delawarština";s:3:"del";s:16:"delaware-sprache";s:3:"del";s:8:"delavari";s:3:"del";s:18:"delaware-schpraach";s:3:"del";s:10:"delavarski";s:3:"del";s:8:"delavár";s:3:"del";s:16:"delaware-sprooch";s:3:"del";s:8:"delavero";s:3:"del";s:9:"delavēru";s:3:"del";s:10:"delawerjan";s:3:"del";s:12:"delawarčina";s:3:"del";s:14:"delavarščina";s:3:"del";s:6:"dogrib";s:3:"dgr";s:11:"doqrib dili";s:3:"dgr";s:7:"dogribi";s:3:"dgr";s:7:"dogríb";s:3:"dgr";s:8:"dogribų";s:3:"dgr";s:7:"dogribu";s:3:"dgr";s:11:"dogribčina";s:3:"dgr";s:5:"dinka";s:3:"din";s:10:"dinka dili";s:3:"din";s:10:"dinkština";s:3:"din";s:5:"dinca";s:3:"din";s:13:"dinka-sprache";s:3:"din";s:13:"dinka-sprooch";s:3:"din";s:6:"dinkų";s:3:"din";s:5:"dinku";s:3:"din";s:5:"dogri";s:3:"doi";s:10:"doqri dili";s:3:"doi";s:11:"dogarština";s:3:"doi";s:6:"dogrí";s:3:"doi";s:5:"dogru";s:3:"doi";s:7:"dógrí";s:3:"doi";s:5:"dyula";s:3:"dyu";s:10:"dyula dili";s:3:"dyu";s:5:"djula";s:3:"dyu";s:13:"dyula-sprache";s:3:"dyu";s:5:"diula";s:3:"dyu";s:6:"dioula";s:3:"dyu";s:6:"djúla";s:3:"dyu";s:13:"dyula-sprooch";s:3:"dyu";s:6:"dyulų";s:3:"dyu";s:6:"diūlu";s:3:"dyu";s:6:"diúla";s:3:"dyu";s:6:"dazaga";s:3:"dzg";s:13:"dassajahnesch";s:3:"dzg";s:7:"dazagų";s:3:"dzg";s:4:"dazu";s:3:"dzg";s:14:"doğu frizcesi";s:3:"frs";s:49:"జ్యుడియో-పర్షియన్";s:3:"jpr";s:43:"జ్యుడియో-అరబిక్";s:3:"jrb";s:12:"జ్యూ";s:3:"kaj";s:19:"de landa-schprooche";s:3:"lah";s:12:"జీమా";s:3:"nzi";s:21:"జపోటెక్";s:3:"zap";s:18:"జెనాగా";s:3:"zen";s:12:"జుని";s:3:"zun";s:12:"జాజా";s:3:"zza";s:17:"dari zoroastrianu";s:3:"gbz";s:29:"daríjština (zoroastrijská)";s:3:"gbz";s:20:"dareg y zoroastriaid";s:3:"gbz";s:16:"dari zoroastrien";s:3:"gbz";s:17:"dari zoroastriano";s:3:"gbz";s:11:"dalecarlian";s:3:"dlc";s:5:"dajak";s:3:"day";s:8:"dajaški";s:3:"day";s:19:"drawiedsche spraken";s:3:"dra";s:17:"dravidijski jezik";s:3:"dra";}i:714;a:12:{s:12:"ચેચન";s:2:"ce";s:18:"ચોક્તૌ";s:3:"cho";s:9:"ચેક";s:2:"cs";s:34:"ચર્ચ સ્લાવિક";s:2:"cu";s:15:"ચૂવાશ";s:2:"cv";s:15:"ຂະເໝນ";s:2:"km";s:15:"ቪትናምኛ";s:2:"vi";s:18:"ચાઇનીઝ";s:2:"zh";s:12:"ચિગા";s:3:"cgg";s:18:"ચિબ્ચા";s:3:"chb";s:18:"ચૂકીસે";s:3:"chk";s:34:"ચિનૂક જાર્ગન";s:3:"chn";}i:330;a:15:{s:12:"चेचन";s:2:"ce";s:18:"चोक्तौ";s:3:"cho";s:18:"चेरोकी";s:3:"chr";s:9:"चेक";s:2:"cs";s:34:"चर्च साल्विक";s:2:"cu";s:40:"चर्च स्लाव्हिक";s:2:"cu";s:15:"चूवाश";s:2:"cv";s:83:"ცენტრალური მოროკოს ტამაზიგხტი";s:3:"tzm";s:12:"चीनी";s:2:"zh";s:21:"चिनियाँ";s:2:"zh";s:12:"चिगा";s:3:"cgg";s:18:"चिब्चा";s:3:"chb";s:15:"चूकीस";s:3:"chk";s:18:"चूकीसे";s:3:"chk";s:34:"चिनूक जारगॉन";s:3:"chn";}i:329;a:17:{s:21:"ჩეჩნური";s:2:"ce";s:15:"ჩოკტო";s:3:"cho";s:18:"ჩეროკი";s:3:"chr";s:18:"ჩეიენი";s:3:"chy";s:18:"ჩეხური";s:2:"cs";s:24:"ჩუვაშური";s:2:"cv";s:42:"ჩრდილოფრიზიული";s:3:"frr";s:22:"Ակվիտաներեն";s:2:"oc";s:46:"ჩრდილოეთ საამური";s:2:"se";s:18:"ჩინური";s:2:"zh";s:12:"ჩიგა";s:3:"cgg";s:46:"ჩრდილოეთ ნდებელე";s:2:"nd";s:15:"ჩიბჩა";s:3:"chb";s:31:"ჩინუკი ვავა";s:3:"chn";s:12:"佩瓦扬文";s:3:"chp";s:12:"金邦杜文";s:3:"kmb";s:40:"ჩადური არაბული";s:3:"shu";}i:404;a:9:{s:9:"체첸어";s:2:"ce";s:12:"체로키어";s:3:"chr";s:9:"체코어";s:2:"cs";s:20:"ռոմանշերեն";s:2:"rm";s:12:"ռունդի";s:2:"rn";s:20:"ռումիներեն";s:2:"ro";s:16:"ռուսերեն";s:2:"ru";s:10:"ռոմբո";s:3:"rof";s:6:"ռվա";s:3:"rwk";}i:354;a:66:{s:12:"ചെചൻ";s:2:"ce";s:30:"ചോക്റ്റാവ്";s:3:"cho";s:24:"ചിയേന്നേ";s:3:"chy";s:18:"ചെക്ക്";s:2:"cs";s:43:"ചർച്ച് സ്ലാവിക്";s:2:"cu";s:18:"ചുവാഷ്";s:2:"cv";s:37:"लोअर सोर्बियन";s:3:"dsb";s:30:"लनुक्टिटुट";s:2:"iu";s:21:"लोज्बान";s:3:"jbo";s:15:"लैटिन";s:2:"la";s:15:"लॅटिन";s:2:"la";s:21:"ल्याटिन";s:2:"la";s:18:"लादीनो";s:3:"lad";s:33:"लग्ज़मबर्गी";s:2:"lb";s:36:"लक्झेंबर्गिश";s:2:"lb";s:39:"लक्जेम्बर्गिस";s:2:"lb";s:27:"लेज़्घीयन";s:3:"lez";s:24:"लेझ्घीयन";s:3:"lez";s:27:"लिंबर्गिश";s:2:"li";s:30:"लिंबूर्गिश";s:2:"li";s:21:"लिंगाला";s:2:"ln";s:9:"लाओ";s:2:"lo";s:15:"लोज़ी";s:3:"loz";s:12:"लोझि";s:3:"loz";s:30:"लिथुआनियाई";s:2:"lt";s:27:"लिथुआनियन";s:2:"lt";s:33:"लिथुआनियाली";s:2:"lt";s:15:"लुशाई";s:3:"lus";s:24:"लातवियाई";s:2:"lv";s:30:"लात्व्हियन";s:2:"lv";s:30:"लात्भियाली";s:2:"lv";s:22:"लो जर्मन";s:3:"nds";s:18:"ചൈനീസ്";s:2:"zh";s:43:"ചീനഭാഷ-ലളിതലിപി";s:7:"zh-hans";s:58:"ചീനഭാഷ-പരമ്പരാഗതലിപി";s:7:"zh-hant";s:9:"ചിഗ";s:3:"cgg";s:15:"लांगि";s:3:"lag";s:15:"लांगी";s:3:"lag";s:18:"लाङ्गी";s:3:"lag";s:18:"लैकोटा";s:3:"lkt";s:18:"लाकोटा";s:3:"lkt";s:18:"लोकोता";s:3:"lkt";s:37:"ल्यूबा-कटांगा";s:2:"lu";s:37:"लुबा-काताङ्गा";s:2:"lu";s:34:"ल्यूबा-लुलुआ";s:3:"lua";s:28:"लुबा-लुलुआ";s:3:"lua";s:15:"ल्युओ";s:3:"luo";s:9:"लुओ";s:3:"luo";s:18:"ल्युईआ";s:3:"luy";s:21:"ल्युइया";s:3:"luy";s:15:"लुइया";s:3:"luy";s:28:"ल्युल सामी";s:3:"smj";s:25:"लुले सामी";s:3:"smj";s:56:"लैटिन अमेरिकी स्पेनी";s:6:"es-419";s:59:"लॅटिन अमेरिकन स्पॅनिश";s:6:"es-419";s:15:"ചിബ്ച";s:3:"chb";s:12:"ചഗതൈ";s:3:"chg";s:18:"ചൂകീസ്";s:3:"chk";s:34:"ചിനൂഗ്-ജാർഗൺ";s:3:"chn";s:24:"ചിപേവ്യൻ";s:3:"chp";s:24:"लाह्न्डा";s:3:"lah";s:18:"लाम्बा";s:3:"lam";s:21:"लुइसेनो";s:3:"lui";s:18:"लुन्डा";s:3:"lun";s:25:"ചാഡ് അറബി";s:3:"shu";s:18:"लिंगित";s:3:"tli";}i:266;a:13:{s:7:"Ċeċen";s:2:"ce";s:8:"Ċamorro";s:2:"ch";s:7:"Ċostaw";s:3:"cho";s:8:"Ċerokij";s:3:"chr";s:4:"Ċek";s:2:"cs";s:6:"Ċuvax";s:2:"cv";s:17:"Ċiċewa; njanġa";s:2:"ny";s:7:"Ċiniż";s:2:"zh";s:19:"Ċiniż simplifikat";s:7:"zh-hans";s:7:"Ċibċa";s:3:"chb";s:8:"Ċagataj";s:3:"chg";s:7:"Ċukese";s:3:"chk";s:9:"Ċipewjan";s:3:"chp";}i:842;a:17:{s:15:"ଚେଚନ୍";s:2:"ce";s:18:"ଚାମୋରୋ";s:2:"ch";s:15:"ଚୋଟୱା";s:3:"cho";s:18:"ଚେରୋକୀ";s:3:"chr";s:18:"ଚେଚେନା";s:3:"chy";s:12:"ଚେକ୍";s:2:"cs";s:43:"ଚର୍ଚ୍ଚ ସ୍ଲାଭିକ୍";s:2:"cu";s:18:"ଚୁଭାଶ୍";s:2:"cv";s:12:"迪维希文";s:2:"dv";s:12:"迪維西文";s:2:"dv";s:9:"ዪዲሽ";s:2:"yi";s:21:"ଚାଇନୀଜ୍";s:2:"zh";s:18:"ଚିବ୍ଚା";s:3:"chb";s:18:"ଚୁକୀସେ";s:3:"chk";s:43:"ଚିନୁକ୍ ଜାରଗାଁନ୍";s:3:"chn";s:24:"ଚିପେୱାନ୍";s:3:"chp";s:12:"迪尤拉文";s:3:"dyu";}i:94;a:23:{s:16:"цӕцӕйнаг";s:2:"ce";s:35:"църковно славянски";s:2:"cu";s:32:"црковнословенски";s:2:"cu";s:36:"церковнославянский";s:2:"cu";s:39:"церковнослов’янська";s:2:"cu";s:18:"ఖ్మేర్";s:2:"km";s:10:"цвана";s:2:"tn";s:10:"цонга";s:2:"ts";s:49:"централноатласки тамазигт";s:3:"tzm";s:60:"централно марокански тамазитски";s:3:"tzm";s:57:"центральномароканська тамазіт";s:3:"tzm";s:12:"ఖాసి";s:3:"kha";s:21:"ఖటోనీస్";s:3:"kho";s:25:"цигански език";s:3:"rom";s:16:"цигайнаг";s:3:"rom";s:18:"цыганский";s:3:"rom";s:18:"циганська";s:3:"rom";s:20:"цимшиански";s:3:"tsi";s:22:"цимшијански";s:3:"tsi";s:14:"цимшиан";s:3:"tsi";s:32:"централнојупички";s:3:"esu";s:16:"цахурски";s:3:"tkr";s:16:"цаконски";s:3:"tsd";}i:586;a:28:{s:12:"ਚੇਚਨ";s:2:"ce";s:18:"ਚੇਰੋਕੀ";s:3:"chr";s:9:"ਚੈਕ";s:2:"cs";s:16:"زونٛگکھا";s:2:"dz";s:10:"زونگا";s:2:"ts";s:14:"زُہانٛگ";s:2:"za";s:14:"زیلاندی";s:3:"zea";s:12:"ਚੀਨੀ";s:2:"zh";s:12:"زولویی";s:2:"zu";s:10:"زُلوٗ";s:2:"zu";s:8:"زولو";s:2:"zu";s:12:"زۇلۇچە";s:2:"zu";s:12:"ਚੀਗਾ";s:3:"cgg";s:8:"زرما";s:3:"dje";s:14:"زارماچە";s:3:"dje";s:21:"زبان نامشخص";s:3:"und";s:14:"زاپوتکی";s:3:"zap";s:16:"زَپوتیٚک";s:3:"zap";s:18:"زاپوتېكچە";s:3:"zap";s:10:"زناگا";s:3:"zen";s:12:"زیناگا";s:3:"zen";s:16:"زېناگاچە";s:3:"zen";s:14:"زونیایی";s:3:"zun";s:10:"زوٗنی";s:3:"zun";s:12:"زۇنىچە";s:3:"zun";s:8:"زازا";s:3:"zza";s:12:"زازایی";s:3:"zza";s:12:"زازاچە";s:3:"zza";}i:268;a:16:{s:10:"Čečenski";s:2:"ce";s:7:"Čamoro";s:2:"ch";s:10:"Čoktavski";s:3:"cho";s:7:"Čeroki";s:3:"chr";s:9:"Čejenski";s:3:"chy";s:7:"Češki";s:2:"cs";s:9:"Čuvaški";s:2:"cv";s:30:"Čimboraso aukštumų kečujų";s:3:"qug";s:7:"Čibča";s:3:"chb";s:8:"Čagatai";s:3:"chg";s:8:"Čukeski";s:3:"chk";s:9:"Činukski";s:3:"chn";s:12:"Čipvijanski";s:3:"chp";s:12:"폼페이어";s:3:"pon";s:13:"Čadas arābu";s:3:"shu";s:13:"Čamski jezik";s:3:"cmc";}i:63;a:14:{s:16:"Чеченски";s:2:"ce";s:12:"Чаморо";s:2:"ch";s:18:"Чоктавски";s:3:"cho";s:16:"Чејенски";s:3:"chy";s:20:"Чиэскэйдии";s:2:"cs";s:8:"Чехӣ";s:2:"cs";s:14:"Чӑвашла";s:2:"cv";s:14:"Чувашки";s:2:"cv";s:8:"Чинӣ";s:2:"zh";s:10:"Чибча";s:3:"chb";s:14:"Чагатаи";s:3:"chg";s:14:"Чукески";s:3:"chk";s:16:"Чинукски";s:3:"chn";s:22:"Чипвијански";s:3:"chp";}i:970;a:50:{s:18:"செசென்";s:2:"ce";s:24:"செபுவானோ";s:3:"ceb";s:18:"சாமோரோ";s:2:"ch";s:18:"சோக்தௌ";s:3:"cho";s:18:"செரொகி";s:3:"chr";s:18:"செயேனி";s:3:"chy";s:43:"சொரானி குர்திஷ்";s:3:"ckb";s:12:"செக்";s:2:"cs";s:40:"சர்ச் ஸ்லாவிக்";s:2:"cu";s:18:"சுவாஷ்";s:2:"cv";s:12:"楚瓦什文";s:2:"cv";s:28:"சிசுவான் ஈ";s:2:"ii";s:33:"சமஸ்கிருதம்";s:2:"sa";s:24:"சான்டாலி";s:3:"sat";s:27:"சாடினியன்";s:2:"sc";s:27:"சிசிலியன்";s:3:"scn";s:18:"சிந்தி";s:2:"sd";s:18:"சாங்கோ";s:2:"sg";s:46:"செர்போ-க்ரோஷியன்";s:2:"sh";s:24:"சிங்களம்";s:2:"si";s:18:"சோமாலி";s:2:"so";s:27:"செர்பியன்";s:2:"sr";s:30:"சுண்டானீஸ்";s:2:"su";s:24:"சுவாஹிலி";s:2:"sw";s:15:"சீனம்";s:2:"zh";s:12:"சிகா";s:3:"cgg";s:18:"சார்மா";s:3:"dje";s:21:"சம்புரு";s:3:"saq";s:15:"சங்கு";s:3:"sbp";s:12:"செனா";s:3:"seh";s:12:"சோகா";s:3:"xog";s:18:"சிடாமோ";s:3:"sid";s:24:"சிக்சிகா";s:3:"bla";s:18:"சிப்சா";s:3:"chb";s:18:"சூகிசே";s:3:"chk";s:12:"楚吾克文";s:3:"chk";s:43:"சினூக் ஜார்கான்";s:3:"chn";s:30:"சிபெவ்யான்";s:3:"chp";s:24:"சான்டாவே";s:3:"sad";s:46:"சமாரிடன் அராமைக்";s:3:"sam";s:18:"சாசாக்";s:3:"sas";s:24:"செல்குப்";s:3:"sel";s:24:"சோனின்கே";s:3:"snk";s:27:"சோக்தியன்";s:3:"sog";s:18:"செரெர்";s:3:"srr";s:18:"சுகுமா";s:3:"suk";s:12:"சுசு";s:3:"sus";s:27:"சுமேரியன்";s:3:"sux";s:24:"சிரியாக்";s:3:"syr";s:33:"சௌராஷ்டிரம்";s:3:"saz";}i:199;a:23:{s:9:"Çeçence";s:2:"ce";s:9:"Çerokice";s:3:"chr";s:7:"Çekçe";s:2:"cs";s:10:"Çuvaşça";s:2:"cv";s:12:"西班牙文";s:2:"es";s:18:"西フリジア語";s:2:"fy";s:18:"西弗里西亚文";s:2:"fy";s:18:"西弗里西亞文";s:2:"fy";s:18:"西里莫圖土文";s:2:"ho";s:12:"Çitral dili";s:3:"khw";s:12:"西馬裏文";s:3:"mrj";s:12:"庇卡底文";s:3:"pcd";s:12:"西西里文";s:3:"scn";s:15:"西利西亞文";s:3:"szl";s:18:"西フラマン語";s:3:"vls";s:15:"西佛蘭德文";s:3:"vls";s:9:"西蘭文";s:3:"zea";s:6:"Çince";s:2:"zh";s:12:"西桑海文";s:3:"khq";s:18:"西非书面文字";s:3:"nqo";s:24:"西班牙文(歐洲)";s:5:"es-es";s:14:"Çağatay dili";s:3:"chg";s:15:"Çad arapçası";s:3:"shu";}i:554;a:1:{s:9:"車臣文";s:2:"ce";}i:744;a:51:{s:21:"સિબુઆનો";s:3:"ceb";s:40:"સોરાની કુર્દિશ";s:3:"ckb";s:41:"સ્વિસ હાય જર્મન";s:5:"de-ch";s:21:"સ્પેનિશ";s:2:"es";s:37:"સ્કોટ્સ ગેલિક";s:2:"gd";s:31:"સ્વિસ જર્મન";s:3:"gsw";s:25:"સિચુઆન યી";s:2:"ii";s:21:"સંસ્કૃત";s:2:"sa";s:18:"સંતાલી";s:3:"sat";s:30:"સાર્દિનિયન";s:2:"sc";s:27:"સિસિલિયાન";s:3:"scn";s:21:"સ્કોટ્સ";s:3:"sco";s:15:"સિંધી";s:2:"sd";s:15:"સાંગો";s:2:"sg";s:43:"સર્બો-ક્રોએશિયન";s:2:"sh";s:21:"સિંહાલી";s:2:"si";s:21:"સ્લોવૅક";s:2:"sk";s:30:"સ્લોવેનિયન";s:2:"sl";s:15:"સામોન";s:2:"sm";s:18:"સોમાલી";s:2:"so";s:21:"સર્બિયન";s:2:"sr";s:37:"સ્રાનન ટોન્ગો";s:3:"srn";s:18:"સ્વાતી";s:2:"ss";s:28:"સદર્ન સોથો";s:2:"st";s:21:"સંડેનીઝ";s:2:"su";s:21:"સ્વીડિશ";s:2:"sv";s:24:"સ્વાહિલી";s:2:"sw";s:15:"સોંગા";s:2:"ts";s:68:"સેન્ટ્રલ ઍટ્લસ તામાઝિગ્ટ";s:3:"tzm";s:40:"સરળીકૃત ચાઇનીઝ";s:7:"zh-hans";s:21:"સમ્બુરુ";s:3:"saq";s:15:"સાંગુ";s:3:"sbp";s:12:"સેના";s:3:"seh";s:34:"સ્કોલ્ટ સામી";s:3:"sms";s:12:"સોગા";s:3:"xog";s:34:"સ્વિસ ફ્રેંચ";s:5:"fr-ch";s:18:"સિદામો";s:3:"sid";s:24:"સિક્સિકા";s:3:"bla";s:15:"સ્લેવ";s:3:"den";s:18:"સોંડવે";s:3:"sad";s:43:"સામરિટાન અરેમિક";s:3:"sam";s:15:"સાસાક";s:3:"sas";s:18:"સેલ્કપ";s:3:"sel";s:24:"સોનિન્કે";s:3:"snk";s:24:"સોગ્ડિએન";s:3:"sog";s:15:"સેરેર";s:3:"srr";s:18:"સુકુમા";s:3:"suk";s:12:"સુસુ";s:3:"sus";s:24:"સુમેરિયન";s:3:"sux";s:18:"સિરિએક";s:3:"syr";s:24:"સિમ્શિયન";s:3:"tsi";}i:360;a:91:{s:21:"सिबुआनो";s:3:"ceb";s:40:"सोरानी कुर्दिश";s:3:"ckb";s:44:"स्विस उच्च जर्मन";s:5:"de-ch";s:41:"स्विस हाय जर्मन";s:5:"de-ch";s:41:"स्वीस हाई जर्मन";s:5:"de-ch";s:18:"स्पेनी";s:2:"es";s:21:"स्पॅनिश";s:2:"es";s:21:"स्पेनिस";s:2:"es";s:49:"स्काट्स् गायेलिक्";s:2:"gd";s:37:"स्कॉट्स गेलिक";s:2:"gd";s:37:"स्कट्स गाएलिक";s:2:"gd";s:31:"स्विस जर्मन";s:3:"gsw";s:31:"स्वीस जर्मन";s:3:"gsw";s:9:"印地文";s:2:"hi";s:18:"印度尼西亚文";s:2:"id";s:9:"印尼文";s:2:"id";s:25:"सिचुआन यी";s:2:"ii";s:25:"सिचुआन यि";s:2:"ii";s:12:"印古什文";s:3:"inh";s:27:"संस्कृतम्";s:2:"sa";s:21:"संस्कृत";s:2:"sa";s:18:"संताली";s:3:"sat";s:30:"सार्दिनियन";s:2:"sc";s:27:"सर्दिनियन";s:2:"sc";s:24:"सिसिलियन";s:3:"scn";s:21:"स्कॉट्स";s:3:"sco";s:15:"सिंधी";s:2:"sd";s:18:"सिन्धी";s:2:"sd";s:15:"सांगो";s:2:"sg";s:18:"साङ्गो";s:2:"sg";s:43:"सेर्बो-क्रोएशन्";s:2:"sh";s:43:"सर्बो-क्रोएशियन";s:2:"sh";s:18:"सिंहली";s:2:"si";s:18:"सिंहला";s:2:"si";s:24:"सिन्हाला";s:2:"si";s:21:"स्लोवाक";s:2:"sk";s:27:"स्लोव्हाक";s:2:"sk";s:36:"स्लोभाकियाली";s:2:"sk";s:33:"स्लोवेनियाई";s:2:"sl";s:36:"स्लोव्हेनियन";s:2:"sl";s:36:"स्लोभेनियाली";s:2:"sl";s:15:"सामोन";s:2:"sm";s:18:"सामोअन";s:2:"sm";s:18:"सोमाली";s:2:"so";s:24:"सर्बियाई";s:2:"sr";s:21:"सर्बियन";s:2:"sr";s:27:"सर्बियाली";s:2:"sr";s:40:"स्रानान टॉन्गो";s:3:"srn";s:18:"स्वाती";s:2:"ss";s:18:"सेसोथो";s:2:"st";s:21:"सुंडानी";s:2:"su";s:24:"सुंदानीज";s:2:"su";s:18:"सुडानी";s:2:"su";s:21:"स्वीडिश";s:2:"sv";s:21:"स्विडिश";s:2:"sv";s:24:"स्वाहिली";s:2:"sw";s:30:"सेत्स्वाना";s:2:"tn";s:15:"सोंगा";s:2:"ts";s:34:"सरलीकृत चीनी";s:7:"zh-hans";s:43:"सरलिकृत चिनियाँ";s:7:"zh-hans";s:24:"सैम्बुरु";s:3:"saq";s:21:"सांबुरू";s:3:"saq";s:24:"साम्बुरू";s:3:"saq";s:15:"सैंगु";s:3:"sbp";s:15:"सांगु";s:3:"sbp";s:18:"साङ्गु";s:3:"sbp";s:12:"सेना";s:3:"seh";s:34:"स्कोल्ट सामी";s:3:"sms";s:31:"स्कोइट सामी";s:3:"sms";s:12:"सोगा";s:3:"xog";s:37:"स्विस फ़्रेंच";s:5:"fr-ch";s:34:"स्विस फ्रेंच";s:5:"fr-ch";s:18:"सिदामो";s:3:"sid";s:24:"सिक्सिका";s:3:"bla";s:15:"स्लेव";s:3:"den";s:21:"स्लाव्ह";s:3:"den";s:21:"सन्डावे";s:3:"sad";s:15:"सँडवे";s:3:"sad";s:43:"सामैरिटन अरैमिक";s:3:"sam";s:43:"सामरिटान अरॅमिक";s:3:"sam";s:15:"सासाक";s:3:"sas";s:18:"सेल्कप";s:3:"sel";s:24:"सोनिन्के";s:3:"snk";s:24:"सोग्डिएन";s:3:"sog";s:15:"सेरेर";s:3:"srr";s:18:"सुकुमा";s:3:"suk";s:12:"सुसु";s:3:"sus";s:24:"सुमेरियन";s:3:"sux";s:18:"सिरिएक";s:3:"syr";s:21:"सिरियाक";s:3:"syr";s:24:"सिम्शियन";s:3:"tsi";}i:475;a:21:{s:15:"セブアノ語";s:3:"ceb";s:18:"ফার্সি";s:2:"fa";s:18:"ফুলাহ্";s:2:"ff";s:15:"ফিনিশ";s:2:"fi";s:15:"ফিজিও";s:2:"fj";s:21:"ফেরাউনি";s:2:"fo";s:15:"ফরাসি";s:2:"fr";s:33:"ফ্রিউলিয়ান";s:3:"fur";s:9:"セリ語";s:3:"sei";s:30:"セルボ・クロアチア語";s:2:"sh";s:15:"セルビア語";s:2:"sr";s:24:"ফিলিপিনো";s:3:"fil";s:21:"ফ্লেমিশ";s:5:"nl-be";s:30:"ফোনিশীয়ান";s:3:"phn";s:9:"セナ語";s:3:"seh";s:21:"ফ্যাঙ্গ";s:3:"fan";s:18:"ফান্তি";s:3:"fat";s:6:"ফন";s:3:"fon";s:15:"セリクプ語";s:3:"sel";s:12:"セレル語";s:3:"srr";s:12:"セネカ語";s:3:"see";}i:464;a:14:{s:15:"세부아노어";s:3:"ceb";s:18:"グアラニー語";s:2:"gn";s:21:"グジャラート語";s:2:"gu";s:15:"グルジア語";s:2:"ka";s:24:"グリーンランド語";s:2:"kl";s:31:"세르비아-크로아티아어";s:2:"sh";s:15:"세르비아어";s:2:"sr";s:15:"세츠와나어";s:2:"tn";s:12:"グシイ語";s:3:"guz";s:9:"세나어";s:3:"seh";s:12:"グレボ語";s:3:"grb";s:21:"グウィッチン語";s:3:"gwi";s:12:"세레르어";s:3:"srr";s:12:"세네카어";s:3:"see";}i:384;a:58:{s:24:"സെബുവാനോ";s:3:"ceb";s:40:"സൊറാനി കുർദിഷ്";s:3:"ckb";s:38:"സ്വിസ് ഹൈ ജർമൻ";s:5:"de-ch";s:15:"സോങ്ക";s:2:"dz";s:27:"സ്‌പാനിഷ്";s:2:"es";s:49:"സ്കോട്ടിഷ് ഗൈലിക്";s:2:"gd";s:37:"സ്വിസ് ജർമ്മൻ";s:3:"gsw";s:27:"സംസ്‌കൃതം";s:2:"sa";s:9:"സാഖ";s:3:"sah";s:21:"സന്താലി";s:3:"sat";s:27:"സർഡിനിയാൻ";s:2:"sc";s:24:"സിസിലിയൻ";s:3:"scn";s:24:"സ്കോട്സ്";s:3:"sco";s:18:"സിന്ധി";s:2:"sd";s:15:"സാംഗോ";s:2:"sg";s:46:"സെർബോ-ക്രൊയേഷ്യൻ";s:2:"sh";s:15:"സിംഹള";s:2:"si";s:24:"സ്ലോവാക്";s:2:"sk";s:30:"സ്ലോവേനിയൻ";s:2:"sl";s:15:"സമോവൻ";s:2:"sm";s:18:"സോമാലി";s:2:"so";s:21:"സെർബിയൻ";s:2:"sr";s:24:"സ്വാറ്റി";s:2:"ss";s:24:"സുഡാനീസ്";s:2:"su";s:24:"സ്വീഡിഷ്";s:2:"sv";s:24:"സ്വാഹിലി";s:2:"sw";s:21:"സ്വാംഗ്";s:2:"za";s:12:"സുലു";s:2:"zu";s:18:"സാർമ്മ";s:3:"dje";s:18:"സംബുരു";s:3:"saq";s:12:"സംഗു";s:3:"sbp";s:9:"സേന";s:3:"seh";s:37:"സ്കോൾട്ട് സമി";s:3:"sms";s:12:"സോഗോ";s:3:"xog";s:40:"സ്വിസ് ഫ്രഞ്ച്";s:5:"fr-ch";s:18:"സിഡാമോ";s:3:"sid";s:21:"സിക്സിക";s:3:"bla";s:18:"സ്ലേവ്";s:3:"den";s:9:"സിമ";s:3:"nzi";s:18:"സാൻഡവേ";s:3:"sad";s:58:"സമരിയാക്കാരുടെ അരമായ";s:3:"sam";s:15:"സസാക്";s:3:"sas";s:18:"സെൽകപ്";s:3:"sel";s:6:"샨어";s:3:"shn";s:21:"സോണിൻകെ";s:3:"snk";s:24:"സോജിഡിയൻ";s:3:"sog";s:12:"സെറർ";s:3:"srr";s:15:"സുകുമ";s:3:"suk";s:12:"സുസു";s:3:"sus";s:24:"സുമേരിയൻ";s:3:"sux";s:24:"സുറിയാനി";s:3:"syr";s:21:"സിംഷ്യൻ";s:3:"tsi";s:30:"സാപ്പോടെക്";s:3:"zap";s:12:"സെനഗ";s:3:"zen";s:12:"സുനി";s:3:"zun";s:12:"സാസാ";s:3:"zza";s:15:"സെനേക";s:3:"see";s:12:"സാഹോ";s:3:"ssy";}i:872;a:43:{s:21:"ସୀବୁଆନୋ";s:3:"ceb";s:40:"ସୋରାନି କୁର୍ଦିଶ";s:3:"ckb";s:50:"ସ୍ବିସ୍ ହାଇ ଜର୍ମାନ୍";s:5:"de-ch";s:24:"ସ୍ପାନିସ୍";s:2:"es";s:43:"ସ୍କଟିସ୍ ଗାଏଲିକ୍";s:2:"gd";s:40:"ସ୍ବିସ୍ ଜର୍ମାନ୍";s:3:"gsw";s:28:"ସିଚୁଆନ୍ ୟୀ";s:2:"ii";s:21:"ସଂସ୍କୃତ";s:2:"sa";s:24:"ସାନ୍ତାଳି";s:3:"sat";s:30:"ସର୍ଦିନିଆନ୍";s:2:"sc";s:27:"ସିଶିଲିଆନ୍";s:3:"scn";s:18:"ସ୍କଟସ୍";s:3:"sco";s:18:"ସିନ୍ଧୀ";s:2:"sd";s:18:"ସାଙ୍ଗୋ";s:2:"sg";s:46:"ସର୍ବୋ-କ୍ରୋଆଟିଆନ୍";s:2:"sh";s:15:"ସିଂହଳ";s:2:"si";s:24:"ସ୍ଲୋଭାକ୍";s:2:"sk";s:33:"ସ୍ଲୋଭେନିଆନ୍";s:2:"sl";s:21:"ସାମୋଆନ୍";s:2:"sm";s:21:"ସୋମାଲିଆ";s:2:"so";s:24:"ସର୍ବିଆନ୍";s:2:"sr";s:18:"ସ୍ବାତୀ";s:2:"ss";s:18:"ସେସୋଥୋ";s:2:"st";s:24:"ସୁଦାନୀଜ୍";s:2:"su";s:24:"ସ୍ୱେଡିସ୍";s:2:"sv";s:24:"ସ୍ୱାହିଲ୍";s:2:"sw";s:24:"ସେସ୍ବାନା";s:2:"tn";s:15:"ସୋଂଗା";s:2:"ts";s:43:"ସରଳିକରଣ ଚାଇନୀଜ୍";s:7:"zh-hans";s:34:"ସ୍କୋଲ୍ଟ ସାମୀ";s:3:"sms";s:43:"ସ୍ବିସ୍ ଫ୍ରେଞ୍ଚ୍";s:5:"fr-ch";s:18:"ସିଦାମୋ";s:3:"sid";s:18:"ସ୍ଲେଭ୍";s:3:"den";s:28:"ସ୍ବିଚ୍ ଇନ୍";s:3:"gwi";s:21:"ସଣ୍ଡାୱେ";s:3:"sad";s:49:"ସାମୌରିଟନ୍ ଆରମାଇକ୍";s:3:"sam";s:18:"ସାସାକ୍";s:3:"sas";s:21:"ସେଲ୍କପ୍";s:3:"sel";s:24:"ସୋନିଙ୍କେ";s:3:"snk";s:24:"ସୋଗଡିଏନ୍";s:3:"sog";s:18:"ସୁକୁମା";s:3:"suk";s:27:"ସୁମେରିଆନ୍";s:3:"sux";s:18:"ସିରିକ୍";s:3:"syr";}i:62;a:4:{s:14:"Цебуано";s:3:"ceb";s:9:"祖鲁文";s:2:"zu";s:9:"祖魯文";s:2:"zu";s:9:"祖尼文";s:3:"zun";}i:128;a:52:{s:21:"సేబుఆనో";s:3:"ceb";s:43:"సొరాని కుర్దిష్";s:3:"ckb";s:44:"స్విస్ హై జర్మన్";s:5:"de-ch";s:24:"స్పానిష్";s:2:"es";s:43:"స్కాటిష్ గేలిక్";s:2:"gd";s:37:"స్విస్ జర్మన్";s:3:"gsw";s:24:"సంస్కృతం";s:2:"sa";s:18:"సంటాలి";s:3:"sat";s:33:"సార్డీనియన్";s:2:"sc";s:27:"సిసిలియన్";s:3:"scn";s:24:"స్కాట్స్";s:3:"sco";s:15:"సింధీ";s:2:"sd";s:15:"సాంగో";s:2:"sg";s:52:"సేర్బో-క్రొయేషియన్";s:2:"sh";s:18:"సింహళం";s:2:"si";s:24:"స్లోవాక్";s:2:"sk";s:36:"స్లోవేనియాన్";s:2:"sl";s:18:"సమోవన్";s:2:"sm";s:18:"సోమాలి";s:2:"so";s:27:"సెర్బియన్";s:2:"sr";s:37:"స్రానన్ టోనగో";s:3:"srn";s:18:"స్వాతి";s:2:"ss";s:24:"సుడానీస్";s:2:"su";s:24:"స్వీడిష్";s:2:"sv";s:24:"స్వాహిలి";s:2:"sw";s:27:"సెటస్వానా";s:2:"tn";s:15:"సోంగా";s:2:"ts";s:71:"సెంట్రల్ అట్లాస్ టామాజైట్";s:3:"tzm";s:40:"సరళీకృత చైనీస్";s:7:"zh-hans";s:49:"సాంప్రదాయక చైనీస్";s:7:"zh-hant";s:18:"సంబురు";s:3:"saq";s:15:"సాంగు";s:3:"sbp";s:12:"సెనా";s:3:"seh";s:37:"స్కోల్ట్ సామి";s:3:"sms";s:12:"సొగా";s:3:"xog";s:40:"స్విస్ ఫ్రెంచ్";s:5:"fr-ch";s:18:"సిడామో";s:3:"sid";s:25:"సిక్ సికా";s:3:"bla";s:18:"స్లేవ్";s:3:"den";s:49:"సాంప్రదాయ న్యుఆరి";s:3:"nwc";s:18:"సండావి";s:3:"sad";s:43:"సమారిటన్ అరమేక్";s:3:"sam";s:12:"ససక్";s:3:"sas";s:21:"సేల్కప్";s:3:"sel";s:21:"సోనింకి";s:3:"snk";s:27:"సోగ్డియన్";s:3:"sog";s:18:"సెరేర్";s:3:"srr";s:18:"సుకుమా";s:3:"suk";s:12:"సుసు";s:3:"sus";s:30:"సుమేరియాన్";s:3:"sux";s:52:"సాంప్రదాయ సిరియాక్";s:3:"syc";s:24:"సిరియాక్";s:3:"syr";}i:487;a:12:{s:9:"宿务文";s:3:"ceb";s:9:"宿霧文";s:3:"ceb";s:18:"デンマーク語";s:2:"da";s:15:"ディベヒ語";s:2:"dv";s:18:"苏格兰盖尔文";s:2:"gd";s:12:"苏格兰文";s:3:"sco";s:18:"苏里南汤加文";s:3:"srn";s:18:"デラウェア語";s:3:"del";s:15:"ディンカ語";s:3:"din";s:12:"苏库马文";s:3:"suk";s:9:"苏苏文";s:3:"sus";s:9:"苏马文";s:3:"sux";}i:264;a:4:{s:12:"차모로어";s:2:"ch";s:15:"차가타이어";s:3:"chg";s:25:"차디언 아라비아어";s:3:"shu";s:12:"차후르어";s:3:"tkr";}i:594;a:14:{s:24:"ชามอร์โร";s:2:"ch";s:24:"ช็อกทอว์";s:3:"cho";s:15:"ชูวัช";s:2:"cv";s:29:"غەربى فىرىزيەچە";s:2:"fy";s:12:"غاغاوز";s:3:"gag";s:9:"ชวา";s:2:"jv";s:21:"ชัมบาลา";s:3:"ksb";s:15:"ชิบชา";s:3:"chb";s:18:"ชะกะไต";s:3:"chg";s:9:"ชูก";s:3:"chk";s:36:"ชินุกจาร์กอน";s:3:"chn";s:24:"ชิพิวยัน";s:3:"chp";s:10:"غوتشن";s:3:"gwi";s:8:"غجري";s:3:"rom";}i:597;a:9:{s:12:"查莫罗文";s:2:"ch";s:12:"查莫洛文";s:2:"ch";s:21:"ญี่ปุ่น";s:2:"ja";s:12:"雅库特文";s:3:"sah";s:12:"雅庫特文";s:3:"sah";s:9:"ਥਾਈ";s:2:"th";s:9:"查加文";s:3:"chg";s:9:"雅浦文";s:3:"yap";s:12:"查庫爾文";s:3:"tkr";}i:24;a:3:{s:9:"ᎠᏣᏗ";s:3:"cho";s:12:"ᎠᏂᏓᏥ";s:2:"de";s:9:"ᎠᎫᏌ";s:3:"mus";}i:91;a:49:{s:9:"ᏣᎳᎩ";s:3:"chr";s:12:"уелски";s:2:"cy";s:12:"уелшче";s:2:"cy";s:8:"уэлс";s:2:"cy";s:10:"уираг";s:2:"he";s:16:"унгарски";s:2:"hu";s:10:"унгар";s:2:"hu";s:16:"угорська";s:2:"hu";s:12:"ᏣᏩᏂᏏ";s:2:"ja";s:16:"уырыссаг";s:2:"ru";s:12:"удмурт";s:3:"udm";s:18:"удмурцкая";s:3:"udm";s:18:"удмуртски";s:3:"udm";s:20:"удмуртский";s:3:"udm";s:20:"удмуртська";s:3:"udm";s:18:"уйгурская";s:2:"ug";s:16:"уйгурски";s:2:"ug";s:14:"уйгурча";s:2:"ug";s:16:"ујгурски";s:2:"ug";s:10:"уйгар";s:2:"ug";s:18:"уйгурский";s:2:"ug";s:18:"уйгурська";s:2:"ug";s:20:"українська";s:2:"uk";s:20:"украінская";s:2:"uk";s:18:"украински";s:2:"uk";s:21:"украин тілі";s:2:"uk";s:16:"украинче";s:2:"uk";s:12:"украйн";s:2:"uk";s:20:"украинский";s:2:"uk";s:20:"украјински";s:2:"uk";s:8:"урду";s:2:"ur";s:12:"урдуча";s:2:"ur";s:18:"узбекская";s:2:"uz";s:16:"узбэцкая";s:2:"uz";s:16:"узбекски";s:2:"uz";s:26:"узбекистански";s:2:"uz";s:10:"узбек";s:2:"uz";s:18:"узбекский";s:2:"uz";s:14:"узбечки";s:2:"uz";s:16:"узбецька";s:2:"uz";s:14:"уолофчо";s:2:"wo";s:39:"упрощенный китайский";s:7:"zh-hans";s:29:"уламжлалт хятад";s:7:"zh-hant";s:9:"帛琉文";s:3:"pau";s:18:"угаритски";s:3:"uga";s:20:"угаритский";s:3:"uga";s:20:"угаритська";s:3:"uga";s:14:"умбунду";s:3:"umb";s:8:"уашо";s:3:"was";}i:265;a:5:{s:7:"ĉeroka";s:3:"chr";s:6:"ĉeĥa";s:2:"cs";s:5:"ĉina";s:2:"zh";s:16:"ĉina simpligita";s:7:"zh-hans";s:14:"ĉina tradicia";s:7:"zh-hant";}i:742;a:8:{s:18:"શેરોકી";s:3:"chr";s:21:"શેયેન્ન";s:3:"chy";s:12:"શોના";s:2:"sn";s:21:"શમ્બાલા";s:3:"ksb";s:27:"શિપેવ્યાન";s:3:"chp";s:18:"ພາລາວີ";s:3:"pal";s:15:"ພອນເພ";s:3:"pon";s:9:"શેન";s:3:"shn";}i:358;a:11:{s:18:"शेरोकी";s:3:"chr";s:21:"शेयेन्न";s:3:"chy";s:12:"शोणा";s:2:"sn";s:12:"शोना";s:2:"sn";s:12:"शिगा";s:3:"cgg";s:21:"शम्बाला";s:3:"ksb";s:21:"शांबाला";s:3:"ksb";s:24:"शाम्बाला";s:3:"ksb";s:27:"शिपेव्यान";s:3:"chp";s:9:"शैन";s:3:"shn";s:9:"शॅन";s:3:"shn";}i:399;a:7:{s:12:"շերոկի";s:3:"chr";s:54:"շվեյցարական բարձր գերմաներեն";s:5:"de-ch";s:43:"շվեյցարական գերմաներեն";s:3:"gsw";s:8:"շոնա";s:2:"sn";s:16:"շվեդերեն";s:2:"sv";s:14:"շամբալա";s:3:"ksb";s:41:"շվեյցարական ֆրանսերեն";s:5:"fr-ch";}i:22;a:2:{s:18:"ឆេរូគី";s:3:"chr";s:9:"ឆេក";s:2:"cs";}i:383;a:9:{s:24:"ഷെരോക്കി";s:3:"chr";s:6:"էվե";s:2:"ee";s:18:"էսպերանտո";s:2:"eo";s:18:"էստոներեն";s:2:"et";s:21:"ഷുവാൻയി";s:2:"ii";s:9:"ഷോണ";s:2:"sn";s:10:"էմբու";s:3:"ebu";s:15:"ഷംഭാള";s:3:"ksb";s:9:"ഷാൻ";s:3:"shn";}i:443;a:1:{s:12:"彻罗基文";s:3:"chr";}i:486;a:12:{s:21:"শাইয়েন";s:3:"chy";s:12:"শোনা";s:2:"sn";s:12:"テルグ語";s:2:"te";s:15:"テトゥン語";s:3:"tet";s:21:"ティグリニア語";s:2:"ti";s:24:"শাম্বালা";s:3:"ksb";s:9:"テソ語";s:3:"teo";s:15:"ティグレ語";s:3:"tig";s:9:"শান";s:3:"shn";s:12:"テムネ語";s:3:"tem";s:15:"テレーノ語";s:3:"ter";s:12:"ティブ語";s:3:"tiv";}i:931;a:52:{s:12:"Σεγιέν";s:3:"chy";s:20:"ދިވެހިބަސް";s:2:"dv";s:29:"Σκωτικά Κελτικά";s:2:"gd";s:19:"Σικουάν Γι";s:2:"ii";s:9:"洛兹文";s:3:"loz";s:9:"洛齊文";s:3:"loz";s:30:"Σλαβομακεδονικά";s:2:"mk";s:22:"Σανσκριτικά";s:2:"sa";s:14:"Σαντάλι";s:3:"sat";s:18:"Σαρδινικά";s:2:"sc";s:18:"Σικελιανά";s:3:"scn";s:14:"Σκωτικά";s:3:"sco";s:10:"Σίντι";s:2:"sd";s:12:"Σάνγκο";s:2:"sg";s:26:"Σερβοκροατικά";s:2:"sh";s:22:"Σινχαλεζικά";s:2:"si";s:18:"Σλοβακικά";s:2:"sk";s:18:"Σλοβενικά";s:2:"sl";s:12:"Σαμόαν";s:2:"sm";s:10:"Σχόνα";s:2:"sn";s:12:"Σομάλι";s:2:"so";s:14:"Σερβικά";s:2:"sr";s:25:"Σρανάρ Τόνγκο";s:3:"srn";s:12:"Σουάτι";s:2:"ss";s:18:"Σουδανικά";s:2:"su";s:16:"Σουηδικά";s:2:"sv";s:16:"Σουαχίλι";s:2:"sw";s:44:"Σύγχρονα Τυπικά Αραβικά";s:6:"ar-001";s:14:"Σάμπαλα";s:3:"ksb";s:18:"Σαμπούρου";s:3:"saq";s:14:"Σάνγκου";s:3:"sbp";s:8:"Σένα";s:3:"seh";s:19:"Σκολτ Σάμι";s:3:"sms";s:10:"Σόγκα";s:3:"xog";s:14:"Σιντάμο";s:3:"sid";s:14:"Σικσίκα";s:3:"bla";s:14:"Σλαβικά";s:3:"den";s:18:"Σαντάγουε";s:3:"sad";s:37:"Σαμαρίτικα Αραμαϊκά";s:3:"sam";s:10:"Σασάκ";s:3:"sas";s:14:"Σελκούπ";s:3:"sel";s:6:"Σαν";s:3:"shn";s:14:"Σονίνκε";s:3:"snk";s:18:"Σογκντιέν";s:3:"sog";s:10:"Σερέρ";s:3:"srr";s:16:"Σουκούμα";s:3:"suk";s:12:"Σούσου";s:3:"sus";s:18:"Σουμερικά";s:3:"sux";s:14:"Συριακά";s:3:"syr";s:20:"Σύμβολα bliss";s:3:"zbl";s:12:"Σένεκα";s:3:"see";s:8:"Σάχο";s:3:"ssy";}i:353;a:67:{s:8:"šaieeni";s:3:"chy";s:7:"šejenu";s:3:"chy";s:8:"španski";s:2:"es";s:14:"španělština";s:2:"es";s:13:"špańšćina";s:2:"es";s:11:"španjolski";s:2:"es";s:13:"španišćina";s:2:"es";s:13:"španielčina";s:2:"es";s:12:"španščina";s:2:"es";s:18:"šiaurinių fryzų";s:3:"frr";s:15:"škotski galski";s:2:"gd";s:12:"šotišćina";s:2:"gd";s:15:"škotski-galski";s:2:"gd";s:19:"šotiska gelšćina";s:2:"gd";s:16:"škotų (gėlų)";s:2:"gd";s:19:"škótska gaelčina";s:2:"gd";s:19:"škotska gelščina";s:2:"gd";s:21:"švajcarski njemački";s:3:"gsw";s:21:"šwicarska nimšćina";s:3:"gsw";s:13:"šveitsisaksa";s:3:"gsw";s:20:"švicarski njemački";s:3:"gsw";s:20:"šwicarska němčina";s:3:"gsw";s:16:"šiaurės sothų";s:3:"nso";s:8:"škotski";s:3:"sco";s:5:"šoti";s:3:"sco";s:7:"škotų";s:3:"sco";s:11:"škótčina";s:3:"sco";s:12:"škotščina";s:3:"sco";s:16:"šiaurės samių";s:2:"se";s:6:"šilhu";s:3:"shi";s:5:"šona";s:2:"sn";s:10:"šonština";s:2:"sn";s:11:"šonšćina";s:2:"sn";s:12:"šonašćina";s:2:"sn";s:6:"šonų";s:2:"sn";s:5:"šonu";s:2:"sn";s:9:"šončina";s:2:"sn";s:11:"šonščina";s:2:"sn";s:8:"švedski";s:2:"sv";s:12:"švédština";s:2:"sv";s:12:"šwedšćina";s:2:"sv";s:7:"švedų";s:2:"sv";s:11:"švédčina";s:2:"sv";s:12:"švedščina";s:2:"sv";s:33:"šiuolaikinė standartinė arabų";s:6:"ar-001";s:8:"šambala";s:3:"ksb";s:9:"šambalų";s:3:"ksb";s:8:"šambalu";s:3:"ksb";s:18:"šiaurės ndebelų";s:2:"nd";s:8:"šikomor";s:3:"swb";s:33:"španielčina (latinskoamerická)";s:6:"es-419";s:23:"španělština (evropa)";s:5:"es-es";s:25:"španielčina (európska)";s:5:"es-es";s:21:"švajcarski francuski";s:5:"fr-ch";s:25:"šwicarska francojšćina";s:5:"fr-ch";s:20:"švicarski francuski";s:5:"fr-ch";s:24:"šwicarska francošćina";s:5:"fr-ch";s:24:"švicarska francoščina";s:5:"fr-ch";s:4:"šan";s:3:"shn";s:10:"šanština";s:3:"shn";s:5:"šani";s:3:"shn";s:5:"šanu";s:3:"shn";s:9:"šančina";s:3:"shn";s:11:"šanščina";s:3:"shn";s:8:"šumerų";s:3:"sux";s:7:"šumeru";s:3:"sux";s:24:"španielčina (mexická)";s:5:"es-mx";}i:588;a:74:{s:12:"شایانی";s:3:"chy";s:10:"شییون";s:3:"chy";s:24:"คอร์ซิกา";s:2:"co";s:9:"ครี";s:2:"cr";s:27:"คาซูเบียน";s:3:"csb";s:12:"ਜਰਮਨ";s:2:"de";s:56:"شىۋىتسارىيە ئېگىزلىك گېرمانچە";s:5:"de-ch";s:21:"ਜ਼ੋਂਗਖਾ";s:2:"dz";s:9:"피지어";s:2:"fj";s:27:"شُمٲلی فرِشیَن";s:3:"frr";s:31:"شىمالى فىرىزيەچە";s:3:"frr";s:18:"คุชราต";s:2:"gu";s:16:"피지 힌디어";s:3:"hif";s:15:"ਜਪਾਨੀ";s:2:"ja";s:24:"ਜਾਵਾਨੀਜ਼";s:2:"jv";s:21:"ਜਾਰਜੀਆਈ";s:2:"ka";s:30:"คาร์บาเดีย";s:3:"kbd";s:15:"คองโก";s:2:"kg";s:15:"คาซัค";s:2:"kk";s:18:"คานูรี";s:2:"kr";s:40:"คาราไช-บัลคาร์";s:3:"krc";s:15:"คริโอ";s:3:"kri";s:21:"คอร์นิช";s:2:"kw";s:21:"คีร์กีซ";s:2:"ky";s:12:"ครีก";s:3:"mus";s:19:"شمالی ستھو";s:3:"nso";s:25:"شىمالى سوتوچە";s:3:"nso";s:21:"شمالی سوتھو";s:3:"nso";s:18:"ควิชัว";s:2:"qu";s:66:"ควิชัวไฮแลนด์ชิมโบราโซ";s:3:"qug";s:24:"شوتلاندىيەچە";s:3:"sco";s:21:"شُمٲلی سَمی";s:2:"se";s:25:"شىمالى سامىچە";s:2:"se";s:19:"شمالی سامی";s:2:"se";s:14:"شىلخاچە";s:3:"shi";s:12:"شونایی";s:2:"sn";s:8:"شونا";s:2:"sn";s:12:"شوناچە";s:2:"sn";s:12:"شۋېدچە";s:2:"sv";s:12:"텔루구어";s:2:"te";s:24:"คัลมืยค์";s:3:"xal";s:24:"คะห์โอซา";s:2:"xh";s:15:"ਜ਼ੁਲੂ";s:2:"zu";s:12:"คีกา";s:3:"cgg";s:18:"คอปติก";s:3:"cop";s:18:"ਜ਼ਾਰਮਾ";s:3:"dje";s:28:"ਜੋਲਾ-ਫੋਇਨੀ";s:3:"dyo";s:15:"คัมบา";s:3:"kam";s:45:"คาบูเวอร์เดียนู";s:3:"kea";s:24:"คาเลนจิน";s:3:"kln";s:14:"شامبالا";s:3:"ksb";s:18:"شامبالاچە";s:3:"ksb";s:21:"شُمال ڈَبیل";s:2:"nd";s:31:"شىمالى ندەبەلەچە";s:2:"nd";s:19:"شمالی دبیل";s:2:"nd";s:29:"شەرقىي سوڭخايچە";s:3:"ses";s:21:"คลิงกอน";s:3:"tlh";s:31:"شىمالىي سوڭخايچە";s:3:"twq";s:43:"شىۋىتسارىيە فىرانسۇزچە";s:5:"fr-ch";s:15:"คัดโด";s:3:"cad";s:15:"คาริบ";s:3:"car";s:14:"شیپویان";s:3:"chp";s:29:"شەرقى فىرىزيەچە";s:3:"frs";s:9:"คจู";s:3:"kaj";s:21:"คาเนมบู";s:3:"kbl";s:24:"คิมบุนดู";s:3:"kmb";s:15:"คูสไร";s:3:"kos";s:21:"คูมืยค์";s:3:"kum";s:18:"คูเทไน";s:3:"kut";s:8:"شانی";s:3:"shn";s:6:"شان";s:3:"shn";s:10:"شانچە";s:3:"shn";s:18:"คายูกา";s:3:"cay";s:12:"คาโก";s:3:"kkj";}i:513;a:34:{s:10:"שאיין";s:3:"chy";s:16:"שפּאַניש";s:2:"es";s:25:"북부 프리슬란드어";s:3:"frr";s:12:"吉拉基文";s:3:"glk";s:12:"吉库尤文";s:2:"ki";s:12:"吉庫尤文";s:2:"ki";s:15:"吉尔吉斯文";s:2:"ky";s:15:"吉爾吉斯文";s:2:"ky";s:33:"メノナイト低地ドイツ語";s:3:"pdt";s:16:"북부 사미어";s:2:"se";s:8:"שונה";s:2:"sn";s:10:"שאנאַ";s:2:"sn";s:12:"שוודית";s:2:"sv";s:14:"שוועדיש";s:2:"sv";s:12:"שלעזיש";s:3:"szl";s:15:"メグレル語";s:3:"xmf";s:12:"שמבאלה";s:3:"ksb";s:9:"メル語";s:3:"mer";s:9:"メタ語";s:3:"mgo";s:22:"북부 은데벨레어";s:2:"nd";s:22:"שפה לא ידועה";s:3:"und";s:21:"שפּאַניש (es)";s:5:"es-es";s:9:"吉兹文";s:3:"gez";s:9:"吉茲文";s:3:"gez";s:18:"吉尔伯特斯文";s:3:"gil";s:21:"吉爾伯特群島文";s:3:"gil";s:15:"吉维克琴文";s:3:"gwi";s:12:"メンデ語";s:3:"men";s:12:"吉普赛文";s:3:"rom";s:12:"吉普賽文";s:3:"rom";s:6:"שאן";s:3:"shn";s:12:"שומרית";s:3:"sux";s:18:"メドゥンバ語";s:3:"byv";s:18:"メンタワイ語";s:3:"mwv";}i:471;a:12:{s:18:"シャイアン語";s:3:"chy";s:15:"シチリア語";s:3:"scn";s:12:"シンド語";s:2:"sd";s:15:"シンハラ語";s:2:"si";s:18:"シンプル英語";s:6:"simple";s:12:"ショナ語";s:2:"sn";s:15:"シレジア語";s:3:"szl";s:12:"シダモ語";s:3:"sid";s:15:"シクシカ語";s:3:"bla";s:12:"シャン語";s:3:"shn";s:18:"シュメール語";s:3:"sux";s:12:"シリア語";s:3:"syr";}i:380;a:8:{s:12:"샤이엔어";s:3:"chy";s:16:"դանիերեն";s:2:"da";s:15:"厄爾茲亞文";s:3:"myv";s:8:"żmudzki";s:3:"sgs";s:15:"볼라퓌크어";s:2:"vo";s:12:"դուալա";s:3:"dua";s:15:"żargon chinook";s:3:"chn";s:12:"孔卡尼文";s:3:"gom";}i:106;a:287:{s:16:"język czejenów";s:3:"chy";s:4:"jeeg";s:2:"cs";s:9:"jamusanci";s:2:"de";s:6:"jerman";s:2:"de";s:6:"jamaan";s:2:"de";s:6:"jarmal";s:2:"de";s:14:"jerman austria";s:5:"de-at";s:19:"jerman tinggi swiss";s:5:"de-ch";s:24:"jerman halus switzerland";s:5:"de-ch";s:22:"jarmal (iswiiserlaand)";s:5:"de-ch";s:6:"juisht";s:2:"ee";s:11:"jrihschesch";s:2:"el";s:15:"jendźelšćina";s:2:"en";s:11:"jalliizesch";s:2:"gl";s:12:"juwaraanesch";s:2:"gn";s:12:"jerman swiss";s:3:"gsw";s:18:"jerman switzerland";s:3:"gsw";s:9:"jermenski";s:2:"hy";s:9:"japannees";s:2:"ja";s:7:"japaneg";s:2:"ja";s:8:"japanski";s:2:"ja";s:8:"japonès";s:2:"ja";s:11:"japonština";s:2:"ja";s:8:"japaneeg";s:2:"ja";s:7:"japansk";s:2:"ja";s:9:"japanisch";s:2:"ja";s:13:"japańšćina";s:2:"ja";s:8:"japanese";s:2:"ja";s:6:"japana";s:2:"ja";s:8:"japonés";s:2:"ja";s:7:"jaapani";s:2:"ja";s:9:"japoniera";s:2:"ja";s:6:"japani";s:2:"ja";s:8:"japanskt";s:2:"ja";s:8:"japonais";s:2:"ja";s:6:"japans";s:2:"ja";s:9:"japananci";s:2:"ja";s:12:"japanšćina";s:2:"ja";s:6:"japán";s:2:"ja";s:8:"japonese";s:2:"ja";s:6:"jepang";s:2:"ja";s:8:"japanska";s:2:"ja";s:12:"japanimiusut";s:2:"ja";s:10:"japaanesch";s:2:"ja";s:7:"japanek";s:2:"ja";s:9:"japanesch";s:2:"ja";s:7:"japonų";s:2:"ja";s:8:"japāņu";s:2:"ja";s:7:"japoney";s:2:"ja";s:5:"jepun";s:2:"ja";s:9:"japaansch";s:2:"ja";s:9:"japoński";s:2:"ja";s:8:"japonês";s:2:"ja";s:12:"japones simi";s:2:"ja";s:9:"japoneză";s:2:"ja";s:13:"japánagiella";s:2:"ja";s:10:"japončina";s:2:"ja";s:12:"japonščina";s:2:"ja";s:10:"jabbaaniis";s:2:"ja";s:9:"japonisht";s:2:"ja";s:7:"japonca";s:2:"ja";s:21:"jamajská kreolština";s:3:"jam";s:31:"jamaikanisch-kreolische sprache";s:3:"jam";s:23:"jamaican creole english";s:3:"jam";s:22:"jamaikankreolienglanti";s:3:"jam";s:23:"jamaikahnesch-Änglesch";s:3:"jam";s:22:"jamaikanesch-kreolesch";s:3:"jam";s:23:"jamaikos kreolų anglų";s:3:"jam";s:18:"jamaicaans creools";s:3:"jam";s:8:"jamajski";s:3:"jam";s:24:"jamaikansk engelsk kreol";s:3:"jam";s:19:"jamaika patois dili";s:3:"jam";s:4:"jysk";s:3:"jut";s:10:"jutlandés";s:3:"jut";s:9:"jutština";s:3:"jut";s:8:"jütisch";s:3:"jut";s:6:"jutish";s:3:"jut";s:6:"juutti";s:3:"jut";s:4:"jute";s:3:"jut";s:10:"jutlandico";s:3:"jut";s:8:"jütesch";s:3:"jut";s:8:"jutlands";s:3:"jut";s:10:"jutlandzki";s:3:"jut";s:11:"jylländska";s:3:"jut";s:7:"javaans";s:2:"jv";s:9:"javanekan";s:2:"jv";s:7:"javaneg";s:2:"jv";s:8:"javanski";s:2:"jv";s:8:"javanès";s:2:"jv";s:12:"javánština";s:2:"jv";s:8:"jafanaeg";s:2:"jv";s:10:"javanesisk";s:2:"jv";s:9:"javanisch";s:2:"jv";s:11:"javašćina";s:2:"jv";s:8:"javanese";s:2:"jv";s:4:"java";s:2:"jv";s:8:"javanés";s:2:"jv";s:5:"jaava";s:2:"jv";s:6:"javera";s:2:"jv";s:11:"javanesiskt";s:2:"jv";s:8:"javanais";s:2:"jv";s:8:"javaansk";s:2:"jv";s:9:"jabananci";s:2:"jv";s:6:"jávai";s:2:"jv";s:4:"jawa";s:2:"jv";s:8:"javanska";s:2:"jv";s:10:"javahnesch";s:2:"jv";s:9:"javanesch";s:2:"jv";s:10:"javiečių";s:2:"jv";s:8:"javiešu";s:2:"jv";s:7:"javaney";s:2:"jv";s:9:"javaansch";s:2:"jv";s:8:"jawajski";s:2:"jv";s:8:"javanês";s:2:"jv";s:9:"javaneză";s:2:"jv";s:10:"javagiella";s:2:"jv";s:9:"jávčina";s:2:"jv";s:12:"javanščina";s:2:"jv";s:9:"jafaaniis";s:2:"jv";s:9:"javanisht";s:2:"jv";s:11:"javanesiska";s:2:"jv";s:9:"jorjianeg";s:2:"ka";s:9:"jojiyanci";s:2:"ka";s:12:"je’orjesch";s:2:"ka";s:11:"joorijiyaan";s:2:"ka";s:5:"jemer";s:2:"km";s:13:"jerman rendah";s:3:"nds";s:13:"jaunnorvēģu";s:2:"nn";s:19:"jerman pennsylvania";s:3:"pdc";s:9:"ᏲᏂᎢ";s:2:"ru";s:5:"jakut";s:3:"sah";s:11:"jakutština";s:3:"sah";s:9:"jakutisch";s:3:"sah";s:7:"jakuudi";s:3:"sah";s:8:"jakuutti";s:3:"sah";s:7:"jakoets";s:3:"sah";s:8:"jakutski";s:3:"sah";s:6:"jakút";s:3:"sah";s:10:"jackutesch";s:3:"sah";s:9:"jakutesch";s:3:"sah";s:7:"jakutų";s:3:"sah";s:6:"jakutu";s:3:"sah";s:7:"jakutsk";s:3:"sah";s:9:"jakuutsch";s:3:"sah";s:7:"jakucki";s:3:"sah";s:10:"jakutčina";s:3:"sah";s:12:"jakutščina";s:3:"sah";s:9:"jakutiska";s:3:"sah";s:11:"južni sami";s:3:"sma";s:17:"južnosamišćina";s:3:"sma";s:12:"južné sami";s:3:"sma";s:19:"južna samijščina";s:3:"sma";s:16:"janubiy semiycha";s:3:"sma";s:26:"južnosotšćina (sesotho)";s:2:"st";s:17:"južná sothčina";s:2:"st";s:7:"jiddisj";s:2:"yi";s:6:"jidiš";s:2:"yi";s:8:"jiddisch";s:2:"yi";s:11:"jidišćina";s:2:"yi";s:4:"jida";s:2:"yi";s:7:"jidiši";s:2:"yi";s:8:"jiddisha";s:2:"yi";s:7:"jiddiš";s:2:"yi";s:8:"jiddiskt";s:2:"yi";s:7:"jiddysk";s:2:"yi";s:6:"jiddis";s:2:"yi";s:9:"jiddíska";s:2:"yi";s:8:"jiddesch";s:2:"yi";s:7:"jidišs";s:2:"yi";s:6:"jiddix";s:2:"yi";s:7:"jiddisk";s:2:"yi";s:6:"jidysz";s:2:"yi";s:6:"jiddic";s:2:"yi";s:5:"jiden";s:2:"yi";s:10:"jorubanski";s:2:"yo";s:11:"jorubština";s:2:"yo";s:12:"jorubšćina";s:2:"yo";s:6:"joruba";s:2:"yo";s:13:"jorubašćina";s:2:"yo";s:8:"jórúba";s:2:"yo";s:7:"joruuba";s:2:"yo";s:7:"jorubų";s:2:"yo";s:6:"jorubu";s:2:"yo";s:10:"jorubčina";s:2:"yo";s:12:"jorubščina";s:2:"yo";s:9:"jorubisht";s:2:"yo";s:11:"juənq dili";s:2:"za";s:7:"jayniis";s:2:"zh";s:10:"jola-fonyi";s:3:"dyo";s:9:"jola-fony";s:3:"dyo";s:17:"jola-fonjiščina";s:3:"dyo";s:3:"jgo";s:3:"jgo";s:14:"južni ndebele";s:2:"nr";s:19:"južná ndebelčina";s:2:"nr";s:20:"južna ndebelščina";s:2:"nr";s:16:"julevsámegiella";s:3:"smj";s:27:"jungtinių valstijų anglų";s:5:"en-us";s:12:"južni altai";s:3:"alt";s:18:"južná altajčina";s:3:"alt";s:19:"južna altajščina";s:3:"alt";s:12:"jerga chinuk";s:3:"chn";s:14:"jargon chinook";s:3:"chn";s:15:"jargão chinook";s:3:"chn";s:4:"jula";s:3:"dyu";s:9:"旺杜文";s:3:"ewo";s:23:"jerman abad pertengahan";s:3:"gmh";s:11:"jerman kuno";s:3:"goh";s:11:"judo-farsca";s:3:"jpr";s:15:"judeo-persijski";s:3:"jpr";s:10:"judeopersa";s:3:"jpr";s:14:"judeoperština";s:3:"jpr";s:15:"jødisk-persisk";s:3:"jpr";s:17:"jüdisch-persisch";s:3:"jpr";s:13:"judeo-persian";s:3:"jpr";s:11:"judeo-persa";s:3:"jpr";s:12:"juudipärsia";s:3:"jpr";s:15:"juutalaispersia";s:3:"jpr";s:13:"judéo-persan";s:3:"jpr";s:13:"judeo-perzysk";s:3:"jpr";s:19:"jüüdisch-persisch";s:3:"jpr";s:18:"judejsko-perzijski";s:3:"jpr";s:19:"jühdesch-pärsesch";s:3:"jpr";s:17:"jiddesch-persesch";s:3:"jpr";s:15:"judėjų persų";s:3:"jpr";s:13:"jūdpersiešu";s:3:"jpr";s:12:"jødepersisk";s:3:"jpr";s:20:"jöödsch-pers’sch";s:3:"jpr";s:14:"judeo-perzisch";s:3:"jpr";s:11:"judeoperski";s:3:"jpr";s:13:"judaico-persa";s:3:"jpr";s:22:"judovska perzijščina";s:3:"jpr";s:15:"judisk persiska";s:3:"jpr";s:14:"jude-ərəbcə";s:3:"jrb";s:13:"judeo-arapski";s:3:"jrb";s:10:"judeoàrab";s:3:"jrb";s:15:"judeoarabština";s:3:"jrb";s:15:"jødisk-arabisk";s:3:"jrb";s:17:"jüdisch-arabisch";s:3:"jrb";s:12:"judeo-arabic";s:3:"jrb";s:12:"judeo-árabe";s:3:"jrb";s:12:"juudiaraabia";s:3:"jrb";s:15:"juutalaisarabia";s:3:"jrb";s:12:"judéo-arabe";s:3:"jrb";s:13:"judeo-arabysk";s:3:"jrb";s:19:"jüüdisch-arabisch";s:3:"jrb";s:16:"judejsko-arapski";s:3:"jrb";s:17:"jiddesch-arabesch";s:3:"jrb";s:15:"judėjų arabų";s:3:"jrb";s:10:"jūdarābu";s:3:"jrb";s:12:"jødearabisk";s:3:"jrb";s:18:"jöödsch-araabsch";s:3:"jrb";s:14:"judeo-arabisch";s:3:"jrb";s:12:"judeoarabski";s:3:"jrb";s:16:"judaico-arábico";s:3:"jrb";s:20:"judovska arabščina";s:3:"jrb";s:15:"judisk arabiska";s:3:"jrb";s:3:"jju";s:3:"kaj";s:7:"ju dili";s:3:"kaj";s:2:"ju";s:3:"kaj";s:3:"jao";s:3:"yao";s:9:"jaoština";s:3:"yao";s:4:"jaó";s:3:"yao";s:11:"jaojščina";s:3:"yao";s:8:"japeški";s:3:"yap";s:9:"japština";s:3:"yap";s:4:"japi";s:3:"yap";s:6:"japski";s:3:"yap";s:8:"japíska";s:3:"yap";s:7:"japezų";s:3:"yap";s:8:"japiešu";s:3:"yap";s:6:"japese";s:3:"yap";s:8:"japčina";s:3:"yap";s:10:"japščina";s:3:"yap";s:9:"japetiska";s:3:"yap";s:13:"jangbenština";s:3:"yav";s:7:"jangben";s:3:"yav";s:9:"jangbenų";s:3:"yav";s:8:"janbaņu";s:3:"yav";s:31:"jupikština (středoaljašská)";s:3:"esu";s:5:"jemba";s:3:"ybb";s:6:"jembų";s:3:"ybb";s:5:"jembu";s:3:"ybb";s:37:"jezik centralno-američkih indijanaca";s:3:"cai";s:35:"jezik severno-američkih indijanaca";s:3:"nai";s:34:"jezik južno-američkih indijanaca";s:3:"sai";s:13:"jezik znakova";s:3:"sgn";s:5:"jupik";s:3:"ypk";}i:799;a:2:{s:9:"夏延文";s:3:"chy";s:12:"夏威夷文";s:3:"haw";}i:801;a:2:{s:12:"沙伊安文";s:3:"chy";s:18:"沙特菲士蘭文";s:3:"stq";}i:405;a:19:{s:29:"սորանի (քրդերեն)";s:3:"ckb";s:31:"ստորին սորբիերեն";s:3:"dsb";s:19:"սիխուան յի";s:2:"ii";s:16:"սանսկրիտ";s:2:"sa";s:12:"սինդհի";s:2:"sd";s:10:"սանգո";s:2:"sg";s:20:"սինհալերեն";s:2:"si";s:20:"սլովակերեն";s:2:"sk";s:20:"սլովեներեն";s:2:"sl";s:20:"սոմալիերեն";s:2:"so";s:16:"սերբերեն";s:2:"sr";s:22:"սունդաներեն";s:2:"su";s:16:"սուահիլի";s:2:"sw";s:18:"սամբուրու";s:3:"saq";s:12:"սանգու";s:3:"sbp";s:8:"սենա";s:3:"seh";s:19:"սկոլտ սամի";s:3:"sms";s:8:"սոգա";s:3:"xog";s:52:"ստանդարտ մարոկական թամազիղտ";s:3:"zgh";}i:321;a:47:{s:40:"სორანი ქურთული";s:3:"ckb";s:49:"საეკლესიო სლავური";s:2:"cu";s:46:"ऑस्ट्रियाई जर्मन";s:5:"de-at";s:43:"ऑस्ट्रियन जर्मन";s:5:"de-at";s:24:"სპარსული";s:2:"fa";s:21:"სომხური";s:2:"hy";s:28:"სიჩუანის ი";s:2:"ii";s:24:"ऑक्सितान";s:2:"oc";s:27:"სანსკრიტი";s:2:"sa";s:30:"სარდინიული";s:2:"sc";s:27:"სიცილიური";s:3:"scn";s:24:"სინდჰური";s:2:"sd";s:15:"სანგო";s:2:"sg";s:46:"სერბულ-ხორვატული";s:2:"sh";s:27:"სინჰალური";s:2:"si";s:27:"სლოვაკური";s:2:"sk";s:27:"სლოვენური";s:2:"sl";s:15:"სამოა";s:2:"sm";s:43:"სამხრეთ საამური";s:3:"sma";s:27:"სომალიური";s:2:"so";s:21:"სერბული";s:2:"sr";s:47:"სამხრეთ სოთოს ენა";s:2:"st";s:21:"სუნდური";s:2:"su";s:21:"სუაჰილი";s:2:"sw";s:15:"繁体中国語";s:7:"zh-hant";s:12:"繁体中文";s:7:"zh-hant";s:12:"繁體中文";s:7:"zh-hant";s:12:"香巴拉文";s:3:"ksb";s:21:"სამბურუ";s:3:"saq";s:15:"სანგუ";s:3:"sbp";s:12:"სენა";s:3:"seh";s:37:"სკოლტ-საამური";s:3:"sms";s:12:"სოგა";s:3:"xog";s:92:"სტანდარტული მაროკოული ტამაზიგხტი";s:3:"zgh";s:64:"ऑस्ट्रेलियाई अंग्रेज़ी";s:5:"en-au";s:55:"ऑस्ट्रेलियन इंग्रजी";s:5:"en-au";s:43:"სამხრეთ ალთაური";s:3:"alt";s:18:"სლეივი";s:3:"den";s:52:"საშუალო ჰოლანდიური";s:3:"dum";s:49:"საშუალო ინგლისური";s:3:"enm";s:46:"საშუალო ფრანგული";s:3:"frm";s:61:"საშუალო ზემოგერმანული";s:3:"gmh";s:52:"საშუალო ირლანდიური";s:3:"mga";s:49:"სამარიულ-არამეული";s:3:"sam";s:27:"სელკუპური";s:3:"sel";s:21:"სირიული";s:3:"syr";s:18:"სენეკა";s:3:"see";}i:47;a:19:{s:21:"សុរ៉ានី";s:3:"ckb";s:27:"សំស្ក្រឹត";s:2:"sa";s:33:"សើបូក្រូទៀន";s:2:"sh";s:27:"ស្រីលង្កា";s:2:"si";s:27:"ស្លូវ៉ាគី";s:2:"sk";s:27:"ស្លូវ៉ានី";s:2:"sl";s:21:"សូម៉ាលី";s:2:"so";s:9:"សើប";s:2:"sr";s:18:"សេសូដូ";s:2:"st";s:18:"ស៊ូដង់";s:2:"su";s:21:"ស៊ុយអែដ";s:2:"sv";s:27:"ស្វាហ៊ីលី";s:2:"sw";s:12:"សូលូ";s:2:"zu";s:16:"Зуулулуу";s:2:"zu";s:8:"Зулу";s:2:"zu";s:18:"Запотечки";s:3:"zap";s:12:"Зенага";s:3:"zen";s:8:"Зуни";s:3:"zun";s:8:"Заза";s:3:"zza";}i:548;a:8:{s:22:"소라니 쿠르드어";s:3:"ckb";s:12:"림버거어";s:2:"li";s:18:"소토어 (북부)";s:3:"nso";s:15:"소말리아어";s:2:"so";s:18:"소토어 (남부)";s:2:"st";s:9:"소가어";s:3:"xog";s:12:"소닌케어";s:3:"snk";s:15:"소그디엔어";s:3:"sog";}i:616;a:36:{s:40:"ਸੋਰਾਨੀ ਕੁਰਦਿਸ਼";s:3:"ckb";s:35:"ਸਵਿਸ ਹਾਈ ਜਰਮਨ";s:5:"de-ch";s:15:"ਸਪੇਨੀ";s:2:"es";s:25:"ਸਵਿਸ ਜਰਮਨ";s:3:"gsw";s:12:"하우사어";s:2:"ha";s:12:"하와이어";s:3:"haw";s:25:"ਸਿਚੁਆਨ ਯੀ";s:2:"ii";s:24:"ਸੰਸਕ੍ਰਿਤ";s:2:"sa";s:18:"ਸੰਥਾਲੀ";s:3:"sat";s:15:"ਸਿੰਧੀ";s:2:"sd";s:15:"ਸਾਂਗੋ";s:2:"sg";s:21:"ਸਿੰਹਾਲਾ";s:2:"si";s:18:"ਸਲੋਵਾਕ";s:2:"sk";s:27:"ਸਲੋਵੇਨੀਆਈ";s:2:"sl";s:15:"ਸ਼ੋਨਾ";s:2:"sn";s:18:"ਸੋਮਾਲੀ";s:2:"so";s:18:"ਸਰਬੀਆਈ";s:2:"sr";s:18:"ਸੂਡਾਨੀ";s:2:"su";s:21:"ਸਵੀਡਿਸ਼";s:2:"sv";s:21:"ਸਵਾਹਿਲੀ";s:2:"sw";s:22:"ਸਰਲ ਚੀਨੀ";s:7:"zh-hans";s:12:"简体中文";s:7:"zh-hans";s:24:"现代标准阿拉伯文";s:6:"ar-001";s:15:"하타이트어";s:3:"hit";s:21:"ਸ਼ੰਬਾਲਾ";s:3:"ksb";s:18:"ਸਮਬੁਰੂ";s:3:"saq";s:15:"ਸੇਂਗੋ";s:3:"sbp";s:12:"ਸੇਨਾ";s:3:"seh";s:28:"ਸਕੌਲਟ ਸਾਮੀ";s:3:"sms";s:48:"ภาษาที่ไม่รู้จัก";s:3:"und";s:12:"ਸੋਗਾ";s:3:"xog";s:27:"언어 관련 내용 없음";s:3:"zxx";s:37:"ਸਵਿਸ ਫਰਾਂਸੀਸੀ";s:5:"fr-ch";s:12:"하이다어";s:3:"hai";s:12:"ਸ਼ਾਨ";s:3:"shn";s:45:"ภาษามืออเมริกัน";s:3:"ase";}i:523;a:41:{s:43:"සොරානි කුර්දිෂ්";s:3:"ckb";s:50:"ස්විස් උසස් ජර්මන්";s:5:"de-ch";s:21:"ස්පාඤ්ඤ";s:2:"es";s:37:"ස්විස් ජර්මනි";s:3:"gsw";s:28:"සිචුආන් යී";s:2:"ii";s:24:"ルクセンブルク語";s:2:"lb";s:12:"倫巴底文";s:3:"lmo";s:15:"ルシャイ語";s:3:"lus";s:15:"ルンディ語";s:2:"rn";s:18:"ルーマニア語";s:2:"ro";s:12:"ルシン語";s:3:"rue";s:15:"ルワンダ語";s:2:"rw";s:21:"සංස්කෘත";s:2:"sa";s:18:"සින්ධි";s:2:"sd";s:24:"සන්ග්‍රෝ";s:2:"sg";s:15:"සිංහල";s:2:"si";s:24:"ස්ලෝවැක්";s:2:"sk";s:36:"ස්ලෝවේනියානු";s:2:"sl";s:18:"සෝමාලි";s:2:"so";s:27:"සර්බියානු";s:2:"sr";s:36:"සන්ඩනීසියානු";s:2:"su";s:21:"ස්වීඩන්";s:2:"sv";s:24:"ස්වාහිලි";s:2:"sw";s:28:"සුළුකළ චීන";s:7:"zh-hans";s:49:"සාම්ප්‍රදායික චීන";s:7:"zh-hant";s:12:"සුලු";s:2:"zu";s:24:"ルバ・カタンガ語";s:2:"lu";s:21:"ルバ・ルルア語";s:3:"lua";s:9:"ルオ語";s:3:"luo";s:12:"ルヒヤ語";s:3:"luy";s:9:"ルワ語";s:3:"rwk";s:21:"සම්බුරු";s:3:"saq";s:12:"සංගු";s:3:"sbp";s:12:"සෙනා";s:3:"seh";s:21:"ルレ・サーミ語";s:3:"smj";s:37:"ස්කොල්ට් සාමි";s:3:"sms";s:12:"සොගා";s:3:"xog";s:65:"සම්මත මොරොක්කෝ ටමසිග්ත්";s:3:"zgh";s:37:"ස්විස් ප්‍රංශ";s:5:"fr-ch";s:21:"ルイセーニョ語";s:3:"lui";s:12:"ルンダ語";s:3:"lun";}i:34;a:13:{s:21:"索拉尼库尔德文";s:3:"ckb";s:21:"索拉尼庫爾德文";s:3:"ckb";s:8:"Њања";s:2:"ny";s:12:"索马里文";s:2:"so";s:12:"索馬利文";s:2:"so";s:9:"索加文";s:3:"xog";s:14:"Њамвези";s:3:"nym";s:8:"Њоро";s:3:"nyo";s:12:"索尼基文";s:3:"snk";s:18:"索格底亞納文";s:3:"sog";s:19:"Њаса тонга";s:3:"tog";s:27:"索羅亞斯德教達里文";s:3:"gbz";s:18:"索拉什特拉文";s:3:"saz";}i:782;a:9:{s:15:"ኮርሲካኛ";s:2:"co";s:12:"ኮንጎኛ";s:2:"kg";s:12:"ኮሪያኛ";s:2:"ko";s:22:"ኮሚ ፔርምያክ";s:3:"koi";s:12:"ኮርኒሽ";s:2:"kw";s:16:"ኮይራ ቺኒ";s:3:"khq";s:9:"ኮካኒ";s:3:"kok";s:22:"ኮይራቦሮ ሴኒ";s:3:"ses";s:22:"ኮንጎ ስዋሂሊ";s:3:"swc";}i:345;a:35:{s:12:"卡皮茲文";s:3:"cps";s:9:"卡舒文";s:3:"csb";s:12:"卡舒布文";s:3:"csb";s:9:"řečtina";s:2:"el";s:12:"卡真法文";s:3:"frc";s:21:"卡拉卡尔帕克文";s:3:"kaa";s:21:"卡拉卡爾帕克文";s:3:"kaa";s:12:"卡比尔文";s:3:"kab";s:12:"卡比爾文";s:3:"kab";s:15:"卡巴尔达文";s:3:"kbd";s:15:"卡巴爾達文";s:3:"kbd";s:12:"卡纳达文";s:2:"kn";s:12:"卡努里文";s:2:"kr";s:12:"卡努裡文";s:2:"kr";s:27:"卡拉恰伊巴尔卡尔文";s:3:"krc";s:25:"卡拉柴-包爾卡爾文";s:3:"krc";s:15:"卡尔梅克文";s:3:"xal";s:15:"卡爾梅克文";s:3:"xal";s:12:"卡姆巴文";s:3:"kam";s:18:"卡布佛得鲁文";s:3:"kea";s:18:"卡布威爾第文";s:3:"kea";s:12:"卡伦金文";s:3:"kln";s:12:"卡倫金文";s:3:"kln";s:9:"상구어";s:3:"sbp";s:9:"卡多文";s:3:"cad";s:9:"卡琴文";s:3:"kac";s:9:"卡捷文";s:3:"kaj";s:9:"卡威文";s:3:"kaw";s:12:"卡念布文";s:3:"kbl";s:9:"卡西文";s:3:"kha";s:15:"卡累利阿文";s:3:"krl";s:12:"卡尤加文";s:3:"cay";s:12:"卡塔布文";s:3:"kcg";s:9:"卡库文";s:3:"kkj";s:9:"卡庫文";s:3:"kkj";}i:110;a:679:{s:37:"nēhiyawēwin / ᓀᐦᐃᔭᐍᐏᐣ";s:2:"cr";s:9:"njemački";s:2:"de";s:9:"němčina";s:2:"de";s:10:"nimšćina";s:2:"de";s:6:"német";s:2:"de";s:9:"niemiecki";s:2:"de";s:8:"nemački";s:2:"de";s:8:"nemčina";s:2:"de";s:10:"nemščina";s:2:"de";s:8:"nemischa";s:2:"de";s:19:"nemčina (rakúska)";s:5:"de-at";s:35:"němčina standardní (Švýcarsko)";s:5:"de-ch";s:34:"nemčina (švajčiarska spisovná)";s:5:"de-ch";s:12:"nedersorbisk";s:3:"dsb";s:14:"niedersorbisch";s:3:"dsb";s:12:"nedersorbysk";s:3:"dsb";s:13:"nidersorbisch";s:3:"dsb";s:14:"niddersorbesch";s:3:"dsb";s:13:"neddersorbsch";s:3:"dsb";s:13:"nedersorbisch";s:3:"dsb";s:17:"niski sorbijanski";s:3:"dsb";s:18:"దివేహి";s:2:"dv";s:18:"іспанская";s:2:"es";s:18:"іспанська";s:2:"es";s:16:"na vosa vakaviti";s:2:"fj";s:10:"nordfriisk";s:3:"frr";s:11:"nordfrisisk";s:3:"frr";s:13:"nordfriesisch";s:3:"frr";s:16:"northern frisian";s:3:"frr";s:11:"noard-frysk";s:3:"frr";s:17:"norðurfrísneska";s:3:"frr";s:13:"nordfriesesch";s:3:"frr";s:12:"noordfreesch";s:3:"frr";s:11:"noord-fries";s:3:"frr";s:12:"nordfrisiska";s:3:"frr";s:20:"ірландская";s:2:"ga";s:20:"ірляндзкая";s:2:"ga";s:20:"ірландська";s:2:"ga";s:23:"němčina (Švýcarsko)";s:3:"gsw";s:24:"nemčina (švajčiarska)";s:3:"gsw";s:19:"nemščina (Švica)";s:3:"gsw";s:10:"іўрыт";s:2:"he";s:10:"іврит";s:2:"he";s:22:"інтэрлінгва";s:2:"ia";s:22:"інтерлінгва";s:2:"ia";s:26:"інданезійская";s:2:"id";s:26:"інданэзійская";s:2:"id";s:26:"індонезійська";s:2:"id";s:22:"інтэрлінгве";s:2:"ie";s:22:"інтерлінгве";s:2:"ie";s:8:"ігбо";s:2:"ig";s:5:"nwosw";s:2:"ii";s:14:"інупіак";s:2:"ik";s:20:"ілоканська";s:3:"ilo";s:16:"інгуская";s:3:"inh";s:16:"інгуська";s:3:"inh";s:6:"ідо";s:2:"io";s:20:"ісландская";s:2:"is";s:22:"ісьляндзкая";s:2:"is";s:20:"ісландська";s:2:"is";s:22:"італьянская";s:2:"it";s:20:"італійська";s:2:"it";s:18:"інуктітут";s:2:"iu";s:21:"naujoji frankų kalba";s:3:"lfn";s:6:"ngalų";s:2:"ln";s:5:"nauru";s:2:"na";s:10:"nauru dili";s:2:"na";s:7:"naurueg";s:2:"na";s:7:"nauruà";s:2:"na";s:10:"naurština";s:2:"na";s:8:"nawrŵeg";s:2:"na";s:9:"nauruisch";s:2:"na";s:12:"naurušćina";s:2:"na";s:8:"naurugbe";s:2:"na";s:5:"naura";s:2:"na";s:8:"nauruano";s:2:"na";s:7:"nauruan";s:2:"na";s:10:"nauruaansk";s:2:"na";s:8:"nárúis";s:2:"na";s:6:"nabhru";s:2:"na";s:6:"naurui";s:2:"na";s:9:"nárúska";s:2:"na";s:9:"nauruesch";s:2:"na";s:6:"naurų";s:2:"na";s:10:"nauruiešu";s:2:"na";s:6:"nawuru";s:2:"na";s:9:"nauruusch";s:2:"na";s:9:"nauruaans";s:2:"na";s:13:"naurujščina";s:2:"na";s:8:"nāhuatl";s:3:"nah";s:7:"nahuatl";s:3:"nah";s:10:"napulitano";s:3:"nap";s:10:"napolitanu";s:3:"nap";s:15:"neapolital dili";s:3:"nap";s:11:"napolitaneg";s:3:"nap";s:13:"neapolitanski";s:3:"nap";s:9:"napolità";s:3:"nap";s:12:"neapolština";s:3:"nap";s:7:"naplieg";s:3:"nap";s:12:"neapolitansk";s:3:"nap";s:14:"neapolitanisch";s:3:"nap";s:10:"neapolitan";s:3:"nap";s:10:"napolitano";s:3:"nap";s:6:"napoli";s:3:"nap";s:10:"napolitain";s:3:"nap";s:9:"napoletan";s:3:"nap";s:12:"napolitaansk";s:3:"nap";s:12:"napolitanski";s:3:"nap";s:8:"nápolyi";s:3:"nap";s:11:"napólíska";s:3:"nap";s:10:"napoletano";s:3:"nap";s:14:"neapolitanesch";s:3:"nap";s:13:"neapoliečių";s:3:"nap";s:11:"neapoliešu";s:3:"nap";s:11:"napolitansk";s:3:"nap";s:14:"neapolitaansch";s:3:"nap";s:11:"napolitaans";s:3:"nap";s:14:"neapolitański";s:3:"nap";s:11:"napolitană";s:3:"nap";s:11:"neapolčina";s:3:"nap";s:16:"napolitanščina";s:3:"nap";s:12:"napolitanska";s:3:"nap";s:8:"napolice";s:3:"nap";s:13:"norsk bokmål";s:2:"no";s:14:"noorse bokmål";s:2:"nb";s:15:"noruegu bokmål";s:2:"nb";s:16:"norvegeg bokmål";s:2:"nb";s:16:"norveški bokmal";s:2:"nb";s:14:"noruec bokmål";s:2:"nb";s:19:"norština (bokmål)";s:2:"nb";s:15:"norwyeg bokmål";s:2:"nb";s:18:"norwegisch bokmål";s:2:"nb";s:17:"norwegske bokmål";s:2:"nb";s:17:"nɔweigbe bokmål";s:2:"nb";s:17:"norwegian bokmål";s:2:"nb";s:13:"norra bokmål";s:2:"nb";s:14:"norjan bokmål";s:2:"nb";s:14:"norskt bokmál";s:2:"nb";s:18:"norvégien bokmål";s:2:"nb";s:18:"norvegjês bokmål";s:2:"nb";s:15:"noors - bokmål";s:2:"nb";s:17:"noruegués bokmal";s:2:"nb";s:23:"norwegšćina (bokmål)";s:2:"nb";s:14:"norvég bokmal";s:2:"nb";s:15:"norskt bókmál";s:2:"nb";s:17:"norvegese bokmål";s:2:"nb";s:20:"norrweejesch bokmål";s:2:"nb";s:18:"norwegesch bokmål";s:2:"nb";s:35:"norvegijos rašytinė – būkmolų";s:2:"nb";s:17:"norvēģu bukmols";s:2:"nb";s:18:"norweegsch bokmål";s:2:"nb";s:18:"norweski (bokmål)";s:2:"nb";s:18:"norueguês bokmål";s:2:"nb";s:17:"norvegais bokmål";s:2:"nb";s:19:"norvegiană bokmål";s:2:"nb";s:17:"norveški bokmål";s:2:"nb";s:15:"nórsky bokmål";s:2:"nb";s:14:"norskt bokmål";s:2:"nb";s:18:"norveççe bokmål";s:2:"nb";s:16:"norvegcha bokmal";s:2:"nb";s:14:"niski nemački";s:3:"nds";s:9:"nedertysk";s:3:"nds";s:13:"niederdeutsch";s:3:"nds";s:14:"nidertüütsch";s:3:"nds";s:14:"nidderdäitsch";s:3:"nds";s:13:"nedersaksisch";s:3:"nds";s:16:"nizka nemščina";s:3:"nds";s:12:"nedersaksies";s:6:"nds-nl";s:8:"nepalees";s:2:"ne";s:11:"nɛpal kasa";s:2:"ne";s:8:"nepalés";s:2:"ne";s:5:"nepal";s:2:"ne";s:9:"nepalekan";s:2:"ne";s:7:"nepaleg";s:2:"ne";s:8:"nepalski";s:2:"ne";s:8:"nepalès";s:2:"ne";s:12:"nepálština";s:2:"ne";s:10:"nepalesisk";s:2:"ne";s:11:"nepalesisch";s:2:"ne";s:12:"nepalšćina";s:2:"ne";s:8:"nepalgbe";s:2:"ne";s:6:"nepali";s:2:"ne";s:6:"nepala";s:2:"ne";s:7:"nepalí";s:2:"ne";s:8:"nepalera";s:2:"ne";s:10:"nepaaleere";s:2:"ne";s:8:"nepalskt";s:2:"ne";s:9:"népalais";s:2:"ne";s:8:"nepalês";s:2:"ne";s:10:"neipeailis";s:2:"ne";s:10:"neapàilis";s:2:"ne";s:7:"nepáli";s:2:"ne";s:8:"nepalese";s:2:"ne";s:8:"nepalska";s:2:"ne";s:13:"nepallessesch";s:2:"ne";s:11:"nepalesesch";s:2:"ne";s:12:"nepaliečių";s:2:"ne";s:11:"nepāliešu";s:2:"ne";s:6:"nepale";s:2:"ne";s:8:"nepaliż";s:2:"ne";s:10:"nepaleesch";s:2:"ne";s:7:"nepalsk";s:2:"ne";s:11:"nepali simi";s:2:"ne";s:8:"nepalais";s:2:"ne";s:9:"nepaleză";s:2:"ne";s:12:"nepaligiella";s:2:"ne";s:8:"nepalëe";s:2:"ne";s:11:"nepálčina";s:2:"ne";s:12:"nepalščina";s:2:"ne";s:7:"nebaali";s:2:"ne";s:9:"nepalisht";s:2:"ne";s:11:"nepalesiska";s:2:"ne";s:7:"nepalce";s:2:"ne";s:8:"nepalcha";s:2:"ne";s:6:"newari";s:3:"new";s:11:"nevari dili";s:3:"new";s:6:"nevari";s:3:"new";s:13:"névárština";s:3:"new";s:6:"newaeg";s:3:"new";s:9:"newarisch";s:3:"new";s:7:"nevarí";s:3:"new";s:6:"nevaru";s:3:"new";s:8:"newarski";s:3:"new";s:11:"nevárčina";s:3:"new";s:12:"nevarščina";s:3:"new";s:9:"newariska";s:3:"new";s:6:"ndonga";s:2:"ng";s:11:"nqonka dili";s:2:"ng";s:11:"ndondština";s:2:"ng";s:8:"ndongais";s:2:"ng";s:7:"ndongų";s:2:"ng";s:6:"ndongu";s:2:"ng";s:15:"దోంగా";s:2:"ng";s:5:"niuē";s:3:"niu";s:7:"niueanu";s:3:"niu";s:11:"niyuan dili";s:3:"niu";s:4:"niue";s:3:"niu";s:6:"niuean";s:3:"niu";s:6:"niueà";s:3:"niu";s:10:"niueština";s:3:"niu";s:12:"niue-sprache";s:3:"niu";s:7:"niuegbe";s:3:"niu";s:7:"niueano";s:3:"niu";s:5:"niué";s:3:"niu";s:9:"niueaansk";s:3:"niu";s:9:"níobhais";s:3:"niu";s:14:"niue-schpraach";s:3:"niu";s:7:"niujski";s:3:"niu";s:4:"niui";s:3:"niu";s:5:"niuea";s:3:"niu";s:8:"níveska";s:3:"niu";s:12:"niue-sprooch";s:3:"niu";s:7:"niuenų";s:3:"niu";s:8:"niuāņu";s:3:"niu";s:9:"nijuwejan";s:3:"niu";s:8:"niueansk";s:3:"niu";s:8:"niueaans";s:3:"niu";s:8:"niueană";s:3:"niu";s:12:"niuejščina";s:3:"niu";s:9:"niueanska";s:3:"niu";s:10:"nederlands";s:2:"nl";s:11:"neerlandés";s:2:"nl";s:11:"nederlandeg";s:2:"nl";s:11:"neerlandès";s:2:"nl";s:13:"nizozemština";s:2:"nl";s:15:"niederländisch";s:2:"nl";s:15:"nižozemšćina";s:2:"nl";s:10:"nederlanda";s:2:"nl";s:12:"nederlandera";s:2:"nl";s:12:"néerlandais";s:2:"nl";s:11:"nederlânsk";s:2:"nl";s:14:"niderländisch";s:2:"nl";s:10:"nizozemski";s:2:"nl";s:12:"nederlandese";s:2:"nl";s:11:"nederlandsk";s:2:"nl";s:13:"nedderlandsch";s:2:"nl";s:12:"niderlandzki";s:2:"nl";s:15:"neerlandes simi";s:2:"nl";s:14:"nizozemščina";s:2:"nl";s:13:"nederländska";s:2:"nl";s:25:"nederlands (informeel)‎";s:11:"nl-informal";s:13:"norsk nynorsk";s:2:"nn";s:18:"noorweegse nynorsk";s:2:"nn";s:15:"noruegu nynorsk";s:2:"nn";s:16:"nünorsk norveç";s:2:"nn";s:16:"norvegeg nynorsk";s:2:"nn";s:16:"norveški njorsk";s:2:"nn";s:14:"noruec nynorsk";s:2:"nn";s:19:"norština (nynorsk)";s:2:"nn";s:15:"norwyeg nynorsk";s:2:"nn";s:7:"nynorsk";s:2:"nn";s:18:"norwegisch nynorsk";s:2:"nn";s:17:"norwegske nynorsk";s:2:"nn";s:17:"nɔweigbe ninɔsk";s:2:"nn";s:17:"norwegian nynorsk";s:2:"nn";s:10:"novnorvega";s:2:"nn";s:15:"nynorsk noruego";s:2:"nn";s:13:"norra nynorsk";s:2:"nn";s:18:"nynorsk norvegiera";s:2:"nn";s:14:"norjan nynorsk";s:2:"nn";s:9:"nýnorskt";s:2:"nn";s:18:"norvégien nynorsk";s:2:"nn";s:18:"norvegjês nynorsk";s:2:"nn";s:15:"noors - nynorsk";s:2:"nn";s:11:"nua-ioruais";s:2:"nn";s:21:"nynorsk na nirribhidh";s:2:"nn";s:18:"noruegués nynorsk";s:2:"nn";s:13:"novonorveški";s:2:"nn";s:23:"norwegšćina (nynorsk)";s:2:"nn";s:15:"norvég nynorsk";s:2:"nn";s:20:"norvegiano (nynorsk)";s:2:"nn";s:16:"nynorsk norwegia";s:2:"nn";s:9:"nýnorska";s:2:"nn";s:17:"norvegese nynorsk";s:2:"nn";s:16:"neu-norrweejesch";s:2:"nn";s:18:"norwegesch nynorsk";s:2:"nn";s:16:"naujoji norvegų";s:2:"nn";s:14:"nynorsk norway";s:2:"nn";s:18:"ninorsk norveġiż";s:2:"nn";s:18:"norweegsch nynorsk";s:2:"nn";s:18:"norweski (nynorsk)";s:2:"nn";s:18:"norueguês nynorsk";s:2:"nn";s:18:"nynorsk norueguês";s:2:"nn";s:18:"norvegiais nynorsk";s:2:"nn";s:19:"norvegiană nynorsk";s:2:"nn";s:15:"nórsky nynorsk";s:2:"nn";s:16:"novonorveščina";s:2:"nn";s:24:"nowrwejiyan (naynoroski)";s:2:"nn";s:19:"ninorske norvegjeze";s:2:"nn";s:8:"nynorska";s:2:"nn";s:18:"norveççe nynorsk";s:2:"nn";s:17:"norvegcha ninorsk";s:2:"nn";s:5:"noors";s:2:"no";s:7:"noruegu";s:2:"no";s:12:"norveç dili";s:2:"no";s:8:"norvegeg";s:2:"no";s:9:"norveški";s:2:"no";s:6:"noruec";s:2:"no";s:9:"norština";s:2:"no";s:7:"norwyeg";s:2:"no";s:5:"norsk";s:2:"no";s:10:"norwegisch";s:2:"no";s:13:"norwegšćina";s:2:"no";s:9:"nɔweigbe";s:2:"no";s:19:"norwegian (bokmål)";s:2:"no";s:7:"norvega";s:2:"no";s:7:"noruego";s:2:"no";s:5:"norra";s:2:"no";s:10:"norvegiera";s:2:"no";s:5:"norja";s:2:"no";s:6:"norskt";s:2:"no";s:10:"norvégien";s:2:"no";s:10:"norvegjês";s:2:"no";s:9:"nirribhis";s:2:"no";s:10:"noruegués";s:2:"no";s:7:"norvég";s:2:"no";s:10:"norvegiano";s:2:"no";s:8:"norwegia";s:2:"no";s:6:"norska";s:2:"no";s:9:"norvegese";s:2:"no";s:12:"norrweejesch";s:2:"no";s:10:"norwegesch";s:2:"no";s:8:"norvegų";s:2:"no";s:9:"norvēģu";s:2:"no";s:6:"norway";s:2:"no";s:10:"norveġiż";s:2:"no";s:10:"norweegsch";s:2:"no";s:8:"norweski";s:2:"no";s:10:"norueguês";s:2:"no";s:12:"noruego simi";s:2:"no";s:10:"norvegiais";s:2:"no";s:11:"norvegiană";s:2:"no";s:9:"nórčina";s:2:"no";s:12:"norveščina";s:2:"no";s:11:"norvegjisht";s:2:"no";s:10:"norveççe";s:2:"no";s:6:"novial";s:3:"nov";s:9:"nouormand";s:3:"nrm";s:11:"noord-sotho";s:3:"nso";s:9:"nordsotho";s:3:"nso";s:18:"nord-sotho-sprache";s:3:"nso";s:14:"northern sotho";s:3:"nso";s:11:"noard-sotho";s:3:"nso";s:20:"nord-sotho-schpraach";s:3:"nso";s:13:"norðursótó";s:3:"nso";s:10:"nood-sooto";s:3:"nso";s:18:"nord-sotho-sprooch";s:3:"nso";s:10:"nord-sotho";s:3:"nso";s:6:"navajo";s:2:"nv";s:11:"navayo dili";s:2:"nv";s:9:"navacʼho";s:2:"nv";s:6:"navaho";s:2:"nv";s:12:"navažština";s:2:"nv";s:6:"nafaho";s:2:"nv";s:10:"navachóis";s:2:"nv";s:16:"navajo-schpraach";s:2:"nv";s:7:"navahó";s:2:"nv";s:7:"navajų";s:2:"nv";s:6:"navahu";s:2:"nv";s:7:"navaħo";s:2:"nv";s:6:"nawaho";s:2:"nv";s:12:"navajščina";s:2:"nv";s:11:"navaho dili";s:2:"nv";s:6:"nyanja";s:2:"ny";s:11:"nyanca dili";s:2:"ny";s:6:"njanja";s:2:"ny";s:6:"nianja";s:2:"ny";s:14:"nyanja-sprache";s:2:"ny";s:9:"nyanjagbe";s:2:"ny";s:8:"njandža";s:2:"ny";s:23:"njanja; sísjeva; sjeva";s:2:"ny";s:14:"nyanja-sprooch";s:2:"ny";s:8:"njandża";s:2:"ny";s:11:"njanščina";s:2:"ny";s:26:"němčina (pensylvánská)";s:3:"pdc";s:24:"němčina (plautdietsch)";s:3:"pdt";s:16:"norfuk / pitkern";s:3:"pih";s:15:"noordelike sami";s:2:"se";s:10:"nordsamisk";s:2:"se";s:12:"nord-samisch";s:2:"se";s:13:"northern sami";s:2:"se";s:12:"noard-samysk";s:2:"se";s:15:"norðursamíska";s:2:"se";s:18:"nood-lappländesch";s:2:"se";s:11:"nordsamesch";s:2:"se";s:13:"noord-saamsch";s:2:"se";s:13:"noord-samisch";s:2:"se";s:11:"nordsamiska";s:2:"se";s:20:"němčina (slezská)";s:3:"sli";s:16:"nidderschlesesch";s:3:"sli";s:31:"దక్షిణ సామి";s:3:"sma";s:31:"దక్షిణ సోతో";s:2:"st";s:14:"neumelanesisch";s:3:"tpi";s:14:"neimelanesesch";s:3:"tpi";s:38:"němčina (mohansko-franské dialekty)";s:3:"vmf";s:8:"ідыш";s:2:"yi";s:8:"ідиш";s:2:"yi";s:25:"nuadh-arabais stannardach";s:6:"ar-001";s:15:"దుఆలా";s:3:"dua";s:6:"ngomba";s:3:"jgo";s:6:"nqomba";s:3:"jgo";s:8:"ngamambo";s:3:"jgo";s:7:"ngombų";s:3:"jgo";s:6:"ngombe";s:3:"jgo";s:7:"nguemba";s:3:"jgo";s:9:"ngombisht";s:3:"jgo";s:8:"ngombcha";s:3:"jgo";s:9:"norisjene";s:3:"mfe";s:19:"nhiều ngôn ngữ";s:3:"mul";s:4:"nama";s:3:"naq";s:10:"namaština";s:3:"naq";s:6:"namera";s:3:"naq";s:9:"namaishte";s:3:"naq";s:7:"namacha";s:3:"naq";s:13:"noord-ndebele";s:2:"nd";s:17:"ndebele del norte";s:2:"nd";s:16:"ndebele an norzh";s:2:"nd";s:21:"ndebele septentrional";s:2:"nd";s:18:"ndebele (zimbabwe)";s:2:"nd";s:17:"ndebele gogleddol";s:2:"nd";s:11:"nordndebele";s:2:"nd";s:20:"nord-ndebele-sprache";s:2:"nd";s:13:"north ndebele";s:2:"nd";s:18:"ndébélé du nord";s:2:"nd";s:21:"ndebele setentrionâl";s:2:"nd";s:12:"noard-ndbele";s:2:"nd";s:24:"ndeibéilis an tuaiscirt";s:2:"nd";s:17:"ndebele thuathach";s:2:"nd";s:16:"ndebele do norte";s:2:"nd";s:22:"nord-ndebele-schpraach";s:2:"nd";s:13:"ndebele utara";s:2:"nd";s:15:"norður-ndebele";s:2:"nd";s:16:"ndebele del nord";s:2:"nd";s:12:"nood-ndebele";s:2:"nd";s:20:"nord-ndebele-sprooch";s:2:"nd";s:18:"ndebele, ta’ fuq";s:2:"nd";s:12:"nord-ndebele";s:2:"nd";s:18:"ndebele północny";s:2:"nd";s:16:"ndebele dal nord";s:2:"nd";s:15:"ndebele de nord";s:2:"nd";s:19:"ndebelishte veriore";s:2:"nd";s:6:"ngumba";s:3:"nmg";s:6:"n’ko";s:3:"nqo";s:3:"nqo";s:3:"nqo";s:3:"nko";s:3:"nqo";s:4:"n-ko";s:3:"nqo";s:5:"nʼko";s:3:"nqo";s:4:"nkoo";s:3:"nqo";s:9:"n’koera";s:3:"nqo";s:7:"n’kó";s:3:"nqo";s:4:"nkå";s:3:"nqo";s:7:"nkoisht";s:3:"nqo";s:5:"n-kå";s:3:"nqo";s:8:"nqoancha";s:3:"nqo";s:15:"ndebele del sur";s:2:"nr";s:13:"ndebele ar su";s:2:"nr";s:18:"ndebele meridional";s:2:"nr";s:24:"ndebele (jižní afrika)";s:2:"nr";s:15:"ndebele deheuol";s:2:"nr";s:17:"ndébélé du sud";s:2:"nr";s:23:"ndeibéilis an deiscirt";s:2:"nr";s:16:"ndebele dheasach";s:2:"nr";s:15:"ndebele selatan";s:2:"nr";s:15:"ndebele del sud";s:2:"nr";s:18:"ndebele, t’isfel";s:2:"nr";s:19:"ndebele południowy";s:2:"nr";s:14:"ndebele do sul";s:2:"nr";s:15:"ndebele dal sid";s:2:"nr";s:14:"ndebele de sud";s:2:"nr";s:37:"దక్షిణ దెబెలె";s:2:"nr";s:4:"nuer";s:3:"nus";s:10:"nuerština";s:3:"nus";s:7:"nŵereg";s:3:"nus";s:7:"nuergbe";s:3:"nus";s:5:"nueri";s:3:"nus";s:7:"nuerera";s:3:"nus";s:5:"núer";s:3:"nus";s:6:"nuerų";s:3:"nus";s:5:"nueru";s:3:"nus";s:11:"nuerščina";s:3:"nus";s:8:"nuerisht";s:3:"nus";s:7:"noyrcha";s:3:"nus";s:8:"nyankole";s:3:"nyn";s:7:"nyankol";s:3:"nyn";s:8:"njankole";s:3:"nyn";s:8:"niancole";s:3:"nyn";s:5:"nkole";s:3:"nyn";s:9:"nyankolé";s:3:"nyn";s:9:"niankolų";s:3:"nyn";s:11:"niankolisht";s:3:"nyn";s:10:"nyankolcha";s:3:"nyn";s:16:"nuortalašgiella";s:3:"sms";s:12:"naməlum dil";s:3:"und";s:30:"nepoznati ili nevažeći jezik";s:3:"und";s:15:"neznámý jazyk";s:3:"und";s:13:"njeznata rěc";s:3:"und";s:15:"nekonata lingvo";s:3:"und";s:15:"nepoznati jezik";s:3:"und";s:14:"njeznata rěč";s:3:"und";s:15:"nežinoma kalba";s:3:"und";s:16:"nezināma valoda";s:3:"und";s:15:"nieznany język";s:3:"und";s:29:"nepoznat ili nevažeći jezik";s:3:"und";s:14:"neznámy jazyk";s:3:"und";s:27:"neznan ali neveljaven jezik";s:3:"und";s:13:"nomaʼlum til";s:3:"und";s:31:"ngôn ngữ không xác định";s:3:"und";s:21:"no linguistic content";s:3:"zxx";s:11:"nelingvaĵo";s:3:"zxx";s:27:"nincs nyelvészeti tartalom";s:3:"zxx";s:28:"nessun contenuto linguistico";s:3:"zxx";s:22:"nėra kalbinio turinio";s:3:"zxx";s:27:"nagins cuntegns linguistics";s:3:"zxx";s:29:"nuk ka përmbajtje gjuhësore";s:3:"zxx";s:42:"іспанская (лацінаамер.)";s:6:"es-419";s:33:"іспанська (Європа)";s:5:"es-es";s:34:"దక్షిణ ఆల్టై";s:3:"alt";s:5:"nkosi";s:3:"bss";s:17:"neerlandés mediu";s:3:"dum";s:17:"nederlandeg krenn";s:3:"dum";s:18:"neerlandès mitjà";s:3:"dum";s:20:"neerlandés medieval";s:3:"dum";s:19:"nizozemski, srednji";s:3:"dum";s:25:"njemački, srednji visoki";s:3:"gmh";s:16:"ібанська";s:3:"iba";s:25:"іудео-перська";s:3:"jpr";s:27:"іудео-арабська";s:3:"jrb";s:21:"norsunluurannikonkoro";s:3:"kfo";s:7:"naurski";s:3:"kos";s:4:"nias";s:3:"nia";s:9:"nyas dili";s:3:"nia";s:12:"nias-sprache";s:3:"nia";s:5:"niasi";s:3:"nia";s:14:"nias-schpraach";s:3:"nia";s:5:"nías";s:3:"nia";s:12:"nias-sprooch";s:3:"nia";s:5:"njasu";s:3:"nia";s:5:"nijas";s:3:"nia";s:12:"niasánčina";s:3:"nia";s:10:"niaščina";s:3:"nia";s:5:"nogai";s:3:"nog";s:10:"noqay dili";s:3:"nog";s:5:"nogay";s:3:"nog";s:11:"nogajština";s:3:"nog";s:6:"nogaï";s:3:"nog";s:8:"nogaisch";s:3:"nog";s:8:"nogajski";s:3:"nog";s:5:"nogaj";s:3:"nog";s:7:"nógaí";s:3:"nog";s:5:"nogų";s:3:"nog";s:6:"nogaju";s:3:"nog";s:10:"nogajčina";s:3:"nog";s:12:"nogajščina";s:3:"nog";s:7:"nogayca";s:3:"nog";s:15:"noruegu antiguu";s:3:"non";s:13:"nòrdic antic";s:3:"non";s:21:"norština historická";s:3:"non";s:16:"nórdico antiguo";s:3:"non";s:10:"norse kuno";s:3:"non";s:8:"norræna";s:3:"non";s:12:"norse antico";s:3:"non";s:5:"norsu";s:3:"non";s:10:"norse, old";s:3:"non";s:16:"nórdico arcaico";s:3:"non";s:11:"nordic vegl";s:3:"non";s:14:"nordică veche";s:3:"non";s:15:"newari clásicu";s:3:"nwc";s:13:"newari klasel";s:3:"nwc";s:15:"newari clàssic";s:3:"nwc";s:23:"newarština (klasická)";s:3:"nwc";s:15:"newari clásico";s:3:"nwc";s:17:"newarî classique";s:3:"nwc";s:13:"newari klasik";s:3:"nwc";s:15:"newari classico";s:3:"nwc";s:18:"newarski klasyczny";s:3:"nwc";s:16:"newari clássico";s:3:"nwc";s:14:"newari classic";s:3:"nwc";s:15:"newari clasică";s:3:"nwc";s:8:"nyamwezi";s:3:"nym";s:13:"nyamvezi dili";s:3:"nym";s:8:"njamvezi";s:3:"nym";s:8:"nyamwesi";s:3:"nym";s:8:"niamwezi";s:3:"nym";s:16:"nyamwezi-sprache";s:3:"nym";s:8:"njamvesi";s:3:"nym";s:18:"nyamwezi-schpraach";s:3:"nym";s:9:"nyamvézi";s:3:"nym";s:9:"njamvesí";s:3:"nym";s:16:"nyamwezi-sprooch";s:3:"nym";s:8:"niamvezi";s:3:"nym";s:9:"njamweżi";s:3:"nym";s:13:"njamveščina";s:3:"nym";s:8:"nyamvezi";s:3:"nym";s:5:"nyoro";s:3:"nyo";s:11:"niyoro dili";s:3:"nyo";s:5:"njoro";s:3:"nyo";s:5:"nioro";s:3:"nyo";s:11:"nyoro sprog";s:3:"nyo";s:6:"nyoró";s:3:"nyo";s:7:"njóró";s:3:"nyo";s:5:"nzima";s:3:"nzi";s:11:"nizima dili";s:3:"nzi";s:5:"nzema";s:3:"nzi";s:6:"nzimeg";s:3:"nzi";s:6:"nsíma";s:3:"nzi";s:5:"nzemu";s:3:"nzi";s:6:"nżima";s:3:"nzi";s:7:"ngambay";s:3:"sba";s:9:"ngambeieg";s:3:"sba";s:7:"ngembay";s:3:"sba";s:7:"ngambai";s:3:"sba";s:9:"ngambajų";s:3:"sba";s:8:"ngambeju";s:3:"sba";s:17:"niyasa tonga dili";s:3:"tog";s:11:"nyasa tonga";s:3:"tog";s:11:"njasa tonga";s:3:"tog";s:14:"nyasa tongansk";s:3:"tog";s:15:"nyasa del tonga";s:3:"tog";s:12:"niasa tongos";s:3:"tog";s:12:"njasas tongu";s:3:"tog";s:14:"nyasa-tongansk";s:3:"tog";s:14:"nyasatonganska";s:3:"tog";s:12:"ібібіо";s:3:"ibb";s:9:"ngiemboon";s:3:"nnh";s:12:"ngiemboongbe";s:3:"nnh";s:10:"ngiembooni";s:3:"nnh";s:11:"ngiembūnų";s:3:"nnh";s:10:"ngjembūnu";s:3:"nnh";s:18:"němčina (walser)";s:3:"wae";s:9:"nheengatu";s:3:"yrl";s:10:"nheengatou";s:3:"yrl";s:8:"njengatu";s:3:"yrl";s:8:"nhengatu";s:3:"yrl";s:26:"nigerkordofaansche spraken";s:3:"nic";s:25:"niger-kordofanijski jezik";s:3:"nic";s:16:"nuubsche spraken";s:3:"nub";s:14:"nubijski jezik";s:3:"nub";s:24:"nilosaharaansche spraken";s:3:"ssa";s:19:"nilo-saharski jezik";s:3:"ssa";}i:356;a:15:{s:9:"크리어";s:2:"cr";s:43:"크리민 터키어; 크리민 타타르어";s:3:"crh";s:18:"ജർമ്മൻ";s:2:"de";s:12:"디베히어";s:2:"dv";s:18:"크로아티아어";s:2:"hr";s:27:"ജപ്പാനീസ്";s:2:"ja";s:24:"ജാവാനീസ്";s:2:"jv";s:21:"ജോർജിയൻ";s:2:"ka";s:12:"크리크어";s:3:"mus";s:12:"크리올어";s:3:"kea";s:15:"크와시오어";s:3:"nmg";s:40:"ജൂഡിയോ-പേർഷ്യൻ";s:3:"jpr";s:37:"ജൂഡിയോ-അറബിക്";s:3:"jrb";s:12:"ജ്ജു";s:3:"kaj";s:12:"크펠레어";s:3:"kpe";}i:811;a:12:{s:12:"克里族文";s:2:"cr";s:9:"克裡文";s:2:"cr";s:24:"克里米亚土耳其文";s:3:"crh";s:69:"克里米亞半島的土耳其文;克里米亞半島的塔塔爾文";s:3:"crh";s:15:"克罗地亚文";s:2:"hr";s:18:"克羅埃西亞文";s:2:"hr";s:15:"克什米尔文";s:2:"ks";s:12:"克里克文";s:3:"mus";s:30:"克里奧文(模里西斯)";s:3:"mfe";s:12:"克林贡文";s:3:"tlh";s:12:"克林貢文";s:3:"tlh";s:12:"克佩列文";s:3:"kpe";}i:327;a:36:{s:43:"ყირიმულ-თურქული";s:3:"crh";s:15:"ग्रीक";s:2:"el";s:18:"गागौज़";s:3:"gag";s:18:"गागाउझ";s:3:"gag";s:15:"गगाउज";s:3:"gag";s:24:"गैलिशियन";s:2:"gl";s:24:"गॅलिशियन";s:2:"gl";s:27:"गलिसियाली";s:2:"gl";s:21:"गुआरानी";s:2:"gn";s:18:"गुआरनी";s:2:"gn";s:21:"गुजरानी";s:2:"gn";s:15:"गॉथिक";s:3:"got";s:21:"गुजराती";s:2:"gu";s:39:"ყარაყალფახური";s:3:"kaa";s:30:"ყაბარდოული";s:3:"kbd";s:24:"ყაზახური";s:2:"kk";s:33:"ग्रीनलैंडिक";s:2:"kl";s:52:"ყარაჩაულ-ბალყარული";s:3:"krc";s:27:"ყირგიზული";s:2:"ky";s:15:"गांडा";s:2:"lg";s:18:"गान्डा";s:2:"lg";s:27:"ყალმუხური";s:3:"xal";s:6:"गा";s:3:"gaa";s:12:"गुसी";s:3:"guz";s:9:"गसी";s:3:"guz";s:18:"गोम्बा";s:3:"jgo";s:12:"गीज़";s:3:"gez";s:9:"गीझ";s:3:"gez";s:12:"गायो";s:3:"gay";s:18:"ग्बाया";s:3:"gba";s:27:"गिल्बरतीस";s:3:"gil";s:15:"गाँडी";s:3:"gon";s:30:"गोरोन्तालो";s:3:"gor";s:18:"ग्रेबो";s:3:"grb";s:24:"ग्विच’इन";s:3:"gwi";s:24:"ყუმუხური";s:3:"kum";}i:909;a:1:{s:15:"ཅེཀ་ཁ";s:2:"cs";}i:401;a:3:{s:14:"չեխերեն";s:2:"cs";s:14:"չինարեն";s:2:"zh";s:8:"չիգա";s:3:"cgg";}i:228;a:15:{s:12:"ಜೆಕ್";s:2:"cs";s:18:"ಜರ್ಮನ್";s:2:"de";s:24:"ಜೋಂಗ್‌ಖಾ";s:2:"dz";s:21:"ಜಾಪನೀಸ್";s:2:"ja";s:24:"ಜಾವಾನೀಸ್";s:2:"jv";s:27:"ಜಾರ್ಜಿಯನ್";s:2:"ka";s:12:"ಜುಲು";s:2:"zu";s:15:"ಜರ್ಮಾ";s:3:"dje";s:28:"ಜೊಲ-ಫೊನ್ಯಿ";s:3:"dyo";s:43:"ಜೂಡಿಯೋ-ಪರ್ಶಿಯನ್";s:3:"jpr";s:40:"ಜೂಡಿಯೋ-ಅರೇಬಿಕ್";s:3:"jrb";s:12:"ಜ್ಜು";s:3:"kaj";s:12:"ಜೀಮಾ";s:3:"nzi";s:12:"제나가어";s:3:"zen";s:12:"ಜಾಝಾ";s:3:"zza";}i:713;a:36:{s:21:"ກາຊູບຽນ";s:3:"csb";s:12:"ກຣີກ";s:2:"el";s:21:"ກາກາອຸຊ";s:3:"gag";s:21:"ກາລິຊຽນ";s:2:"gl";s:21:"ກົວຣານີ";s:2:"gn";s:18:"ກອດຮິກ";s:3:"got";s:24:"ກູຈາຣາຕິ";s:2:"gu";s:31:"ກາຣາ-ການປາກ";s:3:"kaa";s:18:"ກາໄບລ໌";s:3:"kab";s:21:"ກາບາດຽນ";s:3:"kbd";s:21:"ກວນຍາມາ";s:2:"kj";s:30:"ກຣີນແລນລິດ";s:2:"kl";s:34:"ກາຣາໄຊ-ບານກາ";s:3:"krc";s:15:"莱兹依昂文";s:3:"lez";s:18:"ການມິກ";s:3:"xal";s:24:"ກວາງຕຸ້ງ";s:3:"yue";s:6:"ກາ";s:3:"gaa";s:12:"ກູຊິ";s:3:"guz";s:15:"ກາມບາ";s:3:"kam";s:21:"ກອນການີ";s:3:"kok";s:15:"ກູຣູກ";s:3:"kru";s:21:"ກວາຊີໂອ";s:3:"nmg";s:9:"ቩንጆ";s:3:"vun";s:6:"ກີ";s:3:"gez";s:12:"悉达摩文";s:3:"sid";s:12:"ກາໂຢ";s:3:"gay";s:30:"ກິນເບີເທັດ";s:3:"gil";s:15:"ກອນດີ";s:3:"gon";s:9:"岡德文";s:3:"gon";s:15:"ກຣີໂບ";s:3:"grb";s:15:"ກາຊິນ";s:3:"kac";s:12:"ກະວີ";s:3:"kaw";s:15:"ກາແປຣ";s:3:"kpe";s:21:"ກາເຣລຽນ";s:3:"krl";s:12:"ກຳເບ";s:3:"sba";s:9:"ກົມ";s:3:"bkm";}i:917;a:10:{s:41:"Εκκλησιαστικά Σλαβικά";s:2:"cu";s:16:"Ελληνικά";s:2:"el";s:18:"Εσπεράντο";s:2:"eo";s:16:"Εσθονικά";s:2:"et";s:35:"Ελβετικά Γερμανικά";s:3:"gsw";s:14:"Εβραϊκά";s:2:"he";s:8:"Εφίκ";s:3:"efi";s:16:"Εκατζούκ";s:3:"eka";s:14:"Ελαμάιτ";s:3:"elx";s:16:"Εγουόντο";s:3:"ewo";}i:945;a:6:{s:18:"教会スラブ語";s:2:"cu";s:9:"蒙古文";s:2:"mn";s:15:"ፑንጃብኛ";s:2:"pa";s:15:"ፑንጃቢኛ";s:2:"pa";s:9:"蒙当文";s:3:"mua";s:9:"蒙當文";s:3:"mua";}i:368;a:22:{s:19:"교회 슬라브어";s:2:"cu";s:49:"നോർത്തേൻ ഫ്രിഷ്യൻ";s:3:"frr";s:12:"നൗറു";s:2:"na";s:39:"നെപ്പോളിറ്റാൻ";s:3:"nap";s:49:"നോർവീജിയൻ ബുക്‌മൽ";s:2:"nb";s:24:"നേപ്പാളി";s:2:"ne";s:18:"നേവാരി";s:3:"new";s:21:"ന്യുവാൻ";s:3:"niu";s:58:"നോർവീജിയൻ നൈനോർക്‌സ്";s:2:"nn";s:27:"നോർവീജിയൻ";s:2:"no";s:37:"നോർത്തേൻ സോതോ";s:3:"nso";s:15:"നവാഹൊ";s:2:"nv";s:15:"ന്യൻജ";s:2:"ny";s:9:"നാമ";s:3:"naq";s:37:"നോർത്ത് ഡെബിൾ";s:2:"nd";s:15:"നുവേർ";s:3:"nus";s:24:"ന്യാൻകോൾ";s:3:"nyn";s:18:"നിയാസ്";s:3:"nia";s:12:"നോഗൈ";s:3:"nog";s:27:"ന്യാംവേസി";s:3:"nym";s:18:"ന്യോറോ";s:3:"nyo";s:34:"ന്യാസാ ഡോങ്ക";s:3:"tog";}i:447;a:14:{s:18:"宗教斯拉夫文";s:2:"cu";s:9:"宗卡文";s:2:"dz";s:12:"এয়ে";s:2:"ee";s:33:"এস্পেরান্তো";s:2:"eo";s:27:"এস্তোনীয়";s:2:"et";s:21:"এরজিয়া";s:3:"myv";s:27:"এন্দোঙ্গা";s:2:"ng";s:9:"宗加文";s:2:"ts";s:12:"এঘেম";s:3:"agq";s:15:"এম্বু";s:3:"ebu";s:12:"এফিক";s:3:"efi";s:15:"এন’কো";s:3:"nqo";s:21:"এলামাইট";s:3:"elx";s:22:"এন্.জিমা";s:3:"nzi";}i:935;a:17:{s:12:"Χουβάς";s:2:"cv";s:12:"Χάουσα";s:2:"ha";s:20:"Χαβανεζικά";s:3:"haw";s:10:"Χίντι";s:2:"hi";s:22:"Χιλιγκαγιόν";s:3:"hil";s:19:"Χίρι Μότου";s:2:"ho";s:12:"Χερέρο";s:2:"hz";s:30:"ཟུ་ལུ་སྐད།";s:2:"zu";s:21:"ཟུ་ལུ་ཁ";s:2:"zu";s:12:"Χιτίτε";s:3:"hit";s:58:"Χωρίς γλωσσολογικό περιεχόμενο";s:3:"zxx";s:12:"Χάιντα";s:3:"hai";s:12:"Χμονγκ";s:3:"hmn";s:10:"Χούπα";s:3:"hup";s:36:"ཟེ་ན་གཱ་སྐད།";s:3:"zen";s:30:"ཟུ་ནི་སྐད།";s:3:"zun";s:27:"ཟ་ཟཱ་སྐད།";s:3:"zza";}i:628;a:2:{s:12:"추바시어";s:2:"cv";s:9:"추크어";s:3:"chk";}i:74;a:59:{s:18:"валійская";s:2:"cy";s:12:"валлий";s:2:"cy";s:12:"велшки";s:2:"cy";s:20:"валлийский";s:2:"cy";s:20:"валлійська";s:2:"cy";s:51:"верхньонімецька (Швейцарія)";s:5:"de-ch";s:28:"верхнелужицкий";s:3:"hsb";s:30:"верхньолужицька";s:3:"hsb";s:20:"венгерская";s:2:"hu";s:18:"вугорская";s:2:"hu";s:12:"венгер";s:2:"hu";s:18:"венгериаг";s:2:"hu";s:20:"венгерский";s:2:"hu";s:20:"вірменська";s:2:"hy";s:12:"влашки";s:3:"rup";s:10:"венда";s:2:"ve";s:16:"венетски";s:3:"vec";s:12:"вепшки";s:3:"vep";s:23:"в’етнамская";s:2:"vi";s:22:"віетнамская";s:2:"vi";s:20:"виетнамски";s:2:"vi";s:14:"вьетнам";s:2:"vi";s:18:"вьетнамча";s:2:"vi";s:22:"вьетнамский";s:2:"vi";s:22:"вијетнамски";s:2:"vi";s:22:"вʼєтнамська";s:2:"vi";s:14:"валапюк";s:2:"vo";s:14:"волапюк";s:2:"vo";s:14:"волапик";s:2:"vo";s:17:"волап’юк";s:2:"vo";s:10:"вотик";s:3:"vot";s:12:"вотски";s:3:"vot";s:14:"водский";s:3:"vot";s:14:"водська";s:3:"vot";s:8:"виру";s:3:"vro";s:16:"валонски";s:2:"wa";s:20:"валлонский";s:2:"wa";s:20:"валлонська";s:2:"wa";s:10:"варай";s:3:"war";s:16:"варајски";s:3:"war";s:10:"волоф";s:2:"wo";s:16:"волофски";s:2:"wo";s:4:"ву";s:3:"wuu";s:6:"ваи";s:3:"vai";s:6:"вай";s:3:"vai";s:12:"вайиче";s:3:"vai";s:6:"вај";s:3:"vai";s:6:"ваї";s:3:"vai";s:12:"вунджо";s:3:"vun";s:14:"вунжочо";s:3:"vun";s:10:"вунџо";s:3:"vun";s:10:"вунжо";s:3:"vun";s:10:"вуньо";s:3:"vun";s:35:"восточный фризский";s:3:"frs";s:12:"валамо";s:3:"wal";s:12:"воламо";s:3:"wal";s:8:"вашо";s:3:"was";s:12:"валсер";s:3:"wae";s:18:"валисский";s:3:"wae";}i:451;a:9:{s:18:"ওয়েলশ";s:2:"cy";s:21:"ওড়িয়া";s:2:"or";s:18:"ওসেটিক";s:2:"os";s:21:"ওয়ালুন";s:2:"wa";s:18:"ওয়ারে";s:3:"war";s:24:"ওজিবওয়া";s:2:"oj";s:12:"ওসেজ";s:3:"osa";s:24:"ওয়ালামো";s:3:"wal";s:18:"ওয়াশো";s:3:"was";}i:933;a:4:{s:18:"ཝེལཤ་ཁ";s:2:"cy";s:24:"ཝི་གུར་ཁ";s:2:"ug";s:42:"ཝུའུ་ཏུའུ་སྐད།";s:2:"ur";s:24:"ཝོ་ལོཕ་ཁ";s:2:"wo";}i:927;a:17:{s:14:"Ουαλικά";s:2:"cy";s:16:"Ουγγρικά";s:2:"hu";s:18:"Ολλανδικά";s:2:"nl";s:20:"Οκσιτανικά";s:2:"oc";s:10:"Ορόμο";s:2:"om";s:12:"Ορίγια";s:2:"or";s:14:"Οσετικά";s:2:"os";s:18:"Ουντμούρτ";s:3:"udm";s:20:"Ουιγουρικά";s:2:"ug";s:18:"Ουκρανικά";s:2:"uk";s:14:"Ουρντού";s:2:"ur";s:20:"Ουζμπεκικά";s:2:"uz";s:18:"Οζιβίγουα";s:2:"oj";s:8:"Οσάζ";s:3:"osa";s:35:"Οθωμανικά Τουρκικά";s:3:"ota";s:20:"Ουγκαρίτικ";s:3:"uga";s:20:"Ουμπούντου";s:3:"umb";}i:608;a:45:{s:10:"ویلزی";s:2:"cy";s:10:"ویٚلش";s:2:"cy";s:10:"ويلشي";s:2:"cy";s:8:"ویلش";s:2:"cy";s:18:"ธิเวหิ";s:2:"dv";s:15:"ሀንጋሪኛ";s:2:"hu";s:21:"ਰੋਮਾਂਸ਼";s:2:"rm";s:15:"ਰੁੰਡੀ";s:2:"rn";s:24:"ਰੋਮਾਨੀਆਈ";s:2:"ro";s:12:"ਰੂਸੀ";s:2:"ru";s:12:"وندایی";s:2:"ve";s:10:"ویندا";s:2:"ve";s:10:"وینڈا";s:2:"ve";s:6:"وپس";s:3:"vep";s:14:"ویتنامی";s:2:"vi";s:22:"وِیَتنَمیٖز";s:2:"vi";s:14:"وېتنامي";s:2:"vi";s:12:"ولاپوک";s:2:"vo";s:14:"وولَپُک";s:2:"vo";s:6:"وتی";s:3:"vot";s:10:"ووتِک";s:3:"vot";s:12:"والونی";s:2:"wa";s:12:"وَلوٗن";s:2:"wa";s:12:"وارایی";s:3:"war";s:10:"وَریے";s:3:"war";s:10:"ولوفی";s:2:"wo";s:10:"وولوف";s:2:"wo";s:4:"وو";s:3:"wuu";s:31:"ਰਵਾਇਤੀ ਚੀਨੀ";s:7:"zh-hant";s:21:"واریاہ زبان";s:3:"mul";s:15:"ਰੋਮਬੋ";s:3:"rof";s:9:"ਰਵਾ";s:3:"rwk";s:10:"ویایی";s:3:"vai";s:6:"واے";s:3:"vai";s:8:"وائی";s:3:"vai";s:8:"ونجو";s:3:"vun";s:29:"وَستی پُرتُگالی";s:3:"dum";s:31:"وَسطی اَنٛگریٖزۍ";s:3:"enm";s:21:"وسطی فریٚنچ";s:3:"frm";s:30:"وَسطی ہاے جٔرمَن";s:3:"gmh";s:21:"وَستی ایرِش";s:3:"mga";s:24:"ਰਾਜਸਥਾਨੀ";s:3:"raj";s:12:"والامو";s:3:"wal";s:12:"واشویی";s:3:"was";s:8:"واشو";s:3:"was";}i:741;a:14:{s:15:"વેલ્શ";s:2:"cy";s:15:"ຝຣັ່ງ";s:2:"fr";s:18:"વેન્દા";s:2:"ve";s:30:"વિયેતનામીસ";s:2:"vi";s:21:"વોલાપુક";s:2:"vo";s:15:"વોટિક";s:3:"vot";s:15:"વાલૂન";s:2:"wa";s:12:"વારે";s:3:"war";s:15:"વોલોફ";s:2:"wo";s:9:"વાઇ";s:3:"vai";s:18:"વુન્જો";s:3:"vun";s:12:"વ્રજ";s:3:"bra";s:15:"વલામો";s:3:"wal";s:12:"વાશો";s:3:"was";}i:493;a:16:{s:10:"ולשית";s:2:"cy";s:14:"וועלשיש";s:2:"cy";s:15:"ネパール語";s:2:"ne";s:15:"ネワール語";s:3:"new";s:10:"וונדה";s:2:"ve";s:16:"ויאטנמית";s:2:"vi";s:26:"וויעטנאַמעזיש";s:2:"vi";s:20:"וואלאַפּוק";s:2:"vo";s:10:"ווטיק";s:3:"vot";s:12:"וואלון";s:2:"wa";s:10:"ווראי";s:3:"war";s:6:"ואי";s:3:"vai";s:12:"וונג׳ו";s:3:"vun";s:12:"וולאמו";s:3:"wal";s:10:"וואשו";s:3:"was";s:12:"וואלסר";s:3:"wae";}i:400;a:7:{s:18:"ուելսերեն";s:2:"cy";s:9:"풀라어";s:2:"ff";s:12:"Ɛndonezikan";s:2:"id";s:22:"ույղուրերեն";s:2:"ug";s:22:"ուկրաիներեն";s:2:"uk";s:12:"ուրդու";s:2:"ur";s:20:"ուզբեկերեն";s:2:"uz";}i:454;a:12:{s:18:"ウェールズ語";s:2:"cy";s:12:"খমের";s:2:"km";s:18:"ウドムルト語";s:3:"udm";s:15:"ウイグル語";s:2:"ug";s:18:"ウクライナ語";s:2:"uk";s:18:"ウルドゥー語";s:2:"ur";s:15:"ウズベク語";s:2:"uz";s:15:"ウォロフ語";s:2:"wo";s:12:"খাশি";s:3:"kha";s:21:"খোটানিজ";s:3:"kho";s:15:"ウガリト語";s:3:"uga";s:18:"ウォライタ語";s:3:"wal";}i:323;a:17:{s:21:"უელსური";s:2:"cy";s:21:"უნგრული";s:2:"hu";s:18:"ओसीटान";s:2:"oc";s:15:"ओरोमो";s:2:"om";s:15:"ओरिया";s:2:"or";s:24:"ओस्सेटिक";s:2:"os";s:27:"უდმურტული";s:3:"udm";s:24:"უიღურული";s:2:"ug";s:27:"უკრაინული";s:2:"uk";s:12:"ურდუ";s:2:"ur";s:24:"უზბეკური";s:2:"uz";s:18:"ओलापुक";s:2:"vo";s:28:"უცნობი ენა";s:3:"und";s:21:"ओजिब्वा";s:2:"oj";s:12:"ओसेज";s:3:"osa";s:40:"ओटोमान तुर्किश";s:3:"ota";s:27:"უგარითული";s:3:"uga";}i:44;a:19:{s:9:"វេល";s:2:"cy";s:22:"Даатскайдыы";s:2:"da";s:14:"Даниягӣ";s:2:"da";s:20:"Дивехијски";s:2:"dv";s:22:"Дьоппуоннуу";s:2:"ja";s:12:"팜팡가어";s:3:"pam";s:18:"乌德穆尔特文";s:3:"udm";s:12:"乌克兰文";s:2:"uk";s:12:"乌尔都文";s:2:"ur";s:15:"乌兹别克文";s:2:"uz";s:18:"វៀតណាម";s:2:"vi";s:21:"វូឡុហ្វ";s:2:"wo";s:12:"Дакота";s:3:"dak";s:12:"Даргва";s:3:"dar";s:14:"Делавер";s:3:"del";s:12:"Догриб";s:3:"dgr";s:10:"Динка";s:3:"din";s:10:"Догри";s:3:"doi";s:15:"乌加里特文";s:3:"uga";}i:253;a:12:{s:18:"ವೆಲ್ಶ್";s:2:"cy";s:15:"ವೆಂಡಾ";s:2:"ve";s:36:"ವಿಯೇಟ್ನಾಮೀಸ್";s:2:"vi";s:24:"ವೋಲಾಪುಕ್";s:2:"vo";s:18:"ವೋಟಿಕ್";s:3:"vot";s:18:"ವಾಲೂನ್";s:2:"wa";s:15:"ವರಾಯ್";s:3:"war";s:18:"ವೋಲೋಫ್";s:2:"wo";s:12:"ವಾಯಿ";s:3:"vai";s:15:"ವುಂಜೊ";s:3:"vun";s:15:"ವಲಾಮೋ";s:3:"wal";s:12:"ವಾಷೋ";s:3:"was";}i:381;a:24:{s:15:"വെൽഷ്";s:2:"cy";s:18:"եբրայերեն";s:2:"he";s:18:"依奴皮维克文";s:2:"ik";s:18:"依奴皮維克文";s:2:"ik";s:22:"Žemutinės vokietijos";s:3:"nds";s:28:"വടക്കൻ സമി";s:2:"se";s:15:"വെന്ദ";s:2:"ve";s:39:"വിയറ്റ്നാമീസ്";s:2:"vi";s:24:"വോളാപുക്";s:2:"vo";s:24:"വോട്ടിക്";s:3:"vot";s:18:"വല്ലൂൺ";s:2:"wa";s:18:"വാരേയ്";s:3:"war";s:18:"വൊളോഫ്";s:2:"wo";s:9:"依地文";s:2:"yi";s:25:"Žaliojo kyšulio kreolų";s:3:"kea";s:6:"വൈ";s:3:"vai";s:18:"വുഞ്ജോ";s:3:"vun";s:37:"եվրոպական իսպաներեն";s:5:"es-es";s:45:"եվրոպական պորտուգալերեն";s:5:"pt-pt";s:12:"依汪都文";s:3:"ewo";s:4:"Žju";s:3:"kaj";s:12:"വലമൊ";s:3:"wal";s:12:"വാഷൊ";s:3:"was";s:15:"വാൾസർ";s:3:"wae";}i:125;a:19:{s:9:"ဝေလ";s:2:"cy";s:18:"వెల్ష్";s:2:"cy";s:6:"ဝီ";s:2:"ee";s:12:"ဝီဂါ";s:2:"ug";s:15:"వెండా";s:2:"ve";s:33:"వియత్నామీస్";s:2:"vi";s:24:"వోలాపుక్";s:2:"vo";s:18:"వోటిక్";s:3:"vot";s:18:"వాలూన్";s:2:"wa";s:12:"వారే";s:3:"war";s:21:"ဝူလိုဖ်";s:2:"wo";s:18:"వొలాఫ్";s:2:"wo";s:9:"贝纳文";s:3:"bez";s:21:"ဝါဆီအို";s:3:"nmg";s:6:"ဝါ";s:3:"rwk";s:12:"వాయి";s:3:"vai";s:15:"వుంజొ";s:3:"vun";s:18:"వాలామో";s:3:"wal";s:12:"వాషో";s:3:"was";}i:929;a:17:{s:15:"ୱେଲ୍ସ";s:2:"cy";s:16:"Ρομανικά";s:2:"rm";s:12:"Ρούντι";s:2:"rn";s:18:"Ρουμανικά";s:2:"ro";s:12:"Ρωσικά";s:2:"ru";s:18:"ୱାଲୁନ୍";s:2:"wa";s:12:"ୱାରୈ";s:3:"war";s:15:"ୱୋଲଫ୍";s:2:"wo";s:10:"Ρόμπο";s:3:"rof";s:8:"Ρουά";s:3:"rwk";s:18:"ୱୌସେଜ୍";s:3:"osa";s:18:"Ραζασθάνι";s:3:"raj";s:16:"Ραπανούι";s:3:"rap";s:22:"Ραροτονγκάν";s:3:"rar";s:12:"Ρομανί";s:3:"rom";s:15:"ୱାଲମୋ";s:3:"wal";s:12:"ୱାସୋ";s:3:"was";}i:613;a:10:{s:15:"ਵੈਲਜ਼";s:2:"cy";s:24:"ฝรั่งเศส";s:2:"fr";s:42:"ฝรั่งเศสกาฌ็อง";s:3:"frc";s:24:"ਵੀਅਤਨਾਮੀ";s:2:"vi";s:15:"ਵੋਲੋਫ";s:2:"wo";s:9:"ਵਾਈ";s:3:"vai";s:15:"ਵੂੰਜੋ";s:3:"vun";s:39:"ฝรั่งเศส (สวิส)";s:5:"fr-ch";s:36:"ฝรั่งเศสกลาง";s:3:"frm";s:39:"ฝรั่งเศสโบราณ";s:3:"fro";}i:739;a:21:{s:12:"ۋېلشچە";s:2:"cy";s:21:"ປັນຈາບີ";s:2:"pa";s:30:"ປານກາຊີມານ";s:3:"pag";s:24:"ປາມປານກາ";s:3:"pam";s:36:"ປາມເປຍເມັນໂທ";s:3:"pap";s:12:"ປາລີ";s:2:"pi";s:15:"ປາສໂຕ";s:2:"ps";s:21:"ປໍຕູກີສ";s:2:"pt";s:14:"ۋېنداچە";s:2:"ve";s:20:"ۋىيېتنامچە";s:2:"vi";s:18:"ۋولاپۇكچە";s:2:"vo";s:12:"ۋوتېچە";s:3:"vot";s:16:"ۋاللۇنچە";s:2:"wa";s:14:"ۋارايچە";s:3:"war";s:14:"ۋولوفچە";s:2:"wo";s:10:"ۋايچە";s:3:"vai";s:14:"ۋۇنجوچە";s:3:"vun";s:24:"ປາລົວອານ";s:3:"pau";s:18:"ۋولايتاچە";s:3:"wal";s:12:"ۋاشوچە";s:3:"was";s:16:"ۋالسېرچە";s:3:"wae";}i:465;a:18:{s:15:"ডেনিশ";s:2:"da";s:9:"ඉව්";s:2:"ee";s:27:"ඉංග්‍රීසි";s:2:"en";s:33:"ケイジャン・フランス語";s:3:"frc";s:34:"ඉහළ සෝබියානු";s:3:"hsb";s:39:"ඉන්දුනීසියානු";s:2:"id";s:15:"ඉග්බෝ";s:2:"ig";s:15:"ඉතාලි";s:2:"it";s:33:"ඉනුක්ටිටුට්";s:2:"iu";s:12:"ケルン語";s:3:"ksh";s:9:"ডাচ";s:2:"nl";s:15:"ケチュア語";s:2:"qu";s:28:"ඉනාරි සාමි";s:3:"smn";s:18:"ডাকোটা";s:3:"dak";s:27:"ডেলাওয়ের";s:3:"del";s:15:"ডিংকা";s:3:"din";s:15:"ডিউলা";s:3:"dyu";s:12:"叙利亚文";s:3:"syr";}i:919;a:7:{s:42:"ཏེན་མག་གི་སྐད།";s:2:"da";s:33:"ཏཱ་མིལ་སྐད།";s:2:"ta";s:21:"ཏ་མིལ་ཁ";s:2:"ta";s:39:"ཏེ་ལུ་གུ་སྐད།";s:2:"te";s:30:"ཏེ་ལུ་གུ་ཁ";s:2:"te";s:21:"ཏ་ཇིཀ་ཁ";s:2:"tg";s:30:"ཏིག་རི་ཉ་ཁ";s:2:"ti";}i:916;a:5:{s:24:"ཌེ་ནིཤ་ཁ";s:2:"da";s:12:"Δανικά";s:2:"da";s:29:"Δυτικά Φριζιανά";s:2:"fy";s:12:"瓜拉尼文";s:2:"gn";s:12:"ཌཆ་ཁ";s:2:"nl";}i:583;a:33:{s:16:"دانمارکی";s:2:"da";s:14:"دانىشچە";s:2:"da";s:12:"دِویہی";s:2:"dv";s:16:"دىۋەخىچە";s:2:"dv";s:19:"دۇنيا تىلى";s:2:"eo";s:18:"ਗਾਗੌਜ਼";s:3:"gag";s:27:"ਗੈਲਿਸ਼ਿਅਨ";s:2:"gl";s:21:"ਗੁਆਰਾਨੀ";s:2:"gn";s:21:"ਗੁਜਰਾਤੀ";s:2:"gu";s:15:"ਗਾਂਡਾ";s:2:"lg";s:14:"دوآلایی";s:3:"dua";s:12:"دُوالا";s:3:"dua";s:16:"دۇئالاچە";s:3:"dua";s:10:"دوالا";s:3:"dua";s:19:"دیولا فونی";s:3:"dyo";s:12:"ਗੁਸੀ";s:3:"guz";s:16:"داکوتایی";s:3:"dak";s:16:"داكوتاچە";s:3:"dak";s:14:"دارقینی";s:3:"dar";s:12:"دَرگوا";s:3:"dar";s:18:"دارگىۋاچە";s:3:"dar";s:14:"دلاواری";s:3:"del";s:20:"دېلاۋارېچە";s:3:"del";s:12:"دوگریب";s:3:"dgr";s:16:"دوگرىبچە";s:3:"dgr";s:14:"دینکایی";s:3:"din";s:14:"دىنكاچە";s:3:"din";s:10:"دوگری";s:3:"doi";s:14:"دوگرىچە";s:3:"doi";s:16:"دایولایی";s:3:"dyu";s:16:"دىيۇلاچە";s:3:"dyu";s:16:"دازاگاچە";s:3:"dzg";s:19:"دری زرتشتی";s:3:"gbz";}i:721;a:11:{s:15:"ડેનિશ";s:2:"da";s:27:"ડ્ઝોંગ્ખા";s:2:"dz";s:18:"ડોન્ગા";s:2:"ng";s:6:"ડચ";s:2:"nl";s:18:"ቱርክመንኛ";s:2:"tk";s:12:"ቱርክኛ";s:2:"tr";s:12:"ቱርከኛ";s:2:"tr";s:12:"ቱምቡካ";s:3:"tum";s:21:"ડોગ્રિબ";s:3:"dgr";s:18:"ડોગ્રી";s:3:"doi";s:18:"ડ્યુલા";s:3:"dyu";}i:337;a:19:{s:15:"डेनिश";s:2:"da";s:15:"डॅनिश";s:2:"da";s:18:"룩셈부르크어";s:2:"lb";s:18:"डोन्गा";s:2:"ng";s:15:"डोंगा";s:2:"ng";s:6:"डच";s:2:"nl";s:30:"ഉഡ്മുർട്ട്";s:3:"udm";s:18:"ഉയ്ഘുർ";s:2:"ug";s:27:"ഉക്രേനിയൻ";s:2:"uk";s:15:"ഉറുദു";s:2:"ur";s:30:"ഉസ്‌ബെക്ക്";s:2:"uz";s:24:"डिलैवेयर";s:3:"del";s:24:"डेलॅवेयर";s:3:"del";s:21:"डोग्रिब";s:3:"dgr";s:18:"डोग्री";s:3:"doi";s:15:"डोगरी";s:3:"doi";s:18:"ड्युला";s:3:"dyu";s:30:"ഉഗറിട്ടിക്";s:3:"uga";s:24:"ഉംബുന്ദു";s:3:"umb";}i:307;a:14:{s:21:"დანიური";s:2:"da";s:18:"დივეჰი";s:2:"dv";s:48:"დასავლეთფრიზიული";s:2:"fy";s:61:"დასავლეთ გრენლანდიური";s:2:"kl";s:15:"დუალა";s:3:"dua";s:15:"დიოლა";s:3:"dyo";s:31:"დენე სულინე";s:3:"chp";s:18:"დაკოტა";s:3:"dak";s:24:"დარგუული";s:3:"dar";s:30:"დელავარული";s:3:"del";s:21:"დოგრიბი";s:3:"dgr";s:15:"დინკა";s:3:"din";s:15:"დოგრი";s:3:"doi";s:15:"დიულა";s:3:"dyu";}i:26;a:3:{s:24:"ដាណឺម៉ាក";s:2:"da";s:8:"Ђула";s:3:"dyu";s:4:"Ђу";s:3:"kaj";}i:233;a:24:{s:24:"ಡ್ಯಾನಿಶ್";s:2:"da";s:5:"éwé";s:2:"ee";s:8:"émilien";s:3:"egl";s:5:"észt";s:2:"et";s:15:"爱沙尼亚文";s:2:"et";s:8:"éuscaro";s:2:"eu";s:13:"északi fríz";s:3:"frr";s:12:"爱尔兰文";s:2:"ga";s:15:"ಡೋಂಗಾ";s:2:"ng";s:9:"ಡಚ್";s:2:"nl";s:14:"északi szotó";s:3:"nso";s:9:"écossais";s:3:"sco";s:14:"északi számi";s:2:"se";s:18:"ಡುವಾಲಾ";s:3:"dua";s:16:"égyptien ancien";s:3:"egy";s:15:"északi ndebele";s:2:"nd";s:12:"ಡಕೋಟ";s:3:"dak";s:24:"ಡೆಲಾವೇರ್";s:3:"del";s:24:"ಡೋಗ್ರಿಬ್";s:3:"dgr";s:15:"ಡಿಂಕಾ";s:3:"din";s:18:"ಡೋಗ್ರಿ";s:3:"doi";s:18:"ಡ್ಯೂಲಾ";s:3:"dyu";s:8:"élamite";s:3:"elx";s:7:"éwondo";s:3:"ewo";}i:940;a:2:{s:12:"덴마크어";s:2:"da";s:15:"ཤཱན་ཁ";s:3:"shn";}i:672;a:13:{s:10:"ڈینِش";s:2:"da";s:8:"ڈینش";s:2:"da";s:12:"ڈیویہی";s:2:"dv";s:12:"ڈونٛگا";s:2:"ng";s:6:"ڈَچ";s:2:"nl";s:4:"ڈچ";s:2:"nl";s:29:"ቀለል ያለ ቻይንኛ";s:7:"zh-hans";s:10:"ڈکوٹا";s:3:"dak";s:18:"ڈیٚلوییَر";s:3:"del";s:12:"ڈاگرِب";s:3:"dgr";s:10:"ڈِنکا";s:3:"din";s:10:"ڈوگری";s:3:"doi";s:14:"ڈِیوٗلا";s:3:"dyu";}i:361;a:36:{s:18:"ഡാനിഷ്";s:2:"da";s:12:"हौसा";s:2:"ha";s:15:"हाउसा";s:2:"ha";s:12:"हवाई";s:3:"haw";s:18:"हवाईयन";s:3:"haw";s:18:"हवाइयन";s:3:"haw";s:18:"हिब्रू";s:2:"he";s:18:"हिब्रु";s:2:"he";s:18:"हिन्दी";s:2:"hi";s:15:"हिंदी";s:2:"hi";s:24:"हिलिगेनन";s:3:"hil";s:27:"हिलीगेनॉन";s:3:"hil";s:25:"हिरी मोटू";s:2:"ho";s:25:"हिरी मॉटू";s:2:"ho";s:21:"हैतियाई";s:2:"ht";s:18:"हैतीयन";s:2:"ht";s:24:"हैटियाली";s:2:"ht";s:27:"हंगेरियाई";s:2:"hu";s:24:"हंगेरियन";s:2:"hu";s:30:"हंग्रीयाली";s:2:"hu";s:15:"हरैरो";s:2:"hz";s:15:"हरेरो";s:2:"hz";s:15:"ഡോങ്ക";s:2:"ng";s:15:"ഡച്ച്";s:2:"nl";s:15:"突尼西亞文";s:2:"tn";s:18:"हिताइत";s:3:"hit";s:24:"हिट्टिते";s:3:"hit";s:18:"ഡകോട്ട";s:3:"dak";s:18:"ഡർഗ്വാ";s:3:"dar";s:24:"ഡോഗ്രിബ്";s:3:"dgr";s:18:"ഡോഗ്രി";s:3:"doi";s:15:"ഡാസാഗ";s:3:"dzg";s:12:"हैडा";s:3:"hai";s:18:"ह्मॉंग";s:3:"hmn";s:12:"हूपा";s:3:"hup";s:21:"突尼斯阿拉伯文";s:3:"aeb";}i:849;a:12:{s:24:"ଡାନ୍ନିସ୍";s:2:"da";s:18:"ଡିଭେହୀ";s:2:"dv";s:18:"ଡୋଙ୍ଗା";s:2:"ng";s:9:"ଡଚ୍";s:2:"nl";s:12:"ዱዋላኛ";s:3:"dua";s:15:"ଡୁଆନା";s:3:"dua";s:18:"ଡାକୋଟା";s:3:"dak";s:24:"ଡାରାଗ୍ୱା";s:3:"dar";s:24:"ଡେଲାୱେର୍";s:3:"del";s:24:"ଡୋଗ୍ରିବ୍";s:3:"dgr";s:18:"ଡୋଗ୍ରୀ";s:3:"doi";s:15:"ଡୁଆଲା";s:3:"dyu";}i:673;a:1:{s:8:"ډېنش";s:2:"da";}i:497;a:25:{s:18:"ඩැනිශ්";s:2:"da";s:24:"ඩිසොන්කා";s:2:"dz";s:12:"יוונית";s:2:"el";s:23:"יוונית עתיקה";s:3:"grc";s:10:"יפנית";s:2:"ja";s:20:"יאַפּאַניש";s:2:"ja";s:14:"יאוונית";s:2:"jv";s:24:"יאַוואַנעזיש";s:2:"jv";s:18:"パンジャブ語";s:2:"pa";s:21:"パンガシナン語";s:3:"pag";s:18:"パンパンガ語";s:3:"pam";s:21:"パピアメント語";s:3:"pap";s:12:"パーリ語";s:2:"pi";s:21:"パシュトゥー語";s:2:"ps";s:12:"ייִדיש";s:2:"yi";s:10:"יידיש";s:2:"yi";s:12:"יורובה";s:2:"yo";s:15:"ඩුආලා";s:3:"dua";s:24:"יידיש־פערסיש";s:3:"jpr";s:21:"パフラヴィー語";s:3:"pal";s:12:"パラオ語";s:3:"pau";s:6:"יאו";s:3:"yao";s:12:"יאפזית";s:3:"yap";s:12:"יאנגבן";s:3:"yav";s:8:"ימבה";s:3:"ybb";}i:975;a:31:{s:18:"டேனிஷ்";s:2:"da";s:12:"凯尔特文";s:2:"kw";s:15:"டச்சு";s:2:"nl";s:18:"டெடும்";s:3:"tet";s:30:"டிக்ரின்யா";s:2:"ti";s:27:"டர்க்மென்";s:2:"tk";s:24:"டாகாலோக்";s:2:"tl";s:24:"டோங்கான்";s:2:"to";s:31:"டோக் பிஸின்";s:3:"tpi";s:21:"டர்கிஷ்";s:2:"tr";s:15:"டாடர்";s:2:"tt";s:12:"ட்வி";s:2:"tw";s:27:"டஹிதியான்";s:2:"ty";s:27:"டுவினியன்";s:3:"tyv";s:12:"டைடா";s:3:"dav";s:18:"டுவாலா";s:3:"dua";s:12:"டெசோ";s:3:"teo";s:18:"டசவாக்";s:3:"twq";s:18:"டைக்ரே";s:3:"tig";s:24:"டோக்ரிப்";s:3:"dgr";s:18:"டின்கா";s:3:"din";s:18:"டோக்ரி";s:3:"doi";s:18:"ட்யூலா";s:3:"dyu";s:18:"டிம்னே";s:3:"tem";s:18:"டெரெனோ";s:3:"ter";s:12:"டிவ்";s:3:"tiv";s:18:"டோகேலௌ";s:3:"tkl";s:30:"டிலிங்கிட்";s:3:"tli";s:24:"டாமாஷேக்";s:3:"tmh";s:33:"ட்ஸிம்ஷியன்";s:3:"tsi";s:18:"டுவாலு";s:3:"tvl";}i:25;a:4:{s:9:"丹麦文";s:2:"da";s:9:"丹麥文";s:2:"da";s:12:"응곰바어";s:3:"jgo";s:9:"응코어";s:3:"nqo";}i:864;a:14:{s:12:"ጀርመን";s:2:"de";s:40:"ରେହେଟୋ-ରୋମାନ୍ସ";s:2:"rm";s:18:"ରୁଣ୍ଡି";s:2:"rn";s:27:"ରୋମାନିଆନ୍";s:2:"ro";s:18:"ରଷିଆନ୍";s:2:"ru";s:15:"우드말트어";s:3:"udm";s:18:"우크라이나어";s:2:"uk";s:12:"우르두어";s:2:"ur";s:15:"우즈베크어";s:2:"uz";s:18:"ରୋମ୍ବୋ";s:3:"rof";s:27:"ରାଜସ୍ଥାନୀ";s:3:"raj";s:21:"ରାପାନୁଇ";s:3:"rap";s:33:"ରାରୋତୋଙ୍ଗନ୍";s:3:"rar";s:18:"ରୋମାନି";s:3:"rom";}i:460;a:22:{s:21:"জার্মান";s:2:"de";s:18:"জোঙ্গা";s:2:"dz";s:15:"ガガウズ語";s:3:"gag";s:15:"ガリシア語";s:2:"gl";s:18:"জাপানি";s:2:"ja";s:18:"জাভানি";s:2:"jv";s:27:"জর্জিয়ান";s:2:"ka";s:12:"ガンダ語";s:2:"lg";s:12:"জোসা";s:2:"xh";s:12:"জুলু";s:2:"zu";s:9:"줄루어";s:2:"zu";s:18:"জার্মা";s:3:"dje";s:12:"杜亞拉文";s:3:"dua";s:19:"জলা-ফনী";s:3:"dyo";s:6:"ガ語";s:3:"gaa";s:9:"ガヨ語";s:3:"gay";s:34:"জুদেও ফার্সি";s:3:"jpr";s:28:"জুদেও আরবি";s:3:"jrb";s:21:"জাপোটেক";s:3:"zap";s:18:"জেনাগা";s:3:"zen";s:12:"জুনি";s:3:"zun";s:12:"জাজা";s:3:"zza";}i:936;a:3:{s:33:"འཇར་མན་གྱི།";s:2:"de";s:18:"ፈረንሳይኛ";s:2:"fr";s:36:"འབར་མའི་སྐད།";s:2:"my";}i:911;a:14:{s:27:"ཇཱར་མཱན་ཁ";s:2:"de";s:15:"ཇོང་ཁ";s:2:"dz";s:33:"ཇཱ་པཱ་ནིས་ཁ";s:2:"ja";s:30:"ཇཱ་བ་ནིས་ཁ";s:2:"jv";s:33:"ཇཽ་ཇི་ཡཱན་ཁ";s:2:"ka";s:18:"ୟାକୁଟ୍";s:3:"sah";s:18:"ୟୁଘୁର୍";s:2:"ug";s:33:"ୟୁକ୍ରାନିଆନ୍";s:2:"uk";s:18:"ୟିଡିସ୍";s:2:"yi";s:18:"ୟୋରୁବା";s:2:"yo";s:36:"ୟୁ.ଏସ୍. ଇଁରାଜୀ";s:5:"en-us";s:27:"ୟୁଗୋରଟିକ୍";s:3:"uga";s:9:"ୟାଓ";s:3:"yao";s:18:"ୟାପୀସ୍";s:3:"yap";}i:915;a:41:{s:18:"Γερμανικά";s:2:"de";s:35:"Γερμανικά Αυστρίας";s:5:"de-at";s:35:"Γερμανικά Ελβετίας";s:5:"de-ch";s:40:"Γλώσσα Κάτω Λουσατίας";s:3:"dsb";s:4:"Γι";s:2:"ee";s:14:"Γαλλικά";s:2:"fr";s:18:"Γκαγκάουζ";s:3:"gag";s:18:"Γαλικιανά";s:2:"gl";s:18:"Γκουαρανί";s:2:"gn";s:14:"Γοτθικά";s:3:"got";s:22:"Γκουγιαράτι";s:2:"gu";s:38:"Γλώσσα Άνω Λουσατίας";s:3:"hsb";s:18:"Γεωργιανά";s:2:"ka";s:12:"Γκάντα";s:2:"lg";s:14:"Γιακούτ";s:3:"sah";s:16:"Γουαλούν";s:2:"wa";s:14:"Γουάρει";s:3:"war";s:14:"Γουόλοφ";s:2:"wo";s:12:"Γίντις";s:2:"yi";s:18:"Γιορούμπα";s:2:"yo";s:6:"Γκα";s:3:"gaa";s:12:"Γκούσι";s:3:"guz";s:57:"Γλώσσα του Πράσινου Ακρωτηρίου";s:3:"kea";s:27:"Γαλλικά Καναδά";s:5:"fr-ca";s:31:"Γαλλικά Ελβετίας";s:5:"fr-ch";s:8:"Γκιζ";s:3:"gez";s:12:"Γκάγιο";s:3:"gay";s:16:"Γκμπάγια";s:3:"gba";s:22:"Γκιλμπερτίζ";s:3:"gil";s:12:"Γκόντι";s:3:"gon";s:20:"Γκοροντάλο";s:3:"gor";s:14:"Γκρίμπο";s:3:"grb";s:18:"Γκουίτσιν";s:3:"gwi";s:16:"Γουάλαμο";s:3:"wal";s:12:"Γουασό";s:3:"was";s:8:"Γιάο";s:3:"yao";s:12:"Γιαπίζ";s:3:"yap";s:20:"Γιανγκμπέν";s:3:"yav";s:9:"洋卞文";s:3:"yav";s:14:"Γκομάλα";s:3:"bbj";s:12:"Γιέμπα";s:3:"ybb";}i:490;a:44:{s:12:"גרמנית";s:2:"de";s:18:"ජර්මන්";s:2:"de";s:27:"גרמנית אוסטרית";s:5:"de-at";s:42:"גרמנית שוויצרית (גבוהה)";s:5:"de-ch";s:12:"גריכיש";s:2:"el";s:14:"גגאוזית";s:3:"gag";s:23:"גאלית סקוטית";s:2:"gd";s:18:"גליציאנית";s:2:"gl";s:16:"גאַלישיש";s:2:"gl";s:12:"גוארני";s:2:"gn";s:10:"גותית";s:3:"got";s:10:"גאטיש";s:3:"got";s:29:"גרמנית שוויצרית";s:3:"gsw";s:18:"גוג׳ראטית";s:2:"gu";s:12:"ජපන්";s:2:"ja";s:12:"ජාවා";s:2:"jv";s:14:"גאורגית";s:2:"ka";s:30:"ජෝර්ජියානු";s:2:"ka";s:16:"גרוזיניש";s:2:"ka";s:10:"גאנדה";s:2:"lg";s:12:"ナウル語";s:2:"na";s:12:"ナポリ語";s:3:"nap";s:23:"גרמנית תחתית";s:3:"nds";s:12:"ナバホ語";s:2:"nv";s:21:"ජන්ජාබි";s:2:"pa";s:15:"史瓦希里文";s:2:"sw";s:12:"ג׳ולוף";s:2:"wo";s:28:"ජොල-ෆෝනියි";s:3:"dyo";s:4:"גא";s:3:"gaa";s:8:"גוסי";s:3:"guz";s:9:"ナマ語";s:3:"naq";s:27:"史瓦希里文(剛果)";s:3:"swc";s:6:"געז";s:3:"gez";s:8:"גאיו";s:3:"gay";s:10:"גבאיה";s:3:"gba";s:18:"גילברטזית";s:3:"gil";s:38:"גרמנית בינונית-גבוהה";s:3:"gmh";s:34:"גרמנית עתיקה גבוהה";s:3:"goh";s:10:"גונדי";s:3:"gon";s:18:"גורונטאלו";s:3:"gor";s:8:"גרבו";s:3:"grb";s:16:"גוויצ׳ין";s:3:"gwi";s:8:"ג׳יו";s:3:"kaj";s:8:"גומל";s:3:"bbj";}i:332;a:28:{s:15:"जर्मन";s:2:"de";s:24:"ज़ोन्गखा";s:2:"dz";s:18:"जोङ्खा";s:2:"dz";s:18:"जापानी";s:2:"ja";s:15:"जपानी";s:2:"ja";s:24:"जावानीज़";s:2:"jv";s:21:"जावानीज";s:2:"jv";s:21:"जाभानिज";s:2:"jv";s:27:"जॉर्जियाई";s:2:"ka";s:24:"जॉर्जियन";s:2:"ka";s:27:"जर्जियाली";s:2:"ka";s:18:"ज़ुआंग";s:2:"za";s:15:"ज़ुलू";s:2:"zu";s:12:"जुलु";s:2:"zu";s:15:"जर्मा";s:3:"dje";s:25:"जोला-फोंई";s:3:"dyo";s:28:"जोला-फोंयी";s:3:"dyo";s:28:"जोला-फोनिल";s:3:"dyo";s:27:"जिल्बरटीज";s:3:"gil";s:37:"जुदेओ-पर्शियन";s:3:"jpr";s:31:"जुदेओ-फारसी";s:3:"jpr";s:34:"जुदेओ-अरेबिक";s:3:"jrb";s:28:"जुदेओ-अरबी";s:3:"jrb";s:12:"ज्जु";s:3:"kaj";s:24:"ज़ेपोटेक";s:3:"zap";s:27:"ज़ेनान्गा";s:3:"zen";s:15:"ज़ूनी";s:3:"zun";s:18:"ज़ाज़ा";s:3:"zza";}i:379;a:13:{s:20:"գերմաներեն";s:2:"de";s:22:"գագաուզերեն";s:3:"gag";s:18:"գալիսերեն";s:2:"gl";s:16:"գուարանի";s:2:"gn";s:18:"գուջարաթի";s:2:"gu";s:10:"գանդա";s:2:"lg";s:6:"Żwang";s:2:"za";s:5:"Żulu";s:2:"zu";s:10:"գուսի";s:3:"guz";s:8:"Żingaru";s:3:"rom";s:8:"Żapotek";s:3:"zap";s:7:"Żenaga";s:3:"zen";s:5:"Żuni";s:3:"zun";}i:235;a:7:{s:9:"ꄓꇩꉙ";s:2:"de";s:12:"四川イ語";s:2:"ii";s:12:"四川彝文";s:2:"ii";s:12:"庫爾德文";s:2:"ku";s:12:"庫魯科文";s:3:"kru";s:12:"庫密克文";s:3:"kum";s:12:"庫特奈文";s:3:"kut";}i:254;a:6:{s:7:"þýska";s:2:"de";s:12:"ಶೋನಾ";s:2:"sn";s:12:"ಶಂಬಲ";s:3:"ksb";s:46:"ಶಾಸ್ತ್ರೀಯ ನೇವಾರಿ";s:3:"nwc";s:12:"ಶಾನ್";s:3:"shn";s:49:"ಶಾಸ್ತ್ರೀಯ ಸಿರಿಯಕ್";s:3:"syc";}i:306;a:12:{s:27:"გერმანული";s:2:"de";s:27:"გაგაუზური";s:3:"gag";s:27:"გალისიური";s:2:"gl";s:21:"გუარანი";s:2:"gn";s:18:"გოთური";s:3:"got";s:24:"გუჯარათი";s:2:"gu";s:15:"განდა";s:2:"lg";s:58:"გამარტივებული ჩინური";s:7:"zh-hans";s:15:"გუსიი";s:3:"guz";s:15:"გეეზი";s:3:"gez";s:15:"გბაია";s:3:"gba";s:15:"გონდი";s:3:"gon";}i:21;a:5:{s:9:"독일어";s:2:"de";s:20:"독일어(스위스)";s:3:"gsw";s:9:"ចិន";s:2:"zh";s:42:"ចិន​អក្សរ​កាត់";s:7:"zh-hans";s:39:"ចិន​អក្សរ​ពេញ";s:7:"zh-hant";}i:288;a:13:{s:10:"Ġermaniż";s:2:"de";s:10:"Ġappuniż";s:2:"ja";s:9:"Ġavaniż";s:2:"jv";s:9:"Ġorġjan";s:2:"ka";s:33:"Ġermaniż komuni; sassonu komuni";s:3:"nds";s:12:"베트남어";s:2:"vi";s:9:"베나어";s:3:"bez";s:9:"베자어";s:3:"bej";s:19:"Ġargon taċ-Ċinuk";s:3:"chn";s:27:"Ġermaniku, medjevali pulit";s:3:"gmh";s:23:"Ġermaniku, antik pulit";s:3:"goh";s:6:"Ġerbo";s:3:"grb";s:9:"満州語";s:3:"mnc";}i:844;a:14:{s:21:"ଜର୍ମାନ୍";s:2:"de";s:24:"ଜାପାନୀଜ୍";s:2:"ja";s:24:"ଜାଭାନୀଜ୍";s:2:"jv";s:24:"ଜର୍ଜିଆନ୍";s:2:"ka";s:18:"ଜୁଆଙ୍ଗ";s:2:"za";s:12:"ଜୁଲୁ";s:2:"zu";s:30:"ଜିବ୍ରାଟୀଜ୍";s:3:"gil";s:40:"ଜୁଡେଓ-ପର୍ସିଆନ୍";s:3:"jpr";s:34:"ଜୁଡେଓ-ଆରବୀକ୍";s:3:"jrb";s:12:"ଜ୍ଜୁ";s:3:"kaj";s:24:"ଜାପୋଟେକ୍";s:3:"zap";s:18:"ଜେନାଗା";s:3:"zen";s:12:"ଜୁନୀ";s:3:"zun";s:12:"ଜାଜା";s:3:"zza";}i:53;a:18:{s:18:"Ниэмэстии";s:2:"de";s:12:"Немисӣ";s:2:"de";s:30:"ឥណ្ឌូណេស៊ី";s:2:"id";s:10:"Науру";s:2:"na";s:26:"Неаполитански";s:3:"nap";s:25:"Ниски немачки";s:3:"nds";s:20:"Ньыпааллыы";s:2:"ne";s:12:"Невари";s:3:"new";s:12:"Ндонга";s:2:"ng";s:12:"Ниуеан";s:3:"niu";s:16:"Норвешки";s:2:"no";s:14:"Норвегӣ";s:2:"no";s:12:"Навахо";s:2:"nv";s:18:"Нууччалыы";s:2:"ru";s:9:"Н’ко";s:3:"nqo";s:8:"Ниас";s:3:"nia";s:10:"Ногаи";s:3:"nog";s:10:"Нзима";s:3:"nzi";}i:972;a:23:{s:21:"ஜெர்மன்";s:2:"de";s:30:"ஜப்பானியம்";s:2:"ja";s:24:"ஜாவானீஸ்";s:2:"jv";s:27:"ஜார்ஜியன்";s:2:"ka";s:9:"라틴어";s:2:"la";s:12:"라디노어";s:3:"lad";s:9:"라오어";s:2:"lo";s:15:"라트비아어";s:2:"lv";s:18:"ஜுவாங்";s:2:"za";s:12:"ஜுலு";s:2:"zu";s:34:"ஜோலா-ஃபோன்யி";s:3:"dyo";s:12:"라코타어";s:3:"lkt";s:46:"ஜூதேயோ-பெர்ஷியன்";s:3:"jpr";s:40:"ஜூதேயோ-அராபிக்";s:3:"jrb";s:12:"ஜ்ஜூ";s:3:"kaj";s:12:"라한다어";s:3:"lah";s:15:"라자스탄어";s:3:"raj";s:12:"라파뉴이";s:3:"rap";s:15:"라로통가어";s:3:"rar";s:24:"ஜாபோடெக்";s:3:"zap";s:15:"ஜெனகா";s:3:"zen";s:12:"ஜூனி";s:3:"zun";s:12:"ஜாஜா";s:3:"zza";}i:711;a:79:{s:16:"گېرمانچە";s:2:"de";s:15:"ગ્રીક";s:2:"el";s:14:"گىرېكچە";s:2:"el";s:14:"گاگائوز";s:3:"gag";s:15:"ગાગાઝ";s:3:"gag";s:4:"گن";s:3:"gan";s:27:"گیلی اسکاتلندی";s:2:"gd";s:18:"گالیسیایی";s:2:"gl";s:24:"ગેલિશિયન";s:2:"gl";s:18:"گیلِشِیَن";s:2:"gl";s:24:"گالىتسىيانچە";s:2:"gl";s:18:"گالیشیائی";s:2:"gl";s:10:"گیلکی";s:3:"glk";s:14:"گوارانی";s:2:"gn";s:21:"ગુઆરાની";s:2:"gn";s:16:"گُوارَنی";s:2:"gn";s:20:"گۇئارانىچە";s:2:"gn";s:14:"گُارانی";s:2:"gn";s:10:"گوتیک";s:3:"got";s:15:"ગોથિક";s:3:"got";s:12:"گوتھِک";s:3:"got";s:10:"گوتچە";s:3:"got";s:39:"گېرمانچە شىۋىتسارىيە";s:3:"gsw";s:21:"ગુજરાતી";s:2:"gu";s:12:"گجراتی";s:2:"gu";s:14:"گُجرٲتی";s:2:"gu";s:18:"گۇجاراتچە";s:2:"gu";s:8:"گرجی";s:2:"ka";s:18:"گىرۇزىنچە";s:2:"ka";s:16:"گرینلندی";s:2:"kl";s:22:"گىرېنلاندچە";s:2:"kl";s:14:"گاندایی";s:2:"lg";s:15:"ગાંડા";s:2:"lg";s:10:"گاندا";s:2:"lg";s:14:"گانداچە";s:2:"lg";s:10:"گینڈا";s:2:"lg";s:24:"گوللاندىيەچە";s:2:"nl";s:12:"僧伽罗文";s:2:"si";s:12:"僧伽羅文";s:2:"si";s:18:"گۇاڭدوڭچە";s:3:"yue";s:8:"گایی";s:3:"gaa";s:4:"گا";s:3:"gaa";s:8:"گاچە";s:3:"gaa";s:8:"گوسی";s:3:"guz";s:12:"ગુસી";s:3:"guz";s:12:"گۇسىچە";s:3:"guz";s:6:"گسی";s:3:"guz";s:10:"گومبا";s:3:"jgo";s:13:"گی‌ئزی";s:3:"gez";s:9:"ગીઝ";s:3:"gez";s:8:"گیٖز";s:3:"gez";s:10:"گىزچە";s:3:"gez";s:12:"گایویی";s:3:"gay";s:12:"ગાયો";s:3:"gay";s:10:"گیےیو";s:3:"gay";s:12:"گايوچە";s:3:"gay";s:14:"گبایایی";s:3:"gba";s:10:"گبایا";s:3:"gba";s:16:"گىباياچە";s:3:"gba";s:14:"گیلبرتی";s:3:"gil";s:20:"گِلبٔرٹیٖز";s:3:"gil";s:18:"گىلبېرتچە";s:3:"gil";s:10:"گوندی";s:3:"gon";s:15:"ગોંડી";s:3:"gon";s:14:"گوندىچە";s:3:"gon";s:18:"گورونتالو";s:3:"gor";s:30:"ગોરોન્તાલો";s:3:"gor";s:18:"گورینٹیلو";s:3:"gor";s:22:"گورونتالوچە";s:3:"gor";s:14:"گریبویی";s:3:"grb";s:18:"ગ્રેબો";s:3:"grb";s:10:"گرِبو";s:3:"grb";s:14:"گرېبوچە";s:3:"grb";s:15:"گویچ این";s:3:"gwi";s:24:"ગ્વિચ’ઇન";s:3:"gwi";s:17:"گُوِچ اِن";s:3:"gwi";s:18:"گىۋىچىنچە";s:3:"gwi";s:16:"گومالاچە";s:3:"bbj";s:31:"ગોઅન કોંકણી";s:3:"gom";}i:503;a:8:{s:6:"德文";s:2:"de";s:18:"දිවෙහි";s:2:"dv";s:18:"德文(瑞士)";s:3:"gsw";s:18:"プファルツ語";s:3:"pfl";s:15:"プロシア語";s:3:"prg";s:28:"දකුණු සාමි";s:3:"sma";s:12:"දෙමළ";s:2:"ta";s:12:"德拉瓦文";s:3:"del";}i:214;a:12:{s:25:"Österreichisches deutsch";s:5:"de-at";s:26:"Öschtriichischs tüütsch";s:5:"de-at";s:30:"Öösterrieksch hoochdüütsch";s:5:"de-at";s:30:"ಎಸ್ಪೆರಾಂಟೊ";s:2:"eo";s:30:"ಎಸ್ಟೊನಿಯನ್";s:2:"et";s:24:"ಎರ್‌ಝ್ಯಾ";s:3:"myv";s:9:"Özbekçe";s:2:"uz";s:12:"ಎಂಬು";s:3:"ebu";s:15:"ಎಫಿಕ್";s:3:"efi";s:18:"ಎನ್‌ಕೋ";s:3:"nqo";s:21:"ಎಕಾಜುಕ್";s:3:"eka";s:21:"ಎಲಾಮೈಟ್";s:3:"elx";}i:248;a:15:{s:14:"østrigsk tysk";s:5:"de-at";s:16:"østerriksk tysk";s:5:"de-at";s:12:"øvresorbisk";s:3:"hsb";s:24:"ರೊಮಾನ್ಷ್";s:2:"rm";s:15:"ರುಂಡಿ";s:2:"rn";s:27:"ರೊಮೇನಿಯನ್";s:2:"ro";s:18:"ರಷ್ಯನ್";s:2:"ru";s:15:"ರೊಂಬೊ";s:3:"rof";s:9:"ರುವ";s:3:"rwk";s:11:"østfrisisk";s:3:"frs";s:30:"ರಾಜಾಸ್ಥಾನಿ";s:3:"raj";s:24:"ರಾಪಾನುಯಿ";s:3:"rap";s:30:"ರಾರೋಟೊಂಗನ್";s:3:"rar";s:18:"ರೋಮಾನಿ";s:3:"rom";s:6:"湘語";s:3:"hsn";}i:201;a:3:{s:25:"Éisträichescht däitsch";s:5:"de-at";s:19:"ұйғыр тілі";s:2:"ug";s:9:"温旧文";s:3:"vun";}i:137;a:2:{s:40:"ဩစတြီးယ ဂျာမန်";s:5:"de-at";s:55:"ဩစတြေးလျှ အင်္ဂလိပ်";s:5:"en-au";}i:566;a:5:{s:34:"ਆਸਟਰੀਆਈ ਜਰਮਨ";s:5:"de-at";s:12:"ਆਇਰੀ";s:2:"ga";s:27:"ਆਈਸਲੈਂਡਿਕ";s:2:"is";s:47:"ਆਧੁਨਿਕ ਮਿਆਰੀ ਅਰਬੀ";s:6:"ar-001";s:55:"ਆਸਟ੍ਰੇਲੀਆਈ ਅੰਗਰੇਜ਼ੀ";s:5:"en-au";}i:885;a:9:{s:15:"奥地利德文";s:5:"de-at";s:15:"奥克西唐文";s:2:"oc";s:12:"奥洛莫文";s:2:"om";s:12:"奥里亚文";s:2:"or";s:12:"奥塞梯文";s:2:"os";s:12:"식시카어";s:3:"bla";s:15:"奥吉布瓦文";s:2:"oj";s:12:"奥萨格文";s:3:"osa";s:21:"奥托曼土耳其文";s:3:"ota";}i:942;a:20:{s:81:"སུ་ཡིས་གི་མཐོ་སའི་ཇཱར་མཱན་ཁ";s:5:"de-ch";s:48:"སུ་ཡིས་ཇཱར་མཱན་ཁ";s:3:"gsw";s:24:"སོག་སྐད།";s:2:"mn";s:30:"སོག་པོའི་ཁ";s:2:"mn";s:30:"སཾ་སྐྲྀ་ཏ།";s:2:"sa";s:27:"སཾསྐྲྀཏ་ཁ";s:2:"sa";s:27:"སིན་དཱི་ཁ";s:2:"sd";s:27:"སིང་ཧ་ལ་ཁ";s:2:"si";s:33:"སུ་ལོ་བཱཀ་ཁ";s:2:"sk";s:51:"སུ་ལོ་བི་ནི་ཡཱན་ཁ";s:2:"sl";s:27:"སོ་མ་ལི་ཁ";s:2:"so";s:39:"སཱར་བྷི་ཡཱན་ཁ";s:2:"sr";s:36:"སཱུན་ད་ནིས་ཁ";s:2:"su";s:30:"སུའི་ཌིཤ་ཁ";s:2:"sv";s:33:"སྭཱ་ཧི་ལི་ཁ";s:2:"sw";s:64:"སྟབས་བརྡའི། ཀྲུང་གོའི།";s:7:"zh-hans";s:45:"སྲོལ་རྒྱུན་གྱི།";s:7:"zh-hant";s:57:"སྔ་དུས་ཀྱི་རྒྱ་མི་ཁ";s:7:"zh-hant";s:57:"སྐད་རིག་ནང་དོན་མེདཔ";s:3:"zxx";s:39:"སུ་ཡིས་ཕྲནཅ་ཁ";s:5:"fr-ch";}i:192;a:1:{s:32:"Àrd-ghearmailtis na h-eilbheise";s:5:"de-ch";}i:161;a:2:{s:29:"標準ドイツ語(スイス)";s:5:"de-ch";s:30:"標準摩洛哥塔馬塞特文";s:3:"zgh";}i:328;a:24:{s:73:"შვეიცარიული ზემოგერმანული";s:5:"de-ch";s:52:"შოტლანდიური გელური";s:2:"gd";s:61:"შვეიცარიული გერმანული";s:3:"gsw";s:13:"ňandžština";s:2:"ny";s:18:"산스크리트어";s:2:"sa";s:12:"산탈리어";s:3:"sat";s:9:"산고어";s:2:"sg";s:15:"შილჰა";s:3:"shi";s:12:"შონა";s:2:"sn";s:21:"შვედური";s:2:"sv";s:21:"შამბალა";s:3:"ksb";s:13:"ňankolština";s:3:"nyn";s:8:"ňankole";s:3:"nyn";s:12:"言語不明";s:3:"und";s:21:"言語的内容なし";s:3:"zxx";s:58:"შვეიცარიული ფრანგული";s:5:"fr-ch";s:14:"ňamwežština";s:3:"nym";s:8:"ňamwezi";s:3:"nym";s:10:"ňorština";s:3:"nyo";s:5:"ňoro";s:3:"nyo";s:12:"산다웨어";s:3:"sad";s:12:"შანი";s:3:"shn";s:24:"შუმერული";s:3:"sux";s:11:"ňasa tonga";s:3:"tog";}i:754;a:18:{s:41:"ສະວິສ ໄຮ ເຈີແມນ";s:5:"de-ch";s:24:"ສະແປນນິຊ";s:2:"es";s:33:"ສະກັອດເກລິກ";s:2:"gd";s:34:"ສະວິສ ເຈີແມນ";s:3:"gsw";s:27:"ສັນສະກຣິດ";s:2:"sa";s:21:"ສາດີນຽນ";s:2:"sc";s:12:"ສກອດ";s:3:"sco";s:15:"ສິນທິ";s:2:"sd";s:21:"ສິນຫາລາ";s:2:"si";s:24:"ສະໂລແວັກ";s:2:"sk";s:27:"ສະໂລເວນຽນ";s:2:"sl";s:36:"ສຣານນານຕອນໂກ";s:3:"srn";s:21:"ສະວີດິຊ";s:2:"sv";s:18:"ኒያንኮልኛ";s:3:"nyn";s:24:"ສກອດຊາມິ";s:3:"sms";s:31:"ສະວິສ ຝຣັ່ງ";s:5:"fr-ch";s:28:"ສາມາຣິແຕນ-";s:3:"sam";s:42:"ສັນຍາລັກບລີຊິມ";s:3:"zbl";}i:352;a:37:{s:36:"Šveicarijos aukštutinė vokiečių";s:5:"de-ch";s:19:"Šveices augšvācu";s:5:"de-ch";s:27:"Švajcarski visoki nemački";s:5:"de-ch";s:8:"Španski";s:2:"es";s:15:"Škotski galski";s:2:"gd";s:23:"Šveicarijos vokiečių";s:3:"gsw";s:14:"Šveices vācu";s:3:"gsw";s:20:"Švajcarsko nemački";s:3:"gsw";s:9:"ꆈꌠꉙ";s:2:"ii";s:21:"रोमान्श";s:2:"rm";s:21:"रोमानिश";s:2:"rm";s:18:"रुन्दी";s:2:"rn";s:18:"रूण्डी";s:2:"rn";s:27:"रोमानियाई";s:2:"ro";s:24:"रोमानियन";s:2:"ro";s:30:"रोमानियाली";s:2:"ro";s:12:"रूसी";s:2:"ru";s:15:"रशियन";s:2:"ru";s:8:"Škotski";s:3:"sco";s:5:"Šona";s:2:"sn";s:8:"Švedski";s:2:"sv";s:18:"रोम्बो";s:3:"rof";s:9:"रवा";s:3:"rwk";s:15:"रव्हा";s:3:"rwk";s:15:"र्‌वा";s:3:"rwk";s:23:"Šveicarijos prancūzų";s:5:"fr-ch";s:16:"Šveices franču";s:5:"fr-ch";s:21:"Švajcarski francuski";s:5:"fr-ch";s:12:"ഘാസി";s:3:"kha";s:30:"ഘോറ്റാനേസേ";s:3:"kho";s:27:"राजस्थानी";s:3:"raj";s:21:"रापानुई";s:3:"rap";s:27:"रारोतोंगन";s:3:"rar";s:27:"रारोटोंगन";s:3:"rar";s:18:"रोमानी";s:3:"rom";s:4:"Šan";s:3:"shn";s:15:"ഘോമാല";s:3:"bbj";}i:790;a:4:{s:18:"瑞士高地德文";s:5:"de-ch";s:12:"瑞士德文";s:3:"gsw";s:9:"瑞典文";s:2:"sv";s:12:"瑞士法文";s:5:"fr-ch";}i:640;a:5:{s:24:"高地德文(瑞士)";s:5:"de-ch";s:9:"에웨어";s:2:"ee";s:18:"에스페란토어";s:2:"eo";s:18:"에스토니아어";s:2:"et";s:9:"高棉文";s:2:"km";}i:470;a:13:{s:12:"ザザキ語";s:3:"diq";s:18:"দিবেহি";s:2:"dv";s:55:"দক্ষিণাঞ্চলীয় সামি";s:3:"sma";s:31:"দক্ষিন সোথো";s:2:"st";s:27:"ザーターフリジア語";s:3:"stq";s:12:"ザルマ語";s:3:"dje";s:21:"দুয়ালা";s:3:"dua";s:43:"দক্ষিণ এনডেবেলে";s:2:"nr";s:34:"দক্ষিন আলতাই";s:3:"alt";s:27:"দার্গওয়া";s:3:"dar";s:21:"দোগ্রীব";s:3:"dgr";s:15:"দোগরি";s:3:"doi";s:9:"ザザ語";s:3:"zza";}i:472;a:27:{s:52:"নিম্নতর সোর্বিয়ান";s:3:"dsb";s:36:"ジャマイカ・クレオール語";s:3:"jam";s:12:"ジャワ語";s:2:"jv";s:15:"নাউরু";s:2:"na";s:36:"নেয়াপোলিটান";s:3:"nap";s:55:"নরওয়েজিয়ান বোকমাল";s:2:"nb";s:40:"নিম্ন জার্মানি";s:3:"nds";s:18:"নেপালী";s:2:"ne";s:24:"নেওয়ারি";s:3:"new";s:21:"নিউয়ান";s:3:"niu";s:61:"নরওয়েজীয়ান নিনর্স্ক";s:2:"nn";s:30:"নরওয়েজীয়";s:2:"no";s:18:"নাভাজো";s:2:"nv";s:27:"নায়াঞ্জা";s:2:"ny";s:12:"歐利亞文";s:2:"or";s:27:"ジョラ=フォニィ語";s:3:"dyo";s:12:"নামা";s:3:"naq";s:18:"নুয়ার";s:3:"nus";s:39:"ন্যায়াঙ্কোলে";s:3:"nyn";s:12:"ジュラ語";s:3:"dyu";s:18:"নিয়াস";s:3:"nia";s:15:"নোগাই";s:3:"nog";s:42:"ন্যায়ামওয়েজি";s:3:"nym";s:18:"ন্যোরো";s:3:"nyo";s:12:"歐塞奇文";s:3:"osa";s:12:"셀쿠프어";s:3:"sel";s:40:"নায়াসা টোঙ্গা";s:3:"tog";}i:589;a:7:{s:19:"صُربی سفلی";s:3:"dsb";s:19:"صُربی علیا";s:3:"hsb";s:22:"صرب و کرواتی";s:2:"sh";s:12:"صومالی";s:2:"so";s:8:"صربی";s:2:"sr";s:26:"صربی (خط سرلیک)";s:5:"sr-ec";s:26:"صربی (خط لاتین)";s:5:"sr-el";}i:728;a:22:{s:40:"નિમ્ન સોર્બિયન";s:3:"dsb";s:49:"નોર્ધર્ન ફ્રિશિયન";s:3:"frr";s:15:"નાઉરૂ";s:2:"na";s:27:"નેપોલિટાન";s:3:"nap";s:49:"નોર્વેજીયન બોકમાલ";s:2:"nb";s:18:"નેપાળી";s:2:"ne";s:18:"નેવાડી";s:3:"new";s:18:"નિયુઆન";s:3:"niu";s:61:"નૉર્વેજીયન નાયનૉર્સ્ક";s:2:"nn";s:30:"નૉર્વેજીયન";s:2:"no";s:18:"નાવાજો";s:2:"nv";s:24:"ન્યાન્જા";s:2:"ny";s:21:"નગોમ્બા";s:3:"jgo";s:9:"નમા";s:3:"naq";s:12:"નુએર";s:3:"nus";s:24:"ન્યાનકોલ";s:3:"nyn";s:15:"નિયાસ";s:3:"nia";s:15:"નોગાઇ";s:3:"nog";s:27:"ન્યામવેઝી";s:3:"nym";s:18:"ન્યોરો";s:3:"nyo";s:18:"ન્ઝિમા";s:3:"nzi";s:37:"ન્યાસા ટોન્ગા";s:3:"tog";}i:344;a:43:{s:40:"निचला सॉर्बियन";s:3:"dsb";s:15:"ഐറിഷ്";s:2:"ga";s:14:"Հայերեն";s:2:"hy";s:33:"ഐസ്‌ലാൻഡിക്";s:2:"is";s:15:"नाउरू";s:2:"na";s:12:"नउरू";s:2:"na";s:24:"नीपोलिटन";s:3:"nap";s:27:"नेपोलिटान";s:3:"nap";s:52:"नॉर्वेजियाई बोकमाल";s:2:"nb";s:49:"नॉर्वेजियन बोकमाल";s:2:"nb";s:40:"नर्वेली बोकमाल";s:2:"nb";s:31:"निचला जर्मन";s:3:"nds";s:18:"नेपाली";s:2:"ne";s:18:"नेपाळी";s:2:"ne";s:28:"नेपाल भाषा";s:3:"new";s:21:"नेवाड़ी";s:3:"new";s:18:"नेवारी";s:3:"new";s:18:"नियुआन";s:3:"niu";s:64:"नॉर्वेजियाई नॉयनॉर्स्क";s:2:"nn";s:58:"नॉर्वेजियन न्योर्स्क";s:2:"nn";s:52:"नर्वेली नाइनोर्स्क";s:2:"nn";s:33:"नॉर्वेजियाई";s:2:"no";s:30:"नोर्वेजियन";s:2:"no";s:33:"नर्वेजियाली";s:2:"no";s:18:"नावाजो";s:2:"nv";s:21:"न्यानजा";s:2:"ny";s:24:"न्यान्जा";s:2:"ny";s:31:"नॉर्दन सामी";s:2:"se";s:18:"नगोंबा";s:3:"jgo";s:12:"नामा";s:3:"naq";s:9:"नको";s:3:"nqo";s:12:"नुएर";s:3:"nus";s:24:"न्यानकोल";s:3:"nyn";s:27:"न्यान्कोल";s:3:"nyn";s:16:"룰레 사미어";s:3:"smj";s:15:"नियास";s:3:"nia";s:15:"नोगाई";s:3:"nog";s:30:"न्यामवेज़ी";s:3:"nym";s:27:"न्यामवेझी";s:3:"nym";s:18:"न्योरो";s:3:"nyo";s:21:"न्ज़ीमा";s:3:"nzi";s:18:"न्झिमा";s:3:"nzi";s:37:"न्यासा टोन्गा";s:3:"tog";}i:302;a:5:{s:18:"低ソルビア語";s:3:"dsb";s:18:"低地ドイツ語";s:3:"nds";s:12:"低地德文";s:3:"nds";s:18:"低シレジア語";s:3:"sli";s:18:"穆斯林塔特文";s:3:"ttt";}i:250;a:32:{s:43:"ಲೋವರ್ ಸೋರ್ಬಿಯನ್";s:3:"dsb";s:24:"ಲೊಜ್ಬಾನ್";s:3:"jbo";s:24:"ಲ್ಯಾಟಿನ್";s:2:"la";s:30:"ಲಕ್ಸಂಬರ್ಗ್";s:2:"lb";s:27:"ಲೆಜ್ಘಿಯನ್";s:3:"lez";s:30:"ಲಿಂಬರ್ಗಿಶ್";s:2:"li";s:18:"ಲಿಂಗಾಲ";s:2:"ln";s:12:"ಲಾವೋ";s:2:"lo";s:12:"ಲೋಝಿ";s:3:"loz";s:33:"ಲಿಥುವೇನಿಯನ್";s:2:"lt";s:18:"ಲುಶಾಯ್";s:3:"lus";s:24:"ಲಟ್ವಿಯನ್";s:2:"lv";s:25:"ಲೋ ಜರ್ಮನ್";s:3:"nds";s:8:"údmúrt";s:3:"udm";s:8:"úígúr";s:2:"ug";s:11:"úkraínska";s:2:"uk";s:6:"úrdú";s:2:"ur";s:9:"úsbekska";s:2:"uz";s:15:"ಲಾಂಗಿ";s:3:"lag";s:12:"ಲಕೊಟ";s:3:"lkt";s:31:"ಲೂಬಾ-ಕಟಾಂಗಾ";s:2:"lu";s:22:"ಲುಬ-ಲುಲಾ";s:3:"lua";s:12:"ಲುವೋ";s:3:"luo";s:15:"ಲುಯಿಯ";s:3:"luy";s:25:"ಲೂಲ್ ಸಾಮಿ";s:3:"smj";s:80:"ಲ್ಯಾಟಿನ್ ಅಮೇರಿಕನ್ ಸ್ಪ್ಯಾನಿಶ್";s:6:"es-419";s:15:"ಲಹಂಡಾ";s:3:"lah";s:12:"ಲಂಬಾ";s:3:"lam";s:24:"ಲೂಯಿಸೆನೋ";s:3:"lui";s:15:"ಲುಂಡಾ";s:3:"lun";s:13:"úgarítíska";s:3:"uga";s:10:"úmbúndú";s:3:"umb";}i:83;a:112:{s:21:"ловер-сорби";s:3:"dsb";s:14:"лоджбан";s:3:"jbo";s:12:"ложбан";s:3:"jbo";s:9:"剛果文";s:2:"kg";s:18:"лацінская";s:2:"la";s:16:"латински";s:2:"la";s:10:"латын";s:2:"la";s:14:"латынча";s:2:"la";s:10:"латин";s:2:"la";s:14:"латинаг";s:2:"la";s:18:"латинский";s:2:"la";s:18:"латинська";s:2:"la";s:12:"ладино";s:3:"lad";s:12:"ладіно";s:3:"lad";s:26:"люксембургски";s:2:"lb";s:20:"люксембург";s:2:"lb";s:24:"люксембургча";s:2:"lb";s:24:"луксембуршки";s:2:"lb";s:28:"люксембургский";s:2:"lb";s:26:"люксембурзька";s:2:"lb";s:10:"лакку";s:3:"lbe";s:10:"лезги";s:3:"lez";s:18:"лезгински";s:3:"lez";s:12:"лекъаг";s:3:"lez";s:20:"лезгинский";s:3:"lez";s:20:"лезгінська";s:3:"lez";s:34:"лингва франка нова";s:3:"lfn";s:20:"лимбургски";s:2:"li";s:18:"лимбуршки";s:2:"li";s:22:"лимбургский";s:2:"li";s:26:"лімбургійська";s:2:"li";s:16:"лигурски";s:3:"lij";s:16:"ливонски";s:3:"liv";s:20:"ломбардски";s:3:"lmo";s:14:"лінгала";s:2:"ln";s:14:"лингала";s:2:"ln";s:18:"лингалача";s:2:"ln";s:14:"лаоская";s:2:"lo";s:12:"лаоски";s:2:"lo";s:17:"лаос тілі";s:2:"lo";s:10:"лаочо";s:2:"lo";s:12:"лаошки";s:2:"lo";s:8:"лаос";s:2:"lo";s:16:"лаосский";s:2:"lo";s:14:"лаоська";s:2:"lo";s:8:"лози";s:3:"loz";s:8:"лозі";s:3:"loz";s:18:"літоўская";s:2:"lt";s:20:"летувіская";s:2:"lt";s:16:"литовски";s:2:"lt";s:19:"литва тілі";s:2:"lt";s:14:"литовчо";s:2:"lt";s:18:"литвански";s:2:"lt";s:10:"литва";s:2:"lt";s:18:"литовский";s:2:"lt";s:18:"литовська";s:2:"lt";s:18:"латгалски";s:3:"ltg";s:10:"лушаи";s:3:"lus";s:10:"лушай";s:3:"lus";s:10:"лушей";s:3:"lus";s:18:"латышская";s:2:"lv";s:16:"латыская";s:2:"lv";s:18:"латвийски";s:2:"lv";s:19:"латыш тілі";s:2:"lv";s:14:"латышча";s:2:"lv";s:16:"латвиски";s:2:"lv";s:10:"латви";s:2:"lv";s:18:"латышский";s:2:"lv";s:16:"летонски";s:2:"lv";s:20:"латвійська";s:2:"lv";s:10:"ласки";s:3:"lzz";s:37:"литературен арапски";s:6:"ar-001";s:10:"ланги";s:3:"lag";s:19:"ланги тілі";s:3:"lag";s:14:"лангиче";s:3:"lag";s:10:"лангі";s:3:"lag";s:12:"лакота";s:3:"lkt";s:16:"лакотача";s:3:"lkt";s:16:"лакотски";s:3:"lkt";s:23:"луба катанга";s:2:"lu";s:23:"луба-катанга";s:2:"lu";s:27:"луба-катангача";s:2:"lu";s:19:"луба-лулуа";s:3:"lua";s:6:"луо";s:3:"luo";s:10:"луочо";s:3:"luo";s:39:"луо (Кения и Танзания)";s:3:"luo";s:6:"луя";s:3:"luy";s:10:"лухиа";s:3:"luy";s:14:"лухияча";s:3:"luy";s:8:"луја";s:3:"luy";s:8:"луяа";s:3:"luy";s:10:"лухья";s:3:"luy";s:10:"лујиа";s:3:"luy";s:8:"луйя";s:3:"luy";s:23:"луле-саамски";s:3:"smj";s:17:"луле саам";s:3:"smj";s:23:"лөлө саамиче";s:3:"smj";s:29:"лулски лапонски";s:3:"smj";s:17:"люле сами";s:3:"smj";s:25:"луле-саамский";s:3:"smj";s:17:"луле сами";s:3:"smj";s:53:"латын американдық испан тілі";s:6:"es-419";s:42:"латин америкийн испани";s:6:"es-419";s:48:"латинаг америкаг англисаг";s:6:"es-419";s:55:"латиноамериканский испанский";s:6:"es-419";s:12:"лахнда";s:3:"lah";s:10:"ланда";s:3:"lah";s:10:"ламба";s:3:"lam";s:16:"луисеньо";s:3:"lui";s:18:"лујсењски";s:3:"lui";s:16:"луїсеньо";s:3:"lui";s:10:"лунда";s:3:"lun";}i:856;a:20:{s:40:"ନିଚଳା ସର୍ବିଆନ୍";s:3:"dsb";s:12:"칸나다어";s:2:"kn";s:12:"칸누리어";s:2:"kr";s:15:"ନାଉରୁ";s:2:"na";s:30:"ନୀପୋଲିଟାନ୍";s:3:"nap";s:46:"ନରୱେଜିଆନ୍ ବୋକମଲ୍";s:2:"nb";s:18:"ନେପାଳୀ";s:2:"ne";s:18:"ନେୱାରୀ";s:3:"new";s:21:"ନିୟୁଆନ୍";s:3:"niu";s:55:"ନରୱେଜିଆନ୍ ନିୟୋର୍ସ୍କ";s:2:"nn";s:27:"ନରୱେଜିଆନ୍";s:2:"no";s:18:"ନାଭାଜୋ";s:2:"nv";s:21:"ନିୟାଞ୍ଜ";s:2:"ny";s:27:"ନ୍ୟାନକୋଲ୍";s:3:"nyn";s:18:"ନୀୟାସ୍";s:3:"nia";s:15:"ନୋଗାଇ";s:3:"nog";s:27:"ନ୍ୟାମୱେଜୀ";s:3:"nym";s:18:"ନ୍ୟାରୋ";s:3:"nyo";s:37:"ନ୍ୟାସା ଟୋଙ୍ଗୋ";s:3:"tog";s:15:"奈恩加圖文";s:3:"yrl";}i:994;a:26:{s:43:"லோயர் சோர்பியன்";s:3:"dsb";s:21:"லோஜ்பன்";s:3:"jbo";s:21:"லத்தின்";s:2:"la";s:15:"லடினோ";s:3:"lad";s:42:"லக்ஸம்போர்கிஷ்";s:2:"lb";s:27:"லெஜ்ஜியன்";s:3:"lez";s:33:"லிம்பர்கிஷ்";s:2:"li";s:24:"லிங்காலா";s:2:"ln";s:12:"லாவோ";s:2:"lo";s:12:"லோசி";s:3:"loz";s:33:"லிதுவேனியன்";s:2:"lt";s:15:"லுஷய்";s:3:"lus";s:27:"லாட்வியன்";s:2:"lv";s:28:"லோ ஜெர்மன்";s:3:"nds";s:15:"லங்கி";s:3:"lag";s:15:"லகோடா";s:3:"lkt";s:34:"லுபா-கடாங்கா";s:2:"lu";s:31:"லுபா-லுலுலா";s:3:"lua";s:12:"லுயோ";s:3:"luo";s:18:"லுயியா";s:3:"luy";s:22:"லுலே சமி";s:3:"smj";s:71:"லத்தின் அமெரிக்க ஸ்பானிஷ்";s:6:"es-419";s:18:"லஹன்டா";s:3:"lah";s:15:"லம்பா";s:3:"lam";s:24:"லுய்சேனோ";s:3:"lui";s:18:"லூன்டா";s:3:"lun";}i:595;a:35:{s:42:"ซอร์บส์ตอนล่าง";s:3:"dsb";s:15:"ซองคา";s:2:"dz";s:36:"ซอร์บส์ตอนบน";s:3:"hsb";s:12:"ซาฮา";s:3:"sah";s:24:"ซาร์เดญา";s:2:"sc";s:18:"ซิซิลี";s:3:"scn";s:51:"ซาร์ดิเนียซาสซารี";s:3:"sdc";s:27:"ซามิเหนือ";s:2:"se";s:33:"ซาโมจิเตียน";s:3:"sgs";s:15:"ซามัว";s:2:"sm";s:21:"ซามิใต้";s:3:"sma";s:24:"ซูรินาเม";s:3:"srn";s:15:"ซุนดา";s:2:"su";s:27:"ซิิตซองกา";s:2:"ts";s:12:"ซูลู";s:2:"zu";s:18:"ซาร์มา";s:3:"dje";s:24:"ซามิลูเล";s:3:"smj";s:30:"ซามิอีนารี";s:3:"smn";s:30:"ซามิสคอลต์";s:3:"sms";s:18:"澳大利亚英文";s:5:"en-au";s:18:"ซิดาโม";s:3:"sid";s:21:"ซันดาเว";s:3:"sad";s:15:"ซาซัก";s:3:"sas";s:18:"ซอกดีน";s:3:"sog";s:18:"ซูคูมา";s:3:"suk";s:12:"ซูซู";s:3:"sus";s:15:"ซูเมอ";s:3:"sux";s:51:"ซีเรียแบบดั้งเดิม";s:3:"syc";s:18:"ซีเรีย";s:3:"syr";s:24:"ซิมชีแอน";s:3:"tsi";s:21:"ซาโปเตก";s:3:"zap";s:12:"ซูนิ";s:3:"zun";s:12:"ซาซา";s:3:"zza";s:12:"ซาโฮ";s:3:"ssy";s:24:"ซาโคเนีย";s:3:"tsd";}i:584;a:1:{s:23:"ذیلی سربیائی";s:3:"dsb";}i:979;a:2:{s:12:"下索布文";s:3:"dsb";s:18:"下西利西亞文";s:3:"sli";}i:13;a:33:{s:21:"中央ドゥスン語";s:3:"dtp";s:15:"中部杜順文";s:3:"dtp";s:12:"納瓦霍文";s:2:"nv";s:39:"中央アトラス・タマジクト語";s:3:"tzm";s:6:"中文";s:2:"zh";s:9:"中国語";s:2:"zh";s:27:"中文(中国大陆)‎";s:5:"zh-cn";s:21:"中国語(中国)";s:5:"zh-cn";s:21:"中文(简体)‎";s:7:"zh-hans";s:21:"中文(繁體)‎";s:7:"zh-hant";s:21:"中文(香港)‎";s:5:"zh-hk";s:21:"中国語(香港)";s:5:"zh-hk";s:21:"中文(澳門)‎";s:5:"zh-mo";s:27:"中文(马来西亚)‎";s:5:"zh-my";s:24:"中文(新加坡)‎";s:5:"zh-sg";s:33:"中国語(シンガポール)";s:5:"zh-sg";s:21:"中文(台灣)‎";s:5:"zh-tw";s:21:"中国語(台湾)";s:5:"zh-tw";s:9:"納馬文";s:3:"naq";s:21:"中世オランダ語";s:3:"dum";s:15:"中古荷兰文";s:3:"dum";s:15:"中古荷蘭文";s:3:"dum";s:9:"中英語";s:3:"enm";s:12:"中古英文";s:3:"enm";s:21:"中期フランス語";s:3:"frm";s:12:"中古法文";s:3:"frm";s:18:"中高ドイツ語";s:3:"gmh";s:18:"中古高地德文";s:3:"gmh";s:27:"中期アイルランド語";s:3:"mga";s:18:"中古爱尔兰文";s:3:"mga";s:18:"中古愛爾蘭文";s:3:"mga";s:36:"中央アラスカ・ユピック語";s:3:"esu";s:15:"中尤皮克文";s:3:"esu";}i:850;a:1:{s:9:"ዲቬህ";s:2:"dv";}i:921;a:29:{s:30:"དི་བེ་ཧི་ཁ";s:2:"dv";s:42:"དབིན་ཇིའི་སྐད།";s:2:"en";s:66:"དབིན་ཇིའི་སྐད། (ཁེ་ན་ཌ་)";s:5:"en-ca";s:99:"དབིན་ཇིའི་སྐད། (དབིན་ཇིའི་རྒྱལ་ཁབ་)";s:5:"en-gb";s:16:"Ισπανικά";s:2:"es";s:18:"Ιρλανδικά";s:2:"ga";s:26:"Ιντερλίνγκουα";s:2:"ia";s:22:"Ινδονησιακά";s:2:"id";s:26:"Ιντερλίνγκουε";s:2:"ie";s:16:"Ινουπιάκ";s:2:"ik";s:10:"Ιλόκο";s:3:"ilo";s:14:"Ινγκούς";s:3:"inh";s:18:"Ισλανδικά";s:2:"is";s:45:"དབྱི་ཏ་་ལའི་མི།";s:2:"it";s:14:"Ιταλικά";s:2:"it";s:22:"Ινουκτιτούτ";s:2:"iu";s:16:"Ιαπωνικά";s:2:"ja";s:20:"Ιαβανεζικά";s:2:"jv";s:19:"Ινάρι Σάμι";s:3:"smn";s:60:"དབིན་ཇིའི་སྐད། (ཨ་རི་)";s:5:"en-us";s:52:"Ισπανικά Λατινικής Αμερικής";s:6:"es-419";s:31:"Ισπανικά Ευρώπης";s:5:"es-es";s:33:"Ιδιωματικά Σινούκ";s:3:"chn";s:24:"ད་ཀོ་ཏ་ཁ";s:3:"dak";s:10:"Ιμπάν";s:3:"iba";s:31:"Ιουδαϊκά-Περσικά";s:3:"jpr";s:31:"Ιουδαϊκά-Αραβικά";s:3:"jrb";s:31:"Ισπανικά Μεξικού";s:5:"es-mx";s:16:"Ιμπίμπιο";s:3:"ibb";}i:925;a:49:{s:14:"Ντιβέχι";s:2:"dv";s:18:"Ντζόνγκχα";s:2:"dz";s:24:"ཕི་ནིཤ་ཁ";s:2:"fi";s:33:"ཕི་ཇི་ཡཱན་ཁ";s:2:"fj";s:33:"ཕཱ་རོ་ཨིས་ཁ";s:2:"fo";s:18:"ཕྲནཅ་ཁ";s:2:"fr";s:14:"Ναούρου";s:2:"na";s:24:"Ναπολιτανικά";s:3:"nap";s:33:"Νορβηγικά Μποκμάλ";s:2:"nb";s:12:"Νεπάλι";s:2:"ne";s:16:"Νεγουάρι";s:3:"new";s:14:"Ντόνγκα";s:2:"ng";s:14:"Νιούεαν";s:3:"niu";s:33:"Νορβηγικά Νινόρσκ";s:2:"nn";s:18:"Νορβηγικά";s:2:"no";s:12:"Νάβαχο";s:2:"nv";s:14:"Νιάντζα";s:2:"ny";s:30:"ཕི་ཐོ་ཡའི།";s:2:"pt";s:19:"Νότια Σάμι";s:3:"sma";s:19:"Νότια Σόθο";s:2:"st";s:15:"ጽዋናዊኛ";s:2:"tn";s:6:"粵語";s:6:"zh-yue";s:14:"Ντουάλα";s:3:"dua";s:39:"ཕི་ལི་པི་ནོ་ཁ";s:3:"fil";s:14:"Νγκόμπα";s:3:"jgo";s:8:"Νάμα";s:3:"naq";s:27:"Ντεμπέλε Βορρά";s:2:"nd";s:33:"ཕྷེལེ་མིཤ་ཁ";s:5:"nl-be";s:9:"Ν’Κο";s:3:"nqo";s:27:"Ντεμπέλε Νότου";s:2:"nr";s:10:"Νουέρ";s:3:"nus";s:16:"Νιανκόλε";s:3:"nyn";s:27:"Νότια Αλαταϊκά";s:3:"alt";s:14:"Ντακότα";s:3:"dak";s:18:"Ντάργκουα";s:3:"dar";s:20:"Ντέλαγουερ";s:3:"del";s:18:"Ντόγκριμπ";s:3:"dgr";s:12:"Ντίνκα";s:3:"din";s:14:"Ντόγκρι";s:3:"doi";s:18:"Ντογιούλα";s:3:"dyu";s:16:"Νταζάγκα";s:3:"dzg";s:8:"Νίας";s:3:"nia";s:12:"Νογκάι";s:3:"nog";s:20:"Νιαμγουέζι";s:3:"nym";s:10:"Νιόρο";s:3:"nyo";s:10:"Νζίμα";s:3:"nzi";s:16:"Νγκαμπέι";s:3:"sba";s:23:"Νιάσα Τόνγκα";s:3:"tog";s:20:"Νγκιεμπούν";s:3:"nnh";}i:342;a:20:{s:18:"दिवेही";s:2:"dv";s:33:"എസ്‌പരാന്റോ";s:2:"eo";s:33:"എസ്റ്റോണിയൻ";s:2:"et";s:31:"दक्षिण सामी";s:3:"sma";s:43:"दक्षिणात्य सामी";s:3:"sma";s:34:"दक्षिणी सामी";s:3:"sma";s:15:"दुआला";s:3:"dua";s:18:"दुवाला";s:3:"dua";s:12:"എംബു";s:3:"ebu";s:15:"എഫിക്";s:3:"efi";s:34:"दक्षिण देबेल";s:2:"nr";s:49:"दक्षिणात्य देबेली";s:2:"nr";s:40:"दक्षिणी अल्ताई";s:3:"alt";s:49:"दक्षिणात्य अल्ताई";s:3:"alt";s:18:"दाकोता";s:3:"dak";s:21:"दार्गवा";s:3:"dar";s:18:"दिन्का";s:3:"din";s:21:"എകാജുക്";s:3:"eka";s:27:"എലാമൈറ്റ്";s:3:"elx";s:18:"എവോൻഡോ";s:3:"ewo";}i:238;a:6:{s:18:"ದಿವೆಹಿ";s:2:"dv";s:31:"ದಕ್ಷಿಣ ಸಾಮಿ";s:3:"sma";s:31:"ದಕ್ಷಿಣ ಸೋಥೋ";s:2:"st";s:37:"ದಕ್ಷಿಣ ದೆಬೆಲೆ";s:2:"nr";s:40:"ದಕ್ಷಿಣ ಅಲ್ಟಾಯ್";s:3:"alt";s:21:"ದರ್ಗ್ವಾ";s:3:"dar";}i:366;a:6:{s:18:"ദിവെഹി";s:2:"dv";s:15:"ദ്വാല";s:3:"dua";s:40:"ദക്ഷിണ നെഡിബിൾ";s:2:"nr";s:18:"ദലവാരെ";s:3:"del";s:12:"ദിൻക";s:3:"din";s:15:"ദ്വൈല";s:3:"dyu";}i:853;a:2:{s:18:"ድዞንግኻኛ";s:2:"dz";s:9:"ଥାଇ";s:2:"th";}i:938;a:10:{s:18:"རྫོང་ཁ";s:2:"dz";s:9:"ፊኒሽ";s:2:"fi";s:9:"ፊጂኛ";s:2:"fj";s:33:"རི་པིན་སྐད་";s:2:"ja";s:33:"རོ་མེ་ནིཤ་ཁ";s:2:"rm";s:42:"རོ་མེ་ནི་ཡཱན་ཁ";s:2:"ro";s:24:"རྒྱ་སྐད་";s:2:"zh";s:24:"རྒྱ་མི་ཁ";s:2:"zh";s:48:"རྒྱ་མི་ཁ་འཇམ་སངམ";s:7:"zh-hans";s:15:"ፊሊፒንኛ";s:3:"fil";}i:403;a:2:{s:14:"ջոնգքհա";s:2:"dz";s:19:"ջոլա-ֆոնյի";s:3:"dyo";}i:688;a:8:{s:14:"ژونگکھا";s:2:"dz";s:10:"ژاپنی";s:2:"ja";s:12:"ژونٛگا";s:2:"ts";s:8:"ژوسا";s:2:"xh";s:15:"수쿠마족어";s:3:"suk";s:9:"수수어";s:3:"sus";s:12:"수메르어";s:3:"sux";s:18:"ژھِمشِیان";s:3:"tsi";}i:981;a:1:{s:9:"不丹文";s:2:"dz";}i:770;a:8:{s:6:"ኢዊ";s:2:"ee";s:21:"ኢስቶኒያንኛ";s:2:"et";s:21:"ኢንቴርሊንጓ";s:2:"ia";s:22:"ኢንቴር ቋንቋ";s:2:"ia";s:18:"ኢንዶኔዥኛ";s:2:"id";s:12:"ኢግቦኛ";s:2:"ig";s:9:"ኢቦኛ";s:3:"ebu";s:16:"ኢናሪ ሳሚ";s:3:"smn";}i:312;a:27:{s:9:"ईवे";s:2:"ee";s:27:"ინგლისური";s:2:"en";s:30:"ირლანდიური";s:2:"ga";s:33:"ईन्टरलिंगुआ";s:2:"ia";s:45:"ინტერლინგუალური";s:2:"ia";s:33:"ინდონეზიური";s:2:"id";s:33:"ईन्टरलिंगुइ";s:2:"ie";s:30:"ინტერლინგი";s:2:"ie";s:15:"ईग्बो";s:2:"ig";s:12:"იგბო";s:2:"ig";s:24:"ინგუშური";s:3:"inh";s:9:"იდო";s:2:"io";s:30:"ისლანდიური";s:2:"is";s:24:"იტალიური";s:2:"it";s:30:"ინუკტიტუტი";s:2:"iu";s:24:"იაპონური";s:2:"ja";s:18:"იავური";s:2:"jv";s:12:"조지아어";s:2:"ka";s:24:"იაკუტური";s:3:"sah";s:15:"იდიში";s:2:"yi";s:18:"იორუბა";s:2:"yo";s:37:"ინარი-საამური";s:3:"smn";s:15:"იბანი";s:3:"iba";s:40:"იუდეო-სპარსული";s:3:"jpr";s:37:"იუდეო-არაბული";s:3:"jrb";s:25:"조로아스터 다리어";s:3:"gbz";s:18:"იბიბიო";s:3:"ibb";}i:456;a:12:{s:12:"エウェ語";s:2:"ee";s:15:"エミリア語";s:3:"egl";s:33:"エミリア・ロマーニャ語";s:3:"eml";s:21:"エスペラント語";s:2:"eo";s:18:"エストニア語";s:2:"et";s:30:"エストレマドゥーラ語";s:3:"ext";s:15:"エルジャ語";s:3:"myv";s:12:"エンブ語";s:3:"ebu";s:15:"エフィク語";s:3:"efi";s:18:"エカジュク語";s:3:"eka";s:12:"エラム語";s:3:"elx";s:18:"エウォンド語";s:3:"ewo";}i:308;a:11:{s:9:"ევე";s:2:"ee";s:27:"ესპერანტო";s:2:"eo";s:24:"ესპანური";s:2:"es";s:24:"ესტონური";s:2:"et";s:21:"ებრაული";s:2:"he";s:15:"ერზია";s:3:"myv";s:12:"ემბუ";s:3:"ebu";s:15:"ეფიკი";s:3:"efi";s:49:"ევროპული ესპანური";s:5:"es-es";s:61:"ევროპული პორტუგალიური";s:5:"pt-pt";s:18:"ევონდო";s:3:"ewo";}i:208;a:5:{s:9:"ಈವ್";s:2:"ee";s:12:"나우루어";s:2:"na";s:12:"나폴리어";s:3:"nap";s:12:"나바호어";s:2:"nv";s:9:"나마어";s:3:"naq";}i:319;a:14:{s:9:"एवे";s:2:"ee";s:30:"एस्पेरेंतो";s:2:"eo";s:30:"एस्परान्टो";s:2:"eo";s:33:"एस्पेरान्तो";s:2:"eo";s:30:"एस्टोनियाई";s:2:"et";s:21:"एर्ज़या";s:3:"myv";s:21:"एर्झ्या";s:3:"myv";s:15:"एम्बु";s:3:"ebu";s:15:"एम्बू";s:3:"ebu";s:12:"एफिक";s:3:"efi";s:28:"एकविध भाषा";s:3:"mul";s:15:"एन्को";s:3:"nqo";s:18:"एकाजुक";s:3:"eka";s:21:"एलामाइट";s:3:"elx";}i:311;a:39:{s:9:"इवि";s:2:"ee";s:21:"इंग्रजी";s:2:"en";s:27:"इस्टोनियन";s:2:"et";s:33:"इस्टोनियाली";s:2:"et";s:18:"蘇格蘭蓋爾文";s:2:"gd";s:33:"इंटरलिंग्वा";s:2:"ia";s:39:"इन्टर्लिङ्गुआ";s:2:"ia";s:33:"इंडोनेशियाई";s:2:"id";s:30:"इंडोनेशियन";s:2:"id";s:39:"इन्डोनेसियाली";s:2:"id";s:27:"इन्टरलिंग";s:2:"ie";s:15:"इग्बो";s:2:"ig";s:27:"इनुपियाक्";s:2:"ik";s:24:"इनूपियाक";s:2:"ik";s:15:"इलोको";s:3:"ilo";s:15:"इंगुश";s:3:"inh";s:9:"इडौ";s:2:"io";s:18:"इतालवी";s:2:"it";s:21:"इटालियन";s:2:"it";s:27:"इनूकीटूत्";s:2:"iu";s:27:"इनुकिटुट्";s:2:"iu";s:12:"蘇格蘭文";s:3:"sco";s:18:"蘇拉南東墎文";s:3:"srn";s:24:"თიგრინია";s:2:"ti";s:30:"თურქმენული";s:2:"tk";s:21:"თურქული";s:2:"tr";s:21:"თათრული";s:2:"tt";s:9:"თუი";s:2:"tw";s:10:"ķīniešu";s:2:"zh";s:25:"ķīniešu vienkāršotā";s:7:"zh-hans";s:25:"ķīniešu tradicionālā";s:7:"zh-hant";s:89:"თანამედროვე სტანდარტული არაბული";s:6:"ar-001";s:28:"इनारी सामी";s:3:"smn";s:15:"თიგრე";s:3:"tig";s:21:"इवोन्डो";s:3:"ewo";s:12:"इबान";s:3:"iba";s:12:"蘇庫馬文";s:3:"suk";s:9:"蘇蘇文";s:3:"sus";s:9:"蘇美文";s:3:"sux";}i:823;a:17:{s:9:"ଇୱେ";s:2:"ee";s:18:"ଇଂରାଜୀ";s:2:"en";s:15:"ଇରିସ୍";s:2:"ga";s:39:"ଇର୍ଣ୍ଟଲିଙ୍ଗୁଆ";s:2:"ia";s:36:"ଇଣ୍ଡୋନେସିଆନ୍";s:2:"id";s:42:"ଇର୍ଣ୍ଟରଲିଙ୍ଗୁଇ";s:2:"ie";s:15:"ଇଗ୍ବୋ";s:2:"ig";s:27:"ଇନୁପିୟାକ୍";s:2:"ik";s:15:"ଇଲୋକୋ";s:3:"ilo";s:24:"ଇଁଙ୍ଗୁଶ୍";s:3:"inh";s:9:"ଇଡୋ";s:2:"io";s:24:"ଇଟାଲିଆନ୍";s:2:"it";s:24:"ଇନକୀଟୁତ୍";s:2:"iu";s:12:"大溪地文";s:2:"ty";s:28:"ଇନାରୀ ସାମି";s:3:"smn";s:21:"ଇୱୋଣ୍ଡୋ";s:3:"ewo";s:15:"ଇବାନ୍";s:3:"iba";}i:568;a:4:{s:9:"ਈਵਈ";s:2:"ee";s:15:"말라가시어";s:2:"mg";s:15:"말라얄람어";s:2:"ml";s:12:"말레이어";s:2:"ms";}i:952;a:3:{s:9:"ஈவ்";s:2:"ee";s:21:"ஈகாஜுக்";s:3:"eka";s:15:"틀링깃족어";s:3:"tli";}i:877;a:3:{s:12:"ግሪክኛ";s:2:"el";s:12:"ግሪከኛ";s:2:"el";s:12:"ግዕዝኛ";s:3:"gez";}i:455;a:17:{s:15:"গ্রিক";s:2:"el";s:18:"গাগাউজ";s:3:"gag";s:30:"গ্যালিশিয়";s:2:"gl";s:27:"গুয়ারানি";s:2:"gn";s:12:"গথিক";s:3:"got";s:21:"গুজরাটি";s:2:"gu";s:18:"গান্ডা";s:2:"lg";s:6:"গা";s:3:"gaa";s:12:"গুসী";s:3:"guz";s:18:"গোম্বা";s:3:"jgo";s:9:"গীজ";s:3:"gez";s:15:"গায়ো";s:3:"gay";s:30:"গিলবার্টিজ";s:3:"gil";s:18:"গোন্ডি";s:3:"gon";s:30:"গোরোন্তালো";s:3:"gor";s:18:"গ্রেবো";s:3:"grb";s:24:"গওইচ্’ইন";s:3:"gwi";}i:906;a:9:{s:18:"གྲིཀ་ཁ";s:2:"el";s:42:"གལ་ཨིས་ཨི་ཡན་ཁ";s:2:"gl";s:33:"གུ་ཝ་ར་ནི་ཁ";s:2:"gn";s:62:"གིརིཀ, སྔ་དུས་ཀྱི (༡༤༥༣)";s:3:"grc";s:39:"གུཇ་རཱཏི་སྐད།";s:2:"gu";s:33:"གུ་ཇ་ར་ཏི་ཁ";s:2:"gu";s:12:"Ίγκμπο";s:2:"ig";s:8:"Ίντο";s:2:"io";s:21:"གཱ་སྐད།";s:3:"gaa";}i:740;a:25:{s:12:"یونانی";s:2:"el";s:14:"یوٗنٲنی";s:2:"el";s:12:"یوناني";s:2:"el";s:19:"یونانی کهن";s:3:"grc";s:17:"یی سیچوان";s:2:"ii";s:12:"یاقوتی";s:3:"sah";s:10:"یاکُت";s:3:"sah";s:12:"یوئگہر";s:2:"ug";s:22:"یوٗکرینیٲیی";s:2:"uk";s:20:"یوکرینیائی";s:2:"uk";s:6:"یدی";s:2:"yi";s:10:"یِدِش";s:2:"yi";s:6:"یدش";s:2:"yi";s:16:"یوروبایی";s:2:"yo";s:12:"یورُبا";s:2:"yo";s:12:"یوروبا";s:2:"yo";s:36:"یوٗ ایٚس اَنٛگریٖزۍ";s:5:"en-us";s:25:"یورپی ہسپانوی";s:5:"es-es";s:25:"یورپی پرتگالی";s:5:"pt-pt";s:18:"یُمبُندوٗ";s:3:"umb";s:12:"یائویی";s:3:"yao";s:6:"یاو";s:3:"yao";s:8:"یاپی";s:3:"yap";s:12:"یَپیٖز";s:3:"yap";s:21:"ییدیشی شرقی";s:3:"ydd";}i:351;a:48:{s:18:"यूनानी";s:2:"el";s:24:"ഗ്രീക്ക്";s:2:"el";s:16:"şimal fris dili";s:3:"frr";s:18:"ഗാഗൂസ്";s:3:"gag";s:21:"ഗലീഷ്യൻ";s:2:"gl";s:18:"ഗ്വരനീ";s:2:"gn";s:24:"ഗോഥിക്ക്";s:3:"got";s:27:"ഗുജറാത്തി";s:2:"gu";s:6:"ꆇꉙ";s:2:"ii";s:15:"ഗാണ്ട";s:2:"lg";s:16:"şimal soto dili";s:3:"nso";s:15:"याकूत";s:3:"sah";s:12:"şimali sami";s:2:"se";s:5:"şona";s:2:"sn";s:33:"यूक्रेनियाई";s:2:"uk";s:30:"युक्रेनियन";s:2:"uk";s:24:"युक्रेनी";s:2:"uk";s:18:"येहुदी";s:2:"yi";s:21:"यिद्दिश";s:2:"yi";s:21:"यिद्दिस";s:2:"yi";s:18:"योरूबा";s:2:"yo";s:18:"योरुबा";s:2:"yo";s:18:"योरूवा";s:2:"yo";s:6:"ഗാ";s:3:"gaa";s:12:"ഗുസീ";s:3:"guz";s:15:"ഗോമ്പ";s:3:"jgo";s:8:"şambala";s:3:"ksb";s:15:"şimali ndebele";s:2:"nd";s:40:"यूरोपीय स्पेनी";s:5:"es-es";s:46:"युरोपियन स्पॅनिश";s:5:"es-es";s:46:"युरोपेली स्पेनिस";s:5:"es-es";s:12:"ഗീസ്";s:3:"gez";s:49:"यूरोपीय पुर्तगाली";s:5:"pt-pt";s:52:"युरोपियन पोर्तुगीज";s:5:"pt-pt";s:9:"ഗയൊ";s:3:"gay";s:12:"ഗബ്യ";s:3:"gba";s:21:"ഗിൽബർസേ";s:3:"gil";s:18:"ഗോണ്ഡി";s:3:"gon";s:27:"ഗൊറോൻറാലോ";s:3:"gor";s:15:"ഗ്രബൊ";s:3:"grb";s:31:"ഗ്വിച്ച് ഇൻ";s:3:"gwi";s:18:"ഗംബായ്";s:3:"sba";s:9:"şan dili";s:3:"shn";s:27:"युगैरिटिक";s:3:"uga";s:27:"युगॅरिटिक";s:3:"uga";s:9:"याओ";s:3:"yao";s:15:"यापीस";s:3:"yap";s:18:"ഗീംബൂൺ";s:3:"nnh";}i:392;a:11:{s:16:"հունարեն";s:2:"el";s:12:"հաուսա";s:2:"ha";s:20:"հավայիերեն";s:3:"haw";s:10:"հինդի";s:2:"hi";s:16:"հաիթերեն";s:2:"ht";s:22:"հունգարերեն";s:2:"hu";s:14:"հայերեն";s:2:"hy";s:20:"հոլանդերեն";s:2:"nl";s:31:"հյուսիսային սամի";s:2:"se";s:27:"հարավային սամի";s:3:"sma";s:37:"հյուսիսային նդեբելե";s:2:"nd";}i:462;a:3:{s:15:"ギリシャ語";s:2:"el";s:12:"ギラキ語";s:3:"glk";s:33:"ආර්මේනියානු";s:2:"hy";}i:223;a:17:{s:18:"ಗ್ರೀಕ್";s:2:"el";s:15:"ಗಗೌಜ್";s:3:"gag";s:33:"ಗ್ಯಾಲಿಶಿಯನ್";s:2:"gl";s:18:"ಗೌರಾನಿ";s:2:"gn";s:18:"ಗೋಥಿಕ್";s:3:"got";s:21:"ಗುಜರಾತಿ";s:2:"gu";s:15:"ಗಾಂಡಾ";s:2:"lg";s:3:"ಗ";s:3:"gaa";s:12:"ಗುಸಿ";s:3:"guz";s:12:"ಗೀಝ್";s:3:"gez";s:12:"ಗಾಯೋ";s:3:"gay";s:18:"ಗ್ಬಾಯಾ";s:3:"gba";s:33:"ಗಿಲ್ಬರ್ಟೀಸ್";s:3:"gil";s:15:"ಗೊಂಡಿ";s:3:"gon";s:27:"ಗೊರೊಂಟಾಲೋ";s:3:"gor";s:18:"ಗ್ರೇಬೋ";s:3:"grb";s:30:"ಗ್ವಿಚ್‌ಇನ್";s:3:"gwi";}i:536;a:5:{s:12:"그리스어";s:2:"el";s:20:"그리스어, 고대";s:3:"grc";s:15:"그린란드어";s:2:"kl";s:12:"그바야어";s:3:"gba";s:12:"그위친어";s:3:"gwi";}i:839;a:14:{s:18:"ଗ୍ରୀକ୍";s:2:"el";s:24:"ଗାଲସିଆନ୍";s:2:"gl";s:21:"ଗୁଆରାନୀ";s:2:"gn";s:18:"ଗୋଥିକ୍";s:3:"got";s:24:"ଗୁଜୁରାଟୀ";s:2:"gu";s:39:"ଗ୍ରୀନଲାଣ୍ଡିକ୍";s:2:"kl";s:15:"ଗନ୍ଦା";s:2:"lg";s:6:"ଗା";s:3:"gaa";s:12:"ଗୀଜ୍";s:3:"gez";s:12:"ଗାୟୋ";s:3:"gay";s:15:"ଗବାୟା";s:3:"gba";s:18:"ଗୋଣ୍ଡି";s:3:"gon";s:30:"ଗୋରୋଣ୍ଟାଲୋ";s:3:"gor";s:18:"ଗ୍ରେବୋ";s:3:"grb";}i:43;a:19:{s:18:"Гириэктии";s:2:"el";s:18:"Галисианӣ";s:2:"gl";s:12:"Горанӣ";s:2:"gn";s:12:"Готски";s:3:"got";s:16:"Гуҷаратӣ";s:2:"gu";s:16:"ГӀалгӀай";s:3:"inh";s:22:"Гурусууннуу";s:2:"ka";s:10:"Гурҷӣ";s:2:"ka";s:30:"លុចហ្សំបួរ";s:2:"lb";s:21:"លីនកាឡា";s:2:"ln";s:27:"លីទុយអានី";s:2:"lt";s:4:"Га";s:3:"gaa";s:8:"Гајо";s:3:"gay";s:10:"Гбаја";s:3:"gba";s:20:"Гилбертшки";s:3:"gil";s:10:"Гонди";s:3:"gon";s:18:"Горонтало";s:3:"gor";s:10:"Гребо";s:3:"grb";s:15:"Гвич’ин";s:3:"gwi";}i:484;a:12:{s:18:"ග්‍රීක";s:2:"el";s:15:"ගගාස්";s:3:"gag";s:30:"ගැලීසියානු";s:2:"gl";s:21:"ගුවාරනි";s:2:"gn";s:21:"ගුජරාටි";s:2:"gu";s:15:"ගන්ඩා";s:2:"lg";s:12:"ツワナ語";s:2:"tn";s:15:"ツォンガ語";s:2:"ts";s:12:"ගුසී";s:3:"guz";s:12:"ツバル語";s:3:"tvl";s:15:"ツァフル語";s:3:"tkr";s:15:"ツァコン語";s:3:"tsd";}i:70;a:1:{s:10:"Юнонӣ";s:2:"el";}i:773;a:6:{s:18:"እንግሊዝኛ";s:2:"en";s:28:"እስኮትስ ጌልክኛ";s:2:"gd";s:18:"እንዶኑሲኛ";s:2:"id";s:24:"እንተርሊንግወ";s:2:"ie";s:18:"እኑፒያቅኛ";s:2:"ik";s:21:"እኑክቲቱትኛ";s:2:"iu";}i:439;a:29:{s:18:"ইংরেজি";s:2:"en";s:45:"ইন্টারলিঙ্গুয়া";s:2:"ia";s:33:"ইন্দোনেশীয়";s:2:"id";s:33:"ইন্টারলিঙ্গ";s:2:"ie";s:18:"ইগ্‌বো";s:2:"ig";s:27:"ইনুপিয়াক";s:2:"ik";s:15:"ইলোকো";s:3:"ilo";s:18:"ইঙ্গুশ";s:3:"inh";s:9:"ইডো";s:2:"io";s:21:"ইতালীয়";s:2:"it";s:30:"ইনুক্টিটুট";s:2:"iu";s:12:"盧森堡文";s:2:"lb";s:9:"盧晒文";s:3:"lus";s:15:"盧森尼亞文";s:3:"rue";s:12:"盧安達文";s:2:"rw";s:21:"ইয়াকুট";s:3:"sah";s:30:"ইউক্রেনীয়";s:2:"uk";s:18:"ইওরুবা";s:2:"yo";s:9:"盧奧文";s:3:"luo";s:9:"盧雅文";s:3:"luy";s:28:"ইনারি সামি";s:3:"smn";s:52:"ইউরোপীয় স্প্যানিশ";s:5:"es-es";s:46:"ইউরোপের পর্তুগীজ";s:5:"pt-pt";s:18:"ইকাজুক";s:3:"eka";s:18:"ইওন্ডো";s:3:"ewo";s:12:"ইবান";s:3:"iba";s:12:"盧恩達文";s:3:"lun";s:15:"ইয়াও";s:3:"yao";s:24:"ইয়াপেসে";s:3:"yap";}i:207;a:19:{s:24:"ಇಂಗ್ಲೀಷ್";s:2:"en";s:27:"‏אינטרלינגואה";s:2:"ia";s:39:"ಇಂಟರ್‌ಲಿಂಗ್ವಾ";s:2:"ia";s:33:"ಇಂಡೋನೇಶಿಯನ್";s:2:"id";s:30:"ಇಂಟರ್ಲಿಂಗ್";s:2:"ie";s:15:"ಇಗ್ಬೊ";s:2:"ig";s:6:"Ïgbö";s:2:"ig";s:27:"ಇನುಪಿಯಾಕ್";s:2:"ik";s:21:"ಇಲ್ಲಿಕೋ";s:3:"ilo";s:18:"ಇಂಗುಷ್";s:3:"inh";s:9:"ಇಡೊ";s:2:"io";s:24:"ಇಟಾಲಿಯನ್";s:2:"it";s:33:"ಇನುಕ್ಟಿಟುಟ್";s:2:"iu";s:32:"‏נורבגית ספרותית";s:2:"nb";s:17:"‏וולאפיק";s:2:"vo";s:25:"ಇನರಿ ಸಾಮಿ";s:3:"smn";s:18:"ಇವಾಂಡೋ";s:3:"ewo";s:15:"ಇಬಾನ್";s:3:"iba";s:26:"‏נורדית עתיקה";s:3:"non";}i:689;a:5:{s:6:"영어";s:2:"en";s:18:"영어 (캐나다)";s:5:"en-ca";s:18:"영어 (영국식)";s:5:"en-gb";s:14:"영어(호주)";s:5:"en-au";s:14:"영어, 중세";s:3:"enm";}i:452;a:21:{s:18:"イギリス英語";s:5:"en-gb";s:9:"芬兰文";s:2:"fi";s:9:"芬蘭文";s:2:"fi";s:24:"インターリングア";s:2:"ia";s:21:"インドネシア語";s:2:"id";s:21:"インターリング";s:2:"ie";s:9:"イボ語";s:2:"ig";s:21:"イヌピアック語";s:2:"ik";s:15:"イロカノ語";s:3:"ilo";s:18:"イングーシ語";s:3:"inh";s:9:"イド語";s:2:"io";s:15:"イタリア語";s:2:"it";s:30:"イヌクウティトット語";s:2:"iu";s:21:"イディッシュ語";s:2:"yi";s:9:"주앙어";s:2:"za";s:24:"イナリ・サーミ語";s:3:"smn";s:12:"イバン語";s:3:"iba";s:9:"주니어";s:3:"zun";s:15:"イビビオ語";s:3:"ibb";s:18:"イングリア語";s:3:"izh";s:15:"イエンバ語";s:3:"ybb";}i:772;a:3:{s:18:"ኤስፐራንቶ";s:2:"eo";s:18:"ኤስቶኒአን";s:2:"et";s:9:"ኤፊክ";s:3:"efi";}i:831;a:7:{s:33:"ଏସ୍ପାରେଣ୍ଟୋ";s:2:"eo";s:30:"ଏସ୍ତୋନିଆନ୍";s:2:"et";s:18:"ଏର୍ଜୟା";s:3:"myv";s:15:"ଏଫିକ୍";s:3:"efi";s:15:"ଏନ୍କୋ";s:3:"nqo";s:21:"ଏକାଜୁକ୍";s:3:"eka";s:24:"ଏଲାମାଇଟ୍";s:3:"elx";}i:567;a:8:{s:27:"ਇਸਪੇਰਾਂਟੋ";s:2:"eo";s:24:"ਇਸਟੋਨੀਆਈ";s:2:"et";s:33:"ਇੰਡੋਨੇਸ਼ੀਆਈ";s:2:"id";s:12:"ਇਗਬੋ";s:2:"ig";s:18:"ਇਤਾਲਵੀ";s:2:"it";s:24:"ਇੰਕਟੀਟੂਤ";s:2:"iu";s:12:"ਇੰਬੂ";s:3:"ebu";s:28:"ਇਨਾਰੀ ਸਾਮੀ";s:3:"smn";}i:473;a:29:{s:30:"එස්පැරන්ටෝ";s:2:"eo";s:15:"スペイン語";s:2:"es";s:33:"එස්තෝනියානු";s:2:"et";s:36:"スコットランド・ゲール語";s:2:"gd";s:21:"スイスドイツ語";s:3:"gsw";s:24:"スコットランド語";s:3:"sco";s:18:"スロバキア語";s:2:"sk";s:18:"スロベニア語";s:2:"sl";s:15:"スリナム語";s:3:"srn";s:12:"スワジ語";s:2:"ss";s:12:"スンダ語";s:2:"su";s:21:"スウェーデン語";s:2:"sv";s:15:"スワヒリ語";s:2:"sw";s:31:"중앙모로코 타마지트어";s:3:"tzm";s:9:"중국어";s:2:"zh";s:17:"중국어(간체)";s:7:"zh-hans";s:17:"중국어(번체)";s:7:"zh-hant";s:15:"එම්බු";s:3:"ebu";s:18:"එන්‘කෝ";s:3:"nqo";s:27:"スコルト・サーミ語";s:3:"sms";s:22:"중남미 스페인어";s:6:"es-419";s:35:"スペイン語(イベリア半島)";s:5:"es-es";s:18:"スレイビー語";s:3:"den";s:22:"중세 네덜란드어";s:3:"dum";s:19:"중세 프랑스어";s:3:"frm";s:23:"중세 고지 독일어";s:3:"gmh";s:12:"スクマ語";s:3:"suk";s:9:"スス語";s:3:"sus";s:18:"スラヤール語";s:3:"sly";}i:958;a:8:{s:30:"எஸ்பரேன்டோ";s:2:"eo";s:30:"எஸ்டோனியன்";s:2:"et";s:58:"எளிதாக்கப்பட்ட சீனம்";s:7:"zh-hans";s:15:"எம்பு";s:3:"ebu";s:18:"எஃபிக்";s:3:"efi";s:18:"என்‘கோ";s:3:"nqo";s:18:"எலமைட்";s:3:"elx";s:21:"எவோன்டோ";s:3:"ewo";}i:86;a:37:{s:30:"ఎస్పరెన్టొ";s:2:"eo";s:20:"оксидентал";s:2:"ie";s:20:"окцидентал";s:2:"ie";s:19:"олык марий";s:3:"mhr";s:21:"ఎర్జియా";s:3:"myv";s:20:"окситански";s:2:"oc";s:14:"окситан";s:2:"oc";s:22:"окситанский";s:2:"oc";s:12:"окитан";s:2:"oc";s:10:"оромо";s:2:"om";s:14:"оромочо";s:2:"om";s:8:"орыя";s:2:"or";s:8:"ория";s:2:"or";s:12:"орияча";s:2:"or";s:10:"орија";s:2:"or";s:8:"орія";s:2:"or";s:14:"осетски";s:2:"os";s:12:"осетин";s:2:"os";s:20:"осетинский";s:2:"os";s:20:"осетинська";s:2:"os";s:17:"орыс тілі";s:2:"ru";s:12:"орусча";s:2:"ru";s:8:"орос";s:2:"ru";s:27:"оңтүстік саами";s:3:"sma";s:55:"орталық атлас тамасагихт тілі";s:3:"tzm";s:33:"опростен китайски";s:7:"zh-hans";s:15:"ఎఫిక్";s:3:"efi";s:21:"ఎలామైట్";s:3:"elx";s:18:"ఎవోండొ";s:3:"ewo";s:14:"оджибва";s:2:"oj";s:12:"оџибва";s:2:"oj";s:14:"оджібва";s:2:"oj";s:12:"оседжи";s:3:"osa";s:12:"осашки";s:3:"osa";s:12:"осейдж";s:3:"osa";s:31:"отомански турски";s:3:"ota";s:18:"османська";s:3:"ota";}i:69;a:5:{s:18:"Эсперанто";s:2:"eo";s:9:"ᏍᏆᏂ";s:2:"es";s:24:"Эстиэнийэлии";s:2:"et";s:12:"Эстонӣ";s:2:"et";s:18:"Эрмээннии";s:2:"hy";}i:934;a:14:{s:30:"ཞི་པན་ཡའི།";s:2:"es";s:12:"Φουλάχ";s:2:"ff";s:20:"Φινλανδικά";s:2:"fi";s:10:"Φίτζι";s:2:"fj";s:10:"Φαρόε";s:2:"fo";s:18:"Φριούλιαν";s:3:"fur";s:30:"ཞི་ལན་སྐད།";s:2:"si";s:18:"ཞོ་ས་ཁ";s:2:"xh";s:26:"Φιλιππινεζικά";s:3:"fil";s:20:"Φλαμανδικά";s:5:"nl-be";s:18:"Φοινικικά";s:3:"phn";s:10:"Φανγκ";s:3:"fan";s:10:"Φάντι";s:3:"fat";s:6:"Φον";s:3:"fon";}i:387;a:8:{s:18:"իսպաներեն";s:2:"es";s:20:"իռլանդերեն";s:2:"ga";s:22:"ինդոնեզերեն";s:2:"id";s:8:"իգբո";s:2:"ig";s:20:"իսլանդերեն";s:2:"is";s:16:"իտալերեն";s:2:"it";s:22:"ինուկտիտուտ";s:2:"iu";s:19:"ինարի սամի";s:3:"smn";}i:828;a:8:{s:12:"스페인어";s:2:"es";s:25:"스코틀랜드 게일어";s:2:"gd";s:18:"스코틀랜드어";s:3:"sco";s:15:"스리랑카어";s:2:"si";s:19:"스라난 통가어";s:3:"srn";s:12:"스웨덴어";s:2:"sv";s:15:"스와힐리어";s:2:"sw";s:19:"스콜트 사미어";s:3:"sms";}i:48;a:27:{s:12:"Испанӣ";s:2:"es";s:27:"ហ្វាំងឡង់";s:2:"fi";s:21:"ហ៊្វីជី";s:2:"fj";s:21:"ហ្វារូស";s:2:"fo";s:48:"ហ្វ្រីស៊ានខាងលិច";s:2:"fy";s:14:"Ирландӣ";s:2:"ga";s:33:"ហ្គាលីស្យាន";s:2:"gl";s:27:"ហ្គូរ៉ានី";s:2:"gn";s:33:"ហ្កុយ៉ារាទី";s:2:"gu";s:12:"ហូសា";s:2:"ha";s:12:"ហាវៃ";s:3:"haw";s:18:"ហិណ្ឌូ";s:2:"hi";s:12:"ហៃទី";s:2:"ht";s:21:"ហុងគ្រី";s:2:"hu";s:22:"Интерлингва";s:2:"ia";s:16:"Индонезӣ";s:2:"id";s:10:"Илоко";s:3:"ilo";s:16:"Ингвишки";s:3:"inh";s:6:"Идо";s:2:"io";s:14:"Исландӣ";s:2:"is";s:30:"ហ្សក​ហ្ស៊ី";s:2:"ka";s:21:"ហុល្លង់";s:2:"nl";s:8:"Ирон";s:2:"os";s:27:"ហ្វីលីពីន";s:3:"fil";s:41:"Иберијски португалски";s:5:"pt-pt";s:33:"Источни фризијски";s:3:"frs";s:8:"Ибан";s:3:"iba";}i:626;a:17:{s:12:"สเปน";s:2:"es";s:33:"สกอตส์กาลิก";s:2:"gd";s:12:"ሒንዱኛ";s:2:"hi";s:21:"สันสกฤต";s:2:"sa";s:21:"สันตาลี";s:3:"sat";s:18:"สกอตส์";s:3:"sco";s:15:"สินธุ";s:2:"sd";s:15:"สิงหล";s:2:"si";s:18:"สโลวัก";s:2:"sk";s:27:"สโลวีเนีย";s:2:"sl";s:15:"สวาติ";s:2:"ss";s:18:"สวีเดน";s:2:"sv";s:21:"สวาฮีลี";s:2:"sw";s:37:"สวาฮีลี-คองโก";s:3:"swc";s:30:"สเปน (ยุโรป)";s:5:"es-es";s:21:"สิกสิกา";s:3:"bla";s:15:"สเลวี";s:3:"den";}i:729;a:19:{s:14:"ہسپانوی";s:2:"es";s:10:"ہاوسا";s:2:"ha";s:8:"ہؤسا";s:2:"ha";s:16:"ہوایِیَن";s:3:"haw";s:10:"ہوائی";s:3:"haw";s:10:"ہِندی";s:2:"hi";s:8:"ہندی";s:2:"hi";s:20:"ہِلیٖگینَن";s:3:"hil";s:19:"ہِری موتوٗ";s:2:"ho";s:29:"ہیٚرِم ساربِیَن";s:3:"hsb";s:14:"ہیتِیاں";s:2:"ht";s:8:"ہیتی";s:2:"ht";s:20:"ہَنٛگیریَن";s:2:"hu";s:14:"ہنگیرین";s:2:"hu";s:16:"ہیٚریٖرو";s:2:"hz";s:14:"ہِتایِت";s:3:"hit";s:10:"ہَیدا";s:3:"hai";s:12:"ہمونٛگ";s:3:"hmn";s:8:"ہُپا";s:3:"hup";}i:859;a:20:{s:15:"愛沙尼亞文";s:2:"et";s:15:"ଫୁଲାହ";s:2:"ff";s:24:"ଫିନ୍ନିସ୍";s:2:"fi";s:12:"ଫିଜି";s:2:"fj";s:21:"ଫାରୋଏସେ";s:2:"fo";s:21:"ଫ୍ରେଞ୍ଚ";s:2:"fr";s:36:"ଫ୍ରିୟୁଲୀୟାନ୍";s:3:"fur";s:12:"愛爾蘭文";s:2:"ga";s:15:"米南卡保文";s:3:"min";s:15:"米南卡堡文";s:3:"min";s:15:"米兰德斯文";s:3:"mwl";s:15:"米蘭德斯文";s:3:"mwl";s:24:"ଫିଲିପିନୋ";s:3:"fil";s:24:"ଫ୍ଲେମିଶ୍";s:5:"nl-be";s:27:"ଫୋନେସିଆନ୍";s:3:"phn";s:15:"ଫାଙ୍ଗ";s:3:"fan";s:18:"ଫାଣ୍ଟି";s:3:"fat";s:9:"ଫନ୍";s:3:"fon";s:15:"米克马克文";s:3:"mic";s:15:"米克馬克文";s:3:"mic";}i:92;a:82:{s:10:"фарсі";s:2:"fa";s:14:"фарсыча";s:2:"fa";s:8:"фула";s:2:"ff";s:10:"фулах";s:2:"ff";s:14:"фінская";s:2:"fi";s:12:"фински";s:2:"fi";s:6:"фин";s:2:"fi";s:10:"финче";s:2:"fi";s:14:"финлянд";s:2:"fi";s:12:"финнаг";s:2:"fi";s:14:"финский";s:2:"fi";s:14:"фінська";s:2:"fi";s:20:"фіджыйская";s:2:"fj";s:18:"фиджийски";s:2:"fj";s:10:"фиджи";s:2:"fj";s:12:"фижиче";s:2:"fj";s:14:"фиџиски";s:2:"fj";s:8:"фижи";s:2:"fj";s:16:"фиџијски";s:2:"fj";s:10:"фіджі";s:2:"fj";s:18:"фарэрская";s:2:"fo";s:18:"фарьорски";s:2:"fo";s:10:"фарер";s:2:"fo";s:14:"фароэче";s:2:"fo";s:12:"фарски";s:2:"fo";s:14:"фарераг";s:2:"fo";s:18:"фарерский";s:2:"fo";s:18:"фарерська";s:2:"fo";s:22:"французская";s:2:"fr";s:20:"француская";s:2:"fr";s:14:"френски";s:2:"fr";s:23:"француз тілі";s:2:"fr";s:18:"французча";s:2:"fr";s:18:"француски";s:2:"fr";s:10:"франц";s:2:"fr";s:14:"францаг";s:2:"fr";s:22:"французский";s:2:"fr";s:20:"французька";s:2:"fr";s:36:"франкопровансалски";s:3:"frp";s:33:"фризский северный";s:3:"frr";s:31:"фризька північна";s:3:"frr";s:22:"фриулиански";s:3:"fur";s:18:"фурлански";s:3:"fur";s:20:"фриульский";s:3:"fur";s:20:"фріульська";s:3:"fur";s:16:"фрызская";s:2:"fy";s:18:"фризийски";s:2:"fy";s:33:"фіджыйская гіндзі";s:3:"hif";s:25:"фиџиски хинди";s:3:"hif";s:52:"фіджыйская гіндзі (лацініца)";s:8:"hif-latn";s:29:"францын окситан";s:2:"oc";s:32:"фалечкогермански";s:3:"pfl";s:20:"филипински";s:3:"fil";s:16:"филиппин";s:3:"fil";s:16:"филипино";s:3:"fil";s:20:"филиппинаг";s:3:"fil";s:24:"филиппинский";s:3:"fil";s:24:"філіппінська";s:3:"fil";s:22:"фламандская";s:5:"nl-be";s:20:"фламандски";s:5:"nl-be";s:23:"фламанд тілі";s:5:"nl-be";s:18:"фламандча";s:5:"nl-be";s:14:"фламанд";s:5:"nl-be";s:22:"фламандский";s:5:"nl-be";s:18:"фламански";s:5:"nl-be";s:22:"фламандська";s:5:"nl-be";s:22:"фінікійская";s:3:"phn";s:20:"финикийски";s:3:"phn";s:18:"феникиски";s:3:"phn";s:22:"финикийский";s:3:"phn";s:37:"фінікійсько-пунічна";s:3:"phn";s:36:"французская (канад.)";s:5:"fr-ca";s:38:"француски (во Канада)";s:5:"fr-ca";s:36:"французская (швейц.)";s:5:"fr-ch";s:8:"фанг";s:3:"fan";s:10:"фанти";s:3:"fat";s:10:"фанті";s:3:"fat";s:6:"фон";s:3:"fon";s:27:"фризька східна";s:3:"frs";s:6:"콤어";s:3:"bkm";s:16:"фарефаре";s:3:"gur";s:56:"фіджыйская гіндзі (дэванагары)";s:8:"hif-deva";}i:87;a:75:{s:20:"пэрсыдзкая";s:2:"fa";s:18:"персийски";s:2:"fa";s:19:"парсы тілі";s:2:"fa";s:16:"персиски";s:2:"fa";s:8:"перс";s:2:"fa";s:18:"персайнаг";s:2:"fa";s:20:"персидский";s:2:"fa";s:18:"персијски";s:2:"fa";s:14:"перська";s:2:"fa";s:28:"правансальская";s:2:"oc";s:16:"панджабі";s:2:"pa";s:20:"пенджабски";s:2:"pa";s:14:"пенджаб";s:2:"pa";s:18:"пунжабиче";s:2:"pa";s:18:"пенџапски";s:2:"pa";s:12:"панжаб";s:2:"pa";s:16:"панджаби";s:2:"pa";s:14:"панџаби";s:2:"pa";s:20:"пангасинан";s:3:"pag";s:26:"пангасинански";s:3:"pag";s:28:"пангасінанська";s:3:"pag";s:16:"пампанга";s:3:"pam";s:20:"папиаменту";s:3:"pap";s:22:"папијаменто";s:3:"pap";s:20:"папьяменто";s:3:"pap";s:21:"пап’яменто";s:3:"pap";s:18:"пикардски";s:3:"pcd";s:45:"пенсилваниски германски";s:3:"pdc";s:8:"пали";s:2:"pi";s:8:"палі";s:2:"pi";s:16:"польская";s:2:"pl";s:12:"полски";s:2:"pl";s:19:"поляк тілі";s:2:"pl";s:14:"полякча";s:2:"pl";s:10:"польш";s:2:"pl";s:16:"польский";s:2:"pl";s:12:"пољски";s:2:"pl";s:16:"польська";s:2:"pl";s:20:"пиемонтски";s:3:"pms";s:14:"понтски";s:3:"pnt";s:14:"пруская";s:3:"prg";s:12:"пруски";s:3:"prg";s:10:"пушту";s:2:"ps";s:8:"пущу";s:2:"ps";s:14:"пашточо";s:2:"ps";s:18:"паштунски";s:2:"ps";s:10:"пашто";s:2:"ps";s:26:"партугальская";s:2:"pt";s:22:"португалски";s:2:"pt";s:25:"португал тілі";s:2:"pt";s:20:"португалча";s:2:"pt";s:16:"португал";s:2:"pt";s:22:"португалиаг";s:2:"pt";s:26:"португальский";s:2:"pt";s:26:"португальська";s:2:"pt";s:42:"партугальская (бразіл.)";s:5:"pt-br";s:31:"португал (бразил)";s:5:"pt-br";s:39:"поедноставен кинески";s:7:"zh-hans";s:25:"повеќе јазици";s:3:"mul";s:35:"португалча (Европа)";s:5:"pt-pt";s:42:"португалски (во Европа)";s:5:"pt-pt";s:41:"португальська (Європа)";s:5:"pt-pt";s:34:"південноалтайська";s:3:"alt";s:18:"ఏకాజక్";s:3:"eka";s:22:"пехлевийски";s:3:"pal";s:24:"пехлевийский";s:3:"pal";s:14:"пехлеві";s:3:"pal";s:14:"палауан";s:3:"pau";s:20:"палауански";s:3:"pau";s:10:"палау";s:3:"pau";s:22:"палауанська";s:3:"pau";s:18:"похнпеиан";s:3:"pon";s:18:"понпејски";s:3:"pon";s:12:"понапе";s:3:"pon";s:24:"провансалски";s:3:"pro";}i:731;a:15:{s:15:"ફારસી";s:2:"fa";s:15:"ફુલાહ";s:2:"ff";s:15:"ફિનિશ";s:2:"fi";s:18:"ફિજીયન";s:2:"fj";s:21:"ફોરિસ્ત";s:2:"fo";s:21:"ફ્રેન્ચ";s:2:"fr";s:33:"ફ્રિયુલિયાન";s:3:"fur";s:28:"ફીજી હિંદી";s:3:"hif";s:12:"ቻይንኛ";s:2:"zh";s:24:"ફિલિપિનો";s:3:"fil";s:21:"ફ્લેમિશ";s:5:"nl-be";s:24:"ફોનિશિયન";s:3:"phn";s:12:"ફેંગ";s:3:"fan";s:15:"ફન્ટી";s:3:"fat";s:9:"ફોન";s:3:"fon";}i:402;a:3:{s:18:"պարսկերեն";s:2:"fa";s:26:"պորտուգալերեն";s:2:"pt";s:33:"պարզեցված չինարեն";s:7:"zh-hans";}i:168;a:3:{s:15:"페르시아어";s:2:"fa";s:9:"페로어";s:2:"fo";s:15:"페니키아어";s:3:"phn";}i:55;a:17:{s:22:"Пиэрсийэлии";s:2:"fa";s:14:"Пииннии";s:2:"fi";s:24:"Пырансуустуу";s:2:"fr";s:19:"Перем Коми";s:3:"koi";s:24:"Провансалски";s:2:"oc";s:22:"Пандьаабтыы";s:2:"pa";s:22:"Пангасински";s:3:"pag";s:16:"Пампанга";s:3:"pam";s:20:"Папиаменто";s:3:"pap";s:8:"Пали";s:2:"pi";s:24:"Португааллыы";s:2:"pt";s:18:"Португалӣ";s:2:"pt";s:37:"Португалӣ (Бразилия)";s:5:"pt-br";s:22:"Пилипииннии";s:3:"fil";s:14:"Пахлави";s:3:"pal";s:20:"Палауански";s:3:"pau";s:18:"Понпејски";s:3:"pon";}i:501;a:19:{s:12:"フラニ語";s:2:"ff";s:21:"フィンランド語";s:2:"fi";s:15:"フィジー語";s:2:"fj";s:15:"フェロー語";s:2:"fo";s:15:"フランス語";s:2:"fr";s:15:"フリウリ語";s:3:"fur";s:33:"フィジー・ヒンディー語";s:3:"hif";s:18:"තෙළිඟු";s:2:"te";s:12:"තායි";s:2:"th";s:18:"තුර්කි";s:2:"tr";s:15:"ꈝꐯꍏꇩꉙ";s:7:"zh-hans";s:18:"フィリピノ語";s:3:"fil";s:21:"フレミッシュ語";s:5:"nl-be";s:18:"フェニキア語";s:3:"phn";s:15:"ファング語";s:3:"fan";s:21:"ファンティー語";s:3:"fat";s:12:"フォン語";s:3:"fon";s:12:"フモン語";s:3:"hmn";s:15:"フラフラ語";s:3:"gur";}i:743;a:13:{s:12:"ຟູລາ";s:2:"ff";s:18:"ຟິນນິຊ";s:2:"fi";s:15:"ຟິຈຽນ";s:2:"fj";s:15:"ຟາໂຣສ";s:2:"fo";s:30:"ຟຣີຊຽນເໜືອ";s:3:"frr";s:18:"ຟຣີລຽນ";s:3:"fur";s:24:"ຟີລິປີໂນ";s:3:"fil";s:18:"ຟລີມິຊ";s:5:"nl-be";s:21:"ຟີນີເຊຍ";s:3:"phn";s:9:"ຟອນ";s:3:"fon";s:33:"ຟຮັ່ງເສດກາງ";s:3:"frm";s:39:"ຟຮັ່ງເສດໂບຮານ";s:3:"fro";s:45:"ຟຣີຊຽນຕາເວັນອອກ";s:3:"frs";}i:371;a:12:{s:9:"ഫുല";s:2:"ff";s:24:"ഫിന്നിഷ്";s:2:"fi";s:18:"ഫിജിയൻ";s:2:"fj";s:18:"ഫാറോസ്";s:2:"fo";s:21:"ഫ്രഞ്ച്";s:2:"fr";s:33:"ഫ്രിയുലിയാൻ";s:3:"fur";s:30:"ഫിലിപ്പിനോ";s:3:"fil";s:21:"ഫ്ലമിഷ്";s:5:"nl-be";s:24:"ഫീനിഷ്യൻ";s:3:"phn";s:9:"ഫങ്";s:3:"fan";s:30:"ഫിലിപ്പീനോ";s:3:"fat";s:9:"ഫോൻ";s:3:"fon";}i:947;a:13:{s:15:"ஃபுலா";s:2:"ff";s:27:"ஃபின்னிஷ்";s:2:"fi";s:24:"ஃபிஜியன்";s:2:"fj";s:24:"ஃபரோயிஸ்";s:2:"fo";s:36:"ஃப்ரியூலியன்";s:3:"fur";s:12:"ፓሽቶኛ";s:2:"ps";s:9:"ፓሽቶ";s:2:"ps";s:27:"ஃபிலிபினோ";s:3:"fil";s:30:"ஃபொனிஷியன்";s:3:"phn";s:18:"ஃபங்க்";s:3:"fan";s:21:"ஃபான்டி";s:3:"fat";s:15:"ஃபான்";s:3:"fon";s:33:"ஃபோன்பெயென்";s:3:"pon";}i:615;a:15:{s:18:"ฟูลาฮ์";s:2:"ff";s:24:"ฟินแลนด์";s:2:"fi";s:60:"ฟินแลนด์ทอร์เนดาเล็น";s:3:"fit";s:12:"ฟิจิ";s:2:"fj";s:39:"ฟริเซียนเหนือ";s:3:"frr";s:15:"ฟรูลี";s:3:"fur";s:45:"ฟริเซียนตะวันตก";s:2:"fy";s:63:"ฟรีเซียนซัทเธอร์แลนด์";s:3:"stq";s:30:"ฟิลิปปินส์";s:3:"fil";s:24:"ฟินิเชีย";s:3:"phn";s:9:"ฟอง";s:3:"fan";s:15:"ฟันติ";s:3:"fat";s:9:"ฟอน";s:3:"fon";s:48:"ฟริเซียนตะวันออก";s:3:"frs";s:18:"ฟราฟรา";s:3:"gur";}i:827;a:2:{s:9:"夫拉文";s:2:"ff";s:12:"ዛርማኛ";s:3:"dje";}i:414;a:6:{s:16:"ֆիններեն";s:2:"fi";s:16:"ֆիջիերեն";s:2:"fj";s:20:"ֆարյորերեն";s:2:"fo";s:18:"ֆրանսերեն";s:2:"fr";s:22:"ֆիլիպիներեն";s:3:"fil";s:22:"ֆլամանդերեն";s:5:"nl-be";}i:324;a:17:{s:18:"ფინური";s:2:"fi";s:12:"ფიჯი";s:2:"fj";s:24:"ფარერული";s:2:"fo";s:24:"ფრანგული";s:2:"fr";s:24:"ფრიულური";s:3:"fur";s:15:"里菲亞諾文";s:3:"rif";s:18:"사르디니아어";s:2:"sc";s:12:"사모아어";s:2:"sm";s:30:"ფილიპინური";s:3:"fil";s:33:"ფლამანდიური";s:5:"nl-be";s:27:"ფინიკიური";s:3:"phn";s:12:"ფონი";s:3:"fon";s:21:"ფალაური";s:3:"pal";s:22:"사마리아 아랍어";s:3:"sam";s:12:"사사크어";s:3:"sas";s:15:"사포테크어";s:3:"zap";s:9:"사호어";s:3:"ssy";}i:592;a:14:{s:12:"핀란드어";s:2:"fi";s:18:"จีนกาน";s:3:"gan";s:18:"จีนแคะ";s:3:"hak";s:9:"จัท";s:3:"jut";s:24:"จอร์เจีย";s:2:"ka";s:30:"จีนคลาสสิก";s:3:"lzh";s:30:"จีนมินหนาน";s:3:"nan";s:18:"จีนอู๋";s:3:"wuu";s:12:"จ้วง";s:2:"za";s:9:"จีน";s:2:"zh";s:27:"จีนตัวย่อ";s:7:"zh-hans";s:30:"จีนตัวเต็ม";s:7:"zh-hant";s:24:"จีนเซียง";s:3:"hsn";s:18:"จีมบูน";s:3:"nnh";}i:526;a:5:{s:24:"ෆින්ලන්ත";s:2:"fi";s:12:"ෆීජි";s:2:"fj";s:18:"ෆාරෝස්";s:2:"fo";s:15:"ෆර්මා";s:3:"dje";s:24:"ෆ්ලෙමිශ්";s:5:"nl-be";}i:176;a:8:{s:18:"托爾訥芬蘭文";s:3:"fit";s:12:"히브리어";s:2:"he";s:16:"히리 모투어";s:2:"ho";s:15:"托克皮辛文";s:3:"tpi";s:12:"托比辛文";s:3:"tpi";s:9:"히몸어";s:3:"hmn";s:12:"托克劳文";s:3:"tkl";s:12:"托克勞文";s:3:"tkl";}i:939;a:8:{s:9:"ፋሮኛ";s:2:"fo";s:33:"ལཱ་ཏིན་སྐད།";s:2:"la";s:24:"ལེ་ཊིན་ཁ";s:2:"la";s:36:"ལག་ཛམ་བོརྒ་ཁ";s:2:"lb";s:24:"ལཱ་ཝོས་ཁ";s:2:"lo";s:51:"ལི་ཐུ་ཝེ་ནི་ཡཱན་ཁ";s:2:"lt";s:33:"ལཊ་བི་ཡཱན་ཁ";s:2:"lv";s:102:"ལེ་ཊིན་ཨ་མེ་རི་ཀཱན་གི་ཨིས་པེ་ནིཤ་ཁ";s:6:"es-419";}i:943;a:11:{s:36:"ཧྥ་རན་སིའི་།";s:2:"fr";s:18:"ཧཝ་ས་ཁ";s:2:"ha";s:30:"ཧ་ཝ་ཡིའི་ཁ";s:3:"haw";s:24:"ཧེ་བྲུ་ཁ";s:2:"he";s:18:"ཧིན་དི";s:2:"hi";s:24:"ཧིན་དི་ཁ";s:2:"hi";s:33:"ཧེ་ཏི་ཡཱན་ཁ";s:2:"ht";s:45:"ཧཱང་གྷ་རི་ཡཱན་ཁ";s:2:"hu";s:33:"ཧའོ་ལན་སྐད།";s:2:"nl";s:39:"ཧྲུའི་ཏན་སྐད།";s:2:"sv";s:9:"肯揚文";s:3:"ken";}i:30;a:4:{s:9:"ᎦᎸᏥ";s:2:"fr";s:15:"邦阿西楠文";s:3:"pag";s:12:"邦板牙文";s:3:"pam";s:9:"ᎦᏳᎦ";s:3:"cay";}i:172;a:3:{s:9:"ꃔꇩꉙ";s:2:"fr";s:12:"게이즈어";s:3:"gez";s:12:"게르보어";s:3:"grb";}i:441;a:13:{s:70:"উত্তরাঞ্চলীয় ফ্রিসিয়ান";s:3:"frr";s:43:"উচ্চ সোর্বিয়ান";s:3:"hsb";s:37:"উপস্থাপন ভাষা";s:2:"ie";s:52:"উত্তরাঞ্চলীয় সোথো";s:3:"nso";s:52:"উত্তরাঞ্চলীয় সামি";s:2:"se";s:21:"উডমুর্ট";s:3:"udm";s:15:"উইঘুর";s:2:"ug";s:15:"উর্দু";s:2:"ur";s:24:"উজবেকীয়";s:2:"uz";s:15:"উওলোফ";s:2:"wo";s:43:"উত্তর এন্দেবিলি";s:2:"nd";s:24:"উগারিটিক";s:3:"uga";s:27:"উম্বুন্দু";s:3:"umb";}i:271;a:15:{s:18:"北フリジア語";s:3:"frr";s:18:"北弗里西亚文";s:3:"frr";s:18:"北弗里西亞文";s:3:"frr";s:12:"北印度文";s:2:"hi";s:15:"北紮紮其文";s:3:"kiu";s:15:"北部ソト語";s:3:"nso";s:12:"北索托文";s:3:"nso";s:15:"北サーミ語";s:2:"se";s:12:"北萨米文";s:2:"se";s:15:"北方薩米文";s:2:"se";s:18:"北ンデベレ語";s:2:"nd";s:18:"北恩德贝勒文";s:2:"nd";s:15:"北地畢列文";s:2:"nd";s:12:"北桑海文";s:3:"twq";s:5:"ďula";s:3:"dyu";}i:209;a:11:{s:43:"ಉತ್ತರ ಫ್ರಿಸಿಯನ್";s:3:"frr";s:28:"ಉತ್ತರ ಸೋಥೋ";s:3:"nso";s:28:"ಉತ್ತರ ಸಾಮಿ";s:2:"se";s:30:"ಉಡ್‌ಮುರ್ಟ್";s:3:"udm";s:18:"ಉಯಿಘರ್";s:2:"ug";s:30:"ಉಕ್ರೈನಿಯನ್";s:2:"uk";s:15:"ಉರ್ದು";s:2:"ur";s:21:"ಉಜ್ಬೇಕ್";s:2:"uz";s:34:"ಉತ್ತರ ದೆಬೆಲೆ";s:2:"nd";s:27:"ಉಗಾರಿಟಿಕ್";s:3:"uga";s:21:"ಉಂಬುಂಡು";s:3:"umb";}i:825;a:10:{s:46:"ଉତ୍ତର ଫ୍ରିସିୟାନ୍";s:3:"frr";s:34:"ଉପର ସର୍ବିଆନ୍";s:3:"hsb";s:31:"ଉତ୍ତରୀ ସୋଥୋ";s:3:"nso";s:28:"ଉତ୍ତର ସାମି";s:2:"se";s:27:"ଉଦମୂର୍ତ୍ତ";s:3:"udm";s:21:"ଉର୍ଦ୍ଦୁ";s:2:"ur";s:18:"ଉଜବେକ୍";s:2:"uz";s:9:"ዙሉኛ";s:2:"zu";s:37:"ଉତ୍ତର ନେଡବେଲେ";s:2:"nd";s:27:"ଉମ୍ବୁଣ୍ଡୁ";s:3:"umb";}i:81;a:15:{s:43:"ఉత్తర ఫ్రిసియన్";s:3:"frr";s:28:"ఉత్తర సోతో";s:3:"nso";s:28:"ఉత్తర సామి";s:2:"se";s:27:"ఉడ్ముర్ట్";s:3:"udm";s:21:"ఉయ్‌ఘర్";s:2:"ug";s:30:"ఉక్రేనియన్";s:2:"uk";s:15:"ఉర్దూ";s:2:"ur";s:21:"ఉజ్బెక్";s:2:"uz";s:12:"йоруба";s:2:"yo";s:16:"йорубача";s:2:"yo";s:34:"ఉత్తర దెబెలె";s:2:"nd";s:4:"йю";s:3:"kaj";s:27:"ఉగారిటిక్";s:3:"uga";s:24:"ఉమ్బుండు";s:3:"umb";s:10:"йемба";s:3:"ybb";}i:343;a:5:{s:12:"弗留利文";s:3:"fur";s:18:"ഏഴ്സ്യ";s:3:"myv";s:12:"拿波里文";s:3:"nap";s:14:"Կլինգոն";s:3:"tlh";s:15:"弗拉弗拉文";s:3:"gur";}i:611;a:14:{s:21:"ɣetoɖoƒe frisiagbe";s:2:"fy";s:12:"ሃውሳኛ";s:2:"ha";s:12:"ሃዊያኛ";s:3:"haw";s:12:"ሃይትኛ";s:2:"ht";s:9:"毛利文";s:2:"mi";s:18:"ปัญจาบ";s:2:"pa";s:27:"ปางาซีนัน";s:3:"pag";s:21:"ปัมปางา";s:3:"pam";s:33:"ปาเปียเมนโต";s:3:"pap";s:18:"ปิการ์";s:3:"pcd";s:24:"ปรัสเซีย";s:3:"prg";s:27:"毛里求斯克里奥尔文";s:3:"mfe";s:24:"ปะห์ลาวี";s:3:"pal";s:15:"ปาเลา";s:3:"pau";}i:730;a:21:{s:46:"પશ્ચિમી ફ્રિશિયન";s:2:"fy";s:37:"પ્રાચીન ગ્રીક";s:3:"grc";s:34:"પશ્ચિમી મારી";s:3:"mrj";s:18:"પંજાબી";s:2:"pa";s:27:"પંગાસીનાન";s:3:"pag";s:27:"પમ્પાન્ગા";s:3:"pam";s:36:"પાપિયામેન્ટો";s:3:"pap";s:12:"પાલી";s:2:"pi";s:15:"પોલીશ";s:2:"pl";s:15:"પશ્તો";s:2:"ps";s:27:"પોર્ટુગીઝ";s:2:"pt";s:43:"પારંપરિક ચાઇનીઝ";s:7:"zh-hant";s:9:"ቺጋኛ";s:3:"cgg";s:49:"પ્રાચીન ઇજીપ્શિયન";s:3:"egy";s:71:"પ્રમાણભૂત મોરોક્કન ટમાઝિટ";s:3:"zgh";s:40:"પૂર્વ ફ્રિશિયન";s:3:"frs";s:43:"પરંપરાગત નેવારી";s:3:"nwc";s:15:"પહલવી";s:3:"pal";s:18:"પલાઉઆન";s:3:"pau";s:21:"પોહપિએન";s:3:"pon";s:43:"પરંપરાગત સિરિએક";s:3:"syc";}i:79;a:41:{s:30:"западнофризиски";s:2:"fy";s:31:"западно-фризский";s:2:"fy";s:33:"западни фризијски";s:2:"fy";s:29:"західно-фризька";s:2:"fy";s:36:"ఇంటర్లింగ్వా";s:2:"ia";s:33:"ఇండోనేషియన్";s:2:"id";s:31:"ఇంటర్ లింగ్";s:2:"ie";s:15:"ఇగ్బో";s:2:"ig";s:24:"ఇనూపైఏక్";s:2:"ik";s:18:"ఇంగుష్";s:3:"inh";s:24:"ఇటాలియన్";s:2:"it";s:33:"ఇనుక్టిటుట్";s:2:"iu";s:12:"зазаки";s:3:"kiu";s:28:"западномариски";s:3:"mrj";s:41:"затерландски фризиски";s:3:"stq";s:32:"западнофламански";s:3:"vls";s:21:"ఇడ్డిష్";s:2:"yi";s:10:"зуанг";s:2:"za";s:18:"зеландски";s:3:"zea";s:8:"зулу";s:2:"zu";s:14:"зулуски";s:2:"zu";s:12:"зулуча";s:2:"zu";s:16:"зулуська";s:2:"zu";s:10:"зарма";s:3:"dje";s:14:"замрача";s:3:"dje";s:12:"ఇంబు";s:3:"ebu";s:39:"зеленортски креолски";s:3:"kea";s:12:"複数言語";s:3:"mul";s:28:"ఇనారి సామి";s:3:"smn";s:22:"зогдијански";s:3:"sog";s:14:"запотек";s:3:"zap";s:18:"запотечки";s:3:"zap";s:12:"зенага";s:3:"zen";s:18:"зенагский";s:3:"zen";s:8:"зуни";s:3:"zun";s:10:"зуньи";s:3:"zun";s:10:"зуньї";s:3:"zun";s:8:"заза";s:3:"zza";s:12:"зазакі";s:3:"zza";s:33:"зороастриски дари";s:3:"gbz";s:21:"ఇబిబియో";s:3:"ibb";}i:941;a:2:{s:12:"ፍሪሰኛ";s:2:"fy";s:12:"ፍሌሚሽ";s:5:"nl-be";}i:237;a:15:{s:6:"írskt";s:2:"ga";s:3:"ír";s:2:"ga";s:6:"írska";s:2:"ga";s:8:"írčina";s:2:"ga";s:6:"ígbó";s:2:"ig";s:10:"ínúpíak";s:2:"ik";s:7:"ílokó";s:3:"ilo";s:5:"ídó";s:2:"io";s:9:"íslenska";s:2:"is";s:10:"íslendskt";s:2:"is";s:8:"ítalska";s:2:"it";s:12:"ಥಾಯ್";s:2:"th";s:33:"ӕнцонгонд китайаг";s:7:"zh-hans";s:5:"íban";s:3:"iba";s:16:"írlandés mediu";s:3:"mga";}i:216;a:8:{s:15:"ಐರಿಷ್";s:2:"ga";s:30:"ಐಸ್ಲಾಂಡಿಕ್";s:2:"is";s:15:"쿠안야마어";s:2:"kj";s:12:"쿠르드어";s:2:"ku";s:12:"쿠르크어";s:3:"kru";s:9:"ಐನು";s:3:"ain";s:9:"쿠믹어";s:3:"kum";s:12:"쿠테네어";s:3:"kut";}i:780;a:15:{s:15:"ໄອຣິສ";s:2:"ga";s:15:"ໄຮຕຽນ";s:2:"ht";s:18:"ໄອໂລໂກ";s:3:"ilo";s:27:"ໄອສແລນດິກ";s:2:"is";s:18:"ໄມທີລິ";s:3:"mai";s:6:"ໄທ";s:2:"th";s:12:"ໄຕຕາ";s:3:"dav";s:6:"ໄວ";s:3:"vai";s:15:"ໄທກຣີ";s:3:"tig";s:12:"ໄອນູ";s:3:"ain";s:12:"ໄຮດາ";s:3:"hai";s:15:"ໄອບານ";s:3:"iba";s:24:"ໄອລິດກາງ";s:3:"mga";s:18:"ໄທໃຫ່ຍ";s:3:"shn";s:24:"ໄອໄບໄບໂອ";s:3:"ibb";}i:299;a:2:{s:4:"īru";s:2:"ga";s:12:"īslandiešu";s:2:"is";}i:960;a:5:{s:15:"ஐரிஷ்";s:2:"ga";s:33:"ஐஸ்லென்டிக்";s:2:"is";s:49:"ஐரோப்பிய ஸ்பானிஷ்";s:5:"es-es";s:61:"ஐரோப்பிய போர்ச்சுகீஸ்";s:5:"pt-pt";s:9:"ஐனு";s:3:"ain";}i:875;a:5:{s:12:"ጋጉዝኛ";s:3:"gag";s:12:"ጋሊሺያ";s:2:"gl";s:12:"ጋለቪኛ";s:2:"gl";s:12:"ጋንዳኛ";s:2:"lg";s:3:"ጋ";s:3:"gaa";}i:32;a:15:{s:15:"가가우스어";s:3:"gag";s:15:"新共同語言";s:3:"lfn";s:15:"판가시난어";s:3:"pag";s:10:"Јакут";s:3:"sah";s:6:"ថៃ";s:2:"th";s:10:"Јидиш";s:2:"yi";s:6:"가어";s:3:"gaa";s:25:"Јужни ндебеле";s:2:"nr";s:21:"Јужни алтаи";s:3:"alt";s:9:"판티어";s:3:"fat";s:9:"가요어";s:3:"gay";s:29:"Јудео-персијски";s:3:"jpr";s:25:"Јудео-арапски";s:3:"jrb";s:6:"Јао";s:3:"yao";s:14:"Јапешки";s:3:"yap";}i:123;a:17:{s:6:"贛語";s:3:"gan";s:21:"贛語(繁體)‎";s:8:"gan-hant";s:40:"ရှေးဟောင်း ဂရိ";s:3:"grc";s:18:"ᐃᓄᒃᑎᑐᑦ";s:8:"ike-cans";s:28:"ᐃᓄᒃᑎᑐᑦ/inuktitut";s:2:"iu";s:12:"ရောမ";s:2:"rm";s:18:"ရွန်ဒီ";s:2:"rn";s:30:"ရိုမေနီယား";s:2:"ro";s:12:"ရုရှ";s:2:"ru";s:15:"ရှိနာ";s:2:"sn";s:21:"ရိုရုဘာ";s:2:"yo";s:52:"ရိုးရှင်းသော တရုတ်";s:7:"zh-hans";s:55:"ရှေးရိုးစဉ်လာ တရုတ်";s:7:"zh-hant";s:49:"ရှေးဟောင်း အီဂျစ်";s:3:"egy";s:24:"ရှန်ဘာလာ";s:3:"ksb";s:21:"ရွမ်ဘို";s:3:"rof";s:15:"ရှမ်း";s:3:"shn";}i:195;a:2:{s:21:"赣语(简体)‎";s:8:"gan-hans";s:9:"広東語";s:6:"zh-yue";}i:582;a:23:{s:27:"خط گن ساده‌شده";s:8:"gan-hans";s:18:"خط گن سنتی";s:8:"gan-hant";s:16:"خائۇساچە";s:2:"ha";s:24:"خىلىگاينونچە";s:3:"hil";s:16:"خورۋاتچە";s:2:"hr";s:16:"خېرېروچە";s:2:"hz";s:8:"خمری";s:2:"km";s:10:"خَمیر";s:2:"km";s:12:"ਖਮੇਰ";s:2:"km";s:8:"خمیر";s:2:"km";s:9:"諾魯文";s:2:"na";s:12:"諾維亞文";s:3:"nov";s:12:"خوسایی";s:2:"xh";s:12:"ਖੋਸਾ";s:2:"xh";s:8:"خوسا";s:2:"xh";s:12:"خوساچە";s:2:"xh";s:10:"خەنچە";s:2:"zh";s:16:"خىتتىتچە";s:3:"hit";s:12:"خۇپاچە";s:3:"hup";s:14:"خاسیایی";s:3:"kha";s:8:"ختنی";s:3:"kho";s:14:"خوتەنچە";s:3:"kho";s:9:"諾蓋文";s:3:"nog";}i:64;a:10:{s:27:"Шкотски Галски";s:2:"gd";s:29:"Шотландӣ-Галикӣ";s:2:"gd";s:35:"Швајцарски немачки";s:3:"gsw";s:42:"인테르링구아 (국제보조어협회)";s:2:"ia";s:18:"인도네시아어";s:2:"id";s:18:"인테르링구에";s:2:"ie";s:12:"인귀시어";s:3:"inh";s:14:"Шкотски";s:3:"sco";s:10:"Шведӣ";s:2:"sv";s:6:"Шан";s:3:"shn";}i:600;a:9:{s:12:"길라키어";s:3:"glk";s:43:"ਨਾਰਵੇਜਿਆਈ ਬੋਕਮਲ";s:2:"nb";s:18:"ਨੇਪਾਲੀ";s:2:"ne";s:52:"ਨਾਰਵੇਜਿਆਈ ਨਿਓਨੌਰਸਕ";s:2:"nn";s:27:"ਨਾਰਵੇਜੀਅਨ";s:2:"no";s:18:"ਨਗੋਂਬਾ";s:3:"jgo";s:12:"ਨਾਮਾ";s:3:"naq";s:12:"ਨੁਏਰ";s:3:"nus";s:24:"ਨਿਆਂਕੋਲੇ";s:3:"nyn";}i:883;a:5:{s:12:"ጓራኒኛ";s:2:"gn";s:9:"ጓራኒ";s:2:"gn";s:9:"葛摩文";s:3:"swb";s:12:"葛巴亚文";s:3:"gba";s:12:"葛巴亞文";s:3:"gba";}i:284;a:1:{s:12:"과라니어";s:2:"gn";}i:873;a:16:{s:15:"ጉጃርቲኛ";s:2:"gu";s:15:"ጉጃራቲኛ";s:2:"gu";s:12:"ହୌସା";s:2:"ha";s:21:"ହାୱାଇନ୍";s:3:"haw";s:24:"ହେବ୍ର୍ୟୁ";s:2:"he";s:18:"ହିନ୍ଦୀ";s:2:"hi";s:27:"ହିଲିଗୈନନ୍";s:3:"hil";s:25:"ହିରି ମୋଟୁ";s:2:"ho";s:24:"ହୈତାୟିନ୍";s:2:"ht";s:30:"ହଙ୍ଗେରିଆନ୍";s:2:"hu";s:18:"ହେରେରୋ";s:2:"hz";s:12:"ጉስሊኛ";s:3:"guz";s:18:"ହିତୀତେ";s:3:"hit";s:15:"ହାଇଡା";s:3:"hai";s:15:"ହଁଙ୍ଗ";s:3:"hmn";s:12:"ହୁପା";s:3:"hup";}i:609;a:14:{s:12:"맹크스어";s:2:"gv";s:18:"นาอูรู";s:2:"na";s:18:"นาโปลี";s:3:"nap";s:42:"นอร์เวย์บุคมอล";s:2:"nb";s:12:"นีอู";s:3:"niu";s:45:"นอร์เวย์นีนอสก์";s:2:"nn";s:24:"นอร์เวย์";s:2:"no";s:18:"นาวาโฮ";s:2:"nv";s:9:"ꊉꇩꉙ";s:2:"ru";s:12:"นามา";s:3:"naq";s:15:"นีอัส";s:3:"nia";s:30:"นอร์สโบราณ";s:3:"non";s:18:"นิโอโร";s:3:"nyo";s:15:"นซิมา";s:3:"nzi";}i:862;a:36:{s:18:"ମାଁକ୍ସ";s:2:"gv";s:18:"ମୈଥିଳୀ";s:3:"mai";s:15:"ମୋକ୍ଷ";s:3:"mdf";s:24:"ମାଲାଗାସୀ";s:2:"mg";s:30:"ମାର୍ଶାଲୀଜ୍";s:2:"mh";s:15:"ମାଓରୀ";s:2:"mi";s:33:"ମିନାଙ୍ଗାବାଉ";s:3:"min";s:30:"ମାକଡୋନିଆନ୍";s:2:"mk";s:24:"ମାଲାୟଲମ୍";s:2:"ml";s:30:"ମଙ୍ଗୋଲିଆନ୍";s:2:"mn";s:15:"ମରାଠୀ";s:2:"mr";s:12:"ମାଲୟ";s:2:"ms";s:21:"ମାଲଟୀଜ୍";s:2:"mt";s:30:"ମିରାଣ୍ଡିଜ୍";s:3:"mwl";s:28:"ମାନକ ଆରବିକ";s:6:"ar-001";s:15:"ମାସାଇ";s:3:"mas";s:15:"ମୋହୌକ";s:3:"moh";s:30:"ମୋଲଡୋଭିଆନ୍";s:5:"ro-md";s:12:"ମାରୀ";s:3:"chm";s:46:"ମଧ୍ୟ ପର୍ତ୍ତୁଗାଲୀ";s:3:"dum";s:31:"ମଧ୍ୟ ଇଁରାଜୀ";s:3:"enm";s:34:"ମଧ୍ୟ ଫ୍ରେଞ୍ଚ";s:3:"frm";s:50:"ମିଡିଲ୍ ହାଇ ଜର୍ମାନ୍";s:3:"gmh";s:15:"ମଙ୍ଗୋ";s:3:"lol";s:24:"ମାଦୁରୀସ୍";s:3:"mad";s:18:"ମାଗାହୀ";s:3:"mag";s:18:"ମକାସର୍";s:3:"mak";s:30:"ମାଣ୍ଡିଙ୍ଗୋ";s:3:"man";s:18:"ମନ୍ଦାର";s:3:"mdr";s:18:"ମେଣ୍ଡେ";s:3:"men";s:28:"ମଧ୍ୟ ଇରିଶ୍";s:3:"mga";s:21:"ମିକମୌକ୍";s:3:"mic";s:18:"ମାଞ୍ଚୁ";s:3:"mnc";s:21:"ମଣିପୁରୀ";s:3:"mni";s:12:"ମୋସି";s:3:"mos";s:21:"ମାରୱାରୀ";s:3:"mwr";}i:617;a:48:{s:15:"มานซ์";s:2:"gv";s:12:"ਹੌਸਾ";s:2:"ha";s:12:"ਹਵਾਈ";s:3:"haw";s:15:"ਹਿਬਰੂ";s:2:"he";s:15:"ਹਿੰਦੀ";s:2:"hi";s:18:"ਹੈਤੀਆਈ";s:2:"ht";s:21:"ਹੰਗਰੀਆਈ";s:2:"hu";s:27:"ሉክዘምበርገርኛ";s:2:"lb";s:18:"ሉቴንያንኛ";s:2:"lt";s:15:"มอคชา";s:3:"mdf";s:24:"มาลากาซี";s:2:"mg";s:30:"มาร์แชลลิส";s:2:"mh";s:30:"มีนังกาเบา";s:3:"min";s:30:"มาซิโดเนีย";s:2:"mk";s:27:"มาลายาลัม";s:2:"ml";s:27:"มองโกเลีย";s:2:"mn";s:15:"มราฐี";s:2:"mr";s:33:"มารีตะวันตก";s:3:"mrj";s:18:"มาเลย์";s:2:"ms";s:15:"มอลตา";s:2:"mt";s:21:"มีรันดา";s:3:"mwl";s:33:"มาซันดารานี";s:3:"mzn";s:18:"มาชาเม";s:3:"jmc";s:21:"มาคอนเด";s:3:"kde";s:19:"ሉባ ካታንጋ";s:2:"lu";s:13:"ሉባ-ሉሏ";s:3:"lua";s:6:"ሉኦ";s:3:"luo";s:9:"ሉዪያ";s:3:"luy";s:12:"มาไซ";s:3:"mas";s:24:"มอริสเยน";s:3:"mfe";s:37:"มากัววา-มีทโท";s:3:"mgh";s:18:"มันดัง";s:3:"mua";s:21:"มอลโดวา";s:5:"ro-md";s:13:"ሉሌ ሳሚ";s:3:"smj";s:12:"มารี";s:3:"chm";s:9:"ม้ง";s:3:"hmn";s:15:"มองโก";s:3:"lol";s:18:"มาดูรา";s:3:"mad";s:12:"มคหี";s:3:"mag";s:24:"มากาซาร์";s:3:"mak";s:24:"มันดิงกา";s:3:"man";s:12:"มาบา";s:3:"mde";s:21:"มานดาร์";s:3:"mdr";s:18:"มิกแมก";s:3:"mic";s:21:"มณีปุระ";s:3:"mni";s:21:"มารวาฑี";s:3:"mwr";s:12:"มาฟา";s:3:"maf";s:12:"มยีน";s:3:"mye";}i:364;a:26:{s:9:"曼島文";s:2:"gv";s:33:"താച്ചലിറ്റ്";s:3:"shi";s:31:"തെക്കൻ സാമി";s:3:"sma";s:31:"തെക്കൻ സോതോ";s:2:"st";s:15:"തമിഴ്";s:2:"ta";s:24:"തെലുങ്ക്";s:2:"te";s:18:"താജിക്";s:2:"tg";s:12:"തായ്";s:2:"th";s:27:"തുർക്‌മെൻ";s:2:"tk";s:21:"തഗാലോഗ്";s:2:"tl";s:21:"ത്സ്വാന";s:2:"tn";s:18:"ത്സോംഗ";s:2:"ts";s:24:"താഹിതിയൻ";s:2:"ty";s:24:"തുവിനിയൻ";s:3:"tyv";s:9:"തൈത";s:3:"dav";s:21:"曼德文字 (n’ko)";s:3:"nqo";s:12:"클링온어";s:3:"tlh";s:32:"표준 모로코 타마제크어";s:3:"zgh";s:43:"തെക്കൻ അൾത്തായി";s:3:"alt";s:12:"曼丁哥文";s:3:"man";s:12:"曼达尔文";s:3:"mdr";s:9:"曼達文";s:3:"mdr";s:15:"曼尼普里文";s:3:"mni";s:15:"曼尼普裡文";s:3:"mni";s:18:"തുവാലു";s:3:"tvl";s:21:"തരോക്കോ";s:3:"trv";}i:717;a:9:{s:7:"ḥausa";s:2:"ha";s:12:"ઝુઆગ";s:2:"za";s:12:"ઝુલુ";s:2:"zu";s:15:"ઝર્મા";s:3:"dje";s:21:"ઝેપોટેક";s:3:"zap";s:18:"ઝેનાગા";s:3:"zen";s:12:"ઝૂની";s:3:"zun";s:12:"ઝાઝા";s:3:"zza";s:49:"ઝોરોસ્ટ્રિઅન દારી";s:3:"gbz";}i:745;a:43:{s:12:"હૌસા";s:2:"ha";s:21:"હાવાઇયન";s:3:"haw";s:18:"હીબ્રુ";s:2:"he";s:18:"હિન્દી";s:2:"hi";s:27:"હિલિગેનોન";s:3:"hil";s:25:"હિરી મોટૂ";s:2:"ho";s:18:"હૈતીયન";s:2:"ht";s:24:"હંગેરિયન";s:2:"hu";s:18:"હેરેરો";s:2:"hz";s:15:"ມອກຊາ";s:3:"mdf";s:27:"ມາລາກາສຊີ";s:2:"mg";s:27:"ມາຊານເລັດ";s:2:"mh";s:15:"ມາວຣິ";s:2:"mi";s:24:"ມາເລອາລຳ";s:2:"ml";s:24:"ມອງໂກເລຍ";s:2:"mn";s:18:"ມາຣາທີ";s:2:"mr";s:12:"ມາເລ";s:2:"ms";s:18:"ມອລທີສ";s:2:"mt";s:21:"ມີລັນດາ";s:3:"mwl";s:15:"ມຽນມາ";s:2:"my";s:24:"હિટ્ટિતે";s:3:"hit";s:15:"ມາແຊມ";s:3:"jmc";s:21:"ມາຄອນເດ";s:3:"kde";s:12:"ມາໄຊ";s:3:"mas";s:24:"ມໍຣິສເຢນ";s:3:"mfe";s:34:"ມາຄູວາ-ມີດໂຕ";s:3:"mgh";s:18:"ມັນດັງ";s:3:"mua";s:12:"ມາຣິ";s:3:"chm";s:12:"હૈડા";s:3:"hai";s:9:"ມອງ";s:3:"hmn";s:12:"હૂપા";s:3:"hup";s:18:"ມາດູລາ";s:3:"mad";s:18:"ມາກາຮິ";s:3:"mag";s:21:"ມາກາຊາຣ";s:3:"mak";s:24:"ມັນດິງກາ";s:3:"man";s:12:"ມາບາ";s:3:"mde";s:18:"ມານດາຣ";s:3:"mdr";s:18:"ມິກແມກ";s:3:"mic";s:24:"ມານີພູຣິ";s:3:"mni";s:15:"ມອສຊີ";s:3:"mos";s:18:"ມາວາຣິ";s:3:"mwr";s:12:"ມາຟາ";s:3:"maf";s:15:"ມໍຢິນ";s:3:"mye";}i:492;a:17:{s:10:"האוסה";s:2:"ha";s:14:"האַוסאַ";s:2:"ha";s:12:"הוואית";s:3:"haw";s:16:"העברעאיש";s:2:"he";s:10:"הינדי";s:2:"hi";s:20:"היליגאינון";s:3:"hil";s:17:"הארי מוטו";s:2:"ho";s:12:"האיטית";s:2:"ht";s:14:"הונגרית";s:2:"hu";s:8:"הררו";s:2:"hz";s:14:"הולנדית";s:2:"nl";s:16:"האלענדיש";s:2:"nl";s:19:"הולה-פוניי";s:3:"dyo";s:12:"ヌエル語";s:3:"nus";s:27:"הולנדית תיכונה";s:3:"dum";s:10:"האידה";s:3:"hai";s:8:"הופה";s:3:"hup";}i:336;a:13:{s:15:"ჰაუსა";s:2:"ha";s:24:"ჰავაიური";s:3:"haw";s:15:"ჰინდი";s:2:"hi";s:24:"ჰაიტიური";s:2:"ht";s:12:"루샤이어";s:3:"lus";s:15:"루마니아어";s:2:"ro";s:9:"루신어";s:3:"rue";s:19:"루바-카탄가어";s:2:"lu";s:19:"루바-룰루아어";s:3:"lua";s:9:"루오어";s:3:"luo";s:9:"루야어";s:3:"luy";s:49:"ഈസ്റ്റേൺ ഫ്രിഷ്യൻ";s:3:"frs";s:15:"루이세노어";s:3:"lui";}i:257;a:15:{s:12:"ಹೌಸಾ";s:2:"ha";s:24:"ಹವಾಯಿಯನ್";s:3:"haw";s:24:"ಹೀಬ್ರ್ಯೂ";s:2:"he";s:15:"ಹಿಂದಿ";s:2:"hi";s:27:"ಹಿಲಿಗೇನನ್";s:3:"hil";s:25:"ಹಿರಿ ಮೊಟು";s:2:"ho";s:21:"ಹೈತಿಯನ್";s:2:"ht";s:27:"ಹಂಗೇರಿಯನ್";s:2:"hu";s:18:"ಹೆರೆರೊ";s:2:"hz";s:19:"өмнөд сами";s:3:"sma";s:10:"өзбек";s:2:"uz";s:14:"өзбекче";s:2:"uz";s:24:"ಹಿಟ್ಟಿಟೆ";s:3:"hit";s:12:"ಹೈಡಾ";s:3:"hai";s:12:"ಹೂಪಾ";s:3:"hup";}i:385;a:21:{s:9:"ഹൗസ";s:2:"ha";s:21:"ഹവായിയൻ";s:3:"haw";s:18:"ഹീബ്രു";s:2:"he";s:18:"ഹിന്ദി";s:2:"hi";s:30:"ഹിലിഗയ്നോൺ";s:3:"hil";s:25:"ഹിരി മോതു";s:2:"ho";s:27:"ഹെയ്‌തിയൻ";s:2:"ht";s:24:"ഹംഗേറിയൻ";s:2:"hu";s:18:"ഹെരേരൊ";s:2:"hz";s:18:"թամիլերեն";s:2:"ta";s:16:"թելուգու";s:2:"te";s:14:"թայերեն";s:2:"th";s:16:"թիգրինիա";s:2:"ti";s:24:"թուրքմեներեն";s:2:"tk";s:18:"թուրքերեն";s:2:"tr";s:18:"թաթարերեն";s:2:"tt";s:10:"թաիթա";s:3:"dav";s:30:"ഹിറ്റൈറ്റേ";s:3:"hit";s:9:"ഹൈഡ";s:3:"hai";s:9:"ഹൂപ";s:3:"hup";s:6:"满文";s:3:"mnc";}i:294;a:13:{s:6:"Ħawsa";s:2:"ha";s:9:"Ħawajjan";s:3:"haw";s:6:"Ħindi";s:2:"hi";s:10:"Ħiri motu";s:2:"ho";s:7:"Ħerero";s:2:"hz";s:9:"圖盧文";s:3:"tcy";s:12:"圖羅尤文";s:3:"tru";s:15:"圖姆布卡文";s:3:"tum";s:6:"Ħoża";s:2:"xh";s:7:"Ħittit";s:3:"hit";s:6:"Ħajda";s:3:"hai";s:6:"Ħmong";s:3:"hmn";s:5:"Ħupa";s:3:"hup";}i:127;a:9:{s:15:"ဟာဥစာ";s:2:"ha";s:18:"ဟာဝေယံ";s:3:"haw";s:21:"ဟီးဘရူး";s:2:"he";s:18:"ဟိန္ဒီ";s:2:"hi";s:27:"ဟာအီတီအန်";s:2:"ht";s:21:"ဟန်ဂေရီ";s:2:"hu";s:9:"షోన";s:2:"sn";s:12:"షోసా";s:2:"xh";s:12:"షాన్";s:3:"shn";}i:524;a:7:{s:12:"හෝසා";s:2:"ha";s:15:"හවායි";s:3:"haw";s:12:"හීබෲ";s:2:"he";s:18:"හින්දි";s:2:"hi";s:15:"හයිටි";s:2:"ht";s:33:"හන්ගේරියානු";s:2:"hu";s:12:"レズギ語";s:3:"lez";}i:1;a:12:{s:12:"ஹௌஸா";s:2:"ha";s:24:"ஹவாயியன்";s:3:"haw";s:18:"ஹீப்ரூ";s:2:"he";s:36:"ஹிலிகாய்னான்";s:3:"hil";s:31:"ஹிரி மோட்டு";s:2:"ho";s:27:"ஹைத்தியன்";s:2:"ht";s:30:"ஹங்கேரியன்";s:2:"hu";s:18:"ஹெரேரோ";s:2:"hz";s:12:"ஹோசா";s:2:"xh";s:24:"ஹிட்டைட்";s:3:"hit";s:12:"ஹைடா";s:3:"hai";s:12:"ஹுபா";s:3:"hup";}i:946;a:2:{s:9:"豪萨文";s:2:"ha";s:9:"豪撒文";s:2:"ha";}i:758;a:10:{s:21:"ຮາໄວອຽນ";s:3:"haw";s:18:"ຮີບຣິວ";s:2:"he";s:15:"ຮິນດິ";s:2:"hi";s:27:"ຮິຣິໄກນອນ";s:3:"hil";s:24:"ຮິຣິໂມຕູ";s:2:"ho";s:24:"ຮັງກາຣຽນ";s:2:"hu";s:40:"ኖርዌይኛ (ናይ ኝኖርስክ)";s:2:"nn";s:18:"ኖርዌጂያን";s:2:"no";s:15:"ຮິດໄຕ";s:3:"hit";s:12:"ຮູປາ";s:3:"hup";}i:630;a:9:{s:15:"ฮาวาย";s:3:"haw";s:15:"ฮิบรู";s:2:"he";s:15:"ฮินดี";s:2:"hi";s:27:"ฮินดีฟิจิ";s:3:"hif";s:27:"ฮีลีกัยนน";s:3:"hil";s:24:"ฮีรีโมตู";s:2:"ho";s:21:"ฮังการี";s:2:"hu";s:21:"ฮิตไตต์";s:3:"hit";s:12:"ฮูปา";s:3:"hup";}i:504;a:35:{s:15:"ヘブライ語";s:2:"he";s:12:"ヘレロ語";s:2:"hz";s:12:"נאורית";s:2:"na";s:18:"נפוליטנית";s:3:"nap";s:26:"נאַפּאליטַניש";s:3:"nap";s:20:"נידערדײַטש";s:3:"nds";s:12:"נפאלית";s:2:"ne";s:18:"נעפּאַליש";s:2:"ne";s:12:"נווארי";s:3:"new";s:12:"נדונגה";s:2:"ng";s:14:"ניואיאן";s:3:"niu";s:23:"נורבגית חדשה";s:2:"nn";s:26:"נײַ־נארוועגיש";s:2:"nn";s:14:"נורבגית";s:2:"no";s:18:"נארוועגיש";s:2:"no";s:8:"נבחו";s:2:"nv";s:14:"ניאנג׳ה";s:2:"ny";s:12:"潘加辛文";s:3:"pag";s:12:"潘帕嘉文";s:3:"pam";s:20:"נארדסאַמיש";s:2:"se";s:10:"נגומה";s:3:"jgo";s:8:"נאמה";s:3:"naq";s:8:"נ׳קו";s:3:"nqo";s:8:"נואר";s:3:"nus";s:16:"ניאנקולה";s:3:"nyn";s:19:"ניב צ׳ינוק";s:3:"chn";s:8:"ניאס";s:3:"nia";s:10:"נוגאי";s:3:"nog";s:27:"נווארית קלאסית";s:3:"nwc";s:16:"ניאמווזי";s:3:"nym";s:10:"ניורו";s:3:"nyo";s:10:"נזימה";s:3:"nzi";s:12:"נגמבאי";s:3:"sba";s:21:"ניאסה טונגה";s:3:"tog";s:16:"נגיאמבון";s:3:"nnh";}i:71;a:3:{s:10:"Яҳудӣ";s:2:"he";s:38:"Яҳудии Аврупои шарқӣ";s:2:"yi";s:9:"ᏏᏂᎦ";s:3:"see";}i:498;a:4:{s:18:"ヒンディー語";s:2:"hi";s:21:"ヒリガイノン語";s:3:"hil";s:15:"ヒリモツ語";s:2:"ho";s:18:"ヒッタイト語";s:3:"hit";}i:180;a:1:{s:9:"힌디어";s:2:"hi";}i:951;a:14:{s:15:"இந்தி";s:2:"hi";s:36:"இண்டர்லிங்வா";s:2:"ia";s:36:"இந்தோனேஷியன்";s:2:"id";s:30:"இன்டர்லிங்";s:2:"ie";s:15:"இக்போ";s:2:"ig";s:27:"இனுபியாக்";s:2:"ik";s:15:"இலோகோ";s:3:"ilo";s:21:"இங்குஷ்";s:3:"inh";s:9:"இடோ";s:2:"io";s:30:"இத்தாலியன்";s:2:"it";s:27:"இனுகிடூட்";s:2:"iu";s:21:"இத்திஷ்";s:2:"yi";s:25:"இனாரி சமி";s:3:"smn";s:15:"இபான்";s:3:"iba";}i:202;a:3:{s:10:"Ҳиндӣ";s:2:"hi";s:6:"Ênnde";s:2:"it";s:16:"Ҳолландӣ";s:2:"nl";}i:756;a:4:{s:15:"헤리가뇬어";s:3:"hil";s:12:"헤레로어";s:2:"hz";s:12:"ኔፓሊኛ";s:2:"ne";s:12:"ኔፖሊኛ";s:2:"ne";}i:61;a:10:{s:20:"Хилигајнон";s:3:"hil";s:17:"Хири Моту";s:2:"ho";s:14:"Хаитски";s:2:"ht";s:12:"Хереро";s:2:"hz";s:18:"Хаһаахтыы";s:2:"kk";s:9:"巽他文";s:2:"su";s:12:"Хитите";s:3:"hit";s:10:"Хаида";s:3:"hai";s:10:"Хмонг";s:3:"hmn";s:8:"Хупа";s:3:"hup";}i:781;a:5:{s:18:"ክሮሽያንኛ";s:2:"hr";s:28:"ክመርኛ ማእከላዊ";s:2:"km";s:12:"ክዋሲዮ";s:3:"nmg";s:18:"ክሊንጎንኛ";s:3:"tlh";s:21:"ክሊንግኦንኛ";s:3:"tlh";}i:389;a:2:{s:20:"խորվաթերեն";s:2:"hr";s:12:"處奇斯文";s:3:"chk";}i:252;a:4:{s:10:"ülemsorbi";s:3:"hsb";s:15:"포르투갈어";s:2:"pt";s:27:"포르투갈어 (브라질)";s:5:"pt-br";s:7:"üzbég";s:2:"uz";}i:314;a:25:{s:37:"ऊपरी सॉर्बियन";s:3:"hsb";s:21:"ლოჟბანი";s:3:"jbo";s:24:"ლათინური";s:2:"la";s:18:"ლადინო";s:3:"lad";s:39:"ლუქსემბურგული";s:2:"lb";s:24:"ლეზგიური";s:3:"lez";s:30:"ლიმბურგული";s:2:"li";s:21:"ლინგალა";s:2:"ln";s:21:"ლაოსური";s:2:"lo";s:12:"ლოზი";s:3:"loz";s:21:"ლიტვური";s:2:"lt";s:24:"ლატვიური";s:2:"lv";s:15:"ლანგი";s:3:"lag";s:18:"ლაკოტა";s:3:"lkt";s:34:"ლუბა-კატანგა";s:2:"lu";s:28:"ლუბა-კასაი";s:3:"lua";s:9:"ლუო";s:3:"luo";s:15:"ლუჰია";s:3:"luy";s:34:"ლულე-საამური";s:3:"smj";s:78:"ლინგვისტური შიგთავსი არ არის";s:3:"zxx";s:74:"ლათინურ ამერიკული ესპანური";s:6:"es-419";s:15:"ლანდა";s:3:"lah";s:15:"ლამბა";s:3:"lam";s:24:"ლუისენიო";s:3:"lui";s:15:"ლუნდა";s:3:"lun";}i:978;a:2:{s:18:"上ソルビア語";s:3:"hsb";s:12:"上索布文";s:3:"hsb";}i:23;a:5:{s:9:"海地文";s:2:"ht";s:15:"ជប៉ុន";s:2:"ja";s:12:"ជ្វា";s:2:"jv";s:9:"海达文";s:3:"hai";s:9:"海達文";s:3:"hai";}i:749;a:21:{s:12:"헝가리어";s:2:"hu";s:15:"ລາຕິນ";s:2:"la";s:18:"ລາດີໂນ";s:3:"lad";s:36:"ລັກເຊມບວກກິຊ";s:2:"lb";s:15:"ລີຊຽນ";s:3:"lez";s:27:"ລິມເບີກີຊ";s:2:"li";s:21:"ລິງກາລາ";s:2:"ln";s:9:"ລາວ";s:2:"lo";s:24:"ລິທົວນຽນ";s:2:"lt";s:12:"ລູໄຊ";s:3:"lus";s:18:"ລັດວຽນ";s:2:"lv";s:18:"ລາໂກຕາ";s:3:"lkt";s:34:"ລູບາ-ຄາຕັງກາ";s:2:"lu";s:28:"ລູບາ-ລູລົວ";s:3:"lua";s:9:"ລົວ";s:3:"luo";s:12:"ລູໄຍ";s:3:"luy";s:21:"ລຸນຊາມິ";s:3:"smj";s:68:"ລາຕິນ ອາເມຣິກັນ ສະແປນນິຊ";s:6:"es-419";s:15:"ລານດາ";s:3:"lah";s:18:"ລູເຊໂນ";s:3:"lui";s:15:"ລຸນດາ";s:3:"lun";}i:203;a:5:{s:12:"赫雷罗文";s:2:"hz";s:12:"赫雷羅文";s:2:"hz";s:27:"​​ស៊ីន្តី";s:2:"sd";s:9:"赫梯文";s:3:"hit";s:9:"赫蒙文";s:3:"hmn";}i:695;a:13:{s:30:"ઇંટરલિંગુઆ";s:2:"ia";s:33:"ઇન્ડોનેશિયન";s:2:"id";s:24:"ઇંટરલિંગ";s:2:"ie";s:15:"ઇગ્બો";s:2:"ig";s:24:"ઇનુપિયાક";s:2:"ik";s:15:"ઇલોકો";s:3:"ilo";s:15:"ઇંગુશ";s:3:"inh";s:9:"ઇડૌ";s:2:"io";s:21:"ઇટાલિયન";s:2:"it";s:24:"ઇનુકિટૂટ";s:2:"iu";s:28:"ઇનારી સામી";s:3:"smn";s:21:"ઇવોન્ડો";s:3:"ewo";s:12:"ઇબાન";s:3:"iba";}i:339;a:3:{s:24:"Ինտերլինգուա";s:2:"ia";s:18:"Ինտերլինգ";s:2:"ie";s:8:"Իդիշ";s:2:"yi";}i:283;a:2:{s:9:"國際文";s:2:"ia";s:16:"國際文(e)";s:2:"ie";}i:234;a:10:{s:9:"伊布文";s:2:"ig";s:15:"伊洛干诺文";s:3:"ilo";s:12:"伊洛闊文";s:3:"ilo";s:9:"伊多文";s:2:"io";s:9:"越南文";s:2:"vi";s:18:"伊纳里萨米文";s:3:"smn";s:18:"伊納裡薩米文";s:3:"smn";s:9:"伊班文";s:3:"iba";s:15:"伊比比奥文";s:3:"ibb";s:15:"伊比比奧文";s:3:"ibb";}i:658;a:4:{s:15:"ሲቹንዪኛ";s:2:"ii";s:15:"ሲንድሂኛ";s:2:"sd";s:15:"ሲንሃልኛ";s:2:"si";s:12:"ሲዳምኛ";s:3:"sid";}i:416;a:1:{s:13:"쓰촨 이어";s:2:"ii";}i:59;a:9:{s:14:"Унупиак";s:2:"ik";s:12:"Урисоӣ";s:2:"or";s:12:"Удмурт";s:3:"udm";s:18:"Уйгуурдуу";s:2:"ug";s:28:"Украйыыньыстыы";s:2:"uk";s:14:"Украинӣ";s:2:"uk";s:8:"Урду";s:2:"ur";s:18:"Угаритски";s:3:"uga";s:14:"Умбунду";s:3:"umb";}i:912;a:2:{s:9:"冰岛文";s:2:"is";s:9:"冰島文";s:2:"is";}i:899;a:1:{s:15:"ጣሊያንኛ";s:2:"it";}i:847;a:9:{s:12:"意大利文";s:2:"it";s:27:"ଟ୍ରିଗିନିଆ";s:2:"ti";s:21:"ଟାଗାଲଗ୍";s:2:"tl";s:18:"ଟୋଙ୍ଗା";s:2:"to";s:31:"ଟୋକ୍ ପିସିନ୍";s:3:"tpi";s:24:"ଟୁମ୍ବୁକା";s:3:"tum";s:12:"意第緒文";s:2:"yi";s:21:"ଟାଇଗ୍ରେ";s:3:"tig";s:21:"ଟୋକେଲାଉ";s:3:"tkl";}i:681;a:8:{s:12:"義大利文";s:2:"it";s:12:"恩东加文";s:2:"ng";s:12:"恩東加文";s:2:"ng";s:9:"恩布文";s:3:"ebu";s:9:"恩艮巴";s:3:"jgo";s:15:"恩格姆巴文";s:3:"jgo";s:12:"恩济马文";s:3:"nzi";s:12:"恩甘澎文";s:3:"nnh";}i:240;a:21:{s:12:"因纽特文";s:2:"iu";s:12:"因紐特文";s:2:"iu";s:12:"ನೌರು";s:2:"na";s:33:"ನಿಯಾಪೊಲಿಟನ್";s:3:"nap";s:55:"ನಾರ್ವೆಜಿಯನ್ ಬೊಕ್ಮಲ್";s:2:"nb";s:18:"ನೇಪಾಳಿ";s:2:"ne";s:18:"ನೇವಾರೀ";s:3:"new";s:21:"ನಿಯುವನ್";s:3:"niu";s:58:"ನಾರ್ವೆಜಿಯನ್ ನೈನೊಸ್ಕ್";s:2:"nn";s:33:"ನಾರ್ವೇಜಿಯನ್";s:2:"no";s:15:"ನವಾಜೊ";s:2:"nv";s:21:"ನ್ಯಾಂಜಾ";s:2:"ny";s:15:"ನೊಂಬಾ";s:3:"jgo";s:6:"ನಮ";s:3:"naq";s:15:"ನೂಯರ್";s:3:"nus";s:33:"ನ್ಯಾನ್‌ಕೋಲೆ";s:3:"nyn";s:18:"ನಿಯಾಸ್";s:3:"nia";s:18:"ನೊಗಾಯ್";s:3:"nog";s:36:"ನ್ಯಾಮ್‌ವೆಂಜಿ";s:3:"nym";s:18:"ನ್ಯೋರೋ";s:3:"nyo";s:34:"ನ್ಯಾಸಾ ಟೋಂಗಾ";s:3:"tog";}i:867;a:4:{s:12:"ጃፓንኛ";s:2:"ja";s:12:"ጃቫንኛ";s:2:"jv";s:9:"韓国語";s:2:"ko";s:6:"韓文";s:2:"ko";}i:395;a:4:{s:18:"ճապոներեն";s:2:"ja";s:18:"ճավայերեն";s:2:"jv";s:12:"望加锡文";s:3:"mak";s:12:"望加錫文";s:3:"mak";}i:68;a:1:{s:9:"일본어";s:2:"ja";}i:725;a:6:{s:21:"ຍີ່ປຸ່ນ";s:2:"ja";s:9:"થાઈ";s:2:"th";s:12:"ትግርኛ";s:2:"ti";s:9:"ትዊኛ";s:2:"tw";s:6:"ትዊ";s:2:"tw";s:9:"ትግረ";s:3:"tig";}i:273;a:2:{s:27:"牙買加克裏奧爾英文";s:3:"jam";s:5:"đula";s:3:"dyu";}i:525;a:11:{s:15:"ロジバン語";s:3:"jbo";s:18:"ロンバルド語";s:3:"lmo";s:9:"ロジ語";s:3:"loz";s:18:"ロマーニャ語";s:3:"rgn";s:18:"ロマンシュ語";s:2:"rm";s:9:"ロマ語";s:3:"rmy";s:12:"ロシア語";s:2:"ru";s:12:"ロンボ語";s:3:"rof";s:18:"ロマーニー語";s:3:"rom";s:12:"ロツマ語";s:3:"rtm";s:18:"ロヴィアナ語";s:3:"rug";}i:866;a:24:{s:21:"ଲୋଜବାନ୍";s:3:"jbo";s:18:"ଲାଟିନ୍";s:2:"la";s:18:"ଲାଦିନୋ";s:3:"lad";s:39:"ଲକ୍ସେମବର୍ଗିସ୍";s:2:"lb";s:27:"ଲେଜଗିୟାନ୍";s:3:"lez";s:36:"ଲିମ୍ବୁର୍ଗିସ୍";s:2:"li";s:24:"ଲିଙ୍ଗାଲା";s:2:"ln";s:9:"ଲାଓ";s:2:"lo";s:12:"ଲୋଜି";s:3:"loz";s:30:"ଲିଥୁଆନିଆନ୍";s:2:"lt";s:15:"ଲୁସାଉ";s:3:"lus";s:24:"ଲାଟଭିଆନ୍";s:2:"lv";s:28:"ଲୋ ଜର୍ମାନ୍";s:3:"nds";s:43:"ଲ୍ୟୁବା-କାଟାଙ୍ଗା";s:2:"lu";s:28:"ଲୁବା-ଲୁଲୁଆ";s:3:"lua";s:9:"ଲୁଓ";s:3:"luo";s:25:"ଲୁଲେ ସାମି";s:3:"smj";s:71:"ଲାଟିନ୍ ଆମେରିକାନ୍ ସ୍ପାନିଶ୍";s:6:"es-419";s:52:"ଲେବେରିଆନ୍ ସ୍ପାନିଶ୍";s:5:"es-es";s:61:"ଲେବେରିଆନ୍ ପର୍ତ୍ତୁଗୀଜ୍";s:5:"pt-pt";s:24:"ଲାହାଣ୍ଡା";s:3:"lah";s:18:"ଲାମ୍ବା";s:3:"lam";s:21:"ଲୁଇସେନୋ";s:3:"lui";s:18:"ଲୁଣ୍ଡା";s:3:"lun";}i:51;a:18:{s:12:"Лојбан";s:3:"jbo";s:18:"Латыынныы";s:2:"la";s:12:"Лотинӣ";s:2:"la";s:12:"Ладино";s:3:"lad";s:14:"Лезгиан";s:3:"lez";s:18:"Лимбургиш";s:2:"li";s:10:"Лаосӣ";s:2:"lo";s:8:"Лози";s:3:"loz";s:14:"Литвонӣ";s:2:"lt";s:10:"Лушаи";s:3:"lus";s:16:"Латвиягӣ";s:2:"lv";s:21:"賓夕法尼亞德文";s:3:"pdc";s:18:"Лаҳистонӣ";s:2:"pl";s:19:"Луба-лулуа";s:3:"lua";s:10:"Ланда";s:3:"lah";s:10:"Ламба";s:3:"lam";s:14:"Луисено";s:3:"lui";s:10:"Лунда";s:3:"lun";}i:7;a:1:{s:9:"邏輯文";s:3:"jbo";}i:518;a:3:{s:18:"ユトランド語";s:3:"jut";s:27:"ユダヤ・ペルシア語";s:3:"jpr";s:27:"ユダヤ・アラビア語";s:3:"jrb";}i:720;a:10:{s:21:"ຈາແວນີສ";s:2:"jv";s:15:"ຈໍຈຽນ";s:2:"ka";s:12:"ተሉጉኛ";s:2:"te";s:9:"ຈີນ";s:2:"zh";s:39:"ຈີນແບບຮຽບງ່າຍ";s:7:"zh-hans";s:42:"ຈີນແບບດັ້ງເດີມ";s:7:"zh-hant";s:34:"ຈູແດວ-ເພີຊຽນ";s:3:"jpr";s:37:"ຈູແດວ-ອາລາບິກ";s:3:"jrb";s:9:"ຈຣູ";s:3:"kaj";s:21:"ຈີ່ມບູນ";s:3:"nnh";}i:870;a:7:{s:15:"ጆርጂያን";s:2:"ka";s:12:"ଶୋନା";s:2:"sn";s:37:"ଶାରାନା ଟୋଙ୍ଗୋ";s:3:"srn";s:19:"ጆላ ፎንያኛ";s:3:"dyo";s:12:"ଶାନ୍";s:3:"shn";s:18:"ଶେରେର୍";s:3:"srr";s:12:"ଶୁଶୁ";s:3:"sus";}i:684;a:5:{s:15:"格鲁吉亚文";s:2:"ka";s:12:"格陵兰文";s:2:"kl";s:12:"格陵蘭文";s:2:"kl";s:12:"格列博文";s:3:"grb";s:9:"뉴로어";s:3:"nyo";}i:964;a:1:{s:12:"커바일어";s:3:"kab";}i:18;a:5:{s:9:"刚果文";s:2:"kg";s:36:"គៀរហ្គីស្តង់";s:2:"ky";s:12:"刚卡尼文";s:3:"kok";s:21:"刚果斯瓦希里文";s:3:"swc";s:57:"គ្មាន​ទិន្នន័យ​ភាសា";s:3:"zxx";}i:412;a:10:{s:12:"키쿠유어";s:2:"ki";s:16:"քմերերեն";s:2:"km";s:20:"քաշմիրերեն";s:2:"ks";s:14:"քրդերեն";s:2:"ku";s:15:"키르기스어";s:2:"ky";s:12:"քեչուա";s:2:"qu";s:22:"քինյարվանդա";s:2:"rw";s:10:"քսոզա";s:2:"xh";s:9:"키체어";s:3:"quc";s:15:"키리바시어";s:3:"gil";}i:485;a:1:{s:12:"宽亚玛文";s:2:"kj";}i:291;a:1:{s:12:"廣亞馬文";s:2:"kj";}i:179;a:7:{s:14:"қазақша";s:2:"kk";s:19:"қазақ тілі";s:2:"kk";s:30:"қазақша (кирил)‎";s:7:"kk-cyrl";s:38:"қазақша (Қазақстан)‎";s:5:"kk-kz";s:21:"қырғыз тілі";s:2:"ky";s:19:"қытай тілі";s:2:"zh";s:53:"қазіргі стандартты араб тілі";s:6:"ar-001";}i:394;a:2:{s:18:"ղազախերեն";s:2:"kk";s:16:"ղրղզերեն";s:2:"ky";}i:905;a:3:{s:24:"ཁེ་མེར་ཁ";s:2:"km";s:42:"ཁོ་རེ་ཡའི་སྐད།";s:2:"ko";s:33:"ཁ་ངོ་མ་ཤེསཔ";s:3:"und";}i:326;a:9:{s:12:"खमेर";s:2:"km";s:15:"ख्मेर";s:2:"km";s:15:"ख़ोसा";s:2:"xh";s:12:"खोसा";s:2:"xh";s:8:"ņankolu";s:3:"nyn";s:12:"खासी";s:3:"kha";s:21:"खोतानीस";s:3:"kho";s:8:"ņamvezu";s:3:"nym";s:5:"ņoru";s:3:"nyo";}i:17;a:2:{s:15:"ខ្មែរ";s:2:"km";s:24:"ខ្លិងសុន";s:3:"tlh";}i:222;a:10:{s:15:"ಖಮೇರ್";s:2:"km";s:18:"普法爾茨德文";s:3:"pfl";s:12:"普魯士文";s:3:"prg";s:12:"普什图文";s:2:"ps";s:12:"普什圖文";s:2:"ps";s:24:"ಖ್ವಾಸಿಯೊ";s:3:"nmg";s:12:"ಖಾಸಿ";s:3:"kha";s:24:"ಖೋಟಾನೀಸ್";s:3:"kho";s:15:"普罗文斯文";s:3:"pro";s:21:"„bliss“ simbolių";s:3:"zbl";}i:868;a:2:{s:15:"캄보디아어";s:2:"km";s:9:"캄바어";s:3:"kam";}i:838;a:7:{s:18:"ଖ୍ମେର୍";s:2:"km";s:12:"ẞlovakesch";s:2:"sk";s:13:"ẞloveenesch";s:2:"sl";s:12:"ଖୋସା";s:2:"xh";s:9:"迦约文";s:3:"gay";s:12:"ଖାସୀ";s:3:"kha";s:24:"ଖୋତାନୀଜ୍";s:3:"kho";}i:620;a:3:{s:9:"한국어";s:2:"ko";s:18:"한국어 (조선)";s:5:"ko-kp";s:15:"까꼬토끄어";s:3:"kaj";}i:889;a:3:{s:6:"韩文";s:2:"ko";s:12:"葡萄牙文";s:2:"pt";s:24:"葡萄牙文(歐洲)";s:5:"pt-pt";}i:622;a:15:{s:27:"塞拉利昂克裏奧爾文";s:3:"kri";s:9:"ሎዚኛ";s:3:"loz";s:28:"塞尔维亚-克罗地亚文";s:2:"sh";s:30:"塞爾維亞克羅埃西亞文";s:2:"sh";s:15:"塞內加爾文";s:2:"sn";s:15:"塞尔维亚文";s:2:"sr";s:15:"塞爾維亞文";s:2:"sr";s:12:"塞索托文";s:2:"st";s:15:"塞茨瓦纳文";s:2:"tn";s:9:"塞纳文";s:3:"seh";s:15:"塞尔库普文";s:3:"sel";s:12:"塞雷爾文";s:3:"srr";s:12:"塞内卡文";s:3:"see";s:12:"塞訥卡文";s:3:"see";s:12:"塞拉亞文";s:3:"sly";}i:522;a:10:{s:15:"基那來阿文";s:3:"krj";s:36:"リングア・フランカ・ノバ";s:3:"lfn";s:18:"リンブルフ語";s:2:"li";s:15:"リグリア語";s:3:"lij";s:18:"リヴォニア語";s:3:"liv";s:15:"リンガラ語";s:2:"ln";s:18:"リトアニア語";s:2:"lt";s:12:"リーフ語";s:3:"rif";s:12:"基隆迪文";s:2:"rn";s:9:"基切文";s:3:"quc";}i:888;a:9:{s:15:"喀什米爾文";s:2:"ks";s:9:"신디어";s:2:"sd";s:12:"泰米尔文";s:2:"ta";s:12:"泰卢固文";s:2:"te";s:12:"泰盧固文";s:2:"te";s:9:"泰頓文";s:3:"tet";s:6:"泰文";s:2:"th";s:12:"泰雷諾文";s:3:"ter";s:19:"튀니지 아랍어";s:3:"aeb";}i:19;a:2:{s:9:"ឃឺដ";s:2:"ku";s:9:"ឃសា";s:2:"xh";}i:211;a:5:{s:12:"库尔德文";s:2:"ku";s:12:"库鲁克文";s:3:"kru";s:12:"库梅克文";s:3:"kum";s:12:"库特内文";s:3:"kut";s:8:"Óisibis";s:2:"oj";}i:247;a:10:{s:12:"康瓦耳文";s:2:"kw";s:18:"ಯಾಕುಟ್";s:3:"sah";s:21:"ಯಡ್ಡಿಶ್";s:2:"yi";s:18:"ಯೊರುಬಾ";s:2:"yo";s:77:"ಯಾವುದೇ ಭಾಷಾಸಂಬಂಧಿ ವಿಷಯವಿಲ್ಲ";s:3:"zxx";s:58:"ಯುರೋಪಿಯನ್ ಸ್ಪ್ಯಾನಿಷ್";s:5:"es-es";s:58:"ಯೂರೋಪಿಯನ್ ಪೋರ್ಚುಗೀಸ್";s:5:"pt-pt";s:9:"ಯಾಓ";s:3:"yao";s:15:"ಯಪೀಸೆ";s:3:"yap";s:9:"康姆文";s:3:"bkm";}i:178;a:2:{s:14:"Қирғизӣ";s:2:"ky";s:9:"干達文";s:2:"lg";}i:619;a:15:{s:12:"ላቲንኛ";s:2:"la";s:12:"ላውስኛ";s:2:"lo";s:15:"ላትቪያን";s:2:"lv";s:15:"ላቲቪያን";s:2:"lv";s:24:"ริฟฟิอัน";s:3:"rif";s:21:"รัสเซีย";s:2:"ru";s:15:"รูซิน";s:3:"rue";s:18:"รวันดา";s:2:"rw";s:9:"ላንጊ";s:3:"lag";s:9:"ላኮታ";s:3:"lkt";s:15:"รอมโบ";s:3:"rof";s:9:"รวา";s:3:"rwk";s:21:"ราชสถาน";s:3:"raj";s:18:"ราปานู";s:3:"rap";s:27:"ราโรทองกา";s:3:"rar";}i:388;a:14:{s:18:"լատիներեն";s:2:"la";s:34:"լյուքսեմբուրգերեն";s:2:"lb";s:14:"լինգալա";s:2:"ln";s:16:"լաոսերեն";s:2:"lo";s:16:"լիտվերեն";s:2:"lt";s:18:"լատվիերեն";s:2:"lv";s:14:"լեհերեն";s:2:"pl";s:10:"լանգի";s:3:"lag";s:12:"լակոտա";s:3:"lkt";s:25:"լուբա-կատանգա";s:2:"lu";s:8:"լուո";s:3:"luo";s:10:"լույա";s:3:"luy";s:19:"լուլե սամի";s:3:"smj";s:49:"լատինաամերիկյան իսպաներեն";s:6:"es-419";}i:49;a:6:{s:18:"ឡាតំាង";s:2:"la";s:9:"ឡាវ";s:2:"lo";s:24:"ឡាតវីយ៉ា";s:2:"lv";s:12:"旁遮普文";s:2:"pa";s:15:"旁狄希臘文";s:3:"pnt";s:9:"팡그어";s:3:"fan";}i:124;a:13:{s:18:"လက်တင်";s:2:"la";s:30:"လူဇင်ဘတ်က်";s:2:"lb";s:21:"လင်ဂါလာ";s:2:"ln";s:15:"လာအို";s:2:"lo";s:33:"လစ္သူအာနီယံ";s:2:"lt";s:21:"လက္ဘီအံ";s:2:"lv";s:15:"လန်ဂီ";s:3:"lag";s:21:"လာကိုတာ";s:3:"lkt";s:34:"လူဘာ-ခါတန်ဂါ";s:2:"lu";s:15:"လူအို";s:3:"luo";s:18:"လူရီအာ";s:3:"luy";s:25:"လူလီ ဆာမိ";s:3:"smj";s:52:"လက်တင်အမေရိက စပိန်";s:6:"es-419";}i:621;a:23:{s:15:"ละติน";s:2:"la";s:18:"ลาดิโน";s:3:"lad";s:36:"ลักเซมเบิร์ก";s:2:"lb";s:48:"ลิงกัวฟรังกาโนวา";s:3:"lfn";s:27:"ลิมเบิร์ก";s:2:"li";s:24:"ลิกูเรีย";s:3:"lij";s:24:"ลิโวเนีย";s:3:"liv";s:24:"ลอมบาร์ด";s:3:"lmo";s:21:"ลิงกาลา";s:2:"ln";s:9:"ลาว";s:2:"lo";s:27:"ลิทัวเนีย";s:2:"lt";s:18:"ลัตเกล";s:3:"ltg";s:12:"ลูไช";s:3:"lus";s:21:"ลัตเวีย";s:2:"lv";s:12:"ልቤኒኛ";s:2:"sq";s:18:"ลาโกตา";s:3:"lkt";s:34:"ลูบา-กาตองกา";s:2:"lu";s:28:"ลูบา-ลูลัว";s:3:"lua";s:9:"ลัว";s:3:"luo";s:18:"ลูเยีย";s:3:"luy";s:21:"ลาฮ์นดา";s:3:"lah";s:21:"ลุยเซโน";s:3:"lui";s:15:"ลันดา";s:3:"lun";}i:289;a:17:{s:9:"拉丁文";s:2:"la";s:12:"拉迪诺文";s:3:"lad";s:12:"拉迪諾文";s:3:"lad";s:15:"拉特加萊文";s:3:"ltg";s:15:"拉脱维亚文";s:2:"lv";s:15:"拉脫維亞文";s:2:"lv";s:9:"拉茲文";s:3:"lzz";s:12:"拉科塔文";s:3:"lkt";s:15:"ꅉꀋꌠꅇꂷ";s:3:"und";s:24:"拉丁美洲西班牙文";s:6:"es-419";s:12:"拉亨达文";s:3:"lah";s:12:"拉亨達文";s:3:"lah";s:15:"拉贾斯坦文";s:3:"raj";s:18:"拉賈斯坦諸文";s:3:"raj";s:15:"拉帕努伊文";s:3:"rap";s:15:"拉罗汤加文";s:3:"rar";s:15:"拉羅通加文";s:3:"rar";}i:15;a:1:{s:12:"列茲干文";s:3:"lez";}i:553;a:2:{s:26:"링구아 프랑카 노바";s:3:"lfn";s:12:"링갈라어";s:2:"ln";}i:618;a:10:{s:21:"ยูกันดา";s:2:"lg";s:15:"ሊንጋላኛ";s:2:"ln";s:18:"ሊቱአኒየን";s:2:"lt";s:18:"ยูเครน";s:2:"uk";s:9:"ยิว";s:2:"yi";s:37:"ยิว-เปอร์เซีย";s:3:"jpr";s:28:"ยิว-อาหรับ";s:3:"jrb";s:21:"ยูการิต";s:3:"uga";s:9:"ยัป";s:3:"yap";s:27:"ยูพิกกลาง";s:3:"esu";}i:519;a:2:{s:9:"林堡文";s:2:"li";s:12:"林加拉文";s:2:"ln";}i:769;a:5:{s:9:"老挝文";s:2:"lo";s:18:"ኡዊግሁርኛ";s:2:"ug";s:12:"ኡርዱኛ";s:2:"ur";s:15:"ኡዝቤክኛ";s:2:"uz";s:15:"ኡዝበክኛ";s:2:"uz";}i:534;a:3:{s:6:"寮文";s:2:"lo";s:9:"隆迪文";s:2:"rn";s:9:"隆达文";s:3:"lun";}i:435;a:3:{s:12:"立陶宛文";s:2:"lt";s:12:"纳瓦霍文";s:2:"nv";s:9:"纳马文";s:3:"naq";}i:991;a:7:{s:6:"文言";s:12:"zh-classical";s:9:"文言文";s:3:"lzh";s:18:"யாகுட்";s:3:"sah";s:9:"文达文";s:2:"ve";s:18:"யோருபா";s:2:"yo";s:12:"யாவ்";s:3:"yao";s:18:"யாபேசி";s:3:"yap";}i:560;a:18:{s:12:"마이틸리";s:3:"mai";s:15:"마셜제도어";s:2:"mh";s:12:"마오리어";s:2:"mi";s:18:"마케도니아어";s:2:"mk";s:12:"마라티어";s:2:"mr";s:18:"마잔데라니어";s:3:"mzn";s:12:"마차메어";s:3:"jmc";s:12:"마콘데어";s:3:"kde";s:12:"마사이어";s:3:"mas";s:22:"마크후와-메토어";s:3:"mgh";s:9:"마리어";s:3:"chm";s:12:"마두라어";s:3:"mad";s:9:"마가히";s:3:"mag";s:12:"마카사어";s:3:"mak";s:9:"마바어";s:3:"mde";s:15:"마니푸리어";s:3:"mni";s:15:"마르와리어";s:3:"mwr";s:9:"마파어";s:3:"maf";}i:993;a:3:{s:12:"邁蒂利文";s:3:"mai";s:9:"랑기어";s:3:"lag";s:9:"胡帕文";s:3:"hup";}i:514;a:13:{s:15:"モクシャ語";s:3:"mdf";s:15:"モンゴル語";s:2:"mn";s:8:"תאית";s:2:"th";s:36:"යුක්රේනියානු";s:2:"uk";s:18:"යොරූබා";s:2:"yo";s:39:"モーリシャス・クレオール語";s:3:"mfe";s:18:"モーホーク語";s:3:"moh";s:18:"モルダビア語";s:5:"ro-md";s:40:"תמזיע׳ת מרוקאית תקנית";s:3:"zgh";s:43:"යුරෝපීය ස්පාඤ්ඤ";s:5:"es-es";s:46:"යුරෝපීය පෘතුගීසි";s:5:"pt-pt";s:12:"モンゴ語";s:3:"lol";s:9:"モシ語";s:3:"mos";}i:638;a:4:{s:18:"ሞንጎላዊኛ";s:2:"mn";s:15:"ሞሪሲየኛ";s:3:"mfe";s:12:"ሞሃውክ";s:3:"moh";s:18:"ሞልዳቫዊና";s:5:"ro-md";}i:805;a:3:{s:9:"몽고어";s:2:"mn";s:6:"梵文";s:2:"sa";s:9:"몽구어";s:3:"lol";}i:665;a:2:{s:15:"山地マリ語";s:3:"mrj";s:9:"집시어";s:3:"rom";}i:436;a:1:{s:16:"서부 마리어";s:3:"mrj";}i:792;a:2:{s:9:"몰타어";s:2:"mt";s:12:"몰도바어";s:5:"ro-md";}i:260;a:3:{s:9:"버마어";s:2:"my";s:12:"폴란드어";s:2:"pl";s:9:"곤디어";s:3:"gon";}i:236;a:7:{s:9:"緬甸文";s:2:"my";s:15:"ತಮಿಳು";s:2:"ta";s:12:"ತುಳು";s:3:"tcy";s:18:"ತೆಲುಗು";s:2:"te";s:18:"ತಾಜಿಕ್";s:2:"tg";s:21:"ತುಂಬುಕಾ";s:3:"tum";s:24:"ತಹಿತಿಯನ್";s:2:"ty";}i:45;a:8:{s:12:"Ерзија";s:3:"myv";s:14:"Ефикски";s:3:"efi";s:29:"-ongerscheidlijje schprooche-";s:3:"mul";s:22:"-onbikannte-schprooch-";s:3:"und";s:12:"Екајук";s:3:"eka";s:18:"Еламитски";s:3:"elx";s:12:"Евондо";s:3:"ewo";s:18:"乍得阿拉伯文";s:3:"shu";}i:959;a:1:{s:21:"ஏர்ஜியா";s:3:"myv";}i:420;a:2:{s:12:"俄日亚文";s:3:"myv";s:6:"俄文";s:2:"ru";}i:802;a:1:{s:18:"瑪詹德拉尼文";s:3:"mzn";}i:755;a:5:{s:9:"ናኡሩ";s:2:"na";s:44:"ናይ ቱርኪ ሰብዓይ (ቱርካዊ)";s:2:"tk";s:21:"ຫວຽດນາມ";s:2:"vi";s:24:"ຫລາຍພາສາ";s:3:"mul";s:6:"ናማ";s:3:"naq";}i:316;a:19:{s:15:"ნაურუ";s:2:"na";s:39:"ნეაპოლიტანური";s:3:"nap";s:52:"ნორვეგიული ბუკმოლი";s:2:"nb";s:24:"ნეპალური";s:2:"ne";s:18:"ნევარი";s:3:"new";s:36:"ნიდერლანდური";s:2:"nl";s:58:"ნორვეგიული ნიუნორსკი";s:2:"nn";s:30:"ნორვეგიული";s:2:"no";s:18:"ნავახო";s:2:"nv";s:18:"ნიანჯა";s:2:"ny";s:18:"ნგომბა";s:3:"jgo";s:12:"ნამა";s:3:"naq";s:9:"ნკო";s:3:"nqo";s:15:"ნუერი";s:3:"nus";s:24:"ნიანკოლე";s:3:"nyn";s:21:"ნოღაური";s:3:"nog";s:24:"ნიამვეზი";s:3:"nym";s:15:"ნიორო";s:3:"nyo";s:15:"ნზიმა";s:3:"nzi";}i:737;a:18:{s:18:"ນາຢູລູ";s:2:"na";s:18:"ນາໂປລີ";s:3:"nap";s:43:"ນໍເວຈຽນ ບັອກມອລ";s:2:"nb";s:18:"ນີວາຣິ";s:3:"new";s:15:"ນີ່ອູ";s:3:"niu";s:37:"ນໍເວຈຽນ ນີນອກ";s:2:"nn";s:15:"ນໍເວຍ";s:2:"no";s:18:"ນາວາໂຈ";s:2:"nv";s:15:"ນານຈາ";s:2:"ny";s:12:"ນາມາ";s:3:"naq";s:27:"ນີບີລີໃຕ້";s:2:"nr";s:18:"ນານຄອນ";s:3:"nyn";s:18:"ນີ່ອັດ";s:3:"nia";s:12:"ນໍໄກ";s:3:"nog";s:21:"ນໍໂບຮານ";s:3:"non";s:21:"ນາມວີຊິ";s:3:"nym";s:12:"ນິມາ";s:3:"nzi";s:36:"ນາຍອາຊາຕອງກາ";s:3:"tog";}i:984;a:20:{s:15:"நவ்ரூ";s:2:"na";s:33:"நியோபோலிடன்";s:3:"nap";s:58:"நார்வேஜியன் பொக்மால்";s:2:"nb";s:18:"நேபாளி";s:2:"ne";s:18:"நெவாரி";s:3:"new";s:24:"நியூவான்";s:3:"niu";s:70:"நார்வேஜியன் நியூநார்ஸ்க்";s:2:"nn";s:18:"நார்வே";s:2:"no";s:15:"நவாஜோ";s:2:"nv";s:18:"நயன்ஜா";s:2:"ny";s:21:"நகொம்பா";s:3:"jgo";s:12:"நாமா";s:3:"naq";s:18:"நியூர்";s:3:"nus";s:30:"நியான்கோலே";s:3:"nyn";s:18:"நியாஸ்";s:3:"nia";s:12:"நோகை";s:3:"nog";s:30:"நியாம்வேஜி";s:3:"nym";s:18:"நியோரோ";s:3:"nyo";s:18:"நிஜ்மா";s:3:"nzi";s:34:"நயாசா டோங்கா";s:3:"tog";}i:785;a:1:{s:9:"瑙鲁文";s:2:"na";}i:398;a:8:{s:35:"նորվեգերեն բուկմոլ";s:2:"nb";s:18:"նեպալերեն";s:2:"ne";s:39:"նորվեգերեն նյունորսկ";s:2:"nn";s:12:"նգոմբա";s:3:"jgo";s:8:"նամա";s:3:"naq";s:6:"նկո";s:3:"nqo";s:10:"նուեր";s:3:"nus";s:16:"նյանկոլե";s:3:"nyn";}i:494;a:17:{s:38:"ノルウェー語(ブークモール)";s:2:"nb";s:38:"ノルウェー語(ニーノシュク)";s:2:"nn";s:42:"ノルウェー語(ブークモール)";s:2:"no";s:15:"ノヴィアル";s:3:"nov";s:15:"ノルマン語";s:3:"nrm";s:42:"ノーフォーク語・ピトケアン語";s:3:"pih";s:12:"ז׳ואנג";s:2:"za";s:8:"זולו";s:2:"zu";s:10:"זארמה";s:3:"dje";s:22:"זשאלא־פֿאני";s:3:"dyo";s:19:"猶太教-波斯文";s:3:"jpr";s:18:"猶太阿拉伯文";s:3:"jrb";s:12:"ノガイ語";s:3:"nog";s:12:"זאפוטק";s:3:"zap";s:10:"זנאגה";s:3:"zen";s:8:"זוני";s:3:"zun";s:8:"זאזא";s:3:"zza";}i:35;a:5:{s:43:"ន័រវែស បុកម៉ាល់";s:2:"nb";s:21:"នេប៉ាល់";s:2:"ne";s:34:"ន័រវែស នីនូស";s:2:"nn";s:12:"别姆巴文";s:3:"bem";s:9:"别札文";s:3:"bej";}i:432;a:5:{s:26:"노르웨이어(보크말)";s:2:"nb";s:32:"노르웨이어(니노르스크)";s:2:"nn";s:15:"노르웨이어";s:2:"no";s:12:"노가이어";s:3:"nog";s:20:"노르웨이, 고대";s:3:"non";}i:386;a:4:{s:21:"挪威博克马尔文";s:2:"nb";s:21:"挪威尼诺斯克文";s:2:"nn";s:9:"挪威文";s:2:"no";s:56:"ժամանակակից ստանդարտ արաբերեն";s:6:"ar-001";}i:531;a:6:{s:15:"ンドンガ語";s:2:"ng";s:15:"ンゴンバ語";s:3:"jgo";s:9:"ンコ語";s:3:"nqo";s:12:"ンゼマ語";s:3:"nzi";s:18:"ンガムバイ語";s:3:"sba";s:24:"ンジエムブーン語";s:3:"nnh";}i:712;a:5:{s:12:"느동가어";s:2:"ng";s:12:"느지마어";s:3:"nzi";s:15:"느감바이어";s:3:"sba";s:15:"느기엠본어";s:3:"nnh";s:9:"옘바어";s:3:"ybb";}i:848;a:4:{s:6:"ደች";s:2:"nl";s:19:"ደቡባዊ ሳሚ";s:3:"sma";s:9:"兰博文";s:3:"rof";s:9:"兰巴文";s:3:"lam";}i:655;a:2:{s:9:"荷兰文";s:2:"nl";s:9:"荷蘭文";s:2:"nl";}i:656;a:9:{s:19:"ሰሜናዊ ሶቶ";s:3:"nso";s:19:"ሰሜናዊ ሳሚ";s:2:"se";s:28:"ሰርቦ-ክሮኤሽያኛ";s:2:"sh";s:26:"ሰርቦ- ክሮዊታን";s:2:"sh";s:12:"ሰርቢኛ";s:2:"sr";s:9:"ሰሴቶ";s:2:"st";s:15:"ሰዋሂሊኛ";s:2:"sw";s:9:"엠부어";s:3:"ebu";s:22:"ሰሜን ንዴብሌ";s:2:"nd";}i:697;a:9:{s:25:"ઉતરી સોથો";s:3:"nso";s:15:"ઉડિયા";s:2:"or";s:34:"ઉત્તરીય સામી";s:2:"se";s:21:"ઉદમુર્ત";s:3:"udm";s:15:"ઉઇગુર";s:2:"ug";s:15:"ઉર્દૂ";s:2:"ur";s:18:"ઉઝ્બેક";s:2:"uz";s:25:"ઉતર દેબેલ";s:2:"nd";s:27:"ઉમ્બુન્ડૂ";s:3:"umb";}i:774;a:5:{s:15:"ኦኪታንኛ";s:2:"oc";s:12:"ኦሮሞኛ";s:2:"om";s:12:"ኦሪያኛ";s:2:"or";s:9:"ኦሪያ";s:2:"or";s:12:"ኦሴቲክ";s:2:"os";}i:317;a:6:{s:30:"ოქსიტანური";s:2:"oc";s:15:"ორომო";s:2:"om";s:12:"ორია";s:2:"or";s:15:"ოსური";s:2:"os";s:9:"圭契文";s:3:"gwi";s:18:"ოჯიბვე";s:2:"oj";}i:218;a:7:{s:18:"ಒಸಿಟನ್";s:2:"oc";s:15:"ಒರಿಯಾ";s:2:"or";s:27:"ಒಸ್ಸೆಟಿಕ್";s:2:"os";s:10:"Úcráinis";s:2:"uk";s:19:"Úisbéiceastáinis";s:2:"uz";s:21:"ಒಜಿಬ್ವಾ";s:2:"oj";s:49:"ಒಟ್ಟೋಮನ್ ತುರ್ಕಿಷ್";s:3:"ota";}i:835;a:6:{s:21:"ଓସିଟାନ୍";s:2:"oc";s:15:"ଓରୋମୋ";s:2:"om";s:15:"ଓଡ଼ିଆ";s:2:"or";s:21:"ଓସେଟିକ୍";s:2:"os";s:15:"ଓଜିୱା";s:2:"oj";s:49:"ଓଟ୍ଟୋମନ୍ ତୁର୍କିସ୍";s:3:"ota";}i:962;a:8:{s:24:"ஒக்கிடன்";s:2:"oc";s:15:"ஒரோமோ";s:2:"om";s:15:"ஒரியா";s:2:"or";s:27:"ஒசெட்டிக்";s:2:"os";s:21:"ஒலாபூக்";s:2:"vo";s:21:"ஒவாலூன்";s:2:"wa";s:18:"ஒலூஃப்";s:2:"wo";s:49:"ஒட்டோமன் துர்க்கி";s:3:"ota";}i:887;a:4:{s:15:"奧克西坦文";s:2:"oc";s:12:"奧羅莫文";s:2:"om";s:12:"奧塞提文";s:2:"os";s:15:"奧杰布瓦文";s:2:"oj";}i:413;a:2:{s:10:"օրոմո";s:2:"om";s:10:"օրիյա";s:2:"or";}i:219;a:3:{s:15:"ಓರೊಮೋ";s:2:"om";s:5:"Ûrdu";s:2:"ur";s:15:"ಓಸಾಜ್";s:3:"osa";}i:579;a:1:{s:15:"ਓਰੋਮੋ";s:2:"om";}i:569;a:6:{s:12:"ਉੜੀਆ";s:2:"or";s:28:"ਉੱਤਰੀ ਸਾਮੀ";s:2:"se";s:15:"ਉਇਗੁਰ";s:2:"ug";s:12:"ਉਰਦੂ";s:2:"ur";s:18:"ਉਜ਼ਬੇਕ";s:2:"uz";s:37:"ਉੱਤਰੀ ਨਡੇਬੇਲੇ";s:2:"nd";}i:54;a:4:{s:14:"Осетски";s:2:"os";s:12:"Ојибва";s:2:"oj";s:10:"Осаге";s:3:"osa";s:31:"Отомански турски";s:3:"ota";}i:411;a:2:{s:20:"փենջաբերեն";s:2:"pa";s:14:"փուշթու";s:2:"ps";}i:318;a:5:{s:27:"პენჯაბური";s:2:"pa";s:12:"პალი";s:2:"pi";s:24:"პოლონური";s:2:"pl";s:15:"პუშტუ";s:2:"ps";s:36:"პორტუგალიური";s:2:"pt";}i:144;a:1:{s:9:"펀잡어";s:2:"pa";}i:28;a:3:{s:18:"파피아먼토어";s:3:"pap";s:12:"파슈토어";s:2:"ps";s:15:"파라우안어";s:3:"pau";}i:272;a:3:{s:18:"門諾低地德文";s:3:"pdt";s:5:"Đula";s:3:"dyu";s:9:"門德文";s:3:"men";}i:509;a:6:{s:18:"ポーランド語";s:2:"pl";s:30:"ポントス・ギリシャ語";s:3:"pnt";s:18:"ポルトガル語";s:2:"pt";s:9:"총가어";s:2:"ts";s:38:"ポルトガル語(イベリア半島)";s:5:"pt-pt";s:15:"ポンペイ語";s:3:"pon";}i:65;a:3:{s:12:"ᏉᏧᎦᎵ";s:2:"pt";s:18:"鲁巴加丹加文";s:2:"lu";s:15:"鲁巴鲁瓦文";s:3:"lua";}i:37;a:2:{s:12:"ꁍꄨꑸꉙ";s:2:"pt";s:21:"ផ្លាមីស";s:5:"nl-be";}i:38;a:3:{s:36:"ព័រទុយហ្កាល់";s:2:"pt";s:61:"ព័រទុយហ្គាល់ ប្រេស៊ីល";s:5:"pt-br";s:55:"ព័រទុយហ្គាល់ អឺរ៉ុប";s:5:"pt-pt";}i:992;a:12:{s:18:"ꀠꑟꁍꄨꑸꉙ";s:5:"pt-br";s:12:"케추아어";s:2:"qu";s:24:"ரோமான்ஷ்";s:2:"rm";s:18:"ருண்டி";s:2:"rn";s:27:"ரோமேனியன்";s:2:"ro";s:18:"ரஷியன்";s:2:"ru";s:18:"ரோம்போ";s:3:"rof";s:12:"ருவா";s:3:"rwk";s:27:"ராஜஸ்தானி";s:3:"raj";s:18:"ரபனுய்";s:3:"rap";s:30:"ரரோடோங்கன்";s:3:"rar";s:18:"ரோமானி";s:3:"rom";}i:789;a:1:{s:9:"ኵቿኛ";s:2:"qu";}i:422;a:2:{s:12:"盖丘亚文";s:2:"qu";s:12:"约鲁巴文";s:2:"yo";}i:645;a:7:{s:18:"羅馬格諾里文";s:3:"rgn";s:12:"羅曼斯文";s:2:"rm";s:15:"羅馬尼亞文";s:2:"ro";s:18:"羅馬尼亞語系";s:3:"rup";s:9:"羅瓦文";s:3:"rwk";s:15:"羅圖馬島文";s:3:"rtm";s:15:"羅維阿納文";s:3:"rug";}i:654;a:7:{s:12:"ሮማንሽ";s:2:"rm";s:15:"ሮማኒያን";s:2:"ro";s:25:"美茵-法蘭克尼亞文";s:3:"vmf";s:9:"美塔文";s:3:"mgo";s:9:"ሮምቦ";s:3:"rof";s:12:"美式英文";s:5:"en-us";s:12:"美國手語";s:3:"ase";}i:480;a:14:{s:21:"রোমান্স";s:2:"rm";s:18:"রুন্দি";s:2:"rn";s:24:"রোমানীয়";s:2:"ro";s:9:"রুশ";s:2:"ru";s:15:"রম্বো";s:3:"rof";s:18:"রাওয়া";s:3:"rwk";s:12:"ダコタ語";s:3:"dak";s:15:"ダルガン語";s:3:"dar";s:12:"ダザガ語";s:3:"dzg";s:27:"রাজস্থানী";s:3:"raj";s:21:"রাপানুই";s:3:"rap";s:30:"রারোটোংগান";s:3:"rar";s:18:"রোমানি";s:3:"rom";s:35:"ダリー語(ゾロアスター教)";s:3:"gbz";}i:736;a:10:{s:21:"રોમાન્શ";s:2:"rm";s:18:"રૂન્દી";s:2:"rn";s:24:"રોમાનિયન";s:2:"ro";s:15:"રશિયન";s:2:"ru";s:18:"રોમ્બો";s:3:"rof";s:9:"રવા";s:3:"rwk";s:27:"રાજસ્થાની";s:3:"raj";s:21:"રાપાનુઇ";s:3:"rap";s:27:"રારોટોંગન";s:3:"rar";s:18:"રોમાની";s:3:"rom";}i:42;a:14:{s:21:"រ៉ូម៉ង់";s:2:"rm";s:18:"រូន្ឌី";s:2:"rn";s:21:"រូម៉ានី";s:2:"ro";s:21:"រុស្ស៊ី";s:2:"ru";s:16:"Влахесте";s:8:"ruq-cyrl";s:10:"Венда";s:2:"ve";s:14:"Волапук";s:2:"vo";s:12:"Вотски";s:3:"vot";s:10:"Валун";s:2:"wa";s:10:"Варај";s:3:"war";s:21:"Више језика";s:3:"mul";s:12:"Валамо";s:3:"wal";s:8:"Вашо";s:3:"was";s:20:"Валзерська";s:3:"wae";}i:515;a:6:{s:24:"රොමෑන්ශ්";s:2:"rm";s:18:"රුන්ඩි";s:2:"rn";s:30:"රොමේනියානු";s:2:"ro";s:24:"රුසියානු";s:2:"ru";s:18:"රෝම්බෝ";s:3:"rof";s:12:"ර්වා";s:3:"rwk";}i:599;a:3:{s:12:"罗曼什文";s:2:"rm";s:15:"罗马尼亚文";s:2:"ro";s:9:"罗瓦文";s:3:"rwk";}i:747;a:6:{s:15:"ຣຸນດິ";s:2:"rn";s:18:"ຣັດຊຽນ";s:2:"ru";s:15:"ຣົມໂບ";s:3:"rof";s:27:"ຣາຈັສທານິ";s:3:"raj";s:21:"ຣາປານຸຍ";s:3:"rap";s:30:"ຣາໂຣທອນການ";s:3:"rar";}i:56;a:8:{s:18:"Румыынныы";s:2:"ro";s:12:"Руминӣ";s:2:"ro";s:8:"Русӣ";s:2:"ru";s:6:"Рва";s:3:"rwk";s:18:"Рађастани";s:3:"raj";s:14:"Рапануи";s:3:"rap";s:20:"Раротонган";s:3:"rar";s:12:"Романи";s:3:"rom";}i:479;a:15:{s:15:"タラント語";s:8:"roa-tara";s:21:"タシルハイト語";s:3:"shi";s:12:"タミル語";s:2:"ta";s:12:"タジク語";s:2:"tg";s:9:"タイ語";s:2:"th";s:15:"タガログ語";s:2:"tl";s:15:"タリシュ語";s:3:"tly";s:15:"タタール語";s:2:"tt";s:12:"タヒチ語";s:2:"ty";s:24:"য়িদ্দিশ";s:2:"yi";s:12:"タイタ語";s:3:"dav";s:15:"タサワク語";s:3:"twq";s:41:"タマージク語(モロッコ公用語)";s:3:"zgh";s:18:"タマシェク語";s:3:"tmh";s:12:"タロコ語";s:3:"trv";}i:651;a:1:{s:9:"ራሽኛ";s:2:"ru";}i:659;a:5:{s:21:"ሳንስክሪትኛ";s:2:"sa";s:12:"ሳንጎኛ";s:2:"sg";s:12:"ሳሞአኛ";s:2:"sm";s:12:"ሳምቡሩ";s:3:"saq";s:9:"ሳንጉ";s:3:"sbp";}i:556;a:3:{s:12:"야큐트어";s:3:"sah";s:6:"吴语";s:3:"wuu";s:12:"야오족어";s:3:"yao";}i:955;a:2:{s:12:"散塔利文";s:3:"sat";s:12:"散达维文";s:3:"sad";}i:832;a:7:{s:9:"萨丁文";s:2:"sc";s:12:"萨摩亚文";s:2:"sm";s:9:"萨伊文";s:3:"mas";s:15:"萨玛利亚文";s:3:"sam";s:12:"萨萨克文";s:3:"sas";s:15:"萨波蒂克文";s:3:"zap";s:9:"萨霍文";s:3:"ssy";}i:746;a:9:{s:9:"撒丁文";s:2:"sc";s:24:"ຢູເຄຣນຽນ";s:2:"uk";s:9:"ຢິວ";s:2:"yi";s:12:"哲尔马文";s:3:"dje";s:46:"ຢູໂຣປຽນ ສະແປນນິຊ";s:5:"es-es";s:43:"ຢູໂຣປຽນ ປໍຕູກີສ";s:5:"pt-pt";s:12:"撒撒克文";s:3:"sas";s:21:"ຢູກາລິກ";s:3:"uga";s:9:"ຢັບ";s:3:"yap";}i:884;a:5:{s:15:"시칠리아어";s:3:"scn";s:15:"시스와티어";s:2:"ss";s:12:"시다모어";s:3:"sid";s:21:"시리아어 (고전)";s:3:"syc";s:12:"시리아어";s:3:"syr";}i:449;a:1:{s:9:"信德文";s:2:"sd";}i:217;a:9:{s:25:"薩丁尼亞-薩薩里文";s:3:"sdc";s:18:"薩莫吉希亞文";s:3:"sgs";s:12:"薩摩亞文";s:2:"sm";s:10:"Ùigiurais";s:2:"ug";s:5:"Ùrdu";s:2:"ur";s:12:"薩布魯文";s:3:"saq";s:24:"薩瑪利亞阿拉姆文";s:3:"sam";s:15:"薩波特克文";s:3:"zap";s:9:"薩霍文";s:3:"ssy";}i:791;a:5:{s:9:"瑟里文";s:3:"sei";s:18:"魯巴加丹加文";s:2:"lu";s:18:"魯巴魯魯亞文";s:3:"lua";s:15:"魯勒薩米文";s:3:"smj";s:15:"瑟爾卡普文";s:3:"sel";}i:723;a:9:{s:15:"ታቼልሂት";s:3:"shi";s:12:"ታሚልኛ";s:2:"ta";s:12:"ታጂኪኛ";s:2:"tg";s:9:"ታይኛ";s:2:"th";s:15:"ታጋሎገኛ";s:3:"fil";s:12:"ታታርኛ";s:2:"tt";s:15:"ታሂታንኛ";s:2:"ty";s:12:"ታይታኛ";s:3:"dav";s:12:"ታሳዋቅ";s:3:"twq";}i:440;a:10:{s:15:"타셸히트어";s:3:"shi";s:9:"타밀어";s:2:"ta";s:12:"타지크어";s:2:"tg";s:15:"타갈로그어";s:2:"tl";s:12:"타타르어";s:2:"tt";s:12:"타히티어";s:2:"ty";s:12:"타이타어";s:3:"dav";s:15:"타사와크어";s:3:"twq";s:12:"타마섹어";s:3:"tmh";s:12:"타로코어";s:3:"trv";}i:591;a:4:{s:21:"ਟਚੇਲਹਿਟ";s:3:"shi";s:15:"ਟੌਂਗਨ";s:2:"to";s:12:"ਟੇਟਾ";s:3:"dav";s:12:"ਟੇਸੋ";s:3:"teo";}i:836;a:4:{s:18:"슬로바키아어";s:2:"sk";s:18:"슬로베니아어";s:2:"sl";s:12:"요루바어";s:2:"yo";s:12:"슬라브어";s:3:"den";}i:31;a:13:{s:15:"斯洛伐克文";s:2:"sk";s:18:"斯洛文尼亚文";s:2:"sl";s:18:"斯洛維尼亞文";s:2:"sl";s:12:"斯瓦特文";s:2:"ss";s:15:"斯瓦希里文";s:2:"sw";s:15:"តាមីល";s:2:"ta";s:18:"តេលុគុ";s:2:"te";s:42:"តាដហ្សីគីស្តង់";s:2:"tg";s:21:"តុងហ្គោ";s:2:"to";s:15:"តាតារ";s:2:"tt";s:18:"斯科特萨米文";s:3:"sms";s:18:"斯科特薩米文";s:3:"sms";s:9:"斯拉夫";s:3:"den";}i:197;a:1:{s:14:"Åarjelsaemien";s:3:"sma";}i:854;a:4:{s:31:"ଦକ୍ଷିଣ ସାମି";s:3:"sma";s:40:"ଦକ୍ଷିଣ ନେଡବେଲେ";s:2:"nr";s:37:"ଦକ୍ଷିଣ ଆଲ୍ଟାଇ";s:3:"alt";s:18:"ଦିଙ୍କା";s:3:"din";}i:598;a:1:{s:28:"ਦੱਖਣੀ ਸਾਮੀ";s:3:"sma";}i:660;a:3:{s:9:"쇼나어";s:2:"sn";s:6:"ሴና";s:3:"seh";s:16:"블리스 심볼";s:3:"zbl";}i:999;a:4:{s:12:"ஷோனா";s:2:"sn";s:21:"ஷம்பாலா";s:3:"ksb";s:12:"ஷகதை";s:3:"chg";s:12:"ஷான்";s:3:"shn";}i:657;a:17:{s:12:"ሱማልኛ";s:2:"so";s:12:"ሱዳንኛ";s:2:"su";s:10:"ٹیٹَم";s:3:"tet";s:8:"ٹیٹم";s:3:"tet";s:16:"ٹِگرِنیا";s:2:"ti";s:14:"ٹگرینیا";s:2:"ti";s:15:"ٹیگا لوگ";s:2:"tl";s:12:"ٹونٛگا";s:2:"to";s:10:"ٹونگن";s:2:"to";s:17:"ٹاک پِسِن";s:3:"tpi";s:17:"ٹوک پِسِن";s:3:"tpi";s:12:"ٹمبوکا";s:3:"tum";s:14:"ٹاےگریے";s:3:"tig";s:12:"ٹِمنیے";s:3:"tem";s:16:"ٹیٚریٚنو";s:3:"ter";s:16:"ٹوکیٖلاو";s:3:"tkl";s:16:"ٹِلِنگِت";s:3:"tli";}i:692;a:1:{s:9:"순다어";s:2:"su";}i:341;a:1:{s:9:"थाई";s:2:"th";}i:719;a:10:{s:33:"ટાઇગ્રિનિયા";s:2:"ti";s:21:"ટાગાલોગ";s:2:"tl";s:18:"ટોંગાન";s:2:"to";s:25:"ટોક પિસિન";s:3:"tpi";s:18:"ટર્કીશ";s:2:"tr";s:15:"ટ્વાઇ";s:2:"tw";s:24:"ટુવીનિયન";s:3:"tyv";s:15:"ງອມບາ";s:3:"jgo";s:21:"ટાઇગ્રે";s:3:"tig";s:18:"ટિમ્ને";s:3:"tem";}i:552;a:7:{s:18:"提格里尼亚文";s:2:"ti";s:18:"提格利尼亞文";s:2:"ti";s:9:"터키어";s:2:"tr";s:12:"提格雷文";s:3:"tig";s:20:"터키어, 오스만";s:3:"ota";s:9:"提姆文";s:3:"tem";s:9:"提夫文";s:3:"tiv";}i:804;a:3:{s:15:"투르크멘어";s:2:"tk";s:15:"투비니안어";s:3:"tyv";s:12:"투발루어";s:3:"tvl";}i:303;a:4:{s:12:"土库曼文";s:2:"tk";s:12:"土庫曼文";s:2:"tk";s:12:"土耳其文";s:2:"tr";s:9:"土凡文";s:3:"tyv";}i:448;a:2:{s:12:"탈리쉬어";s:3:"tly";s:43:"ঐতিহ্যবাহি চীনা";s:7:"zh-hant";}i:685;a:2:{s:9:"통가어";s:2:"to";s:27:"통가어 (니아살랜드)";s:3:"tog";}i:748;a:2:{s:9:"汤加文";s:2:"to";s:30:"汤加文(尼亚萨地区)";s:3:"tog";}i:664;a:2:{s:16:"토크 피신어";s:3:"tpi";s:21:"토켈라우제도어";s:3:"tkl";}i:786;a:1:{s:8:"Ṫuroyo";s:3:"tru";}i:851;a:1:{s:9:"韃靼文";s:2:"tt";}i:820;a:1:{s:12:"툼부카어";s:3:"tum";}i:890;a:1:{s:12:"通布卡文";s:3:"tum";}i:270;a:2:{s:9:"图瓦文";s:3:"tyv";s:12:"图瓦卢文";s:3:"tvl";}i:632;a:2:{s:44:"መካከለኛ አትላስ ታማዚግት";s:3:"tzm";s:41:"መደበኛ የሞሮኮ ታማዚግት";s:3:"zgh";}i:953;a:6:{s:27:"உட்முர்ட்";s:3:"udm";s:21:"உய்குர்";s:2:"ug";s:30:"உக்ரைனியன்";s:2:"uk";s:15:"உருது";s:2:"ur";s:21:"உஸ்பெக்";s:2:"uz";s:27:"உகாரிட்க்";s:3:"uga";}i:937;a:7:{s:33:"ཡུ་གུར་སྐད།";s:2:"ug";s:39:"ཡུ་ཀྲ་ནི་སྐད།";s:2:"uk";s:51:"ཡུ་ཀེ་རེ་ནི་ཡཱན་ཁ";s:2:"uk";s:30:"ཡོ་ནན་སྐད།";s:2:"vi";s:27:"ཡོ་རུ་བ་ཁ";s:2:"yo";s:48:"ཡུ་ཨེས་ཨིང་ལིཤ་ཁ";s:5:"en-us";s:69:"ཡུ་རོབ་ཀྱི་ཨིས་པེ་ནིཤ་ཁ";s:5:"es-es";}i:948;a:4:{s:12:"위구르어";s:2:"ug";s:12:"達科他文";s:3:"dak";s:15:"達爾格瓦文";s:3:"dar";s:9:"達薩文";s:3:"dzg";}i:262;a:2:{s:12:"Ӯйғурӣ";s:2:"ug";s:12:"Ӯзбекӣ";s:2:"uz";}i:173;a:2:{s:12:"維吾爾文";s:2:"ug";s:12:"維普森文";s:3:"vep";}i:841;a:2:{s:15:"ዩክሬንኛ";s:2:"uk";s:15:"ዩክረኒኛ";s:2:"uk";}i:879;a:4:{s:12:"烏克蘭文";s:2:"uk";s:9:"烏都文";s:2:"ur";s:15:"烏茲別克文";s:2:"uz";s:12:"烏加列文";s:3:"uga";}i:134;a:1:{s:21:"ဦးဇ်ဘက်";s:2:"uz";}i:292;a:1:{s:9:"벤다어";s:2:"ve";}i:718;a:1:{s:15:"ቮላፑክኛ";s:2:"vo";}i:527;a:4:{s:12:"ワロン語";s:2:"wa";s:12:"ワライ語";s:3:"war";s:12:"ワショ語";s:3:"was";s:9:"ワユ語";s:3:"guc";}i:760;a:1:{s:9:"왈론어";s:2:"wa";}i:751;a:9:{s:15:"ວໍລູມ";s:2:"wa";s:12:"ວາເລ";s:3:"war";s:15:"ວໍລອບ";s:2:"wo";s:15:"ວັນໂຈ";s:3:"vun";s:9:"峇里文";s:3:"ban";s:18:"ວິດອິນ";s:3:"gwi";s:18:"ວາລາໂມ";s:3:"wal";s:12:"ວາໂຊ";s:3:"was";s:15:"ວາເຊີ";s:3:"wae";}i:623;a:7:{s:18:"วาโลนี";s:2:"wa";s:18:"วาเรย์";s:3:"war";s:15:"วุนจู";s:3:"vun";s:18:"วาลาโม";s:3:"wal";s:12:"วาโช";s:3:"was";s:12:"วายู";s:3:"guc";s:24:"วัลเซอร์";s:3:"wae";}i:752;a:3:{s:12:"와라이어";s:3:"war";s:12:"와라모어";s:3:"wal";s:9:"와쇼어";s:3:"was";}i:814;a:2:{s:12:"ዎሎፍኛ";s:2:"wo";s:9:"瑶族文";s:3:"yao";}i:577;a:2:{s:6:"呉語";s:3:"wuu";s:9:"양본어";s:3:"yav";}i:555;a:1:{s:6:"吳語";s:3:"wuu";}i:830;a:1:{s:9:"ዞሳኛ";s:2:"xh";}i:918;a:8:{s:8:"Ζόσα";s:2:"xh";s:14:"Ζουάνγκ";s:2:"za";s:12:"Ζουλού";s:2:"zu";s:10:"Ζάρμα";s:3:"dje";s:14:"Ζάποτεκ";s:3:"zap";s:14:"Ζενάγκα";s:3:"zen";s:10:"Ζούνι";s:3:"zun";s:8:"Ζάζα";s:3:"zza";}i:845;a:1:{s:12:"ይዲሽኛ";s:2:"yi";}i:375;a:9:{s:24:"യിദ്ദിഷ്";s:2:"yi";s:18:"യൊറൂബാ";s:2:"yo";s:28:"യോല-ഫോന്യി";s:3:"dyo";s:52:"യൂറോപ്യൻ സ്‌പാനിഷ്";s:5:"es-es";s:58:"യൂറോപ്യൻ പോർച്ചുഗീസ്";s:5:"pt-pt";s:12:"യാവോ";s:3:"yao";s:24:"യെപ്പീസ്";s:3:"yap";s:24:"യാംഗ്ബെൻ";s:3:"yav";s:9:"യംബ";s:3:"ybb";}i:846;a:2:{s:15:"ዮሩባዊኛ";s:2:"yo";s:18:"ଞ୍ଜିମା";s:3:"nzi";}i:397;a:1:{s:14:"յորուբա";s:2:"yo";}i:4;a:1:{s:12:"約魯巴文";s:2:"yo";}i:908;a:1:{s:6:"粤语";s:3:"yue";}i:833;a:1:{s:15:"ዡዋንግኛ";s:2:"za";}i:285;a:1:{s:7:"ĝuanga";s:2:"za";}i:229;a:4:{s:21:"ಝೂವಾಂಗ್";s:2:"za";s:24:"ಝೋಪೊಟೆಕ್";s:3:"zap";s:18:"ಝೆನಾಗಾ";s:3:"zen";s:12:"ಝೂನಿ";s:3:"zun";}i:46;a:1:{s:10:"Жуанг";s:2:"za";}i:766;a:1:{s:6:"壮文";s:2:"za";}i:767;a:1:{s:6:"壯文";s:2:"za";}i:807;a:1:{s:9:"ꍏꇩꉙ";s:2:"zh";}i:974;a:1:{s:15:"ꀎꋏꍏꇩꉙ";s:7:"zh-hant";}i:824;a:5:{s:38:"ዘመናዊ መደበኛ ዓረብኛ";s:6:"ar-001";s:9:"치가어";s:3:"cgg";s:12:"치브차어";s:3:"chb";s:48:"치누크어와 영어 프랑스어의 혼성어";s:3:"chn";s:12:"치페우얀";s:3:"chp";}i:788;a:1:{s:23:"현대 표준 아랍어";s:6:"ar-001";}i:29;a:1:{s:12:"別姆巴文";s:3:"bem";}i:855;a:3:{s:9:"奇加文";s:3:"cgg";s:12:"奇布查文";s:3:"chb";s:15:"奇佩瓦揚文";s:3:"chp";}i:166;a:2:{s:12:"扎爾馬文";s:3:"dje";s:9:"扎扎文";s:3:"zza";}i:300;a:2:{s:12:"드와라어";s:3:"dua";s:12:"드율라어";s:3:"dyu";}i:417;a:1:{s:9:"朱拉文";s:3:"dyo";}i:573;a:3:{s:8:"إمبو";s:3:"ebu";s:46:"إسبانية أمريكا اللاتينية";s:6:"es-419";s:12:"얍페세어";s:3:"yap";}i:701;a:1:{s:15:"ઍમ્બુ";s:3:"ebu";}i:275;a:1:{s:12:"ēģiptiešu";s:3:"egy";}i:2;a:1:{s:9:"貢根文";s:3:"kok";}i:667;a:1:{s:12:"ሻምባላ";s:3:"ksb";}i:636;a:2:{s:6:"ሜሩ";s:3:"mer";s:6:"ሜታ";s:3:"mgo";}i:700;a:3:{s:9:"메루어";s:3:"mer";s:9:"메타어";s:3:"mgo";s:12:"메둠바어";s:3:"byv";}i:633;a:1:{s:15:"ሙንዳንግ";s:3:"mua";}i:796;a:5:{s:13:"다중 언어";s:3:"mul";s:12:"다코타어";s:3:"dak";s:15:"다르그와어";s:3:"dar";s:12:"다장가어";s:3:"dzg";s:6:"瑤文";s:3:"yao";}i:627;a:1:{s:24:"หลายภาษา";s:3:"mul";}i:810;a:5:{s:12:"多种语系";s:3:"mul";s:12:"多種語言";s:3:"mul";s:15:"多格里布文";s:3:"dgr";s:12:"多格拉文";s:3:"doi";s:12:"多格來文";s:3:"doi";}i:540;a:1:{s:12:"플라망어";s:5:"nl-be";}i:753;a:1:{s:9:"ኑዌር";s:3:"nus";}i:572;a:1:{s:12:"누에르어";s:3:"nus";}i:162;a:2:{s:12:"努埃尔文";s:3:"nus";s:12:"努埃爾文";s:3:"nus";}i:212;a:1:{s:9:"롬보어";s:3:"rof";}i:653;a:1:{s:6:"ርዋ";s:3:"rwk";}i:996;a:2:{s:12:"东桑海文";s:3:"ses";s:18:"东弗里西亚文";s:3:"frs";}i:843;a:2:{s:25:"ያልታወቀ ቋንቋ";s:3:"und";s:15:"ଛଗତାଇ";s:3:"chg";}i:410;a:2:{s:12:"未知语言";s:3:"und";s:12:"未知語言";s:3:"und";}i:715;a:2:{s:6:"ቫይ";s:3:"vai";s:18:"છગાતાઇ";s:3:"chg";}i:631;a:1:{s:30:"标准摩洛哥塔马塞特文";s:3:"zgh";}i:683;a:1:{s:38:"ቋንቋዊ ይዘት አይደለም";s:3:"zxx";}i:961;a:1:{s:15:"無語言內容";s:3:"zxx";}i:976;a:6:{s:22:"유럽식 스페인어";s:5:"es-es";s:25:"유럽식 포르투갈어";s:5:"pt-pt";s:22:"유대-페르시아어";s:3:"jpr";s:22:"유대-아라비아어";s:3:"jrb";s:9:"甘拜文";s:3:"sba";s:15:"유가리틱어";s:3:"uga";}i:431;a:2:{s:18:"欧洲西班牙文";s:5:"es-es";s:18:"欧洲葡萄牙文";s:5:"pt-pt";}i:133;a:1:{s:40:"ဥရောပ ပေါ်တူဂီ";s:5:"pt-pt";}i:156;a:2:{s:12:"발루치어";s:3:"bal";s:9:"발리어";s:3:"ban";}i:675;a:1:{s:15:"錫克錫卡文";s:3:"bla";}i:865;a:3:{s:12:"契布卡文";s:3:"chb";s:12:"契努克文";s:3:"chn";s:12:"契奴克文";s:3:"chn";}i:798;a:3:{s:12:"达科他文";s:3:"dak";s:15:"达尔格瓦文";s:3:"dar";s:12:"达扎葛文";s:3:"dzg";}i:20;a:2:{s:15:"도그리브어";s:3:"dgr";s:12:"도그리어";s:3:"doi";}i:969;a:1:{s:9:"丁卡文";s:3:"din";}i:369;a:2:{s:15:"犹太波斯文";s:3:"jpr";s:18:"犹太阿拉伯文";s:3:"jrb";}i:644;a:2:{s:9:"和田文";s:3:"kho";s:9:"和闐文";s:3:"kho";}i:428;a:1:{s:12:"킴분두어";s:3:"kmb";}i:988;a:1:{s:9:"람바어";s:3:"lam";}i:426;a:1:{s:9:"芒戈文";s:3:"lol";}i:564;a:3:{s:12:"만딩고어";s:3:"man";s:12:"만다르어";s:3:"mdr";s:9:"만주어";s:3:"mnc";}i:376;a:4:{s:9:"门迪文";s:3:"men";s:27:"രാജസ്ഥാനി";s:3:"raj";s:21:"രാപനൂയി";s:3:"rap";s:30:"രാരോടോങ്കൻ";s:3:"rar";}i:415;a:1:{s:9:"滿族文";s:3:"mnc";}i:834;a:1:{s:9:"诺盖文";s:3:"nog";}i:963;a:2:{s:18:"ஓஜிபவா";s:2:"oj";s:15:"ஓசேஜ்";s:3:"osa";}i:528;a:1:{s:6:"掸文";s:3:"shn";}i:763;a:1:{s:6:"撣文";s:3:"shn";}i:982;a:3:{s:12:"姆本杜文";s:3:"umb";s:12:"姆耶内文";s:3:"mye";s:12:"姆耶內文";s:3:"mye";}i:901;a:1:{s:12:"泽纳加文";s:3:"zen";}i:826;a:2:{s:12:"太鲁阁文";s:3:"trv";s:12:"太魯閣文";s:3:"trv";}i:900;a:1:{s:9:"월저어";s:3:"wae";}} \ No newline at end of file
diff --git a/MLEB/UniversalLanguageSelector/extension.json b/MLEB/UniversalLanguageSelector/extension.json
index b0178879..3969bbfe 100644
--- a/MLEB/UniversalLanguageSelector/extension.json
+++ b/MLEB/UniversalLanguageSelector/extension.json
@@ -1,11 +1,13 @@
{
"name": "UniversalLanguageSelector",
- "version": "2015-06-08",
+ "version": "2018-10-26",
"author": [
"Alolita Sharma",
"Amir Aharoni",
"Arun Ganesh",
"Brandon Harris",
+ "Kartik Mistry",
+ "Niharika Kohli",
"Niklas Laxström",
"Pau Giner",
"Santhosh Thottingal",
@@ -13,13 +15,16 @@
],
"url": "https://www.mediawiki.org/wiki/Extension:UniversalLanguageSelector",
"descriptionmsg": "uls-desc",
- "license-name": "GPL-2.0+",
+ "license-name": "GPL-2.0-or-later",
+ "requires": {
+ "MediaWiki": ">= 1.30.0"
+ },
"Hooks": {
"BeforePageDisplay": "UniversalLanguageSelectorHooks::addModules",
"EnterMobileMode": "UniversalLanguageSelectorHooks::onEnterMobileMode",
- "EventLoggingRegisterSchemas": "UniversalLanguageSelectorHooks::onEventLoggingRegisterSchemas",
"GetBetaFeaturePreferences": "UniversalLanguageSelectorHooks::onGetBetaFeaturePreferences",
"GetPreferences": "UniversalLanguageSelectorHooks::onGetPreferences",
+ "LocalUserCreated": "UniversalLanguageSelectorHooks::onLocalUserCreated",
"MakeGlobalVariablesScript": "UniversalLanguageSelectorHooks::addVariables",
"PersonalUrls": "UniversalLanguageSelectorHooks::addPersonalBarTrigger",
"ResourceLoaderGetConfigVars": "UniversalLanguageSelectorHooks::addConfig",
@@ -34,38 +39,42 @@
},
"MessagesDirs": {
"UniversalLanguageSelector": [
- "i18n"
+ "i18n",
+ "i18n/api"
]
},
"AutoloadClasses": {
- "UniversalLanguageSelectorHooks": "UniversalLanguageSelector.hooks.php",
- "ResourceLoaderULSModule": "includes/ResourceLoaderULSModule.php",
- "ResourceLoaderULSJsonMessageModule": "includes/ResourceLoaderULSJsonMessageModule.php",
"ApiLanguageSearch": "api/ApiLanguageSearch.php",
"ApiULSLocalization": "api/ApiULSLocalization.php",
+ "FontRepoCompiler": "includes/FontRepoCompiler.php",
+ "LanguageNameSearch": "data/LanguageNameSearch.php",
+ "LanguageNameSearchData": "data/LanguageNameSearchData.php",
+ "ResourceLoaderULSJsonMessageModule": "includes/ResourceLoaderULSJsonMessageModule.php",
+ "ResourceLoaderULSModule": "includes/ResourceLoaderULSModule.php",
"ULSJsonMessageLoader": "includes/ULSJsonMessageLoader.php",
- "LanguageNameSearch": "data/LanguageNameSearch.php"
+ "UniversalLanguageSelectorHooks": "UniversalLanguageSelector.hooks.php"
},
"DefaultUserOptions": {
- "uls-preferences": ""
+ "uls-preferences": "",
+ "compact-language-links": true
},
"config": {
- "@ULSGeoService": "ULS can use geolocation services to suggest languages based on the country the user is vising from. Setting this to false will prevent builtin geolocation from being used. You can provide your own geolocation by setting window.Geo to object which has key \"country_code\" or \"country\". If set to true, it will query Wikimedia's geoip service. The service should return jsonp that uses the supplied callback parameter.",
- "ULSGeoService": true,
- "@ULSEnable": "Enable language selection, input methods and webfonts for everyone, unless the behavior is overridden by the configuration variables below. Even if false the classes and resource loader modules are registered for the use of other extensions. Language changing via cookie or setlang query parameter is not possible.",
+ "@ULSGeoService": "ULS can use a geolocation service to suggest languages based on the country the user is vising from. If set to an URL it will query that service which must return an object which has key \"country_code\" or \"country\". For example https://api.ipstack.com/check?access_key=yourkey&fields=country_code. Setting this to false will prevent built-in geolocation from being used. You can also provide your own geolocation by assigning such object to window.Geo.",
+ "ULSGeoService": false,
+ "@ULSEnable": "Enable language selection, compact language links, input methods and webfonts for everyone, unless the behavior is overridden by the configuration variables below. Even if false the classes and resource loader modules are registered for the use of other extensions. Language changing via cookie or setlang query parameter is not possible.",
"ULSEnable": true,
"@ULSEnableAnon": "Equivalent to $wgULSEnable for anonymous users only. Does not have any effect if $wgULSEnable is false.",
"ULSEnableAnon": true,
"@ULSAnonCanChangeLanguage": "Allow anonymous users to change language with cookie and setlang query parameter. Do not use if you are caching anonymous page views without taking cookies into account. Does not have any effect if either of $wgULSEnable or $wgULSEnableAnon is set to false. @since 2013.04",
"ULSAnonCanChangeLanguage": true,
- "@ULSLanguageDetection": "Try to use preferred interface language for anonymous users. Do not use if you are caching anonymous page views without taking Accept-Language into account. Does not have any effect if any of $wgULSEnable, $wgULSEnableAnon or $wgULSAnonCanChangeLanguage is set to false.",
+ "@ULSLanguageDetection": "Try to use preferred interface language for anonymous users. Do not use if you are caching anonymous page views without taking Accept-Language into account. Does not have any effect if any of $wgULSEnable, or $wgULSEnableAnon is set to false.",
"ULSLanguageDetection": true,
"@ULSIMEEnabled": "Enable the input methods feature for all users by default. Can be controlled by the user.",
"ULSIMEEnabled": true,
"@ULSWebfontsEnabled": "Enable the webfonts feature for all users by default. Can be controlled by the user. @since 2014.02",
"ULSWebfontsEnabled": true,
"@ULSMobileWebfontsEnabled": "Set whether webfont support is loaded within the mobile interface (via the MobileFrontend extension).",
- "ULSMobileWebfontsEnabled": true,
+ "ULSMobileWebfontsEnabled": false,
"@ULSPosition": "The location and the form of the language selection trigger. The possible values are: (a) \"personal\"- as a link near the username or the log in link in the personal toolbar (default). (b) \"interlanguage\": as an icon near the header of the list of interlanguage links in the sidebar.",
"ULSPosition": "personal",
"@ULSEventLogging": "Whether to use EventLogging. The EventLogging extension must be installed if this option is enabled. @since 2013.06",
@@ -80,7 +89,8 @@
],
"@ULSNoImeSelectors": "Array of jQuery selectors of elements on which IME must not be enabled. @since 2013.07",
"ULSNoImeSelectors": [
- "#wpCaptchaWord", ".ve-ce-surface *"
+ "#wpCaptchaWord",
+ ".ve-ce-surface-paste"
],
"@ULSNoWebfontsSelectors": "Array of jQuery selectors of elements on which webfonts must not be applied. By default exclude elements with .autonym because that style set font as Autonym @since 2013.09",
"ULSNoWebfontsSelectors": [
@@ -88,50 +98,77 @@
],
"@ULSFontRepositoryBasePath": "Base path of ULS font repository. If not set, will be set to 'UniversalLanguageSelector/data/fontrepo/fonts/', relative to $wgExtensionAssetsPath. @since 2013.10",
"ULSFontRepositoryBasePath": false,
- "@ULSCompactLinks": "Whether the \"Compact language links\" Beta Feature is exposed. Requires $wgULSPosition to be \"interlanguage\". Defaults to false. @since 2014.03",
- "ULSCompactLinks": false
+ "ULSCompactLanguageLinksBetaFeature": true,
+ "@ULSCompactLanguageLinksBetaFeature": "Set compact interlanguage links as beta feature or not. If set false, compact interlanguage links will be available by default to all users.",
+ "ULSCompactLinksForNewAccounts": false,
+ "@ULSCompactLinksForNewAccounts": "Enable compact interlanguage links for new user accounts.",
+ "ULSCompactLinksEnableAnon": false,
+ "@ULSCompactLinksEnableAnon": "Enable compact interlanguage links for anonymous users."
},
"callback": "UniversalLanguageSelectorHooks::setVersionConstant",
"ResourceModules": {
- "ext.uls.languagenames": {
- "class": "ResourceLoaderULSModule"
- },
- "ext.uls.messages": {
- "class": "ResourceLoaderULSJsonMessageModule",
- "dependencies": "ext.uls.i18n",
+ "ext.uls.common": {
+ "targets": [ "desktop", "mobile" ],
+ "scripts": "js/ext.uls.common.js",
+ "styles": "css/ext.uls.less",
+ "skinStyles": {
+ "monobook": "css/ext.uls-monobook.css",
+ "vector": "css/ext.uls-vector.less"
+ },
+ "dependencies": [
+ "jquery.uls.data",
+ "mediawiki.api",
+ "mediawiki.cookie",
+ "mediawiki.storage",
+ "mediawiki.user"
+ ],
"localBasePath": "resources",
"remoteExtPath": "UniversalLanguageSelector/resources"
},
- "ext.uls.buttons": {
- "styles": "css/ext.uls.buttons.css",
+ "ext.uls.compactlinks": {
+ "scripts": "js/ext.uls.compactlinks.js",
+ "styles": "css/ext.uls.compactlinks.less",
+ "dependencies": [
+ "mediawiki.jqueryMsg",
+ "mediawiki.language",
+ "mediawiki.ui.button",
+ "ext.uls.init"
+ ],
+ "messages": [
+ "ext-uls-compact-link-count",
+ "ext-uls-compact-link-info",
+ "ext-uls-compact-no-results"
+ ],
"localBasePath": "resources",
"remoteExtPath": "UniversalLanguageSelector/resources"
},
- "ext.uls.displaysettings": {
- "scripts": "js/ext.uls.displaysettings.js",
- "styles": "css/ext.uls.displaysettings.css",
+ "ext.uls.geoclient": {
+ "scripts": "js/ext.uls.geoclient.js",
"dependencies": [
- "ext.uls.languagesettings",
- "ext.uls.mediawiki",
- "ext.uls.webfonts",
- "mediawiki.api.parse"
+ "mediawiki.cookie"
],
"localBasePath": "resources",
"remoteExtPath": "UniversalLanguageSelector/resources"
},
- "ext.uls.geoclient": {
- "scripts": "js/ext.uls.geoclient.js",
+ "ext.uls.i18n": {
+ "targets": [ "desktop", "mobile" ],
+ "scripts": "js/ext.uls.i18n.js",
+ "dependencies": [
+ "jquery.i18n",
+ "mediawiki.util"
+ ],
"localBasePath": "resources",
"remoteExtPath": "UniversalLanguageSelector/resources"
},
"ext.uls.ime": {
"scripts": "js/ext.uls.ime.js",
"dependencies": [
- "ext.uls.init",
+ "ext.uls.common",
"ext.uls.preferences",
"ext.uls.mediawiki",
"ext.uls.messages",
- "jquery.ime"
+ "jquery.ime",
+ "mediawiki.notify"
],
"messages": [
"uls-ime-helppage"
@@ -139,63 +176,31 @@
"localBasePath": "resources",
"remoteExtPath": "UniversalLanguageSelector/resources"
},
- "ext.uls.nojs": {
- "styles": "css/ext.uls.nojs.css",
- "position": "top",
- "localBasePath": "resources",
- "remoteExtPath": "UniversalLanguageSelector/resources"
- },
"ext.uls.init": {
- "scripts": "js/ext.uls.init.js",
- "styles": "css/ext.uls.css",
- "skinStyles": {
- "monobook": "css/ext.uls-monobook.css"
- },
- "dependencies": [
- "mediawiki.Uri",
- "jquery.client",
- "jquery.cookie"
- ],
- "position": "top",
- "localBasePath": "resources",
- "remoteExtPath": "UniversalLanguageSelector/resources"
- },
- "ext.uls.eventlogger": {
- "scripts": "js/ext.uls.eventlogger.js",
- "dependencies": [
- "mediawiki.user",
- "schema.UniversalLanguageSelector"
- ],
- "localBasePath": "resources",
- "remoteExtPath": "UniversalLanguageSelector/resources"
- },
- "ext.uls.i18n": {
- "scripts": "js/ext.uls.i18n.js",
- "dependencies": [
- "jquery.i18n",
- "mediawiki.util"
- ],
- "localBasePath": "resources",
- "remoteExtPath": "UniversalLanguageSelector/resources"
+ "targets": [ "desktop" ],
+ "dependencies": [ "ext.uls.common" ]
},
"ext.uls.inputsettings": {
"scripts": "js/ext.uls.inputsettings.js",
- "styles": "css/ext.uls.inputsettings.css",
+ "styles": "css/ext.uls.inputsettings.less",
"dependencies": [
"ext.uls.ime",
"ext.uls.languagesettings",
"ext.uls.mediawiki",
- "jquery.ime"
+ "jquery.ime",
+ "mediawiki.ui.button",
+ "mediawiki.ui.radio"
],
"localBasePath": "resources",
"remoteExtPath": "UniversalLanguageSelector/resources"
},
"ext.uls.interface": {
"scripts": "js/ext.uls.interface.js",
+ "styles": "css/ext.uls.interface.less",
"dependencies": [
- "ext.uls.init",
- "jquery.tipsy",
+ "ext.uls.common",
"mediawiki.jqueryMsg",
+ "mediawiki.storage",
"mediawiki.user",
"ext.uls.webfonts"
],
@@ -203,54 +208,70 @@
"uls-plang-title-languages",
"ext-uls-select-language-settings-icon-tooltip",
"ext-uls-undo-language-tooltip-text",
- "ext-uls-language-settings-preferences-link"
+ "ext-uls-undo-language-tooltip-text-local"
],
- "position": "top",
"localBasePath": "resources",
"remoteExtPath": "UniversalLanguageSelector/resources"
},
+ "ext.uls.interlanguage": {
+ "styles": "css/ext.uls.interlanguage.less",
+ "localBasePath": "resources",
+ "remoteExtPath": "UniversalLanguageSelector/resources"
+ },
+ "ext.uls.languagenames": {
+ "class": "ResourceLoaderULSModule"
+ },
"ext.uls.languagesettings": {
"scripts": "js/ext.uls.languagesettings.js",
- "styles": "css/ext.uls.languagesettings.css",
+ "styles": "css/ext.uls.languagesettings.less",
"dependencies": [
- "ext.uls.buttons",
"ext.uls.messages",
"ext.uls.preferences",
- "jquery.uls.grid"
+ "jquery.uls.grid",
+ "mediawiki.ui.button"
],
"localBasePath": "resources",
"remoteExtPath": "UniversalLanguageSelector/resources"
},
- "ext.uls.preferences": {
- "scripts": "js/ext.uls.preferences.js",
+ "ext.uls.mediawiki": {
+ "targets": [ "desktop", "mobile" ],
+ "scripts": "js/ext.uls.mediawiki.js",
"dependencies": [
- "mediawiki.user",
- "mediawiki.api"
+ "ext.uls.common",
+ "ext.uls.languagenames",
+ "ext.uls.messages",
+ "jquery.uls",
+ "jquery.uls.grid",
+ "mediawiki.util"
],
"localBasePath": "resources",
"remoteExtPath": "UniversalLanguageSelector/resources"
},
- "ext.uls.compactlinks": {
- "scripts": "js/ext.uls.compactlinks.js",
- "styles": "css/ext.uls.compactlinks.css",
- "dependencies": [
- "ext.uls.mediawiki",
- "ext.uls.init",
- "jquery.uls.compact",
- "mediawiki.language",
- "mediawiki.ui.button"
- ],
- "messages": [
- "ext-uls-compact-link-count"
- ],
+ "ext.uls.messages": {
+ "class": "ResourceLoaderULSJsonMessageModule",
+ "dependencies": "ext.uls.i18n",
"localBasePath": "resources",
"remoteExtPath": "UniversalLanguageSelector/resources"
},
+ "ext.uls.preferencespage": {
+ "styles": "css/ext.uls.preferencespage.less",
+ "localBasePath": "resources",
+ "remoteExtPath": "UniversalLanguageSelector/resources"
+ },
+ "ext.uls.pt": {
+ "styles": "css/ext.uls.pt.less",
+ "localBasePath": "resources",
+ "skinStyles": {
+ "monobook": "css/ext.uls.pt-monobook.less"
+ },
+ "remoteExtPath": "UniversalLanguageSelector/resources"
+ },
"ext.uls.webfonts": {
"scripts": "js/ext.uls.webfonts.js",
"dependencies": [
- "ext.uls.init",
- "ext.uls.preferences"
+ "ext.uls.common",
+ "ext.uls.preferences",
+ "jquery.client"
],
"localBasePath": "resources",
"remoteExtPath": "UniversalLanguageSelector/resources"
@@ -258,21 +279,11 @@
"ext.uls.webfonts.fonts": {
"dependencies": [
"jquery.webfonts",
- "jquery.uls.data",
"ext.uls.webfonts.repository"
],
"localBasePath": "resources",
"remoteExtPath": "UniversalLanguageSelector/resources"
},
- "ext.uls.webfonts.repository": {
- "scripts": "js/ext.uls.webfonts.repository.js",
- "targets": [
- "desktop",
- "mobile"
- ],
- "localBasePath": "resources",
- "remoteExtPath": "UniversalLanguageSelector/resources"
- },
"ext.uls.webfonts.mobile": {
"scripts": "js/ext.uls.webfonts.mobile.js",
"targets": [
@@ -285,31 +296,27 @@
"localBasePath": "resources",
"remoteExtPath": "UniversalLanguageSelector/resources"
},
+ "ext.uls.webfonts.repository": {
+ "scripts": "js/ext.uls.webfonts.repository.js",
+ "targets": [
+ "desktop",
+ "mobile"
+ ],
+ "localBasePath": "resources",
+ "remoteExtPath": "UniversalLanguageSelector/resources"
+ },
"jquery.ime": {
"scripts": "jquery.ime/jquery.ime.js",
"styles": "jquery.ime/css/jquery.ime.css",
"localBasePath": "lib",
"remoteExtPath": "UniversalLanguageSelector/lib"
},
- "ext.uls.mediawiki": {
- "scripts": "js/ext.uls.mediawiki.js",
- "dependencies": [
- "ext.uls.init",
- "ext.uls.languagenames",
- "ext.uls.messages",
- "jquery.uls",
- "jquery.uls.grid",
- "mediawiki.util"
- ],
- "localBasePath": "resources",
- "remoteExtPath": "UniversalLanguageSelector/resources"
- },
"jquery.uls": {
+ "targets": [ "desktop", "mobile" ],
"scripts": [
"jquery.uls/src/jquery.uls.core.js",
"jquery.uls/src/jquery.uls.lcd.js",
- "jquery.uls/src/jquery.uls.languagefilter.js",
- "jquery.uls/src/jquery.uls.regionfilter.js"
+ "jquery.uls/src/jquery.uls.languagefilter.js"
],
"styles": [
"jquery.uls/css/jquery.uls.css",
@@ -323,12 +330,6 @@
"localBasePath": "lib",
"remoteExtPath": "UniversalLanguageSelector/lib"
},
- "jquery.uls.compact": {
- "styles": "jquery.uls/css/jquery.uls.compact.css",
- "dependencies": "jquery.uls",
- "localBasePath": "lib",
- "remoteExtPath": "UniversalLanguageSelector/lib"
- },
"jquery.uls.data": {
"scripts": [
"jquery.uls/src/jquery.uls.data.js",
@@ -342,13 +343,13 @@
"remoteExtPath": "UniversalLanguageSelector/lib"
},
"jquery.uls.grid": {
- "position": "top",
+ "targets": [ "desktop", "mobile" ],
"styles": "jquery.uls/css/jquery.uls.grid.css",
"localBasePath": "lib",
"remoteExtPath": "UniversalLanguageSelector/lib"
},
"jquery.webfonts": {
- "scripts": "jquery.webfonts.js",
+ "scripts": "jquery.webfonts/src/jquery.webfonts.js",
"targets": [
"desktop",
"mobile"
@@ -356,21 +357,14 @@
"localBasePath": "lib",
"remoteExtPath": "UniversalLanguageSelector/lib"
},
- "ext.uls.pt": {
- "styles": "css/ext.uls.pt.css",
- "localBasePath": "resources",
- "remoteExtPath": "UniversalLanguageSelector/resources"
- },
- "ext.uls.interlanguage": {
- "styles": "css/ext.uls.interlanguage.css",
- "localBasePath": "resources",
- "remoteExtPath": "UniversalLanguageSelector/resources"
- },
"rangy.core": {
"scripts": "rangy/rangy-core.js",
"localBasePath": "lib",
"remoteExtPath": "UniversalLanguageSelector/lib"
}
},
+ "EventLoggingSchemas": {
+ "UniversalLanguageSelector": 17799034
+ },
"manifest_version": 1
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/ace.json b/MLEB/UniversalLanguageSelector/i18n/ace.json
index aefc20cd..bfe82a1c 100644
--- a/MLEB/UniversalLanguageSelector/i18n/ace.json
+++ b/MLEB/UniversalLanguageSelector/i18n/ace.json
@@ -2,9 +2,11 @@
"@metadata": {
"authors": [
"Si Gam Acèh",
- "Ayie7791"
+ "Ayie7791",
+ "Xð"
]
},
+ "uls-plang-title-languages": "Bahsa",
"ext-uls-select-language-settings-icon-tooltip": "Atô bahsa",
"ext-uls-undo-language-tooltip-text": "Bahsa meugantoë nibak $1",
"ext-uls-language-settings-preferences-link": "Neuatô bahsa leubèh le",
diff --git a/MLEB/UniversalLanguageSelector/i18n/af.json b/MLEB/UniversalLanguageSelector/i18n/af.json
index 9bf7adb2..949178b0 100644
--- a/MLEB/UniversalLanguageSelector/i18n/af.json
+++ b/MLEB/UniversalLanguageSelector/i18n/af.json
@@ -2,9 +2,11 @@
"@metadata": {
"authors": [
"Naudefj",
- "Fwolff"
+ "Fwolff",
+ "Amire80"
]
},
+ "uls-desc": "Bied gebruikers verskillende maniere om 'n taal te kies en bybehorende instellings aan te pas",
"uls-plang-title-languages": "Tale",
"ext-uls-select-language-settings-icon-tooltip": "Taalvoorkeure",
"ext-uls-undo-language-tooltip-text": "Taal verander vanaf $1",
@@ -26,6 +28,7 @@
"ext-uls-display-settings-anon-same-as-content": "$1 (selfde as inhoud)",
"ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Meld aan]] om 'n ander taal vir keuseskerms te kies.",
"ext-uls-webfonts-settings-title": "Laai lettertipes indien nodig",
+ "ext-uls-webfonts-settings-info": "Laai ontbrekende lettertipes outomaties af en laat die kies van voorkeur-lettertipes toe.",
"ext-uls-webfonts-settings-info-link": "Meer inligting",
"ext-uls-webfonts-select-for": "Kies lettertipe vir $1",
"ext-uls-webfonts-select-for-ui-info": "Lettertipe vir koppelvlak",
@@ -54,5 +57,8 @@
"ext-uls-input-disable-notification-info-interlanguage": "U kan die invoer-gereedskap enige tyd weer via die taal-voorkeure langs die lys van tale aktiveer.",
"ext-uls-language-settings-applying": "Pas toe...",
"ext-uls-compact-link-count": "{{PLURAL:$1|Een meer|$1 meer}}",
- "apihelp-ulslocalization-param-language": "Taalkode."
+ "ext-uls-compact-link-info": "Alle tale (beginlys met algemene keuses van andere)",
+ "prefs-languages": "Tale",
+ "ext-uls-compact-language-links-preference": "Wys 'n [[$1|kompakte lys tale]] wat slegs relevante tale bevat.",
+ "ext-uls-compact-no-results": "Dié bladsy is nie beskikbaar in die taal waarin u gesoek het nie."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/ang.json b/MLEB/UniversalLanguageSelector/i18n/ang.json
index 92622217..bf1f9a60 100644
--- a/MLEB/UniversalLanguageSelector/i18n/ang.json
+++ b/MLEB/UniversalLanguageSelector/i18n/ang.json
@@ -1,9 +1,11 @@
{
"@metadata": {
"authors": [
- "Gott wisst"
+ "Gott wisst",
+ "Xð"
]
},
+ "uls-plang-title-languages": "Sprǣca",
"ext-uls-select-language-settings-icon-tooltip": "Sprǣce setednessa",
"ext-uls-undo-language-tooltip-text": "Sprǣc wæs andwended fram $1",
"ext-uls-language-settings-preferences-link": "Mā sprǣce setednessa",
diff --git a/MLEB/UniversalLanguageSelector/i18n/ar.json b/MLEB/UniversalLanguageSelector/i18n/ar.json
index 69ca8917..3fd1e99a 100644
--- a/MLEB/UniversalLanguageSelector/i18n/ar.json
+++ b/MLEB/UniversalLanguageSelector/i18n/ar.json
@@ -5,13 +5,19 @@
"زكريا",
"Asaifm",
"Tarawneh",
- "Abanima"
+ "Abanima",
+ "Maroen1990",
+ "Shbib Al-Subaie",
+ "Meno25",
+ "محمد أحمد عبد الفتاح",
+ "ديفيد"
]
},
"uls-desc": "يمنح المستخدم عدة طرق لاختيار لغة، وضبط إعدادات اللغة",
"uls-plang-title-languages": "لغات",
"ext-uls-select-language-settings-icon-tooltip": "إعدادات اللغة",
"ext-uls-undo-language-tooltip-text": "غيرت اللغة من $1",
+ "ext-uls-undo-language-tooltip-text-local": "تغيرت اللغة لهذا الويكي، تحقق من [[Special:GlobalPreferences|التفضيلات العالمية]] لتغيير اللغة لجميع الويكيات.",
"ext-uls-language-settings-preferences-link": "المزيد من إعدادات اللغة",
"uls-betafeature-label": "وصلات اللغة المدمجة",
"uls-betafeature-desc": "تقوم بإظهار قائمة مختصرة للغات، حيث تعمل الخاصية على إظهار اللغات التي تهمك أكثر.",
@@ -59,11 +65,8 @@
"ext-uls-input-disable-notification-info-interlanguage": "بوسعك تشغيل أدوات الإدخال في أي وقت في إعدادات اللغة الموجودة بجانب قائمة اللغات.",
"ext-uls-language-settings-applying": "تطبيق...",
"ext-uls-compact-link-count": "{{PLURAL:$1|بقية الوصلات: $1}}",
- "apihelp-languagesearch-description": "ابحث عن أسماء اللغات بأي كتابة كانت.",
- "apihelp-languagesearch-param-search": "سطر البحث",
- "apihelp-languagesearch-param-typos": "عدد الأخطاء الطباعية المسموح بها في سطر البحث",
- "apihelp-languagesearch-example-1": "ابحث عن «Te»",
- "apihelp-languagesearch-example-2": "ابحث عن «ഫി»",
- "apihelp-languagesearch-example-3": "ابحث عن «ഫി» واسمح بخطأ مطبعي واحد",
- "apihelp-ulslocalization-param-language": "سطر اللغة."
+ "ext-uls-compact-link-info": "كل اللغات (الاختيار الابتدائي من الاختيارات الشائعة بواسطتك وبواسطة آخرين)",
+ "prefs-languages": "اللغات",
+ "ext-uls-compact-language-links-preference": "استخدم [[$1|قائمة اللغات المدمجة]]، لعرض اللغات المتعلقة بك.",
+ "ext-uls-compact-no-results": "هذه الصفحة غير متاحة في اللغة التي بحثت بها."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/arq.json b/MLEB/UniversalLanguageSelector/i18n/arq.json
index 4286ec9b..17d91aba 100644
--- a/MLEB/UniversalLanguageSelector/i18n/arq.json
+++ b/MLEB/UniversalLanguageSelector/i18n/arq.json
@@ -6,6 +6,5 @@
]
},
"uls-desc": "يجيب للمستخدم بزاف الطرق لتخيار لوغه، و تستاف باراميترات اللوغه",
- "uls-plang-title-languages": "لوغات",
- "apihelp-ulslocalization-param-language": "كود تاع اللوغة."
+ "uls-plang-title-languages": "لوغات"
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/ast.json b/MLEB/UniversalLanguageSelector/i18n/ast.json
index d55d80c9..00db8656 100644
--- a/MLEB/UniversalLanguageSelector/i18n/ast.json
+++ b/MLEB/UniversalLanguageSelector/i18n/ast.json
@@ -2,13 +2,15 @@
"@metadata": {
"authors": [
"Esbardu",
- "Xuacu"
+ "Xuacu",
+ "Macofe"
]
},
"uls-desc": "Ufre al usuariu delles maneres pa seleicionar una llingua y axustar la configuración de llingua",
"uls-plang-title-languages": "Llingües",
"ext-uls-select-language-settings-icon-tooltip": "Preferencies de llingua",
"ext-uls-undo-language-tooltip-text": "La llingua camudó dende $1",
+ "ext-uls-undo-language-tooltip-text-local": "Cambióse d'idioma pa esta wiki. Comprueba les [[Special:GlobalPreferences|preferencies globales]] pa cambiar l'idioma pa toles wikis.",
"ext-uls-language-settings-preferences-link": "Más preferencies de llingua",
"uls-betafeature-label": "Enllaces de llingües compactos",
"uls-betafeature-desc": "Amuesa una versión más curtia de la llista de llingües, sólo coles más relevantes pa vusté.",
@@ -25,7 +27,7 @@
"ext-uls-display-settings-ui-language": "Llingua de la interfaz",
"ext-uls-display-settings-anon-label": "Llingua de la interfaz:",
"ext-uls-display-settings-anon-same-as-content": "$1 (igual que'l conteníu)",
- "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Anicie sesión]] pa seleicionar una llingua diferente pa los menús.",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Anicia sesión]] pa seleicionar una llingua distinta pa los menús.",
"ext-uls-webfonts-settings-title": "Descargar tipografía cuando seya necesario",
"ext-uls-webfonts-settings-info": "Descargar la tipografía que falta y permitir seleicionar la tipografía preferida.",
"ext-uls-webfonts-settings-info-link": "Más información",
@@ -56,14 +58,8 @@
"ext-uls-input-disable-notification-info-interlanguage": "Pue activar les ferramientes d'entrada en cualquier momentu dende la configuración d'idioma que ta cabo la llista de llingües.",
"ext-uls-language-settings-applying": "Aplicando...",
"ext-uls-compact-link-count": "{{PLURAL:$1|Una más|$1 más}}",
- "apihelp-languagesearch-description": "Buscar nomes de llingua en cualquier alfabetu.",
- "apihelp-languagesearch-param-search": "Buscar cadena.",
- "apihelp-languagesearch-param-typos": "Númberu d'errores ortográficos permitíos na cadena de gueta.",
- "apihelp-languagesearch-example-1": "Buscar \"Te\"",
- "apihelp-languagesearch-example-2": "Buscar \"ഫി\"",
- "apihelp-languagesearch-example-3": "Buscar \"ഫി\", permitiendo un fallu d'ortografía",
- "apihelp-ulslocalization-description": "Obtener la llocalización de ULS na llingua dada.",
- "apihelp-ulslocalization-param-language": "Cadena de llingua.",
- "apihelp-ulslocalization-example-1": "Obtener la llocalización en tamil",
- "apihelp-ulslocalization-example-2": "Obtener la llocalización en hindi"
+ "ext-uls-compact-link-info": "Tolos idiomes (esbilla inicial d'opciones comunes de to y d'otros)",
+ "prefs-languages": "Llingües",
+ "ext-uls-compact-language-links-preference": "Usar una [[$1|llista de llingües compacta]] coles más afayadices pa ti.",
+ "ext-uls-compact-no-results": "Esta páxina nun ta disponible na llingua que buscasti."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/awa.json b/MLEB/UniversalLanguageSelector/i18n/awa.json
index 20725d68..edd0a67c 100644
--- a/MLEB/UniversalLanguageSelector/i18n/awa.json
+++ b/MLEB/UniversalLanguageSelector/i18n/awa.json
@@ -52,8 +52,5 @@
"ext-uls-input-disable-notification-info-personal": "भाषा सेटिंग्स में जाइकय कब्बो भी आप इनपुट औजार कय सक्रिय कै सका जात है।",
"ext-uls-input-disable-notification-info-interlanguage": "भाषा सूची कय आगे भाषा सेटिंग्स में जाइकय आप कब्बो भी इनपुट औजार कय सक्रिय कै सका जात है।",
"ext-uls-language-settings-applying": "लागू होत है...",
- "ext-uls-compact-link-count": "{{PLURAL:$1|एक्ठु अउर|$1 अउर}}",
- "apihelp-languagesearch-description": "भाषा कय कवनो भी लिपी मा खोजी सका जात है",
- "apihelp-languagesearch-param-search": "स्ट्रिङ खोजा जाय",
- "apihelp-languagesearch-example-1": "\"Te\" खोजा जाय"
+ "ext-uls-compact-link-count": "{{PLURAL:$1|एक्ठु अउर|$1 अउर}}"
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/az.json b/MLEB/UniversalLanguageSelector/i18n/az.json
index 38167c0a..6d66b9eb 100644
--- a/MLEB/UniversalLanguageSelector/i18n/az.json
+++ b/MLEB/UniversalLanguageSelector/i18n/az.json
@@ -2,13 +2,14 @@
"@metadata": {
"authors": [
"Interfase",
- "Dağlı95"
+ "Dağlı95",
+ "Wertuose"
]
},
"uls-plang-title-languages": "Dillər",
"ext-uls-select-language-settings-icon-tooltip": "Dilin təyin edilməsi",
"ext-uls-undo-language-tooltip-text": "Əvvəlki dil: $1",
- "ext-uls-language-settings-preferences-link": "Daha çox dil parametləri",
+ "ext-uls-language-settings-preferences-link": "Daha çox dil parametri",
"ext-uls-display-settings-language-tab": "Dil",
"ext-uls-display-settings-fonts-tab": "Şriftlər",
"ext-uls-display-settings-title-short": "Görünüş",
@@ -19,9 +20,11 @@
"ext-uls-language-buttons-help": "Menyunun dilini dəyiş. Bu dəyişiklik məzmunun dilinə təsir göstərməyəcəkdir.",
"ext-uls-display-settings-ui-language": "Görüntü dili",
"ext-uls-display-settings-anon-label": "Görüntü dili:",
- "ext-uls-webfonts-settings-info-link": "Daha çox məlumat",
- "ext-uls-input-settings-more-languages-tooltip": "Daha çox dillər",
+ "ext-uls-webfonts-settings-info-link": "Əlavə məlumat",
+ "ext-uls-input-settings-more-languages-tooltip": "Əlavə dillər",
+ "jquery-ime-help": "Kömək",
"ext-uls-input-disable-notification-undo": "Geri qaytar",
"ext-uls-language-settings-applying": "Tətbiq edilir...",
- "ext-uls-compact-link-count": "{{PLURAL:$1|Bir ədəd|$1 ədəd daha çox dil}}"
+ "ext-uls-compact-link-count": "Daha {{PLURAL:$1|1 dil|$1 dil}}",
+ "ext-uls-compact-language-links-preference": "Yalnız özünüzə maraqlı olan [[$1|yığcam dil siyahısını]] istifadə etmək."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/azb.json b/MLEB/UniversalLanguageSelector/i18n/azb.json
index b73c7337..0bd25dfb 100644
--- a/MLEB/UniversalLanguageSelector/i18n/azb.json
+++ b/MLEB/UniversalLanguageSelector/i18n/azb.json
@@ -7,14 +7,17 @@
"Alp Er Tunqa"
]
},
+ "uls-plang-title-languages": "دیل‌لر",
+ "ext-uls-select-language-settings-icon-tooltip": "دیل تنظیملری",
"ext-uls-undo-language-tooltip-text": "دیل $1-دن دَییشدیریلدی",
"ext-uls-language-settings-preferences-link": "آرتیقراق دیل تنظیم‌لری",
"ext-uls-display-settings-title": "گؤسترمک تنظیملری",
+ "ext-uls-display-settings-fonts-tab": "فونتلار",
"ext-uls-display-settings-title-short": "گؤستر",
"ext-uls-display-settings-desc": "مِنولار و یازی‌تیپلره ایشلنن دیلی تنظیمله",
"ext-uls-language-settings-title": "دیل تنظیملری",
"ext-uls-language-settings-apply": "تنظیملری اعمال ائت",
- "ext-uls-language-settings-cancel": "لغو ائت",
+ "ext-uls-language-settings-cancel": "وازگئچ",
"ext-uls-display-settings-font-settings": "یازی‌تیپی تنظیملری",
"ext-uls-display-settings-ui-language": "گؤسترمک دیلی",
"ext-uls-webfonts-settings-title": "یازی‌تیپینی لازیم اولاندا اندیر",
@@ -26,7 +29,7 @@
"ext-uls-back-to-display-settings": "گؤسترمک تنظیملرینه قاییت",
"ext-uls-input-settings-title": "گیریش تنظیملری",
"ext-uls-input-settings-title-short": "گیریش",
- "ext-uls-input-settings-desc": "بیر باشقا دیل‌ده یازیرسینیز؟",
+ "ext-uls-input-settings-desc": "بیر فرقلی دیلده یازیرسینیزمی؟",
"ext-uls-input-settings-ime-settings": "$1 اوچون گیریش یول‌لاری",
"ext-uls-input-settings-ui-language": "یازماغا ایشلنن دیل",
"ext-uls-back-to-input-settings": "گیریش تنظیملرینه قاییت",
@@ -38,5 +41,6 @@
"ext-uls-input-disable": "گیریش یولو آراجلارینی ایشدن سال",
"ext-uls-input-enable": "گیریش یولو آراجلارینی ایشه سال",
"ext-uls-input-disable-info": "گیریش یولو آراجلاری ایشدن دوشدولر.",
- "ext-uls-input-settings-noime": "هئچ گیریش یول‌لاری بو دیل اوچون ال‌ده یوخدور."
+ "ext-uls-input-settings-noime": "هئچ گیریش یول‌لاری بو دیل اوچون ال‌ده یوخدور.",
+ "ext-uls-compact-link-count": "{{PLURAL:$1|۱ داها دیل|$1 داها دیل}}"
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/bcl.json b/MLEB/UniversalLanguageSelector/i18n/bcl.json
index 19183d91..92a2fa7f 100644
--- a/MLEB/UniversalLanguageSelector/i18n/bcl.json
+++ b/MLEB/UniversalLanguageSelector/i18n/bcl.json
@@ -1,8 +1,9 @@
{
"@metadata": {
"authors": [
- "Geopoet"
+ "Geopoet",
+ "Xð"
]
},
- "apihelp-ulslocalization-param-language": "Koda nin Lengguwahe"
+ "uls-plang-title-languages": "Mga Lengguwahe"
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/be-tarask.json b/MLEB/UniversalLanguageSelector/i18n/be-tarask.json
index 5ee457a0..5bdf5f6a 100644
--- a/MLEB/UniversalLanguageSelector/i18n/be-tarask.json
+++ b/MLEB/UniversalLanguageSelector/i18n/be-tarask.json
@@ -1,14 +1,19 @@
{
"@metadata": {
"authors": [
- "Wizardist"
+ "Wizardist",
+ "Red Winged Duck",
+ "Renessaince"
]
},
"uls-desc": "Дае карыстальніку некалькі спосабаў выбраць мову і зьмяніць моўныя налады",
"uls-plang-title-languages": "Мовы",
"ext-uls-select-language-settings-icon-tooltip": "Моўныя налады",
"ext-uls-undo-language-tooltip-text": "Папярэдняя мова — $1",
+ "ext-uls-undo-language-tooltip-text-local": "Мова зьмененая для гэтай вікі. Глядзіце вашыя [[Special:GlobalPreferences|глябальныя налады]], каб зьмяніць мову для ўсіх вікі.",
"ext-uls-language-settings-preferences-link": "Больш моўных наладаў",
+ "uls-betafeature-label": "Кампактныя моўныя спасылкі",
+ "uls-betafeature-desc": "Паказвае скарочаную вэрсію сьпісу моўных спасылак, якія зьяўляюцца больш адпаведнымі для вас.",
"ext-uls-display-settings-title": "Налады выгляду",
"ext-uls-display-settings-language-tab": "Мова",
"ext-uls-display-settings-fonts-tab": "Шрыфты",
@@ -21,10 +26,10 @@
"ext-uls-display-settings-font-settings": "Шрыфтавыя налады",
"ext-uls-display-settings-ui-language": "Мова інтэрфэйсу",
"ext-uls-display-settings-anon-label": "Мова інтэрфэйсу:",
- "ext-uls-display-settings-anon-same-as-content": "Беларуская (тарашкевіца) (як і зьмест)",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (як і зьмест)",
"ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Увайдзіце]], каб выбраць іншую мову інтэрфэйсу.",
"ext-uls-webfonts-settings-title": "Загружаць шрыфты на патрэбу",
- "ext-uls-webfonts-settings-info": "Вэб-шрыфты будуць загружацца для адлюстраваньня тэксту адмысловымі скрыптамі.",
+ "ext-uls-webfonts-settings-info": "Загружаць адсутныя шрыфты аўтаматычна і дазволіць выбар пераважных шрыфтаў.",
"ext-uls-webfonts-settings-info-link": "Болей зьвестак",
"ext-uls-webfonts-select-for": "Шрыфт для мовы $1",
"ext-uls-webfonts-select-for-ui-info": "Шрыфт для інтэрфэйсу",
@@ -50,5 +55,11 @@
"ext-uls-input-disable-notification": "Прылады для ўводу былі выключаныя",
"ext-uls-input-disable-notification-undo": "Скасаваць",
"ext-uls-input-disable-notification-info-personal": "Вы можаце ўключыць прылады для ўводу зноў у моўных наладах.",
- "ext-uls-input-disable-notification-info-interlanguage": "Вы можаце ўключыць прылады для ўводу зноў у моўных наладах побач са сьпісам моваў."
+ "ext-uls-input-disable-notification-info-interlanguage": "Вы можаце ўключыць прылады для ўводу зноў у моўных наладах побач са сьпісам моваў.",
+ "ext-uls-language-settings-applying": "Дастасоўваем…",
+ "ext-uls-compact-link-count": "{{PLURAL:$1|Яшчэ $1}}",
+ "ext-uls-compact-link-info": "Усе мовы (пачатковая выбарка паводле частых Вашых і іншых запытаў)",
+ "prefs-languages": "Мовы",
+ "ext-uls-compact-language-links-preference": "Ужываць [[$1|кампактны сьпіс моваў]] з прыдатнымі для вас мовамі.",
+ "ext-uls-compact-no-results": "Гэтая старонка не даступная на мове, якой вы шукалі."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/bg.json b/MLEB/UniversalLanguageSelector/i18n/bg.json
index 69f58320..e80e7e2c 100644
--- a/MLEB/UniversalLanguageSelector/i18n/bg.json
+++ b/MLEB/UniversalLanguageSelector/i18n/bg.json
@@ -4,13 +4,17 @@
"DCLXVI",
"Spiritia",
"Termininja",
- "Borislav"
+ "Borislav",
+ "Vodnokon4e",
+ "StanProg"
]
},
"uls-plang-title-languages": "Езици",
"ext-uls-select-language-settings-icon-tooltip": "Езикови настройки",
"ext-uls-undo-language-tooltip-text": "Предишен език: $1",
- "ext-uls-language-settings-preferences-link": "Още езикови настройки",
+ "ext-uls-language-settings-preferences-link": "Допълнителни езикови настройки",
+ "uls-betafeature-label": "Компактен списък на езикови връзки",
+ "uls-betafeature-desc": "Показва съкратен вариант на списъка с езици, само с тези, които са по-подходящи за вас.",
"ext-uls-display-settings-title": "Настройки на изгледа",
"ext-uls-display-settings-language-tab": "Език",
"ext-uls-display-settings-fonts-tab": "Шрифтове",
@@ -23,22 +27,22 @@
"ext-uls-display-settings-font-settings": "Настройки на шрифта",
"ext-uls-display-settings-ui-language": "Език на изгледа",
"ext-uls-display-settings-anon-label": "Език за показване:",
- "ext-uls-display-settings-anon-same-as-content": "Български (същияткато на съдържанието)",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (същият като на съдържанието)",
"ext-uls-display-settings-anon-log-in-cta": "За избиране на друг език за менютата е необходимо [[Special:UserLogin|влизане]] в системата.",
- "ext-uls-webfonts-settings-title": "Изтегляне на шрифта при необходимост",
- "ext-uls-webfonts-settings-info": "Ще бъдат свалени уебшрифтове за визуализиране на специалните символи в текста.",
+ "ext-uls-webfonts-settings-title": "Изтегляне на шрифтове при необходимост",
+ "ext-uls-webfonts-settings-info": "Автоматично изтегляне на липсващи шрифтове и позволяване на избор на предпочитани шрифтове.",
"ext-uls-webfonts-settings-info-link": "Още информация",
"ext-uls-webfonts-select-for": "Избор на шрифт за $1",
"ext-uls-webfonts-select-for-ui-info": "Шрифт за потребителския интерфейс",
"ext-uls-webfonts-select-for-content-info": "Шрифт за съдържанието",
"ext-uls-webfonts-system-font": "Системен шрифт",
"ext-uls-back-to-display-settings": "Обратно към настройките на изгледа",
- "ext-uls-input-settings-title": "Настройки на входа",
+ "ext-uls-input-settings-title": "Входящи настройки",
"ext-uls-input-settings-title-short": "Вход (въвеждани данни)",
"ext-uls-input-settings-desc": "На друг език ли пишете?",
"ext-uls-input-settings-ime-settings": "Методи за въвеждане на вход на $1",
"ext-uls-input-settings-ui-language": "Език за писане",
- "ext-uls-back-to-input-settings": "Обратно към настройките на входа",
+ "ext-uls-back-to-input-settings": "Обратно към входящите настройки",
"ext-uls-disable-input-method": "Използване на оригиналната клавиатура",
"ext-uls-input-settings-more-languages-tooltip": "Още езици",
"jquery-ime-other-languages": "Други езици",
@@ -51,5 +55,9 @@
"ext-uls-input-disable-notification": "Инструментите за въвеждане бяха изключени",
"ext-uls-input-disable-notification-undo": "Отмяна",
"ext-uls-input-disable-notification-info-personal": "Можете да активирате инструментите за въвеждане по всяко време от езиковите настройки.",
- "ext-uls-input-disable-notification-info-interlanguage": "Можете да разрешите инструментите за въвеждане по всяко време от езиковите настройки до списъка с езици."
+ "ext-uls-input-disable-notification-info-interlanguage": "Можете да разрешите инструментите за въвеждане по всяко време от езиковите настройки до списъка с езици.",
+ "ext-uls-language-settings-applying": "Прилагане...",
+ "ext-uls-compact-link-count": "{{PLURAL:$1|Още $1}}",
+ "prefs-languages": "Езици",
+ "ext-uls-compact-language-links-preference": "Използване на [[$1|компактен списък на езиците]], имащи отношение към вас."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/bho.json b/MLEB/UniversalLanguageSelector/i18n/bho.json
index c7e20873..cd592db8 100644
--- a/MLEB/UniversalLanguageSelector/i18n/bho.json
+++ b/MLEB/UniversalLanguageSelector/i18n/bho.json
@@ -1,9 +1,11 @@
{
"@metadata": {
"authors": [
- "Nepaboy"
+ "Nepaboy",
+ "Xð"
]
},
+ "uls-plang-title-languages": "भाषा",
"ext-uls-select-language-settings-icon-tooltip": "भाषा सेटिंग्स",
"ext-uls-undo-language-tooltip-text": "$1 से भाषा बदल दिहल गईल",
"ext-uls-language-settings-preferences-link": "अउर अधिक भाषा सेटिंग्स",
diff --git a/MLEB/UniversalLanguageSelector/i18n/bn.json b/MLEB/UniversalLanguageSelector/i18n/bn.json
index 77c5a5e1..63e157ba 100644
--- a/MLEB/UniversalLanguageSelector/i18n/bn.json
+++ b/MLEB/UniversalLanguageSelector/i18n/bn.json
@@ -4,13 +4,15 @@
"Aftab1995",
"Bellayet",
"Aftabuzzaman",
- "Nasir8891"
+ "Nasir8891",
+ "আফতাবুজ্জামান"
]
},
"uls-desc": "ব্যবহারকারীকে ভাষা নির্বাচন এবং ভাষা সম্পর্কিত সেটিং সমন্বয়ের বিভিন্ন উপায় দেয়",
"uls-plang-title-languages": "ভাষা",
"ext-uls-select-language-settings-icon-tooltip": "ভাষা সেটিং",
"ext-uls-undo-language-tooltip-text": "$1 হতে ভাষার পরিবর্তন",
+ "ext-uls-undo-language-tooltip-text-local": "এই উইকির জন্য ভাষা পরিবর্তন করা হয়েছে। সকল উইকির জন্য ভাষা পরিবর্তন করতে আপনার [[Special:GlobalPreferences|বৈশ্বিক পছন্দগুলি]] দেখুন।",
"ext-uls-language-settings-preferences-link": "আরও ভাষা সেটিং",
"uls-betafeature-label": "সংক্ষেপিত ভাষা সংযোগ",
"uls-betafeature-desc": "অন্যান্য ভাষাসমূহের সাথে ভাষার তালিকার একটি সংক্ষিপ্ত সংস্করণ দেখাবে, যা আপনার কাছে আরো বেশি প্রাসঙ্গিক।",
@@ -26,14 +28,14 @@
"ext-uls-display-settings-font-settings": "ফন্ট সেটিং",
"ext-uls-display-settings-ui-language": "প্রদর্শন ভাষা",
"ext-uls-display-settings-anon-label": "প্রদর্শন ভাষা:",
- "ext-uls-display-settings-anon-same-as-content": "$1 (কন্টেন্টের মত)",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (বিষয়বস্তুর মত)",
"ext-uls-display-settings-anon-log-in-cta": "মেন্যুর জন্য আলাদা ভাষা নির্বাচন করতে [[Special:UserLogin|প্রবেশ]] করুন।",
"ext-uls-webfonts-settings-title": "ফন্ট ডাউনলোড করুন যখন প্রয়োজন হবে?",
"ext-uls-webfonts-settings-info": "স্বয়ংক্রিয়ভাবে অনুপস্থিত ফন্ট ডাউনলোড করুন এবং পছন্দের ফন্ট নির্বাচনের অনুমতি দিন।",
"ext-uls-webfonts-settings-info-link": "আরও তথ্য",
"ext-uls-webfonts-select-for": "$1 এর জন্য ফন্ট নির্বাচন",
"ext-uls-webfonts-select-for-ui-info": "ব্যবহারকারী ইন্টারফেসের জন্য ব্যবহৃত ফন্ট",
- "ext-uls-webfonts-select-for-content-info": "কন্টেন্টের জন্য ব্যবহৃত ফন্ট",
+ "ext-uls-webfonts-select-for-content-info": "বিষয়বস্তুর জন্য ব্যবহৃত ফন্ট",
"ext-uls-webfonts-system-font": "সিস্টেম ফন্ট",
"ext-uls-back-to-display-settings": "প্রদর্শন সেটিং এ ফিরে যাও",
"ext-uls-input-settings-title": "ইনপুট সেটিং",
@@ -48,24 +50,18 @@
"jquery-ime-other-languages": "অন্যান্য ভাষাসমূহ",
"jquery-ime-disable-text": "স্থানীয় কিবোর্ড ব্যবহার করুন",
"jquery-ime-help": "সাহায্য",
- "ext-uls-input-disable": "ইনপুট টুল নিস্ক্রিয় করো",
- "ext-uls-input-enable": "ইনপুট টুল সক্রিয় করো",
- "ext-uls-input-disable-info": "ইনপুট টুল নিস্ক্রিয় রয়েছে।",
+ "ext-uls-input-disable": "ইনপুট সরঞ্জাম নিস্ক্রিয় করো",
+ "ext-uls-input-enable": "ইনপুট সরঞ্জাম সক্রিয় করো",
+ "ext-uls-input-disable-info": "ইনপুট সরঞ্জাম নিস্ক্রিয় রয়েছে।",
"ext-uls-input-settings-noime": "এই ভাষার জন্য কোন ইনপুট পদ্ধতি নাই।",
- "ext-uls-input-disable-notification": "ইনপুট টুল নিস্ক্রিয় করা হয়েছে",
+ "ext-uls-input-disable-notification": "ইনপুট সরঞ্জাম নিস্ক্রিয় করা হয়েছে",
"ext-uls-input-disable-notification-undo": "পূর্বাবস্থায় ফেরাও",
- "ext-uls-input-disable-notification-info-personal": "আপনি ভাষা সেটিং থেকে যে কোনো সময়ে ইনপুট টুল সক্রিয় করতে পারেন।",
- "ext-uls-input-disable-notification-info-interlanguage": "আপনি ভাষার তালিকার পাশে ভাষা সেটিং থেকে যে কোনো সময়ে ইনপুট টুল সক্রিয় করতে পারেন।",
+ "ext-uls-input-disable-notification-info-personal": "আপনি ভাষা সেটিং থেকে যে কোনো সময়ে ইনপুট সরঞ্জাম সক্রিয় করতে পারেন।",
+ "ext-uls-input-disable-notification-info-interlanguage": "আপনি ভাষার তালিকার পাশে ভাষা সেটিং থেকে যে কোনো সময়ে ইনপুট সরঞ্জাম সক্রিয় করতে পারেন।",
"ext-uls-language-settings-applying": "প্রয়োগ হচ্ছে...",
"ext-uls-compact-link-count": "{{PLURAL:$1|আরও একটি|আরও $1টি}}",
- "apihelp-languagesearch-description": "যে কোনো স্ক্রিপ্টে ভাষার নাম অনুসন্ধান করুন।",
- "apihelp-languagesearch-param-search": "বাক্য অনুসন্ধান।",
- "apihelp-languagesearch-param-typos": "বাক্য অনুসন্ধানে গ্রহনযোগ্য বানান ভুলের সংখ্যা ।",
- "apihelp-languagesearch-example-1": "\"Te\" এর জন্য অনুসন্ধান",
- "apihelp-languagesearch-example-2": "\"ഫി\" এর জন্য অনুসন্ধান",
- "apihelp-languagesearch-example-3": "\"ഫി\" এর জন্য অনুসন্ধান, একটি বানান ভুল গ্রহনযোগ্য",
- "apihelp-ulslocalization-description": "ইউএলএস এর এই ভাষায় ব্যবহার করুন।",
- "apihelp-ulslocalization-param-language": "ভাষা।",
- "apihelp-ulslocalization-example-1": "তামিল ভাষায় ব্যবহার",
- "apihelp-ulslocalization-example-2": "হিন্দি ভাষায় ব্যবহার"
+ "ext-uls-compact-link-info": "সব ভাষাসমূহ (আপনার ও অন্যদের দ্বারা সাধারণ পছন্দ থেকে প্রাথমিক নির্বাচন)",
+ "prefs-languages": "ভাষাসমূহ",
+ "ext-uls-compact-language-links-preference": "আপনার কাছে প্রাসঙ্গিক মনে হয় এমন ভাষাসহ, [[$1|ভাষার একটি ছোট তালিকা]] ব্যবহার করে।",
+ "ext-uls-compact-no-results": "এই পৃষ্ঠাটি আপনার অনুসন্ধান করা ভাষাতে নেই।"
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/br.json b/MLEB/UniversalLanguageSelector/i18n/br.json
index 43ca3b08..c1656c11 100644
--- a/MLEB/UniversalLanguageSelector/i18n/br.json
+++ b/MLEB/UniversalLanguageSelector/i18n/br.json
@@ -3,7 +3,8 @@
"authors": [
"Fohanno",
"Y-M D",
- "Fulup"
+ "Fulup",
+ "VIGNERON"
]
},
"uls-plang-title-languages": "Yezhoù",
@@ -45,5 +46,5 @@
"ext-uls-input-enable": "Gweredekaat an ostilhoù bizskrivañ",
"ext-uls-input-disable-notification-undo": "Dizober",
"ext-uls-language-settings-applying": "O lakaat e pleustr...",
- "ext-uls-compact-link-count": "{{PLURAL:$1|Ur|$1}} yezh ouzhpenn"
+ "ext-uls-compact-link-count": "{{PLURAL:$1|Unan|$1}} ouzhpenn"
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/bs.json b/MLEB/UniversalLanguageSelector/i18n/bs.json
index 858e5aae..530272a8 100644
--- a/MLEB/UniversalLanguageSelector/i18n/bs.json
+++ b/MLEB/UniversalLanguageSelector/i18n/bs.json
@@ -3,27 +3,28 @@
"authors": [
"DzWiki",
"Srdjan m",
- "Semso98"
+ "Semso98",
+ "Prevodim"
]
},
"uls-desc": "Daje korisniku nekoliko načina da izabere jezik i da prilagodi postavke jezika",
"uls-plang-title-languages": "Jezici",
"ext-uls-select-language-settings-icon-tooltip": "Postavke jezika",
- "ext-uls-undo-language-tooltip-text": "Jezik promijenjen sa $1",
+ "ext-uls-undo-language-tooltip-text": "Jezik promijenjen; prethodno je bio postavljen $1",
"ext-uls-language-settings-preferences-link": "Više jezičkih postavki",
"uls-betafeature-label": "Sažeti linkovi na druge jezike",
- "uls-betafeature-desc": "Prikaži kraći spisak s poveznicama na druge jezike, samo s jezicima koji su Vam najvažniji.",
+ "uls-betafeature-desc": "Prikaži kraći spisak s linkovima na druge jezike, samo s jezicima koji su Vam najvažniji.",
"ext-uls-display-settings-title": "Postavke prikaza",
"ext-uls-display-settings-language-tab": "Jezik",
"ext-uls-display-settings-fonts-tab": "Fontovi",
"ext-uls-display-settings-title-short": "Prikaz",
- "ext-uls-display-settings-desc": "Postavi jezik koji će se koristiti za menije i fontove",
+ "ext-uls-display-settings-desc": "Postavi jezik koji će se koristiti za menije i fontove.",
"ext-uls-language-settings-title": "Postavke jezika",
"ext-uls-language-settings-apply": "Primijeni postavke",
"ext-uls-language-settings-cancel": "Otkaži",
"ext-uls-language-buttons-help": "Promijenite jezik menija. Jezik sadržaja neće biti promijenjen.",
"ext-uls-display-settings-font-settings": "Postavke fonta",
- "ext-uls-display-settings-ui-language": "Jezika za prikaz",
+ "ext-uls-display-settings-ui-language": "Jezik prikaza",
"ext-uls-display-settings-anon-label": "Jezik prikaza:",
"ext-uls-display-settings-anon-same-as-content": "$1 (isto kao i sadržaj)",
"ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Prijavite se]] kako biste izabrali drugi jezik za menije.",
@@ -39,22 +40,25 @@
"ext-uls-input-settings-title-short": "Unos",
"ext-uls-input-settings-desc": "Pišete na drugom jeziku?",
"ext-uls-input-settings-ime-settings": "Načini unosa za $1",
- "ext-uls-input-settings-ui-language": "Jezik korišćen za pisanje",
+ "ext-uls-input-settings-ui-language": "Jezik korišten za pisanje",
"ext-uls-back-to-input-settings": "Nazad na postavke unosa",
"ext-uls-ime-help": "Kako se koristi",
- "ext-uls-disable-input-method": "Koristite izvornu tastaturu",
+ "ext-uls-disable-input-method": "Koristi izvornu tastaturu",
"ext-uls-input-settings-more-languages-tooltip": "Više jezika",
"jquery-ime-other-languages": "Drugi jezici",
- "jquery-ime-disable-text": "Koristite izvornu tastaturu",
+ "jquery-ime-disable-text": "Koristi izvornu tastaturu",
"jquery-ime-help": "Pomoć",
- "ext-uls-input-disable": "Onemogući alate za unos",
- "ext-uls-input-enable": "Omogući alate za unos",
- "ext-uls-input-disable-info": "Alati za unos su onemogućeni",
+ "ext-uls-input-disable": "Isključi alate za unos",
+ "ext-uls-input-enable": "Uključi alate za unos",
+ "ext-uls-input-disable-info": "Alati za unos su isključeni.",
"ext-uls-input-settings-noime": "Nema dostupne metoda unosa za ovaj jezik.",
- "ext-uls-input-disable-notification": "Alati za unos su onemogućeni",
+ "ext-uls-input-disable-notification": "Alati za unos su isključeni",
"ext-uls-input-disable-notification-undo": "Poništi",
"ext-uls-input-disable-notification-info-personal": "Možete omogućiti alate za unos bilo koje vrijeme na postavke jezika.",
- "ext-uls-input-disable-notification-info-interlanguage": "Alate za unos možete u svakom trenutku omogućiti u jezičnim postavkama pored jezičnog spiska.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Alate za unos možete u svakom trenutku omogućiti u jezičkim postavkama pored spiska jezika.",
"ext-uls-language-settings-applying": "Primjenjujem...",
- "ext-uls-compact-link-count": "{{PLURAL:$1|Još jedan|Još $1}}"
+ "ext-uls-compact-link-count": "Još {{PLURAL:$1|1=jedan|$1}}",
+ "ext-uls-compact-link-info": "Svi jezici (prvobitni odabir zasnovan je na najčešćim odabirima Vas i drugih korisnika)",
+ "prefs-languages": "Jezici",
+ "ext-uls-compact-language-links-preference": "Koristi [[$1|sažeti spisak jezika]], s jezicima koji su Vam važni."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/ca.json b/MLEB/UniversalLanguageSelector/i18n/ca.json
index a75560da..97a45264 100644
--- a/MLEB/UniversalLanguageSelector/i18n/ca.json
+++ b/MLEB/UniversalLanguageSelector/i18n/ca.json
@@ -16,6 +16,7 @@
"uls-betafeature-desc": "Mostra una versió reduïda de la llista de llengües amb aquelles que més us interessen.",
"ext-uls-display-settings-title": "Paràmetres de presentació",
"ext-uls-display-settings-language-tab": "Llengua",
+ "ext-uls-display-settings-fonts-tab": "Tipus de lletra",
"ext-uls-display-settings-title-short": "Presentació",
"ext-uls-display-settings-desc": "Defineix la llengua utilitzada per als menús i tipus de lletra.",
"ext-uls-language-settings-title": "Configuració de llengua",
@@ -57,5 +58,7 @@
"ext-uls-input-disable-notification-info-interlanguage": "Podeu habilitar les eines d'entrada en qualsevol moment des de la configuració de llengua al costat de la llista de llengües.",
"ext-uls-language-settings-applying": "Aplicant…",
"ext-uls-compact-link-count": "{{PLURAL:$1|Una més|$1 més}}",
- "apihelp-ulslocalization-param-language": "Codi d'idioma."
+ "ext-uls-compact-link-info": "Totes les llengües (selecció inicial d'opcions més comunes vostres i d'altres)",
+ "prefs-languages": "Llengües",
+ "ext-uls-compact-language-links-preference": "Utilitza una [[$1|llista de llengües compacta]] amb aquelles més rellevants per a mi."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/ce.json b/MLEB/UniversalLanguageSelector/i18n/ce.json
index 91d4b08f..82fdaf44 100644
--- a/MLEB/UniversalLanguageSelector/i18n/ce.json
+++ b/MLEB/UniversalLanguageSelector/i18n/ce.json
@@ -22,11 +22,11 @@
"ext-uls-language-settings-cancel": "Цаоьшу",
"ext-uls-language-buttons-help": "Хийца меньюн мотт. Чулацаман мотт хийца лур бац.",
"ext-uls-display-settings-font-settings": "Шрифташ дӀахӀоттор",
- "ext-uls-display-settings-ui-language": "Сурт хӀотторан мотт",
- "ext-uls-display-settings-anon-label": "Сурт хӀотторан мотт:",
+ "ext-uls-display-settings-ui-language": "Интерфейсан мотт",
+ "ext-uls-display-settings-anon-label": "Интерфейсан мотт:",
"ext-uls-display-settings-anon-same-as-content": "$1 (чулацаман сана)",
"ext-uls-display-settings-anon-log-in-cta": "Меню мотт харжа [[Special:UserLogin|системин чугӀо]].",
- "ext-uls-webfonts-settings-title": "Оьшуш хилахь чуяха шрифташ",
+ "ext-uls-webfonts-settings-title": "Оьшуш хилахь схьаэца шрифташ",
"ext-uls-webfonts-settings-info": "Ша чуяха йоцу шрифташ, гӀоли шрифташ харжа магийта.",
"ext-uls-webfonts-settings-info-link": "Кхин тӀе хаам",
"ext-uls-webfonts-select-for": "Шрифт харжар цу $1",
@@ -55,6 +55,9 @@
"ext-uls-input-disable-notification-info-personal": "Яздаран гӀирс лело йиш ю муьлхачу хенахь мотт хуьйцу гӀирсан чохь.",
"ext-uls-input-disable-notification-info-interlanguage": "Яздаран гӀирс лело йиш ю муьлхачу хенахь мотт хуьйцу гӀирсан чохь.",
"ext-uls-language-settings-applying": "ДӀахӀоттор…",
- "ext-uls-compact-link-count": "Кхин {{PLURAL:$1|цхьан маттахь|$1 меттанашкахь}}",
- "apihelp-ulslocalization-param-language": "Меттан код."
+ "ext-uls-compact-link-count": "{{PLURAL:$1|Кхин $1}}",
+ "ext-uls-compact-link-info": "Берриге меттанаш (дуьххьара хаьржинарш бу ахьа я кхечара лелина меттанаш)",
+ "prefs-languages": "Меттанаш",
+ "ext-uls-compact-language-links-preference": "Лелабе [[$1|компакте болу меттанийн могӀам]] хьайна оьшу меттанаш долуш.",
+ "ext-uls-compact-no-results": "Ахьа хаьржинчу маттахь иза агӀо тӀекхочуш яц."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/ckb.json b/MLEB/UniversalLanguageSelector/i18n/ckb.json
index d9c95a50..6472dbd0 100644
--- a/MLEB/UniversalLanguageSelector/i18n/ckb.json
+++ b/MLEB/UniversalLanguageSelector/i18n/ckb.json
@@ -2,7 +2,10 @@
"@metadata": {
"authors": [
"Calak",
- "Asoxor"
+ "Asoxor",
+ "Sarchia",
+ "Lost Whispers",
+ "Épine"
]
},
"uls-desc": "ڕێگای جۆربەجۆر بۆ بەکارھێنەر بۆ ھەڵبژاردنی زمان و جێبەجێکردنی ڕێکخستنەکانی زمان دخاتە ڕوو.",
@@ -17,7 +20,7 @@
"ext-uls-display-settings-desc": "زمانی بەکاگیراوی مێنووکان و فۆنتەکان ھەڵبژێرە.",
"ext-uls-language-settings-title": "ڕێکخستنەکانی زمان",
"ext-uls-language-settings-apply": "ڕێکخستنەکان بەکاربەرە",
- "ext-uls-language-settings-cancel": "ھەڵیوەشێنەوە",
+ "ext-uls-language-settings-cancel": "ھەڵوەشاندنەوە",
"ext-uls-language-buttons-help": "زمانی ڕووکار بگۆڕە. کاریگەری لەسەر زمانی ناوەرۆک نابێت.",
"ext-uls-display-settings-font-settings": "ڕێکخستنەکانی فۆنت",
"ext-uls-display-settings-ui-language": "پێشاندانی زمان",
@@ -51,5 +54,7 @@
"ext-uls-input-disable-notification-undo": "پووچەڵکردنەوە",
"ext-uls-input-disable-notification-info-personal": "ھەر کات ویستت دەتوانی ئامرازەکانی تەختەکلیل لە بەشی ڕێکخستنەکانی زمان چالاک بکەی.",
"ext-uls-input-disable-notification-info-interlanguage": "ھەر کات ویستت دەتوانی ئامرازەکانی تەختەکلیل لە بەشی ڕێکخستنەکانی زمان لە لای پێرستی زمانەکان چالاک بکەی.",
- "ext-uls-compact-link-count": "{{PLURAL:$1|زمانێکی تر|$1 زمانی تر}}"
+ "ext-uls-compact-link-count": "{{PLURAL:$1|زمانێکی تر|$1 زمانی تر}}",
+ "prefs-languages": "زمانەکان",
+ "ext-uls-compact-language-links-preference": "بەکارھێنانی [[$1|پێرستێکی پتەوی زمانەکان]] بەو زمانانەوەی کە دەیانناسیت"
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/co.json b/MLEB/UniversalLanguageSelector/i18n/co.json
index 5278b35b..d3714110 100644
--- a/MLEB/UniversalLanguageSelector/i18n/co.json
+++ b/MLEB/UniversalLanguageSelector/i18n/co.json
@@ -1,8 +1,10 @@
{
"@metadata": {
"authors": [
- "Paulu"
+ "Paulu",
+ "Xð"
]
},
+ "uls-plang-title-languages": "Lingue",
"ext-uls-input-settings-desc": "Scrivi in una lingua sfarente?"
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/cs.json b/MLEB/UniversalLanguageSelector/i18n/cs.json
index 6542ab0e..f5b2e315 100644
--- a/MLEB/UniversalLanguageSelector/i18n/cs.json
+++ b/MLEB/UniversalLanguageSelector/i18n/cs.json
@@ -3,13 +3,18 @@
"authors": [
"Littledogboy",
"Mormegil",
- "Matěj Suchánek"
+ "Matěj Suchánek",
+ "Danny B.",
+ "Kusurija",
+ "Dvorapa",
+ "Ilimanaq29"
]
},
"uls-desc": "Nabízí uživateli několik způsobů volby jazyka a úpravy jazykových nastavení",
"uls-plang-title-languages": "Jazyky",
"ext-uls-select-language-settings-icon-tooltip": "Jazyková nastavení",
"ext-uls-undo-language-tooltip-text": "Jazyk změněn z $1",
+ "ext-uls-undo-language-tooltip-text-local": "Jazyk změněn pro tuto wiki. Pro změnu jazyka na všech wiki se podívejte na své [[Special:GlobalPreferences|globální nastavení]].",
"ext-uls-language-settings-preferences-link": "Další jazyková nastavení",
"uls-betafeature-label": "Kompaktní mezijazykové odkazy",
"uls-betafeature-desc": "Zobrazuje kratší verzi seznamu jazyků, obsahující jen jazyky, které jsou pro vás důležité.",
@@ -56,5 +61,9 @@
"ext-uls-input-disable-notification-info-personal": "Nástroje pro vstup můžete kdykoli zapnout v jazykových nastaveních.",
"ext-uls-input-disable-notification-info-interlanguage": "Nástroje pro vstup můžete kdykoli zapnout v jazykových nastaveních vedle seznamu jazyků.",
"ext-uls-language-settings-applying": "Provádí se…",
- "ext-uls-compact-link-count": "$1 {{PLURAL:$1|další|další|dalších}}"
+ "ext-uls-compact-link-count": "$1 {{PLURAL:$1|další|další|dalších}}",
+ "ext-uls-compact-link-info": "Všechny jazyky (počáteční výběr ze společných voleb vás a ostatních)",
+ "prefs-languages": "Jazyky",
+ "ext-uls-compact-language-links-preference": "Používat [[$1|kompaktní seznam jazyků]] pouze s jazyky pro vás relevantními",
+ "ext-uls-compact-no-results": "Tato stránka není dostupná v jazyce, který jste hledal/a."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/cu.json b/MLEB/UniversalLanguageSelector/i18n/cu.json
index c06f83cc..8aba7de3 100644
--- a/MLEB/UniversalLanguageSelector/i18n/cu.json
+++ b/MLEB/UniversalLanguageSelector/i18n/cu.json
@@ -1,17 +1,19 @@
{
"@metadata": {
"authors": [
- "ОйЛ"
+ "ОйЛ",
+ "Xð"
]
},
"uls-desc": "Срѣдьство дѣлꙗ польꙃєватєльска оустроѥниꙗ ѩꙁꙑка и съвѧꙁанъ вєщии",
- "uls-plang-title-languages": "ѩꙁꙑци",
+ "uls-plang-title-languages": "Ѩꙁꙑци",
"ext-uls-select-language-settings-icon-tooltip": "ѩꙁꙑка строи",
"ext-uls-undo-language-tooltip-text": "ѩꙁꙑкъ иꙁмѣнєнъ ѥстъ отъ $1",
"ext-uls-language-settings-preferences-link": "вѧщи ѩꙁꙑка строи",
"ext-uls-display-settings-language-tab": "ѩꙁꙑкъ",
"ext-uls-display-settings-fonts-tab": "боукъвиѥ",
"ext-uls-language-settings-title": "ѩꙁꙑка строи",
+ "ext-uls-language-settings-cancel": "отъмѣтаниѥ",
"ext-uls-display-settings-font-settings": "боукъвиꙗ строи",
"ext-uls-display-settings-anon-same-as-content": "$1 (ꙗко жє съдрьжаниѥ)",
"ext-uls-webfonts-select-for": "боукъвиꙗ иꙁборъ $1 дѣлꙗ",
diff --git a/MLEB/UniversalLanguageSelector/i18n/cy.json b/MLEB/UniversalLanguageSelector/i18n/cy.json
index 27365840..29709a39 100644
--- a/MLEB/UniversalLanguageSelector/i18n/cy.json
+++ b/MLEB/UniversalLanguageSelector/i18n/cy.json
@@ -3,7 +3,8 @@
"authors": [
"Lloffiwr",
"Robin Owain",
- "Nemo bis"
+ "Nemo bis",
+ "Divec"
]
},
"uls-desc": "Yn cynnig sawl ffordd i'r defnyddiwr allu dewis iaith a newid gosodiadau iaith",
@@ -56,5 +57,5 @@
"ext-uls-input-disable-notification-info-personal": "Gallwch alluogi'r offer mewnbynnu unrhyw bryd, drwy'r gosodiadau iaith.",
"ext-uls-input-disable-notification-info-interlanguage": "Gallwch alluogi'r offer mewnbynnu unrhyw bryd drwy'r gosodiadau iaith, wrth ymyl rhestr yr ieithoedd.",
"ext-uls-language-settings-applying": "Wrthi'n gosod...",
- "ext-uls-compact-link-count": "{{PLURAL:$1|$1 iaith arall}}"
+ "ext-uls-compact-link-count": "{{PLURAL:$1|dim eraill|un arall|$1 eraill}}"
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/da.json b/MLEB/UniversalLanguageSelector/i18n/da.json
index 0bb6b9ce..4aa5ced3 100644
--- a/MLEB/UniversalLanguageSelector/i18n/da.json
+++ b/MLEB/UniversalLanguageSelector/i18n/da.json
@@ -58,5 +58,7 @@
"ext-uls-input-disable-notification-info-personal": "Du kan altid slå indtastningsværktøjerne til i sprogindstillingerne.",
"ext-uls-input-disable-notification-info-interlanguage": "Du kan altid slå indtastningsværktøjerne til i sprogindstillingerne ved siden af sproglisten.",
"ext-uls-language-settings-applying": "Anvender...",
- "ext-uls-compact-link-count": "{{PLURAL:$1|Et sprog til|$1 sprog til}}"
+ "ext-uls-compact-link-count": "{{PLURAL:$1|Et mere|$1 mere}}",
+ "prefs-languages": "Sprog",
+ "ext-uls-compact-language-links-preference": "Brug en kompakt sprogliste med sprog, der er relevante for dig."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/de.json b/MLEB/UniversalLanguageSelector/i18n/de.json
index 53950408..11e19d3d 100644
--- a/MLEB/UniversalLanguageSelector/i18n/de.json
+++ b/MLEB/UniversalLanguageSelector/i18n/de.json
@@ -11,6 +11,7 @@
"uls-plang-title-languages": "Sprachen",
"ext-uls-select-language-settings-icon-tooltip": "Spracheinstellungen",
"ext-uls-undo-language-tooltip-text": "Sprache geändert von $1",
+ "ext-uls-undo-language-tooltip-text-local": "Die Sprache wurde für dieses Wiki geändert. Gehe zu deinen [[Special:GlobalPreferences|globalen Einstellungen]], um die Sprache für alle Wikis zu ändern.",
"ext-uls-language-settings-preferences-link": "Weitere Spracheinstellungen",
"uls-betafeature-label": "Kompakte Sprachlinks",
"uls-betafeature-desc": "Zeigt eine kürzere Version der Sprachenliste mit den für dich relevanten Sprachen an.",
@@ -58,14 +59,8 @@
"ext-uls-input-disable-notification-info-interlanguage": "Du kannst die Eingabewerkzeuge zu jeder Zeit in den Spracheinstellungen neben der Sprachenliste aktivieren.",
"ext-uls-language-settings-applying": "Anwenden …",
"ext-uls-compact-link-count": "{{PLURAL:$1|Eine weitere|$1 weitere}}",
- "apihelp-languagesearch-description": "Sucht nach Sprachnamen in beliebiger Schrift.",
- "apihelp-languagesearch-param-search": "Such-Zeichenfolge.",
- "apihelp-languagesearch-param-typos": "Anzahl der erlaubten Rechtschreibfehler in der Sucheingabe.",
- "apihelp-languagesearch-example-1": "Sucht nach „Te“",
- "apihelp-languagesearch-example-2": "Sucht nach „ഫി“",
- "apihelp-languagesearch-example-3": "Sucht nach „ഫി“, erlaubt einen Tippfehler",
- "apihelp-ulslocalization-description": "Ruft die Lokalisierung von ULS in der vorgegebenen Sprache ab.",
- "apihelp-ulslocalization-param-language": "Sprachcode.",
- "apihelp-ulslocalization-example-1": "Ruft die Tamil-Lokalisierung ab",
- "apihelp-ulslocalization-example-2": "Ruft die Hindi-Lokalisierung ab"
+ "ext-uls-compact-link-info": "Alle Sprachen (erste Auswahl der häufigen Auswahlen von dir und anderen)",
+ "prefs-languages": "Sprachen",
+ "ext-uls-compact-language-links-preference": "Eine [[$1|kompakte Sprachliste]] mit für dich relevanten Sprachen verwenden.",
+ "ext-uls-compact-no-results": "Diese Seite ist nicht in der gewünschten Sprache verfügbar."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/diq.json b/MLEB/UniversalLanguageSelector/i18n/diq.json
index 05e85d62..589a806a 100644
--- a/MLEB/UniversalLanguageSelector/i18n/diq.json
+++ b/MLEB/UniversalLanguageSelector/i18n/diq.json
@@ -3,26 +3,64 @@
"authors": [
"Gorizon",
"Marmase",
- "Mirzali"
+ "Mirzali",
+ "Kumkumuk",
+ "1917 Ekim Devrimi",
+ "Gırd"
]
},
+ "uls-desc": "Karberi rê seba weçinıtışê zıwani û vurnayışê eyarê zıwani ra weçinıkan peyda keno",
"uls-plang-title-languages": "Zıwani",
"ext-uls-select-language-settings-icon-tooltip": "Eyarê zıwani",
+ "ext-uls-undo-language-tooltip-text": "Zıwan $1 ra açarniya",
"ext-uls-language-settings-preferences-link": "Dahana véşi zıwani",
+ "uls-betafeature-label": "Gıreyê zıwaniyê tengkerdeyi",
+ "uls-betafeature-desc": " Ebe zıwananê ke şıma rê muhimê, yew verziyonê lista zıwaniyo kılmi mocneno.",
+ "ext-uls-display-settings-title": "Eyarê ekrani",
"ext-uls-display-settings-language-tab": "Zıwan",
"ext-uls-display-settings-fonts-tab": "Fonti",
- "ext-uls-display-settings-title-short": "Asen",
+ "ext-uls-display-settings-title-short": "Ekran",
+ "ext-uls-display-settings-desc": "Semedê menuyan û babetê nuşteyan ra zıwan weçine.",
+ "ext-uls-language-settings-title": "Eyarê zıwani",
+ "ext-uls-language-settings-apply": "Eyaran tetbiq ke",
"ext-uls-language-settings-cancel": "Bıtexelne",
+ "ext-uls-language-buttons-help": "Zıwanê menuyan bıvurne. Zıwanê zerreki rê theba nêbeno.",
"ext-uls-display-settings-font-settings": "Eyarê tipê nuştey",
"ext-uls-display-settings-ui-language": "Zıwanê asnayışi",
"ext-uls-display-settings-anon-label": "Zıwanê asnayışi:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (be zerreki ra eyniyo)",
+ "ext-uls-display-settings-anon-log-in-cta": "Semedê menuyan rê zewbina zıwan weçinıtışi rê [[Special:UserLogin|cı kewe]].",
+ "ext-uls-webfonts-settings-title": "İcab ke keno babetê nuştışi rone",
+ "ext-uls-webfonts-settings-info": "Babetê nuştışê kemiyan otomatikmen rone û seba weçinıtışê tercihanê babetê nuştışi rê icazet bıde.",
+ "ext-uls-webfonts-settings-info-link": "Dehana vêşi melumat",
+ "ext-uls-webfonts-select-for": "Semedê $1 ra babetê nuştışi weçine",
+ "ext-uls-webfonts-select-for-ui-info": "Semedê verriyê babetê nuşteyi ra gureniyeno",
+ "ext-uls-webfonts-select-for-content-info": "Babetê nuşteyo ke semedê zerreki ra gureniyeno",
+ "ext-uls-webfonts-system-font": "Babetê nuşteyê sistemi",
+ "ext-uls-back-to-display-settings": "Peyser şo ekranê eyaran",
+ "ext-uls-input-settings-title": "Eyarê cıkewtışi",
+ "ext-uls-input-settings-title-short": "Cıkewtış",
+ "ext-uls-input-settings-desc": "Şımayê zewbina zıwan ra nusenê?",
+ "ext-uls-input-settings-ime-settings": "Semedê $1 ra metodê cıkewtışi",
+ "ext-uls-input-settings-ui-language": "Zıwano ke semedê nuştışi ra gureniyeno",
+ "ext-uls-back-to-input-settings": "Peyser şo eyaranê cıkewtışi",
"ext-uls-ime-help": "Seni ke fêno kar",
"ext-uls-disable-input-method": "Hesıbyaye klavyer bıkarne",
"ext-uls-input-settings-more-languages-tooltip": "Zewbi zıwani",
"jquery-ime-other-languages": "Zıwanê bini",
"jquery-ime-disable-text": "Hesıbyaye klavyer bıkarne",
"jquery-ime-help": "Peşti",
+ "ext-uls-input-disable": "Hacetanê cıkewtışi dewre ra vece",
+ "ext-uls-input-enable": "Hacetanê cıkewtışi feal ke",
+ "ext-uls-input-disable-info": "Hacetê cıkewtışi dewre ra veciyayi.",
+ "ext-uls-input-settings-noime": "Semedê nê zıwani ra metodê cıkewtışi çıniyê.",
+ "ext-uls-input-disable-notification": "Hacetê cıkewtışi dewre ra veti",
"ext-uls-input-disable-notification-undo": "Peyser biya",
+ "ext-uls-input-disable-notification-info-personal": "Eyaranê zıwani şıma çı wext ke wazenê, şıma şenê hacetanê cıkewtışi ra feal kerê.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Eyaranê zıwani şıma şenê, hacetanê ke leweyê lista zıwani derê, feal kerê.",
"ext-uls-language-settings-applying": "Dezgeyeno...",
- "apihelp-ulslocalization-param-language": "Eyarê zıwani."
+ "ext-uls-compact-link-count": "{{PLURAL:$1|vêşêr|$1 vêşêr}}",
+ "ext-uls-compact-link-info": "Zıwani pêro (hetê to û ê binan ra ke kamcin yeno hesab wa ey weçine)",
+ "prefs-languages": "Zıwani",
+ "ext-uls-compact-language-links-preference": "Yew lista serkerdiye be zıwananê eleqedaran ra bıgurene."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/dsb.json b/MLEB/UniversalLanguageSelector/i18n/dsb.json
index 844fe8a8..2d80adbc 100644
--- a/MLEB/UniversalLanguageSelector/i18n/dsb.json
+++ b/MLEB/UniversalLanguageSelector/i18n/dsb.json
@@ -1,7 +1,8 @@
{
"@metadata": {
"authors": [
- "Michawiki"
+ "Michawiki",
+ "Amire80"
]
},
"uls-desc": "Dawa wužywarjeju wšake metody, aby rěc wubrał a rěcne nastajenja pśiměrił",
@@ -54,5 +55,5 @@
"ext-uls-input-disable-notification-info-personal": "Móžoš zapódawańske rědy kuždy cas z rěcnych nastajenjow zmóžniś.",
"ext-uls-input-disable-notification-info-interlanguage": "Móžoš zapódawańske rědy kuždy cas z rěcnych nastajenjow pódla lisćiny rěcow zmóžniś.",
"ext-uls-language-settings-applying": "Nałožujo se...",
- "ext-uls-compact-link-count": "{{PLURAL:$1Jadna dalšna rěc|$1 dalšnej rěcy|$1 dalšne rěcy|$1 dalšnych rěcow}}"
+ "ext-uls-compact-link-count": "{{PLURAL:$1|Jadna dalšna|$1 dalšnej|$1 dalšne|$1 dalšnych}}"
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/el.json b/MLEB/UniversalLanguageSelector/i18n/el.json
index b70d68cb..8409615c 100644
--- a/MLEB/UniversalLanguageSelector/i18n/el.json
+++ b/MLEB/UniversalLanguageSelector/i18n/el.json
@@ -11,6 +11,7 @@
"ext-uls-select-language-settings-icon-tooltip": "Ρυθμίσεις γλώσσας",
"ext-uls-undo-language-tooltip-text": "Η γλώσσα άλλαξε από $1",
"ext-uls-language-settings-preferences-link": "Περισσότερες ρυθμίσεις γλώσσας",
+ "uls-betafeature-label": "Συμπαγείς γλωσσικοί σύνδεσμοι",
"ext-uls-display-settings-title": "Ρυθμίσεις απεικόνισης",
"ext-uls-display-settings-language-tab": "Γλώσσα",
"ext-uls-display-settings-fonts-tab": "Γραμματοσειρές",
@@ -50,5 +51,7 @@
"ext-uls-input-disable-notification-undo": "Αναίρεση",
"ext-uls-input-disable-notification-info-personal": "Μπορείτε να ενεργοποιήσετε τα εργαλεία εισαγωγής, ανά πάσα στιγμή από τις ρυθμίσεις γλώσσας.",
"ext-uls-input-disable-notification-info-interlanguage": "Μπορείτε να ενεργοποιήσετε τα εργαλεία εισαγωγής, ανά πάσα στιγμή από τις ρυθμίσεις γλώσσας δίπλα από τη λίστα γλωσσών.",
- "ext-uls-language-settings-applying": "Εφαρμογή..."
+ "ext-uls-language-settings-applying": "Εφαρμογή...",
+ "prefs-languages": "Γλώσσες",
+ "ext-uls-compact-language-links-preference": "Χρήση μιας συμπαγούς λίστας γλωσσών, με γλώσσες που είναι σχετικές με εσάς."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/en.json b/MLEB/UniversalLanguageSelector/i18n/en.json
index e54324a0..c5a8c530 100644
--- a/MLEB/UniversalLanguageSelector/i18n/en.json
+++ b/MLEB/UniversalLanguageSelector/i18n/en.json
@@ -14,6 +14,7 @@
"uls-ime-helppage": "https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Extension:UniversalLanguageSelector/Input_methods/$1",
"ext-uls-select-language-settings-icon-tooltip": "Language settings",
"ext-uls-undo-language-tooltip-text": "Language changed from $1",
+ "ext-uls-undo-language-tooltip-text-local": "Language changed for this wiki. Check your [[Special:GlobalPreferences|global preferences]] to change language for all wikis.",
"ext-uls-language-settings-preferences-link": "More language settings",
"uls-betafeature-label": "Compact language links",
"uls-betafeature-desc": "Show a shorter version of the language list, with just the languages that are more relevant to you.",
@@ -61,14 +62,8 @@
"ext-uls-input-disable-notification-info-interlanguage": "You can enable the input tools at any time from the language settings next to the language list.",
"ext-uls-language-settings-applying": "Applying...",
"ext-uls-compact-link-count": "{{PLURAL:$1|One more|$1 more}}",
- "apihelp-languagesearch-description": "Search for language names in any script.",
- "apihelp-languagesearch-param-search": "Search string.",
- "apihelp-languagesearch-param-typos": "Number of spelling mistakes allowed in the search string.",
- "apihelp-languagesearch-example-1": "Search for \"Te\"",
- "apihelp-languagesearch-example-2": "Search for \"ഫി\"",
- "apihelp-languagesearch-example-3": "Search for \"ഫി\", allowing one typo",
- "apihelp-ulslocalization-description": "Get the localization of ULS in the given language.",
- "apihelp-ulslocalization-param-language": "Language code.",
- "apihelp-ulslocalization-example-1": "Get Tamil localization",
- "apihelp-ulslocalization-example-2": "Get Hindi localization"
+ "ext-uls-compact-link-info": "All languages (initial selection from common choices by you and others)",
+ "prefs-languages": "Languages",
+ "ext-uls-compact-language-links-preference": "Use a [[$1|compact language list]], with languages relevant to you.",
+ "ext-uls-compact-no-results": "This page is not available in the language you searched for."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/eo.json b/MLEB/UniversalLanguageSelector/i18n/eo.json
index 0204e176..22401d1e 100644
--- a/MLEB/UniversalLanguageSelector/i18n/eo.json
+++ b/MLEB/UniversalLanguageSelector/i18n/eo.json
@@ -1,7 +1,11 @@
{
"@metadata": {
"authors": [
- "KuboF"
+ "KuboF",
+ "Robin van der Vliet",
+ "Gamliel Fishkin",
+ "Macofe",
+ "Amire80"
]
},
"uls-desc": "Proponas al uzanto kelkajn manierojn por elekti lingvon kaj modifi lingvajn agordojn",
@@ -54,5 +58,9 @@
"ext-uls-input-disable-notification-info-personal": "Vi povas iam ajn ŝalti enigajn ilojn en lingvaj agordoj.",
"ext-uls-input-disable-notification-info-interlanguage": "Vi povas iam ajn ŝalti enigajn ilojn en lingvaj agordoj ĉe lingvolisto.",
"ext-uls-language-settings-applying": "Aplikiĝado...",
- "ext-uls-compact-link-count": "{{PLURAL:$1|Unu plia|$1 pliaj}}"
+ "ext-uls-compact-link-count": "{{PLURAL:$1|Unu plia|$1 pliaj}}",
+ "ext-uls-compact-link-info": "Ĉiuj lingvoj (komenca elekto de kutimaj opcioj de vi kaj aliaj)",
+ "prefs-languages": "Lingvoj",
+ "ext-uls-compact-language-links-preference": "Uzi [[$1|kompaktan liston de lingvoj]], kun lingvoj konvenaj por vi.",
+ "ext-uls-compact-no-results": "Ĉi tiu paĝo ne estas havebla en la lingvo kiun vi serĉis."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/es.json b/MLEB/UniversalLanguageSelector/i18n/es.json
index 85bf6cc1..4f5adc2c 100644
--- a/MLEB/UniversalLanguageSelector/i18n/es.json
+++ b/MLEB/UniversalLanguageSelector/i18n/es.json
@@ -7,7 +7,9 @@
"Ovruni",
"Pginer",
"Ihojose",
- "Macofe"
+ "Macofe",
+ "GamemOfAnime",
+ "Vivaelcelta"
]
},
"uls-desc": "Ofrece al usuario varias formas para seleccionar un idioma y ajustar su configuración",
@@ -35,7 +37,7 @@
"ext-uls-webfonts-settings-info": "Descargar automáticamente los tipos de letras faltantes y permitir la selección de los tipos preferidos.",
"ext-uls-webfonts-settings-info-link": "Más información",
"ext-uls-webfonts-select-for": "Selecciona fuente para $1",
- "ext-uls-webfonts-select-for-ui-info": "Fuente usada para la interfaz de usuario",
+ "ext-uls-webfonts-select-for-ui-info": "Tipo de letra usado en la interfaz de usuario",
"ext-uls-webfonts-select-for-content-info": "Fuente usada para el contenido",
"ext-uls-webfonts-system-font": "Tipo de letra del sistema",
"ext-uls-back-to-display-settings": "Volver a la configuración de la presentación",
@@ -61,14 +63,8 @@
"ext-uls-input-disable-notification-info-interlanguage": "Puedes activar las herramientas de entrada en cualquier momento desde las opciones de idioma junto a la lista de idiomas.",
"ext-uls-language-settings-applying": "Aplicando…",
"ext-uls-compact-link-count": "{{PLURAL:$1|Uno más|$1 más}}",
- "apihelp-languagesearch-description": "Buscar nombres de idiomas en cualquier sistema de escritura.",
- "apihelp-languagesearch-param-search": "Buscar cadena.",
- "apihelp-languagesearch-param-typos": "Número de faltas de ortografía permitidas en la cadena de búsqueda.",
- "apihelp-languagesearch-example-1": "Buscar \"Te\"",
- "apihelp-languagesearch-example-2": "Buscar \"ഫി\"",
- "apihelp-languagesearch-example-3": "Buscar \"ഫി\", permitiendo un error tipográfico",
- "apihelp-ulslocalization-description": "Obtener la localización de ULS en el idioma especificado.",
- "apihelp-ulslocalization-param-language": "Código de idioma.",
- "apihelp-ulslocalization-example-1": "Obtener la localización en Tamil",
- "apihelp-ulslocalization-example-2": "Obtener la localización en Hindi"
+ "ext-uls-compact-link-info": "Todos los idiomas (selección inicial de opciones comunes tuyas y de otros)",
+ "prefs-languages": "Idiomas",
+ "ext-uls-compact-language-links-preference": "Usar una [[$1|lista de idiomas compacta]], con idiomas relevantes para ti.",
+ "ext-uls-compact-no-results": "Esta página no está disponible en el idioma que buscabas."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/et.json b/MLEB/UniversalLanguageSelector/i18n/et.json
index a7cde188..d7d6888a 100644
--- a/MLEB/UniversalLanguageSelector/i18n/et.json
+++ b/MLEB/UniversalLanguageSelector/i18n/et.json
@@ -56,14 +56,8 @@
"ext-uls-input-disable-notification-info-interlanguage": "Saad alati keelesätetes keelte loendi kõrval sisestusriistad lubada.",
"ext-uls-language-settings-applying": "Rakendamine...",
"ext-uls-compact-link-count": "Veel {{PLURAL:$1|üks keel|$1 keelt}}",
- "apihelp-languagesearch-description": "Keelenimetuste otsimine, kasutades ükskõik millist kirja.",
- "apihelp-languagesearch-param-search": "Otsisõne.",
- "apihelp-languagesearch-param-typos": "Lubatud tähevigade arv otsisõnes.",
- "apihelp-languagesearch-example-1": "Otsi sõnet \"Te\"",
- "apihelp-languagesearch-example-2": "Otsi sõnet \"ഫി\"",
- "apihelp-languagesearch-example-3": "Otsi sõnet \"ഫി\", lubatud üks täheviga",
- "apihelp-ulslocalization-description": "Universaalse keelevalija lokalisatsiooni hankimine antud keeles.",
- "apihelp-ulslocalization-param-language": "Keelekood.",
- "apihelp-ulslocalization-example-1": "Hangi tamili lokalisatsioon",
- "apihelp-ulslocalization-example-2": "Hangi hindi lokalisatsioon"
+ "ext-uls-compact-link-info": "Kõik keeled (esialgne valik sinu ja teiste ühiste valikute põhjal)",
+ "prefs-languages": "Keeled",
+ "ext-uls-compact-language-links-preference": "Kasuta [[$1|kompaktset keeleloendit]], milles on sinu jaoks asjakohased keeled",
+ "ext-uls-compact-no-results": "See lehekülg pole saadaval keeles, mida otsisid."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/eu.json b/MLEB/UniversalLanguageSelector/i18n/eu.json
index 7886bd5f..13ac7546 100644
--- a/MLEB/UniversalLanguageSelector/i18n/eu.json
+++ b/MLEB/UniversalLanguageSelector/i18n/eu.json
@@ -2,26 +2,66 @@
"@metadata": {
"authors": [
"Xabier Armendaritz",
- "Subi"
+ "Subi",
+ "Sator",
+ "Gorkaazk",
+ "Amire80",
+ "Amaia"
]
},
+ "uls-desc": "Hainbat bide eskaintzen dizkio erabiltzaileari hizkuntza bat aukeratu eta hizkuntzaren ezarpenak zehazteko.",
"uls-plang-title-languages": "Hizkuntzak",
"ext-uls-select-language-settings-icon-tooltip": "Hizkuntza ezarpenak",
+ "ext-uls-undo-language-tooltip-text": "Hizkuntza $1-(e)tik aldatu da.",
"ext-uls-language-settings-preferences-link": "Hizkuntza ezarpen gehiago",
+ "uls-betafeature-label": "Hizkuntza zerrenda mugatua",
+ "uls-betafeature-desc": "Hizkuntza zerrendaren bertsio laburrago bat erakutsi, zuretzat garrantzitsuagoak diren hizkuntzak baino ez dituena.",
+ "ext-uls-display-settings-title": "Bistaratze ezarpenak",
"ext-uls-display-settings-language-tab": "Hizkuntza",
+ "ext-uls-display-settings-fonts-tab": "Letra-tipoak",
"ext-uls-display-settings-title-short": "Bistaratzea",
"ext-uls-display-settings-desc": "Ezar ezazu menuetarako eta letra tipoetarako hizkuntza.",
"ext-uls-language-settings-title": "Hizkuntza ezarpenak",
"ext-uls-language-settings-apply": "Aplikatu ezarpenak",
"ext-uls-language-settings-cancel": "Utzi",
"ext-uls-language-buttons-help": "Aldatu menuen hizkuntza. Edukien hizkuntza ez da aldatuko.",
+ "ext-uls-display-settings-font-settings": "Letra-tipoen ezarpenak",
"ext-uls-display-settings-ui-language": "Bistaratze hizkuntza",
"ext-uls-display-settings-anon-label": "Bistaratze hizkuntza:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (edukia bezala)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Hasi saioa]] menuetarako beste hizkuntza bat hautatzeko.",
+ "ext-uls-webfonts-settings-title": "Jaitsi letra-tipoak beharrezkoa denean",
+ "ext-uls-webfonts-settings-info": "Jaitsi automatikoki falta diren letra-tipoak eta baimendu letra-tipo gogokoenen aukeraketa.",
"ext-uls-webfonts-settings-info-link": "Informazio gehiago",
+ "ext-uls-webfonts-select-for": "Aukeratu letra-tipoa $1-(e)rako",
+ "ext-uls-webfonts-select-for-ui-info": "Erabiltzaile interfazerako aukeratutako letra-tipoa",
+ "ext-uls-webfonts-select-for-content-info": "Edukirako erabilitako letra-tipoa",
+ "ext-uls-webfonts-system-font": "Sistemaren letra-tipoa",
+ "ext-uls-back-to-display-settings": "Itzuli hasierako bistaratze ezarpenetara",
+ "ext-uls-input-settings-title": "Sarrerako ezarpenak",
"ext-uls-input-settings-title-short": "Sarrera",
+ "ext-uls-input-settings-desc": "Beste hizkuntza batean idazten?",
+ "ext-uls-input-settings-ime-settings": "$1-(e)rako sarrera metodoak",
+ "ext-uls-input-settings-ui-language": "Idazteko hizkuntza",
+ "ext-uls-back-to-input-settings": "Itzuli sarrerako ezarpenetara",
+ "ext-uls-ime-help": "Nola erabili",
+ "ext-uls-disable-input-method": "Teklatu natiboa erabili",
"ext-uls-input-settings-more-languages-tooltip": "Hizkuntza gehiago",
"jquery-ime-other-languages": "Beste hizkuntzak",
+ "jquery-ime-disable-text": "Teklatu natiboa erabili",
"jquery-ime-help": "Laguntza",
+ "ext-uls-input-disable": "Desgaitu sarrerako tresnak",
+ "ext-uls-input-enable": "Desgaitu sarrera tresnak",
+ "ext-uls-input-disable-info": "Sarrera tresnak desgaituta daude.",
+ "ext-uls-input-settings-noime": "Ez dago sarrerako metodorik erabilgarri hizkuntza honetarako.",
+ "ext-uls-input-disable-notification": "Sarrera tresnak desgaituak izan dira",
"ext-uls-input-disable-notification-undo": "Desegin",
- "apihelp-ulslocalization-param-language": "Hizkuntza-kodea."
+ "ext-uls-input-disable-notification-info-personal": "Edozein momentutan gaitu ditzakezu sarrera tresnak hizkuntza ezarpenetarako.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Hizkuntza zerrendaren ondoko hizkuntza ezarpenetatik, edozein momentutan gaitu ditzakezu sarrera tresnak.",
+ "ext-uls-language-settings-applying": "Aplikatzen...",
+ "ext-uls-compact-link-count": "{{PLURAL:$1|Bat gehiago |$1 gehiago}}",
+ "ext-uls-compact-link-info": "Hizkuntza guztiak (zure eta beste batzuen hasierako aukeraketa ohiko aukeretatik)",
+ "prefs-languages": "Hizkuntzak",
+ "ext-uls-compact-language-links-preference": "Erabili [[$1|hizkuntza-zerrenda trinkoa]], zuretzat esanguratsuak diren hizkuntzekin soilik.",
+ "ext-uls-compact-no-results": "Orrialde hau ez dago eskuragarri bilatu duzun hizkuntzan."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/fa.json b/MLEB/UniversalLanguageSelector/i18n/fa.json
index 988d08cf..8fc45dcf 100644
--- a/MLEB/UniversalLanguageSelector/i18n/fa.json
+++ b/MLEB/UniversalLanguageSelector/i18n/fa.json
@@ -7,7 +7,8 @@
"Reza1615",
"Mahan",
"Armin1392",
- "Mehran"
+ "Mehran",
+ "Ladsgroup"
]
},
"uls-desc": "به کاربر راه‌های مختلفی برای انتخاب زبان و تنظیم تنظیمات زبان می‌دهد",
@@ -60,7 +61,9 @@
"ext-uls-input-disable-notification-info-personal": "در هر زمان می‌توانید ابزارهای ورودی را از بخش تنظیمات زبان فعال کنید.",
"ext-uls-input-disable-notification-info-interlanguage": "در هر زمان می توانید ابزارهای ورودی را از بخش تنظیمات زبان در کنار فهرست زبان‌ها فعال است.",
"ext-uls-language-settings-applying": "اعمال کردن...",
- "ext-uls-compact-link-count": "{{PLURAL:$1|یک زبان دیگر|$1 زبان دیگر}}",
- "apihelp-languagesearch-param-search": "جستجوی رشته.",
- "apihelp-ulslocalization-param-language": "کد زبان."
+ "ext-uls-compact-link-count": "{{PLURAL:$1|یک مورد دیگر|$1 مورد دیگر}}",
+ "ext-uls-compact-link-info": "همه زبان‌ها (انتخاب اولیه از انتخاب‌های مشترک شما و دیگران)",
+ "prefs-languages": "زبان‌ها",
+ "ext-uls-compact-language-links-preference": "استفاده از [[$1|فهرست فشرده زبان]]، همراه با زبان‌های مرتبط با شما",
+ "ext-uls-compact-no-results": "این صفحه در زبانی که جستجو کرده‌اید قابل دسترس نیست."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/fi.json b/MLEB/UniversalLanguageSelector/i18n/fi.json
index 6c7189e8..d9cac126 100644
--- a/MLEB/UniversalLanguageSelector/i18n/fi.json
+++ b/MLEB/UniversalLanguageSelector/i18n/fi.json
@@ -6,10 +6,12 @@
"Nike",
"Olli",
"Pxos",
- "Stryn"
+ "Stryn",
+ "Alluk.",
+ "01miki10"
]
},
- "uls-desc": "Tarjoaa useita tapoja valita kieli ja asettaa kieliasetukset",
+ "uls-desc": "Tarjoaa useita tapoja kielen valitsemiseen ja kieliasetusten hienosäätöön",
"uls-plang-title-languages": "Kielet",
"ext-uls-select-language-settings-icon-tooltip": "Kieliasetukset",
"ext-uls-undo-language-tooltip-text": "Kieli vaihdettu kielestä $1",
@@ -20,16 +22,16 @@
"ext-uls-display-settings-language-tab": "Kieli",
"ext-uls-display-settings-fonts-tab": "Kirjasimet",
"ext-uls-display-settings-title-short": "Näyttö",
- "ext-uls-display-settings-desc": "Aseta kieli, jota käytetään valikoissa ja kirjasimissa.",
+ "ext-uls-display-settings-desc": "Valitse valikkojen ja kirjasinten kieli.",
"ext-uls-language-settings-title": "Kieliasetukset",
"ext-uls-language-settings-apply": "Käytä asetuksia",
"ext-uls-language-settings-cancel": "Peru",
- "ext-uls-language-buttons-help": "Vaihda valikkojen kieli. Sisällön kieli ei muutu.",
+ "ext-uls-language-buttons-help": "Valitse valikkojen kieli. Sisällön kieli ei muutu.",
"ext-uls-display-settings-font-settings": "Kirjasinasetukset",
"ext-uls-display-settings-ui-language": "Käyttöliittymän kieli",
"ext-uls-display-settings-anon-label": "Käyttöliittymän kieli:",
"ext-uls-display-settings-anon-same-as-content": "$1 (sama kuin sisällön)",
- "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Kirjaudu sisään]], jos haluat valita eri kielen valikoille.",
+ "ext-uls-display-settings-anon-log-in-cta": "Erillisen valikkokielen valitseminen edellyttää [[Special:UserLogin|kirjautumista sisään]].",
"ext-uls-webfonts-settings-title": "Lataa tarvittaessa",
"ext-uls-webfonts-settings-info": "Lataa puuttuvat kirjasimet automaattisesti ja salli sopivimpien kirjasimien valinta.",
"ext-uls-webfonts-settings-info-link": "Lisätietoja",
@@ -40,11 +42,11 @@
"ext-uls-back-to-display-settings": "Takaisin näyttöasetuksiin",
"ext-uls-input-settings-title": "Kirjoitusasetukset",
"ext-uls-input-settings-title-short": "Kirjoitus",
- "ext-uls-input-settings-desc": "Kirjoittamassa toisella kielellä?",
+ "ext-uls-input-settings-desc": "Kirjoitatko toisella kielellä?",
"ext-uls-input-settings-ime-settings": "Syöttötavat kielelle $1",
- "ext-uls-input-settings-ui-language": "Kirjoituksen kieli",
+ "ext-uls-input-settings-ui-language": "Kirjoittamiskieli",
"ext-uls-back-to-input-settings": "Takaisin kirjoitusasetuksiin",
- "ext-uls-ime-help": "Kuinka tätä käytetään",
+ "ext-uls-ime-help": "Miten tämä toimii?",
"ext-uls-disable-input-method": "Käytä järjestelmän näppäimistöä",
"ext-uls-input-settings-more-languages-tooltip": "Lisää kieliä",
"jquery-ime-other-languages": "Muut kielet",
@@ -56,5 +58,11 @@
"ext-uls-input-settings-noime": "Tälle kielelle ei ole syöttötapoja.",
"ext-uls-input-disable-notification": "Syöttötavat on poistettu käytöstä",
"ext-uls-input-disable-notification-undo": "Kumoa",
- "ext-uls-compact-link-count": "$1 {{PLURAL:$1|kieli|kieltä}} lisää"
+ "ext-uls-input-disable-notification-info-personal": "Syöttötoiminnot voi ottaa milloin tahansa käyttöön kieliasetuksissa.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Syöttötoiminnot voi ottaa milloin tahansa käyttöön kieliasetuksissa kieliluettelon vierestä.",
+ "ext-uls-language-settings-applying": "Tallennetaan...",
+ "ext-uls-compact-link-count": "$1 {{PLURAL:$1|muu kieli|muuta kieltä}}",
+ "prefs-languages": "Kielet",
+ "ext-uls-compact-language-links-preference": "Käytä [[$1|kompaktia kielilistaa]], joka näyttää sinulle tärkeimmät kielet.",
+ "ext-uls-compact-no-results": "Tämä sivu ei ole saatavilla etsimälläsi kielellä."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/fr.json b/MLEB/UniversalLanguageSelector/i18n/fr.json
index d767654a..60178e8a 100644
--- a/MLEB/UniversalLanguageSelector/i18n/fr.json
+++ b/MLEB/UniversalLanguageSelector/i18n/fr.json
@@ -13,16 +13,22 @@
"Framafan",
"Macofe",
"Yodaspirine",
- "Yzelf"
+ "Yzelf",
+ "Yasten",
+ "Wladek92",
+ "The RedBurn",
+ "Trizek (WMF)",
+ "Aboulouei1"
]
},
"uls-desc": "Donne à l’utilisateur plusieurs manières de sélectionner une langue et d’ajuster les paramètres de langue",
"uls-plang-title-languages": "Langues",
"ext-uls-select-language-settings-icon-tooltip": "Paramètres de langue",
"ext-uls-undo-language-tooltip-text": "Langue modifiée de $1",
+ "ext-uls-undo-language-tooltip-text-local": "La langue a changé pour ce wiki. Vérifiez vos [[Special:GlobalPreferences|préférences globales]] pour modifier la langue sur tous les wikis.",
"ext-uls-language-settings-preferences-link": "Plus de paramètres de langue",
"uls-betafeature-label": "Compacter les liens de langue",
- "uls-betafeature-desc": "Afficher une version abrégée de la liste des langues, avec juste les langues qui sont les plus pertinentes pour vous.",
+ "uls-betafeature-desc": "Affiche une version abrégée de la liste des langues, avec uniquement les langues qui sont les plus pertinentes pour vous.",
"ext-uls-display-settings-title": "Afficher les paramètres",
"ext-uls-display-settings-language-tab": "Langue",
"ext-uls-display-settings-fonts-tab": "Polices de caractères",
@@ -66,15 +72,9 @@
"ext-uls-input-disable-notification-info-personal": "Vous pouvez activer les outils de saisie à tout moment dans vos paramètres de langue.",
"ext-uls-input-disable-notification-info-interlanguage": "Vous pouvez activer les outils de saisie à tout moment depuis les paramètres de langue à côté de la liste des langues.",
"ext-uls-language-settings-applying": "Application en cours…",
- "ext-uls-compact-link-count": "{{PLURAL:$1|Une langue de plus|$1 langues de plus}}",
- "apihelp-languagesearch-description": "Rechercher les noms de langue dans n’importe quel script.",
- "apihelp-languagesearch-param-search": "Chercher le texte.",
- "apihelp-languagesearch-param-typos": "Nombre d’erreurs d’orthographe permises dans la chaîne de recherche.",
- "apihelp-languagesearch-example-1": "Rechercher « Te »",
- "apihelp-languagesearch-example-2": "Rechercher « ഫി »",
- "apihelp-languagesearch-example-3": "Rechercher « ഫി », avec une erreur autorisée",
- "apihelp-ulslocalization-description": "Obtenir la localisation de ULS dans la langue donnée.",
- "apihelp-ulslocalization-param-language": "Code de langue.",
- "apihelp-ulslocalization-example-1": "Obtenir la localisation en Tamil",
- "apihelp-ulslocalization-example-2": "Obtenir la traduction Hindi"
+ "ext-uls-compact-link-count": "{{PLURAL:$1|Une de plus|$1 de plus}}",
+ "ext-uls-compact-link-info": "Toutes les langues (sélection initiale de choix communs par vous et les autres)",
+ "prefs-languages": "Langues",
+ "ext-uls-compact-language-links-preference": "Utilisez une [[$1|liste compacte de langues]], avec celles qui vous concernent.",
+ "ext-uls-compact-no-results": "Cette page n’est pas disponible dans la langue pour laquelle vous recherchez."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/frp.json b/MLEB/UniversalLanguageSelector/i18n/frp.json
index 1d1ee15f..299c5192 100644
--- a/MLEB/UniversalLanguageSelector/i18n/frp.json
+++ b/MLEB/UniversalLanguageSelector/i18n/frp.json
@@ -1,9 +1,11 @@
{
"@metadata": {
"authors": [
- "ChrisPtDe"
+ "ChrisPtDe",
+ "Xð"
]
},
+ "uls-plang-title-languages": "Lengoues",
"ext-uls-undo-language-tooltip-text": "Lengoua changiêye dês $1",
"ext-uls-display-settings-title": "Configuracion de visualisacion",
"ext-uls-display-settings-title-short": "Visualisacion",
diff --git a/MLEB/UniversalLanguageSelector/i18n/frr.json b/MLEB/UniversalLanguageSelector/i18n/frr.json
index ddbcd2d8..b9102cca 100644
--- a/MLEB/UniversalLanguageSelector/i18n/frr.json
+++ b/MLEB/UniversalLanguageSelector/i18n/frr.json
@@ -54,15 +54,5 @@
"ext-uls-input-disable-notification-info-personal": "Dü könst a werktjüügen tu skriiwen tu arke tidj uun a spriakiinstelangen aktiwiare.",
"ext-uls-input-disable-notification-info-interlanguage": "Dü könst a werktjüügen tu skriiwen tu arke tidj uun a spriakiinstelangen üüb sidj faan det spriakenlist aktiwiare.",
"ext-uls-language-settings-applying": "Brüken ...",
- "ext-uls-compact-link-count": "{{PLURAL:$1|Ian muar|$1 muar}}",
- "apihelp-languagesearch-description": "Spriak-nöömer uun arke skript schük",
- "apihelp-languagesearch-param-search": "Tekst trochschük.",
- "apihelp-languagesearch-param-typos": "Taal faan skriiwfeelern uun det schük-wurd.",
- "apihelp-languagesearch-example-1": "Schük \"Te\"",
- "apihelp-languagesearch-example-2": "Schük \"ഫി\"",
- "apihelp-languagesearch-example-3": "Schük \"ഫി\", uk mä ään skriiwfeeler",
- "apihelp-ulslocalization-description": "Haale det auersaatang faan ULS uun det uunden spriak.",
- "apihelp-ulslocalization-param-language": "Spriak-tekst",
- "apihelp-ulslocalization-example-1": "Haale det auersaatang uun Tamil",
- "apihelp-ulslocalization-example-2": "Haale det auersaatang uun Hindi"
+ "ext-uls-compact-link-count": "{{PLURAL:$1|Ian muar|$1 muar}}"
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/fur.json b/MLEB/UniversalLanguageSelector/i18n/fur.json
index df823d9b..541291d8 100644
--- a/MLEB/UniversalLanguageSelector/i18n/fur.json
+++ b/MLEB/UniversalLanguageSelector/i18n/fur.json
@@ -1,9 +1,11 @@
{
"@metadata": {
"authors": [
- "Klenje"
+ "Klenje",
+ "Xð"
]
},
+ "uls-plang-title-languages": "Lenghis",
"ext-uls-select-language-settings-icon-tooltip": "Impuestazions de lenghe",
"ext-uls-display-settings-language-tab": "Lenghe",
"ext-uls-display-settings-fonts-tab": "Caratars",
diff --git a/MLEB/UniversalLanguageSelector/i18n/fy.json b/MLEB/UniversalLanguageSelector/i18n/fy.json
index cc077fbe..8bbd6e03 100644
--- a/MLEB/UniversalLanguageSelector/i18n/fy.json
+++ b/MLEB/UniversalLanguageSelector/i18n/fy.json
@@ -2,7 +2,8 @@
"@metadata": {
"authors": [
"Kening Aldgilles",
- "Robin0van0der0vliet"
+ "Robin0van0der0vliet",
+ "Robin van der Vliet"
]
},
"uls-plang-title-languages": "Talen",
@@ -15,6 +16,10 @@
"ext-uls-display-settings-ui-language": "Taal sjen litte",
"ext-uls-display-settings-anon-label": "Taal sjen litte:",
"ext-uls-webfonts-settings-info-link": "Mear ynformaasje",
+ "ext-uls-input-settings-title-short": "Ynfier",
+ "ext-uls-input-settings-more-languages-tooltip": "Mear talen",
+ "jquery-ime-other-languages": "Oare talen",
"jquery-ime-help": "Help",
+ "ext-uls-input-disable-notification-undo": "Weromsette",
"ext-uls-compact-link-count": "{{PLURAL:$1|Ien mear|$1 mear}}"
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/gd.json b/MLEB/UniversalLanguageSelector/i18n/gd.json
index 3d1b8958..a9deee2c 100644
--- a/MLEB/UniversalLanguageSelector/i18n/gd.json
+++ b/MLEB/UniversalLanguageSelector/i18n/gd.json
@@ -54,5 +54,8 @@
"ext-uls-input-disable-notification-info-personal": "'S urrainn dhut na h-innealan ion-chuir a chur an comas uair sam bith o na roghainnean cànain.",
"ext-uls-input-disable-notification-info-interlanguage": "'S urrainn dhut na h-innealan ion-chuir a chur an comas uair sam bith o na roghainnean cànain ri taobh liosta nan cànan.",
"ext-uls-language-settings-applying": "'Ga chur an sàs...",
- "ext-uls-compact-link-count": "$1 {{PLURAL:$1|chànan|chànan|cànain|cànan}} a bharrachd"
+ "ext-uls-compact-link-count": "$1 {{PLURAL:$1|a bharrachd}}",
+ "ext-uls-compact-link-info": "A h-uile cànan (an taghadh tùsail o roghainnean minig leat fhèin is le càch)",
+ "prefs-languages": "Cànain",
+ "ext-uls-compact-language-links-preference": "cleachd liosta beag nan cànan leis na cànain a tha a' buntainn riut."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/gl.json b/MLEB/UniversalLanguageSelector/i18n/gl.json
index f640241e..07ea4239 100644
--- a/MLEB/UniversalLanguageSelector/i18n/gl.json
+++ b/MLEB/UniversalLanguageSelector/i18n/gl.json
@@ -3,7 +3,11 @@
"authors": [
"Toliño",
"Nemo bis",
- "Elisardojm"
+ "Elisardojm",
+ "Macofe",
+ "Navhy",
+ "Banjo",
+ "Maria zaos"
]
},
"uls-desc": "Dá ao usuario varios xeitos de seleccionar unha lingua e de axustar as preferencias da mesma",
@@ -12,7 +16,7 @@
"ext-uls-undo-language-tooltip-text": "A lingua cambiou desde o $1",
"ext-uls-language-settings-preferences-link": "Máis opcións de lingua",
"uls-betafeature-label": "Ligazóns lingüísticas compactas",
- "uls-betafeature-desc": "Mostrar unha versión máis curta da lista de linguas, unicamente coas linguas máis relevantes para vostede.",
+ "uls-betafeature-desc": "Amosar unha versión máis curta da lista de linguas, unicamente coas linguas máis relevantes para vostede.",
"ext-uls-display-settings-title": "Opcións de visualización",
"ext-uls-display-settings-language-tab": "Lingua",
"ext-uls-display-settings-fonts-tab": "Tipos de letra",
@@ -57,14 +61,8 @@
"ext-uls-input-disable-notification-info-interlanguage": "Pode activar as ferramentas de entrada en calquera momento desde as opcións de lingua, ao carón da lista de linguas.",
"ext-uls-language-settings-applying": "Aplicando...",
"ext-uls-compact-link-count": "{{PLURAL:$1|$1 máis}}",
- "apihelp-languagesearch-description": "Procurar nomes de lingua en calquera script.",
- "apihelp-languagesearch-param-search": "Cadea de busca.",
- "apihelp-languagesearch-param-typos": "Número de erros ortográficos permitidos na cadea de busca.",
- "apihelp-languagesearch-example-1": "Procurar \"Te\"",
- "apihelp-languagesearch-example-2": "Procurar \"ഫി\"",
- "apihelp-languagesearch-example-3": "Procurar \"ഫി\", permitindo un erro ortográfico",
- "apihelp-ulslocalization-description": "Obter a localización do ULS na lingua dada.",
- "apihelp-ulslocalization-param-language": "Código da lingua.",
- "apihelp-ulslocalization-example-1": "Obter a localización en támil",
- "apihelp-ulslocalization-example-2": "Obter a localización en hindi"
+ "ext-uls-compact-link-info": "Todas as linguas (selección inicial de opcións comúns súas e doutros)",
+ "prefs-languages": "Linguas",
+ "ext-uls-compact-language-links-preference": "Usar unha [[$1|lista de linguas compacta]], con linguas relevantes para vostede.",
+ "ext-uls-compact-no-results": "Esta páxina non está dispoñible na lingua en que procurou."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/gsw.json b/MLEB/UniversalLanguageSelector/i18n/gsw.json
index a6d3b45b..72b55aa9 100644
--- a/MLEB/UniversalLanguageSelector/i18n/gsw.json
+++ b/MLEB/UniversalLanguageSelector/i18n/gsw.json
@@ -1,13 +1,14 @@
{
"@metadata": {
"authors": [
- "J. 'mach' wust"
+ "J. 'mach' wust",
+ "Als-Holder"
]
},
"uls-desc": "Bietet verschidnigi Müglechkeite, für’ne Sprach uszwählen u für Sprachystelligen azpasse",
"uls-plang-title-languages": "Sprache",
"ext-uls-select-language-settings-icon-tooltip": "Sprachystellige",
- "ext-uls-undo-language-tooltip-text": "Sprach g’änderet vo $1",
+ "ext-uls-undo-language-tooltip-text": "Sprach gänderet vo $1",
"ext-uls-language-settings-preferences-link": "Meh Sprachystellige",
"uls-betafeature-label": "Gchürzti Sprachliste",
"uls-betafeature-desc": "D Spracheliste wird gchürzt. Si zeigt nume no die Sprachen a, wo für di di relevantere sy.",
@@ -54,15 +55,5 @@
"ext-uls-input-disable-notification-info-personal": "Du chasch d Ygabystellige jederzyt by de Sprachystelligen aktiviere.",
"ext-uls-input-disable-notification-info-interlanguage": "Du chasch d Ygabystellige jederzyt by de Sprachystellige näb der Sprachlisten aktiviere.",
"ext-uls-language-settings-applying": "Am Spychere...",
- "ext-uls-compact-link-count": "{{PLURAL:$1|Eini meh|$1 meh}}",
- "apihelp-languagesearch-description": "Sprachnämen i allne Schrifte sueche.",
- "apihelp-languagesearch-param-search": "Zeichefolg für d Suechi",
- "apihelp-languagesearch-param-typos": "Azahl müglechi Abwychigen ir Schrybig vor Zeichefolg für d Suechi.",
- "apihelp-languagesearch-example-1": "Nach «Te» sueche",
- "apihelp-languagesearch-example-2": "Nach «ഫി» sueche",
- "apihelp-languagesearch-example-3": "Nach «ഫി» sueche, mit eire müglechen Abwychig ir Schrybig",
- "apihelp-ulslocalization-description": "D Lokalisierig vom ULS i der vor’gänige Sprach abrüeffe.",
- "apihelp-ulslocalization-param-language": "Sprachcode.",
- "apihelp-ulslocalization-example-1": "Tamil-Lokalisierig abrüeffe",
- "apihelp-ulslocalization-example-2": "Hindi-Lokalisierig abrüeffe"
+ "ext-uls-compact-link-count": "{{PLURAL:$1|Eini meh|$1 meh}}"
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/gu.json b/MLEB/UniversalLanguageSelector/i18n/gu.json
index 5affc4a2..0a36cf81 100644
--- a/MLEB/UniversalLanguageSelector/i18n/gu.json
+++ b/MLEB/UniversalLanguageSelector/i18n/gu.json
@@ -57,14 +57,8 @@
"ext-uls-input-disable-notification-info-interlanguage": "ભાષા યાદીની બાજુ પર આવેલ ભાષા ગોઠવણીઓ વડે તમે ગમે તે સમયે ઇનપુટ સાધનો સક્રિય કરી શકો છો.",
"ext-uls-language-settings-applying": "લાગુ પાડે છે...",
"ext-uls-compact-link-count": "{{PLURAL:$1|વધુ એક|વધુ $1}}",
- "apihelp-languagesearch-description": "કોઇપણ લિપીમાં ભાષા નામો શોધો.",
- "apihelp-languagesearch-param-search": "શોધ પદ.",
- "apihelp-languagesearch-param-typos": "શોધવાના શબ્દમાં માન્ય જોડણીની ભૂલો.",
- "apihelp-languagesearch-example-1": "\"Te\" માટે શોધો",
- "apihelp-languagesearch-example-2": "\"ഫി\" માટે શોધો",
- "apihelp-languagesearch-example-3": "એક ભૂલ કરીને \"ഫി\", માટે શોધો",
- "apihelp-ulslocalization-description": "ULS નું ભાષાંતર આપેલી ભાષા માટે મેળવો.",
- "apihelp-ulslocalization-param-language": "ભાષા સંજ્ઞા.",
- "apihelp-ulslocalization-example-1": "તમિલ ભાષાંતર મેળવો",
- "apihelp-ulslocalization-example-2": "હિન્દી ભાષાંતર મેળવો"
+ "ext-uls-compact-link-info": "બધી ભાષાઓ ‍‍(તમારા અને અન્યો દ્વારા શરુઆતી સામાન્ય પસંદગીઓ‌)",
+ "prefs-languages": "ભાષાઓ",
+ "ext-uls-compact-language-links-preference": "તમને સંબંધિત ભાષાઓની, [[$1|ટૂંકી ભાષા યાદી]] વાપરો.",
+ "ext-uls-compact-no-results": "આ પાનું તમે શોધેલી ભાષામાં પ્રાપ્ત નથી."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/gv.json b/MLEB/UniversalLanguageSelector/i18n/gv.json
index 467eeb09..3e2bee11 100644
--- a/MLEB/UniversalLanguageSelector/i18n/gv.json
+++ b/MLEB/UniversalLanguageSelector/i18n/gv.json
@@ -1,9 +1,11 @@
{
"@metadata": {
"authors": [
- "Danielquayle"
+ "Danielquayle",
+ "Xð"
]
},
+ "uls-plang-title-languages": "Çhengaghyn",
"ext-uls-select-language-settings-icon-tooltip": "Soieaghyn çhengey",
"ext-uls-undo-language-tooltip-text": "Çhengey caghlaait voish $1",
"ext-uls-display-settings-language-tab": "Çhengey",
diff --git a/MLEB/UniversalLanguageSelector/i18n/he.json b/MLEB/UniversalLanguageSelector/i18n/he.json
index 060b6813..c01a72b7 100644
--- a/MLEB/UniversalLanguageSelector/i18n/he.json
+++ b/MLEB/UniversalLanguageSelector/i18n/he.json
@@ -10,7 +10,8 @@
"uls-desc": "נותן למשתמשים מספר דרכים לבחור שפה ולכוונן את הגדרות השפה",
"uls-plang-title-languages": "שפות",
"ext-uls-select-language-settings-icon-tooltip": "הגדרות שפה",
- "ext-uls-undo-language-tooltip-text": "השפה השתנתה מ{{GRAMMAR:תחילית|$1}}",
+ "ext-uls-undo-language-tooltip-text": "השפה השתנתה. השפה הקודמת הייתה $1",
+ "ext-uls-undo-language-tooltip-text-local": "השפה שונתה באתר הוויקי הזה. נא לבדוק את [[Special:GlobalPreferences|ההעדפות הגלובליות]] שלך כדי לשנות את השפה בכל אתרי הוויקי.",
"ext-uls-language-settings-preferences-link": "הגדרות שפה נוספות",
"uls-betafeature-label": "רשימת קישורי שפה מקוצרת",
"uls-betafeature-desc": "הצגת גרסה מקוצרת של רשימת השפות, רק עם השפות שרלוונטיות לך.",
@@ -58,14 +59,8 @@
"ext-uls-input-disable-notification-info-interlanguage": "באפשרותך להפעיל את כלי הקלט בכל זמן מהגדרות השפה שליד רשימת השפות.",
"ext-uls-language-settings-applying": "החלה...",
"ext-uls-compact-link-count": "עוד {{PLURAL:$1|אחת|$1}}",
- "apihelp-languagesearch-description": "חיפוש שם שפה בכל אלפבית",
- "apihelp-languagesearch-param-search": "מחרוזת חיפוש.",
- "apihelp-languagesearch-param-typos": "מספר שגיאות הכתיב שמותרות במחרוזת החיפוש.",
- "apihelp-languagesearch-example-1": "חיפוש \"Te\"",
- "apihelp-languagesearch-example-2": "חיפוש \"ഫി\"",
- "apihelp-languagesearch-example-3": "חיפוש \"ഫി\", עם אפשרות לשגיאת כתיב אחת",
- "apihelp-ulslocalization-description": "קבלת תרגומי ממשק של בורר השפות בשפה הנתונה",
- "apihelp-ulslocalization-param-language": "קוד שפה.",
- "apihelp-ulslocalization-example-1": "קבלת תרגום לטמילית",
- "apihelp-ulslocalization-example-2": "קבלת תרגום להינדי"
+ "ext-uls-compact-link-info": "כל השפות (הבחירה הראשונית מגיעה מבחירות נפוצות שלך ושל אחרים)",
+ "prefs-languages": "שפות",
+ "ext-uls-compact-language-links-preference": "שימוש ב[[$1|רשימת שפות מקוצרת]], המציגה שפות שרלוונטיות עבורך.",
+ "ext-uls-compact-no-results": "הדף הזה אינו זמין בשפה שחיפשת."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/hi.json b/MLEB/UniversalLanguageSelector/i18n/hi.json
index c63ba56a..4bb1f50d 100644
--- a/MLEB/UniversalLanguageSelector/i18n/hi.json
+++ b/MLEB/UniversalLanguageSelector/i18n/hi.json
@@ -4,7 +4,8 @@
"Siddhartha Ghai",
"Vdhatterwal",
"Vivek Rai",
- "Goelujjwal"
+ "Goelujjwal",
+ "Sfic"
]
},
"uls-desc": "सदस्य को भाषा चुनने और भाषा विकल्प बदलने के कई तरीके देता है",
@@ -57,5 +58,6 @@
"ext-uls-input-disable-notification-info-personal": "आप किसी भी समय भाषा विकल्प में से इनपुट उपकरण सक्षम कर सकते हैं।",
"ext-uls-input-disable-notification-info-interlanguage": "आप किसी भी समय भाषा सूची के साथ स्थित भाषा विकल्प में से इनपुट उपकरण सक्षम कर सकते हैं।",
"ext-uls-language-settings-applying": "लागू हो रहा है...",
- "ext-uls-compact-link-count": "{{PLURAL:$1|एक और भाषा|$1 और भाषाएँ}}"
+ "ext-uls-compact-link-count": "{{PLURAL:$1|एक और भाषा|$1 और भाषाएँ}}",
+ "prefs-languages": "भाषा"
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/hr.json b/MLEB/UniversalLanguageSelector/i18n/hr.json
index 7801345b..4ed136d7 100644
--- a/MLEB/UniversalLanguageSelector/i18n/hr.json
+++ b/MLEB/UniversalLanguageSelector/i18n/hr.json
@@ -3,10 +3,12 @@
"authors": [
"Roberta F.",
"SpeedyGonsales",
- "MaGa"
+ "MaGa",
+ "Xð",
+ "Bugoslav"
]
},
- "uls-plang-title-languages": "Jezične postavke",
+ "uls-plang-title-languages": "Jezici",
"ext-uls-select-language-settings-icon-tooltip": "Jezične postavke",
"ext-uls-undo-language-tooltip-text": "Jezik promijenjen, prethodno je bio postavljen $1",
"ext-uls-language-settings-preferences-link": "Više jezičnih postavki",
@@ -24,7 +26,7 @@
"ext-uls-display-settings-font-settings": "Postavke fonta (ili fontova)",
"ext-uls-display-settings-ui-language": "Prikaži jezik",
"ext-uls-display-settings-anon-label": "Prikaži jezik:",
- "ext-uls-display-settings-anon-same-as-content": "Hrvatski (isto kao sadržaj)",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (isto kao sadržaj)",
"ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Prijavi se]] za odabir različitih jezika u izborniku.",
"ext-uls-webfonts-settings-title": "Preuzimanje fontova po potrebi",
"ext-uls-webfonts-settings-info": "Automatsko preuzimanje fontova koji nedostaju i omogućavanje odabira preferiranih fontova.",
@@ -40,8 +42,9 @@
"ext-uls-input-settings-ime-settings": "Način unosa za $1",
"ext-uls-input-settings-ui-language": "Primijenjeni jezik za pisanje",
"ext-uls-back-to-input-settings": "Povratak na unos postavki",
+ "ext-uls-ime-help": "Pomoć oko uporabe",
"ext-uls-disable-input-method": "Rabi sustavnu tipkovnicu",
- "ext-uls-input-settings-more-languages-tooltip": "{{PLURAL:$1|Još jedan jezik|Još $1 druga jezika|Još $1 drugih jezika}}",
+ "ext-uls-input-settings-more-languages-tooltip": "Više jezika",
"jquery-ime-other-languages": "Drugi jezici",
"jquery-ime-disable-text": "Rabi sustavnu tipkovnicu",
"jquery-ime-help": "Pomoć",
@@ -54,5 +57,8 @@
"ext-uls-input-disable-notification-info-personal": "Alate za unos možete u svakome trenutku omogućiti u jezičnim postavkama.",
"ext-uls-input-disable-notification-info-interlanguage": "Alate za unos možete u svakom trenutku omogućiti u jezičnim postavkama pored jezičnog popisa.",
"ext-uls-language-settings-applying": "Primjenjujem...",
- "ext-uls-compact-link-count": "{{PLURAL:$1|Još jedan jezik|Još $1 druga jezika|Još $1 drugih jezika}}"
+ "ext-uls-compact-link-count": "Još {{PLURAL:$1|1=jedan|$1|$1 druga|$1 drugih}} {{PLURAL:$1|jezik|jezika}}",
+ "ext-uls-compact-link-info": "Svi jezici (izbor na temelju Vaših odabira i odabira drugih suradnika)",
+ "prefs-languages": "Jezici",
+ "ext-uls-compact-language-links-preference": "Uključi [[$1|sažeti popis jezika]] s jezicima koji su Vam važni"
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/hsb.json b/MLEB/UniversalLanguageSelector/i18n/hsb.json
index 5c91da15..698c77ba 100644
--- a/MLEB/UniversalLanguageSelector/i18n/hsb.json
+++ b/MLEB/UniversalLanguageSelector/i18n/hsb.json
@@ -1,7 +1,8 @@
{
"@metadata": {
"authors": [
- "Michawiki"
+ "Michawiki",
+ "Amire80"
]
},
"uls-desc": "Dawa wužiwarjej wšelake metody, zo by rěč wubrał a rěčne nastajenja přiměrił",
@@ -54,5 +55,5 @@
"ext-uls-input-disable-notification-info-personal": "Móžeš zapodawanske nastroje kóždy čas z rěčnych nastajenjow zmóžnić.",
"ext-uls-input-disable-notification-info-interlanguage": "Móžeš zapodawanske nastroje kóždy čas z rěčnych nastajenjow pódla lisćiny rěčow zmóžnić.",
"ext-uls-language-settings-applying": "Nałožuje so...",
- "ext-uls-compact-link-count": "{{PLURAL:$1Jedna dalša rěč|$1 dalšej rěči|$1 dalše rěče|$1 dalšich rěčow}}"
+ "ext-uls-compact-link-count": "{{PLURAL:$1|Jedna dalša|$1 dalšej|$1 dalše|$1 dalšich}}"
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/hu.json b/MLEB/UniversalLanguageSelector/i18n/hu.json
index 4cf5b657..b31f4616 100644
--- a/MLEB/UniversalLanguageSelector/i18n/hu.json
+++ b/MLEB/UniversalLanguageSelector/i18n/hu.json
@@ -6,7 +6,9 @@
"BáthoryPéter",
"Tacsipacsi",
"Dorgan",
- "Bináris"
+ "Bináris",
+ "BanKris",
+ "Máté"
]
},
"uls-plang-title-languages": "Nyelvek",
@@ -43,6 +45,7 @@
"ext-uls-input-settings-ui-language": "Íráshoz használt nyelv",
"ext-uls-back-to-input-settings": "Vissza a beviteli beállításokhoz",
"ext-uls-ime-help": "Használati útmutató",
+ "ext-uls-disable-input-method": "Alapételmezett billentyűzet használata",
"ext-uls-input-settings-more-languages-tooltip": "További nyelvek",
"jquery-ime-other-languages": "További nyelvek",
"jquery-ime-help": "Súgó",
@@ -55,5 +58,7 @@
"ext-uls-input-disable-notification-info-personal": "Bármikor engedélyezheted a beviteli eszközöket a nyelvi beállításaid között.",
"ext-uls-input-disable-notification-info-interlanguage": "Bármikor engedélyezheted a beviteli eszközöket a nyelvi beállításaid között, a nyelvközi hivatkozások között.",
"ext-uls-language-settings-applying": "Alkalmazás…",
- "ext-uls-compact-link-count": "$1 további"
+ "ext-uls-compact-link-count": "$1 további",
+ "prefs-languages": "Nyelvek",
+ "ext-uls-compact-language-links-preference": "A nyelvközi hivatkozások megjelenítése egy kompakt listában, csak a neked releváns nyelvekkel."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/hy.json b/MLEB/UniversalLanguageSelector/i18n/hy.json
index 585f00f1..a6632d70 100644
--- a/MLEB/UniversalLanguageSelector/i18n/hy.json
+++ b/MLEB/UniversalLanguageSelector/i18n/hy.json
@@ -2,7 +2,8 @@
"@metadata": {
"authors": [
"M hamlet",
- "Xelgen"
+ "Xelgen",
+ "Դավիթ Սարոյան"
]
},
"uls-desc": "Օգտագործողին թույլ է տալիս մի քանի եղանակաով ընտրել լեզուներ և լեզվական կարգավորումներ",
@@ -10,19 +11,24 @@
"ext-uls-select-language-settings-icon-tooltip": "Լեզվական կարգավորումներ",
"ext-uls-undo-language-tooltip-text": "Լեզուն փոխվել է $1ից։",
"ext-uls-language-settings-preferences-link": "Հավելյալ լեզվական կարգավորումներ։",
+ "uls-betafeature-label": "Կոմպակտ լեզվական հղումներ",
+ "ext-uls-display-settings-title": "Ցուցադրել կարգավորումները",
"ext-uls-display-settings-language-tab": "Լեզու",
"ext-uls-display-settings-fonts-tab": "Տառատեսակներ",
"ext-uls-display-settings-title-short": "Ցուցադրել",
"ext-uls-display-settings-desc": "Միջներեսի և տառատեսակների լեզուն։",
"ext-uls-language-settings-title": "Լեզվական կարգավորումներ",
- "ext-uls-language-settings-apply": "Կիրառել կարգավորումները։",
+ "ext-uls-language-settings-apply": "Կիրառել կարգավորումները",
"ext-uls-language-settings-cancel": "Չեղարկել",
"ext-uls-language-buttons-help": "Փոխել կայքի միջերեսի լեզուն։ Կայքի բովանդակության լեզուն չի փոխվի։",
"ext-uls-display-settings-font-settings": "Տառատեսակի կարգավորումներ",
"ext-uls-display-settings-ui-language": "Ցուցադրման լեզու",
"ext-uls-display-settings-anon-label": "Ցուցադրման լեզու․",
- "ext-uls-display-settings-anon-same-as-content": "Հայերեն (նույնը ինչ բովանդակությունը)",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (նույնը ինչ բովանդակությունը)",
"ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Մուտք գործեք]] միջերեսի այլ լեզու ընտրելու համար։",
+ "ext-uls-webfonts-settings-title": "Անհրաժեշտության դեպքում ներբեռնել տառատեսակները",
+ "ext-uls-webfonts-settings-info": "Ավտոմատ ներբեռնել բացակայող տառատեսակները և թույլ տար նախընտրելի տառատեսակների ընտրությունը։",
+ "ext-uls-webfonts-settings-info-link": "Հավելյալ տեղեկություն",
"ext-uls-webfonts-select-for": "Ընտրեք $1ի տառատեսակը",
"ext-uls-webfonts-select-for-ui-info": "Միջերեսի համար օգտագործվող տառատեսակը",
"ext-uls-webfonts-select-for-content-info": "Պարունակության տառատեսակ",
@@ -48,5 +54,8 @@
"ext-uls-input-disable-notification-undo": "Հետարկել",
"ext-uls-input-disable-notification-info-personal": "Դուք ցանկացած պահին կարող եք միացնել ներածման գործիքները, լեզվական կարգավորումներից։",
"ext-uls-input-disable-notification-info-interlanguage": "Դուք ցանկացած պահին կարող եք միացնել ներածման գործիքները լեզվական կարգավորումներում, լեզուների ցանկի կողքը։",
- "ext-uls-language-settings-applying": "Կիրառում․․․"
+ "ext-uls-language-settings-applying": "Կիրառում․․․",
+ "ext-uls-compact-link-count": "{{PLURAL:$1|Եվս մեկը|Եվս $1}}",
+ "ext-uls-compact-link-info": "Բոլոր լեզուները (նախնական ցանկը կազմված է ձեր և մյուսների կողմից հաճախ ընտրված տարբերակները)",
+ "prefs-languages": "Լեզուներ"
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/ia.json b/MLEB/UniversalLanguageSelector/i18n/ia.json
index 38a57892..a9a212ad 100644
--- a/MLEB/UniversalLanguageSelector/i18n/ia.json
+++ b/MLEB/UniversalLanguageSelector/i18n/ia.json
@@ -9,6 +9,8 @@
"ext-uls-select-language-settings-icon-tooltip": "Configuration de lingua",
"ext-uls-undo-language-tooltip-text": "Lingua cambiate ab $1",
"ext-uls-language-settings-preferences-link": "Altere parametros de lingua",
+ "uls-betafeature-label": "Lista compacte de linguas",
+ "uls-betafeature-desc": "Monstra un version abbreviate del lista de linguas, con solmente le linguas plus relevante pro te.",
"ext-uls-display-settings-title": "Optiones de visualisation",
"ext-uls-display-settings-language-tab": "Lingua",
"ext-uls-display-settings-fonts-tab": "Typos de litteras",
@@ -51,5 +53,10 @@
"ext-uls-input-disable-notification-undo": "Disfacer",
"ext-uls-input-disable-notification-info-personal": "Tu pote activar le instrumentos de entrata a omne momento in le configuration de lingua.",
"ext-uls-input-disable-notification-info-interlanguage": "Tu pote activar le instrumentos de entrata a omne momento in le configuration de lingua al latere del lista de linguas.",
- "ext-uls-language-settings-applying": "Applica..."
+ "ext-uls-language-settings-applying": "Applica...",
+ "ext-uls-compact-link-count": "{{PLURAL:$1|Un altere|$1 alteres}}",
+ "ext-uls-compact-link-info": "Tote le linguas (selection initial de linguas frequentemente seligite per te e alteres)",
+ "prefs-languages": "Linguas",
+ "ext-uls-compact-language-links-preference": "Usar un [[$1|lista compacte de linguas]] con le linguas relevante pro te.",
+ "ext-uls-compact-no-results": "Iste pagina non es disponibile in le lingua que tu cerca."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/id.json b/MLEB/UniversalLanguageSelector/i18n/id.json
index 76caaadb..0b0dca83 100644
--- a/MLEB/UniversalLanguageSelector/i18n/id.json
+++ b/MLEB/UniversalLanguageSelector/i18n/id.json
@@ -4,26 +4,30 @@
"Farras",
"Iwan Novirion",
"පසිඳු කාවින්ද",
- "William Surya Permana"
+ "William Surya Permana",
+ "Bennylin",
+ "Xð",
+ "Kenrick95",
+ "Gombang"
]
},
"uls-desc": "Memberikan pengguna beberapa cara untuk memilih bahasa dan menyesuaikan pengaturan bahasa",
"uls-plang-title-languages": "Bahasa",
"ext-uls-select-language-settings-icon-tooltip": "Setelan bahasa",
"ext-uls-undo-language-tooltip-text": "Bahasa berubah dari $1",
- "ext-uls-language-settings-preferences-link": "Pengaturan bahasa lanjutan",
+ "ext-uls-language-settings-preferences-link": "Setelan lanjutan",
"uls-betafeature-label": "Pranala bahasa yang ringkas",
"uls-betafeature-desc": "Menampilkan versi yang lebih pendek dari daftar bahasa, dengan hanya menampilkan bahasa yang lebih relevan dengan Anda.",
"ext-uls-display-settings-title": "Setelan tampilan",
"ext-uls-display-settings-language-tab": "Bahasa",
- "ext-uls-display-settings-fonts-tab": "Huruf",
+ "ext-uls-display-settings-fonts-tab": "Fon",
"ext-uls-display-settings-title-short": "Tampilan",
- "ext-uls-display-settings-desc": "Pengaturan bahasa untuk menu dan huruf",
+ "ext-uls-display-settings-desc": "Pengaturan bahasa untuk menu dan fon",
"ext-uls-language-settings-title": "Setelan bahasa",
"ext-uls-language-settings-apply": "Terapkan setelan",
"ext-uls-language-settings-cancel": "Batalkan",
"ext-uls-language-buttons-help": "Mengubah bahasa menu. Bahasa konten tidak akan terpengaruh.",
- "ext-uls-display-settings-font-settings": "Setelan huruf",
+ "ext-uls-display-settings-font-settings": "Setelan fon",
"ext-uls-display-settings-ui-language": "Tampilan bahasa",
"ext-uls-display-settings-anon-label": "Tampilan bahasa:",
"ext-uls-display-settings-anon-same-as-content": "$1 (sama dengan konten)",
@@ -31,10 +35,10 @@
"ext-uls-webfonts-settings-title": "Unduh fon bila perlu.",
"ext-uls-webfonts-settings-info": "Unduh fon yang kurang secara otomatis dan izinkan pemilihan fon yang disukai.",
"ext-uls-webfonts-settings-info-link": "Informasi lebih lanjut",
- "ext-uls-webfonts-select-for": "Pilih huruf untuk $1",
- "ext-uls-webfonts-select-for-ui-info": "Huruf yang digunakan untuk antarmuka pengguna",
- "ext-uls-webfonts-select-for-content-info": "Huruf yang digunakan untuk konten",
- "ext-uls-webfonts-system-font": "Huruf sistem",
+ "ext-uls-webfonts-select-for": "Pilih fon untuk $1",
+ "ext-uls-webfonts-select-for-ui-info": "Fon yang digunakan untuk antarmuka pengguna",
+ "ext-uls-webfonts-select-for-content-info": "Fon yang digunakan untuk konten",
+ "ext-uls-webfonts-system-font": "Fon sistem",
"ext-uls-back-to-display-settings": "Kembali ke setelan tampilan",
"ext-uls-input-settings-title": "Setelan masukan",
"ext-uls-input-settings-title-short": "Masukan",
@@ -43,29 +47,23 @@
"ext-uls-input-settings-ui-language": "Bahasa yang digunakan untuk menulis",
"ext-uls-back-to-input-settings": "Kembali ke setelan masukan",
"ext-uls-ime-help": "Cara menggunakan",
- "ext-uls-disable-input-method": "Gunakan keyboard standar",
+ "ext-uls-disable-input-method": "Gunakan papan ketik standar",
"ext-uls-input-settings-more-languages-tooltip": "Lebih banyak bahasa",
"jquery-ime-other-languages": "Bahasa-bahasa lain",
- "jquery-ime-disable-text": "Gunakan keyboard standar",
+ "jquery-ime-disable-text": "Gunakan papan ketik standar",
"jquery-ime-help": "Bantuan",
"ext-uls-input-disable": "Nonaktifkan perkakas input",
"ext-uls-input-enable": "Aktifkan perkakas input",
"ext-uls-input-disable-info": "Perkakas input nonaktif.",
- "ext-uls-input-settings-noime": "Metode masukan tidak tersedia untuk bahasa ini.",
- "ext-uls-input-disable-notification": "Perangkat input dinonaktifkan",
+ "ext-uls-input-settings-noime": "Tidak tersedia metode input untuk bahasa ini.",
+ "ext-uls-input-disable-notification": "Perkakas input dinonaktifkan",
"ext-uls-input-disable-notification-undo": "Batal",
- "ext-uls-input-disable-notification-info-personal": "Anda dapat mengaktifkan perangkat input setiap saat dari pengaturan bahasa.",
- "ext-uls-input-disable-notification-info-interlanguage": "Anda dapat mengaktifkan perangkat input setiap saat dari pengaturan bahasa di sebelah daftar bahasa.",
+ "ext-uls-input-disable-notification-info-personal": "Anda dapat mengaktifkan perkakas input kapan pun dari pengaturan bahasa.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Anda dapat mengaktifkan perkakas input kapan pun dari pengaturan bahasa di sebelah daftar bahasa.",
"ext-uls-language-settings-applying": "Menerapkan...",
"ext-uls-compact-link-count": "{{PLURAL:$1|Satu lagi|$1 lagi}}",
- "apihelp-languagesearch-description": "Cari nama bahasa dalam aksara apa pun.",
- "apihelp-languagesearch-param-search": "Cari kata.",
- "apihelp-languagesearch-param-typos": "Jumlah kesalahan eja yang diperbolehkan dalam kata pencarian.",
- "apihelp-languagesearch-example-1": "Cari \"Te\"",
- "apihelp-languagesearch-example-2": "Cari \"ഫി\"",
- "apihelp-languagesearch-example-3": "Cari \"ഫി\", memperbolehkan satu kesalahan ketik",
- "apihelp-ulslocalization-description": "Dapatkan lokalisasi ULS dalam bahasa yang diberikan.",
- "apihelp-ulslocalization-param-language": "Kata bahasa.",
- "apihelp-ulslocalization-example-1": "Dapatkan lokalisasi Tamil",
- "apihelp-ulslocalization-example-2": "Dapatkan lokalisasi Hindi"
+ "ext-uls-compact-link-info": "Semua bahasa (pilihan awal berasal dari pilihan umum oleh Anda dan orang lain)",
+ "prefs-languages": "Bahasa-bahasa",
+ "ext-uls-compact-language-links-preference": "Gunakan [[$1|daftar bahasa pendek]], dengan bahasa-bahasa yang relevan dengan Anda.",
+ "ext-uls-compact-no-results": "Halaman ini tidak tersedia dalam bahasa yang Anda cari."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/ilo.json b/MLEB/UniversalLanguageSelector/i18n/ilo.json
index c1d19cfc..58d9be1a 100644
--- a/MLEB/UniversalLanguageSelector/i18n/ilo.json
+++ b/MLEB/UniversalLanguageSelector/i18n/ilo.json
@@ -51,18 +51,10 @@
"ext-uls-input-settings-noime": "Awan dagiti pamay-an ti ikabil ti mabalin a magun-od para iti daytoy a pagsasao.",
"ext-uls-input-disable-notification": "Dagiti ramit ti ikabil ket nabaldadon.",
"ext-uls-input-disable-notification-undo": "Ibabawi",
- "ext-uls-input-disable-notification-info-personal": "Mabalinmo a pakabaelan dagiti ramit ti ikabil iti aniaman a panawen manipud kadagiti pannakaisaad ti pagsasao.",
+ "ext-uls-input-disable-notification-info-personal": "Mabalinmo a pakabaelan dagiti ramit ti pagikabilan iti ania man a panawen manipud kadagiti pannakaisaad ti pagsasao.",
"ext-uls-input-disable-notification-info-interlanguage": "Mabalinmo a pakabaelan dagiti ramit ti ikabil manipud kadagiti pannakaisaad ti pagsasao iti kaabay ti listaan ti pagsasao.",
"ext-uls-language-settings-applying": "Ipakpakat...",
"ext-uls-compact-link-count": "{{PLURAL:$1|Maysa pay|$1 pay}}",
- "apihelp-languagesearch-description": "Agbiruk kadagiti nagan ti pagsasao iti ania man nga eskritu.",
- "apihelp-languagesearch-param-search": "Kuerdas ti panagbiruk.",
- "apihelp-languagesearch-param-typos": "Bilang dagiti kamali ti panangiletra a maipalubos iti kuerdas ti panagbiruk.",
- "apihelp-languagesearch-example-1": "Agbiruk para iti \"Te\"",
- "apihelp-languagesearch-example-2": "Agbiruk para iti \"ഫി\"",
- "apihelp-languagesearch-example-3": "Agbiruk para iti \"ഫി\", a mangipalubos iti maysa a kamali",
- "apihelp-ulslocalization-description": "Alaen ti lokalisasion ti ULS iti naited a pagsasao.",
- "apihelp-ulslocalization-param-language": "Kodigo ti pagsasao.",
- "apihelp-ulslocalization-example-1": "Alaen ti lokalisasion ti Tamil",
- "apihelp-ulslocalization-example-2": "Alaen ti lokalisasion ti Hindi"
+ "prefs-languages": "Dagiti pagsasao",
+ "ext-uls-compact-language-links-preference": "Usaren ti [[$1|kompakto a listaan ti pagsasao]], kadagiti pagsasao a nangruna kenka."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/it.json b/MLEB/UniversalLanguageSelector/i18n/it.json
index a5fa876a..dffa60e3 100644
--- a/MLEB/UniversalLanguageSelector/i18n/it.json
+++ b/MLEB/UniversalLanguageSelector/i18n/it.json
@@ -6,7 +6,8 @@
"Darth Kule",
"Nemo bis",
"F. Cosoleto",
- "Macofe"
+ "Macofe",
+ "Matteocng"
]
},
"uls-desc": "Fornisce agli utenti diversi modi di selezionare una lingua e sistemare le impostazioni della lingua",
@@ -60,8 +61,7 @@
"ext-uls-input-disable-notification-info-interlanguage": "È possibile attivare in qualsiasi momento gli strumenti di scrittura dalle impostazioni della lingua, vicino all'elenco delle lingue.",
"ext-uls-language-settings-applying": "Applicando...",
"ext-uls-compact-link-count": "{{PLURAL:$1|Un'altra|Altre $1}}",
- "apihelp-languagesearch-example-1": "Cerca \"Te\"",
- "apihelp-languagesearch-example-2": "Cerca \"ഫി\"",
- "apihelp-languagesearch-example-3": "Cerca \"ഫി\", consentendo un errore di battitura",
- "apihelp-ulslocalization-param-language": "Codice lingua."
+ "ext-uls-compact-link-info": "Tutte le lingue (selezione iniziale tra le scelte comuni tue e degli altri)",
+ "prefs-languages": "Lingue",
+ "ext-uls-compact-language-links-preference": "Utilizza un [[$1|elenco ridotto di lingue]], con le lingue per te rilevanti."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/ja.json b/MLEB/UniversalLanguageSelector/i18n/ja.json
index 437b39be..ad9b7e4f 100644
--- a/MLEB/UniversalLanguageSelector/i18n/ja.json
+++ b/MLEB/UniversalLanguageSelector/i18n/ja.json
@@ -4,7 +4,10 @@
"Fryed-peach",
"Shirayuki",
"Sujiniku",
- "Otokoume"
+ "Otokoume",
+ "Kusurija",
+ "にょきにょき",
+ "Omotecho"
]
},
"uls-desc": "言語を選択するため/言語設定を調整するための、いくつかの方法を利用者に提供する",
@@ -55,9 +58,11 @@
"ext-uls-input-disable-notification": "入力ツールを無効にしました",
"ext-uls-input-disable-notification-undo": "取り消す",
"ext-uls-input-disable-notification-info-personal": "言語の設定で、いつでも入力ツールを有効にできます。",
- "ext-uls-input-disable-notification-info-interlanguage": "言語一覧の隣にある言語の設定で、いつでも入力ツールを有効にできます。",
+ "ext-uls-input-disable-notification-info-interlanguage": "言語一覧にある言語の設定(歯車のアイコン)で、いつでも入力ツールを有効にできます。",
"ext-uls-language-settings-applying": "適用しています...",
"ext-uls-compact-link-count": "{{PLURAL:$1|もう一つ|他 $1}}",
- "apihelp-languagesearch-param-search": "検索文字列。",
- "apihelp-ulslocalization-param-language": "言語コード"
+ "ext-uls-compact-link-info": "すべての言語(あなたを含む利用者の共通の選択肢による基本の選択)",
+ "prefs-languages": "言語",
+ "ext-uls-compact-language-links-preference": "[[$1|折りたたんだコンパクトな言語間リンク]]を使い、自分に関係のあるもののみ表示。",
+ "ext-uls-compact-no-results": "このページはご利用の言語では提供されていません。"
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/ka.json b/MLEB/UniversalLanguageSelector/i18n/ka.json
index 94a33273..51ebb216 100644
--- a/MLEB/UniversalLanguageSelector/i18n/ka.json
+++ b/MLEB/UniversalLanguageSelector/i18n/ka.json
@@ -52,5 +52,8 @@
"ext-uls-input-enable": "საწერი ხელწასყოების ჩართვა",
"ext-uls-input-disable-info": "საწერი ხელსაწყოები გამორთულია.",
"ext-uls-input-settings-noime": "წერის მეთოდები ამ ენისათვის არ არის განსაზღვრული.",
- "ext-uls-input-disable-notification-undo": "დაბრუნება"
+ "ext-uls-input-disable-notification-undo": "დაბრუნება",
+ "ext-uls-compact-link-count": "{{PLURAL:$1|კიდევ ერთი|კიდევ $1}}",
+ "prefs-languages": "ენები",
+ "ext-uls-compact-language-links-preference": "თქვენთან დაკავშირებული ენების კომპაქტური სიის გამოყენება."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/kk-cyrl.json b/MLEB/UniversalLanguageSelector/i18n/kk-cyrl.json
index bd08df40..2b711776 100644
--- a/MLEB/UniversalLanguageSelector/i18n/kk-cyrl.json
+++ b/MLEB/UniversalLanguageSelector/i18n/kk-cyrl.json
@@ -53,13 +53,5 @@
"ext-uls-input-disable-notification-info-personal": "Сіз тіл баптауларынан кез келген уақытта енгізу құралдарын қоса аласыз.",
"ext-uls-input-disable-notification-info-interlanguage": "Сіз тіл баптаулары тіл тізімі қатарынан кез келген уақытта енгізу құралдарын қоса аласыз.",
"ext-uls-language-settings-applying": "Қолданылуда...",
- "ext-uls-compact-link-count": "{{PLURAL:$1|тағы бір тілде|тағы $1 тілде}}",
- "apihelp-languagesearch-description": "Кез келген шрифттегі тіл атауларын іздеу.",
- "apihelp-languagesearch-param-search": "Іздеу жолы.",
- "apihelp-languagesearch-param-typos": "Іздеу жолында дұрыс жазу ережесін бұзуына рұқсат етілген саны",
- "apihelp-languagesearch-example-1": "«Te» үшін іздеу",
- "apihelp-languagesearch-example-2": "«ഫി» үшін іздеу",
- "apihelp-ulslocalization-param-language": "Тіл жолы.",
- "apihelp-ulslocalization-example-1": "Тамил жерсіндірілуін алу",
- "apihelp-ulslocalization-example-2": "Хинди жерсіндірілуін алу"
+ "ext-uls-compact-link-count": "{{PLURAL:$1|тағы бір тілде|тағы $1 тілде}}"
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/km.json b/MLEB/UniversalLanguageSelector/i18n/km.json
index 02ab1a1d..0dd78801 100644
--- a/MLEB/UniversalLanguageSelector/i18n/km.json
+++ b/MLEB/UniversalLanguageSelector/i18n/km.json
@@ -55,5 +55,6 @@
"ext-uls-input-disable-notification-info-interlanguage": "អ្នកអាចបើកអោយប្រើឧបករណ៍វាយបញ្ចូលពេលណាក៏បាន ដោយចូលទៅកាន់ការកំណត់ភាសា​ដែលនៅក្បែរបញ្ជីភាសា។",
"ext-uls-language-settings-applying": "កំពុងអនុវត្ត...",
"ext-uls-compact-link-count": "{{PLURAL:$1|មួយទៀត|$1 ទៀត}}",
- "apihelp-ulslocalization-param-language": "កូដ​ភាសា។"
+ "prefs-languages": "ភាសា",
+ "ext-uls-compact-language-links-preference": "ប្រើ[[$1|បញ្ជីភាសាខ្នាតខ្លី]] ដែលមានតែភាសាទាក់ទិននឹងអ្នក។"
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/ko.json b/MLEB/UniversalLanguageSelector/i18n/ko.json
index 5ec50057..4145c8dc 100644
--- a/MLEB/UniversalLanguageSelector/i18n/ko.json
+++ b/MLEB/UniversalLanguageSelector/i18n/ko.json
@@ -7,38 +7,43 @@
"Priviet",
"Revi",
"IRTC1015",
- "SeoJeongHo"
+ "SeoJeongHo",
+ "Hwangjy9",
+ "Nemo bis",
+ "Ykhwong",
+ "Garam"
]
},
"uls-desc": "사용자에게 언어를 선택하고 언어 설정을 바꾸는 몇 가지 방법을 제공합니다",
"uls-plang-title-languages": "언어",
"ext-uls-select-language-settings-icon-tooltip": "언어 설정",
"ext-uls-undo-language-tooltip-text": "언어가 $1에서 바뀌었습니다",
+ "ext-uls-undo-language-tooltip-text-local": "이 위키의 언어가 변경되었습니다. 모든 위키의 언어를 변경하려면 [[Special:GlobalPreferences|통합 계정 설정]]을 확인하십시오.",
"ext-uls-language-settings-preferences-link": "자세한 언어 설정",
"uls-betafeature-label": "언어 링크 단축",
- "uls-betafeature-desc": "다른 언어 목록을 단축하고, 당신과 더 관계 있는 언어만을 보여줍니다.",
- "ext-uls-display-settings-title": "보기 설정",
+ "uls-betafeature-desc": "사용자와 관련 있는 언어로 간소화된 언어 목록을 보여줍니다.",
+ "ext-uls-display-settings-title": "표시 설정",
"ext-uls-display-settings-language-tab": "언어",
"ext-uls-display-settings-fonts-tab": "글꼴",
- "ext-uls-display-settings-title-short": "보기",
+ "ext-uls-display-settings-title-short": "표시",
"ext-uls-display-settings-desc": "메뉴와 글꼴에 사용하는 언어를 설정합니다.",
"ext-uls-language-settings-title": "언어 설정",
"ext-uls-language-settings-apply": "설정 적용",
"ext-uls-language-settings-cancel": "취소",
"ext-uls-language-buttons-help": "메뉴의 언어를 바꿉니다. 내용 언어는 영향을 받지 않습니다.",
"ext-uls-display-settings-font-settings": "글꼴 설정",
- "ext-uls-display-settings-ui-language": "보일 언어",
- "ext-uls-display-settings-anon-label": "보일 언어:",
+ "ext-uls-display-settings-ui-language": "표시 언어",
+ "ext-uls-display-settings-anon-label": "표시 언어:",
"ext-uls-display-settings-anon-same-as-content": "$1 (내용과 같음)",
"ext-uls-display-settings-anon-log-in-cta": "메뉴의 다른 언어를 선택하려면 [[Special:UserLogin|로그인]]하세요.",
"ext-uls-webfonts-settings-title": "필요할 때 글꼴 내려받기",
- "ext-uls-webfonts-settings-info": "없는 폰트를 자동으로 내려받고 선호하는 글꼴을 선택할 수 있도록 허용합니다.",
+ "ext-uls-webfonts-settings-info": "없는 글꼴을 자동으로 내려받고 선호하는 글꼴을 선택할 수 있도록 허용합니다.",
"ext-uls-webfonts-settings-info-link": "자세한 정보",
"ext-uls-webfonts-select-for": "$1에 사용할 글꼴 선택",
"ext-uls-webfonts-select-for-ui-info": "사용자 인터페이스에 사용할 글꼴",
"ext-uls-webfonts-select-for-content-info": "내용에 사용할 글꼴",
"ext-uls-webfonts-system-font": "시스템 글꼴",
- "ext-uls-back-to-display-settings": "보기 설정으로 돌아가기",
+ "ext-uls-back-to-display-settings": "표시 설정으로 돌아가기",
"ext-uls-input-settings-title": "입력 설정",
"ext-uls-input-settings-title-short": "입력",
"ext-uls-input-settings-desc": "다른 언어로 입력하겠습니까?",
@@ -60,6 +65,9 @@
"ext-uls-input-disable-notification-info-personal": "언어 설정에서 언제든지 입력 도구를 활성화할 수 있습니다.",
"ext-uls-input-disable-notification-info-interlanguage": "언어 목록 옆에 있는 언어 설정에서 언제든지 입력 도구를 활성화할 수 있습니다.",
"ext-uls-language-settings-applying": "적용 중....",
- "ext-uls-compact-link-count": "{{PLURAL:$1|다른 언어 $1개}}",
- "apihelp-ulslocalization-description": "주어진 언어로 ULS의 위치를 가져옵니다."
+ "ext-uls-compact-link-count": "{{PLURAL:$1|한 개 더 보기|$1개 더 보기}}",
+ "ext-uls-compact-link-info": "모든 언어 (사용자 및 다른 사용자들의 공통 선택 항목 중 초기 선택 항목)",
+ "prefs-languages": "언어",
+ "ext-uls-compact-language-links-preference": "사용자와 관련 있는 언어로 [[$1|간소화된 언어 목록]]을 사용합니다.",
+ "ext-uls-compact-no-results": "이 문서는 검색된 언어로 읽을 수 없습니다."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/krc.json b/MLEB/UniversalLanguageSelector/i18n/krc.json
index 8ac1da31..435fb496 100644
--- a/MLEB/UniversalLanguageSelector/i18n/krc.json
+++ b/MLEB/UniversalLanguageSelector/i18n/krc.json
@@ -1,7 +1,8 @@
{
"@metadata": {
"authors": [
- "Iltever"
+ "Iltever",
+ "Ernác"
]
},
"uls-desc": "Къошулуучугъа тил сайларгъа эмда тил джарашдырыуланы тюрлендирирге талай амал береди",
diff --git a/MLEB/UniversalLanguageSelector/i18n/ksh.json b/MLEB/UniversalLanguageSelector/i18n/ksh.json
index 49e900d6..49a87f3c 100644
--- a/MLEB/UniversalLanguageSelector/i18n/ksh.json
+++ b/MLEB/UniversalLanguageSelector/i18n/ksh.json
@@ -1,7 +1,8 @@
{
"@metadata": {
"authors": [
- "Purodha"
+ "Purodha",
+ "Amire80"
]
},
"uls-desc": "Jit dä Metmaachere ongerscheidlejje Müjjeleschkeite, en Schprohch ußzewähle un Enschtällonge för Schprohche ze maache.",
@@ -18,7 +19,7 @@
"ext-uls-display-settings-desc": "Donn de Schprohch för de Menühs un de Schreff-Zoote enschtälle.",
"ext-uls-language-settings-title": "Schprohche-Enschtällonge",
"ext-uls-language-settings-apply": "Lohß Jonn!",
- "ext-uls-language-settings-cancel": "Ophüre",
+ "ext-uls-language-settings-cancel": "Ophühre",
"ext-uls-language-buttons-help": "Donn de Schprohch för de Menühß un de Bedehnong ömschtälle. Dem Wiki singe Enhalld, un däm sing Schprohch, hät dermet nix ze donn.",
"ext-uls-display-settings-font-settings": "Enschtällonge för Schreff",
"ext-uls-display-settings-ui-language": "De Schprohch för de Bovverfläsch ze Bedehne",
@@ -54,15 +55,8 @@
"ext-uls-input-disable-notification-info-personal": "De besöndere Wärkzüsch för et Enjävve kam_mer zoh jeeder Zigg en de Enschtällonge för de Schprohch widder aanschallde.",
"ext-uls-input-disable-notification-info-interlanguage": "De besöndere Wärkzüsch för et Enjävve kam_mer zoh jeeder Zigg en dä Enschtällonge för de Schprohch nävve dä Leß met de Schprohche widder aanschallde.",
"ext-uls-language-settings-applying": "Em Jang&nbsp;…",
- "ext-uls-compact-link-count": "{{PLURAL:$1|Noch eine|Noch $1|Keine mih}}.",
- "apihelp-languagesearch-description": "Söhk oh Nahme för Schprohche en jeede Schreff.",
- "apihelp-languagesearch-param-search": "Noh wat söhke?",
- "apihelp-languagesearch-param-typos": "De Aanzahl Tippfähler, di mer övverjonn welle.",
- "apihelp-languagesearch-example-1": "Söhk noh „Te“.",
- "apihelp-languagesearch-example-2": "Söhk noh „ഫി“.",
- "apihelp-languagesearch-example-3": "Söhk noh „ഫി“ met einem Tipfähler.",
- "apihelp-ulslocalization-description": "Donn de localization för der <i lang=\"en\" xml:lang=\"en\" dir=\"ltr\" title=\"Universal Language Selector\">ULS</i> en dä aanjejovve Schprohch holle.",
- "apihelp-ulslocalization-param-language": "Et Schprohcheköözel.",
- "apihelp-ulslocalization-example-1": "Donn de localization för de tamihlesche Schprohch holle",
- "apihelp-ulslocalization-example-2": "Donn de localization för de Schprohch Hindi holle"
+ "ext-uls-compact-link-count": "{{PLURAL:$1|Noch eine|Noch $1.}}",
+ "ext-uls-compact-link-info": "Alle Schprohche (Am Aanfang wat ald öff ußjesöhkt wood)",
+ "prefs-languages": "Schprohche",
+ "ext-uls-compact-language-links-preference": "Nämm de kompakte Leß met Schprohche, di för Desch vun Bedüggdeneß sin"
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/ku-latn.json b/MLEB/UniversalLanguageSelector/i18n/ku-latn.json
index 95f8e205..16ead901 100644
--- a/MLEB/UniversalLanguageSelector/i18n/ku-latn.json
+++ b/MLEB/UniversalLanguageSelector/i18n/ku-latn.json
@@ -2,30 +2,44 @@
"@metadata": {
"authors": [
"George Animal",
- "Ghybu"
+ "Ghybu",
+ "Bikarhêner"
]
},
"uls-plang-title-languages": "Ziman",
"ext-uls-select-language-settings-icon-tooltip": "Eyarên ziman",
"ext-uls-undo-language-tooltip-text": "Ziman hate guherandin ji $1",
+ "ext-uls-display-settings-title": "Hevyazên ekranê",
"ext-uls-display-settings-language-tab": "Ziman",
+ "ext-uls-display-settings-fonts-tab": "Tîp",
"ext-uls-display-settings-title-short": "Ekran",
"ext-uls-display-settings-desc": "Zimanê ku bo menu û nivîsan tê bikaranîn",
"ext-uls-language-settings-title": "Eyarên ziman",
"ext-uls-language-settings-cancel": "Betal bike",
+ "ext-uls-language-buttons-help": "Zimanê menuyan biguherîne. Zimanê naverokê dê neyê guherandin.",
"ext-uls-display-settings-font-settings": "Eyarên nivîsê",
"ext-uls-display-settings-ui-language": "Zimanê ekranê",
+ "ext-uls-display-settings-anon-label": "Zimanê ekranê:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (wek yê naverokê)",
"ext-uls-webfonts-settings-title": "Gava pêwist be tîpan daxe",
"ext-uls-webfonts-settings-info-link": "Zêdetir agahî",
"ext-uls-webfonts-select-for-content-info": "Tîpên ku bo naverokê tên bikaranîn",
"ext-uls-webfonts-system-font": "Tîpên pergalê",
+ "ext-uls-back-to-display-settings": "Vegere hevyazên ekranê",
+ "ext-uls-input-settings-title": "Hevyazên têxistinê",
+ "ext-uls-input-settings-title-short": "Têketin",
"ext-uls-input-settings-desc": "Tu bi zimanekî cuda dinivîsî?",
+ "ext-uls-input-settings-ime-settings": "Metodên têxistinê bo $1",
"ext-uls-input-settings-ui-language": "Zimanê ku bo nivîsînê tê bikaranîn",
+ "ext-uls-back-to-input-settings": "Vegere hevyazên têxistinê",
+ "ext-uls-ime-help": "Alîkariya bo bikaranînê",
+ "ext-uls-disable-input-method": "Klavyeya xwecihî bi kar bîne",
"ext-uls-input-settings-more-languages-tooltip": "Zêdetir ziman",
"jquery-ime-other-languages": "Zimanên din",
+ "jquery-ime-disable-text": "Klavyeya xwecihî bi kar bîne",
"jquery-ime-help": "Alîkarî",
+ "ext-uls-input-disable": "Amûrên têxistinê bêçalakî bike",
+ "ext-uls-input-enable": "Amûrên têxistinê çalak bike",
"ext-uls-input-disable-notification-undo": "Betal bike",
- "apihelp-languagesearch-example-1": "Li \"Te\" bigere",
- "apihelp-languagesearch-example-2": "Li \"ഫി\" bigere",
- "apihelp-ulslocalization-param-language": "Koda ziman."
+ "prefs-languages": "Ziman"
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/kw.json b/MLEB/UniversalLanguageSelector/i18n/kw.json
index de5f0278..ff273ace 100644
--- a/MLEB/UniversalLanguageSelector/i18n/kw.json
+++ b/MLEB/UniversalLanguageSelector/i18n/kw.json
@@ -1,9 +1,11 @@
{
"@metadata": {
"authors": [
- "Nrowe"
+ "Nrowe",
+ "Xð"
]
},
+ "uls-plang-title-languages": "Yethow",
"ext-uls-select-language-settings-icon-tooltip": "Settyansow yeth",
"ext-uls-undo-language-tooltip-text": "Chanjyes re beu an yeth dhyworth $1",
"ext-uls-language-settings-preferences-link": "Moy settyansow yeth",
diff --git a/MLEB/UniversalLanguageSelector/i18n/la.json b/MLEB/UniversalLanguageSelector/i18n/la.json
index 27a122b4..77c509cb 100644
--- a/MLEB/UniversalLanguageSelector/i18n/la.json
+++ b/MLEB/UniversalLanguageSelector/i18n/la.json
@@ -1,30 +1,32 @@
{
"@metadata": {
"authors": [
- "Autokrator"
+ "Autokrator",
+ "Laurentianus",
+ "Xð"
]
},
- "uls-plang-title-languages": "Linguis aliis",
- "ext-uls-select-language-settings-icon-tooltip": "Praeferentiae linguae",
+ "uls-plang-title-languages": "Linguis",
+ "ext-uls-select-language-settings-icon-tooltip": "Sermonis modi",
"ext-uls-undo-language-tooltip-text": "Lingua commota ex $1",
"ext-uls-language-settings-preferences-link": "Plura",
- "ext-uls-display-settings-title": "Praeferentias monstrare",
+ "ext-uls-display-settings-title": "Modos ostendere",
"ext-uls-display-settings-language-tab": "Lingua",
"ext-uls-display-settings-fonts-tab": "Scripturae",
"ext-uls-display-settings-title-short": "Depictio",
"ext-uls-display-settings-desc": "Linguam per navigatrum atque scripturam ligere",
- "ext-uls-language-settings-title": "Praeferentiae linguae",
- "ext-uls-language-settings-apply": "Praeferentias mutare",
+ "ext-uls-language-settings-title": "Sermonis modi",
+ "ext-uls-language-settings-apply": "Modos applicare",
"ext-uls-language-settings-cancel": "Abrogare",
"ext-uls-language-buttons-help": "Linguam navigatri mutare. Lingua contentorum non mutabitur.",
- "ext-uls-display-settings-font-settings": "Praeferentiae scripturae",
+ "ext-uls-display-settings-font-settings": "Scripturae modi",
"ext-uls-display-settings-ui-language": "Lingua depictionis",
"ext-uls-display-settings-anon-label": "Lingua depictionis",
"ext-uls-display-settings-anon-same-as-content": "$1 (eadem ac contenta)",
"ext-uls-webfonts-select-for": "Scripturam ligere per $1",
"ext-uls-webfonts-select-for-ui-info": "Scriptura navigatri",
"ext-uls-webfonts-select-for-content-info": "Scriptura contentorum",
- "ext-uls-back-to-display-settings": "Reddere ad praeferentias depictionis",
+ "ext-uls-back-to-display-settings": "Redire ad praesentationis modos",
"ext-uls-input-settings-desc": "Uterisne alia lingua?",
"ext-uls-input-settings-ui-language": "Lingua adhibita ad scribendum",
"ext-uls-ime-help": "Auxilium",
diff --git a/MLEB/UniversalLanguageSelector/i18n/lb.json b/MLEB/UniversalLanguageSelector/i18n/lb.json
index 6b87b995..80e58a1b 100644
--- a/MLEB/UniversalLanguageSelector/i18n/lb.json
+++ b/MLEB/UniversalLanguageSelector/i18n/lb.json
@@ -55,5 +55,8 @@
"ext-uls-input-disable-notification-info-personal": "Dir kënnt d''input tools' zu all Ament vun de Sproochastellungen aus aschalten.",
"ext-uls-input-disable-notification-info-interlanguage": "Dir kënnt d''input tools' zu all Ament vun de Sproochastellungen nieft der Lëscht vun de Sproochen aschalten",
"ext-uls-compact-link-count": "{{PLURAL:$1|Eng méi|$1 méi}}",
- "apihelp-ulslocalization-param-language": "Sproochcode."
+ "ext-uls-compact-link-info": "All Sproochen (éischte Choix aus den heefegste Choixe vun Iech an Aneren)",
+ "prefs-languages": "Sproochen",
+ "ext-uls-compact-language-links-preference": "Benotzt eng [[$1|kompakt Lëscht vu Sproochen]], mat de Sproochen déi fir Iech relevant sinn.",
+ "ext-uls-compact-no-results": "Dës Säit ass net an där Sprooch disponibel an där Dir gesicht hutt."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/lrc.json b/MLEB/UniversalLanguageSelector/i18n/lrc.json
index b08126ee..034d82f6 100644
--- a/MLEB/UniversalLanguageSelector/i18n/lrc.json
+++ b/MLEB/UniversalLanguageSelector/i18n/lrc.json
@@ -21,7 +21,7 @@
"ext-uls-display-settings-ui-language": "نشون دئن زون",
"ext-uls-display-settings-anon-label": "نشون دئن زون:",
"ext-uls-display-settings-anon-same-as-content": "$1 (چی یه گل مینونه)",
- "ext-uls-display-settings-anon-log-in-cta": "[[ویجه:وامین اومائن کارور|وامین اومائن]] سی انتخاو یه گل زون هنی د دیارگه یا.",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|وامین اومائن]] سی انتخاو یه گل زون هنی د دیارگه یا.",
"ext-uls-webfonts-settings-info-link": "دونسمنيا بیشتر",
"ext-uls-webfonts-select-for": "انتخاو یه گل فونت سی $1",
"ext-uls-webfonts-select-for-ui-info": "فونت استفاده بیه سی مین پیوست کارور",
@@ -42,9 +42,5 @@
"jquery-ime-help": "هومياری",
"ext-uls-input-disable-notification-undo": "انجوم ندی ئن",
"ext-uls-language-settings-applying": "د حال و بال وه کار گرتن....",
- "ext-uls-compact-link-count": "{{PLURAL:$1|یه گل بیشتر|$1 بیشتر}}",
- "apihelp-languagesearch-param-search": "پی جوری د یه گل رشته.",
- "apihelp-languagesearch-example-1": "پی جوری سی \"Te\"",
- "apihelp-languagesearch-example-2": "پی جوری سی \"ഫി\"",
- "apihelp-ulslocalization-param-language": "رازینه زوٙن."
+ "ext-uls-compact-link-count": "{{PLURAL:$1|یه گل بیشتر|$1 بیشتر}}"
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/lt.json b/MLEB/UniversalLanguageSelector/i18n/lt.json
index 07493c33..99330d0f 100644
--- a/MLEB/UniversalLanguageSelector/i18n/lt.json
+++ b/MLEB/UniversalLanguageSelector/i18n/lt.json
@@ -2,7 +2,10 @@
"@metadata": {
"authors": [
"Mantak111",
- "Salpusnis"
+ "Salpusnis",
+ "Kusurija",
+ "Hugo.arg",
+ "Manvydasz"
]
},
"uls-desc": "Suteikia vartotojui keliais būdais, pasirinkti kalbą ir sureguliuoti kalbos parametrus.",
@@ -56,14 +59,7 @@
"ext-uls-input-disable-notification-info-interlanguage": "Jūs galite įgalinti įvesties priemones bet kuriuo metu iš kalbos parametrų šalia kalbos sąrašo.",
"ext-uls-language-settings-applying": "Taikant...",
"ext-uls-compact-link-count": "{{PLURAL:$1|Viena daugiau|$1 daugiau}}",
- "apihelp-languagesearch-description": "Ieškoti kalbų pavadinimų kiekviename scenarijuje.",
- "apihelp-languagesearch-param-search": "Ieškoti eilutės.",
- "apihelp-languagesearch-param-typos": "Leistinas rašybos klaidų skaičius paieškos eilutėje.",
- "apihelp-languagesearch-example-1": "Ieškoti \"Te\"",
- "apihelp-languagesearch-example-2": "Ieškoti \"ഫി\"",
- "apihelp-languagesearch-example-3": "Ieškoti \"ഫി\", leidžiant vieną rinkimo klaidą",
- "apihelp-ulslocalization-description": "Gauti ULS lokalizavimas pateikta kalba.",
- "apihelp-ulslocalization-param-language": "Kalbos kodas.",
- "apihelp-ulslocalization-example-1": "Gauti tamilų lokalizavimą",
- "apihelp-ulslocalization-example-2": "Gauti Hindi lokalizavimą"
+ "prefs-languages": "Kalbos",
+ "ext-uls-compact-language-links-preference": "Naudoti suskleistą kalbų sąrašą, rodantį tik jums svarbias kalbas.",
+ "ext-uls-compact-no-results": "Šis puslapis nepasiekiamas jūsų pateikta kalba."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/lv.json b/MLEB/UniversalLanguageSelector/i18n/lv.json
index ba6783cc..937a7d8e 100644
--- a/MLEB/UniversalLanguageSelector/i18n/lv.json
+++ b/MLEB/UniversalLanguageSelector/i18n/lv.json
@@ -2,10 +2,51 @@
"@metadata": {
"authors": [
"Edgars2007",
- "Papuass"
+ "Papuass",
+ "Silraks"
]
},
"uls-desc": "Ļauj lietotājam dažādos veidos izvēlēties valodu un pielāgot valodas iestatījumus",
"uls-plang-title-languages": "Valodas",
- "ext-uls-undo-language-tooltip-text": "Valoda nomainīta no $1"
+ "ext-uls-select-language-settings-icon-tooltip": "Valodas iestatījumi",
+ "ext-uls-undo-language-tooltip-text": "Valoda nomainīta no $1",
+ "ext-uls-language-settings-preferences-link": "Vairāk valodas iestatījumi",
+ "uls-betafeature-label": "Kompaktas valodu saites",
+ "ext-uls-display-settings-title": "Attēlošanas iestatījumi",
+ "ext-uls-display-settings-language-tab": "Valoda",
+ "ext-uls-display-settings-fonts-tab": "Fonti",
+ "ext-uls-display-settings-title-short": "Attēlošana",
+ "ext-uls-display-settings-desc": "Iestati izvēlnēs un fontos izmantoto valodu.",
+ "ext-uls-language-settings-title": "Valodas iestatījumi",
+ "ext-uls-language-settings-apply": "Pielietot iestatījumus",
+ "ext-uls-language-settings-cancel": "Atcelt",
+ "ext-uls-language-buttons-help": "Izmaini izvēļņu valodu. Satura valoda nemainīsies.",
+ "ext-uls-display-settings-font-settings": "Fontu iestatījumi",
+ "ext-uls-display-settings-ui-language": "Attēlošanas valoda",
+ "ext-uls-display-settings-anon-label": "Attēlošanas valoda:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (tāda pati kā saturam)",
+ "ext-uls-webfonts-settings-title": "Lejupielādēt fontus pēc nepieciešamības",
+ "ext-uls-webfonts-settings-info-link": "Vairāk informācijas",
+ "ext-uls-webfonts-select-for-ui-info": "Saskarnei izmantotais fonts",
+ "ext-uls-webfonts-select-for-content-info": "Saturam izmantotais fonts",
+ "ext-uls-webfonts-system-font": "Sistēmas fonts",
+ "ext-uls-back-to-display-settings": "Atpakaļ uz attēlošanas iestatījumiem",
+ "ext-uls-input-settings-title": "Ievades iestatījumi",
+ "ext-uls-input-settings-title-short": "Ievade",
+ "ext-uls-input-settings-desc": "Raksti citā valodā?",
+ "ext-uls-input-settings-ui-language": "Rakstīšanai izmantotā valoda",
+ "ext-uls-ime-help": "Kā lietot",
+ "ext-uls-input-settings-more-languages-tooltip": "Vairāk valodu",
+ "jquery-ime-other-languages": "Citas valodas",
+ "jquery-ime-help": "Palīdzība",
+ "ext-uls-input-disable": "Atspējot ievades rīkus",
+ "ext-uls-input-enable": "Iespējot ievades rīkus",
+ "ext-uls-input-disable-info": "Ievades rīki ir atspējoti.",
+ "ext-uls-input-settings-noime": "Šai valodai nav pieejama neviena ievades metode.",
+ "ext-uls-input-disable-notification": "Ievades rīki ir tikuši atspējoti",
+ "ext-uls-input-disable-notification-undo": "Atsaukt",
+ "ext-uls-language-settings-applying": "Pielieto...",
+ "ext-uls-compact-link-count": "{{PLURAL:$1|Vēl $1}}",
+ "prefs-languages": "Valodas",
+ "ext-uls-compact-language-links-preference": "Izmantot [[$1|kompakto valodu sarakstu]] ar tev atbilstošajām valodām."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/lzh.json b/MLEB/UniversalLanguageSelector/i18n/lzh.json
index 911ca492..4f5e45ac 100644
--- a/MLEB/UniversalLanguageSelector/i18n/lzh.json
+++ b/MLEB/UniversalLanguageSelector/i18n/lzh.json
@@ -1,8 +1,13 @@
{
"@metadata": {
"authors": [
- "Jason924tw"
+ "Jason924tw",
+ "Xð",
+ "Itsmine"
]
},
- "ext-uls-display-settings-language-tab": "語"
+ "uls-plang-title-languages": "語言",
+ "ext-uls-display-settings-language-tab": "語",
+ "ext-uls-compact-link-count": "尚有$1",
+ "ext-uls-compact-link-info": "外文"
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/mk.json b/MLEB/UniversalLanguageSelector/i18n/mk.json
index 68d35388..c61f9e9e 100644
--- a/MLEB/UniversalLanguageSelector/i18n/mk.json
+++ b/MLEB/UniversalLanguageSelector/i18n/mk.json
@@ -8,6 +8,7 @@
"uls-plang-title-languages": "Јазици",
"ext-uls-select-language-settings-icon-tooltip": "Јазични поставки",
"ext-uls-undo-language-tooltip-text": "Јазикот сменет од изворниот $1",
+ "ext-uls-undo-language-tooltip-text-local": "Јазикот е сменет за ова вики. Проверете си ги [[Special:GlobalPreferences|глобалните нагодувања]] за да го измените јазикот за сите викија.",
"ext-uls-language-settings-preferences-link": "Уште јазични поставки",
"uls-betafeature-label": "Збиени јазични врски",
"uls-betafeature-desc": "Прикажува скратена верзија на јазичните врски, односно само оние јазици што се однесуваат на вас",
@@ -28,7 +29,7 @@
"ext-uls-webfonts-settings-title": "Преземи фонтови кога ќе треба",
"ext-uls-webfonts-settings-info": "Автоматски преземи ги фонтовите што недостасуваат и дај избор на претпочитани фонтови",
"ext-uls-webfonts-settings-info-link": "Повеќе информации",
- "ext-uls-webfonts-select-for": "Одбери фонт за $1",
+ "ext-uls-webfonts-select-for": "Избор на фонт за $1",
"ext-uls-webfonts-select-for-ui-info": "Фонт за корисничкиот посредник",
"ext-uls-webfonts-select-for-content-info": "Фонт за содржините",
"ext-uls-webfonts-system-font": "Системски фонт",
@@ -54,15 +55,9 @@
"ext-uls-input-disable-notification-info-personal": "Вносните алатки можете да ги вклучите во јазичните поставки во секое време.",
"ext-uls-input-disable-notification-info-interlanguage": "Вносните алатки можете да ги вклучите во во секое време во јазичните поставки, веднаш до списокот на јазици.",
"ext-uls-language-settings-applying": "Применувам...",
- "ext-uls-compact-link-count": "{{PLURAL:$1|Уште еден|Уште $1}}",
- "apihelp-languagesearch-description": "Пребарајте имиња на јазици на било кое писмо.",
- "apihelp-languagesearch-param-search": "Низа за пребарување.",
- "apihelp-languagesearch-param-typos": "Број на допуштени грешки при пишување во низата на пребарувањето.",
- "apihelp-languagesearch-example-1": "Пребарај „Te“",
- "apihelp-languagesearch-example-2": "Пребарај „ഫി“",
- "apihelp-languagesearch-example-3": "Пребарај „ഫി“, допуштајќи една грешка при пишување",
- "apihelp-ulslocalization-description": "Дај превод на универзалниот јазичен избрач на дадениот јазик.",
- "apihelp-ulslocalization-param-language": "Јазичен код.",
- "apihelp-ulslocalization-example-1": "Дај превод на тамилски",
- "apihelp-ulslocalization-example-2": "Дај превод на хинди"
+ "ext-uls-compact-link-count": "{{PLURAL:$1|уште еден|уште $1}}",
+ "ext-uls-compact-link-info": "Сите јазици (првичен избор од вашите и туѓите вообичаени јазици)",
+ "prefs-languages": "Јазици",
+ "ext-uls-compact-language-links-preference": "Употреба на [[$1|збиен список на јазиците]] што се однесуваат на вас.",
+ "ext-uls-compact-no-results": "Страницата не е достапна на јазикот што го барате."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/mn.json b/MLEB/UniversalLanguageSelector/i18n/mn.json
index dfac70d1..01908ef2 100644
--- a/MLEB/UniversalLanguageSelector/i18n/mn.json
+++ b/MLEB/UniversalLanguageSelector/i18n/mn.json
@@ -1,8 +1,10 @@
{
"@metadata": {
"authors": [
- "Mongol"
+ "Mongol",
+ "Xð"
]
},
+ "uls-plang-title-languages": "Хэл",
"uls-betafeature-desc": "Өөрт илүү хамааралтай хэлний жагсаалтын богино хувилбарыг харуулах"
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/mr.json b/MLEB/UniversalLanguageSelector/i18n/mr.json
index e60ca77c..2ac5f2fe 100644
--- a/MLEB/UniversalLanguageSelector/i18n/mr.json
+++ b/MLEB/UniversalLanguageSelector/i18n/mr.json
@@ -7,36 +7,39 @@
},
"uls-desc": "सदस्यांना भाषा निवडण्याचे आणि त्यांची मांडणी अनुकूल करण्याचे अनेक मार्ग उपलब्ध करते",
"uls-plang-title-languages": "भाषा",
- "ext-uls-select-language-settings-icon-tooltip": "भाषा सेटींग्स",
+ "ext-uls-select-language-settings-icon-tooltip": "भाषेच्या मांडण्या(सेटींग्स)",
"ext-uls-undo-language-tooltip-text": "$1 पासुन भाषा बदलली",
"ext-uls-language-settings-preferences-link": "अधिकचे भाषा मांडणी पर्याय",
- "ext-uls-display-settings-title": "मांडणी दाखवा",
+ "uls-betafeature-label": "आटोपशीर भाषा दुवे",
+ "uls-betafeature-desc": "ज्या भाषा फक्त आपल्याशी संबंधित आहेत, त्या भाषांच्या यादीची अधिक छोटी आवृत्ती दाखवा.",
+ "ext-uls-display-settings-title": "मांडण्या दर्शवा",
"ext-uls-display-settings-language-tab": "भाषा",
"ext-uls-display-settings-fonts-tab": "टंक (फाँट)",
"ext-uls-display-settings-title-short": "दर्शवा",
- "ext-uls-display-settings-desc": "मेनु व फाँटच्या वापरासाठी भाषेची निवड करा.",
- "ext-uls-language-settings-title": "भाषा सेटींग्स",
- "ext-uls-language-settings-apply": "मांडणी (सेटींग्ज) लागु करा",
+ "ext-uls-display-settings-desc": "मेनु व टंकाच्या(फाँटच्या) वापरासाठी भाषेची निवड करा.",
+ "ext-uls-language-settings-title": "भाषेच्या मांडण्या(सेटींग्स)",
+ "ext-uls-language-settings-apply": "मांडण्या (सेटींग्ज) लागु करा",
"ext-uls-language-settings-cancel": "रद्द करा",
"ext-uls-language-buttons-help": "सुचालन(मेनु)ची भाषा बदला.अंगीकृत भाषेवर (कंटेंट लॅंग्वेज) त्याचा परिणाम होणार नाही.",
- "ext-uls-display-settings-font-settings": "फाँटची मांडणी (सेटींग्ज)",
- "ext-uls-display-settings-ui-language": "भाषा दाखवा",
- "ext-uls-display-settings-anon-label": "भाषा दाखवा:",
+ "ext-uls-display-settings-font-settings": "टंक मांडण्या (फाँट सेटींग्ज)",
+ "ext-uls-display-settings-ui-language": "भाषा दर्शवा",
+ "ext-uls-display-settings-anon-label": "भाषा दर्शवा:",
"ext-uls-display-settings-anon-same-as-content": "$1 (मजकुराच्या भाषेनुसार)",
- "ext-uls-display-settings-anon-log-in-cta": "दुसऱ्या कोणत्याही भाषेचा उपयोग करण्यासाठी [[Special:UserLogin|प्रवेश]] करा",
+ "ext-uls-display-settings-anon-log-in-cta": "दुसऱ्या कोणत्याही भाषेचा उपयोग करण्यासाठी [[Special:UserLogin|सनोंद प्रवेश]] करा",
"ext-uls-webfonts-settings-title": "आवश्यकता भासल्यास टंकांचे अधिभारण करा",
"ext-uls-webfonts-settings-info": "हरविलेल्या टंकांचे स्वयंचलितरित्या अधिभारण करा व पसंतीतले टंक निवडण्यास परवानगी द्या.",
+ "ext-uls-webfonts-settings-info-link": "अधिक माहिती",
"ext-uls-webfonts-select-for": "$1 करिता टंक(फाँट) निवडा",
- "ext-uls-webfonts-select-for-ui-info": "सदस्य आंतरपृष्ठासाठी (इंटरफेस) वापरलेला फाँट",
- "ext-uls-webfonts-select-for-content-info": "आशयासाठी वापरण्यात आलेला फाँट",
- "ext-uls-webfonts-system-font": "प्रणालीतील (सिस्टीम) फाँट",
- "ext-uls-back-to-display-settings": "'मांडणी दाखवा'कडे परत जा",
- "ext-uls-input-settings-title": "क्षेपन मांडणी (टायपींग/ईनपुट सेटींग्ज)",
+ "ext-uls-webfonts-select-for-ui-info": "सदस्य आंतरपृष्ठासाठी (इंटरफेस) वापरलेला टंक(फाँट)",
+ "ext-uls-webfonts-select-for-content-info": "आशयासाठी वापरण्यात आलेला टंक(फाँट)",
+ "ext-uls-webfonts-system-font": "प्रणालीगत टंक (सिस्टीम फाँट)",
+ "ext-uls-back-to-display-settings": "'मांडणी दर्शवा'कडे परत जा",
+ "ext-uls-input-settings-title": "क्षेपन मांडण्या (टायपींग/ईनपुट सेटींग्ज)",
"ext-uls-input-settings-title-short": "क्षेपन (टायपींग ईनपुट)",
- "ext-uls-input-settings-desc": "वेगळ्या भाषेत लिहीत आहात? <br /> (ULS सध्या यथादृश्यसंपादकात उपलब्ध नाही,मराठी टायपींग सध्या केवळ स्रोत संपादन पद्धतीतच उपलब्ध आहे)",
+ "ext-uls-input-settings-desc": "वेगळ्या भाषेत लिहीत आहात?",
"ext-uls-input-settings-ime-settings": " $1 साठी क्षेपन पद्धती (टायपींग/ईनपुट मेथड्स)",
"ext-uls-input-settings-ui-language": "लिहिण्यासाठी वापरलेली भाषा",
- "ext-uls-back-to-input-settings": "क्षेपन मांडणी (टायपींग/ईनपुट सेटींग्ज)कडे परत जा",
+ "ext-uls-back-to-input-settings": "क्षेपन मांडण्या (टायपींग/ईनपुट सेटींग्ज)कडे परत जा",
"ext-uls-ime-help": "कसे वापरावे ?",
"ext-uls-disable-input-method": "संगणक कळफलकाची मुळ भाषा वापरा",
"ext-uls-input-settings-more-languages-tooltip": "अधिक भाषा",
@@ -49,7 +52,10 @@
"ext-uls-input-settings-noime": "या भाषेसाठी कोणत्याही क्षेपन पद्धती (टायपींग/ईनपुट मेथड्स) उपलब्ध नाहीत.",
"ext-uls-input-disable-notification": "क्षेपन(टायपींग) साधने बंद करण्यात आलेली आहेत.",
"ext-uls-input-disable-notification-undo": "रद्द करा",
- "ext-uls-input-disable-notification-info-personal": "आपण क्षेपन साधनांचा (टायपींग/इनपुट टुल्स) वापर 'भाषा मांडणी'(लॅंग्वेज सेटींग्ज)तुन कधीही पुर्ववत् करु शकता.",
- "ext-uls-input-disable-notification-info-interlanguage": "भाषेच्या यादीशेजारी असलेल्या क्षेपन साधनांचा (टायपींग/इनपुट टुल्स) वापर आपण 'भाषा मांडणी'(लॅंग्वेज सेटींग्ज)तुन कधीही पुर्ववत् करु शकता.",
- "ext-uls-language-settings-applying": "लागू करीत आहे..."
+ "ext-uls-input-disable-notification-info-personal": "आपण क्षेपन साधनांचा (टायपींग/इनपुट टुल्स) वापर 'भाषा मांडण्या'(लॅंग्वेज सेटींग्ज)तुन कधीही पुर्ववत् करु शकता.",
+ "ext-uls-input-disable-notification-info-interlanguage": "भाषेच्या यादीशेजारी असलेल्या क्षेपन साधनांचा (टायपींग/इनपुट टुल्स) वापर आपण 'भाषा मांडण्या'(लॅंग्वेज सेटींग्ज)तुन कधीही पुर्ववत् करु शकता.",
+ "ext-uls-language-settings-applying": "लागू करीत आहे...",
+ "ext-uls-compact-link-count": "{{PLURAL:$1|एक अधिक|$1 अधिक}}",
+ "prefs-languages": "भाषा",
+ "ext-uls-compact-language-links-preference": "आपल्याशी संबंधित भाषांची, आटोपशीर भाषा यादी वापरा."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/mt.json b/MLEB/UniversalLanguageSelector/i18n/mt.json
index 94488478..8443a7fe 100644
--- a/MLEB/UniversalLanguageSelector/i18n/mt.json
+++ b/MLEB/UniversalLanguageSelector/i18n/mt.json
@@ -1,9 +1,11 @@
{
"@metadata": {
"authors": [
- "Chrisportelli"
+ "Chrisportelli",
+ "Xð"
]
},
+ "uls-plang-title-languages": "Lingwi",
"ext-uls-select-language-settings-icon-tooltip": "Konfigurazzjoni tal-lingwa",
"ext-uls-undo-language-tooltip-text": "Il-lingwa nbidlet minn $1",
"ext-uls-display-settings-title": "Konfigurazzjoni tal-viżwal",
diff --git a/MLEB/UniversalLanguageSelector/i18n/nap.json b/MLEB/UniversalLanguageSelector/i18n/nap.json
index f8217b75..2b476f81 100644
--- a/MLEB/UniversalLanguageSelector/i18n/nap.json
+++ b/MLEB/UniversalLanguageSelector/i18n/nap.json
@@ -4,7 +4,8 @@
"Chelin",
"C.R.",
"Nemo bis",
- "Candalua"
+ "Candalua",
+ "Ruthven"
]
},
"uls-desc": "Permettesse l'utente divierze mode 'e scegliere na lengua e cagnà mpustaziune 'e sta lengua",
@@ -21,7 +22,7 @@
"ext-uls-display-settings-desc": "Sceglie lengua ausata pe' menu e fonte.",
"ext-uls-language-settings-title": "Mpustaziune 'e lengua",
"ext-uls-language-settings-apply": "Appreca mpustaziune",
- "ext-uls-language-settings-cancel": "Canciella",
+ "ext-uls-language-settings-cancel": "Scancella",
"ext-uls-language-buttons-help": "Cagna 'a lengua d' 'e menu. 'A lengua 'e cuntenute nun sarrà cagnata.",
"ext-uls-display-settings-font-settings": "Mpustaziune 'e carattere",
"ext-uls-display-settings-ui-language": "Lengua 'e visualizzazione",
@@ -53,19 +54,9 @@
"ext-uls-input-disable-info": "'E strumiente 'e scrittura-ngresso so' state stutate",
"ext-uls-input-settings-noime": "Nun ce stanno metode d'ingresso pe' sta lengua.",
"ext-uls-input-disable-notification": "'E strumiente 'e scrittura so' state stutate",
- "ext-uls-input-disable-notification-undo": "Annulla",
+ "ext-uls-input-disable-notification-undo": "Sfàjere",
"ext-uls-input-disable-notification-info-personal": "Vuje putite appiccià 'e strumiente 'e scrittura 'a ll'impostaziune 'e llengua.",
"ext-uls-input-disable-notification-info-interlanguage": "Vuje putite appiccià 'e tool dint'a qualsiasi mumento d' 'e preferenze 'e llengua aropp'a l'elenco 'e llengue",
"ext-uls-language-settings-applying": "Apprecanno...",
- "ext-uls-compact-link-count": "{{PLURAL:$1|N'ata|N'ati $1}}",
- "apihelp-languagesearch-description": "Ascìa pe' lengue dint'a qualunque script.",
- "apihelp-languagesearch-param-search": "Ascìa stringa.",
- "apihelp-languagesearch-param-typos": "Nummero errure 'e battitura ca fossero premmesse dint'a na stringa 'e cerca",
- "apihelp-languagesearch-example-1": "Circa \"Te\"",
- "apihelp-languagesearch-example-2": "Circa \"ഫി\"",
- "apihelp-languagesearch-example-3": "Cerca \"ഫി\", cunzentenno 'e fà n'errore 'e battitura",
- "apihelp-ulslocalization-description": "Arrepiglia 'a localizzaziona d' 'o ULS dint'a llengua data.",
- "apihelp-ulslocalization-param-language": "Codece lengua.",
- "apihelp-ulslocalization-example-1": "Arrepiglia 'a localizzaziona Tamil",
- "apihelp-ulslocalization-example-2": "Arrepiglia 'a localizzaziona Hindi"
+ "ext-uls-compact-link-count": "{{PLURAL:$1|N'ata|N'ati $1}}"
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/nb.json b/MLEB/UniversalLanguageSelector/i18n/nb.json
index d2056f84..f0b6998c 100644
--- a/MLEB/UniversalLanguageSelector/i18n/nb.json
+++ b/MLEB/UniversalLanguageSelector/i18n/nb.json
@@ -1,13 +1,16 @@
{
"@metadata": {
"authors": [
- "Danmichaelo"
+ "Danmichaelo",
+ "Jeblad",
+ "Jon Harald Søby"
]
},
"uls-desc": "Gir brukeren flere måter å velge språk på og endre språkinnstillinger",
"uls-plang-title-languages": "Språk",
"ext-uls-select-language-settings-icon-tooltip": "Språkinnstillinger",
"ext-uls-undo-language-tooltip-text": "Språk endret fra $1",
+ "ext-uls-undo-language-tooltip-text-local": "Språk endret på denne wikien. Sjekk de [[Special:GlobalPreferences|globale innstillingene]] dine for å endre språk på alle wikier.",
"ext-uls-language-settings-preferences-link": "Flere språkinnstillinger",
"uls-betafeature-label": "Kompakte språklenker",
"uls-betafeature-desc": "Vis en kortere utgave av språklisten, med kun språk som er relevante for deg.",
@@ -23,7 +26,7 @@
"ext-uls-display-settings-font-settings": "Skrifttypeinnstillinger",
"ext-uls-display-settings-ui-language": "Visningsspråk",
"ext-uls-display-settings-anon-label": "Visningsspråk:",
- "ext-uls-display-settings-anon-same-as-content": "$1 (samme som for innhold)",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (samme som innholdet)",
"ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Logg inn]] for å velge et annet språk for brukergrensesnittet.",
"ext-uls-webfonts-settings-title": "Last ned skrifttyper når det er nødvendig",
"ext-uls-webfonts-settings-info": "Last ned manglende skrifttyper automatisk og tillat valg av foretrukne skrifttyper.",
@@ -45,14 +48,18 @@
"jquery-ime-other-languages": "Andre språk",
"jquery-ime-disable-text": "Bruk standardtastatur",
"jquery-ime-help": "Hjelp",
- "ext-uls-input-disable": "Skru av inndataverktøy",
- "ext-uls-input-enable": "Skru på inndataverktøy",
- "ext-uls-input-disable-info": "Inndataverktøy er avskrudd.",
+ "ext-uls-input-disable": "Slå av inndataverktøy",
+ "ext-uls-input-enable": "Slå på inndataverktøy",
+ "ext-uls-input-disable-info": "Inndataverktøy er avslått.",
"ext-uls-input-settings-noime": "Ingen inndatametoder er tilgjengelige for dette språket.",
- "ext-uls-input-disable-notification": "Inndataverktøy er avskrudd",
+ "ext-uls-input-disable-notification": "Inndataverktøy er avslått",
"ext-uls-input-disable-notification-undo": "Angre",
- "ext-uls-input-disable-notification-info-personal": "Du kan når som helst skru på inndataverktøy fra språkinnstillingene.",
- "ext-uls-input-disable-notification-info-interlanguage": "Du kan når som helst skru på inndataverktøy fra språkinnstillingene ved siden av språklisten.",
+ "ext-uls-input-disable-notification-info-personal": "Du kan når som helst slå på inndataverktøy fra språkinnstillingene.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Du kan når som helst slå på inndataverktøy fra språkinnstillingene ved siden av språklisten.",
"ext-uls-language-settings-applying": "Tar i bruk…",
- "ext-uls-compact-link-count": "{{PLURAL:$1|Ett språk til|$1 språk til}}"
+ "ext-uls-compact-link-count": "{{PLURAL:$1|En til|$1 flere}}",
+ "ext-uls-compact-link-info": "Alle språk (innledende utvalg fra felles valg av deg og andre)",
+ "prefs-languages": "Språk",
+ "ext-uls-compact-language-links-preference": "Bruk [[$1|kompakte språklenker]] med språk som er relevante for deg.",
+ "ext-uls-compact-no-results": "Denne siden er ikke tilgjengelig på språket du søkte på."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/nds-nl.json b/MLEB/UniversalLanguageSelector/i18n/nds-nl.json
index 43f1dfd0..5be45243 100644
--- a/MLEB/UniversalLanguageSelector/i18n/nds-nl.json
+++ b/MLEB/UniversalLanguageSelector/i18n/nds-nl.json
@@ -4,6 +4,7 @@
"Servien"
]
},
+ "uls-plang-title-languages": "Talen",
"ext-uls-select-language-settings-icon-tooltip": "Taalinstellingen",
"ext-uls-undo-language-tooltip-text": "Taal ewiezigd van $1",
"ext-uls-language-settings-preferences-link": "Meer taalinstellingen",
@@ -17,12 +18,15 @@
"ext-uls-language-settings-title": "Taalinstellingen",
"ext-uls-language-settings-apply": "Laot kulen!",
"ext-uls-language-settings-cancel": "Aofbreken",
- "ext-uls-language-buttons-help": "Wiezig de taal van menu's. De taal van de inhoud wörden niet ewiezigd.",
+ "ext-uls-language-buttons-help": "Wiezig de taal van menu's. De taal van de inhoud wördt niet ewiezigd.",
"ext-uls-display-settings-font-settings": "Lettertype-instellingen",
"ext-uls-display-settings-ui-language": "Taal veur weergave",
"ext-uls-display-settings-anon-label": "Weergavetaal:",
"ext-uls-display-settings-anon-same-as-content": "$1 (t zelfde as de inhoud)",
"ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Meld je eigen an]] um n aandere taal veur menu's te kiezen.",
+ "ext-uls-webfonts-settings-title": "Lettertypes inlaojen as t neudig is",
+ "ext-uls-webfonts-settings-info": "Ontbrekende lettertypes automaties inlaojen en de keuze van veurkeurslettertypes meugelik maken.",
+ "ext-uls-webfonts-settings-info-link": "Meer informasie",
"ext-uls-webfonts-select-for": "Lettertype kiezen veur $1",
"ext-uls-webfonts-select-for-ui-info": "Lettertype veur de gebrukersumgeving",
"ext-uls-webfonts-select-for-content-info": "Lettertype veur de inhoud",
@@ -32,7 +36,7 @@
"ext-uls-input-settings-title-short": "Invoer",
"ext-uls-input-settings-desc": "Schrieven in n aandere taal?",
"ext-uls-input-settings-ime-settings": "Invoermethoden veur $1",
- "ext-uls-input-settings-ui-language": "Taal waorin eschreven wörden",
+ "ext-uls-input-settings-ui-language": "Taal waorin eschreven wördt",
"ext-uls-back-to-input-settings": "Weerumme naor invoerinstellingen",
"ext-uls-ime-help": "Hoe um te gebruken",
"ext-uls-disable-input-method": "Standardtoetsebord gebruken",
@@ -47,5 +51,10 @@
"ext-uls-input-disable-notification": "Invoermethoden bin uutezet",
"ext-uls-input-disable-notification-undo": "Weerummedreien",
"ext-uls-input-disable-notification-info-personal": "Je kunnen de invoermethoden weer anzetten via de taalinstellingen.",
- "ext-uls-input-disable-notification-info-interlanguage": "Je kunnen de invoermethoden weer anzetten via de taalinstellingen naost de lieste mit talen."
+ "ext-uls-input-disable-notification-info-interlanguage": "Je kunnen de invoermethoden weer anzetten via de taalinstellingen naost de lieste mit talen.",
+ "ext-uls-language-settings-applying": "Toepassen...",
+ "ext-uls-compact-link-count": "{{PLURAL:$1|Noch ene|Noch $1}}",
+ "ext-uls-compact-link-info": "Alle talen (eerste seleksie van algemene keuzes emaakt deur joe en aanderen)",
+ "prefs-languages": "Talen",
+ "ext-uls-compact-language-links-preference": "n Kompakte talenlieste gebruken, mit de talen waor jie wat an hebben."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/ne.json b/MLEB/UniversalLanguageSelector/i18n/ne.json
index b4f003c7..78d45974 100644
--- a/MLEB/UniversalLanguageSelector/i18n/ne.json
+++ b/MLEB/UniversalLanguageSelector/i18n/ne.json
@@ -1,9 +1,11 @@
{
"@metadata": {
"authors": [
- "NehalDaveND"
+ "NehalDaveND",
+ "Xð"
]
},
+ "uls-plang-title-languages": "भाषाहरू",
"ext-uls-display-settings-language-tab": "भाषा",
"ext-uls-display-settings-fonts-tab": "फन्ट",
"ext-uls-display-settings-title-short": "देखाउनु",
diff --git a/MLEB/UniversalLanguageSelector/i18n/nl.json b/MLEB/UniversalLanguageSelector/i18n/nl.json
index 54482bc3..9e85f001 100644
--- a/MLEB/UniversalLanguageSelector/i18n/nl.json
+++ b/MLEB/UniversalLanguageSelector/i18n/nl.json
@@ -7,17 +7,23 @@
"Arent",
"SPQRobin",
"Sjoerddebruin",
- "Macofe"
+ "Macofe",
+ "Robin van der Vliet",
+ "McDutchie",
+ "Mainframe98",
+ "Dinosaur918",
+ "Mar(c)",
+ "Amire80"
]
},
- "uls-desc": "Biedt gebruikers verschillende mogelijkheden om een taal te kiezen en bijbehorende instellingen aan te passen",
+ "uls-desc": "Biedt de gebruiker verschillende manieren om een taal te selecten en de taalinstellingen aan te passen",
"uls-plang-title-languages": "Talen",
"ext-uls-select-language-settings-icon-tooltip": "Taalinstellingen",
"ext-uls-undo-language-tooltip-text": "Taal gewijzigd van $1",
"ext-uls-language-settings-preferences-link": "Meer taalinstellingen",
"uls-betafeature-label": "Compacte taalkoppelingen",
- "uls-betafeature-desc": "Een kortere versie van de talenlijst weergeven, met alleen de talen die het meest relevant zijn voor u.",
- "ext-uls-display-settings-title": "Weergaveinstellingen",
+ "uls-betafeature-desc": "Een kortere versie van de talenlijst weergeven, met alleen de talen die voor u relevanter zijn.",
+ "ext-uls-display-settings-title": "Weergave-instellingen",
"ext-uls-display-settings-language-tab": "Taal",
"ext-uls-display-settings-fonts-tab": "Lettertypen",
"ext-uls-display-settings-title-short": "Weergave",
@@ -25,27 +31,27 @@
"ext-uls-language-settings-title": "Taalinstellingen",
"ext-uls-language-settings-apply": "Instellingen toepassen",
"ext-uls-language-settings-cancel": "Annuleren",
- "ext-uls-language-buttons-help": "Wijzig de taal van menu's. De taal van de inhoud wordt niet gewijzigd.",
- "ext-uls-display-settings-font-settings": "Lettertypeinstellingen",
+ "ext-uls-language-buttons-help": "Wijzig de taal van de menu's. De taal van de inhoud wordt niet gewijzigd.",
+ "ext-uls-display-settings-font-settings": "Lettertype-instellingen",
"ext-uls-display-settings-ui-language": "Taal voor weergave",
- "ext-uls-display-settings-anon-label": "Weergavetaal:",
+ "ext-uls-display-settings-anon-label": "Taal voor weergave:",
"ext-uls-display-settings-anon-same-as-content": "$1 (zelfde als inhoud)",
"ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Meld u aan]] om een andere taal voor menu's te kiezen.",
- "ext-uls-webfonts-settings-title": "Lettertypes downloaden indien nodig",
+ "ext-uls-webfonts-settings-title": "Lettertypen downloaden indien nodig",
"ext-uls-webfonts-settings-info": "Ontbrekende lettertypen automatisch downloaden en het selecteren van voorkeurslettertypen mogelijk maken.",
"ext-uls-webfonts-settings-info-link": "Meer informatie",
"ext-uls-webfonts-select-for": "Lettertype selecteren voor $1",
"ext-uls-webfonts-select-for-ui-info": "Lettertype voor gebruikersinterface",
"ext-uls-webfonts-select-for-content-info": "Lettertype voor inhoud",
"ext-uls-webfonts-system-font": "Systeemlettertype",
- "ext-uls-back-to-display-settings": "Terug naar weergaveinstellingen",
+ "ext-uls-back-to-display-settings": "Terug naar weergave-instellingen",
"ext-uls-input-settings-title": "Invoerinstellingen",
"ext-uls-input-settings-title-short": "Invoer",
"ext-uls-input-settings-desc": "Schrijven in een andere taal?",
"ext-uls-input-settings-ime-settings": "Invoermethoden voor $1",
"ext-uls-input-settings-ui-language": "Taal voor invoer",
"ext-uls-back-to-input-settings": "Terug naar invoerinstellingen",
- "ext-uls-ime-help": "Hoe gebruiken",
+ "ext-uls-ime-help": "Hoe te gebruiken",
"ext-uls-disable-input-method": "Standaard toetsenbord gebruiken",
"ext-uls-input-settings-more-languages-tooltip": "Meer talen",
"jquery-ime-other-languages": "Andere talen",
@@ -54,12 +60,15 @@
"ext-uls-input-disable": "Invoermethoden uitschakelen",
"ext-uls-input-enable": "Invoermethoden inschakelen",
"ext-uls-input-disable-info": "Invoermethoden zijn uitgeschakeld.",
- "ext-uls-input-settings-noime": "Er zijn geen invoermethoden beschikbaar voor deze taal.",
+ "ext-uls-input-settings-noime": "Er zijn geen invoermethoden voor deze taal beschikbaar.",
"ext-uls-input-disable-notification": "Invoermethoden zijn uitgeschakeld",
"ext-uls-input-disable-notification-undo": "Ongedaan maken",
- "ext-uls-input-disable-notification-info-personal": "U kunt de invoermethoden weer inschakelen via de taalinstellingen.",
- "ext-uls-input-disable-notification-info-interlanguage": "U kunt de invoermethoden weer inschakelen via de taalinstellingen naast de lijst met talen.",
+ "ext-uls-input-disable-notification-info-personal": "U kunt de invoermethoden op elk moment via de taalinstellingen inschakelen.",
+ "ext-uls-input-disable-notification-info-interlanguage": "U kunt de invoermethoden op elk moment via de taalinstellingen (naast de talenlijst) inschakelen.",
"ext-uls-language-settings-applying": "Toepassen...",
- "ext-uls-compact-link-count": "{{PLURAL:$1|Eén meer|$1 meer}}",
- "apihelp-ulslocalization-param-language": "Taalcode."
+ "ext-uls-compact-link-count": "{{PLURAL:$1|Nog één|Nog $1}}",
+ "ext-uls-compact-link-info": "Alle talen (eerste selectie op basis van keuzes van u en anderen)",
+ "prefs-languages": "Talen",
+ "ext-uls-compact-language-links-preference": "Een [[$1|compacte talenlijst]] gebruiken, met voor u relevante talen.",
+ "ext-uls-compact-no-results": "Deze pagina is niet beschikbaar in de taal waarin u zocht."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/nn.json b/MLEB/UniversalLanguageSelector/i18n/nn.json
index 1c49da9a..a39d6655 100644
--- a/MLEB/UniversalLanguageSelector/i18n/nn.json
+++ b/MLEB/UniversalLanguageSelector/i18n/nn.json
@@ -1,7 +1,8 @@
{
"@metadata": {
"authors": [
- "Njardarlogar"
+ "Njardarlogar",
+ "Jon Harald Søby"
]
},
"uls-desc": "Gjev brukaren fleire måtar å velja eit språk på og dessutan å endra språkinnstillingane",
@@ -9,6 +10,8 @@
"ext-uls-select-language-settings-icon-tooltip": "Språkinnstillingar",
"ext-uls-undo-language-tooltip-text": "Språk endra frå $1",
"ext-uls-language-settings-preferences-link": "Fleire språkinnstillingar",
+ "uls-betafeature-label": "Kompakte språklenkjer",
+ "uls-betafeature-desc": "Vis ein kortare versjon av språklista, med berre dei språka som er mest relevante for deg.",
"ext-uls-display-settings-title": "Visingsinnstillingar",
"ext-uls-display-settings-language-tab": "Språk",
"ext-uls-display-settings-fonts-tab": "Skrifttypar",
@@ -21,12 +24,12 @@
"ext-uls-display-settings-font-settings": "Skrifttypeinnstillingar",
"ext-uls-display-settings-ui-language": "Visingsspråk",
"ext-uls-display-settings-anon-label": "Visingsspråk:",
- "ext-uls-display-settings-anon-same-as-content": "Nynorsk (same som innhaldet)",
- "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Skriv deg inn]] for å velja eit anna språk for menyane.",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (same som innhaldet)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Logg inn]] for å velja eit anna språk for menyane.",
"ext-uls-webfonts-settings-title": "Last ned skrifttypar når det tarvst",
- "ext-uls-webfonts-settings-info": "Internettskrifttypar vil verta lasta ned for å visa tekst i særskilde skriftsystem.",
+ "ext-uls-webfonts-settings-info": "Last ned manglande skrifttypar automatisk og tillat veljing av føretrekte skrifttypar.",
"ext-uls-webfonts-settings-info-link": "Meir informasjon",
- "ext-uls-webfonts-select-for": "Vel skrifttype for",
+ "ext-uls-webfonts-select-for": "Vel skrifttype for $1",
"ext-uls-webfonts-select-for-ui-info": "Skrifttype nytta for brukargrensesnittet",
"ext-uls-webfonts-select-for-content-info": "Skrifttype nytta for innhaldet",
"ext-uls-webfonts-system-font": "Systemskrifttype",
@@ -50,5 +53,11 @@
"ext-uls-input-disable-notification": "Inndataverktøya vart slegne av",
"ext-uls-input-disable-notification-undo": "Angra",
"ext-uls-input-disable-notification-info-personal": "Du kan slå på inndataverktøya kva tid som helst frå språkinnstillingane.",
- "ext-uls-input-disable-notification-info-interlanguage": "Du kan slå på inndataverktøya kva tid som helst frå språkinnstillingane ved sida av språklista."
+ "ext-uls-input-disable-notification-info-interlanguage": "Du kan slå på inndataverktøya kva tid som helst frå språkinnstillingane ved sida av språklista.",
+ "ext-uls-language-settings-applying": "Tek i bruk …",
+ "ext-uls-compact-link-count": "{{PLURAL:$1|Eitt til|$1 til}}",
+ "ext-uls-compact-link-info": "Alle språk (utvalet i mergen er basert på vanlege val av deg og andre)",
+ "prefs-languages": "Språk",
+ "ext-uls-compact-language-links-preference": "Bruk ei [[$1|kompakt språkliste]] med språk som er relevante for deg.",
+ "ext-uls-compact-no-results": "Denne sida er ikkje tilgjengeleg på språket du søkte etter."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/oc.json b/MLEB/UniversalLanguageSelector/i18n/oc.json
index ceae7273..87136203 100644
--- a/MLEB/UniversalLanguageSelector/i18n/oc.json
+++ b/MLEB/UniversalLanguageSelector/i18n/oc.json
@@ -6,24 +6,33 @@
]
},
"uls-desc": "Dona a l’utilizaire mantun biais de seleccionar una lenga e d’ajustar los paramètres de lenga",
+ "uls-plang-title-languages": "Lengas",
+ "ext-uls-select-language-settings-icon-tooltip": "Paramètres de lenga",
+ "ext-uls-language-settings-preferences-link": "Mai de paramètres de lenga",
"uls-betafeature-label": "Compactar los ligams de lenga",
"uls-betafeature-desc": "Afichar una version abreujada de la lista de las lengas, amb sonque las lengas que vos interèssan lo mai.",
"ext-uls-display-settings-title": "Afichar los paramètres",
"ext-uls-display-settings-language-tab": "Lenga",
"ext-uls-display-settings-fonts-tab": "Poliças de caractèrs",
"ext-uls-display-settings-title-short": "Afichatge",
+ "ext-uls-display-settings-desc": "Definir la lenga utilizada pels menús e las poliças de caractèrs.",
"ext-uls-language-settings-title": "Paramètres de lenga",
"ext-uls-language-settings-apply": "Aplicar los paramètres",
"ext-uls-language-settings-cancel": "Anullar",
+ "ext-uls-language-buttons-help": "Modificar la lenga dels menús. La lenga del contengut serà pas concernida.",
"ext-uls-display-settings-font-settings": "Paramètres de poliça",
"ext-uls-display-settings-ui-language": "Lenga d'afichatge",
"ext-uls-display-settings-anon-label": "Lenga d'afichatge :",
"ext-uls-display-settings-anon-same-as-content": "$1 (coma lo contengut)",
+ "ext-uls-webfonts-settings-info-link": "Mai d'informacions",
+ "ext-uls-input-settings-desc": "Escriure dins una autra lenga ?",
"ext-uls-input-settings-ui-language": "Lenga utilizada per escriure",
"ext-uls-ime-help": "Mòde d’emplec",
"ext-uls-disable-input-method": "Utilizar un clavièr local",
"ext-uls-input-settings-more-languages-tooltip": "Mai de lengas",
"ext-uls-input-disable-notification-undo": "Anullar",
"ext-uls-language-settings-applying": "Mesa en òbra en cors…",
- "ext-uls-compact-link-count": "{{PLURAL:$1|Una lenga mai|$1 lengas mai}}"
+ "ext-uls-compact-link-count": "{{PLURAL:$1|Una lenga mai|$1 lengas mai}}",
+ "prefs-languages": "Lengas",
+ "ext-uls-compact-language-links-preference": "Utilizar una lista de lengas compacta, amb las lengas pertinentas per vos."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/olo.json b/MLEB/UniversalLanguageSelector/i18n/olo.json
index 25a6a45e..2abea2e6 100644
--- a/MLEB/UniversalLanguageSelector/i18n/olo.json
+++ b/MLEB/UniversalLanguageSelector/i18n/olo.json
@@ -8,6 +8,5 @@
"ext-uls-select-language-settings-icon-tooltip": "Kieliazetukset",
"ext-uls-undo-language-tooltip-text": "Kieli vaihtettu kielespäi $1",
"ext-uls-display-settings-language-tab": "Kieli",
- "ext-uls-ime-help": "Kui käyttiä",
- "apihelp-ulslocalization-param-language": "Kielikoudu."
+ "ext-uls-ime-help": "Kui käyttiä"
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/or.json b/MLEB/UniversalLanguageSelector/i18n/or.json
index 3096a1d1..b9994e8a 100644
--- a/MLEB/UniversalLanguageSelector/i18n/or.json
+++ b/MLEB/UniversalLanguageSelector/i18n/or.json
@@ -2,9 +2,11 @@
"@metadata": {
"authors": [
"Psubhashish",
- "Nistha.aslp"
+ "Nistha.aslp",
+ "Xð"
]
},
+ "uls-plang-title-languages": "ଭାଷା",
"ext-uls-select-language-settings-icon-tooltip": "ଭାଷା ସେଟିଙ୍ଗ",
"ext-uls-undo-language-tooltip-text": "$1ରୁ ଭାଷା ବଦଳିଗଲା",
"ext-uls-language-settings-preferences-link": "ଅଧିକ ଭାଷା ସେଟିଙ୍ଗ",
@@ -16,7 +18,7 @@
"ext-uls-language-settings-title": "ଭାଷା ସେଟିଙ୍ଗ",
"ext-uls-language-settings-apply": "ନୂଆ ସେଟିଙ୍ଗ ସଚଳ କରନ୍ତୁ",
"ext-uls-language-settings-cancel": "ନାକଚ",
- "ext-uls-language-buttons-help": "ମେନୁର ଭାଷା ବଦଳାନ୍ତୁ । ବିଷ‌ୟବସ୍ତୁର ଭାଷା ପ୍ରଭାବିତ ହେବନାହିଁ ।",
+ "ext-uls-language-buttons-help": "ସୂଚୀର ଭାଷା ବଦଳାନ୍ତୁ । ବିଷ‌ୟବସ୍ତୁର ଭାଷା ପ୍ରଭାବିତ ହେବନାହିଁ ।",
"ext-uls-display-settings-font-settings": "ଫଣ୍ଟ ସେଟିଙ୍ଗ",
"ext-uls-display-settings-ui-language": "ଦେଖଣା ଭାଷା",
"ext-uls-display-settings-anon-label": "ଦେଖଣା ଭାଷା:",
diff --git a/MLEB/UniversalLanguageSelector/i18n/os.json b/MLEB/UniversalLanguageSelector/i18n/os.json
index 2d9d907d..5d41821c 100644
--- a/MLEB/UniversalLanguageSelector/i18n/os.json
+++ b/MLEB/UniversalLanguageSelector/i18n/os.json
@@ -3,10 +3,12 @@
"authors": [
"Bouron",
"Xaris333",
- "Amikeco"
+ "Amikeco",
+ "Xð"
]
},
"uls-desc": "Архайæгæн дæтты цалдæр фадат æвзаг равзарынæн æмæ йын уаг сæвæрынæн",
+ "uls-plang-title-languages": "Æвзæгтæ",
"ext-uls-select-language-settings-icon-tooltip": "Æвзаджы уагæвæрдтæ",
"ext-uls-undo-language-tooltip-text": "Ивд æвзаг у $1",
"ext-uls-display-settings-title": "Æвдисыны уаг",
diff --git a/MLEB/UniversalLanguageSelector/i18n/pa.json b/MLEB/UniversalLanguageSelector/i18n/pa.json
index 5dce9581..b099f986 100644
--- a/MLEB/UniversalLanguageSelector/i18n/pa.json
+++ b/MLEB/UniversalLanguageSelector/i18n/pa.json
@@ -2,7 +2,8 @@
"@metadata": {
"authors": [
"Babanwalia",
- "Satdeep gill"
+ "Satdeep gill",
+ "Jimidar"
]
},
"uls-desc": "ਵਰਤੋਂਕਾਰ ਨੂੰ ਭਾਸ਼ਾਂ ਚੁਣਨ ਅਤੇ ਭਾਸ਼ਾ ਸੈਟਿੰਗਾਂ ਠੀਕ ਕਰਨ ਲਈ ਕਈ ਤਰੀਕੇ ਸੌਂਪਦਾ ਹੈ",
@@ -48,5 +49,5 @@
"ext-uls-input-disable-notification-undo": "ਅਣਕਿੱਤਾ ਕਰੋ",
"ext-uls-input-disable-notification-info-personal": "ਤੁਸੀਂ ਭਾਸ਼ਾ ਸੈਟਿੰਗਾਂ ਤੋਂ ਕਿਸੇ ਵੀ ਵਕਤ ਇਨਪੁਟ ਜ਼ਰੀਏ ਚਾਲੂ ਕਰ ਸਕਦੇ ਹੋ।",
"ext-uls-input-disable-notification-info-interlanguage": "ਤੁਸੀਂ ਭਾਸ਼ਾ ਸੂਚੀ ਦੇ ਅੱਗੇ ਦਿੱਤੀਆਂ ਗਈਆਂ ਭਾਸ਼ਾ ਸੈਟਿੰਗਾਂ ਤੋਂ ਕਿਸੇ ਵੀ ਵਕਤ ਇਨਪੁਟ ਜ਼ਰੀਏ ਚਾਲੂ ਕਰ ਸਕਦੇ ਹੋ।",
- "apihelp-ulslocalization-param-language": "ਭਾਸ਼ਾ ਕੋਡ"
+ "prefs-languages": "ਬੋਲੀਆਂ"
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/pl.json b/MLEB/UniversalLanguageSelector/i18n/pl.json
index c0d2413e..f893b2d5 100644
--- a/MLEB/UniversalLanguageSelector/i18n/pl.json
+++ b/MLEB/UniversalLanguageSelector/i18n/pl.json
@@ -7,13 +7,16 @@
"Chrumps",
"BeginaFelicysym",
"Nemo bis",
- "Peter Bowman"
+ "Peter Bowman",
+ "Woytecr",
+ "Sethakill"
]
},
"uls-desc": "Daje użytkownikowi kilka sposobów, aby wybrać język i dostosować ustawienia języka",
"uls-plang-title-languages": "Języki",
"ext-uls-select-language-settings-icon-tooltip": "Ustawienia języka",
"ext-uls-undo-language-tooltip-text": "Poprzedni język: $1",
+ "ext-uls-undo-language-tooltip-text-local": "Język zmieniony dla tej wiki. Sprawdź [[Special:GlobalPreferences|globalne preferencje]], aby zmienić język dla wszystkich wiki.",
"ext-uls-language-settings-preferences-link": "Więcej ustawień języka",
"uls-betafeature-label": "Skrócona wersja linków interwiki",
"uls-betafeature-desc": "Pokazuj krótszą wersję listy odnośników interwiki, zawierającą tylko języki, które są istotne dla Ciebie.",
@@ -60,7 +63,7 @@
"ext-uls-input-disable-notification-info-personal": "Możesz w dowolnym momencie włączyć narzędzia wprowadzania tekstu w ustawieniach języka.",
"ext-uls-input-disable-notification-info-interlanguage": "Możesz w dowolnym momencie włączyć narzędzia wprowadzania tekstu w ustawieniach języka, obok listy języków.",
"ext-uls-language-settings-applying": "Realizacja w toku...",
- "ext-uls-compact-link-count": "{{PLURAL:$1|Kolejny język|$1 kolejne języki|$1 kolejnych języków}}",
- "apihelp-languagesearch-param-search": "Wyszukaj tekst.",
- "apihelp-ulslocalization-param-language": "Kod języka."
+ "ext-uls-compact-link-count": "{{PLURAL:$1|Jeden więcej|$1 więcej}}",
+ "prefs-languages": "Języki",
+ "ext-uls-compact-language-links-preference": "Używaj [[$1|kompaktowej listy języków]] z językami najbardziej Ci odpowiadającymi."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/ps.json b/MLEB/UniversalLanguageSelector/i18n/ps.json
index 7a01a170..97419f24 100644
--- a/MLEB/UniversalLanguageSelector/i18n/ps.json
+++ b/MLEB/UniversalLanguageSelector/i18n/ps.json
@@ -1,7 +1,8 @@
{
"@metadata": {
"authors": [
- "Ahmed-Najib-Biabani-Ibrahimkhel"
+ "Ahmed-Najib-Biabani-Ibrahimkhel",
+ "Baloch Khan"
]
},
"uls-plang-title-languages": "ژبې",
@@ -38,6 +39,7 @@
"ext-uls-input-settings-ime-settings": "د $1 لپاره د ننوتنې چلندلارې",
"ext-uls-input-settings-ui-language": "د ليکلو لپاره کارېدونکې ژبه",
"ext-uls-back-to-input-settings": "د ننوتنې امستنو ته ورگرځېدل",
+ "ext-uls-ime-help": "څنګه کارول کیږي",
"ext-uls-disable-input-method": "ولسي ليکدړه کارول",
"ext-uls-input-settings-more-languages-tooltip": "نورې ژبې",
"jquery-ime-other-languages": "نورې ژبې",
@@ -51,5 +53,7 @@
"ext-uls-input-disable-notification-undo": "ناکړل",
"ext-uls-input-disable-notification-info-personal": "تاسې د ننوتلو اوزارونه هر وخت د ژبې امستنو څخه چارنولی شی.",
"ext-uls-input-disable-notification-info-interlanguage": "تاسې د ننوتلو اوزارونه هر وخت، د ژبې لړليک څنگ ته، د ژب-امستنو څخه چارنولی شی.",
- "apihelp-ulslocalization-param-language": "د ژبې کوډ."
+ "ext-uls-language-settings-applying": "غوښتنه کيږی...",
+ "ext-uls-compact-link-count": "{{PLURAL:$1|يوه بله ژبه|$1 نورې ژبي}}",
+ "prefs-languages": "ژبې"
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/pt-br.json b/MLEB/UniversalLanguageSelector/i18n/pt-br.json
index 2ea48383..1e4d2ae9 100644
--- a/MLEB/UniversalLanguageSelector/i18n/pt-br.json
+++ b/MLEB/UniversalLanguageSelector/i18n/pt-br.json
@@ -5,15 +5,21 @@
"Luckas",
"Caio1478",
"Helder.wiki",
- "Dianakc"
+ "Dianakc",
+ "Opraco",
+ "Felipe L. Ewald",
+ "Eduardo Addad de Oliveira",
+ "TheEduGobi"
]
},
"uls-desc": "Oferece ao usuário várias maneiras para selecionar um idioma e ajustar as configurações de idioma",
"uls-plang-title-languages": "Idiomas",
"ext-uls-select-language-settings-icon-tooltip": "Configurações de idioma",
"ext-uls-undo-language-tooltip-text": "Idioma foi mudado de $1",
+ "ext-uls-undo-language-tooltip-text-local": "Idioma alterado para este wiki. Verifique suas [[Special:GlobalPreferences|preferências globais]] para mudar de idioma para todas as wikis.",
"ext-uls-language-settings-preferences-link": "Mais configurações de idioma",
"uls-betafeature-label": "Links de idiomas compactados",
+ "uls-betafeature-desc": "Mostre uma versão mais curta da lista de idiomas, com apenas os idiomas que são mais relevantes para você.",
"ext-uls-display-settings-title": "Exibir configurações",
"ext-uls-display-settings-language-tab": "Idioma",
"ext-uls-display-settings-fonts-tab": "Fontes",
@@ -57,8 +63,9 @@
"ext-uls-input-disable-notification-info-personal": "Você pode habilitar as ferramentas de entrada de texto a qualquer momento a partir das configurações de idioma.",
"ext-uls-input-disable-notification-info-interlanguage": "Você pode habilitar as ferramentas de entrada de texto a qualquer momento a partir das configurações de idioma próximo da lista de idiomas.",
"ext-uls-language-settings-applying": "Aplicando…",
- "apihelp-languagesearch-param-search": "Pesquisar string.",
- "apihelp-languagesearch-example-1": "Pesquisar por \"Te\"",
- "apihelp-languagesearch-example-2": "Pesquisar por \"ഫി\"",
- "apihelp-languagesearch-example-3": "Pesquisar por \"ഫി\", permitindo um erro ortográfico"
+ "ext-uls-compact-link-count": "{{PLURAL:$1|Mais um|$1mais}}",
+ "ext-uls-compact-link-info": "Todos os idiomas (seleção inicial de escolhas comuns por você e outros)",
+ "prefs-languages": "Idiomas",
+ "ext-uls-compact-language-links-preference": "Usar uma [[$1|lista de idiomas compactos]], com idiomas relevantes para você.",
+ "ext-uls-compact-no-results": "Esta página não está disponível no idioma que você pesquisou."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/pt.json b/MLEB/UniversalLanguageSelector/i18n/pt.json
index c98777d8..d8d13268 100644
--- a/MLEB/UniversalLanguageSelector/i18n/pt.json
+++ b/MLEB/UniversalLanguageSelector/i18n/pt.json
@@ -7,59 +7,67 @@
"Vitorvicentevalente",
"Fúlvio",
555,
- "Macofe"
+ "Macofe",
+ "Opraco",
+ "Athena in Wonderland",
+ "Eduardo Addad de Oliveira",
+ "Ldacosta"
]
},
- "uls-desc": "Fornece ao utilizador várias maneiras de selecionar um idioma e ajustar suas configurações.",
- "uls-plang-title-languages": "Idiomas",
- "ext-uls-select-language-settings-icon-tooltip": "Configurações de idioma",
- "ext-uls-undo-language-tooltip-text": "Idioma alterado de $1",
- "ext-uls-language-settings-preferences-link": "Mais configurações de idioma",
- "uls-betafeature-label": "Ligações de idioma compactadas",
- "uls-betafeature-desc": "Mostra uma lista reduzida de idiomas, com apenas as línguas mais relevantes para si.",
- "ext-uls-display-settings-title": "Configurações de exibição",
- "ext-uls-display-settings-language-tab": "Idioma",
+ "uls-desc": "Fornece ao utilizador várias maneiras de selecionar uma língua e ajustar as definições de língua",
+ "uls-plang-title-languages": "Línguas",
+ "ext-uls-select-language-settings-icon-tooltip": "Definições de língua",
+ "ext-uls-undo-language-tooltip-text": "Língua alterada de $1",
+ "ext-uls-undo-language-tooltip-text-local": "A língua foi alterada nesta wiki. Use as [[Special:GlobalPreferences|preferências globais]] para alterar a língua de todas as wikis.",
+ "ext-uls-language-settings-preferences-link": "Mais definições de língua",
+ "uls-betafeature-label": "Hiperligações interlínguas compactas",
+ "uls-betafeature-desc": "Mostra uma lista reduzida de línguas, só com as línguas mais relevantes para si.",
+ "ext-uls-display-settings-title": "Definições de apresentação",
+ "ext-uls-display-settings-language-tab": "Língua",
"ext-uls-display-settings-fonts-tab": "Fontes",
- "ext-uls-display-settings-title-short": "Exibição",
- "ext-uls-display-settings-desc": "Configurar o idioma usado nos menus e fontes.",
- "ext-uls-language-settings-title": "Configurações de idioma",
- "ext-uls-language-settings-apply": "Aplicar configurações",
+ "ext-uls-display-settings-title-short": "Apresentação",
+ "ext-uls-display-settings-desc": "Definir a língua usada nos menus e as fontes.",
+ "ext-uls-language-settings-title": "Definições de língua",
+ "ext-uls-language-settings-apply": "Aplicar definições",
"ext-uls-language-settings-cancel": "Cancelar",
- "ext-uls-language-buttons-help": "Alterar o idioma dos menus. O idioma do conteúdo não será afectado.",
- "ext-uls-display-settings-font-settings": "Configurações de fonte",
- "ext-uls-display-settings-ui-language": "Idioma de exibição",
- "ext-uls-display-settings-anon-label": "Idioma de exibição:",
+ "ext-uls-language-buttons-help": "Alterar a língua dos menus. A língua do conteúdo não será afetada.",
+ "ext-uls-display-settings-font-settings": "Definições de fonte",
+ "ext-uls-display-settings-ui-language": "Língua de apresentação",
+ "ext-uls-display-settings-anon-label": "Língua da interface:",
"ext-uls-display-settings-anon-same-as-content": "$1 (igual ao conteúdo)",
- "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Iniciar sessão]] para seleccionar um idioma diferente para os menus.",
- "ext-uls-webfonts-settings-title": "Descarrega fontes quando necessário",
- "ext-uls-webfonts-settings-info": "Descarrega fontes em falta automaticamente e permite selecção de fontes preferenciais.",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Iniciar sessão]] para selecionar uma língua diferente nos menus.",
+ "ext-uls-webfonts-settings-title": "Descarregar fontes quando necessário",
+ "ext-uls-webfonts-settings-info": "Descarregar as fontes em falta automaticamente e permitir a seleção das fontes preferidas.",
"ext-uls-webfonts-settings-info-link": "Mais informação",
- "ext-uls-webfonts-select-for": "Seleccionar fonte para $1",
+ "ext-uls-webfonts-select-for": "Selecionar fonte para $1",
"ext-uls-webfonts-select-for-ui-info": "Fonte utilizada para a interface de utilizador",
"ext-uls-webfonts-select-for-content-info": "Fonte utilizada para o conteúdo",
"ext-uls-webfonts-system-font": "Fonte do sistema",
- "ext-uls-back-to-display-settings": "Voltar às configurações de exibição",
- "ext-uls-input-settings-title": "Configurações de entrada",
+ "ext-uls-back-to-display-settings": "Voltar às definições de apresentação",
+ "ext-uls-input-settings-title": "Definições de entrada",
"ext-uls-input-settings-title-short": "Entrada",
- "ext-uls-input-settings-desc": "Escreve num idioma diferente?",
+ "ext-uls-input-settings-desc": "Escreve numa língua diferente?",
"ext-uls-input-settings-ime-settings": "Métodos de entrada para $1",
- "ext-uls-input-settings-ui-language": "Idioma utilizado para escrever",
- "ext-uls-back-to-input-settings": "Voltar às configurações de entrada",
+ "ext-uls-input-settings-ui-language": "Língua usada para escrever",
+ "ext-uls-back-to-input-settings": "Voltar às definições de entrada",
"ext-uls-ime-help": "Como usar",
"ext-uls-disable-input-method": "Usar teclado nativo",
- "ext-uls-input-settings-more-languages-tooltip": "Mais idiomas",
- "jquery-ime-other-languages": "Outros idiomas",
+ "ext-uls-input-settings-more-languages-tooltip": "Mais línguas",
+ "jquery-ime-other-languages": "Outras línguas",
"jquery-ime-disable-text": "Usar teclado nativo",
"jquery-ime-help": "Ajuda",
- "ext-uls-input-disable": "Desactivar ferramentas de entrada",
- "ext-uls-input-enable": "Activar ferramentas de entrada",
- "ext-uls-input-disable-info": "As ferramentas de entrada estão desactivadas.",
- "ext-uls-input-settings-noime": "Não existem métodos de entrada disponíveis para este idioma.",
- "ext-uls-input-disable-notification": "As ferramentas de entrada foram desactivadas",
+ "ext-uls-input-disable": "Desativar ferramentas de entrada",
+ "ext-uls-input-enable": "Ativar ferramentas de entrada",
+ "ext-uls-input-disable-info": "As ferramentas de entrada estão desativadas.",
+ "ext-uls-input-settings-noime": "Não existem métodos de entrada disponíveis para esta língua.",
+ "ext-uls-input-disable-notification": "As ferramentas de entrada foram desativadas",
"ext-uls-input-disable-notification-undo": "Desfazer",
- "ext-uls-input-disable-notification-info-personal": "Pode activar as ferramentas de entrada quando quiser a partir das configurações de idioma.",
- "ext-uls-input-disable-notification-info-interlanguage": "Pode activar as ferramentas de entrada quando quiser a partir das configurações de idioma, ao lado da lista de idiomas.",
+ "ext-uls-input-disable-notification-info-personal": "Pode ativar as ferramentas de entrada quando quiser, a partir das definições de língua.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Pode ativar as ferramentas de entrada quando quiser a partir das definições de língua, ao lado da lista de línguas.",
"ext-uls-language-settings-applying": "A aplicar...",
- "ext-uls-compact-link-count": "{{PLURAL:$1|Um outro|$1 outros}}",
- "apihelp-ulslocalization-param-language": "Código de idioma."
+ "ext-uls-compact-link-count": "{{PLURAL:$1|Uma outra|$1 outras}}",
+ "ext-uls-compact-link-info": "Todas as línguas (seleção inicial a partir de escolhas comuns, suas e de outros)",
+ "prefs-languages": "Línguas",
+ "ext-uls-compact-language-links-preference": "Usar uma [[$1|lista compacta de línguas]], com as línguas relevantes para si",
+ "ext-uls-compact-no-results": "Esta página não está disponível na língua que pesquisou."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/qqq.json b/MLEB/UniversalLanguageSelector/i18n/qqq.json
index d4c32eab..5bebdd0d 100644
--- a/MLEB/UniversalLanguageSelector/i18n/qqq.json
+++ b/MLEB/UniversalLanguageSelector/i18n/qqq.json
@@ -8,14 +8,17 @@
"Siebrand",
"Nemo bis",
"Raymond",
- "Liuxinyu970226"
+ "Liuxinyu970226",
+ "Purodha",
+ "Umherirrender"
]
},
- "uls-desc": "Extension description",
+ "uls-desc": "{{desc|name=UniversalLanguageSelector|url=https://www.mediawiki.org/wiki/Extension:UniversalLanguageSelector}}",
"uls-plang-title-languages": "A title for the are in the sidebar in which the interlanguage links are supposed to appear.\nThis title is shown when there are no interlanguage links there, but an icon that enables the ULS is shown.\n{{Identical|Language}}",
"uls-ime-helppage": "Target page for ime helps. Parameters:\n* $1 - ime id. Intended for wiki local customization. e.g. cyrl-palochka",
"ext-uls-select-language-settings-icon-tooltip": "A tooltip for the icon that shows the language selector.\n{{Identical|Language settings}}",
- "ext-uls-undo-language-tooltip-text": "Text for the tooltip appearing when language is changed. Parameters:\n* $1 - the previous language acronym",
+ "ext-uls-undo-language-tooltip-text": "Text for the tooltip appearing when language is changed. Parameters:\n* $1 - the previous language autonym",
+ "ext-uls-undo-language-tooltip-text-local": "Text for the tooltip appearing when language is changed locally for one wiki when global language setting is in use. Parameters:\n* $1 - the previous language autonym",
"ext-uls-language-settings-preferences-link": "Text for the link showin in user preference screen",
"uls-betafeature-label": "Used as checkbox label for beta feature. \"Compact\" is an adjective and \"language links\" is a short name for the interlanguage links, also known as interwiki (links) in the sidebar of a page.\n\nThe description for this label is {{msg-mw|Uls-betafeature-desc}}.",
"uls-betafeature-desc": "Description for the [[mw:Universal Language Selector/Design/Interlanguage links|compact interlanguage links beta feature]]. The \"language list\" is the \"{{int:otherlanguages}}\" box in the sidebar, also known as interwikis.\n\nThis description is for the checkbox label {{msg-mw|Uls-betafeature-label}}.",
@@ -62,15 +65,9 @@
"ext-uls-input-disable-notification-info-personal": "Notification bubble text when input methods are disabled, appears if the ULS is at personal toolbar",
"ext-uls-input-disable-notification-info-interlanguage": "Notification bubble text when input methods are disabled, appears if the ULS is at interlanguage toolbar",
"ext-uls-language-settings-applying": "Label for apply settings button in language settings screen, while settings being saved. Please keep it short.",
- "ext-uls-compact-link-count": "Message next to list of languages which indicates that there are more languages than the ones shown. Parameters:\n* $1 - number of languages\n{{Identical|More}}",
- "apihelp-languagesearch-description": "{{doc-apihelp-description|languagesearch}}",
- "apihelp-languagesearch-param-search": "{{doc-apihelp-param|languagesearch|search}}\n{{Identical|Search string}}",
- "apihelp-languagesearch-param-typos": "{{doc-apihelp-param|languagesearch|typos}}",
- "apihelp-languagesearch-example-1": "Label of a command which produces a search by \"te\". Translate as imperative or noun as most suitable for your language.\n----\n{{doc-apihelp-example|languagesearch}}",
- "apihelp-languagesearch-example-2": "Label of an example command which produces a search. Translate as appropriate to your language.\n----\n{{doc-apihelp-example|languagesearch}}",
- "apihelp-languagesearch-example-3": "Description of a function where the user can find an available language by providing a name to search for.\n----\n{{doc-apihelp-example|languagesearch}}",
- "apihelp-ulslocalization-description": "{{doc-apihelp-description|ulslocalization}}",
- "apihelp-ulslocalization-param-language": "{{doc-apihelp-param|ulslocalization|language}}\n{{Identical|Language code}}",
- "apihelp-ulslocalization-example-1": "{{doc-apihelp-example|ulslocalization}}",
- "apihelp-ulslocalization-example-2": "{{doc-apihelp-example|ulslocalization}}"
+ "ext-uls-compact-link-count": "Message next to the list of languages which indicates that there are more languages than the ones shown. Parameter $1 is the number of languages.\n\nIf your language has a singular form for number 1, then the number should be explicitly mentioned. If it's possible in your language, please write \"1 more\" or \"one more\". Another option is to write \"more\" in a way that doesn't depend on a particular number.",
+ "ext-uls-compact-link-info": "A tooltip for a button that shows all available languages next to a short list of relevant languages.",
+ "prefs-languages": "Field set legend for user preferences regarding display of language lists\n{{Identical|Language}}",
+ "ext-uls-compact-language-links-preference": "Label for compact language links user preference",
+ "ext-uls-compact-no-results": "Message shown when the language search does not have any results."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/qu.json b/MLEB/UniversalLanguageSelector/i18n/qu.json
index ff98a82c..c5b040ee 100644
--- a/MLEB/UniversalLanguageSelector/i18n/qu.json
+++ b/MLEB/UniversalLanguageSelector/i18n/qu.json
@@ -5,5 +5,6 @@
]
},
"uls-plang-title-languages": "Rimaykuna",
- "jquery-ime-help": "Yanapa"
+ "jquery-ime-help": "Yanapa",
+ "ext-uls-compact-link-count": "{{PLURAL:$1|Huk aswan|$1 aswan}}"
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/ro.json b/MLEB/UniversalLanguageSelector/i18n/ro.json
index 17934803..002e4f8f 100644
--- a/MLEB/UniversalLanguageSelector/i18n/ro.json
+++ b/MLEB/UniversalLanguageSelector/i18n/ro.json
@@ -1,7 +1,9 @@
{
"@metadata": {
"authors": [
- "Minisarm"
+ "Minisarm",
+ "Strainu",
+ "Adrianbblk"
]
},
"uls-desc": "Oferă utilizatorului mai multe modalități de a selecta o limbă și de a modifica setările de limbă",
@@ -54,5 +56,8 @@
"ext-uls-input-disable-notification-info-personal": "Puteți activa uneltele pentru introducere oricând din setările de limbă.",
"ext-uls-input-disable-notification-info-interlanguage": "Puteți activa uneltele pentru introducere oricând din setările de limbă aflate lângă lista cu limbile disponibile.",
"ext-uls-language-settings-applying": "Se aplică...",
- "ext-uls-compact-link-count": "{{PLURAL:$1|Încă o limbă|Încă $1 limbi|Încă $1 de limbi}}"
+ "ext-uls-compact-link-count": "{{PLURAL:$1|Încă una|Încă $1}}",
+ "ext-uls-compact-link-info": "Toate limbile (selecție inițială cu alegerile obișnuite ale dumneavoastră și ale altor utilizatori)",
+ "prefs-languages": "Limbi",
+ "ext-uls-compact-language-links-preference": "Folosiți o [[$1|listă compactă de limbi]], ce conține doar limbile relevante pentru dumneavoastră."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/roa-tara.json b/MLEB/UniversalLanguageSelector/i18n/roa-tara.json
index e71da0dc..5e81d50b 100644
--- a/MLEB/UniversalLanguageSelector/i18n/roa-tara.json
+++ b/MLEB/UniversalLanguageSelector/i18n/roa-tara.json
@@ -8,7 +8,10 @@
"uls-plang-title-languages": "Lènghe",
"ext-uls-select-language-settings-icon-tooltip": "'Mbostaziune de lènghe",
"ext-uls-undo-language-tooltip-text": "Lènghe cangiate da $1",
+ "ext-uls-undo-language-tooltip-text-local": "Lènghe cangiate pe sta uicchi. Condrolle le [[Special:GlobalPreferences|preferenze globbale]] tune pe cangià 'a lènghe pe tutte le uicchi.",
"ext-uls-language-settings-preferences-link": "Otre 'mbostaziune d'a lènghe",
+ "uls-betafeature-label": "Collegaminde inderuicchi a fiche",
+ "uls-betafeature-desc": "Fà 'ndrucà ìna versione cchiù corte de l'elenghe de le inderuicchi, ca sò le collegaminde a le otre lènghe addò 'a pàgene jè disponibbile, limitate a chidde cchiù 'mbortande pe te.",
"ext-uls-display-settings-title": "Fà vedè le 'mbostaziune",
"ext-uls-display-settings-language-tab": "Lènghe",
"ext-uls-display-settings-fonts-tab": "Carattere",
@@ -24,6 +27,7 @@
"ext-uls-display-settings-anon-same-as-content": "$1 ('u stesse cumme condenute)",
"ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Tràse]] pe scacchià 'na lènghe diverse pe le menu.",
"ext-uls-webfonts-settings-title": "Scareche le carattere quanne abbesògne",
+ "ext-uls-webfonts-settings-info": "Scareche automaticamende le font ca mangane e face scacchià le tipe de carattere preferite.",
"ext-uls-webfonts-settings-info-link": "Cchiù 'mbormaziune",
"ext-uls-webfonts-select-for": "Scacchie 'u carattere pe $1",
"ext-uls-webfonts-select-for-ui-info": "Carattere ausate pe l'inderfacce utende",
@@ -50,5 +54,10 @@
"ext-uls-input-disable-notification-undo": "Annulle",
"ext-uls-input-disable-notification-info-personal": "Tu puè abbilità le struminde de ingresse ogne vote da le 'mbostaziune d'a lènghe.",
"ext-uls-input-disable-notification-info-interlanguage": "Tu puè abbilità le struminde de ingresse ogne vote da le 'mbostaziune d'a lènghe successive a l'elenghe de le lènghe.",
- "ext-uls-language-settings-applying": "Stoche a appleche..."
+ "ext-uls-language-settings-applying": "Stoche a appleche...",
+ "ext-uls-compact-link-count": "{{PLURAL:$1|'N'otre|otre $1}}",
+ "ext-uls-compact-link-info": "Tutte le lènghe ('u scacchiamende iniziale avène 'mbrà le scacchiaminde comune tue e de l'otre)",
+ "prefs-languages": "Lènghe",
+ "ext-uls-compact-language-links-preference": "Ause 'n'[[$1|elenghe ridotte de lènghe]], cu le lènghe ca so 'mbortande pe te.",
+ "ext-uls-compact-no-results": "Sta pàgene non g'è disponibbile jndr'à lènghe ca ste cirche."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/ru.json b/MLEB/UniversalLanguageSelector/i18n/ru.json
index 032590d2..a0dd9cc2 100644
--- a/MLEB/UniversalLanguageSelector/i18n/ru.json
+++ b/MLEB/UniversalLanguageSelector/i18n/ru.json
@@ -7,16 +7,26 @@
"ShinePhantom",
"Умар",
"Kaganer",
- "Iltever"
+ "Iltever",
+ "Ernác",
+ "Mailman",
+ "NBS",
+ "Mix Gerder",
+ "Jack who built the house",
+ "Mouse21",
+ "Ole Yves",
+ "Stjn",
+ "Vlad5250"
]
},
"uls-desc": "Даёт пользователю несколько способов выбрать язык и произвести установки языка",
"uls-plang-title-languages": "Языки",
"ext-uls-select-language-settings-icon-tooltip": "Установки языка",
"ext-uls-undo-language-tooltip-text": "Предыдущий язык: $1",
+ "ext-uls-undo-language-tooltip-text-local": "Язык изменён для этой вики. Проверьте ваши [[Special:GlobalPreferences|глобальные настройки]], чтобы изменить язык на всех вики.",
"ext-uls-language-settings-preferences-link": "Дополнительные установки языка",
"uls-betafeature-label": "Компактный список языковых ссылок",
- "uls-betafeature-desc": "Показывает сокращенный вариант списка языков, только с языками, которые являются более актуальными для вас.",
+ "uls-betafeature-desc": "Показывает сокращённый вариант списка языков, включающий только наиболее актуальные для вас языки.",
"ext-uls-display-settings-title": "Установки отображения",
"ext-uls-display-settings-language-tab": "Язык",
"ext-uls-display-settings-fonts-tab": "Шрифты",
@@ -60,10 +70,9 @@
"ext-uls-input-disable-notification-info-personal": "Инструменты ввода можно включить в любое время из установок языка.",
"ext-uls-input-disable-notification-info-interlanguage": "Инструменты ввода можно включить в любое время из установок языка рядом со списком языков.",
"ext-uls-language-settings-applying": "Применение…",
- "ext-uls-compact-link-count": "Ещё на {{PLURAL:$1|одном языке|$1 языках}}",
- "apihelp-languagesearch-param-typos": "Количество орфографических ошибок, которое допускается в искомой строке.",
- "apihelp-languagesearch-example-1": "Поиск «Te»",
- "apihelp-languagesearch-example-2": "Поиск «ഫി»",
- "apihelp-languagesearch-example-3": "Поиск «ഫി», допускается одна ошибка",
- "apihelp-ulslocalization-param-language": "Код языка."
+ "ext-uls-compact-link-count": "{{PLURAL:$1|Ещё $1}}",
+ "ext-uls-compact-link-info": "Все языки (изначальная выборка — это языки, которые чаще всего использовались вами и другими)",
+ "prefs-languages": "Языки",
+ "ext-uls-compact-language-links-preference": "Использовать [[$1|компактный список языков]] с подходящими вам языками.",
+ "ext-uls-compact-no-results": "Эта страница недоступна на выбранном вами языке."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/sa.json b/MLEB/UniversalLanguageSelector/i18n/sa.json
index b85961d5..7619b1d6 100644
--- a/MLEB/UniversalLanguageSelector/i18n/sa.json
+++ b/MLEB/UniversalLanguageSelector/i18n/sa.json
@@ -1,17 +1,30 @@
{
"@metadata": {
"authors": [
- "NehalDaveND"
+ "NehalDaveND",
+ "Shubha"
]
},
"uls-plang-title-languages": "भाषाः",
+ "ext-uls-select-language-settings-icon-tooltip": "भाषाविकल्पाः",
"ext-uls-display-settings-language-tab": "भाषा",
+ "ext-uls-display-settings-fonts-tab": "लिपिः",
"ext-uls-display-settings-title-short": "प्रदर्श्यताम्",
+ "ext-uls-display-settings-desc": "भाषा-लिपयोः चयनं क्रियताम्",
+ "ext-uls-language-settings-apply": "आद्यता संरक्ष्यताम्",
"ext-uls-language-settings-cancel": "निरस्यताम्",
+ "ext-uls-language-buttons-help": "भाषा परिवर्त्यताम् । विषयस्य भाषा न परिवर्त्यते ।",
"ext-uls-display-settings-font-settings": "वर्णविन्यासाः",
"ext-uls-display-settings-ui-language": "भाषा दर्श्यताम्",
"ext-uls-display-settings-anon-label": "भाषा दर्श्यताम्",
+ "ext-uls-webfonts-settings-title": "अपेक्षानुगुणं लिपिः अवारोप्यताम् ।",
+ "ext-uls-webfonts-settings-info": "अपेक्षिता लिपिः न विद्यते चेत् उपारोप्यताम् । अपेक्षितां लिपिं चेतुम् अवसरः कल्प्यताम् ।",
+ "ext-uls-webfonts-settings-info-link": "अधिकं विवरणम्",
+ "ext-uls-webfonts-select-for": "वर्णविन्यासः चीयताम्",
+ "ext-uls-webfonts-select-for-content-info": "समग्रविषयस्य वर्णविन्यासः",
"ext-uls-input-settings-title-short": "निवेष्यम्",
+ "ext-uls-input-settings-desc": "किं भिन्नभाषया लिखति ?",
+ "ext-uls-disable-input-method": "यन्त्रस्य कीबोर्ड् उपयुञ्ज्यताम् ।",
"jquery-ime-help": "साहाय्यम्",
"ext-uls-input-disable-notification-undo": "पूर्ववत्"
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/scn.json b/MLEB/UniversalLanguageSelector/i18n/scn.json
index c3c37c14..6de152da 100644
--- a/MLEB/UniversalLanguageSelector/i18n/scn.json
+++ b/MLEB/UniversalLanguageSelector/i18n/scn.json
@@ -2,9 +2,11 @@
"@metadata": {
"authors": [
"Gmelfi",
- "Pippinu"
+ "Pippinu",
+ "Xð"
]
},
+ "uls-plang-title-languages": "Lingui",
"ext-uls-select-language-settings-icon-tooltip": "Mpustazzioni pâ lingua",
"ext-uls-undo-language-tooltip-text": "Lingua canciata a pàrtiri di $1",
"ext-uls-language-settings-preferences-link": "Àutri mpustazzioni pâ lingua",
diff --git a/MLEB/UniversalLanguageSelector/i18n/sd.json b/MLEB/UniversalLanguageSelector/i18n/sd.json
index fbeedef9..e327d3b9 100644
--- a/MLEB/UniversalLanguageSelector/i18n/sd.json
+++ b/MLEB/UniversalLanguageSelector/i18n/sd.json
@@ -1,8 +1,64 @@
{
"@metadata": {
"authors": [
- "Sindhu"
+ "Sindhu",
+ "Xð",
+ "Mehtab ahmed",
+ "Indus Asia"
]
},
- "apihelp-ulslocalization-param-language": "ٻوليءَ جو ڪوڊ"
+ "uls-desc": "ڪا ٻولي چونڊڻ ۽ ٻوليءَ جو ترتيبون ايڊجسٽ ڪرڻ لاءِ واپرائيندڙ کي ڪيترائي رستا ڏئي ٿو",
+ "uls-plang-title-languages": "ٻوليون",
+ "ext-uls-select-language-settings-icon-tooltip": "ٻوليءَ جو ترتيبون",
+ "ext-uls-undo-language-tooltip-text": "$1 کان مٽايل ٻولي",
+ "ext-uls-language-settings-preferences-link": "وڌيڪ ٻوليءَ جون ترتيبون",
+ "uls-betafeature-label": "ڳتل ٻوليءَ جا ڳنڍڻا",
+ "uls-betafeature-desc": "ٻوليءَ جي فھرست جو ننڍو ورزين ڏيکاريو، صرف انھن ٻولين سان جيڪي توھان لاءِ وڌيڪ لاڳاپيل آھن.",
+ "ext-uls-display-settings-title": "ڊسپلي ترتيبون",
+ "ext-uls-display-settings-language-tab": "ٻولي",
+ "ext-uls-display-settings-fonts-tab": "فونٽ",
+ "ext-uls-display-settings-title-short": "ڊسپلي",
+ "ext-uls-display-settings-desc": "مينيوز ۽ فونٽس لاءِ استعمال ٿيندڙ ٻولي مقرر ڪريو.",
+ "ext-uls-language-settings-title": "ٻوليءَ جو ترتيبون",
+ "ext-uls-language-settings-apply": "ترتيبون لاڳو ڪريو",
+ "ext-uls-language-settings-cancel": "رد",
+ "ext-uls-language-buttons-help": "مينيوز جي ٻولي تبديل ڪريو. مواد جي ٻولي متاثر نہ ٿيندي.",
+ "ext-uls-display-settings-font-settings": "فونٽ ترتيبون",
+ "ext-uls-display-settings-ui-language": "ڊسپلي جي ٻولي",
+ "ext-uls-display-settings-anon-label": "ڊسپلي جي ٻولي:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (مواد جھڙي)",
+ "ext-uls-display-settings-anon-log-in-cta": "مينيوز لاءِ ٻي ٻولي چونڊڻ لاءِ [[Special:UserLogin|داخل ٿيو]].",
+ "ext-uls-webfonts-settings-title": "فونٽس جڏھن گھربل ھجن تہ لاھيو",
+ "ext-uls-webfonts-settings-info": "رھيل فونٽس خودبخود لاھيو ۽ پسنديده فونٽس جي چونڊ جي اجازت ڏيو.",
+ "ext-uls-webfonts-settings-info-link": "وڌيڪ معلومات",
+ "ext-uls-webfonts-select-for": "$1 لاءِ فونٽ چونڊيو",
+ "ext-uls-webfonts-select-for-ui-info": "واپرائيندڙ جي انٽرفيس لاءِ استعمال ٿيندڙ فونٽ",
+ "ext-uls-webfonts-select-for-content-info": "مواد لاءِ استعمال ٿيندڙ فونٽ",
+ "ext-uls-webfonts-system-font": "سرشتي جا فونٽ",
+ "ext-uls-back-to-display-settings": "ڊسپلي ترتيبن ڏانھن واپس",
+ "ext-uls-input-settings-title": "اِنپُٽ جون ترتيبون",
+ "ext-uls-input-settings-title-short": "اِنپُٽ",
+ "ext-uls-input-settings-desc": "ھڪ ٻي ٻوليءَ ۾ لکندي؟",
+ "ext-uls-input-settings-ime-settings": "$1 لاءِ اِنپُٽ جا طريقا",
+ "ext-uls-input-settings-ui-language": "لکڻ لاءِ استعمال ٿيندڙ ٻولي",
+ "ext-uls-back-to-input-settings": "اِنپُٽ ترتيبن ڏانھن واپس",
+ "ext-uls-ime-help": "ڪيئن استعمال ڪجي",
+ "ext-uls-disable-input-method": "مقامي ڪيبورڊ استعمال ڪريو",
+ "ext-uls-input-settings-more-languages-tooltip": "وڌيڪ ٻوليون",
+ "jquery-ime-other-languages": "ٻيون ٻوليون",
+ "jquery-ime-disable-text": "مقامي ڪيبورڊ استعمال ڪريو",
+ "jquery-ime-help": "مدد",
+ "ext-uls-input-disable": "اِنپُٽ اوزار غيرفعال ڪريو",
+ "ext-uls-input-enable": "اِنپُٽ اوزار فعال ڪريو",
+ "ext-uls-input-disable-info": "اِنپُٽ اوزار غيرفعال ڪيل.",
+ "ext-uls-input-settings-noime": "ھن ٻوليءَ لاءِ اِنپُٽ طريقا موجود نہ آھن.",
+ "ext-uls-input-disable-notification": "اِنپُٽ اوزار غيرفعال ڪيا ويا آھن",
+ "ext-uls-input-disable-notification-undo": "اڻڪريو",
+ "ext-uls-input-disable-notification-info-personal": "ٻوليءَ جي ترتيبن ۾ توھان ڪنھن بہ وقت اِنپُٽ اوزار فعال ڪري سگھو ٿا.",
+ "ext-uls-input-disable-notification-info-interlanguage": "توھان ٻولين جي فھرست اڳيان ٻوليءَ جي ترتيبن مان ڪنھن بہ وقت اِنپُٽ اوزار فعال ڪري سگھو ٿا.",
+ "ext-uls-language-settings-applying": "لاڳو ڪندي...",
+ "ext-uls-compact-link-count": "{{PLURAL:$1|ھڪ وڌيڪ|$1 وڌيڪ}}",
+ "ext-uls-compact-link-info": "سڀ ٻوليون (توھان ۽ ٻين جي عام اختيارن مان شروعاتي چونڊ)",
+ "prefs-languages": "ٻوليون",
+ "ext-uls-compact-language-links-preference": "توھان سان لاڳاپيل ٻولين لاءِ [[$1|ٻولين جي ڳتيل فھرست]] استعمال ڪريو."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/sk.json b/MLEB/UniversalLanguageSelector/i18n/sk.json
index a697952e..4382e658 100644
--- a/MLEB/UniversalLanguageSelector/i18n/sk.json
+++ b/MLEB/UniversalLanguageSelector/i18n/sk.json
@@ -56,5 +56,6 @@
"ext-uls-input-disable-notification-info-personal": "Nástroje pre vstup môžete kedykoľvek zapnúť v jazykových nastaveniach.",
"ext-uls-input-disable-notification-info-interlanguage": "Nástroje pre vstup môžete kedykoľvek zapnúť v jazykových nastaveniach vedľa zoznamu jazykov.",
"ext-uls-language-settings-applying": "Aplikuje sa...",
- "ext-uls-compact-link-count": "{{PLURAL:$1|Ďalší jazyk|$1 ďalších jazykov}}"
+ "ext-uls-compact-link-count": "{{PLURAL:$1|Ďalší jazyk|$1 ďalších jazykov}}",
+ "ext-uls-compact-language-links-preference": "Používať kompaktný zoznam jazykov (len jazyky relevantné pre vás)"
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/sl.json b/MLEB/UniversalLanguageSelector/i18n/sl.json
index b0d2e8dd..ca6165b5 100644
--- a/MLEB/UniversalLanguageSelector/i18n/sl.json
+++ b/MLEB/UniversalLanguageSelector/i18n/sl.json
@@ -3,13 +3,14 @@
"authors": [
"Eleassar",
"Dbc334",
- "Yerpo"
+ "Yerpo",
+ "Janezdrilc"
]
},
"uls-desc": "Daje uporabniku več načinov izbire jezika in prilagoditve jezikovnih nastavitev",
"uls-plang-title-languages": "Jeziki",
"ext-uls-select-language-settings-icon-tooltip": "Nastavitve jezika",
- "ext-uls-undo-language-tooltip-text": "Sprememba jezika iz $1",
+ "ext-uls-undo-language-tooltip-text": "Sprememba jezika iz $1.",
"ext-uls-language-settings-preferences-link": "Več jezikovnih nastavitev",
"uls-betafeature-label": "Strnjene jezikovne povezave",
"uls-betafeature-desc": "Prikaži krajšo različico seznama jezikov, samo z jeziki, ki so za vas bolj primerni.",
@@ -53,8 +54,12 @@
"ext-uls-input-settings-noime": "Za ta jezik ni na razpolago noben način vnosa.",
"ext-uls-input-disable-notification": "Orodja za vnos so onemogočena",
"ext-uls-input-disable-notification-undo": "Razveljavi",
- "ext-uls-input-disable-notification-info-personal": "Orodja za vnos lahko prek jezikovnih nastavitev omogočite kadarkoli.",
- "ext-uls-input-disable-notification-info-interlanguage": "Orodja za vnos lahko prek jezikovnih nastavitev poleg seznama jezikov omogočite kadarkoli.",
+ "ext-uls-input-disable-notification-info-personal": "Orodja za vnos lahko v jezikovnih nastavitvah omogočite kadarkoli.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Orodja za vnos lahko v jezikovnih nastavitvah poleg seznama jezikov omogočite kadarkoli.",
"ext-uls-language-settings-applying": "Uveljavljanje ...",
- "ext-uls-compact-link-count": "{{PLURAL:$1|1=Še en|Še $1}}"
+ "ext-uls-compact-link-count": "{{PLURAL:$1|1=Še en|Še $1}}",
+ "ext-uls-compact-link-info": "Vsi jeziki (izbor na podlagi tvojih odločitev in odločitev drugih)",
+ "prefs-languages": "Jeziki",
+ "ext-uls-compact-language-links-preference": "Uporabi [[$1|kompakten seznam jezikov]] z jeziki, ki so zate pomembni.",
+ "ext-uls-compact-no-results": "Ta stran ni na voljo v jeziku, ki si ga iskal."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/so.json b/MLEB/UniversalLanguageSelector/i18n/so.json
index ed34fc0b..033117aa 100644
--- a/MLEB/UniversalLanguageSelector/i18n/so.json
+++ b/MLEB/UniversalLanguageSelector/i18n/so.json
@@ -1,9 +1,11 @@
{
"@metadata": {
"authors": [
- "Abshirdheere"
+ "Abshirdheere",
+ "Xð"
]
},
+ "uls-plang-title-languages": "Afafka",
"ext-uls-language-settings-preferences-link": "Dooqyo dheeraad ah e luqada",
"uls-betafeature-label": "Linkiyada af isku dhegan"
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/sq.json b/MLEB/UniversalLanguageSelector/i18n/sq.json
index 4fc26b4e..b04d1a57 100644
--- a/MLEB/UniversalLanguageSelector/i18n/sq.json
+++ b/MLEB/UniversalLanguageSelector/i18n/sq.json
@@ -1,10 +1,13 @@
{
"@metadata": {
"authors": [
- "Olsi"
+ "Olsi",
+ "Kosovastar",
+ "Xð"
]
},
- "ext-uls-select-language-settings-icon-tooltip": "Cilësimet e gjuhës",
+ "uls-plang-title-languages": "Gjuhë",
+ "ext-uls-select-language-settings-icon-tooltip": "Tiparet gjuhësore",
"ext-uls-undo-language-tooltip-text": "Gjuha u ndryshua nga $1",
"ext-uls-language-settings-preferences-link": "Më shumë cilësime për gjuhët",
"ext-uls-display-settings-title": "Cilësimet e shfaqjes",
@@ -12,7 +15,7 @@
"ext-uls-display-settings-fonts-tab": "Shkrimet",
"ext-uls-display-settings-title-short": "Shfaqja",
"ext-uls-display-settings-desc": "Vendos gjuhën e përdorur për menutë dhe shkrimet.",
- "ext-uls-language-settings-title": "Cilësimet e gjuhës",
+ "ext-uls-language-settings-title": "Tiparet gjuhësore",
"ext-uls-language-settings-apply": "Apliko cilësimet",
"ext-uls-language-settings-cancel": "Anulo",
"ext-uls-language-buttons-help": "Ndrysho gjuhën e menuve. Gjuha e përmbajtjes nuk do të pësojë ndryshim.",
@@ -25,7 +28,7 @@
"ext-uls-webfonts-select-for-ui-info": "Shkrimi i përdorur për ndërfaqen e përdoruesit",
"ext-uls-webfonts-select-for-content-info": "Shkrimi i përdorur për përmbajtjen",
"ext-uls-webfonts-system-font": "Sistemi i shkrimit",
- "ext-uls-back-to-display-settings": "Prapa te cilësimet e shfaqjes",
+ "ext-uls-back-to-display-settings": "Mbrapa te parametrat e shfaqjes",
"ext-uls-input-settings-title": "Cilësimet e të shkruarit",
"ext-uls-input-settings-title-short": "Shkrimi",
"ext-uls-input-settings-desc": "Dëshironi të shkruani në një gjuhë tjetër?",
@@ -43,6 +46,8 @@
"ext-uls-input-settings-noime": "Nuk ka metoda shkrimi për këtë gjuhë.",
"ext-uls-input-disable-notification": "Mjetet e shkrimit janë çaktivizuar",
"ext-uls-input-disable-notification-undo": "Zhbëj",
- "ext-uls-input-disable-notification-info-personal": "Ju mund t'i aktivizoni mjetet e shkrimit në çdo kohë nga cilësimet e gjuhës.",
- "ext-uls-input-disable-notification-info-interlanguage": "Ju mund t'i çaktivizoni mjetet e shkrimit në çdo kohë nga cilësimet e gjuhës ngjitur me listën e gjuhëve."
+ "ext-uls-input-disable-notification-info-personal": "Ju mund t'i aktivizoni mjetet e shkrimit në çdo kohë nën tiparet gjuhësore.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Ju mund t'i çaktivizoni mjetet e shkrimit në çdo kohë nga cilësimet e gjuhës ngjitur me listën e gjuhëve.",
+ "ext-uls-compact-link-count": "{{PLURAL:$1|Edhe një tjetër|Edhe $1 të tjera}}",
+ "ext-uls-compact-link-info": "Të gjitha gjuhët (përzgjedhja fillestare nga zgjedhje të zakonshme nga ju dhe të tjerët)"
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/sr-ec.json b/MLEB/UniversalLanguageSelector/i18n/sr-ec.json
index ce336cfd..0c8ce575 100644
--- a/MLEB/UniversalLanguageSelector/i18n/sr-ec.json
+++ b/MLEB/UniversalLanguageSelector/i18n/sr-ec.json
@@ -2,16 +2,20 @@
"@metadata": {
"authors": [
"Milicevic01",
- "Милан Јелисавчић"
+ "Милан Јелисавчић",
+ "Сербијана",
+ "Acamicamacaraca",
+ "Prevodim",
+ "BadDog"
]
},
- "uls-desc": "Даје кориснику неколико начина да изабере језик и да прилагоди поставке језика",
+ "uls-desc": "Даје кориснику неколико начина да изабере језик и да прилагоди подешавања језика",
"uls-plang-title-languages": "Језици",
"ext-uls-select-language-settings-icon-tooltip": "Подешавања језика",
"ext-uls-undo-language-tooltip-text": "Језик промењен са $1",
- "ext-uls-language-settings-preferences-link": "Додатне језичке поставке",
+ "ext-uls-language-settings-preferences-link": "Још језичких подешавања",
"uls-betafeature-label": "Сажете везе ка другим језицима",
- "uls-betafeature-desc": "Прикажује краћу језичку листу само са вама битним језицима.",
+ "uls-betafeature-desc": "Прикажује сажет списак језика, само са Вама битним језицима.",
"ext-uls-display-settings-title": "Подешавања приказа",
"ext-uls-display-settings-language-tab": "Језик",
"ext-uls-display-settings-fonts-tab": "Фонтови",
@@ -20,7 +24,7 @@
"ext-uls-language-settings-title": "Подешавања језика",
"ext-uls-language-settings-apply": "Примени",
"ext-uls-language-settings-cancel": "Откажи",
- "ext-uls-language-buttons-help": "Промена језика менија. Језик садржаја неће бити промењен.",
+ "ext-uls-language-buttons-help": "Промените језик менија. Језик садржаја неће бити промењен.",
"ext-uls-display-settings-font-settings": "Подешавања фонта",
"ext-uls-display-settings-ui-language": "Језик за приказ",
"ext-uls-display-settings-anon-label": "Језик приказa:",
@@ -41,19 +45,23 @@
"ext-uls-input-settings-ui-language": "Језик коришћен за писање",
"ext-uls-back-to-input-settings": "Назад на подешавање уноса",
"ext-uls-ime-help": "Како се користи",
- "ext-uls-disable-input-method": "Користи изворну тастатуру",
+ "ext-uls-disable-input-method": "Користи матичну тастатуру",
"ext-uls-input-settings-more-languages-tooltip": "Више језика",
- "jquery-ime-other-languages": "Остали језици",
- "jquery-ime-disable-text": "Користи изворну тастатуру",
+ "jquery-ime-other-languages": "Други језици",
+ "jquery-ime-disable-text": "Користи матичну тастатуру",
"jquery-ime-help": "Помоћ",
"ext-uls-input-disable": "Онемогући алате за унос",
"ext-uls-input-enable": "Омогући алате за унос",
- "ext-uls-input-disable-info": "Алати за унос су онемогућени.",
+ "ext-uls-input-disable-info": "Алатке за унос су онемогућене.",
"ext-uls-input-settings-noime": "Нема доступне методе уноса за овај језик.",
- "ext-uls-input-disable-notification": "Алати за унос су онемогућени",
+ "ext-uls-input-disable-notification": "Алатке за унос су онемогућене",
"ext-uls-input-disable-notification-undo": "Опозови",
"ext-uls-input-disable-notification-info-personal": "Можете омогућити алате за унос у било које време на подешавањима језика.",
"ext-uls-input-disable-notification-info-interlanguage": "Можете омогућити алатке за унос у било које време на подешавањима језика поред списка језика.",
"ext-uls-language-settings-applying": "Примењујем...",
- "ext-uls-compact-link-count": "{{PLURAL:$1|Још један језик|Још $1 језика}}"
+ "ext-uls-compact-link-count": "Још {{PLURAL:$1|1=један|$1}} {{PLURAL:$1|језик|језика}}",
+ "ext-uls-compact-link-info": "Сви језици (првобитан избор је заснован на најчешћим одабирима вас и других)",
+ "prefs-languages": "Језици",
+ "ext-uls-compact-language-links-preference": "Користи [[$1|сажети списак језика]], са језицима који су вама важни.",
+ "ext-uls-compact-no-results": "Ова страница није доступна на језику који тражите."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/sr-el.json b/MLEB/UniversalLanguageSelector/i18n/sr-el.json
index 23e312bc..b6580112 100644
--- a/MLEB/UniversalLanguageSelector/i18n/sr-el.json
+++ b/MLEB/UniversalLanguageSelector/i18n/sr-el.json
@@ -1,16 +1,20 @@
{
"@metadata": {
"authors": [
- "Milicevic01"
+ "Milicevic01",
+ "Сербијана",
+ "Amire80",
+ "Srdjan m",
+ "Prevodim"
]
},
- "uls-desc": "Daje korisniku nekoliko načina da izabere jezik i da prilagodi postavke jezika",
+ "uls-desc": "Daje korisniku nekoliko načina da izabere jezik i da prilagodi podešavanja jezika",
"uls-plang-title-languages": "Jezici",
"ext-uls-select-language-settings-icon-tooltip": "Podešavanja jezika",
"ext-uls-undo-language-tooltip-text": "Jezik promenjen sa $1",
- "ext-uls-language-settings-preferences-link": "Dodatne jezičke postavke",
+ "ext-uls-language-settings-preferences-link": "Dodatna jezička podešavanja",
"uls-betafeature-label": "Sažete veze ka drugim jezicima",
- "uls-betafeature-desc": "Prikažuje kraću jezičku listu samo sa vama bitnim jezicima.",
+ "uls-betafeature-desc": "Prikažuje sažet spisak jezika, samo sa vama bitnim jezicima.",
"ext-uls-display-settings-title": "Podešavanja prikaza",
"ext-uls-display-settings-language-tab": "Jezik",
"ext-uls-display-settings-fonts-tab": "Fontovi",
@@ -54,5 +58,7 @@
"ext-uls-input-disable-notification-info-personal": "Možete omogućiti alate za unos u bilo koje vreme na podešavanjima jezika.",
"ext-uls-input-disable-notification-info-interlanguage": "Možete omogućiti alatke za unos u bilo koje vreme na podešavanjima jezika pored spiska jezika.",
"ext-uls-language-settings-applying": "Primenjujem...",
- "ext-uls-compact-link-count": "{{PLURAL:$1|Još jedan jezik|Još $1 jezika}}"
+ "ext-uls-compact-link-count": "Još {{PLURAL:$1|1=jedan|$1}} {{PLURAL:$1|jezik|jezika}}",
+ "prefs-languages": "Jezici",
+ "ext-uls-compact-language-links-preference": "Koristi [[$1|sažet spisak jezika]], samo sa vama bitnim jezicima."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/sv.json b/MLEB/UniversalLanguageSelector/i18n/sv.json
index 6ae9cd96..281dd812 100644
--- a/MLEB/UniversalLanguageSelector/i18n/sv.json
+++ b/MLEB/UniversalLanguageSelector/i18n/sv.json
@@ -4,7 +4,8 @@
"Jopparn",
"WikiPhoenix",
"Lokal Profil",
- "Albinomamba"
+ "Albinomamba",
+ "Ainali"
]
},
"uls-desc": "Ger användaren flera sätt att välja ett språk och justera språkinställningar",
@@ -57,15 +58,9 @@
"ext-uls-input-disable-notification-info-personal": "Du kan aktivera verktygen för indata när som helst från språkinställningarna.",
"ext-uls-input-disable-notification-info-interlanguage": "Du kan aktivera verktygen för indata när som helst från språkinställningarna bredvid språklistan.",
"ext-uls-language-settings-applying": "Tillämpar...",
- "ext-uls-compact-link-count": "{{PLURAL:$1|Ett till|$1 till}}",
- "apihelp-languagesearch-description": "Sök efter språknamn i valfritt skriftsystem.",
- "apihelp-languagesearch-param-search": "Söksträng.",
- "apihelp-languagesearch-param-typos": "Antalet felstavningar som tillåts i söksträngen.",
- "apihelp-languagesearch-example-1": "Sök efter \"Te\"",
- "apihelp-languagesearch-example-2": "Sök efter \"ഫി\"",
- "apihelp-languagesearch-example-3": "Sök efter \"ഫി\", tillåter ett stavfel",
- "apihelp-ulslocalization-description": "Få lokalanpassningen av ULS på ett visst språk.",
- "apihelp-ulslocalization-param-language": "Språkkod.",
- "apihelp-ulslocalization-example-1": "Få lokalanpassning för Tamil",
- "apihelp-ulslocalization-example-2": "Få lokalanpassning för Hindi"
+ "ext-uls-compact-link-count": "{{PLURAL:$1|Ett till|$1 fler}}",
+ "ext-uls-compact-link-info": "Alla språk (urval baserat på vanliga val av dig och andra)",
+ "prefs-languages": "Språk",
+ "ext-uls-compact-language-links-preference": "Använd en [[$1|kompakt språklista]] med språk som är relevanta för dig.",
+ "ext-uls-compact-no-results": "Denna sida finns inte tillgänglig på språket du sökte efter."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/sw.json b/MLEB/UniversalLanguageSelector/i18n/sw.json
index 490d2aaf..d28da9df 100644
--- a/MLEB/UniversalLanguageSelector/i18n/sw.json
+++ b/MLEB/UniversalLanguageSelector/i18n/sw.json
@@ -2,9 +2,12 @@
"@metadata": {
"authors": [
"Lloffiwr",
- "Muddyb Blast Producer"
+ "Muddyb Blast Producer",
+ "Muddyb",
+ "Xð"
]
},
+ "uls-plang-title-languages": "Lugha",
"ext-uls-select-language-settings-icon-tooltip": "Mipangilio ya lugha",
"ext-uls-undo-language-tooltip-text": "Lugha imebadilishwa kutoka $1",
"ext-uls-language-settings-preferences-link": "Mipangilio mingine ya lugha",
diff --git a/MLEB/UniversalLanguageSelector/i18n/ta.json b/MLEB/UniversalLanguageSelector/i18n/ta.json
index 2fb99d23..db7d767c 100644
--- a/MLEB/UniversalLanguageSelector/i18n/ta.json
+++ b/MLEB/UniversalLanguageSelector/i18n/ta.json
@@ -4,10 +4,12 @@
"Karthi.dr",
"Logicwiki",
"Sank",
- "Santhosh.thottingal"
+ "Santhosh.thottingal",
+ "Xð"
]
},
"uls-desc": "பயனருக்கு மொழியை மாற்றவும் மொழி அமைப்புகளை மாற்றவும் செய்ய பல வழிகளை தருகின்றது",
+ "uls-plang-title-languages": "மொழிகள்",
"ext-uls-select-language-settings-icon-tooltip": "மொழி அமைப்புகள்",
"ext-uls-undo-language-tooltip-text": "மொழி $1 லிருந்து மாற்றப்பட்டது",
"ext-uls-language-settings-preferences-link": "மேலதிக மொழி அமைப்புகள்",
diff --git a/MLEB/UniversalLanguageSelector/i18n/te.json b/MLEB/UniversalLanguageSelector/i18n/te.json
index affe349a..c5dc165c 100644
--- a/MLEB/UniversalLanguageSelector/i18n/te.json
+++ b/MLEB/UniversalLanguageSelector/i18n/te.json
@@ -3,13 +3,17 @@
"authors": [
"Veeven",
"Arjunaraoc",
- "రహ్మానుద్దీన్"
+ "రహ్మానుద్దీన్",
+ "Chaduvari"
]
},
+ "uls-desc": "భాషను ఎంచుకుని, భాష సెట్టింగులను మార్చుకునేందుకు వాడుకరికి అనేక మార్గాలను చూపిస్తుంది",
"uls-plang-title-languages": "భాషలు",
"ext-uls-select-language-settings-icon-tooltip": "భాషా అమరికలు",
"ext-uls-undo-language-tooltip-text": "భాషను $1 నుండి మార్చారు",
"ext-uls-language-settings-preferences-link": "మరిన్ని భాషా అమరికలు",
+ "uls-betafeature-label": "సంక్షిప్త భాషా లింకులు",
+ "uls-betafeature-desc": "మీకు సంబంధించిన భాషలతో మాత్రమే కూడిన చిన్న జాబితా చూపిస్తుంది.",
"ext-uls-display-settings-title": "ప్రదర్శన అమరికలు",
"ext-uls-display-settings-language-tab": "భాష",
"ext-uls-display-settings-fonts-tab": "ఖతులు",
@@ -23,7 +27,9 @@
"ext-uls-display-settings-ui-language": "ప్రదర్శనా భాష",
"ext-uls-display-settings-anon-label": "ప్రదర్శనా భాష:",
"ext-uls-display-settings-anon-same-as-content": "$1 (విషయపు భాషే)",
+ "ext-uls-display-settings-anon-log-in-cta": "మెనూలో వేరే భాషను ఎంచుకునేందుకు [[Special:UserLogin|లాగినవండి]].",
"ext-uls-webfonts-settings-info-link": "మరింత సమాచారం",
+ "ext-uls-webfonts-select-for": "$1 కు ఫాంటును ఎంచుకోండి",
"ext-uls-webfonts-select-for-ui-info": "వాడుకరి ముఖాంతరానికి వాడాల్సిన ఖతి",
"ext-uls-webfonts-select-for-content-info": "విషయానికి వాడాల్సిన ఖతి",
"ext-uls-back-to-display-settings": "తిరిగి ప్రదర్శన అమరికలకు",
@@ -38,5 +44,9 @@
"jquery-ime-other-languages": "ఇతర భాషలు",
"jquery-ime-help": "సహాయం",
"ext-uls-input-disable-notification-undo": "రద్దుచెయ్యి",
- "ext-uls-compact-link-count": "{{PLURAL:$1|మరొక్కటి|ఇంకా $1}}"
+ "ext-uls-compact-link-count": "{{PLURAL:$1|మరొక్కటి|ఇంకా $1}}",
+ "ext-uls-compact-link-info": "భాషలన్నీ (మీరు, ఇతరులూ ఎంచుకున్నవాటి నుంచి ఎంచినవి)",
+ "prefs-languages": "భాషలు",
+ "ext-uls-compact-language-links-preference": "మీకు సంబంధించిన భాషలు కలిగిన ఒక [[$1|సంగ్రహ భాషా జాబితా]] వాడండి.",
+ "ext-uls-compact-no-results": "మీరు వెతికిన భాషలో ఈ పేజీ లేదు."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/tl.json b/MLEB/UniversalLanguageSelector/i18n/tl.json
index f72ca3e8..48cd6519 100644
--- a/MLEB/UniversalLanguageSelector/i18n/tl.json
+++ b/MLEB/UniversalLanguageSelector/i18n/tl.json
@@ -2,25 +2,42 @@
"@metadata": {
"authors": [
"Sky Harbor",
- "AnakngAraw"
+ "AnakngAraw",
+ "Xð",
+ "Jojit fb"
]
},
"uls-desc": "Nagbibigay sa tagagamit ng ilang mga paraan upang makapili ng isang wika at upang mabago ang mga katakdaan ng wika",
+ "uls-plang-title-languages": "Mga wika",
"ext-uls-select-language-settings-icon-tooltip": "Mga kagustuhan sa wika",
"ext-uls-undo-language-tooltip-text": "Ipinalit ang wika mula sa $1",
+ "ext-uls-language-settings-preferences-link": "Karagdagang kagustuhang pang-wika",
+ "uls-betafeature-label": "Mga kompaktong kawing panwika",
+ "uls-betafeature-desc": "Ipakita ang isang mas maigsing bersiyon ng talaan ng mga wika, kung saan makikita lamang ang mga wikang mas may kaugnayan sa inyo.",
"ext-uls-display-settings-language-tab": "Wika",
"ext-uls-display-settings-fonts-tab": "Estilo ng titik",
"ext-uls-display-settings-desc": "Itakda ang wikang ginagamit para sa mga menu at estilo ng titik.",
+ "ext-uls-language-settings-title": "Mga kagustuhan sa wika",
"ext-uls-language-settings-apply": "Ilapat ang mga kagustuhan",
"ext-uls-language-settings-cancel": "Huwag ituloy",
"ext-uls-language-buttons-help": "Palitan ang wika ng mga menu. Hindi maaapektuhan ang wika ng nilalaman.",
"ext-uls-display-settings-anon-same-as-content": "$1 (pareho ng nilalaman)",
- "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Lumagda]] upang mamili ng ibang wika para sa mga menu.",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Mag-login]] upang mamili ng ibang wika para sa mga menu.",
+ "ext-uls-webfonts-settings-info-link": "Karagdagang impormasyon",
"ext-uls-webfonts-select-for": "Mamili ng estilo ng titik para sa $1",
"ext-uls-webfonts-select-for-content-info": "Estilo ng titik na ginagamit para sa nilalaman",
"ext-uls-webfonts-system-font": "Estilo ng titik na gamit ng sistema",
"ext-uls-input-settings-desc": "Nais mong magsulat gamit ng ibang wika?",
+ "ext-uls-input-settings-ui-language": "Wikang ginagamit sa pagsulat",
+ "ext-uls-ime-help": "Paano gamitin",
"ext-uls-disable-input-method": "Gamitin ang katutubong tipaan",
+ "ext-uls-input-settings-more-languages-tooltip": "Karagdagang wika",
+ "jquery-ime-other-languages": "Ibang mga wika",
"jquery-ime-disable-text": "Gamitin ang katutubong tipaan",
- "jquery-ime-help": "Tulong"
+ "jquery-ime-help": "Tulong",
+ "ext-uls-compact-link-count": "{{PLURAL:$1|Isa pa|$1 pa}}",
+ "ext-uls-compact-link-info": "Lahat ng wika (unang seleksiyon mula sa mga karaniwang pagpili mo at ng iba)",
+ "prefs-languages": "Mga wika",
+ "ext-uls-compact-language-links-preference": "Gumamit ng isang [[$1|talaang kompakto ng mga wika]], na may mga wikang may kaugnayan sa inyo.",
+ "ext-uls-compact-no-results": "Hindi makunan ang pahinang ito sa wikang hinahanapan mo."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/tr.json b/MLEB/UniversalLanguageSelector/i18n/tr.json
index 4eea0f79..e70a864a 100644
--- a/MLEB/UniversalLanguageSelector/i18n/tr.json
+++ b/MLEB/UniversalLanguageSelector/i18n/tr.json
@@ -5,13 +5,18 @@
"Incelemeelemani",
"Meelo",
"Rapsar",
- "Sayginer"
+ "Sayginer",
+ "McAang",
+ "Katpatuka",
+ "Hedda",
+ "By erdo can"
]
},
"uls-desc": "Kullanıcının bir dil seçmesi ve dil ayarlarını değiştirmesi için seçenekler sağlar.",
"uls-plang-title-languages": "Diller",
"ext-uls-select-language-settings-icon-tooltip": "Dil ayarları",
"ext-uls-undo-language-tooltip-text": "Dil, $1 dilinden değiştirildi.",
+ "ext-uls-undo-language-tooltip-text-local": "Bu viki için dil değişti. Tüm vikilerin dilini değiştirmek için [[Special:GlobalPreferences|küresel tercihlerinizi]] kontrol edin.",
"ext-uls-language-settings-preferences-link": "Daha fazla dil ayarları",
"uls-betafeature-label": "Daraltılmış dil bağlantıları",
"uls-betafeature-desc": "Yalnızca sizinle daha alakalı olan dillerin yer aldığı, daha kısa bir dil listesi görüntüler.",
@@ -59,5 +64,8 @@
"ext-uls-input-disable-notification-info-interlanguage": "Dil ayarlarını dil listesinin yanında bulunan giriş araçlarından etkinleştirebilirsiniz.",
"ext-uls-language-settings-applying": "Uygulanıyor...",
"ext-uls-compact-link-count": "{{PLURAL:$1|Bir tane daha|$1 tane daha}}",
- "apihelp-ulslocalization-param-language": "Dil kodu."
+ "ext-uls-compact-link-info": "Tüm diller (sizin ve başkalarının ortak tercihlerinden ilk seçim)",
+ "prefs-languages": "Diller",
+ "ext-uls-compact-language-links-preference": "Sadece seni ilgilendiren [[$1|dil listesi]] kullan.",
+ "ext-uls-compact-no-results": "Bu sayfa, aradığınız dilde mevcut değil."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/tt-cyrl.json b/MLEB/UniversalLanguageSelector/i18n/tt-cyrl.json
index 1577791c..8d817896 100644
--- a/MLEB/UniversalLanguageSelector/i18n/tt-cyrl.json
+++ b/MLEB/UniversalLanguageSelector/i18n/tt-cyrl.json
@@ -4,9 +4,12 @@
"Ильнар"
]
},
+ "uls-plang-title-languages": "Телләр",
"ext-uls-select-language-settings-icon-tooltip": "Тел көйләнмәләре",
"ext-uls-undo-language-tooltip-text": "Алдагы тел: $1",
"ext-uls-language-settings-preferences-link": "Өстәмә тел көйләнмәләре",
+ "uls-betafeature-label": "Тел сылтамасының җыйнаклы исемлеге",
+ "uls-betafeature-desc": "Тел сылтамаларының сезнең өчен кирәкле булган кыскача исемлеген күрсәтә.",
"ext-uls-display-settings-title": "Күрсәтү көйләнмәләре",
"ext-uls-display-settings-language-tab": "Тел",
"ext-uls-display-settings-fonts-tab": "Шрифтлар",
@@ -19,8 +22,11 @@
"ext-uls-display-settings-font-settings": "Шрифт көйләнмәләре",
"ext-uls-display-settings-ui-language": "Сайланган тел",
"ext-uls-display-settings-anon-label": "Сайланган тел:",
- "ext-uls-display-settings-anon-same-as-content": "татарча (эчтәлектәге кебек)",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (эчтәлектәге кебек)",
"ext-uls-display-settings-anon-log-in-cta": "Меню өчен башка телне сайлау өчен, [[Special:UserLogin|керегез]].",
+ "ext-uls-webfonts-settings-title": "Кирәк булганда шрифтларны йөкләү",
+ "ext-uls-webfonts-settings-info": "Шрифтлар булмаган очракта аларны автоматик рәвештә йөкләү һәм куллану.",
+ "ext-uls-webfonts-settings-info-link": "Тулырак мәгълүмат",
"ext-uls-webfonts-select-for": "$1 өчен шрифт сайлау",
"ext-uls-webfonts-select-for-ui-info": "Кулланучының интерфейс шрифты",
"ext-uls-webfonts-select-for-content-info": "Текст өчен шрифт",
@@ -32,13 +38,21 @@
"ext-uls-input-settings-ime-settings": "$1 өчен көймәләр",
"ext-uls-input-settings-ui-language": "Хат теле",
"ext-uls-back-to-input-settings": "Кертү көйләнмәләренә кайту",
+ "ext-uls-ime-help": "Ничек кулланырга",
"ext-uls-disable-input-method": "Төп көймәләрне куллану",
"ext-uls-input-settings-more-languages-tooltip": "Башка телләр",
"jquery-ime-other-languages": "Башка телләрдә",
"jquery-ime-disable-text": "Төп көймәләрне куллану",
"jquery-ime-help": "Ярдәм",
+ "ext-uls-input-disable": "Кертү мөмкинлеген бетерү",
+ "ext-uls-input-enable": "Кертү коралларын ачу",
+ "ext-uls-input-disable-info": "Кертү кораллары ябык",
"ext-uls-input-settings-noime": "Әлеге тел өчен күчерелү куелмаган.",
- "ext-uls-input-disable-notification": "Кертү җиһазлары ябылды",
+ "ext-uls-input-disable-notification": "Кертү кораллары ябылды",
"ext-uls-input-disable-notification-undo": "Кире кагу",
- "ext-uls-input-disable-notification-info-personal": "Кертү җиһазларын тел көйләнмәләреннән кабызырга мөмкин."
+ "ext-uls-input-disable-notification-info-personal": "Кертү җиһазларын тел көйләнмәләреннән кабызырга мөмкин.",
+ "ext-uls-language-settings-applying": "Куллану...",
+ "ext-uls-compact-link-count": "Башка {{PLURAL:$1|телдә|$1 телдә}}",
+ "prefs-languages": "Телләр",
+ "ext-uls-compact-language-links-preference": "Сезнең өчен мөһим булган телләр исемлеген куллану"
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/uk.json b/MLEB/UniversalLanguageSelector/i18n/uk.json
index 2637d6c2..13462917 100644
--- a/MLEB/UniversalLanguageSelector/i18n/uk.json
+++ b/MLEB/UniversalLanguageSelector/i18n/uk.json
@@ -6,7 +6,8 @@
"RLuts",
"Ата",
"Юрій Булка",
- "SteveR"
+ "SteveR",
+ "Piramidion"
]
},
"uls-desc": "Надає користувачу декілька способів вибрати мову та налаштувати мовні параметри.",
@@ -60,14 +61,8 @@
"ext-uls-input-disable-notification-info-interlanguage": "Ви можете увімкнути знаряддя вводу в будь-який момент через налаштування мови біля переліку мов.",
"ext-uls-language-settings-applying": "Застосування...",
"ext-uls-compact-link-count": "Ще {{PLURAL:$1|одна|$1}}",
- "apihelp-languagesearch-description": "Пошук назв мов у будь-якому скрипті.",
- "apihelp-languagesearch-param-search": "Рядок пошуку.",
- "apihelp-languagesearch-param-typos": "Кількість орфографічних помилок, дозволених у рядку пошуку.",
- "apihelp-languagesearch-example-1": "Пошук «Te»",
- "apihelp-languagesearch-example-2": "Пошук «ഫി»",
- "apihelp-languagesearch-example-3": "Пошук «ഫി», допускається одна помилка",
- "apihelp-ulslocalization-description": "Отримати локалізацію ULS вказаною мовою.",
- "apihelp-ulslocalization-param-language": "Код мови.",
- "apihelp-ulslocalization-example-1": "Отримати локалізацію тамільською",
- "apihelp-ulslocalization-example-2": "Отримати локалізацію хінді"
+ "ext-uls-compact-link-info": "Усі мови (початковий вибір з поширених виборів Вами та іншими)",
+ "prefs-languages": "Мови",
+ "ext-uls-compact-language-links-preference": "Використовувати [[$1|компактний список мов]], з мовами, що є релевантними для Вас.",
+ "ext-uls-compact-no-results": "Ця сторінка недоступна тією мовою, якою Ви проводили пошук."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/ur.json b/MLEB/UniversalLanguageSelector/i18n/ur.json
index 9be6cd2e..969f69c0 100644
--- a/MLEB/UniversalLanguageSelector/i18n/ur.json
+++ b/MLEB/UniversalLanguageSelector/i18n/ur.json
@@ -2,13 +2,62 @@
"@metadata": {
"authors": [
"Noor2020",
- "Muhammad Shuaib"
+ "Muhammad Shuaib",
+ "BukhariSaeed"
]
},
"uls-desc": "صارف کو زبان کے انتخاب اور زبان کی ترتیبات کی تنظیم کے لیے متعدد راہیں فراہم کرتا ہے",
"uls-plang-title-languages": "زبانیں",
"ext-uls-select-language-settings-icon-tooltip": "زبان کی ترتیبات",
"ext-uls-undo-language-tooltip-text": "$1 سے زبان تبدیل ہوگئی",
- "ext-uls-language-settings-preferences-link": "مزید ترتیبات زبان",
- "ext-uls-language-buttons-help": "مینیو کی زبان تبدیل کریں ۔ مواد کی بولی اثرانداز نہیں ہوں گے ۔"
+ "ext-uls-language-settings-preferences-link": "زبان کی مزید ترتیبات",
+ "uls-betafeature-label": "پیوستہ روابط زبان",
+ "uls-betafeature-desc": "زبانوں کی مختصر فہرست دیکھیں جس میں محض آپ سے متعلق زبانیں ہی شامل ہوں گی۔",
+ "ext-uls-display-settings-title": "ڈسپلے ترتیبات",
+ "ext-uls-display-settings-language-tab": "زبان",
+ "ext-uls-display-settings-fonts-tab": "فانٹ",
+ "ext-uls-display-settings-title-short": "ڈسپلے",
+ "ext-uls-display-settings-desc": "مینو اور فانٹ کے لیے استعمال ہونے والی زبان منتخب کریں۔",
+ "ext-uls-language-settings-title": "زبان کی ترتیبات",
+ "ext-uls-language-settings-apply": "ترتیبات نافذ کریں",
+ "ext-uls-language-settings-cancel": "منسوخ کریں",
+ "ext-uls-language-buttons-help": "مینیو کی زبان تبدیل کریں۔ البتہ مواد کی زبان تبدیل نہیں ہوگی۔",
+ "ext-uls-display-settings-font-settings": "فانٹ کی ترتیبات",
+ "ext-uls-display-settings-ui-language": "ظاہری زبان",
+ "ext-uls-display-settings-anon-label": "ظاہری زبان:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (مواد کی مانند)",
+ "ext-uls-display-settings-anon-log-in-cta": "مینو میں دوسری زبان منتخب کرنے کے لیے آپ کو [[Special:UserLogin|لاگ ان]] کرنا ہوگا۔",
+ "ext-uls-webfonts-settings-title": "بوقت ضرورت فانٹ ڈاؤنلوڈ کریں",
+ "ext-uls-webfonts-settings-info": "غیر موجود فانٹ خودکار طور پر ڈاؤنلوڈ کریں اور راجح فانٹ منتخب کرنے کی اجازت دیں۔",
+ "ext-uls-webfonts-settings-info-link": "مزید معلومات",
+ "ext-uls-webfonts-select-for": "$1 زبان کے لیے فانٹ منتخب کریں",
+ "ext-uls-webfonts-select-for-ui-info": "صارف انٹرفیس کے لیے مستعمل فانٹ",
+ "ext-uls-webfonts-select-for-content-info": "مواد کے لیے مستعمل فانٹ",
+ "ext-uls-webfonts-system-font": "سسٹم فانٹ",
+ "ext-uls-back-to-display-settings": "ڈسپلے کی ترتیبات میں واپس جائیں",
+ "ext-uls-input-settings-title": "ترتیبات اندراج",
+ "ext-uls-input-settings-title-short": "اندراج",
+ "ext-uls-input-settings-desc": "دوسری زبان میں لکھنا چاہتے ہیں؟",
+ "ext-uls-input-settings-ime-settings": "$1 زبان کے طریقہ ہائے اندراج",
+ "ext-uls-input-settings-ui-language": "تحریر کے لیے مستعمل زبان",
+ "ext-uls-back-to-input-settings": "ترتیبات اندراج میں واپس جائیں",
+ "ext-uls-ime-help": "طریقہ استعمال",
+ "ext-uls-disable-input-method": "ذاتی کی بورڈ استعمال کریں",
+ "ext-uls-input-settings-more-languages-tooltip": "مزید زبانیں",
+ "jquery-ime-other-languages": "دیگر زبانیں",
+ "jquery-ime-disable-text": "ذاتی کی بورڈ استعمال کریں",
+ "jquery-ime-help": "معاونت",
+ "ext-uls-input-disable": "آلات اندراج غیر فعال کریں",
+ "ext-uls-input-enable": "آلات اندراج فعال کریں",
+ "ext-uls-input-disable-info": "آلات اندراج غیر فعال ہیں۔",
+ "ext-uls-input-settings-noime": "اس زبان کے طریقہ ہائے اندراج دستیاب نہیں۔",
+ "ext-uls-input-disable-notification": "آلات اندراج غیر فعال ہو گئے۔",
+ "ext-uls-input-disable-notification-undo": "ترمیم رد کریں",
+ "ext-uls-input-disable-notification-info-personal": "ترتیبات زبان سے آپ کسی بھی وقت آلات اندراج کو فعال کر سکتے ہیں۔",
+ "ext-uls-input-disable-notification-info-interlanguage": "زبانوں کی فہرست کے قریب موجود ترتیبات زبان سے آپ کسی بھی وقت آلات اندراج کو فعال کر سکتے ہیں۔",
+ "ext-uls-language-settings-applying": "لاگو ہو رہا ہے۔۔۔",
+ "ext-uls-compact-link-count": "{{PLURAL:$1|مزید $1 زبانیں}}",
+ "ext-uls-compact-link-info": "تمام زبانیں (آپ اور دیگر صارفین کی مشترکہ پسند کا انتخاب)",
+ "prefs-languages": "زبانیں",
+ "ext-uls-compact-language-links-preference": "محض اپنے آپ سے متعلق [[$1|زبان کی پیوستہ فہرست]] استعمال کریں۔"
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/vi.json b/MLEB/UniversalLanguageSelector/i18n/vi.json
index bd78f625..41e82884 100644
--- a/MLEB/UniversalLanguageSelector/i18n/vi.json
+++ b/MLEB/UniversalLanguageSelector/i18n/vi.json
@@ -9,6 +9,7 @@
"uls-plang-title-languages": "Ngôn ngữ",
"ext-uls-select-language-settings-icon-tooltip": "Tùy chọn ngôn ngữ",
"ext-uls-undo-language-tooltip-text": "Đã đổi ngôn ngữ từ $1",
+ "ext-uls-undo-language-tooltip-text-local": "Ngôn ngữ wiki này đã thay đổi. Kiểm tra [[Special:GlobalPreferences|tùy chọn toàn cục]] để thay đổi ngôn ngữ tại tất cả các wiki.",
"ext-uls-language-settings-preferences-link": "Thêm tùy chọn ngôn ngữ",
"uls-betafeature-label": "Danh sách liên kết ngôn ngữ thu gọn",
"uls-betafeature-desc": "Thu gọn danh sách các liên kết giữa ngôn ngữ để chỉ hiển thị các ngôn ngữ mà bạn có thể muốn sử dụng.",
@@ -56,14 +57,8 @@
"ext-uls-input-disable-notification-info-interlanguage": "Bạn có thể bật bộ gõ bất cứ lúc nào từ tùy chọn ngôn ngữ bên cạnh danh sách ngôn ngữ.",
"ext-uls-language-settings-applying": "Đang áp dụng…",
"ext-uls-compact-link-count": "$1 nữa",
- "apihelp-languagesearch-description": "Tìm kiếm các tên người dùng trong hệ thống viết nào.",
- "apihelp-languagesearch-param-search": "Chuỗi tìm kiếm.",
- "apihelp-languagesearch-param-typos": "Số lỗi chính tả được cho phép trong chuỗi tìm kiếm.",
- "apihelp-languagesearch-example-1": "Tìm kiếm cho “Te”",
- "apihelp-languagesearch-example-2": "Tìm kiếm cho “ഫി”",
- "apihelp-languagesearch-example-3": "Tìm kiếm cho “ഫി” mà cho phép một lỗi chính tả",
- "apihelp-ulslocalization-description": "Lấy bản dịch ULS trong ngôn ngữ được chỉ định.",
- "apihelp-ulslocalization-param-language": "Chuỗi ngôn ngữ.",
- "apihelp-ulslocalization-example-1": "Lấy bản dịch tiếng Tamil",
- "apihelp-ulslocalization-example-2": "Lấy bản dịch tiếng Hindi"
+ "ext-uls-compact-link-info": "Tất cả các ngôn ngữ (lựa chọn sơ bộ từ các ngôn ngữ thường được chọn bởi bạn và người khác)",
+ "prefs-languages": "Ngôn ngữ",
+ "ext-uls-compact-language-links-preference": "[[$1|Danh sách ngôn ngữ ngắn gọn]] chỉ có các ngôn ngữ quan trọng đối với bạn",
+ "ext-uls-compact-no-results": "Trang này không có sẵn trong ngôn ngữ bạn đang tìm."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/vo.json b/MLEB/UniversalLanguageSelector/i18n/vo.json
index bd300e4b..ce84b4b4 100644
--- a/MLEB/UniversalLanguageSelector/i18n/vo.json
+++ b/MLEB/UniversalLanguageSelector/i18n/vo.json
@@ -1,8 +1,10 @@
{
"@metadata": {
"authors": [
- "Malafaya"
+ "Malafaya",
+ "Xð"
]
},
+ "uls-plang-title-languages": "Püks",
"ext-uls-input-settings-desc": "Penol-li püko votik?"
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/xmf.json b/MLEB/UniversalLanguageSelector/i18n/xmf.json
index 392c938b..75df0431 100644
--- a/MLEB/UniversalLanguageSelector/i18n/xmf.json
+++ b/MLEB/UniversalLanguageSelector/i18n/xmf.json
@@ -1,8 +1,9 @@
{
"@metadata": {
"authors": [
- "Silovan"
+ "Silovan",
+ "Xð"
]
},
- "apihelp-ulslocalization-param-language": "ნინაშ კოდი."
+ "uls-plang-title-languages": "ნინეფი"
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/yi.json b/MLEB/UniversalLanguageSelector/i18n/yi.json
index 889153b1..788757e4 100644
--- a/MLEB/UniversalLanguageSelector/i18n/yi.json
+++ b/MLEB/UniversalLanguageSelector/i18n/yi.json
@@ -10,6 +10,8 @@
"ext-uls-select-language-settings-icon-tooltip": "שפראך איינשטעלונגען",
"ext-uls-undo-language-tooltip-text": "שפּראַך געענדערט פון $1",
"ext-uls-language-settings-preferences-link": "נאך שפראך איינשטעלונגען",
+ "uls-betafeature-label": "קאמפאקטע שפראכלינקען",
+ "uls-betafeature-desc": "ווייזן א קערצערע ווערסיע פון דער שפראכן־ליסטע, מיט נאר די שפראכן וואס זענען מער רעלעוואנט צו אייך.",
"ext-uls-display-settings-title": "אויסשטעל איינשטעלונגען",
"ext-uls-display-settings-language-tab": "שפראַך",
"ext-uls-display-settings-fonts-tab": "פֿאנטן",
@@ -51,5 +53,6 @@
"ext-uls-input-disable-notification": "איינגאב געצייג זענען געווארן אומאקטיוויזירט",
"ext-uls-input-disable-notification-undo": "אַנולירן",
"ext-uls-input-disable-notification-info-personal": "איר קענט אקטיוויזירן די איינגאב געצייג אבי ווען פון די שפראך שטעלונגען.",
- "apihelp-ulslocalization-param-language": "שפראַך קאד."
+ "prefs-languages": "שפּראַכן",
+ "ext-uls-compact-language-links-preference": "ניצן א [[$1|קאמפאקטע שפראכן־ליסטע]], מיט שפראכן רעלעוואנט צו אייך."
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/zh-hans.json b/MLEB/UniversalLanguageSelector/i18n/zh-hans.json
index e072d370..a8a653c8 100644
--- a/MLEB/UniversalLanguageSelector/i18n/zh-hans.json
+++ b/MLEB/UniversalLanguageSelector/i18n/zh-hans.json
@@ -58,18 +58,12 @@
"ext-uls-input-settings-noime": "没有该语言的输入法。",
"ext-uls-input-disable-notification": "输入工具已停用",
"ext-uls-input-disable-notification-undo": "撤销",
- "ext-uls-input-disable-notification-info-personal": "你可以在任何时间在语言设置中启用输入工具。",
- "ext-uls-input-disable-notification-info-interlanguage": "你可以在任何时间在语言列表旁的语言设置中启用输入工具。",
+ "ext-uls-input-disable-notification-info-personal": "您可以在任何时间在语言设置中启用输入工具。",
+ "ext-uls-input-disable-notification-info-interlanguage": "您可以在任何时间在语言列表旁的语言设置中启用输入工具。",
"ext-uls-language-settings-applying": "正在应用...",
"ext-uls-compact-link-count": "还有$1种语言",
- "apihelp-languagesearch-description": "使用任何字母搜索语言名称。",
- "apihelp-languagesearch-param-search": "搜索字符串。",
- "apihelp-languagesearch-param-typos": "搜索字符串中允许的拼写错误数量。",
- "apihelp-languagesearch-example-1": "搜索“Te”",
- "apihelp-languagesearch-example-2": "搜索“ഫി”",
- "apihelp-languagesearch-example-3": "搜索“ഫി”,允许一个错字",
- "apihelp-ulslocalization-description": "获得指定语言的ULS本地化。",
- "apihelp-ulslocalization-param-language": "语言代码。",
- "apihelp-ulslocalization-example-1": "获得泰米尔语本地化",
- "apihelp-ulslocalization-example-2": "获得印地语本地化"
+ "ext-uls-compact-link-info": "所有语言(来自您和其他人共同选择的初始选项)",
+ "prefs-languages": "语言",
+ "ext-uls-compact-language-links-preference": "使用[[$1|紧凑的语言列表]],它包含与您有关的语言。",
+ "ext-uls-compact-no-results": "此页面在您搜索的语言中不可用。"
}
diff --git a/MLEB/UniversalLanguageSelector/i18n/zh-hant.json b/MLEB/UniversalLanguageSelector/i18n/zh-hant.json
index dadacecc..77f60ec1 100644
--- a/MLEB/UniversalLanguageSelector/i18n/zh-hant.json
+++ b/MLEB/UniversalLanguageSelector/i18n/zh-hant.json
@@ -8,13 +8,16 @@
"Spring Roll Conan",
"Liangent",
"LNDDYL",
- "Cwlin0416"
+ "Cwlin0416",
+ "Waihorace",
+ "Kly"
]
},
"uls-desc": "為使用者提供多種方法來選擇語言和調整語言設定",
"uls-plang-title-languages": "語言",
"ext-uls-select-language-settings-icon-tooltip": "語言設定",
- "ext-uls-undo-language-tooltip-text": "語言已從 $1 更改",
+ "ext-uls-undo-language-tooltip-text": "語言已從 $1 變更",
+ "ext-uls-undo-language-tooltip-text-local": "已更改此 wiki 的語言。請檢查您的[[Special:GlobalPreferences|全域設定]]來對所有 wiki 更改語言。",
"ext-uls-language-settings-preferences-link": "更多語言設定",
"uls-betafeature-label": "簡潔版語言連結",
"uls-betafeature-desc": "顯示較簡潔的語言清單,僅顯示與您相關的語言。",
@@ -62,12 +65,8 @@
"ext-uls-input-disable-notification-info-interlanguage": "你可隨時在語言清單旁的語言設定中開啟輸入工具。",
"ext-uls-language-settings-applying": "套用中...",
"ext-uls-compact-link-count": "還有 $1 種語言",
- "apihelp-languagesearch-description": "於任何 Script 搜尋語言名稱。",
- "apihelp-languagesearch-param-search": "搜尋字串。",
- "apihelp-languagesearch-param-typos": "允許於搜尋字串中的拼寫錯誤數量。",
- "apihelp-languagesearch-example-1": "搜尋 \"Te\"",
- "apihelp-languagesearch-example-2": "搜尋 \"ഫി\"",
- "apihelp-languagesearch-example-3": "搜尋 \"ഫി\",可允許一個錯字",
- "apihelp-ulslocalization-description": "取得指定語言的在地化 ULS。",
- "apihelp-ulslocalization-param-language": "語言代碼。"
+ "ext-uls-compact-link-info": "所有語言(來自您和其他人共同選擇的初始選項)",
+ "prefs-languages": "語言",
+ "ext-uls-compact-language-links-preference": "使用[[$1|較簡潔的語言列表]],包括與您相關的語言。",
+ "ext-uls-compact-no-results": "此頁面在您所搜尋的語言不可用。"
}
diff --git a/MLEB/UniversalLanguageSelector/includes/ResourceLoaderULSJsonMessageModule.php b/MLEB/UniversalLanguageSelector/includes/ResourceLoaderULSJsonMessageModule.php
index 4ce21903..465a5785 100644
--- a/MLEB/UniversalLanguageSelector/includes/ResourceLoaderULSJsonMessageModule.php
+++ b/MLEB/UniversalLanguageSelector/includes/ResourceLoaderULSJsonMessageModule.php
@@ -1,7 +1,6 @@
<?php
/**
- * ResourceLoaderModule subclass for loading the json
- * based localization to client-side code.
+ * ResourceLoader module for client-side loading of json-based localization.
*
* @file
* @ingroup Extensions
@@ -9,40 +8,46 @@
*/
/**
- * Packages a remote schema as a JavaScript ResourceLoader module.
- * @since 2013.11
+ * ResourceLoader module for client-side loading of json-based localization.
*/
class ResourceLoaderULSJsonMessageModule extends ResourceLoaderModule {
/**
* Part of the ResourceLoader module interface.
* Declares the core ext.uls.i18n module as a dependency.
- * @param ResourceLoaderContext $context
+ * @param ResourceLoaderContext|null $context
* @return string[] Module names.
*/
- function getDependencies( ResourceLoaderContext $context = null ) {
- return array( 'ext.uls.i18n' );
+ public function getDependencies( ResourceLoaderContext $context = null ) {
+ return [ 'ext.uls.i18n' ];
+ }
+
+ /**
+ * Get supported mobile targets
+ * @return string[] supported targets
+ */
+ public function getTargets() {
+ return [ 'desktop', 'mobile' ];
}
/**
- * Gets the last modified timestamp of this module.
- * The last modified timestamp controls caching.
* @param ResourceLoaderContext $context
- * @return int Unix timestamp.
+ * @return array
*/
- function getModifiedTime( ResourceLoaderContext $context ) {
+ public function getDefinitionSummary( ResourceLoaderContext $context ) {
$code = $context->getLanguage();
if ( !Language::isValidCode( $code ) ) {
$code = 'en';
}
-
- $mtimes = array_map(
- 'filemtime',
+ $fileHashes = array_map(
+ [ __CLASS__, 'safeFileHash' ],
ULSJsonMessageLoader::getFilenames( $code )
);
- // Make sure we have at least one entry
- $mtimes[] = 1;
- return max( $mtimes );
+ $summary = parent::getDefinitionSummary( $context );
+ $summary[] = [
+ 'fileHashes' => $fileHashes
+ ];
+ return $summary;
}
/**
@@ -51,13 +56,13 @@ class ResourceLoaderULSJsonMessageModule extends ResourceLoaderModule {
* @param ResourceLoaderContext $context
* @return string JavaScript code.
*/
- function getScript( ResourceLoaderContext $context ) {
+ public function getScript( ResourceLoaderContext $context ) {
$code = $context->getLanguage();
if ( !Language::isValidCode( $code ) ) {
$code = 'en';
}
- $params = array( $code, ULSJsonMessageLoader::getMessages( $code ) );
+ $params = [ $code, ULSJsonMessageLoader::getMessages( $code ) ];
return Xml::encodeJsCall( 'mw.uls.loadLocalization', $params );
}
diff --git a/MLEB/UniversalLanguageSelector/includes/ResourceLoaderULSModule.php b/MLEB/UniversalLanguageSelector/includes/ResourceLoaderULSModule.php
index de625d99..e2465439 100644
--- a/MLEB/UniversalLanguageSelector/includes/ResourceLoaderULSModule.php
+++ b/MLEB/UniversalLanguageSelector/includes/ResourceLoaderULSModule.php
@@ -1,6 +1,6 @@
<?php
/**
- * Resource loader module for UniversalLanguageSelector
+ * ResourceLoader module for UniversalLanguageSelector
*
* Copyright (C) 2012 Alolita Sharma, Amir Aharoni, Arun Ganesh, Brandon Harris,
* Niklas Laxström, Pau Giner, Santhosh Thottingal, Siebrand Mazeland and other
@@ -15,15 +15,15 @@
* @file
* @author Niklas Laxström
* @ingroup Extensions
- * @licence GNU General Public Licence 2.0 or later
- * @licence MIT License
+ * @license GPL-2.0-or-later
+ * @license MIT
*/
/**
- * Resource loader module for providing MediaWiki language names.
+ * ResourceLoader module for UniversalLanguageSelector
*/
class ResourceLoaderULSModule extends ResourceLoaderModule {
- protected $targets = array( 'desktop', 'mobile' );
+ protected $targets = [ 'desktop', 'mobile' ];
/**
* Get all the dynamic data for the content language to an array.
@@ -31,65 +31,28 @@ class ResourceLoaderULSModule extends ResourceLoaderModule {
* @param string $languageCode Language code
* @return array
*/
- protected function getData( $languageCode ) {
- $vars = array();
+ private function getData( $languageCode ) {
+ $vars = [];
$vars['wgULSLanguages'] = Language::fetchLanguageNames(
$languageCode,
'mwfile'
);
-
return $vars;
}
/**
- * @param $context ResourceLoaderContext
+ * @param ResourceLoaderContext $context
* @return string JavaScript code
*/
public function getScript( ResourceLoaderContext $context ) {
$languageCode = $context->getLanguage();
- $out = '';
- foreach ( $this->getData( $languageCode ) as $key => $value ) {
- $out .= Xml::encodeJsCall( 'mw.config.set', array( $key, $value ) );
- }
-
- return $out;
+ return ResourceLoader::makeConfigSetScript( $this->getData( $languageCode ) );
}
/**
- * Gets the last modified time for this module depending on the given
- * context.
- *
- * @param $context ResourceLoaderContext
- * @return int Unix timestamp
+ * @return bool
*/
- public function getModifiedTime( ResourceLoaderContext $context ) {
- $languageCode = $context->getLanguage();
-
- $cache = wfGetCache( CACHE_ANYTHING );
-
- // Since we are updating the timestamp on hash change, we need to
- // cache the hash per language to avoid updating the timestamp when
- // different languages are being requested.
- $key = wfMemcKey(
- 'uls',
- 'modulemodifiedhash',
- $this->getName(),
- $languageCode
- );
-
- $data = $this->getData( $languageCode );
- $hash = md5( serialize( $data ) );
-
- $result = $cache->get( $key );
- if ( is_array( $result ) && $result['hash'] === $hash ) {
- return $result['timestamp'];
- }
- $timestamp = wfTimestamp();
- $cache->set( $key, array(
- 'hash' => $hash,
- 'timestamp' => $timestamp,
- ) );
-
- return $timestamp;
+ public function enableModuleContentVersion() {
+ return true;
}
}
diff --git a/MLEB/UniversalLanguageSelector/includes/ULSJsonMessageLoader.php b/MLEB/UniversalLanguageSelector/includes/ULSJsonMessageLoader.php
index 856a5164..7b7334af 100644
--- a/MLEB/UniversalLanguageSelector/includes/ULSJsonMessageLoader.php
+++ b/MLEB/UniversalLanguageSelector/includes/ULSJsonMessageLoader.php
@@ -14,8 +14,8 @@
*
* @file
* @ingroup Extensions
- * @licence GNU General Public Licence 2.0 or later
- * @licence MIT License
+ * @license GPL-2.0-or-later
+ * @license MIT
* @since 2013.11
*/
@@ -27,7 +27,7 @@ class ULSJsonMessageLoader {
* @return string[]
*/
public static function getFilenames( $language ) {
- $filenames = array();
+ $filenames = [];
$languages = Language::getFallbacksFor( $language );
// Prepend the requested language code
@@ -44,9 +44,7 @@ class ULSJsonMessageLoader {
$filenames[] = __DIR__ . "/../i18n/$language.json";
}
- $filenames = array_filter( $filenames, function( $filename ) {
- return file_exists( $filename );
- } );
+ $filenames = array_filter( $filenames, 'file_exists' );
return $filenames;
}
@@ -57,7 +55,7 @@ class ULSJsonMessageLoader {
* @return array
*/
public static function getMessages( $language ) {
- $contents = array();
+ $contents = [];
foreach ( self::getFilenames( $language ) as $filename ) {
$contents += self::loadI18nFile( $filename );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/CREDITS b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/CREDITS
deleted file mode 100644
index 3a4eb5e2..00000000
--- a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/CREDITS
+++ /dev/null
@@ -1,9 +0,0 @@
-Credits
-=======
-
-Santhosh Thottingal
-Amir E. Aharoni
-Siebrand Mazeland
-Niklas Laxström
-Neil Kandalgaonkar
-David Chan
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/GPL-LICENSE b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/GPL-LICENSE
deleted file mode 100644
index 019694a9..00000000
--- a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/GPL-LICENSE
+++ /dev/null
@@ -1,342 +0,0 @@
-== GNU GENERAL PUBLIC LICENSE ==
-
-Version 2, June 1991
-
-Copyright (C) 1989, 1991 Free Software Foundation, Inc.
-51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
-Everyone is permitted to copy and distribute verbatim copies
-of this license document, but changing it is not allowed.
-
-=== Preamble ===
-
-The licenses for most software are designed to take away your
-freedom to share and change it. By contrast, the GNU General Public
-License is intended to guarantee your freedom to share and change free
-software--to make sure the software is free for all its users. This
-General Public License applies to most of the Free Software
-Foundation's software and to any other program whose authors commit to
-using it. (Some other Free Software Foundation software is covered by
-the GNU Library General Public License instead.) You can apply it to
-your programs, too.
-
-When we speak of free software, we are referring to freedom, not
-price. Our General Public Licenses are designed to make sure that you
-have the freedom to distribute copies of free software (and charge for
-this service if you wish), that you receive source code or can get it
-if you want it, that you can change the software or use pieces of it
-in new free programs; and that you know you can do these things.
-
-To protect your rights, we need to make restrictions that forbid
-anyone to deny you these rights or to ask you to surrender the rights.
-These restrictions translate to certain responsibilities for you if you
-distribute copies of the software, or if you modify it.
-
-For example, if you distribute copies of such a program, whether
-gratis or for a fee, you must give the recipients all the rights that
-you have. You must make sure that they, too, receive or can get the
-source code. And you must show them these terms so they know their
-rights.
-
-We protect your rights with two steps: (1) copyright the software, and
-(2) offer you this license which gives you legal permission to copy,
-distribute and/or modify the software.
-
-Also, for each author's protection and ours, we want to make certain
-that everyone understands that there is no warranty for this free
-software. If the software is modified by someone else and passed on, we
-want its recipients to know that what they have is not the original, so
-that any problems introduced by others will not reflect on the original
-authors' reputations.
-
-Finally, any free program is threatened constantly by software
-patents. We wish to avoid the danger that redistributors of a free
-program will individually obtain patent licenses, in effect making the
-program proprietary. To prevent this, we have made it clear that any
-patent must be licensed for everyone's free use or not licensed at all.
-
-The precise terms and conditions for copying, distribution and
-modification follow.
-
-== TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION ==
-
-'''0.''' This License applies to any program or other work which contains
-a notice placed by the copyright holder saying it may be distributed
-under the terms of this General Public License. The "Program", below,
-refers to any such program or work, and a "work based on the Program"
-means either the Program or any derivative work under copyright law:
-that is to say, a work containing the Program or a portion of it,
-either verbatim or with modifications and/or translated into another
-language. (Hereinafter, translation is included without limitation in
-the term "modification".) Each licensee is addressed as "you".
-
-Activities other than copying, distribution and modification are not
-covered by this License; they are outside its scope. The act of
-running the Program is not restricted, and the output from the Program
-is covered only if its contents constitute a work based on the
-Program (independent of having been made by running the Program).
-Whether that is true depends on what the Program does.
-
-'''1.''' You may copy and distribute verbatim copies of the Program's
-source code as you receive it, in any medium, provided that you
-conspicuously and appropriately publish on each copy an appropriate
-copyright notice and disclaimer of warranty; keep intact all the
-notices that refer to this License and to the absence of any warranty;
-and give any other recipients of the Program a copy of this License
-along with the Program.
-
-You may charge a fee for the physical act of transferring a copy, and
-you may at your option offer warranty protection in exchange for a fee.
-
-'''2.''' You may modify your copy or copies of the Program or any portion
-of it, thus forming a work based on the Program, and copy and
-distribute such modifications or work under the terms of Section 1
-above, provided that you also meet all of these conditions:
-
- '''a)''' You must cause the modified files to carry prominent notices
- stating that you changed the files and the date of any change.
-
- '''b)''' You must cause any work that you distribute or publish, that in
- whole or in part contains or is derived from the Program or any
- part thereof, to be licensed as a whole at no charge to all third
- parties under the terms of this License.
-
- '''c)''' If the modified program normally reads commands interactively
- when run, you must cause it, when started running for such
- interactive use in the most ordinary way, to print or display an
- announcement including an appropriate copyright notice and a
- notice that there is no warranty (or else, saying that you provide
- a warranty) and that users may redistribute the program under
- these conditions, and telling the user how to view a copy of this
- License. (Exception: if the Program itself is interactive but
- does not normally print such an announcement, your work based on
- the Program is not required to print an announcement.)
-
-These requirements apply to the modified work as a whole. If
-identifiable sections of that work are not derived from the Program,
-and can be reasonably considered independent and separate works in
-themselves, then this License, and its terms, do not apply to those
-sections when you distribute them as separate works. But when you
-distribute the same sections as part of a whole which is a work based
-on the Program, the distribution of the whole must be on the terms of
-this License, whose permissions for other licensees extend to the
-entire whole, and thus to each and every part regardless of who wrote it.
-
-Thus, it is not the intent of this section to claim rights or contest
-your rights to work written entirely by you; rather, the intent is to
-exercise the right to control the distribution of derivative or
-collective works based on the Program.
-
-In addition, mere aggregation of another work not based on the Program
-with the Program (or with a work based on the Program) on a volume of
-a storage or distribution medium does not bring the other work under
-the scope of this License.
-
-'''3.''' You may copy and distribute the Program (or a work based on it,
-under Section 2) in object code or executable form under the terms of
-Sections 1 and 2 above provided that you also do one of the following:
-
- '''a)''' Accompany it with the complete corresponding machine-readable
- source code, which must be distributed under the terms of Sections
- 1 and 2 above on a medium customarily used for software interchange; or,
-
- '''b)''' Accompany it with a written offer, valid for at least three
- years, to give any third party, for a charge no more than your
- cost of physically performing source distribution, a complete
- machine-readable copy of the corresponding source code, to be
- distributed under the terms of Sections 1 and 2 above on a medium
- customarily used for software interchange; or,
-
- '''c)''' Accompany it with the information you received as to the offer
- to distribute corresponding source code. (This alternative is
- allowed only for noncommercial distribution and only if you
- received the program in object code or executable form with such
- an offer, in accord with Subsection b above.)
-
-The source code for a work means the preferred form of the work for
-making modifications to it. For an executable work, complete source
-code means all the source code for all modules it contains, plus any
-associated interface definition files, plus the scripts used to
-control compilation and installation of the executable. However, as a
-special exception, the source code distributed need not include
-anything that is normally distributed (in either source or binary
-form) with the major components (compiler, kernel, and so on) of the
-operating system on which the executable runs, unless that component
-itself accompanies the executable.
-
-If distribution of executable or object code is made by offering
-access to copy from a designated place, then offering equivalent
-access to copy the source code from the same place counts as
-distribution of the source code, even though third parties are not
-compelled to copy the source along with the object code.
-
-'''4.''' You may not copy, modify, sublicense, or distribute the Program
-except as expressly provided under this License. Any attempt
-otherwise to copy, modify, sublicense or distribute the Program is
-void, and will automatically terminate your rights under this License.
-However, parties who have received copies, or rights, from you under
-this License will not have their licenses terminated so long as such
-parties remain in full compliance.
-
-'''5.''' You are not required to accept this License, since you have not
-signed it. However, nothing else grants you permission to modify or
-distribute the Program or its derivative works. These actions are
-prohibited by law if you do not accept this License. Therefore, by
-modifying or distributing the Program (or any work based on the
-Program), you indicate your acceptance of this License to do so, and
-all its terms and conditions for copying, distributing or modifying
-the Program or works based on it.
-
-'''6.''' Each time you redistribute the Program (or any work based on the
-Program), the recipient automatically receives a license from the
-original licensor to copy, distribute or modify the Program subject to
-these terms and conditions. You may not impose any further
-restrictions on the recipients' exercise of the rights granted herein.
-You are not responsible for enforcing compliance by third parties to
-this License.
-
-'''7.''' If, as a consequence of a court judgment or allegation of patent
-infringement or for any other reason (not limited to patent issues),
-conditions are imposed on you (whether by court order, agreement or
-otherwise) that contradict the conditions of this License, they do not
-excuse you from the conditions of this License. If you cannot
-distribute so as to satisfy simultaneously your obligations under this
-License and any other pertinent obligations, then as a consequence you
-may not distribute the Program at all. For example, if a patent
-license would not permit royalty-free redistribution of the Program by
-all those who receive copies directly or indirectly through you, then
-the only way you could satisfy both it and this License would be to
-refrain entirely from distribution of the Program.
-
-If any portion of this section is held invalid or unenforceable under
-any particular circumstance, the balance of the section is intended to
-apply and the section as a whole is intended to apply in other
-circumstances.
-
-It is not the purpose of this section to induce you to infringe any
-patents or other property right claims or to contest validity of any
-such claims; this section has the sole purpose of protecting the
-integrity of the free software distribution system, which is
-implemented by public license practices. Many people have made
-generous contributions to the wide range of software distributed
-through that system in reliance on consistent application of that
-system; it is up to the author/donor to decide if he or she is willing
-to distribute software through any other system and a licensee cannot
-impose that choice.
-
-This section is intended to make thoroughly clear what is believed to
-be a consequence of the rest of this License.
-
-'''8.''' If the distribution and/or use of the Program is restricted in
-certain countries either by patents or by copyrighted interfaces, the
-original copyright holder who places the Program under this License
-may add an explicit geographical distribution limitation excluding
-those countries, so that distribution is permitted only in or among
-countries not thus excluded. In such case, this License incorporates
-the limitation as if written in the body of this License.
-
-'''9.''' The Free Software Foundation may publish revised and/or new versions
-of the General Public License from time to time. Such new versions will
-be similar in spirit to the present version, but may differ in detail to
-address new problems or concerns.
-
-Each version is given a distinguishing version number. If the Program
-specifies a version number of this License which applies to it and "any
-later version", you have the option of following the terms and conditions
-either of that version or of any later version published by the Free
-Software Foundation. If the Program does not specify a version number of
-this License, you may choose any version ever published by the Free Software
-Foundation.
-
-'''10.''' If you wish to incorporate parts of the Program into other free
-programs whose distribution conditions are different, write to the author
-to ask for permission. For software which is copyrighted by the Free
-Software Foundation, write to the Free Software Foundation; we sometimes
-make exceptions for this. Our decision will be guided by the two goals
-of preserving the free status of all derivatives of our free software and
-of promoting the sharing and reuse of software generally.
-
-=== NO WARRANTY ===
-
-'''11.''' BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
-FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
-OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
-PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
-OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
-TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
-PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
-REPAIR OR CORRECTION.
-
-'''12.''' IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
-WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
-REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
-INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
-OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
-TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
-YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
-PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
-POSSIBILITY OF SUCH DAMAGES.
-
- '''END OF TERMS AND CONDITIONS'''
-
-== How to Apply These Terms to Your New Programs ==
-
-If you develop a new program, and you want it to be of the greatest
-possible use to the public, the best way to achieve this is to make it
-free software which everyone can redistribute and change under these terms.
-
-To do so, attach the following notices to the program. It is safest
-to attach them to the start of each source file to most effectively
-convey the exclusion of warranty; and each file should have at least
-the "copyright" line and a pointer to where the full notice is found.
-
- <one line to give the program's name and a brief idea of what it does.>
-
- Copyright (C) <year> <name of author>
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
-
-
-Also add information on how to contact you by electronic and paper mail.
-
-If the program is interactive, make it output a short notice like this
-when it starts in an interactive mode:
-
- Gnomovision version 69, Copyright (C) year name of author
- Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
- This is free software, and you are welcome to redistribute it
- under certain conditions; type `show c' for details.
-
-The hypothetical commands `show w' and `show c' should show the appropriate
-parts of the General Public License. Of course, the commands you use may
-be called something other than `show w' and `show c'; they could even be
-mouse-clicks or menu items--whatever suits your program.
-
-You should also get your employer (if you work as a programmer) or your
-school, if any, to sign a "copyright disclaimer" for the program, if
-necessary. Here is a sample; alter the names:
-
- Yoyodyne, Inc., hereby disclaims all copyright interest in the program
- `Gnomovision' (which makes passes at compilers) written by James Hacker.
-
- <signature of Ty Coon>, 1 April 1989
-
- Ty Coon, President of Vice
-
-This General Public License does not permit incorporating your program into
-proprietary programs. If your program is a subroutine library, you may
-consider it more useful to permit linking proprietary applications with the
-library. If this is what you want to do, use the GNU Library General
-Public License instead of this License.
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/MIT-LICENSE b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/MIT-LICENSE
deleted file mode 100644
index f3a03b7e..00000000
--- a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/MIT-LICENSE
+++ /dev/null
@@ -1,21 +0,0 @@
-Copyright (c) 2012-2013 Santhosh Thottingal and other
-contributors. See CREDITS for a list.
-
-Permission is hereby granted, free of charge, to any person obtaining
-a copy of this software and associated documentation files (the
-"Software"), to deal in the Software without restriction, including
-without limitation the rights to use, copy, modify, merge, publish,
-distribute, sublicense, and/or sell copies of the Software, and to
-permit persons to whom the Software is furnished to do so, subject to
-the following conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/README.md b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/README.md
deleted file mode 100644
index da82c2bc..00000000
--- a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/README.md
+++ /dev/null
@@ -1,432 +0,0 @@
-jQuery.i18n
-===========
-
-jQuery.i18n is a jQuery based Javascript internationalization library. It helps you to internationalize your web applications easily.
-
-This is a project by Wikimedia foundation's [Language Engineering team](http://wikimediafoundation.org/wiki/Language_Engineering_team) and used in some of the Wikimedia Foundation projects like Universal Language Selector.
-
-The jquery.i18n library uses a json based localization file format, "banana", which is used as the localization file format for MediaWiki and other projects.
-
-Features
-========
-* Simple file format - JSON. Easily readable for humans and machines.
-* Author and metadata information is not lost anywhere. There are other file formats using comments to store this.
-* Uses MediaWiki convention for placeholders. Easily readable and proven convention. Example: ```There are $1 cars```
-* Supports plural conversion without using extra messages for all plural forms. Plural rule handling is done using CLDR. Covers a wide range of languages
-* Supports gender. By passing the gender value, you get correct sentences according to gender.
-* Supports grammar forms. jquery.i18n has a basic but extensible grammar conversion support
-* Fallback chains for all languages.
-* Data api- the message key. Example: ```<li data-i18n="message-key"></li>```.
-* Dynamic change of interface language without refreshing a webpage.
-* Nestable grammar, plural, gender support. These constructs can be nested to any arbitrary level for supporting sophisticated message localization
-* Message documentation through special language code ```qqq```
-* Extensible message parser to add or customize magic words in the messages. Example: ```{sitename}``` or ```[[link]]``
-
-
-Quick start
------------
-
-```bash
-git clone https://github.com/wikimedia/jquery.i18n.git
-cd jquery.i18n
-git submodule update --init
-```
-
-Testing
--------
-
-```shell
-npm install
-```
-
-To run tests locally, run `npm test`, and this will run the tests.
-
-Message File Format
-===================
-
-The message files are json formatted. As a convention you can have a folder named i18n inside your source code. For each language or locale, have a file named like languagecode.json.
-
-Example:
-```
-App
- |--src
- |--doc
- |--i18n
- |--ar.json
- |--de.json
- |--en.json
- |--he.json
- |--hi.json
- |--fr.json
- |--qqq.json
-```
-
-A simple en.json file example is given below
-
-```json
-{
- "@metadata": {
- "authors": [
- "Alice",
- "David",
- "Santhosh"
- ],
- "last-updated": "2012-09-21",
- "locale": "en",
- "message-documentation": "qqq",
- "AnotherMetadata": "AnotherMedatadataValue"
- },
- "appname-title": "Example Application",
- "appname-sub-title": "An example application with jquery.i18n",
- "appname-header-introduction": "Introduction",
- "appname-about": "About this application",
- "appname-footer": "Footer text"
-}
-```
-
-The json file should be a valid json. The ```@metadata``` holds all kind of data that are not messages. You can store author information, copyright, updated date or anything there.
-
-Messages are key value pairs. It is a good convention to prefix your appname to message keys to make the messages unique. It acts as the namespace for the message keys. It is also a good convention to have the message keys with ```-``` separated words, all in lower case.
-
-If you are curious to see some real jquery.i18n message file from other projects:
-
-- message files of MediaWiki https://github.com/wikimedia/mediawiki-core/tree/master/languages/i18n
-- message files from jquery.uls project https://github.com/wikimedia/jquery.uls/blob/master/i18n
-
-Single message file for all languages
--------------------------------------
-There are some alternate message file format supported for different use cases. If your application is not big, and want all the translation in a single file, you can have it as shown in the below example:
-
-```json
-{
- "@metadata": {
- "authors": [
- "Alice",
- "David",
- "Santhosh"
- ],
- "last-updated": "2012-09-21",
- "locale": "en",
- "message-documentation": "qqq",
- "AnotherMetadata": "AnotherMedatadataValue"
- },
- "en": {
- "appname-title": "Example Application",
- "appname-sub-title": "An example application with jquery.i18n",
- "appname-header-introduction": "Introduction",
- "appname-about": "About this application",
- "appname-footer": "Footer text"
- },
- "ml": {
- "appname-title": "അപ്ലിക്കേഷന്‍ ഉദാഹരണം",
- "appname-sub-title": "jquery.i18n ഉപയോഗിച്ചുള്ള അപ്ലിക്കേഷന്‍ ഉദാഹരണം",
- "appname-header-introduction": "ആമുഖം",
- "appname-about": "ഈ അപ്ലിക്കേഷനെപ്പറ്റി",
- "appname-footer": "അടിക്കുറിപ്പു്"
- }
-}
-```
-
-Here the json file contains language code as key value and messagekey-message pairs as the value for all language pairs. You can choose this format or per-language file formats depending on your use case. Per-language files are more convenient for collaboration, version controlling, scalability, etc.
-
-In this approach, it is also possible to give a file name as the value of language code.
-
-```json
-{
- "@metadata": {
- "authors": [
- "Alice",
- "David",
- "Santhosh"
- ],
- "last-updated": "2012-09-21",
- "locale": "en",
- "message-documentation": "qqq",
- "AnotherMetadata": "AnotherMedatadataValue"
- },
- "en": {
- "appname-title": "Example Application",
- "appname-sub-title": "An example application with jquery.i18n",
- "appname-header-introduction": "Introduction",
- "appname-about": "About this application",
- "appname-footer": "Footer text"
- },
- "ml": "path/to/ml.json"
-}
-```
-
-Translation
-===========
-To translate the jquery.i18n application, depending on the expertise of the translator, there are multiple ways.
-
-* Editing the json files directly - Suitable for translators with technical background. Also suitable if your application is small and you want to work with only a small number of languages
-* Providing a translation interface along with your application: Suitable for proprietary or private applications with significant amount of translators
-* Using open source translation platforms like translatewiki.net. The MediaWiki and jquery.uls from previous examples use translatewiki.net for crowdsourced message translation. Translatewiki.net can update your code repo in regular intervals with updated translations. Highly recommended if your application is opensource and want localized to as many as languages possible with maximum number of translators.
-
-Usage
-=====
-
-## Switching locale
-
-While initializing the `jquery.i18n`, the locale for the page can be given using the `locale` option. For example
-
-```javascript
-$.i18n( {
- locale: 'he' // Locale is Hebrew
-} );
-```
-
-In case locale option is not given, `jquery.i18n` plugin will use the language attribute given for the html tag. For example
-
-```html
-<html lang="he" dir="rtl">
-```
-
-In this case the locale will be he(Hebrew). If that `lang` attribute is also missing, it will try to use the locale specified by the browser.
-
-It is possible to switch to another locale after plugin is initialized. See below example:
-
-```javascript
-$.i18n({
- locale: 'he' // Locale is Hebrew
-});
-$.i18n( 'message_hello' ); // This will give the Hebrew translation of message key `message_hello`.
-$.i18n().locale = 'ml'; // Now onwards locale is 'Malayalam'
-$.i18n( 'message_hello' ); // This will give the Malayalam translation of message key `message_hello`.
-```
-
-## Message Loading
-
-JSON formatted messages can be loaded to the plugin using multiple ways.
-
-### Dynamic loading using `load` method.
-
-Following example shows loading messages for two locales- localex, and localey. Here localex and localey are just examples. They should be valid IS0 639 language codes(eg: en, ml, hi, fr, ta etc)
-
-```javascript
-$.i18n().load( {
- 'localex' : {
- 'message-key1' : 'message1' // Message for localex.
- },
- 'localey' : {
- 'message-key1' : 'message1'
- }
-} );
-```
-
-If we want to load the messages for a specific locale, it can be done like this:
-
-```javascript
-$.i18n().load({
- 'message-hello': 'Hello World',
- 'message-welcome': 'Welcome'
-}, 'en');
-```
-
-Note the second argument for the `load` method. It should be a valid language code.
-
-It is also possible to refer messages from an external URL. See below example
-
-```javascript
-$.i18n().load( {
- en: {
- message_hello: 'Hello World',
- message_welcome: 'Welcome'
- },
- hi: 'i18n/messages-hi.json', // Messages for Hindi
- de: 'i18n/messages-de.json'
-} );
-```
-
-Messages for a locale can be also loaded in parts. Example
-
-```javascript
-$.i18n().load( {
- en: {
- message_hello: 'Hello World',
- message_welcome: 'Welcome'
- }
-} );
-
-$.i18n().load( {
- // This does not remove the previous messages.
- en: {
- 'message_header' : 'Header',
- 'message_footer' : 'Footer',
- // This will overwrite message_welcome message
- 'message_welcome' : 'Welcome back'
- }
-} );
-```
-
-Since it is desirable to render interface messages instantly and not after a delay of loading the message files from a server, make sure that the messages are present at client side before using jQuery.i18n.
-
-The library should expose an API to load an object containing key-value pair of messages. Example: ```$.i18n.load(data)```. This will return a ```jQuery.Promise```.
-
-jquery.i18n plugin
-=========================
-
-The jQuery plugin defines ```$.i18n()``` and ```$.fn.i18n()```
-
-```javascript
-$.i18n( 'message-key-sample1' );
-$.i18n( 'message-key-sample1' );
-$.i18n( 'Found $1 {{plural:$1|result|results}}', 10 ); // Message key itself is message text
-$.i18n( 'Showing $1 out of $2 {{plural:$2|result|results}}', 5,100 );
-$.i18n(' User X updated {{gender|his|her}} profile', 'male' );
-
-$( '#foo' ).i18n(); // to translate the element matching jquery selector based on data-i18n key
-```
-
-Data API
---------
-
-It is possible to display localized messages without any custom JavaScript. For the HTML tags, add an attribute data-i18n with value as the message key. Example:
-```html
-<li data-i18n="message-key"></li>.
-```
-
-It is also possible to have the above li node with fallback text already in place.
-```html
-<li data-i18n="message-key">Fallback text</li>
-```
-
-The framework will place the localized message corresponding to message-key as the text value of the node. Similar to $('selector').i18n( ... ).
-This will not work for dynamically created elements.
-
-Note that if data-i18n contains html markup, that html will not be used as the element content, instead, the text version will be used. $.fn.i18n is always about replacing text of the element. If you want to change the html of the element, you may want to use: ```$(selector).html($.i18n(messagekey))```
-
-Examples
-========
-
-See http://thottingal.in/projects/js/jquery.i18n/demo/
-
-Message format
-==============
-
-## Placeholders
-
-Messages take parameters. They are represented by $1, $2, $3, … in the message texts, and replaced at run time. Typical parameter values are numbers (Example: "Delete 3 versions?"), or user names (Example: "Page last edited by $1"), page names, links, and so on, or sometimes other messages.
-
-```javascript
-var message = "Welcome, $1";
-$.i18n(message, 'Alice'); // This gives "Welcome, Alice"
-```
-
-
-## Plurals
-
-To make the syntax of sentence correct, plural forms are required. jquery.i18n support plural forms in the message using the syntax `{{PLURAL:$1|pluralform1|pluralform2|...}}`
-
-For example:
-
-```javascript
-var message = "Found $1 {{PLURAL:$1|result|results}}";
-$.i18n(message, 1); // This gives "Found 1 result"
-$.i18n(message, 4); // This gives "Found 4 results"
-```
-Note that {{PLURAL:...}} is not case sensitive. It can be {{plural:...}} too.
-
-In case of English, there are only 2 plural forms, but many languages use more than 2 plural forms. All the plural forms can be given in the above syntax, separated by pipe(|)
-
-## Gender
-Similar to plural, depending on gender of placeholders, mostly user names, the syntax changes dynamically. An example in English is "Alice changed her profile picture" and "Bob changed his profile picture". To support this {{GENDER...}} syntax can be used as show in example
-
-```javascript
-var message = "$1 changed {{GENDER:$2|his|her}} profile picture";
-$.i18n(message, 'Alice', 'female' ); // This gives "Alice changed her profile picture"
-$.i18n(message, 'Bob', 'male' ); // This gives "Bob changed his profile picture"
-```
-
-Note that {{GENDER:...}} is not case sensitive. It can be {{gender:...}} too.
-
-## Grammar
-
-
-```javascript
-$.i18n( { locale: 'fi' } );
-
-var message = "{{grammar:genitive|$1}}";
-
-$.i18n(message, 'talo' ); // This gives "talon"
-
-$.i18n().locale = 'hy'; // Switch to locale Armenian
-$.i18n(message, 'Մաունա'); // This gives "Մաունայի"
-```
-
-## Directionality-safe isolation
-
-To avoid BIDI corruption that looks like "(Foo_(Bar", which happens when a string is inserted into a context with the reverse directionality, you can use `{{bidi:…}}`. Directionality-neutral characters at the edge of the string can get wrongly interpreted by the BIDI algorithm. This would let you embed your substituted string into a new BIDI context, //e.g.//:
-
- "`Shalom, {{bidi:$1}}, hi!`"
-
-The embedded context's directionality is determined by looking at the argument for `$1`, and then explicitly inserted into the Unicode text, ensuring correct rendering (because then the bidi algorithm "knows" the argument text is a separate context).
-
-
-Fallback
-========
-
-The plugin takes an option 'fallback' with the default value 'en'. The library reuses the fallback data available in MediaWiki for calculating the language fallbacks. Fallbacks are used when a message key is not found in a locale. Example fallbacks: sa->hi->en or tt->tt-cyrl->ru.
-
-See jquery.i18n.fallbacks.js in the source.
-
-Magic word support
-===================
-* For plural, gender and grammar support, MediaWiki template-like syntax - {{...}} will be used.
-* There will be a default implementation for all these in $.i18n.language['default']
-* The plural, gender and grammar methods in ```$.i18n.language[ 'default' ]``` can be overridden or extended in ```$.i18n.language['languageCode']```.
-* Language-specific rules about Gender and Grammar can be written in languages/langXYZ.js files
-* Plural forms will be dynamically calculated using the CLDR plural parser.
-
-Extending the parser
---------------------
-Following example illustrates extending the parser to support more magic words
-
-```javascript
-$.extend( $.i18n.parser.emitter, {
- // Handle SITENAME keywords
- sitename: function () {
- return 'Wikipedia';
- },
- // Handle LINK keywords
- link: function ( nodes ) {
- return '<a href="' + nodes[1] + '">' + nodes[0] + '</a>';
- }
-} );
-```
-
-This will parse the message
-```javascript
-$.i18n( '{{link:{{SITENAME}}|http://en.wikipedia.org}}' );
-```
-
-to
-
-```html
-<a href="http://en.wikipedia.org">Wikipedia</a>
-```
-
-Message documentation
-=====================
-
-The message keys and messages won't give a enough context about the message being translated to the translator. Whenever a developer adds a new message, it is a usual practice to document the message to a file named qqq.json
-with same message key.
-
-Example qqq.json:
-```json
-{
- "@metadata": {
- "authors": [
- "Developer Name"
- ]
- },
- "appname-title": "Application name. Transliteration is recommended",
- "appname-sub-title": "Brief explanation of the application",
- "appname-header-introduction": "Text for the introduction header",
- "appname-about": "About this application text",
- "appname-footer": "Footer text"
-}
-
-```
-
-In MediaWiki and its hundreds of extensions, message documentation is a strictly followed practice. There is a grunt task to check whether all messages are documented or not. See https://www.npmjs.org/package/grunt-banana-checker
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/jquery.i18n.emitter.bidi.js b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/jquery.i18n.emitter.bidi.js
deleted file mode 100644
index 3a5b6251..00000000
--- a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/jquery.i18n.emitter.bidi.js
+++ /dev/null
@@ -1,88 +0,0 @@
-/**
- * BIDI embedding support for jQuery.i18n
- *
- * Copyright (C) 2015, David Chan
- *
- * This code is dual licensed GPLv2 or later and MIT. You don't have to do
- * anything special to choose one license or the other and you don't have to
- * notify anyone which license you are using. You are free to use this code
- * in commercial projects as long as the copyright header is left intact.
- * See files GPL-LICENSE and MIT-LICENSE for details.
- *
- * @licence GNU General Public Licence 2.0 or later
- * @licence MIT License
- */
-
-( function ( $ ) {
- 'use strict';
- var strongDirRegExp;
-
- /**
- * Matches the first strong directionality codepoint:
- * - in group 1 if it is LTR
- * - in group 2 if it is RTL
- * Does not match if there is no strong directionality codepoint.
- *
- * Generated by UnicodeJS (see tools/strongDir) from the UCD; see
- * https://git.wikimedia.org/summary/unicodejs.git .
- */
- strongDirRegExp = new RegExp(
- '(?:' +
- '(' +
- '[\u0041-\u005a\u0061-\u007a\u00aa\u00b5\u00ba\u00c0-\u00d6\u00d8-\u00f6\u00f8-\u02b8\u02bb-\u02c1\u02d0\u02d1\u02e0-\u02e4\u02ee\u0370-\u0373\u0376\u0377\u037a-\u037d\u037f\u0386\u0388-\u038a\u038c\u038e-\u03a1\u03a3-\u03f5\u03f7-\u0482\u048a-\u052f\u0531-\u0556\u0559-\u055f\u0561-\u0587\u0589\u0903-\u0939\u093b\u093d-\u0940\u0949-\u094c\u094e-\u0950\u0958-\u0961\u0964-\u0980\u0982\u0983\u0985-\u098c\u098f\u0990\u0993-\u09a8\u09aa-\u09b0\u09b2\u09b6-\u09b9\u09bd-\u09c0\u09c7\u09c8\u09cb\u09cc\u09ce\u09d7\u09dc\u09dd\u09df-\u09e1\u09e6-\u09f1\u09f4-\u09fa\u0a03\u0a05-\u0a0a\u0a0f\u0a10\u0a13-\u0a28\u0a2a-\u0a30\u0a32\u0a33\u0a35\u0a36\u0a38\u0a39\u0a3e-\u0a40\u0a59-\u0a5c\u0a5e\u0a66-\u0a6f\u0a72-\u0a74\u0a83\u0a85-\u0a8d\u0a8f-\u0a91\u0a93-\u0aa8\u0aaa-\u0ab0\u0ab2\u0ab3\u0ab5-\u0ab9\u0abd-\u0ac0\u0ac9\u0acb\u0acc\u0ad0\u0ae0\u0ae1\u0ae6-\u0af0\u0af9\u0b02\u0b03\u0b05-\u0b0c\u0b0f\u0b10\u0b13-\u0b28\u0b2a-\u0b30\u0b32\u0b33\u0b35-\u0b39\u0b3d\u0b3e\u0b40\u0b47\u0b48\u0b4b\u0b4c\u0b57\u0b5c\u0b5d\u0b5f-\u0b61\u0b66-\u0b77\u0b83\u0b85-\u0b8a\u0b8e-\u0b90\u0b92-\u0b95\u0b99\u0b9a\u0b9c\u0b9e\u0b9f\u0ba3\u0ba4\u0ba8-\u0baa\u0bae-\u0bb9\u0bbe\u0bbf\u0bc1\u0bc2\u0bc6-\u0bc8\u0bca-\u0bcc\u0bd0\u0bd7\u0be6-\u0bf2\u0c01-\u0c03\u0c05-\u0c0c\u0c0e-\u0c10\u0c12-\u0c28\u0c2a-\u0c39\u0c3d\u0c41-\u0c44\u0c58-\u0c5a\u0c60\u0c61\u0c66-\u0c6f\u0c7f\u0c82\u0c83\u0c85-\u0c8c\u0c8e-\u0c90\u0c92-\u0ca8\u0caa-\u0cb3\u0cb5-\u0cb9\u0cbd-\u0cc4\u0cc6-\u0cc8\u0cca\u0ccb\u0cd5\u0cd6\u0cde\u0ce0\u0ce1\u0ce6-\u0cef\u0cf1\u0cf2\u0d02\u0d03\u0d05-\u0d0c\u0d0e-\u0d10\u0d12-\u0d3a\u0d3d-\u0d40\u0d46-\u0d48\u0d4a-\u0d4c\u0d4e\u0d57\u0d5f-\u0d61\u0d66-\u0d75\u0d79-\u0d7f\u0d82\u0d83\u0d85-\u0d96\u0d9a-\u0db1\u0db3-\u0dbb\u0dbd\u0dc0-\u0dc6\u0dcf-\u0dd1\u0dd8-\u0ddf\u0de6-\u0def\u0df2-\u0df4\u0e01-\u0e30\u0e32\u0e33\u0e40-\u0e46\u0e4f-\u0e5b\u0e81\u0e82\u0e84\u0e87\u0e88\u0e8a\u0e8d\u0e94-\u0e97\u0e99-\u0e9f\u0ea1-\u0ea3\u0ea5\u0ea7\u0eaa\u0eab\u0ead-\u0eb0\u0eb2\u0eb3\u0ebd\u0ec0-\u0ec4\u0ec6\u0ed0-\u0ed9\u0edc-\u0edf\u0f00-\u0f17\u0f1a-\u0f34\u0f36\u0f38\u0f3e-\u0f47\u0f49-\u0f6c\u0f7f\u0f85\u0f88-\u0f8c\u0fbe-\u0fc5\u0fc7-\u0fcc\u0fce-\u0fda\u1000-\u102c\u1031\u1038\u103b\u103c\u103f-\u1057\u105a-\u105d\u1061-\u1070\u1075-\u1081\u1083\u1084\u1087-\u108c\u108e-\u109c\u109e-\u10c5\u10c7\u10cd\u10d0-\u1248\u124a-\u124d\u1250-\u1256\u1258\u125a-\u125d\u1260-\u1288\u128a-\u128d\u1290-\u12b0\u12b2-\u12b5\u12b8-\u12be\u12c0\u12c2-\u12c5\u12c8-\u12d6\u12d8-\u1310\u1312-\u1315\u1318-\u135a\u1360-\u137c\u1380-\u138f\u13a0-\u13f5\u13f8-\u13fd\u1401-\u167f\u1681-\u169a\u16a0-\u16f8\u1700-\u170c\u170e-\u1711\u1720-\u1731\u1735\u1736\u1740-\u1751\u1760-\u176c\u176e-\u1770\u1780-\u17b3\u17b6\u17be-\u17c5\u17c7\u17c8\u17d4-\u17da\u17dc\u17e0-\u17e9\u1810-\u1819\u1820-\u1877\u1880-\u18a8\u18aa\u18b0-\u18f5\u1900-\u191e\u1923-\u1926\u1929-\u192b\u1930\u1931\u1933-\u1938\u1946-\u196d\u1970-\u1974\u1980-\u19ab\u19b0-\u19c9\u19d0-\u19da\u1a00-\u1a16\u1a19\u1a1a\u1a1e-\u1a55\u1a57\u1a61\u1a63\u1a64\u1a6d-\u1a72\u1a80-\u1a89\u1a90-\u1a99\u1aa0-\u1aad\u1b04-\u1b33\u1b35\u1b3b\u1b3d-\u1b41\u1b43-\u1b4b\u1b50-\u1b6a\u1b74-\u1b7c\u1b82-\u1ba1\u1ba6\u1ba7\u1baa\u1bae-\u1be5\u1be7\u1bea-\u1bec\u1bee\u1bf2\u1bf3\u1bfc-\u1c2b\u1c34\u1c35\u1c3b-\u1c49\u1c4d-\u1c7f\u1cc0-\u1cc7\u1cd3\u1ce1\u1ce9-\u1cec\u1cee-\u1cf3\u1cf5\u1cf6\u1d00-\u1dbf\u1e00-\u1f15\u1f18-\u1f1d\u1f20-\u1f45\u1f48-\u1f4d\u1f50-\u1f57\u1f59\u1f5b\u1f5d\u1f5f-\u1f7d\u1f80-\u1fb4\u1fb6-\u1fbc\u1fbe\u1fc2-\u1fc4\u1fc6-\u1fcc\u1fd0-\u1fd3\u1fd6-\u1fdb\u1fe0-\u1fec\u1ff2-\u1ff4\u1ff6-\u1ffc\u200e\u2071\u207f\u2090-\u209c\u2102\u2107\u210a-\u2113\u2115\u2119-\u211d\u2124\u2126\u2128\u212a-\u212d\u212f-\u2139\u213c-\u213f\u2145-\u2149\u214e\u214f\u2160-\u2188\u2336-\u237a\u2395\u249c-\u24e9\u26ac\u2800-\u28ff\u2c00-\u2c2e\u2c30-\u2c5e\u2c60-\u2ce4\u2ceb-\u2cee\u2cf2\u2cf3\u2d00-\u2d25\u2d27\u2d2d\u2d30-\u2d67\u2d6f\u2d70\u2d80-\u2d96\u2da0-\u2da6\u2da8-\u2dae\u2db0-\u2db6\u2db8-\u2dbe\u2dc0-\u2dc6\u2dc8-\u2dce\u2dd0-\u2dd6\u2dd8-\u2dde\u3005-\u3007\u3021-\u3029\u302e\u302f\u3031-\u3035\u3038-\u303c\u3041-\u3096\u309d-\u309f\u30a1-\u30fa\u30fc-\u30ff\u3105-\u312d\u3131-\u318e\u3190-\u31ba\u31f0-\u321c\u3220-\u324f\u3260-\u327b\u327f-\u32b0\u32c0-\u32cb\u32d0-\u32fe\u3300-\u3376\u337b-\u33dd\u33e0-\u33fe\u3400-\u4db5\u4e00-\u9fd5\ua000-\ua48c\ua4d0-\ua60c\ua610-\ua62b\ua640-\ua66e\ua680-\ua69d\ua6a0-\ua6ef\ua6f2-\ua6f7\ua722-\ua787\ua789-\ua7ad\ua7b0-\ua7b7\ua7f7-\ua801\ua803-\ua805\ua807-\ua80a\ua80c-\ua824\ua827\ua830-\ua837\ua840-\ua873\ua880-\ua8c3\ua8ce-\ua8d9\ua8f2-\ua8fd\ua900-\ua925\ua92e-\ua946\ua952\ua953\ua95f-\ua97c\ua983-\ua9b2\ua9b4\ua9b5\ua9ba\ua9bb\ua9bd-\ua9cd\ua9cf-\ua9d9\ua9de-\ua9e4\ua9e6-\ua9fe\uaa00-\uaa28\uaa2f\uaa30\uaa33\uaa34\uaa40-\uaa42\uaa44-\uaa4b\uaa4d\uaa50-\uaa59\uaa5c-\uaa7b\uaa7d-\uaaaf\uaab1\uaab5\uaab6\uaab9-\uaabd\uaac0\uaac2\uaadb-\uaaeb\uaaee-\uaaf5\uab01-\uab06\uab09-\uab0e\uab11-\uab16\uab20-\uab26\uab28-\uab2e\uab30-\uab65\uab70-\uabe4\uabe6\uabe7\uabe9-\uabec\uabf0-\uabf9\uac00-\ud7a3\ud7b0-\ud7c6\ud7cb-\ud7fb\ue000-\ufa6d\ufa70-\ufad9\ufb00-\ufb06\ufb13-\ufb17\uff21-\uff3a\uff41-\uff5a\uff66-\uffbe\uffc2-\uffc7\uffca-\uffcf\uffd2-\uffd7\uffda-\uffdc]|\ud800[\udc00-\udc0b]|\ud800[\udc0d-\udc26]|\ud800[\udc28-\udc3a]|\ud800\udc3c|\ud800\udc3d|\ud800[\udc3f-\udc4d]|\ud800[\udc50-\udc5d]|\ud800[\udc80-\udcfa]|\ud800\udd00|\ud800\udd02|\ud800[\udd07-\udd33]|\ud800[\udd37-\udd3f]|\ud800[\uddd0-\uddfc]|\ud800[\ude80-\ude9c]|\ud800[\udea0-\uded0]|\ud800[\udf00-\udf23]|\ud800[\udf30-\udf4a]|\ud800[\udf50-\udf75]|\ud800[\udf80-\udf9d]|\ud800[\udf9f-\udfc3]|\ud800[\udfc8-\udfd5]|\ud801[\udc00-\udc9d]|\ud801[\udca0-\udca9]|\ud801[\udd00-\udd27]|\ud801[\udd30-\udd63]|\ud801\udd6f|\ud801[\ude00-\udf36]|\ud801[\udf40-\udf55]|\ud801[\udf60-\udf67]|\ud804\udc00|\ud804[\udc02-\udc37]|\ud804[\udc47-\udc4d]|\ud804[\udc66-\udc6f]|\ud804[\udc82-\udcb2]|\ud804\udcb7|\ud804\udcb8|\ud804[\udcbb-\udcc1]|\ud804[\udcd0-\udce8]|\ud804[\udcf0-\udcf9]|\ud804[\udd03-\udd26]|\ud804\udd2c|\ud804[\udd36-\udd43]|\ud804[\udd50-\udd72]|\ud804[\udd74-\udd76]|\ud804[\udd82-\uddb5]|\ud804[\uddbf-\uddc9]|\ud804\uddcd|\ud804[\uddd0-\udddf]|\ud804[\udde1-\uddf4]|\ud804[\ude00-\ude11]|\ud804[\ude13-\ude2e]|\ud804\ude32|\ud804\ude33|\ud804\ude35|\ud804[\ude38-\ude3d]|\ud804[\ude80-\ude86]|\ud804\ude88|\ud804[\ude8a-\ude8d]|\ud804[\ude8f-\ude9d]|\ud804[\ude9f-\udea9]|\ud804[\udeb0-\udede]|\ud804[\udee0-\udee2]|\ud804[\udef0-\udef9]|\ud804\udf02|\ud804\udf03|\ud804[\udf05-\udf0c]|\ud804\udf0f|\ud804\udf10|\ud804[\udf13-\udf28]|\ud804[\udf2a-\udf30]|\ud804\udf32|\ud804\udf33|\ud804[\udf35-\udf39]|\ud804[\udf3d-\udf3f]|\ud804[\udf41-\udf44]|\ud804\udf47|\ud804\udf48|\ud804[\udf4b-\udf4d]|\ud804\udf50|\ud804\udf57|\ud804[\udf5d-\udf63]|\ud805[\udc80-\udcb2]|\ud805\udcb9|\ud805[\udcbb-\udcbe]|\ud805\udcc1|\ud805[\udcc4-\udcc7]|\ud805[\udcd0-\udcd9]|\ud805[\udd80-\uddb1]|\ud805[\uddb8-\uddbb]|\ud805\uddbe|\ud805[\uddc1-\udddb]|\ud805[\ude00-\ude32]|\ud805\ude3b|\ud805\ude3c|\ud805\ude3e|\ud805[\ude41-\ude44]|\ud805[\ude50-\ude59]|\ud805[\ude80-\udeaa]|\ud805\udeac|\ud805\udeae|\ud805\udeaf|\ud805\udeb6|\ud805[\udec0-\udec9]|\ud805[\udf00-\udf19]|\ud805\udf20|\ud805\udf21|\ud805\udf26|\ud805[\udf30-\udf3f]|\ud806[\udca0-\udcf2]|\ud806\udcff|\ud806[\udec0-\udef8]|\ud808[\udc00-\udf99]|\ud809[\udc00-\udc6e]|\ud809[\udc70-\udc74]|\ud809[\udc80-\udd43]|\ud80c[\udc00-\udfff]|\ud80d[\udc00-\udc2e]|\ud811[\udc00-\ude46]|\ud81a[\udc00-\ude38]|\ud81a[\ude40-\ude5e]|\ud81a[\ude60-\ude69]|\ud81a\ude6e|\ud81a\ude6f|\ud81a[\uded0-\udeed]|\ud81a\udef5|\ud81a[\udf00-\udf2f]|\ud81a[\udf37-\udf45]|\ud81a[\udf50-\udf59]|\ud81a[\udf5b-\udf61]|\ud81a[\udf63-\udf77]|\ud81a[\udf7d-\udf8f]|\ud81b[\udf00-\udf44]|\ud81b[\udf50-\udf7e]|\ud81b[\udf93-\udf9f]|\ud82c\udc00|\ud82c\udc01|\ud82f[\udc00-\udc6a]|\ud82f[\udc70-\udc7c]|\ud82f[\udc80-\udc88]|\ud82f[\udc90-\udc99]|\ud82f\udc9c|\ud82f\udc9f|\ud834[\udc00-\udcf5]|\ud834[\udd00-\udd26]|\ud834[\udd29-\udd66]|\ud834[\udd6a-\udd72]|\ud834\udd83|\ud834\udd84|\ud834[\udd8c-\udda9]|\ud834[\uddae-\udde8]|\ud834[\udf60-\udf71]|\ud835[\udc00-\udc54]|\ud835[\udc56-\udc9c]|\ud835\udc9e|\ud835\udc9f|\ud835\udca2|\ud835\udca5|\ud835\udca6|\ud835[\udca9-\udcac]|\ud835[\udcae-\udcb9]|\ud835\udcbb|\ud835[\udcbd-\udcc3]|\ud835[\udcc5-\udd05]|\ud835[\udd07-\udd0a]|\ud835[\udd0d-\udd14]|\ud835[\udd16-\udd1c]|\ud835[\udd1e-\udd39]|\ud835[\udd3b-\udd3e]|\ud835[\udd40-\udd44]|\ud835\udd46|\ud835[\udd4a-\udd50]|\ud835[\udd52-\udea5]|\ud835[\udea8-\udeda]|\ud835[\udedc-\udf14]|\ud835[\udf16-\udf4e]|\ud835[\udf50-\udf88]|\ud835[\udf8a-\udfc2]|\ud835[\udfc4-\udfcb]|\ud836[\udc00-\uddff]|\ud836[\ude37-\ude3a]|\ud836[\ude6d-\ude74]|\ud836[\ude76-\ude83]|\ud836[\ude85-\ude8b]|\ud83c[\udd10-\udd2e]|\ud83c[\udd30-\udd69]|\ud83c[\udd70-\udd9a]|\ud83c[\udde6-\ude02]|\ud83c[\ude10-\ude3a]|\ud83c[\ude40-\ude48]|\ud83c\ude50|\ud83c\ude51|[\ud840-\ud868][\udc00-\udfff]|\ud869[\udc00-\uded6]|\ud869[\udf00-\udfff]|[\ud86a-\ud86c][\udc00-\udfff]|\ud86d[\udc00-\udf34]|\ud86d[\udf40-\udfff]|\ud86e[\udc00-\udc1d]|\ud86e[\udc20-\udfff]|[\ud86f-\ud872][\udc00-\udfff]|\ud873[\udc00-\udea1]|\ud87e[\udc00-\ude1d]|[\udb80-\udbbe][\udc00-\udfff]|\udbbf[\udc00-\udffd]|[\udbc0-\udbfe][\udc00-\udfff]|\udbff[\udc00-\udffd]' +
- ')|(' +
- '[\u0590\u05be\u05c0\u05c3\u05c6\u05c8-\u05ff\u07c0-\u07ea\u07f4\u07f5\u07fa-\u0815\u081a\u0824\u0828\u082e-\u0858\u085c-\u089f\u200f\ufb1d\ufb1f-\ufb28\ufb2a-\ufb4f\u0608\u060b\u060d\u061b-\u064a\u066d-\u066f\u0671-\u06d5\u06e5\u06e6\u06ee\u06ef\u06fa-\u0710\u0712-\u072f\u074b-\u07a5\u07b1-\u07bf\u08a0-\u08e2\ufb50-\ufd3d\ufd40-\ufdcf\ufdf0-\ufdfc\ufdfe\ufdff\ufe70-\ufefe]|\ud802[\udc00-\udd1e]|\ud802[\udd20-\ude00]|\ud802\ude04|\ud802[\ude07-\ude0b]|\ud802[\ude10-\ude37]|\ud802[\ude3b-\ude3e]|\ud802[\ude40-\udee4]|\ud802[\udee7-\udf38]|\ud802[\udf40-\udfff]|\ud803[\udc00-\ude5f]|\ud803[\ude7f-\udfff]|\ud83a[\udc00-\udccf]|\ud83a[\udcd7-\udfff]|\ud83b[\udc00-\uddff]|\ud83b[\udf00-\udfff]|\ud83b[\udf00-\udfff]|\ud83b[\udf00-\udfff]|\ud83b[\udf00-\udfff]|\ud83b[\udf00-\udfff]|\ud83b[\udf00-\udfff]|\ud83b[\udf00-\udfff]|\ud83b[\udf00-\udfff]|\ud83b[\udf00-\udfff]|\ud83b[\udf00-\udfff]|\ud83b[\udf00-\udfff]|\ud83b[\udf00-\udfff]|\ud83b[\udf00-\udfff]|\ud83b[\ude00-\udeef]|\ud83b[\udef2-\udeff]' +
- ')' +
- ')'
- );
-
- /**
- * Gets directionality of the first strongly directional codepoint
- *
- * This is the rule the BIDI algorithm uses to determine the directionality of
- * paragraphs ( http://unicode.org/reports/tr9/#The_Paragraph_Level ) and
- * FSI isolates ( http://unicode.org/reports/tr9/#Explicit_Directional_Isolates ).
- *
- * TODO: Does not handle BIDI control characters inside the text.
- * TODO: Does not handle unallocated characters.
- */
- function strongDirFromContent( text ) {
- var m = text.match( strongDirRegExp );
- if ( !m ) {
- return null;
- }
- if ( m[2] === undefined ) {
- return 'ltr';
- }
- return 'rtl';
- }
-
- $.extend( $.i18n.parser.emitter, {
- /**
- * Wraps argument with unicode control characters for directionality safety
- *
- * This solves the problem where directionality-neutral characters at the edge of
- * the argument string get interpreted with the wrong directionality from the
- * enclosing context, giving renderings that look corrupted like "(Ben_(WMF".
- *
- * The wrapping is LRE...PDF or RLE...PDF, depending on the detected
- * directionality of the argument string, using the BIDI algorithm's own "First
- * strong directional codepoint" rule. Essentially, this works round the fact that
- * there is no embedding equivalent of U+2068 FSI (isolation with heuristic
- * direction inference). The latter is cleaner but still not widely supported.
- */
- bidi: function ( nodes ) {
- var dir = strongDirFromContent( nodes[0] );
- if ( dir === 'ltr' ) {
- // Wrap in LEFT-TO-RIGHT EMBEDDING ... POP DIRECTIONAL FORMATTING
- return '\u202A' + nodes[0] + '\u202C';
- }
- if ( dir === 'rtl' ) {
- // Wrap in RIGHT-TO-LEFT EMBEDDING ... POP DIRECTIONAL FORMATTING
- return '\u202B' + nodes[0] + '\u202C';
- }
- // No strong directionality: do not wrap
- return nodes[0];
- }
- } );
-}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/jquery.i18n.emitter.js b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/jquery.i18n.emitter.js
deleted file mode 100644
index b26f147d..00000000
--- a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/jquery.i18n.emitter.js
+++ /dev/null
@@ -1,168 +0,0 @@
-/**
- * jQuery Internationalization library
- *
- * Copyright (C) 2011-2013 Santhosh Thottingal, Neil Kandalgaonkar
- *
- * jquery.i18n is dual licensed GPLv2 or later and MIT. You don't have to do
- * anything special to choose one license or the other and you don't have to
- * notify anyone which license you are using. You are free to use
- * UniversalLanguageSelector in commercial projects as long as the copyright
- * header is left intact. See files GPL-LICENSE and MIT-LICENSE for details.
- *
- * @licence GNU General Public Licence 2.0 or later
- * @licence MIT License
- */
-
-( function ( $ ) {
- 'use strict';
-
- var MessageParserEmitter = function () {
- this.language = $.i18n.languages[String.locale] || $.i18n.languages['default'];
- };
-
- MessageParserEmitter.prototype = {
- constructor: MessageParserEmitter,
-
- /**
- * (We put this method definition here, and not in prototype, to make
- * sure it's not overwritten by any magic.) Walk entire node structure,
- * applying replacements and template functions when appropriate
- *
- * @param {Mixed} node abstract syntax tree (top node or subnode)
- * @param {Array} replacements for $1, $2, ... $n
- * @return {Mixed} single-string node or array of nodes suitable for
- * jQuery appending.
- */
- emit: function ( node, replacements ) {
- var ret, subnodes, operation,
- messageParserEmitter = this;
-
- switch ( typeof node ) {
- case 'string':
- case 'number':
- ret = node;
- break;
- case 'object':
- // node is an array of nodes
- subnodes = $.map( node.slice( 1 ), function ( n ) {
- return messageParserEmitter.emit( n, replacements );
- } );
-
- operation = node[0].toLowerCase();
-
- if ( typeof messageParserEmitter[operation] === 'function' ) {
- ret = messageParserEmitter[operation]( subnodes, replacements );
- } else {
- throw new Error( 'unknown operation "' + operation + '"' );
- }
-
- break;
- case 'undefined':
- // Parsing the empty string (as an entire expression, or as a
- // paramExpression in a template) results in undefined
- // Perhaps a more clever parser can detect this, and return the
- // empty string? Or is that useful information?
- // The logical thing is probably to return the empty string here
- // when we encounter undefined.
- ret = '';
- break;
- default:
- throw new Error( 'unexpected type in AST: ' + typeof node );
- }
-
- return ret;
- },
-
- /**
- * Parsing has been applied depth-first we can assume that all nodes
- * here are single nodes Must return a single node to parents -- a
- * jQuery with synthetic span However, unwrap any other synthetic spans
- * in our children and pass them upwards
- *
- * @param {Array} nodes Mixed, some single nodes, some arrays of nodes.
- * @return String
- */
- concat: function ( nodes ) {
- var result = '';
-
- $.each( nodes, function ( i, node ) {
- // strings, integers, anything else
- result += node;
- } );
-
- return result;
- },
-
- /**
- * Return escaped replacement of correct index, or string if
- * unavailable. Note that we expect the parsed parameter to be
- * zero-based. i.e. $1 should have become [ 0 ]. if the specified
- * parameter is not found return the same string (e.g. "$99" ->
- * parameter 98 -> not found -> return "$99" ) TODO throw error if
- * nodes.length > 1 ?
- *
- * @param {Array} nodes One element, integer, n >= 0
- * @param {Array} replacements for $1, $2, ... $n
- * @return {string} replacement
- */
- replace: function ( nodes, replacements ) {
- var index = parseInt( nodes[0], 10 );
-
- if ( index < replacements.length ) {
- // replacement is not a string, don't touch!
- return replacements[index];
- } else {
- // index not found, fallback to displaying variable
- return '$' + ( index + 1 );
- }
- },
-
- /**
- * Transform parsed structure into pluralization n.b. The first node may
- * be a non-integer (for instance, a string representing an Arabic
- * number). So convert it back with the current language's
- * convertNumber.
- *
- * @param {Array} nodes List [ {String|Number}, {String}, {String} ... ]
- * @return {String} selected pluralized form according to current
- * language.
- */
- plural: function ( nodes ) {
- var count = parseFloat( this.language.convertNumber( nodes[0], 10 ) ),
- forms = nodes.slice( 1 );
-
- return forms.length ? this.language.convertPlural( count, forms ) : '';
- },
-
- /**
- * Transform parsed structure into gender Usage
- * {{gender:gender|masculine|feminine|neutral}}.
- *
- * @param {Array} nodes List [ {String}, {String}, {String} , {String} ]
- * @return {String} selected gender form according to current language
- */
- gender: function ( nodes ) {
- var gender = nodes[0],
- forms = nodes.slice( 1 );
-
- return this.language.gender( gender, forms );
- },
-
- /**
- * Transform parsed structure into grammar conversion. Invoked by
- * putting {{grammar:form|word}} in a message
- *
- * @param {Array} nodes List [{Grammar case eg: genitive}, {String word}]
- * @return {String} selected grammatical form according to current
- * language.
- */
- grammar: function ( nodes ) {
- var form = nodes[0],
- word = nodes[1];
-
- return word && form && this.language.convertGrammar( word, form );
- }
- };
-
- $.extend( $.i18n.parser.emitter, new MessageParserEmitter() );
-}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/jquery.i18n.fallbacks.js b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/jquery.i18n.fallbacks.js
deleted file mode 100644
index 4584c5f2..00000000
--- a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/jquery.i18n.fallbacks.js
+++ /dev/null
@@ -1,186 +0,0 @@
-/**
- * jQuery Internationalization library
- *
- * Copyright (C) 2012 Santhosh Thottingal
- *
- * jquery.i18n is dual licensed GPLv2 or later and MIT. You don't have to do anything special to
- * choose one license or the other and you don't have to notify anyone which license you are using.
- * You are free to use UniversalLanguageSelector in commercial projects as long as the copyright
- * header is left intact. See files GPL-LICENSE and MIT-LICENSE for details.
- *
- * @licence GNU General Public Licence 2.0 or later
- * @licence MIT License
- */
-( function ( $, undefined ) {
- 'use strict';
-
- $.i18n = $.i18n || {};
- $.extend( $.i18n.fallbacks, {
- ab: [ 'ru' ],
- ace: [ 'id' ],
- aln: [ 'sq' ],
- // Not so standard - als is supposed to be Tosk Albanian,
- // but in Wikipedia it's used for a Germanic language.
- als: [ 'gsw', 'de' ],
- an: [ 'es' ],
- anp: [ 'hi' ],
- arn: [ 'es' ],
- arz: [ 'ar' ],
- av: [ 'ru' ],
- ay: [ 'es' ],
- ba: [ 'ru' ],
- bar: [ 'de' ],
- 'bat-smg': [ 'sgs', 'lt' ],
- bcc: [ 'fa' ],
- 'be-x-old': [ 'be-tarask' ],
- bh: [ 'bho' ],
- bjn: [ 'id' ],
- bm: [ 'fr' ],
- bpy: [ 'bn' ],
- bqi: [ 'fa' ],
- bug: [ 'id' ],
- 'cbk-zam': [ 'es' ],
- ce: [ 'ru' ],
- crh: [ 'crh-latn' ],
- 'crh-cyrl': [ 'ru' ],
- csb: [ 'pl' ],
- cv: [ 'ru' ],
- 'de-at': [ 'de' ],
- 'de-ch': [ 'de' ],
- 'de-formal': [ 'de' ],
- dsb: [ 'de' ],
- dtp: [ 'ms' ],
- egl: [ 'it' ],
- eml: [ 'it' ],
- ff: [ 'fr' ],
- fit: [ 'fi' ],
- 'fiu-vro': [ 'vro', 'et' ],
- frc: [ 'fr' ],
- frp: [ 'fr' ],
- frr: [ 'de' ],
- fur: [ 'it' ],
- gag: [ 'tr' ],
- gan: [ 'gan-hant', 'zh-hant', 'zh-hans' ],
- 'gan-hans': [ 'zh-hans' ],
- 'gan-hant': [ 'zh-hant', 'zh-hans' ],
- gl: [ 'pt' ],
- glk: [ 'fa' ],
- gn: [ 'es' ],
- gsw: [ 'de' ],
- hif: [ 'hif-latn' ],
- hsb: [ 'de' ],
- ht: [ 'fr' ],
- ii: [ 'zh-cn', 'zh-hans' ],
- inh: [ 'ru' ],
- iu: [ 'ike-cans' ],
- jut: [ 'da' ],
- jv: [ 'id' ],
- kaa: [ 'kk-latn', 'kk-cyrl' ],
- kbd: [ 'kbd-cyrl' ],
- khw: [ 'ur' ],
- kiu: [ 'tr' ],
- kk: [ 'kk-cyrl' ],
- 'kk-arab': [ 'kk-cyrl' ],
- 'kk-latn': [ 'kk-cyrl' ],
- 'kk-cn': [ 'kk-arab', 'kk-cyrl' ],
- 'kk-kz': [ 'kk-cyrl' ],
- 'kk-tr': [ 'kk-latn', 'kk-cyrl' ],
- kl: [ 'da' ],
- 'ko-kp': [ 'ko' ],
- koi: [ 'ru' ],
- krc: [ 'ru' ],
- ks: [ 'ks-arab' ],
- ksh: [ 'de' ],
- ku: [ 'ku-latn' ],
- 'ku-arab': [ 'ckb' ],
- kv: [ 'ru' ],
- lad: [ 'es' ],
- lb: [ 'de' ],
- lbe: [ 'ru' ],
- lez: [ 'ru' ],
- li: [ 'nl' ],
- lij: [ 'it' ],
- liv: [ 'et' ],
- lmo: [ 'it' ],
- ln: [ 'fr' ],
- ltg: [ 'lv' ],
- lzz: [ 'tr' ],
- mai: [ 'hi' ],
- 'map-bms': [ 'jv', 'id' ],
- mg: [ 'fr' ],
- mhr: [ 'ru' ],
- min: [ 'id' ],
- mo: [ 'ro' ],
- mrj: [ 'ru' ],
- mwl: [ 'pt' ],
- myv: [ 'ru' ],
- mzn: [ 'fa' ],
- nah: [ 'es' ],
- nap: [ 'it' ],
- nds: [ 'de' ],
- 'nds-nl': [ 'nl' ],
- 'nl-informal': [ 'nl' ],
- no: [ 'nb' ],
- os: [ 'ru' ],
- pcd: [ 'fr' ],
- pdc: [ 'de' ],
- pdt: [ 'de' ],
- pfl: [ 'de' ],
- pms: [ 'it' ],
- pt: [ 'pt-br' ],
- 'pt-br': [ 'pt' ],
- qu: [ 'es' ],
- qug: [ 'qu', 'es' ],
- rgn: [ 'it' ],
- rmy: [ 'ro' ],
- 'roa-rup': [ 'rup' ],
- rue: [ 'uk', 'ru' ],
- ruq: [ 'ruq-latn', 'ro' ],
- 'ruq-cyrl': [ 'mk' ],
- 'ruq-latn': [ 'ro' ],
- sa: [ 'hi' ],
- sah: [ 'ru' ],
- scn: [ 'it' ],
- sg: [ 'fr' ],
- sgs: [ 'lt' ],
- sli: [ 'de' ],
- sr: [ 'sr-ec' ],
- srn: [ 'nl' ],
- stq: [ 'de' ],
- su: [ 'id' ],
- szl: [ 'pl' ],
- tcy: [ 'kn' ],
- tg: [ 'tg-cyrl' ],
- tt: [ 'tt-cyrl', 'ru' ],
- 'tt-cyrl': [ 'ru' ],
- ty: [ 'fr' ],
- udm: [ 'ru' ],
- ug: [ 'ug-arab' ],
- uk: [ 'ru' ],
- vec: [ 'it' ],
- vep: [ 'et' ],
- vls: [ 'nl' ],
- vmf: [ 'de' ],
- vot: [ 'fi' ],
- vro: [ 'et' ],
- wa: [ 'fr' ],
- wo: [ 'fr' ],
- wuu: [ 'zh-hans' ],
- xal: [ 'ru' ],
- xmf: [ 'ka' ],
- yi: [ 'he' ],
- za: [ 'zh-hans' ],
- zea: [ 'nl' ],
- zh: [ 'zh-hans' ],
- 'zh-classical': [ 'lzh' ],
- 'zh-cn': [ 'zh-hans' ],
- 'zh-hant': [ 'zh-hans' ],
- 'zh-hk': [ 'zh-hant', 'zh-hans' ],
- 'zh-min-nan': [ 'nan' ],
- 'zh-mo': [ 'zh-hk', 'zh-hant', 'zh-hans' ],
- 'zh-my': [ 'zh-sg', 'zh-hans' ],
- 'zh-sg': [ 'zh-hans' ],
- 'zh-tw': [ 'zh-hant', 'zh-hans' ],
- 'zh-yue': [ 'yue' ]
- } );
-}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/jquery.i18n.js b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/jquery.i18n.js
deleted file mode 100644
index 9236e4e2..00000000
--- a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/jquery.i18n.js
+++ /dev/null
@@ -1,287 +0,0 @@
-/**
- * jQuery Internationalization library
- *
- * Copyright (C) 2012 Santhosh Thottingal
- *
- * jquery.i18n is dual licensed GPLv2 or later and MIT. You don't have to do
- * anything special to choose one license or the other and you don't have to
- * notify anyone which license you are using. You are free to use
- * UniversalLanguageSelector in commercial projects as long as the copyright
- * header is left intact. See files GPL-LICENSE and MIT-LICENSE for details.
- *
- * @licence GNU General Public Licence 2.0 or later
- * @licence MIT License
- */
-
-( function ( $ ) {
- 'use strict';
-
- var nav, I18N,
- slice = Array.prototype.slice;
- /**
- * @constructor
- * @param {Object} options
- */
- I18N = function ( options ) {
- // Load defaults
- this.options = $.extend( {}, I18N.defaults, options );
-
- this.parser = this.options.parser;
- this.locale = this.options.locale;
- this.messageStore = this.options.messageStore;
- this.languages = {};
-
- this.init();
- };
-
- I18N.prototype = {
- /**
- * Initialize by loading locales and setting up
- * String.prototype.toLocaleString and String.locale.
- */
- init: function () {
- var i18n = this;
-
- // Set locale of String environment
- String.locale = i18n.locale;
-
- // Override String.localeString method
- String.prototype.toLocaleString = function () {
- var localeParts, localePartIndex, value, locale, fallbackIndex,
- tryingLocale, message;
-
- value = this.valueOf();
- locale = i18n.locale;
- fallbackIndex = 0;
-
- while ( locale ) {
- // Iterate through locales starting at most-specific until
- // localization is found. As in fi-Latn-FI, fi-Latn and fi.
- localeParts = locale.split( '-' );
- localePartIndex = localeParts.length;
-
- do {
- tryingLocale = localeParts.slice( 0, localePartIndex ).join( '-' );
- message = i18n.messageStore.get( tryingLocale, value );
-
- if ( message ) {
- return message;
- }
-
- localePartIndex--;
- } while ( localePartIndex );
-
- if ( locale === 'en' ) {
- break;
- }
-
- locale = ( $.i18n.fallbacks[i18n.locale] && $.i18n.fallbacks[i18n.locale][fallbackIndex] ) ||
- i18n.options.fallbackLocale;
- $.i18n.log( 'Trying fallback locale for ' + i18n.locale + ': ' + locale );
-
- fallbackIndex++;
- }
-
- // key not found
- return '';
- };
- },
-
- /*
- * Destroy the i18n instance.
- */
- destroy: function () {
- $.removeData( document, 'i18n' );
- },
-
- /**
- * General message loading API This can take a URL string for
- * the json formatted messages. Example:
- * <code>load('path/to/all_localizations.json');</code>
- *
- * To load a localization file for a locale:
- * <code>
- * load('path/to/de-messages.json', 'de' );
- * </code>
- *
- * To load a localization file from a directory:
- * <code>
- * load('path/to/i18n/directory', 'de' );
- * </code>
- * The above method has the advantage of fallback resolution.
- * ie, it will automatically load the fallback locales for de.
- * For most usecases, this is the recommended method.
- * It is optional to have trailing slash at end.
- *
- * A data object containing message key- message translation mappings
- * can also be passed. Example:
- * <code>
- * load( { 'hello' : 'Hello' }, optionalLocale );
- * </code>
- *
- * A source map containing key-value pair of languagename and locations
- * can also be passed. Example:
- * <code>
- * load( {
- * bn: 'i18n/bn.json',
- * he: 'i18n/he.json',
- * en: 'i18n/en.json'
- * } )
- * </code>
- *
- * If the data argument is null/undefined/false,
- * all cached messages for the i18n instance will get reset.
- *
- * @param {String|Object} source
- * @param {String} locale Language tag
- * @returns {jQuery.Promise}
- */
- load: function ( source, locale ) {
- var fallbackLocales, locIndex, fallbackLocale, sourceMap = {};
- if ( !source && !locale ) {
- source = 'i18n/' + $.i18n().locale + '.json';
- locale = $.i18n().locale;
- }
- if ( typeof source === 'string' &&
- source.split( '.' ).pop() !== 'json'
- ) {
- // Load specified locale then check for fallbacks when directory is specified in load()
- sourceMap[locale] = source + '/' + locale + '.json';
- fallbackLocales = ( $.i18n.fallbacks[locale] || [] )
- .concat( this.options.fallbackLocale );
- for ( locIndex in fallbackLocales ) {
- fallbackLocale = fallbackLocales[locIndex];
- sourceMap[fallbackLocale] = source + '/' + fallbackLocale + '.json';
- }
- return this.load( sourceMap );
- } else {
- return this.messageStore.load( source, locale );
- }
-
- },
-
- /**
- * Does parameter and magic word substitution.
- *
- * @param {string} key Message key
- * @param {Array} parameters Message parameters
- * @return {string}
- */
- parse: function ( key, parameters ) {
- var message = key.toLocaleString();
- // FIXME: This changes the state of the I18N object,
- // should probably not change the 'this.parser' but just
- // pass it to the parser.
- this.parser.language = $.i18n.languages[$.i18n().locale] || $.i18n.languages['default'];
- if ( message === '' ) {
- message = key;
- }
- return this.parser.parse( message, parameters );
- }
- };
-
- /**
- * Process a message from the $.I18N instance
- * for the current document, stored in jQuery.data(document).
- *
- * @param {string} key Key of the message.
- * @param {string} param1 [param...] Variadic list of parameters for {key}.
- * @return {string|$.I18N} Parsed message, or if no key was given
- * the instance of $.I18N is returned.
- */
- $.i18n = function ( key, param1 ) {
- var parameters,
- i18n = $.data( document, 'i18n' ),
- options = typeof key === 'object' && key;
-
- // If the locale option for this call is different then the setup so far,
- // update it automatically. This doesn't just change the context for this
- // call but for all future call as well.
- // If there is no i18n setup yet, don't do this. It will be taken care of
- // by the `new I18N` construction below.
- // NOTE: It should only change language for this one call.
- // Then cache instances of I18N somewhere.
- if ( options && options.locale && i18n && i18n.locale !== options.locale ) {
- String.locale = i18n.locale = options.locale;
- }
-
- if ( !i18n ) {
- i18n = new I18N( options );
- $.data( document, 'i18n', i18n );
- }
-
- if ( typeof key === 'string' ) {
- if ( param1 !== undefined ) {
- parameters = slice.call( arguments, 1 );
- } else {
- parameters = [];
- }
-
- return i18n.parse( key, parameters );
- } else {
- // FIXME: remove this feature/bug.
- return i18n;
- }
- };
-
- $.fn.i18n = function () {
- var i18n = $.data( document, 'i18n' );
-
- if ( !i18n ) {
- i18n = new I18N();
- $.data( document, 'i18n', i18n );
- }
- String.locale = i18n.locale;
- return this.each( function () {
- var $this = $( this ),
- messageKey = $this.data( 'i18n' );
-
- if ( messageKey ) {
- $this.text( i18n.parse( messageKey ) );
- } else {
- $this.find( '[data-i18n]' ).i18n();
- }
- } );
- };
-
- String.locale = String.locale || $( 'html' ).attr( 'lang' );
-
- if ( !String.locale ) {
- if ( typeof window.navigator !== undefined ) {
- nav = window.navigator;
- String.locale = nav.language || nav.userLanguage || '';
- } else {
- String.locale = '';
- }
- }
-
- $.i18n.languages = {};
- $.i18n.messageStore = $.i18n.messageStore || {};
- $.i18n.parser = {
- // The default parser only handles variable substitution
- parse: function ( message, parameters ) {
- return message.replace( /\$(\d+)/g, function ( str, match ) {
- var index = parseInt( match, 10 ) - 1;
- return parameters[index] !== undefined ? parameters[index] : '$' + match;
- } );
- },
- emitter: {}
- };
- $.i18n.fallbacks = {};
- $.i18n.debug = false;
- $.i18n.log = function ( /* arguments */ ) {
- if ( window.console && $.i18n.debug ) {
- window.console.log.apply( window.console, arguments );
- }
- };
- /* Static members */
- I18N.defaults = {
- locale: String.locale,
- fallbackLocale: 'en',
- parser: $.i18n.parser,
- messageStore: $.i18n.messageStore
- };
-
- // Expose constructor
- $.i18n.constructor = I18N;
-}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/jquery.i18n.language.js b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/jquery.i18n.language.js
deleted file mode 100644
index 3ce0a993..00000000
--- a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/jquery.i18n.language.js
+++ /dev/null
@@ -1,472 +0,0 @@
-/*global pluralRuleParser */
-( function ( $ ) {
- 'use strict';
-
- var language = {
- // CLDR plural rules generated using
- // libs/CLDRPluralRuleParser/tools/PluralXML2JSON.html
- pluralRules: {
- ak: {
- one: 'n = 0..1'
- },
- am: {
- one: 'i = 0 or n = 1'
- },
- ar: {
- zero: 'n = 0',
- one: 'n = 1',
- two: 'n = 2',
- few: 'n % 100 = 3..10',
- many: 'n % 100 = 11..99'
- },
- be: {
- one: 'n % 10 = 1 and n % 100 != 11',
- few: 'n % 10 = 2..4 and n % 100 != 12..14',
- many: 'n % 10 = 0 or n % 10 = 5..9 or n % 100 = 11..14'
- },
- bh: {
- one: 'n = 0..1'
- },
- bn: {
- one: 'i = 0 or n = 1'
- },
- br: {
- one: 'n % 10 = 1 and n % 100 != 11,71,91',
- two: 'n % 10 = 2 and n % 100 != 12,72,92',
- few: 'n % 10 = 3..4,9 and n % 100 != 10..19,70..79,90..99',
- many: 'n != 0 and n % 1000000 = 0'
- },
- bs: {
- one: 'v = 0 and i % 10 = 1 and i % 100 != 11 or f % 10 = 1 and f % 100 != 11',
- few: 'v = 0 and i % 10 = 2..4 and i % 100 != 12..14 or f % 10 = 2..4 and f % 100 != 12..14'
- },
- cs: {
- one: 'i = 1 and v = 0',
- few: 'i = 2..4 and v = 0',
- many: 'v != 0'
- },
- cy: {
- zero: 'n = 0',
- one: 'n = 1',
- two: 'n = 2',
- few: 'n = 3',
- many: 'n = 6'
- },
- da: {
- one: 'n = 1 or t != 0 and i = 0,1'
- },
- fa: {
- one: 'i = 0 or n = 1'
- },
- ff: {
- one: 'i = 0,1'
- },
- fil: {
- one: 'i = 0..1 and v = 0'
- },
- fr: {
- one: 'i = 0,1'
- },
- ga: {
- one: 'n = 1',
- two: 'n = 2',
- few: 'n = 3..6',
- many: 'n = 7..10'
- },
- gd: {
- one: 'n = 1,11',
- two: 'n = 2,12',
- few: 'n = 3..10,13..19'
- },
- gu: {
- one: 'i = 0 or n = 1'
- },
- guw: {
- one: 'n = 0..1'
- },
- gv: {
- one: 'n % 10 = 1',
- two: 'n % 10 = 2',
- few: 'n % 100 = 0,20,40,60'
- },
- he: {
- one: 'i = 1 and v = 0',
- two: 'i = 2 and v = 0',
- many: 'v = 0 and n != 0..10 and n % 10 = 0'
- },
- hi: {
- one: 'i = 0 or n = 1'
- },
- hr: {
- one: 'v = 0 and i % 10 = 1 and i % 100 != 11 or f % 10 = 1 and f % 100 != 11',
- few: 'v = 0 and i % 10 = 2..4 and i % 100 != 12..14 or f % 10 = 2..4 and f % 100 != 12..14'
- },
- hy: {
- one: 'i = 0,1'
- },
- is: {
- one: 't = 0 and i % 10 = 1 and i % 100 != 11 or t != 0'
- },
- iu: {
- one: 'n = 1',
- two: 'n = 2'
- },
- iw: {
- one: 'i = 1 and v = 0',
- two: 'i = 2 and v = 0',
- many: 'v = 0 and n != 0..10 and n % 10 = 0'
- },
- kab: {
- one: 'i = 0,1'
- },
- kn: {
- one: 'i = 0 or n = 1'
- },
- kw: {
- one: 'n = 1',
- two: 'n = 2'
- },
- lag: {
- zero: 'n = 0',
- one: 'i = 0,1 and n != 0'
- },
- ln: {
- one: 'n = 0..1'
- },
- lt: {
- one: 'n % 10 = 1 and n % 100 != 11..19',
- few: 'n % 10 = 2..9 and n % 100 != 11..19',
- many: 'f != 0'
- },
- lv: {
- zero: 'n % 10 = 0 or n % 100 = 11..19 or v = 2 and f % 100 = 11..19',
- one: 'n % 10 = 1 and n % 100 != 11 or v = 2 and f % 10 = 1 and f % 100 != 11 or v != 2 and f % 10 = 1'
- },
- mg: {
- one: 'n = 0..1'
- },
- mk: {
- one: 'v = 0 and i % 10 = 1 or f % 10 = 1'
- },
- mo: {
- one: 'i = 1 and v = 0',
- few: 'v != 0 or n = 0 or n != 1 and n % 100 = 1..19'
- },
- mr: {
- one: 'i = 0 or n = 1'
- },
- mt: {
- one: 'n = 1',
- few: 'n = 0 or n % 100 = 2..10',
- many: 'n % 100 = 11..19'
- },
- naq: {
- one: 'n = 1',
- two: 'n = 2'
- },
- nso: {
- one: 'n = 0..1'
- },
- pa: {
- one: 'n = 0..1'
- },
- pl: {
- one: 'i = 1 and v = 0',
- few: 'v = 0 and i % 10 = 2..4 and i % 100 != 12..14',
- many: 'v = 0 and i != 1 and i % 10 = 0..1 or v = 0 and i % 10 = 5..9 or v = 0 and i % 100 = 12..14'
- },
- pt: {
- one: 'i = 1 and v = 0 or i = 0 and t = 1'
- },
- // jscs:disable requireCamelCaseOrUpperCaseIdentifiers
- pt_PT: {
- one: 'n = 1 and v = 0'
- },
- // jscs:enable requireCamelCaseOrUpperCaseIdentifiers
- ro: {
- one: 'i = 1 and v = 0',
- few: 'v != 0 or n = 0 or n != 1 and n % 100 = 1..19'
- },
- ru: {
- one: 'v = 0 and i % 10 = 1 and i % 100 != 11',
- many: 'v = 0 and i % 10 = 0 or v = 0 and i % 10 = 5..9 or v = 0 and i % 100 = 11..14'
- },
- se: {
- one: 'n = 1',
- two: 'n = 2'
- },
- sh: {
- one: 'v = 0 and i % 10 = 1 and i % 100 != 11 or f % 10 = 1 and f % 100 != 11',
- few: 'v = 0 and i % 10 = 2..4 and i % 100 != 12..14 or f % 10 = 2..4 and f % 100 != 12..14'
- },
- shi: {
- one: 'i = 0 or n = 1',
- few: 'n = 2..10'
- },
- si: {
- one: 'n = 0,1 or i = 0 and f = 1'
- },
- sk: {
- one: 'i = 1 and v = 0',
- few: 'i = 2..4 and v = 0',
- many: 'v != 0'
- },
- sl: {
- one: 'v = 0 and i % 100 = 1',
- two: 'v = 0 and i % 100 = 2',
- few: 'v = 0 and i % 100 = 3..4 or v != 0'
- },
- sma: {
- one: 'n = 1',
- two: 'n = 2'
- },
- smi: {
- one: 'n = 1',
- two: 'n = 2'
- },
- smj: {
- one: 'n = 1',
- two: 'n = 2'
- },
- smn: {
- one: 'n = 1',
- two: 'n = 2'
- },
- sms: {
- one: 'n = 1',
- two: 'n = 2'
- },
- sr: {
- one: 'v = 0 and i % 10 = 1 and i % 100 != 11 or f % 10 = 1 and f % 100 != 11',
- few: 'v = 0 and i % 10 = 2..4 and i % 100 != 12..14 or f % 10 = 2..4 and f % 100 != 12..14'
- },
- ti: {
- one: 'n = 0..1'
- },
- tl: {
- one: 'i = 0..1 and v = 0'
- },
- tzm: {
- one: 'n = 0..1 or n = 11..99'
- },
- uk: {
- one: 'v = 0 and i % 10 = 1 and i % 100 != 11',
- few: 'v = 0 and i % 10 = 2..4 and i % 100 != 12..14',
- many: 'v = 0 and i % 10 = 0 or v = 0 and i % 10 = 5..9 or v = 0 and i % 100 = 11..14'
- },
- wa: {
- one: 'n = 0..1'
- },
- zu: {
- one: 'i = 0 or n = 1'
- }
- },
-
- /**
- * Plural form transformations, needed for some languages.
- *
- * @param count
- * integer Non-localized quantifier
- * @param forms
- * array List of plural forms
- * @return string Correct form for quantifier in this language
- */
- convertPlural: function ( count, forms ) {
- var pluralRules,
- pluralFormIndex,
- index,
- explicitPluralPattern = new RegExp( '\\d+=', 'i' ),
- formCount,
- form;
-
- if ( !forms || forms.length === 0 ) {
- return '';
- }
-
- // Handle for Explicit 0= & 1= values
- for ( index = 0; index < forms.length; index++ ) {
- form = forms[index];
- if ( explicitPluralPattern.test( form ) ) {
- formCount = parseInt( form.substring( 0, form.indexOf( '=' ) ), 10 );
- if ( formCount === count ) {
- return ( form.substr( form.indexOf( '=' ) + 1 ) );
- }
- forms[index] = undefined;
- }
- }
-
- forms = $.map( forms, function ( form ) {
- if ( form !== undefined ) {
- return form;
- }
- } );
-
- pluralRules = this.pluralRules[$.i18n().locale];
-
- if ( !pluralRules ) {
- // default fallback.
- return ( count === 1 ) ? forms[0] : forms[1];
- }
-
- pluralFormIndex = this.getPluralForm( count, pluralRules );
- pluralFormIndex = Math.min( pluralFormIndex, forms.length - 1 );
-
- return forms[pluralFormIndex];
- },
-
- /**
- * For the number, get the plural for index
- *
- * @param number
- * @param pluralRules
- * @return plural form index
- */
- getPluralForm: function ( number, pluralRules ) {
- var i,
- pluralForms = [ 'zero', 'one', 'two', 'few', 'many', 'other' ],
- pluralFormIndex = 0;
-
- for ( i = 0; i < pluralForms.length; i++ ) {
- if ( pluralRules[pluralForms[i]] ) {
- if ( pluralRuleParser( pluralRules[pluralForms[i]], number ) ) {
- return pluralFormIndex;
- }
-
- pluralFormIndex++;
- }
- }
-
- return pluralFormIndex;
- },
-
- /**
- * Converts a number using digitTransformTable.
- *
- * @param {number} num Value to be converted
- * @param {boolean} integer Convert the return value to an integer
- */
- convertNumber: function ( num, integer ) {
- var tmp, item, i,
- transformTable, numberString, convertedNumber;
-
- // Set the target Transform table:
- transformTable = this.digitTransformTable( $.i18n().locale );
- numberString = String( num );
- convertedNumber = '';
-
- if ( !transformTable ) {
- return num;
- }
-
- // Check if the restore to Latin number flag is set:
- if ( integer ) {
- if ( parseFloat( num, 10 ) === num ) {
- return num;
- }
-
- tmp = [];
-
- for ( item in transformTable ) {
- tmp[transformTable[item]] = item;
- }
-
- transformTable = tmp;
- }
-
- for ( i = 0; i < numberString.length; i++ ) {
- if ( transformTable[numberString[i]] ) {
- convertedNumber += transformTable[numberString[i]];
- } else {
- convertedNumber += numberString[i];
- }
- }
-
- return integer ? parseFloat( convertedNumber, 10 ) : convertedNumber;
- },
-
- /**
- * Grammatical transformations, needed for inflected languages.
- * Invoked by putting {{grammar:form|word}} in a message.
- * Override this method for languages that need special grammar rules
- * applied dynamically.
- *
- * @param word {String}
- * @param form {String}
- * @return {String}
- */
- convertGrammar: function ( word, form ) { /*jshint unused: false */
- return word;
- },
-
- /**
- * Provides an alternative text depending on specified gender. Usage
- * {{gender:[gender|user object]|masculine|feminine|neutral}}. If second
- * or third parameter are not specified, masculine is used.
- *
- * These details may be overriden per language.
- *
- * @param gender
- * string male, female, or anything else for neutral.
- * @param forms
- * array List of gender forms
- *
- * @return string
- */
- gender: function ( gender, forms ) {
- if ( !forms || forms.length === 0 ) {
- return '';
- }
-
- while ( forms.length < 2 ) {
- forms.push( forms[forms.length - 1] );
- }
-
- if ( gender === 'male' ) {
- return forms[0];
- }
-
- if ( gender === 'female' ) {
- return forms[1];
- }
-
- return ( forms.length === 3 ) ? forms[2] : forms[0];
- },
-
- /**
- * Get the digit transform table for the given language
- * See http://cldr.unicode.org/translation/numbering-systems
- * @param language
- * @returns {Array|boolean} List of digits in the passed language or false
- * representation, or boolean false if there is no information.
- */
- digitTransformTable: function ( language ) {
- var tables = {
- ar: '٠١٢٣٤٥٦٧٨٩',
- fa: '۰۱۲۳۴۵۶۷۸۹',
- ml: '൦൧൨൩൪൫൬൭൮൯',
- kn: '೦೧೨೩೪೫೬೭೮೯',
- lo: '໐໑໒໓໔໕໖໗໘໙',
- or: '୦୧୨୩୪୫୬୭୮୯',
- kh: '០១២៣៤៥៦៧៨៩',
- pa: '੦੧੨੩੪੫੬੭੮੯',
- gu: '૦૧૨૩૪૫૬૭૮૯',
- hi: '०१२३४५६७८९',
- my: '၀၁၂၃၄၅၆၇၈၉',
- ta: '௦௧௨௩௪௫௬௭௮௯',
- te: '౦౧౨౩౪౫౬౭౮౯',
- th: '๐๑๒๓๔๕๖๗๘๙', // FIXME use iso 639 codes
- bo: '༠༡༢༣༤༥༦༧༨༩' // FIXME use iso 639 codes
- };
-
- if ( !tables[language] ) {
- return false;
- }
-
- return tables[language].split( '' );
- }
- };
-
- $.extend( $.i18n.languages, {
- default: language
- } );
-}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/jquery.i18n.messagestore.js b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/jquery.i18n.messagestore.js
deleted file mode 100644
index 759295ce..00000000
--- a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/jquery.i18n.messagestore.js
+++ /dev/null
@@ -1,125 +0,0 @@
-/**
- * jQuery Internationalization library - Message Store
- *
- * Copyright (C) 2012 Santhosh Thottingal
- *
- * jquery.i18n is dual licensed GPLv2 or later and MIT. You don't have to do anything special to
- * choose one license or the other and you don't have to notify anyone which license you are using.
- * You are free to use UniversalLanguageSelector in commercial projects as long as the copyright
- * header is left intact. See files GPL-LICENSE and MIT-LICENSE for details.
- *
- * @licence GNU General Public Licence 2.0 or later
- * @licence MIT License
- */
-
-( function ( $, window, undefined ) {
- 'use strict';
-
- var MessageStore = function () {
- this.messages = {};
- this.sources = {};
- };
-
- /**
- * See https://github.com/wikimedia/jquery.i18n/wiki/Specification#wiki-Message_File_Loading
- */
- MessageStore.prototype = {
-
- /**
- * General message loading API This can take a URL string for
- * the json formatted messages.
- * <code>load('path/to/all_localizations.json');</code>
- *
- * This can also load a localization file for a locale <code>
- * load( 'path/to/de-messages.json', 'de' );
- * </code>
- * A data object containing message key- message translation mappings
- * can also be passed Eg:
- * <code>
- * load( { 'hello' : 'Hello' }, optionalLocale );
- * </code> If the data argument is
- * null/undefined/false,
- * all cached messages for the i18n instance will get reset.
- *
- * @param {String|Object} source
- * @param {String} locale Language tag
- * @return {jQuery.Promise}
- */
- load: function ( source, locale ) {
- var key = null,
- deferred = null,
- deferreds = [],
- messageStore = this;
-
- if ( typeof source === 'string' ) {
- // This is a URL to the messages file.
- $.i18n.log( 'Loading messages from: ' + source );
- deferred = jsonMessageLoader( source )
- .done( function ( localization ) {
- messageStore.set( locale, localization );
- } );
-
- return deferred.promise();
- }
-
- if ( locale ) {
- // source is an key-value pair of messages for given locale
- messageStore.set( locale, source );
-
- return $.Deferred().resolve();
- } else {
- // source is a key-value pair of locales and their source
- for ( key in source ) {
- if ( Object.prototype.hasOwnProperty.call( source, key ) ) {
- locale = key;
- // No {locale} given, assume data is a group of languages,
- // call this function again for each language.
- deferreds.push( messageStore.load( source[key], locale ) );
- }
- }
- return $.when.apply( $, deferreds );
- }
-
- },
-
- /**
- * Set messages to the given locale.
- * If locale exists, add messages to the locale.
- * @param locale
- * @param messages
- */
- set: function ( locale, messages ) {
- if ( !this.messages[locale] ) {
- this.messages[locale] = messages;
- } else {
- this.messages[locale] = $.extend( this.messages[locale], messages );
- }
- },
-
- /**
- *
- * @param locale
- * @param messageKey
- * @returns {Boolean}
- */
- get: function ( locale, messageKey ) {
- return this.messages[locale] && this.messages[locale][messageKey];
- }
- };
-
- function jsonMessageLoader( url ) {
- var deferred = $.Deferred();
-
- $.getJSON( url )
- .done( deferred.resolve )
- .fail( function ( jqxhr, settings, exception ) {
- $.i18n.log( 'Error in loading messages from ' + url + ' Exception: ' + exception );
- // Ignore 404 exception, because we are handling fallabacks explicitly
- deferred.resolve();
- } );
-
- return deferred.promise();
- }
-
- $.extend( $.i18n.messageStore, new MessageStore() );
-}( jQuery, window ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/jquery.i18n.parser.js b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/jquery.i18n.parser.js
deleted file mode 100644
index 3dea2842..00000000
--- a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/jquery.i18n.parser.js
+++ /dev/null
@@ -1,309 +0,0 @@
-/**
- * jQuery Internationalization library
- *
- * Copyright (C) 2011-2013 Santhosh Thottingal, Neil Kandalgaonkar
- *
- * jquery.i18n is dual licensed GPLv2 or later and MIT. You don't have to do
- * anything special to choose one license or the other and you don't have to
- * notify anyone which license you are using. You are free to use
- * UniversalLanguageSelector in commercial projects as long as the copyright
- * header is left intact. See files GPL-LICENSE and MIT-LICENSE for details.
- *
- * @licence GNU General Public Licence 2.0 or later
- * @licence MIT License
- */
-
-( function ( $ ) {
- 'use strict';
-
- var MessageParser = function ( options ) {
- this.options = $.extend( {}, $.i18n.parser.defaults, options );
- this.language = $.i18n.languages[String.locale] || $.i18n.languages['default'];
- this.emitter = $.i18n.parser.emitter;
- };
-
- MessageParser.prototype = {
-
- constructor: MessageParser,
-
- simpleParse: function ( message, parameters ) {
- return message.replace( /\$(\d+)/g, function ( str, match ) {
- var index = parseInt( match, 10 ) - 1;
-
- return parameters[index] !== undefined ? parameters[index] : '$' + match;
- } );
- },
-
- parse: function ( message, replacements ) {
- if ( message.indexOf( '{{' ) < 0 ) {
- return this.simpleParse( message, replacements );
- }
-
- this.emitter.language = $.i18n.languages[$.i18n().locale] ||
- $.i18n.languages['default'];
-
- return this.emitter.emit( this.ast( message ), replacements );
- },
-
- ast: function ( message ) {
- var pipe, colon, backslash, anyCharacter, dollar, digits, regularLiteral,
- regularLiteralWithoutBar, regularLiteralWithoutSpace, escapedOrLiteralWithoutBar,
- escapedOrRegularLiteral, templateContents, templateName, openTemplate,
- closeTemplate, expression, paramExpression, result,
- pos = 0;
-
- // Try parsers until one works, if none work return null
- function choice( parserSyntax ) {
- return function () {
- var i, result;
-
- for ( i = 0; i < parserSyntax.length; i++ ) {
- result = parserSyntax[i]();
-
- if ( result !== null ) {
- return result;
- }
- }
-
- return null;
- };
- }
-
- // Try several parserSyntax-es in a row.
- // All must succeed; otherwise, return null.
- // This is the only eager one.
- function sequence( parserSyntax ) {
- var i, res,
- originalPos = pos,
- result = [];
-
- for ( i = 0; i < parserSyntax.length; i++ ) {
- res = parserSyntax[i]();
-
- if ( res === null ) {
- pos = originalPos;
-
- return null;
- }
-
- result.push( res );
- }
-
- return result;
- }
-
- // Run the same parser over and over until it fails.
- // Must succeed a minimum of n times; otherwise, return null.
- function nOrMore( n, p ) {
- return function () {
- var originalPos = pos,
- result = [],
- parsed = p();
-
- while ( parsed !== null ) {
- result.push( parsed );
- parsed = p();
- }
-
- if ( result.length < n ) {
- pos = originalPos;
-
- return null;
- }
-
- return result;
- };
- }
-
- // Helpers -- just make parserSyntax out of simpler JS builtin types
-
- function makeStringParser( s ) {
- var len = s.length;
-
- return function () {
- var result = null;
-
- if ( message.substr( pos, len ) === s ) {
- result = s;
- pos += len;
- }
-
- return result;
- };
- }
-
- function makeRegexParser( regex ) {
- return function () {
- var matches = message.substr( pos ).match( regex );
-
- if ( matches === null ) {
- return null;
- }
-
- pos += matches[0].length;
-
- return matches[0];
- };
- }
-
- pipe = makeStringParser( '|' );
- colon = makeStringParser( ':' );
- backslash = makeStringParser( '\\' );
- anyCharacter = makeRegexParser( /^./ );
- dollar = makeStringParser( '$' );
- digits = makeRegexParser( /^\d+/ );
- regularLiteral = makeRegexParser( /^[^{}\[\]$\\]/ );
- regularLiteralWithoutBar = makeRegexParser( /^[^{}\[\]$\\|]/ );
- regularLiteralWithoutSpace = makeRegexParser( /^[^{}\[\]$\s]/ );
-
- // There is a general pattern:
- // parse a thing;
- // if it worked, apply transform,
- // otherwise return null.
- // But using this as a combinator seems to cause problems
- // when combined with nOrMore().
- // May be some scoping issue.
- function transform( p, fn ) {
- return function () {
- var result = p();
-
- return result === null ? null : fn( result );
- };
- }
-
- // Used to define "literals" within template parameters. The pipe
- // character is the parameter delimeter, so by default
- // it is not a literal in the parameter
- function literalWithoutBar() {
- var result = nOrMore( 1, escapedOrLiteralWithoutBar )();
-
- return result === null ? null : result.join( '' );
- }
-
- function literal() {
- var result = nOrMore( 1, escapedOrRegularLiteral )();
-
- return result === null ? null : result.join( '' );
- }
-
- function escapedLiteral() {
- var result = sequence( [ backslash, anyCharacter ] );
-
- return result === null ? null : result[1];
- }
-
- choice( [ escapedLiteral, regularLiteralWithoutSpace ] );
- escapedOrLiteralWithoutBar = choice( [ escapedLiteral, regularLiteralWithoutBar ] );
- escapedOrRegularLiteral = choice( [ escapedLiteral, regularLiteral ] );
-
- function replacement() {
- var result = sequence( [ dollar, digits ] );
-
- if ( result === null ) {
- return null;
- }
-
- return [ 'REPLACE', parseInt( result[1], 10 ) - 1 ];
- }
-
- templateName = transform(
- // see $wgLegalTitleChars
- // not allowing : due to the need to catch "PLURAL:$1"
- makeRegexParser( /^[ !"$&'()*,.\/0-9;=?@A-Z\^_`a-z~\x80-\xFF+\-]+/ ),
-
- function ( result ) {
- return result.toString();
- }
- );
-
- function templateParam() {
- var expr,
- result = sequence( [ pipe, nOrMore( 0, paramExpression ) ] );
-
- if ( result === null ) {
- return null;
- }
-
- expr = result[1];
-
- // use a "CONCAT" operator if there are multiple nodes,
- // otherwise return the first node, raw.
- return expr.length > 1 ? [ 'CONCAT' ].concat( expr ) : expr[0];
- }
-
- function templateWithReplacement() {
- var result = sequence( [ templateName, colon, replacement ] );
-
- return result === null ? null : [ result[0], result[2] ];
- }
-
- function templateWithOutReplacement() {
- var result = sequence( [ templateName, colon, paramExpression ] );
-
- return result === null ? null : [ result[0], result[2] ];
- }
-
- templateContents = choice( [
- function () {
- var res = sequence( [
- // templates can have placeholders for dynamic
- // replacement eg: {{PLURAL:$1|one car|$1 cars}}
- // or no placeholders eg:
- // {{GRAMMAR:genitive|{{SITENAME}}}
- choice( [ templateWithReplacement, templateWithOutReplacement ] ),
- nOrMore( 0, templateParam )
- ] );
-
- return res === null ? null : res[0].concat( res[1] );
- },
- function () {
- var res = sequence( [ templateName, nOrMore( 0, templateParam ) ] );
-
- if ( res === null ) {
- return null;
- }
-
- return [ res[0] ].concat( res[1] );
- }
- ] );
-
- openTemplate = makeStringParser( '{{' );
- closeTemplate = makeStringParser( '}}' );
-
- function template() {
- var result = sequence( [ openTemplate, templateContents, closeTemplate ] );
-
- return result === null ? null : result[1];
- }
-
- expression = choice( [ template, replacement, literal ] );
- paramExpression = choice( [ template, replacement, literalWithoutBar ] );
-
- function start() {
- var result = nOrMore( 0, expression )();
-
- if ( result === null ) {
- return null;
- }
-
- return [ 'CONCAT' ].concat( result );
- }
-
- result = start();
-
- /*
- * For success, the pos must have gotten to the end of the input
- * and returned a non-null.
- * n.b. This is part of language infrastructure, so we do not throw an internationalizable message.
- */
- if ( result === null || pos !== message.length ) {
- throw new Error( 'Parse error at position ' + pos.toString() + ' in input: ' + message );
- }
-
- return result;
- }
-
- };
-
- $.extend( $.i18n.parser, new MessageParser() );
-}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/bs.js b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/bs.js
deleted file mode 100644
index 5370069e..00000000
--- a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/bs.js
+++ /dev/null
@@ -1,22 +0,0 @@
-/**
- * Bosnian (bosanski) language functions
- */
-( function ( $ ) {
- 'use strict';
-
- $.i18n.languages.bs = $.extend( {}, $.i18n.languages['default'], {
- convertGrammar: function ( word, form ) {
- switch ( form ) {
- case 'instrumental': // instrumental
- word = 's ' + word;
- break;
- case 'lokativ': // locative
- word = 'o ' + word;
- break;
- }
-
- return word;
- }
- } );
-
-}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/dsb.js b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/dsb.js
deleted file mode 100644
index cc069ebf..00000000
--- a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/dsb.js
+++ /dev/null
@@ -1,22 +0,0 @@
-/**
- * Lower Sorbian (Dolnoserbski) language functions
- */
-( function ( $ ) {
- 'use strict';
-
- $.i18n.languages.dsb = $.extend( {}, $.i18n.languages['default'], {
- convertGrammar: function ( word, form ) {
- switch ( form ) {
- case 'instrumental': // instrumental
- word = 'z ' + word;
- break;
- case 'lokatiw': // lokatiw
- word = 'wo ' + word;
- break;
- }
-
- return word;
- }
- } );
-
-}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/fi.js b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/fi.js
deleted file mode 100644
index d8e9578a..00000000
--- a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/fi.js
+++ /dev/null
@@ -1,49 +0,0 @@
-/**
- * Finnish (Suomi) language functions
- *
- * @author Santhosh Thottingal
- */
-
-( function ( $ ) {
- 'use strict';
-
- $.i18n.languages.fi = $.extend( {}, $.i18n.languages['default'], {
- convertGrammar: function ( word, form ) {
- // vowel harmony flag
- var aou = word.match( /[aou][^äöy]*$/i ),
- origWord = word;
- if ( word.match( /wiki$/i ) ) {
- aou = false;
- }
-
- // append i after final consonant
- if ( word.match( /[bcdfghjklmnpqrstvwxz]$/i ) ) {
- word += 'i';
- }
-
- switch ( form ) {
- case 'genitive':
- word += 'n';
- break;
- case 'elative':
- word += ( aou ? 'sta' : 'stä' );
- break;
- case 'partitive':
- word += ( aou ? 'a' : 'ä' );
- break;
- case 'illative':
- // Double the last letter and add 'n'
- word += word.substr( word.length - 1 ) + 'n';
- break;
- case 'inessive':
- word += ( aou ? 'ssa' : 'ssä' );
- break;
- default:
- word = origWord;
- break;
- }
-
- return word;
- }
- } );
-}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/ga.js b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/ga.js
deleted file mode 100644
index 1aceab75..00000000
--- a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/ga.js
+++ /dev/null
@@ -1,38 +0,0 @@
-/**
- * Irish (Gaeilge) language functions
- */
-( function ( $ ) {
- 'use strict';
-
- $.i18n.languages.ga = $.extend( {}, $.i18n.languages['default'], {
- convertGrammar: function ( word, form ) {
- if ( form === 'ainmlae' ) {
- switch ( word ) {
- case 'an Domhnach':
- word = 'Dé Domhnaigh';
- break;
- case 'an Luan':
- word = 'Dé Luain';
- break;
- case 'an Mháirt':
- word = 'Dé Mháirt';
- break;
- case 'an Chéadaoin':
- word = 'Dé Chéadaoin';
- break;
- case 'an Déardaoin':
- word = 'Déardaoin';
- break;
- case 'an Aoine':
- word = 'Dé hAoine';
- break;
- case 'an Satharn':
- word = 'Dé Sathairn';
- break;
- }
- }
-
- return word;
- }
- } );
-}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/he.js b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/he.js
deleted file mode 100644
index cbbe90b9..00000000
--- a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/he.js
+++ /dev/null
@@ -1,31 +0,0 @@
-/**
- * Hebrew (עברית) language functions
- */
-( function ( $ ) {
- 'use strict';
-
- $.i18n.languages.he = $.extend( {}, $.i18n.languages['default'], {
- convertGrammar: function ( word, form ) {
- switch ( form ) {
- case 'prefixed':
- case 'תחילית': // the same word in Hebrew
- // Duplicate prefixed "Waw", but only if it's not already double
- if ( word.substr( 0, 1 ) === 'ו' && word.substr( 0, 2 ) !== 'וו' ) {
- word = 'ו' + word;
- }
-
- // Remove the "He" if prefixed
- if ( word.substr( 0, 1 ) === 'ה' ) {
- word = word.substr( 1, word.length );
- }
-
- // Add a hyphen (maqaf) before numbers and non-Hebrew letters
- if ( word.substr( 0, 1 ) < 'א' || word.substr( 0, 1 ) > 'ת' ) {
- word = '־' + word;
- }
- }
-
- return word;
- }
- } );
-}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/hsb.js b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/hsb.js
deleted file mode 100644
index 957616f6..00000000
--- a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/hsb.js
+++ /dev/null
@@ -1,21 +0,0 @@
-/**
- * Upper Sorbian (Hornjoserbsce) language functions
- */
-( function ( $ ) {
- 'use strict';
-
- $.i18n.languages.hsb = $.extend( {}, $.i18n.languages['default'], {
- convertGrammar: function ( word, form ) {
- switch ( form ) {
- case 'instrumental': // instrumental
- word = 'z ' + word;
- break;
- case 'lokatiw': // lokatiw
- word = 'wo ' + word;
- break;
- }
-
- return word;
- }
- } );
-}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/hu.js b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/hu.js
deleted file mode 100644
index 1177b850..00000000
--- a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/hu.js
+++ /dev/null
@@ -1,26 +0,0 @@
-/**
- * Hungarian language functions
- *
- * @author Santhosh Thottingal
- */
-( function ( $ ) {
- 'use strict';
-
- $.i18n.languages.hu = $.extend( {}, $.i18n.languages['default'], {
- convertGrammar: function ( word, form ) {
- switch ( form ) {
- case 'rol':
- word += 'ról';
- break;
- case 'ba':
- word += 'ba';
- break;
- case 'k':
- word += 'k';
- break;
- }
-
- return word;
- }
- } );
-}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/hy.js b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/hy.js
deleted file mode 100644
index 9c568992..00000000
--- a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/hy.js
+++ /dev/null
@@ -1,25 +0,0 @@
-/**
- * Armenian (Հայերեն) language functions
- */
-
-( function ( $ ) {
- 'use strict';
-
- $.i18n.languages.hy = $.extend( {}, $.i18n.languages['default'], {
- convertGrammar: function ( word, form ) {
- if ( form === 'genitive' ) { // սեռական հոլով
- if ( word.substr( -1 ) === 'ա' ) {
- word = word.substr( 0, word.length - 1 ) + 'այի';
- } else if ( word.substr( -1 ) === 'ո' ) {
- word = word.substr( 0, word.length - 1 ) + 'ոյի';
- } else if ( word.substr( -4 ) === 'գիրք' ) {
- word = word.substr( 0, word.length - 4 ) + 'գրքի';
- } else {
- word = word + 'ի';
- }
- }
-
- return word;
- }
- } );
-}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/la.js b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/la.js
deleted file mode 100644
index 11c1122d..00000000
--- a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/la.js
+++ /dev/null
@@ -1,54 +0,0 @@
-/**
- * Latin (lingua Latina) language functions
- *
- * @author Santhosh Thottingal
- */
-
-( function ( $ ) {
- 'use strict';
-
- $.i18n.languages.la = $.extend( {}, $.i18n.languages['default'], {
- convertGrammar: function ( word, form ) {
- switch ( form ) {
- case 'genitive':
- // only a few declensions, and even for those mostly the singular only
- word = word.replace( /u[ms]$/i, 'i' ); // 2nd declension singular
- word = word.replace( /ommunia$/i, 'ommunium' ); // 3rd declension neuter plural (partly)
- word = word.replace( /a$/i, 'ae' ); // 1st declension singular
- word = word.replace( /libri$/i, 'librorum' ); // 2nd declension plural (partly)
- word = word.replace( /nuntii$/i, 'nuntiorum' ); // 2nd declension plural (partly)
- word = word.replace( /tio$/i, 'tionis' ); // 3rd declension singular (partly)
- word = word.replace( /ns$/i, 'ntis' );
- word = word.replace( /as$/i, 'atis' );
- word = word.replace( /es$/i, 'ei' ); // 5th declension singular
- break;
- case 'accusative':
- // only a few declensions, and even for those mostly the singular only
- word = word.replace( /u[ms]$/i, 'um' ); // 2nd declension singular
- word = word.replace( /ommunia$/i, 'am' ); // 3rd declension neuter plural (partly)
- word = word.replace( /a$/i, 'ommunia' ); // 1st declension singular
- word = word.replace( /libri$/i, 'libros' ); // 2nd declension plural (partly)
- word = word.replace( /nuntii$/i, 'nuntios' );// 2nd declension plural (partly)
- word = word.replace( /tio$/i, 'tionem' ); // 3rd declension singular (partly)
- word = word.replace( /ns$/i, 'ntem' );
- word = word.replace( /as$/i, 'atem' );
- word = word.replace( /es$/i, 'em' ); // 5th declension singular
- break;
- case 'ablative':
- // only a few declensions, and even for those mostly the singular only
- word = word.replace( /u[ms]$/i, 'o' ); // 2nd declension singular
- word = word.replace( /ommunia$/i, 'ommunibus' ); // 3rd declension neuter plural (partly)
- word = word.replace( /a$/i, 'a' ); // 1st declension singular
- word = word.replace( /libri$/i, 'libris' ); // 2nd declension plural (partly)
- word = word.replace( /nuntii$/i, 'nuntiis' ); // 2nd declension plural (partly)
- word = word.replace( /tio$/i, 'tione' ); // 3rd declension singular (partly)
- word = word.replace( /ns$/i, 'nte' );
- word = word.replace( /as$/i, 'ate' );
- word = word.replace( /es$/i, 'e' ); // 5th declension singular
- break;
- }
-
- return word;
- }
- } );
-}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/ml.js b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/ml.js
deleted file mode 100644
index f724b7b2..00000000
--- a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/ml.js
+++ /dev/null
@@ -1,98 +0,0 @@
-/**
- * Malayalam language functions
- *
- * @author Santhosh Thottingal
- */
-
-( function ( $ ) {
- 'use strict';
-
- $.i18n.languages.ml = $.extend( {}, $.i18n.languages['default'], {
- convertGrammar: function ( word, form ) {
- form = form.toLowerCase();
- switch ( form ) {
- case 'ഉദ്ദേശിക':
- case 'dative':
- if ( word.substr( -1 ) === 'ു' ||
- word.substr( -1 ) === 'ൂ' ||
- word.substr( -1 ) === 'ൗ' ||
- word.substr( -1 ) === 'ൌ'
- ) {
- word += 'വിന്';
- } else if ( word.substr( -1 ) === 'ം' ) {
- word = word.substr( 0, word.length - 1 ) + 'ത്തിന്';
- } else if ( word.substr( -1 ) === 'ൻ' ) {
- // Atomic chillu n. അവൻ -> അവന്
- word = word.substr( 0, word.length - 1 ) + 'ന്';
- } else if ( word.substr( -3 ) === 'ന്\u200d' ) {
- // chillu n. അവൻ -> അവന്
- word = word.substr( 0, word.length - 1 );
- } else if ( word.substr( -1 ) === 'ൾ' || word.substr( -3 ) === 'ള്\u200d' ) {
- word += 'ക്ക്';
- } else if ( word.substr( -1 ) === 'ർ' || word.substr( -3 ) === 'ര്\u200d' ) {
- word += 'ക്ക്';
- } else if ( word.substr( -1 ) === 'ൽ' ) {
- // Atomic chillu ൽ , ഫയൽ -> ഫയലിന്
- word = word.substr( 0, word.length - 1 ) + 'ലിന്';
- } else if ( word.substr( -3 ) === 'ല്\u200d' ) {
- // chillu ല്\u200d , ഫയല്\u200d -> ഫയലിന്
- word = word.substr( 0, word.length - 2 ) + 'ിന്';
- } else if ( word.substr( -2 ) === 'ു്' ) {
- word = word.substr( 0, word.length - 2 ) + 'ിന്';
- } else if ( word.substr( -1 ) === '്' ) {
- word = word.substr( 0, word.length - 1 ) + 'ിന്';
- } else {
- // കാവ്യ -> കാവ്യയ്ക്ക്, ഹരി -> ഹരിയ്ക്ക്, മല -> മലയ്ക്ക്
- word += 'യ്ക്ക്';
- }
-
- break;
- case 'സംബന്ധിക':
- case 'genitive':
- if ( word.substr( -1 ) === 'ം' ) {
- word = word.substr( 0, word.length - 1 ) + 'ത്തിന്റെ';
- } else if ( word.substr( -2 ) === 'ു്' ) {
- word = word.substr( 0, word.length - 2 ) + 'ിന്റെ';
- } else if ( word.substr( -1 ) === '്' ) {
- word = word.substr( 0, word.length - 1 ) + 'ിന്റെ';
- } else if ( word.substr( -1 ) === 'ു' ||
- word.substr( -1 ) === 'ൂ' ||
- word.substr( -1 ) === 'ൗ' ||
- word.substr( -1 ) === 'ൌ'
- ) {
- word += 'വിന്റെ';
- } else if ( word.substr( -1 ) === 'ൻ' ) {
- // Atomic chillu n. അവൻ -> അവന്റെ
- word = word.substr( 0, word.length - 1 ) + 'ന്റെ';
- } else if ( word.substr( -3 ) === 'ന്\u200d' ) {
- // chillu n. അവൻ -> അവന്റെ
- word = word.substr( 0, word.length - 1 ) + 'റെ';
- } else if ( word.substr( -3 ) === 'ള്\u200d' ) {
- // chillu n. അവൾ -> അവളുടെ
- word = word.substr( 0, word.length - 2 ) + 'ുടെ';
- } else if ( word.substr( -1 ) === 'ൾ' ) {
- // Atomic chillu n. അവള്\u200d -> അവളുടെ
- word = word.substr( 0, word.length - 1 ) + 'ളുടെ';
- } else if ( word.substr( -1 ) === 'ൽ' ) {
- // Atomic l. മുയല്\u200d -> മുയലിന്റെ
- word = word.substr( 0, word.length - 1 ) + 'ലിന്റെ';
- } else if ( word.substr( -3 ) === 'ല്\u200d' ) {
- // chillu l. മുയല്\u200d -> അവളുടെ
- word = word.substr( 0, word.length - 2 ) + 'ിന്റെ';
- } else if ( word.substr( -3 ) === 'ര്\u200d' ) {
- // chillu r. അവര്\u200d -> അവരുടെ
- word = word.substr( 0, word.length - 2 ) + 'ുടെ';
- } else if ( word.substr( -1 ) === 'ർ' ) {
- // Atomic chillu r. അവർ -> അവരുടെ
- word = word.substr( 0, word.length - 1 ) + 'രുടെ';
- } else {
- word += 'യുടെ';
- }
-
- break;
- }
-
- return word;
- }
- } );
-}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/os.js b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/os.js
deleted file mode 100644
index 47443671..00000000
--- a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/os.js
+++ /dev/null
@@ -1,76 +0,0 @@
-/**
- * Ossetian (Ирон) language functions
- *
- * @author Santhosh Thottingal
- */
-
-( function ( $ ) {
- 'use strict';
-
- $.i18n.languages.os = $.extend( {}, $.i18n.languages['default'], {
- convertGrammar: function ( word, form ) {
- var endAllative, jot, hyphen, ending;
-
- // Ending for allative case
- endAllative = 'мæ';
- // Variable for 'j' beetwen vowels
- jot = '';
- // Variable for "-" for not Ossetic words
- hyphen = '';
- // Variable for ending
- ending = '';
-
- if ( word.match( /тæ$/i ) ) {
- // Checking if the $word is in plural form
- word = word.substring( 0, word.length - 1 );
- endAllative = 'æм';
- } else if ( word.match( /[аæеёиоыэюя]$/i ) ) {
- // Works if word is in singular form.
- // Checking if word ends on one of the vowels: е, ё, и, о, ы, э, ю,
- // я.
- jot = 'й';
- } else if ( word.match( /у$/i ) ) {
- // Checking if word ends on 'у'. 'У' can be either consonant 'W' or
- // vowel 'U' in cyrillic Ossetic.
- // Examples: {{grammar:genitive|аунеу}} = аунеуы,
- // {{grammar:genitive|лæппу}} = лæппуйы.
- if ( !word.substring( word.length - 2, word.length - 1 )
- .match( /[аæеёиоыэюя]$/i ) ) {
- jot = 'й';
- }
- } else if ( !word.match( /[бвгджзйклмнопрстфхцчшщьъ]$/i ) ) {
- hyphen = '-';
- }
-
- switch ( form ) {
- case 'genitive':
- ending = hyphen + jot + 'ы';
- break;
- case 'dative':
- ending = hyphen + jot + 'æн';
- break;
- case 'allative':
- ending = hyphen + endAllative;
- break;
- case 'ablative':
- if ( jot === 'й' ) {
- ending = hyphen + jot + 'æ';
- } else {
- ending = hyphen + jot + 'æй';
- }
- break;
- case 'superessive':
- ending = hyphen + jot + 'ыл';
- break;
- case 'equative':
- ending = hyphen + jot + 'ау';
- break;
- case 'comitative':
- ending = hyphen + 'имæ';
- break;
- }
-
- return word + ending;
- }
- } );
-}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/ru.js b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/ru.js
deleted file mode 100644
index 893b2386..00000000
--- a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/ru.js
+++ /dev/null
@@ -1,29 +0,0 @@
-/**
- * Russian (Русский) language functions
- */
-
-( function ( $ ) {
- 'use strict';
-
- $.i18n.languages.ru = $.extend( {}, $.i18n.languages['default'], {
- convertGrammar: function ( word, form ) {
- if ( form === 'genitive' ) { // родительный падеж
- if ( word.substr( -1 ) === 'ь' ) {
- word = word.substr( 0, word.length - 1 ) + 'я';
- } else if ( word.substr( -2 ) === 'ия' ) {
- word = word.substr( 0, word.length - 2 ) + 'ии';
- } else if ( word.substr( -2 ) === 'ка' ) {
- word = word.substr( 0, word.length - 2 ) + 'ки';
- } else if ( word.substr( -2 ) === 'ти' ) {
- word = word.substr( 0, word.length - 2 ) + 'тей';
- } else if ( word.substr( -2 ) === 'ды' ) {
- word = word.substr( 0, word.length - 2 ) + 'дов';
- } else if ( word.substr( -3 ) === 'ник' ) {
- word = word.substr( 0, word.length - 3 ) + 'ника';
- }
- }
-
- return word;
- }
- } );
-}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/sl.js b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/sl.js
deleted file mode 100644
index a3aafc3b..00000000
--- a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/sl.js
+++ /dev/null
@@ -1,26 +0,0 @@
-/**
- * Slovenian (Slovenščina) language functions
- */
-
-( function ( $ ) {
- 'use strict';
-
- $.i18n.languages.sl = $.extend( {}, $.i18n.languages['default'], {
- convertGrammar: function ( word, form ) {
- switch ( form ) {
- // locative
- case 'mestnik':
- word = 'o ' + word;
-
- break;
- // instrumental
- case 'orodnik':
- word = 'z ' + word;
-
- break;
- }
-
- return word;
- }
- } );
-}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/uk.js b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/uk.js
deleted file mode 100644
index 8e69efcd..00000000
--- a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/uk.js
+++ /dev/null
@@ -1,39 +0,0 @@
-/**
- * Ukrainian (Українська) language functions
- */
-
-( function ( $ ) {
- 'use strict';
-
- $.i18n.languages.uk = $.extend( {}, $.i18n.languages['default'], {
- convertGrammar: function ( word, form ) {
- switch ( form ) {
- case 'genitive': // родовий відмінок
- if ( word.substr( -1 ) === 'ь' ) {
- word = word.substr( 0, word.length - 1 ) + 'я';
- } else if ( word.substr( -2 ) === 'ія' ) {
- word = word.substr( 0, word.length - 2 ) + 'ії';
- } else if ( word.substr( -2 ) === 'ка' ) {
- word = word.substr( 0, word.length - 2 ) + 'ки';
- } else if ( word.substr( -2 ) === 'ти' ) {
- word = word.substr( 0, word.length - 2 ) + 'тей';
- } else if ( word.substr( -2 ) === 'ды' ) {
- word = word.substr( 0, word.length - 2 ) + 'дов';
- } else if ( word.substr( -3 ) === 'ник' ) {
- word = word.substr( 0, word.length - 3 ) + 'ника';
- }
-
- break;
- case 'accusative': // знахідний відмінок
- if ( word.substr( -2 ) === 'ія' ) {
- word = word.substr( 0, word.length - 2 ) + 'ію';
- }
-
- break;
- }
-
- return word;
- }
- } );
-
-}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/package.json b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/package.json
deleted file mode 100644
index 0dded29c..00000000
--- a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/package.json
+++ /dev/null
@@ -1,47 +0,0 @@
-{
- "name": "jquery.i18n",
- "version": "1.0.3",
- "description": "jQuery based internationalization library",
- "homepage": "https://github.com/wikimedia/jquery.i18n",
- "keywords": [
- "internationalization",
- "localization",
- "i18n",
- "jquery",
- "l10n"
- ],
- "author": {
- "name": "Santhosh Thottingal",
- "email": "santhosh.thottingal@gmail.com"
- },
- "contributors": [
- "Amir Aharoni <amir.aharoni@mail.huji.ac.il>",
- "Niklas Laxström <nlaxstrom@wikimedia.org>",
- "Neil Kandalgaonkar <neilk@brevity.org>",
- "David Chan <david@troi.org>"
- ],
- "devDependencies": {
- "qunit": "0.7.6",
- "grunt": "0.4.5",
- "grunt-cli": "0.1.13",
- "grunt-contrib-jshint": "0.11.2",
- "grunt-contrib-connect": "0.10.1",
- "grunt-contrib-qunit": "0.7.0",
- "grunt-contrib-watch": "0.6.1",
- "grunt-jscs": "1.8.0"
- },
- "repository": {
- "type": "git",
- "url": "git://github.com/wikimedia/jquery.i18n.git"
- },
- "bugs": {
- "url" : "http://github.com/wikimedia/jquery.i18n/issues"
- },
- "engine": {
- "node": ">=0.8.x"
- },
- "license": "(MIT OR GPL-2.0)",
- "scripts": {
- "test": "grunt test --verbose"
- }
-}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/css/jquery.ime.css b/MLEB/UniversalLanguageSelector/lib/jquery.ime/css/jquery.ime.css
index 9a254cc5..1a91d745 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/css/jquery.ime.css
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/css/jquery.ime.css
@@ -8,7 +8,6 @@
background-image: linear-gradient(transparent, transparent), url('../images/ime-active.svg');
background-color: rgba(255,255,255,0.75);
background-position: left 3px center;
- background-position-x: 3px;
height: 15px;
font-size: small;
padding: 2px 2px 1px 20px;
@@ -168,13 +167,11 @@ span.ime-disable-shortcut {
.imeselector-menu .ime-checked {
/* @embed */
- background: url(../images/tick.png) no-repeat left center;
+ background: url(../images/tick.png) no-repeat left 4px center;
/* @embed */
background-image: -webkit-linear-gradient(transparent, transparent), url('../images/tick.svg');
/* @embed */
background-image: linear-gradient(transparent, transparent), url('../images/tick.svg');
- background-position: left 4px center;
- background-position-x: 4px;
}
.imeselector-menu .ime-help-link {
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/jquery.ime.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/jquery.ime.js
index 3ae830c5..6bf6589e 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/jquery.ime.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/jquery.ime.js
@@ -1,29 +1,71 @@
-/*! jquery.ime - v0.1.0+20150818
+/*! jquery.ime - v0.2.0+20181004
* https://github.com/wikimedia/jquery.ime
-* Copyright (c) 2015 Santhosh Thottingal; Licensed GPL, MIT */
+* Copyright (c) 2018 Santhosh Thottingal; License: (GPL-2.0+ OR MIT) */
( function ( $ ) {
'use strict';
+ var TextEntryFactory, TextEntry, FormWidgetEntry, ContentEditableEntry,
+ defaultInputMethod;
// rangy is defined in the rangy library
/*global rangy */
/**
+ * Just initializes an empty static object.
+ * Similar to initClass in https://www.mediawiki.org/wiki/OOjs
+ *
+ * @param {Function} fn
+ */
+ function initClass( fn ) {
+ fn.static = fn.static || {};
+ }
+
+ /**
+ * Inheritance. Uses pattern similar to OOjs (https://www.mediawiki.org/wiki/OOjs).
+ * Extend prototype and static methods and properties of child constructor from
+ * a parent constructor.
+ *
+ * @param {Function} targetFn
+ * @param {Function} originFn
+ */
+ function inheritClass( targetFn, originFn ) {
+ targetFn.parent = originFn;
+ targetFn.prototype = $.extend( {}, originFn.prototype );
+ targetFn.prototype.constructor = originFn.constructor;
+ targetFn.static = $.extend( {}, originFn.static );
+ }
+
+ /**
* IME Class
+ *
+ * @class
+ * @constructor
+ * @param {HTMLElement} element Element on which to listen for events
+ * @param {TextEntry} textEntry Text entry object to use to get/set text
+ * @param {Object} [options]
* @param {Function} [options.helpHandler] Called for each input method row in the selector
- * @param {Object} options.helpHandler.imeSelector
- * @param {String} options.helpHandler.ime Id of the input method
+ * @param {Object} [options.helpHandler.imeSelector]
+ * @param {string} [options.helpHandler.ime] Id of the input method
*/
- function IME( element, options ) {
+ function IME( element, textEntry, options ) {
this.$element = $( element );
+ this.textEntry = textEntry;
// This needs to be delayed here since extending language list happens at DOM ready
$.ime.defaults.languages = arrayKeys( $.ime.languages );
this.options = $.extend( {}, $.ime.defaults, options );
+ if ( this.options.imePath ) {
+ // Set the global IME path from the one specified to the instance
+ // TODO: remove this functionality and force clients to set the global
+ // IME path
+ $.ime.path = this.options.imePath;
+ }
this.active = false;
this.shifted = false;
this.inputmethod = null;
this.language = null;
this.context = '';
- this.selector = this.$element.imeselector( this.options );
+ if ( this.options.showSelector ) {
+ this.selector = this.$element.imeselector( this.options );
+ }
this.listen();
}
@@ -34,12 +76,69 @@
* Listen for events and bind to handlers
*/
listen: function () {
- this.$element.on( 'keypress.ime', $.proxy( this.keypress, this ) );
- this.$element.on( 'keyup.ime', $.proxy( this.keyup, this ) );
- this.$element.on( 'keydown.ime', $.proxy( this.keydown, this ) );
- this.$element.on( 'destroy.ime', $.proxy( this.destroy, this ) );
- this.$element.on( 'enable.ime', $.proxy( this.enable, this ) );
- this.$element.on( 'disable.ime', $.proxy( this.disable, this ) );
+ this.$element.on( {
+ 'keypress.ime': this.keypress.bind( this ),
+ 'keyup.ime': this.keyup.bind( this ),
+ 'keydown.ime': this.keydown.bind( this ),
+ 'destroy.ime': this.destroy.bind( this ),
+ 'enable.ime': this.enable.bind( this ),
+ 'disable.ime': this.disable.bind( this )
+ } );
+ },
+
+ /**
+ * Return a list of available language codes
+ *
+ * @return {string[]} Available language codes
+ */
+ getLanguageCodes: function () {
+ return $.ime.defaults.languages;
+ },
+
+ /**
+ * Return the autonym for an available language code
+ *
+ * @param {string} languageCode The language code
+ * @return {string} The autonym
+ */
+ getAutonym: function ( languageCode ) {
+ return $.ime.languages[ languageCode ].autonym;
+ },
+
+ /**
+ * Return a list of available input method ids for a language
+ *
+ * @param {string} languageCode An available language code
+ * @return {string[]} Available input method ids for that language
+ */
+ getInputMethodIds: function ( languageCode ) {
+ return $.ime.languages[ languageCode ].inputmethods;
+ },
+
+ /**
+ * Return the name of an input method
+ *
+ * @param {string} inputMethodId The id of an input method
+ * @return {string} The input method's name
+ * @see IME#load
+ */
+ getInputMethodName: function ( inputMethodId ) {
+ return $.ime.sources[ inputMethodId ].name;
+ },
+
+ /**
+ * Return a list of input method info { id: ..., name: ... } for a language.
+ *
+ * @param {string} languageCode An available language code
+ * @return {Object[]} Info object for each available input method
+ */
+ getInputMethods: function ( languageCode ) {
+ return this.getInputMethodIds( languageCode ).map( function ( inputMethodId ) {
+ return {
+ id: inputMethodId,
+ name: $.ime.sources[ inputMethodId ].name
+ };
+ } );
},
/**
@@ -49,9 +148,9 @@
* @param {string} input
* @param {string} context
* @param {boolean} altGr whether altGr key is pressed or not
- * @returns {object} transliteration object
- * @returns {bool} return.noop Whether to consider input processed or passed through.
- * @returns {string} return.output the transliterated input or input unmodified.
+ * @return {Object} Transliteration object
+ * @return {boolean} return.noop Whether to consider input processed or passed through.
+ * @return {string} return.output The transliterated input or input unmodified.
*/
transliterate: function ( input, context, altGr ) {
var patterns, regex, rule, replacement, i, retval;
@@ -83,19 +182,19 @@
}
for ( i = 0; i < patterns.length; i++ ) {
- rule = patterns[i];
- regex = new RegExp( rule[0] + '$' );
+ rule = patterns[ i ];
+ regex = new RegExp( rule[ 0 ] + '$' );
// Last item in the rules.
// It can also be a function, because the replace
// method can have a function as the second argument.
- replacement = rule.slice( -1 )[0];
+ replacement = rule.slice( -1 )[ 0 ];
// Input string match test
if ( regex.test( input ) ) {
// Context test required?
if ( rule.length === 3 ) {
- if ( new RegExp( rule[1] + '$' ).test( context ) ) {
+ if ( new RegExp( rule[ 1 ] + '$' ).test( context ) ) {
return { noop: false, output: input.replace( regex, replacement ) };
}
} else {
@@ -122,12 +221,13 @@
/**
* Keypress handler
+ *
* @param {jQuery.Event} e Event
- * @returns {Boolean}
+ * @return {boolean}
*/
keypress: function ( e ) {
var altGr = false,
- c, startPos, pos, endPos, divergingPos, input, replacement;
+ c, input, replacement;
if ( !this.active ) {
return true;
@@ -160,24 +260,10 @@
c = String.fromCharCode( e.which );
- // Get the current caret position. The user may have selected text to overwrite,
- // so get both the start and end position of the selection. If there is no selection,
- // startPos and endPos will be equal.
- pos = this.getCaretPosition( this.$element );
- startPos = pos[0];
- endPos = pos[1];
-
- // Get the last few characters before the one the user just typed,
+ // Append the character being typed to the preceding few characters,
// to provide context for the transliteration regexes.
- // We need to append c because it hasn't been added to $this.val() yet
- input = this.lastNChars(
- this.$element.val() || this.$element.text(),
- startPos,
- this.inputmethod.maxKeyLength
- );
- input += c;
-
- replacement = this.transliterate( input, this.context, altGr );
+ input = this.textEntry.getTextBeforeSelection( this.inputmethod.maxKeyLength );
+ replacement = this.transliterate( input + c, this.context, altGr );
// Update the context
this.context += c;
@@ -198,11 +284,7 @@
return true;
}
- // Drop a common prefix, if any
- divergingPos = this.firstDivergence( input, replacement.output );
- input = input.substring( divergingPos );
- replacement.output = replacement.output.substring( divergingPos );
- replaceText( this.$element, replacement.output, startPos - input.length + 1, endPos );
+ this.textEntry.replaceTextAtSelection( input.length, replacement.output );
e.stopPropagation();
@@ -211,7 +293,8 @@
/**
* Check whether the input method is active or not
- * @returns {Boolean}
+ *
+ * @return {boolean}
*/
isActive: function () {
return this.active;
@@ -249,7 +332,8 @@
/**
* Get the current input method
- * @returns {string} Current input method id
+ *
+ * @return {string} Current input method id
*/
getIM: function () {
return this.inputmethod;
@@ -257,20 +341,25 @@
/**
* Set the current input method
+ *
* @param {string} inputmethodId
+ * @fires imeLanguageChange
*/
setIM: function ( inputmethodId ) {
- this.inputmethod = $.ime.inputmethods[inputmethodId];
+ this.inputmethod = $.ime.inputmethods[ inputmethodId ];
$.ime.preferences.setIM( inputmethodId );
+ this.$element.trigger( 'imeMethodChange' );
},
/**
* Set the current Language
+ *
* @param {string} languageCode
- * @returns {Boolean}
+ * @fires imeLanguageChange
+ * @return {boolean}
*/
setLanguage: function ( languageCode ) {
- if ( !$.ime.languages[languageCode] ) {
+ if ( !$.ime.languages[ languageCode ] ) {
debug( 'Language ' + languageCode + ' is not known to jquery.ime.' );
return false;
@@ -278,12 +367,14 @@
this.language = languageCode;
$.ime.preferences.setLanguage( languageCode );
+ this.$element.trigger( 'imeLanguageChange' );
return true;
},
/**
* Get current language
- * @returns {string}
+ *
+ * @return {string}
*/
getLanguage: function () {
return this.language;
@@ -291,162 +382,207 @@
/**
* load an input method by given id
+ *
* @param {string} inputmethodId
* @return {jQuery.Promise}
*/
load: function ( inputmethodId ) {
- var ime = this,
- deferred = $.Deferred(),
- dependency;
+ return $.ime.load( inputmethodId );
+ }
+ };
- if ( $.ime.inputmethods[inputmethodId] ) {
- return deferred.resolve();
- }
+ /**
+ * TextEntry factory
+ *
+ * @class
+ * @constructor
+ */
+ TextEntryFactory = function IMETextEntryFactory() {
+ this.TextEntryClasses = [];
+ };
- // Validate the input method id.
- if ( !$.ime.sources[inputmethodId] ) {
- return deferred.reject();
- }
+ /* Inheritance */
- dependency = $.ime.sources[inputmethodId].depends;
- if ( dependency && !$.ime.inputmethods[dependency] ) {
- ime.load( dependency ).done( function () {
- ime.load( inputmethodId ).done( function () {
- deferred.resolve();
- } );
- } );
+ initClass( TextEntryFactory );
+
+ /* Methods */
+
+ /**
+ * Register a TextEntry class, with priority over previous registrations
+ *
+ * @param {TextEntry} TextEntryClass Class to register
+ */
+ TextEntryFactory.prototype.register = function ( TextEntryClass ) {
+ this.TextEntryClasses.unshift( TextEntryClass );
+ };
- return deferred;
+ /**
+ * Wrap an editable element with the appropriate TextEntry class
+ *
+ * @param {jQuery} $element The element to wrap
+ * @return {TextEntry|undefined} A TextEntry, or undefined if no match
+ */
+ TextEntryFactory.prototype.wrap = function ( $element ) {
+ var i, len, TextEntryClass;
+ for ( i = 0, len = this.TextEntryClasses.length; i < len; i++ ) {
+ TextEntryClass = this.TextEntryClasses[ i ];
+ if ( TextEntryClass.static.canWrap( $element ) ) {
+ return new TextEntryClass( $element );
}
+ }
+ return undefined;
+ };
- debug( 'Loading ' + inputmethodId );
- deferred = $.ajax( {
- url: ime.options.imePath + $.ime.sources[inputmethodId].source,
- dataType: 'script',
- cache: true
- } ).done( function () {
- debug( inputmethodId + ' loaded' );
- } ).fail( function ( jqxhr, settings, exception ) {
- debug( 'Error in loading inputmethod ' + inputmethodId + ' Exception: ' + exception );
- } );
+ /* Initialization */
- return deferred.promise();
- },
+ TextEntryFactory.static.singleton = new TextEntryFactory();
- /**
- * Returns an array [start, end] of the beginning
- * and the end of the current selection in $element
- * @returns {Array}
- */
- getCaretPosition: function ( $element ) {
- return getCaretPosition( $element );
- },
+ /**
+ * Generic text entry
+ *
+ * @class
+ * @abstract
+ */
+ TextEntry = function IMETextEntry() {
+ };
- /**
- * Set the caret position in the div.
- * @param {jQuery} $element The content editable div element
- * @param {Object} position An object with start and end properties.
- * @return {Array} If the cursor could not be placed at given position, how
- * many characters had to go back to place the cursor
- */
- setCaretPosition: function ( $element, position ) {
- return setCaretPosition( $element, position );
- },
+ /* Inheritance */
- /**
- * Find the point at which a and b diverge, i.e. the first position
- * at which they don't have matching characters.
- *
- * @param a String
- * @param b String
- * @return Position at which a and b diverge, or -1 if a === b
- */
- firstDivergence: function ( a, b ) {
- return firstDivergence( a, b );
- },
+ initClass( TextEntry );
- /**
- * Get the n characters in str that immediately precede pos
- * Example: lastNChars( 'foobarbaz', 5, 2 ) === 'ba'
- *
- * @param str String to search in
- * @param pos Position in str
- * @param n Number of characters to go back from pos
- * @return Substring of str, at most n characters long, immediately preceding pos
- */
- lastNChars: function ( str, pos, n ) {
- return lastNChars( str, pos, n );
- }
- };
+ /* Static methods */
/**
- * jQuery plugin ime
- * @param {Object} option
+ * Test whether can wrap this type of element
+ *
+ * @param {jQuery} $element The element to wrap
+ * @return {boolean} Whether the element can be wrapped
*/
- $.fn.ime = function ( option ) {
- return this.each( function () {
- var data,
- $this = $( this ),
- options = typeof option === 'object' && option;
+ TextEntry.static.canWrap = function () {
+ return false;
+ };
- // Some exclusions: IME shouldn't be applied to textareas with
- // these properties.
- if ( $this.prop( 'readonly' ) ||
- $this.prop( 'disabled' ) ||
- $this.hasClass( 'noime' ) ) {
- return;
- }
+ /* Abstract methods */
- data = $this.data( 'ime' );
+ /**
+ * Get text immediately before the current selection start.
+ *
+ * This SHOULD return the empty string for non-collapsed selections.
+ *
+ * @param {number} maxLength Maximum number of chars (code units) to return
+ * @return {string} Up to maxLength of text
+ */
+ TextEntry.prototype.getTextBeforeSelection = null;
- if ( !data ) {
- data = new IME( this, options );
- $this.data( 'ime', data );
- }
+ /**
+ * Replace the currently selected text and/or text before the selection
+ *
+ * @param {number} precedingCharCount Number of chars before selection to replace
+ * @param {string} newText Replacement text
+ */
+ TextEntry.prototype.replaceTextAtSelection = null;
- if ( typeof option === 'string' ) {
- data[option]();
- }
- } );
+ /**
+ * TextEntry class for input/textarea widgets
+ *
+ * @class
+ * @constructor
+ * @param {jQuery} $element The element to wrap
+ */
+ FormWidgetEntry = function IMEFormWidgetEntry( $element ) {
+ this.$element = $element;
};
- $.ime = {};
- $.ime.inputmethods = {};
- $.ime.sources = {};
- $.ime.preferences = {};
- $.ime.languages = {};
+ /* Inheritance */
- var defaultInputMethod = {
- contextLength: 0,
- maxKeyLength: 1
- };
+ inheritClass( FormWidgetEntry, TextEntry );
- $.ime.register = function ( inputMethod ) {
- $.ime.inputmethods[inputMethod.id] = $.extend( {}, defaultInputMethod, inputMethod );
+ /* Static methods */
+
+ /**
+ * @inheritdoc TextEntry
+ */
+ FormWidgetEntry.static.canWrap = function ( $element ) {
+ return $element.is( 'input:not([type]), input[type=text], input[type=search], textarea' ) &&
+ !$element.prop( 'readonly' ) &&
+ !$element.prop( 'disabled' ) &&
+ !$element.hasClass( 'noime' );
};
- // default options
- $.ime.defaults = {
- imePath: '../', // Relative/Absolute path for the rules folder of jquery.ime
- languages: [], // Languages to be used- by default all languages
- helpHandler: null // Called for each ime option in the menu
+ /* Instance methods */
+
+ /**
+ * @inheritdoc TextEntry
+ */
+ FormWidgetEntry.prototype.getTextBeforeSelection = function ( maxLength ) {
+ var pos = this.getCaretPosition();
+ return this.$element.val().substring(
+ Math.max( 0, pos.start - maxLength ),
+ pos.start
+ );
};
/**
- * private function for debugging
+ * @inheritdoc TextEntry
*/
- function debug( $obj ) {
- if ( window.console && window.console.log ) {
- window.console.log( $obj );
+ FormWidgetEntry.prototype.replaceTextAtSelection = function ( precedingCharCount, newText ) {
+ var selection,
+ length,
+ newLines,
+ start,
+ scrollTop,
+ pos,
+ element = this.$element.get( 0 );
+
+ if ( typeof element.selectionStart === 'number' && typeof element.selectionEnd === 'number' ) {
+ // IE9+ and all other browsers
+ start = element.selectionStart;
+ scrollTop = element.scrollTop;
+
+ // Replace the whole text of the text area:
+ // text before + newText + text after.
+ // This could be made better if range selection worked on browsers.
+ // But for complex scripts, browsers place cursor in unexpected places
+ // and it's not possible to fix cursor programmatically.
+ // Ref Bug https://bugs.webkit.org/show_bug.cgi?id=66630
+ element.value = element.value.substring( 0, start - precedingCharCount ) +
+ newText +
+ element.value.substring( element.selectionEnd, element.value.length );
+
+ // restore scroll
+ element.scrollTop = scrollTop;
+ // set selection
+ element.selectionStart = element.selectionEnd = start - precedingCharCount + newText.length;
+ } else {
+ // IE8 and lower
+ pos = this.getCaretPosition();
+ selection = element.createTextRange();
+ length = element.value.length;
+ // IE doesn't count \n when computing the offset, so we won't either
+ newLines = element.value.match( /\n/g );
+
+ if ( newLines ) {
+ length = length - newLines.length;
+ }
+
+ selection.moveStart( 'character', pos.start - precedingCharCount );
+ selection.moveEnd( 'character', pos.end - length );
+
+ selection.text = newText;
+ selection.collapse( false );
+ selection.select();
}
- }
+ };
/**
- * Returns an array [start, end] of the beginning
- * and the end of the current selection in $element
+ * Get the current selection offsets inside the widget
+ *
+ * @return {Object} return Offsets in chars (0 means first offset *or* no selection in widget)
+ * @return {number} return.start Selection start
+ * @return {number} return.end Selection end
*/
- function getCaretPosition( $element ) {
- var el = $element.get( 0 ),
+ FormWidgetEntry.prototype.getCaretPosition = function () {
+ var el = this.$element.get( 0 ),
start = 0,
end = 0,
normalizedValue,
@@ -456,10 +592,6 @@
newLines,
endRange;
- if ( $element.is( '[contenteditable]' ) ) {
- return getDivCaretPosition( el );
- }
-
if ( typeof el.selectionStart === 'number' && typeof el.selectionEnd === 'number' ) {
start = el.selectionStart;
end = el.selectionEnd;
@@ -499,269 +631,252 @@
}
}
}
+ return { start: start, end: end };
+ };
- return [start, end];
- }
+ TextEntryFactory.static.singleton.register( FormWidgetEntry );
/**
- * Helper function to get an IE TextRange object for an element
+ * TextEntry class for ContentEditable
+ *
+ * @class
+ * @constructor
+ * @param {jQuery} $element The element to wrap
*/
- function rangeForElementIE( element ) {
- var selection;
+ ContentEditableEntry = function IMEContentEditableEntry( $element ) {
+ this.$element = $element;
+ };
- if ( element.nodeName.toLowerCase() === 'input' ) {
- selection = element.createTextRange();
- } else {
- selection = document.body.createTextRange();
- selection.moveToElementText( element );
- }
+ /* Inheritance */
- return selection;
- }
+ inheritClass( ContentEditableEntry, TextEntry );
- function replaceText( $element, replacement, start, end ) {
- var selection,
- length,
- newLines,
- scrollTop,
- range,
- correction,
- textNode,
- element = $element.get( 0 );
-
- if ( $element.is( '[contenteditable]' ) ) {
- correction = setCaretPosition( $element, {
- start: start,
- end: end
- } );
-
- rangy.init();
- selection = rangy.getSelection();
- range = selection.getRangeAt( 0 );
+ /* Static methods */
- if ( correction[0] > 0 ) {
- replacement = selection.toString().substring( 0, correction[0] ) + replacement;
- }
+ /**
+ * @inheritdoc TextEntry
+ */
+ ContentEditableEntry.static.canWrap = function ( $element ) {
+ return $element.is( '[contenteditable]' ) && !$element.hasClass( 'noime' );
+ };
- textNode = document.createTextNode( replacement );
- range.deleteContents();
- range.insertNode( textNode );
- range.commonAncestorContainer.normalize();
- start = end = start + replacement.length - correction[0];
- setCaretPosition( $element, {
- start: start,
- end: end
- } );
+ /* Instance methods */
- return;
+ /**
+ * @inheritdoc TextEntry
+ */
+ ContentEditableEntry.prototype.getTextBeforeSelection = function ( maxLength ) {
+ var range = this.getSelectedRange();
+ if ( !range || !range.collapsed || range.startContainer.nodeType !== Node.TEXT_NODE ) {
+ return '';
}
+ return range.startContainer.nodeValue.substring(
+ Math.max( 0, range.startOffset - maxLength ),
+ range.startOffset
+ );
+ };
- if ( typeof element.selectionStart === 'number' && typeof element.selectionEnd === 'number' ) {
- // IE9+ and all other browsers
- scrollTop = element.scrollTop;
+ /**
+ * @inheritdoc SelectionWrapper
+ */
+ ContentEditableEntry.prototype.replaceTextAtSelection = function ( precedingCharCount, newText ) {
+ var range, textNode, textOffset, newOffset, newRange;
- // Replace the whole text of the text area:
- // text before + replacement + text after.
- // This could be made better if range selection worked on browsers.
- // But for complex scripts, browsers place cursor in unexpected places
- // and it's not possible to fix cursor programmatically.
- // Ref Bug https://bugs.webkit.org/show_bug.cgi?id=66630
- element.value = element.value.substring( 0, start ) +
- replacement +
- element.value.substring( end, element.value.length );
+ if ( !this.getSelectedRange() ) {
+ return;
+ }
- // restore scroll
- element.scrollTop = scrollTop;
- // set selection
- element.selectionStart = element.selectionEnd = start + replacement.length;
- } else {
- // IE8 and lower
- selection = rangeForElementIE(element);
- length = element.value.length;
- // IE doesn't count \n when computing the offset, so we won't either
- newLines = element.value.match( /\n/g );
+ // Trigger any externally registered jQuery compositionstart event listeners.
+ // TODO: Try node.dispatchEvent( new CompositionEvent(...) ) so listeners not
+ // registered using jQuery will also get triggered, then fallback gracefully for
+ // browsers that do not support it.
+ this.$element.trigger( 'compositionstart' );
- if ( newLines ) {
- length = length - newLines.length;
- }
+ range = this.getSelectedRange();
- selection.moveStart( 'character', start );
- selection.moveEnd( 'character', end - length );
+ if ( !range.collapsed ) {
+ range.deleteContents();
+ }
- selection.text = replacement;
- selection.collapse( false );
- selection.select();
+ if ( range.startContainer.nodeType === Node.TEXT_NODE ) {
+ // Alter this text node's content and move the cursor
+ textNode = range.startContainer;
+ textOffset = range.startOffset;
+ textNode.nodeValue =
+ textNode.nodeValue.substr( 0, textOffset - precedingCharCount ) +
+ newText +
+ textNode.nodeValue.substr( textOffset );
+ newOffset = textOffset - precedingCharCount + newText.length;
+ newRange = rangy.createRange();
+ newRange.setStart( range.startContainer, newOffset );
+ newRange.setEnd( range.startContainer, newOffset );
+ rangy.getSelection().setSingleRange( newRange );
+ } else {
+ // XXX assert precedingCharCount === 0
+ // Insert a new text node with the new text
+ textNode = document.createTextNode( newText );
+ range.startContainer.insertBefore(
+ textNode,
+ range.startContainer.childNodes[ range.startOffset ]
+ );
+ newRange = rangy.createRange();
+ newRange.setStart( textNode, textNode.length );
+ newRange.setEnd( textNode, textNode.length );
+ rangy.getSelection().setSingleRange( newRange );
}
- }
- function getDivCaretPosition( element ) {
- var charIndex = 0,
- start = 0,
- end = 0,
- foundStart = false,
- foundEnd = false,
- sel;
+ // Trigger any externally registered jQuery compositionend / input event listeners.
+ // TODO: Try node.dispatchEvent( new CompositionEvent(...) ) so listeners not
+ // registered using jQuery will also get triggered, then fallback gracefully for
+ // browsers that do not support it.
+ this.$element.trigger( 'compositionend' );
+ this.$element.trigger( 'input' );
+ };
+ /**
+ * Get the selection range inside the wrapped element, or null
+ *
+ * @return {Range|null} The selection range
+ */
+ ContentEditableEntry.prototype.getSelectedRange = function () {
+ var sel, range;
rangy.init();
sel = rangy.getSelection();
+ if ( sel.rangeCount === 0 ) {
+ return null;
+ }
+ range = sel.getRangeAt( 0 );
+ if ( !this.$element[ 0 ].contains( range.commonAncestorContainer ) ) {
+ return null;
+ }
+ return range;
+ };
- function traverseTextNodes( node, range ) {
- var i, childNodesCount;
-
- if ( node.nodeType === Node.TEXT_NODE ) {
- if ( !foundStart && node === range.startContainer ) {
- start = charIndex + range.startOffset;
- foundStart = true;
- }
+ TextEntryFactory.static.singleton.register( ContentEditableEntry );
- if ( foundStart && node === range.endContainer ) {
- end = charIndex + range.endOffset;
- foundEnd = true;
- }
+ /* Exports */
- charIndex += node.length;
- } else {
- childNodesCount = node.childNodes.length;
+ /**
+ * jQuery plugin ime
+ *
+ * @param {Object} option
+ */
+ $.fn.ime = function ( option ) {
+ return this.each( function () {
+ var data, textEntry,
+ $this = $( this ),
+ options = typeof option === 'object' && option;
- for ( i = 0; i < childNodesCount; ++i ) {
- traverseTextNodes( node.childNodes[i], range );
- if ( foundEnd ) {
- break;
- }
+ data = $this.data( 'ime' );
+ if ( !data ) {
+ textEntry = TextEntryFactory.static.singleton.wrap( $this );
+ if ( textEntry === undefined ) {
+ return;
}
+ data = new IME( this, textEntry, options );
+ $this.data( 'ime', data );
}
- }
-
- if ( sel.rangeCount ) {
- traverseTextNodes( element, sel.getRangeAt( 0 ) );
- }
-
- return [ start, end ];
- }
-
- function setCaretPosition( $element, position ) {
- var currentPosition,
- startCorrection = 0,
- endCorrection = 0,
- element = $element[0];
-
- setDivCaretPosition( element, position );
- currentPosition = getDivCaretPosition( element );
- // see Bug https://bugs.webkit.org/show_bug.cgi?id=66630
- while ( position.start !== currentPosition[0] ) {
- position.start -= 1; // go back one more position.
- if ( position.start < 0 ) {
- // never go beyond 0
- break;
- }
- setDivCaretPosition( element, position );
- currentPosition = getDivCaretPosition( element );
- startCorrection += 1;
- }
- while ( position.end !== currentPosition[1] ) {
- position.end += 1; // go forward one more position.
- setDivCaretPosition( element, position );
- currentPosition = getDivCaretPosition( element );
- endCorrection += 1;
- if ( endCorrection > 10 ) {
- // XXX avoid rare case of infinite loop here.
- break;
+ if ( typeof option === 'string' ) {
+ data[ option ]();
}
- }
+ } );
+ };
- return [startCorrection, endCorrection];
- }
+ $.ime = {};
+ $.ime.inputmethods = {};
+ $.ime.sources = {};
+ $.ime.preferences = {};
+ $.ime.languages = {};
/**
- * Set the caret position in the div.
- * @param {Element} element The content editable div element
- * @param position
+ * @property {string} Relative/absolute path for the rules folder of jquery.ime
*/
- function setDivCaretPosition( element, position ) {
- var nextCharIndex,
- charIndex = 0,
- range = rangy.createRange(),
- foundStart = false,
- foundEnd = false;
+ $.ime.path = '../';
+ $.ime.textEntryFactory = TextEntryFactory.static.singleton;
+ $.ime.TextEntry = TextEntry;
+ $.ime.inheritClass = inheritClass;
- range.collapseToPoint( element, 0 );
+ defaultInputMethod = {
+ contextLength: 0,
+ maxKeyLength: 1
+ };
- function traverseTextNodes( node ) {
- var i, len;
+ /**
+ * load an input method by given id
+ *
+ * @param {string} inputmethodId
+ * @return {jQuery.Promise}
+ */
+ $.ime.load = function ( inputmethodId ) {
+ var dependency,
+ deferred = $.Deferred();
- if ( node.nodeType === 3 ) {
- nextCharIndex = charIndex + node.length;
+ if ( $.ime.inputmethods[ inputmethodId ] ) {
+ return deferred.resolve();
+ }
- if ( !foundStart && position.start >= charIndex && position.start <= nextCharIndex ) {
- range.setStart( node, position.start - charIndex );
- foundStart = true;
- }
+ // Validate the input method id.
+ if ( !$.ime.sources[ inputmethodId ] ) {
+ return deferred.reject();
+ }
- if ( foundStart && position.end >= charIndex && position.end <= nextCharIndex ) {
- range.setEnd( node, position.end - charIndex );
- foundEnd = true;
- }
+ dependency = $.ime.sources[ inputmethodId ].depends;
+ if ( dependency && !$.ime.inputmethods[ dependency ] ) {
+ $.ime.load( dependency ).done( function () {
+ $.ime.load( inputmethodId ).done( function () {
+ deferred.resolve();
+ } );
+ } );
- charIndex = nextCharIndex;
- } else {
- for ( i = 0, len = node.childNodes.length; i < len; ++i ) {
- traverseTextNodes( node.childNodes[i] );
- if ( foundEnd ) {
- rangy.getSelection().setSingleRange( range );
- break;
- }
- }
- }
+ return deferred;
}
- traverseTextNodes( element );
+ debug( 'Loading ' + inputmethodId );
+ deferred = $.ajax( {
+ url: $.ime.path + $.ime.sources[ inputmethodId ].source,
+ dataType: 'script',
+ cache: true
+ } ).done( function () {
+ debug( inputmethodId + ' loaded' );
+ } ).fail( function ( jqxhr, settings, exception ) {
+ debug( 'Error in loading inputmethod ' + inputmethodId + ' Exception: ' + exception );
+ } );
- }
+ return deferred.promise();
+ };
+
+ $.ime.register = function ( inputMethod ) {
+ $.ime.inputmethods[ inputMethod.id ] = $.extend( {}, defaultInputMethod, inputMethod );
+ };
/**
- * Find the point at which a and b diverge, i.e. the first position
- * at which they don't have matching characters.
+ * Set the relative/absolute path to rules/ (for loading input methods)
*
- * @param a String
- * @param b String
- * @return Position at which a and b diverge, or -1 if a === b
+ * @param {string} path The relative/absolute path in which rules/ lies
*/
- function firstDivergence( a, b ) {
- var minLength, i;
-
- minLength = a.length < b.length ? a.length : b.length;
-
- for ( i = 0; i < minLength; i++ ) {
- if ( a.charCodeAt( i ) !== b.charCodeAt( i ) ) {
- return i;
- }
- }
+ $.ime.setPath = function ( path ) {
+ $.ime.path = path;
+ };
- return -1;
- }
+ // default options
+ $.ime.defaults = {
+ languages: [], // Languages to be used- by default all languages
+ helpHandler: null, // Called for each ime option in the menu
+ showSelector: true
+ };
/**
- * Get the n characters in str that immediately precede pos
- * Example: lastNChars( 'foobarbaz', 5, 2 ) === 'ba'
- *
- * @param str String to search in
- * @param pos Position in str
- * @param n Number of characters to go back from pos
- * @return Substring of str, at most n characters long, immediately preceding pos
+ * private function for debugging
*/
- function lastNChars( str, pos, n ) {
- if ( n === 0 ) {
- return '';
- } else if ( pos <= n ) {
- return str.substr( 0, pos );
- } else {
- return str.substr( pos - n, n );
+ function debug( $obj ) {
+ if ( window.console && window.console.log ) {
+ window.console.log( $obj );
}
}
- function arrayKeys ( obj ) {
- return $.map( obj, function( element, index ) {
+ function arrayKeys( obj ) {
+ return $.map( obj, function ( element, index ) {
return index;
} );
}
@@ -833,8 +948,8 @@
this.timer = setTimeout(
function () {
imeselector.$imeSetting.animate( {
- 'opacity': 0,
- 'marginTop': '-20px'
+ opacity: 0,
+ marginTop: '-20px'
}, 500, function () {
imeselector.$imeSetting.hide();
// Restore properties for the next time it becomes visible:
@@ -849,6 +964,10 @@
// Hide all other IME settings and collapse open menus
$( 'div.imeselector' ).hide();
$( 'div.imeselector-menu' ).removeClass( 'ime-open' );
+ this.afterKeydown();
+ },
+
+ afterKeydown: function () {
this.$imeSetting.show();
this.resetTimer();
},
@@ -919,7 +1038,7 @@
imeselector.$imeSetting.removeClass( 'ime-onfocus' );
} );
- imeselector.$menu.on( 'click.ime', 'li', function() {
+ imeselector.$menu.on( 'click.ime', 'li', function () {
imeselector.$element.focus();
return false;
@@ -964,8 +1083,10 @@
} );
// Possible resize of textarea
- imeselector.$element.on( 'mouseup.ime', $.proxy( this.position, this ) );
- imeselector.$element.on( 'keydown.ime', $.proxy( this.keydown, this ) );
+ imeselector.$element.on( {
+ 'mouseup.ime': this.position.bind( this ),
+ 'keydown.ime': this.keydown.bind( this )
+ } );
// Update IM selector position when the window is resized
// or the browser window is zoomed in or zoomed out
@@ -986,7 +1107,7 @@
previousInputMethods,
languageCode;
- this.focus(); // shows the trigger in case it is hidden
+ this.afterKeydown(); // shows the trigger in case it is hidden
if ( isShortcutKey( e ) ) {
if ( ime.isActive() ) {
@@ -1000,16 +1121,16 @@
languageCode = this.decideLanguage();
this.selectLanguage( languageCode );
- if ( !ime.isActive() && $.ime.languages[languageCode] ) {
+ if ( !ime.isActive() && $.ime.languages[ languageCode ] ) {
// Even after pressing toggle shortcut again, it is still disabled
// Check if there is a previously used input method.
previousInputMethods = $.ime.preferences.getPreviousInputMethods();
- if ( previousInputMethods[0] ) {
- this.selectIM( previousInputMethods[0] );
+ if ( previousInputMethods[ 0 ] ) {
+ this.selectIM( previousInputMethods[ 0 ] );
} else {
// Provide the default input method in this case.
- firstInputmethod = $.ime.languages[languageCode].inputmethods[0];
+ firstInputmethod = $.ime.languages[ languageCode ].inputmethods[ 0 ];
this.selectIM( firstInputmethod );
}
}
@@ -1068,7 +1189,7 @@
cssTop = top;
cssLeft = left;
- this.$element.parents().each( function() {
+ this.$element.parents().each( function () {
if ( $( this ).css( 'position' ) === 'fixed' ) {
imeSelector.$imeSetting.css( 'position', 'fixed' );
cssTop -= $( document ).scrollTop();
@@ -1120,7 +1241,7 @@
ime = this.$element.data( 'ime' );
imePref = $.ime.preferences.getIM( languageCode );
- language = $.ime.languages[languageCode];
+ language = $.ime.languages[ languageCode ];
this.setMenuTitle( this.getAutonym( languageCode ) );
@@ -1158,8 +1279,8 @@
* @return {string} The autonym
*/
getAutonym: function ( languageCode ) {
- return $.ime.languages[languageCode]
- && $.ime.languages[languageCode].autonym;
+ return $.ime.languages[ languageCode ]
+ && $.ime.languages[ languageCode ].autonym;
},
/**
@@ -1217,12 +1338,12 @@
}
ime.load( inputmethodId ).done( function () {
- imeselector.inputmethod = $.ime.inputmethods[inputmethodId];
+ imeselector.inputmethod = $.ime.inputmethods[ inputmethodId ];
imeselector.hide();
ime.enable();
ime.setIM( inputmethodId );
imeselector.$imeSetting.find( 'a.ime-name' ).text(
- $.ime.sources[inputmethodId].name
+ $.ime.sources[ inputmethodId ].name
);
imeselector.position();
@@ -1272,8 +1393,8 @@
}
for ( languageCodeIndex in languageList ) {
- languageCode = languageList[languageCodeIndex];
- language = $.ime.languages[languageCode];
+ languageCode = languageList[ languageCodeIndex ];
+ language = $.ime.languages[ languageCode ];
if ( !language ) {
continue;
@@ -1302,7 +1423,7 @@
* @param {string} languageCode
*/
prepareInputMethods: function ( languageCode ) {
- var language = $.ime.languages[languageCode],
+ var language = $.ime.languages[ languageCode ],
$imeList = this.$menu.find( '.ime-list' ),
imeSelector = this;
@@ -1311,7 +1432,7 @@
$.each( language.inputmethods, function ( index, inputmethod ) {
var $imeItem, $inputMethod, source, name;
- source = $.ime.sources[inputmethod];
+ source = $.ime.sources[ inputmethod ];
if ( !source ) {
return;
}
@@ -1337,6 +1458,7 @@
/**
* Create a help link element.
+ *
* @return {jQuery}
*/
helpLink: function () {
@@ -1344,8 +1466,8 @@
.append( $( '<a>' ).text( 'Help' )
.addClass( 'selectable-row-item' )
.attr( {
- 'href': 'http://github.com/wikimedia/jquery.ime',
- 'target': '_blank',
+ href: 'http://github.com/wikimedia/jquery.ime',
+ target: '_blank',
'data-i18n': 'jquery-ime-help'
} )
);
@@ -1371,7 +1493,7 @@
}
if ( typeof options === 'string' ) {
- data[options].call( $this );
+ data[ options ].call( $this );
}
} );
};
@@ -1420,12 +1542,11 @@
* Check whether a keypress event corresponds to the shortcut key
*
* @param {event} event
- * @return {bool} true if the key is a shortcut key
+ * @return {boolean} true if the key is a shortcut key
*/
function isShortcutKey( event ) {
// 77 - The letter M, for Ctrl-M
- // 13 - The Enter key
- return event.ctrlKey && !event.altKey && ( event.which === 77 || event.which === 13 );
+ return event.ctrlKey && !event.altKey && ( event.which === 77 );
}
function isDOMAttrModifiedSupported() {
@@ -1450,9 +1571,9 @@
}
$.fn.attrchange = function ( callback ) {
- if ( MutationObserver ) {
- var observer;
+ var observer;
+ if ( MutationObserver ) {
observer = new MutationObserver( function ( mutations ) {
mutations.forEach( function ( e ) {
callback.call( e.target, e.attributeName );
@@ -1487,7 +1608,7 @@
previousLanguages: [], // array of previous languages
previousInputMethods: [], // array of previous inputmethods
imes: {
- 'en': 'system'
+ en: 'system'
}
},
@@ -1533,11 +1654,11 @@
}
// Do nothing if there's no actual change
- if ( inputMethod === this.registry.imes[this.registry.language] ) {
+ if ( inputMethod === this.registry.imes[ this.registry.language ] ) {
return;
}
- this.registry.imes[this.getLanguage()] = inputMethod;
+ this.registry.imes[ this.getLanguage() ] = inputMethod;
this.registry.isDirty = true;
if ( !this.registry.previousInputMethods ) {
this.registry.previousInputMethods = [];
@@ -1556,7 +1677,7 @@
this.registry.imes = {};
}
- return this.registry.imes[language] || 'system';
+ return this.registry.imes[ language ] || 'system';
},
save: function () {
@@ -1577,8 +1698,12 @@
name: 'ትራንስልተራትዖን',
source: 'rules/am/am-transliteration.js'
},
+ 'ak-qx': {
+ name: 'QX replacement',
+ source: 'rules/ak/ak-qx.js'
+ },
'ar-kbd': {
- name: 'أرابيك',
+ name: 'لوحة المفاتيح العربية',
source: 'rules/ar/ar-kbd.js'
},
'as-avro': {
@@ -1601,6 +1726,10 @@
name: 'ফনেটিক',
source: 'rules/as/as-phonetic.js'
},
+ 'as-rodali': {
+ name: 'ৰ\'দালি',
+ source: 'rules/as/as-rodali.js'
+ },
'as-transliteration': {
name: 'প্ৰতিৰূপান্তৰণ',
source: 'rules/as/as-transliteration.js'
@@ -1633,6 +1762,10 @@
name: 'روچ کپتین بلوچی',
source: 'rules/bgn/bgn-kbd.js'
},
+ 'bm-alt': {
+ name: 'Bamanankan Alt',
+ source: 'rules/bm/bm-alt.js'
+ },
'bn-avro': {
name: 'অভ্র',
source: 'rules/bn/bn-avro.js'
@@ -1657,6 +1790,10 @@
name: 'Tibetan EWTS',
source: 'rules/bo/bo-ewts.js'
},
+ 'bo-sambhota': {
+ name: 'Tibetan Sambhota',
+ source: 'rules/bo/bo-sambhota.js'
+ },
'brx-inscript': {
name: 'इनस्क्रिप्ट',
source: 'rules/brx/brx-inscript.js'
@@ -1665,6 +1802,10 @@
name: 'इनस्क्रिप्ट २',
source: 'rules/brx/brx-inscript2.js'
},
+ 'byn-geezim': {
+ name: 'ብሊን',
+ source: 'rules/byn/byn-geezim.js'
+ },
'ckb-transliteration-arkbd': {
name: 'باشووری',
source: 'rules/ckb/ckb-transliteration-arkbd.js'
@@ -1697,6 +1838,14 @@
name: 'normalformer',
source: 'rules/da/da-normforms.js'
},
+ 'dag-alt': {
+ name: 'Dagbani Alt',
+ source: 'rules/dag/dag-alt.js'
+ },
+ 'din-fqsx': {
+ name: 'Dinka FQSX',
+ source: 'rules/din/din-fqsx.js'
+ },
'doi-inscript2': {
name: 'इनस्क्रिप्ट २',
source: 'rules/doi/doi-inscript2.js'
@@ -1733,6 +1882,10 @@
name: 'فارسی',
source: 'rules/fa/fa-kbd.js'
},
+ 'ff-alt': {
+ name: 'Fulfulde',
+ source: 'rules/ff/ff-alt.js'
+ },
'fo-normforms': {
name: 'Føroyskt',
source: 'rules/fo/fo-normforms.js'
@@ -1741,6 +1894,14 @@
name: 'translitterointi',
source: 'rules/fi/fi-transliteration.js'
},
+ 'gaa-cqx': {
+ name: 'Ga - CQX replacement',
+ source: 'rules/gaa/gaa-cqx.js'
+ },
+ 'got-standard': {
+ name: '𐌲𐌿𐍄𐌹𐍃𐌺𐌰 𐍂𐌰𐌶𐌳𐌰',
+ source: 'rules/got/got-standard.js'
+ },
'lud-transliteration': {
name: 'lud',
source: 'rules/lud/lud-transliteration.js'
@@ -1835,6 +1996,10 @@
name: 'Τυπική πληκτρολόγιο',
source: 'rules/el/el-kbd.js'
},
+ 'fon-tilde': {
+ name: 'Fon Tilde',
+ source: 'rules/fon/fon-tilde.js'
+ },
'he-standard-2012': {
name: 'עברית עם ניקוד על בסיס אנגלית',
source: 'rules/he/he-standard-2012.js'
@@ -1880,7 +2045,7 @@
source: 'rules/gu/gu-phonetic.js'
},
'gu-transliteration': {
- name: 'લિપ્યાંતરણ',
+ name: 'લિપ્યંતરણ',
source: 'rules/gu/gu-transliteration.js'
},
'ka-transliteration': {
@@ -1899,6 +2064,10 @@
name: 'Кирил',
source: 'rules/kk/kk-kbd.js'
},
+ 'km-nidakyk': {
+ name: 'ក្តារ​ចុច​យូនីកូដ​ខ្មែរ (NiDA)',
+ source: 'rules/km/km-nidakyk.js'
+ },
'kn-inscript': {
name: 'ಇನ್ಸ್ಕ್ರಿಪ್ಟ್',
source: 'rules/kn/kn-inscript.js'
@@ -1947,7 +2116,11 @@
name: 'لۊری شومالی',
source: 'rules/lrc/lrc-kbd.js'
},
- 'mh': {
+ 'lut-tulalip': {
+ name: 'Lushootseed Tulalip',
+ source: 'rules/lut/lut-tulalip.js'
+ },
+ mh: {
name: 'Kajin M̧ajeļ',
source: 'rules/mh/mh.js'
},
@@ -1955,6 +2128,34 @@
name: 'Кирилл',
source: 'rules/mn/mn-cyrl.js'
},
+ 'mn-trad': {
+ name: 'ᠮᠣᠩᠭᠣᠯ ᠪᠢᠴᠢᠭ᠌',
+ source: 'rules/mn/mn-trad.js'
+ },
+ 'mn-todo': {
+ name: 'ᡐᡆᡑᡆ ᡋᡅᡔᡅᡎ᠌',
+ source: 'rules/mn/mn-todo.js'
+ },
+ 'mn-tradali': {
+ name: 'Traditional Mongolian Ali-gali',
+ source: 'rules/mn/mn-tradali.js'
+ },
+ 'mn-todoali': {
+ name: 'Todo Mongolian Ali-gali',
+ source: 'rules/mn/mn-todoali.js'
+ },
+ 'phagspa': {
+ name: 'PhagsPa',
+ source: 'rules/mn/phagspa.js'
+ },
+ 'mnc': {
+ name: 'ᠮᠠᠨᠵᡠ',
+ source: 'rules/mnc/mnc.js'
+ },
+ 'mnc-ali': {
+ name: 'Manchu Ali-gali',
+ source: 'rules/mnc/mnc-ali.js'
+ },
'mni-inscript2': {
name: 'ইনস্ক্ৰিপ্ট ২',
source: 'rules/mni/mni-inscript2.js'
@@ -1975,6 +2176,10 @@
name: 'फोनेटिक',
source: 'rules/mr/mr-phonetic.js'
},
+ 'my-mm3': {
+ name: 'မြန်မာ၃ လက်ကွက်',
+ source: 'rules/my/my-mm3.js'
+ },
'my-xkb': {
name: 'မြန်မာဘာသာ xkb',
source: 'rules/my/my-xkb.js'
@@ -2015,6 +2220,10 @@
name: 'ଟ୍ରାନ୍ସଲିଟରେସନ',
source: 'rules/or/or-transliteration.js'
},
+ 'or-OdiScript': {
+ name: 'ଓଡ଼ିସ୍କ୍ରିପ୍ଟ',
+ source: 'rules/or/or-OdiScript.js'
+ },
'or-inscript': {
name: 'ଇନସ୍କ୍ରିପ୍ଟ',
source: 'rules/or/or-inscript.js'
@@ -2090,6 +2299,14 @@
name: 'ਫੋਨੇਟਿਕ',
source: 'rules/pa/pa-phonetic.js'
},
+ 'roa-tara-GVU': {
+ name: 'Tarandine',
+ source: 'rules/roa-tara/roa-tara.js',
+ },
+ 'pms': {
+ name: 'Piemontèis',
+ source: 'rules/pms/pms.js'
+ },
'ru-jcuken': {
name: 'ЙЦУКЕН',
source: 'rules/ru/ru-jcuken.js'
@@ -2119,7 +2336,7 @@
source: 'rules/sa/sa-inscript2.js'
},
'sa-transliteration': {
- name: 'ट्रन्स्लितेरतिओन्',
+ name: 'लिप्यन्तरणम्',
source: 'rules/sa/sa-transliteration.js'
},
'sah-transliteration': {
@@ -2130,6 +2347,14 @@
name: 'इनस्क्रिप्ट २',
source: 'rules/sat/sat-inscript2.js'
},
+ 'sat-inscript2-ol-chiki': {
+ name: 'inscript2 ᱚᱞ ᱪᱤᱠᱤ',
+ source: 'rules/sat/sat-inscript2-ol-chiki.js'
+ },
+ 'sat-sarjom-baha': {
+ name: 'sarjom baha',
+ source: 'rules/sat/sat-sarjom-baha.js'
+ },
'si-singlish': {
name: 'සිංග්ලිෂ්',
source: 'rules/si/si-singlish.js'
@@ -2138,6 +2363,18 @@
name: 'විජේසේකර',
source: 'rules/si/si-wijesekara.js'
},
+ 'ti-geezim': {
+ name: 'ትግርኛ',
+ source: 'rules/ti/ti-geezim.js'
+ },
+ 'tig-geezim': {
+ name: 'ትግረ',
+ source: 'rules/tig/tig-geezim.js'
+ },
+ 'sjo': {
+ name: 'ᠰᡞᠪᡝ',
+ source: 'rules/sjo/sjo.js'
+ },
'ur-phonetic': {
name: 'صوتی',
source: 'rules/ur/ur-phonetic.js'
@@ -2171,45 +2408,57 @@
source: 'rules/uz/uz-kbd.js'
},
'vec-GVU': {
- name: 'Venetian',
+ name: 'Vèneto',
source: 'rules/vec/vec-GVU.js'
+ },
+ 'wo-alt': {
+ name: 'Wolof Alt',
+ source: 'rules/wo/wo-alt.js'
+ },
+ 'yo-alt': {
+ name: 'Yorùbá Alt',
+ source: 'rules/yo/yo-alt.js'
}
} );
$.extend( $.ime.languages, {
- 'ady': {
+ ady: {
autonym: 'адыгэбзэ',
inputmethods: [ 'cyrl-palochka' ]
},
- 'ahr': {
+ ahr: {
autonym: 'अहिराणी',
inputmethods: [ 'mr-transliteration', 'mr-inscript' ]
},
- 'am': {
+ ak: {
+ autonym: 'Akan',
+ inputmethods: [ 'ak-qx' ]
+ },
+ am: {
autonym: 'አማርኛ',
inputmethods: [ 'am-transliteration' ]
},
- 'ar': {
+ ar: {
autonym: 'العربية',
inputmethods: [ 'ar-kbd' ]
},
- 'as': {
+ as: {
autonym: 'অসমীয়া',
- inputmethods: [ 'as-transliteration', 'as-avro', 'as-bornona', 'as-inscript', 'as-phonetic', 'as-inscript2' ]
+ inputmethods: [ 'as-transliteration', 'as-avro', 'as-bornona', 'as-inscript', 'as-phonetic', 'as-inscript2', 'as-rodali' ]
},
- 'av': {
+ av: {
autonym: 'авар',
inputmethods: [ 'cyrl-palochka' ]
},
- 'azb': {
+ azb: {
autonym: 'تۆرکجه',
inputmethods: [ 'azb-kbd' ]
},
- 'bbc': {
+ bbc: {
autonym: 'Batak',
inputmethods: [ 'batak-qwerty' ]
},
- 'be': {
+ be: {
autonym: 'беларуская',
inputmethods: [ 'be-transliteration', 'be-latin', 'be-kbd' ]
},
@@ -2217,203 +2466,247 @@
autonym: 'беларуская (тарашкевіца)',
inputmethods: [ 'be-transliteration', 'be-latin' ]
},
- 'bh': {
+ bh: {
autonym: 'भोजपुरी',
inputmethods: [ 'hi-transliteration' ]
},
- 'bgn': {
+ bgn: {
autonym: 'روچ کپتین بلوچی',
inputmethods: [ 'bgn-kbd' ]
},
- 'bho': {
+ bho: {
autonym: 'भोजपुरी',
inputmethods: [ 'hi-transliteration' ]
},
- 'bn': {
+ bm: {
+ autonym: 'Bamanankan',
+ inputmethods: [ 'bm-alt' ]
+ },
+ bn: {
autonym: 'বাংলা',
inputmethods: [ 'bn-avro', 'bn-inscript', 'bn-nkb', 'bn-probhat', 'bn-inscript2' ]
},
- 'bo': {
+ bo: {
autonym: 'བོད་ཡིག།',
- inputmethods: [ 'bo-ewts' ]
+ inputmethods: [ 'bo-ewts', 'bo-sambhota' ]
},
- 'brx': {
+ brx: {
autonym: 'बोड़ो',
inputmethods: [ 'brx-inscript', 'brx-inscript2' ]
},
- 'ckb': {
- autonym: 'کوردیی ناوەندی',
+ byn: {
+ autonym: 'ብሊን',
+ inputmethods: [ 'byn-geezim' ]
+ },
+ ckb: {
+ autonym: 'کوردی',
inputmethods: [ 'ckb-transliteration-arkbd', 'ckb-transliteration-fakbd', 'ckb-transliteration-lakbd' ]
},
- 'ce': {
+ ce: {
autonym: 'нохчийн',
inputmethods: [ 'cyrl-palochka' ]
},
- 'cv': {
+ cv: {
autonym: 'Чăвашла',
inputmethods: [ 'cv-cyr-altgr', 'cv-lat-altgr', 'cv-cyr-numbers' ]
},
- 'da': {
+ da: {
autonym: 'Dansk',
inputmethods: [ 'da-normforms' ]
},
- 'de': {
+ dag: {
+ autonym: 'Dagbani',
+ inputmethods: [ 'dag-alt' ]
+ },
+ de: {
autonym: 'Deutsch',
inputmethods: [ 'de-transliteration' ]
},
- 'diq': {
+ din: {
+ autonym: 'Thuɔŋjäŋ',
+ inputmethods: [ 'din-fqsx' ]
+ },
+ diq: {
autonym: 'Kirdkî',
inputmethods: [ 'ku-h', 'ku-tr' ]
},
- 'doi': {
+ doi: {
autonym: 'डोगरी',
inputmethods: [ 'doi-inscript2' ]
},
- 'en': {
+ en: {
autonym: 'English',
inputmethods: [ 'ipa-sil', 'ipa-x-sampa' ]
},
- 'el': {
+ el: {
autonym: 'Ελληνικά',
inputmethods: [ 'el-kbd' ]
},
- 'eo': {
+ eo: {
autonym: 'Esperanto',
inputmethods: [ 'eo-transliteration', 'eo-h', 'eo-h-f', 'eo-plena', 'eo-q', 'eo-vi', 'eo-x' ]
},
- 'fa': {
+ fa: {
autonym: 'فارسی',
inputmethods: [ 'fa-kbd' ]
},
- 'fo': {
+ ff: {
+ autonym: 'Fulfulde',
+ inputmethods: [ 'ff-alt' ]
+ },
+ fo: {
autonym: 'Føroyskt',
inputmethods: [ 'fo-normforms' ]
},
- 'fi': {
+ fon: {
+ autonym: 'Fon',
+ inputmethods: [ 'fon-tilde' ],
+ },
+ fi: {
autonym: 'Suomi',
inputmethods: [ 'fi-transliteration' ]
},
- 'lrc': {
+ gaa: {
+ autonym: 'Ga',
+ inputmethods: [ 'gaa-cqx' ]
+ },
+ got: {
+ autonym: '𐌲𐌿𐍄𐌹𐍃𐌺𐌰 𐍂𐌰𐌶𐌳𐌰',
+ inputmethods: [ 'got-standard' ]
+ },
+ lrc: {
autonym: 'لۊری شومالی',
inputmethods: [ 'lrc-kbd' ]
},
- 'lud': {
+ lud: {
autonym: 'lüüdi',
inputmethods: [ 'lud-transliteration' ]
},
- 'gom': {
- autonym: 'गोवा कोंकणी / Gova Konknni',
+ gom: {
+ autonym: 'गोंयची कोंकणी / Gõychi Konknni',
inputmethods: [ 'hi-transliteration', 'hi-inscript', 'gom-inscript2' ]
},
- 'gu': {
+ gu: {
autonym: 'ગુજરાતી',
inputmethods: [ 'gu-transliteration', 'gu-inscript', 'gu-inscript2', 'gu-phonetic' ]
},
- 'he': {
+ he: {
autonym: 'עברית',
inputmethods: [ 'he-standard-2012-extonly', 'he-standard-2012' ]
},
- 'hi': {
+ hi: {
autonym: 'हिन्दी',
inputmethods: [ 'hi-transliteration', 'hi-inscript', 'hi-bolnagri', 'hi-phonetic', 'hi-inscript2' ]
},
- 'hr': {
+ hr: {
autonym: 'Hrvatski',
inputmethods: [ 'hr-kbd' ]
},
- 'hy': {
+ hy: {
autonym: 'հայերեն',
inputmethods: [ 'hy-ephonetic', 'hy-typewriter', 'hy-ephoneticalt', 'hy-emslegacy', 'hy-wmslegacy' ]
},
- 'hne': {
+ hne: {
autonym: 'छत्तीसगढ़ी',
inputmethods: [ 'hi-transliteration' ]
},
- 'is': {
+ is: {
autonym: 'Íslenska',
inputmethods: [ 'is-normforms' ]
},
- 'fonipa': {
+ fonipa: {
autonym: 'International Phonetic Alphabet',
inputmethods: [ 'ipa-sil', 'ipa-x-sampa' ]
},
- 'jv': {
+ jv: {
autonym: 'ꦧꦱꦗꦮ',
inputmethods: [ 'jv-transliteration' ]
},
- 'ka': {
+ ka: {
autonym: 'ქართული ენა',
inputmethods: [ 'ka-transliteration', 'ka-kbd' ]
},
- 'kbd': {
+ kbd: {
autonym: 'адыгэбзэ (къэбэрдеибзэ)',
inputmethods: [ 'cyrl-palochka' ]
},
- 'kk': {
+ kk: {
autonym: 'Қазақша',
inputmethods: [ 'kk-kbd', 'kk-arabic' ]
},
- 'kn': {
+ km: {
+ autonym: 'ភាសា​ខ្មែរ',
+ inputmethods: [ 'km-nidakyk' ]
+ },
+ kn: {
autonym: 'ಕನ್ನಡ',
inputmethods: [ 'kn-transliteration', 'kn-inscript', 'kn-kgp', 'kn-inscript2' ]
},
- 'ks': {
+ ks: {
autonym: 'कॉशुर / کٲشُر',
inputmethods: [ 'ks-inscript', 'ks-kbd' ]
},
- 'ky': {
+ ky: {
autonym: 'Кыргыз',
inputmethods: [ 'ky-cyrl-alt' ]
},
- 'kab': {
+ kab: {
autonym: 'ⵜⴰⵇⴱⴰⵢⵍⵉⵜ',
inputmethods: [ 'ber-tfng' ]
},
- 'ku': {
+ ku: {
autonym: 'Kurdî',
inputmethods: [ 'ku-h', 'ku-tr' ]
},
- 'lbe': {
+ lbe: {
autonym: 'лакку',
inputmethods: [ 'cyrl-palochka' ]
},
- 'lez': {
+ lez: {
autonym: 'лезги',
inputmethods: [ 'cyrl-palochka' ]
},
- 'lo': {
+ lo: {
autonym: 'ລາວ',
inputmethods: [ 'lo-kbd' ]
},
- 'mai': {
+ lut: {
+ autonym: 'dxʷləšucid',
+ inputmethods: [ 'lut-tulalip' ]
+ },
+ mai: {
autonym: 'मैथिली',
inputmethods: [ 'mai-inscript', 'mai-inscript2' ]
},
- 'mh': {
+ mh: {
autonym: 'Kajin M̧ajeļ',
inputmethods: [ 'mh' ]
},
- 'ml': {
+ ml: {
autonym: 'മലയാളം',
inputmethods: [ 'ml-transliteration', 'ml-inscript', 'ml-inscript2' ]
},
- 'mn': {
+ mn: {
autonym: 'Монгол',
- inputmethods: [ 'mn-cyrl' ]
+ inputmethods: [ 'mn-cyrl', 'mn-trad', 'mn-todo', 'mn-tradali', 'mn-todoali', 'phagspa' ]
+ },
+ mnc: {
+ autonym: 'ᠮᠠᠨᠵᡠ',
+ inputmethods: [ 'mnc', 'mnc-ali' ]
},
- 'mni': {
+ mni: {
autonym: 'Manipuri',
inputmethods: [ 'mni-inscript2' ]
},
- 'mr': {
+ mr: {
autonym: 'मराठी',
inputmethods: [ 'mr-transliteration', 'mr-inscript2', 'mr-inscript', 'mr-phonetic' ]
},
- 'my': {
+ my: {
autonym: 'မြန်မာ',
- inputmethods: [ 'my-xkb' ]
+ inputmethods: [ 'my-mm3', 'my-xkb' ]
},
- 'ne': {
+ ne: {
autonym: 'नेपाली',
inputmethods: [ 'ne-transliteration', 'ne-inscript2', 'ne-inscript', 'ne-rom', 'ne-trad' ]
},
@@ -2421,121 +2714,153 @@
autonym: 'नेपाल भाषा',
inputmethods: [ 'hi-transliteration', 'hi-inscript' ]
},
- 'nb': {
+ nb: {
autonym: 'Norsk (bokmål)',
inputmethods: [ 'nb-normforms', 'nb-tildeforms' ]
},
- 'nn': {
+ nn: {
autonym: 'Norsk (nynorsk)',
inputmethods: [ 'nb-normforms', 'nn-tildeforms' ]
},
- 'or': {
+ or: {
autonym: 'ଓଡ଼ିଆ',
- inputmethods: [ 'or-phonetic', 'or-transliteration', 'or-inscript', 'or-inscript2', 'or-lekhani' ]
+ inputmethods: [ 'or-phonetic', 'or-transliteration', 'or-inscript', 'or-inscript2', 'or-lekhani', 'or-OdiScript' ]
},
- 'pa': {
+ pa: {
autonym: 'ਪੰਜਾਬੀ',
inputmethods: [ 'pa-transliteration', 'pa-inscript', 'pa-phonetic', 'pa-inscript2', 'pa-jhelum' ]
},
- 'rif': {
+ pms: {
+ autonym: 'Piemontèis',
+ inputmethods: [ 'pms' ]
+ },
+ rif: {
autonym: 'ⵜⴰⵔⵉⴼⵉⵜ',
inputmethods: [ 'ber-tfng' ]
},
- 'ru': {
+ 'roa-tara': {
+ autonym: 'Tarandine',
+ inputmethods: [ 'roa-tara-GVU' ]
+ },
+ ru: {
autonym: 'русский',
inputmethods: [ 'ru-jcuken', 'ru-kbd', 'ru-phonetic', 'ru-yawerty' ]
},
- 'sah': {
+ sah: {
autonym: 'саха тыла',
inputmethods: [ 'sah-transliteration' ]
},
- 'sa': {
+ sa: {
autonym: 'संस्कृत',
inputmethods: [ 'sa-transliteration', 'sa-inscript2', 'sa-inscript', 'sa-iast' ]
},
- 'sat': {
- autonym: 'संताली',
- inputmethods: [ 'sat-inscript2']
+ sat: {
+ autonym: 'ᱥᱟᱱᱛᱟᱞᱤ (संताली)',
+ inputmethods: [ 'sat-inscript2', 'sat-inscript2-ol-chiki', 'sat-sarjom-baha' ]
},
- 'sd': {
+ sd: {
autonym: 'सिंधी',
inputmethods: [ 'sd-inscript2' ]
},
- 'sdh': {
+ sdh: {
autonym: 'کوردی خوارگ',
inputmethods: [ 'sdh-kbd' ]
},
- 'se': {
+ se: {
autonym: 'Davvisámegiella',
inputmethods: [ 'se-normforms' ]
},
- 'shi': {
+ shi: {
autonym: 'ⵜⴰⵛⵍⵃⵉⵜ',
inputmethods: [ 'ber-tfng' ]
},
- 'si': {
+ si: {
autonym: 'සිංහල',
inputmethods: [ 'si-singlish', 'si-wijesekara' ]
},
- 'sk': {
+ sjo: {
+ autonym: 'ᠰᡞᠪᡝ',
+ inputmethods: [ 'sjo' ]
+ },
+ sk: {
autonym: 'Slovenčina',
inputmethods: [ 'sk-kbd' ]
},
- 'sr': {
+ sr: {
autonym: 'Српски / srpski',
inputmethods: [ 'sr-kbd' ]
},
- 'sv': {
+ sv: {
autonym: 'Svenska',
inputmethods: [ 'sv-normforms' ]
},
- 'ta': {
+ ta: {
autonym: 'தமிழ்',
inputmethods: [ 'ta-transliteration', 'ta-99', 'ta-inscript', 'ta-bamini', 'ta-inscript2' ]
},
- 'tcy': {
+ tcy: {
autonym: 'ತುಳು',
- inputmethods: [ 'kn-transliteration' ]
+ inputmethods: [ 'kn-transliteration', 'kn-inscript', 'kn-kgp', 'kn-inscript2' ]
},
- 'te': {
+ te: {
autonym: 'తెలుగు',
inputmethods: [ 'te-transliteration', 'te-inscript', 'te-inscript2', 'te-apple', 'te-modular' ]
},
- 'th': {
+ th: {
autonym: 'ไทย',
inputmethods: [ 'th-kedmanee', 'th-pattachote' ]
},
- 'tkr': {
+ ti: {
+ autonym: 'ትግርኛ',
+ inputmethods: [ 'ti-geezim' ]
+ },
+ tig: {
+ autonym: 'ትግረ',
+ inputmethods: [ 'tig-geezim' ]
+ },
+ tkr: {
autonym: 'цӀаӀхна миз',
inputmethods: [ 'cyrl-palochka' ]
},
- 'tzm': {
+ tw: {
+ autonym: 'Twi',
+ inputmethods: [ 'ak-qx' ]
+ },
+ tzm: {
autonym: 'ⵜⴰⵎⴰⵣⵉⵖⵜ',
inputmethods: [ 'ber-tfng' ]
},
- 'udm': {
+ udm: {
autonym: 'удмурт',
inputmethods: [ 'udm-alt' ]
},
- 'uk': {
+ uk: {
autonym: 'Українська',
inputmethods: [ 'uk-kbd' ]
},
- 'ug': {
+ ug: {
autonym: 'ئۇيغۇرچە / Uyghurche',
inputmethods: [ 'ug-kbd' ]
},
- 'ur': {
+ ur: {
autonym: 'اردو',
inputmethods: [ 'ur-transliteration', 'ur-phonetic' ]
},
- 'uz': {
+ uz: {
autonym: 'Oʻzbekcha',
inputmethods: [ 'uz-kbd' ]
},
- 'vec': {
- autonym: 'Venetian',
+ vec: {
+ autonym: 'Vèneto',
inputmethods: [ 'vec-GVU' ]
+ },
+ wo: {
+ autonym: 'Wolof',
+ inputmethods: [ 'wo-alt' ]
+ },
+ yo: {
+ autonym: 'Yorùbá',
+ inputmethods: [ 'yo-alt' ]
}
} );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/README.md b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/README.md
index b1789347..0d106c4b 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/README.md
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/README.md
@@ -1,33 +1,42 @@
+<!-- markdownlint-disable MD010 -->
jQuery.ime Input method specification
=====================================
Input methods are defined in javascript files. An input method is a javascript
-object and it is passed to $.ime.register() method to register with jquery.ime
+object and it is passed to `$.ime.register()` method to register with `jquery.ime`
-eg: $.ime.register( hebrewStandardKeyboard );
+eg: `$.ime.register( hebrewStandardKeyboard );`
+
+Input methods can be built by reusing parts of other methods, this is especially
+interesting for complex patterns. If rules are reused then the methods must be
+loaded first. This is done through configurations in `jquery.ime.inputmethods.js`.
+
+For examples on reuse, see the rules "nb-normforms" or "hi-inscript".
Metadata fields
---------------
id: A mandatory unique identifier that represents the input method.
-eg: "hindi-inscript"
+eg: `"hindi-inscript"`
+
+name: A mandatory short name for the input method. eg: `"Hindi InScript"`
-name: A mandatory short name for the input method. eg: Hindi InScript
+Note that the names used in the menu comes from [jquery.ime.inputmethods.js](../src/jquery.ime.inputmethods.js)
description: An optional short description about the input method.
-eg: "keyboard layout as per inscript standard"
+eg: `"keyboard layout as per inscript standard"`
date: An optional string to represent when this input method was written.
Format should be: yyyy-mm-dd
author: An optional string containing the authors name. Can contain email
-address as well. eg: "Santhosh Thottingal, <santhosh.thottingal@gmail.com>"
+address as well. eg: `"Santhosh Thottingal, <santhosh.thottingal@gmail.com>"`
URL: A mandatory string containing URL for source where keyboard is defined,
information about trademark restrictions if any, layout and help.
-license: An optional string containing licence information. Eg: "CC-BY-SA" or
-"GPLv3".
+license: An optional string containing licence information. Eg: `"CC-BY-SA"` or
+`"GPLv3"`.
version: An optional string containing version information.
@@ -38,6 +47,8 @@ patterns: A regular expression table that maps the original inputs to the
target language.
eg:
+
+```javascript
patterns: [
[ 'q', '/' ],
[ 'w', '\'' ],
@@ -49,37 +60,55 @@ patterns: [
[ 'i', 'ן' ],
[ 'o', 'ם' ],
[ 'p', 'פ' ]
- ...
+ // ...
// These characters are mirrored in RTL languages
[ '\\(', ')' ],
[ '\\)', '(' ],
[ '\\[', ']' ],
[ '\\]', '[' ]
]
+```
Any valid regular expression is possible as first element of each array item.
-More examples
- [ '([ക-ഹ])a', '$1ാ' ]
- [ '(([ൺ-ൿം])\u200c+)?I', '$2ഐ' ]
+
+ex: `[ '([ക-ഹ])a', '$1ാ' ]`
+ex: `[ '(([ൺ-ൿം])\u200c+)?I', '$2ഐ' ]`
In the above example, $1, $1 etc are according to the normal regular expression
replace syntax.
-The second member of pattern can be a function as well. For eg:
+The second member of the pattern can be a function as well.
+eg:
+
+```javascript
patterns: [ [ '[a-z]', function ( $1 ) {
return $1.toUpperCase();
} ] ]
+```
This rule replace all key strokes to its upper case character.
+patterns_x: Defined the same way as ordinary patterns, but active while holding down the alt key or
+alt graph key. When active the normal patterns will be excluded. These two modifier keys can be
+handled differently on various hardware. It might be necessary to define ordinary patterns in
+addition to patterns_x to catch all cases.
+
+patterns_shift: Defined the same way as ordinary patterns, but active while holding down the shift
+key. When active the normal patterns will still be run, but only after the rules listed in
+patterns_shift is run.
+
contextLength: Length of the context to remember. jquery.ime can replace the
-text based on the previously typed characters. eg:
+text based on the previously typed characters.
+
+eg:
+```javascript
[ 'ൿh', 'c', 'ച്' ]
+```
Note that this pattern definition has 3 members, the middle one is the context.
-This rule is interpreted as
+This rule is interpreted as as an override to pattern definitions with 2 members.
The current key is h, previous key is c. For the previous key press c, we have
a transliteration ൿ. But if it is followed by h and ൿ is indeed from key press
@@ -105,4 +134,5 @@ Examples
For complete examples, please refer the existing input method definitions.
-Documentation of input methods are available at https://www.mediawiki.org/wiki/Help:Extension:UniversalLanguageSelector/Input_methods
+Documentation of input methods are available at
+[mw:Help:Extension:UniversalLanguageSelector/Input methods](https://www.mediawiki.org/wiki/Help:Extension:UniversalLanguageSelector/Input_methods)
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/am/am-transliteration.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/am/am-transliteration.js
index 511bcfec..e2267dc6 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/am/am-transliteration.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/am/am-transliteration.js
@@ -351,7 +351,7 @@
[ 'ኅE', 'ኄ' ],
[ 'ኅo', 'ኆ' ],
[ 'ኅW', 'ኋ' ],
- //end
+ // end
[ 'ህh', 'ኅ' ],
[ 'h', 'ህ' ],
@@ -404,7 +404,7 @@
[ 'ኤE', 'ዔ' ],
[ 'እe', 'ዕ' ],
[ 'ኦo', 'ዖ' ],
- //end undocumented
+ // end undocumented
[ 'እa', 'ኧ' ],
[ 'e', 'እ' ],
@@ -413,7 +413,7 @@
[ 'a', 'አ' ],
[ 'E', 'ኤ' ],
[ 'o', 'ኦ' ],
- //end vowels
+ // end vowels
[ '\\<\\<', '«' ],
[ '\\>\\>', '»' ],
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ar/ar-kbd.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ar/ar-kbd.js
index 6ca5ccd1..13ca3c0f 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ar/ar-kbd.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ar/ar-kbd.js
@@ -4,110 +4,110 @@
var arKbd = {
id: 'ar-kbd',
name: 'kbd',
- description: 'Arabic keyboard layout',
+ description: 'PC Arabic keyboard layout',
date: '2013-02-09',
URL: 'http://github.com/wikimedia/jquery.ime',
author: 'Parag Nemade',
license: 'GPLv3',
version: '1.0',
patterns: [
- ['1', '١'],
- ['2', '٢'],
- ['3', '٣'],
- ['4', '٤'],
- ['5', '٥'],
- ['6', '٦'],
- ['7', '٧'],
- ['8', '٨'],
- ['9', '٩'],
- ['0', '٠'],
- ['`', 'ذ'],
+ [ '1', '١' ],
+ [ '2', '٢' ],
+ [ '3', '٣' ],
+ [ '4', '٤' ],
+ [ '5', '٥' ],
+ [ '6', '٦' ],
+ [ '7', '٧' ],
+ [ '8', '٨' ],
+ [ '9', '٩' ],
+ [ '0', '٠' ],
+ [ '`', 'ذ' ],
- ['q', 'ض'],
- ['w', 'ص'],
- ['e', 'ث'],
- ['r', 'ق'],
- ['t', 'ف'],
- ['y', 'غ'],
- ['u', 'ع'],
- ['i', 'ه'],
- ['o', 'خ'],
- ['p', 'ح'],
- ['\\[', 'ج'],
- ['\\]', 'د'],
+ [ 'q', 'ض' ],
+ [ 'w', 'ص' ],
+ [ 'e', 'ث' ],
+ [ 'r', 'ق' ],
+ [ 't', 'ف' ],
+ [ 'y', 'غ' ],
+ [ 'u', 'ع' ],
+ [ 'i', 'ه' ],
+ [ 'o', 'خ' ],
+ [ 'p', 'ح' ],
+ [ '\\[', 'ج' ],
+ [ '\\]', 'د' ],
- ['a', 'ش'],
- ['s', 'س'],
- ['d', 'ي'],
- ['f', 'ب'],
- ['g', 'ل'],
- ['h', 'ا'],
- ['j', 'ت'],
- ['k', 'ن'],
- ['l', 'م'],
- [';', 'ك'],
- ['\'', 'ط'],
+ [ 'a', 'ش' ],
+ [ 's', 'س' ],
+ [ 'd', 'ي' ],
+ [ 'f', 'ب' ],
+ [ 'g', 'ل' ],
+ [ 'h', 'ا' ],
+ [ 'j', 'ت' ],
+ [ 'k', 'ن' ],
+ [ 'l', 'م' ],
+ [ ';', 'ك' ],
+ [ '\'', 'ط' ],
- ['z', 'ئ'],
- ['x', 'ء'],
- ['c', 'ؤ'],
- ['v', 'ر'],
- ['b', 'لا'],
- ['n', 'ى'],
- ['m', 'ة'],
- [',', 'و'],
- ['\\.', 'ز'],
- ['/', 'ظ'],
+ [ 'z', 'ئ' ],
+ [ 'x', 'ء' ],
+ [ 'c', 'ؤ' ],
+ [ 'v', 'ر' ],
+ [ 'b', 'لا' ],
+ [ 'n', 'ى' ],
+ [ 'm', 'ة' ],
+ [ ',', 'و' ],
+ [ '\\.', 'ز' ],
+ [ '/', 'ظ' ],
- ['\\(', ')'],
- ['\\)', '('],
- ['\\~', 'ّ'],
+ [ '\\(', ')' ],
+ [ '\\)', '(' ],
+ [ '\\~', 'ّ' ],
- ['Q', 'َ'],
- ['W', 'ً'],
- ['E', 'ُ'],
- ['R', 'ٌ'],
- ['T', 'لإ'],
- ['Y', 'إ'],
- ['U', '`'],
- ['I', '÷'],
- ['O', '×'],
- ['P', '؛'],
- ['\\{', '>'],
- ['\\}', '<'],
+ [ 'Q', 'َ' ],
+ [ 'W', 'ً' ],
+ [ 'E', 'ُ' ],
+ [ 'R', 'ٌ' ],
+ [ 'T', 'لإ' ],
+ [ 'Y', 'إ' ],
+ [ 'U', '`' ],
+ [ 'I', '÷' ],
+ [ 'O', '×' ],
+ [ 'P', '؛' ],
+ [ '\\{', '>' ],
+ [ '\\}', '<' ],
- ['A', 'ِ'],
- ['S', 'ٍ'],
- ['D', ']'],
- ['F', '['],
- ['G', 'لأ'],
- ['H', 'أ'],
- ['J', 'ـ'],
- ['K', '،'],
- ['L', '/'],
+ [ 'A', 'ِ' ],
+ [ 'S', 'ٍ' ],
+ [ 'D', ']' ],
+ [ 'F', '[' ],
+ [ 'G', 'لأ' ],
+ [ 'H', 'أ' ],
+ [ 'J', 'ـ' ],
+ [ 'K', '،' ],
+ [ 'L', '/' ],
- ['Z', '~'],
- ['X', 'ْ'],
- ['C', '}'],
- ['V', '{'],
- ['B', 'لآ'],
- ['N', 'آ'],
- ['M', '\''],
- ['\\<', ','],
- ['\\>', '.'],
- ['\\?', '؟']
+ [ 'Z', '~' ],
+ [ 'X', 'ْ' ],
+ [ 'C', '}' ],
+ [ 'V', '{' ],
+ [ 'B', 'لآ' ],
+ [ 'N', 'آ' ],
+ [ 'M', '\'' ],
+ [ '\\<', ',' ],
+ [ '\\>', '.' ],
+ [ '\\?', '؟' ]
],
patterns_x: [
- [',', '>'],
- ['\\.', '<'],
- ['\\[', ']'],
- ['\\]', '['],
- ['J', '\u200d'],
- ['L', '\u200e'],
- ['N', '\u200c'],
- ['R', '\u200f'],
- ['\\{', '}'],
- ['\\}', '{']
+ [ ',', '>' ],
+ [ '\\.', '<' ],
+ [ '\\[', ']' ],
+ [ '\\]', '[' ],
+ [ 'J', '\u200d' ],
+ [ 'L', '\u200e' ],
+ [ 'N', '\u200c' ],
+ [ 'R', '\u200f' ],
+ [ '\\{', '}' ],
+ [ '\\}', '{' ]
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/as/as-avro.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/as/as-avro.js
index 3fd422b3..0661f178 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/as/as-avro.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/as/as-avro.js
@@ -13,155 +13,155 @@
contextLength: 0,
maxKeyLength: 2,
patterns: [
- ['([ক-হড়ঢ়য়ৰ])্?ৰৰi', '[^o`]', '$1ৃ'],
- ['ৰৰi', '[^o`]', 'ঋ'],
-
- ['(([ক-হড়ঢ়য়ৰ])|য়)o', '[^o`]', '$1'], // য় cannot be included in the range, why? everywhere else it is OK!
- ['([ক-হড়ঢ়য়ৰ])a', '[^o`]', '$1া'],
- ['([ক-হড়ঢ়য়ৰ])i', '[^o`]', '$1ি'],
- ['([ক-হড়ঢ়য়ৰ])I', '[^o`]', '$1ী'],
- ['([ক-হড়ঢ়য়ৰ])u', '[^o`]', '$1ু'],
- ['([ক-হড়ঢ়য়ৰ])U', '[^o`]', '$1ূ'],
- ['([ক-হড়ঢ়য়ৰ])o', '[o`]', '$1ু'],
- ['([ক-হড়ঢ়য়ৰ])e', '[^o`]', '$1ে'],
- ['([ক-হড়ঢ়য়ৰ])োI', '[^o`]', '$1ৈ'],
- ['([ক-হড়ঢ়য়ৰ])O', '[^o`]', '$1ো'],
- ['([ক-হড়ঢ়য়ৰ])োU', '[^o`]', '$1ৌ'],
-
- //'চচh', '[^o`]', 'চ্চ'],
-
- ['([কঙলষস])(k|K)', '[^o`]', '$1্ক'],
- ['([ঙদল])(g|G)', '[^o`]', '$1্গ'],
- ['গg', '[^o`]', 'জ্ঞ'],
- ['([চশ])c', '[^o`]', '$1্চ'],
- ['([জঞব])j', '[^o`]', '$1্জ'],
- ['নj', '[^o`]', 'ঞ্জ'],
- ['([কটণনপলষস])T', '[^o`]', '$1্ট'],
- ['([ডণনল])D', '[^o`]', '$1্ড'],
- ['([গষহ])N', '[^o`]', '$1্ণ'],
- ['([কতনপশসহ])t', '[^o`]', '$1্ত'],
- ['([দনব])d', '[^o`]', '$1্দ'],
- ['([গঘণতধনপমশসহ])n', '[^o`]', '$1্ন'],
- ['([পমলস])p', '[^o`]', '$1্প'],
- ['([বমল])b', '[^o`]', '$1্ব'],
- ['([দম])(v|V)', '[^o`]', '$1্ভ'],
- ['([কগঙটণতদধনমলশষসহ])m', '[^o`]', '$1্ম'],
- ['([ক-ঘচ-ঝট-যলশ-হড়ঢ়য়])r', '[^o`]', '$1্ৰ'],
- ['([কগপ-বমলশসহ])l', '[^o`]', '$1্ল'],
- ['([কনপ])s', '[^o`]', '$1্স'],
- ['([ক-হড়ঢ়য়ৰ])w', '[^o`]', '$1্ব'],
- ['([ক-হড়ঢ়য়ৰ])y', '[^o`]', '$1্য'],
- ['নc', '[^o`]', 'ঞ্চ'],
-
- ['ত`', '`', 'ৎ'],
-
- ['ক্ক(h|H)', '[^o`]', 'ক্ষ'],
- ['কশ(h|H)', '[^o`]', 'ক্ষ'],
- //'([অ-ঔা-ৌ])ৰৰk', '[^o]', '$1র্ক'],
-
- ['ৰৰk', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্ক'],
- ['ৰৰg', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্গ'],
- ['ৰৰc', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্চ'],
- ['ৰৰj', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্জ'],
- ['ৰৰT', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্ট'],
- ['ৰৰD', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্ড'],
- ['ৰৰN', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্ণ'],
- ['ৰৰt', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্ত'],
- ['ৰৰd', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্দ'],
- ['ৰৰn', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্ন'],
- ['ৰৰp', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্প'],
- ['ৰৰf', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্ফ'],
- ['ৰৰb', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্ব'],
- ['ৰৰv', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্ভ'],
- ['ৰৰm', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্ম'],
- ['ৰৰz', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্য'],
- ['ৰৰl', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্ল'],
- ['ৰৰS', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্শ'],
- ['ৰৰs', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্স'],
- ['ৰৰh', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্হ'],
- ['ৰৰR', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্ড়'],
- ['ৰৰ(y|Y)', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্য়'],
-
- ['শ(h|H)', 'S', 'ষ'],
-
- ['অo', '[^`]', 'উ'],
- ['এe', '[^o`]', 'ঈ'],
-
- ['কh', '[^o`]', 'খ'],
- ['গh', '[^o`]', 'ঘ'],
- ['ণg', '[^o`]', 'ঙ'],
- ['চh', '[^o`]', 'ছ'],
- ['জh', '[^o`]', 'ঝ'],
- ['ণG', '[^o`]', 'ঞ'],
- ['টh', '[^o`]', 'ঠ'],
- ['ডh', '[^o`]', 'ঢ'],
- ['তh', '[^o`]', 'থ'],
- ['দh', '[^o`]', 'ধ'],
- ['পh', '[^o`]', 'ফ'],
- ['বh', '[^o`]', 'ভ'],
- ['(সh)', '[^o`]', 'শ'],
- ['ড়h', '[^o`]', 'ঢ়'],
- ['ত্`', '[^o`]', 'ৎ'],
- ['নg', '[^o`]', 'ং'],
- ['ঃ`', '[^o`]', ':'],
- ['ৰৰi', '[^o`]', 'ঋ'],
- ['ওI', '[^o`]', 'ঐ'],
- ['ওU', '[^o`]', 'ঔ'],
- ['(k|K)', 'ক'],
- ['(g|G)', 'গ'],
- ['(c|C)', 'চ'],
- ['j', 'জ'],
- ['T', 'ট'],
- ['D', 'ড'],
- ['N', 'ণ'],
- ['t', 'ত'],
- ['d', 'দ'],
- ['n', 'ন'],
- ['(p|P)', 'প'],
- ['f', 'ফ'],
- ['(b|B)', 'ব'],
- ['(v|V)', 'ভ'],
- ['(m|M)', 'ম'],
- ['z', 'য'],
- ['r', 'ৰ'],
- ['(l|L)', 'ল'],
- ['S', 'শ'],
- ['s', 'স'],
- ['(h|H)', 'হ'],
- ['R', 'ড়'],
- ['(y|Y)', 'য়'],
-
- ['Z','্য'],
-
- ['o', 'অ'],
- ['(a|A)', 'আ'],
- ['i', 'ই'],
- ['I', 'ঈ'],
- ['u', 'উ'],
- ['U', 'ঊ'],
- ['e', 'এ'],
- ['O', 'ও'],
-
- ['0', '০'],
- ['1', '১'],
- ['2', '২'],
- ['3', '৩'],
- ['4', '৪'],
- ['5', '৫'],
- ['6', '৬'],
- ['7', '৭'],
- ['8', '৮'],
- ['9', '৯'],
-
- ['\\\\\\.', '.'],
-
- [',,','্'],
- ['\\:','ঃ'],
- ['\\^','ঁ'],
- ['\\.', '।'],
- ['\\$', '৳'],
- ['ঃ`', ':'],
- ['`', '']]
+ [ '([ক-হড়ঢ়য়ৰ])্?ৰৰi', '[^o`]', '$1ৃ' ],
+ [ 'ৰৰi', '[^o`]', 'ঋ' ],
+
+ [ '(([ক-হড়ঢ়য়ৰ])|য়)o', '[^o`]', '$1' ], // য় cannot be included in the range, why? everywhere else it is OK!
+ [ '([ক-হড়ঢ়য়ৰ])a', '[^o`]', '$1া' ],
+ [ '([ক-হড়ঢ়য়ৰ])i', '[^o`]', '$1ি' ],
+ [ '([ক-হড়ঢ়য়ৰ])I', '[^o`]', '$1ী' ],
+ [ '([ক-হড়ঢ়য়ৰ])u', '[^o`]', '$1ু' ],
+ [ '([ক-হড়ঢ়য়ৰ])U', '[^o`]', '$1ূ' ],
+ [ '([ক-হড়ঢ়য়ৰ])o', '[o`]', '$1ু' ],
+ [ '([ক-হড়ঢ়য়ৰ])e', '[^o`]', '$1ে' ],
+ [ '([ক-হড়ঢ়য়ৰ])োI', '[^o`]', '$1ৈ' ],
+ [ '([ক-হড়ঢ়য়ৰ])O', '[^o`]', '$1ো' ],
+ [ '([ক-হড়ঢ়য়ৰ])োU', '[^o`]', '$1ৌ' ],
+
+ // 'চচh', '[^o`]', 'চ্চ'],
+
+ [ '([কঙলষস])(k|K)', '[^o`]', '$1্ক' ],
+ [ '([ঙদল])(g|G)', '[^o`]', '$1্গ' ],
+ [ 'গg', '[^o`]', 'জ্ঞ' ],
+ [ '([চশ])c', '[^o`]', '$1্চ' ],
+ [ '([জঞব])j', '[^o`]', '$1্জ' ],
+ [ 'নj', '[^o`]', 'ঞ্জ' ],
+ [ '([কটণনপলষস])T', '[^o`]', '$1্ট' ],
+ [ '([ডণনল])D', '[^o`]', '$1্ড' ],
+ [ '([গষহ])N', '[^o`]', '$1্ণ' ],
+ [ '([কতনপশসহ])t', '[^o`]', '$1্ত' ],
+ [ '([দনব])d', '[^o`]', '$1্দ' ],
+ [ '([গঘণতধনপমশসহ])n', '[^o`]', '$1্ন' ],
+ [ '([পমলস])p', '[^o`]', '$1্প' ],
+ [ '([বমল])b', '[^o`]', '$1্ব' ],
+ [ '([দম])(v|V)', '[^o`]', '$1্ভ' ],
+ [ '([কগঙটণতদধনমলশষসহ])m', '[^o`]', '$1্ম' ],
+ [ '([ক-ঘচ-ঝট-যলশ-হড়ঢ়য়])r', '[^o`]', '$1্ৰ' ],
+ [ '([কগপ-বমলশসহ])l', '[^o`]', '$1্ল' ],
+ [ '([কনপ])s', '[^o`]', '$1্স' ],
+ [ '([ক-হড়ঢ়য়ৰ])w', '[^o`]', '$1্ব' ],
+ [ '([ক-হড়ঢ়য়ৰ])y', '[^o`]', '$1্য' ],
+ [ 'নc', '[^o`]', 'ঞ্চ' ],
+
+ [ 'ত`', '`', 'ৎ' ],
+
+ [ 'ক্ক(h|H)', '[^o`]', 'ক্ষ' ],
+ [ 'কশ(h|H)', '[^o`]', 'ক্ষ' ],
+ // '([অ-ঔা-ৌ])ৰৰk', '[^o]', '$1র্ক'],
+
+ [ 'ৰৰk', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্ক' ],
+ [ 'ৰৰg', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্গ' ],
+ [ 'ৰৰc', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্চ' ],
+ [ 'ৰৰj', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্জ' ],
+ [ 'ৰৰT', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্ট' ],
+ [ 'ৰৰD', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্ড' ],
+ [ 'ৰৰN', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্ণ' ],
+ [ 'ৰৰt', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্ত' ],
+ [ 'ৰৰd', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্দ' ],
+ [ 'ৰৰn', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্ন' ],
+ [ 'ৰৰp', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্প' ],
+ [ 'ৰৰf', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্ফ' ],
+ [ 'ৰৰb', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্ব' ],
+ [ 'ৰৰv', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্ভ' ],
+ [ 'ৰৰm', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্ম' ],
+ [ 'ৰৰz', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্য' ],
+ [ 'ৰৰl', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্ল' ],
+ [ 'ৰৰS', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্শ' ],
+ [ 'ৰৰs', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্স' ],
+ [ 'ৰৰh', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্হ' ],
+ [ 'ৰৰR', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্ড়' ],
+ [ 'ৰৰ(y|Y)', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্য়' ],
+
+ [ 'শ(h|H)', 'S', 'ষ' ],
+
+ [ 'অo', '[^`]', 'উ' ],
+ [ 'এe', '[^o`]', 'ঈ' ],
+
+ [ 'কh', '[^o`]', 'খ' ],
+ [ 'গh', '[^o`]', 'ঘ' ],
+ [ 'ণg', '[^o`]', 'ঙ' ],
+ [ 'চh', '[^o`]', 'ছ' ],
+ [ 'জh', '[^o`]', 'ঝ' ],
+ [ 'ণG', '[^o`]', 'ঞ' ],
+ [ 'টh', '[^o`]', 'ঠ' ],
+ [ 'ডh', '[^o`]', 'ঢ' ],
+ [ 'তh', '[^o`]', 'থ' ],
+ [ 'দh', '[^o`]', 'ধ' ],
+ [ 'পh', '[^o`]', 'ফ' ],
+ [ 'বh', '[^o`]', 'ভ' ],
+ [ '(সh)', '[^o`]', 'শ' ],
+ [ 'ড়h', '[^o`]', 'ঢ়' ],
+ [ 'ত্`', '[^o`]', 'ৎ' ],
+ [ 'নg', '[^o`]', 'ং' ],
+ [ 'ঃ`', '[^o`]', ':' ],
+ [ 'ৰৰi', '[^o`]', 'ঋ' ],
+ [ 'ওI', '[^o`]', 'ঐ' ],
+ [ 'ওU', '[^o`]', 'ঔ' ],
+ [ '(k|K)', 'ক' ],
+ [ '(g|G)', 'গ' ],
+ [ '(c|C)', 'চ' ],
+ [ 'j', 'জ' ],
+ [ 'T', 'ট' ],
+ [ 'D', 'ড' ],
+ [ 'N', 'ণ' ],
+ [ 't', 'ত' ],
+ [ 'd', 'দ' ],
+ [ 'n', 'ন' ],
+ [ '(p|P)', 'প' ],
+ [ 'f', 'ফ' ],
+ [ '(b|B)', 'ব' ],
+ [ '(v|V)', 'ভ' ],
+ [ '(m|M)', 'ম' ],
+ [ 'z', 'য' ],
+ [ 'r', 'ৰ' ],
+ [ '(l|L)', 'ল' ],
+ [ 'S', 'শ' ],
+ [ 's', 'স' ],
+ [ '(h|H)', 'হ' ],
+ [ 'R', 'ড়' ],
+ [ '(y|Y)', 'য়' ],
+
+ [ 'Z','্য' ],
+
+ [ 'o', 'অ' ],
+ [ '(a|A)', 'আ' ],
+ [ 'i', 'ই' ],
+ [ 'I', 'ঈ' ],
+ [ 'u', 'উ' ],
+ [ 'U', 'ঊ' ],
+ [ 'e', 'এ' ],
+ [ 'O', 'ও' ],
+
+ [ '0', '০' ],
+ [ '1', '১' ],
+ [ '2', '২' ],
+ [ '3', '৩' ],
+ [ '4', '৪' ],
+ [ '5', '৫' ],
+ [ '6', '৬' ],
+ [ '7', '৭' ],
+ [ '8', '৮' ],
+ [ '9', '৯' ],
+
+ [ '\\\\\\.', '.' ],
+
+ [ ',,','্' ],
+ [ '\\:','ঃ' ],
+ [ '\\^','ঁ' ],
+ [ '\\.', '।' ],
+ [ '\\$', '৳' ],
+ [ 'ঃ`', ':' ],
+ [ '`', '' ] ]
};
$.ime.register( asAvro );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/as/as-bornona.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/as/as-bornona.js
index 6daa8d3a..8260d502 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/as/as-bornona.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/as/as-bornona.js
@@ -13,71 +13,71 @@
contextLength: 0,
maxKeyLength: 0,
patterns: [
- ['q', 'ং'],
- ['Q', 'ঙ'],
- ['w', 'ঢ'],
- ['W', 'ঠ'],
- ['e', 'ে'],
- ['E', 'ৈ'],
- ['r', 'ৰ'],
- ['R', 'ৃ'],
- ['t', 'ত'],
- ['T', 'ট'],
- ['y', 'ধ'],
- ['Y', 'থ'],
- ['u', 'ু'],
- ['U', 'ূ'],
- ['i', 'ি'],
- ['I', 'ী'],
- ['o', 'ো'],
- ['O', 'ৌ'],
- ['p', 'প'],
- ['P', '্ৰ'],
- ['\\|', 'র'],
- ['\\\\', 'ৱ'],
- ['a', 'া'],
- ['A', 'অ'],
- ['s', 'স'],
- ['S', 'শ'],
- ['d', 'দ'],
- ['D', 'ড'],
- ['f', 'ফ'],
- ['F', 'ৰ্ফ'],
- ['g', 'গ'],
- ['G', 'ঘ'],
- ['h', '্'],
- ['H', 'হ'],
- ['j', 'জ'],
- ['J', 'ঝ'],
- ['k', 'ক'],
- ['K', 'খ'],
- ['l', 'ল'],
- ['L', '।'],
- ['z', 'য'],
- ['Z', 'ড়'],
- ['x', 'ষ'],
- ['X', 'ঢ়'],
- ['c', 'চ'],
- ['C', 'ছ'],
- ['v', 'ভ'],
- ['V', '্য'],
- ['b', 'ব'],
- ['B', 'য়'],
- ['n', 'ন'],
- ['N', 'ণ'],
- ['m', 'ম'],
- ['M', 'ঞ'],
- ['0', '০'],
- ['1', '১'],
- ['2', '২'],
- ['3', '৩'],
- ['4', '৪'],
- ['5', '৫'],
- ['6', '৬'],
- ['7', '৭'],
- ['8', '৮'],
- ['9', '৯'],
- ['\\`', '\u200C']]
+ [ 'q', 'ং' ],
+ [ 'Q', 'ঙ' ],
+ [ 'w', 'ঢ' ],
+ [ 'W', 'ঠ' ],
+ [ 'e', 'ে' ],
+ [ 'E', 'ৈ' ],
+ [ 'r', 'ৰ' ],
+ [ 'R', 'ৃ' ],
+ [ 't', 'ত' ],
+ [ 'T', 'ট' ],
+ [ 'y', 'ধ' ],
+ [ 'Y', 'থ' ],
+ [ 'u', 'ু' ],
+ [ 'U', 'ূ' ],
+ [ 'i', 'ি' ],
+ [ 'I', 'ী' ],
+ [ 'o', 'ো' ],
+ [ 'O', 'ৌ' ],
+ [ 'p', 'প' ],
+ [ 'P', '্ৰ' ],
+ [ '\\|', 'র' ],
+ [ '\\\\', 'ৱ' ],
+ [ 'a', 'া' ],
+ [ 'A', 'অ' ],
+ [ 's', 'স' ],
+ [ 'S', 'শ' ],
+ [ 'd', 'দ' ],
+ [ 'D', 'ড' ],
+ [ 'f', 'ফ' ],
+ [ 'F', 'ৰ্ফ' ],
+ [ 'g', 'গ' ],
+ [ 'G', 'ঘ' ],
+ [ 'h', '্' ],
+ [ 'H', 'হ' ],
+ [ 'j', 'জ' ],
+ [ 'J', 'ঝ' ],
+ [ 'k', 'ক' ],
+ [ 'K', 'খ' ],
+ [ 'l', 'ল' ],
+ [ 'L', '।' ],
+ [ 'z', 'য' ],
+ [ 'Z', 'ড়' ],
+ [ 'x', 'ষ' ],
+ [ 'X', 'ঢ়' ],
+ [ 'c', 'চ' ],
+ [ 'C', 'ছ' ],
+ [ 'v', 'ভ' ],
+ [ 'V', '্য' ],
+ [ 'b', 'ব' ],
+ [ 'B', 'য়' ],
+ [ 'n', 'ন' ],
+ [ 'N', 'ণ' ],
+ [ 'm', 'ম' ],
+ [ 'M', 'ঞ' ],
+ [ '0', '০' ],
+ [ '1', '১' ],
+ [ '2', '২' ],
+ [ '3', '৩' ],
+ [ '4', '৪' ],
+ [ '5', '৫' ],
+ [ '6', '৬' ],
+ [ '7', '৭' ],
+ [ '8', '৮' ],
+ [ '9', '৯' ],
+ [ '\\`', '\u200C' ] ]
};
$.ime.register( asBornona );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/as/as-inscript.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/as/as-inscript.js
index e2491f4e..8dd9bf51 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/as/as-inscript.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/as/as-inscript.js
@@ -13,110 +13,110 @@
contextLength: 0,
maxKeyLength: 0,
patterns: [
- ['X', 'ঁ'],
- ['x', 'ং'],
- ['_', 'ঃ'],
- ['D', 'অ'],
- ['E', 'আ'],
- ['F', 'ই'],
- ['R', 'ঈ'],
- ['G', 'উ'],
- ['T', 'ঊ'],
- ['\\+', 'ঋ'],
- ['S', 'এ'],
- ['W', 'ঐ'],
- ['A', 'ও'],
- ['Q', 'ঔ'],
- ['k', 'ক'],
- ['K', 'খ'],
- ['i', 'গ'],
- ['I', 'ঘ'],
- ['U', 'ঙ'],
- [';', 'চ'],
- ['\\:', 'ছ'],
- ['p', 'জ'],
- ['P', 'ঝ'],
- ['\\}', 'ঞ'],
- ['\'', 'ট'],
- ['\"', 'ঠ'],
- ['\\[', 'ড'],
- ['\\{', 'ঢ'],
- ['C', 'ণ'],
- ['l', 'ত'],
- ['L', 'থ'],
- ['o', 'দ'],
- ['O', 'ধ'],
- ['v', 'ন'],
- ['h', 'প'],
- ['H', 'ফ'],
- ['y', 'ব'],
- ['Y', 'ভ'],
- ['c', 'ম'],
- ['\\?', 'য'],
- ['j', '\u09F0'],
- ['J', 'ৎ'],
- ['n', 'ল'],
- ['M', 'শ'],
- ['\\<', 'ষ'],
- ['m', 'স'],
- ['u', 'হ'],
- ['\\]', '়'],
- ['e', 'া'],
- ['f', 'ি'],
- ['r', 'ী'],
- ['g', 'ু'],
- ['t', 'ূ'],
- ['\\=', 'ৃ'],
- ['s', 'ে'],
- ['w', 'ৈ'],
- ['a', 'ো'],
- ['q', 'ৌ'],
- ['d', '্'],
- ['/', 'য়'],
- ['\\>', '৤'],
- ['0', '০'],
- ['1', '১'],
- ['2', '২'],
- ['3', '৩'],
- ['4', '৪'],
- ['5', '৫'],
- ['6', '৬'],
- ['7', '৭'],
- ['8', '৮'],
- ['9', '৯'],
- ['z', 'ʼ'],
- ['\\!', 'অ্যা'],
- ['\\#', '্\u09F0'],
- ['\\$', '\u09F0্'],
- ['\\%', 'জ্ঞ'],
- ['\\^', 'ত্র'],
- ['\\&', 'ক্ষ'],
- ['\\*', 'শ্র'],
- ['\\(', '\u200D'],
- ['\\)', '\u200C']],
+ [ 'X', 'ঁ' ],
+ [ 'x', 'ং' ],
+ [ '_', 'ঃ' ],
+ [ 'D', 'অ' ],
+ [ 'E', 'আ' ],
+ [ 'F', 'ই' ],
+ [ 'R', 'ঈ' ],
+ [ 'G', 'উ' ],
+ [ 'T', 'ঊ' ],
+ [ '\\+', 'ঋ' ],
+ [ 'S', 'এ' ],
+ [ 'W', 'ঐ' ],
+ [ 'A', 'ও' ],
+ [ 'Q', 'ঔ' ],
+ [ 'k', 'ক' ],
+ [ 'K', 'খ' ],
+ [ 'i', 'গ' ],
+ [ 'I', 'ঘ' ],
+ [ 'U', 'ঙ' ],
+ [ ';', 'চ' ],
+ [ '\\:', 'ছ' ],
+ [ 'p', 'জ' ],
+ [ 'P', 'ঝ' ],
+ [ '\\}', 'ঞ' ],
+ [ '\'', 'ট' ],
+ [ '\"', 'ঠ' ],
+ [ '\\[', 'ড' ],
+ [ '\\{', 'ঢ' ],
+ [ 'C', 'ণ' ],
+ [ 'l', 'ত' ],
+ [ 'L', 'থ' ],
+ [ 'o', 'দ' ],
+ [ 'O', 'ধ' ],
+ [ 'v', 'ন' ],
+ [ 'h', 'প' ],
+ [ 'H', 'ফ' ],
+ [ 'y', 'ব' ],
+ [ 'Y', 'ভ' ],
+ [ 'c', 'ম' ],
+ [ '\\?', 'য' ],
+ [ 'j', '\u09F0' ],
+ [ 'J', 'ৎ' ],
+ [ 'n', 'ল' ],
+ [ 'M', 'শ' ],
+ [ '\\<', 'ষ' ],
+ [ 'm', 'স' ],
+ [ 'u', 'হ' ],
+ [ '\\]', '়' ],
+ [ 'e', 'া' ],
+ [ 'f', 'ি' ],
+ [ 'r', 'ী' ],
+ [ 'g', 'ু' ],
+ [ 't', 'ূ' ],
+ [ '\\=', 'ৃ' ],
+ [ 's', 'ে' ],
+ [ 'w', 'ৈ' ],
+ [ 'a', 'ো' ],
+ [ 'q', 'ৌ' ],
+ [ 'd', '্' ],
+ [ '/', 'য়' ],
+ [ '\\>', '৤' ],
+ [ '0', '০' ],
+ [ '1', '১' ],
+ [ '2', '২' ],
+ [ '3', '৩' ],
+ [ '4', '৪' ],
+ [ '5', '৫' ],
+ [ '6', '৬' ],
+ [ '7', '৭' ],
+ [ '8', '৮' ],
+ [ '9', '৯' ],
+ [ 'z', 'ʼ' ],
+ [ '\\!', 'অ্যা' ],
+ [ '\\#', '্\u09F0' ],
+ [ '\\$', '\u09F0্' ],
+ [ '\\%', 'জ্ঞ' ],
+ [ '\\^', 'ত্র' ],
+ [ '\\&', 'ক্ষ' ],
+ [ '\\*', 'শ্র' ],
+ [ '\\(', '\u200D' ],
+ [ '\\)', '\u200C' ] ],
patterns_x: [
- ['F', 'ঌ'],
- ['\\>', 'ঽ'],
- ['\\=', 'ৠ'],
- ['l', 'ৎ'],
- ['\\[', 'ড়'],
- ['\\{', 'ঢ়'],
- ['\\+', 'ৠ'],
- ['R', 'ৡ'],
- ['f', 'ৢ'],
- ['r', 'ৣ'],
- ['\\.', '৥'],
- ['x', '৺'],
- ['\\<', '৲'],
- [',', '৳'],
- ['\\!', '৴'],
- ['\\@', '৵'],
- ['\\#', '৶'],
- ['\\$', '৷'],
- ['\\%', '৸'],
- ['\\^', '৹'],
- ['\\?', '৻'],
- ['4', '₹']]
+ [ 'F', 'ঌ' ],
+ [ '\\>', 'ঽ' ],
+ [ '\\=', 'ৠ' ],
+ [ 'l', 'ৎ' ],
+ [ '\\[', 'ড়' ],
+ [ '\\{', 'ঢ়' ],
+ [ '\\+', 'ৠ' ],
+ [ 'R', 'ৡ' ],
+ [ 'f', 'ৢ' ],
+ [ 'r', 'ৣ' ],
+ [ '\\.', '৥' ],
+ [ 'x', '৺' ],
+ [ '\\<', '৲' ],
+ [ ',', '৳' ],
+ [ '\\!', '৴' ],
+ [ '\\@', '৵' ],
+ [ '\\#', '৶' ],
+ [ '\\$', '৷' ],
+ [ '\\%', '৸' ],
+ [ '\\^', '৹' ],
+ [ '\\?', '৻' ],
+ [ '4', '₹' ] ]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/as/as-inscript2.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/as/as-inscript2.js
index e7da7dd8..2c6b844c 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/as/as-inscript2.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/as/as-inscript2.js
@@ -11,116 +11,116 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['\\!', 'অ্যা'],
- ['1', '১'],
- ['2', '২'],
- ['\\#', '্ৰ'],
- ['3', '৩'],
- ['\\$', 'ৰ্'],
- ['4', '৪'],
- ['\\%', 'জ্ঞ'],
- ['5', '৫'],
- ['\\^', 'ত্র'],
- ['6', '৬'],
- ['\\&', 'ক্ষ'],
- ['7', '৭'],
- ['\\*', 'শ্র'],
- ['8', '৮'],
- ['9', '৯'],
- ['\\(', '('],
- ['\\)', ')'],
- ['0', '০'],
- ['\"', 'ঠ'],
- ['\'', 'ট'],
- [',', ','],
- ['-', '-'],
- ['\\.', '.'],
- ['/', 'য়'],
- [':', 'ছ'],
- [';', 'চ'],
- ['\\<', 'ষ'],
- ['\\=', 'ৃ'],
- ['\\+', 'ঋ'],
- ['\\>', '।'],
- ['\\?', 'য'],
- ['A', 'ও'],
- ['C', 'ণ'],
- ['D', 'অ'],
- ['E', 'আ'],
- ['F', 'ই'],
- ['G', 'উ'],
- ['H', 'ফ'],
- ['I', 'ঘ'],
- ['K', 'খ'],
- ['L', 'থ'],
- ['M', 'শ'],
- ['O', 'ধ'],
- ['P', 'ঝ'],
- ['Q', 'ঔ'],
- ['R', 'ঈ'],
- ['S', 'এ'],
- ['T', 'ঊ'],
- ['U', 'ঙ'],
- ['W', 'ঐ'],
- ['X', 'ঁ'],
- ['Y', 'ভ'],
- ['\\{', 'ঢ'],
- ['\\[', 'ড'],
- ['\\}', 'ঞ'],
- ['\\]', '়'],
- ['\\_', 'ঃ'],
- ['a', 'ো'],
- ['b', 'ৱ'],
- ['c', 'ম'],
- ['d', '্'],
- ['e', 'া'],
- ['f', 'ি'],
- ['g', 'ু'],
- ['h', 'প'],
- ['i', 'গ'],
- ['j', 'ৰ'],
- ['k', 'ক'],
- ['l', 'ত'],
- ['m', 'স'],
- ['n', 'ল'],
- ['o', 'দ'],
- ['p', 'জ'],
- ['q', 'ৌ'],
- ['r', 'ী'],
- ['s', 'ে'],
- ['t', 'ূ'],
- ['u', 'হ'],
- ['v', 'ন'],
- ['w', 'ৈ'],
- ['x', 'ং'],
- ['y', 'ব'],
- ['z', 'ʼ']
+ [ '\\!', 'অ্যা' ],
+ [ '1', '১' ],
+ [ '2', '২' ],
+ [ '\\#', '্ৰ' ],
+ [ '3', '৩' ],
+ [ '\\$', 'ৰ্' ],
+ [ '4', '৪' ],
+ [ '\\%', 'জ্ঞ' ],
+ [ '5', '৫' ],
+ [ '\\^', 'ত্র' ],
+ [ '6', '৬' ],
+ [ '\\&', 'ক্ষ' ],
+ [ '7', '৭' ],
+ [ '\\*', 'শ্র' ],
+ [ '8', '৮' ],
+ [ '9', '৯' ],
+ [ '\\(', '(' ],
+ [ '\\)', ')' ],
+ [ '0', '০' ],
+ [ '\"', 'ঠ' ],
+ [ '\'', 'ট' ],
+ [ ',', ',' ],
+ [ '-', '-' ],
+ [ '\\.', '.' ],
+ [ '/', 'য়' ],
+ [ ':', 'ছ' ],
+ [ ';', 'চ' ],
+ [ '\\<', 'ষ' ],
+ [ '\\=', 'ৃ' ],
+ [ '\\+', 'ঋ' ],
+ [ '\\>', '।' ],
+ [ '\\?', 'য' ],
+ [ 'A', 'ও' ],
+ [ 'C', 'ণ' ],
+ [ 'D', 'অ' ],
+ [ 'E', 'আ' ],
+ [ 'F', 'ই' ],
+ [ 'G', 'উ' ],
+ [ 'H', 'ফ' ],
+ [ 'I', 'ঘ' ],
+ [ 'K', 'খ' ],
+ [ 'L', 'থ' ],
+ [ 'M', 'শ' ],
+ [ 'O', 'ধ' ],
+ [ 'P', 'ঝ' ],
+ [ 'Q', 'ঔ' ],
+ [ 'R', 'ঈ' ],
+ [ 'S', 'এ' ],
+ [ 'T', 'ঊ' ],
+ [ 'U', 'ঙ' ],
+ [ 'W', 'ঐ' ],
+ [ 'X', 'ঁ' ],
+ [ 'Y', 'ভ' ],
+ [ '\\{', 'ঢ' ],
+ [ '\\[', 'ড' ],
+ [ '\\}', 'ঞ' ],
+ [ '\\]', '়' ],
+ [ '\\_', 'ঃ' ],
+ [ 'a', 'ো' ],
+ [ 'b', 'ৱ' ],
+ [ 'c', 'ম' ],
+ [ 'd', '্' ],
+ [ 'e', 'া' ],
+ [ 'f', 'ি' ],
+ [ 'g', 'ু' ],
+ [ 'h', 'প' ],
+ [ 'i', 'গ' ],
+ [ 'j', 'ৰ' ],
+ [ 'k', 'ক' ],
+ [ 'l', 'ত' ],
+ [ 'm', 'স' ],
+ [ 'n', 'ল' ],
+ [ 'o', 'দ' ],
+ [ 'p', 'জ' ],
+ [ 'q', 'ৌ' ],
+ [ 'r', 'ী' ],
+ [ 's', 'ে' ],
+ [ 't', 'ূ' ],
+ [ 'u', 'হ' ],
+ [ 'v', 'ন' ],
+ [ 'w', 'ৈ' ],
+ [ 'x', 'ং' ],
+ [ 'y', 'ব' ],
+ [ 'z', 'ʼ' ]
],
patterns_x: [
- ['\\!', '৴'],
- ['1', '\u200d'],
- ['\\@', '৵'],
- ['2', '\u200c'],
- ['\\#', '৶'],
- ['\\$', '৷'],
- ['4', '₹'],
- ['\\%', '৸'],
- ['\\^', '৹'],
- [',', '৳'],
- ['\\.', '॥'],
- ['/', '্য'],
- ['\\<', '৲'],
- ['\\=', 'ৄ'],
- ['\\+', 'ৠ'],
- ['\\>', 'ঽ'],
- ['F', 'ঌ'],
- ['R', 'ৡ'],
- ['\\{', 'ঢ়'],
- ['\\[', 'ড়'],
- ['f', 'ৢ'],
- ['l', 'ৎ'],
- ['r', 'ৣ'],
- ['x', '৺']
+ [ '\\!', '৴' ],
+ [ '1', '\u200d' ],
+ [ '\\@', '৵' ],
+ [ '2', '\u200c' ],
+ [ '\\#', '৶' ],
+ [ '\\$', '৷' ],
+ [ '4', '₹' ],
+ [ '\\%', '৸' ],
+ [ '\\^', '৹' ],
+ [ ',', '৳' ],
+ [ '\\.', '॥' ],
+ [ '/', '্য' ],
+ [ '\\<', '৲' ],
+ [ '\\=', 'ৄ' ],
+ [ '\\+', 'ৠ' ],
+ [ '\\>', 'ঽ' ],
+ [ 'F', 'ঌ' ],
+ [ 'R', 'ৡ' ],
+ [ '\\{', 'ঢ়' ],
+ [ '\\[', 'ড়' ],
+ [ 'f', 'ৢ' ],
+ [ 'l', 'ৎ' ],
+ [ 'r', 'ৣ' ],
+ [ 'x', '৺' ]
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/as/as-phonetic.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/as/as-phonetic.js
index b877c430..966427c1 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/as/as-phonetic.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/as/as-phonetic.js
@@ -11,100 +11,100 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['\\!', '!'],
- ['1', '১'],
- ['\\@', '@'],
- ['2', '২'],
- ['\\#', '#'],
- ['3', '৩'],
- ['\\$', 'ৎ'],
- ['4', '৪'],
- ['\\%', '%'],
- ['5', '৫'],
- ['\\^', 'ঞ'],
- ['6', '৬'],
- ['\\&', '&'],
- ['7', '৭'],
- ['\\*', '*'],
- ['8', '৮'],
- ['\\(', '('],
- ['9', '৯'],
- ['\\)', ')'],
- ['0', '০'],
- ['\\_', '_'],
- ['\\-', '-'],
- ['\\+', '+'],
- ['\\=', '='],
- ['Q', 'ধ'],
- ['q', 'দ'],
- ['W', 'ঊ'],
- ['w', 'ূ'],
- ['E', 'ঈ'],
- ['e', 'ী'],
- ['R', 'ড়'],
- ['r', 'ৰ'],
- ['T', 'ঠ'],
- ['t', 'ট'],
- ['Y', 'ঐ'],
- ['y', 'এ'],
- ['U', 'উ'],
- ['u', 'ু'],
- ['I', 'ই'],
- ['i', 'ি'],
- ['O', 'ঔ'],
- ['o', 'ও'],
- ['P', 'ফ'],
- ['p', 'প'],
- ['\\{', 'ৈ'],
- ['\\[', 'ে'],
- ['\\}', 'ৌ'],
- ['\\]', 'ো'],
- ['A', 'অ'],
- ['a', 'া'],
- ['S', 'ষ'],
- ['s', 'স'],
- ['D', 'ঢ'],
- ['d', 'ড'],
- ['F', 'থ'],
- ['f', 'ত'],
- ['G', 'ঘ'],
- ['g', 'গ'],
- ['H', 'ঃ'],
- ['h', 'হ'],
- ['J', 'ঝ'],
- ['j', 'জ'],
- ['K', 'খ'],
- ['k', 'ক'],
- ['L', 'ং'],
- ['l', 'ল'],
- [':', ':'],
- [';', ';'],
- ['"', '"'],
- ['\'', '\''],
- ['\\|', '৺'],
- ['\\\\', 'ৱ'],
- ['\\~', '\u200c'],
- ['\\`', '\u200d'],
- ['Z', 'য'],
- ['z', 'য়'],
- ['X', 'ঢ়'],
- ['x', 'শ'],
- ['C', 'ছ'],
- ['c', 'চ'],
- ['V', 'ঋ'],
- ['v', 'আ'],
- ['B', 'ভ'],
- ['b', 'ব'],
- ['N', 'ণ'],
- ['n', 'ন'],
- ['M', 'ঙ'],
- ['m', 'ম'],
- ['\\<', 'ৃ'],
- [',', ','],
- ['\\>', 'ঁ'],
- ['\\.', '।'],
- ['\\?', '?'],
- ['/', '্']
+ [ '\\!', '!' ],
+ [ '1', '১' ],
+ [ '\\@', '@' ],
+ [ '2', '২' ],
+ [ '\\#', '#' ],
+ [ '3', '৩' ],
+ [ '\\$', 'ৎ' ],
+ [ '4', '৪' ],
+ [ '\\%', '%' ],
+ [ '5', '৫' ],
+ [ '\\^', 'ঞ' ],
+ [ '6', '৬' ],
+ [ '\\&', '&' ],
+ [ '7', '৭' ],
+ [ '\\*', '*' ],
+ [ '8', '৮' ],
+ [ '\\(', '(' ],
+ [ '9', '৯' ],
+ [ '\\)', ')' ],
+ [ '0', '০' ],
+ [ '\\_', '_' ],
+ [ '\\-', '-' ],
+ [ '\\+', '+' ],
+ [ '\\=', '=' ],
+ [ 'Q', 'ধ' ],
+ [ 'q', 'দ' ],
+ [ 'W', 'ঊ' ],
+ [ 'w', 'ূ' ],
+ [ 'E', 'ঈ' ],
+ [ 'e', 'ী' ],
+ [ 'R', 'ড়' ],
+ [ 'r', 'ৰ' ],
+ [ 'T', 'ঠ' ],
+ [ 't', 'ট' ],
+ [ 'Y', 'ঐ' ],
+ [ 'y', 'এ' ],
+ [ 'U', 'উ' ],
+ [ 'u', 'ু' ],
+ [ 'I', 'ই' ],
+ [ 'i', 'ি' ],
+ [ 'O', 'ঔ' ],
+ [ 'o', 'ও' ],
+ [ 'P', 'ফ' ],
+ [ 'p', 'প' ],
+ [ '\\{', 'ৈ' ],
+ [ '\\[', 'ে' ],
+ [ '\\}', 'ৌ' ],
+ [ '\\]', 'ো' ],
+ [ 'A', 'অ' ],
+ [ 'a', 'া' ],
+ [ 'S', 'ষ' ],
+ [ 's', 'স' ],
+ [ 'D', 'ঢ' ],
+ [ 'd', 'ড' ],
+ [ 'F', 'থ' ],
+ [ 'f', 'ত' ],
+ [ 'G', 'ঘ' ],
+ [ 'g', 'গ' ],
+ [ 'H', 'ঃ' ],
+ [ 'h', 'হ' ],
+ [ 'J', 'ঝ' ],
+ [ 'j', 'জ' ],
+ [ 'K', 'খ' ],
+ [ 'k', 'ক' ],
+ [ 'L', 'ং' ],
+ [ 'l', 'ল' ],
+ [ ':', ':' ],
+ [ ';', ';' ],
+ [ '"', '"' ],
+ [ '\'', '\'' ],
+ [ '\\|', '৺' ],
+ [ '\\\\', 'ৱ' ],
+ [ '\\~', '\u200c' ],
+ [ '\\`', '\u200d' ],
+ [ 'Z', 'য' ],
+ [ 'z', 'য়' ],
+ [ 'X', 'ঢ়' ],
+ [ 'x', 'শ' ],
+ [ 'C', 'ছ' ],
+ [ 'c', 'চ' ],
+ [ 'V', 'ঋ' ],
+ [ 'v', 'আ' ],
+ [ 'B', 'ভ' ],
+ [ 'b', 'ব' ],
+ [ 'N', 'ণ' ],
+ [ 'n', 'ন' ],
+ [ 'M', 'ঙ' ],
+ [ 'm', 'ম' ],
+ [ '\\<', 'ৃ' ],
+ [ ',', ',' ],
+ [ '\\>', 'ঁ' ],
+ [ '\\.', '।' ],
+ [ '\\?', '?' ],
+ [ '/', '্' ]
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/as/as-transliteration.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/as/as-transliteration.js
index 379005a5..93221dc7 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/as/as-transliteration.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/as/as-transliteration.js
@@ -13,101 +13,101 @@
contextLength: 8,
maxKeyLength: 0,
patterns: [
- ['([ক-হড়-য়ৰৱ])(্ড়্ড়্i|্q)', '$1ৃ'], // <consonant>RRi or <consonant>q
+ [ '([ক-হড়-য়ৰৱ])(্ড়্ড়্i|্q)', '$1ৃ' ], // <consonant>RRi or <consonant>q
- ['(ড়্ড়্i|q)', 'ঋ'], // RRi or q
+ [ '(ড়্ড়্i|q)', 'ঋ' ], // RRi or q
- ['([ক-হড়-য়ৰৱ])্o', '$1'], // <consonant>o
- ['([ক-হড়-য়ৰৱ])্a', '$1া'], // <consonant>a
- ['([ক-হড়-য়ৰৱ])্i', '$1ি'], // <consonant>i
- ['([ক-হড়-য়ৰৱ])(িi|্I)', '$1ী'], // <consonant>ii or <consonant>I
- ['([ক-হড়-য়ৰৱ])্u', '$1ু'], // <consonant>u
- ['([ক-হড়-য়ৰৱ])(ুu|্U)', '$1ূ'], // <consonant>uu or <consonant>U
+ [ '([ক-হড়-য়ৰৱ])্o', '$1' ], // <consonant>o
+ [ '([ক-হড়-য়ৰৱ])্a', '$1া' ], // <consonant>a
+ [ '([ক-হড়-য়ৰৱ])্i', '$1ি' ], // <consonant>i
+ [ '([ক-হড়-য়ৰৱ])(িi|্I)', '$1ী' ], // <consonant>ii or <consonant>I
+ [ '([ক-হড়-য়ৰৱ])্u', '$1ু' ], // <consonant>u
+ [ '([ক-হড়-য়ৰৱ])(ুu|্U)', '$1ূ' ], // <consonant>uu or <consonant>U
- ['([ক-হড়-য়ৰৱ])্e', '$1ে'], // <consonant>e
- ['([ক-হড়-য়ৰৱ])i', '$1ৈ'], // <consonant>oi
- ['([ক-হড়-য়ৰৱ])্O', '$1ো'], // <consonant>O
- ['([ক-হড়-য়ৰৱ])u', '$1ৌ'], // <consonant>ou
+ [ '([ক-হড়-য়ৰৱ])্e', '$1ে' ], // <consonant>e
+ [ '([ক-হড়-য়ৰৱ])i', '$1ৈ' ], // <consonant>oi
+ [ '([ক-হড়-য়ৰৱ])্O', '$1ো' ], // <consonant>O
+ [ '([ক-হড়-য়ৰৱ])u', '$1ৌ' ], // <consonant>ou
- ['(খ্y|c)', 'ক্ষ্'], // khy or c
+ [ '(খ্y|c)', 'ক্ষ্' ], // khy or c
- ['ইi', 'ঈ'], // ii
- ['উu', 'ঊ'], // uu
- ['অi', 'ঐ'], // oi
- ['অu', 'ঔ'], // ou
- ['ত্~', 'ৎ'], // t~
+ [ 'ইi', 'ঈ' ], // ii
+ [ 'উu', 'ঊ' ], // uu
+ [ 'অi', 'ঐ' ], // oi
+ [ 'অu', 'ঔ' ], // ou
+ [ 'ত্~', 'ৎ' ], // t~
- ['ক্h', 'খ্'], // kh
- ['গ্h', 'ঘ্'], // gh
- ['ন্g', 'ঙ্'], // ng
- ['জ্h', 'ঝ্'], // jh
- ['(ন্~|Y)', 'ঞ্'], // n~ or Y
- ['ট্h', 'ঠ্'], // Th
- ['ড্h', 'ঢ্'], // Dh
- ['ত্h', 'থ্'], // th
- ['দ্h', 'ধ্'], // dh
- ['(প্h|f)', 'ফ্'], // ph or f
- ['(ব্h|v)', 'ভ্'], // bh or v
- ['শ্h', 'ষ্'], // Xh
- ['ড়্h', 'ঢ়্'], // Rh
+ [ 'ক্h', 'খ্' ], // kh
+ [ 'গ্h', 'ঘ্' ], // gh
+ [ 'ন্g', 'ঙ্' ], // ng
+ [ 'জ্h', 'ঝ্' ], // jh
+ [ '(ন্~|Y)', 'ঞ্' ], // n~ or Y
+ [ 'ট্h', 'ঠ্' ], // Th
+ [ 'ড্h', 'ঢ্' ], // Dh
+ [ 'ত্h', 'থ্' ], // th
+ [ 'দ্h', 'ধ্' ], // dh
+ [ '(প্h|f)', 'ফ্' ], // ph or f
+ [ '(ব্h|v)', 'ভ্' ], // bh or v
+ [ 'শ্h', 'ষ্' ], // Xh
+ [ 'ড়্h', 'ঢ়্' ], // Rh
- ['(M|ন্G)', 'ং'], // M or nG
+ [ '(M|ন্G)', 'ং' ], // M or nG
- ['o', 'অ'],
- ['a', 'আ'],
- ['i', 'ই'],
- ['I', 'ঈ'],
- ['u', 'উ'],
- ['U', 'ঊ'],
- ['e', 'এ'],
- ['O', 'ও'],
+ [ 'o', 'অ' ],
+ [ 'a', 'আ' ],
+ [ 'i', 'ই' ],
+ [ 'I', 'ঈ' ],
+ [ 'u', 'উ' ],
+ [ 'U', 'ঊ' ],
+ [ 'e', 'এ' ],
+ [ 'O', 'ও' ],
- ['H', 'ঃ'],
- ['\\^', 'ঁ'],
- ['ণ্~', 'ঁ'], // N~
- ['C', '৺'],
+ [ 'H', 'ঃ' ],
+ [ '\\^', 'ঁ' ],
+ [ 'ণ্~', 'ঁ' ], // N~
+ [ 'C', '৺' ],
- ['k', 'ক্'],
- ['g', 'গ্'],
- ['s', 'চ্'],
- ['S', 'ছ্'],
- ['j', 'জ্'],
- ['T', 'ট্'],
- ['D', 'ড্'],
- ['N', 'ণ্'],
- ['t', 'ত্'],
- ['d', 'দ্'],
- ['n', 'ন্'],
- ['p', 'প্'],
- ['b', 'ব্'],
- ['m', 'ম্'],
- ['z', 'য্'],
- ['r', 'ৰ্'],
- ['l', 'ল্'],
- ['w', 'ৱ্'],
- ['X', 'শ্'],
- ['x', 'স্'],
- ['h', 'হ্'],
- ['R', 'ড়্'],
- ['y', 'য়্'],
+ [ 'k', 'ক্' ],
+ [ 'g', 'গ্' ],
+ [ 's', 'চ্' ],
+ [ 'S', 'ছ্' ],
+ [ 'j', 'জ্' ],
+ [ 'T', 'ট্' ],
+ [ 'D', 'ড্' ],
+ [ 'N', 'ণ্' ],
+ [ 't', 'ত্' ],
+ [ 'd', 'দ্' ],
+ [ 'n', 'ন্' ],
+ [ 'p', 'প্' ],
+ [ 'b', 'ব্' ],
+ [ 'm', 'ম্' ],
+ [ 'z', 'য্' ],
+ [ 'r', 'ৰ্' ],
+ [ 'l', 'ল্' ],
+ [ 'w', 'ৱ্' ],
+ [ 'X', 'শ্' ],
+ [ 'x', 'স্' ],
+ [ 'h', 'হ্' ],
+ [ 'R', 'ড়্' ],
+ [ 'y', 'য়্' ],
- ['\\\\\\.', '.'],
- ['।\\.', '॥'],
- ['\\.', '।'],
+ [ '\\\\\\.', '.' ],
+ [ '।\\.', '॥' ],
+ [ '\\.', '।' ],
- ['0', '০'],
- ['1', '১'],
- ['2', '২'],
- ['3', '৩'],
- ['4', '৪'],
- ['5', '৫'],
- ['6', '৬'],
- ['7', '৭'],
- ['8', '৮'],
- ['9', '৯'],
+ [ '0', '০' ],
+ [ '1', '১' ],
+ [ '2', '২' ],
+ [ '3', '৩' ],
+ [ '4', '৪' ],
+ [ '5', '৫' ],
+ [ '6', '৬' ],
+ [ '7', '৭' ],
+ [ '8', '৮' ],
+ [ '9', '৯' ],
- ['(\u200C)*_', '\u200C'],
- ['(\u200D)*`', '\u200D']]
+ [ '(\u200C)*_', '\u200C' ],
+ [ '(\u200D)*`', '\u200D' ] ]
};
$.ime.register( asTransliteration );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/azb/azb-kbd.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/azb/azb-kbd.js
index edd9251c..c90fe071 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/azb/azb-kbd.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/azb/azb-kbd.js
@@ -11,96 +11,96 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['`', '\u200d'],
- ['1', '۱'],
- ['2', '۲'],
- ['3', '۳'],
- ['4', '۴'],
- ['5', '۵'],
- ['6', '۶'],
- ['7', '۷'],
- ['8', '۸'],
- ['9', '۹'],
- ['0', '۰'],
+ [ '`', '\u200d' ],
+ [ '1', '۱' ],
+ [ '2', '۲' ],
+ [ '3', '۳' ],
+ [ '4', '۴' ],
+ [ '5', '۵' ],
+ [ '6', '۶' ],
+ [ '7', '۷' ],
+ [ '8', '۸' ],
+ [ '9', '۹' ],
+ [ '0', '۰' ],
- ['q', 'ض'],
- ['w', 'ص'],
- ['e', 'ث'],
- ['r', 'ق'],
- ['t', 'ف'],
- ['y', 'غ'],
- ['u', 'ع'],
- ['i', 'ه'],
- ['o', 'خ'],
- ['p', 'ح'],
- ['\\[', 'ج'],
- ['\\]', 'چ'],
+ [ 'q', 'ض' ],
+ [ 'w', 'ص' ],
+ [ 'e', 'ث' ],
+ [ 'r', 'ق' ],
+ [ 't', 'ف' ],
+ [ 'y', 'غ' ],
+ [ 'u', 'ع' ],
+ [ 'i', 'ه' ],
+ [ 'o', 'خ' ],
+ [ 'p', 'ح' ],
+ [ '\\[', 'ج' ],
+ [ '\\]', 'چ' ],
- ['a', 'ش'],
- ['s', 'س'],
- ['d', 'ی'],
- ['f', 'ب'],
- ['g', 'ل'],
- ['h', 'ا'],
- ['j', 'ت'],
- ['k', 'ن'],
- ['l', 'م'],
- [';', 'ک'],
- ['\'', 'گ'],
+ [ 'a', 'ش' ],
+ [ 's', 'س' ],
+ [ 'd', 'ی' ],
+ [ 'f', 'ب' ],
+ [ 'g', 'ل' ],
+ [ 'h', 'ا' ],
+ [ 'j', 'ت' ],
+ [ 'k', 'ن' ],
+ [ 'l', 'م' ],
+ [ ';', 'ک' ],
+ [ '\'', 'گ' ],
- ['z', 'ظ'],
- ['x', 'ط'],
- ['c', 'ز'],
- ['v', 'ر'],
- ['b', 'ذ'],
- ['n', 'د'],
- ['m', 'پ'],
- [',', 'و'],
+ [ 'z', 'ظ' ],
+ [ 'x', 'ط' ],
+ [ 'c', 'ز' ],
+ [ 'v', 'ر' ],
+ [ 'b', 'ذ' ],
+ [ 'n', 'د' ],
+ [ 'm', 'پ' ],
+ [ ',', 'و' ],
- ['~', '\u200c'],
- ['@', '٬'],
- ['#', '٫'],
- ['%', '٪'],
- ['\\^', '×'],
- ['&', '،'],
- ['\\(', ')'],
- ['\\)', '('],
- ['_', 'ـ'],
+ [ '~', '\u200c' ],
+ [ '@', '٬' ],
+ [ '#', '٫' ],
+ [ '%', '٪' ],
+ [ '\\^', '×' ],
+ [ '&', '،' ],
+ [ '\\(', ')' ],
+ [ '\\)', '(' ],
+ [ '_', 'ـ' ],
- ['Q', 'ۇ'],
- ['W', 'ۆ'],
- ['E', 'وْ'],
- ['R', 'ً'],
- ['T', 'ُ'],
- ['Y', 'ِ'],
- ['U', 'َ'],
- ['I', 'ّ'],
- ['O', ']'],
- ['P', '['],
- ['\\{', '}'],
- ['\\}', '{'],
+ [ 'Q', 'ۇ' ],
+ [ 'W', 'ۆ' ],
+ [ 'E', 'وْ' ],
+ [ 'R', 'ً' ],
+ [ 'T', 'ُ' ],
+ [ 'Y', 'ِ' ],
+ [ 'U', 'َ' ],
+ [ 'I', 'ّ' ],
+ [ 'O', ']' ],
+ [ 'P', '[' ],
+ [ '\\{', '}' ],
+ [ '\\}', '{' ],
- ['A', 'ؤ'],
- ['S', 'ئ'],
- ['D', 'ؽ'],
- ['F', 'إ'],
- ['G', 'أ'],
- ['H', 'آ'],
- ['J', 'ة'],
- ['K', '»'],
- ['L', '«'],
- ['"', '؛'],
+ [ 'A', 'ؤ' ],
+ [ 'S', 'ئ' ],
+ [ 'D', 'ؽ' ],
+ [ 'F', 'إ' ],
+ [ 'G', 'أ' ],
+ [ 'H', 'آ' ],
+ [ 'J', 'ة' ],
+ [ 'K', '»' ],
+ [ 'L', '«' ],
+ [ '"', '؛' ],
- ['Z', 'ك'],
- ['X', 'ط'],
- ['C', 'ژ'],
- ['V', 'ٰ'],
- ['B', 'ڭ'],
- ['N', 'ٔ'],
- ['M', 'ء'],
- ['<', '>'],
- ['>', '<'],
- ['\\?', '؟']
+ [ 'Z', 'ك' ],
+ [ 'X', 'ط' ],
+ [ 'C', 'ژ' ],
+ [ 'V', 'ٰ' ],
+ [ 'B', 'ڭ' ],
+ [ 'N', 'ٔ' ],
+ [ 'M', 'ء' ],
+ [ '<', '>' ],
+ [ '>', '<' ],
+ [ '\\?', '؟' ]
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/be/be-kbd.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/be/be-kbd.js
index d3d4abe7..a0f1954b 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/be/be-kbd.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/be/be-kbd.js
@@ -11,88 +11,88 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['\\`', 'ё'],
- ['q', 'й'],
- ['w', 'ц'],
- ['e', 'у'],
- ['r', 'к'],
- ['t', 'е'],
- ['y', 'н'],
- ['u', 'г'],
- ['i', 'ш'],
- ['o', 'ў'],
- ['p', 'з'],
- ['\\[', 'х'],
- ['\\]', '\''],
- ['a', 'ф'],
- ['s', 'ы'],
- ['d', 'в'],
- ['f', 'а'],
- ['g', 'п'],
- ['h', 'р'],
- ['j', 'о'],
- ['k', 'л'],
- ['l', 'д'],
- [';', 'ж'],
- ['\'', 'э'],
- ['\\\\', '\\'],
- ['z', 'я'],
- ['x', 'ч'],
- ['c', 'с'],
- ['v', 'м'],
- ['b', 'і'],
- ['n', 'т'],
- ['m', 'ь'],
- [',', 'б'],
- ['\\.', 'ю'],
- ['/', '.'],
- ['\\!', '!'],
- ['\\@', '\"'],
- ['\\#', '№'],
- ['\\$', ';'],
- ['\\%', '%'],
- ['\\^', ':'],
- ['\\&', '?'],
- ['\\*', '*'],
- ['\\(', '('],
- ['\\)', ')'],
- ['\\_', '_'],
- ['\\+', '+'],
- ['\\~', 'Ё'],
- ['Q', 'Й'],
- ['W', 'Ц'],
- ['E', 'У'],
- ['R', 'К'],
- ['T', 'Е'],
- ['Y', 'Н'],
- ['U', 'Г'],
- ['I', 'Ш'],
- ['O', 'Ў'],
- ['P', 'З'],
- ['\\{', 'Х'],
- ['\\}', '\''],
- ['A', 'Ф'],
- ['S', 'Ы'],
- ['D', 'В'],
- ['F', 'А'],
- ['G', 'П'],
- ['H', 'Р'],
- ['J', 'О'],
- ['K', 'Л'],
- ['L', 'Д'],
- [':', 'Ж'],
- ['\"', 'Э'],
- ['\\|', '|'],
- ['Z', 'Я'],
- ['X', 'Ч'],
- ['C', 'С'],
- ['V', 'М'],
- ['B', 'І'],
- ['N', 'Т'],
- ['M', 'Ь'],
- ['\\<', 'Б'],
- ['\\>', 'Ю'],
- ['\\?', ',']
+ [ '\\`', 'ё' ],
+ [ 'q', 'й' ],
+ [ 'w', 'ц' ],
+ [ 'e', 'у' ],
+ [ 'r', 'к' ],
+ [ 't', 'е' ],
+ [ 'y', 'н' ],
+ [ 'u', 'г' ],
+ [ 'i', 'ш' ],
+ [ 'o', 'ў' ],
+ [ 'p', 'з' ],
+ [ '\\[', 'х' ],
+ [ '\\]', '\'' ],
+ [ 'a', 'ф' ],
+ [ 's', 'ы' ],
+ [ 'd', 'в' ],
+ [ 'f', 'а' ],
+ [ 'g', 'п' ],
+ [ 'h', 'р' ],
+ [ 'j', 'о' ],
+ [ 'k', 'л' ],
+ [ 'l', 'д' ],
+ [ ';', 'ж' ],
+ [ '\'', 'э' ],
+ [ '\\\\', '\\' ],
+ [ 'z', 'я' ],
+ [ 'x', 'ч' ],
+ [ 'c', 'с' ],
+ [ 'v', 'м' ],
+ [ 'b', 'і' ],
+ [ 'n', 'т' ],
+ [ 'm', 'ь' ],
+ [ ',', 'б' ],
+ [ '\\.', 'ю' ],
+ [ '/', '.' ],
+ [ '\\!', '!' ],
+ [ '\\@', '\"' ],
+ [ '\\#', '№' ],
+ [ '\\$', ';' ],
+ [ '\\%', '%' ],
+ [ '\\^', ':' ],
+ [ '\\&', '?' ],
+ [ '\\*', '*' ],
+ [ '\\(', '(' ],
+ [ '\\)', ')' ],
+ [ '\\_', '_' ],
+ [ '\\+', '+' ],
+ [ '\\~', 'Ё' ],
+ [ 'Q', 'Й' ],
+ [ 'W', 'Ц' ],
+ [ 'E', 'У' ],
+ [ 'R', 'К' ],
+ [ 'T', 'Е' ],
+ [ 'Y', 'Н' ],
+ [ 'U', 'Г' ],
+ [ 'I', 'Ш' ],
+ [ 'O', 'Ў' ],
+ [ 'P', 'З' ],
+ [ '\\{', 'Х' ],
+ [ '\\}', '\'' ],
+ [ 'A', 'Ф' ],
+ [ 'S', 'Ы' ],
+ [ 'D', 'В' ],
+ [ 'F', 'А' ],
+ [ 'G', 'П' ],
+ [ 'H', 'Р' ],
+ [ 'J', 'О' ],
+ [ 'K', 'Л' ],
+ [ 'L', 'Д' ],
+ [ ':', 'Ж' ],
+ [ '\"', 'Э' ],
+ [ '\\|', '|' ],
+ [ 'Z', 'Я' ],
+ [ 'X', 'Ч' ],
+ [ 'C', 'С' ],
+ [ 'V', 'М' ],
+ [ 'B', 'І' ],
+ [ 'N', 'Т' ],
+ [ 'M', 'Ь' ],
+ [ '\\<', 'Б' ],
+ [ '\\>', 'Ю' ],
+ [ '\\?', ',' ]
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/be/be-transliteration.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/be/be-transliteration.js
index c8d29de1..046b4c2d 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/be/be-transliteration.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/be/be-transliteration.js
@@ -11,83 +11,83 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['~', 'Ё'],
- ['Q', 'Й'],
- ['W', 'Ц'],
- ['E', 'У'],
- ['R', 'К'],
- ['T', 'Е'],
- ['Y', 'Н'],
- ['U', 'Г'],
- ['I', 'Ш'],
- ['O', 'Ў'],
- ['P', 'З'],
- ['\\{', 'Х'],
- ['\\}', '\''],
- ['A', 'Ф'],
- ['S', 'Ы'],
- ['D', 'В'],
- ['F', 'А'],
- ['G', 'П'],
- ['H', 'Р'],
- ['J', 'О'],
- ['K', 'Л'],
- ['L', 'Д'],
- [':', 'Ж'],
- ['"', 'Э'],
- ['Z', 'Я'],
- ['X', 'Ч'],
- ['C', 'С'],
- ['V', 'М'],
- ['B', 'І'],
- ['N', 'Т'],
- ['M', 'Ь'],
- ['<', 'Б'],
- ['>', 'Ю'],
- ['\\?', ','],
+ [ '~', 'Ё' ],
+ [ 'Q', 'Й' ],
+ [ 'W', 'Ц' ],
+ [ 'E', 'У' ],
+ [ 'R', 'К' ],
+ [ 'T', 'Е' ],
+ [ 'Y', 'Н' ],
+ [ 'U', 'Г' ],
+ [ 'I', 'Ш' ],
+ [ 'O', 'Ў' ],
+ [ 'P', 'З' ],
+ [ '\\{', 'Х' ],
+ [ '\\}', '\'' ],
+ [ 'A', 'Ф' ],
+ [ 'S', 'Ы' ],
+ [ 'D', 'В' ],
+ [ 'F', 'А' ],
+ [ 'G', 'П' ],
+ [ 'H', 'Р' ],
+ [ 'J', 'О' ],
+ [ 'K', 'Л' ],
+ [ 'L', 'Д' ],
+ [ ':', 'Ж' ],
+ [ '"', 'Э' ],
+ [ 'Z', 'Я' ],
+ [ 'X', 'Ч' ],
+ [ 'C', 'С' ],
+ [ 'V', 'М' ],
+ [ 'B', 'І' ],
+ [ 'N', 'Т' ],
+ [ 'M', 'Ь' ],
+ [ '<', 'Б' ],
+ [ '>', 'Ю' ],
+ [ '\\?', ',' ],
- ['`', 'ё'],
- ['q', 'й'],
- ['w', 'ц'],
- ['e', 'у'],
- ['r', 'к'],
- ['t', 'е'],
- ['y', 'н'],
- ['u', 'г'],
- ['i', 'ш'],
- ['o', 'ў'],
- ['p', 'з'],
- ['\\[', 'х'],
- ['\\]', '\''],
- ['a', 'ф'],
- ['s', 'ы'],
- ['d', 'в'],
- ['f', 'а'],
- ['g', 'п'],
- ['h', 'р'],
- ['j', 'о'],
- ['k', 'л'],
- ['l', 'д'],
- [';', 'ж'],
- ['\'', 'э'],
- ['z', 'я'],
- ['x', 'ч'],
- ['c', 'с'],
- ['v', 'м'],
- ['b', 'і'],
- ['n', 'т'],
- ['m', 'ь'],
- [',', 'б'],
- ['\\.', 'ю'],
- ['/', '.'],
+ [ '`', 'ё' ],
+ [ 'q', 'й' ],
+ [ 'w', 'ц' ],
+ [ 'e', 'у' ],
+ [ 'r', 'к' ],
+ [ 't', 'е' ],
+ [ 'y', 'н' ],
+ [ 'u', 'г' ],
+ [ 'i', 'ш' ],
+ [ 'o', 'ў' ],
+ [ 'p', 'з' ],
+ [ '\\[', 'х' ],
+ [ '\\]', '\'' ],
+ [ 'a', 'ф' ],
+ [ 's', 'ы' ],
+ [ 'd', 'в' ],
+ [ 'f', 'а' ],
+ [ 'g', 'п' ],
+ [ 'h', 'р' ],
+ [ 'j', 'о' ],
+ [ 'k', 'л' ],
+ [ 'l', 'д' ],
+ [ ';', 'ж' ],
+ [ '\'', 'э' ],
+ [ 'z', 'я' ],
+ [ 'x', 'ч' ],
+ [ 'c', 'с' ],
+ [ 'v', 'м' ],
+ [ 'b', 'і' ],
+ [ 'n', 'т' ],
+ [ 'm', 'ь' ],
+ [ ',', 'б' ],
+ [ '\\.', 'ю' ],
+ [ '/', '.' ],
- ['@', '"'], // 2
- ['#', '№'], // 3
- ['\\$', ';'], // 4
+ [ '@', '"' ], // 2
+ [ '#', '№' ], // 3
+ [ '\\$', ';' ], // 4
// '%' is the same // 5
- ['^', ':'], // 6
- ['&', '?']] // 7
- // '*', '(' and ')' are the same // 8, 9, 0
+ [ '^', ':' ], // 6
+ [ '&', '?' ] ] // 7
+ // '*', '(' and ')' are the same // 8, 9, 0
};
$.ime.register( beTransliteration );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ber/ber-tfng.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ber/ber-tfng.js
index 1da69eda..470b6965 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ber/ber-tfng.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ber/ber-tfng.js
@@ -13,42 +13,42 @@
contextLength: 0,
maxKeyLength: 0,
patterns: [
- ['a', 'ⴰ'],
- ['b', 'ⴱ'],
- ['c', 'ⵛ'],
- ['d', 'ⴷ'],
- ['D', 'ⴹ'],
- ['e', 'ⴻ'],
- ['f', 'ⴼ'],
- ['F', 'ⴼⵯ'],
- ['g', 'ⴳ'],
- ['G', 'ⴳⵯ'],
- ['h', 'ⵀ'],
- ['i', 'ⵉ'],
- ['j', 'ⵊ'],
- ['k', 'ⴽ'],
- ['K', 'ⴽⵯ'],
- ['l', 'ⵍ'],
- ['m', 'ⵎ'],
- ['n', 'ⵏ'],
- ['o', 'ⵄ'],
- ['p', 'ⵃ'],
- ['q', 'ⵇ'],
- ['Q', 'ⵈ'],
- ['r', 'ⵔ'],
- ['R', 'ⵕ'],
- ['s', 'ⵙ'],
- ['S', 'ⵚ'],
- ['t', 'ⵜ'],
- ['T', 'ⵟ'],
- ['v', 'ⵖ'],
- ['u', 'ⵓ'],
- ['w', 'ⵡ'],
- ['y', 'ⵢ'],
- ['x', 'ⵅ'],
- ['z', 'ⵣ'],
- ['Z', 'ⵥ']]
- };
+ [ 'a', 'ⴰ' ],
+ [ 'b', 'ⴱ' ],
+ [ 'c', 'ⵛ' ],
+ [ 'd', 'ⴷ' ],
+ [ 'D', 'ⴹ' ],
+ [ 'e', 'ⴻ' ],
+ [ 'f', 'ⴼ' ],
+ [ 'F', 'ⴼⵯ' ],
+ [ 'g', 'ⴳ' ],
+ [ 'G', 'ⴳⵯ' ],
+ [ 'h', 'ⵀ' ],
+ [ 'i', 'ⵉ' ],
+ [ 'j', 'ⵊ' ],
+ [ 'k', 'ⴽ' ],
+ [ 'K', 'ⴽⵯ' ],
+ [ 'l', 'ⵍ' ],
+ [ 'm', 'ⵎ' ],
+ [ 'n', 'ⵏ' ],
+ [ 'o', 'ⵄ' ],
+ [ 'p', 'ⵃ' ],
+ [ 'q', 'ⵇ' ],
+ [ 'Q', 'ⵈ' ],
+ [ 'r', 'ⵔ' ],
+ [ 'R', 'ⵕ' ],
+ [ 's', 'ⵙ' ],
+ [ 'S', 'ⵚ' ],
+ [ 't', 'ⵜ' ],
+ [ 'T', 'ⵟ' ],
+ [ 'v', 'ⵖ' ],
+ [ 'u', 'ⵓ' ],
+ [ 'w', 'ⵡ' ],
+ [ 'y', 'ⵢ' ],
+ [ 'x', 'ⵅ' ],
+ [ 'z', 'ⵣ' ],
+ [ 'Z', 'ⵥ' ] ]
+ };
$.ime.register( berTfng );
}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bgn/bgn-kbd.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bgn/bgn-kbd.js
index 82e8f469..e599a319 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bgn/bgn-kbd.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bgn/bgn-kbd.js
@@ -11,96 +11,96 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['`', '\u200c'],
- ['1', '۱'],
- ['2', '۲'],
- ['3', '۳'],
- ['4', '۴'],
- ['5', '۵'],
- ['6', '۶'],
- ['7', '۷'],
- ['8', '۸'],
- ['9', '۹'],
- ['0', '۰'],
+ [ '`', '\u200c' ],
+ [ '1', '۱' ],
+ [ '2', '۲' ],
+ [ '3', '۳' ],
+ [ '4', '۴' ],
+ [ '5', '۵' ],
+ [ '6', '۶' ],
+ [ '7', '۷' ],
+ [ '8', '۸' ],
+ [ '9', '۹' ],
+ [ '0', '۰' ],
- ['q', 'ض'],
- ['w', 'ص'],
- ['e', 'ث'],
- ['r', 'ق'],
- ['t', 'ف'],
- ['y', 'غ'],
- ['u', 'ع'],
- ['i', 'ه'],
- ['o', 'خ'],
- ['p', 'ح'],
- ['\\[', 'ج'],
- ['\\]', 'چ'],
+ [ 'q', 'ض' ],
+ [ 'w', 'ص' ],
+ [ 'e', 'ث' ],
+ [ 'r', 'ق' ],
+ [ 't', 'ف' ],
+ [ 'y', 'غ' ],
+ [ 'u', 'ع' ],
+ [ 'i', 'ه' ],
+ [ 'o', 'خ' ],
+ [ 'p', 'ح' ],
+ [ '\\[', 'ج' ],
+ [ '\\]', 'چ' ],
- ['a', 'ش'],
- ['s', 'س'],
- ['d', 'ی'],
- ['f', 'ب'],
- ['g', 'ل'],
- ['h', 'ا'],
- ['j', 'ت'],
- ['k', 'ن'],
- ['l', 'م'],
- [';', 'ک'],
- ['\'', 'گ'],
+ [ 'a', 'ش' ],
+ [ 's', 'س' ],
+ [ 'd', 'ی' ],
+ [ 'f', 'ب' ],
+ [ 'g', 'ل' ],
+ [ 'h', 'ا' ],
+ [ 'j', 'ت' ],
+ [ 'k', 'ن' ],
+ [ 'l', 'م' ],
+ [ ';', 'ک' ],
+ [ '\'', 'گ' ],
- ['z', 'ظ'],
- ['x', 'ط'],
- ['c', 'ز'],
- ['v', 'ر'],
- ['b', 'ڈ'],
- ['n', 'د'],
- ['m', 'پ'],
- [',', 'و'],
+ [ 'z', 'ظ' ],
+ [ 'x', 'ط' ],
+ [ 'c', 'ز' ],
+ [ 'v', 'ر' ],
+ [ 'b', 'ڈ' ],
+ [ 'n', 'د' ],
+ [ 'm', 'پ' ],
+ [ ',', 'و' ],
- ['~', '÷'],
- ['@', '٬'],
- ['#', '٫'],
- ['%', '٪'],
- ['\\^', '×'],
- ['&', '،'],
- ['\\(', ')'],
- ['\\)', '('],
- ['_', 'ـ'],
+ [ '~', '÷' ],
+ [ '@', '٬' ],
+ [ '#', '٫' ],
+ [ '%', '٪' ],
+ [ '\\^', '×' ],
+ [ '&', '،' ],
+ [ '\\(', ')' ],
+ [ '\\)', '(' ],
+ [ '_', 'ـ' ],
- ['Q', 'ْ'],
- ['W', 'ٌ'],
- ['E', 'ٍ'],
- ['R', 'ً'],
- ['T', 'ُ'],
- ['Y', 'ِ'],
- ['U', 'َ'],
- ['I', 'ّ'],
- ['O', ']'],
- ['P', '['],
- ['\\{', '}'],
- ['\\}', '{'],
+ [ 'Q', 'ْ' ],
+ [ 'W', 'ٌ' ],
+ [ 'E', 'ٍ' ],
+ [ 'R', 'ً' ],
+ [ 'T', 'ُ' ],
+ [ 'Y', 'ِ' ],
+ [ 'U', 'َ' ],
+ [ 'I', 'ّ' ],
+ [ 'O', ']' ],
+ [ 'P', '[' ],
+ [ '\\{', '}' ],
+ [ '\\}', '{' ],
- ['A', 'ؤ'],
- ['S', 'ئ'],
- ['D', 'ي'],
- ['F', 'إ'],
- ['G', 'أ'],
- ['H', 'آ'],
- ['J', 'ٹ'],
- ['K', '»'],
- ['L', '«'],
- ['"', '؛'],
+ [ 'A', 'ؤ' ],
+ [ 'S', 'ئ' ],
+ [ 'D', 'ي' ],
+ [ 'F', 'إ' ],
+ [ 'G', 'أ' ],
+ [ 'H', 'آ' ],
+ [ 'J', 'ٹ' ],
+ [ 'K', '»' ],
+ [ 'L', '«' ],
+ [ '"', '؛' ],
- ['Z', 'ێ'],
- ['X', 'ط'],
- ['C', 'ژ'],
- ['V', 'ڑ'],
- ['B', 'ۆ'],
- ['N', 'ٔ'],
- ['M', 'ء'],
- ['<', '>'],
- ['>', '<'],
- ['\\?', '؟']
+ [ 'Z', 'ێ' ],
+ [ 'X', 'ط' ],
+ [ 'C', 'ژ' ],
+ [ 'V', 'ڑ' ],
+ [ 'B', 'ۆ' ],
+ [ 'N', 'ٔ' ],
+ [ 'M', 'ء' ],
+ [ '<', '>' ],
+ [ '>', '<' ],
+ [ '\\?', '؟' ]
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bn/bn-avro.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bn/bn-avro.js
index af16cd21..03cb8432 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bn/bn-avro.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bn/bn-avro.js
@@ -13,181 +13,181 @@
contextLength: 4,
maxKeyLength: 5,
patterns: [
- ['([ক-হড়ঢ়য়])্?ররi','[^o`]', '$1ৃ'],
- ['ররi','[^o`]', 'ঋ'],
- ['ঙহo', 'ঙ্ঘ'],
- ['([ক-হড়ঢ়য়])াZ', '[^o`]', '$1্যা'],
- ['(([ক-হড়ঢ়য়])|য়)o','[^o`]', '$1'], // য় cannot be included in the range, why? everywhere else it is OK!
- ['([ক-হড়ঢ়য়])a','[^o`]', '$1া'],
- ['([ক-হড়ঢ়য়])i','[^o`]', '$1ি'],
- ['([ক-হড়ঢ়য়])(I|েe)','[^o`]', '$1ী'],
- ['([ক-হড়ঢ়য়])u','[^o`]', '$1ু'],
- ['([ক-হড়ঢ়য়])U','[^o`]', '$1ূ'],
- ['([ক-হড়ঢ়য়])o','[o`]', '$1ু'],
- ['([ক-হড়ঢ়য়])e','[^o`]', '$1ে'],
- ['([ক-হড়ঢ়য়])োI','[^o`]', '$1ৈ'],
- ['([ক-হড়ঢ়য়])O','[^o`]', '$1ো'],
- ['([ক-হড়ঢ়য়])োU','[^o`]', '$1ৌ'],
-
- ['([ক-হড়ঢ়য়][িুেো]|[এইওউ])a','[^o`]', '$1য়া'],
- ['([ক-হড়ঢ়য়][াে]|[আএ])o', '[^o`]', '$1ও'],
-
- ['([কঙলষস])(k|K)','[^o`]','$1্ক'],
- ['([ঙদল])(g|G)','[^o`]','$1্গ'],
- ['গg','[^o`]','জ্ঞ'],
- ['([চশ])c','[^o`]','$1্চ'],
- ['([জঞব])j','[^o`]','$1্জ'],
- ['নj','[^o`]','ঞ্জ'],
- ['([কটণনপলষস])T','[^o`]','$1্ট'],
- ['([ডণনল])D','[^o`]','$1্ড'],
- ['([গষহ])N','[^o`]','$1্ণ'],
- ['([কতনপশসহ])t','[^o`]','$1্ত'],
- ['([দনব])d','[^o`]','$1্দ'],
- ['([গঘণতধনপমশসহ])n','[^o`]','$1্ন'],
- ['([পমলষস])p','[^o`]','$1্প'],
- ['([স])f', '[^o`]', '$1্ফ'],
- ['([বমল])b','[^o`]','$1্ব'],
- ['([দম])(v|V)','[^o`]','$1্ভ'],
- ['([কগঙটণতদধনমলশষসহ])m','[^o`]','$1্ম'],
- ['([ক-ঘচ-ঝট-যলশ-হড়ঢ়য়])r','[^o`]','$1্র'],
- ['([কগপ-বমলশসহ])l','[^o`]','$1্ল'],
- ['([কনপ])s','[^o`]','$1্স'],
- ['([ক-হড়ঢ়য়])w','[^o`]','$1্ব'],
- ['([ক-হড়ঢ়য়])y','[^o`]','$1্য'],
- ['নc','[^o`]','ঞ্চ'],
-
- ['ত`','`', 'ৎ'],
-
- ['ক্ক(h|H)','[^o`]','ক্ষ'],
- ['কশ(h|H)','[^o`]','ক্ষ'],
-
- ['ররk','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্ক'],
- ['ররg','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্গ'],
- ['ররc','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্চ'],
- ['ররj','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্জ'],
- ['ররT','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্ট'],
- ['ররD','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্ড'],
- ['ররN','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্ণ'],
- ['ররt','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্ত'],
- ['ররd','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্দ'],
- ['ররn','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্ন'],
- ['ররp','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্প'],
- ['ররf','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্ফ'],
- ['ররb','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্ব'],
- ['ররv','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্ভ'],
- ['ররm','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্ম'],
- ['ররz','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্য'],
- ['ররl','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্ল'],
- ['ররS','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্শ'],
- ['ররs','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্স'],
- ['ররh','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্হ'],
- ['ররR','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্ড়'],
- ['রর(y|Y)','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্য়'],
-
- ['ংo', 'ঙ্গ'],
- ['ংi', 'ঙ্গি'],
- ['ংI', 'ঙ্গী'],
- ['(ংu|ঙ্গo)', 'ঙ্গু'],
- ['ংU', 'ঙ্গূ'],
- ['ং', 'ঙ্গি'],
- ['ং', 'ঙ্গি'],
-
- ['শ(h|H)','S', 'ষ'],
-
- ['অo','[^`]', 'উ'],
- ['এe','[^o`]', 'ঈ'],
-
- ['ক(h|H)','[^o`]', 'খ'],
- ['গ(h|H)','[^o`]', 'ঘ'],
- ['ণg','[^o`]', 'ঙ'],
- ['চ(h|H)','[^o`]', 'ছ'],
- ['জ(h|H)','[^o`]', 'ঝ'],
- ['ণG','[^o`]', 'ঞ'],
- ['ট(h|H)','[^o`]', 'ঠ'],
- ['ড(h|H)','[^o`]', 'ঢ'],
- ['ত(h|H)','[^o`]', 'থ'],
- ['দ(h|H)','[^o`]', 'ধ'],
- ['প(h|H)','[^o`]', 'ফ'],
- ['ব(h|H)','[^o`]', 'ভ'],
- ['(স(h|H))','[^o`]', 'শ'],
- ['ড়(h|H)','[^o`]', 'ঢ়'],
- ['ত্`','[^o`]', 'ৎ'],
- ['নg','[^o`]', 'ং'],
- ['ঃ`','[^o`]', ':'],
- ['ররi','[^o`]', 'ঋ'],
- ['ওI','[^o`]', 'ঐ'],
- ['ওU','[^o`]', 'ঔ'],
-
- ['আ`', 'া'],
- ['ই`', 'ি'],
- ['ঈ`', 'ী'],
- ['উ`', 'ু'],
- ['ঊ`', 'ূ'],
- ['এ`', 'ে'],
- ['আ`', 'া'],
- ['আ`', 'া'],
- ['আ`', 'া'],
- ['আ`', 'া'],
- ['আ`', 'া'],
- ['আ`', 'া'],
-
- ['([kKqQ])', 'ক'],
- ['(g|G)', 'গ'],
- ['(c|C)', 'চ'],
- ['(j|J)', 'জ'],
- ['T', 'ট'],
- ['D', 'ড'],
- ['N', 'ণ'],
- ['t', 'ত'],
- ['d', 'দ'],
- ['n', 'ন'],
- ['(p|P)', 'প'],
- ['f', 'ফ'],
- ['(b|B)', 'ব'],
- ['(v|V)', 'ভ'],
- ['(m|M)', 'ম'],
- ['z', 'য'],
- ['r', 'র'],
- ['(l|L)', 'ল'],
- ['S', 'শ'],
- ['s', 'স'],
- ['(h|H)', 'হ'],
- ['R', 'ড়'],
- ['w', 'ও'],
- ['x', 'ক্স'],
- ['(y|Y)', 'য়'],
-
- ['Z', '্য'],
-
- ['o', 'অ'],
- ['(a|A)', 'আ'],
- ['i', 'ই'],
- ['I', 'ঈ'],
- ['u', 'উ'],
- ['U', 'ঊ'],
- ['(e|E)', 'এ'],
- ['O', 'ও'],
-
- ['0', '০'],
- ['1', '১'],
- ['2', '২'],
- ['3', '৩'],
- ['4', '৪'],
- ['5', '৫'],
- ['6', '৬'],
- ['7', '৭'],
- ['8', '৮'],
- ['9', '৯'],
-
- ['\\\\\\.', '.'],
-
- [',,', '্'],
- ['\\:', 'ঃ'],
- ['\\^', 'ঁ'],
- ['\\.', '।'],
- ['\\$', '৳'],
- ['ঃ`', ':'],
- ['`', '']]
+ [ '([ক-হড়ঢ়য়])্?ররi','[^o`]', '$1ৃ' ],
+ [ 'ররi','[^o`]', 'ঋ' ],
+ [ 'ঙহo', 'ঙ্ঘ' ],
+ [ '([ক-হড়ঢ়য়])াZ', '[^o`]', '$1্যা' ],
+ [ '(([ক-হড়ঢ়য়])|য়)o','[^o`]', '$1' ], // য় cannot be included in the range, why? everywhere else it is OK!
+ [ '([ক-হড়ঢ়য়])a','[^o`]', '$1া' ],
+ [ '([ক-হড়ঢ়য়])i','[^o`]', '$1ি' ],
+ [ '([ক-হড়ঢ়য়])(I|েe)','[^o`]', '$1ী' ],
+ [ '([ক-হড়ঢ়য়])u','[^o`]', '$1ু' ],
+ [ '([ক-হড়ঢ়য়])U','[^o`]', '$1ূ' ],
+ [ '([ক-হড়ঢ়য়])o','[o`]', '$1ু' ],
+ [ '([ক-হড়ঢ়য়])e','[^o`]', '$1ে' ],
+ [ '([ক-হড়ঢ়য়])োI','[^o`]', '$1ৈ' ],
+ [ '([ক-হড়ঢ়য়])O','[^o`]', '$1ো' ],
+ [ '([ক-হড়ঢ়য়])োU','[^o`]', '$1ৌ' ],
+
+ [ '([ক-হড়ঢ়য়][িুেো]|[এইওউ])a','[^o`]', '$1য়া' ],
+ [ '([ক-হড়ঢ়য়][াে]|[আএ])o', '[^o`]', '$1ও' ],
+
+ [ '([কঙলষস])(k|K)','[^o`]','$1্ক' ],
+ [ '([ঙদল])(g|G)','[^o`]','$1্গ' ],
+ [ 'গg','[^o`]','জ্ঞ' ],
+ [ '([চশ])c','[^o`]','$1্চ' ],
+ [ '([জঞব])j','[^o`]','$1্জ' ],
+ [ 'নj','[^o`]','ঞ্জ' ],
+ [ '([কটণনপলষস])T','[^o`]','$1্ট' ],
+ [ '([ডণনল])D','[^o`]','$1্ড' ],
+ [ '([গষহ])N','[^o`]','$1্ণ' ],
+ [ '([কতনপশসহ])t','[^o`]','$1্ত' ],
+ [ '([দনব])d','[^o`]','$1্দ' ],
+ [ '([গঘণতধনপমশসহ])n','[^o`]','$1্ন' ],
+ [ '([পমলষস])p','[^o`]','$1্প' ],
+ [ '([স])f', '[^o`]', '$1্ফ' ],
+ [ '([বমল])b','[^o`]','$1্ব' ],
+ [ '([দম])(v|V)','[^o`]','$1্ভ' ],
+ [ '([কগঙটণতদধনমলশষসহ])m','[^o`]','$1্ম' ],
+ [ '([ক-ঘচ-ঝট-যলশ-হড়ঢ়য়])r','[^o`]','$1্র' ],
+ [ '([কগপ-বমলশসহ])l','[^o`]','$1্ল' ],
+ [ '([কনপ])s','[^o`]','$1্স' ],
+ [ '([ক-হড়ঢ়য়])w','[^o`]','$1্ব' ],
+ [ '([ক-হড়ঢ়য়])y','[^o`]','$1্য' ],
+ [ 'নc','[^o`]','ঞ্চ' ],
+
+ [ 'ত`','`', 'ৎ' ],
+
+ [ 'ক্ক(h|H)','[^o`]','ক্ষ' ],
+ [ 'কশ(h|H)','[^o`]','ক্ষ' ],
+
+ [ 'ররk','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্ক' ],
+ [ 'ররg','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্গ' ],
+ [ 'ররc','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্চ' ],
+ [ 'ররj','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্জ' ],
+ [ 'ররT','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্ট' ],
+ [ 'ররD','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্ড' ],
+ [ 'ররN','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্ণ' ],
+ [ 'ররt','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্ত' ],
+ [ 'ররd','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্দ' ],
+ [ 'ররn','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্ন' ],
+ [ 'ররp','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্প' ],
+ [ 'ররf','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্ফ' ],
+ [ 'ররb','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্ব' ],
+ [ 'ররv','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্ভ' ],
+ [ 'ররm','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্ম' ],
+ [ 'ররz','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্য' ],
+ [ 'ররl','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্ল' ],
+ [ 'ররS','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্শ' ],
+ [ 'ররs','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্স' ],
+ [ 'ররh','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্হ' ],
+ [ 'ররR','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্ড়' ],
+ [ 'রর(y|Y)','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্য়' ],
+
+ [ 'ংo', 'ঙ্গ' ],
+ [ 'ংi', 'ঙ্গি' ],
+ [ 'ংI', 'ঙ্গী' ],
+ [ '(ংu|ঙ্গo)', 'ঙ্গু' ],
+ [ 'ংU', 'ঙ্গূ' ],
+ [ 'ং', 'ঙ্গি' ],
+ [ 'ং', 'ঙ্গি' ],
+
+ [ 'শ(h|H)','S', 'ষ' ],
+
+ [ 'অo','[^`]', 'উ' ],
+ [ 'এe','[^o`]', 'ঈ' ],
+
+ [ 'ক(h|H)','[^o`]', 'খ' ],
+ [ 'গ(h|H)','[^o`]', 'ঘ' ],
+ [ 'ণg','[^o`]', 'ঙ' ],
+ [ 'চ(h|H)','[^o`]', 'ছ' ],
+ [ 'জ(h|H)','[^o`]', 'ঝ' ],
+ [ 'ণG','[^o`]', 'ঞ' ],
+ [ 'ট(h|H)','[^o`]', 'ঠ' ],
+ [ 'ড(h|H)','[^o`]', 'ঢ' ],
+ [ 'ত(h|H)','[^o`]', 'থ' ],
+ [ 'দ(h|H)','[^o`]', 'ধ' ],
+ [ 'প(h|H)','[^o`]', 'ফ' ],
+ [ 'ব(h|H)','[^o`]', 'ভ' ],
+ [ '(স(h|H))','[^o`]', 'শ' ],
+ [ 'ড়(h|H)','[^o`]', 'ঢ়' ],
+ [ 'ত্`','[^o`]', 'ৎ' ],
+ [ 'নg','[^o`]', 'ং' ],
+ [ 'ঃ`','[^o`]', ':' ],
+ [ 'ররi','[^o`]', 'ঋ' ],
+ [ 'ওI','[^o`]', 'ঐ' ],
+ [ 'ওU','[^o`]', 'ঔ' ],
+
+ [ 'আ`', 'া' ],
+ [ 'ই`', 'ি' ],
+ [ 'ঈ`', 'ী' ],
+ [ 'উ`', 'ু' ],
+ [ 'ঊ`', 'ূ' ],
+ [ 'এ`', 'ে' ],
+ [ 'আ`', 'া' ],
+ [ 'আ`', 'া' ],
+ [ 'আ`', 'া' ],
+ [ 'আ`', 'া' ],
+ [ 'আ`', 'া' ],
+ [ 'আ`', 'া' ],
+
+ [ '([kKqQ])', 'ক' ],
+ [ '(g|G)', 'গ' ],
+ [ '(c|C)', 'চ' ],
+ [ '(j|J)', 'জ' ],
+ [ 'T', 'ট' ],
+ [ 'D', 'ড' ],
+ [ 'N', 'ণ' ],
+ [ 't', 'ত' ],
+ [ 'd', 'দ' ],
+ [ 'n', 'ন' ],
+ [ '(p|P)', 'প' ],
+ [ 'f', 'ফ' ],
+ [ '(b|B)', 'ব' ],
+ [ '(v|V)', 'ভ' ],
+ [ '(m|M)', 'ম' ],
+ [ 'z', 'য' ],
+ [ 'r', 'র' ],
+ [ '(l|L)', 'ল' ],
+ [ 'S', 'শ' ],
+ [ 's', 'স' ],
+ [ '(h|H)', 'হ' ],
+ [ 'R', 'ড়' ],
+ [ 'w', 'ও' ],
+ [ 'x', 'ক্স' ],
+ [ '(y|Y)', 'য়' ],
+
+ [ 'Z', '্য' ],
+
+ [ 'o', 'অ' ],
+ [ '(a|A)', 'আ' ],
+ [ 'i', 'ই' ],
+ [ 'I', 'ঈ' ],
+ [ 'u', 'উ' ],
+ [ 'U', 'ঊ' ],
+ [ '(e|E)', 'এ' ],
+ [ 'O', 'ও' ],
+
+ [ '0', '০' ],
+ [ '1', '১' ],
+ [ '2', '২' ],
+ [ '3', '৩' ],
+ [ '4', '৪' ],
+ [ '5', '৫' ],
+ [ '6', '৬' ],
+ [ '7', '৭' ],
+ [ '8', '৮' ],
+ [ '9', '৯' ],
+
+ [ '\\\\\\.', '.' ],
+
+ [ ',,', '্' ],
+ [ '\\:', 'ঃ' ],
+ [ '\\^', 'ঁ' ],
+ [ '\\.', '।' ],
+ [ '\\$', '৳' ],
+ [ 'ঃ`', ':' ],
+ [ '`', '' ] ]
};
$.ime.register( bnAvro );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bn/bn-inscript.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bn/bn-inscript.js
index f26a97a0..3470a325 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bn/bn-inscript.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bn/bn-inscript.js
@@ -13,110 +13,110 @@
contextLength: 0,
maxKeyLength: 0,
patterns: [
- ['X', 'ঁ'],
- ['x', 'ং'],
- ['_', 'ঃ'],
- ['D', 'অ'],
- ['E', 'আ'],
- ['F', 'ই'],
- ['R', 'ঈ'],
- ['G', 'উ'],
- ['T', 'ঊ'],
- ['\\+', 'ঋ'],
- ['S', 'এ'],
- ['W', 'ঐ'],
- ['A', 'ও'],
- ['Q', 'ঔ'],
- ['k', 'ক'],
- ['K', 'খ'],
- ['i', 'গ'],
- ['I', 'ঘ'],
- ['U', 'ঙ'],
- [';', 'চ'],
- ['\\:', 'ছ'],
- ['p', 'জ'],
- ['P', 'ঝ'],
- ['\\}', 'ঞ'],
- ['\'', 'ট'],
- ['\"', 'ঠ'],
- ['\\[', 'ড'],
- ['\\{', 'ঢ'],
- ['C', 'ণ'],
- ['l', 'ত'],
- ['L', 'থ'],
- ['o', 'দ'],
- ['O', 'ধ'],
- ['v', 'ন'],
- ['h', 'প'],
- ['H', 'ফ'],
- ['y', 'ব'],
- ['Y', 'ভ'],
- ['c', 'ম'],
- ['\\?', 'য'],
- ['j', 'র'],
- ['J', 'ৎ'],
- ['n', 'ল'],
- ['M', 'শ'],
- ['\\<', 'ষ'],
- ['m', 'স'],
- ['u', 'হ'],
- ['\\]', '়'],
- ['e', 'া'],
- ['f', 'ি'],
- ['r', 'ী'],
- ['g', 'ু'],
- ['t', 'ূ'],
- ['\\=', 'ৃ'],
- ['s', 'ে'],
- ['w', 'ৈ'],
- ['a', 'ো'],
- ['q', 'ৌ'],
- ['d', '্'],
- ['/', 'য়'],
- ['\\>', '৤'],
- ['0', '০'],
- ['1', '১'],
- ['2', '২'],
- ['3', '৩'],
- ['4', '৪'],
- ['5', '৫'],
- ['6', '৬'],
- ['7', '৭'],
- ['8', '৮'],
- ['9', '৯'],
- ['z', 'ʼ'],
- ['\\!', 'অ্যা'],
- ['\\#', '্র'],
- ['\\$', 'র্'],
- ['\\%', 'জ্ঞ'],
- ['\\^', 'ত্র'],
- ['\\&', 'ক্ষ'],
- ['\\*', 'শ্র'],
- ['\\(', '\u200D'],
- ['\\)', '\u200C']],
+ [ 'X', 'ঁ' ],
+ [ 'x', 'ং' ],
+ [ '_', 'ঃ' ],
+ [ 'D', 'অ' ],
+ [ 'E', 'আ' ],
+ [ 'F', 'ই' ],
+ [ 'R', 'ঈ' ],
+ [ 'G', 'উ' ],
+ [ 'T', 'ঊ' ],
+ [ '\\+', 'ঋ' ],
+ [ 'S', 'এ' ],
+ [ 'W', 'ঐ' ],
+ [ 'A', 'ও' ],
+ [ 'Q', 'ঔ' ],
+ [ 'k', 'ক' ],
+ [ 'K', 'খ' ],
+ [ 'i', 'গ' ],
+ [ 'I', 'ঘ' ],
+ [ 'U', 'ঙ' ],
+ [ ';', 'চ' ],
+ [ '\\:', 'ছ' ],
+ [ 'p', 'জ' ],
+ [ 'P', 'ঝ' ],
+ [ '\\}', 'ঞ' ],
+ [ '\'', 'ট' ],
+ [ '\"', 'ঠ' ],
+ [ '\\[', 'ড' ],
+ [ '\\{', 'ঢ' ],
+ [ 'C', 'ণ' ],
+ [ 'l', 'ত' ],
+ [ 'L', 'থ' ],
+ [ 'o', 'দ' ],
+ [ 'O', 'ধ' ],
+ [ 'v', 'ন' ],
+ [ 'h', 'প' ],
+ [ 'H', 'ফ' ],
+ [ 'y', 'ব' ],
+ [ 'Y', 'ভ' ],
+ [ 'c', 'ম' ],
+ [ '\\?', 'য' ],
+ [ 'j', 'র' ],
+ [ 'J', 'ৎ' ],
+ [ 'n', 'ল' ],
+ [ 'M', 'শ' ],
+ [ '\\<', 'ষ' ],
+ [ 'm', 'স' ],
+ [ 'u', 'হ' ],
+ [ '\\]', '়' ],
+ [ 'e', 'া' ],
+ [ 'f', 'ি' ],
+ [ 'r', 'ী' ],
+ [ 'g', 'ু' ],
+ [ 't', 'ূ' ],
+ [ '\\=', 'ৃ' ],
+ [ 's', 'ে' ],
+ [ 'w', 'ৈ' ],
+ [ 'a', 'ো' ],
+ [ 'q', 'ৌ' ],
+ [ 'd', '্' ],
+ [ '/', 'য়' ],
+ [ '\\>', '৤' ],
+ [ '0', '০' ],
+ [ '1', '১' ],
+ [ '2', '২' ],
+ [ '3', '৩' ],
+ [ '4', '৪' ],
+ [ '5', '৫' ],
+ [ '6', '৬' ],
+ [ '7', '৭' ],
+ [ '8', '৮' ],
+ [ '9', '৯' ],
+ [ 'z', 'ʼ' ],
+ [ '\\!', 'অ্যা' ],
+ [ '\\#', '্র' ],
+ [ '\\$', 'র্' ],
+ [ '\\%', 'জ্ঞ' ],
+ [ '\\^', 'ত্র' ],
+ [ '\\&', 'ক্ষ' ],
+ [ '\\*', 'শ্র' ],
+ [ '\\(', '\u200D' ],
+ [ '\\)', '\u200C' ] ],
patterns_x: [
- ['F', 'ঌ'],
- ['\\>', 'ঽ'],
- ['\\=', 'ৠ'],
- ['l', 'ৎ'],
- ['\\[', 'ড়'],
- ['\\{', 'ঢ়'],
- ['\\+', 'ৠ'],
- ['R', 'ৡ'],
- ['f', 'ৢ'],
- ['r', 'ৣ'],
- ['\\.', '৥'],
- ['x', '৺'],
- ['\\<', '৲'],
- [',', '৳'],
- ['\\!', '৴'],
- ['\\@', '৵'],
- ['\\#', '৶'],
- ['\\$', '৷'],
- ['\\%', '৸'],
- ['\\^', '৹'],
- ['\\?', '৻'],
- ['4', '₹']]
+ [ 'F', 'ঌ' ],
+ [ '\\>', 'ঽ' ],
+ [ '\\=', 'ৠ' ],
+ [ 'l', 'ৎ' ],
+ [ '\\[', 'ড়' ],
+ [ '\\{', 'ঢ়' ],
+ [ '\\+', 'ৠ' ],
+ [ 'R', 'ৡ' ],
+ [ 'f', 'ৢ' ],
+ [ 'r', 'ৣ' ],
+ [ '\\.', '৥' ],
+ [ 'x', '৺' ],
+ [ '\\<', '৲' ],
+ [ ',', '৳' ],
+ [ '\\!', '৴' ],
+ [ '\\@', '৵' ],
+ [ '\\#', '৶' ],
+ [ '\\$', '৷' ],
+ [ '\\%', '৸' ],
+ [ '\\^', '৹' ],
+ [ '\\?', '৻' ],
+ [ '4', '₹' ] ]
};
$.ime.register( bnInScript );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bn/bn-inscript2.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bn/bn-inscript2.js
index 3ea9e284..6099842e 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bn/bn-inscript2.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bn/bn-inscript2.js
@@ -11,116 +11,116 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['\\!', 'অ্যা'],
- ['1', '১'],
- ['2', '২'],
- ['\\#', '্র'],
- ['3', '৩'],
- ['\\$', 'র্'],
- ['4', '৪'],
- ['\\%', 'জ্ঞ'],
- ['5', '৫'],
- ['\\^', 'ত্র'],
- ['6', '৬'],
- ['\\&', 'ক্ষ'],
- ['7', '৭'],
- ['\\*', 'শ্র'],
- ['8', '৮'],
- ['9', '৯'],
- ['\\(', '('],
- ['\\)', ')'],
- ['0', '০'],
- ['\"', 'ঠ'],
- ['\'', 'ট'],
- [',', ','],
- ['-', '-'],
- ['\\.', '.'],
- ['/', 'য়'],
- [':', 'ছ'],
- [';', 'চ'],
- ['\\<', 'ষ'],
- ['\\=', 'ৃ'],
- ['\\+', 'ঋ'],
- ['\\>', '।'],
- ['\\?', 'য'],
- ['A', 'ও'],
- ['C', 'ণ'],
- ['D', 'অ'],
- ['E', 'আ'],
- ['F', 'ই'],
- ['G', 'উ'],
- ['H', 'ফ'],
- ['I', 'ঘ'],
- ['K', 'খ'],
- ['L', 'থ'],
- ['M', 'শ'],
- ['O', 'ধ'],
- ['P', 'ঝ'],
- ['Q', 'ঔ'],
- ['R', 'ঈ'],
- ['S', 'এ'],
- ['T', 'ঊ'],
- ['U', 'ঙ'],
- ['W', 'ঐ'],
- ['X', 'ঁ'],
- ['Y', 'ভ'],
- ['\\{', 'ঢ'],
- ['\\[', 'ড'],
- ['\\}', 'ঞ'],
- ['\\]', '়'],
- ['\\_', 'ঃ'],
- ['a', 'ো'],
- ['c', 'ম'],
- ['d', '্'],
- ['e', 'া'],
- ['f', 'ি'],
- ['g', 'ু'],
- ['h', 'প'],
- ['i', 'গ'],
- ['j', 'র'],
- ['k', 'ক'],
- ['l', 'ত'],
- ['m', 'স'],
- ['n', 'ল'],
- ['o', 'দ'],
- ['p', 'জ'],
- ['q', 'ৌ'],
- ['r', 'ী'],
- ['s', 'ে'],
- ['t', 'ূ'],
- ['u', 'হ'],
- ['v', 'ন'],
- ['w', 'ৈ'],
- ['x', 'ং'],
- ['y', 'ব'],
- ['z', 'ʼ']
+ [ '\\!', 'অ্যা' ],
+ [ '1', '১' ],
+ [ '2', '২' ],
+ [ '\\#', '্র' ],
+ [ '3', '৩' ],
+ [ '\\$', 'র্' ],
+ [ '4', '৪' ],
+ [ '\\%', 'জ্ঞ' ],
+ [ '5', '৫' ],
+ [ '\\^', 'ত্র' ],
+ [ '6', '৬' ],
+ [ '\\&', 'ক্ষ' ],
+ [ '7', '৭' ],
+ [ '\\*', 'শ্র' ],
+ [ '8', '৮' ],
+ [ '9', '৯' ],
+ [ '\\(', '(' ],
+ [ '\\)', ')' ],
+ [ '0', '০' ],
+ [ '\"', 'ঠ' ],
+ [ '\'', 'ট' ],
+ [ ',', ',' ],
+ [ '-', '-' ],
+ [ '\\.', '.' ],
+ [ '/', 'য়' ],
+ [ ':', 'ছ' ],
+ [ ';', 'চ' ],
+ [ '\\<', 'ষ' ],
+ [ '\\=', 'ৃ' ],
+ [ '\\+', 'ঋ' ],
+ [ '\\>', '।' ],
+ [ '\\?', 'য' ],
+ [ 'A', 'ও' ],
+ [ 'C', 'ণ' ],
+ [ 'D', 'অ' ],
+ [ 'E', 'আ' ],
+ [ 'F', 'ই' ],
+ [ 'G', 'উ' ],
+ [ 'H', 'ফ' ],
+ [ 'I', 'ঘ' ],
+ [ 'K', 'খ' ],
+ [ 'L', 'থ' ],
+ [ 'M', 'শ' ],
+ [ 'O', 'ধ' ],
+ [ 'P', 'ঝ' ],
+ [ 'Q', 'ঔ' ],
+ [ 'R', 'ঈ' ],
+ [ 'S', 'এ' ],
+ [ 'T', 'ঊ' ],
+ [ 'U', 'ঙ' ],
+ [ 'W', 'ঐ' ],
+ [ 'X', 'ঁ' ],
+ [ 'Y', 'ভ' ],
+ [ '\\{', 'ঢ' ],
+ [ '\\[', 'ড' ],
+ [ '\\}', 'ঞ' ],
+ [ '\\]', '়' ],
+ [ '\\_', 'ঃ' ],
+ [ 'a', 'ো' ],
+ [ 'c', 'ম' ],
+ [ 'd', '্' ],
+ [ 'e', 'া' ],
+ [ 'f', 'ি' ],
+ [ 'g', 'ু' ],
+ [ 'h', 'প' ],
+ [ 'i', 'গ' ],
+ [ 'j', 'র' ],
+ [ 'k', 'ক' ],
+ [ 'l', 'ত' ],
+ [ 'm', 'স' ],
+ [ 'n', 'ল' ],
+ [ 'o', 'দ' ],
+ [ 'p', 'জ' ],
+ [ 'q', 'ৌ' ],
+ [ 'r', 'ী' ],
+ [ 's', 'ে' ],
+ [ 't', 'ূ' ],
+ [ 'u', 'হ' ],
+ [ 'v', 'ন' ],
+ [ 'w', 'ৈ' ],
+ [ 'x', 'ং' ],
+ [ 'y', 'ব' ],
+ [ 'z', 'ʼ' ]
],
patterns_x: [
- ['\\!', '৴'],
- ['1', '\u200d'],
- ['\\@', '৵'],
- ['2', '\u200c'],
- ['\\#', '৶'],
- ['\\$', '৷'],
- ['4', '₹'],
- ['\\%', '৸'],
- ['\\^', '৹'],
- [',', '৳'],
- ['\\.', '॥'],
- ['/', '্য'],
- ['\\<', '৲'],
- ['\\=', 'ৄ'],
- ['\\+', 'ৠ'],
- ['\\>', 'ঽ'],
- ['\\?', '৻'],
- ['F', 'ঌ'],
- ['R', 'ৡ'],
- ['\\{', 'ঢ়'],
- ['\\[', 'ড়'],
- ['f', 'ৢ'],
- ['l', 'ৎ'],
- ['r', 'ৣ'],
- ['x', '৺']
+ [ '\\!', '৴' ],
+ [ '1', '\u200d' ],
+ [ '\\@', '৵' ],
+ [ '2', '\u200c' ],
+ [ '\\#', '৶' ],
+ [ '\\$', '৷' ],
+ [ '4', '₹' ],
+ [ '\\%', '৸' ],
+ [ '\\^', '৹' ],
+ [ ',', '৳' ],
+ [ '\\.', '॥' ],
+ [ '/', '্য' ],
+ [ '\\<', '৲' ],
+ [ '\\=', 'ৄ' ],
+ [ '\\+', 'ৠ' ],
+ [ '\\>', 'ঽ' ],
+ [ '\\?', '৻' ],
+ [ 'F', 'ঌ' ],
+ [ 'R', 'ৡ' ],
+ [ '\\{', 'ঢ়' ],
+ [ '\\[', 'ড়' ],
+ [ 'f', 'ৢ' ],
+ [ 'l', 'ৎ' ],
+ [ 'r', 'ৣ' ],
+ [ 'x', '৺' ]
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bn/bn-nkb.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bn/bn-nkb.js
index 7a35a214..9fcce54a 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bn/bn-nkb.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bn/bn-nkb.js
@@ -13,120 +13,120 @@
contextLength: 0,
maxKeyLength: 0,
patterns: [
- ['1', '১'],
- ['2', '২'],
- ['3', '৩'],
- ['4', '৪'],
- ['5', '৫'],
- ['6', '৬'],
- ['7', '৭'],
- ['8', '৮'],
- ['9', '৯'],
- ['0', '০'],
+ [ '1', '১' ],
+ [ '2', '২' ],
+ [ '3', '৩' ],
+ [ '4', '৪' ],
+ [ '5', '৫' ],
+ [ '6', '৬' ],
+ [ '7', '৭' ],
+ [ '8', '৮' ],
+ [ '9', '৯' ],
+ [ '0', '০' ],
- ['q', 'ঙ'],
- ['w', 'য'],
- ['e', 'ড'],
- ['r', 'প'],
- ['t', 'ট'],
- ['y', 'চ'],
- ['u', 'জ'],
- ['i', 'হ'],
- ['o', 'গ'],
- ['p', 'ড়'],
+ [ 'q', 'ঙ' ],
+ [ 'w', 'য' ],
+ [ 'e', 'ড' ],
+ [ 'r', 'প' ],
+ [ 't', 'ট' ],
+ [ 'y', 'চ' ],
+ [ 'u', 'জ' ],
+ [ 'i', 'হ' ],
+ [ 'o', 'গ' ],
+ [ 'p', 'ড়' ],
- ['a', 'ৃ'],
- ['s', 'ু'],
- ['d', 'ি'],
- ['f', 'ব'],
- ['g', '্'],
- ['h', 'া'],
- ['j', 'ক'],
- ['k', 'ত'],
- ['l', 'দ'],
+ [ 'a', 'ৃ' ],
+ [ 's', 'ু' ],
+ [ 'd', 'ি' ],
+ [ 'f', 'ব' ],
+ [ 'g', '্' ],
+ [ 'h', 'া' ],
+ [ 'j', 'ক' ],
+ [ 'k', 'ত' ],
+ [ 'l', 'দ' ],
- ['z', 'ঁ'],
- ['x', 'ো'],
- ['c', 'ে'],
- ['v', 'র'],
- ['b', 'ন'],
- ['n', 'স'],
- ['m', 'ম'],
+ [ 'z', 'ঁ' ],
+ [ 'x', 'ো' ],
+ [ 'c', 'ে' ],
+ [ 'v', 'র' ],
+ [ 'b', 'ন' ],
+ [ 'n', 'স' ],
+ [ 'm', 'ম' ],
- ['Q', 'ং'],
- ['W', 'য়'],
- ['E', 'ঢ'],
- ['R', 'ফ'],
- ['T', 'ঠ'],
- ['Y', 'ছ'],
- ['U', 'ঝ'],
- ['I', 'ঞ'],
- ['O', 'ঘ'],
- ['P', 'ঢ়'],
+ [ 'Q', 'ং' ],
+ [ 'W', 'য়' ],
+ [ 'E', 'ঢ' ],
+ [ 'R', 'ফ' ],
+ [ 'T', 'ঠ' ],
+ [ 'Y', 'ছ' ],
+ [ 'U', 'ঝ' ],
+ [ 'I', 'ঞ' ],
+ [ 'O', 'ঘ' ],
+ [ 'P', 'ঢ়' ],
- ['A', 'ৗ'],
- ['S', 'ূ'],
- ['D', 'ী'],
- ['F', 'ভ'],
- ['G', '।'],
- ['H', 'অ'],
- ['J', 'খ'],
- ['K', 'থ'],
- ['L', 'ধ'],
+ [ 'A', 'ৗ' ],
+ [ 'S', 'ূ' ],
+ [ 'D', 'ী' ],
+ [ 'F', 'ভ' ],
+ [ 'G', '।' ],
+ [ 'H', 'অ' ],
+ [ 'J', 'খ' ],
+ [ 'K', 'থ' ],
+ [ 'L', 'ধ' ],
- ['Z', 'ঃ'],
- ['X', 'ৌ'],
- ['C', 'ৈ'],
- ['V', 'ল'],
- ['B', 'ণ'],
- ['N', 'ষ'],
- ['M', 'শ']],
+ [ 'Z', 'ঃ' ],
+ [ 'X', 'ৌ' ],
+ [ 'C', 'ৈ' ],
+ [ 'V', 'ল' ],
+ [ 'B', 'ণ' ],
+ [ 'N', 'ষ' ],
+ [ 'M', 'শ' ] ],
patterns_x: [
- ['1', '৴'],
- ['2', '৵'],
- ['3', '৶'],
- ['4', '৳'],
- ['5', '৷'],
- ['6', '৸'],
- ['7', 'ं'],
- ['0', '৹'],
- ['\\-', '\u200C'],
- ['\\=', '\u200D'],
+ [ '1', '৴' ],
+ [ '2', '৵' ],
+ [ '3', '৶' ],
+ [ '4', '৳' ],
+ [ '5', '৷' ],
+ [ '6', '৸' ],
+ [ '7', 'ं' ],
+ [ '0', '৹' ],
+ [ '\\-', '\u200C' ],
+ [ '\\=', '\u200D' ],
- ['q', 'ৢ'],
- ['w', '্য'],
- ['e', 'ৄ'],
- ['i', 'ঽ'],
+ [ 'q', 'ৢ' ],
+ [ 'w', '্য' ],
+ [ 'e', 'ৄ' ],
+ [ 'i', 'ঽ' ],
- ['a', 'ঋ'],
- ['s', 'উ'],
- ['d', 'ই'],
- ['f', 'ৰ'],
- ['g', '॥'],
- ['h', 'আ'],
- ['j', '঱'],
- ['k', 'ঢ'],
- ['l', 'ঌ'],
+ [ 'a', 'ঋ' ],
+ [ 's', 'উ' ],
+ [ 'd', 'ই' ],
+ [ 'f', 'ৰ' ],
+ [ 'g', '॥' ],
+ [ 'h', 'আ' ],
+ [ 'j', '঱' ],
+ [ 'k', 'ঢ' ],
+ [ 'l', 'ঌ' ],
- ['z', '৺'],
- ['x', 'ও'],
- ['c', 'এ'],
- ['v', '্র'],
- ['\\.', '়'],
+ [ 'z', '৺' ],
+ [ 'x', 'ও' ],
+ [ 'c', 'এ' ],
+ [ 'v', '্র' ],
+ [ '\\.', '়' ],
- ['\\$', '৲'],
- ['\\^', '঳'],
+ [ '\\$', '৲' ],
+ [ '\\^', '঳' ],
- ['Q', 'ৣ'],
+ [ 'Q', 'ৣ' ],
- ['A', 'ৠ'],
- ['S', 'ঊ'],
- ['D', 'ঈ'],
- ['F', 'ৱ'],
- ['L', 'ৡ'],
+ [ 'A', 'ৠ' ],
+ [ 'S', 'ঊ' ],
+ [ 'D', 'ঈ' ],
+ [ 'F', 'ৱ' ],
+ [ 'L', 'ৡ' ],
- ['X', 'ঔ'],
- ['C', 'ঐ']]
+ [ 'X', 'ঔ' ],
+ [ 'C', 'ঐ' ] ]
};
$.ime.register( bnNkb );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bn/bn-probhat.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bn/bn-probhat.js
index eed5ac5d..c0f14a38 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bn/bn-probhat.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bn/bn-probhat.js
@@ -13,89 +13,89 @@
contextLength: 0,
maxKeyLength: 0,
patterns: [
- ['1', '১'],
- ['2', '২'],
- ['3', '৩'],
- ['4', '৪'],
- ['5', '৫'],
- ['6', '৬'],
- ['7', '৭'],
- ['8', '৮'],
- ['9', '৯'],
- ['0', '০'],
+ [ '1', '১' ],
+ [ '2', '২' ],
+ [ '3', '৩' ],
+ [ '4', '৪' ],
+ [ '5', '৫' ],
+ [ '6', '৬' ],
+ [ '7', '৭' ],
+ [ '8', '৮' ],
+ [ '9', '৯' ],
+ [ '0', '০' ],
- ['q', 'দ'],
- ['w', 'ূ'],
- ['e', 'ী'],
- ['r', 'র'],
- ['t', 'ট'],
- ['y', 'এ'],
- ['u', 'ু'],
- ['i', 'ি'],
- ['o', 'ও'],
- ['p', 'প'],
+ [ 'q', 'দ' ],
+ [ 'w', 'ূ' ],
+ [ 'e', 'ী' ],
+ [ 'r', 'র' ],
+ [ 't', 'ট' ],
+ [ 'y', 'এ' ],
+ [ 'u', 'ু' ],
+ [ 'i', 'ি' ],
+ [ 'o', 'ও' ],
+ [ 'p', 'প' ],
- ['a', 'া'],
- ['s', 'স'],
- ['d', 'ড'],
- ['f', 'ত'],
- ['g', 'গ'],
- ['h', 'হ'],
- ['j', 'জ'],
- ['k', 'ক'],
- ['l', 'ল'],
+ [ 'a', 'া' ],
+ [ 's', 'স' ],
+ [ 'd', 'ড' ],
+ [ 'f', 'ত' ],
+ [ 'g', 'গ' ],
+ [ 'h', 'হ' ],
+ [ 'j', 'জ' ],
+ [ 'k', 'ক' ],
+ [ 'l', 'ল' ],
- ['z', 'য়'],
- ['x', 'শ'],
- ['c', 'চ'],
- ['v', 'আ'],
- ['b', 'ব'],
- ['n', 'ন'],
- ['m', 'ম'],
+ [ 'z', 'য়' ],
+ [ 'x', 'শ' ],
+ [ 'c', 'চ' ],
+ [ 'v', 'আ' ],
+ [ 'b', 'ব' ],
+ [ 'n', 'ন' ],
+ [ 'm', 'ম' ],
- ['Q', 'ধ'],
- ['W', 'ঊ'],
- ['E', 'ঈ'],
- ['R', 'ড়'],
- ['T', 'ঠ'],
- ['Y', 'ঐ'],
- ['U', 'উ'],
- ['I', 'ই'],
- ['O', 'ঔ'],
- ['P', 'ফ'],
+ [ 'Q', 'ধ' ],
+ [ 'W', 'ঊ' ],
+ [ 'E', 'ঈ' ],
+ [ 'R', 'ড়' ],
+ [ 'T', 'ঠ' ],
+ [ 'Y', 'ঐ' ],
+ [ 'U', 'উ' ],
+ [ 'I', 'ই' ],
+ [ 'O', 'ঔ' ],
+ [ 'P', 'ফ' ],
- ['A', 'অ'],
- ['S', 'ষ'],
- ['D', 'ঢ'],
- ['F', 'থ'],
- ['G', 'ঘ'],
- ['H', 'ঃ'],
- ['J', 'ঝ'],
- ['K', 'খ'],
- ['L', 'ং'],
+ [ 'A', 'অ' ],
+ [ 'S', 'ষ' ],
+ [ 'D', 'ঢ' ],
+ [ 'F', 'থ' ],
+ [ 'G', 'ঘ' ],
+ [ 'H', 'ঃ' ],
+ [ 'J', 'ঝ' ],
+ [ 'K', 'খ' ],
+ [ 'L', 'ং' ],
- ['Z', 'য'],
- ['X', 'ঢ়'],
- ['C', 'ছ'],
- ['V', 'ঋ'],
- ['B', 'ভ'],
- ['N', 'ণ'],
- ['M', 'ঙ'],
+ [ 'Z', 'য' ],
+ [ 'X', 'ঢ়' ],
+ [ 'C', 'ছ' ],
+ [ 'V', 'ঋ' ],
+ [ 'B', 'ভ' ],
+ [ 'N', 'ণ' ],
+ [ 'M', 'ঙ' ],
- ['`', '\u200D'],
- ['\\$', '৳'],
- ['\\&', 'ঞ'],
- ['\\*', 'ৎ'],
- ['\\[', 'ে'],
- ['\\]', 'ো'],
- ['\\{', 'ৈ'],
- ['\\}', 'ৌ'],
- ['\\|', '॥'],
- ['\\.', '।'],
- ['/', '্'],
- ['<', 'ৃ'],
- ['>', 'ঁ'],
- ['\\\\', '\u200C']]
+ [ '`', '\u200D' ],
+ [ '\\$', '৳' ],
+ [ '\\&', 'ঞ' ],
+ [ '\\*', 'ৎ' ],
+ [ '\\[', 'ে' ],
+ [ '\\]', 'ো' ],
+ [ '\\{', 'ৈ' ],
+ [ '\\}', 'ৌ' ],
+ [ '\\|', '॥' ],
+ [ '\\.', '।' ],
+ [ '/', '্' ],
+ [ '<', 'ৃ' ],
+ [ '>', 'ঁ' ],
+ [ '\\\\', '\u200C' ] ]
};
$.ime.register( bnProbhat );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bo/bo-ewts.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bo/bo-ewts.js
index ad9f1f8e..584d1c3b 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bo/bo-ewts.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bo/bo-ewts.js
@@ -14,269 +14,270 @@
maxKeyLength: 5,
patterns: [
// ambiguous cases with b as prefix
- ['བྲk', 'r', 'བརྐ'],
- ['བྲg', 'r', 'བརྒ'],
- ['བྲl', 'r', 'བརླ'],
- ['བྲj', 'r', 'བརྗ'],
- ['བྲt', 'r', 'བརྟ'],
- ['བྲd', 'r', 'བརྡ'],
- ['བྲn', 'r', 'བརྣ '],
- ['བླt', 'l', 'བལྟ'],
- ['བླd', 'l', 'བལྡ'],
+ [ 'བྲk', 'r', 'བརྐ' ],
+ [ 'བྲg', 'r', 'བརྒ' ],
+ [ 'བྲl', 'r', 'བརླ' ],
+ [ 'བྲj', 'r', 'བརྗ' ],
+ [ 'བྲt', 'r', 'བརྟ' ],
+ [ 'བྲd', 'r', 'བརྡ' ],
+ [ 'བྲn', 'r', 'བརྣ' ],
+ [ 'བླt', 'l', 'བལྟ' ],
+ [ 'བླd', 'l', 'བལྡ' ],
// Standard Tibetan Stacks listed at <http://www.thlib.org/reference/transliteration/tibstacks.php>
// some are handled magically and don't need to appear here.
- ['རྐy', 'k', 'རྐྱ'],
- ['རྒy', 'g', 'རྒྱ'],
- ['རྨy', 'm', 'རྨྱ'],
- ['རྒw', 'g', 'རྒྭ'],
- ['རྩw', 's', 'རྩྭ'],
- ['སྐy', 'k', 'སྐྱ'],
- ['སྒy', 'g', 'སྒྱ'],
- ['སྤy', 'p', 'སྤྱ'],
- ['སྦy', 'b', 'སྦྱ'],
- ['སྨy', 'm', 'སྨྱ'],
- ['སྐr', 'k', 'སྐྲ'],
- ['སྒr', 'g', 'སྒྲ'],
- ['སྣr', 'n', 'སྣྲ'],
- ['སྤr', 'p', 'སྤྲ'],
- ['སྦr', 'b', 'སྦྲ'],
- ['སྨr', 'm', 'སྨྲ'],
- ['གྲw', 'r', 'གྲྭ'],
- ['དྲw', 'r', 'དྲྭ'],
- ['ཕྱw', 'y', 'ཕྱྭ'],
- ['རk', 'r', 'རྐ'],
- ['རg', 'r', 'རྒ'],
- ['རj', 'r', 'རྗ'],
- ['རt', 'r', 'རྟ'],
- ['རd', 'r', 'རྡ'],
- ['རn', 'r', 'རྣ '],
- ['རb', 'r', 'རྦ'],
- ['རm', 'r', 'རྨ'],
- ['ལk', 'l', 'ལྐ'],
- ['ལg', 'l', 'ལྒ'],
- ['ལc', 'l', 'ལྕ'],
- ['ལj', 'l', 'ལྗ'],
- ['ལt', 'l', 'ལྟ'],
- ['ལd', 'l', 'ལྡ'],
- ['ལp', 'l', 'ལྤ'],
- ['ལb', 'l', 'ལྦ'],
- ['ལh', 'l', 'ལྷ'],
- ['སk', 's', 'སྐ'],
- ['སg', 's', 'སྒ'],
- ['སt', 's', 'སྟ'],
- ['སd', 's', 'སྡ'],
- ['སn', 's', 'སྣ'],
- ['སp', 's', 'སྤ'],
- ['སb', 's', 'སྦ'],
- ['སm', 's', 'སྨ'],
- ['སྟs', 't', 'སྩ'],
- ['ཀw', 'k', 'ཀྭ'],
- ['ཁw', 'h', 'ཁྭ'],
- ['གw', 'g', 'གྭ'],
- ['ཅw', 'c', 'ཅྭ'],
- ['ཉw', 'y', 'ཉྭ'],
- ['ཏw', 't', 'ཏྭ'],
- ['དw', 'd', 'དྭ'],
- ['ཙw', 's', 'ཙྭ'],
- ['ཚw', 'h', 'ཚྭ'],
- ['ཞw', 'h', 'ཞྭ'],
- ['ཟw', 'z', 'ཟྭ'],
- ['རw', 'r', 'རྭ'],
- ['ཤw', 'h', 'ཤྭ'],
- ['སw', 's', 'སྭ'],
- ['ཧw', 'h', 'ཧྭ'],
- ['ཀy', 'k', 'ཀྱ'],
- ['ཁy', 'h', 'ཁྱ'],
- ['གy', 'g', 'གྱ'],
- ['པy', 'p', 'པྱ'],
- ['ཕy', 'h', 'ཕྱ'],
- ['བy', 'b', 'བྱ'],
- ['མy', 'm', 'མྱ'],
- ['ཀr', 'k', 'ཀྲ'],
- ['ཁr', 'h', 'ཁྲ'],
- ['གr', 'g', 'གྲ'],
- ['ཏr', 't', 'ཏྲ'],
- ['ཐr', 'h', 'ཐྲ'],
- ['དr', 'd', 'དྲ'],
- ['པr', 'p', 'པྲ'],
- ['ཕr', 'h', 'ཕྲ'],
- ['བr', 'b', 'བྲ'],
- ['མr', 'm', 'མྲ'],
- ['ཤr', 'h', 'ཤྲ'],
- ['སr', 's', 'སྲ'],
- ['ཧr', 'h', 'ཧྲ'],
- ['ཀl', 'k', 'ཀླ'],
- ['གl', 'g', 'གླ'],
- ['བl', 'b', 'བླ'],
- ['ཟl', 'z', 'ཟླ'],
- ['རl', 'r', 'རླ'],
- ['སl', 's', 'སླ'],
- ['ཨོM', 'o', 'ༀ'],
- ['\\.', ''],
- ['\\+', ''],
- ['-', ''],
- ['S', ''],
+ [ 'རྐy', 'k', 'རྐྱ' ],
+ [ 'རྒy', 'g', 'རྒྱ' ],
+ [ 'རྨy', 'm', 'རྨྱ' ],
+ [ 'རྒw', 'g', 'རྒྭ' ],
+ [ 'རྩw', 's', 'རྩྭ' ],
+ [ 'སྐy', 'k', 'སྐྱ' ],
+ [ 'སྒy', 'g', 'སྒྱ' ],
+ [ 'སྤy', 'p', 'སྤྱ' ],
+ [ 'སྦy', 'b', 'སྦྱ' ],
+ [ 'སྨy', 'm', 'སྨྱ' ],
+ [ 'སྐr', 'k', 'སྐྲ' ],
+ [ 'སྒr', 'g', 'སྒྲ' ],
+ [ 'སྣr', 'n', 'སྣྲ' ],
+ [ 'སྤr', 'p', 'སྤྲ' ],
+ [ 'སྦr', 'b', 'སྦྲ' ],
+ [ 'སྨr', 'm', 'སྨྲ' ],
+ [ 'གྲw', 'r', 'གྲྭ' ],
+ [ 'དྲw', 'r', 'དྲྭ' ],
+ [ 'ཕྱw', 'y', 'ཕྱྭ' ],
+ [ 'རk', 'r', 'རྐ' ],
+ [ 'རg', 'r', 'རྒ' ],
+ [ 'རj', 'r', 'རྗ' ],
+ [ 'རt', 'r', 'རྟ' ],
+ [ 'རd', 'r', 'རྡ' ],
+ [ 'རn', 'r', 'རྣ' ],
+ [ 'རb', 'r', 'རྦ' ],
+ [ 'རm', 'r', 'རྨ' ],
+ [ 'ལk', 'l', 'ལྐ' ],
+ [ 'ལg', 'l', 'ལྒ' ],
+ [ 'ལc', 'l', 'ལྕ' ],
+ [ 'ལj', 'l', 'ལྗ' ],
+ [ 'ལt', 'l', 'ལྟ' ],
+ [ 'ལd', 'l', 'ལྡ' ],
+ [ 'ལp', 'l', 'ལྤ' ],
+ [ 'ལb', 'l', 'ལྦ' ],
+ [ 'ལh', 'l', 'ལྷ' ],
+ [ 'སk', 's', 'སྐ' ],
+ [ 'སg', 's', 'སྒ' ],
+ [ 'སt', 's', 'སྟ' ],
+ [ 'སd', 's', 'སྡ' ],
+ [ 'སn', 's', 'སྣ' ],
+ [ 'སp', 's', 'སྤ' ],
+ [ 'སb', 's', 'སྦ' ],
+ [ 'སm', 's', 'སྨ' ],
+ [ 'སྟs', 't', 'སྩ' ],
+ [ 'ཀw', 'k', 'ཀྭ' ],
+ [ 'ཁw', 'h', 'ཁྭ' ],
+ [ 'གw', 'g', 'གྭ' ],
+ [ 'ཅw', 'c', 'ཅྭ' ],
+ [ 'ཉw', 'y', 'ཉྭ' ],
+ [ 'ཏw', 't', 'ཏྭ' ],
+ [ 'དw', 'd', 'དྭ' ],
+ [ 'ཙw', 's', 'ཙྭ' ],
+ [ 'ཚw', 'h', 'ཚྭ' ],
+ [ 'ཞw', 'h', 'ཞྭ' ],
+ [ 'ཟw', 'z', 'ཟྭ' ],
+ [ 'རw', 'r', 'རྭ' ],
+ [ 'ཤw', 'h', 'ཤྭ' ],
+ [ 'སw', 's', 'སྭ' ],
+ [ 'ཧw', 'h', 'ཧྭ' ],
+ [ 'ཀy', 'k', 'ཀྱ' ],
+ [ 'ཁy', 'h', 'ཁྱ' ],
+ [ 'གy', 'g', 'གྱ' ],
+ [ 'པy', 'p', 'པྱ' ],
+ [ 'ཕy', 'h', 'ཕྱ' ],
+ [ 'བy', 'b', 'བྱ' ],
+ [ 'མy', 'm', 'མྱ' ],
+ [ 'ཀr', 'k', 'ཀྲ' ],
+ [ 'ཁr', 'h', 'ཁྲ' ],
+ [ 'གr', 'g', 'གྲ' ],
+ [ 'ཏr', 't', 'ཏྲ' ],
+ [ 'ཐr', 'h', 'ཐྲ' ],
+ [ 'དr', 'd', 'དྲ' ],
+ [ 'པr', 'p', 'པྲ' ],
+ [ 'ཕr', 'h', 'ཕྲ' ],
+ [ 'བr', 'b', 'བྲ' ],
+ [ 'མr', 'm', 'མྲ' ],
+ [ 'ཤr', 'h', 'ཤྲ' ],
+ [ 'སr', 's', 'སྲ' ],
+ [ 'ཧr', 'h', 'ཧྲ' ],
+ [ 'ཀl', 'k', 'ཀླ' ],
+ [ 'གl', 'g', 'གླ' ],
+ [ 'བl', 'b', 'བླ' ],
+ [ 'ཟl', 'z', 'ཟླ' ],
+ [ 'རl', 'r', 'རླ' ],
+ [ 'སl', 's', 'སླ' ],
+ [ 'ཨོM', 'o', 'ༀ' ],
+ [ '\\.', '' ],
+ [ '\\+', '' ],
+ [ '-', '' ],
+ [ 'S', '' ],
// subjoined letters:
- ['k', '\\+', 'ྐ'],
- ['g', '\\+', 'ྒ'],
- ['ྣg', 'ྔ'],
- ['c', '\\+', 'ྕ'],
- ['ྕh', 'ྖ'],
- ['j', '\\+', 'ྗ'],
- ['ྣy', 'ྙ'],
- ['T', '\\+', 'ྚ'],
- ['ྚh', 'ྛ'],
- ['D', '\\+', 'ྜ'],
- ['N', '\\+', 'ྞ'],
- ['t', '\\+', 'ྟ'],
- ['ྟh', 'ྠ'],
- ['d', '\\+', 'ྡ'],
- ['n', '\\+', 'ྣ'],
- ['p', '\\+', 'ྤ'],
- ['ྤh', 'ྥ'],
- ['b', '\\+', 'ྦ'],
- ['m', '\\+', 'ྨ'],
- ['ྟs', 'ྩ'],
- ['ྩh', 'ྪ'],
- ['ྡz', 'ྫ'],
- ['w', '\\+', 'ྭ'],
- ['ྯh', 'ྮ'],
- ['z', '\\+', 'ྯ'],
- ['\'', '\\+', 'ྰ'],
- ['y', '\\+', 'ྱ'],
- ['r', '\\+', 'ྲ'],
- ['l', '\\+', 'ླ'],
- ['ྶh', 'ྴ'],
- ['ཀh', '\\+S', 'ཀྵ'],
- ['ྐh', '\\+S', 'ྐྵ'],
- ['ྐh', 'ྑ'],
- ['h', '\\+S', 'ྵ'],
- ['s', '\\+', 'ྶ'],
- ['གh', '\\+', 'གྷ'],
- ['ཌh', '\\+', 'ཌྷ'],
- ['དh', '\\+', 'དྷ'],
- ['བh', '\\+', 'བྷ'],
- ['ཛh', '\\+', 'ཛྷ'],
- ['ྒh', '\\+', 'ྒྷ'],
- ['ྜh', '\\+', 'ྜྷ'],
- ['ྡh', '\\+', 'ྡྷ'],
- ['ྦh', '\\+', 'ྦྷ'],
- ['ྫh', '\\+', 'ྫྷ'],
- ['h', '\\+', 'ྷ'],
- ['v', '\\+', 'ྦ༹'],
- ['f', '\\+', 'ྥ༹'],
- ['W', '\\+', 'ྺ'],
- ['Y', '\\+', 'ྻ'],
- ['R', '\\+', 'ྼ'],
- ['Z', '\\+', '༹'],
+ [ 'k', '\\+', 'ྐ' ],
+ [ 'g', '\\+', 'ྒ' ],
+ [ 'ྣg', 'ྔ' ],
+ [ 'c', '\\+', 'ྕ' ],
+ [ 'ྕh', 'ྖ' ],
+ [ 'j', '\\+', 'ྗ' ],
+ [ 'ྣy', 'ྙ' ],
+ [ 'T', '\\+', 'ྚ' ],
+ [ 'ྚh', 'ྛ' ],
+ [ 'D', '\\+', 'ྜ' ],
+ [ 'N', '\\+', 'ྞ' ],
+ [ 't', '\\+', 'ྟ' ],
+ [ 'ྟh', 'ྠ' ],
+ [ 'd', '\\+', 'ྡ' ],
+ [ 'n', '\\+', 'ྣ' ],
+ [ 'p', '\\+', 'ྤ' ],
+ [ 'ྤh', 'ྥ' ],
+ [ 'b', '\\+', 'ྦ' ],
+ [ 'm', '\\+', 'ྨ' ],
+ [ 'ྟs', 'ྩ' ],
+ [ 'ྩh', 'ྪ' ],
+ [ 'ྡz', 'ྫ' ],
+ [ 'w', '\\+', 'ྭ' ],
+ [ 'ྯh', 'ྮ' ],
+ [ 'z', '\\+', 'ྯ' ],
+ [ '\'', '\\+', 'ྰ' ],
+ [ 'y', '\\+', 'ྱ' ],
+ [ 'r', '\\+', 'ྲ' ],
+ [ 'l', '\\+', 'ླ' ],
+ [ 'ྶh', 'ྴ' ],
+ [ 'ཀh', '\\+S', 'ཀྵ' ],
+ [ 'ྐh', '\\+S', 'ྐྵ' ],
+ [ 'ྐh', 'ྑ' ],
+ [ 'h', '\\+S', 'ྵ' ],
+ [ 's', '\\+', 'ྶ' ],
+ [ 'གh', '\\+', 'གྷ' ],
+ [ 'ཌh', '\\+', 'ཌྷ' ],
+ [ 'དh', '\\+', 'དྷ' ],
+ [ 'བh', '\\+', 'བྷ' ],
+ [ 'ཛh', '\\+', 'ཛྷ' ],
+ [ 'ྒh', '\\+', 'ྒྷ' ],
+ [ 'ྜh', '\\+', 'ྜྷ' ],
+ [ 'ྡh', '\\+', 'ྡྷ' ],
+ [ 'ྦh', '\\+', 'ྦྷ' ],
+ [ 'ྫh', '\\+', 'ྫྷ' ],
+ [ 'h', '\\+', 'ྷ' ],
+ [ 'v', '\\+', 'ྦ༹' ],
+ [ 'f', '\\+', 'ྥ༹' ],
+ [ 'W', '\\+', 'ྺ' ],
+ [ 'Y', '\\+', 'ྻ' ],
+ [ 'R', '\\+', 'ྼ' ],
+ [ 'Z', '\\+', '༹' ],
// consonants
- ['k', 'ཀ'],
- ['ཀh', 'k', 'ཁ'],
- ['g', 'ག'],
- ['ནg', 'n', 'ང'],
- ['c', 'ཅ'],
- ['ཅh', 'c', 'ཆ'],
- ['j', 'ཇ'],
- ['ནy', 'n', 'ཉ'],
- ['T', 'ཊ'],
- ['ཊh', 'T', 'ཋ'],
- ['D', 'ཌ'],
- ['N', 'ཎ'],
- ['t', 'ཏ'],
- ['ཏh', 't', 'ཐ'],
- ['d', 'ད'],
- ['n', 'ན'],
- ['p', 'པ'],
- ['པh', 'p', 'ཕ'],
- ['b', 'བ'],
- ['m', 'མ'],
- ['ཏs', 't', 'ཙ'],
- ['ཙh', 's', 'ཚ'],
- ['དz', 'd', 'ཛ'],
- ['w', 'ཝ'],
- ['ཟh', 'z', 'ཞ'],
- ['z', 'ཟ'],
- ['\'', 'འ'],
- ['y', 'ཡ'],
- ['r', 'ར'],
- ['l', 'ལ'],
- ['སh', 's', 'ཤ'],
- ['h', 'S', 'ཥ'],
- ['s', 'ས'],
- ['h', 'ཧ'],
- ['f', 'ཕ༹'],
- ['v', 'བ༹'],
- ['R', 'ཪ'],
+ [ 'k', 'ཀ' ],
+ [ 'ཀh', 'k', 'ཁ' ],
+ [ 'ལནg', 'ln', 'ལྔ' ],
+ [ 'ནg', 'n', 'ང' ],
+ [ 'g', 'ག' ],
+ [ 'c', 'ཅ' ],
+ [ 'ཅh', 'c', 'ཆ' ],
+ [ 'j', 'ཇ' ],
+ [ 'ནy', 'n', 'ཉ' ],
+ [ 'T', 'ཊ' ],
+ [ 'ཊh', 'T', 'ཋ' ],
+ [ 'D', 'ཌ' ],
+ [ 'N', 'ཎ' ],
+ [ 't', 'ཏ' ],
+ [ 'ཏh', 't', 'ཐ' ],
+ [ 'd', 'ད' ],
+ [ 'n', 'ན' ],
+ [ 'p', 'པ' ],
+ [ 'པh', 'p', 'ཕ' ],
+ [ 'b', 'བ' ],
+ [ 'm', 'མ' ],
+ [ 'ཏs', 't', 'ཙ' ],
+ [ 'ཙh', 's', 'ཚ' ],
+ [ 'དz', 'd', 'ཛ' ],
+ [ 'w', 'ཝ' ],
+ [ 'ཟh', 'z', 'ཞ' ],
+ [ 'z', 'ཟ' ],
+ [ '\'', 'འ' ],
+ [ 'y', 'ཡ' ],
+ [ 'r', 'ར' ],
+ [ 'l', 'ལ' ],
+ [ 'སh', 's', 'ཤ' ],
+ [ 'h', 'S', 'ཥ' ],
+ [ 's', 'ས' ],
+ [ 'h', 'ཧ' ],
+ [ 'f', 'ཕ༹' ],
+ [ 'v', 'བ༹' ],
+ [ 'R', 'ཪ' ],
// vowels after consonnants or vowels
- ['([ཀ-ྼ])i', 'a', '$1ཻ'],
- ['([ཀ-ྼ])u', 'a', '$1ཽ'],
- ['ྲi', '-', 'ྲྀ'],
- ['ླi', '-', 'ླྀ'],
- ['([ཀ-ྼ])i', '-', '$1ྀ'],
- ['([ཀ-ྼ])རI', 'r-', '$1ྲཱྀ'],
- ['([ཀ-ྼ])ལI', 'l-', '$1ླཱྀ'],
- ['རI', 'r-', 'ཨྲཱྀ'],
- ['ལI', 'l-', 'ཨླཱྀ'],
- ['([ཀ-ྼ])I', '-', '$1ཱྀ'],
- ['([ཀ-ྼ])a', '$1'],
- ['([ཀ-ྼ])i', '$1ི'],
- ['([ཀ-ྼ])u', '$1ུ'],
- ['([ཀ-ྼ])e', '$1ེ'],
- ['([ཀ-ྼ])o', '$1ོ'],
- ['([ཀ-ྼ])A', '$1ཱ'],
- ['([ཀ-ྼ])I', '$1ཱི'],
- ['([ཀ-ྼ])U', '$1ཱུ'],
+ [ '([ཀ-ྼ])i', 'a', '$1ཻ' ],
+ [ '([ཀ-ྼ])u', 'a', '$1ཽ' ],
+ [ 'ྲi', '-', 'ྲྀ' ],
+ [ 'ླi', '-', 'ླྀ' ],
+ [ '([ཀ-ྼ])i', '-', '$1ྀ' ],
+ [ '([ཀ-ྼ])རI', 'r-', '$1ྲཱྀ' ],
+ [ '([ཀ-ྼ])ལI', 'l-', '$1ླཱྀ' ],
+ [ 'རI', 'r-', 'ཨྲཱྀ' ],
+ [ 'ལI', 'l-', 'ཨླཱྀ' ],
+ [ '([ཀ-ྼ])I', '-', '$1ཱྀ' ],
+ [ '([ཀ-ྼ])a', '$1' ],
+ [ '([ཀ-ྼ])i', '$1ི' ],
+ [ '([ཀ-ྼ])u', '$1ུ' ],
+ [ '([ཀ-ྼ])e', '$1ེ' ],
+ [ '([ཀ-ྼ])o', '$1ོ' ],
+ [ '([ཀ-ྼ])A', '$1ཱ' ],
+ [ '([ཀ-ྼ])I', '$1ཱི' ],
+ [ '([ཀ-ྼ])U', '$1ཱུ' ],
// vowels after something else
- ['a', 'ཨ'],
- ['i', '-', 'ཨྀ'],
- ['A', 'ཨཱ'],
- ['I', '-', 'ཨཱྀ'],
- ['I', 'ཨཱི'],
- ['U', 'ཨཱུ'],
- ['i', 'ཨི'],
- ['u', 'ཨུ'],
- ['e', 'ཨེ'],
- ['o', 'ཨོ'],
+ [ 'a', 'ཨ' ],
+ [ 'i', '-', 'ཨྀ' ],
+ [ 'A', 'ཨཱ' ],
+ [ 'I', '-', 'ཨཱྀ' ],
+ [ 'I', 'ཨཱི' ],
+ [ 'U', 'ཨཱུ' ],
+ [ 'i', 'ཨི' ],
+ [ 'u', 'ཨུ' ],
+ [ 'e', 'ཨེ' ],
+ [ 'o', 'ཨོ' ],
// numbers
- ['0', '༠'],
- ['1', '༡'],
- ['2', '༢'],
- ['3', '༣'],
- ['4', '༤'],
- ['5', '༥'],
- ['6', '༦'],
- ['7', '༧'],
- ['8', '༨'],
- ['9', '༩'],
+ [ '0', '༠' ],
+ [ '1', '༡' ],
+ [ '2', '༢' ],
+ [ '3', '༣' ],
+ [ '4', '༤' ],
+ [ '5', '༥' ],
+ [ '6', '༦' ],
+ [ '7', '༧' ],
+ [ '8', '༨' ],
+ [ '9', '༩' ],
// Sanskrit marks
- ['H', 'ཿ'],
- ['M', 'ཾ'],
- ['~M', 'ྃ'],
- ['~M`', 'ྂ'],
- ['\\?', '྄'],
- ['&', '྅'],
+ [ 'H', 'ཿ' ],
+ [ 'M', 'ཾ' ],
+ [ '~M', 'ྃ' ],
+ [ '~M`', 'ྂ' ],
+ [ '\\?', '྄' ],
+ [ '&', '྅' ],
// punctuation
- [' ', '་'],
- ['\\*', '༌'],
- ['\\/', '།'],
- ['\\/\\/', '༎'],
- [';', '༏'],
- ['\\|', '༑'],
- ['\\!', '༈'],
- ['\\:', '༔'],
- ['_', ' '],
- ['\\=', '༴'],
- ['@', '༄'],
- ['#', '༅'],
- ['\\$', '༆'],
- ['%', '༇'],
- ['<', '༺'],
- ['>', '༻'],
- ['\\(', '༼'],
- ['\\)', '༽'],
- ['~X', '༵'],
- ['X', '༷'],
- ['\\^', '༹']
+ [ ' ', '་' ],
+ [ '\\*', '༌' ],
+ [ '\\/', '།' ],
+ [ '\\/\\/', '༎' ],
+ [ ';', '༏' ],
+ [ '\\|', '༑' ],
+ [ '\\!', '༈' ],
+ [ '\\:', '༔' ],
+ [ '_', ' ' ],
+ [ '\\=', '༴' ],
+ [ '@', '༄' ],
+ [ '#', '༅' ],
+ [ '\\$', '༆' ],
+ [ '%', '༇' ],
+ [ '<', '༺' ],
+ [ '>', '༻' ],
+ [ '\\(', '༼' ],
+ [ '\\)', '༽' ],
+ [ '~X', '༵' ],
+ [ 'X', '༷' ],
+ [ '\\^', '༹' ]
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/brx/brx-inscript.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/brx/brx-inscript.js
index e706d191..06e026c6 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/brx/brx-inscript.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/brx/brx-inscript.js
@@ -13,99 +13,99 @@
contextLength: 0,
maxKeyLength: 0,
patterns: [
- ['X', '\u0901'],
- ['x', '\u0902'],
- ['_', '\u0903'],
- ['D', '\u0905'],
- ['E', '\u0906'],
- ['F', '\u0907'],
- ['R', '\u0908'],
- ['G', '\u0909'],
- ['T', '\u090A'],
- ['\\+', '\u090B'],
- ['S', '\u090F'],
- ['W', '\u0910'],
- ['A', '\u0913'],
- ['Q', '\u0914'],
- ['k', '\u0915'],
- ['K', '\u0916'],
- ['i', '\u0917'],
- ['I', '\u0918'],
- ['U', '\u0919'],
- [';', '\u091A'],
- ['\\:', '\u091B'],
- ['p', '\u091C'],
- ['P', '\u091D'],
- ['\\}', '\u091E'],
- ['\'', '\u091F'],
- ['"', '\u0920'],
- ['\\[', '\u0921'],
- ['\\{', '\u0922'],
- ['C', '\u0923'],
- ['l', '\u0924'],
- ['L', '\u0925'],
- ['o', '\u0926'],
- ['O', '\u0927'],
- ['v', '\u0928'],
- ['h', '\u092A'],
- ['H', '\u092B'],
- ['y', '\u092C'],
- ['Y', '\u092D'],
- ['c', '\u092E'],
- ['/', '\u092F'],
- ['j', '\u0930'],
- ['n', '\u0932'],
- ['b', '\u0935'],
- ['M', '\u0936'],
- ['\\<', '\u0937'],
- ['m', '\u0938'],
- ['u', '\u0939'],
- ['\\]', '\u093C'],
- ['e', '\u093E'],
- ['f', '\u093F'],
- ['r', '\u0940'],
- ['g', '\u0941'],
- ['t', '\u0942'],
- ['\\=', '\u0943'],
- ['s', '\u0947'],
- ['w', '\u0948'],
- ['a', '\u094B'],
- ['q', '\u094C'],
- ['d', '\u094D'],
- ['\\>', '\u0964'],
- ['0', '\u0966'],
- ['1', '\u0967'],
- ['2', '\u0968'],
- ['3', '\u0969'],
- ['4', '\u096A'],
- ['5', '\u096B'],
- ['6', '\u096C'],
- ['7', '\u096D'],
- ['8', '\u096E'],
- ['9', '\u096F'],
- ['\\#', '\u094D\u0930'],
- ['\\$', '\u0930\u094D'],
- ['\\%', '\u091C\u094D\u091E'],
- ['\\^', '\u0924\u094D\u0930'],
- ['\\&', '\u0915\u094D\u0937'],
- ['\\*', '\u0936\u094D\u0930'],
- ['\\(', '\u200D'],
- ['\\)', '\u200C']],
+ [ 'X', '\u0901' ],
+ [ 'x', '\u0902' ],
+ [ '_', '\u0903' ],
+ [ 'D', '\u0905' ],
+ [ 'E', '\u0906' ],
+ [ 'F', '\u0907' ],
+ [ 'R', '\u0908' ],
+ [ 'G', '\u0909' ],
+ [ 'T', '\u090A' ],
+ [ '\\+', '\u090B' ],
+ [ 'S', '\u090F' ],
+ [ 'W', '\u0910' ],
+ [ 'A', '\u0913' ],
+ [ 'Q', '\u0914' ],
+ [ 'k', '\u0915' ],
+ [ 'K', '\u0916' ],
+ [ 'i', '\u0917' ],
+ [ 'I', '\u0918' ],
+ [ 'U', '\u0919' ],
+ [ ';', '\u091A' ],
+ [ '\\:', '\u091B' ],
+ [ 'p', '\u091C' ],
+ [ 'P', '\u091D' ],
+ [ '\\}', '\u091E' ],
+ [ '\'', '\u091F' ],
+ [ '"', '\u0920' ],
+ [ '\\[', '\u0921' ],
+ [ '\\{', '\u0922' ],
+ [ 'C', '\u0923' ],
+ [ 'l', '\u0924' ],
+ [ 'L', '\u0925' ],
+ [ 'o', '\u0926' ],
+ [ 'O', '\u0927' ],
+ [ 'v', '\u0928' ],
+ [ 'h', '\u092A' ],
+ [ 'H', '\u092B' ],
+ [ 'y', '\u092C' ],
+ [ 'Y', '\u092D' ],
+ [ 'c', '\u092E' ],
+ [ '/', '\u092F' ],
+ [ 'j', '\u0930' ],
+ [ 'n', '\u0932' ],
+ [ 'b', '\u0935' ],
+ [ 'M', '\u0936' ],
+ [ '\\<', '\u0937' ],
+ [ 'm', '\u0938' ],
+ [ 'u', '\u0939' ],
+ [ '\\]', '\u093C' ],
+ [ 'e', '\u093E' ],
+ [ 'f', '\u093F' ],
+ [ 'r', '\u0940' ],
+ [ 'g', '\u0941' ],
+ [ 't', '\u0942' ],
+ [ '\\=', '\u0943' ],
+ [ 's', '\u0947' ],
+ [ 'w', '\u0948' ],
+ [ 'a', '\u094B' ],
+ [ 'q', '\u094C' ],
+ [ 'd', '\u094D' ],
+ [ '\\>', '\u0964' ],
+ [ '0', '\u0966' ],
+ [ '1', '\u0967' ],
+ [ '2', '\u0968' ],
+ [ '3', '\u0969' ],
+ [ '4', '\u096A' ],
+ [ '5', '\u096B' ],
+ [ '6', '\u096C' ],
+ [ '7', '\u096D' ],
+ [ '8', '\u096E' ],
+ [ '9', '\u096F' ],
+ [ '\\#', '\u094D\u0930' ],
+ [ '\\$', '\u0930\u094D' ],
+ [ '\\%', '\u091C\u094D\u091E' ],
+ [ '\\^', '\u0924\u094D\u0930' ],
+ [ '\\&', '\u0915\u094D\u0937' ],
+ [ '\\*', '\u0936\u094D\u0930' ],
+ [ '\\(', '\u200D' ],
+ [ '\\)', '\u200C' ] ],
patterns_x: [
- ['F', '\u090C'],
- ['N', '\u0933'],
- ['\\>', '\u093D'],
- ['\\=', '\u0944'],
- ['X', '\u0950'],
- ['e', '\u0951'],
- ['d', '\u0952'],
- ['\\+', '\u0960'],
- ['R', '\u0961'],
- ['f', '\u0962'],
- ['r', '\u0963'],
- ['\\.', '\u0965'],
- [',', '\u0970'],
- ['\\$', '\u20B9']]
+ [ 'F', '\u090C' ],
+ [ 'N', '\u0933' ],
+ [ '\\>', '\u093D' ],
+ [ '\\=', '\u0944' ],
+ [ 'X', '\u0950' ],
+ [ 'e', '\u0951' ],
+ [ 'd', '\u0952' ],
+ [ '\\+', '\u0960' ],
+ [ 'R', '\u0961' ],
+ [ 'f', '\u0962' ],
+ [ 'r', '\u0963' ],
+ [ '\\.', '\u0965' ],
+ [ ',', '\u0970' ],
+ [ '\\$', '\u20B9' ] ]
};
$.ime.register( brxInscript );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/brx/brx-inscript2.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/brx/brx-inscript2.js
index 14bb0ff0..95619911 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/brx/brx-inscript2.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/brx/brx-inscript2.js
@@ -10,107 +10,107 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['1', '१'],
- ['2', '२'],
- ['\\#", "्र'],
- ['3', '३'],
- ['\\$', 'र्'],
- ['4', '४'],
- ['5', '५'],
- ['6', '६'],
- ['7', '७'],
- ['8', '८'],
- ['\\(', '('],
- ['9', '९'],
- ['\\]', ']'],
- ['0', '०'],
- ['\\_", "ः'],
- ['\\-', '-'],
- ['\\+', 'ऋ'],
- ['\\=', 'ृ'],
- ['Q', 'औ'],
- ['q', 'ौ'],
- ['W', 'ऐ'],
- ['w', 'ै'],
- ['E', 'आ'],
- ['e', 'ा'],
- ['R', 'ई'],
- ['r', 'ी'],
- ['T', 'ऊ'],
- ['t', 'ू'],
- ['Y', 'भ'],
- ['y', 'ब'],
- ['U', 'ङ'],
- ['u', 'ह'],
- ['I', 'घ'],
- ['i', 'ग'],
- ['O', 'ध'],
- ['o', 'द'],
- ['P', 'झ'],
- ['p', 'ज'],
- ['\\{', 'ढ'],
- ['\\[', 'ड'],
- ['\\}', 'ञ'],
- ['\\]', '़'],
- ['A', 'ओ'],
- ['a', 'ो'],
- ['S', 'ए'],
- ['s', 'े'],
- ['D', 'अ'],
- ['d', '्'],
- ['F', 'इ'],
- ['f', 'ि'],
- ['G', 'उ'],
- ['g', 'ु'],
- ['H', 'फ'],
- ['h', 'प'],
- ['j', 'र'],
- ['K', 'ख'],
- ['k', 'क'],
- ['L', 'थ'],
- ['l', 'त'],
- [':', 'छ'],
- [';', 'च'],
- ['\"', 'ठ'],
- ['\'', 'ट'],
- ['z', 'ʼ'],
- ['X', 'ँ'],
- ['x', 'ं'],
- ['C', 'ण'],
- ['c', 'म'],
- ['v', 'न'],
- ['b', 'व'],
- ['n', 'ल'],
- ['M', 'श'],
- ['m', 'स'],
- ['\\<', 'ष'],
- [',', ','],
- ['\\>', '।'],
- ['\\.', '.'],
- ['/', 'य'],
- ['\\%', 'ज्ञ'],
- ['\\^', 'त्र'],
- ['\\&', 'क्ष'],
- ['\\*', 'श्र']
+ [ '1', '१' ],
+ [ '2', '२' ],
+ [ '\\#", "्र' ],
+ [ '3', '३' ],
+ [ '\\$', 'र्' ],
+ [ '4', '४' ],
+ [ '5', '५' ],
+ [ '6', '६' ],
+ [ '7', '७' ],
+ [ '8', '८' ],
+ [ '\\(', '(' ],
+ [ '9', '९' ],
+ [ '\\]', ']' ],
+ [ '0', '०' ],
+ [ '\\_", "ः' ],
+ [ '\\-', '-' ],
+ [ '\\+', 'ऋ' ],
+ [ '\\=', 'ृ' ],
+ [ 'Q', 'औ' ],
+ [ 'q', 'ौ' ],
+ [ 'W', 'ऐ' ],
+ [ 'w', 'ै' ],
+ [ 'E', 'आ' ],
+ [ 'e', 'ा' ],
+ [ 'R', 'ई' ],
+ [ 'r', 'ी' ],
+ [ 'T', 'ऊ' ],
+ [ 't', 'ू' ],
+ [ 'Y', 'भ' ],
+ [ 'y', 'ब' ],
+ [ 'U', 'ङ' ],
+ [ 'u', 'ह' ],
+ [ 'I', 'घ' ],
+ [ 'i', 'ग' ],
+ [ 'O', 'ध' ],
+ [ 'o', 'द' ],
+ [ 'P', 'झ' ],
+ [ 'p', 'ज' ],
+ [ '\\{', 'ढ' ],
+ [ '\\[', 'ड' ],
+ [ '\\}', 'ञ' ],
+ [ '\\]', '़' ],
+ [ 'A', 'ओ' ],
+ [ 'a', 'ो' ],
+ [ 'S', 'ए' ],
+ [ 's', 'े' ],
+ [ 'D', 'अ' ],
+ [ 'd', '्' ],
+ [ 'F', 'इ' ],
+ [ 'f', 'ि' ],
+ [ 'G', 'उ' ],
+ [ 'g', 'ु' ],
+ [ 'H', 'फ' ],
+ [ 'h', 'प' ],
+ [ 'j', 'र' ],
+ [ 'K', 'ख' ],
+ [ 'k', 'क' ],
+ [ 'L', 'थ' ],
+ [ 'l', 'त' ],
+ [ ':', 'छ' ],
+ [ ';', 'च' ],
+ [ '\"', 'ठ' ],
+ [ '\'', 'ट' ],
+ [ 'z', 'ʼ' ],
+ [ 'X', 'ँ' ],
+ [ 'x', 'ं' ],
+ [ 'C', 'ण' ],
+ [ 'c', 'म' ],
+ [ 'v', 'न' ],
+ [ 'b', 'व' ],
+ [ 'n', 'ल' ],
+ [ 'M', 'श' ],
+ [ 'm', 'स' ],
+ [ '\\<', 'ष' ],
+ [ ',', ',' ],
+ [ '\\>', '।' ],
+ [ '\\.', '.' ],
+ [ '/', 'य' ],
+ [ '\\%', 'ज्ञ' ],
+ [ '\\^', 'त्र' ],
+ [ '\\&', 'क्ष' ],
+ [ '\\*', 'श्र' ]
],
patterns_x: [
- ['1', '\u200d'],
- ['2', '\u200c'],
- ['4', '₹'],
- ['\\+', 'ॠ'],
- ['\\=', 'ॄ'],
- ['e', '॑'],
- ['i', 'ग़'],
- ['R', 'ॡ'],
- ['r', 'ॣ'],
- ['d', '॒'],
- ['F', 'ऌ'],
- ['f', 'ॢ'],
- ['X', 'ॐ'],
- ['N', 'ळ'],
- [',', '॰'],
- ['\\>', 'ऽ'],
- ['\\.', '॥']]
+ [ '1', '\u200d' ],
+ [ '2', '\u200c' ],
+ [ '4', '₹' ],
+ [ '\\+', 'ॠ' ],
+ [ '\\=', 'ॄ' ],
+ [ 'e', '॑' ],
+ [ 'i', 'ग़' ],
+ [ 'R', 'ॡ' ],
+ [ 'r', 'ॣ' ],
+ [ 'd', '॒' ],
+ [ 'F', 'ऌ' ],
+ [ 'f', 'ॢ' ],
+ [ 'X', 'ॐ' ],
+ [ 'N', 'ळ' ],
+ [ ',', '॰' ],
+ [ '\\>', 'ऽ' ],
+ [ '\\.', '॥' ] ]
};
$.ime.register( brxInScript2 );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ckb/ckb-transliteration-arkbd.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ckb/ckb-transliteration-arkbd.js
index 77e98ea1..790aef33 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ckb/ckb-transliteration-arkbd.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ckb/ckb-transliteration-arkbd.js
@@ -11,91 +11,91 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['`', 'ژ'],
- ['1', '١'],
- ['2', '٢'],
- ['3', '٣'],
- ['4', '٤'],
- ['5', '٥'],
- ['6', '٦'],
- ['7', '٧'],
- ['8', '٨'],
- ['9', '٩'],
- ['0', '٠'],
+ [ '`', 'ژ' ],
+ [ '1', '١' ],
+ [ '2', '٢' ],
+ [ '3', '٣' ],
+ [ '4', '٤' ],
+ [ '5', '٥' ],
+ [ '6', '٦' ],
+ [ '7', '٧' ],
+ [ '8', '٨' ],
+ [ '9', '٩' ],
+ [ '0', '٠' ],
- ['q', 'چ'],
- ['w', 'ص'],
- ['e', 'پ'],
- ['r', 'ق'],
- ['t', 'ف'],
- ['y', 'غ'],
- ['u', 'ع'],
- ['i', 'ھ'],
- ['o', 'خ'],
- ['p', 'ح'],
- ['\\[', 'ج'],
- ['\\]', 'د'],
+ [ 'q', 'چ' ],
+ [ 'w', 'ص' ],
+ [ 'e', 'پ' ],
+ [ 'r', 'ق' ],
+ [ 't', 'ف' ],
+ [ 'y', 'غ' ],
+ [ 'u', 'ع' ],
+ [ 'i', 'ھ' ],
+ [ 'o', 'خ' ],
+ [ 'p', 'ح' ],
+ [ '\\[', 'ج' ],
+ [ '\\]', 'د' ],
- ['a', 'ش'],
- ['s', 'س'],
- ['d', 'ی'],
- ['f', 'ب'],
- ['g', 'ل'],
- ['h', 'ا'],
- ['j', 'ت'],
- ['k', 'ن'],
- ['l', 'م'],
- ['\\;', 'ک'],
- ['\'', 'گ'],
+ [ 'a', 'ش' ],
+ [ 's', 'س' ],
+ [ 'd', 'ی' ],
+ [ 'f', 'ب' ],
+ [ 'g', 'ل' ],
+ [ 'h', 'ا' ],
+ [ 'j', 'ت' ],
+ [ 'k', 'ن' ],
+ [ 'l', 'م' ],
+ [ '\\;', 'ک' ],
+ [ '\'', 'گ' ],
- ['z', 'ئ'],
- ['x', 'ء'],
- ['c', 'ۆ'],
- ['v', 'ر'],
- ['b', 'لا'],
- ['n', 'ى'],
- ['m', 'ە'],
- ['\\,', 'و'],
- ['\\.', 'ز'],
+ [ 'z', 'ئ' ],
+ [ 'x', 'ء' ],
+ [ 'c', 'ۆ' ],
+ [ 'v', 'ر' ],
+ [ 'b', 'لا' ],
+ [ 'n', 'ى' ],
+ [ 'm', 'ە' ],
+ [ '\\,', 'و' ],
+ [ '\\.', 'ز' ],
- ['\\%', '٪'],
- ['\\(', ')'],
- ['\\)', '('],
+ [ '\\%', '٪' ],
+ [ '\\(', ')' ],
+ [ '\\)', '(' ],
- ['Q', 'ض'],
- ['W', '}'],
- ['E', 'ث'],
- ['R', '{'],
- ['T', 'ڤ'],
- ['Y', 'إ'],
- ['U', 'ۊ'],
- ['I', '\''],
- ['O', '\"'],
- ['P', '؛'],
- ['\\{', '>'],
- ['\\}', '<'],
+ [ 'Q', 'ض' ],
+ [ 'W', '}' ],
+ [ 'E', 'ث' ],
+ [ 'R', '{' ],
+ [ 'T', 'ڤ' ],
+ [ 'Y', 'إ' ],
+ [ 'U', 'ۊ' ],
+ [ 'I', '\'' ],
+ [ 'O', '\"' ],
+ [ 'P', '؛' ],
+ [ '\\{', '>' ],
+ [ '\\}', '<' ],
- ['A', '['],
- ['S', ']'],
- ['D', 'ێ'],
- ['F', ''],
- ['G', 'ڵ'],
- ['H', 'أ'],
- ['J', 'ـ'],
- ['K', '،'],
- ['L', '\\'],
- ['\"', 'ط'],
+ [ 'A', '[' ],
+ [ 'S', ']' ],
+ [ 'D', 'ێ' ],
+ [ 'F', '' ],
+ [ 'G', 'ڵ' ],
+ [ 'H', 'أ' ],
+ [ 'J', 'ـ' ],
+ [ 'K', '،' ],
+ [ 'L', '\\' ],
+ [ '\"', 'ط' ],
- ['Z', 'ڎ'],
- ['X', 'وو'],
- ['C', 'ؤ'],
- ['V', 'ڕ'],
- ['B', 'ڵا'],
- ['N', 'آ'],
- ['M', 'ة'],
- ['\\<', '٫'],
- ['\\>', '.'],
- ['\\?', '؟']
+ [ 'Z', 'ڎ' ],
+ [ 'X', 'وو' ],
+ [ 'C', 'ؤ' ],
+ [ 'V', 'ڕ' ],
+ [ 'B', 'ڵا' ],
+ [ 'N', 'آ' ],
+ [ 'M', 'ة' ],
+ [ '\\<', '٫' ],
+ [ '\\>', '.' ],
+ [ '\\?', '؟' ]
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ckb/ckb-transliteration-fakbd.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ckb/ckb-transliteration-fakbd.js
index 01cf59d8..be44bd7a 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ckb/ckb-transliteration-fakbd.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ckb/ckb-transliteration-fakbd.js
@@ -11,92 +11,92 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['`', 'پ'],
- ['1', '١'],
- ['2', '٢'],
- ['3', '٣'],
- ['4', '٤'],
- ['5', '٥'],
- ['6', '٦'],
- ['7', '٧'],
- ['8', '٨'],
- ['9', '٩'],
- ['0', '٠'],
+ [ '`', 'پ' ],
+ [ '1', '١' ],
+ [ '2', '٢' ],
+ [ '3', '٣' ],
+ [ '4', '٤' ],
+ [ '5', '٥' ],
+ [ '6', '٦' ],
+ [ '7', '٧' ],
+ [ '8', '٨' ],
+ [ '9', '٩' ],
+ [ '0', '٠' ],
- ['q', 'ڵ'],
- ['w', 'ۆ'],
- ['e', 'ێ'],
- ['r', 'ق'],
- ['t', 'ف'],
- ['y', 'غ'],
- ['u', 'ع'],
- ['i', 'ە'],
- ['o', 'خ'],
- ['p', 'ح'],
- ['\\[', 'ج'],
- ['\\]', 'چ'],
- ['\\\\', 'ژ'],
+ [ 'q', 'ڵ' ],
+ [ 'w', 'ۆ' ],
+ [ 'e', 'ێ' ],
+ [ 'r', 'ق' ],
+ [ 't', 'ف' ],
+ [ 'y', 'غ' ],
+ [ 'u', 'ع' ],
+ [ 'i', 'ە' ],
+ [ 'o', 'خ' ],
+ [ 'p', 'ح' ],
+ [ '\\[', 'ج' ],
+ [ '\\]', 'چ' ],
+ [ '\\\\', 'ژ' ],
- ['a', 'ش'],
- ['s', 'س'],
- ['d', 'ی'],
- ['f', 'ب'],
- ['g', 'ل'],
- ['h', 'ا'],
- ['j', 'ت'],
- ['k', 'ن'],
- ['l', 'م'],
- ['\\;', 'ک'],
- ['\'', 'گ'],
+ [ 'a', 'ش' ],
+ [ 's', 'س' ],
+ [ 'd', 'ی' ],
+ [ 'f', 'ب' ],
+ [ 'g', 'ل' ],
+ [ 'h', 'ا' ],
+ [ 'j', 'ت' ],
+ [ 'k', 'ن' ],
+ [ 'l', 'م' ],
+ [ '\\;', 'ک' ],
+ [ '\'', 'گ' ],
- ['z', 'ڤ'],
- ['x', 'ھ'],
- ['c', 'ز'],
- ['v', 'ر'],
- ['b', 'ڕ'],
- ['n', 'د'],
- ['m', 'ئ'],
- ['\\,', 'و'],
- ['\\.', '.'],
- ['/', '/'],
+ [ 'z', 'ڤ' ],
+ [ 'x', 'ھ' ],
+ [ 'c', 'ز' ],
+ [ 'v', 'ر' ],
+ [ 'b', 'ڕ' ],
+ [ 'n', 'د' ],
+ [ 'm', 'ئ' ],
+ [ '\\,', 'و' ],
+ [ '\\.', '.' ],
+ [ '/', '/' ],
- ['\\%', '٪'],
- ['\\(', ')'],
- ['\\)', '('],
+ [ '\\%', '٪' ],
+ [ '\\(', ')' ],
+ [ '\\)', '(' ],
- ['Q', 'ض'],
- ['W', 'ص'],
- ['E', 'ث'],
- ['R', 'ك'],
- ['T', '،'],
- ['Y', '؛'],
- ['U', '\\'],
- ['I', ']'],
- ['O', '['],
- ['P', '\''],
- ['\\{', '}'],
- ['\\}', '{'],
+ [ 'Q', 'ض' ],
+ [ 'W', 'ص' ],
+ [ 'E', 'ث' ],
+ [ 'R', 'ك' ],
+ [ 'T', '،' ],
+ [ 'Y', '؛' ],
+ [ 'U', '\\' ],
+ [ 'I', ']' ],
+ [ 'O', '[' ],
+ [ 'P', '\'' ],
+ [ '\\{', '}' ],
+ [ '\\}', '{' ],
- ['A', 'ڎ'],
- ['S', 'إ'],
- ['D', 'ي'],
- ['F', 'ة'],
- ['G', 'ۀ'],
- ['H', 'آ'],
- ['J', 'ـ'],
- ['K', '»'],
- ['L', '«'],
+ [ 'A', 'ڎ' ],
+ [ 'S', 'إ' ],
+ [ 'D', 'ي' ],
+ [ 'F', 'ة' ],
+ [ 'G', 'ۀ' ],
+ [ 'H', 'آ' ],
+ [ 'J', 'ـ' ],
+ [ 'K', '»' ],
+ [ 'L', '«' ],
- ['Z', 'ظ'],
- ['X', 'ط'],
- ['C', 'ژ'],
- ['V', 'ؤ'],
- ['B', 'ذ'],
- ['N', '\u200cأ'],
- ['M', 'ء'],
- ['\\<', '>'],
- ['\\>', '<'],
- ['\\?', '؟']
+ [ 'Z', 'ظ' ],
+ [ 'X', 'ط' ],
+ [ 'C', 'ژ' ],
+ [ 'V', 'ؤ' ],
+ [ 'B', 'ذ' ],
+ [ 'N', '\u200cأ' ],
+ [ 'M', 'ء' ],
+ [ '\\<', '>' ],
+ [ '\\>', '<' ],
+ [ '\\?', '؟' ]
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ckb/ckb-transliteration-lakbd.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ckb/ckb-transliteration-lakbd.js
index f5bea06f..0a2000b1 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ckb/ckb-transliteration-lakbd.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ckb/ckb-transliteration-lakbd.js
@@ -11,88 +11,88 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['1', '١'],
- ['2', '٢'],
- ['3', '٣'],
- ['4', '٤'],
- ['5', '٥'],
- ['6', '٦'],
- ['7', '٧'],
- ['8', '٨'],
- ['9', '٩'],
- ['0', '٠'],
+ [ '1', '١' ],
+ [ '2', '٢' ],
+ [ '3', '٣' ],
+ [ '4', '٤' ],
+ [ '5', '٥' ],
+ [ '6', '٦' ],
+ [ '7', '٧' ],
+ [ '8', '٨' ],
+ [ '9', '٩' ],
+ [ '0', '٠' ],
- ['q', 'ق'],
- ['w', 'و'],
- ['e', 'ە'],
- ['r', 'ر'],
- ['t', 'ت'],
- ['y', 'ی'],
- ['u', 'ئ'],
- ['i', 'ح'],
- ['o', 'ۆ'],
- ['p', 'پ'],
- ['\\[', ']'],
- ['\\]', '['],
+ [ 'q', 'ق' ],
+ [ 'w', 'و' ],
+ [ 'e', 'ە' ],
+ [ 'r', 'ر' ],
+ [ 't', 'ت' ],
+ [ 'y', 'ی' ],
+ [ 'u', 'ئ' ],
+ [ 'i', 'ح' ],
+ [ 'o', 'ۆ' ],
+ [ 'p', 'پ' ],
+ [ '\\[', ']' ],
+ [ '\\]', '[' ],
- ['a', 'ا'],
- ['s', 'س'],
- ['d', 'د'],
- ['f', 'ف'],
- ['g', 'گ'],
- ['h', 'ھ'],
- ['j', 'ژ'],
- ['k', 'ک'],
- ['l', 'ل'],
- ['\\;', '؛'],
+ [ 'a', 'ا' ],
+ [ 's', 'س' ],
+ [ 'd', 'د' ],
+ [ 'f', 'ف' ],
+ [ 'g', 'گ' ],
+ [ 'h', 'ھ' ],
+ [ 'j', 'ژ' ],
+ [ 'k', 'ک' ],
+ [ 'l', 'ل' ],
+ [ '\\;', '؛' ],
- ['z', 'ز'],
- ['x', 'خ'],
- ['c', 'ج'],
- ['v', 'ڤ'],
- ['b', 'ب'],
- ['n', 'ن'],
- ['m', 'م'],
- ['\\,', '،'],
- ['\\.', '.'],
+ [ 'z', 'ز' ],
+ [ 'x', 'خ' ],
+ [ 'c', 'ج' ],
+ [ 'v', 'ڤ' ],
+ [ 'b', 'ب' ],
+ [ 'n', 'ن' ],
+ [ 'm', 'م' ],
+ [ '\\,', '،' ],
+ [ '\\.', '.' ],
- ['\\%', '٪'],
- ['\\(', ')'],
- ['\\)', '('],
+ [ '\\%', '٪' ],
+ [ '\\(', ')' ],
+ [ '\\)', '(' ],
- ['Q', 'ڎ'],
- ['W', 'وو'],
- ['E', 'ێ'],
- ['R', 'ڕ'],
- ['T', 'ط'],
- ['Y', 'ي'],
- ['U', 'ء'],
- ['I', 'ع'],
- ['O', 'ؤ'],
- ['P', 'ث'],
- ['\\{', '}'],
- ['\\}', '{'],
+ [ 'Q', 'ڎ' ],
+ [ 'W', 'وو' ],
+ [ 'E', 'ێ' ],
+ [ 'R', 'ڕ' ],
+ [ 'T', 'ط' ],
+ [ 'Y', 'ي' ],
+ [ 'U', 'ء' ],
+ [ 'I', 'ع' ],
+ [ 'O', 'ؤ' ],
+ [ 'P', 'ث' ],
+ [ '\\{', '}' ],
+ [ '\\}', '{' ],
- ['A', 'آ'],
- ['S', 'ش'],
- ['D', 'ذ'],
- ['F', 'إ'],
- ['G', 'غ'],
- ['H', 'ه'],
- ['J', 'أ'],
- ['K', 'ك'],
- ['L', 'ڵ'],
+ [ 'A', 'آ' ],
+ [ 'S', 'ش' ],
+ [ 'D', 'ذ' ],
+ [ 'F', 'إ' ],
+ [ 'G', 'غ' ],
+ [ 'H', 'ه' ],
+ [ 'J', 'أ' ],
+ [ 'K', 'ك' ],
+ [ 'L', 'ڵ' ],
- ['Z', 'ض'],
- ['X', 'ص'],
- ['C', 'چ'],
- ['V', 'ظ'],
- ['B', 'ى'],
- ['N', 'ة'],
- ['M', 'ـ'],
- ['\\<', '>'],
- ['\\>', '<'],
- ['\\?', '؟']
+ [ 'Z', 'ض' ],
+ [ 'X', 'ص' ],
+ [ 'C', 'چ' ],
+ [ 'V', 'ظ' ],
+ [ 'B', 'ى' ],
+ [ 'N', 'ة' ],
+ [ 'M', 'ـ' ],
+ [ '\\<', '>' ],
+ [ '\\>', '<' ],
+ [ '\\?', '؟' ]
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/cv/cv-cyr-altgr.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/cv/cv-cyr-altgr.js
index 176c97b0..835acca0 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/cv/cv-cyr-altgr.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/cv/cv-cyr-altgr.js
@@ -22,97 +22,97 @@
license: 'MIT',
version: '1.0',
patterns: [
- ['Q', 'Й'],
- ['W', 'Ц'],
- ['E', 'У'],
- ['R', 'К'],
- ['T', 'Е'],
- ['Y', 'Н'],
- ['U', 'Г'],
- ['I', 'Ш'],
- ['O', 'Щ'],
- ['P', 'З'],
- ['{', 'Х'],
- ['}', 'Ъ'],
- ['A', 'Ф'],
- ['S', 'Ы'],
- ['D', 'В'],
- ['F', 'А'],
- ['G', 'П'],
- ['H', 'Р'],
- ['J', 'О'],
- ['K', 'Л'],
- ['L', 'Д'],
- [':', 'Ж'],
- ['"', 'Э'],
- ['Z', 'Я'],
- ['X', 'Ч'],
- ['C', 'С'],
- ['V', 'М'],
- ['B', 'И'],
- ['N', 'Т'],
- ['M', 'Ь'],
- ['<', 'Б'],
- ['>', 'Ю'],
- ['\\?', ','],
+ [ 'Q', 'Й' ],
+ [ 'W', 'Ц' ],
+ [ 'E', 'У' ],
+ [ 'R', 'К' ],
+ [ 'T', 'Е' ],
+ [ 'Y', 'Н' ],
+ [ 'U', 'Г' ],
+ [ 'I', 'Ш' ],
+ [ 'O', 'Щ' ],
+ [ 'P', 'З' ],
+ [ '{', 'Х' ],
+ [ '}', 'Ъ' ],
+ [ 'A', 'Ф' ],
+ [ 'S', 'Ы' ],
+ [ 'D', 'В' ],
+ [ 'F', 'А' ],
+ [ 'G', 'П' ],
+ [ 'H', 'Р' ],
+ [ 'J', 'О' ],
+ [ 'K', 'Л' ],
+ [ 'L', 'Д' ],
+ [ ':', 'Ж' ],
+ [ '"', 'Э' ],
+ [ 'Z', 'Я' ],
+ [ 'X', 'Ч' ],
+ [ 'C', 'С' ],
+ [ 'V', 'М' ],
+ [ 'B', 'И' ],
+ [ 'N', 'Т' ],
+ [ 'M', 'Ь' ],
+ [ '<', 'Б' ],
+ [ '>', 'Ю' ],
+ [ '\\?', ',' ],
- ['q', 'й'],
- ['w', 'ц'],
- ['e', 'у'],
- ['r', 'к'],
- ['t', 'е'],
- ['y', 'н'],
- ['u', 'г'],
- ['i', 'ш'],
- ['o', 'щ'],
- ['p', 'з'],
- ['\\[', 'х'],
- ['\\]', 'ъ'],
- ['a', 'ф'],
- ['s', 'ы'],
- ['d', 'в'],
- ['f', 'а'],
- ['g', 'п'],
- ['h', 'р'],
- ['j', 'о'],
- ['k', 'л'],
- ['l', 'д'],
- [';', 'ж'],
- ['\'', 'э'],
- ['z', 'я'],
- ['x', 'ч'],
- ['c', 'с'],
- ['v', 'м'],
- ['b', 'и'],
- ['n', 'т'],
- ['m', 'ь'],
- [',', 'б'],
- ['\\.', 'ю'],
- ['/', '.'],
+ [ 'q', 'й' ],
+ [ 'w', 'ц' ],
+ [ 'e', 'у' ],
+ [ 'r', 'к' ],
+ [ 't', 'е' ],
+ [ 'y', 'н' ],
+ [ 'u', 'г' ],
+ [ 'i', 'ш' ],
+ [ 'o', 'щ' ],
+ [ 'p', 'з' ],
+ [ '\\[', 'х' ],
+ [ '\\]', 'ъ' ],
+ [ 'a', 'ф' ],
+ [ 's', 'ы' ],
+ [ 'd', 'в' ],
+ [ 'f', 'а' ],
+ [ 'g', 'п' ],
+ [ 'h', 'р' ],
+ [ 'j', 'о' ],
+ [ 'k', 'л' ],
+ [ 'l', 'д' ],
+ [ ';', 'ж' ],
+ [ '\'', 'э' ],
+ [ 'z', 'я' ],
+ [ 'x', 'ч' ],
+ [ 'c', 'с' ],
+ [ 'v', 'м' ],
+ [ 'b', 'и' ],
+ [ 'n', 'т' ],
+ [ 'm', 'ь' ],
+ [ ',', 'б' ],
+ [ '\\.', 'ю' ],
+ [ '/', '.' ],
- ['`', 'ё'],
- ['~', 'Ё'],
+ [ '`', 'ё' ],
+ [ '~', 'Ё' ],
// ! is the same // 1
- ['@', '"'], // 2
- ['#', '№'], // 3
- ['\\$', ';'], // 4
+ [ '@', '"' ], // 2
+ [ '#', '№' ], // 3
+ [ '\\$', ';' ], // 4
// '%' is the same // 5
- ['^', ':'], // 6
- ['&', '?'] // 7
+ [ '^', ':' ], // 6
+ [ '&', '?' ] // 7
// '*', '(' and ')' are the same // 8, 9, 0
],
- //support both qwerty and jcuken keyboards
- patterns_x: [
- ['f|а', 'ӑ'],
- ['F|А', 'Ӑ'],
- ['t|е', 'ӗ'],
- ['T|Е', 'Ӗ'],
- ['c|с', 'ҫ'],
- ['C|С', 'Ҫ'],
- ['e|у', 'ӳ'],
- ['E|У', 'Ӳ']
- ]
+ // support both qwerty and jcuken keyboards
+ patterns_x: [
+ [ 'f|а', 'ӑ' ],
+ [ 'F|А', 'Ӑ' ],
+ [ 't|е', 'ӗ' ],
+ [ 'T|Е', 'Ӗ' ],
+ [ 'c|с', 'ҫ' ],
+ [ 'C|С', 'Ҫ' ],
+ [ 'e|у', 'ӳ' ],
+ [ 'E|У', 'Ӳ' ]
+ ]
};
$.ime.register( cv );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/cv/cv-cyr-numbers.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/cv/cv-cyr-numbers.js
index 91a57135..7a141624 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/cv/cv-cyr-numbers.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/cv/cv-cyr-numbers.js
@@ -18,93 +18,93 @@
license: 'MIT',
version: '1.0',
patterns: [
- ['Q', 'Й'],
- ['W', 'Ц'],
- ['E', 'У'],
- ['R', 'К'],
- ['T', 'Е'],
- ['Y', 'Н'],
- ['U', 'Г'],
- ['I', 'Ш'],
- ['O', 'Щ'],
- ['P', 'З'],
- ['{', 'Х'],
- ['}', 'Ъ'],
- ['A', 'Ф'],
- ['S', 'Ы'],
- ['D', 'В'],
- ['F', 'А'],
- ['G', 'П'],
- ['H', 'Р'],
- ['J', 'О'],
- ['K', 'Л'],
- ['L', 'Д'],
- [':', 'Ж'],
- ['"', 'Э'],
- ['Z', 'Я'],
- ['X', 'Ч'],
- ['C', 'С'],
- ['V', 'М'],
- ['B', 'И'],
- ['N', 'Т'],
- ['M', 'Ь'],
- ['<', 'Б'],
- ['>', 'Ю'],
- ['\\?', ','],
+ [ 'Q', 'Й' ],
+ [ 'W', 'Ц' ],
+ [ 'E', 'У' ],
+ [ 'R', 'К' ],
+ [ 'T', 'Е' ],
+ [ 'Y', 'Н' ],
+ [ 'U', 'Г' ],
+ [ 'I', 'Ш' ],
+ [ 'O', 'Щ' ],
+ [ 'P', 'З' ],
+ [ '{', 'Х' ],
+ [ '}', 'Ъ' ],
+ [ 'A', 'Ф' ],
+ [ 'S', 'Ы' ],
+ [ 'D', 'В' ],
+ [ 'F', 'А' ],
+ [ 'G', 'П' ],
+ [ 'H', 'Р' ],
+ [ 'J', 'О' ],
+ [ 'K', 'Л' ],
+ [ 'L', 'Д' ],
+ [ ':', 'Ж' ],
+ [ '"', 'Э' ],
+ [ 'Z', 'Я' ],
+ [ 'X', 'Ч' ],
+ [ 'C', 'С' ],
+ [ 'V', 'М' ],
+ [ 'B', 'И' ],
+ [ 'N', 'Т' ],
+ [ 'M', 'Ь' ],
+ [ '<', 'Б' ],
+ [ '>', 'Ю' ],
+ [ '\\?', ',' ],
- ['q', 'й'],
- ['w', 'ц'],
- ['e', 'у'],
- ['r', 'к'],
- ['t', 'е'],
- ['y', 'н'],
- ['u', 'г'],
- ['i', 'ш'],
- ['o', 'щ'],
- ['p', 'з'],
- ['\\[', 'х'],
- ['\\]', 'ъ'],
- ['a', 'ф'],
- ['s', 'ы'],
- ['d', 'в'],
- ['f', 'а'],
- ['g', 'п'],
- ['h', 'р'],
- ['j', 'о'],
- ['k', 'л'],
- ['l', 'д'],
- [';', 'ж'],
- ['\'', 'э'],
- ['z', 'я'],
- ['x', 'ч'],
- ['c', 'с'],
- ['v', 'м'],
- ['b', 'и'],
- ['n', 'т'],
- ['m', 'ь'],
- [',', 'б'],
- ['\\.', 'ю'],
- ['/', '.'],
+ [ 'q', 'й' ],
+ [ 'w', 'ц' ],
+ [ 'e', 'у' ],
+ [ 'r', 'к' ],
+ [ 't', 'е' ],
+ [ 'y', 'н' ],
+ [ 'u', 'г' ],
+ [ 'i', 'ш' ],
+ [ 'o', 'щ' ],
+ [ 'p', 'з' ],
+ [ '\\[', 'х' ],
+ [ '\\]', 'ъ' ],
+ [ 'a', 'ф' ],
+ [ 's', 'ы' ],
+ [ 'd', 'в' ],
+ [ 'f', 'а' ],
+ [ 'g', 'п' ],
+ [ 'h', 'р' ],
+ [ 'j', 'о' ],
+ [ 'k', 'л' ],
+ [ 'l', 'д' ],
+ [ ';', 'ж' ],
+ [ '\'', 'э' ],
+ [ 'z', 'я' ],
+ [ 'x', 'ч' ],
+ [ 'c', 'с' ],
+ [ 'v', 'м' ],
+ [ 'b', 'и' ],
+ [ 'n', 'т' ],
+ [ 'm', 'ь' ],
+ [ ',', 'б' ],
+ [ '\\.', 'ю' ],
+ [ '/', '.' ],
- ['`', 'ё'],
- ['~', 'Ё'],
- ['1', '?'], // 1
- ['2', '\''], // 2
- ['@', '"'], // 2
- ['3', 'ҫ'], // 3
- ['#|№', 'Ҫ'], // 3
- ['4', '|'], // 4
- ['\\$', ';'], // 4
- ['5', 'ӳ'], // 5
- ['%', 'Ӳ'], // 5
- ['6', '—'], // 6
- ['\\^', ':'], // 6
- ['7', 'ӗ'], // 7
- ['&|\\?', 'Ӗ'], // 7
- ['8', 'ӑ'], // 8
- ['\\*', 'Ӑ'], // 8
- ['9', '['], // 9
- ['0', ']'] // 0
+ [ '`', 'ё' ],
+ [ '~', 'Ё' ],
+ [ '1', '?' ], // 1
+ [ '2', '\'' ], // 2
+ [ '@', '"' ], // 2
+ [ '3', 'ҫ' ], // 3
+ [ '#|№', 'Ҫ' ], // 3
+ [ '4', '|' ], // 4
+ [ '\\$', ';' ], // 4
+ [ '5', 'ӳ' ], // 5
+ [ '%', 'Ӳ' ], // 5
+ [ '6', '—' ], // 6
+ [ '\\^', ':' ], // 6
+ [ '7', 'ӗ' ], // 7
+ [ '&|\\?', 'Ӗ' ], // 7
+ [ '8', 'ӑ' ], // 8
+ [ '\\*', 'Ӑ' ], // 8
+ [ '9', '[' ], // 9
+ [ '0', ']' ] // 0
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/cv/cv-lat-altgr.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/cv/cv-lat-altgr.js
index a225293e..da3f797c 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/cv/cv-lat-altgr.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/cv/cv-lat-altgr.js
@@ -16,16 +16,16 @@
license: 'MIT',
version: '1.0',
patterns_x: [
- ['a', 'ă'],
- ['A', 'Ă'],
- ['e', 'ĕ'],
- ['E', 'Ĕ'],
- ['s', 'ş'],
- ['S', 'Ş'],
- ['d|h', 'š'],
- ['D|H', 'Š'],
- ['w|u', 'ü'],
- ['W|U', 'Ü']
+ [ 'a', 'ă' ],
+ [ 'A', 'Ă' ],
+ [ 'e', 'ĕ' ],
+ [ 'E', 'Ĕ' ],
+ [ 's', 'ş' ],
+ [ 'S', 'Ş' ],
+ [ 'd|h', 'š' ],
+ [ 'D|H', 'Š' ],
+ [ 'w|u', 'ü' ],
+ [ 'W|U', 'Ü' ]
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/doi/doi-inscript2.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/doi/doi-inscript2.js
index 52f095fa..d5f76ff9 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/doi/doi-inscript2.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/doi/doi-inscript2.js
@@ -10,109 +10,109 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['1', '१'],
- ['2', '२'],
- ['\\#', '्र'],
- ['3', '३'],
- ['\\$', 'र्'],
- ['4', '४'],
- ['5', '५'],
- ['6', '६'],
- ['7', '७'],
- ['8', '८'],
- ['\\(', '('],
- ['9', '९'],
- ['\\]', ']'],
- ['0', '०'],
- ['\\_', 'ः'],
- ['\\-', '-'],
- ['\\+', 'ऋ'],
- ['\\=', 'ृ'],
- ['Q', 'औ'],
- ['q", "ौ'],
- ['W', 'ऐ'],
- ['w', 'ै'],
- ['E', 'आ'],
- ['e', 'ा'],
- ['R', 'ई'],
- ['r', 'ी'],
- ['T', 'ऊ'],
- ['t', 'ू'],
- ['Y', 'भ'],
- ['y', 'ब'],
- ['U', 'ङ'],
- ['u', 'ह'],
- ['I', 'घ'],
- ['i', 'ग'],
- ['O', 'ध'],
- ['o', 'द'],
- ['P', 'झ'],
- ['p', 'ज'],
- ['\\{', 'ढ'],
- ['\\[', 'ड'],
- ['\\}', 'ञ'],
- ['\\]', '़'],
- ['A', 'ओ'],
- ['a', 'ो'],
- ['S', 'ए'],
- ['s', 'े'],
- ['D', 'अ'],
- ['d', '्'],
- ['F', 'इ'],
- ['f', 'ि'],
- ['G', 'उ'],
- ['g', 'ु'],
- ['H', 'फ'],
- ['h', 'प'],
- ['j', 'र'],
- ['K', 'ख'],
- ['k', 'क'],
- ['L', 'थ'],
- ['l', 'त'],
- [':', 'छ'],
- [';', 'च'],
- ['\"', 'ठ'],
- ['\'', 'ट'],
- ['z', 'ʼ'],
- ['X', 'ँ'],
- ['C', 'ण'],
- ['c', 'म'],
- ['v', 'न'],
- ['b', 'व'],
- ['n', 'ल'],
- ['M', 'श'],
- ['m', 'स'],
- ['\\<', 'ष'],
- [',', ','],
- ['\\>', '।'],
- ['\\.', '.'],
- ['/', 'य'],
- ['\\%', 'ज्ञ'],
- ['\\^', 'त्र'],
- ['\\&', 'क्ष'],
- ['\\*', 'श्र']
+ [ '1', '१' ],
+ [ '2', '२' ],
+ [ '\\#', '्र' ],
+ [ '3', '३' ],
+ [ '\\$', 'र्' ],
+ [ '4', '४' ],
+ [ '5', '५' ],
+ [ '6', '६' ],
+ [ '7', '७' ],
+ [ '8', '८' ],
+ [ '\\(', '(' ],
+ [ '9', '९' ],
+ [ '\\]', ']' ],
+ [ '0', '०' ],
+ [ '\\_', 'ः' ],
+ [ '\\-', '-' ],
+ [ '\\+', 'ऋ' ],
+ [ '\\=', 'ृ' ],
+ [ 'Q', 'औ' ],
+ [ 'q", "ौ' ],
+ [ 'W', 'ऐ' ],
+ [ 'w', 'ै' ],
+ [ 'E', 'आ' ],
+ [ 'e', 'ा' ],
+ [ 'R', 'ई' ],
+ [ 'r', 'ी' ],
+ [ 'T', 'ऊ' ],
+ [ 't', 'ू' ],
+ [ 'Y', 'भ' ],
+ [ 'y', 'ब' ],
+ [ 'U', 'ङ' ],
+ [ 'u', 'ह' ],
+ [ 'I', 'घ' ],
+ [ 'i', 'ग' ],
+ [ 'O', 'ध' ],
+ [ 'o', 'द' ],
+ [ 'P', 'झ' ],
+ [ 'p', 'ज' ],
+ [ '\\{', 'ढ' ],
+ [ '\\[', 'ड' ],
+ [ '\\}', 'ञ' ],
+ [ '\\]', '़' ],
+ [ 'A', 'ओ' ],
+ [ 'a', 'ो' ],
+ [ 'S', 'ए' ],
+ [ 's', 'े' ],
+ [ 'D', 'अ' ],
+ [ 'd', '्' ],
+ [ 'F', 'इ' ],
+ [ 'f', 'ि' ],
+ [ 'G', 'उ' ],
+ [ 'g', 'ु' ],
+ [ 'H', 'फ' ],
+ [ 'h', 'प' ],
+ [ 'j', 'र' ],
+ [ 'K', 'ख' ],
+ [ 'k', 'क' ],
+ [ 'L', 'थ' ],
+ [ 'l', 'त' ],
+ [ ':', 'छ' ],
+ [ ';', 'च' ],
+ [ '\"', 'ठ' ],
+ [ '\'', 'ट' ],
+ [ 'z', 'ʼ' ],
+ [ 'X', 'ँ' ],
+ [ 'C', 'ण' ],
+ [ 'c', 'म' ],
+ [ 'v', 'न' ],
+ [ 'b', 'व' ],
+ [ 'n', 'ल' ],
+ [ 'M', 'श' ],
+ [ 'm', 'स' ],
+ [ '\\<', 'ष' ],
+ [ ',', ',' ],
+ [ '\\>', '।' ],
+ [ '\\.', '.' ],
+ [ '/', 'य' ],
+ [ '\\%', 'ज्ञ' ],
+ [ '\\^', 'त्र' ],
+ [ '\\&', 'क्ष' ],
+ [ '\\*', 'श्र' ]
],
patterns_x: [
- ['1', '\u200d'],
- ['2', '\u200c'],
- ['4', '₹'],
- ['\\+', 'ॠ'],
- ['\\=', 'ृ'],
- ['e', '॑'],
- ['i', 'ग़'],
- ['R', 'ॡ'],
- ['r', 'ॣ'],
- ['p', 'ज़'],
- ['\\{', 'ढ़'],
- ['\\[', 'ड़'],
- ['d', '॒'],
- ['F', 'ऌ'],
- ['f', 'ॢ'],
- ['H', 'फ़'],
- ['X', 'ॐ'],
- ['N', 'ळ'],
- ['\\>', 'ऽ'],
- ['\\.', '॥']]
+ [ '1', '\u200d' ],
+ [ '2', '\u200c' ],
+ [ '4', '₹' ],
+ [ '\\+', 'ॠ' ],
+ [ '\\=', 'ृ' ],
+ [ 'e', '॑' ],
+ [ 'i', 'ग़' ],
+ [ 'R', 'ॡ' ],
+ [ 'r', 'ॣ' ],
+ [ 'p', 'ज़' ],
+ [ '\\{', 'ढ़' ],
+ [ '\\[', 'ड़' ],
+ [ 'd', '॒' ],
+ [ 'F', 'ऌ' ],
+ [ 'f', 'ॢ' ],
+ [ 'H', 'फ़' ],
+ [ 'X', 'ॐ' ],
+ [ 'N', 'ळ' ],
+ [ '\\>', 'ऽ' ],
+ [ '\\.', '॥' ] ]
};
$.ime.register( doiInScript2 );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/el/el-kbd.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/el/el-kbd.js
index 13d042dc..63b30a6e 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/el/el-kbd.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/el/el-kbd.js
@@ -11,84 +11,84 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['΄¨i', 'ΐ'],
- ['¨΄i', 'ΐ'],
- ['΄¨y', 'ΰ'],
- ['¨΄y', 'ΰ'],
- ['¨i', 'ϊ'],
- ['¨y', 'ϋ'],
- ['¨I', 'Ϊ'],
- ['¨Y', 'Ϋ'],
- ['΄a', 'ά'],
- ['΄e', 'έ'],
- ['΄h', 'ή'],
- ['΄i', 'ί'],
- ['΄o', 'ό'],
- ['΄y', 'ύ'],
- ['΄v', 'ώ'],
- ['΄A', 'Ά'],
- ['΄E', 'Έ'],
- ['΄H', 'Ή'],
- ['΄I', 'Ί'],
- ['΄O', 'Ό'],
- ['΄Y', 'Ύ'],
- ['΄V', 'Ώ'],
- ['q', ';'],
- ['w', 'ς'],
- ['e', 'ε'],
- ['r', 'ρ'],
- ['t', 'τ'],
- ['y', 'υ'],
- ['u', 'θ'],
- ['i', 'ι'],
- ['o', 'ο'],
- ['p', 'π'],
- ['\\[', '['],
- ['\\]', ']'],
- ['a', 'α'],
- ['s', 'σ'],
- ['d', 'δ'],
- ['f', 'φ'],
- ['g', 'γ'],
- ['h', 'η'],
- ['j', 'ξ'],
- ['k', 'κ'],
- ['l', 'λ'],
- [';', '΄'],
- ['z', 'ζ'],
- ['x', 'χ'],
- ['c', 'ψ'],
- ['v', 'ω'],
- ['b', 'β'],
- ['n', 'ν'],
- ['m', 'μ'],
- ['Q', ':'],
- ['W', 'Σ'],
- ['E', 'Ε'],
- ['R', 'Ρ'],
- ['T', 'Τ'],
- ['Y', 'Υ'],
- ['U', 'Θ'],
- ['I', 'Ι'],
- ['O', 'Ο'],
- ['P', 'Π'],
- ['A', 'Α'],
- ['S', 'Σ'],
- ['D', 'Δ'],
- ['F', 'Φ'],
- ['G', 'Γ'],
- ['H', 'Η'],
- ['J', 'Ξ'],
- ['K', 'Κ'],
- ['L', 'Λ'],
- [':', '¨'],
- ['Z', 'Ζ'],
- ['X', 'Χ'],
- ['C', 'Ψ'],
- ['V', 'Ω'],
- ['B', 'Β'],
- ['N', 'Ν'],
- ['M', 'Μ']]
+ [ '΄¨i', 'ΐ' ],
+ [ '¨΄i', 'ΐ' ],
+ [ '΄¨y', 'ΰ' ],
+ [ '¨΄y', 'ΰ' ],
+ [ '¨i', 'ϊ' ],
+ [ '¨y', 'ϋ' ],
+ [ '¨I', 'Ϊ' ],
+ [ '¨Y', 'Ϋ' ],
+ [ '΄a', 'ά' ],
+ [ '΄e', 'έ' ],
+ [ '΄h', 'ή' ],
+ [ '΄i', 'ί' ],
+ [ '΄o', 'ό' ],
+ [ '΄y', 'ύ' ],
+ [ '΄v', 'ώ' ],
+ [ '΄A', 'Ά' ],
+ [ '΄E', 'Έ' ],
+ [ '΄H', 'Ή' ],
+ [ '΄I', 'Ί' ],
+ [ '΄O', 'Ό' ],
+ [ '΄Y', 'Ύ' ],
+ [ '΄V', 'Ώ' ],
+ [ 'q', ';' ],
+ [ 'w', 'ς' ],
+ [ 'e', 'ε' ],
+ [ 'r', 'ρ' ],
+ [ 't', 'τ' ],
+ [ 'y', 'υ' ],
+ [ 'u', 'θ' ],
+ [ 'i', 'ι' ],
+ [ 'o', 'ο' ],
+ [ 'p', 'π' ],
+ [ '\\[', '[' ],
+ [ '\\]', ']' ],
+ [ 'a', 'α' ],
+ [ 's', 'σ' ],
+ [ 'd', 'δ' ],
+ [ 'f', 'φ' ],
+ [ 'g', 'γ' ],
+ [ 'h', 'η' ],
+ [ 'j', 'ξ' ],
+ [ 'k', 'κ' ],
+ [ 'l', 'λ' ],
+ [ ';', '΄' ],
+ [ 'z', 'ζ' ],
+ [ 'x', 'χ' ],
+ [ 'c', 'ψ' ],
+ [ 'v', 'ω' ],
+ [ 'b', 'β' ],
+ [ 'n', 'ν' ],
+ [ 'm', 'μ' ],
+ [ 'Q', ':' ],
+ [ 'W', 'Σ' ],
+ [ 'E', 'Ε' ],
+ [ 'R', 'Ρ' ],
+ [ 'T', 'Τ' ],
+ [ 'Y', 'Υ' ],
+ [ 'U', 'Θ' ],
+ [ 'I', 'Ι' ],
+ [ 'O', 'Ο' ],
+ [ 'P', 'Π' ],
+ [ 'A', 'Α' ],
+ [ 'S', 'Σ' ],
+ [ 'D', 'Δ' ],
+ [ 'F', 'Φ' ],
+ [ 'G', 'Γ' ],
+ [ 'H', 'Η' ],
+ [ 'J', 'Ξ' ],
+ [ 'K', 'Κ' ],
+ [ 'L', 'Λ' ],
+ [ ':', '¨' ],
+ [ 'Z', 'Ζ' ],
+ [ 'X', 'Χ' ],
+ [ 'C', 'Ψ' ],
+ [ 'V', 'Ω' ],
+ [ 'B', 'Β' ],
+ [ 'N', 'Ν' ],
+ [ 'M', 'Μ' ] ]
};
$.ime.register( elKbd );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-h-f.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-h-f.js
index cecf1ae5..0098b476 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-h-f.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-h-f.js
@@ -11,48 +11,48 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['ĉh', 'ch'],
- ['ĝh', 'gh'],
- ['ĥh', 'hh'],
- ['ĵh', 'jh'],
- ['ŝh', 'sh'],
- ['aŭu', 'au'],
- ['eŭu', 'eu'],
- ['Ĉh', 'Ch'],
- ['Ĝh', 'Gh'],
- ['Ĥh', 'Hh'],
- ['Ĵh', 'Jh'],
- ['Ŝh', 'Sh'],
- ['Aŭu', 'Au'],
- ['Eŭu', 'Eu'],
- ['ĈH', 'CH'],
- ['ĜH', 'GH'],
- ['ĤH', 'HH'],
- ['ĴH', 'JH'],
- ['ŜH', 'SH'],
- ['AŬU', 'AU'],
- ['EŬU', 'EU'],
- ['ch', 'ĉ'],
- ['gh', 'ĝ'],
- ['hh', 'ĥ'],
- ['jh', 'ĵ'],
- ['sh', 'ŝ'],
- ['au', 'aŭ'],
- ['eu', 'eŭ'],
- ['Ch', 'Ĉ'],
- ['Gh', 'Ĝ'],
- ['Hh', 'Ĥ'],
- ['Jh', 'Ĵ'],
- ['Sh', 'Ŝ'],
- ['Au', 'Aŭ'],
- ['Eu', 'Eŭ'],
- ['CH', 'Ĉ'],
- ['GH', 'Ĝ'],
- ['HH', 'Ĥ'],
- ['JH', 'Ĵ'],
- ['SH', 'Ŝ'],
- ['AU', 'AŬ'],
- ['EU', 'EŬ']]
+ [ 'ĉh', 'ch' ],
+ [ 'ĝh', 'gh' ],
+ [ 'ĥh', 'hh' ],
+ [ 'ĵh', 'jh' ],
+ [ 'ŝh', 'sh' ],
+ [ 'aŭu', 'au' ],
+ [ 'eŭu', 'eu' ],
+ [ 'Ĉh', 'Ch' ],
+ [ 'Ĝh', 'Gh' ],
+ [ 'Ĥh', 'Hh' ],
+ [ 'Ĵh', 'Jh' ],
+ [ 'Ŝh', 'Sh' ],
+ [ 'Aŭu', 'Au' ],
+ [ 'Eŭu', 'Eu' ],
+ [ 'ĈH', 'CH' ],
+ [ 'ĜH', 'GH' ],
+ [ 'ĤH', 'HH' ],
+ [ 'ĴH', 'JH' ],
+ [ 'ŜH', 'SH' ],
+ [ 'AŬU', 'AU' ],
+ [ 'EŬU', 'EU' ],
+ [ 'ch', 'ĉ' ],
+ [ 'gh', 'ĝ' ],
+ [ 'hh', 'ĥ' ],
+ [ 'jh', 'ĵ' ],
+ [ 'sh', 'ŝ' ],
+ [ 'au', 'aŭ' ],
+ [ 'eu', 'eŭ' ],
+ [ 'Ch', 'Ĉ' ],
+ [ 'Gh', 'Ĝ' ],
+ [ 'Hh', 'Ĥ' ],
+ [ 'Jh', 'Ĵ' ],
+ [ 'Sh', 'Ŝ' ],
+ [ 'Au', 'Aŭ' ],
+ [ 'Eu', 'Eŭ' ],
+ [ 'CH', 'Ĉ' ],
+ [ 'GH', 'Ĝ' ],
+ [ 'HH', 'Ĥ' ],
+ [ 'JH', 'Ĵ' ],
+ [ 'SH', 'Ŝ' ],
+ [ 'AU', 'AŬ' ],
+ [ 'EU', 'EŬ' ] ]
};
$.ime.register( eoHF );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-h.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-h.js
index 0fe4b898..fe6dcabf 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-h.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-h.js
@@ -11,43 +11,43 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['ĉh', 'ch'],
- ['ĝh', 'gh'],
- ['ĥh', 'hh'],
- ['ĵh', 'jh'],
- ['ŝh', 'sh'],
- ['ŭh', 'uh'],
- ['Ĉh', 'Ch'],
- ['Ĝh', 'Gh'],
- ['Ĥh', 'Hh'],
- ['Ĵh', 'Jh'],
- ['Ŝh', 'Sh'],
- ['Ŭh', 'Uh'],
- ['ĈH', 'CH'],
- ['ĜH', 'GH'],
- ['ĤH', 'HH'],
- ['ĴH', 'JH'],
- ['ŜH', 'SH'],
- ['ŬH', 'UH'],
+ [ 'ĉh', 'ch' ],
+ [ 'ĝh', 'gh' ],
+ [ 'ĥh', 'hh' ],
+ [ 'ĵh', 'jh' ],
+ [ 'ŝh', 'sh' ],
+ [ 'ŭh', 'uh' ],
+ [ 'Ĉh', 'Ch' ],
+ [ 'Ĝh', 'Gh' ],
+ [ 'Ĥh', 'Hh' ],
+ [ 'Ĵh', 'Jh' ],
+ [ 'Ŝh', 'Sh' ],
+ [ 'Ŭh', 'Uh' ],
+ [ 'ĈH', 'CH' ],
+ [ 'ĜH', 'GH' ],
+ [ 'ĤH', 'HH' ],
+ [ 'ĴH', 'JH' ],
+ [ 'ŜH', 'SH' ],
+ [ 'ŬH', 'UH' ],
- ['ch', 'ĉ'],
- ['gh', 'ĝ'],
- ['hh', 'ĥ'],
- ['jh', 'ĵ'],
- ['sh', 'ŝ'],
- ['uh', 'ŭ'],
- ['Ch', 'Ĉ'],
- ['Gh', 'Ĝ'],
- ['Hh', 'Ĥ'],
- ['Jh', 'Ĵ'],
- ['Sh', 'Ŝ'],
- ['Uh', 'Ŭ'],
- ['CH', 'Ĉ'],
- ['GH', 'Ĝ'],
- ['HH', 'Ĥ'],
- ['JH', 'Ĵ'],
- ['SH', 'Ŝ'],
- ['UH', 'Ŭ']]
+ [ 'ch', 'ĉ' ],
+ [ 'gh', 'ĝ' ],
+ [ 'hh', 'ĥ' ],
+ [ 'jh', 'ĵ' ],
+ [ 'sh', 'ŝ' ],
+ [ 'uh', 'ŭ' ],
+ [ 'Ch', 'Ĉ' ],
+ [ 'Gh', 'Ĝ' ],
+ [ 'Hh', 'Ĥ' ],
+ [ 'Jh', 'Ĵ' ],
+ [ 'Sh', 'Ŝ' ],
+ [ 'Uh', 'Ŭ' ],
+ [ 'CH', 'Ĉ' ],
+ [ 'GH', 'Ĝ' ],
+ [ 'HH', 'Ĥ' ],
+ [ 'JH', 'Ĵ' ],
+ [ 'SH', 'Ŝ' ],
+ [ 'UH', 'Ŭ' ] ]
};
$.ime.register( eoH );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-plena.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-plena.js
index d0b529b2..8fe67a6c 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-plena.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-plena.js
@@ -11,87 +11,87 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['ĉx', 'cx'],
- ['ĝx', 'gx'],
- ['ĥx', 'hx'],
- ['ĵx', 'jx'],
- ['ŝx', 'sx'],
- ['ŭx', 'ux'],
- ['Ĉx', 'Cx'],
- ['Ĝx', 'Gx'],
- ['Ĥx', 'Hx'],
- ['Ĵx', 'Jx'],
- ['Ŝx', 'Sx'],
- ['Ŭx', 'Ux'],
- ['ĈX', 'CX'],
- ['ĜX', 'GX'],
- ['ĤX', 'HX'],
- ['ĴX', 'JX'],
- ['ŜX', 'SX'],
- ['ŬX', 'UX'],
+ [ 'ĉx', 'cx' ],
+ [ 'ĝx', 'gx' ],
+ [ 'ĥx', 'hx' ],
+ [ 'ĵx', 'jx' ],
+ [ 'ŝx', 'sx' ],
+ [ 'ŭx', 'ux' ],
+ [ 'Ĉx', 'Cx' ],
+ [ 'Ĝx', 'Gx' ],
+ [ 'Ĥx', 'Hx' ],
+ [ 'Ĵx', 'Jx' ],
+ [ 'Ŝx', 'Sx' ],
+ [ 'Ŭx', 'Ux' ],
+ [ 'ĈX', 'CX' ],
+ [ 'ĜX', 'GX' ],
+ [ 'ĤX', 'HX' ],
+ [ 'ĴX', 'JX' ],
+ [ 'ŜX', 'SX' ],
+ [ 'ŬX', 'UX' ],
- ['ĉh', 'ch'],
- ['ĝh', 'gh'],
- ['ĥh', 'hh'],
- ['ĵh', 'jh'],
- ['ŝh', 'sh'],
- ['aŭu', 'au'],
- ['eŭu', 'eu'],
- ['Ĉh', 'Ch'],
- ['Ĝh', 'Gh'],
- ['Ĥh', 'Hh'],
- ['Ĵh', 'Jh'],
- ['Ŝh', 'Sh'],
- ['Aŭu', 'Au'],
- ['Eŭu', 'Eu'],
- ['ĈH', 'CH'],
- ['ĜH', 'GH'],
- ['ĤH', 'HH'],
- ['ĴH', 'JH'],
- ['ŜH', 'SH'],
- ['AŬU', 'AU'],
- ['EŬU', 'EU'],
+ [ 'ĉh', 'ch' ],
+ [ 'ĝh', 'gh' ],
+ [ 'ĥh', 'hh' ],
+ [ 'ĵh', 'jh' ],
+ [ 'ŝh', 'sh' ],
+ [ 'aŭu', 'au' ],
+ [ 'eŭu', 'eu' ],
+ [ 'Ĉh', 'Ch' ],
+ [ 'Ĝh', 'Gh' ],
+ [ 'Ĥh', 'Hh' ],
+ [ 'Ĵh', 'Jh' ],
+ [ 'Ŝh', 'Sh' ],
+ [ 'Aŭu', 'Au' ],
+ [ 'Eŭu', 'Eu' ],
+ [ 'ĈH', 'CH' ],
+ [ 'ĜH', 'GH' ],
+ [ 'ĤH', 'HH' ],
+ [ 'ĴH', 'JH' ],
+ [ 'ŜH', 'SH' ],
+ [ 'AŬU', 'AU' ],
+ [ 'EŬU', 'EU' ],
- ['cx', 'ĉ'],
- ['gx', 'ĝ'],
- ['hx', 'ĥ'],
- ['jx', 'ĵ'],
- ['sx', 'ŝ'],
- ['ux', 'ŭ'],
- ['Cx', 'Ĉ'],
- ['Gx', 'Ĝ'],
- ['Hx', 'Ĥ'],
- ['Jx', 'Ĵ'],
- ['Sx', 'Ŝ'],
- ['Ux', 'Ŭ'],
- ['CX', 'Ĉ'],
- ['GX', 'Ĝ'],
- ['HX', 'Ĥ'],
- ['JX', 'Ĵ'],
- ['SX', 'Ŝ'],
- ['UX', 'Ŭ'],
+ [ 'cx', 'ĉ' ],
+ [ 'gx', 'ĝ' ],
+ [ 'hx', 'ĥ' ],
+ [ 'jx', 'ĵ' ],
+ [ 'sx', 'ŝ' ],
+ [ 'ux', 'ŭ' ],
+ [ 'Cx', 'Ĉ' ],
+ [ 'Gx', 'Ĝ' ],
+ [ 'Hx', 'Ĥ' ],
+ [ 'Jx', 'Ĵ' ],
+ [ 'Sx', 'Ŝ' ],
+ [ 'Ux', 'Ŭ' ],
+ [ 'CX', 'Ĉ' ],
+ [ 'GX', 'Ĝ' ],
+ [ 'HX', 'Ĥ' ],
+ [ 'JX', 'Ĵ' ],
+ [ 'SX', 'Ŝ' ],
+ [ 'UX', 'Ŭ' ],
- ['ch', 'ĉ'],
- ['gh', 'ĝ'],
- ['hh', 'ĥ'],
- ['jh', 'ĵ'],
- ['sh', 'ŝ'],
- ['au', 'aŭ'],
- ['eu', 'eŭ'],
- ['Ch', 'Ĉ'],
- ['Gh', 'Ĝ'],
- ['Hh', 'Ĥ'],
- ['Jh', 'Ĵ'],
- ['Sh', 'Ŝ'],
- ['Au', 'Aŭ'],
- ['Eu', 'Eŭ'],
- ['CH', 'Ĉ'],
- ['GH', 'Ĝ'],
- ['HH', 'Ĥ'],
- ['JH', 'Ĵ'],
- ['SH', 'Ŝ'],
- ['AU', 'AŬ'],
- ['EU', 'EŬ']
+ [ 'ch', 'ĉ' ],
+ [ 'gh', 'ĝ' ],
+ [ 'hh', 'ĥ' ],
+ [ 'jh', 'ĵ' ],
+ [ 'sh', 'ŝ' ],
+ [ 'au', 'aŭ' ],
+ [ 'eu', 'eŭ' ],
+ [ 'Ch', 'Ĉ' ],
+ [ 'Gh', 'Ĝ' ],
+ [ 'Hh', 'Ĥ' ],
+ [ 'Jh', 'Ĵ' ],
+ [ 'Sh', 'Ŝ' ],
+ [ 'Au', 'Aŭ' ],
+ [ 'Eu', 'Eŭ' ],
+ [ 'CH', 'Ĉ' ],
+ [ 'GH', 'Ĝ' ],
+ [ 'HH', 'Ĥ' ],
+ [ 'JH', 'Ĵ' ],
+ [ 'SH', 'Ŝ' ],
+ [ 'AU', 'AŬ' ],
+ [ 'EU', 'EŬ' ]
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-q.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-q.js
index 978cdaaf..df721a5f 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-q.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-q.js
@@ -11,45 +11,45 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['ĉq', 'cq'],
- ['ĝq', 'gq'],
- ['ĥq', 'hq'],
- ['ĵq', 'jq'],
- ['ŝq', 'sq'],
- ['ŭq', 'uq'],
- ['Ĉq', 'Cq'],
- ['Ĝq', 'Gq'],
- ['Ĥq', 'Hq'],
- ['Ĵq', 'Jq'],
- ['Ŝq', 'Sq'],
- ['Ŭq', 'Uq'],
- ['ĈQ', 'CQ'],
- ['ĜQ', 'GQ'],
- ['ĤQ', 'HQ'],
- ['ĴQ', 'JQ'],
- ['ŜQ', 'SQ'],
- ['ŬQ', 'UQ'],
+ [ 'ĉq', 'cq' ],
+ [ 'ĝq', 'gq' ],
+ [ 'ĥq', 'hq' ],
+ [ 'ĵq', 'jq' ],
+ [ 'ŝq', 'sq' ],
+ [ 'ŭq', 'uq' ],
+ [ 'Ĉq', 'Cq' ],
+ [ 'Ĝq', 'Gq' ],
+ [ 'Ĥq', 'Hq' ],
+ [ 'Ĵq', 'Jq' ],
+ [ 'Ŝq', 'Sq' ],
+ [ 'Ŭq', 'Uq' ],
+ [ 'ĈQ', 'CQ' ],
+ [ 'ĜQ', 'GQ' ],
+ [ 'ĤQ', 'HQ' ],
+ [ 'ĴQ', 'JQ' ],
+ [ 'ŜQ', 'SQ' ],
+ [ 'ŬQ', 'UQ' ],
- ['cq', 'ĉ'],
- ['gq', 'ĝ'],
- ['hq', 'ĥ'],
- ['jq', 'ĵ'],
- ['sq', 'ŝ'],
- ['uq', 'ŭ'],
- ['Cq', 'Ĉ'],
- ['Gq', 'Ĝ'],
- ['Hq', 'Ĥ'],
- ['Jq', 'Ĵ'],
- ['Sq', 'Ŝ'],
- ['Uq', 'Ŭ'],
- ['CQ', 'Ĉ'],
- ['GQ', 'Ĝ'],
- ['HQ', 'Ĥ'],
- ['JQ', 'Ĵ'],
- ['SQ', 'Ŝ'],
- ['UQ', 'Ŭ']]
+ [ 'cq', 'ĉ' ],
+ [ 'gq', 'ĝ' ],
+ [ 'hq', 'ĥ' ],
+ [ 'jq', 'ĵ' ],
+ [ 'sq', 'ŝ' ],
+ [ 'uq', 'ŭ' ],
+ [ 'Cq', 'Ĉ' ],
+ [ 'Gq', 'Ĝ' ],
+ [ 'Hq', 'Ĥ' ],
+ [ 'Jq', 'Ĵ' ],
+ [ 'Sq', 'Ŝ' ],
+ [ 'Uq', 'Ŭ' ],
+ [ 'CQ', 'Ĉ' ],
+ [ 'GQ', 'Ĝ' ],
+ [ 'HQ', 'Ĥ' ],
+ [ 'JQ', 'Ĵ' ],
+ [ 'SQ', 'Ŝ' ],
+ [ 'UQ', 'Ŭ' ] ]
};
- $.ime.register( eoQ);
+ $.ime.register( eoQ );
}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-transliteration.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-transliteration.js
index fa82fd66..0a1e4862 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-transliteration.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-transliteration.js
@@ -1,8 +1,9 @@
( function ( $ ) {
'use strict';
- function prepareRules () {
- var rules = [], chars;
+ function prepareRules() {
+ var rules = [],
+ chars;
chars = {
C: 'Ĉ',
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-vi.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-vi.js
index b1d0586e..ce521b61 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-vi.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-vi.js
@@ -11,54 +11,54 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['ĉc', 'cc'],
- ['ĝg', 'gg'],
- ['ĥh', 'hh'],
- ['ĵj', 'jj'],
- ['ŝs', 'ss'],
- ['ŭu', 'uu'],
- ['Ĉc', 'Cc'],
- ['Ĝg', 'Gg'],
- ['Ĥh', 'Hh'],
- ['Ĵj', 'Jj'],
- ['Ŝs', 'Ss'],
- ['Ŭu', 'Uu'],
- ['aŭu', 'au'],
- ['eŭu', 'eu'],
- ['Aŭu', 'Au'],
- ['Eŭu', 'Eu'],
- ['AŬU', 'AU'],
- ['EŬU', 'EU'],
- ['ĈC', 'CC'],
- ['ĜG', 'GG'],
- ['ĤH', 'HH'],
- ['ĴJ', 'JJ'],
- ['ŜS', 'SS'],
- ['ŬU', 'UU'],
- ['cc', 'ĉ'],
- ['gg', 'ĝ'],
- ['hh', 'ĥ'],
- ['jj', 'ĵ'],
- ['ss', 'ŝ'],
- ['uu', 'ŭ'],
- ['au', 'aŭ'],
- ['eu', 'eŭ'],
- ['Cc', 'Ĉ'],
- ['Gg', 'Ĝ'],
- ['Hh', 'Ĥ'],
- ['Jj', 'Ĵ'],
- ['Ss', 'Ŝ'],
- ['Uu', 'Ŭ'],
- ['Au', 'Aŭ'],
- ['Eu', 'Eŭ'],
- ['AU', 'AŬ'],
- ['EU', 'EŬ'],
- ['CC', 'Ĉ'],
- ['GG', 'Ĝ'],
- ['HH', 'Ĥ'],
- ['JJ', 'Ĵ'],
- ['SS', 'Ŝ'],
- ['UU', 'Ŭ']]
+ [ 'ĉc', 'cc' ],
+ [ 'ĝg', 'gg' ],
+ [ 'ĥh', 'hh' ],
+ [ 'ĵj', 'jj' ],
+ [ 'ŝs', 'ss' ],
+ [ 'ŭu', 'uu' ],
+ [ 'Ĉc', 'Cc' ],
+ [ 'Ĝg', 'Gg' ],
+ [ 'Ĥh', 'Hh' ],
+ [ 'Ĵj', 'Jj' ],
+ [ 'Ŝs', 'Ss' ],
+ [ 'Ŭu', 'Uu' ],
+ [ 'aŭu', 'au' ],
+ [ 'eŭu', 'eu' ],
+ [ 'Aŭu', 'Au' ],
+ [ 'Eŭu', 'Eu' ],
+ [ 'AŬU', 'AU' ],
+ [ 'EŬU', 'EU' ],
+ [ 'ĈC', 'CC' ],
+ [ 'ĜG', 'GG' ],
+ [ 'ĤH', 'HH' ],
+ [ 'ĴJ', 'JJ' ],
+ [ 'ŜS', 'SS' ],
+ [ 'ŬU', 'UU' ],
+ [ 'cc', 'ĉ' ],
+ [ 'gg', 'ĝ' ],
+ [ 'hh', 'ĥ' ],
+ [ 'jj', 'ĵ' ],
+ [ 'ss', 'ŝ' ],
+ [ 'uu', 'ŭ' ],
+ [ 'au', 'aŭ' ],
+ [ 'eu', 'eŭ' ],
+ [ 'Cc', 'Ĉ' ],
+ [ 'Gg', 'Ĝ' ],
+ [ 'Hh', 'Ĥ' ],
+ [ 'Jj', 'Ĵ' ],
+ [ 'Ss', 'Ŝ' ],
+ [ 'Uu', 'Ŭ' ],
+ [ 'Au', 'Aŭ' ],
+ [ 'Eu', 'Eŭ' ],
+ [ 'AU', 'AŬ' ],
+ [ 'EU', 'EŬ' ],
+ [ 'CC', 'Ĉ' ],
+ [ 'GG', 'Ĝ' ],
+ [ 'HH', 'Ĥ' ],
+ [ 'JJ', 'Ĵ' ],
+ [ 'SS', 'Ŝ' ],
+ [ 'UU', 'Ŭ' ] ]
};
$.ime.register( eoVi );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-x.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-x.js
index 3d7c96ef..7295be3e 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-x.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-x.js
@@ -11,42 +11,42 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['ĉx', 'cx'],
- ['ĝx', 'gx'],
- ['ĥx', 'hx'],
- ['ĵx', 'jx'],
- ['ŝx', 'sx'],
- ['ŭx', 'ux'],
- ['Ĉx', 'Cx'],
- ['Ĝx', 'Gx'],
- ['Ĥx', 'Hx'],
- ['Ĵx', 'Jx'],
- ['Ŝx', 'Sx'],
- ['Ŭx', 'Ux'],
- ['ĈX', 'CX'],
- ['ĜX', 'GX'],
- ['ĤX', 'HX'],
- ['ĴX', 'JX'],
- ['ŜX', 'SX'],
- ['ŬX', 'UX'],
- ['cx', 'ĉ'],
- ['gx', 'ĝ'],
- ['hx', 'ĥ'],
- ['jx', 'ĵ'],
- ['sx', 'ŝ'],
- ['ux', 'ŭ'],
- ['Cx', 'Ĉ'],
- ['Gx', 'Ĝ'],
- ['Hx', 'Ĥ'],
- ['Jx', 'Ĵ'],
- ['Sx', 'Ŝ'],
- ['Ux', 'Ŭ'],
- ['CX', 'Ĉ'],
- ['GX', 'Ĝ'],
- ['HX', 'Ĥ'],
- ['JX', 'Ĵ'],
- ['SX', 'Ŝ'],
- ['UX', 'Ŭ']]
+ [ 'ĉx', 'cx' ],
+ [ 'ĝx', 'gx' ],
+ [ 'ĥx', 'hx' ],
+ [ 'ĵx', 'jx' ],
+ [ 'ŝx', 'sx' ],
+ [ 'ŭx', 'ux' ],
+ [ 'Ĉx', 'Cx' ],
+ [ 'Ĝx', 'Gx' ],
+ [ 'Ĥx', 'Hx' ],
+ [ 'Ĵx', 'Jx' ],
+ [ 'Ŝx', 'Sx' ],
+ [ 'Ŭx', 'Ux' ],
+ [ 'ĈX', 'CX' ],
+ [ 'ĜX', 'GX' ],
+ [ 'ĤX', 'HX' ],
+ [ 'ĴX', 'JX' ],
+ [ 'ŜX', 'SX' ],
+ [ 'ŬX', 'UX' ],
+ [ 'cx', 'ĉ' ],
+ [ 'gx', 'ĝ' ],
+ [ 'hx', 'ĥ' ],
+ [ 'jx', 'ĵ' ],
+ [ 'sx', 'ŝ' ],
+ [ 'ux', 'ŭ' ],
+ [ 'Cx', 'Ĉ' ],
+ [ 'Gx', 'Ĝ' ],
+ [ 'Hx', 'Ĥ' ],
+ [ 'Jx', 'Ĵ' ],
+ [ 'Sx', 'Ŝ' ],
+ [ 'Ux', 'Ŭ' ],
+ [ 'CX', 'Ĉ' ],
+ [ 'GX', 'Ĝ' ],
+ [ 'HX', 'Ĥ' ],
+ [ 'JX', 'Ĵ' ],
+ [ 'SX', 'Ŝ' ],
+ [ 'UX', 'Ŭ' ] ]
};
$.ime.register( eoX );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/fa/fa-kbd.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/fa/fa-kbd.js
index d0421377..6ebe3504 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/fa/fa-kbd.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/fa/fa-kbd.js
@@ -11,155 +11,155 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['`', '\u200d'],
- ['1', '۱'],
- ['2', '۲'],
- ['3', '۳'],
- ['4', '۴'],
- ['5', '۵'],
- ['6', '۶'],
- ['7', '۷'],
- ['8', '۸'],
- ['9', '۹'],
- ['0', '۰'],
+ [ '`', '\u200d' ],
+ [ '1', '۱' ],
+ [ '2', '۲' ],
+ [ '3', '۳' ],
+ [ '4', '۴' ],
+ [ '5', '۵' ],
+ [ '6', '۶' ],
+ [ '7', '۷' ],
+ [ '8', '۸' ],
+ [ '9', '۹' ],
+ [ '0', '۰' ],
- ['q', 'ض'],
- ['w', 'ص'],
- ['e', 'ث'],
- ['r', 'ق'],
- ['t', 'ف'],
- ['y', 'غ'],
- ['u', 'ع'],
- ['i', 'ه'],
- ['o', 'خ'],
- ['p', 'ح'],
- ['\\[', 'ج'],
- ['\\]', 'چ'],
+ [ 'q', 'ض' ],
+ [ 'w', 'ص' ],
+ [ 'e', 'ث' ],
+ [ 'r', 'ق' ],
+ [ 't', 'ف' ],
+ [ 'y', 'غ' ],
+ [ 'u', 'ع' ],
+ [ 'i', 'ه' ],
+ [ 'o', 'خ' ],
+ [ 'p', 'ح' ],
+ [ '\\[', 'ج' ],
+ [ '\\]', 'چ' ],
- ['a', 'ش'],
- ['s', 'س'],
- ['d', 'ی'],
- ['f', 'ب'],
- ['g', 'ل'],
- ['h', 'ا'],
- ['j', 'ت'],
- ['k', 'ن'],
- ['l', 'م'],
- [';', 'ک'],
- ['\'', 'گ'],
+ [ 'a', 'ش' ],
+ [ 's', 'س' ],
+ [ 'd', 'ی' ],
+ [ 'f', 'ب' ],
+ [ 'g', 'ل' ],
+ [ 'h', 'ا' ],
+ [ 'j', 'ت' ],
+ [ 'k', 'ن' ],
+ [ 'l', 'م' ],
+ [ ';', 'ک' ],
+ [ '\'', 'گ' ],
- ['z', 'ظ'],
- ['x', 'ط'],
- ['c', 'ز'],
- ['v', 'ر'],
- ['b', 'ذ'],
- ['n', 'د'],
- ['m', 'پ'],
- [',', 'و'],
- ['\\.', '.'],
- ['/', '/'],
+ [ 'z', 'ظ' ],
+ [ 'x', 'ط' ],
+ [ 'c', 'ز' ],
+ [ 'v', 'ر' ],
+ [ 'b', 'ذ' ],
+ [ 'n', 'د' ],
+ [ 'm', 'پ' ],
+ [ ',', 'و' ],
+ [ '\\.', '.' ],
+ [ '/', '/' ],
- ['~', '÷'],
- ['\\!', '!'],
- ['@', '٬'],
- ['#', '٫'],
- ['\\$', '﷼'],
- ['%', '٪'],
- ['\\^', '×'],
- ['&', '،'],
- ['\\*', '*'],
- ['\\(', ')'],
- ['\\)', '('],
- ['_', 'ـ'],
+ [ '~', '÷' ],
+ [ '\\!', '!' ],
+ [ '@', '٬' ],
+ [ '#', '٫' ],
+ [ '\\$', '﷼' ],
+ [ '%', '٪' ],
+ [ '\\^', '×' ],
+ [ '&', '،' ],
+ [ '\\*', '*' ],
+ [ '\\(', ')' ],
+ [ '\\)', '(' ],
+ [ '_', 'ـ' ],
- ['Q', 'ْ'],
- ['W', 'ٌ'],
- ['E', 'ٍ'],
- ['R', 'ً'],
- ['T', 'ُ'],
- ['Y', 'ِ'],
- ['U', 'َ'],
- ['I', 'ّ'],
- ['O', ']'],
- ['P', '['],
- ['\\{', '}'],
- ['\\}', '{'],
+ [ 'Q', 'ْ' ],
+ [ 'W', 'ٌ' ],
+ [ 'E', 'ٍ' ],
+ [ 'R', 'ً' ],
+ [ 'T', 'ُ' ],
+ [ 'Y', 'ِ' ],
+ [ 'U', 'َ' ],
+ [ 'I', 'ّ' ],
+ [ 'O', ']' ],
+ [ 'P', '[' ],
+ [ '\\{', '}' ],
+ [ '\\}', '{' ],
- ['A', 'ؤ'],
- ['S', 'ئ'],
- ['D', 'ي'],
- ['F', 'إ'],
- ['G', 'أ'],
- ['H', 'آ'],
- ['J', 'ة'],
- ['K', '»'],
- ['L', '«'],
- ['\\:', ':'],
- ['"', '؛'],
+ [ 'A', 'ؤ' ],
+ [ 'S', 'ئ' ],
+ [ 'D', 'ي' ],
+ [ 'F', 'إ' ],
+ [ 'G', 'أ' ],
+ [ 'H', 'آ' ],
+ [ 'J', 'ة' ],
+ [ 'K', '»' ],
+ [ 'L', '«' ],
+ [ '\\:', ':' ],
+ [ '"', '؛' ],
- ['Z', 'ك'],
- ['X', 'ٓ'],
- ['C', 'ژ'],
- ['V', 'ٰ'],
- ['B', '\u200c'],
- ['N', 'ٔ'],
- ['M', 'ء'],
- ['<', '>'],
- ['>', '<'],
- ['\\?', '؟']
+ [ 'Z', 'ك' ],
+ [ 'X', 'ٓ' ],
+ [ 'C', 'ژ' ],
+ [ 'V', 'ٰ' ],
+ [ 'B', '\u200c' ],
+ [ 'N', 'ٔ' ],
+ [ 'M', 'ء' ],
+ [ '<', '>' ],
+ [ '>', '<' ],
+ [ '\\?', '؟' ]
],
patterns_x: [
- ['`', '~'],
- ['1', '`'],
- ['2', '@'],
- ['3', '#'],
- ['4', '$'],
- ['5', '%'],
- ['6', '^'],
- ['7', '&'],
- ['8', '•'],
- ['9', '\u200e'],
- ['0', '\u200f'],
+ [ '`', '~' ],
+ [ '1', '`' ],
+ [ '2', '@' ],
+ [ '3', '#' ],
+ [ '4', '$' ],
+ [ '5', '%' ],
+ [ '6', '^' ],
+ [ '7', '&' ],
+ [ '8', '•' ],
+ [ '9', '\u200e' ],
+ [ '0', '\u200f' ],
- ['q', '°'],
- ['w', ''],
- ['e', '€'],
- ['r', ''],
- ['t', ''],
- ['y', ''],
- ['u', ''],
- ['i', '\u202d'],
- ['o', '\u202e'],
- ['p', '\u202c'],
- ['\\[', '\u202a'],
- ['\\]', '\u202b'],
+ [ 'q', '°' ],
+ [ 'w', '' ],
+ [ 'e', '€' ],
+ [ 'r', '' ],
+ [ 't', '' ],
+ [ 'y', '' ],
+ [ 'u', '' ],
+ [ 'i', '\u202d' ],
+ [ 'o', '\u202e' ],
+ [ 'p', '\u202c' ],
+ [ '\\[', '\u202a' ],
+ [ '\\]', '\u202b' ],
- ['a', ''],
- ['s', ''],
- ['d', 'ى'],
- ['f', ''],
- ['g', ''],
- ['h', 'ٱ'],
- ['j', ''],
- ['k', '﴾'],
- ['l', '﴿'],
- [';', ';'],
- ['\'', '"'],
+ [ 'a', '' ],
+ [ 's', '' ],
+ [ 'd', 'ى' ],
+ [ 'f', '' ],
+ [ 'g', '' ],
+ [ 'h', 'ٱ' ],
+ [ 'j', '' ],
+ [ 'k', '﴾' ],
+ [ 'l', '﴿' ],
+ [ ';', ';' ],
+ [ '\'', '"' ],
- ['z', ''],
- ['x', ''],
- ['c', ''],
- ['v', 'ٖ'],
- ['b', '\u200d'],
- ['n', 'ٕ'],
- ['m', '…'],
- [',', ','],
- ['\\.', '\''],
- ['/', '?'],
- [' ', '\xa0']
+ [ 'z', '' ],
+ [ 'x', '' ],
+ [ 'c', '' ],
+ [ 'v', 'ٖ' ],
+ [ 'b', '\u200d' ],
+ [ 'n', 'ٕ' ],
+ [ 'm', '…' ],
+ [ ',', ',' ],
+ [ '\\.', '\'' ],
+ [ '/', '?' ],
+ [ ' ', '\xa0' ]
],
patterns_shift: [
- [' ', '\u200c']
+ [ ' ', '\u200c' ]
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/fi/fi-transliteration.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/fi/fi-transliteration.js
index 15e70448..ab766439 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/fi/fi-transliteration.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/fi/fi-transliteration.js
@@ -13,18 +13,18 @@
contextLength: 0,
maxKeyLength: 2,
patterns: [
- ['\\.a', 'å'],
- ['\\.A', 'Å'],
- [':a', 'ä'],
- [':A', 'Ä'],
- [':o', 'ö'],
- [':O', 'Ö'],
- ['shh', 'š'],
- ['Shh', 'Š'],
- ['\\.e', '€']
+ [ '\\.a', 'å' ],
+ [ '\\.A', 'Å' ],
+ [ ':a', 'ä' ],
+ [ ':A', 'Ä' ],
+ [ ':o', 'ö' ],
+ [ ':O', 'Ö' ],
+ [ 'shh', 'š' ],
+ [ 'Shh', 'Š' ],
+ [ '\\.e', '€' ]
],
patterns_x: [
- ['e', '€']
+ [ 'e', '€' ]
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/fonipa/ipa-sil.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/fonipa/ipa-sil.js
index 5dde561e..737cf846 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/fonipa/ipa-sil.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/fonipa/ipa-sil.js
@@ -13,228 +13,228 @@
contextLength: 0,
maxKeyLength: 2,
patterns: [
- ['B=', 'ʙ'],
- ['f=', 'ɸ'],
- ['b=', 'β'],
-
- ['m>', 'ɱ'],
- ['v<', 'ⱱ'],
- ['v=', 'ʋ'],
-
- ['t=', 'θ'],
- ['d=', 'ð'],
-
- ['r>', 'ɾ'],
- ['l=', 'ɬ'],
- ['l>', 'ɮ'],
- ['r=', 'ɹ'],
-
- ['s=', 'ʃ'],
- ['z=', 'ʒ'],
-
- ['t<', 'ʈ'],
- ['d<', 'ɖ'],
- ['n<', 'ɳ'],
- ['r<', 'ɽ'],
- ['s<', 'ʂ'],
- ['z<', 'ʐ'],
- ['R<', 'ɻ'],
- ['l<', 'ɭ'],
-
- ['j=', 'ɟ'],
- ['n=', 'ɲ'],
- ['c=', 'ç'],
- ['j<', 'ʝ'],
- ['L<', 'ʎ'],
-
- ['g<', 'ɡ'],
- ['n>', 'ŋ'],
- ['g=', 'ɣ'],
- ['w>', 'ɰ'],
- ['L=', 'ʟ'],
-
- ['G=', 'ɢ'],
- ['N=', 'ɴ'],
- ['R=', 'ʀ'],
- ['x=', 'χ'],
- ['R>', 'ʁ'],
-
- ['h>', 'ħ'],
- ['\\?<', 'ʕ'],
-
- ['\\?=', 'ʔ'],
- ['h<', 'ɦ'],
-
- ['p=', 'ʘ'],
- ['ǃ<', 'ǀ'], // This is not an exclamation mark
- ['!', 'ǃ'],
- ['ǃ=', 'ǂ'], // This is not an exclamation mark
- ['ǃ>', 'ǁ'], // This is not an exclamation mark
-
- ['b>', 'ɓ'],
- ['d>', 'ɗ'],
- ['j>', 'ʄ'],
- ['g>', 'ɠ'],
- ['G>', 'ʛ'],
-
- ['w=', 'ʍ'],
- ['y<', 'ɥ'],
- ['h=', 'ɥ'],
- ['H=', 'ʜ'],
- ['Q<', 'ʢ'],
- ['Q=', 'ʡ'],
+ [ 'B=', 'ʙ' ],
+ [ 'f=', 'ɸ' ],
+ [ 'b=', 'β' ],
+
+ [ 'm>', 'ɱ' ],
+ [ 'v<', 'ⱱ' ],
+ [ 'v=', 'ʋ' ],
+
+ [ 't=', 'θ' ],
+ [ 'd=', 'ð' ],
+
+ [ 'r>', 'ɾ' ],
+ [ 'l=', 'ɬ' ],
+ [ 'l>', 'ɮ' ],
+ [ 'r=', 'ɹ' ],
+
+ [ 's=', 'ʃ' ],
+ [ 'z=', 'ʒ' ],
+
+ [ 't<', 'ʈ' ],
+ [ 'd<', 'ɖ' ],
+ [ 'n<', 'ɳ' ],
+ [ 'r<', 'ɽ' ],
+ [ 's<', 'ʂ' ],
+ [ 'z<', 'ʐ' ],
+ [ 'R<', 'ɻ' ],
+ [ 'l<', 'ɭ' ],
+
+ [ 'j=', 'ɟ' ],
+ [ 'n=', 'ɲ' ],
+ [ 'c=', 'ç' ],
+ [ 'j<', 'ʝ' ],
+ [ 'L<', 'ʎ' ],
+
+ [ 'g<', 'ɡ' ],
+ [ 'n>', 'ŋ' ],
+ [ 'g=', 'ɣ' ],
+ [ 'w>', 'ɰ' ],
+ [ 'L=', 'ʟ' ],
+
+ [ 'G=', 'ɢ' ],
+ [ 'N=', 'ɴ' ],
+ [ 'R=', 'ʀ' ],
+ [ 'x=', 'χ' ],
+ [ 'R>', 'ʁ' ],
+
+ [ 'h>', 'ħ' ],
+ [ '\\?<', 'ʕ' ],
+
+ [ '\\?=', 'ʔ' ],
+ [ 'h<', 'ɦ' ],
+
+ [ 'p=', 'ʘ' ],
+ [ 'ǃ<', 'ǀ' ], // This is not an exclamation mark
+ [ '!', 'ǃ' ],
+ [ 'ǃ=', 'ǂ' ], // This is not an exclamation mark
+ [ 'ǃ>', 'ǁ' ], // This is not an exclamation mark
+
+ [ 'b>', 'ɓ' ],
+ [ 'd>', 'ɗ' ],
+ [ 'j>', 'ʄ' ],
+ [ 'g>', 'ɠ' ],
+ [ 'G>', 'ʛ' ],
+
+ [ 'w=', 'ʍ' ],
+ [ 'y<', 'ɥ' ],
+ [ 'h=', 'ɥ' ],
+ [ 'H=', 'ʜ' ],
+ [ 'Q<', 'ʢ' ],
+ [ 'Q=', 'ʡ' ],
// TODO non-IPA retroflex hooks
- ['c<', 'ɕ'],
- ['z>', 'ʑ'],
- ['L>', 'ɺ'],
- ['H<', 'ɧ'],
-
- ['i=', 'ɪ'],
- ['e<', 'ɛ'],
- ['a<', 'æ'],
-
- ['y=', 'ʏ'],
- ['o>', 'ø'],
- ['E<', 'œ'],
- ['E>', 'ɶ'],
-
- ['I=', 'ɨ'],
- ['E=', 'ɘ'],
- ['e=', 'ə'],
- ['e>', 'ɜ'],
- ['a>', 'ɐ'],
- ['U=', 'ʉ'],
- ['O=', 'ɵ'],
- ['O<', 'ɞ'],
-
- ['u=', 'ɯ'],
- ['O>', 'ɤ'],
- ['u>', 'ʌ'],
- ['a=', 'ɑ'],
- ['u', 'u'],
- ['u<', 'ʊ'],
- ['o<', 'ɔ'],
- ['o=', 'ɒ'],
-
- ['ˈ}', 'ˌ'], // }}
- ['}', 'ˈ'],
- ['ː:', 'ˑ'], // ::
- ['ˑ:', 'ːː'], // ::: // Not IPA sanctioned
- [':', 'ː'],
- ['\\*\\*\\*', '\u0306'], // Combining breve
- ['\\.<', '|'],
- ['\\.=', '‖'],
- ['#=', '‿'],
+ [ 'c<', 'ɕ' ],
+ [ 'z>', 'ʑ' ],
+ [ 'L>', 'ɺ' ],
+ [ 'H<', 'ɧ' ],
+
+ [ 'i=', 'ɪ' ],
+ [ 'e<', 'ɛ' ],
+ [ 'a<', 'æ' ],
+
+ [ 'y=', 'ʏ' ],
+ [ 'o>', 'ø' ],
+ [ 'E<', 'œ' ],
+ [ 'E>', 'ɶ' ],
+
+ [ 'I=', 'ɨ' ],
+ [ 'E=', 'ɘ' ],
+ [ 'e=', 'ə' ],
+ [ 'e>', 'ɜ' ],
+ [ 'a>', 'ɐ' ],
+ [ 'U=', 'ʉ' ],
+ [ 'O=', 'ɵ' ],
+ [ 'O<', 'ɞ' ],
+
+ [ 'u=', 'ɯ' ],
+ [ 'O>', 'ɤ' ],
+ [ 'u>', 'ʌ' ],
+ [ 'a=', 'ɑ' ],
+ [ 'u', 'u' ],
+ [ 'u<', 'ʊ' ],
+ [ 'o<', 'ɔ' ],
+ [ 'o=', 'ɒ' ],
+
+ [ 'ˈ}', 'ˌ' ], // }}
+ [ '}', 'ˈ' ],
+ [ 'ː:', 'ˑ' ], // ::
+ [ 'ˑ:', 'ːː' ], // ::: // Not IPA sanctioned
+ [ ':', 'ː' ],
+ [ '\\*\\*\\*', '\u0306' ], // Combining breve
+ [ '\\.<', '|' ],
+ [ '\\.=', '‖' ],
+ [ '#=', '‿' ],
// Tones
- ['([˥-˩])4', '$1˥'],
- ['([˥-˩])3', '$1˦'],
- ['([˥-˩])2', '$1˧'],
- ['([˥-˩])1', '$1˨'],
- ['([˥-˩])0', '$1˩'],
- ['#4', '˥'],
- ['#3', '˦'],
- ['#2', '˧'],
- ['#1', '˨'],
- ['#0', '˩'],
- ['(?:\u0300)3', '\u030C'], // @13 - Combining caron
- ['(?:\u0301)1', '\u0302'], // @31 - Combining circumflex accent
- ['(?:\u0304)3', '\u1dc4'], // @23 - Combining macron-acute
- ['(?:\u0300)2', '\u1dc5'], // @12 - Combining grave-macron
- ['(?:\u030C)1', '\u1dc8'], // @131 - Combining grave-acute-grave
- ['(?:\u0304)1', '\u1dc6'], // @21 - Combining macron-grave // Not IPA sanctioned
- ['(?:\u0301)2', '\u1dc7'], // @32 - Combining acute-macron // Not IPA sanctioned
- ['(?:\u0302)3', '\u1dc9'], // @313 - Combining acute-grave-acute // Not IPA sanctioned
- ['(?:\u030a)4', '\u030b'], // Combining double acute accent
- ['(?:\u030a)3', '\u0301'], // Combining acute accent
- ['(?:\u030a)2', '\u0304'], // Combining macron
- ['(?:\u030a)1', '\u0300'], // Combining grave accent
- ['(?:\u030a)0', '\u030f'], // Combining double grave accent
+ [ '([˥-˩])4', '$1˥' ],
+ [ '([˥-˩])3', '$1˦' ],
+ [ '([˥-˩])2', '$1˧' ],
+ [ '([˥-˩])1', '$1˨' ],
+ [ '([˥-˩])0', '$1˩' ],
+ [ '#4', '˥' ],
+ [ '#3', '˦' ],
+ [ '#2', '˧' ],
+ [ '#1', '˨' ],
+ [ '#0', '˩' ],
+ [ '(?:\u0300)3', '\u030C' ], // @13 - Combining caron
+ [ '(?:\u0301)1', '\u0302' ], // @31 - Combining circumflex accent
+ [ '(?:\u0304)3', '\u1dc4' ], // @23 - Combining macron-acute
+ [ '(?:\u0300)2', '\u1dc5' ], // @12 - Combining grave-macron
+ [ '(?:\u030C)1', '\u1dc8' ], // @131 - Combining grave-acute-grave
+ [ '(?:\u0304)1', '\u1dc6' ], // @21 - Combining macron-grave // Not IPA sanctioned
+ [ '(?:\u0301)2', '\u1dc7' ], // @32 - Combining acute-macron // Not IPA sanctioned
+ [ '(?:\u0302)3', '\u1dc9' ], // @313 - Combining acute-grave-acute // Not IPA sanctioned
+ [ '(?:\u030a)4', '\u030b' ], // Combining double acute accent
+ [ '(?:\u030a)3', '\u0301' ], // Combining acute accent
+ [ '(?:\u030a)2', '\u0304' ], // Combining macron
+ [ '(?:\u030a)1', '\u0300' ], // Combining grave accent
+ [ '(?:\u030a)0', '\u030f' ], // Combining double grave accent
// Tone numbers (non-IPA)
- ['\\^0', '⁰'], // Not IPA sanctioned
- ['\\^1', '¹'], // Not IPA sanctioned
- ['\\^2', '²'], // Not IPA sanctioned
- ['\\^3', '³'], // Not IPA sanctioned
- ['\\^4', '⁴'], // Not IPA sanctioned
- ['\\^5', '⁵'], // Not IPA sanctioned
- ['\\^6', '⁶'], // Not IPA sanctioned
- ['\\^7', '⁷'], // Not IPA sanctioned
- ['\\^8', '⁸'], // Not IPA sanctioned
- ['\\^9', '⁹'], // Not IPA sanctioned
+ [ '\\^0', '⁰' ], // Not IPA sanctioned
+ [ '\\^1', '¹' ], // Not IPA sanctioned
+ [ '\\^2', '²' ], // Not IPA sanctioned
+ [ '\\^3', '³' ], // Not IPA sanctioned
+ [ '\\^4', '⁴' ], // Not IPA sanctioned
+ [ '\\^5', '⁵' ], // Not IPA sanctioned
+ [ '\\^6', '⁶' ], // Not IPA sanctioned
+ [ '\\^7', '⁷' ], // Not IPA sanctioned
+ [ '\\^8', '⁸' ], // Not IPA sanctioned
+ [ '\\^9', '⁹' ], // Not IPA sanctioned
// This character is called "Superscript hyphen" in the layout document,
// and "Superscript minus" in Unicode
- ['\\^-', '⁻'], // Not IPA sanctioned
+ [ '\\^-', '⁻' ], // Not IPA sanctioned
- ['ꜛ>', '↗'], // #>>
- ['ꜜ<', '↘'], // #<<
- ['#<', 'ꜜ'],
- ['#>', 'ꜛ'],
+ [ 'ꜛ>', '↗' ], // #>>
+ [ 'ꜜ<', '↘' ], // #<<
+ [ '#<', 'ꜜ' ],
+ [ '#>', 'ꜛ' ],
// Diacritics and suprasegmentals
- ['h\\^', 'ʰ'],
- ['w\\^', 'ʷ'],
- ['j\\^', 'ʲ'],
- ['ɣ\\^', 'ˠ'], // g=
- ['ʕ\\^', 'ˤ'], // ?<
- ['n\\^', 'ⁿ'],
- ['l\\^', 'ˡ'],
+ [ 'h\\^', 'ʰ' ],
+ [ 'w\\^', 'ʷ' ],
+ [ 'j\\^', 'ʲ' ],
+ [ 'ɣ\\^', 'ˠ' ], // g=
+ [ 'ʕ\\^', 'ˤ' ], // ?<
+ [ 'n\\^', 'ⁿ' ],
+ [ 'l\\^', 'ˡ' ],
// TODO non-IPA superscripts
- ['ʽ\\[', '˞'], // [[[
- ['\\[\\[', 'ʽ'], // [[ // Not IPA sanctioned
- ['(?:\u031a)\\]', '‘'], // ]]]] // Not IPA sanctioned
- ['ʼ\\]', '\u031a'], // ]]] // Combining left angle above
- ['\\]\\]', 'ʼ'], // ]]
+ [ 'ʽ\\[', '˞' ], // [[[
+ [ '\\[\\[', 'ʽ' ], // [[ // Not IPA sanctioned
+ [ '(?:\u031a)\\]', '‘' ], // ]]]] // Not IPA sanctioned
+ [ 'ʼ\\]', '\u031a' ], // ]]] // Combining left angle above
+ [ '\\]\\]', 'ʼ' ], // ]]
- ['(?:\u032f)\\$', '\u0330'], // $$$ // Combining tilde below
- ['(?:\u0329)\\$', '\u032f'], // $$ // Combining inverted breve below
- ['\\$', '\u0329'], // $ // Combining vertical line below
+ [ '(?:\u032f)\\$', '\u0330' ], // $$$ // Combining tilde below
+ [ '(?:\u0329)\\$', '\u032f' ], // $$ // Combining inverted breve below
+ [ '\\$', '\u0329' ], // $ // Combining vertical line below
// TODO non-IPA retroflex hooks
- ['(?:\u032c)%', '\u0324'], // %%% // Combining diaeresis below
- ['(?:\u0325)%', '\u032c'], // %% // Combining caron below
- ['%', '\u0325'], // % // Combining ring below
+ [ '(?:\u032c)%', '\u0324' ], // %%% // Combining diaeresis below
+ [ '(?:\u0325)%', '\u032c' ], // %% // Combining caron below
+ [ '%', '\u0325' ], // % // Combining ring below
// TODO non-IPA palatal hooks
- ['@', '\u030a'], // Combining ring above
+ [ '@', '\u030a' ], // Combining ring above
- ['(?:\u033c)\\{', '\u0323'], // {{{{{ // Combining dot below
- ['(?:\u033b)\\{', '\u033c'], // {{{{ // Combining seagull below
- ['(?:\u033a)\\{', '\u033b'], // {{{ // Combining square below
- ['(?:\u032a)\\{', '\u033a'], // {{ // Combining inverted bridge below
- ['\\{', '\u032a'], // { // Combining bridge below
+ [ '(?:\u033c)\\{', '\u0323' ], // {{{{{ // Combining dot below
+ [ '(?:\u033b)\\{', '\u033c' ], // {{{{ // Combining seagull below
+ [ '(?:\u033a)\\{', '\u033b' ], // {{{ // Combining square below
+ [ '(?:\u032a)\\{', '\u033a' ], // {{ // Combining inverted bridge below
+ [ '\\{', '\u032a' ], // { // Combining bridge below
- ['(?:\u0303)~', '\u0334'], // ~~ // Combining tilde overlay
- ['~', '\u0303'], // ~ // Combining tilde
+ [ '(?:\u0303)~', '\u0334' ], // ~~ // Combining tilde overlay
+ [ '~', '\u0303' ], // ~ // Combining tilde
- ['(?:\u0306)\\*', '\u0307'], // **** // Combining dot above
- ['(?:\u033d)\\*', '\u0306'], // *** // Combining breve
- ['(?:\u0308)\\*', '\u033d'], // ** // Combining x above
- ['\\*', '\u0308'], // * // Combining diaeresis
+ [ '(?:\u0306)\\*', '\u0307' ], // **** // Combining dot above
+ [ '(?:\u033d)\\*', '\u0306' ], // *** // Combining breve
+ [ '(?:\u0308)\\*', '\u033d' ], // ** // Combining x above
+ [ '\\*', '\u0308' ], // * // Combining diaeresis
// TODO Find out what the m with the five asterisks is.
- ['#&', '\u0361'], // Combining double inverted breve
- ['(?:\u030a)&', '\u035c'], // @& // Combining double breve below
-
- ['(?:\u0318)\\+', '\u0339'], // ++++ // Combining right half ring below
- ['(?:\u0319)_', '\u031c'], // ____ // Combining left half ring below
- ['(?:\u031d)\\+', '\u0318'], // +++ // Combining left tack below
- ['(?:\u031e)_', '\u0319'], // ___ // Combining right tack below
- ['(?:\u031f)\\+', '\u031d'], // ++ // Combining up tack below
- ['(?:\u0320)_', '\u031e'], // __ // Combining down tack below
- ['\\+', '\u031f'], // + // Combining plus sign below
- ['_', '\u0320'], // _ // Combining minus sign below
-
- ['=>', '→'], // Not IPA sanctioned
- ['s>', 'σ'], // Not IPA sanctioned
- ['=<', '\u200d'] // Combining Grapheme Joiner
+ [ '#&', '\u0361' ], // Combining double inverted breve
+ [ '(?:\u030a)&', '\u035c' ], // @& // Combining double breve below
+
+ [ '(?:\u0318)\\+', '\u0339' ], // ++++ // Combining right half ring below
+ [ '(?:\u0319)_', '\u031c' ], // ____ // Combining left half ring below
+ [ '(?:\u031d)\\+', '\u0318' ], // +++ // Combining left tack below
+ [ '(?:\u031e)_', '\u0319' ], // ___ // Combining right tack below
+ [ '(?:\u031f)\\+', '\u031d' ], // ++ // Combining up tack below
+ [ '(?:\u0320)_', '\u031e' ], // __ // Combining down tack below
+ [ '\\+', '\u031f' ], // + // Combining plus sign below
+ [ '_', '\u0320' ], // _ // Combining minus sign below
+
+ [ '=>', '→' ], // Not IPA sanctioned
+ [ 's>', 'σ' ], // Not IPA sanctioned
+ [ '=<', '\u200d' ] // Combining Grapheme Joiner
]
};
$.ime.register( ipaSil );
-} ( jQuery ) );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/fonipa/ipa-x-sampa.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/fonipa/ipa-x-sampa.js
index 546401a5..f2e8bfd5 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/fonipa/ipa-x-sampa.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/fonipa/ipa-x-sampa.js
@@ -14,176 +14,176 @@
maxKeyLength: 4,
patterns: [
// Tones
- ['_/', '\u030C'], // Combining caron
- ['_\\\\', '\u0302'], // Combining circumflex accent
- ['_ɥ_T', '\u1dc4'], // _H_T - Combining macron-acute
- ['_β_L', '\u1dc5'], // _B_L - Combining grave-macron
- ['_ʁ_F', '\u1dc8'], // _R_F - Combining grave-acute-grave
+ [ '_/', '\u030C' ], // Combining caron
+ [ '_\\\\', '\u0302' ], // Combining circumflex accent
+ [ '_ɥ_T', '\u1dc4' ], // _H_T - Combining macron-acute
+ [ '_β_L', '\u1dc5' ], // _B_L - Combining grave-macron
+ [ '_ʁ_F', '\u1dc8' ], // _R_F - Combining grave-acute-grave
- ['β\\\\', 'ʙ'],
- ['p\\\\', 'ɸ'],
- ['B', 'β'],
+ [ 'β\\\\', 'ʙ' ],
+ [ 'p\\\\', 'ɸ' ],
+ [ 'B', 'β' ],
- ['F', 'ɱ'],
+ [ 'F', 'ɱ' ],
// ⱱ is not in X-SAMPA
- ['P', 'ʋ'],
- ['v\\\\', 'ʋ'],
-
- ['T', 'θ'],
- ['D', 'ð'],
-
- ['4', 'ɾ'],
- ['K', 'ɬ'],
- ['ɬ\\\\', 'ɮ'],
- ['r\\\\', 'ɹ'],
-
- ['S', 'ʃ'],
- ['Z', 'ʒ'],
-
- ['t`', 'ʈ'],
- ['d`', 'ɖ'],
- ['n`', 'ɳ'],
- ['r`', 'ɽ'],
- ['s`', 'ʂ'],
- ['z`', 'ʐ'],
- ['ɹ`', 'ɻ'],
- ['l`', 'ɭ'],
-
- ['ɲ\\\\', 'ɟ'],
- ['J', 'ɲ'],
- ['C', 'ç'],
- ['j\\\\', 'ʝ'],
- ['L', 'ʎ'],
-
- ['g', 'ɡ'],
- ['_N', '\u033c'], // Combining seagull below
- ['N', 'ŋ'],
- ['_G', 'ˠ'],
- ['G', 'ɣ'],
- ['ɯ\\\\', 'ɰ'],
- ['ʎ\\\\', 'ʟ'],
-
- ['ɣ\\\\', 'ɢ'],
- ['ŋ\\\\', 'ɴ'],
- ['ʁ\\\\', 'ʀ'],
- ['_X', '\u0306'], // Combining breve
- ['X', 'χ'],
- ['R', 'ʁ'],
-
- ['χ\\\\', 'ħ'],
- ['_ʔ\\\\', 'ˤ'],
- ['ʔ\\\\', 'ʕ'],
-
- ['\\?', 'ʔ'],
- ['h\\\\', 'ɦ'],
-
- ['ɔ\\\\', 'ʘ'],
- ['ǀ\\|\\\\', 'ǁ'],
- ['\\|\\\\', 'ǀ'],
- ['ꜜ\\\\', 'ǃ'], // !\ -> Retroflex (postalveolar) click
- ['_?=', '\u0329'], // Combining vertical line below
- ['\u0329\\\\', 'ǂ'],
-
- ['b_<', 'ɓ'],
- ['d_<', 'ɗ'],
- ['ɟ_<', 'ʄ'],
- ['ɡ_<', 'ɠ'],
- ['ɢ_<', 'ʛ'],
-
- ['W', 'ʍ'],
- ['H', 'ɥ'],
- ['ɥ\\\\', 'ʜ'],
- ['<\\\\', 'ʢ'],
- ['>\\\\', 'ʡ'],
-
- ['s\\\\', 'ɕ'],
- ['z\\\\', 'ʑ'],
- ['l\\\\', 'ɺ'],
- ['x\\\\', 'ɧ'],
-
- ['I', 'ɪ'],
- ['E', 'ɛ'],
- ['\\{', 'æ'],
-
- ['Y', 'ʏ'],
- ['2', 'ø'],
- ['9', 'œ'],
- ['&', 'ɶ'],
-
- ['1', 'ɨ'],
- ['ə\\\\', 'ɘ'],
- ['@', 'ə'],
- ['ɜ\\\\', 'ɞ'],
- ['3', 'ɜ'],
- ['6', 'ɐ'],
- ['_\\}', '\u031a'],
- ['\\}', 'ʉ'],
- ['8', 'ɵ'],
-
- ['M', 'ɯ'],
- ['7', 'ɤ'],
- ['V', 'ʌ'],
- ['_A', '\u0318'], // Combining right tack below
- ['A', 'ɑ'],
- ['U', 'ʊ'],
- ['_O', '\u0339'], // ++++ // Combining right half ring below
- ['O', 'ɔ'],
- ['Q', 'ɒ'],
-
- ['%', 'ˌ'],
- ['_"', '\u0308'], // Combining diaeresis
- ['"', 'ˈ'],
- ['ː\\\\', 'ˑ'],
- [':', 'ː'],
- ['\\.<', '|'],
- ['\\|\\|', '‖'],
- ['-\\\\', '‿'],
-
- ['<ʁ>', '↗'], // <R>
- ['<ɱ>', '↘'], // <F>
- ['!', 'ꜜ'],
- ['_\\^', '\u032f'], // Combining inverted breve below
- ['\\^', 'ꜛ'],
+ [ 'P', 'ʋ' ],
+ [ 'v\\\\', 'ʋ' ],
+
+ [ 'T', 'θ' ],
+ [ 'D', 'ð' ],
+
+ [ '4', 'ɾ' ],
+ [ 'K', 'ɬ' ],
+ [ 'ɬ\\\\', 'ɮ' ],
+ [ 'r\\\\', 'ɹ' ],
+
+ [ 'S', 'ʃ' ],
+ [ 'Z', 'ʒ' ],
+
+ [ 't`', 'ʈ' ],
+ [ 'd`', 'ɖ' ],
+ [ 'n`', 'ɳ' ],
+ [ 'r`', 'ɽ' ],
+ [ 's`', 'ʂ' ],
+ [ 'z`', 'ʐ' ],
+ [ 'ɹ`', 'ɻ' ],
+ [ 'l`', 'ɭ' ],
+
+ [ 'ɲ\\\\', 'ɟ' ],
+ [ 'J', 'ɲ' ],
+ [ 'C', 'ç' ],
+ [ 'j\\\\', 'ʝ' ],
+ [ 'L', 'ʎ' ],
+
+ [ 'g', 'ɡ' ],
+ [ '_N', '\u033c' ], // Combining seagull below
+ [ 'N', 'ŋ' ],
+ [ '_G', 'ˠ' ],
+ [ 'G', 'ɣ' ],
+ [ 'ɯ\\\\', 'ɰ' ],
+ [ 'ʎ\\\\', 'ʟ' ],
+
+ [ 'ɣ\\\\', 'ɢ' ],
+ [ 'ŋ\\\\', 'ɴ' ],
+ [ 'ʁ\\\\', 'ʀ' ],
+ [ '_X', '\u0306' ], // Combining breve
+ [ 'X', 'χ' ],
+ [ 'R', 'ʁ' ],
+
+ [ 'χ\\\\', 'ħ' ],
+ [ '_ʔ\\\\', 'ˤ' ],
+ [ 'ʔ\\\\', 'ʕ' ],
+
+ [ '\\?', 'ʔ' ],
+ [ 'h\\\\', 'ɦ' ],
+
+ [ 'ɔ\\\\', 'ʘ' ],
+ [ 'ǀ\\|\\\\', 'ǁ' ],
+ [ '\\|\\\\', 'ǀ' ],
+ [ 'ꜜ\\\\', 'ǃ' ], // !\ -> Retroflex (postalveolar) click
+ [ '_?=', '\u0329' ], // Combining vertical line below
+ [ '\u0329\\\\', 'ǂ' ],
+
+ [ 'b_<', 'ɓ' ],
+ [ 'd_<', 'ɗ' ],
+ [ 'ɟ_<', 'ʄ' ],
+ [ 'ɡ_<', 'ɠ' ],
+ [ 'ɢ_<', 'ʛ' ],
+
+ [ 'W', 'ʍ' ],
+ [ 'H', 'ɥ' ],
+ [ 'ɥ\\\\', 'ʜ' ],
+ [ '<\\\\', 'ʢ' ],
+ [ '>\\\\', 'ʡ' ],
+
+ [ 's\\\\', 'ɕ' ],
+ [ 'z\\\\', 'ʑ' ],
+ [ 'l\\\\', 'ɺ' ],
+ [ 'x\\\\', 'ɧ' ],
+
+ [ 'I', 'ɪ' ],
+ [ 'E', 'ɛ' ],
+ [ '\\{', 'æ' ],
+
+ [ 'Y', 'ʏ' ],
+ [ '2', 'ø' ],
+ [ '9', 'œ' ],
+ [ '&', 'ɶ' ],
+
+ [ '1', 'ɨ' ],
+ [ 'ə\\\\', 'ɘ' ],
+ [ '@', 'ə' ],
+ [ 'ɜ\\\\', 'ɞ' ],
+ [ '3', 'ɜ' ],
+ [ '6', 'ɐ' ],
+ [ '_\\}', '\u031a' ],
+ [ '\\}', 'ʉ' ],
+ [ '8', 'ɵ' ],
+
+ [ 'M', 'ɯ' ],
+ [ '7', 'ɤ' ],
+ [ 'V', 'ʌ' ],
+ [ '_A', '\u0318' ], // Combining right tack below
+ [ 'A', 'ɑ' ],
+ [ 'U', 'ʊ' ],
+ [ '_O', '\u0339' ], // ++++ // Combining right half ring below
+ [ 'O', 'ɔ' ],
+ [ 'Q', 'ɒ' ],
+
+ [ '%', 'ˌ' ],
+ [ '_"', '\u0308' ], // Combining diaeresis
+ [ '"', 'ˈ' ],
+ [ 'ː\\\\', 'ˑ' ],
+ [ ':', 'ː' ],
+ [ '\\.<', '|' ],
+ [ '\\|\\|', '‖' ],
+ [ '-\\\\', '‿' ],
+
+ [ '<ʁ>', '↗' ], // <R>
+ [ '<ɱ>', '↘' ], // <F>
+ [ '!', 'ꜜ' ],
+ [ '_\\^', '\u032f' ], // Combining inverted breve below
+ [ '\\^', 'ꜛ' ],
// Diacritics and suprasegmentals
- ['_h', 'ʰ'],
- ['_w', 'ʷ'],
- ['_j', 'ʲ'],
+ [ '_h', 'ʰ' ],
+ [ '_w', 'ʷ' ],
+ [ '_j', 'ʲ' ],
// see above for ˠ
// see above for ˤ
- ['_n', 'ⁿ'],
- ['_l', 'ˡ'],
+ [ '_n', 'ⁿ' ],
+ [ '_l', 'ˡ' ],
- ['`', '˞'],
- ['_>', 'ʼ'],
+ [ '`', '˞' ],
+ [ '_>', 'ʼ' ],
// See above for No audible release
// See above for Syllabic
// See above for Non-syllabic
- ['_k', '\u0330'], // Combining tilde below
-
- ['([ɱɮɳɖʐɻɽɭɲɟʝjŋɡɣɰ])_0', '$1\u030a'], // Combining ring above
- ['(.)_0', '$1\u0325'], // Combining ring below
- ['_v', '\u032c'], // Combining caron below
- ['_t', '\u0324'], // Combining diaeresis below
- ['_d', '\u032a'], // Combining bridge below
- ['_a', '\u033a'], // Combining inverted bridge below
- ['_m', '\u033b'], // Combining square below
+ [ '_k', '\u0330' ], // Combining tilde below
+
+ [ '([ɱɮɳɖʐɻɽɭɲɟʝjŋɡɣɰ])_0', '$1\u030a' ], // Combining ring above
+ [ '(.)_0', '$1\u0325' ], // Combining ring below
+ [ '_v', '\u032c' ], // Combining caron below
+ [ '_t', '\u0324' ], // Combining diaeresis below
+ [ '_d', '\u032a' ], // Combining bridge below
+ [ '_a', '\u033a' ], // Combining inverted bridge below
+ [ '_m', '\u033b' ], // Combining square below
// See above for linguolabial
- ['_?~', '\u0303'], // Combining tilde
- ['_e', '\u0334'], // Combining tilde overlay
+ [ '_?~', '\u0303' ], // Combining tilde
+ [ '_e', '\u0334' ], // Combining tilde overlay
// See above for centralised
- ['_x', '\u033d'], // Combining x above
+ [ '_x', '\u033d' ], // Combining x above
// See above for extra short
- ['_\\+', '\u031f'], // Combining plus sign below
- ['_-', '\u0320'], // Combining minus sign below
- ['_r', '\u031d'], // Combining up tack below
- ['_o', '\u031e'], // Combining down tack below
+ [ '_\\+', '\u031f' ], // Combining plus sign below
+ [ '_-', '\u0320' ], // Combining minus sign below
+ [ '_r', '\u031d' ], // Combining up tack below
+ [ '_o', '\u031e' ], // Combining down tack below
// See above for advanced tongue root
- ['_q', '\u0319'], // Combining left tack below
+ [ '_q', '\u0319' ], // Combining left tack below
// See above for more rounded
- ['_c', '\u031c']
+ [ '_c', '\u031c' ]
]
};
$.ime.register( ipaSil );
-} ( jQuery ) );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/gom/gom-inscript2.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/gom/gom-inscript2.js
index 49d8aee6..7fe7363b 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/gom/gom-inscript2.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/gom/gom-inscript2.js
@@ -10,108 +10,108 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['\\!', 'ॲ'],
- ['1', '१'],
- ['\\@', 'ॅ'],
- ['2', '२'],
- ['\\#', '्र'],
- ['3', '३'],
- ['\\$', 'र्'],
- ['4', '४'],
- ['5', '५'],
- ['6', '६'],
- ['7', '७'],
- ['8', '८'],
- ['\\(', '('],
- ['9', '९'],
- ['\\]', ']'],
- ['0', '०'],
- ['\\_', 'ः'],
- ['\\-', '-'],
- ['\\+', 'ऋ'],
- ['\\=', 'ृ'],
- ['Q', 'औ'],
- ['q', 'ौ'],
- ['W', 'ऐ'],
- ['w', 'ै'],
- ['E', 'आ'],
- ['e', 'ा'],
- ['R', 'ई'],
- ['r', 'ी'],
- ['T', 'ऊ'],
- ['t', 'ू'],
- ['Y', 'भ'],
- ['y', 'ब'],
- ['U', 'ङ'],
- ['u', 'ह'],
- ['I', 'घ'],
- ['i', 'ग'],
- ['O', 'ध'],
- ['o', 'द'],
- ['P', 'झ'],
- ['p', 'ज'],
- ['\\{', 'ढ'],
- ['\\[', 'ड'],
- ['\\}', 'ञ'],
- ['\\]', '़'],
- ['A', 'ओ'],
- ['a', 'ो'],
- ['S', 'ए'],
- ['s', 'े'],
- ['D', 'अ'],
- ['d', '्'],
- ['F', 'इ'],
- ['f', 'ि'],
- ['G', 'उ'],
- ['g', 'ु'],
- ['H', 'फ'],
- ['h', 'प'],
- ['J', 'ऱ'],
- ['j', 'र'],
- ['K', 'ख'],
- ['k', 'क'],
- ['L', 'थ'],
- ['l', 'त'],
- [':', 'छ'],
- [';', 'च'],
- ['"', 'ठ'],
- ['\\\'', 'ट'],
- ['X', 'ँ'],
- ['x', 'ं'],
- ['C', 'ण'],
- ['c', 'म'],
- ['v', 'न'],
- ['b', 'व'],
- ['N', 'ळ'],
- ['n', 'ल'],
- ['M', 'श'],
- ['m', 'स'],
- ['\\<', 'ष'],
- [',', ','],
- ['\\>', '।'],
- ['\\.', '.'],
- ['/', 'य'],
- ['\\%', 'ज्ञ'],
- ['\\^', 'त्र'],
- ['\\&', 'क्ष'],
- ['\\*', 'श्र']
+ [ '\\!', 'ॲ' ],
+ [ '1', '१' ],
+ [ '\\@', 'ॅ' ],
+ [ '2', '२' ],
+ [ '\\#', '्र' ],
+ [ '3', '३' ],
+ [ '\\$', 'र्' ],
+ [ '4', '४' ],
+ [ '5', '५' ],
+ [ '6', '६' ],
+ [ '7', '७' ],
+ [ '8', '८' ],
+ [ '\\(', '(' ],
+ [ '9', '९' ],
+ [ '\\]', ']' ],
+ [ '0', '०' ],
+ [ '\\_', 'ः' ],
+ [ '\\-', '-' ],
+ [ '\\+', 'ऋ' ],
+ [ '\\=', 'ृ' ],
+ [ 'Q', 'औ' ],
+ [ 'q', 'ौ' ],
+ [ 'W', 'ऐ' ],
+ [ 'w', 'ै' ],
+ [ 'E', 'आ' ],
+ [ 'e', 'ा' ],
+ [ 'R', 'ई' ],
+ [ 'r', 'ी' ],
+ [ 'T', 'ऊ' ],
+ [ 't', 'ू' ],
+ [ 'Y', 'भ' ],
+ [ 'y', 'ब' ],
+ [ 'U', 'ङ' ],
+ [ 'u', 'ह' ],
+ [ 'I', 'घ' ],
+ [ 'i', 'ग' ],
+ [ 'O', 'ध' ],
+ [ 'o', 'द' ],
+ [ 'P', 'झ' ],
+ [ 'p', 'ज' ],
+ [ '\\{', 'ढ' ],
+ [ '\\[', 'ड' ],
+ [ '\\}', 'ञ' ],
+ [ '\\]', '़' ],
+ [ 'A', 'ओ' ],
+ [ 'a', 'ो' ],
+ [ 'S', 'ए' ],
+ [ 's', 'े' ],
+ [ 'D', 'अ' ],
+ [ 'd', '्' ],
+ [ 'F', 'इ' ],
+ [ 'f', 'ि' ],
+ [ 'G', 'उ' ],
+ [ 'g', 'ु' ],
+ [ 'H', 'फ' ],
+ [ 'h', 'प' ],
+ [ 'J', 'ऱ' ],
+ [ 'j', 'र' ],
+ [ 'K', 'ख' ],
+ [ 'k', 'क' ],
+ [ 'L', 'थ' ],
+ [ 'l', 'त' ],
+ [ ':', 'छ' ],
+ [ ';', 'च' ],
+ [ '"', 'ठ' ],
+ [ '\\\'', 'ट' ],
+ [ 'X', 'ँ' ],
+ [ 'x', 'ं' ],
+ [ 'C', 'ण' ],
+ [ 'c', 'म' ],
+ [ 'v', 'न' ],
+ [ 'b', 'व' ],
+ [ 'N', 'ळ' ],
+ [ 'n', 'ल' ],
+ [ 'M', 'श' ],
+ [ 'm', 'स' ],
+ [ '\\<', 'ष' ],
+ [ ',', ',' ],
+ [ '\\>', '।' ],
+ [ '\\.', '.' ],
+ [ '/', 'य' ],
+ [ '\\%', 'ज्ञ' ],
+ [ '\\^', 'त्र' ],
+ [ '\\&', 'क्ष' ],
+ [ '\\*', 'श्र' ]
],
patterns_x: [
- ['1', '\u200d'],
- ['2', '\u200c'],
- ['4', '₹'],
- ['\\+', 'ॠ'],
- ['\\=', 'ॄ'],
- ['e', '॑'],
- ['R', 'ॡ'],
- ['r', 'ॣ'],
- ['d', '॒'],
- ['F', 'ऌ'],
- ['f', 'ॢ'],
- ['X', 'ॐ'],
- [',', '॰'],
- ['\\>', 'ऽ'],
- ['\\.', '॥']
+ [ '1', '\u200d' ],
+ [ '2', '\u200c' ],
+ [ '4', '₹' ],
+ [ '\\+', 'ॠ' ],
+ [ '\\=', 'ॄ' ],
+ [ 'e', '॑' ],
+ [ 'R', 'ॡ' ],
+ [ 'r', 'ॣ' ],
+ [ 'd', '॒' ],
+ [ 'F', 'ऌ' ],
+ [ 'f', 'ॢ' ],
+ [ 'X', 'ॐ' ],
+ [ ',', '॰' ],
+ [ '\\>', 'ऽ' ],
+ [ '\\.', '॥' ]
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/gu/gu-inscript.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/gu/gu-inscript.js
index ac1a8cbc..ae87a8ec 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/gu/gu-inscript.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/gu/gu-inscript.js
@@ -10,102 +10,102 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['X', '\u0A81'],
- ['x', '\u0A82'],
- ['_', '\u0A83'],
- ['D', '\u0A85'],
- ['E', '\u0A86'],
- ['F', '\u0A87'],
- ['R', '\u0A88'],
- ['G', '\u0A89'],
- ['T', '\u0A8A'],
- ['\\+', '\u0A8B'],
- ['!', '\u0A8D'],
- ['S', '\u0A8F'],
- ['W', '\u0A90'],
- ['\\|', '\u0A91'],
- ['A', '\u0A93'],
- ['Q', '\u0A94'],
- ['k', '\u0A95'],
- ['K', '\u0A96'],
- ['i', '\u0A97'],
- ['I', '\u0A98'],
- ['U', '\u0A99'],
- [';', '\u0A9A'],
- ['\\:', '\u0A9B'],
- ['p', '\u0A9C'],
- ['P', '\u0A9D'],
- ['\\}', '\u0A9E'],
- ['\'', '\u0A9F'],
- ['"', '\u0AA0'],
- ['\\[', '\u0AA1'],
- ['\\{', '\u0AA2'],
- ['C', '\u0AA3'],
- ['l', '\u0AA4'],
- ['L', '\u0AA5'],
- ['o', '\u0AA6'],
- ['O', '\u0AA7'],
- ['v', '\u0AA8'],
- ['h', '\u0AAA'],
- ['H', '\u0AAB'],
- ['y', '\u0AAC'],
- ['Y', '\u0AAD'],
- ['c', '\u0AAE'],
- ['/', '\u0AAF'],
- ['j', '\u0AB0'],
- ['n', '\u0AB2'],
- ['N', '\u0AB3'],
- ['b', '\u0AB5'],
- ['M', '\u0AB6'],
- ['\\<', '\u0AB7'],
- ['m', '\u0AB8'],
- ['u', '\u0AB9'],
- ['\\}', '\u0ABC'],
- ['e', '\u0ABE'],
- ['f', '\u0ABF'],
- ['r', '\u0AC0'],
- ['g', '\u0AC1'],
- ['t', '\u0AC2'],
- ['\\=', '\u0AC3'],
- ['\\@', '\u0AC5'],
- ['s', '\u0AC7'],
- ['w', '\u0AC8'],
- ['\\\\', '\u0AC9'],
- ['a', '\u0ACB'],
- ['q', '\u0ACC'],
- ['d', '\u0ACD'],
- ['\\>', '\u0AE4'],
- ['0', '\u0AE6'],
- ['1', '\u0AE7'],
- ['2', '\u0AE8'],
- ['3', '\u0AE9'],
- ['4', '\u0AEA'],
- ['5', '\u0AEB'],
- ['6', '\u0AEC'],
- ['7', '\u0AED'],
- ['8', '\u0AEE'],
- ['9', '\u0AEF'],
- ['\\#', '\u0ACD\u0AB0'],
- ['\\$', '\u0AB0\u0ACD'],
- ['\\%', '\u0A9C\u0ACD\u0A9E'],
- ['\\^', '\u0AA4\u0ACD\u0AB0'],
- ['\\&', '\u0A95\u0ACD\u0AB7'],
- ['\\*', '\u0AB6\u0ACD\u0AB0'],
- ['\\(', '\u200D'],
- ['\\)', '\u200C'] ],
+ [ 'X', '\u0A81' ],
+ [ 'x', '\u0A82' ],
+ [ '_', '\u0A83' ],
+ [ 'D', '\u0A85' ],
+ [ 'E', '\u0A86' ],
+ [ 'F', '\u0A87' ],
+ [ 'R', '\u0A88' ],
+ [ 'G', '\u0A89' ],
+ [ 'T', '\u0A8A' ],
+ [ '\\+', '\u0A8B' ],
+ [ '!', '\u0A8D' ],
+ [ 'S', '\u0A8F' ],
+ [ 'W', '\u0A90' ],
+ [ '\\|', '\u0A91' ],
+ [ 'A', '\u0A93' ],
+ [ 'Q', '\u0A94' ],
+ [ 'k', '\u0A95' ],
+ [ 'K', '\u0A96' ],
+ [ 'i', '\u0A97' ],
+ [ 'I', '\u0A98' ],
+ [ 'U', '\u0A99' ],
+ [ ';', '\u0A9A' ],
+ [ '\\:', '\u0A9B' ],
+ [ 'p', '\u0A9C' ],
+ [ 'P', '\u0A9D' ],
+ [ '\\}', '\u0A9E' ],
+ [ '\'', '\u0A9F' ],
+ [ '"', '\u0AA0' ],
+ [ '\\[', '\u0AA1' ],
+ [ '\\{', '\u0AA2' ],
+ [ 'C', '\u0AA3' ],
+ [ 'l', '\u0AA4' ],
+ [ 'L', '\u0AA5' ],
+ [ 'o', '\u0AA6' ],
+ [ 'O', '\u0AA7' ],
+ [ 'v', '\u0AA8' ],
+ [ 'h', '\u0AAA' ],
+ [ 'H', '\u0AAB' ],
+ [ 'y', '\u0AAC' ],
+ [ 'Y', '\u0AAD' ],
+ [ 'c', '\u0AAE' ],
+ [ '/', '\u0AAF' ],
+ [ 'j', '\u0AB0' ],
+ [ 'n', '\u0AB2' ],
+ [ 'N', '\u0AB3' ],
+ [ 'b', '\u0AB5' ],
+ [ 'M', '\u0AB6' ],
+ [ '\\<', '\u0AB7' ],
+ [ 'm', '\u0AB8' ],
+ [ 'u', '\u0AB9' ],
+ [ '\\}', '\u0ABC' ],
+ [ 'e', '\u0ABE' ],
+ [ 'f', '\u0ABF' ],
+ [ 'r', '\u0AC0' ],
+ [ 'g', '\u0AC1' ],
+ [ 't', '\u0AC2' ],
+ [ '\\=', '\u0AC3' ],
+ [ '\\@', '\u0AC5' ],
+ [ 's', '\u0AC7' ],
+ [ 'w', '\u0AC8' ],
+ [ '\\\\', '\u0AC9' ],
+ [ 'a', '\u0ACB' ],
+ [ 'q', '\u0ACC' ],
+ [ 'd', '\u0ACD' ],
+ [ '\\>', '\u0AE4' ],
+ [ '0', '\u0AE6' ],
+ [ '1', '\u0AE7' ],
+ [ '2', '\u0AE8' ],
+ [ '3', '\u0AE9' ],
+ [ '4', '\u0AEA' ],
+ [ '5', '\u0AEB' ],
+ [ '6', '\u0AEC' ],
+ [ '7', '\u0AED' ],
+ [ '8', '\u0AEE' ],
+ [ '9', '\u0AEF' ],
+ [ '\\#', '\u0ACD\u0AB0' ],
+ [ '\\$', '\u0AB0\u0ACD' ],
+ [ '\\%', '\u0A9C\u0ACD\u0A9E' ],
+ [ '\\^', '\u0AA4\u0ACD\u0AB0' ],
+ [ '\\&', '\u0A95\u0ACD\u0AB7' ],
+ [ '\\*', '\u0AB6\u0ACD\u0AB0' ],
+ [ '\\(', '\u200D' ],
+ [ '\\)', '\u200C' ] ],
patterns_x: [
- ['F', '\u0A8C'],
- ['\\>', '\u0ABD'],
- ['\\=', '\u0AC4'],
- ['X', '\u0AD0'],
- ['\\+', '\u0AE0'],
- ['R', '\u0AE1'],
- ['f', '\u0AE2'],
- ['r', '\u0AE3'],
- ['\\.', '\u0AE5'],
- ['\\<', '\u0AF1'],
- ['$', '\u20B9'] ]
+ [ 'F', '\u0A8C' ],
+ [ '\\>', '\u0ABD' ],
+ [ '\\=', '\u0AC4' ],
+ [ 'X', '\u0AD0' ],
+ [ '\\+', '\u0AE0' ],
+ [ 'R', '\u0AE1' ],
+ [ 'f', '\u0AE2' ],
+ [ 'r', '\u0AE3' ],
+ [ '\\.', '\u0AE5' ],
+ [ '\\<', '\u0AF1' ],
+ [ '$', '\u20B9' ] ]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/gu/gu-inscript2.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/gu/gu-inscript2.js
index cb60e6c1..ad084333 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/gu/gu-inscript2.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/gu/gu-inscript2.js
@@ -10,107 +10,107 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['!', 'ઍ'],
- ['1', '૧'],
- ['\\@', 'ૅ'],
- ['2', '૨'],
- ['\\#', '્ર'],
- ['3', '૩'],
- ['\\$', 'ર્'],
- ['4', '૪'],
- ['5', '૫'],
- ['6', '૬'],
- ['7', '૭'],
- ['8', '૮'],
- ['\\(', '('],
- ['9', '૯'],
- ['\\)', ')'],
- ['0', '૦'],
- ['\\_', 'ઃ'],
- ['\\-', '-'],
- ['\\+', 'ઋ'],
- ['\\=', 'ૃ'],
- ['Q', 'ઔ'],
- ['q', 'ૌ'],
- ['W', 'ઐ'],
- ['w', 'ૈ'],
- ['E', 'આ'],
- ['e', 'ા'],
- ['R', 'ઈ'],
- ['r', 'ી'],
- ['T', 'ઊ'],
- ['t', 'ૂ'],
- ['Y', 'ભ'],
- ['y', 'બ'],
- ['U', 'ઙ'],
- ['u', 'હ'],
- ['I', 'ઘ'],
- ['i', 'ગ'],
- ['O', 'ધ'],
- ['o', 'દ'],
- ['P', 'ઝ'],
- ['p', 'જ'],
- ['\\{', 'ઢ'],
- ['\\[', 'ડ'],
- ['\\}', 'ઞ'],
- ['\\]', '઼'],
- ['A', 'ઓ'],
- ['a', 'ો'],
- ['S', 'એ'],
- ['s', 'ે'],
- ['D', 'અ'],
- ['d', '્'],
- ['F', 'ઇ'],
- ['f', 'િ'],
- ['G', 'ઉ'],
- ['g', 'ુ'],
- ['H', 'ફ'],
- ['h', 'પ'],
- ['j', 'ર'],
- ['K', 'ખ'],
- ['k', 'ક'],
- ['L', 'થ'],
- ['l', 'ત'],
- [':', 'છ'],
- [';', 'ચ'],
- ['\"', 'ઠ'],
- ['\\\'', 'ટ'],
- ['\\|', 'ઑ'],
- ['\\', 'ૉ'],
- ['X', 'ઁ'],
- ['x', 'ં'],
- ['C', 'ણ'],
- ['c', 'મ'],
- ['v', 'ન'],
- ['b', 'વ'],
- ['N', 'ળ'],
- ['n', 'લ'],
- ['M', 'શ'],
- ['m', 'સ'],
- ['\\<', 'ષ'],
- [',', ','],
- ['\\>', '।'],
- ['\\.', '.'],
- ['/', 'ય'],
- ['\\%', 'જ્ઞ'],
- ['\\^', 'ત્ર'],
- ['\\&', 'ક્ષ'],
- ['\\*', 'શ્ર']
+ [ '!', 'ઍ' ],
+ [ '1', '૧' ],
+ [ '\\@', 'ૅ' ],
+ [ '2', '૨' ],
+ [ '\\#', '્ર' ],
+ [ '3', '૩' ],
+ [ '\\$', 'ર્' ],
+ [ '4', '૪' ],
+ [ '5', '૫' ],
+ [ '6', '૬' ],
+ [ '7', '૭' ],
+ [ '8', '૮' ],
+ [ '\\(', '(' ],
+ [ '9', '૯' ],
+ [ '\\)', ')' ],
+ [ '0', '૦' ],
+ [ '\\_', 'ઃ' ],
+ [ '\\-', '-' ],
+ [ '\\+', 'ઋ' ],
+ [ '\\=', 'ૃ' ],
+ [ 'Q', 'ઔ' ],
+ [ 'q', 'ૌ' ],
+ [ 'W', 'ઐ' ],
+ [ 'w', 'ૈ' ],
+ [ 'E', 'આ' ],
+ [ 'e', 'ા' ],
+ [ 'R', 'ઈ' ],
+ [ 'r', 'ી' ],
+ [ 'T', 'ઊ' ],
+ [ 't', 'ૂ' ],
+ [ 'Y', 'ભ' ],
+ [ 'y', 'બ' ],
+ [ 'U', 'ઙ' ],
+ [ 'u', 'હ' ],
+ [ 'I', 'ઘ' ],
+ [ 'i', 'ગ' ],
+ [ 'O', 'ધ' ],
+ [ 'o', 'દ' ],
+ [ 'P', 'ઝ' ],
+ [ 'p', 'જ' ],
+ [ '\\{', 'ઢ' ],
+ [ '\\[', 'ડ' ],
+ [ '\\}', 'ઞ' ],
+ [ '\\]', '઼' ],
+ [ 'A', 'ઓ' ],
+ [ 'a', 'ો' ],
+ [ 'S', 'એ' ],
+ [ 's', 'ે' ],
+ [ 'D', 'અ' ],
+ [ 'd', '્' ],
+ [ 'F', 'ઇ' ],
+ [ 'f', 'િ' ],
+ [ 'G', 'ઉ' ],
+ [ 'g', 'ુ' ],
+ [ 'H', 'ફ' ],
+ [ 'h', 'પ' ],
+ [ 'j', 'ર' ],
+ [ 'K', 'ખ' ],
+ [ 'k', 'ક' ],
+ [ 'L', 'થ' ],
+ [ 'l', 'ત' ],
+ [ ':', 'છ' ],
+ [ ';', 'ચ' ],
+ [ '\"', 'ઠ' ],
+ [ '\\\'', 'ટ' ],
+ [ '\\|', 'ઑ' ],
+ [ '\\', 'ૉ' ],
+ [ 'X', 'ઁ' ],
+ [ 'x', 'ં' ],
+ [ 'C', 'ણ' ],
+ [ 'c', 'મ' ],
+ [ 'v', 'ન' ],
+ [ 'b', 'વ' ],
+ [ 'N', 'ળ' ],
+ [ 'n', 'લ' ],
+ [ 'M', 'શ' ],
+ [ 'm', 'સ' ],
+ [ '\\<', 'ષ' ],
+ [ ',', ',' ],
+ [ '\\>', '।' ],
+ [ '\\.', '.' ],
+ [ '/', 'ય' ],
+ [ '\\%', 'જ્ઞ' ],
+ [ '\\^', 'ત્ર' ],
+ [ '\\&', 'ક્ષ' ],
+ [ '\\*', 'શ્ર' ]
],
patterns_x: [
- ['1', '\u200d'],
- ['2', '\u200c'],
- ['4', '₹'],
- ['\\+', 'ૠ'],
- ['\\=', 'ૄ'],
- ['R', 'ૡ'],
- ['r', 'ૣ'],
- ['F', 'ઌ'],
- ['f', 'ૢ'],
- ['X', 'ૐ'],
- [',', '૱'],
- ['\\>', '૥'],
- ['\\.', 'ઽ']
+ [ '1', '\u200d' ],
+ [ '2', '\u200c' ],
+ [ '4', '₹' ],
+ [ '\\+', 'ૠ' ],
+ [ '\\=', 'ૄ' ],
+ [ 'R', 'ૡ' ],
+ [ 'r', 'ૣ' ],
+ [ 'F', 'ઌ' ],
+ [ 'f', 'ૢ' ],
+ [ 'X', 'ૐ' ],
+ [ ',', '૱' ],
+ [ '\\>', '૥' ],
+ [ '\\.', 'ઽ' ]
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/gu/gu-phonetic.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/gu/gu-phonetic.js
index 109aeab7..2bc4ba24 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/gu/gu-phonetic.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/gu/gu-phonetic.js
@@ -10,100 +10,100 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['\\~', 'ઍ'],
- ['\\`', 'ૅ'],
- ['\\!', '!'],
- ['1', '૧'],
- ['\\@', '@'],
- ['2', '૨'],
- ['\\#', '#'],
- ['3', '૩'],
- ['\\$', '$'],
- ['4', '૪'],
- ['\\&', '૱'],
- ['5', '૫'],
- ['6', '૬'],
- ['7', '૭'],
- ['8', '૮'],
- ['\\(', '('],
- ['9', '૯'],
- ['\\)', ')'],
- ['0', '૦'],
- ['\\_', '_'],
- ['\\-', '-'],
- ['\\+', '+'],
- ['\\=', '='],
- ['Q', 'ઔ'],
- ['q', 'ઓ'],
- ['W', 'ઠ'],
- ['w', 'ટ'],
- ['E', 'ૈ'],
- ['e', 'ે'],
- ['R', 'ૃ'],
- ['r', 'ર'],
- ['T', 'થ'],
- ['t', 'ત'],
- ['Y', 'ય઼'],
- ['y', 'ય'],
- ['U', 'ૂ'],
- ['u', 'ુ'],
- ['I', 'ી'],
- ['i', 'િ'],
- ['O', 'ૌ'],
- ['o', 'ો'],
- ['P', 'ફ'],
- ['p', 'પ'],
- ['\\{', 'ઢ'],
- ['\\[', 'ડ'],
- ['\\}', 'ર઼'],
- ['\\]', 'ઋ'],
- ['A', 'આ'],
- ['a', 'ા'],
- ['S', 'શ'],
- ['s', 'સ'],
- ['D', 'ધ'],
- ['d', 'દ'],
- ['F', 'અ'],
- ['f', '્'],
- ['G', 'ઘ'],
- ['g', 'ગ'],
- ['H', 'ઃ'],
- ['h', 'હ'],
- ['J', 'ઝ'],
- ['j', 'જ'],
- ['K', 'ખ'],
- ['k', 'ક'],
- ['L', 'ળ'],
- ['l', 'લ'],
- [':', 'ઈ'],
- [';', 'ઇ'],
- ['"', 'ઊ'],
- ['\\\'', 'ઉ'],
- ['\\|', 'ઑ'],
- ['\\\\', 'ૉ'],
- ['Z', 'ઁ'],
- ['z', 'ઙ'],
- ['x', 'ષ'],
- ['C', 'છ'],
- ['c', 'ચ'],
- ['V', 'ઽ'],
- ['v', 'વ'],
- ['B', 'ભ'],
- ['b', 'બ'],
- ['N', 'ણ'],
- ['n', 'ન'],
- ['M', 'ં'],
- ['m', 'મ'],
- ['\\<', 'ૐ'],
- [',', ','],
- ['\\>', '઼'],
- ['\\.', '.'],
- ['\\?', 'ઐ'],
- ['/', 'એ'],
- ['X', 'ક્ષ'],
- ['\\%', 'જ્ઞ'],
- ['\\^', 'ત્ર'],
- ['\\*', 'શ્ર']]
+ [ '\\~', 'ઍ' ],
+ [ '\\`', 'ૅ' ],
+ [ '\\!', '!' ],
+ [ '1', '૧' ],
+ [ '\\@', '@' ],
+ [ '2', '૨' ],
+ [ '\\#', '#' ],
+ [ '3', '૩' ],
+ [ '\\$', '$' ],
+ [ '4', '૪' ],
+ [ '\\&', '૱' ],
+ [ '5', '૫' ],
+ [ '6', '૬' ],
+ [ '7', '૭' ],
+ [ '8', '૮' ],
+ [ '\\(', '(' ],
+ [ '9', '૯' ],
+ [ '\\)', ')' ],
+ [ '0', '૦' ],
+ [ '\\_', '_' ],
+ [ '\\-', '-' ],
+ [ '\\+', '+' ],
+ [ '\\=', '=' ],
+ [ 'Q', 'ઔ' ],
+ [ 'q', 'ઓ' ],
+ [ 'W', 'ઠ' ],
+ [ 'w', 'ટ' ],
+ [ 'E', 'ૈ' ],
+ [ 'e', 'ે' ],
+ [ 'R', 'ૃ' ],
+ [ 'r', 'ર' ],
+ [ 'T', 'થ' ],
+ [ 't', 'ત' ],
+ [ 'Y', 'ય઼' ],
+ [ 'y', 'ય' ],
+ [ 'U', 'ૂ' ],
+ [ 'u', 'ુ' ],
+ [ 'I', 'ી' ],
+ [ 'i', 'િ' ],
+ [ 'O', 'ૌ' ],
+ [ 'o', 'ો' ],
+ [ 'P', 'ફ' ],
+ [ 'p', 'પ' ],
+ [ '\\{', 'ઢ' ],
+ [ '\\[', 'ડ' ],
+ [ '\\}', 'ર઼' ],
+ [ '\\]', 'ઋ' ],
+ [ 'A', 'આ' ],
+ [ 'a', 'ા' ],
+ [ 'S', 'શ' ],
+ [ 's', 'સ' ],
+ [ 'D', 'ધ' ],
+ [ 'd', 'દ' ],
+ [ 'F', 'અ' ],
+ [ 'f', '્' ],
+ [ 'G', 'ઘ' ],
+ [ 'g', 'ગ' ],
+ [ 'H', 'ઃ' ],
+ [ 'h', 'હ' ],
+ [ 'J', 'ઝ' ],
+ [ 'j', 'જ' ],
+ [ 'K', 'ખ' ],
+ [ 'k', 'ક' ],
+ [ 'L', 'ળ' ],
+ [ 'l', 'લ' ],
+ [ ':', 'ઈ' ],
+ [ ';', 'ઇ' ],
+ [ '"', 'ઊ' ],
+ [ '\\\'', 'ઉ' ],
+ [ '\\|', 'ઑ' ],
+ [ '\\\\', 'ૉ' ],
+ [ 'Z', 'ઁ' ],
+ [ 'z', 'ઙ' ],
+ [ 'x', 'ષ' ],
+ [ 'C', 'છ' ],
+ [ 'c', 'ચ' ],
+ [ 'V', 'ઽ' ],
+ [ 'v', 'વ' ],
+ [ 'B', 'ભ' ],
+ [ 'b', 'બ' ],
+ [ 'N', 'ણ' ],
+ [ 'n', 'ન' ],
+ [ 'M', 'ં' ],
+ [ 'm', 'મ' ],
+ [ '\\<', 'ૐ' ],
+ [ ',', ',' ],
+ [ '\\>', '઼' ],
+ [ '\\.', '.' ],
+ [ '\\?', 'ઐ' ],
+ [ '/', 'એ' ],
+ [ 'X', 'ક્ષ' ],
+ [ '\\%', 'જ્ઞ' ],
+ [ '\\^', 'ત્ર' ],
+ [ '\\*', 'શ્ર' ] ]
};
$.ime.register( guPhonetic );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/gu/gu-transliteration.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/gu/gu-transliteration.js
index 3dd489b2..ca1840e7 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/gu/gu-transliteration.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/gu/gu-transliteration.js
@@ -3,7 +3,7 @@
var guTransliteration = {
id: 'gu-transliteration',
- name: 'લિપ્યાંતરણ',
+ name: 'લિપ્યંતરણ',
description: 'Gujarati transliteration',
date: '2012-10-14',
URL: 'http://github.com/wikimedia/jquery.ime',
@@ -13,143 +13,143 @@
contextLength: 2,
maxKeyLength: 4,
patterns: [
- ['ક્h', 'c', 'ચ'],
- ['\\\\([A-Za-z\\>_~\\.0-9])', '\\\\', '$1'],
+ [ 'ક્h', 'c', 'ચ' ],
+ [ '\\\\([A-Za-z\\>_~\\.0-9])', '\\\\', '$1' ],
- ['([ક-હ]઼?)્a', '$1'],
- ['([ક-હ]઼?)્A', '$1ા'],
- ['([ક-હ]઼?)a', '$1ા'],
- ['([ક-હ]઼?)્i', '$1િ'],
- ['([ક-હ]઼?)(્I|િi|ેe)', '$1ી'],
- ['([ક-હ]઼?)્u', '$1ુ'],
- ['([ક-હ]઼?)(ુu|્U|ોo)', '$1ૂ'],
- ['([ક-હ]઼?)્R', '$1ૃ'],
- ['([ક-હ]઼?)ૃR', '$1ૄ'],
- ['([ક-હ]઼?)ે\\^', '$1ૅ'],
- ['([ક-હ]઼?)્e', '$1ે'],
- ['([ક-હ]઼?)્E', '$1ૅ'],
- ['([ક-હ]઼?)ો\\^', '$1ૉ'],
- ['([ક-હ]઼?)i', '$1ૈ'],
- ['([ક-હ]઼?)્o', '$1ો'],
- ['([ક-હ]઼?)્O', '$1ૉ'],
- ['([ક-હ]઼?)u', '$1ૌ'],
+ [ '([ક-હ]઼?)્a', '$1' ],
+ [ '([ક-હ]઼?)્A', '$1ા' ],
+ [ '([ક-હ]઼?)a', '$1ા' ],
+ [ '([ક-હ]઼?)્i', '$1િ' ],
+ [ '([ક-હ]઼?)(્I|િi|ેe)', '$1ી' ],
+ [ '([ક-હ]઼?)્u', '$1ુ' ],
+ [ '([ક-હ]઼?)(ુu|્U|ોo)', '$1ૂ' ],
+ [ '([ક-હ]઼?)્R', '$1ૃ' ],
+ [ '([ક-હ]઼?)ૃR', '$1ૄ' ],
+ [ '([ક-હ]઼?)ે\\^', '$1ૅ' ],
+ [ '([ક-હ]઼?)્e', '$1ે' ],
+ [ '([ક-હ]઼?)્E', '$1ૅ' ],
+ [ '([ક-હ]઼?)ો\\^', '$1ૉ' ],
+ [ '([ક-હ]઼?)i', '$1ૈ' ],
+ [ '([ક-હ]઼?)્o', '$1ો' ],
+ [ '([ક-હ]઼?)્O', '$1ૉ' ],
+ [ '([ક-હ]઼?)u', '$1ૌ' ],
- ['([ક-હ]઼?)ૃa', '$1્ર'],
- ['([ક-હ]઼?)ૃA', '$1્રા'],
- ['([ક-હ]઼?)ૃi', '$1્રિ'],
- ['([ક-હ]઼?)ૃI', '$1્રી'],
- ['([ક-હ]઼?)ૃu', '$1્રુ'],
- ['([ક-હ]઼?)ૃU', '$1્રૂ'],
- ['([ક-હ]઼?)ૃ\\^', '$1્રૅ'],
- ['([ક-હ]઼?)ૃe', '$1્રે'],
- ['([ક-હ]઼?)ૃE', '$1્રૅ'],
- ['([ક-હ]઼?)ૃo', '$1્રો'],
- ['([ક-હ]઼?)ૃO', '$1્રો'],
- ['([ક-હ]઼?)ૃ\\~', '$1્ર્'],
+ [ '([ક-હ]઼?)ૃa', '$1્ર' ],
+ [ '([ક-હ]઼?)ૃA', '$1્રા' ],
+ [ '([ક-હ]઼?)ૃi', '$1્રિ' ],
+ [ '([ક-હ]઼?)ૃI', '$1્રી' ],
+ [ '([ક-હ]઼?)ૃu', '$1્રુ' ],
+ [ '([ક-હ]઼?)ૃU', '$1્રૂ' ],
+ [ '([ક-હ]઼?)ૃ\\^', '$1્રૅ' ],
+ [ '([ક-હ]઼?)ૃe', '$1્રે' ],
+ [ '([ક-હ]઼?)ૃE', '$1્રૅ' ],
+ [ '([ક-હ]઼?)ૃo', '$1્રો' ],
+ [ '([ક-હ]઼?)ૃO', '$1્રો' ],
+ [ '([ક-હ]઼?)ૃ\\~', '$1્ર્' ],
- ['([ક-હ])્J', '$1઼્'],
+ [ '([ક-હ])્J', '$1઼્' ],
- ['અa', 'આ'],
- ['(ઑo|ઉu)', 'ઊ'],
- ['ઍ\\^', 'એ'],
- ['અi', 'ઐ'],
- ['અ\\^', 'ઍ'],
- ['(ઇi|ઍe)', 'ઈ'],
- ['ઑ\\^', 'ઓ'],
- ['અu', 'ઔ'],
- ['ઋR', 'ૠ'],
- ['ળ્l', 'ઌ'],
- ['ઌl', 'ૡ'],
- ['ં\\^', 'ઁ'],
- ['ઑM', 'ૐ'],
+ [ 'અa', 'આ' ],
+ [ '(ઑo|ઉu)', 'ઊ' ],
+ [ 'ઍ\\^', 'એ' ],
+ [ 'અi', 'ઐ' ],
+ [ 'અ\\^', 'ઍ' ],
+ [ '(ઇi|ઍe)', 'ઈ' ],
+ [ 'ઑ\\^', 'ઓ' ],
+ [ 'અu', 'ઔ' ],
+ [ 'ઋR', 'ૠ' ],
+ [ 'ળ્l', 'ઌ' ],
+ [ 'ઌl', 'ૡ' ],
+ [ 'ં\\^', 'ઁ' ],
+ [ 'ઑM', 'ૐ' ],
- ['રY', 'ર્ય'],
+ [ 'રY', 'ર્ય' ],
- ['ક્h', 'ખ્'], // kh
- ['ગ્h', 'ઘ્'], // gh
- ['ન્g', 'ઙ્'], // ng
- ['ચ્h', 'છ્'], // chh
- ['જ્h', 'ઝ્'], // jh
- ['જ્n', 'જ્ઞ્'], // jn
- ['ગ્n', 'જ્ઞ્'], //gn
- ['ન્j', 'ઞ્'], // ny
- ['ટ્h', 'ઠ્'], // Th
- ['ડ્h', 'ઢ્'], // Dh
- ['ત્h', 'થ્'], // th
- ['દ્h', 'ધ્'], // dh
- ['પ્h', 'ફ્'], // ph
- ['બ્h', 'ભ્'], // bh
+ [ 'ક્h', 'ખ્' ], // kh
+ [ 'ગ્h', 'ઘ્' ], // gh
+ [ 'ન્g', 'ઙ્' ], // ng
+ [ 'ચ્h', 'છ્' ], // chh
+ [ 'જ્h', 'ઝ્' ], // jh
+ [ 'જ્n', 'જ્ઞ્' ], // jn
+ [ 'ગ્n', 'જ્ઞ્' ], // gn
+ [ 'ન્j', 'ઞ્' ], // ny
+ [ 'ટ્h', 'ઠ્' ], // Th
+ [ 'ડ્h', 'ઢ્' ], // Dh
+ [ 'ત્h', 'થ્' ], // th
+ [ 'દ્h', 'ધ્' ], // dh
+ [ 'પ્h', 'ફ્' ], // ph
+ [ 'બ્h', 'ભ્' ], // bh
- ['ઋa', 'ર'],
- ['ઋA', 'રા'],
- ['ઋi', 'રિ'],
- ['ઋI', 'રી'],
- ['ઋu', 'રુ'],
- ['ઋU', 'રૂ'],
- ['ઋ\\^', 'રૅ'],
- ['ઋe', 'રે'],
- ['ઋE', 'રૅ'],
- ['ઋo', 'રો'],
- ['ઋ\\~', 'ર્'],
+ [ 'ઋa', 'ર' ],
+ [ 'ઋA', 'રા' ],
+ [ 'ઋi', 'રિ' ],
+ [ 'ઋI', 'રી' ],
+ [ 'ઋu', 'રુ' ],
+ [ 'ઋU', 'રૂ' ],
+ [ 'ઋ\\^', 'રૅ' ],
+ [ 'ઋe', 'રે' ],
+ [ 'ઋE', 'રૅ' ],
+ [ 'ઋo', 'રો' ],
+ [ 'ઋ\\~', 'ર્' ],
- ['સ્h', 'શ્'],
- ['ક઼્h', 'ખ'],
+ [ 'સ્h', 'શ્' ],
+ [ 'ક઼્h', 'ખ' ],
- ['a', 'અ'],
- ['b', 'બ્'],
- ['c', 'ચ્'],
- ['d', 'દ્'],
- ['e', 'એ'],
- ['f', 'ફ્'],
- ['g', 'ગ્'],
- ['h', 'હ્'],
- ['i', 'ઇ'],
- ['j', 'જ્'],
- ['k', 'ક્'],
- ['l', 'લ્'],
- ['m', 'મ્'],
- ['n', 'ન્'],
- ['o', 'ઓ'],
- ['p', 'પ્'],
- ['r', 'ર્'],
- ['s', 'સ્'],
- ['t', 'ત્'],
- ['u', 'ઉ'],
- ['(v|w)', 'વ્'],
- ['x', 'ક્ષ્'],
- ['y', 'ય્'],
- ['(z|Z)', 'ઝ્'],
- ['A', 'આ'],
- ['D', 'ડ્'],
- ['E', 'ઍ'],
- ['F', 'ફ્'],
- ['H', 'ઃ'],
- ['I', 'ઈ'],
- ['L', 'ળ્'],
- ['M', 'ં'],
- ['N', 'ણ્'],
- ['O', 'ઑ'],
- ['R', 'ઋ'],
- ['S', 'ષ્'],
- ['T', 'ટ્'],
- ['U', 'ઊ'],
- ['0', '૦'],
- ['1', '૧'],
- ['2', '૨'],
- ['3', '૩'],
- ['4', '૪'],
- ['5', '૫'],
- ['6', '૬'],
- ['7', '૭'],
- ['8', '૮'],
- ['9', '૯'],
+ [ 'a', 'અ' ],
+ [ 'b', 'બ્' ],
+ [ 'c', 'ચ્' ],
+ [ 'd', 'દ્' ],
+ [ 'e', 'એ' ],
+ [ 'f', 'ફ્' ],
+ [ 'g', 'ગ્' ],
+ [ 'h', 'હ્' ],
+ [ 'i', 'ઇ' ],
+ [ 'j', 'જ્' ],
+ [ 'k', 'ક્' ],
+ [ 'l', 'લ્' ],
+ [ 'm', 'મ્' ],
+ [ 'n', 'ન્' ],
+ [ 'o', 'ઓ' ],
+ [ 'p', 'પ્' ],
+ [ 'r', 'ર્' ],
+ [ 's', 'સ્' ],
+ [ 't', 'ત્' ],
+ [ 'u', 'ઉ' ],
+ [ '(v|w)', 'વ્' ],
+ [ 'x', 'ક્ષ્' ],
+ [ 'y', 'ય્' ],
+ [ '(z|Z)', 'ઝ્' ],
+ [ 'A', 'આ' ],
+ [ 'D', 'ડ્' ],
+ [ 'E', 'ઍ' ],
+ [ 'F', 'ફ્' ],
+ [ 'H', 'ઃ' ],
+ [ 'I', 'ઈ' ],
+ [ 'L', 'ળ્' ],
+ [ 'M', 'ં' ],
+ [ 'N', 'ણ્' ],
+ [ 'O', 'ઑ' ],
+ [ 'R', 'ઋ' ],
+ [ 'S', 'ષ્' ],
+ [ 'T', 'ટ્' ],
+ [ 'U', 'ઊ' ],
+ [ '0', '૦' ],
+ [ '1', '૧' ],
+ [ '2', '૨' ],
+ [ '3', '૩' ],
+ [ '4', '૪' ],
+ [ '5', '૫' ],
+ [ '6', '૬' ],
+ [ '7', '૭' ],
+ [ '8', '૮' ],
+ [ '9', '૯' ],
// Danda characters are only needed in some text, so '.' is not mapped to it.
- ['।K', '॥'], // Double danda, must be before danda
- ['K', '।'], // Danda
- ['//', 'ઽ'],
- ['J', '઼'], // Nukta
- ['(\u200C)*`', '\u200C']] // ZWNJ
+ [ '।K', '॥' ], // Double danda, must be before danda
+ [ 'K', '।' ], // Danda
+ [ '//', 'ઽ' ],
+ [ 'J', '઼' ], // Nukta
+ [ '(\u200C)*`', '\u200C' ] ] // ZWNJ
};
$.ime.register( guTransliteration );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/he/he-standard-2012-extonly.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/he/he-standard-2012-extonly.js
index b5397826..5810dacc 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/he/he-standard-2012-extonly.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/he/he-standard-2012-extonly.js
@@ -10,55 +10,55 @@
author: 'Amir E. Aharoni (אָמִיר אֱלִישָׁע אַהֲרוֹנִי, [[User:Amire80]])',
license: 'GPLv3',
version: '1.0',
- patterns: [], //// Empty, because the assumption is that the user is using a Hebrew keyboard already
+ patterns: [], // Empty, because the assumption is that the user is using a Hebrew keyboard already
patterns_x: [
- ['\u05E9', 'ְ'], // Sheva, ש
+ [ '\u05E9', 'ְ' ], // Sheva, ש
- ['\u05E7', 'ָ'], // Qamats, ק
- ['\u05E8', 'ֳ'], // Hataf qamats, ר
- ['\u05E4', 'ַ'], // Patah, פ
- ['\\]', 'ֲ'], // Hataf patah, ]
+ [ '\u05E7', 'ָ' ], // Qamats, ק
+ [ '\u05E8', 'ֳ' ], // Hataf qamats, ר
+ [ '\u05E4', 'ַ' ], // Patah, פ
+ [ '\\]', 'ֲ' ], // Hataf patah, ]
- ['\u05E6', 'ֵ'], // Tsere, צ
- ['\u05E1', 'ֶ'], // Segol, ס
- ['\u05D1', 'ֱ'], // Hataf segol, ב
+ [ '\u05E6', 'ֵ' ], // Tsere, צ
+ [ '\u05E1', 'ֶ' ], // Segol, ס
+ [ '\u05D1', 'ֱ' ], // Hataf segol, ב
- ['\u05D7', 'ִ'], // Hiriq, ח
+ [ '\u05D7', 'ִ' ], // Hiriq, ח
- ['\u05D5', 'ֹ'], // Holam, ו
+ [ '\u05D5', 'ֹ' ], // Holam, ו
- ['\\\\', 'ֻ'], // Qubuts, \
+ [ '\\\\', 'ֻ' ], // Qubuts, \
- ['\u05D3', 'ּ'], // Dagesh, ד
+ [ '\u05D3', 'ּ' ], // Dagesh, ד
- ['/', 'ׂ'], // Sin dot
- ['\'', 'ׁ'], // Shin dot
+ [ '/', 'ׂ' ], // Sin dot
+ [ '\'', 'ׁ' ], // Shin dot
- ['-', '\u05BE'], // Maqaf
- ['=', '–'], // Qav mafrid - en dash
- ['\\[', 'ֿ'], // Rafe
- ['1', 'ֽ'], // Meteg
- ['3', '€'], // Euro sign
- ['4', '₪'], // Sheqel sign
- ['5', '°'], // Degree
- ['6', '֫'], // Ole
- ['8', '×'], // Multiplication
- ['9', '\u200e'], // LRM
- ['0', '\u200f'], // RLM
- ['\\.', '÷'], // Division
+ [ '-', '\u05BE' ], // Maqaf
+ [ '=', '–' ], // Qav mafrid - en dash
+ [ '\\[', 'ֿ' ], // Rafe
+ [ '1', 'ֽ' ], // Meteg
+ [ '3', '€' ], // Euro sign
+ [ '4', '₪' ], // Sheqel sign
+ [ '5', '°' ], // Degree
+ [ '6', '֫' ], // Ole
+ [ '8', '×' ], // Multiplication
+ [ '9', '\u200e' ], // LRM
+ [ '0', '\u200f' ], // RLM
+ [ '\\.', '÷' ], // Division
- ['\u05D8', 'װ'], // Double vav, ט
- ['\u05D9', 'ײ'], // Double yod, י
- ['\u05E2', 'ױ'], // Vav-yod, ע
+ [ '\u05D8', 'װ' ], // Double vav, ט
+ [ '\u05D9', 'ײ' ], // Double yod, י
+ [ '\u05E2', 'ױ' ], // Vav-yod, ע
// Some source code editors may show the next two lines
// in a weird way because of auto-directionality.
- [';', '׳'], // Geresh, ';'
- [',', '״'], // Gershayim, ','
- ['\u05E3', '„'], // Opening double quote, ף
- ['\u05DA', '”'], // Closing double quote, ך
- ['\u05E5', '‚'], // Opening single quote, ץ
- ['\u05EA', '’'] // Closing single quote, ת
+ [ ';', '׳' ], // Geresh, ';'
+ [ ',', '״' ], // Gershayim, ','
+ [ '\u05E3', '„' ], // Opening double quote, ף
+ [ '\u05DA', '”' ], // Closing double quote, ך
+ [ '\u05E5', '‚' ], // Opening single quote, ץ
+ [ '\u05EA', '’' ] // Closing single quote, ת
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hi/hi-inscript2.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hi/hi-inscript2.js
index 446dc2a6..87f3e717 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hi/hi-inscript2.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hi/hi-inscript2.js
@@ -10,116 +10,116 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['\\!', 'ऍ'],
- ['\\@', 'ॅ'],
- ['1', '१'],
- ['2', '२'],
- ['\\#', '्र'],
- ['3', '३'],
- ['\\$', 'र्'],
- ['4', '४'],
- ['5', '५'],
- ['6', '६'],
- ['7', '७'],
- ['8', '८'],
- ['\\(', '('],
- ['9', '९'],
- ['\\]', ']'],
- ['0', '०'],
- ['\\_', 'ः'],
- ['\\-', '-'],
- ['\\+', 'ऋ'],
- ['\\=', 'ृ'],
- ['Q', 'औ'],
- ['q', 'ौ'],
- ['W', 'ऐ'],
- ['w', 'ै'],
- ['E', 'आ'],
- ['e', 'ा'],
- ['R', 'ई'],
- ['r', 'ी'],
- ['T', 'ऊ'],
- ['t', 'ू'],
- ['Y', 'भ'],
- ['y', 'ब'],
- ['U', 'ङ'],
- ['u', 'ह'],
- ['I', 'घ'],
- ['i', 'ग'],
- ['O', 'ध'],
- ['o', 'द'],
- ['P', 'झ'],
- ['p', 'ज'],
- ['\\{', 'ढ'],
- ['\\[', 'ड'],
- ['\\}', 'ञ'],
- ['\\]', '़'],
- ['A', 'ओ'],
- ['a', 'ो'],
- ['S', 'ए'],
- ['s', 'े'],
- ['D', 'अ'],
- ['d', '्'],
- ['F', 'इ'],
- ['f', 'ि'],
- ['G', 'उ'],
- ['g', 'ु'],
- ['H', 'फ'],
- ['h', 'प'],
- ['j', 'र'],
- ['K', 'ख'],
- ['k', 'क'],
- ['L', 'थ'],
- ['l', 'त'],
- [':', 'छ'],
- [';', 'च'],
- ['\"', 'ठ'],
- ['\'', 'ट'],
- ['\\|', 'ऑ'],
- ['\\\\', 'ॉ'],
- ['X', 'ँ'],
- ['x', 'ं'],
- ['C', 'ण'],
- ['c', 'म'],
- ['v', 'न'],
- ['b', 'व'],
- ['n', 'ल'],
- ['M', 'श'],
- ['m', 'स'],
- ['\\<', 'ष'],
- [',', ','],
- ['\\>', '।'],
- ['\\.', '.'],
- ['/', 'य'],
- ['\\%', 'ज्ञ'],
- ['\\^', 'त्र'],
- ['\\&', 'क्ष'],
- ['\\*', 'श्र']
+ [ '\\!', 'ऍ' ],
+ [ '\\@', 'ॅ' ],
+ [ '1', '१' ],
+ [ '2', '२' ],
+ [ '\\#', '्र' ],
+ [ '3', '३' ],
+ [ '\\$', 'र्' ],
+ [ '4', '४' ],
+ [ '5', '५' ],
+ [ '6', '६' ],
+ [ '7', '७' ],
+ [ '8', '८' ],
+ [ '\\(', '(' ],
+ [ '9', '९' ],
+ [ '\\]', ']' ],
+ [ '0', '०' ],
+ [ '\\_', 'ः' ],
+ [ '\\-', '-' ],
+ [ '\\+', 'ऋ' ],
+ [ '\\=', 'ृ' ],
+ [ 'Q', 'औ' ],
+ [ 'q', 'ौ' ],
+ [ 'W', 'ऐ' ],
+ [ 'w', 'ै' ],
+ [ 'E', 'आ' ],
+ [ 'e', 'ा' ],
+ [ 'R', 'ई' ],
+ [ 'r', 'ी' ],
+ [ 'T', 'ऊ' ],
+ [ 't', 'ू' ],
+ [ 'Y', 'भ' ],
+ [ 'y', 'ब' ],
+ [ 'U', 'ङ' ],
+ [ 'u', 'ह' ],
+ [ 'I', 'घ' ],
+ [ 'i', 'ग' ],
+ [ 'O', 'ध' ],
+ [ 'o', 'द' ],
+ [ 'P', 'झ' ],
+ [ 'p', 'ज' ],
+ [ '\\{', 'ढ' ],
+ [ '\\[', 'ड' ],
+ [ '\\}', 'ञ' ],
+ [ '\\]', '़' ],
+ [ 'A', 'ओ' ],
+ [ 'a', 'ो' ],
+ [ 'S', 'ए' ],
+ [ 's', 'े' ],
+ [ 'D', 'अ' ],
+ [ 'd', '्' ],
+ [ 'F', 'इ' ],
+ [ 'f', 'ि' ],
+ [ 'G', 'उ' ],
+ [ 'g', 'ु' ],
+ [ 'H', 'फ' ],
+ [ 'h', 'प' ],
+ [ 'j', 'र' ],
+ [ 'K', 'ख' ],
+ [ 'k', 'क' ],
+ [ 'L', 'थ' ],
+ [ 'l', 'त' ],
+ [ ':', 'छ' ],
+ [ ';', 'च' ],
+ [ '\"', 'ठ' ],
+ [ '\'', 'ट' ],
+ [ '\\|', 'ऑ' ],
+ [ '\\\\', 'ॉ' ],
+ [ 'X', 'ँ' ],
+ [ 'x', 'ं' ],
+ [ 'C', 'ण' ],
+ [ 'c', 'म' ],
+ [ 'v', 'न' ],
+ [ 'b', 'व' ],
+ [ 'n', 'ल' ],
+ [ 'M', 'श' ],
+ [ 'm', 'स' ],
+ [ '\\<', 'ष' ],
+ [ ',', ',' ],
+ [ '\\>', '।' ],
+ [ '\\.', '.' ],
+ [ '/', 'य' ],
+ [ '\\%', 'ज्ञ' ],
+ [ '\\^', 'त्र' ],
+ [ '\\&', 'क्ष' ],
+ [ '\\*', 'श्र' ]
],
patterns_x: [
- ['1', '\u200d'],
- ['2', '\u200c'],
- ['4', '₹'],
- ['\\+', 'ॠ'],
- ['\\=', 'ॄ'],
- ['e', '॑'],
- ['i', 'ग़'],
- ['R', 'ॡ'],
- ['r', 'ॣ'],
- ['p', 'ज़'],
- ['\\{', 'ढ़'],
- ['\\[', 'ड़'],
- ['H', 'फ़'],
- ['K', 'ख़'],
- ['k', 'क़'],
- ['d', '॒'],
- ['F', 'ऌ'],
- ['f', 'ॢ'],
- ['X', 'ॐ'],
- ['N', 'ळ'],
- [',', '॰'],
- ['\\>', 'ऽ'],
- ['\\.', '॥']
+ [ '1', '\u200d' ],
+ [ '2', '\u200c' ],
+ [ '4', '₹' ],
+ [ '\\+', 'ॠ' ],
+ [ '\\=', 'ॄ' ],
+ [ 'e', '॑' ],
+ [ 'i', 'ग़' ],
+ [ 'R', 'ॡ' ],
+ [ 'r', 'ॣ' ],
+ [ 'p', 'ज़' ],
+ [ '\\{', 'ढ़' ],
+ [ '\\[', 'ड़' ],
+ [ 'H', 'फ़' ],
+ [ 'K', 'ख़' ],
+ [ 'k', 'क़' ],
+ [ 'd', '॒' ],
+ [ 'F', 'ऌ' ],
+ [ 'f', 'ॢ' ],
+ [ 'X', 'ॐ' ],
+ [ 'N', 'ळ' ],
+ [ ',', '॰' ],
+ [ '\\>', 'ऽ' ],
+ [ '\\.', '॥' ]
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hi/hi-phonetic.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hi/hi-phonetic.js
index d2ddd5ec..372ae922 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hi/hi-phonetic.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hi/hi-phonetic.js
@@ -10,100 +10,100 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['्f', '्\u200c'],
- ['\\~', 'ऎ'],
- ['\\`','ॆ'],
- ['\\!', 'ऍ'],
- ['1', '१'],
- ['\\@', 'ॅ'],
- ['2', '२'],
- ['\\#', 'ऑ'],
- ['3', '३'],
- ['\\$','ॉ'],
- ['4', '४'],
- ['\\%', 'ञ'],
- ['5', '५'],
- ['6', '६'],
- ['7', '७'],
- ['8', '८'],
- ['\\(', '('],
- ['9', '९'],
- ['\\)', ')'],
- ['0', '०'],
- ['\\_', '_'],
- ['\\-', '-'],
- ['\\+', '+'],
- ['\\=', '='],
- ['Q', 'औ'],
- ['q', 'ओ'],
- ['W', 'ठ'],
- ['w', 'ट'],
- ['E', 'ै'],
- ['e', 'े'],
- ['R', 'ृ'],
- ['r', 'र'],
- ['T', 'थ'],
- ['t', 'त'],
- ['Y', 'य़'],
- ['y', 'य'],
- ['U', 'ू'],
- ['u', 'ु'],
- ['I', 'ी'],
- ['i', 'ि'],
- ['O', 'ौ'],
- ['o', 'ो'],
- ['P', 'फ'],
- ['p', 'प'],
- ['\\{', 'ढ'],
- ['\\[', 'ड'],
- ['\\}', 'ऱ'],
- ['\\]', 'ऋ'],
- ['A', 'आ'],
- ['a', 'ा'],
- ['S', 'श'],
- ['s', 'स'],
- ['D', 'ध'],
- ['d', 'द'],
- ['F', 'अ'],
- ['f', '्'],
- ['G', 'घ'],
- ['g', 'ग'],
- ['H', 'ः'],
- ['h', 'ह'],
- ['J', 'झ'],
- ['j', 'ज'],
- ['K', 'ख'],
- ['k', 'क'],
- ['L', 'ळ'],
- ['l', 'ल'],
- [':', 'ई'],
- [';', 'इ'],
- ['"', 'ऊ'],
- ['\'', 'उ'],
- ['\\|', 'ऒ'],
- ['\\\\', 'ो'],
- ['Z', 'ँ'],
- ['z', 'ङ'],
- ['x', 'ष'],
- ['C', 'छ'],
- ['c', 'च'],
- ['V', 'ऴ'],
- ['v', 'व'],
- ['B', 'भ'],
- ['b', 'ब'],
- ['N', 'ण'],
- ['n', 'न'],
- ['M', 'ं'],
- ['m', 'म'],
- ['\\<', 'ऩ'],
- [',', ','],
- ['\\>', '़'],
- ['\\.', '।'],
- ['\\?', 'ऐ'],
- ['/', 'ए'],
- ['\\^', 'ज्ञ'],
- ['X', 'क्ष'],
- ['\\*', 'श्र']
+ [ '्f', '्\u200c' ],
+ [ '\\~', 'ऎ' ],
+ [ '\\`','ॆ' ],
+ [ '\\!', 'ऍ' ],
+ [ '1', '१' ],
+ [ '\\@', 'ॅ' ],
+ [ '2', '२' ],
+ [ '\\#', 'ऑ' ],
+ [ '3', '३' ],
+ [ '\\$','ॉ' ],
+ [ '4', '४' ],
+ [ '\\%', 'ञ' ],
+ [ '5', '५' ],
+ [ '6', '६' ],
+ [ '7', '७' ],
+ [ '8', '८' ],
+ [ '\\(', '(' ],
+ [ '9', '९' ],
+ [ '\\)', ')' ],
+ [ '0', '०' ],
+ [ '\\_', '_' ],
+ [ '\\-', '-' ],
+ [ '\\+', '+' ],
+ [ '\\=', '=' ],
+ [ 'Q', 'औ' ],
+ [ 'q', 'ओ' ],
+ [ 'W', 'ठ' ],
+ [ 'w', 'ट' ],
+ [ 'E', 'ै' ],
+ [ 'e', 'े' ],
+ [ 'R', 'ृ' ],
+ [ 'r', 'र' ],
+ [ 'T', 'थ' ],
+ [ 't', 'त' ],
+ [ 'Y', 'य़' ],
+ [ 'y', 'य' ],
+ [ 'U', 'ू' ],
+ [ 'u', 'ु' ],
+ [ 'I', 'ी' ],
+ [ 'i', 'ि' ],
+ [ 'O', 'ौ' ],
+ [ 'o', 'ो' ],
+ [ 'P', 'फ' ],
+ [ 'p', 'प' ],
+ [ '\\{', 'ढ' ],
+ [ '\\[', 'ड' ],
+ [ '\\}', 'ऱ' ],
+ [ '\\]', 'ऋ' ],
+ [ 'A', 'आ' ],
+ [ 'a', 'ा' ],
+ [ 'S', 'श' ],
+ [ 's', 'स' ],
+ [ 'D', 'ध' ],
+ [ 'd', 'द' ],
+ [ 'F', 'अ' ],
+ [ 'f', '्' ],
+ [ 'G', 'घ' ],
+ [ 'g', 'ग' ],
+ [ 'H', 'ः' ],
+ [ 'h', 'ह' ],
+ [ 'J', 'झ' ],
+ [ 'j', 'ज' ],
+ [ 'K', 'ख' ],
+ [ 'k', 'क' ],
+ [ 'L', 'ळ' ],
+ [ 'l', 'ल' ],
+ [ ':', 'ई' ],
+ [ ';', 'इ' ],
+ [ '"', 'ऊ' ],
+ [ '\'', 'उ' ],
+ [ '\\|', 'ऒ' ],
+ [ '\\\\', 'ो' ],
+ [ 'Z', 'ँ' ],
+ [ 'z', 'ङ' ],
+ [ 'x', 'ष' ],
+ [ 'C', 'छ' ],
+ [ 'c', 'च' ],
+ [ 'V', 'ऴ' ],
+ [ 'v', 'व' ],
+ [ 'B', 'भ' ],
+ [ 'b', 'ब' ],
+ [ 'N', 'ण' ],
+ [ 'n', 'न' ],
+ [ 'M', 'ं' ],
+ [ 'm', 'म' ],
+ [ '\\<', 'ऩ' ],
+ [ ',', ',' ],
+ [ '\\>', '़' ],
+ [ '\\.', '।' ],
+ [ '\\?', 'ऐ' ],
+ [ '/', 'ए' ],
+ [ '\\^', 'ज्ञ' ],
+ [ 'X', 'क्ष' ],
+ [ '\\*', 'श्र' ]
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hr/hr-kbd.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hr/hr-kbd.js
index 2c0b8229..bb62a3cd 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hr/hr-kbd.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hr/hr-kbd.js
@@ -11,48 +11,48 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['¸c', 'ç'],
- ['¸C', 'Ç'],
- ['¸s', 'ş'],
- ['¸S', 'Ş'],
- ['¨a', 'ä'],
- ['¨A', 'Ä'],
- ['¨e', 'ë'],
- ['¨E', 'Ë'],
- ['¨o', 'ö'],
- ['¨O', 'Ö'],
- ['¨u', 'ü'],
- ['¨U', 'Ü'],
- ['\\@', '\"'],
- ['\\^', '&'],
- ['\\&', '/'],
- ['\\*', '('],
- ['\\(', ')'],
- ['\\)', '='],
- ['\\-', '\''],
- ['\\_', '?'],
- ['\\=', '+'],
- ['\\+', '*'],
- ['\\`', '¸'],
- ['\\~', '¨'],
- ['y', 'z'],
- ['Y', 'Z'],
- ['\\[', 'š'],
- ['\\{', 'Š'],
- ['\\]', 'đ'],
- ['\\}', 'Đ'],
- [';', 'č'],
- [':', 'Č'],
- ['\'', 'ć'],
- ['\"', 'Ć'],
- ['\\\\', 'ž'],
- ['\\|', 'Ž'],
- ['z', 'y'],
- ['Z', 'Y'],
- ['\\<', ';'],
- ['\\>', ':'],
- ['/', '-'],
- ['\\?', '_']
+ [ '¸c', 'ç' ],
+ [ '¸C', 'Ç' ],
+ [ '¸s', 'ş' ],
+ [ '¸S', 'Ş' ],
+ [ '¨a', 'ä' ],
+ [ '¨A', 'Ä' ],
+ [ '¨e', 'ë' ],
+ [ '¨E', 'Ë' ],
+ [ '¨o', 'ö' ],
+ [ '¨O', 'Ö' ],
+ [ '¨u', 'ü' ],
+ [ '¨U', 'Ü' ],
+ [ '\\@', '\"' ],
+ [ '\\^', '&' ],
+ [ '\\&', '/' ],
+ [ '\\*', '(' ],
+ [ '\\(', ')' ],
+ [ '\\)', '=' ],
+ [ '\\-', '\'' ],
+ [ '\\_', '?' ],
+ [ '\\=', '+' ],
+ [ '\\+', '*' ],
+ [ '\\`', '¸' ],
+ [ '\\~', '¨' ],
+ [ 'y', 'z' ],
+ [ 'Y', 'Z' ],
+ [ '\\[', 'š' ],
+ [ '\\{', 'Š' ],
+ [ '\\]', 'đ' ],
+ [ '\\}', 'Đ' ],
+ [ ';', 'č' ],
+ [ ':', 'Č' ],
+ [ '\'', 'ć' ],
+ [ '\"', 'Ć' ],
+ [ '\\\\', 'ž' ],
+ [ '\\|', 'Ž' ],
+ [ 'z', 'y' ],
+ [ 'Z', 'Y' ],
+ [ '\\<', ';' ],
+ [ '\\>', ':' ],
+ [ '/', '-' ],
+ [ '\\?', '_' ]
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hy/hy-emslegacy.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hy/hy-emslegacy.js
index 7886f3b3..7c8103c8 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hy/hy-emslegacy.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hy/hy-emslegacy.js
@@ -25,143 +25,143 @@
license: 'GPLv3',
version: '1.1',
patterns: [
- ['1', '։'],
- ['\\!', '1'],
- ['2', 'ձ'],
- ['\\@', 'Ձ'],
- ['3', 'յ'],
- ['\\#', 'Յ'],
- ['4', '՛'],
- ['\\$', '֏'],
- ['5', ','],
- ['\\%', '4'],
- ['6', '-'],
- ['\\^', '9'],
- ['7', '․'],
- ['\\&', 'և'],
- ['8', '«'],
- ['\\*', '('],
- ['9', '»'],
- ['\\(', ')'],
- ['0', 'օ'],
- ['\\)', 'Օ'],
- ['\\-', 'ռ'],
- ['\\_', 'Ռ'],
- ['\\=', 'ժ'],
- ['\\+', 'Ժ'],
- ['\\`', '՝'],
- ['\\~', '՜'],
- ['q', 'խ'],
- ['Q', 'Խ'],
- ['w', 'ւ'],
- ['W', 'Ւ'],
- ['e', 'է'],
- ['E', 'Է'],
- ['r', 'ր'],
- ['R', 'Ր'],
- ['t', 'տ'],
- ['T', 'Տ'],
- ['y', 'ե'],
- ['Y', 'Ե'],
- ['u', 'ը'],
- ['U', 'Ը'],
- ['i', 'ի'],
- ['I', 'Ի'],
- ['o', 'ո'],
- ['O', 'Ո'],
- ['p', 'պ'],
- ['P', 'Պ'],
- ['\\[', 'չ'],
- ['\\{', 'Չ'],
- ['\\]', 'ջ'],
- ['\\}', 'Ջ'],
- ['\\\\', '\''],
- ['\\|', '՞'],
- ['a', 'ա'],
- ['A', 'Ա'],
- ['s', 'ս'],
- ['S', 'Ս'],
- ['d', 'դ'],
- ['D', 'Դ'],
- ['f', 'ֆ'],
- ['F', 'Ֆ'],
- ['g', 'ք'],
- ['G', 'Ք'],
- ['h', 'հ'],
- ['H', 'Հ'],
- ['j', 'ճ'],
- ['J', 'Ճ'],
- ['k', 'կ'],
- ['K', 'Կ'],
- ['l', 'լ'],
- ['L', 'Լ'],
- [';', 'թ'],
- [':', 'Թ'],
- ['\'', 'փ'],
- ['\"', 'Փ'],
- ['z', 'զ'],
- ['Z', 'Զ'],
- ['x', 'ց'],
- ['X', 'Ց'],
- ['c', 'գ'],
- ['C', 'Գ'],
- ['v', 'վ'],
- ['V', 'Վ'],
- ['b', 'բ'],
- ['B', 'Բ'],
- ['n', 'ն'],
- ['N', 'Ն'],
- ['m', 'մ'],
- ['M', 'Մ'],
- [',', 'շ'],
- ['\\<', 'Շ'],
- ['\\.', 'ղ'],
- ['\\>', 'Ղ'],
- ['/', 'ծ'],
- ['\\?', 'Ծ']
+ [ '1', '։' ],
+ [ '\\!', '1' ],
+ [ '2', 'ձ' ],
+ [ '\\@', 'Ձ' ],
+ [ '3', 'յ' ],
+ [ '\\#', 'Յ' ],
+ [ '4', '՛' ],
+ [ '\\$', '֏' ],
+ [ '5', ',' ],
+ [ '\\%', '4' ],
+ [ '6', '-' ],
+ [ '\\^', '9' ],
+ [ '7', '․' ],
+ [ '\\&', 'և' ],
+ [ '8', '«' ],
+ [ '\\*', '(' ],
+ [ '9', '»' ],
+ [ '\\(', ')' ],
+ [ '0', 'օ' ],
+ [ '\\)', 'Օ' ],
+ [ '\\-', 'ռ' ],
+ [ '\\_', 'Ռ' ],
+ [ '\\=', 'ժ' ],
+ [ '\\+', 'Ժ' ],
+ [ '\\`', '՝' ],
+ [ '\\~', '՜' ],
+ [ 'q', 'խ' ],
+ [ 'Q', 'Խ' ],
+ [ 'w', 'ւ' ],
+ [ 'W', 'Ւ' ],
+ [ 'e', 'է' ],
+ [ 'E', 'Է' ],
+ [ 'r', 'ր' ],
+ [ 'R', 'Ր' ],
+ [ 't', 'տ' ],
+ [ 'T', 'Տ' ],
+ [ 'y', 'ե' ],
+ [ 'Y', 'Ե' ],
+ [ 'u', 'ը' ],
+ [ 'U', 'Ը' ],
+ [ 'i', 'ի' ],
+ [ 'I', 'Ի' ],
+ [ 'o', 'ո' ],
+ [ 'O', 'Ո' ],
+ [ 'p', 'պ' ],
+ [ 'P', 'Պ' ],
+ [ '\\[', 'չ' ],
+ [ '\\{', 'Չ' ],
+ [ '\\]', 'ջ' ],
+ [ '\\}', 'Ջ' ],
+ [ '\\\\', '\'' ],
+ [ '\\|', '՞' ],
+ [ 'a', 'ա' ],
+ [ 'A', 'Ա' ],
+ [ 's', 'ս' ],
+ [ 'S', 'Ս' ],
+ [ 'd', 'դ' ],
+ [ 'D', 'Դ' ],
+ [ 'f', 'ֆ' ],
+ [ 'F', 'Ֆ' ],
+ [ 'g', 'ք' ],
+ [ 'G', 'Ք' ],
+ [ 'h', 'հ' ],
+ [ 'H', 'Հ' ],
+ [ 'j', 'ճ' ],
+ [ 'J', 'Ճ' ],
+ [ 'k', 'կ' ],
+ [ 'K', 'Կ' ],
+ [ 'l', 'լ' ],
+ [ 'L', 'Լ' ],
+ [ ';', 'թ' ],
+ [ ':', 'Թ' ],
+ [ '\'', 'փ' ],
+ [ '\"', 'Փ' ],
+ [ 'z', 'զ' ],
+ [ 'Z', 'Զ' ],
+ [ 'x', 'ց' ],
+ [ 'X', 'Ց' ],
+ [ 'c', 'գ' ],
+ [ 'C', 'Գ' ],
+ [ 'v', 'վ' ],
+ [ 'V', 'Վ' ],
+ [ 'b', 'բ' ],
+ [ 'B', 'Բ' ],
+ [ 'n', 'ն' ],
+ [ 'N', 'Ն' ],
+ [ 'm', 'մ' ],
+ [ 'M', 'Մ' ],
+ [ ',', 'շ' ],
+ [ '\\<', 'Շ' ],
+ [ '\\.', 'ղ' ],
+ [ '\\>', 'Ղ' ],
+ [ '/', 'ծ' ],
+ [ '\\?', 'Ծ' ]
],
patterns_x: [
- ['1', '1'],
- ['\\!', '!'],
- ['2', '2'],
- ['\\@', '@'],
- ['3', '3'],
- ['\\#', '#'],
- ['4', '4'],
- ['\\$', '$'],
- ['5', '5'],
- ['\\%', '%'],
- ['6', '6'],
- ['\\^', '^'],
- ['7', '7'],
- ['\\&', '&'],
- ['8', '8'],
- ['\\*', '*'],
- ['9', '9'],
- ['\\(', '('],
- ['0', '0'],
- ['\\)', ')'],
- ['\\-', '-'],
- ['\\_', '_'],
- ['\\=', '='],
- ['\\+', '+'],
- ['\\`', '`'],
- ['\\~', '~'],
- ['\\[', '['],
- ['\\{', '{'],
- ['\\]', ']'],
- ['\\}', '}'],
- ['\\\\', '\\'],
- ['\\|', '|'],
- [';', ';'],
- ['\\:', ':'],
- ['\'', '\''],
- ['\"', '\"'],
- ['\\<', '<'],
- ['\\.', '.'],
- ['\\>', '>'],
- ['/', '/'],
- ['\\?', '?']
+ [ '1', '1' ],
+ [ '\\!', '!' ],
+ [ '2', '2' ],
+ [ '\\@', '@' ],
+ [ '3', '3' ],
+ [ '\\#', '#' ],
+ [ '4', '4' ],
+ [ '\\$', '$' ],
+ [ '5', '5' ],
+ [ '\\%', '%' ],
+ [ '6', '6' ],
+ [ '\\^', '^' ],
+ [ '7', '7' ],
+ [ '\\&', '&' ],
+ [ '8', '8' ],
+ [ '\\*', '*' ],
+ [ '9', '9' ],
+ [ '\\(', '(' ],
+ [ '0', '0' ],
+ [ '\\)', ')' ],
+ [ '\\-', '-' ],
+ [ '\\_', '_' ],
+ [ '\\=', '=' ],
+ [ '\\+', '+' ],
+ [ '\\`', '`' ],
+ [ '\\~', '~' ],
+ [ '\\[', '[' ],
+ [ '\\{', '{' ],
+ [ '\\]', ']' ],
+ [ '\\}', '}' ],
+ [ '\\\\', '\\' ],
+ [ '\\|', '|' ],
+ [ ';', ';' ],
+ [ '\\:', ':' ],
+ [ '\'', '\'' ],
+ [ '\"', '\"' ],
+ [ '\\<', '<' ],
+ [ '\\.', '.' ],
+ [ '\\>', '>' ],
+ [ '/', '/' ],
+ [ '\\?', '?' ]
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hy/hy-ephonetic.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hy/hy-ephonetic.js
index 9580ef7d..582035f4 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hy/hy-ephonetic.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hy/hy-ephonetic.js
@@ -29,143 +29,143 @@
contextLength: 0,
maxKeyLength: 0,
patterns: [
- ['1', 'է'],
- ['\\!', 'Է'],
- ['2', 'թ'],
- ['\\@', 'Թ'],
- ['3', 'փ'],
- ['\\#', 'Փ'],
- ['4', 'ձ'],
- ['\\$', 'Ձ'],
- ['5', 'ջ'],
- ['\\%', 'Ջ'],
- ['6', '֏'],
- ['\\^', '('],
- ['7', 'և'],
- ['\\&', ')'],
- ['8', 'ր'],
- ['\\*', 'Ր'],
- ['9', 'չ'],
- ['\\(', 'Չ'],
- ['0', 'ճ'],
- ['\\)', 'Ճ'],
- ['\\-', '–'],
- ['\\_', '—'],
- ['\\=', 'ժ'],
- ['\\+', 'Ժ'],
- ['\\`', '՝'],
- ['\\~', '՜'],
- ['q', 'ք'],
- ['Q', 'Ք'],
- ['w', 'ո'],
- ['W', 'Ո'],
- ['e', 'ե'],
- ['E', 'Ե'],
- ['r', 'ռ'],
- ['R', 'Ռ'],
- ['t', 'տ'],
- ['T', 'Տ'],
- ['y', 'ը'],
- ['Y', 'Ը'],
- ['u', 'ւ'],
- ['U', 'Ւ'],
- ['i', 'ի'],
- ['I', 'Ի'],
- ['o', 'օ'],
- ['O', 'Օ'],
- ['p', 'պ'],
- ['P', 'Պ'],
- ['\\[', 'խ'],
- ['\\{', 'Խ'],
- ['\\]', 'ծ'],
- ['\\}', 'Ծ'],
- ['\\\\', 'շ'],
- ['\\|', 'Շ'],
- ['a', 'ա'],
- ['A', 'Ա'],
- ['s', 'ս'],
- ['S', 'Ս'],
- ['d', 'դ'],
- ['D', 'Դ'],
- ['f', 'ֆ'],
- ['F', 'Ֆ'],
- ['g', 'գ'],
- ['G', 'Գ'],
- ['h', 'հ'],
- ['H', 'Հ'],
- ['j', 'յ'],
- ['J', 'Յ'],
- ['k', 'կ'],
- ['K', 'Կ'],
- ['l', 'լ'],
- ['L', 'Լ'],
- [';', ';'],
- [':', '։'],
- ['\'', '՛'],
- ['\"', '"'],
- ['z', 'զ'],
- ['Z', 'Զ'],
- ['x', 'ղ'],
- ['X', 'Ղ'],
- ['c', 'ց'],
- ['C', 'Ց'],
- ['v', 'վ'],
- ['V', 'Վ'],
- ['b', 'բ'],
- ['B', 'Բ'],
- ['n', 'ն'],
- ['N', 'Ն'],
- ['m', 'մ'],
- ['M', 'Մ'],
- [',', ','],
- ['\\<', '«'],
- ['\\.', '․'],
- ['\\>', '»'],
- ['/', '…'],
- ['\\?', '՞']
+ [ '1', 'է' ],
+ [ '\\!', 'Է' ],
+ [ '2', 'թ' ],
+ [ '\\@', 'Թ' ],
+ [ '3', 'փ' ],
+ [ '\\#', 'Փ' ],
+ [ '4', 'ձ' ],
+ [ '\\$', 'Ձ' ],
+ [ '5', 'ջ' ],
+ [ '\\%', 'Ջ' ],
+ [ '6', '֏' ],
+ [ '\\^', '(' ],
+ [ '7', 'և' ],
+ [ '\\&', ')' ],
+ [ '8', 'ր' ],
+ [ '\\*', 'Ր' ],
+ [ '9', 'չ' ],
+ [ '\\(', 'Չ' ],
+ [ '0', 'ճ' ],
+ [ '\\)', 'Ճ' ],
+ [ '\\-', '–' ],
+ [ '\\_', '—' ],
+ [ '\\=', 'ժ' ],
+ [ '\\+', 'Ժ' ],
+ [ '\\`', '՝' ],
+ [ '\\~', '՜' ],
+ [ 'q', 'ք' ],
+ [ 'Q', 'Ք' ],
+ [ 'w', 'ո' ],
+ [ 'W', 'Ո' ],
+ [ 'e', 'ե' ],
+ [ 'E', 'Ե' ],
+ [ 'r', 'ռ' ],
+ [ 'R', 'Ռ' ],
+ [ 't', 'տ' ],
+ [ 'T', 'Տ' ],
+ [ 'y', 'ը' ],
+ [ 'Y', 'Ը' ],
+ [ 'u', 'ւ' ],
+ [ 'U', 'Ւ' ],
+ [ 'i', 'ի' ],
+ [ 'I', 'Ի' ],
+ [ 'o', 'օ' ],
+ [ 'O', 'Օ' ],
+ [ 'p', 'պ' ],
+ [ 'P', 'Պ' ],
+ [ '\\[', 'խ' ],
+ [ '\\{', 'Խ' ],
+ [ '\\]', 'ծ' ],
+ [ '\\}', 'Ծ' ],
+ [ '\\\\', 'շ' ],
+ [ '\\|', 'Շ' ],
+ [ 'a', 'ա' ],
+ [ 'A', 'Ա' ],
+ [ 's', 'ս' ],
+ [ 'S', 'Ս' ],
+ [ 'd', 'դ' ],
+ [ 'D', 'Դ' ],
+ [ 'f', 'ֆ' ],
+ [ 'F', 'Ֆ' ],
+ [ 'g', 'գ' ],
+ [ 'G', 'Գ' ],
+ [ 'h', 'հ' ],
+ [ 'H', 'Հ' ],
+ [ 'j', 'յ' ],
+ [ 'J', 'Յ' ],
+ [ 'k', 'կ' ],
+ [ 'K', 'Կ' ],
+ [ 'l', 'լ' ],
+ [ 'L', 'Լ' ],
+ [ ';', ';' ],
+ [ ':', '։' ],
+ [ '\'', '՛' ],
+ [ '\"', '"' ],
+ [ 'z', 'զ' ],
+ [ 'Z', 'Զ' ],
+ [ 'x', 'ղ' ],
+ [ 'X', 'Ղ' ],
+ [ 'c', 'ց' ],
+ [ 'C', 'Ց' ],
+ [ 'v', 'վ' ],
+ [ 'V', 'Վ' ],
+ [ 'b', 'բ' ],
+ [ 'B', 'Բ' ],
+ [ 'n', 'ն' ],
+ [ 'N', 'Ն' ],
+ [ 'm', 'մ' ],
+ [ 'M', 'Մ' ],
+ [ ',', ',' ],
+ [ '\\<', '«' ],
+ [ '\\.', '․' ],
+ [ '\\>', '»' ],
+ [ '/', '…' ],
+ [ '\\?', '՞' ]
],
patterns_x: [
- ['1', '1'],
- ['\\!', '!'],
- ['2', '2'],
- ['\\@', '@'],
- ['3', '3'],
- ['\\#', '#'],
- ['4', '4'],
- ['\\$', '$'],
- ['5', '5'],
- ['\\%', '%'],
- ['6', '6'],
- ['\\^', '^'],
- ['7', '7'],
- ['\\&', '&'],
- ['8', '8'],
- ['\\*', '*'],
- ['9', '9'],
- ['\\(', '('],
- ['0', '0'],
- ['\\)', ')'],
- ['\\-', '-'],
- ['\\_', '_'],
- ['\\=', '='],
- ['\\+', '+'],
- ['\\`', '`'],
- ['\\~', '~'],
- ['\\[', '['],
- ['\\{', '{'],
- ['\\]', ']'],
- ['\\}', '}'],
- ['\\\\', '\\'],
- ['\\|', '|'],
- [';', ';'],
- ['\\:', ':'],
- ['\'', '\''],
- ['\"', '\"'],
- ['\\<', '<'],
- ['\\.', '.'],
- ['\\>', '>'],
- ['/', '/'],
- ['\\?', '?']
+ [ '1', '1' ],
+ [ '\\!', '!' ],
+ [ '2', '2' ],
+ [ '\\@', '@' ],
+ [ '3', '3' ],
+ [ '\\#', '#' ],
+ [ '4', '4' ],
+ [ '\\$', '$' ],
+ [ '5', '5' ],
+ [ '\\%', '%' ],
+ [ '6', '6' ],
+ [ '\\^', '^' ],
+ [ '7', '7' ],
+ [ '\\&', '&' ],
+ [ '8', '8' ],
+ [ '\\*', '*' ],
+ [ '9', '9' ],
+ [ '\\(', '(' ],
+ [ '0', '0' ],
+ [ '\\)', ')' ],
+ [ '\\-', '-' ],
+ [ '\\_', '_' ],
+ [ '\\=', '=' ],
+ [ '\\+', '+' ],
+ [ '\\`', '`' ],
+ [ '\\~', '~' ],
+ [ '\\[', '[' ],
+ [ '\\{', '{' ],
+ [ '\\]', ']' ],
+ [ '\\}', '}' ],
+ [ '\\\\', '\\' ],
+ [ '\\|', '|' ],
+ [ ';', ';' ],
+ [ '\\:', ':' ],
+ [ '\'', '\'' ],
+ [ '\"', '\"' ],
+ [ '\\<', '<' ],
+ [ '\\.', '.' ],
+ [ '\\>', '>' ],
+ [ '/', '/' ],
+ [ '\\?', '?' ]
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hy/hy-ephoneticalt.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hy/hy-ephoneticalt.js
index 0fb0ea47..3867b403 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hy/hy-ephoneticalt.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hy/hy-ephoneticalt.js
@@ -27,143 +27,143 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['1', 'է'],
- ['\\!', 'Է'],
- ['2', 'ֆ'],
- ['\\@', 'Ֆ'],
- ['3', 'փ'],
- ['\\#', 'Փ'],
- ['4', 'ձ'],
- ['\\$', 'Ձ'],
- ['5', 'ջ'],
- ['\\%', 'Ջ'],
- ['6', '֏'],
- ['\\^', '('],
- ['7', 'և'],
- ['\\&', ')'],
- ['8', 'ռ'],
- ['\\*', 'Ռ'],
- ['9', 'չ'],
- ['\\(', 'Չ'],
- ['0', 'ճ'],
- ['\\)', 'Ճ'],
- ['\\-', '–'],
- ['\\_', '—'],
- ['\\=', 'ժ'],
- ['\\+', 'Ժ'],
- ['\\`', '՝'],
- ['\\~', '՜'],
- ['q', 'ք'],
- ['Q', 'Ք'],
- ['w', 'ո'],
- ['W', 'Ո'],
- ['e', 'ե'],
- ['E', 'Ե'],
- ['r', 'ր'],
- ['R', 'Ր'],
- ['t', 'տ'],
- ['T', 'Տ'],
- ['y', 'ը'],
- ['Y', 'Ը'],
- ['u', 'ւ'],
- ['U', 'Ւ'],
- ['i', 'ի'],
- ['I', 'Ի'],
- ['o', 'օ'],
- ['O', 'Օ'],
- ['p', 'պ'],
- ['P', 'Պ'],
- ['\\[', 'խ'],
- ['\\{', 'Խ'],
- ['\\]', 'ծ'],
- ['\\}', 'Ծ'],
- ['\\\\', 'շ'],
- ['\\|', 'Շ'],
- ['a', 'ա'],
- ['A', 'Ա'],
- ['s', 'ս'],
- ['S', 'Ս'],
- ['d', 'դ'],
- ['D', 'Դ'],
- ['f', 'թ'],
- ['F', 'Թ'],
- ['g', 'գ'],
- ['G', 'Գ'],
- ['h', 'հ'],
- ['H', 'Հ'],
- ['j', 'յ'],
- ['J', 'Յ'],
- ['k', 'կ'],
- ['K', 'Կ'],
- ['l', 'լ'],
- ['L', 'Լ'],
- [';', ';'],
- [':', '։'],
- ['\'', '՛'],
- ['\"', '"'],
- ['z', 'զ'],
- ['Z', 'Զ'],
- ['x', 'ղ'],
- ['X', 'Ղ'],
- ['c', 'ց'],
- ['C', 'Ց'],
- ['v', 'վ'],
- ['V', 'Վ'],
- ['b', 'բ'],
- ['B', 'Բ'],
- ['n', 'ն'],
- ['N', 'Ն'],
- ['m', 'մ'],
- ['M', 'Մ'],
- [',', ','],
- ['\\<', '«'],
- ['\\.', '․'],
- ['\\>', '»'],
- ['/', '…'],
- ['\\?', '՞']
+ [ '1', 'է' ],
+ [ '\\!', 'Է' ],
+ [ '2', 'ֆ' ],
+ [ '\\@', 'Ֆ' ],
+ [ '3', 'փ' ],
+ [ '\\#', 'Փ' ],
+ [ '4', 'ձ' ],
+ [ '\\$', 'Ձ' ],
+ [ '5', 'ջ' ],
+ [ '\\%', 'Ջ' ],
+ [ '6', '֏' ],
+ [ '\\^', '(' ],
+ [ '7', 'և' ],
+ [ '\\&', ')' ],
+ [ '8', 'ռ' ],
+ [ '\\*', 'Ռ' ],
+ [ '9', 'չ' ],
+ [ '\\(', 'Չ' ],
+ [ '0', 'ճ' ],
+ [ '\\)', 'Ճ' ],
+ [ '\\-', '–' ],
+ [ '\\_', '—' ],
+ [ '\\=', 'ժ' ],
+ [ '\\+', 'Ժ' ],
+ [ '\\`', '՝' ],
+ [ '\\~', '՜' ],
+ [ 'q', 'ք' ],
+ [ 'Q', 'Ք' ],
+ [ 'w', 'ո' ],
+ [ 'W', 'Ո' ],
+ [ 'e', 'ե' ],
+ [ 'E', 'Ե' ],
+ [ 'r', 'ր' ],
+ [ 'R', 'Ր' ],
+ [ 't', 'տ' ],
+ [ 'T', 'Տ' ],
+ [ 'y', 'ը' ],
+ [ 'Y', 'Ը' ],
+ [ 'u', 'ւ' ],
+ [ 'U', 'Ւ' ],
+ [ 'i', 'ի' ],
+ [ 'I', 'Ի' ],
+ [ 'o', 'օ' ],
+ [ 'O', 'Օ' ],
+ [ 'p', 'պ' ],
+ [ 'P', 'Պ' ],
+ [ '\\[', 'խ' ],
+ [ '\\{', 'Խ' ],
+ [ '\\]', 'ծ' ],
+ [ '\\}', 'Ծ' ],
+ [ '\\\\', 'շ' ],
+ [ '\\|', 'Շ' ],
+ [ 'a', 'ա' ],
+ [ 'A', 'Ա' ],
+ [ 's', 'ս' ],
+ [ 'S', 'Ս' ],
+ [ 'd', 'դ' ],
+ [ 'D', 'Դ' ],
+ [ 'f', 'թ' ],
+ [ 'F', 'Թ' ],
+ [ 'g', 'գ' ],
+ [ 'G', 'Գ' ],
+ [ 'h', 'հ' ],
+ [ 'H', 'Հ' ],
+ [ 'j', 'յ' ],
+ [ 'J', 'Յ' ],
+ [ 'k', 'կ' ],
+ [ 'K', 'Կ' ],
+ [ 'l', 'լ' ],
+ [ 'L', 'Լ' ],
+ [ ';', ';' ],
+ [ ':', '։' ],
+ [ '\'', '՛' ],
+ [ '\"', '"' ],
+ [ 'z', 'զ' ],
+ [ 'Z', 'Զ' ],
+ [ 'x', 'ղ' ],
+ [ 'X', 'Ղ' ],
+ [ 'c', 'ց' ],
+ [ 'C', 'Ց' ],
+ [ 'v', 'վ' ],
+ [ 'V', 'Վ' ],
+ [ 'b', 'բ' ],
+ [ 'B', 'Բ' ],
+ [ 'n', 'ն' ],
+ [ 'N', 'Ն' ],
+ [ 'm', 'մ' ],
+ [ 'M', 'Մ' ],
+ [ ',', ',' ],
+ [ '\\<', '«' ],
+ [ '\\.', '․' ],
+ [ '\\>', '»' ],
+ [ '/', '…' ],
+ [ '\\?', '՞' ]
],
patterns_x: [
- ['1', '1'],
- ['\\!', '!'],
- ['2', '2'],
- ['\\@', '@'],
- ['3', '3'],
- ['\\#', '#'],
- ['4', '4'],
- ['\\$', '$'],
- ['5', '5'],
- ['\\%', '%'],
- ['6', '6'],
- ['\\^', '^'],
- ['7', '7'],
- ['\\&', '&'],
- ['8', '8'],
- ['\\*', '*'],
- ['9', '9'],
- ['\\(', '('],
- ['0', '0'],
- ['\\)', ')'],
- ['\\-', '-'],
- ['\\_', '_'],
- ['\\=', '='],
- ['\\+', '+'],
- ['\\`', '`'],
- ['\\~', '~'],
- ['\\[', '['],
- ['\\{', '{'],
- ['\\]', ']'],
- ['\\}', '}'],
- ['\\\\', '\\'],
- ['\\|', '|'],
- [';', ';'],
- ['\\:', ':'],
- ['\'', '\''],
- ['\"', '\"'],
- ['\\<', '<'],
- ['\\.', '.'],
- ['\\>', '>'],
- ['/', '/'],
- ['\\?', '?']
+ [ '1', '1' ],
+ [ '\\!', '!' ],
+ [ '2', '2' ],
+ [ '\\@', '@' ],
+ [ '3', '3' ],
+ [ '\\#', '#' ],
+ [ '4', '4' ],
+ [ '\\$', '$' ],
+ [ '5', '5' ],
+ [ '\\%', '%' ],
+ [ '6', '6' ],
+ [ '\\^', '^' ],
+ [ '7', '7' ],
+ [ '\\&', '&' ],
+ [ '8', '8' ],
+ [ '\\*', '*' ],
+ [ '9', '9' ],
+ [ '\\(', '(' ],
+ [ '0', '0' ],
+ [ '\\)', ')' ],
+ [ '\\-', '-' ],
+ [ '\\_', '_' ],
+ [ '\\=', '=' ],
+ [ '\\+', '+' ],
+ [ '\\`', '`' ],
+ [ '\\~', '~' ],
+ [ '\\[', '[' ],
+ [ '\\{', '{' ],
+ [ '\\]', ']' ],
+ [ '\\}', '}' ],
+ [ '\\\\', '\\' ],
+ [ '\\|', '|' ],
+ [ ';', ';' ],
+ [ '\\:', ':' ],
+ [ '\'', '\'' ],
+ [ '\"', '\"' ],
+ [ '\\<', '<' ],
+ [ '\\.', '.' ],
+ [ '\\>', '>' ],
+ [ '/', '/' ],
+ [ '\\?', '?' ]
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hy/hy-typewriter.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hy/hy-typewriter.js
index 63b18725..04392e6e 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hy/hy-typewriter.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hy/hy-typewriter.js
@@ -24,143 +24,143 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['1', 'ֆ'],
- ['\\!', 'Ֆ'],
- ['2', 'ձ'],
- ['\\@', 'Ձ'],
- ['3', '-'],
- ['\\#', ''],
- ['4', ','],
- ['\\$', '֏'],
- ['5', '։'],
- ['\\%', '֊'],
- ['6', '՞'],
- ['\\^', '—'],
- ['7', '․'],
- ['\\&', 'և'],
- ['8', '՛'],
- ['\\*', '՚'],
- ['9', ')'],
- ['\\(', '('],
- ['0', 'օ'],
- ['\\)', 'Օ'],
- ['\\-', 'է'],
- ['\\_', 'Է'],
- ['\\=', 'ղ'],
- ['\\+', 'Ղ'],
- ['\\`', '՝'],
- ['\\~', '՜'],
- ['q', 'ճ'],
- ['Q', 'Ճ'],
- ['w', 'փ'],
- ['W', 'Փ'],
- ['e', 'բ'],
- ['E', 'Բ'],
- ['r', 'ս'],
- ['R', 'Ս'],
- ['t', 'մ'],
- ['T', 'Մ'],
- ['y', 'ո'],
- ['Y', 'Ո'],
- ['u', 'ւ'],
- ['U', 'Ւ'],
- ['i', 'կ'],
- ['I', 'Կ'],
- ['o', 'ը'],
- ['O', 'Ը'],
- ['p', 'թ'],
- ['P', 'Թ'],
- ['\\[', 'ծ'],
- ['\\{', 'Ծ'],
- ['\\]', 'ց'],
- ['\\}', 'Ց'],
- ['\\\\', '»'],
- ['\\|', '«'],
- ['a', 'ջ'],
- ['A', 'Ջ'],
- ['s', 'վ'],
- ['S', 'Վ'],
- ['d', 'գ'],
- ['D', 'Գ'],
- ['f', 'ե'],
- ['F', 'Ե'],
- ['g', 'ա'],
- ['G', 'Ա'],
- ['h', 'ն'],
- ['H', 'Ն'],
- ['j', 'ի'],
- ['J', 'Ի'],
- ['k', 'տ'],
- ['K', 'Տ'],
- ['l', 'հ'],
- ['L', 'Հ'],
- [';', 'պ'],
- [':', 'Պ'],
- ['\'', 'ր'],
- ['\"', 'Ր'],
- ['z', 'ժ'],
- ['Z', 'Ժ'],
- ['x', 'դ'],
- ['X', 'Դ'],
- ['c', 'չ'],
- ['C', 'Չ'],
- ['v', 'յ'],
- ['V', 'Յ'],
- ['b', 'զ'],
- ['B', 'Զ'],
- ['n', 'լ'],
- ['N', 'Լ'],
- ['m', 'ք'],
- ['M', 'Ք'],
- [',', 'խ'],
- ['\\<', 'Խ'],
- ['\\.', 'շ'],
- ['\\>', 'Շ'],
- ['/', 'ռ'],
- ['\\?', 'Ռ']
+ [ '1', 'ֆ' ],
+ [ '\\!', 'Ֆ' ],
+ [ '2', 'ձ' ],
+ [ '\\@', 'Ձ' ],
+ [ '3', '-' ],
+ [ '\\#', '' ],
+ [ '4', ',' ],
+ [ '\\$', '֏' ],
+ [ '5', '։' ],
+ [ '\\%', '֊' ],
+ [ '6', '՞' ],
+ [ '\\^', '—' ],
+ [ '7', '․' ],
+ [ '\\&', 'և' ],
+ [ '8', '՛' ],
+ [ '\\*', '՚' ],
+ [ '9', ')' ],
+ [ '\\(', '(' ],
+ [ '0', 'օ' ],
+ [ '\\)', 'Օ' ],
+ [ '\\-', 'է' ],
+ [ '\\_', 'Է' ],
+ [ '\\=', 'ղ' ],
+ [ '\\+', 'Ղ' ],
+ [ '\\`', '՝' ],
+ [ '\\~', '՜' ],
+ [ 'q', 'ճ' ],
+ [ 'Q', 'Ճ' ],
+ [ 'w', 'փ' ],
+ [ 'W', 'Փ' ],
+ [ 'e', 'բ' ],
+ [ 'E', 'Բ' ],
+ [ 'r', 'ս' ],
+ [ 'R', 'Ս' ],
+ [ 't', 'մ' ],
+ [ 'T', 'Մ' ],
+ [ 'y', 'ո' ],
+ [ 'Y', 'Ո' ],
+ [ 'u', 'ւ' ],
+ [ 'U', 'Ւ' ],
+ [ 'i', 'կ' ],
+ [ 'I', 'Կ' ],
+ [ 'o', 'ը' ],
+ [ 'O', 'Ը' ],
+ [ 'p', 'թ' ],
+ [ 'P', 'Թ' ],
+ [ '\\[', 'ծ' ],
+ [ '\\{', 'Ծ' ],
+ [ '\\]', 'ց' ],
+ [ '\\}', 'Ց' ],
+ [ '\\\\', '»' ],
+ [ '\\|', '«' ],
+ [ 'a', 'ջ' ],
+ [ 'A', 'Ջ' ],
+ [ 's', 'վ' ],
+ [ 'S', 'Վ' ],
+ [ 'd', 'գ' ],
+ [ 'D', 'Գ' ],
+ [ 'f', 'ե' ],
+ [ 'F', 'Ե' ],
+ [ 'g', 'ա' ],
+ [ 'G', 'Ա' ],
+ [ 'h', 'ն' ],
+ [ 'H', 'Ն' ],
+ [ 'j', 'ի' ],
+ [ 'J', 'Ի' ],
+ [ 'k', 'տ' ],
+ [ 'K', 'Տ' ],
+ [ 'l', 'հ' ],
+ [ 'L', 'Հ' ],
+ [ ';', 'պ' ],
+ [ ':', 'Պ' ],
+ [ '\'', 'ր' ],
+ [ '\"', 'Ր' ],
+ [ 'z', 'ժ' ],
+ [ 'Z', 'Ժ' ],
+ [ 'x', 'դ' ],
+ [ 'X', 'Դ' ],
+ [ 'c', 'չ' ],
+ [ 'C', 'Չ' ],
+ [ 'v', 'յ' ],
+ [ 'V', 'Յ' ],
+ [ 'b', 'զ' ],
+ [ 'B', 'Զ' ],
+ [ 'n', 'լ' ],
+ [ 'N', 'Լ' ],
+ [ 'm', 'ք' ],
+ [ 'M', 'Ք' ],
+ [ ',', 'խ' ],
+ [ '\\<', 'Խ' ],
+ [ '\\.', 'շ' ],
+ [ '\\>', 'Շ' ],
+ [ '/', 'ռ' ],
+ [ '\\?', 'Ռ' ]
],
patterns_x: [
- ['1', '1'],
- ['\\!', '!'],
- ['2', '2'],
- ['\\@', '@'],
- ['3', '3'],
- ['\\#', '#'],
- ['4', '4'],
- ['\\$', '$'],
- ['5', '5'],
- ['\\%', '%'],
- ['6', '6'],
- ['\\^', '^'],
- ['7', '7'],
- ['\\&', '&'],
- ['8', '8'],
- ['\\*', '*'],
- ['9', '9'],
- ['\\(', '('],
- ['0', '0'],
- ['\\)', ')'],
- ['\\-', '-'],
- ['\\_', '_'],
- ['\\=', '='],
- ['\\+', '+'],
- ['\\`', '`'],
- ['\\~', '~'],
- ['\\[', '['],
- ['\\{', '{'],
- ['\\]', ']'],
- ['\\}', '}'],
- ['\\\\', '\\'],
- ['\\|', '|'],
- [';', ';'],
- ['\\:', ':'],
- ['\'', '\''],
- ['\"', '\"'],
- ['\\<', '<'],
- ['\\.', '.'],
- ['\\>', '>'],
- ['/', '/'],
- ['\\?', '?']
+ [ '1', '1' ],
+ [ '\\!', '!' ],
+ [ '2', '2' ],
+ [ '\\@', '@' ],
+ [ '3', '3' ],
+ [ '\\#', '#' ],
+ [ '4', '4' ],
+ [ '\\$', '$' ],
+ [ '5', '5' ],
+ [ '\\%', '%' ],
+ [ '6', '6' ],
+ [ '\\^', '^' ],
+ [ '7', '7' ],
+ [ '\\&', '&' ],
+ [ '8', '8' ],
+ [ '\\*', '*' ],
+ [ '9', '9' ],
+ [ '\\(', '(' ],
+ [ '0', '0' ],
+ [ '\\)', ')' ],
+ [ '\\-', '-' ],
+ [ '\\_', '_' ],
+ [ '\\=', '=' ],
+ [ '\\+', '+' ],
+ [ '\\`', '`' ],
+ [ '\\~', '~' ],
+ [ '\\[', '[' ],
+ [ '\\{', '{' ],
+ [ '\\]', ']' ],
+ [ '\\}', '}' ],
+ [ '\\\\', '\\' ],
+ [ '\\|', '|' ],
+ [ ';', ';' ],
+ [ '\\:', ':' ],
+ [ '\'', '\'' ],
+ [ '\"', '\"' ],
+ [ '\\<', '<' ],
+ [ '\\.', '.' ],
+ [ '\\>', '>' ],
+ [ '/', '/' ],
+ [ '\\?', '?' ]
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hy/hy-wmslegacy.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hy/hy-wmslegacy.js
index bec1c09b..0eddabcd 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hy/hy-wmslegacy.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hy/hy-wmslegacy.js
@@ -25,143 +25,143 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['1', '։'],
- ['\\!', '1'],
- ['2', 'ձ'],
- ['\\@', 'Ձ'],
- ['3', 'յ'],
- ['\\#', 'Յ'],
- ['4', '՛'],
- ['\\$', '֏'],
- ['5', ','],
- ['\\%', '4'],
- ['6', '-'],
- ['\\^', '9'],
- ['7', '․'],
- ['\\&', 'և'],
- ['8', '«'],
- ['\\*', '('],
- ['9', '»'],
- ['\\(', ')'],
- ['0', 'օ'],
- ['\\)', 'Օ'],
- ['\\-', 'ռ'],
- ['\\_', 'Ռ'],
- ['\\=', 'ժ'],
- ['\\+', 'Ժ'],
- ['\\`', '՝'],
- ['\\~', '՜'],
- ['q', 'խ'],
- ['Q', 'Խ'],
- ['w', 'վ'],
- ['W', 'Վ'],
- ['e', 'է'],
- ['E', 'Է'],
- ['r', 'ր'],
- ['R', 'Ր'],
- ['t', 'դ'],
- ['T', 'Դ'],
- ['y', 'ե'],
- ['Y', 'Ե'],
- ['u', 'ը'],
- ['U', 'Ը'],
- ['i', 'ի'],
- ['I', 'Ի'],
- ['o', 'ո'],
- ['O', 'Ո'],
- ['p', 'բ'],
- ['P', 'Բ'],
- ['\\[', 'չ'],
- ['\\{', 'Չ'],
- ['\\]', 'ջ'],
- ['\\}', 'Ջ'],
- ['\\\\', '\''],
- ['\\|', '՞'],
- ['a', 'ա'],
- ['A', 'Ա'],
- ['s', 'ս'],
- ['S', 'Ս'],
- ['d', 'տ'],
- ['D', 'Տ'],
- ['f', 'ֆ'],
- ['F', 'Ֆ'],
- ['g', 'կ'],
- ['G', 'Կ'],
- ['h', 'հ'],
- ['H', 'Հ'],
- ['j', 'ճ'],
- ['J', 'Ճ'],
- ['k', 'ք'],
- ['K', 'Ք'],
- ['l', 'լ'],
- ['L', 'Լ'],
- [';', 'թ'],
- [':', 'Թ'],
- ['\'', 'փ'],
- ['\"', 'Փ'],
- ['z', 'զ'],
- ['Z', 'Զ'],
- ['x', 'ց'],
- ['X', 'Ց'],
- ['c', 'գ'],
- ['C', 'Գ'],
- ['v', 'ւ'],
- ['V', 'Ւ'],
- ['b', 'պ'],
- ['B', 'Պ'],
- ['n', 'ն'],
- ['N', 'Ն'],
- ['m', 'մ'],
- ['M', 'Մ'],
- [',', 'շ'],
- ['\\<', 'Շ'],
- ['\\.', 'ղ'],
- ['\\>', 'Ղ'],
- ['/', 'ծ'],
- ['\\?', 'Ծ']
+ [ '1', '։' ],
+ [ '\\!', '1' ],
+ [ '2', 'ձ' ],
+ [ '\\@', 'Ձ' ],
+ [ '3', 'յ' ],
+ [ '\\#', 'Յ' ],
+ [ '4', '՛' ],
+ [ '\\$', '֏' ],
+ [ '5', ',' ],
+ [ '\\%', '4' ],
+ [ '6', '-' ],
+ [ '\\^', '9' ],
+ [ '7', '․' ],
+ [ '\\&', 'և' ],
+ [ '8', '«' ],
+ [ '\\*', '(' ],
+ [ '9', '»' ],
+ [ '\\(', ')' ],
+ [ '0', 'օ' ],
+ [ '\\)', 'Օ' ],
+ [ '\\-', 'ռ' ],
+ [ '\\_', 'Ռ' ],
+ [ '\\=', 'ժ' ],
+ [ '\\+', 'Ժ' ],
+ [ '\\`', '՝' ],
+ [ '\\~', '՜' ],
+ [ 'q', 'խ' ],
+ [ 'Q', 'Խ' ],
+ [ 'w', 'վ' ],
+ [ 'W', 'Վ' ],
+ [ 'e', 'է' ],
+ [ 'E', 'Է' ],
+ [ 'r', 'ր' ],
+ [ 'R', 'Ր' ],
+ [ 't', 'դ' ],
+ [ 'T', 'Դ' ],
+ [ 'y', 'ե' ],
+ [ 'Y', 'Ե' ],
+ [ 'u', 'ը' ],
+ [ 'U', 'Ը' ],
+ [ 'i', 'ի' ],
+ [ 'I', 'Ի' ],
+ [ 'o', 'ո' ],
+ [ 'O', 'Ո' ],
+ [ 'p', 'բ' ],
+ [ 'P', 'Բ' ],
+ [ '\\[', 'չ' ],
+ [ '\\{', 'Չ' ],
+ [ '\\]', 'ջ' ],
+ [ '\\}', 'Ջ' ],
+ [ '\\\\', '\'' ],
+ [ '\\|', '՞' ],
+ [ 'a', 'ա' ],
+ [ 'A', 'Ա' ],
+ [ 's', 'ս' ],
+ [ 'S', 'Ս' ],
+ [ 'd', 'տ' ],
+ [ 'D', 'Տ' ],
+ [ 'f', 'ֆ' ],
+ [ 'F', 'Ֆ' ],
+ [ 'g', 'կ' ],
+ [ 'G', 'Կ' ],
+ [ 'h', 'հ' ],
+ [ 'H', 'Հ' ],
+ [ 'j', 'ճ' ],
+ [ 'J', 'Ճ' ],
+ [ 'k', 'ք' ],
+ [ 'K', 'Ք' ],
+ [ 'l', 'լ' ],
+ [ 'L', 'Լ' ],
+ [ ';', 'թ' ],
+ [ ':', 'Թ' ],
+ [ '\'', 'փ' ],
+ [ '\"', 'Փ' ],
+ [ 'z', 'զ' ],
+ [ 'Z', 'Զ' ],
+ [ 'x', 'ց' ],
+ [ 'X', 'Ց' ],
+ [ 'c', 'գ' ],
+ [ 'C', 'Գ' ],
+ [ 'v', 'ւ' ],
+ [ 'V', 'Ւ' ],
+ [ 'b', 'պ' ],
+ [ 'B', 'Պ' ],
+ [ 'n', 'ն' ],
+ [ 'N', 'Ն' ],
+ [ 'm', 'մ' ],
+ [ 'M', 'Մ' ],
+ [ ',', 'շ' ],
+ [ '\\<', 'Շ' ],
+ [ '\\.', 'ղ' ],
+ [ '\\>', 'Ղ' ],
+ [ '/', 'ծ' ],
+ [ '\\?', 'Ծ' ]
],
patterns_x: [
- ['1', '1'],
- ['\\!', '!'],
- ['2', '2'],
- ['\\@', '@'],
- ['3', '3'],
- ['\\#', '#'],
- ['4', '4'],
- ['\\$', '$'],
- ['5', '5'],
- ['\\%', '%'],
- ['6', '6'],
- ['\\^', '^'],
- ['7', '7'],
- ['\\&', '&'],
- ['8', '8'],
- ['\\*', '*'],
- ['9', '9'],
- ['\\(', '('],
- ['0', '0'],
- ['\\)', ')'],
- ['\\-', '-'],
- ['\\_', '_'],
- ['\\=', '='],
- ['\\+', '+'],
- ['\\`', '`'],
- ['\\~', '~'],
- ['\\[', '['],
- ['\\{', '{'],
- ['\\]', ']'],
- ['\\}', '}'],
- ['\\\\', '\\'],
- ['\\|', '|'],
- [';', ';'],
- ['\\:', ':'],
- ['\'', '\''],
- ['\"', '\"'],
- ['\\<', '<'],
- ['\\.', '.'],
- ['\\>', '>'],
- ['/', '/'],
- ['\\?', '?']
+ [ '1', '1' ],
+ [ '\\!', '!' ],
+ [ '2', '2' ],
+ [ '\\@', '@' ],
+ [ '3', '3' ],
+ [ '\\#', '#' ],
+ [ '4', '4' ],
+ [ '\\$', '$' ],
+ [ '5', '5' ],
+ [ '\\%', '%' ],
+ [ '6', '6' ],
+ [ '\\^', '^' ],
+ [ '7', '7' ],
+ [ '\\&', '&' ],
+ [ '8', '8' ],
+ [ '\\*', '*' ],
+ [ '9', '9' ],
+ [ '\\(', '(' ],
+ [ '0', '0' ],
+ [ '\\)', ')' ],
+ [ '\\-', '-' ],
+ [ '\\_', '_' ],
+ [ '\\=', '=' ],
+ [ '\\+', '+' ],
+ [ '\\`', '`' ],
+ [ '\\~', '~' ],
+ [ '\\[', '[' ],
+ [ '\\{', '{' ],
+ [ '\\]', ']' ],
+ [ '\\}', '}' ],
+ [ '\\\\', '\\' ],
+ [ '\\|', '|' ],
+ [ ';', ';' ],
+ [ '\\:', ':' ],
+ [ '\'', '\'' ],
+ [ '\"', '\"' ],
+ [ '\\<', '<' ],
+ [ '\\.', '.' ],
+ [ '\\>', '>' ],
+ [ '/', '/' ],
+ [ '\\?', '?' ]
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/jv/jv-transliteration.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/jv/jv-transliteration.js
index 6b02062c..dd64c144 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/jv/jv-transliteration.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/jv/jv-transliteration.js
@@ -14,48 +14,48 @@
maxKeyLength: 2,
patterns: [
[ '\\\\([A-Za-z\\>_~\\.0-9])', '\\\\', '$1' ],
- ['ꦝ꧀q', '','ꦞ꧀'], // Dha murda
- ['ꦚ꧀q', '','ꦘ꧀'], // Nya murda
- ['ꦧ꧀q', '','ꦨ꧀'], // Ba murda
- ['ꦕ꧀q', '','ꦖ꧀'], // Ca murda(?)
- ['ꦒ꧀q', '','ꦓ꧀'], // Ga murda
- ['ꦗ꧀q', '','ꦙ꧀'], // Ja Mahaprana
- ['ꦏ꧀q', '','ꦑ꧀'], // Ka murda
- ['ꦤ꧀q', '','ꦟ꧀'], // Na murda
- ['ꦥ꧀q', '','ꦦ꧀'], // Pa murda
- ['ꦱ꧀q', '','ꦯ꧀'], // Sa murda
- ['ꦠ꧀q', '','ꦡ꧀'], // Ta murda
+ [ 'ꦝ꧀q', '','ꦞ꧀' ], // Dha murda
+ [ 'ꦚ꧀q', '','ꦘ꧀' ], // Nya murda
+ [ 'ꦧ꧀q', '','ꦨ꧀' ], // Ba murda
+ [ 'ꦕ꧀q', '','ꦖ꧀' ], // Ca murda(?)
+ [ 'ꦒ꧀q', '','ꦓ꧀' ], // Ga murda
+ [ 'ꦗ꧀q', '','ꦙ꧀' ], // Ja Mahaprana
+ [ 'ꦏ꧀q', '','ꦑ꧀' ], // Ka murda
+ [ 'ꦤ꧀q', '','ꦟ꧀' ], // Na murda
+ [ 'ꦥ꧀q', '','ꦦ꧀' ], // Pa murda
+ [ 'ꦱ꧀q', '','ꦯ꧀' ], // Sa murda
+ [ 'ꦠ꧀q', '','ꦡ꧀' ], // Ta murda
// VII. Vocal ended with special pasangan followed by vocal = back to normal
- ['ꦃa', '','ꦲ'], // vocal ended with -h followed by a
- ['ꦃe', '','ꦲꦺ'], // vocal ended with -h followed by e
- ['ꦃi', '','ꦲꦶ'], // vocal ended with -h followed by i
- ['ꦃo', '','ꦲꦺꦴ'], // vocal ended with -h followed by o
- ['ꦃu', '','ꦲꦸ'], // vocal ended with -h followed by u
+ [ 'ꦃa', '','ꦲ' ], // vocal ended with -h followed by a
+ [ 'ꦃe', '','ꦲꦺ' ], // vocal ended with -h followed by e
+ [ 'ꦃi', '','ꦲꦶ' ], // vocal ended with -h followed by i
+ [ 'ꦃo', '','ꦲꦺꦴ' ], // vocal ended with -h followed by o
+ [ 'ꦃu', '','ꦲꦸ' ], // vocal ended with -h followed by u
- ['ꦂa', '','ꦫ'], // vocal ended with -r followed by a
- ['ꦂe', '','ꦫꦺ'], // vocal ended with -r followed by e
- ['ꦂi', '','ꦫꦶ'], // vocal ended with -r followed by i
- ['ꦂo', '','ꦫꦺꦴ'], // vocal ended with -r followed by o
- ['ꦂu', '','ꦫꦸ'], // vocal ended with -r followed by u
- ['ꦂy', '','ꦫꦾ'], // vocal ended with -r followed by y (Special)
+ [ 'ꦂa', '','ꦫ' ], // vocal ended with -r followed by a
+ [ 'ꦂe', '','ꦫꦺ' ], // vocal ended with -r followed by e
+ [ 'ꦂi', '','ꦫꦶ' ], // vocal ended with -r followed by i
+ [ 'ꦂo', '','ꦫꦺꦴ' ], // vocal ended with -r followed by o
+ [ 'ꦂu', '','ꦫꦸ' ], // vocal ended with -r followed by u
+ [ 'ꦂy', '','ꦫꦾ' ], // vocal ended with -r followed by y (Special)
- ['ꦁa', '','ꦔ'], // vocal ended with -ng followed by a
- ['ꦁe', '','ꦔꦺ'], // vocal ended with -ng followed by e
- ['ꦁi', '','ꦔꦶ'], // vocal ended with -ng followed by i
- ['ꦁo', '','ꦔꦺꦴ'], // vocal ended with -ng followed by o
- ['ꦁu', '','ꦔꦸ'], // vocal ended with -ng followed by u
+ [ 'ꦁa', '','ꦔ' ], // vocal ended with -ng followed by a
+ [ 'ꦁe', '','ꦔꦺ' ], // vocal ended with -ng followed by e
+ [ 'ꦁi', '','ꦔꦶ' ], // vocal ended with -ng followed by i
+ [ 'ꦁo', '','ꦔꦺꦴ' ], // vocal ended with -ng followed by o
+ [ 'ꦁu', '','ꦔꦸ' ], // vocal ended with -ng followed by u
// VI. Vocal (lowercase, uppercase, extended) ended with h/r/ng = special pasangan (-h, -r, -ng)
- ['꧀​h', '','꧀ꦲ꧀'],
+ [ '꧀​h', '','꧀ꦲ꧀' ],
// vocal a ended with h/r/ng
- ['(ꦲ|ꦤ|ꦕ|ꦫ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦝ|ꦗ|ꦪ|ꦚ|ꦩ|ꦒ|ꦧ|ꦛ|ꦔ|ꦘ|ꦿ|ꦾ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ|꦳)(h|H)', '','$1ꦃ'], // hanacaraka + h = -h
- ['(ꦲ|ꦤ|ꦕ|ꦫ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦝ|ꦗ|ꦪ|ꦚ|ꦩ|ꦒ|ꦧ|ꦛ|ꦔ|ꦘ|ꦿ|ꦾ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ|꦳)(r|R)', '','$1ꦂ'], // hanacaraka + r = -r
- ['(ꦲ|ꦤ|ꦕ|ꦫ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦝ|ꦗ|ꦪ|ꦚ|ꦩ|ꦒ|ꦧ|ꦛ|ꦔ|ꦘ|ꦿ|ꦾ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ|꦳)(ꦤ|ꦟ)꧀(g|G)', '','$1ꦁ'], // hanacaraka + ng = -ng
+ [ '(ꦲ|ꦤ|ꦕ|ꦫ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦝ|ꦗ|ꦪ|ꦚ|ꦩ|ꦒ|ꦧ|ꦛ|ꦔ|ꦘ|ꦿ|ꦾ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ|꦳)(h|H)', '','$1ꦃ' ], // hanacaraka + h = -h
+ [ '(ꦲ|ꦤ|ꦕ|ꦫ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦝ|ꦗ|ꦪ|ꦚ|ꦩ|ꦒ|ꦧ|ꦛ|ꦔ|ꦘ|ꦿ|ꦾ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ|꦳)(r|R)', '','$1ꦂ' ], // hanacaraka + r = -r
+ [ '(ꦲ|ꦤ|ꦕ|ꦫ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦝ|ꦗ|ꦪ|ꦚ|ꦩ|ꦒ|ꦧ|ꦛ|ꦔ|ꦘ|ꦿ|ꦾ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ|꦳)(ꦤ|ꦟ)꧀(g|G)', '','$1ꦁ' ], // hanacaraka + ng = -ng
// other vocals ended with h/r/ng
- ['(ꦴ|ꦻ|ꦍ|ꦺ|ꦼ|ꦶ|ꦷ|ꦸ|ꦹ|ꦄ|ꦌ|ꦆ|ꦎ|ꦈ)(h|H)', '','$1ꦃ'], // other vocal ended with -h
- ['(ꦴ|ꦻ|ꦍ|ꦺ|ꦼ|ꦶ|ꦷ|ꦸ|ꦹ|ꦄ|ꦌ|ꦆ|ꦎ|ꦈ)(r|R)', '','$1ꦂ'], // other vocal ended with -r
- ['(ꦴ|ꦻ|ꦍ|ꦺ|ꦼ|ꦶ|ꦷ|ꦸ|ꦹ|ꦄ|ꦌ|ꦆ|ꦎ|ꦈ)(ꦤ|ꦟ)꧀(g|G)', '','$1ꦁ'], // other vocal ended with -ng
+ [ '(ꦴ|ꦻ|ꦍ|ꦺ|ꦼ|ꦶ|ꦷ|ꦸ|ꦹ|ꦄ|ꦌ|ꦆ|ꦎ|ꦈ)(h|H)', '','$1ꦃ' ], // other vocal ended with -h
+ [ '(ꦴ|ꦻ|ꦍ|ꦺ|ꦼ|ꦶ|ꦷ|ꦸ|ꦹ|ꦄ|ꦌ|ꦆ|ꦎ|ꦈ)(r|R)', '','$1ꦂ' ], // other vocal ended with -r
+ [ '(ꦴ|ꦻ|ꦍ|ꦺ|ꦼ|ꦶ|ꦷ|ꦸ|ꦹ|ꦄ|ꦌ|ꦆ|ꦎ|ꦈ)(ꦤ|ꦟ)꧀(g|G)', '','$1ꦁ' ], // other vocal ended with -ng
// V. Lower case consonant followed by lower case consonant: Basic
// Note: not all of these combination are valid in Javanese language, for example -hn-,
@@ -74,198 +74,198 @@
// the letter 'c' can only be found followed by consonant r/l, and ch
// the letter 'y' can only be found followed by consonant w (nasal for 'i')
- ['꧀a', '',''], // default vowel is a, so, remove the pangkon
- ['꧀A', '','ꦄ'], // A
- ['(ꦤ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀b', '','$1꧀ꦧ꧀'],
- ['(ꦤ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀B', '','$1꧀ꦨ꧀'], // pasangan Ba murda
- ['ꦤ꧀​(c|C)', '','ꦚ꧀ꦕ꧀'], // n+zero-width-space+c
- ['ꦤ꧀(c|C)', '','ꦚ꧀ꦕ꧀'], // n followed by c became nasalized (nasal sound 'ny' + c)(REF:nyc)
- ['(ꦕ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀c', '','$1꧀ꦕ꧀'],
- ['(ꦕ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀C', '','$1꧀ꦖ꧀'], // pasangan Ca murda(?)
- ['(ꦤ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀d', '','$1꧀ꦢ꧀'],
- ['(ꦤ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀D', '','$1꧀ꦣ꧀'],
- ['꧀e', '','ꦺ'], // é|è
- ['꧀E', '','ꦌ'], // É|È
- ['(ꦤ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀(f|v|F|V)', '','$1꧀ꦥ꦳꧀'],
- ['(ꦕ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀g', '','$1꧀ꦒ꧀'], // can't be started with n, reserved for bigraf ng
- ['(ꦕ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀G', '','$1꧀ꦓ꧀'], // pasangan Ga murda (can't be started with n - see II. 2.)
- ['(ꦤ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀(h|H)', '','$1꧀ꦲ꧀'], // can't be started with k/d/t/g, reserved for bigraf kh/dh/th/gh
- ['꧀i', '','ꦶ'], // i
- ['꧀I', '','ꦆ'], // I
- ['ꦤ꧀​(j|J)', '','ꦤ꧀ꦗ꧀'], // n+zero-width-space+j
- ['ꦤ꧀(j|J)', '','ꦚ꧀ꦗ꧀'], // n followed by j became nasalized (nasal sound 'ny' + j)(REF:nyj)
- ['(ꦕ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀(j|J)', '','$1꧀ꦗ꧀'],
- ['(ꦤ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀k', '','$1꧀ꦏ꧀'],
- ['(ꦤ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀K', '','$1꧀ꦑ꧀'], // pasangan Ka murda
- ['(ꦲ|ꦃ|ꦤ|ꦕ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦗ|ꦚ|ꦩ|ꦒ|ꦧ|ꦔ|ꦁ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀(l|L)', '','$1꧀ꦭ꧀'],
- ['(ꦤ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀(m|M)', '','$1꧀ꦩ꧀'],
- ['(ꦤ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀n', '','$1꧀ꦤ꧀'],
- ['(ꦤ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀N', '','$1꧀ꦟ꧀'], // pasangan Na murda
- ['꧀o', '','ꦺꦴ'], // o
- ['꧀O', '','ꦎ'], // O
- ['(ꦤ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀p', '','$1꧀ꦥ꧀'],
- ['(ꦤ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀P', '','$1꧀ꦦ꧀'], // pasangan Pa murda
+ [ '꧀a', '','' ], // default vowel is a, so, remove the pangkon
+ [ '꧀A', '','ꦄ' ], // A
+ [ '(ꦤ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀b', '','$1꧀ꦧ꧀' ],
+ [ '(ꦤ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀B', '','$1꧀ꦨ꧀' ], // pasangan Ba murda
+ [ 'ꦤ꧀​(c|C)', '','ꦚ꧀ꦕ꧀' ], // n+zero-width-space+c
+ [ 'ꦤ꧀(c|C)', '','ꦚ꧀ꦕ꧀' ], // n followed by c became nasalized (nasal sound 'ny' + c)(REF:nyc)
+ [ '(ꦕ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀c', '','$1꧀ꦕ꧀' ],
+ [ '(ꦕ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀C', '','$1꧀ꦖ꧀' ], // pasangan Ca murda(?)
+ [ '(ꦤ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀d', '','$1꧀ꦢ꧀' ],
+ [ '(ꦤ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀D', '','$1꧀ꦣ꧀' ],
+ [ '꧀e', '','ꦺ' ], // é|è
+ [ '꧀E', '','ꦌ' ], // É|È
+ [ '(ꦤ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀(f|v|F|V)', '','$1꧀ꦥ꦳꧀' ],
+ [ '(ꦕ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀g', '','$1꧀ꦒ꧀' ], // can't be started with n, reserved for bigraf ng
+ [ '(ꦕ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀G', '','$1꧀ꦓ꧀' ], // pasangan Ga murda (can't be started with n - see II. 2.)
+ [ '(ꦤ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀(h|H)', '','$1꧀ꦲ꧀' ], // can't be started with k/d/t/g, reserved for bigraf kh/dh/th/gh
+ [ '꧀i', '','ꦶ' ], // i
+ [ '꧀I', '','ꦆ' ], // I
+ [ 'ꦤ꧀​(j|J)', '','ꦤ꧀ꦗ꧀' ], // n+zero-width-space+j
+ [ 'ꦤ꧀(j|J)', '','ꦚ꧀ꦗ꧀' ], // n followed by j became nasalized (nasal sound 'ny' + j)(REF:nyj)
+ [ '(ꦕ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀(j|J)', '','$1꧀ꦗ꧀' ],
+ [ '(ꦤ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀k', '','$1꧀ꦏ꧀' ],
+ [ '(ꦤ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀K', '','$1꧀ꦑ꧀' ], // pasangan Ka murda
+ [ '(ꦲ|ꦃ|ꦤ|ꦕ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦗ|ꦚ|ꦩ|ꦒ|ꦧ|ꦔ|ꦁ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀(l|L)', '','$1꧀ꦭ꧀' ],
+ [ '(ꦤ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀(m|M)', '','$1꧀ꦩ꧀' ],
+ [ '(ꦤ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀n', '','$1꧀ꦤ꧀' ],
+ [ '(ꦤ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀N', '','$1꧀ꦟ꧀' ], // pasangan Na murda
+ [ '꧀o', '','ꦺꦴ' ], // o
+ [ '꧀O', '','ꦎ' ], // O
+ [ '(ꦤ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀p', '','$1꧀ꦥ꧀' ],
+ [ '(ꦤ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀P', '','$1꧀ꦦ꧀' ], // pasangan Pa murda
// q
- ['(ꦲ|ꦃ|ꦤ|ꦕ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦝ|ꦗ|ꦚ|ꦩ|ꦒ|ꦧ|ꦛ|ꦔ|ꦁ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀​r', '','$1꧀ꦫ꧀'], // consonant+zero-width-space+(r|R) doesn't make special biconsonant -ra
- ['(ꦲ|ꦃ|ꦤ|ꦕ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦝ|ꦗ|ꦚ|ꦩ|ꦒ|ꦧ|ꦛ|ꦔ|ꦁ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀​R', '','$1꧀ꦬ꧀'], // consonant+zero-width-space+(r|R) doesn't make special biconsonant -ra
- ['(ꦲ|ꦃ|ꦤ|ꦕ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦝ|ꦗ|ꦚ|ꦩ|ꦒ|ꦧ|ꦛ|ꦔ|ꦁ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀(r|R)', '','$1ꦿ'], // special biconsonant -ra
- ['(ꦤ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀s', '','$1꧀ꦱ꧀'],
- ['(ꦤ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀S', '','$1꧀ꦯ꧀'], // pasangan Sa murda
- ['(ꦤ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀t', '','$1꧀ꦠ꧀'],
- ['(ꦤ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀T', '','$1꧀ꦡ꧀'], // pasangan Ta murda
- ['꧀u', '','ꦸ'], // u
- ['꧀U', '','ꦈ'], // U
+ [ '(ꦲ|ꦃ|ꦤ|ꦕ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦝ|ꦗ|ꦚ|ꦩ|ꦒ|ꦧ|ꦛ|ꦔ|ꦁ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀​r', '','$1꧀ꦫ꧀' ], // consonant+zero-width-space+(r|R) doesn't make special biconsonant -ra
+ [ '(ꦲ|ꦃ|ꦤ|ꦕ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦝ|ꦗ|ꦚ|ꦩ|ꦒ|ꦧ|ꦛ|ꦔ|ꦁ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀​R', '','$1꧀ꦬ꧀' ], // consonant+zero-width-space+(r|R) doesn't make special biconsonant -ra
+ [ '(ꦲ|ꦃ|ꦤ|ꦕ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦝ|ꦗ|ꦚ|ꦩ|ꦒ|ꦧ|ꦛ|ꦔ|ꦁ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀(r|R)', '','$1ꦿ' ], // special biconsonant -ra
+ [ '(ꦤ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀s', '','$1꧀ꦱ꧀' ],
+ [ '(ꦤ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀S', '','$1꧀ꦯ꧀' ], // pasangan Sa murda
+ [ '(ꦤ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀t', '','$1꧀ꦠ꧀' ],
+ [ '(ꦤ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀T', '','$1꧀ꦡ꧀' ], // pasangan Ta murda
+ [ '꧀u', '','ꦸ' ], // u
+ [ '꧀U', '','ꦈ' ], // U
// v = f
- ['(ꦲ|ꦃ|ꦤ|ꦫ|ꦂ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦝ|ꦗ|ꦪ|ꦚ|ꦩ|ꦒ|ꦧ|ꦔ|ꦁ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀(w|W)꧀', '','$1꧀ꦮ'],
- ['(ꦲ|ꦃ|ꦫ|ꦂ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦝ|ꦗ|ꦩ|ꦒ|ꦧ|ꦔ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀​(y|Y)', '','$1꧀ꦪ꧀'], // consonant+zero-width-space+(y|Y) doesn't make special biconsonant -ya
+ [ '(ꦲ|ꦃ|ꦤ|ꦫ|ꦂ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦝ|ꦗ|ꦪ|ꦚ|ꦩ|ꦒ|ꦧ|ꦔ|ꦁ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀(w|W)꧀', '','$1꧀ꦮ' ],
+ [ '(ꦲ|ꦃ|ꦫ|ꦂ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦝ|ꦗ|ꦩ|ꦒ|ꦧ|ꦔ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀​(y|Y)', '','$1꧀ꦪ꧀' ], // consonant+zero-width-space+(y|Y) doesn't make special biconsonant -ya
- ['(ꦲ|ꦃ|ꦫ|ꦂ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦝ|ꦗ|ꦩ|ꦒ|ꦧ|ꦔ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦦ|ꦯ|ꦡ)꧀(y|Y)', '','$1ꦾ'], // special biconsonant -ya,
+ [ '(ꦲ|ꦃ|ꦫ|ꦂ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦝ|ꦗ|ꦩ|ꦒ|ꦧ|ꦔ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦦ|ꦯ|ꦡ)꧀(y|Y)', '','$1ꦾ' ], // special biconsonant -ya,
// can't be started with n or y, reserved for bigraf ny (REF:-yy-)
- ['(ꦤ|ꦏ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀(z|Z)', '','$1ꦾꦗ꦳꧀'], // can't be started with d, reserved for bigraf dz
+ [ '(ꦤ|ꦏ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀(z|Z)', '','$1ꦾꦗ꦳꧀' ], // can't be started with d, reserved for bigraf dz
// IV. 1. Special consonant
- ['(ꦾ|ꦿ)a', '','$1'],
- ['ꦿx', '','ꦽ'], // special biconsonant -rê
- ['ꦊq', '','ꦋ'], // special character lê Raswadi
- ['ꦭ꧀x', '','ꦊ'], // special character lê
- ['ꦫ꧀x', '','ꦉ'], // special character rê
- ['ꦌx', '','ꦄꦼ'], // Ê
- ['꧀x', '','ꦼ'], // x is another way to write ê
- ['꧀X', '','ꦄꦼ'], // X is another way to write Ê
+ [ '(ꦾ|ꦿ)a', '','$1' ],
+ [ 'ꦿx', '','ꦽ' ], // special biconsonant -rê
+ [ 'ꦊq', '','ꦋ' ], // special character lê Raswadi
+ [ 'ꦭ꧀x', '','ꦊ' ], // special character lê
+ [ 'ꦫ꧀x', '','ꦉ' ], // special character rê
+ [ 'ꦌx', '','ꦄꦼ' ], // Ê
+ [ '꧀x', '','ꦼ' ], // x is another way to write ê
+ [ '꧀X', '','ꦄꦼ' ], // X is another way to write Ê
// IV. 3. Extended vowel
// long a (aa) - see II.
- ['(ꦲ|ꦤ|ꦕ|ꦫ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦝ|ꦗ|ꦪ|ꦚ|ꦩ|ꦒ|ꦧ|ꦛ|ꦔ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ|꦳)i', '','$1ꦻ'], // hanacaraka + i = -ai
- ['(ꦲ|ꦤ|ꦕ|ꦫ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦝ|ꦗ|ꦪ|ꦚ|ꦩ|ꦒ|ꦧ|ꦛ|ꦔ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ|꦳)u', '','$1ꦻꦴ'], // hanacaraka + u = -au
- ['ꦄi', '','ꦍ'], // Ai
- ['ꦄu', '','ꦎꦴ'], // Au
- ['ꦶi', '','ꦷ'], // long i (ii)
- ['ꦆi', '','ꦇ'], // long i (Ii)
- ['ꦸu', '','ꦹ'], // long u (uu)
- ['ꦈu', '','ꦈꦴ'], // long u (Uu)
- ['ꦺꦴo', '','ꦵ'], // Sundanese -o
+ [ '(ꦲ|ꦤ|ꦕ|ꦫ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦝ|ꦗ|ꦪ|ꦚ|ꦩ|ꦒ|ꦧ|ꦛ|ꦔ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ|꦳)i', '','$1ꦻ' ], // hanacaraka + i = -ai
+ [ '(ꦲ|ꦤ|ꦕ|ꦫ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦝ|ꦗ|ꦪ|ꦚ|ꦩ|ꦒ|ꦧ|ꦛ|ꦔ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ|꦳)u', '','$1ꦻꦴ' ], // hanacaraka + u = -au
+ [ 'ꦄi', '','ꦍ' ], // Ai
+ [ 'ꦄu', '','ꦎꦴ' ], // Au
+ [ 'ꦶi', '','ꦷ' ], // long i (ii)
+ [ 'ꦆi', '','ꦇ' ], // long i (Ii)
+ [ 'ꦸu', '','ꦹ' ], // long u (uu)
+ [ 'ꦈu', '','ꦈꦴ' ], // long u (Uu)
+ [ 'ꦺꦴo', '','ꦵ' ], // Sundanese -o
// IV. 2. Extended consonant
- ['ꦱ꧀​(s|h)', '','ꦰ꧀'], // s_s (with zero-width-space)
- ['ꦏ꧀​h', '','ꦏ꧀ꦲ꧀'], // k_h (with zero-width-space)
- ['ꦒ꧀​h', '','ꦒ꧀ꦲ꧀'], // g_h (with zero-width-space)
- ['ꦢ꧀​z', '','ꦢ꧀ꦗ꦳꧀'], // d_z (with zero-width-space)
- ['ꦗ꧀​h', '','ꦙ'], // j_h (with zero-width-space)
- ['ꦱ꧀(s|h)', '','ꦰ꧀'], // ss/sh
- ['ꦏ꧀h', '','ꦏ꦳'], // kh
- ['ꦒ꧀h', '','ꦒ꦳'], // gh
- ['ꦢ꧀z', '','ꦢ꦳'], // dz
- ['ꦗ꧀h', '','ꦙ'], // jh/Ja mahaprana
+ [ 'ꦱ꧀​(s|h)', '','ꦰ꧀' ], // s_s (with zero-width-space)
+ [ 'ꦏ꧀​h', '','ꦏ꧀ꦲ꧀' ], // k_h (with zero-width-space)
+ [ 'ꦒ꧀​h', '','ꦒ꧀ꦲ꧀' ], // g_h (with zero-width-space)
+ [ 'ꦢ꧀​z', '','ꦢ꧀ꦗ꦳꧀' ], // d_z (with zero-width-space)
+ [ 'ꦗ꧀​h', '','ꦙ' ], // j_h (with zero-width-space)
+ [ 'ꦱ꧀(s|h)', '','ꦰ꧀' ], // ss/sh
+ [ 'ꦏ꧀h', '','ꦏ꦳' ], // kh
+ [ 'ꦒ꧀h', '','ꦒ꦳' ], // gh
+ [ 'ꦢ꧀z', '','ꦢ꦳' ], // dz
+ [ 'ꦗ꧀h', '','ꦙ' ], // jh/Ja mahaprana
// III. Non-words
// q and Q are special characters for choosing less used characters by pressing q/Q multiple times (rotating back)
- [' ', '','​'], // zero-width-space, since javanese have no space
- ['꧅q', '','꧁'], // rêrênggan kiwa
- ['꧄q', '','꧅'], // pada luhur
- ['꧃q', '','꧄'], // pada madya
- ['꧂q', '', '꧃'],// pada andhap
- ['꧁q', '','꧂'], // rêrênggan têngên
- ['Q', '','꧁'], // rêrênggan kiwa
- ['꧟[Q|q]', '','꧀'], // pangkon
- ['꧞[Q|q]', '','꧟'], // pada isen-isen
- ['꧆[Q|q]', '','꧞'], // pada tirta tumetes
- ['ꦀ[Q|q]', '', '꧆'],// pada windu
- ['꦳[Q|q]', '','ꦀ'], // panyangga
- ['꧀[Q|q]', '','꦳'], // cecak telu
- ['q', '','꧀'], // pangkon - to cut off the default -a vowel
+ [ ' ', '','​' ], // zero-width-space, since javanese have no space
+ [ '꧅q', '','꧁' ], // rêrênggan kiwa
+ [ '꧄q', '','꧅' ], // pada luhur
+ [ '꧃q', '','꧄' ], // pada madya
+ [ '꧂q', '', '꧃' ],// pada andhap
+ [ '꧁q', '','꧂' ], // rêrênggan têngên
+ [ 'Q', '','꧁' ], // rêrênggan kiwa
+ [ '꧟[Q|q]', '','꧀' ], // pangkon
+ [ '꧞[Q|q]', '','꧟' ], // pada isen-isen
+ [ '꧆[Q|q]', '','꧞' ], // pada tirta tumetes
+ [ 'ꦀ[Q|q]', '', '꧆' ],// pada windu
+ [ '꦳[Q|q]', '','ꦀ' ], // panyangga
+ [ '꧀[Q|q]', '','꦳' ], // cecak telu
+ [ 'q', '','꧀' ], // pangkon - to cut off the default -a vowel
- ['ꦫq', '','ꦿ'], // another way to write -ra
- ['ꦪq', '','ꦾ'], // another way to write -ya
+ [ 'ꦫq', '','ꦿ' ], // another way to write -ra
+ [ 'ꦪq', '','ꦾ' ], // another way to write -ya
// II. 1. Alphabetical ha-na-ca-ra-ka
- ['ꦠ꧀​h', '','ꦠ꧀ꦲ꧀'], // t_h (with zero-width-space)
- ['ꦢ꧀​h', '','ꦢ꧀ꦲ꧀'], // d_h (with zero-width-space)
- ['ꦤ꧀​y', '','ꦚ꧀ꦪ꧀'], // n_y (with zero-width-space)
- ['ꦤ꧀​g', '','ꦔ꧀ꦒ꧀'], // n_g (with zero-width-space)
- ['ꦠ꧀h', '','ꦛ꧀'], // th
- ['ꦢ꧀h', '','ꦝ꧀'], // dh
- ['ꦤ꧀y', '','ꦚ꧀'], // ny
- ['ꦤ꧀g', '','ꦁ'], // ng
- ['a', '','ꦲ'],
- ['b', '','ꦧ꧀'],
- ['c', '','ꦕ꧀'],
- ['d', '','ꦢ꧀'],
- ['e', '','ꦲꦺ'], // é|è
- ['(f|v)', '','ꦥ꦳꧀'],
- ['g', '','ꦒ꧀'],
- ['h', '','ꦲ꧀'],
- ['i', '','ꦲꦶ'],
- ['j', '','ꦗ꧀'],
- ['k', '','ꦏ꧀'],
- ['l', '','ꦭ꧀'],
- ['m', '','ꦩ꧀'],
- ['n', '','ꦤ꧀'],
- ['o', '','ꦲꦺꦴ'],
- ['p', '','ꦥ꧀'],
+ [ 'ꦠ꧀​h', '','ꦠ꧀ꦲ꧀' ], // t_h (with zero-width-space)
+ [ 'ꦢ꧀​h', '','ꦢ꧀ꦲ꧀' ], // d_h (with zero-width-space)
+ [ 'ꦤ꧀​y', '','ꦚ꧀ꦪ꧀' ], // n_y (with zero-width-space)
+ [ 'ꦤ꧀​g', '','ꦔ꧀ꦒ꧀' ], // n_g (with zero-width-space)
+ [ 'ꦠ꧀h', '','ꦛ꧀' ], // th
+ [ 'ꦢ꧀h', '','ꦝ꧀' ], // dh
+ [ 'ꦤ꧀y', '','ꦚ꧀' ], // ny
+ [ 'ꦤ꧀g', '','ꦁ' ], // ng
+ [ 'a', '','ꦲ' ],
+ [ 'b', '','ꦧ꧀' ],
+ [ 'c', '','ꦕ꧀' ],
+ [ 'd', '','ꦢ꧀' ],
+ [ 'e', '','ꦲꦺ' ], // é|è
+ [ '(f|v)', '','ꦥ꦳꧀' ],
+ [ 'g', '','ꦒ꧀' ],
+ [ 'h', '','ꦲ꧀' ],
+ [ 'i', '','ꦲꦶ' ],
+ [ 'j', '','ꦗ꧀' ],
+ [ 'k', '','ꦏ꧀' ],
+ [ 'l', '','ꦭ꧀' ],
+ [ 'm', '','ꦩ꧀' ],
+ [ 'n', '','ꦤ꧀' ],
+ [ 'o', '','ꦲꦺꦴ' ],
+ [ 'p', '','ꦥ꧀' ],
// q = special letters, see III.
- ['r', '','ꦫ꧀'],
- ['s', '','ꦱ꧀'],
- ['t', '','ꦠ꧀'],
- ['u', '','ꦲꦸ'],
+ [ 'r', '','ꦫ꧀' ],
+ [ 's', '','ꦱ꧀' ],
+ [ 't', '','ꦠ꧀' ],
+ [ 'u', '','ꦲꦸ' ],
// v = f
- ['w', '','ꦮ꧀'],
- ['x', '','ꦲꦼ'], // ê
- ['y', '','ꦪ꧀'],
- ['z', '','ꦗ꦳꧀'],
+ [ 'w', '','ꦮ꧀' ],
+ [ 'x', '','ꦲꦼ' ], // ê
+ [ 'y', '','ꦪ꧀' ],
+ [ 'z', '','ꦗ꦳꧀' ],
// II. Basic Letters:
// II. 2. Capital Ha-Na-Ca-Ra-Ka (Aksara Murda)
- ['(ꦠ|ꦡ)꧀(h|H)', '','ꦛ꧀'],
- ['ꦣ꧀h', '','ꦞ꧀'], // Dha murda
- ['(ꦢ|ꦣ)꧀H', '','ꦞ꧀'], // Dha murda
- ['ꦟ꧀y', '','ꦘ꧀'], // Nya murda
- ['(ꦤ|ꦟ)꧀Y', '','ꦘ꧀'], // NYA murda
- ['(ꦤ|ꦟ)꧀(g|G)', '','ꦔ꧀'],// nga
- ['A', '','ꦄ'], // A
- ['B', '','ꦨ꧀'], // Ba murda
- ['C', '','ꦖ꧀'], // Ca murda(?)
- ['D', '','ꦣ꧀'],
- ['E', '','ꦌ'], // É|È
- ['(F|V)', '','ꦥ꦳꧀'],
- ['G', '','ꦓ꧀'], // Ga murda
- ['H', '','ꦲ꧀'],
- ['I', '','ꦆ'], // I
- ['J', '','ꦙ꧀'],// Ja Mahaprana
- ['K', '','ꦑ꧀'], // Ka murda
- ['L', '','ꦭ꧀'],
- ['M', '','ꦩ꧀'],
- ['N', '','ꦟ꧀'], // Na murda
- ['O', '','ꦎ'], // O
- ['P', '','ꦦ꧀'], // Pa murda
+ [ '(ꦠ|ꦡ)꧀(h|H)', '','ꦛ꧀' ],
+ [ 'ꦣ꧀h', '','ꦞ꧀' ], // Dha murda
+ [ '(ꦢ|ꦣ)꧀H', '','ꦞ꧀' ], // Dha murda
+ [ 'ꦟ꧀y', '','ꦘ꧀' ], // Nya murda
+ [ '(ꦤ|ꦟ)꧀Y', '','ꦘ꧀' ], // NYA murda
+ [ '(ꦤ|ꦟ)꧀(g|G)', '','ꦔ꧀' ],// nga
+ [ 'A', '','ꦄ' ], // A
+ [ 'B', '','ꦨ꧀' ], // Ba murda
+ [ 'C', '','ꦖ꧀' ], // Ca murda(?)
+ [ 'D', '','ꦣ꧀' ],
+ [ 'E', '','ꦌ' ], // É|È
+ [ '(F|V)', '','ꦥ꦳꧀' ],
+ [ 'G', '','ꦓ꧀' ], // Ga murda
+ [ 'H', '','ꦲ꧀' ],
+ [ 'I', '','ꦆ' ], // I
+ [ 'J', '','ꦙ꧀' ],// Ja Mahaprana
+ [ 'K', '','ꦑ꧀' ], // Ka murda
+ [ 'L', '','ꦭ꧀' ],
+ [ 'M', '','ꦩ꧀' ],
+ [ 'N', '','ꦟ꧀' ], // Na murda
+ [ 'O', '','ꦎ' ], // O
+ [ 'P', '','ꦦ꧀' ], // Pa murda
// Q = special letters, see III.
- ['R', '','ꦬ꧀'],
- ['S', '','ꦯ꧀'], // Sa murda
- ['T', '','ꦡ꧀'], // Ta murda
- ['U', '','ꦈ'], // U
+ [ 'R', '','ꦬ꧀' ],
+ [ 'S', '','ꦯ꧀' ], // Sa murda
+ [ 'T', '','ꦡ꧀' ], // Ta murda
+ [ 'U', '','ꦈ' ], // U
// V = F
- ['W', '','ꦮ꧀'],
- ['X', '','ꦄꦼ'], // X is another way to write Ê
- ['Y', '','ꦪ꧀'],
- ['Z', '','ꦗ꦳꧀'],
+ [ 'W', '','ꦮ꧀' ],
+ [ 'X', '','ꦄꦼ' ], // X is another way to write Ê
+ [ 'Y', '','ꦪ꧀' ],
+ [ 'Z', '','ꦗ꦳꧀' ],
// I. Number
- ['0', '','꧐'],
- ['1', '','꧑'],
- ['2', '','꧒'],
- ['3', '','꧓'],
- ['4', '','꧔'],
- ['5', '','꧕'],
- ['6', '','꧖'],
- ['7', '','꧗'],
- ['8', '','꧘'],
- ['9', '','꧙'],
- [':', '','꧇'], // 'enclose Javanese numbers, e.g. ":1:"'
- [',', '','꧈'], // 'comma'
- ['\\.', '','꧉'], // 'period'
- ['꧊\\|', '','꧋'], // 'opening paragraph character'
- ['\\|', '','꧊'], // 'poem character'
- ['\\(', '','꧌'], // 'Javanese opening bracket'
- ['\\)', '','꧍'] // 'Javanese closing bracket'
+ [ '0', '','꧐' ],
+ [ '1', '','꧑' ],
+ [ '2', '','꧒' ],
+ [ '3', '','꧓' ],
+ [ '4', '','꧔' ],
+ [ '5', '','꧕' ],
+ [ '6', '','꧖' ],
+ [ '7', '','꧗' ],
+ [ '8', '','꧘' ],
+ [ '9', '','꧙' ],
+ [ ':', '','꧇' ], // 'enclose Javanese numbers, e.g. ":1:"'
+ [ ',', '','꧈' ], // 'comma'
+ [ '\\.', '','꧉' ], // 'period'
+ [ '꧊\\|', '','꧋' ], // 'opening paragraph character'
+ [ '\\|', '','꧊' ], // 'poem character'
+ [ '\\(', '','꧌' ], // 'Javanese opening bracket'
+ [ '\\)', '','꧍' ] // 'Javanese closing bracket'
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ka/ka-kbd.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ka/ka-kbd.js
index a974a686..80a86a30 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ka/ka-kbd.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ka/ka-kbd.js
@@ -11,45 +11,45 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['.k', 'კ'],
- ['.p', 'პ'],
- ['+z', 'ჟ'],
- ['.t', 'ტ'],
- ['.g', 'ღ'],
- ['+s', 'შ'],
- ['.+c', 'ჭ'],
- ['+c', 'ჩ'],
- ['.c', 'წ'],
- ['+j', 'ჯ'],
- ['ყ1', 'ჴ'],
- ['ე0', 'ჱ'],
- ['ო1', 'ჵ'],
- ['ი1', 'ჲ'],
- ['a', 'ა'],
- ['b', 'ბ'],
- ['g', 'გ'],
- ['d', 'დ'],
- ['e', 'ე'],
- ['v', 'ვ'],
- ['z', 'ზ'],
- ['t', 'თ'],
- ['i', 'ი'],
- ['l', 'ლ'],
- ['m', 'მ'],
- ['n', 'ნ'],
- ['o', 'ო'],
- ['r', 'რ'],
- ['s', 'ს'],
- ['u', 'უ'],
- ['p', 'ფ'],
- ['k', 'ქ'],
- ['q', 'ყ'],
- ['c', 'ც'],
- ['j', 'ძ'],
- ['x', 'ხ'],
- ['h', 'ჰ'],
- ['w', 'ჳ'],
- ['f', 'ჶ']]
+ [ '.k', 'კ' ],
+ [ '.p', 'პ' ],
+ [ '+z', 'ჟ' ],
+ [ '.t', 'ტ' ],
+ [ '.g', 'ღ' ],
+ [ '+s', 'შ' ],
+ [ '.+c', 'ჭ' ],
+ [ '+c', 'ჩ' ],
+ [ '.c', 'წ' ],
+ [ '+j', 'ჯ' ],
+ [ 'ყ1', 'ჴ' ],
+ [ 'ე0', 'ჱ' ],
+ [ 'ო1', 'ჵ' ],
+ [ 'ი1', 'ჲ' ],
+ [ 'a', 'ა' ],
+ [ 'b', 'ბ' ],
+ [ 'g', 'გ' ],
+ [ 'd', 'დ' ],
+ [ 'e', 'ე' ],
+ [ 'v', 'ვ' ],
+ [ 'z', 'ზ' ],
+ [ 't', 'თ' ],
+ [ 'i', 'ი' ],
+ [ 'l', 'ლ' ],
+ [ 'm', 'მ' ],
+ [ 'n', 'ნ' ],
+ [ 'o', 'ო' ],
+ [ 'r', 'რ' ],
+ [ 's', 'ს' ],
+ [ 'u', 'უ' ],
+ [ 'p', 'ფ' ],
+ [ 'k', 'ქ' ],
+ [ 'q', 'ყ' ],
+ [ 'c', 'ც' ],
+ [ 'j', 'ძ' ],
+ [ 'x', 'ხ' ],
+ [ 'h', 'ჰ' ],
+ [ 'w', 'ჳ' ],
+ [ 'f', 'ჶ' ] ]
};
$.ime.register( kaKbd );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ka/ka-transliteration.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ka/ka-transliteration.js
index 08fc1db5..f9b5d796 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ka/ka-transliteration.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ka/ka-transliteration.js
@@ -13,45 +13,45 @@
contextLength: 3,
maxKeyLength: 1,
patterns: [
- ['\\\\([A-Za-z|\\~|\\`])', '\\\\', '$1'],
- ['`', '„'],
- ['~', '“'],
- ['q', 'ქ'],
- ['w', 'წ'],
- ['e', 'ე'],
- ['r', 'რ'],
- ['t', 'ტ'],
- ['y', 'ყ'],
- ['u', 'უ'],
- ['i', 'ი'],
- ['o', 'ო'],
- ['p', 'პ'],
+ [ '\\\\([A-Za-z|\\~|\\`])', '\\\\', '$1' ],
+ [ '`', '„' ],
+ [ '~', '“' ],
+ [ 'q', 'ქ' ],
+ [ 'w', 'წ' ],
+ [ 'e', 'ე' ],
+ [ 'r', 'რ' ],
+ [ 't', 'ტ' ],
+ [ 'y', 'ყ' ],
+ [ 'u', 'უ' ],
+ [ 'i', 'ი' ],
+ [ 'o', 'ო' ],
+ [ 'p', 'პ' ],
- ['a', 'ა'],
- ['s', 'ს'],
- ['d', 'დ'],
- ['f', 'ფ'],
- ['g', 'გ'],
- ['h', 'ჰ'],
- ['j', 'ჯ'],
- ['k', 'კ'],
- ['l', 'ლ'],
+ [ 'a', 'ა' ],
+ [ 's', 'ს' ],
+ [ 'd', 'დ' ],
+ [ 'f', 'ფ' ],
+ [ 'g', 'გ' ],
+ [ 'h', 'ჰ' ],
+ [ 'j', 'ჯ' ],
+ [ 'k', 'კ' ],
+ [ 'l', 'ლ' ],
- ['z', 'ზ'],
- ['x', 'ხ'],
- ['c', 'ც'],
- ['v', 'ვ'],
- ['b', 'ბ'],
- ['n', 'ნ'],
- ['m', 'მ'],
+ [ 'z', 'ზ' ],
+ [ 'x', 'ხ' ],
+ [ 'c', 'ც' ],
+ [ 'v', 'ვ' ],
+ [ 'b', 'ბ' ],
+ [ 'n', 'ნ' ],
+ [ 'm', 'მ' ],
- ['W', 'ჭ'],
- ['R', 'ღ'],
- ['T', 'თ'],
- ['S', 'შ'],
- ['J', 'ჟ'],
- ['Z', 'ძ'],
- ['C', 'ჩ']]
+ [ 'W', 'ჭ' ],
+ [ 'R', 'ღ' ],
+ [ 'T', 'თ' ],
+ [ 'S', 'შ' ],
+ [ 'J', 'ჟ' ],
+ [ 'Z', 'ძ' ],
+ [ 'C', 'ჩ' ] ]
};
$.ime.register( kaTransliteration );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/kk/kk-arabic.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/kk/kk-arabic.js
index 72db1d3b..ce1ee0b7 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/kk/kk-arabic.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/kk/kk-arabic.js
@@ -11,50 +11,50 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['a', 'ا'],
- ['A', 'ٵ'],
- ['b', 'ب'],
- ['v', 'ۆ'],
- ['g', 'گ'],
- ['R', 'ع'],
- ['d', 'د'],
- ['e', 'ە'],
- ['j', 'ج'],
- ['z', 'ز'],
- ['y', 'ي'],
- ['k', 'ك'],
- ['q', 'ق'],
- ['l', 'ل'],
- ['m', 'م'],
- ['n', 'ن'],
- ['N', 'ڭ'],
- ['o', 'و'],
- ['O', 'ٶ'],
- ['p', 'پ'],
- ['r', 'ر'],
- ['s', 'س'],
- ['t', 'ت'],
- ['w', 'ۋ'],
- ['u', 'ۇ'],
- ['U', 'ٷ'],
- ['f', 'ف'],
- ['H', 'ح'],
- ['h', 'ه'],
- ['c', 'چ'],
- ['S', 'ش'],
- ['I', 'ى'],
- ['i', 'ٸ'],
- [';', '؛'],
- [',', '،'],
- ['\\?', '?'],
- ['\\<', '>'],
- ['\\>', '<'],
- ['\\(', ')'],
- ['\\)', '('],
- ['\\[', ']'],
- ['\\]', '['],
- ['\\{', '}'],
- ['\\}', '{']
+ [ 'a', 'ا' ],
+ [ 'A', 'ٵ' ],
+ [ 'b', 'ب' ],
+ [ 'v', 'ۆ' ],
+ [ 'g', 'گ' ],
+ [ 'R', 'ع' ],
+ [ 'd', 'د' ],
+ [ 'e', 'ە' ],
+ [ 'j', 'ج' ],
+ [ 'z', 'ز' ],
+ [ 'y', 'ي' ],
+ [ 'k', 'ك' ],
+ [ 'q', 'ق' ],
+ [ 'l', 'ل' ],
+ [ 'm', 'م' ],
+ [ 'n', 'ن' ],
+ [ 'N', 'ڭ' ],
+ [ 'o', 'و' ],
+ [ 'O', 'ٶ' ],
+ [ 'p', 'پ' ],
+ [ 'r', 'ر' ],
+ [ 's', 'س' ],
+ [ 't', 'ت' ],
+ [ 'w', 'ۋ' ],
+ [ 'u', 'ۇ' ],
+ [ 'U', 'ٷ' ],
+ [ 'f', 'ف' ],
+ [ 'H', 'ح' ],
+ [ 'h', 'ه' ],
+ [ 'c', 'چ' ],
+ [ 'S', 'ش' ],
+ [ 'I', 'ى' ],
+ [ 'i', 'ٸ' ],
+ [ ';', '؛' ],
+ [ ',', '،' ],
+ [ '\\?', '?' ],
+ [ '\\<', '>' ],
+ [ '\\>', '<' ],
+ [ '\\(', ')' ],
+ [ '\\)', '(' ],
+ [ '\\[', ']' ],
+ [ '\\]', '[' ],
+ [ '\\{', '}' ],
+ [ '\\}', '{' ]
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/kk/kk-kbd.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/kk/kk-kbd.js
index 4a6e273e..7ea4f087 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/kk/kk-kbd.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/kk/kk-kbd.js
@@ -11,96 +11,96 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['`', '('],
- ['\\~', ')'],
- ['1', '\"'],
- ['2', 'ә'],
- ['\\@', 'Ә'],
- ['3', 'і'],
- ['\\#', 'І'],
- ['4', 'ӊ'],
- ['\\$', 'Ӊ'],
- ['5', 'ғ'],
- ['\\%', 'Ғ'],
- ['6', ','],
- ['\\^', ';'],
- ['7', '.'],
- ['\\&', ':'],
- ['8', 'ү'],
- ['\\*', 'Ү'],
- ['9', 'ұ'],
- ['\\(', 'Ұ'],
- ['0', 'қ'],
- ['\\)', 'Қ'],
- ['\\-', 'ө'],
- ['\\_', 'Ө'],
- ['\\=', 'һ'],
- ['\\+', 'Һ'],
- ['q', 'й'],
- ['Q', 'Й'],
- ['w', 'ц'],
- ['W', 'Ц'],
- ['e', 'у'],
- ['E', 'У'],
- ['r', 'к'],
- ['R', 'К'],
- ['t', 'е'],
- ['T', 'Е'],
- ['y', 'н'],
- ['Y', 'Н'],
- ['u', 'г'],
- ['U', 'Г'],
- ['i', 'ш'],
- ['I', 'Ш'],
- ['o', 'щ'],
- ['O', 'Щ'],
- ['p', 'з'],
- ['P', 'З'],
- ['\\[', 'х'],
- ['\\{', 'Х'],
- ['\\]', 'ъ'],
- ['\\}', 'Ъ'],
- ['a', 'ф'],
- ['A', 'Ф'],
- ['s', 'ы'],
- ['S', 'Ы'],
- ['d', 'в'],
- ['D', 'В'],
- ['f', 'а'],
- ['F', 'А'],
- ['g', 'п'],
- ['G', 'П'],
- ['h', 'р'],
- ['H', 'Р'],
- ['j', 'о'],
- ['J', 'О'],
- ['k', 'л'],
- ['K', 'Л'],
- ['l', 'д'],
- ['L', 'Д'],
- [';', 'ж'],
- [':', 'Ж'],
- ['\'', 'э'],
- ['\"', 'Э'],
- ['z', 'я'],
- ['Z', 'Я'],
- ['x', 'ч'],
- ['X', 'Ч'],
- ['c', 'с'],
- ['C', 'С'],
- ['v', 'м'],
- ['V', 'М'],
- ['b', 'и'],
- ['B', 'И'],
- ['n', 'т'],
- ['N', 'Т'],
- ['m', 'ь'],
- ['M', 'Ь'],
- [',', 'б'],
- ['\\<', 'Б'],
- ['\\.', 'ю'],
- ['\\>', 'Ю'],
- ['/', '№']
+ [ '`', '(' ],
+ [ '\\~', ')' ],
+ [ '1', '\"' ],
+ [ '2', 'ә' ],
+ [ '\\@', 'Ә' ],
+ [ '3', 'і' ],
+ [ '\\#', 'І' ],
+ [ '4', 'ӊ' ],
+ [ '\\$', 'Ӊ' ],
+ [ '5', 'ғ' ],
+ [ '\\%', 'Ғ' ],
+ [ '6', ',' ],
+ [ '\\^', ';' ],
+ [ '7', '.' ],
+ [ '\\&', ':' ],
+ [ '8', 'ү' ],
+ [ '\\*', 'Ү' ],
+ [ '9', 'ұ' ],
+ [ '\\(', 'Ұ' ],
+ [ '0', 'қ' ],
+ [ '\\)', 'Қ' ],
+ [ '\\-', 'ө' ],
+ [ '\\_', 'Ө' ],
+ [ '\\=', 'һ' ],
+ [ '\\+', 'Һ' ],
+ [ 'q', 'й' ],
+ [ 'Q', 'Й' ],
+ [ 'w', 'ц' ],
+ [ 'W', 'Ц' ],
+ [ 'e', 'у' ],
+ [ 'E', 'У' ],
+ [ 'r', 'к' ],
+ [ 'R', 'К' ],
+ [ 't', 'е' ],
+ [ 'T', 'Е' ],
+ [ 'y', 'н' ],
+ [ 'Y', 'Н' ],
+ [ 'u', 'г' ],
+ [ 'U', 'Г' ],
+ [ 'i', 'ш' ],
+ [ 'I', 'Ш' ],
+ [ 'o', 'щ' ],
+ [ 'O', 'Щ' ],
+ [ 'p', 'з' ],
+ [ 'P', 'З' ],
+ [ '\\[', 'х' ],
+ [ '\\{', 'Х' ],
+ [ '\\]', 'ъ' ],
+ [ '\\}', 'Ъ' ],
+ [ 'a', 'ф' ],
+ [ 'A', 'Ф' ],
+ [ 's', 'ы' ],
+ [ 'S', 'Ы' ],
+ [ 'd', 'в' ],
+ [ 'D', 'В' ],
+ [ 'f', 'а' ],
+ [ 'F', 'А' ],
+ [ 'g', 'п' ],
+ [ 'G', 'П' ],
+ [ 'h', 'р' ],
+ [ 'H', 'Р' ],
+ [ 'j', 'о' ],
+ [ 'J', 'О' ],
+ [ 'k', 'л' ],
+ [ 'K', 'Л' ],
+ [ 'l', 'д' ],
+ [ 'L', 'Д' ],
+ [ ';', 'ж' ],
+ [ ':', 'Ж' ],
+ [ '\'', 'э' ],
+ [ '\"', 'Э' ],
+ [ 'z', 'я' ],
+ [ 'Z', 'Я' ],
+ [ 'x', 'ч' ],
+ [ 'X', 'Ч' ],
+ [ 'c', 'с' ],
+ [ 'C', 'С' ],
+ [ 'v', 'м' ],
+ [ 'V', 'М' ],
+ [ 'b', 'и' ],
+ [ 'B', 'И' ],
+ [ 'n', 'т' ],
+ [ 'N', 'Т' ],
+ [ 'm', 'ь' ],
+ [ 'M', 'Ь' ],
+ [ ',', 'б' ],
+ [ '\\<', 'Б' ],
+ [ '\\.', 'ю' ],
+ [ '\\>', 'Ю' ],
+ [ '/', '№' ]
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/kn/kn-inscript.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/kn/kn-inscript.js
index 33a0f607..de15ba7e 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/kn/kn-inscript.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/kn/kn-inscript.js
@@ -10,101 +10,101 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['x', '\u0C82'],
- ['_', '\u0C83'],
- ['D', '\u0C85'],
- ['E', '\u0C86'],
- ['F', '\u0C87'],
- ['R', '\u0C88'],
- ['G', '\u0C89'],
- ['T', '\u0C8A'],
- ['\\+', '\u0C8B'],
- ['Z', '\u0C8E'],
- ['S', '\u0C8F'],
- ['W', '\u0C90'],
- ['~', '\u0C92'],
- ['A', '\u0C93'],
- ['Q', '\u0C94'],
- ['k', '\u0C95'],
- ['K', '\u0C96'],
- ['i', '\u0C97'],
- ['I', '\u0C98'],
- ['U', '\u0C99'],
- [';', '\u0C9A'],
- ['\\:', '\u0C9B'],
- ['p', '\u0C9C'],
- ['P', '\u0C9D'],
- ['\\}', '\u0C9E'],
- ['\'', '', '\u0C9F'],
- ['"', '\u0CA0'],
- ['\\[', '\u0CA1'],
- ['\\{', '\u0CA2'],
- ['C', '\u0CA3'],
- ['l', '\u0CA4'],
- ['L', '\u0CA5'],
- ['o', '\u0CA6'],
- ['O', '\u0CA7'],
- ['v', '\u0CA8'],
- ['h', '\u0CAA'],
- ['H', '\u0CAB'],
- ['y', '\u0CAC'],
- ['Y', '\u0CAD'],
- ['c', '\u0CAE'],
- ['/', '\u0CAF'],
- ['j', '\u0CB0'],
- ['J', '\u0CB1'],
- ['n', '\u0CB2'],
- ['N', '\u0CB3'],
- ['b', '\u0CB5'],
- ['M', '\u0CB6'],
- [',', '\u0CB7'],
- ['m', '\u0CB8'],
- ['u', '\u0CB9'],
- ['\\]', '\u0CBC'],
- ['e', '\u0CBE'],
- ['f', '\u0CBF'],
- ['r', '\u0CC0'],
- ['g', '\u0CC1'],
- ['t', '\u0CC2'],
- ['\\=', '\u0CC3'],
- ['z', '\u0CC6'],
- ['s', '\u0CC7'],
- ['w', '\u0CC8'],
- ['`', '\u0CCA'],
- ['a', '\u0CCB'],
- ['q', '\u0CCC'],
- ['d', '\u0CCD'],
- ['t', '\u0CC2'],
- ['0', '\u0CE6'],
- ['1', '\u0CE7'],
- ['2', '\u0CE8'],
- ['3', '\u0CE9'],
- ['4', '\u0CEA'],
- ['5', '\u0CEB'],
- ['6', '\u0CEC'],
- ['7', '\u0CED'],
- ['8', '\u0CEE'],
- ['9', '\u0CEF'],
- ['\\#', '\u0CCD\u0CB0'],
- ['\\%', '\u0C9C\u0CCD\u0C9E'],
- ['\\^', '\u0CA4\u0CCD\u0CB0'],
- ['\\&', '\u0C95\u0CCD\u0CB0'],
- ['\\(', '\u200D'],
- ['\\)', '\u200C']],
+ [ 'x', '\u0C82' ],
+ [ '_', '\u0C83' ],
+ [ 'D', '\u0C85' ],
+ [ 'E', '\u0C86' ],
+ [ 'F', '\u0C87' ],
+ [ 'R', '\u0C88' ],
+ [ 'G', '\u0C89' ],
+ [ 'T', '\u0C8A' ],
+ [ '\\+', '\u0C8B' ],
+ [ 'Z', '\u0C8E' ],
+ [ 'S', '\u0C8F' ],
+ [ 'W', '\u0C90' ],
+ [ '~', '\u0C92' ],
+ [ 'A', '\u0C93' ],
+ [ 'Q', '\u0C94' ],
+ [ 'k', '\u0C95' ],
+ [ 'K', '\u0C96' ],
+ [ 'i', '\u0C97' ],
+ [ 'I', '\u0C98' ],
+ [ 'U', '\u0C99' ],
+ [ ';', '\u0C9A' ],
+ [ '\\:', '\u0C9B' ],
+ [ 'p', '\u0C9C' ],
+ [ 'P', '\u0C9D' ],
+ [ '\\}', '\u0C9E' ],
+ [ '\'', '', '\u0C9F' ],
+ [ '"', '\u0CA0' ],
+ [ '\\[', '\u0CA1' ],
+ [ '\\{', '\u0CA2' ],
+ [ 'C', '\u0CA3' ],
+ [ 'l', '\u0CA4' ],
+ [ 'L', '\u0CA5' ],
+ [ 'o', '\u0CA6' ],
+ [ 'O', '\u0CA7' ],
+ [ 'v', '\u0CA8' ],
+ [ 'h', '\u0CAA' ],
+ [ 'H', '\u0CAB' ],
+ [ 'y', '\u0CAC' ],
+ [ 'Y', '\u0CAD' ],
+ [ 'c', '\u0CAE' ],
+ [ '/', '\u0CAF' ],
+ [ 'j', '\u0CB0' ],
+ [ 'J', '\u0CB1' ],
+ [ 'n', '\u0CB2' ],
+ [ 'N', '\u0CB3' ],
+ [ 'b', '\u0CB5' ],
+ [ 'M', '\u0CB6' ],
+ [ ',', '\u0CB7' ],
+ [ 'm', '\u0CB8' ],
+ [ 'u', '\u0CB9' ],
+ [ '\\]', '\u0CBC' ],
+ [ 'e', '\u0CBE' ],
+ [ 'f', '\u0CBF' ],
+ [ 'r', '\u0CC0' ],
+ [ 'g', '\u0CC1' ],
+ [ 't', '\u0CC2' ],
+ [ '\\=', '\u0CC3' ],
+ [ 'z', '\u0CC6' ],
+ [ 's', '\u0CC7' ],
+ [ 'w', '\u0CC8' ],
+ [ '`', '\u0CCA' ],
+ [ 'a', '\u0CCB' ],
+ [ 'q', '\u0CCC' ],
+ [ 'd', '\u0CCD' ],
+ [ 't', '\u0CC2' ],
+ [ '0', '\u0CE6' ],
+ [ '1', '\u0CE7' ],
+ [ '2', '\u0CE8' ],
+ [ '3', '\u0CE9' ],
+ [ '4', '\u0CEA' ],
+ [ '5', '\u0CEB' ],
+ [ '6', '\u0CEC' ],
+ [ '7', '\u0CED' ],
+ [ '8', '\u0CEE' ],
+ [ '9', '\u0CEF' ],
+ [ '\\#', '\u0CCD\u0CB0' ],
+ [ '\\%', '\u0C9C\u0CCD\u0C9E' ],
+ [ '\\^', '\u0CA4\u0CCD\u0CB0' ],
+ [ '\\&', '\u0C95\u0CCD\u0CB0' ],
+ [ '\\(', '\u200D' ],
+ [ '\\)', '\u200C' ] ],
patterns_x: [
- ['F', '\uC88C'],
- ['\\>', '\u0CBD'],
- ['\\=', '\u0CC4'],
- ['H', '\u0CDE'],
- ['\\+', '\u0CE0'],
- ['R', '\u0CE1'],
- ['f', '\u0CE2'],
- ['r', '\u0CE3'],
- ['\\>', '\u0CE4'],
- ['\\.', '\u0CE5'],
- ['u', '\u0CF1'],
- ['j', '\u0CF2'],
- ['\\$', '\u20B9']]
+ [ 'F', '\uC88C' ],
+ [ '\\>', '\u0CBD' ],
+ [ '\\=', '\u0CC4' ],
+ [ 'H', '\u0CDE' ],
+ [ '\\+', '\u0CE0' ],
+ [ 'R', '\u0CE1' ],
+ [ 'f', '\u0CE2' ],
+ [ 'r', '\u0CE3' ],
+ [ '\\>', '\u0CE4' ],
+ [ '\\.', '\u0CE5' ],
+ [ 'u', '\u0CF1' ],
+ [ 'j', '\u0CF2' ],
+ [ '\\$', '\u20B9' ] ]
};
$.ime.register( knInscript );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/kn/kn-inscript2.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/kn/kn-inscript2.js
index 5a01dc96..8591b30d 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/kn/kn-inscript2.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/kn/kn-inscript2.js
@@ -10,108 +10,108 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['1', '೧'],
- ['2', '೨'],
- ['\\#', '್ರ'],
- ['3', '೩'],
- ['\\$', 'ರ್'],
- ['4', '೪'],
- ['5', '೫'],
- ['6', '೬'],
- ['7', '೭'],
- ['8', '೮'],
- ['\\(', '('],
- ['9', '೯'],
- ['\\)', ')'],
- ['0', '೦'],
- ['\\_', 'ಃ'],
- ['\\-', '-'],
- ['\\+', 'ಋ'],
- ['\\=', 'ೃ'],
- ['Q', 'ಔ'],
- ['q', 'ೌ'],
- ['W', 'ಐ'],
- ['w', 'ೈ'],
- ['E', 'ಆ'],
- ['e', 'ಾ'],
- ['R', 'ಈ'],
- ['r', 'ೀ'],
- ['T', 'ಊ'],
- ['t', 'ೂ'],
- ['Y', 'ಭ'],
- ['y', 'ಬ'],
- ['U', 'ಙ'],
- ['u', 'ಹ'],
- ['I', 'ಘ'],
- ['i', 'ಗ'],
- ['O', 'ಧ'],
- ['o', 'ದ'],
- ['P', 'ಝ'],
- ['p', 'ಜ'],
- ['\\{', 'ಢ'],
- ['\\[', 'ಡ'],
- ['\\}', 'ಞ'],
- ['\\]', '಼'],
- ['A', 'ಓ'],
- ['a', 'ೋ'],
- ['S', 'ಏ'],
- ['s', 'ೇ'],
- ['D', 'ಅ'],
- ['d', '್'],
- ['F', 'ಇ'],
- ['f', 'ಿ'],
- ['G', 'ಉ'],
- ['g', 'ು'],
- ['H', 'ಫ'],
- ['h', 'ಪ'],
- ['J', 'ಱ'],
- ['j', 'ರ'],
- ['K', 'ಖ'],
- ['k', 'ಕ'],
- ['L', 'ಥ'],
- ['l', 'ತ'],
- [':', 'ಛ'],
- [';', 'ಚ'],
- ['"', 'ಠ'],
- ['\\\'', 'ಟ'],
- ['\\~', 'ಒ'],
- ['`\\', 'ೊ'],
- ['Z', 'ಎ'],
- ['z', 'ೆ'],
- ['x', 'ಂ'],
- ['C', 'ಣ'],
- ['c', 'ಮ'],
- ['v', 'ನ'],
- ['b', 'ವ'],
- ['N', 'ಳ'],
- ['n', 'ಲ'],
- ['M', 'ಶ'],
- ['m', 'ಸ'],
- ['\\<', 'ಷ'],
- [',', ','],
- ['\\>', '।'],
- ['\\.', '.'],
- ['/', 'ಯ'],
- ['\\%', 'ಜ್ಞ'],
- ['\\^', 'ತ್ರ'],
- ['\\&', 'ಕ್ಷ'],
- ['\\*', 'ಶ್ರ']
+ [ '1', '೧' ],
+ [ '2', '೨' ],
+ [ '\\#', '್ರ' ],
+ [ '3', '೩' ],
+ [ '\\$', 'ರ್' ],
+ [ '4', '೪' ],
+ [ '5', '೫' ],
+ [ '6', '೬' ],
+ [ '7', '೭' ],
+ [ '8', '೮' ],
+ [ '\\(', '(' ],
+ [ '9', '೯' ],
+ [ '\\)', ')' ],
+ [ '0', '೦' ],
+ [ '\\_', 'ಃ' ],
+ [ '\\-', '-' ],
+ [ '\\+', 'ಋ' ],
+ [ '\\=', 'ೃ' ],
+ [ 'Q', 'ಔ' ],
+ [ 'q', 'ೌ' ],
+ [ 'W', 'ಐ' ],
+ [ 'w', 'ೈ' ],
+ [ 'E', 'ಆ' ],
+ [ 'e', 'ಾ' ],
+ [ 'R', 'ಈ' ],
+ [ 'r', 'ೀ' ],
+ [ 'T', 'ಊ' ],
+ [ 't', 'ೂ' ],
+ [ 'Y', 'ಭ' ],
+ [ 'y', 'ಬ' ],
+ [ 'U', 'ಙ' ],
+ [ 'u', 'ಹ' ],
+ [ 'I', 'ಘ' ],
+ [ 'i', 'ಗ' ],
+ [ 'O', 'ಧ' ],
+ [ 'o', 'ದ' ],
+ [ 'P', 'ಝ' ],
+ [ 'p', 'ಜ' ],
+ [ '\\{', 'ಢ' ],
+ [ '\\[', 'ಡ' ],
+ [ '\\}', 'ಞ' ],
+ [ '\\]', '಼' ],
+ [ 'A', 'ಓ' ],
+ [ 'a', 'ೋ' ],
+ [ 'S', 'ಏ' ],
+ [ 's', 'ೇ' ],
+ [ 'D', 'ಅ' ],
+ [ 'd', '್' ],
+ [ 'F', 'ಇ' ],
+ [ 'f', 'ಿ' ],
+ [ 'G', 'ಉ' ],
+ [ 'g', 'ು' ],
+ [ 'H', 'ಫ' ],
+ [ 'h', 'ಪ' ],
+ [ 'J', 'ಱ' ],
+ [ 'j', 'ರ' ],
+ [ 'K', 'ಖ' ],
+ [ 'k', 'ಕ' ],
+ [ 'L', 'ಥ' ],
+ [ 'l', 'ತ' ],
+ [ ':', 'ಛ' ],
+ [ ';', 'ಚ' ],
+ [ '"', 'ಠ' ],
+ [ '\\\'', 'ಟ' ],
+ [ '\\~', 'ಒ' ],
+ [ '`\\', 'ೊ' ],
+ [ 'Z', 'ಎ' ],
+ [ 'z', 'ೆ' ],
+ [ 'x', 'ಂ' ],
+ [ 'C', 'ಣ' ],
+ [ 'c', 'ಮ' ],
+ [ 'v', 'ನ' ],
+ [ 'b', 'ವ' ],
+ [ 'N', 'ಳ' ],
+ [ 'n', 'ಲ' ],
+ [ 'M', 'ಶ' ],
+ [ 'm', 'ಸ' ],
+ [ '\\<', 'ಷ' ],
+ [ ',', ',' ],
+ [ '\\>', '।' ],
+ [ '\\.', '.' ],
+ [ '/', 'ಯ' ],
+ [ '\\%', 'ಜ್ಞ' ],
+ [ '\\^', 'ತ್ರ' ],
+ [ '\\&', 'ಕ್ಷ' ],
+ [ '\\*', 'ಶ್ರ' ]
],
patterns_x: [
- ['1', '\u200d'],
- ['2', '\u200c'],
- ['4', '₹'],
- ['\\+', 'ೠ'],
- ['\\=', 'ೄ'],
- ['R', 'ೡ'],
- ['r', 'ೣ'],
- ['u', 'ೱ'],
- ['F','ಌ'],
- ['f', 'ೢ'],
- ['H', 'ೞ'],
- ['j', 'ೲ'],
- ['\\>', 'ಽ'],
- ['\\.', '॥']
+ [ '1', '\u200d' ],
+ [ '2', '\u200c' ],
+ [ '4', '₹' ],
+ [ '\\+', 'ೠ' ],
+ [ '\\=', 'ೄ' ],
+ [ 'R', 'ೡ' ],
+ [ 'r', 'ೣ' ],
+ [ 'u', 'ೱ' ],
+ [ 'F','ಌ' ],
+ [ 'f', 'ೢ' ],
+ [ 'H', 'ೞ' ],
+ [ 'j', 'ೲ' ],
+ [ '\\>', 'ಽ' ],
+ [ '\\.', '॥' ]
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/kn/kn-kgp.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/kn/kn-kgp.js
index 3676c118..c5c5dfd7 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/kn/kn-kgp.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/kn/kn-kgp.js
@@ -13,90 +13,90 @@
contextLength: 4,
maxKeyLength: 2,
patterns: [
- ['([ಕ-ಹೞ]಼?)f', '$1್'],
- ['([ಕ-ಹೞ]಼?್)f', '$1'],
- ['\\\\([A-Za-z\\>_~\\.0-9])', '\\\\', '$1'],
- ['([ಕ-ಹೞ]಼?)A', '$1ಾ'],
- ['([ಕ-ಹೞ]಼?)i', '$1ಿ'],
- ['([ಕ-ಹೞ]಼?)I', '$1ೀ'],
- ['([ಕ-ಹೞ]಼?)u', '$1ು'],
- ['([ಕ-ಹೞ]಼?)U', '$1ೂ'],
- ['([ಕ-ಹೞ]಼?)R', '$1ೃ'],
- ['([ಕ-ಹೞ]಼?)ೃX', '$1ೄ'],
- ['([ಕ-ಹೞ]಼?)e', '$1ೆ'],
- ['([ಕ-ಹೞ]಼?)E', '$1ೇ'],
- ['([ಕ-ಹೞ]಼?)Y', '$1ೈ'],
- ['([ಕ-ಹೞ]಼?)o', '$1ೊ'],
- ['([ಕ-ಹೞ]಼?)O', '$1ೋ'],
- ['([ಕ-ಹೞ]಼?)V', '$1ೌ'],
- ['ಸX', 'ಽ'],
- ['([ಕ-ಹೞ]಼?\u200D)f', '$1್'],
- ['(\u200D)F', '\u200C'], // 0x200C Zero width non-joiner
- ['F', '\u200D'], // 0x200D Zero width joiner
- ['k', 'ಕ'],
- ['K', 'ಖ'],
- ['g', 'ಗ'],
- ['G', 'ಘ'],
- ['Z', 'ಙ'],
- ['c', 'ಚ'],
- ['C', 'ಛ'],
- ['j', 'ಜ'],
- ['ಜX', 'ಜ಼'],
- ['J', 'ಝ'],
- ['z', 'ಞ'],
- ['q', 'ಟ'],
- ['Q', 'ಠ'],
- ['w', 'ಡ'],
- ['W', 'ಢ'],
- ['N', 'ಣ'],
- ['t', 'ತ'],
- ['T', 'ಥ'],
- ['d', 'ದ'],
- ['D', 'ಧ'],
- ['n', 'ನ'],
- ['p', 'ಪ'],
- ['P', 'ಫ'],
- ['ಫX', 'ಫ಼'],
- ['b', 'ಬ'],
- ['B', 'ಭ'],
- ['m', 'ಮ'],
- ['y', 'ಯ'],
- ['r', 'ರ'],
- ['ರX', 'ಱ'],
- ['l', 'ಲ'],
- ['v', 'ವ'],
- ['S', 'ಶ'],
- ['x', 'ಷ'],
- ['s', 'ಸ'],
- ['h', 'ಹ'],
- ['L', 'ಳ'],
- ['ಳX', 'ೞ'],
- ['a', 'ಅ'],
- ['A', 'ಆ'],
- ['i', 'ಇ'],
- ['I', 'ಈ'],
- ['u', 'ಉ'],
- ['U', 'ಊ'],
- ['R', 'ಋ'],
- ['ಋX', 'ೠ'],
- ['e', 'ಎ'],
- ['E', 'ಏ'],
- ['Y', 'ಐ'],
- ['o', 'ಒ'],
- ['O', 'ಓ'],
- ['V', 'ಔ'],
- ['M', 'ಂ'],
- ['H', 'ಃ'],
- ['0', '೦'],
- ['1', '೧'],
- ['2', '೨'],
- ['3', '೩'],
- ['4', '೪'],
- ['5', '೫'],
- ['6', '೬'],
- ['7', '೭'],
- ['8', '೮'],
- ['9', '೯']
+ [ '([ಕ-ಹೞ]಼?)f', '$1್' ],
+ [ '([ಕ-ಹೞ]಼?್)f', '$1' ],
+ [ '\\\\([A-Za-z\\>_~\\.0-9])', '\\\\', '$1' ],
+ [ '([ಕ-ಹೞ]಼?)A', '$1ಾ' ],
+ [ '([ಕ-ಹೞ]಼?)i', '$1ಿ' ],
+ [ '([ಕ-ಹೞ]಼?)I', '$1ೀ' ],
+ [ '([ಕ-ಹೞ]಼?)u', '$1ು' ],
+ [ '([ಕ-ಹೞ]಼?)U', '$1ೂ' ],
+ [ '([ಕ-ಹೞ]಼?)R', '$1ೃ' ],
+ [ '([ಕ-ಹೞ]಼?)ೃX', '$1ೄ' ],
+ [ '([ಕ-ಹೞ]಼?)e', '$1ೆ' ],
+ [ '([ಕ-ಹೞ]಼?)E', '$1ೇ' ],
+ [ '([ಕ-ಹೞ]಼?)Y', '$1ೈ' ],
+ [ '([ಕ-ಹೞ]಼?)o', '$1ೊ' ],
+ [ '([ಕ-ಹೞ]಼?)O', '$1ೋ' ],
+ [ '([ಕ-ಹೞ]಼?)V', '$1ೌ' ],
+ [ 'ಸX', 'ಽ' ],
+ [ '([ಕ-ಹೞ]಼?\u200D)f', '$1್' ],
+ [ '(\u200D)F', '\u200C' ], // 0x200C Zero width non-joiner
+ [ 'F', '\u200D' ], // 0x200D Zero width joiner
+ [ 'k', 'ಕ' ],
+ [ 'K', 'ಖ' ],
+ [ 'g', 'ಗ' ],
+ [ 'G', 'ಘ' ],
+ [ 'Z', 'ಙ' ],
+ [ 'c', 'ಚ' ],
+ [ 'C', 'ಛ' ],
+ [ 'j', 'ಜ' ],
+ [ 'ಜX', 'ಜ಼' ],
+ [ 'J', 'ಝ' ],
+ [ 'z', 'ಞ' ],
+ [ 'q', 'ಟ' ],
+ [ 'Q', 'ಠ' ],
+ [ 'w', 'ಡ' ],
+ [ 'W', 'ಢ' ],
+ [ 'N', 'ಣ' ],
+ [ 't', 'ತ' ],
+ [ 'T', 'ಥ' ],
+ [ 'd', 'ದ' ],
+ [ 'D', 'ಧ' ],
+ [ 'n', 'ನ' ],
+ [ 'p', 'ಪ' ],
+ [ 'P', 'ಫ' ],
+ [ 'ಫX', 'ಫ಼' ],
+ [ 'b', 'ಬ' ],
+ [ 'B', 'ಭ' ],
+ [ 'm', 'ಮ' ],
+ [ 'y', 'ಯ' ],
+ [ 'r', 'ರ' ],
+ [ 'ರX', 'ಱ' ],
+ [ 'l', 'ಲ' ],
+ [ 'v', 'ವ' ],
+ [ 'S', 'ಶ' ],
+ [ 'x', 'ಷ' ],
+ [ 's', 'ಸ' ],
+ [ 'h', 'ಹ' ],
+ [ 'L', 'ಳ' ],
+ [ 'ಳX', 'ೞ' ],
+ [ 'a', 'ಅ' ],
+ [ 'A', 'ಆ' ],
+ [ 'i', 'ಇ' ],
+ [ 'I', 'ಈ' ],
+ [ 'u', 'ಉ' ],
+ [ 'U', 'ಊ' ],
+ [ 'R', 'ಋ' ],
+ [ 'ಋX', 'ೠ' ],
+ [ 'e', 'ಎ' ],
+ [ 'E', 'ಏ' ],
+ [ 'Y', 'ಐ' ],
+ [ 'o', 'ಒ' ],
+ [ 'O', 'ಓ' ],
+ [ 'V', 'ಔ' ],
+ [ 'M', 'ಂ' ],
+ [ 'H', 'ಃ' ],
+ [ '0', '೦' ],
+ [ '1', '೧' ],
+ [ '2', '೨' ],
+ [ '3', '೩' ],
+ [ '4', '೪' ],
+ [ '5', '೫' ],
+ [ '6', '೬' ],
+ [ '7', '೭' ],
+ [ '8', '೮' ],
+ [ '9', '೯' ]
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/kn/kn-transliteration.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/kn/kn-transliteration.js
index ced94338..a8374eac 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/kn/kn-transliteration.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/kn/kn-transliteration.js
@@ -13,141 +13,141 @@
contextLength: 5,
maxKeyLength: 3,
patterns: [
- ['ಕ್h','c','ಚ್'],
- ['\\\\([A-Za-z\\>_~\\.0-9])','\\\\','$1'],
+ [ 'ಕ್h','c','ಚ್' ],
+ [ '\\\\([A-Za-z\\>_~\\.0-9])','\\\\','$1' ],
// For users accustomed to Baraha
- ['ಜ್್j', 'ಜ್ಞ್'],
- ['([ಕ-ಹೞ]಼?)್a', '$1'],
- ['([ಕ-ಹೞ]಼?)್A', '$1ಾ'],
- ['([ಕ-ಹೞ]಼?)a', '$1ಾ'],
- ['([ಕ-ಹೞ]಼?)್i', '$1ಿ'],
- ['([ಕ-ಹೞ]಼?)(್I|ಿi|ೆe)', '$1ೀ'],
- ['([ಕ-ಹೞ]಼?)್u', '$1ು'],
- ['([ಕ-ಹೞ]಼?)(ುu|್U|ೊo)', '$1ೂ'],
- ['([ಕ-ಹೞ]಼?)್R', '$1ೃ'],
- ['([ಕ-ಹೞ]಼?)ೃR', '$1ೄ'],
- ['([ಕ-ಹೞ]಼?)್e', '$1ೆ'],
- ['([ಕ-ಹೞ]಼?)್E', '$1ೇ'],
- ['([ಕ-ಹೞ]಼?)i', '$1ೈ'],
- ['([ಕ-ಹೞ]಼?)್o', '$1ೊ'],
- ['([ಕ-ಹೞ]಼?)್O', '$1ೋ'],
- ['([ಕ-ಹೞ]಼?)u', '$1ೌ'],
- ['([ಕ-ಹೞ])್\\`', '$1़್'],
- ['([ಕ-ಹೞ]಼?)್W', '$1ೌ'],
- ['([ಕ-ಹೞ]಼?)್Y', '$1ೈ'],
+ [ 'ಜ್್j', 'ಜ್ಞ್' ],
+ [ '([ಕ-ಹೞ]಼?)್a', '$1' ],
+ [ '([ಕ-ಹೞ]಼?)್A', '$1ಾ' ],
+ [ '([ಕ-ಹೞ]಼?)a', '$1ಾ' ],
+ [ '([ಕ-ಹೞ]಼?)್i', '$1ಿ' ],
+ [ '([ಕ-ಹೞ]಼?)(್I|ಿi|ೆe)', '$1ೀ' ],
+ [ '([ಕ-ಹೞ]಼?)್u', '$1ು' ],
+ [ '([ಕ-ಹೞ]಼?)(ುu|್U|ೊo)', '$1ೂ' ],
+ [ '([ಕ-ಹೞ]಼?)್R', '$1ೃ' ],
+ [ '([ಕ-ಹೞ]಼?)ೃR', '$1ೄ' ],
+ [ '([ಕ-ಹೞ]಼?)್e', '$1ೆ' ],
+ [ '([ಕ-ಹೞ]಼?)್E', '$1ೇ' ],
+ [ '([ಕ-ಹೞ]಼?)i', '$1ೈ' ],
+ [ '([ಕ-ಹೞ]಼?)್o', '$1ೊ' ],
+ [ '([ಕ-ಹೞ]಼?)್O', '$1ೋ' ],
+ [ '([ಕ-ಹೞ]಼?)u', '$1ೌ' ],
+ [ '([ಕ-ಹೞ])್\\`', '$1़್' ],
+ [ '([ಕ-ಹೞ]಼?)್W', '$1ೌ' ],
+ [ '([ಕ-ಹೞ]಼?)್Y', '$1ೈ' ],
- ['ಅa', 'ಆ'],
- ['(ಒo|ಉu)', 'ಊ'],
- ['ಅi', 'ಐ'],
- ['(ಇi|ಎe)', 'ಈ'],
- ['ಅu', 'ಔ'],
- ['ಋR', 'ೠ'],
- ['ಓ~M', 'ॐ'],
+ [ 'ಅa', 'ಆ' ],
+ [ '(ಒo|ಉu)', 'ಊ' ],
+ [ 'ಅi', 'ಐ' ],
+ [ '(ಇi|ಎe)', 'ಈ' ],
+ [ 'ಅu', 'ಔ' ],
+ [ 'ಋR', 'ೠ' ],
+ [ 'ಓ~M', 'ॐ' ],
- ['~l', 'ೞ್'],
- ['~h', 'ಹ್'],
- ['~r', 'ಱ್'],
- ['q', 'ಱ್'],
- ['Q', 'ೞ್'],
- ['ಕ್h', 'ಖ್'],
- ['ಗ್h', 'ಘ್'],
- ['~g', 'ಙ್'],
- ['~N', 'ಙ್'],
- ['ಚ್h', 'ಛ್'],
- ['ಜ್h', 'ಝ್'],
- ['~j', 'ಞ್'],
- ['~n', 'ಞ್'],
- ['ಟ್h', 'ಠ್'],
- ['ಡ್h', 'ಢ್'],
- ['ತ್h', 'ಥ್'],
- ['ದ್h', 'ಧ್'],
- ['ಪ್h', 'ಫ್'],
- ['ಬ್h', 'ಭ್'],
- ['ಸ್h', 'ಶ್'],
- ['ಶ್h', 'ಷ್'],
+ [ '~l', 'ೞ್' ],
+ [ '~h', 'ಹ್' ],
+ [ '~r', 'ಱ್' ],
+ [ 'q', 'ಱ್' ],
+ [ 'Q', 'ೞ್' ],
+ [ 'ಕ್h', 'ಖ್' ],
+ [ 'ಗ್h', 'ಘ್' ],
+ [ '~g', 'ಙ್' ],
+ [ '~N', 'ಙ್' ],
+ [ 'ಚ್h', 'ಛ್' ],
+ [ 'ಜ್h', 'ಝ್' ],
+ [ '~j', 'ಞ್' ],
+ [ '~n', 'ಞ್' ],
+ [ 'ಟ್h', 'ಠ್' ],
+ [ 'ಡ್h', 'ಢ್' ],
+ [ 'ತ್h', 'ಥ್' ],
+ [ 'ದ್h', 'ಧ್' ],
+ [ 'ಪ್h', 'ಫ್' ],
+ [ 'ಬ್h', 'ಭ್' ],
+ [ 'ಸ್h', 'ಶ್' ],
+ [ 'ಶ್h', 'ಷ್' ],
- ['ಋa', 'ರ'],
- ['ಋA', 'ರಾ'],
- ['ಋi', 'ರಿ'],
- ['ಋI', 'ರೀ'],
- ['ಋu', 'ರು'],
- ['ಋU', 'ರೂ'],
- ['ಋe', 'ರೆ'],
- ['ಋE', 'ರೇ'],
+ [ 'ಋa', 'ರ' ],
+ [ 'ಋA', 'ರಾ' ],
+ [ 'ಋi', 'ರಿ' ],
+ [ 'ಋI', 'ರೀ' ],
+ [ 'ಋu', 'ರು' ],
+ [ 'ಋU', 'ರೂ' ],
+ [ 'ಋe', 'ರೆ' ],
+ [ 'ಋE', 'ರೇ' ],
- ['X', '\u200C'], // 0x200C Zero width non-joiner
- ['x', '\u200D'], // 0x200D Zero width joiner
+ [ 'X', '\u200C' ], // 0x200C Zero width non-joiner
+ [ 'x', '\u200D' ], // 0x200D Zero width joiner
- ['([ಕ-ಹೞ]಼?)ೃa', '$1್ರ'],
- ['([ಕ-ಹೞ]಼?)ೃA', '$1್ರಾ'],
- ['([ಕ-ಹೞ]಼?)ೃi', '$1್ರಿ'],
- ['([ಕ-ಹೞ]಼?)ೃI', '$1್ರೀ'],
- ['([ಕ-ಹೞ]಼?)ೃu', '$1್ರು'],
- ['([ಕ-ಹೞ]಼?)ೃU', '$1್ರೂ'],
- ['([ಕ-ಹೞ]಼?)ೃe', '$1್ರೆ'],
- ['([ಕ-ಹೞ]಼?)ೃE', '$1್ರೇ'],
- ['([ಕ-ಹೞ]಼?)ೃo', '$1್ರೊ'],
- ['([ಕ-ಹೞ]಼?)ೃO', '$1್ರೋ'],
- ['([ಕ-ಹೞ]಼?)ೃ\\~', '$1್ರ್'],
+ [ '([ಕ-ಹೞ]಼?)ೃa', '$1್ರ' ],
+ [ '([ಕ-ಹೞ]಼?)ೃA', '$1್ರಾ' ],
+ [ '([ಕ-ಹೞ]಼?)ೃi', '$1್ರಿ' ],
+ [ '([ಕ-ಹೞ]಼?)ೃI', '$1್ರೀ' ],
+ [ '([ಕ-ಹೞ]಼?)ೃu', '$1್ರು' ],
+ [ '([ಕ-ಹೞ]಼?)ೃU', '$1್ರೂ' ],
+ [ '([ಕ-ಹೞ]಼?)ೃe', '$1್ರೆ' ],
+ [ '([ಕ-ಹೞ]಼?)ೃE', '$1್ರೇ' ],
+ [ '([ಕ-ಹೞ]಼?)ೃo', '$1್ರೊ' ],
+ [ '([ಕ-ಹೞ]಼?)ೃO', '$1್ರೋ' ],
+ [ '([ಕ-ಹೞ]಼?)ೃ\\~', '$1್ರ್' ],
- ['।\\.', '॥'],
+ [ '।\\.', '॥' ],
- ['a', 'ಅ'],
- ['b', 'ಬ್'],
- ['c', 'ಚ್'],
- ['d', 'ದ್'],
- ['e', 'ಎ'],
- ['g', 'ಗ್'],
- ['h', 'ಹ್'],
- ['i', 'ಇ'],
- ['j', 'ಜ್'],
- ['k', 'ಕ್'],
- ['l', 'ಲ್'],
- ['m', 'ಮ್'],
- ['n', 'ನ್'],
- ['o', 'ಒ'],
- ['p', 'ಪ್'],
- ['r', 'ರ್'],
- ['s', 'ಸ್'],
- ['t', 'ತ್'],
- ['u', 'ಉ'],
- ['(v|w)', 'ವ್'],
- ['y', 'ಯ್'],
- ['A', 'ಆ'],
- ['B', 'ಭ್'],
- ['C', 'ಛ್'],
- ['D', 'ಡ್'],
- ['E', 'ಏ'],
- ['G', 'ಘ್'],
- ['H', 'ಃ'],
- ['I', 'ಈ'],
- ['J', 'ಝ್'],
- ['K', 'ಖ್'],
- ['L', 'ಳ್'],
- ['M', 'ಂ'],
- ['N', 'ಣ್'],
- ['O', 'ಓ'],
- ['P', 'ಫ್'],
- ['R', 'ಋ'],
- ['S', 'ಶ್'],
- ['T', 'ಟ್'],
- ['U', 'ಊ'],
- ['V', 'ವ್'],
- ['W','','ಔ'],
- ['Y', 'ಐ'],
- ['(z|Z)', 'ಜ಼್'],
- ['(f|F)', 'ಫ಼್'],
- ['0', '೦'],
- ['1', '೧'],
- ['2', '೨'],
- ['3', '೩'],
- ['4', '೪'],
- ['5', '೫'],
- ['6', '೬'],
- ['7', '೭'],
- ['8', '೮'],
- ['9', '೯'],
- ['//', 'ಽ']]
+ [ 'a', 'ಅ' ],
+ [ 'b', 'ಬ್' ],
+ [ 'c', 'ಚ್' ],
+ [ 'd', 'ದ್' ],
+ [ 'e', 'ಎ' ],
+ [ 'g', 'ಗ್' ],
+ [ 'h', 'ಹ್' ],
+ [ 'i', 'ಇ' ],
+ [ 'j', 'ಜ್' ],
+ [ 'k', 'ಕ್' ],
+ [ 'l', 'ಲ್' ],
+ [ 'm', 'ಮ್' ],
+ [ 'n', 'ನ್' ],
+ [ 'o', 'ಒ' ],
+ [ 'p', 'ಪ್' ],
+ [ 'r', 'ರ್' ],
+ [ 's', 'ಸ್' ],
+ [ 't', 'ತ್' ],
+ [ 'u', 'ಉ' ],
+ [ '(v|w)', 'ವ್' ],
+ [ 'y', 'ಯ್' ],
+ [ 'A', 'ಆ' ],
+ [ 'B', 'ಭ್' ],
+ [ 'C', 'ಛ್' ],
+ [ 'D', 'ಡ್' ],
+ [ 'E', 'ಏ' ],
+ [ 'G', 'ಘ್' ],
+ [ 'H', 'ಃ' ],
+ [ 'I', 'ಈ' ],
+ [ 'J', 'ಝ್' ],
+ [ 'K', 'ಖ್' ],
+ [ 'L', 'ಳ್' ],
+ [ 'M', 'ಂ' ],
+ [ 'N', 'ಣ್' ],
+ [ 'O', 'ಓ' ],
+ [ 'P', 'ಫ್' ],
+ [ 'R', 'ಋ' ],
+ [ 'S', 'ಶ್' ],
+ [ 'T', 'ಟ್' ],
+ [ 'U', 'ಊ' ],
+ [ 'V', 'ವ್' ],
+ [ 'W','','ಔ' ],
+ [ 'Y', 'ಐ' ],
+ [ '(z|Z)', 'ಜ಼್' ],
+ [ '(f|F)', 'ಫ಼್' ],
+ [ '0', '೦' ],
+ [ '1', '೧' ],
+ [ '2', '೨' ],
+ [ '3', '೩' ],
+ [ '4', '೪' ],
+ [ '5', '೫' ],
+ [ '6', '೬' ],
+ [ '7', '೭' ],
+ [ '8', '೮' ],
+ [ '9', '೯' ],
+ [ '//', 'ಽ' ] ]
};
$.ime.register( knTransliteration );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ks/ks-inscript.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ks/ks-inscript.js
index 06bcffe6..49fc1708 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ks/ks-inscript.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ks/ks-inscript.js
@@ -12,116 +12,116 @@
contextLength: 1,
maxKeyLength: 3,
patterns: [
- ['्d', '्\u200c'],
- ['ग_', 'ॻ'],
- ['ज_', 'ॼ'],
- ['ड_', 'ॾ'],
- ['ब_', 'ॿ'],
- ['\\!', 'ऍ'],
- ['1', '१'],
- ['\\@', 'ॅ'],
- ['2', '२'],
- ['\\#', '#'],
- ['3', '३'],
- ['\\$', '$'],
- ['4', '४'],
- ['5', '५'],
- ['6', '६'],
- ['7', '७'],
- ['8', '८'],
- ['\\(', '('],
- ['9', '९'],
- ['\\)', ')'],
- ['0', '०'],
- ['\\_', 'ः'],
- ['\\-', '-'],
- ['\\+', 'ऋ'],
- ['\\=', 'ृ'],
- ['Q', 'औ'],
- ['q', 'ौ'],
- ['W', 'ऐ'],
- ['w', 'ै'],
- ['E', 'आ'],
- ['e', 'ा'],
- ['R', 'ई'],
- ['r', 'ी'],
- ['T', 'ऊ'],
- ['t', 'ू'],
- ['Y', 'भ'],
- ['y', 'ब'],
- ['U', 'ङ'],
- ['u', 'ह'],
- ['I', 'घ'],
- ['i', 'ग'],
- ['O', 'ध'],
- ['o', 'द'],
- ['P', 'झ'],
- ['p', 'ज'],
- ['\\{', 'ढ'],
- ['\\[', 'ड'],
- ['\\}', 'ञ'],
- ['\\]', '़'],
- ['A', 'ओ'],
- ['a', 'ो'],
- ['S', 'ए'],
- ['s', 'े'],
- ['D', 'अ'],
- ['d', '्'],
- ['F', 'इ'],
- ['f', 'ि'],
- ['H', 'फ'],
- ['h', 'प'],
- ['J', 'ऱ'],
- ['j', 'र'],
- ['K', 'ख'],
- ['k', 'क'],
- ['L', 'थ'],
- ['l', 'त'],
- [':', 'छ'],
- [';', 'च'],
- ['\"', 'ठ'],
- ['\'', 'ट'],
- ['\\|', 'ऑ'],
- ['\\\\', 'ॉ'],
- ['\\~', 'ऒ'],
- ['\\`', 'ॊ'],
- ['Z', 'ऎ'],
- ['z', 'ॆ'],
- ['X', 'ँ'],
- ['x', 'ं'],
- ['C', 'ण'],
- ['c', 'म'],
- ['V', 'ऩ'],
- ['v', 'न'],
- ['B', 'ऴ'],
- ['b', 'व'],
- ['N', 'ळ'],
- ['n', 'ल'],
- ['M', 'श'],
- ['m', 'स'],
- ['\\<', 'ष'],
- [',', ','],
- ['\\>', '।'],
- ['\\.', '.'],
- ['\\?', 'य़'],
- ['/', 'य'],
- ['\\%', 'ज्ञ'],
- ['\\^', 'त्र'],
- ['\\&', 'क्ष'],
- ['\\*', 'श्र']
+ [ '्d', '्\u200c' ],
+ [ 'ग_', 'ॻ' ],
+ [ 'ज_', 'ॼ' ],
+ [ 'ड_', 'ॾ' ],
+ [ 'ब_', 'ॿ' ],
+ [ '\\!', 'ऍ' ],
+ [ '1', '१' ],
+ [ '\\@', 'ॅ' ],
+ [ '2', '२' ],
+ [ '\\#', '#' ],
+ [ '3', '३' ],
+ [ '\\$', '$' ],
+ [ '4', '४' ],
+ [ '5', '५' ],
+ [ '6', '६' ],
+ [ '7', '७' ],
+ [ '8', '८' ],
+ [ '\\(', '(' ],
+ [ '9', '९' ],
+ [ '\\)', ')' ],
+ [ '0', '०' ],
+ [ '\\_', 'ः' ],
+ [ '\\-', '-' ],
+ [ '\\+', 'ऋ' ],
+ [ '\\=', 'ृ' ],
+ [ 'Q', 'औ' ],
+ [ 'q', 'ौ' ],
+ [ 'W', 'ऐ' ],
+ [ 'w', 'ै' ],
+ [ 'E', 'आ' ],
+ [ 'e', 'ा' ],
+ [ 'R', 'ई' ],
+ [ 'r', 'ी' ],
+ [ 'T', 'ऊ' ],
+ [ 't', 'ू' ],
+ [ 'Y', 'भ' ],
+ [ 'y', 'ब' ],
+ [ 'U', 'ङ' ],
+ [ 'u', 'ह' ],
+ [ 'I', 'घ' ],
+ [ 'i', 'ग' ],
+ [ 'O', 'ध' ],
+ [ 'o', 'द' ],
+ [ 'P', 'झ' ],
+ [ 'p', 'ज' ],
+ [ '\\{', 'ढ' ],
+ [ '\\[', 'ड' ],
+ [ '\\}', 'ञ' ],
+ [ '\\]', '़' ],
+ [ 'A', 'ओ' ],
+ [ 'a', 'ो' ],
+ [ 'S', 'ए' ],
+ [ 's', 'े' ],
+ [ 'D', 'अ' ],
+ [ 'd', '्' ],
+ [ 'F', 'इ' ],
+ [ 'f', 'ि' ],
+ [ 'H', 'फ' ],
+ [ 'h', 'प' ],
+ [ 'J', 'ऱ' ],
+ [ 'j', 'र' ],
+ [ 'K', 'ख' ],
+ [ 'k', 'क' ],
+ [ 'L', 'थ' ],
+ [ 'l', 'त' ],
+ [ ':', 'छ' ],
+ [ ';', 'च' ],
+ [ '\"', 'ठ' ],
+ [ '\'', 'ट' ],
+ [ '\\|', 'ऑ' ],
+ [ '\\\\', 'ॉ' ],
+ [ '\\~', 'ऒ' ],
+ [ '\\`', 'ॊ' ],
+ [ 'Z', 'ऎ' ],
+ [ 'z', 'ॆ' ],
+ [ 'X', 'ँ' ],
+ [ 'x', 'ं' ],
+ [ 'C', 'ण' ],
+ [ 'c', 'म' ],
+ [ 'V', 'ऩ' ],
+ [ 'v', 'न' ],
+ [ 'B', 'ऴ' ],
+ [ 'b', 'व' ],
+ [ 'N', 'ळ' ],
+ [ 'n', 'ल' ],
+ [ 'M', 'श' ],
+ [ 'm', 'स' ],
+ [ '\\<', 'ष' ],
+ [ ',', ',' ],
+ [ '\\>', '।' ],
+ [ '\\.', '.' ],
+ [ '\\?', 'य़' ],
+ [ '/', 'य' ],
+ [ '\\%', 'ज्ञ' ],
+ [ '\\^', 'त्र' ],
+ [ '\\&', 'क्ष' ],
+ [ '\\*', 'श्र' ]
],
patterns_x: [
- ['4', '₹'],
- ['Q', 'ॵ'],
- ['q', 'ॏ' ],
- ['T', 'ॷ'],
- ['t', 'ॗ'],
- ['A', 'ॴ'],
- ['a', 'ऻ'],
- ['G', 'ॶ'],
- ['g', 'ॖ'],
- ['Z', 'ॳ'],
- ['z', 'ऺ']
+ [ '4', '₹' ],
+ [ 'Q', 'ॵ' ],
+ [ 'q', 'ॏ' ],
+ [ 'T', 'ॷ' ],
+ [ 't', 'ॗ' ],
+ [ 'A', 'ॴ' ],
+ [ 'a', 'ऻ' ],
+ [ 'G', 'ॶ' ],
+ [ 'g', 'ॖ' ],
+ [ 'Z', 'ॳ' ],
+ [ 'z', 'ऺ' ]
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ks/ks-kbd.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ks/ks-kbd.js
index 4f01b12a..96b60bfa 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ks/ks-kbd.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ks/ks-kbd.js
@@ -10,101 +10,101 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['\\~', 'ٓ'],
- ['\\!', '!'],
- ['1', '۱'],
- ['\\@', '@'],
- ['2', '۲'],
- ['\\#', '#'],
- ['3', '۳'],
- ['\\$', '$'],
- ['4', '۴'],
- ['5', '۵'],
- ['6', '۶'],
- ['7', '۷'],
- ['8', '۸'],
- ['\\(', ')'],
- ['9', '۹'],
- ['\\)', '('],
- ['0', '۰'],
- ['\\_', 'ّ'],
- ['\\-', '-'],
- ['\\+', '+'],
- ['\\=', '='],
- ['Q', 'ﷺ'],
- ['q', 'ق'],
- ['W', 'ؤ'],
- ['w', 'و'],
- ['E', 'ئ'],
- ['e', 'ع'],
- ['R', 'ڑ'],
- ['r', 'ر'],
- ['T', 'ٹ'],
- ['t', 'ت'],
- ['Y', '\u0601'],
- ['y', 'ے'],
- ['U', '،'],
- ['u', 'ء'],
- ['I', 'ۆ'],
- ['i', 'ی'],
- ['O', 'ۃ'],
- ['o', 'ہ'],
- ['P', 'إ'],
- ['p', 'پ'],
- ['\\{', 'ٰ'],
- ['\\[', ']'],
- ['\\}', 'ٰ'],
- ['\\]', '['],
- ['A', 'آ'],
- ['a', 'ا'],
- ['S', 'ش'],
- ['s', 'س'],
- ['D', 'ڈ'],
- ['d', 'د'],
- ['F', 'ُ'],
- ['f', 'ف'],
- ['G', 'غ'],
- ['g', 'گ'],
- ['H', 'ح'],
- ['h', 'ھ'],
- ['J', 'ژ'],
- ['j', 'ج'],
- ['K', 'خ'],
- ['k', 'ک'],
- ['L', 'ؓ'],
- ['l', 'ل'],
- [':', ':'],
- [';', '؛'],
- ['\"', '\"'],
- ['\'', 'ٰ'],
- ['\\|', 'أ'],
- ['\\\\', '؎'],
- ['\\~', 'ً'],
- ['`', 'ٍ'],
- ['Z', 'ذ'],
- ['z', 'ز'],
- ['X', 'ض'],
- ['x', 'ص'],
- ['C', 'ث'],
- ['c', 'چ'],
- ['V', 'ظ'],
- ['v', 'ط'],
- ['B', 'أ'],
- ['b', 'ب'],
- ['N', 'ں'],
- ['n', 'ن'],
- ['M', 'ٔ'],
- ['m', 'م'],
- ['\\>', 'َ'],
- [',', '،'],
- ['\\<', 'ِ'],
- ['\\.', '۔'],
- ['\\?', '؟'],
- ['/', '/'],
- ['\\%', '%'],
- ['\\^', '^'],
- ['\\&', '&'],
- ['\\*', '*']
+ [ '\\~', 'ٓ' ],
+ [ '\\!', '!' ],
+ [ '1', '۱' ],
+ [ '\\@', '@' ],
+ [ '2', '۲' ],
+ [ '\\#', '#' ],
+ [ '3', '۳' ],
+ [ '\\$', '$' ],
+ [ '4', '۴' ],
+ [ '5', '۵' ],
+ [ '6', '۶' ],
+ [ '7', '۷' ],
+ [ '8', '۸' ],
+ [ '\\(', ')' ],
+ [ '9', '۹' ],
+ [ '\\)', '(' ],
+ [ '0', '۰' ],
+ [ '\\_', 'ّ' ],
+ [ '\\-', '-' ],
+ [ '\\+', '+' ],
+ [ '\\=', '=' ],
+ [ 'Q', 'ﷺ' ],
+ [ 'q', 'ق' ],
+ [ 'W', 'ؤ' ],
+ [ 'w', 'و' ],
+ [ 'E', 'ئ' ],
+ [ 'e', 'ع' ],
+ [ 'R', 'ڑ' ],
+ [ 'r', 'ر' ],
+ [ 'T', 'ٹ' ],
+ [ 't', 'ت' ],
+ [ 'Y', '\u0601' ],
+ [ 'y', 'ے' ],
+ [ 'U', '،' ],
+ [ 'u', 'ء' ],
+ [ 'I', 'ۆ' ],
+ [ 'i', 'ی' ],
+ [ 'O', 'ۃ' ],
+ [ 'o', 'ہ' ],
+ [ 'P', 'إ' ],
+ [ 'p', 'پ' ],
+ [ '\\{', 'ٰ' ],
+ [ '\\[', ']' ],
+ [ '\\}', 'ٰ' ],
+ [ '\\]', '[' ],
+ [ 'A', 'آ' ],
+ [ 'a', 'ا' ],
+ [ 'S', 'ش' ],
+ [ 's', 'س' ],
+ [ 'D', 'ڈ' ],
+ [ 'd', 'د' ],
+ [ 'F', 'ُ' ],
+ [ 'f', 'ف' ],
+ [ 'G', 'غ' ],
+ [ 'g', 'گ' ],
+ [ 'H', 'ح' ],
+ [ 'h', 'ھ' ],
+ [ 'J', 'ژ' ],
+ [ 'j', 'ج' ],
+ [ 'K', 'خ' ],
+ [ 'k', 'ک' ],
+ [ 'L', 'ؓ' ],
+ [ 'l', 'ل' ],
+ [ ':', ':' ],
+ [ ';', '؛' ],
+ [ '\"', '\"' ],
+ [ '\'', 'ٰ' ],
+ [ '\\|', 'أ' ],
+ [ '\\\\', '؎' ],
+ [ '\\~', 'ً' ],
+ [ '`', 'ٍ' ],
+ [ 'Z', 'ذ' ],
+ [ 'z', 'ز' ],
+ [ 'X', 'ض' ],
+ [ 'x', 'ص' ],
+ [ 'C', 'ث' ],
+ [ 'c', 'چ' ],
+ [ 'V', 'ظ' ],
+ [ 'v', 'ط' ],
+ [ 'B', 'أ' ],
+ [ 'b', 'ب' ],
+ [ 'N', 'ں' ],
+ [ 'n', 'ن' ],
+ [ 'M', 'ٔ' ],
+ [ 'm', 'م' ],
+ [ '\\>', 'َ' ],
+ [ ',', '،' ],
+ [ '\\<', 'ِ' ],
+ [ '\\.', '۔' ],
+ [ '\\?', '؟' ],
+ [ '/', '/' ],
+ [ '\\%', '%' ],
+ [ '\\^', '^' ],
+ [ '\\&', '&' ],
+ [ '\\*', '*' ]
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ku/ku-h.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ku/ku-h.js
index 2757885c..7c649436 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ku/ku-h.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ku/ku-h.js
@@ -12,35 +12,35 @@
version: '1.0',
contextLength: 1,
patterns: [
- ['çh', 'h', 'ch'],
- ['şh', 'h', 'sh'],
- ['ḧh', 'h', 'hh'],
- ['ẍh', 'h', 'xh'],
- ['êe', 'e', 'ee'],
- ['îi', 'i', 'ii'],
- ['ûu', 'u', 'uu'],
- ['Ç(H|h)', '(H|h)', 'C$1'],
- ['Ş(H|h)', '(H|h)', 'S$1'],
- ['Ḧ(H|h)', '(H|h)', 'H$1'],
- ['Ẍ(H|h)', '(H|h)', 'X$1'],
- ['Ê(E|e)', '(E|e)', 'E$1'],
- ['Î(I|i)', '(I|i)', 'I$1'],
- ['Û(U|u)', '(U|u)', 'U$1'],
+ [ 'çh', 'h', 'ch' ],
+ [ 'şh', 'h', 'sh' ],
+ [ 'ḧh', 'h', 'hh' ],
+ [ 'ẍh', 'h', 'xh' ],
+ [ 'êe', 'e', 'ee' ],
+ [ 'îi', 'i', 'ii' ],
+ [ 'ûu', 'u', 'uu' ],
+ [ 'Ç(H|h)', '(H|h)', 'C$1' ],
+ [ 'Ş(H|h)', '(H|h)', 'S$1' ],
+ [ 'Ḧ(H|h)', '(H|h)', 'H$1' ],
+ [ 'Ẍ(H|h)', '(H|h)', 'X$1' ],
+ [ 'Ê(E|e)', '(E|e)', 'E$1' ],
+ [ 'Î(I|i)', '(I|i)', 'I$1' ],
+ [ 'Û(U|u)', '(U|u)', 'U$1' ],
- ['ch', 'ç'],
- ['sh', 'ş'],
- ['hh', 'ḧ'],
- ['xh', 'ẍ'],
- ['ee', 'ê'],
- ['ii', 'î'],
- ['uu', 'û'],
- ['C(H|h)', 'Ç'],
- ['S(H|h)', 'Ş'],
- ['H(H|h)', 'Ḧ'],
- ['X(H|h)', 'Ẍ'],
- ['E(E|e)', 'Ê'],
- ['I(I|i)', 'Î'],
- ['U(U|u)', 'Û']]
+ [ 'ch', 'ç' ],
+ [ 'sh', 'ş' ],
+ [ 'hh', 'ḧ' ],
+ [ 'xh', 'ẍ' ],
+ [ 'ee', 'ê' ],
+ [ 'ii', 'î' ],
+ [ 'uu', 'û' ],
+ [ 'C(H|h)', 'Ç' ],
+ [ 'S(H|h)', 'Ş' ],
+ [ 'H(H|h)', 'Ḧ' ],
+ [ 'X(H|h)', 'Ẍ' ],
+ [ 'E(E|e)', 'Ê' ],
+ [ 'I(I|i)', 'Î' ],
+ [ 'U(U|u)', 'Û' ] ]
};
$.ime.register( kuH );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ku/ku-tr.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ku/ku-tr.js
index 5853df6e..7ec9ef87 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ku/ku-tr.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ku/ku-tr.js
@@ -12,20 +12,20 @@
version: '1.0',
contextLength: 1,
patterns: [
- ['ḧh', 'h', 'hh'],
- ['Ḧ(H|h)', '(H|h)', 'H$1'],
+ [ 'ḧh', 'h', 'hh' ],
+ [ 'Ḧ(H|h)', '(H|h)', 'H$1' ],
- ['ğ', 'ẍ'],
- ['ı', 'i'],
- ['i', 'î'],
- ['ö', 'ê'],
- ['ü', 'û'],
- ['hh', 'ḧ'],
- ['Ğ', 'Ẍ'],
- ['İ', 'Î'],
- ['Ö', 'Ê'],
- ['Ü', 'Û'],
- ['H(H|h)', 'Ḧ']]
+ [ 'ğ', 'ẍ' ],
+ [ 'ı', 'i' ],
+ [ 'i', 'î' ],
+ [ 'ö', 'ê' ],
+ [ 'ü', 'û' ],
+ [ 'hh', 'ḧ' ],
+ [ 'Ğ', 'Ẍ' ],
+ [ 'İ', 'Î' ],
+ [ 'Ö', 'Ê' ],
+ [ 'Ü', 'Û' ],
+ [ 'H(H|h)', 'Ḧ' ] ]
};
$.ime.register( kuTr );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ky/ky-cyrl-alt.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ky/ky-cyrl-alt.js
index 3a9850a7..9bf036d1 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ky/ky-cyrl-alt.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ky/ky-cyrl-alt.js
@@ -12,12 +12,12 @@
version: '1.0',
patterns: [],
patterns_x: [
- ['н', 'ң'],
- ['Н', 'Ң'],
- ['о', 'ө'],
- ['О', 'Ө'],
- ['у', 'ү'],
- ['У', 'Ү']
+ [ 'н', 'ң' ],
+ [ 'Н', 'Ң' ],
+ [ 'о', 'ө' ],
+ [ 'О', 'Ө' ],
+ [ 'у', 'ү' ],
+ [ 'У', 'Ү' ]
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/lo/lo-kbd.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/lo/lo-kbd.js
index 081b38b3..fecd09d3 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/lo/lo-kbd.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/lo/lo-kbd.js
@@ -11,110 +11,110 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['\\!', '1'],
- ['\"', '='],
- ['\\#', '3'],
- ['\\$', '4'],
- ['\\&', '5'],
- ['\\%', '໌'],
- ['\'', 'ງ'],
- ['\\(', '7'],
- ['\\)', '8'],
- ['\\*', '6'],
- ['\\+', 'ໍ'],
- [',', 'ມ'],
- ['\\-', 'ຊ'],
- ['\\.', 'ໃ'],
- ['/', 'ຝ'],
- ['0', 'ຂ'],
- ['1', 'ຢ'],
- ['2', 'ຟ'],
- ['3', 'ໂ'],
- ['4', 'ຖ'],
- ['5', 'ຸ'],
- ['6', 'ູ'],
- ['7', 'ຄ'],
- ['8', 'ຕ'],
- ['9', 'ຈ'],
- [':', '%'],
- [';', 'ວ'],
- ['\\<', 'ໝ'],
- ['\\=', 'ໍ'],
- ['\\>', '$'],
- ['\\?', ')'],
- ['\\@', '2'],
- ['A', 'ັ'],
- ['B', 'ຶ'],
- ['C', 'ຯ'],
- ['D', '.'],
- ['E', 'ຳ'],
- ['F', ','],
- ['G', ':'],
- ['H', '໊'],
- ['I', 'ຮ'],
- ['J', '໋'],
- ['K', '!'],
- ['L', '?'],
- ['M', 'ໆ'],
- ['N', 'ື'],
- ['O', 'ໜ'],
- ['P', 'ຽ'],
- ['Q', 'ົ'],
- ['R', '_'],
- ['S', ';'],
- ['T', '+'],
- ['U', 'ີ'],
- ['V', 'x'],
- ['W', '0'],
- ['X', '('],
- ['Y', 'ິ'],
- ['Z', '\"'],
- ['\\[', 'ບ'],
- ['\\]', 'ລ'],
- ['\\^', 'ຼ'],
- ['\\_', '9'],
- ['`', '*'],
- ['a', 'ັ'],
- ['b', 'ຶ'],
- ['c', 'ແ'],
- ['d', 'ກ'],
- ['e', 'ຳ'],
- ['f', 'ດ'],
- ['g', 'ເ'],
- ['h', '້'],
- ['i', 'ຣ'],
- ['j', '່'],
- ['k', 'າ'],
- ['l', 'ສ'],
- ['m', 'ທ'],
- ['n', 'ື'],
- ['o', 'ນ'],
- ['p', 'ຍ'],
- ['q', 'ົ'],
- ['r', 'ພ'],
- ['s', 'ຫ'],
- ['t', 'ະ'],
- ['u', 'ີ'],
- ['v', 'ອ'],
- ['w', 'ໄ'],
- ['x', 'ປ'],
- ['y', 'ິ'],
- ['z', 'ຜ'],
- ['\\{', '-'],
- ['\\|', 'ຫຼ'],
- ['\\}', '/'],
- ['~', '໌'],
- ['\\\\', '\\'],
- ['0', '໐'],
- ['1', '໑'],
- ['2', '໒'],
- ['3', '໓'],
- ['4', '໔'],
- ['5', '໕'],
- ['6', '໖'],
- ['7', '໗'],
- ['8', '໘'],
- ['9', '໙']
+ [ '\\!', '1' ],
+ [ '\"', '=' ],
+ [ '\\#', '3' ],
+ [ '\\$', '4' ],
+ [ '\\&', '5' ],
+ [ '\\%', '໌' ],
+ [ '\'', 'ງ' ],
+ [ '\\(', '7' ],
+ [ '\\)', '8' ],
+ [ '\\*', '6' ],
+ [ '\\+', 'ໍ' ],
+ [ ',', 'ມ' ],
+ [ '\\-', 'ຊ' ],
+ [ '\\.', 'ໃ' ],
+ [ '/', 'ຝ' ],
+ [ '0', 'ຂ' ],
+ [ '1', 'ຢ' ],
+ [ '2', 'ຟ' ],
+ [ '3', 'ໂ' ],
+ [ '4', 'ຖ' ],
+ [ '5', 'ຸ' ],
+ [ '6', 'ູ' ],
+ [ '7', 'ຄ' ],
+ [ '8', 'ຕ' ],
+ [ '9', 'ຈ' ],
+ [ ':', '%' ],
+ [ ';', 'ວ' ],
+ [ '\\<', 'ໝ' ],
+ [ '\\=', 'ໍ' ],
+ [ '\\>', '$' ],
+ [ '\\?', ')' ],
+ [ '\\@', '2' ],
+ [ 'A', 'ັ' ],
+ [ 'B', 'ຶ' ],
+ [ 'C', 'ຯ' ],
+ [ 'D', '.' ],
+ [ 'E', 'ຳ' ],
+ [ 'F', ',' ],
+ [ 'G', ':' ],
+ [ 'H', '໊' ],
+ [ 'I', 'ຮ' ],
+ [ 'J', '໋' ],
+ [ 'K', '!' ],
+ [ 'L', '?' ],
+ [ 'M', 'ໆ' ],
+ [ 'N', 'ື' ],
+ [ 'O', 'ໜ' ],
+ [ 'P', 'ຽ' ],
+ [ 'Q', 'ົ' ],
+ [ 'R', '_' ],
+ [ 'S', ';' ],
+ [ 'T', '+' ],
+ [ 'U', 'ີ' ],
+ [ 'V', 'x' ],
+ [ 'W', '0' ],
+ [ 'X', '(' ],
+ [ 'Y', 'ິ' ],
+ [ 'Z', '\"' ],
+ [ '\\[', 'ບ' ],
+ [ '\\]', 'ລ' ],
+ [ '\\^', 'ຼ' ],
+ [ '\\_', '9' ],
+ [ '`', '*' ],
+ [ 'a', 'ັ' ],
+ [ 'b', 'ຶ' ],
+ [ 'c', 'ແ' ],
+ [ 'd', 'ກ' ],
+ [ 'e', 'ຳ' ],
+ [ 'f', 'ດ' ],
+ [ 'g', 'ເ' ],
+ [ 'h', '້' ],
+ [ 'i', 'ຣ' ],
+ [ 'j', '່' ],
+ [ 'k', 'າ' ],
+ [ 'l', 'ສ' ],
+ [ 'm', 'ທ' ],
+ [ 'n', 'ື' ],
+ [ 'o', 'ນ' ],
+ [ 'p', 'ຍ' ],
+ [ 'q', 'ົ' ],
+ [ 'r', 'ພ' ],
+ [ 's', 'ຫ' ],
+ [ 't', 'ະ' ],
+ [ 'u', 'ີ' ],
+ [ 'v', 'ອ' ],
+ [ 'w', 'ໄ' ],
+ [ 'x', 'ປ' ],
+ [ 'y', 'ິ' ],
+ [ 'z', 'ຜ' ],
+ [ '\\{', '-' ],
+ [ '\\|', 'ຫຼ' ],
+ [ '\\}', '/' ],
+ [ '~', '໌' ],
+ [ '\\\\', '\\' ],
+ [ '0', '໐' ],
+ [ '1', '໑' ],
+ [ '2', '໒' ],
+ [ '3', '໓' ],
+ [ '4', '໔' ],
+ [ '5', '໕' ],
+ [ '6', '໖' ],
+ [ '7', '໗' ],
+ [ '8', '໘' ],
+ [ '9', '໙' ]
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/lrc/lrc-kbd.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/lrc/lrc-kbd.js
index 5f8999af..abb1e38e 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/lrc/lrc-kbd.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/lrc/lrc-kbd.js
@@ -11,96 +11,96 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['`', '\u200c'],
- ['1', '۱'],
- ['2', '۲'],
- ['3', '۳'],
- ['4', '۴'],
- ['5', '۵'],
- ['6', '۶'],
- ['7', '۷'],
- ['8', '۸'],
- ['9', '۹'],
- ['0', '۰'],
+ [ '`', '\u200c' ],
+ [ '1', '۱' ],
+ [ '2', '۲' ],
+ [ '3', '۳' ],
+ [ '4', '۴' ],
+ [ '5', '۵' ],
+ [ '6', '۶' ],
+ [ '7', '۷' ],
+ [ '8', '۸' ],
+ [ '9', '۹' ],
+ [ '0', '۰' ],
- ['q', 'ض'],
- ['w', 'ص'],
- ['e', 'ث'],
- ['r', 'ق'],
- ['t', 'ف'],
- ['y', 'غ'],
- ['u', 'ع'],
- ['i', 'ھ'],
- ['o', 'خ'],
- ['p', 'ح'],
- ['\\[', 'ج'],
- ['\\]', 'چ'],
+ [ 'q', 'ض' ],
+ [ 'w', 'ص' ],
+ [ 'e', 'ث' ],
+ [ 'r', 'ق' ],
+ [ 't', 'ف' ],
+ [ 'y', 'غ' ],
+ [ 'u', 'ع' ],
+ [ 'i', 'ھ' ],
+ [ 'o', 'خ' ],
+ [ 'p', 'ح' ],
+ [ '\\[', 'ج' ],
+ [ '\\]', 'چ' ],
- ['a', 'ش'],
- ['s', 'س'],
- ['d', 'ی'],
- ['f', 'ب'],
- ['g', 'ل'],
- ['h', 'ا'],
- ['j', 'ت'],
- ['k', 'ن'],
- ['l', 'م'],
- [';', 'ک'],
- ['\'', 'گ'],
+ [ 'a', 'ش' ],
+ [ 's', 'س' ],
+ [ 'd', 'ی' ],
+ [ 'f', 'ب' ],
+ [ 'g', 'ل' ],
+ [ 'h', 'ا' ],
+ [ 'j', 'ت' ],
+ [ 'k', 'ن' ],
+ [ 'l', 'م' ],
+ [ ';', 'ک' ],
+ [ '\'', 'گ' ],
- ['z', 'ظ'],
- ['x', 'ط'],
- ['c', 'ز'],
- ['v', 'ر'],
- ['b', 'ذ'],
- ['n', 'د'],
- ['m', 'پ'],
- [',', 'ڤ'],
+ [ 'z', 'ظ' ],
+ [ 'x', 'ط' ],
+ [ 'c', 'ز' ],
+ [ 'v', 'ر' ],
+ [ 'b', 'ذ' ],
+ [ 'n', 'د' ],
+ [ 'm', 'پ' ],
+ [ ',', 'ڤ' ],
- ['~', '÷'],
- ['@', '٬'],
- ['#', '٫'],
- ['%', '٪'],
- ['\\^', '×'],
- ['&', '،'],
- ['\\(', ')'],
- ['\\)', '('],
- ['_', 'ـ'],
+ [ '~', '÷' ],
+ [ '@', '٬' ],
+ [ '#', '٫' ],
+ [ '%', '٪' ],
+ [ '\\^', '×' ],
+ [ '&', '،' ],
+ [ '\\(', ')' ],
+ [ '\\)', '(' ],
+ [ '_', 'ـ' ],
- ['Q', 'ۊ'],
- ['W', 'ۉ'],
- ['E', 'وٙ'],
- ['R', 'ً'],
- ['T', 'و'],
- ['Y', 'أ'],
- ['U', 'ە'],
- ['I', 'ؤ'],
- ['O', ']'],
- ['P', '['],
- ['\\{', '}'],
- ['\\}', '{'],
+ [ 'Q', 'ۊ' ],
+ [ 'W', 'ۉ' ],
+ [ 'E', 'وٙ' ],
+ [ 'R', 'ً' ],
+ [ 'T', 'و' ],
+ [ 'Y', 'أ' ],
+ [ 'U', 'ە' ],
+ [ 'I', 'ؤ' ],
+ [ 'O', ']' ],
+ [ 'P', '[' ],
+ [ '\\{', '}' ],
+ [ '\\}', '{' ],
- ['A', 'اٛ'],
- ['S', 'ئ'],
- ['D', 'ئو'],
- ['F', 'ئی'],
- ['G', 'لٛ'],
- ['H', 'آ'],
- ['J', 'او'],
- ['K', '»'],
- ['L', '«'],
- ['"', '؛'],
+ [ 'A', 'اٛ' ],
+ [ 'S', 'ئ' ],
+ [ 'D', 'ئو' ],
+ [ 'F', 'ئی' ],
+ [ 'G', 'لٛ' ],
+ [ 'H', 'آ' ],
+ [ 'J', 'او' ],
+ [ 'K', '»' ],
+ [ 'L', '«' ],
+ [ '"', '؛' ],
- ['Z', 'نٛ'],
- ['X', 'گٛ'],
- ['C', 'ژ'],
- ['V', 'ؽ'],
- ['B', 'دٙ'],
- ['N', 'ٔ'],
- ['M', 'ء'],
- ['<', '>'],
- ['>', '<'],
- ['\\?', '؟']
+ [ 'Z', 'نٛ' ],
+ [ 'X', 'گٛ' ],
+ [ 'C', 'ژ' ],
+ [ 'V', 'ؽ' ],
+ [ 'B', 'دٙ' ],
+ [ 'N', 'ٔ' ],
+ [ 'M', 'ء' ],
+ [ '<', '>' ],
+ [ '>', '<' ],
+ [ '\\?', '؟' ]
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/lud/lud-transliteration.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/lud/lud-transliteration.js
index cfc2aa78..53faece4 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/lud/lud-transliteration.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/lud/lud-transliteration.js
@@ -13,15 +13,15 @@
contextLength: 0,
maxKeyLength: 2,
patterns: [
- ['ch', 'č'],
- ['C[hH]', 'Č'],
- ['sh', 'š'],
- ['S[hH]', 'Š'],
- ['zh', 'ž'],
- ['Z[hH]', 'Ž'],
- ['y', 'ü'],
- ['Y', 'Ü'],
- ['\'', '’']
+ [ 'ch', 'č' ],
+ [ 'C[hH]', 'Č' ],
+ [ 'sh', 'š' ],
+ [ 'S[hH]', 'Š' ],
+ [ 'zh', 'ž' ],
+ [ 'Z[hH]', 'Ž' ],
+ [ 'y', 'ü' ],
+ [ 'Y', 'Ü' ],
+ [ '\'', '’' ]
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mai/mai-inscript.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mai/mai-inscript.js
index 849f3886..b9b5f6a1 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mai/mai-inscript.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mai/mai-inscript.js
@@ -2,7 +2,7 @@
'use strict';
var hiInScript, maithiliPatterns, maithiliInScript;
- hiInScript = $.ime.inputmethods['hi-inscript'];
+ hiInScript = $.ime.inputmethods[ 'hi-inscript' ];
maithiliPatterns = $.extend( hiInScript.patterns, [ [ 'z', '\u02BC' ] ] ); // apostrophe
maithiliInScript = {
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mai/mai-inscript2.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mai/mai-inscript2.js
index e228e9e9..6654b937 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mai/mai-inscript2.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mai/mai-inscript2.js
@@ -3,7 +3,7 @@
var hiInScript2, maithiliPatterns2, maithiliInScript2;
- hiInScript2 = $.ime.inputmethods['hi-inscript2'];
+ hiInScript2 = $.ime.inputmethods[ 'hi-inscript2' ];
maithiliPatterns2 = $.extend( hiInScript2.patterns,
[ [ 'z', '\u02BC' ] ]
); // apostrophe
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mh/mh.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mh/mh.js
index 108dd032..79dfa01b 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mh/mh.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mh/mh.js
@@ -19,23 +19,23 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['Y', 'Ū'],
- ['S', 'Ā'],
- ['F', 'Ņ'],
- ['G', 'N̄'],
- ['H', 'M̧'],
- ['X', 'O̧'],
- ['C', 'Ō'],
- ['V', 'Ļ'],
+ [ 'Y', 'Ū' ],
+ [ 'S', 'Ā' ],
+ [ 'F', 'Ņ' ],
+ [ 'G', 'N̄' ],
+ [ 'H', 'M̧' ],
+ [ 'X', 'O̧' ],
+ [ 'C', 'Ō' ],
+ [ 'V', 'Ļ' ],
- ['y', 'ū'],
- ['s', 'ā'],
- ['f', 'ņ'],
- ['g', 'n̄'],
- ['h', 'm̧'],
- ['x', 'o̧'],
- ['c', 'ō'],
- ['v', 'ļ']
+ [ 'y', 'ū' ],
+ [ 's', 'ā' ],
+ [ 'f', 'ņ' ],
+ [ 'g', 'n̄' ],
+ [ 'h', 'm̧' ],
+ [ 'x', 'o̧' ],
+ [ 'c', 'ō' ],
+ [ 'v', 'ļ' ]
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ml/ml-inscript2.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ml/ml-inscript2.js
index 9c609485..cc298203 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ml/ml-inscript2.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ml/ml-inscript2.js
@@ -13,118 +13,118 @@
contextLength: 0,
maxKeyLength: 2,
patterns: [
- ['1', '൧'],
- ['2', '൨'],
- ['3', '൩'],
- ['\\#', '്ര'],
- ['4', '൪'],
- ['5', '൫'],
- ['6', '൬'],
- ['7', '൭'],
- ['\\&', 'ക്ഷ'],
- ['8', '൮'],
- ['\\*', 'ൾ'],
- ['\\(', '('],
- ['9', '൯'],
- ['\\)', ')'],
- ['0', '൦'],
- ['\\_', 'ഃ'],
- ['\\-', '-'],
- ['\\+', 'ഋ'],
- ['\\=', 'ൃ'],
- ['Q', 'ഔ'],
- ['q', 'ൗ'],
- ['W', 'ഐ'],
- ['w', 'ൈ'],
- ['E', 'ആ'],
- ['e', 'ാ'],
- ['R', 'ഈ'],
- ['r', 'ീ'],
- ['T', 'ഊ'],
- ['t', 'ൂ'],
- ['Y', 'ഭ'],
- ['y', 'ബ'],
- ['U', 'ങ'],
- ['u', 'ഹ'],
- ['I', 'ഘ'],
- ['i', 'ഗ'],
- ['O', 'ധ'],
- ['o', 'ദ'],
- ['P', 'ഝ'],
- ['p', 'ജ'],
- ['\\{', 'ഢ'],
- ['\\[', 'ഡ'],
- ['\\}', 'ഞ'],
- ['\\\\', 'ർ'],
- ['A', 'ഓ'],
- ['a', 'ോ'],
- ['S', 'ഏ'],
- ['s', 'േ'],
- ['D', 'അ'],
- ['d', '്'],
- ['F', 'ഇ'],
- ['f', 'ി'],
- ['G', 'ഉ'],
- ['g', 'ു'],
- ['H', 'ഫ'],
- ['h', 'പ'],
- ['J', 'റ'],
- ['j', 'ര'],
- ['K', 'ഖ'],
- ['k', 'ക'],
- ['L', 'ഥ'],
- ['l', 'ത'],
- [':', 'ഛ'],
- [';', 'ച'],
- ['"', 'ഠ'],
- ['\\\'', 'ട'],
- ['\\~', 'ഒ'],
- ['\\`', 'ൊ'],
- ['Z', 'എ'],
- ['z', 'െ'],
- ['X', 'ൺ'],
- ['x', 'ം'],
- ['C', 'ണ'],
- ['c', 'മ'],
- ['V', 'ൻ'],
- ['v', 'ന'],
- ['B', 'ഴ'],
- ['b', 'വ'],
- ['N', 'ള'],
- ['n', 'ല'],
- ['M', 'ശ'],
- ['m', 'സ'],
- ['\\<', 'ഷ'],
- [',', ','],
- ['\\>', 'ൽ'],
- ['\\.', '.'],
- ['/', 'യ']
+ [ '1', '൧' ],
+ [ '2', '൨' ],
+ [ '3', '൩' ],
+ [ '\\#', '്ര' ],
+ [ '4', '൪' ],
+ [ '5', '൫' ],
+ [ '6', '൬' ],
+ [ '7', '൭' ],
+ [ '\\&', 'ക്ഷ' ],
+ [ '8', '൮' ],
+ [ '\\*', 'ൾ' ],
+ [ '\\(', '(' ],
+ [ '9', '൯' ],
+ [ '\\)', ')' ],
+ [ '0', '൦' ],
+ [ '\\_', 'ഃ' ],
+ [ '\\-', '-' ],
+ [ '\\+', 'ഋ' ],
+ [ '\\=', 'ൃ' ],
+ [ 'Q', 'ഔ' ],
+ [ 'q', 'ൗ' ],
+ [ 'W', 'ഐ' ],
+ [ 'w', 'ൈ' ],
+ [ 'E', 'ആ' ],
+ [ 'e', 'ാ' ],
+ [ 'R', 'ഈ' ],
+ [ 'r', 'ീ' ],
+ [ 'T', 'ഊ' ],
+ [ 't', 'ൂ' ],
+ [ 'Y', 'ഭ' ],
+ [ 'y', 'ബ' ],
+ [ 'U', 'ങ' ],
+ [ 'u', 'ഹ' ],
+ [ 'I', 'ഘ' ],
+ [ 'i', 'ഗ' ],
+ [ 'O', 'ധ' ],
+ [ 'o', 'ദ' ],
+ [ 'P', 'ഝ' ],
+ [ 'p', 'ജ' ],
+ [ '\\{', 'ഢ' ],
+ [ '\\[', 'ഡ' ],
+ [ '\\}', 'ഞ' ],
+ [ '\\\\', 'ർ' ],
+ [ 'A', 'ഓ' ],
+ [ 'a', 'ോ' ],
+ [ 'S', 'ഏ' ],
+ [ 's', 'േ' ],
+ [ 'D', 'അ' ],
+ [ 'd', '്' ],
+ [ 'F', 'ഇ' ],
+ [ 'f', 'ി' ],
+ [ 'G', 'ഉ' ],
+ [ 'g', 'ു' ],
+ [ 'H', 'ഫ' ],
+ [ 'h', 'പ' ],
+ [ 'J', 'റ' ],
+ [ 'j', 'ര' ],
+ [ 'K', 'ഖ' ],
+ [ 'k', 'ക' ],
+ [ 'L', 'ഥ' ],
+ [ 'l', 'ത' ],
+ [ ':', 'ഛ' ],
+ [ ';', 'ച' ],
+ [ '"', 'ഠ' ],
+ [ '\\\'', 'ട' ],
+ [ '\\~', 'ഒ' ],
+ [ '\\`', 'ൊ' ],
+ [ 'Z', 'എ' ],
+ [ 'z', 'െ' ],
+ [ 'X', 'ൺ' ],
+ [ 'x', 'ം' ],
+ [ 'C', 'ണ' ],
+ [ 'c', 'മ' ],
+ [ 'V', 'ൻ' ],
+ [ 'v', 'ന' ],
+ [ 'B', 'ഴ' ],
+ [ 'b', 'വ' ],
+ [ 'N', 'ള' ],
+ [ 'n', 'ല' ],
+ [ 'M', 'ശ' ],
+ [ 'm', 'സ' ],
+ [ '\\<', 'ഷ' ],
+ [ ',', ',' ],
+ [ '\\>', 'ൽ' ],
+ [ '\\.', '.' ],
+ [ '/', 'യ' ]
],
patterns_x: [
- ['1', '\u200d'],
- ['\\!', '൰'],
- ['2', '\u200c'],
- ['\\@', '൱'],
- ['\\#', '൲'],
- ['\\$', '൳'],
- ['4', '₹'],
- ['\\%', '൴'],
- ['\\^', '൵'],
- ['\\+', 'ൠ'],
- ['\\=', 'ൄ'],
- ['q', 'ൌ'],
- ['R', 'ൡ'],
- ['r', 'ൣ'],
- ['F', 'ഌ'],
- ['f', 'ൢ'],
- ['j', 'ർ'],
- ['k', 'ൿ'],
- ['c', 'ൺ'],
- ['v', '൹'],
- ['N', 'ൾ'],
- ['n', 'ൽ'],
- ['\\>', 'ഽ'],
- ['\\.', '॥']
+ [ '1', '\u200d' ],
+ [ '\\!', '൰' ],
+ [ '2', '\u200c' ],
+ [ '\\@', '൱' ],
+ [ '\\#', '൲' ],
+ [ '\\$', '൳' ],
+ [ '4', '₹' ],
+ [ '\\%', '൴' ],
+ [ '\\^', '൵' ],
+ [ '\\+', 'ൠ' ],
+ [ '\\=', 'ൄ' ],
+ [ 'q', 'ൌ' ],
+ [ 'R', 'ൡ' ],
+ [ 'r', 'ൣ' ],
+ [ 'F', 'ഌ' ],
+ [ 'f', 'ൢ' ],
+ [ 'j', 'ർ' ],
+ [ 'k', 'ൿ' ],
+ [ 'c', 'ൺ' ],
+ [ 'v', '൹' ],
+ [ 'N', 'ൾ' ],
+ [ 'n', 'ൽ' ],
+ [ '\\>', 'ഽ' ],
+ [ '\\.', '॥' ]
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mn/mn-cyrl.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mn/mn-cyrl.js
index 50120b8c..f3f750d7 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mn/mn-cyrl.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mn/mn-cyrl.js
@@ -17,100 +17,100 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['Q', 'Ф'],
- ['W', 'Ц'],
- ['E', 'У'],
- ['R', 'Ж'],
- ['T', 'Э'],
- ['Y', 'Н'],
- ['U', 'Г'],
- ['I', 'Ш'],
- ['O', 'Ү'],
- ['P', 'З'],
- ['{', 'К'],
- ['}', 'Ъ'],
- ['A', 'Й'],
- ['S', 'Ы'],
- ['D', 'Б'],
- ['F', 'Ө'],
- ['G', 'А'],
- ['H', 'Х'],
- ['J', 'Р'],
- ['K', 'О'],
- ['L', 'Л'],
- [':', 'Д'],
- ['"', 'П'],
- ['Z', 'Я'],
- ['X', 'Ч'],
- ['C', 'Ё'],
- ['V', 'С'],
- ['B', 'М'],
- ['N', 'И'],
- ['M', 'Т'],
- ['<', 'Ь'],
- ['>', 'В'],
- ['\\?', 'Ю'],
- ['_', 'Е'],
- ['\\+', 'Щ'],
+ [ 'Q', 'Ф' ],
+ [ 'W', 'Ц' ],
+ [ 'E', 'У' ],
+ [ 'R', 'Ж' ],
+ [ 'T', 'Э' ],
+ [ 'Y', 'Н' ],
+ [ 'U', 'Г' ],
+ [ 'I', 'Ш' ],
+ [ 'O', 'Ү' ],
+ [ 'P', 'З' ],
+ [ '{', 'К' ],
+ [ '}', 'Ъ' ],
+ [ 'A', 'Й' ],
+ [ 'S', 'Ы' ],
+ [ 'D', 'Б' ],
+ [ 'F', 'Ө' ],
+ [ 'G', 'А' ],
+ [ 'H', 'Х' ],
+ [ 'J', 'Р' ],
+ [ 'K', 'О' ],
+ [ 'L', 'Л' ],
+ [ ':', 'Д' ],
+ [ '"', 'П' ],
+ [ 'Z', 'Я' ],
+ [ 'X', 'Ч' ],
+ [ 'C', 'Ё' ],
+ [ 'V', 'С' ],
+ [ 'B', 'М' ],
+ [ 'N', 'И' ],
+ [ 'M', 'Т' ],
+ [ '<', 'Ь' ],
+ [ '>', 'В' ],
+ [ '\\?', 'Ю' ],
+ [ '_', 'Е' ],
+ [ '\\+', 'Щ' ],
- ['q', 'ф'],
- ['w', 'ц'],
- ['e', 'у'],
- ['r', 'ж'],
- ['t', 'э'],
- ['y', 'н'],
- ['u', 'г'],
- ['i', 'ш'],
- ['o', 'ү'],
- ['p', 'з'],
- ['\\[', 'к'],
- ['\\]', 'ъ'],
- ['a', 'й'],
- ['s', 'ы'],
- ['d', 'б'],
- ['f', 'ө'],
- ['g', 'а'],
- ['h', 'х'],
- ['j', 'р'],
- ['k', 'о'],
- ['l', 'л'],
- [';', 'д'],
- ['\'', 'п'],
- ['z', 'я'],
- ['x', 'ч'],
- ['c', 'ё'],
- ['v', 'с'],
- ['b', 'м'],
- ['n', 'и'],
- ['m', 'т'],
- [',', 'ь'],
- ['\\.', 'в'],
- ['/', 'ю'],
- ['\\-', 'е'],
- ['=', 'щ'],
+ [ 'q', 'ф' ],
+ [ 'w', 'ц' ],
+ [ 'e', 'у' ],
+ [ 'r', 'ж' ],
+ [ 't', 'э' ],
+ [ 'y', 'н' ],
+ [ 'u', 'г' ],
+ [ 'i', 'ш' ],
+ [ 'o', 'ү' ],
+ [ 'p', 'з' ],
+ [ '\\[', 'к' ],
+ [ '\\]', 'ъ' ],
+ [ 'a', 'й' ],
+ [ 's', 'ы' ],
+ [ 'd', 'б' ],
+ [ 'f', 'ө' ],
+ [ 'g', 'а' ],
+ [ 'h', 'х' ],
+ [ 'j', 'р' ],
+ [ 'k', 'о' ],
+ [ 'l', 'л' ],
+ [ ';', 'д' ],
+ [ '\'', 'п' ],
+ [ 'z', 'я' ],
+ [ 'x', 'ч' ],
+ [ 'c', 'ё' ],
+ [ 'v', 'с' ],
+ [ 'b', 'м' ],
+ [ 'n', 'и' ],
+ [ 'm', 'т' ],
+ [ ',', 'ь' ],
+ [ '\\.', 'в' ],
+ [ '/', 'ю' ],
+ [ '\\-', 'е' ],
+ [ '=', 'щ' ],
- ['`', '='],
- ['~', '+'],
- ['1', '№'],
- ['2', '-'],
- ['3', '"'],
- ['4', '₮'],
- ['5', ':'],
- ['6', '.'],
- ['7', '_'],
- ['8', ','],
- ['9', '%'],
- ['0', '?'],
- ['!', '1'],
- ['@', '2'],
- ['#', '3'],
- ['\\$', '4'],
- ['%', '5'],
- ['^', '6'],
- ['&', '7'],
- ['*', '8'],
- ['\\(', '9'],
- ['\\)', '0']
+ [ '`', '=' ],
+ [ '~', '+' ],
+ [ '1', '№' ],
+ [ '2', '-' ],
+ [ '3', '"' ],
+ [ '4', '₮' ],
+ [ '5', ':' ],
+ [ '6', '.' ],
+ [ '7', '_' ],
+ [ '8', ',' ],
+ [ '9', '%' ],
+ [ '0', '?' ],
+ [ '!', '1' ],
+ [ '@', '2' ],
+ [ '#', '3' ],
+ [ '\\$', '4' ],
+ [ '%', '5' ],
+ [ '^', '6' ],
+ [ '&', '7' ],
+ [ '*', '8' ],
+ [ '\\(', '9' ],
+ [ '\\)', '0' ]
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mni/mni-inscript2.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mni/mni-inscript2.js
index 2fb463e0..7ff37fa4 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mni/mni-inscript2.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mni/mni-inscript2.js
@@ -11,114 +11,114 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['\\!', 'অ্যা'],
- ['1', '১'],
- ['2', '২'],
- ['\\#', '্র'],
- ['3', '৩'],
- ['\\$', 'র্'],
- ['4', '৪'],
- ['\\%', 'জ্ঞ'],
- ['5', '৫'],
- ['\\^', 'ত্র'],
- ['6', '৬'],
- ['\\&', 'ক্ষ'],
- ['7', '৭'],
- ['\\*', 'শ্র'],
- ['8', '৮'],
- ['9', '৯'],
- ['\\(', '('],
- ['\\)', ')'],
- ['0', '০'],
- ['\"', 'ঠ'],
- ['\'', 'ট'],
- [',', ','],
- ['-', '-'],
- ['\\.', '.'],
- ['/', 'য়'],
- [':', 'ছ'],
- [';', 'চ'],
- ['\\<', 'ষ'],
- ['\\=', 'ৃ'],
- ['\\+', 'ঋ'],
- ['\\>', '।'],
- ['\\?', 'য'],
- ['A', 'ও'],
- ['C', 'ণ'],
- ['D', 'অ'],
- ['E', 'আ'],
- ['F', 'ই'],
- ['G', 'উ'],
- ['H', 'ফ'],
- ['I', 'ঘ'],
- ['K', 'খ'],
- ['L', 'থ'],
- ['M', 'শ'],
- ['O', 'ধ'],
- ['P', 'ঝ'],
- ['Q', 'ঔ'],
- ['R', 'ঈ'],
- ['S', 'এ'],
- ['T', 'ঊ'],
- ['U', 'ঙ'],
- ['W', 'ঐ'],
- ['X', 'ঁ'],
- ['Y', 'ভ'],
- ['\\{', 'ঢ'],
- ['\\[', 'ড'],
- ['\\}', 'ঞ'],
- ['\\]', '়'],
- ['\\_', 'ঃ'],
- ['a', 'ো'],
- ['c', 'ম'],
- ['d', '্'],
- ['e', 'া'],
- ['f', 'ি'],
- ['g', 'ু'],
- ['h', 'প'],
- ['i', 'গ'],
- ['j', 'র'],
- ['k', 'ক'],
- ['l', 'ত'],
- ['m', 'স'],
- ['n', 'ল'],
- ['o', 'দ'],
- ['p', 'জ'],
- ['q', 'ৌ'],
- ['r', 'ী'],
- ['s', 'ে'],
- ['t', 'ূ'],
- ['u', 'হ'],
- ['v', 'ন'],
- ['w', 'ৈ'],
- ['x', 'ং'],
- ['y', 'ব']
+ [ '\\!', 'অ্যা' ],
+ [ '1', '১' ],
+ [ '2', '২' ],
+ [ '\\#', '্র' ],
+ [ '3', '৩' ],
+ [ '\\$', 'র্' ],
+ [ '4', '৪' ],
+ [ '\\%', 'জ্ঞ' ],
+ [ '5', '৫' ],
+ [ '\\^', 'ত্র' ],
+ [ '6', '৬' ],
+ [ '\\&', 'ক্ষ' ],
+ [ '7', '৭' ],
+ [ '\\*', 'শ্র' ],
+ [ '8', '৮' ],
+ [ '9', '৯' ],
+ [ '\\(', '(' ],
+ [ '\\)', ')' ],
+ [ '0', '০' ],
+ [ '\"', 'ঠ' ],
+ [ '\'', 'ট' ],
+ [ ',', ',' ],
+ [ '-', '-' ],
+ [ '\\.', '.' ],
+ [ '/', 'য়' ],
+ [ ':', 'ছ' ],
+ [ ';', 'চ' ],
+ [ '\\<', 'ষ' ],
+ [ '\\=', 'ৃ' ],
+ [ '\\+', 'ঋ' ],
+ [ '\\>', '।' ],
+ [ '\\?', 'য' ],
+ [ 'A', 'ও' ],
+ [ 'C', 'ণ' ],
+ [ 'D', 'অ' ],
+ [ 'E', 'আ' ],
+ [ 'F', 'ই' ],
+ [ 'G', 'উ' ],
+ [ 'H', 'ফ' ],
+ [ 'I', 'ঘ' ],
+ [ 'K', 'খ' ],
+ [ 'L', 'থ' ],
+ [ 'M', 'শ' ],
+ [ 'O', 'ধ' ],
+ [ 'P', 'ঝ' ],
+ [ 'Q', 'ঔ' ],
+ [ 'R', 'ঈ' ],
+ [ 'S', 'এ' ],
+ [ 'T', 'ঊ' ],
+ [ 'U', 'ঙ' ],
+ [ 'W', 'ঐ' ],
+ [ 'X', 'ঁ' ],
+ [ 'Y', 'ভ' ],
+ [ '\\{', 'ঢ' ],
+ [ '\\[', 'ড' ],
+ [ '\\}', 'ঞ' ],
+ [ '\\]', '়' ],
+ [ '\\_', 'ঃ' ],
+ [ 'a', 'ো' ],
+ [ 'c', 'ম' ],
+ [ 'd', '্' ],
+ [ 'e', 'া' ],
+ [ 'f', 'ি' ],
+ [ 'g', 'ু' ],
+ [ 'h', 'প' ],
+ [ 'i', 'গ' ],
+ [ 'j', 'র' ],
+ [ 'k', 'ক' ],
+ [ 'l', 'ত' ],
+ [ 'm', 'স' ],
+ [ 'n', 'ল' ],
+ [ 'o', 'দ' ],
+ [ 'p', 'জ' ],
+ [ 'q', 'ৌ' ],
+ [ 'r', 'ী' ],
+ [ 's', 'ে' ],
+ [ 't', 'ূ' ],
+ [ 'u', 'হ' ],
+ [ 'v', 'ন' ],
+ [ 'w', 'ৈ' ],
+ [ 'x', 'ং' ],
+ [ 'y', 'ব' ]
],
patterns_x: [
- ['\\!', '৴'],
- ['1', '\u200d'],
- ['\\@', '৵'],
- ['2', '\u200c'],
- ['\\#', '৶'],
- ['\\$', '৷'],
- ['4', '₹'],
- ['\\%', '৸'],
- ['\\^', '৹'],
- [',', '৳'],
- ['\\.', '॥'],
- ['/', '্য'],
- ['\\<', '৲'],
- ['\\=', 'ৄ'],
- ['\\+', 'ৠ'],
- ['\\>', 'ঽ'],
- ['F', 'ঌ'],
- ['R', 'ৡ'],
- ['\\{', 'ঢ়'],
- ['\\[', 'ড়'],
- ['f', 'ৢ'],
- ['l', 'ৎ'],
- ['r', 'ৣ'],
- ['x', '৺']]
+ [ '\\!', '৴' ],
+ [ '1', '\u200d' ],
+ [ '\\@', '৵' ],
+ [ '2', '\u200c' ],
+ [ '\\#', '৶' ],
+ [ '\\$', '৷' ],
+ [ '4', '₹' ],
+ [ '\\%', '৸' ],
+ [ '\\^', '৹' ],
+ [ ',', '৳' ],
+ [ '\\.', '॥' ],
+ [ '/', '্য' ],
+ [ '\\<', '৲' ],
+ [ '\\=', 'ৄ' ],
+ [ '\\+', 'ৠ' ],
+ [ '\\>', 'ঽ' ],
+ [ 'F', 'ঌ' ],
+ [ 'R', 'ৡ' ],
+ [ '\\{', 'ঢ়' ],
+ [ '\\[', 'ড়' ],
+ [ 'f', 'ৢ' ],
+ [ 'l', 'ৎ' ],
+ [ 'r', 'ৣ' ],
+ [ 'x', '৺' ] ]
};
$.ime.register( mniInScript2 );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mr/mr-inscript.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mr/mr-inscript.js
index 315088ef..125be12a 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mr/mr-inscript.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mr/mr-inscript.js
@@ -10,105 +10,105 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['X', '\u0901'],
- ['x', '\u0902'],
- ['_', '\u0903'],
- ['D', '\u0905'],
- ['E', '\u0906'],
- ['F', '\u0907'],
- ['R', '\u0908'],
- ['G', '\u0909'],
- ['T', '\u090A'],
- ['\\+', '\u090B'],
- ['!', '\u090D'],
- ['S', '\u090F'],
- ['W', '\u0910'],
- ['\\|', '\u0911'],
- ['A', '\u0913'],
- ['Q', '\u0914'],
- ['k', '\u0915'],
- ['K', '\u0916'],
- ['i', '\u0917'],
- ['I', '\u0918'],
- ['U', '\u0919'],
- [';', '\u091A'],
- ['\\:', '\u091B'],
- ['p', '\u091C'],
- ['P', '\u091D'],
- ['\\}', '\u091E'],
- ['\'', '', '\u091F'],
- ['"', '\u0920'],
- ['\\[', '\u0921'],
- ['\\{', '\u0922'],
- ['C', '\u0923'],
- ['l', '\u0924'],
- ['L', '\u0925'],
- ['o', '\u0926'],
- ['O', '\u0927'],
- ['v', '\u0928'],
- ['h', '\u092A'],
- ['H', '\u092B'],
- ['y', '\u092C'],
- ['Y', '\u092D'],
- ['c', '\u092E'],
- ['/', '\u092F'],
- ['j', '\u0930'],
- ['J', '\u0931'],
- ['n', '\u0932'],
- ['N', '\u0933'],
- ['b', '\u0935'],
- ['M', '\u0936'],
- ['\\<', '\u0937'],
- ['m', '\u0938'],
- ['u', '\u0939'],
- ['\\]', '\u093C'],
- ['e', '\u093E'],
- ['f', '\u093F'],
- ['r', '\u0940'],
- ['g', '\u0941'],
- ['t', '\u0942'],
- ['\\=', '\u0943'],
- ['\\@', '\u0945'],
- ['s', '\u0947'],
- ['w', '\u0948'],
- ['\\\\', '\u0949'],
- ['a', '\u094B'],
- ['q', '\u094C'],
- ['d', '\u094D'],
- ['\\>', '\u0964'],
- ['0', '\u0966'],
- ['1', '\u0967'],
- ['2', '\u0968'],
- ['3', '\u0969'],
- ['4', '\u096A'],
- ['5', '\u096B'],
- ['6', '\u096C'],
- ['7', '\u096D'],
- ['8', '\u096E'],
- ['9', '\u096F'],
- ['\\!', '\u0972'],
- ['\\#', '\u094D\u0930'],
- ['\\$', '\u0930\u094D'],
- ['\\%', '\u091C\u094D\u091E'],
- ['\\^', '\u0924\u094D\u0930'],
- ['\\&', '\u0915\u094D\u0937'],
- ['\\*', '\u0936\u094D\u0930'],
- ['\\(', '\u200D'],
- ['\\)', '\u200C']],
+ [ 'X', '\u0901' ],
+ [ 'x', '\u0902' ],
+ [ '_', '\u0903' ],
+ [ 'D', '\u0905' ],
+ [ 'E', '\u0906' ],
+ [ 'F', '\u0907' ],
+ [ 'R', '\u0908' ],
+ [ 'G', '\u0909' ],
+ [ 'T', '\u090A' ],
+ [ '\\+', '\u090B' ],
+ [ '!', '\u090D' ],
+ [ 'S', '\u090F' ],
+ [ 'W', '\u0910' ],
+ [ '\\|', '\u0911' ],
+ [ 'A', '\u0913' ],
+ [ 'Q', '\u0914' ],
+ [ 'k', '\u0915' ],
+ [ 'K', '\u0916' ],
+ [ 'i', '\u0917' ],
+ [ 'I', '\u0918' ],
+ [ 'U', '\u0919' ],
+ [ ';', '\u091A' ],
+ [ '\\:', '\u091B' ],
+ [ 'p', '\u091C' ],
+ [ 'P', '\u091D' ],
+ [ '\\}', '\u091E' ],
+ [ '\'', '', '\u091F' ],
+ [ '"', '\u0920' ],
+ [ '\\[', '\u0921' ],
+ [ '\\{', '\u0922' ],
+ [ 'C', '\u0923' ],
+ [ 'l', '\u0924' ],
+ [ 'L', '\u0925' ],
+ [ 'o', '\u0926' ],
+ [ 'O', '\u0927' ],
+ [ 'v', '\u0928' ],
+ [ 'h', '\u092A' ],
+ [ 'H', '\u092B' ],
+ [ 'y', '\u092C' ],
+ [ 'Y', '\u092D' ],
+ [ 'c', '\u092E' ],
+ [ '/', '\u092F' ],
+ [ 'j', '\u0930' ],
+ [ 'J', '\u0931' ],
+ [ 'n', '\u0932' ],
+ [ 'N', '\u0933' ],
+ [ 'b', '\u0935' ],
+ [ 'M', '\u0936' ],
+ [ '\\<', '\u0937' ],
+ [ 'm', '\u0938' ],
+ [ 'u', '\u0939' ],
+ [ '\\]', '\u093C' ],
+ [ 'e', '\u093E' ],
+ [ 'f', '\u093F' ],
+ [ 'r', '\u0940' ],
+ [ 'g', '\u0941' ],
+ [ 't', '\u0942' ],
+ [ '\\=', '\u0943' ],
+ [ '\\@', '\u0945' ],
+ [ 's', '\u0947' ],
+ [ 'w', '\u0948' ],
+ [ '\\\\', '\u0949' ],
+ [ 'a', '\u094B' ],
+ [ 'q', '\u094C' ],
+ [ 'd', '\u094D' ],
+ [ '\\>', '\u0964' ],
+ [ '0', '\u0966' ],
+ [ '1', '\u0967' ],
+ [ '2', '\u0968' ],
+ [ '3', '\u0969' ],
+ [ '4', '\u096A' ],
+ [ '5', '\u096B' ],
+ [ '6', '\u096C' ],
+ [ '7', '\u096D' ],
+ [ '8', '\u096E' ],
+ [ '9', '\u096F' ],
+ [ '\\!', '\u0972' ],
+ [ '\\#', '\u094D\u0930' ],
+ [ '\\$', '\u0930\u094D' ],
+ [ '\\%', '\u091C\u094D\u091E' ],
+ [ '\\^', '\u0924\u094D\u0930' ],
+ [ '\\&', '\u0915\u094D\u0937' ],
+ [ '\\*', '\u0936\u094D\u0930' ],
+ [ '\\(', '\u200D' ],
+ [ '\\)', '\u200C' ] ],
patterns_x: [
- ['F', '\u090C'],
- ['\\>', '\u093D'],
- ['\\=', '\u0944'],
- ['X', '\u0950'],
- ['e', '\u0951'],
- ['d', '\u0952'],
- ['\\+', '\u0960'],
- ['R', '\u0961'],
- ['f', '\u0962'],
- ['r', '\u0963'],
- ['\\.', '\u0965'],
- [',', '\u0970'],
- ['\\$', '\u20B9']]
+ [ 'F', '\u090C' ],
+ [ '\\>', '\u093D' ],
+ [ '\\=', '\u0944' ],
+ [ 'X', '\u0950' ],
+ [ 'e', '\u0951' ],
+ [ 'd', '\u0952' ],
+ [ '\\+', '\u0960' ],
+ [ 'R', '\u0961' ],
+ [ 'f', '\u0962' ],
+ [ 'r', '\u0963' ],
+ [ '\\.', '\u0965' ],
+ [ ',', '\u0970' ],
+ [ '\\$', '\u20B9' ] ]
};
$.ime.register( mrInScript );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mr/mr-inscript2.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mr/mr-inscript2.js
index 9c2dde86..97b19773 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mr/mr-inscript2.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mr/mr-inscript2.js
@@ -10,110 +10,110 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['\\!', 'ॲ'],
- ['1', '१'],
- ['\\@', 'ॅ'],
- ['2', '२'],
- ['\\#', '्र'],
- ['3', '३'],
- ['\\$', 'र्'],
- ['4', '४'],
- ['5', '५'],
- ['6', '६'],
- ['7', '७'],
- ['8', '८'],
- ['\\(', '('],
- ['9', '९'],
- ['\\]', ']'],
- ['0', '०'],
- ['\\_', 'ः'],
- ['\\-', '-'],
- ['\\+', 'ऋ'],
- ['\\=', 'ृ'],
- ['Q', 'औ'],
- ['q', 'ौ'],
- ['W', 'ऐ'],
- ['w', 'ै'],
- ['E', 'आ'],
- ['e', 'ा'],
- ['R', 'ई'],
- ['r', 'ी'],
- ['T', 'ऊ'],
- ['t', 'ू'],
- ['Y', 'भ'],
- ['y', 'ब'],
- ['U', 'ङ'],
- ['u', 'ह'],
- ['I', 'घ'],
- ['i', 'ग'],
- ['O', 'ध'],
- ['o', 'द'],
- ['P', 'झ'],
- ['p', 'ज'],
- ['\\{', 'ढ'],
- ['\\[', 'ड'],
- ['\\}', 'ञ'],
- ['\\]', '़'],
- ['A', 'ओ'],
- ['a', 'ो'],
- ['S', 'ए'],
- ['s', 'े'],
- ['D', 'अ'],
- ['d', '्'],
- ['F', 'इ'],
- ['f', 'ि'],
- ['G', 'उ'],
- ['g', 'ु'],
- ['H', 'फ'],
- ['h', 'प'],
- ['J', 'ऱ'],
- ['j', 'र'],
- ['K', 'ख'],
- ['k', 'क'],
- ['L', 'थ'],
- ['l', 'त'],
- [':', 'छ'],
- [';', 'च'],
- ['"', 'ठ'],
- ['\\\'', 'ट'],
- ['\\~', 'ऒ'],
- ['\\`', 'ॊ'],
- ['X', 'ँ'],
- ['x', 'ं'],
- ['C', 'ण'],
- ['c', 'म'],
- ['v', 'न'],
- ['b', 'व'],
- ['N', 'ळ'],
- ['n', 'ल'],
- ['M', 'श'],
- ['m', 'स'],
- ['\\<', 'ष'],
- [',', ','],
- ['\\>', '।'],
- ['\\.', '.'],
- ['/', 'य'],
- ['\\%', 'ज्ञ'],
- ['\\^', 'त्र'],
- ['\\&', 'क्ष'],
- ['\\*', 'श्र']
+ [ '\\!', 'ॲ' ],
+ [ '1', '१' ],
+ [ '\\@', 'ॅ' ],
+ [ '2', '२' ],
+ [ '\\#', '्र' ],
+ [ '3', '३' ],
+ [ '\\$', 'र्' ],
+ [ '4', '४' ],
+ [ '5', '५' ],
+ [ '6', '६' ],
+ [ '7', '७' ],
+ [ '8', '८' ],
+ [ '\\(', '(' ],
+ [ '9', '९' ],
+ [ '\\]', ']' ],
+ [ '0', '०' ],
+ [ '\\_', 'ः' ],
+ [ '\\-', '-' ],
+ [ '\\+', 'ऋ' ],
+ [ '\\=', 'ृ' ],
+ [ 'Q', 'औ' ],
+ [ 'q', 'ौ' ],
+ [ 'W', 'ऐ' ],
+ [ 'w', 'ै' ],
+ [ 'E', 'आ' ],
+ [ 'e', 'ा' ],
+ [ 'R', 'ई' ],
+ [ 'r', 'ी' ],
+ [ 'T', 'ऊ' ],
+ [ 't', 'ू' ],
+ [ 'Y', 'भ' ],
+ [ 'y', 'ब' ],
+ [ 'U', 'ङ' ],
+ [ 'u', 'ह' ],
+ [ 'I', 'घ' ],
+ [ 'i', 'ग' ],
+ [ 'O', 'ध' ],
+ [ 'o', 'द' ],
+ [ 'P', 'झ' ],
+ [ 'p', 'ज' ],
+ [ '\\{', 'ढ' ],
+ [ '\\[', 'ड' ],
+ [ '\\}', 'ञ' ],
+ [ '\\]', '़' ],
+ [ 'A', 'ओ' ],
+ [ 'a', 'ो' ],
+ [ 'S', 'ए' ],
+ [ 's', 'े' ],
+ [ 'D', 'अ' ],
+ [ 'd', '्' ],
+ [ 'F', 'इ' ],
+ [ 'f', 'ि' ],
+ [ 'G', 'उ' ],
+ [ 'g', 'ु' ],
+ [ 'H', 'फ' ],
+ [ 'h', 'प' ],
+ [ 'J', 'ऱ' ],
+ [ 'j', 'र' ],
+ [ 'K', 'ख' ],
+ [ 'k', 'क' ],
+ [ 'L', 'थ' ],
+ [ 'l', 'त' ],
+ [ ':', 'छ' ],
+ [ ';', 'च' ],
+ [ '"', 'ठ' ],
+ [ '\\\'', 'ट' ],
+ [ '\\~', 'ऒ' ],
+ [ '\\`', 'ॊ' ],
+ [ 'X', 'ँ' ],
+ [ 'x', 'ं' ],
+ [ 'C', 'ण' ],
+ [ 'c', 'म' ],
+ [ 'v', 'न' ],
+ [ 'b', 'व' ],
+ [ 'N', 'ळ' ],
+ [ 'n', 'ल' ],
+ [ 'M', 'श' ],
+ [ 'm', 'स' ],
+ [ '\\<', 'ष' ],
+ [ ',', ',' ],
+ [ '\\>', '।' ],
+ [ '\\.', '.' ],
+ [ '/', 'य' ],
+ [ '\\%', 'ज्ञ' ],
+ [ '\\^', 'त्र' ],
+ [ '\\&', 'क्ष' ],
+ [ '\\*', 'श्र' ]
],
patterns_x: [
- ['1', '\u200d'],
- ['2', '\u200c'],
- ['4', '₹'],
- ['\\+', 'ॠ'],
- ['\\=', 'ॄ'],
- ['e', '॑'],
- ['R', 'ॡ'],
- ['r', 'ॣ'],
- ['d', '॒'],
- ['F', 'ऌ'],
- ['f', 'ॢ'],
- ['X', 'ॐ'],
- [',', '॰'],
- ['\\>', 'ऽ'],
- ['\\.', '॥']
+ [ '1', '\u200d' ],
+ [ '2', '\u200c' ],
+ [ '4', '₹' ],
+ [ '\\+', 'ॠ' ],
+ [ '\\=', 'ॄ' ],
+ [ 'e', '॑' ],
+ [ 'R', 'ॡ' ],
+ [ 'r', 'ॣ' ],
+ [ 'd', '॒' ],
+ [ 'F', 'ऌ' ],
+ [ 'f', 'ॢ' ],
+ [ 'X', 'ॐ' ],
+ [ ',', '॰' ],
+ [ '\\>', 'ऽ' ],
+ [ '\\.', '॥' ]
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mr/mr-phonetic.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mr/mr-phonetic.js
index f6fd4cf4..0c504fab 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mr/mr-phonetic.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mr/mr-phonetic.js
@@ -10,99 +10,99 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['्f', '्\u200c'],
- ['~', 'ऎ'],
- ['`', 'ॆ'],
- ['!', 'ऍ'],
- ['1', '१'],
- ['\\@","ॅ'],
- ['2', '२'],
- ['\\#', 'ऑ'],
- ['3', '३'],
- ['\\$', 'ॉ'],
- ['4', '४'],
- ['\\%', 'ञ'],
- ['5', '५'],
- ['6', '६'],
- ['7', '७'],
- ['8', '८'],
- ['\\(', '('],
- ['9', '९'],
- ['\\)', ')'],
- ['0', '०'],
- ['\\_', '_'],
- ['\\-', '-'],
- ['\\+', '+'],
- ['\\=', '='],
- ['Q', 'औ'],
- ['q', 'ओ'],
- ['W', 'ठ'],
- ['w', 'ट'],
- ['E', 'ै'],
- ['e', 'े'],
- ['R', 'ृ'],
- ['r', 'र'],
- ['T', 'थ'],
- ['t', 'त'],
- ['Y', 'य़'],
- ['y', 'य'],
- ['U', 'ू'],
- ['u', 'ु'],
- ['I', 'ी'],
- ['i', 'ि'],
- ['O', 'ौ'],
- ['o', 'ो'],
- ['P', 'फ'],
- ['p', 'प'],
- ['\\{', 'ढ'],
- ['\\[', 'ड'],
- ['\\}', 'ऱ'],
- ['\\]', 'ऋ'],
- ['A', 'आ'],
- ['a', 'ा'],
- ['S', 'श'],
- ['s', 'स'],
- ['D', 'ध'],
- ['d', 'द'],
- ['F', 'अ'],
- ['f', '्'],
- ['G', 'घ'],
- ['g', 'ग'],
- ['H', 'ः'],
- ['h', 'ह'],
- ['J', 'झ'],
- ['j', 'ज'],
- ['K', 'ख'],
- ['k', 'क'],
- ['L', 'ळ'],
- ['l', 'ल'],
- [':', 'ई'],
- [';', 'इ'],
- ['\"', 'ऊ'],
- ['\'', 'उ'],
- ['\\|', 'ऒ'],
- ['\\\\', 'ॊ'],
- ['Z', 'ँ'],
- ['z', 'ङ'],
- ['x', 'ष'],
- ['C', 'छ'],
- ['c', 'च'],
- ['V', 'ऴ'],
- ['v', 'व'],
- ['B', 'भ'],
- ['b', 'ब'],
- ['N', 'ण'],
- ['n', 'न'],
- ['M', 'ं'],
- ['m', 'म'],
- ['\\<', 'ऩ'],
- [',', ','],
- ['\\>', '़'],
- ['\\?', 'ऐ'],
- ['/', 'ए'],
- ['\\^', 'ज्ञ'],
- ['X', 'क्ष'],
- ['\\*', 'श्र']
+ [ '्f', '्\u200c' ],
+ [ '~', 'ऎ' ],
+ [ '`', 'ॆ' ],
+ [ '!', 'ऍ' ],
+ [ '1', '१' ],
+ [ '\\@","ॅ' ],
+ [ '2', '२' ],
+ [ '\\#', 'ऑ' ],
+ [ '3', '३' ],
+ [ '\\$', 'ॉ' ],
+ [ '4', '४' ],
+ [ '\\%', 'ञ' ],
+ [ '5', '५' ],
+ [ '6', '६' ],
+ [ '7', '७' ],
+ [ '8', '८' ],
+ [ '\\(', '(' ],
+ [ '9', '९' ],
+ [ '\\)', ')' ],
+ [ '0', '०' ],
+ [ '\\_', '_' ],
+ [ '\\-', '-' ],
+ [ '\\+', '+' ],
+ [ '\\=', '=' ],
+ [ 'Q', 'औ' ],
+ [ 'q', 'ओ' ],
+ [ 'W', 'ठ' ],
+ [ 'w', 'ट' ],
+ [ 'E', 'ै' ],
+ [ 'e', 'े' ],
+ [ 'R', 'ृ' ],
+ [ 'r', 'र' ],
+ [ 'T', 'थ' ],
+ [ 't', 'त' ],
+ [ 'Y', 'य़' ],
+ [ 'y', 'य' ],
+ [ 'U', 'ू' ],
+ [ 'u', 'ु' ],
+ [ 'I', 'ी' ],
+ [ 'i', 'ि' ],
+ [ 'O', 'ौ' ],
+ [ 'o', 'ो' ],
+ [ 'P', 'फ' ],
+ [ 'p', 'प' ],
+ [ '\\{', 'ढ' ],
+ [ '\\[', 'ड' ],
+ [ '\\}', 'ऱ' ],
+ [ '\\]', 'ऋ' ],
+ [ 'A', 'आ' ],
+ [ 'a', 'ा' ],
+ [ 'S', 'श' ],
+ [ 's', 'स' ],
+ [ 'D', 'ध' ],
+ [ 'd', 'द' ],
+ [ 'F', 'अ' ],
+ [ 'f', '्' ],
+ [ 'G', 'घ' ],
+ [ 'g', 'ग' ],
+ [ 'H', 'ः' ],
+ [ 'h', 'ह' ],
+ [ 'J', 'झ' ],
+ [ 'j', 'ज' ],
+ [ 'K', 'ख' ],
+ [ 'k', 'क' ],
+ [ 'L', 'ळ' ],
+ [ 'l', 'ल' ],
+ [ ':', 'ई' ],
+ [ ';', 'इ' ],
+ [ '\"', 'ऊ' ],
+ [ '\'', 'उ' ],
+ [ '\\|', 'ऒ' ],
+ [ '\\\\', 'ॊ' ],
+ [ 'Z', 'ँ' ],
+ [ 'z', 'ङ' ],
+ [ 'x', 'ष' ],
+ [ 'C', 'छ' ],
+ [ 'c', 'च' ],
+ [ 'V', 'ऴ' ],
+ [ 'v', 'व' ],
+ [ 'B', 'भ' ],
+ [ 'b', 'ब' ],
+ [ 'N', 'ण' ],
+ [ 'n', 'न' ],
+ [ 'M', 'ं' ],
+ [ 'm', 'म' ],
+ [ '\\<', 'ऩ' ],
+ [ ',', ',' ],
+ [ '\\>', '़' ],
+ [ '\\?', 'ऐ' ],
+ [ '/', 'ए' ],
+ [ '\\^', 'ज्ञ' ],
+ [ 'X', 'क्ष' ],
+ [ '\\*', 'श्र' ]
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mr/mr-transliteration.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mr/mr-transliteration.js
index db772072..2ddfc7e8 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mr/mr-transliteration.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mr/mr-transliteration.js
@@ -12,135 +12,135 @@
contextLength: 2,
maxKeyLength: 4,
patterns: [
- ['च्h', 'c', 'च्'], // ch
- ['च्h', 'ch', 'छ्'], // chh
+ [ 'च्h', 'c', 'च्' ], // ch
+ [ 'च्h', 'ch', 'छ्' ], // chh
- ['\\\\([A-Za-z\\>_~0-9])', '\\\\', '$1'],
+ [ '\\\\([A-Za-z\\>_~0-9])', '\\\\', '$1' ],
- ['([क-ह]़?)्a', '$1'],
- ['([क-ह]़?)्A', '$1ा'],
- ['([क-ह]़?)a', '$1ा'],
- ['([क-ह]़?)्i', '$1ि'],
- ['([क-ह]़?)(्I|िi|ेe)', '$1ी'],
- ['([क-ह]़?)्u', '$1ु'],
- ['([क-ह]़?)(ुu|्U|ोo)', '$1ू'],
- ['([क-ह]़?)्R', '$1ृ'],
- ['([क-ह]़?)ृR', '$1ॄ'],
- ['([क-ह]़?)्ळ्l', '$1ॢ'],
- ['([क-ह]़?)ॢl', '$1ॣ'],
- ['([क-ह]़?)े\\^', '$1ॅ'],
- ['([क-ह]़?)्e', '$1े'],
- ['([क-ह]़?)्E', '$1ॅ'],
- ['([क-ह]़?)ो\\^', '$1ॉ'],
- ['([क-ह]़?)i', '$1ै'],
- ['([क-ह]़?)्o', '$1ो'],
- ['([क-ह]़?)्O', '$1ॉ'],
- ['([क-ह]़?)u', '$1ौ'],
- ['([क-ह])्\\`', '$1़्'],
- ['([क-ह])ॉM', '$1ाँ'],
+ [ '([क-ह]़?)्a', '$1' ],
+ [ '([क-ह]़?)्A', '$1ा' ],
+ [ '([क-ह]़?)a', '$1ा' ],
+ [ '([क-ह]़?)्i', '$1ि' ],
+ [ '([क-ह]़?)(्I|िi|ेe)', '$1ी' ],
+ [ '([क-ह]़?)्u', '$1ु' ],
+ [ '([क-ह]़?)(ुu|्U|ोo)', '$1ू' ],
+ [ '([क-ह]़?)्R', '$1ृ' ],
+ [ '([क-ह]़?)ृR', '$1ॄ' ],
+ [ '([क-ह]़?)्ळ्l', '$1ॢ' ],
+ [ '([क-ह]़?)ॢl', '$1ॣ' ],
+ [ '([क-ह]़?)े\\^', '$1ॅ' ],
+ [ '([क-ह]़?)्e', '$1े' ],
+ [ '([क-ह]़?)्E', '$1ॅ' ],
+ [ '([क-ह]़?)ो\\^', '$1ॉ' ],
+ [ '([क-ह]़?)i', '$1ै' ],
+ [ '([क-ह]़?)्o', '$1ो' ],
+ [ '([क-ह]़?)्O', '$1ॉ' ],
+ [ '([क-ह]़?)u', '$1ौ' ],
+ [ '([क-ह])्\\`', '$1़्' ],
+ [ '([क-ह])ॉM', '$1ाँ' ],
- ['आऊM', 'ॐ'], // AUM (OM)
+ [ 'आऊM', 'ॐ' ], // AUM (OM)
- ['(द्न्y|ग्ग्y|ज्ज्n)', 'ज्ञ्'], // dny, ggy or jjn
+ [ '(द्न्y|ग्ग्y|ज्ज्n)', 'ज्ञ्' ], // dny, ggy or jjn
- ['र्र्y', 'ऱ्य्'], // rry
- ['र्र्h', 'ऱ्ह्'], // rrh
+ [ 'र्र्y', 'ऱ्य्' ], // rry
+ [ 'र्र्h', 'ऱ्ह्' ], // rrh
- ['अa', 'आ'],
- ['(ऒo|उu)', 'ऊ'],
- ['ए\\^', 'ऍ'],
- ['अi', 'ऐ'],
- ['(अ\\^|E)', 'ॲ'],
- ['(इi|एe)', 'ई'],
- ['ऒ\\^', 'ऑ'],
- ['अu', 'औ'],
- ['ऋR', 'ॠ'],
- ['ळ्l', 'ऌ'],
- ['ऌl', 'ॡ'],
- ['ंM', 'ँ'],
+ [ 'अa', 'आ' ],
+ [ '(ऒo|उu)', 'ऊ' ],
+ [ 'ए\\^', 'ऍ' ],
+ [ 'अi', 'ऐ' ],
+ [ '(अ\\^|E)', 'ॲ' ],
+ [ '(इi|एe)', 'ई' ],
+ [ 'ऒ\\^', 'ऑ' ],
+ [ 'अu', 'औ' ],
+ [ 'ऋR', 'ॠ' ],
+ [ 'ळ्l', 'ऌ' ],
+ [ 'ऌl', 'ॡ' ],
+ [ 'ंM', 'ँ' ],
- ['र्Y', 'ऱ्य्'],
+ [ 'र्Y', 'ऱ्य्' ],
- ['क्h', 'ख्'], //kh
- ['ग्h', 'घ्'],
- ['न्g', 'ङ्'],
- ['ज्h', 'झ्'],
- ['न्j', 'ञ्'],
- ['ट्h', 'ठ्'],
- ['ड्h', 'ढ्'],
- ['त्h', 'थ्'],
- ['द्h', 'ध्'],
- ['(f|प्h)', 'फ्'],
- ['ब्h', 'भ्'],
- ['ऋi', 'ॠ'], // Ri
- ['ऋl', 'ॡ'], // Rl
+ [ 'क्h', 'ख्' ], // kh
+ [ 'ग्h', 'घ्' ],
+ [ 'न्g', 'ङ्' ],
+ [ 'ज्h', 'झ्' ],
+ [ 'न्j', 'ञ्' ],
+ [ 'ट्h', 'ठ्' ],
+ [ 'ड्h', 'ढ्' ],
+ [ 'त्h', 'थ्' ],
+ [ 'द्h', 'ध्' ],
+ [ '(f|प्h)', 'फ्' ],
+ [ 'ब्h', 'भ्' ],
+ [ 'ऋi', 'ॠ' ], // Ri
+ [ 'ऋl', 'ॡ' ], // Rl
- ['स्h', 'श्'],
- ['श्h', 'ष्'],
- ['क़्h', 'ख़्'],
- ['ज़्h', 'ऴ्'],
- ['।\\\\', '॥'],
+ [ 'स्h', 'श्' ],
+ [ 'श्h', 'ष्' ],
+ [ 'क़्h', 'ख़्' ],
+ [ 'ज़्h', 'ऴ्' ],
+ [ '।\\\\', '॥' ],
- ['a', 'अ'],
- ['b', 'ब्'],
- ['c', 'च्'],
- ['d', 'द्'],
- ['e', 'ए'],
- ['g', 'ग्'],
- ['h', 'ह्'],
- ['i', 'इ'],
- ['j', 'ज्'],
- ['k', 'क्'],
- ['l', 'ल्'],
- ['m', 'म्'],
- ['n', 'न्'],
- ['o', 'ओ'],
- ['p', 'प्'],
- ['q', 'क़्'],
- ['r', 'र्'],
- ['s', 'स्'],
- ['t', 'त्'],
- ['u', 'उ'],
- ['(v|w)', 'व्'],
- ['x', 'क्ष्'],
- ['y', 'य्'],
- ['(z|Z)', 'झ्'],
- ['A', 'आ'],
- ['B', 'ब्ब्'],
- ['C', 'क्क्'],
- ['D', 'ड्'],
- ['G', 'ग्ग्'],
- ['H', 'ः'],
- ['I', 'ई'],
- ['J', 'ज्ज्'],
- ['K', 'क्क्'],
- ['L', 'ळ्'],
- ['M', 'ं'],
- ['N', 'ण्'],
- ['O', 'ऑ'],
- ['P', 'प्प्'],
- ['R', 'ऋ'],
- ['S', 'श्'],
- ['T', 'ट्'],
- ['U', 'ऊ'],
- ['(V|W)', 'व्व्'],
- ['X', 'क्ष्'],
- ['Y', 'य्य्'],
- ['0', '०'],
- ['1', '१'],
- ['2', '२'],
- ['3', '३'],
- ['4', '४'],
- ['5', '५'],
- ['6', '६'],
- ['7', '७'],
- ['8', '८'],
- ['9', '९'],
- ['~', '्'],
- ['\\\\.', '।'], // Danda
- ['//', 'ऽ'],
- ['\\`', '़'],
- ['(\u200C)*_', '\u200c']]
+ [ 'a', 'अ' ],
+ [ 'b', 'ब्' ],
+ [ 'c', 'च्' ],
+ [ 'd', 'द्' ],
+ [ 'e', 'ए' ],
+ [ 'g', 'ग्' ],
+ [ 'h', 'ह्' ],
+ [ 'i', 'इ' ],
+ [ 'j', 'ज्' ],
+ [ 'k', 'क्' ],
+ [ 'l', 'ल्' ],
+ [ 'm', 'म्' ],
+ [ 'n', 'न्' ],
+ [ 'o', 'ओ' ],
+ [ 'p', 'प्' ],
+ [ 'q', 'क़्' ],
+ [ 'r', 'र्' ],
+ [ 's', 'स्' ],
+ [ 't', 'त्' ],
+ [ 'u', 'उ' ],
+ [ '(v|w)', 'व्' ],
+ [ 'x', 'क्ष्' ],
+ [ 'y', 'य्' ],
+ [ '(z|Z)', 'झ्' ],
+ [ 'A', 'आ' ],
+ [ 'B', 'ब्ब्' ],
+ [ 'C', 'क्क्' ],
+ [ 'D', 'ड्' ],
+ [ 'G', 'ग्ग्' ],
+ [ 'H', 'ः' ],
+ [ 'I', 'ई' ],
+ [ 'J', 'ज्ज्' ],
+ [ 'K', 'क्क्' ],
+ [ 'L', 'ळ्' ],
+ [ 'M', 'ं' ],
+ [ 'N', 'ण्' ],
+ [ 'O', 'ऑ' ],
+ [ 'P', 'प्प्' ],
+ [ 'R', 'ऋ' ],
+ [ 'S', 'श्' ],
+ [ 'T', 'ट्' ],
+ [ 'U', 'ऊ' ],
+ [ '(V|W)', 'व्व्' ],
+ [ 'X', 'क्ष्' ],
+ [ 'Y', 'य्य्' ],
+ [ '0', '०' ],
+ [ '1', '१' ],
+ [ '2', '२' ],
+ [ '3', '३' ],
+ [ '4', '४' ],
+ [ '5', '५' ],
+ [ '6', '६' ],
+ [ '7', '७' ],
+ [ '8', '८' ],
+ [ '9', '९' ],
+ [ '~', '्' ],
+ [ '\\\\.', '।' ], // Danda
+ [ '//', 'ऽ' ],
+ [ '\\`', '़' ],
+ [ '(\u200C)*_', '\u200c' ] ]
};
$.ime.register( mrTransliteration );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/my/my-xkb.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/my/my-xkb.js
index 8c128b6c..6ce086de 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/my/my-xkb.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/my/my-xkb.js
@@ -11,198 +11,198 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['`', '\u1050'],
- ['\\~', '\u100e'],
- ['1', '\u1041'],
- ['\\!', '\u100D'],
- ['2', '\u1042'],
- ['\\@', '\u1052'],
- ['3', '\u1043'],
- ['\\#', '\u100B'],
- ['4', '\u1044'],
- ['\\$', '\u1053'],
- ['5', '\u1045'],
- ['\\%', '\u1054'],
- ['6', '\u1046'],
- ['\\^', '\u1055'],
- ['7', '\u1047'],
- ['\\&', '\u101B'],
- ['8', '\u1048'],
- ['\\*', '\u002A'],
- ['9', '\u1049'],
- ['\\(', '('],
- ['0', '\u1040'],
- ['\\)', ')'],
+ [ '`', '\u1050' ],
+ [ '\\~', '\u100e' ],
+ [ '1', '\u1041' ],
+ [ '\\!', '\u100D' ],
+ [ '2', '\u1042' ],
+ [ '\\@', '\u1052' ],
+ [ '3', '\u1043' ],
+ [ '\\#', '\u100B' ],
+ [ '4', '\u1044' ],
+ [ '\\$', '\u1053' ],
+ [ '5', '\u1045' ],
+ [ '\\%', '\u1054' ],
+ [ '6', '\u1046' ],
+ [ '\\^', '\u1055' ],
+ [ '7', '\u1047' ],
+ [ '\\&', '\u101B' ],
+ [ '8', '\u1048' ],
+ [ '\\*', '\u002A' ],
+ [ '9', '\u1049' ],
+ [ '\\(', '(' ],
+ [ '0', '\u1040' ],
+ [ '\\)', ')' ],
- ['q', '\u1006'],
- ['Q', '\u1008'],
- ['w', '\u1010'],
- ['W', '\u101D'],
- ['e', '\u1014'],
- ['E', '\u1023'],
- ['r', '\u1019'],
- ['R', '\u104E'],
- ['t', '\u1021'],
- ['T', '\u1024'],
- ['y', '\u1015'],
- ['Y', '\u104C'],
- ['u', '\u1000'],
- ['U', '\u1025'],
- ['i', '\u1004'],
- ['I', '\u104D'],
- ['o', '\u101E'],
- ['O', '\u103F'],
- ['p', '\u1005'],
- ['P', '\u100F'],
- ['\\[', '\u101F'],
- ['\\{', '\u1027'],
- ['\\]', '\u1029'],
- ['\\}', '\u102A'],
+ [ 'q', '\u1006' ],
+ [ 'Q', '\u1008' ],
+ [ 'w', '\u1010' ],
+ [ 'W', '\u101D' ],
+ [ 'e', '\u1014' ],
+ [ 'E', '\u1023' ],
+ [ 'r', '\u1019' ],
+ [ 'R', '\u104E' ],
+ [ 't', '\u1021' ],
+ [ 'T', '\u1024' ],
+ [ 'y', '\u1015' ],
+ [ 'Y', '\u104C' ],
+ [ 'u', '\u1000' ],
+ [ 'U', '\u1025' ],
+ [ 'i', '\u1004' ],
+ [ 'I', '\u104D' ],
+ [ 'o', '\u101E' ],
+ [ 'O', '\u103F' ],
+ [ 'p', '\u1005' ],
+ [ 'P', '\u100F' ],
+ [ '\\[', '\u101F' ],
+ [ '\\{', '\u1027' ],
+ [ '\\]', '\u1029' ],
+ [ '\\}', '\u102A' ],
- ['\\\\', '\u104F'],
- ['\\|', '\u1051'],
+ [ '\\\\', '\u104F' ],
+ [ '\\|', '\u1051' ],
- ['a', '\u1031'],
- ['A', '\u1017'],
- ['s', '\u103B'],
- ['S', '\u103E'],
- ['d', '\u102D'],
- ['D', '\u102E'],
- ['f', '\u103A'],
- ['F', '\u1039'],
- ['g', '\u102B'],
- ['G', '\u103D'],
- ['h', '\u1037'],
- ['H', '\u1036'],
- ['j', '\u103C'],
- ['J', '\u1032'],
- ['k', '\u102F'],
- ['K', '\u1012'],
- ['l', '\u1030'],
- ['L', '\u1013'],
+ [ 'a', '\u1031' ],
+ [ 'A', '\u1017' ],
+ [ 's', '\u103B' ],
+ [ 'S', '\u103E' ],
+ [ 'd', '\u102D' ],
+ [ 'D', '\u102E' ],
+ [ 'f', '\u103A' ],
+ [ 'F', '\u1039' ],
+ [ 'g', '\u102B' ],
+ [ 'G', '\u103D' ],
+ [ 'h', '\u1037' ],
+ [ 'H', '\u1036' ],
+ [ 'j', '\u103C' ],
+ [ 'J', '\u1032' ],
+ [ 'k', '\u102F' ],
+ [ 'K', '\u1012' ],
+ [ 'l', '\u1030' ],
+ [ 'L', '\u1013' ],
- [';', '\u1038'],
- [':', '\u1002'],
+ [ ';', '\u1038' ],
+ [ ':', '\u1002' ],
- ['\'', '\''],
- ['\"', '"'],
+ [ '\'', '\'' ],
+ [ '\"', '"' ],
- ['z', '\u1016'],
- ['Z', '\u1007'],
- ['x', '\u1011'],
- ['X', '\u100C'],
- ['c', '\u1001'],
- ['C', '\u1003'],
- ['v', '\u101C'],
- ['V', '\u1020'],
- ['b', '\u1018'],
- ['B', '\u101A'],
- ['n', '\u100A'],
- ['N', '\u1009'],
- ['m', '\u102C'],
- ['M', '\u1026'],
+ [ 'z', '\u1016' ],
+ [ 'Z', '\u1007' ],
+ [ 'x', '\u1011' ],
+ [ 'X', '\u100C' ],
+ [ 'c', '\u1001' ],
+ [ 'C', '\u1003' ],
+ [ 'v', '\u101C' ],
+ [ 'V', '\u1020' ],
+ [ 'b', '\u1018' ],
+ [ 'B', '\u101A' ],
+ [ 'n', '\u100A' ],
+ [ 'N', '\u1009' ],
+ [ 'm', '\u102C' ],
+ [ 'M', '\u1026' ],
- [',', ','],
- ['\\<', '\u104A'],
- ['\\.', '.'],
- ['\\>', '\u104B'],
- ['/', '/'],
- ['\\?', '?']
+ [ ',', ',' ],
+ [ '\\<', '\u104A' ],
+ [ '\\.', '.' ],
+ [ '\\>', '\u104B' ],
+ [ '/', '/' ],
+ [ '\\?', '?' ]
],
patterns_x: [
- ['`', '`'],
- ['\\~', '~'],
- ['1', '1'],
- ['\\!', '!'],
- ['2', '2'],
- ['\\@', '@'],
- ['3', '3'],
- ['\\#', '#'],
- ['4', '4'],
- ['\\$', '$'],
- ['5', '5'],
- ['\\%', '%'],
- ['6', '6'],
- ['\\^', '^'],
- ['7', '7'],
- ['\\&', '&'],
- ['8', '8'],
- ['\\*', '*'],
- ['9', '9'],
- ['\\(', '('],
- ['0', '0'],
- ['\\)', ')'],
- ['\\-', '-'],
- ['\\_', '_'],
- ['\\=', '='],
- ['\\+', '+'],
+ [ '`', '`' ],
+ [ '\\~', '~' ],
+ [ '1', '1' ],
+ [ '\\!', '!' ],
+ [ '2', '2' ],
+ [ '\\@', '@' ],
+ [ '3', '3' ],
+ [ '\\#', '#' ],
+ [ '4', '4' ],
+ [ '\\$', '$' ],
+ [ '5', '5' ],
+ [ '\\%', '%' ],
+ [ '6', '6' ],
+ [ '\\^', '^' ],
+ [ '7', '7' ],
+ [ '\\&', '&' ],
+ [ '8', '8' ],
+ [ '\\*', '*' ],
+ [ '9', '9' ],
+ [ '\\(', '(' ],
+ [ '0', '0' ],
+ [ '\\)', ')' ],
+ [ '\\-', '-' ],
+ [ '\\_', '_' ],
+ [ '\\=', '=' ],
+ [ '\\+', '+' ],
- ['q', 'q'],
- ['Q', 'Q'],
- ['w', 'w'],
- ['W', 'W'],
- ['e', 'e'],
- ['E', 'E'],
- ['r', 'r'],
- ['R', 'R'],
- ['t', 't'],
- ['T', 'T'],
- ['y', 'y'],
- ['Y', 'Y'],
- ['u', 'u'],
- ['U', 'U'],
- ['i', 'i'],
- ['I', 'I'],
- ['o', 'o'],
- ['O', 'O'],
- ['p', 'p'],
- ['P', 'P'],
- ['a', 'a'],
- ['S', 'S'],
- ['s', 's'],
- ['S', 'S'],
- ['d', 'd'],
- ['D', 'D'],
- ['f', 'f'],
- ['F', 'F'],
- ['g', 'g'],
- ['G', 'G'],
- ['h', 'h'],
- ['H', 'H'],
- ['j', 'j'],
- ['J', 'J'],
- ['k', 'k'],
- ['K', 'K'],
- ['l', 'l'],
- ['L', 'L'],
- ['z', 'z'],
- ['Z', 'Z'],
- ['x', 'x'],
- ['X', 'X'],
- ['c', 'c'],
- ['C', 'C'],
- ['v', 'v'],
- ['V', 'V'],
- ['b', 'b'],
- ['B', 'B'],
- ['n', 'n'],
- ['N', 'N'],
- ['m', 'm'],
- ['M', 'M'],
- [',', ','],
- ['\\<', '<'],
- ['\\.', '.'],
- ['\\>', '>'],
- [';', ';'],
- [':', ':'],
- ['\'', '\''],
- ['"', '"'],
- ['\\[', '['],
- ['\\{', '{'],
- ['\\]', ']'],
- ['\\}', '}'],
- ['\\\\', '\\'],
- ['\\|', '|']]
+ [ 'q', 'q' ],
+ [ 'Q', 'Q' ],
+ [ 'w', 'w' ],
+ [ 'W', 'W' ],
+ [ 'e', 'e' ],
+ [ 'E', 'E' ],
+ [ 'r', 'r' ],
+ [ 'R', 'R' ],
+ [ 't', 't' ],
+ [ 'T', 'T' ],
+ [ 'y', 'y' ],
+ [ 'Y', 'Y' ],
+ [ 'u', 'u' ],
+ [ 'U', 'U' ],
+ [ 'i', 'i' ],
+ [ 'I', 'I' ],
+ [ 'o', 'o' ],
+ [ 'O', 'O' ],
+ [ 'p', 'p' ],
+ [ 'P', 'P' ],
+ [ 'a', 'a' ],
+ [ 'S', 'S' ],
+ [ 's', 's' ],
+ [ 'S', 'S' ],
+ [ 'd', 'd' ],
+ [ 'D', 'D' ],
+ [ 'f', 'f' ],
+ [ 'F', 'F' ],
+ [ 'g', 'g' ],
+ [ 'G', 'G' ],
+ [ 'h', 'h' ],
+ [ 'H', 'H' ],
+ [ 'j', 'j' ],
+ [ 'J', 'J' ],
+ [ 'k', 'k' ],
+ [ 'K', 'K' ],
+ [ 'l', 'l' ],
+ [ 'L', 'L' ],
+ [ 'z', 'z' ],
+ [ 'Z', 'Z' ],
+ [ 'x', 'x' ],
+ [ 'X', 'X' ],
+ [ 'c', 'c' ],
+ [ 'C', 'C' ],
+ [ 'v', 'v' ],
+ [ 'V', 'V' ],
+ [ 'b', 'b' ],
+ [ 'B', 'B' ],
+ [ 'n', 'n' ],
+ [ 'N', 'N' ],
+ [ 'm', 'm' ],
+ [ 'M', 'M' ],
+ [ ',', ',' ],
+ [ '\\<', '<' ],
+ [ '\\.', '.' ],
+ [ '\\>', '>' ],
+ [ ';', ';' ],
+ [ ':', ':' ],
+ [ '\'', '\'' ],
+ [ '"', '"' ],
+ [ '\\[', '[' ],
+ [ '\\{', '{' ],
+ [ '\\]', ']' ],
+ [ '\\}', '}' ],
+ [ '\\\\', '\\' ],
+ [ '\\|', '|' ] ]
};
$.ime.register( myXkb );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/nb/nb-normforms.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/nb/nb-normforms.js
index d11751a4..eb1c56a2 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/nb/nb-normforms.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/nb/nb-normforms.js
@@ -7,7 +7,7 @@
description: 'Norwegian input method with most common form transliterated',
date: '2012-12-04',
URL: 'http://www.evertype.com/alphabets/bokmaal-norwegian.pdf',
- //URL: 'http://www.evertype.com/alphabets/nynorsk-norwegian.pdf',
+ // URL: 'http://www.evertype.com/alphabets/nynorsk-norwegian.pdf',
author: 'John Erling Blad',
license: 'GPLv3',
version: '1.0',
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/nb/nb-tildeforms.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/nb/nb-tildeforms.js
index 83bdd181..392a8de4 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/nb/nb-tildeforms.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/nb/nb-tildeforms.js
@@ -7,11 +7,11 @@
description: 'Norwegian input method with initial tilde triggering transliteration',
date: '2012-12-04',
URL: 'http://www.evertype.com/alphabets/bokmaal-norwegian.pdf',
- //URL: 'http://www.evertype.com/alphabets/nynorsk-norwegian.pdf',
+ // URL: 'http://www.evertype.com/alphabets/nynorsk-norwegian.pdf',
author: 'John Erling Blad',
license: 'GPLv3',
version: '1.0',
- //contextLength: 1,
+ // contextLength: 1,
maxKeyLength: 3,
patterns: [
// Uses "~" as "approximatly similar to"
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ne/ne-inscript.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ne/ne-inscript.js
index 80a4af44..ca19befb 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ne/ne-inscript.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ne/ne-inscript.js
@@ -10,103 +10,103 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['X', 'ँ'],
- ['x', 'ं'],
- ['_', 'ः'],
- ['D', 'अ'],
- ['E', 'आ'],
- ['F', 'इ'],
- ['R', 'ई'],
- ['G', 'उ'],
- ['T', 'ऊ'],
- ['\\+', 'ृ'],
- ['S', 'ए'],
- ['W', 'ऐ'],
- ['A', 'ओ'],
- ['Q', 'औ'],
- ['k', 'क'],
- ['K', 'ख'],
- ['i', 'ग'],
- ['I', 'घ'],
- ['U', 'ङ'],
- ['\\;', 'च'],
- ['\\:', 'छ'],
- ['p', 'ज'],
- ['P', 'झ'],
- ['\\}', 'ञ'],
- ['\'', 'ट'],
- ['"', 'ठ'],
- ['\\[', '','ड'],
- ['\\{', '','ढ'],
- ['C', 'ण'],
- ['l', 'त'],
- ['L', 'थ'],
- ['o', 'द'],
- ['O', 'ध'],
- ['v', 'न'],
- ['h', 'प'],
- ['H', 'फ'],
- ['y', 'ब'],
- ['Y', 'भ'],
- ['c', 'म'],
- ['\\?', '','य'],
- ['j', 'र'],
- ['J', 'द्य'],
- ['n', 'ल'],
- ['N', 'ळ'],
- ['b', 'व'],
- ['M', 'श'],
- ['\\<', '','ष'],
- ['m', 'स'],
- ['u', 'ह'],
- ['\\]', '','़'],
- ['e', 'ा'],
- ['f', 'ि'],
- ['r', 'ी'],
- ['g', 'ु'],
- ['t', 'ू'],
- ['\\=', '','ृ'],
- ['\\\\', 'ॄ'],
- ['s', 'े'],
- ['w', 'ै'],
- ['a', 'ो'],
- ['q', 'ौ'],
- ['d', '्'],
- ['\\|', 'ॠ'],
- ['/', 'य'],
- ['\\>', '।'],
- ['0', '','०'],
- ['1', '','१'],
- ['2', '२'],
- ['3', '३'],
- ['4', '४'],
- ['5', '५'],
- ['6', '६'],
- ['7', '७'],
- ['8', '८'],
- ['9', '९'],
- ['\\@', 'ॅ'],
- ['\\#', '','्र'],
- ['\\$', '','र्'],
- ['\\%', '','ज्ञ'],
- ['\\^', '','त्र'],
- ['\\&', 'क्ष'],
- ['\\*', 'श्र'],
- ['\\(', '\u200D'],
- ['\\)', '\u200C'] ],
+ [ 'X', 'ँ' ],
+ [ 'x', 'ं' ],
+ [ '_', 'ः' ],
+ [ 'D', 'अ' ],
+ [ 'E', 'आ' ],
+ [ 'F', 'इ' ],
+ [ 'R', 'ई' ],
+ [ 'G', 'उ' ],
+ [ 'T', 'ऊ' ],
+ [ '\\+', 'ृ' ],
+ [ 'S', 'ए' ],
+ [ 'W', 'ऐ' ],
+ [ 'A', 'ओ' ],
+ [ 'Q', 'औ' ],
+ [ 'k', 'क' ],
+ [ 'K', 'ख' ],
+ [ 'i', 'ग' ],
+ [ 'I', 'घ' ],
+ [ 'U', 'ङ' ],
+ [ '\\;', 'च' ],
+ [ '\\:', 'छ' ],
+ [ 'p', 'ज' ],
+ [ 'P', 'झ' ],
+ [ '\\}', 'ञ' ],
+ [ '\'', 'ट' ],
+ [ '"', 'ठ' ],
+ [ '\\[', '','ड' ],
+ [ '\\{', '','ढ' ],
+ [ 'C', 'ण' ],
+ [ 'l', 'त' ],
+ [ 'L', 'थ' ],
+ [ 'o', 'द' ],
+ [ 'O', 'ध' ],
+ [ 'v', 'न' ],
+ [ 'h', 'प' ],
+ [ 'H', 'फ' ],
+ [ 'y', 'ब' ],
+ [ 'Y', 'भ' ],
+ [ 'c', 'म' ],
+ [ '\\?', '','य' ],
+ [ 'j', 'र' ],
+ [ 'J', 'द्य' ],
+ [ 'n', 'ल' ],
+ [ 'N', 'ळ' ],
+ [ 'b', 'व' ],
+ [ 'M', 'श' ],
+ [ '\\<', '','ष' ],
+ [ 'm', 'स' ],
+ [ 'u', 'ह' ],
+ [ '\\]', '','़' ],
+ [ 'e', 'ा' ],
+ [ 'f', 'ि' ],
+ [ 'r', 'ी' ],
+ [ 'g', 'ु' ],
+ [ 't', 'ू' ],
+ [ '\\=', '','ृ' ],
+ [ '\\\\', 'ॄ' ],
+ [ 's', 'े' ],
+ [ 'w', 'ै' ],
+ [ 'a', 'ो' ],
+ [ 'q', 'ौ' ],
+ [ 'd', '्' ],
+ [ '\\|', 'ॠ' ],
+ [ '/', 'य' ],
+ [ '\\>', '।' ],
+ [ '0', '','०' ],
+ [ '1', '','१' ],
+ [ '2', '२' ],
+ [ '3', '३' ],
+ [ '4', '४' ],
+ [ '5', '५' ],
+ [ '6', '६' ],
+ [ '7', '७' ],
+ [ '8', '८' ],
+ [ '9', '९' ],
+ [ '\\@', 'ॅ' ],
+ [ '\\#', '','्र' ],
+ [ '\\$', '','र्' ],
+ [ '\\%', '','ज्ञ' ],
+ [ '\\^', '','त्र' ],
+ [ '\\&', 'क्ष' ],
+ [ '\\*', 'श्र' ],
+ [ '\\(', '\u200D' ],
+ [ '\\)', '\u200C' ] ],
patterns_x: [
- ['F', 'ऌ'],
- ['\\>', '','ऽ'],
- ['X', 'ॐ'],
- ['e', '\u0951'],
- ['d', '\u0952'],
- ['R', 'ॡ'],
- ['f', 'ॢ'],
- ['r', 'ॣ'],
- ['\\.', '॥'],
- ['\\@', '','ॅ'],
- ['4', '₹']]
+ [ 'F', 'ऌ' ],
+ [ '\\>', '','ऽ' ],
+ [ 'X', 'ॐ' ],
+ [ 'e', '\u0951' ],
+ [ 'd', '\u0952' ],
+ [ 'R', 'ॡ' ],
+ [ 'f', 'ॢ' ],
+ [ 'r', 'ॣ' ],
+ [ '\\.', '॥' ],
+ [ '\\@', '','ॅ' ],
+ [ '4', '₹' ] ]
};
$.ime.register( neInScript );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ne/ne-inscript2.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ne/ne-inscript2.js
index 1d1d021f..d08f8030 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ne/ne-inscript2.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ne/ne-inscript2.js
@@ -10,106 +10,106 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['1', '१'],
- ['2', '२'],
- ['\\#', '्र'],
- ['3', '३'],
- ['\\$', 'र्'],
- ['4', '४'],
- ['5', '५'],
- ['6', '६'],
- ['7', '७'],
- ['8', '८'],
- ['\\(', '('],
- ['9', '९'],
- ['\\]', ']'],
- ['0', '०'],
- ['\\_', 'ः'],
- ['\\-', '-'],
- ['\\+', 'ऋ'],
- ['\\=', 'ृ'],
- ['Q', 'औ'],
- ['q', 'ौ'],
- ['W', 'ऐ'],
- ['w', 'ै'],
- ['E', 'आ'],
- ['e', 'ा'],
- ['R', 'ई'],
- ['r', 'ी'],
- ['T', 'ऊ'],
- ['t', 'ू'],
- ['Y', 'भ'],
- ['y', 'ब'],
- ['U', 'ङ'],
- ['u', 'ह'],
- ['I', 'घ'],
- ['i', 'ग'],
- ['O', 'ध'],
- ['o', 'द'],
- ['P', 'झ'],
- ['p', 'ज'],
- ['\\{', 'ढ'],
- ['\\[', 'ड'],
- ['\\}', 'ञ'],
- ['\\]', '़'],
- ['A', 'ओ'],
- ['a', 'ो'],
- ['S', 'ए'],
- ['s', 'े'],
- ['D', 'अ'],
- ['d', '्'],
- ['F', 'इ'],
- ['f', 'ि'],
- ['G', 'उ'],
- ['g', 'ु'],
- ['H', 'फ'],
- ['h', 'प'],
- ['J', 'ऱ'],
- ['j', 'र'],
- ['K', 'ख'],
- ['k', 'क'],
- ['L', 'थ'],
- ['l', 'त'],
- [':', 'छ'],
- [';', 'च'],
- ['"', 'ठ'],
- ['\\\'', 'ट'],
- ['X', 'ँ'],
- ['x', 'ं'],
- ['C', 'ण'],
- ['c', 'म'],
- ['v', 'न'],
- ['b', 'व'],
- ['N', 'ळ'],
- ['n', 'ल'],
- ['M', 'श'],
- ['m', 'स'],
- ['\\<', 'ष'],
- [',', ','],
- ['\\>', '।'],
- ['\\.', '.'],
- ['/', 'य'],
- ['\\%', 'ज्ञ'],
- ['\\^', 'त्र'],
- ['\\&', 'क्ष'],
- ['\\*', 'श्र']],
+ [ '1', '१' ],
+ [ '2', '२' ],
+ [ '\\#', '्र' ],
+ [ '3', '३' ],
+ [ '\\$', 'र्' ],
+ [ '4', '४' ],
+ [ '5', '५' ],
+ [ '6', '६' ],
+ [ '7', '७' ],
+ [ '8', '८' ],
+ [ '\\(', '(' ],
+ [ '9', '९' ],
+ [ '\\]', ']' ],
+ [ '0', '०' ],
+ [ '\\_', 'ः' ],
+ [ '\\-', '-' ],
+ [ '\\+', 'ऋ' ],
+ [ '\\=', 'ृ' ],
+ [ 'Q', 'औ' ],
+ [ 'q', 'ौ' ],
+ [ 'W', 'ऐ' ],
+ [ 'w', 'ै' ],
+ [ 'E', 'आ' ],
+ [ 'e', 'ा' ],
+ [ 'R', 'ई' ],
+ [ 'r', 'ी' ],
+ [ 'T', 'ऊ' ],
+ [ 't', 'ू' ],
+ [ 'Y', 'भ' ],
+ [ 'y', 'ब' ],
+ [ 'U', 'ङ' ],
+ [ 'u', 'ह' ],
+ [ 'I', 'घ' ],
+ [ 'i', 'ग' ],
+ [ 'O', 'ध' ],
+ [ 'o', 'द' ],
+ [ 'P', 'झ' ],
+ [ 'p', 'ज' ],
+ [ '\\{', 'ढ' ],
+ [ '\\[', 'ड' ],
+ [ '\\}', 'ञ' ],
+ [ '\\]', '़' ],
+ [ 'A', 'ओ' ],
+ [ 'a', 'ो' ],
+ [ 'S', 'ए' ],
+ [ 's', 'े' ],
+ [ 'D', 'अ' ],
+ [ 'd', '्' ],
+ [ 'F', 'इ' ],
+ [ 'f', 'ि' ],
+ [ 'G', 'उ' ],
+ [ 'g', 'ु' ],
+ [ 'H', 'फ' ],
+ [ 'h', 'प' ],
+ [ 'J', 'ऱ' ],
+ [ 'j', 'र' ],
+ [ 'K', 'ख' ],
+ [ 'k', 'क' ],
+ [ 'L', 'थ' ],
+ [ 'l', 'त' ],
+ [ ':', 'छ' ],
+ [ ';', 'च' ],
+ [ '"', 'ठ' ],
+ [ '\\\'', 'ट' ],
+ [ 'X', 'ँ' ],
+ [ 'x', 'ं' ],
+ [ 'C', 'ण' ],
+ [ 'c', 'म' ],
+ [ 'v', 'न' ],
+ [ 'b', 'व' ],
+ [ 'N', 'ळ' ],
+ [ 'n', 'ल' ],
+ [ 'M', 'श' ],
+ [ 'm', 'स' ],
+ [ '\\<', 'ष' ],
+ [ ',', ',' ],
+ [ '\\>', '।' ],
+ [ '\\.', '.' ],
+ [ '/', 'य' ],
+ [ '\\%', 'ज्ञ' ],
+ [ '\\^', 'त्र' ],
+ [ '\\&', 'क्ष' ],
+ [ '\\*', 'श्र' ] ],
patterns_x: [
- ['1', '\u200d'],
- ['2', '\u200c'],
- ['4', '₹'],
- ['\\+', 'ॠ'],
- ['\\=', 'ॄ'],
- ['e', '॑'],
- ['R', 'ॡ'],
- ['r', 'ॣ'],
- ['d', '॒'],
- ['F', 'ऌ'],
- ['f', 'ॢ'],
- ['X', 'ॐ'],
- ['x', 'ॱ'],
- [',', '॰'],
- ['\\>', 'ऽ'],
- ['\\.', '॥']]
+ [ '1', '\u200d' ],
+ [ '2', '\u200c' ],
+ [ '4', '₹' ],
+ [ '\\+', 'ॠ' ],
+ [ '\\=', 'ॄ' ],
+ [ 'e', '॑' ],
+ [ 'R', 'ॡ' ],
+ [ 'r', 'ॣ' ],
+ [ 'd', '॒' ],
+ [ 'F', 'ऌ' ],
+ [ 'f', 'ॢ' ],
+ [ 'X', 'ॐ' ],
+ [ 'x', 'ॱ' ],
+ [ ',', '॰' ],
+ [ '\\>', 'ऽ' ],
+ [ '\\.', '॥' ] ]
};
$.ime.register( neInScript2 );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ne/ne-rom.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ne/ne-rom.js
index f169dd32..616dbec4 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ne/ne-rom.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ne/ne-rom.js
@@ -10,96 +10,96 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['\\!', '!'],
- ['\"', '"'],
- ['\\#', '#'],
- ['\\$', 'रु'],
- ['\'', '\''],
- ['\\(', '('],
- ['\\)', ')'],
- ['\\+', '+'],
- [',', ','],
- ['\\-', '-'],
- ['\\.', '।'],
- ['/', '्'],
- ['0', '०'],
- ['1', '१'],
- ['2', '२'],
- ['3', '३'],
- ['4', '४'],
- ['5', '५'],
- ['6', '६'],
- ['7', '७'],
- ['8', '८'],
- ['9', '९'],
- [':', ':'],
- [';', ';'],
- ['\\<', 'ङ'],
- ['\\=', '='],
- ['\\>', '॥'],
- ['\\?', '?'],
- ['\\@', '@'],
- ['A', 'आ'],
- ['B', 'भ'],
- ['C', 'च'],
- ['D', 'ध'],
- ['E', 'ै'],
- ['F', 'ऊ'],
- ['G', 'घ'],
- ['H', 'अ'],
- ['I', 'ी'],
- ['J', 'झ'],
- ['K', 'ख'],
- ['L', 'ळ'],
- ['M', 'ं'],
- ['N', 'ण'],
- ['O', 'ओ'],
- ['P', 'फ'],
- ['Q', 'ठ'],
- ['R', 'ृ'],
- ['S', 'श'],
- ['T', 'थ'],
- ['U', 'ू'],
- ['V', 'ँ'],
- ['W', 'औ'],
- ['X', 'ढ'],
- ['Y', 'ञ'],
- ['Z', 'ऋ'],
- ['\\[', 'इ'],
- ['\\\\', 'ॐ'],
- ['\\]', 'ए'],
- ['\\_', '_'],
- ['`', '़'],
- ['a', 'ा'],
- ['b', 'ब'],
- ['c', 'छ'],
- ['d', 'द'],
- ['e', 'े'],
- ['f', 'उ'],
- ['g', 'ग'],
- ['h', 'ह'],
- ['i', 'ि'],
- ['j', 'ज'],
- ['k', 'क'],
- ['l', 'ल'],
- ['m', 'म'],
- ['n', 'न'],
- ['o', 'ो'],
- ['p', 'प'],
- ['q', 'ट'],
- ['r', 'र'],
- ['s', 'स'],
- ['t', 'त'],
- ['u', 'ु'],
- ['v', 'व'],
- ['w', 'ौ'],
- ['x', 'ड'],
- ['y', 'य'],
- ['z', 'ष'],
- ['\\{', 'ई'],
- ['\\|', 'ः'],
- ['\\}', 'ऐ'],
- ['\\~', 'ऽ']]
+ [ '\\!', '!' ],
+ [ '\"', '"' ],
+ [ '\\#', '#' ],
+ [ '\\$', 'रु' ],
+ [ '\'', '\'' ],
+ [ '\\(', '(' ],
+ [ '\\)', ')' ],
+ [ '\\+', '+' ],
+ [ ',', ',' ],
+ [ '\\-', '-' ],
+ [ '\\.', '।' ],
+ [ '/', '्' ],
+ [ '0', '०' ],
+ [ '1', '१' ],
+ [ '2', '२' ],
+ [ '3', '३' ],
+ [ '4', '४' ],
+ [ '5', '५' ],
+ [ '6', '६' ],
+ [ '7', '७' ],
+ [ '8', '८' ],
+ [ '9', '९' ],
+ [ ':', ':' ],
+ [ ';', ';' ],
+ [ '\\<', 'ङ' ],
+ [ '\\=', '=' ],
+ [ '\\>', '॥' ],
+ [ '\\?', '?' ],
+ [ '\\@', '@' ],
+ [ 'A', 'आ' ],
+ [ 'B', 'भ' ],
+ [ 'C', 'च' ],
+ [ 'D', 'ध' ],
+ [ 'E', 'ै' ],
+ [ 'F', 'ऊ' ],
+ [ 'G', 'घ' ],
+ [ 'H', 'अ' ],
+ [ 'I', 'ी' ],
+ [ 'J', 'झ' ],
+ [ 'K', 'ख' ],
+ [ 'L', 'ळ' ],
+ [ 'M', 'ं' ],
+ [ 'N', 'ण' ],
+ [ 'O', 'ओ' ],
+ [ 'P', 'फ' ],
+ [ 'Q', 'ठ' ],
+ [ 'R', 'ृ' ],
+ [ 'S', 'श' ],
+ [ 'T', 'थ' ],
+ [ 'U', 'ू' ],
+ [ 'V', 'ँ' ],
+ [ 'W', 'औ' ],
+ [ 'X', 'ढ' ],
+ [ 'Y', 'ञ' ],
+ [ 'Z', 'ऋ' ],
+ [ '\\[', 'इ' ],
+ [ '\\\\', 'ॐ' ],
+ [ '\\]', 'ए' ],
+ [ '\\_', '_' ],
+ [ '`', '़' ],
+ [ 'a', 'ा' ],
+ [ 'b', 'ब' ],
+ [ 'c', 'छ' ],
+ [ 'd', 'द' ],
+ [ 'e', 'े' ],
+ [ 'f', 'उ' ],
+ [ 'g', 'ग' ],
+ [ 'h', 'ह' ],
+ [ 'i', 'ि' ],
+ [ 'j', 'ज' ],
+ [ 'k', 'क' ],
+ [ 'l', 'ल' ],
+ [ 'm', 'म' ],
+ [ 'n', 'न' ],
+ [ 'o', 'ो' ],
+ [ 'p', 'प' ],
+ [ 'q', 'ट' ],
+ [ 'r', 'र' ],
+ [ 's', 'स' ],
+ [ 't', 'त' ],
+ [ 'u', 'ु' ],
+ [ 'v', 'व' ],
+ [ 'w', 'ौ' ],
+ [ 'x', 'ड' ],
+ [ 'y', 'य' ],
+ [ 'z', 'ष' ],
+ [ '\\{', 'ई' ],
+ [ '\\|', 'ः' ],
+ [ '\\}', 'ऐ' ],
+ [ '\\~', 'ऽ' ] ]
};
$.ime.register( neRom );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ne/ne-trad.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ne/ne-trad.js
index 76af9ea9..a2dea1c1 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ne/ne-trad.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ne/ne-trad.js
@@ -10,96 +10,96 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['\"', 'ू'],
- ['\\#', 'घ'],
- ['\'', 'ु'],
- ['\\(', 'ढ'],
- ['\\)', 'ण'],
- ['\\+', 'ं'],
- [',', 'ऽ'],
- ['\\-', 'औ'],
- ['\\.', '।'],
- ['/', 'र'],
- ['0', '०'],
- ['1', '१'],
- ['2', '२'],
- ['3', '३'],
- ['4', '४'],
- ['5', '५'],
- ['6', '६'],
- ['7', '७'],
- ['8', '८'],
- ['9', '९'],
- [';', 'स'],
- ['\\<', 'ङ'],
- ['\\=', '='],
- ['\\?', 'रु'],
- ['\\@', 'ई'],
- ['A', 'आ'],
- ['B', 'ौ'],
- ['C', 'ऋ'],
- ['E', 'ऐ'],
- ['F', 'ँ'],
- ['H', 'झ'],
- ['J', 'ो'],
- ['K', 'फ'],
- ['L', 'ी'],
- ['O', 'इ'],
- ['P', 'ए'],
- ['U', 'ऊ'],
- ['V', 'ॐ'],
- ['\\\\', '्'],
- ['\\]', 'े'],
- ['\\_', 'ओ'],
- ['`', 'ञ'],
- ['a', 'ब'],
- ['b', 'द'],
- ['c', 'अ'],
- ['d', 'म'],
- ['e', 'भ'],
- ['f', 'ा'],
- ['g', 'न'],
- ['h', 'ज'],
- ['i', 'ष'],
- ['j', 'व'],
- ['k', 'प'],
- ['l', 'ि'],
- ['m', 'ः'],
- ['n', 'ल'],
- ['o', 'य'],
- ['p', 'उ'],
- ['r', 'च'],
- ['s', 'क'],
- ['t', 'त'],
- ['u', 'ग'],
- ['v', 'ख'],
- ['w', 'ध'],
- ['x', 'ह'],
- ['y', 'थ'],
- ['z', 'श'],
- ['\\{', 'ृ'],
- ['\\|', '|'],
- ['\\}', 'ै'],
- ['\\~', '॥'],
- ['\\!', 'ज्ञ'],
- ['\\$', 'द्ध'],
- [':', 'ट्ठ'],
- ['\\>', 'श्र'],
- ['D', 'ङ्ग'],
- ['G', 'द्द'],
- ['I', 'क्ष'],
- ['M', 'ड्ड'],
- ['N', 'द्य'],
- ['Q', 'त्त'],
- ['R', 'द्ब'],
- ['S', 'ङ्क'],
- ['T', 'ट्ट'],
- ['W', 'ड्ढ'],
- ['X', 'ह्य'],
- ['Y', 'ठ्ठ'],
- ['Z', 'क्क'],
- ['\\[', 'र्'],
- ['q', 'त्र']]
+ [ '\"', 'ू' ],
+ [ '\\#', 'घ' ],
+ [ '\'', 'ु' ],
+ [ '\\(', 'ढ' ],
+ [ '\\)', 'ण' ],
+ [ '\\+', 'ं' ],
+ [ ',', 'ऽ' ],
+ [ '\\-', 'औ' ],
+ [ '\\.', '।' ],
+ [ '/', 'र' ],
+ [ '0', '०' ],
+ [ '1', '१' ],
+ [ '2', '२' ],
+ [ '3', '३' ],
+ [ '4', '४' ],
+ [ '5', '५' ],
+ [ '6', '६' ],
+ [ '7', '७' ],
+ [ '8', '८' ],
+ [ '9', '९' ],
+ [ ';', 'स' ],
+ [ '\\<', 'ङ' ],
+ [ '\\=', '=' ],
+ [ '\\?', 'रु' ],
+ [ '\\@', 'ई' ],
+ [ 'A', 'आ' ],
+ [ 'B', 'ौ' ],
+ [ 'C', 'ऋ' ],
+ [ 'E', 'ऐ' ],
+ [ 'F', 'ँ' ],
+ [ 'H', 'झ' ],
+ [ 'J', 'ो' ],
+ [ 'K', 'फ' ],
+ [ 'L', 'ी' ],
+ [ 'O', 'इ' ],
+ [ 'P', 'ए' ],
+ [ 'U', 'ऊ' ],
+ [ 'V', 'ॐ' ],
+ [ '\\\\', '्' ],
+ [ '\\]', 'े' ],
+ [ '\\_', 'ओ' ],
+ [ '`', 'ञ' ],
+ [ 'a', 'ब' ],
+ [ 'b', 'द' ],
+ [ 'c', 'अ' ],
+ [ 'd', 'म' ],
+ [ 'e', 'भ' ],
+ [ 'f', 'ा' ],
+ [ 'g', 'न' ],
+ [ 'h', 'ज' ],
+ [ 'i', 'ष' ],
+ [ 'j', 'व' ],
+ [ 'k', 'प' ],
+ [ 'l', 'ि' ],
+ [ 'm', 'ः' ],
+ [ 'n', 'ल' ],
+ [ 'o', 'य' ],
+ [ 'p', 'उ' ],
+ [ 'r', 'च' ],
+ [ 's', 'क' ],
+ [ 't', 'त' ],
+ [ 'u', 'ग' ],
+ [ 'v', 'ख' ],
+ [ 'w', 'ध' ],
+ [ 'x', 'ह' ],
+ [ 'y', 'थ' ],
+ [ 'z', 'श' ],
+ [ '\\{', 'ृ' ],
+ [ '\\|', '|' ],
+ [ '\\}', 'ै' ],
+ [ '\\~', '॥' ],
+ [ '\\!', 'ज्ञ' ],
+ [ '\\$', 'द्ध' ],
+ [ ':', 'ट्ठ' ],
+ [ '\\>', 'श्र' ],
+ [ 'D', 'ङ्ग' ],
+ [ 'G', 'द्द' ],
+ [ 'I', 'क्ष' ],
+ [ 'M', 'ड्ड' ],
+ [ 'N', 'द्य' ],
+ [ 'Q', 'त्त' ],
+ [ 'R', 'द्ब' ],
+ [ 'S', 'ङ्क' ],
+ [ 'T', 'ट्ट' ],
+ [ 'W', 'ड्ढ' ],
+ [ 'X', 'ह्य' ],
+ [ 'Y', 'ठ्ठ' ],
+ [ 'Z', 'क्क' ],
+ [ '\\[', 'र्' ],
+ [ 'q', 'त्र' ] ]
};
$.ime.register( neTrad );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ne/ne-transliteration.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ne/ne-transliteration.js
index 3c08b107..0d029e57 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ne/ne-transliteration.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ne/ne-transliteration.js
@@ -13,152 +13,152 @@
contextLength: 4,
maxKeyLength: 1,
patterns: [
- ['क्h','c','च्'],
- ['\\\\([A-Za-z\\>_~\\.0-9])','\\\\','$1'],
+ [ 'क्h','c','च्' ],
+ [ '\\\\([A-Za-z\\>_~\\.0-9])','\\\\','$1' ],
- ['([क-ह]़?)्a','$1'],
- ['([क-ह]़?)्A','$1ा'],
- ['([क-ह]़?)a','$1ा'],
- ['([क-ह]़?)्i','$1ि'],
- ['([क-ह]़?)(्I|िi|ेe)','$1ी'],
- ['([क-ह]़?)्u','$1ु'],
- ['([क-ह]़?)(ुu|्U|ोo)','$1ू'],
- ['([क-ह]़?)्R','$1ृ'],
- ['([क-ह]़?)ृR','$1ॄ'],
- ['([क-ह]़?)्ळ्l','$1ॢ'],
- ['([क-ह]़?)ॢl','$1ॣ'],
- ['([क-ह]़?)ॆ\\^','$1ॅ'],
- ['([क-ह]़?)्e','$1े'],
- ['([क-ह]़?)्E','$1े'],
- ['([क-ह]़?)ॊ\\^','$1ॉ'],
- ['([क-ह]़?)i','$1ै'],
- ['([क-ह]़?)्o','$1ो'],
- ['([क-ह]़?)्O','$1ो'],
- ['([क-ह]़?)u','$1ौ'],
- ['([क-ह]़?)ृa','$1्ऱ'],
- ['([क-ह]़?)ृA','$1्ऱा'],
- ['([क-ह]़?)ृi','$1्ऱि'],
- ['([क-ह]़?)ृI','$1्ऱी'],
- ['([क-ह]़?)ृu','$1्ऱु'],
- ['([क-ह]़?)ृU','$1्ऱू'],
- ['([क-ह]़?)ृ\\^','$1्ऱॅ'],
- ['([क-ह]़?)ृe','$1्ऱे'],
- ['([क-ह]़?)ृE','$1्ऱे'],
- ['([क-ह]़?)ृo','$1्ऱो'],
- ['([क-ह]़?)ृO','$1्ऱो'],
- ['([क-ह]़?)ृ\\~','$1्ऱ्'],
- ['([क-ह])्\\`','$1़्'],
+ [ '([क-ह]़?)्a','$1' ],
+ [ '([क-ह]़?)्A','$1ा' ],
+ [ '([क-ह]़?)a','$1ा' ],
+ [ '([क-ह]़?)्i','$1ि' ],
+ [ '([क-ह]़?)(्I|िi|ेe)','$1ी' ],
+ [ '([क-ह]़?)्u','$1ु' ],
+ [ '([क-ह]़?)(ुu|्U|ोo)','$1ू' ],
+ [ '([क-ह]़?)्R','$1ृ' ],
+ [ '([क-ह]़?)ृR','$1ॄ' ],
+ [ '([क-ह]़?)्ळ्l','$1ॢ' ],
+ [ '([क-ह]़?)ॢl','$1ॣ' ],
+ [ '([क-ह]़?)ॆ\\^','$1ॅ' ],
+ [ '([क-ह]़?)्e','$1े' ],
+ [ '([क-ह]़?)्E','$1े' ],
+ [ '([क-ह]़?)ॊ\\^','$1ॉ' ],
+ [ '([क-ह]़?)i','$1ै' ],
+ [ '([क-ह]़?)्o','$1ो' ],
+ [ '([क-ह]़?)्O','$1ो' ],
+ [ '([क-ह]़?)u','$1ौ' ],
+ [ '([क-ह]़?)ृa','$1्ऱ' ],
+ [ '([क-ह]़?)ृA','$1्ऱा' ],
+ [ '([क-ह]़?)ृi','$1्ऱि' ],
+ [ '([क-ह]़?)ृI','$1्ऱी' ],
+ [ '([क-ह]़?)ृu','$1्ऱु' ],
+ [ '([क-ह]़?)ृU','$1्ऱू' ],
+ [ '([क-ह]़?)ृ\\^','$1्ऱॅ' ],
+ [ '([क-ह]़?)ृe','$1्ऱे' ],
+ [ '([क-ह]़?)ृE','$1्ऱे' ],
+ [ '([क-ह]़?)ृo','$1्ऱो' ],
+ [ '([क-ह]़?)ृO','$1्ऱो' ],
+ [ '([क-ह]़?)ृ\\~','$1्ऱ्' ],
+ [ '([क-ह])्\\`','$1़्' ],
- ['अa','आ'],
- ['(ओo|उu)','ऊ'],
- ['ऎ\\^','ए'],
- ['अi','ऐ'],
- ['अ\\^','अ'],
- ['(इi|एe)','ई'],
- ['ऒ\\^','ओ'],
- ['अu','औ'],
- ['र्र्r','\u0930\u094D\u200D'],
- ['ड़्h','ढ्'],
- ['ऋR','ॠ'],
- ['ळ्l','ऌ'],
- ['ऌl','ॡ'],
- ['ं\\^','ँ'],
- ['ंM','ँ'],
- ['ओM','ॐ'],
- ['ड्D','ड्'],
- ['क्h','ख्'],
- ['ग्h','घ्'],
- ['G','ङ्'],
- ['च्h','छ्'],
- ['ज्h','झ्'],
- ['न्j','ञ्'],
- ['ट्h','ठ्'],
- ['ड्h','ढ्'],
- ['त्h','थ्'],
- ['द्h','ध्'],
- ['प्h','फ्'],
- ['ब्h','भ्'],
- ['ऋa','र'],
- ['ऋA','रा'],
- ['ऋi','रि'],
- ['ऋI','री'],
- ['ऋu','रु'],
- ['ऋU','रू'],
- ['ऋ\\^','ऋ'],
- ['ऋe','रे'],
- ['ऋE','रे'],
- ['ऋo','रो'],
- ['ऋO','रो'],
- ['ऋ\\~','र्'],
+ [ 'अa','आ' ],
+ [ '(ओo|उu)','ऊ' ],
+ [ 'ऎ\\^','ए' ],
+ [ 'अi','ऐ' ],
+ [ 'अ\\^','अ' ],
+ [ '(इi|एe)','ई' ],
+ [ 'ऒ\\^','ओ' ],
+ [ 'अu','औ' ],
+ [ 'र्र्r','\u0930\u094D\u200D' ],
+ [ 'ड़्h','ढ्' ],
+ [ 'ऋR','ॠ' ],
+ [ 'ळ्l','ऌ' ],
+ [ 'ऌl','ॡ' ],
+ [ 'ं\\^','ँ' ],
+ [ 'ंM','ँ' ],
+ [ 'ओM','ॐ' ],
+ [ 'ड्D','ड्' ],
+ [ 'क्h','ख्' ],
+ [ 'ग्h','घ्' ],
+ [ 'G','ङ्' ],
+ [ 'च्h','छ्' ],
+ [ 'ज्h','झ्' ],
+ [ 'न्j','ञ्' ],
+ [ 'ट्h','ठ्' ],
+ [ 'ड्h','ढ्' ],
+ [ 'त्h','थ्' ],
+ [ 'द्h','ध्' ],
+ [ 'प्h','फ्' ],
+ [ 'ब्h','भ्' ],
+ [ 'ऋa','र' ],
+ [ 'ऋA','रा' ],
+ [ 'ऋi','रि' ],
+ [ 'ऋI','री' ],
+ [ 'ऋu','रु' ],
+ [ 'ऋU','रू' ],
+ [ 'ऋ\\^','ऋ' ],
+ [ 'ऋe','रे' ],
+ [ 'ऋE','रे' ],
+ [ 'ऋo','रो' ],
+ [ 'ऋO','रो' ],
+ [ 'ऋ\\~','र्' ],
- ['स्h','श्'],
- ['श्h','ष्'],
- ['क़्h','ख्'],
- ['ज़्h','ऴ्'],
- ['।\\.','॥'],
+ [ 'स्h','श्' ],
+ [ 'श्h','ष्' ],
+ [ 'क़्h','ख्' ],
+ [ 'ज़्h','ऴ्' ],
+ [ '।\\.','॥' ],
- ['a','अ'],
- ['b','ब्'],
- ['c','क्'],
- ['d','द्'],
- ['e','ए'],
- ['(f|F)','फ्'],
- ['g','ग्'],
- ['h','ह्'],
- ['i','इ'],
- ['j','ज्'],
- ['k','क्'],
- ['l','ल्'],
- ['m','म्'],
- ['n','न्'],
- ['o','ओ'],
- ['p','प्'],
- ['q','क़्'],
- ['r','र्'],
- ['s','स्'],
- ['t','त्'],
- ['u','उ'],
- ['v','भ्'],
- ['w','व्'],
- ['x','क्ष्'],
- ['y','य्'],
- ['(z|Z)','ज़्'],
- ['A','आ'],
- ['B','ब्ब्'],
- ['C','क्क्'],
- ['D','ड्'],
- ['E','ए'],
- ['H','ः'],
- ['I','ई'],
- ['J','ज्ज्'],
- ['K','क्क्'],
- ['L','ळ्'],
- ['M','ं'],
- ['N','ण्'],
- ['O','ओ'],
- ['P','प्प्'],
- ['Q','अ'],
- ['R','ऋ'],
- ['S','श्'],
- ['T','ट्'],
- ['U','ऊ'],
- ['V','झ्'],
- ['W','औ'],
- ['X','क्ष्'],
- ['Y','य्य्'],
- ['0','०'],
- ['1','१'],
- ['2','२'],
- ['3','३'],
- ['4','४'],
- ['5','५'],
- ['6','६'],
- ['7','७'],
- ['8','८'],
- ['9','९'],
- ['\\.','।'],
- ['//','ऽ'],
- ['\\`','्']]
+ [ 'a','अ' ],
+ [ 'b','ब्' ],
+ [ 'c','क्' ],
+ [ 'd','द्' ],
+ [ 'e','ए' ],
+ [ '(f|F)','फ्' ],
+ [ 'g','ग्' ],
+ [ 'h','ह्' ],
+ [ 'i','इ' ],
+ [ 'j','ज्' ],
+ [ 'k','क्' ],
+ [ 'l','ल्' ],
+ [ 'm','म्' ],
+ [ 'n','न्' ],
+ [ 'o','ओ' ],
+ [ 'p','प्' ],
+ [ 'q','क़्' ],
+ [ 'r','र्' ],
+ [ 's','स्' ],
+ [ 't','त्' ],
+ [ 'u','उ' ],
+ [ 'v','भ्' ],
+ [ 'w','व्' ],
+ [ 'x','क्ष्' ],
+ [ 'y','य्' ],
+ [ '(z|Z)','ज़्' ],
+ [ 'A','आ' ],
+ [ 'B','ब्ब्' ],
+ [ 'C','क्क्' ],
+ [ 'D','ड्' ],
+ [ 'E','ए' ],
+ [ 'H','ः' ],
+ [ 'I','ई' ],
+ [ 'J','ज्ज्' ],
+ [ 'K','क्क्' ],
+ [ 'L','ळ्' ],
+ [ 'M','ं' ],
+ [ 'N','ण्' ],
+ [ 'O','ओ' ],
+ [ 'P','प्प्' ],
+ [ 'Q','अ' ],
+ [ 'R','ऋ' ],
+ [ 'S','श्' ],
+ [ 'T','ट्' ],
+ [ 'U','ऊ' ],
+ [ 'V','झ्' ],
+ [ 'W','औ' ],
+ [ 'X','क्ष्' ],
+ [ 'Y','य्य्' ],
+ [ '0','०' ],
+ [ '1','१' ],
+ [ '2','२' ],
+ [ '3','३' ],
+ [ '4','४' ],
+ [ '5','५' ],
+ [ '6','६' ],
+ [ '7','७' ],
+ [ '8','८' ],
+ [ '9','९' ],
+ [ '\\.','।' ],
+ [ '//','ऽ' ],
+ [ '\\`','्' ] ]
};
$.ime.register( neTransliteration );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/or/or-inscript.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/or/or-inscript.js
index 0ea6f80e..04fc9fb8 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/or/or-inscript.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/or/or-inscript.js
@@ -10,95 +10,95 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['X', '\u0B01'],
- ['x', '\u0B02'],
- ['_', '\u0B03'],
- ['D', '\u0B05'],
- ['E', '\u0B06'],
- ['F', '\u0B07'],
- ['R', '\u0B08'],
- ['G', '\u0B09'],
- ['T', '\u0B0A'],
- ['\\+', '\u0B0B'],
- ['S', '\u0B0F'],
- ['W', '\u0B10'],
- ['A', '\u0B13'],
- ['Q', '\u0B14'],
- ['k', '\u0B15'],
- ['K', '\u0B16'],
- ['i', '\u0B17'],
- ['I', '\u0B18'],
- ['U', '\u0B19'],
- [';', '\u0B1A'],
- ['\\:', '\u0B1B'],
- ['p', '\u0B1C'],
- ['P', '\u0B1D'],
- ['\\}', '\u0B1E'],
- ['\'', '\u0B1F'],
- ['"', '\u0B20'],
- ['\\[', '\u0B21'],
- ['\\{', '\u0B22'],
- ['C', '\u0B23'],
- ['l', '\u0B24'],
- ['L', '\u0B25'],
- ['o', '\u0B26'],
- ['O', '\u0B27'],
- ['v', '\u0B28'],
- ['h', '\u0B2A'],
- ['H', '\u0B2B'],
- ['y', '\u0B2C'],
- ['Y', '\u0B2D'],
- ['c', '\u0B2E'],
- ['\\?', '\u0B2F'],
- ['j', '\u0B30'],
- ['n', '\u0B32'],
- ['N', '\u0B33'],
- ['M', '\u0B36'],
- ['\\<', '\u0B37'],
- ['m', '\u0B38'],
- ['u', '\u0B39'],
- ['\\]', '\u0B3C'],
- ['e', '\u0B3E'],
- ['f', '\u0B3F'],
- ['r', '\u0B40'],
- ['g', '\u0B41'],
- ['t', '\u0B42'],
- ['\\=', '\u0B43'],
- ['s', '\u0B47'],
- ['w', '\u0B48'],
- ['a', '\u0B4B'],
- ['q', '\u0B4C'],
- ['d', '\u0B4D'],
- ['/', '\u0B5F'],
- ['\\>', '\u0B64'],
- ['0', '\u0B66'],
- ['1', '\u0B67'],
- ['2', '\u0B68'],
- ['3', '\u0B69'],
- ['4', '\u0B6A'],
- ['5', '\u0B6B'],
- ['6', '\u0B6C'],
- ['7', '\u0B6D'],
- ['8', '\u0B6E'],
- ['9', '\u0B6F'],
- ['b', '\u0B71'],
- ['\\(', '\u200D'],
- ['\\)', '\u200C']],
+ [ 'X', '\u0B01' ],
+ [ 'x', '\u0B02' ],
+ [ '_', '\u0B03' ],
+ [ 'D', '\u0B05' ],
+ [ 'E', '\u0B06' ],
+ [ 'F', '\u0B07' ],
+ [ 'R', '\u0B08' ],
+ [ 'G', '\u0B09' ],
+ [ 'T', '\u0B0A' ],
+ [ '\\+', '\u0B0B' ],
+ [ 'S', '\u0B0F' ],
+ [ 'W', '\u0B10' ],
+ [ 'A', '\u0B13' ],
+ [ 'Q', '\u0B14' ],
+ [ 'k', '\u0B15' ],
+ [ 'K', '\u0B16' ],
+ [ 'i', '\u0B17' ],
+ [ 'I', '\u0B18' ],
+ [ 'U', '\u0B19' ],
+ [ ';', '\u0B1A' ],
+ [ '\\:', '\u0B1B' ],
+ [ 'p', '\u0B1C' ],
+ [ 'P', '\u0B1D' ],
+ [ '\\}', '\u0B1E' ],
+ [ '\'', '\u0B1F' ],
+ [ '"', '\u0B20' ],
+ [ '\\[', '\u0B21' ],
+ [ '\\{', '\u0B22' ],
+ [ 'C', '\u0B23' ],
+ [ 'l', '\u0B24' ],
+ [ 'L', '\u0B25' ],
+ [ 'o', '\u0B26' ],
+ [ 'O', '\u0B27' ],
+ [ 'v', '\u0B28' ],
+ [ 'h', '\u0B2A' ],
+ [ 'H', '\u0B2B' ],
+ [ 'y', '\u0B2C' ],
+ [ 'Y', '\u0B2D' ],
+ [ 'c', '\u0B2E' ],
+ [ '\\?', '\u0B2F' ],
+ [ 'j', '\u0B30' ],
+ [ 'n', '\u0B32' ],
+ [ 'N', '\u0B33' ],
+ [ 'M', '\u0B36' ],
+ [ '\\<', '\u0B37' ],
+ [ 'm', '\u0B38' ],
+ [ 'u', '\u0B39' ],
+ [ '\\]', '\u0B3C' ],
+ [ 'e', '\u0B3E' ],
+ [ 'f', '\u0B3F' ],
+ [ 'r', '\u0B40' ],
+ [ 'g', '\u0B41' ],
+ [ 't', '\u0B42' ],
+ [ '\\=', '\u0B43' ],
+ [ 's', '\u0B47' ],
+ [ 'w', '\u0B48' ],
+ [ 'a', '\u0B4B' ],
+ [ 'q', '\u0B4C' ],
+ [ 'd', '\u0B4D' ],
+ [ '/', '\u0B5F' ],
+ [ '\\>', '\u0B64' ],
+ [ '0', '\u0B66' ],
+ [ '1', '\u0B67' ],
+ [ '2', '\u0B68' ],
+ [ '3', '\u0B69' ],
+ [ '4', '\u0B6A' ],
+ [ '5', '\u0B6B' ],
+ [ '6', '\u0B6C' ],
+ [ '7', '\u0B6D' ],
+ [ '8', '\u0B6E' ],
+ [ '9', '\u0B6F' ],
+ [ 'b', '\u0B71' ],
+ [ '\\(', '\u200D' ],
+ [ '\\)', '\u200C' ] ],
patterns_x: [
- ['F', '\u0B0C'],
- ['b', '\u0B35'],
- ['\\>', '\u0B3D'],
- ['\\=', '\u0B44'],
- ['\\[', '\u0B5C'],
- ['\\{', '\u0B5D'],
- ['\\+', '\u0B60'],
- ['R', '\u0B61'],
- ['f', '\u0B62'],
- ['r', '\u0B63'],
- ['\\.', '\u0B65'],
- ['x', '\u0B70'],
- ['\\$', '\u20B9']]
+ [ 'F', '\u0B0C' ],
+ [ 'b', '\u0B35' ],
+ [ '\\>', '\u0B3D' ],
+ [ '\\=', '\u0B44' ],
+ [ '\\[', '\u0B5C' ],
+ [ '\\{', '\u0B5D' ],
+ [ '\\+', '\u0B60' ],
+ [ 'R', '\u0B61' ],
+ [ 'f', '\u0B62' ],
+ [ 'r', '\u0B63' ],
+ [ '\\.', '\u0B65' ],
+ [ 'x', '\u0B70' ],
+ [ '\\$', '\u20B9' ] ]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/or/or-inscript2.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/or/or-inscript2.js
index fcc2fec3..c50190d8 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/or/or-inscript2.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/or/or-inscript2.js
@@ -10,106 +10,106 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['1', '୧'],
- ['2', '୨'],
- ['\\#', '୍ର'],
- ['3', '୩'],
- ['\\$', 'ର୍'],
- ['4', '୪'],
- ['5', '୫'],
- ['6', '୬'],
- ['7', '୭'],
- ['8', '୮'],
- ['\\(', '('],
- ['9', '୯'],
- ['\\)', ')'],
- ['0', '୦'],
- ['\\_', 'ଃ'],
- ['\\-', '-'],
- ['\\+', 'ଋ'],
- ['\\=', 'ୃ'],
- ['Q', 'ଔ'],
- ['q', 'ୌ'],
- ['W', 'ଐ'],
- ['w', 'ୈ'],
- ['E', 'ଆ'],
- ['e', 'ା'],
- ['R', 'ଈ'],
- ['r', 'ୀ'],
- ['T', 'ଊ'],
- ['t', 'ୂ'],
- ['Y', 'ଭ'],
- ['y', 'ବ'],
- ['U', 'ଙ'],
- ['u', 'ହ'],
- ['I', 'ଘ'],
- ['i', 'ଗ'],
- ['O', 'ଧ'],
- ['o', 'ଦ'],
- ['P', 'ଝ'],
- ['p', 'ଜ'],
- ['\\{', 'ଢ'],
- ['\\[', 'ଡ'],
- ['\\}', 'ଞ'],
- ['\\]', '଼'],
- ['A', 'ଓ'],
- ['a', 'ୋ'],
- ['S', 'ଏ'],
- ['s', 'େ'],
- ['D', 'ଅ'],
- ['d', '୍'],
- ['F', 'ଇ'],
- ['f', 'ି'],
- ['G', 'ଉ'],
- ['g', 'ୁ'],
- ['H', 'ଫ'],
- ['h', 'ପ'],
- ['j', 'ର'],
- ['K', 'ଖ'],
- ['k', 'କ'],
- ['L', 'ଥ'],
- ['l', 'ତ'],
- [':', 'ଛ'],
- [';', 'ଚ'],
- ['\"', 'ଠ'],
- ['\'', 'ଟ'],
- ['X', 'ଁ'],
- ['x', 'ଂ'],
- ['C', 'ଣ'],
- ['c', 'ମ'],
- ['v', 'ନ'],
- ['b', 'ୱ'],
- ['N', 'ଳ'],
- ['n', 'ଲ'],
- ['M', 'ଶ'],
- ['m', 'ସ'],
- ['\\<', 'ଷ'],
- [',', ','],
- ['\\>', '।'],
- ['\\.', '.'],
- ['\\?', 'ଯ'],
- ['/', 'ୟ'],
- ['\\%', 'ଜ୍ଞ'],
- ['\\^', 'ତ୍ର'],
- ['\\&', 'କ୍ଷ'],
- ['\\*', 'ଶ୍ର']
+ [ '1', '୧' ],
+ [ '2', '୨' ],
+ [ '\\#', '୍ର' ],
+ [ '3', '୩' ],
+ [ '\\$', 'ର୍' ],
+ [ '4', '୪' ],
+ [ '5', '୫' ],
+ [ '6', '୬' ],
+ [ '7', '୭' ],
+ [ '8', '୮' ],
+ [ '\\(', '(' ],
+ [ '9', '୯' ],
+ [ '\\)', ')' ],
+ [ '0', '୦' ],
+ [ '\\_', 'ଃ' ],
+ [ '\\-', '-' ],
+ [ '\\+', 'ଋ' ],
+ [ '\\=', 'ୃ' ],
+ [ 'Q', 'ଔ' ],
+ [ 'q', 'ୌ' ],
+ [ 'W', 'ଐ' ],
+ [ 'w', 'ୈ' ],
+ [ 'E', 'ଆ' ],
+ [ 'e', 'ା' ],
+ [ 'R', 'ଈ' ],
+ [ 'r', 'ୀ' ],
+ [ 'T', 'ଊ' ],
+ [ 't', 'ୂ' ],
+ [ 'Y', 'ଭ' ],
+ [ 'y', 'ବ' ],
+ [ 'U', 'ଙ' ],
+ [ 'u', 'ହ' ],
+ [ 'I', 'ଘ' ],
+ [ 'i', 'ଗ' ],
+ [ 'O', 'ଧ' ],
+ [ 'o', 'ଦ' ],
+ [ 'P', 'ଝ' ],
+ [ 'p', 'ଜ' ],
+ [ '\\{', 'ଢ' ],
+ [ '\\[', 'ଡ' ],
+ [ '\\}', 'ଞ' ],
+ [ '\\]', '଼' ],
+ [ 'A', 'ଓ' ],
+ [ 'a', 'ୋ' ],
+ [ 'S', 'ଏ' ],
+ [ 's', 'େ' ],
+ [ 'D', 'ଅ' ],
+ [ 'd', '୍' ],
+ [ 'F', 'ଇ' ],
+ [ 'f', 'ି' ],
+ [ 'G', 'ଉ' ],
+ [ 'g', 'ୁ' ],
+ [ 'H', 'ଫ' ],
+ [ 'h', 'ପ' ],
+ [ 'j', 'ର' ],
+ [ 'K', 'ଖ' ],
+ [ 'k', 'କ' ],
+ [ 'L', 'ଥ' ],
+ [ 'l', 'ତ' ],
+ [ ':', 'ଛ' ],
+ [ ';', 'ଚ' ],
+ [ '\"', 'ଠ' ],
+ [ '\'', 'ଟ' ],
+ [ 'X', 'ଁ' ],
+ [ 'x', 'ଂ' ],
+ [ 'C', 'ଣ' ],
+ [ 'c', 'ମ' ],
+ [ 'v', 'ନ' ],
+ [ 'b', 'ୱ' ],
+ [ 'N', 'ଳ' ],
+ [ 'n', 'ଲ' ],
+ [ 'M', 'ଶ' ],
+ [ 'm', 'ସ' ],
+ [ '\\<', 'ଷ' ],
+ [ ',', ',' ],
+ [ '\\>', '।' ],
+ [ '\\.', '.' ],
+ [ '\\?', 'ଯ' ],
+ [ '/', 'ୟ' ],
+ [ '\\%', 'ଜ୍ଞ' ],
+ [ '\\^', 'ତ୍ର' ],
+ [ '\\&', 'କ୍ଷ' ],
+ [ '\\*', 'ଶ୍ର' ]
],
patterns_x: [
- ['1', '\u200d'],
- ['2', '\u200c'],
- ['4', '₹'],
- ['\\+', 'ୠ'],
- ['\\=', 'ୄ'],
- ['R', 'ୡ'],
- ['r', 'ୣ'],
- ['\\{', 'ଢ଼'],
- ['\\[', 'ଡ଼'],
- ['F', 'ଌ'],
- ['f', 'ୢ'],
- ['b', 'ଵ'],
- ['\\>', 'ଽ'],
- ['\\.', '॥'],
- ['x', '୰']]
+ [ '1', '\u200d' ],
+ [ '2', '\u200c' ],
+ [ '4', '₹' ],
+ [ '\\+', 'ୠ' ],
+ [ '\\=', 'ୄ' ],
+ [ 'R', 'ୡ' ],
+ [ 'r', 'ୣ' ],
+ [ '\\{', 'ଢ଼' ],
+ [ '\\[', 'ଡ଼' ],
+ [ 'F', 'ଌ' ],
+ [ 'f', 'ୢ' ],
+ [ 'b', 'ଵ' ],
+ [ '\\>', 'ଽ' ],
+ [ '\\.', '॥' ],
+ [ 'x', '୰' ] ]
};
$.ime.register( orInScript2 );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/or/or-lekhani.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/or/or-lekhani.js
index eb36675a..a8b6ddf8 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/or/or-lekhani.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/or/or-lekhani.js
@@ -7,167 +7,164 @@
description: 'Odia Lekhani phonetic input method',
date: '2012-10-14',
URL: 'http://github.com/wikimedia/jquery.ime',
- author: 'Junaid P V and Subhashish Panigrahi',
+ author: 'Junaid P V, Subhashish Panigrahi and Jnanaranjan Sahu',
license: 'GPLv3',
version: '1.0',
contextLength: 4,
maxKeyLength: 2,
patterns: [
- ['\\\\([A-Za-z\\>_~\\.0-9])', '\\\\', '$1'],
+ [ '\\\\([A-Za-z\\>_~\\.0-9])', '\\\\', '$1' ],
- ['([(କ-ହୟୱଡ଼ଢ଼ଙ୍କଙ୍ଖଙ୍ଗଙ୍ଘଞ୍ଚଞ୍ଛଞ୍ଝଣ୍ଟଣ୍ଠଣ୍ଡଣ୍ଢନ୍ତନ୍ଥନ୍ଦନ୍ଧମ୍ପମ୍ଫମ୍ବମ୍ଭଞ୍ଜ])a', '$1ା'],
- ['([କ-ଳଲନ୍ଧଥଡ଼ଢ଼ହୟୱରକ୍ଷଶସଷଙ୍କଙ୍ଖଙ୍ଗଙ୍ଘଞ୍ଚଞ୍ଛଞ୍ଝଣ୍ଟଣ୍ଠଣ୍ଡଣ୍ଢନ୍ତନ୍ଥନ୍ଦନ୍ଧମ୍ପମ୍ଫମ୍ବମ୍ଭଞ୍ଜ])i', '$1\u0b3f'],
- ['([କ-ହୟୱଡ଼ଢ଼ଙ୍କଙ୍ଖଙ୍ଗଙ୍ଘଞ୍ଚଞ୍ଛଞ୍ଝଣ୍ଟଣ୍ଠଣ୍ଡଣ୍ଢନ୍ତନ୍ଥନ୍ଦନ୍ଧମ୍ପମ୍ଫମ୍ବମ୍ଭଞ୍])I', '$1ୀ'],
- ['([କ-ହୟୱଡ଼ଢ଼ଙ୍କଙ୍ଖଙ୍ଗଙ୍ଘଞ୍ଚଞ୍ଛଞ୍ଝଣ୍ଟଣ୍ଠଣ୍ଡଣ୍ଢନ୍ତନ୍ଥନ୍ଦନ୍ଧମ୍ପମ୍ଫମ୍ବମ୍ଭଞ୍])u', '$1\u0b41'],
- ['([କ-ହୟୱ])(U|\u0b41u)', '$1\u0b42'],
- ['([କ-ହୟୱ])R', '$1\u0b43'],
- ['([କ-ହୟୱ])\u0b43R', '$1\u0b44'],
- ['([କ-ହୟୱ])୍ଳ୍l', '$1ୢ'],
- ['([କ-ହୟୱ])ୢl', '$1ୣ'],
- ['([କ-ହୟୱଡ଼ଢ଼ଙ୍କଙ୍ଖଙ୍ଗଙ୍ଘଞ୍ଚଞ୍ଛଞ୍ଝଣ୍ଟଣ୍ଠଣ୍ଡଣ୍ଢନ୍ତନ୍ଥନ୍ଦନ୍ଧମ୍ପମ୍ଫମ୍ବମ୍ଭଞ୍])e', '$1େ'],
- ['([କ-ହୟୱଡ଼ଢ଼ଙ୍କଙ୍ଖଙ୍ଗଙ୍ଘଞ୍ଚଞ୍ଛଞ୍ଝଣ୍ଟଣ୍ଠଣ୍ଡଣ୍ଢନ୍ତନ୍ଥନ୍ଦନ୍ଧମ୍ପମ୍ଫମ୍ବମ୍ଭଞ୍])o', '$1ୋ'],
- ['([କ-ହୟୱଡ଼ଢ଼ଙ୍କଙ୍ଖଙ୍ଗଙ୍ଘଞ୍ଚଞ୍ଛଞ୍ଝଣ୍ଟଣ୍ଠଣ୍ଡଣ୍ଢନ୍ତନ୍ଥନ୍ଦନ୍ଧମ୍ପମ୍ଫମ୍ବମ୍ଭଞ୍])(ାu|ୋu)', '$1ୌ'],
- ['([କ-ହୟୱ])E', '$1\u0B48'],
- ['([କ-ହୟୱ])(w|v)', '$1୍ୱ'],
- ['([କ-ହୟୱ])~', '$1\u200C'],
+ [ '([କ-ହୟୱଡ଼ଢ଼ଙ୍କଙ୍ଖଙ୍ଗଙ୍ଘଞ୍ଚଞ୍ଛଞ୍ଝଣ୍ଟଣ୍ଠଣ୍ଡଣ୍ଢନ୍ତନ୍ଥନ୍ଦନ୍ଧମ୍ପମ୍ଫମ୍ବମ୍ଭଞ୍ଜ])a', '$1ା' ],
+ [ '([କ-ଳଲନ୍ଧଥଡ଼ଢ଼ହୟୱରକ୍ଷଶସଷଙ୍କଙ୍ଖଙ୍ଗଙ୍ଘଞ୍ଚଞ୍ଛଞ୍ଝଣ୍ଟଣ୍ଠଣ୍ଡଣ୍ଢନ୍ତନ୍ଥନ୍ଦନ୍ଧମ୍ପମ୍ଫମ୍ବମ୍ଭଞ୍ଜ])i', '$1\u0b3f' ],
+ [ '([କ-ହୟୱଡ଼ଢ଼ଙ୍କଙ୍ଖଙ୍ଗଙ୍ଘଞ୍ଚଞ୍ଛଞ୍ଝଣ୍ଟଣ୍ଠଣ୍ଡଣ୍ଢନ୍ତନ୍ଥନ୍ଦନ୍ଧମ୍ପମ୍ଫମ୍ବମ୍ଭଞ୍])I', '$1ୀ' ],
+ [ '([କ-ହୟୱଡ଼ଢ଼ଙ୍କଙ୍ଖଙ୍ଗଙ୍ଘଞ୍ଚଞ୍ଛଞ୍ଝଣ୍ଟଣ୍ଠଣ୍ଡଣ୍ଢନ୍ତନ୍ଥନ୍ଦନ୍ଧମ୍ପମ୍ଫମ୍ବମ୍ଭଞ୍])u', '$1\u0b41' ],
+ [ '([କ-ହୟୱ])(U|\u0b41u)', '$1\u0b42' ],
+ [ '([କ-ହୟୱ])R', '$1\u0b43' ],
+ [ '([କ-ହୟୱ])\u0b43R', '$1\u0b44' ],
+ [ '([କ-ହୟୱ])୍ଳ୍l', '$1ୢ' ],
+ [ '([କ-ହୟୱ])ୢl', '$1ୣ' ],
+ [ '([କ-ହୟୱଡ଼ଢ଼ଙ୍କଙ୍ଖଙ୍ଗଙ୍ଘଞ୍ଚଞ୍ଛଞ୍ଝଣ୍ଟଣ୍ଠଣ୍ଡଣ୍ଢନ୍ତନ୍ଥନ୍ଦନ୍ଧମ୍ପମ୍ଫମ୍ବମ୍ଭଞ୍])e', '$1େ' ],
+ [ '([କ-ହୟୱଡ଼ଢ଼ଙ୍କଙ୍ଖଙ୍ଗଙ୍ଘଞ୍ଚଞ୍ଛଞ୍ଝଣ୍ଟଣ୍ଠଣ୍ଡଣ୍ଢନ୍ତନ୍ଥନ୍ଦନ୍ଧମ୍ପମ୍ଫମ୍ବମ୍ଭଞ୍])o', '$1ୋ' ],
+ [ '([କ-ହୟୱଡ଼ଢ଼ଙ୍କଙ୍ଖଙ୍ଗଙ୍ଘଞ୍ଚଞ୍ଛଞ୍ଝଣ୍ଟଣ୍ଠଣ୍ଡଣ୍ଢନ୍ତନ୍ଥନ୍ଦନ୍ଧମ୍ପମ୍ଫମ୍ବମ୍ଭଞ୍])(ାu|ୋu)', '$1ୌ' ],
+ [ '([କ-ହୟୱ])E', '$1\u0B48' ],
+ [ '([କ-ହୟୱ])(w|v)', '$1୍ୱ' ],
+ [ '([କ-ହୟୱ])~', '$1\u200C' ],
- ['([କ-ହୟୱ])y', '$1୍ୟ'], // <consonant>y
+ [ '([କ-ହୱ])y', '$1୍ୟ' ], // <consonant>y
- ['z', '୍'], // halanta
- ['\\.', '।'], //purnacheda
- ['ଅa', 'ଆ'],
- ['ଏe', 'ଐ'],
- ['(ଅu|ଓo|ଓO)', 'ଔ'],
- ['ଋR', 'ୠ'], // RR
- ['ଳl', 'ଌ'], // Ll
- ['ଌl', 'ୡ'], // Lll
- ['ଞ୍ଚh', 'ଞ୍ଛ'], // nch
- ['ଞ୍ଜh', 'ଞ୍ଝ'], // njh
- ['ଙ୍କh', 'ଙ୍ଖ'], // nkh
- ['ଙ୍ଗh', 'ଙ୍ଘ'], // ngh
- ['ହm', 'ହ୍ମ'], // mh
- ['ହn', 'ହ୍ନ'], // nh
- ['ମ୍ବh', 'ମ୍ଭ'], // mbh or nbh
- ['ଣ୍ଡai', 'ଣ୍ଡାଇ'], // NDai
- ['ଜ୍ଜh', 'ଜ୍ଝ'], // jjh
- ['ଚ୍ଚh', 'ଚ୍ଛ'], // cch
+ [ 'z', '୍' ], // halanta
+ [ '\\.', '।' ], // purnacheda
+ [ 'ଅa', 'ଆ' ],
+ [ 'ଏe', 'ଐ' ],
+ [ '(ଅu|O)', 'ଔ' ],
+ [ 'ଋR', 'ୠ' ], // RR
+ [ 'ଳl', 'ଌ' ], // Ll
+ [ 'ଌl', 'ୡ' ], // Lll
+ [ 'ଞ୍ଚh', 'ଞ୍ଛ' ], // nch
+ [ 'ଞ୍ଜh', 'ଞ୍ଝ' ], // njh
+ [ 'ଙ୍କh', 'ଙ୍ଖ' ], // nkh
+ [ 'ଙ୍ଗh', 'ଙ୍ଘ' ], // ngh
+ [ 'ମ୍ବh', 'ମ୍ଭ' ], // mbh or nbh
+ [ 'ଣ୍ଡai', 'ଣ୍ଡାଇ' ], // NDai
+ [ 'ଜ୍ଜh', 'ଜ୍ଝ' ], // jjh
+ [ 'ଚ୍ଚh', 'ଚ୍ଛ' ], // cch
- ['ଣG', 'ଙ'], // NG
- ['ଣg', 'ଞ'], // Ng
- ['କh', 'ଖ'], // kh
- ['ଗh', 'ଘ'], // gh
- ['ନc', 'ଞ୍ଚ'], // nc
- ['ନg', 'ଙ୍ଗ'], // ng
- ['ଚh', 'ଛ'], // ch
- ['C', 'ଛ'], // ch
- ['ଜh', 'ଝ'], // jh
- ['ନj', 'ଞ୍ଜ'], // nj
- ['ନk', 'ଙ୍କ'], // nk
- ['ନd', 'ନ୍ଦ'], // nd
- ['ନD|ଣD', 'ଣ୍ଡ'], // nd
- ['ଣDh', 'ଣ୍ଢ'], //ndh
- ['ନdh', 'ନ୍ଧ'], // ndht
- ['ଷT', '$1୍ଟ'], // ST
- ['ଟh', 'ଠ'], // Th
- ['ଡh', 'ଢ'], // Dh
- ['ତh', 'ଥ'], // th
- ['ଦh', 'ଧ'], // dh
- ['(f|ପh|P)', 'ଫ'], // ph or f
- ['ବh', 'ଭ'], // bh
- ['ସh', 'ଷ'], // sh
- ['ମb', 'ମ୍ବ'], // mb or nb
- ['ଣT', 'ଣ୍ଟ'], // NT
- ['ଣTh', 'ଣ୍ଠ'], // NTh
- ['(ଷ|ମ)p', '$1୍ପ'], // sp/shp
- ['shp', 'ଷ୍ପ'], // sp
- ['ଂM', 'ଁ'], // MM
+ [ 'ଣG', 'ଙ' ], // NG
+ [ 'ଣg', 'ଞ' ], // Ng
+ [ 'କh', 'ଖ' ], // kh
+ [ 'ଗh', 'ଘ' ], // gh
+ [ 'ନc', 'ଞ୍ଚ' ], // nc
+ [ 'ନg', 'ଙ୍ଗ' ], // ng
+ [ 'ଚh', 'ଛ' ], // ch
+ [ 'C', 'ଛ' ], // ch
+ [ 'ଜh', 'ଝ' ], // jh
+ [ 'ନj', 'ଞ୍ଜ' ], // nj
+ [ 'ନk', 'ଙ୍କ' ], // nk
+ [ 'ନd', 'ନ୍ଦ' ], // nd
+ [ 'ନD|ଣD', 'ଣ୍ଡ' ], // nd
+ [ 'ଣDh', 'ଣ୍ଢ' ], // ndh
+ [ 'ନdh', 'ନ୍ଧ' ], // ndht
+ [ 'ଟh', 'ଠ' ], // Th
+ [ 'ଡh', 'ଢ' ], // Dh
+ [ 'ତh', 'ଥ' ], // th
+ [ 'ଦh', 'ଧ' ], // dh
+ [ '(f|ପh|P)', 'ଫ' ], // ph or f
+ [ 'ବh', 'ଭ' ], // bh
+ [ 'ସh', 'ଷ' ], // sh
+ [ 'ମb', 'ମ୍ବ' ], // mb or nb
+ [ 'ଣT', 'ଣ୍ଟ' ], // NT
+ [ 'ଣTh', 'ଣ୍ଠ' ], // NTh
+ [ '(ଷ|ମ)p', '$1୍ପ' ], // sp/shp
+ [ 'shp', 'ଷ୍ପ' ], // sp
+ [ 'ଂM', 'ଁ' ], // MM
- ['କk', 'କ୍କ'], // kk
- ['ଗg', 'ଗ୍ଗ'], // gg
- ['ଚc', 'ଚ୍ଚ'], // cc
- ['ଜj', 'ଜ୍ଜ'], // jj
- ['ଦd', 'ଦ୍ଦ'], // dd
- ['ଟT', 'ଟ୍ଟ'], // TT
- ['ଡD', 'ଡ୍ଡ'], // DD
- ['ତt', 'ତ୍ତ'], // tt
- ['ଲl', 'ଲ୍ଲ'], // ll
- ['ପp', 'ପ୍ପ'], //pp
+ [ 'କk', 'କ୍କ' ], // kk
+ [ 'ଗg', 'ଗ୍ଗ' ], // gg
+ [ 'ଚc', 'ଚ୍ଚ' ], // cc
+ [ 'ଜj', 'ଜ୍ଜ' ], // jj
+ [ 'ଦd', 'ଦ୍ଦ' ], // dd
+ [ 'ଟT', 'ଟ୍ଟ' ], // TT
+ [ 'ଡD', 'ଡ୍ଡ' ], // DD
+ [ 'ତt', 'ତ୍ତ' ], // tt
+ [ 'ଲl', 'ଲ୍ଲ' ], // ll
+ [ 'ପp', 'ପ୍ପ' ], // pp
[ '_', '\u200c' ],
- ['ଆ\\\\', '\u0B3E'], // aa sign
- ['ଇ\\\\', '\u0B3F'], // i sign
- ['ଈ\\\\', '\u0B40'], // I sign
- ['ଉ\\\\', '\u0B41'], // u sign
- ['ଉ\\\\', '\u0B42'], // U sign
- ['ଋ\\\\', '\u0B43'], // R sign
- ['ୠ\\\\', '\u0B44'], // RR sign
- ['ଌ\\\\', '\u0B62'], // L sign
- ['ୡ\\\\', '\u0B63'], // LL sign
- ['ଏ\\\\', '\u0B47'], // e sign
- ['ଐ\\\\', '\u0B48'], // ai sign
- ['ଓ\\\\', '\u0B4B'], // o sign
- ['ଔ\\\\', '\u0B4C'], // au sign
+ [ 'ଆ\\\\', '\u0B3E' ], // aa sign
+ [ 'ଇ\\\\', '\u0B3F' ], // i sign
+ [ 'ଈ\\\\', '\u0B40' ], // I sign
+ [ 'ଉ\\\\', '\u0B41' ], // u sign
+ [ 'ଉ\\\\', '\u0B42' ], // U sign
+ [ 'ଋ\\\\', '\u0B43' ], // R sign
+ [ 'ୠ\\\\', '\u0B44' ], // RR sign
+ [ 'ଌ\\\\', '\u0B62' ], // L sign
+ [ 'ୡ\\\\', '\u0B63' ], // LL sign
+ [ 'ଏ\\\\', '\u0B47' ], // e sign
+ [ 'ଐ\\\\', '\u0B48' ], // ai sign
+ [ 'ଓ\\\\', '\u0B4B' ], // o sign
+ [ 'ଔ\\\\', '\u0B4C' ], // au sign
- ['\u200c?a', 'ଅ'],
- ['b', 'ବ'],
- ['c', '', 'ଚ'],
- ['d', 'ଦ'],
- ['\u200c?e', 'ଏ'],
- ['g', 'ଗ'],
- ['G', 'ଘ'],
- ['h', 'ହ'],
- ['\u200c?i', 'ଇ'],
- ['j', 'ଜ'],
- ['k', 'କ'],
- ['l', 'ଲ'],
- ['m', 'ମ'],
- ['n', 'ନ'],
- ['\u200c?o', 'ଓ'],
- ['p', 'ପ'],
- ['q', 'ଡ଼'],
- ['r', 'ର'],
- ['s', 'ସ'],
- ['t', 'ତ'],
- ['\u200c?u', 'ଉ'],
- ['[vwVW]', 'ୱ'],
- ['x', 'କ୍ଷ'],
- ['[Y]', 'ୟ'],
- ['[y]', 'ଯ'],
- ['\u200c?A', 'ଆ'],
- ['B', 'ବ'],
- ['C', 'ଛ'],
- ['D', 'ଡ'],
- ['\u200c?E', 'ଐ'],
- ['F', 'ଫ'],
- ['G', 'ଗ'],
- ['H', 'ଃ'],
- ['\u200c?I', 'ଈ'],
- ['J', 'ଯ'],
- ['K', 'ଖ'],
- ['L', 'ଳ'],
- ['M', 'ଂ'],
- ['N', 'ଣ'],
- ['\u200c?O', 'ଔ'],
- ['P', 'ଫ'],
- ['Q', 'ଢ଼'],
- ['R', 'ଋ'],
- ['S', 'ଶ'],
- ['T', 'ଟ'],
- ['\u200c?U', 'ଊ'],
- ['X', 'ଁ'],
- ['Z', 'ଜ୍ଞ'],
- ['//', '୍ର'],
+ [ '\u200c?a', 'ଅ' ],
+ [ 'b', 'ବ' ],
+ [ 'c', '', 'ଚ' ],
+ [ 'd', 'ଦ' ],
+ [ '\u200c?e', 'ଏ' ],
+ [ 'g', 'ଗ' ],
+ [ 'G', 'ଘ' ],
+ [ 'h', 'ହ' ],
+ [ '\u200c?i', 'ଇ' ],
+ [ 'j', 'ଜ' ],
+ [ 'k', 'କ' ],
+ [ 'l', 'ଲ' ],
+ [ 'm', 'ମ' ],
+ [ 'n', 'ନ' ],
+ [ '\u200c?o', 'ଓ' ],
+ [ 'p', 'ପ' ],
+ [ 'q', 'ଡ଼' ],
+ [ 'r', 'ର' ],
+ [ 's', 'ସ' ],
+ [ 't', 'ତ' ],
+ [ '\u200c?u', 'ଉ' ],
+ [ '[vwVW]', 'ୱ' ],
+ [ 'x', 'କ୍ଷ' ],
+ [ '[Y]', 'ୟ' ],
+ [ '[y]', 'ଯ' ],
+ [ '\u200c?A', 'ଆ' ],
+ [ 'B', 'ବ' ],
+ [ 'C', 'ଛ' ],
+ [ 'D', 'ଡ' ],
+ [ '\u200c?E', 'ଐ' ],
+ [ 'F', 'ଫ' ],
+ [ 'G', 'ଗ' ],
+ [ 'H', 'ଃ' ],
+ [ '\u200c?I', 'ଈ' ],
+ [ 'J', 'ଯ' ],
+ [ 'K', 'ଖ' ],
+ [ 'L', 'ଳ' ],
+ [ 'M', 'ଂ' ],
+ [ 'N', 'ଣ' ],
+ [ '\u200c?O', 'ଔ' ],
+ [ 'P', 'ଫ' ],
+ [ 'Q', 'ଢ଼' ],
+ [ 'R', 'ଋ' ],
+ [ 'S', 'ଶ' ],
+ [ 'T', 'ଟ' ],
+ [ '\u200c?U', 'ଊ' ],
+ [ 'X', 'ଁ' ],
+ [ 'Z', 'ଜ୍ଞ' ],
+ [ '//', '୍ର' ],
- ['0', '୦'],
- ['1', '୧'],
- ['2', '୨'],
- ['3', '୩'],
- ['4', '୪'],
- ['5', '୫'],
- ['6', '୬'],
- ['7', '୭'],
- ['8', '୮'],
- ['9', '୯']
+ [ '0', '୦' ],
+ [ '1', '୧' ],
+ [ '2', '୨' ],
+ [ '3', '୩' ],
+ [ '4', '୪' ],
+ [ '5', '୫' ],
+ [ '6', '୬' ],
+ [ '7', '୭' ],
+ [ '8', '୮' ],
+ [ '9', '୯' ]
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/or/or-phonetic.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/or/or-phonetic.js
index 3861ffd2..ce4e93fd 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/or/or-phonetic.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/or/or-phonetic.js
@@ -11,99 +11,99 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['\\~', 'ଐ'],
- ['\\`', ' ୈ'],
- ['\\!', 'ଏ'],
- ['1', '୧'],
- ['\\@', '@'],
- ['2', '୨'],
- ['\\#', 'ତ୍ର'],
- ['3', '୩'],
- ['\\$', '$'],
- ['4', '୪'],
- ['\\%', 'ଞ'],
- ['5', '୫'],
- ['6', '୬'],
- ['7', '୭'],
- ['8', '୮'],
- ['\\(', '('],
- ['9', '୯'],
- ['\\)', ')'],
- ['0', '୦'],
- ['\\_', '_'],
- ['\\-', '-'],
- ['\\+', '+'],
- ['\\=', '='],
- ['Q', 'ଔ'],
- ['q', 'ଓ'],
- ['W', 'ଠ'],
- ['w', 'ଟ'],
- ['E', 'ୈ'],
- ['e', 'େ'],
- ['R', 'ୃ '],
- ['r', 'ର'],
- ['T', 'ଥ'],
- ['t', 'ତ'],
- ['Y', 'ୟ'],
- ['y', 'ଯ'],
- ['U', 'ୂ'],
- ['u', 'ୁ'],
- ['I', 'ୀ'],
- ['i', 'ି'],
- ['O', 'ୌ'],
- ['o', 'ୋ'],
- ['P', 'ଫ'],
- ['p', 'ପ'],
- ['\\{', 'ଢ'],
- ['\\[', 'ଡ'],
- ['\\}', 'ର୍'],
- ['\\]', 'ଋ'],
- ['A', 'ଆ'],
- ['a', 'ା'],
- ['S', 'ଶ'],
- ['s', 'ସ'],
- ['D', 'ଧ'],
- ['d', 'ଦ'],
- ['F', 'ଅ'],
- ['f', '୍'],
- ['G', 'ଘ'],
- ['g', 'ଗ'],
- ['H', 'ଃ'],
- ['h', 'ହ'],
- ['J', 'ଝ'],
- ['j', 'ଜ'],
- ['K', 'ଖ'],
- ['k', 'କ'],
- ['L', 'ଳ'],
- ['l', 'ଲ'],
- [':', 'ଈ'],
- [';', 'ଇ'],
- ['"', 'ଊ'],
- ['\'', 'ଉ'],
- ['\\|', '|'],
- ['\\\\', '\\'],
- ['Z', 'ଁ'],
- ['z', 'ଙ'],
- ['x', 'ଷ'],
- ['C', 'ଛ'],
- ['c', 'ଚ'],
- ['V', 'ଵ'],
- ['v', 'ୱ'],
- ['B', 'ଭ'],
- ['b', 'ବ'],
- ['N', 'ଣ'],
- ['n', 'ନ'],
- ['M', 'ଂ'],
- ['m', 'ମ'],
- ['\\<', '<'],
- [',', ','],
- ['\\>', '>'],
- ['\\.', '।'],
- ['\\?', 'ଐ'],
- ['/', 'ଏ'],
- ['\\^', 'ଜ୍ଞ'],
- ['X', 'କ୍ଷ'],
- ['\\*', 'ଶ୍ର']]
+ [ '\\~', 'ଐ' ],
+ [ '\\`', ' ୈ' ],
+ [ '\\!', 'ଏ' ],
+ [ '1', '୧' ],
+ [ '\\@', '@' ],
+ [ '2', '୨' ],
+ [ '\\#', 'ତ୍ର' ],
+ [ '3', '୩' ],
+ [ '\\$', '$' ],
+ [ '4', '୪' ],
+ [ '\\%', 'ଞ' ],
+ [ '5', '୫' ],
+ [ '6', '୬' ],
+ [ '7', '୭' ],
+ [ '8', '୮' ],
+ [ '\\(', '(' ],
+ [ '9', '୯' ],
+ [ '\\)', ')' ],
+ [ '0', '୦' ],
+ [ '\\_', '_' ],
+ [ '\\-', '-' ],
+ [ '\\+', '+' ],
+ [ '\\=', '=' ],
+ [ 'Q', 'ଔ' ],
+ [ 'q', 'ଓ' ],
+ [ 'W', 'ଠ' ],
+ [ 'w', 'ଟ' ],
+ [ 'E', 'ୈ' ],
+ [ 'e', 'େ' ],
+ [ 'R', 'ୃ ' ],
+ [ 'r', 'ର' ],
+ [ 'T', 'ଥ' ],
+ [ 't', 'ତ' ],
+ [ 'Y', 'ୟ' ],
+ [ 'y', 'ଯ' ],
+ [ 'U', 'ୂ' ],
+ [ 'u', 'ୁ' ],
+ [ 'I', 'ୀ' ],
+ [ 'i', 'ି' ],
+ [ 'O', 'ୌ' ],
+ [ 'o', 'ୋ' ],
+ [ 'P', 'ଫ' ],
+ [ 'p', 'ପ' ],
+ [ '\\{', 'ଢ' ],
+ [ '\\[', 'ଡ' ],
+ [ '\\}', 'ର୍' ],
+ [ '\\]', 'ଋ' ],
+ [ 'A', 'ଆ' ],
+ [ 'a', 'ା' ],
+ [ 'S', 'ଶ' ],
+ [ 's', 'ସ' ],
+ [ 'D', 'ଧ' ],
+ [ 'd', 'ଦ' ],
+ [ 'F', 'ଅ' ],
+ [ 'f', '୍' ],
+ [ 'G', 'ଘ' ],
+ [ 'g', 'ଗ' ],
+ [ 'H', 'ଃ' ],
+ [ 'h', 'ହ' ],
+ [ 'J', 'ଝ' ],
+ [ 'j', 'ଜ' ],
+ [ 'K', 'ଖ' ],
+ [ 'k', 'କ' ],
+ [ 'L', 'ଳ' ],
+ [ 'l', 'ଲ' ],
+ [ ':', 'ଈ' ],
+ [ ';', 'ଇ' ],
+ [ '"', 'ଊ' ],
+ [ '\'', 'ଉ' ],
+ [ '\\|', '|' ],
+ [ '\\\\', '\\' ],
+ [ 'Z', 'ଁ' ],
+ [ 'z', 'ଙ' ],
+ [ 'x', 'ଷ' ],
+ [ 'C', 'ଛ' ],
+ [ 'c', 'ଚ' ],
+ [ 'V', 'ଵ' ],
+ [ 'v', 'ୱ' ],
+ [ 'B', 'ଭ' ],
+ [ 'b', 'ବ' ],
+ [ 'N', 'ଣ' ],
+ [ 'n', 'ନ' ],
+ [ 'M', 'ଂ' ],
+ [ 'm', 'ମ' ],
+ [ '\\<', '<' ],
+ [ ',', ',' ],
+ [ '\\>', '>' ],
+ [ '\\.', '।' ],
+ [ '\\?', 'ଐ' ],
+ [ '/', 'ଏ' ],
+ [ '\\^', 'ଜ୍ଞ' ],
+ [ 'X', 'କ୍ଷ' ],
+ [ '\\*', 'ଶ୍ର' ] ]
};
$.ime.register( orPhonetic );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/or/or-transliteration.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/or/or-transliteration.js
index 12fd8d90..a41422c9 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/or/or-transliteration.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/or/or-transliteration.js
@@ -7,7 +7,7 @@
description: 'Odia Transliteration',
date: '2012-10-14',
URL: 'http://github.com/wikimedia/jquery.ime',
- author: 'Junaid P V and Subhashish Panigrahi',
+ author: 'Junaid P V, Subhashish Panigrahi and Shitikantha Dash',
license: 'GPLv3',
version: '1.0',
contextLength: 4,
@@ -17,48 +17,50 @@
[ 'ଞ୍ଜ୍h', 'ଞ୍ଝ୍' ], // njh
[ 'ଙ୍ଗ୍h', 'ଙ୍ଘ୍' ], // ngh
+ [ '୍z', '଼୍' ],
- [ '([କ-ହୟ])୍a', '$1' ],
- [ '([କ-ହୟ])(a|୍A)', '$1ା' ],
- [ '([କ-ହୟ])୍i', '$1\u0b3f' ],
- [ '([କ-ହୟ])୍I', '$1ୀ' ],
- [ '([କ-ହୟ])୍u', '$1\u0b41' ],
- [ '([କ-ହୟ])(୍U|\u0b41u)', '$1\u0b42' ],
- [ '([କ-ହୟ])୍R', '$1\u0b43' ],
- [ '([କ-ହୟ])\u0b43R', '$1\u0b44' ],
- [ '([କ-ହୟ])୍ଳ୍l', '$1ୢ' ],
- [ '([କ-ହୟ])ୢl', '$1ୣ' ],
- [ '([କ-ହୟ])୍e', '$1େ' ],
- [ '([କ-ହୟ])i', '$1ୈ' ],
- [ '([କ-ହୟ])୍o', '$1ୋ' ],
- [ '([କ-ହୟ])ୋu', '$1ୌ' ],
- [ '([କ-ହୟ])୍E', '$1\u0B48' ],
+ [ '([କ-ହୟୱ\u0B3C])୍a', '$1' ],
+ [ '([କ-ହୟୱ\u0B3C])(a|୍A)', '$1ା' ],
+ [ '([କ-ହୟୱ\u0B3C])୍i', '$1\u0b3f' ],
+ [ '([କ-ହୟୱ\u0B3C])୍I', '$1ୀ' ],
+ [ '([କ-ହୟୱ\u0B3C])୍u', '$1\u0b41' ],
+ [ '([କ-ହୟୱ\u0B3C])(୍U|\u0b41u)', '$1\u0b42' ],
+ [ '([କ-ହୟୱ\u0B3C])୍R', '$1\u0b43' ],
+ [ '([କ-ହୟୱ\u0B3C])\u0b43R', '$1\u0b44' ],
+ [ '([କ-ହୟୱ\u0B3C])୍ଳ୍l', '$1ୢ' ],
+ [ '([କ-ହୟୱ\u0B3C])ୢl', '$1ୣ' ],
+ [ '([କ-ହୟୱ\u0B3C])୍e', '$1େ' ],
+ [ '([କ-ହୟୱ\u0B3C])i', '$1ୈ' ],
+ [ '([କ-ହୟୱ\u0B3C])୍o', '$1ୋ' ],
+ [ '([କ-ହୟୱ\u0B3C])u', '$1ୌ' ],
+ //[ '([କ-ହୟୱ\u0B3C])ୋu', '$1ୌ' ],
+ [ '([କ-ହୟୱ\u0B3C])୍E', '$1\u0B48' ],
- [ 'ଅa', 'ଆ' ],
- [ '(ଅi|ଏe)', 'ଐ' ],
- [ '(ଅu|ଓo|ଓO)', 'ଔ' ],
- [ 'ଋR', 'ୠ' ],
- [ 'ଳ୍l', 'ଌ' ],
- [ 'ଌl', 'ୡ' ],
+ [ 'ଅa', 'ଆ' ], // a
+ [ '(ଅi|ଏe)', 'ଐ' ], // ai
+ [ '(ଓo|ଓO)', 'ଔ' ], // ou
+ [ 'ଋR', 'ୠ' ], // ru
+ [ 'ଳ୍l', 'ଌ' ], // lu
+ [ 'ଌl', 'ୡ' ], // llu
[ 'ଞ୍ଚ୍h', 'ଞ୍ଛ୍' ], // nch
[ 'ଣ୍G', 'ଙ୍' ], // NG
[ 'ଣ୍g', 'ଞ୍' ], // Ng
- [ 'କ୍h', 'ଖ୍' ],
- [ 'ଗ୍h', 'ଘ୍' ],
+ [ 'କ୍h', 'ଖ୍' ], // kh
+ [ 'ଗ୍h', 'ଘ୍' ], // gh
[ 'ନ୍c', 'ଞ୍ଚ୍' ], // nc
[ 'ନ୍g', 'ଙ୍ଗ୍' ], // ng
- [ 'ଚ୍h', 'ଛ୍' ],
- [ 'ଜ୍h', 'ଝ୍' ],
+ [ 'ଚ୍h', 'ଛ୍' ], // ch
+ [ 'ଜ୍h', 'ଝ୍' ], // jh
[ 'ନ୍j', 'ଞ୍ଜ୍' ], // nj
[ 'ନ୍k', 'ଙ୍କ୍' ], // nk
- [ 'ଟ୍h', 'ଠ୍' ],
- [ 'ଡ୍h', 'ଢ୍' ],
- [ 'ତ୍h', 'ଥ୍' ],
- [ 'ଦ୍h', 'ଧ୍' ],
- [ 'ପ୍h', 'ଫ୍' ],
- [ 'ବ୍h', 'ଭ୍' ],
- [ 'ସ୍h', 'ଷ୍' ],
+ [ 'ଟ୍h', 'ଠ୍' ], // halanta
+ [ 'ଡ୍h', 'ଢ୍' ], // Dh
+ [ 'ତ୍h', 'ଥ୍' ], // th
+ [ 'ଦ୍h', 'ଧ୍' ], // dh
+ [ 'ପ୍h', 'ଫ୍' ], // ph
+ [ 'ବ୍h', 'ଭ୍' ], // bh
+ [ 'ସ୍h', 'ଷ୍' ], // sh
[ '।Z', '॥' ],
[ 'ଆ\\\\', '\u0B3E' ], // aa sign
@@ -93,11 +95,12 @@
[ 'p', 'ପ୍' ],
[ 'q', 'ଜ୍ଞ୍' ],
[ 'r', 'ର୍' ],
+ [ 'ର୍y', 'ର‍୍ୟ' ],
[ 's', 'ସ୍' ],
[ 't', 'ତ୍' ],
[ '\u200c?u', 'ଉ' ],
[ 'v', 'ୱ୍' ],
- [ 'w', 'ଵ୍' ],
+ [ 'w', 'ୱ୍' ],
[ 'x', 'କ୍ଷ୍' ],
[ 'y', 'ୟ୍' ],
[ 'z', '\u0B3C' ],
@@ -126,7 +129,7 @@
[ 'W', 'ଵ୍ଵ୍' ],
[ 'X', 'ଁ' ],
[ 'Y', 'ଯ୍' ],
- [ 'Z', '।' ],
+ [ '\\.', '।' ],
[ '\\~', '', '୍' ],
[ '//', 'ଽ' ],
[ '_', '\u200c' ],
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/pa/pa-inscript.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/pa/pa-inscript.js
index 1ee57c54..3ab2f559 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/pa/pa-inscript.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/pa/pa-inscript.js
@@ -10,86 +10,86 @@
license: '',
version: '1.0',
patterns: [
- ['1', '੧'],
- ['2', '੨'],
- ['3', '੩'],
- ['4', '੪'],
- ['5', '੫'],
- ['6', '੬'],
- ['7', '੭'],
- ['8', '੮'],
- ['9', '੯'],
- ['0', '੦'],
- ['\\_', '_'],
- ['\\-', '-'],
- ['\\+', '+'],
- ['\\=', '='],
- ['Q', 'ਔ'],
- ['q', 'ੌ'],
- ['W', 'ਐ'],
- ['w', 'ੈ'],
- ['E', 'ਆ'],
- ['e', 'ਾ'],
- ['R', 'ਈ'],
- ['r', 'ੀ'],
- ['T', 'ਊ'],
- ['t', 'ੂ'],
- ['Y', 'ਭ'],
- ['y', 'ਬ'],
- ['U', 'ਙ'],
- ['u', 'ਹ'],
- ['I', 'ਘ'],
- ['i', 'ਗ'],
- ['O', 'ਧ'],
- ['o', 'ਦ'],
- ['P', 'ਝ'],
- ['p', 'ਜ'],
- ['\\{', 'ਢ'],
- ['\\[', 'ਡ'],
- ['\\}', 'ਞ'],
- ['\\]', '਼'],
- ['A', 'ਓ'],
- ['a', 'ੋ'],
- ['S', 'ਏ'],
- ['s', 'ੇ'],
- ['D', 'ਅ'],
- ['d', '੍'],
- ['F', 'ਇ'],
- ['f', 'ਿ'],
- ['G', 'ਉ'],
- ['g', 'ੁ'],
- ['H', 'ਫ'],
- ['h', 'ਪ'],
- ['J', 'ੜ'],
- ['j', 'ਰ'],
- ['K', 'ਖ'],
- ['k', 'ਕ'],
- ['L', 'ਥ'],
- ['l', 'ਤ'],
- ['\\:', 'ਛ'],
- ['\\;', 'ਚ'],
- ['"', 'ਠ'],
- ['\'', 'ਟ'],
- ['Z', 'ੱ'],
- ['z', 'ੰ'],
- ['X', 'ਫ਼'],
- ['x', 'ਜ਼'],
- ['C', 'ਣ'],
- ['c', 'ਮ'],
- ['V', 'ਂ'],
- ['v', 'ਨ'],
- ['B', 'ਞ'],
- ['b', 'ਵ'],
- ['N', 'ਲ਼'],
- ['n', 'ਲ'],
- ['M', 'ਸ਼'],
- ['m', 'ਸ'],
- ['\\<', 'ੳ'],
- [',', ','],
- ['\\>', 'ੲ'],
- ['\\.', '.'],
- ['\\?', '?'],
- ['/', 'ਯ']]
+ [ '1', '੧' ],
+ [ '2', '੨' ],
+ [ '3', '੩' ],
+ [ '4', '੪' ],
+ [ '5', '੫' ],
+ [ '6', '੬' ],
+ [ '7', '੭' ],
+ [ '8', '੮' ],
+ [ '9', '੯' ],
+ [ '0', '੦' ],
+ [ '\\_', '_' ],
+ [ '\\-', '-' ],
+ [ '\\+', '+' ],
+ [ '\\=', '=' ],
+ [ 'Q', 'ਔ' ],
+ [ 'q', 'ੌ' ],
+ [ 'W', 'ਐ' ],
+ [ 'w', 'ੈ' ],
+ [ 'E', 'ਆ' ],
+ [ 'e', 'ਾ' ],
+ [ 'R', 'ਈ' ],
+ [ 'r', 'ੀ' ],
+ [ 'T', 'ਊ' ],
+ [ 't', 'ੂ' ],
+ [ 'Y', 'ਭ' ],
+ [ 'y', 'ਬ' ],
+ [ 'U', 'ਙ' ],
+ [ 'u', 'ਹ' ],
+ [ 'I', 'ਘ' ],
+ [ 'i', 'ਗ' ],
+ [ 'O', 'ਧ' ],
+ [ 'o', 'ਦ' ],
+ [ 'P', 'ਝ' ],
+ [ 'p', 'ਜ' ],
+ [ '\\{', 'ਢ' ],
+ [ '\\[', 'ਡ' ],
+ [ '\\}', 'ਞ' ],
+ [ '\\]', '਼' ],
+ [ 'A', 'ਓ' ],
+ [ 'a', 'ੋ' ],
+ [ 'S', 'ਏ' ],
+ [ 's', 'ੇ' ],
+ [ 'D', 'ਅ' ],
+ [ 'd', '੍' ],
+ [ 'F', 'ਇ' ],
+ [ 'f', 'ਿ' ],
+ [ 'G', 'ਉ' ],
+ [ 'g', 'ੁ' ],
+ [ 'H', 'ਫ' ],
+ [ 'h', 'ਪ' ],
+ [ 'J', 'ੜ' ],
+ [ 'j', 'ਰ' ],
+ [ 'K', 'ਖ' ],
+ [ 'k', 'ਕ' ],
+ [ 'L', 'ਥ' ],
+ [ 'l', 'ਤ' ],
+ [ '\\:', 'ਛ' ],
+ [ '\\;', 'ਚ' ],
+ [ '"', 'ਠ' ],
+ [ '\'', 'ਟ' ],
+ [ 'Z', 'ੱ' ],
+ [ 'z', 'ੰ' ],
+ [ 'X', 'ਫ਼' ],
+ [ 'x', 'ਜ਼' ],
+ [ 'C', 'ਣ' ],
+ [ 'c', 'ਮ' ],
+ [ 'V', 'ਂ' ],
+ [ 'v', 'ਨ' ],
+ [ 'B', 'ਞ' ],
+ [ 'b', 'ਵ' ],
+ [ 'N', 'ਲ਼' ],
+ [ 'n', 'ਲ' ],
+ [ 'M', 'ਸ਼' ],
+ [ 'm', 'ਸ' ],
+ [ '\\<', 'ੳ' ],
+ [ ',', ',' ],
+ [ '\\>', 'ੲ' ],
+ [ '\\.', '.' ],
+ [ '\\?', '?' ],
+ [ '/', 'ਯ' ] ]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/pa/pa-inscript2.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/pa/pa-inscript2.js
index 2c49a06b..709cc5fc 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/pa/pa-inscript2.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/pa/pa-inscript2.js
@@ -10,100 +10,100 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['1', '੧'],
- ['2', '੨'],
- ['3', '੩'],
- ['4', '੪'],
- ['5', '੫'],
- ['6', '੬'],
- ['7', '੭'],
- ['8', '੮'],
- ['9', '੯'],
- ['0', '੦'],
- ['\\(', '('],
- ['\\)', ')'],
- ['\\_', 'ਃ'],
- ['\\-', '-'],
- ['Q', 'ਔ'],
- ['q', 'ੌ'],
- ['W', 'ਐ'],
- ['w', 'ੈ'],
- ['E', 'ਆ'],
- ['e', 'ਾ'],
- ['R', 'ਈ'],
- ['r', 'ੀ'],
- ['T', 'ਊ'],
- ['t', 'ੂ'],
- ['Y', 'ਭ'],
- ['y', 'ਬ'],
- ['U', 'ਙ'],
- ['u', 'ਹ'],
- ['I', 'ਘ'],
- ['i', 'ਗ'],
- ['O', 'ਧ'],
- ['o', 'ਦ'],
- ['P', 'ਝ'],
- ['p', 'ਜ'],
- ['\\{', 'ਢ'],
- ['\\[', 'ਡ'],
- ['\\}', 'ਞ'],
- ['\\]', '਼'],
- ['A', 'ਓ'],
- ['a', 'ੋ'],
- ['S', 'ਏ'],
- ['s', 'ੇ'],
- ['D', 'ਅ'],
- ['d', '੍'],
- ['F', 'ਇ'],
- ['f', 'ਿ'],
- ['G', 'ਉ'],
- ['g', 'ੁ'],
- ['H', 'ਫ'],
- ['h', 'ਪ'],
- ['J', 'ੜ'],
- ['j', 'ਰ'],
- ['K', 'ਖ'],
- ['k', 'ਕ'],
- ['L', 'ਥ'],
- ['l', 'ਤ'],
- [':', 'ਛ'],
- [';', 'ਚ'],
- ['"', 'ਠ'],
- ['\\\'', 'ਟ'],
- ['X', 'ਂ'],
- ['x', 'ੰ'],
- ['C', 'ਣ'],
- ['c', 'ਮ'],
- ['v', 'ਨ'],
- ['B', 'ਞ'],
- ['b', 'ਵ'],
- ['N', 'N'],
- ['n', 'ਲ'],
- ['M', 'ਸ਼'],
- ['m', 'ਸ'],
- [',', ','],
- ['\\>', '।'],
- ['\\.', '.'],
- ['/', 'ਯ']
+ [ '1', '੧' ],
+ [ '2', '੨' ],
+ [ '3', '੩' ],
+ [ '4', '੪' ],
+ [ '5', '੫' ],
+ [ '6', '੬' ],
+ [ '7', '੭' ],
+ [ '8', '੮' ],
+ [ '9', '੯' ],
+ [ '0', '੦' ],
+ [ '\\(', '(' ],
+ [ '\\)', ')' ],
+ [ '\\_', 'ਃ' ],
+ [ '\\-', '-' ],
+ [ 'Q', 'ਔ' ],
+ [ 'q', 'ੌ' ],
+ [ 'W', 'ਐ' ],
+ [ 'w', 'ੈ' ],
+ [ 'E', 'ਆ' ],
+ [ 'e', 'ਾ' ],
+ [ 'R', 'ਈ' ],
+ [ 'r', 'ੀ' ],
+ [ 'T', 'ਊ' ],
+ [ 't', 'ੂ' ],
+ [ 'Y', 'ਭ' ],
+ [ 'y', 'ਬ' ],
+ [ 'U', 'ਙ' ],
+ [ 'u', 'ਹ' ],
+ [ 'I', 'ਘ' ],
+ [ 'i', 'ਗ' ],
+ [ 'O', 'ਧ' ],
+ [ 'o', 'ਦ' ],
+ [ 'P', 'ਝ' ],
+ [ 'p', 'ਜ' ],
+ [ '\\{', 'ਢ' ],
+ [ '\\[', 'ਡ' ],
+ [ '\\}', 'ਞ' ],
+ [ '\\]', '਼' ],
+ [ 'A', 'ਓ' ],
+ [ 'a', 'ੋ' ],
+ [ 'S', 'ਏ' ],
+ [ 's', 'ੇ' ],
+ [ 'D', 'ਅ' ],
+ [ 'd', '੍' ],
+ [ 'F', 'ਇ' ],
+ [ 'f', 'ਿ' ],
+ [ 'G', 'ਉ' ],
+ [ 'g', 'ੁ' ],
+ [ 'H', 'ਫ' ],
+ [ 'h', 'ਪ' ],
+ [ 'J', 'ੜ' ],
+ [ 'j', 'ਰ' ],
+ [ 'K', 'ਖ' ],
+ [ 'k', 'ਕ' ],
+ [ 'L', 'ਥ' ],
+ [ 'l', 'ਤ' ],
+ [ ':', 'ਛ' ],
+ [ ';', 'ਚ' ],
+ [ '"', 'ਠ' ],
+ [ '\\\'', 'ਟ' ],
+ [ 'X', 'ਂ' ],
+ [ 'x', 'ੰ' ],
+ [ 'C', 'ਣ' ],
+ [ 'c', 'ਮ' ],
+ [ 'v', 'ਨ' ],
+ [ 'B', 'ਞ' ],
+ [ 'b', 'ਵ' ],
+ [ 'N', 'N' ],
+ [ 'n', 'ਲ' ],
+ [ 'M', 'ਸ਼' ],
+ [ 'm', 'ਸ' ],
+ [ ',', ',' ],
+ [ '\\>', '।' ],
+ [ '\\.', '.' ],
+ [ '/', 'ਯ' ]
],
patterns_x: [
- ['1', '\u200d'],
- ['2', '\u200c'],
- ['4', '₹'],
- ['i', 'ਗ਼'],
- ['p', 'ਜ਼'],
- ['\\[', 'ੜ'],
- ['D', '☬'],
- ['d', 'ੑ'],
- ['F', 'ੲ'],
- ['G', 'ੳ'],
- ['H', 'ਫ਼'],
- ['K', 'ਖ਼'],
- ['X', 'ੴ'],
- ['x', 'ਁ'],
- ['N', 'ਲ਼'],
- ['\\.', '॥'],
- ['/', 'ੵ']
+ [ '1', '\u200d' ],
+ [ '2', '\u200c' ],
+ [ '4', '₹' ],
+ [ 'i', 'ਗ਼' ],
+ [ 'p', 'ਜ਼' ],
+ [ '\\[', 'ੜ' ],
+ [ 'D', '☬' ],
+ [ 'd', 'ੑ' ],
+ [ 'F', 'ੲ' ],
+ [ 'G', 'ੳ' ],
+ [ 'H', 'ਫ਼' ],
+ [ 'K', 'ਖ਼' ],
+ [ 'X', 'ੴ' ],
+ [ 'x', 'ਁ' ],
+ [ 'N', 'ਲ਼' ],
+ [ '\\.', '॥' ],
+ [ '/', 'ੵ' ]
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/pa/pa-jhelum.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/pa/pa-jhelum.js
index 9a0217e3..45f47294 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/pa/pa-jhelum.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/pa/pa-jhelum.js
@@ -10,120 +10,120 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['\\~', '~'],
- ['\\`', '`'],
- ['\\!', '!'],
- ['1', '1'],
- ['\\@', '@'],
- ['2', '2'],
- ['\\#', '#'],
- ['3', '3'],
- ['\\$', '$'],
- ['4', '4'],
- ['\\%', '%'],
- ['5', '5'],
- ['\\^', 'ੳ'],
- ['6', '6'],
- ['\\&', 'ੲ'],
- ['7', '7'],
- ['8', '8'],
- ['\\(', '('],
- ['9', '9'],
- ['\\)', ')'],
- ['0', '0'],
- ['\\_', '_'],
- ['\\-', '-'],
- ['\\+', '+'],
- ['\\=', '='],
- ['Q', 'ਔ'],
- ['q', 'ੌ'],
- ['W', 'ਐ'],
- ['w', 'ੈ'],
- ['E', 'ਆ'],
- ['e', 'ਾ'],
- ['R', 'ਈ'],
- ['r', 'ੀ'],
- ['T', 'ਊ'],
- ['t', 'ੂ'],
- ['Y', 'ੜ'],
- ['y', 'ਰ'],
- ['U', 'ਧ'],
- ['u', 'ਦ'],
- ['I', 'ਘ'],
- ['i', 'ਗ'],
- ['O', 'ਟ'],
- ['o', 'ਤ'],
- ['P', 'ਫ'],
- ['p', 'ਪ'],
- ['\\{', 'ਢ'],
- ['\\[', 'ਡ'],
- ['\\}', 'ਞ'],
- ['\\]', 'ਙ'],
- ['A', 'ਓ'],
- ['a', 'ੋ'],
- ['S', 'ਏ'],
- ['s', 'ੇ'],
- ['D', 'ਅ'],
- ['d', '੍'],
- ['F', 'ਇ'],
- ['f', 'ਿ'],
- ['G', 'ਉ'],
- ['g', 'ੁ'],
- ['H', 'ਠ'],
- ['h', 'ਹ'],
- ['J', 'ਝ'],
- ['j', 'ਜ'],
- ['K', 'ਖ'],
- ['k', 'ਕ'],
- ['L', 'ਥ'],
- ['l', 'ਲ'],
- [':', ':'],
- [';', 'ਸ'],
- ['"', '"'],
- ['\\\'', '\''],
- ['\\|', '।'],
- ['\\', '\\'],
- ['Z', '਼'],
- ['z', 'ੱ'],
- ['X', 'ੰ'],
- ['x', 'ਂ'],
- ['C', 'ਛ'],
- ['c', 'ਚ'],
- ['V', 'ਯ'],
- ['v', 'ਵ'],
- ['B', 'ਭ'],
- ['b', 'ਬ'],
- ['N', 'ਣ'],
- ['n', 'ਨ'],
- ['M', 'ਠ'],
- ['m', 'ਮ'],
- ['\\<', '<'],
- [',', ','],
- ['\\>', '>'],
- ['\\.', '.'],
- ['\\?', '?'],
- ['/', '/'],
- ['\\*', '*']
+ [ '\\~', '~' ],
+ [ '\\`', '`' ],
+ [ '\\!', '!' ],
+ [ '1', '1' ],
+ [ '\\@', '@' ],
+ [ '2', '2' ],
+ [ '\\#', '#' ],
+ [ '3', '3' ],
+ [ '\\$', '$' ],
+ [ '4', '4' ],
+ [ '\\%', '%' ],
+ [ '5', '5' ],
+ [ '\\^', 'ੳ' ],
+ [ '6', '6' ],
+ [ '\\&', 'ੲ' ],
+ [ '7', '7' ],
+ [ '8', '8' ],
+ [ '\\(', '(' ],
+ [ '9', '9' ],
+ [ '\\)', ')' ],
+ [ '0', '0' ],
+ [ '\\_', '_' ],
+ [ '\\-', '-' ],
+ [ '\\+', '+' ],
+ [ '\\=', '=' ],
+ [ 'Q', 'ਔ' ],
+ [ 'q', 'ੌ' ],
+ [ 'W', 'ਐ' ],
+ [ 'w', 'ੈ' ],
+ [ 'E', 'ਆ' ],
+ [ 'e', 'ਾ' ],
+ [ 'R', 'ਈ' ],
+ [ 'r', 'ੀ' ],
+ [ 'T', 'ਊ' ],
+ [ 't', 'ੂ' ],
+ [ 'Y', 'ੜ' ],
+ [ 'y', 'ਰ' ],
+ [ 'U', 'ਧ' ],
+ [ 'u', 'ਦ' ],
+ [ 'I', 'ਘ' ],
+ [ 'i', 'ਗ' ],
+ [ 'O', 'ਟ' ],
+ [ 'o', 'ਤ' ],
+ [ 'P', 'ਫ' ],
+ [ 'p', 'ਪ' ],
+ [ '\\{', 'ਢ' ],
+ [ '\\[', 'ਡ' ],
+ [ '\\}', 'ਞ' ],
+ [ '\\]', 'ਙ' ],
+ [ 'A', 'ਓ' ],
+ [ 'a', 'ੋ' ],
+ [ 'S', 'ਏ' ],
+ [ 's', 'ੇ' ],
+ [ 'D', 'ਅ' ],
+ [ 'd', '੍' ],
+ [ 'F', 'ਇ' ],
+ [ 'f', 'ਿ' ],
+ [ 'G', 'ਉ' ],
+ [ 'g', 'ੁ' ],
+ [ 'H', 'ਠ' ],
+ [ 'h', 'ਹ' ],
+ [ 'J', 'ਝ' ],
+ [ 'j', 'ਜ' ],
+ [ 'K', 'ਖ' ],
+ [ 'k', 'ਕ' ],
+ [ 'L', 'ਥ' ],
+ [ 'l', 'ਲ' ],
+ [ ':', ':' ],
+ [ ';', 'ਸ' ],
+ [ '"', '"' ],
+ [ '\\\'', '\'' ],
+ [ '\\|', '।' ],
+ [ '\\', '\\' ],
+ [ 'Z', '਼' ],
+ [ 'z', 'ੱ' ],
+ [ 'X', 'ੰ' ],
+ [ 'x', 'ਂ' ],
+ [ 'C', 'ਛ' ],
+ [ 'c', 'ਚ' ],
+ [ 'V', 'ਯ' ],
+ [ 'v', 'ਵ' ],
+ [ 'B', 'ਭ' ],
+ [ 'b', 'ਬ' ],
+ [ 'N', 'ਣ' ],
+ [ 'n', 'ਨ' ],
+ [ 'M', 'ਠ' ],
+ [ 'm', 'ਮ' ],
+ [ '\\<', '<' ],
+ [ ',', ',' ],
+ [ '\\>', '>' ],
+ [ '\\.', '.' ],
+ [ '\\?', '?' ],
+ [ '/', '/' ],
+ [ '\\*', '*' ]
],
patterns_x: [
- ['1', '੧'],
- ['2', '੨'],
- ['3', '੩'],
- ['4', '੪'],
- ['5', '੫'],
- ['6', '੬'],
- ['7', '੭'],
- ['8', '੮'],
- ['9', '੯'],
- ['0', '੦'],
- ['y', '੍ਰ'],
- ['i', 'ਗ਼'],
- ['P', 'ਫ਼'],
- ['h', '੍ਹ'],
- ['j', 'ਜ਼'],
- ['K', 'ਖ਼'],
- ['l', 'ਲ਼'],
- [';', 'ਸ਼']
+ [ '1', '੧' ],
+ [ '2', '੨' ],
+ [ '3', '੩' ],
+ [ '4', '੪' ],
+ [ '5', '੫' ],
+ [ '6', '੬' ],
+ [ '7', '੭' ],
+ [ '8', '੮' ],
+ [ '9', '੯' ],
+ [ '0', '੦' ],
+ [ 'y', '੍ਰ' ],
+ [ 'i', 'ਗ਼' ],
+ [ 'P', 'ਫ਼' ],
+ [ 'h', '੍ਹ' ],
+ [ 'j', 'ਜ਼' ],
+ [ 'K', 'ਖ਼' ],
+ [ 'l', 'ਲ਼' ],
+ [ ';', 'ਸ਼' ]
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/pa/pa-phonetic.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/pa/pa-phonetic.js
index 4690c746..d183fd79 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/pa/pa-phonetic.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/pa/pa-phonetic.js
@@ -11,88 +11,88 @@
license: '',
version: '1.0',
patterns: [
- ['!', '੧'],
- ['1', '1'],
- ['@', '੨'],
- ['2', '2'],
- ['#', '੩'],
- ['3', '3'],
- ['\\$', '੪'],
- ['4', '4'],
- ['5', '5'],
- ['6', '6'],
- ['7', '7'],
- ['8', '8'],
- ['\\(', '੯'],
- ['9', '9'],
- ['\\)', '੦'],
- ['0', '0'],
- ['Q', 'ਥ'],
- ['q', 'ਤ'],
- ['w', 'ਾ'],
- ['E', 'ਓ'],
- ['e', 'ੲ'],
- ['r', 'ਰ'],
- ['T', 'ਠ'],
- ['t', 'ਟ'],
- ['Y', 'ੈ'],
- ['y', 'ੇ'],
- ['U', 'ੂ'],
- ['u', 'ੁ'],
- ['I', 'ੀ'],
- ['i', 'ਿ'],
- ['O', 'ੌ'],
- ['o', 'ੋ'],
- ['P', 'ਫ'],
- ['p', 'ਪ'],
- ['\\{', '('],
- ['\\}', ')'],
- ['A', 'ਅ'],
- ['a', 'ੳ'],
- ['S', 'ਸ਼'],
- ['s', 'ਸ'],
- ['D', 'ਧ'],
- ['d', 'ਦ'],
- ['F', 'ਢ'],
- ['f', 'ਡ'],
- ['G', 'ਘ'],
- ['g', 'ਗ'],
- ['h', 'ਹ'],
- ['J', 'ਝ'],
- ['j', 'ਜ'],
- ['K', 'ਖ'],
- ['k', 'ਕ'],
- ['L', 'ਲ਼'],
- ['l', 'ਲ'],
- ['\\', 'ਙ'],
- ['\\~', '?ੱ'],
- ['\\`', '?੍ '],
- ['Z', 'ਗ਼'],
- ['z', 'ਜ਼'],
- ['X', 'ਯ'],
- ['x', 'ਣ'],
- ['C', 'ਛ'],
- ['c', 'ਚ'],
- ['V', 'ੜ'],
- ['v', 'ਵ'],
- ['B', 'ਭ'],
- ['b', 'ਬ'],
- ['N', 'ਂ'],
- ['n', 'ਨ'],
- ['M', 'ੰ'],
- ['m', 'ਮ'],
- ['\\<', 'ਖ਼'],
- ['\\>', 'ੴ'],
- ['\\.', '?਼'],
- ['\\?', '?'],
- ['\\/', 'ਞ'],
- ['%', '੫'],
- ['\\^', '੬'],
- ['&', '੭'],
- ['\\*', '੮'],
- ['R', '੍ਰ'],
- ['H', '੍ਹ'],
- ['W', 'ਾਂ']]
+ [ '!', '੧' ],
+ [ '1', '1' ],
+ [ '@', '੨' ],
+ [ '2', '2' ],
+ [ '#', '੩' ],
+ [ '3', '3' ],
+ [ '\\$', '੪' ],
+ [ '4', '4' ],
+ [ '5', '5' ],
+ [ '6', '6' ],
+ [ '7', '7' ],
+ [ '8', '8' ],
+ [ '\\(', '੯' ],
+ [ '9', '9' ],
+ [ '\\)', '੦' ],
+ [ '0', '0' ],
+ [ 'Q', 'ਥ' ],
+ [ 'q', 'ਤ' ],
+ [ 'w', 'ਾ' ],
+ [ 'E', 'ਓ' ],
+ [ 'e', 'ੲ' ],
+ [ 'r', 'ਰ' ],
+ [ 'T', 'ਠ' ],
+ [ 't', 'ਟ' ],
+ [ 'Y', 'ੈ' ],
+ [ 'y', 'ੇ' ],
+ [ 'U', 'ੂ' ],
+ [ 'u', 'ੁ' ],
+ [ 'I', 'ੀ' ],
+ [ 'i', 'ਿ' ],
+ [ 'O', 'ੌ' ],
+ [ 'o', 'ੋ' ],
+ [ 'P', 'ਫ' ],
+ [ 'p', 'ਪ' ],
+ [ '\\{', '(' ],
+ [ '\\}', ')' ],
+ [ 'A', 'ਅ' ],
+ [ 'a', 'ੳ' ],
+ [ 'S', 'ਸ਼' ],
+ [ 's', 'ਸ' ],
+ [ 'D', 'ਧ' ],
+ [ 'd', 'ਦ' ],
+ [ 'F', 'ਢ' ],
+ [ 'f', 'ਡ' ],
+ [ 'G', 'ਘ' ],
+ [ 'g', 'ਗ' ],
+ [ 'h', 'ਹ' ],
+ [ 'J', 'ਝ' ],
+ [ 'j', 'ਜ' ],
+ [ 'K', 'ਖ' ],
+ [ 'k', 'ਕ' ],
+ [ 'L', 'ਲ਼' ],
+ [ 'l', 'ਲ' ],
+ [ '\\', 'ਙ' ],
+ [ '\\~', 'ੱ' ],
+ [ '\\`', '੍' ],
+ [ 'Z', 'ਗ਼' ],
+ [ 'z', 'ਜ਼' ],
+ [ 'X', 'ਯ' ],
+ [ 'x', 'ਣ' ],
+ [ 'C', 'ਛ' ],
+ [ 'c', 'ਚ' ],
+ [ 'V', 'ੜ' ],
+ [ 'v', 'ਵ' ],
+ [ 'B', 'ਭ' ],
+ [ 'b', 'ਬ' ],
+ [ 'N', 'ਂ' ],
+ [ 'n', 'ਨ' ],
+ [ 'M', 'ੰ' ],
+ [ 'm', 'ਮ' ],
+ [ '\\<', 'ਖ਼' ],
+ [ '\\>', 'ੴ' ],
+ [ '\\.', '।' ],
+ [ '\\?', '?' ],
+ [ '\\/', 'ਞ' ],
+ [ '%', '੫' ],
+ [ '\\^', '੬' ],
+ [ '&', '੭' ],
+ [ '\\*', '੮' ],
+ [ 'R', '੍ਰ' ],
+ [ 'H', '੍ਹ' ],
+ [ 'W', 'ਾਂ' ] ]
};
$.ime.register( paPhonetic );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/pa/pa-transliteration.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/pa/pa-transliteration.js
index af5b4fc6..33bbf4f1 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/pa/pa-transliteration.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/pa/pa-transliteration.js
@@ -17,102 +17,102 @@
* s{(?<deva_letter>[ऀ-ॿ])}{chr(ord($+{deva_letter}) + 0x100)}xmsge;
*/
patterns: [
- ['ਕ੍h', 'c', 'ਚ੍'],
- ['\\\\([A-Za-z\\>_~\\.0-9])', '\\\\', '$1'],
+ [ 'ਕ੍h', 'c', 'ਚ੍' ],
+ [ '\\\\([A-Za-z\\>_~\\.0-9])', '\\\\', '$1' ],
// ਕ-ਹ is the main range of Indic letters.
// ੜ is an additional unique Gurmukhi letter.
- ['([ਕ-ਹੜ]਼?)੍a', '$1'], // Short [a] after a consonant with virama removes the virama
- ['([ਕ-ਹੜ]਼?)੍A', '$1ਾ'], // Long [a] after a consonant with virama removes the virama and adds long [a]
- ['([ਕ-ਹੜ]਼?)a', '$1ਾ'], // 'aa' gives long [a] - short [a] after a consonant without virama adds long [a]
- ['([ਕ-ਹੜ]਼?)੍i', '$1ਿ'],
- ['([ਕ-ਹੜ]਼?)(ਿi|੍I|ੇe)', '$1ੀ'], // 'ii', 'I' and 'ee' give long [i].
- ['([ਕ-ਹੜ]਼?)੍u', '$1ੁ'],
- ['([ਕ-ਹੜ]਼?)(ੁu|੍U|ੋo)', '$1ੂ'], // 'uu', 'U' and 'oo' give long [u].
- ['([ਕ-ਹੜ]਼?)੍e', '$1ੇ'],
- ['([ਕ-ਹੜ]਼?)(i|੍E)', '$1ੈ'], // 'i' after a consonant without virama or 'E' after a consonant with Virama gives "ai"
- ['([ਕ-ਹੜ]਼?)੍[oO]', '$1ੋ'],
- ['([ਕ-ਹੜ]਼?)u', '$1ੌ'], // 'u' after a consonant without virama gives "au"
- ['([ਕ-ਹੜ])੍\\`', '$1਼੍'], // '`' (backtick) after a consonant with virama adds a nukta before the virama
+ [ '([ਕ-ਹੜ]਼?)੍a', '$1' ], // Short [a] after a consonant with virama removes the virama
+ [ '([ਕ-ਹੜ]਼?)੍A', '$1ਾ' ], // Long [a] after a consonant with virama removes the virama and adds long [a]
+ [ '([ਕ-ਹੜ]਼?)a', '$1ਾ' ], // 'aa' gives long [a] - short [a] after a consonant without virama adds long [a]
+ [ '([ਕ-ਹੜ]਼?)੍i', '$1ਿ' ],
+ [ '([ਕ-ਹੜ]਼?)(ਿi|੍I|ੇe)', '$1ੀ' ], // 'ii', 'I' and 'ee' give long [i].
+ [ '([ਕ-ਹੜ]਼?)੍u', '$1ੁ' ],
+ [ '([ਕ-ਹੜ]਼?)(ੁu|੍U|ੋo)', '$1ੂ' ], // 'uu', 'U' and 'oo' give long [u].
+ [ '([ਕ-ਹੜ]਼?)੍e', '$1ੇ' ],
+ [ '([ਕ-ਹੜ]਼?)(i|੍E)', '$1ੈ' ], // 'i' after a consonant without virama or 'E' after a consonant with Virama gives "ai"
+ [ '([ਕ-ਹੜ]਼?)੍[oO]', '$1ੋ' ],
+ [ '([ਕ-ਹੜ]਼?)u', '$1ੌ' ], // 'u' after a consonant without virama gives "au"
+ [ '([ਕ-ਹੜ])੍\\`', '$1਼੍' ], // '`' (backtick) after a consonant with virama adds a nukta before the virama
- ['ਅa', 'ਆ'], // aa
- ['(ਓo|ਉu)', 'ਊ'], //oo, uu
- ['ਅi', 'ਐ'], // ai
- ['ਅ\\^', 'ੲ'], // a^ (iri - base for vowels)
- ['ਉ\\^', 'ੳ'], // u^ (ura - base for vowels)
- ['(ਏe|ਇi)', 'ਈ'], // ee, ii
- ['ਅu', 'ਔ'], // au
- ['ਂ[Mm^]', 'ਁ'], // bindi + 'm', 'M', or '^' -> Adak bindi
- ['ਣ੍N', 'ੰ'], // Tippi - nasalization
+ [ 'ਅa', 'ਆ' ], // aa
+ [ '(ਓo|ਉu)', 'ਊ' ], // oo, uu
+ [ 'ਅi', 'ਐ' ], // ai
+ [ 'ਅ\\^', 'ੲ' ], // a^ (iri - base for vowels)
+ [ 'ਉ\\^', 'ੳ' ], // u^ (ura - base for vowels)
+ [ '(ਏe|ਇi)', 'ਈ' ], // ee, ii
+ [ 'ਅu', 'ਔ' ], // au
+ [ 'ਂ[Mm^]', 'ਁ' ], // bindi + 'm', 'M', or '^' -> Adak bindi
+ [ 'ਣ੍N', 'ੰ' ], // Tippi - nasalization
- ['ਕ੍h', 'ਖ੍'], // kh
- ['ਗ੍h', 'ਘ੍'], // gh
- ['ਨ੍g', 'ਙ੍'], // ng
- ['ਚ੍h', 'ਛ੍'], // ch
- ['ਜ੍h', 'ਝ੍'], // jh
- ['ਨ੍j', 'ਞ੍'], // nj
- ['ਟ੍h', 'ਠ੍'], // Th
- ['ਡ੍h', 'ਢ੍'], // Dh
- ['ਤ੍h', 'ਥ੍'], // th
- ['ਦ੍h', 'ਧ੍'], // dh
- ['ਪ੍h', 'ਫ੍'], // ph
- ['ਬ੍h', 'ਭ੍'], // bh
+ [ 'ਕ੍h', 'ਖ੍' ], // kh
+ [ 'ਗ੍h', 'ਘ੍' ], // gh
+ [ 'ਨ੍g', 'ਙ੍' ], // ng
+ [ 'ਚ੍h', 'ਛ੍' ], // ch
+ [ 'ਜ੍h', 'ਝ੍' ], // jh
+ [ 'ਨ੍j', 'ਞ੍' ], // nj
+ [ 'ਟ੍h', 'ਠ੍' ], // Th
+ [ 'ਡ੍h', 'ਢ੍' ], // Dh
+ [ 'ਤ੍h', 'ਥ੍' ], // th
+ [ 'ਦ੍h', 'ਧ੍' ], // dh
+ [ 'ਪ੍h', 'ਫ੍' ], // ph
+ [ 'ਬ੍h', 'ਭ੍' ], // bh
- ['ਸ੍h', 'ਸ਼੍'], // sh
- ['ਕ਼੍h', 'ਖ਼੍'], // k + nukta + h
+ [ 'ਸ੍h', 'ਸ਼੍' ], // sh
+ [ 'ਕ਼੍h', 'ਖ਼੍' ], // k + nukta + h
- ['a', 'ਅ'],
- ['b', 'ਬ੍'],
- ['c', 'ਚ੍'],
- ['d', 'ਦ੍'],
- ['e', 'ਏ'],
- ['f', 'ਫ੍'],
- ['F', 'ਫ਼੍'], // With nukta
- ['g', 'ਗ੍'],
- ['h', 'ਹ੍'],
- ['i', 'ਇ'],
- ['j', 'ਜ੍'],
- ['k', 'ਕ੍'],
- ['l', 'ਲ੍'],
- ['m', 'ਮ੍'],
- ['n', 'ਨ੍'],
- ['o', 'ਓ'],
- ['p', 'ਪ੍'],
- ['q', 'ੑ'], // Udaat
- ['r', 'ਰ੍'],
- ['s', 'ਸ੍'],
- ['t', 'ਤ੍'],
- ['u', 'ਉ'],
- ['(v|w)', 'ਵ੍'],
- ['y', 'ਯ੍'],
- ['z', 'ੱ'], // Addak - gemination
- ['A', 'ਆ'],
- ['D', 'ਡ੍'],
- ['H', 'ਃ'], // Visarga
- ['I', 'ਈ'],
- ['M', 'ਂ'], // Bindi
- ['N', 'ਣ੍'],
- ['R', 'ੜ੍'], // Rra
- ['S', 'ਸ਼੍'],
- ['T', 'ਟ੍'],
- ['U', 'ਊ'],
- ['X', 'ੴ'], // Ek onkar
- ['Y', 'ੵ'], // Yakash
- ['0', '੦'],
- ['1', '੧'],
- ['2', '੨'],
- ['3', '੩'],
- ['4', '੪'],
- ['5', '੫'],
- ['6', '੬'],
- ['7', '੭'],
- ['8', '੮'],
- ['9', '੯'],
- ['~', '੍'], // Virama
- ['\\`', '਼'], // Nukta
+ [ 'a', 'ਅ' ],
+ [ 'b', 'ਬ੍' ],
+ [ 'c', 'ਚ੍' ],
+ [ 'd', 'ਦ੍' ],
+ [ 'e', 'ਏ' ],
+ [ 'f', 'ਫ੍' ],
+ [ 'F', 'ਫ਼੍' ], // With nukta
+ [ 'g', 'ਗ੍' ],
+ [ 'h', 'ਹ੍' ],
+ [ 'i', 'ਇ' ],
+ [ 'j', 'ਜ੍' ],
+ [ 'k', 'ਕ੍' ],
+ [ 'l', 'ਲ੍' ],
+ [ 'm', 'ਮ੍' ],
+ [ 'n', 'ਨ੍' ],
+ [ 'o', 'ਓ' ],
+ [ 'p', 'ਪ੍' ],
+ [ 'q', 'ੑ' ], // Udaat
+ [ 'r', 'ਰ੍' ],
+ [ 's', 'ਸ੍' ],
+ [ 't', 'ਤ੍' ],
+ [ 'u', 'ਉ' ],
+ [ '(v|w)', 'ਵ੍' ],
+ [ 'y', 'ਯ੍' ],
+ [ 'z', 'ੱ' ], // Addak - gemination
+ [ 'A', 'ਆ' ],
+ [ 'D', 'ਡ੍' ],
+ [ 'H', 'ਃ' ], // Visarga
+ [ 'I', 'ਈ' ],
+ [ 'M', 'ਂ' ], // Bindi
+ [ 'N', 'ਣ੍' ],
+ [ 'R', 'ੜ੍' ], // Rra
+ [ 'S', 'ਸ਼੍' ],
+ [ 'T', 'ਟ੍' ],
+ [ 'U', 'ਊ' ],
+ [ 'X', 'ੴ' ], // Ek onkar
+ [ 'Y', 'ੵ' ], // Yakash
+ [ '0', '੦' ],
+ [ '1', '੧' ],
+ [ '2', '੨' ],
+ [ '3', '੩' ],
+ [ '4', '੪' ],
+ [ '5', '੫' ],
+ [ '6', '੬' ],
+ [ '7', '੭' ],
+ [ '8', '੮' ],
+ [ '9', '੯' ],
+ [ '~', '੍' ], // Virama
+ [ '\\`', '਼' ], // Nukta
- ['।\\.', '॥'], // Double danda, must be before single danda
- ['\\.', '।']] // Danda
+ [ '।\\.', '॥' ], // Double danda, must be before single danda
+ [ '\\.', '।' ] ] // Danda
};
$.ime.register( paTransliteration );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ru/ru-jcuken.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ru/ru-jcuken.js
index 5206cba0..18509262 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ru/ru-jcuken.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ru/ru-jcuken.js
@@ -11,85 +11,85 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['Q', 'Й'],
- ['W', 'Ц'],
- ['E', 'У'],
- ['R', 'К'],
- ['T', 'Е'],
- ['Y', 'Н'],
- ['U', 'Г'],
- ['I', 'Ш'],
- ['O', 'Щ'],
- ['P', 'З'],
- ['{', 'Х'],
- ['}', 'Ъ'],
- ['A', 'Ф'],
- ['S', 'Ы'],
- ['D', 'В'],
- ['F', 'А'],
- ['G', 'П'],
- ['H', 'Р'],
- ['J', 'О'],
- ['K', 'Л'],
- ['L', 'Д'],
- [':', 'Ж'],
- ['"', 'Э'],
- ['Z', 'Я'],
- ['X', 'Ч'],
- ['C', 'С'],
- ['V', 'М'],
- ['B', 'И'],
- ['N', 'Т'],
- ['M', 'Ь'],
- ['<', 'Б'],
- ['>', 'Ю'],
- ['\\?', ','],
+ [ 'Q', 'Й' ],
+ [ 'W', 'Ц' ],
+ [ 'E', 'У' ],
+ [ 'R', 'К' ],
+ [ 'T', 'Е' ],
+ [ 'Y', 'Н' ],
+ [ 'U', 'Г' ],
+ [ 'I', 'Ш' ],
+ [ 'O', 'Щ' ],
+ [ 'P', 'З' ],
+ [ '{', 'Х' ],
+ [ '}', 'Ъ' ],
+ [ 'A', 'Ф' ],
+ [ 'S', 'Ы' ],
+ [ 'D', 'В' ],
+ [ 'F', 'А' ],
+ [ 'G', 'П' ],
+ [ 'H', 'Р' ],
+ [ 'J', 'О' ],
+ [ 'K', 'Л' ],
+ [ 'L', 'Д' ],
+ [ ':', 'Ж' ],
+ [ '"', 'Э' ],
+ [ 'Z', 'Я' ],
+ [ 'X', 'Ч' ],
+ [ 'C', 'С' ],
+ [ 'V', 'М' ],
+ [ 'B', 'И' ],
+ [ 'N', 'Т' ],
+ [ 'M', 'Ь' ],
+ [ '<', 'Б' ],
+ [ '>', 'Ю' ],
+ [ '\\?', ',' ],
- ['q', 'й'],
- ['w', 'ц'],
- ['e', 'у'],
- ['r', 'к'],
- ['t', 'е'],
- ['y', 'н'],
- ['u', 'г'],
- ['i', 'ш'],
- ['o', 'щ'],
- ['p', 'з'],
- ['\\[', 'х'],
- ['\\]', 'ъ'],
- ['a', 'ф'],
- ['s', 'ы'],
- ['d', 'в'],
- ['f', 'а'],
- ['g', 'п'],
- ['h', 'р'],
- ['j', 'о'],
- ['k', 'л'],
- ['l', 'д'],
- [';', 'ж'],
- ['\'', 'э'],
- ['z', 'я'],
- ['x', 'ч'],
- ['c', 'с'],
- ['v', 'м'],
- ['b', 'и'],
- ['n', 'т'],
- ['m', 'ь'],
- [',', 'б'],
- ['\\.', 'ю'],
- ['/', '.'],
+ [ 'q', 'й' ],
+ [ 'w', 'ц' ],
+ [ 'e', 'у' ],
+ [ 'r', 'к' ],
+ [ 't', 'е' ],
+ [ 'y', 'н' ],
+ [ 'u', 'г' ],
+ [ 'i', 'ш' ],
+ [ 'o', 'щ' ],
+ [ 'p', 'з' ],
+ [ '\\[', 'х' ],
+ [ '\\]', 'ъ' ],
+ [ 'a', 'ф' ],
+ [ 's', 'ы' ],
+ [ 'd', 'в' ],
+ [ 'f', 'а' ],
+ [ 'g', 'п' ],
+ [ 'h', 'р' ],
+ [ 'j', 'о' ],
+ [ 'k', 'л' ],
+ [ 'l', 'д' ],
+ [ ';', 'ж' ],
+ [ '\'', 'э' ],
+ [ 'z', 'я' ],
+ [ 'x', 'ч' ],
+ [ 'c', 'с' ],
+ [ 'v', 'м' ],
+ [ 'b', 'и' ],
+ [ 'n', 'т' ],
+ [ 'm', 'ь' ],
+ [ ',', 'б' ],
+ [ '\\.', 'ю' ],
+ [ '/', '.' ],
- ['`', 'ё'],
- ['~', 'Ё'],
+ [ '`', 'ё' ],
+ [ '~', 'Ё' ],
// ! is the same // 1
- ['@', '"'], // 2
- ['#', '№'], // 3
- ['\\$', ';'], // 4
+ [ '@', '"' ], // 2
+ [ '#', '№' ], // 3
+ [ '\\$', ';' ], // 4
// '%' is the same // 5
- ['^', ':'], // 6
- ['&', '?']] // 7
- // '*', '(' and ')' are the same // 8, 9, 0
+ [ '^', ':' ], // 6
+ [ '&', '?' ] ] // 7
+ // '*', '(' and ')' are the same // 8, 9, 0
};
$.ime.register( ruJcuken );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ru/ru-kbd.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ru/ru-kbd.js
index f2d2bc0b..00e3572b 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ru/ru-kbd.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ru/ru-kbd.js
@@ -11,88 +11,88 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['`', 'ё'],
- ['q', 'й'],
- ['w', 'ц'],
- ['e', 'у'],
- ['r', 'к'],
- ['t', 'е'],
- ['y', 'н'],
- ['u', 'г'],
- ['i', 'ш'],
- ['o', 'щ'],
- ['p', 'з'],
- ['\\[', 'х'],
- ['\\]', 'ъ'],
- ['a', 'ф'],
- ['s', 'ы'],
- ['d', 'в'],
- ['f', 'а'],
- ['g', 'п'],
- ['h', 'р'],
- ['j', 'о'],
- ['k', 'л'],
- ['l', 'д'],
- [';', 'ж'],
- ['\'', 'э'],
- ['\\\\', '\\'],
- ['z', 'я'],
- ['x', 'ч'],
- ['c', 'с'],
- ['v', 'м'],
- ['b', 'и'],
- ['n', 'т'],
- ['m', 'ь'],
- [',', 'б'],
- ['\\.', 'ю'],
- ['/', '.'],
- ['\\!', '!'],
- ['\\@', '\"'],
- ['\\#', '№'],
- ['\\$', ';'],
- ['\\%', '%'],
- ['\\^', ':'],
- ['\\&', '?'],
- ['\\*', '*'],
- ['\\(', '('],
- ['\\)', ')'],
- ['\\_', '_'],
- ['\\+', '+'],
- ['\\~', 'Ё'],
- ['Q', 'Й'],
- ['W', 'Ц'],
- ['E', 'У'],
- ['R', 'К'],
- ['T', 'Е'],
- ['Y', 'Н'],
- ['U', 'Г'],
- ['I', 'Ш'],
- ['O', 'Щ'],
- ['P', 'З'],
- ['\\{', 'Х'],
- ['\\}', 'Ъ'],
- ['A', 'Ф'],
- ['S', 'Ы'],
- ['D', 'В'],
- ['F', 'А'],
- ['G', 'П'],
- ['H', 'Р'],
- ['J', 'О'],
- ['K', 'Л'],
- ['L', 'Д'],
- [':', 'Ж'],
- ['\"', 'Э'],
- ['\\|', '|'],
- ['Z', 'Я'],
- ['X', 'Ч'],
- ['C', 'С'],
- ['V', 'М'],
- ['B', 'И'],
- ['N', 'Т'],
- ['M', 'Ь'],
- ['\\<', 'Б'],
- ['\\>', 'Ю'],
- ['\\?', ',']
+ [ '`', 'ё' ],
+ [ 'q', 'й' ],
+ [ 'w', 'ц' ],
+ [ 'e', 'у' ],
+ [ 'r', 'к' ],
+ [ 't', 'е' ],
+ [ 'y', 'н' ],
+ [ 'u', 'г' ],
+ [ 'i', 'ш' ],
+ [ 'o', 'щ' ],
+ [ 'p', 'з' ],
+ [ '\\[', 'х' ],
+ [ '\\]', 'ъ' ],
+ [ 'a', 'ф' ],
+ [ 's', 'ы' ],
+ [ 'd', 'в' ],
+ [ 'f', 'а' ],
+ [ 'g', 'п' ],
+ [ 'h', 'р' ],
+ [ 'j', 'о' ],
+ [ 'k', 'л' ],
+ [ 'l', 'д' ],
+ [ ';', 'ж' ],
+ [ '\'', 'э' ],
+ [ '\\\\', '\\' ],
+ [ 'z', 'я' ],
+ [ 'x', 'ч' ],
+ [ 'c', 'с' ],
+ [ 'v', 'м' ],
+ [ 'b', 'и' ],
+ [ 'n', 'т' ],
+ [ 'm', 'ь' ],
+ [ ',', 'б' ],
+ [ '\\.', 'ю' ],
+ [ '/', '.' ],
+ [ '\\!', '!' ],
+ [ '\\@', '\"' ],
+ [ '\\#', '№' ],
+ [ '\\$', ';' ],
+ [ '\\%', '%' ],
+ [ '\\^', ':' ],
+ [ '\\&', '?' ],
+ [ '\\*', '*' ],
+ [ '\\(', '(' ],
+ [ '\\)', ')' ],
+ [ '\\_', '_' ],
+ [ '\\+', '+' ],
+ [ '\\~', 'Ё' ],
+ [ 'Q', 'Й' ],
+ [ 'W', 'Ц' ],
+ [ 'E', 'У' ],
+ [ 'R', 'К' ],
+ [ 'T', 'Е' ],
+ [ 'Y', 'Н' ],
+ [ 'U', 'Г' ],
+ [ 'I', 'Ш' ],
+ [ 'O', 'Щ' ],
+ [ 'P', 'З' ],
+ [ '\\{', 'Х' ],
+ [ '\\}', 'Ъ' ],
+ [ 'A', 'Ф' ],
+ [ 'S', 'Ы' ],
+ [ 'D', 'В' ],
+ [ 'F', 'А' ],
+ [ 'G', 'П' ],
+ [ 'H', 'Р' ],
+ [ 'J', 'О' ],
+ [ 'K', 'Л' ],
+ [ 'L', 'Д' ],
+ [ ':', 'Ж' ],
+ [ '\"', 'Э' ],
+ [ '\\|', '|' ],
+ [ 'Z', 'Я' ],
+ [ 'X', 'Ч' ],
+ [ 'C', 'С' ],
+ [ 'V', 'М' ],
+ [ 'B', 'И' ],
+ [ 'N', 'Т' ],
+ [ 'M', 'Ь' ],
+ [ '\\<', 'Б' ],
+ [ '\\>', 'Ю' ],
+ [ '\\?', ',' ]
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ru/ru-phonetic.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ru/ru-phonetic.js
index c99e964d..4df95642 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ru/ru-phonetic.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ru/ru-phonetic.js
@@ -11,72 +11,72 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['\\#', 'ё'],
- ['\\$', 'Ё'],
- ['\\%', 'ъ'],
- ['\\^', 'Ъ'],
- ['\\=', 'ч'],
- ['\\+', 'Ч'],
- ['`', 'ю'],
- ['\\~', 'Ю'],
- ['q', 'я'],
- ['Q', 'Я'],
- ['w', 'в'],
- ['W', 'В'],
- ['e', 'е'],
- ['E', 'Е'],
- ['r', 'р'],
- ['R', 'Р'],
- ['t', 'т'],
- ['T', 'Т'],
- ['y', 'ы'],
- ['Y', 'Ы'],
- ['u', 'у'],
- ['U', 'У'],
- ['i', 'и'],
- ['I', 'И'],
- ['o', 'о'],
- ['O', 'О'],
- ['p', 'п'],
- ['P', 'П'],
- ['\\[', 'ш'],
- ['\\{', 'Ш'],
- ['\\]', 'щ'],
- ['\\}', 'Щ'],
- ['a', 'а'],
- ['A', 'А'],
- ['s', 'с'],
- ['S', 'С'],
- ['d', 'д'],
- ['D', 'Д'],
- ['f', 'ф'],
- ['F', 'Ф'],
- ['g', 'г'],
- ['G', 'Г'],
- ['h', 'х'],
- ['H', 'Х'],
- ['j', 'й'],
- ['J', 'Й'],
- ['k', 'к'],
- ['K', 'К'],
- ['l', 'л'],
- ['L', 'Л'],
- ['\\\\', 'э'],
- ['\\|', 'Э'],
- ['z', 'з'],
- ['Z', 'З'],
- ['x', 'ь'],
- ['X', 'Ь'],
- ['c', 'ц'],
- ['C', 'Ц'],
- ['v', 'ж'],
- ['V', 'Ж'],
- ['b', 'б'],
- ['B', 'Б'],
- ['n', 'н'],
- ['N', 'Н'],
- ['m', 'м'],
- ['M', 'М']]
+ [ '\\#', 'ё' ],
+ [ '\\$', 'Ё' ],
+ [ '\\%', 'ъ' ],
+ [ '\\^', 'Ъ' ],
+ [ '\\=', 'ч' ],
+ [ '\\+', 'Ч' ],
+ [ '`', 'ю' ],
+ [ '\\~', 'Ю' ],
+ [ 'q', 'я' ],
+ [ 'Q', 'Я' ],
+ [ 'w', 'в' ],
+ [ 'W', 'В' ],
+ [ 'e', 'е' ],
+ [ 'E', 'Е' ],
+ [ 'r', 'р' ],
+ [ 'R', 'Р' ],
+ [ 't', 'т' ],
+ [ 'T', 'Т' ],
+ [ 'y', 'ы' ],
+ [ 'Y', 'Ы' ],
+ [ 'u', 'у' ],
+ [ 'U', 'У' ],
+ [ 'i', 'и' ],
+ [ 'I', 'И' ],
+ [ 'o', 'о' ],
+ [ 'O', 'О' ],
+ [ 'p', 'п' ],
+ [ 'P', 'П' ],
+ [ '\\[', 'ш' ],
+ [ '\\{', 'Ш' ],
+ [ '\\]', 'щ' ],
+ [ '\\}', 'Щ' ],
+ [ 'a', 'а' ],
+ [ 'A', 'А' ],
+ [ 's', 'с' ],
+ [ 'S', 'С' ],
+ [ 'd', 'д' ],
+ [ 'D', 'Д' ],
+ [ 'f', 'ф' ],
+ [ 'F', 'Ф' ],
+ [ 'g', 'г' ],
+ [ 'G', 'Г' ],
+ [ 'h', 'х' ],
+ [ 'H', 'Х' ],
+ [ 'j', 'й' ],
+ [ 'J', 'Й' ],
+ [ 'k', 'к' ],
+ [ 'K', 'К' ],
+ [ 'l', 'л' ],
+ [ 'L', 'Л' ],
+ [ '\\\\', 'э' ],
+ [ '\\|', 'Э' ],
+ [ 'z', 'з' ],
+ [ 'Z', 'З' ],
+ [ 'x', 'ь' ],
+ [ 'X', 'Ь' ],
+ [ 'c', 'ц' ],
+ [ 'C', 'Ц' ],
+ [ 'v', 'ж' ],
+ [ 'V', 'Ж' ],
+ [ 'b', 'б' ],
+ [ 'B', 'Б' ],
+ [ 'n', 'н' ],
+ [ 'N', 'Н' ],
+ [ 'm', 'м' ],
+ [ 'M', 'М' ] ]
};
$.ime.register( ruPhonetic );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ru/ru-yawerty.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ru/ru-yawerty.js
index 5ba0c775..e4b6ada2 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ru/ru-yawerty.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ru/ru-yawerty.js
@@ -11,98 +11,98 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['/q', 'ђ'],
- ['/w', 'ѓ'],
- ['/e', 'є'],
- ['/r', 'ѕ'],
- ['/t', 'і'],
- ['/y', 'ї'],
- ['/u', 'ј'],
- ['/i', 'љ'],
- ['/o', 'њ'],
- ['/p', 'ћ'],
- ['/a', 'ќ'],
- ['/s', 'ў'],
- ['/d', 'џ'],
- ['/Q', 'Ђ'],
- ['/W', 'Ѓ'],
- ['/E', 'Є'],
- ['/R', 'Ѕ'],
- ['/T', 'І'],
- ['/Y', 'Ї'],
- ['/U', 'Ј'],
- ['/I', 'Љ'],
- ['/O', 'Њ'],
- ['/P', 'Ћ'],
- ['/A', 'Ќ'],
- ['/S', 'Ў'],
- ['/D', 'Џ'],
+ [ '/q', 'ђ' ],
+ [ '/w', 'ѓ' ],
+ [ '/e', 'є' ],
+ [ '/r', 'ѕ' ],
+ [ '/t', 'і' ],
+ [ '/y', 'ї' ],
+ [ '/u', 'ј' ],
+ [ '/i', 'љ' ],
+ [ '/o', 'њ' ],
+ [ '/p', 'ћ' ],
+ [ '/a', 'ќ' ],
+ [ '/s', 'ў' ],
+ [ '/d', 'џ' ],
+ [ '/Q', 'Ђ' ],
+ [ '/W', 'Ѓ' ],
+ [ '/E', 'Є' ],
+ [ '/R', 'Ѕ' ],
+ [ '/T', 'І' ],
+ [ '/Y', 'Ї' ],
+ [ '/U', 'Ј' ],
+ [ '/I', 'Љ' ],
+ [ '/O', 'Њ' ],
+ [ '/P', 'Ћ' ],
+ [ '/A', 'Ќ' ],
+ [ '/S', 'Ў' ],
+ [ '/D', 'Џ' ],
- ['\\=', 'ч'],
- ['`', 'ю'],
- ['q', 'я'],
- ['w', 'в'],
- ['e', 'е'],
- ['r', 'р'],
- ['t', 'т'],
- ['y', 'ы'],
- ['u', 'у'],
- ['i', 'и'],
- ['o', 'о'],
- ['p', 'п'],
- ['\\[', 'ш'],
- ['\\]', 'щ'],
- ['a', 'а'],
- ['s', 'с'],
- ['d', 'д'],
- ['f', 'ф'],
- ['g', 'г'],
- ['h', 'х'],
- ['j', 'й'],
- ['k', 'к'],
- ['l', 'л'],
- ['\\\\', 'э'],
- ['z', 'з'],
- ['x', 'ь'],
- ['c', 'ц'],
- ['v', 'ж'],
- ['b', 'б'],
- ['n', 'н'],
- ['m', 'м'],
- ['\\@', 'ё'],
- ['\\#', 'ъ'],
- ['\\$', 'Ё'],
- ['\\+', 'Ч'],
- ['\\~', 'Ю'],
- ['Q', 'Я'],
- ['W', 'В'],
- ['E', 'Е'],
- ['R', 'Р'],
- ['T', 'Т'],
- ['Y', 'Ы'],
- ['U', 'У'],
- ['I', 'И'],
- ['O', 'О'],
- ['P', 'П'],
- ['\\{', 'Ш'],
- ['\\}', 'Щ'],
- ['A', 'А'],
- ['S', 'С'],
- ['D', 'Д'],
- ['F', 'Ф'],
- ['G', 'Г'],
- ['H', 'Х'],
- ['J', 'Й'],
- ['K', 'К'],
- ['L', 'Л'],
- ['\\|', 'Э'],
- ['Z', 'З'],
- ['X', 'Ь'],
- ['C', 'Ц'],
- ['V', 'Ж'],
- ['B', 'Б'],
- ['N', 'Н'],
- ['M', 'М']]
+ [ '\\=', 'ч' ],
+ [ '`', 'ю' ],
+ [ 'q', 'я' ],
+ [ 'w', 'в' ],
+ [ 'e', 'е' ],
+ [ 'r', 'р' ],
+ [ 't', 'т' ],
+ [ 'y', 'ы' ],
+ [ 'u', 'у' ],
+ [ 'i', 'и' ],
+ [ 'o', 'о' ],
+ [ 'p', 'п' ],
+ [ '\\[', 'ш' ],
+ [ '\\]', 'щ' ],
+ [ 'a', 'а' ],
+ [ 's', 'с' ],
+ [ 'd', 'д' ],
+ [ 'f', 'ф' ],
+ [ 'g', 'г' ],
+ [ 'h', 'х' ],
+ [ 'j', 'й' ],
+ [ 'k', 'к' ],
+ [ 'l', 'л' ],
+ [ '\\\\', 'э' ],
+ [ 'z', 'з' ],
+ [ 'x', 'ь' ],
+ [ 'c', 'ц' ],
+ [ 'v', 'ж' ],
+ [ 'b', 'б' ],
+ [ 'n', 'н' ],
+ [ 'm', 'м' ],
+ [ '\\@', 'ё' ],
+ [ '\\#', 'ъ' ],
+ [ '\\$', 'Ё' ],
+ [ '\\+', 'Ч' ],
+ [ '\\~', 'Ю' ],
+ [ 'Q', 'Я' ],
+ [ 'W', 'В' ],
+ [ 'E', 'Е' ],
+ [ 'R', 'Р' ],
+ [ 'T', 'Т' ],
+ [ 'Y', 'Ы' ],
+ [ 'U', 'У' ],
+ [ 'I', 'И' ],
+ [ 'O', 'О' ],
+ [ 'P', 'П' ],
+ [ '\\{', 'Ш' ],
+ [ '\\}', 'Щ' ],
+ [ 'A', 'А' ],
+ [ 'S', 'С' ],
+ [ 'D', 'Д' ],
+ [ 'F', 'Ф' ],
+ [ 'G', 'Г' ],
+ [ 'H', 'Х' ],
+ [ 'J', 'Й' ],
+ [ 'K', 'К' ],
+ [ 'L', 'Л' ],
+ [ '\\|', 'Э' ],
+ [ 'Z', 'З' ],
+ [ 'X', 'Ь' ],
+ [ 'C', 'Ц' ],
+ [ 'V', 'Ж' ],
+ [ 'B', 'Б' ],
+ [ 'N', 'Н' ],
+ [ 'M', 'М' ] ]
};
$.ime.register( ruYawerty );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sa/sa-iast.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sa/sa-iast.js
index e8e919fa..3d62920f 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sa/sa-iast.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sa/sa-iast.js
@@ -13,45 +13,45 @@
contextLength: 0,
maxKeyLength: 2,
patterns: [
- ['aa', 'ā'],
- ['AA', 'Ā'],
- ['\\^a', 'â'],
- ['\\^A', 'Â'],
- ['ii', 'ī'],
- ['II', 'Ī'],
- ['uu', 'ū'],
- ['UU', 'Ū'],
- ['\\.r', 'ṛ'],
- ['\\.R', 'Ṛ'],
- ['ṛr', 'ṝ'],
- ['ṚR', 'Ṝ'],
- ['\\.l', 'ḷ'],
- ['\\.L', 'Ḷ'],
- ['ḷl', 'ḹ'],
- ['ḶL', 'Ḹ'],
- ['\\.M', 'Ṃ'],
- ['\\.m', 'ṃ'],
- ['\\.h', 'ḥ'],
- ['\\.H', 'Ḥ'],
- [';n', 'ṅ'],
- [';N', 'Ṅ'],
- ['~n', 'ñ'],
- ['~N', 'Ñ'],
- ['\\.t', 'ṭ'],
- ['\\.T', 'Ṭ'],
- ['\\.d', 'ḍ'],
- ['\\.D', 'Ḍ'],
- ['\\.n', 'ṇ'],
- ['\\.N', 'Ṇ'],
- [';s', 'ś'],
- [';S', 'Ś'],
- ['\\.s', 'ṣ'],
- ['\\.S', 'Ṣ'],
- ['ee', 'ē'],
- ['oo', 'ō'],
- [';m', 'ṁ'],
- [',r', 'r̥'],
- ['r̥r', 'r̥̄']
+ [ 'aa', 'ā' ],
+ [ 'AA', 'Ā' ],
+ [ '\\^a', 'â' ],
+ [ '\\^A', 'Â' ],
+ [ 'ii', 'ī' ],
+ [ 'II', 'Ī' ],
+ [ 'uu', 'ū' ],
+ [ 'UU', 'Ū' ],
+ [ '\\.r', 'ṛ' ],
+ [ '\\.R', 'Ṛ' ],
+ [ 'ṛr', 'ṝ' ],
+ [ 'ṚR', 'Ṝ' ],
+ [ '\\.l', 'ḷ' ],
+ [ '\\.L', 'Ḷ' ],
+ [ 'ḷl', 'ḹ' ],
+ [ 'ḶL', 'Ḹ' ],
+ [ '\\.M', 'Ṃ' ],
+ [ '\\.m', 'ṃ' ],
+ [ '\\.h', 'ḥ' ],
+ [ '\\.H', 'Ḥ' ],
+ [ ';n', 'ṅ' ],
+ [ ';N', 'Ṅ' ],
+ [ '~n', 'ñ' ],
+ [ '~N', 'Ñ' ],
+ [ '\\.t', 'ṭ' ],
+ [ '\\.T', 'Ṭ' ],
+ [ '\\.d', 'ḍ' ],
+ [ '\\.D', 'Ḍ' ],
+ [ '\\.n', 'ṇ' ],
+ [ '\\.N', 'Ṇ' ],
+ [ ';s', 'ś' ],
+ [ ';S', 'Ś' ],
+ [ '\\.s', 'ṣ' ],
+ [ '\\.S', 'Ṣ' ],
+ [ 'ee', 'ē' ],
+ [ 'oo', 'ō' ],
+ [ ';m', 'ṁ' ],
+ [ ',r', 'r̥' ],
+ [ 'r̥r', 'r̥̄' ]
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sa/sa-inscript.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sa/sa-inscript.js
index b919f951..a7b0c38f 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sa/sa-inscript.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sa/sa-inscript.js
@@ -10,102 +10,102 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['X', 'ँ'],
- ['x', 'ं'],
- ['_', 'ः'],
- ['D', 'अ'],
- ['E', 'आ'],
- ['F', 'इ'],
- ['R', 'ई'],
- ['G', 'उ'],
- ['T', 'ऊ'],
- ['\\+', 'ृ'],
- ['S', 'ए'],
- ['W', 'ऐ'],
- ['A', 'ओ'],
- ['Q', 'औ'],
- ['k', 'क'],
- ['K', 'ख'],
- ['i', 'ग'],
- ['I', 'घ'],
- ['U', 'ङ'],
- ['\\;', 'च'],
- ['\\:', 'छ'],
- ['p', 'ज'],
- ['P', 'झ'],
- ['\\}', 'ञ'],
- ['\'', '', 'ट'],
- ['"', 'ठ'],
- ['\\[', '','ड'],
- ['\\{', '','ढ'],
- ['C', 'ण'],
- ['l', 'त'],
- ['L', 'थ'],
- ['o', 'द'],
- ['O', 'ध'],
- ['v', 'न'],
- ['h', 'प'],
- ['H', 'फ'],
- ['y', 'ब'],
- ['Y', 'भ'],
- ['c', 'म'],
- ['\\?', '','य'],
- ['j', 'र'],
- ['n', 'ल'],
- ['N', 'ळ'],
- ['b', 'व'],
- ['M', 'श'],
- ['\\<', '','ष'],
- ['m', 'स'],
- ['u', 'ह'],
- ['\\]', '','़'],
- ['e', 'ा'],
- ['f', 'ि'],
- ['r', 'ी'],
- ['g', 'ु'],
- ['t', 'ू'],
- ['\\=', '','ृ'],
- ['\\\\', 'ॄ'],
- ['s', 'े'],
- ['w', 'ै'],
- ['a', 'ो'],
- ['q', 'ौ'],
- ['d', '्'],
- ['\\|', 'ॠ'],
- ['/', 'य'],
- ['\\>', '।'],
- ['0', '','०'],
- ['1', '','१'],
- ['2', '२'],
- ['3', '३'],
- ['4', '४'],
- ['5', '५'],
- ['6', '६'],
- ['7', '७'],
- ['8', '८'],
- ['9', '९'],
- ['\\@', 'ॅ'],
- ['\\#', '','्र'],
- ['\\$', '','र्'],
- ['\\%', '','ज्ञ'],
- ['\\^', '','त्र'],
- ['\\&', 'क्ष'],
- ['\\*', 'श्र'],
- ['\\(', '\u200D'],
- ['\\)', '\u200C'] ],
+ [ 'X', 'ँ' ],
+ [ 'x', 'ं' ],
+ [ '_', 'ः' ],
+ [ 'D', 'अ' ],
+ [ 'E', 'आ' ],
+ [ 'F', 'इ' ],
+ [ 'R', 'ई' ],
+ [ 'G', 'उ' ],
+ [ 'T', 'ऊ' ],
+ [ '\\+', 'ृ' ],
+ [ 'S', 'ए' ],
+ [ 'W', 'ऐ' ],
+ [ 'A', 'ओ' ],
+ [ 'Q', 'औ' ],
+ [ 'k', 'क' ],
+ [ 'K', 'ख' ],
+ [ 'i', 'ग' ],
+ [ 'I', 'घ' ],
+ [ 'U', 'ङ' ],
+ [ '\\;', 'च' ],
+ [ '\\:', 'छ' ],
+ [ 'p', 'ज' ],
+ [ 'P', 'झ' ],
+ [ '\\}', 'ञ' ],
+ [ '\'', '', 'ट' ],
+ [ '"', 'ठ' ],
+ [ '\\[', '','ड' ],
+ [ '\\{', '','ढ' ],
+ [ 'C', 'ण' ],
+ [ 'l', 'त' ],
+ [ 'L', 'थ' ],
+ [ 'o', 'द' ],
+ [ 'O', 'ध' ],
+ [ 'v', 'न' ],
+ [ 'h', 'प' ],
+ [ 'H', 'फ' ],
+ [ 'y', 'ब' ],
+ [ 'Y', 'भ' ],
+ [ 'c', 'म' ],
+ [ '\\?', '','य' ],
+ [ 'j', 'र' ],
+ [ 'n', 'ल' ],
+ [ 'N', 'ळ' ],
+ [ 'b', 'व' ],
+ [ 'M', 'श' ],
+ [ '\\<', '','ष' ],
+ [ 'm', 'स' ],
+ [ 'u', 'ह' ],
+ [ '\\]', '','़' ],
+ [ 'e', 'ा' ],
+ [ 'f', 'ि' ],
+ [ 'r', 'ी' ],
+ [ 'g', 'ु' ],
+ [ 't', 'ू' ],
+ [ '\\=', '','ृ' ],
+ [ '\\\\', 'ॄ' ],
+ [ 's', 'े' ],
+ [ 'w', 'ै' ],
+ [ 'a', 'ो' ],
+ [ 'q', 'ौ' ],
+ [ 'd', '्' ],
+ [ '\\|', 'ॠ' ],
+ [ '/', 'य' ],
+ [ '\\>', '।' ],
+ [ '0', '','०' ],
+ [ '1', '','१' ],
+ [ '2', '२' ],
+ [ '3', '३' ],
+ [ '4', '४' ],
+ [ '5', '५' ],
+ [ '6', '६' ],
+ [ '7', '७' ],
+ [ '8', '८' ],
+ [ '9', '९' ],
+ [ '\\@', 'ॅ' ],
+ [ '\\#', '','्र' ],
+ [ '\\$', '','र्' ],
+ [ '\\%', '','ज्ञ' ],
+ [ '\\^', '','त्र' ],
+ [ '\\&', 'क्ष' ],
+ [ '\\*', 'श्र' ],
+ [ '\\(', '\u200D' ],
+ [ '\\)', '\u200C' ] ],
patterns_x: [
- ['F', 'ऌ'],
- ['\\>', 'ऽ'],
- ['X', 'ॐ'],
- ['e', '\u0951'],
- ['d', '\u0952'],
- ['R', 'ॡ'],
- ['f', 'ॢ'],
- ['r', 'ॣ'],
- ['\\.', '॥'],
- ['\\@', '','ॅ'],
- ['4', '₹']]
+ [ 'F', 'ऌ' ],
+ [ '\\>', 'ऽ' ],
+ [ 'X', 'ॐ' ],
+ [ 'e', '\u0951' ],
+ [ 'd', '\u0952' ],
+ [ 'R', 'ॡ' ],
+ [ 'f', 'ॢ' ],
+ [ 'r', 'ॣ' ],
+ [ '\\.', '॥' ],
+ [ '\\@', '','ॅ' ],
+ [ '4', '₹' ] ]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sa/sa-inscript2.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sa/sa-inscript2.js
index 5aeaeeec..83390d18 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sa/sa-inscript2.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sa/sa-inscript2.js
@@ -10,106 +10,106 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['1', '१'],
- ['\\@', 'ॅ'],
- ['2', '२'],
- ['\\#', '्र'],
- ['3', '३'],
- ['\\$', 'र्'],
- ['4', '४'],
- ['5', '५'],
- ['6', '६'],
- ['7', '७'],
- ['8', '८'],
- ['\\(', '('],
- ['9', '९'],
- ['\\]', ']'],
- ['0', '०'],
- ['\\_', 'ः'],
- ['\\-', '-'],
- ['\\+', 'ऋ'],
- ['\\=', 'ृ'],
- ['Q', 'औ'],
- ['q', 'ौ'],
- ['W', 'ऐ'],
- ['w', 'ै'],
- ['E', 'आ'],
- ['e', 'ा'],
- ['R', 'ई'],
- ['r', 'ी'],
- ['T', 'ऊ'],
- ['t', 'ू'],
- ['Y', 'भ'],
- ['y', 'ब'],
- ['U', 'ङ'],
- ['u', 'ह'],
- ['I', 'घ'],
- ['i', 'ग'],
- ['O', 'ध'],
- ['o', 'द'],
- ['P', 'झ'],
- ['p', 'ज'],
- ['\\{', 'ढ'],
- ['\\[', 'ड'],
- ['\\}', 'ञ'],
- ['\\]', '़'],
- ['\\|', 'ॠ'],
- ['\\\\', 'ॄ'],
- ['A', 'ओ'],
- ['a', 'ो'],
- ['S', 'ए'],
- ['s', 'े'],
- ['D', 'अ'],
- ['d', '्'],
- ['F', 'इ'],
- ['f', 'ि'],
- ['G', 'उ'],
- ['g', 'ु'],
- ['H', 'फ'],
- ['h', 'प'],
- ['j', 'र'],
- ['K', 'ख'],
- ['k', 'क'],
- ['L', 'थ'],
- ['l', 'त'],
- [':', 'छ'],
- [';', 'च'],
- ['"', 'ठ'],
- ['\\\'', 'ट'],
- ['X', 'ँ'],
- ['x', 'ं'],
- ['C', 'ण'],
- ['c', 'म'],
- ['v', 'न'],
- ['b', 'व'],
- ['N', 'ळ'],
- ['n', 'ल'],
- ['M', 'श'],
- ['m', 'स'],
- ['\\<', 'ष'],
- [',', ','],
- ['\\>', '।'],
- ['\\.', '.'],
- ['/', 'य'],
- ['\\%', 'ज्ञ'],
- ['\\^', 'त्र'],
- ['\\&', 'क्ष'],
- ['\\*', 'श्र']
+ [ '1', '१' ],
+ [ '\\@', 'ॅ' ],
+ [ '2', '२' ],
+ [ '\\#', '्र' ],
+ [ '3', '३' ],
+ [ '\\$', 'र्' ],
+ [ '4', '४' ],
+ [ '5', '५' ],
+ [ '6', '६' ],
+ [ '7', '७' ],
+ [ '8', '८' ],
+ [ '\\(', '(' ],
+ [ '9', '९' ],
+ [ '\\]', ']' ],
+ [ '0', '०' ],
+ [ '\\_', 'ः' ],
+ [ '\\-', '-' ],
+ [ '\\+', 'ऋ' ],
+ [ '\\=', 'ृ' ],
+ [ 'Q', 'औ' ],
+ [ 'q', 'ौ' ],
+ [ 'W', 'ऐ' ],
+ [ 'w', 'ै' ],
+ [ 'E', 'आ' ],
+ [ 'e', 'ा' ],
+ [ 'R', 'ई' ],
+ [ 'r', 'ी' ],
+ [ 'T', 'ऊ' ],
+ [ 't', 'ू' ],
+ [ 'Y', 'भ' ],
+ [ 'y', 'ब' ],
+ [ 'U', 'ङ' ],
+ [ 'u', 'ह' ],
+ [ 'I', 'घ' ],
+ [ 'i', 'ग' ],
+ [ 'O', 'ध' ],
+ [ 'o', 'द' ],
+ [ 'P', 'झ' ],
+ [ 'p', 'ज' ],
+ [ '\\{', 'ढ' ],
+ [ '\\[', 'ड' ],
+ [ '\\}', 'ञ' ],
+ [ '\\]', '़' ],
+ [ '\\|', 'ॠ' ],
+ [ '\\\\', 'ॄ' ],
+ [ 'A', 'ओ' ],
+ [ 'a', 'ो' ],
+ [ 'S', 'ए' ],
+ [ 's', 'े' ],
+ [ 'D', 'अ' ],
+ [ 'd', '्' ],
+ [ 'F', 'इ' ],
+ [ 'f', 'ि' ],
+ [ 'G', 'उ' ],
+ [ 'g', 'ु' ],
+ [ 'H', 'फ' ],
+ [ 'h', 'प' ],
+ [ 'j', 'र' ],
+ [ 'K', 'ख' ],
+ [ 'k', 'क' ],
+ [ 'L', 'थ' ],
+ [ 'l', 'त' ],
+ [ ':', 'छ' ],
+ [ ';', 'च' ],
+ [ '"', 'ठ' ],
+ [ '\\\'', 'ट' ],
+ [ 'X', 'ँ' ],
+ [ 'x', 'ं' ],
+ [ 'C', 'ण' ],
+ [ 'c', 'म' ],
+ [ 'v', 'न' ],
+ [ 'b', 'व' ],
+ [ 'N', 'ळ' ],
+ [ 'n', 'ल' ],
+ [ 'M', 'श' ],
+ [ 'm', 'स' ],
+ [ '\\<', 'ष' ],
+ [ ',', ',' ],
+ [ '\\>', '।' ],
+ [ '\\.', '.' ],
+ [ '/', 'य' ],
+ [ '\\%', 'ज्ञ' ],
+ [ '\\^', 'त्र' ],
+ [ '\\&', 'क्ष' ],
+ [ '\\*', 'श्र' ]
],
patterns_x: [
- ['1', '\u200d'],
- ['2', '\u200c'],
- ['4', '₹'],
- ['e', '॑'],
- ['R', 'ॡ'],
- ['r', 'ॣ'],
- ['d', '॒'],
- ['F', 'ऌ'],
- ['f', 'ॢ'],
- ['H', 'फ़'],
- ['X', 'ॐ'],
- ['\\>', 'ऽ'],
- ['\\.', '॥']
+ [ '1', '\u200d' ],
+ [ '2', '\u200c' ],
+ [ '4', '₹' ],
+ [ 'e', '॑' ],
+ [ 'R', 'ॡ' ],
+ [ 'r', 'ॣ' ],
+ [ 'd', '॒' ],
+ [ 'F', 'ऌ' ],
+ [ 'f', 'ॢ' ],
+ [ 'H', 'फ़' ],
+ [ 'X', 'ॐ' ],
+ [ '\\>', 'ऽ' ],
+ [ '\\.', '॥' ]
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sa/sa-transliteration.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sa/sa-transliteration.js
index 30610bce..5b108c43 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sa/sa-transliteration.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sa/sa-transliteration.js
@@ -13,152 +13,152 @@
contextLength: 4,
maxKeyLength: 2,
patterns: [
- ['क्h','c','च्'],
- ['\\\\([A-Za-z\\>_~\\.0-9])','\\\\','$1'],
+ [ 'क्h','c','च्' ],
+ [ '\\\\([A-Za-z\\>_~\\.0-9])','\\\\','$1' ],
- ['([क-ह]़?)्a','$1'],
- ['([क-ह]़?)्A','$1ा'],
- ['([क-ह]़?)a','$1ा'],
- ['([क-ह]़?)्i','$1ि'],
- ['([क-ह]़?)(्I|िi|ॆe)','$1ी'],
- ['([क-ह]़?)्u','$1ु'],
- ['([क-ह]़?)(ुu|्U|ॊo)','$1ू'],
- ['([क-ह]़?)्R','$1ृ'],
- ['([क-ह]़?)ृR','$1ॄ'],
- ['([क-ह]़?)्ळ्l','$1ॢ'],
- ['([क-ह]़?)ॢl','$1ॣ'],
- ['([क-ह]़?)ॆ\\^','$1ॅ'],
- ['([क-ह]़?)्e','$1े'],
- ['([क-ह]़?)्E','$1ॅ'],
- ['([क-ह]़?)ॊ\\^','$1ॉ'],
- ['([क-ह]़?)i','$1ै'],
- ['([क-ह]़?)्o','$1ो'],
- ['([क-ह]़?)्O','$1ॉ'],
- ['([क-ह]़?)u','$1ौ'],
- ['([क-ह]़?)ृa','$1्ऱ'],
- ['([क-ह]़?)ृA','$1्ऱा'],
- ['([क-ह]़?)ृi','$1्ऱि'],
- ['([क-ह]़?)ृI','$1्ऱी'],
- ['([क-ह]़?)ृu','$1्ऱु'],
- ['([क-ह]़?)ृU','$1्ऱू'],
- ['([क-ह]़?)ृ\\^','$1्ऱॅ'],
- ['([क-ह]़?)ृe','$1्ऱे'],
- ['([क-ह]़?)ृE','1्ऱॅ'],
- ['([क-ह]़?)ृo','$1्ऱो'],
- ['([क-ह]़?)ृO','$1्ऱौ'],
- ['([क-ह]़?)ृ\\~','$1्ऱ्'],
- ['([क-ह])्\\`','$1़्'],
+ [ '([क-ह]़?)्a','$1' ],
+ [ '([क-ह]़?)्A','$1ा' ],
+ [ '([क-ह]़?)a','$1ा' ],
+ [ '([क-ह]़?)्i','$1ि' ],
+ [ '([क-ह]़?)(्I|िi|ॆe)','$1ी' ],
+ [ '([क-ह]़?)्u','$1ु' ],
+ [ '([क-ह]़?)(ुu|्U|ॊo)','$1ू' ],
+ [ '([क-ह]़?)्R','$1ृ' ],
+ [ '([क-ह]़?)ृR','$1ॄ' ],
+ [ '([क-ह]़?)्ळ्l','$1ॢ' ],
+ [ '([क-ह]़?)ॢl','$1ॣ' ],
+ [ '([क-ह]़?)ॆ\\^','$1ॅ' ],
+ [ '([क-ह]़?)्e','$1े' ],
+ [ '([क-ह]़?)्E','$1ॅ' ],
+ [ '([क-ह]़?)ॊ\\^','$1ॉ' ],
+ [ '([क-ह]़?)i','$1ै' ],
+ [ '([क-ह]़?)्o','$1ो' ],
+ [ '([क-ह]़?)्O','$1ॉ' ],
+ [ '([क-ह]़?)u','$1ौ' ],
+ [ '([क-ह]़?)ृa','$1्ऱ' ],
+ [ '([क-ह]़?)ृA','$1्ऱा' ],
+ [ '([क-ह]़?)ृi','$1्ऱि' ],
+ [ '([क-ह]़?)ृI','$1्ऱी' ],
+ [ '([क-ह]़?)ृu','$1्ऱु' ],
+ [ '([क-ह]़?)ृU','$1्ऱू' ],
+ [ '([क-ह]़?)ृ\\^','$1्ऱॅ' ],
+ [ '([क-ह]़?)ृe','$1्ऱे' ],
+ [ '([क-ह]़?)ृE','1्ऱॅ' ],
+ [ '([क-ह]़?)ृo','$1्ऱो' ],
+ [ '([क-ह]़?)ृO','$1्ऱौ' ],
+ [ '([क-ह]़?)ृ\\~','$1्ऱ्' ],
+ [ '([क-ह])्\\`','$1़्' ],
- ['अa','आ'],
- ['(ऒo|उu)','ऊ'],
- ['ऎ\\^','ऍ'],
- ['अi','ऐ'],
- ['अ\\^','ॲ'],
- ['(इi|ऎe)','ई'],
- ['ऒ\\^','ऑ'],
- ['अu','औ'],
- ['ऋR','ॠ'],
- ['ळ्l','ऌ'],
- ['ऌl','ॡ'],
- ['ं\\^','ँ'],
- ['ंm','ँ'],
- ['ओM','ॐ'],
+ [ 'अa','आ' ],
+ [ '(ऒo|उu)','ऊ' ],
+ [ 'ऎ\\^','ऍ' ],
+ [ 'अi','ऐ' ],
+ [ 'अ\\^','ॲ' ],
+ [ '(इi|ऎe)','ई' ],
+ [ 'ऒ\\^','ऑ' ],
+ [ 'अu','औ' ],
+ [ 'ऋR','ॠ' ],
+ [ 'ळ्l','ऌ' ],
+ [ 'ऌl','ॡ' ],
+ [ 'ं\\^','ँ' ],
+ [ 'ंm','ँ' ],
+ [ 'ओM','ॐ' ],
- ['क्h','ख्'],
- ['ग्h','घ्'],
- ['न्g','ङ्'],
- ['च्h','छ्'],
- ['ज्h','झ्'],
- ['न्j','ञ्'],
- ['ट्h','ठ्'],
- ['ड्h','ढ्'],
- ['त्h','थ्'],
- ['द्h','ध्'],
- ['प्h','फ्'],
- ['ब्h','भ्'],
- ['ऋa','ऱ'],
- ['ऋA','ऱा'],
- ['ऋi','ऱि'],
- ['ऋI','ऱी'],
- ['ऋu','ऱु'],
- ['ऋU','ऱू'],
- ['ऋ\\^','ऱॅ'],
- ['ऋe','ऱे'],
- ['ऋE','ऱै'],
- ['ऋo','ऱो'],
- ['ऋO','ऱौ'],
- ['ऋ\\~','ऱ्'],
+ [ 'क्h','ख्' ],
+ [ 'ग्h','घ्' ],
+ [ 'न्g','ङ्' ],
+ [ 'च्h','छ्' ],
+ [ 'ज्h','झ्' ],
+ [ 'न्j','ञ्' ],
+ [ 'ट्h','ठ्' ],
+ [ 'ड्h','ढ्' ],
+ [ 'त्h','थ्' ],
+ [ 'द्h','ध्' ],
+ [ 'प्h','फ्' ],
+ [ 'ब्h','भ्' ],
+ [ 'ऋa','ऱ' ],
+ [ 'ऋA','ऱा' ],
+ [ 'ऋi','ऱि' ],
+ [ 'ऋI','ऱी' ],
+ [ 'ऋu','ऱु' ],
+ [ 'ऋU','ऱू' ],
+ [ 'ऋ\\^','ऱॅ' ],
+ [ 'ऋe','ऱे' ],
+ [ 'ऋE','ऱै' ],
+ [ 'ऋo','ऱो' ],
+ [ 'ऋO','ऱौ' ],
+ [ 'ऋ\\~','ऱ्' ],
- ['स्h','ष्'],
- ['क़्h','ख़्'],
- ['ज़्h','ऴ्'],
- ['।\\.','॥'],
+ [ 'स्h','ष्' ],
+ [ 'क़्h','ख़्' ],
+ [ 'ज़्h','ऴ्' ],
+ [ '।\\.','॥' ],
- ['a','अ'],
- ['b','ब्'],
- ['c','क्'],
- ['d','द्'],
- ['e','ए'],
- ['(f|F)','फ़्'],
- ['g','ग्'],
- ['h','ह्'],
- ['i','इ'],
- ['j','ज्'],
- ['k','क्'],
- ['l','ल्'],
- ['m','म्'],
- ['n','न्'],
- ['o','ओ'],
- ['p','प्'],
- ['q','क़्'],
- ['r','र्'],
- ['s','स्'],
- ['t','त्'],
- ['u','उ'],
- ['(v|w)','व्'],
- ['x','क्ष्'],
- ['y','य्'],
- ['(z|Z)','ज़्'],
- ['A','आ'],
- ['B','ब्ब्'],
- ['C','क्क्'],
- ['D','ड्'],
- ['E','ऍ'],
- //'F','फ्'],
- ['G','ग्ग्'],
- ['H','ः'],
- ['I','ई'],
- ['J','ज्ज्'],
- ['K','क्क्'],
- ['L','ळ्'],
- ['M','ं'],
- ['N','ण्'],
- ['O','ऑ'],
- ['P','प्प्'],
- //'Q','अ'],
- ['R','ऋ'],
- ['S','श्'],
- ['T','ट्'],
- ['U','ऊ'],
- ['(V|W)','व्व्'],
- ['X','क्ष्'],
- ['Y','य्य्'],
- //'z','अ'
- ['0','०'],
- ['1','१'],
- ['2','२'],
- ['3','३'],
- ['4','४'],
- ['5','५'],
- ['6','६'],
- ['7','७'],
- ['8','८'],
- ['9','९'],
- ['~','्'],
- ['\\.','।'],
- ['//','ऽ'],
- ['\\`','़'],
- ['(\u200C)*_', '\u200c']]
+ [ 'a','अ' ],
+ [ 'b','ब्' ],
+ [ 'c','क्' ],
+ [ 'd','द्' ],
+ [ 'e','ए' ],
+ [ '(f|F)','फ़्' ],
+ [ 'g','ग्' ],
+ [ 'h','ह्' ],
+ [ 'i','इ' ],
+ [ 'j','ज्' ],
+ [ 'k','क्' ],
+ [ 'l','ल्' ],
+ [ 'm','म्' ],
+ [ 'n','न्' ],
+ [ 'o','ओ' ],
+ [ 'p','प्' ],
+ [ 'q','क़्' ],
+ [ 'r','र्' ],
+ [ 's','स्' ],
+ [ 't','त्' ],
+ [ 'u','उ' ],
+ [ '(v|w)','व्' ],
+ [ 'x','क्ष्' ],
+ [ 'y','य्' ],
+ [ '(z|Z)','ज़्' ],
+ [ 'A','आ' ],
+ [ 'B','ब्ब्' ],
+ [ 'C','क्क्' ],
+ [ 'D','ड्' ],
+ [ 'E','ऍ' ],
+ // 'F','फ्'],
+ [ 'G','ग्ग्' ],
+ [ 'H','ः' ],
+ [ 'I','ई' ],
+ [ 'J','ज्ज्' ],
+ [ 'K','क्क्' ],
+ [ 'L','ळ्' ],
+ [ 'M','ं' ],
+ [ 'N','ण्' ],
+ [ 'O','ऑ' ],
+ [ 'P','प्प्' ],
+ // 'Q','अ'],
+ [ 'R','ऋ' ],
+ [ 'S','श्' ],
+ [ 'T','ट्' ],
+ [ 'U','ऊ' ],
+ [ '(V|W)','व्व्' ],
+ [ 'X','क्ष्' ],
+ [ 'Y','य्य्' ],
+ // 'z','अ'
+ [ '0','०' ],
+ [ '1','१' ],
+ [ '2','२' ],
+ [ '3','३' ],
+ [ '4','४' ],
+ [ '5','५' ],
+ [ '6','६' ],
+ [ '7','७' ],
+ [ '8','८' ],
+ [ '9','९' ],
+ [ '~','्' ],
+ [ '\\.','।' ],
+ [ '//','ऽ' ],
+ [ '\\`','़' ],
+ [ '(\u200C)*_', '\u200c' ] ]
};
$.ime.register( saTransliteration );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sah/sah-transliteration.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sah/sah-transliteration.js
index 235ac3c3..6eaea993 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sah/sah-transliteration.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sah/sah-transliteration.js
@@ -11,92 +11,92 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['Q', 'Й'],
- ['W', 'Ц'],
- ['E', 'У'],
- ['R', 'К'],
- ['T', 'Е'],
- ['Y', 'Н'],
- ['U', 'Г'],
- ['I', 'Ш'],
- ['O', 'Щ'],
- ['P', 'З'],
- ['{', 'Х'],
- ['}', 'Ъ'],
- ['A', 'Ф'],
- ['S', 'Ы'],
- ['D', 'В'],
- ['F', 'А'],
- ['G', 'П'],
- ['H', 'Р'],
- ['J', 'О'],
- ['K', 'Л'],
- ['L', 'Д'],
- [':', 'Ж'],
- ['"', 'Э'],
- ['Z', 'Я'],
- ['X', 'Ч'],
- ['C', 'С'],
- ['V', 'М'],
- ['B', 'И'],
- ['N', 'Т'],
- ['M', 'Ь'],
- ['<', 'Б'],
- ['>', 'Ю'],
- ['\\?', ','],
+ [ 'Q', 'Й' ],
+ [ 'W', 'Ц' ],
+ [ 'E', 'У' ],
+ [ 'R', 'К' ],
+ [ 'T', 'Е' ],
+ [ 'Y', 'Н' ],
+ [ 'U', 'Г' ],
+ [ 'I', 'Ш' ],
+ [ 'O', 'Щ' ],
+ [ 'P', 'З' ],
+ [ '{', 'Х' ],
+ [ '}', 'Ъ' ],
+ [ 'A', 'Ф' ],
+ [ 'S', 'Ы' ],
+ [ 'D', 'В' ],
+ [ 'F', 'А' ],
+ [ 'G', 'П' ],
+ [ 'H', 'Р' ],
+ [ 'J', 'О' ],
+ [ 'K', 'Л' ],
+ [ 'L', 'Д' ],
+ [ ':', 'Ж' ],
+ [ '"', 'Э' ],
+ [ 'Z', 'Я' ],
+ [ 'X', 'Ч' ],
+ [ 'C', 'С' ],
+ [ 'V', 'М' ],
+ [ 'B', 'И' ],
+ [ 'N', 'Т' ],
+ [ 'M', 'Ь' ],
+ [ '<', 'Б' ],
+ [ '>', 'Ю' ],
+ [ '\\?', ',' ],
- ['q', 'й'],
- ['w', 'ц'],
- ['e', 'у'],
- ['r', 'к'],
- ['t', 'е'],
- ['y', 'н'],
- ['u', 'г'],
- ['i', 'ш'],
- ['o', 'щ'],
- ['p', 'з'],
- ['\\[', 'х'],
- ['\\]', 'ъ'],
- ['a', 'ф'],
- ['s', 'ы'],
- ['d', 'в'],
- ['f', 'а'],
- ['g', 'п'],
- ['h', 'р'],
- ['j', 'о'],
- ['k', 'л'],
- ['l', 'д'],
- [';', 'ж'],
- ['\'', 'э'],
- ['z', 'я'],
- ['x', 'ч'],
- ['c', 'с'],
- ['v', 'м'],
- ['b', 'и'],
- ['n', 'т'],
- ['m', 'ь'],
- [',', 'б'],
- ['\\.', 'ю'],
- ['/', '.'],
+ [ 'q', 'й' ],
+ [ 'w', 'ц' ],
+ [ 'e', 'у' ],
+ [ 'r', 'к' ],
+ [ 't', 'е' ],
+ [ 'y', 'н' ],
+ [ 'u', 'г' ],
+ [ 'i', 'ш' ],
+ [ 'o', 'щ' ],
+ [ 'p', 'з' ],
+ [ '\\[', 'х' ],
+ [ '\\]', 'ъ' ],
+ [ 'a', 'ф' ],
+ [ 's', 'ы' ],
+ [ 'd', 'в' ],
+ [ 'f', 'а' ],
+ [ 'g', 'п' ],
+ [ 'h', 'р' ],
+ [ 'j', 'о' ],
+ [ 'k', 'л' ],
+ [ 'l', 'д' ],
+ [ ';', 'ж' ],
+ [ '\'', 'э' ],
+ [ 'z', 'я' ],
+ [ 'x', 'ч' ],
+ [ 'c', 'с' ],
+ [ 'v', 'м' ],
+ [ 'b', 'и' ],
+ [ 'n', 'т' ],
+ [ 'm', 'ь' ],
+ [ ',', 'б' ],
+ [ '\\.', 'ю' ],
+ [ '/', '.' ],
- ['`', '"'],
- ['~', '№'],
+ [ '`', '"' ],
+ [ '~', '№' ],
- ['1', '!'], // 1
- ['!', '?'], // 1
+ [ '1', '!' ], // 1
+ [ '!', '?' ], // 1
// 2, 3 - ?
- ['4', 'ҥ'], // 4
- ['\\$', 'Ҥ'], // 4
- ['5', 'ҕ'], // 5
- ['%', 'Ҕ'], // 5
- ['6', 'ө'], // 6
- ['\\^', 'Ө'], // 6
- ['7', 'һ'], // 7
- ['&', 'Һ'], // 7
- ['8', 'ү'], // 8
- ['\\*', 'Ү'], // 8
- ['9', ';'], // 9
- ['0', ':']] // 0
+ [ '4', 'ҥ' ], // 4
+ [ '\\$', 'Ҥ' ], // 4
+ [ '5', 'ҕ' ], // 5
+ [ '%', 'Ҕ' ], // 5
+ [ '6', 'ө' ], // 6
+ [ '\\^', 'Ө' ], // 6
+ [ '7', 'һ' ], // 7
+ [ '&', 'Һ' ], // 7
+ [ '8', 'ү' ], // 8
+ [ '\\*', 'Ү' ], // 8
+ [ '9', ';' ], // 9
+ [ '0', ':' ] ] // 0
};
$.ime.register( sahTransliteration );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sat/sat-inscript2.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sat/sat-inscript2.js
index 4c8a7900..e0a9f254 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sat/sat-inscript2.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sat/sat-inscript2.js
@@ -4,102 +4,102 @@
var satInScript2 = {
id: 'sat-inscript2',
name: 'संताली इनस्क्रिप्ट २',
- description: 'Enhanced InScript keyboard for Santali language',
+ description: 'Enhanced InScript Devanagari keyboard for Santali language',
date: '2013-20-13',
author: 'Parag Nemade',
license: 'GPLv3',
version: '1.0',
patterns: [
- ['1', '१'],
- ['2', '२'],
- ['\\#', '्र'],
- ['3', '३'],
- ['\\$', 'र्'],
- ['4', '४'],
- ['5', '५'],
- ['6', '६'],
- ['7', '७'],
- ['8', '८'],
- ['\\(', '('],
- ['9', '९'],
- ['\\]', ']'],
- ['0', '०'],
- ['\\_', 'ः'],
- ['\\-', '-'],
- ['Q', 'औ'],
- ['q', 'ौ'],
- ['W', 'ऐ'],
- ['w', 'ै'],
- ['E', 'आ'],
- ['e', 'ा'],
- ['R', 'ई'],
- ['r', 'ी'],
- ['T', 'ऊ'],
- ['t', 'ू'],
- ['Y', 'भ'],
- ['y', 'ब'],
- ['U', 'ङ'],
- ['u', 'ह'],
- ['I', 'घ'],
- ['i', 'ग'],
- ['O', 'ध'],
- ['o', 'द'],
- ['P', 'झ'],
- ['p', 'ज'],
- ['\\{', 'ढ'],
- ['\\[', 'ड'],
- ['\\}', 'ञ'],
- ['\\]', '़'],
- ['A', 'ओ'],
- ['a', 'ो'],
- ['S', 'ए'],
- ['s', 'े'],
- ['D', 'अ'],
- ['d', '्'],
- ['F', 'इ'],
- ['f', 'ि'],
- ['G', 'उ'],
- ['g', 'ु'],
- ['H', 'फ'],
- ['h', 'प'],
- ['j', 'र'],
- ['K', 'ख'],
- ['k', 'क'],
- ['L', 'थ'],
- ['l', 'त'],
- [':', 'छ'],
- [';', 'च'],
- ['\"', 'ठ'],
- ['\'', 'ट'],
- ['z', 'ʼ'],
- ['X', 'ँ'],
- ['x', 'ं'],
- ['C', 'ण'],
- ['c', 'म'],
- ['v', 'न'],
- ['b', 'व'],
- ['n', 'ल'],
- ['m', 'स'],
- [',', ','],
- ['\\>', '।'],
- ['\\.', '.'],
- ['\\?', '?'],
- ['/', 'य'],
- ['\\%', 'ज्ञ'],
- ['\\^', 'त्र'],
- ['\\&', 'क्ष'],
- ['\\*', 'श्र']
+ [ '1', '१' ],
+ [ '2', '२' ],
+ [ '\\#', '्र' ],
+ [ '3', '३' ],
+ [ '\\$', 'र्' ],
+ [ '4', '४' ],
+ [ '5', '५' ],
+ [ '6', '६' ],
+ [ '7', '७' ],
+ [ '8', '८' ],
+ [ '\\(', '(' ],
+ [ '9', '९' ],
+ [ '\\]', ']' ],
+ [ '0', '०' ],
+ [ '\\_', 'ः' ],
+ [ '\\-', '-' ],
+ [ 'Q', 'औ' ],
+ [ 'q', 'ौ' ],
+ [ 'W', 'ऐ' ],
+ [ 'w', 'ै' ],
+ [ 'E', 'आ' ],
+ [ 'e', 'ा' ],
+ [ 'R', 'ई' ],
+ [ 'r', 'ी' ],
+ [ 'T', 'ऊ' ],
+ [ 't', 'ू' ],
+ [ 'Y', 'भ' ],
+ [ 'y', 'ब' ],
+ [ 'U', 'ङ' ],
+ [ 'u', 'ह' ],
+ [ 'I', 'घ' ],
+ [ 'i', 'ग' ],
+ [ 'O', 'ध' ],
+ [ 'o', 'द' ],
+ [ 'P', 'झ' ],
+ [ 'p', 'ज' ],
+ [ '\\{', 'ढ' ],
+ [ '\\[', 'ड' ],
+ [ '\\}', 'ञ' ],
+ [ '\\]', '़' ],
+ [ 'A', 'ओ' ],
+ [ 'a', 'ो' ],
+ [ 'S', 'ए' ],
+ [ 's', 'े' ],
+ [ 'D', 'अ' ],
+ [ 'd', '्' ],
+ [ 'F', 'इ' ],
+ [ 'f', 'ि' ],
+ [ 'G', 'उ' ],
+ [ 'g', 'ु' ],
+ [ 'H', 'फ' ],
+ [ 'h', 'प' ],
+ [ 'j', 'र' ],
+ [ 'K', 'ख' ],
+ [ 'k', 'क' ],
+ [ 'L', 'थ' ],
+ [ 'l', 'त' ],
+ [ ':', 'छ' ],
+ [ ';', 'च' ],
+ [ '\"', 'ठ' ],
+ [ '\'', 'ट' ],
+ [ 'z', 'ʼ' ],
+ [ 'X', 'ँ' ],
+ [ 'x', 'ं' ],
+ [ 'C', 'ण' ],
+ [ 'c', 'म' ],
+ [ 'v', 'न' ],
+ [ 'b', 'व' ],
+ [ 'n', 'ल' ],
+ [ 'm', 'स' ],
+ [ ',', ',' ],
+ [ '\\>', '।' ],
+ [ '\\.', '.' ],
+ [ '\\?', '?' ],
+ [ '/', 'य' ],
+ [ '\\%', 'ज्ञ' ],
+ [ '\\^', 'त्र' ],
+ [ '\\&', 'क्ष' ],
+ [ '\\*', 'श्र' ]
],
patterns_x: [
- ['1', '\u200d'],
- ['2', '\u200c'],
- ['4', '₹'],
- ['F', 'ऌ'],
- ['X', 'ॐ'],
- ['N', 'ळ'],
- [',', '॰'],
- ['\\>', 'ऽ'],
- ['\\.', '॥']
+ [ '1', '\u200d' ],
+ [ '2', '\u200c' ],
+ [ '4', '₹' ],
+ [ 'F', 'ऌ' ],
+ [ 'X', 'ॐ' ],
+ [ 'N', 'ळ' ],
+ [ ',', '॰' ],
+ [ '\\>', 'ऽ' ],
+ [ '\\.', '॥' ]
]
};
$.ime.register( satInScript2 );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sd/sd-inscript2.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sd/sd-inscript2.js
index 438ceeaa..1fd1683a 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sd/sd-inscript2.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sd/sd-inscript2.js
@@ -10,113 +10,113 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['1', '१'],
- ['2', '२'],
- ['\\#', '्र'],
- ['3', '३'],
- ['\\$', 'र्'],
- ['4', '४'],
- ['5', '५'],
- ['6', '६'],
- ['7', '७'],
- ['8', '८'],
- ['\\(', '('],
- ['9', '९'],
- ['\\]', ']'],
- ['0', '०'],
- ['\\-', '-'],
- ['\\+', 'ऋ'],
- ['\\=', 'ृ'],
- ['Q', 'औ'],
- ['q', 'ौ'],
- ['W', 'ऐ'],
- ['w', 'ै'],
- ['E', 'आ'],
- ['e', 'ा'],
- ['R', 'ई'],
- ['r', 'ी'],
- ['T', 'ऊ'],
- ['t', 'ू'],
- ['Y', 'भ'],
- ['y', 'ब'],
- ['U', 'ङ'],
- ['u', 'ह'],
- ['I', 'घ'],
- ['i', 'ग'],
- ['O', 'ध'],
- ['o', 'द'],
- ['P', 'झ'],
- ['p', 'ज'],
- ['\\{', 'ढ'],
- ['\\[', 'ड'],
- ['\\}', 'ञ'],
- ['\\]', '़'],
- ['A', 'ओ'],
- ['a', 'ो'],
- ['S', 'ए'],
- ['s', 'े'],
- ['D', 'अ'],
- ['d', '्'],
- ['F', 'इ'],
- ['f', 'ि'],
- ['G', 'उ'],
- ['g', 'ु'],
- ['H', 'फ'],
- ['h', 'प'],
- ['j', 'र'],
- ['K', 'ख'],
- ['k', 'क'],
- ['L', 'थ'],
- ['l', 'त'],
- [':', 'छ'],
- [';', 'च'],
- ['\"', 'ठ'],
- ['\'', 'ट'],
- ['X', 'ँ'],
- ['C', 'ण'],
- ['c', 'म'],
- ['v', 'न'],
- ['b', 'व'],
- ['n', 'ल'],
- ['M', 'श'],
- ['m', 'स'],
- ['\\<', 'ष'],
- [',', ','],
- ['\\>', '।'],
- ['\\.', '.'],
- ['/', 'य'],
- ['\\%', 'ज्ञ'],
- ['\\^', 'त्र'],
- ['\\&', 'क्ष'],
- ['\\*', 'श्र']
+ [ '1', '१' ],
+ [ '2', '२' ],
+ [ '\\#', '्र' ],
+ [ '3', '३' ],
+ [ '\\$', 'र्' ],
+ [ '4', '४' ],
+ [ '5', '५' ],
+ [ '6', '६' ],
+ [ '7', '७' ],
+ [ '8', '८' ],
+ [ '\\(', '(' ],
+ [ '9', '९' ],
+ [ '\\]', ']' ],
+ [ '0', '०' ],
+ [ '\\-', '-' ],
+ [ '\\+', 'ऋ' ],
+ [ '\\=', 'ृ' ],
+ [ 'Q', 'औ' ],
+ [ 'q', 'ौ' ],
+ [ 'W', 'ऐ' ],
+ [ 'w', 'ै' ],
+ [ 'E', 'आ' ],
+ [ 'e', 'ा' ],
+ [ 'R', 'ई' ],
+ [ 'r', 'ी' ],
+ [ 'T', 'ऊ' ],
+ [ 't', 'ू' ],
+ [ 'Y', 'भ' ],
+ [ 'y', 'ब' ],
+ [ 'U', 'ङ' ],
+ [ 'u', 'ह' ],
+ [ 'I', 'घ' ],
+ [ 'i', 'ग' ],
+ [ 'O', 'ध' ],
+ [ 'o', 'द' ],
+ [ 'P', 'झ' ],
+ [ 'p', 'ज' ],
+ [ '\\{', 'ढ' ],
+ [ '\\[', 'ड' ],
+ [ '\\}', 'ञ' ],
+ [ '\\]', '़' ],
+ [ 'A', 'ओ' ],
+ [ 'a', 'ो' ],
+ [ 'S', 'ए' ],
+ [ 's', 'े' ],
+ [ 'D', 'अ' ],
+ [ 'd', '्' ],
+ [ 'F', 'इ' ],
+ [ 'f', 'ि' ],
+ [ 'G', 'उ' ],
+ [ 'g', 'ु' ],
+ [ 'H', 'फ' ],
+ [ 'h', 'प' ],
+ [ 'j', 'र' ],
+ [ 'K', 'ख' ],
+ [ 'k', 'क' ],
+ [ 'L', 'थ' ],
+ [ 'l', 'त' ],
+ [ ':', 'छ' ],
+ [ ';', 'च' ],
+ [ '\"', 'ठ' ],
+ [ '\'', 'ट' ],
+ [ 'X', 'ँ' ],
+ [ 'C', 'ण' ],
+ [ 'c', 'म' ],
+ [ 'v', 'न' ],
+ [ 'b', 'व' ],
+ [ 'n', 'ल' ],
+ [ 'M', 'श' ],
+ [ 'm', 'स' ],
+ [ '\\<', 'ष' ],
+ [ ',', ',' ],
+ [ '\\>', '।' ],
+ [ '\\.', '.' ],
+ [ '/', 'य' ],
+ [ '\\%', 'ज्ञ' ],
+ [ '\\^', 'त्र' ],
+ [ '\\&', 'क्ष' ],
+ [ '\\*', 'श्र' ]
],
patterns_x: [
- ['1', '\u200d'],
- ['2', '\u200c'],
- ['4', '₹'],
- ['\\+', 'ॠ'],
- ['\\=', 'ृ'],
- ['e', '॑'],
- ['i', 'ग़'],
- ['R', 'ॡ'],
- ['r', 'ॣ'],
- ['p', 'ज़'],
- ['\\{', 'ढ़'],
- ['\\[', 'ड़'],
- ['H', 'फ़'],
- ['J', 'ॻ'],
- ['K', 'ख़'],
- ['k', 'क़'],
- ['d', '॒'],
- ['F', 'ऌ'],
- ['f', 'ॢ'],
- ['x', 'ॐ'],
- ['V', 'ॾ'],
- ['B', 'ॿ'],
- ['N', 'ॼ'],
- [',', '॰'],
- ['\\>', 'ऽ'],
- ['\\.', '॥']
+ [ '1', '\u200d' ],
+ [ '2', '\u200c' ],
+ [ '4', '₹' ],
+ [ '\\+', 'ॠ' ],
+ [ '\\=', 'ृ' ],
+ [ 'e', '॑' ],
+ [ 'i', 'ग़' ],
+ [ 'R', 'ॡ' ],
+ [ 'r', 'ॣ' ],
+ [ 'p', 'ज़' ],
+ [ '\\{', 'ढ़' ],
+ [ '\\[', 'ड़' ],
+ [ 'H', 'फ़' ],
+ [ 'J', 'ॻ' ],
+ [ 'K', 'ख़' ],
+ [ 'k', 'क़' ],
+ [ 'd', '॒' ],
+ [ 'F', 'ऌ' ],
+ [ 'f', 'ॢ' ],
+ [ 'x', 'ॐ' ],
+ [ 'V', 'ॾ' ],
+ [ 'B', 'ॿ' ],
+ [ 'N', 'ॼ' ],
+ [ ',', '॰' ],
+ [ '\\>', 'ऽ' ],
+ [ '\\.', '॥' ]
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sdh/sdh-kbd.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sdh/sdh-kbd.js
index e1b7c2f1..ba556bca 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sdh/sdh-kbd.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sdh/sdh-kbd.js
@@ -11,96 +11,96 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['`', '\u200c'],
- ['1', '١'],
- ['2', '٢'],
- ['3', '٣'],
- ['4', '٤'],
- ['5', '٥'],
- ['6', '٦'],
- ['7', '٧'],
- ['8', '٨'],
- ['9', '٩'],
- ['0', '٠'],
+ [ '`', '\u200c' ],
+ [ '1', '١' ],
+ [ '2', '٢' ],
+ [ '3', '٣' ],
+ [ '4', '٤' ],
+ [ '5', '٥' ],
+ [ '6', '۶' ],
+ [ '7', '٧' ],
+ [ '8', '٨' ],
+ [ '9', '٩' ],
+ [ '0', '٠' ],
- ['q', 'ض'],
- ['w', 'ص'],
- ['e', 'ث'],
- ['r', 'ق'],
- ['t', 'ف'],
- ['y', 'غ'],
- ['u', 'ع'],
- ['i', 'ھ'],
- ['o', 'خ'],
- ['p', 'ح'],
- ['\\[', 'ج'],
- ['\\]', 'چ'],
+ [ 'q', 'ض' ],
+ [ 'w', 'ص' ],
+ [ 'e', 'ث' ],
+ [ 'r', 'ق' ],
+ [ 't', 'ف' ],
+ [ 'y', 'غ' ],
+ [ 'u', 'ع' ],
+ [ 'i', 'ھ' ],
+ [ 'o', 'خ' ],
+ [ 'p', 'ح' ],
+ [ '\\[', 'ج' ],
+ [ '\\]', 'چ' ],
- ['a', 'ش'],
- ['s', 'س'],
- ['d', 'ی'],
- ['f', 'ب'],
- ['g', 'ل'],
- ['h', 'ا'],
- ['j', 'ت'],
- ['k', 'ن'],
- ['l', 'م'],
- [';', 'ک'],
- ['\'', 'گ'],
+ [ 'a', 'ش' ],
+ [ 's', 'س' ],
+ [ 'd', 'ی' ],
+ [ 'f', 'ب' ],
+ [ 'g', 'ل' ],
+ [ 'h', 'ا' ],
+ [ 'j', 'ت' ],
+ [ 'k', 'ن' ],
+ [ 'l', 'م' ],
+ [ ';', 'ک' ],
+ [ '\'', 'گ' ],
- ['z', 'ظ'],
- ['x', 'ط'],
- ['c', 'ز'],
- ['v', 'ر'],
- ['b', 'ذ'],
- ['n', 'د'],
- ['m', 'پ'],
- [',', 'و'],
+ [ 'z', 'ظ' ],
+ [ 'x', 'ط' ],
+ [ 'c', 'ز' ],
+ [ 'v', 'ر' ],
+ [ 'b', 'ذ' ],
+ [ 'n', 'د' ],
+ [ 'm', 'پ' ],
+ [ ',', 'و' ],
- ['~', '÷'],
- ['@', '٬'],
- ['#', '٫'],
- ['%', '٪'],
- ['\\^', '×'],
- ['&', '،'],
- ['\\(', ')'],
- ['\\)', '('],
- ['_', 'ـ'],
+ [ '~', '÷' ],
+ [ '@', '٬' ],
+ [ '#', '٫' ],
+ [ '%', '٪' ],
+ [ '\\^', '×' ],
+ [ '&', '،' ],
+ [ '\\(', ')' ],
+ [ '\\)', '(' ],
+ [ '_', 'ـ' ],
- ['Q', 'ْ'],
- ['W', 'وو'],
- ['E', 'ڤ'],
- ['R', 'ً'],
- ['T', 'ۊ'],
- ['Y', 'ئ'],
- ['U', 'ە'],
- ['I', 'ّ'],
- ['O', ']'],
- ['P', '['],
- ['\\{', '}'],
- ['\\}', '{'],
+ [ 'Q', 'ْ' ],
+ [ 'W', 'وو' ],
+ [ 'E', 'ڤ' ],
+ [ 'R', 'ً' ],
+ [ 'T', 'ۊ' ],
+ [ 'Y', 'ئ' ],
+ [ 'U', 'ە' ],
+ [ 'I', 'ّ' ],
+ [ 'O', ']' ],
+ [ 'P', '[' ],
+ [ '\\{', '}' ],
+ [ '\\}', '{' ],
- ['A', 'ؤ'],
- ['S', 'ئ'],
- ['D', 'ێ'],
- ['F', 'إ'],
- ['G', 'أ'],
- ['H', 'آ'],
- ['J', 'ة'],
- ['K', '»'],
- ['L', '«'],
- ['"', '؛'],
+ [ 'A', 'ؤ' ],
+ [ 'S', 'ئ' ],
+ [ 'D', 'ێ' ],
+ [ 'F', 'إ' ],
+ [ 'G', 'أ' ],
+ [ 'H', 'آ' ],
+ [ 'J', 'ة' ],
+ [ 'K', '»' ],
+ [ 'L', '«' ],
+ [ '"', '؛' ],
- ['Z', 'ۆ'],
- ['X', 'ط'],
- ['C', 'ژ'],
- ['V', 'ڕ'],
- ['B', 'ڵ'],
- ['N', 'ٔ'],
- ['M', 'ء'],
- ['<', '>'],
- ['>', '<'],
- ['\\?', '؟']
+ [ 'Z', 'ۆ' ],
+ [ 'X', 'ط' ],
+ [ 'C', 'ژ' ],
+ [ 'V', 'ڕ' ],
+ [ 'B', 'ڵ' ],
+ [ 'N', 'ٔ' ],
+ [ 'M', 'ء' ],
+ [ '<', '>' ],
+ [ '>', '<' ],
+ [ '\\?', '؟' ]
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/se/se-normforms.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/se/se-normforms.js
index 1b4068d3..0d358a71 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/se/se-normforms.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/se/se-normforms.js
@@ -10,7 +10,7 @@
author: 'John Erling Blad',
license: 'GPLv3',
version: '1.0',
- //contextLength: 1,
+ // contextLength: 1,
maxKeyLength: 3,
patterns: [
// Uses "~" as "approximatly similar to"
@@ -20,8 +20,8 @@
[ '~C', 'Č' ],
[ '~d', 'đ' ],
[ '~D', 'Đ' ],
- //[ '~ng', 'ŋ' ], // The simple ~n does not work as there is a "ñ"
- //[ '~NG', 'Ŋ' ], // The simple ~N does not work as there is a "Ñ"
+ // [ '~ng', 'ŋ' ], // The simple ~n does not work as there is a "ñ"
+ // [ '~NG', 'Ŋ' ], // The simple ~N does not work as there is a "Ñ"
[ '~g', 'ŋ' ],
[ '~G', 'Ŋ' ],
[ '~s', 'š' ],
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/si/si-singlish.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/si/si-singlish.js
index 8ba93b1d..24cf8de4 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/si/si-singlish.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/si/si-singlish.js
@@ -11,99 +11,99 @@
license: 'GPLv3',
version: '1.0',
contextLength: 5,
- maxKeyLength: 2,
+ maxKeyLength: 5,
patterns: [
- //['ඬ්හ්a', 'ඳ'], // nndha
- ['ඬ්h', 'ඳ්'], // nndh
- ['න්න්d', 'ඬ්'], // nnd
- ['න්න්g', 'ඟ්'],// nng
- ['\\u0DC1\\u0DCA\\u200D\\u0DBB\\u0DD2i', '\u0DC1\u0DCA\u200D\u0DBB\u0DD3'],// shrii
- ['\\u0DC1\\u0DCA\\u200D\\u0DBBi', '\u0DC1\u0DCA\u200D\u0DBB\u0DD2'],// shri
- ['ශ්r', '\u0DC1\u0DCA\u200D\u0DBB'], // shr
+ // ['ඬ්හ්a', 'ඳ'], // nndha
+ [ 'ඬ්h', 'ඳ්' ], // nndh
+ [ 'න්න්d', 'ඬ්' ], // nnd
+ [ 'න්න්g', 'ඟ්' ],// nng
+ [ '\\u0DC1\\u0DCA\\u200D\\u0DBB\\u0DD2i', '\u0DC1\u0DCA\u200D\u0DBB\u0DD3' ],// shrii
+ [ '\\u0DC1\\u0DCA\\u200D\\u0DBBi', '\u0DC1\u0DCA\u200D\u0DBB\u0DD2' ],// shri
+ [ 'ශ්r', '\u0DC1\u0DCA\u200D\u0DBB' ], // shr
- ['([\\u0D9A-\\u0DC6])්\\u200Dර්u', '$1ෘ'], // <consonant>ru
- ['([\\u0D9A-\\u0DC6])ෘu', '$1ෲ'], // <consonant>ruu
+ [ '([\\u0D9A-\\u0DC6])්\\u200Dර්u', '$1ෘ' ], // <consonant>ru
+ [ '([\\u0D9A-\\u0DC6])ෘu', '$1ෲ' ], // <consonant>ruu
- ['([\\u0D9A-\\u0DC6])්a', '$1'], // <consonant>a
- ['([\\u0D9A-\\u0DC6])a', '$1ා'], // <consonant>aa
- ['([\\u0D9A-\\u0DC6])්A', '$1ැ'], // <consonant>A
- ['([\\u0D9A-\\u0DC6])ැa', '$1ෑ'], // <consonant>Aa
- ['([\\u0D9A-\\u0DC6])්i', '$1ි'], // <consonant>i
- ['([\\u0D9A-\\u0DC6])ි[ei]', '$1ී'], // <consonant>ie
- ['([\\u0D9A-\\u0DC6])්u', '$1ු'], // <consonant>u
- ['([\\u0D9A-\\u0DC6])ුu', '$1ූ'], // <consonant>u
- ['([\\u0D9A-\\u0DC6])්e', '$1ෙ'], // <consonant>e
- ['([\\u0D9A-\\u0DC6])ෙ[ai]', '$1ේ'], // <consonant>ei
- ['([\\u0D9A-\\u0DC6])්o', '$1ො'], // <consonant>o
- ['([\\u0D9A-\\u0DC6])ොe', '$1ෝ'], // <consonant>oe
- ['([\\u0D9A-\\u0DC6])u', '$1ෞ'], // <consonant>au
- ['([\\u0D9A-\\u0DC6])්I', '$1ෛ'], // <consonant>I
+ [ '([\\u0D9A-\\u0DC6])්a', '$1' ], // <consonant>a
+ [ '([\\u0D9A-\\u0DC6])a', '$1ා' ], // <consonant>aa
+ [ '([\\u0D9A-\\u0DC6])්A', '$1ැ' ], // <consonant>A
+ [ '([\\u0D9A-\\u0DC6])ැa', '$1ෑ' ], // <consonant>Aa
+ [ '([\\u0D9A-\\u0DC6])්i', '$1ි' ], // <consonant>i
+ [ '([\\u0D9A-\\u0DC6])ි[ei]', '$1ී' ], // <consonant>ie
+ [ '([\\u0D9A-\\u0DC6])්u', '$1ු' ], // <consonant>u
+ [ '([\\u0D9A-\\u0DC6])ුu', '$1ූ' ], // <consonant>u
+ [ '([\\u0D9A-\\u0DC6])්e', '$1ෙ' ], // <consonant>e
+ [ '([\\u0D9A-\\u0DC6])ෙ[ai]', '$1ේ' ], // <consonant>ei
+ [ '([\\u0D9A-\\u0DC6])්o', '$1ො' ], // <consonant>o
+ [ '([\\u0D9A-\\u0DC6])ොe', '$1ෝ' ], // <consonant>oe
+ [ '([\\u0D9A-\\u0DC6])u', '$1ෞ' ], // <consonant>au
+ [ '([\\u0D9A-\\u0DC6])්I', '$1ෛ' ], // <consonant>I
- ['([\\u0D9A-\\u0DC6]්)r', '$1\u200Dර්'], // <consonant>r
+ [ '([\\u0D9A-\\u0DC6]්)r', '$1\u200Dර්' ], // <consonant>r
- ['ළුu', 'ළුු'], // Luu
+ [ 'ළුu', 'ළුු' ], // Luu
- ['(ක්h|K)', 'ඛ්'], // kh K
- ['(ග්h|G)', 'ඝ්'], // gh G
- ['ස්h', 'ශ්'], // sh
- ['ch', 'ච්'],
- ['Ch', 'ඡ්'],
- ['Sh', 'ෂ්'],
- ['ඝ්N', 'ඥ්'], // GN
- ['ඨ්h', 'ථ්'], // Th
- ['ඛ්N', 'ඤ්'], // KN
- ['ට්h', 'ත්'], // th
- ['ඪ්h', 'ධ්'], // Dh
- ['ඩ්h', 'ද්'], // dh
- ['(ප්h|P)', 'ඵ්'], // ph P
- ['ළ්u', 'ළු'], // Lu
- ['බ්h', 'භ්'], // bh
+ [ '(ක්h|K)', 'ඛ්' ], // kh K
+ [ '(ග්h|G)', 'ඝ්' ], // gh G
+ [ 'ස්h', 'ශ්' ], // sh
+ [ 'ch', 'ච්' ],
+ [ 'Ch', 'ඡ්' ],
+ [ 'Sh', 'ෂ්' ],
+ [ 'ඝ්N', 'ඥ්' ], // GN
+ [ 'ඨ්h', 'ථ්' ], // Th
+ [ 'ඛ්N', 'ඤ්' ], // KN
+ [ 'ට්h', 'ත්' ], // th
+ [ 'ඪ්h', 'ධ්' ], // Dh
+ [ 'ඩ්h', 'ද්' ], // dh
+ [ '(ප්h|P)', 'ඵ්' ], // ph P
+ [ 'ළ්u', 'ළු' ], // Lu
+ [ 'බ්h', 'භ්' ], // bh
- ['(\\\\r|R)', '\u0DBB\u0DCA\u200D'], // \r R
- ['(\\\\y|Y)', '\u200D\u0DBA\u0DCA'], // \y Y
+ [ '(\\\\r|R)', '\u0DBB\u0DCA\u200D' ], // \r R
+ [ '(\\\\y|Y)', '\u200D\u0DBA\u0DCA' ], // \y Y
- ['අ(a|\\))', 'ආ'], // aa a)
- ['ඇ(a|\\))', 'ඈ'], // Aa A) ae
- ['(ඉ[i\\)e]|එe)', 'ඊ'], // ii i) ie ee
- ['එ[a\\)i]', 'ඒ'], // ea e) ei
- ['ඔ[e\\)]', 'ඕ'], // oe o)
- ['(උ[u\\)]|ඔo)', 'ඌ'], // uu u) oo
- ['අu', 'ඖ'], // au
+ [ 'අ(a|\\))', 'ආ' ], // aa a)
+ [ 'ඇ(a|\\))', 'ඈ' ], // Aa A) ae
+ [ '(ඉ[i\\)e]|එe)', 'ඊ' ], // ii i) ie ee
+ [ 'එ[a\\)i]', 'ඒ' ], // ea e) ei
+ [ 'ඔ[e\\)]', 'ඕ' ], // oe o)
+ [ '(උ[u\\)]|ඔo)', 'ඌ' ], // uu u) oo
+ [ 'අu', 'ඖ' ], // au
- ['\\\\n', 'ං'],
- ['\\\\h', 'ඃ'],
- ['\\\\N', 'ඞ'],
- ['\\\\R', 'ඍ'],
+ [ '\\\\n', 'ං' ],
+ [ '\\\\h', 'ඃ' ],
+ [ '\\\\N', 'ඞ' ],
+ [ '\\\\R', 'ඍ' ],
- ['a', 'අ'],
- ['A', 'ඇ'],
- ['i', 'ඉ'],
- ['e', 'එ'],
- ['o', 'ඔ'],
- ['u', 'උ'],
+ [ 'a', 'අ' ],
+ [ 'A', 'ඇ' ],
+ [ 'i', 'ඉ' ],
+ [ 'e', 'එ' ],
+ [ 'o', 'ඔ' ],
+ [ 'u', 'උ' ],
- ['k', 'ක්'],
- ['b', 'බ්'],
- ['B', 'ඹ්'],
- ['g', 'ග්'],
- ['m', 'ම්'],
- ['y', 'ය්'],
- ['j', 'ජ්'],
- ['r', 'ර්'],
- ['T', 'ඨ්'],
- ['f', 'ෆ්'],
- ['t', 'ට්'],
- ['l', 'ල්'],
- ['D', 'ඪ්'],
- ['d', 'ඩ්'],
- ['(w|v)', 'ව්'],
- ['s', 'ස්'],
- ['q', 'ඣ්'],
- ['h', 'හ්'],
- ['n', 'න්'],
- ['N', 'ණ්'],
- ['p', 'ප්'],
- ['L', 'ළ්']]
+ [ 'k', 'ක්' ],
+ [ 'b', 'බ්' ],
+ [ 'B', 'ඹ්' ],
+ [ 'g', 'ග්' ],
+ [ 'm', 'ම්' ],
+ [ 'y', 'ය්' ],
+ [ 'j', 'ජ්' ],
+ [ 'r', 'ර්' ],
+ [ 'T', 'ඨ්' ],
+ [ 'f', 'ෆ්' ],
+ [ 't', 'ට්' ],
+ [ 'l', 'ල්' ],
+ [ 'D', 'ඪ්' ],
+ [ 'd', 'ඩ්' ],
+ [ '(w|v)', 'ව්' ],
+ [ 's', 'ස්' ],
+ [ 'q', 'ඣ්' ],
+ [ 'h', 'හ්' ],
+ [ 'n', 'න්' ],
+ [ 'N', 'ණ්' ],
+ [ 'p', 'ප්' ],
+ [ 'L', 'ළ්' ] ]
};
$.ime.register( siSinglish );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/si/si-wijesekara.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/si/si-wijesekara.js
index 32f2d852..2f59e8f3 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/si/si-wijesekara.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/si/si-wijesekara.js
@@ -13,92 +13,92 @@
contextLength: 0,
maxKeyLength: 2,
patterns: [
- ['`', '\u0DCA\u200D\u0DBB'],
- ['~', '\u0DBB\u0DCA\u200D'],
- ['q', 'ු'],
- ['w', 'අ'],
- ['අe', 'ඇ'],
- ['e', 'ැ'],
- ['r', 'ර'],
- ['ෙt', 'ඓ'],
- ['t', 'එ'],
- ['y', 'හ'],
- ['u', 'ම'],
- ['i', 'ස'],
- ['o', 'ද'],
- ['p', 'ච'],
- ['\\[', 'ඤ'],
- ['\\]', ';'],
- ['එa', 'ඒ'],
- ['ඔa', 'ඕ'],
- ['a', '්'],
- ['s', 'ි'],
- ['අd', 'ආ'],
- ['d', 'ා'],
- ['f', 'ෙ'],
- ['g', 'ට'],
- ['h', 'ය'],
- ['j', 'ව'],
- ['k', 'න'],
- ['l', 'ක'],
- [';', 'ත'],
- ['\'', '.'],
- ['z', '\''],
- ['x', 'ං'],
- ['c', 'ජ'],
- ['v', 'ඩ'],
- ['b', 'ඉ'],
- ['n', 'බ'],
- ['m', 'ප'],
- ['\\,', 'ල'],
- ['\\.', 'ග'],
+ [ '`', '\u0DCA\u200D\u0DBB' ],
+ [ '~', '\u0DBB\u0DCA\u200D' ],
+ [ 'q', 'ු' ],
+ [ 'w', 'අ' ],
+ [ 'අe', 'ඇ' ],
+ [ 'e', 'ැ' ],
+ [ 'r', 'ර' ],
+ [ 'ෙt', 'ඓ' ],
+ [ 't', 'එ' ],
+ [ 'y', 'හ' ],
+ [ 'u', 'ම' ],
+ [ 'i', 'ස' ],
+ [ 'o', 'ද' ],
+ [ 'p', 'ච' ],
+ [ '\\[', 'ඤ' ],
+ [ '\\]', ';' ],
+ [ 'එa', 'ඒ' ],
+ [ 'ඔa', 'ඕ' ],
+ [ 'a', '්' ],
+ [ 's', 'ි' ],
+ [ 'අd', 'ආ' ],
+ [ 'd', 'ා' ],
+ [ 'f', 'ෙ' ],
+ [ 'g', 'ට' ],
+ [ 'h', 'ය' ],
+ [ 'j', 'ව' ],
+ [ 'k', 'න' ],
+ [ 'l', 'ක' ],
+ [ ';', 'ත' ],
+ [ '\'', '.' ],
+ [ 'z', '\'' ],
+ [ 'x', 'ං' ],
+ [ 'c', 'ජ' ],
+ [ 'v', 'ඩ' ],
+ [ 'b', 'ඉ' ],
+ [ 'n', 'බ' ],
+ [ 'm', 'ප' ],
+ [ '\\,', 'ල' ],
+ [ '\\.', 'ග' ],
- ['Q', 'ූ'],
- ['W', 'උ'],
- ['අE', 'ඈ'],
- ['E', 'ෑ'],
- ['R', 'ඍ'],
- ['T', 'ඔ'],
- ['Y', 'ශ'],
- ['U', 'ඹ'],
- ['I', 'ෂ'],
- ['O', 'ධ'],
- ['P', 'ඡ'],
- ['\\{', 'ඥ'],
- ['\\}', ':'],
- ['උA', 'ඌ'],
- ['ඏA', 'ඐ'],
- ['ඔA', 'ඖ'],
- ['A', 'ෟ'],
- ['S', 'ී'],
- ['ඍD', 'ඎ'],
- ['ෘD', 'ෲ'],
- ['D', 'ෘ'],
- ['F', 'ෆ'],
- ['G', 'ඨ'],
- ['H', 'ය'],
- ['J', 'ළ'],
- ['K', 'ණ'],
- ['L', 'ඛ'],
- ['\\:', 'ථ'],
- ['\"', ','],
- ['Z', '"'],
- ['X', 'ඃ'],
- ['C', 'ඣ'],
- ['V', 'ඪ'],
- ['B', 'ඊ'],
- ['N', 'භ'],
- ['M', 'ඵ'],
- ['\\<', 'ළ'],
- ['\\>', 'ඝ']],
+ [ 'Q', 'ූ' ],
+ [ 'W', 'උ' ],
+ [ 'අE', 'ඈ' ],
+ [ 'E', 'ෑ' ],
+ [ 'R', 'ඍ' ],
+ [ 'T', 'ඔ' ],
+ [ 'Y', 'ශ' ],
+ [ 'U', 'ඹ' ],
+ [ 'I', 'ෂ' ],
+ [ 'O', 'ධ' ],
+ [ 'P', 'ඡ' ],
+ [ '\\{', 'ඥ' ],
+ [ '\\}', ':' ],
+ [ 'උA', 'ඌ' ],
+ [ 'ඏA', 'ඐ' ],
+ [ 'ඔA', 'ඖ' ],
+ [ 'A', 'ෟ' ],
+ [ 'S', 'ී' ],
+ [ 'ඍD', 'ඎ' ],
+ [ 'ෘD', 'ෲ' ],
+ [ 'D', 'ෘ' ],
+ [ 'F', 'ෆ' ],
+ [ 'G', 'ඨ' ],
+ [ 'H', 'ය' ],
+ [ 'J', 'ළ' ],
+ [ 'K', 'ණ' ],
+ [ 'L', 'ඛ' ],
+ [ '\\:', 'ථ' ],
+ [ '\"', ',' ],
+ [ 'Z', '"' ],
+ [ 'X', 'ඃ' ],
+ [ 'C', 'ඣ' ],
+ [ 'V', 'ඪ' ],
+ [ 'B', 'ඊ' ],
+ [ 'N', 'භ' ],
+ [ 'M', 'ඵ' ],
+ [ '\\<', 'ළ' ],
+ [ '\\>', 'ඝ' ] ],
patterns_x: [
- ['o', 'ඳ'],
- ['v', 'ඬ'],
- ['\'', '෴'],
- ['a', 'ෳ'],
- ['\\.', 'ඟ'],
- ['x', 'ඦ'],
- [',', 'ඏ']]
+ [ 'o', 'ඳ' ],
+ [ 'v', 'ඬ' ],
+ [ '\'', '෴' ],
+ [ 'a', 'ෳ' ],
+ [ '\\.', 'ඟ' ],
+ [ 'x', 'ඦ' ],
+ [ ',', 'ඏ' ] ]
};
$.ime.register( siWijesekara );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sk/sk-kbd.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sk/sk-kbd.js
index a8278c04..33157067 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sk/sk-kbd.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sk/sk-kbd.js
@@ -11,93 +11,93 @@
license: 'GPLv3',
version: '1.1',
patterns: [
- ['1', '+'],
- ['2', 'ľ'],
- ['3', 'š'],
- ['4', 'č'],
- ['5', 'ť'],
- ['6', 'ž'],
- ['7', 'ý'],
- ['8', 'á'],
- ['9', 'í'],
- ['0', 'é'],
- ['!', '1'],
- ['@', '2'],
- ['#', '3'],
- ['\\$', '4'],
- ['%', '5'],
- ['\\^', '6'],
- ['&', '7'],
- ['\\*', '8'],
- ['\\(', '9'],
- ['\\)', '0'],
- ['-', '='],
- ['_', '%'],
- ['=', '´'],
- ['\\+', 'ˇ'],
- ['\\[', 'ú'],
- ['\\{', '/'],
- ['\\]', 'ä'],
- ['\\}', '('],
- ['\\\\', 'ň'],
- ['\\|', ')'],
- [';', 'ô'],
- [':', '\"'],
- ['\'', '§'],
- ['\"', '!'],
- ['\\<', '?'],
- ['\\>', ':'],
- ['/', '-'],
- ['\\?', '_'],
- ['`', ';'],
- ['~', '°'],
+ [ '1', '+' ],
+ [ '2', 'ľ' ],
+ [ '3', 'š' ],
+ [ '4', 'č' ],
+ [ '5', 'ť' ],
+ [ '6', 'ž' ],
+ [ '7', 'ý' ],
+ [ '8', 'á' ],
+ [ '9', 'í' ],
+ [ '0', 'é' ],
+ [ '!', '1' ],
+ [ '@', '2' ],
+ [ '#', '3' ],
+ [ '\\$', '4' ],
+ [ '%', '5' ],
+ [ '\\^', '6' ],
+ [ '&', '7' ],
+ [ '\\*', '8' ],
+ [ '\\(', '9' ],
+ [ '\\)', '0' ],
+ [ '-', '=' ],
+ [ '_', '%' ],
+ [ '=', '´' ],
+ [ '\\+', 'ˇ' ],
+ [ '\\[', 'ú' ],
+ [ '\\{', '/' ],
+ [ '\\]', 'ä' ],
+ [ '\\}', '(' ],
+ [ '\\\\', 'ň' ],
+ [ '\\|', ')' ],
+ [ ';', 'ô' ],
+ [ ':', '\"' ],
+ [ '\'', '§' ],
+ [ '\"', '!' ],
+ [ '\\<', '?' ],
+ [ '\\>', ':' ],
+ [ '/', '-' ],
+ [ '\\?', '_' ],
+ [ '`', ';' ],
+ [ '~', '°' ],
- ['´a', 'á'],
- ['´A', 'Á'],
- ['´e', 'é'],
- ['´E', 'É'],
- ['´i', 'í'],
- ['´I', 'Í'],
- ['´l', 'ĺ'],
- ['´L', 'Ĺ'],
- ['´o', 'ó'],
- ['´O', 'Ó'],
- ['´r', 'ŕ'],
- ['´R', 'Ŕ'],
- ['´u', 'ú'],
- ['´U', 'Ú'],
- ['´y', 'ý'],
- ['´Y', 'Ý'],
+ [ '´a', 'á' ],
+ [ '´A', 'Á' ],
+ [ '´e', 'é' ],
+ [ '´E', 'É' ],
+ [ '´i', 'í' ],
+ [ '´I', 'Í' ],
+ [ '´l', 'ĺ' ],
+ [ '´L', 'Ĺ' ],
+ [ '´o', 'ó' ],
+ [ '´O', 'Ó' ],
+ [ '´r', 'ŕ' ],
+ [ '´R', 'Ŕ' ],
+ [ '´u', 'ú' ],
+ [ '´U', 'Ú' ],
+ [ '´y', 'ý' ],
+ [ '´Y', 'Ý' ],
- ['¨a', 'ä'],
- ['¨A', 'Ä'],
- ['\\^o', 'ô'],
- ['\\^O', 'Ô'],
+ [ '¨a', 'ä' ],
+ [ '¨A', 'Ä' ],
+ [ '\\^o', 'ô' ],
+ [ '\\^O', 'Ô' ],
- ['ˇc', 'č'],
- ['ˇC', 'Č'],
- ['ˇd', 'ď'],
- ['ˇD', 'Ď'],
- ['ˇl', 'ľ'],
- ['ˇL', 'Ľ'],
- ['ˇn', 'ň'],
- ['ˇN', 'Ň'],
- ['ˇs', 'š'],
- ['ˇS', 'Š'],
- ['ˇt', 'ť'],
- ['ˇT', 'Ť'],
- ['ˇz', 'ž'],
- ['ˇZ', 'Ž'],
+ [ 'ˇc', 'č' ],
+ [ 'ˇC', 'Č' ],
+ [ 'ˇd', 'ď' ],
+ [ 'ˇD', 'Ď' ],
+ [ 'ˇl', 'ľ' ],
+ [ 'ˇL', 'Ľ' ],
+ [ 'ˇn', 'ň' ],
+ [ 'ˇN', 'Ň' ],
+ [ 'ˇs', 'š' ],
+ [ 'ˇS', 'Š' ],
+ [ 'ˇt', 'ť' ],
+ [ 'ˇT', 'Ť' ],
+ [ 'ˇz', 'ž' ],
+ [ 'ˇZ', 'Ž' ],
// It's QWERTZ
- ['y', 'z'],
- ['z', 'y'],
- ['Y', 'Z'],
- ['Z', 'Y']
+ [ 'y', 'z' ],
+ [ 'z', 'y' ],
+ [ 'Y', 'Z' ],
+ [ 'Z', 'Y' ]
],
patterns_x: [
- ['3', '^'],
- ['=', '¨']
+ [ '3', '^' ],
+ [ '=', '¨' ]
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sr/sr-kbd.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sr/sr-kbd.js
index 87aec37a..3b6b764e 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sr/sr-kbd.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sr/sr-kbd.js
@@ -11,86 +11,86 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['\'g', 'ѓ'],
- ['\'G', 'Ѓ'],
- ['\'k', 'ќ'],
- ['\'K', 'Ќ'],
- ['\\@', '\"'],
- ['\\^', '&'],
- ['\\&', '/'],
- ['\\*', '('],
- ['\\(', ')'],
- ['\\)', '='],
- ['\\-', '\''],
- ['\\_', '?'],
- ['\\=', '+'],
- ['\\+', '*'],
- ['q', 'љ'],
- ['Q', 'Љ'],
- ['w', 'њ'],
- ['W', 'Њ'],
- ['e', 'е'],
- ['E', 'Е'],
- ['r', 'р'],
- ['R', 'Р'],
- ['t', 'т'],
- ['T', 'Т'],
- ['y', 'з'],
- ['Y', 'З'],
- ['u', 'у'],
- ['U', 'У'],
- ['i', 'и'],
- ['I', 'И'],
- ['o', 'о'],
- ['O', 'О'],
- ['p', 'п'],
- ['P', 'П'],
- ['\\[', 'ш'],
- ['\\{', 'Ш'],
- ['\\]', 'ђ'],
- ['\\}', 'Ђ'],
- ['a', 'а'],
- ['A', 'А'],
- ['s', 'с'],
- ['S', 'С'],
- ['d', 'д'],
- ['D', 'Д'],
- ['f', 'ф'],
- ['F', 'Ф'],
- ['g', 'г'],
- ['G', 'Г'],
- ['h', 'х'],
- ['H', 'Х'],
- ['j', 'ј'],
- ['J', 'Ј'],
- ['k', 'к'],
- ['K', 'К'],
- ['l', 'л'],
- ['L', 'Л'],
- [';', 'ч'],
- [':', 'Ч'],
- ['\'', 'ћ'],
- ['\"', 'Ћ'],
- ['\\', 'ж'],
- ['\\|', 'Ж'],
- ['z', 'ѕ'],
- ['Z', 'Ѕ'],
- ['x', 'џ'],
- ['X', 'Џ'],
- ['c', 'ц'],
- ['C', 'Ц'],
- ['v', 'в'],
- ['V', 'В'],
- ['b', 'б'],
- ['B', 'Б'],
- ['n', 'н'],
- ['N', 'Н'],
- ['m', 'м'],
- ['M', 'М'],
- ['\\<', ';'],
- ['\\>', ':'],
- ['/', '-'],
- ['\\?', '_']
+ [ '\'g', 'ѓ' ],
+ [ '\'G', 'Ѓ' ],
+ [ '\'k', 'ќ' ],
+ [ '\'K', 'Ќ' ],
+ [ '\\@', '\"' ],
+ [ '\\^', '&' ],
+ [ '\\&', '/' ],
+ [ '\\*', '(' ],
+ [ '\\(', ')' ],
+ [ '\\)', '=' ],
+ [ '\\-', '\'' ],
+ [ '\\_', '?' ],
+ [ '\\=', '+' ],
+ [ '\\+', '*' ],
+ [ 'q', 'љ' ],
+ [ 'Q', 'Љ' ],
+ [ 'w', 'њ' ],
+ [ 'W', 'Њ' ],
+ [ 'e', 'е' ],
+ [ 'E', 'Е' ],
+ [ 'r', 'р' ],
+ [ 'R', 'Р' ],
+ [ 't', 'т' ],
+ [ 'T', 'Т' ],
+ [ 'y', 'з' ],
+ [ 'Y', 'З' ],
+ [ 'u', 'у' ],
+ [ 'U', 'У' ],
+ [ 'i', 'и' ],
+ [ 'I', 'И' ],
+ [ 'o', 'о' ],
+ [ 'O', 'О' ],
+ [ 'p', 'п' ],
+ [ 'P', 'П' ],
+ [ '\\[', 'ш' ],
+ [ '\\{', 'Ш' ],
+ [ '\\]', 'ђ' ],
+ [ '\\}', 'Ђ' ],
+ [ 'a', 'а' ],
+ [ 'A', 'А' ],
+ [ 's', 'с' ],
+ [ 'S', 'С' ],
+ [ 'd', 'д' ],
+ [ 'D', 'Д' ],
+ [ 'f', 'ф' ],
+ [ 'F', 'Ф' ],
+ [ 'g', 'г' ],
+ [ 'G', 'Г' ],
+ [ 'h', 'х' ],
+ [ 'H', 'Х' ],
+ [ 'j', 'ј' ],
+ [ 'J', 'Ј' ],
+ [ 'k', 'к' ],
+ [ 'K', 'К' ],
+ [ 'l', 'л' ],
+ [ 'L', 'Л' ],
+ [ ';', 'ч' ],
+ [ ':', 'Ч' ],
+ [ '\'', 'ћ' ],
+ [ '\"', 'Ћ' ],
+ [ '\\\\', 'ж' ],
+ [ '\\|', 'Ж' ],
+ [ 'z', 'ѕ' ],
+ [ 'Z', 'Ѕ' ],
+ [ 'x', 'џ' ],
+ [ 'X', 'Џ' ],
+ [ 'c', 'ц' ],
+ [ 'C', 'Ц' ],
+ [ 'v', 'в' ],
+ [ 'V', 'В' ],
+ [ 'b', 'б' ],
+ [ 'B', 'Б' ],
+ [ 'n', 'н' ],
+ [ 'N', 'Н' ],
+ [ 'm', 'м' ],
+ [ 'M', 'М' ],
+ [ '\\<', ';' ],
+ [ '\\>', ':' ],
+ [ '/', '-' ],
+ [ '\\?', '_' ]
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ta/ta-99.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ta/ta-99.js
index d40c3550..8a53f2bc 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ta/ta-99.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ta/ta-99.js
@@ -138,8 +138,6 @@
[ 'b', 'ங' ],
[ 'n', 'ல' ],
[ 'm', 'ர' ],
- // ',', 'ஆ'],
- // '\\.', 'ஆ'],
[ '/', 'ழ' ],
// ksha in non-conjunct form with ZWNJ.
@@ -151,30 +149,28 @@
[ 'T', 'க்ஷ' ],
[ 'Y', 'ஸ்ரீ' ],
[ 'U', 'ற' ],
- [ 'I', 'ன' ],
+ [ 'I', ':' ],
[ 'O', '[' ],
[ 'P', ']' ],
- // '\\{', 'ஆ'],
- // '\\}', 'ஆ'],
[ 'A', '௹' ],
[ 'S', '௺' ],
[ 'D', '௸' ],
[ 'F', 'ஃ' ],
- [ 'G', 'எ' ],
- [ 'H', 'க' ],
- [ 'J', 'ப' ],
+ [ 'G', '⚪' ],
+ [ 'H', '⚫' ],
+ [ 'J', '★' ],
[ 'K', '"' ],
- [ 'L', ':' ],
- [ '\\:', ';' ],
- [ '\'', '\'' ],
+ [ 'L', '௱' ],
+ [ ':', ';' ],
+ [ '"', "'" ],
[ 'Z', '௳' ],
[ 'X', '௴' ],
[ 'C', '௵' ],
[ 'V', '௶' ],
[ 'B', '௷' ],
- [ 'N', 'ல' ],
+ [ 'N', 'ௐ' ],
[ 'M', '/' ],
[ '\\\\0', '\u0be6' ],
@@ -186,7 +182,8 @@
[ '\\\\6', '௬' ],
[ '\\\\7', '௭' ],
[ '\\\\8', '௮' ],
- [ '\\\\9', '௯' ] ]
+ [ '\\\\9', '௯' ]
+ ]
};
$.ime.register( ta99 );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ta/ta-inscript2.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ta/ta-inscript2.js
index c616470d..451594f8 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ta/ta-inscript2.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ta/ta-inscript2.js
@@ -11,95 +11,95 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['1', '௧'],
- ['2', '௨'],
- ['3', '௩'],
- ['4', '௪'],
- ['5', '௫'],
- ['\\^', 'த்ர'],
- ['6', '௬'],
- ['\\&', 'க்ஷ'],
- ['7', '௭'],
- ['\\*', 'ஷ்ர'],
- ['8', '௮'],
- ['\\(', '('],
- ['9', '௯'],
- ['\\)', ')'],
- ['0', '௦'],
- ['\\_', 'ஃ'],
- ['\\-', '-'],
- ['\\=','='],
- ['Q', 'ஔ'],
- ['q', 'ௌ'],
- ['W', 'ஐ'],
- ['w', 'ை'],
- ['E', 'ஆ'],
- ['e', 'ா'],
- ['R', 'ஈ'],
- ['r', 'ீ'],
- ['T', 'ஊ'],
- ['t', 'ூ'],
- ['y', 'y'],
- ['U', 'ங'],
- ['u', 'ஹ'],
- ['p', 'ஜ'],
- ['\\}', 'ஞ'],
- ['A', 'ஓ'],
- ['a', 'ோ '],
- ['S', 'ஏ'],
- ['s', 'ே'],
- ['D', 'அ'],
- ['d', '்'],
- ['F', 'இ'],
- ['f', 'ி'],
- ['G', 'உ'],
- ['g', 'ு'],
- ['h', 'ப'],
- ['J', 'ற'],
- ['j', 'ர'],
- ['k', 'க'],
- ['l', 'த'],
- [';', 'ச'],
- ['\\\'', 'ட'],
- ['\\~', 'ஒ'],
- ['\\`', 'ொ'],
- ['Z', 'எ'],
- ['z', 'ெ'],
- ['x', 'ஂ'],
- ['X', 'X'],
- ['C', 'ண'],
- ['c', 'ம'],
- ['V', 'ன'],
- ['v', 'ந'],
- ['B', 'ழ'],
- ['b', 'வ'],
- ['N', 'ள'],
- ['n', 'ல'],
- ['M', 'ஶ'],
- ['m', 'ஸ'],
- ['\\<', 'ஷ'],
- [',', ','],
- ['\\>', '।'],
- ['\\.', '.'],
- ['/', 'ய']
+ [ '1', '௧' ],
+ [ '2', '௨' ],
+ [ '3', '௩' ],
+ [ '4', '௪' ],
+ [ '5', '௫' ],
+ [ '\\^', 'த்ர' ],
+ [ '6', '௬' ],
+ [ '\\&', 'க்ஷ' ],
+ [ '7', '௭' ],
+ [ '\\*', 'ஷ்ர' ],
+ [ '8', '௮' ],
+ [ '\\(', '(' ],
+ [ '9', '௯' ],
+ [ '\\)', ')' ],
+ [ '0', '௦' ],
+ [ '\\_', 'ஃ' ],
+ [ '\\-', '-' ],
+ [ '\\=','=' ],
+ [ 'Q', 'ஔ' ],
+ [ 'q', 'ௌ' ],
+ [ 'W', 'ஐ' ],
+ [ 'w', 'ை' ],
+ [ 'E', 'ஆ' ],
+ [ 'e', 'ா' ],
+ [ 'R', 'ஈ' ],
+ [ 'r', 'ீ' ],
+ [ 'T', 'ஊ' ],
+ [ 't', 'ூ' ],
+ [ 'y', 'y' ],
+ [ 'U', 'ங' ],
+ [ 'u', 'ஹ' ],
+ [ 'p', 'ஜ' ],
+ [ '\\}', 'ஞ' ],
+ [ 'A', 'ஓ' ],
+ [ 'a', 'ோ ' ],
+ [ 'S', 'ஏ' ],
+ [ 's', 'ே' ],
+ [ 'D', 'அ' ],
+ [ 'd', '்' ],
+ [ 'F', 'இ' ],
+ [ 'f', 'ி' ],
+ [ 'G', 'உ' ],
+ [ 'g', 'ு' ],
+ [ 'h', 'ப' ],
+ [ 'J', 'ற' ],
+ [ 'j', 'ர' ],
+ [ 'k', 'க' ],
+ [ 'l', 'த' ],
+ [ ';', 'ச' ],
+ [ '\\\'', 'ட' ],
+ [ '\\~', 'ஒ' ],
+ [ '\\`', 'ொ' ],
+ [ 'Z', 'எ' ],
+ [ 'z', 'ெ' ],
+ [ 'x', 'ஂ' ],
+ [ 'X', 'X' ],
+ [ 'C', 'ண' ],
+ [ 'c', 'ம' ],
+ [ 'V', 'ன' ],
+ [ 'v', 'ந' ],
+ [ 'B', 'ழ' ],
+ [ 'b', 'வ' ],
+ [ 'N', 'ள' ],
+ [ 'n', 'ல' ],
+ [ 'M', 'ஶ' ],
+ [ 'm', 'ஸ' ],
+ [ '\\<', 'ஷ' ],
+ [ ',', ',' ],
+ [ '\\>', '।' ],
+ [ '\\.', '.' ],
+ [ '/', 'ய' ]
],
patterns_x: [
- ['1', '\u200d'],
- ['2', '\u200c'],
- ['4', '₹'],
- ['0', '௰'],
- ['\\-', '௱'],
- ['\\=', '௲'],
- ['y', '௷'],
- ['h', '௶'],
- ['X', 'ௐ'],
- ['C', '௸'],
- ['c', '௴'],
- ['V', '௺'],
- ['v', '௳'],
- ['b', '௵'],
- [',', '௹'],
- ['\\.', '॥']
+ [ '1', '\u200d' ],
+ [ '2', '\u200c' ],
+ [ '4', '₹' ],
+ [ '0', '௰' ],
+ [ '\\-', '௱' ],
+ [ '\\=', '௲' ],
+ [ 'y', '௷' ],
+ [ 'h', '௶' ],
+ [ 'X', 'ௐ' ],
+ [ 'C', '௸' ],
+ [ 'c', '௴' ],
+ [ 'V', '௺' ],
+ [ 'v', '௳' ],
+ [ 'b', '௵' ],
+ [ ',', '௹' ],
+ [ '\\.', '॥' ]
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/te/te-apple.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/te/te-apple.js
index eca65087..ef488365 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/te/te-apple.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/te/te-apple.js
@@ -11,116 +11,116 @@
version: '1.0',
patterns: [
- ['1', '1'],
- ['2', '2'],
- ['3', '3'],
- ['4', '4'],
- ['5', '5'],
- ['6', '6'],
- ['7', '7'],
- ['8', '8'],
- ['\\(', '('],
- ['9', '9'],
- ['\\)', ')'],
- ['0', '0'],
- ['\\_', '÷'],
- ['\\-', '×'],
- ['\\+', '+'],
- ['\\=', '='],
+ [ '1', '1' ],
+ [ '2', '2' ],
+ [ '3', '3' ],
+ [ '4', '4' ],
+ [ '5', '5' ],
+ [ '6', '6' ],
+ [ '7', '7' ],
+ [ '8', '8' ],
+ [ '\\(', '(' ],
+ [ '9', '9' ],
+ [ '\\)', ')' ],
+ [ '0', '0' ],
+ [ '\\_', '÷' ],
+ [ '\\-', '×' ],
+ [ '\\+', '+' ],
+ [ '\\=', '=' ],
- ['\\!', '!'],
- ['\\@', '\''],
- ['\\#', '%'],
- ['\\$', '్పు'],
- ['\\%', '్ర'],
- ['\\^', '-'],
- ['\\&', '|'],
- ['\\*', '`'],
+ [ '\\!', '!' ],
+ [ '\\@', '\'' ],
+ [ '\\#', '%' ],
+ [ '\\$', '్పు' ],
+ [ '\\%', '్ర' ],
+ [ '\\^', '-' ],
+ [ '\\&', '|' ],
+ [ '\\*', '`' ],
- ['([క-హ])e', '$1ా'],
- ['([క-హ])E', '$1ౄ'],
- ['([క-హ])r', '$1ి'],
- ['([క-హ])w', '$1ీ'],
- ['([క-హ])W', '$1ృ'],
- ['([క-హ])t', '$1ొ'],
- ['([క-హ])y', '$1ో'],
- ['([క-హ])u', '$1ె'],
- ['([క-హ])i', '$1ు'],
- ['([క-హ])o', '$1ే'],
- ['([క-హ])p', '$1ూ'],
- ['([క-హ])\\[', '$1ై'],
- ['([క-హ])\\]', '$1ౌ'],
+ [ '([క-హ])e', '$1ా' ],
+ [ '([క-హ])E', '$1ౄ' ],
+ [ '([క-హ])r', '$1ి' ],
+ [ '([క-హ])w', '$1ీ' ],
+ [ '([క-హ])W', '$1ృ' ],
+ [ '([క-హ])t', '$1ొ' ],
+ [ '([క-హ])y', '$1ో' ],
+ [ '([క-హ])u', '$1ె' ],
+ [ '([క-హ])i', '$1ు' ],
+ [ '([క-హ])o', '$1ే' ],
+ [ '([క-హ])p', '$1ూ' ],
+ [ '([క-హ])\\[', '$1ై' ],
+ [ '([క-హ])\\]', '$1ౌ' ],
- ['Q', 'క్ష్మి'],
- ['q', 'అ'],
- ['W', 'ఋ'],
- ['w', 'ఈ'],
- ['E', 'ౠ'],
- ['e', 'ఆ'],
- ['R', 'ఙ'],
- ['r', 'ఇ'],
- ['T', 'ఞ'],
- ['t', 'ఒ'],
- ['Y', 'క్ష'],
- ['y', 'ఓ'],
- ['U', 'శ్రీ'],
- ['u', 'ఎ'],
- ['I', '/'],
- ['i', 'ఉ'],
- ['O', 'స్త్ర'],
- ['o', 'ఏ'],
- ['P', 'ష్ట్ర'],
- ['p', 'ఊ'],
- ['\\{', 'క్ష్మ'],
- ['\\[', 'ఐ'],
- ['\\}', '!'],
- ['\\]', 'ఔ'],
- ['\\|', 'ఁ'],
- ['\\\\', 'ః'],
- ['A', 'ళ'],
- ['a', 'ల'],
- ['S', 'థ'],
- ['s', 'త'],
- ['D', 'ధ'],
- ['d', 'ద'],
- ['F', 'శ'],
- ['f', 'వ'],
- ['G', ':'],
- ['g', 'ం'],
- ['H', '్'],
- ['h', '్'],
- ['J', 'ఖ'],
- ['j', 'క'],
- ['K', 'ఱ'],
- ['k', 'ర'],
- ['L', 'ణ'],
- ['l', 'న'],
- [':', 'ఫ'],
- [';', 'ప'],
- ['"', 'ష'],
- ['\\\'', 'స'],
- ['\\~', '~'],
- ['\\`', '`'],
- ['Z', 'ఠ'],
- ['z', 'ట'],
- ['X', 'ఘ'],
- ['x', 'గ'],
- ['C', 'ఢ'],
- ['c', 'డ'],
- ['V', 'భ'],
- ['v', 'బ'],
- ['B', 'హ'],
- ['b', 'మ'],
- ['N', 'క్ష్మీ'],
- ['n', 'య'],
- ['M', 'ఛ'],
- ['m', 'చ'],
- ['\\<', ';'],
- [',', ','],
- ['\\>', '?'],
- ['\\.', '.'],
- ['/', 'జ'],
- ['\\?', 'ఝ']
+ [ 'Q', 'క్ష్మి' ],
+ [ 'q', 'అ' ],
+ [ 'W', 'ఋ' ],
+ [ 'w', 'ఈ' ],
+ [ 'E', 'ౠ' ],
+ [ 'e', 'ఆ' ],
+ [ 'R', 'ఙ' ],
+ [ 'r', 'ఇ' ],
+ [ 'T', 'ఞ' ],
+ [ 't', 'ఒ' ],
+ [ 'Y', 'క్ష' ],
+ [ 'y', 'ఓ' ],
+ [ 'U', 'శ్రీ' ],
+ [ 'u', 'ఎ' ],
+ [ 'I', '/' ],
+ [ 'i', 'ఉ' ],
+ [ 'O', 'స్త్ర' ],
+ [ 'o', 'ఏ' ],
+ [ 'P', 'ష్ట్ర' ],
+ [ 'p', 'ఊ' ],
+ [ '\\{', 'క్ష్మ' ],
+ [ '\\[', 'ఐ' ],
+ [ '\\}', '!' ],
+ [ '\\]', 'ఔ' ],
+ [ '\\|', 'ఁ' ],
+ [ '\\\\', 'ః' ],
+ [ 'A', 'ళ' ],
+ [ 'a', 'ల' ],
+ [ 'S', 'థ' ],
+ [ 's', 'త' ],
+ [ 'D', 'ధ' ],
+ [ 'd', 'ద' ],
+ [ 'F', 'శ' ],
+ [ 'f', 'వ' ],
+ [ 'G', ':' ],
+ [ 'g', 'ం' ],
+ [ 'H', '్' ],
+ [ 'h', '్' ],
+ [ 'J', 'ఖ' ],
+ [ 'j', 'క' ],
+ [ 'K', 'ఱ' ],
+ [ 'k', 'ర' ],
+ [ 'L', 'ణ' ],
+ [ 'l', 'న' ],
+ [ ':', 'ఫ' ],
+ [ ';', 'ప' ],
+ [ '"', 'ష' ],
+ [ '\\\'', 'స' ],
+ [ '\\~', '~' ],
+ [ '\\`', '`' ],
+ [ 'Z', 'ఠ' ],
+ [ 'z', 'ట' ],
+ [ 'X', 'ఘ' ],
+ [ 'x', 'గ' ],
+ [ 'C', 'ఢ' ],
+ [ 'c', 'డ' ],
+ [ 'V', 'భ' ],
+ [ 'v', 'బ' ],
+ [ 'B', 'హ' ],
+ [ 'b', 'మ' ],
+ [ 'N', 'క్ష్మీ' ],
+ [ 'n', 'య' ],
+ [ 'M', 'ఛ' ],
+ [ 'm', 'చ' ],
+ [ '\\<', ';' ],
+ [ ',', ',' ],
+ [ '\\>', '?' ],
+ [ '\\.', '.' ],
+ [ '/', 'జ' ],
+ [ '\\?', 'ఝ' ]
],
patterns_x: [
@@ -131,27 +131,27 @@
* kept these based on inscript.
*/
- ['\\!', '౹'],
- ['\\@', '౼'],
- ['\\#', '౺'],
- ['\\$', '౽'],
- ['4', '₹'],
- ['\\%', '౻'],
- ['\\^', '౾'],
- ['1', '\u200d'],
- ['2', '\u200c'],
- ['0', '౸'],
- ['\\-', '౿'],
- ['R', 'ౣ'],
- ['r', 'ౡ'],
- ['p', 'ౙ'],
- ['F', 'ఌ'],
- ['f', 'ౢ'],
- [';', 'ౘ'],
- ['Z', 'ౖ'],
- ['z', 'ౕ'],
- ['\\>', 'ఽ'],
- ['\\.', '॥']
+ [ '\\!', '౹' ],
+ [ '\\@', '౼' ],
+ [ '\\#', '౺' ],
+ [ '\\$', '౽' ],
+ [ '4', '₹' ],
+ [ '\\%', '౻' ],
+ [ '\\^', '౾' ],
+ [ '1', '\u200d' ],
+ [ '2', '\u200c' ],
+ [ '0', '౸' ],
+ [ '\\-', '౿' ],
+ [ 'R', 'ౣ' ],
+ [ 'r', 'ౡ' ],
+ [ 'p', 'ౙ' ],
+ [ 'F', 'ఌ' ],
+ [ 'f', 'ౢ' ],
+ [ ';', 'ౘ' ],
+ [ 'Z', 'ౖ' ],
+ [ 'z', 'ౕ' ],
+ [ '\\>', 'ఽ' ],
+ [ '\\.', '॥' ]
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/te/te-inscript.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/te/te-inscript.js
index 4c663717..d9a3a89f 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/te/te-inscript.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/te/te-inscript.js
@@ -10,113 +10,113 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['D', 'అ'],
- ['E', 'ఆ'],
- ['F', 'ఇ'],
- ['R', 'ఈ'],
- ['G', 'ఉ'],
- ['T', 'ఊ'],
- ['\\+', 'ఋ'],
- ['Z', 'ఎ'],
- ['S', 'ఏ'],
- ['W', 'ఐ'],
- ['~', 'ఒ'],
- ['A', 'ఓ'],
- ['Q', 'ఔ'],
+ [ 'D', 'అ' ],
+ [ 'E', 'ఆ' ],
+ [ 'F', 'ఇ' ],
+ [ 'R', 'ఈ' ],
+ [ 'G', 'ఉ' ],
+ [ 'T', 'ఊ' ],
+ [ '\\+', 'ఋ' ],
+ [ 'Z', 'ఎ' ],
+ [ 'S', 'ఏ' ],
+ [ 'W', 'ఐ' ],
+ [ '~', 'ఒ' ],
+ [ 'A', 'ఓ' ],
+ [ 'Q', 'ఔ' ],
- ['k', 'క'],
- ['K', 'ఖ'],
- ['i', 'గ'],
- ['I', 'ఘ'],
- ['U', 'ఙ'],
+ [ 'k', 'క' ],
+ [ 'K', 'ఖ' ],
+ [ 'i', 'గ' ],
+ [ 'I', 'ఘ' ],
+ [ 'U', 'ఙ' ],
- ['\\;', 'చ'],
- ['\\:', 'ఛ'],
- ['p', 'జ'],
- ['P', 'ఝ'],
- ['\\}', 'ఞ'],
+ [ '\\;', 'చ' ],
+ [ '\\:', 'ఛ' ],
+ [ 'p', 'జ' ],
+ [ 'P', 'ఝ' ],
+ [ '\\}', 'ఞ' ],
- ['\'', 'ట'],
- ['"', 'ఠ'],
- ['\\[', '','డ'],
- ['\\{', '','ఢ'],
- ['C', 'ణ'],
+ [ '\'', 'ట' ],
+ [ '"', 'ఠ' ],
+ [ '\\[', '','డ' ],
+ [ '\\{', '','ఢ' ],
+ [ 'C', 'ణ' ],
- ['l', 'త'],
- ['L', 'థ'],
- ['o', 'ద'],
- ['O', 'ధ'],
- ['v', 'న'],
+ [ 'l', 'త' ],
+ [ 'L', 'థ' ],
+ [ 'o', 'ద' ],
+ [ 'O', 'ధ' ],
+ [ 'v', 'న' ],
- ['h', 'ప'],
- ['H', 'ఫ'],
- ['y', 'బ'],
- ['Y', 'భ'],
- ['c', 'మ'],
+ [ 'h', 'ప' ],
+ [ 'H', 'ఫ' ],
+ [ 'y', 'బ' ],
+ [ 'Y', 'భ' ],
+ [ 'c', 'మ' ],
- ['/', 'య'],
- ['j', 'ర'],
- ['J', 'ఱ'],
- ['n', 'ల'],
- ['N', 'ళ'],
- ['b', 'వ'],
+ [ '/', 'య' ],
+ [ 'j', 'ర' ],
+ [ 'J', 'ఱ' ],
+ [ 'n', 'ల' ],
+ [ 'N', 'ళ' ],
+ [ 'b', 'వ' ],
- ['M', 'శ'],
- ['\\<', '','ష'],
- ['m', 'స'],
- ['u', 'హ'],
+ [ 'M', 'శ' ],
+ [ '\\<', '','ష' ],
+ [ 'm', 'స' ],
+ [ 'u', 'హ' ],
- ['e', 'ా'],
- ['f', 'ి'],
- ['r', 'ీ'],
- ['g', 'ు'],
- ['t', 'ూ'],
- ['\\=', 'ృ'],
- ['z', 'ె'],
- ['s', 'ే'],
- ['w', 'ై'],
- ['`', 'ొ'],
- ['a', 'ో'],
- ['q', 'ౌ'],
- ['x', 'ం'],
- ['\\-', 'ః'],
- ['X', 'ఁ'],
- ['d', '్'],
+ [ 'e', 'ా' ],
+ [ 'f', 'ి' ],
+ [ 'r', 'ీ' ],
+ [ 'g', 'ు' ],
+ [ 't', 'ూ' ],
+ [ '\\=', 'ృ' ],
+ [ 'z', 'ె' ],
+ [ 's', 'ే' ],
+ [ 'w', 'ై' ],
+ [ '`', 'ొ' ],
+ [ 'a', 'ో' ],
+ [ 'q', 'ౌ' ],
+ [ 'x', 'ం' ],
+ [ '\\-', 'ః' ],
+ [ 'X', 'ఁ' ],
+ [ 'd', '్' ],
- ['0', '','౦'],
- ['1', '','౧'],
- ['2', '౨'],
- ['3', '౩'],
- ['4', '౪'],
- ['5', '౫'],
- ['6', '౬'],
- ['7', '౭'],
- ['8', '౮'],
- ['9', '౯'],
+ [ '0', '','౦' ],
+ [ '1', '','౧' ],
+ [ '2', '౨' ],
+ [ '3', '౩' ],
+ [ '4', '౪' ],
+ [ '5', '౫' ],
+ [ '6', '౬' ],
+ [ '7', '౭' ],
+ [ '8', '౮' ],
+ [ '9', '౯' ],
- ['\\@', '\u200C'], // In cases where extended rules do not work
- ['\\#', '్ర'],
- ['\\$', 'ర్'],
- ['\\%', 'జ్ఞ'],
- ['\\^', 'త్ర'],
- ['\\&', 'క్ష'],
- ['\\*', 'శ్ర'],
- ['\\>', '।']],
+ [ '\\@', '\u200C' ], // In cases where extended rules do not work
+ [ '\\#', '్ర' ],
+ [ '\\$', 'ర్' ],
+ [ '\\%', 'జ్ఞ' ],
+ [ '\\^', 'త్ర' ],
+ [ '\\&', 'క్ష' ],
+ [ '\\*', 'శ్ర' ],
+ [ '\\>', '।' ] ],
patterns_x: [
- ['X', 'ॐ'],
- ['\\;', 'ౘ'],
- ['p', 'ౙ'],
- ['f', '\u0C62'], // vowel sign of alu (volic l)
- ['r', '\u0C63'], // vowel sign of aluu (volic ll)
- ['F', 'ఌ'],
- ['R', 'ౡ'],
- ['\\.', '॥'],
- ['\\>', 'ఽ'],
- ['2', '\u200C'], // ZWNJ
- ['4', '₹'],
- ['\\=', 'ౄ'],
- ['\\+', 'ౠ']]
+ [ 'X', 'ॐ' ],
+ [ '\\;', 'ౘ' ],
+ [ 'p', 'ౙ' ],
+ [ 'f', '\u0C62' ], // vowel sign of alu (volic l)
+ [ 'r', '\u0C63' ], // vowel sign of aluu (volic ll)
+ [ 'F', 'ఌ' ],
+ [ 'R', 'ౡ' ],
+ [ '\\.', '॥' ],
+ [ '\\>', 'ఽ' ],
+ [ '2', '\u200C' ], // ZWNJ
+ [ '4', '₹' ],
+ [ '\\=', 'ౄ' ],
+ [ '\\+', 'ౠ' ] ]
};
$.ime.register( teInScript );
}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/te/te-inscript2.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/te/te-inscript2.js
index 4cb75116..c7ddd1f5 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/te/te-inscript2.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/te/te-inscript2.js
@@ -10,115 +10,115 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['1', '౧'],
- ['2', '౨'],
- ['3', '౩'],
- ['4', '౪'],
- ['5', '౫'],
- ['6', '౬'],
- ['7', '౭'],
- ['8', '౮'],
- ['\\(', '('],
- ['9', '౯'],
- ['\\)', ')'],
- ['0', '౦'],
- ['\\_', 'ః'],
- ['\\-', '-'],
- ['\\+', 'ఋ'],
- ['\\=', 'ృ'],
- ['Q', 'ఔ'],
- ['q', 'ౌ'],
- ['W', 'ఐ'],
- ['w', 'ై'],
- ['E', 'ఆ'],
- ['e', 'ా'],
- ['R', 'ఈ'],
- ['r', 'ీ'],
- ['T', 'ఊ'],
- ['t', 'ూ'],
- ['Y', 'భ'],
- ['y', 'బ'],
- ['U', 'ఙ'],
- ['u', 'హ'],
- ['I', 'ఘ'],
- ['i', 'గ'],
- ['O', 'ధ'],
- ['o', 'ద'],
- ['P', 'ఝ'],
- ['p', 'జ'],
- ['\\{', 'ఢ'],
- ['\\[', 'డ'],
- ['\\}', 'ఞ'],
- ['A', 'ఓ'],
- ['a', 'ో'],
- ['S', 'ఏ'],
- ['s', 'ే'],
- ['D', 'అ'],
- ['d', '్'],
- ['F', 'ఇ'],
- ['f', 'ి'],
- ['G', 'ఉ'],
- ['g', 'ు'],
- ['H', 'ఫ'],
- ['h', 'ప'],
- ['J', 'ఱ'],
- ['j', 'ర'],
- ['K', 'ఖ'],
- ['k', 'క'],
- ['L', 'థ'],
- ['l', 'త'],
- [':', 'ఛ'],
- [';', 'చ'],
- ['"', 'ఠ'],
- ['\\\'', 'ట'],
- ['\\~', 'ఒ'],
- ['\\`', 'ొ'],
- ['Z', 'ఎ'],
- ['z', 'ె'],
- ['X', 'ఁ'],
- ['x', 'ం'],
- ['C', 'ణ'],
- ['c', 'మ'],
- ['v', 'న'],
- ['b', 'వ'],
- ['N', 'ళ'],
- ['n', 'ల'],
- ['M', 'శ'],
- ['m', 'స'],
- ['\\<', 'ష'],
- [',', ','],
- ['\\>', '।'],
- ['\\.', '.'],
- ['/', 'య'],
- ['\\%', 'జ్ఞ'],
- ['\\^', 'త్ర'],
- ['\\&', 'క్ష'],
- ['\\*', 'శ్ర']
+ [ '1', '౧' ],
+ [ '2', '౨' ],
+ [ '3', '౩' ],
+ [ '4', '౪' ],
+ [ '5', '౫' ],
+ [ '6', '౬' ],
+ [ '7', '౭' ],
+ [ '8', '౮' ],
+ [ '\\(', '(' ],
+ [ '9', '౯' ],
+ [ '\\)', ')' ],
+ [ '0', '౦' ],
+ [ '\\_', 'ః' ],
+ [ '\\-', '-' ],
+ [ '\\+', 'ఋ' ],
+ [ '\\=', 'ృ' ],
+ [ 'Q', 'ఔ' ],
+ [ 'q', 'ౌ' ],
+ [ 'W', 'ఐ' ],
+ [ 'w', 'ై' ],
+ [ 'E', 'ఆ' ],
+ [ 'e', 'ా' ],
+ [ 'R', 'ఈ' ],
+ [ 'r', 'ీ' ],
+ [ 'T', 'ఊ' ],
+ [ 't', 'ూ' ],
+ [ 'Y', 'భ' ],
+ [ 'y', 'బ' ],
+ [ 'U', 'ఙ' ],
+ [ 'u', 'హ' ],
+ [ 'I', 'ఘ' ],
+ [ 'i', 'గ' ],
+ [ 'O', 'ధ' ],
+ [ 'o', 'ద' ],
+ [ 'P', 'ఝ' ],
+ [ 'p', 'జ' ],
+ [ '\\{', 'ఢ' ],
+ [ '\\[', 'డ' ],
+ [ '\\}', 'ఞ' ],
+ [ 'A', 'ఓ' ],
+ [ 'a', 'ో' ],
+ [ 'S', 'ఏ' ],
+ [ 's', 'ే' ],
+ [ 'D', 'అ' ],
+ [ 'd', '్' ],
+ [ 'F', 'ఇ' ],
+ [ 'f', 'ి' ],
+ [ 'G', 'ఉ' ],
+ [ 'g', 'ు' ],
+ [ 'H', 'ఫ' ],
+ [ 'h', 'ప' ],
+ [ 'J', 'ఱ' ],
+ [ 'j', 'ర' ],
+ [ 'K', 'ఖ' ],
+ [ 'k', 'క' ],
+ [ 'L', 'థ' ],
+ [ 'l', 'త' ],
+ [ ':', 'ఛ' ],
+ [ ';', 'చ' ],
+ [ '"', 'ఠ' ],
+ [ '\\\'', 'ట' ],
+ [ '\\~', 'ఒ' ],
+ [ '\\`', 'ొ' ],
+ [ 'Z', 'ఎ' ],
+ [ 'z', 'ె' ],
+ [ 'X', 'ఁ' ],
+ [ 'x', 'ం' ],
+ [ 'C', 'ణ' ],
+ [ 'c', 'మ' ],
+ [ 'v', 'న' ],
+ [ 'b', 'వ' ],
+ [ 'N', 'ళ' ],
+ [ 'n', 'ల' ],
+ [ 'M', 'శ' ],
+ [ 'm', 'స' ],
+ [ '\\<', 'ష' ],
+ [ ',', ',' ],
+ [ '\\>', '।' ],
+ [ '\\.', '.' ],
+ [ '/', 'య' ],
+ [ '\\%', 'జ్ఞ' ],
+ [ '\\^', 'త్ర' ],
+ [ '\\&', 'క్ష' ],
+ [ '\\*', 'శ్ర' ]
],
patterns_x: [
- ['\\!', '౹'],
- ['\\@', '౼'],
- ['\\#', '౺'],
- ['\\$', '౽'],
- ['4', '₹'],
- ['\\%', '౻'],
- ['\\^', '౾'],
- ['1', '\u200d'],
- ['2', '\u200c'],
- ['0', '౸'],
- ['\\-', '౿'],
- ['\\+', 'ౠ'],
- ['\\=', 'ౄ'],
- ['R', 'ౣ'],
- ['r', 'ౡ'],
- ['p', 'ౙ'],
- ['F', 'ఌ'],
- ['f', 'ౢ'],
- [';', 'ౘ'],
- ['Z', 'ౖ'],
- ['z', 'ౕ'],
- ['\\>', 'ఽ'],
- ['\\.', '॥']
+ [ '\\!', '౹' ],
+ [ '\\@', '౼' ],
+ [ '\\#', '౺' ],
+ [ '\\$', '౽' ],
+ [ '4', '₹' ],
+ [ '\\%', '౻' ],
+ [ '\\^', '౾' ],
+ [ '1', '\u200d' ],
+ [ '2', '\u200c' ],
+ [ '0', '౸' ],
+ [ '\\-', '౿' ],
+ [ '\\+', 'ౠ' ],
+ [ '\\=', 'ౄ' ],
+ [ 'R', 'ౣ' ],
+ [ 'r', 'ౡ' ],
+ [ 'p', 'ౙ' ],
+ [ 'F', 'ఌ' ],
+ [ 'f', 'ౢ' ],
+ [ ';', 'ౘ' ],
+ [ 'Z', 'ౖ' ],
+ [ 'z', 'ౕ' ],
+ [ '\\>', 'ఽ' ],
+ [ '\\.', '॥' ]
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/te/te-modular.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/te/te-modular.js
index f0c358b9..8a74ce89 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/te/te-modular.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/te/te-modular.js
@@ -13,112 +13,112 @@
// numbers
- ['\\`', 'ే'],
- ['1', '1'],
- ['2', '2'],
- ['3', '3'],
- ['4', '4'],
- ['5', '5'],
- ['6', '6'],
- ['7', '7'],
- ['8', '8'],
- ['9', '9'],
- ['0', '0'],
- ['\\-', '-'],
- ['\\=', '='],
+ [ '\\`', 'ే' ],
+ [ '1', '1' ],
+ [ '2', '2' ],
+ [ '3', '3' ],
+ [ '4', '4' ],
+ [ '5', '5' ],
+ [ '6', '6' ],
+ [ '7', '7' ],
+ [ '8', '8' ],
+ [ '9', '9' ],
+ [ '0', '0' ],
+ [ '\\-', '-' ],
+ [ '\\=', '=' ],
// shift num
- ['\\~', 'ఏ'],
- ['\\!', '!'],
- ['\\@', '\''],
- ['\\#', '\''],
- ['\\$', 'ఊ'],
- ['\\%', '%'],
- ['\\^', 'క్ష'],
- ['\\&', 'ౄ'],
- ['\\*', '్ర'],
- ['\\(', '('],
- ['\\)', ')'],
- ['\\_', 'ఙ'],
- ['\\+', '+'],
+ [ '\\~', 'ఏ' ],
+ [ '\\!', '!' ],
+ [ '\\@', '\'' ],
+ [ '\\#', '\'' ],
+ [ '\\$', 'ఊ' ],
+ [ '\\%', '%' ],
+ [ '\\^', 'క్ష' ],
+ [ '\\&', 'ౄ' ],
+ [ '\\*', '్ర' ],
+ [ '\\(', '(' ],
+ [ '\\)', ')' ],
+ [ '\\_', 'ఙ' ],
+ [ '\\+', '+' ],
// qwerty order
// 1st row
- ['Q', 'అ'],
- ['q', 'ష'],
- ['W', 'ఘ'],
- ['w', 'గ'],
- ['E', 'ఖ'],
- ['e', 'క'],
- ['R', 'ఠ'],
- ['r', 'ట'],
- ['T', 'ఢ'],
- ['t', 'డ'],
- ['Y', 'ఫ'],
- ['y', 'ప'],
- ['U', 'బ'],
- ['u', 'మ'],
- ['I', 'ళ'],
- ['i', 'ల'],
- ['O', 'శ'],
- ['o', 'వ'],
- ['P', 'ఒ'],
- ['p', 'ొ'],
- ['\\{', 'ఓ'],
- ['\\[', 'ో'],
- ['\\}', 'ఞ'],
- ['\\]', 'ూ'],
- ['\\|', 'శ్రీ'],
- ['\\\\', '్ర'],
+ [ 'Q', 'అ' ],
+ [ 'q', 'ష' ],
+ [ 'W', 'ఘ' ],
+ [ 'w', 'గ' ],
+ [ 'E', 'ఖ' ],
+ [ 'e', 'క' ],
+ [ 'R', 'ఠ' ],
+ [ 'r', 'ట' ],
+ [ 'T', 'ఢ' ],
+ [ 't', 'డ' ],
+ [ 'Y', 'ఫ' ],
+ [ 'y', 'ప' ],
+ [ 'U', 'బ' ],
+ [ 'u', 'మ' ],
+ [ 'I', 'ళ' ],
+ [ 'i', 'ల' ],
+ [ 'O', 'శ' ],
+ [ 'o', 'వ' ],
+ [ 'P', 'ఒ' ],
+ [ 'p', 'ొ' ],
+ [ '\\{', 'ఓ' ],
+ [ '\\[', 'ో' ],
+ [ '\\}', 'ఞ' ],
+ [ '\\]', 'ూ' ],
+ [ '\\|', 'శ్రీ' ],
+ [ '\\\\', '్ర' ],
// 2nd row
- ['A', 'ఆ'],
- ['a', 'ా'],
- ['S', 'ఇ'],
- ['s', 'ి'],
- ['D', '్'],
- ['d', '్'],
- ['F', 'ణ'],
- ['f', 'య'],
- ['G', 'థ'],
- ['g', 'త'],
- ['H', 'ధ'],
- ['h', 'ద'],
- ['J', 'భ'],
- ['j', 'న'],
- ['K', 'ఱ'],
- ['k', 'ర'],
- ['L', 'హ'],
- ['l', 'స'],
- [':', ':'],
- [';', ';'],
- ['"', 'ఔ'],
- ['\\\'', 'ౌ'],
+ [ 'A', 'ఆ' ],
+ [ 'a', 'ా' ],
+ [ 'S', 'ఇ' ],
+ [ 's', 'ి' ],
+ [ 'D', '్' ],
+ [ 'd', '్' ],
+ [ 'F', 'ణ' ],
+ [ 'f', 'య' ],
+ [ 'G', 'థ' ],
+ [ 'g', 'త' ],
+ [ 'H', 'ధ' ],
+ [ 'h', 'ద' ],
+ [ 'J', 'భ' ],
+ [ 'j', 'న' ],
+ [ 'K', 'ఱ' ],
+ [ 'k', 'ర' ],
+ [ 'L', 'హ' ],
+ [ 'l', 'స' ],
+ [ ':', ':' ],
+ [ ';', ';' ],
+ [ '"', 'ఔ' ],
+ [ '\\\'', 'ౌ' ],
// 3rd row
- ['Z', 'ఋ'],
- ['z', 'ృ'],
- ['X', 'ఝ'],
- ['x', 'జ'],
- ['C', 'ఛ'],
- ['c', 'చ'],
- ['V', 'ఈ'],
- ['v', 'ీ'],
- ['B', 'ఎ'],
- ['b', 'ె'],
- ['N', 'ఉ'],
- ['n', 'ు'],
- ['M', 'ఐ'],
- ['m', 'ై'],
- ['\\<', 'ం'],
- [',', ','],
- ['\\>', 'ః'],
- ['\\.', '.'],
- ['\\?', '?'],
- ['\\/', '/']
+ [ 'Z', 'ఋ' ],
+ [ 'z', 'ృ' ],
+ [ 'X', 'ఝ' ],
+ [ 'x', 'జ' ],
+ [ 'C', 'ఛ' ],
+ [ 'c', 'చ' ],
+ [ 'V', 'ఈ' ],
+ [ 'v', 'ీ' ],
+ [ 'B', 'ఎ' ],
+ [ 'b', 'ె' ],
+ [ 'N', 'ఉ' ],
+ [ 'n', 'ు' ],
+ [ 'M', 'ఐ' ],
+ [ 'm', 'ై' ],
+ [ '\\<', 'ం' ],
+ [ ',', ',' ],
+ [ '\\>', 'ః' ],
+ [ '\\.', '.' ],
+ [ '\\?', '?' ],
+ [ '\\/', '/' ]
],
patterns_x: [
@@ -129,48 +129,48 @@
* kept these based on inscript.
*/
- ['\\!', '౹'],
- ['\\@', '౼'],
- ['\\#', '౺'],
- ['\\$', '౽'],
- ['4', '₹'],
- ['\\%', '౻'],
- ['\\^', '౾'],
- ['1', '\u200d'],
- ['2', '\u200c'],
- ['0', '౸'],
- ['\\-', '౿'],
- ['R', 'ౣ'],
- ['r', 'ౡ'],
- ['p', 'ౙ'],
- ['F', 'ఌ'],
- ['f', 'ౢ'],
- [';', 'ౘ'],
-
- ['\\>', 'ఽ'],
- ['\\.', '॥'],
-
- ['\\_', 'ఁ'],
- ['=', 'ః'],
-
- ['q', 'ష్ట్ర'],
- ['w', '÷'],
- ['e', 'క్ష్మ'],
- ['y', '్పు'],
- ['i', 'క్ష్మి'],
- ['\\[', 'క్ష్మీ'],
- ['\\]', '×'],
-
- ['g', 'ఁ'],
- ['k', '్ర'],
- ['l', 'స్త్ర'],
- ['\\\'', '్పు'],
-
- ['z', 'ౠ'],
- ['c', 'ఁ'],
- ['v', '|'],
- ['n', '-'],
- ['/', '÷']
+ [ '\\!', '౹' ],
+ [ '\\@', '౼' ],
+ [ '\\#', '౺' ],
+ [ '\\$', '౽' ],
+ [ '4', '₹' ],
+ [ '\\%', '౻' ],
+ [ '\\^', '౾' ],
+ [ '1', '\u200d' ],
+ [ '2', '\u200c' ],
+ [ '0', '౸' ],
+ [ '\\-', '౿' ],
+ [ 'R', 'ౣ' ],
+ [ 'r', 'ౡ' ],
+ [ 'p', 'ౙ' ],
+ [ 'F', 'ఌ' ],
+ [ 'f', 'ౢ' ],
+ [ ';', 'ౘ' ],
+
+ [ '\\>', 'ఽ' ],
+ [ '\\.', '॥' ],
+
+ [ '\\_', 'ఁ' ],
+ [ '=', 'ః' ],
+
+ [ 'q', 'ష్ట్ర' ],
+ [ 'w', '÷' ],
+ [ 'e', 'క్ష్మ' ],
+ [ 'y', '్పు' ],
+ [ 'i', 'క్ష్మి' ],
+ [ '\\[', 'క్ష్మీ' ],
+ [ '\\]', '×' ],
+
+ [ 'g', 'ఁ' ],
+ [ 'k', '్ర' ],
+ [ 'l', 'స్త్ర' ],
+ [ '\\\'', '్పు' ],
+
+ [ 'z', 'ౠ' ],
+ [ 'c', 'ఁ' ],
+ [ 'v', '|' ],
+ [ 'n', '-' ],
+ [ '/', '÷' ]
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/te/te-transliteration.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/te/te-transliteration.js
index 3f07cf01..b632858d 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/te/te-transliteration.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/te/te-transliteration.js
@@ -13,86 +13,86 @@
contextLength: 1,
maxKeyLength: 4,
patterns: [
- ['(మ్|న్)b', 'ంబ్'],
- ['(మ్|న్)B', 'ంభ్'],
- ['(మ్|న్)c', 'ంచ్'],
- ['(మ్|న్)C', 'ంఛ్'],
- ['(మ్|న్)d', 'ంద్'],
- ['(మ్|న్)D', 'ండ్'],
- ['(మ్|న్)[fFP]', 'ంఫ్'],
- ['(మ్|న్)g', 'ంగ్'],
- ['(మ్|న్)h', 'ంహ్'],
- ['(మ్|న్)j', 'ంజ్'],
- ['(మ్|న్)J', 'ంఝ్'],
- ['(మ్|న్)k', 'ంక్'],
- ['(మ్|న్)L', 'ంళ్'],
- ['(మ్|న్)p', 'ంప్'],
- ['(మ్|న్)r', 'ంర్'],
- ['(మ్|న్)s', 'ంస్'],
- ['(మ్|న్)t', 'ంత్'],
- ['(మ్|న్)T', 'ంట్'],
- ['(మ్|న్)[vwVW]', 'ంవ్'],
- ['(మ్|న్)[xX]', 'ంక్ష్'],
+ [ '(మ్|న్)b', 'ంబ్' ],
+ [ '(మ్|న్)B', 'ంభ్' ],
+ [ '(మ్|న్)c', 'ంచ్' ],
+ [ '(మ్|న్)C', 'ంఛ్' ],
+ [ '(మ్|న్)d', 'ంద్' ],
+ [ '(మ్|న్)D', 'ండ్' ],
+ [ '(మ్|న్)[fFP]', 'ంఫ్' ],
+ [ '(మ్|న్)g', 'ంగ్' ],
+ [ '(మ్|న్)h', 'ంహ్' ],
+ [ '(మ్|న్)j', 'ంజ్' ],
+ [ '(మ్|న్)J', 'ంఝ్' ],
+ [ '(మ్|న్)k', 'ంక్' ],
+ [ '(మ్|న్)L', 'ంళ్' ],
+ [ '(మ్|న్)p', 'ంప్' ],
+ [ '(మ్|న్)r', 'ంర్' ],
+ [ '(మ్|న్)s', 'ంస్' ],
+ [ '(మ్|న్)t', 'ంత్' ],
+ [ '(మ్|న్)T', 'ంట్' ],
+ [ '(మ్|న్)[vwVW]', 'ంవ్' ],
+ [ '(మ్|న్)[xX]', 'ంక్ష్' ],
// & for forcing combination
- ['(మ్|న్)&b', '$1బ్'],
- ['(మ్|న్)&B', '$1బ్'],
- ['(మ్|న్)&c', '$1చ్'],
- ['(మ్|న్)&C', '$1ఛ్'],
- ['(మ్|న్)&d', '$1ద్'],
- ['(మ్|న్)&D', '$1డ్'],
- ['(మ్|న్)&[fFP]', '$1ఫ్'],
- ['(మ్|న్)&g', '$1గ్'],
- ['(మ్|న్)&h', '$1హ్'],
- ['(మ్|న్)&j', '$1జ్'],
- ['(మ్|న్)&J', '$1ఝ్'],
- ['(మ్|న్)&k', '$1క్'],
- ['(మ్|న్)&L', '$1ళ్'],
- ['(మ్|న్)&p', '$1ప్'],
- ['(మ్|న్)&r', '$1ర్'],
- ['(మ్|న్)&s', '$1స్'],
- ['(మ్|న్)&t', '$1త్'],
- ['(మ్|న్)&T', '$1ట్'],
- ['(మ్|న్)&[vwVW]', '$1వ్'],
- ['(మ్|న్)&[xX]', '$1క్ష్'],
- ['(మ్|న్)&(\\s|\\.|\\, |\\))', '$1$2'],
+ [ '(మ్|న్)&b', '$1బ్' ],
+ [ '(మ్|న్)&B', '$1బ్' ],
+ [ '(మ్|న్)&c', '$1చ్' ],
+ [ '(మ్|న్)&C', '$1ఛ్' ],
+ [ '(మ్|న్)&d', '$1ద్' ],
+ [ '(మ్|న్)&D', '$1డ్' ],
+ [ '(మ్|న్)&[fFP]', '$1ఫ్' ],
+ [ '(మ్|న్)&g', '$1గ్' ],
+ [ '(మ్|న్)&h', '$1హ్' ],
+ [ '(మ్|న్)&j', '$1జ్' ],
+ [ '(మ్|న్)&J', '$1ఝ్' ],
+ [ '(మ్|న్)&k', '$1క్' ],
+ [ '(మ్|న్)&L', '$1ళ్' ],
+ [ '(మ్|న్)&p', '$1ప్' ],
+ [ '(మ్|న్)&r', '$1ర్' ],
+ [ '(మ్|న్)&s', '$1స్' ],
+ [ '(మ్|న్)&t', '$1త్' ],
+ [ '(మ్|న్)&T', '$1ట్' ],
+ [ '(మ్|న్)&[vwVW]', '$1వ్' ],
+ [ '(మ్|న్)&[xX]', '$1క్ష్' ],
+ [ '(మ్|న్)&(\\s|\\.|\\, |\\))', '$1$2' ],
// అ
- ['([క-హ]|ౘ|ౙ)్a', '$1'],
+ [ '([క-హ]|ౘ|ౙ)్a', '$1' ],
// ఆ
- ['([క-హ])(్A|a|\')', '$1ా'],
+ [ '([క-హ])(్A|a|\')', '$1ా' ],
// ఇ
- ['([క-హ])్i', '$1ి'],
+ [ '([క-హ])్i', '$1ి' ],
// ఈ
- ['([క-హ])(్I|ిi|ి\'|ెe)', '$1ీ'],
+ [ '([క-హ])(్I|ిi|ి\'|ెe)', '$1ీ' ],
// ఉ
- ['([క-హ])్u', '$1ు'],
+ [ '([క-హ])్u', '$1ు' ],
// ఊ
- ['([క-హ])(ుu|ు\'|ుa|్U)', '$1ూ'],
- ['([క-హ])ొo', 'o', '$1ూ'],
+ [ '([క-హ])(ుu|ు\'|ుa|్U)', '$1ూ' ],
+ [ '([క-హ])ొo', 'o', '$1ూ' ],
// ఋ
- ['([క-హ])్R', '$1ృ'],
- ['([క-హ])్ర్\'', '$1ృ'],
+ [ '([క-హ])్R', '$1ృ' ],
+ [ '([క-హ])్ర్\'', '$1ృ' ],
// ౠ
- ['([క-హ])ృu', '$1ౄ'],
+ [ '([క-హ])ృu', '$1ౄ' ],
// ఌ
- ['([క-హ])్~l', '$1ౢ'],
+ [ '([క-హ])్~l', '$1ౢ' ],
// ౡ
- ['([క-హ])ౢ(l|\')', '$1ౣ'],
+ [ '([క-హ])ౢ(l|\')', '$1ౣ' ],
// ఎ
- ['([క-హ])్e', '$1ె'],
+ [ '([క-హ])్e', '$1ె' ],
// ఏ
- ['([క-హ])(్E|ెa|ె\')', '$1ే'],
- ['([క-హ])e', 'a', '$1ే'],
+ [ '([క-హ])(్E|ెa|ె\')', '$1ే' ],
+ [ '([క-హ])e', 'a', '$1ే' ],
// ఐ
- ['([క-హ])ెi', '$1ై'],
- ['([క-హ])i', 'a', '$1ై'],
+ [ '([క-హ])ెi', '$1ై' ],
+ [ '([క-హ])i', 'a', '$1ై' ],
// ఒ
- ['([క-హ])్o', '$1ొ'],
+ [ '([క-హ])్o', '$1ొ' ],
// ఓ
- ['([క-హ])(్O|ొa|ొ\')', '$1ో'],
+ [ '([క-హ])(్O|ొa|ొ\')', '$1ో' ],
// ఔ
- ['([క-హ])(ొu|ొw)', '$1ౌ'],
- ['([క-హ])u', 'a', '$1ౌ'],
+ [ '([క-హ])(ొu|ొw)', '$1ౌ' ],
+ [ '([క-హ])u', 'a', '$1ౌ' ],
// TODO: handle back corrections
/* not working ['([క-హ])u', '$1ు'],
@@ -101,120 +101,120 @@
*/
// zwnj
- ['(్)\\^', '$1\u200c'],
+ [ '(్)\\^', '$1\u200c' ],
// sunna ending
- ['మ్(\\s|\\.|\\, |\\))', 'ం$1'],
+ [ 'మ్(\\s|\\.|\\, |\\))', 'ం$1' ],
// standalone vowels
- ['అ(a|\')', 'ఆ'],
- ['ఇ(i|\')', 'ఈ'],
- ['ఎe', 'ఈ'],
- ['ఉ(u|\')', 'ఊ'],
- ['ఒo', 'ఊ'],
- ['ఎ(a|\')', 'ఏ'],
- ['అe', 'a', 'ఏ'],
- ['ఎi', 'ఐ'],
- ['అi', 'a', 'ఐ'],
- ['ఒ(a|\')', '', 'ఓ'],
- ['అo', 'a', 'ఓ'],
- ['ఒ(u|w)', 'ఔ'],
- ['అu', 'a', 'ఔ'],
- ['ఋ(u|\')', 'ౠ'],
- ['ర్\'', 'ఋ'],
+ [ 'అ(a|\')', 'ఆ' ],
+ [ 'ఇ(i|\')', 'ఈ' ],
+ [ 'ఎe', 'ఈ' ],
+ [ 'ఉ(u|\')', 'ఊ' ],
+ [ 'ఒo', 'ఊ' ],
+ [ 'ఎ(a|\')', 'ఏ' ],
+ [ 'అe', 'a', 'ఏ' ],
+ [ 'ఎi', 'ఐ' ],
+ [ 'అi', 'a', 'ఐ' ],
+ [ 'ఒ(a|\')', '', 'ఓ' ],
+ [ 'అo', 'a', 'ఓ' ],
+ [ 'ఒ(u|w)', 'ఔ' ],
+ [ 'అu', 'a', 'ఔ' ],
+ [ 'ఋ(u|\')', 'ౠ' ],
+ [ 'ర్\'', 'ఋ' ],
// mahaa prana
- ['క్h', 'ఖ్'],
- ['గ్h', 'ఘ్'],
- ['జ్h', 'ఝ్'],
- ['చ్\'', 'ఛ్'],
- ['చ్h', 'చ్'],
- ['స్h', 'ష్'],
- ['స్\'', 'శ్'],
- ['త్\'', 'ట్'],
- ['ట్h', 'ఠ్'],
- ['ద్\'', 'డ్'],
- ['డ్h', 'ఢ్'],
- ['న్\'', 'ణ్'],
- ['త్h', 'థ్'],
- ['ద్h', 'ధ్'],
- ['ప్h', 'ఫ్'],
- ['బ్h', 'భ్'],
- ['ల్\'', 'ళ్'],
+ [ 'క్h', 'ఖ్' ],
+ [ 'గ్h', 'ఘ్' ],
+ [ 'జ్h', 'ఝ్' ],
+ [ 'చ్\'', 'ఛ్' ],
+ [ 'చ్h', 'చ్' ],
+ [ 'స్h', 'ష్' ],
+ [ 'స్\'', 'శ్' ],
+ [ 'త్\'', 'ట్' ],
+ [ 'ట్h', 'ఠ్' ],
+ [ 'ద్\'', 'డ్' ],
+ [ 'డ్h', 'ఢ్' ],
+ [ 'న్\'', 'ణ్' ],
+ [ 'త్h', 'థ్' ],
+ [ 'ద్h', 'ధ్' ],
+ [ 'ప్h', 'ఫ్' ],
+ [ 'బ్h', 'భ్' ],
+ [ 'ల్\'', 'ళ్' ],
// basic
- ['a', 'అ'],
- ['b', 'బ్'],
- ['~c', 'ౘ్'],
- ['c', 'చ్'],
- ['d', 'ద్'],
- ['e', 'ఎ'],
- ['(f|F|P)', 'ఫ్'],
- ['g', 'గ్'],
- ['@h', 'ః'],
- ['h', 'హ్'],
- ['i', 'ఇ'],
- ['~j', 'ౙ్'],
- ['j', 'జ్'],
- ['k', 'క్'],
- ['~l', 'ఌ'],
- ['l', 'ల్'],
- ['@m', 'ఁ'],
- ['~m', 'ఙ'],
- ['m', 'మ్'],
- ['~n', 'ఞ'],
- ['n', 'న్'],
- ['o', 'ఒ'],
- ['p', 'ప్'],
- ['q', 'క్వ్'],
- ['~r', 'ఱ్'],
- ['r', 'ర్'],
- ['s', 'స్'],
- ['t', 'త్'],
- ['u', 'ఉ'],
- ['(v|w|V|W)', 'వ్'],
- ['(x|X)', 'క్ష్'],
- ['(y|Y)', 'య్'],
- ['(z|Z)', 'జ్'],
- ['A', 'ఆ'],
- ['B', 'భ్'],
- ['C', 'ఛ్'],
- ['D', 'డ్'],
- ['E', 'ఏ'],
- ['G', 'ఘ్'],
- ['H', 'ః'],
- ['I', 'ఈ'],
- ['J', 'ఝ్'],
- ['K', 'ఖ్'],
- ['L', 'ళ్'],
- ['M', 'ం'],
- ['N', 'ణ్'],
- ['O', 'ఓ'],
- ['Q', 'క్వ్'],
- ['R', 'ఋ'],
- ['S', 'శ్'],
- ['T', 'ట్'],
- ['U', 'ఊ'],
+ [ 'a', 'అ' ],
+ [ 'b', 'బ్' ],
+ [ '~c', 'ౘ్' ],
+ [ 'c', 'చ్' ],
+ [ 'd', 'ద్' ],
+ [ 'e', 'ఎ' ],
+ [ '(f|F|P)', 'ఫ్' ],
+ [ 'g', 'గ్' ],
+ [ '@h', 'ః' ],
+ [ 'h', 'హ్' ],
+ [ 'i', 'ఇ' ],
+ [ '~j', 'ౙ్' ],
+ [ 'j', 'జ్' ],
+ [ 'k', 'క్' ],
+ [ '~l', 'ఌ' ],
+ [ 'l', 'ల్' ],
+ [ '@m', 'ఁ' ],
+ [ '~m', 'ఙ' ],
+ [ 'm', 'మ్' ],
+ [ '~n', 'ఞ' ],
+ [ 'n', 'న్' ],
+ [ 'o', 'ఒ' ],
+ [ 'p', 'ప్' ],
+ [ 'q', 'క్వ్' ],
+ [ '~r', 'ఱ్' ],
+ [ 'r', 'ర్' ],
+ [ 's', 'స్' ],
+ [ 't', 'త్' ],
+ [ 'u', 'ఉ' ],
+ [ '(v|w|V|W)', 'వ్' ],
+ [ '(x|X)', 'క్ష్' ],
+ [ '(y|Y)', 'య్' ],
+ [ '(z|Z)', 'జ్' ],
+ [ 'A', 'ఆ' ],
+ [ 'B', 'భ్' ],
+ [ 'C', 'ఛ్' ],
+ [ 'D', 'డ్' ],
+ [ 'E', 'ఏ' ],
+ [ 'G', 'ఘ్' ],
+ [ 'H', 'ః' ],
+ [ 'I', 'ఈ' ],
+ [ 'J', 'ఝ్' ],
+ [ 'K', 'ఖ్' ],
+ [ 'L', 'ళ్' ],
+ [ 'M', 'ం' ],
+ [ 'N', 'ణ్' ],
+ [ 'O', 'ఓ' ],
+ [ 'Q', 'క్వ్' ],
+ [ 'R', 'ఋ' ],
+ [ 'S', 'శ్' ],
+ [ 'T', 'ట్' ],
+ [ 'U', 'ఊ' ],
/**
* Telugu numbers
*/
- ['~0', '౦'],
- ['~1', '౧'],
- ['~2', '౨'],
- ['~3', '౩'],
- ['~4', '౪'],
- ['~5', '౫'],
- ['~6', '౬'],
- ['~7', '౭'],
- ['~8', '౮'],
- ['~9', '౯'],
+ [ '~0', '౦' ],
+ [ '~1', '౧' ],
+ [ '~2', '౨' ],
+ [ '~3', '౩' ],
+ [ '~4', '౪' ],
+ [ '~5', '౫' ],
+ [ '~6', '౬' ],
+ [ '~7', '౭' ],
+ [ '~8', '౮' ],
+ [ '~9', '౯' ],
// others
- ['।~\\.', '॥'], // double danda
- ['~\\.', '।'], // danda
- ['//', 'ఽ'], // avagraha
- ['~\\$', '₹']] // rupee
+ [ '।~\\.', '॥' ], // double danda
+ [ '~\\.', '।' ], // danda
+ [ '//', 'ఽ' ], // avagraha
+ [ '~\\$', '₹' ] ] // rupee
};
$.ime.register( teTransliteration );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/th/th-kedmanee.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/th/th-kedmanee.js
index 10da3812..7196098a 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/th/th-kedmanee.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/th/th-kedmanee.js
@@ -11,102 +11,102 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['Q', '๐'],
- ['W', '"'],
- ['E', 'ฎ'],
- ['R', 'ฑ'],
- ['T', 'ธ'],
- ['Y', 'ํ'],
- ['U', '๊'],
- ['I', 'ณ'],
- ['O', 'ฯ'],
- ['P', 'ญ'],
- ['{', 'ฐ'],
- ['}', ','],
- ['\\|', 'ฅ'],
- ['A', 'ฤ'],
- ['S', 'ฆ'],
- ['D', 'ฏ'],
- ['F', 'โ'],
- ['G', 'ฌ'],
- ['H', '็'],
- ['J', '๋'],
- ['K', 'ษ'],
- ['L', 'ศ'],
- [':', 'ซ'],
- ['\"', '.'],
- ['Z', '('],
- ['X', ')'],
- ['C', 'ฉ'],
- ['V', 'ฮ'],
- ['B', 'ฺ'],
- ['N', '์'],
- ['M', '?'],
- ['<', 'ฒ'],
- ['>', 'ฬ'],
- ['\\?', 'ฦ'],
+ [ 'Q', '๐' ],
+ [ 'W', '"' ],
+ [ 'E', 'ฎ' ],
+ [ 'R', 'ฑ' ],
+ [ 'T', 'ธ' ],
+ [ 'Y', 'ํ' ],
+ [ 'U', '๊' ],
+ [ 'I', 'ณ' ],
+ [ 'O', 'ฯ' ],
+ [ 'P', 'ญ' ],
+ [ '{', 'ฐ' ],
+ [ '}', ',' ],
+ [ '\\|', 'ฅ' ],
+ [ 'A', 'ฤ' ],
+ [ 'S', 'ฆ' ],
+ [ 'D', 'ฏ' ],
+ [ 'F', 'โ' ],
+ [ 'G', 'ฌ' ],
+ [ 'H', '็' ],
+ [ 'J', '๋' ],
+ [ 'K', 'ษ' ],
+ [ 'L', 'ศ' ],
+ [ ':', 'ซ' ],
+ [ '\"', '.' ],
+ [ 'Z', '(' ],
+ [ 'X', ')' ],
+ [ 'C', 'ฉ' ],
+ [ 'V', 'ฮ' ],
+ [ 'B', 'ฺ' ],
+ [ 'N', '์' ],
+ [ 'M', '?' ],
+ [ '<', 'ฒ' ],
+ [ '>', 'ฬ' ],
+ [ '\\?', 'ฦ' ],
- ['q', 'ๆ'],
- ['w', 'ไ'],
- ['e', 'ำ'],
- ['r', 'พ'],
- ['t', 'ะ'],
- ['y', 'ั'],
- ['u', 'ี'],
- ['i', 'ร'],
- ['o', 'น'],
- ['p', 'ย'],
- ['\\[', 'บ'],
- ['\\]', 'ล'],
- ['\\\\', 'ฃ'],
- ['a', 'ฟ'],
- ['s', 'ห'],
- ['d', 'ก'],
- ['f', 'ด'],
- ['g', 'เ'],
- ['h', '้'],
- ['j', '่'],
- ['k', 'า'],
- ['l', 'ส'],
- [';', 'ว'],
- ['\'', 'ง'],
- ['z', 'ผ'],
- ['x', 'ป'],
- ['c', 'แ'],
- ['v', 'อ'],
- ['b', 'ิ'],
- ['n', 'ื'],
- ['m', 'ท'],
- [',', 'ม'],
- ['\\.', 'ใ'],
- ['/', 'ฝ'],
+ [ 'q', 'ๆ' ],
+ [ 'w', 'ไ' ],
+ [ 'e', 'ำ' ],
+ [ 'r', 'พ' ],
+ [ 't', 'ะ' ],
+ [ 'y', 'ั' ],
+ [ 'u', 'ี' ],
+ [ 'i', 'ร' ],
+ [ 'o', 'น' ],
+ [ 'p', 'ย' ],
+ [ '\\[', 'บ' ],
+ [ '\\]', 'ล' ],
+ [ '\\\\', 'ฃ' ],
+ [ 'a', 'ฟ' ],
+ [ 's', 'ห' ],
+ [ 'd', 'ก' ],
+ [ 'f', 'ด' ],
+ [ 'g', 'เ' ],
+ [ 'h', '้' ],
+ [ 'j', '่' ],
+ [ 'k', 'า' ],
+ [ 'l', 'ส' ],
+ [ ';', 'ว' ],
+ [ '\'', 'ง' ],
+ [ 'z', 'ผ' ],
+ [ 'x', 'ป' ],
+ [ 'c', 'แ' ],
+ [ 'v', 'อ' ],
+ [ 'b', 'ิ' ],
+ [ 'n', 'ื' ],
+ [ 'm', 'ท' ],
+ [ ',', 'ม' ],
+ [ '\\.', 'ใ' ],
+ [ '/', 'ฝ' ],
- ['`', '_'],
- ['1', 'ๅ'],
- ['2', '/'],
- ['3', '-'],
- ['4', 'ภ'],
- ['5', 'ถ'],
- ['6', 'ุ'],
- ['7', 'ึ'],
- ['8', 'ค'],
- ['9', 'ต'],
- ['0', 'จ'],
- ['\\-', 'ข'],
- ['=', 'ช'],
- ['~', '%'],
- ['!', '+'],
- ['@', '๑'],
- ['#', '๒'],
- ['\\$', '๓'],
- ['%', '๔'],
- ['\\^', 'ู'],
- ['&', '฿'],
- ['\\*', '๕'],
- ['\\(', '๖'],
- ['\\)', '๗'],
- ['_', '๘'],
- ['\\+', '๙']
+ [ '`', '_' ],
+ [ '1', 'ๅ' ],
+ [ '2', '/' ],
+ [ '3', '-' ],
+ [ '4', 'ภ' ],
+ [ '5', 'ถ' ],
+ [ '6', 'ุ' ],
+ [ '7', 'ึ' ],
+ [ '8', 'ค' ],
+ [ '9', 'ต' ],
+ [ '0', 'จ' ],
+ [ '\\-', 'ข' ],
+ [ '=', 'ช' ],
+ [ '~', '%' ],
+ [ '!', '+' ],
+ [ '@', '๑' ],
+ [ '#', '๒' ],
+ [ '\\$', '๓' ],
+ [ '%', '๔' ],
+ [ '\\^', 'ู' ],
+ [ '&', '฿' ],
+ [ '\\*', '๕' ],
+ [ '\\(', '๖' ],
+ [ '\\)', '๗' ],
+ [ '_', '๘' ],
+ [ '\\+', '๙' ]
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/th/th-pattachote.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/th/th-pattachote.js
index c2c1bdbc..48385466 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/th/th-pattachote.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/th/th-pattachote.js
@@ -11,102 +11,102 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['Q', '๊'],
- ['W', 'ฤ'],
- ['E', 'ๆ'],
- ['R', 'ญ'],
- ['T', 'ษ'],
- ['Y', 'ึ'],
- ['U', 'ฝ'],
- ['I', 'ซ'],
- ['O', 'ถ'],
- ['P', 'ฒ'],
- ['{', 'ฯ'],
- ['}', 'ฦ'],
- ['\\|', 'ํ'],
- ['A', '๋'],
- ['S', 'ธ'],
- ['D', 'ำ'],
- ['F', 'ณ'],
- ['G', '์'],
- ['H', 'ื'],
- ['J', 'ผ'],
- ['K', 'ช'],
- ['L', 'โ'],
- [':', 'ฆ'],
- ['"', 'ฑ'],
- ['Z', 'ฎ'],
- ['X', 'ฏ'],
- ['C', 'ฐ'],
- ['V', 'ภ'],
- ['B', 'ั'],
- ['N', 'ศ'],
- ['M', 'ฮ'],
- ['<', 'ฟ'],
- ['>', 'ฉ'],
- ['\\?', 'ฬ'],
+ [ 'Q', '๊' ],
+ [ 'W', 'ฤ' ],
+ [ 'E', 'ๆ' ],
+ [ 'R', 'ญ' ],
+ [ 'T', 'ษ' ],
+ [ 'Y', 'ึ' ],
+ [ 'U', 'ฝ' ],
+ [ 'I', 'ซ' ],
+ [ 'O', 'ถ' ],
+ [ 'P', 'ฒ' ],
+ [ '{', 'ฯ' ],
+ [ '}', 'ฦ' ],
+ [ '\\|', 'ํ' ],
+ [ 'A', '๋' ],
+ [ 'S', 'ธ' ],
+ [ 'D', 'ำ' ],
+ [ 'F', 'ณ' ],
+ [ 'G', '์' ],
+ [ 'H', 'ื' ],
+ [ 'J', 'ผ' ],
+ [ 'K', 'ช' ],
+ [ 'L', 'โ' ],
+ [ ':', 'ฆ' ],
+ [ '"', 'ฑ' ],
+ [ 'Z', 'ฎ' ],
+ [ 'X', 'ฏ' ],
+ [ 'C', 'ฐ' ],
+ [ 'V', 'ภ' ],
+ [ 'B', 'ั' ],
+ [ 'N', 'ศ' ],
+ [ 'M', 'ฮ' ],
+ [ '<', 'ฟ' ],
+ [ '>', 'ฉ' ],
+ [ '\\?', 'ฬ' ],
- ['q', '็'],
- ['w', 'ต'],
- ['e', 'ย'],
- ['r', 'อ'],
- ['t', 'ร'],
- ['y', '่'],
- ['u', 'ด'],
- ['i', 'ม'],
- ['o', 'ว'],
- ['p', 'แ'],
- ['\\[', 'ใ'],
- ['\\]', 'ฌ'],
- ['\\\\', ''],
- ['a', '้'],
- ['s', 'ท'],
- ['d', 'ง'],
- ['f', 'ก'],
- ['g', 'ั'],
- ['h', 'ี'],
- ['j', 'า'],
- ['k', 'น'],
- ['l', 'เ'],
- [';', 'ไ'],
- ['\'', 'ข'],
- ['z', 'บ'],
- ['x', 'ป'],
- ['c', 'ล'],
- ['v', 'ห'],
- ['b', 'ิ'],
- ['n', 'ค'],
- ['m', 'ส'],
- [',', 'ะ'],
- ['\\.', 'จ'],
- ['/', 'พ'],
+ [ 'q', '็' ],
+ [ 'w', 'ต' ],
+ [ 'e', 'ย' ],
+ [ 'r', 'อ' ],
+ [ 't', 'ร' ],
+ [ 'y', '่' ],
+ [ 'u', 'ด' ],
+ [ 'i', 'ม' ],
+ [ 'o', 'ว' ],
+ [ 'p', 'แ' ],
+ [ '\\[', 'ใ' ],
+ [ '\\]', 'ฌ' ],
+ [ '\\\\', '' ],
+ [ 'a', '้' ],
+ [ 's', 'ท' ],
+ [ 'd', 'ง' ],
+ [ 'f', 'ก' ],
+ [ 'g', 'ั' ],
+ [ 'h', 'ี' ],
+ [ 'j', 'า' ],
+ [ 'k', 'น' ],
+ [ 'l', 'เ' ],
+ [ ';', 'ไ' ],
+ [ '\'', 'ข' ],
+ [ 'z', 'บ' ],
+ [ 'x', 'ป' ],
+ [ 'c', 'ล' ],
+ [ 'v', 'ห' ],
+ [ 'b', 'ิ' ],
+ [ 'n', 'ค' ],
+ [ 'm', 'ส' ],
+ [ ',', 'ะ' ],
+ [ '\\.', 'จ' ],
+ [ '/', 'พ' ],
- ['`', '_'],
- ['1', '='],
- ['2', '๒'],
- ['3', '๓'],
- ['4', '๔'],
- ['5', '๕'],
- ['6', 'ู'],
- ['7', '๗'],
- ['8', '๘'],
- ['9', '๙'],
- ['0', '๐'],
- ['\\-', '๑'],
- ['=', '๖'],
- ['~', '฿'],
- ['!', '+'],
- ['@', '"'],
- ['#', '/'],
- ['\\$', ','],
- ['%', '?'],
- ['\\^', 'ุ'],
- ['&', '_'],
- ['\\*', '.'],
- ['\\(', '('],
- ['\\)', ')'],
- ['_', '-'],
- ['\\+', '%']
+ [ '`', '_' ],
+ [ '1', '=' ],
+ [ '2', '๒' ],
+ [ '3', '๓' ],
+ [ '4', '๔' ],
+ [ '5', '๕' ],
+ [ '6', 'ู' ],
+ [ '7', '๗' ],
+ [ '8', '๘' ],
+ [ '9', '๙' ],
+ [ '0', '๐' ],
+ [ '\\-', '๑' ],
+ [ '=', '๖' ],
+ [ '~', '฿' ],
+ [ '!', '+' ],
+ [ '@', '"' ],
+ [ '#', '/' ],
+ [ '\\$', ',' ],
+ [ '%', '?' ],
+ [ '\\^', 'ุ' ],
+ [ '&', '_' ],
+ [ '\\*', '.' ],
+ [ '\\(', '(' ],
+ [ '\\)', ')' ],
+ [ '_', '-' ],
+ [ '\\+', '%' ]
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/udm/udm-alt.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/udm/udm-alt.js
index c7325eb1..1ead7b0c 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/udm/udm-alt.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/udm/udm-alt.js
@@ -11,28 +11,28 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['ц', 'ӵ'],
- ['Ц', 'Ӵ'],
- ['щ', 'ӥ'],
- ['Щ', 'Ӥ'],
- ['х', 'ӟ'],
- ['Х', 'Ӟ'],
- ['ф', 'ӝ'],
- ['Ф', 'Ӝ']
+ [ 'ц', 'ӵ' ],
+ [ 'Ц', 'Ӵ' ],
+ [ 'щ', 'ӥ' ],
+ [ 'Щ', 'Ӥ' ],
+ [ 'х', 'ӟ' ],
+ [ 'Х', 'Ӟ' ],
+ [ 'ф', 'ӝ' ],
+ [ 'Ф', 'Ӝ' ]
],
patterns_x: [
- ['ё', 'ӧ'],
- ['Ё', 'Ӧ'],
+ [ 'ё', 'ӧ' ],
+ [ 'Ё', 'Ӧ' ],
// Allow typing the Russian letters using Alt
- ['ц', 'ц'],
- ['Ц', 'Ц'],
- ['щ', 'щ'],
- ['Щ', 'Щ'],
- ['х', 'х'],
- ['Х', 'Х'],
- ['ф', 'ф'],
- ['Ф', 'Ф']
+ [ 'ц', 'ц' ],
+ [ 'Ц', 'Ц' ],
+ [ 'щ', 'щ' ],
+ [ 'Щ', 'Щ' ],
+ [ 'х', 'х' ],
+ [ 'Х', 'Х' ],
+ [ 'ф', 'ф' ],
+ [ 'Ф', 'Ф' ]
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ug/ug-kbd.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ug/ug-kbd.js
index ac8acfff..b6c908dc 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ug/ug-kbd.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ug/ug-kbd.js
@@ -11,67 +11,67 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['q', '\u0686'],
- ['w', '\u06CB'],
- ['e', '\u06D0'],
- ['r', '\u0631'],
- ['t', '\u062A'],
- ['y', '\u064A'],
- ['u', '\u06C7'],
- ['i', '\u06AD'],
- ['o', '\u0648'],
- ['p', '\u067E'],
- ['a', '\u06BE'],
- ['s', '\u0633'],
- ['d', '\u062F'],
- ['f', '\u0627'],
- ['g', '\u06D5'],
- ['h', '\u0649'],
- ['j', '\u0642'],
- ['k', '\u0643'],
- ['l', '\u0644'],
- [';', '\u061B'],
- ['z', '\u0632'],
- ['x', '\u0634'],
- ['c', '\u063A'],
- ['v', '\u06C8'],
- ['b', '\u0628'],
- ['n', '\u0646'],
- ['m', '\u0645'],
- [',', '\u060C'],
- ['/', '\u0626'],
- ['Q', '\u0686'],
- ['W', '\u06CB'],
- ['E', '\u06D0'],
- ['R', '\u0631'],
- ['T', '\u062A'],
- ['Y', '\u064A'],
- ['U', '\u06C7'],
- ['I', '\u06AD'],
- ['O', '\u0648'],
- ['P', '\u067E'],
- ['\\{', '\u00AB'],
- ['\\}', '\u00BB'],
- ['A', '\u06BE'],
- ['S', '\u0633'],
- ['D', '\u0698'],
- ['F', '\u0641'],
- ['G', '\u06AF'],
- ['H', '\u062E'],
- ['J', '\u062C'],
- ['K', '\u06C6'],
- ['L', '\u0644'],
- ['Z', '\u0632'],
- ['X', '\u0634'],
- ['C', '\u063A'],
- ['V', '\u06C8'],
- ['B', '\u0628'],
- ['N', '\u0646'],
- ['M', '\u0645'],
- ['\\?', '\u061F'],
- ['\\<', '\u2039'],
- ['\\>', '\u203A'],
- ['\\_', '\u2014']
+ [ 'q', '\u0686' ],
+ [ 'w', '\u06CB' ],
+ [ 'e', '\u06D0' ],
+ [ 'r', '\u0631' ],
+ [ 't', '\u062A' ],
+ [ 'y', '\u064A' ],
+ [ 'u', '\u06C7' ],
+ [ 'i', '\u06AD' ],
+ [ 'o', '\u0648' ],
+ [ 'p', '\u067E' ],
+ [ 'a', '\u06BE' ],
+ [ 's', '\u0633' ],
+ [ 'd', '\u062F' ],
+ [ 'f', '\u0627' ],
+ [ 'g', '\u06D5' ],
+ [ 'h', '\u0649' ],
+ [ 'j', '\u0642' ],
+ [ 'k', '\u0643' ],
+ [ 'l', '\u0644' ],
+ [ ';', '\u061B' ],
+ [ 'z', '\u0632' ],
+ [ 'x', '\u0634' ],
+ [ 'c', '\u063A' ],
+ [ 'v', '\u06C8' ],
+ [ 'b', '\u0628' ],
+ [ 'n', '\u0646' ],
+ [ 'm', '\u0645' ],
+ [ ',', '\u060C' ],
+ [ '/', '\u0626' ],
+ [ 'Q', '\u0686' ],
+ [ 'W', '\u06CB' ],
+ [ 'E', '\u06D0' ],
+ [ 'R', '\u0631' ],
+ [ 'T', '\u062A' ],
+ [ 'Y', '\u064A' ],
+ [ 'U', '\u06C7' ],
+ [ 'I', '\u06AD' ],
+ [ 'O', '\u0648' ],
+ [ 'P', '\u067E' ],
+ [ '\\{', '\u00AB' ],
+ [ '\\}', '\u00BB' ],
+ [ 'A', '\u06BE' ],
+ [ 'S', '\u0633' ],
+ [ 'D', '\u0698' ],
+ [ 'F', '\u0641' ],
+ [ 'G', '\u06AF' ],
+ [ 'H', '\u062E' ],
+ [ 'J', '\u062C' ],
+ [ 'K', '\u06C6' ],
+ [ 'L', '\u0644' ],
+ [ 'Z', '\u0632' ],
+ [ 'X', '\u0634' ],
+ [ 'C', '\u063A' ],
+ [ 'V', '\u06C8' ],
+ [ 'B', '\u0628' ],
+ [ 'N', '\u0646' ],
+ [ 'M', '\u0645' ],
+ [ '\\?', '\u061F' ],
+ [ '\\<', '\u2039' ],
+ [ '\\>', '\u203A' ],
+ [ '\\_', '\u2014' ]
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/uk/uk-kbd.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/uk/uk-kbd.js
index 93489433..1e839838 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/uk/uk-kbd.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/uk/uk-kbd.js
@@ -11,88 +11,88 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['`', 'ґ'],
- ['q', 'й'],
- ['w', 'ц'],
- ['e', 'у'],
- ['r', 'к'],
- ['t', 'е'],
- ['y', 'н'],
- ['u', 'г'],
- ['i', 'ш'],
- ['o', 'щ'],
- ['p', 'з'],
- ['\\[', 'х'],
- ['\\]', 'ї'],
- ['a', 'ф'],
- ['s', 'і'],
- ['d', 'в'],
- ['f', 'а'],
- ['g', 'п'],
- ['h', 'р'],
- ['j', 'о'],
- ['k', 'л'],
- ['l', 'д'],
- [';', 'ж'],
- ['\'', 'є'],
- ['\\\\', '\\'],
- ['z', 'я'],
- ['x', 'ч'],
- ['c', 'с'],
- ['v', 'м'],
- ['b', 'и'],
- ['n', 'т'],
- ['m', 'ь'],
- [',', 'б'],
- ['\\.', 'ю'],
- ['/', '.'],
- ['\\!', '!'],
- ['\\@', '"'],
- ['\\#', '№'],
- ['\\$', ';'],
- ['\\%', '%'],
- ['\\^', ':'],
- ['\\&', '?'],
- ['\\*', '*'],
- ['\\(', '('],
- ['\\)', ')'],
- ['\\_', '_'],
- ['\\+', '+'],
- ['\\~', 'Ґ'],
- ['Q', 'Й'],
- ['W', 'Ц'],
- ['E', 'У'],
- ['R', 'К'],
- ['T', 'Е'],
- ['Y', 'Н'],
- ['U', 'Г'],
- ['I', 'Ш'],
- ['O', 'Щ'],
- ['P', 'З'],
- ['\\{', 'Х'],
- ['\\}', 'Ї'],
- ['A', 'Ф'],
- ['S', 'І'],
- ['D', 'В'],
- ['F', 'А'],
- ['G', 'П'],
- ['H', 'Р'],
- ['J', 'О'],
- ['K', 'Л'],
- ['L', 'Д'],
- [':', 'Ж'],
- ['\"', 'Є'],
- ['\\|', '|'],
- ['Z', 'Я'],
- ['X', 'Ч'],
- ['C', 'С'],
- ['V', 'М'],
- ['B', 'И'],
- ['N', 'Т'],
- ['M', 'Ь'],
- ['\\<', 'Б'],
- ['\\>', 'Ю'],
- ['\\?', ',']
+ [ '`', 'ґ' ],
+ [ 'q', 'й' ],
+ [ 'w', 'ц' ],
+ [ 'e', 'у' ],
+ [ 'r', 'к' ],
+ [ 't', 'е' ],
+ [ 'y', 'н' ],
+ [ 'u', 'г' ],
+ [ 'i', 'ш' ],
+ [ 'o', 'щ' ],
+ [ 'p', 'з' ],
+ [ '\\[', 'х' ],
+ [ '\\]', 'ї' ],
+ [ 'a', 'ф' ],
+ [ 's', 'і' ],
+ [ 'd', 'в' ],
+ [ 'f', 'а' ],
+ [ 'g', 'п' ],
+ [ 'h', 'р' ],
+ [ 'j', 'о' ],
+ [ 'k', 'л' ],
+ [ 'l', 'д' ],
+ [ ';', 'ж' ],
+ [ '\'', 'є' ],
+ [ '\\\\', '\\' ],
+ [ 'z', 'я' ],
+ [ 'x', 'ч' ],
+ [ 'c', 'с' ],
+ [ 'v', 'м' ],
+ [ 'b', 'и' ],
+ [ 'n', 'т' ],
+ [ 'm', 'ь' ],
+ [ ',', 'б' ],
+ [ '\\.', 'ю' ],
+ [ '/', '.' ],
+ [ '\\!', '!' ],
+ [ '\\@', '"' ],
+ [ '\\#', '№' ],
+ [ '\\$', ';' ],
+ [ '\\%', '%' ],
+ [ '\\^', ':' ],
+ [ '\\&', '?' ],
+ [ '\\*', '*' ],
+ [ '\\(', '(' ],
+ [ '\\)', ')' ],
+ [ '\\_', '_' ],
+ [ '\\+', '+' ],
+ [ '\\~', 'Ґ' ],
+ [ 'Q', 'Й' ],
+ [ 'W', 'Ц' ],
+ [ 'E', 'У' ],
+ [ 'R', 'К' ],
+ [ 'T', 'Е' ],
+ [ 'Y', 'Н' ],
+ [ 'U', 'Г' ],
+ [ 'I', 'Ш' ],
+ [ 'O', 'Щ' ],
+ [ 'P', 'З' ],
+ [ '\\{', 'Х' ],
+ [ '\\}', 'Ї' ],
+ [ 'A', 'Ф' ],
+ [ 'S', 'І' ],
+ [ 'D', 'В' ],
+ [ 'F', 'А' ],
+ [ 'G', 'П' ],
+ [ 'H', 'Р' ],
+ [ 'J', 'О' ],
+ [ 'K', 'Л' ],
+ [ 'L', 'Д' ],
+ [ ':', 'Ж' ],
+ [ '\"', 'Є' ],
+ [ '\\|', '|' ],
+ [ 'Z', 'Я' ],
+ [ 'X', 'Ч' ],
+ [ 'C', 'С' ],
+ [ 'V', 'М' ],
+ [ 'B', 'И' ],
+ [ 'N', 'Т' ],
+ [ 'M', 'Ь' ],
+ [ '\\<', 'Б' ],
+ [ '\\>', 'Ю' ],
+ [ '\\?', ',' ]
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ur/ur-phonetic.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ur/ur-phonetic.js
index 98b7596b..65de2b0c 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ur/ur-phonetic.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ur/ur-phonetic.js
@@ -11,97 +11,87 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['!', '!'],
- ['1', '۱'],
- ['2', '۲'],
- ['\\#', '/'],
- ['3', '۳'],
- /* Yeh with hamza above */ ['\\$', 'ئ'],
- ['4', '۴'],
- ['5', '۵'],
- ['6', '۶'],
- ['7', '۷'],
- ['8', '۸'],
- ['\\(', ')'],
- ['9', '۹'],
- ['\\)', '('],
- ['0', '۰'],
- ['\\_" "ّ'],
- /* Alef with hamza above */ ['\\-', 'أ'],
- /* Alef with madda above */ ['\\+', 'آ'],
- /* Waw with hamza above */ ['\\=', 'ؤ'],
- ['Q', 'ْ'],
- ['q', 'ق'],
- ['W', 'ﷺ'],
- ['w', 'و'],
- ['E', '¥'],
- ['e', 'ع'],
- ['R', 'ڑ'],
- ['r', 'ر'],
- ['T', 'ٹ'],
- ['t', 'ت'],
- ['Y', '\u0601'],
- ['y', 'ے'],
- ['U', '،'],
- ['u', 'ء'],
- ['I', 'ٰ'],
- ['i', 'ی'],
- /* Teh marbuta goal */ ['O', 'ۃ'],
- ['o', 'ہ'],
- ['P', 'ُ'],
- ['p', 'پ'],
- ['\\{', 'ٰ'],
- ['\\[', ']'],
- ['\\}', 'ٰٰ'],
- ['\\]', '['],
- ['A', 'ٓ'],
- ['a', 'ا'],
- ['S', 'ص'],
- ['s', 'س'],
- ['D', 'ڈ'],
- ['d', 'د'],
- ['F', ''],
- ['f', 'ف'],
- ['G', 'غ'],
- ['g', 'گ'],
- ['H', 'ح'],
- ['h', 'ھ'],
- ['J', 'ض'],
- ['j', 'ج'],
- ['K', 'خ'],
- ['k', 'ک'],
- ['L', '\u0613'],
- ['l', 'ل'],
- [':', ':'],
- /* Arabic semicolon */ [';', '؛'],
- ['\"', '؎'],
- ['\'', 'ٰ'],
- ['\\|', 'ؔ'],
- ['\\', '؎'],
- ['\\~', 'ً'],
- ['\\`', 'ٍ'],
- ['Z', 'ذ'],
- ['z', 'ز'],
- ['X', 'ژ'],
- ['x', 'ش'],
- ['C', 'ث'],
- ['c', 'چ'],
- ['V', 'ظ'],
- ['v', 'ط'],
- ['B', 'ؒ'],
- ['b', 'ب'],
- ['N', 'ں'],
- ['n', 'ن'],
- ['M', ''],
- ['m', 'م'],
- ['\\<', 'ِ'],
- [',', '،'],
- ['\\>', 'َ'],
- /* Arabic full stop */ ['\\.', '۔'],
- /* Arabic question mark */ ['\\?', '؟'],
- ['\\^', 'ۖ'],
- ['\\&', 'ٔ'],
- ['\\*', 'ٌ']]
+ [ '!', '!' ],
+ [ '\\#', '/' ],
+ /* Yeh with hamza above */ [ '\\$', 'ئ' ],
+ [ '\\(', ')' ],
+ [ '\\)', '(' ],
+ [ '\\_" "ّ' ],
+ /* Alef with hamza above */ [ '\\-', 'أ' ],
+ /* Alef with madda above */ [ '\\+', 'آ' ],
+ /* Waw with hamza above */ [ '\\=', 'ؤ' ],
+ [ 'Q', 'ْ' ],
+ [ 'q', 'ق' ],
+ [ 'W', 'ﷺ' ],
+ [ 'w', 'و' ],
+ [ 'E', '¥' ],
+ [ 'e', 'ع' ],
+ [ 'R', 'ڑ' ],
+ [ 'r', 'ر' ],
+ [ 'T', 'ٹ' ],
+ [ 't', 'ت' ],
+ [ 'Y', '\u0601' ],
+ [ 'y', 'ے' ],
+ [ 'U', '،' ],
+ [ 'u', 'ء' ],
+ [ 'I', 'ٰ' ],
+ [ 'i', 'ی' ],
+ /* Teh marbuta goal */ [ 'O', 'ۃ' ],
+ [ 'o', 'ہ' ],
+ [ 'P', 'ُ' ],
+ [ 'p', 'پ' ],
+ [ '\\{', 'ٰ' ],
+ [ '\\[', ']' ],
+ [ '\\}', 'ٰٰ' ],
+ [ '\\]', '[' ],
+ [ 'A', 'ٓ' ],
+ [ 'a', 'ا' ],
+ [ 'S', 'ص' ],
+ [ 's', 'س' ],
+ [ 'D', 'ڈ' ],
+ [ 'd', 'د' ],
+ [ 'F', '' ],
+ [ 'f', 'ف' ],
+ [ 'G', 'غ' ],
+ [ 'g', 'گ' ],
+ [ 'H', 'ح' ],
+ [ 'h', 'ھ' ],
+ [ 'J', 'ض' ],
+ [ 'j', 'ج' ],
+ [ 'K', 'خ' ],
+ [ 'k', 'ک' ],
+ [ 'L', '\u0613' ],
+ [ 'l', 'ل' ],
+ [ ':', ':' ],
+ /* Arabic semicolon */ [ ';', '؛' ],
+ [ '\"', '؎' ],
+ [ '\'', 'ٰ' ],
+ [ '\\|', 'ؔ' ],
+ [ '\\', '؎' ],
+ [ '\\~', 'ً' ],
+ [ '\\`', 'ٍ' ],
+ [ 'Z', 'ذ' ],
+ [ 'z', 'ز' ],
+ [ 'X', 'ژ' ],
+ [ 'x', 'ش' ],
+ [ 'C', 'ث' ],
+ [ 'c', 'چ' ],
+ [ 'V', 'ظ' ],
+ [ 'v', 'ط' ],
+ [ 'B', 'ؒ' ],
+ [ 'b', 'ب' ],
+ [ 'N', 'ں' ],
+ [ 'n', 'ن' ],
+ [ 'M', '' ],
+ [ 'm', 'م' ],
+ [ '\\<', 'ِ' ],
+ [ ',', '،' ],
+ [ '\\>', 'َ' ],
+ /* Arabic full stop */ [ '\\.', '۔' ],
+ /* Arabic question mark */ [ '\\?', '؟' ],
+ [ '\\^', 'ۖ' ],
+ [ '\\&', 'ٔ' ],
+ [ '\\*', 'ٌ' ] ]
};
$.ime.register( urPhonetic );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ur/ur-transliteration.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ur/ur-transliteration.js
index 7b1236e2..7be5020b 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ur/ur-transliteration.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ur/ur-transliteration.js
@@ -11,87 +11,87 @@
license: '',
version: '1.0',
patterns: [
- ['x', 'ف'],
- ['_', '_'],
- ['D', 'ڑ'],
- ['E', 'ذ'],
- ['F', 'ں'],
- ['R', 'ڈ'],
- ['G', 'ۂ'],
- ['T', 'ث'],
- ['\\+', '+'],
- ['S', 'ز'],
- ['W', 'ض'],
- ['A', 'ژ'],
- ['Q', 'ظ'],
- ['k', 'ک'],
- ['K', 'گ'],
- ['i', 'ب'],
- ['I', 'ـ'],
- ['U', 'ۃ'],
- /* Arabic semicolon */ ['\\;', '؛'],
- ['\\:', ':'],
- ['p', 'ح'],
- ['P', 'خ'],
- ['\\}', '{'],
- ['\'', '\''],
- ['\"', '\"'],
- ['\\[', ']'],
- ['\\{', '{'],
- ['C', 'ۓ'],
- ['l', 'ی'],
- ['L', 'ي'],
- ['o', 'ج'],
- ['O', 'چ'],
- ['v', 'س'],
- ['h', 'ہ'],
- ['H', 'ء'],
- ['y', 'پ'],
- ['Y', '\u0651\u00AD'],
- ['c', 'ے'],
- /* Arabic question mark */ ['\\?','؟'],
- ['j', 'ا'],
- ['n', 'غ'],
- ['N', 'ئ'],
- ['b', 'ش'],
- ['\\<', '','>'],
- ['m', 'ع'],
- ['u', 'ت'],
- ['\\]', '','['],
- ['e', 'ھ'],
- ['f', 'ن'],
- ['r', 'د'],
- ['g', 'ل'],
- ['t', 'ٹ'],
- ['\\=', '','='],
- ['\\\\', '\\'],
- ['s', 'و'],
- ['w', 'ص'],
- ['a', 'م'],
- ['q', 'ط'],
- ['d', 'ر'],
- ['\\|', '|'],
- ['/', '/'],
- ['\\>', '<'],
- ['0', '0'],
- ['1', '1'],
- ['2', '2'],
- ['3', '3'],
- ['4', '4'],
- ['5', '5'],
- ['6', '6'],
- ['7', '7'],
- ['8', '8'],
- ['9', '9'],
- ['\\@', '@'],
- ['\\#', '','#'],
- ['\\$', '','$'],
- ['\\%', '','٪'],
- ['\\^', '','^'],
- ['\\&', 'ۖ'],
- /* Arabic star */ ['\\*', '٭'],
- ['\\(', '('],
- ['\\)', ')']]
+ [ 'x', 'ف' ],
+ [ '_', '_' ],
+ [ 'D', 'ڑ' ],
+ [ 'E', 'ذ' ],
+ [ 'F', 'ں' ],
+ [ 'R', 'ڈ' ],
+ [ 'G', 'ۂ' ],
+ [ 'T', 'ث' ],
+ [ '\\+', '+' ],
+ [ 'S', 'ز' ],
+ [ 'W', 'ض' ],
+ [ 'A', 'ژ' ],
+ [ 'Q', 'ظ' ],
+ [ 'k', 'ک' ],
+ [ 'K', 'گ' ],
+ [ 'i', 'ب' ],
+ [ 'I', 'ـ' ],
+ [ 'U', 'ۃ' ],
+ /* Arabic semicolon */ [ '\\;', '؛' ],
+ [ '\\:', ':' ],
+ [ 'p', 'ح' ],
+ [ 'P', 'خ' ],
+ [ '\\}', '{' ],
+ [ '\'', '\'' ],
+ [ '\"', '\"' ],
+ [ '\\[', ']' ],
+ [ '\\{', '{' ],
+ [ 'C', 'ۓ' ],
+ [ 'l', 'ی' ],
+ [ 'L', 'ي' ],
+ [ 'o', 'ج' ],
+ [ 'O', 'چ' ],
+ [ 'v', 'س' ],
+ [ 'h', 'ہ' ],
+ [ 'H', 'ء' ],
+ [ 'y', 'پ' ],
+ [ 'Y', '\u0651\u00AD' ],
+ [ 'c', 'ے' ],
+ /* Arabic question mark */ [ '\\?','؟' ],
+ [ 'j', 'ا' ],
+ [ 'n', 'غ' ],
+ [ 'N', 'ئ' ],
+ [ 'b', 'ش' ],
+ [ '\\<', '','>' ],
+ [ 'm', 'ع' ],
+ [ 'u', 'ت' ],
+ [ '\\]', '','[' ],
+ [ 'e', 'ھ' ],
+ [ 'f', 'ن' ],
+ [ 'r', 'د' ],
+ [ 'g', 'ل' ],
+ [ 't', 'ٹ' ],
+ [ '\\=', '','=' ],
+ [ '\\\\', '\\' ],
+ [ 's', 'و' ],
+ [ 'w', 'ص' ],
+ [ 'a', 'م' ],
+ [ 'q', 'ط' ],
+ [ 'd', 'ر' ],
+ [ '\\|', '|' ],
+ [ '/', '/' ],
+ [ '\\>', '<' ],
+ [ '0', '0' ],
+ [ '1', '1' ],
+ [ '2', '2' ],
+ [ '3', '3' ],
+ [ '4', '4' ],
+ [ '5', '5' ],
+ [ '6', '6' ],
+ [ '7', '7' ],
+ [ '8', '8' ],
+ [ '9', '9' ],
+ [ '\\@', '@' ],
+ [ '\\#', '','#' ],
+ [ '\\$', '','$' ],
+ [ '\\%', '','٪' ],
+ [ '\\^', '','^' ],
+ [ '\\&', 'ۖ' ],
+ /* Arabic star */ [ '\\*', '٭' ],
+ [ '\\(', '(' ],
+ [ '\\)', ')' ] ]
};
$.ime.register( urTransliteration );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/uz/uz-kbd.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/uz/uz-kbd.js
index f480eeb3..98bc24c9 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/uz/uz-kbd.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/uz/uz-kbd.js
@@ -11,90 +11,90 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['`', 'ё'],
- ['q', 'й'],
- ['w', 'ц'],
- ['e', 'у'],
- ['r', 'к'],
- ['t', 'е'],
- ['y', 'н'],
- ['u', 'г'],
- ['i', 'ш'],
- ['o', 'ў'],
- ['p', 'з'],
- ['\\[', 'х'],
- ['\\]', 'ъ'],
- ['a', 'ф'],
- ['s', 'қ'],
- ['d', 'в'],
- ['f', 'а'],
- ['g', 'п'],
- ['h', 'р'],
- ['j', 'о'],
- ['k', 'л'],
- ['l', 'д'],
- [';', 'ж'],
- ['\'', 'э'],
- ['\\\\', '\\'],
- ['z', 'я'],
- ['x', 'ч'],
- ['c', 'с'],
- ['v', 'м'],
- ['b', 'и'],
- ['n', 'т'],
- ['m', 'ь'],
- [',', 'б'],
- ['\\.', 'ю'],
- ['/', '.'],
- ['\\!', '!'],
- ['\\@', '\"'],
- ['\\#', '№'],
- ['\\$', ';'],
- ['\\%', '%'],
- ['\\^', ':'],
- ['\\&', '?'],
- ['\\*', '*'],
- ['\\(', '('],
- ['\\)', ')'],
- ['\\-', 'ғ'],
- ['\\_', 'Ғ'],
- ['\\=', 'ҳ'],
- ['\\+', 'Ҳ'],
- ['\\~', 'Ё'],
- ['Q', 'Й'],
- ['W', 'Ц'],
- ['E', 'У'],
- ['R', 'К'],
- ['T', 'Е'],
- ['Y', 'Н'],
- ['U', 'Г'],
- ['I', 'Ш'],
- ['O', 'Ў'],
- ['P', 'З'],
- ['\\{', 'Х'],
- ['\\}', 'Ъ'],
- ['A', 'Ф'],
- ['S', 'Қ'],
- ['D', 'В'],
- ['F', 'А'],
- ['G', 'П'],
- ['H', 'Р'],
- ['J', 'О'],
- ['K', 'Л'],
- ['L', 'Д'],
- [':', 'Ж'],
- ['\"', 'Э'],
- ['\\|', '|'],
- ['Z', 'Я'],
- ['X', 'Ч'],
- ['C', 'С'],
- ['V', 'М'],
- ['B', 'И'],
- ['N', 'Т'],
- ['M', 'Ь'],
- ['\\<', 'Б'],
- ['\\>', 'Ю'],
- ['\\?', ',']
+ [ '`', 'ё' ],
+ [ 'q', 'й' ],
+ [ 'w', 'ц' ],
+ [ 'e', 'у' ],
+ [ 'r', 'к' ],
+ [ 't', 'е' ],
+ [ 'y', 'н' ],
+ [ 'u', 'г' ],
+ [ 'i', 'ш' ],
+ [ 'o', 'ў' ],
+ [ 'p', 'з' ],
+ [ '\\[', 'х' ],
+ [ '\\]', 'ъ' ],
+ [ 'a', 'ф' ],
+ [ 's', 'қ' ],
+ [ 'd', 'в' ],
+ [ 'f', 'а' ],
+ [ 'g', 'п' ],
+ [ 'h', 'р' ],
+ [ 'j', 'о' ],
+ [ 'k', 'л' ],
+ [ 'l', 'д' ],
+ [ ';', 'ж' ],
+ [ '\'', 'э' ],
+ [ '\\\\', '\\' ],
+ [ 'z', 'я' ],
+ [ 'x', 'ч' ],
+ [ 'c', 'с' ],
+ [ 'v', 'м' ],
+ [ 'b', 'и' ],
+ [ 'n', 'т' ],
+ [ 'm', 'ь' ],
+ [ ',', 'б' ],
+ [ '\\.', 'ю' ],
+ [ '/', '.' ],
+ [ '\\!', '!' ],
+ [ '\\@', '\"' ],
+ [ '\\#', '№' ],
+ [ '\\$', ';' ],
+ [ '\\%', '%' ],
+ [ '\\^', ':' ],
+ [ '\\&', '?' ],
+ [ '\\*', '*' ],
+ [ '\\(', '(' ],
+ [ '\\)', ')' ],
+ [ '\\-', 'ғ' ],
+ [ '\\_', 'Ғ' ],
+ [ '\\=', 'ҳ' ],
+ [ '\\+', 'Ҳ' ],
+ [ '\\~', 'Ё' ],
+ [ 'Q', 'Й' ],
+ [ 'W', 'Ц' ],
+ [ 'E', 'У' ],
+ [ 'R', 'К' ],
+ [ 'T', 'Е' ],
+ [ 'Y', 'Н' ],
+ [ 'U', 'Г' ],
+ [ 'I', 'Ш' ],
+ [ 'O', 'Ў' ],
+ [ 'P', 'З' ],
+ [ '\\{', 'Х' ],
+ [ '\\}', 'Ъ' ],
+ [ 'A', 'Ф' ],
+ [ 'S', 'Қ' ],
+ [ 'D', 'В' ],
+ [ 'F', 'А' ],
+ [ 'G', 'П' ],
+ [ 'H', 'Р' ],
+ [ 'J', 'О' ],
+ [ 'K', 'Л' ],
+ [ 'L', 'Д' ],
+ [ ':', 'Ж' ],
+ [ '\"', 'Э' ],
+ [ '\\|', '|' ],
+ [ 'Z', 'Я' ],
+ [ 'X', 'Ч' ],
+ [ 'C', 'С' ],
+ [ 'V', 'М' ],
+ [ 'B', 'И' ],
+ [ 'N', 'Т' ],
+ [ 'M', 'Ь' ],
+ [ '\\<', 'Б' ],
+ [ '\\>', 'Ю' ],
+ [ '\\?', ',' ]
]
};
$.ime.register( uzKbd );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/vec/vec-GVU.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/vec/vec-GVU.js
index b9b55279..70a7f08f 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/vec/vec-GVU.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/vec/vec-GVU.js
@@ -3,7 +3,7 @@
var vec = {
id: 'vec-GVU',
- name: 'Venetian GVU',
+ name: 'Vèneto GVU',
description: 'Venetian input method.',
date: '2013-08-06',
URL: 'http://github.com/wikimedia/jquery.ime',
@@ -11,20 +11,20 @@
license: 'GPLv3',
version: '1.0',
patterns: [
- ['dh', 'đ'],
- ['lh', 'ƚ'],
- ['òò', 'ó'],
- ['zh', 'ẑ'],
- ['đh', 'dh'],
- ['ƚh', 'lh'],
- ['ẑh', 'zh'],
- ['Dh', 'Đ'],
- ['Lh', 'Ƚ'],
- ['Òò', 'Ó'],
- ['Zh', 'Ẑ'],
- ['Đh', 'Dh'],
- ['Ƚh', 'Lh'],
- ['Ẑh', 'Zh']
+ [ 'dh', 'đ' ],
+ [ 'lh', 'ƚ' ],
+ [ 'òò', 'ó' ],
+ [ 'zh', 'ẑ' ],
+ [ 'đh', 'dh' ],
+ [ 'ƚh', 'lh' ],
+ [ 'ẑh', 'zh' ],
+ [ 'Dh', 'Đ' ],
+ [ 'Lh', 'Ƚ' ],
+ [ 'Òò', 'Ó' ],
+ [ 'Zh', 'Ẑ' ],
+ [ 'Đh', 'Dh' ],
+ [ 'Ƚh', 'Lh' ],
+ [ 'Ẑh', 'Zh' ]
]
};
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/css/jquery.uls.compact.css b/MLEB/UniversalLanguageSelector/lib/jquery.uls/css/jquery.uls.compact.css
deleted file mode 100644
index 56004102..00000000
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/css/jquery.uls.compact.css
+++ /dev/null
@@ -1,73 +0,0 @@
-.uls-compact .uls-icon-close,
-.uls-compact .uls-title-region {
- display: none !important;
-}
-
-.uls-compact.uls-menu {
- border-radius: 0;
-}
-
-.uls-compact .uls-search {
- background: white;
- border-top: none;
- padding: 0.8em 0;
- border-bottom-width: 1px;
- border-bottom-style: solid;
- border-bottom-color: #DDD;
-}
-
-.uls-compact .uls-filterinput,
-.uls-compact .uls-filterinput:focus {
- background-color: transparent;
- border: none;
- box-shadow: none;
- outline: none;
- font-size: 18px;
- left: 0;
-}
-
-.uls-compact .uls-language-list {
- background: #FCFCFC;
- height: 20em;
-}
-
-.uls-compact .uls-search-label {
- background-size: 25px;
- height: 26px;
- width: 26px;
- float: right;
- opacity: 0.8;
-}
-
-.uls-compact .uls-languagefilter-clear {
- margin-left: 0;
-}
-
-.uls-compact .uls-title-region a {
- color: #777;
- display: inline-block;
- margin: 15px 0 5px 19px;
- cursor: pointer;
- padding: 6px;
- text-decoration: none;
- font-size: 14px;
- border: 1px solid transparent;
-}
-
-.uls-compact .uls-title-region a:hover {
- color: #252525;
- background: #F0F0F0;
- border: 1px solid #DDD;
- border-radius: 3px;
-}
-
-.uls-compact .uls-title-region a:before {
- display: inline-block;
- width: 0;
- height: 0;
- border-right: 4px solid #777;
- border-top: 4px solid transparent;
- border-bottom: 4px solid transparent;
- content: "";
- margin: 0 6px 0 0;
-}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/css/jquery.uls.css b/MLEB/UniversalLanguageSelector/lib/jquery.uls/css/jquery.uls.css
index f1fde4db..90a224c3 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/css/jquery.uls.css
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/css/jquery.uls.css
@@ -1,29 +1,26 @@
.uls-trigger {
+ background: url( ../images/language.png ) no-repeat left center;
/* @embed */
- background: transparent url('../images/icon-language.png') no-repeat scroll left center;
- /* @embed */
- background-image: -webkit-linear-gradient(transparent, transparent), url('../images/icon-language.svg');
- /* @embed */
- background-image: linear-gradient(transparent, transparent), url('../images/icon-language.svg');
- padding-left: 30px;
+ background-image: linear-gradient( transparent, transparent ), url( ../images/language.svg );
+ padding-left: 24px;
}
+
.uls-menu {
position: absolute;
z-index: 1000;
display: none;
margin-top: 1px;
- /* Styling */
- background-color: #ffffff;
+ background-color: #fff;
border: 1px solid #ccc;
- border: 1px solid rgba(0, 0, 0, 0.2);
- border-radius: 5px;
- -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
- -moz-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
- box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
+ border-color: rgba( 0, 0, 0, 0.2 );
+ -webkit-box-shadow: 0 5px 10px rgba( 0, 0, 0, 0.2 );
+ -moz-box-shadow: 0 5px 10px rgba( 0, 0, 0, 0.2 );
+ box-shadow: 0 5px 10px rgba( 0, 0, 0, 0.2 );
-webkit-background-clip: padding-box;
-moz-background-clip: padding;
background-clip: padding-box;
}
+
.uls-wide {
min-width: 715px;
width: 45%;
@@ -49,154 +46,82 @@
min-width: 150px;
}
-.uls-title-region a {
- padding-left: 15px;
-}
-.uls-menu .uls-title {
- font-weight: normal;
- border: none;
- padding-left: 15px;
- font-size: 18pt;
- line-height: 1.25em;
- color: #555;
-}
-.uls-menu .uls-no-results-found-title {
- font-size: 16pt;
- font-weight: bold;
- line-height: 1.5em;
- padding-left: 6px;
- padding-top: 10px;
- margin-top: 0;
- margin-bottom: 15px;
- border-bottom: none;
- color: #555;
-}
-.uls-menu .uls-lcd-region-section .uls-lcd-region-title {
- color: #777;
- font-size: 14pt;
- font-weight: lighter;
- line-height: 1.5em;
- padding-left: 0;
- margin-top: 0;
- margin-bottom: 10px;
- border-bottom: none;
+.uls-search {
+ background-color: #fff;
+ padding: 5px 16px;
+ border-bottom: 1px solid #ddd;
}
-div.uls-region {
- cursor: pointer;
- padding: 0;
- margin: 0;
- height: 120px;
- border-bottom-color: transparent;
- border-bottom-style: solid;
- border-bottom-width: 2px;
-}
-
-.uls-region a {
- bottom: 2px;
- left: 2px;
- padding: 0;
- position: absolute;
- font-size: 13px;
- line-height: 1.2em;
- text-decoration: none;
- overflow: hidden;
- text-overflow: ellipsis;
- width: 99%;
+
+.grid .uls-search {
+ padding-left: 0;
}
-.uls-icon-close {
- /* @embed */
- background: transparent url('../images/close.png') no-repeat scroll center center;
- /* @embed */
- background-image: -webkit-linear-gradient(transparent, transparent), url('../images/close.svg');
- /* @embed */
- background-image: linear-gradient(transparent, transparent), url('../images/close.svg');
- float: right;
- padding: 15px;
- cursor: pointer;
+/* Make space for magnifying class on the front */
+.uls-search-wrapper {
+ position: relative;
+ padding-left: 44px;
+ margin-right: 5px;
+ height: 32px;
}
-.uls-menu .uls-languagefilter {
- background-color: transparent;
- border: 1px solid #c9c9c9;
- border-radius: 2px 2px 2px 2px;
- box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1) inset;
- color: #333;
+.uls-search-label {
+ background: url( ../images/search.png ) no-repeat center center;
+ /* @embed */
+ background-image: linear-gradient( transparent, transparent ), url( ../images/search.svg );
+ background-size: 20px;
+ height: 32px;
+ width: 44px;
display: block;
- padding: 6px;
- -moz-transition: border 0.15s linear 0s;
- -o-transition: border 0.15s linear 0s;
- -webkit-transition: border 0.15s linear 0s;
- transition: border 0.15s linear 0s;
-}
-.uls-menu .uls-languagefilter:focus {
- border: 1px solid #3366bb;
+ position: absolute;
+ left: 0;
+ opacity: 0.8;
}
-.uls-menu .uls-search {
+
+.uls-search-input-wrapper {
position: relative;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#F0F0F0', endColorstr='#FBFBFB');
- background: #f8f8f8;
- background: -webkit-gradient(linear, left top, left bottom, from(#F0F0F0), to(#FBFBFB));
- background: -webkit-linear-gradient(top, #F0F0F0, #FBFBFB);
- background: -moz-linear-gradient(top, #F0F0F0, #FBFBFB);
- background: -o-linear-gradient(top, #F0F0F0, #FBFBFB);
- background: linear-gradient(#F0F0F0, #FBFBFB);
- border-top-color: #AAA;
- border-top-style: solid;
- border-top-width: 1px;
- padding: 0.8em 0;
- border-bottom-width: 1px;
- border-bottom-style: solid;
- border-bottom-color: #DDD;
-}
-.uls-menu .uls-search-label {
- /* @embed */
- background: transparent url('../images/search.png') no-repeat scroll right center;
- /* @embed */
- background-image: -webkit-linear-gradient(transparent, transparent), url('../images/search.svg');
- /* @embed */
- background-image: linear-gradient(transparent, transparent), url('../images/search.svg');
- background-size: 30px;
+}
+
+/* There are two input boxes. This class applies to both of them */
+.uls-filterinput {
+ font-size: 16px;
height: 32px;
- width: 32px;
- float: right;
+ width: 100%;
+ /* For the custom clear (X) icon */
+ padding: 6px 25px 6px 0;
+ outline: 0;
+ border: 0;
+ display: block;
+ position: absolute;
+ top: 0;
+ left: 0;
}
-.uls-menu.uls-narrow .uls-search-label {
- background-size: 18px;
+/* This is the actual input */
+.uls-languagefilter {
+ background-color: transparent;
+ border: 0;
+ color: #222;
}
-.uls-menu .uls-languagefilter-clear {
- /* @embed */
- background: transparent url('../images/clear.png') no-repeat scroll left center;
- /* @embed */
- background-image: -webkit-linear-gradient(transparent, transparent), url('../images/clear.svg');
+/* This is the shadow input box showing completion suggestions */
+.uls-filtersuggestion {
+ background-color: #fff;
+ color: #777;
+}
+
+.uls-languagefilter-clear {
+ background: url( ../images/clear.png ) no-repeat left center;
/* @embed */
- background-image: linear-gradient(transparent, transparent), url('../images/clear.svg');
+ background-image: linear-gradient( transparent, transparent ), url( ../images/clear.svg );
+ background-size: 15px;
cursor: pointer;
- height: 32px;
- position: absolute;
- width: 32px;
- margin-left: -32px;
-}
-.uls-menu .uls-filterinput {
+ height: 15px;
+ width: 15px;
+
+ /* Vertical margins: (32 - 15) / 2 */
+ margin: 8.5px 5px;
position: absolute;
- top: 0;
- left: 0;
- font-size: 14px;
- height: 32px;
- width: 100%;
- text-align: left;
-}
-.uls-menu .uls-filtersuggestion {
- padding: 6px;
- background-color: white;
- color: #888;
- border: 1px transparent;
- border-radius: 2px 2px 2px 2px;
- box-shadow: 0 1px 2px transparent inset;
- left: 1px;
-}
-.uls-menu .uls-search-input-block {
- position: relative;
+ right: 0;
+ /* Make it appear above the input boxes */
+ z-index: 1;
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/css/jquery.uls.grid.css b/MLEB/UniversalLanguageSelector/lib/jquery.uls/css/jquery.uls.grid.css
index 9caf088c..f068a86d 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/css/jquery.uls.grid.css
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/css/jquery.uls.grid.css
@@ -32,15 +32,18 @@
}
.grid .highlight {
- background: #ffff99;
+ background: #ff9;
}
/* The Grid ---------------------- */
+
.grid .row {
width: 100%;
max-width: none;
min-width: 600px;
margin: 0 auto;
+ /* Nicolas Gallagher's micro clearfix */
+ *zoom: 1;
}
.grid .row .row {
@@ -50,30 +53,25 @@
margin: 0 -5px;
}
+.grid .column,
+.grid .columns {
+ float: left;
+ min-height: 1px;
+ padding: 0 5px;
+ position: relative;
+}
+
.grid .row.collapse .column,
.grid .row.collapse .columns {
padding: 0;
}
-.grid .row .row {
- width: auto;
- max-width: none;
- min-width: 0;
- margin: 0 -5px;
-}
-
.grid .row .row.collapse {
margin: 0;
}
-.grid .column, .grid .columns {
- float: left;
- min-height: 1px;
- padding: 0 5px;
- position: relative;
-}
-
-.grid .column.centered, .grid .columns.centered {
+.grid .column.centered,
+.grid .columns.centered {
float: none;
margin: 0 auto;
}
@@ -238,13 +236,9 @@
right: 83.333%;
}
-/* Nicolas Gallagher's micro clearfix */
-.grid .row {
- *zoom: 1;
-}
-
-.grid .row:before, .grid .row:after {
- content: "";
+.grid .row:before,
+.grid .row:after {
+ content: '';
display: table;
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/css/jquery.uls.lcd.css b/MLEB/UniversalLanguageSelector/lib/jquery.uls/css/jquery.uls.lcd.css
index becfb6d6..1f991557 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/css/jquery.uls.lcd.css
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/css/jquery.uls.lcd.css
@@ -1,36 +1,76 @@
-.uls-lcd-region-section ul li:hover {
- background-color: #eaeff7;
+/*
+ * Language Category Display (LCD) consists of multiple sections:
+ * - one to display when there are no search results (which might display suggested languages)
+ * - one for each region of the world, plus regions for world languages and suggested languages
+ * The regions consist of one or more rows (blocks) which consist of one-to-four columns. Each
+ * column is an ul element, and contains up to 8 li elements, each containing a link.
+ */
+
+.uls-lcd {
+ background-color: #fcfcfc;
+ height: 20em;
+ /* Work around Chrome bug where it places scrollbar on the left in
+ * in RTL mode but actually reserves the place on the right side */
+ overflow-x: hidden;
+ overflow-y: auto;
+ width: auto;
+ padding: 0 16px;
+}
+
+.uls-lcd--no-quicklist [data-region="all"] .uls-lcd-region-title {
+ display: none;
}
.uls-lcd-region-section {
margin-top: 10px;
}
-/* Language list */
-.uls-language-list {
- height: 17em;
- overflow: auto;
- width: auto;
+.uls-lcd-region-title {
+ color: #555;
+ font-size: 14px;
+ padding-left: 28px;
}
-.uls-language-block ul {
- margin: 0 0 1.5em;
+/*
+ * We need to have this as a grid row to push rest of the content below it, but resetting
+ * padding and margin so that calculating them for children is easier.
+ */
+.grid .uls-language-block.row {
+ padding: 0;
+ margin: 0;
}
-.uls-language-list ul li {
- cursor: pointer;
- font-weight: normal;
- overflow: hidden;
- white-space: nowrap;
-
+.uls-language-block > ul {
/*
- * Some languages have long names for various reasons and we still want
- * them to appear on one line.
- * To make it work correctly, the directionality must be set correctly
- * on the item level.
+ * We don't want any visible bullets in this list. Not by default anyway.
+ * Using very unspecific selector here to allow other classes to override.
+ * Bug because overflow: hidden is incompatible with bullets, also render
+ * the bullets inside the list in case there should be any.
*/
- text-overflow: ellipsis;
+ list-style: none none;
+}
+
+/*
+ * Each block should have 16px padding on both sides. But because we already gave
+ * 16px for the whole menu, we need to remove it for first and last items the blocks.
+ */
+.grid .uls-language-block > ul {
+ margin: 0 0 20px 0;
+ padding: 0 16px;
+}
+
+.grid .uls-language-block > ul:first-child {
+ padding-left: 0;
+}
+.grid .uls-language-block > ul:last-child {
+ padding-right: 0;
+}
+
+.uls-language-block > ul > li {
+ cursor: pointer;
+ margin-left: 20px;
+ padding: 8px;
/*
* The directionality (ltr/rtl) for each list item is set dynamically
* as HTML attributes in JavaScript. Setting directionality also applies
@@ -41,38 +81,56 @@
* is readable.
*/
text-align: left;
+}
+
+.uls-language-block > ul > li:hover {
+ background-color: #eaeff7;
+}
+.uls-language-block a {
+ cursor: pointer;
+ text-decoration: none;
+ color: #36c;
+ font-size: 14px;
+ display: inline-block;
+ width: 100%;
+ overflow: hidden;
/*
- * We don't want any visible bullets in this list.
+ * Some languages have long names for various reasons and we still want
+ * them to appear on one line.
+ * To make it work correctly, the directionality must be set correctly
+ * on the item level.
*/
- list-style-image: none;
- list-style-type: none;
+ text-overflow: ellipsis;
+ white-space: nowrap;
+ vertical-align: middle;
}
-.uls-language-list strong {
- text-decoration: underline;
+.uls-no-results-view {
+ display: none;
}
-.uls-language-list a {
- font-weight: normal;
- text-decoration: none;
- color: #3366bb;
- font-size: 14px;
- line-height: 1.6em;
+.uls-lcd.uls-no-results > .uls-lcd-region-section {
+ display: none;
}
-.uls-language-block {
- width: 100%;
+.uls-lcd.uls-no-results > .uls-no-results-view {
+ display: block;
}
-.uls-no-results-view {
- color: #555;
- height: 100%;
+.uls-no-results-found-title {
+ font-size: 16px;
+ padding: 0 16px 0 28px;
+ margin: 20px 0;
+ border-bottom: 0;
+ color: #54595d;
}
.uls-no-found-more {
+ border-top: 1px solid #eaecf0;
+ color: #54595d;
+ padding: 12px 16px 12px 44px;
font-size: 0.9em;
- background: #F8F8F8;
width: 100%;
margin-top: 1.6em;
line-height: 1.6em;
@@ -80,7 +138,3 @@
bottom: 0;
left: 0;
}
-
-.uls-no-found-more a {
- cursor: pointer;
-}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/css/jquery.uls.mobile.css b/MLEB/UniversalLanguageSelector/lib/jquery.uls/css/jquery.uls.mobile.css
index 5d3e06e0..f6ba97bc 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/css/jquery.uls.mobile.css
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/css/jquery.uls.mobile.css
@@ -1,4 +1,4 @@
-@media only screen and (max-width: 767px) {
+@media only screen and ( max-width: 767px ) {
.uls-mobile.uls-menu {
width: 95%;
@@ -22,16 +22,6 @@
line-height: 1.7em;
}
- .uls-mobile div.uls-region {
- width: 33% !important;
- float: left !important;
- }
-
- .uls-mobile .uls-map-block a,
- .uls-mobile .uls-map-block {
- opacity: 1 !important;
- }
-
.uls-mobile .row {
width: auto;
min-width: 0;
@@ -50,7 +40,7 @@
float: none;
}
- .uls-mobile [class*="column"] + [class*="column"]:last-child {
+ .uls-mobile [ class*='column' ] + [ class*='column' ]:last-child {
float: none;
}
@@ -58,7 +48,7 @@
.uls-mobile .uls-mobile .columns:before,
.uls-mobile .column:after,
.columns:after {
- content: "";
+ content: '';
display: table;
}
@@ -207,12 +197,12 @@
}
/* Very large display targeting */
-@media only screen and (min-width: 1441px) {
-
+@media only screen and ( min-width: 1441px ) {
.uls-mobile .hide-for-small,
.uls-mobile .hide-for-medium,
.uls-mobile .hide-for-medium-down,
- .hide-for-large, .show-for-large-up,
+ .hide-for-large,
+ .show-for-large-up,
.show-for-xlarge {
display: block !important;
}
@@ -226,9 +216,9 @@
display: none !important;
}
}
-/* Medium display targeting */
-@media only screen and (max-width: 1279px) and (min-width: 768px) {
+/* Medium display targeting */
+@media only screen and ( max-width: 1279px ) and ( min-width: 768px ) {
.uls-mobile .hide-for-small,
.uls-mobile .show-for-medium,
.uls-mobile .show-for-medium-down,
@@ -247,9 +237,9 @@
display: none !important;
}
}
-/* Small display targeting */
-@media only screen and (max-width: 767px) {
+/* Small display targeting */
+@media only screen and ( max-width: 767px ) {
.uls-mobile .show-for-small,
.uls-mobile .hide-for-medium,
.uls-mobile .show-for-medium-down,
@@ -279,7 +269,7 @@
display: none !important;
}
-@media screen and (orientation: landscape) {
+@media screen and ( orientation: landscape ) {
.uls-mobile .show-for-landscape,
.uls-mobile .hide-for-portrait {
display: block !important;
@@ -290,7 +280,7 @@
}
}
-@media screen and (orientation: portrait) {
+@media screen and ( orientation: portrait ) {
.uls-mobile .show-for-portrait,
.uls-mobile .hide-for-landscape {
display: block !important;
@@ -302,18 +292,12 @@
}
/* Touch-enabled device targeting */
-.uls-mobile .show-for-touch {
+.uls-mobile .show-for-touch,
+.uls-mobile .touch .hide-for-touch {
display: none !important;
}
-.uls-mobile .hide-for-touch {
- display: block !important;
-}
-
+.uls-mobile .hide-for-touch,
.uls-mobile .touch .show-for-touch {
display: block !important;
}
-
-.uls-mobile .touch .hide-for-touch {
- display: none !important;
-}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/aeb-latn.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/aeb-latn.json
index f4d25045..2cc8d7cf 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/aeb-latn.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/aeb-latn.json
@@ -4,7 +4,6 @@
"Csisc"
]
},
- "uls-select-language": "Exţār lūğa",
"uls-region-WW": "Ģālemīye",
"uls-region-SP": "Spēsyāl",
"uls-region-AM": "Emerīke",
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/af.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/af.json
index da7dd24a..36a24def 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/af.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/af.json
@@ -1,21 +1,25 @@
{
"@metadata": {
"authors": [
- "Naudefj"
+ "Naudefj",
+ "Amire80",
+ "Puvircho",
+ "Fwolff",
+ "Biggs ZA"
]
},
- "uls-select-language": "Kies taal",
"uls-region-WW": "Wêreldwyd",
"uls-region-SP": "Spesiaal",
"uls-region-AM": "Amerika",
"uls-region-AF": "Afrika",
"uls-region-EU": "Europa",
"uls-region-AS": "Asië",
- "uls-region-ME": "Middel-Ooste",
- "uls-region-PA": "Pasifiese gebied",
+ "uls-region-ME": "Midde-Ooste",
+ "uls-region-PA": "Stille Oseaan",
+ "uls-region-all": "Alle tale",
"uls-no-results-found": "Geen resultate gevind nie",
- "uls-common-languages": "Taalvoorstelle",
+ "uls-common-languages": "Voorgestelde tale",
"uls-no-results-suggestion-title": "U mag geïnteresseerd wees in:",
- "uls-search-help": "U kan soek volgens taalnaam, skrifnaam, ISO-kode van die taal of u kan per streek deurblaai:",
- "uls-search-placeholder": "Soek taal"
+ "uls-search-help": "Soek gerus volgens taalnaam, skrifnaam of ISO-kode, of blaai volgens streek.",
+ "uls-search-placeholder": "Soek na ’n taal"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/am.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/am.json
index 72543991..d87f27ae 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/am.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/am.json
@@ -4,7 +4,6 @@
"Elfalem"
]
},
- "uls-select-language": "ቋንቋ መምረጫ",
"uls-region-WW": "ዓለም አቀፍ",
"uls-region-SP": "ልዩ",
"uls-region-AM": "አሜሪካ",
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ar.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ar.json
index 3e8acbf5..0fb3dbb3 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ar.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ar.json
@@ -3,10 +3,12 @@
"authors": [
"Amire80",
"DRIHEM",
- "ترجمان05"
+ "ترجمان05",
+ "Hhaboh162002",
+ "Meno25",
+ "ديفيد"
]
},
- "uls-select-language": "حدد اللغة",
"uls-region-WW": "في جميع أنحاء العالم",
"uls-region-SP": "الخاصة",
"uls-region-AM": "أمريكا",
@@ -15,9 +17,10 @@
"uls-region-AS": "آسيا",
"uls-region-ME": "الشرق الأوسط",
"uls-region-PA": "المحيط الهادئ",
+ "uls-region-all": "جميع اللغات",
"uls-no-results-found": "لم يتم العثور على نتائج",
- "uls-common-languages": "لغات مشتركة",
- "uls-no-results-suggestion-title": "قد تكون مهتم في:",
- "uls-search-help": "يمكنك البحث بواسطة اسم اللغة, اسم السكريبت, رمز اللغة القياسي أو يمكنك تصفح حسب المنطقة:",
+ "uls-common-languages": "اللغات المقترحة",
+ "uls-no-results-suggestion-title": "قد تكون مهتما بما يلي:",
+ "uls-search-help": "يمكنك البحث مستخدما اسم اللغة، أو اسم السكريبت، أو رمز اللغة القياسي أو يمكنك التصفح حسب المنطقة.",
"uls-search-placeholder": "بحث عن لغة"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/as.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/as.json
index 6e52dec5..f80ebb45 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/as.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/as.json
@@ -5,7 +5,6 @@
"Dibya Dutta"
]
},
- "uls-select-language": "ভাষা নির্বাচন:",
"uls-region-WW": "বিশ্বব্যাপী",
"uls-region-SP": "বিশেষ",
"uls-region-AM": "আমেৰিকা",
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ast.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ast.json
index 3fb11a44..951de3d3 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ast.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ast.json
@@ -4,7 +4,6 @@
"Xuacu"
]
},
- "uls-select-language": "Escueyi llingua",
"uls-region-WW": "Mundial",
"uls-region-SP": "Especiales",
"uls-region-AM": "América",
@@ -13,9 +12,10 @@
"uls-region-AS": "Asia",
"uls-region-ME": "Oriente mediu",
"uls-region-PA": "Pacíficu",
+ "uls-region-all": "Toles llingües",
"uls-no-results-found": "Nun s'alcontraron resultaos",
- "uls-common-languages": "Llingües comunes",
+ "uls-common-languages": "Llingües suxeríes",
"uls-no-results-suggestion-title": "Seique t'interese:",
"uls-search-help": "Pues buscar pol nome de la llingua, nome del alfabetu, códigu ISO de la llingua o ver un área xeográfica.",
- "uls-search-placeholder": "Guetar llingua"
+ "uls-search-placeholder": "Buscar una llingua"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/av.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/av.json
index 4e4152c1..80e49b0d 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/av.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/av.json
@@ -4,7 +4,6 @@
"Gazimagomedov"
]
},
- "uls-select-language": "МацӀ бищизе",
"uls-region-WW": "ГӀаламиял",
"uls-region-SP": "Хассал",
"uls-region-AM": "Америка",
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/awa.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/awa.json
index 7a137873..c3e9c122 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/awa.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/awa.json
@@ -4,7 +4,6 @@
"1AnuraagPandey"
]
},
- "uls-select-language": "भाषा चुना जाय",
"uls-region-WW": "वैश्विक",
"uls-region-SP": "विशेष",
"uls-region-AM": "अमेरिका",
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/az.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/az.json
index 2af3a75b..e54a146a 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/az.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/az.json
@@ -5,7 +5,6 @@
"Khan27"
]
},
- "uls-select-language": "Dili seçin:",
"uls-region-WW": "Ümumdünya",
"uls-region-SP": "Xüsusi",
"uls-region-AM": "Amerika",
@@ -14,9 +13,10 @@
"uls-region-AS": "Asiya",
"uls-region-ME": "Orta Şərq",
"uls-region-PA": "Okeaniya",
+ "uls-region-all": "Bütün dillər",
"uls-no-results-found": "Nəticələr tapılmadı",
- "uls-common-languages": "Ümumi dillər",
+ "uls-common-languages": "Təkliflənən dillər",
"uls-no-results-suggestion-title": "Sizin üçün maraqlı ola bilər:",
- "uls-search-help": "Dilin və ya yazının adları üzrə axtarmaq olar, dilin ISO-kodu üzrə və ya region üzrə gözdən keçirə bilərsiniz:",
- "uls-search-placeholder": "Dil axtar"
+ "uls-search-help": "Siz dilin adı, yazısı və ISO-kodu üzrə və ya region üzrə axtarış edə bilərsiz.",
+ "uls-search-placeholder": "Dili axtar"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/azb.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/azb.json
index 7d4b00e2..0df2acc0 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/azb.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/azb.json
@@ -2,21 +2,22 @@
"@metadata": {
"authors": [
"Arjanizary",
- "Mousa"
+ "Mousa",
+ "Alp Er Tunqa"
]
},
- "uls-select-language": "دیل سئچمه‌سی",
"uls-region-WW": "دونیا بویو",
- "uls-region-SP": "اؤزل",
+ "uls-region-SP": "مخصوص",
"uls-region-AM": "آمریکا",
"uls-region-AF": "آفریقا",
"uls-region-EU": "اوروپا",
"uls-region-AS": "آسیا",
"uls-region-ME": "اورتادوغو",
"uls-region-PA": "بؤیوک اوقیانوس",
- "uls-no-results-found": "هئچ سونوچ تاپیلمادی",
- "uls-common-languages": "اورتاق دیل‌لر",
+ "uls-region-all": "بۆتون دیللر",
+ "uls-no-results-found": "هئچ نتیجه تاپیلمادی",
+ "uls-common-languages": "یایغین دیل‌لر",
"uls-no-results-suggestion-title": "بونلارا ماراقلی اولابیلرسینیز:",
- "uls-search-help": "سیز دیل آدی، یازی آدی، دیلین ISO کودو، یوخسا بؤلگه ایله آختارا بیلرسینیز:",
- "uls-search-placeholder": "دیل آختاریشی"
+ "uls-search-help": "سیز دیل آدی، یازی آدی، دیلین ISO کودو، یوخسا بؤلگه ایله آختارا بیلرسینیز.",
+ "uls-search-placeholder": "بیر دیلی آختار"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/bbc-latn.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/bbc-latn.json
index 149a2922..fb279b79 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/bbc-latn.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/bbc-latn.json
@@ -4,7 +4,6 @@
"Stephensuleeman"
]
},
- "uls-select-language": "Pillit hata",
"uls-region-WW": "Sude luat portibi on",
"uls-region-AM": "Amerika",
"uls-region-AF": "Afrika",
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/bcc.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/bcc.json
index 00a78552..2b03f4fc 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/bcc.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/bcc.json
@@ -4,7 +4,6 @@
"Baloch Afghanistan"
]
},
- "uls-select-language": "زبانی انتخاب",
"uls-region-WW": "بی سراسری دونیا",
"uls-region-SP": "ویژه",
"uls-region-AM": "آمریکا",
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/bcl.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/bcl.json
index 4041acab..37c0a30d 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/bcl.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/bcl.json
@@ -4,7 +4,6 @@
"Geopoet"
]
},
- "uls-select-language": "Pumili nin lengguwahe",
"uls-region-WW": "Pankinaban",
"uls-region-SP": "Espesyal",
"uls-region-AM": "Amerika",
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/be-tarask.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/be-tarask.json
index 48d172a5..5ed13c41 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/be-tarask.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/be-tarask.json
@@ -1,10 +1,11 @@
{
"@metadata": {
"authors": [
- "Wizardist"
+ "Wizardist",
+ "Red Winged Duck",
+ "Amire80"
]
},
- "uls-select-language": "Выбар мовы",
"uls-region-WW": "Сусьветныя",
"uls-region-SP": "Дадатковыя",
"uls-region-AM": "Амэрыка",
@@ -13,9 +14,10 @@
"uls-region-AS": "Азія",
"uls-region-ME": "Блізкі Ўсход",
"uls-region-PA": "Акіянія",
+ "uls-region-all": "Усе мовы",
"uls-no-results-found": "Нічога ня знойдзена",
"uls-common-languages": "Прапанаваныя мовы",
"uls-no-results-suggestion-title": "Магчыма, вас зацікавяць:",
- "uls-search-help": "Вы можаце шукаць па назьве мовы ці пісьменнасьці, а таксама ISO-коду мовы, або выбраць рэгіён:",
- "uls-search-placeholder": "Шукайце мову тут"
+ "uls-search-help": "Вы можаце шукаць паводле назвы мовы ці пісьменнасьці, а таксама паводле ISO-коду мовы, або выбраць рэгіён.",
+ "uls-search-placeholder": "Пошук мовы"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/be.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/be.json
index 613ae259..062682b8 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/be.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/be.json
@@ -1,10 +1,10 @@
{
"@metadata": {
"authors": [
- "Unomano"
+ "Unomano",
+ "Amire80"
]
},
- "uls-select-language": "Выберыце мову",
"uls-region-WW": "Па ўсім свеце",
"uls-region-SP": "Спецыяльныя",
"uls-region-AM": "Амерыка",
@@ -13,9 +13,10 @@
"uls-region-AS": "Азія",
"uls-region-ME": "Блізкі Ўсход",
"uls-region-PA": "Ціхі акіян",
+ "uls-region-all": "Усе мовы",
"uls-no-results-found": "Нічога не знойдзена",
- "uls-common-languages": "Распаўсюджаныя мовы",
+ "uls-common-languages": "Прапанаваныя мовы",
"uls-no-results-suggestion-title": "Вы можаце быць зацікаўлены ў:",
- "uls-search-help": "Вы можаце шукаць па мове, назве сцэнара, ISO-коду мовы, або вы можаце праглядаць па рэгіенах:",
+ "uls-search-help": "Вы можаце шукаць па мове, назве сцэнара, ISO-коду мовы, або вы можаце праглядаць па рэгіенах.",
"uls-search-placeholder": "Пошук мовы"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/bg.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/bg.json
index 28a49c96..f6113e37 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/bg.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/bg.json
@@ -3,10 +3,11 @@
"authors": [
"Aquilax",
"DCLXVI",
- "Vodnokon4e"
+ "Vodnokon4e",
+ "StanProg",
+ "Amire80"
]
},
- "uls-select-language": "Избор на език",
"uls-region-WW": "Световни",
"uls-region-SP": "Специални",
"uls-region-AM": "Америка",
@@ -15,8 +16,9 @@
"uls-region-AS": "Азия",
"uls-region-ME": "Близкия изток",
"uls-region-PA": "Тихия океан",
+ "uls-region-all": "Всички езици",
"uls-no-results-found": "Не бяха открити резултати",
- "uls-common-languages": "Често срещани езици",
+ "uls-common-languages": "Предложени езици",
"uls-no-results-suggestion-title": "Може да се интересувате от:",
"uls-search-help": "Можете да търсите по име на език, име на скрипт, ISO кода на език или да разглеждате по региони.",
"uls-search-placeholder": "Търсене на език"
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/bgn.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/bgn.json
index 1bb784ab..5c3939dc 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/bgn.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/bgn.json
@@ -1,10 +1,10 @@
{
"@metadata": {
"authors": [
- "Baloch Afghanistan"
+ "Baloch Afghanistan",
+ "Ibrahim khashrowdi"
]
},
- "uls-select-language": "زبانی انتخاب",
"uls-region-WW": "بی موچین دونیایی تا",
"uls-region-SP": "خاص",
"uls-region-AM": "آمریکا",
@@ -13,9 +13,10 @@
"uls-region-AS": "آسیا",
"uls-region-ME": "خاورمیانه",
"uls-region-PA": "اقیانوس آرام",
+ "uls-region-all": "موچین زبانان",
"uls-no-results-found": "هیچ نتیجه ودئ نبوت",
- "uls-common-languages": "رواجین زبانان",
+ "uls-common-languages": "پیشنهاد بوته‌این زبانان",
"uls-no-results-suggestion-title": "ممکن اینت علاقه‌مند بئیت:",
- "uls-search-help": "شما ئه توانیت بی زبانی نامی اساسا،اسکریپت نامی، استاندارتین زبانی کودی یا بی اساس منطقه ئه بگردیت:",
- "uls-search-placeholder": "گَشتین په زبان خاتیرا"
+ "uls-search-help": "شما ئه توانیت به زبانی نامئ اساسا، نامئ اسکریپت، زبانئ استاندارتین کود یا به منطقه‌ای اساسا بگردیت.",
+ "uls-search-placeholder": "گَشتین په یک زبانئ خاتیرا"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/bn.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/bn.json
index 1ab5e854..569a2561 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/bn.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/bn.json
@@ -4,10 +4,11 @@
"Bellayet",
"Nasir8891",
"Sankarshan",
- "Sayak Sarkar"
+ "Sayak Sarkar",
+ "Aftabuzzaman",
+ "আফতাবুজ্জামান"
]
},
- "uls-select-language": "ভাষা নির্বাচন",
"uls-region-WW": "বিশ্বব্যাপী",
"uls-region-SP": "বিশেষ",
"uls-region-AM": "আমেরিকা",
@@ -16,9 +17,10 @@
"uls-region-AS": "এশিয়া",
"uls-region-ME": "মধ্যপ্রাচ্য",
"uls-region-PA": "প্রশান্ত মহাসাগরীয়",
+ "uls-region-all": "সকল ভাষা",
"uls-no-results-found": "কোনো ফলাফল পাওয়া যায়নি",
- "uls-common-languages": "সাধারণ ভাষাসমূহ",
+ "uls-common-languages": "প্রস্তাবিত ভাষাসমূহ",
"uls-no-results-suggestion-title": "আপনি হয়তো আগ্রহী হতে পারেন:",
- "uls-search-help": "আপনি ভাষার নাম, স্ক্রিপ্টের নাম, ভাষার আইএসও কোড অথবা এলাকার ভিত্তিক অনুসন্ধান করতে পারবেন:",
- "uls-search-placeholder": "ভাষা অনুসন্ধান"
+ "uls-search-help": "আপনি ভাষার নাম, স্ক্রিপ্টের নাম, ভাষার আইএসও কোড অথবা এলাকার ভিত্তিক অনুসন্ধান করতে পারবেন।",
+ "uls-search-placeholder": "একটি ভাষার জন্য অনুসন্ধান করুন"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/br.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/br.json
index 0198c2c6..fb89a663 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/br.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/br.json
@@ -5,7 +5,6 @@
"Gwenn-Ael"
]
},
- "uls-select-language": "Dibab ar yezh",
"uls-region-WW": "Bed a-bezh",
"uls-region-SP": "Dibar",
"uls-region-AM": "Amerika",
@@ -14,9 +13,10 @@
"uls-region-AS": "Azia",
"uls-region-ME": "Reter-Kreiz",
"uls-region-PA": "Habask",
+ "uls-region-all": "An holl yezhoù",
"uls-no-results-found": "N'eus bet kavet disoc'h ebet",
- "uls-common-languages": "Yezhoù boutin",
+ "uls-common-languages": "Yezhoù aliet",
"uls-no-results-suggestion-title": "Gallout a reot bezañ dedennet gant :",
- "uls-search-help": "Gallout a reot klask dre anv yezh, anv skript, kod yezh ISO pe gallout a reot klask dre rannvro :",
- "uls-search-placeholder": "Klask yezh"
+ "uls-search-help": "Gallout a reot klask dre anv yezh, anv skript, kod yezh ISO pe gallout a reot klask dre rannvro.",
+ "uls-search-placeholder": "Klask ur yezh"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/bs.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/bs.json
index dcc90b46..0d7386c0 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/bs.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/bs.json
@@ -6,7 +6,6 @@
"Srdjan m"
]
},
- "uls-select-language": "Izaberite jezik",
"uls-region-WW": "Svjetski",
"uls-region-SP": "Posebno",
"uls-region-AM": "Amerika",
@@ -15,9 +14,10 @@
"uls-region-AS": "Azija",
"uls-region-ME": "Bliski istok",
"uls-region-PA": "Pacifik",
+ "uls-region-all": "Svi jezici",
"uls-no-results-found": "Nema pronađenih rezultata",
- "uls-common-languages": "Prijedlozi za jezik",
+ "uls-common-languages": "Predloženi jezici",
"uls-no-results-suggestion-title": "Možda vas interesuje:",
"uls-search-help": "Možete da tražite po imenu jezika ili pisma, po ISO kodu jezika ili po regionu.",
- "uls-search-placeholder": "Pretraga jezika"
+ "uls-search-placeholder": "Pronađi jezik"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ca.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ca.json
index 2b46da8b..0f9f6bf6 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ca.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ca.json
@@ -3,10 +3,10 @@
"authors": [
"Amire80",
"Pginer",
- "Toniher"
+ "Toniher",
+ "Ssola"
]
},
- "uls-select-language": "Tria de llengua",
"uls-region-WW": "Mundial",
"uls-region-SP": "Especials",
"uls-region-AM": "Amèrica",
@@ -15,9 +15,10 @@
"uls-region-AS": "Àsia",
"uls-region-ME": "Orient mitjà",
"uls-region-PA": "Pacífic",
+ "uls-region-all": "Totes les llengües",
"uls-no-results-found": "Cap resultat",
- "uls-common-languages": "Llengües comunes",
+ "uls-common-languages": "Llengües suggerides",
"uls-no-results-suggestion-title": "Pot interessar-vos:",
"uls-search-help": "Podeu cercar per nom de llengua, nom d'alfabet, codi ISO de la llengua o podeu navegar per regió:",
- "uls-search-placeholder": "Cerca de llengua"
+ "uls-search-placeholder": "Cerca una llengua"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ce.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ce.json
index bc89502a..c75559cc 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ce.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ce.json
@@ -4,11 +4,18 @@
"Умар"
]
},
- "uls-select-language": "Мотт харжар",
"uls-region-WW": "Дерригдуьненан",
+ "uls-region-SP": "Леррина",
+ "uls-region-AM": "Америка",
+ "uls-region-AF": "Африка",
+ "uls-region-EU": "Европа",
"uls-region-AS": "Ази",
"uls-region-ME": "Гергара Малхбале",
"uls-region-PA": "Океани",
+ "uls-region-all": "Берриге меттанаш",
+ "uls-no-results-found": "Цакарийна",
"uls-common-languages": "Ша дӀанисбелла меттанаш",
+ "uls-no-results-suggestion-title": "Хьуна хӀара меттанаш хьашта хила мега:",
+ "uls-search-help": "Хьа таро ю меттан я йозанан цӀарца лаха, меттан ISO-кодаца я регионаца хьажа.",
"uls-search-placeholder": "Лаха мотт"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ckb.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ckb.json
index 91148f3b..fa8e23bb 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ckb.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ckb.json
@@ -2,10 +2,11 @@
"@metadata": {
"authors": [
"Calak",
- "Asoxor"
+ "Asoxor",
+ "Lost Whispers",
+ "Épine"
]
},
- "uls-select-language": "زمان ھەڵبژێرە",
"uls-region-WW": "لە گشت جیھاندا",
"uls-region-SP": "تایبەت",
"uls-region-AM": "ئەمریکا",
@@ -14,9 +15,10 @@
"uls-region-AS": "ئاسیا",
"uls-region-ME": "ڕۆژھەڵاتی ناوین",
"uls-region-PA": "ئۆقیانووسی ئارام",
+ "uls-region-all": "ھەموو زمانەکان",
"uls-no-results-found": "ھیچ ئاکامێک نەدۆزرایەوە",
- "uls-common-languages": "زمانە ھاوبەشەکان",
+ "uls-common-languages": "زمانە پێشنیارکراوەکان",
"uls-no-results-suggestion-title": "ڕەنگە ئەمانەت پێ خۆش بێت:",
"uls-search-help": "دەتوانیت بە پێی ناوی زمان، جۆری ئەلفوبێ، کۆدی ISOی زمان یان بە پێی ناوچە بگەڕێی.",
- "uls-search-placeholder": "گەڕانی زمان"
+ "uls-search-placeholder": "گەڕان بەدوای زمانێکدا"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/cs.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/cs.json
index 81134472..e97473e9 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/cs.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/cs.json
@@ -1,10 +1,11 @@
{
"@metadata": {
"authors": [
- "Mormegil"
+ "Mormegil",
+ "Dvorapa",
+ "Amire80"
]
},
- "uls-select-language": "Vyberte jazyk",
"uls-region-WW": "Celosvětové",
"uls-region-SP": "Speciální",
"uls-region-AM": "Amerika",
@@ -13,9 +14,10 @@
"uls-region-AS": "Asie",
"uls-region-ME": "Blízký východ",
"uls-region-PA": "Tichomoří",
+ "uls-region-all": "Všechny jazyky",
"uls-no-results-found": "Nenalezeny žádné výsledky",
- "uls-common-languages": "Běžné jazyky",
+ "uls-common-languages": "Doporučené jazyky",
"uls-no-results-suggestion-title": "Mohlo by vás zajímat:",
- "uls-search-help": "Můžete vyhledávat podle názvu jazyka, názvu písma, ISO kódu jazyka nebo můžete procházet po regionech:",
- "uls-search-placeholder": "Hledání jazyka"
+ "uls-search-help": "Můžete vyhledávat podle názvu jazyka, názvu písma, ISO kódu jazyka nebo můžete procházet po regionech.",
+ "uls-search-placeholder": "Hledat jazyk"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/cv.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/cv.json
index 2e436494..65f9c615 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/cv.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/cv.json
@@ -5,7 +5,6 @@
"Chavash"
]
},
- "uls-select-language": "Чӗлхе суйлани",
"uls-region-WW": "Пӗтӗм тӗнчери",
"uls-region-SP": "Ятарлисем",
"uls-region-AM": "Америка",
@@ -14,8 +13,9 @@
"uls-region-AS": "Ази",
"uls-region-ME": "Малти хӗвел тухӑҫ",
"uls-region-PA": "Океани",
+ "uls-region-all": "Мӗн пур чӗлхе",
"uls-no-results-found": "Нимӗн те тупӑнмарӗ",
- "uls-common-languages": "Чӗлхене сис",
+ "uls-common-languages": "Сӗннӗ чӗлхесем",
"uls-no-results-suggestion-title": "Тен çак чĕлхесем пăхма пултаратăр:",
"uls-search-help": "Чĕлхе ячĕпе, çырулăхĕпе, ISO-кочĕпе е регионĕпе шырама пулать:",
"uls-search-placeholder": "Чĕлхе шыра"
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/cy.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/cy.json
index b05b333a..664c7f2f 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/cy.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/cy.json
@@ -1,11 +1,12 @@
{
"@metadata": {
"authors": [
- "Lloffiwr"
+ "Lloffiwr",
+ "Robin Owain",
+ "Dafyddt"
]
},
- "uls-select-language": "Dewis iaith",
- "uls-region-WW": "Aml i fan",
+ "uls-region-WW": "Byd-eang",
"uls-region-SP": "Neilltuol",
"uls-region-AM": "America",
"uls-region-AF": "Affrica",
@@ -14,8 +15,8 @@
"uls-region-ME": "Y Dwyrain Canol",
"uls-region-PA": "Y Pasiffig",
"uls-no-results-found": "Ni chafwyd unrhyw ganlyniadau",
- "uls-common-languages": "Awgrymiadau o ieithoedd",
+ "uls-common-languages": "Ieithoedd awgrymedig",
"uls-no-results-suggestion-title": "Hwyrach bod y rhai sy'n dilyn o ddiddordeb i chi:",
- "uls-search-help": "Gallwch chwilio am enw iaith, enw sgript, côd ISO rhyw iaith neu gallwch bori fesul rhanbarth:",
+ "uls-search-help": "Gallwch chwilio gan ddefnyddio enw iaith, enw sgript, côd ISO'r iaith neu gallwch bori fesul rhanbarth.",
"uls-search-placeholder": "Chwilio am iaith"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/da.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/da.json
index 688c2ccd..916a7e61 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/da.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/da.json
@@ -2,10 +2,11 @@
"@metadata": {
"authors": [
"Christian List",
- "Peter Alberti"
+ "Peter Alberti",
+ "Jubber",
+ "Amire80"
]
},
- "uls-select-language": "Vælg sprog",
"uls-region-WW": "Verdensomspændende",
"uls-region-SP": "Specielle",
"uls-region-AM": "Amerika",
@@ -14,9 +15,10 @@
"uls-region-AS": "Asien",
"uls-region-ME": "Mellemøsten",
"uls-region-PA": "Stillehavet",
+ "uls-region-all": "Alle sprog",
"uls-no-results-found": "Ingen resultater fundet",
- "uls-common-languages": "Almindelige sprog",
+ "uls-common-languages": "Foreslåede sprog",
"uls-no-results-suggestion-title": "Du er måske interesseret i:",
- "uls-search-help": "Du kan søge på sprogets navn, skriftens navn eller sprogets ISO-kode, eller du kan bladre hen til sproget efter regionen:",
- "uls-search-placeholder": "Sprogsøgning"
+ "uls-search-help": "Du kan søge på sprogets navn, skriftens navn eller sprogets ISO-kode, eller du kan bladre hen til sproget efter regionen.",
+ "uls-search-placeholder": "Søg efter et sprog"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/de.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/de.json
index 594ad859..de1c949b 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/de.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/de.json
@@ -3,21 +3,22 @@
"authors": [
"Kghbln",
"Metalhead64",
- "TMg"
+ "TMg",
+ "Man77"
]
},
- "uls-select-language": "Wähle eine Sprache",
"uls-region-WW": "Weltweit",
"uls-region-SP": "Spezial",
"uls-region-AM": "Amerika",
"uls-region-AF": "Afrika",
"uls-region-EU": "Europa",
"uls-region-AS": "Asien",
- "uls-region-ME": "Mittlerer Osten",
+ "uls-region-ME": "Naher Osten",
"uls-region-PA": "Pazifik",
+ "uls-region-all": "Alle Sprachen",
"uls-no-results-found": "Es wurden keine Ergebnisse gefunden.",
"uls-common-languages": "Vorgeschlagene Sprachen",
"uls-no-results-suggestion-title": "Dies könnte dich interessieren:",
"uls-search-help": "Du kannst nach dem Namen der Sprache suchen, dem Namen der Schrift, dem ISO-Code der Sprache oder aber die Suche über eine Region durchführen.",
- "uls-search-placeholder": "Sprachensuche"
+ "uls-search-placeholder": "Nach einer Sprache suchen"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/diq.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/diq.json
index 0409a2f2..51aa7ddb 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/diq.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/diq.json
@@ -4,11 +4,13 @@
"Erdemaslancan",
"Gorizon",
"Marmase",
- "Mirzali"
+ "Mirzali",
+ "Kumkumuk",
+ "Asmen",
+ "Gırd"
]
},
- "uls-select-language": "Zıwan weçine",
- "uls-region-WW": "Heradınya",
+ "uls-region-WW": "Dınyayi",
"uls-region-SP": "Xısusi",
"uls-region-AM": "Amerika",
"uls-region-AF": "Afriqa",
@@ -16,9 +18,10 @@
"uls-region-AS": "Asya",
"uls-region-ME": "Rocvetışê Miyani",
"uls-region-PA": "Pasifik",
+ "uls-region-all": "Zıwani pêro",
"uls-no-results-found": "Netice nê vineya",
- "uls-common-languages": "Wertax zıwani",
+ "uls-common-languages": "Zıwanê ke estê.",
"uls-no-results-suggestion-title": "Belki şıma cıya eleqederi:",
"uls-search-help": "Şıma şenê name dê zıwaniya, skript kodiya, ISO qodiya yana mıntıqa heta cıgeyrayış bıkerê.",
- "uls-search-placeholder": "Zıwan cıgeyrayış"
+ "uls-search-placeholder": "Yew zıwani cı geyre"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/dsb.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/dsb.json
index 278263a5..f23e9e01 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/dsb.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/dsb.json
@@ -4,7 +4,6 @@
"Michawiki"
]
},
- "uls-select-language": "Rěc wubraś",
"uls-region-WW": "na cełem swěśe",
"uls-region-SP": "Specialne",
"uls-region-AM": "Amerika",
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/dty.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/dty.json
index e47dbfc1..b6b1cdac 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/dty.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/dty.json
@@ -1,10 +1,10 @@
{
"@metadata": {
"authors": [
- "रमेश सिंह बोहरा"
+ "रमेश सिंह बोहरा",
+ "Nirajan pant"
]
},
- "uls-select-language": "भाषा छाट",
"uls-region-WW": "विश्वभर",
"uls-region-SP": "खास",
"uls-region-AM": "अमेरिका",
@@ -13,8 +13,10 @@
"uls-region-AS": "एसिया",
"uls-region-ME": "मध्य पूर्व",
"uls-region-PA": "प्रशान्त",
+ "uls-region-all": "जम्माइ भाषान",
"uls-no-results-found": "कोइ पन नतिजाहरू नाइभेटिया",
- "uls-common-languages": "साझो भाषा",
+ "uls-common-languages": "सुझावित भाषाअन",
"uls-no-results-suggestion-title": "तमलाई यैमी मन लाग्गसकन्छ:",
- "uls-search-placeholder": "भाषा खोज अर"
+ "uls-search-help": "तम भषा: नाउँले, लिपिया नाउँले, भषा: ISO कोड खोजिसकन्छ: या क्षेत्रा आधारमी ब्राउज अरिसकन्छ:।",
+ "uls-search-placeholder": "भाषा खिलाइ खोजी अरऽ"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/el.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/el.json
index e3fe9775..9a964f53 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/el.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/el.json
@@ -2,10 +2,10 @@
"@metadata": {
"authors": [
"Evropi",
- "Geraki"
+ "Geraki",
+ "Amire80"
]
},
- "uls-select-language": "Επιλέξτε γλώσσα",
"uls-region-WW": "Παγκόσμιες",
"uls-region-SP": "Ειδικές",
"uls-region-AM": "Αμερική",
@@ -14,9 +14,10 @@
"uls-region-AS": "Ασία",
"uls-region-ME": "Μέση Ανατολή",
"uls-region-PA": "Ειρηνικός",
+ "uls-region-all": "Όλες οι γλώσσες",
"uls-no-results-found": "Δε βρέθηκαν αποτελέσματα",
- "uls-common-languages": "Κοινές γλώσσες",
+ "uls-common-languages": "Προτεινόμενες γλώσσες",
"uls-no-results-suggestion-title": "Μπορεί να σας ενδιαφέρουν:",
"uls-search-help": "Μπορείτε να ψάξετε κατά το όνομα της γλώσσας, τρόπο γραφής, κωδικό ISO της γλώσσας, ή να περιηγηθείτε ανά περιοχή.",
- "uls-search-placeholder": "Αναζήτηση γλώσσας"
+ "uls-search-placeholder": "Αναζήτηση για γλώσσα"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/en-gb.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/en-gb.json
index 55eb54b3..9c224d23 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/en-gb.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/en-gb.json
@@ -1,10 +1,10 @@
{
"@metadata": {
"authors": [
- "Chase me ladies, I'm the Cavalry"
+ "Chase me ladies, I'm the Cavalry",
+ "Andibing"
]
},
- "uls-select-language": "Select language",
"uls-region-WW": "Worldwide",
"uls-region-SP": "Special",
"uls-region-AM": "America",
@@ -13,9 +13,10 @@
"uls-region-AS": "Asia",
"uls-region-ME": "Middle East",
"uls-region-PA": "Pacific",
+ "uls-region-all": "All languages",
"uls-no-results-found": "No results found",
- "uls-common-languages": "Common languages",
+ "uls-common-languages": "Suggested languages",
"uls-no-results-suggestion-title": "You may be interested in:",
"uls-search-help": "You can search by language name, script name, ISO code of language or you can browse by region.",
- "uls-search-placeholder": "Language search"
+ "uls-search-placeholder": "Search for a language"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/en.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/en.json
index 53a50ad6..d67fe538 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/en.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/en.json
@@ -5,7 +5,6 @@
"locale": "en",
"message-documentation": "qqq"
},
- "uls-select-language": "Select language",
"uls-region-WW": "Worldwide",
"uls-region-SP": "Special",
"uls-region-AM": "America",
@@ -14,9 +13,10 @@
"uls-region-AS": "Asia",
"uls-region-ME": "Middle East",
"uls-region-PA": "Pacific",
+ "uls-region-all": "All languages",
"uls-no-results-found": "No results found",
- "uls-common-languages": "Common languages",
+ "uls-common-languages": "Suggested languages",
"uls-no-results-suggestion-title": "You may be interested in:",
"uls-search-help": "You can search by language name, script name, ISO code of language or you can browse by region.",
- "uls-search-placeholder": "Language search"
+ "uls-search-placeholder": "Search for a language"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/eo.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/eo.json
index d872eb01..009afd59 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/eo.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/eo.json
@@ -2,10 +2,11 @@
"@metadata": {
"authors": [
"Objectivesea",
- "KuboF"
+ "KuboF",
+ "Orikrin1998",
+ "Amire80"
]
},
- "uls-select-language": "Elekti lingvon",
"uls-region-WW": "Tutmonda",
"uls-region-SP": "Speciala",
"uls-region-AM": "Ameriko",
@@ -14,9 +15,10 @@
"uls-region-AS": "Azio",
"uls-region-ME": "Mezoriento",
"uls-region-PA": "Pacifiko",
+ "uls-region-all": "Ĉiuj lingvoj",
"uls-no-results-found": "Neniu rezulto estis trovita",
- "uls-common-languages": "Komunaj lingvoj",
+ "uls-common-languages": "Sugestataj lingvoj",
"uls-no-results-suggestion-title": "Vi eble interesiĝas pri:",
"uls-search-help": "Vi povas serĉi laŭ la lingvonomo, la skriptnomo aŭ la lingva ISO-kodo, aŭ vi povas foliumi laŭ regiono.",
- "uls-search-placeholder": "Lingvoserĉo"
+ "uls-search-placeholder": "Serĉi lingvon"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/es.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/es.json
index e8b54dbf..0657b61e 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/es.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/es.json
@@ -10,7 +10,6 @@
"Macofe"
]
},
- "uls-select-language": "Seleccione el idioma",
"uls-region-WW": "Mundial",
"uls-region-SP": "Especial",
"uls-region-AM": "América",
@@ -19,8 +18,9 @@
"uls-region-AS": "Asia",
"uls-region-ME": "Medio Oriente",
"uls-region-PA": "Pacífico",
+ "uls-region-all": "Todos los idiomas",
"uls-no-results-found": "No se encontraron resultados",
- "uls-common-languages": "Idiomas comunes",
+ "uls-common-languages": "Idiomas sugeridos",
"uls-no-results-suggestion-title": "Puedes estar interesado en:",
"uls-search-help": "Puedes buscar por el nombre del idioma, su tipo de escritura, el código ISO del idioma o buscar por región.",
"uls-search-placeholder": "Buscar un idioma"
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/et.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/et.json
index 06d88c1f..738a9855 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/et.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/et.json
@@ -4,7 +4,6 @@
"Pikne"
]
},
- "uls-select-language": "Keele valimine",
"uls-region-WW": "Kogu maailm",
"uls-region-SP": "Erijuhud",
"uls-region-AM": "Ameerika",
@@ -13,8 +12,9 @@
"uls-region-AS": "Aasia",
"uls-region-ME": "Lähis-Ida",
"uls-region-PA": "Vaikne ookean",
+ "uls-region-all": "Kõik keeled",
"uls-no-results-found": "Tulemusi ei leitud.",
- "uls-common-languages": "Eelistatavad keeled",
+ "uls-common-languages": "Soovitatavad keeled",
"uls-no-results-suggestion-title": "Võid eelistada neid:",
"uls-search-help": "Saad otsida keeli keelenimetuse, kirjanimetuse või keele ISO-koodi järgi või sirvida keeli piirkonna järgi.",
"uls-search-placeholder": "Keeleotsing"
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/eu.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/eu.json
index 0274f2e0..02ee58d9 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/eu.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/eu.json
@@ -1,10 +1,11 @@
{
"@metadata": {
"authors": [
- "Theklan"
+ "Theklan",
+ "Sator",
+ "An13sa"
]
},
- "uls-select-language": "Hizkuntza aukeratu",
"uls-region-WW": "Mundu osoa",
"uls-region-SP": "Berezia",
"uls-region-AM": "Amerika",
@@ -13,9 +14,10 @@
"uls-region-AS": "Asia",
"uls-region-ME": "Ekialde Hurbila",
"uls-region-PA": "Pazifikoa",
+ "uls-region-all": "Hizkuntza guztiak",
"uls-no-results-found": "Ez da emaitzarik aurkitu",
- "uls-common-languages": "Hizkuntza komuna",
+ "uls-common-languages": "Proposatutako hizkuntzak",
"uls-no-results-suggestion-title": "Agian interesa duzu:",
- "uls-search-help": "Bilaketa egin ahal duzu hizkuntzaren izena, script izena, hizkuntzaren ISO kodea edo eskualdeka bilaketa egin ahal duzu:",
- "uls-search-placeholder": "Hizkuntza bilaketa"
+ "uls-search-help": "Bilaketa egin ahal duzu hizkuntzaren izena, script izena, hizkuntzaren ISO kodea edo eskualdeka bilaketa egin ahal duzu.",
+ "uls-search-placeholder": "Hizkuntza bat bilatu"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/fa.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/fa.json
index ddb3c50f..0b189d2f 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/fa.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/fa.json
@@ -2,10 +2,11 @@
"@metadata": {
"authors": [
"Reza1615",
- "Alirezaaa"
+ "Alirezaaa",
+ "Namo",
+ "Amire80"
]
},
- "uls-select-language": "انتخاب زبان",
"uls-region-WW": "در سراسر جهان",
"uls-region-SP": "ویژه",
"uls-region-AM": "آمریکا",
@@ -14,9 +15,10 @@
"uls-region-AS": "آسیا",
"uls-region-ME": "خاورمیانه",
"uls-region-PA": "اقیانوس آرام",
+ "uls-region-all": "همۀ زبان‌ها",
"uls-no-results-found": "نتیجه‌ای یافت نشد",
- "uls-common-languages": "زبان‌های رایج",
+ "uls-common-languages": "زبان‌های پیشنهادشده",
"uls-no-results-suggestion-title": "ممکن است علاقه‌مند باشید:",
- "uls-search-help": "شما می‌توانید بر پایه نام زبان، نام اسکریپت، کد استاندارد زبان یا بر پایه منطقه جستجو کنید:",
+ "uls-search-help": "شما می‌توانید بر پایه نام زبان، نام اسکریپت، کد استاندارد زبان یا بر پایه منطقه جستجو کنید.",
"uls-search-placeholder": "جستجوی زبان"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/fi.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/fi.json
index 93b1ee8e..152a2523 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/fi.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/fi.json
@@ -3,21 +3,22 @@
"authors": [
"Nedergard",
"Nike",
- "VezonThunder"
+ "VezonThunder",
+ "Alluk."
]
},
- "uls-select-language": "Valitse kieli",
- "uls-region-WW": "Ympäri maailmaa",
+ "uls-region-WW": "Maailmankielet",
"uls-region-SP": "Erikoiskielet",
- "uls-region-AM": "Amerikka",
+ "uls-region-AM": "Pohjois- ja Etelä-Amerikka",
"uls-region-AF": "Afrikka",
"uls-region-EU": "Eurooppa",
"uls-region-AS": "Aasia",
- "uls-region-ME": "Lähi-Itä",
- "uls-region-PA": "Tyynimeri",
- "uls-no-results-found": "Ei tuloksia",
- "uls-common-languages": "Yleiset kielet",
- "uls-no-results-suggestion-title": "Etsitkö jotakin näistä:",
- "uls-search-help": "Voit hakea kielen nimellä, kirjoitusjärjestelmän nimellä tai kielen ISO-koodilla tai selata alueittain:",
- "uls-search-placeholder": "Kielihaku"
+ "uls-region-ME": "Lähi-itä",
+ "uls-region-PA": "Tyynenmeren alue",
+ "uls-region-all": "Kaikki kielet",
+ "uls-no-results-found": "Ei hakutuloksia",
+ "uls-common-languages": "Ehdotetut kielet",
+ "uls-no-results-suggestion-title": "Lähimmät hakutulokset:",
+ "uls-search-help": "Hae kielen tai kirjoitusjärjestelmän nimellä, kielen ISO-koodilla tai selaa kieliä alueluettelosta:",
+ "uls-search-placeholder": "Etsi kieltä"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/fo.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/fo.json
index 92fdb483..ee797ef9 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/fo.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/fo.json
@@ -4,7 +4,6 @@
"EileenSanda"
]
},
- "uls-select-language": "Vel mál",
"uls-region-WW": "Alheims",
"uls-region-SP": "Serstakt",
"uls-region-AM": "Amerika",
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/fr.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/fr.json
index 2586e42d..bda3a275 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/fr.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/fr.json
@@ -2,21 +2,23 @@
"@metadata": {
"authors": [
"Gomoko",
- "Ultimate"
+ "Ultimate",
+ "Wladek92",
+ "Pols12"
]
},
- "uls-select-language": "Sélectionner la langue",
"uls-region-WW": "Dans le monde entier",
- "uls-region-SP": "Spécial",
+ "uls-region-SP": "Spéciales",
"uls-region-AM": "Amérique",
"uls-region-AF": "Afrique",
"uls-region-EU": "Europe",
"uls-region-AS": "Asie",
"uls-region-ME": "Moyen-Orient",
"uls-region-PA": "Pacifique",
+ "uls-region-all": "Toutes les langues",
"uls-no-results-found": "Aucun résultat trouvé",
- "uls-common-languages": "Langues communes",
+ "uls-common-languages": "Langues suggérées",
"uls-no-results-suggestion-title": "Vous pouvez être intéressé par:",
- "uls-search-help": "Vous pouvez rechercher par nom de langue, par nom du script, par code ISO de la langue, ou vous pouvez naviguer par région:",
- "uls-search-placeholder": "Recherche de langue"
+ "uls-search-help": "Vous pouvez rechercher par nom de langue, par nom de l’écriture, par code ISO de la langue, ou vous pouvez naviguer par région.",
+ "uls-search-placeholder": "Rechercher une langue"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/fur.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/fur.json
index b46d4532..11c11d9f 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/fur.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/fur.json
@@ -4,7 +4,6 @@
"Klenje"
]
},
- "uls-select-language": "Sielç la lenghe",
"uls-region-WW": "Dut il mont",
"uls-region-SP": "Speciâl",
"uls-region-AM": "Americhe",
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/fy.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/fy.json
index 62aa85f3..e74f033d 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/fy.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/fy.json
@@ -1,10 +1,10 @@
{
"@metadata": {
"authors": [
- "Robin0van0der0vliet"
+ "Robin0van0der0vliet",
+ "Robin van der Vliet"
]
},
- "uls-select-language": "Kies taal",
"uls-region-WW": "Wrâldwiid",
"uls-region-SP": "Spesjaal",
"uls-region-AM": "Amearika",
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ga.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ga.json
index 39879d9a..bc218872 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ga.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ga.json
@@ -4,7 +4,6 @@
"Kscanne"
]
},
- "uls-select-language": "Roghnaigh Teanga",
"uls-region-WW": "Ar fud an Domhain",
"uls-region-SP": "Speisialta",
"uls-region-AM": "Meiriceá",
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/gd.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/gd.json
index 42960ff7..146d4e3c 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/gd.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/gd.json
@@ -1,10 +1,10 @@
{
"@metadata": {
"authors": [
- "GunChleoc"
+ "GunChleoc",
+ "Akerbeltz"
]
},
- "uls-select-language": "Tagh cànan",
"uls-region-WW": "Mòr-chànan",
"uls-region-SP": "Sònraichte",
"uls-region-AM": "Aimeireaga",
@@ -13,9 +13,10 @@
"uls-region-AS": "Àisia",
"uls-region-ME": "An Ear-mheadhan",
"uls-region-PA": "An Cuan Sèimh",
+ "uls-region-all": "A h-uile cànan",
"uls-no-results-found": "Cha deach toradh a lorg",
- "uls-common-languages": "Cànanan cumanta",
- "uls-no-results-suggestion-title": "'S dòcha gum bu mhiann leat:",
+ "uls-common-languages": "Cànain a mholamaid",
+ "uls-no-results-suggestion-title": "’S dòcha gum bi ùidh agad sna leanas:",
"uls-search-help": "'S urrainn dhut lorg le ainm a' chànain, ainm an sgriobt, còd ISO a' chànain no brabhsadh a-rèir roinn-dùthcha.",
"uls-search-placeholder": "Lorg cànan"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/gl.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/gl.json
index 6fc62430..b0e8a146 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/gl.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/gl.json
@@ -1,10 +1,11 @@
{
"@metadata": {
"authors": [
- "Toliño"
+ "Toliño",
+ "Elisardojm",
+ "Banjo"
]
},
- "uls-select-language": "Seleccione unha lingua",
"uls-region-WW": "Mundial",
"uls-region-SP": "Especial",
"uls-region-AM": "América",
@@ -13,9 +14,10 @@
"uls-region-AS": "Asia",
"uls-region-ME": "Oriente Medio",
"uls-region-PA": "Pacífico",
+ "uls-region-all": "Todas as linguas",
"uls-no-results-found": "Non se atopou ningún resultado",
- "uls-common-languages": "Linguas comúns",
+ "uls-common-languages": "Linguas suxeridas",
"uls-no-results-suggestion-title": "Poida que estea buscando:",
- "uls-search-help": "Pode procurar polo nome da lingua, o tipo de escritura ou o código ISO. Tamén pode explorar as rexións:",
+ "uls-search-help": "Pode procurar polo nome da lingua, o tipo de escritura ou o código ISO. Tamén pode explorar as rexións.",
"uls-search-placeholder": "Procurar unha lingua"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/gn.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/gn.json
index 53b55599..fec33dba 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/gn.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/gn.json
@@ -5,18 +5,18 @@
"Fitoschido"
]
},
- "uls-select-language": "Eiporavo ñe’ẽ",
"uls-region-WW": "Yvóra",
- "uls-region-SP": "Mba’echĩchĩ",
+ "uls-region-SP": "Mba'echĩchĩ",
"uls-region-AM": "Amérika",
- "uls-region-AF": "Afrika",
- "uls-region-EU": "Europa",
- "uls-region-AS": "Asia",
+ "uls-region-AF": "Áfrika",
+ "uls-region-EU": "Európa",
+ "uls-region-AS": "Ásia",
"uls-region-ME": "Mbyte Kuarahyresẽ",
"uls-region-PA": "Paraguasu Py'aguapy",
+ "uls-region-all": "Opa ñe'ẽ",
"uls-no-results-found": "Ndojuhu mba'e",
- "uls-common-languages": "Ñe’ẽ jeipuruveva",
+ "uls-common-languages": "Ñe'ẽ ojeipuruvéva",
"uls-no-results-suggestion-title": "Nde ikatu reipotaː",
- "uls-search-help": "Nde ikatu reheka ñe’ẽ héra, tai ysaja, ISO ñe’ẽ héra térã ñe’ẽ renda.",
- "uls-search-placeholder": "Ñe’ẽ heka"
+ "uls-search-help": "Nde ikatu reheka ñe'ẽ héra rupi, tai ysaja rupi, ISO ñe'ẽ héra térã ñe'ẽ renda rupi.",
+ "uls-search-placeholder": "Ñe'ẽ jeheka"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/gom-latn.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/gom-latn.json
index a6fa7048..7bfec84e 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/gom-latn.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/gom-latn.json
@@ -4,7 +4,6 @@
"The Discoverer"
]
},
- "uls-select-language": "Bhas vinchun kad",
"uls-region-WW": "Akhea sonvsarant",
"uls-region-SP": "Khashelem",
"uls-region-AM": "Amerika",
@@ -13,9 +12,10 @@
"uls-region-AS": "Asia",
"uls-region-ME": "Modlem Udent",
"uls-region-PA": "Pacifik",
+ "uls-region-all": "Soglleo bhaso",
"uls-no-results-found": "Porinam mellunk nam",
- "uls-common-languages": "Khup uzar kelele bhaso",
+ "uls-common-languages": "Suchoiloeo bhaso",
"uls-no-results-suggestion-title": "Tuka avdot:",
"uls-search-help": "Tujean bhase, lipie, bhaseche ISO code vo zagea vorvim sodunk zata.",
- "uls-search-placeholder": "Bhas sod"
+ "uls-search-placeholder": "Eke bhase khatir sod"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/got.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/got.json
index 694eff79..74596296 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/got.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/got.json
@@ -4,7 +4,6 @@
"Gothicspeaker"
]
},
- "uls-select-language": "𐍃𐌺𐌰𐌻𐍄 𐍅𐌰𐌻𐌾𐌰𐌽 𐍂𐌰𐌶𐌳𐌰",
"uls-region-WW": "𐌹𐌽 𐌰𐌻𐌻𐌰𐌼𐌰 𐍆𐌰𐌹𐍂𐍈𐌰𐌿",
"uls-region-SP": "𐍃𐌹𐌻𐌳𐌰𐌻𐌴𐌹𐌺𐍃",
"uls-region-AM": "𐌰𐌼𐌴𐍂𐌹𐌺𐌰",
@@ -16,6 +15,6 @@
"uls-no-results-found": "𐌽𐌹 𐍅𐌰𐌹𐌷𐍄𐍃 𐌱𐌹𐌲𐌹𐍄𐌰𐌽𐍃",
"uls-common-languages": "𐌱𐌹𐌿𐌷𐍄𐌰 𐍂𐌰𐌶𐌳𐍉𐍃",
"uls-no-results-suggestion-title": "𐌿𐍆𐍄𐍉 𐍅𐌹𐌻𐌴𐌹𐍃 𐍃𐌿𐌼𐍃 𐌸𐌹𐌶𐍉 𐍂𐌰𐌶𐌳𐍉:",
- "uls-search-help": "𐌼𐌰𐌲𐍄 𐍃𐍉𐌺𐌾𐌰𐌽 𐌼𐌹𐌸 𐍂𐌰𐌶𐌳𐌰𐌽𐌰𐌼𐌹𐌽, 𐍃𐌺𐍂𐌹𐍀𐍄𐌽𐌰𐌼𐌹𐌽, 𐌹𐍃𐍉 𐍂𐌰𐌸𐌾𐍉𐌽 𐌸𐌹𐌶𐍉𐍃 𐍂𐌰𐌶𐌳𐍉𐍃 𐌰𐌹𐌸𐌸𐌰𐌿 𐌼𐌰𐌲𐍄 𐍃𐍉𐌺𐌾𐌰𐌽 𐌱𐌹 𐌲𐌰𐍅𐌹:",
+ "uls-search-help": "𐌼𐌰𐌲𐍄 𐍃𐍉𐌺𐌾𐌰𐌽 𐌼𐌹𐌸 𐍂𐌰𐌶𐌳𐌰𐌽𐌰𐌼𐌹𐌽, 𐌼𐌴𐌻𐌴𐌹𐌽𐌹𐌽𐌰𐌼𐌹𐌽, 𐌹𐍃𐍉 𐍂𐌰𐌸𐌾𐍉𐌽 𐌸𐌹𐌶𐍉𐍃 𐍂𐌰𐌶𐌳𐍉𐍃 𐌰𐌹𐌸𐌸𐌰𐌿 𐌼𐌰𐌲𐍄 𐍃𐍉𐌺𐌾𐌰𐌽 𐌱𐌹 𐌲𐌰𐍅𐌹.",
"uls-search-placeholder": "𐍂𐌰𐌶𐌳𐌰 𐍃𐍉𐌺𐌴𐌹𐌽𐍃"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/gsw.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/gsw.json
index a00eb0a0..3c344d62 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/gsw.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/gsw.json
@@ -1,20 +1,22 @@
{
"@metadata": {
"authors": [
- "Als-Holder"
+ "Als-Holder",
+ "Terfili"
]
},
- "uls-select-language": "Sproch wehle",
"uls-region-WW": "Wältwyt",
+ "uls-region-SP": "Spezial",
"uls-region-AM": "Amerika",
"uls-region-AF": "Afrika",
"uls-region-EU": "Europa",
"uls-region-AS": "Asie",
"uls-region-ME": "Mittlere Oschte",
"uls-region-PA": "Pazifik",
+ "uls-region-all": "Alli Sprooche",
"uls-no-results-found": "Kei Ergebnis gfunde",
- "uls-common-languages": "Sproche",
+ "uls-common-languages": "Sprooche, wo vorgschlo sin",
"uls-no-results-suggestion-title": "Des chennt Di interessiere:",
- "uls-search-help": "Du chasch noch em Name vu dr Sproch sueche, em Name vu dr Schrift, em ISO-Code vu dr Sproch oder Du gohsch iber e Region fir Suechi:",
- "uls-search-placeholder": "Sproch sueche"
+ "uls-search-help": "Du chasch noch em Name vu dr Sproch sueche, em ISO-Code vu dr Sproch oder Du gohsch iber e Region fir d Suechi.",
+ "uls-search-placeholder": "Nooch ere Sproch sueche"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/gu.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/gu.json
index 7b966711..04302b2f 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/gu.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/gu.json
@@ -7,7 +7,6 @@
"Santhosh.thottingal"
]
},
- "uls-select-language": "ભાષા પસંદ કરો",
"uls-region-WW": "વિશ્વભરમાં",
"uls-region-SP": "ખાસ",
"uls-region-AM": "અમેરિકા",
@@ -16,9 +15,10 @@
"uls-region-AS": "એશિયા",
"uls-region-ME": "મધ્ય પૂર્વ",
"uls-region-PA": "પૅસિફિક",
+ "uls-region-all": "બધી ભાષાઓ",
"uls-no-results-found": "કોઈ પરિણામ મળ્યા નહી",
- "uls-common-languages": "સામાન્ય ભાષાઓ",
+ "uls-common-languages": "સૂચિત ભાષાઓ",
"uls-no-results-suggestion-title": "તમને આમાં રસ હોઈ શકે છે:",
- "uls-search-help": "તમે ભાષા નામ, સ્ક્રિપ્ટ નામ, ભાષા ISO કોડ દ્વારા શોધી શકો છે અથવા તમે પ્રદેશ દ્વારા શોધી કરી શકો છો:",
- "uls-search-placeholder": "ભાષા શોધ"
+ "uls-search-help": "તમે ભાષા નામ, સ્ક્રિપ્ટ નામ, ભાષા ISO કોડ દ્વારા શોધ કરી શકો છે અથવા તમે પ્રદેશ દ્વારા શોધ કરી શકો છો.",
+ "uls-search-placeholder": "ભાષા માટે શોધો"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/hak.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/hak.json
index 4d13dc95..07868642 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/hak.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/hak.json
@@ -4,7 +4,6 @@
"Jetlag"
]
},
- "uls-select-language": "選擇語言",
"uls-region-WW": "全世界",
"uls-region-SP": "特別",
"uls-region-AM": "美洲",
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/haw.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/haw.json
index bd78d4b7..c3e01b3d 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/haw.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/haw.json
@@ -4,7 +4,6 @@
"Kolonahe"
]
},
- "uls-select-language": "Koho ʻōlelo",
"uls-region-WW": "ʻŌlelo puni hōnua",
"uls-region-SP": "Kūikawā",
"uls-region-AM": "ʻAmelika",
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/he.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/he.json
index e5eac928..8908db3c 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/he.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/he.json
@@ -2,10 +2,10 @@
"@metadata": {
"authors": [
"Amire80",
- "Inkbug"
+ "Inkbug",
+ "Guycn2"
]
},
- "uls-select-language": "בחירת שפה",
"uls-region-WW": "עולמי",
"uls-region-SP": "מיוחדות",
"uls-region-AM": "אמריקה",
@@ -14,8 +14,9 @@
"uls-region-AS": "אסיה",
"uls-region-ME": "המזרח התיכון",
"uls-region-PA": "האוקיינוס השקט",
- "uls-no-results-found": "לא נמצאו שפות",
- "uls-common-languages": "שפות נפוצות",
+ "uls-region-all": "כל השפות",
+ "uls-no-results-found": "לא נמצאו תוצאות",
+ "uls-common-languages": "שפות מוצעות",
"uls-no-results-suggestion-title": "אולי זה יעניין אותך:",
"uls-search-help": "אפשר לחפש לפי שם שפה, שם שיטת הכתב, קוד ISO של השפה, או ניתן לעיין לפי אזור.",
"uls-search-placeholder": "חיפוש שפה"
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/hi.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/hi.json
index f43f8124..dd5d6379 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/hi.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/hi.json
@@ -2,10 +2,10 @@
"@metadata": {
"authors": [
"Santhosh.thottingal",
- "Siddhartha Ghai"
+ "Siddhartha Ghai",
+ "Sfic"
]
},
- "uls-select-language": "भाषा चुनें",
"uls-region-WW": "वैश्विक",
"uls-region-SP": "विशेष",
"uls-region-AM": "अमेरिका",
@@ -14,9 +14,10 @@
"uls-region-AS": "एशिया",
"uls-region-ME": "मध्य पूर्व",
"uls-region-PA": "प्रशांत",
+ "uls-region-all": "सभी भाषाएँ",
"uls-no-results-found": "कोई परिणाम नहीं मिले",
- "uls-common-languages": "आम भाषाएँ",
+ "uls-common-languages": "सुझावित भाषा",
"uls-no-results-suggestion-title": "आपके लिये संभवतः उपयोगी:",
- "uls-search-help": "आप भाषा के नाम, लिपि के नाम एवं भाषा के ISO कोड से खोज कर सकते हैं, और क्षेत्र अनुसार ब्राउज़ भी कर सकते हैं:",
- "uls-search-placeholder": "भाषा खोज"
+ "uls-search-help": "आप भाषा के नाम, लिपि के नाम एवं भाषा के ISO कोड से खोज कर सकते हैं, और क्षेत्र अनुसार ब्राउज़ भी कर सकते हैं।",
+ "uls-search-placeholder": "भाषा के लिए खोजें"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/hr.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/hr.json
index 93bc5251..29c3cf03 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/hr.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/hr.json
@@ -2,10 +2,10 @@
"@metadata": {
"authors": [
"MaGa",
- "Teoo3"
+ "Teoo3",
+ "Amire80"
]
},
- "uls-select-language": "Odaberite jezik",
"uls-region-WW": "Svjetski jezici",
"uls-region-SP": "Posebno",
"uls-region-AM": "Amerika",
@@ -14,8 +14,9 @@
"uls-region-AS": "Azija",
"uls-region-ME": "Bliski istok",
"uls-region-PA": "Pacifik",
+ "uls-region-all": "Svi jezici",
"uls-no-results-found": "Nema rezultata",
- "uls-common-languages": "Najčešći jezici",
+ "uls-common-languages": "Predloženi jezici",
"uls-no-results-suggestion-title": "Možda ste zainteresirani za:",
"uls-search-help": "Možete tražiti prema nazivu jezika, pisma, ISO kôdu jezika ili možete pretražiti po regiji.",
"uls-search-placeholder": "Pretraga jezika"
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/hrx.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/hrx.json
index d67bff7f..aab74519 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/hrx.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/hrx.json
@@ -4,7 +4,6 @@
"Paul Beppler"
]
},
- "uls-select-language": "Wähl en Sproch",
"uls-region-WW": "Weltweit",
"uls-region-SP": "Spezial",
"uls-region-AM": "Amerika",
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/hsb.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/hsb.json
index d4ef39bc..bf3f00b5 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/hsb.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/hsb.json
@@ -4,7 +4,6 @@
"Michawiki"
]
},
- "uls-select-language": "Rěč wubrać",
"uls-region-WW": "Na cyłym swěće",
"uls-region-SP": "Specialne",
"uls-region-AM": "Amerika",
@@ -14,7 +13,7 @@
"uls-region-ME": "Srjedźny wuchod:",
"uls-region-PA": "Pacifik",
"uls-no-results-found": "Žane wuslědki namakane",
- "uls-common-languages": "Powšitkowne rěče",
+ "uls-common-languages": "Namjetowane rěče",
"uls-no-results-suggestion-title": "To móhło će zajimować:",
"uls-search-help": "Móžeš po mjenje rěče, mjenje pisma, ISO-kodźe rěče pytać abo pytanje přez region přewjesć.",
"uls-search-placeholder": "Rěčne pytanje"
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/hu.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/hu.json
index b017206c..d0991dfc 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/hu.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/hu.json
@@ -2,10 +2,10 @@
"@metadata": {
"authors": [
"Dj",
- "Tacsipacsi"
+ "Tacsipacsi",
+ "Amire80"
]
},
- "uls-select-language": "Nyelv kiválasztása",
"uls-region-WW": "Világszerte",
"uls-region-SP": "Speciális",
"uls-region-AM": "Amerika",
@@ -14,9 +14,10 @@
"uls-region-AS": "Ázsia",
"uls-region-ME": "Közel-Kelet",
"uls-region-PA": "Csendes-óceáni",
+ "uls-region-all": "Minden nyelv",
"uls-no-results-found": "Nincs találat",
- "uls-common-languages": "Gyakori nyelvek",
+ "uls-common-languages": "Javasolt nyelvek",
"uls-no-results-suggestion-title": "Lehet, hogy érdekel:",
- "uls-search-help": "Kereshetsz a nyelv neve, parancsfájl neve, a nyelv ISO kódja vagy böngészhetsz régiók szerint:",
+ "uls-search-help": "Kereshetsz a nyelv neve, ábécé neve, a nyelv ISO kódja alapján vagy böngészhetsz régiók szerint.",
"uls-search-placeholder": "Nyelv keresése"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/hy.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/hy.json
index 03da3537..8d80ea18 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/hy.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/hy.json
@@ -4,7 +4,6 @@
"Xelgen"
]
},
- "uls-select-language": "Ընտրեք լեզուն",
"uls-region-WW": "Միջազգային",
"uls-region-SP": "Հատուկ",
"uls-region-AM": "Ամերիկա",
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ia.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ia.json
index f039dd27..39ce93fd 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ia.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ia.json
@@ -4,7 +4,6 @@
"McDutchie"
]
},
- "uls-select-language": "Selige lingua",
"uls-region-WW": "Mundial",
"uls-region-SP": "Special",
"uls-region-AM": "America",
@@ -13,9 +12,10 @@
"uls-region-AS": "Asia",
"uls-region-ME": "Medio oriente",
"uls-region-PA": "Pacific",
+ "uls-region-all": "Tote le linguas",
"uls-no-results-found": "Nulle resultato trovate",
- "uls-common-languages": "Linguas commun",
+ "uls-common-languages": "Linguas suggerite",
"uls-no-results-suggestion-title": "Tu pote esser interessate in:",
- "uls-search-help": "Tu pote cercar per nomine de lingua, nomine de scriptura o codice ISO de lingua, o tu pote foliar per le regiones:",
- "uls-search-placeholder": "Recerca de lingua"
+ "uls-search-help": "Tu pote cercar per nomine de lingua, nomine de scriptura o codice ISO de lingua, o tu pote foliar per le regiones.",
+ "uls-search-placeholder": "Cercar un lingua"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/id.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/id.json
index 3a68e2cc..b709469d 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/id.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/id.json
@@ -2,10 +2,11 @@
"@metadata": {
"authors": [
"Farras",
- "Iwan Novirion"
+ "Iwan Novirion",
+ "Bennylin",
+ "NoiX180"
]
},
- "uls-select-language": "Pilih Bahasa",
"uls-region-WW": "Seluruh dunia",
"uls-region-SP": "Khusus",
"uls-region-AM": "Amerika",
@@ -14,9 +15,9 @@
"uls-region-AS": "Asia",
"uls-region-ME": "Timur Tengah",
"uls-region-PA": "Pasifik",
- "uls-no-results-found": "Tidak ada hasil ditemukan",
+ "uls-no-results-found": "Tidak ada hasil yang ditemukan",
"uls-common-languages": "Bahasa umum",
"uls-no-results-suggestion-title": "Anda mungkin tertarik pada:",
- "uls-search-help": "Anda dapat mencari dengan nama bahasa, nama skrip, kode ISO bahasa atau Anda dapat menelusuri menurut wilayahnya:",
+ "uls-search-help": "Anda dapat mencari dengan nama bahasa, nama skrip, kode ISO bahasa atau Anda dapat menelusuri menurut wilayahnya.",
"uls-search-placeholder": "Pencarian bahasa"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ie.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ie.json
index 18d9051a..cc2776c0 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ie.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ie.json
@@ -1,10 +1,10 @@
{
"@metadata": {
"authors": [
- "Makuba"
+ "Makuba",
+ "Stavanger7"
]
},
- "uls-select-language": "Selecte un lingue",
"uls-region-WW": "Global",
"uls-region-SP": "Special",
"uls-region-AM": "America",
@@ -13,9 +13,10 @@
"uls-region-AS": "Asia",
"uls-region-ME": "Medial Ost",
"uls-region-PA": "Pacific",
+ "uls-region-all": "Omni lingues",
"uls-no-results-found": "Null resultates ha esset trovat.",
"uls-common-languages": "Proposit lingues",
"uls-no-results-suggestion-title": "Forsan tu es interessat in:",
- "uls-search-help": "Tu posse serchar li nómin del lingue, del scritura, del ISO-code del lingue o serchar secun un region:",
- "uls-search-placeholder": "Lingual sercha"
+ "uls-search-help": "Tu posse serchar li nómin del lingue, del scritura, li ISO-code del lingue o serchar secun un region.",
+ "uls-search-placeholder": "Serchar un lingue"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ilo.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ilo.json
index 2cba5c36..0fe0f186 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ilo.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ilo.json
@@ -4,7 +4,6 @@
"Lam-ang"
]
},
- "uls-select-language": "Agpili ti Pagsasao",
"uls-region-WW": "Sangalubongan",
"uls-region-SP": "Espesial",
"uls-region-AM": "Amerika",
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/inh.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/inh.json
index 3b4c72b1..9ec2f190 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/inh.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/inh.json
@@ -1,21 +1,22 @@
{
"@metadata": {
"authors": [
- "Sapral Mikail"
+ "Sapral Mikail",
+ "Adam-Yourist"
]
},
- "uls-select-language": "Мотт харжар",
"uls-region-WW": "Дерригача дунен",
- "uls-region-SP": "Ховра",
- "uls-region-AM": "Aьмрик",
- "uls-region-AF": "Аьприк",
- "uls-region-EU": "Аьроп",
- "uls-region-AS": "Aьзик",
+ "uls-region-SP": "ЛаьрххIа дараш",
+ "uls-region-AM": "Америка",
+ "uls-region-AF": "Африка",
+ "uls-region-EU": "Европа",
+ "uls-region-AS": "Ази",
"uls-region-ME": "Гаргара Малхбоале",
- "uls-region-PA": "Г|айрегуллам",
- "uls-no-results-found": "Кора яь яц",
- "uls-common-languages": "Шоай ло|амаца нийсаденна метташ",
+ "uls-region-PA": "Океани",
+ "uls-region-all": "Деррига метташ",
+ "uls-no-results-found": "Корадаьдац",
+ "uls-common-languages": "Харжа оттадаь дола метташ",
"uls-no-results-suggestion-title": "Ер метташ шун теркдар т|алаца мега:",
"uls-search-help": "Меттай ц|ераца е йоазувдарца лаха тарло, иззамо ISO-меттач|егаца е купаца тахка а.",
- "uls-search-placeholder": "Мотт лаха"
+ "uls-search-placeholder": "Мотт лахар"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/is.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/is.json
index b6f81a84..d1d77dae 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/is.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/is.json
@@ -4,7 +4,6 @@
"Snævar"
]
},
- "uls-select-language": "Veldu tungumál",
"uls-region-WW": "Á heimsvísu",
"uls-region-SP": "Sérstök",
"uls-region-AM": "Ameríka",
@@ -13,9 +12,10 @@
"uls-region-AS": "Asía",
"uls-region-ME": "Mið-Austurlönd",
"uls-region-PA": "Kyrrahaf",
+ "uls-region-all": "Öll tungumál",
"uls-no-results-found": "Ekkert fannst",
- "uls-common-languages": "Algeng tungumál",
+ "uls-common-languages": "Uppástungur að tungumálum",
"uls-no-results-suggestion-title": "Þú gætir haft áhuga á:",
"uls-search-help": "Þú getur leitað eftir nafni tungumáls, nafni skriftunar, ISO kóða tungumálsins eða þú getur leitað eftir svæði.",
- "uls-search-placeholder": "Tungumála leit"
+ "uls-search-placeholder": "Leita eftir tungumáli"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/it.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/it.json
index c04864cc..2fd41d87 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/it.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/it.json
@@ -3,10 +3,10 @@
"authors": [
"Beta16",
"Macofe",
- "Gianfranco"
+ "Gianfranco",
+ "Amire80"
]
},
- "uls-select-language": "Seleziona lingua",
"uls-region-WW": "Tutto il mondo",
"uls-region-SP": "Speciale",
"uls-region-AM": "America",
@@ -15,9 +15,10 @@
"uls-region-AS": "Asia",
"uls-region-ME": "Medio oriente",
"uls-region-PA": "Pacifico",
- "uls-no-results-found": "Nessun risultato",
- "uls-common-languages": "Lingue più scelte",
+ "uls-region-all": "Tutte le lingue",
+ "uls-no-results-found": "Nessun risultato trovato",
+ "uls-common-languages": "Lingue suggerite",
"uls-no-results-suggestion-title": "Puoi essere interessato a:",
"uls-search-help": "È possibile cercare per nome, nome dello script, codice ISO della lingua o si può navigare tramite regione.",
- "uls-search-placeholder": "Ricerca lingua"
+ "uls-search-placeholder": "Cerca una lingua"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ja.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ja.json
index bd94eee9..4c9c1814 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ja.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ja.json
@@ -2,10 +2,11 @@
"@metadata": {
"authors": [
"Santhosh.thottingal",
- "Shirayuki"
+ "Shirayuki",
+ "Otokoume",
+ "Fryed-peach"
]
},
- "uls-select-language": "言語の選択",
"uls-region-WW": "全世界",
"uls-region-SP": "特殊",
"uls-region-AM": "アメリカ",
@@ -14,9 +15,10 @@
"uls-region-AS": "アジア",
"uls-region-ME": "中東",
"uls-region-PA": "太平洋地域",
+ "uls-region-all": "すべての言語",
"uls-no-results-found": "見つかりませんでした",
- "uls-common-languages": "よく使用する言語",
+ "uls-common-languages": "提案された言語",
"uls-no-results-suggestion-title": "もしかして:",
- "uls-search-help": "言語名、文字体系名、言語の ISO コードで検索できます。地域別の一覧から選択することもできます:",
- "uls-search-placeholder": "言語の検索"
+ "uls-search-help": "言語名、文字体系名、言語の ISO コードで検索できます。地域別の一覧から選択することもできます。",
+ "uls-search-placeholder": "言語を検索"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ka.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ka.json
index ea6fc945..d4a3da6f 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ka.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ka.json
@@ -1,10 +1,10 @@
{
"@metadata": {
"authors": [
- "David1010"
+ "David1010",
+ "MIKHEIL"
]
},
- "uls-select-language": "აირჩიეთ ენა",
"uls-region-WW": "მსოფლიო",
"uls-region-SP": "სპეციალური",
"uls-region-AM": "ამერიკა",
@@ -14,7 +14,7 @@
"uls-region-ME": "ახლო აღმოსავლეთი",
"uls-region-PA": "ოკეანეთი",
"uls-no-results-found": "შედეგი ვერ მოიძებნა",
- "uls-common-languages": "საერთო ენები",
+ "uls-common-languages": "შეთავაზებული ენები",
"uls-no-results-suggestion-title": "იქნებ თქვენ ამ ენებმა დაგაინტერესოთ:",
"uls-search-help": "ძიება შესაძლებელია ენის სახელით ან დამწერლობით, ენის ISO-კოდით ან რეგიონის მიხედვით.",
"uls-search-placeholder": "ენის მოძებნა"
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/kab.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/kab.json
index 76ce24c5..fd2907da 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/kab.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/kab.json
@@ -2,21 +2,25 @@
"@metadata": {
"authors": [
"Amazigh84",
- "Mmistmurt"
+ "Mmistmurt",
+ "Mezgoug",
+ "Belkacem77",
+ "SlimaneAmiri",
+ "Sayem AtVkm"
]
},
- "uls-select-language": "Xtiṛ Tutlayt",
- "uls-region-WW": "Deg umaḍal ummid",
- "uls-region-SP": "Uslig",
+ "uls-region-WW": "Deg umaḍal meṛṛa",
+ "uls-region-SP": "Uzzig",
"uls-region-AM": "Tamrikt",
"uls-region-AF": "Tafriqt",
"uls-region-EU": "Turuft",
"uls-region-AS": "Asya",
- "uls-region-ME": "Ccerq Alemmas",
+ "uls-region-ME": "Asamar Alemmas",
"uls-region-PA": "Amelwi",
- "uls-no-results-found": "Ulac d acu id yufa.",
- "uls-common-languages": "Tutlayin tinmilitin",
- "uls-no-results-suggestion-title": "Ma tebɣiḍ ad isineḍ ayen nniḍen ɣef :",
- "uls-search-help": "Tzemreḍ ad tḥffeḍ s tutlayt, s uskript, s tangalt ISO n tutlayt naγ inig s tama.",
- "uls-search-placeholder": "Anadi n tutlayt"
+ "uls-region-all": "Akk tutlayin",
+ "uls-no-results-found": "Ulac d acu i d-yufa.",
+ "uls-common-languages": "Tutlayin yettusumren",
+ "uls-no-results-suggestion-title": "Ma tebɣiḍ ad tisineḍ ayen nniḍen ɣef :",
+ "uls-search-help": "Tzemreḍ ad tnadiḍ s yisem n tutlayt, s uskript, s tengalt ISO n tutlayt neγ inig s temnaḍt.",
+ "uls-search-placeholder": "Nadi γef tutlayt"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/khw.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/khw.json
index dde92e22..d006a8ad 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/khw.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/khw.json
@@ -4,7 +4,6 @@
"Rachitrali"
]
},
- "uls-select-language": "زبانو انتخابو کورے",
"uls-region-WW": "پورا دنیا",
"uls-region-AM": "آمریکہ",
"uls-region-AF": "افریقہ",
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/kk-cyrl.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/kk-cyrl.json
index c84ecb32..6efe8e97 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/kk-cyrl.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/kk-cyrl.json
@@ -4,7 +4,6 @@
"Arystanbek"
]
},
- "uls-select-language": "Тілді таңдау",
"uls-region-WW": "Әлемдік тілдер",
"uls-region-SP": "Арнайы",
"uls-region-AM": "Америка",
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/km.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/km.json
index 3a1ea7c9..5a98da38 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/km.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/km.json
@@ -1,10 +1,10 @@
{
"@metadata": {
"authors": [
- "Sovichet"
+ "Sovichet",
+ "គីមស៊្រុន"
]
},
- "uls-select-language": "រើស​ភាសា",
"uls-region-WW": "ទូទាំង​ពិភពលោក",
"uls-region-SP": "ពិសេស",
"uls-region-AM": "អាមេរិក",
@@ -13,9 +13,10 @@
"uls-region-AS": "អាស៊ី",
"uls-region-ME": "មជ្ឈិមបូព៌ា",
"uls-region-PA": "ប៉ាស៊ីភិច",
+ "uls-region-all": "ភាសាទាំងអស់",
"uls-no-results-found": "រកមិនឃើញលទ្ធផល",
- "uls-common-languages": "ភាសាទូទៅ",
- "uls-no-results-suggestion-title": "អ្នក​អាច​នឹង​ចាប់​អារម្មណ៍​លើ:",
- "uls-search-help": "អ្នក​អាច​ស្វែង​រក​តាម​ឈ្មោះ​ភាសា, ឈ្មោះ​ស្គ្រីប, កូដ ISO នៃ​ភាសា ឬ​អ្នក​អាច​រុករក​តាម​តំបន់:",
- "uls-search-placeholder": "រកតាម​ភាសា"
+ "uls-common-languages": "ភាសាបេក្ខភាព",
+ "uls-no-results-suggestion-title": "អ្នក​អាច​នឹង​ចាប់​អារម្មណ៍​លើ៖",
+ "uls-search-help": "អ្នក​អាច​ស្វែង​រក​តាម​ឈ្មោះ​ភាសា, ឈ្មោះ​ស្គ្រីប, កូដ ISO នៃ​ភាសា ឬ​អ្នក​អាច​រុករក​តាម​តំបន់។",
+ "uls-search-placeholder": "ស្វែងរកភាសា"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/kn.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/kn.json
index 952394ac..04258c08 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/kn.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/kn.json
@@ -5,7 +5,6 @@
"Shankar"
]
},
- "uls-select-language": "ಭಾಷೆಯ ಆಯ್ಕೆ",
"uls-region-WW": "ಪ್ರಪಂಚದಾದ್ಯಂತ",
"uls-region-SP": "ವಿಶೇಷ",
"uls-region-AM": "ಅಮೇರಿಕ",
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ko.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ko.json
index 987bf41b..ab0037f4 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ko.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ko.json
@@ -2,11 +2,12 @@
"@metadata": {
"authors": [
"IRTC1015",
- "아라"
+ "아라",
+ "Ykhwong",
+ "Hibm98"
]
},
- "uls-select-language": "언어 선택",
- "uls-region-WW": "전세계",
+ "uls-region-WW": "전 세계",
"uls-region-SP": "특수",
"uls-region-AM": "아메리카",
"uls-region-AF": "아프리카",
@@ -14,8 +15,9 @@
"uls-region-AS": "아시아",
"uls-region-ME": "중동",
"uls-region-PA": "태평양",
+ "uls-region-all": "모든 언어",
"uls-no-results-found": "결과가 없습니다",
- "uls-common-languages": "자주 사용하는 언어",
+ "uls-common-languages": "제안 언어",
"uls-no-results-suggestion-title": "이것을 찾으셨나요:",
"uls-search-help": "언어 이름, 문자 체계 이름, 언어의 ISO 코드로 검색할 수 있으며 지역별로 찾아볼 수 있습니다.",
"uls-search-placeholder": "언어 검색"
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/krc.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/krc.json
index 4ddf3da8..ae6ce285 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/krc.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/krc.json
@@ -5,7 +5,6 @@
"Ernác"
]
},
- "uls-select-language": "Тил сайлау",
"uls-region-WW": "Бютеудуниялы",
"uls-region-SP": "Айырмалы",
"uls-region-AM": "Америка",
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ksh.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ksh.json
index f22d2222..701f797c 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ksh.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ksh.json
@@ -4,7 +4,6 @@
"Purodha"
]
},
- "uls-select-language": "Donn en Schprohch ußwähle",
"uls-region-WW": "Fö de jannze Ääd",
"uls-region-SP": "Extras - kein Schprohche",
"uls-region-AM": "Ammärrika",
@@ -16,6 +15,6 @@
"uls-no-results-found": "Nix jefonge",
"uls-common-languages": "Vörjeschlonn Schprohche",
"uls-no-results-suggestion-title": "Do künnts Schpaßß hann aan:",
- "uls-search-help": "Do kanns noh Schprohche söhke övver der Nahme, dä Schreff iehre Nahme, et Köözel noh dä ISO-Norrm udder övver övver de Rejuhne:",
+ "uls-search-help": "Do kanns noh Schprohche söhke övver der Nahme, dä Schreff iehre Nahme, et Köözel noh dä ISO-Norrm udder övver övver de Rejuhne.",
"uls-search-placeholder": "En Schprohch Söhke"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ku-latn.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ku-latn.json
index 43fda663..32ef6a64 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ku-latn.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ku-latn.json
@@ -3,10 +3,11 @@
"authors": [
"George Animal",
"Bikarhêner",
- "Ghybu"
+ "Ghybu",
+ "Velg",
+ "Cûndûllah el-Kurdî"
]
},
- "uls-select-language": "Zimanekî hilbijêre",
"uls-region-WW": "Li hemû cîhanê",
"uls-region-SP": "Taybet",
"uls-region-AM": "Amerîka",
@@ -15,9 +16,10 @@
"uls-region-AS": "Asya",
"uls-region-ME": "Rojhilata Navîn",
"uls-region-PA": "Pasîfîk",
- "uls-no-results-found": "Ti encam nehatin dîtin",
- "uls-common-languages": "Zimanên belavbûyî",
+ "uls-region-all": "Hemû ziman",
+ "uls-no-results-found": "Tu encam nehatin dîtin",
+ "uls-common-languages": "Zimanên pêşniyarkirî",
"uls-no-results-suggestion-title": "Pêwendîya we dikara bikişîne:",
"uls-search-help": "Hûn lêgerîna xwe li gor nava zimanê, koda ISOyê an jî li gor herêmê dikarin bikin.",
- "uls-search-placeholder": "Lêgerîna li ziman"
+ "uls-search-placeholder": "Li zimanekî bigere"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ky.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ky.json
index 70dc8036..13124e16 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ky.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ky.json
@@ -6,7 +6,6 @@
"Викиней"
]
},
- "uls-select-language": "Тилди тандоо",
"uls-region-WW": "Бүткүл дүйнөлүк",
"uls-region-SP": "Атайын",
"uls-region-AM": "Америка",
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/lb.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/lb.json
index e43198be..2287706c 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/lb.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/lb.json
@@ -4,7 +4,6 @@
"Robby"
]
},
- "uls-select-language": "Sprooch eraussichen",
"uls-region-WW": "Weltwäit",
"uls-region-SP": "Spezial",
"uls-region-AM": "Amerika",
@@ -13,9 +12,10 @@
"uls-region-AS": "Asien",
"uls-region-ME": "Mëttleren Osten",
"uls-region-PA": "Pazifik",
+ "uls-region-all": "All Sproochen",
"uls-no-results-found": "Näischt fonnt",
- "uls-common-languages": "Sproochen",
+ "uls-common-languages": "Proposéiert Sproochen",
"uls-no-results-suggestion-title": "Dir kënnt interesséiert sinn un:",
"uls-search-help": "Dir kënnt mam Numm vun der Sprooch, Numm vun der Schrëft, ISO-Code vun der Sprooch oder iwwer eng Regioun sichen.",
- "uls-search-placeholder": "Sprooche sichen"
+ "uls-search-placeholder": "No enger Sprooch sichen"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/lez.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/lez.json
index 53579f54..4b5b3880 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/lez.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/lez.json
@@ -5,7 +5,6 @@
"Soul Train"
]
},
- "uls-select-language": "Ch'al xkaghun",
"uls-region-WW": "Virialemdin",
"uls-region-SP": "Гьакlдар",
"uls-region-AM": "ŵAmerika",
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/li.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/li.json
index 171d2216..934164e3 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/li.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/li.json
@@ -1,7 +1,10 @@
{
"@metadata": {
"authors": [
- "Robin0van0der0vliet"
+ "Robin0van0der0vliet",
+ "Robin van der Vliet",
+ "Pahles",
+ "Ooswesthoesbes"
]
},
"uls-region-WW": "Waereldwied",
@@ -12,5 +15,10 @@
"uls-region-AS": "Azië",
"uls-region-ME": "Midde-Ooste",
"uls-region-PA": "Pacifisch gebied",
- "uls-search-placeholder": "Taol zeuke"
+ "uls-region-all": "Al spraoke",
+ "uls-no-results-found": "Gein rizzeltaote gevónje",
+ "uls-common-languages": "Spraoksuggesties",
+ "uls-no-results-suggestion-title": "Doe bös mesjiens geïnterseerdj in:",
+ "uls-search-help": "Doe kans zeuken op spraoknaam, sjrifnaam, ISO-code vanne spraok of doe kans blajere de regio.",
+ "uls-search-placeholder": "Sjpraok zeuke"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/lki.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/lki.json
index 70dbea94..11080c67 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/lki.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/lki.json
@@ -1,21 +1,21 @@
{
"@metadata": {
"authors": [
- "Hosseinblue"
+ "Hosseinblue",
+ "Lakzon"
]
},
- "uls-select-language": "زوون انتخاب کۀ",
- "uls-region-WW": "کؤل جئ هان",
- "uls-region-SP": "ویژۀ",
+ "uls-region-WW": "کؤل(گشت)جەهان",
+ "uls-region-SP": "ویژە",
"uls-region-AM": "ئآمریکا",
"uls-region-AF": "ئآفریقا",
"uls-region-EU": "اؤرووپا",
"uls-region-AS": "ئاسیا",
"uls-region-ME": "(غرب نامِن(خاوورمیانۀ",
"uls-region-PA": "ئآرؤم",
- "uls-no-results-found": "نۀتیجئ ئل دیی نؤی",
- "uls-common-languages": "زوونۀل مشترک",
+ "uls-no-results-found": "نتیجه أدی نؤی(پئا نؤی)",
+ "uls-common-languages": "زوونەل رایج",
"uls-no-results-suggestion-title": ":هائر خووۀشته یۀ بآئ",
- "uls-search-help": "،مۀتؤنینؤ مه نئ کینؤ ئۀ وسیلۀ نؤم زوون\n نؤم اسکریپت،کد(ای اس او)زوونۀ یامتؤنینؤ ناحیۀ بگئردینو",
- "uls-search-placeholder": " مِه نِی زوون"
+ "uls-search-help": "، مةتۆنین ئۀ وسیلة نؤم زوون مِنی کِین\n نؤم اسکریپت،کد ISO زوونۀ یا مةتۆنین ناحیة(تؤئة) بگئردینو",
+ "uls-search-placeholder": "مِنِی کردن زوون"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/lrc.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/lrc.json
index b6db6b9e..da49087f 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/lrc.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/lrc.json
@@ -4,7 +4,6 @@
"Mogoeilor"
]
},
- "uls-select-language": "زون انتخاو بيه",
"uls-region-WW": "كل دونيا",
"uls-region-SP": "ويجه",
"uls-region-AM": "امركا",
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/lt.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/lt.json
index 749922ab..b3abaf22 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/lt.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/lt.json
@@ -2,10 +2,12 @@
"@metadata": {
"authors": [
"Cyklopas",
- "Mantak111"
+ "Mantak111",
+ "Eitvys200",
+ "Amire80",
+ "Zygimantus"
]
},
- "uls-select-language": "Pasirinkite kalbą",
"uls-region-WW": "Visame pasaulyje",
"uls-region-SP": "Specialios",
"uls-region-AM": "Amerika",
@@ -14,9 +16,10 @@
"uls-region-AS": "Azija",
"uls-region-ME": "Artimieji Rytai",
"uls-region-PA": "Ramiojo vandenyno zona",
+ "uls-region-all": "Visos kalbos",
"uls-no-results-found": "Rezultatų nerasta",
- "uls-common-languages": "Bendros kalbos",
+ "uls-common-languages": "Siūlomos kalbos",
"uls-no-results-suggestion-title": "Jums gali būti įdomu:",
- "uls-search-help": "Galite ieškoti informacijos pagal kalbos pavadinimą, scenarijaus pavadinimą, ISO kalbos kodą arba galite naršyti pagal regionus:",
- "uls-search-placeholder": "Kalbos ieška"
+ "uls-search-help": "Galite ieškoti pagal kalbos pavadinimą, scenarijaus pavadinimą, ISO kalbos kodą arba galite naršyti pagal regioną.",
+ "uls-search-placeholder": "Ieškoti kalbos"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/lv.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/lv.json
index e7d9ad42..53a232f4 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/lv.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/lv.json
@@ -2,10 +2,10 @@
"@metadata": {
"authors": [
"Papuass",
- "Ttdnet"
+ "Ttdnet",
+ "Amire80"
]
},
- "uls-select-language": "Izvēlieties valodu",
"uls-region-WW": "Visā pasaulē",
"uls-region-SP": "Īpašās",
"uls-region-AM": "Amerika",
@@ -14,9 +14,10 @@
"uls-region-AS": "Āzija",
"uls-region-ME": "Tuvie Austrumi",
"uls-region-PA": "Klusā okeāna",
+ "uls-region-all": "Visas valodas",
"uls-no-results-found": "Nav atrasts neviens rezultāts",
- "uls-common-languages": "Izplatītas valodas",
+ "uls-common-languages": "Ieteiktās valodas",
"uls-no-results-suggestion-title": "Jums var būt interesē:",
- "uls-search-help": "Var meklēt pēc valodas, skripta nosaukuma, valodas ISO koda, vai jūs tos varat pārlūkot pēc reģiona:",
- "uls-search-placeholder": "Valodas meklēšana"
+ "uls-search-help": "Var meklēt pēc valodas, skripta nosaukuma, valodas ISO koda, vai jūs tos varat pārlūkot pēc reģiona.",
+ "uls-search-placeholder": "Meklēt valodu"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/map-bms.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/map-bms.json
index 3f04fb68..c36339d7 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/map-bms.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/map-bms.json
@@ -4,7 +4,6 @@
"StefanusRA"
]
},
- "uls-select-language": "Pilih Basa",
"uls-region-WW": "Sak ndonya",
"uls-region-SP": "Khusus",
"uls-region-AM": "Amerika",
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/mg.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/mg.json
index be4b1542..85b5710b 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/mg.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/mg.json
@@ -4,7 +4,6 @@
"Jagwar"
]
},
- "uls-select-language": "Hifidy tenim-pirenena",
"uls-region-WW": "Erak'izao tontolo izao",
"uls-region-SP": "Manokana",
"uls-region-AM": "Amerika",
@@ -13,9 +12,10 @@
"uls-region-AS": "Azia",
"uls-region-ME": "Afovoany Atsinanana",
"uls-region-PA": "Pasifika",
+ "uls-region-all": "Fiteny rehetra",
"uls-no-results-found": "Tsy nahitana valiny",
- "uls-common-languages": "Tenim-pirenena fampiasa matetika",
+ "uls-common-languages": "Fiteny atao soson-kevitra",
"uls-no-results-suggestion-title": "Mety ahitanao tombon-tsoa:",
- "uls-search-help": "Afaka mikaroka araka ny anaran'ny tenim-pirena, anaran-tsoratra, kaody ISO-n'ny teny na afaka mifidy araky ny faritra:",
- "uls-search-placeholder": "Fikarohana tenim-pirenena"
+ "uls-search-help": "Afaka mikaroka araka ny anaran'ny tenim-pirena, anaran-tsoratra, kaody ISO-n'ny teny na afaka mifidy araky ny faritra.",
+ "uls-search-placeholder": "Hitady fiteny"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/min.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/min.json
index a1057819..ea84f595 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/min.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/min.json
@@ -4,7 +4,6 @@
"Iwan Novirion"
]
},
- "uls-select-language": "Piliah Bahaso",
"uls-region-WW": "Saluruah dunia",
"uls-region-SP": "Khusuih",
"uls-region-AM": "Amerika",
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/mk.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/mk.json
index b6abc40a..aa43d5d1 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/mk.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/mk.json
@@ -4,7 +4,6 @@
"Bjankuloski06"
]
},
- "uls-select-language": "Одберете јазик",
"uls-region-WW": "Светски",
"uls-region-SP": "Посебни",
"uls-region-AM": "Америка",
@@ -13,9 +12,10 @@
"uls-region-AS": "Азија",
"uls-region-ME": "Близок Исток",
"uls-region-PA": "Океанија",
+ "uls-region-all": "Сите јазици",
"uls-no-results-found": "Не пронајдов ништо",
- "uls-common-languages": "Позастапени јазици",
+ "uls-common-languages": "Предложени јазици",
"uls-no-results-suggestion-title": "Може да ве интересираат:",
- "uls-search-help": "Можете да пребарувате по име на јазикот или писмото, по ISO-код на јазикот или пак да разгледате по региони:",
- "uls-search-placeholder": "Јазик на пребарувањето"
+ "uls-search-help": "Можете да пребарувате по име на јазикот или писмото, по ISO-код на јазикот или пак да разгледате по региони.",
+ "uls-search-placeholder": "Пребарување на јазик"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ml.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ml.json
index e5b0667e..b3872339 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ml.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ml.json
@@ -5,7 +5,6 @@
"Santhosh.thottingal"
]
},
- "uls-select-language": "ഭാഷ തിരഞ്ഞെടുക്കുക",
"uls-region-WW": "ആഗോള ഭാഷകൾ",
"uls-region-SP": "പ്രത്യേക ഭാഷകൾ",
"uls-region-AM": "അമേരിക്ക",
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/mn.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/mn.json
index fa12636e..852992e8 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/mn.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/mn.json
@@ -5,7 +5,6 @@
"Wisdom"
]
},
- "uls-select-language": "Хэл сонгох",
"uls-region-WW": "Дэлхий даяар",
"uls-region-SP": "Тусгай",
"uls-region-AM": "Америк",
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/mr.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/mr.json
index 920e8e97..cc869d88 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/mr.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/mr.json
@@ -3,10 +3,10 @@
"authors": [
"Kaajawa",
"Mahitgar",
- "V.narsikar"
+ "V.narsikar",
+ "Sureshkhole"
]
},
- "uls-select-language": "भाषा निवडा",
"uls-region-WW": "वैश्विक",
"uls-region-SP": "विशेष",
"uls-region-AM": "अमेरीका",
@@ -15,9 +15,10 @@
"uls-region-AS": "आशिया",
"uls-region-ME": "मध्यपूर्व (मिडल इस्ट)",
"uls-region-PA": "पॅसिफीक",
+ "uls-region-all": "सर्व भाषा",
"uls-no-results-found": "परिणाम सापडले नाही",
- "uls-common-languages": "नित्याच्या भाषा",
+ "uls-common-languages": "सुचविलेल्या भाषा",
"uls-no-results-suggestion-title": "तुम्हाला कदाचित यात रुची असेल:",
- "uls-search-help": "आपण भाषेनुसार, लिपीनुसार, भाषेच्या आयएसओ कोडनुसार शोध घेऊ शकता अथवा प्रदेशानुसार न्याहाळु शकता:",
- "uls-search-placeholder": "भाषा शोध"
+ "uls-search-help": "आपण भाषेनुसार, लिपीनुसार, भाषेच्या आयएसओ कोडनुसार शोध घेऊ शकता अथवा प्रदेशानुसार शोधु शकता:",
+ "uls-search-placeholder": "भाषेचा शोध घ्या"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ms.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ms.json
index 2632dd99..6a3ae1a5 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ms.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ms.json
@@ -4,7 +4,6 @@
"Anakmalaysia"
]
},
- "uls-select-language": "Pilih Bahasa",
"uls-region-WW": "Seluruh Dunia",
"uls-region-SP": "Khas",
"uls-region-AM": "Amerika",
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/mt.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/mt.json
index e7a0dec8..c56f180a 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/mt.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/mt.json
@@ -1,10 +1,10 @@
{
"@metadata": {
"authors": [
- "Chrisportelli"
+ "Chrisportelli",
+ "Amire80"
]
},
- "uls-select-language": "Agħżel lingwa",
"uls-region-WW": "Madwar id-dinja",
"uls-region-SP": "Speċjali",
"uls-region-AM": "Amerika",
@@ -13,9 +13,10 @@
"uls-region-AS": "Asja",
"uls-region-ME": "Lvant Nofsani",
"uls-region-PA": "Paċifiku",
+ "uls-region-all": "Kull lingwa",
"uls-no-results-found": "L-ebda riżultat",
"uls-common-languages": "Lingwi magħżula",
"uls-no-results-suggestion-title": "Tista' tkun interessat fil-:",
- "uls-search-help": "Tista' tfittex skont l-isem tal-lingwa, l-isem tal-iskript, kodiċi tal-lingwa ISO jew tista' tinnaviga skont ir-reġjun:",
+ "uls-search-help": "Tista' tfittex skont l-isem tal-lingwa, l-isem tal-iskript, kodiċi tal-lingwa ISO jew tista' tinnaviga skont ir-reġjun.",
"uls-search-placeholder": "Fittex lingwa"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/mzn.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/mzn.json
index c3a514ab..35239324 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/mzn.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/mzn.json
@@ -4,7 +4,6 @@
"محک"
]
},
- "uls-select-language": "زوون ره انتخاب هاکردن",
"uls-region-WW": "جهون میون",
"uls-region-SP": "ویژه",
"uls-region-AM": "آمریکا",
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nap.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nap.json
index 0146dc4a..bda54ad9 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nap.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nap.json
@@ -1,10 +1,10 @@
{
"@metadata": {
"authors": [
- "Chelin"
+ "Chelin",
+ "C.R."
]
},
- "uls-select-language": "Selezziona lengua",
"uls-region-WW": "Munno intero",
"uls-region-SP": "Speciale",
"uls-region-AM": "Amereca",
@@ -13,9 +13,10 @@
"uls-region-AS": "Asia",
"uls-region-ME": "Medio oriente",
"uls-region-PA": "Pacifico",
+ "uls-region-all": "Tuttuquante 'e llengue",
"uls-no-results-found": "Nisciuno risultato",
- "uls-common-languages": "Lengue cchiù scelte",
+ "uls-common-languages": "Llèngue suggerite",
"uls-no-results-suggestion-title": "Puo essere interessato a:",
- "uls-search-help": "Puo cerca ppe nomme, nomme ddo script, codece ISO dda lengua o navigga tra e reggione:",
- "uls-search-placeholder": "Ascià lengua"
+ "uls-search-help": "Puo cerca ppe nomme, nomme ddo script, codece ISO dda lengua o navigga tra e reggione.",
+ "uls-search-placeholder": "Tròva na lengua"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nb.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nb.json
index 14e32131..77b28dae 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nb.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nb.json
@@ -3,10 +3,11 @@
"authors": [
"Event",
"Wouterkoch",
- "Danmichaelo"
+ "Danmichaelo",
+ "Amire80",
+ "Telaneo"
]
},
- "uls-select-language": "Velg språk",
"uls-region-WW": "Verdensomspennende",
"uls-region-SP": "Spesielle",
"uls-region-AM": "Amerika",
@@ -15,8 +16,9 @@
"uls-region-AS": "Asia",
"uls-region-ME": "Midtøsten",
"uls-region-PA": "Stillehavsområdet",
+ "uls-region-all": "Alle språk",
"uls-no-results-found": "Ingen resultater funnet",
- "uls-common-languages": "Vanlige språk",
+ "uls-common-languages": "Foreslåtte språk",
"uls-no-results-suggestion-title": "Dette kan kanskje interessere deg:",
"uls-search-help": "Du kan søke etter språkets navn, alfabet (skriftnavn) eller ISO-kode, eller du kan bla etter region.",
"uls-search-placeholder": "Språksøk"
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nds-nl.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nds-nl.json
index 34ae80f9..ead12199 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nds-nl.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nds-nl.json
@@ -4,7 +4,6 @@
"Servien"
]
},
- "uls-select-language": "Taal kiezen",
"uls-region-WW": "Wereldwied",
"uls-region-SP": "Spesiaal",
"uls-region-AM": "Amerika",
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ne.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ne.json
index 9aa750f9..e8618775 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ne.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ne.json
@@ -5,7 +5,6 @@
"सरोज कुमार ढकाल"
]
},
- "uls-select-language": "भाषा छान्ने",
"uls-region-WW": "विश्वभर",
"uls-region-SP": "विशेष",
"uls-region-AM": "अमेरिका",
@@ -14,9 +13,10 @@
"uls-region-AS": "एसिया",
"uls-region-ME": "मध्य पूर्व",
"uls-region-PA": "प्रशान्त",
+ "uls-region-all": "सबै भाषाहरू",
"uls-no-results-found": "कुनै पनि नतिजाहरू भेटिएन",
- "uls-common-languages": "साझा भाषा",
+ "uls-common-languages": "सुझाव दिइएका भाषाहरू",
"uls-no-results-suggestion-title": "तपाईंलाई यसमा चाख लाग्नसक्छ:",
- "uls-search-help": "तपाईं भाषाको नाम, लिपीको नाम, आइएसओ कोड वा क्षेत्रको आधारमा खोज्न सक्नुहुन्छ:",
- "uls-search-placeholder": "भाषा खोज्नुहोस"
+ "uls-search-help": "तपाईं भाषाको नाम, लिपीको नाम, आइएसओ कोड वा क्षेत्रको आधारमा खोज्न सक्नुहुन्छ या क्षेत्रको आधारमा अन्वेषण गर्न सक्नुहुन्छ:",
+ "uls-search-placeholder": "भाषा खोज्नुहोस्"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nl-informal.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nl-informal.json
index 71c2e851..6d8af4d0 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nl-informal.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nl-informal.json
@@ -2,10 +2,10 @@
"@metadata": {
"authors": [
"Carsrac",
- "Robin0van0der0vliet"
+ "Robin0van0der0vliet",
+ "Robin van der Vliet"
]
},
- "uls-select-language": "Taal selecteren",
"uls-region-WW": "Wereldwijd",
"uls-region-SP": "Speciaal",
"uls-region-AM": "Amerika",
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nl.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nl.json
index 67d580e1..4af99352 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nl.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nl.json
@@ -1,10 +1,11 @@
{
"@metadata": {
"authors": [
- "Siebrand"
+ "Siebrand",
+ "Sjoerddebruin",
+ "Mar(c)"
]
},
- "uls-select-language": "Taal selecteren",
"uls-region-WW": "Wereldwijd",
"uls-region-SP": "Speciaal",
"uls-region-AM": "Amerika",
@@ -13,9 +14,10 @@
"uls-region-AS": "Azië",
"uls-region-ME": "Midden-Oosten",
"uls-region-PA": "Pacifisch gebied",
+ "uls-region-all": "Alle talen",
"uls-no-results-found": "Geen resultaten gevonden",
"uls-common-languages": "Taalsuggesties",
- "uls-no-results-suggestion-title": "Wellicht wilt u een van de volgende talen kiezen:",
- "uls-search-help": "U kunt zoeken op taalnaam, schriftnaam, ISO-code van de taal of u kunt bladeren per regio.",
- "uls-search-placeholder": "Taal zoeken"
+ "uls-no-results-suggestion-title": "Mogelijk bent u geïnteresseerd in:",
+ "uls-search-help": "U kunt zoeken op taalnaam, schriftnaam of ISO-code van de taal, of u kunt bladeren per regio.",
+ "uls-search-placeholder": "Zoeken naar een taal"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nn.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nn.json
index 8c710085..635726ed 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nn.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nn.json
@@ -1,10 +1,10 @@
{
"@metadata": {
"authors": [
- "Njardarlogar"
+ "Njardarlogar",
+ "Amire80"
]
},
- "uls-select-language": "Vel språk",
"uls-region-WW": "Verdsfemnande",
"uls-region-SP": "Spesielle",
"uls-region-AM": "Amerika",
@@ -13,9 +13,10 @@
"uls-region-AS": "Asia",
"uls-region-ME": "Midtausten",
"uls-region-PA": "Stillehavsområdet",
+ "uls-region-all": "Alle språk",
"uls-no-results-found": "Ingen resultat funne",
"uls-common-languages": "Vanlege språk",
"uls-no-results-suggestion-title": "Kan henda er du interessert i:",
- "uls-search-help": "Du kan søkja etter språknamn, namn på skriftsystem, ISO-kode eller du kan bla gjennom etter region:",
+ "uls-search-help": "Du kan søkja etter språknamn, namn på skriftsystem, ISO-kode eller du kan bla gjennom etter region.",
"uls-search-placeholder": "Språksøk"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nso.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nso.json
index bb114cf6..9c1ed284 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nso.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nso.json
@@ -4,11 +4,12 @@
"Mohau"
]
},
- "uls-select-language": "Kgetha leleme",
"uls-region-WW": "Lefasekabophara",
+ "uls-region-SP": "Kgethegilego",
"uls-region-AM": "Amerika",
"uls-region-AF": "Afrika",
"uls-region-EU": "Uropa",
+ "uls-region-all": "Malelme ka moka",
"uls-no-results-suggestion-title": "O ka ba le kgatlego go:",
"uls-search-placeholder": "Fetleka leleme"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/oc.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/oc.json
index 271398b2..636a1f1a 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/oc.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/oc.json
@@ -4,7 +4,6 @@
"Cedric31"
]
},
- "uls-select-language": "Causir la lenga",
"uls-region-WW": "Dins lo monde entièr",
"uls-region-SP": "Especial",
"uls-region-AM": "America",
@@ -13,9 +12,10 @@
"uls-region-AS": "Asia",
"uls-region-ME": "Orient Mejan",
"uls-region-PA": "Pacific",
+ "uls-region-all": "Totas las lengas",
"uls-no-results-found": "Cap de resultat pas trobat",
- "uls-common-languages": "Lengas comunas",
+ "uls-common-languages": "Lengas suggeridas",
"uls-no-results-suggestion-title": "Podètz èsser interessat per :",
- "uls-search-help": "Podètz recercar per nom de lenga, per nom de l'escript, per còde ISO de la lenga, o podètz navigar per region :",
+ "uls-search-help": "Podètz recercar per nom de lenga, per nom de l'escript, per còdi ISO de la lenga, o podètz navigar per region.",
"uls-search-placeholder": "Recèrca de lenga"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/olo.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/olo.json
index f54b1e50..2e89ac8e 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/olo.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/olo.json
@@ -4,7 +4,6 @@
"Ilja.mos"
]
},
- "uls-select-language": "Valliče kieli",
"uls-region-WW": "Muailman lajuine",
"uls-region-SP": "Erikoine",
"uls-region-AM": "Amerikku",
@@ -13,6 +12,7 @@
"uls-region-AS": "Aazii",
"uls-region-ME": "Lähi-idä",
"uls-region-PA": "Okeanii",
+ "uls-region-all": "Kai kielet",
"uls-no-results-found": "Ei löydynyh tuloksii",
"uls-common-languages": "Automuattizesti vallitut kielet",
"uls-no-results-suggestion-title": "Voit olla kiinnostunnuh nämmis kielis:",
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/om.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/om.json
index e04d0a1d..dc05e629 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/om.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/om.json
@@ -4,7 +4,6 @@
"Tumsaa"
]
},
- "uls-select-language": "Afaan filadhu",
"uls-region-WW": "Addunyaalessa",
"uls-region-SP": "Addayaa",
"uls-region-AM": "Ameerikaa",
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/or.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/or.json
index 8b46034a..522cd8f8 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/or.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/or.json
@@ -1,10 +1,11 @@
{
"@metadata": {
"authors": [
- "ଶିତିକଣ୍ଠ ଦାଶ"
+ "ଶିତିକଣ୍ଠ ଦାଶ",
+ "Jnanaranjan Sahu",
+ "Psubhashish"
]
},
- "uls-select-language": "ଭାଷା ବାଛନ୍ତୁ",
"uls-region-WW": "ବିଶ୍ଵବ୍ୟାପୀ",
"uls-region-SP": "ବିଶେଷ",
"uls-region-AM": "ଆମେରିକା",
@@ -13,8 +14,10 @@
"uls-region-AS": "ଏସିଆ",
"uls-region-ME": "ମଧ୍ୟପ୍ରାଚ୍ୟ",
"uls-region-PA": "ପ୍ରଶାନ୍ତ-ମହାସାଗରୀୟ",
+ "uls-region-all": "ସବୁ ଭାଷା",
"uls-no-results-found": "କୌଣସି ଫଳାଫଳ ମିଳିଲା ନାହିଁ",
"uls-common-languages": "ସାଧାରଣ ଭାଷାଗୁଡ଼ିକ",
"uls-no-results-suggestion-title": "ଆପଣ ହୁଏତ ଆଗ୍ରହୀ ହେଇପାରନ୍ତି:",
- "uls-search-placeholder": "ଭାଷା ଖୋଜନ୍ତୁ"
+ "uls-search-help": "ଆପଣ ଭାଷା ନାମ, ଆଇଏସଓ କୋଡ଼, ସକ୍ରିପ୍ଟ ନାମ ହିସାବରେ ଖୋଜି ପାରିବେ, କିମ୍ବା ଅଞ୍ଚାଳ ହିସାବରେ ଦେଖି ପାରିବେ ।",
+ "uls-search-placeholder": "ଭାଷାଟିଏ ଖୋଜନ୍ତୁ"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/os.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/os.json
index 68cff1ab..47d80cbb 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/os.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/os.json
@@ -4,7 +4,6 @@
"Bouron"
]
},
- "uls-select-language": "Æвзагæвзарæн",
"uls-region-WW": "Æппæтдунеон",
"uls-region-SP": "Сӕрмагонд",
"uls-region-AM": "Америкæ",
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/pa.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/pa.json
index 5a2097b5..3078a063 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/pa.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/pa.json
@@ -1,10 +1,10 @@
{
"@metadata": {
"authors": [
- "Babanwalia"
+ "Babanwalia",
+ "Tow"
]
},
- "uls-select-language": "ਭਾਸ਼ਾ ਚੁਣੋ",
"uls-region-WW": "ਵਿਸ਼ਵਵਿਆਪੀ",
"uls-region-SP": "ਖ਼ਾਸ",
"uls-region-AM": "ਅਮਰੀਕਾ",
@@ -14,8 +14,8 @@
"uls-region-ME": "ਮੱਧ ਪੂਰਬ",
"uls-region-PA": "ਪ੍ਰਸ਼ਾਂਤ",
"uls-no-results-found": "ਕੋਈ ਨਤੀਜਾ ਨਹੀਂ ਲੱਭਾ",
- "uls-common-languages": "ਪ੍ਰਚੱਲਤ ਬੋਲੀਆਂ",
+ "uls-common-languages": "ਸੁਝਾਈਆੰ ਭਾਸ਼ਾਵਾੰ",
"uls-no-results-suggestion-title": "ਤੁਹਾਨੂੰ ਇਹਨਾਂ ਵਿੱਚ ਦਿਲਚਸਪੀ ਹੋ ਸਕਦੀ ਹੋ:",
- "uls-search-help": "ਤੁਸੀਂ ਭਾਸ਼ਾ ਦੇ ਨਾਂ, ਲਿਪੀ ਦੇ ਨਾਂ, ਭਾਸ਼ਾ ਦੇ ISO ਕੋਡ ਰਾਹੀਂ ਖੋਜ ਸਕਦੇ ਹੋ ਜਾਂ ਖੇਤਰ ਪੱਖੋਂ ਸਫ਼ੇ ਪਲਟ ਸਕਦੇ ਹੋ:",
+ "uls-search-help": "ਤੁਸੀਂ ਭਾਸ਼ਾ ਦੇ ਨਾਂ, ਲਿਪੀ ਦੇ ਨਾਂ, ਭਾਸ਼ਾ ਦੇ ISO ਕੋਡ ਰਾਹੀਂ ਖੋਜ ਸਕਦੇ ਹੋ ਜਾਂ ਖੇਤਰ ਪੱਖੋਂ ਸਫ਼ੇ ਪਲਟ ਸਕਦੇ ਹੋ।",
"uls-search-placeholder": "ਭਾਸ਼ਾ ਖੋਜ"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/pl.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/pl.json
index 7188785c..c23a05fa 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/pl.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/pl.json
@@ -7,7 +7,6 @@
"Chrumps"
]
},
- "uls-select-language": "Wybierz język",
"uls-region-WW": "Cały świat",
"uls-region-SP": "Specjalne",
"uls-region-AM": "Ameryka",
@@ -16,8 +15,9 @@
"uls-region-AS": "Azja",
"uls-region-ME": "Bliski Wschód",
"uls-region-PA": "Pacyfik",
+ "uls-region-all": "Wszystkie języki",
"uls-no-results-found": "Brak wyników",
- "uls-common-languages": "Wybrane języki",
+ "uls-common-languages": "Sugerowane języki",
"uls-no-results-suggestion-title": "Być może cię zainteresują te języki:",
"uls-search-help": "Możesz wyszukiwać według nazwy języka, nazwy systemu pisma, kodu ISO języka, lub przeglądać listy według regionów.",
"uls-search-placeholder": "Wyszukiwanie języka"
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/pms.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/pms.json
index d8f2a86d..59c77bf7 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/pms.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/pms.json
@@ -5,7 +5,6 @@
"Dragonòt"
]
},
- "uls-select-language": "Serne la lenga",
"uls-region-WW": "Tut ël mond",
"uls-region-SP": "Special",
"uls-region-AM": "América",
@@ -17,6 +16,6 @@
"uls-no-results-found": "Gnun arzultà trovà",
"uls-common-languages": "Lenghe comun-e",
"uls-no-results-suggestion-title": "It peule esse anteressà a:",
- "uls-search-help": "A peul sërché për nòm ëd lenga, nòm dl'alfabet, còdes ISO dla lenga o a peul navighé për region:",
+ "uls-search-help": "A peul sërché për nòm ëd lenga, nòm dl'alfabet, còdes ISO dla lenga o a peul navighé për region.",
"uls-search-placeholder": "Arserca ëd lenga"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ps.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ps.json
index bf587e9c..a38a7bbd 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ps.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ps.json
@@ -1,10 +1,10 @@
{
"@metadata": {
"authors": [
- "Ahmed-Najib-Biabani-Ibrahimkhel"
+ "Ahmed-Najib-Biabani-Ibrahimkhel",
+ "Baloch Khan"
]
},
- "uls-select-language": "ژبه ټاکل",
"uls-region-WW": "نړېوال",
"uls-region-SP": "ځانگړی",
"uls-region-AM": "امريکا",
@@ -13,9 +13,10 @@
"uls-region-AS": "آسيا",
"uls-region-ME": "منځنی ختيځ",
"uls-region-PA": "غلی سمندر",
+ "uls-region-all": "ټولې ژبې",
"uls-no-results-found": "پايلې و نه موندل شوې",
- "uls-common-languages": "دودې ژبې",
- "uls-no-results-suggestion-title": "کېدای شي تاسې يې لېواله اوسۍ:",
- "uls-search-help": "تاسې د ژبې د نوم له مخې، د سکرېپټ نوم، د ژبې د ISO کوډ له مخې او يا هم د سيمې له مخې پلټنې کړلی شی:",
- "uls-search-placeholder": "د ژبې پلټنه"
+ "uls-common-languages": "وړانديز کړي ژبې",
+ "uls-no-results-suggestion-title": "کېدای شي تاسې يې لېواله اوسئ:",
+ "uls-search-help": "تاسې د ژبې د نوم له مخې، د سکرېپټ نوم، د ژبې د ISO کوډ له مخې او يا هم د سيمې له مخې پلټنې کولی شئ:",
+ "uls-search-placeholder": "د يوې ژبې پلټنه"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/pt-br.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/pt-br.json
index e8cbb993..4104f58c 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/pt-br.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/pt-br.json
@@ -3,10 +3,12 @@
"authors": [
"Tuliouel",
"Amgauna",
- "Webysther"
+ "Webysther",
+ "Cristofer Alves",
+ "TheEduGobi",
+ "Eduardo Addad de Oliveira"
]
},
- "uls-select-language": "Selecionar um idioma",
"uls-region-WW": "Global",
"uls-region-SP": "Especial",
"uls-region-AM": "América",
@@ -15,9 +17,10 @@
"uls-region-AS": "Ásia",
"uls-region-ME": "Oriente Médio",
"uls-region-PA": "Pacífico",
+ "uls-region-all": "Todos os idiomas",
"uls-no-results-found": "Nenhum resultado encontrado",
- "uls-common-languages": "Idiomas comuns",
+ "uls-common-languages": "Idiomas sugeridos",
"uls-no-results-suggestion-title": "Você pode interessar-se por:",
"uls-search-help": "Você pode pesquisar pelo nome da língua, o nome do alfabeto, código ISO da língua, ou você pode procurar por região.",
- "uls-search-placeholder": "Procurar idioma"
+ "uls-search-placeholder": "Procurar um idioma"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/pt.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/pt.json
index d9b9d4b0..c7048a4f 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/pt.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/pt.json
@@ -3,10 +3,12 @@
"authors": [
"Sarilho1",
"Waldir",
- "Ti4goc"
+ "Ti4goc",
+ "Cainamarques",
+ "Vitorvicentevalente",
+ "Amire80"
]
},
- "uls-select-language": "Escolha a língua",
"uls-region-WW": "Global",
"uls-region-SP": "Especiais",
"uls-region-AM": "América",
@@ -15,9 +17,10 @@
"uls-region-AS": "Ásia",
"uls-region-ME": "Médio Oriente",
"uls-region-PA": "Pacífico",
+ "uls-region-all": "Todos os idiomas",
"uls-no-results-found": "Não foram encontrados resultados",
- "uls-common-languages": "Línguas comuns",
+ "uls-common-languages": "Idiomas sugeridos",
"uls-no-results-suggestion-title": "Você pode estar interessado em:",
- "uls-search-help": "Você pode pesquisar pelo nome da língua, o nome do alfabeto, código ISO da língua, ou você pode procurar por região.",
- "uls-search-placeholder": "Procurar língua"
+ "uls-search-help": "Você pode pesquisar pelo nome do idioma, pelo tipo de alfabeto, código ISO do idioma, ou você pode navegar por região.",
+ "uls-search-placeholder": "Pesquisar por idioma"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/qqq.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/qqq.json
index c108c1c6..f66f9f44 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/qqq.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/qqq.json
@@ -6,7 +6,6 @@
"Shirayuki"
]
},
- "uls-select-language": "Language Selector Title.\n{{Identical|Select language}}",
"uls-region-WW": "Label for worldwide languages. They are languages spoken in multiple countries. Eg: English, French, Spanish etc. This label is used in the map region of ULS and as the title of section showing worldwide languages. Translation should not be descriptive.",
"uls-region-SP": "Label for the special languages section. This section may include special custom languages that can be added in run time. It's shown after the Worldwide section.\n\nThe special language is everything that isn't a real language. Like code qqq or qqx.\n{{Identical|Special}}",
"uls-region-AM": "Label for America",
@@ -15,8 +14,9 @@
"uls-region-AS": "Label for Asia",
"uls-region-ME": "Label for Middle East",
"uls-region-PA": "Label for Pacific",
+ "uls-region-all": "Label for all languages in narrow mode, where languages are not split by region.",
"uls-no-results-found": "Title text for 'No results found' section",
- "uls-common-languages": "The ULS tries to guess the langugages that the user is most likely to pick. They are taken from geolocation (languages of the current country according to the IP address), previously selected languages, and the browser's accept-language. The list of these languages appears at the top of the ULS languages list, above the geographical regions. This is the title of that list.",
+ "uls-common-languages": "The ULS tries to guess the langugages that the user is most likely to pick. They are taken from geolocation (languages of the current country according to the IP address), previously selected languages, and the browser's accept-language. The list of these languages appears at the top of the ULS languages list, above the geographical regions. This is the title of that list.\n\nSee also {{msg-mw|Mobile-frontend-languages-structured-overlay-suggested-languages-header}}",
"uls-no-results-suggestion-title": "Title for language suggestion in 'no results found' screen",
"uls-search-help": "Help text for searching.\n\n\"Script name\" is a name of a writing system, such as \"Latin\", \"Cyrillic\", \"Arabic\" etc.",
"uls-search-placeholder": "Placeholder text in search box"
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ro.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ro.json
index a5017706..82df9df2 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ro.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ro.json
@@ -1,10 +1,11 @@
{
"@metadata": {
"authors": [
- "Minisarm"
+ "Minisarm",
+ "Amire80",
+ "Silviu200530"
]
},
- "uls-select-language": "Selectare limbă",
"uls-region-WW": "La nivel mondial",
"uls-region-SP": "Speciale",
"uls-region-AM": "America",
@@ -13,9 +14,10 @@
"uls-region-AS": "Asia",
"uls-region-ME": "Orientul Mijlociu",
"uls-region-PA": "Oceania",
+ "uls-region-all": "Toate limbile",
"uls-no-results-found": "Niciun rezultat găsit",
- "uls-common-languages": "Limbi comune",
+ "uls-common-languages": "Limbi sugerate",
"uls-no-results-suggestion-title": "Ați putea fi interesat de:",
- "uls-search-help": "Puteți căuta după numele limbii, numele scrierii, codul ISO al limbii sau puteți răsfoi în funcție de regiune:",
- "uls-search-placeholder": "Căutare limbă"
+ "uls-search-help": "Puteți căuta după numele limbii, numele scrierii, codul ISO al limbii sau puteți răsfoi în funcție de regiune.",
+ "uls-search-placeholder": "Căutare pentru o limbă"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ru.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ru.json
index 6d4e4518..f4f79aeb 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ru.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ru.json
@@ -5,10 +5,10 @@
"Bouron",
"Eleferen",
"Kaganer",
- "Kopcap94"
+ "Kopcap94",
+ "Okras"
]
},
- "uls-select-language": "Выбор языка",
"uls-region-WW": "Всемирные",
"uls-region-SP": "Специальные",
"uls-region-AM": "Америка",
@@ -17,8 +17,9 @@
"uls-region-AS": "Азия",
"uls-region-ME": "Ближний Восток",
"uls-region-PA": "Океания",
+ "uls-region-all": "Все языки",
"uls-no-results-found": "Не найдено",
- "uls-common-languages": "Автоматически подобранные языки",
+ "uls-common-languages": "Предложенные языки",
"uls-no-results-suggestion-title": "Может быть вас заинтересуют эти языки:",
"uls-search-help": "Вы можете искать по названию языка или письменности, по ISO-коду языка или просмотреть по региону.",
"uls-search-placeholder": "Поиск языка"
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/rup.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/rup.json
index d6233a51..df2ac9bb 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/rup.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/rup.json
@@ -4,7 +4,6 @@
"D'AroemenenZullenNiVergaan"
]
},
- "uls-select-language": "Aleadziri limbâ",
"uls-region-WW": "Tu tutâ lumea",
"uls-region-SP": "Alepțâ",
"uls-region-AM": "Americhie",
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sa.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sa.json
index f8962529..29782ce7 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sa.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sa.json
@@ -4,7 +4,6 @@
"NehalDaveND"
]
},
- "uls-select-language": "भाषा चीयताम्",
"uls-region-WW": "विश्वव्यापी",
"uls-region-SP": "महत्त्वपूर्णम्",
"uls-region-AM": "अमेरिका",
@@ -13,8 +12,10 @@
"uls-region-AS": "जम्बुमहाद्वीपः",
"uls-region-ME": "मध्यभूभागे",
"uls-region-PA": "पॅसिफिक्",
+ "uls-region-all": "सर्वाः भाषाः",
"uls-no-results-found": "परिणामाः न लब्धाः",
- "uls-common-languages": "समान्याः भाषाः",
+ "uls-common-languages": "परामर्षिताः भाषाः",
"uls-no-results-suggestion-title": "एतत् भवते/भवत्यै रोचेत :",
+ "uls-search-help": "भाषाधारेण, लिप्याधारेण, भाषायाः ISO कूटाधारेण, क्षेत्रानुसारं वा भवान्/भवती अन्वेष्टुं शक्नोति ।",
"uls-search-placeholder": "भाषा अन्विष्यताम्"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sc.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sc.json
index 5247c238..0e207f69 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sc.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sc.json
@@ -4,7 +4,6 @@
"L2212"
]
},
- "uls-select-language": "Issèbera sa limba",
"uls-region-WW": "Totu su mundu",
"uls-region-SP": "Ispetziales",
"uls-region-AM": "Amèrica",
@@ -13,9 +12,10 @@
"uls-region-AS": "Àsia",
"uls-region-ME": "Oriènte de mesu.",
"uls-region-PA": "Patzìficu",
+ "uls-region-all": "Totus sas limbas",
"uls-no-results-found": "Mancu unu resurtu agatau",
- "uls-common-languages": "Limbas prus isseberas.",
+ "uls-common-languages": "Limbas impositadas.",
"uls-no-results-suggestion-title": "Podes essere interessadu in:",
- "uls-search-help": "Podes chircare tràmite nùmene de sa limba, nùmene de su script, còdighe ISO de sa limba o navigare tràmite regione:",
- "uls-search-placeholder": "Chirca de sa limba:"
+ "uls-search-help": "Podes chircare pro mèdiu de su nùmene de sa limba, su nùmene de su script, su còdighe ISO de sa limba o navigare pro mèdiu de sa regione:",
+ "uls-search-placeholder": "Chirca una limba:"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sco.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sco.json
index 7af81b09..723d6a7e 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sco.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sco.json
@@ -1,10 +1,10 @@
{
"@metadata": {
"authors": [
- "John Reid"
+ "John Reid",
+ "AmaryllisGardener"
]
},
- "uls-select-language": "Pick yer leid",
"uls-region-WW": "Worldwide",
"uls-region-SP": "Speecial",
"uls-region-AM": "Americae",
@@ -13,9 +13,10 @@
"uls-region-AS": "Asia",
"uls-region-ME": "Middle Eist",
"uls-region-PA": "Paceefic",
+ "uls-region-all": "Aw leids",
"uls-no-results-found": "Nae results foond",
- "uls-common-languages": "Commyn leids",
+ "uls-common-languages": "Suggestit leids",
"uls-no-results-suggestion-title": "Ye micht hae aen intrest in:",
- "uls-search-help": "Ye can rake bi leid name, script name, ISO code o leid or ye can brouse bi region:",
- "uls-search-placeholder": "Leid rake"
+ "uls-search-help": "Ye can sairch bi leid name, script name, ISO code o leid or ye can brouse bi region.",
+ "uls-search-placeholder": "Sairch for a leid"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sdh.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sdh.json
index 0ebf8529..39545b2d 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sdh.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sdh.json
@@ -4,7 +4,6 @@
"Kurdbuddha"
]
},
- "uls-select-language": "ھەڵوژانن زوان",
"uls-region-WW": "جەهانی",
"uls-region-AM": "ئامریکا",
"uls-region-AF": "ئافریقا",
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/shn.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/shn.json
index 01fdb063..301b6e85 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/shn.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/shn.json
@@ -4,7 +4,6 @@
"Saimawnkham"
]
},
- "uls-select-language": "လိူၵ်ႈပၼ် ၽႃႇသႃႇၵႂၢမ်း",
"uls-region-WW": "တင်းၵမ်ႇၽႃႇ",
"uls-region-SP": "ၶိုၵ်ႉတွၼ်း",
"uls-region-AM": "ဢမေႇရိၵ",
@@ -14,8 +13,8 @@
"uls-region-ME": "ပွတ်းၵၢင်တၢင်းဢွၵ်ႇ",
"uls-region-PA": "ပသိၽိၵ်ႉ",
"uls-no-results-found": "ဢမ်ႇႁၼ်ၽွၼ်းလႆႈ",
- "uls-common-languages": "ၽႃႇသႃႇၸႂ်ႉၼမ်",
+ "uls-common-languages": "ၽႃႇသႃႇဢၼ်ၸႂ်ႉၼမ်",
"uls-no-results-suggestion-title": "ၸဝ်ႈၵဝ်ႇၸၢင်ႈၶဝ်ႈၸႂ်ပႃး",
"uls-search-help": "ၸဝ်ႈၵဝ်ႇ ၸၢင်ႈသွၵ်ႈႁႃတင်း ၸိုဝ်ႈၽႃႇသႃႇၵႂၢမ်း၊ ၸိုဝ်ႈ Script, မၢႆ ISO တွၼ်ႈတႃႇ ၽႃႇသႃႇၵႂၢမ်း ဢၼ်ၼၼ် ၸဝ်ႈၵဝ်ႇ ၸၢင်ႈပိုတ်ႇႁႃ တင်း လႅၼ်မိူင်း region",
- "uls-search-placeholder": "သွၵ်ႈႁႃၽႃႇသႃႇၵႂၢမ်း"
+ "uls-search-placeholder": "ၶူၼ်ႉႁႃ တႃႇၽႃႇသႃႇၵႂၢမ်း"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/si.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/si.json
index 9abdf885..16aff783 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/si.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/si.json
@@ -5,7 +5,6 @@
"හරිත"
]
},
- "uls-select-language": "භාෂාව තෝරන්න",
"uls-region-WW": "ලෝක ව්‍යාප්ත",
"uls-region-SP": "විශේෂ",
"uls-region-AM": "ඇමෙරිකාව",
@@ -17,6 +16,6 @@
"uls-no-results-found": "ප්‍රතිඑල හමු නොවුණි",
"uls-common-languages": "පොදු භාෂා",
"uls-no-results-suggestion-title": "ඔබ සමහර විට කැමති වේවි:",
- "uls-search-help": "ඔබට භාෂා නාමය, පිටපත් නාමය, භාෂාවේ අයීඑස්ඕ කේතය මගින් සෙවිය හැක නැතහොත් ඔබට ප්‍රදේශය අනුව සෙවිය හැක:",
+ "uls-search-help": "ඔබට භාෂා නාමය, ස්ක්‍රිප්ට නාමය, භාෂාවේ ISO කේතය මගින් සෙවිය හැක නැතහොත් ඔබට ප්‍රදේශය අනුව බ්‍රවුස් කළ හැක.",
"uls-search-placeholder": "බස සෙවීම"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sk.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sk.json
index bf9dddcb..a8ea3802 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sk.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sk.json
@@ -2,10 +2,10 @@
"@metadata": {
"authors": [
"Rudko",
- "Jaroslav.micek"
+ "Jaroslav.micek",
+ "Amire80"
]
},
- "uls-select-language": "Vyber jazyk",
"uls-region-WW": "Po celom svete",
"uls-region-SP": "Špeciálne",
"uls-region-AM": "Amerika",
@@ -14,6 +14,7 @@
"uls-region-AS": "Ázia",
"uls-region-ME": "Blízky východ",
"uls-region-PA": "Pacifik",
+ "uls-region-all": "Všetky jazyky",
"uls-no-results-found": "Neboli nájdené žiadne výsledky",
"uls-common-languages": "Jazyky",
"uls-no-results-suggestion-title": "Mohlo by Vás zaujímať:",
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sl.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sl.json
index 647908fa..5427d0d3 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sl.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sl.json
@@ -3,10 +3,10 @@
"authors": [
"Dbc334",
"Irena Plahuta",
- "Mateju"
+ "Mateju",
+ "Amire80"
]
},
- "uls-select-language": "Izbor jezika",
"uls-region-WW": "Svetovni jeziki",
"uls-region-SP": "Posebni",
"uls-region-AM": "Amerika",
@@ -15,9 +15,10 @@
"uls-region-AS": "Azija",
"uls-region-ME": "Bližnji vzhod",
"uls-region-PA": "Tihi ocean",
+ "uls-region-all": "Vsi jeziki",
"uls-no-results-found": "Ni zadetkov",
- "uls-common-languages": "Splošni jeziki",
+ "uls-common-languages": "Predlagani jeziki",
"uls-no-results-suggestion-title": "Morda vas zanima:",
- "uls-search-help": "Iščete lahko po imenu jezika, imenu pisave, jezikovni kodi ISO ali po področju:",
- "uls-search-placeholder": "Iskanje jezikov"
+ "uls-search-help": "Iščete lahko po imenu jezika, imenu pisave, jezikovni kodi ISO ali po področju.",
+ "uls-search-placeholder": "Poiščite jezik"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sq.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sq.json
index c7f7b3a9..c6feaf8d 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sq.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sq.json
@@ -2,11 +2,12 @@
"@metadata": {
"authors": [
"Ammartivari",
- "Liridon"
+ "Liridon",
+ "Kosovastar",
+ "Amire80"
]
},
- "uls-select-language": "Zgjidh gjuhën",
- "uls-region-WW": "Botëror",
+ "uls-region-WW": "Në mbarë botën",
"uls-region-SP": "Të veçanta",
"uls-region-AM": "Amerikë",
"uls-region-AF": "Afrikë",
@@ -14,8 +15,9 @@
"uls-region-AS": "Azi",
"uls-region-ME": "Lindje e Mesme",
"uls-region-PA": "Paqësor",
+ "uls-region-all": "Të gjitha gjuhët",
"uls-no-results-found": "Nuk është gjetur asnjë rezultat",
- "uls-common-languages": "Gjuhë e përbashkët",
+ "uls-common-languages": "Gjuhë të sugjeruara",
"uls-no-results-suggestion-title": "Ju mund të jeni të interesuar në:",
"uls-search-help": "Ju mund të kërkoni sipas emrit të gjuhës, emrit të skriptës, kodit ISO të gjuhës ose ju mund të shfletoni sipa rajonit.",
"uls-search-placeholder": "Kërkimi i gjuhës"
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sr-ec.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sr-ec.json
index fb7526aa..27767c4a 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sr-ec.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sr-ec.json
@@ -2,10 +2,10 @@
"@metadata": {
"authors": [
"Rancher",
- "Milicevic01"
+ "Milicevic01",
+ "Amire80"
]
},
- "uls-select-language": "Одабир језика",
"uls-region-WW": "Светски",
"uls-region-SP": "Посебно",
"uls-region-AM": "Америка",
@@ -14,9 +14,10 @@
"uls-region-AS": "Азија",
"uls-region-ME": "Блиски исток",
"uls-region-PA": "Пацифик",
+ "uls-region-all": "Сви језици",
"uls-no-results-found": "Нема резултата",
- "uls-common-languages": "Аутоматски изабрани језици",
+ "uls-common-languages": "Предложени јeзици",
"uls-no-results-suggestion-title": "Можда вас интересује:",
- "uls-search-help": "Можете да тражите по имену језика или писма, по ISO коду језика или пак по региону:",
+ "uls-search-help": "Можете да тражите по имену језика или писма, по ISO коду језика или пак по региону.",
"uls-search-placeholder": "Претрага језика"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sr-el.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sr-el.json
index c72afe8b..a6d724bb 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sr-el.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sr-el.json
@@ -2,10 +2,10 @@
"@metadata": {
"authors": [
"Rancher",
- "Milicevic01"
+ "Milicevic01",
+ "Amire80"
]
},
- "uls-select-language": "Odabir jezika",
"uls-region-WW": "Svetski",
"uls-region-SP": "Posebno",
"uls-region-AM": "Amerika",
@@ -14,9 +14,10 @@
"uls-region-AS": "Azija",
"uls-region-ME": "Bliski istok",
"uls-region-PA": "Pacifik",
+ "uls-region-all": "Svi jezici",
"uls-no-results-found": "Nema rezultata",
- "uls-common-languages": "Automatski izabrani jezici",
+ "uls-common-languages": "Predloženi jezici",
"uls-no-results-suggestion-title": "Možda vas interesuje:",
- "uls-search-help": "Možete da tražite po imenu jezika ili pisma, po ISO kodu jezika ili pak po regionu:",
+ "uls-search-help": "Možete da tražite po imenu jezika ili pisma, po ISO kodu jezika ili pak po regionu.",
"uls-search-placeholder": "Pretraga jezika"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sv.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sv.json
index 65d5c72b..047d7962 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sv.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sv.json
@@ -3,10 +3,10 @@
"authors": [
"Cybjit",
"WikiPhoenix",
- "Jopparn"
+ "Jopparn",
+ "Johan"
]
},
- "uls-select-language": "Välj språk",
"uls-region-WW": "Världsomfattande",
"uls-region-SP": "Speciella",
"uls-region-AM": "Amerika",
@@ -15,9 +15,10 @@
"uls-region-AS": "Asien",
"uls-region-ME": "Mellanöstern",
"uls-region-PA": "Stilla havet",
+ "uls-region-all": "Alla språk",
"uls-no-results-found": "Inga resultat hittades",
- "uls-common-languages": "Vanliga språk",
+ "uls-common-languages": "Föreslagna språk",
"uls-no-results-suggestion-title": "Du kan vara intresserad av:",
"uls-search-help": "Du kan söka efter språkets namn, skriptnamn, ISO-kod för språket eller bläddra efter region.",
- "uls-search-placeholder": "Språksökning"
+ "uls-search-placeholder": "Sök efter ett språk"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sw.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sw.json
index ceb65864..641d2996 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sw.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sw.json
@@ -2,10 +2,10 @@
"@metadata": {
"authors": [
"Lloffiwr",
- "Muddyb Blast Producer"
+ "Muddyb Blast Producer",
+ "Muddyb"
]
},
- "uls-select-language": "Chagua lugha",
"uls-region-WW": "Dunia nzima",
"uls-region-SP": "Maalumu",
"uls-region-AM": "Marekani",
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ta.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ta.json
index 363f926d..4a1bdb37 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ta.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ta.json
@@ -4,10 +4,10 @@
"Kanags",
"Logicwiki",
"Santhosh.thottingal",
- "ElangoRamanujam"
+ "ElangoRamanujam",
+ "Rakeshonwiki"
]
},
- "uls-select-language": "மொழி தேர்வு",
"uls-region-WW": "உலகளாவிய",
"uls-region-SP": "சிறப்பு",
"uls-region-AM": "அமெரிக்கா",
@@ -16,9 +16,10 @@
"uls-region-AS": "ஆசியா",
"uls-region-ME": "மத்திய கிழக்கு",
"uls-region-PA": "பசிபிக்",
+ "uls-region-all": "அனைத்து மொழிகள்",
"uls-no-results-found": "முடிவுகள் எதுவும் காணப்படவில்லை",
"uls-common-languages": "பொதுவான மொழிகள்",
"uls-no-results-suggestion-title": "நீங்கள் இவற்றில் ஆர்வமாக இருக்கலாம்:",
"uls-search-help": "மொழியின் பெயர், எழுத்து வடிவம், ISO குறியீடு முலம் தேடலாம் அல்லது பகுதிவாரியாக உலவலாம்",
- "uls-search-placeholder": "மொழி தேடு"
+ "uls-search-placeholder": "மொழி தேடல்"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/te.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/te.json
index 1c4a86da..b4380437 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/te.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/te.json
@@ -2,10 +2,10 @@
"@metadata": {
"authors": [
"JVRKPRASAD",
- "Veeven"
+ "Veeven",
+ "WP MANIKHANTA"
]
},
- "uls-select-language": "భాషను ఎంచుకోండి",
"uls-region-WW": "ప్రపంచవ్యాప్తం",
"uls-region-SP": "ప్రత్యేకం",
"uls-region-AM": "అమెరికా",
@@ -14,9 +14,10 @@
"uls-region-AS": "ఆసియా",
"uls-region-ME": "మధ్య తూర్పు",
"uls-region-PA": "పసిఫిక్",
+ "uls-region-all": "అన్ని భాషలు",
"uls-no-results-found": "ఫలితాలేమీ దొరకలేదు",
- "uls-common-languages": "సామాన్య భాషలు",
+ "uls-common-languages": "సూచించిన భాషలు",
"uls-no-results-suggestion-title": "మీకు దీనిలో ఆసక్తి ఉండవచ్చు:",
- "uls-search-help": "మీరు భాష పేరు, స్క్రిప్ట్ పేరు, భాష యొక్క ISO కోడ్ ద్వారా శోధించవచ్చు లేదా మీరు ప్రాంతము ద్వారా బ్రౌజ్ చెయ్యవచ్చు(ను):",
+ "uls-search-help": "మీరు భాష పేరు, లిపి పేరు, భాష యొక్క ISO కోడ్ ద్వారా శోధించవచ్చు లేదా మీరు ప్రాంతము ద్వారా బ్రౌజ్ చెయ్యవచ్చు(ను):",
"uls-search-placeholder": "భాష కొరకు వెతకండి"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/th.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/th.json
index b4ee879e..b4640044 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/th.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/th.json
@@ -1,10 +1,10 @@
{
"@metadata": {
"authors": [
- "Octahedron80"
+ "Octahedron80",
+ "Pon44695"
]
},
- "uls-select-language": "เลือกภาษา",
"uls-region-WW": "ทั่วโลก",
"uls-region-SP": "พิเศษ",
"uls-region-AM": "อเมริกา",
@@ -13,9 +13,10 @@
"uls-region-AS": "เอเชีย",
"uls-region-ME": "ตะวันออกกลาง",
"uls-region-PA": "แปซิฟิก",
+ "uls-region-all": "ทุกภาษา",
"uls-no-results-found": "ไม่พบผลลัพธ์",
- "uls-common-languages": "ภาษาสามัญ",
+ "uls-common-languages": "ภาษาที่แนะนำ",
"uls-no-results-suggestion-title": "คุณอาจสนใจใน:",
- "uls-search-help": "คุณสามารถค้นหาด้วยชื่อภาษา ชื่ออักษร รหัส ISO ของภาษา หรือสามารถเรียกดูตามภูมิภาค:",
+ "uls-search-help": "คุณสามารถค้นหาด้วยชื่อภาษา ชื่ออักษร รหัส ISO ของภาษา หรือสามารถเรียกดูตามภูมิภาค",
"uls-search-placeholder": "ค้นหาภาษา"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/tly.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/tly.json
index c2aa29dc..1a590c51 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/tly.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/tly.json
@@ -5,12 +5,18 @@
"Гусейн"
]
},
- "uls-select-language": "Зывони выжније",
- "uls-region-AM": "Америка",
- "uls-region-AF": "Африка",
- "uls-region-EU": "Авропа",
+ "uls-region-WW": "Һәммәдынјо",
+ "uls-region-SP": "Хысуси",
+ "uls-region-AM": "Америкә",
+ "uls-region-AF": "Африкә",
+ "uls-region-EU": "Авропә",
+ "uls-region-AS": "Асијә",
+ "uls-region-ME": "Незә Шәрғ",
+ "uls-region-PA": "Океанијә",
+ "uls-region-all": "Һәммәј зывонон",
"uls-no-results-found": "Һичи пәјдо быәни",
- "uls-common-languages": "Выжнијә быә зывонон",
+ "uls-common-languages": "Товсијә кардә быә зывонон",
"uls-no-results-suggestion-title": "Бәзне бе ки бо шымә марағинин ын зывонон:",
+ "uls-search-help": "Шымә бәзнејон де зывони номи ја нывыштәј нәве, де зывони ISO-коди ја де вилојәти дијә карде.",
"uls-search-placeholder": "Зывони ныве"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/tr.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/tr.json
index f9067071..d847781d 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/tr.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/tr.json
@@ -3,10 +3,13 @@
"authors": [
"Emperyan",
"Erdemaslancan",
- "Sadrettin"
+ "Sadrettin",
+ "Kumkumuk",
+ "Marmase",
+ "MrSchipunov",
+ "1917 Ekim Devrimi"
]
},
- "uls-select-language": "Dil Seçin",
"uls-region-WW": "Dünya çapında",
"uls-region-SP": "Özel",
"uls-region-AM": "Amerika",
@@ -15,9 +18,10 @@
"uls-region-AS": "Asya",
"uls-region-ME": "Orta Doğu",
"uls-region-PA": "Pasifik",
+ "uls-region-all": "Tüm diller",
"uls-no-results-found": "Sonuç bulunamadı",
- "uls-common-languages": "Ortak diller",
+ "uls-common-languages": "Önerilen diller",
"uls-no-results-suggestion-title": "İlginizi çekebilir:",
- "uls-search-help": "Dil adına, betik adına, dilin ISO koduna göre arama yapabilirsiniz ya da bölgeye göre tarayabilirsiniz:",
- "uls-search-placeholder": "Dil ara"
+ "uls-search-help": "Dil adına, betik adına, dilin ISO koduna göre arama yapabilirsiniz ya da bölgeye göre tarayabilirsiniz.",
+ "uls-search-placeholder": "Bu dilde ara"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/tt-cyrl.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/tt-cyrl.json
index b1e9da29..c18c6317 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/tt-cyrl.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/tt-cyrl.json
@@ -5,7 +5,6 @@
"Ильнар"
]
},
- "uls-select-language": "Тел сайлау",
"uls-region-WW": "Бөтендөнья",
"uls-region-SP": "Махсус",
"uls-region-AM": "Америка",
@@ -14,9 +13,10 @@
"uls-region-AS": "Азия",
"uls-region-ME": "Якын Көнчыгыш",
"uls-region-PA": "Океания",
+ "uls-region-all": "Барлык телләр",
"uls-no-results-found": "Бернидә табылмады",
- "uls-common-languages": "Автоматик сайланган телләр",
+ "uls-common-languages": "Тәкъдим ителгән телләр",
"uls-no-results-suggestion-title": "Бәлки сезне бу телләр кызыксындырыр:",
- "uls-search-help": "Телнең исеме яисә әлифбасы, телнең ISO-коды яки өлкәсе буенча эзләргә мөмкин:",
+ "uls-search-help": "Сез телнең исеме яисә әлифбасы, телнең ISO-коды яки өлкәсе буенча эзли аласыз.",
"uls-search-placeholder": "Эзләү теле"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/tzm.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/tzm.json
index 41703dba..b6f6c016 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/tzm.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/tzm.json
@@ -4,7 +4,6 @@
"Tifinaghes"
]
},
- "uls-select-language": "ⵙⵜⵉ ⵜⵓⵜⵍⴰⵢⵜ",
"uls-region-WW": "ⵎⴰⵕⵕⴰ ⴰⵎⴰⴹⴰⵍ",
"uls-region-AM": "ⴰⵎⵔⵉⴽⴰ",
"uls-region-AF": "ⵉⴼⵔⵉⵇⵢⴰ",
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/udm.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/udm.json
index 10f618ce..25c47d2b 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/udm.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/udm.json
@@ -1,15 +1,20 @@
{
"@metadata": {
"authors": [
- "AlnashPiyash2"
+ "AlnashPiyash2",
+ "Wadorgurt"
]
},
- "uls-select-language": "Кылэз быръён",
+ "uls-region-WW": "Быдэс дуннеысь",
+ "uls-region-SP": "Нимысьтыз",
"uls-region-AM": "Америка",
"uls-region-AF": "Африка",
"uls-region-EU": "Европа",
"uls-region-AS": "Азия",
+ "uls-region-ME": "Матысь Восток",
"uls-region-PA": "Океания",
+ "uls-region-all": "Вань кылъёс",
"uls-no-results-found": "Шедьтэмын ӧвӧл",
+ "uls-common-languages": "Ӵектэм кылъёс",
"uls-search-placeholder": "Кылэз утчан"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ug-arab.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ug-arab.json
index 1423a162..76779fbc 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ug-arab.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ug-arab.json
@@ -1,10 +1,10 @@
{
"@metadata": {
"authors": [
- "Tel'et"
+ "Tel'et",
+ "Uzdil"
]
},
- "uls-select-language": "تىل تاللاڭ",
"uls-region-WW": "دۇنيادا",
"uls-region-SP": "ئالاھىدە",
"uls-region-AM": "ئامېرىكا",
@@ -13,9 +13,10 @@
"uls-region-AS": "ئاسىيا",
"uls-region-ME": "ئوتتۇرا شەرق",
"uls-region-PA": "ئاتلانتىك",
+ "uls-region-all": "بارلىق تىللار",
"uls-no-results-found": "نەتىجە تېپىلمىدى",
- "uls-common-languages": "ئورتاق تىللار",
+ "uls-common-languages": "تەۋسىيە تىللار",
"uls-no-results-suggestion-title": "سىزنى بەلكىم قىزىقتۇرۇشى مۇمكىن:",
"uls-search-help": "سىز تىل نامى بويىچە، يېزىق شەكلى نامى بويىچە، تىلنىڭ ISO كودى بويىچە ئىزدىيەلەيسىز ياكى رايون بويىچە كۆرەلەيسىز:",
- "uls-search-placeholder": "تىل ئىزدە"
+ "uls-search-placeholder": "تىل ئىزدەش"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/uk.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/uk.json
index 5491c174..8a087bb4 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/uk.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/uk.json
@@ -3,10 +3,11 @@
"authors": [
"Andriykopanytsia",
"Base",
- "Alex Khimich"
+ "Alex Khimich",
+ "Piramidion",
+ "Amire80"
]
},
- "uls-select-language": "Оберіть мову",
"uls-region-WW": "Всесвітні",
"uls-region-SP": "Спеціальні",
"uls-region-AM": "Америка",
@@ -15,9 +16,10 @@
"uls-region-AS": "Азія",
"uls-region-ME": "Близький Схід",
"uls-region-PA": "Океанія",
+ "uls-region-all": "Усі мови",
"uls-no-results-found": "Не знайдено результатів",
- "uls-common-languages": "Поширені мови",
+ "uls-common-languages": "Пропоновані мови",
"uls-no-results-suggestion-title": "Ви можете бути зацікавленими у:",
"uls-search-help": "Ви можете шукати за назвою мови або писемності, ISO-коду мови, або можете вказати регіон.",
- "uls-search-placeholder": "Мова пошуку"
+ "uls-search-placeholder": "Пошук мови"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ur.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ur.json
index eef6eba0..49e7fba8 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ur.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ur.json
@@ -1,21 +1,22 @@
{
"@metadata": {
"authors": [
- "Obaid Raza"
+ "Obaid Raza",
+ "Muhammad Shuaib"
]
},
- "uls-select-language": "زبان کا انتخاب کریں",
"uls-region-WW": "دنیا بھر میں",
"uls-region-SP": "خاص",
- "uls-region-AM": "امریکہ",
+ "uls-region-AM": "امریکا",
"uls-region-AF": "افریقہ",
"uls-region-EU": "یورپ",
"uls-region-AS": "ایشیا",
"uls-region-ME": "مشرق وسطی",
- "uls-region-PA": "بحرالکاہل",
+ "uls-region-PA": "بحر الکاہل",
+ "uls-region-all": "تمام زبانیں",
"uls-no-results-found": "مطلوبہ نتائج نہیں ملے",
- "uls-common-languages": "عمومی زبانیں",
- "uls-no-results-suggestion-title": "آپ کو ان میں دلچسپی ہو سکتی ہے:",
- "uls-search-help": "آپ زبان کے نام، اسکرپٹ، زبان کے آئی ایس او رمز سے بھی تلاش کر سکتے ہیں،یابلحاظ خطہ بھی ڈھونڈ سکتے ہیں:",
+ "uls-common-languages": "تجویز کردہ زبانیں",
+ "uls-no-results-suggestion-title": "شاید آپ ان میں دلچسپی لیں:",
+ "uls-search-help": "آپ زبان کے نام، اسکرپٹ، زبان کے آئی ایس او رمز کے ذریعہ تلاش کر سکتے ہیں، یا خطہ وار بھی ڈھونڈ سکتے ہیں۔",
"uls-search-placeholder": "زبان تلاش کریں"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/uz.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/uz.json
index 2fd692e7..3a852e46 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/uz.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/uz.json
@@ -8,7 +8,6 @@
"Таржимон"
]
},
- "uls-select-language": "Tilni tanlash",
"uls-region-WW": "Butun jahon",
"uls-region-SP": "Maxsus",
"uls-region-AM": "Amerika",
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/vec.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/vec.json
index fbd70aa0..5880137e 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/vec.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/vec.json
@@ -4,18 +4,18 @@
"GatoSelvadego"
]
},
- "uls-select-language": "Sełesiona lengua",
"uls-region-WW": "Tuto el mondo",
- "uls-region-SP": "Speciałi",
+ "uls-region-SP": "Speciaƚi",
"uls-region-AM": "Mèrica",
"uls-region-AF": "Àfrica",
"uls-region-EU": "Eoropa",
"uls-region-AS": "Axia",
"uls-region-ME": "Levante mexan",
"uls-region-PA": "Pasifego",
+ "uls-region-all": "Tute ƚe ƚengue",
"uls-no-results-found": "Nisun rixultado",
- "uls-common-languages": "Lengue pì sielte",
+ "uls-common-languages": "Lengue sugerìe",
"uls-no-results-suggestion-title": "Te pol èsar interesà a:",
- "uls-search-help": "Xe posibiłe sercar par nome, nome del script, còdexe ISO de ła lengua o se pol navegar par region:",
- "uls-search-placeholder": "Serca lengua"
+ "uls-search-help": "Xe posibiƚe sercar par nòme, nòme del script, còdexe ISO de ƚa lengua o se pol navegar par region.",
+ "uls-search-placeholder": "Serca na lengua"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/vep.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/vep.json
index 4a4ceb9d..f7ab66bc 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/vep.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/vep.json
@@ -4,7 +4,6 @@
"Игорь Бродский"
]
},
- "uls-select-language": "Valita kel'",
"uls-region-WW": "Kaikjal",
"uls-region-SP": "Specialine",
"uls-region-AM": "Amerik",
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/vi.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/vi.json
index 61c225a0..6e51c5e2 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/vi.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/vi.json
@@ -5,7 +5,6 @@
"Tuankiet65"
]
},
- "uls-select-language": "Chọn ngôn ngữ",
"uls-region-WW": "Toàn cầu",
"uls-region-SP": "Đặc biệt",
"uls-region-AM": "Châu Mỹ",
@@ -14,9 +13,10 @@
"uls-region-AS": "Châu Á",
"uls-region-ME": "Trung Đông",
"uls-region-PA": "Châu Đại Dương",
+ "uls-region-all": "Tất cả các ngôn ngữ",
"uls-no-results-found": "Không tìm thấy kết quả",
- "uls-common-languages": "Ngôn ngữ thông dụng",
+ "uls-common-languages": "Ngôn ngữ gợi ý",
"uls-no-results-suggestion-title": "Bạn có thể quan tâm:",
- "uls-search-help": "Bạn có thể tìm kiếm theo tên ngôn ngữ, tên hệ thống chữ viết, hay mã ISO của ngôn ngữ hoặc duyệt theo khu vực:",
+ "uls-search-help": "Bạn có thể tìm kiếm theo tên ngôn ngữ, tên hệ thống chữ viết, hay mã ISO của ngôn ngữ hoặc duyệt theo khu vực.",
"uls-search-placeholder": "Tìm kiếm ngôn ngữ"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/war.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/war.json
index 7427f105..3370b6a9 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/war.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/war.json
@@ -2,10 +2,10 @@
"@metadata": {
"authors": [
"Harvzsf",
- "Wiki indio"
+ "Wiki indio",
+ "JinJian"
]
},
- "uls-select-language": "Pili-a an Pinulongan",
"uls-region-WW": "ha Kalibutan",
"uls-region-SP": "Pinaurog",
"uls-region-AM": "Amerika",
@@ -18,5 +18,5 @@
"uls-common-languages": "Mga komun o ginsasaroan nga mga pinulongan",
"uls-no-results-suggestion-title": "Bangin ka ma-intersado hin:",
"uls-search-help": "Puyde ka magbiling ha kanan ngaran han pinulongan, ngaran han paagi hin pagsurat, ISO nga kodigo han pinulongan o puyde ka magdalikyat ha kanan rehiyon",
- "uls-search-placeholder": "Paghanap han yinaknan"
+ "uls-search-placeholder": "Pagbiling hin yinaknan"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/zea.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/zea.json
index a4e51c76..a5a492d2 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/zea.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/zea.json
@@ -1,7 +1,8 @@
{
"@metadata": {
"authors": [
- "Robin0van0der0vliet"
+ "Robin0van0der0vliet",
+ "Robin van der Vliet"
]
},
"uls-region-WW": "Waereldwied",
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/zh-hans.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/zh-hans.json
index 3340a188..09bf6bd2 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/zh-hans.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/zh-hans.json
@@ -6,7 +6,6 @@
"Liuxinyu970226"
]
},
- "uls-select-language": "选择语言",
"uls-region-WW": "世界各地",
"uls-region-SP": "特别",
"uls-region-AM": "美洲",
@@ -15,9 +14,10 @@
"uls-region-AS": "亚洲",
"uls-region-ME": "中东",
"uls-region-PA": "太平洋",
+ "uls-region-all": "所有语言",
"uls-no-results-found": "无搜索结果",
- "uls-common-languages": "常用语言",
+ "uls-common-languages": "建议的语言",
"uls-no-results-suggestion-title": "您可能感兴趣:",
"uls-search-help": "您可以按语言名称、文字名称、语言的ISO代码搜索,或按地区浏览。",
- "uls-search-placeholder": "语言搜索"
+ "uls-search-placeholder": "搜索一种语言"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/zh-hant.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/zh-hant.json
index e4a6e936..5c816885 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/zh-hant.json
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/zh-hant.json
@@ -2,10 +2,11 @@
"@metadata": {
"authors": [
"Justincheng12345",
- "Simon Shek"
+ "Simon Shek",
+ "LNDDYL",
+ "Kly"
]
},
- "uls-select-language": "選擇語言",
"uls-region-WW": "全世界",
"uls-region-SP": "特別",
"uls-region-AM": "美洲",
@@ -14,9 +15,10 @@
"uls-region-AS": "亞洲",
"uls-region-ME": "中東",
"uls-region-PA": "太平洋",
+ "uls-region-all": "所有語言",
"uls-no-results-found": "找不到任何結果",
- "uls-common-languages": "常用語言",
+ "uls-common-languages": "推薦語言",
"uls-no-results-suggestion-title": "您可能感興趣:",
- "uls-search-help": "您可以按語言名稱、程式碼名稱、語言ISO代碼搜索,或您亦可按區域瀏覽:",
- "uls-search-placeholder": "搜尋語言"
+ "uls-search-help": "您可以按語言名稱、程式碼名稱、語言 ISO 代碼搜尋,或您亦可按區域瀏覽。",
+ "uls-search-placeholder": "搜尋一種語言"
}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/images/close.png b/MLEB/UniversalLanguageSelector/lib/jquery.uls/images/close.png
deleted file mode 100644
index 84631c3d..00000000
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/images/close.png
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/images/close.svg b/MLEB/UniversalLanguageSelector/lib/jquery.uls/images/close.svg
deleted file mode 100644
index b39a0ff7..00000000
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/images/close.svg
+++ /dev/null
@@ -1 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?><svg xmlns="http://www.w3.org/2000/svg" width="13.592" height="13.592"><g transform="translate(-578.659 -309.301)" fill="#555"><rect width="3.204" height="16.018" x="188.862" y="629.484" transform="rotate(-45)"/><rect width="3.204" height="16.018" x="-639.095" y="182.455" transform="matrix(-.707 -.707 .707 -.707 0 0)"/></g></svg> \ No newline at end of file
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/images/icon-language.png b/MLEB/UniversalLanguageSelector/lib/jquery.uls/images/icon-language.png
deleted file mode 100644
index d1f13178..00000000
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/images/icon-language.png
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/images/icon-language.svg b/MLEB/UniversalLanguageSelector/lib/jquery.uls/images/icon-language.svg
deleted file mode 100644
index 9f439beb..00000000
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/images/icon-language.svg
+++ /dev/null
@@ -1 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?><svg xmlns="http://www.w3.org/2000/svg" width="27" height="16"><path fill="#D3E3F4" d="M0 0h11.876v16h-11.876v-16z"/><path fill="#E9E9E9" d="M12.819 0v15.969h10.755c1.085-2.578 1.837-4.991 3.062-8.591l-3.062-7.378h-10.755z"/><path fill="#434343" d="M14.828 4.146c.32.023.639.035.951.035.471 0 .922-.016 1.354-.046l.023-.258.034-.367.081-.711.033-.333.873.058c-.073.577-.133 1.091-.179 1.542 1.116-.119 2.233-.331 3.349-.637l.092.809c-1.078.271-2.251.472-3.521.602-.05.463-.082.968-.098 1.514.524-.187 1.14-.313 1.847-.378.064-.207.136-.461.213-.763l.865.201c-.027.123-.088.315-.184.579.814.104 1.461.34 1.938.711.681.542 1.021 1.252 1.021 2.128 0 .963-.406 1.746-1.221 2.351-.635.47-1.505.784-2.609.94l-.505-.779c.968-.104 1.739-.337 2.317-.7.733-.458 1.101-1.066 1.101-1.823 0-.772-.341-1.363-1.021-1.772-.345-.21-.764-.344-1.256-.401-.604 1.422-1.4 2.598-2.387 3.527.035.352.102.715.201 1.09l-.849.314-.126-.773c-.654.462-1.27.693-1.847.693-.696 0-1.044-.407-1.044-1.222 0-1.104.591-2.103 1.771-2.993.227-.165.532-.352.918-.562.012-.524.046-1.128.104-1.812-.585.046-1.143.069-1.675.069l-.493-.011-.071-.822m2.127 3.384c-.268.161-.545.392-.831.694-.612.619-.94 1.226-.986 1.817l-.017.121.017.138c0 .252.112.378.339.378.492 0 1.02-.258 1.582-.773-.057-.613-.092-1.404-.104-2.375m2.455-.884c-.57.08-1.111.226-1.623.436 0 .883.018 1.581.052 2.093.634-.707 1.158-1.55 1.571-2.529"/><path fill="#1A1A1A" d="M8.517 11.735l-.734-2.409h-3.69l-.734 2.409h-2.313l3.573-10.165h2.625l3.587 10.165h-2.314m-1.246-4.21c-.679-2.183-1.062-3.418-1.149-3.704-.083-.286-.143-.512-.18-.678-.153.59-.589 2.051-1.309 4.382h2.638"/><path fill="#BCBCBC" d="M12.817 13.5v2.5h10.757l.98-2.5h-11.737z"/><path fill="#3692D0" d="M.011 13.511h3.569l2.367-3.116 2.367 3.116h3.57v2.484h-11.873v-2.484z"/></svg> \ No newline at end of file
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/images/search.png b/MLEB/UniversalLanguageSelector/lib/jquery.uls/images/search.png
index 9b58456a..1a10d276 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/images/search.png
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/images/search.png
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/images/search.svg b/MLEB/UniversalLanguageSelector/lib/jquery.uls/images/search.svg
index bd28b5a1..b7af7bb9 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/images/search.svg
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/images/search.svg
@@ -1 +1,4 @@
-<?xml version="1.0" encoding="UTF-8"?><svg xmlns="http://www.w3.org/2000/svg" height="32" width="32"><path fill="#555" d="M3.378 3.372c4.503-4.503 11.806-4.503 16.308 0 4.072 4.072 4.417 10.425 1.123 14.936l11.191 11.191-2.496 2.496-11.191-11.191c-4.51 3.294-10.863 2.949-14.935-1.123-4.503-4.503-4.503-11.806 0-16.308zm2.122 2.122c-3.342 3.342-3.384 8.764-.042 12.107 3.342 3.342 8.806 3.342 12.148 0 3.342-3.342 3.301-8.764-.042-12.107-3.342-3.342-8.723-3.342-12.065 0z"/></svg> \ No newline at end of file
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" id="Layer_1">
+ <path d="M16.4 16.4c1-1.2 1.6-2.7 1.6-4.4 0-3.9-3.1-7-7-7s-7 3.1-7 7 3.1 7 7 7c1.2 0 2.3-.3 3.2-.8L17 21c1.4 1.4 2.5 1.5 4 0l-4.6-4.6zM6 12c0-2.8 2.2-5 5-5s5 2.2 5 5-2.2 5-5 5-5-2.3-5-5z" id="path3" fill="#555"/>
+</svg>
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/src/jquery.uls.core.js b/MLEB/UniversalLanguageSelector/lib/jquery.uls/src/jquery.uls.core.js
index 201d384d..893ae68f 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/src/jquery.uls.core.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/src/jquery.uls.core.js
@@ -24,69 +24,40 @@
var template, ULS;
// Region numbers in id attributes also appear in the langdb.
- /*jshint multistr:true */
+ // eslint-disable-next-line no-multi-str
template = '<div class="grid uls-menu"> \
- <div class="row"> \
- <span id="uls-close" class="uls-icon-close"></span> \
- <div class="uls-title-region seven columns">\
- <h1 data-i18n="uls-select-language" class="uls-title">Select Language</h1>\
- </div>\
- </div>\
<div id="search" class="row uls-search"> \
- <div class="one column">\
+ <div class="uls-search-wrapper"> \
<label class="uls-search-label" for="uls-languagefilter"></label>\
- </div>\
- <div class="ten columns">\
- <div id="uls-search-input-block" class="uls-search-input-block">\
- <input type="text" class="uls-filterinput uls-filtersuggestion" id="uls-filtersuggestion" disabled="true"\
- autocomplete="off" /> <input type="text" class="uls-filterinput uls-languagefilter" id="uls-languagefilter"\
- data-clear="uls-languagefilter-clear" data-suggestion="uls-filtersuggestion"\
- placeholder="Language search" autocomplete="off" />\
+ <div class="uls-search-input-wrapper">\
+ <span class="uls-languagefilter-clear"></span>\
+ <input type="text" class="uls-filterinput uls-filtersuggestion"\
+ disabled="true" autocomplete="off">\
+ <input type="text" class="uls-filterinput uls-languagefilter"\
+ maxlength="40"\
+ data-clear="uls-languagefilter-clear"\
+ data-suggestion="uls-filtersuggestion"\
+ placeholder="Search for a language" autocomplete="off">\
</div>\
</div>\
- <div class="one column">\
- <span id="uls-languagefilter-clear" class="uls-languagefilter-clear"></span>\
- </div>\
</div>\
<div class="row uls-language-list"></div>\
<div class="row" id="uls-settings-block"></div>\
</div>';
- /*jshint multistr:false */
-
- /**
- * Count the number of keys in an object.
- * Works in a cross-browser way.
- * @param {Object} The object.
- */
- function objectLength ( obj ) {
- var count, key;
-
- // Some old browsers don't support Object.keys
- if ( Object.keys ) {
- return Object.keys( obj ).length;
- }
-
- count = 0;
-
- for ( key in obj ) {
- if ( Object.prototype.hasOwnProperty.call( obj, key ) ) {
- count++;
- }
- }
-
- return count;
- }
/**
* ULS Public class definition
+ * @param {Element} element
+ * @param {Object} options
*/
ULS = function ( element, options ) {
+ var code;
this.$element = $( element );
this.options = $.extend( {}, $.fn.uls.defaults, options );
this.$menu = $( template );
this.languages = this.options.languages;
- for ( var code in this.languages ) {
+ for ( code in this.languages ) {
if ( $.uls.data.languages[ code ] === undefined ) {
// Language is unknown to ULS.
delete this.languages[ code ];
@@ -97,9 +68,11 @@
this.top = this.options.top;
this.shown = false;
this.initialized = false;
+ this.shouldRecreate = false;
+ this.menuWidth = this.getMenuWidth();
- this.$languageFilter = this.$menu.find( '#uls-languagefilter' );
- this.$resultsView = this.$menu.find( 'div.uls-language-list' );
+ this.$languageFilter = this.$menu.find( '.uls-languagefilter' );
+ this.$resultsView = this.$menu.find( '.uls-language-list' );
this.render();
this.listen();
@@ -139,18 +112,27 @@
/**
* Calculate the position of ULS
* Returns an object with top and left properties.
- * @returns {Object}
+ * @return {Object}
*/
position: function () {
- var pos;
+ var pos,
+ top = this.top,
+ left = this.left;
+
+ if ( top === undefined ) {
+ pos = $.extend( {}, this.$element.offset(), {
+ height: this.$element[ 0 ].offsetHeight
+ } );
+ top = pos.top + pos.height;
+ }
- pos = $.extend( {}, this.$element.offset(), {
- height: this.$element[ 0 ].offsetHeight
- } );
+ if ( left === undefined ) {
+ left = $( window ).width() / 2 - this.$menu.outerWidth() / 2;
+ }
return {
- top: this.top !== undefined ? this.top : pos.top + pos.height,
- left: this.left !== undefined ? this.left : '25%'
+ top: top,
+ left: left
};
},
@@ -164,12 +146,7 @@
narrow: 'uls-narrow'
};
- this.$menu.addClass( widthClasses[this.getMenuWidth()] );
- this.$menu.css( this.position() );
-
- if ( this.options.compact ) {
- this.$menu.addClass( 'uls-compact' );
- }
+ this.$menu.addClass( widthClasses[ this.menuWidth ] );
if ( !this.initialized ) {
$( 'body' ).prepend( this.$menu );
@@ -177,9 +154,7 @@
this.initialized = true;
}
- // hide any other visible ULS
- $( '.uls-menu' ).hide();
-
+ this.$menu.css( this.position() );
this.$menu.show();
this.$menu.scrollIntoView();
this.shown = true;
@@ -204,6 +179,16 @@
hide: function () {
this.$menu.hide();
this.shown = false;
+
+ this.$menu.removeClass( 'uls-wide uls-medium uls-narrow' );
+
+ if ( this.shouldRecreate ) {
+ this.recreateLanguageFilter();
+ }
+
+ if ( this.options.onCancel ) {
+ this.options.onCancel.call( this );
+ }
},
/**
@@ -215,130 +200,113 @@
},
/**
- * Callback for no results found context.
- */
- noresults: function () {
- this.$resultsView.lcd( 'noResults' );
- },
-
- /**
- * callback for results found context.
+ * Callback for results found context.
*/
success: function () {
this.$resultsView.show();
},
+ createLanguageFilter: function () {
+ var lcd, languagesCount,
+ columnsOptions = {
+ wide: 4,
+ medium: 2,
+ narrow: 1
+ };
+
+ languagesCount = Object.keys( this.options.languages ).length;
+ lcd = this.$resultsView.lcd( {
+ languages: this.languages,
+ columns: columnsOptions[ this.menuWidth ],
+
+ quickList: languagesCount > 12 ? this.options.quickList : [],
+ clickhandler: this.select.bind( this ),
+ showRegions: this.options.showRegions,
+ languageDecorator: this.options.languageDecorator,
+ noResultsTemplate: this.options.noResultsTemplate,
+ itemsPerColumn: this.options.itemsPerColumn,
+ groupByRegion: this.options.groupByRegion
+ } ).data( 'lcd' );
+
+ this.$languageFilter.languagefilter( {
+ lcd: lcd,
+ languages: this.languages,
+ ulsPurpose: this.options.ulsPurpose,
+ searchAPI: this.options.searchAPI,
+ onSelect: this.select.bind( this )
+ } );
+
+ this.$languageFilter.on( 'noresults.uls', lcd.noResults.bind( lcd ) );
+ },
+
+ recreateLanguageFilter: function () {
+ this.$resultsView.removeData( 'lcd' );
+ this.$resultsView.empty();
+ this.$languageFilter.removeData( 'languagefilter' );
+ this.createLanguageFilter();
+
+ this.shouldRecreate = false;
+ },
+
/**
* Bind the UI elements with their event listeners
*/
listen: function () {
- var lcd, columnsOptions, languagesCount,
- uls = this;
-
- columnsOptions = {
- wide: 4,
- medium: 2,
- narrow: 1
- };
-
// Register all event listeners to the ULS here.
- this.$element.on( 'click', $.proxy( this.click, this ) );
+ this.$element.on( 'click', this.click.bind( this ) );
- // Close when clicking on the close button
- this.$menu.find( '#uls-close' ).on( 'click', $.proxy( this.cancel, this ) );
// Don't do anything if pressing on empty space in the ULS
this.$menu.on( 'click', function ( e ) {
e.stopPropagation();
} );
// Handle key press events on the menu
- this.$menu.on( 'keypress', $.proxy( this.keypress, this ) )
- .on( 'keyup', $.proxy( this.keyup, this ) );
-
- if ( this.eventSupported( 'keydown' ) ) {
- this.$menu.on( 'keydown', $.proxy( this.keypress, this ) );
- }
-
- languagesCount = objectLength( this.options.languages );
- lcd = this.$resultsView.lcd( {
- languages: this.languages,
- columns: columnsOptions[ this.getMenuWidth() ],
+ this.$menu.on( 'keydown', this.keypress.bind( this ) );
- quickList: languagesCount > 12 ? this.options.quickList : false,
- clickhandler: $.proxy( this.select, this ),
- source: this.$languageFilter,
- showRegions: this.options.showRegions,
- languageDecorator: this.options.languageDecorator
- } ).data( 'lcd' );
-
- this.$languageFilter.languagefilter( {
- $target: lcd,
- languages: this.languages,
- searchAPI: this.options.searchAPI,
- onSelect: $.proxy( this.select, this )
- } );
+ this.createLanguageFilter();
- // Create region selectors, one per region
- this.regionFilter = new $.uls.RegionSelector( {
- $target: lcd,
- languages: this.languages,
- success: function ( regionfilter ) {
- // Deactivate search filtering
- uls.$languageFilter.languagefilter( 'deactivate' );
+ this.$languageFilter.on( 'resultsfound.uls', this.success.bind( this ) );
- // If it is the WW region, show the quicklist
- if ( regionfilter.regionGroup === 1 ) {
- lcd.quicklist();
- }
+ $( 'html' ).click( this.cancel.bind( this ) );
+ $( window ).resize( $.fn.uls.debounce( this.resize.bind( this ), 250 ) );
+ },
- // Show 'results view' if we are in no results mode
- uls.success();
- },
- noresults: function () {
- uls.$languageFilter.languagefilter( 'clear' );
- }
- } );
+ resize: function () {
+ var menuWidth = this.getMenuWidth();
- this.$languageFilter.on( 'searchclear.uls', $.proxy( this.regionFilter.show, this.regionFilter ) );
- this.$languageFilter.on( 'noresults.uls', $.proxy( this.noresults, this ) );
- this.$languageFilter.on( 'resultsfound.uls', $.proxy( this.success, this ) );
+ if ( this.menuWidth === menuWidth ) {
+ return;
+ }
- $( 'html' ).click( $.proxy( this.cancel, this ) );
+ this.menuWidth = menuWidth;
+ this.shouldRecreate = true;
+ if ( !this.shown ) {
+ this.recreateLanguageFilter();
+ }
},
/**
* On select handler for search results
- * @param langCode
+ * @param {string} langCode
+ * @param {Object} event The jQuery click event
*/
- select: function ( langCode ) {
+ select: function ( langCode, event ) {
this.hide();
- this.$languageFilter.trigger( 'searchclear' );
if ( this.options.onSelect ) {
- this.options.onSelect.call( this, langCode );
+ this.options.onSelect.call( this, langCode, event );
}
},
/**
* On cancel handler for the uls menu
+ * @param {Event} e
*/
- cancel: function () {
- this.hide();
-
- if ( this.options.onCancel ) {
- this.options.onCancel.call( this );
- }
- },
-
- keyup: function ( e ) {
- if ( !this.shown ) {
+ cancel: function ( e ) {
+ if ( e && ( this.$element.is( e.target ) || $.contains( this.$element[ 0 ], e.target ) ) ) {
return;
}
- if ( e.keyCode === 27 ) { // escape
- this.cancel();
- e.preventDefault();
- e.stopPropagation();
- }
+ this.hide();
},
keypress: function ( e ) {
@@ -353,10 +321,7 @@
}
},
- click: function ( e ) {
- e.stopPropagation();
- e.preventDefault();
-
+ click: function () {
if ( this.shown ) {
this.hide();
} else {
@@ -364,39 +329,29 @@
}
},
- eventSupported: function ( eventName ) {
- var isSupported = eventName in this.$menu;
-
- if ( !isSupported ) {
- this.$element.setAttribute( eventName, 'return;' );
- isSupported = typeof this.$element[ eventName ] === 'function';
- }
-
- return isSupported;
- },
-
/**
* Get the panel menu width parameter
- * @return string
+ * @return {string}
*/
getMenuWidth: function () {
- var languagesCount;
+ var languagesCount,
+ screenWidth = document.documentElement.clientWidth;
if ( this.options.menuWidth ) {
return this.options.menuWidth;
}
- languagesCount = objectLength( this.options.languages );
+ languagesCount = Object.keys( this.options.languages ).length;
- if ( languagesCount < 12 ) {
- return 'narrow';
+ if ( screenWidth > 900 && languagesCount >= 48 ) {
+ return 'wide';
}
- if ( languagesCount < 100 ) {
+ if ( screenWidth > 500 && languagesCount >= 24 ) {
return 'medium';
}
- return 'wide';
+ return 'narrow';
},
isMobile: function () {
@@ -424,16 +379,41 @@
};
$.fn.uls.defaults = {
- onSelect: null, // Callback function to be called when a language is selected
- searchAPI: null, // Language search API
- languages: $.uls.data.getAutonyms(), // Languages to be used for ULS, default is all languages
- quickList: null, // Array of language codes or function that returns such
- compact: false, // Show ULS in compact mode
+ // CSS top position for the dialog
+ top: undefined,
+ // CSS left position for the dialog
+ left: undefined,
+ // Callback function when user selects a language
+ onSelect: undefined,
+ // Callback function when the dialog is closed without selecting a language
+ onCancel: undefined,
+ // Callback function when ULS has initialized
+ onReady: undefined,
+ // Callback function when ULS dialog is shown
+ onVisible: undefined,
+ // Languages to be used for ULS, default is all languages
+ languages: $.uls.data.getAutonyms(),
// The options are wide (4 columns), medium (2 columns), and narrow (1 column).
// If not specified, it will be set automatically.
- menuWidth: null,
- showRegions: [ 'WW', 'AM', 'EU', 'ME', 'AF', 'AS', 'PA' ],
- languageDecorator: null // Callback function to be called when a language link is prepared - for custom decoration.
+ menuWidth: undefined,
+ // What is this ULS used for.
+ // Should be set for distinguishing between different instances of ULS
+ // in the same application.
+ ulsPurpose: '',
+ // Used by LCD
+ quickList: [],
+ // Used by LCD
+ showRegions: undefined,
+ // Used by LCD
+ languageDecorator: undefined,
+ // Used by LCD
+ noResultsTemplate: undefined,
+ // Used by LCD
+ itemsPerColumn: undefined,
+ // Used by LCD
+ groupByRegion: undefined,
+ // Used by LanguageFilter
+ searchAPI: undefined
};
// Define a dummy i18n function, if jquery.i18n not integrated.
@@ -441,6 +421,39 @@
$.fn.i18n = function () {};
}
+ /**
+ * Creates and returns a new debounced version of the passed function,
+ * which will postpone its execution, until after wait milliseconds have elapsed
+ * since the last time it was invoked.
+ *
+ * @param {Function} fn Function to be debounced.
+ * @param {Number} wait Wait interval in milliseconds.
+ * @param {boolean} [immediate] Trigger the function on the leading edge of the wait interval,
+ * instead of the trailing edge.
+ * @return {Function} Debounced function.
+ */
+ $.fn.uls.debounce = function ( fn, wait, immediate ) {
+ var timeout;
+
+ return function () {
+ var callNow, self = this,
+ later = function () {
+ timeout = null;
+ if ( !immediate ) {
+ fn.apply( self, arguments );
+ }
+ };
+
+ callNow = immediate && !timeout;
+ clearTimeout( timeout );
+ timeout = setTimeout( later, wait || 100 );
+
+ if ( callNow ) {
+ fn.apply( self, arguments );
+ }
+ };
+ };
+
/*
* Simple scrollIntoView plugin.
* Scrolls the element to the viewport smoothly if it is not already.
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/src/jquery.uls.data.js b/MLEB/UniversalLanguageSelector/lib/jquery.uls/src/jquery.uls.data.js
index 3fb5bdf4..23171cf5 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/src/jquery.uls.data.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/src/jquery.uls.data.js
@@ -1,7 +1,5698 @@
-// Please do not edit. This file is generated from data/langdb.yaml by ulsdata2json.php
-( function ( $ ) {
- 'use strict';
+(function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c="function"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error("Cannot find module '"+i+"'");throw a.code="MODULE_NOT_FOUND",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u="function"==typeof require&&require,i=0;i<t.length;i++)o(t[i]);return o}return r})()({1:[function(require,module,exports){
+module.exports=( function ( $ ) {
$.uls = $.uls || {};
- //noinspection JSHint
- $.uls.data = {"languages":{"aa":["Latn",["AF"],"Qafár af"],"ab":["Cyrl",["EU"],"Аҧсшәа"],"abs":["Latn",["AS"],"Bahasa Ambon"],"ace":["Latn",["AS","PA"],"Acèh"],"acf":["Latn",["AM"],"kwéyòl"],"ady":["Cyrl",["EU","ME"],"Адыгабзэ"],"ady-cyrl":["ady"],"ady-latn":["Latn",["EU","ME"],"Adygabze"],"aeb":["aeb-arab"],"aeb-arab":["Arab",["AF"],"تونسي"],"aeb-latn":["Latn",["AF"],"Tûnsî"],"af":["Latn",["AF"],"Afrikaans"],"ahr":["Deva",["AS"],"अहिराणी"],"ak":["Latn",["AF"],"Akan"],"akz":["Latn",["AM"],"Albaamo innaaɬiilka"],"aln":["Latn",["EU"],"Gegë"],"am":["Ethi",["AF"],"አማርኛ"],"an":["Latn",["EU"],"aragonés"],"ang":["Latn",["EU"],"Ænglisc"],"anp":["Deva",["AS"],"अङ्गिका"],"ar":["Arab",["ME"],"العربية"],"arc":["Syrc",["ME"],"ܐܪܡܝܐ"],"arn":["Latn",["AM"],"mapudungun"],"aro":["Latn",["AM"],"Araona"],"arq":["Arab",["AF"],"جازايرية"],"ary":["Latn",["ME"],"Maġribi"],"arz":["Arab",["ME"],"مصرى"],"as":["Beng",["AS"],"অসমীয়া"],"ase":["Sgnw",["AM"],"American sign language"],"ast":["Latn",["EU"],"asturianu"],"av":["Cyrl",["EU"],"авар"],"avk":["Latn",["WW"],"Kotava"],"ay":["Latn",["AM"],"Aymar aru"],"az":["az-latn"],"az-arab":["Arab",["AS","ME"],"تۆرکجه"],"az-latn":["Latn",["EU","ME"],"azərbaycanca"],"az-cyrl":["Cyrl",["EU","ME"],"азәрбајҹанҹа"],"azb":["az-arab"],"azj":["az-latn"],"ba":["Cyrl",["EU"],"башҡортса"],"ban":["Bali",["AS"],"ᬩᬲᬩᬮᬶ"],"bar":["Latn",["EU"],"Boarisch"],"bat-smg":["sgs"],"bbc-latn":["Latn",["AS"],"Batak Toba"],"bbc-batk":["Batk",["AS"],"Batak Toba"],"bbc":["Latn",["AS"],"Batak Toba"],"bcc":["Arab",["AS","ME"],"جهلسری بلوچی"],"bcl":["Latn",["AS"],"Bikol Central"],"be-tarask":["Cyrl",["EU"],"беларуская (тарашкевіца)"],"be-x-old":["be-tarask"],"be":["Cyrl",["EU"],"беларуская"],"bew":["Latn",["AS"],"Bahasa Betawi"],"bfa":["Latn",["AF"],"Bari"],"bfq":["Taml",["AS"],"படகா"],"bg":["Cyrl",["EU"],"български"],"bgn":["Arab",["AS","ME"],"روچ کپتین بلوچی"],"bh":["Deva",["AS"],"भोजपुरी"],"bho":["Deva",["AS"],"भोजपुरी"],"bi":["Latn",["PA"],"Bislama"],"bjn":["Latn",["AS"],"Bahasa Banjar"],"bm":["Latn",["AF"],"bamanankan"],"bn":["Beng",["AS"],"বাংলা"],"bo":["Tibt",["AS"],"བོད་ཡིག"],"bpy":["Beng",["AS"],"বিষ্ণুপ্রিয়া মণিপুরী"],"bqi":["Arab",["AS","ME"],"بختیاری"],"br":["Latn",["EU"],"brezhoneg"],"brh":["Latn",["ME","AS"],"Bráhuí"],"brx":["Deva",["AS"],"बड़ो"],"bs":["Latn",["EU"],"bosanski"],"bto":["Latn",["AS"],"Iriga Bicolano"],"bug":["Bugi",["AS"],"ᨅᨔ ᨕᨘᨁᨗ"],"bxr":["Cyrl",["AS"],"буряад"],"ca":["Latn",["EU"],"català"],"cbk-zam":["Latn",["AS"],"Chavacano de Zamboanga"],"cdo":["Latn",["AS"],"Mìng-dĕ̤ng-ngṳ̄"],"ce":["Cyrl",["EU"],"нохчийн"],"ceb":["Latn",["AS"],"Cebuano"],"ch":["Latn",["PA"],"Chamoru"],"cho":["Latn",["AM"],"Choctaw"],"chr":["Cher",["AM"],"ᏣᎳᎩ"],"chy":["Latn",["AM"],"Tsetsêhestâhese"],"ciw":["Latn",["AM"],"Ojibwemowin"],"cjy":["cjy-hant"],"cjy-hans":["Hans",["AS"],"晋语(简化字)"],"cjy-hant":["Hant",["AS"],"晉語"],"ckb":["Arab",["ME"],"کوردیی ناوەندی"],"cnh":["Latn",["AS"],"Lai holh"],"co":["Latn",["EU"],"corsu"],"cps":["Latn",["AS"],"Capiceño"],"cr":["Cans",["AM"],"ᓀᐦᐃᔭᐍᐏᐣ"],"cr-cans":["cr"],"cr-latn":["Latn",["AM"],"Nēhiyawēwin"],"crh":["Latn",["EU"],"qırımtatarca"],"crh-cyrl":["Cyrl",["EU"],"къырымтатарджа"],"crh-latn":["crh"],"cs":["Latn",["EU"],"čeština"],"csb":["Latn",["EU"],"kaszëbsczi"],"cu":["Cyrl",["EU"],"словѣньскъ \/ ⰔⰎⰑⰂⰡⰐⰠⰔⰍⰟ"],"cv":["Cyrl",["EU"],"Чӑвашла"],"cy":["Latn",["EU"],"Cymraeg"],"da":["Latn",["EU"],"dansk"],"de-at":["Latn",["EU"],"Österreichisches Deutsch"],"de-ch":["Latn",["EU"],"Schweizer Hochdeutsch"],"de-formal":["Latn",["EU"],"Deutsch (Sie-Form)"],"de":["Latn",["EU"],"Deutsch"],"din":["Latn",["AF"],"Thuɔŋjäŋ"],"diq":["Latn",["EU","AS"],"Zazaki"],"dsb":["Latn",["EU"],"dolnoserbski"],"dtp":["Latn",["AS"],"Dusun Bundu-liwan"],"dty":["Deva",["AS"],"डोटेली"],"dv":["Thaa",["AS"],"ދިވެހިބަސް"],"dz":["Tibt",["AS"],"ཇོང་ཁ"],"ee":["Latn",["AF"],"eʋegbe"],"egl":["Latn",["EU"],"Emiliàn"],"el":["Grek",["EU"],"Ελληνικά"],"eml":["Latn",["EU"],"emiliàn e rumagnòl"],"en-ca":["Latn",["AM"],"Canadian English"],"en-gb":["Latn",["EU","AS","PA"],"British English"],"en":["Latn",["EU","AM","AF","ME","AS","PA","WW"],"English"],"eo":["Latn",["WW"],"Esperanto"],"es-419":["Latn",["AM"],"español de America Latina"],"es-formal":["Latn",["EU","AM","AF","WW"],"español (formal)"],"es":["Latn",["EU","AM","AF","WW"],"español"],"esu":["Latn",["AM"],"Yup'ik"],"et":["Latn",["EU"],"eesti"],"eu":["Latn",["EU"],"euskara"],"ext":["Latn",["EU"],"estremeñu"],"fa":["Arab",["AS","ME"],"فارسی"],"ff":["Latn",["AF"],"Fulfulde"],"fi":["Latn",["EU"],"suomi"],"fil":["tl"],"fit":["Latn",["EU"],"meänkieli"],"fiu-vro":["vro"],"fj":["Latn",["PA"],"Na Vosa Vakaviti"],"fo":["Latn",["EU"],"føroyskt"],"fr":["Latn",["EU","AM","WW"],"français"],"frc":["Latn",["AM"],"français cadien"],"frp":["Latn",["EU"],"arpetan"],"frr":["Latn",["EU"],"Nordfriisk"],"fur":["Latn",["EU"],"furlan"],"fy":["Latn",["EU"],"Frysk"],"ga":["Latn",["EU"],"Gaeilge"],"gag":["Latn",["EU"],"Gagauz"],"gah":["Latn",["AS"],"Alekano"],"gan-hans":["Hans",["AS"],"赣语(简体)"],"gan-hant":["gan"],"gan":["Hant",["AS"],"贛語"],"gbz":["Latn",["AS"],"Dari-e Mazdeyasnā"],"gcf":["Latn",["AM"],"Guadeloupean Creole French"],"gd":["Latn",["EU"],"Gàidhlig"],"gl":["Latn",["EU"],"galego"],"glk":["Arab",["AS","ME"],"گیلکی"],"gn":["Latn",["AM"],"Avañe'ẽ"],"gom":["gom-deva"],"gom-deva":["Deva",["AS"],"गोवा कोंकणी"],"gom-latn":["Latn",["AS"],"Gova Konknni"],"got":["Goth",["EU"],"𐌲𐌿𐍄𐌹𐍃𐌺"],"grc":["Grek",["EU"],"Ἀρχαία ἑλληνικὴ"],"gsw":["Latn",["EU"],"Alemannisch"],"gu":["Gujr",["AS"],"ગુજરાતી"],"guc":["Latn",["AM"],"Wayúu"],"gur":["Latn",["AF"],"Gurenɛ"],"gv":["Latn",["EU"],"Gaelg"],"ha-arab":["Arab",["AF"],"هَوُسَ"],"ha-latn":["Latn",["AF"],"Hausa"],"ha":["ha-latn"],"hak":["Latn",["AS"],"Hak-kâ-fa"],"haw":["Latn",["AM","PA"],"Hawai`i"],"he":["Hebr",["ME"],"עברית"],"hi":["Deva",["AS"],"हिन्दी"],"hif":["Latn",["PA","AS"],"Fiji Hindi"],"hif-deva":["Deva",["AS"],"फ़ीजी हिन्दी"],"hif-latn":["hif"],"hil":["Latn",["AS"],"Ilonggo"],"hne":["Deva",["AS"],"छत्तीसगढ़ी"],"ho":["Latn",["PA"],"Hiri Motu"],"hr":["Latn",["EU"],"hrvatski"],"hrx":["Latn",["AM"],"Hunsrik"],"hsb":["Latn",["EU"],"hornjoserbsce"],"hsn":["Hans",["AS"],"湘语"],"ht":["Latn",["AM"],"Kreyòl ayisyen"],"hu-formal":["Latn",["EU"],"Magyar (magázó)"],"hu":["Latn",["EU"],"magyar"],"hy":["Armn",["EU","ME"],"Հայերեն"],"hz":["Latn",["AF"],"Otsiherero"],"ia":["Latn",["WW"],"interlingua"],"id":["Latn",["AS"],"Bahasa Indonesia"],"ie":["Latn",["WW"],"Interlingue"],"ig":["Latn",["AF"],"Igbo"],"ii":["Yiii",["AS"],"ꆇꉙ"],"ik":["Latn",["AM"],"Iñupiak"],"ike-cans":["Cans",["AM"],"ᐃᓄᒃᑎᑐᑦ"],"ike-latn":["Latn",["AM"],"inuktitut"],"ilo":["Latn",["AS"],"Ilokano"],"inh":["Cyrl",["EU"],"ГӀалгӀай"],"io":["Latn",["WW"],"Ido"],"is":["Latn",["EU"],"íslenska"],"it":["Latn",["EU"],"italiano"],"iu":["Cans",["AM"],"ᐃᓄᒃᑎᑐᑦ"],"ja":["Jpan",["AS"],"日本語"],"jam":["Latn",["AM"],"Patois"],"jbo":["Latn",["WW"],"lojban"],"jdt":["jdt-cyrl"],"jdt-cyrl":["Cyrl",["EU","AS"],"жугьури"],"jut":["Latn",["EU"],"jysk"],"jv":["Latn",["AS","PA"],"Basa Jawa"],"jv-java":["Java",["AS","PA"],"ꦧꦱꦗꦮ"],"ka":["Geor",["EU"],"ქართული"],"kaa":["Latn",["AS"],"Qaraqalpaqsha"],"kab":["Latn",["AF","EU"],"Taqbaylit"],"kac":["Latn",["AS"],"Jinghpaw"],"kbd-cyrl":["kbd"],"kbd-latn":["Latn",["EU"],"Qabardjajəbza"],"kbd":["Cyrl",["EU","ME"],"Адыгэбзэ"],"kea":["Latn",["AF"],"Kabuverdianu"],"kg":["Latn",["AF"],"Kongo"],"kgp":["Latn",["AM"],"Kaingáng"],"khw":["Arab",["ME","AS"],"کھوار"],"ki":["Latn",["AF"],"Gĩkũyũ"],"kiu":["Latn",["EU","ME"],"Kırmancki"],"kj":["Latn",["AF"],"Kwanyama"],"kjh":["Cyrl",["AS"],"хакас"],"kk":["kk-cyrl"],"kk-arab":["Arab",["EU","AS"],"قازاقشا (تٶتە)"],"kk-cn":["kk-arab"],"kk-cyrl":["Cyrl",["EU","AS"],"қазақша"],"kk-kz":["kk-cyrl"],"kk-latn":["Latn",["EU","AS","ME"],"qazaqşa"],"kk-tr":["kk-latn"],"kl":["Latn",["AM","EU"],"kalaallisut"],"km":["Khmr",["AS"],"ភាសាខ្មែរ"],"kn":["Knda",["AS"],"ಕನ್ನಡ"],"knn":["Deva",["AS"],"महाराष्ट्रीय कोंकणी"],"ko-kp":["Kore",["AS"],"한국어 (조선)"],"ko":["Kore",["AS"],"한국어"],"koi":["Cyrl",["EU"],"Перем Коми"],"kr":["Latn",["AF"],"Kanuri"],"krc":["Cyrl",["EU"],"къарачай-малкъар"],"kri":["Latn",["AF"],"Krio"],"krj":["Latn",["ME","EU"],"Kinaray-a"],"krl":["Latn",["EU"],"Karjala"],"ks-arab":["Arab",["AS"],"کٲشُر"],"ks-deva":["Deva",["AS"],"कॉशुर"],"ks":["Arab",["AS"],"کٲشُر"],"ksf":["Latn",["AF"],"Bafia"],"ksh":["Latn",["EU"],"Ripoarisch"],"ku":["ku-latn"],"ku-arab":["Arab",["EU","ME"],"كوردي"],"ku-latn":["Latn",["EU","ME"],"Kurdî"],"kv":["Cyrl",["EU"],"коми"],"kw":["Latn",["EU"],"kernowek"],"ky":["Cyrl",["AS"],"Кыргызча"],"la":["Latn",["EU"],"Latina"],"lad":["lad-latn"],"lad-latn":["Latn",["ME","EU","AM"],"Ladino"],"lad-hebr":["Hebr",["ME","EU","AM"],"לאדינו"],"lb":["Latn",["EU"],"Lëtzebuergesch"],"lbe":["Cyrl",["EU"],"лакку"],"lez":["Cyrl",["EU"],"лезги"],"lfn":["Latn",["WW"],"Lingua Franca Nova"],"lg":["Latn",["AF"],"Luganda"],"li":["Latn",["EU"],"Limburgs"],"lij":["Latn",["EU"],"Ligure"],"liv":["Latn",["EU"],"Līvõ kēļ"],"lki":["Arab",["AS","ME"],"لەکی‎"],"lkt":["Latn",["AM"],"Lakȟótiyapi"],"lld":["Latn",["EU"],"Ladin"],"lmo":["Latn",["EU"],"lumbaart"],"ln":["Latn",["AF"],"lingála"],"lo":["Laoo",["AS"],"ລາວ"],"loz":["Latn",["AF"],"Silozi"],"lt":["Latn",["EU"],"lietuvių"],"lrc":["Arab",["AS","ME"],"لۊری شومالی"],"ltg":["Latn",["EU"],"latgaļu"],"lud":["Latn",["EU"],"lüüdi"],"lus":["Latn",["AS"],"Mizo ţawng"],"lut":["Latn",["AM"],"dxʷləšucid"],"luz":["Arab",["ME"],"لئری دوٙمینی"],"lv":["Latn",["EU"],"latviešu"],"lzh":["Hant",["AS"],"文言"],"lzz":["Latn",["EU","ME"],"Lazuri"],"mai":["Deva",["AS"],"मैथिली"],"map-bms":["Latn",["AS"],"Basa Banyumasan"],"mdf":["Cyrl",["EU"],"мокшень"],"mfe":["Latn",["AM"],"Morisyen"],"mg":["Latn",["AF"],"Malagasy"],"mh":["Latn",["PA"],"Ebon"],"mhr":["Cyrl",["EU"],"олык марий"],"mi":["Latn",["PA"],"Māori"],"mic":["Latn",["AM"],"Mi'kmaq"],"min":["Latn",["AS"],"Baso Minangkabau"],"miq":["Latn",["AM"],"Mískitu"],"mk":["Cyrl",["EU"],"македонски"],"ml":["Mlym",["AS","ME"],"മലയാളം"],"mn":["Cyrl",["AS"],"монгол"],"mnc":["Mong",["AS"],"ᠮᠠᠨᠵᡠ ᡤᡳᠰᡠᠨ"],"mni":["Beng",["AS"],"মেইতেই লোন্"],"mnw":["Mymr",["AS"],"ဘာသာ မန်"],"mo":["Cyrl",["EU"],"молдовеняскэ"],"mr":["Deva",["AS","ME"],"मराठी"],"mrj":["Cyrl",["EU"],"кырык мары"],"ms":["Latn",["AS"],"Bahasa Melayu"],"mt":["Latn",["EU"],"Malti"],"mui":["Latn",["AS"],"Musi"],"mus":["Latn",["AM"],"Mvskoke"],"mwl":["Latn",["EU"],"Mirandés"],"mwv":["Latn",["AS"],"Behase Mentawei"],"mww":["mww-latn"],"mww-latn":["Latn",["AS"],"Hmoob Dawb"],"my":["Mymr",["AS"],"မြန်မာဘာသာ"],"myv":["Cyrl",["EU"],"эрзянь"],"mzn":["Arab",["ME","AS"],"مازِرونی"],"na":["Latn",["PA"],"Dorerin Naoero"],"nah":["Latn",["AM"],"Nāhuatl"],"nan":["Latn",["AS"],"Bân-lâm-gú"],"nap":["Latn",["EU"],"Napulitano"],"nb":["Latn",["EU"],"norsk (bokmål)"],"nds-nl":["Latn",["EU"],"Nedersaksisch"],"nds":["Latn",["EU"],"Plattdüütsch"],"ne":["Deva",["AS"],"नेपाली"],"new":["Deva",["AS"],"नेपाल भाषा"],"ng":["Latn",["AF"],"Oshiwambo"],"niu":["Latn",["PA"],"ko e vagahau Niuē"],"njo":["Latn",["AS"],"Ao"],"nl-informal":["Latn",["EU","AM"],"Nederlands (informeel)"],"nl":["Latn",["EU","AM"],"Nederlands"],"nn":["Latn",["EU"],"norsk (nynorsk)"],"no":["Latn",["EU"],"norsk"],"nov":["Latn",["WW"],"Novial"],"nqo":["Nkoo",["AF"],"ߒߞߏ"],"nrm":["Latn",["EU"],"Nouormand"],"nso":["Latn",["AF"],"Sesotho sa Leboa"],"nv":["Latn",["AM"],"Diné bizaad"],"ny":["Latn",["AF"],"Chi-Chewa"],"oc":["Latn",["EU"],"occitan"],"olo":["Latn",["AS","EU"],"Livvin-Karjalan"],"om":["Latn",["AF"],"Oromoo"],"or":["Orya",["AS"],"ଓଡ଼ିଆ"],"os":["Cyrl",["EU"],"Ирон"],"ota":["Arab",["AS","EU"],"لسان عثمانى"],"pa":["pa-guru"],"pa-guru":["Guru",["AS"],"ਪੰਜਾਬੀ"],"pag":["Latn",["AS"],"Pangasinan"],"pam":["Latn",["AS"],"Kapampangan"],"pap":["Latn",["AM"],"Papiamentu"],"pbb":["Latn",["AM"],"Nasa Yuwe"],"pcd":["Latn",["EU"],"Picard"],"pdc":["Latn",["EU","AM"],"Deitsch"],"pdt":["Latn",["EU","AM"],"Plautdietsch"],"pfl":["Latn",["EU"],"Pälzisch"],"pi":["Deva",["AS"],"पालि"],"pih":["Latn",["PA"],"Norfuk \/ Pitkern"],"pis":["Latn",["PA"],"Pijin"],"pko":["Latn",["AF"],"Pökoot"],"pl":["Latn",["EU"],"polski"],"pms":["Latn",["EU"],"Piemontèis"],"pnb":["Arab",["AS","ME"],"پنجابی"],"pnt":["Grek",["EU"],"Ποντιακά"],"ppl":["Latn",["AM"],"Nawat"],"prg":["Latn",["EU"],"Prūsiskan"],"prs":["Arab",["AS","ME"],"دری"],"ps":["Arab",["AS","ME"],"پښتو"],"pt-br":["Latn",["AM"],"português do Brasil"],"pt":["Latn",["EU","AM","AS","PA","AF","WW"],"português"],"qu":["Latn",["AM"],"Runa Simi"],"qug":["Latn",["AM"],"Runa shimi"],"rap":["Latn",["AM"],"arero rapa nui"],"rcf":["Latn",["AF"],"Kreol Réyoné"],"rgn":["Latn",["EU"],"Rumagnôl"],"rif":["Latn",["AF"],"Tarifit"],"rki":["Mymr",["AS"],"ရခိုင်"],"rm":["Latn",["EU"],"rumantsch"],"rmf":["Latn",["EU"],"kaalengo tšimb"],"rmy":["Latn",["EU"],"Romani"],"rn":["Latn",["AF"],"Kirundi"],"ro":["Latn",["EU"],"română"],"roa-rup":["rup"],"roa-tara":["Latn",["EU"],"tarandíne"],"rtm":["Latn",["PA"],"Faeag Rotuma"],"ru":["Cyrl",["EU","AS","ME"],"русский"],"rue":["Cyrl",["EU"],"русиньскый"],"rup":["Latn",["EU"],"armãneashti"],"ruq":["Cyrl",["EU"],"Влахесте"],"ruq-cyrl":["ruq"],"ruq-grek":["Grek",["EU"],"Megleno-Romanian (Greek script)"],"ruq-latn":["Latn",["EU"],"Vlăheşte"],"rut":["Cyrl",["EU"],"мыхаӀбишды"],"rw":["Latn",["AF"],"Kinyarwanda"],"rwr":["Deva",["AS"],"मारवाड़ी"],"ryu":["Kana",["AS"],"ʔucināguci"],"sa":["Deva",["AS"],"संस्कृतम्"],"sah":["Cyrl",["EU","AS"],"саха тыла"],"sat":["Latn",["AS"],"Santali"],"saz":["Saur",["AS"],"ꢱꣃꢬꢵꢯ꣄ꢡ꣄ꢬꢵ"],"sc":["Latn",["EU"],"sardu"],"scn":["Latn",["EU"],"sicilianu"],"sco":["Latn",["EU"],"Scots"],"sd":["Arab",["AS"],"سنڌي"],"sdc":["Latn",["EU"],"Sassaresu"],"sdh":["Arab",["ME"],"کوردی خوارگ"],"se":["Latn",["EU"],"sámegiella"],"ses":["Latn",["AF"],"Koyraboro Senni"],"sei":["Latn",["AM"],"Cmique Itom"],"sg":["Latn",["AF"],"Sängö"],"sgs":["Latn",["EU"],"žemaitėška"],"sh":["Latn",["EU"],"srpskohrvatski"],"shi-latn":["Latn",["AF"],"Tašlḥiyt"],"shi-tfng":["Tfng",["AF"],"ⵜⴰⵛⵍⵃⵉⵜ"],"shi":["shi-latn"],"shn":["Mymr",["AS"],"လိၵ်ႈတႆး"],"si":["Sinh",["AS"],"සිංහල"],"simple":["Latn",["WW"],"Simple English"],"sk":["Latn",["EU"],"slovenčina"],"sl":["Latn",["EU"],"slovenščina"],"sli":["Latn",["EU"],"Schläsch"],"slr":["Latn",["AS"],"Salırça"],"sly":["Latn",["AS"],"Bahasa Selayar"],"syc":["Syrc",["ME"],"ܣܘܪܝܝܐ"],"sm":["Latn",["PA"],"Gagana Samoa"],"sma":["Latn",["EU"],"åarjelsaemien"],"smj":["Latn",["EU"],"julevsámegiella"],"smn":["Latn",["EU"],"anarâškielâ"],"sms":["Latn",["EU"],"sää´mǩiõll"],"sn":["Latn",["AF"],"chiShona"],"so":["Latn",["AF"],"Soomaaliga"],"son":["Latn",["AF"],"soŋay"],"sq":["Latn",["EU"],"shqip"],"sr":["sr-cyrl"],"sr-ec":["sr-cyrl"],"sr-cyrl":["Cyrl",["EU"],"српски"],"sr-el":["sr-latn"],"sr-latn":["Latn",["EU"],"srpski"],"srn":["Latn",["AM","EU"],"Sranantongo"],"ss":["Latn",["AF"],"SiSwati"],"st":["Latn",["AF"],"Sesotho"],"stq":["Latn",["EU"],"Seeltersk"],"su":["Latn",["AS"],"Basa Sunda"],"sv":["Latn",["EU"],"svenska"],"sw":["Latn",["AF"],"Kiswahili"],"swb":["Latn",["AF"],"Shikomoro"],"sxu":["Latn",["EU"],"Säggssch"],"szl":["Latn",["EU"],"ślůnski"],"ta":["Taml",["AS"],"தமிழ்"],"tcy":["Knda",["AS"],"ತುಳು"],"te":["Telu",["AS"],"తెలుగు"],"tet":["Latn",["AS","PA"],"tetun"],"tg-cyrl":["Cyrl",["AS"],"тоҷикӣ"],"tg-latn":["Latn",["AS"],"tojikī"],"tg":["Cyrl",["AS"],"тоҷикӣ"],"th":["Thai",["AS"],"ไทย"],"ti":["Ethi",["AF"],"ትግርኛ"],"tk":["Latn",["AS"],"Türkmençe"],"tkr":["Cyrl",["AS"],"ЦӀаьхна миз"],"tl":["Latn",["AS"],"Tagalog"],"tly":["Cyrl",["EU","AS","ME"],"толышә зывон"],"tn":["Latn",["AF"],"Setswana"],"to":["Latn",["PA"],"lea faka-Tonga"],"tokipona":["Latn",["WW"],"Toki Pona"],"tpi":["Latn",["PA","AS"],"Tok Pisin"],"tr":["Latn",["EU","ME"],"Türkçe"],"trp":["Latn",["AS"],"Kokborok (Tripuri)"],"tru":["Latn",["AS"],"Ṫuroyo"],"ts":["Latn",["AF"],"Xitsonga"],"tsd":["Grek",["EU"],"Τσακωνικά"],"tt":["Cyrl",["EU"],"татарча"],"tt-cyrl":["tt"],"tt-latn":["Latn",["EU"],"tatarça"],"ttt":["Cyrl",["AS"],"Tati"],"tum":["Latn",["AF"],"chiTumbuka"],"tw":["Latn",["AF"],"Twi"],"twd":["Latn",["EU"],"Tweants"],"ty":["Latn",["PA"],"reo tahiti"],"tyv":["Cyrl",["AS"],"тыва дыл"],"tzl":["Latn",["WW"],"Talossan"],"tzm":["Tfng",["AF"],"ⵜⴰⵎⴰⵣⵉⵖⵜ"],"udm":["Cyrl",["EU"],"удмурт"],"ug":["ug-arab"],"ug-arab":["Arab",["AS"],"ئۇيغۇرچە"],"ug-latn":["Latn",["AS"],"uyghurche"],"ug-cyrl":["Cyrl",["AS"],"уйғурчә"],"uk":["Cyrl",["EU"],"українська"],"ur":["Arab",["AS","ME"],"اردو"],"uz":["Latn",["AS"],"oʻzbekcha"],"ve":["Latn",["AF"],"Tshivenda"],"vec":["Latn",["EU"],"vèneto"],"vep":["Latn",["EU"],"vepsän kel’"],"vi":["Latn",["AS"],"Tiếng Việt"],"vls":["Latn",["EU"],"West-Vlams"],"vmf":["Latn",["EU"],"Mainfränkisch"],"vo":["Latn",["WW"],"Volapük"],"vot":["Latn",["EU"],"Vaďďa"],"vro":["Latn",["EU"],"Võro"],"wa":["Latn",["EU"],"walon"],"war":["Latn",["AS"],"Winaray"],"wls":["Latn",["PA"],"Faka'uvea"],"wo":["Latn",["AF"],"Wolof"],"wuu":["Hans",["AS"],"吴语"],"xal":["Cyrl",["EU"],"хальмг"],"xh":["Latn",["AF"],"isiXhosa"],"xmf":["Geor",["EU"],"მარგალური"],"ydd":["Hebr",["AS","EU"],"Eastern Yiddish"],"yi":["Hebr",["ME","EU","AM"],"ייִדיש"],"yo":["Latn",["AF"],"Yorùbá"],"yrk":["Cyrl",["AS"],"Ненэцяʼ вада"],"yrl":["Latn",["AM"],"ñe'engatú"],"yua":["Latn",["AM"],"Maaya T'aan"],"yue":["Hant",["AS"],"粵語"],"za":["Latn",["AS"],"Vahcuengh"],"zea":["Latn",["EU"],"Zeêuws"],"zgh":["Tfng",["AF"],"ⵜⴰⵎⴰⵣⵉⵖⵜ"],"zh":["Hans",["AS"],"中文"],"zh-classical":["Hant",["AS"],"文言"],"zh-cn":["Hans",["AS"],"中文(中国大陆)"],"zh-hans":["Hans",["AS"],"中文(简体)"],"zh-hant":["Hant",["AS"],"中文(繁體)"],"zh-hk":["Hant",["AS"],"中文(香港)"],"zh-min-nan":["nan"],"zh-mo":["Hant",["AS"],"中文(澳門)"],"zh-my":["Hans",["AS"],"中文(马来西亚)"],"zh-sg":["Hans",["AS"],"中文(新加坡)"],"zh-tw":["Hant",["AS"],"中文(台灣)"],"zh-yue":["yue"],"zu":["Latn",["AF"],"isiZulu"]},"scriptgroups":{"Latin":["Latn","Goth"],"Greek":["Grek"],"WestCaucasian":["Armn","Geor"],"Arabic":["Arab"],"MiddleEastern":["Hebr","Syrc"],"African":["Ethi","Nkoo","Tfng"],"SouthAsian":["Beng","Deva","Gujr","Guru","Knda","Mlym","Orya","Saur","Sinh","Taml","Telu","Tibt","Thaa"],"Cyrillic":["Cyrl"],"CJK":["Hans","Hant","Kana","Kore","Jpan","Yiii"],"SouthEastAsian":["Bali","Batk","Bugi","Java","Khmr","Laoo","Mymr","Thai"],"Mongolian":["Mong"],"SignWriting":["Sgnw"],"NativeAmerican":["Cher","Cans"],"Special":["Zyyy"]},"rtlscripts":["Arab","Hebr","Syrc","Nkoo","Thaa"],"regiongroups":{"WW":1,"SP":1,"AM":2,"EU":3,"ME":3,"AF":3,"AS":4,"PA":4},"territories":{"AC":["en"],"AD":["ca","es","fr"],"AE":["ar","ml","ps","bal","fa"],"AF":["fa","ps","haz","uz-arab","tk-latn","prd","bal","bgn","ug-arab","kk-arab"],"AG":["en","pt"],"AI":["en"],"AL":["sq","el","mk"],"AM":["hy","ku-latn","az-latn"],"AO":["pt","umb","kmb","ln"],"AQ":["und"],"AR":["es","en","cy","gn"],"AS":["sm","en"],"AT":["de","bar","en","hr","sl","hu"],"AU":["en","zh-hant","it","wbp"],"AW":["nl","pap","en"],"AX":["sv"],"AZ":["az-latn","az-cyrl","tly-latn","ku-latn","ttt-latn","tkr-latn"],"BA":["bs-cyrl","bs-latn","en","hr","sr-cyrl","sr-latn"],"BB":["en"],"BD":["bn","en","rkt","syl","ccp","my","grt","mni"],"BE":["en","nl","fr","vls","wa","de"],"BF":["mos","dyu","fr"],"BG":["bg","en","tr"],"BH":["ar","ml"],"BI":["rn","fr","sw","en"],"BJ":["fr","fon","yo"],"BL":["fr"],"BM":["en"],"BN":["ms-latn","zh-hant","ms-arab","en"],"BO":["es","qu","ay","gn","aro"],"BQ":["pap","nl"],"BR":["pt","en","de","it","ja","ko","kgp","gub","yrl","xav"],"BS":["en"],"BT":["dz","ne","tsj","en","lep"],"BV":["und"],"BW":["en","tn","af"],"BY":["be","ru"],"BZ":["en","es"],"CA":["en","fr","it","de","pdt","cr-cans","crk","yi","iu-cans","iu-latn","moe","crj","atj","crl","csw","crm","ikt","moh","dgr","den","scs","nsk","chp","gwi"],"CC":["ms-arab","en"],"CD":["sw","lua","swc","fr","ln","lu","kg","lol","rw"],"CF":["fr","sg","ln"],"CG":["fr","ln"],"CH":["de","gsw","en","fr","it","lmo","rm","rmo","wae"],"CI":["fr","bci","sef","dnj","kfo","bqv"],"CK":["en"],"CL":["es","en","arn"],"CM":["fr","en","bum","ff","ewo","ybb","bbj","nnh","bkm","bas","bax","byv","mua","maf","bfd","bss","kkj","dua","mgo","ar","jgo","ksf","agq","ha-arab","nmg","yav"],"CN":["zh-hans","wuu","hsn","hak","nan","gan","ii","ug-arab","za","mn-mong","bo","ko","kk-arab","lis","ky-arab","nxq","khb","tdd","lcp","en","ru","vi","uz-cyrl","lzh"],"CO":["es","guc"],"CP":["und"],"CR":["es"],"CU":["es"],"CV":["kea","pt"],"CW":["pap","nl","es"],"CX":["en"],"CY":["el","en","tr","hy","ar"],"CZ":["cs","en","de","pl"],"DE":["de","en","fr","nds","nl","it","es","ru","vmf","tr","da","swg","hr","ku-latn","el","ksh","pl","hsb","frr","dsb","frs","stq","pfl"],"DG":["en"],"DJ":["aa","so","ar","fr"],"DK":["da","en","de","fo","kl","jut"],"DM":["en"],"DO":["es","en"],"DZ":["arq","ar","fr","kab","en"],"EA":["es"],"EC":["es","qu","qug"],"EE":["et","ru","vro"],"EG":["ar","arz","en","el"],"EH":["ar"],"ER":["ti","en","tig","ar","aa","ssy","byn"],"ES":["es","en","ca","gl","eu","ast","ext"],"ET":["en","am","om","so","ti","sid","wal","aa"],"FI":["fi","en","sv","ru","et","rmf","se","smn","sms"],"FJ":["en","hi","hif-latn","fj","rtm"],"FK":["en"],"FM":["en","chk","pon","kos","yap","uli"],"FO":["fo"],"FR":["fr","en","oc","it","pt","pcd","gsw","br","co","ca","nl","eu","frp","ia"],"GA":["fr","puu"],"GB":["en","sco","pa-guru","cy","bn","zh-hant","syl","el","it","ks-arab","gd","yi","ml","ga","fr","kw"],"GD":["en"],"GE":["ka","xmf","ru","hy","ab","os","ku-latn"],"GF":["fr","gcr","zh-hant"],"GG":["en"],"GH":["ak","en","ee","abr","gur","ada","gaa","nzi","ha-latn","saf"],"GI":["en","es"],"GL":["kl","da"],"GM":["en","man-latn"],"GN":["fr","ff","man-nkoo","sus","nqo","kpe"],"GP":["fr"],"GQ":["es","fan","fr","bvb"],"GR":["el","en","pnt-grek","mk","tr","bg","sq","tsd"],"GS":["und"],"GT":["es","quc"],"GU":["en","ch"],"GW":["pt"],"GY":["en"],"HK":["zh-hant","en","zh-hans"],"HM":["und"],"HN":["es","en"],"HR":["hr","en","it"],"HT":["ht","fr"],"HU":["hu","en","de","ro","hr","sk","sl"],"IC":["es"],"ID":["id","jv","su","mad","ms-arab","min","bew","ban","bug","bjn","ace","sas","bbc","zh-hant","mak","ljp","rej","gor","nij","kge","aoz","kvr","lbw","gay","rob","mdr","sxn","sly","mwv"],"IE":["en","ga"],"IL":["he","en","ar","ru","ro","yi","pl","lad","hu","am","ti","ml"],"IM":["en","gv"],"IN":["hi","en","bn","te","mr","ta","ur","gu","kn","ml","or","pa-guru","bho","awa","as","bgc","mag","mwr","mai","hne","dcc","bjj","ne","sat","wtm","rkt","ks-arab","kok","gom","swv","gbm","lmn","sd-arab","gon-telu","kfy","doi","kru","sck","wbq","xnr","tcy","wbr","khn","brx","noe","bhb","mni","raj","hoc","mtr","unr-beng","bhi","hoj","kha","kfr","grt","unx-beng","bfy","srx","saz","ccp","sd-deva","bfq","njo","ria","bo","bpy","bft","bra","lep","btv","lif-deva","lah","sa","kht","dv","dz"],"IO":["en"],"IQ":["ar","en","ckb","az-arab","fa","lrc","syr"],"IR":["fa","az-arab","mzn","glk","ckb","sdh","tk-latn","lrc","ar","bal","rmt","bqi","luz","lki","bgn","prd","hy","ps","ka","gbz","kk-arab"],"IS":["is","da"],"IT":["it","en","fr","sc","de","vec","nap","lij","scn","sl","sdc","fur","egl","ca","el","lmo","pms","hr","rgn"],"JE":["en"],"JM":["en","jam"],"JO":["ar","en"],"JP":["ja","ryu","ko"],"KE":["sw","en","ki","luy","luo","kam","kln","guz","mer","mas","ebu","so","dav","teo","pko","om","saq","ar","pa-guru","gu"],"KG":["ky-cyrl","ru"],"KH":["km","cja","kdt"],"KI":["en","gil"],"KM":["ar","fr","zdj","wni"],"KN":["en"],"KP":["ko"],"KR":["ko"],"KW":["ar"],"KY":["en"],"KZ":["ru","kk-cyrl","en","de","ug-cyrl"],"LA":["lo","kjg","kdt"],"LB":["ar","en","hy","ku-arab","fr"],"LC":["en"],"LI":["de","gsw","wae"],"LK":["si","ta","en"],"LR":["en","kpe","vai-vaii","men","vai-latn"],"LS":["st","en","zu","ss","xh"],"LT":["lt","en","ru","sgs"],"LU":["fr","lb","de"],"LV":["lv","ru","ltg"],"LY":["ar"],"MA":["ary","ar","zgh","fr","en","tzm-latn","shi-latn","shi-tfng","rif-latn","rif-tfng","es"],"MC":["fr"],"MD":["ro","uk","bg","gag","ru"],"ME":["sr-latn","sq","sr-cyrl"],"MF":["fr"],"MG":["mg","fr","en"],"MH":["en","mh"],"MK":["mk","sq","tr"],"ML":["bm-latn","fr","ffm","snk","mwk","ses","tmh","bm-nkoo","khq","dtm","kao","ar","bmq","bze"],"MM":["my","shn","kac","mnw","kht"],"MN":["mn-cyrl","kk-arab","zh-hans","ru","ug-cyrl"],"MO":["zh-hant","pt","zh-hans","en"],"MP":["en","ch"],"MQ":["fr"],"MR":["ar","fr","ff","wo"],"MS":["en"],"MT":["mt","en"],"MU":["mfe","en","bho","ur","fr","ta"],"MV":["dv"],"MW":["en","ny","tum","tog","zu"],"MX":["es","en","yua","nhe","nhw","maz","nch","sei"],"MY":["ms-latn","en","zh-hant","ta","iba","jv","zmi","dtp","ml","bug","bjn"],"MZ":["pt","vmw","ndc","ts","ngl","seh","mgh","rng","ny","yao","sw","zu"],"NA":["af","kj","ng","naq","hz","en","de","tn"],"NC":["fr"],"NE":["ha-latn","fr","dje","fuq","tmh","ar","twq"],"NF":["en"],"NG":["en","pcm","ha-latn","ig","yo","fuv","tiv","efi","ibb","ha-arab","bin","kaj","kcg","ar","cch","amo"],"NI":["es"],"NL":["nl","en","de","fr","nds","li","fy","gos","id","zea","rif-latn","tr"],"NO":["nb","nn","se"],"NP":["ne","mai","bho","new","jml","en","taj","awa","thl","bap","tdg","thr","mgp","lif-deva","thq","mrd","bfy","xsr","rjs","tsf","hi","ggn","gvr","bo","tkt","tdh","bn","unr-deva","lep"],"NR":["en","na"],"NU":["en","niu"],"NZ":["en","mi"],"OM":["ar","bal","fa"],"PA":["es","en","zh-hant"],"PE":["es","qu","ay"],"PF":["fr","ty","zh-hant"],"PG":["tpi","en","ho"],"PH":["en","fil","es","ceb","ilo","hil","bik","war","bhk","pam","pag","mdh","tsg","zh-hant","cps","krj","bto","hnn","tbw","bku"],"PK":["ur","pa-arab","en","lah","ps","sd-arab","skr","bal","brh","hno","fa","bgn","hnd","tg-arab","gju","bft","kvx","khw","mvy","kxp","gjk","ks-arab","btv"],"PL":["pl","en","szl","be","uk","csb","de","sli","lt"],"PM":["fr","en"],"PN":["en"],"PR":["es","en"],"PS":["ar"],"PT":["pt","en","gl"],"PW":["pau","en"],"PY":["gn","es","de"],"QA":["ar","fa","ml"],"RE":["fr","rcf","ta"],"RO":["ro","en","hu","de","tr","sr-latn","bg","el","pl"],"RS":["sr-cyrl","sr-latn","sq","hu","ro","hr","sk","uk"],"RU":["ru","tt","ba","cv","hy","ce","av","udm","chm","sah","os","kbd","myv","dar","bua","mdf","kum","kv","lez","krc","inh","tyv","az-cyrl","ady","krl","lbe","koi","mrj","alt","fi","sr-latn","vep","mn-cyrl","izh","vot","cu"],"RW":["rw","en","fr"],"SA":["ar"],"SB":["en","rug"],"SC":["crs","fr","en"],"SD":["ar","en","bej","fvr","ha-arab","mls","fia","zag"],"SE":["sv","en","fi","fit","se","rmu","yi","smj","sma","ia"],"SG":["en","zh-hans","ms-latn","ta","ml","pa-guru"],"SH":["en"],"SI":["sl","en","hu","it"],"SJ":["nb","ru"],"SK":["sk","en","hu","uk","pl","de"],"SL":["kri","en","men","tem"],"SM":["it","eo"],"SN":["wo","fr","ff","srr","dyo","sav","mfv","bjt","snf","knf","bsc","mey","tnr"],"SO":["so","ar","sw","om"],"SR":["nl","srn","zh-hant"],"SS":["ar","en","nus"],"ST":["pt"],"SV":["es"],"SX":["en","es","vic","nl"],"SY":["ar","ku-latn","fr","hy","syr"],"SZ":["en","ss","zu","ts"],"TA":["en"],"TC":["en"],"TD":["fr","ar"],"TF":["fr"],"TG":["fr","ee"],"TH":["th","en","tts","nod","sou","mfa","zh-hant","kxm","kdt","mnw","shn","lcp","lwl"],"TJ":["tg-cyrl","ru","fa","ar"],"TK":["en","tkl"],"TL":["pt","tet"],"TM":["tk-latn","ru","uz-latn","ku-latn"],"TN":["aeb","ar","fr"],"TO":["to","en"],"TR":["tr","en","ku-latn","zza","kbd","az-latn","az-arab","ar","bgx","bg","ady","kiu","hy","ka","sr-latn","lzz-latn","sq","ab","el","tru","uz-latn","ky-latn","kk-cyrl"],"TT":["en","es"],"TV":["tvl","en"],"TW":["zh-hant","trv"],"TZ":["sw","en","suk","nym","kde","bez","ksb","mas","mgy","asa","lag","jmc","rof","vun","rwk","sbp"],"UA":["uk","ru","pl","yi","rue","be","ro","bg","tr","hu","el"],"UG":["sw","lg","nyn","cgg","xog","en","teo","laj","ach","myx","rw","ttj","hi"],"UM":["en"],"US":["en","es","zh-hant","fr","de","fil","it","vi","ko","ru","nv","yi","pdc","haw","frc","chr","esu","dak","cho","lkt","ik","mus"],"UY":["es"],"UZ":["uz-latn","uz-cyrl","ru","kaa","tr"],"VA":["it","la"],"VC":["en"],"VE":["es"],"VG":["en"],"VI":["en"],"VN":["vi","zh-hant","cjm"],"VU":["bi","en","fr"],"WF":["wls","fr","fud"],"WS":["sm","en"],"XK":["sq","aln","sr-cyrl","sr-latn"],"YE":["ar","en"],"YT":["swb","fr","buc","sw"],"ZA":["en","zu","xh","af","nso","tn","st","ts","ss","ve","hi","nr","sw"],"ZM":["bem","en","ny","loz"],"ZW":["sn","en","nd","mxc","ndc","kck","ny","ve","tn"],"ZZ":[]}};
+ $.uls.data = {
+ "languages": {
+ "aa": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "Qafár af"
+ ],
+ "ab": [
+ "Cyrl",
+ [
+ "EU"
+ ],
+ "Аҧсшәа"
+ ],
+ "abe": [
+ "Latn",
+ [
+ "AM"
+ ],
+ "Wôbanakiôdwawôgan"
+ ],
+ "abs": [
+ "Latn",
+ [
+ "AS"
+ ],
+ "Bahasa Ambon"
+ ],
+ "ace": [
+ "Latn",
+ [
+ "AS",
+ "PA"
+ ],
+ "Acèh"
+ ],
+ "acf": [
+ "Latn",
+ [
+ "AM"
+ ],
+ "kwéyòl"
+ ],
+ "ady": [
+ "Cyrl",
+ [
+ "EU",
+ "ME"
+ ],
+ "Адыгабзэ"
+ ],
+ "ady-cyrl": [
+ "ady"
+ ],
+ "ady-latn": [
+ "Latn",
+ [
+ "EU",
+ "ME"
+ ],
+ "Adygabze"
+ ],
+ "aeb": [
+ "aeb-arab"
+ ],
+ "aeb-arab": [
+ "Arab",
+ [
+ "AF"
+ ],
+ "تونسي"
+ ],
+ "aeb-latn": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "Tûnsî"
+ ],
+ "af": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "Afrikaans"
+ ],
+ "ahr": [
+ "Deva",
+ [
+ "AS"
+ ],
+ "अहिराणी"
+ ],
+ "ais": [
+ "Latn",
+ [
+ "AS"
+ ],
+ "Sakizaya"
+ ],
+ "ak": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "Akan"
+ ],
+ "akz": [
+ "Latn",
+ [
+ "AM"
+ ],
+ "Albaamo innaaɬiilka"
+ ],
+ "aln": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "Gegë"
+ ],
+ "am": [
+ "Ethi",
+ [
+ "AF"
+ ],
+ "አማርኛ"
+ ],
+ "ami": [
+ "Latn",
+ [
+ "AS"
+ ],
+ "Pangcah"
+ ],
+ "an": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "aragonés"
+ ],
+ "ang": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "Ænglisc"
+ ],
+ "anp": [
+ "Deva",
+ [
+ "AS"
+ ],
+ "अङ्गिका"
+ ],
+ "ar": [
+ "Arab",
+ [
+ "ME"
+ ],
+ "العربية"
+ ],
+ "arc": [
+ "Syrc",
+ [
+ "ME"
+ ],
+ "ܐܪܡܝܐ"
+ ],
+ "arn": [
+ "Latn",
+ [
+ "AM"
+ ],
+ "mapudungun"
+ ],
+ "aro": [
+ "Latn",
+ [
+ "AM"
+ ],
+ "Araona"
+ ],
+ "arq": [
+ "Arab",
+ [
+ "AF"
+ ],
+ "جازايرية"
+ ],
+ "ary": [
+ "Latn",
+ [
+ "ME"
+ ],
+ "Maġribi"
+ ],
+ "arz": [
+ "Arab",
+ [
+ "ME"
+ ],
+ "مصرى"
+ ],
+ "as": [
+ "Beng",
+ [
+ "AS"
+ ],
+ "অসমীয়া"
+ ],
+ "ase": [
+ "Sgnw",
+ [
+ "AM"
+ ],
+ "American sign language"
+ ],
+ "ast": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "asturianu"
+ ],
+ "atj": [
+ "Latn",
+ [
+ "AM"
+ ],
+ "atikamekw"
+ ],
+ "av": [
+ "Cyrl",
+ [
+ "EU"
+ ],
+ "авар"
+ ],
+ "avk": [
+ "Latn",
+ [
+ "WW"
+ ],
+ "Kotava"
+ ],
+ "ay": [
+ "Latn",
+ [
+ "AM"
+ ],
+ "Aymar aru"
+ ],
+ "az": [
+ "az-latn"
+ ],
+ "az-arab": [
+ "Arab",
+ [
+ "AS",
+ "ME"
+ ],
+ "تۆرکجه"
+ ],
+ "az-latn": [
+ "Latn",
+ [
+ "EU",
+ "ME"
+ ],
+ "azərbaycanca"
+ ],
+ "az-cyrl": [
+ "Cyrl",
+ [
+ "EU",
+ "ME"
+ ],
+ "азәрбајҹанҹа"
+ ],
+ "azb": [
+ "az-arab"
+ ],
+ "azj": [
+ "az-latn"
+ ],
+ "ba": [
+ "Cyrl",
+ [
+ "EU"
+ ],
+ "башҡортса"
+ ],
+ "ban": [
+ "Bali",
+ [
+ "AS"
+ ],
+ "ᬩᬲᬩᬮᬶ"
+ ],
+ "bar": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "Boarisch"
+ ],
+ "bat-smg": [
+ "sgs"
+ ],
+ "bbc-latn": [
+ "Latn",
+ [
+ "AS"
+ ],
+ "Batak Toba"
+ ],
+ "bbc-batk": [
+ "Batk",
+ [
+ "AS"
+ ],
+ "ᯅᯖᯂ᯲ ᯖᯬᯅ"
+ ],
+ "bbc": [
+ "bbc-latn"
+ ],
+ "bcc": [
+ "Arab",
+ [
+ "AS",
+ "ME"
+ ],
+ "جهلسری بلوچی"
+ ],
+ "bcl": [
+ "Latn",
+ [
+ "AS"
+ ],
+ "Bikol Central"
+ ],
+ "be-tarask": [
+ "Cyrl",
+ [
+ "EU"
+ ],
+ "беларуская (тарашкевіца)"
+ ],
+ "be-x-old": [
+ "be-tarask"
+ ],
+ "be": [
+ "Cyrl",
+ [
+ "EU"
+ ],
+ "беларуская"
+ ],
+ "bew": [
+ "Latn",
+ [
+ "AS"
+ ],
+ "Bahasa Betawi"
+ ],
+ "bfa": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "Bari"
+ ],
+ "bft": [
+ "Arab",
+ [
+ "AS"
+ ],
+ "بلتی"
+ ],
+ "bfq": [
+ "Taml",
+ [
+ "AS"
+ ],
+ "படகா"
+ ],
+ "bg": [
+ "Cyrl",
+ [
+ "EU"
+ ],
+ "български"
+ ],
+ "bgn": [
+ "Arab",
+ [
+ "AS",
+ "ME"
+ ],
+ "روچ کپتین بلوچی"
+ ],
+ "bh": [
+ "bho"
+ ],
+ "bho": [
+ "Deva",
+ [
+ "AS"
+ ],
+ "भोजपुरी"
+ ],
+ "bi": [
+ "Latn",
+ [
+ "PA"
+ ],
+ "Bislama"
+ ],
+ "bjn": [
+ "Latn",
+ [
+ "AS"
+ ],
+ "Bahasa Banjar"
+ ],
+ "bm": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "bamanankan"
+ ],
+ "bn": [
+ "Beng",
+ [
+ "AS"
+ ],
+ "বাংলা"
+ ],
+ "bnn": [
+ "Latn",
+ [
+ "AS"
+ ],
+ "Bunun"
+ ],
+ "bo": [
+ "Tibt",
+ [
+ "AS"
+ ],
+ "བོད་ཡིག"
+ ],
+ "bpy": [
+ "Beng",
+ [
+ "AS"
+ ],
+ "বিষ্ণুপ্রিয়া মণিপুরী"
+ ],
+ "bqi": [
+ "Arab",
+ [
+ "AS",
+ "ME"
+ ],
+ "بختیاری"
+ ],
+ "br": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "brezhoneg"
+ ],
+ "brh": [
+ "Latn",
+ [
+ "ME",
+ "AS"
+ ],
+ "Bráhuí"
+ ],
+ "brx": [
+ "Deva",
+ [
+ "AS"
+ ],
+ "बर'"
+ ],
+ "bs": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "bosanski"
+ ],
+ "btm": [
+ "Latn",
+ [
+ "AS"
+ ],
+ "Mandailing"
+ ],
+ "bto": [
+ "Latn",
+ [
+ "AS"
+ ],
+ "Iriga Bicolano"
+ ],
+ "bug": [
+ "Bugi",
+ [
+ "AS"
+ ],
+ "ᨅᨔ ᨕᨘᨁᨗ"
+ ],
+ "bxr": [
+ "Cyrl",
+ [
+ "AS"
+ ],
+ "буряад"
+ ],
+ "byn": [
+ "Ethi",
+ [
+ "AF"
+ ],
+ "ብሊን"
+ ],
+ "ca": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "català"
+ ],
+ "cak": [
+ "Latn",
+ [
+ "AM"
+ ],
+ "Kaqchikel"
+ ],
+ "cbk-zam": [
+ "Latn",
+ [
+ "AS"
+ ],
+ "Chavacano de Zamboanga"
+ ],
+ "cdo": [
+ "Latn",
+ [
+ "AS"
+ ],
+ "Mìng-dĕ̤ng-ngṳ̄"
+ ],
+ "ce": [
+ "Cyrl",
+ [
+ "EU"
+ ],
+ "нохчийн"
+ ],
+ "ceb": [
+ "Latn",
+ [
+ "AS"
+ ],
+ "Cebuano"
+ ],
+ "ch": [
+ "Latn",
+ [
+ "PA"
+ ],
+ "Chamoru"
+ ],
+ "chm": [
+ "mhr"
+ ],
+ "chn": [
+ "Latn",
+ [
+ "AM"
+ ],
+ "chinuk wawa"
+ ],
+ "cho": [
+ "Latn",
+ [
+ "AM"
+ ],
+ "Choctaw"
+ ],
+ "chr": [
+ "Cher",
+ [
+ "AM"
+ ],
+ "ᏣᎳᎩ"
+ ],
+ "chy": [
+ "Latn",
+ [
+ "AM"
+ ],
+ "Tsetsêhestâhese"
+ ],
+ "ciw": [
+ "Latn",
+ [
+ "AM"
+ ],
+ "Ojibwemowin"
+ ],
+ "cjy": [
+ "cjy-hant"
+ ],
+ "cjy-hans": [
+ "Hans",
+ [
+ "AS"
+ ],
+ "晋语(简化字)"
+ ],
+ "cjy-hant": [
+ "Hant",
+ [
+ "AS"
+ ],
+ "晉語"
+ ],
+ "ckb": [
+ "Arab",
+ [
+ "ME"
+ ],
+ "کوردی"
+ ],
+ "cnh": [
+ "Latn",
+ [
+ "AS"
+ ],
+ "Lai holh"
+ ],
+ "co": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "corsu"
+ ],
+ "cop": [
+ "Copt",
+ [
+ "AF",
+ "ME"
+ ],
+ "ϯⲙⲉⲧⲣⲉⲙⲛ̀ⲭⲏⲙⲓ"
+ ],
+ "cps": [
+ "Latn",
+ [
+ "AS"
+ ],
+ "Capiceño"
+ ],
+ "cr": [
+ "Cans",
+ [
+ "AM"
+ ],
+ "ᓀᐦᐃᔭᐍᐏᐣ"
+ ],
+ "cr-cans": [
+ "cr"
+ ],
+ "cr-latn": [
+ "Latn",
+ [
+ "AM"
+ ],
+ "Nēhiyawēwin"
+ ],
+ "crh": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "qırımtatarca"
+ ],
+ "crh-cyrl": [
+ "Cyrl",
+ [
+ "EU"
+ ],
+ "къырымтатарджа"
+ ],
+ "crh-latn": [
+ "crh"
+ ],
+ "cs": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "čeština"
+ ],
+ "csb": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "kaszëbsczi"
+ ],
+ "cu": [
+ "Cyrl",
+ [
+ "EU"
+ ],
+ "словѣньскъ \/ ⰔⰎⰑⰂⰡⰐⰠⰔⰍⰟ"
+ ],
+ "cv": [
+ "Cyrl",
+ [
+ "EU"
+ ],
+ "Чӑвашла"
+ ],
+ "cy": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "Cymraeg"
+ ],
+ "da": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "dansk"
+ ],
+ "dag": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "dagbanli"
+ ],
+ "de-at": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "Österreichisches Deutsch"
+ ],
+ "de-ch": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "Schweizer Hochdeutsch"
+ ],
+ "de-formal": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "Deutsch (Sie-Form)"
+ ],
+ "de": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "Deutsch"
+ ],
+ "din": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "Thuɔŋjäŋ"
+ ],
+ "diq": [
+ "Latn",
+ [
+ "EU",
+ "AS"
+ ],
+ "Zazaki"
+ ],
+ "doi": [
+ "Deva",
+ [
+ "AS"
+ ],
+ "डोगरी"
+ ],
+ "dsb": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "dolnoserbski"
+ ],
+ "dtp": [
+ "Latn",
+ [
+ "AS"
+ ],
+ "Dusun Bundu-liwan"
+ ],
+ "dty": [
+ "Deva",
+ [
+ "AS"
+ ],
+ "डोटेली"
+ ],
+ "dv": [
+ "Thaa",
+ [
+ "AS"
+ ],
+ "ދިވެހިބަސް"
+ ],
+ "dz": [
+ "Tibt",
+ [
+ "AS"
+ ],
+ "ཇོང་ཁ"
+ ],
+ "ee": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "eʋegbe"
+ ],
+ "egl": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "Emiliàn"
+ ],
+ "el": [
+ "Grek",
+ [
+ "EU"
+ ],
+ "Ελληνικά"
+ ],
+ "eml": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "emiliàn e rumagnòl"
+ ],
+ "en-ca": [
+ "Latn",
+ [
+ "AM"
+ ],
+ "Canadian English"
+ ],
+ "en-gb": [
+ "Latn",
+ [
+ "EU",
+ "AS",
+ "PA"
+ ],
+ "British English"
+ ],
+ "en": [
+ "Latn",
+ [
+ "EU",
+ "AM",
+ "AF",
+ "ME",
+ "AS",
+ "PA",
+ "WW"
+ ],
+ "English"
+ ],
+ "eo": [
+ "Latn",
+ [
+ "WW"
+ ],
+ "Esperanto"
+ ],
+ "es-419": [
+ "Latn",
+ [
+ "AM"
+ ],
+ "español de América Latina"
+ ],
+ "es-formal": [
+ "Latn",
+ [
+ "EU",
+ "AM",
+ "AF",
+ "WW"
+ ],
+ "español (formal)"
+ ],
+ "es": [
+ "Latn",
+ [
+ "EU",
+ "AM",
+ "AF",
+ "WW",
+ "PA"
+ ],
+ "español"
+ ],
+ "es-ni": [
+ "Latn",
+ [
+ "AM"
+ ],
+ "español nicaragüense"
+ ],
+ "esu": [
+ "Latn",
+ [
+ "AM"
+ ],
+ "Yup'ik"
+ ],
+ "et": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "eesti"
+ ],
+ "eu": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "euskara"
+ ],
+ "ext": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "estremeñu"
+ ],
+ "eya": [
+ "Latn",
+ [
+ "AM"
+ ],
+ "I·ya·q"
+ ],
+ "fa": [
+ "Arab",
+ [
+ "AS",
+ "ME"
+ ],
+ "فارسی"
+ ],
+ "fan": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "Faŋ"
+ ],
+ "fax": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "Fala"
+ ],
+ "ff": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "Fulfulde"
+ ],
+ "fi": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "suomi"
+ ],
+ "fil": [
+ "tl"
+ ],
+ "fit": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "meänkieli"
+ ],
+ "fiu-vro": [
+ "vro"
+ ],
+ "fj": [
+ "Latn",
+ [
+ "PA"
+ ],
+ "Na Vosa Vakaviti"
+ ],
+ "fkv": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "kvääni"
+ ],
+ "fo": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "føroyskt"
+ ],
+ "fon": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "fɔ̀ngbè"
+ ],
+ "fr": [
+ "Latn",
+ [
+ "EU",
+ "AM",
+ "WW"
+ ],
+ "français"
+ ],
+ "frc": [
+ "Latn",
+ [
+ "AM"
+ ],
+ "français cadien"
+ ],
+ "frp": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "arpetan"
+ ],
+ "frr": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "Nordfriisk"
+ ],
+ "fuf": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "Fuuta Jalon"
+ ],
+ "fur": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "furlan"
+ ],
+ "fy": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "Frysk"
+ ],
+ "ga": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "Gaeilge"
+ ],
+ "gaa": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "Ga"
+ ],
+ "gag": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "Gagauz"
+ ],
+ "gah": [
+ "Latn",
+ [
+ "AS"
+ ],
+ "Alekano"
+ ],
+ "gan-hans": [
+ "Hans",
+ [
+ "AS"
+ ],
+ "赣语(简体)"
+ ],
+ "gan-hant": [
+ "gan"
+ ],
+ "gan": [
+ "Hant",
+ [
+ "AS"
+ ],
+ "贛語"
+ ],
+ "gbm": [
+ "Deva",
+ [
+ "AS"
+ ],
+ "गढ़वळि"
+ ],
+ "gbz": [
+ "Latn",
+ [
+ "AS"
+ ],
+ "Dari-e Mazdeyasnā"
+ ],
+ "gcf": [
+ "Latn",
+ [
+ "AM"
+ ],
+ "Guadeloupean Creole French"
+ ],
+ "gcr": [
+ "Latn",
+ [
+ "AM"
+ ],
+ "kréyòl gwiyanè"
+ ],
+ "gd": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "Gàidhlig"
+ ],
+ "gez": [
+ "Ethi",
+ [
+ "AF"
+ ],
+ "ግዕዝ"
+ ],
+ "gl": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "galego"
+ ],
+ "glk": [
+ "Arab",
+ [
+ "AS",
+ "ME"
+ ],
+ "گیلکی"
+ ],
+ "gn": [
+ "Latn",
+ [
+ "AM"
+ ],
+ "Avañe'ẽ"
+ ],
+ "gom": [
+ "gom-deva"
+ ],
+ "gom-deva": [
+ "Deva",
+ [
+ "AS"
+ ],
+ "गोंयची कोंकणी"
+ ],
+ "gom-latn": [
+ "Latn",
+ [
+ "AS"
+ ],
+ "Gõychi Konknni"
+ ],
+ "gor": [
+ "Latn",
+ [
+ "AS"
+ ],
+ "Bahasa Hulontalo"
+ ],
+ "got": [
+ "Goth",
+ [
+ "EU"
+ ],
+ "𐌲𐌿𐍄𐌹𐍃𐌺"
+ ],
+ "grc": [
+ "Grek",
+ [
+ "EU"
+ ],
+ "Ἀρχαία ἑλληνικὴ"
+ ],
+ "gsw": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "Alemannisch"
+ ],
+ "gu": [
+ "Gujr",
+ [
+ "AS"
+ ],
+ "ગુજરાતી"
+ ],
+ "guc": [
+ "Latn",
+ [
+ "AM"
+ ],
+ "Wayúu"
+ ],
+ "gum": [
+ "Latn",
+ [
+ "AM"
+ ],
+ "Namtrik"
+ ],
+ "gur": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "Gurenɛ"
+ ],
+ "gv": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "Gaelg"
+ ],
+ "ha-arab": [
+ "Arab",
+ [
+ "AF"
+ ],
+ "هَوُسَ"
+ ],
+ "ha-latn": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "Hausa"
+ ],
+ "ha": [
+ "ha-latn"
+ ],
+ "hai": [
+ "Latn",
+ [
+ "AM"
+ ],
+ "X̱aat Kíl"
+ ],
+ "hak": [
+ "Latn",
+ [
+ "AS"
+ ],
+ "Hak-kâ-fa"
+ ],
+ "haw": [
+ "Latn",
+ [
+ "AM",
+ "PA"
+ ],
+ "Hawai`i"
+ ],
+ "he": [
+ "Hebr",
+ [
+ "ME"
+ ],
+ "עברית"
+ ],
+ "hak-hans": [
+ "Hans",
+ [
+ "AS"
+ ],
+ "客家语(简体)"
+ ],
+ "hak-hant": [
+ "Hant",
+ [
+ "AS"
+ ],
+ "客家語(繁體)"
+ ],
+ "hi": [
+ "Deva",
+ [
+ "AS"
+ ],
+ "हिन्दी"
+ ],
+ "hif": [
+ "Latn",
+ [
+ "PA",
+ "AS"
+ ],
+ "Fiji Hindi"
+ ],
+ "hif-deva": [
+ "Deva",
+ [
+ "AS"
+ ],
+ "फ़ीजी हिन्दी"
+ ],
+ "hif-latn": [
+ "hif"
+ ],
+ "hil": [
+ "Latn",
+ [
+ "AS"
+ ],
+ "Ilonggo"
+ ],
+ "hne": [
+ "Deva",
+ [
+ "AS"
+ ],
+ "छत्तीसगढ़ी"
+ ],
+ "ho": [
+ "Latn",
+ [
+ "PA"
+ ],
+ "Hiri Motu"
+ ],
+ "hoc": [
+ "Wara",
+ [
+ "AS"
+ ],
+ "𑢹𑣉𑣉"
+ ],
+ "hr": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "hrvatski"
+ ],
+ "hrx": [
+ "Latn",
+ [
+ "AM"
+ ],
+ "Hunsrik"
+ ],
+ "hsb": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "hornjoserbsce"
+ ],
+ "hsn": [
+ "Hans",
+ [
+ "AS"
+ ],
+ "湘语"
+ ],
+ "ht": [
+ "Latn",
+ [
+ "AM"
+ ],
+ "Kreyòl ayisyen"
+ ],
+ "hu-formal": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "Magyar (magázó)"
+ ],
+ "hu": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "magyar"
+ ],
+ "hy": [
+ "Armn",
+ [
+ "EU",
+ "ME"
+ ],
+ "հայերեն"
+ ],
+ "hyw": [
+ "Armn",
+ [
+ "EU",
+ "ME"
+ ],
+ "արեւմտահայերէն"
+ ],
+ "hz": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "Otsiherero"
+ ],
+ "ia": [
+ "Latn",
+ [
+ "WW"
+ ],
+ "interlingua"
+ ],
+ "id": [
+ "Latn",
+ [
+ "AS"
+ ],
+ "Bahasa Indonesia"
+ ],
+ "ie": [
+ "Latn",
+ [
+ "WW"
+ ],
+ "Interlingue"
+ ],
+ "ig": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "Igbo"
+ ],
+ "ii": [
+ "Yiii",
+ [
+ "AS"
+ ],
+ "ꆇꉙ"
+ ],
+ "ik": [
+ "Latn",
+ [
+ "AM"
+ ],
+ "Iñupiak"
+ ],
+ "ike-cans": [
+ "Cans",
+ [
+ "AM"
+ ],
+ "ᐃᓄᒃᑎᑐᑦ"
+ ],
+ "ike-latn": [
+ "Latn",
+ [
+ "AM"
+ ],
+ "inuktitut"
+ ],
+ "ilo": [
+ "Latn",
+ [
+ "AS"
+ ],
+ "Ilokano"
+ ],
+ "inh": [
+ "Cyrl",
+ [
+ "EU"
+ ],
+ "ГӀалгӀай"
+ ],
+ "io": [
+ "Latn",
+ [
+ "WW"
+ ],
+ "Ido"
+ ],
+ "is": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "íslenska"
+ ],
+ "it": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "italiano"
+ ],
+ "iu": [
+ "ike-cans"
+ ],
+ "ja": [
+ "Jpan",
+ [
+ "AS"
+ ],
+ "日本語"
+ ],
+ "jam": [
+ "Latn",
+ [
+ "AM"
+ ],
+ "Patois"
+ ],
+ "jbo": [
+ "Latn",
+ [
+ "WW"
+ ],
+ "lojban"
+ ],
+ "jdt": [
+ "jdt-cyrl"
+ ],
+ "jdt-cyrl": [
+ "Cyrl",
+ [
+ "EU",
+ "AS"
+ ],
+ "жугьури"
+ ],
+ "jut": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "jysk"
+ ],
+ "jv": [
+ "Latn",
+ [
+ "AS",
+ "PA"
+ ],
+ "Basa Jawa"
+ ],
+ "jv-java": [
+ "Java",
+ [
+ "AS",
+ "PA"
+ ],
+ "ꦧꦱꦗꦮ"
+ ],
+ "ka": [
+ "Geor",
+ [
+ "EU"
+ ],
+ "ქართული"
+ ],
+ "kaa": [
+ "Latn",
+ [
+ "AS"
+ ],
+ "Qaraqalpaqsha"
+ ],
+ "kab": [
+ "Latn",
+ [
+ "AF",
+ "EU"
+ ],
+ "Taqbaylit"
+ ],
+ "kac": [
+ "Latn",
+ [
+ "AS"
+ ],
+ "Jinghpaw"
+ ],
+ "kbd-cyrl": [
+ "kbd"
+ ],
+ "kbd-latn": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "Qabardjajəbza"
+ ],
+ "kbd": [
+ "Cyrl",
+ [
+ "EU",
+ "ME"
+ ],
+ "Адыгэбзэ"
+ ],
+ "kbp": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "Kabɩyɛ"
+ ],
+ "kea": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "Kabuverdianu"
+ ],
+ "kg": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "Kongo"
+ ],
+ "kgp": [
+ "Latn",
+ [
+ "AM"
+ ],
+ "Kaingáng"
+ ],
+ "khw": [
+ "Arab",
+ [
+ "ME",
+ "AS"
+ ],
+ "کھوار"
+ ],
+ "ki": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "Gĩkũyũ"
+ ],
+ "kiu": [
+ "Latn",
+ [
+ "EU",
+ "ME"
+ ],
+ "Kırmancki"
+ ],
+ "kj": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "Kwanyama"
+ ],
+ "kjh": [
+ "Cyrl",
+ [
+ "AS"
+ ],
+ "хакас"
+ ],
+ "kjp": [
+ "Mymr",
+ [
+ "AS"
+ ],
+ "ဖၠုံလိက်"
+ ],
+ "kk": [
+ "kk-cyrl"
+ ],
+ "kk-arab": [
+ "Arab",
+ [
+ "EU",
+ "AS"
+ ],
+ "قازاقشا (تٶتە)"
+ ],
+ "kk-cn": [
+ "kk-arab"
+ ],
+ "kk-cyrl": [
+ "Cyrl",
+ [
+ "EU",
+ "AS"
+ ],
+ "қазақша"
+ ],
+ "kk-kz": [
+ "kk-cyrl"
+ ],
+ "kk-latn": [
+ "Latn",
+ [
+ "EU",
+ "AS",
+ "ME"
+ ],
+ "qazaqşa"
+ ],
+ "kk-tr": [
+ "kk-latn"
+ ],
+ "kl": [
+ "Latn",
+ [
+ "AM",
+ "EU"
+ ],
+ "kalaallisut"
+ ],
+ "km": [
+ "Khmr",
+ [
+ "AS"
+ ],
+ "ភាសាខ្មែរ"
+ ],
+ "kn": [
+ "Knda",
+ [
+ "AS"
+ ],
+ "ಕನ್ನಡ"
+ ],
+ "knn": [
+ "Deva",
+ [
+ "AS"
+ ],
+ "महाराष्ट्रीय कोंकणी"
+ ],
+ "ko-kp": [
+ "Kore",
+ [
+ "AS"
+ ],
+ "조선말"
+ ],
+ "ko": [
+ "Kore",
+ [
+ "AS"
+ ],
+ "한국어"
+ ],
+ "koi": [
+ "Cyrl",
+ [
+ "EU"
+ ],
+ "Перем Коми"
+ ],
+ "koy": [
+ "Latn",
+ [
+ "AM"
+ ],
+ "Denaakkenaageʼ"
+ ],
+ "kr": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "Kanuri"
+ ],
+ "krc": [
+ "Cyrl",
+ [
+ "EU"
+ ],
+ "къарачай-малкъар"
+ ],
+ "kri": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "Krio"
+ ],
+ "krj": [
+ "Latn",
+ [
+ "ME",
+ "EU"
+ ],
+ "Kinaray-a"
+ ],
+ "krl": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "Karjala"
+ ],
+ "ks-arab": [
+ "Arab",
+ [
+ "AS"
+ ],
+ "کٲشُر"
+ ],
+ "ks-deva": [
+ "Deva",
+ [
+ "AS"
+ ],
+ "कॉशुर"
+ ],
+ "ks": [
+ "ks-arab"
+ ],
+ "ksf": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "Bafia"
+ ],
+ "ksh": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "Ripoarisch"
+ ],
+ "ku": [
+ "ku-latn"
+ ],
+ "ku-arab": [
+ "Arab",
+ [
+ "EU",
+ "ME"
+ ],
+ "كوردي"
+ ],
+ "ku-latn": [
+ "Latn",
+ [
+ "EU",
+ "ME"
+ ],
+ "kurdî"
+ ],
+ "kum": [
+ "Cyrl",
+ [
+ "EU"
+ ],
+ "къумукъ"
+ ],
+ "kv": [
+ "Cyrl",
+ [
+ "EU"
+ ],
+ "коми"
+ ],
+ "kw": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "kernowek"
+ ],
+ "ky": [
+ "Cyrl",
+ [
+ "AS"
+ ],
+ "Кыргызча"
+ ],
+ "la": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "Latina"
+ ],
+ "lad": [
+ "lad-latn"
+ ],
+ "lad-latn": [
+ "Latn",
+ [
+ "ME",
+ "EU",
+ "AM"
+ ],
+ "Ladino"
+ ],
+ "lad-hebr": [
+ "Hebr",
+ [
+ "ME",
+ "EU",
+ "AM"
+ ],
+ "לאדינו"
+ ],
+ "lag": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "Kilaangi"
+ ],
+ "lb": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "Lëtzebuergesch"
+ ],
+ "lbe": [
+ "Cyrl",
+ [
+ "EU"
+ ],
+ "лакку"
+ ],
+ "lez": [
+ "Cyrl",
+ [
+ "EU"
+ ],
+ "лезги"
+ ],
+ "lfn": [
+ "Latn",
+ [
+ "WW"
+ ],
+ "Lingua Franca Nova"
+ ],
+ "lg": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "Luganda"
+ ],
+ "li": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "Limburgs"
+ ],
+ "lij": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "Ligure"
+ ],
+ "liv": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "Līvõ kēļ"
+ ],
+ "lki": [
+ "Arab",
+ [
+ "AS",
+ "ME"
+ ],
+ "لەکی"
+ ],
+ "lkt": [
+ "Latn",
+ [
+ "AM"
+ ],
+ "Lakȟótiyapi"
+ ],
+ "lld": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "Ladin"
+ ],
+ "lmo": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "lumbaart"
+ ],
+ "ln": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "lingála"
+ ],
+ "lo": [
+ "Laoo",
+ [
+ "AS"
+ ],
+ "ລາວ"
+ ],
+ "loz": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "Silozi"
+ ],
+ "lt": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "lietuvių"
+ ],
+ "lrc": [
+ "Arab",
+ [
+ "AS",
+ "ME"
+ ],
+ "لۊری شومالی"
+ ],
+ "ltg": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "latgaļu"
+ ],
+ "lud": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "lüüdi"
+ ],
+ "lus": [
+ "Latn",
+ [
+ "AS"
+ ],
+ "Mizo ţawng"
+ ],
+ "lut": [
+ "Latn",
+ [
+ "AM"
+ ],
+ "dxʷləšucid"
+ ],
+ "luz": [
+ "Arab",
+ [
+ "ME"
+ ],
+ "لئری دوٙمینی"
+ ],
+ "lv": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "latviešu"
+ ],
+ "lzh": [
+ "Hant",
+ [
+ "AS"
+ ],
+ "文言"
+ ],
+ "lzz": [
+ "Latn",
+ [
+ "EU",
+ "ME"
+ ],
+ "Lazuri"
+ ],
+ "mai": [
+ "Deva",
+ [
+ "AS"
+ ],
+ "मैथिली"
+ ],
+ "map-bms": [
+ "Latn",
+ [
+ "AS"
+ ],
+ "Basa Banyumasan"
+ ],
+ "mdf": [
+ "Cyrl",
+ [
+ "EU"
+ ],
+ "мокшень"
+ ],
+ "mfe": [
+ "Latn",
+ [
+ "AM"
+ ],
+ "Morisyen"
+ ],
+ "mg": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "Malagasy"
+ ],
+ "mh": [
+ "Latn",
+ [
+ "PA"
+ ],
+ "Ebon"
+ ],
+ "mhr": [
+ "Cyrl",
+ [
+ "EU"
+ ],
+ "олык марий"
+ ],
+ "mi": [
+ "Latn",
+ [
+ "PA"
+ ],
+ "Māori"
+ ],
+ "mic": [
+ "Latn",
+ [
+ "AM"
+ ],
+ "Mi'kmaq"
+ ],
+ "min": [
+ "Latn",
+ [
+ "AS"
+ ],
+ "Baso Minangkabau"
+ ],
+ "miq": [
+ "Latn",
+ [
+ "AM"
+ ],
+ "Mískitu"
+ ],
+ "mk": [
+ "Cyrl",
+ [
+ "EU"
+ ],
+ "македонски"
+ ],
+ "ml": [
+ "Mlym",
+ [
+ "AS",
+ "ME"
+ ],
+ "മലയാളം"
+ ],
+ "mn": [
+ "Cyrl",
+ [
+ "AS"
+ ],
+ "монгол"
+ ],
+ "mnc": [
+ "Mong",
+ [
+ "AS"
+ ],
+ "ᠮᠠᠨᠵᡠ ᡤᡳᠰᡠᠨ"
+ ],
+ "mni": [
+ "Beng",
+ [
+ "AS"
+ ],
+ "মেইতেই লোন্"
+ ],
+ "mnw": [
+ "Mymr",
+ [
+ "AS"
+ ],
+ "ဘာသာ မန်"
+ ],
+ "mo": [
+ "Cyrl",
+ [
+ "EU"
+ ],
+ "молдовеняскэ"
+ ],
+ "moe": [
+ "Latn",
+ [
+ "AM"
+ ],
+ "Innu-aimun"
+ ],
+ "mr": [
+ "Deva",
+ [
+ "AS",
+ "ME"
+ ],
+ "मराठी"
+ ],
+ "mrj": [
+ "Cyrl",
+ [
+ "EU"
+ ],
+ "кырык мары"
+ ],
+ "ms": [
+ "Latn",
+ [
+ "AS"
+ ],
+ "Bahasa Melayu"
+ ],
+ "mt": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "Malti"
+ ],
+ "mui": [
+ "Latn",
+ [
+ "AS"
+ ],
+ "Musi"
+ ],
+ "mus": [
+ "Latn",
+ [
+ "AM"
+ ],
+ "Mvskoke"
+ ],
+ "mwl": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "Mirandés"
+ ],
+ "mwv": [
+ "Latn",
+ [
+ "AS"
+ ],
+ "Behase Mentawei"
+ ],
+ "mww": [
+ "mww-latn"
+ ],
+ "mww-latn": [
+ "Latn",
+ [
+ "AS"
+ ],
+ "Hmoob Dawb"
+ ],
+ "my": [
+ "Mymr",
+ [
+ "AS"
+ ],
+ "မြန်မာဘာသာ"
+ ],
+ "myv": [
+ "Cyrl",
+ [
+ "EU"
+ ],
+ "эрзянь"
+ ],
+ "mzn": [
+ "Arab",
+ [
+ "ME",
+ "AS"
+ ],
+ "مازِرونی"
+ ],
+ "na": [
+ "Latn",
+ [
+ "PA"
+ ],
+ "Dorerin Naoero"
+ ],
+ "nah": [
+ "Latn",
+ [
+ "AM"
+ ],
+ "Nāhuatl"
+ ],
+ "nan": [
+ "Latn",
+ [
+ "AS"
+ ],
+ "Bân-lâm-gú"
+ ],
+ "nap": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "Napulitano"
+ ],
+ "nb": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "norsk (bokmål)"
+ ],
+ "nd": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "siNdebele saseNyakatho"
+ ],
+ "nds-nl": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "Nedersaksisch"
+ ],
+ "nds": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "Plattdüütsch"
+ ],
+ "ne": [
+ "Deva",
+ [
+ "AS"
+ ],
+ "नेपाली"
+ ],
+ "new": [
+ "Deva",
+ [
+ "AS"
+ ],
+ "नेपाल भाषा"
+ ],
+ "ng": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "Oshiwambo"
+ ],
+ "niu": [
+ "Latn",
+ [
+ "PA"
+ ],
+ "ko e vagahau Niuē"
+ ],
+ "njo": [
+ "Latn",
+ [
+ "AS"
+ ],
+ "Ao"
+ ],
+ "nl-informal": [
+ "Latn",
+ [
+ "EU",
+ "AM"
+ ],
+ "Nederlands (informeel)"
+ ],
+ "nl": [
+ "Latn",
+ [
+ "EU",
+ "AM"
+ ],
+ "Nederlands"
+ ],
+ "nn": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "norsk (nynorsk)"
+ ],
+ "no": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "norsk"
+ ],
+ "nod": [
+ "Thai",
+ [
+ "AS"
+ ],
+ "คำเมือง"
+ ],
+ "nov": [
+ "Latn",
+ [
+ "WW"
+ ],
+ "Novial"
+ ],
+ "nqo": [
+ "Nkoo",
+ [
+ "AF"
+ ],
+ "ߒߞߏ"
+ ],
+ "nr": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "isiNdebele seSewula"
+ ],
+ "nrm": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "Nouormand"
+ ],
+ "nso": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "Sesotho sa Leboa"
+ ],
+ "nv": [
+ "Latn",
+ [
+ "AM"
+ ],
+ "Diné bizaad"
+ ],
+ "ny": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "Chi-Chewa"
+ ],
+ "nys": [
+ "Latn",
+ [
+ "PA"
+ ],
+ "Nyungar"
+ ],
+ "oc": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "occitan"
+ ],
+ "oka": [
+ "Latn",
+ [
+ "AM"
+ ],
+ "n̓səl̓xcin̓"
+ ],
+ "olo": [
+ "Latn",
+ [
+ "AS",
+ "EU"
+ ],
+ "Livvinkarjala"
+ ],
+ "om": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "Oromoo"
+ ],
+ "ood": [
+ "Latn",
+ [
+ "AM"
+ ],
+ "ʼOʼodham ha-ñeʼokĭ"
+ ],
+ "or": [
+ "Orya",
+ [
+ "AS"
+ ],
+ "ଓଡ଼ିଆ"
+ ],
+ "os": [
+ "Cyrl",
+ [
+ "EU"
+ ],
+ "Ирон"
+ ],
+ "ota": [
+ "Arab",
+ [
+ "AS",
+ "EU"
+ ],
+ "لسان عثمانى"
+ ],
+ "ovd": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "övdalsk"
+ ],
+ "pa": [
+ "pa-guru"
+ ],
+ "pa-guru": [
+ "Guru",
+ [
+ "AS"
+ ],
+ "ਪੰਜਾਬੀ"
+ ],
+ "pag": [
+ "Latn",
+ [
+ "AS"
+ ],
+ "Pangasinan"
+ ],
+ "pam": [
+ "Latn",
+ [
+ "AS"
+ ],
+ "Kapampangan"
+ ],
+ "pap": [
+ "Latn",
+ [
+ "AM"
+ ],
+ "Papiamentu"
+ ],
+ "pbb": [
+ "Latn",
+ [
+ "AM"
+ ],
+ "Nasa Yuwe"
+ ],
+ "pcd": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "Picard"
+ ],
+ "pdc": [
+ "Latn",
+ [
+ "EU",
+ "AM"
+ ],
+ "Deitsch"
+ ],
+ "pdt": [
+ "Latn",
+ [
+ "EU",
+ "AM"
+ ],
+ "Plautdietsch"
+ ],
+ "pfl": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "Pälzisch"
+ ],
+ "pi": [
+ "Deva",
+ [
+ "AS"
+ ],
+ "पालि"
+ ],
+ "pih": [
+ "Latn",
+ [
+ "PA"
+ ],
+ "Norfuk \/ Pitkern"
+ ],
+ "pis": [
+ "Latn",
+ [
+ "PA"
+ ],
+ "Pijin"
+ ],
+ "pjt": [
+ "Latn",
+ [
+ "PA"
+ ],
+ "Pitjantjatjara"
+ ],
+ "pko": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "Pökoot"
+ ],
+ "pl": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "polski"
+ ],
+ "pms": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "Piemontèis"
+ ],
+ "pnb": [
+ "Arab",
+ [
+ "AS",
+ "ME"
+ ],
+ "پنجابی"
+ ],
+ "pnt": [
+ "Grek",
+ [
+ "EU"
+ ],
+ "Ποντιακά"
+ ],
+ "ppl": [
+ "Latn",
+ [
+ "AM"
+ ],
+ "Nawat"
+ ],
+ "prg": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "Prūsiskan"
+ ],
+ "prs": [
+ "Arab",
+ [
+ "AS",
+ "ME"
+ ],
+ "دری"
+ ],
+ "ps": [
+ "Arab",
+ [
+ "AS",
+ "ME"
+ ],
+ "پښتو"
+ ],
+ "pt-br": [
+ "Latn",
+ [
+ "AM"
+ ],
+ "português do Brasil"
+ ],
+ "pt": [
+ "Latn",
+ [
+ "EU",
+ "AM",
+ "AS",
+ "PA",
+ "AF",
+ "WW"
+ ],
+ "português"
+ ],
+ "qu": [
+ "Latn",
+ [
+ "AM"
+ ],
+ "Runa Simi"
+ ],
+ "quc": [
+ "Latn",
+ [
+ "AM"
+ ],
+ "K'iche'"
+ ],
+ "qug": [
+ "Latn",
+ [
+ "AM"
+ ],
+ "Runa shimi"
+ ],
+ "qwh": [
+ "Latn",
+ [
+ "AM"
+ ],
+ "anqash qichwa"
+ ],
+ "rap": [
+ "Latn",
+ [
+ "AM"
+ ],
+ "arero rapa nui"
+ ],
+ "rcf": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "Kreol Réyoné"
+ ],
+ "rgn": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "Rumagnôl"
+ ],
+ "rif": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "Tarifit"
+ ],
+ "rki": [
+ "Mymr",
+ [
+ "AS"
+ ],
+ "ရခိုင်"
+ ],
+ "rm": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "rumantsch"
+ ],
+ "rmf": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "kaalengo tšimb"
+ ],
+ "rmy": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "Romani"
+ ],
+ "rn": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "Kirundi"
+ ],
+ "ro": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "română"
+ ],
+ "roa-rup": [
+ "rup"
+ ],
+ "roa-tara": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "tarandíne"
+ ],
+ "rtm": [
+ "Latn",
+ [
+ "PA"
+ ],
+ "Faeag Rotuma"
+ ],
+ "ru": [
+ "Cyrl",
+ [
+ "EU",
+ "AS",
+ "ME"
+ ],
+ "русский"
+ ],
+ "rue": [
+ "Cyrl",
+ [
+ "EU"
+ ],
+ "русиньскый"
+ ],
+ "rup": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "armãneashti"
+ ],
+ "ruq": [
+ "Cyrl",
+ [
+ "EU"
+ ],
+ "Влахесте"
+ ],
+ "ruq-cyrl": [
+ "ruq"
+ ],
+ "ruq-grek": [
+ "Grek",
+ [
+ "EU"
+ ],
+ "Megleno-Romanian (Greek script)"
+ ],
+ "ruq-latn": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "Vlăheşte"
+ ],
+ "rut": [
+ "Cyrl",
+ [
+ "EU"
+ ],
+ "мыхаӀбишды"
+ ],
+ "rw": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "Kinyarwanda"
+ ],
+ "rwr": [
+ "Deva",
+ [
+ "AS"
+ ],
+ "मारवाड़ी"
+ ],
+ "ryu": [
+ "Kana",
+ [
+ "AS"
+ ],
+ "ʔucināguci"
+ ],
+ "sa": [
+ "Deva",
+ [
+ "AS"
+ ],
+ "संस्कृतम्"
+ ],
+ "sah": [
+ "Cyrl",
+ [
+ "EU",
+ "AS"
+ ],
+ "саха тыла"
+ ],
+ "sat": [
+ "Olck",
+ [
+ "AS"
+ ],
+ "ᱥᱟᱱᱛᱟᱲᱤ"
+ ],
+ "saz": [
+ "Saur",
+ [
+ "AS"
+ ],
+ "ꢱꣃꢬꢵꢯ꣄ꢡ꣄ꢬꢵ"
+ ],
+ "sc": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "sardu"
+ ],
+ "scn": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "sicilianu"
+ ],
+ "sco": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "Scots"
+ ],
+ "sd": [
+ "Arab",
+ [
+ "AS"
+ ],
+ "سنڌي"
+ ],
+ "sdc": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "Sassaresu"
+ ],
+ "sdh": [
+ "Arab",
+ [
+ "ME"
+ ],
+ "کوردی خوارگ"
+ ],
+ "se": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "davvisámegiella"
+ ],
+ "ses": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "Koyraboro Senni"
+ ],
+ "sei": [
+ "Latn",
+ [
+ "AM"
+ ],
+ "Cmique Itom"
+ ],
+ "sg": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "Sängö"
+ ],
+ "sgs": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "žemaitėška"
+ ],
+ "sh": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "srpskohrvatski"
+ ],
+ "shi-latn": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "Tašlḥiyt"
+ ],
+ "shi-tfng": [
+ "Tfng",
+ [
+ "AF"
+ ],
+ "ⵜⴰⵛⵍⵃⵉⵜ"
+ ],
+ "shi": [
+ "shi-latn"
+ ],
+ "shn": [
+ "Mymr",
+ [
+ "AS"
+ ],
+ "လိၵ်ႈတႆး"
+ ],
+ "si": [
+ "Sinh",
+ [
+ "AS"
+ ],
+ "සිංහල"
+ ],
+ "simple": [
+ "Latn",
+ [
+ "WW"
+ ],
+ "Simple English"
+ ],
+ "sjd": [
+ "Cyrl",
+ [
+ "EU"
+ ],
+ "Кӣллт са̄мь кӣлл"
+ ],
+ "sje": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "bidumsámegiella"
+ ],
+ "sjo": [
+ "Mong",
+ [
+ "AS"
+ ],
+ "ᠰᡞᠪᡝ ᡤᡞᠰᡠᠨ"
+ ],
+ "sju": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "ubmejensámien giella"
+ ],
+ "sk": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "slovenčina"
+ ],
+ "sl": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "slovenščina"
+ ],
+ "sli": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "Schläsch"
+ ],
+ "slr": [
+ "Latn",
+ [
+ "AS"
+ ],
+ "Salırça"
+ ],
+ "sly": [
+ "Latn",
+ [
+ "AS"
+ ],
+ "Bahasa Selayar"
+ ],
+ "skr-arab": [
+ "Arab",
+ [
+ "AS"
+ ],
+ "سرائیکی"
+ ],
+ "skr": [
+ "skr-arab"
+ ],
+ "syc": [
+ "Syrc",
+ [
+ "ME"
+ ],
+ "ܣܘܪܝܝܐ"
+ ],
+ "sm": [
+ "Latn",
+ [
+ "PA"
+ ],
+ "Gagana Samoa"
+ ],
+ "sma": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "åarjelsaemien"
+ ],
+ "smj": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "julevsámegiella"
+ ],
+ "smn": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "anarâškielâ"
+ ],
+ "sms": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "sää´mǩiõll"
+ ],
+ "sn": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "chiShona"
+ ],
+ "so": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "Soomaaliga"
+ ],
+ "son": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "soŋay"
+ ],
+ "sq": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "shqip"
+ ],
+ "sr": [
+ "sr-cyrl"
+ ],
+ "sr-ec": [
+ "sr-cyrl"
+ ],
+ "sr-cyrl": [
+ "Cyrl",
+ [
+ "EU"
+ ],
+ "српски"
+ ],
+ "sr-el": [
+ "sr-latn"
+ ],
+ "sr-latn": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "srpski"
+ ],
+ "srn": [
+ "Latn",
+ [
+ "AM",
+ "EU"
+ ],
+ "Sranantongo"
+ ],
+ "ss": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "SiSwati"
+ ],
+ "st": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "Sesotho"
+ ],
+ "stq": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "Seeltersk"
+ ],
+ "sty": [
+ "Cyrl",
+ [
+ "EU",
+ "AS"
+ ],
+ "себертатар"
+ ],
+ "su": [
+ "Latn",
+ [
+ "AS"
+ ],
+ "Basa Sunda"
+ ],
+ "sv": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "svenska"
+ ],
+ "sw": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "Kiswahili"
+ ],
+ "swb": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "Shikomoro"
+ ],
+ "sxu": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "Säggssch"
+ ],
+ "szl": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "ślůnski"
+ ],
+ "ta": [
+ "Taml",
+ [
+ "AS"
+ ],
+ "தமிழ்"
+ ],
+ "tay": [
+ "Latn",
+ [
+ "AS"
+ ],
+ "Tayal"
+ ],
+ "tcy": [
+ "Knda",
+ [
+ "AS"
+ ],
+ "ತುಳು"
+ ],
+ "te": [
+ "Telu",
+ [
+ "AS"
+ ],
+ "తెలుగు"
+ ],
+ "tet": [
+ "Latn",
+ [
+ "AS",
+ "PA"
+ ],
+ "tetun"
+ ],
+ "tg-cyrl": [
+ "Cyrl",
+ [
+ "AS"
+ ],
+ "тоҷикӣ"
+ ],
+ "tg-latn": [
+ "Latn",
+ [
+ "AS"
+ ],
+ "tojikī"
+ ],
+ "tg": [
+ "tg-cyrl"
+ ],
+ "th": [
+ "Thai",
+ [
+ "AS"
+ ],
+ "ไทย"
+ ],
+ "ti": [
+ "Ethi",
+ [
+ "AF"
+ ],
+ "ትግርኛ"
+ ],
+ "tig": [
+ "Ethi",
+ [
+ "AF"
+ ],
+ "ትግረ"
+ ],
+ "tk": [
+ "Latn",
+ [
+ "AS"
+ ],
+ "Türkmençe"
+ ],
+ "tkr": [
+ "Cyrl",
+ [
+ "AS"
+ ],
+ "ЦӀаӀхна миз"
+ ],
+ "tl": [
+ "Latn",
+ [
+ "AS"
+ ],
+ "Tagalog"
+ ],
+ "tly": [
+ "Cyrl",
+ [
+ "EU",
+ "AS",
+ "ME"
+ ],
+ "толышә зывон"
+ ],
+ "tmr": [
+ "Hebr",
+ [
+ "ME",
+ "EU",
+ "AM"
+ ],
+ "ארמית בבלית"
+ ],
+ "tn": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "Setswana"
+ ],
+ "to": [
+ "Latn",
+ [
+ "PA"
+ ],
+ "lea faka-Tonga"
+ ],
+ "tokipona": [
+ "Latn",
+ [
+ "WW"
+ ],
+ "Toki Pona"
+ ],
+ "tpi": [
+ "Latn",
+ [
+ "PA",
+ "AS"
+ ],
+ "Tok Pisin"
+ ],
+ "tr": [
+ "Latn",
+ [
+ "EU",
+ "ME"
+ ],
+ "Türkçe"
+ ],
+ "trp": [
+ "Latn",
+ [
+ "AS"
+ ],
+ "Kokborok (Tripuri)"
+ ],
+ "tru": [
+ "Latn",
+ [
+ "AS"
+ ],
+ "Ṫuroyo"
+ ],
+ "trv": [
+ "Latn",
+ [
+ "AS"
+ ],
+ "Sediq Taroko"
+ ],
+ "ts": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "Xitsonga"
+ ],
+ "tsd": [
+ "Grek",
+ [
+ "EU"
+ ],
+ "Τσακωνικά"
+ ],
+ "tt": [
+ "Cyrl",
+ [
+ "EU"
+ ],
+ "татарча"
+ ],
+ "tt-cyrl": [
+ "tt"
+ ],
+ "tt-latn": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "tatarça"
+ ],
+ "ttt": [
+ "Cyrl",
+ [
+ "AS"
+ ],
+ "Tati"
+ ],
+ "tum": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "chiTumbuka"
+ ],
+ "tw": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "Twi"
+ ],
+ "twd": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "Tweants"
+ ],
+ "ty": [
+ "Latn",
+ [
+ "PA"
+ ],
+ "reo tahiti"
+ ],
+ "tyv": [
+ "Cyrl",
+ [
+ "AS"
+ ],
+ "тыва дыл"
+ ],
+ "tzl": [
+ "Latn",
+ [
+ "WW"
+ ],
+ "Talossan"
+ ],
+ "tzm": [
+ "Tfng",
+ [
+ "AF"
+ ],
+ "ⵜⴰⵎⴰⵣⵉⵖⵜ"
+ ],
+ "udm": [
+ "Cyrl",
+ [
+ "EU"
+ ],
+ "удмурт"
+ ],
+ "ug": [
+ "ug-arab"
+ ],
+ "ug-arab": [
+ "Arab",
+ [
+ "AS"
+ ],
+ "ئۇيغۇرچە"
+ ],
+ "ug-latn": [
+ "Latn",
+ [
+ "AS"
+ ],
+ "uyghurche"
+ ],
+ "ug-cyrl": [
+ "Cyrl",
+ [
+ "AS"
+ ],
+ "уйғурчә"
+ ],
+ "uk": [
+ "Cyrl",
+ [
+ "EU"
+ ],
+ "українська"
+ ],
+ "umu": [
+ "Latn",
+ [
+ "AM"
+ ],
+ "Huluníixsuwaakan"
+ ],
+ "ur": [
+ "Arab",
+ [
+ "AS",
+ "ME"
+ ],
+ "اردو"
+ ],
+ "uz": [
+ "Latn",
+ [
+ "AS"
+ ],
+ "oʻzbekcha"
+ ],
+ "ve": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "Tshivenda"
+ ],
+ "vec": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "vèneto"
+ ],
+ "vep": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "vepsän kel’"
+ ],
+ "vi": [
+ "Latn",
+ [
+ "AS"
+ ],
+ "Tiếng Việt"
+ ],
+ "vls": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "West-Vlams"
+ ],
+ "vmf": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "Mainfränkisch"
+ ],
+ "vo": [
+ "Latn",
+ [
+ "WW"
+ ],
+ "Volapük"
+ ],
+ "vot": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "Vaďďa"
+ ],
+ "vro": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "Võro"
+ ],
+ "wa": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "walon"
+ ],
+ "war": [
+ "Latn",
+ [
+ "AS"
+ ],
+ "Winaray"
+ ],
+ "wls": [
+ "Latn",
+ [
+ "PA"
+ ],
+ "Faka'uvea"
+ ],
+ "wo": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "Wolof"
+ ],
+ "wuu": [
+ "Hans",
+ [
+ "AS"
+ ],
+ "吴语"
+ ],
+ "xal": [
+ "Cyrl",
+ [
+ "EU"
+ ],
+ "хальмг"
+ ],
+ "xh": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "isiXhosa"
+ ],
+ "xmf": [
+ "Geor",
+ [
+ "EU"
+ ],
+ "მარგალური"
+ ],
+ "xsy": [
+ "Latn",
+ [
+ "AS"
+ ],
+ "SaiSiyat"
+ ],
+ "ydd": [
+ "Hebr",
+ [
+ "AS",
+ "EU"
+ ],
+ "Eastern Yiddish"
+ ],
+ "yi": [
+ "Hebr",
+ [
+ "ME",
+ "EU",
+ "AM"
+ ],
+ "ייִדיש"
+ ],
+ "yo": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "Yorùbá"
+ ],
+ "yrk": [
+ "Cyrl",
+ [
+ "AS"
+ ],
+ "Ненэцяʼ вада"
+ ],
+ "yrl": [
+ "Latn",
+ [
+ "AM"
+ ],
+ "ñe'engatú"
+ ],
+ "yua": [
+ "Latn",
+ [
+ "AM"
+ ],
+ "Maaya T'aan"
+ ],
+ "yue": [
+ "Hant",
+ [
+ "AS"
+ ],
+ "粵語"
+ ],
+ "za": [
+ "Latn",
+ [
+ "AS"
+ ],
+ "Vahcuengh"
+ ],
+ "zea": [
+ "Latn",
+ [
+ "EU"
+ ],
+ "Zeêuws"
+ ],
+ "zgh": [
+ "Tfng",
+ [
+ "AF"
+ ],
+ "ⵜⴰⵎⴰⵣⵉⵖⵜ ⵜⴰⵏⴰⵡⴰⵢⵜ"
+ ],
+ "zh": [
+ "Hans",
+ [
+ "AS"
+ ],
+ "中文"
+ ],
+ "zh-classical": [
+ "lzh"
+ ],
+ "zh-cn": [
+ "Hans",
+ [
+ "AS"
+ ],
+ "中文(中国大陆)"
+ ],
+ "zh-hans": [
+ "Hans",
+ [
+ "AS"
+ ],
+ "中文(简体)"
+ ],
+ "zh-hant": [
+ "Hant",
+ [
+ "AS"
+ ],
+ "中文(繁體)"
+ ],
+ "zh-hk": [
+ "Hant",
+ [
+ "AS"
+ ],
+ "中文(香港)"
+ ],
+ "zh-min-nan": [
+ "nan"
+ ],
+ "zh-mo": [
+ "Hant",
+ [
+ "AS"
+ ],
+ "中文(澳門)"
+ ],
+ "zh-my": [
+ "Hans",
+ [
+ "AS"
+ ],
+ "中文(马来西亚)"
+ ],
+ "zh-sg": [
+ "Hans",
+ [
+ "AS"
+ ],
+ "中文(新加坡)"
+ ],
+ "zh-tw": [
+ "Hant",
+ [
+ "AS"
+ ],
+ "中文(台灣)"
+ ],
+ "zh-yue": [
+ "yue"
+ ],
+ "zu": [
+ "Latn",
+ [
+ "AF"
+ ],
+ "isiZulu"
+ ],
+ "zun": [
+ "Latn",
+ [
+ "AM"
+ ],
+ "Shiwi'ma"
+ ]
+ },
+ "scriptgroups": {
+ "Latin": [
+ "Latn",
+ "Goth"
+ ],
+ "Greek": [
+ "Grek"
+ ],
+ "WestCaucasian": [
+ "Armn",
+ "Geor"
+ ],
+ "Arabic": [
+ "Arab"
+ ],
+ "MiddleEastern": [
+ "Hebr",
+ "Syrc"
+ ],
+ "African": [
+ "Ethi",
+ "Nkoo",
+ "Tfng",
+ "Copt"
+ ],
+ "SouthAsian": [
+ "Beng",
+ "Deva",
+ "Gujr",
+ "Guru",
+ "Knda",
+ "Mlym",
+ "Olck",
+ "Orya",
+ "Saur",
+ "Sinh",
+ "Taml",
+ "Telu",
+ "Tibt",
+ "Thaa",
+ "Wara"
+ ],
+ "Cyrillic": [
+ "Cyrl"
+ ],
+ "CJK": [
+ "Hans",
+ "Hant",
+ "Kana",
+ "Kore",
+ "Jpan",
+ "Yiii"
+ ],
+ "SouthEastAsian": [
+ "Bali",
+ "Batk",
+ "Bugi",
+ "Java",
+ "Khmr",
+ "Laoo",
+ "Mymr",
+ "Thai"
+ ],
+ "Mongolian": [
+ "Mong"
+ ],
+ "SignWriting": [
+ "Sgnw"
+ ],
+ "NativeAmerican": [
+ "Cher",
+ "Cans"
+ ],
+ "Special": [
+ "Zyyy"
+ ]
+ },
+ "rtlscripts": [
+ "Arab",
+ "Hebr",
+ "Syrc",
+ "Nkoo",
+ "Thaa"
+ ],
+ "regiongroups": {
+ "WW": 1,
+ "SP": 1,
+ "AM": 2,
+ "EU": 3,
+ "ME": 3,
+ "AF": 3,
+ "AS": 4,
+ "PA": 4
+ },
+ "territories": {
+ "AC": [
+ "en"
+ ],
+ "AD": [
+ "ca",
+ "es",
+ "fr"
+ ],
+ "AE": [
+ "ar",
+ "ml",
+ "ps",
+ "fa"
+ ],
+ "AF": [
+ "fa",
+ "ps",
+ "uz",
+ "tk",
+ "bgn",
+ "ug-arab",
+ "kk-arab",
+ "kk-cyrl"
+ ],
+ "AG": [
+ "en",
+ "pt"
+ ],
+ "AI": [
+ "en"
+ ],
+ "AL": [
+ "sq",
+ "el",
+ "mk"
+ ],
+ "AM": [
+ "hy",
+ "ku-latn",
+ "az-latn"
+ ],
+ "AO": [
+ "pt",
+ "ln"
+ ],
+ "AR": [
+ "es",
+ "en",
+ "cy",
+ "gn"
+ ],
+ "AS": [
+ "sm",
+ "en"
+ ],
+ "AT": [
+ "de",
+ "bar",
+ "en",
+ "fr",
+ "it",
+ "hr",
+ "sl",
+ "hu"
+ ],
+ "AU": [
+ "en",
+ "zh-hant",
+ "zh",
+ "it"
+ ],
+ "AW": [
+ "nl",
+ "pap",
+ "en"
+ ],
+ "AX": [
+ "sv"
+ ],
+ "AZ": [
+ "az-latn",
+ "az-cyrl",
+ "tly",
+ "ku-latn",
+ "ttt",
+ "tkr"
+ ],
+ "BA": [
+ "bs",
+ "en",
+ "hr",
+ "sr-cyrl",
+ "sr-latn"
+ ],
+ "BB": [
+ "en"
+ ],
+ "BD": [
+ "bn",
+ "en",
+ "my",
+ "mni"
+ ],
+ "BE": [
+ "en",
+ "nl",
+ "fr",
+ "de",
+ "vls",
+ "wa"
+ ],
+ "BF": [
+ "fr",
+ "ff"
+ ],
+ "BG": [
+ "bg",
+ "en",
+ "ru",
+ "tr",
+ "de"
+ ],
+ "BH": [
+ "ar",
+ "ml"
+ ],
+ "BI": [
+ "rn",
+ "fr",
+ "sw",
+ "en"
+ ],
+ "BJ": [
+ "fr",
+ "fon",
+ "yo"
+ ],
+ "BL": [
+ "fr"
+ ],
+ "BM": [
+ "en"
+ ],
+ "BN": [
+ "ms",
+ "zh-hant",
+ "zh",
+ "en"
+ ],
+ "BO": [
+ "es",
+ "qu",
+ "ay",
+ "gn",
+ "aro"
+ ],
+ "BQ": [
+ "pap",
+ "nl"
+ ],
+ "BR": [
+ "pt",
+ "en",
+ "de",
+ "it",
+ "ja",
+ "es",
+ "ko",
+ "kgp",
+ "yrl"
+ ],
+ "BS": [
+ "en"
+ ],
+ "BT": [
+ "dz",
+ "ne",
+ "en"
+ ],
+ "BW": [
+ "en",
+ "tn",
+ "af"
+ ],
+ "BY": [
+ "be",
+ "ru"
+ ],
+ "BZ": [
+ "en",
+ "es"
+ ],
+ "CA": [
+ "en",
+ "fr",
+ "it",
+ "de",
+ "pdt",
+ "cr",
+ "yi",
+ "ike-cans",
+ "moe",
+ "atj"
+ ],
+ "CC": [
+ "ms",
+ "en"
+ ],
+ "CD": [
+ "sw",
+ "fr",
+ "ln",
+ "kg",
+ "rw"
+ ],
+ "CF": [
+ "fr",
+ "sg",
+ "ln"
+ ],
+ "CG": [
+ "fr",
+ "ln"
+ ],
+ "CH": [
+ "de",
+ "gsw",
+ "en",
+ "fr",
+ "it",
+ "lmo",
+ "pt",
+ "rm"
+ ],
+ "CI": [
+ "fr"
+ ],
+ "CK": [
+ "en"
+ ],
+ "CL": [
+ "es",
+ "en",
+ "arn"
+ ],
+ "CM": [
+ "fr",
+ "en",
+ "ff",
+ "ar",
+ "ksf",
+ "ha-arab",
+ "ha-latn"
+ ],
+ "CN": [
+ "zh",
+ "wuu",
+ "yue",
+ "hsn",
+ "hak",
+ "nan",
+ "gan",
+ "ii",
+ "ug-arab",
+ "za",
+ "mn",
+ "bo",
+ "ko",
+ "kk-arab",
+ "kk-cyrl",
+ "ky",
+ "en",
+ "ru",
+ "vi",
+ "uz",
+ "lzh"
+ ],
+ "CO": [
+ "es",
+ "guc"
+ ],
+ "CR": [
+ "es"
+ ],
+ "CU": [
+ "es"
+ ],
+ "CV": [
+ "kea",
+ "pt"
+ ],
+ "CW": [
+ "pap",
+ "nl",
+ "es"
+ ],
+ "CX": [
+ "en"
+ ],
+ "CY": [
+ "el",
+ "en",
+ "tr",
+ "fr",
+ "hy",
+ "ar"
+ ],
+ "CZ": [
+ "cs",
+ "en",
+ "sk",
+ "de",
+ "pl"
+ ],
+ "DE": [
+ "de",
+ "en",
+ "fr",
+ "bar",
+ "nds",
+ "nl",
+ "it",
+ "es",
+ "ru",
+ "vmf",
+ "tr",
+ "gsw",
+ "da",
+ "hr",
+ "ku-latn",
+ "el",
+ "ksh",
+ "pl",
+ "hsb",
+ "frr",
+ "dsb",
+ "stq",
+ "pfl"
+ ],
+ "DG": [
+ "en"
+ ],
+ "DJ": [
+ "aa",
+ "so",
+ "ar",
+ "fr"
+ ],
+ "DK": [
+ "da",
+ "en",
+ "de",
+ "sv",
+ "fo",
+ "kl",
+ "jut"
+ ],
+ "DM": [
+ "en"
+ ],
+ "DO": [
+ "es",
+ "en"
+ ],
+ "DZ": [
+ "arq",
+ "ar",
+ "fr",
+ "kab",
+ "en"
+ ],
+ "EA": [
+ "es"
+ ],
+ "EC": [
+ "es",
+ "qu",
+ "qug"
+ ],
+ "EE": [
+ "et",
+ "ru",
+ "en",
+ "fi",
+ "vro"
+ ],
+ "EG": [
+ "ar",
+ "arz",
+ "en",
+ "el"
+ ],
+ "EH": [
+ "ar"
+ ],
+ "ER": [
+ "ti",
+ "en",
+ "tig",
+ "ar",
+ "aa",
+ "byn"
+ ],
+ "ES": [
+ "es",
+ "en",
+ "ca",
+ "gl",
+ "eu",
+ "ast",
+ "ext"
+ ],
+ "ET": [
+ "en",
+ "am",
+ "om",
+ "so",
+ "ti",
+ "aa"
+ ],
+ "FI": [
+ "fi",
+ "en",
+ "sv",
+ "de",
+ "ru",
+ "et",
+ "rmf",
+ "se",
+ "smn",
+ "sms"
+ ],
+ "FJ": [
+ "en",
+ "hi",
+ "hif",
+ "fj",
+ "rtm"
+ ],
+ "FK": [
+ "en"
+ ],
+ "FM": [
+ "en"
+ ],
+ "FO": [
+ "fo"
+ ],
+ "FR": [
+ "fr",
+ "en",
+ "es",
+ "de",
+ "oc",
+ "it",
+ "pt",
+ "pcd",
+ "gsw",
+ "br",
+ "co",
+ "ca",
+ "nl",
+ "eu",
+ "frp",
+ "ia"
+ ],
+ "GA": [
+ "fr"
+ ],
+ "GB": [
+ "en",
+ "fr",
+ "de",
+ "sco",
+ "pa-guru",
+ "cy",
+ "bn",
+ "zh-hant",
+ "zh",
+ "el",
+ "it",
+ "ks-arab",
+ "gd",
+ "yi",
+ "ml",
+ "ga",
+ "kw"
+ ],
+ "GD": [
+ "en"
+ ],
+ "GE": [
+ "ka",
+ "xmf",
+ "ru",
+ "hy",
+ "ab",
+ "os",
+ "ku-latn"
+ ],
+ "GF": [
+ "fr",
+ "gcr",
+ "zh-hant",
+ "zh"
+ ],
+ "GG": [
+ "en"
+ ],
+ "GH": [
+ "ak",
+ "en",
+ "ee",
+ "gur",
+ "gaa",
+ "ha-latn",
+ "ff"
+ ],
+ "GI": [
+ "en",
+ "es"
+ ],
+ "GL": [
+ "kl",
+ "da"
+ ],
+ "GM": [
+ "en",
+ "ff"
+ ],
+ "GN": [
+ "fr",
+ "ff",
+ "nqo"
+ ],
+ "GP": [
+ "fr"
+ ],
+ "GQ": [
+ "es",
+ "fan",
+ "fr",
+ "pt"
+ ],
+ "GR": [
+ "el",
+ "en",
+ "fr",
+ "de",
+ "pnt",
+ "mk",
+ "tr",
+ "bg",
+ "sq",
+ "tsd"
+ ],
+ "GT": [
+ "es",
+ "quc"
+ ],
+ "GU": [
+ "en",
+ "ch"
+ ],
+ "GW": [
+ "pt",
+ "ff"
+ ],
+ "GY": [
+ "en"
+ ],
+ "HK": [
+ "zh-hant",
+ "zh",
+ "yue",
+ "en"
+ ],
+ "HN": [
+ "es",
+ "en"
+ ],
+ "HR": [
+ "hr",
+ "en",
+ "it"
+ ],
+ "HT": [
+ "ht",
+ "fr"
+ ],
+ "HU": [
+ "hu",
+ "en",
+ "de",
+ "fr",
+ "ro",
+ "hr",
+ "sk",
+ "sl"
+ ],
+ "IC": [
+ "es"
+ ],
+ "ID": [
+ "id",
+ "jv",
+ "su",
+ "ms",
+ "min",
+ "bew",
+ "ban",
+ "bug",
+ "bjn",
+ "ace",
+ "bbc-latn",
+ "zh-hant",
+ "zh",
+ "gor",
+ "sly",
+ "mwv"
+ ],
+ "IE": [
+ "en",
+ "ga",
+ "fr"
+ ],
+ "IL": [
+ "he",
+ "en",
+ "ar",
+ "ru",
+ "ro",
+ "yi",
+ "pl",
+ "lad-latn",
+ "hu",
+ "am",
+ "ti",
+ "ml"
+ ],
+ "IM": [
+ "en",
+ "gv"
+ ],
+ "IN": [
+ "hi",
+ "en",
+ "bn",
+ "te",
+ "mr",
+ "ta",
+ "ur",
+ "gu",
+ "kn",
+ "ml",
+ "or",
+ "pa-guru",
+ "bho",
+ "as",
+ "mai",
+ "hne",
+ "ne",
+ "sat",
+ "ks-arab",
+ "gom-deva",
+ "gbm",
+ "sd",
+ "doi",
+ "tcy",
+ "brx",
+ "mni",
+ "hoc",
+ "saz",
+ "bfq",
+ "njo",
+ "bo",
+ "bpy",
+ "bft",
+ "sa",
+ "dv",
+ "dz"
+ ],
+ "IO": [
+ "en"
+ ],
+ "IQ": [
+ "ar",
+ "en",
+ "ckb",
+ "az-arab",
+ "az-latn",
+ "fa",
+ "lrc"
+ ],
+ "IR": [
+ "fa",
+ "az-arab",
+ "az-latn",
+ "mzn",
+ "glk",
+ "ckb",
+ "sdh",
+ "tk",
+ "lrc",
+ "ar",
+ "bqi",
+ "luz",
+ "lki",
+ "bgn",
+ "hy",
+ "ps",
+ "ka",
+ "gbz",
+ "kk-arab",
+ "kk-cyrl"
+ ],
+ "IS": [
+ "is",
+ "da"
+ ],
+ "IT": [
+ "it",
+ "en",
+ "fr",
+ "sc",
+ "de",
+ "vec",
+ "nap",
+ "lij",
+ "scn",
+ "sl",
+ "sdc",
+ "fur",
+ "egl",
+ "ca",
+ "el",
+ "lmo",
+ "pms",
+ "hr",
+ "rgn"
+ ],
+ "JE": [
+ "en"
+ ],
+ "JM": [
+ "en",
+ "jam"
+ ],
+ "JO": [
+ "ar",
+ "en"
+ ],
+ "JP": [
+ "ja",
+ "ryu",
+ "ko"
+ ],
+ "KE": [
+ "sw",
+ "en",
+ "ki",
+ "so",
+ "pko",
+ "om",
+ "ar",
+ "pa-guru",
+ "gu"
+ ],
+ "KG": [
+ "ky",
+ "ru"
+ ],
+ "KH": [
+ "km"
+ ],
+ "KI": [
+ "en"
+ ],
+ "KM": [
+ "ar",
+ "fr"
+ ],
+ "KN": [
+ "en"
+ ],
+ "KP": [
+ "ko"
+ ],
+ "KR": [
+ "ko"
+ ],
+ "KW": [
+ "ar"
+ ],
+ "KY": [
+ "en"
+ ],
+ "KZ": [
+ "ru",
+ "kk-cyrl",
+ "en",
+ "de",
+ "ug-cyrl",
+ "ug-arab"
+ ],
+ "LA": [
+ "lo"
+ ],
+ "LB": [
+ "ar",
+ "en",
+ "hy",
+ "ku-arab",
+ "ku-latn",
+ "fr"
+ ],
+ "LC": [
+ "en"
+ ],
+ "LI": [
+ "de",
+ "gsw"
+ ],
+ "LK": [
+ "si",
+ "ta",
+ "en"
+ ],
+ "LR": [
+ "en",
+ "ff"
+ ],
+ "LS": [
+ "st",
+ "en",
+ "zu",
+ "ss",
+ "xh"
+ ],
+ "LT": [
+ "lt",
+ "ru",
+ "en",
+ "de",
+ "sgs"
+ ],
+ "LU": [
+ "fr",
+ "lb",
+ "de",
+ "en",
+ "pt"
+ ],
+ "LV": [
+ "lv",
+ "en",
+ "ru",
+ "ltg"
+ ],
+ "LY": [
+ "ar"
+ ],
+ "MA": [
+ "ary",
+ "ar",
+ "zgh",
+ "fr",
+ "en",
+ "tzm",
+ "shi-latn",
+ "rif",
+ "es"
+ ],
+ "MC": [
+ "fr"
+ ],
+ "MD": [
+ "ro",
+ "uk",
+ "bg",
+ "gag",
+ "ru"
+ ],
+ "ME": [
+ "sr-latn",
+ "sr-cyrl",
+ "sq"
+ ],
+ "MF": [
+ "fr"
+ ],
+ "MG": [
+ "mg",
+ "fr",
+ "en"
+ ],
+ "MH": [
+ "en",
+ "mh"
+ ],
+ "MK": [
+ "mk",
+ "sq",
+ "tr"
+ ],
+ "ML": [
+ "bm",
+ "fr",
+ "ses",
+ "ar"
+ ],
+ "MM": [
+ "my",
+ "shn",
+ "kac",
+ "mnw"
+ ],
+ "MN": [
+ "mn",
+ "kk-arab",
+ "kk-cyrl",
+ "zh",
+ "ru",
+ "ug-cyrl",
+ "ug-arab"
+ ],
+ "MO": [
+ "zh-hant",
+ "zh",
+ "pt",
+ "en"
+ ],
+ "MP": [
+ "en",
+ "ch"
+ ],
+ "MQ": [
+ "fr"
+ ],
+ "MR": [
+ "ar",
+ "fr",
+ "ff",
+ "wo"
+ ],
+ "MS": [
+ "en"
+ ],
+ "MT": [
+ "mt",
+ "en",
+ "it",
+ "fr"
+ ],
+ "MU": [
+ "mfe",
+ "en",
+ "bho",
+ "ur",
+ "fr",
+ "ta"
+ ],
+ "MV": [
+ "dv"
+ ],
+ "MW": [
+ "en",
+ "ny",
+ "tum",
+ "zu"
+ ],
+ "MX": [
+ "es",
+ "en",
+ "yua",
+ "sei"
+ ],
+ "MY": [
+ "ms",
+ "en",
+ "zh-hant",
+ "zh",
+ "ta",
+ "jv",
+ "dtp",
+ "ml",
+ "bug",
+ "bjn"
+ ],
+ "MZ": [
+ "pt",
+ "ts",
+ "ny",
+ "sw",
+ "zu"
+ ],
+ "NA": [
+ "af",
+ "kj",
+ "ng",
+ "hz",
+ "en",
+ "de",
+ "tn"
+ ],
+ "NC": [
+ "fr"
+ ],
+ "NE": [
+ "ha-latn",
+ "fr",
+ "ar",
+ "ff"
+ ],
+ "NF": [
+ "en"
+ ],
+ "NG": [
+ "en",
+ "ha-latn",
+ "ig",
+ "yo",
+ "ha-arab",
+ "ar",
+ "ff"
+ ],
+ "NI": [
+ "es"
+ ],
+ "NL": [
+ "nl",
+ "en",
+ "de",
+ "fr",
+ "nds",
+ "li",
+ "fy",
+ "id",
+ "zea",
+ "rif",
+ "tr"
+ ],
+ "NO": [
+ "nb",
+ "nn",
+ "se"
+ ],
+ "NP": [
+ "ne",
+ "mai",
+ "bho",
+ "new",
+ "en",
+ "dty",
+ "hi",
+ "bo",
+ "bn"
+ ],
+ "NR": [
+ "en",
+ "na"
+ ],
+ "NU": [
+ "en",
+ "niu"
+ ],
+ "NZ": [
+ "en",
+ "mi"
+ ],
+ "OM": [
+ "ar",
+ "fa"
+ ],
+ "PA": [
+ "es",
+ "en",
+ "zh-hant",
+ "zh"
+ ],
+ "PE": [
+ "es",
+ "qu",
+ "ay"
+ ],
+ "PF": [
+ "fr",
+ "ty",
+ "zh-hant",
+ "zh"
+ ],
+ "PG": [
+ "tpi",
+ "en",
+ "ho"
+ ],
+ "PH": [
+ "en",
+ "tl",
+ "es",
+ "ceb",
+ "ilo",
+ "hil",
+ "war",
+ "pam",
+ "pag",
+ "zh-hant",
+ "zh",
+ "cps",
+ "krj",
+ "bto"
+ ],
+ "PK": [
+ "ur",
+ "pa-guru",
+ "en",
+ "ps",
+ "sd",
+ "skr-arab",
+ "brh",
+ "fa",
+ "bgn",
+ "tg-cyrl",
+ "bft",
+ "khw",
+ "ks-arab"
+ ],
+ "PL": [
+ "pl",
+ "en",
+ "de",
+ "ru",
+ "szl",
+ "be",
+ "uk",
+ "csb",
+ "sli",
+ "lt"
+ ],
+ "PM": [
+ "fr",
+ "en"
+ ],
+ "PN": [
+ "en"
+ ],
+ "PR": [
+ "es",
+ "en"
+ ],
+ "PS": [
+ "ar"
+ ],
+ "PT": [
+ "pt",
+ "en",
+ "fr",
+ "es",
+ "gl"
+ ],
+ "PW": [
+ "en"
+ ],
+ "PY": [
+ "gn",
+ "es",
+ "de"
+ ],
+ "QA": [
+ "ar",
+ "fa",
+ "ml"
+ ],
+ "RE": [
+ "fr",
+ "rcf",
+ "ta"
+ ],
+ "RO": [
+ "ro",
+ "en",
+ "fr",
+ "es",
+ "hu",
+ "de",
+ "tr",
+ "sr-latn",
+ "sr-cyrl",
+ "bg",
+ "el",
+ "pl"
+ ],
+ "RS": [
+ "sr-cyrl",
+ "sr-latn",
+ "sq",
+ "hu",
+ "ro",
+ "hr",
+ "sk",
+ "uk"
+ ],
+ "RU": [
+ "ru",
+ "tt",
+ "ba",
+ "cv",
+ "hy",
+ "ce",
+ "av",
+ "udm",
+ "mhr",
+ "sah",
+ "os",
+ "kbd",
+ "myv",
+ "mdf",
+ "kum",
+ "kv",
+ "lez",
+ "krc",
+ "inh",
+ "tyv",
+ "az-cyrl",
+ "az-latn",
+ "ady",
+ "krl",
+ "lbe",
+ "koi",
+ "mrj",
+ "fi",
+ "sr-latn",
+ "sr-cyrl",
+ "vep",
+ "mn",
+ "vot",
+ "cu"
+ ],
+ "RW": [
+ "rw",
+ "en",
+ "fr"
+ ],
+ "SA": [
+ "ar"
+ ],
+ "SB": [
+ "en"
+ ],
+ "SC": [
+ "fr",
+ "en"
+ ],
+ "SD": [
+ "ar",
+ "en",
+ "ha-arab",
+ "ha-latn"
+ ],
+ "SE": [
+ "sv",
+ "en",
+ "fi",
+ "fit",
+ "se",
+ "yi",
+ "smj",
+ "sma",
+ "ia"
+ ],
+ "SG": [
+ "en",
+ "zh",
+ "ms",
+ "ta",
+ "ml",
+ "pa-guru"
+ ],
+ "SH": [
+ "en"
+ ],
+ "SI": [
+ "sl",
+ "hr",
+ "en",
+ "de",
+ "hu",
+ "it"
+ ],
+ "SJ": [
+ "nb",
+ "ru"
+ ],
+ "SK": [
+ "sk",
+ "cs",
+ "en",
+ "de",
+ "hu",
+ "uk",
+ "pl"
+ ],
+ "SL": [
+ "kri",
+ "en",
+ "ff"
+ ],
+ "SM": [
+ "it",
+ "eo"
+ ],
+ "SN": [
+ "wo",
+ "fr",
+ "ff"
+ ],
+ "SO": [
+ "so",
+ "ar",
+ "sw",
+ "om"
+ ],
+ "SR": [
+ "nl",
+ "srn",
+ "zh-hant",
+ "zh"
+ ],
+ "SS": [
+ "ar",
+ "en"
+ ],
+ "ST": [
+ "pt"
+ ],
+ "SV": [
+ "es"
+ ],
+ "SX": [
+ "en",
+ "es",
+ "nl"
+ ],
+ "SY": [
+ "ar",
+ "ku-latn",
+ "fr",
+ "hy"
+ ],
+ "SZ": [
+ "en",
+ "ss",
+ "zu",
+ "ts"
+ ],
+ "TA": [
+ "en"
+ ],
+ "TC": [
+ "en"
+ ],
+ "TD": [
+ "fr",
+ "ar"
+ ],
+ "TF": [
+ "fr"
+ ],
+ "TG": [
+ "fr",
+ "ee"
+ ],
+ "TH": [
+ "th",
+ "en",
+ "nod",
+ "zh-hant",
+ "zh",
+ "mnw",
+ "shn"
+ ],
+ "TJ": [
+ "tg-cyrl",
+ "ru",
+ "fa",
+ "ar"
+ ],
+ "TK": [
+ "en"
+ ],
+ "TL": [
+ "pt",
+ "tet"
+ ],
+ "TM": [
+ "tk",
+ "ru",
+ "uz",
+ "ku-latn"
+ ],
+ "TN": [
+ "aeb-arab",
+ "ar",
+ "fr"
+ ],
+ "TO": [
+ "to",
+ "en"
+ ],
+ "TR": [
+ "tr",
+ "en",
+ "ku-latn",
+ "kbd",
+ "az-latn",
+ "az-arab",
+ "ar",
+ "bg",
+ "ady",
+ "kiu",
+ "hy",
+ "ka",
+ "sr-latn",
+ "sr-cyrl",
+ "lzz",
+ "sq",
+ "ab",
+ "el",
+ "tru",
+ "uz",
+ "ky",
+ "kk-cyrl"
+ ],
+ "TT": [
+ "en",
+ "es"
+ ],
+ "TV": [
+ "en"
+ ],
+ "TW": [
+ "zh-hant",
+ "zh",
+ "trv"
+ ],
+ "TZ": [
+ "sw",
+ "en",
+ "lag"
+ ],
+ "UA": [
+ "uk",
+ "ru",
+ "pl",
+ "yi",
+ "rue",
+ "be",
+ "crh",
+ "ro",
+ "bg",
+ "tr",
+ "hu",
+ "el"
+ ],
+ "UG": [
+ "sw",
+ "lg",
+ "en",
+ "rw",
+ "hi"
+ ],
+ "UM": [
+ "en"
+ ],
+ "US": [
+ "en",
+ "es",
+ "zh-hant",
+ "zh",
+ "fr",
+ "de",
+ "tl",
+ "it",
+ "vi",
+ "ko",
+ "ru",
+ "nv",
+ "yi",
+ "pdc",
+ "haw",
+ "frc",
+ "chr",
+ "esu",
+ "cho",
+ "lkt",
+ "ik",
+ "mus"
+ ],
+ "UY": [
+ "es"
+ ],
+ "UZ": [
+ "uz",
+ "ru",
+ "kaa",
+ "tr"
+ ],
+ "VA": [
+ "it",
+ "la"
+ ],
+ "VC": [
+ "en"
+ ],
+ "VE": [
+ "es"
+ ],
+ "VG": [
+ "en"
+ ],
+ "VI": [
+ "en"
+ ],
+ "VN": [
+ "vi",
+ "zh-hant",
+ "zh"
+ ],
+ "VU": [
+ "bi",
+ "en",
+ "fr"
+ ],
+ "WF": [
+ "wls",
+ "fr"
+ ],
+ "WS": [
+ "sm",
+ "en"
+ ],
+ "XK": [
+ "sq",
+ "aln",
+ "sr-cyrl",
+ "sr-latn"
+ ],
+ "YE": [
+ "ar",
+ "en"
+ ],
+ "YT": [
+ "swb",
+ "fr",
+ "sw"
+ ],
+ "ZA": [
+ "en",
+ "zu",
+ "xh",
+ "af",
+ "nso",
+ "tn",
+ "st",
+ "ts",
+ "ss",
+ "ve",
+ "hi",
+ "nr",
+ "sw"
+ ],
+ "ZM": [
+ "en",
+ "ny",
+ "loz"
+ ],
+ "ZW": [
+ "sn",
+ "en",
+ "nd",
+ "ny",
+ "ve",
+ "tn"
+ ]
+ }
+}
} ( jQuery ) );
+},{}]},{},[1]);
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/src/jquery.uls.data.utils.js b/MLEB/UniversalLanguageSelector/lib/jquery.uls/src/jquery.uls.data.utils.js
index 7ff77114..a41354c8 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/src/jquery.uls.data.utils.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/src/jquery.uls.data.utils.js
@@ -22,18 +22,18 @@
/**
* Is this language a redirect to another language?
- * @param language string Language code
- * @return Target language code if it's a redirect or false if it's not
+ * @param {string} language Language code
+ * @return {string|boolean} Target language code if it's a redirect or false if it's not
*/
$.uls.data.isRedirect = function ( language ) {
- return ( $.uls.data.languages[language] !== undefined &&
- $.uls.data.languages[language].length === 1 ) ? $.uls.data.languages[language][0] : false;
+ return ( $.uls.data.languages[ language ] !== undefined &&
+ $.uls.data.languages[ language ].length === 1 ) ? $.uls.data.languages[ language ][ 0 ] : false;
};
/**
* Returns the script of the language.
- * @param language string Language code
- * @return string
+ * @param {string} language Language code
+ * @return {string}
*/
$.uls.data.getScript = function ( language ) {
var target = $.uls.data.isRedirect( language );
@@ -42,18 +42,18 @@
return $.uls.data.getScript( target );
}
- if ( !$.uls.data.languages[language] ) {
+ if ( !$.uls.data.languages[ language ] ) {
// Undetermined
return 'Zyyy';
}
- return $.uls.data.languages[language][0];
+ return $.uls.data.languages[ language ][ 0 ];
};
/**
* Returns the regions in which a language is spoken.
- * @param language string Language code
- * @return array|string 'UNKNOWN'
+ * @param {string} language Language code
+ * @return {string|string[]}
*/
$.uls.data.getRegions = function ( language ) {
var target = $.uls.data.isRedirect( language );
@@ -62,13 +62,13 @@
return $.uls.data.getRegions( target );
}
- return ( $.uls.data.languages[language] && $.uls.data.languages[language][1] ) || 'UNKNOWN';
+ return ( $.uls.data.languages[ language ] && $.uls.data.languages[ language ][ 1 ] ) || 'UNKNOWN';
};
/**
* Returns the autonym of the language.
- * @param language string Language code
- * @return string
+ * @param {string} language Language code
+ * @return {string}
*/
$.uls.data.getAutonym = function ( language ) {
var target = $.uls.data.isRedirect( language );
@@ -77,12 +77,12 @@
return $.uls.data.getAutonym( target );
}
- return ( $.uls.data.languages[language] && $.uls.data.languages[language][2] ) || language;
+ return ( $.uls.data.languages[ language ] && $.uls.data.languages[ language ][ 2 ] ) || language;
};
/**
* Returns all language codes and corresponding autonyms
- * @return array
+ * @return {string[]}
*/
$.uls.data.getAutonyms = function () {
var language,
@@ -93,31 +93,16 @@
continue;
}
- autonymsByCode[language] = $.uls.data.getAutonym( language );
+ autonymsByCode[ language ] = $.uls.data.getAutonym( language );
}
return autonymsByCode;
};
/**
- * Returns an array of all region codes.
- * @return array
- */
- $.uls.data.getAllRegions = function () {
- var region,
- allRegions = [];
-
- for ( region in $.uls.data.regiongroups ) {
- allRegions.push( region );
- }
-
- return allRegions;
- };
-
- /**
* Returns all languages written in script.
- * @param script string
- * @return array of strings (languages codes)
+ * @param {string} script string
+ * @return {string[]} languages codes
*/
$.uls.data.getLanguagesInScript = function ( script ) {
return $.uls.data.getLanguagesInScripts( [ script ] );
@@ -125,8 +110,8 @@
/**
* Returns all languages written in the given scripts.
- * @param scripts array of strings
- * @return array of strings (languages codes)
+ * @param {string[]} scripts
+ * @return {string[]} languages codes
*/
$.uls.data.getLanguagesInScripts = function ( scripts ) {
var language, i,
@@ -138,7 +123,7 @@
}
for ( i = 0; i < scripts.length; i++ ) {
- if ( scripts[i] === $.uls.data.getScript( language ) ) {
+ if ( scripts[ i ] === $.uls.data.getScript( language ) ) {
languagesInScripts.push( language );
break;
}
@@ -149,127 +134,41 @@
};
/**
- * Returns all languages in a given region.
- * @param region string
- * @return array of strings (languages codes)
- */
- $.uls.data.getLanguagesInRegion = function ( region ) {
- return $.uls.data.getLanguagesInRegions( [ region ] );
- };
-
- /**
- * Returns all languages in given regions.
- * @param regions array of strings.
- * @return array of strings (languages codes)
- */
- $.uls.data.getLanguagesInRegions = function ( regions ) {
- var language, i,
- languagesInRegions = [];
-
- for ( language in $.uls.data.languages ) {
- if ( $.uls.data.isRedirect( language ) ) {
- continue;
- }
-
- for ( i = 0; i < regions.length; i++ ) {
- if ( $.inArray( regions[i], $.uls.data.getRegions( language ) ) !== -1 ) {
- languagesInRegions.push( language );
- break;
- }
- }
- }
-
- return languagesInRegions;
- };
-
- /**
- * Returns all languages in a region group.
- * @param groupNum number.
- * @return array of strings (languages codes)
- */
- $.uls.data.getLanguagesInRegionGroup = function ( groupNum ) {
- return $.uls.data.getLanguagesInRegions( $.uls.data.getRegionsInGroup( groupNum ) );
- };
-
- /**
- * Returns an associative array of languages in a region,
- * grouped by script.
- * @param region string Region code
- * @return associative array
- */
- $.uls.data.getLanguagesByScriptInRegion = function ( region ) {
- var language, script,
- languagesByScriptInRegion = {};
-
- for ( language in $.uls.data.languages ) {
- if ( $.uls.data.isRedirect( language ) ) {
- continue;
- }
-
- if ( $.inArray( region, $.uls.data.getRegions( language ) ) !== -1 ) {
- script = $.uls.data.getScript( language );
-
- if ( languagesByScriptInRegion[script] === undefined ) {
- languagesByScriptInRegion[script] = [];
- }
- languagesByScriptInRegion[script].push( language );
- }
- }
-
- return languagesByScriptInRegion;
- };
-
- /**
* Returns an associative array of languages in a region,
* grouped by script group.
- * @param region string Region code
- * @return associative array
+ * @param {string} region Region code
+ * @return {object}
*/
$.uls.data.getLanguagesByScriptGroupInRegion = function ( region ) {
return $.uls.data.getLanguagesByScriptGroupInRegions( [ region ] );
};
/**
- * Returns an associative array of all languages,
- * grouped by script group.
- * @return associative array
- */
- $.uls.data.getAllLanguagesByScriptGroup = function () {
- return $.uls.data.getLanguagesByScriptGroupInRegions( $.uls.data.getAllRegions() );
- };
-
- /**
* Get the given list of languages grouped by script.
- * @param languages Array of language codes
- * @return {Object} Array of languages indexed by script codes
+ * @param {string[]} languages Array of language codes to group
+ * @return {string[]} Array of language codes
*/
$.uls.data.getLanguagesByScriptGroup = function ( languages ) {
var languagesByScriptGroup = {},
- language, codeToAdd, langScriptGroup;
-
- for ( language in languages ) {
- codeToAdd = $.uls.data.isRedirect( language ) || language;
-
- langScriptGroup = $.uls.data.getScriptGroupOfLanguage( codeToAdd );
-
- if ( !languagesByScriptGroup[langScriptGroup] ) {
- languagesByScriptGroup[langScriptGroup] = [];
- }
-
- // Prevent duplicate adding of redirects
- if ( $.inArray( codeToAdd, languagesByScriptGroup[langScriptGroup] ) === -1 ) {
- languagesByScriptGroup[langScriptGroup].push( codeToAdd );
+ language, languageIndex, resolvedRedirect, langScriptGroup;
+
+ for ( languageIndex = 0; languageIndex < languages.length; languageIndex++ ) {
+ language = languages[ languageIndex ];
+ resolvedRedirect = $.uls.data.isRedirect( language ) || language;
+ langScriptGroup = $.uls.data.getScriptGroupOfLanguage( resolvedRedirect );
+ if ( !languagesByScriptGroup[ langScriptGroup ] ) {
+ languagesByScriptGroup[ langScriptGroup ] = [];
}
+ languagesByScriptGroup[ langScriptGroup ].push( language );
}
-
return languagesByScriptGroup;
};
/**
* Returns an associative array of languages in several regions,
* grouped by script group.
- * @param regions array of strings - region codes
- * @return associative array
+ * @param {string[]} regions region codes
+ * @return {Object}
*/
$.uls.data.getLanguagesByScriptGroupInRegions = function ( regions ) {
var language, i, scriptGroup,
@@ -281,14 +180,14 @@
}
for ( i = 0; i < regions.length; i++ ) {
- if ( $.inArray( regions[i], $.uls.data.getRegions( language ) ) !== -1 ) {
+ if ( $.uls.data.getRegions( language ).indexOf( regions[ i ] ) !== -1 ) {
scriptGroup = $.uls.data.getScriptGroupOfLanguage( language );
- if ( languagesByScriptGroupInRegions[scriptGroup] === undefined ) {
- languagesByScriptGroupInRegions[scriptGroup] = [];
+ if ( languagesByScriptGroupInRegions[ scriptGroup ] === undefined ) {
+ languagesByScriptGroupInRegions[ scriptGroup ] = [];
}
- languagesByScriptGroupInRegions[scriptGroup].push( language );
+ languagesByScriptGroupInRegions[ scriptGroup ].push( language );
break;
}
}
@@ -298,82 +197,16 @@
};
/**
- * Returns an array of languages grouped by region group,
- * region, script group and script.
- * @return associative array
- */
- $.uls.data.getAllLanguagesByRegionAndScript = function () {
- var region, regionGroup, language,
- script, scriptGroup, regions, regionNum,
- allLanguagesByRegionAndScript = {};
-
- for ( region in $.uls.data.regiongroups ) {
- regionGroup = $.uls.data.regiongroups[region];
-
- if ( allLanguagesByRegionAndScript[regionGroup] === undefined ) {
- allLanguagesByRegionAndScript[regionGroup] = {};
- }
-
- allLanguagesByRegionAndScript[regionGroup][region] = {};
- }
-
- for ( language in $.uls.data.languages ) {
- if ( $.uls.data.isRedirect( language ) ) {
- continue;
- }
-
- script = $.uls.data.getScript( language );
- scriptGroup = $.uls.data.getGroupOfScript( script );
- regions = $.uls.data.getRegions( language );
-
- for ( regionNum = 0; regionNum < regions.length; regionNum++ ) {
- region = regions[regionNum];
- regionGroup = $.uls.data.regiongroups[region];
-
- if ( allLanguagesByRegionAndScript[regionGroup][region][scriptGroup] === undefined ) {
- allLanguagesByRegionAndScript[regionGroup][region][scriptGroup] = {};
- }
-
- if ( allLanguagesByRegionAndScript[regionGroup][region][scriptGroup][script] === undefined ) {
- allLanguagesByRegionAndScript[regionGroup][region][scriptGroup][script] = [];
- }
-
- allLanguagesByRegionAndScript[regionGroup][region][scriptGroup][script].push( language );
- }
- }
-
- return allLanguagesByRegionAndScript;
- };
-
- /**
- * Returns all regions in a region group.
- * @param groupNum int
- * @return array of strings
- */
- $.uls.data.getRegionsInGroup = function ( groupNum ) {
- var region,
- regionsInGroup = [];
-
- for ( region in $.uls.data.regiongroups ) {
- if ( $.uls.data.regiongroups[region] === groupNum ) {
- regionsInGroup.push( region );
- }
- }
-
- return regionsInGroup;
- };
-
- /**
* Returns the script group of a script or 'Other' if it doesn't
* belong to any group.
- * @param script string Script code
- * @return string script group name
+ * @param {string} script Script code
+ * @return {string} script group name
*/
$.uls.data.getGroupOfScript = function ( script ) {
var scriptGroup;
for ( scriptGroup in $.uls.data.scriptgroups ) {
- if ( $.inArray( script, $.uls.data.scriptgroups[scriptGroup] ) !== -1 ) {
+ if ( $.uls.data.scriptgroups[ scriptGroup ].indexOf( script ) !== -1 ) {
return scriptGroup;
}
}
@@ -383,18 +216,38 @@
/**
* Returns the script group of a language.
- * @param language string Language code
- * @return string script group name
+ * @param {string} language Language code
+ * @return {string} script group name
*/
$.uls.data.getScriptGroupOfLanguage = function ( language ) {
return $.uls.data.getGroupOfScript( $.uls.data.getScript( language ) );
};
/**
+ * Return the list of languages sorted by script groups.
+ * @param {string[]} languages Array of language codes to sort
+ * @return {string[]} Array of language codes
+ */
+ $.uls.data.sortByScriptGroup = function ( languages ) {
+ var groupedLanguages, scriptGroups, i,
+ allLanguages = [];
+
+ groupedLanguages = $.uls.data.getLanguagesByScriptGroup( languages );
+ scriptGroups = Object.keys( groupedLanguages ).sort();
+
+ for ( i = 0; i < scriptGroups.length; i++ ) {
+ allLanguages = allLanguages.concat( groupedLanguages[ scriptGroups[ i ] ] );
+ }
+
+ return allLanguages;
+ };
+
+ /**
* A callback for sorting languages by autonym.
* Can be used as an argument to a sort function.
- * @param a string Language code
- * @param b string Language code
+ * @param {string} a Language code
+ * @param {string} b Language code
+ * @return {number}
*/
$.uls.data.sortByAutonym = function ( a, b ) {
var autonymA = $.uls.data.getAutonym( a ) || a,
@@ -405,17 +258,17 @@
/**
* Check if a language is right-to-left.
- * @param language string Language code
- * @return boolean
+ * @param {string} language Language code
+ * @return {boolean}
*/
$.uls.data.isRtl = function ( language ) {
- return $.inArray( $.uls.data.getScript( language ), $.uls.data.rtlscripts ) !== -1;
+ return $.uls.data.rtlscripts.indexOf( $.uls.data.getScript( language ) ) !== -1;
};
/**
* Return the direction of the language
- * @param language string Language code
- * @return string
+ * @param {string} language Language code
+ * @return {string}
*/
$.uls.data.getDir = function ( language ) {
return $.uls.data.isRtl( language ) ? 'rtl' : 'ltr';
@@ -423,11 +276,11 @@
/**
* Returns the languages spoken in a territory.
- * @param territory string Territory code
- * @return list of language codes
+ * @param {string} territory Territory code
+ * @return {string[]} list of language codes
*/
$.uls.data.getLanguagesInTerritory = function ( territory ) {
- return $.uls.data.territories[territory];
+ return $.uls.data.territories[ territory ];
};
/**
@@ -435,31 +288,30 @@
* If the target option is provided, the language is defined as a redirect.
* Other possible options are script, regions and autonym.
*
- * @param code string New language code.
- * @param options Object Language properties.
- * @return list of language codes
+ * @param {string} code New language code.
+ * @param {Object} options Language properties.
*/
- $.uls.data.addLanguage = function( code, options ) {
+ $.uls.data.addLanguage = function ( code, options ) {
if ( options.target ) {
- $.uls.data.languages[code] = [options.target];
+ $.uls.data.languages[ code ] = [ options.target ];
} else {
- $.uls.data.languages[code] = [options.script, options.regions, options.autonym];
+ $.uls.data.languages[ code ] = [ options.script, options.regions, options.autonym ];
}
};
/**
* Removes a language from the langdb in run time.
*
- * @param code string Language code to delete.
- * @return true if the language was removed, false otherwise.
+ * @param {string} code Language code to delete.
+ * @return {boolean} true if the language was removed, false otherwise.
*/
- $.uls.data.deleteLanguage = function( code ) {
- if ( $.uls.data.languages[code] ) {
- delete $.uls.data.languages[code];
+ $.uls.data.deleteLanguage = function ( code ) {
+ if ( $.uls.data.languages[ code ] ) {
+ delete $.uls.data.languages[ code ];
return true;
}
return false;
};
-} ( jQuery ) );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/src/jquery.uls.languagefilter.js b/MLEB/UniversalLanguageSelector/lib/jquery.uls/src/jquery.uls.languagefilter.js
index 0b9453aa..4262efd7 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/src/jquery.uls.languagefilter.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/src/jquery.uls.languagefilter.js
@@ -19,55 +19,72 @@
/**
* Usage: $( 'inputbox' ).languagefilter();
- * The values for autocompletion is from the options.languages.
- * The data is in the format of languagecode:languagename.
+ * The values for autocompletion is from the options.languages or options.searchAPI.
*/
-(function ( $ ) {
+( function ( $ ) {
'use strict';
- var LanguageFilter, delay;
+ var LanguageFilter;
- LanguageFilter = function( element, options ) {
+ /**
+ * Check if a prefix is visually prefix of a string
+ *
+ * @param {string} prefix
+ * @param {string} string
+ * @return {boolean}
+ */
+ function isVisualPrefix( prefix, string ) {
+ // Pre-base vowel signs of Indic languages. A vowel sign is called pre-base if
+ // consonant + vowel becomes [vowel][consonant] when rendered. Eg: ക + െ => കെ
+ var prebases = 'െേൈൊോൌெேைொோௌେୈୋୌિਿिিেৈোৌෙේෛොෝෞ';
+ return prebases.indexOf( string[ prefix.length ] ) <= 0;
+ }
+
+ LanguageFilter = function ( element, options ) {
this.$element = $( element );
this.options = $.extend( {}, $.fn.languagefilter.defaults, options );
this.$element.addClass( 'languagefilter' );
this.resultCount = 0;
- this.$suggestion = this.$element.parents().find( '#' + this.$element.data( 'suggestion' ) );
- this.$clear = this.$element.parents().find( '#' + this.$element.data( 'clear' ) );
+ this.$suggestion = this.$element.siblings( '.' + this.$element.data( 'suggestion' ) );
+ this.$clear = this.$element.siblings( '.' + this.$element.data( 'clear' ) );
this.selectedLanguage = null;
-
+ this.init();
this.listen();
};
- delay = ( function() {
- var timer = 0;
-
- return function( callback, milliseconds ) {
- clearTimeout( timer );
- timer = setTimeout( callback, milliseconds );
- };
- } () );
-
LanguageFilter.prototype = {
- listen: function() {
- this.$element.on( 'keypress', $.proxy( this.keyup, this ) )
- .on( 'keyup', $.proxy( this.keyup, this ) );
+ init: function () {
+ this.search();
+ },
- if ( this.eventSupported( 'keydown' ) ) {
- this.$element.on( 'keydown', $.proxy( this.keyup, this ) );
- }
+ listen: function () {
+ this.$element.on( 'keydown', this.keypress.bind( this ) );
+ this.$element.on( 'input', $.fn.uls.debounce( this.onInputChange.bind( this ), 300 ) );
if ( this.$clear.length ) {
- this.$clear.on( 'click' , $.proxy( this.clear, this ) );
+ this.$clear.on( 'click', this.clear.bind( this ) );
}
this.toggleClear();
},
- keyup: function( e ) {
- var suggestion, query, languageFilter;
+ onInputChange: function () {
+ this.selectedLanguage = null;
- switch( e.keyCode ) {
+ if ( !this.$element.val() ) {
+ this.clear();
+ } else {
+ this.options.lcd.empty();
+ this.search();
+ }
+
+ this.toggleClear();
+ },
+
+ keypress: function ( e ) {
+ var suggestion, query;
+
+ switch ( e.keyCode ) {
case 9: // Tab -> Autocomplete
suggestion = this.$suggestion.val();
@@ -91,35 +108,13 @@
if ( this.selectedLanguage ) {
// this.selectLanguage will be populated from a matching search
this.options.onSelect( this.selectedLanguage );
- } else if ( this.options.languages[query] ) {
+ } else if ( this.options.languages[ query ] ) {
// Search is yet to happen (in timeout delay),
// but we have a matching language code.
this.options.onSelect( query );
}
break;
- default:
- languageFilter = this;
-
- if ( e.which < 32 &&
- e.which !== 8 // Backspace
- ) {
- // ignore any ASCII control characters
- break;
- }
-
- this.selectedLanguage = null;
-
- delay( function() {
- if ( !languageFilter.$element.val() ) {
- languageFilter.clear();
- } else {
- languageFilter.options.$target.empty();
- languageFilter.search();
- }
- }, 300 );
-
- this.toggleClear();
}
},
@@ -127,7 +122,7 @@
* Clears the current search removing
* clear buttons and suggestions.
*/
- deactivate: function() {
+ deactivate: function () {
this.$element.val( '' );
if ( !$.fn.uls.Constructor.prototype.isMobile() ) {
@@ -141,16 +136,16 @@
/**
* Clears the search and shows all languages
*/
- clear: function() {
+ clear: function () {
this.deactivate();
- this.$element.trigger( 'searchclear.uls' );
+ this.search();
},
/**
* Toggles the visibility of clear icon depending
* on whether there is anything to clear.
*/
- toggleClear: function() {
+ toggleClear: function () {
if ( !this.$clear.length ) {
return;
}
@@ -162,81 +157,101 @@
}
},
- search: function() {
- var languagesInScript,
- query = $.trim( this.$element.val() ),
- languages = $.uls.data.getLanguagesByScriptGroup( this.options.languages ),
- scriptGroup, langNum, langCode;
-
- this.resultCount = 0;
-
- for ( scriptGroup in languages ) {
- languagesInScript = languages[scriptGroup];
-
- languagesInScript.sort( $.uls.data.sortByAutonym );
-
- for ( langNum = 0; langNum < languagesInScript.length; langNum++ ) {
- langCode = languagesInScript[langNum];
+ search: function () {
+ var languages = Object.keys( this.options.languages ),
+ results = [],
+ query = $.trim( this.$element.val() ).toLowerCase();
- if ( query === '' || this.filter( langCode, query ) ) {
- if ( this.resultCount === 0 ) {
- // Autofill the first result.
- this.autofill( langCode );
- }
-
- if ( query.toLowerCase() === langCode ) {
- this.selectedLanguage = langCode;
- }
-
- if ( this.render( langCode ) ) {
- this.resultCount++;
- }
- }
- }
+ if ( query === '' ) {
+ this.options.lcd.setGroupByRegionOverride( null );
+ this.resultHandler( query, languages );
+ return;
}
- // Also do a search by search API
- if( !this.resultCount && this.options.searchAPI && query ) {
- this.searchAPI( query );
+ this.options.lcd.setGroupByRegionOverride( false );
+ // Local search results
+ results = languages.filter( function ( langCode ) {
+ return this.filter( langCode, query );
+ }.bind( this ) );
+
+ // Use the searchAPI if available, assuming that it has superior search results.
+ if ( this.options.searchAPI ) {
+ this.searchAPI( query )
+ .done( this.resultHandler.bind( this ) )
+ .fail( this.resultHandler.bind( this, query, results, undefined ) );
} else {
- this.resultHandler( query );
+ this.resultHandler( query, results );
}
},
- searchAPI: function( query ) {
- var languageFilter = this;
+ searchAPI: function ( query ) {
+ return $.get( this.options.searchAPI, { search: query } ).then( function ( result ) {
+ var autofillLabel,
+ results = [];
+
+ $.each( result.languagesearch, function ( apiCode, name ) {
+ var code, redirect;
- $.get( languageFilter.options.searchAPI, { search: query }, function( result ) {
- $.each( result.languagesearch, function( code, name ) {
- if ( languageFilter.resultCount === 0 ) {
- // Autofill the first result.
- languageFilter.autofill( code, name );
+ if ( this.options.languages[ apiCode ] ) {
+ code = apiCode;
+ } else {
+ redirect = $.uls.data.isRedirect( apiCode );
+ if ( !redirect || !this.options.languages[ redirect ] ) {
+ return;
+ }
+ code = redirect;
}
- if ( languageFilter.render( code ) ) {
- languageFilter.resultCount++;
+ // Because of the redirect checking above, we might get duplicates.
+ // For example if API returns both `sr` and `sr-cyrl`, the former
+ // could get mapped to `sr-cyrl` and then we would have it twice.
+ // The exact cases when this happens of course depends on what is in
+ // options.languages, which might contain redirects such as `sr`. In
+ // this case we only show `sr` if no other variants are there.
+ // This also protects against broken search APIs returning duplicate
+ // results, although that is not happening in practice.
+ if ( results.indexOf( code ) === -1 ) {
+ autofillLabel = autofillLabel || name;
+ results.push( code );
}
- } );
+ }.bind( this ) );
- languageFilter.resultHandler( query );
- } );
+ return $.Deferred().resolve( query, results, autofillLabel );
+ }.bind( this ) );
},
/**
* Handler method to be called once search is over.
* Based on search result triggers resultsfound or noresults events
- * @param query string
+ * @param {string} query
+ * @param {string[]} results
+ * @param {string} [autofillLabel]
*/
- resultHandler: function( query ) {
- if ( this.resultCount === 0 ) {
+ resultHandler: function ( query, results, autofillLabel ) {
+ if ( results.length === 0 ) {
this.$suggestion.val( '' );
- this.$element.trigger( 'noresults.uls', query );
- } else {
- this.$element.trigger( 'resultsfound.uls', [query, this.resultCount] );
+ this.$element.trigger(
+ 'noresults.uls',
+ {
+ query: query,
+ ulsPurpose: this.options.ulsPurpose
+ }
+ );
+ return;
}
+
+ if ( query ) {
+ this.selectedLanguage = results[ 0 ];
+ this.autofill( results[ 0 ], autofillLabel );
+ }
+
+ results.map( this.render.bind( this ) );
+ this.$element.trigger( 'resultsfound.uls', [ query, results.length ] );
},
- autofill: function( langCode, languageName ) {
+ autofill: function ( langCode, languageName ) {
+ var autonym, userInput, suggestion;
+
if ( !this.$suggestion.length ) {
return;
}
@@ -246,16 +261,14 @@
return;
}
- this.selectedLanguage = langCode;
- languageName = languageName || this.options.languages[langCode];
+ languageName = languageName || this.options.languages[ langCode ];
if ( !languageName ) {
return;
}
- var autonym,
- userInput = this.$element.val(),
- suggestion = userInput + languageName.substring( userInput.length, languageName.length );
+ userInput = this.$element.val();
+ suggestion = userInput + languageName.substring( userInput.length, languageName.length );
if ( suggestion.toLowerCase() !== languageName.toLowerCase() ) {
// see if it was autonym match
@@ -276,18 +289,12 @@
this.$suggestion.val( suggestion );
},
- render: function( langCode ) {
- var $target = this.options.$target;
-
- if ( !$target ) {
- return false;
- }
-
- return $target.append( langCode );
+ render: function ( langCode ) {
+ return this.options.lcd.append( langCode );
},
- escapeRegex: function( value ) {
- return value.replace( /[\-\[\]{}()*+?.,\\\^$\|#\s]/g, '\\$&' );
+ escapeRegex: function ( value ) {
+ return value.replace( /[-[\]{}()*+?.,\\^$|#\s]/g, '\\$&' );
},
/**
@@ -297,32 +304,24 @@
* b) Language autonym 'starts with' search string.
* c) ISO 639 code match with search string.
* d) ISO 15924 code for the script match the search string.
+ * @param {string} langCode
+ * @param {string} searchTerm
+ * @return {boolean}
*/
- filter: function( langCode, searchTerm ) {
+ filter: function ( langCode, searchTerm ) {
// FIXME script is ISO 15924 code. We might need actual name of script.
var matcher = new RegExp( '^' + this.escapeRegex( searchTerm ), 'i' ),
- languageName = this.options.languages[langCode];
+ languageName = this.options.languages[ langCode ];
return matcher.test( languageName ) ||
matcher.test( $.uls.data.getAutonym( langCode ) ) ||
matcher.test( langCode ) ||
matcher.test( $.uls.data.getScript( langCode ) );
- },
-
- eventSupported: function ( eventName ) {
- var isSupported = eventName in this.$element;
-
- if ( !isSupported ) {
- this.$element.setAttribute( eventName, 'return;' );
- isSupported = typeof this.$element[eventName] === 'function';
- }
-
- return isSupported;
}
};
- $.fn.languagefilter = function( option ) {
- return this.each( function() {
+ $.fn.languagefilter = function ( option ) {
+ return this.each( function () {
var $this = $( this ),
data = $this.data( 'languagefilter' ),
options = typeof option === 'object' && option;
@@ -332,29 +331,26 @@
}
if ( typeof option === 'string' ) {
- data[option]();
+ data[ option ]();
}
} );
};
$.fn.languagefilter.defaults = {
- $target: null, // Where to append the results
- searchAPI: null,
- languages: null, // Languages as code:name format.
- onSelect: null // Language select handler - like enter in filter textbox.
+ // LanguageCategoryDisplay
+ lcd: undefined,
+ // URL to which we append query parameter with the query value
+ searchAPI: undefined,
+ // What is this ULS used for.
+ // Should be set for distinguishing between different instances of ULS
+ // in the same application.
+ ulsPurpose: '',
+ // Object of language tags to language names
+ languages: [],
+ // Callback function when language is selected
+ onSelect: undefined
};
$.fn.languagefilter.Constructor = LanguageFilter;
- /**
- * Check if a prefix is visually prefix of a string
- * @param prefix string
- * @param string string
- */
- function isVisualPrefix( prefix, string ) {
- // Pre-base vowel signs of Indic languages. A vowel sign is called pre-base if
- // consonant + vowel becomes [vowel][consonant] when rendered. Eg: ക + െ => കെ
- var prebases = 'െേൈൊോൌெேைொோௌେୈୋୌિਿिিেৈোৌෙේෛොෝෞ';
- return prebases.indexOf( string[prefix.length] ) <= 0;
- }
-} ( jQuery ) );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/src/jquery.uls.lcd.js b/MLEB/UniversalLanguageSelector/lib/jquery.uls/src/jquery.uls.lcd.js
index b52dcee7..3829e66e 100644
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/src/jquery.uls.lcd.js
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/src/jquery.uls.lcd.js
@@ -22,42 +22,46 @@
( function ( $ ) {
'use strict';
- var noResultsTemplate, LanguageCategoryDisplay;
-
- noResultsTemplate = $( '<div>' ).addClass( 'twelve columns uls-no-results-view hide' );
- noResultsTemplate.append(
- $( '<h2>' )
- .attr( 'data-i18n', 'uls-no-results-found' )
- .addClass( 'eleven columns offset-by-one uls-no-results-found-title' )
- .text( 'No results found' ),
- $( '<div>' )
- .attr( 'id', 'uls-no-found-more' )
- .addClass( 'uls-no-found-more' )
- .append(
- $( '<div>' )
- .addClass( 'ten columns offset-by-one' )
- .append(
- $( '<p>' ).append(
- $( '<span>' ).text( 'You can search by language name, script name, ISO code of language or you can browse by region.' )
- )
- )
- )
- );
-
- LanguageCategoryDisplay = function ( element, options ) {
+ // eslint-disable-next-line no-multi-str
+ var noResultsTemplate = '<div class="uls-no-results-view"> \
+ <h2 data-i18n="uls-no-results-found" class="uls-no-results-found-title">No results found</h2> \
+ <div class="uls-no-results-suggestions"></div> \
+ <div class="uls-no-found-more"> \
+ <div data-i18n="uls-search-help">You can search by language name, script name, ISO code of language or you can browse by region.</div> \
+ </div></div>';
+
+ /**
+ * Language category display
+ * @param {Element} element The container element to which the languages to be displayed
+ * @param {Object} [options] Configuration object
+ * @cfg {Object} [languages] Selectable languages. Keyed by language code, values are autonyms.
+ * @cfg {string[]} [showRegions] Array of region codes to show. Default is
+ * [ 'WW', 'AM', 'EU', 'ME', 'AF', 'AS', 'PA' ]
+ * @cfg {number} [itemsPerColumn] Number of languages per column.
+ * @cfg {number} [columns] Number of columns for languages. Default is 4.
+ * @cfg {Function} [languageDecorator] Callback function to be called when a language
+ * link is prepared - for custom decoration.
+ * @cfg {Function|string[]} [quickList] The languages to display as suggestions for quick selection.
+ * @cfg {Function} [clickhandler] Callback when language is selected.
+ * @cfg {jQuery|Function} [noResultsTemplate]
+ */
+ function LanguageCategoryDisplay( element, options ) {
this.$element = $( element );
this.options = $.extend( {}, $.fn.lcd.defaults, options );
- this.$element.addClass( 'lcd' );
+ // Ensure the internal region 'all' is always present
+ if ( this.options.showRegions.indexOf( 'all' ) === -1 ) {
+ this.options.showRegions.push( 'all' );
+ }
+
+ this.$element.addClass( 'uls-lcd' );
this.regionLanguages = {};
this.renderTimeout = null;
this.cachedQuicklist = null;
-
- this.$element.append( $( noResultsTemplate ) );
- this.$noResults = this.$element.children( '.uls-no-results-view' );
+ this.groupByRegionOverride = null;
this.render();
this.listen();
- };
+ }
LanguageCategoryDisplay.prototype = {
constructor: LanguageCategoryDisplay,
@@ -66,24 +70,21 @@
* Adds language to the language list.
* @param {string} langCode
* @param {string} [regionCode]
- * @return {bool} Whether the language was added.
+ * @return {boolean} Whether the language was known and accepted
*/
append: function ( langCode, regionCode ) {
- var lcd = this,
- i, regions;
+ var i, regions;
- if ( !this.options.languages[ langCode ] ) {
+ if ( !$.uls.data.languages[ langCode ] ) {
// Language is unknown or not in the list of languages for this context.
return false;
}
- // Show everything in one region when there is only one column
- if ( lcd.options.columns === 1 ) {
- regions = [ 'WW' ];
+ if ( !this.isGroupingByRegionEnabled() ) {
+ regions = [ 'all' ];
- // Languages are expected to be repeated in this case,
- // and we only want to show them once
- if ( $.inArray( langCode, this.regionLanguages.WW ) > -1 ) {
+ // Make sure we do not get duplicates
+ if ( this.regionLanguages.all.indexOf( langCode ) > -1 ) {
return true;
}
} else {
@@ -94,31 +95,51 @@
}
}
- // Worldwides only displayed once
- if ( $.inArray( 'WW', regions ) > -1 ) {
- regions = [ 'WW' ];
- }
-
for ( i = 0; i < regions.length; i++ ) {
this.regionLanguages[ regions[ i ] ].push( langCode );
}
// Work around the bad interface, delay rendering until we have got
// all the languages to speed up performance.
- window.clearTimeout( this.renderTimeout );
- this.renderTimeout = window.setTimeout( function () {
- lcd.renderRegions();
- }, 50 );
+ clearTimeout( this.renderTimeout );
+ this.renderTimeout = setTimeout( function () {
+ this.renderRegions();
+ }.bind( this ), 50 );
return true;
},
+ /**
+ * Whether we should render languages grouped to geographic regions.
+ * @return {boolean}
+ */
+ isGroupingByRegionEnabled: function () {
+ if ( this.groupByRegionOverride !== null ) {
+ return this.groupByRegionOverride;
+ } else if ( this.options.groupByRegion !== 'auto' ) {
+ return this.options.groupByRegion;
+ } else {
+ return this.options.columns > 1;
+ }
+ },
+
+ /**
+ * Override the default region grouping setting.
+ * This is to allow LanguageFilter to disable grouping when displaying search results.
+ *
+ * @param {boolean|null} val True to force grouping, false to disable, null to undo override.
+ */
+ setGroupByRegionOverride: function ( val ) {
+ this.groupByRegionOverride = val;
+ },
+
render: function () {
var $section,
- lcd = this,
+ $quicklist = this.buildQuicklist(),
regions = [],
regionNames = {
// These are fallback text when i18n library not present
+ all: 'All languages', // Used if there is quicklist and no region grouping
WW: 'Worldwide',
SP: 'Special',
AM: 'America',
@@ -129,33 +150,30 @@
PA: 'Pacific'
};
- regions.push( this.buildQuicklist() );
-
- $.each( $.uls.data.regiongroups, function ( regionCode ) {
- lcd.regionLanguages[ regionCode ] = [];
+ if ( $quicklist.length ) {
+ regions.push( $quicklist );
+ } else {
+ // We use CSS to hide the header for 'all' when quicklist is NOT present
+ this.$element.addClass( 'uls-lcd--no-quicklist' );
+ }
- // Don't show the region unless it was enabled
- if ( $.inArray( regionCode, lcd.options.showRegions ) === -1 ) {
- return;
- }
+ this.options.showRegions.forEach( function ( regionCode ) {
+ this.regionLanguages[ regionCode ] = [];
$section = $( '<div>' )
- .addClass( 'eleven columns offset-by-one uls-lcd-region-section hide' )
- .attr( 'id', regionCode );
-
- // Show a region heading, unless we are using a narrow ULS
- if ( lcd.options.columns !== 1 ) {
- $section.append( $( '<h3>' )
- .attr( 'data-i18n', 'uls-region-' + regionCode )
- .addClass( 'eleven columns uls-lcd-region-title' )
- .text( regionNames[ regionCode ] )
- );
- }
+ .addClass( 'uls-lcd-region-section hide' )
+ .attr( 'data-region', regionCode );
+
+ $( '<h3>' )
+ .attr( 'data-i18n', 'uls-region-' + regionCode )
+ .addClass( 'uls-lcd-region-title' )
+ .text( regionNames[ regionCode ] )
+ .appendTo( $section );
regions.push( $section );
- } );
+ }.bind( this ) );
- lcd.$element.append( regions );
+ this.$element.append( regions );
this.i18n();
},
@@ -167,12 +185,12 @@
var languages,
lcd = this;
- this.$noResults.addClass( 'hide' );
- this.$element.find( '.uls-lcd-region-section' ).each( function () {
+ this.$element.removeClass( 'uls-no-results' );
+ this.$element.children( '.uls-lcd-region-section' ).each( function () {
var $region = $( this ),
- regionCode = $region.attr( 'id' );
+ regionCode = $region.data( 'region' );
- if ( $region.is( '#uls-lcd-quicklist' ) ) {
+ if ( $region.is( '.uls-lcd-quicklist' ) ) {
return;
}
@@ -211,6 +229,10 @@
columns = [],
rows = [];
+ languages = $.uls.data.sortByScriptGroup(
+ languages.sort( $.uls.data.sortByAutonym )
+ );
+
if ( columnsPerRow === 1 ) {
columnsClasses = 'twelve columns';
} else if ( columnsPerRow === 2 ) {
@@ -235,8 +257,9 @@
nextScript = $.uls.data.getScriptGroupOfLanguage( languages[ i + 1 ] );
lastItem = languagesCount - i === 1;
- // Force column break if script changes and column has more than one row already
- if ( i === 0 ) {
+ // Force column break if script changes and column has more than one row already,
+ // but only if grouping by region
+ if ( i === 0 || !this.isGroupingByRegionEnabled() ) {
currentScript = $.uls.data.getScriptGroupOfLanguage( languages[ i ] );
} else if ( currentScript !== nextScript && items.length > 1 ) {
force = true;
@@ -273,13 +296,13 @@
// Not using jQuery as this is performance hotspot
li = document.createElement( 'li' );
li.title = name;
- li.lang = code;
- li.dir = $.uls.data.getDir( code );
li.setAttribute( 'data-code', code );
a = document.createElement( 'a' );
a.appendChild( document.createTextNode( autonym ) );
a.className = 'autonym';
+ a.lang = code;
+ a.dir = $.uls.data.getDir( code );
li.appendChild( a );
if ( this.options.languageDecorator ) {
@@ -296,7 +319,7 @@
* Adds quicklist as a region.
*/
quicklist: function () {
- this.$element.find( '#uls-lcd-quicklist' ).removeClass( 'hide' );
+ this.$element.find( '.uls-lcd-quicklist' ).removeClass( 'hide' );
},
buildQuicklist: function () {
@@ -310,7 +333,7 @@
this.options.quickList = this.options.quickList();
}
- if ( !this.options.quickList ) {
+ if ( !this.options.quickList.length ) {
this.cachedQuicklist = $( [] );
return this.cachedQuicklist;
}
@@ -321,13 +344,12 @@
quickList.sort( $.uls.data.sortByAutonym );
$quickListSection = $( '<div>' )
- .addClass( 'eleven columns offset-by-one uls-lcd-region-section' )
- .attr( 'id', 'uls-lcd-quicklist' );
+ .addClass( 'uls-lcd-region-section uls-lcd-quicklist' );
$quickListSectionTitle = $( '<h3>' )
.attr( 'data-i18n', 'uls-common-languages' )
- .addClass( 'eleven columns uls-lcd-region-title' )
- .text( 'Common languages' ); // This is placeholder text if jquery.i18n not present
+ .addClass( 'uls-lcd-region-title' )
+ .text( 'Suggested languages' ); // This is placeholder text if jquery.i18n not present
$quickListSection.append( $quickListSectionTitle );
this.renderRegion(
@@ -349,34 +371,49 @@
}
},
+ /**
+ * Called when a fresh search is started
+ */
empty: function () {
- this.$element.find( '#uls-lcd-quicklist' ).addClass( 'hide' );
+ this.$element.addClass( 'uls-lcd--no-quicklist' );
+ this.$element.find( '.uls-lcd-quicklist' ).addClass( 'hide' );
},
focus: function () {
this.$element.focus();
},
- noResults: function () {
- this.$noResults.removeClass( 'hide' );
- if ( this.$noResults.find( '.uls-lcd-region-title' ).length ) {
- return;
+ /**
+ * No-results event handler
+ * @param {Event} event
+ * @param {Object} data Information about the failed search query
+ */
+ noResults: function ( event, data ) {
+ var $noResults;
+
+ this.$element.addClass( 'uls-no-results' );
+
+ this.$element.find( '.uls-no-results-view' ).remove();
+
+ if ( typeof this.options.noResultsTemplate === 'function' ) {
+ $noResults =
+ this.options.noResultsTemplate.call( this, data.query );
+ } else if ( this.options.noResultsTemplate instanceof jQuery ) {
+ $noResults = this.options.noResultsTemplate;
+ } else {
+ throw new Error( 'noResultsTemplate option must be ' +
+ 'either jQuery or function returning jQuery' );
}
- var $suggestions = this.buildQuicklist().clone();
- $suggestions.find( 'h3' )
- .data( 'i18n', 'uls-no-results-suggestion-title' )
- .text( 'You may be interested in:' )
- .i18n();
- this.$noResults.find( 'h2' ).after( $suggestions );
+ this.$element.append( $noResults.addClass( 'uls-no-results-view' ).i18n() );
},
listen: function () {
var lcd = this;
if ( this.options.clickhandler ) {
- this.$element.on( 'click', '.row li', function () {
- lcd.options.clickhandler.call( this, $( this ).data( 'code' ) );
+ this.$element.on( 'click', '.row li', function ( event ) {
+ lcd.options.clickhandler.call( this, $( this ).data( 'code' ), event );
} );
}
}
@@ -399,14 +436,38 @@
};
$.fn.lcd.defaults = {
- languages: null,
+ // List of languages to show
+ languages: [],
+ // List of regions to show
showRegions: [ 'WW', 'AM', 'EU', 'ME', 'AF', 'AS', 'PA' ],
+ // Whether to group by region, defaults to true when columns > 1
+ groupByRegion: 'auto',
+ // How many items per column until new "row" starts
itemsPerColumn: 8,
- // Other supported values are 1 and 2.
- // Other values will have rendering issues.
+ // Number of columns, only 1, 2 and 4 are supported
columns: 4,
- languageDecorator: null
+ // Callback function for language item styling
+ languageDecorator: undefined,
+ // Likely candidates
+ quickList: [],
+ // Callback function for language selection
+ clickhandler: undefined,
+ // Callback function when no search results.
+ // If overloaded, it can accept the search string as an argument.
+ noResultsTemplate: function () {
+ var $suggestionsContainer, $suggestions,
+ $noResultsTemplate = $( noResultsTemplate );
+
+ $suggestions = this.buildQuicklist().clone();
+ $suggestions.removeClass( 'hide' )
+ .find( 'h3' )
+ .data( 'i18n', 'uls-no-results-suggestion-title' )
+ .text( 'You may be interested in:' )
+ .i18n();
+ $suggestionsContainer = $noResultsTemplate.find( '.uls-no-results-suggestions' );
+ $suggestionsContainer.append( $suggestions );
+ return $noResultsTemplate;
+ }
};
- $.fn.lcd.Constructor = LanguageCategoryDisplay;
}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/src/jquery.uls.regionfilter.js b/MLEB/UniversalLanguageSelector/lib/jquery.uls/src/jquery.uls.regionfilter.js
deleted file mode 100644
index ffb4c3e8..00000000
--- a/MLEB/UniversalLanguageSelector/lib/jquery.uls/src/jquery.uls.regionfilter.js
+++ /dev/null
@@ -1,130 +0,0 @@
-/**
- * Region Filter for ULS
- *
- * Copyright (C) 2012 Alolita Sharma, Amir Aharoni, Arun Ganesh, Brandon Harris,
- * Niklas Laxström, Pau Giner, Santhosh Thottingal, Siebrand Mazeland and other
- * contributors. See CREDITS for a list.
- *
- * UniversalLanguageSelector is dual licensed GPLv2 or later and MIT. You don't
- * have to do anything special to choose one license or the other and you don't
- * have to notify anyone which license you are using. You are free to use
- * UniversalLanguageSelector in commercial projects as long as the copyright
- * header is left intact. See files GPL-LICENSE and MIT-LICENSE for details.
- *
- * @file
- * @ingroup Extensions
- * @licence GNU General Public Licence 2.0 or later
- * @licence MIT License
- */
-
-( function ( $ ) {
- 'use strict';
-
- /**
- * Region selector is a language selector based on regions.
- * that defines the regiongroup for the selector.
- */
- var RegionSelector = function ( options ) {
- this.options = options;
- this.regions = [];
- this.cache = null;
- this.init();
- };
-
- RegionSelector.prototype = {
- constructor: RegionSelector,
-
- init: function () {
- this.regions = this.options.regions || $.uls.data.getAllRegions();
- this.show();
- },
-
- test: function ( langCode ) {
- var region, i,
- langRegions = $.uls.data.getRegions( langCode );
-
- for ( i = 0; i < this.regions.length; i++ ) {
- region = this.regions[ i ];
-
- if ( $.inArray( region, langRegions ) >= 0 ) {
- this.render( langCode, region );
- this.cache[ langCode ] = region;
-
- return;
- }
- }
- },
-
- show: function () {
- var result, languagesByScriptGroup, scriptGroup, languages, i,
- $target = this.options.$target && this.options.$target.$target,
- $parent = $target && $target.parent(),
- $prev = $target && $target.prev();
-
- if ( $target && $parent ) {
- // Avoid reflows while adding new elements to the list
- // Use .detach() to keep jQuery events and data associated with elements
- $target.detach();
- }
-
- if ( this.cache ) {
- // If the result cache is present, render the results from there.
- //noinspection JSUnusedAssignment
- result = null;
-
- for ( result in this.cache ) {
- this.render( result, this.cache[ result ] );
- }
- } else {
- this.cache = {};
- // Get the languages grouped by script group
- languagesByScriptGroup = $.uls.data.getLanguagesByScriptGroup( this.options.languages );
-
- // Make sure that we go by the original order
- // of script groups
- for ( scriptGroup in $.uls.data.scriptgroups ) {
- // Get the languages for the script group
- languages = languagesByScriptGroup[ scriptGroup ];
-
- // It's possible that some script groups are missing
- if ( !languages ) {
- continue;
- }
-
- // Sort it based on autonym
- languages.sort( $.uls.data.sortByAutonym );
-
- for ( i = 0; i < languages.length; i++ ) {
- // Check whether it belongs to the region
- this.test( languages[ i ] );
- }
- }
- }
-
- if ( $target && $parent ) {
- // Restore the element to where we removed it from
- if ( $prev ) {
- $prev.after( $target );
- } else {
- $parent.append( $target );
- }
- }
-
- if ( this.options.success ) {
- this.options.success( this );
- }
- },
-
- render: function ( langCode, region ) {
- var $target = this.options.$target;
-
- if ( !$target ) {
- return;
- }
-
- $target.append( langCode, region );
- },
- };
-
- $.uls.RegionSelector = RegionSelector;
-}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.webfonts.js b/MLEB/UniversalLanguageSelector/lib/jquery.webfonts.js
deleted file mode 100644
index d205dee1..00000000
--- a/MLEB/UniversalLanguageSelector/lib/jquery.webfonts.js
+++ /dev/null
@@ -1,517 +0,0 @@
-/**
- * jQuery Webfonts.
- *
- * Copyright (C) 2012 Santhosh Thottingal
- *
- * UniversalLanguageSelector is dual licensed GPLv2 or later and MIT. You don't
- * have to do anything special to choose one license or the other and you don't
- * have to notify anyone which license you are using. You are free to use
- * UniversalLanguageSelector in commercial projects as long as the copyright
- * header is left intact. See files GPL-LICENSE and MIT-LICENSE for details.
- *
- * @file
- * @ingroup Extensions
- * @licence GNU General Public Licence 2.0 or later
- * @licence MIT License
- */
-
-( function( $, window, document, undefined ) {
- 'use strict';
-
- var WebFonts = function( element, options ) {
- // Load defaults
- this.options = $.extend( {}, $.fn.webfonts.defaults, options );
- this.$element = $( element );
- this.repository = $.extend( WebFonts.repository, this.options.repository );
- // List of loaded fonts
- this.fonts = [];
- this.originalFontFamily = this.$element.css( 'font-family' );
- this.language = this.$element.attr( 'lang' ) || $( 'html' ).attr( 'lang' );
-
- this.init();
- };
-
- WebFonts.repository = {
- base: 'fonts', // Relative or absolute path to the font repository.
- languages: {}, // languages to font mappings
- fonts: {}, // Font name to font configuration mapping
-
- // Utility methods to work on the repository.
- defaultFont: function( language ) {
- var defaultFont = null;
-
- if ( this.languages[language] ) {
- defaultFont = this.languages[language][0];
- }
-
- return defaultFont;
- },
-
- get: function( fontFamily ) {
- return this.fonts[fontFamily];
- }
- };
-
- WebFonts.prototype = {
- constructor: WebFonts,
-
- /**
- * Get the default font family for given language.
- * @param {String} language Language code.
- * @param {array} classes
- * @return {String} Font family name
- */
- getFont: function( language, classes ) {
- language = ( language || this.language ).toLowerCase();
-
- if ( this.options.fontSelector ) {
- return this.options.fontSelector( this.repository, language, classes );
- } else {
- return this.repository.defaultFont( language );
- }
- },
-
- /**
- * Initialize.
- */
- init: function() {
- if ( this.language ) {
- this.apply( this.getFont( this.language ) );
- }
-
- this.parse();
- },
-
- /**
- * TODO: document
- */
- refresh: function() {
- this.reset();
- this.init();
- },
-
- /**
- * Apply a font for given elements.
- *
- * @param {String} fontFamily Font family name
- * @param {jQuery} $element One or more jQuery elements
- */
- apply: function( fontFamily, $element ) {
- var fontStack = this.options.fontStack.slice( 0 );
-
- $element = $element || this.$element;
-
- // Loading an empty string is pointless.
- // Putting an empty string into a font-family list doesn't work with
- // jQuery.css().
- if ( fontFamily ) {
- this.load( fontFamily );
- // Avoid duplicates
- if ( $.inArray( fontFamily, fontStack ) < 0 ) {
- fontStack.unshift( fontFamily );
- }
- }
-
- if ( !fontFamily ) {
- // We are resetting the font to original font.
- fontStack = [];
- // This will cause removing inline fontFamily style.
- }
-
- // Set the font of this element if it's not excluded.
- // Add class webfonts-changed when webfonts are applied.
- $element.not( this.options.exclude )
- .css( 'font-family', fontStack.join() )
- .addClass( 'webfonts-changed' );
-
- // Set the font of this element's children if they are not excluded.
- // font-family of <input>, <textarea> and <button> must be changed explicitly.
- // Add class webfonts-changed when webfonts are applied.
- $element.find( 'textarea, input, button' ).not( this.options.exclude )
- .css( 'font-family', fontStack.join() )
- .addClass( 'webfonts-changed' );
- },
-
- /**
- * Load given font families if not loaded already. Creates the CSS rules
- * and appends them to document.
- *
- * @param {Array|String} fontFamilies List of font families
- */
- load: function( fontFamilies ) {
- var css, fontFamily, i,
- fontFaceRule = '';
-
- // Convert to array if string given (old signature)
- if ( typeof fontFamilies === 'string' ) {
- fontFamilies = [fontFamilies];
- }
-
- for ( i = 0; i < fontFamilies.length; i++ ) {
- fontFamily = fontFamilies[i];
- if ( $.inArray( fontFamily, this.fonts ) >= 0 ) {
- continue;
- }
-
- css = this.getCSS( fontFamily, 'normal' );
- if ( css !== false ) {
- fontFaceRule += css;
- this.fonts.push( fontFamily );
- }
- }
-
- // In case the list contained only fonts that are already loaded
- // or non-existing fonts.
- if ( fontFaceRule !== '' ) {
- injectCSS( fontFaceRule );
- }
-
- return true;
- },
-
- /**
- * Parse the element for custom font-family styles and for nodes with
- * different language than what the element itself has.
- */
- parse: function() {
- var webfonts = this,
- // Fonts can be added indirectly via classes, but also with
- // style attributes. For lang attributes we will use our font
- // if they don't have explicit font already.
- $elements = webfonts.$element.find( '*[lang], [style], [class]' ),
- // List of fonts to load in a batch
- fontQueue = [],
- // List of elements to apply a certain font family in a batch.
- // Object keys are the font family, values are list of plain elements.
- elementQueue = {};
-
- // Add to the font queue(no dupes)
- function addToFontQueue( value ) {
- if ( $.inArray( value, fontQueue ) < 0 ) {
- fontQueue.push( value );
- }
- }
-
- // Add to the font queue
- function addToElementQueue( element, fontFamily ) {
- elementQueue[fontFamily] = elementQueue[fontFamily] || [];
- elementQueue[fontFamily].push( element );
- }
-
- $elements.each( function( i, element ) {
- var fontFamilyStyle, fontFamily,
- $element = $( element );
-
- if ( $element.is( webfonts.options.exclude ) ) {
- return;
- }
-
- // Note: it depends on the browser whether this returns font names
- // which don't exist. In Chrome it does, while in Opera it doesn't.
- fontFamilyStyle = $element.css( 'fontFamily' );
- // Note: It is unclear whether this can ever be falsy. Maybe also
- // browser specific.
- if ( fontFamilyStyle ) {
- // if it is overridable, override. always.
- if ( webfonts.isOverridable( fontFamilyStyle ) ) {
- fontFamily = webfonts.getFont( element.lang || webfonts.language );
- // We do not have fonts for all languages
- if ( fontFamily ) {
- addToFontQueue( fontFamily );
- addToElementQueue( element, fontFamily );
- }
- return;
- } else {
- fontFamily = fontFamilyStyle.split( ',' )[0];
- // Remove the ' and " characters if any.
- fontFamily = $.trim( fontFamily.replace( /["']/g, '' ) );
- addToFontQueue( fontFamily );
- }
- }
-
- // Load and apply fonts for other language tagged elements (batched)
- if ( element.lang && element.lang !== webfonts.language ) {
- // language differs. We may want to apply a different font.
- if ( webfonts.hasExplicitFontStyle ( $element ) &&
- !webfonts.isOverridable( fontFamilyStyle ) ) {
- // respect the explicit font family style. Do not override.
- // This style may be from css, inheritance, or even from
- // browser settings.
- return;
- } else {
- fontFamily = webfonts.getFont( element.lang, element.className.split(/\s+/) );
- }
-
- if ( !fontFamily ) {
- // No font preference for the language.
- // Check if we need to reset for this language.
- // If the font of the parent element, to which webfonts were applied,
- // remained the same, there is no need to reset.
- if ( webfonts.$element.css( 'fontFamily' ) !== webfonts.originalFontFamily ) {
- // The parent font changed.
- // Is there an inheritance?
- // Is the font for this element the same as parent's font?
- if ( fontFamilyStyle === webfonts.$element.css( 'fontFamily' ) ) {
- // Break inheritance of the font from the parent element
- // by applying the original font to this element
- fontFamily = webfonts.originalFontFamily;
- }
- }
- }
-
- // We do not have fonts for all languages
- if ( fontFamily ) {
- addToFontQueue( fontFamily );
- addToElementQueue( element, fontFamily );
- }
- }
- } );
-
- // Process in batch the accumulated fonts and elements
- this.load( fontQueue );
- $.each( elementQueue, function( fontFamily, elements ) {
- webfonts.apply( fontFamily, $( elements ) );
- } );
- },
-
- /**
- * Find out whether an element has explicit non generic font family style
- * For the practical purpose we check whether font is same as top element
- * or having any of generic font family
- * http://www.w3.org/TR/CSS2/fonts.html#generic-font-families
- * @param {jQuery} $element
- * @return {boolean}
- */
- hasExplicitFontStyle: function ( $element ) {
- var elementFontFamily = $element.css( 'fontFamily' );
-
- // whether the font is inherited from top element to which plugin applied
- return this.$element.css( 'fontFamily' ) !== elementFontFamily
- // whether the element has generic font family
- && ( $.inArray( elementFontFamily,
- [ 'monospace', 'serif', 'cursive', 'fantasy', 'sans-serif' ] ) < 0 );
- },
-
- /**
- * Check whether the give font family is overridable or not. jquey.webfonts
- * by default does not override any font-family styles other than generic
- * font family styles(See hasExplicitFontStyle method)
- * @param {string} fontFamily
- * @return {boolean} Whether the given fontFamily is overridable or not.
- */
- isOverridable: function( fontFamily ) {
- var overridableFontFamilies = [ 'monospace', 'serif', 'cursive', 'fantasy', 'sans-serif' ];
- $.merge( overridableFontFamilies, this.options.overridableFontFamilies );
- // Browsers like FF put space after comma in font stack. Chrome does not.
- // Normalise it by removing the spaces and quotes
- overridableFontFamilies = $.map( overridableFontFamilies, function( item ) {
- return item.replace( /[\s'"]/g, '' );
- } );
- fontFamily = fontFamily.replace( /[\s'"]/g, '' );
-
- return $.inArray( fontFamily, overridableFontFamilies ) >= 0;
- },
-
- /**
- * List all fonts for the given language
- *
- * @param {String} [language] Language code. If undefined all fonts will be listed.
- * @return {Array} List of font family names.
- */
- list: function( language ) {
- var fontName,
- fontNames = [];
-
- if ( language ) {
- fontNames = this.repository.languages[language] || [];
- } else {
- for ( fontName in this.repository.fonts ) {
- if ( this.repository.fonts.hasOwnProperty( fontName ) ) {
- fontNames.push( fontName );
- }
- }
- }
-
- return fontNames;
- },
-
- /**
- * List all languages supported by the repository
- *
- * @return {Array} List of language codes
- */
- languages: function() {
- var language,
- languages = [];
-
- for ( language in this.repository.languages ) {
- if ( this.repository.languages.hasOwnProperty( language ) ) {
- languages.push( language );
- }
- }
-
- return languages;
- },
-
- /**
- * Set the font repository
- *
- * @param {Object} repository The font repository.
- */
- setRepository: function( repository ) {
- this.repository = $.extend( WebFonts.repository, repository );
- },
-
- /**
- * Reset the font-family style.
- */
- reset: function() {
- this.$element.find( '.webfonts-changed' )
- .removeClass( '.webfonts-changed' )
- .css( 'font-family', '' );
- this.apply( this.originalFontFamily );
- },
-
- /**
- * Unbind the plugin
- */
- unbind: function() {
- this.$element.data( 'webfonts', null );
- },
-
- /**
- * Construct the CSS required for the font-family.
- *
- * @param {String} fontFamily The font-family name
- * @param {String} [variant] The font variant, eg: bold, italic etc. Default is normal.
- * @return {String} CSS
- */
- getCSS: function( fontFamily, variant ) {
- var webfonts, base, version, versionSuffix,
- fontFaceRule, userAgent, fontStyle, fontFormats,
- fontconfig = this.repository.get( fontFamily );
-
- variant = variant || 'normal';
-
- if ( variant !== 'normal' ) {
- if ( fontconfig.variants !== undefined && fontconfig.variants[variant] ) {
- fontconfig = this.repository.get( fontconfig.variants[variant] );
- }
- }
-
- if ( !fontconfig ) {
- return false;
- }
-
- base = this.repository.base;
- version = fontconfig.version;
- versionSuffix = '?version=' + version;
- fontFaceRule = '@font-face { font-family: \'' + fontFamily + '\';\n';
- userAgent = window.navigator.userAgent;
- fontStyle = fontconfig.fontstyle || 'normal';
- fontFormats = [];
-
- if ( fontconfig.eot ) {
- fontFaceRule += '\tsrc: url(\'' + base + fontconfig.eot + versionSuffix + '\');\n';
- }
- fontFaceRule += '\tsrc: ';
-
- // If the font is present locally, use it.
- if ( userAgent.match( /Android 2\.3/ ) === null ) {
- // Android 2.3.x does not respect local() syntax.
- // http://code.google.com/p/android/issues/detail?id=10609
- fontFaceRule += 'local(\'' + fontFamily + '\'),';
- }
-
- if ( fontconfig.woff2 ) {
- fontFormats.push( '\t\turl(\'' + base + fontconfig.woff2 + versionSuffix
- + '\') format(\'woff2\')' );
- }
-
- if ( fontconfig.woff ) {
- fontFormats.push( '\t\turl(\'' + base + fontconfig.woff + versionSuffix
- + '\') format(\'woff\')' );
- }
-
- if ( fontconfig.svg ) {
- fontFormats.push( '\t\turl(\'' + base + fontconfig.svg + versionSuffix + '#'
- + fontFamily + '\') format(\'svg\')' );
- }
-
- if ( fontconfig.ttf ) {
- fontFormats.push( '\t\turl(\'' + base + fontconfig.ttf + versionSuffix
- + '\') format(\'truetype\')' );
- }
-
- fontFaceRule += fontFormats.join() + ';\n';
-
- if ( fontconfig.fontweight ) {
- fontFaceRule += '\tfont-weight:' + fontconfig.fontweight + ';';
- }
-
- if ( fontconfig.fontstyle !== undefined ) {
- fontFaceRule += '\tfont-style:' + fontconfig.fontstyle + ';';
- } else {
- fontFaceRule += '\tfont-style: normal;';
- }
-
- fontFaceRule += '}\n';
-
- webfonts = this;
- if ( fontconfig.variants !== undefined ) {
- $.each( fontconfig.variants, function ( variant ) {
- fontFaceRule += webfonts.getCSS( fontFamily, variant );
- } );
- }
-
- return fontFaceRule;
- }
- };
-
- $.fn.webfonts = function( option ) {
- return this.each( function() {
- var $this = $( this ),
- data = $this.data( 'webfonts' ),
- options = typeof option === 'object' && option;
-
- if ( !data ) {
- $this.data( 'webfonts', ( data = new WebFonts( this, options ) ) );
- }
-
- if ( typeof option === 'string' ) {
- data[option]();
- }
- } );
- };
-
- $.fn.webfonts.defaults = {
- repository: WebFonts.repository, // Default font repository
- fontStack: [ 'Helvetica', 'Arial', 'sans-serif' ], // Default font fallback
- exclude: '', // jQuery selectors to exclude
- overridableFontFamilies: []
- };
-
- $.fn.webfonts.Constructor = WebFonts;
-
- // Private methods for the WebFonts prototype
-
- /**
- * Create a new style tag and add it to the DOM.
- *
- * @param {String} css
- */
- function injectCSS( css ) {
- var s = document.createElement( 'style' );
-
- // Insert into document before setting cssText
- document.getElementsByTagName( 'head' )[0].appendChild( s );
-
- if ( s.styleSheet ) {
- s.styleSheet.cssText = css;
- // IE
- } else {
- // Safari sometimes borks on null
- s.appendChild( document.createTextNode( String( css ) ) );
- }
- }
-} )( jQuery, window, document );
diff --git a/MLEB/UniversalLanguageSelector/lib/rangy/rangy-core.js b/MLEB/UniversalLanguageSelector/lib/rangy/rangy-core.js
index 8cda5f68..69e95bfa 100644
--- a/MLEB/UniversalLanguageSelector/lib/rangy/rangy-core.js
+++ b/MLEB/UniversalLanguageSelector/lib/rangy/rangy-core.js
@@ -1,20 +1,34 @@
/**
- * @license Rangy, a cross-browser JavaScript range and selection library
- * http://code.google.com/p/rangy/
+ * Rangy, a cross-browser JavaScript range and selection library
+ * https://github.com/timdown/rangy
*
- * Copyright 2012, Tim Down
+ * Copyright 2015, Tim Down
* Licensed under the MIT license.
- * Version: 1.2.3
- * Build date: 26 February 2012
+ * Version: 1.3.0
+ * Build date: 10 May 2015
*/
-window['rangy'] = (function() {
+(function(factory, root) {
+ if (typeof define == "function" && define.amd) {
+ // AMD. Register as an anonymous module.
+ define(factory);
+ } else if (typeof module != "undefined" && typeof exports == "object") {
+ // Node/CommonJS style
+ module.exports = factory();
+ } else {
+ // No AMD or CommonJS support so we place Rangy in (probably) the global variable
+ root.rangy = factory();
+ }
+})(function() {
var OBJECT = "object", FUNCTION = "function", UNDEFINED = "undefined";
+ // Minimal set of properties required for DOM Level 2 Range compliance. Comparison constants such as START_TO_START
+ // are omitted because ranges in KHTML do not have them but otherwise work perfectly well. See issue 113.
var domRangeProperties = ["startContainer", "startOffset", "endContainer", "endOffset", "collapsed",
- "commonAncestorContainer", "START_TO_START", "START_TO_END", "END_TO_START", "END_TO_END"];
+ "commonAncestorContainer"];
+ // Minimal set of methods required for DOM Level 2 Range compliance
var domRangeMethods = ["setStart", "setStartBefore", "setStartAfter", "setEnd", "setEndBefore",
"setEndAfter", "collapse", "selectNode", "selectNodeContents", "compareBoundaryPoints", "deleteContents",
"extractContents", "cloneContents", "insertNode", "surroundContents", "cloneRange", "toString", "detach"];
@@ -22,8 +36,8 @@ window['rangy'] = (function() {
var textRangeProperties = ["boundingHeight", "boundingLeft", "boundingTop", "boundingWidth", "htmlText", "text"];
// Subset of TextRange's full set of methods that we're interested in
- var textRangeMethods = ["collapse", "compareEndPoints", "duplicate", "getBookmark", "moveToBookmark",
- "moveToElementText", "parentElement", "pasteHTML", "select", "setEndPoint", "getBoundingClientRect"];
+ var textRangeMethods = ["collapse", "compareEndPoints", "duplicate", "moveToElementText", "parentElement", "select",
+ "setEndPoint", "getBoundingClientRect"];
/*----------------------------------------------------------------------------------------------------------------*/
@@ -64,67 +78,177 @@ window['rangy'] = (function() {
return range && areHostMethods(range, textRangeMethods) && areHostProperties(range, textRangeProperties);
}
+ function getBody(doc) {
+ return isHostObject(doc, "body") ? doc.body : doc.getElementsByTagName("body")[0];
+ }
+
+ var forEach = [].forEach ?
+ function(arr, func) {
+ arr.forEach(func);
+ } :
+ function(arr, func) {
+ for (var i = 0, len = arr.length; i < len; ++i) {
+ func(arr[i], i);
+ }
+ };
+
+ var modules = {};
+
+ var isBrowser = (typeof window != UNDEFINED && typeof document != UNDEFINED);
+
+ var util = {
+ isHostMethod: isHostMethod,
+ isHostObject: isHostObject,
+ isHostProperty: isHostProperty,
+ areHostMethods: areHostMethods,
+ areHostObjects: areHostObjects,
+ areHostProperties: areHostProperties,
+ isTextRange: isTextRange,
+ getBody: getBody,
+ forEach: forEach
+ };
+
var api = {
- version: "1.2.3",
+ version: "1.3.0",
initialized: false,
+ isBrowser: isBrowser,
supported: true,
-
- util: {
- isHostMethod: isHostMethod,
- isHostObject: isHostObject,
- isHostProperty: isHostProperty,
- areHostMethods: areHostMethods,
- areHostObjects: areHostObjects,
- areHostProperties: areHostProperties,
- isTextRange: isTextRange
- },
-
+ util: util,
features: {},
-
- modules: {},
+ modules: modules,
config: {
+ alertOnFail: false,
alertOnWarn: false,
- preferTextRange: false
+ preferTextRange: false,
+ autoInitialize: (typeof rangyAutoInitialize == UNDEFINED) ? true : rangyAutoInitialize
}
};
+ function consoleLog(msg) {
+ if (typeof console != UNDEFINED && isHostMethod(console, "log")) {
+ console.log(msg);
+ }
+ }
+
+ function alertOrLog(msg, shouldAlert) {
+ if (isBrowser && shouldAlert) {
+ alert(msg);
+ } else {
+ consoleLog(msg);
+ }
+ }
+
function fail(reason) {
- window.alert("Rangy not supported in your browser. Reason: " + reason);
api.initialized = true;
api.supported = false;
+ alertOrLog("Rangy is not supported in this environment. Reason: " + reason, api.config.alertOnFail);
}
api.fail = fail;
function warn(msg) {
- var warningMessage = "Rangy warning: " + msg;
- if (api.config.alertOnWarn) {
- window.alert(warningMessage);
- } else if (typeof window.console != UNDEFINED && typeof window.console.log != UNDEFINED) {
- window.console.log(warningMessage);
- }
+ alertOrLog("Rangy warning: " + msg, api.config.alertOnWarn);
}
api.warn = warn;
+ // Add utility extend() method
+ var extend;
if ({}.hasOwnProperty) {
- api.util.extend = function(o, props) {
+ util.extend = extend = function(obj, props, deep) {
+ var o, p;
for (var i in props) {
if (props.hasOwnProperty(i)) {
- o[i] = props[i];
+ o = obj[i];
+ p = props[i];
+ if (deep && o !== null && typeof o == "object" && p !== null && typeof p == "object") {
+ extend(o, p, true);
+ }
+ obj[i] = p;
}
}
+ // Special case for toString, which does not show up in for...in loops in IE <= 8
+ if (props.hasOwnProperty("toString")) {
+ obj.toString = props.toString;
+ }
+ return obj;
+ };
+
+ util.createOptions = function(optionsParam, defaults) {
+ var options = {};
+ extend(options, defaults);
+ if (optionsParam) {
+ extend(options, optionsParam);
+ }
+ return options;
};
} else {
fail("hasOwnProperty not supported");
}
+ // Test whether we're in a browser and bail out if not
+ if (!isBrowser) {
+ fail("Rangy can only run in a browser");
+ }
+
+ // Test whether Array.prototype.slice can be relied on for NodeLists and use an alternative toArray() if not
+ (function() {
+ var toArray;
+
+ if (isBrowser) {
+ var el = document.createElement("div");
+ el.appendChild(document.createElement("span"));
+ var slice = [].slice;
+ try {
+ if (slice.call(el.childNodes, 0)[0].nodeType == 1) {
+ toArray = function(arrayLike) {
+ return slice.call(arrayLike, 0);
+ };
+ }
+ } catch (e) {}
+ }
+
+ if (!toArray) {
+ toArray = function(arrayLike) {
+ var arr = [];
+ for (var i = 0, len = arrayLike.length; i < len; ++i) {
+ arr[i] = arrayLike[i];
+ }
+ return arr;
+ };
+ }
+
+ util.toArray = toArray;
+ })();
+
+ // Very simple event handler wrapper function that doesn't attempt to solve issues such as "this" handling or
+ // normalization of event properties
+ var addListener;
+ if (isBrowser) {
+ if (isHostMethod(document, "addEventListener")) {
+ addListener = function(obj, eventType, listener) {
+ obj.addEventListener(eventType, listener, false);
+ };
+ } else if (isHostMethod(document, "attachEvent")) {
+ addListener = function(obj, eventType, listener) {
+ obj.attachEvent("on" + eventType, listener);
+ };
+ } else {
+ fail("Document does not have required addEventListener or attachEvent method");
+ }
+
+ util.addListener = addListener;
+ }
+
var initListeners = [];
- var moduleInitializers = [];
+
+ function getErrorDesc(ex) {
+ return ex.message || ex.description || String(ex);
+ }
// Initialization
function init() {
- if (api.initialized) {
+ if (!isBrowser || api.initialized) {
return;
}
var testRange;
@@ -137,10 +261,13 @@ window['rangy'] = (function() {
if (areHostMethods(testRange, domRangeMethods) && areHostProperties(testRange, domRangeProperties)) {
implementsDomRange = true;
}
- testRange.detach();
}
- var body = isHostObject(document, "body") ? document.body : document.getElementsByTagName("body")[0];
+ var body = getBody(document);
+ if (!body || body.nodeName.toLowerCase() != "body") {
+ fail("No body element found");
+ return;
+ }
if (body && isHostMethod(body, "createTextRange")) {
testRange = body.createTextRange();
@@ -150,7 +277,8 @@ window['rangy'] = (function() {
}
if (!implementsDomRange && !implementsTextRange) {
- fail("Neither Range nor TextRange are implemented");
+ fail("Neither Range nor TextRange are available");
+ return;
}
api.initialized = true;
@@ -159,20 +287,43 @@ window['rangy'] = (function() {
implementsTextRange: implementsTextRange
};
- // Initialize modules and call init listeners
- var allListeners = moduleInitializers.concat(initListeners);
- for (var i = 0, len = allListeners.length; i < len; ++i) {
+ // Initialize modules
+ var module, errorMessage;
+ for (var moduleName in modules) {
+ if ( (module = modules[moduleName]) instanceof Module ) {
+ module.init(module, api);
+ }
+ }
+
+ // Call init listeners
+ for (var i = 0, len = initListeners.length; i < len; ++i) {
try {
- allListeners[i](api);
+ initListeners[i](api);
} catch (ex) {
- if (isHostObject(window, "console") && isHostMethod(window.console, "log")) {
- window.console.log("Init listener threw an exception. Continuing.", ex);
- }
-
+ errorMessage = "Rangy init listener threw an exception. Continuing. Detail: " + getErrorDesc(ex);
+ consoleLog(errorMessage);
}
}
}
+ function deprecationNotice(deprecated, replacement, module) {
+ if (module) {
+ deprecated += " in module " + module.name;
+ }
+ api.warn("DEPRECATED: " + deprecated + " is deprecated. Please use " +
+ replacement + " instead.");
+ }
+
+ function createAliasForDeprecatedMethod(owner, deprecated, replacement, module) {
+ owner[deprecated] = function() {
+ deprecationNotice(deprecated, replacement, module);
+ return owner[replacement].apply(owner, util.toArray(arguments));
+ };
+ }
+
+ util.deprecationNotice = deprecationNotice;
+ util.createAliasForDeprecatedMethod = createAliasForDeprecatedMethod;
+
// Allow external scripts to initialize this library in case it's loaded after the document has loaded
api.init = init;
@@ -185,1487 +336,1205 @@ window['rangy'] = (function() {
}
};
- var createMissingNativeApiListeners = [];
+ var shimListeners = [];
- api.addCreateMissingNativeApiListener = function(listener) {
- createMissingNativeApiListeners.push(listener);
+ api.addShimListener = function(listener) {
+ shimListeners.push(listener);
};
- function createMissingNativeApi(win) {
+ function shim(win) {
win = win || window;
init();
// Notify listeners
- for (var i = 0, len = createMissingNativeApiListeners.length; i < len; ++i) {
- createMissingNativeApiListeners[i](win);
+ for (var i = 0, len = shimListeners.length; i < len; ++i) {
+ shimListeners[i](win);
}
}
- api.createMissingNativeApi = createMissingNativeApi;
+ if (isBrowser) {
+ api.shim = api.createMissingNativeApi = shim;
+ createAliasForDeprecatedMethod(api, "createMissingNativeApi", "shim");
+ }
- /**
- * @constructor
- */
- function Module(name) {
+ function Module(name, dependencies, initializer) {
this.name = name;
+ this.dependencies = dependencies;
this.initialized = false;
this.supported = false;
+ this.initializer = initializer;
}
- Module.prototype.fail = function(reason) {
- this.initialized = true;
- this.supported = false;
-
- throw new Error("Module '" + this.name + "' failed to load: " + reason);
- };
-
- Module.prototype.warn = function(msg) {
- api.warn("Module " + this.name + ": " + msg);
- };
+ Module.prototype = {
+ init: function() {
+ var requiredModuleNames = this.dependencies || [];
+ for (var i = 0, len = requiredModuleNames.length, requiredModule, moduleName; i < len; ++i) {
+ moduleName = requiredModuleNames[i];
- Module.prototype.createError = function(msg) {
- return new Error("Error in Rangy " + this.name + " module: " + msg);
- };
-
- api.createModule = function(name, initFunc) {
- var module = new Module(name);
- api.modules[name] = module;
+ requiredModule = modules[moduleName];
+ if (!requiredModule || !(requiredModule instanceof Module)) {
+ throw new Error("required module '" + moduleName + "' not found");
+ }
- moduleInitializers.push(function(api) {
- initFunc(api, module);
- module.initialized = true;
- module.supported = true;
- });
- };
+ requiredModule.init();
- api.requireModules = function(modules) {
- for (var i = 0, len = modules.length, module, moduleName; i < len; ++i) {
- moduleName = modules[i];
- module = api.modules[moduleName];
- if (!module || !(module instanceof Module)) {
- throw new Error("Module '" + moduleName + "' not found");
- }
- if (!module.supported) {
- throw new Error("Module '" + moduleName + "' not supported");
+ if (!requiredModule.supported) {
+ throw new Error("required module '" + moduleName + "' not supported");
+ }
}
- }
- };
- /*----------------------------------------------------------------------------------------------------------------*/
+ // Now run initializer
+ this.initializer(this);
+ },
- // Wait for document to load before running tests
+ fail: function(reason) {
+ this.initialized = true;
+ this.supported = false;
+ throw new Error(reason);
+ },
- var docReady = false;
+ warn: function(msg) {
+ api.warn("Module " + this.name + ": " + msg);
+ },
- var loadHandler = function(e) {
+ deprecationNotice: function(deprecated, replacement) {
+ api.warn("DEPRECATED: " + deprecated + " in module " + this.name + " is deprecated. Please use " +
+ replacement + " instead");
+ },
- if (!docReady) {
- docReady = true;
- if (!api.initialized) {
- init();
- }
+ createError: function(msg) {
+ return new Error("Error in Rangy " + this.name + " module: " + msg);
}
};
- // Test whether we have window and document objects that we will need
- if (typeof window == UNDEFINED) {
- fail("No window found");
- return;
- }
- if (typeof document == UNDEFINED) {
- fail("No document found");
- return;
- }
-
- if (isHostMethod(document, "addEventListener")) {
- document.addEventListener("DOMContentLoaded", loadHandler, false);
- }
-
- // Add a fallback in case the DOMContentLoaded event isn't supported
- if (isHostMethod(window, "addEventListener")) {
- window.addEventListener("load", loadHandler, false);
- } else if (isHostMethod(window, "attachEvent")) {
- window.attachEvent("onload", loadHandler);
- } else {
- fail("Window does not have required addEventListener or attachEvent method");
- }
-
- return api;
-})();
-rangy.createModule("DomUtil", function(api, module) {
-
- var UNDEF = "undefined";
- var util = api.util;
-
- // Perform feature tests
- if (!util.areHostMethods(document, ["createDocumentFragment", "createElement", "createTextNode"])) {
- module.fail("document missing a Node creation method");
- }
-
- if (!util.isHostMethod(document, "getElementsByTagName")) {
- module.fail("document missing getElementsByTagName method");
- }
-
- var el = document.createElement("div");
- if (!util.areHostMethods(el, ["insertBefore", "appendChild", "cloneNode"] ||
- !util.areHostObjects(el, ["previousSibling", "nextSibling", "childNodes", "parentNode"]))) {
- module.fail("Incomplete Element implementation");
- }
-
- // innerHTML is required for Range's createContextualFragment method
- if (!util.isHostProperty(el, "innerHTML")) {
- module.fail("Element is missing innerHTML property");
- }
-
- var textNode = document.createTextNode("test");
- if (!util.areHostMethods(textNode, ["splitText", "deleteData", "insertData", "appendData", "cloneNode"] ||
- !util.areHostObjects(el, ["previousSibling", "nextSibling", "childNodes", "parentNode"]) ||
- !util.areHostProperties(textNode, ["data"]))) {
- module.fail("Incomplete Text Node implementation");
- }
-
- /*----------------------------------------------------------------------------------------------------------------*/
-
- // Removed use of indexOf because of a bizarre bug in Opera that is thrown in one of the Acid3 tests. I haven't been
- // able to replicate it outside of the test. The bug is that indexOf returns -1 when called on an Array that
- // contains just the document as a single element and the value searched for is the document.
- var arrayContains = /*Array.prototype.indexOf ?
- function(arr, val) {
- return arr.indexOf(val) > -1;
- }:*/
-
- function(arr, val) {
- var i = arr.length;
- while (i--) {
- if (arr[i] === val) {
- return true;
+ function createModule(name, dependencies, initFunc) {
+ var newModule = new Module(name, dependencies, function(module) {
+ if (!module.initialized) {
+ module.initialized = true;
+ try {
+ initFunc(api, module);
+ module.supported = true;
+ } catch (ex) {
+ var errorMessage = "Module '" + name + "' failed to load: " + getErrorDesc(ex);
+ consoleLog(errorMessage);
+ if (ex.stack) {
+ consoleLog(ex.stack);
+ }
}
}
- return false;
- };
-
- // Opera 11 puts HTML elements in the null namespace, it seems, and IE 7 has undefined namespaceURI
- function isHtmlNamespace(node) {
- var ns;
- return typeof node.namespaceURI == UNDEF || ((ns = node.namespaceURI) === null || ns == "http://www.w3.org/1999/xhtml");
- }
-
- function parentElement(node) {
- var parent = node.parentNode;
- return (parent.nodeType == 1) ? parent : null;
+ });
+ modules[name] = newModule;
+ return newModule;
}
- function getNodeIndex(node) {
- var i = 0;
- while( (node = node.previousSibling) ) {
- i++;
+ api.createModule = function(name) {
+ // Allow 2 or 3 arguments (second argument is an optional array of dependencies)
+ var initFunc, dependencies;
+ if (arguments.length == 2) {
+ initFunc = arguments[1];
+ dependencies = [];
+ } else {
+ initFunc = arguments[2];
+ dependencies = arguments[1];
}
- return i;
- }
- function getNodeLength(node) {
- var childNodes;
- return isCharacterDataNode(node) ? node.length : ((childNodes = node.childNodes) ? childNodes.length : 0);
- }
+ var module = createModule(name, dependencies, initFunc);
- function getCommonAncestor(node1, node2) {
- var ancestors = [], n;
- for (n = node1; n; n = n.parentNode) {
- ancestors.push(n);
+ // Initialize the module immediately if the core is already initialized
+ if (api.initialized && api.supported) {
+ module.init();
}
+ };
- for (n = node2; n; n = n.parentNode) {
- if (arrayContains(ancestors, n)) {
- return n;
- }
- }
+ api.createCoreModule = function(name, dependencies, initFunc) {
+ createModule(name, dependencies, initFunc);
+ };
- return null;
- }
+ /*----------------------------------------------------------------------------------------------------------------*/
- function isAncestorOf(ancestor, descendant, selfIsAncestor) {
- var n = selfIsAncestor ? descendant : descendant.parentNode;
- while (n) {
- if (n === ancestor) {
- return true;
- } else {
- n = n.parentNode;
- }
- }
- return false;
- }
+ // Ensure rangy.rangePrototype and rangy.selectionPrototype are available immediately
- function getClosestAncestorIn(node, ancestor, selfIsAncestor) {
- var p, n = selfIsAncestor ? node : node.parentNode;
- while (n) {
- p = n.parentNode;
- if (p === ancestor) {
- return n;
- }
- n = p;
- }
- return null;
- }
+ function RangePrototype() {}
+ api.RangePrototype = RangePrototype;
+ api.rangePrototype = new RangePrototype();
- function isCharacterDataNode(node) {
- var t = node.nodeType;
- return t == 3 || t == 4 || t == 8 ; // Text, CDataSection or Comment
- }
+ function SelectionPrototype() {}
+ api.selectionPrototype = new SelectionPrototype();
- function insertAfter(node, precedingNode) {
- var nextNode = precedingNode.nextSibling, parent = precedingNode.parentNode;
- if (nextNode) {
- parent.insertBefore(node, nextNode);
- } else {
- parent.appendChild(node);
- }
- return node;
- }
+ /*----------------------------------------------------------------------------------------------------------------*/
- // Note that we cannot use splitText() because it is bugridden in IE 9.
- function splitDataNode(node, index) {
- var newNode = node.cloneNode(false);
- newNode.deleteData(0, index);
- node.deleteData(index, node.length - index);
- insertAfter(newNode, node);
- return newNode;
- }
+ // DOM utility methods used by Rangy
+ api.createCoreModule("DomUtil", [], function(api, module) {
+ var UNDEF = "undefined";
+ var util = api.util;
+ var getBody = util.getBody;
- function getDocument(node) {
- if (node.nodeType == 9) {
- return node;
- } else if (typeof node.ownerDocument != UNDEF) {
- return node.ownerDocument;
- } else if (typeof node.document != UNDEF) {
- return node.document;
- } else if (node.parentNode) {
- return getDocument(node.parentNode);
- } else {
- throw new Error("getDocument: no document found for node");
+ // Perform feature tests
+ if (!util.areHostMethods(document, ["createDocumentFragment", "createElement", "createTextNode"])) {
+ module.fail("document missing a Node creation method");
}
- }
- function getWindow(node) {
- var doc = getDocument(node);
- if (typeof doc.defaultView != UNDEF) {
- return doc.defaultView;
- } else if (typeof doc.parentWindow != UNDEF) {
- return doc.parentWindow;
- } else {
- throw new Error("Cannot get a window object for node");
+ if (!util.isHostMethod(document, "getElementsByTagName")) {
+ module.fail("document missing getElementsByTagName method");
}
- }
- function getIframeDocument(iframeEl) {
- if (typeof iframeEl.contentDocument != UNDEF) {
- return iframeEl.contentDocument;
- } else if (typeof iframeEl.contentWindow != UNDEF) {
- return iframeEl.contentWindow.document;
- } else {
- throw new Error("getIframeWindow: No Document object found for iframe element");
+ var el = document.createElement("div");
+ if (!util.areHostMethods(el, ["insertBefore", "appendChild", "cloneNode"] ||
+ !util.areHostObjects(el, ["previousSibling", "nextSibling", "childNodes", "parentNode"]))) {
+ module.fail("Incomplete Element implementation");
}
- }
- function getIframeWindow(iframeEl) {
- if (typeof iframeEl.contentWindow != UNDEF) {
- return iframeEl.contentWindow;
- } else if (typeof iframeEl.contentDocument != UNDEF) {
- return iframeEl.contentDocument.defaultView;
- } else {
- throw new Error("getIframeWindow: No Window object found for iframe element");
+ // innerHTML is required for Range's createContextualFragment method
+ if (!util.isHostProperty(el, "innerHTML")) {
+ module.fail("Element is missing innerHTML property");
}
- }
- function getBody(doc) {
- return util.isHostObject(doc, "body") ? doc.body : doc.getElementsByTagName("body")[0];
- }
-
- function getRootContainer(node) {
- var parent;
- while ( (parent = node.parentNode) ) {
- node = parent;
+ var textNode = document.createTextNode("test");
+ if (!util.areHostMethods(textNode, ["splitText", "deleteData", "insertData", "appendData", "cloneNode"] ||
+ !util.areHostObjects(el, ["previousSibling", "nextSibling", "childNodes", "parentNode"]) ||
+ !util.areHostProperties(textNode, ["data"]))) {
+ module.fail("Incomplete Text Node implementation");
}
- return node;
- }
- function comparePoints(nodeA, offsetA, nodeB, offsetB) {
- // See http://www.w3.org/TR/DOM-Level-2-Traversal-Range/ranges.html#Level-2-Range-Comparing
- var nodeC, root, childA, childB, n;
- if (nodeA == nodeB) {
+ /*----------------------------------------------------------------------------------------------------------------*/
- // Case 1: nodes are the same
- return offsetA === offsetB ? 0 : (offsetA < offsetB) ? -1 : 1;
- } else if ( (nodeC = getClosestAncestorIn(nodeB, nodeA, true)) ) {
+ // Removed use of indexOf because of a bizarre bug in Opera that is thrown in one of the Acid3 tests. I haven't been
+ // able to replicate it outside of the test. The bug is that indexOf returns -1 when called on an Array that
+ // contains just the document as a single element and the value searched for is the document.
+ var arrayContains = /*Array.prototype.indexOf ?
+ function(arr, val) {
+ return arr.indexOf(val) > -1;
+ }:*/
- // Case 2: node C (container B or an ancestor) is a child node of A
- return offsetA <= getNodeIndex(nodeC) ? -1 : 1;
- } else if ( (nodeC = getClosestAncestorIn(nodeA, nodeB, true)) ) {
-
- // Case 3: node C (container A or an ancestor) is a child node of B
- return getNodeIndex(nodeC) < offsetB ? -1 : 1;
- } else {
-
- // Case 4: containers are siblings or descendants of siblings
- root = getCommonAncestor(nodeA, nodeB);
- childA = (nodeA === root) ? root : getClosestAncestorIn(nodeA, root, true);
- childB = (nodeB === root) ? root : getClosestAncestorIn(nodeB, root, true);
-
- if (childA === childB) {
- // This shouldn't be possible
-
- throw new Error("comparePoints got to case 4 and childA and childB are the same!");
- } else {
- n = root.firstChild;
- while (n) {
- if (n === childA) {
- return -1;
- } else if (n === childB) {
- return 1;
+ function(arr, val) {
+ var i = arr.length;
+ while (i--) {
+ if (arr[i] === val) {
+ return true;
}
- n = n.nextSibling;
}
- throw new Error("Should not be here!");
- }
+ return false;
+ };
+
+ // Opera 11 puts HTML elements in the null namespace, it seems, and IE 7 has undefined namespaceURI
+ function isHtmlNamespace(node) {
+ var ns;
+ return typeof node.namespaceURI == UNDEF || ((ns = node.namespaceURI) === null || ns == "http://www.w3.org/1999/xhtml");
}
- }
- function fragmentFromNodeChildren(node) {
- var fragment = getDocument(node).createDocumentFragment(), child;
- while ( (child = node.firstChild) ) {
- fragment.appendChild(child);
+ function parentElement(node) {
+ var parent = node.parentNode;
+ return (parent.nodeType == 1) ? parent : null;
}
- return fragment;
- }
- function inspectNode(node) {
- if (!node) {
- return "[No node]";
+ function getNodeIndex(node) {
+ var i = 0;
+ while( (node = node.previousSibling) ) {
+ ++i;
+ }
+ return i;
}
- if (isCharacterDataNode(node)) {
- return '"' + node.data + '"';
- } else if (node.nodeType == 1) {
- var idAttr = node.id ? ' id="' + node.id + '"' : "";
- return "<" + node.nodeName + idAttr + ">[" + node.childNodes.length + "]";
- } else {
- return node.nodeName;
+
+ function getNodeLength(node) {
+ switch (node.nodeType) {
+ case 7:
+ case 10:
+ return 0;
+ case 3:
+ case 8:
+ return node.length;
+ default:
+ return node.childNodes.length;
+ }
}
- }
- /**
- * @constructor
- */
- function NodeIterator(root) {
- this.root = root;
- this._next = root;
- }
+ function getCommonAncestor(node1, node2) {
+ var ancestors = [], n;
+ for (n = node1; n; n = n.parentNode) {
+ ancestors.push(n);
+ }
- NodeIterator.prototype = {
- _current: null,
+ for (n = node2; n; n = n.parentNode) {
+ if (arrayContains(ancestors, n)) {
+ return n;
+ }
+ }
- hasNext: function() {
- return !!this._next;
- },
+ return null;
+ }
- next: function() {
- var n = this._current = this._next;
- var child, next;
- if (this._current) {
- child = n.firstChild;
- if (child) {
- this._next = child;
+ function isAncestorOf(ancestor, descendant, selfIsAncestor) {
+ var n = selfIsAncestor ? descendant : descendant.parentNode;
+ while (n) {
+ if (n === ancestor) {
+ return true;
} else {
- next = null;
- while ((n !== this.root) && !(next = n.nextSibling)) {
- n = n.parentNode;
- }
- this._next = next;
+ n = n.parentNode;
}
}
- return this._current;
- },
-
- detach: function() {
- this._current = this._next = this.root = null;
+ return false;
}
- };
-
- function createIterator(root) {
- return new NodeIterator(root);
- }
-
- /**
- * @constructor
- */
- function DomPosition(node, offset) {
- this.node = node;
- this.offset = offset;
- }
-
- DomPosition.prototype = {
- equals: function(pos) {
- return this.node === pos.node & this.offset == pos.offset;
- },
- inspect: function() {
- return "[DomPosition(" + inspectNode(this.node) + ":" + this.offset + ")]";
+ function isOrIsAncestorOf(ancestor, descendant) {
+ return isAncestorOf(ancestor, descendant, true);
}
- };
-
- /**
- * @constructor
- */
- function DOMException(codeName) {
- this.code = this[codeName];
- this.codeName = codeName;
- this.message = "DOMException: " + this.codeName;
- }
-
- DOMException.prototype = {
- INDEX_SIZE_ERR: 1,
- HIERARCHY_REQUEST_ERR: 3,
- WRONG_DOCUMENT_ERR: 4,
- NO_MODIFICATION_ALLOWED_ERR: 7,
- NOT_FOUND_ERR: 8,
- NOT_SUPPORTED_ERR: 9,
- INVALID_STATE_ERR: 11
- };
-
- DOMException.prototype.toString = function() {
- return this.message;
- };
-
- api.dom = {
- arrayContains: arrayContains,
- isHtmlNamespace: isHtmlNamespace,
- parentElement: parentElement,
- getNodeIndex: getNodeIndex,
- getNodeLength: getNodeLength,
- getCommonAncestor: getCommonAncestor,
- isAncestorOf: isAncestorOf,
- getClosestAncestorIn: getClosestAncestorIn,
- isCharacterDataNode: isCharacterDataNode,
- insertAfter: insertAfter,
- splitDataNode: splitDataNode,
- getDocument: getDocument,
- getWindow: getWindow,
- getIframeWindow: getIframeWindow,
- getIframeDocument: getIframeDocument,
- getBody: getBody,
- getRootContainer: getRootContainer,
- comparePoints: comparePoints,
- inspectNode: inspectNode,
- fragmentFromNodeChildren: fragmentFromNodeChildren,
- createIterator: createIterator,
- DomPosition: DomPosition
- };
-
- api.DOMException = DOMException;
-});rangy.createModule("DomRange", function(api, module) {
- api.requireModules( ["DomUtil"] );
-
-
- var dom = api.dom;
- var DomPosition = dom.DomPosition;
- var DOMException = api.DOMException;
-
- /*----------------------------------------------------------------------------------------------------------------*/
-
- // Utility functions
-
- function isNonTextPartiallySelected(node, range) {
- return (node.nodeType != 3) &&
- (dom.isAncestorOf(node, range.startContainer, true) || dom.isAncestorOf(node, range.endContainer, true));
- }
-
- function getRangeDocument(range) {
- return dom.getDocument(range.startContainer);
- }
- function dispatchEvent(range, type, args) {
- var listeners = range._listeners[type];
- if (listeners) {
- for (var i = 0, len = listeners.length; i < len; ++i) {
- listeners[i].call(range, {target: range, args: args});
+ function getClosestAncestorIn(node, ancestor, selfIsAncestor) {
+ var p, n = selfIsAncestor ? node : node.parentNode;
+ while (n) {
+ p = n.parentNode;
+ if (p === ancestor) {
+ return n;
+ }
+ n = p;
}
+ return null;
}
- }
- function getBoundaryBeforeNode(node) {
- return new DomPosition(node.parentNode, dom.getNodeIndex(node));
- }
-
- function getBoundaryAfterNode(node) {
- return new DomPosition(node.parentNode, dom.getNodeIndex(node) + 1);
- }
-
- function insertNodeAtPosition(node, n, o) {
- var firstNodeInserted = node.nodeType == 11 ? node.firstChild : node;
- if (dom.isCharacterDataNode(n)) {
- if (o == n.length) {
- dom.insertAfter(node, n);
- } else {
- n.parentNode.insertBefore(node, o == 0 ? n : dom.splitDataNode(n, o));
- }
- } else if (o >= n.childNodes.length) {
- n.appendChild(node);
- } else {
- n.insertBefore(node, n.childNodes[o]);
+ function isCharacterDataNode(node) {
+ var t = node.nodeType;
+ return t == 3 || t == 4 || t == 8 ; // Text, CDataSection or Comment
}
- return firstNodeInserted;
- }
- function cloneSubtree(iterator) {
- var partiallySelected;
- for (var node, frag = getRangeDocument(iterator.range).createDocumentFragment(), subIterator; node = iterator.next(); ) {
- partiallySelected = iterator.isPartiallySelectedSubtree();
-
- node = node.cloneNode(!partiallySelected);
- if (partiallySelected) {
- subIterator = iterator.getSubtreeIterator();
- node.appendChild(cloneSubtree(subIterator));
- subIterator.detach(true);
+ function isTextOrCommentNode(node) {
+ if (!node) {
+ return false;
}
+ var t = node.nodeType;
+ return t == 3 || t == 8 ; // Text or Comment
+ }
- if (node.nodeType == 10) { // DocumentType
- throw new DOMException("HIERARCHY_REQUEST_ERR");
+ function insertAfter(node, precedingNode) {
+ var nextNode = precedingNode.nextSibling, parent = precedingNode.parentNode;
+ if (nextNode) {
+ parent.insertBefore(node, nextNode);
+ } else {
+ parent.appendChild(node);
}
- frag.appendChild(node);
+ return node;
}
- return frag;
- }
- function iterateSubtree(rangeIterator, func, iteratorState) {
- var it, n;
- iteratorState = iteratorState || { stop: false };
- for (var node, subRangeIterator; node = rangeIterator.next(); ) {
- //log.debug("iterateSubtree, partially selected: " + rangeIterator.isPartiallySelectedSubtree(), nodeToString(node));
- if (rangeIterator.isPartiallySelectedSubtree()) {
- // The node is partially selected by the Range, so we can use a new RangeIterator on the portion of the
- // node selected by the Range.
- if (func(node) === false) {
- iteratorState.stop = true;
- return;
- } else {
- subRangeIterator = rangeIterator.getSubtreeIterator();
- iterateSubtree(subRangeIterator, func, iteratorState);
- subRangeIterator.detach(true);
- if (iteratorState.stop) {
- return;
+ // Note that we cannot use splitText() because it is bugridden in IE 9.
+ function splitDataNode(node, index, positionsToPreserve) {
+ var newNode = node.cloneNode(false);
+ newNode.deleteData(0, index);
+ node.deleteData(index, node.length - index);
+ insertAfter(newNode, node);
+
+ // Preserve positions
+ if (positionsToPreserve) {
+ for (var i = 0, position; position = positionsToPreserve[i++]; ) {
+ // Handle case where position was inside the portion of node after the split point
+ if (position.node == node && position.offset > index) {
+ position.node = newNode;
+ position.offset -= index;
}
- }
- } else {
- // The whole node is selected, so we can use efficient DOM iteration to iterate over the node and its
- // descendant
- it = dom.createIterator(node);
- while ( (n = it.next()) ) {
- if (func(n) === false) {
- iteratorState.stop = true;
- return;
+ // Handle the case where the position is a node offset within node's parent
+ else if (position.node == node.parentNode && position.offset > getNodeIndex(node)) {
+ ++position.offset;
}
}
}
+ return newNode;
}
- }
- function deleteSubtree(iterator) {
- var subIterator;
- while (iterator.next()) {
- if (iterator.isPartiallySelectedSubtree()) {
- subIterator = iterator.getSubtreeIterator();
- deleteSubtree(subIterator);
- subIterator.detach(true);
+ function getDocument(node) {
+ if (node.nodeType == 9) {
+ return node;
+ } else if (typeof node.ownerDocument != UNDEF) {
+ return node.ownerDocument;
+ } else if (typeof node.document != UNDEF) {
+ return node.document;
+ } else if (node.parentNode) {
+ return getDocument(node.parentNode);
} else {
- iterator.remove();
+ throw module.createError("getDocument: no document found for node");
}
}
- }
-
- function extractSubtree(iterator) {
-
- for (var node, frag = getRangeDocument(iterator.range).createDocumentFragment(), subIterator; node = iterator.next(); ) {
-
- if (iterator.isPartiallySelectedSubtree()) {
- node = node.cloneNode(false);
- subIterator = iterator.getSubtreeIterator();
- node.appendChild(extractSubtree(subIterator));
- subIterator.detach(true);
+ function getWindow(node) {
+ var doc = getDocument(node);
+ if (typeof doc.defaultView != UNDEF) {
+ return doc.defaultView;
+ } else if (typeof doc.parentWindow != UNDEF) {
+ return doc.parentWindow;
} else {
- iterator.remove();
- }
- if (node.nodeType == 10) { // DocumentType
- throw new DOMException("HIERARCHY_REQUEST_ERR");
+ throw module.createError("Cannot get a window object for node");
}
- frag.appendChild(node);
- }
- return frag;
- }
-
- function getNodesInRange(range, nodeTypes, filter) {
- //log.info("getNodesInRange, " + nodeTypes.join(","));
- var filterNodeTypes = !!(nodeTypes && nodeTypes.length), regex;
- var filterExists = !!filter;
- if (filterNodeTypes) {
- regex = new RegExp("^(" + nodeTypes.join("|") + ")$");
}
- var nodes = [];
- iterateSubtree(new RangeIterator(range, false), function(node) {
- if ((!filterNodeTypes || regex.test(node.nodeType)) && (!filterExists || filter(node))) {
- nodes.push(node);
+ function getIframeDocument(iframeEl) {
+ if (typeof iframeEl.contentDocument != UNDEF) {
+ return iframeEl.contentDocument;
+ } else if (typeof iframeEl.contentWindow != UNDEF) {
+ return iframeEl.contentWindow.document;
+ } else {
+ throw module.createError("getIframeDocument: No Document object found for iframe element");
}
- });
- return nodes;
- }
-
- function inspect(range) {
- var name = (typeof range.getName == "undefined") ? "Range" : range.getName();
- return "[" + name + "(" + dom.inspectNode(range.startContainer) + ":" + range.startOffset + ", " +
- dom.inspectNode(range.endContainer) + ":" + range.endOffset + ")]";
- }
-
- /*----------------------------------------------------------------------------------------------------------------*/
-
- // RangeIterator code partially borrows from IERange by Tim Ryan (http://github.com/timcameronryan/IERange)
-
- /**
- * @constructor
- */
- function RangeIterator(range, clonePartiallySelectedTextNodes) {
- this.range = range;
- this.clonePartiallySelectedTextNodes = clonePartiallySelectedTextNodes;
-
-
-
- if (!range.collapsed) {
- this.sc = range.startContainer;
- this.so = range.startOffset;
- this.ec = range.endContainer;
- this.eo = range.endOffset;
- var root = range.commonAncestorContainer;
+ }
- if (this.sc === this.ec && dom.isCharacterDataNode(this.sc)) {
- this.isSingleCharacterDataNode = true;
- this._first = this._last = this._next = this.sc;
+ function getIframeWindow(iframeEl) {
+ if (typeof iframeEl.contentWindow != UNDEF) {
+ return iframeEl.contentWindow;
+ } else if (typeof iframeEl.contentDocument != UNDEF) {
+ return iframeEl.contentDocument.defaultView;
} else {
- this._first = this._next = (this.sc === root && !dom.isCharacterDataNode(this.sc)) ?
- this.sc.childNodes[this.so] : dom.getClosestAncestorIn(this.sc, root, true);
- this._last = (this.ec === root && !dom.isCharacterDataNode(this.ec)) ?
- this.ec.childNodes[this.eo - 1] : dom.getClosestAncestorIn(this.ec, root, true);
+ throw module.createError("getIframeWindow: No Window object found for iframe element");
}
-
}
- }
-
- RangeIterator.prototype = {
- _current: null,
- _next: null,
- _first: null,
- _last: null,
- isSingleCharacterDataNode: false,
-
- reset: function() {
- this._current = null;
- this._next = this._first;
- },
-
- hasNext: function() {
- return !!this._next;
- },
- next: function() {
- // Move to next node
- var current = this._current = this._next;
- if (current) {
- this._next = (current !== this._last) ? current.nextSibling : null;
+ // This looks bad. Is it worth it?
+ function isWindow(obj) {
+ return obj && util.isHostMethod(obj, "setTimeout") && util.isHostObject(obj, "document");
+ }
- // Check for partially selected text nodes
- if (dom.isCharacterDataNode(current) && this.clonePartiallySelectedTextNodes) {
- if (current === this.ec) {
+ function getContentDocument(obj, module, methodName) {
+ var doc;
- (current = current.cloneNode(true)).deleteData(this.eo, current.length - this.eo);
- }
- if (this._current === this.sc) {
+ if (!obj) {
+ doc = document;
+ }
- (current = current.cloneNode(true)).deleteData(0, this.so);
- }
- }
+ // Test if a DOM node has been passed and obtain a document object for it if so
+ else if (util.isHostProperty(obj, "nodeType")) {
+ doc = (obj.nodeType == 1 && obj.tagName.toLowerCase() == "iframe") ?
+ getIframeDocument(obj) : getDocument(obj);
}
- return current;
- },
+ // Test if the doc parameter appears to be a Window object
+ else if (isWindow(obj)) {
+ doc = obj.document;
+ }
- remove: function() {
- var current = this._current, start, end;
+ if (!doc) {
+ throw module.createError(methodName + "(): Parameter must be a Window object or DOM node");
+ }
- if (dom.isCharacterDataNode(current) && (current === this.sc || current === this.ec)) {
- start = (current === this.sc) ? this.so : 0;
- end = (current === this.ec) ? this.eo : current.length;
- if (start != end) {
- current.deleteData(start, end - start);
- }
- } else {
- if (current.parentNode) {
- current.parentNode.removeChild(current);
- } else {
+ return doc;
+ }
- }
+ function getRootContainer(node) {
+ var parent;
+ while ( (parent = node.parentNode) ) {
+ node = parent;
}
- },
-
- // Checks if the current node is partially selected
- isPartiallySelectedSubtree: function() {
- var current = this._current;
- return isNonTextPartiallySelected(current, this.range);
- },
+ return node;
+ }
- getSubtreeIterator: function() {
- var subRange;
- if (this.isSingleCharacterDataNode) {
- subRange = this.range.cloneRange();
- subRange.collapse();
+ function comparePoints(nodeA, offsetA, nodeB, offsetB) {
+ // See http://www.w3.org/TR/DOM-Level-2-Traversal-Range/ranges.html#Level-2-Range-Comparing
+ var nodeC, root, childA, childB, n;
+ if (nodeA == nodeB) {
+ // Case 1: nodes are the same
+ return offsetA === offsetB ? 0 : (offsetA < offsetB) ? -1 : 1;
+ } else if ( (nodeC = getClosestAncestorIn(nodeB, nodeA, true)) ) {
+ // Case 2: node C (container B or an ancestor) is a child node of A
+ return offsetA <= getNodeIndex(nodeC) ? -1 : 1;
+ } else if ( (nodeC = getClosestAncestorIn(nodeA, nodeB, true)) ) {
+ // Case 3: node C (container A or an ancestor) is a child node of B
+ return getNodeIndex(nodeC) < offsetB ? -1 : 1;
} else {
- subRange = new Range(getRangeDocument(this.range));
- var current = this._current;
- var startContainer = current, startOffset = 0, endContainer = current, endOffset = dom.getNodeLength(current);
-
- if (dom.isAncestorOf(current, this.sc, true)) {
- startContainer = this.sc;
- startOffset = this.so;
- }
- if (dom.isAncestorOf(current, this.ec, true)) {
- endContainer = this.ec;
- endOffset = this.eo;
+ root = getCommonAncestor(nodeA, nodeB);
+ if (!root) {
+ throw new Error("comparePoints error: nodes have no common ancestor");
}
- updateBoundaries(subRange, startContainer, startOffset, endContainer, endOffset);
- }
- return new RangeIterator(subRange, this.clonePartiallySelectedTextNodes);
- },
+ // Case 4: containers are siblings or descendants of siblings
+ childA = (nodeA === root) ? root : getClosestAncestorIn(nodeA, root, true);
+ childB = (nodeB === root) ? root : getClosestAncestorIn(nodeB, root, true);
- detach: function(detachRange) {
- if (detachRange) {
- this.range.detach();
+ if (childA === childB) {
+ // This shouldn't be possible
+ throw module.createError("comparePoints got to case 4 and childA and childB are the same!");
+ } else {
+ n = root.firstChild;
+ while (n) {
+ if (n === childA) {
+ return -1;
+ } else if (n === childB) {
+ return 1;
+ }
+ n = n.nextSibling;
+ }
+ }
}
- this.range = this._current = this._next = this._first = this._last = this.sc = this.so = this.ec = this.eo = null;
}
- };
-
- /*----------------------------------------------------------------------------------------------------------------*/
-
- // Exceptions
-
- /**
- * @constructor
- */
- function RangeException(codeName) {
- this.code = this[codeName];
- this.codeName = codeName;
- this.message = "RangeException: " + this.codeName;
- }
-
- RangeException.prototype = {
- BAD_BOUNDARYPOINTS_ERR: 1,
- INVALID_NODE_TYPE_ERR: 2
- };
- RangeException.prototype.toString = function() {
- return this.message;
- };
-
- /*----------------------------------------------------------------------------------------------------------------*/
-
- /**
- * Currently iterates through all nodes in the range on creation until I think of a decent way to do it
- * TODO: Look into making this a proper iterator, not requiring preloading everything first
- * @constructor
- */
- function RangeNodeIterator(range, nodeTypes, filter) {
- this.nodes = getNodesInRange(range, nodeTypes, filter);
- this._next = this.nodes[0];
- this._position = 0;
- }
+ /*----------------------------------------------------------------------------------------------------------------*/
- RangeNodeIterator.prototype = {
- _current: null,
+ // Test for IE's crash (IE 6/7) or exception (IE >= 8) when a reference to garbage-collected text node is queried
+ var crashyTextNodes = false;
- hasNext: function() {
- return !!this._next;
- },
-
- next: function() {
- this._current = this._next;
- this._next = this.nodes[ ++this._position ];
- return this._current;
- },
-
- detach: function() {
- this._current = this._next = this.nodes = null;
+ function isBrokenNode(node) {
+ var n;
+ try {
+ n = node.parentNode;
+ return false;
+ } catch (e) {
+ return true;
+ }
}
- };
- var beforeAfterNodeTypes = [1, 3, 4, 5, 7, 8, 10];
- var rootContainerNodeTypes = [2, 9, 11];
- var readonlyNodeTypes = [5, 6, 10, 12];
- var insertableNodeTypes = [1, 3, 4, 5, 7, 8, 10, 11];
- var surroundNodeTypes = [1, 3, 4, 5, 7, 8];
+ (function() {
+ var el = document.createElement("b");
+ el.innerHTML = "1";
+ var textNode = el.firstChild;
+ el.innerHTML = "<br />";
+ crashyTextNodes = isBrokenNode(textNode);
- function createAncestorFinder(nodeTypes) {
- return function(node, selfIsAncestor) {
- var t, n = selfIsAncestor ? node : node.parentNode;
- while (n) {
- t = n.nodeType;
- if (dom.arrayContains(nodeTypes, t)) {
- return n;
- }
- n = n.parentNode;
- }
- return null;
- };
- }
+ api.features.crashyTextNodes = crashyTextNodes;
+ })();
- var getRootContainer = dom.getRootContainer;
- var getDocumentOrFragmentContainer = createAncestorFinder( [9, 11] );
- var getReadonlyAncestor = createAncestorFinder(readonlyNodeTypes);
- var getDocTypeNotationEntityAncestor = createAncestorFinder( [6, 10, 12] );
+ /*----------------------------------------------------------------------------------------------------------------*/
- function assertNoDocTypeNotationEntityAncestor(node, allowSelf) {
- if (getDocTypeNotationEntityAncestor(node, allowSelf)) {
- throw new RangeException("INVALID_NODE_TYPE_ERR");
+ function inspectNode(node) {
+ if (!node) {
+ return "[No node]";
+ }
+ if (crashyTextNodes && isBrokenNode(node)) {
+ return "[Broken node]";
+ }
+ if (isCharacterDataNode(node)) {
+ return '"' + node.data + '"';
+ }
+ if (node.nodeType == 1) {
+ var idAttr = node.id ? ' id="' + node.id + '"' : "";
+ return "<" + node.nodeName + idAttr + ">[index:" + getNodeIndex(node) + ",length:" + node.childNodes.length + "][" + (node.innerHTML || "[innerHTML not supported]").slice(0, 25) + "]";
+ }
+ return node.nodeName;
}
- }
- function assertNotDetached(range) {
- if (!range.startContainer) {
- throw new DOMException("INVALID_STATE_ERR");
+ function fragmentFromNodeChildren(node) {
+ var fragment = getDocument(node).createDocumentFragment(), child;
+ while ( (child = node.firstChild) ) {
+ fragment.appendChild(child);
+ }
+ return fragment;
}
- }
- function assertValidNodeType(node, invalidTypes) {
- if (!dom.arrayContains(invalidTypes, node.nodeType)) {
- throw new RangeException("INVALID_NODE_TYPE_ERR");
+ var getComputedStyleProperty;
+ if (typeof window.getComputedStyle != UNDEF) {
+ getComputedStyleProperty = function(el, propName) {
+ return getWindow(el).getComputedStyle(el, null)[propName];
+ };
+ } else if (typeof document.documentElement.currentStyle != UNDEF) {
+ getComputedStyleProperty = function(el, propName) {
+ return el.currentStyle ? el.currentStyle[propName] : "";
+ };
+ } else {
+ module.fail("No means of obtaining computed style properties found");
}
- }
- function assertValidOffset(node, offset) {
- if (offset < 0 || offset > (dom.isCharacterDataNode(node) ? node.length : node.childNodes.length)) {
- throw new DOMException("INDEX_SIZE_ERR");
- }
- }
+ function createTestElement(doc, html, contentEditable) {
+ var body = getBody(doc);
+ var el = doc.createElement("div");
+ el.contentEditable = "" + !!contentEditable;
+ if (html) {
+ el.innerHTML = html;
+ }
- function assertSameDocumentOrFragment(node1, node2) {
- if (getDocumentOrFragmentContainer(node1, true) !== getDocumentOrFragmentContainer(node2, true)) {
- throw new DOMException("WRONG_DOCUMENT_ERR");
- }
- }
+ // Insert the test element at the start of the body to prevent scrolling to the bottom in iOS (issue #292)
+ var bodyFirstChild = body.firstChild;
+ if (bodyFirstChild) {
+ body.insertBefore(el, bodyFirstChild);
+ } else {
+ body.appendChild(el);
+ }
- function assertNodeNotReadOnly(node) {
- if (getReadonlyAncestor(node, true)) {
- throw new DOMException("NO_MODIFICATION_ALLOWED_ERR");
+ return el;
}
- }
- function assertNode(node, codeName) {
- if (!node) {
- throw new DOMException(codeName);
+ function removeNode(node) {
+ return node.parentNode.removeChild(node);
}
- }
-
- function isOrphan(node) {
- return !dom.arrayContains(rootContainerNodeTypes, node.nodeType) && !getDocumentOrFragmentContainer(node, true);
- }
-
- function isValidOffset(node, offset) {
- return offset <= (dom.isCharacterDataNode(node) ? node.length : node.childNodes.length);
- }
-
- function isRangeValid(range) {
- return (!!range.startContainer && !!range.endContainer
- && !isOrphan(range.startContainer)
- && !isOrphan(range.endContainer)
- && isValidOffset(range.startContainer, range.startOffset)
- && isValidOffset(range.endContainer, range.endOffset));
- }
- function assertRangeValid(range) {
- assertNotDetached(range);
- if (!isRangeValid(range)) {
- throw new Error("Range error: Range is no longer valid after DOM mutation (" + range.inspect() + ")");
+ function NodeIterator(root) {
+ this.root = root;
+ this._next = root;
}
- }
-
- /*----------------------------------------------------------------------------------------------------------------*/
-
- // Test the browser's innerHTML support to decide how to implement createContextualFragment
- var styleEl = document.createElement("style");
- var htmlParsingConforms = false;
- try {
- styleEl.innerHTML = "<b>x</b>";
- htmlParsingConforms = (styleEl.firstChild.nodeType == 3); // Opera incorrectly creates an element node
- } catch (e) {
- // IE 6 and 7 throw
- }
- api.features.htmlParsingConforms = htmlParsingConforms;
+ NodeIterator.prototype = {
+ _current: null,
- var createContextualFragment = htmlParsingConforms ?
+ hasNext: function() {
+ return !!this._next;
+ },
- // Implementation as per HTML parsing spec, trusting in the browser's implementation of innerHTML. See
- // discussion and base code for this implementation at issue 67.
- // Spec: http://html5.org/specs/dom-parsing.html#extensions-to-the-range-interface
- // Thanks to Aleks Williams.
- function(fragmentStr) {
- // "Let node the context object's start's node."
- var node = this.startContainer;
- var doc = dom.getDocument(node);
+ next: function() {
+ var n = this._current = this._next;
+ var child, next;
+ if (this._current) {
+ child = n.firstChild;
+ if (child) {
+ this._next = child;
+ } else {
+ next = null;
+ while ((n !== this.root) && !(next = n.nextSibling)) {
+ n = n.parentNode;
+ }
+ this._next = next;
+ }
+ }
+ return this._current;
+ },
- // "If the context object's start's node is null, raise an INVALID_STATE_ERR
- // exception and abort these steps."
- if (!node) {
- throw new DOMException("INVALID_STATE_ERR");
+ detach: function() {
+ this._current = this._next = this.root = null;
}
+ };
- // "Let element be as follows, depending on node's interface:"
- // Document, Document Fragment: null
- var el = null;
+ function createIterator(root) {
+ return new NodeIterator(root);
+ }
- // "Element: node"
- if (node.nodeType == 1) {
- el = node;
+ function DomPosition(node, offset) {
+ this.node = node;
+ this.offset = offset;
+ }
- // "Text, Comment: node's parentElement"
- } else if (dom.isCharacterDataNode(node)) {
- el = dom.parentElement(node);
- }
+ DomPosition.prototype = {
+ equals: function(pos) {
+ return !!pos && this.node === pos.node && this.offset == pos.offset;
+ },
- // "If either element is null or element's ownerDocument is an HTML document
- // and element's local name is "html" and element's namespace is the HTML
- // namespace"
- if (el === null || (
- el.nodeName == "HTML"
- && dom.isHtmlNamespace(dom.getDocument(el).documentElement)
- && dom.isHtmlNamespace(el)
- )) {
+ inspect: function() {
+ return "[DomPosition(" + inspectNode(this.node) + ":" + this.offset + ")]";
+ },
- // "let element be a new Element with "body" as its local name and the HTML
- // namespace as its namespace.""
- el = doc.createElement("body");
- } else {
- el = el.cloneNode(false);
+ toString: function() {
+ return this.inspect();
}
+ };
- // "If the node's document is an HTML document: Invoke the HTML fragment parsing algorithm."
- // "If the node's document is an XML document: Invoke the XML fragment parsing algorithm."
- // "In either case, the algorithm must be invoked with fragment as the input
- // and element as the context element."
- el.innerHTML = fragmentStr;
-
- // "If this raises an exception, then abort these steps. Otherwise, let new
- // children be the nodes returned."
-
- // "Let fragment be a new DocumentFragment."
- // "Append all new children to fragment."
- // "Return fragment."
- return dom.fragmentFromNodeChildren(el);
- } :
+ function DOMException(codeName) {
+ this.code = this[codeName];
+ this.codeName = codeName;
+ this.message = "DOMException: " + this.codeName;
+ }
+
+ DOMException.prototype = {
+ INDEX_SIZE_ERR: 1,
+ HIERARCHY_REQUEST_ERR: 3,
+ WRONG_DOCUMENT_ERR: 4,
+ NO_MODIFICATION_ALLOWED_ERR: 7,
+ NOT_FOUND_ERR: 8,
+ NOT_SUPPORTED_ERR: 9,
+ INVALID_STATE_ERR: 11,
+ INVALID_NODE_TYPE_ERR: 24
+ };
- // In this case, innerHTML cannot be trusted, so fall back to a simpler, non-conformant implementation that
- // previous versions of Rangy used (with the exception of using a body element rather than a div)
- function(fragmentStr) {
- assertNotDetached(this);
- var doc = getRangeDocument(this);
- var el = doc.createElement("body");
- el.innerHTML = fragmentStr;
+ DOMException.prototype.toString = function() {
+ return this.message;
+ };
- return dom.fragmentFromNodeChildren(el);
+ api.dom = {
+ arrayContains: arrayContains,
+ isHtmlNamespace: isHtmlNamespace,
+ parentElement: parentElement,
+ getNodeIndex: getNodeIndex,
+ getNodeLength: getNodeLength,
+ getCommonAncestor: getCommonAncestor,
+ isAncestorOf: isAncestorOf,
+ isOrIsAncestorOf: isOrIsAncestorOf,
+ getClosestAncestorIn: getClosestAncestorIn,
+ isCharacterDataNode: isCharacterDataNode,
+ isTextOrCommentNode: isTextOrCommentNode,
+ insertAfter: insertAfter,
+ splitDataNode: splitDataNode,
+ getDocument: getDocument,
+ getWindow: getWindow,
+ getIframeWindow: getIframeWindow,
+ getIframeDocument: getIframeDocument,
+ getBody: getBody,
+ isWindow: isWindow,
+ getContentDocument: getContentDocument,
+ getRootContainer: getRootContainer,
+ comparePoints: comparePoints,
+ isBrokenNode: isBrokenNode,
+ inspectNode: inspectNode,
+ getComputedStyleProperty: getComputedStyleProperty,
+ createTestElement: createTestElement,
+ removeNode: removeNode,
+ fragmentFromNodeChildren: fragmentFromNodeChildren,
+ createIterator: createIterator,
+ DomPosition: DomPosition
};
+ api.DOMException = DOMException;
+ });
+
/*----------------------------------------------------------------------------------------------------------------*/
- var rangeProperties = ["startContainer", "startOffset", "endContainer", "endOffset", "collapsed",
- "commonAncestorContainer"];
+ // Pure JavaScript implementation of DOM Range
+ api.createCoreModule("DomRange", ["DomUtil"], function(api, module) {
+ var dom = api.dom;
+ var util = api.util;
+ var DomPosition = dom.DomPosition;
+ var DOMException = api.DOMException;
- var s2s = 0, s2e = 1, e2e = 2, e2s = 3;
- var n_b = 0, n_a = 1, n_b_a = 2, n_i = 3;
+ var isCharacterDataNode = dom.isCharacterDataNode;
+ var getNodeIndex = dom.getNodeIndex;
+ var isOrIsAncestorOf = dom.isOrIsAncestorOf;
+ var getDocument = dom.getDocument;
+ var comparePoints = dom.comparePoints;
+ var splitDataNode = dom.splitDataNode;
+ var getClosestAncestorIn = dom.getClosestAncestorIn;
+ var getNodeLength = dom.getNodeLength;
+ var arrayContains = dom.arrayContains;
+ var getRootContainer = dom.getRootContainer;
+ var crashyTextNodes = api.features.crashyTextNodes;
- function RangePrototype() {}
+ var removeNode = dom.removeNode;
- RangePrototype.prototype = {
- attachListener: function(type, listener) {
- this._listeners[type].push(listener);
- },
+ /*----------------------------------------------------------------------------------------------------------------*/
- compareBoundaryPoints: function(how, range) {
- assertRangeValid(this);
- assertSameDocumentOrFragment(this.startContainer, range.startContainer);
-
- var nodeA, offsetA, nodeB, offsetB;
- var prefixA = (how == e2s || how == s2s) ? "start" : "end";
- var prefixB = (how == s2e || how == s2s) ? "start" : "end";
- nodeA = this[prefixA + "Container"];
- offsetA = this[prefixA + "Offset"];
- nodeB = range[prefixB + "Container"];
- offsetB = range[prefixB + "Offset"];
- return dom.comparePoints(nodeA, offsetA, nodeB, offsetB);
- },
+ // Utility functions
- insertNode: function(node) {
- assertRangeValid(this);
- assertValidNodeType(node, insertableNodeTypes);
- assertNodeNotReadOnly(this.startContainer);
+ function isNonTextPartiallySelected(node, range) {
+ return (node.nodeType != 3) &&
+ (isOrIsAncestorOf(node, range.startContainer) || isOrIsAncestorOf(node, range.endContainer));
+ }
- if (dom.isAncestorOf(node, this.startContainer, true)) {
- throw new DOMException("HIERARCHY_REQUEST_ERR");
- }
+ function getRangeDocument(range) {
+ return range.document || getDocument(range.startContainer);
+ }
- // No check for whether the container of the start of the Range is of a type that does not allow
- // children of the type of node: the browser's DOM implementation should do this for us when we attempt
- // to add the node
+ function getRangeRoot(range) {
+ return getRootContainer(range.startContainer);
+ }
- var firstNodeInserted = insertNodeAtPosition(node, this.startContainer, this.startOffset);
- this.setStartBefore(firstNodeInserted);
- },
+ function getBoundaryBeforeNode(node) {
+ return new DomPosition(node.parentNode, getNodeIndex(node));
+ }
- cloneContents: function() {
- assertRangeValid(this);
+ function getBoundaryAfterNode(node) {
+ return new DomPosition(node.parentNode, getNodeIndex(node) + 1);
+ }
- var clone, frag;
- if (this.collapsed) {
- return getRangeDocument(this).createDocumentFragment();
- } else {
- if (this.startContainer === this.endContainer && dom.isCharacterDataNode(this.startContainer)) {
- clone = this.startContainer.cloneNode(true);
- clone.data = clone.data.slice(this.startOffset, this.endOffset);
- frag = getRangeDocument(this).createDocumentFragment();
- frag.appendChild(clone);
- return frag;
+ function insertNodeAtPosition(node, n, o) {
+ var firstNodeInserted = node.nodeType == 11 ? node.firstChild : node;
+ if (isCharacterDataNode(n)) {
+ if (o == n.length) {
+ dom.insertAfter(node, n);
} else {
- var iterator = new RangeIterator(this, true);
- clone = cloneSubtree(iterator);
- iterator.detach();
+ n.parentNode.insertBefore(node, o == 0 ? n : splitDataNode(n, o));
}
- return clone;
+ } else if (o >= n.childNodes.length) {
+ n.appendChild(node);
+ } else {
+ n.insertBefore(node, n.childNodes[o]);
}
- },
-
- canSurroundContents: function() {
- assertRangeValid(this);
- assertNodeNotReadOnly(this.startContainer);
- assertNodeNotReadOnly(this.endContainer);
-
- // Check if the contents can be surrounded. Specifically, this means whether the range partially selects
- // no non-text nodes.
- var iterator = new RangeIterator(this, true);
- var boundariesInvalid = (iterator._first && (isNonTextPartiallySelected(iterator._first, this)) ||
- (iterator._last && isNonTextPartiallySelected(iterator._last, this)));
- iterator.detach();
- return !boundariesInvalid;
- },
+ return firstNodeInserted;
+ }
- surroundContents: function(node) {
- assertValidNodeType(node, surroundNodeTypes);
+ function rangesIntersect(rangeA, rangeB, touchingIsIntersecting) {
+ assertRangeValid(rangeA);
+ assertRangeValid(rangeB);
- if (!this.canSurroundContents()) {
- throw new RangeException("BAD_BOUNDARYPOINTS_ERR");
+ if (getRangeDocument(rangeB) != getRangeDocument(rangeA)) {
+ throw new DOMException("WRONG_DOCUMENT_ERR");
}
- // Extract the contents
- var content = this.extractContents();
+ var startComparison = comparePoints(rangeA.startContainer, rangeA.startOffset, rangeB.endContainer, rangeB.endOffset),
+ endComparison = comparePoints(rangeA.endContainer, rangeA.endOffset, rangeB.startContainer, rangeB.startOffset);
- // Clear the children of the node
- if (node.hasChildNodes()) {
- while (node.lastChild) {
- node.removeChild(node.lastChild);
- }
- }
-
- // Insert the new node and add the extracted contents
- insertNodeAtPosition(node, this.startContainer, this.startOffset);
- node.appendChild(content);
+ return touchingIsIntersecting ? startComparison <= 0 && endComparison >= 0 : startComparison < 0 && endComparison > 0;
+ }
- this.selectNode(node);
- },
+ function cloneSubtree(iterator) {
+ var partiallySelected;
+ for (var node, frag = getRangeDocument(iterator.range).createDocumentFragment(), subIterator; node = iterator.next(); ) {
+ partiallySelected = iterator.isPartiallySelectedSubtree();
+ node = node.cloneNode(!partiallySelected);
+ if (partiallySelected) {
+ subIterator = iterator.getSubtreeIterator();
+ node.appendChild(cloneSubtree(subIterator));
+ subIterator.detach();
+ }
- cloneRange: function() {
- assertRangeValid(this);
- var range = new Range(getRangeDocument(this));
- var i = rangeProperties.length, prop;
- while (i--) {
- prop = rangeProperties[i];
- range[prop] = this[prop];
+ if (node.nodeType == 10) { // DocumentType
+ throw new DOMException("HIERARCHY_REQUEST_ERR");
+ }
+ frag.appendChild(node);
}
- return range;
- },
-
- toString: function() {
- assertRangeValid(this);
- var sc = this.startContainer;
- if (sc === this.endContainer && dom.isCharacterDataNode(sc)) {
- return (sc.nodeType == 3 || sc.nodeType == 4) ? sc.data.slice(this.startOffset, this.endOffset) : "";
- } else {
- var textBits = [], iterator = new RangeIterator(this, true);
-
- iterateSubtree(iterator, function(node) {
- // Accept only text or CDATA nodes, not comments
+ return frag;
+ }
- if (node.nodeType == 3 || node.nodeType == 4) {
- textBits.push(node.data);
+ function iterateSubtree(rangeIterator, func, iteratorState) {
+ var it, n;
+ iteratorState = iteratorState || { stop: false };
+ for (var node, subRangeIterator; node = rangeIterator.next(); ) {
+ if (rangeIterator.isPartiallySelectedSubtree()) {
+ if (func(node) === false) {
+ iteratorState.stop = true;
+ return;
+ } else {
+ // The node is partially selected by the Range, so we can use a new RangeIterator on the portion of
+ // the node selected by the Range.
+ subRangeIterator = rangeIterator.getSubtreeIterator();
+ iterateSubtree(subRangeIterator, func, iteratorState);
+ subRangeIterator.detach();
+ if (iteratorState.stop) {
+ return;
+ }
}
- });
- iterator.detach();
- return textBits.join("");
+ } else {
+ // The whole node is selected, so we can use efficient DOM iteration to iterate over the node and its
+ // descendants
+ it = dom.createIterator(node);
+ while ( (n = it.next()) ) {
+ if (func(n) === false) {
+ iteratorState.stop = true;
+ return;
+ }
+ }
+ }
}
- },
-
- // The methods below are all non-standard. The following batch were introduced by Mozilla but have since
- // been removed from Mozilla.
-
- compareNode: function(node) {
- assertRangeValid(this);
-
- var parent = node.parentNode;
- var nodeIndex = dom.getNodeIndex(node);
+ }
- if (!parent) {
- throw new DOMException("NOT_FOUND_ERR");
+ function deleteSubtree(iterator) {
+ var subIterator;
+ while (iterator.next()) {
+ if (iterator.isPartiallySelectedSubtree()) {
+ subIterator = iterator.getSubtreeIterator();
+ deleteSubtree(subIterator);
+ subIterator.detach();
+ } else {
+ iterator.remove();
+ }
}
+ }
- var startComparison = this.comparePoint(parent, nodeIndex),
- endComparison = this.comparePoint(parent, nodeIndex + 1);
+ function extractSubtree(iterator) {
+ for (var node, frag = getRangeDocument(iterator.range).createDocumentFragment(), subIterator; node = iterator.next(); ) {
- if (startComparison < 0) { // Node starts before
- return (endComparison > 0) ? n_b_a : n_b;
- } else {
- return (endComparison > 0) ? n_a : n_i;
+ if (iterator.isPartiallySelectedSubtree()) {
+ node = node.cloneNode(false);
+ subIterator = iterator.getSubtreeIterator();
+ node.appendChild(extractSubtree(subIterator));
+ subIterator.detach();
+ } else {
+ iterator.remove();
+ }
+ if (node.nodeType == 10) { // DocumentType
+ throw new DOMException("HIERARCHY_REQUEST_ERR");
+ }
+ frag.appendChild(node);
}
- },
-
- comparePoint: function(node, offset) {
- assertRangeValid(this);
- assertNode(node, "HIERARCHY_REQUEST_ERR");
- assertSameDocumentOrFragment(node, this.startContainer);
+ return frag;
+ }
- if (dom.comparePoints(node, offset, this.startContainer, this.startOffset) < 0) {
- return -1;
- } else if (dom.comparePoints(node, offset, this.endContainer, this.endOffset) > 0) {
- return 1;
+ function getNodesInRange(range, nodeTypes, filter) {
+ var filterNodeTypes = !!(nodeTypes && nodeTypes.length), regex;
+ var filterExists = !!filter;
+ if (filterNodeTypes) {
+ regex = new RegExp("^(" + nodeTypes.join("|") + ")$");
}
- return 0;
- },
- createContextualFragment: createContextualFragment,
-
- toHtml: function() {
- assertRangeValid(this);
- var container = getRangeDocument(this).createElement("div");
- container.appendChild(this.cloneContents());
- return container.innerHTML;
- },
-
- // touchingIsIntersecting determines whether this method considers a node that borders a range intersects
- // with it (as in WebKit) or not (as in Gecko pre-1.9, and the default)
- intersectsNode: function(node, touchingIsIntersecting) {
- assertRangeValid(this);
- assertNode(node, "NOT_FOUND_ERR");
- if (dom.getDocument(node) !== getRangeDocument(this)) {
- return false;
- }
+ var nodes = [];
+ iterateSubtree(new RangeIterator(range, false), function(node) {
+ if (filterNodeTypes && !regex.test(node.nodeType)) {
+ return;
+ }
+ if (filterExists && !filter(node)) {
+ return;
+ }
+ // Don't include a boundary container if it is a character data node and the range does not contain any
+ // of its character data. See issue 190.
+ var sc = range.startContainer;
+ if (node == sc && isCharacterDataNode(sc) && range.startOffset == sc.length) {
+ return;
+ }
- var parent = node.parentNode, offset = dom.getNodeIndex(node);
- assertNode(parent, "NOT_FOUND_ERR");
+ var ec = range.endContainer;
+ if (node == ec && isCharacterDataNode(ec) && range.endOffset == 0) {
+ return;
+ }
- var startComparison = dom.comparePoints(parent, offset, this.endContainer, this.endOffset),
- endComparison = dom.comparePoints(parent, offset + 1, this.startContainer, this.startOffset);
+ nodes.push(node);
+ });
+ return nodes;
+ }
- return touchingIsIntersecting ? startComparison <= 0 && endComparison >= 0 : startComparison < 0 && endComparison > 0;
- },
+ function inspect(range) {
+ var name = (typeof range.getName == "undefined") ? "Range" : range.getName();
+ return "[" + name + "(" + dom.inspectNode(range.startContainer) + ":" + range.startOffset + ", " +
+ dom.inspectNode(range.endContainer) + ":" + range.endOffset + ")]";
+ }
+ /*----------------------------------------------------------------------------------------------------------------*/
- isPointInRange: function(node, offset) {
- assertRangeValid(this);
- assertNode(node, "HIERARCHY_REQUEST_ERR");
- assertSameDocumentOrFragment(node, this.startContainer);
+ // RangeIterator code partially borrows from IERange by Tim Ryan (http://github.com/timcameronryan/IERange)
- return (dom.comparePoints(node, offset, this.startContainer, this.startOffset) >= 0) &&
- (dom.comparePoints(node, offset, this.endContainer, this.endOffset) <= 0);
- },
+ function RangeIterator(range, clonePartiallySelectedTextNodes) {
+ this.range = range;
+ this.clonePartiallySelectedTextNodes = clonePartiallySelectedTextNodes;
- // The methods below are non-standard and invented by me.
- // Sharing a boundary start-to-end or end-to-start does not count as intersection.
- intersectsRange: function(range, touchingIsIntersecting) {
- assertRangeValid(this);
+ if (!range.collapsed) {
+ this.sc = range.startContainer;
+ this.so = range.startOffset;
+ this.ec = range.endContainer;
+ this.eo = range.endOffset;
+ var root = range.commonAncestorContainer;
- if (getRangeDocument(range) != getRangeDocument(this)) {
- throw new DOMException("WRONG_DOCUMENT_ERR");
+ if (this.sc === this.ec && isCharacterDataNode(this.sc)) {
+ this.isSingleCharacterDataNode = true;
+ this._first = this._last = this._next = this.sc;
+ } else {
+ this._first = this._next = (this.sc === root && !isCharacterDataNode(this.sc)) ?
+ this.sc.childNodes[this.so] : getClosestAncestorIn(this.sc, root, true);
+ this._last = (this.ec === root && !isCharacterDataNode(this.ec)) ?
+ this.ec.childNodes[this.eo - 1] : getClosestAncestorIn(this.ec, root, true);
+ }
}
+ }
- var startComparison = dom.comparePoints(this.startContainer, this.startOffset, range.endContainer, range.endOffset),
- endComparison = dom.comparePoints(this.endContainer, this.endOffset, range.startContainer, range.startOffset);
+ RangeIterator.prototype = {
+ _current: null,
+ _next: null,
+ _first: null,
+ _last: null,
+ isSingleCharacterDataNode: false,
- return touchingIsIntersecting ? startComparison <= 0 && endComparison >= 0 : startComparison < 0 && endComparison > 0;
- },
+ reset: function() {
+ this._current = null;
+ this._next = this._first;
+ },
- intersection: function(range) {
- if (this.intersectsRange(range)) {
- var startComparison = dom.comparePoints(this.startContainer, this.startOffset, range.startContainer, range.startOffset),
- endComparison = dom.comparePoints(this.endContainer, this.endOffset, range.endContainer, range.endOffset);
+ hasNext: function() {
+ return !!this._next;
+ },
- var intersectionRange = this.cloneRange();
+ next: function() {
+ // Move to next node
+ var current = this._current = this._next;
+ if (current) {
+ this._next = (current !== this._last) ? current.nextSibling : null;
- if (startComparison == -1) {
- intersectionRange.setStart(range.startContainer, range.startOffset);
- }
- if (endComparison == 1) {
- intersectionRange.setEnd(range.endContainer, range.endOffset);
+ // Check for partially selected text nodes
+ if (isCharacterDataNode(current) && this.clonePartiallySelectedTextNodes) {
+ if (current === this.ec) {
+ (current = current.cloneNode(true)).deleteData(this.eo, current.length - this.eo);
+ }
+ if (this._current === this.sc) {
+ (current = current.cloneNode(true)).deleteData(0, this.so);
+ }
+ }
}
- return intersectionRange;
- }
- return null;
- },
- union: function(range) {
- if (this.intersectsRange(range, true)) {
- var unionRange = this.cloneRange();
- if (dom.comparePoints(range.startContainer, range.startOffset, this.startContainer, this.startOffset) == -1) {
- unionRange.setStart(range.startContainer, range.startOffset);
- }
- if (dom.comparePoints(range.endContainer, range.endOffset, this.endContainer, this.endOffset) == 1) {
- unionRange.setEnd(range.endContainer, range.endOffset);
+ return current;
+ },
+
+ remove: function() {
+ var current = this._current, start, end;
+
+ if (isCharacterDataNode(current) && (current === this.sc || current === this.ec)) {
+ start = (current === this.sc) ? this.so : 0;
+ end = (current === this.ec) ? this.eo : current.length;
+ if (start != end) {
+ current.deleteData(start, end - start);
+ }
+ } else {
+ if (current.parentNode) {
+ removeNode(current);
+ } else {
+ }
}
- return unionRange;
- } else {
- throw new RangeException("Ranges do not intersect");
- }
- },
+ },
- containsNode: function(node, allowPartial) {
- if (allowPartial) {
- return this.intersectsNode(node, false);
- } else {
- return this.compareNode(node) == n_i;
- }
- },
+ // Checks if the current node is partially selected
+ isPartiallySelectedSubtree: function() {
+ var current = this._current;
+ return isNonTextPartiallySelected(current, this.range);
+ },
- containsNodeContents: function(node) {
- return this.comparePoint(node, 0) >= 0 && this.comparePoint(node, dom.getNodeLength(node)) <= 0;
- },
+ getSubtreeIterator: function() {
+ var subRange;
+ if (this.isSingleCharacterDataNode) {
+ subRange = this.range.cloneRange();
+ subRange.collapse(false);
+ } else {
+ subRange = new Range(getRangeDocument(this.range));
+ var current = this._current;
+ var startContainer = current, startOffset = 0, endContainer = current, endOffset = getNodeLength(current);
- containsRange: function(range) {
- return this.intersection(range).equals(range);
- },
+ if (isOrIsAncestorOf(current, this.sc)) {
+ startContainer = this.sc;
+ startOffset = this.so;
+ }
+ if (isOrIsAncestorOf(current, this.ec)) {
+ endContainer = this.ec;
+ endOffset = this.eo;
+ }
- containsNodeText: function(node) {
- var nodeRange = this.cloneRange();
- nodeRange.selectNode(node);
- var textNodes = nodeRange.getNodes([3]);
- if (textNodes.length > 0) {
- nodeRange.setStart(textNodes[0], 0);
- var lastTextNode = textNodes.pop();
- nodeRange.setEnd(lastTextNode, lastTextNode.length);
- var contains = this.containsRange(nodeRange);
- nodeRange.detach();
- return contains;
- } else {
- return this.containsNodeContents(node);
- }
- },
+ updateBoundaries(subRange, startContainer, startOffset, endContainer, endOffset);
+ }
+ return new RangeIterator(subRange, this.clonePartiallySelectedTextNodes);
+ },
- createNodeIterator: function(nodeTypes, filter) {
- assertRangeValid(this);
- return new RangeNodeIterator(this, nodeTypes, filter);
- },
+ detach: function() {
+ this.range = this._current = this._next = this._first = this._last = this.sc = this.so = this.ec = this.eo = null;
+ }
+ };
- getNodes: function(nodeTypes, filter) {
- assertRangeValid(this);
- return getNodesInRange(this, nodeTypes, filter);
- },
+ /*----------------------------------------------------------------------------------------------------------------*/
- getDocument: function() {
- return getRangeDocument(this);
- },
+ var beforeAfterNodeTypes = [1, 3, 4, 5, 7, 8, 10];
+ var rootContainerNodeTypes = [2, 9, 11];
+ var readonlyNodeTypes = [5, 6, 10, 12];
+ var insertableNodeTypes = [1, 3, 4, 5, 7, 8, 10, 11];
+ var surroundNodeTypes = [1, 3, 4, 5, 7, 8];
- collapseBefore: function(node) {
- assertNotDetached(this);
+ function createAncestorFinder(nodeTypes) {
+ return function(node, selfIsAncestor) {
+ var t, n = selfIsAncestor ? node : node.parentNode;
+ while (n) {
+ t = n.nodeType;
+ if (arrayContains(nodeTypes, t)) {
+ return n;
+ }
+ n = n.parentNode;
+ }
+ return null;
+ };
+ }
- this.setEndBefore(node);
- this.collapse(false);
- },
+ var getDocumentOrFragmentContainer = createAncestorFinder( [9, 11] );
+ var getReadonlyAncestor = createAncestorFinder(readonlyNodeTypes);
+ var getDocTypeNotationEntityAncestor = createAncestorFinder( [6, 10, 12] );
- collapseAfter: function(node) {
- assertNotDetached(this);
+ function assertNoDocTypeNotationEntityAncestor(node, allowSelf) {
+ if (getDocTypeNotationEntityAncestor(node, allowSelf)) {
+ throw new DOMException("INVALID_NODE_TYPE_ERR");
+ }
+ }
- this.setStartAfter(node);
- this.collapse(true);
- },
+ function assertValidNodeType(node, invalidTypes) {
+ if (!arrayContains(invalidTypes, node.nodeType)) {
+ throw new DOMException("INVALID_NODE_TYPE_ERR");
+ }
+ }
- getName: function() {
- return "DomRange";
- },
+ function assertValidOffset(node, offset) {
+ if (offset < 0 || offset > (isCharacterDataNode(node) ? node.length : node.childNodes.length)) {
+ throw new DOMException("INDEX_SIZE_ERR");
+ }
+ }
- equals: function(range) {
- return Range.rangesEqual(this, range);
- },
+ function assertSameDocumentOrFragment(node1, node2) {
+ if (getDocumentOrFragmentContainer(node1, true) !== getDocumentOrFragmentContainer(node2, true)) {
+ throw new DOMException("WRONG_DOCUMENT_ERR");
+ }
+ }
- isValid: function() {
- return isRangeValid(this);
- },
+ function assertNodeNotReadOnly(node) {
+ if (getReadonlyAncestor(node, true)) {
+ throw new DOMException("NO_MODIFICATION_ALLOWED_ERR");
+ }
+ }
- inspect: function() {
- return inspect(this);
+ function assertNode(node, codeName) {
+ if (!node) {
+ throw new DOMException(codeName);
+ }
}
- };
- function copyComparisonConstantsToObject(obj) {
- obj.START_TO_START = s2s;
- obj.START_TO_END = s2e;
- obj.END_TO_END = e2e;
- obj.END_TO_START = e2s;
+ function isValidOffset(node, offset) {
+ return offset <= (isCharacterDataNode(node) ? node.length : node.childNodes.length);
+ }
- obj.NODE_BEFORE = n_b;
- obj.NODE_AFTER = n_a;
- obj.NODE_BEFORE_AND_AFTER = n_b_a;
- obj.NODE_INSIDE = n_i;
- }
+ function isRangeValid(range) {
+ return (!!range.startContainer && !!range.endContainer &&
+ !(crashyTextNodes && (dom.isBrokenNode(range.startContainer) || dom.isBrokenNode(range.endContainer))) &&
+ getRootContainer(range.startContainer) == getRootContainer(range.endContainer) &&
+ isValidOffset(range.startContainer, range.startOffset) &&
+ isValidOffset(range.endContainer, range.endOffset));
+ }
- function copyComparisonConstants(constructor) {
- copyComparisonConstantsToObject(constructor);
- copyComparisonConstantsToObject(constructor.prototype);
- }
+ function assertRangeValid(range) {
+ if (!isRangeValid(range)) {
+ throw new Error("Range error: Range is not valid. This usually happens after DOM mutation. Range: (" + range.inspect() + ")");
+ }
+ }
- function createRangeContentRemover(remover, boundaryUpdater) {
- return function() {
- assertRangeValid(this);
+ /*----------------------------------------------------------------------------------------------------------------*/
- var sc = this.startContainer, so = this.startOffset, root = this.commonAncestorContainer;
+ // Test the browser's innerHTML support to decide how to implement createContextualFragment
+ var styleEl = document.createElement("style");
+ var htmlParsingConforms = false;
+ try {
+ styleEl.innerHTML = "<b>x</b>";
+ htmlParsingConforms = (styleEl.firstChild.nodeType == 3); // Opera incorrectly creates an element node
+ } catch (e) {
+ // IE 6 and 7 throw
+ }
- var iterator = new RangeIterator(this, true);
+ api.features.htmlParsingConforms = htmlParsingConforms;
- // Work out where to position the range after content removal
- var node, boundary;
- if (sc !== root) {
- node = dom.getClosestAncestorIn(sc, root, true);
- boundary = getBoundaryAfterNode(node);
- sc = boundary.node;
- so = boundary.offset;
- }
+ var createContextualFragment = htmlParsingConforms ?
- // Check none of the range is read-only
- iterateSubtree(iterator, assertNodeNotReadOnly);
+ // Implementation as per HTML parsing spec, trusting in the browser's implementation of innerHTML. See
+ // discussion and base code for this implementation at issue 67.
+ // Spec: http://html5.org/specs/dom-parsing.html#extensions-to-the-range-interface
+ // Thanks to Aleks Williams.
+ function(fragmentStr) {
+ // "Let node the context object's start's node."
+ var node = this.startContainer;
+ var doc = getDocument(node);
- iterator.reset();
+ // "If the context object's start's node is null, raise an INVALID_STATE_ERR
+ // exception and abort these steps."
+ if (!node) {
+ throw new DOMException("INVALID_STATE_ERR");
+ }
- // Remove the content
- var returnValue = remover(iterator);
- iterator.detach();
+ // "Let element be as follows, depending on node's interface:"
+ // Document, Document Fragment: null
+ var el = null;
- // Move to the new position
- boundaryUpdater(this, sc, so, sc, so);
+ // "Element: node"
+ if (node.nodeType == 1) {
+ el = node;
- return returnValue;
- };
- }
+ // "Text, Comment: node's parentElement"
+ } else if (isCharacterDataNode(node)) {
+ el = dom.parentElement(node);
+ }
- function createPrototypeRange(constructor, boundaryUpdater, detacher) {
- function createBeforeAfterNodeSetter(isBefore, isStart) {
- return function(node) {
- assertNotDetached(this);
- assertValidNodeType(node, beforeAfterNodeTypes);
- assertValidNodeType(getRootContainer(node), rootContainerNodeTypes);
+ // "If either element is null or element's ownerDocument is an HTML document
+ // and element's local name is "html" and element's namespace is the HTML
+ // namespace"
+ if (el === null || (
+ el.nodeName == "HTML" &&
+ dom.isHtmlNamespace(getDocument(el).documentElement) &&
+ dom.isHtmlNamespace(el)
+ )) {
+
+ // "let element be a new Element with "body" as its local name and the HTML
+ // namespace as its namespace.""
+ el = doc.createElement("body");
+ } else {
+ el = el.cloneNode(false);
+ }
- var boundary = (isBefore ? getBoundaryBeforeNode : getBoundaryAfterNode)(node);
- (isStart ? setRangeStart : setRangeEnd)(this, boundary.node, boundary.offset);
+ // "If the node's document is an HTML document: Invoke the HTML fragment parsing algorithm."
+ // "If the node's document is an XML document: Invoke the XML fragment parsing algorithm."
+ // "In either case, the algorithm must be invoked with fragment as the input
+ // and element as the context element."
+ el.innerHTML = fragmentStr;
+
+ // "If this raises an exception, then abort these steps. Otherwise, let new
+ // children be the nodes returned."
+
+ // "Let fragment be a new DocumentFragment."
+ // "Append all new children to fragment."
+ // "Return fragment."
+ return dom.fragmentFromNodeChildren(el);
+ } :
+
+ // In this case, innerHTML cannot be trusted, so fall back to a simpler, non-conformant implementation that
+ // previous versions of Rangy used (with the exception of using a body element rather than a div)
+ function(fragmentStr) {
+ var doc = getRangeDocument(this);
+ var el = doc.createElement("body");
+ el.innerHTML = fragmentStr;
+
+ return dom.fragmentFromNodeChildren(el);
};
- }
- function setRangeStart(range, node, offset) {
- var ec = range.endContainer, eo = range.endOffset;
- if (node !== range.startContainer || offset !== range.startOffset) {
- // Check the root containers of the range and the new boundary, and also check whether the new boundary
- // is after the current end. In either case, collapse the range to the new position
- if (getRootContainer(node) != getRootContainer(ec) || dom.comparePoints(node, offset, ec, eo) == 1) {
- ec = node;
- eo = offset;
- }
- boundaryUpdater(range, node, offset, ec, eo);
+ function splitRangeBoundaries(range, positionsToPreserve) {
+ assertRangeValid(range);
+
+ var sc = range.startContainer, so = range.startOffset, ec = range.endContainer, eo = range.endOffset;
+ var startEndSame = (sc === ec);
+
+ if (isCharacterDataNode(ec) && eo > 0 && eo < ec.length) {
+ splitDataNode(ec, eo, positionsToPreserve);
}
- }
- function setRangeEnd(range, node, offset) {
- var sc = range.startContainer, so = range.startOffset;
- if (node !== range.endContainer || offset !== range.endOffset) {
- // Check the root containers of the range and the new boundary, and also check whether the new boundary
- // is after the current end. In either case, collapse the range to the new position
- if (getRootContainer(node) != getRootContainer(sc) || dom.comparePoints(node, offset, sc, so) == -1) {
- sc = node;
- so = offset;
+ if (isCharacterDataNode(sc) && so > 0 && so < sc.length) {
+ sc = splitDataNode(sc, so, positionsToPreserve);
+ if (startEndSame) {
+ eo -= so;
+ ec = sc;
+ } else if (ec == sc.parentNode && eo >= getNodeIndex(sc)) {
+ eo++;
}
- boundaryUpdater(range, sc, so, node, offset);
+ so = 0;
}
+ range.setStartAndEnd(sc, so, ec, eo);
}
- function setRangeStartAndEnd(range, node, offset) {
- if (node !== range.startContainer || offset !== range.startOffset || node !== range.endContainer || offset !== range.endOffset) {
- boundaryUpdater(range, node, offset, node, offset);
- }
+ function rangeToHtml(range) {
+ assertRangeValid(range);
+ var container = range.commonAncestorContainer.parentNode.cloneNode(false);
+ container.appendChild( range.cloneContents() );
+ return container.innerHTML;
}
- constructor.prototype = new RangePrototype();
-
- api.util.extend(constructor.prototype, {
- setStart: function(node, offset) {
- assertNotDetached(this);
- assertNoDocTypeNotationEntityAncestor(node, true);
- assertValidOffset(node, offset);
+ /*----------------------------------------------------------------------------------------------------------------*/
- setRangeStart(this, node, offset);
- },
+ var rangeProperties = ["startContainer", "startOffset", "endContainer", "endOffset", "collapsed",
+ "commonAncestorContainer"];
- setEnd: function(node, offset) {
- assertNotDetached(this);
- assertNoDocTypeNotationEntityAncestor(node, true);
- assertValidOffset(node, offset);
+ var s2s = 0, s2e = 1, e2e = 2, e2s = 3;
+ var n_b = 0, n_a = 1, n_b_a = 2, n_i = 3;
- setRangeEnd(this, node, offset);
+ util.extend(api.rangePrototype, {
+ compareBoundaryPoints: function(how, range) {
+ assertRangeValid(this);
+ assertSameDocumentOrFragment(this.startContainer, range.startContainer);
+
+ var nodeA, offsetA, nodeB, offsetB;
+ var prefixA = (how == e2s || how == s2s) ? "start" : "end";
+ var prefixB = (how == s2e || how == s2s) ? "start" : "end";
+ nodeA = this[prefixA + "Container"];
+ offsetA = this[prefixA + "Offset"];
+ nodeB = range[prefixB + "Container"];
+ offsetB = range[prefixB + "Offset"];
+ return comparePoints(nodeA, offsetA, nodeB, offsetB);
},
- setStartBefore: createBeforeAfterNodeSetter(true, true),
- setStartAfter: createBeforeAfterNodeSetter(false, true),
- setEndBefore: createBeforeAfterNodeSetter(true, false),
- setEndAfter: createBeforeAfterNodeSetter(false, false),
-
- collapse: function(isStart) {
+ insertNode: function(node) {
assertRangeValid(this);
- if (isStart) {
- boundaryUpdater(this, this.startContainer, this.startOffset, this.startContainer, this.startOffset);
- } else {
- boundaryUpdater(this, this.endContainer, this.endOffset, this.endContainer, this.endOffset);
+ assertValidNodeType(node, insertableNodeTypes);
+ assertNodeNotReadOnly(this.startContainer);
+
+ if (isOrIsAncestorOf(node, this.startContainer)) {
+ throw new DOMException("HIERARCHY_REQUEST_ERR");
}
- },
- selectNodeContents: function(node) {
- // This doesn't seem well specified: the spec talks only about selecting the node's contents, which
- // could be taken to mean only its children. However, browsers implement this the same as selectNode for
- // text nodes, so I shall do likewise
- assertNotDetached(this);
- assertNoDocTypeNotationEntityAncestor(node, true);
+ // No check for whether the container of the start of the Range is of a type that does not allow
+ // children of the type of node: the browser's DOM implementation should do this for us when we attempt
+ // to add the node
- boundaryUpdater(this, node, 0, node, dom.getNodeLength(node));
+ var firstNodeInserted = insertNodeAtPosition(node, this.startContainer, this.startOffset);
+ this.setStartBefore(firstNodeInserted);
},
- selectNode: function(node) {
- assertNotDetached(this);
- assertNoDocTypeNotationEntityAncestor(node, false);
- assertValidNodeType(node, beforeAfterNodeTypes);
+ cloneContents: function() {
+ assertRangeValid(this);
- var start = getBoundaryBeforeNode(node), end = getBoundaryAfterNode(node);
- boundaryUpdater(this, start.node, start.offset, end.node, end.offset);
+ var clone, frag;
+ if (this.collapsed) {
+ return getRangeDocument(this).createDocumentFragment();
+ } else {
+ if (this.startContainer === this.endContainer && isCharacterDataNode(this.startContainer)) {
+ clone = this.startContainer.cloneNode(true);
+ clone.data = clone.data.slice(this.startOffset, this.endOffset);
+ frag = getRangeDocument(this).createDocumentFragment();
+ frag.appendChild(clone);
+ return frag;
+ } else {
+ var iterator = new RangeIterator(this, true);
+ clone = cloneSubtree(iterator);
+ iterator.detach();
+ }
+ return clone;
+ }
},
- extractContents: createRangeContentRemover(extractSubtree, boundaryUpdater),
-
- deleteContents: createRangeContentRemover(deleteSubtree, boundaryUpdater),
-
canSurroundContents: function() {
assertRangeValid(this);
assertNodeNotReadOnly(this.startContainer);
@@ -1680,1545 +1549,2297 @@ rangy.createModule("DomUtil", function(api, module) {
return !boundariesInvalid;
},
- detach: function() {
- detacher(this);
- },
-
- splitBoundaries: function() {
- assertRangeValid(this);
+ surroundContents: function(node) {
+ assertValidNodeType(node, surroundNodeTypes);
+ if (!this.canSurroundContents()) {
+ throw new DOMException("INVALID_STATE_ERR");
+ }
- var sc = this.startContainer, so = this.startOffset, ec = this.endContainer, eo = this.endOffset;
- var startEndSame = (sc === ec);
-
- if (dom.isCharacterDataNode(ec) && eo > 0 && eo < ec.length) {
- dom.splitDataNode(ec, eo);
+ // Extract the contents
+ var content = this.extractContents();
+ // Clear the children of the node
+ if (node.hasChildNodes()) {
+ while (node.lastChild) {
+ node.removeChild(node.lastChild);
+ }
}
- if (dom.isCharacterDataNode(sc) && so > 0 && so < sc.length) {
+ // Insert the new node and add the extracted contents
+ insertNodeAtPosition(node, this.startContainer, this.startOffset);
+ node.appendChild(content);
- sc = dom.splitDataNode(sc, so);
- if (startEndSame) {
- eo -= so;
- ec = sc;
- } else if (ec == sc.parentNode && eo >= dom.getNodeIndex(sc)) {
- eo++;
- }
- so = 0;
+ this.selectNode(node);
+ },
+ cloneRange: function() {
+ assertRangeValid(this);
+ var range = new Range(getRangeDocument(this));
+ var i = rangeProperties.length, prop;
+ while (i--) {
+ prop = rangeProperties[i];
+ range[prop] = this[prop];
}
- boundaryUpdater(this, sc, so, ec, eo);
+ return range;
},
- normalizeBoundaries: function() {
+ toString: function() {
assertRangeValid(this);
+ var sc = this.startContainer;
+ if (sc === this.endContainer && isCharacterDataNode(sc)) {
+ return (sc.nodeType == 3 || sc.nodeType == 4) ? sc.data.slice(this.startOffset, this.endOffset) : "";
+ } else {
+ var textParts = [], iterator = new RangeIterator(this, true);
+ iterateSubtree(iterator, function(node) {
+ // Accept only text or CDATA nodes, not comments
+ if (node.nodeType == 3 || node.nodeType == 4) {
+ textParts.push(node.data);
+ }
+ });
+ iterator.detach();
+ return textParts.join("");
+ }
+ },
- var sc = this.startContainer, so = this.startOffset, ec = this.endContainer, eo = this.endOffset;
+ // The methods below are all non-standard. The following batch were introduced by Mozilla but have since
+ // been removed from Mozilla.
- var mergeForward = function(node) {
- var sibling = node.nextSibling;
- if (sibling && sibling.nodeType == node.nodeType) {
- ec = node;
- eo = node.length;
- node.appendData(sibling.data);
- sibling.parentNode.removeChild(sibling);
- }
- };
+ compareNode: function(node) {
+ assertRangeValid(this);
- var mergeBackward = function(node) {
- var sibling = node.previousSibling;
- if (sibling && sibling.nodeType == node.nodeType) {
- sc = node;
- var nodeLength = node.length;
- so = sibling.length;
- node.insertData(0, sibling.data);
- sibling.parentNode.removeChild(sibling);
- if (sc == ec) {
- eo += so;
- ec = sc;
- } else if (ec == node.parentNode) {
- var nodeIndex = dom.getNodeIndex(node);
- if (eo == nodeIndex) {
- ec = node;
- eo = nodeLength;
- } else if (eo > nodeIndex) {
- eo--;
- }
- }
- }
- };
+ var parent = node.parentNode;
+ var nodeIndex = getNodeIndex(node);
- var normalizeStart = true;
+ if (!parent) {
+ throw new DOMException("NOT_FOUND_ERR");
+ }
- if (dom.isCharacterDataNode(ec)) {
- if (ec.length == eo) {
- mergeForward(ec);
- }
+ var startComparison = this.comparePoint(parent, nodeIndex),
+ endComparison = this.comparePoint(parent, nodeIndex + 1);
+
+ if (startComparison < 0) { // Node starts before
+ return (endComparison > 0) ? n_b_a : n_b;
} else {
- if (eo > 0) {
- var endNode = ec.childNodes[eo - 1];
- if (endNode && dom.isCharacterDataNode(endNode)) {
- mergeForward(endNode);
- }
- }
- normalizeStart = !this.collapsed;
+ return (endComparison > 0) ? n_a : n_i;
}
+ },
- if (normalizeStart) {
- if (dom.isCharacterDataNode(sc)) {
- if (so == 0) {
- mergeBackward(sc);
- }
- } else {
- if (so < sc.childNodes.length) {
- var startNode = sc.childNodes[so];
- if (startNode && dom.isCharacterDataNode(startNode)) {
- mergeBackward(startNode);
- }
- }
- }
- } else {
- sc = ec;
- so = eo;
+ comparePoint: function(node, offset) {
+ assertRangeValid(this);
+ assertNode(node, "HIERARCHY_REQUEST_ERR");
+ assertSameDocumentOrFragment(node, this.startContainer);
+
+ if (comparePoints(node, offset, this.startContainer, this.startOffset) < 0) {
+ return -1;
+ } else if (comparePoints(node, offset, this.endContainer, this.endOffset) > 0) {
+ return 1;
}
+ return 0;
+ },
+
+ createContextualFragment: createContextualFragment,
- boundaryUpdater(this, sc, so, ec, eo);
+ toHtml: function() {
+ return rangeToHtml(this);
},
- collapseToPoint: function(node, offset) {
- assertNotDetached(this);
+ // touchingIsIntersecting determines whether this method considers a node that borders a range intersects
+ // with it (as in WebKit) or not (as in Gecko pre-1.9, and the default)
+ intersectsNode: function(node, touchingIsIntersecting) {
+ assertRangeValid(this);
+ if (getRootContainer(node) != getRangeRoot(this)) {
+ return false;
+ }
- assertNoDocTypeNotationEntityAncestor(node, true);
- assertValidOffset(node, offset);
+ var parent = node.parentNode, offset = getNodeIndex(node);
+ if (!parent) {
+ return true;
+ }
- setRangeStartAndEnd(this, node, offset);
- }
- });
+ var startComparison = comparePoints(parent, offset, this.endContainer, this.endOffset),
+ endComparison = comparePoints(parent, offset + 1, this.startContainer, this.startOffset);
- copyComparisonConstants(constructor);
- }
+ return touchingIsIntersecting ? startComparison <= 0 && endComparison >= 0 : startComparison < 0 && endComparison > 0;
+ },
- /*----------------------------------------------------------------------------------------------------------------*/
+ isPointInRange: function(node, offset) {
+ assertRangeValid(this);
+ assertNode(node, "HIERARCHY_REQUEST_ERR");
+ assertSameDocumentOrFragment(node, this.startContainer);
- // Updates commonAncestorContainer and collapsed after boundary change
- function updateCollapsedAndCommonAncestor(range) {
- range.collapsed = (range.startContainer === range.endContainer && range.startOffset === range.endOffset);
- range.commonAncestorContainer = range.collapsed ?
- range.startContainer : dom.getCommonAncestor(range.startContainer, range.endContainer);
- }
+ return (comparePoints(node, offset, this.startContainer, this.startOffset) >= 0) &&
+ (comparePoints(node, offset, this.endContainer, this.endOffset) <= 0);
+ },
- function updateBoundaries(range, startContainer, startOffset, endContainer, endOffset) {
- var startMoved = (range.startContainer !== startContainer || range.startOffset !== startOffset);
- var endMoved = (range.endContainer !== endContainer || range.endOffset !== endOffset);
+ // The methods below are non-standard and invented by me.
- range.startContainer = startContainer;
- range.startOffset = startOffset;
- range.endContainer = endContainer;
- range.endOffset = endOffset;
+ // Sharing a boundary start-to-end or end-to-start does not count as intersection.
+ intersectsRange: function(range) {
+ return rangesIntersect(this, range, false);
+ },
- updateCollapsedAndCommonAncestor(range);
- dispatchEvent(range, "boundarychange", {startMoved: startMoved, endMoved: endMoved});
- }
+ // Sharing a boundary start-to-end or end-to-start does count as intersection.
+ intersectsOrTouchesRange: function(range) {
+ return rangesIntersect(this, range, true);
+ },
- function detach(range) {
- assertNotDetached(range);
- range.startContainer = range.startOffset = range.endContainer = range.endOffset = null;
- range.collapsed = range.commonAncestorContainer = null;
- dispatchEvent(range, "detach", null);
- range._listeners = null;
- }
+ intersection: function(range) {
+ if (this.intersectsRange(range)) {
+ var startComparison = comparePoints(this.startContainer, this.startOffset, range.startContainer, range.startOffset),
+ endComparison = comparePoints(this.endContainer, this.endOffset, range.endContainer, range.endOffset);
- /**
- * @constructor
- */
- function Range(doc) {
- this.startContainer = doc;
- this.startOffset = 0;
- this.endContainer = doc;
- this.endOffset = 0;
- this._listeners = {
- boundarychange: [],
- detach: []
- };
- updateCollapsedAndCommonAncestor(this);
- }
+ var intersectionRange = this.cloneRange();
+ if (startComparison == -1) {
+ intersectionRange.setStart(range.startContainer, range.startOffset);
+ }
+ if (endComparison == 1) {
+ intersectionRange.setEnd(range.endContainer, range.endOffset);
+ }
+ return intersectionRange;
+ }
+ return null;
+ },
- createPrototypeRange(Range, updateBoundaries, detach);
-
- api.rangePrototype = RangePrototype.prototype;
-
- Range.rangeProperties = rangeProperties;
- Range.RangeIterator = RangeIterator;
- Range.copyComparisonConstants = copyComparisonConstants;
- Range.createPrototypeRange = createPrototypeRange;
- Range.inspect = inspect;
- Range.getRangeDocument = getRangeDocument;
- Range.rangesEqual = function(r1, r2) {
- return r1.startContainer === r2.startContainer &&
- r1.startOffset === r2.startOffset &&
- r1.endContainer === r2.endContainer &&
- r1.endOffset === r2.endOffset;
- };
+ union: function(range) {
+ if (this.intersectsOrTouchesRange(range)) {
+ var unionRange = this.cloneRange();
+ if (comparePoints(range.startContainer, range.startOffset, this.startContainer, this.startOffset) == -1) {
+ unionRange.setStart(range.startContainer, range.startOffset);
+ }
+ if (comparePoints(range.endContainer, range.endOffset, this.endContainer, this.endOffset) == 1) {
+ unionRange.setEnd(range.endContainer, range.endOffset);
+ }
+ return unionRange;
+ } else {
+ throw new DOMException("Ranges do not intersect");
+ }
+ },
- api.DomRange = Range;
- api.RangeException = RangeException;
-});rangy.createModule("WrappedRange", function(api, module) {
- api.requireModules( ["DomUtil", "DomRange"] );
+ containsNode: function(node, allowPartial) {
+ if (allowPartial) {
+ return this.intersectsNode(node, false);
+ } else {
+ return this.compareNode(node) == n_i;
+ }
+ },
- /**
- * @constructor
- */
- var WrappedRange;
- var dom = api.dom;
- var DomPosition = dom.DomPosition;
- var DomRange = api.DomRange;
+ containsNodeContents: function(node) {
+ return this.comparePoint(node, 0) >= 0 && this.comparePoint(node, getNodeLength(node)) <= 0;
+ },
+ containsRange: function(range) {
+ var intersection = this.intersection(range);
+ return intersection !== null && range.equals(intersection);
+ },
+ containsNodeText: function(node) {
+ var nodeRange = this.cloneRange();
+ nodeRange.selectNode(node);
+ var textNodes = nodeRange.getNodes([3]);
+ if (textNodes.length > 0) {
+ nodeRange.setStart(textNodes[0], 0);
+ var lastTextNode = textNodes.pop();
+ nodeRange.setEnd(lastTextNode, lastTextNode.length);
+ return this.containsRange(nodeRange);
+ } else {
+ return this.containsNodeContents(node);
+ }
+ },
- /*----------------------------------------------------------------------------------------------------------------*/
+ getNodes: function(nodeTypes, filter) {
+ assertRangeValid(this);
+ return getNodesInRange(this, nodeTypes, filter);
+ },
- /*
- This is a workaround for a bug where IE returns the wrong container element from the TextRange's parentElement()
- method. For example, in the following (where pipes denote the selection boundaries):
+ getDocument: function() {
+ return getRangeDocument(this);
+ },
- <ul id="ul"><li id="a">| a </li><li id="b"> b |</li></ul>
+ collapseBefore: function(node) {
+ this.setEndBefore(node);
+ this.collapse(false);
+ },
- var range = document.selection.createRange();
- alert(range.parentElement().id); // Should alert "ul" but alerts "b"
+ collapseAfter: function(node) {
+ this.setStartAfter(node);
+ this.collapse(true);
+ },
- This method returns the common ancestor node of the following:
- - the parentElement() of the textRange
- - the parentElement() of the textRange after calling collapse(true)
- - the parentElement() of the textRange after calling collapse(false)
- */
- function getTextRangeContainerElement(textRange) {
- var parentEl = textRange.parentElement();
+ getBookmark: function(containerNode) {
+ var doc = getRangeDocument(this);
+ var preSelectionRange = api.createRange(doc);
+ containerNode = containerNode || dom.getBody(doc);
+ preSelectionRange.selectNodeContents(containerNode);
+ var range = this.intersection(preSelectionRange);
+ var start = 0, end = 0;
+ if (range) {
+ preSelectionRange.setEnd(range.startContainer, range.startOffset);
+ start = preSelectionRange.toString().length;
+ end = start + range.toString().length;
+ }
- var range = textRange.duplicate();
- range.collapse(true);
- var startEl = range.parentElement();
- range = textRange.duplicate();
- range.collapse(false);
- var endEl = range.parentElement();
- var startEndContainer = (startEl == endEl) ? startEl : dom.getCommonAncestor(startEl, endEl);
+ return {
+ start: start,
+ end: end,
+ containerNode: containerNode
+ };
+ },
- return startEndContainer == parentEl ? startEndContainer : dom.getCommonAncestor(parentEl, startEndContainer);
- }
+ moveToBookmark: function(bookmark) {
+ var containerNode = bookmark.containerNode;
+ var charIndex = 0;
+ this.setStart(containerNode, 0);
+ this.collapse(true);
+ var nodeStack = [containerNode], node, foundStart = false, stop = false;
+ var nextCharIndex, i, childNodes;
+
+ while (!stop && (node = nodeStack.pop())) {
+ if (node.nodeType == 3) {
+ nextCharIndex = charIndex + node.length;
+ if (!foundStart && bookmark.start >= charIndex && bookmark.start <= nextCharIndex) {
+ this.setStart(node, bookmark.start - charIndex);
+ foundStart = true;
+ }
+ if (foundStart && bookmark.end >= charIndex && bookmark.end <= nextCharIndex) {
+ this.setEnd(node, bookmark.end - charIndex);
+ stop = true;
+ }
+ charIndex = nextCharIndex;
+ } else {
+ childNodes = node.childNodes;
+ i = childNodes.length;
+ while (i--) {
+ nodeStack.push(childNodes[i]);
+ }
+ }
+ }
+ },
- function textRangeIsCollapsed(textRange) {
- return textRange.compareEndPoints("StartToEnd", textRange) == 0;
- }
+ getName: function() {
+ return "DomRange";
+ },
- // Gets the boundary of a TextRange expressed as a node and an offset within that node. This function started out as
- // an improved version of code found in Tim Cameron Ryan's IERange (http://code.google.com/p/ierange/) but has
- // grown, fixing problems with line breaks in preformatted text, adding workaround for IE TextRange bugs, handling
- // for inputs and images, plus optimizations.
- function getTextRangeBoundaryPosition(textRange, wholeRangeContainerElement, isStart, isCollapsed) {
- var workingRange = textRange.duplicate();
+ equals: function(range) {
+ return Range.rangesEqual(this, range);
+ },
- workingRange.collapse(isStart);
- var containerElement = workingRange.parentElement();
+ isValid: function() {
+ return isRangeValid(this);
+ },
- // Sometimes collapsing a TextRange that's at the start of a text node can move it into the previous node, so
- // check for that
- // TODO: Find out when. Workaround for wholeRangeContainerElement may break this
- if (!dom.isAncestorOf(wholeRangeContainerElement, containerElement, true)) {
- containerElement = wholeRangeContainerElement;
+ inspect: function() {
+ return inspect(this);
+ },
- }
+ detach: function() {
+ // In DOM4, detach() is now a no-op.
+ }
+ });
+ function copyComparisonConstantsToObject(obj) {
+ obj.START_TO_START = s2s;
+ obj.START_TO_END = s2e;
+ obj.END_TO_END = e2e;
+ obj.END_TO_START = e2s;
+ obj.NODE_BEFORE = n_b;
+ obj.NODE_AFTER = n_a;
+ obj.NODE_BEFORE_AND_AFTER = n_b_a;
+ obj.NODE_INSIDE = n_i;
+ }
- // Deal with nodes that cannot "contain rich HTML markup". In practice, this means form inputs, images and
- // similar. See http://msdn.microsoft.com/en-us/library/aa703950%28VS.85%29.aspx
- if (!containerElement.canHaveHTML) {
- return new DomPosition(containerElement.parentNode, dom.getNodeIndex(containerElement));
+ function copyComparisonConstants(constructor) {
+ copyComparisonConstantsToObject(constructor);
+ copyComparisonConstantsToObject(constructor.prototype);
}
- var workingNode = dom.getDocument(containerElement).createElement("span");
- var comparison, workingComparisonType = isStart ? "StartToStart" : "StartToEnd";
- var previousNode, nextNode, boundaryPosition, boundaryNode;
+ function createRangeContentRemover(remover, boundaryUpdater) {
+ return function() {
+ assertRangeValid(this);
- // Move the working range through the container's children, starting at the end and working backwards, until the
- // working range reaches or goes past the boundary we're interested in
- do {
- containerElement.insertBefore(workingNode, workingNode.previousSibling);
- workingRange.moveToElementText(workingNode);
- } while ( (comparison = workingRange.compareEndPoints(workingComparisonType, textRange)) > 0 &&
- workingNode.previousSibling);
+ var sc = this.startContainer, so = this.startOffset, root = this.commonAncestorContainer;
- // We've now reached or gone past the boundary of the text range we're interested in
- // so have identified the node we want
- boundaryNode = workingNode.nextSibling;
+ var iterator = new RangeIterator(this, true);
- if (comparison == -1 && boundaryNode && dom.isCharacterDataNode(boundaryNode)) {
- // This is a character data node (text, comment, cdata). The working range is collapsed at the start of the
- // node containing the text range's boundary, so we move the end of the working range to the boundary point
- // and measure the length of its text to get the boundary's offset within the node.
- workingRange.setEndPoint(isStart ? "EndToStart" : "EndToEnd", textRange);
+ // Work out where to position the range after content removal
+ var node, boundary;
+ if (sc !== root) {
+ node = getClosestAncestorIn(sc, root, true);
+ boundary = getBoundaryAfterNode(node);
+ sc = boundary.node;
+ so = boundary.offset;
+ }
+ // Check none of the range is read-only
+ iterateSubtree(iterator, assertNodeNotReadOnly);
- var offset;
+ iterator.reset();
- if (/[\r\n]/.test(boundaryNode.data)) {
- /*
- For the particular case of a boundary within a text node containing line breaks (within a <pre> element,
- for example), we need a slightly complicated approach to get the boundary's offset in IE. The facts:
+ // Remove the content
+ var returnValue = remover(iterator);
+ iterator.detach();
- - Each line break is represented as \r in the text node's data/nodeValue properties
- - Each line break is represented as \r\n in the TextRange's 'text' property
- - The 'text' property of the TextRange does not contain trailing line breaks
+ // Move to the new position
+ boundaryUpdater(this, sc, so, sc, so);
- To get round the problem presented by the final fact above, we can use the fact that TextRange's
- moveStart() and moveEnd() methods return the actual number of characters moved, which is not necessarily
- the same as the number of characters it was instructed to move. The simplest approach is to use this to
- store the characters moved when moving both the start and end of the range to the start of the document
- body and subtracting the start offset from the end offset (the "move-negative-gazillion" method).
- However, this is extremely slow when the document is large and the range is near the end of it. Clearly
- doing the mirror image (i.e. moving the range boundaries to the end of the document) has the same
- problem.
+ return returnValue;
+ };
+ }
- Another approach that works is to use moveStart() to move the start boundary of the range up to the end
- boundary one character at a time and incrementing a counter with the value returned by the moveStart()
- call. However, the check for whether the start boundary has reached the end boundary is expensive, so
- this method is slow (although unlike "move-negative-gazillion" is largely unaffected by the location of
- the range within the document).
+ function createPrototypeRange(constructor, boundaryUpdater) {
+ function createBeforeAfterNodeSetter(isBefore, isStart) {
+ return function(node) {
+ assertValidNodeType(node, beforeAfterNodeTypes);
+ assertValidNodeType(getRootContainer(node), rootContainerNodeTypes);
- The method below is a hybrid of the two methods above. It uses the fact that a string containing the
- TextRange's 'text' property with each \r\n converted to a single \r character cannot be longer than the
- text of the TextRange, so the start of the range is moved that length initially and then a character at
- a time to make up for any trailing line breaks not contained in the 'text' property. This has good
- performance in most situations compared to the previous two methods.
- */
- var tempRange = workingRange.duplicate();
- var rangeLength = tempRange.text.replace(/\r\n/g, "\r").length;
+ var boundary = (isBefore ? getBoundaryBeforeNode : getBoundaryAfterNode)(node);
+ (isStart ? setRangeStart : setRangeEnd)(this, boundary.node, boundary.offset);
+ };
+ }
- offset = tempRange.moveStart("character", rangeLength);
- while ( (comparison = tempRange.compareEndPoints("StartToEnd", tempRange)) == -1) {
- offset++;
- tempRange.moveStart("character", 1);
+ function setRangeStart(range, node, offset) {
+ var ec = range.endContainer, eo = range.endOffset;
+ if (node !== range.startContainer || offset !== range.startOffset) {
+ // Check the root containers of the range and the new boundary, and also check whether the new boundary
+ // is after the current end. In either case, collapse the range to the new position
+ if (getRootContainer(node) != getRootContainer(ec) || comparePoints(node, offset, ec, eo) == 1) {
+ ec = node;
+ eo = offset;
+ }
+ boundaryUpdater(range, node, offset, ec, eo);
}
- } else {
- offset = workingRange.text.length;
}
- boundaryPosition = new DomPosition(boundaryNode, offset);
- } else {
+ function setRangeEnd(range, node, offset) {
+ var sc = range.startContainer, so = range.startOffset;
+ if (node !== range.endContainer || offset !== range.endOffset) {
+ // Check the root containers of the range and the new boundary, and also check whether the new boundary
+ // is after the current end. In either case, collapse the range to the new position
+ if (getRootContainer(node) != getRootContainer(sc) || comparePoints(node, offset, sc, so) == -1) {
+ sc = node;
+ so = offset;
+ }
+ boundaryUpdater(range, sc, so, node, offset);
+ }
+ }
- // If the boundary immediately follows a character data node and this is the end boundary, we should favour
- // a position within that, and likewise for a start boundary preceding a character data node
- previousNode = (isCollapsed || !isStart) && workingNode.previousSibling;
- nextNode = (isCollapsed || isStart) && workingNode.nextSibling;
+ // Set up inheritance
+ var F = function() {};
+ F.prototype = api.rangePrototype;
+ constructor.prototype = new F();
+
+ util.extend(constructor.prototype, {
+ setStart: function(node, offset) {
+ assertNoDocTypeNotationEntityAncestor(node, true);
+ assertValidOffset(node, offset);
+
+ setRangeStart(this, node, offset);
+ },
+
+ setEnd: function(node, offset) {
+ assertNoDocTypeNotationEntityAncestor(node, true);
+ assertValidOffset(node, offset);
+
+ setRangeEnd(this, node, offset);
+ },
+
+ /**
+ * Convenience method to set a range's start and end boundaries. Overloaded as follows:
+ * - Two parameters (node, offset) creates a collapsed range at that position
+ * - Three parameters (node, startOffset, endOffset) creates a range contained with node starting at
+ * startOffset and ending at endOffset
+ * - Four parameters (startNode, startOffset, endNode, endOffset) creates a range starting at startOffset in
+ * startNode and ending at endOffset in endNode
+ */
+ setStartAndEnd: function() {
+ var args = arguments;
+ var sc = args[0], so = args[1], ec = sc, eo = so;
+
+ switch (args.length) {
+ case 3:
+ eo = args[2];
+ break;
+ case 4:
+ ec = args[2];
+ eo = args[3];
+ break;
+ }
+ boundaryUpdater(this, sc, so, ec, eo);
+ },
+ setBoundary: function(node, offset, isStart) {
+ this["set" + (isStart ? "Start" : "End")](node, offset);
+ },
- if (nextNode && dom.isCharacterDataNode(nextNode)) {
- boundaryPosition = new DomPosition(nextNode, 0);
- } else if (previousNode && dom.isCharacterDataNode(previousNode)) {
- boundaryPosition = new DomPosition(previousNode, previousNode.length);
- } else {
- boundaryPosition = new DomPosition(containerElement, dom.getNodeIndex(workingNode));
- }
- }
+ setStartBefore: createBeforeAfterNodeSetter(true, true),
+ setStartAfter: createBeforeAfterNodeSetter(false, true),
+ setEndBefore: createBeforeAfterNodeSetter(true, false),
+ setEndAfter: createBeforeAfterNodeSetter(false, false),
- // Clean up
- workingNode.parentNode.removeChild(workingNode);
+ collapse: function(isStart) {
+ assertRangeValid(this);
+ if (isStart) {
+ boundaryUpdater(this, this.startContainer, this.startOffset, this.startContainer, this.startOffset);
+ } else {
+ boundaryUpdater(this, this.endContainer, this.endOffset, this.endContainer, this.endOffset);
+ }
+ },
- return boundaryPosition;
- }
+ selectNodeContents: function(node) {
+ assertNoDocTypeNotationEntityAncestor(node, true);
- // Returns a TextRange representing the boundary of a TextRange expressed as a node and an offset within that node.
- // This function started out as an optimized version of code found in Tim Cameron Ryan's IERange
- // (http://code.google.com/p/ierange/)
- function createBoundaryTextRange(boundaryPosition, isStart) {
- var boundaryNode, boundaryParent, boundaryOffset = boundaryPosition.offset;
- var doc = dom.getDocument(boundaryPosition.node);
- var workingNode, childNodes, workingRange = doc.body.createTextRange();
- var nodeIsDataNode = dom.isCharacterDataNode(boundaryPosition.node);
-
- if (nodeIsDataNode) {
- boundaryNode = boundaryPosition.node;
- boundaryParent = boundaryNode.parentNode;
- } else {
- childNodes = boundaryPosition.node.childNodes;
- boundaryNode = (boundaryOffset < childNodes.length) ? childNodes[boundaryOffset] : null;
- boundaryParent = boundaryPosition.node;
- }
+ boundaryUpdater(this, node, 0, node, getNodeLength(node));
+ },
- // Position the range immediately before the node containing the boundary
- workingNode = doc.createElement("span");
+ selectNode: function(node) {
+ assertNoDocTypeNotationEntityAncestor(node, false);
+ assertValidNodeType(node, beforeAfterNodeTypes);
- // Making the working element non-empty element persuades IE to consider the TextRange boundary to be within the
- // element rather than immediately before or after it, which is what we want
- workingNode.innerHTML = "&#feff;";
+ var start = getBoundaryBeforeNode(node), end = getBoundaryAfterNode(node);
+ boundaryUpdater(this, start.node, start.offset, end.node, end.offset);
+ },
- // insertBefore is supposed to work like appendChild if the second parameter is null. However, a bug report
- // for IERange suggests that it can crash the browser: http://code.google.com/p/ierange/issues/detail?id=12
- if (boundaryNode) {
- boundaryParent.insertBefore(workingNode, boundaryNode);
- } else {
- boundaryParent.appendChild(workingNode);
- }
+ extractContents: createRangeContentRemover(extractSubtree, boundaryUpdater),
- workingRange.moveToElementText(workingNode);
- workingRange.collapse(!isStart);
+ deleteContents: createRangeContentRemover(deleteSubtree, boundaryUpdater),
- // Clean up
- boundaryParent.removeChild(workingNode);
+ canSurroundContents: function() {
+ assertRangeValid(this);
+ assertNodeNotReadOnly(this.startContainer);
+ assertNodeNotReadOnly(this.endContainer);
- // Move the working range to the text offset, if required
- if (nodeIsDataNode) {
- workingRange[isStart ? "moveStart" : "moveEnd"]("character", boundaryOffset);
- }
+ // Check if the contents can be surrounded. Specifically, this means whether the range partially selects
+ // no non-text nodes.
+ var iterator = new RangeIterator(this, true);
+ var boundariesInvalid = (iterator._first && isNonTextPartiallySelected(iterator._first, this) ||
+ (iterator._last && isNonTextPartiallySelected(iterator._last, this)));
+ iterator.detach();
+ return !boundariesInvalid;
+ },
- return workingRange;
- }
+ splitBoundaries: function() {
+ splitRangeBoundaries(this);
+ },
- /*----------------------------------------------------------------------------------------------------------------*/
+ splitBoundariesPreservingPositions: function(positionsToPreserve) {
+ splitRangeBoundaries(this, positionsToPreserve);
+ },
- if (api.features.implementsDomRange && (!api.features.implementsTextRange || !api.config.preferTextRange)) {
- // This is a wrapper around the browser's native DOM Range. It has two aims:
- // - Provide workarounds for specific browser bugs
- // - provide convenient extensions, which are inherited from Rangy's DomRange
+ normalizeBoundaries: function() {
+ assertRangeValid(this);
- (function() {
- var rangeProto;
- var rangeProperties = DomRange.rangeProperties;
- var canSetRangeStartAfterEnd;
+ var sc = this.startContainer, so = this.startOffset, ec = this.endContainer, eo = this.endOffset;
- function updateRangeProperties(range) {
- var i = rangeProperties.length, prop;
- while (i--) {
- prop = rangeProperties[i];
- range[prop] = range.nativeRange[prop];
- }
- }
+ var mergeForward = function(node) {
+ var sibling = node.nextSibling;
+ if (sibling && sibling.nodeType == node.nodeType) {
+ ec = node;
+ eo = node.length;
+ node.appendData(sibling.data);
+ removeNode(sibling);
+ }
+ };
- function updateNativeRange(range, startContainer, startOffset, endContainer,endOffset) {
- var startMoved = (range.startContainer !== startContainer || range.startOffset != startOffset);
- var endMoved = (range.endContainer !== endContainer || range.endOffset != endOffset);
+ var mergeBackward = function(node) {
+ var sibling = node.previousSibling;
+ if (sibling && sibling.nodeType == node.nodeType) {
+ sc = node;
+ var nodeLength = node.length;
+ so = sibling.length;
+ node.insertData(0, sibling.data);
+ removeNode(sibling);
+ if (sc == ec) {
+ eo += so;
+ ec = sc;
+ } else if (ec == node.parentNode) {
+ var nodeIndex = getNodeIndex(node);
+ if (eo == nodeIndex) {
+ ec = node;
+ eo = nodeLength;
+ } else if (eo > nodeIndex) {
+ eo--;
+ }
+ }
+ }
+ };
- // Always set both boundaries for the benefit of IE9 (see issue 35)
- if (startMoved || endMoved) {
- range.setEnd(endContainer, endOffset);
- range.setStart(startContainer, startOffset);
- }
- }
+ var normalizeStart = true;
+ var sibling;
+
+ if (isCharacterDataNode(ec)) {
+ if (eo == ec.length) {
+ mergeForward(ec);
+ } else if (eo == 0) {
+ sibling = ec.previousSibling;
+ if (sibling && sibling.nodeType == ec.nodeType) {
+ eo = sibling.length;
+ if (sc == ec) {
+ normalizeStart = false;
+ }
+ sibling.appendData(ec.data);
+ removeNode(ec);
+ ec = sibling;
+ }
+ }
+ } else {
+ if (eo > 0) {
+ var endNode = ec.childNodes[eo - 1];
+ if (endNode && isCharacterDataNode(endNode)) {
+ mergeForward(endNode);
+ }
+ }
+ normalizeStart = !this.collapsed;
+ }
- function detach(range) {
- range.nativeRange.detach();
- range.detached = true;
- var i = rangeProperties.length, prop;
- while (i--) {
- prop = rangeProperties[i];
- range[prop] = null;
- }
- }
+ if (normalizeStart) {
+ if (isCharacterDataNode(sc)) {
+ if (so == 0) {
+ mergeBackward(sc);
+ } else if (so == sc.length) {
+ sibling = sc.nextSibling;
+ if (sibling && sibling.nodeType == sc.nodeType) {
+ if (ec == sibling) {
+ ec = sc;
+ eo += sc.length;
+ }
+ sc.appendData(sibling.data);
+ removeNode(sibling);
+ }
+ }
+ } else {
+ if (so < sc.childNodes.length) {
+ var startNode = sc.childNodes[so];
+ if (startNode && isCharacterDataNode(startNode)) {
+ mergeBackward(startNode);
+ }
+ }
+ }
+ } else {
+ sc = ec;
+ so = eo;
+ }
- var createBeforeAfterNodeSetter;
+ boundaryUpdater(this, sc, so, ec, eo);
+ },
- WrappedRange = function(range) {
- if (!range) {
- throw new Error("Range must be specified");
+ collapseToPoint: function(node, offset) {
+ assertNoDocTypeNotationEntityAncestor(node, true);
+ assertValidOffset(node, offset);
+ this.setStartAndEnd(node, offset);
}
- this.nativeRange = range;
- updateRangeProperties(this);
- };
+ });
- DomRange.createPrototypeRange(WrappedRange, updateNativeRange, detach);
+ copyComparisonConstants(constructor);
+ }
- rangeProto = WrappedRange.prototype;
+ /*----------------------------------------------------------------------------------------------------------------*/
- rangeProto.selectNode = function(node) {
- this.nativeRange.selectNode(node);
- updateRangeProperties(this);
- };
+ // Updates commonAncestorContainer and collapsed after boundary change
+ function updateCollapsedAndCommonAncestor(range) {
+ range.collapsed = (range.startContainer === range.endContainer && range.startOffset === range.endOffset);
+ range.commonAncestorContainer = range.collapsed ?
+ range.startContainer : dom.getCommonAncestor(range.startContainer, range.endContainer);
+ }
- rangeProto.deleteContents = function() {
- this.nativeRange.deleteContents();
- updateRangeProperties(this);
- };
+ function updateBoundaries(range, startContainer, startOffset, endContainer, endOffset) {
+ range.startContainer = startContainer;
+ range.startOffset = startOffset;
+ range.endContainer = endContainer;
+ range.endOffset = endOffset;
+ range.document = dom.getDocument(startContainer);
- rangeProto.extractContents = function() {
- var frag = this.nativeRange.extractContents();
- updateRangeProperties(this);
- return frag;
- };
+ updateCollapsedAndCommonAncestor(range);
+ }
- rangeProto.cloneContents = function() {
- return this.nativeRange.cloneContents();
- };
+ function Range(doc) {
+ this.startContainer = doc;
+ this.startOffset = 0;
+ this.endContainer = doc;
+ this.endOffset = 0;
+ this.document = doc;
+ updateCollapsedAndCommonAncestor(this);
+ }
- // TODO: Until I can find a way to programmatically trigger the Firefox bug (apparently long-standing, still
- // present in 3.6.8) that throws "Index or size is negative or greater than the allowed amount" for
- // insertNode in some circumstances, all browsers will have to use the Rangy's own implementation of
- // insertNode, which works but is almost certainly slower than the native implementation.
-/*
- rangeProto.insertNode = function(node) {
- this.nativeRange.insertNode(node);
- updateRangeProperties(this);
- };
-*/
+ createPrototypeRange(Range, updateBoundaries);
- rangeProto.surroundContents = function(node) {
- this.nativeRange.surroundContents(node);
- updateRangeProperties(this);
- };
+ util.extend(Range, {
+ rangeProperties: rangeProperties,
+ RangeIterator: RangeIterator,
+ copyComparisonConstants: copyComparisonConstants,
+ createPrototypeRange: createPrototypeRange,
+ inspect: inspect,
+ toHtml: rangeToHtml,
+ getRangeDocument: getRangeDocument,
+ rangesEqual: function(r1, r2) {
+ return r1.startContainer === r2.startContainer &&
+ r1.startOffset === r2.startOffset &&
+ r1.endContainer === r2.endContainer &&
+ r1.endOffset === r2.endOffset;
+ }
+ });
- rangeProto.collapse = function(isStart) {
- this.nativeRange.collapse(isStart);
- updateRangeProperties(this);
- };
+ api.DomRange = Range;
+ });
- rangeProto.cloneRange = function() {
- return new WrappedRange(this.nativeRange.cloneRange());
- };
+ /*----------------------------------------------------------------------------------------------------------------*/
- rangeProto.refresh = function() {
- updateRangeProperties(this);
- };
+ // Wrappers for the browser's native DOM Range and/or TextRange implementation
+ api.createCoreModule("WrappedRange", ["DomRange"], function(api, module) {
+ var WrappedRange, WrappedTextRange;
+ var dom = api.dom;
+ var util = api.util;
+ var DomPosition = dom.DomPosition;
+ var DomRange = api.DomRange;
+ var getBody = dom.getBody;
+ var getContentDocument = dom.getContentDocument;
+ var isCharacterDataNode = dom.isCharacterDataNode;
+
+
+ /*----------------------------------------------------------------------------------------------------------------*/
+
+ if (api.features.implementsDomRange) {
+ // This is a wrapper around the browser's native DOM Range. It has two aims:
+ // - Provide workarounds for specific browser bugs
+ // - provide convenient extensions, which are inherited from Rangy's DomRange
+
+ (function() {
+ var rangeProto;
+ var rangeProperties = DomRange.rangeProperties;
+
+ function updateRangeProperties(range) {
+ var i = rangeProperties.length, prop;
+ while (i--) {
+ prop = rangeProperties[i];
+ range[prop] = range.nativeRange[prop];
+ }
+ // Fix for broken collapsed property in IE 9.
+ range.collapsed = (range.startContainer === range.endContainer && range.startOffset === range.endOffset);
+ }
- rangeProto.toString = function() {
- return this.nativeRange.toString();
- };
+ function updateNativeRange(range, startContainer, startOffset, endContainer, endOffset) {
+ var startMoved = (range.startContainer !== startContainer || range.startOffset != startOffset);
+ var endMoved = (range.endContainer !== endContainer || range.endOffset != endOffset);
+ var nativeRangeDifferent = !range.equals(range.nativeRange);
- // Create test range and node for feature detection
+ // Always set both boundaries for the benefit of IE9 (see issue 35)
+ if (startMoved || endMoved || nativeRangeDifferent) {
+ range.setEnd(endContainer, endOffset);
+ range.setStart(startContainer, startOffset);
+ }
+ }
- var testTextNode = document.createTextNode("test");
- dom.getBody(document).appendChild(testTextNode);
- var range = document.createRange();
+ var createBeforeAfterNodeSetter;
- /*--------------------------------------------------------------------------------------------------------*/
+ WrappedRange = function(range) {
+ if (!range) {
+ throw module.createError("WrappedRange: Range must be specified");
+ }
+ this.nativeRange = range;
+ updateRangeProperties(this);
+ };
- // Test for Firefox 2 bug that prevents moving the start of a Range to a point after its current end and
- // correct for it
+ DomRange.createPrototypeRange(WrappedRange, updateNativeRange);
- range.setStart(testTextNode, 0);
- range.setEnd(testTextNode, 0);
+ rangeProto = WrappedRange.prototype;
- try {
- range.setStart(testTextNode, 1);
- canSetRangeStartAfterEnd = true;
+ rangeProto.selectNode = function(node) {
+ this.nativeRange.selectNode(node);
+ updateRangeProperties(this);
+ };
+
+ rangeProto.cloneContents = function() {
+ return this.nativeRange.cloneContents();
+ };
+
+ // Due to a long-standing Firefox bug that I have not been able to find a reliable way to detect,
+ // insertNode() is never delegated to the native range.
- rangeProto.setStart = function(node, offset) {
- this.nativeRange.setStart(node, offset);
+ rangeProto.surroundContents = function(node) {
+ this.nativeRange.surroundContents(node);
updateRangeProperties(this);
};
- rangeProto.setEnd = function(node, offset) {
- this.nativeRange.setEnd(node, offset);
+ rangeProto.collapse = function(isStart) {
+ this.nativeRange.collapse(isStart);
updateRangeProperties(this);
};
- createBeforeAfterNodeSetter = function(name) {
- return function(node) {
- this.nativeRange[name](node);
- updateRangeProperties(this);
- };
+ rangeProto.cloneRange = function() {
+ return new WrappedRange(this.nativeRange.cloneRange());
};
- } catch(ex) {
+ rangeProto.refresh = function() {
+ updateRangeProperties(this);
+ };
+ rangeProto.toString = function() {
+ return this.nativeRange.toString();
+ };
- canSetRangeStartAfterEnd = false;
+ // Create test range and node for feature detection
- rangeProto.setStart = function(node, offset) {
- try {
- this.nativeRange.setStart(node, offset);
- } catch (ex) {
- this.nativeRange.setEnd(node, offset);
- this.nativeRange.setStart(node, offset);
- }
- updateRangeProperties(this);
- };
+ var testTextNode = document.createTextNode("test");
+ getBody(document).appendChild(testTextNode);
+ var range = document.createRange();
- rangeProto.setEnd = function(node, offset) {
- try {
- this.nativeRange.setEnd(node, offset);
- } catch (ex) {
+ /*--------------------------------------------------------------------------------------------------------*/
+
+ // Test for Firefox 2 bug that prevents moving the start of a Range to a point after its current end and
+ // correct for it
+
+ range.setStart(testTextNode, 0);
+ range.setEnd(testTextNode, 0);
+
+ try {
+ range.setStart(testTextNode, 1);
+
+ rangeProto.setStart = function(node, offset) {
this.nativeRange.setStart(node, offset);
+ updateRangeProperties(this);
+ };
+
+ rangeProto.setEnd = function(node, offset) {
this.nativeRange.setEnd(node, offset);
- }
- updateRangeProperties(this);
- };
+ updateRangeProperties(this);
+ };
- createBeforeAfterNodeSetter = function(name, oppositeName) {
- return function(node) {
- try {
+ createBeforeAfterNodeSetter = function(name) {
+ return function(node) {
this.nativeRange[name](node);
+ updateRangeProperties(this);
+ };
+ };
+
+ } catch(ex) {
+
+ rangeProto.setStart = function(node, offset) {
+ try {
+ this.nativeRange.setStart(node, offset);
} catch (ex) {
- this.nativeRange[oppositeName](node);
- this.nativeRange[name](node);
+ this.nativeRange.setEnd(node, offset);
+ this.nativeRange.setStart(node, offset);
}
updateRangeProperties(this);
};
- };
- }
- rangeProto.setStartBefore = createBeforeAfterNodeSetter("setStartBefore", "setEndBefore");
- rangeProto.setStartAfter = createBeforeAfterNodeSetter("setStartAfter", "setEndAfter");
- rangeProto.setEndBefore = createBeforeAfterNodeSetter("setEndBefore", "setStartBefore");
- rangeProto.setEndAfter = createBeforeAfterNodeSetter("setEndAfter", "setStartAfter");
+ rangeProto.setEnd = function(node, offset) {
+ try {
+ this.nativeRange.setEnd(node, offset);
+ } catch (ex) {
+ this.nativeRange.setStart(node, offset);
+ this.nativeRange.setEnd(node, offset);
+ }
+ updateRangeProperties(this);
+ };
- /*--------------------------------------------------------------------------------------------------------*/
+ createBeforeAfterNodeSetter = function(name, oppositeName) {
+ return function(node) {
+ try {
+ this.nativeRange[name](node);
+ } catch (ex) {
+ this.nativeRange[oppositeName](node);
+ this.nativeRange[name](node);
+ }
+ updateRangeProperties(this);
+ };
+ };
+ }
- // Test for and correct Firefox 2 behaviour with selectNodeContents on text nodes: it collapses the range to
- // the 0th character of the text node
- range.selectNodeContents(testTextNode);
- if (range.startContainer == testTextNode && range.endContainer == testTextNode &&
- range.startOffset == 0 && range.endOffset == testTextNode.length) {
- rangeProto.selectNodeContents = function(node) {
- this.nativeRange.selectNodeContents(node);
- updateRangeProperties(this);
- };
- } else {
+ rangeProto.setStartBefore = createBeforeAfterNodeSetter("setStartBefore", "setEndBefore");
+ rangeProto.setStartAfter = createBeforeAfterNodeSetter("setStartAfter", "setEndAfter");
+ rangeProto.setEndBefore = createBeforeAfterNodeSetter("setEndBefore", "setStartBefore");
+ rangeProto.setEndAfter = createBeforeAfterNodeSetter("setEndAfter", "setStartAfter");
+
+ /*--------------------------------------------------------------------------------------------------------*/
+
+ // Always use DOM4-compliant selectNodeContents implementation: it's simpler and less code than testing
+ // whether the native implementation can be trusted
rangeProto.selectNodeContents = function(node) {
- this.setStart(node, 0);
- this.setEnd(node, DomRange.getEndOffset(node));
+ this.setStartAndEnd(node, 0, dom.getNodeLength(node));
};
- }
- /*--------------------------------------------------------------------------------------------------------*/
+ /*--------------------------------------------------------------------------------------------------------*/
- // Test for WebKit bug that has the beahviour of compareBoundaryPoints round the wrong way for constants
- // START_TO_END and END_TO_START: https://bugs.webkit.org/show_bug.cgi?id=20738
+ // Test for and correct WebKit bug that has the behaviour of compareBoundaryPoints round the wrong way for
+ // constants START_TO_END and END_TO_START: https://bugs.webkit.org/show_bug.cgi?id=20738
- range.selectNodeContents(testTextNode);
- range.setEnd(testTextNode, 3);
+ range.selectNodeContents(testTextNode);
+ range.setEnd(testTextNode, 3);
- var range2 = document.createRange();
- range2.selectNodeContents(testTextNode);
- range2.setEnd(testTextNode, 4);
- range2.setStart(testTextNode, 2);
+ var range2 = document.createRange();
+ range2.selectNodeContents(testTextNode);
+ range2.setEnd(testTextNode, 4);
+ range2.setStart(testTextNode, 2);
- if (range.compareBoundaryPoints(range.START_TO_END, range2) == -1 &
- range.compareBoundaryPoints(range.END_TO_START, range2) == 1) {
- // This is the wrong way round, so correct for it
+ if (range.compareBoundaryPoints(range.START_TO_END, range2) == -1 &&
+ range.compareBoundaryPoints(range.END_TO_START, range2) == 1) {
+ // This is the wrong way round, so correct for it
+ rangeProto.compareBoundaryPoints = function(type, range) {
+ range = range.nativeRange || range;
+ if (type == range.START_TO_END) {
+ type = range.END_TO_START;
+ } else if (type == range.END_TO_START) {
+ type = range.START_TO_END;
+ }
+ return this.nativeRange.compareBoundaryPoints(type, range);
+ };
+ } else {
+ rangeProto.compareBoundaryPoints = function(type, range) {
+ return this.nativeRange.compareBoundaryPoints(type, range.nativeRange || range);
+ };
+ }
- rangeProto.compareBoundaryPoints = function(type, range) {
- range = range.nativeRange || range;
- if (type == range.START_TO_END) {
- type = range.END_TO_START;
- } else if (type == range.END_TO_START) {
- type = range.START_TO_END;
- }
- return this.nativeRange.compareBoundaryPoints(type, range);
- };
- } else {
- rangeProto.compareBoundaryPoints = function(type, range) {
- return this.nativeRange.compareBoundaryPoints(type, range.nativeRange || range);
+ /*--------------------------------------------------------------------------------------------------------*/
+
+ // Test for IE deleteContents() and extractContents() bug and correct it. See issue 107.
+
+ var el = document.createElement("div");
+ el.innerHTML = "123";
+ var textNode = el.firstChild;
+ var body = getBody(document);
+ body.appendChild(el);
+
+ range.setStart(textNode, 1);
+ range.setEnd(textNode, 2);
+ range.deleteContents();
+
+ if (textNode.data == "13") {
+ // Behaviour is correct per DOM4 Range so wrap the browser's implementation of deleteContents() and
+ // extractContents()
+ rangeProto.deleteContents = function() {
+ this.nativeRange.deleteContents();
+ updateRangeProperties(this);
+ };
+
+ rangeProto.extractContents = function() {
+ var frag = this.nativeRange.extractContents();
+ updateRangeProperties(this);
+ return frag;
+ };
+ } else {
+ }
+
+ body.removeChild(el);
+ body = null;
+
+ /*--------------------------------------------------------------------------------------------------------*/
+
+ // Test for existence of createContextualFragment and delegate to it if it exists
+ if (util.isHostMethod(range, "createContextualFragment")) {
+ rangeProto.createContextualFragment = function(fragmentStr) {
+ return this.nativeRange.createContextualFragment(fragmentStr);
+ };
+ }
+
+ /*--------------------------------------------------------------------------------------------------------*/
+
+ // Clean up
+ getBody(document).removeChild(testTextNode);
+
+ rangeProto.getName = function() {
+ return "WrappedRange";
};
- }
- /*--------------------------------------------------------------------------------------------------------*/
+ api.WrappedRange = WrappedRange;
- // Test for existence of createContextualFragment and delegate to it if it exists
- if (api.util.isHostMethod(range, "createContextualFragment")) {
- rangeProto.createContextualFragment = function(fragmentStr) {
- return this.nativeRange.createContextualFragment(fragmentStr);
+ api.createNativeRange = function(doc) {
+ doc = getContentDocument(doc, module, "createNativeRange");
+ return doc.createRange();
};
- }
+ })();
+ }
- /*--------------------------------------------------------------------------------------------------------*/
+ if (api.features.implementsTextRange) {
+ /*
+ This is a workaround for a bug where IE returns the wrong container element from the TextRange's parentElement()
+ method. For example, in the following (where pipes denote the selection boundaries):
- // Clean up
- dom.getBody(document).removeChild(testTextNode);
- range.detach();
- range2.detach();
- })();
+ <ul id="ul"><li id="a">| a </li><li id="b"> b |</li></ul>
- api.createNativeRange = function(doc) {
- doc = doc || document;
- return doc.createRange();
- };
- } else if (api.features.implementsTextRange) {
- // This is a wrapper around a TextRange, providing full DOM Range functionality using rangy's DomRange as a
- // prototype
+ var range = document.selection.createRange();
+ alert(range.parentElement().id); // Should alert "ul" but alerts "b"
- WrappedRange = function(textRange) {
- this.textRange = textRange;
- this.refresh();
- };
+ This method returns the common ancestor node of the following:
+ - the parentElement() of the textRange
+ - the parentElement() of the textRange after calling collapse(true)
+ - the parentElement() of the textRange after calling collapse(false)
+ */
+ var getTextRangeContainerElement = function(textRange) {
+ var parentEl = textRange.parentElement();
+ var range = textRange.duplicate();
+ range.collapse(true);
+ var startEl = range.parentElement();
+ range = textRange.duplicate();
+ range.collapse(false);
+ var endEl = range.parentElement();
+ var startEndContainer = (startEl == endEl) ? startEl : dom.getCommonAncestor(startEl, endEl);
- WrappedRange.prototype = new DomRange(document);
+ return startEndContainer == parentEl ? startEndContainer : dom.getCommonAncestor(parentEl, startEndContainer);
+ };
- WrappedRange.prototype.refresh = function() {
- var start, end;
+ var textRangeIsCollapsed = function(textRange) {
+ return textRange.compareEndPoints("StartToEnd", textRange) == 0;
+ };
- // TextRange's parentElement() method cannot be trusted. getTextRangeContainerElement() works around that.
- var rangeContainerElement = getTextRangeContainerElement(this.textRange);
+ // Gets the boundary of a TextRange expressed as a node and an offset within that node. This function started
+ // out as an improved version of code found in Tim Cameron Ryan's IERange (http://code.google.com/p/ierange/)
+ // but has grown, fixing problems with line breaks in preformatted text, adding workaround for IE TextRange
+ // bugs, handling for inputs and images, plus optimizations.
+ var getTextRangeBoundaryPosition = function(textRange, wholeRangeContainerElement, isStart, isCollapsed, startInfo) {
+ var workingRange = textRange.duplicate();
+ workingRange.collapse(isStart);
+ var containerElement = workingRange.parentElement();
+
+ // Sometimes collapsing a TextRange that's at the start of a text node can move it into the previous node, so
+ // check for that
+ if (!dom.isOrIsAncestorOf(wholeRangeContainerElement, containerElement)) {
+ containerElement = wholeRangeContainerElement;
+ }
- if (textRangeIsCollapsed(this.textRange)) {
- end = start = getTextRangeBoundaryPosition(this.textRange, rangeContainerElement, true, true);
- } else {
- start = getTextRangeBoundaryPosition(this.textRange, rangeContainerElement, true, false);
- end = getTextRangeBoundaryPosition(this.textRange, rangeContainerElement, false, false);
- }
+ // Deal with nodes that cannot "contain rich HTML markup". In practice, this means form inputs, images and
+ // similar. See http://msdn.microsoft.com/en-us/library/aa703950%28VS.85%29.aspx
+ if (!containerElement.canHaveHTML) {
+ var pos = new DomPosition(containerElement.parentNode, dom.getNodeIndex(containerElement));
+ return {
+ boundaryPosition: pos,
+ nodeInfo: {
+ nodeIndex: pos.offset,
+ containerElement: pos.node
+ }
+ };
+ }
- this.setStart(start.node, start.offset);
- this.setEnd(end.node, end.offset);
- };
+ var workingNode = dom.getDocument(containerElement).createElement("span");
- DomRange.copyComparisonConstants(WrappedRange);
+ // Workaround for HTML5 Shiv's insane violation of document.createElement(). See Rangy issue 104 and HTML5
+ // Shiv issue 64: https://github.com/aFarkas/html5shiv/issues/64
+ if (workingNode.parentNode) {
+ dom.removeNode(workingNode);
+ }
- // Add WrappedRange as the Range property of the global object to allow expression like Range.END_TO_END to work
- var globalObj = (function() { return this; })();
- if (typeof globalObj.Range == "undefined") {
- globalObj.Range = WrappedRange;
- }
+ var comparison, workingComparisonType = isStart ? "StartToStart" : "StartToEnd";
+ var previousNode, nextNode, boundaryPosition, boundaryNode;
+ var start = (startInfo && startInfo.containerElement == containerElement) ? startInfo.nodeIndex : 0;
+ var childNodeCount = containerElement.childNodes.length;
+ var end = childNodeCount;
- api.createNativeRange = function(doc) {
- doc = doc || document;
- return doc.body.createTextRange();
- };
- }
+ // Check end first. Code within the loop assumes that the endth child node of the container is definitely
+ // after the range boundary.
+ var nodeIndex = end;
+
+ while (true) {
+ if (nodeIndex == childNodeCount) {
+ containerElement.appendChild(workingNode);
+ } else {
+ containerElement.insertBefore(workingNode, containerElement.childNodes[nodeIndex]);
+ }
+ workingRange.moveToElementText(workingNode);
+ comparison = workingRange.compareEndPoints(workingComparisonType, textRange);
+ if (comparison == 0 || start == end) {
+ break;
+ } else if (comparison == -1) {
+ if (end == start + 1) {
+ // We know the endth child node is after the range boundary, so we must be done.
+ break;
+ } else {
+ start = nodeIndex;
+ }
+ } else {
+ end = (end == start + 1) ? start : nodeIndex;
+ }
+ nodeIndex = Math.floor((start + end) / 2);
+ containerElement.removeChild(workingNode);
+ }
+
+
+ // We've now reached or gone past the boundary of the text range we're interested in
+ // so have identified the node we want
+ boundaryNode = workingNode.nextSibling;
+
+ if (comparison == -1 && boundaryNode && isCharacterDataNode(boundaryNode)) {
+ // This is a character data node (text, comment, cdata). The working range is collapsed at the start of
+ // the node containing the text range's boundary, so we move the end of the working range to the
+ // boundary point and measure the length of its text to get the boundary's offset within the node.
+ workingRange.setEndPoint(isStart ? "EndToStart" : "EndToEnd", textRange);
+
+ var offset;
+
+ if (/[\r\n]/.test(boundaryNode.data)) {
+ /*
+ For the particular case of a boundary within a text node containing rendered line breaks (within a
+ <pre> element, for example), we need a slightly complicated approach to get the boundary's offset in
+ IE. The facts:
+
+ - Each line break is represented as \r in the text node's data/nodeValue properties
+ - Each line break is represented as \r\n in the TextRange's 'text' property
+ - The 'text' property of the TextRange does not contain trailing line breaks
+
+ To get round the problem presented by the final fact above, we can use the fact that TextRange's
+ moveStart() and moveEnd() methods return the actual number of characters moved, which is not
+ necessarily the same as the number of characters it was instructed to move. The simplest approach is
+ to use this to store the characters moved when moving both the start and end of the range to the
+ start of the document body and subtracting the start offset from the end offset (the
+ "move-negative-gazillion" method). However, this is extremely slow when the document is large and
+ the range is near the end of it. Clearly doing the mirror image (i.e. moving the range boundaries to
+ the end of the document) has the same problem.
+
+ Another approach that works is to use moveStart() to move the start boundary of the range up to the
+ end boundary one character at a time and incrementing a counter with the value returned by the
+ moveStart() call. However, the check for whether the start boundary has reached the end boundary is
+ expensive, so this method is slow (although unlike "move-negative-gazillion" is largely unaffected
+ by the location of the range within the document).
+
+ The approach used below is a hybrid of the two methods above. It uses the fact that a string
+ containing the TextRange's 'text' property with each \r\n converted to a single \r character cannot
+ be longer than the text of the TextRange, so the start of the range is moved that length initially
+ and then a character at a time to make up for any trailing line breaks not contained in the 'text'
+ property. This has good performance in most situations compared to the previous two methods.
+ */
+ var tempRange = workingRange.duplicate();
+ var rangeLength = tempRange.text.replace(/\r\n/g, "\r").length;
+
+ offset = tempRange.moveStart("character", rangeLength);
+ while ( (comparison = tempRange.compareEndPoints("StartToEnd", tempRange)) == -1) {
+ offset++;
+ tempRange.moveStart("character", 1);
+ }
+ } else {
+ offset = workingRange.text.length;
+ }
+ boundaryPosition = new DomPosition(boundaryNode, offset);
+ } else {
- if (api.features.implementsTextRange) {
- WrappedRange.rangeToTextRange = function(range) {
- if (range.collapsed) {
- var tr = createBoundaryTextRange(new DomPosition(range.startContainer, range.startOffset), true);
+ // If the boundary immediately follows a character data node and this is the end boundary, we should favour
+ // a position within that, and likewise for a start boundary preceding a character data node
+ previousNode = (isCollapsed || !isStart) && workingNode.previousSibling;
+ nextNode = (isCollapsed || isStart) && workingNode.nextSibling;
+ if (nextNode && isCharacterDataNode(nextNode)) {
+ boundaryPosition = new DomPosition(nextNode, 0);
+ } else if (previousNode && isCharacterDataNode(previousNode)) {
+ boundaryPosition = new DomPosition(previousNode, previousNode.data.length);
+ } else {
+ boundaryPosition = new DomPosition(containerElement, dom.getNodeIndex(workingNode));
+ }
+ }
+ // Clean up
+ dom.removeNode(workingNode);
+ return {
+ boundaryPosition: boundaryPosition,
+ nodeInfo: {
+ nodeIndex: nodeIndex,
+ containerElement: containerElement
+ }
+ };
+ };
- return tr;
+ // Returns a TextRange representing the boundary of a TextRange expressed as a node and an offset within that
+ // node. This function started out as an optimized version of code found in Tim Cameron Ryan's IERange
+ // (http://code.google.com/p/ierange/)
+ var createBoundaryTextRange = function(boundaryPosition, isStart) {
+ var boundaryNode, boundaryParent, boundaryOffset = boundaryPosition.offset;
+ var doc = dom.getDocument(boundaryPosition.node);
+ var workingNode, childNodes, workingRange = getBody(doc).createTextRange();
+ var nodeIsDataNode = isCharacterDataNode(boundaryPosition.node);
+
+ if (nodeIsDataNode) {
+ boundaryNode = boundaryPosition.node;
+ boundaryParent = boundaryNode.parentNode;
+ } else {
+ childNodes = boundaryPosition.node.childNodes;
+ boundaryNode = (boundaryOffset < childNodes.length) ? childNodes[boundaryOffset] : null;
+ boundaryParent = boundaryPosition.node;
+ }
- //return createBoundaryTextRange(new DomPosition(range.startContainer, range.startOffset), true);
- } else {
- var startRange = createBoundaryTextRange(new DomPosition(range.startContainer, range.startOffset), true);
- var endRange = createBoundaryTextRange(new DomPosition(range.endContainer, range.endOffset), false);
- var textRange = dom.getDocument(range.startContainer).body.createTextRange();
- textRange.setEndPoint("StartToStart", startRange);
- textRange.setEndPoint("EndToEnd", endRange);
- return textRange;
- }
- };
- }
+ // Position the range immediately before the node containing the boundary
+ workingNode = doc.createElement("span");
- WrappedRange.prototype.getName = function() {
- return "WrappedRange";
- };
+ // Making the working element non-empty element persuades IE to consider the TextRange boundary to be within
+ // the element rather than immediately before or after it
+ workingNode.innerHTML = "&#feff;";
- api.WrappedRange = WrappedRange;
+ // insertBefore is supposed to work like appendChild if the second parameter is null. However, a bug report
+ // for IERange suggests that it can crash the browser: http://code.google.com/p/ierange/issues/detail?id=12
+ if (boundaryNode) {
+ boundaryParent.insertBefore(workingNode, boundaryNode);
+ } else {
+ boundaryParent.appendChild(workingNode);
+ }
- api.createRange = function(doc) {
- doc = doc || document;
- return new WrappedRange(api.createNativeRange(doc));
- };
+ workingRange.moveToElementText(workingNode);
+ workingRange.collapse(!isStart);
- api.createRangyRange = function(doc) {
- doc = doc || document;
- return new DomRange(doc);
- };
+ // Clean up
+ boundaryParent.removeChild(workingNode);
- api.createIframeRange = function(iframeEl) {
- return api.createRange(dom.getIframeDocument(iframeEl));
- };
+ // Move the working range to the text offset, if required
+ if (nodeIsDataNode) {
+ workingRange[isStart ? "moveStart" : "moveEnd"]("character", boundaryOffset);
+ }
- api.createIframeRangyRange = function(iframeEl) {
- return api.createRangyRange(dom.getIframeDocument(iframeEl));
- };
+ return workingRange;
+ };
+
+ /*------------------------------------------------------------------------------------------------------------*/
- api.addCreateMissingNativeApiListener(function(win) {
- var doc = win.document;
- if (typeof doc.createRange == "undefined") {
- doc.createRange = function() {
- return api.createRange(this);
+ // This is a wrapper around a TextRange, providing full DOM Range functionality using rangy's DomRange as a
+ // prototype
+
+ WrappedTextRange = function(textRange) {
+ this.textRange = textRange;
+ this.refresh();
};
- }
- doc = win = null;
- });
-});rangy.createModule("WrappedSelection", function(api, module) {
- // This will create a selection object wrapper that follows the Selection object found in the WHATWG draft DOM Range
- // spec (http://html5.org/specs/dom-range.html)
- api.requireModules( ["DomUtil", "DomRange", "WrappedRange"] );
+ WrappedTextRange.prototype = new DomRange(document);
+
+ WrappedTextRange.prototype.refresh = function() {
+ var start, end, startBoundary;
+
+ // TextRange's parentElement() method cannot be trusted. getTextRangeContainerElement() works around that.
+ var rangeContainerElement = getTextRangeContainerElement(this.textRange);
- api.config.checkSelectionRanges = true;
+ if (textRangeIsCollapsed(this.textRange)) {
+ end = start = getTextRangeBoundaryPosition(this.textRange, rangeContainerElement, true,
+ true).boundaryPosition;
+ } else {
+ startBoundary = getTextRangeBoundaryPosition(this.textRange, rangeContainerElement, true, false);
+ start = startBoundary.boundaryPosition;
+
+ // An optimization used here is that if the start and end boundaries have the same parent element, the
+ // search scope for the end boundary can be limited to exclude the portion of the element that precedes
+ // the start boundary
+ end = getTextRangeBoundaryPosition(this.textRange, rangeContainerElement, false, false,
+ startBoundary.nodeInfo).boundaryPosition;
+ }
- var BOOLEAN = "boolean",
- windowPropertyName = "_rangySelection",
- dom = api.dom,
- util = api.util,
- DomRange = api.DomRange,
- WrappedRange = api.WrappedRange,
- DOMException = api.DOMException,
- DomPosition = dom.DomPosition,
- getSelection,
- selectionIsCollapsed,
- CONTROL = "Control";
+ this.setStart(start.node, start.offset);
+ this.setEnd(end.node, end.offset);
+ };
+ WrappedTextRange.prototype.getName = function() {
+ return "WrappedTextRange";
+ };
+ DomRange.copyComparisonConstants(WrappedTextRange);
- function getWinSelection(winParam) {
- return (winParam || window).getSelection();
- }
+ var rangeToTextRange = function(range) {
+ if (range.collapsed) {
+ return createBoundaryTextRange(new DomPosition(range.startContainer, range.startOffset), true);
+ } else {
+ var startRange = createBoundaryTextRange(new DomPosition(range.startContainer, range.startOffset), true);
+ var endRange = createBoundaryTextRange(new DomPosition(range.endContainer, range.endOffset), false);
+ var textRange = getBody( DomRange.getRangeDocument(range) ).createTextRange();
+ textRange.setEndPoint("StartToStart", startRange);
+ textRange.setEndPoint("EndToEnd", endRange);
+ return textRange;
+ }
+ };
- function getDocSelection(winParam) {
- return (winParam || window).document.selection;
- }
+ WrappedTextRange.rangeToTextRange = rangeToTextRange;
+
+ WrappedTextRange.prototype.toTextRange = function() {
+ return rangeToTextRange(this);
+ };
+
+ api.WrappedTextRange = WrappedTextRange;
- // Test for the Range/TextRange and Selection features required
- // Test for ability to retrieve selection
- var implementsWinGetSelection = api.util.isHostMethod(window, "getSelection"),
- implementsDocSelection = api.util.isHostObject(document, "selection");
+ // IE 9 and above have both implementations and Rangy makes both available. The next few lines sets which
+ // implementation to use by default.
+ if (!api.features.implementsDomRange || api.config.preferTextRange) {
+ // Add WrappedTextRange as the Range property of the global object to allow expression like Range.END_TO_END to work
+ var globalObj = (function(f) { return f("return this;")(); })(Function);
+ if (typeof globalObj.Range == "undefined") {
+ globalObj.Range = WrappedTextRange;
+ }
- var useDocumentSelection = implementsDocSelection && (!implementsWinGetSelection || api.config.preferTextRange);
+ api.createNativeRange = function(doc) {
+ doc = getContentDocument(doc, module, "createNativeRange");
+ return getBody(doc).createTextRange();
+ };
- if (useDocumentSelection) {
- getSelection = getDocSelection;
- api.isSelectionValid = function(winParam) {
- var doc = (winParam || window).document, nativeSel = doc.selection;
+ api.WrappedRange = WrappedTextRange;
+ }
+ }
- // Check whether the selection TextRange is actually contained within the correct document
- return (nativeSel.type != "None" || dom.getDocument(nativeSel.createRange().parentElement()) == doc);
+ api.createRange = function(doc) {
+ doc = getContentDocument(doc, module, "createRange");
+ return new api.WrappedRange(api.createNativeRange(doc));
};
- } else if (implementsWinGetSelection) {
- getSelection = getWinSelection;
- api.isSelectionValid = function() {
- return true;
+
+ api.createRangyRange = function(doc) {
+ doc = getContentDocument(doc, module, "createRangyRange");
+ return new DomRange(doc);
};
- } else {
- module.fail("Neither document.selection or window.getSelection() detected.");
- }
- api.getNativeSelection = getSelection;
+ util.createAliasForDeprecatedMethod(api, "createIframeRange", "createRange");
+ util.createAliasForDeprecatedMethod(api, "createIframeRangyRange", "createRangyRange");
- var testSelection = getSelection();
- var testRange = api.createNativeRange(document);
- var body = dom.getBody(document);
+ api.addShimListener(function(win) {
+ var doc = win.document;
+ if (typeof doc.createRange == "undefined") {
+ doc.createRange = function() {
+ return api.createRange(doc);
+ };
+ }
+ doc = win = null;
+ });
+ });
- // Obtaining a range from a selection
- var selectionHasAnchorAndFocus = util.areHostObjects(testSelection, ["anchorNode", "focusNode"] &&
- util.areHostProperties(testSelection, ["anchorOffset", "focusOffset"]));
- api.features.selectionHasAnchorAndFocus = selectionHasAnchorAndFocus;
+ /*----------------------------------------------------------------------------------------------------------------*/
- // Test for existence of native selection extend() method
- var selectionHasExtend = util.isHostMethod(testSelection, "extend");
- api.features.selectionHasExtend = selectionHasExtend;
+ // This module creates a selection object wrapper that conforms as closely as possible to the Selection specification
+ // in the HTML Editing spec (http://dvcs.w3.org/hg/editing/raw-file/tip/editing.html#selections)
+ api.createCoreModule("WrappedSelection", ["DomRange", "WrappedRange"], function(api, module) {
+ api.config.checkSelectionRanges = true;
+
+ var BOOLEAN = "boolean";
+ var NUMBER = "number";
+ var dom = api.dom;
+ var util = api.util;
+ var isHostMethod = util.isHostMethod;
+ var DomRange = api.DomRange;
+ var WrappedRange = api.WrappedRange;
+ var DOMException = api.DOMException;
+ var DomPosition = dom.DomPosition;
+ var getNativeSelection;
+ var selectionIsCollapsed;
+ var features = api.features;
+ var CONTROL = "Control";
+ var getDocument = dom.getDocument;
+ var getBody = dom.getBody;
+ var rangesEqual = DomRange.rangesEqual;
+
+
+ // Utility function to support direction parameters in the API that may be a string ("backward", "backwards",
+ // "forward" or "forwards") or a Boolean (true for backwards).
+ function isDirectionBackward(dir) {
+ return (typeof dir == "string") ? /^backward(s)?$/i.test(dir) : !!dir;
+ }
+
+ function getWindow(win, methodName) {
+ if (!win) {
+ return window;
+ } else if (dom.isWindow(win)) {
+ return win;
+ } else if (win instanceof WrappedSelection) {
+ return win.win;
+ } else {
+ var doc = dom.getContentDocument(win, module, methodName);
+ return dom.getWindow(doc);
+ }
+ }
- // Test if rangeCount exists
- var selectionHasRangeCount = (typeof testSelection.rangeCount == "number");
- api.features.selectionHasRangeCount = selectionHasRangeCount;
+ function getWinSelection(winParam) {
+ return getWindow(winParam, "getWinSelection").getSelection();
+ }
- var selectionSupportsMultipleRanges = false;
- var collapsedNonEditableSelectionsSupported = true;
+ function getDocSelection(winParam) {
+ return getWindow(winParam, "getDocSelection").document.selection;
+ }
- if (util.areHostMethods(testSelection, ["addRange", "getRangeAt", "removeAllRanges"]) &&
- typeof testSelection.rangeCount == "number" && api.features.implementsDomRange) {
+ function winSelectionIsBackward(sel) {
+ var backward = false;
+ if (sel.anchorNode) {
+ backward = (dom.comparePoints(sel.anchorNode, sel.anchorOffset, sel.focusNode, sel.focusOffset) == 1);
+ }
+ return backward;
+ }
- (function() {
- var iframe = document.createElement("iframe");
- iframe.frameBorder = 0;
- iframe.style.position = "absolute";
- iframe.style.left = "-10000px";
- body.appendChild(iframe);
-
- var iframeDoc = dom.getIframeDocument(iframe);
- iframeDoc.open();
- iframeDoc.write("<html><head></head><body>12</body></html>");
- iframeDoc.close();
-
- var sel = dom.getIframeWindow(iframe).getSelection();
- var docEl = iframeDoc.documentElement;
- var iframeBody = docEl.lastChild, textNode = iframeBody.firstChild;
-
- // Test whether the native selection will allow a collapsed selection within a non-editable element
- var r1 = iframeDoc.createRange();
- r1.setStart(textNode, 1);
- r1.collapse(true);
- sel.addRange(r1);
- collapsedNonEditableSelectionsSupported = (sel.rangeCount == 1);
- sel.removeAllRanges();
+ // Test for the Range/TextRange and Selection features required
+ // Test for ability to retrieve selection
+ var implementsWinGetSelection = isHostMethod(window, "getSelection"),
+ implementsDocSelection = util.isHostObject(document, "selection");
- // Test whether the native selection is capable of supporting multiple ranges
- var r2 = r1.cloneRange();
- r1.setStart(textNode, 0);
- r2.setEnd(textNode, 2);
- sel.addRange(r1);
- sel.addRange(r2);
+ features.implementsWinGetSelection = implementsWinGetSelection;
+ features.implementsDocSelection = implementsDocSelection;
- selectionSupportsMultipleRanges = (sel.rangeCount == 2);
+ var useDocumentSelection = implementsDocSelection && (!implementsWinGetSelection || api.config.preferTextRange);
- // Clean up
- r1.detach();
- r2.detach();
+ if (useDocumentSelection) {
+ getNativeSelection = getDocSelection;
+ api.isSelectionValid = function(winParam) {
+ var doc = getWindow(winParam, "isSelectionValid").document, nativeSel = doc.selection;
- body.removeChild(iframe);
- })();
- }
+ // Check whether the selection TextRange is actually contained within the correct document
+ return (nativeSel.type != "None" || getDocument(nativeSel.createRange().parentElement()) == doc);
+ };
+ } else if (implementsWinGetSelection) {
+ getNativeSelection = getWinSelection;
+ api.isSelectionValid = function() {
+ return true;
+ };
+ } else {
+ module.fail("Neither document.selection or window.getSelection() detected.");
+ return false;
+ }
- api.features.selectionSupportsMultipleRanges = selectionSupportsMultipleRanges;
- api.features.collapsedNonEditableSelectionsSupported = collapsedNonEditableSelectionsSupported;
+ api.getNativeSelection = getNativeSelection;
- // ControlRanges
- var implementsControlRange = false, testControlRange;
+ var testSelection = getNativeSelection();
- if (body && util.isHostMethod(body, "createControlRange")) {
- testControlRange = body.createControlRange();
- if (util.areHostProperties(testControlRange, ["item", "add"])) {
- implementsControlRange = true;
+ // In Firefox, the selection is null in an iframe with display: none. See issue #138.
+ if (!testSelection) {
+ module.fail("Native selection was null (possibly issue 138?)");
+ return false;
}
- }
- api.features.implementsControlRange = implementsControlRange;
- // Selection collapsedness
- if (selectionHasAnchorAndFocus) {
- selectionIsCollapsed = function(sel) {
- return sel.anchorNode === sel.focusNode && sel.anchorOffset === sel.focusOffset;
- };
- } else {
- selectionIsCollapsed = function(sel) {
- return sel.rangeCount ? sel.getRangeAt(sel.rangeCount - 1).collapsed : false;
- };
- }
+ var testRange = api.createNativeRange(document);
+ var body = getBody(document);
+
+ // Obtaining a range from a selection
+ var selectionHasAnchorAndFocus = util.areHostProperties(testSelection,
+ ["anchorNode", "focusNode", "anchorOffset", "focusOffset"]);
+
+ features.selectionHasAnchorAndFocus = selectionHasAnchorAndFocus;
+
+ // Test for existence of native selection extend() method
+ var selectionHasExtend = isHostMethod(testSelection, "extend");
+ features.selectionHasExtend = selectionHasExtend;
+
+ // Test if rangeCount exists
+ var selectionHasRangeCount = (typeof testSelection.rangeCount == NUMBER);
+ features.selectionHasRangeCount = selectionHasRangeCount;
+
+ var selectionSupportsMultipleRanges = false;
+ var collapsedNonEditableSelectionsSupported = true;
+
+ var addRangeBackwardToNative = selectionHasExtend ?
+ function(nativeSelection, range) {
+ var doc = DomRange.getRangeDocument(range);
+ var endRange = api.createRange(doc);
+ endRange.collapseToPoint(range.endContainer, range.endOffset);
+ nativeSelection.addRange(getNativeRange(endRange));
+ nativeSelection.extend(range.startContainer, range.startOffset);
+ } : null;
+
+ if (util.areHostMethods(testSelection, ["addRange", "getRangeAt", "removeAllRanges"]) &&
+ typeof testSelection.rangeCount == NUMBER && features.implementsDomRange) {
+
+ (function() {
+ // Previously an iframe was used but this caused problems in some circumstances in IE, so tests are
+ // performed on the current document's selection. See issue 109.
+
+ // Note also that if a selection previously existed, it is wiped and later restored by these tests. This
+ // will result in the selection direction begin reversed if the original selection was backwards and the
+ // browser does not support setting backwards selections (Internet Explorer, I'm looking at you).
+ var sel = window.getSelection();
+ if (sel) {
+ // Store the current selection
+ var originalSelectionRangeCount = sel.rangeCount;
+ var selectionHasMultipleRanges = (originalSelectionRangeCount > 1);
+ var originalSelectionRanges = [];
+ var originalSelectionBackward = winSelectionIsBackward(sel);
+ for (var i = 0; i < originalSelectionRangeCount; ++i) {
+ originalSelectionRanges[i] = sel.getRangeAt(i);
+ }
- function updateAnchorAndFocusFromRange(sel, range, backwards) {
- var anchorPrefix = backwards ? "end" : "start", focusPrefix = backwards ? "start" : "end";
- sel.anchorNode = range[anchorPrefix + "Container"];
- sel.anchorOffset = range[anchorPrefix + "Offset"];
- sel.focusNode = range[focusPrefix + "Container"];
- sel.focusOffset = range[focusPrefix + "Offset"];
- }
+ // Create some test elements
+ var testEl = dom.createTestElement(document, "", false);
+ var textNode = testEl.appendChild( document.createTextNode("\u00a0\u00a0\u00a0") );
+
+ // Test whether the native selection will allow a collapsed selection within a non-editable element
+ var r1 = document.createRange();
+
+ r1.setStart(textNode, 1);
+ r1.collapse(true);
+ sel.removeAllRanges();
+ sel.addRange(r1);
+ collapsedNonEditableSelectionsSupported = (sel.rangeCount == 1);
+ sel.removeAllRanges();
+
+ // Test whether the native selection is capable of supporting multiple ranges.
+ if (!selectionHasMultipleRanges) {
+ // Doing the original feature test here in Chrome 36 (and presumably later versions) prints a
+ // console error of "Discontiguous selection is not supported." that cannot be suppressed. There's
+ // nothing we can do about this while retaining the feature test so we have to resort to a browser
+ // sniff. I'm not happy about it. See
+ // https://code.google.com/p/chromium/issues/detail?id=399791
+ var chromeMatch = window.navigator.appVersion.match(/Chrome\/(.*?) /);
+ if (chromeMatch && parseInt(chromeMatch[1]) >= 36) {
+ selectionSupportsMultipleRanges = false;
+ } else {
+ var r2 = r1.cloneRange();
+ r1.setStart(textNode, 0);
+ r2.setEnd(textNode, 3);
+ r2.setStart(textNode, 2);
+ sel.addRange(r1);
+ sel.addRange(r2);
+ selectionSupportsMultipleRanges = (sel.rangeCount == 2);
+ }
+ }
- function updateAnchorAndFocusFromNativeSelection(sel) {
- var nativeSel = sel.nativeSelection;
- sel.anchorNode = nativeSel.anchorNode;
- sel.anchorOffset = nativeSel.anchorOffset;
- sel.focusNode = nativeSel.focusNode;
- sel.focusOffset = nativeSel.focusOffset;
- }
+ // Clean up
+ dom.removeNode(testEl);
+ sel.removeAllRanges();
+
+ for (i = 0; i < originalSelectionRangeCount; ++i) {
+ if (i == 0 && originalSelectionBackward) {
+ if (addRangeBackwardToNative) {
+ addRangeBackwardToNative(sel, originalSelectionRanges[i]);
+ } else {
+ api.warn("Rangy initialization: original selection was backwards but selection has been restored forwards because the browser does not support Selection.extend");
+ sel.addRange(originalSelectionRanges[i]);
+ }
+ } else {
+ sel.addRange(originalSelectionRanges[i]);
+ }
+ }
+ }
+ })();
+ }
- function updateEmptySelection(sel) {
- sel.anchorNode = sel.focusNode = null;
- sel.anchorOffset = sel.focusOffset = 0;
- sel.rangeCount = 0;
- sel.isCollapsed = true;
- sel._ranges.length = 0;
- }
+ features.selectionSupportsMultipleRanges = selectionSupportsMultipleRanges;
+ features.collapsedNonEditableSelectionsSupported = collapsedNonEditableSelectionsSupported;
- function getNativeRange(range) {
- var nativeRange;
- if (range instanceof DomRange) {
- nativeRange = range._selectionNativeRange;
- if (!nativeRange) {
- nativeRange = api.createNativeRange(dom.getDocument(range.startContainer));
- nativeRange.setEnd(range.endContainer, range.endOffset);
- nativeRange.setStart(range.startContainer, range.startOffset);
- range._selectionNativeRange = nativeRange;
- range.attachListener("detach", function() {
+ // ControlRanges
+ var implementsControlRange = false, testControlRange;
- this._selectionNativeRange = null;
- });
+ if (body && isHostMethod(body, "createControlRange")) {
+ testControlRange = body.createControlRange();
+ if (util.areHostProperties(testControlRange, ["item", "add"])) {
+ implementsControlRange = true;
}
- } else if (range instanceof WrappedRange) {
- nativeRange = range.nativeRange;
- } else if (api.features.implementsDomRange && (range instanceof dom.getWindow(range.startContainer).Range)) {
- nativeRange = range;
}
- return nativeRange;
- }
+ features.implementsControlRange = implementsControlRange;
- function rangeContainsSingleElement(rangeNodes) {
- if (!rangeNodes.length || rangeNodes[0].nodeType != 1) {
- return false;
+ // Selection collapsedness
+ if (selectionHasAnchorAndFocus) {
+ selectionIsCollapsed = function(sel) {
+ return sel.anchorNode === sel.focusNode && sel.anchorOffset === sel.focusOffset;
+ };
+ } else {
+ selectionIsCollapsed = function(sel) {
+ return sel.rangeCount ? sel.getRangeAt(sel.rangeCount - 1).collapsed : false;
+ };
}
- for (var i = 1, len = rangeNodes.length; i < len; ++i) {
- if (!dom.isAncestorOf(rangeNodes[0], rangeNodes[i])) {
+
+ function updateAnchorAndFocusFromRange(sel, range, backward) {
+ var anchorPrefix = backward ? "end" : "start", focusPrefix = backward ? "start" : "end";
+ sel.anchorNode = range[anchorPrefix + "Container"];
+ sel.anchorOffset = range[anchorPrefix + "Offset"];
+ sel.focusNode = range[focusPrefix + "Container"];
+ sel.focusOffset = range[focusPrefix + "Offset"];
+ }
+
+ function updateAnchorAndFocusFromNativeSelection(sel) {
+ var nativeSel = sel.nativeSelection;
+ sel.anchorNode = nativeSel.anchorNode;
+ sel.anchorOffset = nativeSel.anchorOffset;
+ sel.focusNode = nativeSel.focusNode;
+ sel.focusOffset = nativeSel.focusOffset;
+ }
+
+ function updateEmptySelection(sel) {
+ sel.anchorNode = sel.focusNode = null;
+ sel.anchorOffset = sel.focusOffset = 0;
+ sel.rangeCount = 0;
+ sel.isCollapsed = true;
+ sel._ranges.length = 0;
+ }
+
+ function getNativeRange(range) {
+ var nativeRange;
+ if (range instanceof DomRange) {
+ nativeRange = api.createNativeRange(range.getDocument());
+ nativeRange.setEnd(range.endContainer, range.endOffset);
+ nativeRange.setStart(range.startContainer, range.startOffset);
+ } else if (range instanceof WrappedRange) {
+ nativeRange = range.nativeRange;
+ } else if (features.implementsDomRange && (range instanceof dom.getWindow(range.startContainer).Range)) {
+ nativeRange = range;
+ }
+ return nativeRange;
+ }
+
+ function rangeContainsSingleElement(rangeNodes) {
+ if (!rangeNodes.length || rangeNodes[0].nodeType != 1) {
return false;
}
+ for (var i = 1, len = rangeNodes.length; i < len; ++i) {
+ if (!dom.isAncestorOf(rangeNodes[0], rangeNodes[i])) {
+ return false;
+ }
+ }
+ return true;
}
- return true;
- }
- function getSingleElementFromRange(range) {
- var nodes = range.getNodes();
- if (!rangeContainsSingleElement(nodes)) {
- throw new Error("getSingleElementFromRange: range " + range.inspect() + " did not consist of a single element");
+ function getSingleElementFromRange(range) {
+ var nodes = range.getNodes();
+ if (!rangeContainsSingleElement(nodes)) {
+ throw module.createError("getSingleElementFromRange: range " + range.inspect() + " did not consist of a single element");
+ }
+ return nodes[0];
}
- return nodes[0];
- }
- function isTextRange(range) {
- return !!range && typeof range.text != "undefined";
- }
+ // Simple, quick test which only needs to distinguish between a TextRange and a ControlRange
+ function isTextRange(range) {
+ return !!range && typeof range.text != "undefined";
+ }
- function updateFromTextRange(sel, range) {
- // Create a Range from the selected TextRange
- var wrappedRange = new WrappedRange(range);
- sel._ranges = [wrappedRange];
+ function updateFromTextRange(sel, range) {
+ // Create a Range from the selected TextRange
+ var wrappedRange = new WrappedRange(range);
+ sel._ranges = [wrappedRange];
- updateAnchorAndFocusFromRange(sel, wrappedRange, false);
- sel.rangeCount = 1;
- sel.isCollapsed = wrappedRange.collapsed;
- }
+ updateAnchorAndFocusFromRange(sel, wrappedRange, false);
+ sel.rangeCount = 1;
+ sel.isCollapsed = wrappedRange.collapsed;
+ }
- function updateControlSelection(sel) {
- // Update the wrapped selection based on what's now in the native selection
- sel._ranges.length = 0;
- if (sel.docSelection.type == "None") {
- updateEmptySelection(sel);
- } else {
- var controlRange = sel.docSelection.createRange();
- if (isTextRange(controlRange)) {
- // This case (where the selection type is "Control" and calling createRange() on the selection returns
- // a TextRange) can happen in IE 9. It happens, for example, when all elements in the selected
- // ControlRange have been removed from the ControlRange and removed from the document.
- updateFromTextRange(sel, controlRange);
+ function updateControlSelection(sel) {
+ // Update the wrapped selection based on what's now in the native selection
+ sel._ranges.length = 0;
+ if (sel.docSelection.type == "None") {
+ updateEmptySelection(sel);
} else {
- sel.rangeCount = controlRange.length;
- var range, doc = dom.getDocument(controlRange.item(0));
- for (var i = 0; i < sel.rangeCount; ++i) {
- range = api.createRange(doc);
- range.selectNode(controlRange.item(i));
- sel._ranges.push(range);
+ var controlRange = sel.docSelection.createRange();
+ if (isTextRange(controlRange)) {
+ // This case (where the selection type is "Control" and calling createRange() on the selection returns
+ // a TextRange) can happen in IE 9. It happens, for example, when all elements in the selected
+ // ControlRange have been removed from the ControlRange and removed from the document.
+ updateFromTextRange(sel, controlRange);
+ } else {
+ sel.rangeCount = controlRange.length;
+ var range, doc = getDocument(controlRange.item(0));
+ for (var i = 0; i < sel.rangeCount; ++i) {
+ range = api.createRange(doc);
+ range.selectNode(controlRange.item(i));
+ sel._ranges.push(range);
+ }
+ sel.isCollapsed = sel.rangeCount == 1 && sel._ranges[0].collapsed;
+ updateAnchorAndFocusFromRange(sel, sel._ranges[sel.rangeCount - 1], false);
}
- sel.isCollapsed = sel.rangeCount == 1 && sel._ranges[0].collapsed;
- updateAnchorAndFocusFromRange(sel, sel._ranges[sel.rangeCount - 1], false);
}
}
- }
- function addRangeToControlSelection(sel, range) {
- var controlRange = sel.docSelection.createRange();
- var rangeElement = getSingleElementFromRange(range);
+ function addRangeToControlSelection(sel, range) {
+ var controlRange = sel.docSelection.createRange();
+ var rangeElement = getSingleElementFromRange(range);
- // Create a new ControlRange containing all the elements in the selected ControlRange plus the element
- // contained by the supplied range
- var doc = dom.getDocument(controlRange.item(0));
- var newControlRange = dom.getBody(doc).createControlRange();
- for (var i = 0, len = controlRange.length; i < len; ++i) {
- newControlRange.add(controlRange.item(i));
+ // Create a new ControlRange containing all the elements in the selected ControlRange plus the element
+ // contained by the supplied range
+ var doc = getDocument(controlRange.item(0));
+ var newControlRange = getBody(doc).createControlRange();
+ for (var i = 0, len = controlRange.length; i < len; ++i) {
+ newControlRange.add(controlRange.item(i));
+ }
+ try {
+ newControlRange.add(rangeElement);
+ } catch (ex) {
+ throw module.createError("addRange(): Element within the specified Range could not be added to control selection (does it have layout?)");
+ }
+ newControlRange.select();
+
+ // Update the wrapped selection based on what's now in the native selection
+ updateControlSelection(sel);
}
- try {
- newControlRange.add(rangeElement);
- } catch (ex) {
- throw new Error("addRange(): Element within the specified Range could not be added to control selection (does it have layout?)");
+
+ var getSelectionRangeAt;
+
+ if (isHostMethod(testSelection, "getRangeAt")) {
+ // try/catch is present because getRangeAt() must have thrown an error in some browser and some situation.
+ // Unfortunately, I didn't write a comment about the specifics and am now scared to take it out. Let that be a
+ // lesson to us all, especially me.
+ getSelectionRangeAt = function(sel, index) {
+ try {
+ return sel.getRangeAt(index);
+ } catch (ex) {
+ return null;
+ }
+ };
+ } else if (selectionHasAnchorAndFocus) {
+ getSelectionRangeAt = function(sel) {
+ var doc = getDocument(sel.anchorNode);
+ var range = api.createRange(doc);
+ range.setStartAndEnd(sel.anchorNode, sel.anchorOffset, sel.focusNode, sel.focusOffset);
+
+ // Handle the case when the selection was selected backwards (from the end to the start in the
+ // document)
+ if (range.collapsed !== this.isCollapsed) {
+ range.setStartAndEnd(sel.focusNode, sel.focusOffset, sel.anchorNode, sel.anchorOffset);
+ }
+
+ return range;
+ };
}
- newControlRange.select();
- // Update the wrapped selection based on what's now in the native selection
- updateControlSelection(sel);
- }
+ function WrappedSelection(selection, docSelection, win) {
+ this.nativeSelection = selection;
+ this.docSelection = docSelection;
+ this._ranges = [];
+ this.win = win;
+ this.refresh();
+ }
- var getSelectionRangeAt;
+ WrappedSelection.prototype = api.selectionPrototype;
- if (util.isHostMethod(testSelection, "getRangeAt")) {
- getSelectionRangeAt = function(sel, index) {
- try {
- return sel.getRangeAt(index);
- } catch(ex) {
- return null;
+ function deleteProperties(sel) {
+ sel.win = sel.anchorNode = sel.focusNode = sel._ranges = null;
+ sel.rangeCount = sel.anchorOffset = sel.focusOffset = 0;
+ sel.detached = true;
+ }
+
+ var cachedRangySelections = [];
+
+ function actOnCachedSelection(win, action) {
+ var i = cachedRangySelections.length, cached, sel;
+ while (i--) {
+ cached = cachedRangySelections[i];
+ sel = cached.selection;
+ if (action == "deleteAll") {
+ deleteProperties(sel);
+ } else if (cached.win == win) {
+ if (action == "delete") {
+ cachedRangySelections.splice(i, 1);
+ return true;
+ } else {
+ return sel;
+ }
+ }
}
- };
- } else if (selectionHasAnchorAndFocus) {
- getSelectionRangeAt = function(sel) {
- var doc = dom.getDocument(sel.anchorNode);
- var range = api.createRange(doc);
- range.setStart(sel.anchorNode, sel.anchorOffset);
- range.setEnd(sel.focusNode, sel.focusOffset);
+ if (action == "deleteAll") {
+ cachedRangySelections.length = 0;
+ }
+ return null;
+ }
- // Handle the case when the selection was selected backwards (from the end to the start in the
- // document)
- if (range.collapsed !== this.isCollapsed) {
- range.setStart(sel.focusNode, sel.focusOffset);
- range.setEnd(sel.anchorNode, sel.anchorOffset);
+ var getSelection = function(win) {
+ // Check if the parameter is a Rangy Selection object
+ if (win && win instanceof WrappedSelection) {
+ win.refresh();
+ return win;
}
- return range;
- };
- }
+ win = getWindow(win, "getNativeSelection");
- /**
- * @constructor
- */
- function WrappedSelection(selection, docSelection, win) {
- this.nativeSelection = selection;
- this.docSelection = docSelection;
- this._ranges = [];
- this.win = win;
- this.refresh();
- }
+ var sel = actOnCachedSelection(win);
+ var nativeSel = getNativeSelection(win), docSel = implementsDocSelection ? getDocSelection(win) : null;
+ if (sel) {
+ sel.nativeSelection = nativeSel;
+ sel.docSelection = docSel;
+ sel.refresh();
+ } else {
+ sel = new WrappedSelection(nativeSel, docSel, win);
+ cachedRangySelections.push( { win: win, selection: sel } );
+ }
+ return sel;
+ };
- api.getSelection = function(win) {
- win = win || window;
- var sel = win[windowPropertyName];
- var nativeSel = getSelection(win), docSel = implementsDocSelection ? getDocSelection(win) : null;
- if (sel) {
- sel.nativeSelection = nativeSel;
- sel.docSelection = docSel;
- sel.refresh(win);
- } else {
- sel = new WrappedSelection(nativeSel, docSel, win);
- win[windowPropertyName] = sel;
- }
- return sel;
- };
+ api.getSelection = getSelection;
- api.getIframeSelection = function(iframeEl) {
- return api.getSelection(dom.getIframeWindow(iframeEl));
- };
+ util.createAliasForDeprecatedMethod(api, "getIframeSelection", "getSelection");
- var selProto = WrappedSelection.prototype;
+ var selProto = WrappedSelection.prototype;
- function createControlSelection(sel, ranges) {
- // Ensure that the selection becomes of type "Control"
- var doc = dom.getDocument(ranges[0].startContainer);
- var controlRange = dom.getBody(doc).createControlRange();
- for (var i = 0, el; i < rangeCount; ++i) {
- el = getSingleElementFromRange(ranges[i]);
- try {
- controlRange.add(el);
- } catch (ex) {
- throw new Error("setRanges(): Element within the one of the specified Ranges could not be added to control selection (does it have layout?)");
+ function createControlSelection(sel, ranges) {
+ // Ensure that the selection becomes of type "Control"
+ var doc = getDocument(ranges[0].startContainer);
+ var controlRange = getBody(doc).createControlRange();
+ for (var i = 0, el, len = ranges.length; i < len; ++i) {
+ el = getSingleElementFromRange(ranges[i]);
+ try {
+ controlRange.add(el);
+ } catch (ex) {
+ throw module.createError("setRanges(): Element within one of the specified Ranges could not be added to control selection (does it have layout?)");
+ }
}
- }
- controlRange.select();
+ controlRange.select();
- // Update the wrapped selection based on what's now in the native selection
- updateControlSelection(sel);
- }
+ // Update the wrapped selection based on what's now in the native selection
+ updateControlSelection(sel);
+ }
- // Selecting a range
- if (!useDocumentSelection && selectionHasAnchorAndFocus && util.areHostMethods(testSelection, ["removeAllRanges", "addRange"])) {
- selProto.removeAllRanges = function() {
- this.nativeSelection.removeAllRanges();
- updateEmptySelection(this);
- };
+ // Selecting a range
+ if (!useDocumentSelection && selectionHasAnchorAndFocus && util.areHostMethods(testSelection, ["removeAllRanges", "addRange"])) {
+ selProto.removeAllRanges = function() {
+ this.nativeSelection.removeAllRanges();
+ updateEmptySelection(this);
+ };
- var addRangeBackwards = function(sel, range) {
- var doc = DomRange.getRangeDocument(range);
- var endRange = api.createRange(doc);
- endRange.collapseToPoint(range.endContainer, range.endOffset);
- sel.nativeSelection.addRange(getNativeRange(endRange));
- sel.nativeSelection.extend(range.startContainer, range.startOffset);
- sel.refresh();
- };
+ var addRangeBackward = function(sel, range) {
+ addRangeBackwardToNative(sel.nativeSelection, range);
+ sel.refresh();
+ };
- if (selectionHasRangeCount) {
- selProto.addRange = function(range, backwards) {
- if (implementsControlRange && implementsDocSelection && this.docSelection.type == CONTROL) {
- addRangeToControlSelection(this, range);
- } else {
- if (backwards && selectionHasExtend) {
- addRangeBackwards(this, range);
+ if (selectionHasRangeCount) {
+ selProto.addRange = function(range, direction) {
+ if (implementsControlRange && implementsDocSelection && this.docSelection.type == CONTROL) {
+ addRangeToControlSelection(this, range);
} else {
- var previousRangeCount;
- if (selectionSupportsMultipleRanges) {
- previousRangeCount = this.rangeCount;
+ if (isDirectionBackward(direction) && selectionHasExtend) {
+ addRangeBackward(this, range);
} else {
- this.removeAllRanges();
- previousRangeCount = 0;
- }
- this.nativeSelection.addRange(getNativeRange(range));
+ var previousRangeCount;
+ if (selectionSupportsMultipleRanges) {
+ previousRangeCount = this.rangeCount;
+ } else {
+ this.removeAllRanges();
+ previousRangeCount = 0;
+ }
+ // Clone the native range so that changing the selected range does not affect the selection.
+ // This is contrary to the spec but is the only way to achieve consistency between browsers. See
+ // issue 80.
+ var clonedNativeRange = getNativeRange(range).cloneRange();
+ try {
+ this.nativeSelection.addRange(clonedNativeRange);
+ } catch (ex) {
+ }
- // Check whether adding the range was successful
- this.rangeCount = this.nativeSelection.rangeCount;
+ // Check whether adding the range was successful
+ this.rangeCount = this.nativeSelection.rangeCount;
- if (this.rangeCount == previousRangeCount + 1) {
- // The range was added successfully
+ if (this.rangeCount == previousRangeCount + 1) {
+ // The range was added successfully
- // Check whether the range that we added to the selection is reflected in the last range extracted from
- // the selection
- if (api.config.checkSelectionRanges) {
- var nativeRange = getSelectionRangeAt(this.nativeSelection, this.rangeCount - 1);
- if (nativeRange && !DomRange.rangesEqual(nativeRange, range)) {
- // Happens in WebKit with, for example, a selection placed at the start of a text node
- range = new WrappedRange(nativeRange);
+ // Check whether the range that we added to the selection is reflected in the last range extracted from
+ // the selection
+ if (api.config.checkSelectionRanges) {
+ var nativeRange = getSelectionRangeAt(this.nativeSelection, this.rangeCount - 1);
+ if (nativeRange && !rangesEqual(nativeRange, range)) {
+ // Happens in WebKit with, for example, a selection placed at the start of a text node
+ range = new WrappedRange(nativeRange);
+ }
}
+ this._ranges[this.rangeCount - 1] = range;
+ updateAnchorAndFocusFromRange(this, range, selectionIsBackward(this.nativeSelection));
+ this.isCollapsed = selectionIsCollapsed(this);
+ } else {
+ // The range was not added successfully. The simplest thing is to refresh
+ this.refresh();
}
- this._ranges[this.rangeCount - 1] = range;
- updateAnchorAndFocusFromRange(this, range, selectionIsBackwards(this.nativeSelection));
- this.isCollapsed = selectionIsCollapsed(this);
- } else {
- // The range was not added successfully. The simplest thing is to refresh
- this.refresh();
}
}
+ };
+ } else {
+ selProto.addRange = function(range, direction) {
+ if (isDirectionBackward(direction) && selectionHasExtend) {
+ addRangeBackward(this, range);
+ } else {
+ this.nativeSelection.addRange(getNativeRange(range));
+ this.refresh();
+ }
+ };
+ }
+
+ selProto.setRanges = function(ranges) {
+ if (implementsControlRange && implementsDocSelection && ranges.length > 1) {
+ createControlSelection(this, ranges);
+ } else {
+ this.removeAllRanges();
+ for (var i = 0, len = ranges.length; i < len; ++i) {
+ this.addRange(ranges[i]);
+ }
}
};
- } else {
- selProto.addRange = function(range, backwards) {
- if (backwards && selectionHasExtend) {
- addRangeBackwards(this, range);
+ } else if (isHostMethod(testSelection, "empty") && isHostMethod(testRange, "select") &&
+ implementsControlRange && useDocumentSelection) {
+
+ selProto.removeAllRanges = function() {
+ // Added try/catch as fix for issue #21
+ try {
+ this.docSelection.empty();
+
+ // Check for empty() not working (issue #24)
+ if (this.docSelection.type != "None") {
+ // Work around failure to empty a control selection by instead selecting a TextRange and then
+ // calling empty()
+ var doc;
+ if (this.anchorNode) {
+ doc = getDocument(this.anchorNode);
+ } else if (this.docSelection.type == CONTROL) {
+ var controlRange = this.docSelection.createRange();
+ if (controlRange.length) {
+ doc = getDocument( controlRange.item(0) );
+ }
+ }
+ if (doc) {
+ var textRange = getBody(doc).createTextRange();
+ textRange.select();
+ this.docSelection.empty();
+ }
+ }
+ } catch(ex) {}
+ updateEmptySelection(this);
+ };
+
+ selProto.addRange = function(range) {
+ if (this.docSelection.type == CONTROL) {
+ addRangeToControlSelection(this, range);
} else {
- this.nativeSelection.addRange(getNativeRange(range));
- this.refresh();
+ api.WrappedTextRange.rangeToTextRange(range).select();
+ this._ranges[0] = range;
+ this.rangeCount = 1;
+ this.isCollapsed = this._ranges[0].collapsed;
+ updateAnchorAndFocusFromRange(this, range, false);
}
};
- }
- selProto.setRanges = function(ranges) {
- if (implementsControlRange && ranges.length > 1) {
- createControlSelection(this, ranges);
- } else {
+ selProto.setRanges = function(ranges) {
this.removeAllRanges();
- for (var i = 0, len = ranges.length; i < len; ++i) {
- this.addRange(ranges[i]);
+ var rangeCount = ranges.length;
+ if (rangeCount > 1) {
+ createControlSelection(this, ranges);
+ } else if (rangeCount) {
+ this.addRange(ranges[0]);
}
+ };
+ } else {
+ module.fail("No means of selecting a Range or TextRange was found");
+ return false;
+ }
+
+ selProto.getRangeAt = function(index) {
+ if (index < 0 || index >= this.rangeCount) {
+ throw new DOMException("INDEX_SIZE_ERR");
+ } else {
+ // Clone the range to preserve selection-range independence. See issue 80.
+ return this._ranges[index].cloneRange();
}
};
- } else if (util.isHostMethod(testSelection, "empty") && util.isHostMethod(testRange, "select") &&
- implementsControlRange && useDocumentSelection) {
- selProto.removeAllRanges = function() {
- // Added try/catch as fix for issue #21
- try {
- this.docSelection.empty();
-
- // Check for empty() not working (issue #24)
- if (this.docSelection.type != "None") {
- // Work around failure to empty a control selection by instead selecting a TextRange and then
- // calling empty()
- var doc;
- if (this.anchorNode) {
- doc = dom.getDocument(this.anchorNode);
- } else if (this.docSelection.type == CONTROL) {
- var controlRange = this.docSelection.createRange();
- if (controlRange.length) {
- doc = dom.getDocument(controlRange.item(0)).body.createTextRange();
+ var refreshSelection;
+
+ if (useDocumentSelection) {
+ refreshSelection = function(sel) {
+ var range;
+ if (api.isSelectionValid(sel.win)) {
+ range = sel.docSelection.createRange();
+ } else {
+ range = getBody(sel.win.document).createTextRange();
+ range.collapse(true);
+ }
+
+ if (sel.docSelection.type == CONTROL) {
+ updateControlSelection(sel);
+ } else if (isTextRange(range)) {
+ updateFromTextRange(sel, range);
+ } else {
+ updateEmptySelection(sel);
+ }
+ };
+ } else if (isHostMethod(testSelection, "getRangeAt") && typeof testSelection.rangeCount == NUMBER) {
+ refreshSelection = function(sel) {
+ if (implementsControlRange && implementsDocSelection && sel.docSelection.type == CONTROL) {
+ updateControlSelection(sel);
+ } else {
+ sel._ranges.length = sel.rangeCount = sel.nativeSelection.rangeCount;
+ if (sel.rangeCount) {
+ for (var i = 0, len = sel.rangeCount; i < len; ++i) {
+ sel._ranges[i] = new api.WrappedRange(sel.nativeSelection.getRangeAt(i));
}
- }
- if (doc) {
- var textRange = doc.body.createTextRange();
- textRange.select();
- this.docSelection.empty();
+ updateAnchorAndFocusFromRange(sel, sel._ranges[sel.rangeCount - 1], selectionIsBackward(sel.nativeSelection));
+ sel.isCollapsed = selectionIsCollapsed(sel);
+ } else {
+ updateEmptySelection(sel);
}
}
- } catch(ex) {}
- updateEmptySelection(this);
- };
+ };
+ } else if (selectionHasAnchorAndFocus && typeof testSelection.isCollapsed == BOOLEAN && typeof testRange.collapsed == BOOLEAN && features.implementsDomRange) {
+ refreshSelection = function(sel) {
+ var range, nativeSel = sel.nativeSelection;
+ if (nativeSel.anchorNode) {
+ range = getSelectionRangeAt(nativeSel, 0);
+ sel._ranges = [range];
+ sel.rangeCount = 1;
+ updateAnchorAndFocusFromNativeSelection(sel);
+ sel.isCollapsed = selectionIsCollapsed(sel);
+ } else {
+ updateEmptySelection(sel);
+ }
+ };
+ } else {
+ module.fail("No means of obtaining a Range or TextRange from the user's selection was found");
+ return false;
+ }
- selProto.addRange = function(range) {
- if (this.docSelection.type == CONTROL) {
- addRangeToControlSelection(this, range);
- } else {
- WrappedRange.rangeToTextRange(range).select();
- this._ranges[0] = range;
- this.rangeCount = 1;
- this.isCollapsed = this._ranges[0].collapsed;
- updateAnchorAndFocusFromRange(this, range, false);
+ selProto.refresh = function(checkForChanges) {
+ var oldRanges = checkForChanges ? this._ranges.slice(0) : null;
+ var oldAnchorNode = this.anchorNode, oldAnchorOffset = this.anchorOffset;
+
+ refreshSelection(this);
+ if (checkForChanges) {
+ // Check the range count first
+ var i = oldRanges.length;
+ if (i != this._ranges.length) {
+ return true;
+ }
+
+ // Now check the direction. Checking the anchor position is the same is enough since we're checking all the
+ // ranges after this
+ if (this.anchorNode != oldAnchorNode || this.anchorOffset != oldAnchorOffset) {
+ return true;
+ }
+
+ // Finally, compare each range in turn
+ while (i--) {
+ if (!rangesEqual(oldRanges[i], this._ranges[i])) {
+ return true;
+ }
+ }
+ return false;
}
};
- selProto.setRanges = function(ranges) {
- this.removeAllRanges();
- var rangeCount = ranges.length;
- if (rangeCount > 1) {
- createControlSelection(this, ranges);
- } else if (rangeCount) {
- this.addRange(ranges[0]);
+ // Removal of a single range
+ var removeRangeManually = function(sel, range) {
+ var ranges = sel.getAllRanges();
+ sel.removeAllRanges();
+ for (var i = 0, len = ranges.length; i < len; ++i) {
+ if (!rangesEqual(range, ranges[i])) {
+ sel.addRange(ranges[i]);
+ }
+ }
+ if (!sel.rangeCount) {
+ updateEmptySelection(sel);
}
};
- } else {
- module.fail("No means of selecting a Range or TextRange was found");
- return false;
- }
- selProto.getRangeAt = function(index) {
- if (index < 0 || index >= this.rangeCount) {
- throw new DOMException("INDEX_SIZE_ERR");
+ if (implementsControlRange && implementsDocSelection) {
+ selProto.removeRange = function(range) {
+ if (this.docSelection.type == CONTROL) {
+ var controlRange = this.docSelection.createRange();
+ var rangeElement = getSingleElementFromRange(range);
+
+ // Create a new ControlRange containing all the elements in the selected ControlRange minus the
+ // element contained by the supplied range
+ var doc = getDocument(controlRange.item(0));
+ var newControlRange = getBody(doc).createControlRange();
+ var el, removed = false;
+ for (var i = 0, len = controlRange.length; i < len; ++i) {
+ el = controlRange.item(i);
+ if (el !== rangeElement || removed) {
+ newControlRange.add(controlRange.item(i));
+ } else {
+ removed = true;
+ }
+ }
+ newControlRange.select();
+
+ // Update the wrapped selection based on what's now in the native selection
+ updateControlSelection(this);
+ } else {
+ removeRangeManually(this, range);
+ }
+ };
} else {
- return this._ranges[index];
+ selProto.removeRange = function(range) {
+ removeRangeManually(this, range);
+ };
}
- };
- var refreshSelection;
+ // Detecting if a selection is backward
+ var selectionIsBackward;
+ if (!useDocumentSelection && selectionHasAnchorAndFocus && features.implementsDomRange) {
+ selectionIsBackward = winSelectionIsBackward;
- if (useDocumentSelection) {
- refreshSelection = function(sel) {
- var range;
- if (api.isSelectionValid(sel.win)) {
- range = sel.docSelection.createRange();
- } else {
- range = dom.getBody(sel.win.document).createTextRange();
- range.collapse(true);
- }
+ selProto.isBackward = function() {
+ return selectionIsBackward(this);
+ };
+ } else {
+ selectionIsBackward = selProto.isBackward = function() {
+ return false;
+ };
+ }
+ // Create an alias for backwards compatibility. From 1.3, everything is "backward" rather than "backwards"
+ selProto.isBackwards = selProto.isBackward;
- if (sel.docSelection.type == CONTROL) {
- updateControlSelection(sel);
- } else if (isTextRange(range)) {
- updateFromTextRange(sel, range);
- } else {
- updateEmptySelection(sel);
+ // Selection stringifier
+ // This is conformant to the old HTML5 selections draft spec but differs from WebKit and Mozilla's implementation.
+ // The current spec does not yet define this method.
+ selProto.toString = function() {
+ var rangeTexts = [];
+ for (var i = 0, len = this.rangeCount; i < len; ++i) {
+ rangeTexts[i] = "" + this._ranges[i];
}
+ return rangeTexts.join("");
};
- } else if (util.isHostMethod(testSelection, "getRangeAt") && typeof testSelection.rangeCount == "number") {
- refreshSelection = function(sel) {
- if (implementsControlRange && implementsDocSelection && sel.docSelection.type == CONTROL) {
- updateControlSelection(sel);
- } else {
- sel._ranges.length = sel.rangeCount = sel.nativeSelection.rangeCount;
- if (sel.rangeCount) {
- for (var i = 0, len = sel.rangeCount; i < len; ++i) {
- sel._ranges[i] = new api.WrappedRange(sel.nativeSelection.getRangeAt(i));
- }
- updateAnchorAndFocusFromRange(sel, sel._ranges[sel.rangeCount - 1], selectionIsBackwards(sel.nativeSelection));
- sel.isCollapsed = selectionIsCollapsed(sel);
- } else {
- updateEmptySelection(sel);
- }
+
+ function assertNodeInSameDocument(sel, node) {
+ if (sel.win.document != getDocument(node)) {
+ throw new DOMException("WRONG_DOCUMENT_ERR");
}
+ }
+
+ // No current browser conforms fully to the spec for this method, so Rangy's own method is always used
+ selProto.collapse = function(node, offset) {
+ assertNodeInSameDocument(this, node);
+ var range = api.createRange(node);
+ range.collapseToPoint(node, offset);
+ this.setSingleRange(range);
+ this.isCollapsed = true;
};
- } else if (selectionHasAnchorAndFocus && typeof testSelection.isCollapsed == BOOLEAN && typeof testRange.collapsed == BOOLEAN && api.features.implementsDomRange) {
- refreshSelection = function(sel) {
- var range, nativeSel = sel.nativeSelection;
- if (nativeSel.anchorNode) {
- range = getSelectionRangeAt(nativeSel, 0);
- sel._ranges = [range];
- sel.rangeCount = 1;
- updateAnchorAndFocusFromNativeSelection(sel);
- sel.isCollapsed = selectionIsCollapsed(sel);
+
+ selProto.collapseToStart = function() {
+ if (this.rangeCount) {
+ var range = this._ranges[0];
+ this.collapse(range.startContainer, range.startOffset);
} else {
- updateEmptySelection(sel);
+ throw new DOMException("INVALID_STATE_ERR");
}
};
- } else {
- module.fail("No means of obtaining a Range or TextRange from the user's selection was found");
- return false;
- }
- selProto.refresh = function(checkForChanges) {
- var oldRanges = checkForChanges ? this._ranges.slice(0) : null;
- refreshSelection(this);
- if (checkForChanges) {
- var i = oldRanges.length;
- if (i != this._ranges.length) {
- return false;
- }
- while (i--) {
- if (!DomRange.rangesEqual(oldRanges[i], this._ranges[i])) {
- return false;
- }
- }
- return true;
- }
- };
-
- // Removal of a single range
- var removeRangeManually = function(sel, range) {
- var ranges = sel.getAllRanges(), removed = false;
- sel.removeAllRanges();
- for (var i = 0, len = ranges.length; i < len; ++i) {
- if (removed || range !== ranges[i]) {
- sel.addRange(ranges[i]);
+ selProto.collapseToEnd = function() {
+ if (this.rangeCount) {
+ var range = this._ranges[this.rangeCount - 1];
+ this.collapse(range.endContainer, range.endOffset);
} else {
- // According to the draft WHATWG Range spec, the same range may be added to the selection multiple
- // times. removeRange should only remove the first instance, so the following ensures only the first
- // instance is removed
- removed = true;
+ throw new DOMException("INVALID_STATE_ERR");
}
- }
- if (!sel.rangeCount) {
- updateEmptySelection(sel);
- }
- };
+ };
+
+ // The spec is very specific on how selectAllChildren should be implemented and not all browsers implement it as
+ // specified so the native implementation is never used by Rangy.
+ selProto.selectAllChildren = function(node) {
+ assertNodeInSameDocument(this, node);
+ var range = api.createRange(node);
+ range.selectNodeContents(node);
+ this.setSingleRange(range);
+ };
- if (implementsControlRange) {
- selProto.removeRange = function(range) {
- if (this.docSelection.type == CONTROL) {
+ selProto.deleteFromDocument = function() {
+ // Sepcial behaviour required for IE's control selections
+ if (implementsControlRange && implementsDocSelection && this.docSelection.type == CONTROL) {
var controlRange = this.docSelection.createRange();
- var rangeElement = getSingleElementFromRange(range);
-
- // Create a new ControlRange containing all the elements in the selected ControlRange minus the
- // element contained by the supplied range
- var doc = dom.getDocument(controlRange.item(0));
- var newControlRange = dom.getBody(doc).createControlRange();
- var el, removed = false;
- for (var i = 0, len = controlRange.length; i < len; ++i) {
- el = controlRange.item(i);
- if (el !== rangeElement || removed) {
- newControlRange.add(controlRange.item(i));
- } else {
- removed = true;
+ var element;
+ while (controlRange.length) {
+ element = controlRange.item(0);
+ controlRange.remove(element);
+ dom.removeNode(element);
+ }
+ this.refresh();
+ } else if (this.rangeCount) {
+ var ranges = this.getAllRanges();
+ if (ranges.length) {
+ this.removeAllRanges();
+ for (var i = 0, len = ranges.length; i < len; ++i) {
+ ranges[i].deleteContents();
}
+ // The spec says nothing about what the selection should contain after calling deleteContents on each
+ // range. Firefox moves the selection to where the final selected range was, so we emulate that
+ this.addRange(ranges[len - 1]);
}
- newControlRange.select();
-
- // Update the wrapped selection based on what's now in the native selection
- updateControlSelection(this);
- } else {
- removeRangeManually(this, range);
}
};
- } else {
- selProto.removeRange = function(range) {
- removeRangeManually(this, range);
- };
- }
- // Detecting if a selection is backwards
- var selectionIsBackwards;
- if (!useDocumentSelection && selectionHasAnchorAndFocus && api.features.implementsDomRange) {
- selectionIsBackwards = function(sel) {
- var backwards = false;
- if (sel.anchorNode) {
- backwards = (dom.comparePoints(sel.anchorNode, sel.anchorOffset, sel.focusNode, sel.focusOffset) == 1);
+ // The following are non-standard extensions
+ selProto.eachRange = function(func, returnValue) {
+ for (var i = 0, len = this._ranges.length; i < len; ++i) {
+ if ( func( this.getRangeAt(i) ) ) {
+ return returnValue;
+ }
}
- return backwards;
};
- selProto.isBackwards = function() {
- return selectionIsBackwards(this);
+ selProto.getAllRanges = function() {
+ var ranges = [];
+ this.eachRange(function(range) {
+ ranges.push(range);
+ });
+ return ranges;
};
- } else {
- selectionIsBackwards = selProto.isBackwards = function() {
- return false;
- };
- }
- // Selection text
- // This is conformant to the new WHATWG DOM Range draft spec but differs from WebKit and Mozilla's implementation
- selProto.toString = function() {
+ selProto.setSingleRange = function(range, direction) {
+ this.removeAllRanges();
+ this.addRange(range, direction);
+ };
- var rangeTexts = [];
- for (var i = 0, len = this.rangeCount; i < len; ++i) {
- rangeTexts[i] = "" + this._ranges[i];
- }
- return rangeTexts.join("");
- };
+ selProto.callMethodOnEachRange = function(methodName, params) {
+ var results = [];
+ this.eachRange( function(range) {
+ results.push( range[methodName].apply(range, params || []) );
+ } );
+ return results;
+ };
- function assertNodeInSameDocument(sel, node) {
- if (sel.anchorNode && (dom.getDocument(sel.anchorNode) !== dom.getDocument(node))) {
- throw new DOMException("WRONG_DOCUMENT_ERR");
+ function createStartOrEndSetter(isStart) {
+ return function(node, offset) {
+ var range;
+ if (this.rangeCount) {
+ range = this.getRangeAt(0);
+ range["set" + (isStart ? "Start" : "End")](node, offset);
+ } else {
+ range = api.createRange(this.win.document);
+ range.setStartAndEnd(node, offset);
+ }
+ this.setSingleRange(range, this.isBackward());
+ };
}
- }
- // No current browsers conform fully to the HTML 5 draft spec for this method, so Rangy's own method is always used
- selProto.collapse = function(node, offset) {
- assertNodeInSameDocument(this, node);
- var range = api.createRange(dom.getDocument(node));
- range.collapseToPoint(node, offset);
- this.removeAllRanges();
- this.addRange(range);
- this.isCollapsed = true;
- };
+ selProto.setStart = createStartOrEndSetter(true);
+ selProto.setEnd = createStartOrEndSetter(false);
- selProto.collapseToStart = function() {
- if (this.rangeCount) {
- var range = this._ranges[0];
- this.collapse(range.startContainer, range.startOffset);
- } else {
- throw new DOMException("INVALID_STATE_ERR");
- }
- };
+ // Add select() method to Range prototype. Any existing selection will be removed.
+ api.rangePrototype.select = function(direction) {
+ getSelection( this.getDocument() ).setSingleRange(this, direction);
+ };
- selProto.collapseToEnd = function() {
- if (this.rangeCount) {
- var range = this._ranges[this.rangeCount - 1];
- this.collapse(range.endContainer, range.endOffset);
- } else {
- throw new DOMException("INVALID_STATE_ERR");
- }
- };
+ selProto.changeEachRange = function(func) {
+ var ranges = [];
+ var backward = this.isBackward();
- // The HTML 5 spec is very specific on how selectAllChildren should be implemented so the native implementation is
- // never used by Rangy.
- selProto.selectAllChildren = function(node) {
- assertNodeInSameDocument(this, node);
- var range = api.createRange(dom.getDocument(node));
- range.selectNodeContents(node);
- this.removeAllRanges();
- this.addRange(range);
- };
+ this.eachRange(function(range) {
+ func(range);
+ ranges.push(range);
+ });
- selProto.deleteFromDocument = function() {
- // Sepcial behaviour required for Control selections
- if (implementsControlRange && implementsDocSelection && this.docSelection.type == CONTROL) {
- var controlRange = this.docSelection.createRange();
- var element;
- while (controlRange.length) {
- element = controlRange.item(0);
- controlRange.remove(element);
- element.parentNode.removeChild(element);
- }
- this.refresh();
- } else if (this.rangeCount) {
- var ranges = this.getAllRanges();
this.removeAllRanges();
- for (var i = 0, len = ranges.length; i < len; ++i) {
- ranges[i].deleteContents();
+ if (backward && ranges.length == 1) {
+ this.addRange(ranges[0], "backward");
+ } else {
+ this.setRanges(ranges);
}
- // The HTML5 spec says nothing about what the selection should contain after calling deleteContents on each
- // range. Firefox moves the selection to where the final selected range was, so we emulate that
- this.addRange(ranges[len - 1]);
- }
- };
+ };
- // The following are non-standard extensions
- selProto.getAllRanges = function() {
- return this._ranges.slice(0);
- };
+ selProto.containsNode = function(node, allowPartial) {
+ return this.eachRange( function(range) {
+ return range.containsNode(node, allowPartial);
+ }, true ) || false;
+ };
- selProto.setSingleRange = function(range) {
- this.setRanges( [range] );
- };
+ selProto.getBookmark = function(containerNode) {
+ return {
+ backward: this.isBackward(),
+ rangeBookmarks: this.callMethodOnEachRange("getBookmark", [containerNode])
+ };
+ };
- selProto.containsNode = function(node, allowPartial) {
- for (var i = 0, len = this._ranges.length; i < len; ++i) {
- if (this._ranges[i].containsNode(node, allowPartial)) {
- return true;
+ selProto.moveToBookmark = function(bookmark) {
+ var selRanges = [];
+ for (var i = 0, rangeBookmark, range; rangeBookmark = bookmark.rangeBookmarks[i++]; ) {
+ range = api.createRange(this.win);
+ range.moveToBookmark(rangeBookmark);
+ selRanges.push(range);
}
- }
- return false;
- };
+ if (bookmark.backward) {
+ this.setSingleRange(selRanges[0], "backward");
+ } else {
+ this.setRanges(selRanges);
+ }
+ };
- selProto.toHtml = function() {
- var html = "";
- if (this.rangeCount) {
- var container = DomRange.getRangeDocument(this._ranges[0]).createElement("div");
- for (var i = 0, len = this._ranges.length; i < len; ++i) {
- container.appendChild(this._ranges[i].cloneContents());
+ selProto.saveRanges = function() {
+ return {
+ backward: this.isBackward(),
+ ranges: this.callMethodOnEachRange("cloneRange")
+ };
+ };
+
+ selProto.restoreRanges = function(selRanges) {
+ this.removeAllRanges();
+ for (var i = 0, range; range = selRanges.ranges[i]; ++i) {
+ this.addRange(range, (selRanges.backward && i == 0));
}
- html = container.innerHTML;
+ };
+
+ selProto.toHtml = function() {
+ var rangeHtmls = [];
+ this.eachRange(function(range) {
+ rangeHtmls.push( DomRange.toHtml(range) );
+ });
+ return rangeHtmls.join("");
+ };
+
+ if (features.implementsTextRange) {
+ selProto.getNativeTextRange = function() {
+ var sel, textRange;
+ if ( (sel = this.docSelection) ) {
+ var range = sel.createRange();
+ if (isTextRange(range)) {
+ return range;
+ } else {
+ throw module.createError("getNativeTextRange: selection is a control selection");
+ }
+ } else if (this.rangeCount > 0) {
+ return api.WrappedTextRange.rangeToTextRange( this.getRangeAt(0) );
+ } else {
+ throw module.createError("getNativeTextRange: selection contains no range");
+ }
+ };
}
- return html;
- };
- function inspect(sel) {
- var rangeInspects = [];
- var anchor = new DomPosition(sel.anchorNode, sel.anchorOffset);
- var focus = new DomPosition(sel.focusNode, sel.focusOffset);
- var name = (typeof sel.getName == "function") ? sel.getName() : "Selection";
+ function inspect(sel) {
+ var rangeInspects = [];
+ var anchor = new DomPosition(sel.anchorNode, sel.anchorOffset);
+ var focus = new DomPosition(sel.focusNode, sel.focusOffset);
+ var name = (typeof sel.getName == "function") ? sel.getName() : "Selection";
- if (typeof sel.rangeCount != "undefined") {
- for (var i = 0, len = sel.rangeCount; i < len; ++i) {
- rangeInspects[i] = DomRange.inspect(sel.getRangeAt(i));
+ if (typeof sel.rangeCount != "undefined") {
+ for (var i = 0, len = sel.rangeCount; i < len; ++i) {
+ rangeInspects[i] = DomRange.inspect(sel.getRangeAt(i));
+ }
}
+ return "[" + name + "(Ranges: " + rangeInspects.join(", ") +
+ ")(anchor: " + anchor.inspect() + ", focus: " + focus.inspect() + "]";
}
- return "[" + name + "(Ranges: " + rangeInspects.join(", ") +
- ")(anchor: " + anchor.inspect() + ", focus: " + focus.inspect() + "]";
- }
+ selProto.getName = function() {
+ return "WrappedSelection";
+ };
- selProto.getName = function() {
- return "WrappedSelection";
- };
+ selProto.inspect = function() {
+ return inspect(this);
+ };
- selProto.inspect = function() {
- return inspect(this);
- };
+ selProto.detach = function() {
+ actOnCachedSelection(this.win, "delete");
+ deleteProperties(this);
+ };
- selProto.detach = function() {
- this.win[windowPropertyName] = null;
- this.win = this.anchorNode = this.focusNode = null;
- };
+ WrappedSelection.detachAll = function() {
+ actOnCachedSelection(null, "deleteAll");
+ };
- WrappedSelection.inspect = inspect;
+ WrappedSelection.inspect = inspect;
+ WrappedSelection.isDirectionBackward = isDirectionBackward;
- api.Selection = WrappedSelection;
+ api.Selection = WrappedSelection;
- api.selectionPrototype = selProto;
+ api.selectionPrototype = selProto;
- api.addCreateMissingNativeApiListener(function(win) {
- if (typeof win.getSelection == "undefined") {
- win.getSelection = function() {
- return api.getSelection(this);
- };
- }
- win = null;
+ api.addShimListener(function(win) {
+ if (typeof win.getSelection == "undefined") {
+ win.getSelection = function() {
+ return getSelection(win);
+ };
+ }
+ win = null;
+ });
});
-});
+
+
+ /*----------------------------------------------------------------------------------------------------------------*/
+
+ // Wait for document to load before initializing
+ var docReady = false;
+
+ var loadHandler = function(e) {
+ if (!docReady) {
+ docReady = true;
+ if (!api.initialized && api.config.autoInitialize) {
+ init();
+ }
+ }
+ };
+
+ if (isBrowser) {
+ // Test whether the document has already been loaded and initialize immediately if so
+ if (document.readyState == "complete") {
+ loadHandler();
+ } else {
+ if (isHostMethod(document, "addEventListener")) {
+ document.addEventListener("DOMContentLoaded", loadHandler, false);
+ }
+
+ // Add a fallback in case the DOMContentLoaded event isn't supported
+ addListener(window, "load", loadHandler);
+ }
+ }
+
+ return api;
+}, this); \ No newline at end of file
diff --git a/MLEB/UniversalLanguageSelector/package.json b/MLEB/UniversalLanguageSelector/package.json
index 094b8ea6..cd34b01d 100644
--- a/MLEB/UniversalLanguageSelector/package.json
+++ b/MLEB/UniversalLanguageSelector/package.json
@@ -4,10 +4,20 @@
"test": "grunt test"
},
"devDependencies": {
- "grunt": "0.4.5",
- "grunt-cli": "0.1.13",
- "grunt-contrib-jshint": "0.11.3",
- "grunt-banana-checker": "0.2.2",
- "grunt-jsonlint": "1.0.4"
- }
+ "eslint-config-wikimedia": "0.7.2",
+ "eslint-plugin-qunit": "3.3.1",
+ "grunt": "1.0.3",
+ "grunt-banana-checker": "0.6.0",
+ "grunt-eslint": "21.0.0",
+ "grunt-jsonlint": "1.1.0",
+ "grunt-stylelint": "0.10.1",
+ "grunt-svgmin": "5.0.0",
+ "stylelint": "9.2.0",
+ "stylelint-config-wikimedia": "0.4.3"
+ },
+ "eslintIgnore": [
+ "lib/**",
+ "resources/js/ext.uls.webfonts.repository.js",
+ "vendor/**"
+ ]
}
diff --git a/MLEB/UniversalLanguageSelector/resources/css/ext.uls-monobook.css b/MLEB/UniversalLanguageSelector/resources/css/ext.uls-monobook.css
index 293b62b8..3864a039 100644
--- a/MLEB/UniversalLanguageSelector/resources/css/ext.uls-monobook.css
+++ b/MLEB/UniversalLanguageSelector/resources/css/ext.uls-monobook.css
@@ -1,3 +1,3 @@
-#pt-uls {
+#pt-uls { /* stylelint-disable-line selector-max-id */
text-transform: none;
}
diff --git a/MLEB/UniversalLanguageSelector/resources/css/ext.uls.buttons.css b/MLEB/UniversalLanguageSelector/resources/css/ext.uls.buttons.css
deleted file mode 100644
index cfe1ba45..00000000
--- a/MLEB/UniversalLanguageSelector/resources/css/ext.uls.buttons.css
+++ /dev/null
@@ -1,158 +0,0 @@
-button.button {
- display: inline-block;
- padding: 0.4065em 1.2195em 0.4065em;
- font-weight: bold;
- line-height: 1;
- color: #252525;
- text-align: center;
- text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75);
- cursor: pointer;
- background-color: #e6e6e6;
- background-image: -moz-linear-gradient(top, #f0f0f0, #e6e6e6);
- background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #f0f0f0), color-stop(100%, #e6e6e6));
- background-image: -webkit-linear-gradient(top, #f0f0f0, #e6e6e6);
- background-image: linear-gradient(#f0f0f0, #e6e6e6);
- border: 1px #c9c9c9 solid;
- border-radius: 3px;
- -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#f0f0f0', endColorstr='#e6e6e6', GradientType=0)";
- filter: progid:dximagetransform.microsoft.gradient(startColorstr='#f0f0f0', endColorstr='#e6e6e6', GradientType=0);
-}
-
-button.button:hover {
- background-color: #f0f0f0;
- background-image: -moz-linear-gradient(top, #f8f8f8, #f0f0f0);
- background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #f8f8f8), color-stop(100%, #f0f0f0));
- background-image: -webkit-linear-gradient(top, #f8f8f8, #f0f0f0);
- background-image: linear-gradient(#f8f8f8, #f0f0f0);
- border-color: #c9c9c9;
- -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#f8f8f8', endColorstr='#f0f0f0', GradientType=0)";
- filter: progid:dximagetransform.microsoft.gradient(startColorstr='#f8f8f8', endColorstr='#f0f0f0', GradientType=0);
-}
-
-button.button:active,
-button.button.down {
- background-color: #d8d8d8;
- background-image: -moz-linear-gradient(top, #d3d3d3, #d8d8d8);
- background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #d3d3d3), color-stop(100%, #d8d8d8));
- background-image: -webkit-linear-gradient(top, #d3d3d3, #d8d8d8);
- background-image: linear-gradient(#d3d3d3, #d8d8d8);
- border-color: #c9c9c9;
- -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#d3d3d3', endColorstr='#d8d8d8', GradientType=0)";
- filter: progid:dximagetransform.microsoft.gradient(startColorstr='#d3d3d3', endColorstr='#d8d8d8', GradientType=0);
-}
-
-button.button:disabled,
-button.button:disabled.hover,
-button.button.disabled,
-button.button.disabled:hover {
- color: #c9c9c9;
- cursor: default;
- background-color: #f0f0f0;
- background-image: -moz-linear-gradient(top, #f0f0f0, #f0f0f0);
- background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #f0f0f0), color-stop(100%, #f0f0f0));
- background-image: -webkit-linear-gradient(top, #f0f0f0, #f0f0f0);
- background-image: linear-gradient(#f0f0f0, #f0f0f0);
- border-color: #e3e3e3;
- -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#f0f0f0', endColorstr='#f0f0f0', GradientType=0)";
- filter: progid:dximagetransform.microsoft.gradient(startColorstr='#f0f0f0', endColorstr='#f0f0f0', GradientType=0);
-}
-
-button.button.blue {
- color: #ffffff;
- text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
- background-color: #3366bb;
- background-image: -moz-linear-gradient(top, #3670c8, #3366bb);
- background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #3670c8), color-stop(100%, #3366bb));
- background-image: -webkit-linear-gradient(top, #3670c8, #3366bb);
- background-image: linear-gradient(#3670c8, #3366bb);
- border: 1px #33589f solid;
- -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#3670c8', endColorstr='#3366bb', GradientType=0)";
- filter: progid:dximagetransform.microsoft.gradient(startColorstr='#3670c8', endColorstr='#3366bb', GradientType=0);
-}
-
-button.button.blue:hover {
- background-color: #3f77d7;
- background-image: -moz-linear-gradient(top, #4c84da, #3f77d7);
- background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #4c84da), color-stop(100%, #3f77d7));
- background-image: -webkit-linear-gradient(top, #4c84da, #3f77d7);
- background-image: linear-gradient(#4c84da, #3f77d7);
- -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#4c84da', endColorstr='#3f77d7', GradientType=0)";
- filter: progid:dximagetransform.microsoft.gradient(startColorstr='#4c84da', endColorstr='#3f77d7', GradientType=0);
-}
-
-button.button.blue:active {
- background-color: #2a549c;
- background-image: -moz-linear-gradient(top, #2d5ea9, #2a549c);
- background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #2d5ea9), color-stop(100%, #2a549c));
- background-image: -webkit-linear-gradient(top, #2d5ea9, #2a549c);
- background-image: linear-gradient(#2d5ea9, #2a549c);
- -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#2d5ea9', endColorstr='#2a549c', GradientType=0)";
- filter: progid:dximagetransform.microsoft.gradient(startColorstr='#2d5ea9', endColorstr='#2a549c', GradientType=0);
-}
-
-button.button.blue:disabled,
-button.button.blue:disabled.hover,
-button.button.blue.disabled,
-button.button.blue.disabled:hover {
- color: white;
- text-shadow: none;
- cursor: default;
- background-color: #7297d7;
- background-image: -moz-linear-gradient(top, #7297d7, #7297d7);
- background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #7297d7), color-stop(100%, #7297d7));
- background-image: -webkit-linear-gradient(top, #7297d7, #7297d7);
- background-image: linear-gradient(#7297d7, #7297d7);
- border-color: #5e89d1;
- -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#7297d7', endColorstr='#7297d7', GradientType=0)";
- filter: progid:dximagetransform.microsoft.gradient(startColorstr='#7297d7', endColorstr='#7297d7', GradientType=0);
-}
-
-button.button.green {
- color: #ffffff;
- text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
- background-color: #008740;
- background-image: -moz-linear-gradient(top, #00974b, #008740);
- background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #00974b), color-stop(100%, #008740));
- background-image: -webkit-linear-gradient(top, #00974b, #008740);
- background-image: linear-gradient(#00974b, #008740);
- border: 1px #0f9b3b solid;
- -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#00974b', endColorstr='#008740', GradientType=0)";
- filter: progid:dximagetransform.microsoft.gradient(startColorstr='#00974b', endColorstr='#008740', GradientType=0);
-}
-
-button.button.green:hover {
- background-color: #119750;
- background-image: -moz-linear-gradient(top, #10a65b, #119750);
- background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #10a65b), color-stop(100%, #119750));
- background-image: -webkit-linear-gradient(top, #10a65b, #119750);
- background-image: linear-gradient(#10a65b, #119750);
- -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#10a65b', endColorstr='#119750', GradientType=0)";
- filter: progid:dximagetransform.microsoft.gradient(startColorstr='#10a65b', endColorstr='#119750', GradientType=0);
-}
-
-button.button.green:active {
- background-color: #007236;
- background-image: -moz-linear-gradient(top, #007236, #007236);
- background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #007236), color-stop(100%, #007236));
- background-image: -webkit-linear-gradient(top, #007236, #007236);
- background-image: linear-gradient(#007236, #007236);
- -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#007236', endColorstr='#007236', GradientType=0)";
- filter: progid:dximagetransform.microsoft.gradient(startColorstr='#007236', endColorstr='#007236', GradientType=0);
-}
-
-button.button.green:disabled,
-button.button.green:disabled.hover,
-button.button.green.disabled,
-button.button.green.disabled:hover {
- color: white;
- text-shadow: none;
- cursor: default;
- background-color: #2ca368;
- background-image: -moz-linear-gradient(top, #2ca368, #2ca368);
- background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #2ca368), color-stop(100%, #2ca368));
- background-image: -webkit-linear-gradient(top, #2ca368, #2ca368);
- background-image: linear-gradient(#2ca368, #2ca368);
- border-color: #278f5b;
- -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#2ca368', endColorstr='#2ca368', GradientType=0)";
- filter: progid:dximagetransform.microsoft.gradient(startColorstr='#2ca368', endColorstr='#2ca368', GradientType=0);
-}
diff --git a/MLEB/UniversalLanguageSelector/resources/css/ext.uls.compactlinks.css b/MLEB/UniversalLanguageSelector/resources/css/ext.uls.compactlinks.css
deleted file mode 100644
index 6d68408d..00000000
--- a/MLEB/UniversalLanguageSelector/resources/css/ext.uls.compactlinks.css
+++ /dev/null
@@ -1,40 +0,0 @@
-#p-lang .body ul .uls-trigger,
-#p-lang .pBody ul .uls-trigger {
- background-image: none;
- padding: 0;
-}
-
-.mw-interlanguage-selector,
-.mw-interlanguage-selector:active {
- cursor: pointer;
- padding: 4px 6px 4px 25px;
- font-size: 13px;
- font-weight: 400;
- background-image: url( ../images/compact-links-trigger.svg );
- background-size: 17px;
- background-repeat: no-repeat;
- background-position: 9% 8%;
- margin-top: 4px;
-}
-
-.interlanguage-uls-menu:after,
-.interlanguage-uls-menu:before {
- right: 100%;
- content: " ";
- position: absolute;
- border: 1px solid black;
-}
-
-.interlanguage-uls-menu:after {
- border-color: transparent;
- border-right-color: #FCFCFC;
- border-width: 20px;
- top: 250px;
-}
-
-.interlanguage-uls-menu:before {
- border-color: transparent;
- border-right-color: #555555;
- border-width: 20px;
- top: 250px;
-}
diff --git a/MLEB/UniversalLanguageSelector/resources/css/ext.uls.css b/MLEB/UniversalLanguageSelector/resources/css/ext.uls.css
deleted file mode 100644
index e02dcf54..00000000
--- a/MLEB/UniversalLanguageSelector/resources/css/ext.uls.css
+++ /dev/null
@@ -1,46 +0,0 @@
-.uls-menu a {
- cursor: pointer;
-}
-
-.uls-menu.callout .caret-before {
- border-top: 20px solid transparent;
- border-right: 20px solid #C9C9C9;
- border-bottom: 20px solid transparent;
- display: inline-block;
- left: -21px;
- top: 30px;
- position: absolute;
-}
-
-.uls-menu.callout .caret-after {
- border-top: 20px solid transparent;
- border-right: 20px solid #FCFCFC;
- border-bottom: 20px solid transparent;
- display: inline-block;
- left: -20px;
- top: 30px;
- position: absolute;
-}
-
-.uls-ui-languages button {
- width: 23%;
- text-overflow: ellipsis;
- margin-right: 4%;
-}
-
-button.uls-more-languages {
- width: auto;
-}
-
-.settings-title {
- font-size: 11pt;
-}
-
-.settings-text {
- color: #555555;
- font-size: 9pt;
-}
-
-div.display-settings-block:hover .settings-text {
- color: #252525;
-}
diff --git a/MLEB/UniversalLanguageSelector/resources/css/ext.uls.displaysettings.css b/MLEB/UniversalLanguageSelector/resources/css/ext.uls.displaysettings.css
deleted file mode 100644
index 90fd1492..00000000
--- a/MLEB/UniversalLanguageSelector/resources/css/ext.uls.displaysettings.css
+++ /dev/null
@@ -1,93 +0,0 @@
-div.display-settings-block {
- /* @embed */
- background: transparent url('../images/display.png') no-repeat left top;
- /* @embed */
- background-image: -webkit-linear-gradient(transparent, transparent), url('../images/display.svg');
- /* @embed */
- background-image: linear-gradient(transparent, transparent), url('../images/display.svg');
- background-size: 20px auto;
- color: #252525;
- padding-left: 26px;
- cursor: pointer;
-}
-
-.uls-display-settings-tab-switcher {
- text-align: center;
-}
-
-.uls-button-group {
- display: inline-block;
- position: relative;
- padding: 0 0 0 0;
- left: -20px;
- z-index: 1;
-}
-
-.uls-button-group > button.button {
- border-radius: 0;
- float: left;
- padding: 8px 10px;
- min-width: 80px;
- margin: 0;
-}
-
-.uls-button-group > button.button:first-child {
- border-top-left-radius: 3px;
- border-bottom-left-radius: 3px;
-}
-
-.uls-button-group > button.button:last-child {
- border-top-right-radius: 3px;
- border-bottom-right-radius: 3px;
-}
-
-.ext-uls-sub-panel {
- border-top: 1px solid #EEEEEE;
- padding-top: 25px;
- top: -20px;
- position: relative;
- min-height: 150px;
-}
-
-.uls-display-settings-font-selectors {
- margin: 5px 0 15px 0;
- border-top: 1px solid #EEEEEE;
-}
-
-.uls-font-item {
- border-bottom: 1px solid #EEEEEE;
- background: #FBFBFB;
- margin: 0;
- padding: 10px 0;
-}
-
-.uls-font-label,
-.uls-font-select {
- font-size: 10pt;
-}
-
-.uls-font-select {
- min-height: 16pt;
-}
-
-.uls-content-fonts:hover,
-.uls-ui-fonts:hover {
- background-color: #F6F6F6;
-}
-
-.uls-font-label strong {
- color: #252525;
-}
-
-.uls-font-label {
- color: #555555;
- font-size: 10pt;
-}
-
-.uls-display-settings-anon-label {
- font-weight: bold;
-}
-
-#uls-display-settings-anon-log-in-cta {
- font-size: 10pt;
-}
diff --git a/MLEB/UniversalLanguageSelector/resources/css/ext.uls.inputsettings.css b/MLEB/UniversalLanguageSelector/resources/css/ext.uls.inputsettings.css
deleted file mode 100644
index 10658075..00000000
--- a/MLEB/UniversalLanguageSelector/resources/css/ext.uls.inputsettings.css
+++ /dev/null
@@ -1,147 +0,0 @@
-div.input-settings-block {
- /* @embed */
- background: transparent url('../images/input.png') no-repeat left top;
- /* @embed */
- background-image: -webkit-linear-gradient(transparent, transparent), url('../images/input.svg');
- /* @embed */
- background-image: linear-gradient(transparent, transparent), url('../images/input.svg');
- background-size: 20px auto;
- color: #252525;
- padding-left: 26px;
- cursor: pointer;
-}
-
-.imelabel {
- display: block;
- padding-bottom: 10px;
- font-size: 10pt;
- line-height: 16pt;
-}
-
-.imelabel span {
- padding-left: 5px;
-}
-
-.imelabel input {
- float: left;
-}
-
-.uls-ime-menu-settings-item {
- background-color: #f0f0f0;
- border-radius: 0 0 5px 5px;
- border-top: 1px solid #ddd;
- margin-top: 6px;
- padding: 4px 2px;
- color: #444;
- position: relative;
-}
-
-.uls-ime-disable-link {
- /* @embed */
- background: transparent url('../images/remove-input.png') no-repeat left top;
- /* @embed */
- background-image: -webkit-linear-gradient(transparent, transparent), url('../images/remove-input.svg');
- /* @embed */
- background-image: linear-gradient(transparent, transparent), url('../images/remove-input.svg');
- background-size: auto 16px;
- padding-left: 22px;
- padding-right: 26px;
- padding-bottom: 10px;
- cursor: pointer;
-}
-
-.uls-ime-more-settings-link {
- /* @embed */
- background: transparent url('../images/cog.png') no-repeat center top;
- /* @embed */
- background-image: -webkit-linear-gradient(transparent, transparent), url('../images/cog.svg');
- /* @embed */
- background-image: linear-gradient(transparent, transparent), url('../images/cog.svg');
- background-size: auto 14px;
- border-left: 1px solid #CCCCCC;
- width: 22px;
- height: 14px;
- position: absolute;
- right: 0;
- cursor: pointer;
-}
-
-.uls-ime-menu-settings-item > a:hover {
- background-color: #f0f0f0;
- color: #000;
-}
-
-.ext-uls-input-settings-imes-title:empty {
- display: none;
-}
-
-.uls-input-settings-disable-info,
-.uls-input-settings-no-inputmethods {
- color: #565656;
- padding-top: 10px;
- padding-bottom: 15px;
- font-size: 11pt;
-}
-
-.down+.uls-input-settings-caret {
- display: inline-block;
- width: 0;
- height: 0;
- border-top: none;
- border-right: 8px solid transparent;
- border-left: 8px solid transparent;
- border-bottom: 8px solid #f0f0f0;
- content: "";
- position: relative;
- vertical-align: bottom;
- top: 12px;
- left: -16%;
- margin: 0 -8px;
-}
-
-.uls-input-settings-toggle {
- padding-top: 10px;
- margin-bottom: 10px;
-}
-
-.uls-input-settings .uls-input-settings-inputmethods-list {
- margin: 12px 0;
- padding: 6px 10px;
- background: #f0f0f0;
-}
-
-.uls-ime-notification-bubble .link {
- color: #0645AD;
- cursor: pointer;
-}
-
-.uls-input-settings .uls-ime-help {
- margin-left: 10px;
-}
-
-/* Ime menu customizations */
-.ime-perime-help {
- display: none;
-}
-
-.ime-checked .ime-perime-help {
- display: inline-block;
- width: 20px;
- height: 100%;
- position: absolute;
- top: 0;
- bottom: 0;
- right: 0;
- opacity: 0.75;
- padding: 0;
- /* @embed */
- background: transparent url('../images/help.png') left center no-repeat;
- /* @embed */
- background-image: -webkit-linear-gradient(transparent, transparent), url('../images/help.svg');
- /* @embed */
- background-image: linear-gradient(transparent, transparent), url('../images/help.svg');
-}
-
-.ime-checked .ime-perime-help:hover {
- opacity: 1;
-}
diff --git a/MLEB/UniversalLanguageSelector/resources/css/ext.uls.interlanguage.css b/MLEB/UniversalLanguageSelector/resources/css/ext.uls.interlanguage.css
deleted file mode 100644
index 85c1be99..00000000
--- a/MLEB/UniversalLanguageSelector/resources/css/ext.uls.interlanguage.css
+++ /dev/null
@@ -1,21 +0,0 @@
-#p-lang .uls-settings-trigger {
- /* @embed */
- background: transparent url('../images/cog-sprite.png') no-repeat right top;
- /* @embed */
- background-image: -webkit-linear-gradient(transparent, transparent), url('../images/cog-sprite.svg');
- /* @embed */
- background-image: linear-gradient(transparent, transparent), url('../images/cog-sprite.svg');
- height: 16px;
- width: 14px;
- float: right;
- cursor: pointer;
-}
-
-.skin-vector #p-lang .uls-settings-trigger {
- /* Put it in the middle of the first row of the section title */
- margin-top: 3px;
-}
-
-#p-lang .uls-settings-trigger:hover {
- background-position: right -16px;
-}
diff --git a/MLEB/UniversalLanguageSelector/resources/css/ext.uls.languagesettings.css b/MLEB/UniversalLanguageSelector/resources/css/ext.uls.languagesettings.css
deleted file mode 100644
index 223d1a1a..00000000
--- a/MLEB/UniversalLanguageSelector/resources/css/ext.uls.languagesettings.css
+++ /dev/null
@@ -1,137 +0,0 @@
-#uls-settings-block {
- border-top: 1px solid #C9C9C9;
- background: #f8f8f8;
- background: -webkit-gradient(linear, left top, left bottom, from(#FBFBFB), to(#F0F0F0));
- background: -webkit-linear-gradient(top, #FBFBFB, #F0F0F0);
- background: -moz-linear-gradient(top, #FBFBFB, #F0F0F0);
- background: -o-linear-gradient(top, #FBFBFB, #F0F0F0);
- background: linear-gradient(#FBFBFB, #F0F0F0);
- padding-left: 10px;
- line-height: 1.2em;
- border-radius: 0 0 5px 5px;
-}
-
-.uls-menu h3 {
- border-bottom: medium none;
- font-size: 14pt;
- line-height: 1.5em;
- margin-bottom: 10px;
- margin-top: 0;
- padding-left: 0;
-}
-
-#languagesettings-panels .languagesettings-menu {
- padding-left: 0;
- padding-right: 0;
-}
-
-.languagesettings-menu .settings-title {
- font-size: 13pt;
-}
-
-.languagesettings-menu h1 {
- font-size: 16pt;
- line-height: 20pt;
- margin-top: 0;
- font-weight: normal;
- border: none;
- padding: 15px 0 3px 15px;
- color: #555;
-}
-
-.language-settings-buttons {
- text-align: right;
-}
-
-#languagesettings-settings-panel {
- padding-left: 5%;
- color: #252525;
- background: #FFFFFF;
- border-bottom-right-radius: 5px;
-}
-
-#languagesettings-settings-panel h3 {
- color: #252525;
- padding-top: 15px;
- margin-top: 1pt;
- line-height: 20pt;
- font-size: 16pt;
-}
-
-#languagesettings-settings-panel h4 {
- color: #252525;
- font-size: 12pt;
-}
-
-#languagesettings-settings-panel h5 {
- color: #252525;
- font-size: 10pt;
-}
-
-/* Buttons in the selector panel */
-.menu-section {
- color: #777;
- padding: 5px 0 5px 50px;
- border-left: 3px solid transparent;
- display: block;
- font-size: 12pt;
-}
-
-#language-settings-dialog {
- background: #FBFBFB;
-}
-
-.uls-language-settings-close-block {
- background: #FFFFFF;
- border-top-right-radius: 5px;
-}
-
-#languagesettings-panels .menu-section.active,
-#languagesettings-panels .menu-section.active:hover {
- color: black;
- background-color: #F0F0F0;
- border-left-color: #3366BB;
-}
-
-.settings-menu-items .menu-section {
- background-position: 6% 6px;
- padding-left: 40px;
- cursor: pointer;
-}
-
-.settings-menu-items .menu-section:hover {
- background-color: #F5F5F5;
-}
-
-.language-settings-buttons {
- border-top: 1px solid #F0F0F0;
- margin-top: 25px;
- padding: 15px;
- width: auto;
-}
-
-.language-settings-buttons button {
- margin-left: 15px;
-}
-
-.uls-ui-languages p,
-.checkbox {
- color: #555555;
- font-size: 10pt;
-}
-
-.checkbox input[type="checkbox"] {
- margin-left: 0;
-}
-
-.checkbox strong {
- color: #252525;
-}
-
-label.checkbox input[type="checkbox"] {
- float: left;
-}
-
-.waiting {
- cursor: progress;
-}
diff --git a/MLEB/UniversalLanguageSelector/resources/css/ext.uls.nojs.css b/MLEB/UniversalLanguageSelector/resources/css/ext.uls.nojs.css
deleted file mode 100644
index 99ec7e5d..00000000
--- a/MLEB/UniversalLanguageSelector/resources/css/ext.uls.nojs.css
+++ /dev/null
@@ -1,4 +0,0 @@
-/* Don't show it to users who disabled JS */
-.client-nojs #pt-uls {
- display: none;
-}
diff --git a/MLEB/UniversalLanguageSelector/resources/css/ext.uls.pt.css b/MLEB/UniversalLanguageSelector/resources/css/ext.uls.pt.css
deleted file mode 100644
index 0c9813c0..00000000
--- a/MLEB/UniversalLanguageSelector/resources/css/ext.uls.pt.css
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- * The trigger can be placed in the personal toolbar near the username
- * or near the interlanguage links.
- */
-
-/*
- * A hack to load the icon before the rest of the module is lazy-loaded.
- * Copied from jquery.uls.css with the path changed.
- */
-.uls-trigger {
- /* @embed */
- background: transparent url('../../lib/jquery.uls/images/icon-language.png') no-repeat scroll left center;
- /* @embed */
- background-image: -webkit-linear-gradient(transparent, transparent), url('../../lib/jquery.uls/images/icon-language.svg');
- /* @embed */
- background-image: linear-gradient(transparent, transparent), url('../../lib/jquery.uls/images/icon-language.svg');
- padding-left: 30px;
-}
-
-#pt-uls a.uls-trigger {
- padding-left: 30px;
- /* Fix alignment in vector: https://phabricator.wikimedia.org/T61239 */
- line-height: 1;
-}
-
-/* Opera for some inexplicable reason confuses right and left padding with */
-/* RTL text direction here (bug T47142). x:-o-prefocus won't match anything, */
-/* but will make other browsers ignore this rule. */
-x:-o-prefocus, body.rtl li#pt-uls {
- /* @noflip */
- direction: ltr;
-}
-
-#uls-settings-block {
- border-top: 1px solid #C9C9C9;
- background: #f8f8f8;
- background: -webkit-gradient(linear, left top, left bottom, from(#FBFBFB), to(#F0F0F0));
- background: -webkit-linear-gradient(top, #FBFBFB, #F0F0F0);
- background: -moz-linear-gradient(top, #FBFBFB, #F0F0F0);
- background: -o-linear-gradient(top, #FBFBFB, #F0F0F0);
- background: linear-gradient(#FBFBFB, #F0F0F0);
- padding-left: 10px;
- line-height: 1.2em;
- border-radius: 0 0 5px 5px;
-}
-
-#uls-settings-block div.display-settings-block,
-#uls-settings-block div.input-settings-block {
- display: inline-block;
- margin: 8px 15px;
- color: #565656;
-}
-
-#uls-settings-block div.display-settings-block:hover,
-#uls-settings-block div.input-settings-block:hover {
- color: #252525;
-}
diff --git a/MLEB/UniversalLanguageSelector/resources/images/cog-sprite.png b/MLEB/UniversalLanguageSelector/resources/images/cog-sprite.png
index 66e83c88..fbc97fef 100644
--- a/MLEB/UniversalLanguageSelector/resources/images/cog-sprite.png
+++ b/MLEB/UniversalLanguageSelector/resources/images/cog-sprite.png
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/resources/images/cog-sprite.svg b/MLEB/UniversalLanguageSelector/resources/images/cog-sprite.svg
index 3da1c598..28621287 100644
--- a/MLEB/UniversalLanguageSelector/resources/images/cog-sprite.svg
+++ b/MLEB/UniversalLanguageSelector/resources/images/cog-sprite.svg
@@ -1 +1,8 @@
-<?xml version="1.0" encoding="UTF-8"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="14" height="32"><defs><path d="M14 9.3V6.73l-1.575-.264c-.117-.44-.292-.848-.496-1.2l.93-1.285-1.81-1.84-1.31.908c-.38-.205-.79-.38-1.196-.497L8.284 1H5.716l-.263 1.578c-.437.117-.816.293-1.196.497L2.975 2.17 1.137 3.98l.934 1.287c-.2.38-.376.79-.493 1.228L0 6.73V9.3l1.575.264c.117.438.292.818.496 1.198l-.93 1.315L2.95 13.89l1.312-.938c.38.205.787.38 1.224.497L5.746 15h2.566l.263-1.578c.408-.117.817-.293 1.196-.497l1.315.935 1.81-1.812-.935-1.315c.203-.38.38-.76.495-1.2L14 9.303zm-7 1.404c-1.488 0-2.683-1.2-2.683-2.69S5.542 5.327 7 5.327c1.458 0 2.683 1.198 2.683 2.69 0 1.49-1.195 2.688-2.683 2.688z" id="a"/></defs><use xlink:href="#a" fill="#808080"/><use transform="translate(0 16)" xlink:href="#a" fill="#555"/></svg>
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="14" height="32">
+ <defs>
+ <path id="a" d="M14 9.3V6.73l-1.575-.264a4.947 4.947 0 0 0-.496-1.2l.93-1.285-1.81-1.84-1.31.908c-.38-.205-.79-.38-1.196-.497L8.284 1H5.716l-.263 1.578a5.489 5.489 0 0 0-1.196.497L2.975 2.17 1.137 3.98l.934 1.287c-.2.38-.376.79-.493 1.228L0 6.73V9.3l1.575.264c.117.438.292.818.496 1.198l-.93 1.315L2.95 13.89l1.312-.938c.38.205.787.38 1.224.497L5.746 15h2.566l.263-1.578a6.13 6.13 0 0 0 1.196-.497l1.315.935 1.81-1.812-.935-1.315c.203-.38.38-.76.495-1.2L14 9.303zm-7 1.404c-1.488 0-2.683-1.2-2.683-2.69S5.542 5.327 7 5.327a2.698 2.698 0 0 1 2.683 2.69A2.678 2.678 0 0 1 7 10.705z"/>
+ </defs>
+ <use fill="#72777d" xlink:href="#a"/>
+ <use fill="#54595d" transform="translate(0 16)" xlink:href="#a"/>
+</svg>
diff --git a/MLEB/UniversalLanguageSelector/resources/images/cog.png b/MLEB/UniversalLanguageSelector/resources/images/cog.png
index 21de5c48..177a7f67 100644
--- a/MLEB/UniversalLanguageSelector/resources/images/cog.png
+++ b/MLEB/UniversalLanguageSelector/resources/images/cog.png
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/resources/images/cog.svg b/MLEB/UniversalLanguageSelector/resources/images/cog.svg
index 9a3070d9..ad8165b0 100644
--- a/MLEB/UniversalLanguageSelector/resources/images/cog.svg
+++ b/MLEB/UniversalLanguageSelector/resources/images/cog.svg
@@ -1 +1,4 @@
-<?xml version="1.0" encoding="UTF-8"?><svg xmlns="http://www.w3.org/2000/svg" width="20" height="14"><path d="M17 8.3V5.73l-1.575-.264c-.117-.44-.292-.848-.496-1.2l.933-1.285-1.81-1.84-1.31.906c-.38-.205-.79-.38-1.197-.497L11.283 0H8.717l-.263 1.578c-.437.117-.817.293-1.196.497L5.975 1.17 4.138 2.98l.933 1.287c-.203.38-.378.79-.495 1.228L3 5.73V8.3l1.575.264c.117.438.292.818.496 1.198l-.933 1.315 1.81 1.812 1.31-.936c.38.205.79.38 1.226.497L8.746 14h2.566l.263-1.578c.408-.117.817-.293 1.196-.497l1.313.935 1.81-1.812-.935-1.315c.204-.38.38-.76.496-1.2L17 8.302zm-7 1.404c-1.487 0-2.683-1.2-2.683-2.69S8.542 4.327 10 4.327c1.458 0 2.683 1.198 2.683 2.69 0 1.49-1.195 2.688-2.683 2.688z" fill="#434343"/></svg>
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg" width="20" height="14" viewBox="0 0 20 14">
+ <path fill="#54595d" d="M17 8.3V5.73l-1.575-.264a4.947 4.947 0 0 0-.496-1.2l.933-1.285-1.81-1.84-1.31.906c-.38-.205-.79-.38-1.197-.497L11.283 0H8.717l-.263 1.578a5.468 5.468 0 0 0-1.196.497L5.975 1.17 4.138 2.98l.933 1.287c-.203.38-.378.79-.495 1.228L3 5.73V8.3l1.575.264c.117.438.292.818.496 1.198l-.933 1.315 1.81 1.812 1.31-.936c.38.205.79.38 1.226.497L8.746 14h2.566l.263-1.578a6.13 6.13 0 0 0 1.196-.497l1.313.935 1.81-1.812-.935-1.315c.204-.38.38-.76.496-1.2L17 8.302zm-7 1.404c-1.487 0-2.683-1.2-2.683-2.69S8.542 4.327 10 4.327a2.698 2.698 0 0 1 2.683 2.69A2.678 2.678 0 0 1 10 9.705z"/>
+</svg>
diff --git a/MLEB/UniversalLanguageSelector/resources/images/compact-links-ltr.png b/MLEB/UniversalLanguageSelector/resources/images/compact-links-ltr.png
deleted file mode 100644
index 8634c89e..00000000
--- a/MLEB/UniversalLanguageSelector/resources/images/compact-links-ltr.png
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/resources/images/compact-links-ltr.svg b/MLEB/UniversalLanguageSelector/resources/images/compact-links-ltr.svg
index cb5f42cf..65ef981c 100644
--- a/MLEB/UniversalLanguageSelector/resources/images/compact-links-ltr.svg
+++ b/MLEB/UniversalLanguageSelector/resources/images/compact-links-ltr.svg
@@ -1 +1,29 @@
-<svg xmlns="http://www.w3.org/2000/svg" width="264" height="162" viewBox="0 0 264 162"><g><path fill="#fff" d="M13.366 161.357l-12.866-9.608v-151.249h263v151.749l-9 6.705v-116.454h-39v112.6l-4.393-3.731-7.607 5.33v-114.199h-155v110.85l-9.751 8.03-13.916-10.019z"/><path d="M263 1v150.998l-8 5.96v-115.958h-40v112.02l-3.274-2.781-.589-.498-.633.441-6.504 4.556v-113.738h-156v111.1l-9.257 7.66-13.295-9.57-.645-.463-.598.521-10.864 9.47-12.341-9.219v-150.499h262m1-1h-264v152l13.391 10 11.474-10 13.891 10 10.244-8.4v-110.6h154v114.66l8.078-5.66 4.922 4.18v-113.18h38v116.95l10-7.45v-152.5z" fill="#e5e5e5"/></g><path d="M203 157.66v-114.66h-154v110.6l2.145-1.6 12.555 10 13.809-10 14.229 10 12.972-10 12.973 10 13.811-10 12.136 10 13.391-10 14.229 10 12.972-10 12.974 10 5.804-4.34z" fill="#e5e5e5"/><path d="M11 36c0-7.732 6.268-14 14-14s14 6.268 14 14-6.268 14-14 14-14-6.268-14-14z" fill="#e5e5e5"/><path d="M254 159.95v-116.95h-38v113.18l7.551 5.82 13.811-10 13.891 10 2.747-2.05z" fill="#e5e5e5"/><path d="M38 107v-35h-25v35h25z" fill="#e5e5e5"/><path d="M232.51 5h26v6h-26v-6z" fill="#e5e5e5"/><path fill="#e5e5e5" d="M208.51 5h22v6h-22z"/><path d="M142 6v4h-92v-4h92m1-1h-94v6h94v-6z" fill="#e5e5e5"/><path fill="#e5e5e5" d="M184.51 5h22v6h-22z"/><path fill="#e5e5e5" d="M161.51 5h13v6h-13z"/><path fill="#e5e5e5" d="M176.51 5h6v6h-6z"/><path fill="#e5e5e5" d="M153.51 5h6v6h-6z"/><path fill="#e5e5e5" d="M9 5h32v6h-32z"/><path d="M2 14.5h260" fill="#e5e5e5" stroke="#e5e5e5"/><path fill="#e5e5e5" d="M52 7h2v2h-2z"/><path d="M38 59v-5h-25v5h25z" fill="#e5e5e5"/><path d="M38 132.625v-35h-25v35h25z" fill="#8acdff"/><rect width="20.438" height="2.176" rx=".151" ry=".107" x="15.281" y="108.59" fill="#fff"/><rect width="20.438" height="2.176" rx=".151" ry=".107" x="15.281" y="113.831" fill="#fff"/><rect width="20.438" height="6.188" rx=".151" ry=".303" x="15.281" y="124.313" fill="#2693ff"/><g transform="matrix(.747 0 0 .747 7.295 33.453)" fill="#fff"><rect width="1.823" height="1.882" rx=".013" ry=".092" x="20.273" y="125.738"/><rect width="1.823" height="1.882" rx=".013" ry=".092" x="26.655" y="125.738"/><rect width="1.823" height="1.882" rx=".013" ry=".092" x="23.464" y="125.738"/></g><rect width="20.438" height="2.176" rx=".151" ry=".107" x="15.281" y="103.349" fill="#fff"/><rect width="20.438" height="2.176" rx=".151" ry=".107" x="15.281" y="119.072" fill="#fff"/></svg> \ No newline at end of file
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg" width="264" height="162" viewBox="0 0 264 162">
+ <defs>
+ <clipPath id="jagged-edge">
+ <path d="M0 0v152l12 10 12-10 12 10 12-10 12 10 12-10 12 10 12-10 12 10 12-10 12 10 12-10 12 10 12-10 12 10 12-10 12 10 12-10 12 10 12-10 12 10 12-10V0z"/>
+ </clipPath>
+ </defs>
+ <g fill="#eaecf0" clip-path="url(#jagged-edge)">
+ <path id="background" fill="#fff" d="M0 0h264v162H0"/>
+ <path id="logo" d="M11 22c0-8 6-14 14-14s14 6 14 14-6 14-14 14-14-6-14-14m27 23v-5H13v5h25"/>
+ <path id="sidebar" d="M38 130V58H13v72h25z"/>
+ <path id="personal-tools" d="M233 5h26v6h-26V5zm-24 0h22v6h-22zm-24 0h22v6h-22zm-23 0h13v6h-13zm15 0h6v6h-6zm-23 0h6v6h-6z"/>
+ <path id="search-input" d="M258 16v4h-92v-4h92m1-1h-94v6h94v-6z"/>
+ <path id="search-icon" d="M168 17h2v2h-2z"/>
+ <path id="article" d="M252 162V29H48v133z"/>
+ <path id="border" d="M0 0v162h264V0zm1 1h262v150.533l-11 9.166-12-10-12 10-12-10-12 10-12-10-12 10-12-10-12 10-12-10-12 10-12-10-12 10-12-10-12 10-12-10-12 10-12-10-12 10-12-10-12 10-11-9z"/>
+ <path fill="#36c" d="M38 132.625v-35H13v35h25z"/>
+ <rect width="19" height="2" x="16" y="108.59" fill="#eaf3ff" rx=".151" ry=".107"/>
+ <rect width="19" height="2" x="16" y="113.831" fill="#eaf3ff" rx=".151" ry=".107"/>
+ <rect width="19" height="6" x="16" y="124.313" fill="#2a4b8d" rx=".151" ry=".303"/>
+ <g fill="#fff" transform="matrix(.747 0 0 .747 7.295 33.453)">
+ <rect width="2" height="2" x="20" y="125" rx=".013" ry=".092"/>
+ <rect width="2" height="2" x="23" y="125" rx=".013" ry=".092"/>
+ <rect width="2" height="2" x="26" y="125" rx=".013" ry=".092"/>
+ </g>
+ <rect width="19" height="2" x="16" y="103.349" fill="#eaf3ff" rx=".151" ry=".107"/>
+ <rect width="19" height="2" x="16" y="119.072" fill="#eaf3ff" rx=".151" ry=".107"/>
+ </g>
+</svg>
diff --git a/MLEB/UniversalLanguageSelector/resources/images/compact-links-rtl.png b/MLEB/UniversalLanguageSelector/resources/images/compact-links-rtl.png
deleted file mode 100644
index 3e2ef633..00000000
--- a/MLEB/UniversalLanguageSelector/resources/images/compact-links-rtl.png
+++ /dev/null
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/resources/images/compact-links-rtl.svg b/MLEB/UniversalLanguageSelector/resources/images/compact-links-rtl.svg
index 1589d0fb..0fd7bc02 100644
--- a/MLEB/UniversalLanguageSelector/resources/images/compact-links-rtl.svg
+++ b/MLEB/UniversalLanguageSelector/resources/images/compact-links-rtl.svg
@@ -1 +1,29 @@
-<svg xmlns="http://www.w3.org/2000/svg" width="264" height="162" viewBox="0 0 264 162"><g><path fill="#fff" d="M.5.5v151.749l9 6.705v-116.454h39v112.6l4.393-3.731 7.607 5.33v-114.199h155v110.85l9.751 8.03 13.916-10.019 11.467 9.996 12.866-9.608v-151.249z"/><path d="M1 1v150.998l8 5.96v-115.958h40v112.02l3.274-2.781.589-.498.633.441 6.504 4.556v-113.738h156v111.1l9.257 7.66 13.295-9.57.645-.463.598.521 10.864 9.47 12.341-9.219v-150.499h-262m-1-1h264v152l-13.391 10-11.474-10-13.891 10-10.244-8.4v-110.6h-154v114.66l-8.078-5.66-4.922 4.18v-113.18h-38v116.95l-10-7.45v-152.5z" fill="#e5e5e5"/></g><path d="M61 157.66v-114.66h154v110.6l-2.145-1.6-12.555 10-13.809-10-14.229 10-12.972-10-12.973 10-13.811-10-12.136 10-13.391-10-14.229 10-12.972-10-12.974 10-5.804-4.34z" fill="#e5e5e5"/><path d="M253 36c0-7.732-6.268-14-14-14s-14 6.268-14 14 6.268 14 14 14 14-6.268 14-14z" fill="#e5e5e5"/><path d="M10 159.95v-116.95h38v113.18l-7.551 5.82-13.811-10-13.891 10-2.747-2.05z" fill="#e5e5e5"/><path d="M226 107v-35h25v35h-25z" fill="#e5e5e5"/><path d="M31.49 5h-26v6h26v-6z" fill="#e5e5e5"/><path fill="#e5e5e5" d="M55.49 5h-22v6h22z"/><path d="M122 6v4h92v-4h-92m-1-1h94v6h-94v-6z" fill="#e5e5e5"/><path fill="#e5e5e5" d="M79.49 5h-22v6h22z"/><path fill="#e5e5e5" d="M102.49 5h-13v6h13z"/><path fill="#e5e5e5" d="M87.49 5h-6v6h6z"/><path fill="#e5e5e5" d="M110.49 5h-6v6h6z"/><path fill="#e5e5e5" d="M255 5h-32v6h32z"/><path d="M262 14.5h-260" fill="#e5e5e5" stroke="#e5e5e5"/><path fill="#e5e5e5" d="M212 7h-2v2h2z"/><path d="M226 59v-5h25v5h-25z" fill="#e5e5e5"/><path d="M226 132.625v-35h25v35h-25z" fill="#8acdff"/><rect width="20.438" height="2.176" rx=".151" ry=".107" x="-248.719" y="108.59" transform="scale(-1 1)" fill="#fff"/><rect width="20.438" height="2.176" rx=".151" ry=".107" x="-248.719" y="113.831" transform="scale(-1 1)" fill="#fff"/><rect width="20.438" height="6.188" rx=".151" ry=".303" x="-248.719" y="124.313" transform="scale(-1 1)" fill="#2693ff"/><g transform="matrix(-.747 0 0 .747 256.705 33.453)" fill="#fff"><rect width="1.823" height="1.882" rx=".013" ry=".092" x="20.273" y="125.738"/><rect width="1.823" height="1.882" rx=".013" ry=".092" x="26.655" y="125.738"/><rect width="1.823" height="1.882" rx=".013" ry=".092" x="23.464" y="125.738"/></g><rect width="20.438" height="2.176" rx=".151" ry=".107" x="-248.719" y="103.349" transform="scale(-1 1)" fill="#fff"/><rect width="20.438" height="2.176" rx=".151" ry=".107" x="-248.719" y="119.072" transform="scale(-1 1)" fill="#fff"/></svg> \ No newline at end of file
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg" width="264" height="162" viewBox="0 0 264 162">
+ <defs>
+ <clipPath id="jagged-edge">
+ <path d="M0 0v152l12 10 12-10 12 10 12-10 12 10 12-10 12 10 12-10 12 10 12-10 12 10 12-10 12 10 12-10 12 10 12-10 12 10 12-10 12 10 12-10 12 10 12-10V0z"/>
+ </clipPath>
+ </defs>
+ <g fill="#eaecf0" clip-path="url(#jagged-edge)" transform="matrix(-1 0 0 1 264 0)">
+ <path id="background" fill="#fff" d="M0 0h264v162H0"/>
+ <path id="logo" d="M11 22c0-8 6-14 14-14s14 6 14 14-6 14-14 14-14-6-14-14m27 23v-5H13v5h25"/>
+ <path id="sidebar" d="M38 130V58H13v72h25z"/>
+ <path id="personal-tools" d="M233 5h26v6h-26V5zm-24 0h22v6h-22zm-24 0h22v6h-22zm-23 0h13v6h-13zm15 0h6v6h-6zm-23 0h6v6h-6z"/>
+ <path id="search-input" d="M258 16v4h-92v-4h92m1-1h-94v6h94v-6z"/>
+ <path id="search-icon" d="M168 17h2v2h-2z"/>
+ <path id="article" d="M252 162V29H48v133z"/>
+ <path id="border" d="M0 0v162h264V0zm1 1h262v150.533l-11 9.166-12-10-12 10-12-10-12 10-12-10-12 10-12-10-12 10-12-10-12 10-12-10-12 10-12-10-12 10-12-10-12 10-12-10-12 10-12-10-12 10-11-9z"/>
+ <path fill="#36c" d="M38 132.625v-35H13v35h25z"/>
+ <rect width="19" height="2" x="16" y="108.59" fill="#eaf3ff" rx=".151" ry=".107"/>
+ <rect width="19" height="2" x="16" y="113.831" fill="#eaf3ff" rx=".151" ry=".107"/>
+ <rect width="19" height="6" x="16" y="124.313" fill="#2a4b8d" rx=".151" ry=".303"/>
+ <g fill="#fff" transform="matrix(.747 0 0 .747 7.295 33.453)">
+ <rect width="2" height="2" x="20" y="125" rx=".013" ry=".092"/>
+ <rect width="2" height="2" x="23" y="125" rx=".013" ry=".092"/>
+ <rect width="2" height="2" x="26" y="125" rx=".013" ry=".092"/>
+ </g>
+ <rect width="19" height="2" x="16" y="103.349" fill="#eaf3ff" rx=".151" ry=".107"/>
+ <rect width="19" height="2" x="16" y="119.072" fill="#eaf3ff" rx=".151" ry=".107"/>
+ </g>
+</svg>
diff --git a/MLEB/UniversalLanguageSelector/resources/images/compact-links-trigger.svg b/MLEB/UniversalLanguageSelector/resources/images/compact-links-trigger.svg
index 1161d4f2..3a62fe8c 100644
--- a/MLEB/UniversalLanguageSelector/resources/images/compact-links-trigger.svg
+++ b/MLEB/UniversalLanguageSelector/resources/images/compact-links-trigger.svg
@@ -1 +1,4 @@
-<?xml version="1.0" encoding="utf-8"?><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 612 792" enable-background="new 0 0 612 792"><g fill="#777"><path d="M291.3 439.4c-39.5-38.9-73.9-72.7-93.7-150.5h138.4v-58.6h-138.4v-77.1h-59.3v77.8h-138.3v58.7h138.3v19.8c-19.7 76.9-43.3 126-138.3 173.8l19.8 58.7c89.9-48.4 137.1-107.7 158.1-175.3 19.8 51 53.5 91.8 91.8 130l21.6-57.3zM473.7 250h-79l-138.4 388.9h59.3l39.5-116.7h158.1l39.5 116.7h59.3l-138.3-388.9zm-98.8 214.2l59.3-155.5 59.3 155.6-118.6-.1z"/></g></svg> \ No newline at end of file
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24">
+ <path fill="#72777d" d="M13 19l.8-3h5.3l.9 3h2.2L18 6h-3l-4.2 13H13zm3.5-11l2 6h-4l2-6zM5 4l.938 1.906H1V8h1.594C3.194 9.8 4 11.206 5 12.406c-1.1.7-4.313 1.781-4.313 1.781L2 16s3.487-1.387 4.688-2.188c1 .7 2.319 1.188 3.719 1.688l.594-2c-1-.3-1.988-.688-2.688-1.188 1.1-1.1 1.9-2.506 2.5-4.406h2.188l.5-2H7.938L7 4H5zm-.188 4h3.781c-.4 1.3-.906 2-1.906 3-1.1-1-1.475-1.7-1.875-3z"/>
+</svg>
diff --git a/MLEB/UniversalLanguageSelector/resources/images/display.png b/MLEB/UniversalLanguageSelector/resources/images/display.png
index 032310d7..7b97f152 100644
--- a/MLEB/UniversalLanguageSelector/resources/images/display.png
+++ b/MLEB/UniversalLanguageSelector/resources/images/display.png
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/resources/images/display.svg b/MLEB/UniversalLanguageSelector/resources/images/display.svg
index 98f93f2c..098503cb 100644
--- a/MLEB/UniversalLanguageSelector/resources/images/display.svg
+++ b/MLEB/UniversalLanguageSelector/resources/images/display.svg
@@ -1 +1,4 @@
-<?xml version="1.0" encoding="UTF-8"?><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20"><path d="M.002 2.275v12.945h8.405c.535 1.624-.975 1.786-1.902 2.505 0 0 2.293-.024 3.439-.024 1.144 0 3.432.024 3.432.024-.905-.688-2.355-.868-1.902-2.505h8.527v-12.945h-20zm6.81 1.84h.797l3.313 8.466h-1.043l-1.043-2.638h-3.374l-1.043 2.638h-.982zm.368 1.104c-.084.369-.211.785-.368 1.227l-.982 2.577h2.699l-.982-2.577c-.128-.33-.234-.747-.368-1.227zm7.117.982c.753 0 1.295.157 1.656.491.365.334.552.858.552 1.595v4.294h-.675l-.184-.859h-.062c-.315.396-.605.655-.92.798-.311.138-.758.184-1.227.184-.626 0-1.115-.168-1.472-.491-.353-.323-.491-.754-.491-1.35 0-1.275 1.028-1.963 3.068-2.025h1.043v-.429c0-.495-.091-.87-.307-1.104-.211-.238-.574-.307-1.043-.307-.526 0-1.115.107-1.779.429l-.307-.675c.311-.169.674-.333 1.043-.429.373-.096.732-.123 1.104-.123zm.307 3.313c-.761.027-1.318.157-1.656.368-.334.207-.491.54-.491.982 0 .346.1.617.307.798.211.181.544.245.92.245.595 0 1.012-.164 1.35-.491.342-.326.552-.762.552-1.35v-.552z" fill="#434343"/></svg> \ No newline at end of file
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20">
+ <path fill="#222" d="M.002 2.275V15.22h8.405c.535 1.624-.975 1.786-1.902 2.505 0 0 2.293-.024 3.439-.024 1.144 0 3.432.024 3.432.024-.905-.688-2.355-.868-1.902-2.505h8.527V2.275h-20zm6.81 1.84h.797l3.313 8.466H9.879L8.836 9.943H5.462l-1.043 2.638h-.982zm.368 1.104c-.084.369-.211.785-.368 1.227L5.83 9.023h2.699l-.982-2.577c-.128-.33-.234-.747-.368-1.227zm7.117.982c.753 0 1.295.157 1.656.491.365.334.552.858.552 1.595v4.294h-.675l-.184-.859h-.062c-.315.396-.605.655-.92.798-.311.138-.758.184-1.227.184-.626 0-1.115-.168-1.472-.491-.353-.323-.491-.754-.491-1.35 0-1.275 1.028-1.963 3.068-2.025h1.043v-.429c0-.495-.091-.87-.307-1.104-.211-.238-.574-.307-1.043-.307-.526 0-1.115.107-1.779.429l-.307-.675a4.748 4.748 0 0 1 1.043-.429 4.334 4.334 0 0 1 1.104-.123zm.307 3.313c-.761.027-1.318.157-1.656.368-.334.207-.491.54-.491.982 0 .346.1.617.307.798.211.181.544.245.92.245.595 0 1.012-.164 1.35-.491.342-.326.552-.762.552-1.35v-.552z"/>
+</svg>
diff --git a/MLEB/UniversalLanguageSelector/resources/images/help.png b/MLEB/UniversalLanguageSelector/resources/images/help.png
index 27e2a41e..a964f6c3 100644
--- a/MLEB/UniversalLanguageSelector/resources/images/help.png
+++ b/MLEB/UniversalLanguageSelector/resources/images/help.png
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/resources/images/help.svg b/MLEB/UniversalLanguageSelector/resources/images/help.svg
index 21bf00b6..c2b741a6 100644
--- a/MLEB/UniversalLanguageSelector/resources/images/help.svg
+++ b/MLEB/UniversalLanguageSelector/resources/images/help.svg
@@ -1 +1,4 @@
-<?xml version="1.0" encoding="UTF-8"?><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18.000001"><path d="M9 1.5c-4.141 0-7.5 3.358-7.5 7.5 0 4.142 3.359 7.501 7.5 7.501 4.143 0 7.5-3.359 7.5-7.501s-3.356-7.5-7.5-7.5zm-.001 11.943c-.613 0-1.067-.49-1.067-1.08 0-.614.454-1.093 1.067-1.093.59 0 1.068.479 1.068 1.093 0 .589-.479 1.08-1.068 1.08zm1.522-4.639c-.515.405-.712.663-.712 1.239v.356h-1.571v-.43c0-1.081.32-1.522.822-1.915.504-.393.811-.602.811-1.166 0-.479-.295-.749-.883-.749-.504 0-.946.135-1.412.454l-.749-1.287c.613-.43 1.375-.737 2.381-.737 1.362 0 2.505.749 2.505 2.184-.001 1.019-.566 1.559-1.192 2.049z" fill="#575757"/></svg> \ No newline at end of file
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18">
+ <path fill="#54595d" d="M9 1.5a7.5 7.5 0 1 0 .002 15.002A7.5 7.5 0 0 0 9 1.5zm-.001 11.943c-.613 0-1.067-.49-1.067-1.08 0-.614.454-1.093 1.067-1.093.59 0 1.068.479 1.068 1.093a1.08 1.08 0 0 1-1.068 1.08zm1.522-4.639c-.515.405-.712.663-.712 1.239v.356H8.238v-.43c0-1.081.32-1.522.822-1.915.504-.393.811-.602.811-1.166 0-.479-.295-.749-.883-.749-.504 0-.946.135-1.412.454l-.749-1.287c.613-.43 1.375-.737 2.381-.737 1.362 0 2.505.749 2.505 2.184-.001 1.019-.566 1.559-1.192 2.049z"/>
+</svg>
diff --git a/MLEB/UniversalLanguageSelector/resources/images/input.svg b/MLEB/UniversalLanguageSelector/resources/images/input.svg
index 5b11b20e..b0dac628 100644
--- a/MLEB/UniversalLanguageSelector/resources/images/input.svg
+++ b/MLEB/UniversalLanguageSelector/resources/images/input.svg
@@ -1 +1,4 @@
-<?xml version="1.0" encoding="UTF-8"?><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20"><path d="M9 1.281c-.124.259-.185.599-.5.688-.55.081-1.133.018-1.688 0-.866-.032-1.733-.148-2.594 0-.588.157-.953.727-1.188 1.25-.178.416-.271.836-.344 1.281h-2.688v11.5h20v-11.5h-16.344c.109-.52.203-1.057.563-1.469.222-.231.587-.17.875-.188 1.212.003 2.415.179 3.625.063.463-.058.812-.455.969-.875l.188-.438-.875-.313zm-7.125 5.844h1.563c.094 0 .188.093.188.188v1.531c0 .094-.093.188-.188.188h-1.563c-.094 0-.156-.093-.156-.188v-1.531c0-.094.062-.188.156-.188zm2.844 0h1.563c.094 0 .156.093.156.188v1.531c0 .094-.062.188-.156.188h-1.563c-.094 0-.156-.093-.156-.188v-1.531c0-.094.062-.188.156-.188zm2.844 0h1.563c.094 0 .156.093.156.188v1.531c0 .094-.062.188-.156.188h-1.563c-.094 0-.188-.093-.188-.188v-1.531c0-.094.093-.188.188-.188zm2.813 0h1.563c.094 0 .188.093.188.188v1.531c0 .094-.093.188-.188.188h-1.563c-.094 0-.156-.093-.156-.188v-1.531c0-.094.062-.188.156-.188zm2.844 0h1.563c.094 0 .156.093.156.188v1.531c0 .094-.062.188-.156.188h-1.563c-.094 0-.156-.093-.156-.188v-1.531c0-.094.062-.188.156-.188zm2.844 0h1.531c.094 0 .188.093.188.188v1.531c0 .094-.093.188-.188.188h-1.531c-.094 0-.188-.093-.188-.188v-1.531c0-.094.093-.188.188-.188zm-12.844 3h1.563c.094 0 .156.093.156.188v1.563c0 .094-.062.156-.156.156h-1.563c-.094 0-.156-.062-.156-.156v-1.563c0-.094.062-.188.156-.188zm2.906 0h1.563c.094 0 .188.093.188.188v1.563c0 .094-.093.156-.188.156h-1.563c-.094 0-.156-.062-.156-.156v-1.563c0-.094.062-.188.156-.188zm2.938 0h1.531c.094 0 .188.093.188.188v1.563c0 .094-.093.156-.188.156h-1.531c-.094 0-.188-.062-.188-.156v-1.563c0-.094.093-.188.188-.188zm2.906 0h1.563c.094 0 .156.093.156.188v1.563c0 .094-.062.156-.156.156h-1.563c-.094 0-.188-.062-.188-.156v-1.563c0-.094.093-.188.188-.188zm2.906 0h1.563c.094 0 .156.093.156.188v1.563c0 .094-.062.156-.156.156h-1.563c-.094 0-.156-.062-.156-.156v-1.563c0-.094.062-.188.156-.188zm-10.875 3.563h12c.088 0 .156.068.156.156v.844c0 .088-.068.156-.156.156h-12c-.088 0-.156-.068-.156-.156v-.844c0-.088.068-.156.156-.156z" fill="#434343"/></svg> \ No newline at end of file
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20">
+ <path fill="#222" d="M9 1.281c-.124.259-.185.599-.5.688-.55.081-1.133.018-1.688 0-.866-.032-1.733-.148-2.594 0-.588.157-.953.727-1.188 1.25-.178.416-.271.836-.344 1.281H-.002V16h20V4.5H3.654c.109-.52.203-1.057.563-1.469.222-.231.587-.17.875-.188 1.212.003 2.415.179 3.625.063.463-.058.812-.455.969-.875l.188-.438-.875-.313zM1.875 7.125h1.563c.094 0 .188.093.188.188v1.531a.201.201 0 0 1-.188.188H1.875c-.094 0-.156-.093-.156-.188V7.313c0-.094.062-.188.156-.188zm2.844 0h1.563c.094 0 .156.093.156.188v1.531c0 .094-.062.188-.156.188H4.719c-.094 0-.156-.093-.156-.188V7.313c0-.094.062-.188.156-.188zm2.844 0h1.563c.094 0 .156.093.156.188v1.531c0 .094-.062.188-.156.188H7.563a.201.201 0 0 1-.188-.188V7.313c0-.094.093-.188.188-.188zm2.813 0h1.563c.094 0 .188.093.188.188v1.531a.201.201 0 0 1-.188.188h-1.563c-.094 0-.156-.093-.156-.188V7.313c0-.094.062-.188.156-.188zm2.844 0h1.563c.094 0 .156.093.156.188v1.531c0 .094-.062.188-.156.188H13.22c-.094 0-.156-.093-.156-.188V7.313c0-.094.062-.188.156-.188zm2.844 0h1.531c.094 0 .188.093.188.188v1.531a.201.201 0 0 1-.188.188h-1.531a.201.201 0 0 1-.188-.188V7.313c0-.094.093-.188.188-.188zm-12.844 3h1.563c.094 0 .156.093.156.188v1.563c0 .094-.062.156-.156.156H3.22c-.094 0-.156-.062-.156-.156v-1.563c0-.094.062-.188.156-.188zm2.906 0h1.563c.094 0 .188.093.188.188v1.563c0 .094-.093.156-.188.156H6.126c-.094 0-.156-.062-.156-.156v-1.563c0-.094.062-.188.156-.188zm2.938 0h1.531c.094 0 .188.093.188.188v1.563c0 .094-.093.156-.188.156H9.064c-.094 0-.188-.062-.188-.156v-1.563c0-.094.093-.188.188-.188zm2.906 0h1.563c.094 0 .156.093.156.188v1.563c0 .094-.062.156-.156.156H11.97c-.094 0-.188-.062-.188-.156v-1.563c0-.094.093-.188.188-.188zm2.906 0h1.563c.094 0 .156.093.156.188v1.563c0 .094-.062.156-.156.156h-1.563c-.094 0-.156-.062-.156-.156v-1.563c0-.094.062-.188.156-.188zM4.001 13.688h12c.088 0 .156.068.156.156v.844a.154.154 0 0 1-.156.156h-12a.154.154 0 0 1-.156-.156v-.844c0-.088.068-.156.156-.156z"/>
+</svg>
diff --git a/MLEB/UniversalLanguageSelector/resources/images/remove-input.png b/MLEB/UniversalLanguageSelector/resources/images/remove-input.png
index fa53810d..d3b73985 100644
--- a/MLEB/UniversalLanguageSelector/resources/images/remove-input.png
+++ b/MLEB/UniversalLanguageSelector/resources/images/remove-input.png
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/resources/images/remove-input.svg b/MLEB/UniversalLanguageSelector/resources/images/remove-input.svg
index d44b5c92..a192a26b 100644
--- a/MLEB/UniversalLanguageSelector/resources/images/remove-input.svg
+++ b/MLEB/UniversalLanguageSelector/resources/images/remove-input.svg
@@ -1 +1,5 @@
-<?xml version="1.0" encoding="UTF-8"?><svg xmlns="http://www.w3.org/2000/svg" width="20" height="16"><path d="M9 1.281c-.124.259-.185.599-.5.688-.55.081-1.133.018-1.688 0-.866-.032-1.733-.148-2.594 0-.588.157-.953.727-1.188 1.25-.178.416-.271.836-.344 1.281h-2.688v11.5h20v-11.5h-16.344c.109-.52.203-1.057.563-1.469.222-.231.587-.17.875-.188 1.212.003 2.415.179 3.625.063.463-.058.812-.455.969-.875l.188-.438-.875-.313zm-7.125 5.844h1.563c.094 0 .188.093.188.188v1.531c0 .094-.093.188-.188.188h-1.563c-.094 0-.156-.093-.156-.188v-1.531c0-.094.062-.188.156-.188zm2.844 0h1.563c.094 0 .156.093.156.188v1.531c0 .094-.062.188-.156.188h-1.563c-.094 0-.156-.093-.156-.188v-1.531c0-.094.062-.188.156-.188zm2.844 0h1.563c.094 0 .156.093.156.188v1.531c0 .094-.062.188-.156.188h-1.563c-.094 0-.188-.093-.188-.188v-1.531c0-.094.093-.188.188-.188zm2.813 0h1.563c.094 0 .188.093.188.188v1.531c0 .094-.093.188-.188.188h-1.563c-.094 0-.156-.093-.156-.188v-1.531c0-.094.062-.188.156-.188zm2.844 0h1.563c.094 0 .156.093.156.188v1.531c0 .094-.062.188-.156.188h-1.563c-.094 0-.156-.093-.156-.188v-1.531c0-.094.062-.188.156-.188zm2.844 0h1.531c.094 0 .188.093.188.188v1.531c0 .094-.093.188-.188.188h-1.531c-.094 0-.188-.093-.188-.188v-1.531c0-.094.093-.188.188-.188zm-12.844 3h1.563c.094 0 .156.093.156.188v1.563c0 .094-.062.156-.156.156h-1.563c-.094 0-.156-.062-.156-.156v-1.563c0-.094.062-.188.156-.188zm2.906 0h1.563c.094 0 .188.093.188.188v1.563c0 .094-.093.156-.188.156h-1.563c-.094 0-.156-.062-.156-.156v-1.563c0-.094.062-.188.156-.188zm2.938 0h1.531c.094 0 .188.093.188.188v1.563c0 .094-.093.156-.188.156h-1.531c-.094 0-.188-.062-.188-.156v-1.563c0-.094.093-.188.188-.188zm2.906 0h1.563c.094 0 .156.093.156.188v1.563c0 .094-.062.156-.156.156h-1.563c-.094 0-.188-.062-.188-.156v-1.563c0-.094.093-.188.188-.188zm2.906 0h1.563c.094 0 .156.093.156.188v1.563c0 .094-.062.156-.156.156h-1.563c-.094 0-.156-.062-.156-.156v-1.563c0-.094.062-.188.156-.188zm-10.875 3.563h12c.088 0 .156.068.156.156v.844c0 .088-.068.156-.156.156h-12c-.088 0-.156-.068-.156-.156v-.844c0-.088.068-.156.156-.156z" fill="#565656" transform="scale(.8) translate(2.5 -.2)"/><path d="M2.719 15.279l14.561-14.559" stroke="#565656" stroke-width="1.2"/></svg> \ No newline at end of file
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg" width="20" height="16" viewBox="0 0 20 16">
+ <path fill="#222" d="M9.2.825c-.1.207-.148.479-.4.55-.44.065-.906.015-1.35 0-.693-.025-1.387-.118-2.076 0-.47.126-.762.582-.95 1A4.323 4.323 0 0 0 4.149 3.4h-2.15v9.2h16V3.4H4.922c.087-.416.163-.846.45-1.175.178-.185.47-.136.7-.15.97.002 1.933.143 2.9.05.371-.047.65-.364.776-.7l.15-.35-.7-.251zM3.5 5.5h1.25a.16.16 0 0 1 .15.15v1.225a.16.16 0 0 1-.15.15H3.5c-.075 0-.125-.074-.125-.15V5.65c0-.075.05-.15.125-.15zm2.275 0h1.25c.076 0 .125.074.125.15v1.225c0 .075-.05.15-.124.15h-1.25c-.076 0-.126-.074-.126-.15V5.65c0-.075.05-.15.125-.15zm2.275 0H9.3c.076 0 .126.074.126.15v1.225c0 .075-.05.15-.125.15H8.05a.161.161 0 0 1-.151-.15V5.65a.16.16 0 0 1 .15-.15zm2.25 0h1.251a.16.16 0 0 1 .15.15v1.225a.16.16 0 0 1-.15.15h-1.25c-.075 0-.125-.074-.125-.15V5.65c0-.075.05-.15.125-.15zm2.276 0h1.25c.076 0 .125.074.125.15v1.225c0 .075-.05.15-.125.15h-1.25c-.075 0-.125-.074-.125-.15V5.65c0-.075.05-.15.125-.15zm2.275 0h1.225a.16.16 0 0 1 .15.15v1.225a.16.16 0 0 1-.15.15h-1.225a.161.161 0 0 1-.15-.15V5.65a.16.16 0 0 1 .15-.15zM4.576 7.9h1.25c.076 0 .125.074.125.15V9.3c0 .076-.05.126-.125.126h-1.25c-.075 0-.125-.05-.125-.125V8.05c0-.076.05-.151.125-.151zm2.325 0h1.25a.16.16 0 0 1 .15.15V9.3c0 .076-.074.126-.15.126h-1.25c-.075 0-.125-.05-.125-.125V8.05c0-.076.05-.151.125-.151zm2.35 0h1.225a.16.16 0 0 1 .15.15V9.3c0 .076-.074.126-.15.126H9.251c-.075 0-.15-.05-.15-.125V8.05c0-.076.074-.151.15-.151zm2.325 0h1.25c.076 0 .125.074.125.15V9.3c0 .076-.05.126-.125.126h-1.25c-.075 0-.15-.05-.15-.125V8.05c0-.076.074-.151.15-.151zm2.325 0h1.25c.075 0 .125.074.125.15V9.3c0 .076-.05.126-.125.126h-1.25c-.075 0-.125-.05-.125-.125V8.05c0-.076.05-.151.125-.151zm-8.7 2.85h9.6c.07 0 .125.055.125.125v.675c0 .07-.055.125-.125.125H5.2a.123.123 0 0 1-.125-.125v-.675c0-.07.054-.125.125-.125z"/>
+ <path stroke="#222" stroke-width="1.2" d="M2.719 15.279L17.28.72"/>
+</svg>
diff --git a/MLEB/UniversalLanguageSelector/resources/js/ext.uls.compactlinks.js b/MLEB/UniversalLanguageSelector/resources/js/ext.uls.compactlinks.js
index 20364f88..432cf7ca 100644
--- a/MLEB/UniversalLanguageSelector/resources/js/ext.uls.compactlinks.js
+++ b/MLEB/UniversalLanguageSelector/resources/js/ext.uls.compactlinks.js
@@ -1,4 +1,4 @@
-/**
+/*!
* Compact the interlanguage links in the sidebar
*
* Copyright (C) 2012-2014 Alolita Sharma, Amir Aharoni, Arun Ganesh, Brandon Harris,
@@ -13,330 +13,528 @@
*
* @file
* @ingroup Extensions
- * @licence GNU GPL-2.0+
+ * @licence GNU GPL-2.0-or-later
* @licence MIT License
*/
-( function ( $, mw ) {
+( function () {
'use strict';
+ var DEFAULT_LIST_SIZE = 9;
+
/**
- * For the given array, remove duplicates
- * @param {Array} originalArray
- * @return de-duplicated array
+ * @param {Array} target
+ * @param {Array} source
+ * @param {string|string[]|undefined} items Language code, or list of language codes
*/
- function unique( originalArray ) {
- var uniqueArray = [];
-
- $.each( originalArray, function ( i, v ) {
- if ( $.inArray( v, uniqueArray ) === -1 ) {
- uniqueArray.push( v );
+ function addMatchWithoutDuplicate( target, source, items ) {
+ var i;
+ if ( items === undefined ) {
+ return;
+ }
+ items = !Array.isArray( items ) ? [ items ] : items;
+ for ( i = 0; i < items.length; i++ ) {
+ if (
+ // Only add if unique and matches source
+ target.indexOf( items[ i ] ) === -1 &&
+ source.indexOf( items[ i ] ) !== -1
+ ) {
+ target.push( items[ i ] );
}
- } );
+ }
+ }
- return uniqueArray;
+ /**
+ * Normalize a language code for ULS usage.
+ *
+ * MediaWiki language codes (especially on WMF sites) are inconsistent
+ * with ULS codes. We need to use ULS codes to access the proper data.
+ *
+ * @param {string} code
+ * @return {string} Normalized language code
+ */
+ function convertMediaWikiLanguageCodeToULS( code ) {
+ code = code.toLowerCase();
+ return $.uls.data.isRedirect( code ) || code;
}
/**
- * @class
+ * Get user-defined assistant languages on wikis with Translate extension.
+ *
+ * Where available, they're languages deemed useful by the user.
+ *
+ * @return {string[]|undefined} Language codes
*/
- function CompactInterlanguageList( interlanguageList, options ) {
- this.$interlanguageList = $( interlanguageList );
- this.options = $.extend( {}, $.fn.compactInterlanguageList.defaults, options );
- this.interlanguageList = {};
- this.compactList = {};
- this.$trigger = null;
- this.compactSize = 0;
- this.listSize = 0;
- this.init();
+ function getAssistantLanguages() {
+ var assistantLanguages = mw.user.options.get( 'translate-editlangs' );
+ if ( !assistantLanguages || assistantLanguages === 'default' ) {
+ return;
+ }
+
+ return assistantLanguages.split( /,\s*/ );
}
- CompactInterlanguageList.prototype = {
- /**
- * Initialize the plugin
- */
- init: function () {
- this.interlanguageList = this.getInterlanguageList();
- this.listSize = this.getListSize();
+ /**
+ * Get previously selected languages.
+ *
+ * Previous languages are a good suggestion because the user has
+ * explicitly chosen them in the past.
+ *
+ * @return {string[]} Language codes
+ */
+ function getPreviousLanguages() {
+ return mw.uls.getPreviousLanguages();
+ }
- if ( this.listSize <= this.options.max ) {
- // Not enough languages to compact the list
- return;
- }
+ /**
+ * Get languages from the Babel box on the user's user page.
+ *
+ * @return {string[]|undefined} Language codes
+ */
+ function getBabelLanguages() {
+ return mw.config.get( 'wgULSBabelLanguages' );
+ }
- // If the interlanguage list is of moderate size, the compact size is 7.
- this.compactSize = ( this.listSize <= 12 ) ? 7 : this.options.max;
- this.hideOriginal();
- this.compactList = this.getCompactList();
- this.render();
- this.listen();
- },
+ /**
+ * Get site-specific highlighted languags. Mostly used on Wikimedia sites.
+ *
+ * @return {string[]|undefined} Language codes
+ */
+ function getSitePicks() {
+ return mw.config.get( 'wgULSCompactLinksPrepend' );
+ }
- /**
- * Render the compacted interlanguage list and triggers
- */
- render: function () {
- var language;
+ /**
+ * Get probable languages predicted by ULS.
+ *
+ * @return {string[]} Language codes
+ */
+ function getCommonLanguages() {
+ return mw.uls.getFrequentLanguageList();
+ }
- for ( language in this.compactList ) {
- this.showLanguage( language );
- }
+ /**
+ * Get globally common languages.
+ *
+ * These are not user-specific. This helps to avoid biasing the compact list
+ * to language codes that sort to the beginning of the alphabet in the
+ * final stage.
+ *
+ * @return {string[]} Language codes
+ */
+ function getExtraCommonLanguages() {
+ return [
+ 'zh', 'en', 'hi', 'ur', 'es', 'ar', 'ru', 'id', 'ms', 'pt',
+ 'fr', 'de', 'bn', 'ja', 'pnb', 'pa', 'jv', 'te', 'ta', 'ko', 'mr', 'tr', 'vi',
+ 'it', 'fa', 'sv', 'nl', 'pl'
+ ];
+ }
- this.addTrigger();
- },
+ /**
+ * The final strategy is the original interlanguage list.
+ *
+ * @param {string[]} languages Language codes
+ * @return {string[]} Language codes
+ */
+ function getFinalFallback( languages ) {
+ return languages;
+ }
+
+ /**
+ * @class
+ * @constructor
+ * @param {HTMLElement} listElement Interlanguage list element
+ * @param {Object} options
+ */
+ function CompactInterlanguageList( listElement, options ) {
+ this.listElement = listElement;
+ this.options = options || {};
/**
- * Bind to event handlers and listen for events
+ * @private
+ * @property {Object} interlanguageList
*/
- listen: function () {
- var languages,
- compactLinks = this,
- dir = $( 'html' ).prop( 'dir' ),
- interlanguageListLeft,
- interlanguageListWidth,
- ulsLanguageList = {};
-
- languages = $.map( compactLinks.interlanguageList, function ( language, languageCode ) {
- ulsLanguageList[ languageCode ] = language.autonym;
-
- return languageCode;
- } );
-
- // Calculate the left and width values
- interlanguageListLeft = compactLinks.$interlanguageList.offset().left;
- interlanguageListWidth = compactLinks.$interlanguageList.width();
- // Attach ULS to the trigger
- compactLinks.$trigger.uls( {
- onReady: function () {
- this.$menu.addClass( 'interlanguage-uls-menu' );
- },
- /**
- * Language selection handler
- * @param {string} language language code
- */
- onSelect: function ( language ) {
- var previousLanguages = mw.uls.getPreviousLanguages();
-
- previousLanguages.push( language );
- previousLanguages = unique( previousLanguages );
- mw.uls.setPreviousLanguages( previousLanguages );
- window.location.href = compactLinks.interlanguageList[ language ].href;
- },
- onVisible: function () {
- // Calculate the positioning of the panel
- // according to the position of the trigger icon
- if ( dir === 'rtl' ) {
- this.left = interlanguageListLeft - this.$menu.width();
- } else {
- this.left = interlanguageListLeft + interlanguageListWidth;
- }
- this.$menu.css( 'left', this.left );
- },
- languageDecorator: function ( $languageLink, language ) {
- // set href according to language
- $languageLink.prop( 'href', compactLinks.interlanguageList[ language ].href );
- },
- // Use compact version of ULS
- compact: true,
- // Top position of the language selector. Top it 250px above to take care of
- // caret pointing the trigger. See .interlanguage-uls-menu:after style definition
- top: compactLinks.$trigger.offset().top - compactLinks.$trigger.height() / 2 - 250,
- // List of languages to be shown
- languages: ulsLanguageList,
- // Show common languages
- quickList: compactLinks.filterByCommonLanguages( languages )
- } );
- },
+ this.interlanguageList = null;
/**
- * Get the compacted interlanguage list as associative array
- * @return {Object}
+ * @private
+ * @property {Object} interlanguageList
*/
- getCompactList: function () {
- var language, languages, compactLanguages, index,
- compactedList = {};
-
- languages = $.map( this.interlanguageList, function ( element, index ) {
- return index;
- } );
+ this.compactList = null;
- compactLanguages = this.compact( languages );
+ this.commonInterlanguageList = null;
+ this.$trigger = null;
+ this.compactSize = 0;
+ this.listSize = 0;
+ }
- for ( index = 0; index < compactLanguages.length; index++ ) {
- language = compactLanguages[ index ];
- compactedList[ language ] = this.interlanguageList[ language ];
- }
+ /**
+ * Initialize the plugin
+ */
+ CompactInterlanguageList.prototype.init = function () {
+ var max = this.options.max || DEFAULT_LIST_SIZE;
- return compactedList;
- },
+ this.interlanguageList = this.getInterlanguageList();
+ this.listSize = Object.keys( this.interlanguageList ).length;
- /**
- * Compact a given array of languages
- * @param {Array} languages
- * @return {Array} compacted array
- */
- compact: function ( languages ) {
- var compactLanguages = [];
+ if ( this.listSize <= max ) {
+ // Not enough languages to compact the list
+ mw.hook( 'mw.uls.compactlinks.initialized' ).fire( false );
+ return;
+ }
- // Add user-defined assistant languages on wikis with Translate extension.
- compactLanguages = compactLanguages.concat( this.filterByAssistantLanguages() );
+ // If we're only a bit beyond max, limit to 7 instead of 9.
+ // FIXME: This assumes the max is 9.
+ this.compactSize = ( this.listSize <= 12 ) ? 7 : max;
+ this.compactList = this.getCompactList();
+ this.hideOriginal();
+ this.render();
+ this.listen();
+ };
- // Add previously selected languages.
- // Previous languages are always the better suggestion
- // because the user has explicitly chosen them.
- compactLanguages = compactLanguages.concat( this.filterByPreviousLanguages() );
+ /**
+ * Render the compacted interlanguage list and triggers
+ */
+ CompactInterlanguageList.prototype.render = function () {
+ var language;
- // Add all common languages to the beginning of array.
- // These are the most probable languages predicted by ULS.
- compactLanguages = compactLanguages.concat( this.filterByCommonLanguages( languages ) );
+ for ( language in this.compactList ) {
+ this.compactList[ language ].parentNode.style.display = '';
+ }
- // Finally add the whole languages array too.
- // We will remove duplicates and cut down to required size.
- compactLanguages = compactLanguages.concat( languages );
+ this.addTrigger();
- // Remove duplicates
- compactLanguages = unique( compactLanguages );
+ mw.hook( 'mw.uls.compactlinks.initialized' ).fire( true );
+ };
- // Cut to compact size and sort
- compactLanguages = compactLanguages.slice( 0, this.compactSize ).sort();
+ /**
+ * Attaches the actual selector to the trigger.
+ *
+ * @param {jQuery} $trigger Element to use as trigger.
+ */
+ CompactInterlanguageList.prototype.createSelector = function ( $trigger ) {
+ var languages = Object.keys( this.interlanguageList ),
+ self = this,
+ ulsLanguageList = {};
- return compactLanguages;
- },
+ $.each( this.interlanguageList, function ( languageCode, el ) {
+ ulsLanguageList[ languageCode ] = el.textContent;
+ } );
- /**
- * Filter the language list by previous languages.
- * Not all previous languages will be present in interlanguage links,
- * so we are filtering them.
- * @return {Array} List of language codes supported by the article
- */
- filterByPreviousLanguages: function ( languages ) {
- var previousLanguages = mw.uls.getPreviousLanguages();
+ // Attach ULS to the trigger
+ $trigger.uls( {
+ onReady: function () {
+ this.$menu.addClass( 'interlanguage-uls-menu' );
+ },
+ /**
+ * Language selection handler
+ *
+ * @param {string} language language code
+ * @param {Object} event jQuery event object
+ */
+ onSelect: function ( language, event ) {
+ self.$trigger.removeClass( 'selector-open' );
+ mw.uls.addPreviousLanguage( language );
+
+ // Switch the current tab to the new language,
+ // unless it was Ctrl-click or Command-click
+ if ( !event.metaKey && !event.shiftKey ) {
+ location.href = self.interlanguageList[ language ].href;
+ }
+ },
+ onVisible: function () {
+ var offset, height, width, triangleWidth;
+ // The panel is positioned carefully so that our pointy triangle,
+ // which is implemented as a square box rotated 45 degrees with
+ // rotation origin in the middle. See the corresponding style file.
+
+ // These are for the trigger
+ offset = $trigger.offset();
+ width = $trigger.outerWidth();
+ height = $trigger.outerHeight();
+
+ // Triangle width is: who knows now, but this still looks fine.
+ triangleWidth = 12;
+
+ if ( offset.left > $( window ).width() / 2 ) {
+ this.left = offset.left - this.$menu.outerWidth() - triangleWidth;
+ this.$menu.removeClass( 'selector-left' ).addClass( 'selector-right' );
+ } else {
+ this.left = offset.left + width + triangleWidth;
+ this.$menu.removeClass( 'selector-right' ).addClass( 'selector-left' );
+ }
+ // Offset from the middle of the trigger
+ this.top = offset.top + ( height / 2 ) - 27;
+
+ this.$menu.css( {
+ left: this.left,
+ top: this.top
+ } );
+ $trigger.addClass( 'selector-open' );
+ },
+ languageDecorator: function ( $languageLink, language ) {
+ var element = self.interlanguageList[ language ];
+ // Set href, text, and tooltip exactly same as what was in
+ // interlanguage link. The ULS autonym might be different in some
+ // cases like sr. In ULS it is "српски", while in interlanguage links
+ // it is "српски / srpski"
+ $languageLink
+ .prop( {
+ href: element.href,
+ title: element.title
+ } )
+ .text( element.textContent );
+
+ // This code is to support badges used in Wikimedia
+ $languageLink.parent().addClass( element.parentNode.className );
+ },
+ onCancel: function () {
+ $trigger.removeClass( 'selector-open' );
+ },
+ languages: ulsLanguageList,
+ ulsPurpose: 'compact-language-links',
+ // Show common languages
+ quickList: self.getCommonLanguages( languages ),
+ noResultsTemplate: function () {
+ var $defaultTemplate = $.fn.lcd.defaults.noResultsTemplate.call( this );
+ // Customize the message
+ $defaultTemplate
+ .find( '.uls-no-results-found-title' )
+ .data( 'i18n', 'ext-uls-compact-no-results' );
+ return $defaultTemplate;
+ }
+ } );
+ };
- return $.grep( previousLanguages, function ( language ) {
- return $.inArray( language, languages ) >= 0;
+ /**
+ * Bind to event handlers and listen for events
+ */
+ CompactInterlanguageList.prototype.listen = function () {
+ var self = this;
+
+ this.$trigger.one( 'click', function () {
+ // Load the ULS now.
+ mw.loader.using( 'ext.uls.mediawiki' ).then( function () {
+ self.createSelector( self.$trigger );
+ self.$trigger.click();
} );
- },
-
- /**
- * Filter the language list by common languages.
- * Common languages are the most probable languages predicted by ULS.
- * @return {Array} List of language codes supported by the article
- */
- filterByCommonLanguages: function ( languages ) {
- var commonLanguages = mw.uls.getFrequentLanguageList();
+ } );
+ };
- return $.grep( commonLanguages, function ( language ) {
- return $.inArray( language, languages ) >= 0;
- } );
- },
+ /**
+ * Get the compacted interlanguage list as associative array
+ *
+ * @return {Object}
+ */
+ CompactInterlanguageList.prototype.getCompactList = function () {
+ var language, languages, compactLanguages, i, compactedList;
- /**
- * Filter the language list by Translate's assistant languages.
- * Where available, they're languages deemed useful by the user.
- * @return {Array} List of those language codes which are supported by article
- */
- filterByAssistantLanguages: function ( languages ) {
- var assistantLanguages = mw.user.options.get( 'translate-editlangs' );
+ compactedList = {};
+ languages = Object.keys( this.interlanguageList );
+ compactLanguages = this.compact( languages );
- if ( assistantLanguages && assistantLanguages !== 'default' ) {
- return $.grep( assistantLanguages.split( /,\s*/ ), function ( language ) {
- return $.inArray( language, languages ) >= 0;
- } );
- }
+ for ( i = 0; i < compactLanguages.length; i++ ) {
+ language = compactLanguages[ i ];
+ compactedList[ language ] = this.interlanguageList[ language ];
+ }
- return [];
- },
+ return compactedList;
+ };
- /**
- * Find out the existing languages supported
- * by the article and fetch their href.
- * @return {Object} List of existing language codes and their hrefs
- */
- getInterlanguageList: function getInterlanguageList() {
- var interlanguageList = {};
+ /**
+ * Get compacting strategies.
+ *
+ * The items will be executed in the given order till the required
+ * compact size is achieved. Each strategy is given two arrays: `candidates`
+ * and `languages`. The candidates array is a list the callback should add to.
+ * The languages list contains language codes actually available for the current
+ * page, the callback may use this to optimise their search for candidates,
+ * although compact() will filter out irrelevant candidates so strategies should
+ * only use this if it helps narrow their search for candidates, avoid needless
+ * filtering that compact() will do already.
+ *
+ * @return {Function[]} Array of compacting functions
+ */
+ CompactInterlanguageList.prototype.getCompactStrategies = function () {
+ return [
+ getAssistantLanguages,
+ getPreviousLanguages,
+ getBabelLanguages,
+ getSitePicks,
+ getCommonLanguages,
+ this.getLangsInText,
+ this.getLangsWithBadges,
+ getExtraCommonLanguages,
+ getFinalFallback
+ ];
+ };
- this.$interlanguageList.find( 'li.interlanguage-link > a' ).each( function () {
- var $this = $( this );
+ /**
+ * Compact a given array of languages
+ *
+ * @param {Array} languages
+ * @return {Array} Compacted array
+ */
+ CompactInterlanguageList.prototype.compact = function ( languages ) {
+ var i, strategies, found,
+ compactLanguages = [];
+
+ strategies = this.getCompactStrategies();
+ for ( i = 0; i < strategies.length; i++ ) {
+ found = strategies[ i ]( languages );
+ // Add language codes from 'found' that are also in 'languages'
+ // to 'compactLanguages' (if not already in there).
+ addMatchWithoutDuplicate( compactLanguages, languages, found );
+ if ( compactLanguages.length >= this.compactSize ) {
+ // We have more than enough items. Stop here.
+ compactLanguages = compactLanguages.slice( 0, this.compactSize );
+ break;
+ }
+ }
- interlanguageList[ $this.attr( 'lang' ) ] = {
- href: $this.attr( 'href' ),
- autonym: $this.text()
- };
- } );
+ return compactLanguages;
+ };
- return interlanguageList;
- },
+ /**
+ * Get language codes that are used in the page's text content.
+ *
+ * This is done by looking for HTML elements with a "lang" attribute—they
+ * are likely to appear in a foreign name, for example.
+ *
+ * The reader doesn't necessarily know this language, but it
+ * appears relevant to the page.
+ *
+ * @return {string[]} Language codes
+ */
+ CompactInterlanguageList.prototype.getLangsInText = function () {
+ var languagesInText = [];
+ $.each( document.querySelectorAll( '#mw-content-text [lang]' ), function ( i, el ) {
+ var lang = convertMediaWikiLanguageCodeToULS( el.lang );
+ if ( languagesInText.indexOf( lang ) === -1 ) {
+ languagesInText.push( lang );
+ }
+ } );
- /**
- * Get the size of the interlanguage list
- */
- getListSize: function () {
- return $.map( this.interlanguageList, function ( item, index ) {
- return index;
- } ).length;
- },
+ return languagesInText;
+ };
- /**
- * Hide the original interlanguage list
- */
- hideOriginal: function () {
- this.$interlanguageList.find( '.interlanguage-link' ).hide();
- },
+ /**
+ * Get languages in which a related page has any kind of a badge,
+ * such as "featured article". The "badge-*" classes are added by Wikibase.
+ *
+ * @return {string[]} Language codes
+ */
+ CompactInterlanguageList.prototype.getLangsWithBadges = function () {
+ return $.map(
+ document.querySelectorAll( '#p-lang [class*="badge"]' ),
+ function ( el ) {
+ return convertMediaWikiLanguageCodeToULS(
+ el.querySelector( '.interlanguage-link-target' ).lang
+ );
+ }
+ );
+ };
- /**
- * Add the trigger at the bottom of the language list
- */
- addTrigger: function () {
- var $trigger;
+ /**
+ * Get the list of languages links.
+ *
+ * @return {Object} Map of language codes to elements.
+ */
+ CompactInterlanguageList.prototype.getInterlanguageList = function () {
+ var interlanguageList = {};
- $trigger = $( '<button>' )
- .addClass( 'mw-interlanguage-selector mw-ui-button active' )
- .html( $.i18n(
- 'ext-uls-compact-link-count',
- mw.language.convertNumber( this.listSize - this.compactSize )
- ) );
+ $.each( this.listElement.querySelectorAll( '.interlanguage-link-target' ), function ( i, el ) {
+ var langCode = convertMediaWikiLanguageCodeToULS( el.lang );
+ interlanguageList[ langCode ] = el;
+ } );
- this.$interlanguageList.append( $trigger );
- this.$trigger = $trigger;
- },
+ return interlanguageList;
+ };
- /**
- * Show a language from the interlanguage list
- * @param {string} language
- */
- showLanguage: function ( language ) {
- this.$interlanguageList.find( '.interwiki-' + language ).show();
+ /**
+ * Get common languages - the most probable languages predicted by ULS.
+ *
+ * @param {string[]} languages Language codes
+ * @return {string[]} List of all common language codes
+ */
+ CompactInterlanguageList.prototype.getCommonLanguages = function ( languages ) {
+ if ( this.commonInterlanguageList === null ) {
+ this.commonInterlanguageList = mw.uls.getFrequentLanguageList()
+ .filter( function ( language ) {
+ return languages.indexOf( language ) >= 0;
+ } );
}
+
+ return this.commonInterlanguageList;
};
/**
- * CompactInterlanguageList Plugin
- * @param {Object} [option]
+ * Hide languages in the interlanguage list.
+ *
+ * The most relevant ones are unhidden in #render.
*/
- $.fn.compactInterlanguageList = function ( option ) {
- return this.each( function () {
- var $this = $( this ),
- data = $this.data( 'compactinterlanguagelist' ),
- options = typeof option === 'object' && option;
-
- if ( !data ) {
- $this.data( 'compactinterlanguagelist', ( data = new CompactInterlanguageList( this, options ) ) );
- }
-
- if ( typeof option === 'string' ) {
- data[ option ]();
- }
- } );
+ CompactInterlanguageList.prototype.hideOriginal = function () {
+ var links = this.listElement.querySelectorAll( '.interlanguage-link' ),
+ i = links.length;
+ while ( i-- ) {
+ links[ i ].style.display = 'none';
+ }
};
/**
- * Defaults
+ * Add the trigger at the bottom of the language list
*/
- $.fn.compactInterlanguageList.defaults = {
- max: 9 // Compact the list to this size
+ CompactInterlanguageList.prototype.addTrigger = function () {
+ var trigger = document.createElement( 'button' );
+ trigger.className = 'mw-interlanguage-selector mw-ui-button';
+ trigger.title = mw.message( 'ext-uls-compact-link-info' ).plain();
+ // Use text() because the message needs {{PLURAL:}}
+ trigger.textContent = mw.message(
+ 'ext-uls-compact-link-count',
+ mw.language.convertNumber( this.listSize - this.compactSize )
+ ).text();
+
+ this.listElement.appendChild( trigger );
+ this.$trigger = $( trigger );
};
- $( document ).ready( function () {
- $( '#p-lang ul' ).compactInterlanguageList();
- } );
-}( jQuery, mediaWiki ) );
+ /**
+ * Performance cost of calling createCompactList(), as of 2018-09-10.
+ *
+ * Summary:
+ * - DOM Queries: 5 + 1N
+ * * createCompactList (1 querySelector)
+ * * getLangsWithBadges (1N querySelector, 1 querySelectorAll)
+ * * getInterlanguageList (1 querySelectorAll)
+ * * getLangsInText (1 querySelectorAll)
+ * * hideOriginal (1 querySelectorAll)
+ * - DOM Writes: 1 + 2N
+ * * addTrigger (1 appendChild)
+ * * hideOriginal (1N Element.style)
+ * * render (1N Element.style)
+ * - Misc: 1
+ * * addTrigger (1 mw.Message#parser)
+ */
+ function createCompactList() {
+ var listElement, compactList;
+ listElement = document.querySelector( '#p-lang ul' );
+ if ( !listElement ) {
+ // Not all namespaces/pages/actions have #p-lang.
+ return;
+ }
+ compactList = new CompactInterlanguageList( listElement, {
+ // Compact the list to this size
+ max: 9
+ } );
+ compactList.init();
+
+ }
+
+ // Early execute of createCompactList
+ if ( document.readyState === 'interactive' ) {
+ createCompactList();
+ } else {
+ $( createCompactList );
+ }
+
+}() );
diff --git a/MLEB/UniversalLanguageSelector/resources/js/ext.uls.displaysettings.js b/MLEB/UniversalLanguageSelector/resources/js/ext.uls.displaysettings.js
index 3d90e05a..df246162 100644
--- a/MLEB/UniversalLanguageSelector/resources/js/ext.uls.displaysettings.js
+++ b/MLEB/UniversalLanguageSelector/resources/js/ext.uls.displaysettings.js
@@ -1,4 +1,4 @@
-/**
+/*!
* ULS-based display settings panel
*
* Copyright (C) 2012 Alolita Sharma, Amir Aharoni, Arun Ganesh, Brandon Harris,
@@ -16,80 +16,90 @@
* @licence GNU General Public Licence 2.0 or later
* @licence MIT License
*/
-( function ( $, mw ) {
+
+( function () {
'use strict';
- var template = '<div class="uls-display-settings">'
+ var template = '<div class="uls-display-settings">' +
- + '<div class="row">' // Tab switcher buttons
- + '<div class="twelve columns uls-display-settings-tab-switcher">'
- + '<div class="uls-button-group">'
- + '<button id="uls-display-settings-language-tab" class="button down" data-i18n="ext-uls-display-settings-language-tab"></button>'
- + '<button id="uls-display-settings-fonts-tab" class="button" data-i18n="ext-uls-display-settings-fonts-tab"></button>'
- + '</div>'
- + '</div>'
- + '</div>'
+ // Tab switcher buttons
+ '<div class="row">' +
+ '<div class="twelve columns uls-display-settings-tab-switcher">' +
+ '<div class="uls-button-group mw-ui-button-group">' +
+ '<button id="uls-display-settings-language-tab" class="mw-ui-button mw-ui-pressed" ' +
+ 'data-i18n="ext-uls-display-settings-language-tab"></button>' +
+ '<button id="uls-display-settings-fonts-tab" class="mw-ui-button" data-i18n="ext-uls-display-settings-fonts-tab"></button>' +
+ '</div>' +
+ '</div>' +
+ '</div>' +
- + '<div class="ext-uls-sub-panel uls-display-settings-language-tab">' // Begin display language sub-panel
+ // Begin display language sub-panel
+ '<div class="ext-uls-sub-panel uls-display-settings-language-tab">' +
// "Display language", title above the buttons row
- + '<div class="row">'
- + '<div class="eleven columns">'
- + '<h4 data-i18n="ext-uls-display-settings-ui-language"></h4>'
- + '</div>'
- + '</div>'
+ '<div class="row">' +
+ '<div class="twelve columns">' +
+ '<h4 data-i18n="ext-uls-display-settings-ui-language"></h4>' +
+ '</div>' +
+ '</div>' +
// UI languages buttons row
- + '<div class="row">'
- + '<div class="uls-ui-languages eleven columns">'
- + '<p data-i18n="ext-uls-language-buttons-help"></p>'
- + '</div>'
- + '</div>'
+ '<div class="row">' +
+ '<div class="uls-ui-languages twelve columns">' +
+ '<p data-i18n="ext-uls-language-buttons-help"></p>' +
+ '</div>' +
+ '</div>' +
- + '</div>' // End display language section
+ // End display language section
+ '</div>' +
- + '<div class="ext-uls-sub-panel uls-display-settings-fonts-tab hide">' // Begin font settings section, hidden by default
+ // Begin font settings section, hidden by default
+ '<div class="ext-uls-sub-panel uls-display-settings-fonts-tab hide">' +
// "Font settings" title
- + '<div class="row">'
- + '<div class="twelve columns">'
- + '<h4 data-i18n="ext-uls-display-settings-font-settings"></h4>'
- + '</div>'
- + '</div>'
+ '<div class="row">' +
+ '<div class="twelve columns">' +
+ '<h4 data-i18n="ext-uls-display-settings-font-settings"></h4>' +
+ '</div>' +
+ '</div>' +
- + '<div id="uls-display-settings-font-selectors" class="uls-display-settings-font-selectors">'
+ '<div id="uls-display-settings-font-selectors" class="uls-display-settings-font-selectors">' +
// Menus font selection dropdown with label
- + '<div class="row uls-font-item uls-content-fonts">'
- + '<div class="six columns">'
- + '<label class="uls-font-label" id="content-font-selector-label"></label>'
- + '</div>'
- + '<select id="content-font-selector" class="four columns end uls-font-select"></select>'
- + '</div>'
+ '<div class="row uls-font-item uls-content-fonts">' +
+ '<div class="six columns">' +
+ '<label class="uls-font-label" id="content-font-selector-label"></label>' +
+ '</div>' +
+ '<select id="content-font-selector" class="four columns end uls-font-select"></select>' +
+ '</div>' +
// Content font selection dropdown with label
- + '<div class="row uls-font-item uls-ui-fonts">'
- + '<div class="six columns">'
- + '<label class="uls-font-label" id="ui-font-selector-label"></label>'
- + '</div>'
- + '<select id="ui-font-selector" class="four columns end uls-font-select"></select>'
- + '</div>'
+ '<div class="row uls-font-item uls-ui-fonts">' +
+ '<div class="six columns">' +
+ '<label class="uls-font-label" id="ui-font-selector-label"></label>' +
+ '</div>' +
+ '<select id="ui-font-selector" class="four columns end uls-font-select"></select>' +
+ '</div>' +
- + '</div>' // End font selectors
+ // End font selectors
+ '</div>' +
// Webfonts enabling checkbox with label
- + '<div class="row">'
- + '<div class="eleven columns">'
- + '<label class="checkbox">'
- + '<input type="checkbox" id="webfonts-enable-checkbox" />'
- + '<strong data-i18n="ext-uls-webfonts-settings-title"></strong> '
- + '<span data-i18n="ext-uls-webfonts-settings-info"></span> '
- + '<a target="_blank" href="https://www.mediawiki.org/wiki/Universal_Language_Selector/WebFonts" data-i18n="ext-uls-webfonts-settings-info-link"></a>'
- + '</label>'
- + '</div>'
- + '</div>'
-
- + '</div>'; // End font settings section
+ '<div class="row">' +
+ '<div class="twelve columns">' +
+ '<div class="mw-ui-checkbox">' +
+ '<input type="checkbox" id="webfonts-enable-checkbox" />' +
+ '<label class="checkbox" for="webfonts-enable-checkbox" >' +
+ '<strong data-i18n="ext-uls-webfonts-settings-title"></strong> ' +
+ '<span data-i18n="ext-uls-webfonts-settings-info"></span> ' +
+ '<a target="_blank" href="https://www.mediawiki.org/wiki/Universal_Language_Selector/WebFonts" data-i18n="ext-uls-webfonts-settings-info-link"></a>' +
+ '</label>' +
+ '</div>' +
+ '</div>' +
+ '</div>' +
+
+ // End font settings section
+ '</div>';
function DisplaySettings( $parent ) {
this.nameI18n = 'ext-uls-display-settings-title-short';
@@ -143,7 +153,7 @@
* Prepare the UI language selector
*/
prepareLanguages: function () {
- var loginUri, $loginCta,
+ var $loginCta,
displaySettings = this,
SUGGESTED_LANGUAGES_NUMBER = 3,
anonsAllowed = mw.config.get( 'wgULSAnonCanChangeLanguage' ),
@@ -152,10 +162,6 @@
// Don't let anonymous users change interface language
if ( !anonsAllowed && mw.user.isAnon() ) {
- loginUri = new mw.Uri();
- loginUri.query = {
- title: 'Special:UserLogin'
- };
$loginCta = $( '<p>' )
.attr( 'id', 'uls-display-settings-anon-log-in-cta' );
autonym = $.uls.data.getAutonym( this.contentLanguage );
@@ -226,11 +232,11 @@
for ( lang in suggestedLanguages ) {
// Skip already found languages
- if ( $.inArray( suggestedLanguages[lang], languagesForButtons ) > -1 ) {
+ if ( languagesForButtons.indexOf( suggestedLanguages[ lang ] ) > -1 ) {
continue;
}
- languagesForButtons.push( suggestedLanguages[lang] );
+ languagesForButtons.push( suggestedLanguages[ lang ] );
// No need to add more languages than buttons
if ( languagesForButtons.length >= SUGGESTED_LANGUAGES_NUMBER ) {
@@ -242,8 +248,8 @@
return function () {
displaySettings.markDirty();
displaySettings.uiLanguage = button.data( 'language' ) || displaySettings.uiLanguage;
- $( 'div.uls-ui-languages button.button' ).removeClass( 'down' );
- button.addClass( 'down' );
+ $( 'div.uls-ui-languages button.mw-ui-button' ).removeClass( 'mw-ui-pressed' );
+ button.addClass( 'mw-ui-pressed' );
displaySettings.prepareUIFonts();
displaySettings.preview( displaySettings.uiLanguage );
};
@@ -251,9 +257,9 @@
// Add the buttons for the most likely languages
for ( i = 0; i < SUGGESTED_LANGUAGES_NUMBER; i++ ) {
- language = languagesForButtons[i];
+ language = languagesForButtons[ i ];
$button = $( '<button>' )
- .addClass( 'button uls-language-button autonym' )
+ .addClass( 'mw-ui-button uls-language-button autonym' )
.text( $.uls.data.getAutonym( language ) )
.prop( {
lang: language,
@@ -261,7 +267,7 @@
} );
if ( language === this.uiLanguage ) {
- $button.addClass( 'down' );
+ $button.addClass( 'mw-ui-pressed' );
}
$button.data( 'language', language );
@@ -282,7 +288,7 @@
$languages = this.$template.find( 'div.uls-ui-languages' );
$moreLanguagesButton = $( '<button>' )
.prop( 'class', 'uls-more-languages' )
- .addClass( 'button' ).text( '...' );
+ .addClass( 'mw-ui-button' ).text( '...' );
$languages.append( $moreLanguagesButton );
// Show the long language list to select a language for display settings
@@ -290,29 +296,33 @@
left: displaySettings.$parent.left,
top: displaySettings.$parent.top,
onReady: function () {
- var uls = this,
- $back = $( '<a>' )
- .data( 'i18n', 'ext-uls-back-to-display-settings' )
- .i18n();
+ var $wrap,
+ uls = this,
+ $back = $( '<div>' )
+ .addClass( 'uls-icon-back' );
$back.click( function () {
uls.hide();
displaySettings.$parent.show();
} );
- uls.$menu.find( 'div.uls-title-region' ).append( $back );
- uls.$menu.find( 'h1.uls-title' )
- .data( 'i18n', 'ext-uls-display-settings-ui-language' )
- .i18n();
- uls.$menu.prepend(
- $( '<span>' ).addClass( 'caret-before' ),
- $( '<span>' ).addClass( 'caret-after' )
- );
+ $wrap = $( '<div>' )
+ .addClass( 'uls-search-wrapper-wrapper' );
+
+ uls.$menu.find( '.uls-search-wrapper' ).wrap( $wrap );
+ uls.$menu.find( '.uls-search-wrapper-wrapper' ).prepend( $back );
+
+ if ( $( '.uls-settings-trigger' ).offset().left > $( window ).width() / 2 ) {
+ uls.$menu.removeClass( 'selector-left' ).addClass( 'selector-right' );
+ } else {
+ uls.$menu.removeClass( 'selector-right' ).addClass( 'selector-left' );
+ }
},
onVisible: function () {
var $parent;
- mw.uls.addEventLoggingTriggers();
+ this.$menu.find( '.uls-languagefilter' )
+ .prop( 'placeholder', $.i18n( 'ext-uls-display-settings-ui-language' ) );
if ( !displaySettings.$parent.$window.hasClass( 'callout' ) ) {
// Callout menus will have position rules.
@@ -329,10 +339,10 @@
if ( parseInt( $parent.css( 'top' ), 10 ) ) {
this.$menu.css( 'top', $parent.css( 'top' ) );
}
- // If the ULS is shown in the the sidebar,
+ // If the ULS is shown in the sidebar,
// add a caret pointing to the icon
if ( displaySettings.$parent.$window.hasClass( 'callout' ) ) {
- this.$menu.addClass( 'callout' );
+ this.$menu.addClass( 'callout callout--languageselection' );
} else {
this.$menu.removeClass( 'callout' );
}
@@ -346,6 +356,7 @@
// the apply button
displaySettings.markDirty();
},
+ ulsPurpose: 'interface-language',
quickList: function () {
return mw.uls.getFrequentLanguageList();
}
@@ -359,7 +370,8 @@
/**
* Preview the settings panel in the given language
- * @param {String} language Language code
+ *
+ * @param {string} language Language code
*/
preview: function ( language ) {
var displaySettings = this;
@@ -378,7 +390,8 @@
/**
* Get previous languages
- * @returns {Array}
+ *
+ * @return {Array}
*/
frequentLanguageList: function () {
return mw.uls.getFrequentLanguageList();
@@ -386,7 +399,8 @@
/**
* Get the current user interface language.
- * @returns String Current UI language
+ *
+ * @return {string} Current UI language
*/
getUILanguage: function () {
return mw.config.get( 'wgUserLanguage' );
@@ -394,7 +408,8 @@
/**
* Get the current content language.
- * @returns String Current content language
+ *
+ * @return {string} Current content language
*/
getContentLanguage: function () {
return mw.config.get( 'wgContentLanguage' );
@@ -403,7 +418,7 @@
/**
* Prepare a font selector section with a label and a selector element.
*
- * @param target String 'ui' or 'content'
+ * @param {string} target 'ui' or 'content'
*/
prepareFontSelector: function ( target ) {
var language, fonts, $fontSelector, savedFont,
@@ -441,7 +456,7 @@
// Get the saved font using the fontSelector defined in mw.webfonts.setup
savedFont = this.$webfonts.getFont( language );
- $.each( fonts, function ( key, font ) {
+ fonts.forEach( function ( font ) {
var $fontOption;
if ( font !== 'system' ) {
@@ -511,7 +526,7 @@
*/
markDirty: function () {
this.dirty = true;
- this.$parent.$window.find( 'button.uls-settings-apply' ).removeAttr( 'disabled' );
+ this.$parent.$window.find( 'button.uls-settings-apply' ).prop( 'disabled', false );
},
/**
@@ -578,7 +593,7 @@
$tabButtons.on( 'click', function () {
var $button = $( this );
- if ( $button.hasClass( 'down' ) ) {
+ if ( $button.hasClass( 'mw-ui-pressed' ) ) {
return;
}
@@ -593,9 +608,11 @@
} );
displaySettings.$parent.position();
- $tabButtons.filter( '.down' ).removeClass( 'down' );
- $button.addClass( 'down' );
-
+ $tabButtons.removeClass( 'mw-ui-pressed' );
+ $button.addClass( 'mw-ui-pressed' );
+ } ).on( 'mousedown', function ( event ) {
+ // Avoid taking focus, to avoid bad looking focus styles
+ event.preventDefault();
} );
},
@@ -610,6 +627,8 @@
/**
* Callback for save preferences
+ *
+ * @param {boolean} success
*/
onSave: function ( success ) {
if ( success ) {
@@ -665,15 +684,15 @@
mw.hook( webfontsEvent ).fire( 'displaysettings' );
}
- if ( newFonts[displaySettings.uiLanguage] !== oldFonts[displaySettings.uiLanguage] ) {
+ if ( newFonts[ displaySettings.uiLanguage ] !== oldFonts[ displaySettings.uiLanguage ] ) {
mw.hook( 'mw.uls.font.change' ).fire(
- 'interface', displaySettings.uiLanguage, newFonts[displaySettings.uiLanguage]
+ 'interface', displaySettings.uiLanguage, newFonts[ displaySettings.uiLanguage ]
);
}
- if ( newFonts[displaySettings.contentLanguage] !== oldFonts[displaySettings.contentLanguage] ) {
+ if ( newFonts[ displaySettings.contentLanguage ] !== oldFonts[ displaySettings.contentLanguage ] ) {
mw.hook( 'mw.uls.font.change' ).fire(
- 'content', displaySettings.contentLanguage, newFonts[displaySettings.contentLanguage]
+ 'content', displaySettings.contentLanguage, newFonts[ displaySettings.contentLanguage ]
);
}
@@ -714,4 +733,4 @@
$.fn.languagesettings.modules = $.extend( $.fn.languagesettings.modules, {
display: DisplaySettings
} );
-}( jQuery, mediaWiki ) );
+}() );
diff --git a/MLEB/UniversalLanguageSelector/resources/js/ext.uls.eventlogger.js b/MLEB/UniversalLanguageSelector/resources/js/ext.uls.eventlogger.js
index 19643e88..1c94f60c 100644
--- a/MLEB/UniversalLanguageSelector/resources/js/ext.uls.eventlogger.js
+++ b/MLEB/UniversalLanguageSelector/resources/js/ext.uls.eventlogger.js
@@ -1,4 +1,4 @@
-/**
+/*!
* ULS Event logger
*
* Copyright (C) 2012-2013 Alolita Sharma, Amir Aharoni, Arun Ganesh, Brandon Harris,
@@ -16,56 +16,51 @@
* @licence GNU General Public Licence 2.0 or later
* @licence MIT License
*/
-( function ( $, mw ) {
+
+( function () {
'use strict';
/**
* ULS Event logger
+ * See https://meta.wikimedia.org/wiki/Schema:UniversalLanguageSelector
*
* @since 2013.08
- * @see https://meta.wikimedia.org/wiki/Schema:UniversalLanguageSelector
*/
function ULSEventLogger() {
- this.logEventQueue = $.Callbacks( 'memory once' );
- this.init();
+ this.eventDefault = {
+ version: 1,
+ token: mw.user.id(),
+ contentLanguage: mw.config.get( 'wgContentLanguage' ),
+ interfaceLanguage: mw.config.get( 'wgUserLanguage' )
+ };
+ this.schemaDefault = 'UniversalLanguageSelector';
this.listen();
}
ULSEventLogger.prototype = {
- init: function () {
- var eventLogger = this;
-
- mw.eventLog.setDefaults( 'UniversalLanguageSelector', {
- version: 1,
- token: mw.user.id(),
- contentLanguage: mw.config.get( 'wgContentLanguage' ),
- interfaceLanguage: mw.config.get( 'wgUserLanguage' )
- } );
-
- eventLogger.logEventQueue.fire();
- },
-
/**
* Local wrapper for 'mw.eventLog.logEvent'
*
* @param {Object} event Event action and optional fields
- * @param {String} schema The schema; 'UniversalLanguageSelector' is the default
+ * @param {string} schema The schema; 'UniversalLanguageSelector' is the default
* @return {jQuery.Promise} jQuery Promise object for the logging call
*/
log: function ( event, schema ) {
- // We need to create our own deferred for two reasons:
+ // FIXME: We need to create our own deferred for two reasons:
// - logEvent might not be executed immediately
// - we cannot reject a promise returned by it
// So we proxy the original promises status updates.
var deferred = $.Deferred();
- schema = schema || 'UniversalLanguageSelector';
+ schema = schema || this.schemaDefault;
- this.logEventQueue.add( function () {
- mw.eventLog.logEvent( schema, event )
- .done( deferred.resolve )
- .fail( deferred.reject );
- } );
+ if ( schema === this.schemaDefault ) {
+ event = $.extend( {}, this.eventBase, event );
+ }
+
+ mw.eventLog.logEvent( schema, event )
+ .done( deferred.resolve )
+ .fail( deferred.reject );
return deferred.promise();
},
@@ -75,26 +70,27 @@
*/
listen: function () {
// Register handlers for event logging triggers
- mw.hook( 'mw.uls.settings.open' ).add( $.proxy( this.ulsSettingsOpen, this ) );
- mw.hook( 'mw.uls.language.revert' ).add( $.proxy( this.ulsLanguageRevert, this ) );
- mw.hook( 'mw.uls.ime.enable' ).add( $.proxy( this.enableIME, this ) );
- mw.hook( 'mw.uls.ime.disable' ).add( $.proxy( this.disableIME, this ) );
- mw.hook( 'mw.uls.ime.change' ).add( $.proxy( this.changeIME, this ) );
- mw.hook( 'mw.uls.login.click' ).add( $.proxy( this.loginClick, this ) );
- mw.hook( 'mw.uls.ime.morelanguages' ).add( $.proxy( this.imeMoreLanguages, this ) );
- mw.hook( 'mw.uls.interface.morelanguages' ).add( $.proxy( this.interfaceMoreLanguages, this ) );
- mw.hook( 'mw.uls.interface.language.change' ).add( $.proxy( this.interfaceLanguageChange, this ) );
- mw.hook( 'mw.uls.font.change' ).add( $.proxy( this.fontChange, this ) );
- mw.hook( 'mw.uls.webfonts.enable' ).add( $.proxy( this.enableWebfonts, this ) );
- mw.hook( 'mw.uls.webfonts.disable' ).add( $.proxy( this.disableWebfonts, this ) );
+ mw.hook( 'mw.uls.settings.open' ).add( this.ulsSettingsOpen.bind( this ) );
+ mw.hook( 'mw.uls.language.revert' ).add( this.ulsLanguageRevert.bind( this ) );
+ mw.hook( 'mw.uls.ime.enable' ).add( this.enableIME.bind( this ) );
+ mw.hook( 'mw.uls.ime.disable' ).add( this.disableIME.bind( this ) );
+ mw.hook( 'mw.uls.ime.change' ).add( this.changeIME.bind( this ) );
+ mw.hook( 'mw.uls.login.click' ).add( this.loginClick.bind( this ) );
+ mw.hook( 'mw.uls.ime.morelanguages' ).add( this.imeMoreLanguages.bind( this ) );
+ mw.hook( 'mw.uls.interface.morelanguages' ).add( this.interfaceMoreLanguages.bind( this ) );
+ mw.hook( 'mw.uls.interface.language.change' ).add( this.interfaceLanguageChange.bind( this ) );
+ mw.hook( 'mw.uls.font.change' ).add( this.fontChange.bind( this ) );
+ mw.hook( 'mw.uls.webfonts.enable' ).add( this.enableWebfonts.bind( this ) );
+ mw.hook( 'mw.uls.webfonts.disable' ).add( this.disableWebfonts.bind( this ) );
$( 'body' ).on( 'noresults.uls', '.uls-menu .uls-languagefilter',
- $.proxy( this.noSearchResults, this )
+ this.noSearchResults.bind( this )
);
},
/**
* Log language settings open
+ *
* @param {string} context Where it was opened from
*/
ulsSettingsOpen: function ( context ) {
@@ -106,6 +102,7 @@
/**
* Log language revert
+ *
* @param {jQuery.Deferred} deferred
*/
ulsLanguageRevert: function ( deferred ) {
@@ -114,6 +111,7 @@
/**
* Log IME disabling
+ *
* @param {string} context Where the setting was changed.
*/
disableIME: function ( context ) {
@@ -122,6 +120,7 @@
/**
* Log IME enabling
+ *
* @param {string} context Where the setting was changed.
*/
enableIME: function ( context ) {
@@ -130,6 +129,7 @@
/**
* Log IME change
+ *
* @param {string} inputMethod
*/
changeIME: function ( inputMethod ) {
@@ -141,6 +141,7 @@
/**
* Log login link click in display settings.
+ *
* @param {jQuery.Deferred} deferred
*/
loginClick: function ( deferred ) {
@@ -170,10 +171,6 @@
interfaceLanguage: language
};
- if ( mw.uls.languageSelectionMethod !== undefined ) {
- logParams.languageSelectionMethod = mw.uls.languageSelectionMethod;
- }
-
this.log( logParams ).always( deferred.resolve );
},
@@ -215,6 +212,7 @@
/**
* Log webfonts disabling
+ *
* @param {string} context Where the setting was changed.
*/
disableWebfonts: function ( context ) {
@@ -223,6 +221,7 @@
/**
* Log webfonts enabling
+ *
* @param {string} context Where the setting was changed.
*/
enableWebfonts: function ( context ) {
@@ -231,17 +230,20 @@
/**
* Log search strings which produce no search results.
- * @param {jQuery.event} event The orignal event
- * @param {string} context The query string
+ *
+ * @param {jQuery.event} event The original event
+ * @param {Object} data Information about the failed search
*/
- noSearchResults: function ( event, context ) {
+ noSearchResults: function ( event, data ) {
this.log( {
action: 'no-search-results',
- context: context
+ context: data.query,
+ ulsPurpose: data.ulsPurpose,
+ title: mw.config.get( 'wgPageName' )
} );
}
};
mw.uls = mw.uls || {};
mw.uls.eventlogger = new ULSEventLogger();
-}( jQuery, mediaWiki ) );
+}() );
diff --git a/MLEB/UniversalLanguageSelector/resources/js/ext.uls.geoclient.js b/MLEB/UniversalLanguageSelector/resources/js/ext.uls.geoclient.js
index 21d0d29b..8164743a 100644
--- a/MLEB/UniversalLanguageSelector/resources/js/ext.uls.geoclient.js
+++ b/MLEB/UniversalLanguageSelector/resources/js/ext.uls.geoclient.js
@@ -1,4 +1,4 @@
-/**
+/*!
* ULS GeoIP client
*
* Copyright (C) 2012 Alolita Sharma, Amir Aharoni, Arun Ganesh, Brandon Harris,
@@ -16,32 +16,33 @@
* @licence GNU General Public Licence 2.0 or later
* @licence MIT License
*/
-( function ( $, mw ) {
- 'use strict';
- mw.uls = mw.uls || {};
- mw.uls.setGeo = function ( data ) {
- window.Geo = data;
- };
+( function () {
+ 'use strict';
- var currentProto, httpOnly, settings,
+ var geo,
+ cacheAge = 60 * 60 * 8, // 8 hours
service = mw.config.get( 'wgULSGeoService' );
- // Call the service only if defined, and if the current
- // protocol is https, only if the service is not configured
- // with http:// as the protocol
- if ( service ) {
- httpOnly = service.substring( 0, 7 ) === 'http://';
- currentProto = document.location.protocol;
- if ( !httpOnly || currentProto === 'http:' ) {
- settings = {
- cache: true,
- dataType: 'jsonp',
- jsonpCallback: 'mw.uls.setGeo'
- };
+ // This is not supposed to happen. For sanity prefer existing value.
+ if ( window.Geo ) {
+ return;
+ }
- $.ajax( service, settings );
- }
+ // Using cache for speed and to reduce load on the third-party service.
+ // Using cookies over localStorage because cookies support automatic expiring.
+ // This cookie is not currently read server-side.
+ geo = mw.cookie.get( 'ULSGeo' );
+ if ( geo ) {
+ try {
+ window.Geo = JSON.parse( geo );
+ return;
+ } catch ( e ) {}
}
-}( jQuery, mediaWiki ) );
+ $.getJSON( service ).done( function ( data ) {
+ window.Geo = data;
+ mw.cookie.set( 'ULSGeo', JSON.stringify( data ), cacheAge );
+ } );
+
+}() );
diff --git a/MLEB/UniversalLanguageSelector/resources/js/ext.uls.i18n.js b/MLEB/UniversalLanguageSelector/resources/js/ext.uls.i18n.js
index e854c197..f1228e60 100644
--- a/MLEB/UniversalLanguageSelector/resources/js/ext.uls.i18n.js
+++ b/MLEB/UniversalLanguageSelector/resources/js/ext.uls.i18n.js
@@ -1,4 +1,4 @@
-/**
+/*!
* ULS i18n preparation using jquery.i18n library
*
* Copyright (C) 2012-2013 Alolita Sharma, Amir Aharoni, Arun Ganesh, Brandon Harris,
@@ -16,15 +16,12 @@
* @licence GNU General Public Licence 2.0 or later
* @licence MIT License
*/
-( function ( $, mw ) {
+
+( function () {
'use strict';
mw.uls = mw.uls || {};
- // jquery.i18n has CLDRPluralRuleParser but MediaWiki also has the same
- // parser. Reuse it by aliasing it to window.pluralRuleParser
- window.pluralRuleParser = mw.libs.pluralRuleParser;
-
// JavaScript side i18n initialization
$.i18n( {
locale: mw.config.get( 'wgUserLanguage' )
@@ -37,6 +34,7 @@
* Load localization messags for a locale to the jquery.i18n
* messagestore.
* Also called by RL module ResourceLoaderULSJsonMessageModule
+ *
* @param {string} locale the language code
* @param {Object} [messages]
* @return {jQuery.Promise}
@@ -48,7 +46,7 @@
if ( messages ) {
return i18n.load( messages, locale );
}
- if ( i18n.messageStore.messages[locale] ) {
+ if ( i18n.messageStore.messages[ locale ] ) {
return $.Deferred().resolve();
}
return i18n.messageStore.load(
@@ -60,4 +58,4 @@
);
};
-}( jQuery, mediaWiki ) );
+}() );
diff --git a/MLEB/UniversalLanguageSelector/resources/js/ext.uls.ime.js b/MLEB/UniversalLanguageSelector/resources/js/ext.uls.ime.js
index e80ff0d4..117777c7 100644
--- a/MLEB/UniversalLanguageSelector/resources/js/ext.uls.ime.js
+++ b/MLEB/UniversalLanguageSelector/resources/js/ext.uls.ime.js
@@ -1,4 +1,4 @@
-/**
+/*!
* ULS - jQuery IME integration
*
* Copyright (C) 2012 Alolita Sharma, Amir Aharoni, Arun Ganesh, Brandon Harris,
@@ -16,7 +16,8 @@
* @licence GNU General Public Licence 2.0 or later
* @licence MIT License
*/
-( function ( $, mw ) {
+
+( function () {
'use strict';
var mwImeRulesPath, inputSelector, inputPreferences, ulsIMEPreferences, customHelpLink;
@@ -35,7 +36,8 @@
availableLanguages = {};
for ( language in $.ime.languages ) {
- availableLanguages[language] = ulsLanguages[language];
+ availableLanguages[ language ] = ulsLanguages[ language ] ||
+ $.uls.data.getAutonym( language );
}
return availableLanguages;
@@ -49,9 +51,9 @@
previousIMELanguages = $.ime.preferences.getPreviousLanguages() || [];
imeLanguageList = previousIMELanguages.concat( mw.uls.getFrequentLanguageList() );
- $.each( imeLanguageList, function ( i, v ) {
- if ( $.inArray( v, unique ) === -1 ) {
- unique.push( v );
+ imeLanguageList.forEach( function ( lang ) {
+ if ( unique.indexOf( lang ) === -1 ) {
+ unique.push( lang );
}
} );
@@ -105,6 +107,30 @@
}
};
+ function imeNotification() {
+ var notificationMsg = ( mw.config.get( 'wgULSPosition' ) === 'personal' ) ?
+ 'ext-uls-input-disable-notification-info-personal' :
+ 'ext-uls-input-disable-notification-info-interlanguage',
+ $notification = $( '<div>' )
+ .addClass( 'uls-ime-notification-bubble' )
+ .append(
+ $( '<div>' )
+ .attr( 'data-i18n', 'ext-uls-input-disable-notification' ),
+ $( '<div>' )
+ .addClass( 'link' )
+ .attr( 'data-i18n', 'ext-uls-input-disable-notification-undo' )
+ .on( 'click', function () {
+ $.ime.preferences.enable();
+ $.ime.preferences.save( function () {
+ mw.ime.setup();
+ } );
+ } ),
+ $( '<div>' ).attr( 'data-i18n', notificationMsg )
+ );
+
+ mw.notify( $notification.i18n() );
+ }
+
// Add a 'more settings' link that takes to input settings of ULS
customHelpLink = function () {
var $disableInputToolsLink, $moreSettingsLink,
@@ -208,6 +234,7 @@
/**
* Loads necessary dependencies, checks input for validity and
* adds the ime menu for elements that should have it.
+ *
* @param {jquery.Element} $input
* @since 2013.11
*/
@@ -244,6 +271,7 @@
/**
* Just adds ime menu to any input element.
+ *
* @param {jquery.Element} $input
* @since 2013.11
*/
@@ -266,6 +294,7 @@
$input.focus();
},
languages: mw.ime.getLanguagesWithIME(),
+ ulsPurpose: 'ime-selector',
top: $input.offset().top
} );
@@ -274,7 +303,7 @@
helpHandler: function ( ime ) {
return $( '<a>' )
.attr( {
- href: mw.msg( 'uls-ime-helppage' ).replace( '$1', ime ),
+ href: mw.msg( 'uls-ime-helppage', ime ),
target: '_blank',
title: $.i18n( 'ext-uls-ime-help' )
} )
@@ -295,27 +324,4 @@
}
};
- function imeNotification() {
- var notificationMsg = ( mw.config.get( 'wgULSPosition' ) === 'personal' ) ?
- 'ext-uls-input-disable-notification-info-personal' :
- 'ext-uls-input-disable-notification-info-interlanguage',
- $notification = $( '<div>' )
- .addClass( 'uls-ime-notification-bubble' )
- .append(
- $( '<div>' )
- .attr( 'data-i18n', 'ext-uls-input-disable-notification' ),
- $( '<div>' )
- .addClass( 'link' )
- .attr( 'data-i18n', 'ext-uls-input-disable-notification-undo' )
- .on( 'click', function () {
- $.ime.preferences.enable();
- $.ime.preferences.save( function () {
- mw.ime.setup();
- } );
- } ),
- $( '<div>' ).attr( 'data-i18n', notificationMsg )
- );
-
- mw.notify( $notification.i18n() );
- }
-}( jQuery, mediaWiki ) );
+}() );
diff --git a/MLEB/UniversalLanguageSelector/resources/js/ext.uls.init.js b/MLEB/UniversalLanguageSelector/resources/js/ext.uls.init.js
deleted file mode 100644
index 4dae749d..00000000
--- a/MLEB/UniversalLanguageSelector/resources/js/ext.uls.init.js
+++ /dev/null
@@ -1,258 +0,0 @@
-/**
- * ULS startup script - MediaWiki specific customization for jquery.uls
- *
- * Copyright (C) 2012-2013 Alolita Sharma, Amir Aharoni, Arun Ganesh, Brandon Harris,
- * Niklas Laxström, Pau Giner, Santhosh Thottingal, Siebrand Mazeland and other
- * contributors. See CREDITS for a list.
- *
- * UniversalLanguageSelector is dual licensed GPLv2 or later and MIT. You don't
- * have to do anything special to choose one license or the other and you don't
- * have to notify anyone which license you are using. You are free to use
- * UniversalLanguageSelector in commercial projects as long as the copyright
- * header is left intact. See files GPL-LICENSE and MIT-LICENSE for details.
- *
- * @file
- * @ingroup Extensions
- * @licence GNU General Public Licence 2.0 or later
- * @licence MIT License
- */
-( function ( $, mw ) {
- 'use strict';
-
- var hasOwn = Object.prototype.hasOwnProperty;
-
- mw.uls = mw.uls || {};
- mw.uls.previousLanguagesStorageKey = 'uls-previous-languages';
- mw.uls.previousLanguageAutonymCookie = 'uls-previous-language-autonym';
- mw.uls.languageSettingsModules = [ 'ext.uls.inputsettings', 'ext.uls.displaysettings' ];
-
- // What was the last thing that the user did to select the language:
- // * 'map' - clicked the map
- // * 'search' - typed in the search box
- // * 'common' - clicked a link in the "Common languages" section
- // If the user just clicked in some other section, it remains undefined.
- // This is useful for logging.
- mw.uls.languageSelectionMethod = undefined;
-
- /**
- * Add event logging triggers, which are common to different
- * ULS instances
- */
- mw.uls.addEventLoggingTriggers = function () {
- // Remove previous values when reinitializing
- mw.uls.languageSelectionMethod = undefined;
-
- $( '#uls-map-block' ).on( 'click', function () {
- mw.uls.languageSelectionMethod = 'map';
- } );
-
- $( '#uls-languagefilter' ).on( 'keydown', function () {
- // If it's the first letter,
- // log the usage of the search box
- if ( $( this ).val() === '' ) {
- mw.uls.languageSelectionMethod = 'search';
- }
- } );
-
- $( '#uls-lcd-quicklist a' ).on( 'click', function () {
- mw.uls.languageSelectionMethod = 'common';
- } );
- };
-
- /**
- * Change the language of wiki using API or set cookie and reload the page
- * @param {string} language Language code.
- */
- mw.uls.changeLanguage = function ( language ) {
- var deferred = new $.Deferred();
-
- function changeLanguageAnon() {
- if ( mw.config.get( 'wgULSAnonCanChangeLanguage' ) ) {
- mw.cookie.set( 'language', language );
- location.reload();
- }
- }
-
- deferred.done( function () {
- var api;
-
- if ( mw.user.isAnon() ) {
- changeLanguageAnon();
- return;
- }
-
- api = new mw.Api();
- // @todo Change this to api.saveOption when ULS minimum MW version is 1.25
- api.postWithToken( 'options', {
- action: 'options',
- optionname: 'language',
- optionvalue: language
- } )
- .done( function () {
- location.reload();
- } )
- .fail( function () {
- // Set options failed. Maybe the user has logged off.
- // Continue like anonymous user and set cookie.
- changeLanguageAnon();
- } );
- } );
-
- mw.hook( 'mw.uls.interface.language.change' ).fire( language, deferred );
-
- // Delay is zero if event logging is not enabled
- window.setTimeout( function () {
- deferred.resolve();
- }, mw.config.get( 'wgULSEventLogging' ) * 500 );
-
- };
-
- mw.uls.setPreviousLanguages = function ( previousLanguages ) {
- try {
- localStorage.setItem(
- mw.uls.previousLanguagesStorageKey,
- JSON.stringify( previousLanguages.slice( -5 ) )
- );
- } catch ( e ) {}
- };
-
- mw.uls.getPreviousLanguages = function () {
- var previousLanguages = $.cookie( mw.uls.previousLanguagesStorageKey );
-
- $.removeCookie( mw.uls.previousLanguagesStorageKey, { path: '/' } );
-
- if ( $.isArray( previousLanguages ) ) {
- // Migrate data from cookie to localStorage.
- mw.uls.setPreviousLanguages( previousLanguages );
- } else {
- previousLanguages = [];
- }
-
- try {
- previousLanguages.push.apply(
- previousLanguages,
- JSON.parse( localStorage.getItem( mw.uls.previousLanguagesStorageKey ) )
- );
- } catch ( e ) {}
-
- return previousLanguages.slice( -5 );
- };
-
- /**
- * Returns the browser's user interface language or the system language.
- * The caller should check the validity of the returned language code.
- *
- * @return {string} Language code or empty string.
- */
- mw.uls.getBrowserLanguage = function () {
- // language is the standard property.
- // userLanguage is only for IE and returns system locale.
- // Empty string is a fallback in case both are undefined
- // to avoid runtime error with split().
- return ( window.navigator.language || window.navigator.userLanguage || '' ).split( '-' )[ 0 ];
- };
-
- /*jshint camelcase:false*/
- mw.uls.getCountryCode = function () {
- return window.Geo && ( window.Geo.country || window.Geo.country_code );
- };
-
- mw.uls.getAcceptLanguageList = function () {
- return mw.config.get( 'wgULSAcceptLanguageList' ) || [];
- };
-
- /**
- * Get a list of codes for languages to show in
- * the "Common languages" section of the ULS.
- * The list consists of the user's current selected language,
- * the wiki's content language, the browser' UI language
- * and Accept-Language, user's previous selected languages
- * and finally, the languages of countryCode taken from the CLDR,
- * taken by default from the user's geolocation.
- *
- * @param {String} [countryCode] Uppercase country code.
- * @return {Array} List of language codes without duplicates.
- */
- mw.uls.getFrequentLanguageList = function ( countryCode ) {
- var unique = [],
- list = [
- mw.config.get( 'wgUserLanguage' ),
- mw.config.get( 'wgContentLanguage' ),
- mw.uls.getBrowserLanguage()
- ]
- .concat( mw.uls.getPreviousLanguages() )
- .concat( mw.uls.getAcceptLanguageList() );
-
- countryCode = countryCode || mw.uls.getCountryCode();
-
- if ( countryCode ) {
- list = list.concat( $.uls.data.getLanguagesInTerritory( countryCode ) );
- }
-
- $.each( list, function ( i, v ) {
- if ( $.inArray( v, unique ) === -1 ) {
- unique.push( v );
- }
- } );
-
- // Filter out unknown and unsupported languages
- unique = $.grep( unique, function ( langCode ) {
- var target;
-
- // If the language is already known and defined, just use it
- if ( hasOwn.call( $.fn.uls.defaults.languages, langCode ) ) {
- return true;
- }
-
- // If the language is not immediately known,
- // try to check is as a redirect
- target = $.uls.data.isRedirect( langCode );
-
- if ( target ) {
- // Check that the redirect's target is known
- // to this instance of ULS
- return hasOwn.call( $.fn.uls.defaults.languages, target );
- }
-
- return false;
- } );
-
- return unique;
- };
-
- /**
- * Checks whether the browser is supported.
- * Browser support policy: http://www.mediawiki.org/wiki/Browser_support#Grade_A
- * @return boolean
- */
- function isBrowserSupported() {
- var blacklist = {
- 'msie': [
- [ '<=', 7 ]
- ]
- };
-
- return !$.client.test( blacklist, null, true );
- }
-
- /**
- * Initialize ULS front-end if browser is supported.
- *
- * @param {Function} callback callback function to be called after initialization.
- */
- mw.uls.init = function ( callback ) {
- if ( !isBrowserSupported() ) {
- $( '#pt-uls' ).hide();
-
- return;
- }
-
- if ( callback ) {
- callback.call( this );
- }
- };
-
- $( document ).ready( function () {
- mw.uls.init();
- } );
-}( jQuery, mediaWiki ) );
diff --git a/MLEB/UniversalLanguageSelector/resources/js/ext.uls.inputsettings.js b/MLEB/UniversalLanguageSelector/resources/js/ext.uls.inputsettings.js
index c08de49f..f3d47733 100644
--- a/MLEB/UniversalLanguageSelector/resources/js/ext.uls.inputsettings.js
+++ b/MLEB/UniversalLanguageSelector/resources/js/ext.uls.inputsettings.js
@@ -1,4 +1,4 @@
-/**
+/*!
* ULS-based ime settings panel
*
* Copyright (C) 2012 Alolita Sharma, Amir Aharoni, Arun Ganesh, Brandon Harris,
@@ -16,43 +16,47 @@
* @licence GNU General Public Licence 2.0 or later
* @licence MIT License
*/
-( function ( $, mw ) {
+
+( function () {
'use strict';
- var template = '<div class="uls-input-settings">'
- + '<div class="row">' // Top "Display settings" title
- + '<div class="twelve columns">'
- + '<h3 data-i18n="ext-uls-input-settings-title"></h3>'
- + '</div>'
- + '</div>'
+ var template = '<div class="uls-input-settings">' +
+ // Top "Display settings" title
+ '<div class="row">' +
+ '<div class="twelve columns">' +
+ '<h3 data-i18n="ext-uls-input-settings-title"></h3>' +
+ '</div>' +
+ '</div>' +
// "Language for ime", title above the buttons row
- + '<div class="row enabled-only uls-input-settings-languages-title">'
- + '<div class="eleven columns">'
- + '<h4 data-i18n="ext-uls-input-settings-ui-language"></h4>'
- + '</div>'
- + '</div>'
+ '<div class="row enabled-only uls-input-settings-languages-title">' +
+ '<div class="twelve columns">' +
+ '<h4 data-i18n="ext-uls-input-settings-ui-language"></h4>' +
+ '</div>' +
+ '</div>' +
// UI languages buttons row
- + '<div class="row enabled-only">'
- + '<div class="uls-ui-languages eleven columns"></div>'
- + '</div>'
+ '<div class="row enabled-only">' +
+ '<div class="uls-ui-languages twelve columns"></div>' +
+ '</div>' +
// Web IMEs enabling chechbox with label
- + '<div class="row enabled-only">'
- + '<div class="eleven columns uls-input-settings-inputmethods-list">'
+ '<div class="row enabled-only">' +
+ '<div class="twelve columns">' +
+ '<div class="uls-input-settings-inputmethods-list">' +
// "Input settings for language xyz" title
- + '<h4 class="ext-uls-input-settings-imes-title"></h4>'
- + '</div>'
- + '</div>'
+ '<h4 class="ext-uls-input-settings-imes-title"></h4>' +
+ '</div>' +
+ '</div>' +
+ '</div>' +
// Disable IME system button
- + '<div class="row">'
- + '<div class="eleven columns button uls-input-settings-disable-info"></div>'
- + '<div class="six columns button uls-input-settings-toggle">'
- + '<button class="active green button uls-input-toggle-button"></button>'
- + '</div>'
- + '</div>';
+ '<div class="row">' +
+ '<div class="twelve columns uls-input-settings-disable-info"></div>' +
+ '<div class="ten columns uls-input-settings-toggle">' +
+ '<button class="mw-ui-button mw-ui-progressive active uls-input-toggle-button"></button>' +
+ '</div>' +
+ '</div>';
function InputSettings( $parent ) {
this.nameI18n = 'ext-uls-input-settings-title-short';
@@ -114,12 +118,12 @@
var index, inputSettings, $imeListContainer, defaultInputmethod,
imes, selected, imeId, $imeListTitle;
- imes = $.ime.languages[language];
+ imes = $.ime.languages[ language ];
$imeListTitle = this.$template.find( '.ext-uls-input-settings-imes-title' );
$imeListContainer = this.$template.find( '.uls-input-settings-inputmethods-list' );
- $imeListContainer.find( 'label' ).remove();
+ $imeListContainer.empty();
if ( !imes ) {
$imeListContainer.append( $( '<label>' )
@@ -134,10 +138,10 @@
inputSettings = this;
- defaultInputmethod = $.ime.preferences.getIM( language ) || imes.inputmethods[0];
+ defaultInputmethod = $.ime.preferences.getIM( language ) || imes.inputmethods[ 0 ];
for ( index in imes.inputmethods ) {
- imeId = imes.inputmethods[index];
+ imeId = imes.inputmethods[ index ];
selected = defaultInputmethod === imeId;
$imeListContainer.append( inputSettings.renderInputmethodOption( imeId,
selected ) );
@@ -161,55 +165,56 @@
renderInputmethodOption: function ( imeId, selected ) {
var $imeLabel, name, description, $helplink, inputmethod, $inputMethodItem;
- if ( imeId !== 'system' && !$.ime.sources[imeId] ) {
+ if ( imeId !== 'system' && !$.ime.sources[ imeId ] ) {
// imeId not known for jquery.ime.
// It is very rare, but still validate it.
return $();
}
- $imeLabel = $( '<label>' ).attr( {
- 'for': imeId,
- 'class': 'imelabel'
- } );
+ $imeLabel = $( '<label>' ).attr( 'for', imeId );
$inputMethodItem = $( '<input type="radio">' ).attr( {
name: 'ime',
id: imeId,
- value: imeId,
- checked: selected
- } );
-
- $imeLabel.append( $inputMethodItem );
+ value: imeId
+ } )
+ .prop( 'checked', selected );
if ( imeId === 'system' ) {
name = $.i18n( 'ext-uls-disable-input-method' );
description = '';
$helplink = '';
} else {
- inputmethod = $.ime.inputmethods[imeId];
+ inputmethod = $.ime.inputmethods[ imeId ];
$helplink = $( '<a>' )
.addClass( 'uls-ime-help' )
.text( $.i18n( 'ext-uls-ime-help' ) )
- .attr( 'href', mw.msg( 'uls-ime-helppage' ).replace( '$1', imeId ) )
+ .attr( 'href', mw.msg( 'uls-ime-helppage', imeId ) )
.attr( 'target', '_blank' );
if ( !inputmethod ) {
// The input method definition(rules) not loaded.
// We will show the name from $.ime.sources
- name = $.ime.sources[imeId].name;
+ name = $.ime.sources[ imeId ].name;
description = '';
} else {
name = inputmethod.name;
- description = $.ime.inputmethods[imeId].description;
+ description = $.ime.inputmethods[ imeId ].description;
}
}
$imeLabel.append(
- $( '<strong>' ).text( name ),
- $( '<span>' ).text( description ),
+ $( '<strong>' )
+ .addClass( 'uls-input-settings-name' )
+ .text( name + ' ' ),
+ $( '<span>' )
+ .addClass( 'uls-input-settings-description' )
+ .text( description ),
$helplink
);
- return $imeLabel;
+ return $( '<div>' )
+ .addClass( 'mw-ui-radio' )
+ .append( $inputMethodItem, $imeLabel );
},
/**
@@ -237,27 +242,27 @@
// after selecting a different language
$languages.empty();
- // Selected IME language may be different, and it must
- // be present, too
- if ( $.uls.data.languages[selectedImeLanguage] &&
- $.inArray( selectedImeLanguage, languagesForButtons ) === -1 ) {
+ // Selected IME language may be different, and it must be present, too
+ if ( $.uls.data.languages[ selectedImeLanguage ] &&
+ languagesForButtons.indexOf( selectedImeLanguage ) === -1
+ ) {
languagesForButtons.push( selectedImeLanguage );
}
// UI language must always be present
if ( this.uiLanguage !== this.contentLanguage &&
- $.uls.data.languages[this.uiLanguage] &&
- $.inArray( this.uiLanguage, languagesForButtons ) === -1 ) {
+ $.uls.data.languages[ this.uiLanguage ] &&
+ languagesForButtons.indexOf( this.uiLanguage ) === -1 ) {
languagesForButtons.push( this.uiLanguage );
}
for ( lang in suggestedLanguages ) {
// Skip already found languages
- if ( $.inArray( suggestedLanguages[lang], languagesForButtons ) > -1 ) {
+ if ( languagesForButtons.indexOf( suggestedLanguages[ lang ] ) > -1 ) {
continue;
}
- languagesForButtons.push( suggestedLanguages[lang] );
+ languagesForButtons.push( suggestedLanguages[ lang ] );
// No need to add more languages than buttons
if ( languagesForButtons.length >= SUGGESTED_LANGUAGES_NUMBER ) {
@@ -274,8 +279,8 @@
$.ime.preferences.setLanguage( language );
}
// Mark the button selected
- $( '.uls-ui-languages .button' ).removeClass( 'down' );
- button.addClass( 'down' );
+ $( '.uls-ui-languages .mw-ui-button' ).removeClass( 'mw-ui-pressed' );
+ button.addClass( 'mw-ui-pressed' );
inputSettings.prepareInputmethods( language );
};
}
@@ -284,9 +289,9 @@
selectedImeLanguage = selectedImeLanguage || this.contentLanguage;
// Add the buttons for the most likely languages
for ( i = 0; i < SUGGESTED_LANGUAGES_NUMBER; i++ ) {
- language = languagesForButtons[i];
+ language = languagesForButtons[ i ];
$button = $( '<button>' )
- .addClass( 'button uls-language-button autonym' )
+ .addClass( 'mw-ui-button uls-language-button autonym' )
.text( $.uls.data.getAutonym( language ) )
.prop( {
lang: language,
@@ -318,7 +323,7 @@
$languages = this.$template.find( '.uls-ui-languages' );
$moreLanguagesButton = $( '<button>' )
.prop( 'class', 'uls-more-languages' )
- .addClass( 'button' ).text( '...' );
+ .addClass( 'mw-ui-button' ).text( '...' );
$languages.append( $moreLanguagesButton );
// Show the long language list to select a language for ime settings
@@ -327,31 +332,44 @@
top: inputSettings.$parent.top,
onReady: function () {
var uls = this,
- $back = $( '<a>' )
+ $wrap,
+ $back = $( '<div>' )
+ .addClass( 'uls-icon-back' )
.data( 'i18n', 'ext-uls-back-to-input-settings' )
- .i18n();
+ .i18n()
+ .text( ' ' );
$back.click( function () {
uls.hide();
inputSettings.$parent.show();
} );
- uls.$menu.find( 'div.uls-title-region' ).append( $back );
- uls.$menu.find( 'h1.uls-title' )
- .data( 'i18n', 'ext-uls-input-settings-ui-language' )
- .i18n();
- uls.$menu.prepend(
- $( '<span>' ).addClass( 'caret-before' ),
- $( '<span>' ).addClass( 'caret-after' )
- );
+ $wrap = $( '<div>' )
+ .addClass( 'uls-search-wrapper-wrapper' );
+
+ uls.$menu.find( '.uls-search-wrapper' ).wrap( $wrap );
+ uls.$menu.find( '.uls-search-wrapper-wrapper' ).prepend( $back );
+
+ if ( $( '.uls-settings-trigger' ).offset().left > $( window ).width() / 2 ) {
+ uls.$menu.removeClass( 'selector-left' ).addClass( 'selector-right' );
+ } else {
+ uls.$menu.removeClass( 'selector-right' ).addClass( 'selector-left' );
+ }
},
onVisible: function () {
+ var $parent;
+
+ this.$menu.find( '.uls-languagefilter' )
+ .prop( 'placeholder', $.i18n( 'ext-uls-input-settings-ui-language' ) );
+
if ( !inputSettings.$parent.$window.hasClass( 'callout' ) ) {
// callout menus will have position rules. others use
// default position
return;
}
- var $parent = $( '#language-settings-dialog' );
+
+ $parent = $( '#language-settings-dialog' );
+
// Re-position the element according to the window that called it
if ( parseInt( $parent.css( 'left' ), 10 ) ) {
this.$menu.css( 'left', $parent.css( 'left' ) );
@@ -361,7 +379,7 @@
}
if ( inputSettings.$parent.$window.hasClass( 'callout' ) ) {
- this.$menu.addClass( 'callout' );
+ this.$menu.addClass( 'callout callout--languageselection' );
} else {
this.$menu.removeClass( 'callout' );
}
@@ -372,7 +390,8 @@
inputSettings.prepareLanguages();
inputSettings.markDirty();
},
- languages: mw.ime.getLanguagesWithIME()
+ languages: mw.ime.getLanguagesWithIME(),
+ ulsPurpose: 'input-settings'
} );
$moreLanguagesButton.on( 'click', function () {
@@ -402,7 +421,8 @@
/**
* Get previous languages
- * @returns {Array}
+ *
+ * @return {Array}
*/
frequentLanguageList: function () {
return mw.uls.getFrequentLanguageList();
@@ -410,7 +430,8 @@
/**
* Get the current user interface language.
- * @returns String Current UI language
+ *
+ * @return {string} Current UI language
*/
getInterfaceLanguage: function () {
return mw.config.get( 'wgUserLanguage' );
@@ -418,7 +439,8 @@
/**
* Get the current content language.
- * @returns String Current content language
+ *
+ * @return {string} Current content language
*/
getContentLanguage: function () {
return mw.config.get( 'wgContentLanguage' );
@@ -482,6 +504,8 @@
/**
* Callback for save preferences
+ *
+ * @param {boolean} success
*/
onSave: function ( success ) {
if ( success ) {
@@ -515,7 +539,7 @@
inputSettings.$parent.setBusy( true );
if ( previousLanguage ) {
- previousIM = inputSettings.savedRegistry.imes[previousLanguage];
+ previousIM = inputSettings.savedRegistry.imes[ previousLanguage ];
}
if ( currentLanguage !== inputSettings.savedRegistry.language ||
@@ -567,4 +591,4 @@
input: InputSettings
} );
-}( jQuery, mediaWiki ) );
+}() );
diff --git a/MLEB/UniversalLanguageSelector/resources/js/ext.uls.interface.js b/MLEB/UniversalLanguageSelector/resources/js/ext.uls.interface.js
index 96aaa2ef..666fc66f 100644
--- a/MLEB/UniversalLanguageSelector/resources/js/ext.uls.interface.js
+++ b/MLEB/UniversalLanguageSelector/resources/js/ext.uls.interface.js
@@ -1,4 +1,4 @@
-/**
+/*!
* ULS interface integration logic
*
* Copyright (C) 2012-2013 Alolita Sharma, Amir Aharoni, Arun Ganesh, Brandon Harris,
@@ -16,291 +16,207 @@
* @licence GNU General Public Licence 2.0 or later
* @licence MIT License
*/
-( function ( $, mw ) {
+
+( function () {
'use strict';
/**
* Construct the display settings link
+ *
* @return {jQuery}
*/
function displaySettings() {
- var $displaySettingsTitle, displaySettingsText, $displaySettings;
-
- displaySettingsText = $.i18n( 'ext-uls-display-settings-desc' );
- $displaySettingsTitle = $( '<div data-i18n="ext-uls-display-settings-title">' )
- .addClass( 'settings-title' )
- .attr( 'title', displaySettingsText );
- $displaySettings = $( '<div>' )
+ return $( '<button>' )
.addClass( 'display-settings-block' )
- .prop( 'id', 'display-settings-block' )
- .append( $displaySettingsTitle.i18n() );
-
- return $displaySettings;
+ .attr( {
+ title: $.i18n( 'ext-uls-display-settings-desc' ),
+ 'data-i18n': 'ext-uls-display-settings-title'
+ } )
+ .i18n();
}
/**
* Construct the input settings link
- * @returns {jQuery}
+ *
+ * @return {jQuery}
*/
function inputSettings() {
- var $inputSettingsTitle, inputSettingsText, $inputSettings;
-
- inputSettingsText = $.i18n( 'ext-uls-input-settings-desc' );
- $inputSettingsTitle = $( '<div data-i18n="ext-uls-input-settings-title">' )
- .addClass( 'settings-title' )
- .attr( 'title', inputSettingsText );
- $inputSettings = $( '<div>' )
+ return $( '<button>' )
.addClass( 'input-settings-block' )
- .prop( 'id', 'input-settings-block' )
- .append( $inputSettingsTitle.i18n() );
-
- return $inputSettings;
+ .attr( {
+ title: $.i18n( 'ext-uls-input-settings-desc' ),
+ 'data-i18n': 'ext-uls-input-settings-title'
+ } )
+ .i18n();
}
/**
* Add display settings link to the settings bar in ULS
+ *
* @param {Object} uls The ULS object
*/
function addDisplaySettings( uls ) {
var $displaySettings = displaySettings();
uls.$menu.find( '#uls-settings-block' ).append( $displaySettings );
- $displaySettings.on( 'click', function () {
- var languagesettings = $displaySettings.data( 'languagesettings' ),
- displaySettingsOptions = {
+
+ // Initialize the trigger
+ $displaySettings.one( 'click', function () {
+ var displaySettingsOptions = {
defaultModule: 'display'
},
ulsPosition = mw.config.get( 'wgULSPosition' ),
anonMode = ( mw.user.isAnon() &&
!mw.config.get( 'wgULSAnonCanChangeLanguage' ) );
- if ( !languagesettings ) {
- // If the ULS trigger is shown in the top personal menu,
- // closing the display settings must show the main ULS
- // languages list, unless we are in anon mode and thus
- // cannot show the language list
- if ( ulsPosition === 'personal' && !anonMode ) {
- displaySettingsOptions.onClose = function () {
- uls.show();
- };
- }
- $.extend( displaySettingsOptions, uls.position() );
- mw.loader.using( mw.uls.languageSettingsModules, function () {
- $displaySettings.languagesettings( displaySettingsOptions )
- .click();
- } );
+ // If the ULS trigger is shown in the top personal menu,
+ // closing the display settings must show the main ULS
+ // languages list, unless we are in anon mode and thus
+ // cannot show the language list
+ if ( ulsPosition === 'personal' && !anonMode ) {
+ displaySettingsOptions.onClose = function () {
+ uls.show();
+ };
}
- mw.hook( 'mw.uls.settings.open' ).fire( 'uls' );
- uls.hide();
+ $.extend( displaySettingsOptions, uls.position() );
+ $displaySettings.languagesettings( displaySettingsOptions ).click();
} );
}
/**
* Add input settings link to the settings bar in ULS
+ *
* @param {Object} uls The ULS object
*/
function addInputSettings( uls ) {
var $inputSettings = inputSettings();
uls.$menu.find( '#uls-settings-block' ).append( $inputSettings );
- $inputSettings.on( 'click', function () {
- var position = uls.position(),
- languagesettings = $inputSettings.data( 'languagesettings' );
-
- if ( !languagesettings ) {
- mw.loader.using( mw.uls.languageSettingsModules, function () {
- $inputSettings.languagesettings( {
- defaultModule: 'input',
- onClose: function () {
- uls.show();
- },
- top: position.top,
- left: position.left
- } ).click();
- } );
- }
- mw.hook( 'mw.uls.settings.open' ).fire( 'uls' );
- uls.hide();
- } );
- }
-
- /**
- * Helper function to make the uls triggers accessible with the keyboard.
- * @param {jQuery} $target One or more jQuery elements.
- * @since 2013.07
- */
- function addAccessibilityFeatures( $target ) {
- // tabindex=0 makes it appear when tabbing targets.
- // See also http://www.w3.org/TR/wai-aria/roles#button
- $target.attr( {
- tabIndex: 0,
- role: 'button',
- 'aria-haspopup': true
- } );
- // TODO:
- // * aria-pressed true/false when popup is open
- // * aria-controls to reference to the popup
+ // Initialize the trigger
+ $inputSettings.one( 'click', function () {
+ var position = uls.position();
- // Remove outline when clicking
- $target.click( function () {
- $( this ).css( 'outline', 'none' );
- } );
- // Allow outline to appear again if keyboard activated
- $target.blur( function () {
- $( this ).css( 'outline', '' );
- } );
+ $inputSettings.languagesettings( {
+ defaultModule: 'input',
+ onClose: function () {
+ uls.show();
+ },
+ top: position.top,
+ left: position.left
+ } ).click();
- // Make Enter act the same as clicking. This has the unfortunate side
- // effect of removing the outline.
- $target.keydown( function ( event ) {
- // Enter
- if ( event.keyCode === 13 ) {
- $( this ).click();
- event.preventDefault();
- event.stopPropagation();
- }
} );
}
- /**
- * Gets the name of the previously active language
- * @param {string} code Language code of previously selected language.
- * @return {jQuery.Promise}
- */
- function getUndoAutonym( code ) {
- var
- deferred = $.Deferred(),
- autonym = $.cookie( mw.uls.previousLanguageAutonymCookie );
-
- if ( autonym ) {
- deferred.resolve( autonym );
- } else {
- mw.loader.using( 'jquery.uls.data', function () {
- deferred.resolve( $.uls.data.getAutonym( code ) );
- } );
- }
-
- return deferred.promise();
+ function userCanChangeLanguage() {
+ return mw.config.get( 'wgULSAnonCanChangeLanguage' ) || !mw.user.isAnon();
}
/**
* The tooltip to be shown when language changed using ULS.
* It also allows to undo the language selection.
+ *
+ * @param {string} previousLang
+ * @param {string} previousAutonym
*/
- function showULSTooltip() {
- var previousLang, $ulsTrigger, anonMode, showUndo, newLanguage, previousLanguages,
- ulsPosition = mw.config.get( 'wgULSPosition' ),
- currentLang = mw.config.get( 'wgUserLanguage' ),
- rtlPage = $( 'body' ).hasClass( 'rtl' ),
- tipsyGravity = {
- personal: 'n',
- interlanguage: rtlPage ? 'e' : 'w'
- };
+ function showUndoTooltip( previousLang, previousAutonym ) {
+ var $ulsTrigger, ulsPopup, ulsPopupPosition,
+ ulsPosition = mw.config.get( 'wgULSPosition' );
$ulsTrigger = ( ulsPosition === 'interlanguage' ) ?
$( '.uls-settings-trigger' ) :
$( '.uls-trigger' );
- previousLanguages = mw.uls.getPreviousLanguages() || [];
- previousLang = previousLanguages.slice( -1 )[0];
-
- // Whether we see current language for the first time
- newLanguage = currentLang !== previousLang;
- // Whether user is able to change language
- anonMode = ( mw.user.isAnon() && !mw.config.get( 'wgULSAnonCanChangeLanguage' ) );
- // Whether user is able to change language, and just did so
- showUndo = !anonMode && newLanguage && previousLang !== undefined;
-
- if ( newLanguage ) {
- previousLanguages.push( currentLang );
- mw.uls.setPreviousLanguages( previousLanguages );
- }
-
- if ( !showUndo ) {
- // In interlanguage mode, we will have normal tooltip, make it look same using tipsy
- $ulsTrigger.tipsy( { gravity: tipsyGravity[ulsPosition] } );
- return;
+ function hideTipsy() {
+ ulsPopup.toggle( false );
}
- getUndoAutonym( previousLang ).done( function( autonym ) {
- // Attach a tipsy tooltip to the trigger
- $ulsTrigger.tipsy( {
- gravity: tipsyGravity[ulsPosition],
- delayOut: 3000,
- html: true,
- fade: true,
- trigger: 'manual',
- title: function () {
- var link;
-
- link = $( '<a>' ).text( autonym )
- .attr( {
- href: '#',
- 'class': 'uls-prevlang-link',
- lang: previousLang,
- // We could get dir from uls.data,
- // but we are trying to avoid loading it
- // and 'auto' is safe enough in this context
- dir: 'auto'
- } );
-
- // Get the html of the link by wrapping it in div first
- link = $( '<div>' ).html( link ).html();
-
- return mw.message( 'ext-uls-undo-language-tooltip-text', '$1' ).escaped().replace( '$1', link );
- }
- } );
- } );
-
- // Now that we set the previous languages,
- // we can set the cookie of the previous autonym.
- // TODO: Refactor this, because it doesn't directly belong
- // to the tooltip.
- $.cookie( mw.uls.previousLanguageAutonymCookie,
- mw.config.get( 'wgULSCurrentAutonym' ),
- { path: '/' }
- );
-
function showTipsy( timeout ) {
var tipsyTimer = 0;
- $ulsTrigger.tipsy( 'show' );
+ ulsPopup.toggle( true );
+ ulsPopup.toggleClipping( false );
+
// if the mouse is over the tooltip, do not hide
- $( '.tipsy' ).on( 'mouseover', function () {
+ $( '.uls-tipsy' ).on( 'mouseover', function () {
window.clearTimeout( tipsyTimer );
- } );
- $( '.tipsy' ).on( 'mouseout', function () {
+ } ).on( 'mouseout', function () {
tipsyTimer = window.setTimeout( hideTipsy, timeout );
} );
// hide the tooltip when clicked on it
- $( '.tipsy' ).on( 'click', hideTipsy );
-
- // Event handler for links in the tooltip.
- // It looks like the tipsy is always created from scratch so that
- // there wont be multiple event handlers bound to same click.
- $( 'a.uls-prevlang-link' ).on( 'click.ulstipsy', function ( event ) {
- var deferred = $.Deferred();
+ $( '.uls-tipsy' ).on( 'click', hideTipsy );
- event.preventDefault();
- deferred.done( function () {
- mw.uls.changeLanguage( event.target.lang );
- } );
-
- mw.hook( 'mw.uls.language.revert' ).fire( deferred );
-
- // Delay is zero if event logging is not enabled
- window.setTimeout( function () {
- deferred.resolve();
- }, mw.config.get( 'wgULSEventLogging' ) * 500 );
- } );
tipsyTimer = window.setTimeout( hideTipsy, timeout );
}
- function hideTipsy() {
- $ulsTrigger.tipsy( 'hide' );
+ // remove any existing popups
+ if ( ulsPopup ) {
+ ulsPopup.$element.remove();
+ }
+ if ( ulsPosition === 'interlanguage' ) {
+ if ( $ulsTrigger.offset().left > $( window ).width() / 2 ) {
+ ulsPopupPosition = 'before';
+ } else {
+ ulsPopupPosition = 'after';
+ }
+ // Reverse for RTL
+ if ( $( 'html' ).prop( 'dir' ) === 'rtl' ) {
+ ulsPopupPosition = ( ulsPopupPosition === 'after' ) ? 'before' : 'after';
+ }
+ } else {
+ ulsPopupPosition = 'below';
}
+ ulsPopup = new OO.ui.PopupWidget( {
+ padded: true,
+ width: 300,
+ classes: [ 'uls-tipsy' ],
+ // Automatically positioned relative to the trigger
+ $floatableContainer: $ulsTrigger,
+ position: ulsPopupPosition,
+ $content: ( function () {
+ var messageKey, $link;
+
+ $link = $( '<a>' )
+ .text( previousAutonym )
+ .prop( {
+ href: '',
+ 'class': 'uls-prevlang-link',
+ lang: previousLang,
+ // We could get dir from uls.data,
+ // but we are trying to avoid loading it
+ // and 'auto' is safe enough in this context.
+ // T130390: must use attr
+ dir: 'auto'
+ } )
+ .on( 'click', function ( event ) {
+ var deferred = $.Deferred();
+
+ event.preventDefault();
+ deferred.done( function () {
+ mw.uls.changeLanguage( event.target.lang );
+ } );
+
+ mw.hook( 'mw.uls.language.revert' ).fire( deferred );
+
+ // Delay is zero if event logging is not enabled
+ window.setTimeout( function () {
+ deferred.resolve();
+ }, mw.config.get( 'wgULSEventLogging' ) * 500 );
+ } );
+
+ if ( mw.storage.get( 'uls-gp' ) === '1' ) {
+ messageKey = 'ext-uls-undo-language-tooltip-text-local';
+ } else {
+ messageKey = 'ext-uls-undo-language-tooltip-text';
+ }
+
+ return $( '<p>' ).append( mw.message( messageKey, $link ).parseDom() );
+ }() )
+ } );
+
+ ulsPopup.$element.appendTo( 'body' );
// The interlanguage position needs some time to settle down
window.setTimeout( function () {
@@ -317,174 +233,224 @@
} );
}
- $( document ).ready( function () {
- mw.uls.init( function () {
- var $triggers,
- $pLang,
- $ulsTrigger = $( '.uls-trigger' ),
- rtlPage = $( 'body' ).hasClass( 'rtl' ),
- anonMode = ( mw.user.isAnon() &&
- !mw.config.get( 'wgULSAnonCanChangeLanguage' ) ),
- imeSelector = mw.config.get( 'wgULSImeSelectors' ).join( ', ' ),
- ulsPosition = mw.config.get( 'wgULSPosition' );
-
- if ( ulsPosition === 'interlanguage' ) {
- // TODO: Refactor this block
- // The interlanguage links section
- $pLang = $( '#p-lang' );
- // Add an element near the interlanguage links header
- $ulsTrigger = $( '<span>' ).addClass( 'uls-settings-trigger' );
- // Append ULS cog to languages section.
- $pLang.prepend( $ulsTrigger );
- // Take care of any other elements with this class.
- $ulsTrigger = $( '.uls-settings-trigger' );
- // Remove the dummy link, which was added to make sure that the section appears
- $pLang.find( '.uls-p-lang-dummy' ).remove();
-
- if ( !$pLang.find( 'div ul' ).children().length ) {
- // Replace the title of the interlanguage links area
- // if there are no interlanguage links
- $pLang.find( 'h3' )
- .text( mw.msg( 'uls-plang-title-languages' ) );
- }
+ function initInterface() {
+ var $pLang,
+ clickHandler,
+ $ulsTrigger = $( '.uls-trigger' ),
+ anonMode = ( mw.user.isAnon() &&
+ !mw.config.get( 'wgULSAnonCanChangeLanguage' ) ),
+ ulsPosition = mw.config.get( 'wgULSPosition' );
+
+ if ( ulsPosition === 'interlanguage' ) {
+ // TODO: Refactor this block
+ // The interlanguage links section
+ $pLang = $( '#p-lang' );
+ // Add an element near the interlanguage links header
+ $ulsTrigger = $( '<button>' )
+ .addClass( 'uls-settings-trigger' );
+ // Append ULS cog to languages section.
+ $pLang.prepend( $ulsTrigger );
+ // Take care of any other elements with this class.
+ $ulsTrigger = $( '.uls-settings-trigger' );
+
+ if ( !$pLang.find( 'div ul' ).children().length ) {
+ // Replace the title of the interlanguage links area
+ // if there are no interlanguage links
+ $pLang.find( 'h3' )
+ .text( mw.msg( 'uls-plang-title-languages' ) );
+ }
- $ulsTrigger.attr( {
- title: mw.msg( 'ext-uls-select-language-settings-icon-tooltip' )
- } );
+ $ulsTrigger.attr( {
+ title: mw.msg( 'ext-uls-select-language-settings-icon-tooltip' )
+ } );
- $ulsTrigger.on( 'click', function ( e, eventParams ) {
- var languagesettings = $ulsTrigger.data( 'languagesettings' ),
- languageSettingsOptions;
+ clickHandler = function ( e, eventParams ) {
+ var languagesettings = $ulsTrigger.data( 'languagesettings' ),
+ languageSettingsOptions;
- if ( languagesettings ) {
- if ( !languagesettings.shown ) {
- mw.hook( 'mw.uls.settings.open' ).fire( eventParams && eventParams.source || 'interlanguage' );
- }
- } else {
- // Initialize the Language settings window
- languageSettingsOptions = {
- defaultModule: 'display',
- onVisible: function () {
- var topRowHeight, caretHeight, caretWidth,
- $caretBefore = $( '<span>' ).addClass( 'caret-before' ),
- $caretAfter = $( '<span>' ).addClass( 'caret-after' ),
- ulsTriggerWidth = this.$element.width(),
- ulsTriggerOffset = this.$element.offset();
-
- // Add the callout caret triangle
- // pointing to the trigger icon
- this.$window.addClass( 'callout' );
- this.$window.prepend( $caretBefore, $caretAfter );
-
- // Calculate the positioning of the panel
- // according to the position of the trigger icon
- if ( rtlPage ) {
- caretWidth = parseInt( $caretBefore.css( 'border-left-width' ), 10 );
- this.left = ulsTriggerOffset.left - this.$window.width() - caretWidth;
- } else {
- caretWidth = parseInt( $caretBefore.css( 'border-right-width' ), 10 );
- this.left = ulsTriggerOffset.left + ulsTriggerWidth + caretWidth;
- }
-
- topRowHeight = this.$window.find( '.row' ).height();
- caretHeight = parseInt( $caretBefore.css( 'top' ), 10 );
- this.top = ulsTriggerOffset.top - topRowHeight - caretHeight / 2;
-
- this.position();
+ if ( languagesettings ) {
+ if ( !languagesettings.shown ) {
+ mw.hook( 'mw.uls.settings.open' ).fire( eventParams && eventParams.source || 'interlanguage' );
+ }
+ } else {
+ // Initialize the Language settings window
+ languageSettingsOptions = {
+ defaultModule: 'display',
+ onVisible: function () {
+ var caretRadius,
+ ulsTriggerHeight = this.$element.height(),
+ ulsTriggerWidth = this.$element[ 0 ].offsetWidth,
+ ulsTriggerOffset = this.$element.offset();
+
+ this.$window.addClass( 'callout' );
+
+ // Same as border width in mixins.less, or near enough
+ caretRadius = 12;
+
+ if ( ulsTriggerOffset.left > $( window ).width() / 2 ) {
+ this.left = ulsTriggerOffset.left - this.$window.width() - caretRadius;
+ this.$window.removeClass( 'selector-left' ).addClass( 'selector-right' );
+
+ } else {
+ this.left = ulsTriggerOffset.left + ulsTriggerWidth + caretRadius;
+ this.$window.removeClass( 'selector-right' ).addClass( 'selector-left' );
}
- };
- mw.loader.using( mw.uls.languageSettingsModules, function () {
- $ulsTrigger.languagesettings( languageSettingsOptions ).click();
- } );
+ // The top of the dialog is aligned in relation to
+ // the middle of the trigger, so that middle of the
+ // caret aligns with it. 16 is trigger icon height in pixels
+ this.top = ulsTriggerOffset.top +
+ ( ulsTriggerHeight / 2 ) -
+ ( caretRadius + 16 );
- e.stopPropagation();
- }
- } );
- } else if ( anonMode ) {
- $ulsTrigger.on( 'click', function ( e, eventParams ) {
- var languagesettings = $ulsTrigger.data( 'languagesettings' );
+ this.position();
+ }
+ };
- e.preventDefault();
+ mw.loader.using( mw.uls.languageSettingsModules, function () {
+ $ulsTrigger.languagesettings( languageSettingsOptions ).click();
+ } );
- if ( languagesettings ) {
- if ( !languagesettings.shown ) {
- mw.hook( 'mw.uls.settings.open' ).fire( eventParams && eventParams.source || 'personal' );
- }
- } else {
- mw.loader.using( mw.uls.languageSettingsModules, function () {
- $ulsTrigger.languagesettings();
+ e.stopPropagation();
+ }
+ };
+ } else if ( anonMode ) {
+ clickHandler = function ( e, eventParams ) {
+ var languagesettings = $ulsTrigger.data( 'languagesettings' );
- $ulsTrigger.trigger( 'click', eventParams );
- } );
+ e.preventDefault();
+
+ if ( languagesettings ) {
+ if ( !languagesettings.shown ) {
+ mw.hook( 'mw.uls.settings.open' ).fire( eventParams && eventParams.source || 'personal' );
}
- } );
- } else {
- $ulsTrigger.on( 'click', function ( e, eventParams ) {
- var uls = $ulsTrigger.data( 'uls' );
+ } else {
+ mw.loader.using( mw.uls.languageSettingsModules, function () {
+ $ulsTrigger.languagesettings();
- e.preventDefault();
+ $ulsTrigger.trigger( 'click', eventParams );
+ } );
+ }
+ };
+ } else {
+ clickHandler = function ( e, eventParams ) {
+ var uls = $ulsTrigger.data( 'uls' );
- if ( uls ) {
- if ( !uls.shown ) {
- mw.hook( 'mw.uls.settings.open' ).fire( eventParams && eventParams.source || 'personal' );
- }
- } else {
- mw.loader.using( 'ext.uls.mediawiki', function () {
- $ulsTrigger.uls( {
- quickList: function () {
- return mw.uls.getFrequentLanguageList();
- },
- onReady: function () {
- var uls = this;
- mw.loader.using( mw.uls.languageSettingsModules, function () {
- addDisplaySettings( uls );
- addInputSettings( uls );
- } );
- },
- onSelect: function ( language ) {
- mw.uls.changeLanguage( language );
- },
- onVisible: function () {
- mw.uls.addEventLoggingTriggers();
- }
- } );
-
- // Allow styles to apply first and position to work by
- // delaying the activation after them.
- window.setTimeout( function () {
- $ulsTrigger.trigger( 'click', eventParams );
- }, 0 );
- } );
+ e.preventDefault();
+
+ if ( uls ) {
+ if ( !uls.shown ) {
+ mw.hook( 'mw.uls.settings.open' ).fire( eventParams && eventParams.source || 'personal' );
}
- } );
- }
+ } else {
+ mw.loader.using( 'ext.uls.mediawiki', function () {
+ $ulsTrigger.uls( {
+ quickList: function () {
+ return mw.uls.getFrequentLanguageList();
+ },
+ onReady: function () {
+ var uls = this;
+ mw.loader.using( mw.uls.languageSettingsModules, function () {
+ addDisplaySettings( uls );
+ addInputSettings( uls );
+ } );
+ },
+ onSelect: function ( language ) {
+ mw.uls.changeLanguage( language );
+ },
+ // Not actually used on sites with the gear icon
+ // in the interlanguage area, because this ULS
+ // will be a container for other ULS panels.
+ // However, this is used on sites with ULS
+ // in the personal bar, and in that case it has the same
+ // purpose as the selector in Display settings,
+ // so it has the same identifier.
+ ulsPurpose: 'interface-language'
+ } );
+
+ // Allow styles to apply first and position to work by
+ // delaying the activation after them.
+ window.setTimeout( function () {
+ $ulsTrigger.trigger( 'click', eventParams );
+ }, 0 );
+ } );
+ }
+ };
+ }
- // At this point we don't care which kind of trigger it is
- $triggers = $( '.uls-settings-trigger, .uls-trigger' );
- addAccessibilityFeatures( $triggers );
+ $ulsTrigger.on( 'click', clickHandler );
- // Bind language settings to preferences page link
- $( '#uls-preferences-link' )
- .text( mw.msg( 'ext-uls-language-settings-preferences-link' ) )
- .click( function () {
+ // Bind language settings to preferences page link
+ $( '#uls-preferences-link' )
+ .on( 'click keypress', function ( e ) {
+ if (
+ e.type === 'click' ||
+ e.type === 'keypress' && e.which === 13
+ ) {
$ulsTrigger.trigger( 'click', {
source: 'preferences'
} );
+ }
+
+ return false;
+ } );
+ }
- return false;
- } );
+ function initTooltip() {
+ var previousLanguage, currentLanguage, previousAutonym, currentAutonym;
+
+ if ( !userCanChangeLanguage() ) {
+ return;
+ }
- showULSTooltip();
+ previousLanguage = mw.storage.get( 'uls-previous-language-code' );
+ currentLanguage = mw.config.get( 'wgUserLanguage' );
+ previousAutonym = mw.storage.get( 'uls-previous-language-autonym' );
+ currentAutonym = mw.config.get( 'wgULSCurrentAutonym' );
- $( 'body' ).on( 'focus.imeinit', imeSelector, function () {
- var $input = $( this );
- $( 'body' ).off( '.imeinit' );
- mw.loader.using( 'ext.uls.ime', function () {
- mw.ime.setup();
- mw.ime.handleFocus( $input );
- } );
+ // If storage is empty, i.e. first visit, then store the current language
+ // immediately so that we know when it changes.
+ if ( !previousLanguage || !previousAutonym ) {
+ mw.storage.set( 'uls-previous-language-code', currentLanguage );
+ mw.storage.set( 'uls-previous-language-autonym', currentAutonym );
+ return;
+ }
+
+ if ( previousLanguage !== currentLanguage ) {
+ mw.loader.using( 'oojs-ui-core' ).done( function () {
+ showUndoTooltip( previousLanguage, previousAutonym );
+ } );
+ mw.storage.set( 'uls-previous-language-code', currentLanguage );
+ mw.storage.set( 'uls-previous-language-autonym', currentAutonym );
+ // Store this language in a list of frequently used languages
+ mw.uls.addPreviousLanguage( currentLanguage );
+ }
+ }
+
+ function initIme() {
+ var imeSelector = mw.config.get( 'wgULSImeSelectors' ).join( ', ' );
+
+ $( 'body' ).on( 'focus.imeinit', imeSelector, function () {
+ var $input = $( this );
+ $( 'body' ).off( '.imeinit' );
+ mw.loader.using( 'ext.uls.ime', function () {
+ mw.ime.setup();
+ mw.ime.handleFocus( $input );
} );
} );
- } );
-}( jQuery, mediaWiki ) );
+ }
+
+ function init() {
+ initInterface();
+ initTooltip();
+ initIme();
+ }
+
+ // Early execute of init
+ if ( document.readyState === 'interactive' ) {
+ init();
+ } else {
+ $( init );
+ }
+
+}() );
diff --git a/MLEB/UniversalLanguageSelector/resources/js/ext.uls.languagesettings.js b/MLEB/UniversalLanguageSelector/resources/js/ext.uls.languagesettings.js
index 5f93693a..177a40e3 100644
--- a/MLEB/UniversalLanguageSelector/resources/js/ext.uls.languagesettings.js
+++ b/MLEB/UniversalLanguageSelector/resources/js/ext.uls.languagesettings.js
@@ -1,4 +1,4 @@
-/**
+/*!
* ULS-based language settings dialog for MediaWiki.
*
* Copyright (C) 2012 Alolita Sharma, Amir Aharoni, Arun Ganesh, Brandon Harris,
@@ -16,7 +16,8 @@
* @licence GNU General Public Licence 2.0 or later
* @licence MIT License
*/
-( function ( $, mw ) {
+
+( function () {
'use strict';
var closeRow, settingsMenu, settingsPanel, windowTemplate, panelsRow, buttonsRow;
@@ -32,10 +33,10 @@
settingsPanel = '<div id="languagesettings-settings-panel" class="eight columns">' +
'</div>';
// Apply and Cancel buttons
- buttonsRow = '<div class="row language-settings-buttons">' +
- '<div class="eleven columns">' +
- '<button class="button uls-settings-cancel" data-i18n="ext-uls-language-settings-cancel"></button>' +
- '<button class="button active blue uls-settings-apply" data-i18n="ext-uls-language-settings-apply" disabled></button>' +
+ buttonsRow = '<div class="row collapse language-settings-buttons">' +
+ '<div class="twelve columns">' +
+ '<button class="mw-ui-button uls-settings-cancel" data-i18n="ext-uls-language-settings-cancel"></button>' +
+ '<button class="mw-ui-button mw-ui-progressive active uls-settings-apply" data-i18n="ext-uls-language-settings-apply" disabled></button>' +
'</div>' +
'</div>' +
'</div>';
@@ -43,7 +44,7 @@
settingsMenu +
settingsPanel +
'</div>';
- windowTemplate = '<div style="display: block;" id="language-settings-dialog" class="grid uls-menu uls-wide">' +
+ windowTemplate = '<div style="display: block;" id="language-settings-dialog" class="language-settings-dialog grid uls-menu uls-wide">' +
closeRow +
panelsRow +
buttonsRow +
@@ -73,19 +74,28 @@
// Register all event listeners to the ULS language settings here.
listen: function () {
- this.$element.on( 'click', $.proxy( this.click, this ) );
+ this.$element.on( 'click', this.click.bind( this ) );
this.$window.find( '#languagesettings-close, button.uls-settings-cancel' )
- .on( 'click', $.proxy( mw.hook( 'mw.uls.settings.cancel' ).fire, this ) );
+ .on( 'click', mw.hook( 'mw.uls.settings.cancel' ).fire.bind( this ) );
this.$window.find( 'button.uls-settings-apply' )
- .on( 'click', $.proxy( mw.hook( 'mw.uls.settings.apply' ).fire, this ) );
+ .on( 'click', mw.hook( 'mw.uls.settings.apply' ).fire.bind( this ) );
// Hide the window when clicked outside
- $( 'html' ).click( $.proxy( this.hide, this ) );
+ $( 'html' ).click( this.hide.bind( this ) );
// ... but when clicked on window do not hide.
this.$window.on( 'click', function ( event ) {
event.stopPropagation();
} );
+
+ // Map Escape to same action as the close button. This is keyup (and not keydown)
+ // because ULS also listens to keyup and we need to stop propagation.
+ this.$window.on( 'keyup', function ( event ) {
+ if ( event.which === 27 ) {
+ event.stopPropagation();
+ mw.hook( 'mw.uls.settings.cancel' ).fire();
+ }
+ } );
},
render: function () {
@@ -95,31 +105,28 @@
// Get the name of all registered modules and list them in left side menu.
// Sort the modules based on id
- modules = $.map( $.fn.languagesettings.modules, function ( element, index ) {
- return index;
- } ).sort();
- $.each( modules, function ( index, moduleName ) {
- if ( $.fn.languagesettings.modules.hasOwnProperty( moduleName ) ) {
- if ( !defaultModule ) {
- defaultModule = moduleName;
- }
-
- // Call render function on the current setting module.
- languageSettings.initModule( moduleName, defaultModule === moduleName );
+ modules = Object.keys( $.fn.languagesettings.modules ).sort();
+ modules.forEach( function ( moduleName ) {
+ if ( !defaultModule ) {
+ defaultModule = moduleName;
}
+
+ // Call render function on the current setting module.
+ languageSettings.initModule( moduleName, defaultModule === moduleName );
} );
},
/**
* Initialize the module.
* Render the link and settings area for a language setting module.
+ *
* @param {string} moduleName Name of the setting module
* @param {boolean} active boolean Make this module active and show by default
*/
initModule: function ( moduleName, active ) {
var $settingsTitle, $settingsText, $settingsLink,
languageSettings = this,
- module = new $.fn.languagesettings.modules[moduleName]( languageSettings ),
+ module = new $.fn.languagesettings.modules[ moduleName ]( languageSettings ),
$settingsMenuItems = languageSettings.$window.find( '.settings-menu-items' );
$settingsTitle = $( '<div>' )
@@ -128,7 +135,7 @@
$settingsText = $( '<span>' )
.addClass( 'settings-text' )
.attr( 'data-i18n', module.descriptionI18n );
- $settingsLink = $( '<div>' )
+ $settingsLink = $( '<button>' )
.addClass( moduleName + '-settings-block menu-section' )
.prop( 'id', moduleName + '-panel-trigger' )
.data( 'module', module )
@@ -137,48 +144,37 @@
$settingsText
);
+ if ( active ) {
+ $settingsLink.addClass( 'active' );
+ }
+
$settingsMenuItems.append( $settingsLink );
$settingsLink.on( 'click', function () {
var $this = $( this );
$this.data( 'module' ).render();
- // Re-position the window and scroll in to view if required.
- languageSettings.position();
+ if ( languageSettings.$window.is( ':visible' ) ) {
+ languageSettings.$window.scrollIntoView();
+ }
$settingsMenuItems.find( '.menu-section' ).removeClass( 'active' );
$this.addClass( 'active' );
} );
- if ( active ) {
- module.render();
- $settingsLink.addClass( 'active' );
- }
- this.modules[moduleName] = module;
+ this.modules[ moduleName ] = module;
// Register cancel and apply hooks
- mw.hook( 'mw.uls.settings.cancel' ).add( $.proxy( module.cancel, module ) );
- mw.hook( 'mw.uls.settings.apply' ).add( $.proxy( module.apply, module ) );
+ mw.hook( 'mw.uls.settings.cancel' ).add( module.cancel.bind( module ) );
+ mw.hook( 'mw.uls.settings.apply' ).add( module.apply.bind( module ) );
},
position: function () {
- var top, pos, left,
- languageSettings = this;
-
- pos = $.extend( {}, this.$element.offset(), {
- height: this.$element[0].offsetHeight
- } );
- top = this.top || pos.top + pos.height;
- left = this.left || '25%';
+ this.top = this.top || this.$element.offset().top + this.$element.outerHeight();
+ this.left = this.left || '25%';
this.$window.css( {
- top: top,
- left: left
+ top: this.top,
+ left: this.left
} );
- setTimeout( function () {
- // Don't mess up height calculations with parallel css loading
- // See: http://ejohn.org/blog/how-javascript-timers-work/
- languageSettings.$window.scrollIntoView();
- }, 0 );
-
},
i18n: function () {
@@ -186,27 +182,25 @@
},
show: function () {
- var languageSettings = this;
+ this.position();
if ( !this.initialized ) {
this.render();
this.initialized = true;
}
- // close model windows close, if they hide on page click
+ // Close other modal windows which listen to click events outside them
$( 'html' ).click();
this.i18n();
- this.shown = true;
- this.$window.show();
-
// Every time we show this window, make sure the current
- // settings panels is upto date. So just click on active menu item.
+ // settings panels is up-to-date. So just click on active menu item.
this.$window.find( '.settings-menu-items > .active' ).click();
- this.position();
- setTimeout( function () {
- // Don't mess up height calculations with parallel css loading
- // See: http://ejohn.org/blog/how-javascript-timers-work/
- languageSettings.visible();
- }, 0 );
+
+ this.shown = true;
+ this.$window.show();
+ this.visible();
+ this.$window.scrollIntoView();
+ // For keyboard navigation, put the focus on an element inside the dialog
+ this.$window.find( '.menu-section.active' ).focus();
},
/**
@@ -237,6 +231,7 @@
* Busy mode means displaying a progress cursor,
* and showing the 'apply' button as disabled and with
* a different label.
+ *
* @param {boolean} busy set true to put the panel in busy mode,
* false to unset the busy mode.
*/
@@ -299,7 +294,7 @@
}
if ( typeof option === 'string' ) {
- data[option]();
+ data[ option ]();
}
} );
};
@@ -315,4 +310,5 @@
};
$.fn.languagesettings.Constructor = LanguageSettings;
-}( jQuery, mediaWiki ) );
+
+}() );
diff --git a/MLEB/UniversalLanguageSelector/resources/js/ext.uls.mediawiki.js b/MLEB/UniversalLanguageSelector/resources/js/ext.uls.mediawiki.js
index 3bc0eeaa..baae3e5a 100644
--- a/MLEB/UniversalLanguageSelector/resources/js/ext.uls.mediawiki.js
+++ b/MLEB/UniversalLanguageSelector/resources/js/ext.uls.mediawiki.js
@@ -1,4 +1,4 @@
-/**
+/*!
* jquery.uls defaults for MediaWiki.
*
* Copyright (C) 2013 Alolita Sharma, Amir Aharoni, Arun Ganesh, Brandon Harris,
@@ -16,13 +16,14 @@
* @licence GNU General Public Licence 2.0 or later
* @licence MIT License
*/
-( function ( $, mw ) {
+
+( function () {
'use strict';
// MediaWiki overrides for ULS defaults
$.fn.uls.defaults = $.extend( $.fn.uls.defaults, {
languages: mw.config.get( 'wgULSLanguages' ) || {},
- searchAPI: mw.util.wikiScript( 'api' ) + '?action=languagesearch'
+ searchAPI: mw.util.wikiScript( 'api' ) + '?action=languagesearch&format=json&formatversion=2'
} );
// No need of IME in the ULS language search bar
@@ -30,13 +31,4 @@
this.$languageFilter.addClass( 'noime' );
};
- /*
- * The 'als' is used in a non-standard way in MediaWiki -
- * it may be used to represent the Allemanic language,
- * the standard code of which is 'gsw', while 'als'
- * is ISO 639 3 refers to Tosk Albanian, which is
- * not currently used in any way in MediaWiki.
- * This local fix adds a redirect for it.
- */
- $.uls.data.addLanguage( 'als', { target: 'gsw' } );
-}( jQuery, mediaWiki ) );
+}() );
diff --git a/MLEB/UniversalLanguageSelector/resources/js/ext.uls.preferences.js b/MLEB/UniversalLanguageSelector/resources/js/ext.uls.preferences.js
index 36f96d2c..0569fab4 100644
--- a/MLEB/UniversalLanguageSelector/resources/js/ext.uls.preferences.js
+++ b/MLEB/UniversalLanguageSelector/resources/js/ext.uls.preferences.js
@@ -1,6 +1,6 @@
-/**
+/*!
* ULS preferences system for MediaWiki.
- * Local storage for anonymous users, preferences for logged in users.
+ * Localstorage for anonymous users, preferences for logged in users.
*
* Copyright (C) 2012 Alolita Sharma, Amir Aharoni, Arun Ganesh, Brandon Harris,
* Niklas Laxström, Pau Giner, Santhosh Thottingal, Siebrand Mazeland and other
@@ -17,7 +17,8 @@
* @licence GNU General Public Licence 2.0 or later
* @licence MIT License
*/
-( function ( $, mw ) {
+
+( function () {
'use strict';
var ULSPreferences;
@@ -25,6 +26,8 @@
/**
* Wrapper for localStorage, falls back to cookie
* when localStorage not supported by browser.
+ *
+ * @return {Object}
*/
function preferenceStore() {
@@ -40,44 +43,22 @@
if ( typeof value === 'object' ) {
value = JSON.stringify( value );
}
- // Set the store
+
try {
localStorage.setItem( key, value );
- } catch ( e ) { // Use cookie
- $.cookie( key, value, { path: '/' } );
- }
+ } catch ( e ) {}
},
/*
* Returns the value of the given key
* @param {string} key
- * @retun {Object} value of the key
+ * @return {Object} value of the key
*/
get: function ( key ) {
var data;
- // No value supplied, return value
- try {
- data = localStorage.getItem( key );
- if ( !data ) {
- // Try to restore the old preferences, if any, if possible.
- try {
- data = JSON.parse( localStorage.getItem( 'jStorage' ) )['uls-preferences'];
- // And try to remove it.
- localStorage.removeItem( 'jStorage' );
- } catch ( e ) {
- // Don't bother about it.
- }
- }
- } catch ( e ) { // Use cookie
- data = $.cookie( key );
- }
-
- // Try to parse JSON
try {
- data = JSON.parse( data );
- } catch ( e ) {
- data = data;
- }
+ data = JSON.parse( localStorage.getItem( key ) );
+ } catch ( e ) {}
return data;
}
@@ -97,10 +78,12 @@
* Initialize
*/
init: function () {
+ var options;
+
if ( this.isAnon ) {
this.preferences = preferenceStore().get( this.preferenceName );
} else {
- var options = mw.user.options.get( this.preferenceName );
+ options = mw.user.options.get( this.preferenceName );
if ( !options ) {
options = '{}';
}
@@ -118,26 +101,27 @@
/**
* Set the preference
*
- * @param {String} key
- * @param value
+ * @param {string} key
+ * @param {mixed} value
*/
set: function ( key, value ) {
- this.preferences[key] = value;
+ this.preferences[ key ] = value;
},
/**
* Get a preference value for the given preference name
*
- * @param key
+ * @param {string} key
+ * @return {Mixed}
*/
get: function ( key ) {
- return this.preferences[key];
+ return this.preferences[ key ];
},
/**
* Save the preferences
*
- * @param callback
+ * @param {Function} callback
*/
save: function ( callback ) {
var ulsPreferences = this;
@@ -149,11 +133,10 @@
callback.call( this, true );
} else {
// Logged in user. Use MW APIs to change preferences
- new mw.Api().postWithToken( 'options', {
- action: 'options',
- optionname: ulsPreferences.preferenceName,
- optionvalue: JSON.stringify( ulsPreferences.preferences )
- } ).done( function () {
+ new mw.Api().saveOption(
+ ulsPreferences.preferenceName,
+ JSON.stringify( ulsPreferences.preferences )
+ ).done( function () {
callback.call( this, true );
} ).fail( function () {
callback.call( this, false );
@@ -172,4 +155,4 @@
return data;
};
-}( jQuery, mediaWiki ) );
+}() );
diff --git a/MLEB/UniversalLanguageSelector/resources/js/ext.uls.webfonts.js b/MLEB/UniversalLanguageSelector/resources/js/ext.uls.webfonts.js
index f905f745..1a303568 100644
--- a/MLEB/UniversalLanguageSelector/resources/js/ext.uls.webfonts.js
+++ b/MLEB/UniversalLanguageSelector/resources/js/ext.uls.webfonts.js
@@ -1,4 +1,4 @@
-/**
+/*!
* ULS-Webfonts integration
*
* Copyright (C) 2012 Alolita Sharma, Amir Aharoni, Arun Ganesh, Brandon Harris,
@@ -16,13 +16,11 @@
* @licence GNU General Public Licence 2.0 or later
* @licence MIT License
*/
-( function ( $, mw ) {
+
+( function () {
'use strict';
- var ulsPreferences,
- // Text to prepend the sample text. 0D00 is an unassigned unicode point.
- tofuSalt = '\u0D00',
- // cache languages with tofu.
- tofuLanguages = {};
+
+ var ulsPreferences;
mw.webfonts = mw.webfonts || {};
ulsPreferences = mw.uls.preferences();
@@ -45,11 +43,11 @@
},
setFont: function ( language, font ) {
- this.registry.fonts[language] = font;
+ this.registry.fonts[ language ] = font;
},
getFont: function ( language ) {
- return this.registry.fonts[language];
+ return this.registry.fonts[ language ];
},
save: function ( callback ) {
@@ -65,60 +63,6 @@
}
};
- /**
- * Detect tofu
- *
- * Create a temporary span in the page with fontsize 72px and font-family
- * sans-serif for each letter of the text.
- * For each of these spans, calculate the width and height. If they are same
- * for all spans, we can understand that each of the letter is rendered using
- * same glyph - it must be a tofu.
- *
- * @param {string} text
- * @return {boolean}
- */
- function detectTofu( text ) {
- var index,
- $fixture,
- width = {},
- height = {},
- length = Math.min( 4, text.length ),
- detected = false;
-
- if ( $.client.test( { msie: false } ) ) {
- // IE shows a different tofu for unassigned code points!
- text = tofuSalt + text;
- }
- $fixture = $( '<span>' )
- .css( {
- fontSize: '72px',
- fontFamily: 'sans-serif'
- } )
- .appendTo( 'body' );
-
- for ( index = 0; index < length; index++ ) {
- $fixture.text( text[index] );
- width[index] = $fixture.width() || width[index - 1];
- height[index] = $fixture.height();
-
- if ( index > 0 &&
- ( width[index] !== width[index - 1] ||
- height[index] !== height[index - 1] )
- ) {
- detected = false;
- break;
- }
- }
-
- $fixture.remove();
-
- if ( index === length ) {
- detected = true;
- }
-
- return detected;
- }
-
mw.webfonts.setup = function () {
// Initialize webfonts
var mediawikiFontRepository = $.webfonts.repository;
@@ -135,10 +79,11 @@
*
* @param {Object} repository
* @param {string} language
- * @param {array} classes
+ * @param {string[]} classes
+ * @return {string|null}
*/
fontSelector: function ( repository, language, classes ) {
- var font, autonym, defaultFont;
+ var font, defaultFont;
if ( !language ) {
return null;
@@ -146,41 +91,16 @@
defaultFont = repository.defaultFont( language );
- if ( classes && $.inArray( 'autonym', classes ) >= 0 ) {
- autonym = true;
+ if ( classes && classes.indexOf( 'autonym' ) >= 0 ) {
+ // Do not load font for showing autonym.
+ return null;
}
// If the user has a font preference, apply it always.
- font = mw.webfonts.preferences.getFont( language );
- if ( !font || autonym ) {
- // Is there any default font for this language?
- if ( ( !defaultFont || defaultFont === 'system' ) && !autonym ) {
- return font;
- }
-
- // There is a default font for this language,
- // but check whether the user sees tofu for it.
- if ( tofuLanguages[language] === undefined ) {
- tofuLanguages[language] = detectTofu( $.uls.data.getAutonym( language ) );
-
- // Log the tofu detection only once per page per language
- if ( tofuLanguages[language] ) {
- mw.log( 'tofu detected for ' + language );
- mw.hook( 'mw.uls.webfonts.tofudetected' ).fire( language );
- }
- }
-
- if ( tofuLanguages[language] ) {
- font = autonym ? 'Autonym' : defaultFont;
- } else {
- // No tofu and no font preference. Use system font.
- font = 'system';
- }
- }
-
- if ( font === 'system' ) {
+ font = mw.webfonts.preferences.getFont( language ) || defaultFont;
+ if ( !font || font === 'system' ) {
// Avoid setting 'system' as a font in css
- font = null;
+ return null;
}
return font;
@@ -208,24 +128,15 @@
// property values set by stylesheets.
setTimeout( function () {
$( 'body' ).webfonts();
-
- // Load the CSS required for the Autonym font. Note that this won't download the font.
- // Browsers are smart enough to delay it till some element with this font-family
- // becomes visible. For example: If there is a popup div with an element with class
- // 'autonym', without explicitly calling .webfonts() on it, Autonym font will not
- // be applied in general. But we ensure that the CSS is ready so that the font
- // will be applied automatically to such future elements.
- $( 'body' ).data( 'webfonts' ).load( 'Autonym' );
}, 0 );
};
- $( document ).ready( function () {
- mw.uls.init( function () {
- mw.webfonts.preferences.load();
+ $( function () {
+ mw.webfonts.preferences.load();
- if ( mw.webfonts.preferences.isEnabled() ) {
- mw.loader.using( 'ext.uls.webfonts.fonts', mw.webfonts.setup );
- }
- } );
+ if ( mw.webfonts.preferences.isEnabled() ) {
+ mw.loader.using( 'ext.uls.webfonts.fonts', mw.webfonts.setup );
+ }
} );
-}( jQuery, mediaWiki ) );
+
+}() );
diff --git a/MLEB/UniversalLanguageSelector/resources/js/ext.uls.webfonts.mobile.js b/MLEB/UniversalLanguageSelector/resources/js/ext.uls.webfonts.mobile.js
index 43a6b53b..bf3bb800 100644
--- a/MLEB/UniversalLanguageSelector/resources/js/ext.uls.webfonts.mobile.js
+++ b/MLEB/UniversalLanguageSelector/resources/js/ext.uls.webfonts.mobile.js
@@ -1,4 +1,4 @@
-/**
+/*!
* MobileFrontend compatible ULS-Webfonts integration
*
* Copyright (C) 2013 Alolita Sharma, Amir Aharoni, Arun Ganesh, Brandon Harris,
@@ -16,7 +16,8 @@
* @licence GNU General Public Licence 2.0 or later
* @licence MIT License
*/
-( function ( $, mw ) {
+
+( function () {
'use strict';
var mediawikiFontRepository;
@@ -27,7 +28,7 @@
mediawikiFontRepository.base = mw.config.get( 'wgExtensionAssetsPath' ) +
'/UniversalLanguageSelector/data/fontrepo/fonts/';
- $( document ).ready( function () {
+ $( function () {
// MediaWiki specific overrides for jquery.webfonts
$.extend( $.fn.webfonts.defaults, {
repository: mediawikiFontRepository,
@@ -46,4 +47,5 @@
$( 'body' ).webfonts();
} );
-}( jQuery, mediaWiki ) );
+
+}() );
diff --git a/MLEB/UniversalLanguageSelector/resources/js/ext.uls.webfonts.repository.js b/MLEB/UniversalLanguageSelector/resources/js/ext.uls.webfonts.repository.js
index 37a209b0..a6b50377 100644
--- a/MLEB/UniversalLanguageSelector/resources/js/ext.uls.webfonts.repository.js
+++ b/MLEB/UniversalLanguageSelector/resources/js/ext.uls.webfonts.repository.js
@@ -1,5 +1,764 @@
-// Do not edit! This file is generated from data/fontrepo by data/fontrepo/scripts/compile.php
-( function ( $ ) {
+// Do not edit! This file is generated from data/fontrepo by scripts/compile-font-repo.php
+( function () {
$.webfonts = $.webfonts || {};
- $.webfonts.repository = {"base":"..\/data\/fontrepo\/fonts\/","languages":{"adx":["Jomolhari"],"af":["system","OpenDyslexic"],"ahr":["Lohit Marathi"],"am":["AbyssinicaSIL"],"ang":["system","Junicode"],"ar":["system","Amiri"],"arb":["system","Amiri"],"arc":["Estrangelo Edessa","East Syriac Adiabene","SertoUrhoy"],"as":["system","Lohit Assamese"],"bbc":["system","Pangururan"],"bh":["Lohit Devanagari"],"bho":["Lohit Devanagari"],"bk":["system","OpenDyslexic"],"bn":["Siyam Rupali","Lohit Bengali"],"bo":["Jomolhari"],"bod":["Jomolhari"],"bpy":["Siyam Rupali","Lohit Bengali"],"btk":["system","Pangururan"],"bug":["Saweri"],"ca":["system","OpenDyslexic"],"cdo":["system","CharisSIL"],"ckb":["system","Lateef","Scheherazade","Amiri"],"cr":["OskiEast"],"cy":["system","ComicNeue","OpenDyslexic"],"da":["system","OpenDyslexic"],"de":["system","OpenDyslexic"],"dre":["Jomolhari"],"dv":["FreeFont-Thaana"],"dz":["Jomolhari"],"en":["system","ComicNeue","OpenDyslexic"],"es":["system","OpenDyslexic"],"et":["system","OpenDyslexic"],"fa":["system","Iranian Sans","Iranian Serif","Lateef","Nazli","Scheherazade"],"fi":["system","OpenDyslexic"],"fo":["system","OpenDyslexic"],"fr":["system","OpenDyslexic"],"fy":["system","OpenDyslexic"],"ga":["system","OpenDyslexic"],"gd":["system","OpenDyslexic"],"gez":["AbyssinicaSIL"],"gl":["system","OpenDyslexic"],"goe":["Jomolhari"],"gom":["Lohit Devanagari"],"got":["system","Skeirs II"],"grc":["system","GentiumPlus"],"gu":["Lohit Gujarati"],"hbo":["Taamey Frank CLM","Alef"],"he":["system","Alef","Miriam CLM","Taamey Frank CLM"],"hi":["Lohit Devanagari"],"hu":["system","OpenDyslexic"],"hut":["Jomolhari"],"id":["system","ComicNeue","OpenDyslexic"],"ii":["Nuosu SIL"],"is":["system","OpenDyslexic"],"it":["system","OpenDyslexic"],"iu":["system","OskiEast"],"jv":["system","Tuladha Jejeg"],"jv-java":["Tuladha Jejeg"],"kbg":["Jomolhari"],"khg":["Jomolhari"],"km":["KhmerOSbattambang","Hanuman","KhmerOS","Nokora Regular","Suwannaphum"],"kn":["Lohit Kannada","Gubbi"],"kok":["Lohit Devanagari"],"kte":["Jomolhari"],"lb":["system","OpenDyslexic"],"lbj":["Jomolhari"],"lhm":["Jomolhari"],"li":["system","OpenDyslexic"],"lo":["Phetsarath"],"loy":["Jomolhari"],"luk":["Jomolhari"],"lya":["Jomolhari"],"mai":["Lohit Devanagari"],"mak":["Saweri"],"mi":["system","OpenDyslexic"],"ml":["system","AnjaliOldLipi","Meera"],"mr":["Lohit Marathi"],"ms":["system","ComicNeue","OpenDyslexic"],"muk":["Jomolhari"],"mul":["system","Autonym"],"my":["TharLon","Myanmar3","Padauk"],"nan":["system","CharisSIL","Doulos SIL"],"nb":["system","OpenDyslexic"],"ne":["Lohit Nepali","Madan"],"nl":["system","ComicNeue","OpenDyslexic"],"oc":["system","OpenDyslexic"],"ola":["Jomolhari"],"or":["Lohit Odia","Utkal"],"otb":["Jomolhari"],"pa":["Lohit Punjabi","Saab"],"pal":["Shapour"],"peo":["Artaxerxes"],"pl":["system","OpenDyslexic"],"pt":["system","OpenDyslexic"],"sa":["Lohit Devanagari"],"saz":["Pagul"],"si":["system","lklug"],"sq":["system","OpenDyslexic"],"sv":["system","OpenDyslexic"],"sw":["system","ComicNeue","OpenDyslexic"],"syc":["Estrangelo Edessa","East Syriac Adiabene","SertoUrhoy"],"ta":["system","Lohit Tamil","Lohit Tamil Classical","Thendral","Thenee"],"tcn":["Jomolhari"],"tcy":["Lohit Kannada","Gubbi"],"te":["Lohit Telugu"],"thw":["Jomolhari"],"ti":["AbyssinicaSIL"],"tig":["AbyssinicaSIL"],"tl":["system","ComicNeue","OpenDyslexic"],"tr":["system","OpenDyslexic"],"tsk":["Jomolhari"],"ur":["system","Hussaini Nastaleeq","NafeesWeb"],"wa":["system","OpenDyslexic"],"xct":["Jomolhari"],"yi":["system","Alef"],"zau":["Jomolhari"]},"fonts":{"AbyssinicaSIL":{"version":"1.500","eot":"AbyssinicaSIL\/AbyssinicaSIL-R.eot","ttf":"AbyssinicaSIL\/AbyssinicaSIL-R.ttf","woff":"AbyssinicaSIL\/AbyssinicaSIL-R.woff"},"Alef":{"version":"1.0","ttf":"Alef\/Alef-Regular.ttf","eot":"Alef\/Alef-Regular.eot","woff":"Alef\/Alef-Regular.woff","variants":{"bold":"Alef Bold"}},"Alef Bold":{"version":"1.0","fontweight":"bold","ttf":"Alef\/Alef-Bold.ttf","eot":"Alef\/Alef-Bold.eot","woff":"Alef\/Alef-Bold.woff"},"Amiri":{"version":"1.0.2","ttf":"amiri\/amiri-regular.ttf","eot":"amiri\/amiri-regular.eot","woff":"amiri\/amiri-regular.woff","variants":{"bold":"Amiri Bold","bolditalic":"Amiri Bold Italic","italic":"Amiri Italic"}},"Amiri Bold":{"version":"1.0.2","fontweight":"bold","ttf":"amiri\/amiri-bold.ttf","eot":"amiri\/amiri-bold.eot","woff":"amiri\/amiri-bold.woff"},"Amiri Bold Italic":{"version":"1.0.2","fontweight":"bold","fontstyle":"italic","ttf":"amiri\/amiri-boldslanted.ttf","eot":"amiri\/amiri-boldslanted.eot","woff":"amiri\/amiri-boldslanted.woff"},"Amiri Italic":{"version":"1.0.2","fontstyle":"italic","ttf":"amiri\/amiri-slanted.ttf","eot":"amiri\/amiri-slanted.eot","woff":"amiri\/amiri-slanted.woff"},"AnjaliOldLipi":{"version":".0.730","eot":"AnjaliOldLipi\/AnjaliOldLipi.eot","ttf":"AnjaliOldLipi\/AnjaliOldLipi.ttf","woff":"AnjaliOldLipi\/AnjaliOldLipi.woff"},"Artaxerxes":{"version":"1.400","eot":"Artaxerxes\/Artaxerxes.eot","ttf":"Artaxerxes\/Artaxerxes.ttf","woff":"Artaxerxes\/Artaxerxes.woff"},"Autonym":{"version":"20131205","eot":"Autonym\/Autonym.eot","ttf":"Autonym\/Autonym.ttf","woff":"Autonym\/Autonym.woff"},"CharisSIL":{"version":"4.011","eot":"CharisSIL\/CharisSIL-R.eot","ttf":"CharisSIL\/CharisSIL-R.ttf","woff":"CharisSIL\/CharisSIL-R.woff"},"ComicNeue":{"version":"1.1","ttf":"ComicNeue\/ComicNeue-Regular.ttf","eot":"ComicNeue\/ComicNeue-Regular.eot","woff":"ComicNeue\/ComicNeue-Regular.woff","variants":{"bold":"ComicNeue Bold","italic":"ComicNeue Oblique"}},"ComicNeue Bold":{"version":"1.1","fontweight":"bold","ttf":"ComicNeue\/ComicNeue-Bold.ttf","eot":"ComicNeue\/ComicNeue-Bold.eot","woff":"ComicNeue\/ComicNeue-Bold.woff"},"ComicNeue Oblique":{"version":"1.1","fontstyle":"italic","ttf":"ComicNeue\/ComicNeue-Regular-Oblique.ttf","eot":"ComicNeue\/ComicNeue-Regular-Oblique.eot","woff":"ComicNeue\/ComicNeue-Regular-Oblique.woff"},"Doulos SIL":{"version":"4.112","eot":"DoulosSIL\/DoulosSIL-R.eot","ttf":"DoulosSIL\/DoulosSIL-R.ttf","woff":"DoulosSIL\/DoulosSIL-R.woff"},"East Syriac Adiabene":{"version":"1.21","eot":"EastSyriacAdiabene\/SyrCOMAdiabene.eot","ttf":"EastSyriacAdiabene\/SyrCOMAdiabene.ttf","woff":"EastSyriacAdiabene\/SyrCOMAdiabene.woff"},"Estrangelo Edessa":{"version":"1.21","eot":"EstrangeloEdessa\/SyrCOMEdessa.eot","ttf":"EstrangeloEdessa\/SyrCOMEdessa.ttf","woff":"EstrangeloEdessa\/SyrCOMEdessa.woff"},"FreeFont-Thaana":{"version":"1.0","ttf":"FreeFontThana\/FreeFont-Thaana.ttf","eot":"FreeFontThana\/FreeFont-Thaana.eot","woff":"FreeFontThana\/FreeFont-Thaana.woff","variants":{"bold":"FreeFont-Thaana Bold"}},"FreeFont-Thaana Bold":{"version":"1.0","fontweight":"bold","ttf":"FreeFontThana\/FreeFont-Thaana-Bold.ttf","eot":"FreeFontThana\/FreeFont-Thaana-Bold.eot","woff":"FreeFontThana\/FreeFont-Thaana-Bold.woff"},"GentiumPlus":{"version":"1.510","ttf":"GentiumPlus\/GentiumPlus-R.ttf","eot":"GentiumPlus\/GentiumPlus-R.eot","woff":"GentiumPlus\/GentiumPlus-R.woff","variants":{"italic":"GentiumPlus Italic"}},"GentiumPlus Italic":{"version":"1.510","fontstyle":"italic","ttf":"GentiumPlus\/GentiumPlus-I.ttf","eot":"GentiumPlus\/GentiumPlus-I.eot","woff":"GentiumPlus\/GentiumPlus-I.woff"},"Gubbi":{"version":"1.3","eot":"Gubbi\/Gubbi.eot","ttf":"Gubbi\/Gubbi.ttf","woff":"Gubbi\/Gubbi.woff"},"Hanuman":{"version":"1.0","ttf":"Hanuman\/Hanuman.ttf","eot":"Hanuman\/Hanuman.eot","woff":"Hanuman\/Hanuman.woff","variants":{"bold":"Hanuman Bold"}},"Hanuman Bold":{"version":"1.0","fontweight":"bold","ttf":"Hanuman\/Hanumanb.ttf","eot":"Hanuman\/Hanumanb.eot","woff":"Hanuman\/Hanumanb.woff"},"Hussaini Nastaleeq":{"version":"0.01","eot":"HussainiNastaleeq\/hussaini-nastaleeq.eot","ttf":"HussainiNastaleeq\/hussaini-nastaleeq.ttf","woff":"HussainiNastaleeq\/hussaini-nastaleeq.woff"},"Iranian Sans":{"version":"1.000","ttf":"IranianSans\/irsans.ttf","eot":"IranianSans\/irsans.eot","woff":"IranianSans\/irsans.woff","variants":{"bold":"Iranian Sans Bold"}},"Iranian Sans Bold":{"version":"1.000","fontweight":"bold","ttf":"IranianSans\/irsansb.ttf","eot":"IranianSans\/irsansb.eot","woff":"IranianSans\/irsansb.woff"},"Iranian Serif":{"version":"1.000","ttf":"IranianSerif\/irseri.ttf","eot":"IranianSerif\/irseri.eot","woff":"IranianSerif\/irseri.woff"},"Jomolhari":{"version":"0.003","eot":"Jomolhari\/Jomolhari.eot","ttf":"Jomolhari\/Jomolhari.ttf","woff":"Jomolhari\/Jomolhari.woff"},"Junicode":{"version":"2013-01-17","ttf":"Junicode\/Junicode.ttf","eot":"Junicode\/Junicode.eot","woff":"Junicode\/Junicode.woff","variants":{"bold":"Junicode Bold","bolditalic":"Junicode Bold Italic","italic":"Junicode Italic"}},"Junicode Bold":{"version":"2013-01-17","fontweight":"bold","ttf":"Junicode\/Junicode-Bold.ttf","eot":"Junicode\/Junicode-Bold.eot","woff":"Junicode\/Junicode-Bold.woff"},"Junicode Bold Italic":{"version":"2013-01-17","fontweight":"bold","fontstyle":"italic","ttf":"Junicode\/Junicode-BoldItalic.ttf","eot":"Junicode\/Junicode-BoldItalic.eot","woff":"Junicode\/Junicode-BoldItalic.woff"},"Junicode Italic":{"version":"2013-01-17","fontstyle":"italic","ttf":"Junicode\/Junicode-Italic.ttf","eot":"Junicode\/Junicode-Italic.eot","woff":"Junicode\/Junicode-Italic.woff"},"KhmerOS":{"version":"1.10","eot":"KhmerOS\/KhmerOS.eot","ttf":"KhmerOS\/KhmerOS.ttf","woff":"KhmerOS\/KhmerOS.woff"},"KhmerOSbattambang":{"version":"1.10","eot":"KhmerOSbattambang\/KhmerOSbattambang.eot","ttf":"KhmerOSbattambang\/KhmerOSbattambang.ttf","woff":"KhmerOSbattambang\/KhmerOSbattambang.woff"},"Lateef":{"version":"1.001","ttf":"Lateef\/LateefRegOT.ttf","eot":"Lateef\/LateefRegOT.eot","woff":"Lateef\/LateefRegOT.woff"},"Linux Libertine":{"version":"5.3.0","ttf":"LinuxLibertine\/LinLibertine_Rah.ttf","eot":"LinuxLibertine\/LinLibertine_Rah.eot","woff":"LinuxLibertine\/LinLibertine_Rah.woff","variants":{"bold":"Linux Libertine Bold","bolditalic":"Linux Libertine Bold Italic","italic":"Linux Libertine Italic"}},"Linux Libertine Bold":{"version":"5.3.0","fontweight":"bold","ttf":"LinuxLibertine\/LinLibertine_RBah.ttf","eot":"LinuxLibertine\/LinLibertine_RBah.eot","woff":"LinuxLibertine\/LinLibertine_RBah.woff"},"Linux Libertine Bold Italic":{"version":"5.3.0","fontweight":"bold","fontstyle":"italic","ttf":"LinuxLibertine\/LinLibertine_RBIah.ttf","eot":"LinuxLibertine\/LinLibertine_RBIah.eot","woff":"LinuxLibertine\/LinLibertine_RBIah.woff"},"Linux Libertine Italic":{"version":"5.3.0","fontstyle":"italic","ttf":"LinuxLibertine\/LinLibertine_RIah.ttf","eot":"LinuxLibertine\/LinLibertine_RIah.eot","woff":"LinuxLibertine\/LinLibertine_RIah.woff"},"Lohit Assamese":{"version":"2.5.3","eot":"LohitAssamese\/Lohit-Assamese.eot","ttf":"LohitAssamese\/Lohit-Assamese.ttf","woff":"LohitAssamese\/Lohit-Assamese.woff"},"Lohit Bengali":{"version":"2.5.3","eot":"LohitBengali\/Lohit-Bengali.eot","ttf":"LohitBengali\/Lohit-Bengali.ttf","woff":"LohitBengali\/Lohit-Bengali.woff"},"Lohit Devanagari":{"version":"2.5.3","eot":"LohitDevanagari\/Lohit-Devanagari.eot","ttf":"LohitDevanagari\/Lohit-Devanagari.ttf","woff":"LohitDevanagari\/Lohit-Devanagari.woff"},"Lohit Gujarati":{"version":"2.5.3","eot":"LohitGujarati\/Lohit-Gujarati.eot","ttf":"LohitGujarati\/Lohit-Gujarati.ttf","woff":"LohitGujarati\/Lohit-Gujarati.woff"},"Lohit Kannada":{"version":"2.5.3","eot":"LohitKannada\/Lohit-Kannada.eot","ttf":"LohitKannada\/Lohit-Kannada.ttf","woff":"LohitKannada\/Lohit-Kannada.woff"},"Lohit Marathi":{"version":"2.5.3","eot":"LohitMarathi\/Lohit-Marathi.eot","ttf":"LohitMarathi\/Lohit-Marathi.ttf","woff":"LohitMarathi\/Lohit-Marathi.woff"},"Lohit Nepali":{"version":"2.5.3","eot":"LohitNepali\/Lohit-Nepali.eot","ttf":"LohitNepali\/Lohit-Nepali.ttf","woff":"LohitNepali\/Lohit-Nepali.woff"},"Lohit Odia":{"version":"2.5.5","eot":"LohitOdia\/Lohit-Odia.eot","ttf":"LohitOdia\/Lohit-Odia.ttf","woff":"LohitOdia\/Lohit-Odia.woff"},"Lohit Punjabi":{"version":"2.5.3","eot":"LohitPunjabi\/Lohit-Punjabi.eot","ttf":"LohitPunjabi\/Lohit-Punjabi.ttf","woff":"LohitPunjabi\/Lohit-Punjabi.woff"},"Lohit Tamil":{"version":"2.5.3","eot":"LohitTamil\/Lohit-Tamil.eot","ttf":"LohitTamil\/Lohit-Tamil.ttf","woff":"LohitTamil\/Lohit-Tamil.woff"},"Lohit Tamil Classical":{"version":"2.5.3","eot":"LohitTamilClassical\/Lohit-Tamil-Classical.eot","ttf":"LohitTamilClassical\/Lohit-Tamil-Classical.ttf","woff":"LohitTamilClassical\/Lohit-Tamil-Classical.woff"},"Lohit Telugu":{"version":"2.5.3","eot":"LohitTelugu\/Lohit-Telugu.eot","ttf":"LohitTelugu\/Lohit-Telugu.ttf","woff":"LohitTelugu\/Lohit-Telugu.woff"},"Madan":{"version":"2","eot":"madan\/madan.eot","ttf":"madan\/madan.ttf","woff":"madan\/madan.woff"},"Meera":{"version":"6.0","eot":"Meera\/Meera.eot","ttf":"Meera\/Meera.ttf","woff":"Meera\/Meera.woff"},"Miriam CLM":{"version":"0.130","eot":"MiriamCLM\/MiriamCLM-Book.eot","ttf":"MiriamCLM\/MiriamCLM-Book.ttf","woff":"MiriamCLM\/MiriamCLM-Book.woff"},"Myanmar3":{"version":"3.0","eot":"Myanmar3\/Myanmar3.eot","ttf":"Myanmar3\/Myanmar3.ttf","woff":"Myanmar3\/Myanmar3.woff"},"NafeesWeb":{"version":"1.2","eot":"NafeesWeb\/NafeesWeb.eot","ttf":"NafeesWeb\/NafeesWeb.ttf","woff":"NafeesWeb\/NafeesWeb.woff"},"Nazli":{"version":"0.4","ttf":"Nazli\/Nazli.ttf","eot":"Nazli\/Nazli.eot","woff":"Nazli\/Nazli.woff","variants":{"bold":"Nazli Bold"}},"Nazli Bold":{"version":"0.4","fontweight":"bold","ttf":"Nazli\/Nazli-bold.ttf","eot":"Nazli\/Nazli-bold.eot","woff":"Nazli\/Nazli-bold.woff"},"Nokora Bold":{"version":"1.10","fontweight":"bold","eot":"Nokora\/Nokora-Regular.eot","woff":"Nokora\/Nokora-Regular.woff","ttf":"Nokora\/Nokora-Regular.ttf"},"Nokora Regular":{"version":"1.10","ttf":"Nokora\/Nokora-Regular.ttf","eot":"Nokora\/Nokora-Regular.eot","woff":"Nokora\/Nokora-Regular.woff","variants":{"bold":"Nokora Bold"}},"Nuosu SIL":{"version":"2.1.1","ttf":"NuosuSIL\/NuosuSIL.ttf","eot":"NuosuSIL\/NuosuSIL.eot","woff":"NuosuSIL\/NuosuSIL.woff"},"OpenDyslexic":{"version":"2.1.0+git060dc841","ttf":"OpenDyslexic\/OpenDyslexic-Regular.ttf","eot":"OpenDyslexic\/OpenDyslexic-Regular.eot","woff":"OpenDyslexic\/OpenDyslexic-Regular.woff","variants":{"bold":"OpenDyslexic Bold","bolditalic":"OpenDyslexic BoldItalic","italic":"OpenDyslexic Italic"}},"OpenDyslexic Bold":{"version":"2.1.0+git060dc841","fontweight":"bold","ttf":"OpenDyslexic\/OpenDyslexic-Bold.ttf","eot":"OpenDyslexic\/OpenDyslexic-Bold.eot","woff":"OpenDyslexic\/OpenDyslexic-Bold.woff"},"OpenDyslexic BoldItalic":{"version":"2.1.0+git060dc841","fontweight":"bold","fontstyle":"italic","ttf":"OpenDyslexic\/OpenDyslexic-BoldItalic.ttf","eot":"OpenDyslexic\/OpenDyslexic-BoldItalic.eot","woff":"OpenDyslexic\/OpenDyslexic-BoldItalic.woff"},"OpenDyslexic Italic":{"version":"2.1.0+git060dc841","fontstyle":"italic","ttf":"OpenDyslexic\/OpenDyslexic-Italic.ttf","eot":"OpenDyslexic\/OpenDyslexic-Italic.eot","woff":"OpenDyslexic\/OpenDyslexic-Italic.woff"},"OskiEast":{"version":"2.200","ttf":"OskiEast\/oskie.ttf","eot":"OskiEast\/oskie.eot","woff":"OskiEast\/oskie.woff","variants":{"bold":"OskiEast Bold","bolditalic":"OskiEast Bold Italic","italic":"OskiEast Italic"}},"OskiEast Bold":{"version":"2.200","fontweight":"bold","ttf":"OskiEast\/oskiebold.ttf","eot":"OskiEast\/oskiebold.eot","woff":"OskiEast\/oskiebold.woff"},"OskiEast Bold Italic":{"version":"2.200","fontweight":"bold","fontstyle":"italic","ttf":"OskiEast\/oskiebolditalic.ttf","eot":"OskiEast\/oskiebolditalic.eot","woff":"OskiEast\/oskiebolditalic.woff"},"OskiEast Italic":{"version":"2.200","fontstyle":"italic","ttf":"OskiEast\/oskieitalic.ttf","eot":"OskiEast\/oskieitalic.eot","woff":"OskiEast\/oskieitalic.woff"},"Padauk":{"version":"2.8","eot":"Padauk\/Padauk-Regular.eot","ttf":"Padauk\/Padauk-Regular.ttf","woff":"Padauk\/Padauk-Regular.woff"},"Pagul":{"version":"1.0","eot":"Pagul\/Pagul.eot","ttf":"Pagul\/Pagul.ttf","woff":"Pagul\/Pagul.woff"},"Pangururan":{"version":"1.0.5","ttf":"Pangururan\/Pangururan.ttf","eot":"Pangururan\/Pangururan.eot","woff":"Pangururan\/Pangururan.woff"},"Phetsarath":{"version":"1.01","ttf":"Phetsarath\/Phetsarath-Regular.ttf","eot":"Phetsarath\/Phetsarath-Regular.eot","woff":"Phetsarath\/Phetsarath-Regular.woff","variants":{"bold":"Phetsarath-Bold"}},"Phetsarath-Bold":{"version":"1.01","fontweight":"bold","ttf":"Phetsarath\/Phetsarath-Bold.ttf","eot":"Phetsarath\/Phetsarath-Bold.eot","woff":"Phetsarath\/Phetsarath-Bold.woff"},"RailwaySans":{"version":"2013-12-15","ttf":"RailwaySans\/RailwaySans.ttf","eot":"RailwaySans\/RailwaySans.eot","woff":"RailwaySans\/RailwaySans.woff"},"Saab":{"version":"0.91","eot":"Saab\/Saab.eot","ttf":"Saab\/Saab.ttf","woff":"Saab\/Saab.woff"},"Saweri":{"version":"2","eot":"saweri\/saweri.eot","ttf":"saweri\/saweri.ttf","woff":"saweri\/saweri.woff"},"Scheherazade":{"version":"2.010","ttf":"Scheherazade\/Scheherazade-R.ttf","eot":"Scheherazade\/Scheherazade-R.eot","woff":"Scheherazade\/Scheherazade-R.woff"},"SertoUrhoy":{"version":"1.20","eot":"SertoUrhoy\/SyrCOMUrhoy.eot","ttf":"SertoUrhoy\/SyrCOMUrhoy.ttf","woff":"SertoUrhoy\/SyrCOMUrhoy.woff"},"Shapour":{"version":"001.000","eot":"Shapour\/Shapour.eot","ttf":"Shapour\/Shapour.ttf","woff":"Shapour\/Shapour.woff"},"Siyam Rupali":{"version":"1.070","eot":"SiyamRupali\/SiyamRupali.eot","ttf":"SiyamRupali\/SiyamRupali.ttf","woff":"SiyamRupali\/SiyamRupali.woff"},"Skeirs II":{"version":"4.0","ttf":"Skeirs\/Skeirs II.ttf","eot":"Skeirs\/Skeirs II.eot","woff":"Skeirs\/Skeirs II.woff"},"Suwannaphum":{"version":"2.00","ttf":"Suwannaphum\/Suwannaphum.ttf","eot":"Suwannaphum\/Suwannaphum.eot","woff":"Suwannaphum\/Suwannaphum.woff"},"Taamey Frank CLM":{"version":"0.110","eot":"TaameyFrankCLM\/TaameyFrankCLM.eot","ttf":"TaameyFrankCLM\/TaameyFrankCLM.ttf","woff":"TaameyFrankCLM\/TaameyFrankCLM.woff"},"TharLon":{"version":"1.003","eot":"TharLon\/TharLon.eot","ttf":"TharLon\/TharLon.ttf","woff":"TharLon\/TharLon.woff"},"Thendral":{"version":"1.0","eot":"Thendral\/ThendralUni.eot","ttf":"Thendral\/ThendralUni.ttf","woff":"Thendral\/ThendralUni.woff"},"Thenee":{"version":"1.0","eot":"Thenee\/TheneeUni.eot","ttf":"Thenee\/TheneeUni.ttf","woff":"Thenee\/TheneeUni.woff"},"Tuladha Jejeg":{"version":"2.0.1","eot":"TuladhaJejeg\/TuladhaJejeg_gr.eot","ttf":"TuladhaJejeg\/TuladhaJejeg_gr.ttf","woff":"TuladhaJejeg\/TuladhaJejeg_gr.woff"},"UnifrakturMaguntia":{"version":"2014-07-06","ttf":"UnifrakturMaguntia\/UnifrakturMaguntia.ttf","eot":"UnifrakturMaguntia\/UnifrakturMaguntia.eot","woff":"UnifrakturMaguntia\/UnifrakturMaguntia.woff"},"Utkal":{"version":"0.13","eot":"utkal\/utkal.eot","ttf":"utkal\/utkal.ttf","woff":"utkal\/utkal.woff"},"lklug":{"version":"0.6","ttf":"lklug\/lklug.ttf","eot":"lklug\/lklug.eot","woff":"lklug\/lklug.woff"}}};
-}( jQuery ) );
+ $.webfonts.repository = {
+ "base": "../data/fontrepo/fonts/",
+ "languages": {
+ "adx": [
+ "Jomolhari"
+ ],
+ "af": [
+ "system",
+ "OpenDyslexic"
+ ],
+ "akk": [
+ "Akkadian"
+ ],
+ "am": [
+ "AbyssinicaSIL"
+ ],
+ "ang": [
+ "system",
+ "Junicode"
+ ],
+ "ar": [
+ "system",
+ "Amiri"
+ ],
+ "arb": [
+ "system",
+ "Amiri"
+ ],
+ "arc": [
+ "Estrangelo Edessa",
+ "East Syriac Adiabene",
+ "SertoUrhoy"
+ ],
+ "bbc": [
+ "system",
+ "Pangururan"
+ ],
+ "bk": [
+ "system",
+ "OpenDyslexic"
+ ],
+ "bn": [
+ "Siyam Rupali"
+ ],
+ "bo": [
+ "Jomolhari"
+ ],
+ "bod": [
+ "Jomolhari"
+ ],
+ "bpy": [
+ "Siyam Rupali"
+ ],
+ "btk": [
+ "system",
+ "Pangururan"
+ ],
+ "bug": [
+ "Saweri"
+ ],
+ "ca": [
+ "system",
+ "OpenDyslexic"
+ ],
+ "cdo": [
+ "system",
+ "CharisSIL"
+ ],
+ "ckb": [
+ "system",
+ "Lateef",
+ "Scheherazade",
+ "Amiri"
+ ],
+ "cr": [
+ "OskiEast"
+ ],
+ "cy": [
+ "system",
+ "ComicNeue",
+ "OpenDyslexic"
+ ],
+ "da": [
+ "system",
+ "OpenDyslexic"
+ ],
+ "de": [
+ "system",
+ "OpenDyslexic"
+ ],
+ "dre": [
+ "Jomolhari"
+ ],
+ "dv": [
+ "FreeFont-Thaana"
+ ],
+ "dz": [
+ "Jomolhari"
+ ],
+ "en": [
+ "system",
+ "ComicNeue",
+ "OpenDyslexic"
+ ],
+ "es": [
+ "system",
+ "OpenDyslexic"
+ ],
+ "et": [
+ "system",
+ "OpenDyslexic"
+ ],
+ "fa": [
+ "system",
+ "Iranian Sans",
+ "Iranian Serif",
+ "Lateef",
+ "Nazli",
+ "Scheherazade"
+ ],
+ "fi": [
+ "system",
+ "OpenDyslexic"
+ ],
+ "fo": [
+ "system",
+ "OpenDyslexic"
+ ],
+ "fr": [
+ "system",
+ "OpenDyslexic"
+ ],
+ "fy": [
+ "system",
+ "OpenDyslexic"
+ ],
+ "ga": [
+ "system",
+ "OpenDyslexic"
+ ],
+ "gd": [
+ "system",
+ "OpenDyslexic"
+ ],
+ "gez": [
+ "AbyssinicaSIL"
+ ],
+ "gl": [
+ "system",
+ "OpenDyslexic"
+ ],
+ "goe": [
+ "Jomolhari"
+ ],
+ "got": [
+ "system",
+ "Skeirs II"
+ ],
+ "grc": [
+ "system",
+ "GentiumPlus"
+ ],
+ "hbo": [
+ "Taamey Frank CLM",
+ "Alef"
+ ],
+ "he": [
+ "system",
+ "Alef",
+ "Miriam CLM",
+ "Taamey Frank CLM"
+ ],
+ "hu": [
+ "system",
+ "OpenDyslexic"
+ ],
+ "hut": [
+ "Jomolhari"
+ ],
+ "id": [
+ "system",
+ "ComicNeue",
+ "OpenDyslexic"
+ ],
+ "ii": [
+ "Nuosu SIL"
+ ],
+ "is": [
+ "system",
+ "OpenDyslexic"
+ ],
+ "it": [
+ "system",
+ "OpenDyslexic"
+ ],
+ "iu": [
+ "system",
+ "OskiEast"
+ ],
+ "jv": [
+ "system",
+ "Tuladha Jejeg"
+ ],
+ "jv-java": [
+ "Tuladha Jejeg"
+ ],
+ "kbg": [
+ "Jomolhari"
+ ],
+ "khg": [
+ "Jomolhari"
+ ],
+ "km": [
+ "KhmerOSbattambang",
+ "Hanuman",
+ "KhmerOS",
+ "Nokora Regular",
+ "Suwannaphum"
+ ],
+ "kte": [
+ "Jomolhari"
+ ],
+ "lb": [
+ "system",
+ "OpenDyslexic"
+ ],
+ "lbj": [
+ "Jomolhari"
+ ],
+ "lhm": [
+ "Jomolhari"
+ ],
+ "li": [
+ "system",
+ "OpenDyslexic"
+ ],
+ "lo": [
+ "Phetsarath"
+ ],
+ "loy": [
+ "Jomolhari"
+ ],
+ "luk": [
+ "Jomolhari"
+ ],
+ "lya": [
+ "Jomolhari"
+ ],
+ "mak": [
+ "Saweri"
+ ],
+ "mi": [
+ "system",
+ "OpenDyslexic"
+ ],
+ "ms": [
+ "system",
+ "ComicNeue",
+ "OpenDyslexic"
+ ],
+ "muk": [
+ "Jomolhari"
+ ],
+ "my": [
+ "TharLon",
+ "Myanmar3",
+ "Padauk"
+ ],
+ "nan": [
+ "system",
+ "CharisSIL",
+ "Doulos SIL"
+ ],
+ "nb": [
+ "system",
+ "OpenDyslexic"
+ ],
+ "nl": [
+ "system",
+ "ComicNeue",
+ "OpenDyslexic"
+ ],
+ "oc": [
+ "system",
+ "OpenDyslexic"
+ ],
+ "ola": [
+ "Jomolhari"
+ ],
+ "otb": [
+ "Jomolhari"
+ ],
+ "pal": [
+ "Shapour"
+ ],
+ "peo": [
+ "Artaxerxes"
+ ],
+ "pl": [
+ "system",
+ "OpenDyslexic"
+ ],
+ "pt": [
+ "system",
+ "OpenDyslexic"
+ ],
+ "saz": [
+ "Pagul"
+ ],
+ "si": [
+ "system",
+ "lklug"
+ ],
+ "sq": [
+ "system",
+ "OpenDyslexic"
+ ],
+ "su": [
+ "system",
+ "NotoSansSundanese Regular"
+ ],
+ "sux": [
+ "Akkadian"
+ ],
+ "sv": [
+ "system",
+ "OpenDyslexic"
+ ],
+ "sw": [
+ "system",
+ "ComicNeue",
+ "OpenDyslexic"
+ ],
+ "syc": [
+ "Estrangelo Edessa",
+ "East Syriac Adiabene",
+ "SertoUrhoy"
+ ],
+ "tcn": [
+ "Jomolhari"
+ ],
+ "thw": [
+ "Jomolhari"
+ ],
+ "ti": [
+ "AbyssinicaSIL"
+ ],
+ "tig": [
+ "AbyssinicaSIL"
+ ],
+ "tl": [
+ "system",
+ "ComicNeue",
+ "OpenDyslexic"
+ ],
+ "tr": [
+ "system",
+ "OpenDyslexic"
+ ],
+ "tsk": [
+ "Jomolhari"
+ ],
+ "ur": [
+ "system",
+ "Hussaini Nastaleeq",
+ "NafeesWeb"
+ ],
+ "wa": [
+ "system",
+ "OpenDyslexic"
+ ],
+ "xct": [
+ "Jomolhari"
+ ],
+ "yi": [
+ "system",
+ "Alef"
+ ],
+ "zau": [
+ "Jomolhari"
+ ]
+ },
+ "fonts": {
+ "AbyssinicaSIL": {
+ "woff": "AbyssinicaSIL/AbyssinicaSIL-R.woff?893c7",
+ "woff2": "AbyssinicaSIL/AbyssinicaSIL-R.woff2?361f7"
+ },
+ "Akkadian": {
+ "woff": "Akkadian/Akkadian.woff?fc09d",
+ "woff2": "Akkadian/Akkadian.woff2?1e0a3"
+ },
+ "Alef": {
+ "woff": "Alef/Alef-Regular.woff?2b430",
+ "woff2": "Alef/Alef-Regular.woff2?a2499",
+ "variants": {
+ "bold": "Alef Bold"
+ }
+ },
+ "Alef Bold": {
+ "fontweight": "bold",
+ "woff": "Alef/Alef-Bold.woff?bd85f",
+ "woff2": "Alef/Alef-Bold.woff2?7c873"
+ },
+ "Amiri": {
+ "woff": "amiri/amiri-regular.woff?e8973",
+ "woff2": "amiri/amiri-regular.woff2?1f55e",
+ "variants": {
+ "bold": "Amiri Bold",
+ "bolditalic": "Amiri Bold Italic",
+ "italic": "Amiri Italic"
+ }
+ },
+ "Amiri Bold": {
+ "fontweight": "bold",
+ "woff": "amiri/amiri-bold.woff?63eb0",
+ "woff2": "amiri/amiri-bold.woff2?a0e74"
+ },
+ "Amiri Bold Italic": {
+ "fontweight": "bold",
+ "fontstyle": "italic",
+ "woff": "amiri/amiri-boldslanted.woff?44410",
+ "woff2": "amiri/amiri-boldslanted.woff2?b0128"
+ },
+ "Amiri Italic": {
+ "fontstyle": "italic",
+ "woff": "amiri/amiri-slanted.woff?7d658",
+ "woff2": "amiri/amiri-slanted.woff2?a90a0"
+ },
+ "Artaxerxes": {
+ "woff": "Artaxerxes/Artaxerxes.woff?c1ed7",
+ "woff2": "Artaxerxes/Artaxerxes.woff2?7a96e"
+ },
+ "CharisSIL": {
+ "woff": "CharisSIL/CharisSIL-R.woff?3a622",
+ "woff2": "CharisSIL/CharisSIL-R.woff2?b2a18"
+ },
+ "ComicNeue": {
+ "woff": "ComicNeue/ComicNeue-Regular.woff?ff5e6",
+ "woff2": "ComicNeue/ComicNeue-Regular.woff2?44c5e",
+ "variants": {
+ "bold": "ComicNeue Bold",
+ "italic": "ComicNeue Oblique"
+ }
+ },
+ "ComicNeue Bold": {
+ "fontweight": "bold",
+ "woff": "ComicNeue/ComicNeue-Bold.woff?cc2d9",
+ "woff2": "ComicNeue/ComicNeue-Bold.woff2?c1376"
+ },
+ "ComicNeue Oblique": {
+ "fontstyle": "italic",
+ "woff": "ComicNeue/ComicNeue-Regular-Oblique.woff?45c14",
+ "woff2": "ComicNeue/ComicNeue-Regular-Oblique.woff2?4ddaf"
+ },
+ "Doulos SIL": {
+ "woff": "DoulosSIL/DoulosSIL-R.woff?f76f6",
+ "woff2": "DoulosSIL/DoulosSIL-R.woff2?61737"
+ },
+ "East Syriac Adiabene": {
+ "woff": "EastSyriacAdiabene/SyrCOMAdiabene.woff?cfbf0",
+ "woff2": "EastSyriacAdiabene/SyrCOMAdiabene.woff2?9ff2e"
+ },
+ "Estrangelo Edessa": {
+ "woff": "EstrangeloEdessa/SyrCOMEdessa.woff?c4484",
+ "woff2": "EstrangeloEdessa/SyrCOMEdessa.woff2?3e525"
+ },
+ "FreeFont-Thaana": {
+ "woff": "FreeFontThana/FreeFont-Thaana.woff?0f06e",
+ "woff2": "FreeFontThana/FreeFont-Thaana.woff2?ad021",
+ "variants": {
+ "bold": "FreeFont-Thaana Bold"
+ }
+ },
+ "FreeFont-Thaana Bold": {
+ "fontweight": "bold",
+ "woff": "FreeFontThana/FreeFont-Thaana-Bold.woff?5eb85",
+ "woff2": "FreeFontThana/FreeFont-Thaana-Bold.woff2?eaf55"
+ },
+ "GentiumPlus": {
+ "woff": "GentiumPlus/GentiumPlus-R.woff?1abc3",
+ "woff2": "GentiumPlus/GentiumPlus-R.woff2?aa576",
+ "variants": {
+ "italic": "GentiumPlus Italic"
+ }
+ },
+ "GentiumPlus Italic": {
+ "fontstyle": "italic",
+ "woff": "GentiumPlus/GentiumPlus-I.woff?ab550",
+ "woff2": "GentiumPlus/GentiumPlus-I.woff2?35b11"
+ },
+ "Hanuman": {
+ "woff": "Hanuman/Hanuman.woff?d5078",
+ "woff2": "Hanuman/Hanuman.woff2?0107a",
+ "variants": {
+ "bold": "Hanuman Bold"
+ }
+ },
+ "Hanuman Bold": {
+ "fontweight": "bold",
+ "woff": "Hanuman/Hanumanb.woff?27aeb",
+ "woff2": "Hanuman/Hanumanb.woff2?1b52d"
+ },
+ "Hussaini Nastaleeq": {
+ "woff": "HussainiNastaleeq/hussaini-nastaleeq.woff?5c44b",
+ "woff2": "HussainiNastaleeq/hussaini-nastaleeq.woff2?2b174"
+ },
+ "Iranian Sans": {
+ "woff": "IranianSans/irsans.woff?ec963",
+ "woff2": "IranianSans/irsans.woff2?17429",
+ "variants": {
+ "bold": "Iranian Sans Bold"
+ }
+ },
+ "Iranian Sans Bold": {
+ "fontweight": "bold",
+ "woff": "IranianSans/irsansb.woff?cf164",
+ "woff2": "IranianSans/irsansb.woff2?d24da"
+ },
+ "Iranian Serif": {
+ "woff": "IranianSerif/irseri.woff?d153b",
+ "woff2": "IranianSerif/irseri.woff2?2e4dd"
+ },
+ "Jomolhari": {
+ "woff": "Jomolhari/Jomolhari.woff?3a60b",
+ "woff2": "Jomolhari/Jomolhari.woff2?f448a"
+ },
+ "Junicode": {
+ "woff": "Junicode/Junicode.woff?dc7ef",
+ "woff2": "Junicode/Junicode.woff2?7e6d6",
+ "variants": {
+ "bold": "Junicode Bold",
+ "bolditalic": "Junicode Bold Italic",
+ "italic": "Junicode Italic"
+ }
+ },
+ "Junicode Bold": {
+ "fontweight": "bold",
+ "woff": "Junicode/Junicode-Bold.woff?f7ef4",
+ "woff2": "Junicode/Junicode-Bold.woff2?d5d04"
+ },
+ "Junicode Bold Italic": {
+ "fontweight": "bold",
+ "fontstyle": "italic",
+ "woff": "Junicode/Junicode-BoldItalic.woff?3cec9",
+ "woff2": "Junicode/Junicode-BoldItalic.woff2?80351"
+ },
+ "Junicode Italic": {
+ "fontstyle": "italic",
+ "woff": "Junicode/Junicode-Italic.woff?c458b",
+ "woff2": "Junicode/Junicode-Italic.woff2?3fe39"
+ },
+ "KhmerOS": {
+ "woff": "KhmerOS/KhmerOS.woff?2ef9e",
+ "woff2": "KhmerOS/KhmerOS.woff2?34973"
+ },
+ "KhmerOSbattambang": {
+ "woff": "KhmerOSbattambang/KhmerOSbattambang.woff?69379",
+ "woff2": "KhmerOSbattambang/KhmerOSbattambang.woff2?da936"
+ },
+ "Lateef": {
+ "woff": "Lateef/LateefRegOT.woff?05c72",
+ "woff2": "Lateef/LateefRegOT.woff2?3ce56"
+ },
+ "Linux Libertine": {
+ "woff": "LinuxLibertine/LinLibertine_Rah.woff?c0828",
+ "woff2": "LinuxLibertine/LinLibertine_Rah.woff2?4d59a",
+ "variants": {
+ "bold": "Linux Libertine Bold",
+ "bolditalic": "Linux Libertine Bold Italic",
+ "italic": "Linux Libertine Italic"
+ }
+ },
+ "Linux Libertine Bold": {
+ "fontweight": "bold",
+ "woff": "LinuxLibertine/LinLibertine_RBah.woff?50e30",
+ "woff2": "LinuxLibertine/LinLibertine_RBah.woff2?fbcf2"
+ },
+ "Linux Libertine Bold Italic": {
+ "fontweight": "bold",
+ "fontstyle": "italic",
+ "woff": "LinuxLibertine/LinLibertine_RBIah.woff?8a853",
+ "woff2": "LinuxLibertine/LinLibertine_RBIah.woff2?e02db"
+ },
+ "Linux Libertine Italic": {
+ "fontstyle": "italic",
+ "woff": "LinuxLibertine/LinLibertine_RIah.woff?1c058",
+ "woff2": "LinuxLibertine/LinLibertine_RIah.woff2?4e887"
+ },
+ "Miriam CLM": {
+ "woff": "MiriamCLM/MiriamCLM-Book.woff?28216",
+ "woff2": "MiriamCLM/MiriamCLM-Book.woff2?f3942"
+ },
+ "Myanmar3": {
+ "woff": "Myanmar3/Myanmar3.woff?60817",
+ "woff2": "Myanmar3/Myanmar3.woff2?2b586"
+ },
+ "NafeesWeb": {
+ "woff": "NafeesWeb/NafeesWeb.woff?809c8",
+ "woff2": "NafeesWeb/NafeesWeb.woff2?5f501"
+ },
+ "Nazli": {
+ "woff": "Nazli/Nazli.woff?6eb79",
+ "woff2": "Nazli/Nazli.woff2?d54a3",
+ "variants": {
+ "bold": "Nazli Bold"
+ }
+ },
+ "Nazli Bold": {
+ "fontweight": "bold",
+ "woff": "Nazli/Nazli-bold.woff?ae0c3",
+ "woff2": "Nazli/Nazli-bold.woff2?8d27e"
+ },
+ "Nokora Bold": {
+ "fontweight": "bold",
+ "woff": "Nokora/Nokora-Bold.woff?cf0df",
+ "woff2": "Nokora/Nokora-Bold.woff2?b50d8"
+ },
+ "Nokora Regular": {
+ "woff": "Nokora/Nokora-Regular.woff?36345",
+ "woff2": "Nokora/Nokora-Regular.woff2?66157",
+ "variants": {
+ "bold": "Nokora Bold"
+ }
+ },
+ "NotoSansSundanese Regular": {
+ "woff": "NotoSansSundanese/NotoSansSundanese-Regular.woff?a8907",
+ "woff2": "NotoSansSundanese/NotoSansSundanese-Regular.woff2?97973"
+ },
+ "Nuosu SIL": {
+ "woff": "NuosuSIL/NuosuSIL.woff?89513",
+ "woff2": "NuosuSIL/NuosuSIL.woff2?223bb"
+ },
+ "OpenDyslexic": {
+ "woff": "OpenDyslexic/OpenDyslexic-Regular.woff?7a21f",
+ "woff2": "OpenDyslexic/OpenDyslexic-Regular.woff2?104a3",
+ "variants": {
+ "bold": "OpenDyslexic Bold",
+ "bolditalic": "OpenDyslexic BoldItalic",
+ "italic": "OpenDyslexic Italic"
+ }
+ },
+ "OpenDyslexic Bold": {
+ "fontweight": "bold",
+ "woff": "OpenDyslexic/OpenDyslexic-Bold.woff?75b90",
+ "woff2": "OpenDyslexic/OpenDyslexic-Bold.woff2?42307"
+ },
+ "OpenDyslexic BoldItalic": {
+ "fontweight": "bold",
+ "fontstyle": "italic",
+ "woff": "OpenDyslexic/OpenDyslexic-BoldItalic.woff?570d3",
+ "woff2": "OpenDyslexic/OpenDyslexic-BoldItalic.woff2?12f7e"
+ },
+ "OpenDyslexic Italic": {
+ "fontstyle": "italic",
+ "woff": "OpenDyslexic/OpenDyslexic-Italic.woff?9fa06",
+ "woff2": "OpenDyslexic/OpenDyslexic-Italic.woff2?14d96"
+ },
+ "OskiEast": {
+ "woff": "OskiEast/oskie.woff?10d59",
+ "woff2": "OskiEast/oskie.woff2?a87bf",
+ "variants": {
+ "bold": "OskiEast Bold",
+ "bolditalic": "OskiEast Bold Italic",
+ "italic": "OskiEast Italic"
+ }
+ },
+ "OskiEast Bold": {
+ "fontweight": "bold",
+ "woff": "OskiEast/oskiebold.woff?d6ae5",
+ "woff2": "OskiEast/oskiebold.woff2?30d18"
+ },
+ "OskiEast Bold Italic": {
+ "fontweight": "bold",
+ "fontstyle": "italic",
+ "woff": "OskiEast/oskiebolditalic.woff?fcee2",
+ "woff2": "OskiEast/oskiebolditalic.woff2?ae266"
+ },
+ "OskiEast Italic": {
+ "fontstyle": "italic",
+ "woff": "OskiEast/oskieitalic.woff?ecb14",
+ "woff2": "OskiEast/oskieitalic.woff2?2745f"
+ },
+ "Padauk": {
+ "woff": "Padauk/Padauk-Regular.woff?544be",
+ "woff2": "Padauk/Padauk-Regular.woff2?97419"
+ },
+ "Pagul": {
+ "woff": "Pagul/Pagul.woff?4d3bf",
+ "woff2": "Pagul/Pagul.woff2?2d88b"
+ },
+ "Pangururan": {
+ "woff": "Pangururan/Pangururan.woff?b079d",
+ "woff2": "Pangururan/Pangururan.woff2?5fecd"
+ },
+ "Phetsarath": {
+ "woff": "Phetsarath/Phetsarath-Regular.woff?dee5c",
+ "woff2": "Phetsarath/Phetsarath-Regular.woff2?b9d92",
+ "variants": {
+ "bold": "Phetsarath-Bold"
+ }
+ },
+ "Phetsarath-Bold": {
+ "fontweight": "bold",
+ "woff": "Phetsarath/Phetsarath-Bold.woff?8c43d",
+ "woff2": "Phetsarath/Phetsarath-Bold.woff2?2d5a1"
+ },
+ "RailwaySans": {
+ "woff": "RailwaySans/RailwaySans.woff?fda9a",
+ "woff2": "RailwaySans/RailwaySans.woff2?a6c17"
+ },
+ "Saweri": {
+ "woff": "saweri/saweri.woff?fe688",
+ "woff2": "saweri/saweri.woff2?fe482"
+ },
+ "Scheherazade": {
+ "woff": "Scheherazade/Scheherazade-R.woff?286b2",
+ "woff2": "Scheherazade/Scheherazade-R.woff2?b340b"
+ },
+ "SertoUrhoy": {
+ "woff": "SertoUrhoy/SyrCOMUrhoy.woff?82242",
+ "woff2": "SertoUrhoy/SyrCOMUrhoy.woff2?845a8"
+ },
+ "Shapour": {
+ "woff": "Shapour/Shapour.woff?ad380",
+ "woff2": "Shapour/Shapour.woff2?977a2"
+ },
+ "Siyam Rupali": {
+ "woff": "SiyamRupali/SiyamRupali.woff?5d2db",
+ "woff2": "SiyamRupali/SiyamRupali.woff2?035b8"
+ },
+ "Skeirs II": {
+ "woff": "Skeirs/Skeirs-II.woff?a5fc3",
+ "woff2": "Skeirs/Skeirs-II.woff2?7d27b"
+ },
+ "Suwannaphum": {
+ "woff": "Suwannaphum/Suwannaphum.woff?d5f25",
+ "woff2": "Suwannaphum/Suwannaphum.woff2?d3394"
+ },
+ "Taamey Frank CLM": {
+ "woff": "TaameyFrankCLM/TaameyFrankCLM.woff?73757",
+ "woff2": "TaameyFrankCLM/TaameyFrankCLM.woff2?23293"
+ },
+ "TharLon": {
+ "woff": "TharLon/TharLon.woff?0df3e",
+ "woff2": "TharLon/TharLon.woff2?9012f"
+ },
+ "Tuladha Jejeg": {
+ "woff": "TuladhaJejeg/TuladhaJejeg_gr.woff?7ebe2",
+ "woff2": "TuladhaJejeg/TuladhaJejeg_gr.woff2?8d13d"
+ },
+ "UnifrakturMaguntia": {
+ "woff": "UnifrakturMaguntia/UnifrakturMaguntia.woff?6ad8f",
+ "woff2": "UnifrakturMaguntia/UnifrakturMaguntia.woff2?23272"
+ },
+ "lklug": {
+ "woff": "lklug/lklug.woff?57de7",
+ "woff2": "lklug/lklug.woff2?7d2c4"
+ }
+ }
+};
+}() );
diff --git a/MLEB/UniversalLanguageSelector/scripts/update-jquery-i18n.sh b/MLEB/UniversalLanguageSelector/scripts/update-jquery-i18n.sh
deleted file mode 100755
index 537164be..00000000
--- a/MLEB/UniversalLanguageSelector/scripts/update-jquery-i18n.sh
+++ /dev/null
@@ -1,17 +0,0 @@
-#!/bin/bash
-
-DEST="../lib/jquery.i18n";
-CLONEDIR="/tmp/jquery.i18n";
-HERE=$(pwd);
-UPSTREAM="https://github.com/wikimedia/jquery.i18n.git";
-
-echo -e "Getting latest jquery.i18n from $UPSTREAM\n";
-
-if [ -d $CLONEDIR ]; then
- git pull;
-else
- git clone $UPSTREAM $CLONEDIR;
-fi
-
-cd "$HERE";
-cp -rf $CLONEDIR/src/* $DEST
diff --git a/MLEB/UniversalLanguageSelector/scripts/update-jquery-ime.sh b/MLEB/UniversalLanguageSelector/scripts/update-jquery-ime.sh
index bb5e8b2e..fec9c602 100755
--- a/MLEB/UniversalLanguageSelector/scripts/update-jquery-ime.sh
+++ b/MLEB/UniversalLanguageSelector/scripts/update-jquery-ime.sh
@@ -1,20 +1,27 @@
#!/bin/bash
-DEST="../lib/jquery.ime";
-CLONEDIR="/tmp/jquery.ime";
-HERE=$(pwd);
-UPSTREAM="https://github.com/wikimedia/jquery.ime.git";
+BASEDIR=$(dirname "$0")
+BASEDIR="$BASEDIR/.."
-echo -e "Getting latest jquery.ime from $UPSTREAM\n";
+DEST="$BASEDIR/lib/jquery.ime"
+CLONEDIR="$BASEDIR/vendor/jquery.ime"
-if [ -d $CLONEDIR ]; then
- git pull;
+UPSTREAM="https://github.com/wikimedia/jquery.ime.git"
+
+echo "Getting latest jquery.ime from $UPSTREAM"
+
+if [ -d "$CLONEDIR" ]; then
+ pushd "$CLONEDIR"
+ git pull
+ popd
else
- git clone $UPSTREAM $CLONEDIR;
+ git clone "$UPSTREAM" "$CLONEDIR"
fi
-cd $CLONEDIR;
-npm install;
-grunt copy concat;
-cd "$HERE";
-cp -rf $CLONEDIR/dist/jquery.ime/{images,css,rules,jquery.ime.js} $DEST;
+pushd "$CLONEDIR"
+npm install
+./node_modules/.bin/grunt copy concat
+popd
+
+rm -rf "$DEST"/*
+cp -R "$CLONEDIR"/dist/jquery.ime/{images,css,rules,jquery.ime.js} "$CLONEDIR"/*LICENSE "$DEST"
diff --git a/MLEB/UniversalLanguageSelector/scripts/update-jquery-uls.sh b/MLEB/UniversalLanguageSelector/scripts/update-jquery-uls.sh
index 8797d669..06dcf855 100755
--- a/MLEB/UniversalLanguageSelector/scripts/update-jquery-uls.sh
+++ b/MLEB/UniversalLanguageSelector/scripts/update-jquery-uls.sh
@@ -1,17 +1,22 @@
#!/bin/bash
-DEST="../lib/jquery.uls";
-CLONEDIR="/tmp/jquery.uls";
-HERE=$(pwd);
-UPSTREAM="https://github.com/wikimedia/jquery.uls.git";
+BASEDIR=$(dirname "$0")
+BASEDIR="$BASEDIR/.."
-echo -e "Getting latest jquery.uls from $UPSTREAM\n";
+DEST="$BASEDIR/lib/jquery.uls"
+CLONEDIR="$BASEDIR/vendor/jquery.uls"
-if [ -d $CLONEDIR ]; then
- git pull;
+UPSTREAM="https://github.com/wikimedia/jquery.uls.git"
+
+echo "Getting latest jquery.uls from $UPSTREAM"
+
+if [ -d "$CLONEDIR" ]; then
+ pushd "$CLONEDIR"
+ git pull
+ popd
else
- git clone $UPSTREAM $CLONEDIR;
+ git clone "$UPSTREAM" "$CLONEDIR"
fi
-cd "$HERE";
-cp -rf $CLONEDIR/{images,css,src,i18n} $DEST
+rm -rf "$DEST"/*
+cp -R "$CLONEDIR"/{images,css,src,i18n,*LICENSE,CREDITS} "$DEST"
diff --git a/MLEB/UniversalLanguageSelector/scripts/update-jquery-webfonts.sh b/MLEB/UniversalLanguageSelector/scripts/update-jquery-webfonts.sh
index f2ff8115..39b8c232 100755
--- a/MLEB/UniversalLanguageSelector/scripts/update-jquery-webfonts.sh
+++ b/MLEB/UniversalLanguageSelector/scripts/update-jquery-webfonts.sh
@@ -1,17 +1,22 @@
#!/bin/bash
-DEST="../lib/";
-CLONEDIR="/tmp/jquery.webfonts";
-HERE=$(pwd);
-UPSTREAM="https://github.com/wikimedia/jquery.webfonts.git";
+BASEDIR=$(dirname "$0")
+BASEDIR="$BASEDIR/.."
-echo -e "Getting latest jquery.webfonts from $UPSTREAM\n";
+DEST="$BASEDIR/lib/jquery.webfonts"
+CLONEDIR="$BASEDIR/vendor/jquery.wefonts"
-if [ -d $CLONEDIR ]; then
- git pull;
+UPSTREAM="https://github.com/wikimedia/jquery.webfonts.git"
+
+echo "Getting latest jquery.wefonts from $UPSTREAM"
+
+if [ -d "$CLONEDIR" ]; then
+ pushd "$CLONEDIR"
+ git pull
+ popd
else
- git clone $UPSTREAM $CLONEDIR;
+ git clone "$UPSTREAM" "$CLONEDIR"
fi
-cd "$HERE";
-cp -rf $CLONEDIR/src/* $DEST
+rm -rf "$DEST/jquery.webfonts.js"
+cp -R "$CLONEDIR"/{src,*LICENSE} "$DEST"
diff --git a/MLEB/UniversalLanguageSelector/tests/autonym.html b/MLEB/UniversalLanguageSelector/tests/autonym.html
deleted file mode 100644
index 48626b77..00000000
--- a/MLEB/UniversalLanguageSelector/tests/autonym.html
+++ /dev/null
@@ -1,117 +0,0 @@
-<!DOCTYPE html>
-<html lang="en">
-<head>
-<meta charset="utf-8" />
-<title>Autonym font Example</title>
-<meta name="description" content="A test page for the Autonym font" />
-<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js"></script>
-<script src="../lib/jquery.uls/src/jquery.uls.data.js"></script>
-<script src="../lib/jquery.uls/src/jquery.uls.data.utils.js"></script>
-<style>
-@font-face {
- font-family: 'Autonym';
- src: url('../data/fontrepo/fonts/Autonym/Autonym.eot');
- src: local('Autonym'),
- url('../data/fontrepo/fonts/Autonym/Autonym.woff') format('woff'),
- url('../data/fontrepo/fonts/Autonym/Autonym.ttf') format('truetype');
- font-style: normal;
-}
-
-table, th, td {
- border: 1px solid #ddd;
- border-collapse:collapse;
- padding: 5px;
-}
-
-td.lang,
-td.index {
- background-color: #ccc;
-}
-</style>
-</head>
-<body>
-<h1>Autonym Font</h1>
-<p>The following table in this page uses the <a href="https://github.com/santhoshtr/AutonymFont">Autonym</a>
- font for displaying language names without font issues.</p>
-<p>Version: 20131118</p>
-<hr/>
-<div>
-<label for="font-selector">Select a font:</label>
-<select id="font-selector">
- <option value="Autonym">Autonym</option>
- <option value="sans-serif">sans-serif</option>
- <option value="Autonym, sans-serif">Autonym, sans-serif</option>
- <option value="sans-serif, Autonym">sans-serif, Autonym</option>
- <option value="Verdana, Arial, Helvetica, Autonym, sans-serif">Verdana, Arial, Helvetica, Autonym, sans-serif</option>
-</select>
-<select id="size-selector">
- <option value="8">Select size (px)</option>
- <option value="8">8</option>
- <option value="9">9</option>
- <option value="10">10</option>
- <option value="11">11</option>
- <option value="12">12</option>
- <option value="13">13</option>
- <option value="14">14</option>
- <option value="16">16</option>
- <option value="20">20</option>
- <option value="24">24</option>
- <option value="30">30</option>
- <option value="36">36</option>
- <option value="48">48</option>
-</select>
-<table><tr></tr></table>
-<div>A dropdown example:
-<select class="dropdown autonym">
-</select>
-</div>
-<script>
-var index = 1,
- $fontSelector = $( '#font-selector' ),
- $sizeSelector = $( '#size-selector' );
-
-$fontSelector.change( function () {
- $( '.autonym' ).css( 'font-family', $( this ).val() );
-});
-
-$sizeSelector.change( function () {
- $( '.autonym' ).css( 'font-size', $( this ).val() + 'px' );
-});
-
-$.each( $.uls.data.languages, function( langCode ) {
- var autonym = $.uls.data.getAutonym( langCode ),
- dir = $.uls.data.getDir( langCode );
-
- $( '.dropdown' ).append(
- $( '<option>')
- .attr( {
- lang: langCode,
- dir: dir
- } )
- .text( autonym )
- );
-
- $( 'table' ).append(
- $( '<tr>' ).append(
- $( '<td>' )
- .addClass( 'index' )
- .text( index++ ),
- $( '<td>' )
- .addClass( 'lang' )
- .text( langCode ),
- $( '<td>' )
- .addClass( 'name autonym' )
- .attr( {
- lang: langCode,
- dir: dir
- } )
- .text( autonym )
- )
- );
-} );
-
-// Apply the initial font
-$( '.autonym' ).css( 'font-family', $fontSelector.val() );
-</script>
-</div>
-</body>
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/README.md b/MLEB/UniversalLanguageSelector/tests/browser/README.md
deleted file mode 100644
index 36319498..00000000
--- a/MLEB/UniversalLanguageSelector/tests/browser/README.md
+++ /dev/null
@@ -1 +0,0 @@
-Please see https://github.com/wikimedia/mediawiki-selenium for instructions on how to run tests.
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/accept_language.feature b/MLEB/UniversalLanguageSelector/tests/browser/features/accept_language.feature
deleted file mode 100644
index 4290803f..00000000
--- a/MLEB/UniversalLanguageSelector/tests/browser/features/accept_language.feature
+++ /dev/null
@@ -1,14 +0,0 @@
-@custom-browser @firefox @internet_explorer_10 @phantomjs @sandbox.translatewiki.net
-Feature: Accept-Language
-
- Scenario Outline: Accept-Language
- Given that my browser's accept language is <language>
- When I am at the preferences page
- Then link to the main page has text <text>
-
- Examples:
- | language | text |
- | de | Hauptseite |
- | sr | Главна страна |
- | sr-ec | Главна страна |
- | sr-el | Glavna strana |
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/autonym.feature b/MLEB/UniversalLanguageSelector/tests/browser/features/autonym.feature
deleted file mode 100644
index be37933b..00000000
--- a/MLEB/UniversalLanguageSelector/tests/browser/features/autonym.feature
+++ /dev/null
@@ -1,39 +0,0 @@
-@firefox @internet_explorer_10 @phantomjs
-Feature: Autonym font
-
- * With tofu detection in ULS, system fonts will be given preference over webfonts.
- * Reference: https://upload.wikimedia.org/wikipedia/commons/7/7d/ULS-WebFonts-Workflow-Diagram.png
-
- @login
- Scenario: Autonym font is used in the ULS language search dialog for display language selection by logged-in users
- Given I am logged in
- And I open the Universal Language Selector
- And I open Display panel of language settings
- When I click the button with the ellipsis
- Then the language list of ULS should use Autonym font
-
- @login
- Scenario: Autonym font is used in the ULS language search dialog for input language selection by logged-in users
- Given I am logged in
- And I open the Universal Language Selector
- And I switch to Input panel of language settings
- When I click the button with the ellipsis
- Then the language list of ULS should use Autonym font
-
- Scenario: Autonym font should be used in the Interlanguage area of a page only with Interlanguage links
- When I am on the main page
- Then the Interlanguage links should use Autonym font
- And elements that are not Interlanguage links should not use Autonym font
-
- Scenario: Autonym font is used in the ULS language search dialog for input language selection by anonymous users
- Given I am at the main page
- And I open the Universal Language Selector
- And I open Input side panel of language settings
- When I click the button with the ellipsis
- Then the language list of ULS should use Autonym font
-
- #Autonym is blacklisted in Interlanguage area at moment, and may whitelist in future.
- Scenario: Autonym font should be used in the Interlanguage area of a page only with Interlanguage links
- When I am on the main page
- Then the Interlanguage links should use Autonym font
- And elements that are not Interlanguage links should not use Autonym font
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/font_selection_default_disabled.feature b/MLEB/UniversalLanguageSelector/tests/browser/features/font_selection_default_disabled.feature
deleted file mode 100644
index d7124c09..00000000
--- a/MLEB/UniversalLanguageSelector/tests/browser/features/font_selection_default_disabled.feature
+++ /dev/null
@@ -1,98 +0,0 @@
-@firefox @internet_explorer_10 @login @phantomjs
-Feature: Font selection default disabled
-
- In order to have better using experience,
- As a reader and writer,
- I want to change or disable the fonts for interface and content.
-
- In addition the user is provided live preview feature: changes are applied
- immediately when selection is made. Changes can either be applied or discarded
- for easy testing.
-
- This feature is similar to font_selection_default_enabled,
- but it is targeted at wikis where automatic font downloading
- is disabled by default ($wgULSWebfontsEnabled = false).
-
- Background:
- Given I am logged in
- And I have reset my preferences
- And I set "German" as the interface language
- And I open ULS
- And I open Display panel of language settings
- When I open Fonts panel of language settings
-
- Scenario: Font selector pane appears
- Then a font selector for interface language doesn't appear
- And a font selector for content language doesn't appear
- And the checkbox to enable fonts downloading appears
- And the checkbox to enable fonts downloading is not checked
- And webfonts are not applied to body
-
- Scenario: Enabling fonts downloading with live preview
- When I click the checkbox to enable fonts downloading
- Then a font selector for interface language appears
- And a font selector for content language appears
- And the checkbox to enable fonts downloading appears
- And the checkbox to enable fonts downloading is checked
- And the selected content font must be system
- And webfonts are applied to body
-
- @commons.wikimedia.beta.wmflabs.org
- Scenario: Enabling fonts downloading without saving the preferences
- When I click the checkbox to enable fonts downloading
- And I select OpenDyslexic font for the content language for the live preview
- And I close the panel to discard the changes
- And I open Display panel of language settings
- Then a font selector for interface language doesn't appear
- And a font selector for content language doesn't appear
- And the active interface font must be the same as font prior to the preview
- And the active content font must be the same as font prior to the preview
-
- @commons.wikimedia.beta.wmflabs.org
- Scenario: Enabling fonts downloading and saving the preferences
- When I click the checkbox to enable fonts downloading
- And I select OpenDyslexic font for the interface language for the live preview
- And I apply the changes
- Then webfonts are applied to body
- And the interface font is OpenDyslexic
-
- @commons.wikimedia.beta.wmflabs.org
- Scenario: Enabling fonts downloading and going to another page
- When I click the checkbox to enable fonts downloading
- And I select OpenDyslexic font for the content language for the live preview
- And I apply the changes
- And I am on the main page
- Then webfonts are applied to body
- And the content font is OpenDyslexic
-
- @commons.wikimedia.beta.wmflabs.org
- Scenario: Enabling fonts downloading and then disabling them
- When I click the checkbox to enable fonts downloading
- And I select OpenDyslexic font for the interface language for the live preview
- And I apply the changes
- And I am on the main page
- And I open ULS
- And I open Display panel of language settings
- And I open Fonts panel of language settings
- And I click the checkbox to disable fonts downloading
- Then a font selector for interface language doesn't appear
- And a font selector for content language doesn't appear
-
- @commons.wikimedia.beta.wmflabs.org
- Scenario: Enabling fonts downloading and then disabling them and saving the preferences
- When I click the checkbox to enable fonts downloading
- And I select OpenDyslexic font for the interface language for the live preview
- And I apply the changes
- And I am on the main page
- And I open ULS
- And I open Display panel of language settings
- And I open Fonts panel of language settings
- And I click the checkbox to disable fonts downloading
- And I apply the changes
- And I am on the main page
- And I open ULS
- And I open Display panel of language settings
- Then a font selector for interface language doesn't appear
- And a font selector for content language doesn't appear
- And the checkbox to enable fonts downloading is not checked
- And webfonts are not applied to body
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/font_selection_default_enabled.feature b/MLEB/UniversalLanguageSelector/tests/browser/features/font_selection_default_enabled.feature
deleted file mode 100644
index 89007db1..00000000
--- a/MLEB/UniversalLanguageSelector/tests/browser/features/font_selection_default_enabled.feature
+++ /dev/null
@@ -1,78 +0,0 @@
-@firefox @internet_explorer_10 @language-browsertests.wmflabs.org @login @phantomjs
-Feature: Font selection default enabled
-
- In order to have better using experience,
- As a reader and writer,
- I want to change or disable the fonts for interface and content.
-
- In addition the user is provided live preview feature: changes are applied
- immediately when selection is made. Changes can either be applied or discarded
- for easy testing.
-
- This feature is similar to font_selection_default_disabled,
- but it is targeted at wikis where automatic font downloading
- is enabled by default ($wgULSWebfontsEnabled = true).
-
- Background:
- Given I am logged in
- And I have reset my preferences
- And I set "German" as the interface language
- And I open ULS
- And I open Display panel of language settings
- When I open Fonts panel of language settings
-
- Scenario: Font selector pane appears
- Then a font selector for interface language appears
- And a font selector for content language appears
- And the checkbox to enable fonts downloading appears
- And the checkbox to enable fonts downloading is checked
- And webfonts are applied to body
-
- Scenario: Discarding live preview of content font
- When I select OpenDyslexic font for the content language for the live preview
- And I close the panel to discard the changes
- And I open Display panel of language settings
- Then the selected content font must be system
- And the active content font must be the same as font prior to the preview
-
- Scenario: Discarding live preview of interface font
- When I select OpenDyslexic font for the interface language for the live preview
- And I close the panel to discard the changes
- Then the active interface font must be the same as font prior to the preview
- And the selected interface font must be Systemschriftart
-
- Scenario: Applying the live preview of interface font
- When I select OpenDyslexic font for the interface language for the live preview
- And I apply the changes
- Then the interface font is OpenDyslexic
-
- Scenario: Disabling fonts if they are enabled by default
- When I click the checkbox to enable fonts downloading
- Then a font selector for interface language doesn't appear
- And a font selector for content language doesn't appear
- And the checkbox to enable fonts downloading is not checked
-
- Scenario: Disabling fonts when they are enabled by default and going to another page
- When I click the checkbox to disable fonts downloading
- And I apply the changes
- And I am on the main page
- And I open ULS
- And I open Display panel of language settings
- Then a font selector for interface language doesn't appear
- And a font selector for content language doesn't appear
- And the checkbox to enable fonts downloading is not checked
- And webfonts are not applied to body
-
- Scenario: Disabling fonts, going to another page, and re-enabling fonts
- When I click the checkbox to disable fonts downloading
- And I apply the changes
- And I am on the main page
- And I open ULS
- And I open Display panel of language settings
- And I open Fonts panel of language settings
- And I click the checkbox to enable fonts downloading
- Then a font selector for interface language appears
- And a font selector for content language appears
- And the checkbox to enable fonts downloading appears
- And the checkbox to enable fonts downloading is checked
- And webfonts are applied to body
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/ime.feature b/MLEB/UniversalLanguageSelector/tests/browser/features/ime.feature
deleted file mode 100644
index fa8bfcbc..00000000
--- a/MLEB/UniversalLanguageSelector/tests/browser/features/ime.feature
+++ /dev/null
@@ -1,68 +0,0 @@
-@firefox @phantomjs
-Feature: Input method engine
-
-User is able to select among different input methods via a menu which is
-activated by the input method indicator. User can type with selected input
-method in different input fields and temporarily activate and deactivate the
-input method.
-
- @clean @commons.wikimedia.beta.wmflabs.org @internet_explorer_10
- Scenario: Input method indicator is shown
-
- The input method indicator is shown when input field gets a focus.
-
- Given I am at the main page
- When I click on an input box
- Then I should see the input method indicator
-
- @commons.wikimedia.beta.wmflabs.org @internet_explorer_10
- Scenario: Input method menu
-
- Input method menu is shown when user clicks the input method indicator.
-
- Given I am at the main page
- When I click on an input box
- And I click on the input method indicator
- Then I should see input methods for English
- And I should see a list of available input methods
- And I should see a list of suggested languages
-
- @internet_explorer_10
- Scenario: Unsupported input language
-
- User visits a wiki with content language that does not have have an input
- method.
-
- Given I am on a wiki in Kotava language
- When I open the input method menu
- Then I should see input methods for Kotava
-
- @commons.wikimedia.beta.wmflabs.org
- Scenario: Sticky input methods
-
- Chosen input method selection persists across page loads.
-
- Given I am at the main page
- When I open the input method menu
- And I choose ml as the input language
- And I open the input method menu
- And I click on the Malayalam InScript 2 menu item
- And I press Control-M
- And I reload the page
- And I click on an input box
- And I press Control-M
- Then I should see the input method indicator
- And in it there must be an element with Malayalam text
-
- @clean @commons.wikimedia.beta.wmflabs.org @internet_explorer_10
- Scenario Outline: Input method menu is completely visible
- Given I visit a random page with <skin> skin and <language> as the interface language
- When I open the input method menu
- Then I should see the input method menu is not offscreen
-
- Examples:
- | skin | language |
- | Vector | English |
- | Vector | Hebrew |
- | Monobook | English |
- #| Monobook | Hebrew |
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/live_preview_of_display_language.feature b/MLEB/UniversalLanguageSelector/tests/browser/features/live_preview_of_display_language.feature
deleted file mode 100644
index b4106812..00000000
--- a/MLEB/UniversalLanguageSelector/tests/browser/features/live_preview_of_display_language.feature
+++ /dev/null
@@ -1,44 +0,0 @@
-@firefox @internet_explorer_10 @login @phantomjs
-Feature: Live preview of display language changes
-
- Background:
- Given I am logged in
- And I have reset my preferences
- And I am at the main page
-
- Scenario: Display language change is previewed immediately
- Given I open the Universal Language Selector
- And I open Display panel of language settings
- And I click the button with the ellipsis
- And in the language filter I type malayalam
- And I click on the link to select Malayalam
- Then I should see the text in the language panel in Malayalam
-
- @clean
- Scenario: Live preview of display language changes can be reverted on cancel
- Given I open the Universal Language Selector
- And I open Display panel of language settings
- And I select a language different than English for display language
- When I click Cancel
- And I open Display panel of language settings
- Then I should see the text in the language panel in English
-
- @clean
- Scenario: Live preview of display language changes can be reverted on closing the dialog with the X button
- Given I open the Universal Language Selector
- And I open Display panel of language settings
- And I select a language different than English for display language
- When I click X
- And I open Display panel of language settings
- Then I should see the text in the language panel in English
-
- # https://phabricator.wikimedia.org/T59967
- # @clean @commons.wikimedia.beta.wmflabs.org
- Scenario: Live preview of display language changes can be reverted on closing the dialog on cancel from a different panel
- Given I open the Universal Language Selector
- And I open Display panel of language settings
- And I select a language different than English for display language
- And I switch to Input panel of language settings
- When I click Cancel
- And I open Display panel of language settings
- Then I should see the text in the language panel in English
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/persistent_settings.feature b/MLEB/UniversalLanguageSelector/tests/browser/features/persistent_settings.feature
deleted file mode 100644
index b3dac0f7..00000000
--- a/MLEB/UniversalLanguageSelector/tests/browser/features/persistent_settings.feature
+++ /dev/null
@@ -1,37 +0,0 @@
-# First scenario seems to fail whenever OpenDyslexic is missing
-@firefox @internet_explorer_10 @login @phantomjs
-Feature: Persistent settings
-
- This assumes wiki content language is English.
-
- Background:
- Given I am logged in
- And I have reset my preferences
- And I set "German" as the interface language
- And I open the Universal Language Selector
- And I open Display panel of language settings
- And I open Fonts panel of language settings
- And I select OpenDyslexic font for the interface language for the live preview
-
- @language-browsertests.wmflabs.org
- Scenario: Interface font sticks to another page
- When I apply the changes
- And I am at the main page
- Then the selected interface font must be OpenDyslexic
-
- @language-browsertests.wmflabs.org
- Scenario: Discarding a live preview of a font keeps the previous font
- When I close the panel to discard the changes
- And I am at the main page
- Then the selected interface font must be Systemschriftart
-
- Scenario: Changing both a font and an input method is saved
- When I open Input side panel of language settings
- And I click the button with the ellipsis
- And in the language filter I type ml
- And I click on the link to select Malayalam
- And I select the ml-inscript2 input method in the panel
- And I apply the changes
- And I am at the main page
- Then the selected interface font must be OpenDyslexic
- And the selected input method for Malayalam is ml-inscript2
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/settings_panel.feature b/MLEB/UniversalLanguageSelector/tests/browser/features/settings_panel.feature
deleted file mode 100644
index 7dd19418..00000000
--- a/MLEB/UniversalLanguageSelector/tests/browser/features/settings_panel.feature
+++ /dev/null
@@ -1,92 +0,0 @@
-@firefox @internet_explorer_10 @phantomjs
-Feature: Settings panel
-
- @login @ime-default-on
- Scenario Outline: Input settings display
- Given I am <user status>
- And I am on a page without interlanguage links
- When I open ULS
- And I switch to Input panel of language settings
- Then I can disable input methods
- And I can enable input methods
-
- Examples:
- | user status |
- | logged out |
- | logged in |
-
- Scenario: How to use link appears in the Input settings panel
- Given I am at the main page
- When I open ULS
- And I switch to Input panel of language settings
- And I click the button with the ellipsis
- And in the language filter I type ml
- And I click on the link to select Malayalam
- Then I should see the How to use link near the Malayalam transliteration item
-
- Scenario: More languages (input language selection)
- Given I am at the main page
- When I open ULS
- And I switch to Input panel of language settings
- And I click the button with the ellipsis
- Then I see Worldwide
- And I see Language Search
- And I can navigate back to Input Settings
-
- @login
- Scenario: More languages (interface language selection)
- Given I am logged in
- When I open Language panel of language settings
- And I click the button with the ellipsis
- Then I see Common Languages
- And I see Worldwide
- And I see Language Search
- And I can navigate back to Language Settings
-
- @login
- Scenario: Temporary live preview for menu language
-
- Given I am logged in
- When I open Language panel of language settings
- And I click the button with the ellipsis
- And I use the panel to change my interface language to "German"
- And I switch to Input panel of language settings
- And I click X
- And I open Language panel of language settings
- Then the panel is in English
-
- Scenario: The name of site content language is correct when translation language is different
-
- This feature is a bit hard to test. In most cases content language matches
- the language of translation. In addition this only applies to anonymous
- users in wikis where language changing for anonymous users is disabled. So
- to test this we create a somewhat artificial test case by setting the wiki
- interface language to a non-default value.
-
- Given I temporarily use "Finnish" as the interface language
- When I open Language panel of language settings
- Then I see "English (sama kuin sisällön)" as the name of the content language
-
- @login
- Scenario: Selecting language via [...] button
-
- Given I am logged in
- And I have reset my preferences
- When I open Language panel of language settings
- And I click the button with the ellipsis
- And I use the panel to change my interface language to "German"
- And I apply the changes
- Then my interface language is "German"
-
- @login
- Scenario: Regression test for bug T58913
-
- Given I am logged in
- And I have reset my preferences
- When I open the Universal Language Selector
- And I switch to Input panel of language settings
- And I click the button with the ellipsis
- And I use the panel to change my input language to "Finnish"
- And I close the panel to discard the changes
- And I switch to Input panel of language settings
- Then I should see English as the selected input language
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/accept_language_steps.rb b/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/accept_language_steps.rb
deleted file mode 100644
index 012debdb..00000000
--- a/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/accept_language_steps.rb
+++ /dev/null
@@ -1,12 +0,0 @@
-Given(/^that my browser's accept language is (.+)$/) do |language|
- @browser = browser(test_name(@scenario), {language: language})
- $session_id = @browser.driver.instance_variable_get(:@bridge).session_id
-end
-
-When(/^I am at the preferences page$/) do
- visit PreferencesPage
-end
-
-Then(/^link to the main page has text (.+)$/) do |text|
- on(MainPage).main_page_element.text.should == text
-end
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/autonym_steps.rb b/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/autonym_steps.rb
deleted file mode 100644
index 5dd2bb27..00000000
--- a/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/autonym_steps.rb
+++ /dev/null
@@ -1,15 +0,0 @@
-When(/^I am on the main page$/) do
- visit MainPage
-end
-
-Then(/^I open Input side panel of language settings$/) do
- on(PanelPage).panel_side_input_element.when_visible.click
-end
-
-Then(/^the Interlanguage links should use Autonym font$/) do
- on(InterlanguagePage).interlang_link_element.style("font-family").should == "'Autonym',sans-serif"
-end
-
-Then(/^elements that are not Interlanguage links should not use Autonym font$/) do
- on(MainPage).non_interlanguage_links_use_autonym_font?.should == false
-end
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/cog_sidebar_user_steps.rb b/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/cog_sidebar_user_steps.rb
deleted file mode 100644
index 8beb672d..00000000
--- a/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/cog_sidebar_user_steps.rb
+++ /dev/null
@@ -1,106 +0,0 @@
-Given(/^I am on a page with interlanguage links$/) do
- visit InterlanguagePage
-end
-
-Given(/^I am on a page without interlanguage links$/) do
- visit NoInterlanguagePage # .add_links_element.when_visible.should be_visible
- # cannot do this because of https://phabricator.wikimedia.org/T51139
-end
-
-Given(/^I am on a talk page with interlanguage links$/) do
- visit(InterlanguagePage).talk_element.click
-end
-
-Given(/^I am on a talk page without interlanguage links$/) do
- visit(NoInterlanguagePage).talk_element.click
-end
-
-Given(/^I navigate to the anonymous Language Settings panel$/) do
- step "I am on a page with interlanguage links"
- step "I click the cog icon by Languages in the sidebar"
- step "I see the logged out language settings panel"
-end
-
-Given(/^I navigate to the Language Settings panel$/) do
- step "I am on a page with interlanguage links"
- step "I click the cog icon by Languages in the sidebar"
- step "I see the logged in language settings panel"
-end
-
-When(/^I click the cog icon by Languages in the sidebar$/) do
- on(NoInterlanguagePage).cog_element.when_present.click
- # Wait for the panel to open
- on(PanelPage).panel_display_element.when_visible
-end
-
-Then(/^I can navigate back to Input Settings$/) do
- on(InterlanguagePage) do |page|
- page.back_to_input
- page.x_element.should be_visible
- end
-end
-
-Then(/^I can navigate back to Language Settings$/) do
- on(InterlanguagePage) do |page|
- page.back_to_display
- page.x_element.should be_visible
- end
-end
-
-When(/^I choose a different language for writing$/) do
- on(InterlanguagePage).non_default_language_element.when_visible.click
-end
-
-Then(/^I do not see the Language Settings panel$/) do
- on(PanelPage) do |page|
- page.panel_language_element.should_not be_visible
- page.panel_fonts_element.should_not be_visible
- page.default_language_button_element.should_not be_visible
- page.other_language_button_element.should_not be_visible
- end
-end
-
-Then(/^I see Common Languages$/) do
- on(InterlanguagePage).language_list.should match Regexp.escape("Common languages")
-end
-
-Then(/^I see Language Search$/) do
- on(InterlanguagePage).language_search_element.should be_visible
-end
-
-Then(/^I see the logged out language settings panel$/) do
- on(PanelPage) do |page|
- page.panel_language_element.should be_visible
- page.panel_fonts_element.should be_visible
- end
-end
-
-Then(/^I see the logged in language settings panel$/) do
- on(PanelPage) do |page|
- page.panel_language_element.should be_visible
- page.panel_fonts_element.should be_visible
- page.default_language_button_element.should be_visible
- page.other_language_button_element.should be_visible
- end
-end
-
-Then(/^I see Worldwide$/) do
- on(InterlanguagePage) do |page|
- page.language_list.should match Regexp.escape("Worldwide")
- page.english_link_element.should be_visible
- end
-end
-
-Then(/^I click the cog icon to open language settings again$/) do
- step "I click the cog icon by Languages in the sidebar"
- step "I see the logged out language settings panel"
-end
-
-Then(/^the cog icon brings up Language Settings again$/) do
- step "I click the cog icon by Languages in the sidebar"
- step "I see the Language Settings panel"
-end
-
-Then(/^I should see the How to use link near the Malayalam transliteration item$/) do
- on(InterlanguagePage).how_to_use_ml_transliteration_element.should be_visible
-end
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/common_steps.rb b/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/common_steps.rb
deleted file mode 100644
index 775e98da..00000000
--- a/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/common_steps.rb
+++ /dev/null
@@ -1,39 +0,0 @@
-Given(/^I am at the main page$/) do
- visit MainPage
-end
-
-Given(/^I am logged out$/) do
-end
-
-Given(/^I set "(.*?)" as the interface language$/) do |language|
- code = on(PanelPage).language_to_code(language)
- visit(PanelPage, :using_params => {:extra => "setlang=#{code}"})
- @original_content_font = on(PanelPage).content_font
- @original_interface_font = on(PanelPage).interface_font
-end
-
-Given(/^I temporarily use "(.*?)" as the interface language$/) do |language|
- code = on(PanelPage).language_to_code(language)
- visit(PanelPage, :using_params => {:extra => "uselang=#{code}"})
-end
-
-Then(/^my interface language is "(.*?)"$/) do |language|
- code = on(PanelPage).language_to_code(language)
- on(PanelPage).interface_element.attribute("lang").should == code
-end
-
-When(/^I click the button with the ellipsis$/) do
- on(InterlanguagePage).ellipsis_button_element.click
-end
-
-When(/^in the language filter I type (.+)$/) do |language_abbreviation|
- on(IMEPage).language_filter = language_abbreviation
-end
-
-When(/^I click Cancel$/) do
- on(PanelPage).panel_button_cancel_element.click
-end
-
-When(/^I click X$/) do
- on(InterlanguagePage).x_element.click
-end
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/font_selection_steps.rb b/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/font_selection_steps.rb
deleted file mode 100644
index bbaf48e0..00000000
--- a/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/font_selection_steps.rb
+++ /dev/null
@@ -1,47 +0,0 @@
-When(/^I click the checkbox to (?:enable|disable) fonts downloading$/) do
- on(PanelPage).webfonts_enable_checkbox_element.click
-end
-
-Then(/^the checkbox to enable fonts downloading appears$/) do
- on(PanelPage).webfonts_enable_checkbox_element.should be_visible
-end
-
-Then(/^the checkbox to enable fonts downloading is checked$/) do
- on(PanelPage).webfonts_enable_checkbox_element.should be_checked
-end
-
-Then(/^the checkbox to enable fonts downloading is not checked$/) do
- on(PanelPage).webfonts_enable_checkbox_element.should_not be_checked
-end
-
-Given(/^I open ULS$/) do
- on(PanelPage).trigger_personal_element.when_visible.click
-end
-
-Then(/^the active content font must be the same as font prior to the preview$/) do
- on(PanelPage).content_font.should == @original_content_font
-end
-
-Then(/^the active interface font must be the same as font prior to the preview$/) do
- on(PanelPage).interface_font.should == @original_interface_font
-end
-
-Then(/^the selected content font must be (.*?)$/) do |font|
- on(PanelPage).selected_content_font_element.when_visible.value.should == font
-end
-
-Then(/^the interface font is (.*?)$/) do |font|
- on(PanelPage).interface_font.should match("^#{font}")
-end
-
-Then(/^the content font is (.*?)$/) do |font|
- on(PanelPage).content_font.should match("^#{font}")
-end
-
-Then(/^webfonts are applied to body$/) do
- on(PanelPage).webfonts_library_loaded.should be_true
-end
-
-Then(/^webfonts are not applied to body$/) do
- on(PanelPage).webfonts_library_loaded.should be_false
-end
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/ime_steps.rb b/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/ime_steps.rb
deleted file mode 100644
index 1dc3b2cc..00000000
--- a/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/ime_steps.rb
+++ /dev/null
@@ -1,77 +0,0 @@
-# encoding: utf-8
-
-Given(/^I am on a wiki in Kotava language$/) do
- step "I am at the main page"
- # Fake a Kotava Wiki
- @browser.execute_script( "mw.config.set( 'wgContentLanguage', 'avk' )" )
-end
-
-When(/^I click on an input box$/) do
- on(IMEPage).search_input_element.click
-end
-
-When(/^I click on the input method indicator$/) do
- on(IMEPage).input_method_element.when_present.click
-end
-
-When(/^I open the input method menu$/) do
- step "I click on an input box"
- on(IMEPage).input_method_element.when_present.click
-end
-
-Then(/^I should see the input method indicator$/) do
- on(IMEPage).input_method_element.when_present.should be_visible
-end
-
-Then(/^I should see input methods for (.+)/) do |language|
- on(IMEPage).input_method_ime_list_title.should == language
-end
-
-Then(/^I should see a list of available input methods$/) do
- on(IMEPage).input_method_selector_menu_element.should be_visible
-end
-
-Then(/^I should see a list of suggested languages$/) do
- on(IMEPage).input_method_language_list_element.should be_visible
-end
-
-When(/^I choose (.+?) as the input language$/) do |language|
- on(IMEPage) do |page|
- page.more_languages
- page.language_filter = language
- # firefox only works with :return
- # phantomjs only works with :enter
- # This seems to work on both
- page.language_filter_element.send_keys "\n"
- end
-end
-
-When(/^I click on the Malayalam InScript 2 menu item$/) do
- on(IMEPage).malayalam_inscript2_element.click
-end
-
-When(/^I press Control-M$/) do
- on(IMEPage).search_input_element.send_keys [:control, "m"]
-end
-
-When(/^I reload the page$/) do
- @browser.refresh
-end
-
-Then(/^in it there must be an element with Malayalam text$/) do
- # 'input_method_enabled' alone only returns []
- on(IMEPage) do |page|
- page.wait_until do
- page.input_method_enabled_element.text != ""
- end
- page.input_method_enabled_element.text.should == "ഇൻസ്ക്രിപ്റ്റ് 2"
- end
-end
-
-Given(/^I visit a random page with (.+) skin and (.+) as the interface language$/) do |skin, language|
- visit(IMEPage, :using_params => {:extra => "useskin=#{skin.downcase}&uselang=#{on(IMEPage).language_to_code(language)}"})
-end
-
-Then(/^I should see the input method menu is not offscreen$/) do
- on(IMEPage).ime_input_method_menu_onscreen?.should == true
-end
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/live_preview_of_display_language_steps.rb b/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/live_preview_of_display_language_steps.rb
deleted file mode 100644
index 9f9e3b15..00000000
--- a/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/live_preview_of_display_language_steps.rb
+++ /dev/null
@@ -1,24 +0,0 @@
-When(/^I set English font to System$/) do
- on(PanelPage).select_font_for_content = "System font"
-end
-
-When(/^I set English font to OpenDyslexic$/) do
- on(PanelPage).select_font_for_content = "OpenDyslexic"
-end
-
-Then(/^the selected content font must be OpenDyslexic$/) do
- on(PanelPage).select_font_for_content.should == "OpenDyslexic"
-end
-
-Given(/^I select a language different than English for display language$/) do
- on(PanelPage).other_language_button_element.click
-end
-
-When(/^I click on the link to select Malayalam$/) do
- on(MainPage).malayalam_element.click
-end
-
-Then(/^I should see the text in the language panel in (.+?)$/) do |language|
- code = on(PanelPage).language_to_code(language)
- on(PanelPage).uls_display_settings_element.attribute("lang").should == code
-end
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/panel_steps.rb b/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/panel_steps.rb
deleted file mode 100644
index a2d9a99e..00000000
--- a/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/panel_steps.rb
+++ /dev/null
@@ -1,89 +0,0 @@
-Then(/^I see "(.*?)" as the name of the content language$/) do |text|
- @browser.span(:text => "#{text}").should be_visible
-end
-
-When(/^I open the Universal Language Selector$/) do
- on(PanelPage) do |page|
- page.trigger_personal_element.when_visible.click unless page.uls_element.visible?
- end
-end
-
-When(/^I open Display panel of language settings$/) do
- on(PanelPage).panel_display_element.when_visible.click
-end
-
-When(/^I open Language panel of language settings$/) do
- on(PanelPage).panel_language_element.click
-end
-
-When(/^I open Fonts panel of language settings$/) do
- on(PanelPage).panel_fonts_element.click
-end
-
-When(/^I select (.*?) font for the interface language for the live preview$/) do |font|
- on(PanelPage).selected_interface_font = font
-end
-
-When(/^I select (.*?) font for the content language for the live preview$/) do |font|
- on(PanelPage).font_for_content = font
-end
-
-When(/^I close the panel to discard the changes$/) do
- on(PanelPage).panel_button_close_element.click
-end
-
-When(/^I apply the changes$/) do
- on(PanelPage) do |page|
- page.panel_button_apply_element.click
- page.language_settings_dialog_element.when_not_present(10)
- end
-end
-
-Then(/^I can disable input methods$/) do
- on(PanelPage).panel_disable_input_methods_element.click
-end
-
-Then(/^I can enable input methods$/) do
- on(PanelPage).panel_enable_input_methods_element.click
-end
-
-Then(/^a font selector for interface language appears$/) do
- on(PanelPage).panel_interface_font_selector_element.should be_visible
-end
-
-Then(/^a font selector for interface language doesn't appear$/) do
- on(PanelPage).panel_interface_font_selector_element.should_not be_visible
-end
-
-Then(/^a font selector for content language appears$/) do
- on(PanelPage).panel_content_font_selector_element.should be_visible
-end
-
-Then(/^a font selector for content language doesn't appear$/) do
- on(PanelPage).panel_content_font_selector_element.should_not be_visible
-end
-
-When(/^I use the panel to change my (?:interface|input) language to "(.*?)"$/) do |language|
- code = on(PanelPage).language_to_code(language)
- on(IMEPage) do |page|
- page.language_filter = code
- # Because one browser wants :enter and other :return -- sigh
- page.language_filter_element.send_keys [:enter, "\n"]
- end
-end
-
-Then(/^the panel is in English/) do
- on(PanelPage).panel_language_element.text.should == "Language"
-end
-
-When(/^I switch to Input panel of language settings$/) do
- on(PanelPage).panel_side_input_element.click
-end
-
-Then(/^the language list of ULS should use Autonym font$/) do
- on(PanelPage).uls_language_name_item("en").style("font-family").should match /Autonym'?, ?sans-serif/
-end
-
-Then(/^I should see (.*) as the selected input language$/) do |language|
- on(PanelPage).default_language_button_element.text.should == language
-end
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/persistent_settings_steps.rb b/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/persistent_settings_steps.rb
deleted file mode 100644
index 2014fbbb..00000000
--- a/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/persistent_settings_steps.rb
+++ /dev/null
@@ -1,16 +0,0 @@
-Then(/^the selected interface font must be (.*?)$/) do |font|
- step "I open the Universal Language Selector"
- step "I open Display panel of language settings"
- step "I open Fonts panel of language settings"
- on(PanelPage).selected_interface_font.should == font
-end
-
-Then(/^the selected input method for Malayalam is ml-inscript2$/) do
- step "I click on an input box"
- step "I should see the input method indicator"
- step "in it there must be an element with Malayalam text"
-end
-
-When(/^I select the ml-inscript2 input method in the panel$/) do
- on(PanelPage).ml_inscript2_radio_element.click
-end
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/textarea_font_steps.rb b/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/textarea_font_steps.rb
deleted file mode 100644
index 2cc2115a..00000000
--- a/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/textarea_font_steps.rb
+++ /dev/null
@@ -1,23 +0,0 @@
-When(/^I set the editing fonts to "(.*?)"$/) do |editing_font|
- visit(PreferencesPage) do |page|
- page.editing_tab_element.click
- page.editing_font_element.select_value editing_font
- page.save_element.click
- end
-end
-
-When(/^I start editing a page$/) do
- visit(NoInterlanguagePage).edit_link_element.click
-end
-
-When(/^I select (.*?) font for the content language$/) do |font|
- step "I open the Universal Language Selector"
- step "I open Display panel of language settings"
- step "I open Fonts panel of language settings"
- step "I select #{font} font for the content language for the live preview"
- step "I apply the changes"
-end
-
-Then(/^I should see the edit area text being displayed using "(.*?)" font$/) do |font|
- on(EditPage).editarea_element.style("font-family").should match(/^#{font}/)
-end
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/triggers_steps.rb b/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/triggers_steps.rb
deleted file mode 100644
index 75a49ada..00000000
--- a/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/triggers_steps.rb
+++ /dev/null
@@ -1,10 +0,0 @@
-When(/^I click language selector trigger element$/) do
- on(PanelPage).trigger_personal
-end
-
-Then(/^I should see the language selector$/) do
- on(PanelPage) do |page|
- page.uls_element.should be_visible
- page.uls_onscreen?.should be_true
- end
-end
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/support/env.rb b/MLEB/UniversalLanguageSelector/tests/browser/features/support/env.rb
deleted file mode 100644
index 8ac08eab..00000000
--- a/MLEB/UniversalLanguageSelector/tests/browser/features/support/env.rb
+++ /dev/null
@@ -1 +0,0 @@
-require "mediawiki_selenium"
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/support/hooks.rb b/MLEB/UniversalLanguageSelector/tests/browser/features/support/hooks.rb
deleted file mode 100644
index 75d210cd..00000000
--- a/MLEB/UniversalLanguageSelector/tests/browser/features/support/hooks.rb
+++ /dev/null
@@ -1,3 +0,0 @@
-After do
- step "I have reset my preferences"
-end
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/support/modules/interlanguage_module.rb b/MLEB/UniversalLanguageSelector/tests/browser/features/support/modules/interlanguage_module.rb
deleted file mode 100644
index 21d318cd..00000000
--- a/MLEB/UniversalLanguageSelector/tests/browser/features/support/modules/interlanguage_module.rb
+++ /dev/null
@@ -1,23 +0,0 @@
-# encoding: utf-8
-require "page-object"
-
-module InterlanguagePageModule
- include PageObject
-
- a(:add_links, id: "wbc-linkToItem-link")
- a(:back_to_display, text: "Back to display settings")
- a(:back_to_input, text: "Back to input settings")
- span(:cog, class: "uls-settings-trigger")
- button(:ellipsis_button, class: "uls-more-languages button")
- a(:english_link, text: "English")
- a(:hindi_link, title: "Hindi")
- div(:input_settings, id: "input-settings-block")
- div(:language_list, class: "row uls-language-list lcd")
- text_field(:language_search, id: "uls-languagefilter")
- button(:non_default_language, class: "button uls-language-button", index: 1)
- a(:talk, text: "Discussion")
- span(:x, id: "languagesettings-close")
- a(:how_to_use_ml_transliteration, href: "https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Extension:UniversalLanguageSelector/Input_methods/ml-transliteration")
- a(:edit_link, css: "#ca-edit a")
- a(:interlang_link, css: "#p-lang li.interlanguage-link")
-end
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/support/modules/language_module.rb b/MLEB/UniversalLanguageSelector/tests/browser/features/support/modules/language_module.rb
deleted file mode 100644
index 0a7eae77..00000000
--- a/MLEB/UniversalLanguageSelector/tests/browser/features/support/modules/language_module.rb
+++ /dev/null
@@ -1,22 +0,0 @@
-module LanguageModule
- include PageObject
-
- def language_to_code(language)
- case language
- when "German"
- "de"
- when "English"
- "en"
- when "Finnish"
- "fi"
- when "Hebrew"
- "he"
- when "Hindi"
- "hi"
- when "Malayalam"
- "ml"
- else
- p "Unknown language #{language}"
- end
- end
-end
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/support/pages/edit_page.rb b/MLEB/UniversalLanguageSelector/tests/browser/features/support/pages/edit_page.rb
deleted file mode 100644
index 43ce0c50..00000000
--- a/MLEB/UniversalLanguageSelector/tests/browser/features/support/pages/edit_page.rb
+++ /dev/null
@@ -1,5 +0,0 @@
-class EditPage
- include PageObject
-
- textarea(:editarea, id: "wpTextbox1")
-end
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/support/pages/ime_page.rb b/MLEB/UniversalLanguageSelector/tests/browser/features/support/pages/ime_page.rb
deleted file mode 100644
index f2e59c04..00000000
--- a/MLEB/UniversalLanguageSelector/tests/browser/features/support/pages/ime_page.rb
+++ /dev/null
@@ -1,26 +0,0 @@
-class IMEPage
- include PageObject
- include LanguageModule
-
- include URL
- page_url URL.url("?<%=params[:extra]%>")
-
- div(:input_method, class: "imeselector imeselector-toggle")
- a(:input_method_enabled, class: "ime-name imeselector-toggle")
- h3(:input_method_ime_list_title, class: "ime-list-title")
- ul(:input_method_language_list, class: "ime-language-list")
- div(:input_method_selector_menu, class: "imeselector-menu")
- text_field(:language_filter, id: "uls-languagefilter")
- li(:malayalam_inscript2, data_ime_inputmethod: "ml-inscript2")
- a(:more_languages, class: "ime-selector-more-languages")
- text_field(:search_input, id: "searchInput")
-
- def ime_input_method_menu_onscreen?
- @browser.execute_script( "
- var $selectorMenu = $( '.imeselector-menu' ),
- menuLeft = $selectorMenu.offset().left,
- menuRight = menuLeft + $selectorMenu.width();
-
- return ( menuLeft >= 0 && menuRight <= $( window ).width() );" )
- end
-end
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/support/pages/interlanguage_page.rb b/MLEB/UniversalLanguageSelector/tests/browser/features/support/pages/interlanguage_page.rb
deleted file mode 100644
index 03b38cce..00000000
--- a/MLEB/UniversalLanguageSelector/tests/browser/features/support/pages/interlanguage_page.rb
+++ /dev/null
@@ -1,10 +0,0 @@
-class InterlanguagePage
- include PageObject
- include InterlanguagePageModule
-
- include URL
- def self.url
- URL.url("Boleyn_family")
- end
- page_url url
-end
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/support/pages/main_page.rb b/MLEB/UniversalLanguageSelector/tests/browser/features/support/pages/main_page.rb
deleted file mode 100644
index 9aaa0b14..00000000
--- a/MLEB/UniversalLanguageSelector/tests/browser/features/support/pages/main_page.rb
+++ /dev/null
@@ -1,25 +0,0 @@
-class MainPage
- include PageObject
-
- include URL
- page_url URL.url("Main_Page")
-
- span(:cog, title: "Language settings")
- a(:create_a_book, text: "Create a book")
- a(:download_as_pdf, text: "Download as PDF")
- a(:download_the_file, text: "Download the file")
- li(:main_page, id: "n-mainpage-description")
- div(:asia, id: "AS")
- a(:malayalam) do |page|
- page.asia_element.element.li(lang: "ml")
- end
- a(:print_export, text: "Print/export")
- a(:printable_version, text: "Printable version")
- button(:search_button, id: "searchButton")
-
- def non_interlanguage_links_use_autonym_font?
- @browser.elements(css: "#p-lang li:not(.interlanguage-link)").collect do |element|
- element.style("font-family")
- end.to_s.match(/Autonym/) != nil
- end
-end
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/support/pages/no_interlanguage_page.rb b/MLEB/UniversalLanguageSelector/tests/browser/features/support/pages/no_interlanguage_page.rb
deleted file mode 100644
index 76d9d1cc..00000000
--- a/MLEB/UniversalLanguageSelector/tests/browser/features/support/pages/no_interlanguage_page.rb
+++ /dev/null
@@ -1,11 +0,0 @@
-class NoInterlanguagePage
- include PageObject
-
- include URL
- def self.url
- URL.url("Think_Like_a_Cat")
- end
- page_url url
-
- include InterlanguagePageModule
-end
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/support/pages/panel_page.rb b/MLEB/UniversalLanguageSelector/tests/browser/features/support/pages/panel_page.rb
deleted file mode 100644
index 9b25421c..00000000
--- a/MLEB/UniversalLanguageSelector/tests/browser/features/support/pages/panel_page.rb
+++ /dev/null
@@ -1,81 +0,0 @@
-class PanelPage
- include PageObject
- include LanguageModule
-
- include URL
- page_url URL.url("?<%=params[:extra]%>")
-
- div(:uls, class: "uls-menu")
- span(:uls_button_close, id: "uls-close")
-
- div(:language_settings_dialog, id: "language-settings-dialog")
- div(:panel_display, id: "display-settings-block")
- button(:panel_fonts, id: "uls-display-settings-fonts-tab")
- button(:panel_language, id: "uls-display-settings-language-tab")
-
- div(:panel_side_display, id: "display-panel-trigger")
- div(:panel_side_input, id: "input-panel-trigger")
-
- span(:panel_button_close, id: "languagesettings-close")
- button(:panel_button_apply, class: "uls-settings-apply")
- button(:panel_button_cancel, class: "uls-settings-cancel")
-
- button(:panel_disable_input_methods, class: "uls-input-toggle-button")
- button(:panel_enable_input_methods, class: "uls-input-toggle-button")
-
- checkbox(:webfonts_enable_checkbox, id: "webfonts-enable-checkbox")
-
- select_list(:panel_content_font_selector, id: "content-font-selector")
- select_list(:panel_interface_font_selector, id: "ui-font-selector")
-
- button(:other_language_button, class: "button uls-language-button", index: 1)
- button(:default_language_button, css: ".uls-language-button.down")
-
- # Triggers
- span(:trigger_cog, class: "uls-settings-trigger")
- a(:trigger_personal, class: "uls-trigger")
-
- select(:selected_content_font, id: "content-font-selector")
- select(:selected_interface_font, id: "ui-font-selector")
-
- select(:font_for_content, id: "content-font-selector")
-
- div(:uls_display_settings, class: "uls-display-settings")
-
- radio_button(:ml_inscript2_radio, id: "ml-inscript2")
-
- # Is there way to access the html element?
- div(:interface, id: "footer")
-
- def uls_language_name_item(language)
- @browser.element(css: ".uls-language-block li[lang=#{language}] a")
- end
-
- def content_font
- font("#mw-content-text")
- end
-
- def interface_font
- font("body")
- end
-
- def uls_onscreen?
- @browser.execute_script( "
- var $menu = $( '.uls-menu' ),
- $window = $( window ),
- top = $menu.offset().top,
- viewportTop = $window.scrollTop(),
- viewportBottom = $window.scrollTop() + $window.height();
-
- return ( top < viewportBottom && top >= viewportTop )" )
- end
-
- def webfonts_library_loaded
- @browser.execute_script( "return ( $( 'body' ).data( 'webfonts' ) !== undefined )" )
- end
-
- private
- def font(selector)
- @browser.execute_script( "return $( '#{selector}' ).css( 'font-family' );" )
- end
-end
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/support/pages/preferences_page.rb b/MLEB/UniversalLanguageSelector/tests/browser/features/support/pages/preferences_page.rb
deleted file mode 100644
index 26139885..00000000
--- a/MLEB/UniversalLanguageSelector/tests/browser/features/support/pages/preferences_page.rb
+++ /dev/null
@@ -1,12 +0,0 @@
-class PreferencesPage
- include PageObject
-
- include URL
- page_url URL.url("Special:Preferences")
-
- select(:set_interface_language, id: "mw-input-wplanguage")
- button(:save, id: "prefcontrol")
-
- a(:editing_tab, id: "preftab-editing")
- select(:editing_font, id: "mw-input-wpeditfont")
-end
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/textarea_font.feature b/MLEB/UniversalLanguageSelector/tests/browser/features/textarea_font.feature
deleted file mode 100644
index 410c26f4..00000000
--- a/MLEB/UniversalLanguageSelector/tests/browser/features/textarea_font.feature
+++ /dev/null
@@ -1,47 +0,0 @@
-@firefox @internet_explorer_10 @login @phantomjs
-Feature: Font preferences respected in different languages
-
- If a user has an edit font preferences respect that preference.
- If a user has no edit font preference, but the UI language has a monospace defined,
- the edit area has monospace font, given there is no ULS webfont preference for the user.
- If a user has no edit font preference, but the UI language has no monospace defined,
- the edit area has the font according to the ULS webfont preferences.
-
- Background:
- Given I am logged in
- And I have reset my preferences
-
- @clean
- Scenario: Edit area fonts should not change on UI language change if the user preferences for edit area font are set
- When I set the editing fonts to "monospace"
- And I set "Hindi" as the interface language
- And I start editing a page
- Then I should see the edit area text being displayed using "monospace" font
-
- # Needs OpenDyslexic font to have been configured on the target wiki
- Scenario: Edit area should use the fonts selected by the user from ULS for a language
- When I select OpenDyslexic font for the content language
- And I start editing a page
- Then I should see the edit area text being displayed using "OpenDyslexic" font
-
- Scenario: Edit area should use the ULS selected fonts when content language has a ULS font selection
- When I open Language panel of language settings
- And I click the button with the ellipsis
- And I use the panel to change my interface language to "German"
- And I open Fonts panel of language settings
- And I select "OpenDyslexic" font for the content language for the live preview
- And I apply the changes
- And I start editing a page
- Then I should see the edit area text being displayed using "OpenDyslexic" font
-
- Scenario: Edit area should use the system default fonts when content language does not have any ULS font selection
- When I open Language panel of language settings
- And I click the button with the ellipsis
- And I use the panel to change my interface language to "German"
- And I apply the changes
- And I start editing a page
- Then I should see the edit area text being displayed using "monospace" font
-
- Scenario: Edit area should use browser's default Monospace font for languages that have a default monospace font (Latin, Cyrillic, Hebrew etc.)
- When I start editing a page
- Then I should see the edit area text being displayed using "monospace" font
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/triggers.feature b/MLEB/UniversalLanguageSelector/tests/browser/features/triggers.feature
deleted file mode 100644
index 9ec4c016..00000000
--- a/MLEB/UniversalLanguageSelector/tests/browser/features/triggers.feature
+++ /dev/null
@@ -1,56 +0,0 @@
-@firefox @internet_explorer_10 @phantomjs
-Feature: Trigger in personal toolbar
-
- @commons.wikimedia.beta.wmflabs.org @login
- Scenario: Open language selector when logged in
- Given I am logged in
- When I click language selector trigger element
- Then I should see the language selector
- And I see Common Languages
- And I see Worldwide
-
- Scenario: Open language settings when logged out and language change not allowed
-
- If the user is logged out, the user will either see the language selector
- or the settings panel, depending on whether language selection for
- anonymous users is disabled. This and next test cover both cases.
-
- Given I am at the main page
- When I click language selector trigger element
- Then I see the logged in language settings panel
-
- Scenario: Open language selector when logged out
-
- Given I am at the main page
- When I click language selector trigger element
- Then I should see the language selector
-
-
- @login
- Scenario Outline: Opening language settings from sidebar
- Given I am <user status>
- And I am on <page type>
- When I click the cog icon by Languages in the sidebar
- Then I see the <user status> language settings panel
-
- Examples:
- | user status | page type |
- | logged out | a page without interlanguage links |
- | logged in | a page with interlanguage links |
- | logged out | a talk page without interlanguage links |
- | logged out | a talk page with interlanguage links |
-
- @login
- Scenario Outline: Closing language settings without saving
- Given I am <user status>
- And I am on a page without interlanguage links
- When I click the cog icon by Languages in the sidebar
- And <close method>
- Then I do not see the Language Settings panel
- And I click the cog icon by Languages in the sidebar
- And I see the <user status> language settings panel
-
- Examples:
- | user status | close method |
- | logged in | I click X |
- | logged out | I click Cancel |
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/tags.txt b/MLEB/UniversalLanguageSelector/tests/browser/tags.txt
deleted file mode 100644
index 997068a0..00000000
--- a/MLEB/UniversalLanguageSelector/tests/browser/tags.txt
+++ /dev/null
@@ -1,16 +0,0 @@
-This file contains the descriptions of the tags we use.
-
-@en.wikipedia.beta.wmflabs.org
-@commons.wikimedia.beta.wmflabs.org
- Test is run on this domain unless further excluded by other tags.
-
-@custom-browser
- This tests needs support from Accept-Language header setting from the
- webdriver.
-
-@ime-default-on
- These tests expect input methods to be enabled by default.
-
-@login
- This test logs in. You can filter these tests out if you don't have an
- account available.
diff --git a/MLEB/UniversalLanguageSelector/tests/phpunit/LanguageSearchTest.php b/MLEB/UniversalLanguageSelector/tests/phpunit/LanguageSearchTest.php
index d74425f3..1eca09bd 100644
--- a/MLEB/UniversalLanguageSelector/tests/phpunit/LanguageSearchTest.php
+++ b/MLEB/UniversalLanguageSelector/tests/phpunit/LanguageSearchTest.php
@@ -14,53 +14,114 @@
*
* @file
* @ingroup Extensions
- * @licence GNU General Public Licence 2.0 or later
- * @licence MIT License
+ * @license GPL-2.0-or-later
+ * @license MIT
*/
-require_once __DIR__ . '/../../data/LanguageNameSearch.php';
-class LanguageSearchTest extends PHPUnit_Framework_TestCase {
+/**
+ * @covers \LanguageNameSearch
+ * @covers \LanguageNameSearchData
+ */
+class LanguageSearchTest extends PHPUnit\Framework\TestCase {
/**
* @dataProvider searchDataProvider
*/
- public function testSearch( $searchKey, $result ) {
- $this->assertEquals( $result, LanguageNameSearch::search( $searchKey, 1 ) );
+ public function testSearch( $searchKey, $expected ) {
+ $actual = LanguageNameSearch::search( $searchKey, 1, 'en' );
+ // This is for better error messages
+ $this->assertEquals( $expected, $actual );
+ // This is for identical order
+ $this->assertSame( $expected, $actual );
}
public function searchDataProvider() {
- return array(
- array( "ഹിന്ദി", array(
+ return [
+ [ 'ഹിന്ദി', [
'hi' => 'ഹിന്ദി'
- )
- ),
- array( "മല", array(
- 'ml' => "മലയാളം",
+ ]
+ ],
+ [ 'മല', [
'mg' => 'മലഗാസി',
+ 'ml' => 'മലയാളം',
'ms' => 'മലെയ്',
- )
- ),
- array( "Φινλαν", array(
- 'fi' => 'Φινλανδικά',
- )
- ),
- array( 'blah', array()
- ),
- array( "الفرنسية", array(
+ ]
+ ],
+ [ 'Φινλαν', [
+ 'fi' => 'φινλανδικά',
+ ]
+ ],
+ [ 'blargh', []
+ ],
+ [ 'الفرنسية', [
'fr' => 'الفرنسية',
- 'fr-ca' => 'الفرنسية الكندية',
'fr-ch' => 'الفرنسية السويسرية',
- 'frm' => 'الفرنسية الوسطى',
'fro' => 'الفرنسية القديمة',
- )
- ),
- array( "മലയളം", array(
- 'ml' => "മലയാളം",
- )
- ),
- array( "finish", array(
+ 'frc' => 'الفرنسية الكاجونية',
+ 'crs' => 'الفرنسية الكريولية السيشيلية',
+ 'fr-ca' => 'الفرنسية الكندية',
+ 'frm' => 'الفرنسية الوسطى',
+ ]
+ ],
+ [ 'മലയളം', [
+ 'ml' => 'മലയാളം',
+ ]
+ ],
+ [ 'punja', [
+ 'pa' => class_exists( 'LanguageNames' ) ? 'punjabi' : 'punjaabi sennii',
+ 'pnb' => 'punjabi western',
+ ]
+ ],
+ [ 'castellano', [
+ 'es' => 'castellano',
+ ]
+ ],
+ [ 'hayeren', [
+ 'hy' => 'hayeren',
+ ]
+ ],
+ [ 'kartuli', [
+ 'ka' => 'kartuli',
+ ]
+ ],
+ [ 'qartuli', [
+ 'ka' => 'qartuli',
+ ]
+ ],
+ [ 'nihongo', [
+ 'ja' => 'nihongo',
+ ]
+ ],
+ [ 'にほんご', [
+ 'ja' => 'にほんご',
+ ]
+ ],
+ [ 'valencia', [
+ 'ca' => 'valencia',
+ ]
+ ],
+ [ 'chinese', [
+ 'zh' => 'chinese',
+ 'zh-cn' => 'chinese (china)',
+ 'zh-hk' => 'chinese (hong kong)',
+ 'zh-min-nan' => 'chinese (min nan)',
+ 'zh-sg' => 'chinese (singapore)',
+ 'zh-tw' => 'chinese (taiwan)',
+ 'zh-hans' => 'chinese simplified',
+ 'zh-hant' => 'chinese traditional',
+ 'zh-classical' => 'chinese — classical chinese',
+ 'gan' => 'chinese — gan chinese',
+ 'hak' => 'chinese — hakka chinese',
+ 'nan' => 'chinese — isi-min nan chinese',
+ 'wuu' => 'chinese — isi-wu chinese',
+ 'hsn' => 'chinese — isi-xiang chinese',
+ 'lzh' => 'chinese — literary chinese',
+ 'cdo' => 'chinese — min dong chinese',
+ ]
+ ],
+ [ 'finish', [
'fi' => 'finnish'
- )
- ),
- );
+ ]
+ ],
+ ];
}
}
diff --git a/MLEB/UniversalLanguageSelector/tests/phpunit/Makefile b/MLEB/UniversalLanguageSelector/tests/phpunit/Makefile
index eabe3a1b..ac3ce308 100644
--- a/MLEB/UniversalLanguageSelector/tests/phpunit/Makefile
+++ b/MLEB/UniversalLanguageSelector/tests/phpunit/Makefile
@@ -1,5 +1,5 @@
ifndef MW_INSTALL_PATH
- MW_INSTALL_PATH=../../..
+ MW_INSTALL_PATH=../../../..
endif
default:
diff --git a/MLEB/UniversalLanguageSelector/tests/phpunit/ResourceLoaderULSTest.php b/MLEB/UniversalLanguageSelector/tests/phpunit/ResourceLoaderULSTest.php
deleted file mode 100644
index 41e6f259..00000000
--- a/MLEB/UniversalLanguageSelector/tests/phpunit/ResourceLoaderULSTest.php
+++ /dev/null
@@ -1,49 +0,0 @@
-<?php
-/**
- * PHP Unit tests for ResourceLoaderULSModule class.
- *
- * @file
- * @ingroup Extensions
- *
- * @author Santhosh Thottingal
- */
-
-/**
- * @covers ResourceLoaderULSModule
- */
-class ResourceLoaderULSModuleMemcachedTest extends MediaWikiTestCase {
- /**
- * Test whether the modified time of the RL module varies
- * correctly with language code.
- * @covers ResourceLoaderSchemaModule::getModifiedTime
- */
- function testModifiedTime() {
- $request = new WebRequest();
- $module = new ResourceLoaderULSModule();
-
- $request->setVal( 'lang', 'he' );
- $context = new ResourceLoaderContext(
- new ResourceLoader(), $request );
- $mtimeHebrew = $module->getModifiedTime( $context );
- // sleep for 1 second
- sleep( 1 );
- $request->setVal( 'lang', 'hi' );
- $context = new ResourceLoaderContext( new ResourceLoader(), $request );
- $mtimeHindi = $module->getModifiedTime( $context );
- $this->assertGreaterThan( $mtimeHebrew, $mtimeHindi, "Hindi has recent timestamp than Hebrew" );
-
- // sleep for 1 second
- sleep( 1 );
- $request->setVal( 'lang', 'he' );
- $context = new ResourceLoaderContext( new ResourceLoader(), $request );
- $mtimeHebrewNew = $module->getModifiedTime( $context );
- $this->assertEquals( $mtimeHebrewNew, $mtimeHebrew, "Hebrew timestamp remained same" );
-
- // sleep for 1 second
- sleep( 1 );
- $request->setVal( 'lang', 'hi' );
- $context = new ResourceLoaderContext( new ResourceLoader(), $request );
- $mtimeHindiNew = $module->getModifiedTime( $context );
- $this->assertEquals( $mtimeHindi, $mtimeHindiNew, "Hindi timestamp remained same" );
- }
-}
diff --git a/MLEB/UniversalLanguageSelector/tests/qunit/ext.uls.tests.js b/MLEB/UniversalLanguageSelector/tests/qunit/ext.uls.tests.js
index db968513..4d7e428c 100644
--- a/MLEB/UniversalLanguageSelector/tests/qunit/ext.uls.tests.js
+++ b/MLEB/UniversalLanguageSelector/tests/qunit/ext.uls.tests.js
@@ -1,4 +1,4 @@
-/**
+/*!
* QUnit tests for ULS.
*
* Copyright (C) 2012 Alolita Sharma, Amir Aharoni, Arun Ganesh, Brandon Harris,
@@ -17,20 +17,16 @@
* @licence MIT License
*/
-( function ( $, mw ) {
+( function () {
'use strict';
QUnit.module( 'ext.uls', QUnit.newMwEnvironment() );
QUnit.test( 'Initial check', function ( assert ) {
- QUnit.expect( 1 );
-
assert.ok( $.fn.uls, '$.fn.uls is defined' );
} );
QUnit.test( 'Custom langdb', function ( assert ) {
- QUnit.expect( 1 );
-
// This is a custom non-standard language code used in MW.
// If it's not defined, then, for example,
// its direction cannot be acquired using the langdb utils.
@@ -38,17 +34,16 @@
} );
QUnit.test( 'User preferences', function ( assert ) {
- QUnit.expect( 2 );
+ var prefName, prefs, prefsToSave, readPrefs, done;
// 'gofanim' means "fonts" in Hebrew.
// Here it's used as a meaningless word, to test
// the preferences without changing anything useful.
- var prefName = 'gofanim',
- prefs = mw.uls.preferences(),
- prefsToSave = {},
- readPrefs;
+ prefName = 'gofanim';
+ prefs = mw.uls.preferences();
+ prefsToSave = {};
- prefsToSave[prefName] = {
+ prefsToSave[ prefName ] = {
fonts: {
qqy: 'Megafont'
}
@@ -58,21 +53,18 @@
readPrefs = prefs.get( prefName );
assert.strictEqual(
- readPrefs[prefName].fonts.qqy,
+ readPrefs[ prefName ].fonts.qqy,
'Megafont',
'Correct value for the font name'
);
- QUnit.stop();
+ done = assert.async();
prefs.save( function ( successSave ) {
- QUnit.start();
assert.ok( successSave, 'Options saving API did not produce an error.' );
-
// Delete old options
prefs.set( prefName, undefined );
- QUnit.stop();
prefs.save( function () {
- QUnit.start();
+ done();
} );
} );
} );
@@ -80,15 +72,13 @@
QUnit.test( 'Common languages', function ( assert ) {
var i, foundTagalog, languagesInPH;
- QUnit.expect( 1 );
-
// Bug 49847
foundTagalog = false;
languagesInPH = mw.uls.getFrequentLanguageList( 'PH' );
for ( i = 0; i < languagesInPH.length; i++ ) {
- if ( $.uls.data.isRedirect( languagesInPH[i] ) === 'tl' ||
- languagesInPH[i] === 'tl'
+ if ( $.uls.data.isRedirect( languagesInPH[ i ] ) === 'tl' ||
+ languagesInPH[ i ] === 'tl'
) {
foundTagalog = true;
@@ -100,4 +90,4 @@
'Tagalog is one of the languages presented to users in the Philippines.'
);
} );
-}( jQuery, mediaWiki ) );
+}() );
diff --git a/MLEB/UniversalLanguageSelector/tests/webfonts.html b/MLEB/UniversalLanguageSelector/tests/webfonts.html
index 6036915e..fbee034d 100644
--- a/MLEB/UniversalLanguageSelector/tests/webfonts.html
+++ b/MLEB/UniversalLanguageSelector/tests/webfonts.html
@@ -6,12 +6,12 @@
<meta name="description" content=""/>
<meta name="author" content="Santhosh Thottingal"/>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js"></script>
- <script src="../lib/jquery.webfonts.js"></script>
+ <script src="../lib/jquery.webfonts/src/jquery.webfonts.js"></script>
<script src="../lib/jquery.uls/src/jquery.uls.data.js"></script>
<script src="../lib/jquery.uls/src/jquery.uls.data.utils.js"></script>
<script src="../resources/js/ext.uls.webfonts.repository.js"></script>
<script>
- $( document ).ready( function () {
+ $( function () {
var $webfonts, fonts, languages, $fontSelector, $langselector;
$( 'div#webfonts-preview-area' ).webfonts( {
@@ -40,9 +40,9 @@
$langselector = $( 'select#language' );
function listFonts( fonts ) {
- $.merge( fonts, [ 'Sans', 'Serif' ] );
+ fonts.push( 'Sans', 'Serif' );
$fontSelector.find( 'option' ).remove();
- $.each( fonts, function ( key, font ) {
+ fonts.forEach( function ( font ) {
$fontSelector.append( $( "<option></option>" )
.attr( "value", font ).text( font ) );
} );
@@ -50,7 +50,7 @@
}
listFonts( fonts );
- $.each( languages, function ( lang, language ) {
+ languages.forEach( function ( language ) {
$langselector.append( $( "<option></option>" )
.attr( 'value', language )
.text( language + " - " + $.uls.data.getAutonym( language ) ) );
diff --git a/MLEB/UniversalLanguageSelector/vendor/autoload.php b/MLEB/UniversalLanguageSelector/vendor/autoload.php
deleted file mode 100644
index ab09e468..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/autoload.php
+++ /dev/null
@@ -1,7 +0,0 @@
-<?php
-
-// autoload.php @generated by Composer
-
-require_once __DIR__ . '/composer' . '/autoload_real.php';
-
-return ComposerAutoloaderInit1e651c2ad0e3fb349be86f6c492b17fe::getLoader();
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/ClassLoader.php b/MLEB/UniversalLanguageSelector/vendor/composer/ClassLoader.php
deleted file mode 100644
index 5e1469e8..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/ClassLoader.php
+++ /dev/null
@@ -1,413 +0,0 @@
-<?php
-
-/*
- * This file is part of Composer.
- *
- * (c) Nils Adermann <naderman@naderman.de>
- * Jordi Boggiano <j.boggiano@seld.be>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Composer\Autoload;
-
-/**
- * ClassLoader implements a PSR-0 class loader
- *
- * See https://github.com/php-fig/fig-standards/blob/master/accepted/PSR-0.md
- *
- * $loader = new \Composer\Autoload\ClassLoader();
- *
- * // register classes with namespaces
- * $loader->add('Symfony\Component', __DIR__.'/component');
- * $loader->add('Symfony', __DIR__.'/framework');
- *
- * // activate the autoloader
- * $loader->register();
- *
- * // to enable searching the include path (eg. for PEAR packages)
- * $loader->setUseIncludePath(true);
- *
- * In this example, if you try to use a class in the Symfony\Component
- * namespace or one of its children (Symfony\Component\Console for instance),
- * the autoloader will first look for the class under the component/
- * directory, and it will then fallback to the framework/ directory if not
- * found before giving up.
- *
- * This class is loosely based on the Symfony UniversalClassLoader.
- *
- * @author Fabien Potencier <fabien@symfony.com>
- * @author Jordi Boggiano <j.boggiano@seld.be>
- */
-class ClassLoader
-{
- // PSR-4
- private $prefixLengthsPsr4 = array();
- private $prefixDirsPsr4 = array();
- private $fallbackDirsPsr4 = array();
-
- // PSR-0
- private $prefixesPsr0 = array();
- private $fallbackDirsPsr0 = array();
-
- private $useIncludePath = false;
- private $classMap = array();
-
- private $classMapAuthoritative = false;
-
- public function getPrefixes()
- {
- if (!empty($this->prefixesPsr0)) {
- return call_user_func_array('array_merge', $this->prefixesPsr0);
- }
-
- return array();
- }
-
- public function getPrefixesPsr4()
- {
- return $this->prefixDirsPsr4;
- }
-
- public function getFallbackDirs()
- {
- return $this->fallbackDirsPsr0;
- }
-
- public function getFallbackDirsPsr4()
- {
- return $this->fallbackDirsPsr4;
- }
-
- public function getClassMap()
- {
- return $this->classMap;
- }
-
- /**
- * @param array $classMap Class to filename map
- */
- public function addClassMap(array $classMap)
- {
- if ($this->classMap) {
- $this->classMap = array_merge($this->classMap, $classMap);
- } else {
- $this->classMap = $classMap;
- }
- }
-
- /**
- * Registers a set of PSR-0 directories for a given prefix, either
- * appending or prepending to the ones previously set for this prefix.
- *
- * @param string $prefix The prefix
- * @param array|string $paths The PSR-0 root directories
- * @param bool $prepend Whether to prepend the directories
- */
- public function add($prefix, $paths, $prepend = false)
- {
- if (!$prefix) {
- if ($prepend) {
- $this->fallbackDirsPsr0 = array_merge(
- (array) $paths,
- $this->fallbackDirsPsr0
- );
- } else {
- $this->fallbackDirsPsr0 = array_merge(
- $this->fallbackDirsPsr0,
- (array) $paths
- );
- }
-
- return;
- }
-
- $first = $prefix[0];
- if (!isset($this->prefixesPsr0[$first][$prefix])) {
- $this->prefixesPsr0[$first][$prefix] = (array) $paths;
-
- return;
- }
- if ($prepend) {
- $this->prefixesPsr0[$first][$prefix] = array_merge(
- (array) $paths,
- $this->prefixesPsr0[$first][$prefix]
- );
- } else {
- $this->prefixesPsr0[$first][$prefix] = array_merge(
- $this->prefixesPsr0[$first][$prefix],
- (array) $paths
- );
- }
- }
-
- /**
- * Registers a set of PSR-4 directories for a given namespace, either
- * appending or prepending to the ones previously set for this namespace.
- *
- * @param string $prefix The prefix/namespace, with trailing '\\'
- * @param array|string $paths The PSR-0 base directories
- * @param bool $prepend Whether to prepend the directories
- *
- * @throws \InvalidArgumentException
- */
- public function addPsr4($prefix, $paths, $prepend = false)
- {
- if (!$prefix) {
- // Register directories for the root namespace.
- if ($prepend) {
- $this->fallbackDirsPsr4 = array_merge(
- (array) $paths,
- $this->fallbackDirsPsr4
- );
- } else {
- $this->fallbackDirsPsr4 = array_merge(
- $this->fallbackDirsPsr4,
- (array) $paths
- );
- }
- } elseif (!isset($this->prefixDirsPsr4[$prefix])) {
- // Register directories for a new namespace.
- $length = strlen($prefix);
- if ('\\' !== $prefix[$length - 1]) {
- throw new \InvalidArgumentException("A non-empty PSR-4 prefix must end with a namespace separator.");
- }
- $this->prefixLengthsPsr4[$prefix[0]][$prefix] = $length;
- $this->prefixDirsPsr4[$prefix] = (array) $paths;
- } elseif ($prepend) {
- // Prepend directories for an already registered namespace.
- $this->prefixDirsPsr4[$prefix] = array_merge(
- (array) $paths,
- $this->prefixDirsPsr4[$prefix]
- );
- } else {
- // Append directories for an already registered namespace.
- $this->prefixDirsPsr4[$prefix] = array_merge(
- $this->prefixDirsPsr4[$prefix],
- (array) $paths
- );
- }
- }
-
- /**
- * Registers a set of PSR-0 directories for a given prefix,
- * replacing any others previously set for this prefix.
- *
- * @param string $prefix The prefix
- * @param array|string $paths The PSR-0 base directories
- */
- public function set($prefix, $paths)
- {
- if (!$prefix) {
- $this->fallbackDirsPsr0 = (array) $paths;
- } else {
- $this->prefixesPsr0[$prefix[0]][$prefix] = (array) $paths;
- }
- }
-
- /**
- * Registers a set of PSR-4 directories for a given namespace,
- * replacing any others previously set for this namespace.
- *
- * @param string $prefix The prefix/namespace, with trailing '\\'
- * @param array|string $paths The PSR-4 base directories
- *
- * @throws \InvalidArgumentException
- */
- public function setPsr4($prefix, $paths)
- {
- if (!$prefix) {
- $this->fallbackDirsPsr4 = (array) $paths;
- } else {
- $length = strlen($prefix);
- if ('\\' !== $prefix[$length - 1]) {
- throw new \InvalidArgumentException("A non-empty PSR-4 prefix must end with a namespace separator.");
- }
- $this->prefixLengthsPsr4[$prefix[0]][$prefix] = $length;
- $this->prefixDirsPsr4[$prefix] = (array) $paths;
- }
- }
-
- /**
- * Turns on searching the include path for class files.
- *
- * @param bool $useIncludePath
- */
- public function setUseIncludePath($useIncludePath)
- {
- $this->useIncludePath = $useIncludePath;
- }
-
- /**
- * Can be used to check if the autoloader uses the include path to check
- * for classes.
- *
- * @return bool
- */
- public function getUseIncludePath()
- {
- return $this->useIncludePath;
- }
-
- /**
- * Turns off searching the prefix and fallback directories for classes
- * that have not been registered with the class map.
- *
- * @param bool $classMapAuthoritative
- */
- public function setClassMapAuthoritative($classMapAuthoritative)
- {
- $this->classMapAuthoritative = $classMapAuthoritative;
- }
-
- /**
- * Should class lookup fail if not found in the current class map?
- *
- * @return bool
- */
- public function isClassMapAuthoritative()
- {
- return $this->classMapAuthoritative;
- }
-
- /**
- * Registers this instance as an autoloader.
- *
- * @param bool $prepend Whether to prepend the autoloader or not
- */
- public function register($prepend = false)
- {
- spl_autoload_register(array($this, 'loadClass'), true, $prepend);
- }
-
- /**
- * Unregisters this instance as an autoloader.
- */
- public function unregister()
- {
- spl_autoload_unregister(array($this, 'loadClass'));
- }
-
- /**
- * Loads the given class or interface.
- *
- * @param string $class The name of the class
- * @return bool|null True if loaded, null otherwise
- */
- public function loadClass($class)
- {
- if ($file = $this->findFile($class)) {
- includeFile($file);
-
- return true;
- }
- }
-
- /**
- * Finds the path to the file where the class is defined.
- *
- * @param string $class The name of the class
- *
- * @return string|false The path if found, false otherwise
- */
- public function findFile($class)
- {
- // work around for PHP 5.3.0 - 5.3.2 https://bugs.php.net/50731
- if ('\\' == $class[0]) {
- $class = substr($class, 1);
- }
-
- // class map lookup
- if (isset($this->classMap[$class])) {
- return $this->classMap[$class];
- }
- if ($this->classMapAuthoritative) {
- return false;
- }
-
- $file = $this->findFileWithExtension($class, '.php');
-
- // Search for Hack files if we are running on HHVM
- if ($file === null && defined('HHVM_VERSION')) {
- $file = $this->findFileWithExtension($class, '.hh');
- }
-
- if ($file === null) {
- // Remember that this class does not exist.
- return $this->classMap[$class] = false;
- }
-
- return $file;
- }
-
- private function findFileWithExtension($class, $ext)
- {
- // PSR-4 lookup
- $logicalPathPsr4 = strtr($class, '\\', DIRECTORY_SEPARATOR) . $ext;
-
- $first = $class[0];
- if (isset($this->prefixLengthsPsr4[$first])) {
- foreach ($this->prefixLengthsPsr4[$first] as $prefix => $length) {
- if (0 === strpos($class, $prefix)) {
- foreach ($this->prefixDirsPsr4[$prefix] as $dir) {
- if (file_exists($file = $dir . DIRECTORY_SEPARATOR . substr($logicalPathPsr4, $length))) {
- return $file;
- }
- }
- }
- }
- }
-
- // PSR-4 fallback dirs
- foreach ($this->fallbackDirsPsr4 as $dir) {
- if (file_exists($file = $dir . DIRECTORY_SEPARATOR . $logicalPathPsr4)) {
- return $file;
- }
- }
-
- // PSR-0 lookup
- if (false !== $pos = strrpos($class, '\\')) {
- // namespaced class name
- $logicalPathPsr0 = substr($logicalPathPsr4, 0, $pos + 1)
- . strtr(substr($logicalPathPsr4, $pos + 1), '_', DIRECTORY_SEPARATOR);
- } else {
- // PEAR-like class name
- $logicalPathPsr0 = strtr($class, '_', DIRECTORY_SEPARATOR) . $ext;
- }
-
- if (isset($this->prefixesPsr0[$first])) {
- foreach ($this->prefixesPsr0[$first] as $prefix => $dirs) {
- if (0 === strpos($class, $prefix)) {
- foreach ($dirs as $dir) {
- if (file_exists($file = $dir . DIRECTORY_SEPARATOR . $logicalPathPsr0)) {
- return $file;
- }
- }
- }
- }
- }
-
- // PSR-0 fallback dirs
- foreach ($this->fallbackDirsPsr0 as $dir) {
- if (file_exists($file = $dir . DIRECTORY_SEPARATOR . $logicalPathPsr0)) {
- return $file;
- }
- }
-
- // PSR-0 include paths.
- if ($this->useIncludePath && $file = stream_resolve_include_path($logicalPathPsr0)) {
- return $file;
- }
- }
-}
-
-/**
- * Scope isolated include.
- *
- * Prevents access to $this/self from included files.
- */
-function includeFile($file)
-{
- include $file;
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/autoload_classmap.php b/MLEB/UniversalLanguageSelector/vendor/composer/autoload_classmap.php
deleted file mode 100644
index 7a91153b..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/autoload_classmap.php
+++ /dev/null
@@ -1,9 +0,0 @@
-<?php
-
-// autoload_classmap.php @generated by Composer
-
-$vendorDir = dirname(dirname(__FILE__));
-$baseDir = dirname($vendorDir);
-
-return array(
-);
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/autoload_namespaces.php b/MLEB/UniversalLanguageSelector/vendor/composer/autoload_namespaces.php
deleted file mode 100644
index 38f805f9..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/autoload_namespaces.php
+++ /dev/null
@@ -1,10 +0,0 @@
-<?php
-
-// autoload_namespaces.php @generated by Composer
-
-$vendorDir = dirname(dirname(__FILE__));
-$baseDir = dirname($vendorDir);
-
-return array(
- 'Composer\\Installers\\' => array($vendorDir . '/composer/installers/src'),
-);
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/autoload_psr4.php b/MLEB/UniversalLanguageSelector/vendor/composer/autoload_psr4.php
deleted file mode 100644
index b265c64a..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/autoload_psr4.php
+++ /dev/null
@@ -1,9 +0,0 @@
-<?php
-
-// autoload_psr4.php @generated by Composer
-
-$vendorDir = dirname(dirname(__FILE__));
-$baseDir = dirname($vendorDir);
-
-return array(
-);
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/autoload_real.php b/MLEB/UniversalLanguageSelector/vendor/composer/autoload_real.php
deleted file mode 100644
index c2609c12..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/autoload_real.php
+++ /dev/null
@@ -1,50 +0,0 @@
-<?php
-
-// autoload_real.php @generated by Composer
-
-class ComposerAutoloaderInit1e651c2ad0e3fb349be86f6c492b17fe
-{
- private static $loader;
-
- public static function loadClassLoader($class)
- {
- if ('Composer\Autoload\ClassLoader' === $class) {
- require __DIR__ . '/ClassLoader.php';
- }
- }
-
- public static function getLoader()
- {
- if (null !== self::$loader) {
- return self::$loader;
- }
-
- spl_autoload_register(array('ComposerAutoloaderInit1e651c2ad0e3fb349be86f6c492b17fe', 'loadClassLoader'), true, true);
- self::$loader = $loader = new \Composer\Autoload\ClassLoader();
- spl_autoload_unregister(array('ComposerAutoloaderInit1e651c2ad0e3fb349be86f6c492b17fe', 'loadClassLoader'));
-
- $map = require __DIR__ . '/autoload_namespaces.php';
- foreach ($map as $namespace => $path) {
- $loader->set($namespace, $path);
- }
-
- $map = require __DIR__ . '/autoload_psr4.php';
- foreach ($map as $namespace => $path) {
- $loader->setPsr4($namespace, $path);
- }
-
- $classMap = require __DIR__ . '/autoload_classmap.php';
- if ($classMap) {
- $loader->addClassMap($classMap);
- }
-
- $loader->register(true);
-
- return $loader;
- }
-}
-
-function composerRequire1e651c2ad0e3fb349be86f6c492b17fe($file)
-{
- require $file;
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installed.json b/MLEB/UniversalLanguageSelector/vendor/composer/installed.json
deleted file mode 100644
index 19e58da8..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installed.json
+++ /dev/null
@@ -1,102 +0,0 @@
-[
- {
- "name": "composer/installers",
- "version": "v1.0.22",
- "version_normalized": "1.0.22.0",
- "source": {
- "type": "git",
- "url": "https://github.com/composer/installers.git",
- "reference": "bd9b14f094c89c8b5804a4e41edeb7853bb85046"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/composer/installers/zipball/bd9b14f094c89c8b5804a4e41edeb7853bb85046",
- "reference": "bd9b14f094c89c8b5804a4e41edeb7853bb85046",
- "shasum": ""
- },
- "require": {
- "composer-plugin-api": "1.0.0"
- },
- "replace": {
- "roundcube/plugin-installer": "*",
- "shama/baton": "*"
- },
- "require-dev": {
- "composer/composer": "1.0.*@dev",
- "phpunit/phpunit": "4.1.*"
- },
- "time": "2015-10-29 23:28:48",
- "type": "composer-plugin",
- "extra": {
- "class": "Composer\\Installers\\Plugin",
- "branch-alias": {
- "dev-master": "1.0-dev"
- }
- },
- "installation-source": "dist",
- "autoload": {
- "psr-0": {
- "Composer\\Installers\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Kyle Robinson Young",
- "email": "kyle@dontkry.com",
- "homepage": "https://github.com/shama"
- }
- ],
- "description": "A multi-framework Composer library installer",
- "homepage": "http://composer.github.com/installers/",
- "keywords": [
- "Craft",
- "Dolibarr",
- "Hurad",
- "MODX Evo",
- "OXID",
- "SMF",
- "Thelia",
- "WolfCMS",
- "agl",
- "aimeos",
- "annotatecms",
- "bitrix",
- "cakephp",
- "chef",
- "codeigniter",
- "concrete5",
- "croogo",
- "dokuwiki",
- "drupal",
- "elgg",
- "fuelphp",
- "grav",
- "installer",
- "joomla",
- "kohana",
- "laravel",
- "lithium",
- "magento",
- "mako",
- "mediawiki",
- "modulework",
- "moodle",
- "phpbb",
- "piwik",
- "ppi",
- "puppet",
- "roundcube",
- "shopware",
- "silverstripe",
- "symfony",
- "typo3",
- "wordpress",
- "zend",
- "zikula"
- ]
- }
-]
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/.editorconfig b/MLEB/UniversalLanguageSelector/vendor/composer/installers/.editorconfig
deleted file mode 100644
index 153cf3ef..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/.editorconfig
+++ /dev/null
@@ -1,10 +0,0 @@
-; top-most EditorConfig file
-root = true
-
-; Unix-style newlines
-[*]
-end_of_line = LF
-
-[*.php]
-indent_style = space
-indent_size = 4
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/.gitignore b/MLEB/UniversalLanguageSelector/vendor/composer/installers/.gitignore
deleted file mode 100644
index ff7f293d..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/.gitignore
+++ /dev/null
@@ -1,3 +0,0 @@
-vendor/
-composer.lock
-.idea/
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/.travis.yml b/MLEB/UniversalLanguageSelector/vendor/composer/installers/.travis.yml
deleted file mode 100644
index dc4ecf4c..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/.travis.yml
+++ /dev/null
@@ -1,21 +0,0 @@
-language: php
-
-php:
- - 5.3
- - 5.4
- - 5.5
- - 5.6
- - 7.0
- - hhvm
-
-matrix:
- fast_finish: true
- allow_failures:
- - php: 7.0
-
-before_script:
- - composer self-update
- - composer install
-
-script:
- - phpunit
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/LICENSE b/MLEB/UniversalLanguageSelector/vendor/composer/installers/LICENSE
deleted file mode 100644
index 85f97fc7..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/LICENSE
+++ /dev/null
@@ -1,19 +0,0 @@
-Copyright (c) 2012 Kyle Robinson Young
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is furnished
-to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE. \ No newline at end of file
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/README.md b/MLEB/UniversalLanguageSelector/vendor/composer/installers/README.md
deleted file mode 100644
index 3a9664e2..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/README.md
+++ /dev/null
@@ -1,193 +0,0 @@
-# A Multi-Framework [Composer](http://getcomposer.org) Library Installer
-
-[![Build Status](http://img.shields.io/travis/composer/installers.svg)](http://travis-ci.org/composer/installers)
-
-This is for PHP package authors to require in their `composer.json`. It will
-install their package to the correct location based on the specified package
-type.
-
-The goal of `installers` is to be a simple package type to install path map.
-Users can also customize the install path per package and package authors can
-modify the package name upon installing.
-
-`installers` isn't intended on replacing all custom installers. If your
-package requires special installation handling then by all means, create a
-custom installer to handle it.
-
-**Natively Supported Frameworks**:
-
-The following frameworks natively work with Composer and will be
-installed to the default `vendor` directory. `composer/installers`
-is not needed to install packages with these frameworks:
-
-* Aura
-* Symfony2
-* Yii
-* Yii2
-
-**Current Supported Package Types**:
-
-> Stable types are marked as **bold**, this means that installation paths
-> for those type will not be changed. Any adjustment for those types would
-> require creation of brand new type that will cover required changes.
-
-| Framework | Types
-| --------- | -----
-| Aimeos | `aimeos-extension`
-| Asgard | `asgard-module`<br>`asgard-theme`
-| AGL | `agl-module`
-| Bonefish | `bonefish-package`
-| AnnotateCms | `annotatecms-module`<br>`annotatecms-component`<br>`annotatecms-service`
-| Bitrix | `bitrix-module`<br>`bitrix-component`<br>`bitrix-theme`
-| CakePHP 2+ | **`cakephp-plugin`**
-| Chef | `chef-cookbook`<br>`chef-role`
-| CCFramework | `ccframework-ship`<br>`ccframework-theme`
-| CodeIgniter | `codeigniter-library`<br>`codeigniter-third-party`<br>`codeigniter-module`
-| concrete5 | `concrete5-block`<br>`concrete5-package`<br>`concrete5-theme`<br>`concrete5-update`
-| Craft | `craft-plugin`
-| Croogo | `croogo-plugin`<br>`croogo-theme`
-| DokuWiki | `dokuwiki-plugin`<br>`dokuwiki-template`
-| Dolibarr | `dolibarr-module`
-| Drupal | <b>`drupal-module`<br>`drupal-theme`</b><br>`drupal-library`<br>`drupal-profile`<br>`drupal-drush`
-| Elgg | `elgg-plugin`
-| FuelPHP v1.x | `fuel-module`<br>`fuel-package`<br/>`fuel-theme`
-| FuelPHP v2.x | `fuelphp-component`
-| Grav | `grav-plugin`<br>`grav-theme`
-| Hurad | `hurad-plugin`<br>`hurad-theme`
-| Joomla | `joomla-component`<br>`joomla-module`<br>`joomla-template`<br>`joomla-plugin`<br>`joomla-library`
-| Kirby | **`kirby-plugin`**
-| KodiCMS | `kodicms-plugin`<br>`kodicms-media`
-| Kohana | **`kohana-module`**
-| Laravel | `laravel-library`
-| Lithium | **`lithium-library`<br>`lithium-source`**
-| Magento | `magento-library`<br>`magento-skin`<br>`magento-theme`
-| Mako | `mako-package`
-| MODX Evo | `modxevo-snippet`<br>`modxevo-plugin`<br>`modxevo-module`<br>`modxevo-template`<br>`modxevo-lib`
-| MediaWiki | `mediawiki-extension`
-| October | **`october-module`<br>`october-plugin`<br>`october-theme`**
-| OXID | `oxid-module`<br>`oxid-theme`<br>`oxid-out`
-| MODULEWork | `modulework-module`
-| Moodle | `moodle-*` (Please [check source](https://raw.githubusercontent.com/composer/installers/master/src/Composer/Installers/MoodleInstaller.php) for all supported types)
-| Piwik | `piwik-plugin`
-| phpBB | `phpbb-extension`<br>`phpbb-style`<br>`phpbb-language`
-| Pimcore | `pimcore-plugin`
-| PPI | **`ppi-module`**
-| Puppet | `puppet-module`
-| REDAXO | `redaxo-addon`
-| Roundcube | `roundcube-plugin`
-| shopware | `shopware-backend-plugin`<br/>`shopware-core-plugin`<br/>`shopware-frontend-plugin`<br/>`shopware-theme`
-| SilverStripe | `silverstripe-module`<br>`silverstripe-theme`
-| SMF | `smf-module`<br>`smf-theme`
-| symfony1 | **`symfony1-plugin`**
-| Tusk | `tusk-task`<br>`tusk-command`<br>`tusk-asset`
-| TYPO3 Flow | `typo3-flow-package`<br>`typo3-flow-framework`<br>`typo3-flow-plugin`<br>`typo3-flow-site`<br>`typo3-flow-boilerplate`<br>`typo3-flow-build`
-| TYPO3 CMS | `typo3-cms-extension`
-| Wolf CMS | `wolfcms-plugin`
-| WordPress | <b>`wordpress-plugin`<br>`wordpress-theme`</b><br>`wordpress-muplugin`
-| Zend | `zend-library`<br>`zend-extra`<br>`zend-module`
-| Zikula | `zikula-module`<br>`zikula-theme`
-| Prestashop | `prestashop-module`<br>`prestashop-theme`
-
-## Example `composer.json` File
-
-This is an example for a CakePHP plugin. The only important parts to set in your
-composer.json file are `"type": "cakephp-plugin"` which describes what your
-package is and `"require": { "composer/installers": "~1.0" }` which tells composer
-to load the custom installers.
-
-```json
-{
- "name": "you/ftp",
- "type": "cakephp-plugin",
- "require": {
- "composer/installers": "~1.0"
- }
-}
-```
-
-This would install your package to the `Plugin/Ftp/` folder of a CakePHP app
-when a user runs `php composer.phar install`.
-
-So submit your packages to [packagist.org](http://packagist.org)!
-
-## Custom Install Paths
-
-If you are consuming a package that uses the `composer/installers` you can
-override the install path with the following extra in your `composer.json`:
-
-```json
-{
- "extra": {
- "installer-paths": {
- "your/custom/path/{$name}/": ["shama/ftp", "vendor/package"]
- }
- }
-}
-```
-
-A package type can have a custom installation path with a `type:` prefix.
-
-``` json
-{
- "extra": {
- "installer-paths": {
- "your/custom/path/{$name}/": ["type:wordpress-plugin"]
- }
- }
-}
-```
-
-This would use your custom path for each of the listed packages. The available
-variables to use in your paths are: `{$name}`, `{$vendor}`, `{$type}`.
-
-## Custom Install Names
-
-If you're a package author and need your package to be named differently when
-installed consider using the `installer-name` extra.
-
-For example you have a package named `shama/cakephp-ftp` with the type
-`cakephp-plugin`. Installing with `composer/installers` would install to the
-path `Plugin/CakephpFtp`. Due to the strict naming conventions, you as a
-package author actually need the package to be named and installed to
-`Plugin/Ftp`. Using the following config within your **package** `composer.json`
-will allow this:
-
-```json
-{
- "name": "shama/cakephp-ftp",
- "type": "cakephp-plugin",
- "extra": {
- "installer-name": "Ftp"
- }
-}
-```
-
-Please note the name entered into `installer-name` will be the final and will
-not be inflected.
-
-## Contribute!
-
-* [Fork and clone](https://help.github.com/articles/fork-a-repo).
-* Run the command `php composer.phar install` to install the dependencies.
- This will also install the dev dependencies. See [Composer](https://getcomposer.org/doc/03-cli.md#install).
-* Use the command `phpunit` to run the tests. See [PHPUnit](http://phpunit.de).
-* Create a branch, commit, push and send us a
- [pull request](https://help.github.com/articles/using-pull-requests).
-
-To ensure a consistent code base, you should make sure the code follows the
-[Coding Standards](http://symfony.com/doc/2.0/contributing/code/standards.html)
-which we borrowed from Symfony.
-
-If you would like to help, please take a look at the list of
-[issues](https://github.com/composer/installers/issues).
-
-### Should we allow dynamic package types or paths? No.
-What are they? The ability for a package author to determine where a package
-will be installed either through setting the path directly in their
-`composer.json` or through a dynamic package type: `"type":
-"framework-install-here"`.
-
-It has been proposed many times. Even implemented once early on and then
-removed. `installers` won't do this because it would allow a single package
-author to wipe out entire folders without the user's consent. That user would
-then come here to yell at us.
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/composer.json b/MLEB/UniversalLanguageSelector/vendor/composer/installers/composer.json
deleted file mode 100644
index 19e5f0fb..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/composer.json
+++ /dev/null
@@ -1,80 +0,0 @@
-{
- "name": "composer/installers",
- "type": "composer-plugin",
- "license": "MIT",
- "description": "A multi-framework Composer library installer",
- "keywords": [
- "installer",
- "Aimeos",
- "AGL",
- "AnnotateCms",
- "Bitrix",
- "CakePHP",
- "Chef",
- "CodeIgniter",
- "concrete5",
- "Craft",
- "Croogo",
- "DokuWiki",
- "Dolibarr",
- "Drupal",
- "Elgg",
- "FuelPHP",
- "Grav",
- "Hurad",
- "Joomla",
- "Kohana",
- "Laravel",
- "Lithium",
- "Magento",
- "Mako",
- "MODX Evo",
- "MediaWiki",
- "OXID",
- "MODULEWork",
- "Moodle",
- "Piwik",
- "phpBB",
- "PPI",
- "Puppet",
- "Roundcube",
- "shopware",
- "SilverStripe",
- "SMF",
- "symfony",
- "Thelia",
- "TYPO3",
- "WolfCMS",
- "WordPress",
- "Zend",
- "Zikula"
- ],
- "homepage": "http://composer.github.com/installers/",
- "authors": [
- {
- "name": "Kyle Robinson Young",
- "email": "kyle@dontkry.com",
- "homepage": "https://github.com/shama"
- }
- ],
- "autoload": {
- "psr-0": { "Composer\\Installers\\": "src/" }
- },
- "extra": {
- "class": "Composer\\Installers\\Plugin",
- "branch-alias": {
- "dev-master": "1.0-dev"
- }
- },
- "replace": {
- "shama/baton": "*",
- "roundcube/plugin-installer": "*"
- },
- "require": {
- "composer-plugin-api": "1.0.0"
- },
- "require-dev": {
- "composer/composer": "1.0.*@dev",
- "phpunit/phpunit": "4.1.*"
- }
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/phpunit.xml.dist b/MLEB/UniversalLanguageSelector/vendor/composer/installers/phpunit.xml.dist
deleted file mode 100644
index cc5cc991..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/phpunit.xml.dist
+++ /dev/null
@@ -1,25 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<phpunit backupGlobals="false"
- backupStaticAttributes="false"
- colors="true"
- convertErrorsToExceptions="true"
- convertNoticesToExceptions="true"
- convertWarningsToExceptions="true"
- processIsolation="false"
- stopOnFailure="false"
- syntaxCheck="false"
- bootstrap="tests/bootstrap.php"
->
- <testsuites>
- <testsuite name="Installers Test Suite">
- <directory>tests/Composer/Installers</directory>
- </testsuite>
- </testsuites>
-
- <filter>
- <whitelist>
- <directory>src/Composer/Installers</directory>
- </whitelist>
- </filter>
-</phpunit> \ No newline at end of file
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/AglInstaller.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/AglInstaller.php
deleted file mode 100644
index 01b8a416..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/AglInstaller.php
+++ /dev/null
@@ -1,21 +0,0 @@
-<?php
-namespace Composer\Installers;
-
-class AglInstaller extends BaseInstaller
-{
- protected $locations = array(
- 'module' => 'More/{$name}/',
- );
-
- /**
- * Format package name to CamelCase
- */
- public function inflectPackageVars($vars)
- {
- $vars['name'] = preg_replace_callback('/(?:^|_|-)(.?)/', function ($matches) {
- return strtoupper($matches[1]);
- }, $vars['name']);
-
- return $vars;
- }
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/AimeosInstaller.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/AimeosInstaller.php
deleted file mode 100644
index 79a0e958..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/AimeosInstaller.php
+++ /dev/null
@@ -1,9 +0,0 @@
-<?php
-namespace Composer\Installers;
-
-class AimeosInstaller extends BaseInstaller
-{
- protected $locations = array(
- 'extension' => 'ext/{$name}/',
- );
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/AnnotateCmsInstaller.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/AnnotateCmsInstaller.php
deleted file mode 100644
index 89d7ad90..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/AnnotateCmsInstaller.php
+++ /dev/null
@@ -1,11 +0,0 @@
-<?php
-namespace Composer\Installers;
-
-class AnnotateCmsInstaller extends BaseInstaller
-{
- protected $locations = array(
- 'module' => 'addons/modules/{$name}/',
- 'component' => 'addons/components/{$name}/',
- 'service' => 'addons/services/{$name}/',
- );
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/AsgardInstaller.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/AsgardInstaller.php
deleted file mode 100644
index 995ee2b4..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/AsgardInstaller.php
+++ /dev/null
@@ -1,45 +0,0 @@
-<?php
-namespace Composer\Installers;
-
-class AsgardInstaller extends BaseInstaller
-{
- protected $locations = array(
- 'module' => 'Modules/{$name}/',
- 'theme' => 'Themes/{$name}/'
- );
-
- /**
- * Format package name.
- *
- * For package type asgard-module, cut off a trailing '-plugin' if present.
- *
- * For package type asgard-theme, cut off a trailing '-theme' if present.
- *
- */
- public function inflectPackageVars($vars)
- {
- if ($vars['type'] === 'asgard-module') {
- return $this->inflectPluginVars($vars);
- }
-
- if ($vars['type'] === 'asgard-theme') {
- return $this->inflectThemeVars($vars);
- }
-
- return $vars;
- }
-
- protected function inflectPluginVars($vars)
- {
- $vars['name'] = ucfirst(preg_replace('/-module/', '', $vars['name']));
-
- return $vars;
- }
-
- protected function inflectThemeVars($vars)
- {
- $vars['name'] = ucfirst(preg_replace('/-theme$/', '', $vars['name']));
-
- return $vars;
- }
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/BaseInstaller.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/BaseInstaller.php
deleted file mode 100644
index 43938ec5..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/BaseInstaller.php
+++ /dev/null
@@ -1,135 +0,0 @@
-<?php
-namespace Composer\Installers;
-
-use Composer\IO\IOInterface;
-use Composer\Composer;
-use Composer\Package\PackageInterface;
-
-abstract class BaseInstaller
-{
- protected $locations = array();
- protected $composer;
- protected $package;
- protected $io;
-
- /**
- * Initializes base installer.
- *
- * @param PackageInterface $package
- * @param Composer $composer
- * @param IOInterface $io
- */
- public function __construct(PackageInterface $package = null, Composer $composer = null, IOInterface $io = null)
- {
- $this->composer = $composer;
- $this->package = $package;
- $this->io = $io;
- }
-
- /**
- * Return the install path based on package type.
- *
- * @param PackageInterface $package
- * @param string $frameworkType
- * @return string
- */
- public function getInstallPath(PackageInterface $package, $frameworkType = '')
- {
- $type = $this->package->getType();
-
- $prettyName = $this->package->getPrettyName();
- if (strpos($prettyName, '/') !== false) {
- list($vendor, $name) = explode('/', $prettyName);
- } else {
- $vendor = '';
- $name = $prettyName;
- }
-
- $availableVars = $this->inflectPackageVars(compact('name', 'vendor', 'type'));
-
- $extra = $package->getExtra();
- if (!empty($extra['installer-name'])) {
- $availableVars['name'] = $extra['installer-name'];
- }
-
- if ($this->composer->getPackage()) {
- $extra = $this->composer->getPackage()->getExtra();
- if (!empty($extra['installer-paths'])) {
- $customPath = $this->mapCustomInstallPaths($extra['installer-paths'], $prettyName, $type);
- if ($customPath !== false) {
- return $this->templatePath($customPath, $availableVars);
- }
- }
- }
-
- $packageType = substr($type, strlen($frameworkType) + 1);
- $locations = $this->getLocations();
- if (!isset($locations[$packageType])) {
- throw new \InvalidArgumentException(sprintf('Package type "%s" is not supported', $type));
- }
-
- return $this->templatePath($locations[$packageType], $availableVars);
- }
-
- /**
- * For an installer to override to modify the vars per installer.
- *
- * @param array $vars
- * @return array
- */
- public function inflectPackageVars($vars)
- {
- return $vars;
- }
-
- /**
- * Gets the installer's locations
- *
- * @return array
- */
- public function getLocations()
- {
- return $this->locations;
- }
-
- /**
- * Replace vars in a path
- *
- * @param string $path
- * @param array $vars
- * @return string
- */
- protected function templatePath($path, array $vars = array())
- {
- if (strpos($path, '{') !== false) {
- extract($vars);
- preg_match_all('@\{\$([A-Za-z0-9_]*)\}@i', $path, $matches);
- if (!empty($matches[1])) {
- foreach ($matches[1] as $var) {
- $path = str_replace('{$' . $var . '}', $$var, $path);
- }
- }
- }
-
- return $path;
- }
-
- /**
- * Search through a passed paths array for a custom install path.
- *
- * @param array $paths
- * @param string $name
- * @param string $type
- * @return string
- */
- protected function mapCustomInstallPaths(array $paths, $name, $type)
- {
- foreach ($paths as $path => $names) {
- if (in_array($name, $names) || in_array('type:' . $type, $names)) {
- return $path;
- }
- }
-
- return false;
- }
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/BitrixInstaller.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/BitrixInstaller.php
deleted file mode 100644
index 9c79838f..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/BitrixInstaller.php
+++ /dev/null
@@ -1,89 +0,0 @@
-<?php
-namespace Composer\Installers;
-
-use Composer\Util\Filesystem;
-
-/**
- * Installer for Bitrix Framework
- *
- * @author Nik Samokhvalov <nik@samokhvalov.info>
- * @author Denis Kulichkin <onexhovia@gmail.com>
- */
-class BitrixInstaller extends BaseInstaller
-{
- protected $locations = array(
- 'module' => 'bitrix/modules/{$name}/',
- 'component' => 'bitrix/components/{$name}/',
- 'theme' => 'bitrix/templates/{$name}/',
- );
-
- /**
- * @var array Storage for informations about duplicates at all the time of installation packages
- */
- private static $checkedDuplicates = array();
-
- /**
- * {@inheritdoc}
- */
- protected function templatePath($path, array $vars = array())
- {
- $templatePath = parent::templatePath($path, $vars);
- $this->checkDuplicates($templatePath, $vars);
-
- return $templatePath;
- }
-
- /**
- * Duplicates search packages
- *
- * @param string $templatePath
- * @param array $vars
- */
- protected function checkDuplicates($templatePath, array $vars = array())
- {
- /**
- * Incorrect paths for backward compatibility
- */
- $oldLocations = array(
- 'module' => 'local/modules/{$name}/',
- 'component' => 'local/components/{$name}/',
- 'theme' => 'local/templates/{$name}/'
- );
-
- $packageType = substr($vars['type'], strlen('bitrix') + 1);
- $oldLocation = str_replace('{$name}', $vars['name'], $oldLocations[$packageType]);
-
- if (in_array($oldLocation, static::$checkedDuplicates)) {
- return;
- }
-
- if ($oldLocation !== $templatePath && file_exists($oldLocation) && $this->io && $this->io->isInteractive()) {
-
- $this->io->writeError(' <error>Duplication of packages:</error>');
- $this->io->writeError(' <info>Package ' . $oldLocation . ' will be called instead package ' . $templatePath . '</info>');
-
- while (true) {
- switch ($this->io->ask(' <info>Delete ' . $oldLocation . ' [y,n,?]?</info> ', '?')) {
- case 'y':
- $fs = new Filesystem();
- $fs->removeDirectory($oldLocation);
- break 2;
-
- case 'n':
- break 2;
-
- case '?':
- default:
- $this->io->writeError(array(
- ' y - delete package ' . $oldLocation . ' and to continue with the installation',
- ' n - don\'t delete and to continue with the installation',
- ));
- $this->io->writeError(' ? - print help');
- break;
- }
- }
- }
-
- static::$checkedDuplicates[] = $oldLocation;
- }
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/BonefishInstaller.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/BonefishInstaller.php
deleted file mode 100644
index da3aad2a..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/BonefishInstaller.php
+++ /dev/null
@@ -1,9 +0,0 @@
-<?php
-namespace Composer\Installers;
-
-class BonefishInstaller extends BaseInstaller
-{
- protected $locations = array(
- 'package' => 'Packages/{$vendor}/{$name}/'
- );
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/CakePHPInstaller.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/CakePHPInstaller.php
deleted file mode 100644
index 176c91a9..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/CakePHPInstaller.php
+++ /dev/null
@@ -1,84 +0,0 @@
-<?php
-namespace Composer\Installers;
-
-use Composer\DependencyResolver\Pool;
-use Composer\Package\PackageInterface;
-
-class CakePHPInstaller extends BaseInstaller
-{
- protected $locations = array(
- 'plugin' => 'Plugin/{$name}/',
- );
-
- /**
- * Format package name to CamelCase
- */
- public function inflectPackageVars($vars)
- {
- if ($this->matchesCakeVersion('>=', '3.0.0')) {
- return $vars;
- }
-
- $nameParts = explode('/', $vars['name']);
- foreach ($nameParts as &$value) {
- $value = strtolower(preg_replace('/(?<=\\w)([A-Z])/', '_\\1', $value));
- $value = str_replace(array('-', '_'), ' ', $value);
- $value = str_replace(' ', '', ucwords($value));
- }
- $vars['name'] = implode('/', $nameParts);
-
- return $vars;
- }
-
- /**
- * Change the default plugin location when cakephp >= 3.0
- */
- public function getLocations()
- {
- if ($this->matchesCakeVersion('>=', '3.0.0')) {
- $this->locations['plugin'] = $this->composer->getConfig()->get('vendor-dir') . '/{$vendor}/{$name}/';
- }
- return $this->locations;
- }
-
- /**
- * Check if CakePHP version matches against a version
- *
- * @param string $matcher
- * @param string $version
- * @return bool
- */
- protected function matchesCakeVersion($matcher, $version)
- {
- if (class_exists('Composer\Semver\Constraint\MultiConstraint')) {
- $multiClass = 'Composer\Semver\Constraint\MultiConstraint';
- $constraintClass = 'Composer\Semver\Constraint\Constraint';
- } else {
- $multiClass = 'Composer\Package\LinkConstraint\MultiConstraint';
- $constraintClass = 'Composer\Package\LinkConstraint\VersionConstraint';
- }
-
- $repositoryManager = $this->composer->getRepositoryManager();
- if ($repositoryManager) {
- $repos = $repositoryManager->getLocalRepository();
- if (!$repos) {
- return false;
- }
- $cake3 = new $multiClass(array(
- new $constraintClass($matcher, $version),
- new $constraintClass('!=', '9999999-dev'),
- ));
- $pool = new Pool('dev');
- $pool->addRepository($repos);
- $packages = $pool->whatProvides('cakephp/cakephp');
- foreach ($packages as $package) {
- $installed = new $constraintClass('=', $package->getVersion());
- if ($cake3->matches($installed)) {
- return true;
- break;
- }
- }
- }
- return false;
- }
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/ChefInstaller.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/ChefInstaller.php
deleted file mode 100644
index ab2f9aad..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/ChefInstaller.php
+++ /dev/null
@@ -1,11 +0,0 @@
-<?php
-namespace Composer\Installers;
-
-class ChefInstaller extends BaseInstaller
-{
- protected $locations = array(
- 'cookbook' => 'Chef/{$vendor}/{$name}/',
- 'role' => 'Chef/roles/{$name}/',
- );
-}
-
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/ClanCatsFrameworkInstaller.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/ClanCatsFrameworkInstaller.php
deleted file mode 100644
index c887815c..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/ClanCatsFrameworkInstaller.php
+++ /dev/null
@@ -1,10 +0,0 @@
-<?php
-namespace Composer\Installers;
-
-class ClanCatsFrameworkInstaller extends BaseInstaller
-{
- protected $locations = array(
- 'ship' => 'CCF/orbit/{$name}/',
- 'theme' => 'CCF/app/themes/{$name}/',
- );
-} \ No newline at end of file
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/CodeIgniterInstaller.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/CodeIgniterInstaller.php
deleted file mode 100644
index 3b4a4ece..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/CodeIgniterInstaller.php
+++ /dev/null
@@ -1,11 +0,0 @@
-<?php
-namespace Composer\Installers;
-
-class CodeIgniterInstaller extends BaseInstaller
-{
- protected $locations = array(
- 'library' => 'application/libraries/{$name}/',
- 'third-party' => 'application/third_party/{$name}/',
- 'module' => 'application/modules/{$name}/',
- );
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/Concrete5Installer.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/Concrete5Installer.php
deleted file mode 100644
index 4d398a44..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/Concrete5Installer.php
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php
-namespace Composer\Installers;
-
-class Concrete5Installer extends BaseInstaller
-{
- protected $locations = array(
- 'block' => 'blocks/{$name}/',
- 'package' => 'packages/{$name}/',
- 'theme' => 'themes/{$name}/',
- 'update' => 'updates/{$name}/',
- );
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/CraftInstaller.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/CraftInstaller.php
deleted file mode 100644
index d37a77ae..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/CraftInstaller.php
+++ /dev/null
@@ -1,35 +0,0 @@
-<?php
-namespace Composer\Installers;
-
-/**
- * Installer for Craft Plugins
- */
-class CraftInstaller extends BaseInstaller
-{
- const NAME_PREFIX = 'craft';
- const NAME_SUFFIX = 'plugin';
-
- protected $locations = array(
- 'plugin' => 'craft/plugins/{$name}/',
- );
-
- /**
- * Strip `craft-` prefix and/or `-plugin` suffix from package names
- *
- * @param array $vars
- *
- * @return array
- */
- final public function inflectPackageVars($vars)
- {
- return $this->inflectPluginVars($vars);
- }
-
- private function inflectPluginVars($vars)
- {
- $vars['name'] = preg_replace('/-' . self::NAME_SUFFIX . '$/i', '', $vars['name']);
- $vars['name'] = preg_replace('/^' . self::NAME_PREFIX . '-/i', '', $vars['name']);
-
- return $vars;
- }
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/CroogoInstaller.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/CroogoInstaller.php
deleted file mode 100644
index d94219d3..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/CroogoInstaller.php
+++ /dev/null
@@ -1,21 +0,0 @@
-<?php
-namespace Composer\Installers;
-
-class CroogoInstaller extends BaseInstaller
-{
- protected $locations = array(
- 'plugin' => 'Plugin/{$name}/',
- 'theme' => 'View/Themed/{$name}/',
- );
-
- /**
- * Format package name to CamelCase
- */
- public function inflectPackageVars($vars)
- {
- $vars['name'] = strtolower(str_replace(array('-', '_'), ' ', $vars['name']));
- $vars['name'] = str_replace(' ', '', ucwords($vars['name']));
-
- return $vars;
- }
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/DokuWikiInstaller.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/DokuWikiInstaller.php
deleted file mode 100644
index cfd638d5..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/DokuWikiInstaller.php
+++ /dev/null
@@ -1,50 +0,0 @@
-<?php
-namespace Composer\Installers;
-
-class DokuWikiInstaller extends BaseInstaller
-{
- protected $locations = array(
- 'plugin' => 'lib/plugins/{$name}/',
- 'template' => 'lib/tpl/{$name}/',
- );
-
- /**
- * Format package name.
- *
- * For package type dokuwiki-plugin, cut off a trailing '-plugin',
- * or leading dokuwiki_ if present.
- *
- * For package type dokuwiki-template, cut off a trailing '-template' if present.
- *
- */
- public function inflectPackageVars($vars)
- {
-
- if ($vars['type'] === 'dokuwiki-plugin') {
- return $this->inflectPluginVars($vars);
- }
-
- if ($vars['type'] === 'dokuwiki-template') {
- return $this->inflectTemplateVars($vars);
- }
-
- return $vars;
- }
-
- protected function inflectPluginVars($vars)
- {
- $vars['name'] = preg_replace('/-plugin$/', '', $vars['name']);
- $vars['name'] = preg_replace('/^dokuwiki_?-?/', '', $vars['name']);
-
- return $vars;
- }
-
- protected function inflectTemplateVars($vars)
- {
- $vars['name'] = preg_replace('/-template$/', '', $vars['name']);
- $vars['name'] = preg_replace('/^dokuwiki_?-?/', '', $vars['name']);
-
- return $vars;
- }
-
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/DolibarrInstaller.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/DolibarrInstaller.php
deleted file mode 100644
index 21f7e8e8..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/DolibarrInstaller.php
+++ /dev/null
@@ -1,16 +0,0 @@
-<?php
-namespace Composer\Installers;
-
-/**
- * Class DolibarrInstaller
- *
- * @package Composer\Installers
- * @author Raphaël Doursenaud <rdoursenaud@gpcsolutions.fr>
- */
-class DolibarrInstaller extends BaseInstaller
-{
- //TODO: Add support for scripts and themes
- protected $locations = array(
- 'module' => 'htdocs/custom/{$name}/',
- );
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/DrupalInstaller.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/DrupalInstaller.php
deleted file mode 100644
index 17941314..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/DrupalInstaller.php
+++ /dev/null
@@ -1,14 +0,0 @@
-<?php
-namespace Composer\Installers;
-
-class DrupalInstaller extends BaseInstaller
-{
- protected $locations = array(
- 'core' => 'core/',
- 'module' => 'modules/{$name}/',
- 'theme' => 'themes/{$name}/',
- 'library' => 'libraries/{$name}/',
- 'profile' => 'profiles/{$name}/',
- 'drush' => 'drush/{$name}/',
- );
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/ElggInstaller.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/ElggInstaller.php
deleted file mode 100644
index c0bb609f..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/ElggInstaller.php
+++ /dev/null
@@ -1,9 +0,0 @@
-<?php
-namespace Composer\Installers;
-
-class ElggInstaller extends BaseInstaller
-{
- protected $locations = array(
- 'plugin' => 'mod/{$name}/',
- );
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/FuelInstaller.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/FuelInstaller.php
deleted file mode 100644
index 6eba2e34..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/FuelInstaller.php
+++ /dev/null
@@ -1,11 +0,0 @@
-<?php
-namespace Composer\Installers;
-
-class FuelInstaller extends BaseInstaller
-{
- protected $locations = array(
- 'module' => 'fuel/app/modules/{$name}/',
- 'package' => 'fuel/packages/{$name}/',
- 'theme' => 'fuel/app/themes/{$name}/',
- );
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/FuelphpInstaller.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/FuelphpInstaller.php
deleted file mode 100644
index 29d980b3..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/FuelphpInstaller.php
+++ /dev/null
@@ -1,9 +0,0 @@
-<?php
-namespace Composer\Installers;
-
-class FuelphpInstaller extends BaseInstaller
-{
- protected $locations = array(
- 'component' => 'components/{$name}/',
- );
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/GravInstaller.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/GravInstaller.php
deleted file mode 100644
index dbe63e07..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/GravInstaller.php
+++ /dev/null
@@ -1,30 +0,0 @@
-<?php
-namespace Composer\Installers;
-
-class GravInstaller extends BaseInstaller
-{
- protected $locations = array(
- 'plugin' => 'user/plugins/{$name}/',
- 'theme' => 'user/themes/{$name}/',
- );
-
- /**
- * Format package name
- *
- * @param array $vars
- *
- * @return array
- */
- public function inflectPackageVars($vars)
- {
- $restrictedWords = implode('|', array_keys($this->locations));
-
- $vars['name'] = strtolower($vars['name']);
- $vars['name'] = preg_replace('/^(?:grav-)?(?:(?:'.$restrictedWords.')-)?(.*?)(?:-(?:'.$restrictedWords.'))?$/ui',
- '$1',
- $vars['name']
- );
-
- return $vars;
- }
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/HuradInstaller.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/HuradInstaller.php
deleted file mode 100644
index 8fe017f0..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/HuradInstaller.php
+++ /dev/null
@@ -1,25 +0,0 @@
-<?php
-namespace Composer\Installers;
-
-class HuradInstaller extends BaseInstaller
-{
- protected $locations = array(
- 'plugin' => 'plugins/{$name}/',
- 'theme' => 'plugins/{$name}/',
- );
-
- /**
- * Format package name to CamelCase
- */
- public function inflectPackageVars($vars)
- {
- $nameParts = explode('/', $vars['name']);
- foreach ($nameParts as &$value) {
- $value = strtolower(preg_replace('/(?<=\\w)([A-Z])/', '_\\1', $value));
- $value = str_replace(array('-', '_'), ' ', $value);
- $value = str_replace(' ', '', ucwords($value));
- }
- $vars['name'] = implode('/', $nameParts);
- return $vars;
- }
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/Installer.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/Installer.php
deleted file mode 100644
index 6d04c61d..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/Installer.php
+++ /dev/null
@@ -1,176 +0,0 @@
-<?php
-namespace Composer\Installers;
-
-use Composer\IO\IOInterface;
-use Composer\Installer\LibraryInstaller;
-use Composer\Package\PackageInterface;
-use Composer\Repository\InstalledRepositoryInterface;
-
-class Installer extends LibraryInstaller
-{
- /**
- * Package types to installer class map
- *
- * @var array
- */
- private $supportedTypes = array(
- 'aimeos' => 'AimeosInstaller',
- 'asgard' => 'AsgardInstaller',
- 'agl' => 'AglInstaller',
- 'annotatecms' => 'AnnotateCmsInstaller',
- 'bitrix' => 'BitrixInstaller',
- 'bonefish' => 'BonefishInstaller',
- 'cakephp' => 'CakePHPInstaller',
- 'chef' => 'ChefInstaller',
- 'ccframework' => 'ClanCatsFrameworkInstaller',
- 'codeigniter' => 'CodeIgniterInstaller',
- 'concrete5' => 'Concrete5Installer',
- 'craft' => 'CraftInstaller',
- 'croogo' => 'CroogoInstaller',
- 'dokuwiki' => 'DokuWikiInstaller',
- 'dolibarr' => 'DolibarrInstaller',
- 'drupal' => 'DrupalInstaller',
- 'elgg' => 'ElggInstaller',
- 'fuel' => 'FuelInstaller',
- 'fuelphp' => 'FuelphpInstaller',
- 'grav' => 'GravInstaller',
- 'hurad' => 'HuradInstaller',
- 'joomla' => 'JoomlaInstaller',
- 'kirby' => 'KirbyInstaller',
- 'kodicms' => 'KodiCMSInstaller',
- 'kohana' => 'KohanaInstaller',
- 'laravel' => 'LaravelInstaller',
- 'lithium' => 'LithiumInstaller',
- 'magento' => 'MagentoInstaller',
- 'mako' => 'MakoInstaller',
- 'mediawiki' => 'MediaWikiInstaller',
- 'microweber' => 'MicroweberInstaller',
- 'modulework' => 'MODULEWorkInstaller',
- 'modxevo' => 'MODXEvoInstaller',
- 'moodle' => 'MoodleInstaller',
- 'october' => 'OctoberInstaller',
- 'oxid' => 'OxidInstaller',
- 'phpbb' => 'PhpBBInstaller',
- 'pimcore' => 'PimcoreInstaller',
- 'piwik' => 'PiwikInstaller',
- 'ppi' => 'PPIInstaller',
- 'puppet' => 'PuppetInstaller',
- 'redaxo' => 'RedaxoInstaller',
- 'roundcube' => 'RoundcubeInstaller',
- 'shopware' => 'ShopwareInstaller',
- 'silverstripe' => 'SilverStripeInstaller',
- 'smf' => 'SMFInstaller',
- 'symfony1' => 'Symfony1Installer',
- 'thelia' => 'TheliaInstaller',
- 'tusk' => 'TuskInstaller',
- 'typo3-cms' => 'TYPO3CmsInstaller',
- 'typo3-flow' => 'TYPO3FlowInstaller',
- 'whmcs' => 'WHMCSInstaller',
- 'wolfcms' => 'WolfCMSInstaller',
- 'wordpress' => 'WordPressInstaller',
- 'zend' => 'ZendInstaller',
- 'zikula' => 'ZikulaInstaller',
- 'prestashop' => 'PrestashopInstaller'
- );
-
- /**
- * {@inheritDoc}
- */
- public function getInstallPath(PackageInterface $package)
- {
- $type = $package->getType();
- $frameworkType = $this->findFrameworkType($type);
-
- if ($frameworkType === false) {
- throw new \InvalidArgumentException(
- 'Sorry the package type of this package is not yet supported.'
- );
- }
-
- $class = 'Composer\\Installers\\' . $this->supportedTypes[$frameworkType];
- $installer = new $class($package, $this->composer, $this->getIO());
-
- return $installer->getInstallPath($package, $frameworkType);
- }
-
- public function uninstall(InstalledRepositoryInterface $repo, PackageInterface $package)
- {
- if (!$repo->hasPackage($package)) {
- throw new \InvalidArgumentException('Package is not installed: '.$package);
- }
-
- $repo->removePackage($package);
-
- $installPath = $this->getInstallPath($package);
- $this->io->write(sprintf('Deleting %s - %s', $installPath, $this->filesystem->removeDirectory($installPath) ? '<comment>deleted</comment>' : '<error>not deleted</error>'));
- }
-
- /**
- * {@inheritDoc}
- */
- public function supports($packageType)
- {
- $frameworkType = $this->findFrameworkType($packageType);
-
- if ($frameworkType === false) {
- return false;
- }
-
- $locationPattern = $this->getLocationPattern($frameworkType);
-
- return preg_match('#' . $frameworkType . '-' . $locationPattern . '#', $packageType, $matches) === 1;
- }
-
- /**
- * Finds a supported framework type if it exists and returns it
- *
- * @param string $type
- * @return string
- */
- protected function findFrameworkType($type)
- {
- $frameworkType = false;
-
- krsort($this->supportedTypes);
-
- foreach ($this->supportedTypes as $key => $val) {
- if ($key === substr($type, 0, strlen($key))) {
- $frameworkType = substr($type, 0, strlen($key));
- break;
- }
- }
-
- return $frameworkType;
- }
-
- /**
- * Get the second part of the regular expression to check for support of a
- * package type
- *
- * @param string $frameworkType
- * @return string
- */
- protected function getLocationPattern($frameworkType)
- {
- $pattern = false;
- if (!empty($this->supportedTypes[$frameworkType])) {
- $frameworkClass = 'Composer\\Installers\\' . $this->supportedTypes[$frameworkType];
- /** @var BaseInstaller $framework */
- $framework = new $frameworkClass(null, $this->composer, $this->getIO());
- $locations = array_keys($framework->getLocations());
- $pattern = $locations ? '(' . implode('|', $locations) . ')' : false;
- }
-
- return $pattern ? : '(\w+)';
- }
-
- /**
- * Get I/O object
- *
- * @return IOInterface
- */
- private function getIO()
- {
- return $this->io;
- }
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/JoomlaInstaller.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/JoomlaInstaller.php
deleted file mode 100644
index 9ee77596..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/JoomlaInstaller.php
+++ /dev/null
@@ -1,15 +0,0 @@
-<?php
-namespace Composer\Installers;
-
-class JoomlaInstaller extends BaseInstaller
-{
- protected $locations = array(
- 'component' => 'components/{$name}/',
- 'module' => 'modules/{$name}/',
- 'template' => 'templates/{$name}/',
- 'plugin' => 'plugins/{$name}/',
- 'library' => 'libraries/{$name}/',
- );
-
- // TODO: Add inflector for mod_ and com_ names
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/KirbyInstaller.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/KirbyInstaller.php
deleted file mode 100644
index ae7ba8a4..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/KirbyInstaller.php
+++ /dev/null
@@ -1,9 +0,0 @@
-<?php
-namespace Composer\Installers;
-
-class KirbyInstaller extends BaseInstaller
-{
- protected $locations = array(
- 'plugin' => 'site/plugins/{$name}/',
- );
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/KodiCMSInstaller.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/KodiCMSInstaller.php
deleted file mode 100644
index 7143e232..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/KodiCMSInstaller.php
+++ /dev/null
@@ -1,10 +0,0 @@
-<?php
-namespace Composer\Installers;
-
-class KodiCMSInstaller extends BaseInstaller
-{
- protected $locations = array(
- 'plugin' => 'cms/plugins/{$name}/',
- 'media' => 'cms/media/vendor/{$name}/'
- );
-} \ No newline at end of file
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/KohanaInstaller.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/KohanaInstaller.php
deleted file mode 100644
index dcd6d263..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/KohanaInstaller.php
+++ /dev/null
@@ -1,9 +0,0 @@
-<?php
-namespace Composer\Installers;
-
-class KohanaInstaller extends BaseInstaller
-{
- protected $locations = array(
- 'module' => 'modules/{$name}/',
- );
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/LaravelInstaller.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/LaravelInstaller.php
deleted file mode 100644
index be4d53a7..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/LaravelInstaller.php
+++ /dev/null
@@ -1,9 +0,0 @@
-<?php
-namespace Composer\Installers;
-
-class LaravelInstaller extends BaseInstaller
-{
- protected $locations = array(
- 'library' => 'libraries/{$name}/',
- );
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/LithiumInstaller.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/LithiumInstaller.php
deleted file mode 100644
index 47bbd4ca..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/LithiumInstaller.php
+++ /dev/null
@@ -1,10 +0,0 @@
-<?php
-namespace Composer\Installers;
-
-class LithiumInstaller extends BaseInstaller
-{
- protected $locations = array(
- 'library' => 'libraries/{$name}/',
- 'source' => 'libraries/_source/{$name}/',
- );
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/MODULEWorkInstaller.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/MODULEWorkInstaller.php
deleted file mode 100644
index 9c2e9fb4..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/MODULEWorkInstaller.php
+++ /dev/null
@@ -1,9 +0,0 @@
-<?php
-namespace Composer\Installers;
-
-class MODULEWorkInstaller extends BaseInstaller
-{
- protected $locations = array(
- 'module' => 'modules/{$name}/',
- );
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/MODXEvoInstaller.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/MODXEvoInstaller.php
deleted file mode 100644
index 5a664608..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/MODXEvoInstaller.php
+++ /dev/null
@@ -1,16 +0,0 @@
-<?php
-namespace Composer\Installers;
-
-/**
- * An installer to handle MODX Evolution specifics when installing packages.
- */
-class MODXEvoInstaller extends BaseInstaller
-{
- protected $locations = array(
- 'snippet' => 'assets/snippets/{$name}/',
- 'plugin' => 'assets/plugins/{$name}/',
- 'module' => 'assets/modules/{$name}/',
- 'template' => 'assets/templates/{$name}/',
- 'lib' => 'assets/lib/{$name}/'
- );
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/MagentoInstaller.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/MagentoInstaller.php
deleted file mode 100644
index cf18e947..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/MagentoInstaller.php
+++ /dev/null
@@ -1,11 +0,0 @@
-<?php
-namespace Composer\Installers;
-
-class MagentoInstaller extends BaseInstaller
-{
- protected $locations = array(
- 'theme' => 'app/design/frontend/{$name}/',
- 'skin' => 'skin/frontend/default/{$name}/',
- 'library' => 'lib/{$name}/',
- );
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/MakoInstaller.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/MakoInstaller.php
deleted file mode 100644
index ca3cfacb..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/MakoInstaller.php
+++ /dev/null
@@ -1,9 +0,0 @@
-<?php
-namespace Composer\Installers;
-
-class MakoInstaller extends BaseInstaller
-{
- protected $locations = array(
- 'package' => 'app/packages/{$name}/',
- );
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/MediaWikiInstaller.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/MediaWikiInstaller.php
deleted file mode 100644
index 01008c63..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/MediaWikiInstaller.php
+++ /dev/null
@@ -1,50 +0,0 @@
-<?php
-namespace Composer\Installers;
-
-class MediaWikiInstaller extends BaseInstaller
-{
- protected $locations = array(
- 'extension' => 'extensions/{$name}/',
- 'skin' => 'skins/{$name}/',
- );
-
- /**
- * Format package name.
- *
- * For package type mediawiki-extension, cut off a trailing '-extension' if present and transform
- * to CamelCase keeping existing uppercase chars.
- *
- * For package type mediawiki-skin, cut off a trailing '-skin' if present.
- *
- */
- public function inflectPackageVars($vars)
- {
-
- if ($vars['type'] === 'mediawiki-extension') {
- return $this->inflectExtensionVars($vars);
- }
-
- if ($vars['type'] === 'mediawiki-skin') {
- return $this->inflectSkinVars($vars);
- }
-
- return $vars;
- }
-
- protected function inflectExtensionVars($vars)
- {
- $vars['name'] = preg_replace('/-extension$/', '', $vars['name']);
- $vars['name'] = str_replace('-', ' ', $vars['name']);
- $vars['name'] = str_replace(' ', '', ucwords($vars['name']));
-
- return $vars;
- }
-
- protected function inflectSkinVars($vars)
- {
- $vars['name'] = preg_replace('/-skin$/', '', $vars['name']);
-
- return $vars;
- }
-
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/MicroweberInstaller.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/MicroweberInstaller.php
deleted file mode 100644
index 4bbbec8c..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/MicroweberInstaller.php
+++ /dev/null
@@ -1,111 +0,0 @@
-<?php
-namespace Composer\Installers;
-
-class MicroweberInstaller extends BaseInstaller
-{
- protected $locations = array(
- 'module' => 'userfiles/modules/{$name}/',
- 'module-skin' => 'userfiles/modules/{$name}/templates/',
- 'template' => 'userfiles/templates/{$name}/',
- 'element' => 'userfiles/elements/{$name}/',
- 'vendor' => 'vendor/{$name}/',
- 'components' => 'components/{$name}/'
- );
-
- /**
- * Format package name.
- *
- * For package type microweber-module, cut off a trailing '-module' if present
- *
- * For package type microweber-template, cut off a trailing '-template' if present.
- *
- */
- public function inflectPackageVars($vars)
- {
- if ($vars['type'] === 'microweber-template') {
- return $this->inflectTemplateVars($vars);
- }
- if ($vars['type'] === 'microweber-templates') {
- return $this->inflectTemplatesVars($vars);
- }
- if ($vars['type'] === 'microweber-core') {
- return $this->inflectCoreVars($vars);
- }
- if ($vars['type'] === 'microweber-adapter') {
- return $this->inflectCoreVars($vars);
- }
- if ($vars['type'] === 'microweber-module') {
- return $this->inflectModuleVars($vars);
- }
- if ($vars['type'] === 'microweber-modules') {
- return $this->inflectModulesVars($vars);
- }
- if ($vars['type'] === 'microweber-skin') {
- return $this->inflectSkinVars($vars);
- }
- if ($vars['type'] === 'microweber-element' or $vars['type'] === 'microweber-elements') {
- return $this->inflectElementVars($vars);
- }
-
- return $vars;
- }
-
- protected function inflectTemplateVars($vars)
- {
- $vars['name'] = preg_replace('/-template$/', '', $vars['name']);
- $vars['name'] = preg_replace('/template-$/', '', $vars['name']);
-
- return $vars;
- }
-
- protected function inflectTemplatesVars($vars)
- {
- $vars['name'] = preg_replace('/-templates$/', '', $vars['name']);
- $vars['name'] = preg_replace('/templates-$/', '', $vars['name']);
-
- return $vars;
- }
-
- protected function inflectCoreVars($vars)
- {
- $vars['name'] = preg_replace('/-providers$/', '', $vars['name']);
- $vars['name'] = preg_replace('/-provider$/', '', $vars['name']);
- $vars['name'] = preg_replace('/-adapter$/', '', $vars['name']);
-
- return $vars;
- }
-
- protected function inflectModuleVars($vars)
- {
- $vars['name'] = preg_replace('/-module$/', '', $vars['name']);
- $vars['name'] = preg_replace('/module-$/', '', $vars['name']);
-
- return $vars;
- }
-
- protected function inflectModulesVars($vars)
- {
- $vars['name'] = preg_replace('/-modules$/', '', $vars['name']);
- $vars['name'] = preg_replace('/modules-$/', '', $vars['name']);
-
- return $vars;
- }
-
- protected function inflectSkinVars($vars)
- {
- $vars['name'] = preg_replace('/-skin$/', '', $vars['name']);
- $vars['name'] = preg_replace('/skin-$/', '', $vars['name']);
-
- return $vars;
- }
-
- protected function inflectElementVars($vars)
- {
- $vars['name'] = preg_replace('/-elements$/', '', $vars['name']);
- $vars['name'] = preg_replace('/elements-$/', '', $vars['name']);
- $vars['name'] = preg_replace('/-element$/', '', $vars['name']);
- $vars['name'] = preg_replace('/element-$/', '', $vars['name']);
-
- return $vars;
- }
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/MoodleInstaller.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/MoodleInstaller.php
deleted file mode 100644
index 3cdda6ca..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/MoodleInstaller.php
+++ /dev/null
@@ -1,56 +0,0 @@
-<?php
-namespace Composer\Installers;
-
-class MoodleInstaller extends BaseInstaller
-{
- protected $locations = array(
- 'mod' => 'mod/{$name}/',
- 'admin_report' => 'admin/report/{$name}/',
- 'atto' => 'lib/editor/atto/plugins/{$name}/',
- 'tool' => 'admin/tool/{$name}/',
- 'assignment' => 'mod/assignment/type/{$name}/',
- 'assignsubmission' => 'mod/assign/submission/{$name}/',
- 'assignfeedback' => 'mod/assign/feedback/{$name}/',
- 'auth' => 'auth/{$name}/',
- 'availability' => 'availability/condition/{$name}/',
- 'block' => 'blocks/{$name}/',
- 'booktool' => 'mod/book/tool/{$name}/',
- 'cachestore' => 'cache/stores/{$name}/',
- 'cachelock' => 'cache/locks/{$name}/',
- 'calendartype' => 'calendar/type/{$name}/',
- 'format' => 'course/format/{$name}/',
- 'coursereport' => 'course/report/{$name}/',
- 'datafield' => 'mod/data/field/{$name}/',
- 'datapreset' => 'mod/data/preset/{$name}/',
- 'editor' => 'lib/editor/{$name}/',
- 'enrol' => 'enrol/{$name}/',
- 'filter' => 'filter/{$name}/',
- 'gradeexport' => 'grade/export/{$name}/',
- 'gradeimport' => 'grade/import/{$name}/',
- 'gradereport' => 'grade/report/{$name}/',
- 'gradingform' => 'grade/grading/form/{$name}/',
- 'local' => 'local/{$name}/',
- 'logstore' => 'admin/tool/log/store/{$name}/',
- 'ltisource' => 'mod/lti/source/{$name}/',
- 'ltiservice' => 'mod/lti/service/{$name}/',
- 'message' => 'message/output/{$name}/',
- 'mnetservice' => 'mnet/service/{$name}/',
- 'plagiarism' => 'plagiarism/{$name}/',
- 'portfolio' => 'portfolio/{$name}/',
- 'qbehaviour' => 'question/behaviour/{$name}/',
- 'qformat' => 'question/format/{$name}/',
- 'qtype' => 'question/type/{$name}/',
- 'quizaccess' => 'mod/quiz/accessrule/{$name}/',
- 'quiz' => 'mod/quiz/report/{$name}/',
- 'report' => 'report/{$name}/',
- 'repository' => 'repository/{$name}/',
- 'scormreport' => 'mod/scorm/report/{$name}/',
- 'theme' => 'theme/{$name}/',
- 'tinymce' => 'lib/editor/tinymce/plugins/{$name}/',
- 'profilefield' => 'user/profile/field/{$name}/',
- 'webservice' => 'webservice/{$name}/',
- 'workshopallocation' => 'mod/workshop/allocation/{$name}/',
- 'workshopeval' => 'mod/workshop/eval/{$name}/',
- 'workshopform' => 'mod/workshop/form/{$name}/'
- );
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/OctoberInstaller.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/OctoberInstaller.php
deleted file mode 100644
index 6bf53fd1..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/OctoberInstaller.php
+++ /dev/null
@@ -1,46 +0,0 @@
-<?php
-namespace Composer\Installers;
-
-class OctoberInstaller extends BaseInstaller
-{
- protected $locations = array(
- 'module' => 'modules/{$name}/',
- 'plugin' => 'plugins/{$vendor}/{$name}/',
- 'theme' => 'themes/{$name}/'
- );
-
- /**
- * Format package name.
- *
- * For package type october-plugin, cut off a trailing '-plugin' if present.
- *
- * For package type october-theme, cut off a trailing '-theme' if present.
- *
- */
- public function inflectPackageVars($vars)
- {
- if ($vars['type'] === 'october-plugin') {
- return $this->inflectPluginVars($vars);
- }
-
- if ($vars['type'] === 'october-theme') {
- return $this->inflectThemeVars($vars);
- }
-
- return $vars;
- }
-
- protected function inflectPluginVars($vars)
- {
- $vars['name'] = preg_replace('/-plugin$/', '', $vars['name']);
-
- return $vars;
- }
-
- protected function inflectThemeVars($vars)
- {
- $vars['name'] = preg_replace('/-theme$/', '', $vars['name']);
-
- return $vars;
- }
-} \ No newline at end of file
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/OxidInstaller.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/OxidInstaller.php
deleted file mode 100644
index 22fb56aa..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/OxidInstaller.php
+++ /dev/null
@@ -1,11 +0,0 @@
-<?php
-namespace Composer\Installers;
-
-class OxidInstaller extends BaseInstaller
-{
- protected $locations = array(
- 'module' => 'modules/{$name}/',
- 'theme' => 'application/views/{$name}/',
- 'out' => 'out/{$name}/',
- );
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/PPIInstaller.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/PPIInstaller.php
deleted file mode 100644
index 170136f9..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/PPIInstaller.php
+++ /dev/null
@@ -1,9 +0,0 @@
-<?php
-namespace Composer\Installers;
-
-class PPIInstaller extends BaseInstaller
-{
- protected $locations = array(
- 'module' => 'modules/{$name}/',
- );
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/PhpBBInstaller.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/PhpBBInstaller.php
deleted file mode 100644
index deb2b77a..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/PhpBBInstaller.php
+++ /dev/null
@@ -1,11 +0,0 @@
-<?php
-namespace Composer\Installers;
-
-class PhpBBInstaller extends BaseInstaller
-{
- protected $locations = array(
- 'extension' => 'ext/{$vendor}/{$name}/',
- 'language' => 'language/{$name}/',
- 'style' => 'styles/{$name}/',
- );
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/PimcoreInstaller.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/PimcoreInstaller.php
deleted file mode 100644
index 4781fa6d..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/PimcoreInstaller.php
+++ /dev/null
@@ -1,21 +0,0 @@
-<?php
-namespace Composer\Installers;
-
-class PimcoreInstaller extends BaseInstaller
-{
- protected $locations = array(
- 'plugin' => 'plugins/{$name}/',
- );
-
- /**
- * Format package name to CamelCase
- */
- public function inflectPackageVars($vars)
- {
- $vars['name'] = strtolower(preg_replace('/(?<=\\w)([A-Z])/', '_\\1', $vars['name']));
- $vars['name'] = str_replace(array('-', '_'), ' ', $vars['name']);
- $vars['name'] = str_replace(' ', '', ucwords($vars['name']));
-
- return $vars;
- }
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/PiwikInstaller.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/PiwikInstaller.php
deleted file mode 100644
index c17f4572..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/PiwikInstaller.php
+++ /dev/null
@@ -1,32 +0,0 @@
-<?php
-namespace Composer\Installers;
-
-/**
- * Class PiwikInstaller
- *
- * @package Composer\Installers
- */
-class PiwikInstaller extends BaseInstaller
-{
- /**
- * @var array
- */
- protected $locations = array(
- 'plugin' => 'plugins/{$name}/',
- );
-
- /**
- * Format package name to CamelCase
- * @param array $vars
- *
- * @return array
- */
- public function inflectPackageVars($vars)
- {
- $vars['name'] = strtolower(preg_replace('/(?<=\\w)([A-Z])/', '_\\1', $vars['name']));
- $vars['name'] = str_replace(array('-', '_'), ' ', $vars['name']);
- $vars['name'] = str_replace(' ', '', ucwords($vars['name']));
-
- return $vars;
- }
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/Plugin.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/Plugin.php
deleted file mode 100644
index 5eb04af1..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/Plugin.php
+++ /dev/null
@@ -1,17 +0,0 @@
-<?php
-
-namespace Composer\Installers;
-
-use Composer\Composer;
-use Composer\IO\IOInterface;
-use Composer\Plugin\PluginInterface;
-
-class Plugin implements PluginInterface
-{
-
- public function activate(Composer $composer, IOInterface $io)
- {
- $installer = new Installer($io, $composer);
- $composer->getInstallationManager()->addInstaller($installer);
- }
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/PrestashopInstaller.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/PrestashopInstaller.php
deleted file mode 100644
index 4c8421e3..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/PrestashopInstaller.php
+++ /dev/null
@@ -1,10 +0,0 @@
-<?php
-namespace Composer\Installers;
-
-class PrestashopInstaller extends BaseInstaller
-{
- protected $locations = array(
- 'module' => 'modules/{$name}/',
- 'theme' => 'themes/{$name}/',
- );
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/PuppetInstaller.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/PuppetInstaller.php
deleted file mode 100644
index 77cc3dd8..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/PuppetInstaller.php
+++ /dev/null
@@ -1,11 +0,0 @@
-<?php
-
-namespace Composer\Installers;
-
-class PuppetInstaller extends BaseInstaller
-{
-
- protected $locations = array(
- 'module' => 'modules/{$name}/',
- );
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/RedaxoInstaller.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/RedaxoInstaller.php
deleted file mode 100644
index 09544576..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/RedaxoInstaller.php
+++ /dev/null
@@ -1,10 +0,0 @@
-<?php
-namespace Composer\Installers;
-
-class RedaxoInstaller extends BaseInstaller
-{
- protected $locations = array(
- 'addon' => 'redaxo/include/addons/{$name}/',
- 'bestyle-plugin' => 'redaxo/include/addons/be_style/plugins/{$name}/'
- );
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/RoundcubeInstaller.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/RoundcubeInstaller.php
deleted file mode 100644
index d8d795be..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/RoundcubeInstaller.php
+++ /dev/null
@@ -1,22 +0,0 @@
-<?php
-namespace Composer\Installers;
-
-class RoundcubeInstaller extends BaseInstaller
-{
- protected $locations = array(
- 'plugin' => 'plugins/{$name}/',
- );
-
- /**
- * Lowercase name and changes the name to a underscores
- *
- * @param array $vars
- * @return array
- */
- public function inflectPackageVars($vars)
- {
- $vars['name'] = strtolower(str_replace('-', '_', $vars['name']));
-
- return $vars;
- }
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/SMFInstaller.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/SMFInstaller.php
deleted file mode 100644
index 1acd3b14..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/SMFInstaller.php
+++ /dev/null
@@ -1,10 +0,0 @@
-<?php
-namespace Composer\Installers;
-
-class SMFInstaller extends BaseInstaller
-{
- protected $locations = array(
- 'module' => 'Sources/{$name}/',
- 'theme' => 'Themes/{$name}/',
- );
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/ShopwareInstaller.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/ShopwareInstaller.php
deleted file mode 100644
index 673f1fc1..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/ShopwareInstaller.php
+++ /dev/null
@@ -1,58 +0,0 @@
-<?php
-namespace Composer\Installers;
-
-/**
- * Plugin/theme installer for shopware
- * @author Benjamin Boit
- */
-class ShopwareInstaller extends BaseInstaller
-{
- protected $locations = array(
- 'backend-plugin' => 'engine/Shopware/Plugins/Local/Backend/{$name}/',
- 'core-plugin' => 'engine/Shopware/Plugins/Local/Core/{$name}/',
- 'frontend-plugin' => 'engine/Shopware/Plugins/Local/Frontend/{$name}/',
- 'theme' => 'templates/{$name}/'
- );
-
- /**
- * Transforms the names
- * @param array $vars
- * @return array
- */
- public function inflectPackageVars($vars)
- {
- if ($vars['type'] === 'shopware-theme') {
- return $this->correctThemeName($vars);
- } else {
- return $this->correctPluginName($vars);
- }
- }
-
- /**
- * Changes the name to a camelcased combination of vendor and name
- * @param array $vars
- * @return array
- */
- private function correctPluginName($vars)
- {
- $camelCasedName = preg_replace_callback('/(-[a-z])/', function ($matches) {
- return strtoupper($matches[0][1]);
- }, $vars['name']);
-
- $vars['name'] = ucfirst($vars['vendor']) . ucfirst($camelCasedName);
-
- return $vars;
- }
-
- /**
- * Changes the name to a underscore separated name
- * @param array $vars
- * @return array
- */
- private function correctThemeName($vars)
- {
- $vars['name'] = str_replace('-', '_', $vars['name']);
-
- return $vars;
- }
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/SilverStripeInstaller.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/SilverStripeInstaller.php
deleted file mode 100644
index 17ca543a..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/SilverStripeInstaller.php
+++ /dev/null
@@ -1,36 +0,0 @@
-<?php
-namespace Composer\Installers;
-
-use Composer\Package\PackageInterface;
-
-class SilverStripeInstaller extends BaseInstaller
-{
- protected $locations = array(
- 'module' => '{$name}/',
- 'theme' => 'themes/{$name}/',
- );
-
- /**
- * Return the install path based on package type.
- *
- * Relies on built-in BaseInstaller behaviour with one exception: silverstripe/framework
- * must be installed to 'sapphire' and not 'framework' if the version is <3.0.0
- *
- * @param PackageInterface $package
- * @param string $frameworkType
- * @return string
- */
- public function getInstallPath(PackageInterface $package, $frameworkType = '')
- {
- if (
- $package->getName() == 'silverstripe/framework'
- && preg_match('/^\d+\.\d+\.\d+/', $package->getVersion())
- && version_compare($package->getVersion(), '2.999.999') < 0
- ) {
- return $this->templatePath($this->locations['module'], array('name' => 'sapphire'));
- } else {
- return parent::getInstallPath($package, $frameworkType);
- }
-
- }
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/Symfony1Installer.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/Symfony1Installer.php
deleted file mode 100644
index 1675c4f2..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/Symfony1Installer.php
+++ /dev/null
@@ -1,26 +0,0 @@
-<?php
-namespace Composer\Installers;
-
-/**
- * Plugin installer for symfony 1.x
- *
- * @author Jérôme Tamarelle <jerome@tamarelle.net>
- */
-class Symfony1Installer extends BaseInstaller
-{
- protected $locations = array(
- 'plugin' => 'plugins/{$name}/',
- );
-
- /**
- * Format package name to CamelCase
- */
- public function inflectPackageVars($vars)
- {
- $vars['name'] = preg_replace_callback('/(-[a-z])/', function ($matches) {
- return strtoupper($matches[0][1]);
- }, $vars['name']);
-
- return $vars;
- }
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/TYPO3CmsInstaller.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/TYPO3CmsInstaller.php
deleted file mode 100644
index 8220b40d..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/TYPO3CmsInstaller.php
+++ /dev/null
@@ -1,14 +0,0 @@
-<?php
-namespace Composer\Installers;
-
-/**
- * Extension installer for TYPO3 CMS
- *
- * @author Sascha Egerer <sascha.egerer@dkd.de>
- */
-class TYPO3CmsInstaller extends BaseInstaller
-{
- protected $locations = array(
- 'extension' => 'typo3conf/ext/{$name}/',
- );
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/TYPO3FlowInstaller.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/TYPO3FlowInstaller.php
deleted file mode 100644
index 42572f44..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/TYPO3FlowInstaller.php
+++ /dev/null
@@ -1,38 +0,0 @@
-<?php
-namespace Composer\Installers;
-
-/**
- * An installer to handle TYPO3 Flow specifics when installing packages.
- */
-class TYPO3FlowInstaller extends BaseInstaller
-{
- protected $locations = array(
- 'package' => 'Packages/Application/{$name}/',
- 'framework' => 'Packages/Framework/{$name}/',
- 'plugin' => 'Packages/Plugins/{$name}/',
- 'site' => 'Packages/Sites/{$name}/',
- 'boilerplate' => 'Packages/Boilerplates/{$name}/',
- 'build' => 'Build/{$name}/',
- );
-
- /**
- * Modify the package name to be a TYPO3 Flow style key.
- *
- * @param array $vars
- * @return array
- */
- public function inflectPackageVars($vars)
- {
- $autoload = $this->package->getAutoload();
- if (isset($autoload['psr-0']) && is_array($autoload['psr-0'])) {
- $namespace = key($autoload['psr-0']);
- $vars['name'] = str_replace('\\', '.', $namespace);
- }
- if (isset($autoload['psr-4']) && is_array($autoload['psr-4'])) {
- $namespace = key($autoload['psr-4']);
- $vars['name'] = rtrim(str_replace('\\', '.', $namespace), '.');
- }
-
- return $vars;
- }
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/TheliaInstaller.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/TheliaInstaller.php
deleted file mode 100644
index 158af526..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/TheliaInstaller.php
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php
-namespace Composer\Installers;
-
-class TheliaInstaller extends BaseInstaller
-{
- protected $locations = array(
- 'module' => 'local/modules/{$name}/',
- 'frontoffice-template' => 'templates/frontOffice/{$name}/',
- 'backoffice-template' => 'templates/backOffice/{$name}/',
- 'email-template' => 'templates/email/{$name}/',
- );
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/TuskInstaller.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/TuskInstaller.php
deleted file mode 100644
index 7c0113b8..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/TuskInstaller.php
+++ /dev/null
@@ -1,14 +0,0 @@
-<?php
- namespace Composer\Installers;
- /**
- * Composer installer for 3rd party Tusk utilities
- * @author Drew Ewing <drew@phenocode.com>
- */
- class TuskInstaller extends BaseInstaller
- {
- protected $locations = array(
- 'task' => '.tusk/tasks/{$name}/',
- 'command' => '.tusk/commands/{$name}/',
- 'asset' => 'assets/tusk/{$name}/',
- );
- }
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/WHMCSInstaller.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/WHMCSInstaller.php
deleted file mode 100644
index 2cbb4a46..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/WHMCSInstaller.php
+++ /dev/null
@@ -1,10 +0,0 @@
-<?php
-
-namespace Composer\Installers;
-
-class WHMCSInstaller extends BaseInstaller
-{
- protected $locations = array(
- 'gateway' => 'modules/gateways/{$name}/',
- );
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/WolfCMSInstaller.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/WolfCMSInstaller.php
deleted file mode 100644
index cb387881..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/WolfCMSInstaller.php
+++ /dev/null
@@ -1,9 +0,0 @@
-<?php
-namespace Composer\Installers;
-
-class WolfCMSInstaller extends BaseInstaller
-{
- protected $locations = array(
- 'plugin' => 'wolf/plugins/{$name}/',
- );
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/WordPressInstaller.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/WordPressInstaller.php
deleted file mode 100644
index b03219c6..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/WordPressInstaller.php
+++ /dev/null
@@ -1,11 +0,0 @@
-<?php
-namespace Composer\Installers;
-
-class WordPressInstaller extends BaseInstaller
-{
- protected $locations = array(
- 'plugin' => 'wp-content/plugins/{$name}/',
- 'theme' => 'wp-content/themes/{$name}/',
- 'muplugin' => 'wp-content/mu-plugins/{$name}/',
- );
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/ZendInstaller.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/ZendInstaller.php
deleted file mode 100644
index bde9bc8c..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/ZendInstaller.php
+++ /dev/null
@@ -1,11 +0,0 @@
-<?php
-namespace Composer\Installers;
-
-class ZendInstaller extends BaseInstaller
-{
- protected $locations = array(
- 'library' => 'library/{$name}/',
- 'extra' => 'extras/library/{$name}/',
- 'module' => 'module/{$name}/',
- );
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/ZikulaInstaller.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/ZikulaInstaller.php
deleted file mode 100644
index 56cdf5da..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/Composer/Installers/ZikulaInstaller.php
+++ /dev/null
@@ -1,10 +0,0 @@
-<?php
-namespace Composer\Installers;
-
-class ZikulaInstaller extends BaseInstaller
-{
- protected $locations = array(
- 'module' => 'modules/{$vendor}-{$name}/',
- 'theme' => 'themes/{$vendor}-{$name}/'
- );
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/bootstrap.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/bootstrap.php
deleted file mode 100644
index 0de276ee..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/src/bootstrap.php
+++ /dev/null
@@ -1,13 +0,0 @@
-<?php
-function includeIfExists($file)
-{
- if (file_exists($file)) {
- return include $file;
- }
-}
-if ((!$loader = includeIfExists(__DIR__ . '/../vendor/autoload.php')) && (!$loader = includeIfExists(__DIR__ . '/../../../autoload.php'))) {
- die('You must set up the project dependencies, run the following commands:'.PHP_EOL.
- 'curl -s http://getcomposer.org/installer | php'.PHP_EOL.
- 'php composer.phar install'.PHP_EOL);
-}
-return $loader;
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/tests/Composer/Installers/Test/AsgardInstallerTest.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/tests/Composer/Installers/Test/AsgardInstallerTest.php
deleted file mode 100644
index 71480eca..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/tests/Composer/Installers/Test/AsgardInstallerTest.php
+++ /dev/null
@@ -1,61 +0,0 @@
-<?php
-namespace Composer\Installers\Test;
-
-use Composer\Installers\AsgardInstaller;
-use Composer\Package\Package;
-use Composer\Composer;
-
-class AsgardInstallerTest extends \PHPUnit_Framework_TestCase
-{
- /**
- * @var OctoberInstaller
- */
- private $installer;
-
- public function setUp()
- {
- $this->installer = new AsgardInstaller(
- new Package('NyanCat', '4.2', '4.2'),
- new Composer()
- );
- }
-
- /**
- * @dataProvider packageNameInflectionProvider
- */
- public function testInflectPackageVars($type, $name, $expected)
- {
- $this->assertEquals(
- $this->installer->inflectPackageVars(array('name' => $name, 'type' => $type)),
- array('name' => $expected, 'type' => $type)
- );
- }
-
- public function packageNameInflectionProvider()
- {
- return array(
- array(
- 'asgard-module',
- 'asgard-module',
- 'Asgard'
- ),
- array(
- 'asgard-module',
- 'blog',
- 'Blog'
- ),
- // tests that exactly one '-theme' is cut off
- array(
- 'asgard-theme',
- 'some-theme-theme',
- 'Some-theme',
- ),
- // tests that names without '-theme' suffix stay valid
- array(
- 'asgard-theme',
- 'someothertheme',
- 'Someothertheme',
- ),
- );
- }
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/tests/Composer/Installers/Test/CakePHPInstallerTest.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/tests/Composer/Installers/Test/CakePHPInstallerTest.php
deleted file mode 100644
index 523e8476..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/tests/Composer/Installers/Test/CakePHPInstallerTest.php
+++ /dev/null
@@ -1,115 +0,0 @@
-<?php
-namespace Composer\Installers\Test;
-
-use Composer\Installers\CakePHPInstaller;
-use Composer\Repository\RepositoryManager;
-use Composer\Repository\InstalledArrayRepository;
-use Composer\Package\Package;
-use Composer\Package\RootPackage;
-use Composer\Package\Link;
-use Composer\Package\Version\VersionParser;
-use Composer\Composer;
-use Composer\Config;
-
-class CakePHPInstallerTest extends TestCase
-{
- private $composer;
- private $io;
-
- /**
- * setUp
- *
- * @return void
- */
- public function setUp()
- {
- $this->package = new Package('CamelCased', '1.0', '1.0');
- $this->io = $this->getMock('Composer\IO\PackageInterface');
- $this->composer = new Composer();
- $this->composer->setConfig(new Config(false));
- }
-
- /**
- * testInflectPackageVars
- *
- * @return void
- */
- public function testInflectPackageVars()
- {
- $installer = new CakePHPInstaller($this->package, $this->composer);
- $result = $installer->inflectPackageVars(array('name' => 'CamelCased'));
- $this->assertEquals($result, array('name' => 'CamelCased'));
-
- $installer = new CakePHPInstaller($this->package, $this->composer);
- $result = $installer->inflectPackageVars(array('name' => 'with-dash'));
- $this->assertEquals($result, array('name' => 'WithDash'));
-
- $installer = new CakePHPInstaller($this->package, $this->composer);
- $result = $installer->inflectPackageVars(array('name' => 'with_underscore'));
- $this->assertEquals($result, array('name' => 'WithUnderscore'));
-
- $installer = new CakePHPInstaller($this->package, $this->composer);
- $result = $installer->inflectPackageVars(array('name' => 'cake/acl'));
- $this->assertEquals($result, array('name' => 'Cake/Acl'));
-
- $installer = new CakePHPInstaller($this->package, $this->composer);
- $result = $installer->inflectPackageVars(array('name' => 'cake/debug-kit'));
- $this->assertEquals($result, array('name' => 'Cake/DebugKit'));
- }
-
- /**
- * Test getLocations returning appropriate values based on CakePHP version
- *
- */
- public function testGetLocations() {
- $package = new RootPackage('CamelCased', '1.0', '1.0');
- $composer = $this->composer;
- $rm = new RepositoryManager(
- $this->getMock('Composer\IO\IOInterface'),
- $this->getMock('Composer\Config')
- );
- $composer->setRepositoryManager($rm);
- $installer = new CakePHPInstaller($package, $composer);
-
- // 2.0 < cakephp < 3.0
- $this->setCakephpVersion($rm, '2.0.0');
- $result = $installer->getLocations();
- $this->assertContains('Plugin/', $result['plugin']);
-
- $this->setCakephpVersion($rm, '2.5.9');
- $result = $installer->getLocations();
- $this->assertContains('Plugin/', $result['plugin']);
-
- $this->setCakephpVersion($rm, '~2.5');
- $result = $installer->getLocations();
- $this->assertContains('Plugin/', $result['plugin']);
-
- // special handling for 2.x versions when 3.x is still in development
- $this->setCakephpVersion($rm, 'dev-master');
- $result = $installer->getLocations();
- $this->assertContains('Plugin/', $result['plugin']);
-
- $this->setCakephpVersion($rm, '>=2.5');
- $result = $installer->getLocations();
- $this->assertContains('Plugin/', $result['plugin']);
-
- // cakephp >= 3.0
- $this->setCakephpVersion($rm, '3.0.*-dev');
- $result = $installer->getLocations();
- $this->assertContains('vendor/{$vendor}/{$name}/', $result['plugin']);
-
- $this->setCakephpVersion($rm, '~8.8');
- $result = $installer->getLocations();
- $this->assertContains('vendor/{$vendor}/{$name}/', $result['plugin']);
- }
-
- protected function setCakephpVersion($rm, $version) {
- $parser = new VersionParser();
- list(, $version) = explode(' ', $parser->parseConstraints($version));
- $installed = new InstalledArrayRepository();
- $package = new Package('cakephp/cakephp', $version, $version);
- $installed->addPackage($package);
- $rm->setLocalRepository($installed);
- }
-
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/tests/Composer/Installers/Test/CraftInstallerTest.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/tests/Composer/Installers/Test/CraftInstallerTest.php
deleted file mode 100644
index 31ccecdb..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/tests/Composer/Installers/Test/CraftInstallerTest.php
+++ /dev/null
@@ -1,83 +0,0 @@
-<?php
-
-namespace Composer\Installers\Test;
-
-use Composer\Installers\CraftInstaller;
-
-/**
- * Tests for the CraftInstaller Class
- *
- * @coversDefaultClass Composer\Installers\CraftInstaller
- */
-class CraftInstallerTest extends TestCase
-{
- /** @var CraftInstaller */
- private $installer;
-
- /**
- * Sets up the fixture, for example, instantiate the class-under-test.
- *
- * This method is called before a test is executed.
- */
- final public function setup()
- {
- $this->installer = new CraftInstaller();
- }
-
- /**
- * @param string $packageName
- * @param string $expectedName
- *
- * @covers ::inflectPackageVars
- *
- * @dataProvider provideExpectedInflectionResults
- */
- final public function testInflectPackageVars($packageName, $expectedName)
- {
- $installer = $this->installer;
-
- $vars = array('name' => $packageName);
- $expected = array('name' => $expectedName);
-
- $actual = $installer->inflectPackageVars($vars);
-
- $this->assertEquals($actual, $expected);
- }
-
- /**
- * Provides various names for packages and the expected result after inflection
- *
- * @return array
- */
- final public function provideExpectedInflectionResults()
- {
- return array(
- // lowercase
- array('foo', 'foo'),
- array('craftfoo', 'craftfoo'),
- array('fooplugin', 'fooplugin'),
- array('craftfooplugin', 'craftfooplugin'),
- // lowercase - dash
- array('craft-foo', 'foo'),
- array('foo-plugin', 'foo'),
- array('craft-foo-plugin', 'foo'),
- // lowercase - underscore
- array('craft_foo', 'craft_foo'),
- array('foo_plugin', 'foo_plugin'),
- array('craft_foo_plugin', 'craft_foo_plugin'),
- // CamelCase
- array('Foo', 'Foo'),
- array('CraftFoo', 'CraftFoo'),
- array('FooPlugin', 'FooPlugin'),
- array('CraftFooPlugin', 'CraftFooPlugin'),
- // CamelCase - Dash
- array('Craft-Foo', 'Foo'),
- array('Foo-Plugin', 'Foo'),
- array('Craft-Foo-Plugin', 'Foo'),
- // CamelCase - underscore
- array('Craft_Foo', 'Craft_Foo'),
- array('Foo_Plugin', 'Foo_Plugin'),
- array('Craft_Foo_Plugin', 'Craft_Foo_Plugin'),
- );
- }
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/tests/Composer/Installers/Test/DokuWikiInstallerTest.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/tests/Composer/Installers/Test/DokuWikiInstallerTest.php
deleted file mode 100644
index 9e385e6a..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/tests/Composer/Installers/Test/DokuWikiInstallerTest.php
+++ /dev/null
@@ -1,89 +0,0 @@
-<?php
-namespace Composer\Installers\Test;
-
-use Composer\Installers\DokuWikiInstaller;
-use Composer\Package\Package;
-use Composer\Composer;
-
-class DokuWikiInstallerTest extends \PHPUnit_Framework_TestCase
-{
- /**
- * @var DokuWikiInstaller
- */
- private $installer;
-
- public function setUp()
- {
- $this->installer = new DokuWikiInstaller(
- new Package('NyanCat', '4.2', '4.2'),
- new Composer()
- );
- }
-
- /**
- * @dataProvider packageNameInflectionProvider
- */
- public function testInflectPackageVars($type, $name, $expected)
- {
- $this->assertEquals(
- $this->installer->inflectPackageVars(array('name' => $name, 'type'=>$type)),
- array('name' => $expected, 'type'=>$type)
- );
- }
-
- public function packageNameInflectionProvider()
- {
- return array(
- array(
- 'dokuwiki-plugin',
- 'dokuwiki-test-plugin',
- 'test',
- ),
- array(
- 'dokuwiki-plugin',
- 'test-plugin',
- 'test',
- ),
- array(
- 'dokuwiki-plugin',
- 'dokuwiki_test',
- 'test',
- ),
- array(
- 'dokuwiki-plugin',
- 'test',
- 'test',
- ),
- array(
- 'dokuwiki-plugin',
- 'test-template',
- 'test-template',
- ),
- array(
- 'dokuwiki-template',
- 'dokuwiki-test-template',
- 'test',
- ),
- array(
- 'dokuwiki-template',
- 'test-template',
- 'test',
- ),
- array(
- 'dokuwiki-template',
- 'dokuwiki_test',
- 'test',
- ),
- array(
- 'dokuwiki-template',
- 'test',
- 'test',
- ),
- array(
- 'dokuwiki-template',
- 'test-plugin',
- 'test-plugin',
- ),
- );
- }
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/tests/Composer/Installers/Test/GravInstallerTest.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/tests/Composer/Installers/Test/GravInstallerTest.php
deleted file mode 100644
index b757799b..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/tests/Composer/Installers/Test/GravInstallerTest.php
+++ /dev/null
@@ -1,63 +0,0 @@
-<?php
-namespace Composer\Installers\Test;
-
-use Composer\Composer;
-use Composer\Installers\GravInstaller;
-
-class GravInstallerTest extends TestCase
-{
- /* @var \Composer\Composer */
- protected $composer;
-
- public function setUp()
- {
- $this->composer = new Composer();
- }
-
- public function testInflectPackageVars()
- {
- $package = $this->getPackage('vendor/name', '0.0.0');
- $installer = new GravInstaller($package, $this->composer);
- $packageVars = $this->getPackageVars($package);
-
- $result = $installer->inflectPackageVars(array_merge($packageVars, array('name' => 'test')));
- $this->assertEquals('test', $result['name']);
-
- foreach ($installer->getLocations() as $name => $location) {
- $result = $installer->inflectPackageVars(array_merge($packageVars, array('name' => "$name-test")));
- $this->assertEquals('test', $result['name']);
- $result = $installer->inflectPackageVars(array_merge($packageVars, array('name' => "test-$name")));
- $this->assertEquals('test', $result['name']);
- $result = $installer->inflectPackageVars(array_merge($packageVars, array('name' => "$name-test-test")));
- $this->assertEquals('test-test', $result['name']);
- $result = $installer->inflectPackageVars(array_merge($packageVars, array('name' => "test-test-$name")));
- $this->assertEquals('test-test', $result['name']);
- $result = $installer->inflectPackageVars(array_merge($packageVars, array('name' => "grav-$name-test")));
- $this->assertEquals('test', $result['name']);
- $result = $installer->inflectPackageVars(array_merge($packageVars, array('name' => "grav-test-$name")));
- $this->assertEquals('test', $result['name']);
- $result = $installer->inflectPackageVars(array_merge($packageVars, array('name' => "grav-$name-test-test")));
- $this->assertEquals('test-test', $result['name']);
- $result = $installer->inflectPackageVars(array_merge($packageVars, array('name' => "grav-test-test-$name")));
- $this->assertEquals('test-test', $result['name']);
- }
- }
-
- /**
- * @param $package \Composer\Package\PackageInterface
- */
- public function getPackageVars($package)
- {
- $type = $package->getType();
-
- $prettyName = $package->getPrettyName();
- if (strpos($prettyName, '/') !== false) {
- list($vendor, $name) = explode('/', $prettyName);
- } else {
- $vendor = '';
- $name = $prettyName;
- }
-
- return compact('name', 'vendor', 'type');
- }
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/tests/Composer/Installers/Test/InstallerTest.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/tests/Composer/Installers/Test/InstallerTest.php
deleted file mode 100644
index 610b8e6e..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/tests/Composer/Installers/Test/InstallerTest.php
+++ /dev/null
@@ -1,428 +0,0 @@
-<?php
-namespace Composer\Installers\Test;
-
-use Composer\Installers\Installer;
-use Composer\Util\Filesystem;
-use Composer\Package\Package;
-use Composer\Package\RootPackage;
-use Composer\Composer;
-use Composer\Config;
-
-class InstallerTest extends TestCase
-{
- private $composer;
- private $config;
- private $vendorDir;
- private $binDir;
- private $dm;
- private $repository;
- private $io;
- private $fs;
-
- /**
- * setUp
- *
- * @return void
- */
- public function setUp()
- {
- $this->fs = new Filesystem;
-
- $this->composer = new Composer();
- $this->config = new Config();
- $this->composer->setConfig($this->config);
-
- $this->vendorDir = realpath(sys_get_temp_dir()) . DIRECTORY_SEPARATOR . 'baton-test-vendor';
- $this->ensureDirectoryExistsAndClear($this->vendorDir);
-
- $this->binDir = realpath(sys_get_temp_dir()) . DIRECTORY_SEPARATOR . 'baton-test-bin';
- $this->ensureDirectoryExistsAndClear($this->binDir);
-
- $this->config->merge(array(
- 'config' => array(
- 'vendor-dir' => $this->vendorDir,
- 'bin-dir' => $this->binDir,
- ),
- ));
-
- $this->dm = $this->getMockBuilder('Composer\Downloader\DownloadManager')
- ->disableOriginalConstructor()
- ->getMock();
- $this->composer->setDownloadManager($this->dm);
-
- $this->repository = $this->getMock('Composer\Repository\InstalledRepositoryInterface');
- $this->io = $this->getMock('Composer\IO\IOInterface');
- }
-
- /**
- * tearDown
- *
- * @return void
- */
- public function tearDown()
- {
- $this->fs->removeDirectory($this->vendorDir);
- $this->fs->removeDirectory($this->binDir);
- }
-
- /**
- * testSupports
- *
- * @return void
- *
- * @dataProvider dataForTestSupport
- */
- public function testSupports($type, $expected)
- {
- $installer = new Installer($this->io, $this->composer);
- $this->assertSame($expected, $installer->supports($type), sprintf('Failed to show support for %s', $type));
- }
-
- /**
- * dataForTestSupport
- */
- public function dataForTestSupport()
- {
- return array(
- array('agl-module', true),
- array('aimeos-extension', true),
- array('annotatecms-module', true),
- array('annotatecms-component', true),
- array('annotatecms-service', true),
- array('bitrix-module', true),
- array('bitrix-component', true),
- array('bitrix-theme', true),
- array('bonefish-package', true),
- array('cakephp', false),
- array('cakephp-', false),
- array('cakephp-app', false),
- array('cakephp-plugin', true),
- array('chef-cookbook', true),
- array('chef-role', true),
- array('codeigniter-app', false),
- array('codeigniter-library', true),
- array('codeigniter-third-party', true),
- array('codeigniter-module', true),
- array('concrete5-block', true),
- array('concrete5-package', true),
- array('concrete5-theme', true),
- array('concrete5-update', true),
- array('craft-plugin', true),
- array('croogo-plugin', true),
- array('croogo-theme', true),
- array('dokuwiki-plugin', true),
- array('dokuwiki-template', true),
- array('drupal-module', true),
- array('dolibarr-module', true),
- array('elgg-plugin', true),
- array('fuel-module', true),
- array('fuel-package', true),
- array('fuel-theme', true),
- array('fuelphp-component', true),
- array('hurad-plugin', true),
- array('hurad-theme', true),
- array('joomla-library', true),
- array('kirby-plugin', true),
- array('kohana-module', true),
- array('laravel-library', true),
- array('lithium-library', true),
- array('magento-library', true),
- array('mako-package', true),
- array('modxevo-snippet', true),
- array('modxevo-plugin', true),
- array('modxevo-module', true),
- array('modxevo-template', true),
- array('modxevo-lib', true),
- array('mediawiki-extension', true),
- array('mediawiki-skin', true),
- array('microweber-module', true),
- array('modulework-module', true),
- array('moodle-mod', true),
- array('october-module', true),
- array('october-plugin', true),
- array('piwik-plugin', true),
- array('phpbb-extension', true),
- array('pimcore-plugin', true),
- array('ppi-module', true),
- array('prestashop-module', true),
- array('prestashop-theme', true),
- array('puppet-module', true),
- array('redaxo-addon', true),
- array('redaxo-bestyle-plugin', true),
- array('roundcube-plugin', true),
- array('shopware-backend-plugin', true),
- array('shopware-core-plugin', true),
- array('shopware-frontend-plugin', true),
- array('shopware-theme', true),
- array('silverstripe-module', true),
- array('silverstripe-theme', true),
- array('smf-module', true),
- array('smf-theme', true),
- array('symfony1-plugin', true),
- array('thelia-module', true),
- array('thelia-frontoffice-template', true),
- array('thelia-backoffice-template', true),
- array('thelia-email-template', true),
- array('tusk-task', true),
- array('tusk-asset', true),
- array('typo3-flow-plugin', true),
- array('typo3-cms-extension', true),
- array('whmcs-gateway', true),
- array('wolfcms-plugin', true),
- array('wordpress-plugin', true),
- array('wordpress-core', false),
- array('zend-library', true),
- array('zikula-module', true),
- array('zikula-theme', true),
- array('kodicms-plugin', true),
- array('kodicms-media', true),
- );
- }
-
- /**
- * testInstallPath
- *
- * @dataProvider dataForTestInstallPath
- */
- public function testInstallPath($type, $path, $name, $version = '1.0.0')
- {
- $installer = new Installer($this->io, $this->composer);
- $package = new Package($name, $version, $version);
-
- $package->setType($type);
- $result = $installer->getInstallPath($package);
- $this->assertEquals($path, $result);
- }
-
- /**
- * dataFormTestInstallPath
- */
- public function dataForTestInstallPath()
- {
- return array(
- array('agl-module', 'More/MyTestPackage/', 'agl/my_test-package'),
- array('aimeos-extension', 'ext/ai-test/', 'author/ai-test'),
- array('annotatecms-module', 'addons/modules/my_module/', 'vysinsky/my_module'),
- array('annotatecms-component', 'addons/components/my_component/', 'vysinsky/my_component'),
- array('annotatecms-service', 'addons/services/my_service/', 'vysinsky/my_service'),
- array('bitrix-module', 'bitrix/modules/my_module/', 'author/my_module'),
- array('bitrix-component', 'bitrix/components/my_component/', 'author/my_component'),
- array('bitrix-theme', 'bitrix/templates/my_theme/', 'author/my_theme'),
- array('bonefish-package', 'Packages/bonefish/package/', 'bonefish/package'),
- array('cakephp-plugin', 'Plugin/Ftp/', 'shama/ftp'),
- array('chef-cookbook', 'Chef/mre/my_cookbook/', 'mre/my_cookbook'),
- array('chef-role', 'Chef/roles/my_role/', 'mre/my_role'),
- array('codeigniter-library', 'application/libraries/my_package/', 'shama/my_package'),
- array('codeigniter-module', 'application/modules/my_package/', 'shama/my_package'),
- array('concrete5-block', 'blocks/concrete5_block/', 'remo/concrete5_block'),
- array('concrete5-package', 'packages/concrete5_package/', 'remo/concrete5_package'),
- array('concrete5-theme', 'themes/concrete5_theme/', 'remo/concrete5_theme'),
- array('concrete5-update', 'updates/concrete5/', 'concrete5/concrete5'),
- array('craft-plugin', 'craft/plugins/my_plugin/', 'mdcpepper/my_plugin'),
- array('croogo-plugin', 'Plugin/Sitemaps/', 'fahad19/sitemaps'),
- array('croogo-theme', 'View/Themed/Readable/', 'rchavik/readable'),
- array('dokuwiki-plugin', 'lib/plugins/someplugin/', 'author/someplugin'),
- array('dokuwiki-template', 'lib/tpl/sometemplate/', 'author/sometemplate'),
- array('dolibarr-module', 'htdocs/custom/my_module/', 'shama/my_module'),
- array('drupal-module', 'modules/my_module/', 'shama/my_module'),
- array('drupal-theme', 'themes/my_module/', 'shama/my_module'),
- array('drupal-profile', 'profiles/my_module/', 'shama/my_module'),
- array('drupal-drush', 'drush/my_module/', 'shama/my_module'),
- array('elgg-plugin', 'mod/sample_plugin/', 'test/sample_plugin'),
- array('fuel-module', 'fuel/app/modules/module/', 'fuel/module'),
- array('fuel-package', 'fuel/packages/orm/', 'fuel/orm'),
- array('fuel-theme', 'fuel/app/themes/theme/', 'fuel/theme'),
- array('fuelphp-component', 'components/demo/', 'fuelphp/demo'),
- array('hurad-plugin', 'plugins/Akismet/', 'atkrad/akismet'),
- array('hurad-theme', 'plugins/Hurad2013/', 'atkrad/Hurad2013'),
- array('joomla-plugin', 'plugins/my_plugin/', 'shama/my_plugin'),
- array('kirby-plugin', 'site/plugins/my_plugin/', 'shama/my_plugin'),
- array('kohana-module', 'modules/my_package/', 'shama/my_package'),
- array('laravel-library', 'libraries/my_package/', 'shama/my_package'),
- array('lithium-library', 'libraries/li3_test/', 'user/li3_test'),
- array('magento-library', 'lib/foo/', 'test/foo'),
- array('modxevo-snippet', 'assets/snippets/my_snippet/', 'shama/my_snippet'),
- array('modxevo-plugin', 'assets/plugins/my_plugin/', 'shama/my_plugin'),
- array('modxevo-module', 'assets/modules/my_module/', 'shama/my_module'),
- array('modxevo-template', 'assets/templates/my_template/', 'shama/my_template'),
- array('modxevo-lib', 'assets/lib/my_lib/', 'shama/my_lib'),
- array('mako-package', 'app/packages/my_package/', 'shama/my_package'),
- array('mediawiki-extension', 'extensions/APC/', 'author/APC'),
- array('mediawiki-extension', 'extensions/APC/', 'author/APC-extension'),
- array('mediawiki-extension', 'extensions/UploadWizard/', 'author/upload-wizard'),
- array('mediawiki-extension', 'extensions/SyntaxHighlight_GeSHi/', 'author/syntax-highlight_GeSHi'),
- array('mediawiki-skin', 'skins/someskin/', 'author/someskin-skin'),
- array('mediawiki-skin', 'skins/someskin/', 'author/someskin'),
- array('microweber-module', 'userfiles/modules/my-thing/', 'author/my-thing-module'),
- array('modulework-module', 'modules/my_package/', 'shama/my_package'),
- array('moodle-mod', 'mod/my_package/', 'shama/my_package'),
- array('october-module', 'modules/my_plugin/', 'shama/my_plugin'),
- array('october-plugin', 'plugins/shama/my_plugin/', 'shama/my_plugin'),
- array('october-theme', 'themes/my_theme/', 'shama/my_theme'),
- array('piwik-plugin', 'plugins/VisitSummary/', 'shama/visit-summary'),
- array('prestashop-module', 'modules/a-module/', 'vendor/a-module'),
- array('prestashop-theme', 'themes/a-theme/', 'vendor/a-theme'),
- array('phpbb-extension', 'ext/test/foo/', 'test/foo'),
- array('phpbb-style', 'styles/foo/', 'test/foo'),
- array('phpbb-language', 'language/foo/', 'test/foo'),
- array('pimcore-plugin', 'plugins/MyPlugin/', 'ubikz/my_plugin'),
- array('ppi-module', 'modules/foo/', 'test/foo'),
- array('puppet-module', 'modules/puppet-name/', 'puppet/puppet-name'),
- array('redaxo-addon', 'redaxo/include/addons/my_plugin/', 'shama/my_plugin'),
- array('redaxo-bestyle-plugin', 'redaxo/include/addons/be_style/plugins/my_plugin/', 'shama/my_plugin'),
- array('roundcube-plugin', 'plugins/base/', 'test/base'),
- array('roundcube-plugin', 'plugins/replace_dash/', 'test/replace-dash'),
- array('shopware-backend-plugin', 'engine/Shopware/Plugins/Local/Backend/ShamaMyBackendPlugin/', 'shama/my-backend-plugin'),
- array('shopware-core-plugin', 'engine/Shopware/Plugins/Local/Core/ShamaMyCorePlugin/', 'shama/my-core-plugin'),
- array('shopware-frontend-plugin', 'engine/Shopware/Plugins/Local/Frontend/ShamaMyFrontendPlugin/', 'shama/my-frontend-plugin'),
- array('shopware-theme', 'templates/my_theme/', 'shama/my-theme'),
- array('silverstripe-module', 'my_module/', 'shama/my_module'),
- array('silverstripe-module', 'sapphire/', 'silverstripe/framework', '2.4.0'),
- array('silverstripe-module', 'framework/', 'silverstripe/framework', '3.0.0'),
- array('silverstripe-module', 'framework/', 'silverstripe/framework', '3.0.0-rc1'),
- array('silverstripe-module', 'framework/', 'silverstripe/framework', 'my/branch'),
- array('silverstripe-theme', 'themes/my_theme/', 'shama/my_theme'),
- array('smf-module', 'Sources/my_module/', 'shama/my_module'),
- array('smf-theme', 'Themes/my_theme/', 'shama/my_theme'),
- array('symfony1-plugin', 'plugins/sfShamaPlugin/', 'shama/sfShamaPlugin'),
- array('symfony1-plugin', 'plugins/sfShamaPlugin/', 'shama/sf-shama-plugin'),
- array('thelia-module', 'local/modules/my_module/', 'shama/my_module'),
- array('thelia-frontoffice-template', 'templates/frontOffice/my_template_fo/', 'shama/my_template_fo'),
- array('thelia-backoffice-template', 'templates/backOffice/my_template_bo/', 'shama/my_template_bo'),
- array('thelia-email-template', 'templates/email/my_template_email/', 'shama/my_template_email'),
- array('tusk-task', '.tusk/tasks/my_task/', 'shama/my_task'),
- array('typo3-flow-package', 'Packages/Application/my_package/', 'shama/my_package'),
- array('typo3-flow-build', 'Build/my_package/', 'shama/my_package'),
- array('typo3-cms-extension', 'typo3conf/ext/my_extension/', 'shama/my_extension'),
- array('whmcs-gateway', 'modules/gateways/gateway_name/', 'vendor/gateway_name'),
- array('wolfcms-plugin', 'wolf/plugins/my_plugin/', 'shama/my_plugin'),
- array('wordpress-plugin', 'wp-content/plugins/my_plugin/', 'shama/my_plugin'),
- array('wordpress-muplugin', 'wp-content/mu-plugins/my_plugin/', 'shama/my_plugin'),
- array('zend-extra', 'extras/library/zend_test/', 'shama/zend_test'),
- array('zikula-module', 'modules/my-test_module/', 'my/test_module'),
- array('zikula-theme', 'themes/my-test_theme/', 'my/test_theme'),
- array('kodicms-media', 'cms/media/vendor/my_media/', 'shama/my_media'),
- array('kodicms-plugin', 'cms/plugins/my_plugin/', 'shama/my_plugin'),
- );
- }
-
- /**
- * testGetCakePHPInstallPathException
- *
- * @return void
- *
- * @expectedException \InvalidArgumentException
- */
- public function testGetCakePHPInstallPathException()
- {
- $installer = new Installer($this->io, $this->composer);
- $package = new Package('shama/ftp', '1.0.0', '1.0.0');
-
- $package->setType('cakephp-whoops');
- $result = $installer->getInstallPath($package);
- }
-
- /**
- * testCustomInstallPath
- */
- public function testCustomInstallPath()
- {
- $installer = new Installer($this->io, $this->composer);
- $package = new Package('shama/ftp', '1.0.0', '1.0.0');
- $package->setType('cakephp-plugin');
- $consumerPackage = new RootPackage('foo/bar', '1.0.0', '1.0.0');
- $this->composer->setPackage($consumerPackage);
- $consumerPackage->setExtra(array(
- 'installer-paths' => array(
- 'my/custom/path/{$name}/' => array(
- 'shama/ftp',
- 'foo/bar',
- ),
- ),
- ));
- $result = $installer->getInstallPath($package);
- $this->assertEquals('my/custom/path/Ftp/', $result);
- }
-
- /**
- * testCustomInstallerName
- */
- public function testCustomInstallerName()
- {
- $installer = new Installer($this->io, $this->composer);
- $package = new Package('shama/cakephp-ftp-plugin', '1.0.0', '1.0.0');
- $package->setType('cakephp-plugin');
- $package->setExtra(array(
- 'installer-name' => 'FTP',
- ));
- $result = $installer->getInstallPath($package);
- $this->assertEquals('Plugin/FTP/', $result);
- }
-
- /**
- * testCustomTypePath
- */
- public function testCustomTypePath()
- {
- $installer = new Installer($this->io, $this->composer);
- $package = new Package('slbmeh/my_plugin', '1.0.0', '1.0.0');
- $package->setType('wordpress-plugin');
- $consumerPackage = new RootPackage('foo/bar', '1.0.0', '1.0.0');
- $this->composer->setPackage($consumerPackage);
- $consumerPackage->setExtra(array(
- 'installer-paths' => array(
- 'my/custom/path/{$name}/' => array(
- 'type:wordpress-plugin'
- ),
- ),
- ));
- $result = $installer->getInstallPath($package);
- $this->assertEquals('my/custom/path/my_plugin/', $result);
- }
-
- /**
- * testNoVendorName
- */
- public function testNoVendorName()
- {
- $installer = new Installer($this->io, $this->composer);
- $package = new Package('sfPhpunitPlugin', '1.0.0', '1.0.0');
-
- $package->setType('symfony1-plugin');
- $result = $installer->getInstallPath($package);
- $this->assertEquals('plugins/sfPhpunitPlugin/', $result);
- }
-
- /**
- * testTypo3Inflection
- */
- public function testTypo3Inflection()
- {
- $installer = new Installer($this->io, $this->composer);
- $package = new Package('typo3/fluid', '1.0.0', '1.0.0');
-
- $package->setAutoload(array(
- 'psr-0' => array(
- 'TYPO3\\Fluid' => 'Classes',
- ),
- ));
-
- $package->setType('typo3-flow-package');
- $result = $installer->getInstallPath($package);
- $this->assertEquals('Packages/Application/TYPO3.Fluid/', $result);
- }
-
- public function testUninstallAndDeletePackageFromLocalRepo()
- {
- $package = new Package('foo', '1.0.0', '1.0.0');
-
- $installer = $this->getMock('Composer\Installers\Installer', array('getInstallPath'), array($this->io, $this->composer));
- $installer->expects($this->once())->method('getInstallPath')->with($package)->will($this->returnValue(sys_get_temp_dir().'/foo'));
-
- $repo = $this->getMock('Composer\Repository\InstalledRepositoryInterface');
- $repo->expects($this->once())->method('hasPackage')->with($package)->will($this->returnValue(true));
- $repo->expects($this->once())->method('removePackage')->with($package);
-
- $installer->uninstall($repo, $package);
- }
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/tests/Composer/Installers/Test/MediaWikiInstallerTest.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/tests/Composer/Installers/Test/MediaWikiInstallerTest.php
deleted file mode 100644
index 3675e188..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/tests/Composer/Installers/Test/MediaWikiInstallerTest.php
+++ /dev/null
@@ -1,66 +0,0 @@
-<?php
-namespace Composer\Installers\Test;
-
-use Composer\Installers\MediaWikiInstaller;
-use Composer\Package\Package;
-use Composer\Composer;
-
-class MediaWikiInstallerTest extends \PHPUnit_Framework_TestCase
-{
- /**
- * @var MediaWikiInstaller
- */
- private $installer;
-
- public function setUp()
- {
- $this->installer = new MediaWikiInstaller(
- new Package('NyanCat', '4.2', '4.2'),
- new Composer()
- );
- }
-
- /**
- * @dataProvider packageNameInflectionProvider
- */
- public function testInflectPackageVars($type, $name, $expected)
- {
- $this->assertEquals(
- $this->installer->inflectPackageVars(array('name' => $name, 'type'=>$type)),
- array('name' => $expected, 'type'=>$type)
- );
- }
-
- public function packageNameInflectionProvider()
- {
- return array(
- array(
- 'mediawiki-extension',
- 'sub-page-list',
- 'SubPageList',
- ),
- array(
- 'mediawiki-extension',
- 'sub-page-list-extension',
- 'SubPageList',
- ),
- array(
- 'mediawiki-extension',
- 'semantic-mediawiki',
- 'SemanticMediawiki',
- ),
- // tests that exactly one '-skin' is cut off, and that skins do not get ucwords treatment like extensions
- array(
- 'mediawiki-skin',
- 'some-skin-skin',
- 'some-skin',
- ),
- // tests that names without '-skin' suffix stay valid
- array(
- 'mediawiki-skin',
- 'someotherskin',
- 'someotherskin',
- ),
- );
- }
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/tests/Composer/Installers/Test/OctoberInstallerTest.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/tests/Composer/Installers/Test/OctoberInstallerTest.php
deleted file mode 100644
index fd427cdc..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/tests/Composer/Installers/Test/OctoberInstallerTest.php
+++ /dev/null
@@ -1,66 +0,0 @@
-<?php
-namespace Composer\Installers\Test;
-
-use Composer\Installers\OctoberInstaller;
-use Composer\Package\Package;
-use Composer\Composer;
-
-class OctoberInstallerTest extends \PHPUnit_Framework_TestCase
-{
- /**
- * @var OctoberInstaller
- */
- private $installer;
-
- public function setUp()
- {
- $this->installer = new OctoberInstaller(
- new Package('NyanCat', '4.2', '4.2'),
- new Composer()
- );
- }
-
- /**
- * @dataProvider packageNameInflectionProvider
- */
- public function testInflectPackageVars($type, $name, $expected)
- {
- $this->assertEquals(
- $this->installer->inflectPackageVars(array('name' => $name, 'type' => $type)),
- array('name' => $expected, 'type' => $type)
- );
- }
-
- public function packageNameInflectionProvider()
- {
- return array(
- array(
- 'october-plugin',
- 'subpagelist',
- 'subpagelist',
- ),
- array(
- 'october-plugin',
- 'subpagelist-plugin',
- 'subpagelist',
- ),
- array(
- 'october-plugin',
- 'semanticoctober',
- 'semanticoctober',
- ),
- // tests that exactly one '-theme' is cut off
- array(
- 'october-theme',
- 'some-theme-theme',
- 'some-theme',
- ),
- // tests that names without '-theme' suffix stay valid
- array(
- 'october-theme',
- 'someothertheme',
- 'someothertheme',
- ),
- );
- }
-} \ No newline at end of file
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/tests/Composer/Installers/Test/PimcoreInstallerTest.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/tests/Composer/Installers/Test/PimcoreInstallerTest.php
deleted file mode 100644
index ea79374b..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/tests/Composer/Installers/Test/PimcoreInstallerTest.php
+++ /dev/null
@@ -1,44 +0,0 @@
-<?php
-namespace Composer\Installers\Test;
-
-use Composer\Installers\PimcoreInstaller;
-use Composer\Package\Package;
-use Composer\Composer;
-
-class PimcoreInstallerTest extends TestCase
-{
- private $composer;
- private $io;
-
- /**
- * setUp
- *
- * @return void
- */
- public function setUp()
- {
- $this->package = new Package('CamelCased', '1.0', '1.0');
- $this->io = $this->getMock('Composer\IO\PackageInterface');
- $this->composer = new Composer();
- }
-
- /**
- * testInflectPackageVars
- *
- * @return void
- */
- public function testInflectPackageVars()
- {
- $installer = new PimcoreInstaller($this->package, $this->composer);
- $result = $installer->inflectPackageVars(array('name' => 'CamelCased'));
- $this->assertEquals($result, array('name' => 'CamelCased'));
-
- $installer = new PimcoreInstaller($this->package, $this->composer);
- $result = $installer->inflectPackageVars(array('name' => 'with-dash'));
- $this->assertEquals($result, array('name' => 'WithDash'));
-
- $installer = new PimcoreInstaller($this->package, $this->composer);
- $result = $installer->inflectPackageVars(array('name' => 'with_underscore'));
- $this->assertEquals($result, array('name' => 'WithUnderscore'));
- }
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/tests/Composer/Installers/Test/PiwikInstallerTest.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/tests/Composer/Installers/Test/PiwikInstallerTest.php
deleted file mode 100644
index 8d9ff3f8..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/tests/Composer/Installers/Test/PiwikInstallerTest.php
+++ /dev/null
@@ -1,63 +0,0 @@
-<?php
-namespace Composer\Installers\Test;
-
-use Composer\Composer;
-use Composer\Installers\PiwikInstaller;
-use Composer\Package\Package;
-use Composer\Package\PackageInterface;
-
-/**
- * Class PiwikInstallerTest
- *
- * @package Composer\Installers\Test
- */
-class PiwikInstallerTest extends TestCase
-{
- /**
- * @varComposer
- */
- private $composer;
-
- /**
- * @var PackageInterface
- */
- private $io;
-
- /**
- * @var Package
- */
- private $package;
-
- /**
- * setUp
- *
- * @return void
- */
- public function setUp()
- {
- $this->package = new Package('VisitSummary', '1.0', '1.0');
- $this->io = $this->getMock('Composer\IO\PackageInterface');
- $this->composer = new Composer();
- }
-
- /**
- * testInflectPackageVars
- *
- * @return void
- */
- public function testInflectPackageVars()
- {
- $installer = new PiwikInstaller($this->package, $this->composer);
- $result = $installer->inflectPackageVars(array('name' => 'VisitSummary'));
- $this->assertEquals($result, array('name' => 'VisitSummary'));
-
- $installer = new PiwikInstaller($this->package, $this->composer);
- $result = $installer->inflectPackageVars(array('name' => 'visit-summary'));
- $this->assertEquals($result, array('name' => 'VisitSummary'));
-
- $installer = new PiwikInstaller($this->package, $this->composer);
- $result = $installer->inflectPackageVars(array('name' => 'visit_summary'));
- $this->assertEquals($result, array('name' => 'VisitSummary'));
- }
-
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/tests/Composer/Installers/Test/TestCase.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/tests/Composer/Installers/Test/TestCase.php
deleted file mode 100644
index 6418a03b..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/tests/Composer/Installers/Test/TestCase.php
+++ /dev/null
@@ -1,64 +0,0 @@
-<?php
-
-/*
- * This file is part of Composer.
- *
- * (c) Nils Adermann <naderman@naderman.de>
- * Jordi Boggiano <j.boggiano@seld.be>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Composer\Installers\Test;
-
-use Composer\Package\Version\VersionParser;
-use Composer\Package\Package;
-use Composer\Package\AliasPackage;
-use Composer\Package\LinkConstraint\VersionConstraint;
-use Composer\Util\Filesystem;
-
-abstract class TestCase extends \PHPUnit_Framework_TestCase
-{
- private static $parser;
-
- protected static function getVersionParser()
- {
- if (!self::$parser) {
- self::$parser = new VersionParser();
- }
-
- return self::$parser;
- }
-
- protected function getVersionConstraint($operator, $version)
- {
- return new VersionConstraint(
- $operator,
- self::getVersionParser()->normalize($version)
- );
- }
-
- protected function getPackage($name, $version)
- {
- $normVersion = self::getVersionParser()->normalize($version);
-
- return new Package($name, $normVersion, $version);
- }
-
- protected function getAliasPackage($package, $version)
- {
- $normVersion = self::getVersionParser()->normalize($version);
-
- return new AliasPackage($package, $normVersion, $version);
- }
-
- protected function ensureDirectoryExistsAndClear($directory)
- {
- $fs = new Filesystem();
- if (is_dir($directory)) {
- $fs->removeDirectory($directory);
- }
- mkdir($directory, 0777, true);
- }
-}
diff --git a/MLEB/UniversalLanguageSelector/vendor/composer/installers/tests/bootstrap.php b/MLEB/UniversalLanguageSelector/vendor/composer/installers/tests/bootstrap.php
deleted file mode 100644
index 30c8fdc6..00000000
--- a/MLEB/UniversalLanguageSelector/vendor/composer/installers/tests/bootstrap.php
+++ /dev/null
@@ -1,4 +0,0 @@
-<?php
-
-$loader = require __DIR__ . '/../src/bootstrap.php';
-$loader->add('Composer\Installers\Test', __DIR__);
diff --git a/MLEB/UniversalLanguageSelector/version b/MLEB/UniversalLanguageSelector/version
deleted file mode 100644
index 9b2e6d7b..00000000
--- a/MLEB/UniversalLanguageSelector/version
+++ /dev/null
@@ -1,4 +0,0 @@
-UniversalLanguageSelector: REL1_26
-2015-11-17T01:21:02
-
-72a77ba
diff --git a/MLEB/cldr/COPYING b/MLEB/cldr/COPYING
index d159169d..9491a9ec 100644
--- a/MLEB/cldr/COPYING
+++ b/MLEB/cldr/COPYING
@@ -1,3 +1,14 @@
+The license text below "====" applies to all files within this distribution,
+other than those that are in a directory which contains files named "LICENSE"
+or "COPYING", or a subdirectory thereof. For those files, the license text
+contained in said file overrides any license information contained in
+directories of smaller depth. Alternative licenses are typically used for
+software that is provided by external parties, and merely packaged with this
+software for convenience.
+
+====
+
+
GNU GENERAL PUBLIC LICENSE
Version 2, June 1991
diff --git a/MLEB/cldr/CldrCurrencies.php b/MLEB/cldr/CldrCurrencies.php
index d094cedc..4657c84e 100644
--- a/MLEB/cldr/CldrCurrencies.php
+++ b/MLEB/cldr/CldrCurrencies.php
@@ -5,10 +5,10 @@
*
* @author Katie Horn
* @copyright Copyright © 2007-2013
- * @license http://www.gnu.org/copyleft/gpl.html GNU General Public License 2.0 or later
+ * @license GPL-2.0-or-later
*/
class CldrCurrency {
- private static $cache = array();
+ private static $cache = [];
/**
* Loads the file which contains the relevant data
@@ -16,13 +16,13 @@ class CldrCurrency {
* @throws Exception
*/
private static function loadData( $data ) {
-
- //bail if we already have it
+ // bail if we already have it
if ( isset( self::$cache[$data] ) ) {
return;
}
$filename = null;
+ $value = [];
switch ( $data ) {
case 'symbols' :
$filename = __DIR__ . '/CldrCurrency/Symbols.php';
@@ -38,7 +38,7 @@ class CldrCurrency {
throw new Exception( "Invalid 'data' parameter:\$data in " . __METHOD__ );
}
- //go get it
+ // go get it
if ( file_exists( $filename ) ) {
require_once $filename;
}
@@ -58,7 +58,7 @@ class CldrCurrency {
*
* @param string $currency_code ISO 4217 3-character currency code.
* @param string $language_code ISO 639 2-character language code.
- * @param string $country_code ISO 3166-1 Alpha-2 country code (optional)
+ * @param string|null $country_code ISO 3166-1 Alpha-2 country code (optional)
* @return string The symbol for the specified currency, language, and country
*/
public static function getSymbol( $currency_code, $language_code, $country_code = null ) {
@@ -67,25 +67,24 @@ class CldrCurrency {
if ( array_key_exists( strtoupper( $currency_code ), self::$cache['symbols'] ) ) {
$currency_code = strtoupper( $currency_code );
$language_code = strtolower( $language_code );
- if ( !is_null( $country_code ) ) {
+ if ( $country_code !== null ) {
$country_code = strtoupper( $country_code );
if ( $country_code === 'UK' ) {
- $country_code = 'GB'; //dang iso overlap...
+ $country_code = 'GB'; // dang iso overlap...
}
}
- //get the default (either the 'root' language, or the original ISO code)
+ // get the default (either the 'root' language, or the original ISO code)
$default = $currency_code;
if ( array_key_exists( 'root', self::$cache['symbols'][$currency_code] ) ) {
$default = self::$cache['symbols'][$currency_code]['root'];
}
- //language code might or might not exist
+ // language code might or might not exist
if ( array_key_exists( $language_code, self::$cache['symbols'][$currency_code] ) ) {
if ( is_array( self::$cache['symbols'][$currency_code][$language_code] ) ) {
-
- //did we specify a country? If not: Default.
- if ( !is_null( $country_code ) &&
+ // did we specify a country? If not: Default.
+ if ( $country_code !== null &&
array_key_exists(
$country_code,
self::$cache['symbols'][$currency_code][$language_code]
@@ -107,7 +106,7 @@ class CldrCurrency {
return $default;
}
} else {
- //we have no idea what you were going for, so you can have your old code back.
+ // we have no idea what you were going for, so you can have your old code back.
return $currency_code;
}
}
@@ -124,12 +123,12 @@ class CldrCurrency {
self::loadData( 'locale' );
$country_code = strtoupper( $country_code );
if ( $country_code === 'UK' ) {
- $country_code = 'GB'; //iso overlap again
+ $country_code = 'GB'; // iso overlap again
}
if ( array_key_exists( $country_code, self::$cache['locale'] ) ) {
return self::$cache['locale'][$country_code];
} else {
- return array();
+ return [];
}
}
diff --git a/MLEB/cldr/CldrCurrency/Symbols.php b/MLEB/cldr/CldrCurrency/Symbols.php
index 4591f464..af66fd97 100644
--- a/MLEB/cldr/CldrCurrency/Symbols.php
+++ b/MLEB/cldr/CldrCurrency/Symbols.php
@@ -1,59 +1,58 @@
<?php
-$currencySymbols = array(
- 'AED' => array(
+$currencySymbols = [
+ 'AED' => [
'ar' => 'د.إ.‏',
- ),
- 'AFN' => array(
- 'es' => array(
- 'DEFAULT' => 'AFN',
- 'MX' => 'Af',
- ),
+ ],
+ 'AFN' => [
'fa' => '؋',
'ps' => '؋',
- 'uz' => '؋',
- ),
- 'ALL' => array(
+ ],
+ 'ALL' => [
'sq' => 'Lekë',
- ),
- 'AMD' => array(
+ ],
+ 'AMD' => [
'hy' => '֏',
- ),
- 'ANG' => array(
- 'en' => array(
+ ],
+ 'ANG' => [
+ 'en' => [
'SX' => 'NAf.',
- ),
- 'es' => array(
- 'DEFAULT' => 'ANG',
- 'MX' => 'Naf',
- ),
- 'nl' => array(
+ ],
+ 'my' => 'NAf',
+ 'nl' => [
'CW' => 'NAf.',
'DEFAULT' => 'ANG',
'SX' => 'NAf.',
- ),
- ),
- 'AOA' => array(
+ ],
+ ],
+ 'AOA' => [
'af' => 'AOA',
'am' => 'AOA',
'ar' => 'AOA',
+ 'as' => 'AOA',
'ast' => 'AOA',
'az' => 'AOA',
+ 'be' => 'AOA',
'bg' => 'AOA',
'bn' => 'AOA',
+ 'br' => 'AOA',
'bs' => 'AOA',
'ca' => 'AOA',
+ 'ccp' => 'AOA',
+ 'ce' => 'AOA',
+ 'chr' => 'AOA',
'cs' => 'AOA',
+ 'cy' => 'AOA',
'da' => 'AOA',
'de' => 'AOA',
'el' => 'AOA',
- 'es' => array(
- 'DEFAULT' => 'AOA',
- 'MX' => 'Kz',
- ),
+ 'es' => 'AOA',
'et' => 'AOA',
'eu' => 'AOA',
+ 'fa' => 'AOA',
'fi' => 'AOA',
+ 'fil' => 'AOA',
+ 'fo' => 'AOA',
'fr' => 'AOA',
'ga' => 'AOA',
'gd' => 'AOA',
@@ -68,15 +67,19 @@ $currencySymbols = array(
'is' => 'AOA',
'it' => 'AOA',
'ja' => 'AOA',
+ 'jv' => 'AOA',
'ka' => 'AOA',
+ 'kab' => 'AOA',
'kea' => 'AOA',
'kk' => 'AOA',
'km' => 'AOA',
'kn' => 'AOA',
'ko' => 'AOA',
- 'ln' => array(
+ 'ky' => 'AOA',
+ 'ln' => [
'AO' => 'Kz',
- ),
+ 'DEFAULT' => 'Kz',
+ ],
'lo' => 'AOA',
'lt' => 'AOA',
'lv' => 'AOA',
@@ -85,66 +88,82 @@ $currencySymbols = array(
'mn' => 'AOA',
'mr' => 'AOA',
'ms' => 'AOA',
+ 'mt' => 'AOA',
+ 'my' => 'AOA',
+ 'mzn' => 'AOA',
'nb' => 'AOA',
'ne' => 'AOA',
'nl' => 'AOA',
+ 'nn' => 'AOA',
+ 'or' => 'AOA',
'pa' => 'AOA',
'pl' => 'AOA',
- 'pt' => array(
+ 'ps' => 'AOA',
+ 'pt' => [
'AO' => 'Kz',
'DEFAULT' => 'AOA',
- ),
+ ],
'ro' => 'AOA',
'root' => 'Kz',
'ru' => 'AOA',
+ 'sd' => 'AOA',
'si' => 'AOA',
'sk' => 'AOA',
'sl' => 'AOA',
+ 'so' => 'AOA',
+ 'sq' => 'AOA',
'sr' => 'AOA',
'sv' => 'AOA',
'sw' => 'AOA',
'ta' => 'AOA',
'te' => 'AOA',
'th' => 'AOA',
+ 'tk' => 'AOA',
'tr' => 'AOA',
'uk' => 'AOA',
'ur' => 'AOA',
'uz' => 'AOA',
'vi' => 'AOA',
+ 'yue' => 'AOA',
'zh' => 'AOA',
- ),
- 'ARA' => array(
- 'es' => array(
- 'MX' => 'ARA',
- ),
- ),
- 'ARS' => array(
+ 'zu' => 'AOA',
+ ],
+ 'ARS' => [
'af' => 'ARS',
'am' => 'ARS',
'ar' => 'ARS',
+ 'as' => 'ARS',
'ast' => 'ARS',
'az' => 'ARS',
+ 'be' => 'ARS',
'bg' => 'ARS',
'bn' => 'ARS',
+ 'br' => 'ARS',
'bs' => 'ARS',
'ca' => 'ARS',
+ 'ccp' => 'ARS',
+ 'ce' => 'ARS',
+ 'chr' => 'ARS',
'cs' => 'ARS',
+ 'cy' => 'ARS',
'da' => 'ARS',
'de' => 'ARS',
+ 'ee' => 'ARS',
'el' => 'ARS',
- 'es' => array(
+ 'es' => [
'AR' => '$',
'DEFAULT' => 'ARS',
- 'MX' => '$a',
- ),
+ ],
'et' => 'ARS',
'eu' => 'ARS',
+ 'fa' => 'ARS',
'fi' => 'ARS',
'fil' => 'ARS',
- 'fr' => array(
+ 'fo' => 'ARS',
+ 'fr' => [
'CA' => 'ARS',
'DEFAULT' => '$AR',
- ),
+ ],
'ga' => 'ARS',
'gd' => 'ARS',
'gl' => 'ARS',
@@ -158,7 +177,10 @@ $currencySymbols = array(
'is' => 'ARS',
'it' => 'ARS',
'ja' => 'ARS',
+ 'jv' => 'ARS',
'ka' => 'ARS',
+ 'kab' => '$AR',
+ 'kk' => 'ARS',
'km' => 'ARS',
'kn' => 'ARS',
'ko' => 'ARS',
@@ -166,42 +188,55 @@ $currencySymbols = array(
'lo' => 'ARS',
'lt' => 'ARS',
'lv' => 'ARS',
+ 'mi' => 'ARS',
'mk' => 'ARS',
'ml' => 'ARS',
'mn' => 'ARS',
'mr' => 'ARS',
'ms' => 'ARS',
+ 'mt' => 'ARS',
+ 'my' => 'ARS',
+ 'mzn' => 'ARS',
'nb' => 'ARS',
'ne' => 'ARS',
'nl' => 'ARS',
+ 'nn' => 'ARS',
+ 'or' => 'ARS',
'pa' => 'ARS',
'pl' => 'ARS',
+ 'ps' => 'ARS',
'pt' => 'ARS',
'ro' => 'ARS',
'root' => '$',
'ru' => 'ARS',
+ 'sd' => 'ARS',
'si' => 'ARS',
'sk' => 'ARS',
'sl' => 'ARS',
+ 'so' => 'ARS',
+ 'sq' => 'ARS',
'sr' => 'ARS',
'sv' => 'ARS',
'sw' => 'ARS',
'ta' => 'ARS',
'te' => 'ARS',
'th' => 'ARS',
+ 'tk' => 'ARS',
'tr' => 'ARS',
'uk' => 'ARS',
'ur' => 'ARS',
'uz' => 'ARS',
'vi' => 'ARS',
+ 'yue' => 'ARS',
'zh' => 'ARS',
- ),
- 'ATS' => array(
+ 'zu' => 'ARS',
+ ],
+ 'ATS' => [
'de' => 'öS',
'gsw' => 'öS',
'lb' => 'öS',
- ),
- 'AUD' => array(
+ ],
+ 'AUD' => [
'am' => 'AU$',
'ar' => 'AU$',
'bg' => 'AUD',
@@ -214,7 +249,7 @@ $currencySymbols = array(
'dsb' => 'AUD',
'dz' => 'AU$',
'ee' => 'AU$',
- 'en' => array(
+ 'en' => [
'AU' => '$',
'CC' => '$',
'CX' => '$',
@@ -222,27 +257,23 @@ $currencySymbols = array(
'NF' => '$',
'NR' => '$',
'TV' => '$',
- ),
+ ],
'eo' => 'AU$',
- 'es' => array(
- 'DEFAULT' => 'AUD',
- 'MX' => 'AU$',
- ),
+ 'es' => 'AUD',
'et' => 'AU$',
'fi' => 'AUD',
- 'fr' => array(
+ 'fr' => [
'CA' => '$ AU',
'DEFAULT' => '$AU',
- ),
+ ],
'fy' => 'AU$',
- 'gl' => '$A',
'hr' => 'AUD',
'hsb' => 'AUD',
'hu' => 'AUD',
'id' => 'AU$',
'is' => 'AUD',
- 'ja' => 'AU$',
'ka' => 'AUD',
+ 'kab' => '$AU',
'kea' => 'AU$',
'ko' => 'AU$',
'ky' => 'AUD',
@@ -251,12 +282,15 @@ $currencySymbols = array(
'lv' => 'AU$',
'mk' => 'AUD',
'nb' => 'AUD',
+ 'nds' => 'AU$',
'nl' => 'AU$',
+ 'nn' => 'AUD',
'pl' => 'AUD',
'pt' => 'AU$',
'ro' => 'AUD',
'root' => 'A$',
'sk' => 'AUD',
+ 'sl' => 'AUD',
'sr' => 'AUD',
'sv' => 'AUD',
'th' => 'AU$',
@@ -264,40 +298,47 @@ $currencySymbols = array(
'tr' => 'AU$',
'uk' => 'AUD',
'vi' => 'AU$',
+ 'yue' => 'AU$',
'zh' => 'AU$',
- ),
- 'AWG' => array(
- 'es' => array(
- 'DEFAULT' => 'AWG',
- 'MX' => 'Afl.',
- ),
- 'nl' => array(
+ ],
+ 'AWG' => [
+ 'my' => 'Afl',
+ 'nl' => [
'AW' => 'Afl.',
'DEFAULT' => 'AWG',
- ),
- ),
- 'AZN' => array(
- 'az' => 'ман.',
- ),
- 'BAM' => array(
+ ],
+ ],
+ 'AZN' => [
+ 'az' => '₼',
+ ],
+ 'BAM' => [
'af' => 'BAM',
'am' => 'BAM',
'ar' => 'BAM',
+ 'as' => 'BAM',
'ast' => 'BAM',
'az' => 'BAM',
+ 'be' => 'BAM',
'bg' => 'BAM',
'bn' => 'BAM',
- 'bs' => 'КМ',
+ 'br' => 'BAM',
'ca' => 'BAM',
+ 'ccp' => 'BAM',
+ 'ce' => 'BAM',
+ 'chr' => 'BAM',
'cs' => 'BAM',
+ 'cy' => 'BAM',
'da' => 'BAM',
'de' => 'BAM',
+ 'ee' => 'BAM',
'el' => 'BAM',
'es' => 'BAM',
'et' => 'BAM',
'eu' => 'BAM',
+ 'fa' => 'BAM',
'fi' => 'BAM',
'fil' => 'BAM',
+ 'fo' => 'BAM',
'fr' => 'BAM',
'ga' => 'BAM',
'gd' => 'BAM',
@@ -305,22 +346,26 @@ $currencySymbols = array(
'gu' => 'BAM',
'he' => 'BAM',
'hi' => 'BAM',
- 'hr' => array(
+ 'hr' => [
'BA' => 'KM',
'DEFAULT' => 'BAM',
- ),
+ ],
'hu' => 'BAM',
'hy' => 'BAM',
'id' => 'BAM',
'is' => 'BAM',
'it' => 'BAM',
'ja' => 'BAM',
+ 'jv' => 'BAM',
'ka' => 'BAM',
+ 'kab' => 'BAM',
'kea' => 'BAM',
+ 'kk' => 'BAM',
'km' => 'BAM',
'kn' => 'BAM',
'ko' => 'BAM',
'ky' => 'BAM',
+ 'ln' => 'BAM',
'lo' => 'BAM',
'lt' => 'BAM',
'lv' => 'BAM',
@@ -329,52 +374,75 @@ $currencySymbols = array(
'mn' => 'BAM',
'mr' => 'BAM',
'ms' => 'BAM',
+ 'mt' => 'BAM',
+ 'my' => 'BAM',
+ 'mzn' => 'BAM',
'nb' => 'BAM',
'ne' => 'BAM',
'nl' => 'BAM',
+ 'nn' => 'BAM',
+ 'or' => 'BAM',
'pa' => 'BAM',
'pl' => 'BAM',
+ 'ps' => 'BAM',
'pt' => 'BAM',
'ro' => 'BAM',
'root' => 'KM',
'ru' => 'BAM',
+ 'sd' => 'BAM',
'si' => 'BAM',
'sk' => 'BAM',
'sl' => 'BAM',
+ 'so' => 'BAM',
+ 'sq' => 'BAM',
+ 'sr' => 'КМ',
'sv' => 'BAM',
'sw' => 'BAM',
'ta' => 'BAM',
'te' => 'BAM',
'th' => 'BAM',
+ 'tk' => 'BAM',
'tr' => 'BAM',
'uk' => 'BAM',
'ur' => 'BAM',
'uz' => 'BAM',
'vi' => 'BAM',
+ 'yue' => 'BAM',
'zh' => 'BAM',
- ),
- 'BBD' => array(
+ 'zu' => 'BAM',
+ ],
+ 'BBD' => [
'af' => 'BBD',
'am' => 'BBD',
'ar' => 'BBD',
+ 'as' => 'BBD',
'ast' => 'BBD',
'az' => 'BBD',
+ 'be' => 'BBD',
'bg' => 'BBD',
'bn' => 'BBD',
+ 'br' => 'BBD',
'bs' => 'BBD',
'ca' => 'BBD',
+ 'ccp' => 'BBD',
+ 'ce' => 'BBD',
+ 'chr' => 'BBD',
'cs' => 'BBD',
+ 'cy' => 'BBD',
'da' => 'BBD',
'de' => 'BBD',
+ 'ee' => 'BBD',
'el' => 'BBD',
- 'en' => array(
+ 'en' => [
'BB' => '$',
- ),
+ ],
'es' => 'BBD',
'et' => 'BBD',
'eu' => 'BBD',
+ 'fa' => 'BBD',
'fi' => 'BBD',
'fil' => 'BBD',
+ 'fo' => 'BBD',
'fr' => 'BBD',
'ga' => 'BBD',
'gd' => 'BBD',
@@ -389,7 +457,9 @@ $currencySymbols = array(
'is' => 'BBD',
'it' => 'BBD',
'ja' => 'BBD',
+ 'jv' => 'BBD',
'ka' => 'BBD',
+ 'kab' => 'BBD',
'kk' => 'BBD',
'km' => 'BBD',
'kn' => 'BBD',
@@ -398,55 +468,78 @@ $currencySymbols = array(
'lo' => 'BBD',
'lt' => 'BBD',
'lv' => 'BBD',
+ 'mi' => 'BBD',
'mk' => 'BBD',
'ml' => 'BBD',
'mn' => 'BBD',
'mr' => 'BBD',
'ms' => 'BBD',
+ 'mt' => 'BBD',
+ 'my' => 'BBD',
+ 'mzn' => 'BBD',
'nb' => 'BBD',
'ne' => 'BBD',
'nl' => 'BBD',
+ 'nn' => 'BBD',
+ 'or' => 'BBD',
'pa' => 'BBD',
'pl' => 'BBD',
+ 'ps' => 'BBD',
'pt' => 'BBD',
'ro' => 'BBD',
'root' => '$',
'ru' => 'BBD',
+ 'sd' => 'BBD',
'si' => 'BBD',
'sk' => 'BBD',
'sl' => 'BBD',
+ 'so' => 'DBB',
+ 'sq' => 'BBD',
'sr' => 'BBD',
'sv' => 'Bds$',
'sw' => 'BBD',
'ta' => 'BBD',
'te' => 'BBD',
'th' => 'BBD',
+ 'tk' => 'BBD',
'tr' => 'BBD',
'uk' => 'BBD',
'ur' => 'BBD',
'uz' => 'BBD',
'vi' => 'BBD',
+ 'yue' => 'BBD',
'zh' => 'BBD',
'zu' => 'BBD',
- ),
- 'BDT' => array(
+ ],
+ 'BDT' => [
'af' => 'BDT',
'am' => 'BDT',
'ar' => 'BDT',
+ 'as' => 'BDT',
'ast' => 'BDT',
'az' => 'BDT',
+ 'be' => 'BDT',
'bg' => 'BDT',
+ 'br' => 'BDT',
'bs' => 'BDT',
'ca' => 'BDT',
+ 'ce' => 'BDT',
+ 'chr' => 'BDT',
'cs' => 'BDT',
+ 'cy' => 'BDT',
'da' => 'BDT',
'de' => 'BDT',
'el' => 'BDT',
+ 'en' => [
+ 'AU' => 'Tk',
+ ],
'es' => 'BDT',
'et' => 'BDT',
'eu' => 'BDT',
+ 'fa' => 'BDT',
'fi' => 'BDT',
'fil' => 'BDT',
+ 'fo' => 'BDT',
'fr' => 'BDT',
'ga' => 'BDT',
'gd' => 'BDT',
@@ -461,11 +554,14 @@ $currencySymbols = array(
'is' => 'BDT',
'it' => 'BDT',
'ja' => 'BDT',
+ 'jv' => 'BDT',
'ka' => 'BDT',
+ 'kab' => 'BDT',
'kk' => 'BDT',
'km' => 'BDT',
'kn' => 'BDT',
'ko' => 'BDT',
+ 'ky' => 'BDT',
'lb' => 'BDT',
'lo' => 'BDT',
'lt' => 'BDT',
@@ -475,81 +571,105 @@ $currencySymbols = array(
'mn' => 'BDT',
'mr' => 'BDT',
'ms' => 'BDT',
+ 'mt' => 'BDT',
+ 'my' => 'BDT',
+ 'mzn' => 'BDT',
'nb' => 'BDT',
'ne' => 'BDT',
'nl' => 'BDT',
+ 'nn' => 'BDT',
+ 'or' => 'BDT',
'pa' => 'BDT',
'pl' => 'BDT',
+ 'ps' => 'BDT',
'pt' => 'BDT',
'ro' => 'BDT',
'root' => '৳',
'ru' => 'BDT',
+ 'sd' => 'BDT',
'si' => 'BDT',
'sk' => 'BDT',
'sl' => 'BDT',
+ 'so' => 'BDT',
+ 'sq' => 'BDT',
'sr' => 'BDT',
'sv' => 'BDT',
'sw' => 'BDT',
'ta' => 'BDT',
'te' => 'BDT',
'th' => 'BDT',
+ 'tk' => 'BDT',
'tr' => 'BDT',
'uk' => 'BDT',
'ur' => 'BDT',
'uz' => 'BDT',
'vi' => 'BDT',
+ 'yue' => 'BDT',
'zh' => 'BDT',
- ),
- 'BEF' => array(
+ 'zu' => 'BDT',
+ ],
+ 'BEF' => [
'fr' => 'FB',
- ),
- 'BGM' => array(
+ 'kab' => 'FB',
+ ],
+ 'BGM' => [
'de' => 'BGK',
- ),
- 'BGN' => array(
+ ],
+ 'BGN' => [
'bg' => 'лв.',
- 'sr' => '[BGN]',
- ),
- 'BGO' => array(
+ ],
+ 'BGO' => [
'de' => 'BGJ',
- ),
- 'BHD' => array(
+ ],
+ 'BHD' => [
'ar' => 'د.ب.‏',
- ),
- 'BIF' => array(
- 'fr' => array(
+ ],
+ 'BIF' => [
+ 'en' => [
+ 'BI' => 'FBu',
+ ],
+ 'fr' => [
'BI' => 'FBu',
'DEFAULT' => 'BIF',
- ),
+ ],
'rn' => 'FBu',
- ),
- 'BMD' => array(
+ ],
+ 'BMD' => [
'af' => 'BMD',
'am' => 'BMD',
'ar' => 'BMD',
+ 'as' => 'BMD',
'ast' => 'BMD',
'az' => 'BMD',
+ 'be' => 'BMD',
'bg' => 'BMD',
'bn' => 'BMD',
+ 'br' => 'BMD',
'bs' => 'BMD',
'ca' => 'BMD',
+ 'ccp' => 'BMD',
+ 'ce' => 'BMD',
+ 'chr' => 'BMD',
'cs' => 'BMD',
'cy' => 'BMD',
'da' => 'BMD',
'de' => 'BMD',
+ 'ee' => 'BMD',
'el' => 'BMD',
- 'en' => array(
+ 'en' => [
'BM' => '$',
- ),
+ ],
'es' => 'BMD',
'et' => 'BMD',
'eu' => 'BMD',
+ 'fa' => 'BMD',
'fi' => 'BMD',
'fil' => 'BMD',
- 'fr' => array(
+ 'fo' => 'BMD',
+ 'fr' => [
'CA' => 'BMD',
'DEFAULT' => '$BM',
- ),
+ ],
'ga' => 'BMD',
'gd' => 'BMD',
'gl' => 'BMD',
@@ -563,8 +683,10 @@ $currencySymbols = array(
'is' => 'BMD',
'it' => 'BMD',
'ja' => 'BMD',
+ 'jv' => 'BMD',
'ka' => 'BMD',
- 'kk' => 'БД',
+ 'kab' => '$BM',
+ 'kk' => 'BMD',
'km' => 'BMD',
'kn' => 'BMD',
'ko' => 'BMD',
@@ -572,63 +694,85 @@ $currencySymbols = array(
'lo' => 'BMD',
'lt' => 'BMD',
'lv' => 'BMD',
+ 'mi' => 'BMD',
'mk' => 'BMD',
'ml' => 'BMD',
'mn' => 'BMD',
'mr' => 'BMD',
'ms' => 'BMD',
+ 'mt' => 'BMD',
+ 'my' => 'BMD',
+ 'mzn' => 'BMD',
'nb' => 'BMD',
'ne' => 'BMD',
'nl' => 'BMD',
+ 'nn' => 'BMD',
+ 'or' => 'BMD',
'pa' => 'BMD',
'pl' => 'BMD',
+ 'ps' => 'BMD',
'pt' => 'BMD',
'ro' => 'BMD',
'root' => '$',
'ru' => 'BMD',
+ 'sah' => 'BMD',
+ 'sd' => 'BMD',
'si' => 'BMD',
'sk' => 'BMD',
'sl' => 'BMD',
+ 'so' => 'BMD',
+ 'sq' => 'BMD',
'sr' => 'BMD',
'sv' => 'BM$',
'sw' => 'BMD',
'ta' => 'BMD',
'te' => 'BMD',
'th' => 'BMD',
+ 'tk' => 'BMD',
'tr' => 'BMD',
'uk' => 'BMD',
'ur' => 'BMD',
'uz' => 'BMD',
'vi' => 'BMD',
+ 'yue' => 'BMD',
'zh' => 'BMD',
'zu' => 'BMD',
- ),
- 'BND' => array(
+ ],
+ 'BND' => [
'af' => 'BND',
'am' => 'BND',
- 'ar' => array(
+ 'ar' => [
'AE' => '$',
'DEFAULT' => 'BND',
- ),
+ ],
+ 'as' => 'BND',
'ast' => 'BND',
'az' => 'BND',
+ 'be' => 'BND',
'bg' => 'BND',
'bn' => 'BND',
+ 'br' => 'BND',
'bs' => 'BND',
'ca' => 'BND',
+ 'ccp' => 'BND',
+ 'ce' => 'BND',
+ 'chr' => 'BND',
'cs' => 'BND',
+ 'cy' => 'BND',
'da' => 'BND',
'de' => 'BND',
'el' => 'BND',
'es' => 'BND',
'et' => 'BND',
'eu' => 'BND',
+ 'fa' => 'BND',
'fi' => 'BND',
'fil' => 'BND',
- 'fr' => array(
+ 'fo' => 'BND',
+ 'fr' => [
'CA' => 'BND',
'DEFAULT' => '$BN',
- ),
+ ],
'ga' => 'BND',
'gd' => 'BND',
'gl' => 'BND',
@@ -642,11 +786,14 @@ $currencySymbols = array(
'is' => 'BND',
'it' => 'BND',
'ja' => 'BND',
+ 'jv' => 'BND',
'ka' => 'BND',
+ 'kab' => '$BN',
'kk' => 'BND',
'km' => 'BND',
'kn' => 'BND',
'ko' => 'BND',
+ 'ky' => 'BND',
'lb' => 'BND',
'lo' => 'BND',
'lt' => 'BND',
@@ -655,56 +802,82 @@ $currencySymbols = array(
'ml' => 'BND',
'mn' => 'BND',
'mr' => 'BND',
- 'ms' => array(
+ 'ms' => [
'BN' => '$',
'DEFAULT' => 'BND',
- ),
+ ],
+ 'mt' => 'BND',
+ 'my' => 'BND',
+ 'mzn' => 'BND',
'nb' => 'BND',
'ne' => 'BND',
'nl' => 'BND',
+ 'nn' => 'BND',
+ 'or' => 'BND',
'pa' => 'BND',
'pl' => 'BND',
+ 'ps' => 'BND',
'pt' => 'BND',
'ro' => 'BND',
'root' => '$',
'ru' => 'BND',
+ 'sd' => 'BND',
'si' => 'BND',
'sk' => 'BND',
'sl' => 'BND',
+ 'so' => 'BND',
+ 'sq' => 'BND',
'sr' => 'BND',
'sv' => 'BND',
'sw' => 'BND',
'ta' => 'BND',
'te' => 'BND',
'th' => 'BND',
+ 'tk' => 'BND',
'tr' => 'BND',
'uk' => 'BND',
'ur' => 'BND',
'uz' => 'BND',
'vi' => 'BND',
+ 'yue' => 'BND',
'zh' => 'BND',
- ),
- 'BOB' => array(
+ 'zu' => 'BND',
+ ],
+ 'BOB' => [
'af' => 'BOB',
'am' => 'BOB',
'ar' => 'BOB',
+ 'as' => 'BOB',
+ 'ast' => 'BOB',
'az' => 'BOB',
+ 'be' => 'BOB',
'bg' => 'BOB',
'bn' => 'BOB',
+ 'br' => 'BOB',
'bs' => 'BOB',
'ca' => 'BOB',
+ 'ccp' => 'BOB',
+ 'ce' => 'BOB',
+ 'chr' => 'BOB',
'cs' => 'BOB',
+ 'cy' => 'BOB',
'da' => 'BOB',
'de' => 'BOB',
+ 'ee' => 'BOB',
'el' => 'BOB',
- 'es' => array(
+ 'en' => [
+ 'AU' => '$b',
+ ],
+ 'es' => [
'BO' => 'Bs',
'DEFAULT' => 'BOB',
- ),
+ ],
'et' => 'BOB',
'eu' => 'BOB',
+ 'fa' => 'BOB',
'fi' => 'BOB',
'fil' => 'BOB',
+ 'fo' => 'BOB',
'fr' => 'BOB',
'ga' => 'BOB',
'gd' => 'BOB',
@@ -719,8 +892,11 @@ $currencySymbols = array(
'is' => 'BOB',
'it' => 'BOB',
'ja' => 'BOB',
+ 'jv' => 'BOB',
'ka' => 'BOB',
+ 'kab' => 'BOB',
'kea' => 'BOB',
+ 'kk' => 'BOB',
'km' => 'BOB',
'kn' => 'BOB',
'ko' => 'BOB',
@@ -733,71 +909,60 @@ $currencySymbols = array(
'mn' => 'BOB',
'mr' => 'BOB',
'ms' => 'BOB',
+ 'mt' => 'BOB',
+ 'my' => 'BOB',
+ 'mzn' => 'BOB',
'nb' => 'BOB',
'ne' => 'BOB',
'nl' => 'BOB',
+ 'nn' => 'BOB',
+ 'or' => 'BOB',
'pa' => 'BOB',
'pl' => 'BOB',
+ 'ps' => 'BOB',
'pt' => 'BOB',
- 'qu' => array(
+ 'qu' => [
'BO' => 'Bs',
- ),
+ ],
'ro' => 'BOB',
'root' => 'Bs',
'ru' => 'BOB',
+ 'sd' => 'BOB',
'si' => 'BOB',
'sk' => 'BOB',
'sl' => 'BOB',
+ 'so' => 'BOB',
+ 'sq' => 'BOB',
'sr' => 'BOB',
'sv' => 'BOB',
'sw' => 'BOB',
'ta' => 'BOB',
'te' => 'BOB',
'th' => 'BOB',
+ 'tk' => 'BOB',
'tr' => 'BOB',
'uk' => 'BOB',
'ur' => 'BOB',
'uz' => 'BOB',
'vi' => 'BOB',
+ 'yue' => 'BOB',
'zh' => 'BOB',
- ),
- 'BOL' => array(
- 'es' => array(
- 'MX' => 'BOL',
- ),
- ),
- 'BOP' => array(
- 'es' => array(
- 'MX' => 'BOP',
- ),
- ),
- 'BOV' => array(
- 'es' => array(
- 'MX' => 'BOV',
- ),
- ),
- 'BRB' => array(
- 'es' => array(
- 'MX' => 'BRB',
- ),
- ),
- 'BRC' => array(
- 'es' => array(
- 'MX' => 'BRC',
- ),
- ),
- 'BRE' => array(
- 'es' => array(
- 'MX' => 'BRE',
- ),
- ),
- 'BRL' => array(
+ 'zu' => 'BOB',
+ ],
+ 'BRL' => [
+ 'be' => 'BRL',
'bg' => 'BRL',
+ 'br' => 'BRL',
'bs' => 'BRL',
'ca' => 'BRL',
- 'es' => 'BRL',
+ 'en' => [
+ 'AU' => 'BRL',
+ ],
+ 'es' => [
+ 'BR' => 'R$',
+ 'DEFAULT' => 'BRL',
+ ],
'fi' => 'BRL',
- 'gl' => '$R',
'hr' => 'BRL',
'hu' => 'BRL',
'is' => 'BRL',
@@ -805,53 +970,47 @@ $currencySymbols = array(
'ky' => 'BRL',
'lt' => 'BRL',
'nb' => 'BRL',
+ 'nn' => 'BRL',
'ro' => 'BRL',
'root' => 'R$',
'sk' => 'BRL',
+ 'sl' => 'BRL',
'sv' => 'BR$',
'uk' => 'BRL',
- ),
- 'BRN' => array(
- 'es' => array(
- 'MX' => 'BRN',
- ),
- ),
- 'BRR' => array(
- 'es' => array(
- 'MX' => 'BRR',
- ),
- ),
- 'BRZ' => array(
- 'es' => array(
- 'MX' => 'BRZ',
- ),
- ),
- 'BSD' => array(
+ ],
+ 'BSD' => [
'af' => 'BSD',
'am' => 'BSD',
'ar' => 'BSD',
+ 'as' => 'BSD',
'ast' => 'BSD',
'az' => 'BSD',
+ 'be' => 'BSD',
'bg' => 'BSD',
'bn' => 'BSD',
+ 'br' => 'BSD',
'bs' => 'BSD',
'ca' => 'BSD',
+ 'ccp' => 'BSD',
+ 'ce' => 'BSD',
+ 'chr' => 'BSD',
'cs' => 'BSD',
+ 'cy' => 'BSD',
'da' => 'BSD',
'de' => 'BSD',
+ 'ee' => 'BSD',
'el' => 'BSD',
- 'en' => array(
+ 'en' => [
'BS' => '$',
- ),
+ ],
'es' => 'BSD',
'et' => 'BSD',
'eu' => 'BSD',
+ 'fa' => 'BSD',
'fi' => 'BSD',
'fil' => 'BSD',
- 'fr' => array(
- 'CA' => 'BSD',
- 'DEFAULT' => '$BS',
- ),
+ 'fo' => 'BSD',
+ 'fr' => 'BSD',
'ga' => 'BSD',
'gd' => 'BSD',
'gl' => 'BSD',
@@ -865,69 +1024,94 @@ $currencySymbols = array(
'is' => 'BSD',
'it' => 'BSD',
'ja' => 'BSD',
+ 'jv' => 'BSD',
'ka' => 'BSD',
+ 'kab' => '$BS',
'kk' => 'BSD',
'km' => 'BSD',
'kn' => 'BSD',
'ko' => 'BSD',
+ 'ky' => 'BSD',
'lo' => 'BSD',
'lt' => 'BSD',
'lv' => 'BSD',
+ 'mi' => 'BSD',
'mk' => 'BSD',
'ml' => 'BSD',
'mn' => 'BSD',
'mr' => 'BSD',
'ms' => 'BSD',
+ 'mt' => 'BSD',
+ 'my' => 'BSD',
+ 'mzn' => 'BSD',
'nb' => 'BSD',
'ne' => 'BSD',
'nl' => 'BSD',
+ 'nn' => 'BSD',
+ 'or' => 'BSD',
'pa' => 'BSD',
'pl' => 'BSD',
+ 'ps' => 'BSD',
'pt' => 'BSD',
'ro' => 'BSD',
'root' => '$',
'ru' => 'BSD',
+ 'sd' => 'BSD',
'si' => 'BSD',
'sk' => 'BSD',
'sl' => 'BSD',
+ 'so' => 'DBS',
+ 'sq' => 'BSD',
'sr' => 'BSD',
'sv' => 'BS$',
'sw' => 'BSD',
'ta' => 'BSD',
'te' => 'BSD',
'th' => 'BSD',
+ 'tk' => 'BSD',
'tr' => 'BSD',
'uk' => 'BSD',
'ur' => 'BSD',
'uz' => 'BSD',
'vi' => 'BSD',
+ 'yue' => 'BSD',
'zh' => 'BSD',
'zu' => 'BSD',
- ),
- 'BTN' => array(
+ ],
+ 'BTN' => [
'dz' => 'Nu.',
- ),
- 'BWP' => array(
+ ],
+ 'BWP' => [
'af' => 'BWP',
'am' => 'BWP',
'ar' => 'BWP',
+ 'as' => 'BWP',
'ast' => 'BWP',
'az' => 'BWP',
+ 'be' => 'BWP',
'bg' => 'BWP',
'bn' => 'BWP',
+ 'br' => 'BWP',
'bs' => 'BWP',
'ca' => 'BWP',
+ 'ccp' => 'BWP',
+ 'ce' => 'BWP',
+ 'chr' => 'BWP',
'cs' => 'BWP',
+ 'cy' => 'BWP',
'da' => 'BWP',
'de' => 'BWP',
'el' => 'BWP',
- 'en' => array(
+ 'en' => [
'BW' => 'P',
- ),
+ ],
'es' => 'BWP',
'et' => 'BWP',
'eu' => 'BWP',
+ 'fa' => 'BWP',
'fi' => 'BWP',
+ 'fil' => 'BWP',
+ 'fo' => 'BWP',
'fr' => 'BWP',
'ga' => 'BWP',
'gd' => 'BWP',
@@ -942,12 +1126,15 @@ $currencySymbols = array(
'is' => 'BWP',
'it' => 'BWP',
'ja' => 'BWP',
+ 'jv' => 'BWP',
'ka' => 'BWP',
+ 'kab' => 'BWP',
'kea' => 'BWP',
'kk' => 'BWP',
'km' => 'BWP',
'kn' => 'BWP',
'ko' => 'BWP',
+ 'ky' => 'BWP',
'lo' => 'BWP',
'lt' => 'BWP',
'lv' => 'BWP',
@@ -956,135 +1143,188 @@ $currencySymbols = array(
'mn' => 'BWP',
'mr' => 'BWP',
'ms' => 'BWP',
+ 'mt' => 'BWP',
+ 'my' => 'BWP',
+ 'mzn' => 'BWP',
'nb' => 'BWP',
'ne' => 'BWP',
'nl' => 'BWP',
+ 'nn' => 'BWP',
+ 'or' => 'BWP',
'pa' => 'BWP',
'pl' => 'BWP',
+ 'ps' => 'BWP',
'pt' => 'BWP',
'ro' => 'BWP',
'root' => 'P',
'ru' => 'BWP',
+ 'sd' => 'BWP',
'si' => 'BWP',
'sk' => 'BWP',
'sl' => 'BWP',
+ 'so' => 'BWP',
+ 'sq' => 'BWP',
'sr' => 'BWP',
'sv' => 'BWP',
'sw' => 'BWP',
'ta' => 'BWP',
'te' => 'BWP',
'th' => 'BWP',
+ 'tk' => 'BWP',
'tr' => 'BWP',
'uk' => 'BWP',
'ur' => 'BWP',
'uz' => 'BWP',
'vi' => 'BWP',
+ 'yue' => 'BWP',
'zh' => 'BWP',
- ),
- 'BYR' => array(
- 'af' => 'BYR',
- 'am' => 'BYR',
- 'ar' => 'BYR',
- 'ast' => 'BYR',
- 'az' => 'BYR',
- 'bg' => 'BYR',
- 'bn' => 'BYR',
- 'bs' => 'BYR',
- 'ca' => 'BYR',
- 'cs' => 'BYR',
- 'da' => 'BYR',
- 'de' => 'BYR',
- 'el' => 'BYR',
- 'es' => array(
- 'DEFAULT' => 'BYR',
- 'MX' => 'Br',
- ),
- 'et' => 'BYR',
- 'eu' => 'BYR',
- 'fi' => 'BYR',
- 'fil' => 'BYR',
- 'fr' => 'BYR',
- 'ga' => 'BYR',
- 'gd' => 'BYR',
- 'gl' => 'BYR',
- 'gu' => 'BYR',
- 'he' => 'BYR',
- 'hi' => 'BYR',
- 'hr' => 'BYR',
- 'hu' => 'BYR',
- 'hy' => 'BYR',
- 'id' => 'BYR',
- 'is' => 'BYR',
- 'it' => 'BYR',
- 'ja' => 'BYR',
- 'ka' => 'BYR',
- 'km' => 'BYR',
- 'kn' => 'BYR',
- 'ko' => 'BYR',
- 'ky' => 'BYR',
- 'lo' => 'BYR',
- 'lt' => 'BYR',
- 'lv' => 'BYR',
- 'mk' => 'BYR',
- 'ml' => 'BYR',
- 'mn' => 'BYR',
- 'mr' => 'BYR',
- 'ms' => 'BYR',
- 'nb' => 'BYR',
- 'ne' => 'BYR',
- 'nl' => 'BYR',
- 'pa' => 'BYR',
- 'pl' => 'BYR',
- 'pt' => 'BYR',
- 'ro' => 'BYR',
+ 'zu' => 'BWP',
+ ],
+ 'BYN' => [
+ 'af' => 'BYN',
+ 'am' => 'BYN',
+ 'ar' => 'BYN',
+ 'as' => 'BYN',
+ 'ast' => 'BYN',
+ 'az' => 'BYN',
+ 'be' => 'Br',
+ 'bg' => 'BYN',
+ 'bn' => 'BYN',
+ 'br' => 'BYN',
+ 'bs' => 'BYN',
+ 'ca' => 'BYN',
+ 'ccp' => 'BYN',
+ 'ce' => 'BYN',
+ 'chr' => 'BYN',
+ 'cs' => 'BYN',
+ 'cu' => 'BYN',
+ 'cy' => 'BYN',
+ 'da' => 'BYN',
+ 'de' => 'BYN',
+ 'ee' => 'BYN',
+ 'el' => 'BYN',
+ 'es' => [
+ 'DEFAULT' => 'BYN',
+ 'MX' => 'p.',
+ ],
+ 'et' => 'BYN',
+ 'eu' => 'BYN',
+ 'fa' => 'BYN',
+ 'fi' => 'BYN',
+ 'fil' => 'BYN',
+ 'fo' => 'BYN',
+ 'fr' => [
+ 'CA' => 'Br',
+ 'DEFAULT' => 'BYN',
+ ],
+ 'ga' => 'BYN',
+ 'gd' => 'BYN',
+ 'gl' => 'BYN',
+ 'gu' => 'BYN',
+ 'he' => 'BYN',
+ 'hi' => 'BYN',
+ 'hr' => 'BYN',
+ 'hu' => 'BYN',
+ 'hy' => 'BYN',
+ 'id' => 'BYN',
+ 'is' => 'BYN',
+ 'it' => 'BYN',
+ 'ja' => 'BYN',
+ 'jv' => 'BYN',
+ 'ka' => 'BYN',
+ 'kab' => 'BYN',
+ 'kk' => 'BYN',
+ 'km' => 'BYN',
+ 'kn' => 'BYN',
+ 'ko' => 'BYN',
+ 'ky' => 'BYN',
+ 'lo' => 'BYN',
+ 'lt' => 'BYN',
+ 'lv' => 'BYN',
+ 'mk' => 'BYN',
+ 'ml' => 'BYN',
+ 'mn' => 'BYN',
+ 'mr' => 'BYN',
+ 'ms' => 'BYN',
+ 'mt' => 'BYN',
+ 'my' => 'BYN',
+ 'mzn' => 'BYN',
+ 'nb' => 'BYN',
+ 'ne' => 'BYN',
+ 'nl' => 'BYN',
+ 'nn' => 'BYN',
+ 'or' => 'BYN',
+ 'pa' => 'BYN',
+ 'pl' => 'BYN',
+ 'ps' => 'BYN',
+ 'pt' => 'BYN',
+ 'ro' => 'BYN',
'root' => 'р.',
- 'ru' => array(
- 'BY' => 'р.',
- 'DEFAULT' => 'BYR',
- ),
- 'si' => 'BYR',
- 'sk' => 'BYR',
- 'sl' => 'BYR',
- 'sr' => '[BYR]',
- 'sv' => 'BYR',
- 'sw' => 'BYR',
- 'ta' => 'BYR',
- 'te' => 'BYR',
- 'th' => 'BYR',
- 'tr' => 'BYR',
- 'uk' => 'BYR',
- 'ur' => 'BYR',
- 'uz' => 'BYR',
- 'vi' => 'BYR',
- 'zh' => 'BYR',
- ),
- 'BZD' => array(
+ 'ru' => [
+ 'BY' => 'Br',
+ 'DEFAULT' => 'BYN',
+ ],
+ 'sd' => 'BYN',
+ 'si' => 'BYN',
+ 'sk' => 'BYN',
+ 'sl' => 'BYN',
+ 'so' => 'BYN',
+ 'sq' => 'BYN',
+ 'sr' => 'BYN',
+ 'sv' => 'BYN',
+ 'sw' => 'BYN',
+ 'ta' => 'BYN',
+ 'te' => 'BYN',
+ 'th' => 'BYN',
+ 'tk' => 'BYN',
+ 'tr' => 'BYN',
+ 'uk' => 'BYN',
+ 'ur' => 'BYN',
+ 'uz' => 'BYN',
+ 'vi' => 'BYN',
+ 'yue' => 'BYN',
+ 'zh' => 'BYN',
+ 'zu' => 'BYN',
+ ],
+ 'BZD' => [
'af' => 'BZD',
'am' => 'BZD',
'ar' => 'BZD',
+ 'as' => 'BZD',
'ast' => 'BZD',
'az' => 'BZD',
+ 'be' => 'BZD',
'bg' => 'BZD',
'bn' => 'BZD',
+ 'br' => 'BZD',
'bs' => 'BZD',
'ca' => 'BZD',
+ 'ccp' => 'BZD',
+ 'ce' => 'BZD',
+ 'chr' => 'BZD',
'cs' => 'BZD',
'cy' => 'BZD',
'da' => 'BZD',
'de' => 'BZD',
+ 'ee' => 'BZD',
'el' => 'BZD',
- 'en' => array(
+ 'en' => [
'BZ' => '$',
- ),
- 'es' => 'BZD',
+ ],
+ 'es' => [
+ 'BZ' => '$',
+ 'DEFAULT' => 'BZD',
+ ],
'et' => 'BZD',
'eu' => 'BZD',
+ 'fa' => 'BZD',
'fi' => 'BZD',
'fil' => 'BZD',
- 'fr' => array(
+ 'fo' => 'BZD',
+ 'fr' => [
'CA' => 'BZD',
'DEFAULT' => '$BZ',
- ),
+ ],
'ga' => 'BZD',
'gd' => 'BZD',
'gl' => 'BZD',
@@ -1098,137 +1338,151 @@ $currencySymbols = array(
'is' => 'BZD',
'it' => 'BZD',
'ja' => 'BZD',
+ 'jv' => 'BZD',
'ka' => 'BZD',
+ 'kab' => '$BZ',
'kk' => 'BZD',
'km' => 'BZD',
'kn' => 'BZD',
'ko' => 'BZD',
'ky' => 'BZD',
+ 'ln' => 'BZD',
'lo' => 'BZD',
'lt' => 'BZD',
'lv' => 'BZD',
+ 'mi' => 'BZD',
'mk' => 'BZD',
'ml' => 'BZD',
'mn' => 'BZD',
'mr' => 'BZD',
'ms' => 'BZD',
+ 'mt' => 'BZD',
+ 'my' => 'BZD',
+ 'mzn' => 'BZD',
'nb' => 'BZD',
'ne' => 'BZD',
'nl' => 'BZD',
+ 'nn' => 'BZD',
+ 'or' => 'BZD',
'pa' => 'BZD',
'pl' => 'BZD',
+ 'ps' => 'BZD',
'pt' => 'BZD',
'ro' => 'BZD',
'root' => '$',
'ru' => 'BZD',
+ 'sah' => 'BZD',
+ 'sd' => 'BZD',
'si' => 'BZD',
'sk' => 'BZD',
'sl' => 'BZD',
+ 'so' => 'BZD',
+ 'sq' => 'BZD',
'sr' => 'BZD',
'sv' => 'BZ$',
'sw' => 'BZD',
'ta' => 'BZD',
'te' => 'BZD',
'th' => 'BZD',
+ 'tk' => 'BZD',
'tr' => 'BZD',
'uk' => 'BZD',
'ur' => 'BZD',
'uz' => 'BZD',
'vi' => 'BZD',
+ 'yue' => 'BZD',
'zh' => 'BZD',
'zu' => 'BZD',
- ),
- 'CAD' => array(
+ ],
+ 'CAD' => [
+ 'be' => 'CAD',
'bg' => 'CAD',
'br' => '$CA',
'bs' => 'CAD',
'ca' => 'CAD',
- 'en' => array(
+ 'en' => [
+ 'AU' => 'CAD',
'CA' => '$',
- ),
- 'es' => array(
+ ],
+ 'es' => [
'DEFAULT' => 'CA$',
419 => 'CAD',
- ),
+ ],
'fa' => '$CA',
'fi' => 'CAD',
- 'fr' => array(
+ 'fr' => [
'CA' => '$',
'DEFAULT' => '$CA',
- ),
+ ],
'fy' => 'C$',
- 'gl' => '$CA',
'hr' => 'CAD',
'hu' => 'CAD',
'is' => 'CAD',
- 'kk' => 'КД$',
+ 'kab' => '$CA',
'ky' => 'CAD',
'lt' => 'CAD',
'ms' => 'CAD',
'nb' => 'CAD',
'nl' => 'C$',
+ 'nn' => 'CAD',
'pl' => 'CAD',
'ro' => 'CAD',
'root' => 'CA$',
'sk' => 'CAD',
'sl' => 'CAD',
- 'sv' => 'CAN$',
'uk' => 'CAD',
- ),
- 'CDF' => array(
- 'fr' => array(
+ ],
+ 'CDF' => [
+ 'fr' => [
'CD' => 'FC',
'DEFAULT' => 'CDF',
- ),
+ ],
'ln' => 'FC',
'lu' => 'FC',
- 'sw' => array(
+ 'sw' => [
'CD' => 'FC',
'DEFAULT' => 'CDF',
- ),
- ),
- 'CHF' => array(
- 'de' => array(
- 'CH' => 'CHF',
- 'DEFAULT' => 'CHF',
- ),
- ),
- 'CLE' => array(
- 'es' => array(
- 'MX' => 'CLE',
- ),
- ),
- 'CLF' => array(
- 'es' => array(
- 'MX' => 'CLF',
- ),
- ),
- 'CLP' => array(
+ ],
+ ],
+ 'CHF' => [
+ 'ln' => 'Fr.',
+ ],
+ 'CLP' => [
'af' => 'CLP',
'am' => 'CLP',
'ar' => 'CLP',
+ 'as' => 'CLP',
'ast' => 'CLP',
'az' => 'CLP',
+ 'be' => 'CLP',
'bg' => 'CLP',
'bn' => 'CLP',
+ 'br' => 'CLP',
'bs' => 'CLP',
'ca' => 'CLP',
+ 'ccp' => 'CLP',
+ 'ce' => 'CLP',
+ 'chr' => 'CLP',
'cs' => 'CLP',
+ 'cy' => 'CLP',
'da' => 'CLP',
'de' => 'CLP',
+ 'ee' => 'CLP',
'el' => 'CLP',
- 'es' => array(
+ 'es' => [
'CL' => '$',
'DEFAULT' => 'CLP',
- ),
+ ],
'et' => 'CLP',
'eu' => 'CLP',
+ 'fa' => 'CLP',
'fi' => 'CLP',
'fil' => 'CLP',
- 'fr' => array(
+ 'fo' => 'CLP',
+ 'fr' => [
'CA' => 'CLP',
'DEFAULT' => '$CL',
- ),
+ ],
'ga' => 'CLP',
'gd' => 'CLP',
'gl' => 'CLP',
@@ -1242,7 +1496,10 @@ $currencySymbols = array(
'is' => 'CLP',
'it' => 'CLP',
'ja' => 'CLP',
+ 'jv' => 'CLP',
'ka' => 'CLP',
+ 'kab' => '$CL',
+ 'kk' => 'CLP',
'km' => 'CLP',
'kn' => 'CLP',
'ko' => 'CLP',
@@ -1255,59 +1512,76 @@ $currencySymbols = array(
'mn' => 'CLP',
'mr' => 'CLP',
'ms' => 'CLP',
+ 'mt' => 'CLP',
+ 'my' => 'CLP',
+ 'mzn' => 'CLP',
'nb' => 'CLP',
'ne' => 'CLP',
'nl' => 'CLP',
+ 'nn' => 'CLP',
+ 'or' => 'CLP',
'pa' => 'CLP',
'pl' => 'CLP',
+ 'ps' => 'CLP',
'pt' => 'CLP',
'ro' => 'CLP',
'root' => '$',
'ru' => 'CLP',
+ 'sd' => 'CLP',
'si' => 'CLP',
'sk' => 'CLP',
'sl' => 'CLP',
+ 'so' => 'CLP',
+ 'sq' => 'CLP',
'sr' => 'CLP',
'sv' => 'CLP',
'sw' => 'CLP',
'ta' => 'CLP',
'te' => 'CLP',
'th' => 'CLP',
+ 'tk' => 'CLP',
'tr' => 'CLP',
'uk' => 'CLP',
'ur' => 'CLP',
'uz' => 'CLP',
'vi' => 'CLP',
+ 'yue' => 'CLP',
'zh' => 'CLP',
- ),
- 'CNY' => array(
- 'ar' => 'ي.ص',
+ 'zu' => 'CLP',
+ ],
+ 'CNH' => [
+ 'am' => 'የቻይና ዩዋን',
+ ],
+ 'CNY' => [
'bg' => 'CNY',
- 'bo' => array(
+ 'bo' => [
'DEFAULT' => '¥',
'IN' => 'CN¥',
- ),
- 'br' => '¥',
+ ],
+ 'br' => 'CNY',
'bs' => 'CNY',
- 'ca' => '¥',
- 'es' => array(
- 'DEFAULT' => 'CNY',
- 'MX' => 'CN¥',
- ),
+ 'ca' => 'CNY',
+ 'en' => [
+ 'AU' => 'CNY',
+ ],
+ 'es' => 'CNY',
'fa' => '¥CN',
'fi' => 'CNY',
- 'fr' => array(
+ 'fr' => [
'CA' => 'CN¥',
'DEFAULT' => 'CNY',
- ),
+ ],
+ 'he' => '‎CN¥‎',
'hr' => 'CNY',
'hu' => 'CNY',
'ii' => '¥',
'ja' => '元',
'ka' => 'CNY',
+ 'kab' => 'CNY',
'lt' => 'CNY',
'mk' => 'CNY',
'nb' => 'CNY',
+ 'nn' => 'CNY',
'pl' => 'CNY',
'ro' => 'CNY',
'root' => 'CN¥',
@@ -1315,39 +1589,49 @@ $currencySymbols = array(
'sv' => 'CNY',
'ug' => '¥',
'uk' => 'CNY',
- 'zh' => array(
- 'DEFAULT' => 'CN¥',
+ 'zh' => [
+ 'DEFAULT' => '¥',
'HK' => 'CN¥',
'MO' => 'CN¥',
'SG' => 'CN¥',
- ),
- ),
- 'COP' => array(
+ ],
+ ],
+ 'COP' => [
'af' => 'COP',
'am' => 'COP',
'ar' => 'COP',
+ 'as' => 'COP',
'ast' => 'COP',
'az' => 'COP',
+ 'be' => 'COP',
'bg' => 'COP',
'bn' => 'COP',
+ 'br' => 'COP',
'bs' => 'COP',
'ca' => 'COP',
+ 'ccp' => 'COP',
+ 'ce' => 'COP',
+ 'chr' => 'COP',
'cs' => 'COP',
+ 'cy' => 'COP',
'da' => 'COP',
'de' => 'COP',
+ 'ee' => 'COP',
'el' => 'COP',
- 'es' => array(
+ 'es' => [
'CO' => '$',
'DEFAULT' => 'COP',
- ),
+ ],
'et' => 'COP',
'eu' => 'COP',
+ 'fa' => 'COP',
'fi' => 'COP',
'fil' => 'COP',
- 'fr' => array(
+ 'fo' => 'COP',
+ 'fr' => [
'CA' => 'COP',
'DEFAULT' => '$CO',
- ),
+ ],
'ga' => 'COP',
'gd' => 'COP',
'gl' => 'COP',
@@ -1361,7 +1645,10 @@ $currencySymbols = array(
'is' => 'COP',
'it' => 'COP',
'ja' => 'COP',
+ 'jv' => 'COP',
'ka' => 'COP',
+ 'kab' => '$CO',
+ 'kk' => 'COP',
'km' => 'COP',
'kn' => 'COP',
'ko' => 'COP',
@@ -1374,59 +1661,75 @@ $currencySymbols = array(
'mn' => 'COP',
'mr' => 'COP',
'ms' => 'COP',
+ 'mt' => 'COP',
+ 'my' => 'COP',
+ 'mzn' => 'COP',
'nb' => 'COP',
'ne' => 'COP',
'nl' => 'COP',
+ 'nn' => 'COP',
+ 'or' => 'COP',
'pa' => 'COP',
'pl' => 'COP',
+ 'ps' => 'COP',
'pt' => 'COP',
'ro' => 'COP',
'root' => '$',
'ru' => 'COP',
+ 'sd' => 'COP',
'si' => 'COP',
'sk' => 'COP',
'sl' => 'COP',
+ 'so' => 'COP',
+ 'sq' => 'COP',
'sr' => 'COP',
'sv' => 'COP',
'sw' => 'COP',
'ta' => 'COP',
'te' => 'COP',
'th' => 'COP',
+ 'tk' => 'COP',
'tr' => 'COP',
'uk' => 'COP',
'ur' => 'COP',
'uz' => 'COP',
'vi' => 'COP',
+ 'yue' => 'COP',
'zh' => 'COP',
- ),
- 'COU' => array(
- 'es' => array(
- 'MX' => 'COU',
- ),
- ),
- 'CRC' => array(
+ 'zu' => 'COP',
+ ],
+ 'CRC' => [
'af' => 'CRC',
'am' => 'CRC',
'ar' => 'CRC',
+ 'as' => 'CRC',
'ast' => 'CRC',
'az' => 'CRC',
+ 'be' => 'CRC',
'bg' => 'CRC',
'bn' => 'CRC',
+ 'br' => 'CRC',
'bs' => 'CRC',
'ca' => 'CRC',
+ 'ccp' => 'CRC',
+ 'ce' => 'CRC',
+ 'chr' => 'CRC',
'cs' => 'CRC',
'cy' => 'CRC',
'da' => 'CRC',
'de' => 'CRC',
+ 'ee' => 'CRC',
'el' => 'CRC',
- 'es' => array(
+ 'es' => [
'CR' => '₡',
'DEFAULT' => 'CRC',
- ),
+ ],
'et' => 'CRC',
'eu' => 'CRC',
+ 'fa' => 'CRC',
'fi' => 'CRC',
'fil' => 'CRC',
+ 'fo' => 'CRC',
'fr' => 'CRC',
'ga' => 'CRC',
'gd' => 'CRC',
@@ -1441,67 +1744,93 @@ $currencySymbols = array(
'is' => 'CRC',
'it' => 'CRC',
'ja' => 'CRC',
+ 'jv' => 'CRC',
'ka' => 'CRC',
+ 'kab' => 'CRC',
'kk' => 'CRC',
'km' => 'CRC',
'kn' => 'CRC',
'ko' => 'CRC',
+ 'ky' => 'CRC',
'lo' => 'CRC',
'lt' => 'CRC',
'lv' => 'CRC',
+ 'mi' => 'CRC',
'mk' => 'CRC',
'ml' => 'CRC',
'mn' => 'CRC',
'mr' => 'CRC',
'ms' => 'CRC',
+ 'mt' => 'CRC',
+ 'my' => 'CRC',
+ 'mzn' => 'CRC',
'nb' => 'CRC',
'ne' => 'CRC',
'nl' => 'CRC',
+ 'nn' => 'CRC',
+ 'or' => 'CRC',
'pa' => 'CRC',
'pl' => 'CRC',
+ 'ps' => 'CRC',
'pt' => 'CRC',
'ro' => 'CRC',
'root' => '₡',
'ru' => 'CRC',
+ 'sah' => 'CRC',
+ 'sd' => 'CRC',
'si' => 'CRC',
'sk' => 'CRC',
'sl' => 'CRC',
+ 'so' => 'KKR',
+ 'sq' => 'CRC',
'sr' => 'CRC',
'sv' => 'CRC',
'sw' => 'CRC',
'ta' => 'CRC',
'te' => 'CRC',
'th' => 'CRC',
+ 'tk' => 'CRC',
'tr' => 'CRC',
'uk' => 'CRC',
'ur' => 'CRC',
'uz' => 'CRC',
'vi' => 'CRC',
+ 'yue' => 'CRC',
'zh' => 'CRC',
'zu' => 'CRC',
- ),
- 'CSK' => array(
+ ],
+ 'CSK' => [
'cs' => 'Kčs',
- ),
- 'CUC' => array(
+ ],
+ 'CUC' => [
'af' => 'CUC',
'am' => 'CUC',
'ar' => 'CUC',
+ 'as' => 'CUC',
'ast' => 'CUC',
'az' => 'CUC',
+ 'be' => 'CUC',
'bg' => 'CUC',
'bn' => 'CUC',
+ 'br' => 'CUC',
'bs' => 'CUC',
'ca' => 'CUC',
+ 'ccp' => 'CUC',
+ 'ce' => 'CUC',
+ 'chr' => 'CUC',
'cs' => 'CUC',
+ 'cy' => 'CUC',
'da' => 'CUC',
'de' => 'CUC',
+ 'ee' => 'CUC',
'el' => 'CUC',
'es' => 'CUC',
'et' => 'CUC',
'eu' => 'CUC',
+ 'fa' => 'CUC',
'fi' => 'CUC',
'fil' => 'CUC',
+ 'fo' => 'CUC',
'fr' => 'CUC',
'ga' => 'CUC',
'gd' => 'CUC',
@@ -1516,67 +1845,95 @@ $currencySymbols = array(
'is' => 'CUC',
'it' => 'CUC',
'ja' => 'CUC',
+ 'jv' => 'CUC',
'ka' => 'CUC',
+ 'kab' => 'CUC',
'kk' => 'CUC',
'km' => 'CUC',
'kn' => 'CUC',
'ko' => 'CUC',
+ 'ky' => 'CUC',
'lo' => 'CUC',
'lt' => 'CUC',
'lv' => 'CUC',
+ 'mi' => 'CUC',
'mk' => 'CUC',
'ml' => 'CUC',
'mn' => 'CUC',
'mr' => 'CUC',
'ms' => 'CUC',
+ 'mt' => 'CUC',
+ 'my' => 'CUC',
+ 'mzn' => 'CUC',
'nb' => 'CUC',
'ne' => 'CUC',
'nl' => 'CUC',
+ 'nn' => 'CUC',
+ 'or' => 'CUC',
'pa' => 'CUC',
'pl' => 'CUC',
+ 'ps' => 'CUC',
'pt' => 'CUC',
'ro' => 'CUC',
'root' => '$',
'ru' => 'CUC',
+ 'sd' => 'CUC',
'si' => 'CUC',
'sk' => 'CUC',
'sl' => 'CUC',
+ 'so' => 'CUC',
+ 'sq' => 'CUC',
'sr' => 'CUC',
'sv' => 'CUC',
'sw' => 'CUC',
'ta' => 'CUC',
'te' => 'CUC',
'th' => 'CUC',
+ 'tk' => 'CUC',
'tr' => 'CUC',
'uk' => 'CUC',
'ur' => 'CUC',
'uz' => 'CUC',
'vi' => 'CUC',
+ 'yue' => 'CUC',
'zh' => 'CUC',
'zu' => 'CUC',
- ),
- 'CUP' => array(
+ ],
+ 'CUP' => [
'af' => 'CUP',
'am' => 'CUP',
'ar' => 'CUP',
+ 'as' => 'CUP',
'ast' => 'CUP',
'az' => 'CUP',
+ 'be' => 'CUP',
'bg' => 'CUP',
'bn' => 'CUP',
+ 'br' => 'CUP',
'bs' => 'CUP',
'ca' => 'CUP',
+ 'ccp' => 'CUP',
+ 'ce' => 'CUP',
+ 'chr' => 'CUP',
'cs' => 'CUP',
+ 'cy' => 'CUP',
'da' => 'CUP',
'de' => 'CUP',
+ 'ee' => 'CUP',
'el' => 'CUP',
- 'es' => array(
+ 'en' => [
+ 'AU' => '₱',
+ ],
+ 'es' => [
'CU' => '$',
'DEFAULT' => 'CUP',
- ),
+ ],
'et' => 'CUP',
'eu' => 'CUP',
+ 'fa' => 'CUP',
'fi' => 'CUP',
'fil' => 'CUP',
+ 'fo' => 'CUP',
'fr' => 'CUP',
'ga' => 'CUP',
'gd' => 'CUP',
@@ -1591,73 +1948,99 @@ $currencySymbols = array(
'is' => 'CUP',
'it' => 'CUP',
'ja' => 'CUP',
+ 'jv' => 'CUP',
'ka' => 'CUP',
+ 'kab' => 'CUP',
'kk' => 'CUP',
'km' => 'CUP',
'kn' => 'CUP',
'ko' => 'CUP',
+ 'ky' => 'CUP',
'lo' => 'CUP',
'lt' => 'CUP',
'lv' => 'CUP',
+ 'mi' => 'CUP',
'mk' => 'CUP',
'ml' => 'CUP',
'mn' => 'CUP',
'mr' => 'CUP',
'ms' => 'CUP',
+ 'mt' => 'CUP',
+ 'my' => 'CUP',
+ 'mzn' => 'CUP',
'nb' => 'CUP',
'ne' => 'CUP',
'nl' => 'CUP',
+ 'nn' => 'CUP',
+ 'or' => 'CUP',
'pa' => 'CUP',
'pl' => 'CUP',
+ 'ps' => 'CUP',
'pt' => 'CUP',
'ro' => 'CUP',
'root' => '$',
'ru' => 'CUP',
+ 'sd' => 'CUP',
'si' => 'CUP',
'sk' => 'CUP',
'sl' => 'CUP',
+ 'so' => 'CUP',
+ 'sq' => 'CUP',
'sr' => 'CUP',
'sv' => 'CUP',
'sw' => 'CUP',
'ta' => 'CUP',
'te' => 'CUP',
'th' => 'CUP',
+ 'tk' => 'CUP',
'tr' => 'CUP',
'uk' => 'CUP',
'ur' => 'CUP',
'uz' => 'CUP',
'vi' => 'CUP',
+ 'yue' => 'CUP',
'zh' => 'CUP',
'zu' => 'CUP',
- ),
- 'CVE' => array(
+ ],
+ 'CVE' => [
'kea' => '​',
- 'pt' => array(
+ 'pt' => [
'CV' => '​',
'DEFAULT' => 'CVE',
- ),
- ),
- 'CYP' => array(
+ ],
+ ],
+ 'CYP' => [
'fr' => '£CY',
- ),
- 'CZK' => array(
+ 'kab' => '£CY',
+ ],
+ 'CZK' => [
'af' => 'CZK',
'am' => 'CZK',
'ar' => 'CZK',
+ 'as' => 'CZK',
'ast' => 'CZK',
'az' => 'CZK',
+ 'be' => 'CZK',
'bg' => 'CZK',
'bn' => 'CZK',
- 'bs' => 'Кч',
+ 'br' => 'CZK',
+ 'bs' => 'CZK',
'ca' => 'CZK',
+ 'ccp' => 'CZK',
+ 'ce' => 'CZK',
+ 'chr' => 'CZK',
+ 'cy' => 'CZK',
'da' => 'CZK',
'de' => 'CZK',
+ 'ee' => 'CZK',
'el' => 'CZK',
'es' => 'CZK',
'et' => 'CZK',
'eu' => 'CZK',
+ 'fa' => 'CZK',
'fi' => 'CZK',
'fil' => 'CZK',
+ 'fo' => 'CZK',
'fr' => 'CZK',
'ga' => 'CZK',
'gd' => 'CZK',
@@ -1672,12 +2055,16 @@ $currencySymbols = array(
'is' => 'CZK',
'it' => 'CZK',
'ja' => 'CZK',
+ 'jv' => 'CZK',
'ka' => 'CZK',
+ 'kab' => 'CZK',
'kea' => 'CZK',
+ 'kk' => 'CZK',
'km' => 'CZK',
'kn' => 'CZK',
'ko' => 'CZK',
'ky' => 'CZK',
+ 'ln' => 'CZK',
'lo' => 'CZK',
'lt' => 'CZK',
'lv' => 'CZK',
@@ -1686,67 +2073,96 @@ $currencySymbols = array(
'mn' => 'CZK',
'mr' => 'CZK',
'ms' => 'CZK',
+ 'mt' => 'CZK',
+ 'my' => 'CZK',
+ 'mzn' => 'CZK',
'nb' => 'CZK',
'ne' => 'CZK',
'nl' => 'CZK',
+ 'nn' => 'CZK',
+ 'or' => 'CZK',
'pa' => 'CZK',
'pl' => 'CZK',
+ 'ps' => 'CZK',
'pt' => 'CZK',
'ro' => 'CZK',
'root' => 'Kč',
'ru' => 'CZK',
+ 'sd' => 'CZK',
'si' => 'CZK',
'sk' => 'CZK',
'sl' => 'CZK',
+ 'so' => 'CZK',
+ 'sq' => 'CZK',
'sr' => 'CZK',
'sv' => 'CZK',
'sw' => 'CZK',
'ta' => 'CZK',
'te' => 'CZK',
'th' => 'CZK',
+ 'tk' => 'CZK',
'tr' => 'CZK',
'uk' => 'CZK',
'ur' => 'CZK',
'uz' => 'CZK',
'vi' => 'CZK',
+ 'yue' => 'CZK',
'zh' => 'CZK',
- ),
- 'DEM' => array(
+ 'zu' => 'CZK',
+ ],
+ 'DEM' => [
'de' => 'DM',
- ),
- 'DJF' => array(
- 'ar' => array(
+ ],
+ 'DJF' => [
+ 'ar' => [
'DEFAULT' => 'DJF',
'DJ' => 'Fdj',
- ),
- 'fr' => array(
+ ],
+ 'fr' => [
'DEFAULT' => 'DJF',
'DJ' => 'Fdj',
- ),
- 'so' => array(
+ ],
+ 'so' => [
+ 'DEFAULT' => 'DJF',
'DJ' => 'Fdj',
- ),
- ),
- 'DKK' => array(
+ ],
+ ],
+ 'DKK' => [
'af' => 'DKK',
'am' => 'DKK',
'ar' => 'DKK',
+ 'as' => 'DKK',
'ast' => 'DKK',
'az' => 'DKK',
+ 'be' => 'DKK',
'bg' => 'DKK',
'bn' => 'DKK',
+ 'br' => 'DKK',
'bs' => 'DKK',
'ca' => 'DKK',
+ 'ccp' => 'DKK',
+ 'ce' => 'DKK',
+ 'chr' => 'DKK',
'cs' => 'DKK',
+ 'cy' => 'DKK',
'da' => 'kr.',
'de' => 'DKK',
+ 'ee' => 'DKK',
'el' => 'DKK',
+ 'en' => [
+ 'DK' => 'kr.',
+ ],
'eo' => 'DKK',
'es' => 'DKK',
'et' => 'DKK',
'eu' => 'DKK',
+ 'fa' => 'DKK',
'fi' => 'DKK',
'fil' => 'DKK',
+ 'fo' => [
+ 'DEFAULT' => 'kr',
+ 'DK' => 'kr.',
+ ],
'fr' => 'DKK',
'ga' => 'DKK',
'gd' => 'DKK',
@@ -1761,13 +2177,17 @@ $currencySymbols = array(
'is' => 'DKK',
'it' => 'DKK',
'ja' => 'DKK',
+ 'jv' => 'DKK',
'ka' => 'DKK',
+ 'kab' => 'DKK',
'kea' => 'DKK',
+ 'kk' => 'DKK',
'kl' => 'kr.',
'km' => 'DKK',
'kn' => 'DKK',
'ko' => 'DKK',
'ky' => 'DKK',
+ 'ln' => 'DKK',
'lo' => 'DKK',
'lt' => 'DKK',
'lv' => 'DKK',
@@ -1776,57 +2196,77 @@ $currencySymbols = array(
'mn' => 'DKK',
'mr' => 'DKK',
'ms' => 'DKK',
+ 'my' => 'DKK',
+ 'mzn' => 'DKK',
'nb' => 'DKK',
+ 'nds' => 'DKK',
'ne' => 'DKK',
'nl' => 'DKK',
+ 'nn' => 'DKK',
+ 'or' => 'DKK',
'pa' => 'DKK',
'pl' => 'DKK',
+ 'ps' => 'DKK',
'pt' => 'DKK',
'rm' => 'DKK',
'ro' => 'DKK',
'root' => 'kr',
'ru' => 'DKK',
+ 'sd' => 'DKK',
'se' => 'Dkr',
'si' => 'DKK',
'sk' => 'DKK',
'sl' => 'DKK',
+ 'so' => 'DKK',
+ 'sq' => 'DKK',
'sr' => 'DKK',
'sv' => 'Dkr',
'sw' => 'DKK',
'ta' => 'DKK',
'te' => 'DKK',
'th' => 'DKK',
+ 'tk' => 'DKK',
'tr' => 'DKK',
'uk' => 'DKK',
'ur' => 'DKK',
'uz' => 'DKK',
'vi' => 'DKK',
+ 'yue' => 'DKK',
'zh' => 'DKK',
'zu' => 'DKK',
- ),
- 'DOP' => array(
+ ],
+ 'DOP' => [
'af' => 'DOP',
'am' => 'DOP',
'ar' => 'DOP',
+ 'as' => 'DOP',
'ast' => 'DOP',
'az' => 'DOP',
+ 'be' => 'DOP',
'bg' => 'DOP',
'bn' => 'DOP',
+ 'br' => 'DOP',
'bs' => 'DOP',
'ca' => 'DOP',
+ 'ccp' => 'DOP',
+ 'ce' => 'DOP',
+ 'chr' => 'DOP',
'cs' => 'DOP',
+ 'cy' => 'DOP',
'da' => 'DOP',
'de' => 'DOP',
+ 'ee' => 'DOP',
'el' => 'DOP',
- 'es' => array(
+ 'es' => [
'DEFAULT' => 'DOP',
- 'DO' => '$',
- 'MX' => 'RD$',
- ),
+ 'DO' => 'RD$',
+ ],
'et' => 'DOP',
'eu' => 'DOP',
+ 'fa' => 'DOP',
'fi' => 'DOP',
'fil' => 'DOP',
+ 'fo' => 'DOP',
'fr' => 'DOP',
'ga' => 'DOP',
'gd' => 'DOP',
@@ -1841,85 +2281,106 @@ $currencySymbols = array(
'is' => 'DOP',
'it' => 'DOP',
'ja' => 'DOP',
+ 'jv' => 'DOP',
'ka' => 'DOP',
+ 'kab' => 'DOP',
'kk' => 'DOP',
'km' => 'DOP',
'kn' => 'DOP',
'ko' => 'DOP',
+ 'ky' => 'DOP',
'lo' => 'DOP',
'lt' => 'DOP',
'lv' => 'DOP',
+ 'mi' => 'DOP',
'mk' => 'DOP',
'ml' => 'DOP',
'mn' => 'DOP',
'mr' => 'DOP',
'ms' => 'DOP',
+ 'mt' => 'DOP',
+ 'my' => 'DOP',
+ 'mzn' => 'DOP',
'nb' => 'DOP',
'ne' => 'DOP',
'nl' => 'DOP',
+ 'nn' => 'DOP',
+ 'or' => 'DOP',
'pa' => 'DOP',
'pl' => 'DOP',
+ 'ps' => 'DOP',
'pt' => 'DOP',
'ro' => 'DOP',
'root' => '$',
'ru' => 'DOP',
+ 'sd' => 'DOP',
'si' => 'DOP',
'sk' => 'DOP',
'sl' => 'DOP',
+ 'so' => 'DOP',
+ 'sq' => 'DOP',
'sr' => 'DOP',
'sv' => 'RD$',
'sw' => 'DOP',
'ta' => 'DOP',
'te' => 'DOP',
'th' => 'DOP',
+ 'tk' => 'DOP',
'tr' => 'DOP',
'uk' => 'DOP',
'ur' => 'DOP',
'uz' => 'DOP',
'vi' => 'DOP',
+ 'yue' => 'DOP',
'zh' => 'DOP',
'zu' => 'DOP',
- ),
- 'DZD' => array(
+ ],
+ 'DZD' => [
'ar' => 'د.ج.‏',
- 'fr' => array(
+ 'fr' => [
'DEFAULT' => 'DZD',
'DZ' => 'DA',
- ),
+ ],
'kab' => 'DA',
- ),
- 'ECS' => array(
- 'es' => array(
- 'MX' => 'ECS',
- ),
- ),
- 'ECV' => array(
- 'es' => array(
- 'MX' => 'ECV',
- ),
- ),
- 'EEK' => array(
+ ],
+ 'EEK' => [
'et' => 'kr',
'sv' => 'Ekr',
- ),
- 'EGP' => array(
+ ],
+ 'EGP' => [
'af' => 'EGP',
'am' => 'EGP',
'ar' => 'ج.م.‏',
+ 'as' => 'EGP',
'ast' => 'EGP',
'az' => 'EGP',
+ 'be' => 'EGP',
'bg' => 'EGP',
'bn' => 'EGP',
+ 'br' => 'EGP',
'bs' => 'EGP',
'ca' => 'EGP',
+ 'ccp' => 'EGP',
+ 'ce' => 'EGP',
+ 'chr' => 'EGP',
'cs' => 'EGP',
+ 'cy' => 'EGP',
'da' => 'EGP',
'de' => 'EGP',
'el' => 'EGP',
- 'es' => 'EGP',
+ 'en' => [
+ 'AU' => '£',
+ ],
+ 'es' => [
+ 'DEFAULT' => 'EGP',
+ 419 => 'E£',
+ ],
'et' => 'EGP',
'eu' => 'EGP',
+ 'fa' => 'EGP',
'fi' => 'EGP',
+ 'fil' => 'EGP',
+ 'fo' => 'EGP',
'fr' => 'EGP',
'ga' => 'EGP',
'gd' => 'EGP',
@@ -1934,12 +2395,15 @@ $currencySymbols = array(
'is' => 'EGP',
'it' => 'EGP',
'ja' => 'EGP',
+ 'jv' => 'EGP',
'ka' => 'EGP',
+ 'kab' => 'EGP',
'kea' => 'EGP',
'kk' => 'EGP',
'km' => 'EGP',
'kn' => 'EGP',
'ko' => 'EGP',
+ 'ky' => 'EGP',
'lo' => 'EGP',
'lt' => 'EGP',
'lv' => 'EGP',
@@ -1948,107 +2412,148 @@ $currencySymbols = array(
'mn' => 'EGP',
'mr' => 'EGP',
'ms' => 'EGP',
+ 'mt' => 'EGP',
+ 'my' => 'EGP',
+ 'mzn' => 'EGP',
'nb' => 'EGP',
'ne' => 'EGP',
'nl' => 'EGP',
+ 'nn' => 'EGP',
+ 'or' => 'EGP',
'pa' => 'EGP',
'pl' => 'EGP',
+ 'ps' => 'EGP',
'pt' => 'EGP',
'ro' => 'EGP',
'root' => 'E£',
'ru' => 'EGP',
+ 'sd' => 'EGP',
'si' => 'EGP',
'sk' => 'EGP',
'sl' => 'EGP',
+ 'so' => 'EGP',
+ 'sq' => 'EGP',
'sr' => 'EGP',
'sv' => 'EG£',
'sw' => 'EGP',
'ta' => 'EGP',
'te' => 'EGP',
'th' => 'EGP',
+ 'tk' => 'EGP',
'tr' => 'EGP',
'uk' => 'EGP',
'ur' => 'EGP',
'uz' => 'EGP',
'vi' => 'EGP',
+ 'yue' => 'EGP',
'zh' => 'EGP',
- ),
- 'ERN' => array(
- 'ar' => array(
+ 'zu' => 'EGP',
+ ],
+ 'ERN' => [
+ 'ar' => [
'DEFAULT' => 'ERN',
'ER' => 'Nfk',
- ),
- 'en' => array(
+ ],
+ 'en' => [
'ER' => 'Nfk',
- ),
- 'ti' => array(
+ ],
+ 'ti' => [
'ER' => 'Nfk',
- ),
- ),
- 'ESP' => array(
+ ],
+ ],
+ 'ESP' => [
+ 'ast' => 'ESP',
+ 'br' => 'ESP',
'cs' => 'ESP',
+ 'cy' => 'ESP',
'de' => 'ESP',
'fi' => 'ESP',
+ 'fr' => 'ESP',
'ga' => 'ESP',
'gd' => 'ESP',
'hr' => 'ESP',
'id' => 'ESP',
'ja' => 'ESP',
+ 'kab' => 'ESP',
'nb' => 'ESP',
'nl' => 'ESP',
'root' => '₧',
+ 'sk' => 'ESP',
'sv' => 'ESP',
'th' => 'ESP',
'tr' => 'ESP',
'vi' => 'ESP',
+ 'yue' => 'ESP',
'zh' => 'ESP',
- ),
- 'ETB' => array(
+ ],
+ 'ETB' => [
'am' => 'ብር',
'om' => 'Br',
- 'so' => array(
+ 'so' => [
+ 'DEFAULT' => 'ETB',
'ET' => 'Br',
- ),
+ ],
'ti' => 'Br',
- ),
- 'EUR' => array(
- 'es' => array(
+ ],
+ 'EUR' => [
+ 'de' => [
+ 'CH' => 'EUR',
+ 'DEFAULT' => '€',
+ 'LI' => 'EUR',
+ ],
+ 'en' => [
+ 'AU' => 'EUR',
+ ],
+ 'es' => [
+ 'DEFAULT' => '€',
419 => 'EUR',
- ),
+ ],
'hr' => 'EUR',
'hu' => 'EUR',
'is' => 'EUR',
'ro' => 'EUR',
'root' => '€',
+ 'tk' => 'EUR',
'uk' => 'EUR',
- ),
- 'FIM' => array(
+ ],
+ 'FIM' => [
'fi' => 'mk',
- ),
- 'FJD' => array(
+ ],
+ 'FJD' => [
'af' => 'FJD',
'am' => 'FJD',
'ar' => 'FJD',
+ 'as' => 'FJD',
+ 'ast' => 'FJD',
'az' => 'FJD',
+ 'be' => 'FJD',
'bg' => 'FJD',
'bn' => 'FJD',
+ 'br' => 'FJD',
'bs' => 'FJD',
'ca' => 'FJD',
+ 'ccp' => 'FJD',
+ 'ce' => 'FJD',
+ 'chr' => 'FJD',
'cs' => 'FJD',
+ 'cy' => 'FJD',
'da' => 'FJD',
'de' => 'FJD',
'el' => 'FJD',
- 'en' => array(
+ 'en' => [
'FJ' => '$',
- ),
+ ],
'es' => 'FJD',
'et' => 'FJD',
'eu' => 'FJD',
+ 'fa' => 'FJD',
'fi' => 'FJD',
- 'fr' => array(
+ 'fil' => 'FJD',
+ 'fo' => 'FJD',
+ 'fr' => [
'CA' => 'FJD',
'DEFAULT' => '$FJ',
- ),
+ ],
'fy' => 'FJ$',
'ga' => 'FJD',
'gd' => 'FJD',
@@ -2063,11 +2568,16 @@ $currencySymbols = array(
'is' => 'FJD',
'it' => 'FJD',
'ja' => 'FJD',
+ 'jv' => 'FJD',
'ka' => 'FJD',
+ 'kab' => '$FJ',
'kk' => 'FJD',
'km' => 'FJD',
'kn' => 'FJD',
'ko' => 'FJD',
+ 'ky' => 'FJD',
+ 'ln' => 'FJD',
+ 'lo' => 'FJD',
'lt' => 'FJD',
'lv' => 'FJD',
'mk' => 'FJD',
@@ -2075,58 +2585,84 @@ $currencySymbols = array(
'mn' => 'FJD',
'mr' => 'FJD',
'ms' => 'FJD',
+ 'mt' => 'FJD',
+ 'my' => 'FJD',
'nb' => 'FJD',
'ne' => 'FJD',
'nl' => 'FJ$',
+ 'nn' => 'FJD',
+ 'or' => 'FJD',
'pa' => 'FJD',
'pl' => 'FJD',
+ 'ps' => 'FJD',
'pt' => 'FJD',
'ro' => 'FJD',
'root' => '$',
'ru' => 'FJD',
+ 'sd' => 'FJD',
'si' => 'FJD',
'sk' => 'FJD',
'sl' => 'FJD',
+ 'so' => 'FJD',
+ 'sq' => 'FJD',
'sr' => 'FJD',
'sv' => 'FJD',
'sw' => 'FJD',
'ta' => 'FJD',
'te' => 'FJD',
'th' => 'FJD',
+ 'tk' => 'FJD',
'to' => 'FJD',
'tr' => 'FJD',
'uk' => 'FJD',
'ur' => 'FJD',
'uz' => 'FJD',
'vi' => 'FJD',
+ 'yue' => 'FJD',
'zh' => 'FJD',
- ),
- 'FKP' => array(
+ 'zu' => 'FJD',
+ ],
+ 'FKP' => [
'af' => 'FKP',
'am' => 'FKP',
'ar' => 'FKP',
+ 'as' => 'FKP',
'ast' => 'FKP',
'az' => 'FKP',
+ 'be' => 'FKP',
'bg' => 'FKP',
'bn' => 'FKP',
+ 'br' => 'FKP',
'bs' => 'FKP',
'ca' => 'FKP',
+ 'ccp' => 'FKP',
+ 'ce' => 'FKP',
+ 'chr' => 'FKP',
'cs' => 'FKP',
+ 'cy' => 'FKP',
'da' => 'FKP',
'de' => 'FKP',
+ 'ee' => 'FKP',
'el' => 'FKP',
- 'en' => array(
+ 'en' => [
'FK' => '£',
- ),
- 'es' => 'FKP',
+ ],
+ 'es' => [
+ 'DEFAULT' => 'FKP',
+ 'MX' => '£',
+ 'US' => '£',
+ 419 => 'FK£',
+ ],
'et' => 'FKP',
'eu' => 'FKP',
+ 'fa' => 'FKP',
'fi' => 'FKP',
'fil' => 'FKP',
- 'fr' => array(
+ 'fo' => 'FKP',
+ 'fr' => [
'CA' => 'FKP',
'DEFAULT' => '£FK',
- ),
+ ],
'ga' => 'FKP',
'gd' => 'FKP',
'gl' => 'FKP',
@@ -2140,8 +2676,11 @@ $currencySymbols = array(
'is' => 'FKP',
'it' => 'FKP',
'ja' => 'FKP',
+ 'jv' => 'FKP',
'ka' => 'FKP',
+ 'kab' => '£FK',
'kea' => 'FKP',
+ 'kk' => 'FKP',
'km' => 'FKP',
'kn' => 'FKP',
'ko' => 'FKP',
@@ -2154,110 +2693,248 @@ $currencySymbols = array(
'mn' => 'FKP',
'mr' => 'FKP',
'ms' => 'FKP',
+ 'mt' => 'FKP',
+ 'my' => 'FKP',
+ 'mzn' => 'FKP',
'nb' => 'FKP',
'ne' => 'FKP',
'nl' => 'FKP',
+ 'nn' => 'FKP',
+ 'or' => 'FKP',
'pa' => 'FKP',
'pl' => 'FKP',
+ 'ps' => 'FKP',
'pt' => 'FKP',
'ro' => 'FKP',
'root' => '£',
'ru' => 'FKP',
+ 'sd' => 'FKP',
'si' => 'FKP',
'sk' => 'FKP',
'sl' => 'FKP',
+ 'so' => 'FKP',
+ 'sq' => 'FKP',
'sr' => 'FKP',
'sv' => 'FKP',
'sw' => 'FKP',
'ta' => 'FKP',
'te' => 'FKP',
'th' => 'FKP',
+ 'tk' => 'FKP',
'tr' => 'FKP',
'uk' => 'FKP',
'ur' => 'FKP',
'uz' => 'FKP',
'vi' => 'FKP',
+ 'yue' => 'FKP',
'zh' => 'FKP',
- ),
- 'FRF' => array(
- 'ca' => array(
+ 'zu' => 'FKP',
+ ],
+ 'FRF' => [
+ 'ca' => [
'DEFAULT' => 'FRF',
'FR' => 'F',
- ),
- 'fr' => array(
+ ],
+ 'fr' => [
'DEFAULT' => 'F',
'LU' => 'FRF',
- ),
- ),
- 'GBP' => array(
- 'ar' => array(
+ ],
+ 'kab' => 'F',
+ ],
+ 'GBP' => [
+ 'ar' => [
'DEFAULT' => '£',
'SS' => 'GB£',
- ),
+ ],
'bg' => 'GBP',
'br' => '£ RU',
'bs' => 'GBP',
- 'en' => array(
+ 'en' => [
+ 'AU' => 'GBP',
'FK' => 'GB£',
'GI' => 'GB£',
'MT' => 'GB£',
'SH' => 'GB£',
'SS' => 'GB£',
- ),
+ ],
'es' => 'GBP',
- 'fr' => array(
+ 'fr' => [
'CA' => '£',
'DEFAULT' => '£GB',
- ),
+ ],
'hr' => 'GBP',
'hu' => 'GBP',
'is' => 'GBP',
+ 'kab' => '£GB',
'ky' => 'GBP',
'lt' => 'GBP',
'mk' => 'GBP',
+ 'nn' => 'GBP',
+ 'nus' => 'GB£',
'pl' => 'GBP',
'ro' => 'GBP',
'root' => '£',
+ 'se' => 'GB£',
'sk' => 'GBP',
+ 'sl' => 'GBP',
'sv' => 'GBP',
+ 'tk' => 'GBP',
'uk' => 'GBP',
- ),
- 'GHS' => array(
+ ],
+ 'GEL' => [
+ 'af' => 'GEL',
+ 'am' => 'GEL',
+ 'ar' => 'GEL',
+ 'as' => 'GEL',
+ 'ast' => 'GEL',
+ 'az' => 'GEL',
+ 'be' => 'GEL',
+ 'bg' => 'GEL',
+ 'bn' => 'GEL',
+ 'br' => 'GEL',
+ 'bs' => 'GEL',
+ 'ca' => 'GEL',
+ 'ccp' => 'GEL',
+ 'ce' => 'GEL',
+ 'chr' => 'GEL',
+ 'cs' => 'GEL',
+ 'cy' => 'GEL',
+ 'da' => 'GEL',
+ 'de' => 'GEL',
+ 'el' => 'GEL',
+ 'es' => [
+ 'AR' => 'GEL',
+ 'DEFAULT' => 'GEL',
+ ],
+ 'et' => 'GEL',
+ 'eu' => 'GEL',
+ 'fa' => 'GEL',
+ 'fi' => 'GEL',
+ 'fil' => 'GEL',
+ 'fo' => 'GEL',
+ 'fr' => [
+ 'CA' => 'GEL',
+ 'DEFAULT' => 'GEL',
+ ],
+ 'ga' => 'GEL',
+ 'gd' => 'GEL',
+ 'gl' => 'GEL',
+ 'gu' => 'GEL',
+ 'he' => 'GEL',
+ 'hi' => 'GEL',
+ 'hr' => 'GEL',
+ 'hu' => 'GEL',
+ 'hy' => 'GEL',
+ 'id' => 'GEL',
+ 'is' => 'GEL',
+ 'it' => 'GEL',
+ 'ja' => 'GEL',
+ 'jv' => 'GEL',
+ 'kab' => 'GEL',
+ 'kea' => 'GEL',
+ 'kk' => 'GEL',
+ 'km' => 'GEL',
+ 'kn' => 'GEL',
+ 'ko' => 'GEL',
+ 'ky' => 'GEL',
+ 'lo' => 'GEL',
+ 'lt' => 'GEL',
+ 'lv' => 'GEL',
+ 'mk' => 'GEL',
+ 'ml' => 'GEL',
+ 'mn' => 'GEL',
+ 'mr' => 'GEL',
+ 'ms' => 'GEL',
+ 'mt' => 'GEL',
+ 'my' => 'GEL',
+ 'mzn' => 'GEL',
+ 'nb' => 'GEL',
+ 'ne' => 'GEL',
+ 'nl' => 'GEL',
+ 'nn' => 'GEL',
+ 'or' => 'GEL',
+ 'os' => [
+ 'DEFAULT' => '₾',
+ 'RU' => 'GEL',
+ ],
+ 'pa' => 'GEL',
+ 'pl' => 'GEL',
+ 'ps' => 'GEL',
+ 'pt' => 'GEL',
+ 'ro' => 'GEL',
+ 'root' => '₾',
+ 'ru' => 'GEL',
+ 'sd' => 'GEL',
+ 'si' => 'GEL',
+ 'sk' => 'GEL',
+ 'sl' => 'GEL',
+ 'so' => 'GEL',
+ 'sq' => 'GEL',
+ 'sr' => 'GEL',
+ 'sv' => 'GEL',
+ 'sw' => 'GEL',
+ 'ta' => 'GEL',
+ 'te' => 'GEL',
+ 'th' => 'GEL',
+ 'tk' => 'GEL',
+ 'tr' => 'GEL',
+ 'uk' => 'GEL',
+ 'ur' => 'GEL',
+ 'uz' => 'GEL',
+ 'vi' => 'GEL',
+ 'yue' => 'GEL',
+ 'zh' => 'GEL',
+ 'zu' => 'GEL',
+ ],
+ 'GHS' => [
'ak' => 'GH₵',
'ee' => 'GH₵',
- 'en' => array(
+ 'en' => [
'GH' => 'GH₵',
- ),
- 'ha' => array(
+ ],
+ 'ff' => [
'GH' => 'GH₵',
- ),
- ),
- 'GIP' => array(
+ ],
+ 'ha' => [
+ 'GH' => 'GH₵',
+ ],
+ ],
+ 'GIP' => [
'af' => 'GIP',
'am' => 'GIP',
'ar' => 'GIP',
+ 'as' => 'GIP',
'ast' => 'GIP',
'az' => 'GIP',
+ 'be' => 'GIP',
'bg' => 'GIP',
'bn' => 'GIP',
+ 'br' => 'GIP',
'bs' => 'GIP',
'ca' => 'GIP',
+ 'ccp' => 'GIP',
+ 'ce' => 'GIP',
+ 'chr' => 'GIP',
'cs' => 'GIP',
+ 'cy' => 'GIP',
'da' => 'GIP',
'de' => 'GIP',
+ 'ee' => 'GIP',
'el' => 'GIP',
- 'en' => array(
+ 'en' => [
'GI' => '£',
- ),
+ ],
'es' => 'GIP',
'et' => 'GIP',
'eu' => 'GIP',
+ 'fa' => 'GIP',
'fi' => 'GIP',
'fil' => 'GIP',
- 'fr' => array(
+ 'fo' => 'GIP',
+ 'fr' => [
'CA' => 'GIP',
'DEFAULT' => '£GI',
- ),
+ ],
'ga' => 'GIP',
'gd' => 'GIP',
'gl' => 'GIP',
@@ -2271,11 +2948,15 @@ $currencySymbols = array(
'is' => 'GIP',
'it' => 'GIP',
'ja' => 'GIP',
+ 'jv' => 'GIP',
'ka' => 'GIP',
+ 'kab' => '£GI',
+ 'kk' => 'GIP',
'km' => 'GIP',
'kn' => 'GIP',
'ko' => 'GIP',
'ky' => 'GIP',
+ 'ln' => 'GIP',
'lo' => 'GIP',
'lt' => 'GIP',
'lv' => 'GIP',
@@ -2284,61 +2965,86 @@ $currencySymbols = array(
'mn' => 'GIP',
'mr' => 'GIP',
'ms' => 'GIP',
+ 'mt' => 'GIP',
+ 'my' => 'GIP',
+ 'mzn' => 'GIP',
'nb' => 'GIP',
'ne' => 'GIP',
'nl' => 'GIP',
+ 'nn' => 'GIP',
+ 'or' => 'GIP',
'pa' => 'GIP',
'pl' => 'GIP',
+ 'ps' => 'GIP',
'pt' => 'GIP',
'ro' => 'GIP',
'root' => '£',
'ru' => 'GIP',
+ 'sd' => 'GIP',
'si' => 'GIP',
'sk' => 'GIP',
'sl' => 'GIP',
+ 'so' => 'GIP',
+ 'sq' => 'GIP',
'sr' => 'GIP',
'sv' => 'GIP',
'sw' => 'GIP',
'ta' => 'GIP',
'te' => 'GIP',
'th' => 'GIP',
+ 'tk' => 'GIP',
'tr' => 'GIP',
'uk' => 'GIP',
'ur' => 'GIP',
'uz' => 'GIP',
'vi' => 'GIP',
+ 'yue' => 'GIP',
'zh' => 'GIP',
- ),
- 'GMD' => array(
- 'en' => array(
+ 'zu' => 'GIP',
+ ],
+ 'GMD' => [
+ 'en' => [
+ 'GM' => 'D',
+ ],
+ 'ff' => [
'GM' => 'D',
- ),
- ),
- 'GNF' => array(
+ ],
+ ],
+ 'GNF' => [
'af' => 'GNF',
'am' => 'GNF',
'ar' => 'GNF',
+ 'as' => 'GNF',
'ast' => 'GNF',
'az' => 'GNF',
+ 'be' => 'GNF',
'bg' => 'GNF',
'bn' => 'GNF',
+ 'br' => 'GNF',
'bs' => 'GNF',
'ca' => 'GNF',
+ 'ccp' => 'GNF',
+ 'ce' => 'GNF',
+ 'chr' => 'GNF',
'cs' => 'GNF',
+ 'cy' => 'GNF',
'da' => 'GNF',
'de' => 'GNF',
'el' => 'GNF',
'es' => 'GNF',
'et' => 'GNF',
'eu' => 'GNF',
- 'ff' => array(
+ 'fa' => 'GNF',
+ 'ff' => [
'GN' => 'FG',
- ),
+ ],
'fi' => 'GNF',
- 'fr' => array(
+ 'fil' => 'GNF',
+ 'fo' => 'GNF',
+ 'fr' => [
'DEFAULT' => 'GNF',
'GN' => 'FG',
- ),
+ ],
'ga' => 'GNF',
'gd' => 'GNF',
'gl' => 'GNF',
@@ -2352,7 +3058,9 @@ $currencySymbols = array(
'is' => 'GNF',
'it' => 'GNF',
'ja' => 'GNF',
+ 'jv' => 'GNF',
'ka' => 'GNF',
+ 'kab' => 'GNF',
'kea' => 'GNF',
'kk' => 'GNF',
'km' => 'GNF',
@@ -2367,57 +3075,78 @@ $currencySymbols = array(
'mn' => 'GNF',
'mr' => 'GNF',
'ms' => 'GNF',
+ 'mt' => 'GNF',
+ 'my' => 'GNF',
+ 'mzn' => 'GNF',
'nb' => 'GNF',
'ne' => 'GNF',
'nl' => 'GNF',
+ 'nn' => 'GNF',
+ 'or' => 'GNF',
'pa' => 'GNF',
'pl' => 'GNF',
+ 'ps' => 'GNF',
'pt' => 'GNF',
'ro' => 'GNF',
'root' => 'FG',
'ru' => 'GNF',
+ 'sd' => 'GNF',
'si' => 'GNF',
'sk' => 'GNF',
'sl' => 'GNF',
+ 'so' => 'GNF',
+ 'sq' => 'GNF',
'sr' => 'GNF',
'sv' => 'GNF',
'sw' => 'GNF',
'ta' => 'GNF',
'te' => 'GNF',
'th' => 'GNF',
+ 'tk' => 'GNF',
'tr' => 'GNF',
'uk' => 'GNF',
'ur' => 'GNF',
'uz' => 'GNF',
'vi' => 'GNF',
+ 'yue' => 'GNF',
'zh' => 'GNF',
- ),
- 'GRD' => array(
+ 'zu' => 'GNF',
+ ],
+ 'GRD' => [
'el' => 'Δρχ',
- ),
- 'GTQ' => array(
+ ],
+ 'GTQ' => [
'af' => 'GTQ',
'am' => 'GTQ',
'ar' => 'GTQ',
+ 'as' => 'GTQ',
'ast' => 'GTQ',
'az' => 'GTQ',
+ 'be' => 'GTQ',
'bg' => 'GTQ',
'bn' => 'GTQ',
+ 'br' => 'GTQ',
'bs' => 'GTQ',
'ca' => 'GTQ',
+ 'ccp' => 'GTQ',
+ 'ce' => 'GTQ',
+ 'chr' => 'GTQ',
'cs' => 'GTQ',
'cy' => 'GTQ',
'da' => 'GTQ',
'de' => 'GTQ',
+ 'ee' => 'GTQ',
'el' => 'GTQ',
- 'es' => array(
+ 'es' => [
'DEFAULT' => 'GTQ',
'GT' => 'Q',
- ),
+ ],
'et' => 'GTQ',
'eu' => 'GTQ',
+ 'fa' => 'GTQ',
'fi' => 'GTQ',
'fil' => 'GTQ',
+ 'fo' => 'GTQ',
'fr' => 'GTQ',
'ga' => 'GTQ',
'gd' => 'GTQ',
@@ -2432,7 +3161,9 @@ $currencySymbols = array(
'is' => 'GTQ',
'it' => 'GTQ',
'ja' => 'GTQ',
+ 'jv' => 'GTQ',
'ka' => 'GTQ',
+ 'kab' => 'GTQ',
'kea' => 'GTQ',
'kk' => 'GTQ',
'km' => 'GTQ',
@@ -2442,59 +3173,82 @@ $currencySymbols = array(
'lo' => 'GTQ',
'lt' => 'GTQ',
'lv' => 'GTQ',
+ 'mi' => 'GTQ',
'mk' => 'GTQ',
'ml' => 'GTQ',
'mn' => 'GTQ',
'mr' => 'GTQ',
'ms' => 'GTQ',
+ 'mt' => 'GTQ',
+ 'my' => 'GTQ',
+ 'mzn' => 'GTQ',
'nb' => 'GTQ',
'ne' => 'GTQ',
'nl' => 'GTQ',
+ 'nn' => 'GTQ',
+ 'or' => 'GTQ',
'pa' => 'GTQ',
'pl' => 'GTQ',
+ 'ps' => 'GTQ',
'pt' => 'GTQ',
'ro' => 'GTQ',
'root' => 'Q',
'ru' => 'GTQ',
+ 'sah' => 'GTQ',
+ 'sd' => 'GTQ',
'si' => 'GTQ',
'sk' => 'GTQ',
'sl' => 'GTQ',
+ 'so' => 'GTQ',
+ 'sq' => 'GTQ',
'sr' => 'GTQ',
'sv' => 'GTQ',
'sw' => 'GTQ',
'ta' => 'GTQ',
'te' => 'GTQ',
'th' => 'GTQ',
+ 'tk' => 'GTQ',
'tr' => 'GTQ',
'uk' => 'GTQ',
'ur' => 'GTQ',
'uz' => 'GTQ',
'vi' => 'GTQ',
+ 'yue' => 'GTQ',
'zh' => 'GTQ',
'zu' => 'GTQ',
- ),
- 'GYD' => array(
+ ],
+ 'GYD' => [
'af' => 'GYD',
'am' => 'GYD',
'ar' => 'GYD',
+ 'as' => 'GYD',
'ast' => 'GYD',
'az' => 'GYD',
+ 'be' => 'GYD',
'bg' => 'GYD',
'bn' => 'GYD',
+ 'br' => 'GYD',
'bs' => 'GYD',
'ca' => 'GYD',
+ 'ccp' => 'GYD',
+ 'ce' => 'GYD',
+ 'chr' => 'GYD',
'cs' => 'GYD',
+ 'cy' => 'GYD',
'da' => 'GYD',
'de' => 'GYD',
+ 'ee' => 'GYD',
'el' => 'GYD',
- 'en' => array(
+ 'en' => [
'GY' => '$',
- ),
+ ],
'es' => 'GYD',
'et' => 'GYD',
'eu' => 'GYD',
+ 'fa' => 'GYD',
'fi' => 'GYD',
'fil' => 'GYD',
+ 'fo' => 'GYD',
'fr' => 'GYD',
'ga' => 'GYD',
'gd' => 'GYD',
@@ -2509,7 +3263,10 @@ $currencySymbols = array(
'is' => 'GYD',
'it' => 'GYD',
'ja' => 'GYD',
+ 'jv' => 'GYD',
'ka' => 'GYD',
+ 'kab' => 'GYD',
+ 'kk' => 'GYD',
'km' => 'GYD',
'kn' => 'GYD',
'ko' => 'GYD',
@@ -2522,80 +3279,106 @@ $currencySymbols = array(
'mn' => 'GYD',
'mr' => 'GYD',
'ms' => 'GYD',
+ 'mt' => 'GYD',
+ 'my' => 'GYD',
+ 'mzn' => 'GYD',
'nb' => 'GYD',
'ne' => 'GYD',
'nl' => 'GYD',
+ 'nn' => 'GYD',
+ 'or' => 'GYD',
'pa' => 'GYD',
'pl' => 'GYD',
+ 'ps' => 'GYD',
'pt' => 'GYD',
'ro' => 'GYD',
'root' => '$',
'ru' => 'GYD',
+ 'sd' => 'GYD',
'si' => 'GYD',
'sk' => 'GYD',
'sl' => 'GYD',
+ 'so' => 'GYD',
+ 'sq' => 'GYD',
'sr' => 'GYD',
'sv' => 'GYD',
'sw' => 'GYD',
'ta' => 'GYD',
'te' => 'GYD',
'th' => 'GYD',
+ 'tk' => 'GYD',
'tr' => 'GYD',
'uk' => 'GYD',
'ur' => 'GYD',
'uz' => 'GYD',
'vi' => 'GYD',
+ 'yue' => 'GYD',
'zh' => 'GYD',
- ),
- 'HKD' => array(
+ 'zu' => 'GYD',
+ ],
+ 'HKD' => [
'bg' => 'HKD',
'br' => '$ HK',
'bs' => 'HKD',
+ 'en' => [
+ 'AU' => 'HKD',
+ ],
'es' => 'HKD',
'fa' => '$HK',
'fi' => 'HKD',
- 'fr' => array(
+ 'fr' => [
'CA' => '$ HK',
'DEFAULT' => 'HKD',
- ),
- 'gl' => '$HK',
+ ],
'hr' => 'HKD',
'hu' => 'HKD',
'it' => 'HKD',
'ka' => 'HKD',
+ 'kab' => 'HKD',
'ky' => 'HKD',
'lt' => 'HKD',
'mk' => 'HKD',
'nb' => 'HKD',
+ 'nn' => 'HKD',
'pl' => 'HKD',
'ro' => 'HKD',
'root' => 'HK$',
'sk' => 'HKD',
'sv' => 'HKD',
'uk' => 'HKD',
- ),
- 'HNL' => array(
+ ],
+ 'HNL' => [
'af' => 'HNL',
'am' => 'HNL',
'ar' => 'HNL',
+ 'as' => 'HNL',
'ast' => 'HNL',
'az' => 'HNL',
+ 'be' => 'HNL',
'bg' => 'HNL',
'bn' => 'HNL',
+ 'br' => 'HNL',
'bs' => 'HNL',
'ca' => 'HNL',
+ 'ccp' => 'HNL',
+ 'ce' => 'HNL',
+ 'chr' => 'HNL',
'cs' => 'HNL',
+ 'cy' => 'HNL',
'da' => 'HNL',
'de' => 'HNL',
+ 'ee' => 'HNL',
'el' => 'HNL',
- 'es' => array(
+ 'es' => [
'DEFAULT' => 'HNL',
'HN' => 'L',
- ),
+ ],
'et' => 'HNL',
'eu' => 'HNL',
+ 'fa' => 'HNL',
'fi' => 'HNL',
'fil' => 'HNL',
+ 'fo' => 'HNL',
'fr' => 'HNL',
'ga' => 'HNL',
'gd' => 'HNL',
@@ -2610,7 +3393,9 @@ $currencySymbols = array(
'is' => 'HNL',
'it' => 'HNL',
'ja' => 'HNL',
+ 'jv' => 'HNL',
'ka' => 'HNL',
+ 'kab' => 'HNL',
'kea' => 'HNL',
'kk' => 'HNL',
'km' => 'HNL',
@@ -2620,55 +3405,79 @@ $currencySymbols = array(
'lo' => 'HNL',
'lt' => 'HNL',
'lv' => 'HNL',
+ 'mi' => 'HNL',
'mk' => 'HNL',
'ml' => 'HNL',
'mn' => 'HNL',
'mr' => 'HNL',
'ms' => 'HNL',
+ 'mt' => 'HNL',
+ 'my' => 'HNL',
+ 'mzn' => 'HNL',
'nb' => 'HNL',
'ne' => 'HNL',
'nl' => 'HNL',
+ 'nn' => 'HNL',
+ 'or' => 'HNL',
'pa' => 'HNL',
'pl' => 'HNL',
+ 'ps' => 'HNL',
'pt' => 'HNL',
'rm' => 'HNL',
'ro' => 'HNL',
'root' => 'L',
'ru' => 'HNL',
+ 'sah' => 'HNL',
+ 'sd' => 'HNL',
'si' => 'HNL',
'sk' => 'HNL',
'sl' => 'HNL',
+ 'so' => 'LHN',
+ 'sq' => 'HNL',
'sr' => 'HNL',
'sv' => 'HNL',
'sw' => 'HNL',
'ta' => 'HNL',
'te' => 'HNL',
'th' => 'HNL',
+ 'tk' => 'HNL',
'tr' => 'HNL',
'uk' => 'HNL',
'ur' => 'HNL',
'uz' => 'HNL',
'vi' => 'HNL',
+ 'yue' => 'HNL',
'zh' => 'HNL',
'zu' => 'HNL',
- ),
- 'HRK' => array(
+ ],
+ 'HRK' => [
'af' => 'HRK',
'am' => 'HRK',
'ar' => 'HRK',
+ 'as' => 'HRK',
+ 'ast' => 'HRK',
'az' => 'HRK',
+ 'be' => 'HRK',
'bg' => 'HRK',
'bn' => 'HRK',
+ 'br' => 'HRK',
'ca' => 'HRK',
+ 'ccp' => 'HRK',
+ 'ce' => 'HRK',
+ 'chr' => 'HRK',
'cs' => 'HRK',
+ 'cy' => 'HRK',
'da' => 'HRK',
'de' => 'HRK',
+ 'ee' => 'HRK',
'el' => 'HRK',
'es' => 'HRK',
'et' => 'HRK',
'eu' => 'HRK',
+ 'fa' => 'HRK',
'fi' => 'HRK',
'fil' => 'HRK',
+ 'fo' => 'HRK',
'fr' => 'HRK',
'ga' => 'HRK',
'gd' => 'HRK',
@@ -2683,12 +3492,16 @@ $currencySymbols = array(
'is' => 'HRK',
'it' => 'HRK',
'ja' => 'HRK',
+ 'jv' => 'HRK',
'ka' => 'HRK',
+ 'kab' => 'HRK',
'kea' => 'HRK',
+ 'kk' => 'HRK',
'km' => 'HRK',
'kn' => 'HRK',
'ko' => 'HRK',
'ky' => 'HRK',
+ 'ln' => 'HRK',
'lo' => 'HRK',
'lt' => 'HRK',
'lv' => 'HRK',
@@ -2697,55 +3510,79 @@ $currencySymbols = array(
'mn' => 'HRK',
'mr' => 'HRK',
'ms' => 'HRK',
+ 'mt' => 'HRK',
+ 'my' => 'HRK',
+ 'mzn' => 'HRK',
'nb' => 'HRK',
'ne' => 'HRK',
'nl' => 'HRK',
+ 'nn' => 'HRK',
+ 'or' => 'HRK',
'pa' => 'HRK',
'pl' => 'HRK',
+ 'ps' => 'HRK',
'pt' => 'HRK',
'ro' => 'HRK',
'root' => 'kn',
'ru' => 'HRK',
+ 'sd' => 'HRK',
'si' => 'HRK',
'sk' => 'HRK',
'sl' => 'HRK',
+ 'so' => 'HRK',
+ 'sq' => 'HRK',
'sr' => 'HRK',
'sv' => 'HRK',
'sw' => 'HRK',
'ta' => 'HRK',
'te' => 'HRK',
'th' => 'HRK',
+ 'tk' => 'HRK',
'tr' => 'HRK',
'uk' => 'HRK',
'ur' => 'HRK',
'uz' => 'HRK',
'vi' => 'HRK',
+ 'yue' => 'HRK',
'zh' => 'HRK',
- ),
- 'HTG' => array(
- 'fr' => array(
+ 'zu' => 'HRK',
+ ],
+ 'HTG' => [
+ 'fr' => [
'DEFAULT' => 'HTG',
'HT' => 'G',
- ),
- ),
- 'HUF' => array(
+ ],
+ 'my' => 'G',
+ ],
+ 'HUF' => [
'af' => 'HUF',
'am' => 'HUF',
'ar' => 'HUF',
+ 'as' => 'HUF',
+ 'ast' => 'HUF',
'az' => 'HUF',
+ 'be' => 'HUF',
'bg' => 'HUF',
'bn' => 'HUF',
+ 'br' => 'HUF',
'bs' => 'HUF',
'ca' => 'HUF',
+ 'ccp' => 'HUF',
+ 'ce' => 'HUF',
+ 'chr' => 'HUF',
'cs' => 'HUF',
+ 'cy' => 'HUF',
'da' => 'HUF',
'de' => 'HUF',
+ 'ee' => 'HUF',
'el' => 'HUF',
'es' => 'HUF',
'et' => 'HUF',
'eu' => 'HUF',
+ 'fa' => 'HUF',
'fi' => 'HUF',
'fil' => 'HUF',
+ 'fo' => 'HUF',
'fr' => 'HUF',
'ga' => 'HUF',
'gd' => 'HUF',
@@ -2754,18 +3591,21 @@ $currencySymbols = array(
'he' => 'HUF',
'hi' => 'HUF',
'hr' => 'HUF',
- 'hu' => 'HUF',
'hy' => 'HUF',
'id' => 'HUF',
'is' => 'HUF',
'it' => 'HUF',
'ja' => 'HUF',
+ 'jv' => 'HUF',
'ka' => 'HUF',
+ 'kab' => 'HUF',
'kea' => 'HUF',
+ 'kk' => 'HUF',
'km' => 'HUF',
'kn' => 'HUF',
'ko' => 'HUF',
'ky' => 'HUF',
+ 'ln' => 'HUF',
'lo' => 'HUF',
'lt' => 'HUF',
'lv' => 'HUF',
@@ -2774,51 +3614,73 @@ $currencySymbols = array(
'mn' => 'HUF',
'mr' => 'HUF',
'ms' => 'HUF',
+ 'mt' => 'HUF',
+ 'my' => 'HUF',
+ 'mzn' => 'HUF',
'nb' => 'HUF',
'ne' => 'HUF',
'nl' => 'HUF',
+ 'nn' => 'HUF',
+ 'or' => 'HUF',
'pa' => 'HUF',
'pl' => 'HUF',
+ 'ps' => 'HUF',
'pt' => 'HUF',
'ro' => 'HUF',
'root' => 'Ft',
'ru' => 'HUF',
+ 'sd' => 'HUF',
'si' => 'HUF',
'sk' => 'HUF',
'sl' => 'HUF',
+ 'so' => 'HUF',
+ 'sq' => 'HUF',
'sr' => 'HUF',
'sv' => 'HUF',
'sw' => 'HUF',
'ta' => 'HUF',
'te' => 'HUF',
'th' => 'HUF',
+ 'tk' => 'HUF',
'tr' => 'HUF',
'uk' => 'HUF',
'ur' => 'HUF',
'uz' => 'HUF',
'vi' => 'HUF',
+ 'yue' => 'HUF',
'zh' => 'HUF',
- ),
- 'IDR' => array(
+ 'zu' => 'HUF',
+ ],
+ 'IDR' => [
'af' => 'IDR',
'am' => 'IDR',
- 'ar' => 'ر.إن.',
+ 'ar' => 'IDR',
+ 'as' => 'IDR',
'ast' => 'IDR',
'az' => 'IDR',
+ 'be' => 'IDR',
'bg' => 'IDR',
'bn' => 'IDR',
+ 'br' => 'IDR',
'bs' => 'IDR',
'ca' => 'IDR',
+ 'ccp' => 'IDR',
+ 'ce' => 'IDR',
+ 'chr' => 'IDR',
'cs' => 'IDR',
+ 'cy' => 'IDR',
'da' => 'IDR',
'de' => 'IDR',
+ 'ee' => 'IDR',
'el' => 'IDR',
'eo' => 'IDR',
'es' => 'IDR',
'et' => 'IDR',
'eu' => 'IDR',
+ 'fa' => 'IDR',
'fi' => 'IDR',
'fil' => 'IDR',
+ 'fo' => 'IDR',
'fr' => 'IDR',
'ga' => 'IDR',
'gd' => 'IDR',
@@ -2833,11 +3695,13 @@ $currencySymbols = array(
'it' => 'IDR',
'ja' => 'IDR',
'ka' => 'IDR',
+ 'kab' => 'IDR',
'kea' => 'IDR',
'kk' => 'IDR',
'km' => 'IDR',
'kn' => 'IDR',
'ko' => 'IDR',
+ 'ky' => 'IDR',
'lb' => 'IDR',
'lo' => 'IDR',
'lt' => 'IDR',
@@ -2847,50 +3711,72 @@ $currencySymbols = array(
'mn' => 'IDR',
'mr' => 'IDR',
'ms' => 'IDR',
+ 'mt' => 'IDR',
+ 'my' => 'IDR',
+ 'mzn' => 'IDR',
'nb' => 'IDR',
+ 'nds' => 'IDR',
'ne' => 'IDR',
'nl' => 'IDR',
+ 'nn' => 'IDR',
+ 'or' => 'IDR',
'pa' => 'IDR',
'pl' => 'IDR',
+ 'ps' => 'IDR',
'pt' => 'IDR',
'ro' => 'IDR',
'root' => 'Rp',
'ru' => 'IDR',
+ 'sd' => 'IDR',
'si' => 'IDR',
'sk' => 'IDR',
'sl' => 'IDR',
+ 'so' => 'IDR',
+ 'sq' => 'IDR',
'sr' => 'IDR',
'sv' => 'IDR',
'sw' => 'IDR',
'ta' => 'IDR',
'te' => 'IDR',
'th' => 'IDR',
+ 'tk' => 'IDR',
'tr' => 'IDR',
'uk' => 'IDR',
'ur' => 'IDR',
'uz' => 'IDR',
'vi' => 'IDR',
+ 'yue' => 'IDR',
'zh' => 'IDR',
'zu' => 'IDR',
- ),
- 'IEP' => array(
+ ],
+ 'IEP' => [
'fr' => '£IE',
- ),
- 'ILP' => array(
+ 'kab' => '£IE',
+ 'sv' => 'IE£',
+ ],
+ 'ILP' => [
'fr' => '£IL',
'he' => 'ל״י',
- ),
- 'ILS' => array(
+ 'kab' => '£IL',
+ ],
+ 'ILR' => [
+ 'zh' => 'ILS',
+ ],
+ 'ILS' => [
'bg' => 'ILS',
+ 'br' => 'ILS',
'bs' => 'ILS',
'cs' => 'ILS',
'dz' => 'ILS',
+ 'en' => [
+ 'AU' => 'ILS',
+ ],
'es' => 'ILS',
'fi' => 'ILS',
- 'fr' => array(
+ 'fr' => [
'CA' => 'ILS',
'DEFAULT' => '₪',
- ),
+ ],
'hr' => 'ILS',
'hu' => 'ILS',
'ka' => 'ILS',
@@ -2898,22 +3784,25 @@ $currencySymbols = array(
'lt' => 'ILS',
'mk' => 'ILS',
'nb' => 'ILS',
+ 'nn' => 'ILS',
'pl' => 'ILS',
'ro' => 'ILS',
'root' => '₪',
'sk' => 'NIS',
'uk' => 'ILS',
- ),
- 'INR' => array(
- 'ar' => 'ر.ه.‏',
+ ],
+ 'INR' => [
'bg' => 'INR',
'cs' => 'INR',
+ 'en' => [
+ 'AU' => 'INR',
+ ],
'es' => 'INR',
'fi' => 'INR',
- 'fr' => array(
+ 'fr' => [
'CA' => 'INR',
'DEFAULT' => '₹',
- ),
+ ],
'hr' => 'INR',
'hu' => 'INR',
'id' => 'Rs',
@@ -2923,39 +3812,55 @@ $currencySymbols = array(
'lt' => 'INR',
'mk' => 'INR',
'nb' => 'INR',
+ 'nn' => 'INR',
'pl' => 'INR',
'ro' => 'INR',
'root' => '₹',
'sk' => 'INR',
'sv' => 'INR',
'uk' => 'INR',
- ),
- 'IQD' => array(
+ ],
+ 'IQD' => [
'ar' => 'د.ع.‏',
- ),
- 'IRR' => array(
+ 'ckb' => 'د.ع.‏',
+ 'lrc' => 'د.ع.‏',
+ ],
+ 'IRR' => [
'ar' => 'ر.إ.',
'fa' => 'ریال',
- ),
- 'ISK' => array(
+ ],
+ 'ISK' => [
'af' => 'ISK',
'am' => 'ISK',
'ar' => 'ISK',
+ 'as' => 'ISK',
'ast' => 'ISK',
'az' => 'ISK',
+ 'be' => 'ISK',
'bg' => 'ISK',
'bn' => 'ISK',
+ 'br' => 'ISK',
'bs' => 'ISK',
'ca' => 'ISK',
+ 'ccp' => 'ISK',
+ 'ce' => 'ISK',
+ 'chr' => 'ISK',
'cs' => 'ISK',
+ 'cy' => 'ISK',
'da' => 'ISK',
'de' => 'ISK',
+ 'ee' => 'ISK',
'el' => 'ISK',
+ 'en' => [
+ 'AU' => 'Kr',
+ ],
'es' => 'ISK',
'et' => 'ISK',
'eu' => 'ISK',
+ 'fa' => 'ISK',
'fi' => 'ISK',
'fil' => 'ISK',
+ 'fo' => 'ISK',
'fr' => 'ISK',
'ga' => 'ISK',
'gd' => 'ISK',
@@ -2970,12 +3875,16 @@ $currencySymbols = array(
'is' => 'ISK',
'it' => 'ISK',
'ja' => 'ISK',
+ 'jv' => 'ISK',
'ka' => 'ISK',
+ 'kab' => 'ISK',
'kea' => 'ISK',
+ 'kk' => 'ISK',
'km' => 'ISK',
'kn' => 'ISK',
'ko' => 'ISK',
'ky' => 'ISK',
+ 'ln' => 'ISK',
'lo' => 'ISK',
'lt' => 'ISK',
'lv' => 'ISK',
@@ -2984,57 +3893,80 @@ $currencySymbols = array(
'mn' => 'ISK',
'mr' => 'ISK',
'ms' => 'ISK',
+ 'my' => 'ISK',
+ 'mzn' => 'ISK',
'nb' => 'ISK',
'ne' => 'ISK',
'nl' => 'ISK',
+ 'nn' => 'ISK',
+ 'or' => 'ISK',
'pa' => 'ISK',
'pl' => 'ISK',
+ 'ps' => 'ISK',
'pt' => 'ISK',
'rm' => 'ISK',
'ro' => 'ISK',
'root' => 'kr',
'ru' => 'ISK',
+ 'sd' => 'ISK',
+ 'se' => 'Ikr',
'si' => 'ISK',
'sk' => 'ISK',
'sl' => 'ISK',
+ 'so' => 'ISK',
+ 'sq' => 'ISK',
'sr' => 'ISK',
'sv' => 'Ikr',
'sw' => 'ISK',
'ta' => 'ISK',
'te' => 'ISK',
'th' => 'ISK',
+ 'tk' => 'ISK',
'tr' => 'ISK',
'uk' => 'ISK',
'ur' => 'ISK',
'uz' => 'ISK',
'vi' => 'ISK',
+ 'yue' => 'ISK',
'zh' => 'ISK',
- ),
- 'ITL' => array(
+ 'zu' => 'ISK',
+ ],
+ 'ITL' => [
'fr' => '₤IT',
- ),
- 'JMD' => array(
+ 'kab' => '₤IT',
+ ],
+ 'JMD' => [
'af' => 'JMD',
'am' => 'JMD',
'ar' => 'JMD',
+ 'as' => 'JMD',
'ast' => 'JMD',
'az' => 'JMD',
+ 'be' => 'JMD',
'bg' => 'JMD',
'bn' => 'JMD',
+ 'br' => 'JMD',
'bs' => 'JMD',
'ca' => 'JMD',
+ 'ccp' => 'JMD',
+ 'ce' => 'JMD',
+ 'chr' => 'JMD',
'cs' => 'JMD',
+ 'cy' => 'JMD',
'da' => 'JMD',
'de' => 'JMD',
+ 'ee' => 'JMD',
'el' => 'JMD',
- 'en' => array(
+ 'en' => [
'JM' => '$',
- ),
+ ],
'es' => 'JMD',
'et' => 'JMD',
'eu' => 'JMD',
+ 'fa' => 'JMD',
'fi' => 'JMD',
'fil' => 'JMD',
+ 'fo' => 'JMD',
'fr' => 'JMD',
'ga' => 'JMD',
'gd' => 'JMD',
@@ -3049,88 +3981,108 @@ $currencySymbols = array(
'is' => 'JMD',
'it' => 'JMD',
'ja' => 'JMD',
+ 'jv' => 'JMD',
'ka' => 'JMD',
+ 'kab' => 'JMD',
'kk' => 'JMD',
'km' => 'JMD',
'kn' => 'JMD',
'ko' => 'JMD',
+ 'ky' => 'JMD',
'lo' => 'JMD',
'lt' => 'JMD',
'lv' => 'JMD',
+ 'mi' => 'JMD',
'mk' => 'JMD',
'ml' => 'JMD',
'mn' => 'JMD',
'mr' => 'JMD',
'ms' => 'JMD',
+ 'mt' => 'JMD',
+ 'my' => 'JMD',
+ 'mzn' => 'JMD',
'nb' => 'JMD',
'ne' => 'JMD',
'nl' => 'JMD',
+ 'nn' => 'JMD',
+ 'or' => 'JMD',
'pa' => 'JMD',
'pl' => 'JMD',
+ 'ps' => 'JMD',
'pt' => 'JMD',
'rm' => 'JMD',
'ro' => 'JMD',
'root' => '$',
'ru' => 'JMD',
+ 'sd' => 'JMD',
'si' => 'JMD',
'sk' => 'JMD',
'sl' => 'JMD',
+ 'so' => 'JMD',
+ 'sq' => 'JMD',
'sr' => 'JMD',
'sv' => 'JM$',
'sw' => 'JMD',
'ta' => 'JMD',
'te' => 'JMD',
'th' => 'JMD',
+ 'tk' => 'JMD',
'tr' => 'JMD',
'uk' => 'JMD',
'ur' => 'JMD',
'uz' => 'JMD',
'vi' => 'JMD',
+ 'yue' => 'JMD',
'zh' => 'JMD',
'zu' => 'JMD',
- ),
- 'JOD' => array(
+ ],
+ 'JOD' => [
'ar' => 'د.أ.‏',
- ),
- 'JPY' => array(
+ ],
+ 'JPY' => [
'ast' => '¥',
'be' => '¥',
'bg' => 'JPY',
- 'br' => '¥',
+ 'br' => 'JPY',
'bs' => '¥',
'de' => '¥',
'dsb' => '¥',
- 'en' => array(
+ 'en' => [
001 => 'JP¥',
+ 'AU' => 'JPY',
'DEFAULT' => '¥',
- ),
- 'es' => array(
+ ],
+ 'es' => [
'DEFAULT' => 'JPY',
'US' => '¥',
- ),
+ ],
'et' => '¥',
'fa' => '¥',
'fi' => '¥',
'fil' => '¥',
- 'fr' => array(
+ 'fr' => [
'CA' => '¥',
'DEFAULT' => 'JPY',
- ),
+ ],
'ga' => '¥',
- 'gl' => '¥JP',
'gsw' => '¥',
+ 'he' => '¥',
'hr' => 'JPY',
'hsb' => '¥',
'hu' => '¥',
'it' => 'JPY',
'ja' => '¥',
'ka' => 'JPY',
+ 'kab' => 'JPY',
'lb' => '¥',
'lt' => 'JPY',
'lv' => '¥',
+ 'mi' => '¥',
'mk' => 'JPY',
'ml' => '¥',
'nb' => 'JPY',
+ 'nn' => 'JPY',
+ 'or' => '¥',
'pl' => 'JPY',
'ro' => 'JPY',
'root' => 'JP¥',
@@ -3144,14 +4096,14 @@ $currencySymbols = array(
'tr' => '¥',
'uk' => '¥',
'wae' => '¥',
- 'zh' => '¥',
- ),
- 'KES' => array(
+ 'yue' => '¥',
+ ],
+ 'KES' => [
'dav' => 'Ksh',
'ebu' => 'Ksh',
- 'en' => array(
+ 'en' => [
'KE' => 'Ksh',
- ),
+ ],
'guz' => 'Ksh',
'kam' => 'Ksh',
'ki' => 'Ksh',
@@ -3160,44 +4112,54 @@ $currencySymbols = array(
'luy' => 'Ksh',
'mas' => 'Ksh',
'mer' => 'Ksh',
- 'om' => array(
+ 'om' => [
'KE' => 'Ksh',
- ),
+ ],
'saq' => 'Ksh',
- 'so' => array(
+ 'so' => [
+ 'DEFAULT' => 'KES',
'KE' => 'Ksh',
- ),
+ ],
'sw' => 'Ksh',
- 'teo' => array(
+ 'teo' => [
'KE' => 'Ksh',
- ),
- ),
- 'KGS' => array(
+ ],
+ ],
+ 'KGS' => [
'ky' => 'сом',
- 'ru' => array(
+ 'ru' => [
'DEFAULT' => 'KGS',
'KG' => 'сом',
- ),
- ),
- 'KHR' => array(
+ ],
+ ],
+ 'KHR' => [
'af' => 'KHR',
'am' => 'KHR',
'ar' => 'KHR',
+ 'as' => 'KHR',
'ast' => 'KHR',
'az' => 'KHR',
+ 'be' => 'KHR',
'bg' => 'KHR',
'bn' => 'KHR',
+ 'br' => 'KHR',
'bs' => 'KHR',
'ca' => 'KHR',
+ 'ccp' => 'KHR',
+ 'ce' => 'KHR',
+ 'chr' => 'KHR',
'cs' => 'KHR',
+ 'cy' => 'KHR',
'da' => 'KHR',
'de' => 'KHR',
'el' => 'KHR',
'es' => 'KHR',
'et' => 'KHR',
'eu' => 'KHR',
+ 'fa' => 'KHR',
'fi' => 'KHR',
'fil' => 'KHR',
+ 'fo' => 'KHR',
'fr' => 'KHR',
'ga' => 'KHR',
'gd' => 'KHR',
@@ -3212,10 +4174,13 @@ $currencySymbols = array(
'is' => 'KHR',
'it' => 'KHR',
'ja' => 'KHR',
+ 'jv' => 'KHR',
'ka' => 'KHR',
+ 'kab' => 'KHR',
'kk' => 'KHR',
'kn' => 'KHR',
'ko' => 'KHR',
+ 'ky' => 'KHR',
'lb' => 'KHR',
'lo' => 'KHR',
'lt' => 'KHR',
@@ -3225,53 +4190,79 @@ $currencySymbols = array(
'mn' => 'KHR',
'mr' => 'KHR',
'ms' => 'KHR',
+ 'mt' => 'KHR',
+ 'my' => 'KHR',
+ 'mzn' => 'KHR',
'nb' => 'KHR',
'ne' => 'KHR',
'nl' => 'KHR',
+ 'nn' => 'KHR',
+ 'or' => 'KHR',
'pa' => 'KHR',
'pl' => 'KHR',
+ 'ps' => 'KHR',
'pt' => 'KHR',
'ro' => 'KHR',
'root' => '៛',
'ru' => 'KHR',
+ 'sd' => 'KHR',
'si' => 'KHR',
'sk' => 'KHR',
'sl' => 'KHR',
+ 'so' => 'KHR',
+ 'sq' => 'KHR',
'sr' => 'KHR',
'sv' => 'KHR',
'sw' => 'KHR',
'ta' => 'KHR',
'te' => 'KHR',
'th' => 'KHR',
+ 'tk' => 'KHR',
'tr' => 'KHR',
'uk' => 'KHR',
'ur' => 'KHR',
'uz' => 'KHR',
'vi' => 'KHR',
+ 'yue' => 'KHR',
'zh' => 'KHR',
- ),
- 'KMF' => array(
+ 'zu' => 'KHR',
+ ],
+ 'KMF' => [
'af' => 'KMF',
'am' => 'KMF',
- 'ar' => 'ف.ج.ق.‏',
+ 'ar' => [
+ 'DEFAULT' => 'KMF',
+ 'KM' => 'CF',
+ ],
+ 'as' => 'KMF',
'ast' => 'KMF',
'az' => 'KMF',
+ 'be' => 'KMF',
'bg' => 'KMF',
'bn' => 'KMF',
+ 'br' => 'KMF',
'bs' => 'KMF',
'ca' => 'KMF',
+ 'ccp' => 'KMF',
+ 'ce' => 'KMF',
+ 'chr' => 'KMF',
'cs' => 'KMF',
+ 'cy' => 'KMF',
'da' => 'KMF',
'de' => 'KMF',
'el' => 'KMF',
'es' => 'KMF',
'et' => 'KMF',
'eu' => 'KMF',
+ 'fa' => 'KMF',
'fi' => 'KMF',
- 'fr' => array(
+ 'fil' => 'KMF',
+ 'fo' => 'KMF',
+ 'fr' => [
+ 'CA' => 'CF',
'DEFAULT' => 'KMF',
'KM' => 'CF',
- ),
+ ],
'ga' => 'KMF',
'gd' => 'KMF',
'gl' => 'KMF',
@@ -3285,12 +4276,15 @@ $currencySymbols = array(
'is' => 'KMF',
'it' => 'KMF',
'ja' => 'KMF',
+ 'jv' => 'KMF',
'ka' => 'KMF',
+ 'kab' => 'KMF',
'kea' => 'KMF',
'kk' => 'KMF',
'km' => 'KMF',
'kn' => 'KMF',
'ko' => 'KMF',
+ 'ky' => 'KMF',
'lo' => 'KMF',
'lt' => 'KMF',
'lv' => 'KMF',
@@ -3299,42 +4293,61 @@ $currencySymbols = array(
'mn' => 'KMF',
'mr' => 'KMF',
'ms' => 'KMF',
+ 'mt' => 'KMF',
+ 'my' => 'KMF',
+ 'mzn' => 'KMF',
'nb' => 'KMF',
'ne' => 'KMF',
'nl' => 'KMF',
+ 'nn' => 'KMF',
+ 'or' => 'KMF',
'pa' => 'KMF',
'pl' => 'KMF',
+ 'ps' => 'KMF',
'pt' => 'KMF',
'ro' => 'KMF',
'root' => 'CF',
'ru' => 'KMF',
+ 'sd' => 'KMF',
'si' => 'KMF',
'sk' => 'KMF',
'sl' => 'KMF',
+ 'so' => 'KMF',
+ 'sq' => 'KMF',
'sr' => 'KMF',
'sv' => 'KMF',
'sw' => 'KMF',
'ta' => 'KMF',
'te' => 'KMF',
'th' => 'KMF',
+ 'tk' => 'KMF',
'tr' => 'KMF',
'uk' => 'KMF',
'ur' => 'KMF',
'uz' => 'KMF',
'vi' => 'KMF',
+ 'yue' => 'KMF',
'zh' => 'KMF',
- ),
- 'KPW' => array(
+ 'zu' => 'KMF',
+ ],
+ 'KPW' => [
'af' => 'KPW',
'am' => 'KPW',
'ar' => 'KPW',
+ 'as' => 'KPW',
'ast' => 'KPW',
'az' => 'KPW',
+ 'be' => 'KPW',
'bg' => 'KPW',
'bn' => 'KPW',
+ 'br' => 'KPW',
'bs' => 'KPW',
'ca' => 'KPW',
+ 'ccp' => 'KPW',
+ 'ce' => 'KPW',
+ 'chr' => 'KPW',
'cs' => 'KPW',
+ 'cy' => 'KPW',
'da' => 'KPW',
'de' => 'KPW',
'dsb' => 'KPW',
@@ -3342,8 +4355,10 @@ $currencySymbols = array(
'es' => 'KPW',
'et' => 'KPW',
'eu' => 'KPW',
+ 'fa' => 'KPW',
'fi' => 'KPW',
'fil' => 'KPW',
+ 'fo' => 'KPW',
'fr' => 'KPW',
'ga' => 'KPW',
'gd' => 'KPW',
@@ -3359,12 +4374,15 @@ $currencySymbols = array(
'is' => 'KPW',
'it' => 'KPW',
'ja' => 'KPW',
+ 'jv' => 'KPW',
'ka' => 'KPW',
+ 'kab' => 'KPW',
'kea' => 'KPW',
'kk' => 'KPW',
'km' => 'KPW',
'kn' => 'KPW',
'ko' => 'KPW',
+ 'ky' => 'KPW',
'lb' => 'KPW',
'lo' => 'KPW',
'lt' => 'KPW',
@@ -3374,50 +4392,67 @@ $currencySymbols = array(
'mn' => 'KPW',
'mr' => 'KPW',
'ms' => 'KPW',
+ 'mt' => 'KPW',
+ 'my' => 'KPW',
+ 'mzn' => 'KPW',
'nb' => 'KPW',
'ne' => 'KPW',
'nl' => 'KPW',
+ 'nn' => 'KPW',
+ 'or' => 'KPW',
'pa' => 'KPW',
'pl' => 'KPW',
+ 'ps' => 'KPW',
'pt' => 'KPW',
'ro' => 'KPW',
'root' => '₩',
'ru' => 'KPW',
+ 'sd' => 'KPW',
'si' => 'KPW',
'sk' => 'KPW',
'sl' => 'KPW',
+ 'so' => 'KPW',
+ 'sq' => 'KPW',
'sr' => 'KPW',
'sv' => 'KPW',
'sw' => 'KPW',
'ta' => 'KPW',
'te' => 'KPW',
'th' => 'KPW',
+ 'tk' => 'KPW',
'tr' => 'KPW',
'uk' => 'KPW',
'ur' => 'KPW',
'uz' => 'KPW',
'vi' => 'KPW',
+ 'yue' => 'KPW',
'zh' => 'KPW',
- ),
- 'KRW' => array(
+ 'zu' => 'KPW',
+ ],
+ 'KRW' => [
'bg' => 'KRW',
+ 'br' => 'KRW',
+ 'cy' => 'KRW',
'dz' => 'KR₩',
+ 'en' => [
+ 'AU' => 'KRW',
+ ],
'es' => 'KRW',
'fi' => 'KRW',
- 'fr' => array(
+ 'fr' => [
'CA' => 'KRW',
'DEFAULT' => '₩',
- ),
+ ],
'hr' => 'KRW',
'hu' => 'KRW',
'is' => 'KRW',
'it' => 'KRW',
- 'ja' => '₩',
'ka' => 'KRW',
'ky' => 'KRW',
'lt' => 'KRW',
'mk' => 'KRW',
'nb' => 'KRW',
+ 'nn' => 'KRW',
'pl' => 'KRW',
'ro' => 'KRW',
'root' => '₩',
@@ -3425,36 +4460,47 @@ $currencySymbols = array(
'sr' => 'KRW',
'sv' => 'KRW',
'uk' => 'KRW',
- 'zh' => array(
+ 'yue' => '₩',
+ 'zh' => [
'DEFAULT' => '₩',
'HK' => '₩',
- ),
- ),
- 'KWD' => array(
+ ],
+ ],
+ 'KWD' => [
'ar' => 'د.ك.‏',
- ),
- 'KYD' => array(
+ ],
+ 'KYD' => [
'af' => 'KYD',
'am' => 'KYD',
'ar' => 'KYD',
+ 'as' => 'KYD',
'ast' => 'KYD',
'az' => 'KYD',
+ 'be' => 'KYD',
'bg' => 'KYD',
'bn' => 'KYD',
+ 'br' => 'KYD',
'bs' => 'KYD',
'ca' => 'KYD',
+ 'ccp' => 'KYD',
+ 'ce' => 'KYD',
+ 'chr' => 'KYD',
'cs' => 'KYD',
+ 'cy' => 'KYD',
'da' => 'KYD',
'de' => 'KYD',
+ 'ee' => 'KYD',
'el' => 'KYD',
- 'en' => array(
+ 'en' => [
'KY' => '$',
- ),
+ ],
'es' => 'KYD',
'et' => 'KYD',
'eu' => 'KYD',
+ 'fa' => 'KYD',
'fi' => 'KYD',
'fil' => 'KYD',
+ 'fo' => 'KYD',
'fr' => 'KYD',
'ga' => 'KYD',
'gd' => 'KYD',
@@ -3469,64 +4515,89 @@ $currencySymbols = array(
'is' => 'KYD',
'it' => 'KYD',
'ja' => 'KYD',
+ 'jv' => 'KYD',
'ka' => 'KYD',
+ 'kab' => 'KYD',
'kk' => 'KYD',
'km' => 'KYD',
'kn' => 'KYD',
'ko' => 'KYD',
+ 'ky' => 'KYD',
'lo' => 'KYD',
'lt' => 'KYD',
'lv' => 'KYD',
+ 'mi' => 'KYD',
'mk' => 'KYD',
'ml' => 'KYD',
'mn' => 'KYD',
'mr' => 'KYD',
'ms' => 'KYD',
+ 'mt' => 'KYD',
+ 'my' => 'KYD',
+ 'mzn' => 'KYD',
'nb' => 'KYD',
'ne' => 'KYD',
'nl' => 'KYD',
+ 'nn' => 'KYD',
+ 'or' => 'KYD',
'pa' => 'KYD',
'pl' => 'KYD',
+ 'ps' => 'KYD',
'pt' => 'KYD',
'rm' => 'KYD',
'ro' => 'KYD',
'root' => '$',
'ru' => 'KYD',
+ 'sd' => 'KYD',
'si' => 'KYD',
'sk' => 'KYD',
'sl' => 'KYD',
+ 'so' => 'KYD',
+ 'sq' => 'KYD',
'sr' => 'KYD',
'sv' => 'KYD',
'sw' => 'KYD',
'ta' => 'KYD',
'te' => 'KYD',
'th' => 'KYD',
+ 'tk' => 'KYD',
'tr' => 'KYD',
'uk' => 'KYD',
'ur' => 'KYD',
'uz' => 'KYD',
'vi' => 'KYD',
+ 'yue' => 'KYD',
'zh' => 'KYD',
'zu' => 'KYD',
- ),
- 'KZT' => array(
+ ],
+ 'KZT' => [
'af' => 'KZT',
'am' => 'KZT',
'ar' => 'KZT',
+ 'as' => 'KZT',
'ast' => 'KZT',
'az' => 'KZT',
+ 'be' => 'KZT',
'bg' => 'KZT',
'bn' => 'KZT',
+ 'br' => 'KZT',
'bs' => 'KZT',
'ca' => 'KZT',
+ 'ccp' => 'KZT',
+ 'ce' => 'KZT',
+ 'chr' => 'KZT',
'cs' => 'KZT',
+ 'cy' => 'KZT',
'da' => 'KZT',
'de' => 'KZT',
'el' => 'KZT',
'es' => 'KZT',
'et' => 'KZT',
'eu' => 'KZT',
+ 'fa' => 'KZT',
'fi' => 'KZT',
+ 'fil' => 'KZT',
+ 'fo' => 'KZT',
'fr' => 'KZT',
'ga' => 'KZT',
'gd' => 'KZT',
@@ -3541,10 +4612,13 @@ $currencySymbols = array(
'is' => 'KZT',
'it' => 'KZT',
'ja' => 'KZT',
+ 'jv' => 'KZT',
'ka' => 'KZT',
+ 'kab' => 'KZT',
'km' => 'KZT',
'kn' => 'KZT',
'ko' => 'KZT',
+ 'ky' => 'KZT',
'lo' => 'KZT',
'lt' => 'KZT',
'lv' => 'KZT',
@@ -3553,53 +4627,74 @@ $currencySymbols = array(
'mn' => 'KZT',
'mr' => 'KZT',
'ms' => 'KZT',
+ 'mt' => 'KZT',
+ 'my' => 'KZT',
+ 'mzn' => 'KZT',
'nb' => 'KZT',
'ne' => 'KZT',
'nl' => 'KZT',
+ 'nn' => 'KZT',
+ 'or' => 'KZT',
'pa' => 'KZT',
'pl' => 'KZT',
+ 'ps' => 'KZT',
'pt' => 'KZT',
'ro' => 'KZT',
'root' => '₸',
- 'ru' => array(
+ 'ru' => [
'DEFAULT' => 'KZT',
'KZ' => '₸',
- ),
+ ],
+ 'sd' => 'KZT',
'si' => 'KZT',
'sk' => 'KZT',
'sl' => 'KZT',
+ 'so' => 'KZT',
+ 'sq' => 'KZT',
'sr' => 'KZT',
'sv' => 'KZT',
'sw' => 'KZT',
'ta' => 'KZT',
'te' => 'KZT',
'th' => 'KZT',
+ 'tk' => 'KZT',
'tr' => 'KZT',
'uk' => 'KZT',
'ur' => 'KZT',
'uz' => 'KZT',
'vi' => 'KZT',
+ 'yue' => 'KZT',
'zh' => 'KZT',
- ),
- 'LAK' => array(
+ 'zu' => 'KZT',
+ ],
+ 'LAK' => [
'af' => 'LAK',
'am' => 'LAK',
'ar' => 'LAK',
+ 'as' => 'LAK',
'ast' => 'LAK',
'az' => 'LAK',
+ 'be' => 'LAK',
'bg' => 'LAK',
'bn' => 'LAK',
+ 'br' => 'LAK',
'bs' => 'LAK',
'ca' => 'LAK',
+ 'ccp' => 'LAK',
+ 'ce' => 'LAK',
+ 'chr' => 'LAK',
'cs' => 'LAK',
+ 'cy' => 'LAK',
'da' => 'LAK',
'de' => 'LAK',
'el' => 'LAK',
'es' => 'LAK',
'et' => 'LAK',
'eu' => 'LAK',
+ 'fa' => 'LAK',
'fi' => 'LAK',
'fil' => 'LAK',
+ 'fo' => 'LAK',
'fr' => 'LAK',
'ga' => 'LAK',
'gd' => 'LAK',
@@ -3614,11 +4709,14 @@ $currencySymbols = array(
'is' => 'LAK',
'it' => 'LAK',
'ja' => 'LAK',
+ 'jv' => 'LAK',
'ka' => 'LAK',
+ 'kab' => 'LAK',
'kk' => 'LAK',
'km' => 'LAK',
'kn' => 'LAK',
'ko' => 'LAK',
+ 'ky' => 'LAK',
'lb' => 'LAK',
'lt' => 'LAK',
'lv' => 'LAK',
@@ -3627,53 +4725,75 @@ $currencySymbols = array(
'mn' => 'LAK',
'mr' => 'LAK',
'ms' => 'LAK',
+ 'mt' => 'LAK',
+ 'my' => 'LAK',
+ 'mzn' => 'LAK',
'nb' => 'LAK',
'ne' => 'LAK',
'nl' => 'LAK',
+ 'nn' => 'LAK',
+ 'or' => 'LAK',
'pa' => 'LAK',
'pl' => 'LAK',
+ 'ps' => 'LAK',
'pt' => 'LAK',
'ro' => 'LAK',
'root' => '₭',
'ru' => 'LAK',
+ 'sd' => 'LAK',
'si' => 'LAK',
'sk' => 'LAK',
'sl' => 'LAK',
+ 'so' => 'LAK',
+ 'sq' => 'LAK',
'sr' => 'LAK',
'sv' => 'LAK',
'sw' => 'LAK',
'ta' => 'LAK',
'te' => 'LAK',
'th' => 'LAK',
+ 'tk' => 'LAK',
'tr' => 'LAK',
'uk' => 'LAK',
'ur' => 'LAK',
'uz' => 'LAK',
'vi' => 'LAK',
+ 'yue' => 'LAK',
'zh' => 'LAK',
- ),
- 'LBP' => array(
+ 'zu' => 'LAK',
+ ],
+ 'LBP' => [
'af' => 'LBP',
'am' => 'LBP',
'ar' => 'ل.ل.‏',
+ 'as' => 'LBP',
'ast' => 'LBP',
'az' => 'LBP',
+ 'be' => 'LBP',
'bg' => 'LBP',
'bn' => 'LBP',
+ 'br' => 'LBP',
'bs' => 'LBP',
'ca' => 'LBP',
+ 'ccp' => 'LBP',
+ 'ce' => 'LBP',
+ 'chr' => 'LBP',
'cs' => 'LBP',
+ 'cy' => 'LBP',
'da' => 'LBP',
'de' => 'LBP',
'el' => 'LBP',
'es' => 'LBP',
'et' => 'LBP',
'eu' => 'LBP',
+ 'fa' => 'LBP',
'fi' => 'LBP',
- 'fr' => array(
+ 'fil' => 'LBP',
+ 'fo' => 'LBP',
+ 'fr' => [
'CA' => 'LBP',
'DEFAULT' => '£LB',
- ),
+ ],
'ga' => 'LBP',
'gd' => 'LBP',
'gl' => 'LBP',
@@ -3687,12 +4807,15 @@ $currencySymbols = array(
'is' => 'LBP',
'it' => 'LBP',
'ja' => 'LBP',
+ 'jv' => 'LBP',
'ka' => 'LBP',
+ 'kab' => '£LB',
'kea' => 'LBP',
'kk' => 'LBP',
'km' => 'LBP',
'kn' => 'LBP',
'ko' => 'LBP',
+ 'ky' => 'LBP',
'lo' => 'LBP',
'lt' => 'LBP',
'lv' => 'LBP',
@@ -3701,50 +4824,71 @@ $currencySymbols = array(
'mn' => 'LBP',
'mr' => 'LBP',
'ms' => 'LBP',
+ 'mt' => 'LBP',
+ 'my' => 'LBP',
+ 'mzn' => 'LBP',
'nb' => 'LBP',
'ne' => 'LBP',
'nl' => 'LBP',
+ 'nn' => 'LBP',
+ 'or' => 'LBP',
'pa' => 'LBP',
'pl' => 'LBP',
+ 'ps' => 'LBP',
'pt' => 'LBP',
'ro' => 'LBP',
'root' => 'L£',
'ru' => 'LBP',
+ 'sd' => 'LBP',
'si' => 'LBP',
'sk' => 'LBP',
'sl' => 'LBP',
+ 'so' => 'LBP',
+ 'sq' => 'LBP',
'sr' => 'LBP',
'sv' => 'LBP',
'sw' => 'LBP',
'ta' => 'LBP',
'te' => 'LBP',
'th' => 'LBP',
+ 'tk' => 'LBP',
'tr' => 'LBP',
'uk' => 'LBP',
'ur' => 'LBP',
'uz' => 'LBP',
'vi' => 'LBP',
+ 'yue' => 'LBP',
'zh' => 'LBP',
- ),
- 'LKR' => array(
+ 'zu' => 'LBP',
+ ],
+ 'LKR' => [
'af' => 'LKR',
'am' => 'LKR',
'ar' => 'LKR',
+ 'as' => 'LKR',
'ast' => 'LKR',
'az' => 'LKR',
+ 'be' => 'LKR',
'bg' => 'LKR',
'bn' => 'LKR',
+ 'br' => 'LKR',
'bs' => 'LKR',
'ca' => 'LKR',
+ 'ccp' => 'LKR',
+ 'ce' => 'LKR',
+ 'chr' => 'LKR',
'cs' => 'LKR',
+ 'cy' => 'LKR',
'da' => 'LKR',
'de' => 'LKR',
'el' => 'LKR',
'es' => 'LKR',
'et' => 'LKR',
'eu' => 'LKR',
+ 'fa' => 'LKR',
'fi' => 'LKR',
'fil' => 'LKR',
+ 'fo' => 'LKR',
'fr' => 'LKR',
'ga' => 'LKR',
'gd' => 'LKR',
@@ -3759,12 +4903,15 @@ $currencySymbols = array(
'is' => 'LKR',
'it' => 'LKR',
'ja' => 'LKR',
+ 'jv' => 'LKR',
'ka' => 'LKR',
+ 'kab' => 'LKR',
'kea' => 'LKR',
'kk' => 'LKR',
'km' => 'LKR',
'kn' => 'LKR',
'ko' => 'LKR',
+ 'ky' => 'LKR',
'lb' => 'LKR',
'lo' => 'LKR',
'lt' => 'LKR',
@@ -3774,55 +4921,80 @@ $currencySymbols = array(
'mn' => 'LKR',
'mr' => 'LKR',
'ms' => 'LKR',
+ 'mt' => 'LKR',
+ 'my' => 'LKR',
+ 'mzn' => 'LKR',
'nb' => 'LKR',
'ne' => 'LKR',
'nl' => 'LKR',
+ 'nn' => 'LKR',
+ 'or' => 'LKR',
'pa' => 'LKR',
'pl' => 'LKR',
+ 'ps' => 'LKR',
'pt' => 'LKR',
'ro' => 'LKR',
'root' => 'Rs',
'ru' => 'LKR',
+ 'sd' => 'LKR',
'si' => 'රු.',
'sk' => 'LKR',
'sl' => 'LKR',
+ 'so' => 'LKR',
+ 'sq' => 'LKR',
'sr' => 'LKR',
'sv' => 'LKR',
'sw' => 'LKR',
- 'ta' => array(
+ 'ta' => [
'DEFAULT' => 'LKR',
'LK' => 'Rs.',
- ),
+ ],
'te' => 'LKR',
'th' => 'LKR',
+ 'tk' => 'LKR',
'tr' => 'LKR',
'uk' => 'LKR',
'ur' => 'LKR',
'uz' => 'LKR',
'vi' => 'LKR',
+ 'yue' => 'LKR',
'zh' => 'LKR',
- ),
- 'LRD' => array(
+ 'zu' => 'LKR',
+ ],
+ 'LRD' => [
'af' => 'LRD',
'am' => 'LRD',
'ar' => 'LRD',
+ 'as' => 'LRD',
'ast' => 'LRD',
'az' => 'LRD',
+ 'be' => 'LRD',
'bg' => 'LRD',
'bn' => 'LRD',
+ 'br' => 'LRD',
'bs' => 'LRD',
'ca' => 'LRD',
+ 'ccp' => 'LRD',
+ 'ce' => 'LRD',
+ 'chr' => 'LRD',
'cs' => 'LRD',
+ 'cy' => 'LRD',
'da' => 'LRD',
'de' => 'LRD',
'el' => 'LRD',
- 'en' => array(
+ 'en' => [
'LR' => '$',
- ),
+ ],
'es' => 'LRD',
'et' => 'LRD',
'eu' => 'LRD',
+ 'fa' => 'LRD',
+ 'ff' => [
+ 'LR' => '$',
+ ],
'fi' => 'LRD',
+ 'fil' => 'LRD',
+ 'fo' => 'LRD',
'fr' => 'LRD',
'ga' => 'LRD',
'gd' => 'LRD',
@@ -3837,7 +5009,9 @@ $currencySymbols = array(
'is' => 'LRD',
'it' => 'LRD',
'ja' => 'LRD',
+ 'jv' => 'LRD',
'ka' => 'LRD',
+ 'kab' => 'LRD',
'kk' => 'LRD',
'km' => 'LRD',
'kn' => 'LRD',
@@ -3851,50 +5025,68 @@ $currencySymbols = array(
'mn' => 'LRD',
'mr' => 'LRD',
'ms' => 'LRD',
+ 'mt' => 'LRD',
+ 'my' => 'LRD',
+ 'mzn' => 'LRD',
'nb' => 'LRD',
'ne' => 'LRD',
'nl' => 'LRD',
+ 'nn' => 'LRD',
+ 'or' => 'LRD',
'pa' => 'LRD',
'pl' => 'LRD',
+ 'ps' => 'LRD',
'pt' => 'LRD',
'ro' => 'LRD',
'root' => '$',
'ru' => 'LRD',
+ 'sd' => 'LRD',
'si' => 'LRD',
'sk' => 'LRD',
'sl' => 'LRD',
+ 'so' => 'LRD',
+ 'sq' => 'LRD',
'sr' => 'LRD',
'sv' => 'LRD',
'sw' => 'LRD',
'ta' => 'LRD',
'te' => 'LRD',
'th' => 'LRD',
+ 'tk' => 'LRD',
'tr' => 'LRD',
'uk' => 'LRD',
'ur' => 'LRD',
'uz' => 'LRD',
'vi' => 'LRD',
+ 'yue' => 'LRD',
'zh' => 'LRD',
- ),
- 'LSL' => array(
+ 'zu' => 'LRD',
+ ],
+ 'LSL' => [
'fr' => 'lLS',
- ),
- 'LTL' => array(
+ 'kab' => 'lLS',
+ ],
+ 'LTL' => [
'af' => 'LTL',
'am' => 'LTL',
'ar' => 'LTL',
+ 'ast' => 'LTL',
'az' => 'LTL',
'bg' => 'LTL',
'bn' => 'LTL',
+ 'br' => 'LTL',
'bs' => 'LTL',
'ca' => 'LTL',
+ 'ccp' => 'LTL',
'cs' => 'LTL',
+ 'cy' => 'LTL',
'da' => 'LTL',
'de' => 'LTL',
'el' => 'LTL',
'es' => 'LTL',
'et' => 'LTL',
'eu' => 'LTL',
+ 'fa' => 'LTL',
'fi' => 'LTL',
'fil' => 'LTL',
'fr' => 'LTL',
@@ -3912,6 +5104,7 @@ $currencySymbols = array(
'it' => 'LTL',
'ja' => 'LTL',
'ka' => 'LTL',
+ 'kab' => 'LTL',
'kea' => 'LTL',
'km' => 'LTL',
'kn' => 'LTL',
@@ -3937,6 +5130,7 @@ $currencySymbols = array(
'si' => 'LTL',
'sk' => 'LTL',
'sl' => 'LTL',
+ 'sq' => 'LTL',
'sr' => 'LTL',
'sv' => 'LTL',
'sw' => 'LTL',
@@ -3948,32 +5142,43 @@ $currencySymbols = array(
'ur' => 'LTL',
'uz' => 'LTL',
'vi' => 'LTL',
+ 'yue' => 'LTL',
'zh' => 'LTL',
- ),
- 'LUF' => array(
- 'de' => array(
+ ],
+ 'LUF' => [
+ 'de' => [
+ 'DEFAULT' => 'LUF',
+ 'LU' => 'F',
+ ],
+ 'fr' => [
'DEFAULT' => 'LUF',
'LU' => 'F',
- ),
- 'fr' => array(
+ ],
+ 'pt' => [
'LU' => 'F',
- ),
- ),
- 'LVL' => array(
+ ],
+ ],
+ 'LVL' => [
+ 'af' => 'LVL',
'am' => 'LVL',
'ar' => 'LVL',
+ 'ast' => 'LVL',
'az' => 'LVL',
'bg' => 'LVL',
'bn' => 'LVL',
+ 'br' => 'LVL',
'bs' => 'LVL',
'ca' => 'LVL',
+ 'ccp' => 'LVL',
'cs' => 'LVL',
+ 'cy' => 'LVL',
'da' => 'LVL',
'de' => 'LVL',
'el' => 'LVL',
'es' => 'LVL',
'et' => 'LVL',
'eu' => 'LVL',
+ 'fa' => 'LVL',
'fi' => 'LVL',
'fil' => 'LVL',
'fr' => 'LVL',
@@ -3991,6 +5196,7 @@ $currencySymbols = array(
'it' => 'LVL',
'ja' => 'LVL',
'ka' => 'LVL',
+ 'kab' => 'LVL',
'km' => 'LVL',
'kn' => 'LVL',
'ko' => 'LVL',
@@ -4013,6 +5219,7 @@ $currencySymbols = array(
'ru' => 'LVL',
'sk' => 'LVL',
'sl' => 'LVL',
+ 'sq' => 'LVL',
'sr' => 'LVL',
'sv' => 'LVL',
'sw' => 'LVL',
@@ -4024,51 +5231,64 @@ $currencySymbols = array(
'ur' => 'LVL',
'uz' => 'LVL',
'vi' => 'LVL',
+ 'yue' => 'LVL',
'zh' => 'LVL',
- ),
- 'LYD' => array(
+ ],
+ 'LYD' => [
'ar' => 'د.ل.‏',
- ),
- 'MAD' => array(
+ ],
+ 'MAD' => [
'ar' => 'د.م.‏',
- ),
- 'MAF' => array(
+ ],
+ 'MAF' => [
'fr' => 'fMA',
- ),
- 'MDL' => array(
- 'ro' => array(
+ 'kab' => 'fMA',
+ ],
+ 'MDL' => [
+ 'ro' => [
'DEFAULT' => 'MDL',
'MD' => 'L',
- ),
- 'ru' => array(
+ ],
+ 'ru' => [
'DEFAULT' => 'MDL',
'MD' => 'L',
- ),
- ),
- 'MGA' => array(
+ ],
+ ],
+ 'MGA' => [
'af' => 'MGA',
'am' => 'MGA',
'ar' => 'MGA',
+ 'as' => 'MGA',
+ 'ast' => 'MGA',
'az' => 'MGA',
+ 'be' => 'MGA',
'bg' => 'MGA',
'bn' => 'MGA',
+ 'br' => 'MGA',
'bs' => 'MGA',
'ca' => 'MGA',
+ 'ccp' => 'MGA',
+ 'ce' => 'MGA',
+ 'chr' => 'MGA',
'cs' => 'MGA',
+ 'cy' => 'MGA',
'da' => 'MGA',
'de' => 'MGA',
'el' => 'MGA',
- 'en' => array(
+ 'en' => [
'MG' => 'Ar',
- ),
+ ],
'es' => 'MGA',
'et' => 'MGA',
'eu' => 'MGA',
+ 'fa' => 'MGA',
'fi' => 'MGA',
- 'fr' => array(
+ 'fil' => 'MGA',
+ 'fo' => 'MGA',
+ 'fr' => [
'DEFAULT' => 'MGA',
'MG' => 'Ar',
- ),
+ ],
'ga' => 'MGA',
'gd' => 'MGA',
'gl' => 'MGA',
@@ -4082,12 +5302,15 @@ $currencySymbols = array(
'is' => 'MGA',
'it' => 'MGA',
'ja' => 'MGA',
+ 'jv' => 'MGA',
'ka' => 'MGA',
+ 'kab' => 'MGA',
'kea' => 'MGA',
'kk' => 'MGA',
'km' => 'MGA',
'kn' => 'MGA',
'ko' => 'MGA',
+ 'ky' => 'MGA',
'lo' => 'MGA',
'lt' => 'MGA',
'lv' => 'MGA',
@@ -4096,59 +5319,82 @@ $currencySymbols = array(
'mn' => 'MGA',
'mr' => 'MGA',
'ms' => 'MGA',
+ 'mt' => 'MGA',
+ 'my' => 'MGA',
+ 'mzn' => 'MGA',
'nb' => 'MGA',
'ne' => 'MGA',
'nl' => 'MGA',
+ 'nn' => 'MGA',
+ 'or' => 'MGA',
'pa' => 'MGA',
'pl' => 'MGA',
+ 'ps' => 'MGA',
'pt' => 'MGA',
'ro' => 'MGA',
'root' => 'Ar',
'ru' => 'MGA',
+ 'sd' => 'MGA',
'si' => 'MGA',
'sk' => 'MGA',
'sl' => 'MGA',
+ 'so' => 'MGA',
+ 'sq' => 'MGA',
'sr' => 'MGA',
'sv' => 'MGA',
'sw' => 'MGA',
'ta' => 'MGA',
'te' => 'MGA',
'th' => 'MGA',
+ 'tk' => 'MGA',
'tr' => 'MGA',
'uk' => 'MGA',
'ur' => 'MGA',
'uz' => 'MGA',
'vi' => 'MGA',
+ 'yue' => 'MGA',
'zh' => 'MGA',
- ),
- 'MGF' => array(
+ 'zu' => 'MGA',
+ ],
+ 'MGF' => [
'fr' => 'Fmg',
- ),
- 'MKD' => array(
+ 'kab' => 'Fmg',
+ ],
+ 'MKD' => [
'mk' => 'ден',
- 'sq' => array(
+ 'sq' => [
+ 'DEFAULT' => 'MKD',
'MK' => 'den',
- ),
- ),
- 'MMK' => array(
+ ],
+ ],
+ 'MMK' => [
'af' => 'MMK',
'am' => 'MMK',
'ar' => 'MMK',
+ 'as' => 'MMK',
'ast' => 'MMK',
'az' => 'MMK',
+ 'be' => 'MMK',
'bg' => 'MMK',
'bn' => 'MMK',
+ 'br' => 'MMK',
'bs' => 'MMK',
'ca' => 'MMK',
+ 'ccp' => 'MMK',
+ 'ce' => 'MMK',
+ 'chr' => 'MMK',
'cs' => 'MMK',
+ 'cy' => 'MMK',
'da' => 'MMK',
'de' => 'MMK',
'el' => 'MMK',
'es' => 'MMK',
'et' => 'MMK',
'eu' => 'MMK',
+ 'fa' => 'MMK',
'fi' => 'MMK',
'fil' => 'MMK',
+ 'fo' => 'MMK',
'fr' => 'MMK',
'ga' => 'MMK',
'gd' => 'MMK',
@@ -4163,12 +5409,15 @@ $currencySymbols = array(
'is' => 'MMK',
'it' => 'MMK',
'ja' => 'MMK',
+ 'jv' => 'MMK',
'ka' => 'MMK',
+ 'kab' => 'MMK',
'kea' => 'MMK',
'kk' => 'MMK',
'km' => 'MMK',
'kn' => 'MMK',
'ko' => 'MMK',
+ 'ky' => 'MMK',
'lb' => 'MMK',
'lo' => 'MMK',
'lt' => 'MMK',
@@ -4178,50 +5427,70 @@ $currencySymbols = array(
'mn' => 'MMK',
'mr' => 'MMK',
'ms' => 'MMK',
+ 'mt' => 'MMK',
+ 'mzn' => 'MMK',
'nb' => 'MMK',
'ne' => 'MMK',
'nl' => 'MMK',
+ 'nn' => 'MMK',
+ 'or' => 'MMK',
'pa' => 'MMK',
'pl' => 'MMK',
+ 'ps' => 'MMK',
'pt' => 'MMK',
'ro' => 'MMK',
'root' => 'K',
'ru' => 'MMK',
+ 'sd' => 'MMK',
'si' => 'MMK',
'sk' => 'MMK',
'sl' => 'MMK',
+ 'so' => 'MMK',
+ 'sq' => 'MMK',
'sr' => 'MMK',
'sv' => 'MMK',
'sw' => 'MMK',
'ta' => 'MMK',
'te' => 'MMK',
'th' => 'MMK',
+ 'tk' => 'MMK',
'tr' => 'MMK',
'uk' => 'MMK',
'ur' => 'MMK',
'uz' => 'MMK',
'vi' => 'MMK',
+ 'yue' => 'MMK',
'zh' => 'MMK',
- ),
- 'MNT' => array(
+ 'zu' => 'MMK',
+ ],
+ 'MNT' => [
'af' => 'MNT',
'am' => 'MNT',
'ar' => 'MNT',
+ 'as' => 'MNT',
'ast' => 'MNT',
'az' => 'MNT',
+ 'be' => 'MNT',
'bg' => 'MNT',
'bn' => 'MNT',
+ 'br' => 'MNT',
'bs' => 'MNT',
'ca' => 'MNT',
+ 'ccp' => 'MNT',
+ 'ce' => 'MNT',
+ 'chr' => 'MNT',
'cs' => 'MNT',
+ 'cy' => 'MNT',
'da' => 'MNT',
'de' => 'MNT',
'el' => 'MNT',
'es' => 'MNT',
'et' => 'MNT',
'eu' => 'MNT',
+ 'fa' => 'MNT',
'fi' => 'MNT',
'fil' => 'MNT',
+ 'fo' => 'MNT',
'fr' => 'MNT',
'ga' => 'MNT',
'gd' => 'MNT',
@@ -4236,11 +5505,14 @@ $currencySymbols = array(
'is' => 'MNT',
'it' => 'MNT',
'ja' => 'MNT',
+ 'jv' => 'MNT',
'ka' => 'MNT',
+ 'kab' => 'MNT',
'kk' => 'MNT',
'km' => 'MNT',
'kn' => 'MNT',
'ko' => 'MNT',
+ 'ky' => 'MNT',
'lb' => 'MNT',
'lo' => 'MNT',
'lt' => 'MNT',
@@ -4249,82 +5521,114 @@ $currencySymbols = array(
'ml' => 'MNT',
'mr' => 'MNT',
'ms' => 'MNT',
+ 'mt' => 'MNT',
+ 'my' => 'MNT',
+ 'mzn' => 'MNT',
'nb' => 'MNT',
'ne' => 'MNT',
'nl' => 'MNT',
+ 'nn' => 'MNT',
+ 'or' => 'MNT',
'pa' => 'MNT',
'pl' => 'MNT',
+ 'ps' => 'MNT',
'pt' => 'MNT',
'ro' => 'MNT',
'root' => '₮',
'ru' => 'MNT',
+ 'sd' => 'MNT',
'si' => 'MNT',
'sk' => 'MNT',
'sl' => 'MNT',
+ 'so' => 'MNT',
+ 'sq' => 'MNT',
'sr' => 'MNT',
'sv' => 'MNT',
'sw' => 'MNT',
'ta' => 'MNT',
'te' => 'MNT',
'th' => 'MNT',
+ 'tk' => 'MNT',
'tr' => 'MNT',
'uk' => 'MNT',
'ur' => 'MNT',
'uz' => 'MNT',
'vi' => 'MNT',
+ 'yue' => 'MNT',
'zh' => 'MNT',
- ),
- 'MOP' => array(
- 'en' => array(
+ 'zu' => 'MNT',
+ ],
+ 'MOP' => [
+ 'en' => [
'MO' => 'MOP$',
- ),
- 'pt' => array(
+ ],
+ 'pt' => [
'DEFAULT' => 'MOP',
'MO' => 'MOP$',
- ),
- 'zh' => array(
+ ],
+ 'zh' => [
'DEFAULT' => 'MOP',
'MO' => 'MOP$',
- ),
- ),
- 'MRO' => array(
- 'ar' => 'أ.م.‏',
- 'ff' => array(
- 'MR' => 'UM',
- ),
- 'fr' => array(
+ ],
+ ],
+ 'MRO' => [
+ 'es' => [
'DEFAULT' => 'MRO',
+ 'MX' => 'MRU',
+ ],
+ ],
+ 'MRU' => [
+ 'ar' => 'أ.م.',
+ 'es' => [
+ 'MX' => 'UM',
+ ],
+ 'ff' => [
+ 'MR' => 'UM',
+ ],
+ 'fr' => [
+ 'DEFAULT' => 'MRU',
'MR' => 'UM',
- ),
- ),
- 'MTP' => array(
+ ],
+ ],
+ 'MTP' => [
'fr' => '£MT',
- ),
- 'MUR' => array(
+ 'kab' => '£MT',
+ ],
+ 'MUR' => [
'af' => 'MUR',
'am' => 'MUR',
'ar' => 'MUR',
+ 'as' => 'MUR',
'ast' => 'MUR',
'az' => 'MUR',
+ 'be' => 'MUR',
'bg' => 'MUR',
'bn' => 'MUR',
+ 'br' => 'MUR',
'bs' => 'MUR',
'ca' => 'MUR',
+ 'ccp' => 'MUR',
+ 'ce' => 'MUR',
+ 'chr' => 'MUR',
'cs' => 'MUR',
+ 'cy' => 'MUR',
'da' => 'MUR',
'de' => 'MUR',
'el' => 'MUR',
- 'en' => array(
+ 'en' => [
'MU' => 'Rs',
- ),
+ ],
'es' => 'MUR',
'et' => 'MUR',
'eu' => 'MUR',
+ 'fa' => 'MUR',
'fi' => 'MUR',
- 'fr' => array(
+ 'fil' => 'MUR',
+ 'fo' => 'MUR',
+ 'fr' => [
'DEFAULT' => 'MUR',
'MU' => 'Rs',
- ),
+ ],
'ga' => 'MUR',
'gd' => 'MUR',
'gl' => 'MUR',
@@ -4338,12 +5642,15 @@ $currencySymbols = array(
'is' => 'MUR',
'it' => 'MUR',
'ja' => 'MUR',
+ 'jv' => 'MUR',
'ka' => 'MUR',
+ 'kab' => 'MUR',
'kea' => 'MUR',
'kk' => 'MUR',
'km' => 'MUR',
'kn' => 'MUR',
'ko' => 'MUR',
+ 'ky' => 'MUR',
'lo' => 'MUR',
'lt' => 'MUR',
'lv' => 'MUR',
@@ -4352,92 +5659,114 @@ $currencySymbols = array(
'mn' => 'MUR',
'mr' => 'MUR',
'ms' => 'MUR',
+ 'mt' => 'MUR',
+ 'my' => 'MUR',
+ 'mzn' => 'MUR',
'nb' => 'MUR',
'ne' => 'MUR',
'nl' => 'MUR',
+ 'nn' => 'MUR',
+ 'or' => 'MUR',
'pa' => 'MUR',
'pl' => 'MUR',
+ 'ps' => 'MUR',
'pt' => 'MUR',
'ro' => 'MUR',
'root' => 'Rs',
'ru' => 'MUR',
+ 'sd' => 'MUR',
'si' => 'MUR',
'sk' => 'MUR',
'sl' => 'MUR',
+ 'so' => 'MUR',
+ 'sq' => 'MUR',
'sr' => 'MUR',
'sv' => 'MUR',
'sw' => 'MUR',
'ta' => 'MUR',
'te' => 'MUR',
'th' => 'MUR',
+ 'tk' => 'MUR',
'tr' => 'MUR',
'uk' => 'MUR',
'ur' => 'MUR',
'uz' => 'MUR',
'vi' => 'MUR',
+ 'yue' => 'MUR',
'zh' => 'MUR',
- ),
- 'MWK' => array(
- 'en' => array(
+ 'zu' => 'MUR',
+ ],
+ 'MWK' => [
+ 'en' => [
'MW' => 'MK',
- ),
- ),
- 'MXN' => array(
+ ],
+ ],
+ 'MXN' => [
'af' => 'MXN',
'bg' => 'MXN',
'bs' => 'MXN',
'ca' => 'MXN',
- 'es' => array(
+ 'en' => [
+ 'AU' => 'MXN',
+ ],
+ 'es' => [
'DEFAULT' => 'MXN',
'MX' => '$',
- ),
+ ],
'fa' => '$MX',
'fi' => 'MXN',
- 'fr' => array(
+ 'fr' => [
'CA' => 'MXN',
'DEFAULT' => '$MX',
- ),
+ ],
'gl' => '$MX',
'hr' => 'MXN',
'hu' => 'MXN',
'is' => 'MXN',
'it' => 'MXN',
+ 'kab' => '$MX',
'ky' => 'MXN',
'lt' => 'MXN',
'ms' => 'MXN',
'nb' => 'MXN',
+ 'nn' => 'MXN',
'pl' => 'MXN',
'ro' => 'MXN',
'root' => 'MX$',
+ 'sl' => 'MXN',
'uk' => 'MXN',
- ),
- 'MXP' => array(
- 'es' => array(
- 'MX' => 'MXP',
- ),
- ),
- 'MYR' => array(
+ ],
+ 'MYR' => [
'af' => 'MYR',
'am' => 'MYR',
'ar' => 'MYR',
+ 'as' => 'MYR',
'ast' => 'MYR',
'az' => 'MYR',
+ 'be' => 'MYR',
'bg' => 'MYR',
'bn' => 'MYR',
+ 'br' => 'MYR',
'bs' => 'MYR',
'ca' => 'MYR',
+ 'ccp' => 'MYR',
+ 'ce' => 'MYR',
+ 'chr' => 'MYR',
'cs' => 'MYR',
+ 'cy' => 'MYR',
'da' => 'MYR',
'de' => 'MYR',
'el' => 'MYR',
- 'en' => array(
+ 'en' => [
'MY' => 'RM',
- ),
+ ],
'es' => 'MYR',
'et' => 'MYR',
'eu' => 'MYR',
+ 'fa' => 'MYR',
'fi' => 'MYR',
'fil' => 'MYR',
+ 'fo' => 'MYR',
'fr' => 'MYR',
'ga' => 'MYR',
'gd' => 'MYR',
@@ -4452,12 +5781,15 @@ $currencySymbols = array(
'is' => 'MYR',
'it' => 'MYR',
'ja' => 'MYR',
+ 'jv' => 'MYR',
'ka' => 'MYR',
+ 'kab' => 'MYR',
'kea' => 'MYR',
'kk' => 'MYR',
'km' => 'MYR',
'kn' => 'MYR',
'ko' => 'MYR',
+ 'ky' => 'MYR',
'lb' => 'MYR',
'lo' => 'MYR',
'lt' => 'MYR',
@@ -4466,71 +5798,93 @@ $currencySymbols = array(
'ml' => 'MYR',
'mn' => 'MYR',
'mr' => 'MYR',
+ 'mt' => 'MYR',
+ 'my' => 'MYR',
+ 'mzn' => 'MYR',
'nb' => 'MYR',
'ne' => 'MYR',
'nl' => 'MYR',
+ 'nn' => 'MYR',
+ 'or' => 'MYR',
'pa' => 'MYR',
'pl' => 'MYR',
+ 'ps' => 'MYR',
'pt' => 'MYR',
'ro' => 'MYR',
'root' => 'RM',
'ru' => 'MYR',
+ 'sd' => 'MYR',
'si' => 'MYR',
'sk' => 'MYR',
'sl' => 'MYR',
+ 'so' => 'MYR',
+ 'sq' => 'MYR',
'sr' => 'MYR',
'sv' => 'MYR',
'sw' => 'MYR',
- 'ta' => array(
+ 'ta' => [
'DEFAULT' => 'MYR',
'MY' => 'RM',
'SG' => 'RM',
- ),
+ ],
'te' => 'MYR',
'th' => 'MYR',
+ 'tk' => 'MYR',
'tr' => 'MYR',
'uk' => 'MYR',
'ur' => 'MYR',
'uz' => 'MYR',
'vi' => 'MYR',
+ 'yue' => 'MYR',
'zh' => 'MYR',
- ),
- 'MZN' => array(
+ 'zu' => 'MYR',
+ ],
+ 'MZN' => [
'mgh' => 'MTn',
- 'pt' => array(
+ 'pt' => [
'DEFAULT' => 'MZN',
'MZ' => 'MTn',
- ),
+ ],
'seh' => 'MTn',
- ),
- 'NAD' => array(
- 'af' => array(
+ ],
+ 'NAD' => [
+ 'af' => [
'DEFAULT' => 'NAD',
'NA' => '$',
- ),
+ ],
'am' => 'NAD',
'ar' => 'NAD',
+ 'as' => 'NAD',
'ast' => 'NAD',
'az' => 'NAD',
+ 'be' => 'NAD',
'bg' => 'NAD',
'bn' => 'NAD',
+ 'br' => 'NAD',
'bs' => 'NAD',
'ca' => 'NAD',
+ 'ccp' => 'NAD',
+ 'ce' => 'NAD',
+ 'chr' => 'NAD',
'cs' => 'NAD',
+ 'cy' => 'NAD',
'da' => 'NAD',
'de' => 'NAD',
'el' => 'NAD',
- 'en' => array(
+ 'en' => [
'NA' => '$',
- ),
+ ],
'es' => 'NAD',
'et' => 'NAD',
'eu' => 'NAD',
+ 'fa' => 'NAD',
'fi' => 'NAD',
- 'fr' => array(
+ 'fil' => 'NAD',
+ 'fo' => 'NAD',
+ 'fr' => [
'CA' => 'NAD',
'DEFAULT' => '$NA',
- ),
+ ],
'ga' => 'NAD',
'gd' => 'NAD',
'gl' => 'NAD',
@@ -4544,11 +5898,14 @@ $currencySymbols = array(
'is' => 'NAD',
'it' => 'NAD',
'ja' => 'NAD',
+ 'jv' => 'NAD',
'ka' => 'NAD',
+ 'kab' => '$NA',
'kk' => 'NAD',
'km' => 'NAD',
'kn' => 'NAD',
'ko' => 'NAD',
+ 'ky' => 'NAD',
'lo' => 'NAD',
'lt' => 'NAD',
'lv' => 'NAD',
@@ -4557,52 +5914,77 @@ $currencySymbols = array(
'mn' => 'NAD',
'mr' => 'NAD',
'ms' => 'NAD',
+ 'mt' => 'NAD',
+ 'my' => 'NAD',
+ 'mzn' => 'NAD',
'nb' => 'NAD',
'ne' => 'NAD',
'nl' => 'NAD',
+ 'nn' => 'NAD',
+ 'or' => 'NAD',
'pa' => 'NAD',
'pl' => 'NAD',
+ 'ps' => 'NAD',
'pt' => 'NAD',
'ro' => 'NAD',
'root' => '$',
'ru' => 'NAD',
+ 'sd' => 'NAD',
'si' => 'NAD',
'sk' => 'NAD',
'sl' => 'NAD',
+ 'so' => 'NAD',
+ 'sq' => 'NAD',
'sr' => 'NAD',
'sv' => 'NAD',
'sw' => 'NAD',
'ta' => 'NAD',
'te' => 'NAD',
'th' => 'NAD',
+ 'tk' => 'NAD',
'tr' => 'NAD',
'uk' => 'NAD',
'ur' => 'NAD',
'uz' => 'NAD',
'vi' => 'NAD',
+ 'yue' => 'NAD',
'zh' => 'NAD',
- ),
- 'NGN' => array(
+ 'zu' => 'NAD',
+ ],
+ 'NGN' => [
'af' => 'NGN',
'am' => 'NGN',
'ar' => 'NGN',
+ 'as' => 'NGN',
'ast' => 'NGN',
'az' => 'NGN',
+ 'be' => 'NGN',
'bg' => 'NGN',
'bn' => 'NGN',
+ 'br' => 'NGN',
'bs' => 'NGN',
'ca' => 'NGN',
+ 'ccp' => 'NGN',
+ 'ce' => 'NGN',
+ 'chr' => 'NGN',
'cs' => 'NGN',
+ 'cy' => 'NGN',
'da' => 'NGN',
'de' => 'NGN',
'el' => 'NGN',
- 'en' => array(
+ 'en' => [
'NG' => '₦',
- ),
+ ],
'es' => 'NGN',
'et' => 'NGN',
'eu' => 'NGN',
+ 'fa' => 'NGN',
+ 'ff' => [
+ 'NG' => '₦',
+ ],
'fi' => 'NGN',
+ 'fil' => 'NGN',
+ 'fo' => 'NGN',
'fr' => 'NGN',
'ga' => 'NGN',
'gd' => 'NGN',
@@ -4617,7 +5999,9 @@ $currencySymbols = array(
'is' => 'NGN',
'it' => 'NGN',
'ja' => 'NGN',
+ 'jv' => 'NGN',
'ka' => 'NGN',
+ 'kab' => 'NGN',
'kk' => 'NGN',
'km' => 'NGN',
'kn' => 'NGN',
@@ -4631,63 +6015,79 @@ $currencySymbols = array(
'mn' => 'NGN',
'mr' => 'NGN',
'ms' => 'NGN',
+ 'mt' => 'NGN',
+ 'my' => 'NGN',
+ 'mzn' => 'NGN',
'nb' => 'NGN',
'ne' => 'NGN',
'nl' => 'NGN',
+ 'nn' => 'NGN',
+ 'or' => 'NGN',
'pa' => 'NGN',
'pl' => 'NGN',
+ 'ps' => 'NGN',
'pt' => 'NGN',
'ro' => 'NGN',
'root' => '₦',
'ru' => 'NGN',
+ 'sd' => 'NGN',
'si' => 'NGN',
'sk' => 'NGN',
'sl' => 'NGN',
+ 'so' => 'NGN',
+ 'sq' => 'NGN',
'sr' => 'NGN',
'sv' => 'NGN',
'sw' => 'NGN',
'ta' => 'NGN',
'te' => 'NGN',
'th' => 'NGN',
+ 'tk' => 'NGN',
'tr' => 'NGN',
'uk' => 'NGN',
'ur' => 'NGN',
'uz' => 'NGN',
'vi' => 'NGN',
- 'yo' => array(
- 'BJ' => '₦',
- 'DEFAULT' => '₦',
- ),
+ 'yue' => 'NGN',
'zh' => 'NGN',
- ),
- 'NIC' => array(
- 'es' => array(
- 'MX' => 'NIC',
- ),
- ),
- 'NIO' => array(
+ 'zu' => 'NGN',
+ ],
+ 'NIO' => [
'af' => 'NIO',
'am' => 'NIO',
'ar' => 'NIO',
+ 'as' => 'NIO',
'ast' => 'NIO',
'az' => 'NIO',
+ 'be' => 'NIO',
'bg' => 'NIO',
'bn' => 'NIO',
+ 'br' => 'NIO',
'bs' => 'NIO',
'ca' => 'NIO',
+ 'ccp' => 'NIO',
+ 'ce' => 'NIO',
+ 'chr' => 'NIO',
'cs' => 'NIO',
+ 'cy' => 'NIO',
'da' => 'NIO',
'de' => 'NIO',
+ 'ee' => 'NIO',
'el' => 'NIO',
- 'es' => array(
+ 'es' => [
'DEFAULT' => 'NIO',
'NI' => 'C$',
- ),
+ ],
'et' => 'NIO',
'eu' => 'NIO',
+ 'fa' => 'NIO',
'fi' => 'NIO',
'fil' => 'NIO',
- 'fr' => 'NIO',
+ 'fo' => 'NIO',
+ 'fr' => [
+ 'CA' => 'C$',
+ 'DEFAULT' => 'NIO',
+ ],
'ga' => 'NIO',
'gd' => 'NIO',
'gl' => 'NIO',
@@ -4701,66 +6101,95 @@ $currencySymbols = array(
'is' => 'NIO',
'it' => 'NIO',
'ja' => 'NIO',
+ 'jv' => 'NIO',
'ka' => 'NIO',
+ 'kab' => 'NIO',
'kea' => 'NIO',
'kk' => 'NIO',
'km' => 'NIO',
'kn' => 'NIO',
'ko' => 'NIO',
+ 'ky' => 'NIO',
'lo' => 'NIO',
'lt' => 'NIO',
'lv' => 'NIO',
+ 'mi' => 'NIO',
'mk' => 'NIO',
'ml' => 'NIO',
'mn' => 'NIO',
'mr' => 'NIO',
'ms' => 'NIO',
+ 'mt' => 'NIO',
+ 'my' => 'NIO',
+ 'mzn' => 'NIO',
'nb' => 'NIO',
'ne' => 'NIO',
'nl' => 'NIO',
+ 'nn' => 'NIO',
+ 'or' => 'NIO',
'pa' => 'NIO',
'pl' => 'NIO',
+ 'ps' => 'NIO',
'pt' => 'NIO',
'ro' => 'NIO',
'root' => 'C$',
'ru' => 'NIO',
+ 'sah' => 'NIO',
+ 'sd' => 'NIO',
'si' => 'NIO',
'sk' => 'NIO',
'sl' => 'NIO',
+ 'so' => 'NIO',
+ 'sq' => 'NIO',
'sr' => 'NIO',
'sv' => 'NIO',
'sw' => 'NIO',
'ta' => 'NIO',
'te' => 'NIO',
'th' => 'NIO',
+ 'tk' => 'NIO',
'tr' => 'NIO',
'uk' => 'NIO',
'ur' => 'NIO',
'uz' => 'NIO',
'vi' => 'NIO',
+ 'yue' => 'NIO',
'zh' => 'NIO',
'zu' => 'NIO',
- ),
- 'NOK' => array(
+ ],
+ 'NLG' => [
+ 'ia' => 'ƒ',
+ ],
+ 'NOK' => [
'af' => 'NOK',
'am' => 'NOK',
'ar' => 'NOK',
+ 'as' => 'NOK',
'ast' => 'NOK',
'az' => 'NOK',
+ 'be' => 'NOK',
'bg' => 'NOK',
'bn' => 'NOK',
+ 'br' => 'NOK',
'bs' => 'NOK',
'ca' => 'NOK',
+ 'ccp' => 'NOK',
+ 'ce' => 'NOK',
+ 'chr' => 'NOK',
'cs' => 'NOK',
+ 'cy' => 'NOK',
'da' => 'NOK',
'de' => 'NOK',
+ 'ee' => 'NOK',
'el' => 'NOK',
'eo' => 'NOK',
'es' => 'NOK',
'et' => 'NOK',
'eu' => 'NOK',
+ 'fa' => 'NOK',
'fi' => 'NOK',
'fil' => 'NOK',
+ 'fo' => 'NOK',
'fr' => 'NOK',
'ga' => 'NOK',
'gd' => 'NOK',
@@ -4775,13 +6204,17 @@ $currencySymbols = array(
'is' => 'NOK',
'it' => 'NOK',
'ja' => 'NOK',
+ 'jv' => 'NOK',
'ka' => 'NOK',
+ 'kab' => 'NOK',
'kea' => 'NOK',
+ 'kk' => 'NOK',
'kl' => 'Nkr',
'km' => 'NOK',
'kn' => 'NOK',
'ko' => 'NOK',
'ky' => 'NOK',
+ 'ln' => 'NOK',
'lo' => 'NOK',
'lt' => 'NOK',
'lv' => 'NOK',
@@ -4790,55 +6223,74 @@ $currencySymbols = array(
'mn' => 'NOK',
'mr' => 'NOK',
'ms' => 'NOK',
+ 'my' => 'NOK',
+ 'mzn' => 'NOK',
+ 'nds' => 'NOK',
'ne' => 'NOK',
'nl' => 'NOK',
+ 'or' => 'NOK',
'pa' => 'NOK',
'pl' => 'NOK',
+ 'ps' => 'NOK',
'pt' => 'NOK',
'rm' => 'NOK',
'ro' => 'NOK',
'root' => 'kr',
'ru' => 'NOK',
- 'se' => array(
+ 'sd' => 'NOK',
+ 'se' => [
'DEFAULT' => 'kr',
'SE' => 'Nkr',
- ),
+ ],
'si' => 'NOK',
'sk' => 'NOK',
'sl' => 'NOK',
+ 'so' => 'NOK',
+ 'sq' => 'NOK',
'sr' => 'NOK',
'sv' => 'Nkr',
'sw' => 'NOK',
'ta' => 'NOK',
'te' => 'NOK',
'th' => 'NOK',
+ 'tk' => 'NOK',
'tr' => 'NOK',
'uk' => 'NOK',
'ur' => 'NOK',
'uz' => 'NOK',
'vi' => 'NOK',
+ 'yue' => 'NOK',
'zh' => 'NOK',
'zu' => 'NOK',
- ),
- 'NPR' => array(
+ ],
+ 'NPR' => [
'af' => 'NPR',
'am' => 'NPR',
'ar' => 'NPR',
+ 'as' => 'NPR',
'ast' => 'NPR',
'az' => 'NPR',
+ 'be' => 'NPR',
'bg' => 'NPR',
'bn' => 'NPR',
+ 'br' => 'NPR',
'bs' => 'NPR',
'ca' => 'NPR',
+ 'ccp' => 'NPR',
+ 'ce' => 'NPR',
+ 'chr' => 'NPR',
'cs' => 'NPR',
+ 'cy' => 'NPR',
'da' => 'NPR',
'de' => 'NPR',
'el' => 'NPR',
'es' => 'NPR',
'et' => 'NPR',
'eu' => 'NPR',
+ 'fa' => 'NPR',
'fi' => 'NPR',
'fil' => 'NPR',
+ 'fo' => 'NPR',
'fr' => 'NPR',
'ga' => 'NPR',
'gd' => 'NPR',
@@ -4853,12 +6305,15 @@ $currencySymbols = array(
'is' => 'NPR',
'it' => 'NPR',
'ja' => 'NPR',
+ 'jv' => 'NPR',
'ka' => 'NPR',
+ 'kab' => 'NPR',
'kea' => 'NPR',
'kk' => 'NPR',
'km' => 'NPR',
'kn' => 'NPR',
'ko' => 'NPR',
+ 'ky' => 'NPR',
'lb' => 'NPR',
'lo' => 'NPR',
'lt' => 'NPR',
@@ -4868,125 +6323,142 @@ $currencySymbols = array(
'mn' => 'NPR',
'mr' => 'NPR',
'ms' => 'NPR',
+ 'my' => 'NPR',
+ 'mzn' => 'NPR',
'nb' => 'NPR',
'ne' => 'नेरू',
'nl' => 'NPR',
+ 'nn' => 'NPR',
+ 'or' => 'NPR',
'pa' => 'NPR',
'pl' => 'NPR',
+ 'ps' => 'NPR',
'pt' => 'NPR',
'ro' => 'NPR',
'root' => 'Rs',
'ru' => 'NPR',
+ 'sd' => 'NPR',
'si' => 'NPR',
'sk' => 'NPR',
'sl' => 'NPR',
+ 'so' => 'NPR',
+ 'sq' => 'NPR',
'sr' => 'NPR',
'sv' => 'NPR',
'sw' => 'NPR',
'ta' => 'NPR',
'te' => 'NPR',
'th' => 'NPR',
+ 'tk' => 'NPR',
'tr' => 'NPR',
'uk' => 'NPR',
'ur' => 'NPR',
'uz' => 'NPR',
'vi' => 'NPR',
+ 'yue' => 'NPR',
'zh' => 'NPR',
- ),
- 'NZD' => array(
+ 'zu' => 'NPR',
+ ],
+ 'NZD' => [
+ 'be' => 'NZD',
'bg' => 'NZD',
'br' => '$ ZN',
'bs' => 'NZD',
- 'en' => array(
+ 'en' => [
+ 'AU' => 'NZD',
'CK' => '$',
'NU' => '$',
'NZ' => '$',
'PN' => '$',
'TK' => '$',
- ),
+ ],
'es' => 'NZD',
'fa' => '$NZ',
'fi' => 'NZD',
- 'fr' => array(
+ 'fr' => [
'CA' => '$ NZ',
'DEFAULT' => '$NZ',
- ),
+ ],
'hr' => 'NZD',
'hu' => 'NZD',
'is' => 'NZD',
'ka' => 'NZD',
+ 'kab' => '$NZ',
'ky' => 'NZD',
'lt' => 'NZD',
+ 'mi' => '$',
'mk' => 'NZD',
'nb' => 'NZD',
+ 'nn' => 'NZD',
'pl' => 'NZD',
'ro' => 'NZD',
'root' => 'NZ$',
'sk' => 'NZD',
+ 'sl' => 'NZD',
'sr' => 'NZD',
'sv' => 'NZD',
'to' => 'NZD$',
'uk' => 'NZD',
- ),
- 'OMR' => array(
+ ],
+ 'OMR' => [
'ar' => 'ر.ع.‏',
- ),
- 'PAB' => array(
- 'es' => array(
+ ],
+ 'PAB' => [
+ 'es' => [
'DEFAULT' => 'PAB',
'PA' => 'B/.',
- ),
- ),
- 'PEI' => array(
- 'es' => array(
- 'MX' => 'PEI',
- ),
- ),
- 'PEN' => array(
- 'es' => array(
+ ],
+ 'my' => 'B/.',
+ ],
+ 'PEN' => [
+ 'es' => [
'DEFAULT' => 'PEN',
- 'PE' => 'S/.',
- ),
- 'qu' => array(
+ 'PE' => 'S/',
+ ],
+ 'qu' => [
'BO' => 'PEN',
- 'DEFAULT' => 'S/.',
+ 'DEFAULT' => 'S/',
'EC' => 'PEN',
- ),
- ),
- 'PES' => array(
- 'es' => array(
- 'MX' => 'PES',
- ),
- ),
- 'PGK' => array(
- 'en' => array(
+ ],
+ ],
+ 'PGK' => [
+ 'en' => [
'PG' => 'K',
- ),
- ),
- 'PHP' => array(
+ ],
+ ],
+ 'PHP' => [
'af' => 'PHP',
'am' => 'PHP',
'ar' => 'PHP',
+ 'as' => 'PHP',
'ast' => 'PHP',
'az' => 'PHP',
+ 'be' => 'PHP',
'bg' => 'PHP',
'bn' => 'PHP',
+ 'br' => 'PHP',
'bs' => 'PHP',
'ca' => 'PHP',
+ 'ccp' => 'PHP',
+ 'ce' => 'PHP',
+ 'chr' => 'PHP',
'cs' => 'PHP',
+ 'cy' => 'PHP',
'da' => 'PHP',
'de' => 'PHP',
'el' => 'PHP',
- 'en' => array(
+ 'en' => [
'PH' => '₱',
- ),
- 'es' => array(
+ ],
+ 'es' => [
'DEFAULT' => 'PHP',
'PH' => '₱',
- ),
+ ],
'et' => 'PHP',
'eu' => 'PHP',
+ 'fa' => 'PHP',
'fi' => 'PHP',
+ 'fo' => 'PHP',
'fr' => 'PHP',
'ga' => 'PHP',
'gd' => 'PHP',
@@ -5001,11 +6473,14 @@ $currencySymbols = array(
'is' => 'PHP',
'it' => 'PHP',
'ja' => 'PHP',
+ 'jv' => 'PHP',
'ka' => 'PHP',
+ 'kab' => 'PHP',
'kk' => 'PHP',
'km' => 'PHP',
'kn' => 'PHP',
'ko' => 'PHP',
+ 'ky' => 'PHP',
'lb' => 'PHP',
'lo' => 'PHP',
'lt' => 'PHP',
@@ -5015,53 +6490,74 @@ $currencySymbols = array(
'mn' => 'PHP',
'mr' => 'PHP',
'ms' => 'PHP',
+ 'mt' => 'PHP',
+ 'my' => 'PHP',
+ 'mzn' => 'PHP',
'nb' => 'PHP',
'ne' => 'PHP',
'nl' => 'PHP',
+ 'nn' => 'PHP',
+ 'or' => 'PHP',
'pa' => 'PHP',
'pl' => 'PHP',
+ 'ps' => 'PHP',
'pt' => 'PHP',
'ro' => 'PHP',
'root' => '₱',
'ru' => 'PHP',
+ 'sd' => 'PHP',
'si' => 'PHP',
'sk' => 'PHP',
'sl' => 'PHP',
+ 'so' => 'PHP',
+ 'sq' => 'PHP',
'sr' => 'PHP',
'sv' => 'PHP',
'sw' => 'PHP',
'ta' => 'PHP',
'te' => 'PHP',
'th' => 'PHP',
+ 'tk' => 'PHP',
'tr' => 'PHP',
'uk' => 'PHP',
'ur' => 'PHP',
'uz' => 'PHP',
'vi' => 'PHP',
+ 'yue' => 'PHP',
'zh' => 'PHP',
- ),
- 'PKR' => array(
+ 'zu' => 'PHP',
+ ],
+ 'PKR' => [
'af' => 'PKR',
'am' => 'PKR',
- 'ar' => 'ر.ب.',
+ 'ar' => 'PKR',
+ 'as' => 'PKR',
'ast' => 'PKR',
'az' => 'PKR',
+ 'be' => 'PKR',
'bg' => 'PKR',
'bn' => 'PKR',
+ 'br' => 'PKR',
'bs' => 'PKR',
'ca' => 'PKR',
+ 'ccp' => 'PKR',
+ 'ce' => 'PKR',
+ 'chr' => 'PKR',
'cs' => 'PKR',
+ 'cy' => 'PKR',
'da' => 'PKR',
'de' => 'PKR',
'el' => 'PKR',
- 'en' => array(
+ 'en' => [
'PK' => 'Rs',
- ),
+ ],
'es' => 'PKR',
'et' => 'PKR',
'eu' => 'PKR',
+ 'fa' => 'PKR',
'fi' => 'PKR',
'fil' => 'PKR',
+ 'fo' => 'PKR',
'fr' => 'PKR',
'ga' => 'PKR',
'gd' => 'PKR',
@@ -5076,12 +6572,15 @@ $currencySymbols = array(
'is' => 'PKR',
'it' => 'PKR',
'ja' => 'PKR',
+ 'jv' => 'PKR',
'ka' => 'PKR',
+ 'kab' => 'PKR',
'kea' => 'PKR',
'kk' => 'PKR',
'km' => 'PKR',
'kn' => 'PKR',
'ko' => 'PKR',
+ 'ky' => 'PKR',
'lb' => 'PKR',
'lo' => 'PKR',
'lt' => 'PKR',
@@ -5091,11 +6590,17 @@ $currencySymbols = array(
'mn' => 'PKR',
'mr' => 'PKR',
'ms' => 'PKR',
+ 'mt' => 'PKR',
+ 'my' => 'PKR',
+ 'mzn' => 'PKR',
'nb' => 'PKR',
'ne' => 'PKR',
'nl' => 'PKR',
- 'pa' => 'ر',
+ 'nn' => 'PKR',
+ 'or' => 'PKR',
+ 'pa' => 'PKR',
'pl' => 'PKR',
+ 'ps' => 'PKR',
'pt' => 'PKR',
'ro' => 'PKR',
'root' => 'Rs',
@@ -5103,41 +6608,57 @@ $currencySymbols = array(
'si' => 'PKR',
'sk' => 'PKR',
'sl' => 'PKR',
+ 'so' => 'PKR',
+ 'sq' => 'PKR',
'sr' => 'PKR',
'sv' => 'PKR',
'sw' => 'PKR',
'ta' => 'PKR',
'te' => 'PKR',
'th' => 'PKR',
+ 'tk' => 'PKR',
'tr' => 'PKR',
'uk' => 'PKR',
- 'ur' => array(
+ 'ur' => [
'DEFAULT' => 'Rs',
'IN' => 'PKR',
- ),
+ ],
'uz' => 'PKR',
'vi' => 'PKR',
+ 'yue' => 'PKR',
'zh' => 'PKR',
- ),
- 'PLN' => array(
+ 'zu' => 'PKR',
+ ],
+ 'PLN' => [
'af' => 'PLN',
'am' => 'PLN',
'ar' => 'PLN',
+ 'as' => 'PLN',
+ 'ast' => 'PLN',
'az' => 'PLN',
+ 'be' => 'PLN',
'bg' => 'PLN',
'bn' => 'PLN',
- 'bs' => 'зл',
+ 'br' => 'PLN',
+ 'bs' => 'PLN',
'ca' => 'PLN',
+ 'ccp' => 'PLN',
+ 'ce' => 'PLN',
+ 'chr' => 'PLN',
'cs' => 'PLN',
+ 'cy' => 'PLN',
'da' => 'PLN',
'de' => 'PLN',
+ 'ee' => 'PLN',
'el' => 'PLN',
'eo' => 'PLN',
'es' => 'PLN',
'et' => 'PLN',
'eu' => 'PLN',
+ 'fa' => 'PLN',
'fi' => 'PLN',
'fil' => 'PLN',
+ 'fo' => 'PLN',
'fr' => 'PLN',
'ga' => 'PLN',
'gd' => 'PLN',
@@ -5152,12 +6673,16 @@ $currencySymbols = array(
'is' => 'PLN',
'it' => 'PLN',
'ja' => 'PLN',
+ 'jv' => 'PLN',
'ka' => 'PLN',
+ 'kab' => 'PLN',
'kea' => 'PLN',
+ 'kk' => 'PLN',
'km' => 'PLN',
'kn' => 'PLN',
'ko' => 'PLN',
'ky' => 'PLN',
+ 'ln' => 'PLN',
'lo' => 'PLN',
'lt' => 'PLN',
'lv' => 'PLN',
@@ -5166,61 +6691,86 @@ $currencySymbols = array(
'mn' => 'PLN',
'mr' => 'PLN',
'ms' => 'PLN',
+ 'mt' => 'PLN',
+ 'my' => 'PLN',
+ 'mzn' => 'PLN',
'nb' => 'PLN',
+ 'nds' => 'PLN',
'ne' => 'PLN',
'nl' => 'PLN',
+ 'nn' => 'PLN',
+ 'or' => 'PLN',
'pa' => 'PLN',
+ 'ps' => 'PLN',
'pt' => 'PLN',
'rm' => 'PLN',
'ro' => 'PLN',
'root' => 'zł',
'ru' => 'PLN',
+ 'sd' => 'PLN',
'si' => 'PLN',
'sk' => 'PLN',
'sl' => 'PLN',
+ 'so' => 'PLN',
+ 'sq' => 'PLN',
'sr' => 'PLN',
'sv' => 'PLN',
'sw' => 'PLN',
'ta' => 'PLN',
'te' => 'PLN',
'th' => 'PLN',
+ 'tk' => 'PLN',
'tr' => 'PLN',
'uk' => 'PLN',
'ur' => 'PLN',
'uz' => 'PLN',
'vi' => 'PLN',
+ 'yue' => 'PLN',
'zh' => 'PLN',
'zu' => 'PLN',
- ),
- 'PTE' => array(
- 'pt' => array(
+ ],
+ 'PTE' => [
+ 'pt' => [
'CV' => '​PTE',
'DEFAULT' => 'Esc.',
'PT' => '​',
- ),
- ),
- 'PYG' => array(
+ ],
+ ],
+ 'PYG' => [
'af' => 'PYG',
'am' => 'PYG',
'ar' => 'PYG',
+ 'as' => 'PYG',
'ast' => 'PYG',
'az' => 'PYG',
+ 'be' => 'PYG',
'bg' => 'PYG',
'bn' => 'PYG',
+ 'br' => 'PYG',
'bs' => 'PYG',
'ca' => 'PYG',
+ 'ccp' => 'PYG',
+ 'ce' => 'PYG',
+ 'chr' => 'PYG',
'cs' => 'PYG',
+ 'cy' => 'PYG',
'da' => 'PYG',
'de' => 'PYG',
+ 'ee' => 'PYG',
'el' => 'PYG',
- 'es' => array(
+ 'en' => [
+ 'AU' => 'Gs',
+ ],
+ 'es' => [
'DEFAULT' => 'PYG',
- 'PY' => '₲',
- ),
+ 'PY' => 'Gs.',
+ ],
'et' => 'PYG',
'eu' => 'PYG',
+ 'fa' => 'PYG',
'fi' => 'PYG',
'fil' => 'PYG',
+ 'fo' => 'PYG',
'fr' => 'PYG',
'ga' => 'PYG',
'gd' => 'PYG',
@@ -5235,7 +6785,10 @@ $currencySymbols = array(
'is' => 'PYG',
'it' => 'PYG',
'ja' => 'PYG',
+ 'jv' => 'PYG',
'ka' => 'PYG',
+ 'kab' => 'PYG',
+ 'kk' => 'PYG',
'km' => 'PYG',
'kn' => 'PYG',
'ko' => 'PYG',
@@ -5248,61 +6801,181 @@ $currencySymbols = array(
'mn' => 'PYG',
'mr' => 'PYG',
'ms' => 'PYG',
+ 'mt' => 'PYG',
+ 'my' => 'PYG',
+ 'mzn' => 'PYG',
'nb' => 'PYG',
'ne' => 'PYG',
'nl' => 'PYG',
+ 'nn' => 'PYG',
+ 'or' => 'PYG',
'pa' => 'PYG',
'pl' => 'PYG',
+ 'ps' => 'PYG',
'pt' => 'PYG',
'ro' => 'PYG',
'root' => '₲',
'ru' => 'PYG',
+ 'sd' => 'PYG',
'si' => 'PYG',
'sk' => 'PYG',
'sl' => 'PYG',
+ 'so' => 'PYG',
+ 'sq' => 'PYG',
'sr' => 'PYG',
'sv' => 'PYG',
'sw' => 'PYG',
'ta' => 'PYG',
'te' => 'PYG',
'th' => 'PYG',
+ 'tk' => 'PYG',
'tr' => 'PYG',
'uk' => 'PYG',
'ur' => 'PYG',
'uz' => 'PYG',
'vi' => 'PYG',
+ 'yue' => 'PYG',
'zh' => 'PYG',
- ),
- 'QAR' => array(
+ 'zu' => 'PYG',
+ ],
+ 'QAR' => [
'ar' => 'ر.ق.‏',
- ),
- 'RHD' => array(
+ ],
+ 'RHD' => [
'fr' => '$RH',
- ),
- 'RSD' => array(
- 'bs' => 'дин.',
- ),
- 'RUB' => array(
+ 'kab' => '$RH',
+ ],
+ 'RON' => [
+ 'af' => 'RON',
+ 'am' => 'RON',
+ 'ar' => 'RON',
+ 'as' => 'RON',
+ 'ast' => 'RON',
+ 'az' => 'RON',
+ 'be' => 'RON',
+ 'bg' => 'RON',
+ 'bn' => 'RON',
+ 'br' => 'RON',
+ 'bs' => 'RON',
+ 'ca' => 'RON',
+ 'ccp' => 'RON',
+ 'ce' => 'RON',
+ 'chr' => 'RON',
+ 'cs' => 'RON',
+ 'cy' => 'RON',
+ 'da' => 'RON',
+ 'de' => 'RON',
+ 'ee' => 'RON',
+ 'el' => 'RON',
+ 'es' => [
+ 'DEFAULT' => 'RON',
+ 'MX' => 'lei',
+ 'US' => 'lei',
+ ],
+ 'et' => 'RON',
+ 'eu' => 'RON',
+ 'fa' => 'RON',
+ 'fi' => 'RON',
+ 'fil' => 'RON',
+ 'fo' => 'RON',
+ 'fr' => 'RON',
+ 'ga' => 'RON',
+ 'gd' => 'RON',
+ 'gl' => 'RON',
+ 'gu' => 'RON',
+ 'he' => 'RON',
+ 'hi' => 'RON',
+ 'hr' => 'RON',
+ 'hu' => 'RON',
+ 'hy' => 'RON',
+ 'id' => 'RON',
+ 'is' => 'RON',
+ 'it' => 'RON',
+ 'ja' => 'RON',
+ 'jv' => 'RON',
+ 'ka' => 'RON',
+ 'kab' => 'RON',
+ 'kk' => 'RON',
+ 'km' => 'RON',
+ 'kn' => 'RON',
+ 'ko' => 'RON',
+ 'ky' => 'RON',
+ 'lo' => 'RON',
+ 'lt' => 'RON',
+ 'lv' => 'RON',
+ 'mk' => 'RON',
+ 'ml' => 'RON',
+ 'mn' => 'RON',
+ 'mr' => 'RON',
+ 'ms' => 'RON',
+ 'mt' => 'RON',
+ 'my' => 'RON',
+ 'mzn' => 'RON',
+ 'nb' => 'RON',
+ 'ne' => 'RON',
+ 'nl' => 'RON',
+ 'nn' => 'RON',
+ 'or' => 'RON',
+ 'pa' => 'RON',
+ 'pl' => 'RON',
+ 'ps' => 'RON',
+ 'pt' => 'RON',
+ 'ro' => 'RON',
+ 'root' => 'lei',
+ 'ru' => 'RON',
+ 'sd' => 'RON',
+ 'si' => 'RON',
+ 'sk' => 'RON',
+ 'sl' => 'RON',
+ 'so' => 'RON',
+ 'sq' => 'RON',
+ 'sr' => 'RON',
+ 'sv' => 'RON',
+ 'sw' => 'RON',
+ 'ta' => 'RON',
+ 'te' => 'RON',
+ 'th' => 'RON',
+ 'tk' => 'RON',
+ 'tr' => 'RON',
+ 'uk' => 'RON',
+ 'ur' => 'RON',
+ 'uz' => 'RON',
+ 'vi' => 'RON',
+ 'yue' => 'RON',
+ 'zh' => 'RON',
+ 'zu' => 'RON',
+ ],
+ 'RSD' => [
+ 'bs' => 'din.',
+ ],
+ 'RUB' => [
'af' => 'RUB',
'am' => 'RUB',
'ar' => 'RUB',
+ 'as' => 'RUB',
'ast' => 'RUB',
'az' => 'RUB',
- 'be' => 'рас. руб.',
- 'bg' => 'руб.',
+ 'bg' => 'RUB',
'bn' => 'RUB',
+ 'br' => 'RUB',
'bs' => 'RUB',
'ca' => 'RUB',
+ 'ccp' => 'RUB',
+ 'chr' => 'RUB',
'cs' => 'RUB',
+ 'cy' => 'RUB',
'da' => 'RUB',
'de' => 'RUB',
+ 'ee' => 'RUB',
'el' => 'RUB',
'eo' => 'RUB',
'es' => 'RUB',
'et' => 'RUB',
'eu' => 'RUB',
+ 'fa' => 'RUB',
'fi' => 'RUB',
'fil' => 'RUB',
+ 'fo' => 'RUB',
'fr' => 'RUB',
'ga' => 'RUB',
'gd' => 'RUB',
@@ -5317,57 +6990,77 @@ $currencySymbols = array(
'is' => 'RUB',
'it' => 'RUB',
'ja' => 'RUB',
+ 'jv' => 'RUB',
'ka' => 'RUB',
- 'kk' => 'руб.',
+ 'kab' => 'RUB',
'km' => 'RUB',
'kn' => 'RUB',
'ko' => 'RUB',
+ 'kok' => 'RUB',
'ky' => 'RUB',
+ 'ln' => 'RUB',
'lo' => 'RUB',
+ 'lrc' => 'RUB',
'lt' => 'RUB',
'lv' => 'RUB',
+ 'mi' => 'RUB',
'mk' => 'RUB',
'ml' => 'RUB',
'mn' => 'RUB',
'mr' => 'RUB',
'ms' => 'RUB',
+ 'mt' => 'RUB',
+ 'my' => 'RUB',
+ 'mzn' => 'RUB',
'nb' => 'RUB',
+ 'nds' => 'RUB',
'ne' => 'RUB',
'nl' => 'RUB',
- 'os' => array(
- 'RU' => 'руб.',
- ),
+ 'nn' => 'RUB',
+ 'or' => 'RUB',
+ 'os' => [
+ 'RU' => '₽',
+ ],
'pa' => 'RUB',
'pl' => 'RUB',
+ 'ps' => 'RUB',
'pt' => 'RUB',
'rm' => 'RUB',
'ro' => 'RUB',
'root' => '₽',
- 'ru' => 'руб.',
- 'sah' => 'руб.',
+ 'sd' => 'RUB',
'si' => 'RUB',
'sk' => 'RUB',
'sl' => 'RUB',
+ 'so' => 'RUB',
+ 'sq' => 'RUB',
'sr' => 'RUB',
'sv' => 'RUB',
'sw' => 'RUB',
'ta' => 'RUB',
'te' => 'RUB',
+ 'tg' => 'RUB',
'th' => 'RUB',
+ 'tk' => 'RUB',
'tr' => 'RUB',
'uk' => 'RUB',
'ur' => 'RUB',
'uz' => 'RUB',
'vi' => 'RUB',
- 'wae' => 'руб',
+ 'wo' => 'RUB',
+ 'yi' => 'RUB',
+ 'yue' => 'RUB',
'zh' => 'RUB',
'zu' => 'RUB',
- ),
- 'RUR' => array(
+ ],
+ 'RUR' => [
+ 'ast' => 'RUR',
+ 'br' => 'RUR',
'ca' => 'RUR',
'cs' => 'RUR',
'de' => 'RUR',
'fi' => 'RUR',
+ 'fr' => 'RUR',
'ga' => 'RUR',
'gd' => 'RUR',
'hr' => 'RUR',
@@ -5377,40 +7070,52 @@ $currencySymbols = array(
'nl' => 'RUR',
'rm' => 'RUR',
'root' => 'р.',
- 'ru' => array(
+ 'ru' => [
'BY' => 'RUR',
'DEFAULT' => 'р.',
- ),
+ ],
+ 'sk' => 'RUR',
'th' => 'RUR',
'tr' => 'RUR',
'vi' => 'RUR',
+ 'yue' => 'RUR',
'zh' => 'RUR',
- ),
- 'RWF' => array(
+ ],
+ 'RWF' => [
'af' => 'RWF',
'am' => 'RWF',
'ar' => 'RWF',
+ 'as' => 'RWF',
'ast' => 'RWF',
'az' => 'RWF',
+ 'be' => 'RWF',
'bg' => 'RWF',
'bn' => 'RWF',
+ 'br' => 'RWF',
'bs' => 'RWF',
'ca' => 'RWF',
+ 'ccp' => 'RWF',
+ 'ce' => 'RWF',
+ 'chr' => 'RWF',
'cs' => 'RWF',
+ 'cy' => 'RWF',
'da' => 'RWF',
'de' => 'RWF',
'el' => 'RWF',
- 'en' => array(
+ 'en' => [
'RW' => 'RF',
- ),
+ ],
'es' => 'RWF',
'et' => 'RWF',
'eu' => 'RWF',
+ 'fa' => 'RWF',
'fi' => 'RWF',
- 'fr' => array(
+ 'fil' => 'RWF',
+ 'fo' => 'RWF',
+ 'fr' => [
'DEFAULT' => 'RWF',
'RW' => 'RF',
- ),
+ ],
'ga' => 'RWF',
'gd' => 'RWF',
'gl' => 'RWF',
@@ -5424,12 +7129,15 @@ $currencySymbols = array(
'is' => 'RWF',
'it' => 'RWF',
'ja' => 'RWF',
+ 'jv' => 'RWF',
'ka' => 'RWF',
+ 'kab' => 'RWF',
'kea' => 'RWF',
'kk' => 'RWF',
'km' => 'RWF',
'kn' => 'RWF',
'ko' => 'RWF',
+ 'ky' => 'RWF',
'lo' => 'RWF',
'lt' => 'RWF',
'lv' => 'RWF',
@@ -5438,59 +7146,81 @@ $currencySymbols = array(
'mn' => 'RWF',
'mr' => 'RWF',
'ms' => 'RWF',
+ 'mt' => 'RWF',
+ 'my' => 'RWF',
+ 'mzn' => 'RWF',
'nb' => 'RWF',
'ne' => 'RWF',
'nl' => 'RWF',
+ 'nn' => 'RWF',
+ 'or' => 'RWF',
'pa' => 'RWF',
'pl' => 'RWF',
+ 'ps' => 'RWF',
'pt' => 'RWF',
'ro' => 'RWF',
'root' => 'RF',
'ru' => 'RWF',
+ 'sd' => 'RWF',
'si' => 'RWF',
'sk' => 'RWF',
'sl' => 'RWF',
+ 'so' => 'RWF',
+ 'sq' => 'RWF',
'sr' => 'RWF',
'sv' => 'RWF',
'sw' => 'RWF',
'ta' => 'RWF',
'te' => 'RWF',
'th' => 'RWF',
+ 'tk' => 'RWF',
'tr' => 'RWF',
'uk' => 'RWF',
'ur' => 'RWF',
'uz' => 'RWF',
'vi' => 'RWF',
+ 'yue' => 'RWF',
'zh' => 'RWF',
- ),
- 'SAR' => array(
+ 'zu' => 'RWF',
+ ],
+ 'SAR' => [
'ar' => 'ر.س.‏',
- ),
- 'SBD' => array(
+ ],
+ 'SBD' => [
'af' => 'SBD',
'am' => 'SBD',
'ar' => 'SBD',
+ 'as' => 'SBD',
'ast' => 'SBD',
'az' => 'SBD',
+ 'be' => 'SBD',
'bg' => 'SBD',
'bn' => 'SBD',
+ 'br' => 'SBD',
'bs' => 'SBD',
'ca' => 'SBD',
+ 'ccp' => 'SBD',
+ 'ce' => 'SBD',
+ 'chr' => 'SBD',
'cs' => 'SBD',
+ 'cy' => 'SBD',
'da' => 'SBD',
'de' => 'SBD',
'el' => 'SBD',
- 'en' => array(
+ 'en' => [
'SB' => '$',
- ),
+ ],
'es' => 'SBD',
'et' => 'SBD',
'eu' => 'SBD',
+ 'fa' => 'SBD',
'fi' => 'SBD',
- 'fr' => array(
+ 'fil' => 'SBD',
+ 'fo' => 'SBD',
+ 'fr' => [
'CA' => 'SBD',
'DEFAULT' => '$SB',
- ),
+ ],
'fy' => 'SI$',
'ga' => 'SBD',
'gd' => 'SBD',
@@ -5505,12 +7235,15 @@ $currencySymbols = array(
'is' => 'SBD',
'it' => 'SBD',
'ja' => 'SBD',
+ 'jv' => 'SBD',
'ka' => 'SBD',
+ 'kab' => '$SB',
'kk' => 'SBD',
'km' => 'SBD',
'kn' => 'SBD',
'ko' => 'SBD',
'ky' => 'SBD',
+ 'ln' => 'SBD',
'lo' => 'SBD',
'lt' => 'SBD',
'lv' => 'SBD',
@@ -5519,70 +7252,96 @@ $currencySymbols = array(
'mn' => 'SBD',
'mr' => 'SBD',
'ms' => 'SBD',
+ 'mt' => 'SBD',
+ 'my' => 'SBD',
'nb' => 'SBD',
'ne' => 'SBD',
'nl' => 'SI$',
+ 'nn' => 'SBD',
+ 'or' => 'SBD',
'pa' => 'SBD',
'pl' => 'SBD',
+ 'ps' => 'SBD',
'pt' => 'SBD',
'ro' => 'SBD',
'root' => '$',
'ru' => 'SBD',
+ 'sd' => 'SBD',
'si' => 'SBD',
'sk' => 'SBD',
'sl' => 'SBD',
+ 'so' => 'SBD',
+ 'sq' => 'SBD',
'sr' => 'SBD',
'sv' => 'SBD',
'sw' => 'SBD',
'ta' => 'SBD',
'te' => 'SBD',
'th' => 'SBD',
+ 'tk' => 'SBD',
'to' => 'SBD',
'tr' => 'SBD',
'uk' => 'SBD',
'ur' => 'SBD',
'uz' => 'SBD',
'vi' => 'SBD',
+ 'yue' => 'SBD',
'zh' => 'SBD',
- ),
- 'SCR' => array(
- 'en' => array(
+ 'zu' => 'SBD',
+ ],
+ 'SCR' => [
+ 'en' => [
+ 'AU' => 'Rs',
'SC' => 'SR',
- ),
- 'fr' => array(
+ ],
+ 'fr' => [
'DEFAULT' => 'SCR',
'SC' => 'SR',
- ),
- ),
- 'SDD' => array(
+ ],
+ ],
+ 'SDD' => [
'ar' => 'د.س.‏',
- ),
- 'SDG' => array(
- 'ar' => array(
+ ],
+ 'SDG' => [
+ 'ar' => [
'DEFAULT' => 'ج.س.',
'LB' => 'SDG',
- ),
- ),
- 'SEK' => array(
+ ],
+ ],
+ 'SEK' => [
'af' => 'SEK',
'am' => 'SEK',
'ar' => 'SEK',
+ 'as' => 'SEK',
'ast' => 'SEK',
'az' => 'SEK',
+ 'be' => 'SEK',
'bg' => 'SEK',
'bn' => 'SEK',
+ 'br' => 'SEK',
'bs' => 'SEK',
'ca' => 'SEK',
+ 'ccp' => 'SEK',
+ 'ce' => 'SEK',
+ 'chr' => 'SEK',
'cs' => 'SEK',
+ 'cy' => 'SEK',
'da' => 'SEK',
'de' => 'SEK',
+ 'ee' => 'SEK',
'el' => 'SEK',
+ 'en' => [
+ 'AU' => 'Kr',
+ 'SE' => 'kr',
+ ],
'eo' => 'SEK',
'es' => 'SEK',
'et' => 'SEK',
'eu' => 'SEK',
+ 'fa' => 'SEK',
'fi' => 'SEK',
'fil' => 'SEK',
+ 'fo' => 'SEK',
'fr' => 'SEK',
'ga' => 'SEK',
'gd' => 'SEK',
@@ -5597,13 +7356,17 @@ $currencySymbols = array(
'is' => 'SEK',
'it' => 'SEK',
'ja' => 'SEK',
+ 'jv' => 'SEK',
'ka' => 'SEK',
+ 'kab' => 'SEK',
'kea' => 'SEK',
+ 'kk' => 'SEK',
'kl' => 'Skr',
'km' => 'SEK',
'kn' => 'SEK',
'ko' => 'SEK',
'ky' => 'SEK',
+ 'ln' => 'SEK',
'lo' => 'SEK',
'lt' => 'SEK',
'lv' => 'SEK',
@@ -5612,62 +7375,83 @@ $currencySymbols = array(
'mn' => 'SEK',
'mr' => 'SEK',
'ms' => 'SEK',
+ 'mt' => 'SEK',
+ 'my' => 'SEK',
+ 'mzn' => 'SEK',
'nb' => 'SEK',
+ 'nds' => 'SEK',
'ne' => 'SEK',
'nl' => 'SEK',
+ 'nn' => 'SEK',
+ 'or' => 'SEK',
'pa' => 'SEK',
'pl' => 'SEK',
+ 'ps' => 'SEK',
'pt' => 'SEK',
'rm' => 'SEK',
'ro' => 'SEK',
'root' => 'kr',
'ru' => 'SEK',
- 'se' => array(
+ 'sd' => 'SEK',
+ 'se' => [
'DEFAULT' => 'Skr',
'SE' => 'kr',
- ),
+ ],
'si' => 'SEK',
'sk' => 'SEK',
'sl' => 'SEK',
+ 'so' => 'SEK',
+ 'sq' => 'SEK',
'sr' => 'SEK',
'sw' => 'SEK',
'ta' => 'SEK',
'te' => 'SEK',
'th' => 'SEK',
+ 'tk' => 'SEK',
'tr' => 'SEK',
'uk' => 'SEK',
'ur' => 'SEK',
'uz' => 'SEK',
'vi' => 'SEK',
+ 'yue' => 'SEK',
'zh' => 'SEK',
'zu' => 'SEK',
- ),
- 'SGD' => array(
+ ],
+ 'SGD' => [
'af' => 'SGD',
'am' => 'SGD',
'ar' => 'SGD',
+ 'as' => 'SGD',
'ast' => 'SGD',
'az' => 'SGD',
+ 'be' => 'SGD',
'bg' => 'SGD',
'bn' => 'SGD',
+ 'br' => 'SGD',
'bs' => 'SGD',
'ca' => 'SGD',
+ 'ccp' => 'SGD',
+ 'ce' => 'SGD',
+ 'chr' => 'SGD',
'cs' => 'SGD',
+ 'cy' => 'SGD',
'da' => 'SGD',
'de' => 'SGD',
'el' => 'SGD',
- 'en' => array(
+ 'en' => [
'SG' => '$',
- ),
+ ],
'es' => 'SGD',
'et' => 'SGD',
'eu' => 'SGD',
+ 'fa' => 'SGD',
'fi' => 'SGD',
'fil' => 'SGD',
- 'fr' => array(
+ 'fo' => 'SGD',
+ 'fr' => [
'CA' => '$ SG',
'DEFAULT' => '$SG',
- ),
+ ],
'ga' => 'SGD',
'gd' => 'SGD',
'gl' => 'SGD',
@@ -5681,11 +7465,14 @@ $currencySymbols = array(
'is' => 'SGD',
'it' => 'SGD',
'ja' => 'SGD',
+ 'jv' => 'SGD',
'ka' => 'SGD',
+ 'kab' => '$SG',
'kk' => 'SGD',
'km' => 'SGD',
'kn' => 'SGD',
'ko' => 'SGD',
+ 'ky' => 'SGD',
'lb' => 'SGD',
'lo' => 'SGD',
'lt' => 'SGD',
@@ -5694,62 +7481,85 @@ $currencySymbols = array(
'ml' => 'SGD',
'mn' => 'SGD',
'mr' => 'SGD',
- 'ms' => array(
+ 'ms' => [
'DEFAULT' => 'SGD',
'SG' => '$',
- ),
+ ],
+ 'mt' => 'SGD',
+ 'my' => 'SGD',
+ 'mzn' => 'SGD',
'nb' => 'SGD',
'ne' => 'SGD',
'nl' => 'SGD',
+ 'nn' => 'SGD',
+ 'or' => 'SGD',
'pa' => 'SGD',
'pl' => 'SGD',
+ 'ps' => 'SGD',
'pt' => 'SGD',
'ro' => 'SGD',
'root' => '$',
'ru' => 'SGD',
+ 'sd' => 'SGD',
'si' => 'SGD',
'sk' => 'SGD',
'sl' => 'SGD',
+ 'so' => 'SGD',
+ 'sq' => 'SGD',
'sr' => 'SGD',
'sv' => 'SGD',
'sw' => 'SGD',
- 'ta' => array(
+ 'ta' => [
'DEFAULT' => 'SGD',
'MY' => 'S$',
'SG' => '$',
- ),
+ ],
'te' => 'SGD',
'th' => 'SGD',
+ 'tk' => 'SGD',
'tr' => 'SGD',
'uk' => 'SGD',
'ur' => 'SGD',
'uz' => 'SGD',
'vi' => 'SGD',
- 'zh' => array(
+ 'yue' => 'SGD',
+ 'zh' => [
'DEFAULT' => 'SGD',
'SG' => '$',
- ),
- ),
- 'SHP' => array(
+ ],
+ 'zu' => 'SGD',
+ ],
+ 'SHP' => [
'af' => 'SHP',
'am' => 'SHP',
'ar' => 'SHP',
+ 'as' => 'SHP',
+ 'ast' => 'SHP',
'az' => 'SHP',
+ 'be' => 'SHP',
'bg' => 'SHP',
'bn' => 'SHP',
+ 'br' => 'SHP',
'bs' => 'SHP',
'ca' => 'SHP',
+ 'ccp' => 'SHP',
+ 'ce' => 'SHP',
+ 'chr' => 'SHP',
'cs' => 'SHP',
+ 'cy' => 'SHP',
'da' => 'SHP',
'de' => 'SHP',
'el' => 'SHP',
- 'en' => array(
+ 'en' => [
'SH' => '£',
- ),
+ ],
'es' => 'SHP',
'et' => 'SHP',
'eu' => 'SHP',
+ 'fa' => 'SHP',
'fi' => 'SHP',
+ 'fil' => 'SHP',
+ 'fo' => 'SHP',
'fr' => 'SHP',
'ga' => 'SHP',
'gd' => 'SHP',
@@ -5764,7 +7574,9 @@ $currencySymbols = array(
'is' => 'SHP',
'it' => 'SHP',
'ja' => 'SHP',
+ 'jv' => 'SHP',
'ka' => 'SHP',
+ 'kab' => 'SHP',
'kea' => 'SHP',
'kk' => 'SHP',
'km' => 'SHP',
@@ -5779,63 +7591,91 @@ $currencySymbols = array(
'mn' => 'SHP',
'mr' => 'SHP',
'ms' => 'SHP',
+ 'mt' => 'SHP',
+ 'my' => 'SHP',
+ 'mzn' => 'SHP',
'nb' => 'SHP',
'ne' => 'SHP',
'nl' => 'SHP',
+ 'nn' => 'SHP',
+ 'or' => 'SHP',
'pa' => 'SHP',
'pl' => 'SHP',
+ 'ps' => 'SHP',
'pt' => 'SHP',
'ro' => 'SHP',
'root' => '£',
'ru' => 'SHP',
+ 'sd' => 'SHP',
'si' => 'SHP',
'sk' => 'SHP',
'sl' => 'SHP',
+ 'so' => 'SHP',
+ 'sq' => 'SHP',
'sr' => 'SHP',
'sv' => 'SHP',
'sw' => 'SHP',
'ta' => 'SHP',
'te' => 'SHP',
'th' => 'SHP',
+ 'tk' => 'SHP',
'tr' => 'SHP',
'uk' => 'SHP',
'ur' => 'SHP',
'uz' => 'SHP',
'vi' => 'SHP',
+ 'yue' => 'SHP',
'zh' => 'SHP',
- ),
- 'SLL' => array(
- 'en' => array(
+ 'zu' => 'SHP',
+ ],
+ 'SLL' => [
+ 'en' => [
+ 'SL' => 'Le',
+ ],
+ 'ff' => [
'SL' => 'Le',
- ),
- ),
- 'SOS' => array(
- 'ar' => array(
+ ],
+ ],
+ 'SOS' => [
+ 'ar' => [
'DEFAULT' => 'SOS',
'SO' => 'S',
- ),
+ ],
'so' => 'S',
- ),
- 'SRD' => array(
+ ],
+ 'SRD' => [
'af' => 'SRD',
'am' => 'SRD',
'ar' => 'SRD',
+ 'as' => 'SRD',
'ast' => 'SRD',
'az' => 'SRD',
+ 'be' => 'SRD',
'bg' => 'SRD',
'bn' => 'SRD',
+ 'br' => 'SRD',
'bs' => 'SRD',
'ca' => 'SRD',
+ 'ccp' => 'SRD',
+ 'ce' => 'SRD',
+ 'chr' => 'SRD',
'cs' => 'SRD',
+ 'cy' => 'SRD',
'da' => 'SRD',
'de' => 'SRD',
+ 'ee' => 'SRD',
'el' => 'SRD',
'es' => 'SRD',
'et' => 'SRD',
'eu' => 'SRD',
+ 'fa' => 'SRD',
'fi' => 'SRD',
'fil' => 'SRD',
- 'fr' => '$SR',
+ 'fo' => 'SRD',
+ 'fr' => [
+ 'CA' => 'SRD',
+ 'DEFAULT' => '$SR',
+ ],
'ga' => 'SRD',
'gd' => 'SRD',
'gl' => 'SRD',
@@ -5849,7 +7689,10 @@ $currencySymbols = array(
'is' => 'SRD',
'it' => 'SRD',
'ja' => 'SRD',
+ 'jv' => 'SRD',
'ka' => 'SRD',
+ 'kab' => '$SR',
+ 'kk' => 'SRD',
'km' => 'SRD',
'kn' => 'SRD',
'ko' => 'SRD',
@@ -5862,63 +7705,85 @@ $currencySymbols = array(
'mn' => 'SRD',
'mr' => 'SRD',
'ms' => 'SRD',
+ 'mt' => 'SRD',
+ 'my' => 'SRD',
+ 'mzn' => 'SRD',
'nb' => 'SRD',
'ne' => 'SRD',
- 'nl' => array(
+ 'nl' => [
'DEFAULT' => 'SRD',
'SR' => '$',
- ),
+ ],
+ 'nn' => 'SRD',
+ 'or' => 'SRD',
'pa' => 'SRD',
'pl' => 'SRD',
+ 'ps' => 'SRD',
'pt' => 'SRD',
'ro' => 'SRD',
'root' => '$',
'ru' => 'SRD',
+ 'sd' => 'SRD',
'si' => 'SRD',
'sk' => 'SRD',
'sl' => 'SRD',
+ 'so' => 'SRD',
+ 'sq' => 'SRD',
'sr' => 'SRD',
'sv' => 'SRD',
'sw' => 'SRD',
'ta' => 'SRD',
'te' => 'SRD',
'th' => 'SRD',
+ 'tk' => 'SRD',
'tr' => 'SRD',
'uk' => 'SRD',
'ur' => 'SRD',
'uz' => 'SRD',
'vi' => 'SRD',
+ 'yue' => 'SRD',
'zh' => 'SRD',
- ),
- 'SRG' => array(
- 'es' => array(
- 'MX' => 'SRG',
- ),
- ),
- 'SSP' => array(
+ 'zu' => 'SRD',
+ ],
+ 'SSP' => [
'af' => 'SSP',
'am' => 'SSP',
- 'ar' => array(
- 'DEFAULT' => 'ج.ج.س.',
+ 'ar' => [
+ 'DEFAULT' => 'SSP',
'SS' => '£',
- ),
+ ],
+ 'as' => 'SSP',
'ast' => 'SSP',
'az' => 'SSP',
+ 'be' => 'SSP',
'bg' => 'SSP',
'bn' => 'SSP',
+ 'br' => 'SSP',
'bs' => 'SSP',
'ca' => 'SSP',
+ 'ccp' => 'SSP',
+ 'ce' => 'SSP',
+ 'chr' => 'SSP',
'cs' => 'SSP',
+ 'cy' => 'SSP',
'da' => 'SSP',
'de' => 'SSP',
'el' => 'SSP',
- 'en' => array(
+ 'en' => [
'SS' => '£',
- ),
- 'es' => 'SSP',
+ ],
+ 'es' => [
+ 'DEFAULT' => 'SSP',
+ 'MX' => '£',
+ 'US' => '£',
+ 419 => 'SD£',
+ ],
'et' => 'SSP',
'eu' => 'SSP',
+ 'fa' => 'SSP',
'fi' => 'SSP',
+ 'fil' => 'SSP',
+ 'fo' => 'SSP',
'fr' => 'SSP',
'ga' => 'SSP',
'gd' => 'SSP',
@@ -5933,11 +7798,14 @@ $currencySymbols = array(
'is' => 'SSP',
'it' => 'SSP',
'ja' => 'SSP',
+ 'jv' => 'SSP',
'ka' => 'SSP',
+ 'kab' => 'SSP',
'kk' => 'SSP',
'km' => 'SSP',
'kn' => 'SSP',
'ko' => 'SSP',
+ 'ky' => 'SSP',
'lo' => 'SSP',
'lt' => 'SSP',
'lv' => 'SSP',
@@ -5946,132 +7814,156 @@ $currencySymbols = array(
'mn' => 'SSP',
'mr' => 'SSP',
'ms' => 'SSP',
+ 'mt' => 'SSP',
+ 'my' => 'SSP',
+ 'mzn' => 'SSP',
'nb' => 'SSP',
'ne' => 'SSP',
'nl' => 'SSP',
+ 'nn' => 'SSP',
+ 'or' => 'SSP',
'pa' => 'SSP',
'pl' => 'SSP',
+ 'ps' => 'SSP',
'pt' => 'SSP',
'ro' => 'SSP',
'root' => '£',
'ru' => 'SSP',
+ 'sd' => 'SSP',
'si' => 'SSP',
'sk' => 'SSP',
'sl' => 'SSP',
+ 'so' => 'SSP',
+ 'sq' => 'SSP',
'sr' => 'SSP',
'sv' => 'SSP',
'sw' => 'SSP',
'ta' => 'SSP',
'te' => 'SSP',
'th' => 'SSP',
+ 'tk' => 'SSP',
'tr' => 'SSP',
'uk' => 'SSP',
'ur' => 'SSP',
'uz' => 'SSP',
'vi' => 'SSP',
+ 'yue' => 'SSP',
'zh' => 'SSP',
- ),
- 'STD' => array(
- 'af' => 'STD',
- 'am' => 'STD',
- 'ar' => 'STD',
- 'ast' => 'STD',
- 'az' => 'STD',
- 'bg' => 'STD',
- 'bn' => 'STD',
- 'bs' => 'STD',
- 'ca' => 'STD',
- 'cs' => 'STD',
- 'da' => 'STD',
- 'de' => 'STD',
- 'el' => 'STD',
- 'es' => 'STD',
- 'et' => 'STD',
- 'eu' => 'STD',
- 'fi' => 'STD',
- 'fr' => 'STD',
- 'ga' => 'STD',
- 'gd' => 'STD',
- 'gl' => 'STD',
- 'gu' => 'STD',
- 'he' => 'STD',
- 'hi' => 'STD',
- 'hr' => 'STD',
- 'hu' => 'STD',
- 'hy' => 'STD',
- 'id' => 'STD',
- 'is' => 'STD',
- 'it' => 'STD',
- 'ja' => 'STD',
- 'ka' => 'STD',
- 'kea' => 'STD',
- 'kk' => 'STD',
- 'km' => 'STD',
- 'kn' => 'STD',
- 'ko' => 'STD',
- 'lo' => 'STD',
- 'lt' => 'STD',
- 'lv' => 'STD',
- 'mk' => 'STD',
- 'ml' => 'STD',
- 'mn' => 'STD',
- 'mr' => 'STD',
- 'ms' => 'STD',
- 'nb' => 'STD',
- 'ne' => 'STD',
- 'nl' => 'STD',
- 'pa' => 'STD',
- 'pl' => 'STD',
- 'pt' => array(
- 'DEFAULT' => 'STD',
+ 'zu' => 'SSP',
+ ],
+ 'STN' => [
+ 'am' => 'STN',
+ 'ar' => 'STN',
+ 'as' => 'STN',
+ 'az' => 'STN',
+ 'be' => 'STN',
+ 'bn' => 'STN',
+ 'bs' => 'STN',
+ 'ca' => 'STN',
+ 'chr' => 'STN',
+ 'cs' => 'STN',
+ 'da' => 'STN',
+ 'de' => 'STN',
+ 'el' => 'STN',
+ 'es' => 'STN',
+ 'et' => 'STN',
+ 'eu' => 'STN',
+ 'fa' => 'STN',
+ 'fi' => 'STN',
+ 'fil' => 'STN',
+ 'fo' => 'STN',
+ 'fr' => 'STN',
+ 'gd' => 'STN',
+ 'gl' => 'STN',
+ 'gu' => 'STN',
+ 'he' => 'STN',
+ 'hi' => 'STN',
+ 'hr' => 'STN',
+ 'hu' => 'STN',
+ 'hy' => 'STN',
+ 'id' => 'STN',
+ 'is' => 'STN',
+ 'it' => 'STN',
+ 'ja' => 'STN',
+ 'jv' => 'STN',
+ 'ka' => 'STN',
+ 'kn' => 'STN',
+ 'ko' => 'STN',
+ 'lt' => 'STN',
+ 'lv' => 'STN',
+ 'mk' => 'STN',
+ 'ml' => 'STN',
+ 'mr' => 'STN',
+ 'ms' => 'STN',
+ 'mt' => 'STN',
+ 'nb' => 'STN',
+ 'nl' => 'STN',
+ 'or' => 'STN',
+ 'pa' => 'STN',
+ 'pl' => 'STN',
+ 'ps' => 'STN',
+ 'pt' => [
+ 'DEFAULT' => 'STN',
'ST' => 'Db',
- ),
- 'ro' => 'STD',
+ ],
+ 'ro' => 'STN',
'root' => 'Db',
- 'ru' => 'STD',
- 'si' => 'STD',
- 'sk' => 'STD',
- 'sl' => 'STD',
- 'sr' => 'STD',
- 'sv' => 'STD',
- 'sw' => 'STD',
- 'ta' => 'STD',
- 'te' => 'STD',
- 'th' => 'STD',
- 'tr' => 'STD',
- 'uk' => 'STD',
- 'ur' => 'STD',
- 'uz' => 'STD',
- 'vi' => 'STD',
- 'zh' => 'STD',
- ),
- 'SVC' => array(
- 'es' => array(
- 'MX' => 'SVC',
- ),
- ),
- 'SYP' => array(
+ 'ru' => 'STN',
+ 'sd' => 'STN',
+ 'sk' => 'STN',
+ 'sl' => 'STN',
+ 'so' => 'STN',
+ 'sq' => 'STN',
+ 'sr' => 'STN',
+ 'sv' => 'STN',
+ 'sw' => 'STN',
+ 'ta' => 'STN',
+ 'te' => 'STN',
+ 'th' => 'STN',
+ 'tk' => 'STN',
+ 'tr' => 'STN',
+ 'uk' => 'STN',
+ 'ur' => 'STN',
+ 'vi' => 'STN',
+ 'zh' => 'STN',
+ ],
+ 'SYP' => [
'af' => 'SYP',
'am' => 'SYP',
'ar' => 'ل.س.‏',
+ 'as' => 'SYP',
'ast' => 'SYP',
'az' => 'SYP',
+ 'be' => 'SYP',
'bg' => 'SYP',
'bn' => 'SYP',
+ 'br' => 'SYP',
'bs' => 'SYP',
'ca' => 'SYP',
+ 'ccp' => 'SYP',
+ 'ce' => 'SYP',
+ 'chr' => 'SYP',
'cs' => 'SYP',
+ 'cy' => 'SYP',
'da' => 'SYP',
'de' => 'SYP',
'el' => 'SYP',
- 'es' => 'SYP',
+ 'es' => [
+ 'DEFAULT' => 'SYP',
+ 'MX' => '£',
+ 'US' => '£',
+ 419 => 'S£',
+ ],
'et' => 'SYP',
'eu' => 'SYP',
+ 'fa' => 'SYP',
'fi' => 'SYP',
- 'fr' => array(
+ 'fil' => 'SYP',
+ 'fo' => 'SYP',
+ 'fr' => [
'DEFAULT' => 'SYP',
'SY' => 'LS',
- ),
+ ],
'ga' => 'SYP',
'gd' => 'SYP',
'gl' => 'SYP',
@@ -6085,12 +7977,15 @@ $currencySymbols = array(
'is' => 'SYP',
'it' => 'SYP',
'ja' => 'SYP',
+ 'jv' => 'SYP',
'ka' => 'SYP',
+ 'kab' => 'SYP',
'kea' => 'SYP',
'kk' => 'SYP',
'km' => 'SYP',
'kn' => 'SYP',
'ko' => 'SYP',
+ 'ky' => 'SYP',
'lo' => 'SYP',
'lt' => 'SYP',
'lv' => 'SYP',
@@ -6099,96 +7994,143 @@ $currencySymbols = array(
'mn' => 'SYP',
'mr' => 'SYP',
'ms' => 'SYP',
+ 'mt' => 'SYP',
+ 'my' => 'SYP',
+ 'mzn' => 'SYP',
'nb' => 'SYP',
'ne' => 'SYP',
'nl' => 'SYP',
+ 'nn' => 'SYP',
+ 'or' => 'SYP',
'pa' => 'SYP',
'pl' => 'SYP',
- 'pt' => 'SYP',
+ 'ps' => 'SYP',
+ 'pt' => [
+ 'DEFAULT' => 'SYP',
+ 'PT' => '£',
+ ],
'ro' => 'SYP',
'root' => '£',
'ru' => 'SYP',
+ 'sd' => 'SYP',
'si' => 'SYP',
'sk' => 'SYP',
'sl' => 'SYP',
+ 'so' => 'SYP',
+ 'sq' => 'SYP',
'sr' => 'SYP',
'sv' => 'SYP',
'sw' => 'SYP',
'ta' => 'SYP',
'te' => 'SYP',
'th' => 'SYP',
+ 'tk' => 'SYP',
'tr' => 'SYP',
'uk' => 'SYP',
'ur' => 'SYP',
'uz' => 'SYP',
'vi' => 'SYP',
+ 'yue' => 'SYP',
'zh' => 'SYP',
- ),
- 'SZL' => array(
- 'en' => array(
+ 'zu' => 'SYP',
+ ],
+ 'SZL' => [
+ 'en' => [
'SZ' => 'E',
- ),
- ),
- 'THB' => array(
+ ],
+ ],
+ 'THB' => [
+ 'as' => 'THB',
+ 'be' => 'THB',
'bg' => 'THB',
+ 'br' => 'THB',
+ 'ce' => 'THB',
+ 'chr' => 'THB',
'cs' => 'THB',
'dz' => 'TH฿',
- 'es' => array(
+ 'es' => [
'DEFAULT' => '฿',
419 => 'THB',
- ),
+ ],
'fi' => 'THB',
- 'fr' => array(
- 'CA' => 'THB',
- 'DEFAULT' => '฿',
- ),
+ 'fo' => 'THB',
+ 'fr' => 'THB',
'hr' => 'THB',
'hu' => 'THB',
'is' => 'THB',
+ 'ja' => 'THB',
+ 'jv' => 'THB',
'ka' => 'THB',
+ 'kab' => 'THB',
+ 'ko' => 'THB',
'lt' => 'THB',
'mk' => 'THB',
+ 'ms' => 'THB',
+ 'mt' => 'THB',
+ 'mzn' => 'THB',
'nb' => 'THB',
+ 'nn' => 'THB',
+ 'or' => 'THB',
'pl' => 'THB',
+ 'ps' => 'THB',
'ro' => 'THB',
'root' => '฿',
+ 'sd' => 'THB',
'sk' => 'THB',
+ 'sl' => 'THB',
+ 'so' => 'THB',
'sr' => 'THB',
'sv' => 'THB',
- 'th' => 'THB',
+ 'tk' => 'THB',
'uk' => 'THB',
- ),
- 'TMT' => array(
+ 'uz' => 'THB',
+ 'yue' => 'THB',
+ 'zh' => 'THB',
+ ],
+ 'TJS' => [
+ 'tg' => 'сом.',
+ ],
+ 'TMT' => [
'ru' => 'ТМТ',
- ),
- 'TND' => array(
+ ],
+ 'TND' => [
'ar' => 'د.ت.‏',
- 'fr' => array(
+ 'fr' => [
'DEFAULT' => 'TND',
'TN' => 'DT',
- ),
- ),
- 'TOP' => array(
+ ],
+ ],
+ 'TOP' => [
'af' => 'TOP',
'am' => 'TOP',
'ar' => 'TOP',
+ 'as' => 'TOP',
'ast' => 'TOP',
'az' => 'TOP',
+ 'be' => 'TOP',
'bg' => 'TOP',
'bn' => 'TOP',
+ 'br' => 'TOP',
'bs' => 'TOP',
'ca' => 'TOP',
+ 'ccp' => 'TOP',
+ 'ce' => 'TOP',
+ 'chr' => 'TOP',
'cs' => 'TOP',
+ 'cy' => 'TOP',
'da' => 'TOP',
'de' => 'TOP',
'el' => 'TOP',
- 'en' => array(
+ 'en' => [
'TO' => 'T$',
- ),
+ ],
'es' => 'TOP',
'et' => 'TOP',
'eu' => 'TOP',
+ 'fa' => 'TOP',
'fi' => 'TOP',
+ 'fil' => 'TOP',
+ 'fo' => 'TOP',
'fr' => 'TOP',
'ga' => 'TOP',
'gd' => 'TOP',
@@ -6203,12 +8145,15 @@ $currencySymbols = array(
'is' => 'TOP',
'it' => 'TOP',
'ja' => 'TOP',
+ 'jv' => 'TOP',
'ka' => 'TOP',
+ 'kab' => 'TOP',
'kea' => 'TOP',
'kk' => 'TOP',
'km' => 'TOP',
'kn' => 'TOP',
'ko' => 'TOP',
+ 'ky' => 'TOP',
'lo' => 'TOP',
'lt' => 'TOP',
'lv' => 'TOP',
@@ -6217,52 +8162,75 @@ $currencySymbols = array(
'mn' => 'TOP',
'mr' => 'TOP',
'ms' => 'TOP',
+ 'mt' => 'TOP',
+ 'my' => 'TOP',
'nb' => 'TOP',
'ne' => 'TOP',
'nl' => 'TOP',
+ 'nn' => 'TOP',
+ 'or' => 'TOP',
'pa' => 'TOP',
'pl' => 'TOP',
+ 'ps' => 'TOP',
'pt' => 'TOP',
'ro' => 'TOP',
'root' => 'T$',
'ru' => 'TOP',
+ 'sd' => 'TOP',
'si' => 'TOP',
'sk' => 'TOP',
'sl' => 'TOP',
+ 'so' => 'TOP',
+ 'sq' => 'TOP',
'sr' => 'TOP',
'sv' => 'TOP',
'sw' => 'TOP',
'ta' => 'TOP',
'te' => 'TOP',
'th' => 'TOP',
+ 'tk' => 'TOP',
'tr' => 'TOP',
'uk' => 'TOP',
'ur' => 'TOP',
'uz' => 'TOP',
'vi' => 'TOP',
+ 'yue' => 'TOP',
'zh' => 'TOP',
- ),
- 'TRY' => array(
+ 'zu' => 'TOP',
+ ],
+ 'TRY' => [
'af' => 'TRY',
'am' => 'TRY',
- 'ar' => 'ل.ت.',
+ 'ar' => 'TRY',
+ 'as' => 'TRY',
+ 'ast' => 'TRY',
'az' => 'TRY',
+ 'be' => 'TRY',
'bg' => 'TRY',
'bn' => 'TRY',
- 'bs' => 'Тл',
+ 'br' => 'TRY',
+ 'bs' => 'TRY',
'ca' => 'TRY',
+ 'ccp' => 'TRY',
+ 'ce' => 'TRY',
+ 'chr' => 'TRY',
'cs' => 'TRY',
+ 'cy' => 'TRY',
'da' => 'TRY',
'de' => 'TRY',
+ 'ee' => 'TRY',
'el' => 'TRY',
- 'es' => array(
- 'DEFAULT' => 'TRY',
- 'MX' => 'TL',
- ),
+ 'es' => 'TRY',
'et' => 'TRY',
'eu' => 'TRY',
+ 'fa' => 'TRY',
'fi' => 'TRY',
- 'fr' => 'TRY',
+ 'fil' => 'TRY',
+ 'fo' => 'TRY',
+ 'fr' => [
+ 'CA' => 'TL',
+ 'DEFAULT' => 'TRY',
+ ],
'ga' => 'TRY',
'gd' => 'TRY',
'gl' => 'TRY',
@@ -6276,11 +8244,14 @@ $currencySymbols = array(
'is' => 'TRY',
'it' => 'TRY',
'ja' => 'TRY',
+ 'jv' => 'TRY',
'ka' => 'TRY',
+ 'kab' => 'TRY',
'kk' => 'TRY',
'km' => 'TRY',
'kn' => 'TRY',
'ko' => 'TRY',
+ 'ky' => 'TRY',
'lo' => 'TRY',
'lt' => 'TRY',
'lv' => 'TRY',
@@ -6289,58 +8260,80 @@ $currencySymbols = array(
'mn' => 'TRY',
'mr' => 'TRY',
'ms' => 'TRY',
+ 'mt' => 'TRY',
+ 'my' => 'TRY',
+ 'mzn' => 'TRY',
'nb' => 'TRY',
+ 'nds' => 'TRY',
'ne' => 'TRY',
'nl' => 'TRY',
+ 'nn' => 'TRY',
+ 'or' => 'TRY',
'pa' => 'TRY',
'pl' => 'TRY',
+ 'ps' => 'TRY',
'pt' => 'TRY',
'rm' => 'TRY',
'ro' => 'TRY',
'root' => '₺',
'ru' => 'TRY',
+ 'sd' => 'TRY',
'si' => 'TRY',
'sk' => 'TRY',
'sl' => 'TRY',
+ 'so' => 'TRY',
+ 'sq' => 'TRY',
'sr' => 'TRY',
'sv' => 'TRY',
'sw' => 'TRY',
'ta' => 'TRY',
'te' => 'TRY',
'th' => 'TRY',
+ 'tk' => 'TRY',
'uk' => 'TRY',
'ur' => 'TRY',
'uz' => 'TRY',
'vi' => 'TRY',
+ 'yue' => 'TRY',
'zh' => 'TRY',
'zu' => 'TRY',
- ),
- 'TTD' => array(
+ ],
+ 'TTD' => [
'af' => 'TTD',
'am' => 'TTD',
'ar' => 'TTD',
+ 'as' => 'TTD',
'ast' => 'TTD',
'az' => 'TTD',
+ 'be' => 'TTD',
'bg' => 'TTD',
'bn' => 'TTD',
+ 'br' => 'TTD',
'bs' => 'TTD',
'ca' => 'TTD',
+ 'ccp' => 'TTD',
+ 'ce' => 'TTD',
+ 'chr' => 'TTD',
'cs' => 'TTD',
+ 'cy' => 'TTD',
'da' => 'TTD',
'de' => 'TTD',
+ 'ee' => 'TTD',
'el' => 'TTD',
- 'en' => array(
+ 'en' => [
'TT' => '$',
- ),
+ ],
'es' => 'TTD',
'et' => 'TTD',
'eu' => 'TTD',
+ 'fa' => 'TTD',
'fi' => 'TTD',
'fil' => 'TTD',
- 'fr' => array(
+ 'fo' => 'TTD',
+ 'fr' => [
'CA' => 'TTD',
'DEFAULT' => '$TT',
- ),
+ ],
'ga' => 'TTD',
'gd' => 'TTD',
'gl' => 'TTD',
@@ -6354,7 +8347,9 @@ $currencySymbols = array(
'is' => 'TTD',
'it' => 'TTD',
'ja' => 'TTD',
+ 'jv' => 'TTD',
'ka' => 'TTD',
+ 'kab' => '$TT',
'kk' => 'TTD',
'km' => 'TTD',
'kn' => 'TTD',
@@ -6363,96 +8358,129 @@ $currencySymbols = array(
'lo' => 'TTD',
'lt' => 'TTD',
'lv' => 'TTD',
+ 'mi' => 'TTD',
'mk' => 'TTD',
'ml' => 'TTD',
'mn' => 'TTD',
'mr' => 'TTD',
'ms' => 'TTD',
+ 'mt' => 'TTD',
+ 'my' => 'TT$',
+ 'mzn' => 'TTD',
'nb' => 'TTD',
'ne' => 'TTD',
'nl' => 'TTD',
+ 'nn' => 'TTD',
+ 'or' => 'TTD',
'pa' => 'TTD',
'pl' => 'TTD',
+ 'ps' => 'TTD',
'pt' => 'TTD',
'ro' => 'TTD',
'root' => '$',
'ru' => 'TTD',
+ 'sd' => 'TTD',
'si' => 'TTD',
'sk' => 'TTD',
'sl' => 'TTD',
+ 'so' => 'TTD',
+ 'sq' => 'TTD',
'sr' => 'TTD',
'sv' => 'TTD',
'sw' => 'TTD',
'ta' => 'TTD',
'te' => 'TTD',
'th' => 'TTD',
+ 'tk' => 'TTD',
'tr' => 'TTD',
'uk' => 'TTD',
'ur' => 'TTD',
'uz' => 'TTD',
'vi' => 'TTD',
+ 'yue' => 'TTD',
'zh' => 'TTD',
'zu' => 'TTD',
- ),
- 'TWD' => array(
+ ],
+ 'TWD' => [
'bg' => 'TWD',
- 'br' => '$',
+ 'br' => 'TWD',
+ 'en' => [
+ 'AU' => 'TWD',
+ ],
'es' => 'TWD',
'fi' => 'TWD',
'fr' => 'TWD',
- 'gl' => '$NT',
'hr' => 'TWD',
'hu' => 'TWD',
'is' => 'TWD',
'it' => 'TWD',
+ 'kab' => 'TWD',
'ky' => 'TWD',
'lt' => 'TWD',
'mk' => 'TWD',
'nb' => 'TWD',
+ 'nn' => 'TWD',
'pl' => 'TWD',
'ro' => 'TWD',
'root' => 'NT$',
'sk' => 'TWD',
+ 'sl' => 'TWD',
'sv' => 'TWD',
+ 'to' => '$',
'uk' => 'TWD',
- ),
- 'TZS' => array(
+ 'zh' => [
+ 'DEFAULT' => 'NT$',
+ 'HK' => 'NT$',
+ ],
+ ],
+ 'TZS' => [
'asa' => 'TSh',
'bez' => 'TSh',
- 'en' => array(
+ 'en' => [
'TZ' => 'TSh',
- ),
+ ],
'jmc' => 'TSh',
'kde' => 'TSh',
'ksb' => 'TSh',
'lag' => 'TSh',
- 'mas' => array(
+ 'mas' => [
'TZ' => 'TSh',
- ),
+ ],
'rof' => 'TSh',
'rwk' => 'TSh',
'sbp' => 'TSh',
'sw' => 'TSh',
'vun' => 'TSh',
- ),
- 'UAH' => array(
+ ],
+ 'UAH' => [
'af' => 'UAH',
'am' => 'UAH',
'ar' => 'UAH',
+ 'as' => 'UAH',
+ 'ast' => 'UAH',
'az' => 'UAH',
+ 'be' => 'UAH',
'bg' => 'UAH',
'bn' => 'UAH',
+ 'br' => 'UAH',
'bs' => 'UAH',
'ca' => 'UAH',
+ 'ccp' => 'UAH',
+ 'ce' => 'UAH',
+ 'chr' => 'UAH',
'cs' => 'UAH',
+ 'cy' => 'UAH',
'da' => 'UAH',
'de' => 'UAH',
+ 'ee' => 'UAH',
'el' => 'UAH',
'es' => 'UAH',
'et' => 'UAH',
'eu' => 'UAH',
+ 'fa' => 'UAH',
'fi' => 'UAH',
'fil' => 'UAH',
+ 'fo' => 'UAH',
'fr' => 'UAH',
'ga' => 'UAH',
'gd' => 'UAH',
@@ -6467,11 +8495,15 @@ $currencySymbols = array(
'is' => 'UAH',
'it' => 'UAH',
'ja' => 'UAH',
+ 'jv' => 'UAH',
'ka' => 'UAH',
+ 'kab' => 'UAH',
+ 'kk' => 'UAH',
'km' => 'UAH',
'kn' => 'UAH',
'ko' => 'UAH',
'ky' => 'UAH',
+ 'ln' => 'UAH',
'lo' => 'UAH',
'lt' => 'UAH',
'lv' => 'UAH',
@@ -6480,47 +8512,59 @@ $currencySymbols = array(
'mn' => 'UAH',
'mr' => 'UAH',
'ms' => 'UAH',
+ 'mt' => 'UAH',
+ 'my' => 'UAH',
+ 'mzn' => 'UAH',
'nb' => 'UAH',
'ne' => 'UAH',
'nl' => 'UAH',
+ 'nn' => 'UAH',
+ 'or' => 'UAH',
'pa' => 'UAH',
'pl' => 'UAH',
+ 'ps' => 'UAH',
'pt' => 'UAH',
'ro' => 'UAH',
'root' => '₴',
+ 'sd' => 'UAH',
'si' => 'UAH',
'sk' => 'UAH',
'sl' => 'UAH',
+ 'so' => 'UAH',
+ 'sq' => 'UAH',
'sr' => 'UAH',
'sv' => 'UAH',
'sw' => 'UAH',
'ta' => 'UAH',
'te' => 'UAH',
'th' => 'UAH',
+ 'tk' => 'UAH',
'tr' => 'UAH',
'ur' => 'UAH',
'uz' => 'UAH',
'vi' => 'UAH',
+ 'yue' => 'UAH',
'zh' => 'UAH',
- ),
- 'UAK' => array(
+ 'zu' => 'UAH',
+ ],
+ 'UAK' => [
'uk' => 'крб.',
- ),
- 'UGX' => array(
+ ],
+ 'UGX' => [
'cgg' => 'USh',
- 'en' => array(
+ 'en' => [
'UG' => 'USh',
- ),
+ ],
'lg' => 'USh',
'nyn' => 'USh',
- 'sw' => array(
+ 'sw' => [
'DEFAULT' => 'UGX',
'UG' => 'USh',
- ),
+ ],
'teo' => 'USh',
'xog' => 'USh',
- ),
- 'USD' => array(
+ ],
+ 'USD' => [
'ast' => '$',
'be' => '$',
'bg' => 'щ.д.',
@@ -6528,20 +8572,22 @@ $currencySymbols = array(
'bs' => 'USD',
'ca' => 'USD',
'chr' => '$',
+ 'cu' => '$',
'da' => '$',
'de' => '$',
'dsb' => '$',
'el' => '$',
- 'en' => array(
+ 'en' => [
001 => 'US$',
+ 'AU' => 'USD',
'DEFAULT' => '$',
- ),
- 'es' => array(
+ ],
+ 'es' => [
'AR' => 'US$',
'CL' => 'US$',
'CO' => 'US$',
'CU' => 'US$',
- 'DEFAULT' => '$',
+ 'DEFAULT' => 'US$',
'DO' => 'US$',
'EC' => '$',
'PR' => '$',
@@ -6549,15 +8595,15 @@ $currencySymbols = array(
'US' => '$',
'UY' => 'US$',
419 => 'USD',
- ),
+ ],
'et' => '$',
'fa' => '$',
'fi' => '$',
'fil' => '$',
- 'fr' => array(
+ 'fr' => [
'CA' => '$ US',
'DEFAULT' => '$US',
- ),
+ ],
'ga' => '$',
'gd' => '$',
'gl' => '$',
@@ -6570,91 +8616,96 @@ $currencySymbols = array(
'hu' => 'USD',
'hy' => '$',
'is' => 'USD',
+ 'it' => 'USD',
'ja' => '$',
+ 'kab' => '$US',
'kk' => '$',
'km' => '$',
'kn' => '$',
'ky' => 'USD',
'lb' => '$',
'lkt' => '$',
- 'lt' => 'dol.',
+ 'lt' => 'USD',
'lv' => '$',
'ml' => '$',
'mn' => '$',
'mr' => '$',
'ms' => 'USD',
+ 'mzn' => '$',
'nb' => 'USD',
- 'nl' => array(
+ 'nds' => '$',
+ 'nl' => [
'BQ' => '$',
'DEFAULT' => 'US$',
- ),
+ ],
+ 'nn' => 'USD',
+ 'or' => '$',
'os' => '$',
'pl' => 'USD',
- 'qu' => array(
+ 'qu' => [
'EC' => '$',
- ),
+ ],
'rm' => '$',
'ro' => 'USD',
'root' => 'US$',
'ru' => '$',
+ 'sah' => '$',
'sk' => 'USD',
'sl' => '$',
- 'ta' => array(
+ 'ta' => [
'DEFAULT' => '$',
'SG' => 'US$',
- ),
+ ],
'te' => '$',
+ 'tg' => '$',
'tr' => '$',
+ 'tt' => '$',
'ug' => '$',
'uk' => 'USD',
'ur' => '$',
'wae' => '$',
- 'zh' => array(
- 'DEFAULT' => '$',
- 'HK' => 'US$',
- ),
- ),
- 'USN' => array(
- 'es' => array(
- 'MX' => 'USN',
- ),
- ),
- 'USS' => array(
- 'es' => array(
- 'MX' => 'USS',
- ),
- ),
- 'UYI' => array(
- 'es' => array(
- 'MX' => 'UYI',
- ),
- ),
- 'UYU' => array(
+ 'wo' => '$',
+ 'yi' => '$',
+ ],
+ 'UYU' => [
'af' => 'UYU',
'am' => 'UYU',
'ar' => 'UYU',
+ 'as' => 'UYU',
'ast' => 'UYU',
'az' => 'UYU',
+ 'be' => 'UYU',
'bg' => 'UYU',
'bn' => 'UYU',
+ 'br' => 'UYU',
'bs' => 'UYU',
'ca' => 'UYU',
+ 'ccp' => 'UYU',
+ 'ce' => 'UYU',
+ 'chr' => 'UYU',
'cs' => 'UYU',
+ 'cy' => 'UYU',
'da' => 'UYU',
'de' => 'UYU',
+ 'ee' => 'UYU',
'el' => 'UYU',
- 'es' => array(
+ 'en' => [
+ 'AU' => '$U',
+ ],
+ 'es' => [
'DEFAULT' => 'UYU',
'UY' => '$',
- ),
+ ],
'et' => 'UYU',
'eu' => 'UYU',
+ 'fa' => 'UYU',
'fi' => 'UYU',
'fil' => 'UYU',
- 'fr' => array(
+ 'fo' => 'UYU',
+ 'fr' => [
'CA' => 'UYU',
'DEFAULT' => '$UY',
- ),
+ ],
'ga' => 'UYU',
'gd' => 'UYU',
'gl' => 'UYU',
@@ -6664,11 +8715,14 @@ $currencySymbols = array(
'hr' => 'UYU',
'hu' => 'UYU',
'hy' => 'UYU',
- 'id' => '$U',
+ 'id' => 'UYU',
'is' => 'UYU',
'it' => 'UYU',
'ja' => 'UYU',
+ 'jv' => 'UYU',
'ka' => 'UYU',
+ 'kab' => '$UY',
+ 'kk' => 'UYU',
'km' => 'UYU',
'kn' => 'UYU',
'ko' => 'UYU',
@@ -6681,56 +8735,87 @@ $currencySymbols = array(
'mn' => 'UYU',
'mr' => 'UYU',
'ms' => 'UYU',
+ 'mt' => 'UYU',
+ 'my' => 'UYU',
+ 'mzn' => 'UYU',
'nb' => 'UYU',
'ne' => 'UYU',
'nl' => 'UYU',
+ 'nn' => 'UYU',
+ 'or' => 'UYU',
'pa' => 'UYU',
'pl' => 'UYU',
+ 'ps' => 'UYU',
'pt' => 'UYU',
'ro' => 'UYU',
'root' => '$',
'ru' => 'UYU',
+ 'sd' => 'UYU',
'si' => 'UYU',
'sk' => 'UYU',
'sl' => 'UYU',
+ 'so' => 'UYU',
+ 'sq' => 'UYU',
'sr' => 'UYU',
'sv' => 'UYU',
'sw' => 'UYU',
'ta' => 'UYU',
'te' => 'UYU',
'th' => 'UYU',
+ 'tk' => 'UYU',
'tr' => 'UYU',
'uk' => 'UYU',
'ur' => 'UYU',
'uz' => 'UYU',
'vi' => 'UYU',
+ 'yue' => 'UYU',
'zh' => 'UYU',
- ),
- 'UZS' => array(
- 'uz' => 'сўм',
- ),
- 'VEF' => array(
+ 'zu' => 'UYU',
+ ],
+ 'UYW' => [
+ 'es' => [
+ 'DEFAULT' => 'UYW',
+ 'UY' => 'UP',
+ ],
+ ],
+ 'UZS' => [
+ 'uz' => 'soʻm',
+ ],
+ 'VEF' => [
'af' => 'VEF',
'am' => 'VEF',
'ar' => 'VEF',
+ 'as' => 'VEF',
'ast' => 'VEF',
'az' => 'VEF',
+ 'be' => 'VEF',
'bg' => 'VEF',
'bn' => 'VEF',
+ 'br' => 'VEF',
'bs' => 'VEF',
'ca' => 'VEF',
+ 'ccp' => 'VEF',
+ 'ce' => 'VEF',
+ 'chr' => 'VEF',
'cs' => 'VEF',
+ 'cy' => 'VEF',
'da' => 'VEF',
'de' => 'VEF',
+ 'ee' => 'VEF',
'el' => 'VEF',
- 'es' => array(
+ 'es' => [
'DEFAULT' => 'VEF',
+ 'MX' => 'Bs',
+ 'US' => 'Bs',
'VE' => 'Bs.',
- ),
+ 419 => 'BsF',
+ ],
'et' => 'VEF',
'eu' => 'VEF',
+ 'fa' => 'VEF',
'fi' => 'VEF',
'fil' => 'VEF',
+ 'fo' => 'VEF',
'fr' => 'VEF',
'ga' => 'VEF',
'gd' => 'VEF',
@@ -6745,8 +8830,11 @@ $currencySymbols = array(
'is' => 'VEF',
'it' => 'VEF',
'ja' => 'VEF',
+ 'jv' => 'VEF',
'ka' => 'VEF',
+ 'kab' => 'VEF',
'kea' => 'VEF',
+ 'kk' => 'VEF',
'km' => 'VEF',
'kn' => 'VEF',
'ko' => 'VEF',
@@ -6759,43 +8847,65 @@ $currencySymbols = array(
'mn' => 'VEF',
'mr' => 'VEF',
'ms' => 'VEF',
+ 'mt' => 'VEF',
+ 'my' => 'VEF',
+ 'mzn' => 'VEF',
'nb' => 'VEF',
'ne' => 'VEF',
'nl' => 'VEF',
+ 'nn' => 'VEF',
+ 'or' => 'VEF',
'pa' => 'VEF',
'pl' => 'VEF',
+ 'ps' => 'VEF',
'pt' => 'VEF',
'ro' => 'VEF',
'root' => 'Bs',
'ru' => 'VEF',
+ 'sd' => 'VEF',
'si' => 'VEF',
'sk' => 'VEF',
'sl' => 'VEF',
+ 'so' => 'VEF',
+ 'sq' => 'VEF',
'sr' => 'VEF',
'sv' => 'VEF',
'sw' => 'VEF',
'ta' => 'VEF',
'te' => 'VEF',
'th' => 'VEF',
+ 'tk' => 'VEF',
'tr' => 'VEF',
'uk' => 'VEF',
'ur' => 'VEF',
'uz' => 'VEF',
'vi' => 'VEF',
+ 'yue' => 'VEF',
'zh' => 'VEF',
- ),
- 'VND' => array(
+ 'zu' => 'VEF',
+ ],
+ 'VES' => [
+ 'es' => [
+ 'DEFAULT' => 'VES',
+ 'VE' => 'Bs.S',
+ ],
+ ],
+ 'VND' => [
'bg' => 'VND',
+ 'br' => 'VND',
'cs' => 'VND',
- 'es' => array(
+ 'en' => [
+ 'AU' => 'VND',
+ ],
+ 'es' => [
'DEFAULT' => '₫',
419 => 'VND',
- ),
+ ],
'fi' => 'VND',
- 'fr' => array(
+ 'fr' => [
'CA' => 'VND',
'DEFAULT' => '₫',
- ),
+ ],
'hr' => 'VND',
'hu' => 'VND',
'is' => 'VND',
@@ -6803,6 +8913,7 @@ $currencySymbols = array(
'lt' => 'VND',
'mk' => 'VND',
'nb' => 'VND',
+ 'nn' => 'VND',
'pl' => 'VND',
'ro' => 'VND',
'root' => '₫',
@@ -6810,130 +8921,180 @@ $currencySymbols = array(
'sr' => 'VND',
'sv' => 'VND',
'uk' => 'VND',
- ),
- 'VUV' => array(
- 'en' => array(
+ ],
+ 'VUV' => [
+ 'en' => [
'VU' => 'VT',
- ),
- 'fr' => array(
+ ],
+ 'fr' => [
'DEFAULT' => 'VUV',
'VU' => 'VT',
- ),
- ),
- 'WST' => array(
- 'en' => array(
+ ],
+ ],
+ 'WST' => [
+ 'en' => [
'WS' => 'WS$',
- ),
- 'fr' => 'WS$',
- ),
- 'XAF' => array(
+ ],
+ 'fr' => [
+ 'CA' => 'WST',
+ 'DEFAULT' => 'WS$',
+ ],
+ 'kab' => 'WS$',
+ ],
+ 'XAF' => [
'dz' => 'XAF',
- 'es' => array(
+ 'en' => [
+ 'AU' => 'XAF',
+ ],
+ 'es' => [
'DEFAULT' => 'XAF',
'GQ' => 'FCFA',
- ),
- 'fr' => array(
+ ],
+ 'fr' => [
'CA' => 'XAF',
'DEFAULT' => 'FCFA',
- ),
+ ],
'lt' => 'XAF',
'nb' => 'XAF',
+ 'nn' => 'XAF',
'root' => 'FCFA',
- ),
- 'XBB' => array(
- 'cs' => 'EMU',
- ),
- 'XCD' => array(
+ ],
+ 'XCD' => [
'bg' => 'XCD',
+ 'br' => 'XCD',
'bs' => 'XCD',
'ca' => 'XCD',
- 'en' => array(
+ 'en' => [
'AG' => '$',
'AI' => '$',
+ 'AU' => 'XCD',
'DM' => '$',
'GD' => '$',
'KN' => '$',
'LC' => '$',
'MS' => '$',
'VC' => '$',
- ),
+ ],
'es' => 'XCD',
'fa' => '$EC',
'fi' => 'XCD',
'fr' => 'XCD',
'hr' => 'XCD',
'hu' => 'XCD',
+ 'kab' => 'XCD',
'ky' => 'XCD',
'lt' => 'XCD',
'nb' => 'XCD',
+ 'nn' => 'XCD',
'ro' => 'XCD',
'root' => 'EC$',
+ 'sl' => 'XCD',
'uk' => 'XCD',
- ),
- 'XDR' => array(
+ ],
+ 'XDR' => [
'fr' => 'DTS',
- ),
- 'XEU' => array(
+ 'kab' => 'DTS',
+ ],
+ 'XEU' => [
'cs' => 'ECU',
- ),
- 'XOF' => array(
- 'ca' => 'XOF',
+ ],
+ 'XOF' => [
+ 'en' => [
+ 'AU' => 'XOF',
+ ],
'es' => 'XOF',
- 'fr' => array(
+ 'fr' => [
'CA' => 'XOF',
'DEFAULT' => 'CFA',
- ),
+ ],
'lt' => 'XOF',
'root' => 'CFA',
'si' => 'සිෆ්එ',
- ),
- 'XPF' => array(
+ ],
+ 'XPF' => [
'bs' => 'XPF',
- 'es' => array(
- 'DEFAULT' => 'CFPF',
- 'MX' => 'XPF',
- ),
+ 'en' => [
+ 'AU' => 'CFP',
+ ],
'fi' => 'XPF',
- 'fr' => array(
+ 'fr' => [
'CA' => 'XPF',
'DEFAULT' => 'FCFP',
- ),
+ ],
'fy' => 'XPF',
'hr' => 'XPF',
+ 'kab' => 'FCFP',
+ 'ln' => 'F CFP',
'lt' => 'XPF',
'nb' => 'XPF',
'nl' => 'XPF',
+ 'nn' => 'XPF',
'root' => 'CFPF',
- ),
- 'XXX' => array(
+ ],
+ 'XXX' => [
'ar' => '***',
+ 'ast' => 'XXX',
+ 'br' => 'XXX',
+ 'ca' => 'XXX',
+ 'cs' => 'XXX',
+ 'cy' => 'XXX',
+ 'de' => 'XXX',
+ 'fi' => 'XXX',
+ 'fr' => 'XXX',
+ 'fy' => 'XXX',
+ 'ga' => 'XXX',
+ 'gd' => 'XXX',
+ 'hr' => 'XXX',
+ 'id' => 'XXX',
+ 'ja' => 'XXX',
+ 'kab' => 'XXX',
+ 'nb' => 'XXX',
+ 'nl' => 'XXX',
+ 'pa' => 'XXX',
+ 'root' => '¤',
'ru' => 'XXXX',
- ),
- 'YER' => array(
+ 'sk' => 'XXX',
+ 'th' => 'XXX',
+ 'vi' => 'XXX',
+ 'yue' => 'XXX',
+ 'zh' => 'XXX',
+ ],
+ 'YER' => [
'ar' => 'ر.ي.‏',
- ),
- 'ZAR' => array(
+ ],
+ 'ZAR' => [
'am' => 'ZAR',
'ar' => 'ZAR',
+ 'as' => 'ZAR',
'ast' => 'ZAR',
'az' => 'ZAR',
+ 'be' => 'ZAR',
'bg' => 'ZAR',
'bn' => 'ZAR',
+ 'br' => 'ZAR',
'bs' => 'ZAR',
'ca' => 'ZAR',
+ 'ccp' => 'ZAR',
+ 'ce' => 'ZAR',
+ 'chr' => 'ZAR',
'cs' => 'ZAR',
+ 'cy' => 'ZAR',
'da' => 'ZAR',
'de' => 'ZAR',
+ 'ee' => 'ZAR',
'el' => 'ZAR',
- 'en' => array(
+ 'en' => [
'LS' => 'R',
'ZA' => 'R',
- ),
+ ],
'eo' => 'ZAR',
'es' => 'ZAR',
'et' => 'ZAR',
'eu' => 'ZAR',
+ 'fa' => 'ZAR',
'fi' => 'ZAR',
+ 'fil' => 'ZAR',
+ 'fo' => 'ZAR',
'fr' => 'ZAR',
'ga' => 'ZAR',
'gd' => 'ZAR',
@@ -6948,12 +9109,15 @@ $currencySymbols = array(
'is' => 'ZAR',
'it' => 'ZAR',
'ja' => 'ZAR',
+ 'jv' => 'ZAR',
'ka' => 'ZAR',
+ 'kab' => 'ZAR',
'kea' => 'ZAR',
'kk' => 'ZAR',
'km' => 'ZAR',
'kn' => 'ZAR',
'ko' => 'ZAR',
+ 'ky' => 'ZAR',
'lo' => 'ZAR',
'lt' => 'ZAR',
'lv' => 'ZAR',
@@ -6962,52 +9126,79 @@ $currencySymbols = array(
'mn' => 'ZAR',
'mr' => 'ZAR',
'ms' => 'ZAR',
+ 'mt' => 'ZAR',
+ 'my' => 'ZAR',
+ 'mzn' => 'ZAR',
'nb' => 'ZAR',
+ 'nds' => 'ZAR',
'ne' => 'ZAR',
'nl' => 'ZAR',
+ 'nn' => 'ZAR',
+ 'or' => 'ZAR',
'pa' => 'ZAR',
'pl' => 'ZAR',
+ 'ps' => 'ZAR',
'pt' => 'ZAR',
'ro' => 'ZAR',
'root' => 'R',
'ru' => 'ZAR',
+ 'sd' => 'ZAR',
'si' => 'ZAR',
'sk' => 'ZAR',
'sl' => 'ZAR',
+ 'so' => 'ZAR',
+ 'sq' => 'ZAR',
'sr' => 'ZAR',
'sv' => 'ZAR',
'sw' => 'ZAR',
'ta' => 'ZAR',
'te' => 'ZAR',
'th' => 'ZAR',
+ 'tk' => 'ZAR',
'tr' => 'ZAR',
'uk' => 'ZAR',
'ur' => 'ZAR',
+ 'uz' => 'ZAR',
'vi' => 'ZAR',
+ 'yue' => 'ZAR',
'zh' => 'ZAR',
- ),
- 'ZMW' => array(
+ ],
+ 'ZMW' => [
'af' => 'ZMW',
'am' => 'ZMW',
'ar' => 'ZMW',
+ 'as' => 'ZMW',
'ast' => 'ZMW',
'az' => 'ZMW',
+ 'be' => 'ZMW',
'bem' => 'K',
'bg' => 'ZMW',
'bn' => 'ZMW',
+ 'br' => 'ZMW',
'bs' => 'ZMW',
'ca' => 'ZMW',
+ 'ccp' => 'ZMW',
+ 'ce' => 'ZMW',
+ 'chr' => 'ZMW',
'cs' => 'ZMW',
+ 'cy' => 'ZMW',
'da' => 'ZMW',
'de' => 'ZMW',
'el' => 'ZMW',
- 'en' => array(
+ 'en' => [
'ZM' => 'K',
- ),
+ ],
+ 'es' => 'ZMW',
'et' => 'ZMW',
'eu' => 'ZMW',
+ 'fa' => 'ZMW',
'fi' => 'ZMW',
- 'fr' => 'ZMW',
+ 'fil' => 'ZMW',
+ 'fo' => 'ZMW',
+ 'fr' => [
+ 'CA' => 'ZK',
+ 'DEFAULT' => 'ZMW',
+ ],
'ga' => 'ZMW',
'gd' => 'ZMW',
'gl' => 'ZMW',
@@ -7021,12 +9212,15 @@ $currencySymbols = array(
'is' => 'ZMW',
'it' => 'ZMW',
'ja' => 'ZMW',
+ 'jv' => 'ZMW',
'ka' => 'ZMW',
+ 'kab' => 'ZMW',
'kea' => 'ZMW',
'kk' => 'ZMW',
'km' => 'ZMW',
'kn' => 'ZMW',
'ko' => 'ZMW',
+ 'ky' => 'ZMW',
'lo' => 'ZMW',
'lt' => 'ZMW',
'lv' => 'ZMW',
@@ -7035,29 +9229,41 @@ $currencySymbols = array(
'mn' => 'ZMW',
'mr' => 'ZMW',
'ms' => 'ZMW',
+ 'mt' => 'ZMW',
+ 'my' => 'ZMW',
+ 'mzn' => 'ZMW',
'nb' => 'ZMW',
'ne' => 'ZMW',
'nl' => 'ZMW',
+ 'nn' => 'ZMW',
+ 'or' => 'ZMW',
'pa' => 'ZMW',
'pl' => 'ZMW',
+ 'ps' => 'ZMW',
'pt' => 'ZMW',
'ro' => 'ZMW',
'root' => 'ZK',
'ru' => 'ZMW',
+ 'sd' => 'ZMW',
'si' => 'ZMW',
'sk' => 'ZMW',
'sl' => 'ZMW',
+ 'so' => 'ZMW',
+ 'sq' => 'ZMW',
'sr' => 'ZMW',
'sv' => 'ZMW',
'sw' => 'ZMW',
'ta' => 'ZMW',
'te' => 'ZMW',
'th' => 'ZMW',
+ 'tk' => 'ZMW',
'tr' => 'ZMW',
'uk' => 'ZMW',
'ur' => 'ZMW',
'uz' => 'ZMW',
'vi' => 'ZMW',
+ 'yue' => 'ZMW',
'zh' => 'ZMW',
- ),
-);
+ 'zu' => 'ZMW',
+ ],
+];
diff --git a/MLEB/cldr/CldrNames.php b/MLEB/cldr/CldrNames.php
deleted file mode 100644
index 2e051ccd..00000000
--- a/MLEB/cldr/CldrNames.php
+++ /dev/null
@@ -1,30 +0,0 @@
-<?php
-
-/**
- * A base class for querying translated names from CLDR data.
- *
- * @author Niklas Laxström
- * @author Ryan Kaldari
- * @copyright Copyright © 2007-2012
- * @license http://www.gnu.org/copyleft/gpl.html GNU General Public License 2.0 or later
- */
-class CldrNames {
-
- /**
- * Get the name for the file that contains the CLDR data for a given language
- * @param string $code language code
- * @return string
- */
- public static function getFileName( $code ) {
- return Language::getFileName( "CldrNames", $code, '.php' );
- }
-
- /**
- * Get the name for the file that contains the local override data for a given language
- * @param string $code language code
- * @return string
- */
- public static function getOverrideFileName( $code ) {
- return Language::getFileName( "LocalNames", $code, '.php' );
- }
-}
diff --git a/MLEB/cldr/CldrNames/CldrNamesAa.php b/MLEB/cldr/CldrNames/CldrNamesAa.php
deleted file mode 100644
index fef67da6..00000000
--- a/MLEB/cldr/CldrNames/CldrNamesAa.php
+++ /dev/null
@@ -1,11 +0,0 @@
-<?php
-
-$languageNames = array(
- 'aa' => 'Qafar',
-);
-
-$countryNames = array(
- 'DJ' => 'Yabuuti',
- 'ER' => 'Eretria',
- 'ET' => 'Otobbia',
-);
diff --git a/MLEB/cldr/CldrNames/CldrNamesAf.php b/MLEB/cldr/CldrNames/CldrNamesAf.php
index 1b0de1ff..4a828513 100644
--- a/MLEB/cldr/CldrNames/CldrNamesAf.php
+++ b/MLEB/cldr/CldrNames/CldrNamesAf.php
@@ -1,169 +1,276 @@
<?php
-$languageNames = array(
+$languageNames = [
+ 'aa' => 'Afar',
'ab' => 'Abkasies',
+ 'ace' => 'Atsjenees',
'ach' => 'Akoli',
+ 'ada' => 'Adangme',
+ 'ady' => 'Adyghe',
'af' => 'Afrikaans',
'agq' => 'Aghem',
+ 'ain' => 'Ainu',
'ak' => 'Akan',
+ 'ale' => 'Aleut',
+ 'alt' => 'Suid-Altai',
'am' => 'Amharies',
+ 'an' => 'Aragonees',
+ 'anp' => 'Angika',
'ar' => 'Arabies',
- 'ar-001' => 'Moderne Standaard Arabies',
+ 'ar-001' => 'Moderne Standaardarabies',
'arc' => 'Aramees',
'arn' => 'Mapuche',
+ 'arp' => 'Arapaho',
'as' => 'Assamees',
'asa' => 'Asu',
+ 'ast' => 'Asturies',
+ 'av' => 'Avaries',
+ 'awa' => 'Awadhi',
'ay' => 'Aymara',
'az' => 'Azerbeidjans',
'ba' => 'Baskir',
- 'be' => 'Wit-Russies',
+ 'ban' => 'Balinees',
+ 'bas' => 'Basaa',
+ 'be' => 'Belarussies',
'bem' => 'Bemba',
'bez' => 'Bena',
'bg' => 'Bulgaars',
+ 'bgn' => 'Wes-Balochi',
+ 'bho' => 'Bhojpuri',
+ 'bi' => 'Bislama',
+ 'bin' => 'Bini',
+ 'bla' => 'Siksika',
'bm' => 'Bambara',
'bn' => 'Bengaals',
'bo' => 'Tibettaans',
'br' => 'Bretons',
'brx' => 'Bodo',
'bs' => 'Bosnies',
+ 'bug' => 'Buginees',
+ 'byn' => 'Blin',
'ca' => 'Katalaans',
- 'cgg' => 'Sjiga',
+ 'ce' => 'Tsjetsjeens',
+ 'ceb' => 'Cebuano',
+ 'cgg' => 'Kiga',
+ 'ch' => 'Chamorro',
+ 'chk' => 'Chuukees',
+ 'chm' => 'Mari',
+ 'cho' => 'Choctaw',
'chr' => 'Cherokees',
- 'ckb' => 'Sorani Koerdies',
+ 'chy' => 'Cheyennees',
+ 'ckb' => 'Sorani',
'co' => 'Korsikaans',
'cop' => 'Kopties',
+ 'crs' => 'Seselwa Franskreools',
'cs' => 'Tsjeggies',
'cu' => 'Kerkslawies',
+ 'cv' => 'Chuvash',
'cy' => 'Wallies',
'da' => 'Deens',
+ 'dak' => 'Dakotaans',
+ 'dar' => 'Dakota',
'dav' => 'Taita',
'de' => 'Duits',
'de-ch' => 'Switserse hoog-Duits',
+ 'dgr' => 'Dogrib',
'dje' => 'Zarma',
- 'dsb' => 'Lae Sorbies',
+ 'dsb' => 'Benedesorbies',
'dua' => 'Duala',
'dv' => 'Divehi',
'dyo' => 'Jola-Fonyi',
'dz' => 'Dzongkha',
+ 'dzg' => 'Dazaga',
'ebu' => 'Embu',
'ee' => 'Ewe',
'efi' => 'Efik',
'egy' => 'Antieke Egipties',
+ 'eka' => 'Ekajuk',
'el' => 'Grieks',
'en' => 'Engels',
+ 'en-gb' => 'Engels (VK)',
+ 'en-us' => 'Engels (VSA)',
'eo' => 'Esperanto',
'es' => 'Spaans',
'et' => 'Estnies',
'eu' => 'Baskies',
+ 'ewo' => 'Ewondo',
'fa' => 'Persies',
+ 'ff' => 'Fulah',
'fi' => 'Fins',
'fil' => 'Filippyns',
'fj' => 'Fidjiaans',
- 'fo' => 'Faroees',
+ 'fo' => 'Faroëes',
+ 'fon' => 'Fon',
'fr' => 'Frans',
- 'fy' => 'Wes-Fries',
+ 'fur' => 'Friuliaans',
+ 'fy' => 'Fries',
'ga' => 'Iers',
'gaa' => 'Gaa',
'gag' => 'Gagauz',
+ 'gan' => 'Gan-Sjinees',
'gd' => 'Skotse Gallies',
+ 'gez' => 'Geez',
+ 'gil' => 'Gilbertees',
'gl' => 'Galisies',
'gn' => 'Guarani',
+ 'gor' => 'Gorontalo',
'got' => 'Goties',
'grc' => 'Antieke Grieks',
'gsw' => 'Switserse Duits',
'gu' => 'Goedjarati',
'guz' => 'Gusii',
'gv' => 'Manx',
+ 'gwi' => 'Gwichʼin',
'ha' => 'Hausa',
- 'haw' => 'Hawaiies',
+ 'hak' => 'Hakka-Sjinees',
+ 'haw' => 'Hawais',
'he' => 'Hebreeus',
'hi' => 'Hindi',
+ 'hil' => 'Hiligaynon',
'hit' => 'Hetities',
+ 'hmn' => 'Hmong',
'hr' => 'Kroaties',
- 'hsb' => 'Hoog-Sorbies',
+ 'hsb' => 'Oppersorbies',
+ 'hsn' => 'Xiang-Sjinees',
'ht' => 'Haïtiaans',
'hu' => 'Hongaars',
+ 'hup' => 'Hupa',
'hy' => 'Armeens',
+ 'hz' => 'Herero',
'ia' => 'Interlingua',
+ 'iba' => 'Ibanees',
+ 'ibb' => 'Ibibio',
'id' => 'Indonesies',
'ie' => 'Interlingue',
'ig' => 'Igbo',
'ii' => 'Sichuan Yi',
+ 'ilo' => 'Iloko',
+ 'inh' => 'Ingush',
+ 'io' => 'Ido',
'is' => 'Yslands',
'it' => 'Italiaans',
- 'iu' => 'Innuïties',
+ 'iu' => 'Inuïties',
'ja' => 'Japannees',
+ 'jbo' => 'Lojban',
'jgo' => 'Ngomba',
'jmc' => 'Machame',
'jv' => 'Javaans',
'ka' => 'Georgies',
'kab' => 'Kabyle',
+ 'kac' => 'Kachin',
+ 'kaj' => 'Jju',
'kam' => 'Kamba',
+ 'kbd' => 'Kabardiaans',
+ 'kcg' => 'Tyap',
'kde' => 'Makonde',
'kea' => 'Kabuverdianu',
+ 'kfo' => 'Koro',
'kg' => 'Kongolees',
+ 'kha' => 'Khasi',
'khq' => 'Koyra Chiini',
'ki' => 'Kikuyu',
+ 'kj' => 'Kuanyama',
'kk' => 'Kazaks',
+ 'kkj' => 'Kako',
'kl' => 'Kalaallisut',
'kln' => 'Kalenjin',
'km' => 'Khmer',
+ 'kmb' => 'Kimbundu',
'kn' => 'Kannada',
'ko' => 'Koreaans',
'koi' => 'Komi-Permyaks',
'kok' => 'Konkani',
+ 'kpe' => 'Kpellees',
+ 'kr' => 'Kanuri',
+ 'krc' => 'Karachay-Balkar',
+ 'krl' => 'Karelies',
'kru' => 'Kurukh',
'ks' => 'Kasjmirs',
'ksb' => 'Shambala',
'ksf' => 'Bafia',
+ 'ksh' => 'Keuls',
'ku' => 'Koerdies',
+ 'kum' => 'Kumyk',
+ 'kv' => 'Komi',
'kw' => 'Kornies',
'ky' => 'Kirgisies',
'la' => 'Latyn',
+ 'lad' => 'Ladino',
'lag' => 'Langi',
'lb' => 'Luxemburgs',
+ 'lez' => 'Lezghies',
'lg' => 'Ganda',
'li' => 'Limburgs',
'lkt' => 'Lakota',
'ln' => 'Lingaals',
'lo' => 'Lao',
'loz' => 'Lozi',
+ 'lrc' => 'Noord-Luri',
'lt' => 'Litaus',
'lu' => 'Luba-Katanga',
'lua' => 'Luba-Lulua',
+ 'lun' => 'Lunda',
'luo' => 'Luo',
+ 'lus' => 'Mizo',
'luy' => 'Luyia',
'lv' => 'Letties',
+ 'mad' => 'Madurees',
+ 'mag' => 'Magahi',
+ 'mai' => 'Maithili',
+ 'mak' => 'Makasar',
'mas' => 'Masai',
+ 'mdf' => 'Moksha',
+ 'men' => 'Mende',
'mer' => 'Meru',
'mfe' => 'Morisjen',
'mg' => 'Malgassies',
'mgh' => 'Makhuwa-Meetto',
'mgo' => 'Meta’',
+ 'mh' => 'Marshallees',
'mi' => 'Maori',
+ 'mic' => 'Micmac',
+ 'min' => 'Minangkabaus',
'mk' => 'Masedonies',
'ml' => 'Malabaars',
'mn' => 'Mongools',
+ 'mni' => 'Manipuri',
'moh' => 'Mohawk',
+ 'mos' => 'Mossi',
'mr' => 'Marathi',
'ms' => 'Maleis',
'mt' => 'Maltees',
'mua' => 'Mundang',
- 'mul' => 'Veelvuldige tale',
+ 'mul' => 'Verskeie tale',
+ 'mus' => 'Kreek',
+ 'mwl' => 'Mirandees',
'my' => 'Birmaans',
+ 'myv' => 'Erzya',
+ 'mzn' => 'Masanderani',
+ 'na' => 'Nauru',
+ 'nan' => 'Min Nan-Sjinees',
+ 'nap' => 'Neapolitaans',
'naq' => 'Nama',
- 'nb' => 'Noorse Bokmål',
+ 'nb' => 'Boeknoors',
'nd' => 'Noord-Ndebele',
+ 'nds' => 'Lae Duits',
+ 'nds-nl' => 'Nedersaksies',
'ne' => 'Nepalees',
+ 'new' => 'Newari',
+ 'ng' => 'Ndonga',
+ 'nia' => 'Nias',
+ 'niu' => 'Niueaans',
'nl' => 'Nederlands',
'nl-be' => 'Vlaams',
'nmg' => 'Kwasio',
- 'nn' => 'Noorweegse Nynorsk',
+ 'nn' => 'Nuwe Noors',
+ 'nnh' => 'Ngiemboon',
'no' => 'Noors',
+ 'nog' => 'Nogai',
'nqo' => 'N’Ko',
'nr' => 'Suid-Ndebele',
'nso' => 'Noord-Sotho',
'nus' => 'Nuer',
+ 'nv' => 'Navajo',
'ny' => 'Nyanja',
'nyn' => 'Nyankole',
'oc' => 'Oksitaans',
@@ -171,31 +278,47 @@ $languageNames = array(
'or' => 'Oriya',
'os' => 'Osseties',
'pa' => 'Pandjabi',
+ 'pag' => 'Pangasinan',
+ 'pam' => 'Pampanga',
+ 'pap' => 'Papiamento',
+ 'pau' => 'Palauaans',
+ 'pcm' => 'Nigeriese Pidgin',
'phn' => 'Fenisies',
'pl' => 'Pools',
+ 'prg' => 'Pruisies',
'ps' => 'Pasjto',
'pt' => 'Portugees',
'qu' => 'Quechua',
'quc' => 'K’iche’',
+ 'rap' => 'Rapanui',
+ 'rar' => 'Rarotongaans',
'rm' => 'Reto-Romaans',
'rn' => 'Rundi',
'ro' => 'Roemeens',
- 'ro-md' => 'Moldawies',
'rof' => 'Rombo',
'ru' => 'Russies',
+ 'rup' => 'Aromanies',
'rw' => 'Rwandees',
'rwk' => 'Rwa',
'sa' => 'Sanskrit',
+ 'sad' => 'Sandawees',
+ 'sah' => 'Sakhaans',
'saq' => 'Samburu',
+ 'sat' => 'Santalies',
+ 'sba' => 'Ngambay',
'sbp' => 'Sangu',
+ 'sc' => 'Sardinies',
+ 'scn' => 'Sisiliaans',
'sco' => 'Skots',
'sd' => 'Sindhi',
- 'se' => 'Noordelike Sami',
+ 'sdh' => 'Suid-Koerdies',
+ 'se' => 'Noord-Sami',
'seh' => 'Sena',
'ses' => 'Koyraboro Senni',
'sg' => 'Sango',
'sh' => 'Serwo-Kroaties',
'shi' => 'Tachelhit',
+ 'shn' => 'Shan',
'si' => 'Sinhala',
'sk' => 'Slowaaks',
'sl' => 'Sloweens',
@@ -205,58 +328,83 @@ $languageNames = array(
'smn' => 'Inari Sami',
'sms' => 'Skolt Sami',
'sn' => 'Shona',
+ 'snk' => 'Soninke',
'so' => 'Somalies',
'sq' => 'Albanees',
'sr' => 'Serwies',
+ 'srn' => 'Sranan Tongo',
'ss' => 'Swazi',
+ 'ssy' => 'Saho',
'st' => 'Suid-Sotho',
'su' => 'Sundanees',
+ 'suk' => 'Sukuma',
'sv' => 'Sweeds',
'sw' => 'Swahili',
- 'swb' => 'Shimaorees',
- 'swc' => 'Swahili (Kongo)',
+ 'swb' => 'Comoraans',
+ 'syr' => 'Siries',
'ta' => 'Tamil',
- 'te' => 'Telugu',
+ 'te' => 'Teloegoe',
+ 'tem' => 'Timne',
'teo' => 'Teso',
- 'tet' => 'Tetum',
- 'tg' => 'Tadzjieks',
+ 'tet' => 'Tetoem',
+ 'tg' => 'Tadjiks',
'th' => 'Thai',
'ti' => 'Tigrinya',
+ 'tig' => 'Tigre',
'tk' => 'Turkmeens',
'tlh' => 'Klingon',
'tn' => 'Tswana',
'to' => 'Tongaans',
'tpi' => 'Tok Pisin',
'tr' => 'Turks',
+ 'trv' => 'Taroko',
'ts' => 'Tsonga',
'tt' => 'Tataars',
'tum' => 'Toemboeka',
+ 'tvl' => 'Tuvalu',
'tw' => 'Twi',
'twq' => 'Tasawaq',
'ty' => 'Tahities',
- 'tzm' => 'Sentraal Atlas Tamazight',
+ 'tyv' => 'Tuvinees',
+ 'tzm' => 'Sentraal-Atlas-Tamazight',
+ 'udm' => 'Udmurt',
'ug' => 'Uighur',
'uk' => 'Oekraïens',
+ 'umb' => 'Umbundu',
'und' => 'Onbekende of ongeldige taal',
'ur' => 'Oerdoe',
'uz' => 'Oezbeeks',
'vai' => 'Vai',
've' => 'Venda',
'vi' => 'Viëtnamees',
+ 'vo' => 'Volapük',
'vun' => 'Vunjo',
+ 'wa' => 'Walloon',
+ 'wae' => 'Walser',
+ 'wal' => 'Wolaytta',
+ 'war' => 'Waray',
+ 'wbp' => 'Warlpiri',
'wo' => 'Wolof',
+ 'wuu' => 'Wu-Sjinees',
+ 'xal' => 'Kalmyk',
'xh' => 'Xhosa',
'xog' => 'Soga',
+ 'yav' => 'Yangben',
+ 'ybb' => 'Yemba',
'yi' => 'Jiddisj',
'yo' => 'Yoruba',
'yue' => 'Kantonees',
'zgh' => 'Standaard Marokkaanse Tamazight',
'zh' => 'Sjinees',
+ 'zh-hans' => 'Chinees (Vereenvoudig)',
+ 'zh-hant' => 'Chinees (Tradisioneel)',
'zu' => 'Zoeloe',
- 'zxx' => 'Geen linguistiese inhoud',
-);
+ 'zun' => 'Zuni',
+ 'zxx' => 'Geen taalinhoud nie',
+ 'zza' => 'Zaza',
+];
-$currencyNames = array(
+$currencyNames = [
'AED' => 'Verenigde Arabiese Emirate dirham',
'AFN' => 'Afgaanse afgani',
'ALL' => 'Albanese lek',
@@ -280,12 +428,14 @@ $currencyNames = array(
'BSD' => 'Bahamiaanse dollar',
'BTN' => 'Bhoetanese ngoeltroem',
'BWP' => 'Botswana pula',
- 'BYR' => 'Belo-Russiese roebel',
+ 'BYN' => 'Belo-Russiese roebel',
+ 'BYR' => 'Belo-Russiese roebel (2000–2016)',
'BZD' => 'Beliziese dollar',
'CAD' => 'Kanadese dollar',
'CDF' => 'Kongolese frank',
'CHF' => 'Switserse frank',
'CLP' => 'Chileense peso',
+ 'CNH' => 'Chinese joean',
'CNY' => 'Sjinese joean renminbi',
'COP' => 'Colombiaanse peso',
'CRC' => 'Costa Ricaanse colón',
@@ -300,7 +450,7 @@ $currencyNames = array(
'EGP' => 'Egiptiese pond',
'ERN' => 'Eritrese nakfa',
'ETB' => 'Etiopiese birr',
- 'EUR' => 'Euro',
+ 'EUR' => 'euro',
'FJD' => 'Fidjiaanse dollar',
'FKP' => 'Falkland-eilande pond',
'GBP' => 'Britse pond',
@@ -352,7 +502,8 @@ $currencyNames = array(
'MMK' => 'Mianmese kyat',
'MNT' => 'Mongoolse toegrik',
'MOP' => 'Macaose pataca',
- 'MRO' => 'Mauritaniese ouguiya',
+ 'MRO' => 'Mauritaniese ouguiya (1973–2017)',
+ 'MRU' => 'Mauritaniese ouguiya',
'MUR' => 'Mauritiaanse rupee',
'MVR' => 'Malediviese rufia',
'MWK' => 'Malawiese kwacha',
@@ -368,7 +519,7 @@ $currencyNames = array(
'NZD' => 'Nieu-Seeland dollar',
'OMR' => 'Omaanse rial',
'PAB' => 'Panamese balboa',
- 'PEN' => 'Peruaanse nuwe sol',
+ 'PEN' => 'Peruaanse sol',
'PGK' => 'Papoea-Nieu-Guinese kina',
'PHP' => 'Filippynse peso',
'PKR' => 'Pakistanse roepee',
@@ -391,7 +542,8 @@ $currencyNames = array(
'SOS' => 'Somaliese sjieling',
'SRD' => 'Surinaamse dollar',
'SSP' => 'Suid-Soedanese pond',
- 'STD' => 'São Tomé en Príncipe dobra',
+ 'STD' => 'São Tomé en Príncipe dobra (1977–2017)',
+ 'STN' => 'São Tomé en Príncipe dobra',
'SYP' => 'Siriese pond',
'SZL' => 'Swazilandse lilangeni',
'THB' => 'Thaise baht',
@@ -410,6 +562,7 @@ $currencyNames = array(
'UYU' => 'Uruguaanse peso',
'UZS' => 'Oezbekiese som',
'VEF' => 'Venezolaanse bolivar',
+ 'VES' => 'Venezolaanse Bolívar',
'VND' => 'Viëtnamese dong',
'VUV' => 'Vanuatuse vatu',
'WST' => 'Samoaanse tala',
@@ -417,15 +570,15 @@ $currencyNames = array(
'XCD' => 'Oos-Karibbiese dollar',
'XOF' => 'CFA frank BCEAO',
'XPF' => 'CFP-frank',
- 'XXX' => 'Onbekende geldeenheid',
+ 'XXX' => 'onbekende geldeenheid',
'YER' => 'Jemenitiese rial',
'ZAR' => 'Suid-Afrikaanse rand',
'ZMK' => 'Zambiese kwacha (1968–2012)',
'ZMW' => 'Zambiese kwacha',
'ZWD' => 'Zimbabwiese dollar',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'AED' => 'AED',
'AFN' => 'AFN',
'ALL' => 'ALL',
@@ -449,12 +602,14 @@ $currencySymbols = array(
'BSD' => 'BSD',
'BTN' => 'BTN',
'BWP' => 'BWP',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CA$',
'CDF' => 'CDF',
'CHF' => 'CHF',
'CLP' => 'CLP',
+ 'CNH' => 'CNH',
'CNY' => 'CN¥',
'COP' => 'COP',
'CRC' => 'CRC',
@@ -508,6 +663,7 @@ $currencySymbols = array(
'LKR' => 'LKR',
'LRD' => 'LRD',
'LTL' => 'LTL',
+ 'LVL' => 'LVL',
'LYD' => 'LYD',
'MAD' => 'MAD',
'MDL' => 'MDL',
@@ -554,6 +710,7 @@ $currencySymbols = array(
'SRD' => 'SRD',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'Db',
'SYP' => 'SYP',
'SZL' => 'SZL',
'THB' => '฿',
@@ -571,6 +728,7 @@ $currencySymbols = array(
'UYU' => 'UYU',
'UZS' => 'UZS',
'VEF' => 'VEF',
+ 'VES' => 'VES',
'VND' => '₫',
'VUV' => 'VUV',
'WST' => 'WST',
@@ -581,9 +739,9 @@ $currencySymbols = array(
'YER' => 'YER',
'ZAR' => 'R',
'ZMW' => 'ZMW',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'Ascensioneiland',
'AD' => 'Andorra',
'AE' => 'Verenigde Arabiese Emirate',
@@ -592,11 +750,10 @@ $countryNames = array(
'AI' => 'Anguilla',
'AL' => 'Albanië',
'AM' => 'Armenië',
- 'AN' => 'Nederlands-Antille',
'AO' => 'Angola',
'AQ' => 'Antarktika',
'AR' => 'Argentinië',
- 'AS' => 'Amerikaans-Samoa',
+ 'AS' => 'Amerikaanse Samoa',
'AT' => 'Oostenryk',
'AU' => 'Australië',
'AW' => 'Aruba',
@@ -624,10 +781,10 @@ $countryNames = array(
'BY' => 'Belarus',
'BZ' => 'Belize',
'CA' => 'Kanada',
- 'CC' => 'Kokos-eilande',
+ 'CC' => 'Kokoseilande',
'CD' => 'Demokratiese Republiek van die Kongo',
'CF' => 'Sentraal-Afrikaanse Republiek',
- 'CG' => 'Republiek van die Kongo',
+ 'CG' => 'Kongo - Brazzaville',
'CH' => 'Switserland',
'CI' => 'Ivoorkus',
'CK' => 'Cookeilande',
@@ -642,7 +799,7 @@ $countryNames = array(
'CW' => 'Curaçao',
'CX' => 'Kerseiland',
'CY' => 'Siprus',
- 'CZ' => 'Tjeggiese Republiek',
+ 'CZ' => 'Tsjeggië',
'DE' => 'Duitsland',
'DG' => 'Diego Garcia',
'DJ' => 'Djiboeti',
@@ -659,6 +816,7 @@ $countryNames = array(
'ES' => 'Spanje',
'ET' => 'Ethiopië',
'EU' => 'Europese Unie',
+ 'EZ' => 'Eurosone',
'FI' => 'Finland',
'FJ' => 'Fidji',
'FK' => 'Falklandeilande',
@@ -685,7 +843,7 @@ $countryNames = array(
'GW' => 'Guinee-Bissau',
'GY' => 'Guyana',
'HK' => 'Hongkong',
- 'HM' => 'Heard- en McDonaldeilande',
+ 'HM' => 'Heardeiland en McDonaldeilande',
'HN' => 'Honduras',
'HR' => 'Kroasië',
'HT' => 'Haïti',
@@ -706,11 +864,11 @@ $countryNames = array(
'JO' => 'Jordanië',
'JP' => 'Japan',
'KE' => 'Kenia',
- 'KG' => 'Kirgisië',
+ 'KG' => 'Kirgistan',
'KH' => 'Kambodja',
'KI' => 'Kiribati',
'KM' => 'Comore',
- 'KN' => 'St. Kitts en Nevis',
+ 'KN' => 'Sint Kitts en Nevis',
'KP' => 'Noord-Korea',
'KR' => 'Suid-Korea',
'KW' => 'Koeweit',
@@ -718,7 +876,7 @@ $countryNames = array(
'KZ' => 'Kazakstan',
'LA' => 'Laos',
'LB' => 'Libanon',
- 'LC' => 'St. Lucia',
+ 'LC' => 'Sint Lucia',
'LI' => 'Liechtenstein',
'LK' => 'Sri Lanka',
'LR' => 'Liberië',
@@ -770,7 +928,7 @@ $countryNames = array(
'PH' => 'Filippyne',
'PK' => 'Pakistan',
'PL' => 'Pole',
- 'PM' => 'St. Pierre en Miquelon',
+ 'PM' => 'Sint Pierre en Miquelon',
'PN' => 'Pitcairneilande',
'PR' => 'Puerto Rico',
'PS' => 'Palestina',
@@ -778,7 +936,7 @@ $countryNames = array(
'PW' => 'Palau',
'PY' => 'Paraguay',
'QA' => 'Katar',
- 'QO' => 'Omliggende Oseanië',
+ 'QO' => 'Afgeleë Oseanië',
'RE' => 'Réunion',
'RO' => 'Roemenië',
'RS' => 'Serwië',
@@ -814,7 +972,7 @@ $countryNames = array(
'TJ' => 'Tadjikistan',
'TK' => 'Tokelau',
'TL' => 'Oos-Timor',
- 'TM' => 'Turkmenië',
+ 'TM' => 'Turkmenistan',
'TN' => 'Tunisië',
'TO' => 'Tonga',
'TR' => 'Turkye',
@@ -824,15 +982,16 @@ $countryNames = array(
'TZ' => 'Tanzanië',
'UA' => 'Oekraïne',
'UG' => 'Uganda',
- 'UM' => 'VS klein omliggende eilande',
+ 'UM' => 'Klein afgeleë eilande van die VSA',
+ 'UN' => 'VN',
'US' => 'VSA',
'UY' => 'Uruguay',
'UZ' => 'Oesbekistan',
'VA' => 'Vatikaanstad',
- 'VC' => 'St. Vincent en die Grenadine',
+ 'VC' => 'Sint Vincent en die Grenadine',
'VE' => 'Venezuela',
'VG' => 'Britse Maagde-eilande',
- 'VI' => 'Amerikaanse Maagde-eilande',
+ 'VI' => 'VSA se Maagde-eilande',
'VN' => 'Viëtnam',
'VU' => 'Vanuatu',
'WF' => 'Wallis en Futuna',
@@ -843,11 +1002,13 @@ $countryNames = array(
'ZA' => 'Suid-Afrika',
'ZM' => 'Zambië',
'ZW' => 'Zimbabwe',
-);
+];
-$timeUnits = array(
- 'day-future-one' => 'Oor {0} dag',
- 'day-future-other' => 'Oor {0} dae',
+$timeUnits = [
+ 'century-one' => '{0} eeu',
+ 'century-other' => '{0} eeue',
+ 'day-future-one' => 'oor {0} dag',
+ 'day-future-other' => 'oor {0} dae',
'day-narrow-future-one' => 'oor {0} dag',
'day-narrow-future-other' => 'oor {0} dae',
'day-narrow-past-one' => '{0} dag gelede',
@@ -860,26 +1021,38 @@ $timeUnits = array(
'day-short-future-other' => 'oor {0} dae',
'day-short-past-one' => '{0} dag gelede',
'day-short-past-other' => '{0} dae gelede',
- 'hour-future-one' => 'Oor {0} uur',
- 'hour-future-other' => 'Oor {0} uur',
- 'hour-narrow-future-one' => 'oor {0} uur',
- 'hour-narrow-future-other' => 'oor {0} uur',
- 'hour-narrow-past-one' => '{0} uur gelede',
- 'hour-narrow-past-other' => '{0} uur gelede',
+ 'fri-future-one' => 'oor {0} Vrydag',
+ 'fri-future-other' => 'oor {0} Vrydae',
+ 'fri-narrow-future-one' => 'oor {0} Vr.',
+ 'fri-narrow-future-other' => 'oor {0} Vr.',
+ 'fri-narrow-past-one' => '{0} Vrydae gelede',
+ 'fri-narrow-past-other' => '{0} Vrydae gelede',
+ 'fri-past-one' => '{0} Vrydag gelede',
+ 'fri-past-other' => '{0} Vrydae gelede',
+ 'fri-short-future-one' => 'oor {0} Vr.',
+ 'fri-short-future-other' => 'oor {0} Vr.',
+ 'fri-short-past-one' => '{0} Vr. gelede',
+ 'fri-short-past-other' => '{0} Vr. gelede',
+ 'hour-future-one' => 'oor {0} uur',
+ 'hour-future-other' => 'oor {0} uur',
+ 'hour-narrow-future-one' => 'oor {0} u.',
+ 'hour-narrow-future-other' => 'oor {0} u.',
+ 'hour-narrow-past-one' => '{0} u. gelede',
+ 'hour-narrow-past-other' => '{0} u. gelede',
'hour-one' => '{0} uur',
'hour-other' => '{0} uur',
'hour-past-one' => '{0} uur gelede',
'hour-past-other' => '{0} uur gelede',
- 'hour-short-future-one' => 'oor {0} uur',
- 'hour-short-future-other' => 'oor {0} uur',
- 'hour-short-past-one' => '{0} uur gelede',
- 'hour-short-past-other' => '{0} uur gelede',
+ 'hour-short-future-one' => 'oor {0} u.',
+ 'hour-short-future-other' => 'oor {0} u.',
+ 'hour-short-past-one' => '{0} u. gelede',
+ 'hour-short-past-other' => '{0} u. gelede',
'microsecond-one' => '{0} mikrosekonde',
'microsecond-other' => '{0} mikrosekondes',
'millisecond-one' => '{0} millisekonde',
'millisecond-other' => '{0} millisekondes',
- 'minute-future-one' => 'Oor {0} minuut',
- 'minute-future-other' => 'Oor {0} minute',
+ 'minute-future-one' => 'oor {0} minuut',
+ 'minute-future-other' => 'oor {0} minute',
'minute-narrow-future-one' => 'oor {0} min.',
'minute-narrow-future-other' => 'oor {0} min.',
'minute-narrow-past-one' => '{0} min. gelede',
@@ -892,8 +1065,20 @@ $timeUnits = array(
'minute-short-future-other' => 'oor {0} min.',
'minute-short-past-one' => '{0} min. gelede',
'minute-short-past-other' => '{0} min. gelede',
- 'month-future-one' => 'Oor {0} maand',
- 'month-future-other' => 'Oor {0} maande',
+ 'mon-future-one' => 'oor {0} Maandag',
+ 'mon-future-other' => 'oor {0} Maandae',
+ 'mon-narrow-future-one' => 'oor {0} Ma.',
+ 'mon-narrow-future-other' => 'oor {0} Ma.',
+ 'mon-narrow-past-one' => '{0} Maandae gelede',
+ 'mon-narrow-past-other' => '{0} Maandae gelede',
+ 'mon-past-one' => '{0} Maandag gelede',
+ 'mon-past-other' => '{0} Maandae gelede',
+ 'mon-short-future-one' => 'oor {0} Ma.',
+ 'mon-short-future-other' => 'oor {0} Ma.',
+ 'mon-short-past-one' => '{0} Ma. gelede',
+ 'mon-short-past-other' => '{0} Ma. gelede',
+ 'month-future-one' => 'oor {0} maand',
+ 'month-future-other' => 'oor {0} maande',
'month-narrow-future-one' => 'oor {0} md.',
'month-narrow-future-other' => 'oor {0} md.',
'month-narrow-past-one' => '{0} md. gelede',
@@ -910,32 +1095,92 @@ $timeUnits = array(
'nanosecond-other' => '{0} nanosekondes',
'quarter-future-one' => 'oor {0} kwartaal',
'quarter-future-other' => 'oor {0} kwartale',
- 'quarter-narrow-future-one' => 'oor {0} kwartale',
- 'quarter-narrow-future-other' => 'oor {0} kwartale',
- 'quarter-narrow-past-one' => '{0} kwartale gelede',
- 'quarter-narrow-past-other' => '{0} kwartale gelede',
+ 'quarter-narrow-future-one' => 'oor {0} kw.',
+ 'quarter-narrow-future-other' => 'oor {0} kw.',
+ 'quarter-narrow-past-one' => '{0} kw. gelede',
+ 'quarter-narrow-past-other' => '{0} kw. gelede',
'quarter-past-one' => '{0} kwartaal gelede',
'quarter-past-other' => '{0} kwartale gelede',
- 'quarter-short-future-one' => 'oor {0} kwartaal',
- 'quarter-short-future-other' => 'oor {0} kwartale',
- 'quarter-short-past-one' => '{0} kwartaal gelede',
- 'quarter-short-past-other' => '{0} kwartale gelede',
- 'second-future-one' => 'Oor {0} sekonde',
- 'second-future-other' => 'Oor {0} sekondes',
- 'second-narrow-future-one' => 'oor {0} sek.',
- 'second-narrow-future-other' => 'oor {0} sek.',
- 'second-narrow-past-one' => '{0} sek. gelede',
- 'second-narrow-past-other' => '{0} sek. gelede',
+ 'quarter-short-future-one' => 'oor {0} kw.',
+ 'quarter-short-future-other' => 'oor {0} kw.',
+ 'quarter-short-past-one' => '{0} kw. gelede',
+ 'quarter-short-past-other' => '{0} kw. gelede',
+ 'sat-future-one' => 'oor {0} Saterdag',
+ 'sat-future-other' => 'oor {0} Saterdae',
+ 'sat-narrow-future-one' => 'oor {0} Sa.',
+ 'sat-narrow-future-other' => 'oor {0} Sa.',
+ 'sat-narrow-past-one' => '{0} Saterdae gelede',
+ 'sat-narrow-past-other' => '{0} Saterdae gelede',
+ 'sat-past-one' => '{0} Saterdag gelede',
+ 'sat-past-other' => '{0} Saterdae gelede',
+ 'sat-short-future-one' => 'oor {0} Sa.',
+ 'sat-short-future-other' => 'oor {0} Sa.',
+ 'sat-short-past-one' => '{0} Sa. gelede',
+ 'sat-short-past-other' => '{0} Sa. gelede',
+ 'second-future-one' => 'oor {0} sekonde',
+ 'second-future-other' => 'oor {0} sekondes',
+ 'second-narrow-future-one' => 'oor {0} s.',
+ 'second-narrow-future-other' => 'oor {0} s.',
+ 'second-narrow-past-one' => '{0} s. gelede',
+ 'second-narrow-past-other' => '{0} s. gelede',
'second-one' => '{0} sekonde',
'second-other' => '{0} sekondes',
'second-past-one' => '{0} sekonde gelede',
'second-past-other' => '{0} sekondes gelede',
- 'second-short-future-one' => 'oor {0} sek.',
- 'second-short-future-other' => 'oor {0} sek.',
- 'second-short-past-one' => '{0} sek. gelede',
- 'second-short-past-other' => '{0} sek. gelede',
- 'week-future-one' => 'Oor {0} week',
- 'week-future-other' => 'Oor {0} weke',
+ 'second-short-future-one' => 'oor {0} s.',
+ 'second-short-future-other' => 'oor {0} s.',
+ 'second-short-past-one' => '{0} s. gelede',
+ 'second-short-past-other' => '{0} s. gelede',
+ 'sun-future-one' => 'oor {0} Sondag',
+ 'sun-future-other' => 'oor {0} Sondae',
+ 'sun-narrow-future-one' => 'oor {0} So.',
+ 'sun-narrow-future-other' => 'oor {0} So.',
+ 'sun-narrow-past-one' => '{0} Sondae gelede',
+ 'sun-narrow-past-other' => '{0} Sondae gelede',
+ 'sun-past-one' => '{0} Sondag gelede',
+ 'sun-past-other' => '{0} Sondae gelede',
+ 'sun-short-future-one' => 'oor {0} So.',
+ 'sun-short-future-other' => 'oor {0} So.',
+ 'sun-short-past-one' => '{0} So. gelede',
+ 'sun-short-past-other' => '{0} So. gelede',
+ 'thu-future-one' => 'oor {0} Donderdag',
+ 'thu-future-other' => 'oor {0} Donderdae',
+ 'thu-narrow-future-one' => 'oor {0} Do.',
+ 'thu-narrow-future-other' => 'oor {0} Do.',
+ 'thu-narrow-past-one' => '{0} Donderdae gelede',
+ 'thu-narrow-past-other' => '{0} Donderdae gelede',
+ 'thu-past-one' => '{0} Donderdag gelede',
+ 'thu-past-other' => '{0} Donderdae gelede',
+ 'thu-short-future-one' => 'oor {0} Do.',
+ 'thu-short-future-other' => 'oor {0} Do.',
+ 'thu-short-past-one' => '{0} Do. gelede',
+ 'thu-short-past-other' => '{0} Do. gelede',
+ 'tue-future-one' => 'oor {0} Dinsdag',
+ 'tue-future-other' => 'oor {0} Dinsdae',
+ 'tue-narrow-future-one' => 'oor {0} Di.',
+ 'tue-narrow-future-other' => 'oor {0} Di.',
+ 'tue-narrow-past-one' => '{0} Dinsdae gelede',
+ 'tue-narrow-past-other' => '{0} Dinsdae gelede',
+ 'tue-past-one' => '{0} Dinsdag gelede',
+ 'tue-past-other' => '{0} Dinsdae gelede',
+ 'tue-short-future-one' => 'oor {0} Di.',
+ 'tue-short-future-other' => 'oor {0} Di.',
+ 'tue-short-past-one' => '{0} Di. gelede',
+ 'tue-short-past-other' => '{0} Di. gelede',
+ 'wed-future-one' => 'oor {0} Woensdag',
+ 'wed-future-other' => 'oor {0} Woensdae',
+ 'wed-narrow-future-one' => 'oor {0} Wo.',
+ 'wed-narrow-future-other' => 'oor {0} Wo.',
+ 'wed-narrow-past-one' => '{0} Woensdae gelede',
+ 'wed-narrow-past-other' => '{0} Woensdae gelede',
+ 'wed-past-one' => '{0} Woensdag gelede',
+ 'wed-past-other' => '{0} Woensdae gelede',
+ 'wed-short-future-one' => 'oor {0} Wo.',
+ 'wed-short-future-other' => 'oor {0} Wo.',
+ 'wed-short-past-one' => '{0} Wo. gelede',
+ 'wed-short-past-other' => '{0} Wo. gelede',
+ 'week-future-one' => 'oor {0} week',
+ 'week-future-other' => 'oor {0} weke',
'week-narrow-future-one' => 'oor {0} w.',
'week-narrow-future-other' => 'oor {0} w.',
'week-narrow-past-one' => '{0} w. gelede',
@@ -948,18 +1193,18 @@ $timeUnits = array(
'week-short-future-other' => 'oor {0} w.',
'week-short-past-one' => '{0} w. gelede',
'week-short-past-other' => '{0} w. gelede',
- 'year-future-one' => 'Oor {0} jaar',
- 'year-future-other' => 'Oor {0} jaar',
- 'year-narrow-future-one' => 'Oor {0} jaar',
- 'year-narrow-future-other' => 'Oor {0} jaar',
- 'year-narrow-past-one' => '{0} jaar gelede',
- 'year-narrow-past-other' => '{0} jaar gelede',
+ 'year-future-one' => 'oor {0} jaar',
+ 'year-future-other' => 'oor {0} jaar',
+ 'year-narrow-future-one' => 'oor {0} j.',
+ 'year-narrow-future-other' => 'oor {0} j.',
+ 'year-narrow-past-one' => '{0} j. gelede',
+ 'year-narrow-past-other' => '{0} j. gelede',
'year-one' => '{0} jaar',
'year-other' => '{0} jaar',
'year-past-one' => '{0} jaar gelede',
'year-past-other' => '{0} jaar gelede',
- 'year-short-future-one' => 'Oor {0} jaar',
- 'year-short-future-other' => 'Oor {0} jaar',
- 'year-short-past-one' => '{0} jaar gelede',
- 'year-short-past-other' => '{0} jaar gelede',
-);
+ 'year-short-future-one' => 'oor {0} j.',
+ 'year-short-future-other' => 'oor {0} j.',
+ 'year-short-past-one' => '{0} j. gelede',
+ 'year-short-past-other' => '{0} j. gelede',
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesAk.php b/MLEB/cldr/CldrNames/CldrNamesAk.php
index fdc5a660..b8c911a0 100644
--- a/MLEB/cldr/CldrNames/CldrNamesAk.php
+++ b/MLEB/cldr/CldrNames/CldrNamesAk.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'ak' => 'Akan',
'am' => 'Amarik',
'ar' => 'Arabik',
@@ -45,9 +45,9 @@ $languageNames = array(
'yo' => 'Yoruba',
'zh' => 'Kyaena kasa',
'zu' => 'Zulu',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'AED' => 'Ɛmirete Arab Nkabɔmu Deram',
'AOA' => 'Angola Kwanza',
'AUD' => 'Ɔstrelia Dɔla',
@@ -78,7 +78,8 @@ $currencyNames = array(
'LYD' => 'Libya Dina',
'MAD' => 'Moroko Diram',
'MGA' => 'Madagasi Frank',
- 'MRO' => 'Mɔretenia Ouguiya',
+ 'MRO' => 'Mɔretenia Ouguiya (1973–2017)',
+ 'MRU' => 'Mɔretenia Ouguiya',
'MUR' => 'Mɔrehyeɔs Rupi',
'MWK' => 'Malawi Kwacha',
'MZM' => 'Mozambik Metical',
@@ -92,7 +93,8 @@ $currencyNames = array(
'SHP' => 'St Helena Pɔn',
'SLL' => 'Leone',
'SOS' => 'Somailia Hyelen',
- 'STD' => 'Sao Tome ne Principe Dobra',
+ 'STD' => 'Sao Tome ne Principe Dobra (1977–2017)',
+ 'STN' => 'Sao Tome ne Principe Dobra',
'SZL' => 'Lilangeni',
'TND' => 'Tunisia Dina',
'TZS' => 'Tanzania Hyelen',
@@ -103,13 +105,13 @@ $currencyNames = array(
'ZMK' => 'Zambia Kwacha (1968–2012)',
'ZMW' => 'Zambia Kwacha',
'ZWD' => 'Zimbabwe Dɔla',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'GHS' => 'GH₵',
-);
+];
-$countryNames = array(
+$countryNames = [
'AD' => 'Andora',
'AE' => 'United Arab Emirates',
'AF' => 'Afganistan',
@@ -117,7 +119,6 @@ $countryNames = array(
'AI' => 'Anguila',
'AL' => 'Albenia',
'AM' => 'Aamenia',
- 'AN' => 'Nɛdɛland Antelez',
'AO' => 'Angola',
'AR' => 'Agyɛntina',
'AS' => 'Amɛrika Samoa',
@@ -335,4 +336,4 @@ $countryNames = array(
'ZA' => 'Afrika Anaafo',
'ZM' => 'Zambia',
'ZW' => 'Zembabwe',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesAm.php b/MLEB/cldr/CldrNames/CldrNamesAm.php
index 455fe971..91872236 100644
--- a/MLEB/cldr/CldrNames/CldrNamesAm.php
+++ b/MLEB/cldr/CldrNames/CldrNamesAm.php
@@ -1,54 +1,132 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'አፋርኛ',
'ab' => 'አብሐዚኛ',
+ 'ace' => 'አቻይንኛ',
'ach' => 'አኮሊኛ',
+ 'ada' => 'አዳንግሜ',
+ 'ady' => 'አድይግሄ',
+ 'ae' => 'አቬስታን',
'af' => 'አፍሪካንኛ',
+ 'afh' => 'አፍሪሂሊ',
'agq' => 'አገም',
+ 'ain' => 'አይኑ',
'ak' => 'አካንኛ',
+ 'akk' => 'አካዲያን',
+ 'akz' => 'አላባማ',
+ 'ale' => 'አልዩት',
+ 'alt' => 'ደቡባዊ አልታይ',
'am' => 'አማርኛ',
+ 'an' => 'አራጎንስ',
+ 'anp' => 'አንጊካ',
'ar' => 'ዓረብኛ',
'ar-001' => 'ዘመናዊ መደበኛ ዓረብኛ',
+ 'arc' => 'አራማይክ',
'arn' => 'ማፑቼ',
+ 'aro' => 'አራኦና',
+ 'arp' => 'አራፓሆ',
+ 'arq' => 'የአልጄሪያ ዓረብኛ',
+ 'arw' => 'አራዋክ',
'as' => 'አሳሜዛዊ',
'asa' => 'አሱ',
+ 'ase' => 'የአሜሪካ የምልክት ቋንቋ',
+ 'ast' => 'አስቱሪያን',
+ 'av' => 'አቫሪክ',
+ 'awa' => 'አዋድሂ',
'ay' => 'አያማርኛ',
'az' => 'አዘርባጃንኛ',
'ba' => 'ባስኪርኛ',
+ 'bal' => 'ባሉቺ',
+ 'ban' => 'ባሊኔስ',
+ 'bar' => 'ባቫሪያን',
+ 'bas' => 'ባሳ',
+ 'bax' => 'ባሙን',
+ 'bbc' => 'ባታካ ቶባ',
'be' => 'ቤላራሻኛ',
+ 'bej' => 'ቤጃ',
'bem' => 'ቤምባ',
+ 'bew' => 'ቤታዊ',
'bez' => 'ቤና',
+ 'bfd' => 'ባፉት',
+ 'bfq' => 'ባዳጋ',
'bg' => 'ቡልጋሪኛ',
+ 'bgn' => 'የምዕራብ ባሎቺ',
+ 'bho' => 'ቦጁሪ',
'bi' => 'ቢስላምኛ',
+ 'bik' => 'ቢኮል',
+ 'bin' => 'ቢኒ',
+ 'bjn' => 'ባንጃር',
+ 'bla' => 'ሲክሲካ',
'bm' => 'ባምባርኛ',
'bn' => 'ቤንጋሊኛ',
'bo' => 'ቲቤታንኛ',
+ 'bpy' => 'ቢሹንፑሪያ',
+ 'bqi' => 'ባክህቲያሪ',
'br' => 'ብሬቶንኛ',
+ 'bra' => 'ብራጅ',
+ 'brh' => 'ብራሁዪ',
'brx' => 'ቦዶ',
'bs' => 'ቦስኒያንኛ',
+ 'bss' => 'አኮስ',
+ 'bua' => 'ቡሪያት',
+ 'bug' => 'ቡጊኔዝ',
+ 'bum' => 'ቡሉ',
'byn' => 'ብሊን',
'ca' => 'ካታላንኛ',
+ 'cad' => 'ካዶ',
+ 'car' => 'ካሪብ',
+ 'cay' => 'ካዩጋ',
+ 'cch' => 'አትሳም',
+ 'ce' => 'ችችን',
+ 'ceb' => 'ካቡዋኖ',
'cgg' => 'ቺጋኛ',
+ 'ch' => 'ቻሞሮ',
+ 'chb' => 'ቺብቻ',
+ 'chg' => 'ቻጋታይ',
+ 'chk' => 'ቹክስ',
+ 'chm' => 'ማሪ',
+ 'chn' => 'ቺኑክ ጃርጎን',
+ 'cho' => 'ቾክታዋ',
+ 'chp' => 'ቺፔውያን',
'chr' => 'ቼሮኬኛ',
+ 'chy' => 'ችዬኔ',
'ckb' => 'የሶራኒ ኩርድኛ',
'co' => 'ኮርሲካኛ',
+ 'cop' => 'ኮፕቲክ',
+ 'cps' => 'ካፒዝኖን',
+ 'cr' => 'ክሪ',
+ 'crh' => 'ክሪሚያን ተርኪሽ',
+ 'crs' => 'ሰሰላዊ ክሬኦሊ ፈረንሳይኛ',
'cs' => 'ቼክኛ',
+ 'cu' => 'ቸርች ስላቪክ',
+ 'cv' => 'ቹቫሽ',
'cy' => 'ወልሽ',
'da' => 'ዴኒሽ',
+ 'dak' => 'ዳኮታ',
+ 'dar' => 'ዳርግዋ',
'dav' => 'ታይታኛ',
'de' => 'ጀርመን',
'de-at' => 'የኦስትሪያ ጀርመን',
'de-ch' => 'የስዊዝ ከፍተኛ ጀርመንኛ',
+ 'del' => 'ዳላዌር',
+ 'dgr' => 'ዶግሪብ',
+ 'din' => 'ዲንካ',
'dje' => 'ዛርማኛ',
- 'dsb' => 'የታችኛው ሶርቢያንኛ',
+ 'doi' => 'ዶግሪ',
+ 'dsb' => 'የታችኛው ሰርቢያንኛ',
+ 'dtp' => 'ሴንተራል ዱሰን',
'dua' => 'ዱዋላኛ',
- 'dv' => 'ዲቬህ',
+ 'dv' => 'ዲቬሂ',
'dyo' => 'ጆላ ፎንያኛ',
+ 'dyu' => 'ድዩላ',
'dz' => 'ድዞንግኻኛ',
+ 'dzg' => 'ዳዛጋ',
'ebu' => 'ኢቦኛ',
'ee' => 'ኢዊ',
'efi' => 'ኤፊክ',
+ 'egy' => 'የጥንታዊ ግብጽኛ',
+ 'eka' => 'ኤካጁክ',
'el' => 'ግሪክኛ',
'en' => 'እንግሊዝኛ',
'en-au' => 'የአውስትራሊያ እንግሊዝኛ',
@@ -56,150 +134,248 @@ $languageNames = array(
'en-gb' => 'የብሪቲሽ እንግሊዝኛ',
'en-us' => 'የአሜሪካ እንግሊዝኛ',
'eo' => 'ኤስፐራንቶ',
- 'es' => 'ስፓኒሽ',
+ 'es' => 'ስፓንሽኛ',
'es-419' => 'የላቲን አሜሪካ ስፓኒሽ',
- 'es-es' => 'የአውሮፓ እስፓንኛ',
+ 'es-es' => 'የአውሮፓ ስፓንሽኛ',
+ 'es-mx' => 'የሜክሲኮ ስፓንሽኛ',
+ 'esu' => 'ሴንተራል ዩፒክ',
'et' => 'ኢስቶኒያንኛ',
'eu' => 'ባስክኛ',
+ 'ewo' => 'ኤዎንዶ',
'fa' => 'ፐርሺያኛ',
+ 'ff' => 'ፉላህ',
'fi' => 'ፊኒሽ',
'fil' => 'ፊሊፒንኛ',
'fj' => 'ፊጂኛ',
'fo' => 'ፋሮኛ',
+ 'fon' => 'ፎን',
'fr' => 'ፈረንሳይኛ',
'fr-ca' => 'የካናዳ ፈረንሳይኛ',
'fr-ch' => 'የስዊዝ ፈረንሳይኛ',
- 'fy' => 'የምዕራብ ፍሪስኛ',
+ 'frc' => 'ካጁን ፍሬንች',
+ 'frp' => 'አርፒታን',
+ 'fur' => 'ፍሩሊያን',
+ 'fy' => 'ምዕራባዊ ፍሪሲኛ',
'ga' => 'አይሪሽ',
'gaa' => 'ጋ',
'gag' => 'ጋጉዝኛ',
- 'gd' => 'እስኮትስ ጌልክኛ',
+ 'gan' => 'ጋን ቻይንኛ',
+ 'gd' => 'የስኮቲሽ ጌልክኛ',
'gez' => 'ግዕዝኛ',
+ 'gil' => 'ጅልበርትስ',
'gl' => 'ጋሊሺያ',
'gn' => 'ጓራኒኛ',
+ 'gor' => 'ጎሮንታሎ',
+ 'grc' => 'የጥንታዊ ግሪክ',
'gsw' => 'የስዊዝ ጀርመን',
'gu' => 'ጉጃርቲኛ',
'guz' => 'ጉስሊኛ',
'gv' => 'ማንክስኛ',
+ 'gwi' => 'ግዊቺን',
'ha' => 'ሃውሳኛ',
+ 'hak' => 'ሃካ ቻይንኛ',
'haw' => 'ሃዊያኛ',
- 'he' => 'ዕብራስጥ',
+ 'he' => 'ዕብራይስጥ',
'hi' => 'ሒንዱኛ',
+ 'hil' => 'ሂሊጋይኖን',
+ 'hmn' => 'ህሞንግ',
'hr' => 'ክሮሽያንኛ',
'hsb' => 'የላይኛው ሶርቢያንኛ',
+ 'hsn' => 'ዢያንግ ቻይንኛ',
'ht' => 'ሃይትኛ',
'hu' => 'ሀንጋሪኛ',
+ 'hup' => 'ሁፓ',
'hy' => 'አርመናዊ',
+ 'hz' => 'ሄሬሮ',
'ia' => 'ኢንቴርሊንጓ',
+ 'iba' => 'ኢባን',
+ 'ibb' => 'ኢቢቦ',
'id' => 'ኢንዶኔዥኛ',
'ie' => 'እንተርሊንግወ',
'ig' => 'ኢግቦኛ',
'ii' => 'ሲቹንዪኛ',
'ik' => 'እኑፒያቅኛ',
+ 'ilo' => 'ኢሎኮ',
+ 'inh' => 'ኢንጉሽ',
+ 'io' => 'ኢዶ',
'is' => 'አይስላንድኛ',
'it' => 'ጣሊያንኛ',
'iu' => 'እኑክቲቱትኛ',
'ja' => 'ጃፓንኛ',
+ 'jbo' => 'ሎጅባን',
'jgo' => 'ንጎባኛ',
'jmc' => 'ማቻሜኛ',
'jv' => 'ጃቫንኛ',
'ka' => 'ጆርጂያን',
'kab' => 'ካብይል',
+ 'kac' => 'ካቺን',
+ 'kaj' => 'ካጅ',
'kam' => 'ካምባ',
+ 'kbd' => 'ካባርዲያን',
+ 'kcg' => 'ታያፕ',
'kde' => 'ማኮንዴ',
'kea' => 'ካቡቨርዲያኑ',
+ 'kfo' => 'ኮሮ',
'kg' => 'ኮንጎኛ',
+ 'kha' => 'ክሃሲ',
'khq' => 'ኮይራ ቺኒ',
'ki' => 'ኪኩዩ',
+ 'kj' => 'ኩንያማ',
'kk' => 'ካዛክኛ',
+ 'kkj' => 'ካኮ',
'kl' => 'ካላሊሱትኛ',
'kln' => 'ካለንጂን',
- 'km' => 'ክመርኛ ማእከላዊ',
+ 'km' => 'ክህመርኛ',
+ 'kmb' => 'ኪምቡንዱ',
'kn' => 'ካናዳኛ',
'ko' => 'ኮሪያኛ',
'koi' => 'ኮሚ ፔርምያክ',
- 'kok' => 'ኮካኒ',
+ 'kok' => 'ኮንካኒ',
+ 'kpe' => 'ክፔሌ',
+ 'kr' => 'ካኑሪ',
+ 'krc' => 'ካራቻይ-ባልካር',
+ 'krl' => 'ካረሊኛ',
+ 'kru' => 'ኩሩክ',
'ks' => 'ካሽሚርኛ',
'ksb' => 'ሻምባላ',
'ksf' => 'ባፊያ',
+ 'ksh' => 'ኮሎኝኛ',
'ku' => 'ኩርድሽኛ',
+ 'kum' => 'ኩማይክ',
+ 'kv' => 'ኮሚ',
'kw' => 'ኮርኒሽ',
'ky' => 'ኪርጊዝኛ',
'la' => 'ላቲንኛ',
+ 'lad' => 'ላዲኖ',
'lag' => 'ላንጊ',
- 'lb' => 'ሉክዘምበርገርኛ',
+ 'lb' => 'ሉክዘምበርኛ',
+ 'lez' => 'ሌዝጊያን',
'lg' => 'ጋንዳኛ',
+ 'li' => 'ሊምቡርጊሽ',
'lkt' => 'ላኮታ',
'ln' => 'ሊንጋላኛ',
- 'lo' => 'ላውስኛ',
+ 'lo' => 'ላኦኛ',
'loz' => 'ሎዚኛ',
+ 'lrc' => 'ሰሜናዊ ሉሪ',
'lt' => 'ሉቴንያንኛ',
'lu' => 'ሉባ ካታንጋ',
'lua' => 'ሉባ-ሉሏ',
+ 'lun' => 'ሉንዳ',
'luo' => 'ሉኦ',
+ 'lus' => 'ሚዞ',
'luy' => 'ሉዪያ',
'lv' => 'ላትቪያን',
+ 'mad' => 'ማዱረስ',
+ 'mag' => 'ማጋሂ',
+ 'mai' => 'ማይተሊ',
+ 'mak' => 'ማካሳር',
'mas' => 'ማሳይ',
+ 'mdf' => 'ሞክሻ',
+ 'men' => 'ሜንዴ',
'mer' => 'ሜሩ',
'mfe' => 'ሞሪሲየኛ',
'mg' => 'ማላጋስኛ',
'mgh' => 'ማኩዋ ሜቶ',
'mgo' => 'ሜታ',
- 'mi' => 'ማዮሪኛ',
+ 'mh' => 'ማርሻሌዝኛ',
+ 'mi' => 'ማኦሪኛ',
+ 'mic' => 'ሚክማክ',
+ 'min' => 'ሚናንግካባኡ',
'mk' => 'ማሴዶንኛ',
'ml' => 'ማላያላምኛ',
- 'mn' => 'ሞንጎላዊኛ',
+ 'mn' => 'ሞንጎሊያኛ',
+ 'mni' => 'ማኒፑሪ',
'moh' => 'ሞሃውክ',
+ 'mos' => 'ሞሲ',
'mr' => 'ማራቲኛ',
'ms' => 'ማላይኛ',
'mt' => 'ማልቲስኛ',
'mua' => 'ሙንዳንግ',
+ 'mul' => 'ባለብዙ ቋንቋዎች',
+ 'mus' => 'ክሪክ',
+ 'mwl' => 'ሚራንዴዝኛ',
'my' => 'ቡርማኛ',
+ 'myv' => 'ኤርዝያ',
+ 'mzn' => 'ማዛንደራኒ',
'na' => 'ናኡሩ',
+ 'nan' => 'ሚን ኛን ቻይንኛ',
+ 'nap' => 'ኒአፖሊታን',
'naq' => 'ናማ',
'nb' => 'የኖርዌይ ቦክማል',
'nd' => 'ሰሜን ንዴብሌ',
+ 'nds' => 'የታችኛው ጀርመን',
+ 'nds-nl' => 'የታችኛው ሳክሰን',
'ne' => 'ኔፓሊኛ',
+ 'new' => 'ኒዋሪ(ኔፓል)',
+ 'ng' => 'ንዶንጋ',
+ 'nia' => 'ኒአስ',
+ 'niu' => 'ኒዩአንኛ',
+ 'njo' => 'ኦ ናጋ',
'nl' => 'ደች',
'nl-be' => 'ፍሌሚሽ',
'nmg' => 'ክዋሲዮ',
'nn' => 'የኖርዌይ ናይኖርስክ',
+ 'nnh' => 'ኒጊምቡን',
'no' => 'ኖርዌጂያን',
+ 'nog' => 'ኖጋይ',
'nqo' => 'ንኮ',
+ 'nr' => 'ደቡብ ንደቤሌ',
'nso' => 'ሰሜናዊ ሶቶ',
'nus' => 'ኑዌር',
+ 'nv' => 'ናቫጆ',
+ 'nwc' => 'ክላሲክ ኔዋሪ',
'ny' => 'ንያንጃ',
'nyn' => 'ኒያንኮልኛ',
'oc' => 'ኦኪታንኛ',
'om' => 'ኦሮሞኛ',
- 'or' => 'ኦሪያኛ',
+ 'or' => 'ኦዲያኛ',
'os' => 'ኦሴቲክ',
'pa' => 'ፑንጃብኛ',
+ 'pag' => 'ፓንጋሲናንኛ',
+ 'pam' => 'ፓምፓንጋ',
+ 'pap' => 'ፓፒአሜንቶ',
+ 'pau' => 'ፓላኡአን',
+ 'pcm' => 'የናይጄሪያ ፒጂን',
'pl' => 'ፖሊሽኛ',
+ 'prg' => 'ፐሩሳንኛ',
'ps' => 'ፓሽቶኛ',
'pt' => 'ፖርቹጋልኛ',
'pt-br' => 'የብራዚል ፖርቹጋልኛ',
'pt-pt' => 'የአውሮፓ ፖርቹጋልኛ',
'qu' => 'ኵቿኛ',
'quc' => 'ኪቼ',
+ 'qug' => 'ቺምቦራዞ ሃይላንድ ኩቹዋ',
+ 'rap' => 'ራፓኑኢ',
+ 'rar' => 'ራሮቶንጋ',
'rm' => 'ሮማንሽ',
'rn' => 'ሩንዲኛ',
'ro' => 'ሮማኒያን',
- 'ro-md' => 'ሞልዳቫዊና',
+ 'ro-md' => 'ሞልዳቪያንኛ',
'rof' => 'ሮምቦ',
- 'ru' => 'ራሽኛ',
+ 'ru' => 'ራሽያኛ',
+ 'rup' => 'አሮማንያን',
'rw' => 'ኪንያርዋንድኛ',
'rwk' => 'ርዋ',
'sa' => 'ሳንስክሪትኛ',
+ 'sad' => 'ሳንዳዌ',
+ 'sah' => 'ሳክሃ',
'saq' => 'ሳምቡሩ',
+ 'sat' => 'ሳንታሊ',
+ 'sba' => 'ንጋምባይ',
'sbp' => 'ሳንጉ',
+ 'sc' => 'ሳርዲንያንኛ',
+ 'scn' => 'ሲሲሊያንኛ',
+ 'sco' => 'ስኮትስ',
'sd' => 'ሲንድሂኛ',
+ 'sdh' => 'ደቡባዊ ኩርዲሽ',
'se' => 'ሰሜናዊ ሳሚ',
'seh' => 'ሴና',
'ses' => 'ኮይራቦሮ ሴኒ',
'sg' => 'ሳንጎኛ',
'sh' => 'ሰርቦ-ክሮኤሽያኛ',
'shi' => 'ታቼልሂት',
+ 'shn' => 'ሻን',
+ 'shu' => 'ቻዲያን ዓረብኛ',
'si' => 'ሲንሃልኛ',
'sid' => 'ሲዳምኛ',
'sk' => 'ስሎቫክኛ',
@@ -210,63 +386,89 @@ $languageNames = array(
'smn' => 'ኢናሪ ሳሚ',
'sms' => 'ስኮልት ሳሚ',
'sn' => 'ሾናኛ',
+ 'snk' => 'ሶኒንኬ',
'so' => 'ሱማልኛ',
- 'sq' => 'ልቤኒኛ',
- 'sr' => 'ሰርቢኛ',
+ 'sq' => 'አልባንያንኛ',
+ 'sr' => 'ሰርብያኛ',
+ 'srn' => 'ስራናን ቶንጎ',
'ss' => 'ስዋቲኛ',
- 'st' => 'ሶዞኛ',
+ 'ssy' => 'ሳሆኛ',
+ 'st' => 'ደቡባዊ ሶቶ',
'su' => 'ሱዳንኛ',
+ 'suk' => 'ሱኩማ',
'sv' => 'ስዊድንኛ',
'sw' => 'ስዋሂሊኛ',
- 'swc' => 'ኮንጎ ስዋሂሊ',
+ 'sw-cd' => 'ኮንጎ ስዋሂሊ',
+ 'swb' => 'ኮሞሪያን',
+ 'syc' => 'ክላሲክ ኔይራ',
+ 'syr' => 'ሲሪያክ',
'ta' => 'ታሚልኛ',
'te' => 'ተሉጉኛ',
+ 'tem' => 'ቲምኔ',
'teo' => 'ቴሶ',
'tet' => 'ቴተም',
'tg' => 'ታጂኪኛ',
'th' => 'ታይኛ',
'ti' => 'ትግርኛ',
'tig' => 'ትግረ',
- 'tk' => 'ቱርክመንኛ',
+ 'tk' => 'ቱርክሜንኛ',
'tl' => 'ታጋሎገኛ',
'tlh' => 'ክሊንጎንኛ',
'tn' => 'ጽዋናዊኛ',
'to' => 'ቶንጋኛ',
'tpi' => 'ቶክ ፒሲን',
'tr' => 'ቱርክኛ',
+ 'trv' => 'ታሮኮ',
'ts' => 'ጾንጋኛ',
'tt' => 'ታታርኛ',
'tum' => 'ቱምቡካ',
+ 'tvl' => 'ቱቫሉ',
'tw' => 'ትዊኛ',
'twq' => 'ታሳዋቅ',
'ty' => 'ታሂታንኛ',
- 'tzm' => 'መካከለኛ አትላስ ታማዚግት',
+ 'tyv' => 'ቱቪንያንኛ',
+ 'tzm' => 'መካከለኛው አትላስ ታማዚኛ',
+ 'udm' => 'ኡድሙርት',
'ug' => 'ኡዊግሁርኛ',
'uk' => 'ዩክሬንኛ',
+ 'umb' => 'ኡምቡንዱ',
'und' => 'ያልታወቀ ቋንቋ',
'ur' => 'ኡርዱኛ',
'uz' => 'ኡዝቤክኛ',
'vai' => 'ቫይ',
've' => 'ቬንዳ',
- 'vi' => 'ቪትናምኛ',
+ 'vi' => 'ቪየትናምኛ',
'vo' => 'ቮላፑክኛ',
'vun' => 'ቩንጆ',
+ 'wa' => 'ዋሎን',
+ 'wae' => 'ዋልሰር',
+ 'wal' => 'ወላይትኛ',
+ 'war' => 'ዋራይ',
+ 'wbp' => 'ዋርልፒሪ',
'wo' => 'ዎሎፍኛ',
+ 'wuu' => 'ዉ ቻይንኛ',
+ 'xal' => 'ካልማይክ',
'xh' => 'ዞሳኛ',
'xog' => 'ሶጋ',
+ 'yav' => 'ያንግቤንኛ',
+ 'ybb' => 'የምባ',
'yi' => 'ይዲሽኛ',
'yo' => 'ዮሩባዊኛ',
+ 'yue' => 'ካንቶኒዝ',
'za' => 'ዡዋንግኛ',
+ 'zbl' => 'ብሊስይምቦልስ',
'zgh' => 'መደበኛ የሞሮኮ ታማዚግት',
'zh' => 'ቻይንኛ',
'zh-hans' => 'ቀለል ያለ ቻይንኛ',
'zh-hant' => 'ባህላዊ ቻይንኛ',
'zu' => 'ዙሉኛ',
+ 'zun' => 'ዙኒ',
'zxx' => 'ቋንቋዊ ይዘት አይደለም',
-);
+ 'zza' => 'ዛዛ',
+];
-$currencyNames = array(
- 'AED' => 'የተባበሩት የአረብ ኤምረትስ ዲርሀም',
+$currencyNames = [
+ 'AED' => 'የተባበሩት የአረብ ኤምሬትስ ድርሀም',
'AFN' => 'የአፍጋን አፍጋኒ',
'ALL' => 'የአልባንያ ሌክ',
'AMD' => 'የአርመን ድራም',
@@ -289,12 +491,14 @@ $currencyNames = array(
'BSD' => 'የባሃማስ ዶላር',
'BTN' => 'ብሁታኒዝ ንጉልትረም',
'BWP' => 'የቦትስዋና ፑላ',
- 'BYR' => 'የቤላሩስያ ሩብል',
+ 'BYN' => 'የቤላሩስያ ሩብል',
+ 'BYR' => 'የቤላሩስያ ሩብል (2000–2016)',
'BZD' => 'የቤሊዝ ዶላር',
'CAD' => 'የካናዳ ዶላር',
'CDF' => 'የኮንጐ ፍራንክ ኮንጐሌዝ',
'CHF' => 'የስዊስ ፍራንክ',
'CLP' => 'የቺሊ ፔሶ',
+ 'CNH' => 'የቻይና ዩዋን (የውጭ ምንዛሪ)',
'CNY' => 'የቻይና የን',
'COP' => 'የኮሎምቢያ ፔሶ',
'CRC' => 'የኮስታሪካ ኮሎን',
@@ -323,9 +527,9 @@ $currencyNames = array(
'GYD' => 'የጉየና ዶላር',
'HKD' => 'የሆንግኮንግ ዶላር',
'HNL' => 'የሃንዱራ ሌምፓአይራ',
- 'HRK' => 'የክሮሽያ ኩና',
+ 'HRK' => 'HRK',
'HTG' => 'የሃያቲ ጓርዴ',
- 'HUF' => 'የሁንጋሪ ፎሪንት',
+ 'HUF' => 'የሃንጋሪያን ፎሪንት',
'IDR' => 'የኢንዶኔዥያ ሩፒሃ',
'ILS' => 'የእስራኤል አዲስ ሽቅል',
'INR' => 'የሕንድ ሩፒ',
@@ -356,10 +560,11 @@ $currencyNames = array(
'MDL' => 'ሞልዶቫን ሊኡ',
'MGA' => 'የማደጋስካር ማላጋስይ አሪያርይ',
'MKD' => 'የሜቆድንያ ዲናር',
- 'MMK' => 'ምያንማ ክያት',
+ 'MMK' => 'የማያናማር ክያት',
'MNT' => 'የሞንጎሊያን ቱግሪክ',
'MOP' => 'የማካኔዝ ፓታካ',
- 'MRO' => 'የሞሪቴኒያ ኦውጉያ',
+ 'MRO' => 'የሞሪቴኒያ ኦውጉያ (1973–2017)',
+ 'MRU' => 'የሞሪቴኒያ ኦውጉያ',
'MUR' => 'የሞሪሸስ ሩፒ',
'MVR' => 'የማልዲቫ ሩፊያ',
'MWK' => 'የማላዊ ኩዋቻ',
@@ -374,7 +579,7 @@ $currencyNames = array(
'NZD' => 'የኒውዚላንድ ዶላር',
'OMR' => 'የኦማን ሪአል',
'PAB' => 'ፓናማኒአን ባልቦአ',
- 'PEN' => 'የፔሩቪያ ኑኤቮ ሶል',
+ 'PEN' => 'የፔሩቪያ ሶል',
'PGK' => 'የፓፕዋ ኒው ጊኒ ኪና',
'PHP' => 'የፊሊፒንስ ፔሶ',
'PKR' => 'የፓኪስታን ሩፒ',
@@ -388,8 +593,8 @@ $currencyNames = array(
'SAR' => 'የሳውዲ ሪያል',
'SBD' => 'የሰለሞን ደሴቶች ዶላር',
'SCR' => 'የሲሼል ሩፒ',
- 'SDG' => 'የሱዳን ዲናር',
- 'SDP' => 'የሱዳን ፓውንድ',
+ 'SDG' => 'የሱዳን ፓውንድ',
+ 'SDP' => 'የሱዳን ፓውንድ (1957–1998)',
'SEK' => 'የስዊድን ክሮና',
'SGD' => 'የሲንጋፖር ዶላር',
'SHP' => 'የሴይንት ሔሌና ፓውንድ',
@@ -397,7 +602,8 @@ $currencyNames = array(
'SOS' => 'የሶማሌ ሺሊንግ',
'SRD' => 'የሰርናሜዝ ዶላር',
'SSP' => 'የደቡብ ሱዳን ፓውንድ',
- 'STD' => 'የሳኦ ቶመ እና ፕሪንሲፐ ዶብራ',
+ 'STD' => 'የሳኦ ቶሜ እና ፕሪንሲፔ ዶብራ (1977–2017)',
+ 'STN' => 'የሳኦ ቶሜ እና ፕሪንሲፔ ዶብራ',
'SYP' => 'የሲሪያ ፓውንድ',
'SZL' => 'የስዋዚላንድ ሊላንገኒ',
'THB' => 'የታይላንድ ባህት',
@@ -414,13 +620,14 @@ $currencyNames = array(
'USD' => 'የአሜሪካን ዶላር',
'UYU' => 'የኡራጓይ ፔሶ',
'UZS' => 'የኡዝፔኪስታን ሶም',
- 'VEF' => 'የቬንዝዌላ ቦሊቫር',
+ 'VEF' => 'የቬንዝዌላ ቦሊቫር (2008–2018)',
+ 'VES' => 'የቬንዝዌላ-ቦሊቫር',
'VND' => 'የቭየትናም ዶንግ',
'VUV' => 'የቫንዋንቱ ቫቱ',
'WST' => 'ሳሞአን ታላ',
- 'XAF' => 'ሴኤፍአ ፍራንክ ቤእአሴ',
+ 'XAF' => 'የመካከለኛው አፍሪካ ሴፋ ፍራንክ',
'XCD' => 'የምዕራብ ካሪብያን ዶላር',
- 'XOF' => 'ሴኤፍአ ፍራንክ ቤሴእአኦ',
+ 'XOF' => 'የምዕራብ አፍሪካ ሴፋ ፍራንክ',
'XPF' => 'ሲ ኤፍ ፒ ፍራንክ',
'XXX' => 'ያልታወቀ ገንዘብ',
'YER' => 'የየመን ሪአል',
@@ -428,9 +635,9 @@ $currencyNames = array(
'ZMK' => 'የዛምቢያ ክዋቻ (1968–2012)',
'ZMW' => 'የዛምቢያ ክዋቻ',
'ZWD' => 'የዚምቧቡዌ ዶላር',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'AED' => 'AED',
'AFN' => 'AFN',
'ALL' => 'ALL',
@@ -454,12 +661,14 @@ $currencySymbols = array(
'BSD' => 'BSD',
'BTN' => 'BTN',
'BWP' => 'BWP',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CA$',
'CDF' => 'CDF',
'CHF' => 'CHF',
'CLP' => 'CLP',
+ 'CNH' => 'የቻይና ዩዋን',
'CNY' => 'CN¥',
'COP' => 'COP',
'CRC' => 'CRC',
@@ -523,6 +732,7 @@ $currencySymbols = array(
'MNT' => 'MNT',
'MOP' => 'MOP',
'MRO' => 'MRO',
+ 'MRU' => 'MRU',
'MUR' => 'MUR',
'MVR' => 'MVR',
'MWK' => 'MWK',
@@ -560,6 +770,7 @@ $currencySymbols = array(
'SRD' => 'SRD',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'STN',
'SYP' => 'SYP',
'SZL' => 'SZL',
'THB' => '฿',
@@ -577,6 +788,7 @@ $currencySymbols = array(
'UYU' => 'UYU',
'UZS' => 'UZS',
'VEF' => 'VEF',
+ 'VES' => 'VES',
'VND' => '₫',
'VUV' => 'VUV',
'WST' => 'WST',
@@ -586,19 +798,19 @@ $currencySymbols = array(
'XPF' => 'CFPF',
'YER' => 'YER',
'ZAR' => 'ZAR',
+ 'ZMK' => 'ZMK',
'ZMW' => 'ZMW',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'አሴንሽን ደሴት',
'AD' => 'አንዶራ',
- 'AE' => 'የተባበሩት አረብ ኤምሬትስ',
+ 'AE' => 'የተባበሩት ዓረብ ኤምሬትስ',
'AF' => 'አፍጋኒስታን',
'AG' => 'አንቲጓ እና ባሩዳ',
- 'AI' => 'አንጉኢላ',
+ 'AI' => 'አንጉይላ',
'AL' => 'አልባኒያ',
'AM' => 'አርሜኒያ',
- 'AN' => 'ኔዘርላንድስ አንቲልስ',
'AO' => 'አንጐላ',
'AQ' => 'አንታርክቲካ',
'AR' => 'አርጀንቲና',
@@ -628,7 +840,7 @@ $countryNames = array(
'BV' => 'ቡቬት ደሴት',
'BW' => 'ቦትስዋና',
'BY' => 'ቤላሩስ',
- 'BZ' => 'ቤሊዘ',
+ 'BZ' => 'በሊዝ',
'CA' => 'ካናዳ',
'CC' => 'ኮኮስ(ኬሊንግ) ደሴቶች',
'CD' => 'ኮንጎ-ኪንሻሳ',
@@ -642,19 +854,19 @@ $countryNames = array(
'CN' => 'ቻይና',
'CO' => 'ኮሎምቢያ',
'CP' => 'ክሊፐርቶን ደሴት',
- 'CR' => 'ኮስታ ሪካ',
+ 'CR' => 'ኮስታሪካ',
'CU' => 'ኩባ',
'CV' => 'ኬፕ ቬርዴ',
'CW' => 'ኩራሳዎ',
- 'CX' => 'የገና ደሴት',
+ 'CX' => 'ክሪስማስ ደሴት',
'CY' => 'ሳይፕረስ',
- 'CZ' => 'ቼክ ሪፑብሊክ',
+ 'CZ' => 'ቼቺያ',
'DE' => 'ጀርመን',
'DG' => 'ዲዬጎ ጋርሺያ',
'DJ' => 'ጂቡቲ',
'DK' => 'ዴንማርክ',
'DM' => 'ዶሚኒካ',
- 'DO' => 'ዶሚኒክ ሪፑብሊክ',
+ 'DO' => 'ዶመኒካን ሪፑብሊክ',
'DZ' => 'አልጄሪያ',
'EA' => 'ሴኡታና ሜሊላ',
'EC' => 'ኢኳዶር',
@@ -665,6 +877,7 @@ $countryNames = array(
'ES' => 'ስፔን',
'ET' => 'ኢትዮጵያ',
'EU' => 'የአውሮፓ ህብረት',
+ 'EZ' => 'የአውሮፓ ዞን',
'FI' => 'ፊንላንድ',
'FJ' => 'ፊጂ',
'FK' => 'የፎክላንድ ደሴቶች',
@@ -672,7 +885,7 @@ $countryNames = array(
'FO' => 'የፋሮ ደሴቶች',
'FR' => 'ፈረንሳይ',
'GA' => 'ጋቦን',
- 'GB' => 'ዩናይትድ ኪንግደም',
+ 'GB' => 'ዩኬ',
'GD' => 'ግሬናዳ',
'GE' => 'ጆርጂያ',
'GF' => 'የፈረንሳይ ጉዊአና',
@@ -763,7 +976,7 @@ $countryNames = array(
'NG' => 'ናይጄሪያ',
'NI' => 'ኒካራጓ',
'NL' => 'ኔዘርላንድ',
- 'NO' => 'ኖርዌ',
+ 'NO' => 'ኖርዌይ',
'NP' => 'ኔፓል',
'NR' => 'ናኡሩ',
'NU' => 'ኒኡይ',
@@ -788,7 +1001,7 @@ $countryNames = array(
'RE' => 'ሪዩኒየን',
'RO' => 'ሮሜኒያ',
'RS' => 'ሰርብያ',
- 'RU' => 'ራሺያ',
+ 'RU' => 'ሩስያ',
'RW' => 'ሩዋንዳ',
'SA' => 'ሳውድአረቢያ',
'SB' => 'ሰሎሞን ደሴት',
@@ -819,7 +1032,7 @@ $countryNames = array(
'TH' => 'ታይላንድ',
'TJ' => 'ታጃኪስታን',
'TK' => 'ቶክላው',
- 'TL' => 'ምስራቅ ሌስት',
+ 'TL' => 'ቲሞር ሌስቴ',
'TM' => 'ቱርክሜኒስታን',
'TN' => 'ቱኒዚያ',
'TO' => 'ቶንጋ',
@@ -831,6 +1044,7 @@ $countryNames = array(
'UA' => 'ዩክሬን',
'UG' => 'ዩጋንዳ',
'UM' => 'የዩ ኤስ ጠረፍ ላይ ያሉ ደሴቶች',
+ 'UN' => 'የተመ',
'US' => 'ዩ ኤስ',
'UY' => 'ኡራጓይ',
'UZ' => 'ኡዝቤኪስታን',
@@ -849,9 +1063,11 @@ $countryNames = array(
'ZA' => 'ደቡብ አፍሪካ',
'ZM' => 'ዛምቢያ',
'ZW' => 'ዚምቧቤ',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-one' => '{0} ምዕተ ዓመት',
+ 'century-other' => '{0} ምዕተ ዓመት',
'day-future-one' => 'በ{0} ቀን ውስጥ',
'day-future-other' => 'በ{0} ቀናት ውስጥ',
'day-narrow-future-one' => 'በ{0} ቀን ውስጥ',
@@ -866,6 +1082,18 @@ $timeUnits = array(
'day-short-future-other' => 'በ{0} ቀኖች ውስጥ',
'day-short-past-one' => 'ከ {0} ቀን በፊት',
'day-short-past-other' => 'ከ{0} ቀኖች በፊት',
+ 'fri-future-one' => 'በ{0} ዓርብ ውስጥ',
+ 'fri-future-other' => 'በ{0} ዓርብዎች ውስጥ',
+ 'fri-narrow-future-one' => 'በ{0} ዓርብዎች ውስጥ',
+ 'fri-narrow-future-other' => 'በ{0} ዓርብዎች ውስጥ',
+ 'fri-narrow-past-one' => 'ከ{0} ዓርብዎች በፊት',
+ 'fri-narrow-past-other' => 'ከ{0} ዓርብዎች በፊት',
+ 'fri-past-one' => 'ከ{0} ዓርብ በፊት',
+ 'fri-past-other' => 'ከ{0} ዓርብዎች በፊት',
+ 'fri-short-future-one' => 'በ{0} ዓርብዎች ውስጥ',
+ 'fri-short-future-other' => 'በ{0} ዓርብዎች ውስጥ',
+ 'fri-short-past-one' => 'ከ{0} ዓርብዎች በፊት',
+ 'fri-short-past-other' => 'ከ{0} ዓርብዎች በፊት',
'hour-future-one' => 'በ{0} ሰዓት ውስጥ',
'hour-future-other' => 'በ{0} ሰዓቶች ውስጥ',
'hour-narrow-future-one' => 'በ{0} ሰዓት ውስጥ',
@@ -898,6 +1126,18 @@ $timeUnits = array(
'minute-short-future-other' => 'በ{0} ደቂቃዎች ውስጥ',
'minute-short-past-one' => 'ከ{0} ደቂቃ በፊት',
'minute-short-past-other' => 'ከ{0} ደቂቃዎች በፊት',
+ 'mon-future-one' => 'በ{0} ሰኞ ውስጥ',
+ 'mon-future-other' => 'በ{0} ሰኞዎች ውስጥ',
+ 'mon-narrow-future-one' => 'በ{0} ሰኞዎች ውስጥ',
+ 'mon-narrow-future-other' => 'በ{0} ሰኞዎች ውስጥ',
+ 'mon-narrow-past-one' => 'ከ{0} ሰኞዎች በፊት',
+ 'mon-narrow-past-other' => 'ከ{0} ሰኞዎች በፊት',
+ 'mon-past-one' => 'ከ{0} ሰኞ በፊት',
+ 'mon-past-other' => 'ከ{0} ሰኞዎች በፊት',
+ 'mon-short-future-one' => 'በ{0} ሰኞዎች ውስጥ',
+ 'mon-short-future-other' => 'በ{0} ሰኞዎች ውስጥ',
+ 'mon-short-past-one' => 'ከ{0} ሰኞዎች በፊት',
+ 'mon-short-past-other' => 'ከ{0} ሰኞዎች በፊት',
'month-future-one' => 'በ{0} ወር ውስጥ',
'month-future-other' => 'በ{0} ወራት ውስጥ',
'month-narrow-future-one' => 'በ{0} ወራት ውስጥ',
@@ -918,14 +1158,26 @@ $timeUnits = array(
'quarter-future-other' => '+{0} ሩብ',
'quarter-narrow-future-one' => '+{0} ሩብ',
'quarter-narrow-future-other' => '+{0} ሩብ',
- 'quarter-narrow-past-one' => '-{0} Q ሩብ',
- 'quarter-narrow-past-other' => '-{0} Q ሩብ',
- 'quarter-past-one' => '-{0} Q ሩብ',
- 'quarter-past-other' => '-{0} Q ሩብ',
+ 'quarter-narrow-past-one' => '{0} ሩብ በፊት',
+ 'quarter-narrow-past-other' => '{0} ሩብ በፊት',
+ 'quarter-past-one' => '{0} ሩብ በፊት',
+ 'quarter-past-other' => '{0} ሩብ በፊት',
'quarter-short-future-one' => '+{0} ሩብ',
'quarter-short-future-other' => '+{0} ሩብ',
- 'quarter-short-past-one' => '-{0} Q ሩብ',
- 'quarter-short-past-other' => '-{0} Q ሩብ',
+ 'quarter-short-past-one' => '{0} ሩብ በፊት',
+ 'quarter-short-past-other' => '{0} ሩብ በፊት',
+ 'sat-future-one' => 'በ{0} ቅዳሜ ውስጥ',
+ 'sat-future-other' => 'በ{0} ቅዳሜዎች ውስጥ',
+ 'sat-narrow-future-one' => 'በ{0} ቅዳሜዎች ውስጥ',
+ 'sat-narrow-future-other' => 'በ{0} ቅዳሜዎች ውስጥ',
+ 'sat-narrow-past-one' => 'ከ{0} ቅዳሜዎች በፊት',
+ 'sat-narrow-past-other' => 'ከ{0} ቅዳሜዎች በፊት',
+ 'sat-past-one' => 'ከ{0} ቅዳሜ በፊት',
+ 'sat-past-other' => 'ከ{0} ቅዳሜዎች በፊት',
+ 'sat-short-future-one' => 'በ{0} ቅዳሜዎች ውስጥ',
+ 'sat-short-future-other' => 'በ{0} ቅዳሜዎች ውስጥ',
+ 'sat-short-past-one' => 'ከ{0} ቅዳሜዎች በፊት',
+ 'sat-short-past-other' => 'ከ{0} ቅዳሜዎች በፊት',
'second-future-one' => 'በ{0} ሰከንድ ውስጥ',
'second-future-other' => 'በ{0} ሰከንዶች ውስጥ',
'second-narrow-future-one' => 'በ{0} ሰከንድ ውስጥ',
@@ -940,6 +1192,54 @@ $timeUnits = array(
'second-short-future-other' => 'በ{0} ሰከንዶች ውስጥ',
'second-short-past-one' => 'ከ{0} ሰከንድ በፊት',
'second-short-past-other' => 'ከ{0} ሰከንዶች በፊት',
+ 'sun-future-one' => 'በ{0} እሑድ ውስጥ',
+ 'sun-future-other' => 'በ{0} እሑዶች ውስጥ',
+ 'sun-narrow-future-one' => 'በ{0} እሑዶች ውስጥ',
+ 'sun-narrow-future-other' => 'በ{0} እሑዶች ውስጥ',
+ 'sun-narrow-past-one' => 'ከ{0} እሑዶች በፊት',
+ 'sun-narrow-past-other' => 'ከ{0} እሑዶች በፊት',
+ 'sun-past-one' => 'ከ{0} እሑድ በፊት',
+ 'sun-past-other' => 'ከ{0} እሑዶች በፊት',
+ 'sun-short-future-one' => 'በ{0} እሑዶች ውስጥ',
+ 'sun-short-future-other' => 'በ{0} እሑዶች ውስጥ',
+ 'sun-short-past-one' => 'ከ{0} እሑዶች በፊት',
+ 'sun-short-past-other' => 'ከ{0} እሑዶች በፊት',
+ 'thu-future-one' => 'በ{0} ሐሙስ ውስጥ',
+ 'thu-future-other' => 'በ{0} ሐሙሶች ውስጥ',
+ 'thu-narrow-future-one' => 'በ{0} ሐሙሶች ውስጥ',
+ 'thu-narrow-future-other' => 'በ{0} ሐሙሶች ውስጥ',
+ 'thu-narrow-past-one' => 'ከ{0} ሐሙሶች በፊት',
+ 'thu-narrow-past-other' => 'ከ{0} ሐሙሶች በፊት',
+ 'thu-past-one' => 'ከ{0} ሐሙስ በፊት',
+ 'thu-past-other' => 'ከ{0} ሐሙሶች በፊት',
+ 'thu-short-future-one' => 'በ{0} ሐሙሶች ውስጥ',
+ 'thu-short-future-other' => 'በ{0} ሐሙሶች ውስጥ',
+ 'thu-short-past-one' => 'ከ{0} ሐሙሶች በፊት',
+ 'thu-short-past-other' => 'ከ{0} ሐሙሶች በፊት',
+ 'tue-future-one' => 'በ{0} ማክሰኞ ውስጥ',
+ 'tue-future-other' => 'በ{0} ማክሰኞዎች ውስጥ',
+ 'tue-narrow-future-one' => 'በ{0} ማክሰኞዎች ውስጥ',
+ 'tue-narrow-future-other' => 'በ{0} ማክሰኞዎች ውስጥ',
+ 'tue-narrow-past-one' => 'ከ{0} ማክሰኞዎች በፊት',
+ 'tue-narrow-past-other' => 'ከ{0} ማክሰኞዎች በፊት',
+ 'tue-past-one' => 'ከ{0} ማክሰኞ በፊት',
+ 'tue-past-other' => 'ከ{0} ማክሰኞዎች በፊት',
+ 'tue-short-future-one' => 'በ{0} ማክሰኞዎች ውስጥ',
+ 'tue-short-future-other' => 'በ{0} ማክሰኞዎች ውስጥ',
+ 'tue-short-past-one' => 'ከ{0} ማክሰኞዎች በፊት',
+ 'tue-short-past-other' => 'ከ{0} ማክሰኞዎች በፊት',
+ 'wed-future-one' => 'በ{0} ረቡዕ ውስጥ',
+ 'wed-future-other' => 'በ{0} ረቡዕዎች ውስጥ',
+ 'wed-narrow-future-one' => 'በ{0} ረቡዕዎች ውስጥ',
+ 'wed-narrow-future-other' => 'በ{0} ረቡዕዎች ውስጥ',
+ 'wed-narrow-past-one' => 'ከ{0} ረቡዕዎች በፊት',
+ 'wed-narrow-past-other' => 'ከ{0} ረቡዕዎች በፊት',
+ 'wed-past-one' => 'ከ{0} ረቡዕ በፊት',
+ 'wed-past-other' => 'ከ{0} ረቡዕዎች በፊት',
+ 'wed-short-future-one' => 'በ{0} ረቡዕዎች ውስጥ',
+ 'wed-short-future-other' => 'በ{0} ረቡዕዎች ውስጥ',
+ 'wed-short-past-one' => 'ከ{0} ረቡዕዎች በፊት',
+ 'wed-short-past-other' => 'ከ{0} ረቡዕዎች በፊት',
'week-future-one' => 'በ{0} ሳምንት ውስጥ',
'week-future-other' => 'በ{0} ሳምንታት ውስጥ',
'week-narrow-future-one' => 'በ{0} ሳምንታት ውስጥ',
@@ -960,7 +1260,7 @@ $timeUnits = array(
'year-narrow-future-other' => 'በ{0} ዓመታት ውስጥ',
'year-narrow-past-one' => 'ከ{0} ዓመታት በፊት',
'year-narrow-past-other' => 'ከ{0} ዓመታት በፊት',
- 'year-one' => '{0} ዓመታት',
+ 'year-one' => '{0} ዓመት',
'year-other' => '{0} ዓመታት',
'year-past-one' => 'ከ{0} ዓመት በፊት',
'year-past-other' => 'ከ{0} ዓመታት በፊት',
@@ -968,4 +1268,4 @@ $timeUnits = array(
'year-short-future-other' => 'በ{0} ዓመታት ውስጥ',
'year-short-past-one' => 'ከ{0} ዓመታት በፊት',
'year-short-past-other' => 'ከ{0} ዓመታት በፊት',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesAr.php b/MLEB/cldr/CldrNames/CldrNamesAr.php
index daee1962..66ffb3a4 100644
--- a/MLEB/cldr/CldrNames/CldrNamesAr.php
+++ b/MLEB/cldr/CldrNames/CldrNamesAr.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'الأفارية',
'ab' => 'الأبخازية',
'ace' => 'الأتشينيزية',
@@ -23,8 +23,9 @@ $languageNames = array(
'ar' => 'العربية',
'ar-001' => 'العربية الرسمية الحديثة',
'arc' => 'الآرامية',
- 'arn' => 'الأروكانية',
+ 'arn' => 'المابودونغونية',
'arp' => 'الأراباهو',
+ 'ars' => 'اللهجة النجدية',
'arw' => 'الأراواكية',
'as' => 'الأسامية',
'asa' => 'الآسو',
@@ -35,7 +36,7 @@ $languageNames = array(
'az' => 'الأذربيجانية',
'ba' => 'الباشكيرية',
'bal' => 'البلوشية',
- 'ban' => 'اللغة البالية',
+ 'ban' => 'البالينية',
'bas' => 'الباسا',
'bax' => 'بامن',
'bbj' => 'لغة الغومالا',
@@ -45,6 +46,7 @@ $languageNames = array(
'bez' => 'بينا',
'bfd' => 'لغة البافوت',
'bg' => 'البلغارية',
+ 'bgn' => 'البلوشية الغربية',
'bho' => 'البهوجبورية',
'bi' => 'البيسلامية',
'bik' => 'البيكولية',
@@ -70,7 +72,7 @@ $languageNames = array(
'cay' => 'الكايوجية',
'cch' => 'الأتسام',
'ce' => 'الشيشانية',
- 'ceb' => 'السيبونية',
+ 'ceb' => 'السيبيوانية',
'cgg' => 'تشيغا',
'ch' => 'التشامورو',
'chb' => 'التشيبشا',
@@ -87,12 +89,13 @@ $languageNames = array(
'cop' => 'القبطية',
'cr' => 'الكرى',
'crh' => 'لغة تتار القرم',
+ 'crs' => 'الفرنسية الكريولية السيشيلية',
'cs' => 'التشيكية',
'csb' => 'الكاشبايان',
'cu' => 'سلافية كنسية',
'cv' => 'التشوفاشي',
- 'cy' => 'الولزية',
- 'da' => 'الدانماركية',
+ 'cy' => 'الويلزية',
+ 'da' => 'الدانمركية',
'dak' => 'الداكوتا',
'dar' => 'الدارجوا',
'dav' => 'تيتا',
@@ -105,7 +108,7 @@ $languageNames = array(
'din' => 'الدنكا',
'dje' => 'الزارمية',
'doi' => 'الدوجرية',
- 'dsb' => 'الصربية السفلى',
+ 'dsb' => 'صوربيا السفلى',
'dua' => 'الديولا',
'dum' => 'الهولندية الوسطى',
'dv' => 'المالديفية',
@@ -124,7 +127,7 @@ $languageNames = array(
'en-au' => 'الإنجليزية الأسترالية',
'en-ca' => 'الإنجليزية الكندية',
'en-gb' => 'الإنجليزية البريطانية',
- 'en-us' => 'الإنجليزية الولايات المتحدة',
+ 'en-us' => 'الإنجليزية الأمريكية',
'enm' => 'الإنجليزية الوسطى',
'eo' => 'الإسبرانتو',
'es' => 'الإسبانية',
@@ -132,20 +135,21 @@ $languageNames = array(
'es-es' => 'الإسبانية الأوروبية',
'es-mx' => 'الإسبانية المكسيكية',
'et' => 'الإستونية',
- 'eu' => 'لغة الباسك',
+ 'eu' => 'الباسكية',
'ewo' => 'الإيوندو',
'fa' => 'الفارسية',
'fan' => 'الفانج',
'fat' => 'الفانتي',
- 'ff' => 'الفلة',
+ 'ff' => 'الفولانية',
'fi' => 'الفنلندية',
'fil' => 'الفلبينية',
'fj' => 'الفيجية',
- 'fo' => 'الفارويز',
+ 'fo' => 'الفاروية',
'fon' => 'الفون',
'fr' => 'الفرنسية',
'fr-ca' => 'الفرنسية الكندية',
'fr-ch' => 'الفرنسية السويسرية',
+ 'frc' => 'الفرنسية الكاجونية',
'frm' => 'الفرنسية الوسطى',
'fro' => 'الفرنسية القديمة',
'frr' => 'الفريزينية الشمالية',
@@ -155,6 +159,7 @@ $languageNames = array(
'ga' => 'الأيرلندية',
'gaa' => 'الجا',
'gag' => 'الغاغوز',
+ 'gan' => 'الغان الصينية',
'gay' => 'الجايو',
'gba' => 'الجبيا',
'gd' => 'الغيلية الأسكتلندية',
@@ -162,7 +167,7 @@ $languageNames = array(
'gil' => 'لغة أهل جبل طارق',
'gl' => 'الجاليكية',
'gmh' => 'الألمانية العليا الوسطى',
- 'gn' => 'الجواراني',
+ 'gn' => 'الغوارانية',
'goh' => 'الألمانية العليا القديمة',
'gon' => 'الجندي',
'gor' => 'الجورونتالو',
@@ -176,7 +181,8 @@ $languageNames = array(
'gwi' => 'غوتشن',
'ha' => 'الهوسا',
'hai' => 'الهيدا',
- 'haw' => 'لغة أهل الهاواي',
+ 'hak' => 'الهاكا الصينية',
+ 'haw' => 'لغة هاواي',
'he' => 'العبرية',
'hi' => 'الهندية',
'hil' => 'الهيليجينون',
@@ -184,15 +190,16 @@ $languageNames = array(
'hmn' => 'الهمونجية',
'ho' => 'الهيري موتو',
'hr' => 'الكرواتية',
- 'hsb' => 'الصربية العليا',
- 'ht' => 'الهايتية',
+ 'hsb' => 'الصوربية العليا',
+ 'hsn' => 'شيانغ الصينية',
+ 'ht' => 'الكريولية الهايتية',
'hu' => 'الهنغارية',
'hup' => 'الهبا',
- 'hy' => 'الأرمينية',
+ 'hy' => 'الأرمنية',
'hz' => 'الهيريرو',
'ia' => 'اللّغة الوسيطة',
'iba' => 'الإيبان',
- 'ibb' => 'الإيبيبيوية',
+ 'ibb' => 'الإيبيبيو',
'id' => 'الإندونيسية',
'ie' => 'الإنترلينج',
'ig' => 'الإيجبو',
@@ -201,7 +208,7 @@ $languageNames = array(
'ilo' => 'الإيلوكو',
'inh' => 'الإنجوشية',
'io' => 'الإيدو',
- 'is' => 'الأيسلاندية',
+ 'is' => 'الأيسلندية',
'it' => 'الإيطالية',
'iu' => 'الإينكتيتت',
'ja' => 'اليابانية',
@@ -231,6 +238,7 @@ $languageNames = array(
'ki' => 'الكيكيو',
'kj' => 'الكيونياما',
'kk' => 'الكازاخستانية',
+ 'kkj' => 'لغة الكاكو',
'kl' => 'الكالاليست',
'kln' => 'كالينجين',
'km' => 'الخميرية',
@@ -241,7 +249,7 @@ $languageNames = array(
'kok' => 'الكونكانية',
'kos' => 'الكوسراين',
'kpe' => 'الكبيل',
- 'kr' => 'الكانيوري',
+ 'kr' => 'الكانوري',
'krc' => 'الكاراتشاي-بالكار',
'krl' => 'الكاريلية',
'kru' => 'الكوروخ',
@@ -254,23 +262,25 @@ $languageNames = array(
'kut' => 'الكتيناي',
'kv' => 'الكومي',
'kw' => 'الكورنية',
- 'ky' => 'القرغيزية',
+ 'ky' => 'القيرغيزية',
'la' => 'اللاتينية',
'lad' => 'اللادينو',
'lag' => 'لانجي',
'lah' => 'اللاهندا',
'lam' => 'اللامبا',
- 'lb' => 'اللوكسمبرجية',
+ 'lb' => 'اللكسمبورغية',
'lez' => 'الليزجية',
- 'lg' => 'الجاندا',
- 'li' => 'الليمبرجيشية',
+ 'lg' => 'الغاندا',
+ 'li' => 'الليمبورغية',
'lkt' => 'لاكوتا',
'ln' => 'اللينجالا',
'lo' => 'اللاوية',
'lol' => 'منغولى',
+ 'lou' => 'الكريولية اللويزيانية',
'loz' => 'اللوزي',
- 'lt' => 'اللتوانية',
- 'lu' => 'اللبا-كاتانجا',
+ 'lrc' => 'اللرية الشمالية',
+ 'lt' => 'الليتوانية',
+ 'lu' => 'اللوبا كاتانغا',
'lua' => 'اللبا-لؤلؤ',
'lui' => 'اللوسينو',
'lun' => 'اللوندا',
@@ -290,7 +300,7 @@ $languageNames = array(
'men' => 'الميند',
'mer' => 'الميرو',
'mfe' => 'المورسيانية',
- 'mg' => 'المالاجاشية',
+ 'mg' => 'الملغاشي',
'mga' => 'الأيرلندية الوسطى',
'mgh' => 'ماخاوا-ميتو',
'mgo' => 'ميتا',
@@ -299,14 +309,14 @@ $languageNames = array(
'mic' => 'الميكماكيونية',
'min' => 'المينانجكاباو',
'mk' => 'المقدونية',
- 'ml' => 'الماليالام',
+ 'ml' => 'المالايالامية',
'mn' => 'المنغولية',
'mnc' => 'المانشو',
'mni' => 'المانيبورية',
'moh' => 'الموهوك',
'mos' => 'الموسي',
- 'mr' => 'الماراثي',
- 'ms' => 'لغة الملايو',
+ 'mr' => 'الماراثية',
+ 'ms' => 'الماليزية',
'mt' => 'المالطية',
'mua' => 'مندنج',
'mul' => 'لغات متعددة',
@@ -315,12 +325,15 @@ $languageNames = array(
'mwr' => 'الماروارية',
'my' => 'البورمية',
'myv' => 'الأرزية',
+ 'mzn' => 'المازندرانية',
'na' => 'النورو',
- 'nap' => 'اللغة النابولية',
+ 'nan' => 'مين-نان الصينية',
+ 'nap' => 'النابولية',
'naq' => 'لغة الناما',
- 'nb' => 'البوكمالية النرويجية',
- 'nd' => 'النديبيل الشمالي',
+ 'nb' => 'النرويجية بوكمال',
+ 'nd' => 'النديبيل الشمالية',
'nds' => 'الألمانية السفلى',
+ 'nds-nl' => 'السكسونية السفلى',
'ne' => 'النيبالية',
'new' => 'النوارية',
'ng' => 'الندونجا',
@@ -329,7 +342,7 @@ $languageNames = array(
'nl' => 'الهولندية',
'nl-be' => 'الفلمنكية',
'nmg' => 'كواسيو',
- 'nn' => 'النينورسك النرويجي',
+ 'nn' => 'النرويجية نينورسك',
'nnh' => 'لغة النجيمبون',
'no' => 'النرويجية',
'nog' => 'النوجاي',
@@ -345,10 +358,10 @@ $languageNames = array(
'nyn' => 'النيانكول',
'nyo' => 'النيورو',
'nzi' => 'النزيما',
- 'oc' => 'الأوكيتانية',
+ 'oc' => 'الأوكسيتانية',
'oj' => 'الأوجيبوا',
- 'om' => 'الأورومو',
- 'or' => 'الأورييا',
+ 'om' => 'الأورومية',
+ 'or' => 'الأورية',
'os' => 'الأوسيتيك',
'osa' => 'الأوساج',
'ota' => 'التركية العثمانية',
@@ -358,18 +371,20 @@ $languageNames = array(
'pam' => 'البامبانجا',
'pap' => 'البابيامينتو',
'pau' => 'البالوان',
+ 'pcm' => 'البدجنية النيجيرية',
'peo' => 'الفارسية القديمة',
'phn' => 'الفينيقية',
'pi' => 'البالية',
'pl' => 'البولندية',
'pon' => 'البوهنبيايان',
+ 'prg' => 'البروسياوية',
'pro' => 'البروفانسية القديمة',
- 'ps' => 'البشتونية',
+ 'ps' => 'البشتو',
'pt' => 'البرتغالية',
'pt-br' => 'البرتغالية البرازيلية',
'pt-pt' => 'البرتغالية الأوروبية',
'qu' => 'الكويتشوا',
- 'quc' => 'كيشي',
+ 'quc' => 'الكيشية',
'raj' => 'الراجاسثانية',
'rap' => 'الراباني',
'rar' => 'الراروتونجاني',
@@ -378,25 +393,26 @@ $languageNames = array(
'ro' => 'الرومانية',
'ro-md' => 'المولدوفية',
'rof' => 'الرومبو',
- 'rom' => 'غجري',
+ 'rom' => 'الغجرية',
'ru' => 'الروسية',
'rup' => 'الأرومانيان',
'rw' => 'الكينيارواندا',
'rwk' => 'الروا',
'sa' => 'السنسكريتية',
'sad' => 'السانداوي',
- 'sah' => 'الساخية',
+ 'sah' => 'الساخيّة',
'sam' => 'الآرامية السامرية',
'saq' => 'سامبورو',
'sas' => 'الساساك',
- 'sat' => 'السانتالي',
+ 'sat' => 'السانتالية',
'sba' => 'نامبي',
'sbp' => 'سانغو',
'sc' => 'السردينية',
'scn' => 'الصقلية',
'sco' => 'الأسكتلندية',
'sd' => 'السندية',
- 'se' => 'السامي الشمالي',
+ 'sdh' => 'الكردية الجنوبية',
+ 'se' => 'سامي الشمالية',
'see' => 'السنيكا',
'seh' => 'سينا',
'sel' => 'السيلكب',
@@ -405,7 +421,7 @@ $languageNames = array(
'sga' => 'الأيرلندية القديمة',
'sh' => 'صربية-كرواتية',
'shi' => 'تشلحيت',
- 'shn' => 'الشانية',
+ 'shn' => 'الشان',
'shu' => 'العربية التشادية',
'si' => 'السنهالية',
'sid' => 'السيدامو',
@@ -433,12 +449,12 @@ $languageNames = array(
'sux' => 'السومارية',
'sv' => 'السويدية',
'sw' => 'السواحلية',
+ 'sw-cd' => 'الكونغو السواحلية',
'swb' => 'القمرية',
- 'swc' => 'لغة الكونغو السواحلية',
'syc' => 'سريانية تقليدية',
'syr' => 'السريانية',
'ta' => 'التاميلية',
- 'te' => 'التيلجو',
+ 'te' => 'التيلوغوية',
'tem' => 'التيمن',
'teo' => 'تيسو',
'ter' => 'التيرينو',
@@ -446,7 +462,7 @@ $languageNames = array(
'tg' => 'الطاجيكية',
'th' => 'التايلاندية',
'ti' => 'التغرينية',
- 'tig' => 'التغرية',
+ 'tig' => 'التيغرية',
'tiv' => 'التيف',
'tk' => 'التركمانية',
'tkl' => 'التوكيلاو',
@@ -462,7 +478,7 @@ $languageNames = array(
'trv' => 'لغة التاروكو',
'ts' => 'السونجا',
'tsi' => 'التسيمشيان',
- 'tt' => 'التتارية',
+ 'tt' => 'التترية',
'tum' => 'التامبوكا',
'tvl' => 'التوفالو',
'tw' => 'التوي',
@@ -471,12 +487,12 @@ $languageNames = array(
'tyv' => 'التوفية',
'tzm' => 'الأمازيغية وسط الأطلس',
'udm' => 'الأدمرت',
- 'ug' => 'الأغورية',
+ 'ug' => 'الأويغورية',
'uga' => 'اليجاريتيك',
'uk' => 'الأوكرانية',
'umb' => 'الأمبندو',
'und' => 'لغة غير معروفة',
- 'ur' => 'الأردية',
+ 'ur' => 'الأوردية',
'uz' => 'الأوزبكية',
'vai' => 'الفاي',
've' => 'الفيندا',
@@ -489,7 +505,9 @@ $languageNames = array(
'wal' => 'الولاياتا',
'war' => 'الواراي',
'was' => 'الواشو',
- 'wo' => 'الولوف',
+ 'wbp' => 'وارلبيري',
+ 'wo' => 'الولوفية',
+ 'wuu' => 'الوو الصينية',
'xal' => 'الكالميك',
'xh' => 'الخوسا',
'xog' => 'السوغا',
@@ -498,7 +516,7 @@ $languageNames = array(
'yav' => 'يانجبن',
'ybb' => 'يمبا',
'yi' => 'اليديشية',
- 'yo' => 'اليوروبية',
+ 'yo' => 'اليوروبا',
'yue' => 'الكَنْتُونية',
'za' => 'الزهيونج',
'zap' => 'الزابوتيك',
@@ -512,17 +530,17 @@ $languageNames = array(
'zun' => 'الزونية',
'zxx' => 'بدون محتوى لغوي',
'zza' => 'زازا',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'ADP' => 'بيستا أندوري',
'AED' => 'درهم إماراتي',
'AFA' => 'أفغاني - 1927-2002',
'AFN' => 'أفغاني',
'ALL' => 'ليك ألباني',
'AMD' => 'درام أرميني',
- 'ANG' => 'غيلدر هولندي أنتيلي',
- 'AOA' => 'كوانزا أنجولي',
+ 'ANG' => 'غيلدر أنتيلي هولندي',
+ 'AOA' => 'كوانزا أنغولي',
'AOK' => 'كوانزا أنجولي - 1977-1990',
'AON' => 'كوانزا أنجولي جديدة - 1990-2000',
'AOR' => 'كوانزا أنجولي معدلة - 1995 - 1999',
@@ -537,7 +555,7 @@ $currencyNames = array(
'BAD' => 'دينار البوسنة والهرسك',
'BAM' => 'مارك البوسنة والهرسك قابل للتحويل',
'BBD' => 'دولار بربادوسي',
- 'BDT' => 'تاكا بنجلاديشي',
+ 'BDT' => 'تاكا بنغلاديشي',
'BEC' => 'فرنك بلجيكي قابل للتحويل',
'BEF' => 'فرنك بلجيكي',
'BEL' => 'فرنك بلجيكي مالي',
@@ -558,26 +576,28 @@ $currencyNames = array(
'BUK' => 'كيات بورمي',
'BWP' => 'بولا بتسواني',
'BYB' => 'روبل بيلاروسي جديد - 1994-1999',
- 'BYR' => 'روبل بيلاروسي',
+ 'BYN' => 'روبل بيلاروسي',
+ 'BYR' => 'روبل بيلاروسي (٢٠٠٠–٢٠١٦)',
'BZD' => 'دولار بليزي',
'CAD' => 'دولار كندي',
'CDF' => 'فرنك كونغولي',
'CHF' => 'فرنك سويسري',
- 'CLP' => 'بيزو شيلي',
+ 'CLP' => 'بيزو تشيلي',
+ 'CNH' => 'يوان صيني (في الخارج)',
'CNY' => 'يوان صيني',
'COP' => 'بيزو كولومبي',
- 'CRC' => 'كولن كوستا ريكي',
+ 'CRC' => 'كولن كوستاريكي',
'CSD' => 'دينار صربي قديم',
'CSK' => 'كرونة تشيكوسلوفاكيا',
'CUC' => 'بيزو كوبي قابل للتحويل',
'CUP' => 'بيزو كوبي',
- 'CVE' => 'اسكودو الرأس الخضراء',
+ 'CVE' => 'اسكودو الرأس الأخضر',
'CYP' => 'جنيه قبرصي',
'CZK' => 'كرونة تشيكية',
'DDM' => 'أوستمارك ألماني شرقي',
'DEM' => 'مارك ألماني',
'DJF' => 'فرنك جيبوتي',
- 'DKK' => 'كرونة دانماركي',
+ 'DKK' => 'كرونة دنماركية',
'DOP' => 'بيزو الدومنيكان',
'DZD' => 'دينار جزائري',
'EEK' => 'كرونة استونية',
@@ -595,29 +615,29 @@ $currencyNames = array(
'GHC' => 'سيدي غاني',
'GHS' => 'سيدي غانا',
'GIP' => 'جنيه جبل طارق',
- 'GMD' => 'دلاسي جامبي',
+ 'GMD' => 'دلاسي غامبي',
'GNF' => 'فرنك غينيا',
'GNS' => 'سيلي غينيا',
'GQE' => 'اكويل جونينا غينيا الاستوائيّة',
'GRD' => 'دراخما يوناني',
- 'GTQ' => 'كوتزال جواتيمالا',
+ 'GTQ' => 'كوتزال غواتيمالا',
'GWE' => 'اسكود برتغالي غينيا',
'GWP' => 'بيزو غينيا بيساو',
'GYD' => 'دولار غيانا',
- 'HKD' => 'دولار هونج كونج',
+ 'HKD' => 'دولار هونغ كونغ',
'HNL' => 'ليمبيرا هنداروس',
'HRD' => 'دينار كرواتي',
'HRK' => 'كونا كرواتي',
'HTG' => 'جوردى هايتي',
- 'HUF' => 'فورينت مجري',
+ 'HUF' => 'فورينت هنغاري',
'IDR' => 'روبية إندونيسية',
'IEP' => 'جنيه إيرلندي',
'ILP' => 'جنيه إسرائيلي',
'ILS' => 'شيكل إسرائيلي جديد',
- 'INR' => 'روبيه هندي',
+ 'INR' => 'روبية هندي',
'IQD' => 'دينار عراقي',
'IRR' => 'ريال إيراني',
- 'ISK' => 'كرونه أيسلندي',
+ 'ISK' => 'كرونة أيسلندية',
'ITL' => 'ليرة إيطالية',
'JMD' => 'دولار جامايكي',
'JOD' => 'دينار أردني',
@@ -632,7 +652,7 @@ $currencyNames = array(
'KYD' => 'دولار جزر كيمن',
'KZT' => 'تينغ كازاخستاني',
'LAK' => 'كيب لاوسي',
- 'LBP' => 'جنية لبناني',
+ 'LBP' => 'جنيه لبناني',
'LKR' => 'روبية سريلانكية',
'LRD' => 'دولار ليبيري',
'LSL' => 'لوتي ليسوتو',
@@ -654,7 +674,8 @@ $currencyNames = array(
'MMK' => 'كيات ميانمار',
'MNT' => 'توغروغ منغولي',
'MOP' => 'باتاكا ماكاوي',
- 'MRO' => 'أوقية موريتانية',
+ 'MRO' => 'أوقية موريتانية - 1973-2017',
+ 'MRU' => 'أوقية موريتانية',
'MTL' => 'ليرة مالطية',
'MTP' => 'جنيه مالطي',
'MUR' => 'روبية موريشيوسية',
@@ -675,14 +696,14 @@ $currencyNames = array(
'NZD' => 'دولار نيوزيلندي',
'OMR' => 'ريال عماني',
'PAB' => 'بالبوا بنمي',
- 'PEN' => 'سول جديد البيرو',
+ 'PEN' => 'سول بيروفي',
'PGK' => 'كينا بابوا غينيا الجديدة',
'PHP' => 'بيزو فلبيني',
'PKR' => 'روبية باكستاني',
'PLN' => 'زلوتي بولندي',
'PLZ' => 'زلوتي بولندي - 1950-1995',
'PTE' => 'اسكود برتغالي',
- 'PYG' => 'جواراني باراجواي',
+ 'PYG' => 'غواراني باراغواي',
'QAR' => 'ريال قطري',
'RHD' => 'دولار روديسي',
'ROL' => 'ليو روماني قديم',
@@ -707,7 +728,8 @@ $currencyNames = array(
'SRD' => 'دولار سورينامي',
'SRG' => 'جلدر سورينامي',
'SSP' => 'جنيه جنوب السودان',
- 'STD' => 'دوبرا ساو تومي وبرينسيبي',
+ 'STD' => 'دوبرا ساو تومي وبرينسيبي - 1977-2017',
+ 'STN' => 'دوبرا ساو تومي وبرينسيبي',
'SUR' => 'روبل سوفيتي',
'SVC' => 'كولون سلفادوري',
'SYP' => 'ليرة سورية',
@@ -717,12 +739,12 @@ $currencyNames = array(
'TJS' => 'سوموني طاجيكستاني',
'TMM' => 'مانات تركمنستاني',
'TMT' => 'مانات تركمانستان',
- 'TND' => 'دينارتونسي',
+ 'TND' => 'دينار تونسي',
'TOP' => 'بانغا تونغا',
'TPE' => 'اسكود تيموري',
'TRL' => 'ليرة تركي',
'TRY' => 'ليرة تركية',
- 'TTD' => 'دولار ترينداد وتوباجو',
+ 'TTD' => 'دولار ترينداد وتوباغو',
'TWD' => 'دولار تايواني',
'TZS' => 'شلن تنزاني',
'UAH' => 'هريفنيا أوكراني',
@@ -735,11 +757,12 @@ $currencyNames = array(
'UYU' => 'بيزو اوروغواي',
'UZS' => 'سوم أوزبكستاني',
'VEB' => 'بوليفار فنزويلي - 1871-2008',
- 'VEF' => 'بوليفار فنزويلي',
+ 'VEF' => 'بوليفار فنزويلي - 2008–2018',
+ 'VES' => 'بوليفار فنزويلي',
'VND' => 'دونج فيتنامي',
'VUV' => 'فاتو فانواتو',
'WST' => 'تالا ساموا',
- 'XAF' => 'فرنك أفريقي',
+ 'XAF' => 'فرنك وسط أفريقي',
'XAG' => 'فضة',
'XAU' => 'ذهب',
'XBA' => 'الوحدة الأوروبية المركبة',
@@ -751,7 +774,7 @@ $currencyNames = array(
'XEU' => 'وحدة النقد الأوروبية',
'XFO' => 'فرنك فرنسي ذهبي',
'XFU' => '(UIC)فرنك فرنسي',
- 'XOF' => 'فرنك سي إف إيه غرب إفريقيا',
+ 'XOF' => 'فرنك غرب أفريقي',
'XPD' => 'بالاديوم',
'XPF' => 'فرنك سي إف بي',
'XPT' => 'البلاتين',
@@ -769,9 +792,9 @@ $currencyNames = array(
'ZRZ' => 'زائير زائيري',
'ZWD' => 'دولار زمبابوي',
'ZWL' => 'دولار زمبابوي 2009',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'AED' => 'د.إ.‏',
'AFN' => 'AFN',
'ALL' => 'ALL',
@@ -795,13 +818,15 @@ $currencySymbols = array(
'BSD' => 'BSD',
'BTN' => 'BTN',
'BWP' => 'BWP',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CA$',
'CDF' => 'CDF',
'CHF' => 'CHF',
'CLP' => 'CLP',
- 'CNY' => 'ي.ص',
+ 'CNH' => 'CNH',
+ 'CNY' => 'CN¥',
'COP' => 'COP',
'CRC' => 'CRC',
'CUC' => 'CUC',
@@ -831,9 +856,9 @@ $currencySymbols = array(
'HRK' => 'HRK',
'HTG' => 'HTG',
'HUF' => 'HUF',
- 'IDR' => 'ر.إن.',
+ 'IDR' => 'IDR',
'ILS' => '₪',
- 'INR' => 'ر.ه.‏',
+ 'INR' => '₹',
'IQD' => 'د.ع.‏',
'IRR' => 'ر.إ.',
'ISK' => 'ISK',
@@ -843,7 +868,7 @@ $currencySymbols = array(
'KES' => 'KES',
'KGS' => 'KGS',
'KHR' => 'KHR',
- 'KMF' => 'ف.ج.ق.‏',
+ 'KMF' => 'KMF',
'KPW' => 'KPW',
'KRW' => '₩',
'KWD' => 'د.ك.‏',
@@ -863,7 +888,8 @@ $currencySymbols = array(
'MMK' => 'MMK',
'MNT' => 'MNT',
'MOP' => 'MOP',
- 'MRO' => 'أ.م.‏',
+ 'MRO' => 'MRO',
+ 'MRU' => 'أ.م.',
'MUR' => 'MUR',
'MVR' => 'MVR',
'MWK' => 'MWK',
@@ -881,7 +907,7 @@ $currencySymbols = array(
'PEN' => 'PEN',
'PGK' => 'PGK',
'PHP' => 'PHP',
- 'PKR' => 'ر.ب.',
+ 'PKR' => 'PKR',
'PLN' => 'PLN',
'PYG' => 'PYG',
'QAR' => 'ر.ق.‏',
@@ -900,8 +926,9 @@ $currencySymbols = array(
'SLL' => 'SLL',
'SOS' => 'SOS',
'SRD' => 'SRD',
- 'SSP' => 'ج.ج.س.',
+ 'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'STN',
'SYP' => 'ل.س.‏',
'SZL' => 'SZL',
'THB' => '฿',
@@ -909,7 +936,7 @@ $currencySymbols = array(
'TMT' => 'TMT',
'TND' => 'د.ت.‏',
'TOP' => 'TOP',
- 'TRY' => 'ل.ت.',
+ 'TRY' => 'TRY',
'TTD' => 'TTD',
'TWD' => 'NT$',
'TZS' => 'TZS',
@@ -919,6 +946,7 @@ $currencySymbols = array(
'UYU' => 'UYU',
'UZS' => 'UZS',
'VEF' => 'VEF',
+ 'VES' => 'VES',
'VND' => '₫',
'VUV' => 'VUV',
'WST' => 'WST',
@@ -930,9 +958,9 @@ $currencySymbols = array(
'YER' => 'ر.ي.‏',
'ZAR' => 'ZAR',
'ZMW' => 'ZMW',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'جزيرة أسينشيون',
'AD' => 'أندورا',
'AE' => 'الإمارات العربية المتحدة',
@@ -941,19 +969,18 @@ $countryNames = array(
'AI' => 'أنغويلا',
'AL' => 'ألبانيا',
'AM' => 'أرمينيا',
- 'AN' => 'جزر الأنتيل الهولندية',
'AO' => 'أنغولا',
'AQ' => 'أنتاركتيكا',
'AR' => 'الأرجنتين',
'AS' => 'ساموا الأمريكية',
'AT' => 'النمسا',
'AU' => 'أستراليا',
- 'AW' => 'آروبا',
+ 'AW' => 'أروبا',
'AX' => 'جزر آلاند',
'AZ' => 'أذربيجان',
'BA' => 'البوسنة والهرسك',
'BB' => 'بربادوس',
- 'BD' => 'بنجلاديش',
+ 'BD' => 'بنغلاديش',
'BE' => 'بلجيكا',
'BF' => 'بوركينا فاسو',
'BG' => 'بلغاريا',
@@ -966,21 +993,21 @@ $countryNames = array(
'BO' => 'بوليفيا',
'BQ' => 'هولندا الكاريبية',
'BR' => 'البرازيل',
- 'BS' => 'الباهاما',
+ 'BS' => 'البهاما',
'BT' => 'بوتان',
'BV' => 'جزيرة بوفيه',
- 'BW' => 'بتسوانا',
- 'BY' => 'روسيا البيضاء',
+ 'BW' => 'بوتسوانا',
+ 'BY' => 'بيلاروس',
'BZ' => 'بليز',
'CA' => 'كندا',
- 'CC' => 'جزر كوكوس',
+ 'CC' => 'جزر كوكوس (كيلينغ)',
'CD' => 'الكونغو - كينشاسا',
'CF' => 'جمهورية أفريقيا الوسطى',
'CG' => 'الكونغو - برازافيل',
'CH' => 'سويسرا',
'CI' => 'ساحل العاج',
'CK' => 'جزر كوك',
- 'CL' => 'شيلي',
+ 'CL' => 'تشيلي',
'CM' => 'الكاميرون',
'CN' => 'الصين',
'CO' => 'كولومبيا',
@@ -989,32 +1016,33 @@ $countryNames = array(
'CU' => 'كوبا',
'CV' => 'الرأس الأخضر',
'CW' => 'كوراساو',
- 'CX' => 'جزيرة الكريسماس',
+ 'CX' => 'جزيرة كريسماس',
'CY' => 'قبرص',
- 'CZ' => 'جمهورية التشيك',
+ 'CZ' => 'التشيك',
'DE' => 'ألمانيا',
'DG' => 'دييغو غارسيا',
'DJ' => 'جيبوتي',
'DK' => 'الدانمرك',
'DM' => 'دومينيكا',
- 'DO' => 'جمهورية الدومينيك',
+ 'DO' => 'جمهورية الدومينيكان',
'DZ' => 'الجزائر',
'EA' => 'سيوتا وميليلا',
'EC' => 'الإكوادور',
- 'EE' => 'أستونيا',
+ 'EE' => 'إستونيا',
'EG' => 'مصر',
'EH' => 'الصحراء الغربية',
- 'ER' => 'أريتريا',
+ 'ER' => 'إريتريا',
'ES' => 'إسبانيا',
'ET' => 'إثيوبيا',
'EU' => 'الاتحاد الأوروبي',
+ 'EZ' => 'منطقة اليورو',
'FI' => 'فنلندا',
'FJ' => 'فيجي',
'FK' => 'جزر فوكلاند',
'FM' => 'ميكرونيزيا',
'FO' => 'جزر فارو',
'FR' => 'فرنسا',
- 'GA' => 'الجابون',
+ 'GA' => 'الغابون',
'GB' => 'المملكة المتحدة',
'GD' => 'غرينادا',
'GE' => 'جورجيا',
@@ -1025,8 +1053,8 @@ $countryNames = array(
'GL' => 'غرينلاند',
'GM' => 'غامبيا',
'GN' => 'غينيا',
- 'GP' => 'جوادلوب',
- 'GQ' => 'غينيا الإستوائية',
+ 'GP' => 'غوادلوب',
+ 'GQ' => 'غينيا الاستوائية',
'GR' => 'اليونان',
'GS' => 'جورجيا الجنوبية وجزر ساندويتش الجنوبية',
'GT' => 'غواتيمالا',
@@ -1040,7 +1068,7 @@ $countryNames = array(
'HT' => 'هايتي',
'HU' => 'هنغاريا',
'IC' => 'جزر الكناري',
- 'ID' => 'أندونيسيا',
+ 'ID' => 'إندونيسيا',
'IE' => 'أيرلندا',
'IL' => 'إسرائيل',
'IM' => 'جزيرة مان',
@@ -1048,14 +1076,14 @@ $countryNames = array(
'IO' => 'الإقليم البريطاني في المحيط الهندي',
'IQ' => 'العراق',
'IR' => 'إيران',
- 'IS' => 'أيسلندا',
+ 'IS' => 'آيسلندا',
'IT' => 'إيطاليا',
'JE' => 'جيرسي',
'JM' => 'جامايكا',
'JO' => 'الأردن',
'JP' => 'اليابان',
'KE' => 'كينيا',
- 'KG' => 'قرغيزستان',
+ 'KG' => 'قيرغيزستان',
'KH' => 'كمبوديا',
'KI' => 'كيريباتي',
'KM' => 'جزر القمر',
@@ -1063,7 +1091,7 @@ $countryNames = array(
'KP' => 'كوريا الشمالية',
'KR' => 'كوريا الجنوبية',
'KW' => 'الكويت',
- 'KY' => 'جزر الكايمن',
+ 'KY' => 'جزر كايمان',
'KZ' => 'كازاخستان',
'LA' => 'لاوس',
'LB' => 'لبنان',
@@ -1078,18 +1106,18 @@ $countryNames = array(
'LY' => 'ليبيا',
'MA' => 'المغرب',
'MC' => 'موناكو',
- 'MD' => 'مولدافيا',
+ 'MD' => 'مولدوفا',
'ME' => 'الجبل الأسود',
- 'MF' => 'سانت مارتن',
+ 'MF' => 'سان مارتن',
'MG' => 'مدغشقر',
- 'MH' => 'جزر المارشال',
+ 'MH' => 'جزر مارشال',
'MK' => 'مقدونيا',
'ML' => 'مالي',
- 'MM' => 'ميانمار -بورما',
+ 'MM' => 'ميانمار (بورما)',
'MN' => 'منغوليا',
'MO' => 'مكاو',
'MP' => 'جزر ماريانا الشمالية',
- 'MQ' => 'مارتينيك',
+ 'MQ' => 'جزر المارتينيك',
'MR' => 'موريتانيا',
'MS' => 'مونتسرات',
'MT' => 'مالطا',
@@ -1102,7 +1130,7 @@ $countryNames = array(
'NA' => 'ناميبيا',
'NC' => 'كاليدونيا الجديدة',
'NE' => 'النيجر',
- 'NF' => 'جزيرة نورفوك',
+ 'NF' => 'جزيرة نورفولك',
'NG' => 'نيجيريا',
'NI' => 'نيكاراغوا',
'NL' => 'هولندا',
@@ -1110,7 +1138,7 @@ $countryNames = array(
'NP' => 'نيبال',
'NR' => 'ناورو',
'NU' => 'نيوي',
- 'NZ' => 'نيوزيلاندا',
+ 'NZ' => 'نيوزيلندا',
'OM' => 'عُمان',
'PA' => 'بنما',
'PE' => 'بيرو',
@@ -1119,7 +1147,7 @@ $countryNames = array(
'PH' => 'الفلبين',
'PK' => 'باكستان',
'PL' => 'بولندا',
- 'PM' => 'سانت بيير وميكولون',
+ 'PM' => 'سان بيير ومكويلون',
'PN' => 'جزر بيتكيرن',
'PR' => 'بورتوريكو',
'PS' => 'فلسطين',
@@ -1139,9 +1167,9 @@ $countryNames = array(
'SD' => 'السودان',
'SE' => 'السويد',
'SG' => 'سنغافورة',
- 'SH' => 'سانت هيلنا',
+ 'SH' => 'سانت هيلينا',
'SI' => 'سلوفينيا',
- 'SJ' => 'سفالبارد وجان مايان',
+ 'SJ' => 'سفالبارد وجان ماين',
'SK' => 'سلوفاكيا',
'SL' => 'سيراليون',
'SM' => 'سان مارينو',
@@ -1151,18 +1179,18 @@ $countryNames = array(
'SS' => 'جنوب السودان',
'ST' => 'ساو تومي وبرينسيبي',
'SV' => 'السلفادور',
- 'SX' => 'سينت مارتن',
+ 'SX' => 'سانت مارتن',
'SY' => 'سوريا',
'SZ' => 'سوازيلاند',
- 'TA' => 'تريستان دي كونها',
- 'TC' => 'جزر الترك وجايكوس',
+ 'TA' => 'تريستان دا كونا',
+ 'TC' => 'جزر توركس وكايكوس',
'TD' => 'تشاد',
- 'TF' => 'المقاطعات الجنوبية الفرنسية',
- 'TG' => 'توجو',
+ 'TF' => 'الأقاليم الجنوبية الفرنسية',
+ 'TG' => 'توغو',
'TH' => 'تايلاند',
- 'TJ' => 'طاجكستان',
+ 'TJ' => 'طاجيكستان',
'TK' => 'توكيلو',
- 'TL' => 'تيمور الشرقية',
+ 'TL' => 'تيمور - ليشتي',
'TM' => 'تركمانستان',
'TN' => 'تونس',
'TO' => 'تونغا',
@@ -1170,18 +1198,19 @@ $countryNames = array(
'TT' => 'ترينيداد وتوباغو',
'TV' => 'توفالو',
'TW' => 'تايوان',
- 'TZ' => 'تانزانيا',
+ 'TZ' => 'تنزانيا',
'UA' => 'أوكرانيا',
'UG' => 'أوغندا',
'UM' => 'جزر الولايات المتحدة النائية',
+ 'UN' => 'الأمم المتحدة',
'US' => 'الولايات المتحدة',
'UY' => 'أورغواي',
'UZ' => 'أوزبكستان',
'VA' => 'الفاتيكان',
- 'VC' => 'سانت فنسنت وغرنادين',
+ 'VC' => 'سانت فنسنت وجزر غرينادين',
'VE' => 'فنزويلا',
- 'VG' => 'جزر فرجين البريطانية',
- 'VI' => 'جزر فرجين الأمريكية',
+ 'VG' => 'جزر فيرجن البريطانية',
+ 'VI' => 'جزر فيرجن التابعة للولايات المتحدة',
'VN' => 'فيتنام',
'VU' => 'فانواتو',
'WF' => 'جزر والس وفوتونا',
@@ -1192,91 +1221,133 @@ $countryNames = array(
'ZA' => 'جنوب أفريقيا',
'ZM' => 'زامبيا',
'ZW' => 'زيمبابوي',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-few' => '{0} قرون',
+ 'century-many' => '{0} قرنًا',
+ 'century-one' => 'قرن',
+ 'century-other' => '{0} قرن',
+ 'century-two' => 'قرنان',
+ 'century-zero' => '{0} قرن',
'day-few' => '{0} أيام',
'day-future-few' => 'خلال {0} أيام',
'day-future-many' => 'خلال {0} يومًا',
- 'day-future-one' => 'خلال {0} من الأيام',
- 'day-future-other' => 'خلال {0} من الأيام',
+ 'day-future-one' => 'خلال يوم واحد',
+ 'day-future-other' => 'خلال {0} يوم',
'day-future-two' => 'خلال يومين',
- 'day-future-zero' => 'خلال {0} من الأيام',
+ 'day-future-zero' => 'خلال {0} يوم',
'day-many' => '{0} يومًا',
- 'day-narrow-future-few' => 'خلال {0} من الأيام',
- 'day-narrow-future-many' => 'خلال {0} من الأيام',
- 'day-narrow-future-one' => 'خلال {0} من الأيام',
- 'day-narrow-future-other' => 'خلال {0} من الأيام',
- 'day-narrow-future-two' => 'خلال {0} من الأيام',
- 'day-narrow-future-zero' => 'خلال {0} من الأيام',
- 'day-narrow-past-few' => 'قبل {0} من الأيام',
- 'day-narrow-past-many' => 'قبل {0} من الأيام',
- 'day-narrow-past-one' => 'قبل {0} من الأيام',
- 'day-narrow-past-other' => 'قبل {0} من الأيام',
- 'day-narrow-past-two' => 'قبل {0} من الأيام',
- 'day-narrow-past-zero' => 'قبل {0} من الأيام',
+ 'day-narrow-future-few' => 'خلال {0} أيام',
+ 'day-narrow-future-many' => 'خلال {0} يومًا',
+ 'day-narrow-future-one' => 'خلال يوم واحد',
+ 'day-narrow-future-other' => 'خلال {0} يوم',
+ 'day-narrow-future-two' => 'خلال يومين',
+ 'day-narrow-future-zero' => 'خلال {0} يوم',
+ 'day-narrow-past-few' => 'قبل {0} أيام',
+ 'day-narrow-past-many' => 'قبل {0} يومًا',
+ 'day-narrow-past-one' => 'قبل يوم واحد',
+ 'day-narrow-past-other' => 'قبل {0} يوم',
+ 'day-narrow-past-two' => 'قبل يومين',
+ 'day-narrow-past-zero' => 'قبل {0} يوم',
'day-one' => 'يوم',
'day-other' => '{0} يوم',
'day-past-few' => 'قبل {0} أيام',
'day-past-many' => 'قبل {0} يومًا',
- 'day-past-one' => 'قبل {0} من الأيام',
- 'day-past-other' => 'قبل {0} من الأيام',
+ 'day-past-one' => 'قبل يوم واحد',
+ 'day-past-other' => 'قبل {0} يوم',
'day-past-two' => 'قبل يومين',
- 'day-past-zero' => 'قبل {0} من الأيام',
- 'day-short-future-few' => 'خلال {0} من الأيام',
- 'day-short-future-many' => 'خلال {0} من الأيام',
- 'day-short-future-one' => 'خلال {0} من الأيام',
- 'day-short-future-other' => 'خلال {0} من الأيام',
- 'day-short-future-two' => 'خلال {0} من الأيام',
- 'day-short-future-zero' => 'خلال {0} من الأيام',
- 'day-short-past-few' => 'قبل {0} من الأيام',
- 'day-short-past-many' => 'قبل {0} من الأيام',
- 'day-short-past-one' => 'قبل {0} من الأيام',
- 'day-short-past-other' => 'قبل {0} من الأيام',
- 'day-short-past-two' => 'قبل {0} من الأيام',
- 'day-short-past-zero' => 'قبل {0} من الأيام',
+ 'day-past-zero' => 'قبل {0} يوم',
+ 'day-short-future-few' => 'خلال {0} أيام',
+ 'day-short-future-many' => 'خلال {0} يومًا',
+ 'day-short-future-one' => 'خلال يوم واحد',
+ 'day-short-future-other' => 'خلال {0} يوم',
+ 'day-short-future-two' => 'خلال يومين',
+ 'day-short-future-zero' => 'خلال {0} يوم',
+ 'day-short-past-few' => 'قبل {0} أيام',
+ 'day-short-past-many' => 'قبل {0} يومًا',
+ 'day-short-past-one' => 'قبل يوم واحد',
+ 'day-short-past-other' => 'قبل {0} يوم',
+ 'day-short-past-two' => 'قبل يومين',
+ 'day-short-past-zero' => 'قبل {0} يوم',
'day-two' => 'يومان',
'day-zero' => '{0} يوم',
+ 'fri-future-few' => 'خلال {0} أيام جمعة',
+ 'fri-future-many' => 'خلال {0} يوم جمعة',
+ 'fri-future-one' => 'الجمعة القادم',
+ 'fri-future-other' => 'خلال {0} يوم جمعة',
+ 'fri-future-two' => 'الجمعة بعد القادم',
+ 'fri-future-zero' => 'خلال {0} يوم جمعة',
+ 'fri-narrow-future-few' => 'خلال {0} جمعة',
+ 'fri-narrow-future-many' => 'خلال {0} جمعة',
+ 'fri-narrow-future-one' => 'جمعة قادم',
+ 'fri-narrow-future-other' => 'خلال {0} جمعة',
+ 'fri-narrow-future-two' => 'جمعة بعد القادم',
+ 'fri-narrow-future-zero' => 'خلال {0} جمعة',
+ 'fri-narrow-past-few' => 'قبل {0} جمعة',
+ 'fri-narrow-past-many' => 'قبل {0} جمعة',
+ 'fri-narrow-past-one' => 'جمعة ماضي',
+ 'fri-narrow-past-other' => 'قبل {0} جمعة',
+ 'fri-narrow-past-two' => 'جمعة قبل الماضي',
+ 'fri-narrow-past-zero' => 'قبل {0} جمعة',
+ 'fri-past-few' => 'قبل {0} أيام جمعة',
+ 'fri-past-many' => 'قبل {0} يوم جمعة',
+ 'fri-past-one' => 'الجمعة الماضي',
+ 'fri-past-other' => 'قبل {0} يوم جمعة',
+ 'fri-past-two' => 'الجمعة قبل الماضي',
+ 'fri-past-zero' => 'قبل {0} يوم جمعة',
+ 'fri-short-future-few' => 'خلال {0} جمعة',
+ 'fri-short-future-many' => 'خلال {0} جمعة',
+ 'fri-short-future-one' => 'جمعة قادم',
+ 'fri-short-future-other' => 'خلال {0} جمعة',
+ 'fri-short-future-two' => 'جمعة بعد القادم',
+ 'fri-short-future-zero' => 'خلال {0} جمعة',
+ 'fri-short-past-few' => 'قبل {0} جمعة',
+ 'fri-short-past-many' => 'قبل {0} جمعة',
+ 'fri-short-past-one' => 'جمعة ماضي',
+ 'fri-short-past-other' => 'قبل {0} جمعة',
+ 'fri-short-past-two' => 'جمعة قبل الماضي',
+ 'fri-short-past-zero' => 'قبل {0} جمعة',
'hour-few' => '{0} ساعات',
'hour-future-few' => 'خلال {0} ساعات',
'hour-future-many' => 'خلال {0} ساعة',
- 'hour-future-one' => 'خلال {0} من الساعات',
- 'hour-future-other' => 'خلال {0} من الساعات',
+ 'hour-future-one' => 'خلال ساعة واحدة',
+ 'hour-future-other' => 'خلال {0} ساعة',
'hour-future-two' => 'خلال ساعتين',
- 'hour-future-zero' => 'خلال {0} من الساعات',
+ 'hour-future-zero' => 'خلال {0} ساعة',
'hour-many' => '{0} ساعة',
- 'hour-narrow-future-few' => 'خلال {0} من الساعات',
- 'hour-narrow-future-many' => 'خلال {0} من الساعات',
- 'hour-narrow-future-one' => 'خلال {0} من الساعات',
- 'hour-narrow-future-other' => 'خلال {0} من الساعات',
- 'hour-narrow-future-two' => 'خلال {0} من الساعات',
- 'hour-narrow-future-zero' => 'خلال {0} من الساعات',
- 'hour-narrow-past-few' => 'قبل {0} من الساعات',
- 'hour-narrow-past-many' => 'قبل {0} من الساعات',
- 'hour-narrow-past-one' => 'قبل {0} من الساعات',
- 'hour-narrow-past-other' => 'قبل {0} من الساعات',
- 'hour-narrow-past-two' => 'قبل {0} من الساعات',
- 'hour-narrow-past-zero' => 'قبل {0} من الساعات',
+ 'hour-narrow-future-few' => 'خلال {0} ساعات',
+ 'hour-narrow-future-many' => 'خلال {0} ساعة',
+ 'hour-narrow-future-one' => 'خلال ساعة واحدة',
+ 'hour-narrow-future-other' => 'خلال {0} ساعة',
+ 'hour-narrow-future-two' => 'خلال ساعتين',
+ 'hour-narrow-future-zero' => 'خلال {0} ساعة',
+ 'hour-narrow-past-few' => 'قبل {0} ساعات',
+ 'hour-narrow-past-many' => 'قبل {0} ساعة',
+ 'hour-narrow-past-one' => 'قبل ساعة واحدة',
+ 'hour-narrow-past-other' => 'قبل {0} ساعة',
+ 'hour-narrow-past-two' => 'قبل ساعتين',
+ 'hour-narrow-past-zero' => 'قبل {0} ساعة',
'hour-one' => 'ساعة',
'hour-other' => '{0} ساعة',
'hour-past-few' => 'قبل {0} ساعات',
'hour-past-many' => 'قبل {0} ساعة',
- 'hour-past-one' => 'قبل {0} من الساعات',
- 'hour-past-other' => 'قبل {0} من الساعات',
+ 'hour-past-one' => 'قبل ساعة واحدة',
+ 'hour-past-other' => 'قبل {0} ساعة',
'hour-past-two' => 'قبل ساعتين',
- 'hour-past-zero' => 'قبل {0} من الساعات',
- 'hour-short-future-few' => 'خلال {0} من الساعات',
- 'hour-short-future-many' => 'خلال {0} من الساعات',
- 'hour-short-future-one' => 'خلال {0} من الساعات',
- 'hour-short-future-other' => 'خلال {0} من الساعات',
- 'hour-short-future-two' => 'خلال {0} من الساعات',
- 'hour-short-future-zero' => 'خلال {0} من الساعات',
- 'hour-short-past-few' => 'قبل {0} من الساعات',
- 'hour-short-past-many' => 'قبل {0} من الساعات',
- 'hour-short-past-one' => 'قبل {0} من الساعات',
- 'hour-short-past-other' => 'قبل {0} من الساعات',
- 'hour-short-past-two' => 'قبل {0} من الساعات',
- 'hour-short-past-zero' => 'قبل {0} من الساعات',
+ 'hour-past-zero' => 'قبل {0} ساعة',
+ 'hour-short-future-few' => 'خلال {0} ساعات',
+ 'hour-short-future-many' => 'خلال {0} ساعة',
+ 'hour-short-future-one' => 'خلال ساعة واحدة',
+ 'hour-short-future-other' => 'خلال {0} ساعة',
+ 'hour-short-future-two' => 'خلال ساعتين',
+ 'hour-short-future-zero' => 'خلال {0} ساعة',
+ 'hour-short-past-few' => 'قبل {0} ساعات',
+ 'hour-short-past-many' => 'قبل {0} ساعة',
+ 'hour-short-past-one' => 'قبل ساعة واحدة',
+ 'hour-short-past-other' => 'قبل {0} ساعة',
+ 'hour-short-past-two' => 'قبل ساعتين',
+ 'hour-short-past-zero' => 'قبل {0} ساعة',
'hour-two' => 'ساعتان',
'hour-zero' => '{0} ساعة',
'microsecond-few' => '{0} ميكروثانية',
@@ -1285,94 +1356,130 @@ $timeUnits = array(
'microsecond-other' => '{0} ميكروثانية',
'microsecond-two' => '{0} ميكروثانية',
'microsecond-zero' => '{0} ميكروثانية',
- 'millisecond-few' => '{0} مللي ثانية',
- 'millisecond-many' => '{0} مللي ثانية',
- 'millisecond-one' => '{0} مللي ثانية',
- 'millisecond-other' => '{0} مللي ثانية',
- 'millisecond-two' => '{0} مللي ثانية',
- 'millisecond-zero' => '{0} مللي ثانية',
+ 'millisecond-few' => '{0} ملي ثانية',
+ 'millisecond-many' => '{0} ملي ثانية',
+ 'millisecond-one' => '{0} ملي ثانية',
+ 'millisecond-other' => '{0} ملي ثانية',
+ 'millisecond-two' => '{0} ملي ثانية',
+ 'millisecond-zero' => '{0} ملي ثانية',
'minute-few' => '{0} دقائق',
'minute-future-few' => 'خلال {0} دقائق',
'minute-future-many' => 'خلال {0} دقيقة',
- 'minute-future-one' => 'خلال {0} من الدقائق',
- 'minute-future-other' => 'خلال {0} من الدقائق',
+ 'minute-future-one' => 'خلال دقيقة واحدة',
+ 'minute-future-other' => 'خلال {0} دقيقة',
'minute-future-two' => 'خلال دقيقتين',
- 'minute-future-zero' => 'خلال {0} من الدقائق',
+ 'minute-future-zero' => 'خلال {0} دقيقة',
'minute-many' => '{0} دقيقة',
- 'minute-narrow-future-few' => 'خلال {0} من الدقائق',
- 'minute-narrow-future-many' => 'خلال {0} من الدقائق',
- 'minute-narrow-future-one' => 'خلال {0} من الدقائق',
- 'minute-narrow-future-other' => 'خلال {0} من الدقائق',
- 'minute-narrow-future-two' => 'خلال {0} من الدقائق',
- 'minute-narrow-future-zero' => 'خلال {0} من الدقائق',
- 'minute-narrow-past-few' => 'قبل {0} من الدقائق',
- 'minute-narrow-past-many' => 'قبل {0} من الدقائق',
- 'minute-narrow-past-one' => 'قبل {0} من الدقائق',
- 'minute-narrow-past-other' => 'قبل {0} من الدقائق',
- 'minute-narrow-past-two' => 'قبل {0} من الدقائق',
- 'minute-narrow-past-zero' => 'قبل {0} من الدقائق',
- 'minute-one' => '{0} دقيقة',
+ 'minute-narrow-future-few' => 'خلال {0} دقائق',
+ 'minute-narrow-future-many' => 'خلال {0} دقيقة',
+ 'minute-narrow-future-one' => 'خلال دقيقة واحدة',
+ 'minute-narrow-future-other' => 'خلال {0} دقيقة',
+ 'minute-narrow-future-two' => 'خلال دقيقتين',
+ 'minute-narrow-future-zero' => 'خلال {0} دقيقة',
+ 'minute-narrow-past-few' => 'قبل {0} دقائق',
+ 'minute-narrow-past-many' => 'قبل {0} دقيقة',
+ 'minute-narrow-past-one' => 'قبل دقيقة واحدة',
+ 'minute-narrow-past-other' => 'قبل {0} دقيقة',
+ 'minute-narrow-past-two' => 'قبل دقيقتين',
+ 'minute-narrow-past-zero' => 'قبل {0} دقيقة',
+ 'minute-one' => 'دقيقة',
'minute-other' => '{0} دقيقة',
'minute-past-few' => 'قبل {0} دقائق',
'minute-past-many' => 'قبل {0} دقيقة',
- 'minute-past-one' => 'قبل {0} من الدقائق',
- 'minute-past-other' => 'قبل {0} من الدقائق',
+ 'minute-past-one' => 'قبل دقيقة واحدة',
+ 'minute-past-other' => 'قبل {0} دقيقة',
'minute-past-two' => 'قبل دقيقتين',
- 'minute-past-zero' => 'قبل {0} من الدقائق',
- 'minute-short-future-few' => 'خلال {0} من الدقائق',
- 'minute-short-future-many' => 'خلال {0} من الدقائق',
- 'minute-short-future-one' => 'خلال {0} من الدقائق',
- 'minute-short-future-other' => 'خلال {0} من الدقائق',
- 'minute-short-future-two' => 'خلال {0} من الدقائق',
- 'minute-short-future-zero' => 'خلال {0} من الدقائق',
- 'minute-short-past-few' => 'قبل {0} من الدقائق',
- 'minute-short-past-many' => 'قبل {0} من الدقائق',
- 'minute-short-past-one' => 'قبل {0} من الدقائق',
- 'minute-short-past-other' => 'قبل {0} من الدقائق',
- 'minute-short-past-two' => 'قبل {0} من الدقائق',
- 'minute-short-past-zero' => 'قبل {0} من الدقائق',
+ 'minute-past-zero' => 'قبل {0} دقيقة',
+ 'minute-short-future-few' => 'خلال {0} دقائق',
+ 'minute-short-future-many' => 'خلال {0} دقيقة',
+ 'minute-short-future-one' => 'خلال دقيقة واحدة',
+ 'minute-short-future-other' => 'خلال {0} دقيقة',
+ 'minute-short-future-two' => 'خلال دقيقتين',
+ 'minute-short-future-zero' => 'خلال {0} دقيقة',
+ 'minute-short-past-few' => 'قبل {0} دقائق',
+ 'minute-short-past-many' => 'قبل {0} دقيقة',
+ 'minute-short-past-one' => 'قبل دقيقة واحدة',
+ 'minute-short-past-other' => 'قبل {0} دقيقة',
+ 'minute-short-past-two' => 'قبل دقيقتين',
+ 'minute-short-past-zero' => 'قبل {0} دقيقة',
'minute-two' => 'دقيقتان',
'minute-zero' => '{0} دقيقة',
+ 'mon-future-few' => 'خلال {0} أيام إثنين',
+ 'mon-future-many' => 'خلال {0} يوم إثنين',
+ 'mon-future-one' => 'الإثنين القادم',
+ 'mon-future-other' => 'خلال {0} يوم إثنين',
+ 'mon-future-two' => 'الإثنين بعد القادم',
+ 'mon-future-zero' => 'خلال {0} إثنين',
+ 'mon-narrow-future-few' => 'خلال {0} إثنين',
+ 'mon-narrow-future-many' => 'خلال {0} إثنين',
+ 'mon-narrow-future-one' => 'إثنين قادم',
+ 'mon-narrow-future-other' => 'خلال {0} إثنين',
+ 'mon-narrow-future-two' => 'الإثنين بعد القادم',
+ 'mon-narrow-future-zero' => 'خلال {0} إثنين',
+ 'mon-narrow-past-few' => 'قبل {0} إثنين',
+ 'mon-narrow-past-many' => 'قبل {0} إثنين',
+ 'mon-narrow-past-one' => 'إثنين ماضي',
+ 'mon-narrow-past-other' => 'قبل {0} إثنين',
+ 'mon-narrow-past-two' => 'إثنين قبل الماضي',
+ 'mon-narrow-past-zero' => 'قبل {0} إثنين',
+ 'mon-past-few' => 'قبل {0} أيام إثنين',
+ 'mon-past-many' => 'قبل {0} يوم إثنين',
+ 'mon-past-one' => 'الإثنين الماضي',
+ 'mon-past-other' => 'قبل {0} يوم إثنين',
+ 'mon-past-two' => 'الإثنين قبل الماضي',
+ 'mon-past-zero' => 'قبل {0} إثنين',
+ 'mon-short-future-few' => 'خلال {0} إثنين',
+ 'mon-short-future-many' => 'خلال {0} إثنين',
+ 'mon-short-future-one' => 'الإثنين القادم',
+ 'mon-short-future-other' => 'خلال {0} إثنين',
+ 'mon-short-future-two' => 'الإثنين بعد القادم',
+ 'mon-short-future-zero' => 'خلال {0} إثنين',
+ 'mon-short-past-few' => 'قبل {0} إثنين',
+ 'mon-short-past-many' => 'قبل {0} إثنين',
+ 'mon-short-past-one' => 'الإثنين الماضي',
+ 'mon-short-past-other' => 'قبل {0} إثنين',
+ 'mon-short-past-two' => 'الإثنين قبل الماضي',
+ 'mon-short-past-zero' => 'قبل {0} إثنين',
'month-few' => '{0} أشهر',
- 'month-future-few' => 'خلال {0} شهور',
+ 'month-future-few' => 'خلال {0} أشهر',
'month-future-many' => 'خلال {0} شهرًا',
- 'month-future-one' => 'خلال {0} من الشهور',
- 'month-future-other' => 'خلال {0} من الشهور',
+ 'month-future-one' => 'خلال شهر واحد',
+ 'month-future-other' => 'خلال {0} شهر',
'month-future-two' => 'خلال شهرين',
- 'month-future-zero' => 'خلال {0} من الشهور',
+ 'month-future-zero' => 'خلال {0} شهر',
'month-many' => '{0} شهرًا',
- 'month-narrow-future-few' => 'خلال {0} من الشهور',
- 'month-narrow-future-many' => 'خلال {0} من الشهور',
- 'month-narrow-future-one' => 'خلال {0} من الشهور',
- 'month-narrow-future-other' => 'خلال {0} من الشهور',
- 'month-narrow-future-two' => 'خلال {0} من الشهور',
- 'month-narrow-future-zero' => 'خلال {0} من الشهور',
- 'month-narrow-past-few' => 'قبل {0} من الشهور',
- 'month-narrow-past-many' => 'قبل {0} من الشهور',
- 'month-narrow-past-one' => 'قبل {0} من الشهور',
- 'month-narrow-past-other' => 'قبل {0} من الشهور',
- 'month-narrow-past-two' => 'قبل {0} من الشهور',
- 'month-narrow-past-zero' => 'قبل {0} من الشهور',
+ 'month-narrow-future-few' => 'خلال {0} أشهر',
+ 'month-narrow-future-many' => 'خلال {0} شهرًا',
+ 'month-narrow-future-one' => 'خلال شهر واحد',
+ 'month-narrow-future-other' => 'خلال {0} شهر',
+ 'month-narrow-future-two' => 'خلال شهرين',
+ 'month-narrow-future-zero' => 'خلال {0} شهر',
+ 'month-narrow-past-few' => 'قبل {0} أشهر',
+ 'month-narrow-past-many' => 'قبل {0} شهرًا',
+ 'month-narrow-past-one' => 'قبل شهر واحد',
+ 'month-narrow-past-other' => 'قبل {0} شهر',
+ 'month-narrow-past-two' => 'قبل شهرين',
+ 'month-narrow-past-zero' => 'قبل {0} شهر',
'month-one' => 'شهر',
'month-other' => '{0} شهر',
'month-past-few' => 'قبل {0} أشهر',
'month-past-many' => 'قبل {0} شهرًا',
- 'month-past-one' => 'قبل {0} من الشهور',
- 'month-past-other' => 'قبل {0} من الشهور',
+ 'month-past-one' => 'قبل شهر واحد',
+ 'month-past-other' => 'قبل {0} شهر',
'month-past-two' => 'قبل شهرين',
- 'month-past-zero' => 'قبل {0} من الشهور',
- 'month-short-future-few' => 'خلال {0} من الشهور',
- 'month-short-future-many' => 'خلال {0} من الشهور',
- 'month-short-future-one' => 'خلال {0} من الشهور',
- 'month-short-future-other' => 'خلال {0} من الشهور',
- 'month-short-future-two' => 'خلال {0} من الشهور',
- 'month-short-future-zero' => 'خلال {0} من الشهور',
- 'month-short-past-few' => 'قبل {0} من الشهور',
- 'month-short-past-many' => 'قبل {0} من الشهور',
- 'month-short-past-one' => 'قبل {0} من الشهور',
- 'month-short-past-other' => 'قبل {0} من الشهور',
- 'month-short-past-two' => 'قبل {0} من الشهور',
- 'month-short-past-zero' => 'قبل {0} من الشهور',
+ 'month-past-zero' => 'قبل {0} شهر',
+ 'month-short-future-few' => 'خلال {0} أشهر',
+ 'month-short-future-many' => 'خلال {0} شهرًا',
+ 'month-short-future-one' => 'خلال شهر واحد',
+ 'month-short-future-other' => 'خلال {0} شهر',
+ 'month-short-future-two' => 'خلال شهرين',
+ 'month-short-future-zero' => 'خلال {0} شهر',
+ 'month-short-past-few' => 'خلال {0} أشهر',
+ 'month-short-past-many' => 'قبل {0} شهرًا',
+ 'month-short-past-one' => 'قبل شهر واحد',
+ 'month-short-past-other' => 'قبل {0} شهر',
+ 'month-short-past-two' => 'قبل شهرين',
+ 'month-short-past-zero' => 'قبل {0} شهر',
'month-two' => 'شهران',
'month-zero' => '{0} شهر',
'nanosecond-few' => '{0} نانو ثانية',
@@ -1381,166 +1488,346 @@ $timeUnits = array(
'nanosecond-other' => '{0} نانو ثانية',
'nanosecond-two' => '{0} نانو ثانية',
'nanosecond-zero' => '{0} نانو ثانية',
- 'quarter-future-few' => 'خلال {0} من أرباع السنة',
- 'quarter-future-many' => 'خلال {0} من أرباع السنة',
- 'quarter-future-one' => 'خلال {0} من أرباع السنة',
- 'quarter-future-other' => 'خلال {0} من أرباع السنة',
- 'quarter-future-two' => 'خلال {0} من أرباع السنة',
- 'quarter-future-zero' => 'خلال {0} من أرباع السنة',
- 'quarter-narrow-future-few' => 'خلال {0} من أرباع السنة',
- 'quarter-narrow-future-many' => 'خلال {0} من أرباع السنة',
- 'quarter-narrow-future-one' => 'خلال {0} من أرباع السنة',
- 'quarter-narrow-future-other' => 'خلال {0} من أرباع السنة',
- 'quarter-narrow-future-two' => 'خلال {0} من أرباع السنة',
- 'quarter-narrow-future-zero' => 'خلال {0} من أرباع السنة',
- 'quarter-narrow-past-few' => 'قبل {0} من أرباع السنة',
- 'quarter-narrow-past-many' => 'قبل {0} من أرباع السنة',
- 'quarter-narrow-past-one' => 'قبل {0} من أرباع السنة',
- 'quarter-narrow-past-other' => 'قبل {0} من أرباع السنة',
- 'quarter-narrow-past-two' => 'قبل {0} من أرباع السنة',
- 'quarter-narrow-past-zero' => 'قبل {0} من أرباع السنة',
- 'quarter-past-few' => 'قبل {0} من أرباع السنة',
- 'quarter-past-many' => 'قبل {0} من أرباع السنة',
- 'quarter-past-one' => 'قبل {0} من أرباع السنة',
- 'quarter-past-other' => 'قبل {0} من أرباع السنة',
- 'quarter-past-two' => 'قبل {0} من أرباع السنة',
- 'quarter-past-zero' => 'قبل {0} من أرباع السنة',
- 'quarter-short-future-few' => 'خلال {0} من أرباع السنة',
- 'quarter-short-future-many' => 'خلال {0} من أرباع السنة',
- 'quarter-short-future-one' => 'خلال {0} من أرباع السنة',
- 'quarter-short-future-other' => 'خلال {0} من أرباع السنة',
- 'quarter-short-future-two' => 'خلال {0} من أرباع السنة',
- 'quarter-short-future-zero' => 'خلال {0} من أرباع السنة',
- 'quarter-short-past-few' => 'قبل {0} من أرباع السنة',
- 'quarter-short-past-many' => 'قبل {0} من أرباع السنة',
- 'quarter-short-past-one' => 'قبل {0} من أرباع السنة',
- 'quarter-short-past-other' => 'قبل {0} من أرباع السنة',
- 'quarter-short-past-two' => 'قبل {0} من أرباع السنة',
- 'quarter-short-past-zero' => 'قبل {0} من أرباع السنة',
+ 'quarter-future-few' => 'خلال {0} أرباع سنة',
+ 'quarter-future-many' => 'خلال {0} ربع سنة',
+ 'quarter-future-one' => 'خلال ربع سنة واحد',
+ 'quarter-future-other' => 'خلال {0} ربع سنة',
+ 'quarter-future-two' => 'خلال ربعي سنة',
+ 'quarter-future-zero' => 'خلال {0} ربع سنة',
+ 'quarter-narrow-future-few' => 'خلال {0} أرباع سنة',
+ 'quarter-narrow-future-many' => 'خلال {0} ربع سنة',
+ 'quarter-narrow-future-one' => 'خلال ربع سنة واحد',
+ 'quarter-narrow-future-other' => 'خلال {0} ربع سنة',
+ 'quarter-narrow-future-two' => 'خلال ربعي سنة',
+ 'quarter-narrow-future-zero' => 'خلال {0} ربع سنة',
+ 'quarter-narrow-past-few' => 'قبل {0} أرباع سنة',
+ 'quarter-narrow-past-many' => 'قبل {0} ربع سنة',
+ 'quarter-narrow-past-one' => 'قبل ربع سنة واحد',
+ 'quarter-narrow-past-other' => 'قبل {0} ربع سنة',
+ 'quarter-narrow-past-two' => 'قبل ربعي سنة',
+ 'quarter-narrow-past-zero' => 'قبل {0} ربع سنة',
+ 'quarter-past-few' => 'قبل {0} أرباع سنة',
+ 'quarter-past-many' => 'قبل {0} ربع سنة',
+ 'quarter-past-one' => 'قبل ربع سنة واحد',
+ 'quarter-past-other' => 'قبل {0} ربع سنة',
+ 'quarter-past-two' => 'قبل ربعي سنة',
+ 'quarter-past-zero' => 'قبل {0} ربع سنة',
+ 'quarter-short-future-few' => 'خلال {0} أرباع سنة',
+ 'quarter-short-future-many' => 'خلال {0} ربع سنة',
+ 'quarter-short-future-one' => 'خلال ربع سنة واحد',
+ 'quarter-short-future-other' => 'خلال {0} ربع سنة',
+ 'quarter-short-future-two' => 'خلال ربعي سنة',
+ 'quarter-short-future-zero' => 'خلال {0} ربع سنة',
+ 'quarter-short-past-few' => 'قبل {0} أرباع سنة',
+ 'quarter-short-past-many' => 'قبل {0} ربع سنة',
+ 'quarter-short-past-one' => 'قبل ربع سنة واحد',
+ 'quarter-short-past-other' => 'قبل {0} ربع سنة',
+ 'quarter-short-past-two' => 'قبل ربعي سنة',
+ 'quarter-short-past-zero' => 'قبل {0} ربع سنة',
+ 'sat-future-few' => 'السبت بعد {0} أسابيع',
+ 'sat-future-many' => 'خلال {0} يوم سبت',
+ 'sat-future-one' => 'السبت القادم',
+ 'sat-future-other' => 'بعد {0} يوم سبت',
+ 'sat-future-two' => 'السبت بعد القادم',
+ 'sat-future-zero' => 'السبت القادم',
+ 'sat-narrow-future-few' => 'خلال {0} سبت',
+ 'sat-narrow-future-many' => 'خلال {0} سبت',
+ 'sat-narrow-future-one' => 'سبت قادم',
+ 'sat-narrow-future-other' => 'خلال {0} سبت',
+ 'sat-narrow-future-two' => 'سبت بعد القادم',
+ 'sat-narrow-future-zero' => 'خلال {0} سبت',
+ 'sat-narrow-past-few' => 'قبل {0} سبت',
+ 'sat-narrow-past-many' => 'قبل {0} سبت',
+ 'sat-narrow-past-one' => 'سبت ماضي',
+ 'sat-narrow-past-other' => 'قبل {0} سبت',
+ 'sat-narrow-past-two' => 'سبت قبل الماضي',
+ 'sat-narrow-past-zero' => 'قبل {0} سبت',
+ 'sat-past-few' => 'قبل {0} يوم سبت',
+ 'sat-past-many' => 'قبل {0} يوم سبت',
+ 'sat-past-one' => 'السبت الماضي',
+ 'sat-past-other' => 'قبل {0} يوم سبت',
+ 'sat-past-two' => 'السبت قبل الماضي',
+ 'sat-past-zero' => 'قبل {0} يوم سبت',
+ 'sat-short-future-few' => 'خلال {0} سبت',
+ 'sat-short-future-many' => 'خلال {0} سبت',
+ 'sat-short-future-one' => 'سبت قادم',
+ 'sat-short-future-other' => 'خلال {0} سبت',
+ 'sat-short-future-two' => 'سبت بعد القادم',
+ 'sat-short-future-zero' => 'خلال {0} سبت',
+ 'sat-short-past-few' => 'قبل {0} سبت',
+ 'sat-short-past-many' => 'قبل {0} سبت',
+ 'sat-short-past-one' => 'سبت ماضي',
+ 'sat-short-past-other' => 'قبل {0} سبت',
+ 'sat-short-past-two' => 'سبت قبل الماضي',
+ 'sat-short-past-zero' => 'قبل {0} سبت',
'second-few' => '{0} ثوان',
- 'second-future-few' => 'خلال {0} ثوانِ',
+ 'second-future-few' => 'خلال {0} ثوانٍ',
'second-future-many' => 'خلال {0} ثانية',
- 'second-future-one' => 'خلال {0} من الثواني',
- 'second-future-other' => 'خلال {0} من الثواني',
+ 'second-future-one' => 'خلال ثانية واحدة',
+ 'second-future-other' => 'خلال {0} ثانية',
'second-future-two' => 'خلال ثانيتين',
- 'second-future-zero' => 'خلال {0} من الثواني',
+ 'second-future-zero' => 'خلال {0} ثانية',
'second-many' => '{0} ثانية',
- 'second-narrow-future-few' => 'خلال {0} من الثواني',
- 'second-narrow-future-many' => 'خلال {0} من الثواني',
- 'second-narrow-future-one' => 'خلال {0} من الثواني',
- 'second-narrow-future-other' => 'خلال {0} من الثواني',
- 'second-narrow-future-two' => 'خلال {0} من الثواني',
- 'second-narrow-future-zero' => 'خلال {0} من الثواني',
- 'second-narrow-past-few' => 'قبل {0} من الثواني',
- 'second-narrow-past-many' => 'قبل {0} من الثواني',
- 'second-narrow-past-one' => 'قبل {0} من الثواني',
- 'second-narrow-past-other' => 'قبل {0} من الثواني',
- 'second-narrow-past-two' => 'قبل {0} من الثواني',
- 'second-narrow-past-zero' => 'قبل {0} من الثواني',
+ 'second-narrow-future-few' => 'خلال {0} ثوانٍ',
+ 'second-narrow-future-many' => 'خلال {0} ثانية',
+ 'second-narrow-future-one' => 'خلال ثانية واحدة',
+ 'second-narrow-future-other' => 'خلال {0} ثانية',
+ 'second-narrow-future-two' => 'خلال ثانيتين',
+ 'second-narrow-future-zero' => 'خلال {0} ثانية',
+ 'second-narrow-past-few' => 'قبل {0} ثوانٍ',
+ 'second-narrow-past-many' => 'قبل {0} ثانية',
+ 'second-narrow-past-one' => 'قبل ثانية واحدة',
+ 'second-narrow-past-other' => 'قبل {0} ثانية',
+ 'second-narrow-past-two' => 'قبل ثانيتين',
+ 'second-narrow-past-zero' => 'قبل {0} ثانية',
'second-one' => 'ثانية',
'second-other' => '{0} ثانية',
'second-past-few' => 'قبل {0} ثوانِ',
'second-past-many' => 'قبل {0} ثانية',
- 'second-past-one' => 'قبل {0} من الثواني',
- 'second-past-other' => 'قبل {0} من الثواني',
+ 'second-past-one' => 'قبل ثانية واحدة',
+ 'second-past-other' => 'قبل {0} ثانية',
'second-past-two' => 'قبل ثانيتين',
- 'second-past-zero' => 'قبل {0} من الثواني',
- 'second-short-future-few' => 'خلال {0} من الثواني',
- 'second-short-future-many' => 'خلال {0} من الثواني',
- 'second-short-future-one' => 'خلال {0} من الثواني',
- 'second-short-future-other' => 'خلال {0} من الثواني',
- 'second-short-future-two' => 'خلال {0} من الثواني',
- 'second-short-future-zero' => 'خلال {0} من الثواني',
- 'second-short-past-few' => 'قبل {0} من الثواني',
- 'second-short-past-many' => 'قبل {0} من الثواني',
- 'second-short-past-one' => 'قبل {0} من الثواني',
- 'second-short-past-other' => 'قبل {0} من الثواني',
- 'second-short-past-two' => 'قبل {0} من الثواني',
- 'second-short-past-zero' => 'قبل {0} من الثواني',
+ 'second-past-zero' => 'قبل {0} ثانية',
+ 'second-short-future-few' => 'خلال {0} ثوانٍ',
+ 'second-short-future-many' => 'خلال {0} ثانية',
+ 'second-short-future-one' => 'خلال ثانية واحدة',
+ 'second-short-future-other' => 'خلال {0} ثانية',
+ 'second-short-future-two' => 'خلال ثانيتين',
+ 'second-short-future-zero' => 'خلال {0} ثانية',
+ 'second-short-past-few' => 'قبل {0} ثوانٍ',
+ 'second-short-past-many' => 'قبل {0} ثانية',
+ 'second-short-past-one' => 'قبل ثانية واحدة',
+ 'second-short-past-other' => 'قبل {0} ثانية',
+ 'second-short-past-two' => 'قبل ثانيتين',
+ 'second-short-past-zero' => 'قبل {0} ثانية',
'second-two' => 'ثانيتان',
'second-zero' => '{0} ثانية',
+ 'sun-future-few' => 'خلال {0} أحد',
+ 'sun-future-many' => 'خلال {0} أحد',
+ 'sun-future-one' => 'الأحد القادم',
+ 'sun-future-other' => 'خلال {0} أحد',
+ 'sun-future-two' => 'الأحد بعد القادم',
+ 'sun-future-zero' => 'خلال {0} أحد',
+ 'sun-narrow-future-few' => 'خلال {0} أحد',
+ 'sun-narrow-future-many' => 'خلال {0} أحد',
+ 'sun-narrow-future-one' => 'أحد قادم',
+ 'sun-narrow-future-other' => 'خلال {0} أحد',
+ 'sun-narrow-future-two' => 'أحد بعد القادم',
+ 'sun-narrow-future-zero' => 'خلال {0} أحد',
+ 'sun-narrow-past-few' => 'قبل {0} أحد',
+ 'sun-narrow-past-many' => 'قبل {0} أحد',
+ 'sun-narrow-past-one' => 'أحد ماضي',
+ 'sun-narrow-past-other' => 'قبل {0} أحد',
+ 'sun-narrow-past-two' => 'أحد قبل الماضي',
+ 'sun-narrow-past-zero' => 'قبل {0} أحد',
+ 'sun-past-few' => 'قبل {0} أحد',
+ 'sun-past-many' => 'قبل {0} أحد',
+ 'sun-past-one' => 'الأحد الماضي',
+ 'sun-past-other' => 'قبل {0} أحد',
+ 'sun-past-two' => 'الأحد قبل الماضي',
+ 'sun-past-zero' => 'قبل {0} أحد',
+ 'sun-short-future-few' => 'خلال {0} أحد',
+ 'sun-short-future-many' => 'خلال {0} أحد',
+ 'sun-short-future-one' => 'أحد قادم',
+ 'sun-short-future-other' => 'خلال {0} أحد',
+ 'sun-short-future-two' => 'أحد بعد القادم',
+ 'sun-short-future-zero' => 'خلال {0} أحد',
+ 'sun-short-past-few' => 'قبل {0} أحد',
+ 'sun-short-past-many' => 'قبل {0} أحد',
+ 'sun-short-past-one' => 'أحد ماضي',
+ 'sun-short-past-other' => 'قبل {0} أحد',
+ 'sun-short-past-two' => 'أحد قبل الماضي',
+ 'sun-short-past-zero' => 'قبل {0} أحد',
+ 'thu-future-few' => 'خلال {0} أيام خميس',
+ 'thu-future-many' => 'خلال {0} يوم خميس',
+ 'thu-future-one' => 'الخميس القادم',
+ 'thu-future-other' => 'خلال {0} يوم خميس',
+ 'thu-future-two' => 'الخميس بعد القادم',
+ 'thu-future-zero' => 'خلال {0} يوم خميس',
+ 'thu-narrow-future-few' => 'خلال {0} خميس',
+ 'thu-narrow-future-many' => 'خلال {0} خميس',
+ 'thu-narrow-future-one' => 'خلال {0} يوم خميس',
+ 'thu-narrow-future-other' => 'خلال {0} خميس',
+ 'thu-narrow-future-two' => 'الخميس بعد القادم',
+ 'thu-narrow-future-zero' => 'خلال {0} خميس',
+ 'thu-narrow-past-few' => 'قبل {0} خميس',
+ 'thu-narrow-past-many' => 'قبل {0} خميس',
+ 'thu-narrow-past-one' => 'خميس ماضي',
+ 'thu-narrow-past-other' => 'قبل {0} خميس',
+ 'thu-narrow-past-two' => 'خميس قبل الماضي',
+ 'thu-narrow-past-zero' => 'قبل {0} خميس',
+ 'thu-past-few' => 'قبل {0} أيام خميس',
+ 'thu-past-many' => 'قبل {0} يوم خميس',
+ 'thu-past-one' => 'الخميس الماضي',
+ 'thu-past-other' => 'قبل {0} يوم خميس',
+ 'thu-past-two' => 'الخميس قبل الماضي',
+ 'thu-past-zero' => 'قبل {0} يوم خميس',
+ 'thu-short-future-few' => 'خلال {0} خميس',
+ 'thu-short-future-many' => 'خلال {0} خميس',
+ 'thu-short-future-one' => 'الخميس القادم',
+ 'thu-short-future-other' => 'خلال {0} خميس',
+ 'thu-short-future-two' => 'الخميس بعد القادم',
+ 'thu-short-future-zero' => 'خلال {0} خميس',
+ 'thu-short-past-few' => 'قبل {0} خميس',
+ 'thu-short-past-many' => 'قبل {0} خميس',
+ 'thu-short-past-one' => 'خميس ماضي',
+ 'thu-short-past-other' => 'قبل {0} خميس',
+ 'thu-short-past-two' => 'خميس قبل الماضي',
+ 'thu-short-past-zero' => 'قبل {0} خميس',
+ 'tue-future-few' => 'خلال {0} أيام ثلاثاء',
+ 'tue-future-many' => 'خلال {0} يوم ثلاثاء',
+ 'tue-future-one' => 'الثلاثاء القادم',
+ 'tue-future-other' => 'خلال {0} يوم ثلاثاء',
+ 'tue-future-two' => 'الثلاثاء بعد القادم',
+ 'tue-future-zero' => 'خلال {0} يوم ثلاثاء',
+ 'tue-narrow-future-few' => 'خلال {0} ثلاثاء',
+ 'tue-narrow-future-many' => 'خلال {0} ثلاثاء',
+ 'tue-narrow-future-one' => 'ثلاثاء قادم',
+ 'tue-narrow-future-other' => 'خلال {0} ثلاثاء',
+ 'tue-narrow-future-two' => 'ثلاثاء بعد القادم',
+ 'tue-narrow-future-zero' => 'خلال {0} ثلاثاء',
+ 'tue-narrow-past-few' => 'قبل {0} ثلاثاء',
+ 'tue-narrow-past-many' => 'قبل {0} ثلاثاء',
+ 'tue-narrow-past-one' => 'ثلاثاء ماضي',
+ 'tue-narrow-past-other' => 'قبل {0} ثلاثاء',
+ 'tue-narrow-past-two' => 'ثلاثاء قبل الماضي',
+ 'tue-narrow-past-zero' => 'قبل {0} ثلاثاء',
+ 'tue-past-few' => 'قبل {0} أيام ثلاثاء',
+ 'tue-past-many' => 'قبل {0} يوم ثلاثاء',
+ 'tue-past-one' => 'الثلاثاء الماضي',
+ 'tue-past-other' => 'قبل {0} يوم ثلاثاء',
+ 'tue-past-two' => 'الثلاثاء قبل الماضي',
+ 'tue-past-zero' => 'قبل {0} يوم ثلاثاء',
+ 'tue-short-future-few' => 'خلال {0} ثلاثاء',
+ 'tue-short-future-many' => 'خلال {0} ثلاثاء',
+ 'tue-short-future-one' => 'ثلاثاء قادم',
+ 'tue-short-future-other' => 'خلال {0} ثلاثاء',
+ 'tue-short-future-two' => 'ثلاثاء بعد القادم',
+ 'tue-short-future-zero' => 'خلال {0} ثلاثاء',
+ 'tue-short-past-few' => 'قبل {0} ثلاثاء',
+ 'tue-short-past-many' => 'قبل {0} ثلاثاء',
+ 'tue-short-past-one' => 'ثلاثاء ماضي',
+ 'tue-short-past-other' => 'قبل {0} ثلاثاء',
+ 'tue-short-past-two' => 'ثلاثاء قبل الماضي',
+ 'tue-short-past-zero' => 'قبل {0} ثلاثاء',
+ 'wed-future-few' => 'خلال {0} أيام أربعاء',
+ 'wed-future-many' => 'خلال {0} يوم أربعاء',
+ 'wed-future-one' => 'الأربعاء القادم',
+ 'wed-future-other' => 'خلال {0} يوم أربعاء',
+ 'wed-future-two' => 'الأربعاء بعد القادم',
+ 'wed-future-zero' => 'خلال {0} يوم أربعاء',
+ 'wed-narrow-future-few' => 'خلال {0} أربعاء',
+ 'wed-narrow-future-many' => 'خلال {0} أربعاء',
+ 'wed-narrow-future-one' => 'أربعاء قادم',
+ 'wed-narrow-future-other' => 'خلال {0} أربعاء',
+ 'wed-narrow-future-two' => 'أربعاء بعد القادم',
+ 'wed-narrow-future-zero' => 'خلال {0} أربعاء',
+ 'wed-narrow-past-few' => 'قبل {0} أربعاء',
+ 'wed-narrow-past-many' => 'قبل {0} أربعاء',
+ 'wed-narrow-past-one' => 'أربعاء ماضي',
+ 'wed-narrow-past-other' => 'قبل {0} أربعاء',
+ 'wed-narrow-past-two' => 'أربعاء قبل الماضي',
+ 'wed-narrow-past-zero' => 'قبل {0} أربعاء',
+ 'wed-past-few' => 'قبل {0} أيام أربعاء',
+ 'wed-past-many' => 'قبل {0} يوم أربعاء',
+ 'wed-past-one' => 'الأربعاء الماضي',
+ 'wed-past-other' => 'قبل {0} يوم أربعاء',
+ 'wed-past-two' => 'الأربعاء قبل الماضي',
+ 'wed-past-zero' => 'قبل {0} يوم أربعاء',
+ 'wed-short-future-few' => 'خلال {0} أربعاء',
+ 'wed-short-future-many' => 'خلال {0} أربعاء',
+ 'wed-short-future-one' => 'خلال {0} أربعاء',
+ 'wed-short-future-other' => 'خلال {0} أربعاء',
+ 'wed-short-future-two' => 'خلال {0} أربعاء',
+ 'wed-short-future-zero' => 'خلال {0} أربعاء',
+ 'wed-short-past-few' => 'قبل {0} أربعاء',
+ 'wed-short-past-many' => 'قبل {0} أربعاء',
+ 'wed-short-past-one' => 'أربعاء ماضي',
+ 'wed-short-past-other' => 'قبل {0} أربعاء',
+ 'wed-short-past-two' => 'أربعاء قبل الماضي',
+ 'wed-short-past-zero' => 'قبل {0} أربعاء',
'week-few' => '{0} أسابيع',
'week-future-few' => 'خلال {0} أسابيع',
'week-future-many' => 'خلال {0} أسبوعًا',
- 'week-future-one' => 'خلال {0} من الأسابيع',
- 'week-future-other' => 'خلال {0} من الأسابيع',
+ 'week-future-one' => 'خلال أسبوع واحد',
+ 'week-future-other' => 'خلال {0} أسبوع',
'week-future-two' => 'خلال أسبوعين',
- 'week-future-zero' => 'خلال {0} من الأسابيع',
+ 'week-future-zero' => 'خلال {0} أسبوع',
'week-many' => '{0} أسبوعًا',
- 'week-narrow-future-few' => 'خلال {0} من الأسابيع',
- 'week-narrow-future-many' => 'خلال {0} من الأسابيع',
- 'week-narrow-future-one' => 'خلال {0} من الأسابيع',
- 'week-narrow-future-other' => 'خلال {0} من الأسابيع',
- 'week-narrow-future-two' => 'خلال {0} من الأسابيع',
- 'week-narrow-future-zero' => 'خلال {0} من الأسابيع',
- 'week-narrow-past-few' => 'قبل {0} من الأسابيع',
- 'week-narrow-past-many' => 'قبل {0} من الأسابيع',
- 'week-narrow-past-one' => 'قبل {0} من الأسابيع',
- 'week-narrow-past-other' => 'قبل {0} من الأسابيع',
- 'week-narrow-past-two' => 'قبل {0} من الأسابيع',
- 'week-narrow-past-zero' => 'قبل {0} من الأسابيع',
+ 'week-narrow-future-few' => 'خلال {0} أسابيع',
+ 'week-narrow-future-many' => 'خلال {0} أسبوعًا',
+ 'week-narrow-future-one' => 'خلال أسبوع واحد',
+ 'week-narrow-future-other' => 'خلال {0} أسبوع',
+ 'week-narrow-future-two' => 'خلال أسبوعين',
+ 'week-narrow-future-zero' => 'خلال {0} أسبوع',
+ 'week-narrow-past-few' => 'قبل {0} أسابيع',
+ 'week-narrow-past-many' => 'قبل {0} أسبوعًا',
+ 'week-narrow-past-one' => 'قبل أسبوع واحد',
+ 'week-narrow-past-other' => 'قبل {0} أسبوع',
+ 'week-narrow-past-two' => 'قبل أسبوعين',
+ 'week-narrow-past-zero' => 'قبل {0} أسبوع',
'week-one' => 'أسبوع',
'week-other' => '{0} أسبوع',
'week-past-few' => 'قبل {0} أسابيع',
'week-past-many' => 'قبل {0} أسبوعًا',
- 'week-past-one' => 'قبل {0} من الأسابيع',
- 'week-past-other' => 'قبل {0} من الأسابيع',
+ 'week-past-one' => 'قبل أسبوع واحد',
+ 'week-past-other' => 'قبل {0} أسبوع',
'week-past-two' => 'قبل أسبوعين',
- 'week-past-zero' => 'قبل {0} من الأسابيع',
- 'week-short-future-few' => 'خلال {0} من الأسابيع',
- 'week-short-future-many' => 'خلال {0} من الأسابيع',
- 'week-short-future-one' => 'خلال {0} من الأسابيع',
- 'week-short-future-other' => 'خلال {0} من الأسابيع',
- 'week-short-future-two' => 'خلال {0} من الأسابيع',
- 'week-short-future-zero' => 'خلال {0} من الأسابيع',
- 'week-short-past-few' => 'قبل {0} من الأسابيع',
- 'week-short-past-many' => 'قبل {0} من الأسابيع',
- 'week-short-past-one' => 'قبل {0} من الأسابيع',
- 'week-short-past-other' => 'قبل {0} من الأسابيع',
- 'week-short-past-two' => 'قبل {0} من الأسابيع',
- 'week-short-past-zero' => 'قبل {0} من الأسابيع',
+ 'week-past-zero' => 'قبل {0} أسبوع',
+ 'week-short-future-few' => 'خلال {0} أسابيع',
+ 'week-short-future-many' => 'خلال {0} أسبوعًا',
+ 'week-short-future-one' => 'خلال أسبوع واحد',
+ 'week-short-future-other' => 'خلال {0} أسبوع',
+ 'week-short-future-two' => 'خلال {0} أسبوعين',
+ 'week-short-future-zero' => 'خلال {0} أسبوع',
+ 'week-short-past-few' => 'قبل {0} أسابيع',
+ 'week-short-past-many' => 'قبل {0} أسبوعًا',
+ 'week-short-past-one' => 'قبل أسبوع واحد',
+ 'week-short-past-other' => 'قبل {0} أسبوع',
+ 'week-short-past-two' => 'قبل أسبوعين',
+ 'week-short-past-zero' => 'قبل {0} أسبوع',
'week-two' => 'أسبوعان',
'week-zero' => '{0} أسبوع',
'year-few' => '{0} سنوات',
'year-future-few' => 'خلال {0} سنوات',
'year-future-many' => 'خلال {0} سنة',
- 'year-future-one' => 'خلال {0} من السنوات',
- 'year-future-other' => 'خلال {0} من السنوات',
+ 'year-future-one' => 'خلال سنة واحدة',
+ 'year-future-other' => 'خلال {0} سنة',
'year-future-two' => 'خلال سنتين',
- 'year-future-zero' => 'خلال {0} من السنوات',
+ 'year-future-zero' => 'خلال {0} سنة',
'year-many' => '{0} سنة',
- 'year-narrow-future-few' => 'خلال {0} من السنوات',
- 'year-narrow-future-many' => 'خلال {0} من السنوات',
- 'year-narrow-future-one' => 'خلال {0} من السنوات',
- 'year-narrow-future-other' => 'خلال {0} من السنوات',
- 'year-narrow-future-two' => 'خلال {0} من السنوات',
- 'year-narrow-future-zero' => 'خلال {0} من السنوات',
- 'year-narrow-past-few' => 'قبل {0} من السنوات',
- 'year-narrow-past-many' => 'قبل {0} من السنوات',
- 'year-narrow-past-one' => 'قبل {0} من السنوات',
- 'year-narrow-past-other' => 'قبل {0} من السنوات',
- 'year-narrow-past-two' => 'قبل {0} من السنوات',
- 'year-narrow-past-zero' => 'قبل {0} من السنوات',
+ 'year-narrow-future-few' => 'خلال {0} سنوات',
+ 'year-narrow-future-many' => 'خلال {0} سنة',
+ 'year-narrow-future-one' => 'خلال سنة واحدة',
+ 'year-narrow-future-other' => 'خلال {0} سنة',
+ 'year-narrow-future-two' => 'خلال سنتين',
+ 'year-narrow-future-zero' => 'خلال {0} سنة',
+ 'year-narrow-past-few' => 'قبل {0} سنوات',
+ 'year-narrow-past-many' => 'قبل {0} سنة',
+ 'year-narrow-past-one' => 'قبل سنة واحدة',
+ 'year-narrow-past-other' => 'قبل {0} سنة',
+ 'year-narrow-past-two' => 'قبل سنتين',
+ 'year-narrow-past-zero' => 'قبل {0} سنة',
'year-one' => 'سنة',
'year-other' => '{0} سنة',
'year-past-few' => 'قبل {0} سنوات',
'year-past-many' => 'قبل {0} سنة',
- 'year-past-one' => 'قبل {0} من السنوات',
- 'year-past-other' => 'قبل {0} من السنوات',
+ 'year-past-one' => 'قبل سنة واحدة',
+ 'year-past-other' => 'قبل {0} سنة',
'year-past-two' => 'قبل سنتين',
- 'year-past-zero' => 'قبل {0} من السنوات',
- 'year-short-future-few' => 'خلال {0} من السنوات',
- 'year-short-future-many' => 'خلال {0} من السنوات',
- 'year-short-future-one' => 'خلال {0} من السنوات',
- 'year-short-future-other' => 'خلال {0} من السنوات',
- 'year-short-future-two' => 'خلال {0} من السنوات',
- 'year-short-future-zero' => 'خلال {0} من السنوات',
- 'year-short-past-few' => 'قبل {0} من السنوات',
- 'year-short-past-many' => 'قبل {0} من السنوات',
- 'year-short-past-one' => 'قبل {0} من السنوات',
- 'year-short-past-other' => 'قبل {0} من السنوات',
- 'year-short-past-two' => 'قبل {0} من السنوات',
- 'year-short-past-zero' => 'قبل {0} من السنوات',
+ 'year-past-zero' => 'قبل {0} سنة',
+ 'year-short-future-few' => 'خلال {0} سنوات',
+ 'year-short-future-many' => 'خلال {0} سنة',
+ 'year-short-future-one' => 'خلال سنة واحدة',
+ 'year-short-future-other' => 'خلال {0} سنة',
+ 'year-short-future-two' => 'خلال سنتين',
+ 'year-short-future-zero' => 'خلال {0} سنة',
+ 'year-short-past-few' => 'قبل {0} سنوات',
+ 'year-short-past-many' => 'قبل {0} سنة',
+ 'year-short-past-one' => 'قبل سنة واحدة',
+ 'year-short-past-other' => 'قبل {0} سنة',
+ 'year-short-past-two' => 'قبل سنتين',
+ 'year-short-past-zero' => 'قبل {0} سنة',
'year-two' => 'سنتان',
'year-zero' => '{0} سنة',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesAs.php b/MLEB/cldr/CldrNames/CldrNamesAs.php
index b98ddc32..1af59e03 100644
--- a/MLEB/cldr/CldrNames/CldrNamesAs.php
+++ b/MLEB/cldr/CldrNames/CldrNamesAs.php
@@ -1,26 +1,1183 @@
<?php
-$languageNames = array(
+$languageNames = [
+ 'aa' => 'আফাৰ',
+ 'ab' => 'আবখাজিয়ান',
+ 'ace' => 'আচিনিজ',
+ 'ada' => 'আদাংমে',
+ 'ady' => 'আদিগে',
+ 'af' => 'আফ্ৰিকানছ্',
+ 'agq' => 'আঘেম',
+ 'ain' => 'আইনু',
+ 'ak' => 'আকান',
+ 'ale' => 'আলেউট',
+ 'alt' => 'দাক্ষিণাত্য আল্টাই',
+ 'am' => 'আমহাৰিক',
+ 'an' => 'আৰ্গোনিজ',
+ 'anp' => 'আঙ্গিকা',
+ 'ar' => 'আৰবী',
+ 'ar-001' => 'আধুনিক মানক আৰবী',
+ 'arn' => 'মাপুচে',
+ 'arp' => 'আৰাপাহো',
'as' => 'অসমীয়া',
+ 'asa' => 'আছু',
+ 'ast' => 'এষ্টুৰীয়',
+ 'av' => 'আভেৰিক',
+ 'awa' => 'আৱাধি',
+ 'ay' => 'আয়মাৰা',
+ 'az' => 'আজেৰবাইজানী',
+ 'ba' => 'বাছখিৰ',
+ 'ban' => 'বালিনীজ',
+ 'bas' => 'বাছা',
+ 'be' => 'বেলাৰুছীয়',
+ 'bem' => 'বেম্বা',
+ 'bez' => 'বেনা',
+ 'bg' => 'বুলগেৰীয়',
+ 'bho' => 'ভোজপুৰী',
+ 'bi' => 'বিছলামা',
+ 'bin' => 'বিনি',
+ 'bla' => 'ছিক্সিকা',
+ 'bm' => 'বামবাৰা',
+ 'bn' => 'বাংলা',
+ 'bo' => 'তিব্বতী',
+ 'br' => 'ব্ৰেটন',
+ 'brx' => 'বড়ো',
+ 'bs' => 'বছনীয়',
+ 'bug' => 'বগিনীজ',
+ 'byn' => 'ব্লিন',
+ 'ca' => 'কাতালান',
+ 'ce' => 'চেচেন',
+ 'ceb' => 'চিবুৱানো',
+ 'cgg' => 'চিগা',
+ 'ch' => 'চামোৰো',
+ 'chk' => 'চুকিজ',
+ 'chm' => 'মাৰি',
+ 'cho' => 'চোক্টাউ',
+ 'chr' => 'চেৰোকি',
+ 'chy' => 'চাইয়েন',
+ 'ckb' => 'চেণ্ট্ৰেল কুৰ্ডিচ',
+ 'co' => 'কোৰ্ছিকান',
+ 'crs' => 'ছেছেলৱা ক্ৰিওল ফ্ৰেন্স',
+ 'cs' => 'চেক',
+ 'cu' => 'চাৰ্চ শ্লেভিক',
+ 'cv' => 'চুভাচ',
+ 'cy' => 'ৱেলচ',
+ 'da' => 'ডেনিচ',
+ 'dak' => 'ডাকোটা',
+ 'dar' => 'দাৰ্গৱা',
+ 'dav' => 'তেইতা',
+ 'de' => 'জাৰ্মান',
+ 'de-at' => 'অষ্ট্ৰেলিয়ান জাৰ্মান',
+ 'de-ch' => 'ছুইচ হাই জাৰ্মান',
+ 'dgr' => 'ডোগ্ৰিব',
+ 'dje' => 'ঝাৰ্মা',
+ 'dsb' => 'ল’ৱাৰ ছোৰ্বিয়ান',
+ 'dua' => 'ডুৱালা',
+ 'dv' => 'দিবেহি',
+ 'dyo' => 'জোলা-ফ’নি',
+ 'dz' => 'জোংখা',
+ 'dzg' => 'দাজাগা',
+ 'ebu' => 'এম্বু',
+ 'ee' => 'ইৱে',
+ 'efi' => 'এফিক',
+ 'eka' => 'একাজুক',
+ 'el' => 'গ্ৰীক',
+ 'en' => 'ইংৰাজী',
+ 'en-au' => 'অষ্ট্ৰেলিয়ান ইংৰাজী',
+ 'en-ca' => 'কানাডিয়ান ইংৰাজী',
+ 'en-gb' => 'ব্ৰিটিছ ইংৰাজী',
+ 'en-us' => 'আমেৰিকান ইংৰাজী',
+ 'eo' => 'এস্পেৰান্তো',
+ 'es' => 'স্পেনিচ',
+ 'es-419' => 'লেটিন আমেৰিকান স্পেনিচ',
+ 'es-es' => 'ইউৰোপীয়ান স্পেনিচ',
+ 'es-mx' => 'মেক্সিকান স্পেনিচ',
+ 'et' => 'এষ্টোনিয়',
+ 'eu' => 'বাস্ক',
+ 'ewo' => 'ইওন্দো',
+ 'fa' => 'ফাৰ্ছী',
+ 'ff' => 'ফুলাহ',
+ 'fi' => 'ফিনিচ',
+ 'fil' => 'ফিলিপিনো',
+ 'fj' => 'ফিজিয়ান',
+ 'fo' => 'ফাৰোইজ',
+ 'fon' => 'ফ’ন',
+ 'fr' => 'ফ্ৰেন্স',
+ 'fr-ca' => 'কানাডিয়ান ফ্ৰেন্স',
+ 'fr-ch' => 'ছুইচ ফ্ৰেন্স',
+ 'fur' => 'ফ্ৰিউলিয়ান',
+ 'fy' => 'ৱেষ্টাৰ্ণ ফ্ৰিছিয়ান',
+ 'ga' => 'আইৰিচ',
+ 'gaa' => 'গা',
+ 'gd' => 'স্কটিচ গেইলিক',
+ 'gez' => 'গীজ',
+ 'gil' => 'গিলবাৰ্টিছ',
+ 'gl' => 'গেলিচিয়ান',
+ 'gn' => 'গুৱাৰাণী',
+ 'gor' => 'গোৰোন্তালো',
+ 'gsw' => 'ছুইচ জাৰ্মান',
+ 'gu' => 'গুজৰাটী',
+ 'guz' => 'গুছি',
+ 'gv' => 'মেংক্স',
+ 'gwi' => 'জিউইচিন',
+ 'ha' => 'হাউছা',
+ 'haw' => 'হাৱাই',
+ 'he' => 'হিব্ৰু',
+ 'hi' => 'হিন্দী',
+ 'hil' => 'হিলিগায়নোন',
+ 'hmn' => 'হমং',
+ 'hr' => 'ক্ৰোৱেচিয়ান',
+ 'hsb' => 'আপাৰ ছোৰ্বিয়ান',
+ 'ht' => 'হেইটিয়ান ক্ৰিয়ল',
+ 'hu' => 'হাঙ্গেৰিয়ান',
+ 'hup' => 'হুপা',
+ 'hy' => 'আৰ্মেনীয়',
+ 'hz' => 'হেৰেৰো',
+ 'ia' => 'ইণ্টাৰলিংগুৱা',
+ 'iba' => 'ইবান',
+ 'ibb' => 'ইবিবিও',
+ 'id' => 'ইণ্ডোনেচিয়',
'ie' => 'উপস্থাপন ভাষা',
- 'km' => 'কম্বোডিয়ান',
-);
+ 'ig' => 'ইগ্বো',
+ 'ii' => 'ছিচুৱান ই',
+ 'ilo' => 'ইলোকো',
+ 'inh' => 'ইংগুচ',
+ 'io' => 'ইডো',
+ 'is' => 'আইচলেণ্ডিক',
+ 'it' => 'ইটালিয়ান',
+ 'iu' => 'ইনুক্টিটুট',
+ 'ja' => 'জাপানী',
+ 'jbo' => 'লোজ্বান',
+ 'jgo' => 'নগোম্বা',
+ 'jmc' => 'মেকহেম',
+ 'jv' => 'জাভানী',
+ 'ka' => 'জৰ্জিয়ান',
+ 'kab' => 'কাবাইল',
+ 'kac' => 'কাচিন',
+ 'kaj' => 'জজু',
+ 'kam' => 'কাম্বা',
+ 'kbd' => 'কাবাৰ্ডিয়ান',
+ 'kcg' => 'ত্যাপ',
+ 'kde' => 'মাকোণ্ড',
+ 'kea' => 'কাবুভেৰ্ডিয়ানু',
+ 'kfo' => 'কোৰো',
+ 'kha' => 'খাচি',
+ 'khq' => 'কোয়াৰ চিনি',
+ 'ki' => 'কিকুয়ু',
+ 'kj' => 'কুয়ানিয়ামা',
+ 'kk' => 'কাজাখ',
+ 'kkj' => 'কাকো',
+ 'kl' => 'কালালিছুট',
+ 'kln' => 'কালেনজিন',
+ 'km' => 'খমেৰ',
+ 'kmb' => 'কিম্বুন্দু',
+ 'kn' => 'কানাড়া',
+ 'ko' => 'কোৰিয়ান',
+ 'kok' => 'কোংকণী',
+ 'kpe' => 'কেপেল',
+ 'kr' => 'কানুৰি',
+ 'krc' => 'কাৰাচে-বাল্কাৰ',
+ 'krl' => 'কেৰেলিয়ান',
+ 'kru' => 'কুৰুখ',
+ 'ks' => 'কাশ্মিৰী',
+ 'ksb' => 'চাম্বালা',
+ 'ksf' => 'বাফিয়া',
+ 'ksh' => 'কোলোগনিয়ান',
+ 'ku' => 'কুৰ্ডিচ',
+ 'kum' => 'কুমিক',
+ 'kv' => 'কোমি',
+ 'kw' => 'কোৰ্নিচ',
+ 'ky' => 'কিৰ্গিজ',
+ 'la' => 'লেটিন',
+ 'lad' => 'লাডিনো',
+ 'lag' => 'লাংগি',
+ 'lb' => 'লাক্সেমবাৰ্গিচ',
+ 'lez' => 'লেজঘিয়ান',
+ 'lg' => 'গান্দা',
+ 'li' => 'লিম্বুৰ্গিচ',
+ 'lkt' => 'লাকোটা',
+ 'ln' => 'লিংগালা',
+ 'lo' => 'লাও',
+ 'loz' => 'লোজি',
+ 'lrc' => 'উদীচ্য লুৰি',
+ 'lt' => 'লিথুৱানিয়ান',
+ 'lu' => 'লুবা-কাটাংগা',
+ 'lua' => 'লুবা-লুলুৱা',
+ 'lun' => 'লুণ্ডা',
+ 'luo' => 'লুও',
+ 'lus' => 'মিজো',
+ 'luy' => 'লুইয়া',
+ 'lv' => 'লাটভিয়ান',
+ 'mad' => 'মাদুৰেছে',
+ 'mag' => 'মাগাহি',
+ 'mai' => 'মৈথিলী',
+ 'mak' => 'মাকাছাৰ',
+ 'mas' => 'মাছাই',
+ 'mdf' => 'মোক্সা',
+ 'men' => 'মেণ্ডে',
+ 'mer' => 'মেৰু',
+ 'mfe' => 'মৰিছিয়ান',
+ 'mg' => 'মালাগাছী',
+ 'mgh' => 'মাখুৱা-মিট্টো',
+ 'mgo' => 'মেটা',
+ 'mh' => 'মাৰ্চলিজ',
+ 'mi' => 'মাওৰি',
+ 'mic' => 'মিকমেক',
+ 'min' => 'মিনাংকাবাউ',
+ 'mk' => 'মেচিডোনীয়',
+ 'ml' => 'মালায়ালম',
+ 'mn' => 'মংগোলীয়',
+ 'mni' => 'মণিপুৰী',
+ 'moh' => 'মোহোক',
+ 'mos' => 'মোছি',
+ 'mr' => 'মাৰাঠী',
+ 'ms' => 'মালয়',
+ 'mt' => 'মাল্টিজ',
+ 'mua' => 'মুণ্ডাং',
+ 'mul' => 'একাধিক ভাষা',
+ 'mus' => 'ক্ৰীক',
+ 'mwl' => 'মিৰাণ্ডিজ',
+ 'my' => 'বাৰ্মীজ',
+ 'myv' => 'এৰজিয়া',
+ 'mzn' => 'মাজেন্দাৰানি',
+ 'na' => 'নাউৰু',
+ 'nap' => 'নিয়াপোলিটেন',
+ 'naq' => 'নামা',
+ 'nb' => 'নৰৱেজিয়ান বোকমাল',
+ 'nd' => 'উত্তৰ নিবেবেলে',
+ 'ne' => 'নেপালী',
+ 'new' => 'নেৱাৰি',
+ 'ng' => 'এন্দোঙ্গা',
+ 'nia' => 'নিয়াছ',
+ 'niu' => 'নিয়ুৱান',
+ 'nl' => 'ডাচ',
+ 'nl-be' => 'ফ্লেমিচ',
+ 'nmg' => 'কোৱাছিঅ’',
+ 'nn' => 'নৰৱেজিয়ান নায়নোৰ্স্ক',
+ 'nnh' => 'নিয়েম্বোন',
+ 'nog' => 'নোগাই',
+ 'nqo' => 'এন্কো',
+ 'nr' => 'দক্ষিণ দেবেল',
+ 'nso' => 'উদীচ্য ছোথো',
+ 'nus' => 'নুয়েৰ',
+ 'nv' => 'নাভাজো',
+ 'ny' => 'ন্যাঞ্জা',
+ 'nyn' => 'ন্যানকোল',
+ 'oc' => 'অ’চিটান',
+ 'om' => 'ওৰোমো',
+ 'or' => 'ওড়িয়া',
+ 'os' => 'ওছেটিক',
+ 'pa' => 'পাঞ্জাবী',
+ 'pag' => 'পংগাছিনান',
+ 'pam' => 'পাম্পান্গা',
+ 'pap' => 'পাপিয়ামেণ্টো',
+ 'pau' => 'পালাউৱান',
+ 'pcm' => 'নাইজেৰিয়ান পিজিন',
+ 'pl' => 'প’লিচ',
+ 'prg' => 'প্ৰুছিয়ান',
+ 'ps' => 'পুস্ত',
+ 'pt' => 'পৰ্তুগীজ',
+ 'pt-br' => 'ব্ৰাজিলিয়ান পৰ্তুগীজ',
+ 'pt-pt' => 'ইউৰোপীয়ান পৰ্তুগীজ',
+ 'qu' => 'কুৱেচুৱা',
+ 'quc' => 'কিচিয়ে',
+ 'rap' => 'ৰাপানুই',
+ 'rar' => 'ৰাৰোতোঙ্গন',
+ 'rm' => 'ৰোমানচ',
+ 'rn' => 'ৰুন্দি',
+ 'ro' => 'ৰোমানীয়',
+ 'ro-md' => 'মোল্ডাভিয়ান',
+ 'rof' => 'ৰোম্বো',
+ 'ru' => 'ৰাছিয়ান',
+ 'rup' => 'আৰোমানীয়',
+ 'rw' => 'কিনয়াৰোৱাণ্ডা',
+ 'rwk' => 'ৰৱা',
+ 'sa' => 'সংস্কৃত',
+ 'sad' => 'ছান্দাৱে',
+ 'sah' => 'ছাখা',
+ 'saq' => 'ছাম্বুৰু',
+ 'sat' => 'চাওতালি',
+ 'sba' => 'নাংম্বে',
+ 'sbp' => 'ছাঙ্গু',
+ 'sc' => 'ছাৰ্ডিনিয়ান',
+ 'scn' => 'ছিচিলিয়ান',
+ 'sco' => 'স্কটছ',
+ 'sd' => 'সিন্ধি',
+ 'se' => 'উদীচ্য ছামি',
+ 'seh' => 'ছেনা',
+ 'ses' => 'কোইৰাবোৰো চেন্নি',
+ 'sg' => 'ছাঙ্গো',
+ 'shi' => 'তাচেলহিট',
+ 'shn' => 'চান',
+ 'si' => 'সিংহলা',
+ 'sk' => 'শ্লোভাক',
+ 'sl' => 'শ্লোভেনিয়ান',
+ 'sm' => 'ছামোন',
+ 'sma' => 'দাক্ষিণাত্য ছামি',
+ 'smj' => 'লুলে ছামি',
+ 'smn' => 'ইনাৰি ছামি',
+ 'sms' => 'স্কোল্ট ছামি',
+ 'sn' => 'চোনা',
+ 'snk' => 'ছোনিনকে',
+ 'so' => 'ছোমালি',
+ 'sq' => 'আলবেনীয়',
+ 'sr' => 'ছাৰ্বিয়ান',
+ 'srn' => 'স্ৰানান টোঙ্গো',
+ 'ss' => 'স্বাতি',
+ 'ssy' => 'ছাহো',
+ 'st' => 'দাক্ষিণাত্য ছোথো',
+ 'su' => 'ছুণ্ডানীজ',
+ 'suk' => 'ছুকুমা',
+ 'sv' => 'ছুইডিচ',
+ 'sw' => 'স্বাহিলি',
+ 'sw-cd' => 'কঙ্গো স্বাহিলি',
+ 'swb' => 'কোমোৰিয়ান',
+ 'syr' => 'চিৰিয়াক',
+ 'ta' => 'তামিল',
+ 'te' => 'তেলুগু',
+ 'tem' => 'টিম্নে',
+ 'teo' => 'তেছো',
+ 'tet' => 'তেতুম',
+ 'tg' => 'তাজিক',
+ 'th' => 'থাই',
+ 'ti' => 'টিগৰিনিয়া',
+ 'tig' => 'তাইগ্ৰে',
+ 'tk' => 'তুৰ্কমেন',
+ 'tlh' => 'ক্লিংগন',
+ 'tn' => 'ছোৱানা',
+ 'to' => 'টোঙ্গান',
+ 'tpi' => 'টোক পিছিন',
+ 'tr' => 'তুৰ্কী',
+ 'trv' => 'তাৰোকো',
+ 'ts' => 'ছোঙ্গা',
+ 'tt' => 'তাতাৰ',
+ 'tum' => 'তুম্বুকা',
+ 'tvl' => 'টুভালু',
+ 'twq' => 'টাছাৱাক',
+ 'ty' => 'তাহিতিয়ান',
+ 'tyv' => 'তুভিনিয়ান',
+ 'tzm' => 'চেণ্ট্ৰেল এটলাছ টামাজাইট',
+ 'udm' => 'উদমুৰ্ত',
+ 'ug' => 'উইঘুৰ',
+ 'uk' => 'ইউক্ৰেইনীয়',
+ 'umb' => 'উম্বুন্দু',
+ 'und' => 'অজ্ঞাত ভাষা',
+ 'ur' => 'উৰ্দু',
+ 'uz' => 'উজবেক',
+ 'vai' => 'ভাই',
+ 've' => 'ভেণ্ডা',
+ 'vi' => 'ভিয়েটনামী',
+ 'vo' => 'ভোলাপুক',
+ 'vun' => 'ভুঞ্জু',
+ 'wa' => 'ৱালুন',
+ 'wae' => 'ৱালছেৰ',
+ 'wal' => 'ওলেইটা',
+ 'war' => 'ৱাৰে',
+ 'wo' => 'ৱোলাফ',
+ 'xal' => 'কাল্মিক',
+ 'xh' => 'হোছা',
+ 'xog' => 'ছোগা',
+ 'yav' => 'য়াংবেন',
+ 'ybb' => 'য়েম্বা',
+ 'yi' => 'ইদ্দিছ',
+ 'yo' => 'ইউৰুবা',
+ 'yue' => 'কেণ্টোনীজ',
+ 'zgh' => 'ষ্টেণ্ডাৰ্ড মোৰোক্কান তামাজাইট',
+ 'zh' => 'চীনা',
+ 'zh-hans' => 'সৰলীকৃত চীনা',
+ 'zh-hant' => 'পৰম্পৰাগত চীনা',
+ 'zu' => 'ঝুলু',
+ 'zun' => 'ঝুনি',
+ 'zxx' => 'কোনো ভাষা সমল নাই',
+ 'zza' => 'ঝাঝা',
+];
-$countryNames = array(
- 'AQ' => 'এন্টাৰ্টিকা',
+$currencyNames = [
+ 'AED' => 'সংযুক্ত আৰব আমিৰাত ডিৰহেম',
+ 'AFN' => 'আফগান আফগানী',
+ 'ALL' => 'আলবেনীয় লেক',
+ 'AMD' => 'আৰ্মেনিয়ান ড্ৰাম',
+ 'ANG' => 'নেডাৰলেণ্ডছ এণ্টিলিয়েন গিল্ডাৰ',
+ 'AOA' => 'এংগোলান কোৱাঞ্জা',
+ 'ARS' => 'আৰ্জেণ্টাইন পেছো',
+ 'AUD' => 'অষ্ট্ৰেলিয়ান ডলাৰ',
+ 'AWG' => 'আৰুবান ফ্ল’ৰিন',
+ 'AZN' => 'আজেৰবাইজানী মানাত',
+ 'BAM' => 'ব’ছনিয়া আৰু হাৰ্জেগ’ভিনা কনভাৰ্টিব্‌ল মাৰ্ক',
+ 'BBD' => 'বাৰ্বাডিয়ান ডলাৰ',
+ 'BDT' => 'বাংলাদেশী টাকা',
+ 'BGN' => 'বুলগেৰীয় লেভ',
+ 'BHD' => 'বাহৰেইনী ডিনাৰ',
+ 'BIF' => 'বুৰুণ্ডিয়ান ফ্ৰেংক',
+ 'BMD' => 'বাৰ্মুডান ডলাৰ',
+ 'BND' => 'ব্ৰুনেই ডলাৰ',
+ 'BOB' => 'বলিভিয়ান বলিভিয়ানো',
+ 'BRL' => 'ব্ৰাজিলিয়ান ৰিয়েল',
+ 'BSD' => 'বাহামিয়ান ডলাৰ',
+ 'BTN' => 'ভুটানী নংগলট্ৰাম',
+ 'BWP' => 'ব’টচোৱানান পুলা',
+ 'BYN' => 'বেলাৰুছীয় ৰুবেল',
+ 'BZD' => 'বেলিজ ডলাৰ',
+ 'CAD' => 'কানাডিয়ান ডলাৰ',
+ 'CDF' => 'কংগো ফ্ৰেংক',
+ 'CHF' => 'চুইছ ফ্ৰেংক',
+ 'CLP' => 'চিলিয়ান পেছো',
+ 'CNH' => 'চীনা ইউৱান (অফশ্ব’ৰ)',
+ 'CNY' => 'চীনা ইউৱান',
+ 'COP' => 'কলম্বিয়ান পেছো',
+ 'CRC' => 'কোষ্টা ৰিকান কোলন',
+ 'CUC' => 'কিউবান ৰূপান্তৰযোগ্য পেছো',
+ 'CUP' => 'কিউবান পেছো',
+ 'CVE' => 'কেপ ভাৰ্দে এছকুডো',
+ 'CZK' => 'চেক কোৰুনা',
+ 'DJF' => 'জিবুটি ফ্ৰেংক',
+ 'DKK' => 'ডেনিচ ক্ৰোন',
+ 'DOP' => 'ড’মিনিকান পেছো',
+ 'DZD' => 'আলজেৰীয় ডিনাৰ',
+ 'EGP' => 'ইজিপ্তৰ পাউণ্ড',
+ 'ERN' => 'এৰিট্ৰিয়ন নাক্‌ফা',
+ 'ETB' => 'ইথিঅ’পিয়ান বিৰ',
+ 'EUR' => 'ইউৰো',
+ 'FJD' => 'ফিজিয়ান ডলাৰ',
+ 'FKP' => 'ফকলেণ্ড দ্বীপপুঞ্জৰ পাউণ্ড',
+ 'GBP' => 'ব্ৰিটিছ পাউণ্ড',
+ 'GEL' => 'জৰ্জিয়ান লাৰি',
+ 'GHS' => 'ঘানাৰ চেডি',
+ 'GIP' => 'জিব্ৰাল্টৰ পাউণ্ড',
+ 'GMD' => 'গাম্বিয়া ডালাছি',
+ 'GNF' => 'গিনি ফ্ৰেংক',
+ 'GTQ' => 'গুৱাটেমালা কুৱেৎজাল',
+ 'GYD' => 'গায়ানিজ ডলাৰ',
+ 'HKD' => 'হং কং ডলাৰ',
+ 'HNL' => 'হোন্দুৰান লেম্পিৰা',
+ 'HRK' => 'ক্ৰোৱেছিয়ান কুনা',
+ 'HTG' => 'হাইটিয়ান গৌৰ্ড',
+ 'HUF' => 'হাংগেৰীয়ান ফ’ৰিণ্ট',
+ 'IDR' => 'ইণ্ডোনেচিয়ান ৰুপিয়াহ',
+ 'ILS' => 'ইজৰাইলী নিউ শ্বেকেল',
+ 'INR' => 'ভাৰতীয় ৰুপী',
+ 'IQD' => 'ইৰাকী ডিনাৰ',
+ 'IRR' => 'ইৰানীয়ান ৰিয়েল',
+ 'ISK' => 'আইচলেণ্ডিক ক্ৰোনা',
+ 'JMD' => 'জামাইকান ডলাৰ',
+ 'JOD' => 'জৰ্ডানিয়ান ডিনাৰ',
+ 'JPY' => 'জাপানী য়েন',
+ 'KES' => 'কেনিয়ান শ্বিলিং',
+ 'KGS' => 'কিৰ্গিস্তানী ছোম',
+ 'KHR' => 'কেম্ব’ডিয়ান ৰিয়েল',
+ 'KMF' => 'ক’মোৰিয়ান ফ্ৰেংক',
+ 'KPW' => 'উত্তৰ কোৰিয়াৰ ওৱান',
+ 'KRW' => 'দক্ষিণ কোৰিয়াৰ ওৱান',
+ 'KWD' => 'কুৱেইটি ডিনাৰ',
+ 'KYD' => 'কেইমেন দ্বীপপুঞ্জৰ ডলাৰ',
+ 'KZT' => 'কাজাখস্তানী তেঞ্জ',
+ 'LAK' => 'লাওচিয়ান কিপ',
+ 'LBP' => 'লেবানীজ পাউণ্ড',
+ 'LKR' => 'শ্ৰীলংকান ৰুপী',
+ 'LRD' => 'লাইবেৰিয়ান ডলাৰ',
+ 'LYD' => 'লিবিয়ান ডিনাৰ',
+ 'MAD' => 'মৰোক্কান ডিৰহাম',
+ 'MDL' => 'মোলডোভান লেউ',
+ 'MGA' => 'মালাগাছী এৰিয়াৰী',
+ 'MKD' => 'মেচিডোনীয় ডেনাৰ',
+ 'MMK' => 'ম্যানমাৰ কিয়াট',
+ 'MNT' => 'মঙ্গোলিয়ান টুৰ্গিক',
+ 'MOP' => 'মেকানীজ পাটাকা',
+ 'MRO' => 'ম’ৰিটেনিয়ান ঔগুইয়া (1973–2017)',
+ 'MRU' => 'ম’ৰিটেনিয়ান ঔগুইয়া',
+ 'MUR' => 'মৰিচিয়ান ৰুপী',
+ 'MVR' => 'মালডিভিয়ান ৰুফিয়া',
+ 'MWK' => 'মালাউইয়ান কোৱাচা',
+ 'MXN' => 'মেক্সিকান পেছো',
+ 'MYR' => 'মালায়েচিয়ান ৰিংগিট',
+ 'MZN' => 'মোজাম্বিকান মেটিকল',
+ 'NAD' => 'নামিবিয়ান ডলাৰ',
+ 'NGN' => 'নাইজেৰিয়ান নাইৰা',
+ 'NIO' => 'নিকাৰাগুৱান কোৰ্ডোবা',
+ 'NOK' => 'নৰৱেজিয়ান ক্ৰোন',
+ 'NPR' => 'নেপালী ৰুপী',
+ 'NZD' => 'নিউজিলেণ্ড ডলাৰ',
+ 'OMR' => 'ওমানি ৰিয়েল',
+ 'PAB' => 'পানামেনিয়ান বাল্বোৱা',
+ 'PEN' => 'পেৰুভিয়ান ছ’ল',
+ 'PGK' => 'পাপুৱা নিউ গিনি কিনা',
+ 'PHP' => 'ফিলিপিন পেইছ’',
+ 'PKR' => 'পাকিস্তানী ৰুপী',
+ 'PLN' => 'প’লিচ জোল্টী',
+ 'PYG' => 'পাৰাগুয়ান গুৱাৰানি',
+ 'QAR' => 'কাটাৰি ৰিয়েল',
+ 'RON' => 'ৰোমানীয় লেউ',
+ 'RSD' => 'চাৰ্বিয়ান ডিনাৰ',
+ 'RUB' => 'ৰাছিয়ান ৰুব্‌ল',
+ 'RWF' => 'ৰোৱান্দান ফ্ৰেংক',
+ 'SAR' => 'চৌডি ৰিয়েল',
+ 'SBD' => 'চোলোমোন দ্বীপপুঞ্জৰ ডলাৰ',
+ 'SCR' => 'ছেচেলৱা ৰুপী',
+ 'SDG' => 'চুডানী পাউণ্ড',
+ 'SEK' => 'চুইডিছ ক্ৰোনা',
+ 'SGD' => 'ছিংগাপুৰ ডলাৰ',
+ 'SHP' => 'ছেইণ্ট হেলেনা পাউণ্ড',
+ 'SLL' => 'চিয়েৰা লিঅ’নৰ লিঅ’ন',
+ 'SOS' => 'চোমালি শ্বিলিং',
+ 'SRD' => 'ছুৰিনামী ডলাৰ',
+ 'SSP' => 'দক্ষিণ চুডানীজ পাউণ্ড',
+ 'STD' => 'চাও টোমে আৰু প্ৰিনচিপে ডোব্‌ৰা (1977–2017)',
+ 'STN' => 'চাও টোমে আৰু প্ৰিনচিপে ডোব্‌ৰা',
+ 'SYP' => 'চিৰিয়ান পাউণ্ড',
+ 'SZL' => 'স্বাজি লিলেংগেনি',
+ 'THB' => 'থাই বাত',
+ 'TJS' => 'তাজিকিস্তানী ছোমনি',
+ 'TMT' => 'তুৰ্কমেনিস্তানী মানাত',
+ 'TND' => 'টুনিচিয়ান ডিনাৰ',
+ 'TOP' => 'টংগান পাআংগা',
+ 'TRY' => 'তুৰ্কীৰ লিৰা',
+ 'TTD' => 'ট্ৰিনিডাড আৰু টোবাগো ডলাৰ',
+ 'TWD' => 'নিউ টাইৱান ডলাৰ',
+ 'TZS' => 'টানজানিয়ান শ্বিলিং',
+ 'UAH' => 'ইউক্ৰেইনীয় হৃভনিয়া',
+ 'UGX' => 'উগাণ্ডান শ্বিলিং',
+ 'USD' => 'ইউ. এছ. ডলাৰ',
+ 'UYU' => 'উৰুগুৱেয়ান পেছো',
+ 'UZS' => 'উজবেকিস্তানী ছোম',
+ 'VEB' => 'ভেনিজুৱেলান বলিভাৰ (1871–2008)',
+ 'VEF' => 'ভেনিজুৱেলান বলিভাৰ (2008–2018)',
+ 'VES' => 'ভেনিজুৱেলান বলিভাৰ',
+ 'VND' => 'ভিয়েটনামীজ ডং',
+ 'VUV' => 'ভানাটুৰ ভাটু',
+ 'WST' => 'ছামোৱান টালা',
+ 'XAF' => 'মধ্য আফ্ৰিকান CFA ফ্ৰেংক',
+ 'XCD' => 'ইষ্ট কেৰিবিয়ান ডলাৰ',
+ 'XOF' => 'পশ্চিম আফ্ৰিকান CFA ফ্ৰেংক',
+ 'XPF' => 'CFP ফ্ৰেংক',
+ 'XXX' => 'অজ্ঞাত মুদ্ৰা',
+ 'YER' => 'য়েমেনী ৰিয়েল',
+ 'ZAR' => 'দক্ষিণ আফ্ৰিকাৰ ৰাণ্ড',
+ 'ZMW' => 'জাম্বিয়ান কোৱাচা',
+];
+
+$currencySymbols = [
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => 'A$',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => 'R$',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYN' => 'BYN',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CA$',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNH' => 'CNH',
+ 'CNY' => 'CN¥',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GBP' => '£',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => 'JP¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MX$',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZ$',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'STN' => 'STN',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => 'THB',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
+ 'USD' => 'US$',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VND' => '₫',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'EC$',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+];
+
+$countryNames = [
+ 'AC' => 'এচেনচিয়ন দ্বীপ',
+ 'AD' => 'আন্দোৰা',
+ 'AE' => 'সংযুক্ত আৰব আমিৰাত',
+ 'AF' => 'আফগানিস্তান',
+ 'AG' => 'এণ্টিগুৱা আৰু বাৰ্বুডা',
+ 'AI' => 'এনগুইলা',
+ 'AL' => 'আলবেনিয়া',
+ 'AM' => 'আৰ্মেনিয়া',
+ 'AO' => 'এংগোলা',
+ 'AQ' => 'এণ্টাৰ্কটিকা',
+ 'AR' => 'আৰ্জেণ্টিনা',
+ 'AS' => 'আমেৰিকান চামোৱা',
+ 'AT' => 'অষ্ট্ৰিয়া',
+ 'AU' => 'অষ্ট্ৰেলিয়া',
+ 'AW' => 'আৰুবা',
+ 'AX' => 'আলণ্ড দ্বীপপুঞ্জ',
+ 'AZ' => 'আজাৰবেইজান',
+ 'BA' => 'ব’ছনিয়া আৰু হাৰ্জেগ’ভিনা',
+ 'BB' => 'বাৰ্বাডোচ',
+ 'BD' => 'বাংলাদেশ',
+ 'BE' => 'বেলজিয়াম',
+ 'BF' => 'বুৰকিনা ফাচো',
+ 'BG' => 'বুলগেৰিয়া',
+ 'BH' => 'বাহৰেইন',
+ 'BI' => 'বুৰুণ্ডি',
+ 'BJ' => 'বেনিন',
+ 'BL' => 'ছেইণ্ট বাৰ্থলেমে',
+ 'BM' => 'বাৰ্মুডা',
+ 'BN' => 'ব্ৰুনেই',
+ 'BO' => 'বলিভিয়া',
+ 'BQ' => 'কেৰিবিয়ান নেদাৰলেণ্ডছ',
'BR' => 'ব্ৰাজিল',
- 'BV' => 'বভেট দ্বীপ',
+ 'BS' => 'বাহামাছ',
+ 'BT' => 'ভুটান',
+ 'BV' => 'বুভে দ্বীপ',
+ 'BW' => 'ব’টচোৱানা',
+ 'BY' => 'বেলাৰুছ',
+ 'BZ' => 'বেলিজ',
+ 'CA' => 'কানাডা',
+ 'CC' => 'কোকোচ (কীলিং) দ্বীপপুঞ্জ',
+ 'CD' => 'কঙ্গো - কিনচাছা',
+ 'CF' => 'মধ্য আফ্রিকান প্রজাতন্ত্র',
+ 'CG' => 'কঙ্গো - ব্রাজাভিল',
+ 'CH' => 'চুইজাৰলেণ্ড',
+ 'CI' => 'কোটে ডি আইভৰ',
+ 'CK' => 'কুক দ্বীপপুঞ্জ',
+ 'CL' => 'চিলি',
+ 'CM' => 'কেমেৰুণ',
'CN' => 'চীন',
- 'DE' => 'জাৰ্মানি',
+ 'CO' => 'কলম্বিয়া',
+ 'CP' => 'ক্লিপাৰটোন দ্বীপ',
+ 'CR' => 'কোষ্টা ৰিকা',
+ 'CU' => 'কিউবা',
+ 'CV' => 'কেপ ভার্দে',
+ 'CW' => 'কুৰাকাও',
+ 'CX' => 'খ্ৰীষ্টমাছ দ্বীপ',
+ 'CY' => 'চাইপ্ৰাছ',
+ 'CZ' => 'চিজেচিয়া',
+ 'DE' => 'জাৰ্মানী',
+ 'DG' => 'ডিয়েগো গাৰ্চিয়া',
+ 'DJ' => 'জিবুটি',
+ 'DK' => 'ডেনমাৰ্ক',
+ 'DM' => 'ড’মিনিকা',
+ 'DO' => 'ড’মিনিকান ৰিপাব্লিক',
+ 'DZ' => 'আলজেৰিয়া',
+ 'EA' => 'চেউটা আৰু মেলিলা',
+ 'EC' => 'ইকুৱেডৰ',
+ 'EE' => 'ইষ্টোনিয়া',
+ 'EG' => 'ইজিপ্ত',
+ 'EH' => 'পশ্চিমীয় ছাহাৰা',
+ 'ER' => 'এৰিত্ৰিয়া',
+ 'ES' => 'স্পেইন',
+ 'ET' => 'ইথিঅ’পিয়া',
+ 'EU' => 'ইউৰোপীয় সংঘ',
+ 'EZ' => 'ইউৰোজ’ন',
+ 'FI' => 'ফিনলেণ্ড',
+ 'FJ' => 'ফিজি',
+ 'FK' => 'ফকলেণ্ড দ্বীপপুঞ্জ',
+ 'FM' => 'মাইক্ৰোনেচিয়া',
+ 'FO' => 'ফাৰো দ্বীপপুঞ্জ',
'FR' => 'ফ্ৰান্স',
- 'GB' => 'সংযুক্ত ৰাজ্য',
- 'GS' => 'দক্ষিণ জৰ্জিয়া আৰু দক্ষিণ চেণ্ডৱিচ্‌ দ্বীপ',
- 'HM' => 'হাৰ্ড দ্বীপ আৰু মেক্‌ডোনাল্ড দ্বীপ',
+ 'GA' => 'গেবন',
+ 'GB' => 'ইউ. কে.',
+ 'GD' => 'গ্ৰেনাডা',
+ 'GE' => 'জৰ্জিয়া',
+ 'GF' => 'ফ্ৰান্স গয়ানা',
+ 'GG' => 'গোৰেনচি',
+ 'GH' => 'ঘানা',
+ 'GI' => 'জিব্ৰাল্টৰ',
+ 'GL' => 'গ্ৰীণলেণ্ড',
+ 'GM' => 'গাম্বিয়া',
+ 'GN' => 'গিনি',
+ 'GP' => 'গুৱাডেলুপ',
+ 'GQ' => 'ইকুৱেটৰিয়েল গিনি',
+ 'GR' => 'গ্ৰীচ',
+ 'GS' => 'দক্ষিণ জৰ্জিয়া আৰু দক্ষিণ চেণ্ডৱিচ দ্বীপপুঞ্জ',
+ 'GT' => 'গুৱাটেমালা',
+ 'GU' => 'গুৱাম',
+ 'GW' => 'গিনি-বিছাও',
+ 'GY' => 'গায়ানা',
+ 'HK' => 'হং কং',
+ 'HM' => 'হাৰ্ড দ্বীপ আৰু মেকডোনাল্ড দ্বীপপুঞ্জ',
+ 'HN' => 'হন্দুৰাছ',
+ 'HR' => 'ক্ৰোৱেছিয়া',
+ 'HT' => 'হাইটি',
+ 'HU' => 'হাংগেৰী',
+ 'IC' => 'কেনেৰী দ্বীপপুঞ্জ',
+ 'ID' => 'ইণ্ডোনেচিয়া',
+ 'IE' => 'আয়াৰলেণ্ড',
+ 'IL' => 'ইজৰাইল',
+ 'IM' => 'আইল অফ মেন',
'IN' => 'ভাৰত',
- 'IO' => 'ব্ৰিটিশ্ব ইণ্ডিয়ান মহাসাগৰৰ অঞ্চল',
+ 'IO' => 'ব্ৰিটিছ ইণ্ডিয়ান অ’চন টেৰিট’ৰি',
+ 'IQ' => 'ইৰাক',
+ 'IR' => 'ইৰান',
+ 'IS' => 'আইচলেণ্ড',
'IT' => 'ইটালি',
+ 'JE' => 'জাৰ্চি',
+ 'JM' => 'জামাইকা',
+ 'JO' => 'জৰ্ডান',
'JP' => 'জাপান',
- 'RU' => 'ৰুচ',
+ 'KE' => 'কেনিয়া',
+ 'KG' => 'কিৰ্গিজস্তান',
+ 'KH' => 'কম্বোডিয়া',
+ 'KI' => 'কিৰিবাটি',
+ 'KM' => 'কোমোৰোজ',
+ 'KN' => 'ছেইণ্ট কিটছ আৰু নেভিছ',
+ 'KP' => 'উত্তৰ কোৰিয়া',
+ 'KR' => 'দক্ষিণ কোৰিয়া',
+ 'KW' => 'কুৱেইট',
+ 'KY' => 'কেইমেন দ্বীপপুঞ্জ',
+ 'KZ' => 'কাজাখাস্তান',
+ 'LA' => 'লাওচ',
+ 'LB' => 'লেবানন',
+ 'LC' => 'ছেইণ্ট লুচিয়া',
+ 'LI' => 'লিচটেনষ্টেইন',
+ 'LK' => 'শ্রীলংকা',
+ 'LR' => 'লিবেৰিয়া',
+ 'LS' => 'লেছ’থ’',
+ 'LT' => 'লিথুৱানিয়া',
+ 'LU' => 'লাক্সেমবাৰ্গ',
+ 'LV' => 'লাটভিয়া',
+ 'LY' => 'লিবিয়া',
+ 'MA' => 'মৰক্কো',
+ 'MC' => 'মোনাকো',
+ 'MD' => 'মোলডোভা',
+ 'ME' => 'মণ্টেনেগ্ৰু',
+ 'MF' => 'ছেইণ্ট মাৰ্টিন',
+ 'MG' => 'মাদাগাস্কাৰ',
+ 'MH' => 'মাৰ্শ্বাল দ্বীপপুঞ্জ',
+ 'MK' => 'মেচিডোনীয়া',
+ 'ML' => 'মালি',
+ 'MM' => 'ম্যানমাৰ (বাৰ্মা)',
+ 'MN' => 'মঙ্গোলিয়া',
+ 'MO' => 'মাকাউ',
+ 'MP' => 'উত্তৰ মাৰিয়ানা দ্বীপপুঞ্জ',
+ 'MQ' => 'মাৰ্টিনিক',
+ 'MR' => 'মাউৰিটানিয়া',
+ 'MS' => 'ম’ণ্টছেৰাট',
+ 'MT' => 'মাল্টা',
+ 'MU' => 'মৰিছাছ',
+ 'MV' => 'মালদ্বীপ',
+ 'MW' => 'মালাৱি',
+ 'MX' => 'মেক্সিকো',
+ 'MY' => 'মালয়েচিয়া',
+ 'MZ' => 'ম’জামবিক',
+ 'NA' => 'নামিবিয়া',
+ 'NC' => 'নিউ কেলিডোনিয়া',
+ 'NE' => 'নাইজাৰ',
+ 'NF' => 'ন’ৰফ’ক দ্বীপ',
+ 'NG' => 'নাইজেৰিয়া',
+ 'NI' => 'নিকাৰাগুৱা',
+ 'NL' => 'নেডাৰলেণ্ড',
+ 'NO' => 'নৰৱে',
+ 'NP' => 'নেপাল',
+ 'NR' => 'নাউৰু',
+ 'NU' => 'নিউ',
+ 'NZ' => 'নিউজিলেণ্ড',
+ 'OM' => 'ওমান',
+ 'PA' => 'পানামা',
+ 'PE' => 'পেৰু',
+ 'PF' => 'ফ্ৰান্স পোলেনচিয়া',
+ 'PG' => 'পাপুৱা নিউ গিনি',
+ 'PH' => 'ফিলিপাইনছ',
+ 'PK' => 'পাকিস্তান',
+ 'PL' => 'পোলেণ্ড',
+ 'PM' => 'ছেইণ্ট পিয়েৰে আৰু মিকিউৱেলন',
+ 'PN' => 'পিটকেইৰ্ণ দ্বীপপুঞ্জ',
+ 'PR' => 'পুৱেৰ্টো ৰিকো',
+ 'PS' => 'ফিলিস্তিন',
+ 'PT' => 'পৰ্তুগাল',
+ 'PW' => 'পালাউ',
+ 'PY' => 'পাৰাগুৱে',
+ 'QA' => 'কাটাৰ',
+ 'QO' => 'আউটলায়িং অ’চিয়ানিয়া',
+ 'RE' => 'ৰিইউনিয়ন',
+ 'RO' => 'ৰোমানিয়া',
+ 'RS' => 'ছাৰ্বিয়া',
+ 'RU' => 'ৰাছিয়া',
+ 'RW' => 'ৰোৱাণ্ডা',
+ 'SA' => 'চৌডি আৰবিয়া',
+ 'SB' => 'চোলোমোন দ্বীপপুঞ্জ',
+ 'SC' => 'ছিচিলিছ',
+ 'SD' => 'চুডান',
+ 'SE' => 'চুইডেন',
+ 'SG' => 'ছিংগাপুৰ',
+ 'SH' => 'ছেইণ্ট হেলেনা',
+ 'SI' => 'শ্লোভেনিয়া',
+ 'SJ' => 'চাভালবাৰ্ড আৰু জন মেয়ন',
+ 'SK' => 'শ্লোভাকিয়া',
+ 'SL' => 'চিয়েৰা লিঅ’ন',
+ 'SM' => 'চান মাৰিনো',
+ 'SN' => 'চেনেগাল',
+ 'SO' => 'চোমালিয়া',
+ 'SR' => 'ছুৰিনাম',
+ 'SS' => 'দক্ষিণ চুডান',
+ 'ST' => 'চাও টোমে আৰু প্ৰিনচিপে',
+ 'SV' => 'এল ছেলভেড’ৰ',
+ 'SX' => 'চিণ্ট মাৰ্টেন',
+ 'SY' => 'চিৰিয়া',
+ 'SZ' => 'স্বাজিলেণ্ড',
+ 'TA' => 'ত্ৰিস্তান দ্যা কুনহা',
+ 'TC' => 'টাৰ্কছ অৰু কেইক’ছ দ্বীপপুঞ্জ',
+ 'TD' => 'চাড',
'TF' => 'দক্ষিণ ফ্ৰান্সৰ অঞ্চল',
- 'US' => 'যুক্তৰাষ্ট্ৰ',
-);
+ 'TG' => 'টোগো',
+ 'TH' => 'থাইলেণ্ড',
+ 'TJ' => 'তাজিকিস্তান',
+ 'TK' => 'টোকেলাউ',
+ 'TL' => 'টিমোৰ-লেচটে',
+ 'TM' => 'তুৰ্কমেনিস্তান',
+ 'TN' => 'টুনিচিয়া',
+ 'TO' => 'টংগা',
+ 'TR' => 'তুৰ্কি',
+ 'TT' => 'ট্ৰিনিডাড আৰু টোবাগো',
+ 'TV' => 'টুভালু',
+ 'TW' => 'টাইৱান',
+ 'TZ' => 'তাঞ্জানিয়া',
+ 'UA' => 'ইউক্ৰেইন',
+ 'UG' => 'উগাণ্ডা',
+ 'UM' => 'ইউ. এছ. আউটলায়িং দ্বীপপুঞ্জ',
+ 'UN' => 'ৰাষ্ট্ৰসংঘ',
+ 'US' => 'মা. যু.',
+ 'UY' => 'উৰুগুৱে',
+ 'UZ' => 'উজবেকিস্তান',
+ 'VA' => 'ভেটিকান চিটি',
+ 'VC' => 'ছেইণ্ট ভিনচেণ্ট আৰু গ্ৰীণাডাইনছ',
+ 'VE' => 'ভেনিজুৱেলা',
+ 'VG' => 'ব্ৰিটিছ ভাৰ্জিন দ্বীপপুঞ্জ',
+ 'VI' => 'ইউ. এছ. ভাৰ্জিন দ্বীপপুঞ্জ',
+ 'VN' => 'ভিয়েটনাম',
+ 'VU' => 'ভানাটু',
+ 'WF' => 'ৱালিছ আৰু ফুটুনা',
+ 'WS' => 'চামোৱা',
+ 'XK' => 'কচ’ভ’',
+ 'YE' => 'য়েমেন',
+ 'YT' => 'মায়োট্টে',
+ 'ZA' => 'দক্ষিণ আফ্রিকা',
+ 'ZM' => 'জাম্বিয়া',
+ 'ZW' => 'জিম্বাবৱে',
+];
+
+$timeUnits = [
+ 'century-one' => '{0} শতাব্দী',
+ 'century-other' => '{0} শতাব্দী',
+ 'day-future-one' => '{0} দিনত',
+ 'day-future-other' => '{0} দিনত',
+ 'day-narrow-future-one' => '{0} দিনত',
+ 'day-narrow-future-other' => '{0} দিনত',
+ 'day-narrow-past-one' => '{0} দিন পূৰ্বে',
+ 'day-narrow-past-other' => '{0} দিন পূৰ্বে',
+ 'day-one' => '{0} দিন',
+ 'day-other' => '{0} দিন',
+ 'day-past-one' => '{0} দিন পূৰ্বে',
+ 'day-past-other' => '{0} দিন পূৰ্বে',
+ 'day-short-future-one' => '{0} দিনত',
+ 'day-short-future-other' => '{0} দিনত',
+ 'day-short-past-one' => '{0} দিন পূৰ্বে',
+ 'day-short-past-other' => '{0} দিন পূৰ্বে',
+ 'fri-future-one' => '{0} শুক্ৰবাৰে',
+ 'fri-future-other' => '{0} শুক্ৰবাৰে',
+ 'fri-narrow-future-one' => '{0} শুকুৰে',
+ 'fri-narrow-future-other' => '{0} শুকুৰে',
+ 'fri-narrow-past-one' => '{0} শুক্ৰৰ পূৰ্বে',
+ 'fri-narrow-past-other' => '{0} শুক্ৰৰ পূৰ্বে',
+ 'fri-past-one' => '{0} শুক্ৰবাৰৰ পূৰ্বে',
+ 'fri-past-other' => '{0} শুক্ৰবাৰৰ পূৰ্বে',
+ 'fri-short-future-one' => '{0} শুকুৰে',
+ 'fri-short-future-other' => '{0} শুকুৰে',
+ 'fri-short-past-one' => '{0} শুক্ৰৰ পূৰ্বে',
+ 'fri-short-past-other' => '{0} শুক্ৰৰ পূৰ্বে',
+ 'hour-future-one' => '{0} ঘণ্টাত',
+ 'hour-future-other' => '{0} ঘণ্টাত',
+ 'hour-narrow-future-one' => '{0} ঘণ্টাত',
+ 'hour-narrow-future-other' => '{0} ঘণ্টাত',
+ 'hour-narrow-past-one' => '{0} ঘণ্টা পূৰ্বে',
+ 'hour-narrow-past-other' => '{0} ঘণ্টা পূৰ্বে',
+ 'hour-one' => '{0} ঘণ্টা',
+ 'hour-other' => '{0} ঘণ্টা',
+ 'hour-past-one' => '{0} ঘণ্টা পূৰ্বে',
+ 'hour-past-other' => '{0} ঘণ্টা পূৰ্বে',
+ 'hour-short-future-one' => '{0} ঘণ্টাত',
+ 'hour-short-future-other' => '{0} ঘণ্টাত',
+ 'hour-short-past-one' => '{0} ঘণ্টা পূৰ্বে',
+ 'hour-short-past-other' => '{0} ঘণ্টা পূৰ্বে',
+ 'microsecond-one' => '{0} মাইক্ৰছেকেণ্ড',
+ 'microsecond-other' => '{0} মাইক্ৰছেকেণ্ড',
+ 'millisecond-one' => '{0} মিলিছেকেণ্ড',
+ 'millisecond-other' => '{0} মিলিছেকেণ্ড',
+ 'minute-future-one' => '{0} মিনিটত',
+ 'minute-future-other' => '{0} মিনিটত',
+ 'minute-narrow-future-one' => '{0} মিনিটত',
+ 'minute-narrow-future-other' => '{0} মিনিটত',
+ 'minute-narrow-past-one' => '{0} মিনিট পূৰ্বে',
+ 'minute-narrow-past-other' => '{0} মিনিট পূৰ্বে',
+ 'minute-one' => '{0} মিনিট',
+ 'minute-other' => '{0} মিনিট',
+ 'minute-past-one' => '{0} মিনিট পূৰ্বে',
+ 'minute-past-other' => '{0} মিনিট পূৰ্বে',
+ 'minute-short-future-one' => '{0} মিনিটত',
+ 'minute-short-future-other' => '{0} মিনিটত',
+ 'minute-short-past-one' => '{0} মিনিট পূৰ্বে',
+ 'minute-short-past-other' => '{0} মিনিট পূৰ্বে',
+ 'mon-future-one' => '{0} সোমবাৰে',
+ 'mon-future-other' => '{0} সোমবাৰে',
+ 'mon-narrow-future-one' => '{0} সোমে',
+ 'mon-narrow-future-other' => '{0} সোমে',
+ 'mon-narrow-past-one' => '{0} সোমৰ পূৰ্বে',
+ 'mon-narrow-past-other' => '{0} সোমৰ পূৰ্বে',
+ 'mon-past-one' => '{0} সোমবাৰৰ পূৰ্বে',
+ 'mon-past-other' => '{0} সোমবাৰৰ পূৰ্বে',
+ 'mon-short-future-one' => '{0} সোমবাৰে',
+ 'mon-short-future-other' => '{0} সোমবাৰে',
+ 'mon-short-past-one' => '{0} সোমবাৰৰ পূৰ্বে',
+ 'mon-short-past-other' => '{0} সোমবাৰৰ পূৰ্বে',
+ 'month-future-one' => '{0} মাহত',
+ 'month-future-other' => '{0} মাহত',
+ 'month-narrow-future-one' => '{0} মাহত',
+ 'month-narrow-future-other' => '{0} মাহত',
+ 'month-narrow-past-one' => '{0} মাহ পূৰ্বে',
+ 'month-narrow-past-other' => '{0} মাহ পূৰ্বে',
+ 'month-one' => '{0} মাহ',
+ 'month-other' => '{0} মাহ',
+ 'month-past-one' => '{0} মাহ পূৰ্বে',
+ 'month-past-other' => '{0} মাহ পূৰ্বে',
+ 'month-short-future-one' => '{0} মাহত',
+ 'month-short-future-other' => '{0} মাহত',
+ 'month-short-past-one' => '{0} মাহ পূৰ্বে',
+ 'month-short-past-other' => '{0} মাহ পূৰ্বে',
+ 'nanosecond-one' => '{0} নেনোছেকেণ্ড',
+ 'nanosecond-other' => '{0} নেনোছেকেণ্ড',
+ 'quarter-future-one' => '{0} তিনি মাহত',
+ 'quarter-future-other' => '{0} তিনি মাহত',
+ 'quarter-narrow-future-one' => '{0} তিনি মাহত',
+ 'quarter-narrow-future-other' => '{0} তিনি মাহত',
+ 'quarter-narrow-past-one' => '{0} তিনি মাহ পূৰ্বে',
+ 'quarter-narrow-past-other' => '{0} তিনি মাহ পূৰ্বে',
+ 'quarter-past-one' => '{0} তিনি মাহ পূৰ্বে',
+ 'quarter-past-other' => '{0} তিনি মাহ পূৰ্বে',
+ 'quarter-short-future-one' => '{0} তিনি মাহত',
+ 'quarter-short-future-other' => '{0} তিনি মাহত',
+ 'quarter-short-past-one' => '{0} তিনি মাহ পূৰ্বে',
+ 'quarter-short-past-other' => '{0} তিনি মাহ পূৰ্বে',
+ 'sat-future-one' => '{0} শনিবাৰে',
+ 'sat-future-other' => '{0} শনিবাৰে',
+ 'sat-narrow-future-one' => '{0} শনিয়ে',
+ 'sat-narrow-future-other' => '{0} শনিয়ে',
+ 'sat-narrow-past-one' => '{0} শনিৰ পূৰ্বে',
+ 'sat-narrow-past-other' => '{0} শনিৰ পূৰ্বে',
+ 'sat-past-one' => '{0} শনিবাৰৰ পূৰ্বে',
+ 'sat-past-other' => '{0} শনিবাৰৰ পূৰ্বে',
+ 'sat-short-future-one' => '{0} শনিয়ে',
+ 'sat-short-future-other' => '{0} শনিয়ে',
+ 'sat-short-past-one' => '{0} শনিৰ পূৰ্বে',
+ 'sat-short-past-other' => '{0} শনিৰ পূৰ্বে',
+ 'second-future-one' => '{0} ছেকেণ্ডত',
+ 'second-future-other' => '{0} ছেকেণ্ডত',
+ 'second-narrow-future-one' => '{0} ছেকেণ্ডত',
+ 'second-narrow-future-other' => '{0} ছেকেণ্ডত',
+ 'second-narrow-past-one' => '{0} ছেকেণ্ড পূৰ্বে',
+ 'second-narrow-past-other' => '{0} ছেকেণ্ড পূৰ্বে',
+ 'second-one' => '{0} ছেকেণ্ড',
+ 'second-other' => '{0} ছেকেণ্ড',
+ 'second-past-one' => '{0} ছেকেণ্ড পূৰ্বে',
+ 'second-past-other' => '{0} ছেকেণ্ড পূৰ্বে',
+ 'second-short-future-one' => '{0} ছেকেণ্ডত',
+ 'second-short-future-other' => '{0} ছেকেণ্ডত',
+ 'second-short-past-one' => '{0} ছেকেণ্ড পূৰ্বে',
+ 'second-short-past-other' => '{0} ছেকেণ্ড পূৰ্বে',
+ 'sun-future-one' => '{0} দেওবাৰে',
+ 'sun-future-other' => '{0} দেওবাৰে',
+ 'sun-narrow-future-one' => '{0} দেওবাৰে',
+ 'sun-narrow-future-other' => '{0} দেওবাৰে',
+ 'sun-narrow-past-one' => '{0} দেওবাৰৰ পূৰ্বে',
+ 'sun-narrow-past-other' => '{0} দেওবাৰৰ পূৰ্বে',
+ 'sun-past-one' => '{0} দেওবাৰৰ পূৰ্বে',
+ 'sun-past-other' => '{0} দেওবাৰৰ পূৰ্বে',
+ 'sun-short-future-one' => '{0} দেওবাৰে',
+ 'sun-short-future-other' => '{0} দেওবাৰে',
+ 'sun-short-past-one' => '{0} দেওবাৰৰ পূৰ্বে',
+ 'sun-short-past-other' => '{0} দেওবাৰৰ পূৰ্বে',
+ 'thu-future-one' => '{0} বৃহস্পতিবাৰে',
+ 'thu-future-other' => '{0} বৃহস্পতিবাৰে',
+ 'thu-narrow-future-one' => '{0} বৃহস্পতিয়ে',
+ 'thu-narrow-future-other' => '{0} বৃহস্পতিয়ে',
+ 'thu-narrow-past-one' => '{0} বৃহস্পতিৰ পূৰ্বে',
+ 'thu-narrow-past-other' => '{0} বৃহস্পতিৰ পূৰ্বে',
+ 'thu-past-one' => '{0} বৃহস্পতিবাৰৰ পূৰ্বে',
+ 'thu-past-other' => '{0} বৃহস্পতিবাৰৰ পূৰ্বে',
+ 'thu-short-future-one' => '{0} বৃহস্পতিয়ে',
+ 'thu-short-future-other' => '{0} বৃহস্পতিয়ে',
+ 'thu-short-past-one' => '{0} বৃহস্পতিৰ পূৰ্বে',
+ 'thu-short-past-other' => '{0} বৃহস্পতিৰ পূৰ্বে',
+ 'tue-future-one' => '{0} মঙ্গলবাৰে',
+ 'tue-future-other' => '{0} মঙ্গলবাৰে',
+ 'tue-narrow-future-one' => '{0} মঙ্গলে',
+ 'tue-narrow-future-other' => '{0} মঙ্গলে',
+ 'tue-narrow-past-one' => '{0} মঙ্গলৰ পূৰ্বে',
+ 'tue-narrow-past-other' => '{0} মঙ্গলৰ পূৰ্বে',
+ 'tue-past-one' => '{0} মঙ্গলবাৰৰ পূৰ্বে',
+ 'tue-past-other' => '{0} মঙ্গলবাৰৰ পূৰ্বে',
+ 'tue-short-future-one' => '{0} মঙ্গলে',
+ 'tue-short-future-other' => '{0} মঙ্গলে',
+ 'tue-short-past-one' => '{0} মঙ্গলৰ পূৰ্বে',
+ 'tue-short-past-other' => '{0} মঙ্গলৰ পূৰ্বে',
+ 'wed-future-one' => '{0} বুধবাৰে',
+ 'wed-future-other' => '{0} বুধবাৰে',
+ 'wed-narrow-future-one' => '{0} বুধে',
+ 'wed-narrow-future-other' => '{0} বুধে',
+ 'wed-narrow-past-one' => '{0} বুধৰ পূৰ্বে',
+ 'wed-narrow-past-other' => '{0} বুধৰ পূৰ্বে',
+ 'wed-past-one' => '{0} বুধবাৰৰ পূৰ্বে',
+ 'wed-past-other' => '{0} বুধবাৰৰ পূৰ্বে',
+ 'wed-short-future-one' => '{0} বুধে',
+ 'wed-short-future-other' => '{0} বুধে',
+ 'wed-short-past-one' => '{0} বুধৰ পূৰ্বে',
+ 'wed-short-past-other' => '{0} বুধৰ পূৰ্বে',
+ 'week-future-one' => '{0} সপ্তাহত',
+ 'week-future-other' => '{0} সপ্তাহত',
+ 'week-narrow-future-one' => '{0} সপ্তাহত',
+ 'week-narrow-future-other' => '{0} সপ্তাহত',
+ 'week-narrow-past-one' => '{0} সপ্তাহ পূৰ্বে',
+ 'week-narrow-past-other' => '{0} সপ্তাহ পূৰ্বে',
+ 'week-one' => '{0} সপ্তাহ',
+ 'week-other' => '{0} সপ্তাহ',
+ 'week-past-one' => '{0} সপ্তাহ পূৰ্বে',
+ 'week-past-other' => '{0} সপ্তাহ পূৰ্বে',
+ 'week-short-future-one' => '{0} সপ্তাহত',
+ 'week-short-future-other' => '{0} সপ্তাহত',
+ 'week-short-past-one' => '{0} সপ্তাহ পূৰ্বে',
+ 'week-short-past-other' => '{0} সপ্তাহ পূৰ্বে',
+ 'year-future-one' => '{0} বছৰত',
+ 'year-future-other' => '{0} বছৰত',
+ 'year-narrow-future-one' => '{0} বছৰত',
+ 'year-narrow-future-other' => '{0} বছৰত',
+ 'year-narrow-past-one' => '{0} বছৰৰ পূৰ্বে',
+ 'year-narrow-past-other' => '{0} বছৰৰ পূৰ্বে',
+ 'year-one' => '{0} বছৰ',
+ 'year-other' => '{0} বছৰ',
+ 'year-past-one' => '{0} বছৰৰ পূৰ্বে',
+ 'year-past-other' => '{0} বছৰৰ পূৰ্বে',
+ 'year-short-future-one' => '{0} বছৰত',
+ 'year-short-future-other' => '{0} বছৰত',
+ 'year-short-past-one' => '{0} বছৰৰ পূৰ্বে',
+ 'year-short-past-other' => '{0} বছৰৰ পূৰ্বে',
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesAst.php b/MLEB/cldr/CldrNames/CldrNamesAst.php
index f92d04c7..608eab84 100644
--- a/MLEB/cldr/CldrNames/CldrNamesAst.php
+++ b/MLEB/cldr/CldrNames/CldrNamesAst.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'afar',
'ab' => 'abkhazianu',
'ace' => 'achinés',
@@ -13,13 +13,13 @@ $languageNames = array(
'afh' => 'afrihili',
'agq' => 'aghem',
'ain' => 'ainu',
- 'ak' => 'ak',
+ 'ak' => 'akan',
'akk' => 'acadianu',
'akz' => 'alabama',
'ale' => 'aleut',
'aln' => 'gheg d’Albania',
'alt' => 'altai del sur',
- 'am' => 'amharicu',
+ 'am' => 'amháricu',
'an' => 'aragonés',
'ang' => 'inglés antiguu',
'anp' => 'angika',
@@ -42,7 +42,6 @@ $languageNames = array(
'awa' => 'awadhi',
'ay' => 'aymara',
'az' => 'azerbaixanu',
- 'azb' => 'azerbaixanu del sur',
'ba' => 'bashkir',
'bal' => 'baluchi',
'ban' => 'balinés',
@@ -59,6 +58,7 @@ $languageNames = array(
'bfd' => 'bafut',
'bfq' => 'badaga',
'bg' => 'búlgaru',
+ 'bgn' => 'balochi occidental',
'bho' => 'bhojpuri',
'bi' => 'bislama',
'bik' => 'bikol',
@@ -100,12 +100,13 @@ $languageNames = array(
'chp' => 'chipewyanu',
'chr' => 'cheroqui',
'chy' => 'cheyenne',
- 'ckb' => 'kurdu sorani',
+ 'ckb' => 'kurdu central',
'co' => 'corsu',
- 'cop' => 'coptu',
+ 'cop' => 'cópticu',
'cps' => 'capiznon',
'cr' => 'cree',
'crh' => 'turcu de Crimea',
+ 'crs' => 'francés criollu seselwa',
'cs' => 'checu',
'csb' => 'kashubianu',
'cu' => 'eslávicu eclesiásticu',
@@ -116,6 +117,7 @@ $languageNames = array(
'dar' => 'dargwa',
'dav' => 'taita',
'de' => 'alemán',
+ 'de-at' => 'alemán d’Austria',
'de-ch' => 'altualemán de Suiza',
'del' => 'delaware',
'den' => 'slave',
@@ -141,13 +143,16 @@ $languageNames = array(
'el' => 'griegu',
'elx' => 'elamita',
'en' => 'inglés',
+ 'en-au' => 'inglés d’Australia',
'en-ca' => 'inglés de Canadá',
'en-gb' => 'inglés de Gran Bretaña',
- 'en-us' => 'inglés americanu',
+ 'en-us' => 'inglés d’Estaos Xuníos',
'enm' => 'inglés mediu',
'eo' => 'esperanto',
'es' => 'español',
- 'es-mx' => 'español de México',
+ 'es-419' => 'español d’América Llatina',
+ 'es-es' => 'español européu',
+ 'es-mx' => 'español de Méxicu',
'esu' => 'yupik central',
'et' => 'estoniu',
'eu' => 'vascu',
@@ -227,7 +232,7 @@ $languageNames = array(
'id' => 'indonesiu',
'ie' => 'interlingue',
'ig' => 'igbo',
- 'ii' => 'yi de Sichuan',
+ 'ii' => 'yi de Sichuán',
'ik' => 'inupiaq',
'ilo' => 'iloko',
'inh' => 'ingush',
@@ -271,8 +276,8 @@ $languageNames = array(
'kk' => 'kazaquistanín',
'kkj' => 'kako',
'kl' => 'kalaallisut',
- 'kln' => 'kln',
- 'km' => 'khmer',
+ 'kln' => 'kalenjin',
+ 'km' => 'ḥemer',
'kmb' => 'kimbundu',
'kn' => 'canarés',
'ko' => 'coreanu',
@@ -314,6 +319,7 @@ $languageNames = array(
'lo' => 'laosianu',
'lol' => 'mongo',
'loz' => 'lozi',
+ 'lrc' => 'luri del norte',
'lt' => 'lituanu',
'ltg' => 'latgalianu',
'lu' => 'luba-katanga',
@@ -332,7 +338,7 @@ $languageNames = array(
'mai' => 'maithili',
'mak' => 'makasar',
'man' => 'mandingo',
- 'mas' => 'masai',
+ 'mas' => 'masái',
'mde' => 'maba',
'mdf' => 'moksha',
'mdr' => 'mandar',
@@ -375,6 +381,7 @@ $languageNames = array(
'nb' => 'noruegu Bokmål',
'nd' => 'ndebele del norte',
'nds' => 'baxu alemán',
+ 'nds-nl' => 'baxu saxón',
'ne' => 'nepalés',
'new' => 'newari',
'ng' => 'ndonga',
@@ -406,28 +413,38 @@ $languageNames = array(
'om' => 'oromo',
'or' => 'oriya',
'os' => 'oséticu',
+ 'osa' => 'osage',
'ota' => 'turcu otomanu',
'pa' => 'punyabí',
'pag' => 'pangasinan',
+ 'pal' => 'pahlavi',
'pam' => 'pampanga',
'pap' => 'papiamento',
'pau' => 'palauanu',
'pcd' => 'pícaru',
+ 'pcm' => 'nixerianu simplificáu',
'pdc' => 'alemán de Pennsylvania',
+ 'pdt' => 'plautdietsch',
'peo' => 'persa antiguu',
'pfl' => 'alemán palatinu',
'phn' => 'feniciu',
+ 'pi' => 'pali',
'pl' => 'polacu',
'pms' => 'piamontés',
+ 'pnt' => 'pónticu',
'pon' => 'pohnpeianu',
'prg' => 'prusianu',
'pro' => 'provenzal antiguu',
'ps' => 'pashtu',
'pt' => 'portugués',
'pt-br' => 'portugués del Brasil',
+ 'pt-pt' => 'portugués européu',
'qu' => 'quechua',
'quc' => 'kʼicheʼ',
+ 'qug' => 'quichua del altiplanu de Chimborazo',
'raj' => 'rajasthanín',
+ 'rap' => 'rapanui',
+ 'rar' => 'rarotonganu',
'rgn' => 'romañol',
'rif' => 'rifianu',
'rm' => 'romanche',
@@ -439,34 +456,45 @@ $languageNames = array(
'rtm' => 'rotumanu',
'ru' => 'rusu',
'rue' => 'rusyn',
- 'rw' => 'rw',
+ 'rug' => 'roviana',
+ 'rup' => 'aromanianu',
+ 'rw' => 'kinyarwanda',
'rwk' => 'rwa',
'sa' => 'sánscritu',
+ 'sad' => 'sandavés',
'sah' => 'sakha',
'sam' => 'araméu samaritanu',
'saq' => 'samburu',
'sas' => 'sasak',
'sat' => 'santali',
'saz' => 'saurashtra',
+ 'sba' => 'ngambay',
'sbp' => 'sangu',
'sc' => 'sardu',
'scn' => 'sicilianu',
'sco' => 'scots',
'sd' => 'sindhi',
'sdc' => 'sardu sassarés',
+ 'sdh' => 'kurdu del sur',
'se' => 'sami del norte',
'see' => 'séneca',
'seh' => 'sena',
+ 'sei' => 'seri',
+ 'sel' => 'selkup',
'ses' => 'koyraboro senni',
'sg' => 'sango',
'sga' => 'irlandés antiguu',
+ 'sgs' => 'samogitianu',
'sh' => 'serbo-croata',
'shi' => 'tachelhit',
'shn' => 'shan',
+ 'shu' => 'árabe chadianu',
'si' => 'cingalés',
'sid' => 'sidamo',
'sk' => 'eslovacu',
'sl' => 'eslovenu',
+ 'sli' => 'baxu silesianu',
+ 'sly' => 'selayarés',
'sm' => 'samoanu',
'sma' => 'sami del sur',
'smj' => 'lule sami',
@@ -475,6 +503,7 @@ $languageNames = array(
'sn' => 'shona',
'snk' => 'soninke',
'so' => 'somalín',
+ 'sog' => 'sogdianu',
'sq' => 'albanu',
'sr' => 'serbiu',
'srn' => 'sranan tongo',
@@ -489,8 +518,8 @@ $languageNames = array(
'sux' => 'sumeriu',
'sv' => 'suecu',
'sw' => 'suaḥili',
+ 'sw-cd' => 'suaḥili del Congu',
'swb' => 'comorianu',
- 'swc' => 'swahili del Congo',
'syc' => 'siriacu clásicu',
'syr' => 'siriacu',
'szl' => 'silesianu',
@@ -499,6 +528,7 @@ $languageNames = array(
'te' => 'telugu',
'tem' => 'timne',
'teo' => 'teso',
+ 'ter' => 'terena',
'tet' => 'tetum',
'tg' => 'taxiquistanín',
'th' => 'tailandés',
@@ -507,42 +537,61 @@ $languageNames = array(
'tiv' => 'tiv',
'tk' => 'turcomanu',
'tkl' => 'tokelau',
+ 'tkr' => 'tsakhur',
'tl' => 'tagalog',
'tlh' => 'klingon',
+ 'tli' => 'tlingit',
+ 'tly' => 'talixín',
'tmh' => 'tamashek',
'tn' => 'tswana',
'to' => 'tonganu',
+ 'tog' => 'tonga nyasa',
'tpi' => 'tok pisin',
'tr' => 'turcu',
+ 'tru' => 'turoyo',
'trv' => 'taroko',
'ts' => 'tsonga',
+ 'tsd' => 'tsakoniu',
+ 'tsi' => 'tsimshian',
'tt' => 'tártaru',
+ 'ttt' => 'tati musulmán',
'tum' => 'tumbuka',
'tvl' => 'tuvalu',
+ 'tw' => 'twi',
'twq' => 'tasawaq',
'ty' => 'tahitianu',
'tyv' => 'tuvinianu',
- 'tzm' => 'tamazight del Atlas central',
+ 'tzm' => 'tamazight del Atles central',
'udm' => 'udmurt',
'ug' => 'uigur',
'uga' => 'ugaríticu',
'uk' => 'ucraín',
'umb' => 'umbundu',
'und' => 'llingua desconocida',
- 'ur' => 'ur',
+ 'ur' => 'urdu',
'uz' => 'uzbequistanín',
'vai' => 'vai',
've' => 'venda',
'vec' => 'venecianu',
+ 'vep' => 'vepsiu',
'vi' => 'vietnamín',
'vls' => 'flamencu occidental',
+ 'vmf' => 'franconianu del Main',
+ 'vo' => 'volapük',
+ 'vot' => 'vóticu',
+ 'vro' => 'voro',
'vun' => 'vunjo',
'wa' => 'valón',
+ 'wae' => 'walser',
'wal' => 'wolaytta',
'war' => 'waray',
+ 'was' => 'washo',
+ 'wbp' => 'warlpiri',
'wo' => 'wolof',
'wuu' => 'chinu wu',
+ 'xal' => 'calmuco',
'xh' => 'xhosa',
+ 'xmf' => 'mingrelianu',
'xog' => 'soga',
'yao' => 'yao',
'yap' => 'yapés',
@@ -550,255 +599,453 @@ $languageNames = array(
'ybb' => 'yemba',
'yi' => 'yiddish',
'yo' => 'yoruba',
+ 'yrl' => 'nheengatu',
'yue' => 'cantonés',
'za' => 'zhuang',
'zap' => 'zapoteca',
+ 'zbl' => 'simbólicu Bliss',
'zea' => 'zeelandés',
+ 'zen' => 'zenaga',
'zgh' => 'tamazight estándar de Marruecos',
'zh' => 'chinu',
'zh-hans' => 'chinu simplificáu',
'zh-hant' => 'chinu tradicional',
'zu' => 'zulú',
+ 'zun' => 'zuni',
'zxx' => 'ensin conteníu llingüísticu',
-);
+ 'zza' => 'zaza',
+];
-$currencyNames = array(
- 'AED' => 'dirḥam de los Emiratos Árabes Xuníos',
- 'AFN' => 'afganí afganistanu',
- 'ALL' => 'lek',
- 'AMD' => 'dram armeniu',
- 'ANG' => 'guilder de les Antilles Neerlandeses',
- 'AOA' => 'kwanza angolanu',
+$currencyNames = [
+ 'ADP' => 'Peseta andorrana',
+ 'AED' => 'Dirḥam de los Emiratos Árabes Xuníos',
+ 'AFA' => 'Afganí afganistanu (1927–2002)',
+ 'AFN' => 'Afganí afganistanu',
+ 'ALK' => 'Lek albanés (1946–1965)',
+ 'ALL' => 'Lek albanés',
+ 'AMD' => 'Dram armeniu',
+ 'ANG' => 'Guílder de les Antilles Neerlandeses',
+ 'AOA' => 'Kwanza angolanu',
+ 'AOK' => 'Kwanza angolanu (1977–1991)',
+ 'AON' => 'Kwanza nuevu angolanu (1990–2000)',
+ 'AOR' => 'Kwanza angolanu reaxustáu (1995–1999)',
+ 'ARA' => 'Austral arxentín',
+ 'ARL' => 'Pesu Ley arxentín (1970–1983)',
+ 'ARM' => 'Pesu arxentín (1881–1970)',
+ 'ARP' => 'Pesu arxentín (1983–1985)',
'ARS' => 'pesu arxentín',
- 'AUD' => 'dólar australianu',
- 'AWG' => 'florín arubanu',
- 'AZN' => 'manat azerbaixanu',
+ 'ATS' => 'Chelín austriacu',
+ 'AUD' => 'Dólar australianu',
+ 'AWG' => 'Florín arubanu',
+ 'AZM' => 'Manat azerbaixanu (1993–2006)',
+ 'AZN' => 'Manat azerbaixanu',
+ 'BAD' => 'Dinar de Bosnia-Herzegovina (1992–1994)',
'BAM' => 'marcu convertible de Bosnia-Herzegovina',
- 'BBD' => 'dólar barbadianu',
- 'BDT' => 'taka bangladexí',
- 'BGN' => 'lev',
- 'BHD' => 'dinar baḥreiní',
- 'BIF' => 'francu burundianu',
- 'BMD' => 'dólar bermudianu',
+ 'BAN' => 'Dinar nuevu de Bosnia-Herzegovina (1994–1997)',
+ 'BBD' => 'Dólar barbadianu',
+ 'BDT' => 'Taka bangladexí',
+ 'BEC' => 'Francu belga (convertible)',
+ 'BEF' => 'Francu belga',
+ 'BEL' => 'Francu belga (financieru)',
+ 'BGL' => 'Lev fuerte búlgaru',
+ 'BGM' => 'Lev socialista búlgaru',
+ 'BGN' => 'Lev búlgaru',
+ 'BGO' => 'Lev búlgaru (1879–1952)',
+ 'BHD' => 'Dinar baḥreiní',
+ 'BIF' => 'Francu burundianu',
+ 'BMD' => 'Dólar bermudianu',
'BND' => 'dólar bruneyanu',
- 'BOB' => 'bolivianu',
+ 'BOB' => 'Bolivianu de Bolivia',
+ 'BOL' => 'Boliviano de Bolivia (1863–1963)',
+ 'BOP' => 'Pesu bolivianu',
+ 'BOV' => 'Bolivianos mvdol',
+ 'BRB' => 'Cruzeiro nuevu brasilanu (1967–1986)',
+ 'BRC' => 'Cruzado brasilanu (1986–1989)',
+ 'BRE' => 'Cruzeiro brasilanu (1990–1993)',
'BRL' => 'real brasilanu',
- 'BSD' => 'dólar bahamés',
- 'BTN' => 'ngultrum butanés',
- 'BWP' => 'pula botsuaniana',
- 'BYR' => 'rublu bielorrusu',
- 'BZD' => 'dólar belizianu',
- 'CAD' => 'dólar canadiense',
+ 'BRN' => 'Cruzado nuevu brasilanu (1989–1990)',
+ 'BRR' => 'Cruzeiro brasilanu (1993–1994)',
+ 'BRZ' => 'Cruzeiru brasilanu (1942–1967)',
+ 'BSD' => 'Dólar bahamés',
+ 'BTN' => 'Ngultrum butanés',
+ 'BUK' => 'Kyat birmanu',
+ 'BWP' => 'Pula botsuaniana',
+ 'BYB' => 'Rublu nuevu bielorrusu (1994–1999)',
+ 'BYN' => 'Rublu bielorrusu',
+ 'BYR' => 'Rublu bielorrusu (2000–2016)',
+ 'BZD' => 'Dólar belizianu',
+ 'CAD' => 'Dólar canadiense',
'CDF' => 'francu congolés',
+ 'CHE' => 'Euru WIR',
'CHF' => 'francu suizu',
+ 'CHW' => 'Francu WIR',
+ 'CLE' => 'Escudu chilenu',
+ 'CLF' => 'Unidá de cuenta chilena (UF)',
'CLP' => 'pesu chilenu',
- 'CNY' => 'yuan chinu',
+ 'CNX' => 'Dólar del Bancu Popular Chinu',
+ 'CNY' => 'Yuan chinu',
'COP' => 'pesu colombianu',
- 'CRC' => 'colón costarricanu',
- 'CUC' => 'pesu convertible cubanu',
- 'CUP' => 'pesu cubanu',
+ 'COU' => 'Unidá de valor real colombiana',
+ 'CRC' => 'Colón costarricanu',
+ 'CSD' => 'Dinar serbiu (2002–2006)',
+ 'CSK' => 'Corona fuerte checoslovaca',
+ 'CUC' => 'Pesu cubanu convertible',
+ 'CUP' => 'Pesu cubanu',
'CVE' => 'escudu cabuverdianu',
- 'CZK' => 'corona checa',
- 'DJF' => 'francu xibutianu',
+ 'CYP' => 'Llibra xipriota',
+ 'CZK' => 'Corona checa',
+ 'DDM' => 'Marcu d’Alemaña Oriental',
+ 'DEM' => 'Marcu alemán',
+ 'DJF' => 'Francu xibutianu',
'DKK' => 'corona danesa',
- 'DOP' => 'pesu dominicanu',
+ 'DOP' => 'Pesu dominicanu',
'DZD' => 'dinar arxelín',
+ 'ECS' => 'Sucre ecuatorianu',
+ 'ECV' => 'Unidá ecuatoriana de valor constante',
+ 'EEK' => 'Corona estonia',
'EGP' => 'llibra exipciana',
- 'ERN' => 'nakfa eritréu',
- 'ETB' => 'birr etíope',
+ 'ERN' => 'Nakfa eritréu',
+ 'ESA' => 'Peseta española (cuenta A)',
+ 'ESB' => 'Peseta española (cuenta convertible)',
+ 'ESP' => 'Peseta española',
+ 'ETB' => 'Birr etíope',
'EUR' => 'euro',
+ 'FIM' => 'Marcu finlandés',
'FJD' => 'dólar fixanu',
'FKP' => 'llibra malviniana',
+ 'FRF' => 'Francu francés',
'GBP' => 'llibra esterlina',
- 'GEL' => 'lari xeorxanu',
+ 'GEK' => 'Kupon larit xeorxanu',
+ 'GEL' => 'Lari xeorxanu',
+ 'GHC' => 'Cedi ghanianu (1979–2007)',
'GHS' => 'cedi ghanianu',
'GIP' => 'llibra de Xibraltar',
'GMD' => 'dalasi gambianu',
'GNF' => 'francu guineanu',
'GNS' => 'syli guineanu',
- 'GTQ' => 'quetzal de Guatemala',
+ 'GQE' => 'Ekwele de Guinea Ecuatorial',
+ 'GRD' => 'Dracma griegu',
+ 'GTQ' => 'Quetzal guatemalianu',
+ 'GWE' => 'Escudo de Guinea portuguesa',
+ 'GWP' => 'Pesu de Guinea-Bisáu',
'GYD' => 'dólar guyanés',
- 'HKD' => 'dólar hongkonés',
- 'HNL' => 'lempira hondurana',
- 'HRK' => 'kuna',
- 'HTG' => 'gourde haitianu',
- 'HUF' => 'forint',
+ 'HKD' => 'Dólar hongkonés',
+ 'HNL' => 'Lempira hondurana',
+ 'HRD' => 'Dinar croata',
+ 'HRK' => 'Kuna croata',
+ 'HTG' => 'Gourde haitianu',
+ 'HUF' => 'Forint húngaru',
'IDR' => 'rupiah indonesia',
- 'ILS' => 'xequel nuevu',
- 'INR' => 'rupia india',
- 'IQD' => 'dinar iraquín',
- 'IRR' => 'rial iranín',
+ 'IEP' => 'Llibra irlandesa',
+ 'ILP' => 'Llibra israelina',
+ 'ILR' => 'Xequel israelín (1980–1985)',
+ 'ILS' => 'Xequel nuevu israelín',
+ 'INR' => 'Rupia india',
+ 'IQD' => 'Dinar iraquín',
+ 'IRR' => 'Rial iranín',
+ 'ISJ' => 'Corona islandesa (1918–1981)',
'ISK' => 'corona islandesa',
- 'JMD' => 'dólar xamaicanu',
- 'JOD' => 'dinar xordanu',
- 'JPY' => 'yen xaponés',
- 'KES' => 'shilling kenianu',
- 'KGS' => 'som kirguistanín',
+ 'ITL' => 'Llira italiana',
+ 'JMD' => 'Dólar xamaicanu',
+ 'JOD' => 'Dinar xordanu',
+ 'JPY' => 'Yen xaponés',
+ 'KES' => 'Shilling kenianu',
+ 'KGS' => 'Som kirguistanín',
'KHR' => 'riel camboyanu',
- 'KMF' => 'francu comoranu',
- 'KPW' => 'won norcoreanu',
- 'KRW' => 'won surcoreanu',
- 'KWD' => 'dinar kuwaitianu',
+ 'KMF' => 'Francu comoranu',
+ 'KPW' => 'Won norcoreanu',
+ 'KRH' => 'Hwan surcoreanu (1953–1962)',
+ 'KRO' => 'Won surcoreanu (1945–1953)',
+ 'KRW' => 'Won surcoreanu',
+ 'KWD' => 'Dinar kuwaitianu',
'KYD' => 'dólar caimanés',
- 'KZT' => 'tenge kazaquistanín',
+ 'KZT' => 'Tenge kazaquistanín',
'LAK' => 'kip laosianu',
- 'LBP' => 'llibra libanesa',
- 'LKR' => 'rupia de Sri Lanka',
+ 'LBP' => 'Llibra libanesa',
+ 'LKR' => 'Rupia de Sri Lanka',
'LRD' => 'dólar liberianu',
- 'LTL' => 'litas',
- 'LVL' => 'lats',
+ 'LSL' => 'Loti de Lesothu',
+ 'LTL' => 'Litas lituanu',
+ 'LTT' => 'Talonas lituanu',
+ 'LUC' => 'Francu convertible luxemburgués',
+ 'LUF' => 'Francu luxemburgués',
+ 'LUL' => 'Francu financieru luxemburgués',
+ 'LVL' => 'Lats letón',
+ 'LVR' => 'Rublu letón',
'LYD' => 'dinar libiu',
'MAD' => 'dirḥam marroquín',
'MAF' => 'francu marroquín',
- 'MDL' => 'leu moldavu',
- 'MGA' => 'ariary malgaxe',
- 'MKD' => 'denar',
+ 'MCF' => 'Francu monegascu',
+ 'MDC' => 'Cupón moldavu',
+ 'MDL' => 'Leu moldavu',
+ 'MGA' => 'Ariary malgaxe',
+ 'MGF' => 'Francu malgaxe',
+ 'MKD' => 'Denar macedoniu',
+ 'MKN' => 'Denar macedoniu (1992–1993)',
+ 'MLF' => 'Francu malianu',
'MMK' => 'kyat de Myanmar',
- 'MNT' => 'tugrik mongol',
- 'MOP' => 'pataca de Macáu',
- 'MRO' => 'ouguiya mauritanu',
- 'MUR' => 'rupia mauriciana',
- 'MVR' => 'rufiyaa maldiviana',
- 'MWK' => 'kwacha malauianu',
- 'MXN' => 'pesu mexicanu',
+ 'MNT' => 'Tugrik mongol',
+ 'MOP' => 'Pataca de Macáu',
+ 'MRO' => 'ouguiya mauritanu (1973–2017)',
+ 'MRU' => 'ouguiya mauritanu',
+ 'MTL' => 'Llira maltesa',
+ 'MTP' => 'Llibra maltesa',
+ 'MUR' => 'Rupia mauriciana',
+ 'MVP' => 'Rupia maldiviana (1947–1981)',
+ 'MVR' => 'Rufiyaa maldiviana',
+ 'MWK' => 'Kwacha malauianu',
+ 'MXN' => 'Pesu mexicanu',
+ 'MXP' => 'Pesu de plata mexicanu (1861–1992)',
+ 'MXV' => 'Unidá d’inversión mexicana',
'MYR' => 'ringgit malasiu',
- 'MZN' => 'metical mozambicanu',
- 'NAD' => 'dólar namibianu',
+ 'MZE' => 'Escudu mozambicanu',
+ 'MZM' => 'Metical mozambicanu (1980–2006)',
+ 'MZN' => 'Metical mozambicanu',
+ 'NAD' => 'Dólar namibianu',
'NGN' => 'naira nixeriana',
- 'NIO' => 'córdoba nicaraguanu',
+ 'NIC' => 'Córdoba nicaraguanu (1988–1991)',
+ 'NIO' => 'Córdoba nicaraguanu',
+ 'NLG' => 'Florín neerlandés',
'NOK' => 'corona noruega',
- 'NPR' => 'rupia nepalesa',
+ 'NPR' => 'Rupia nepalesa',
'NZD' => 'dólar neozelandés',
- 'OMR' => 'rial omanianu',
- 'PAB' => 'balboa panamiegu',
- 'PEN' => 'sol nuevu peruanu',
+ 'OMR' => 'Rial omanianu',
+ 'PAB' => 'Balboa panamiegu',
+ 'PEI' => 'Inti peruanu',
+ 'PEN' => 'Sol peruanu',
+ 'PES' => 'Sol peruanu (1863–1965)',
'PGK' => 'kina papuana',
'PHP' => 'pesu filipín',
- 'PKR' => 'rupia paquistanina',
- 'PLN' => 'zloty',
+ 'PKR' => 'Rupia paquistanina',
+ 'PLN' => 'Zloty polacu',
+ 'PLZ' => 'Zloty polacu (1950–1995)',
+ 'PTE' => 'Escudu portugués',
'PYG' => 'guaraní paraguayu',
- 'QAR' => 'rial qatarín',
- 'RON' => 'leu rumanu',
+ 'QAR' => 'Rial qatarín',
+ 'RHD' => 'Dólar rodesianu',
+ 'ROL' => 'Leu rumanu (1952–2006)',
+ 'RON' => 'Leu rumanu',
'RSD' => 'dinar serbiu',
- 'RUB' => 'rublu rusu',
- 'RWF' => 'francu ruandés',
- 'SAR' => 'riyal saudita',
+ 'RUB' => 'Rublu rusu',
+ 'RUR' => 'Rublu rusu (1991–1998)',
+ 'RWF' => 'Francu ruandés',
+ 'SAR' => 'Riyal saudita',
'SBD' => 'dólar salomonés',
- 'SCR' => 'rupia seixelesa',
+ 'SCR' => 'Rupia seixelesa',
'SDD' => 'dinar sudanés (1992–2007)',
'SDG' => 'llibra sudanesa',
'SDP' => 'llibra sudanesa (1957–1998)',
'SEK' => 'corona sueca',
'SGD' => 'dólar singapuranu',
'SHP' => 'llibra de Santa Lena',
+ 'SIT' => 'Tolar eslovenu',
+ 'SKK' => 'Corona eslovaca',
'SLL' => 'leone sierralleonés',
- 'SOS' => 'shilling somalín',
+ 'SOS' => 'Shilling somalín',
'SRD' => 'dólar surinamés',
+ 'SRG' => 'Florín surinamés',
'SSP' => 'llibra sursudanesa',
- 'STD' => 'dobra de Santu Tomé y Príncipe',
- 'SYP' => 'llibra siria',
- 'SZL' => 'lilangeni suazilandés',
+ 'STD' => 'dobra de Santu Tomé y Príncipe (1977–2017)',
+ 'STN' => 'dobra de Santu Tomé y Príncipe',
+ 'SUR' => 'Rublu soviéticu',
+ 'SVC' => 'Colón salvadorianu',
+ 'SYP' => 'Llibra siria',
+ 'SZL' => 'Lilangeni suazilandés',
'THB' => 'baht tailandés',
- 'TJS' => 'somoni taxiquistanín',
- 'TMT' => 'manat turcomanu',
+ 'TJR' => 'Rublu taxiquistanín',
+ 'TJS' => 'Somoni taxiquistanín',
+ 'TMM' => 'Manat turcomanu (1993–2009)',
+ 'TMT' => 'Manat turcomanu',
'TND' => 'dinar tunecín',
'TOP' => 'paʻanga tonganu',
- 'TRY' => 'llira turca',
+ 'TPE' => 'Escudu timorés',
+ 'TRL' => 'Llira turca (1922–2005)',
+ 'TRY' => 'Llira turca',
'TTD' => 'dólar de Trinidá y Tobagu',
- 'TWD' => 'dólar nuevu taiwanés',
- 'TZS' => 'shilling tanzanianu',
- 'UAH' => 'grivna',
- 'UGX' => 'shilling ugandés',
- 'USD' => 'dólar de los Estaos Xuníos',
+ 'TWD' => 'Dólar nuevu taiwanés',
+ 'TZS' => 'Shilling tanzanianu',
+ 'UAH' => 'Grivna ucraína',
+ 'UAK' => 'Karbovanets ucraína',
+ 'UGS' => 'Shilling ugandés (1966–1987)',
+ 'UGX' => 'Shilling ugandés',
+ 'USD' => 'Dólar estaunidense',
+ 'USN' => 'Dólar d’EE.XX. (día siguiente)',
+ 'USS' => 'Dólar d’EE.XX. (mesmu día)',
+ 'UYI' => 'Pesu uruguayu (Unidaes indexaes)',
+ 'UYP' => 'Pesu uruguayu (1975–1993)',
'UYU' => 'pesu uruguayu',
- 'UZS' => 'som uzbequistanín',
- 'VEF' => 'bolívar venezolanu',
+ 'UZS' => 'Som uzbequistanín',
+ 'VEB' => 'Bolívar venezolanu (1871–2008)',
+ 'VEF' => 'bolívar venezolanu (2008–2018)',
+ 'VES' => 'bolívar venezolanu',
'VND' => 'dong vietnamín',
+ 'VNN' => 'Dong vietnamín (1978–1985)',
'VUV' => 'vatu vanuatuanu',
'WST' => 'tala samoanu',
- 'XAF' => 'francu CFA BEAC',
- 'XAG' => 'plata',
- 'XAU' => 'oru',
- 'XBA' => 'unidá compuesta européa',
- 'XBB' => 'unida monetaria européa',
- 'XBC' => 'unidá de cuenta européa (XBC)',
- 'XBD' => 'unidá de cuenta européa (XBD)',
+ 'XAF' => 'Francu CFA centroafricanu',
+ 'XAG' => 'Plata',
+ 'XAU' => 'Oru',
+ 'XBA' => 'Unidá Compuesta Europea',
+ 'XBB' => 'Unidá monetaria europea',
+ 'XBC' => 'Unidá de cuenta europea (XBC)',
+ 'XBD' => 'Unidá de cuenta europea (XBD)',
'XCD' => 'dólar del Caribe Oriental',
- 'XDR' => 'drechos especiales de xiru',
+ 'XDR' => 'Drechos especiales de xiru',
+ 'XEU' => 'Unidá de divisa europea',
'XFO' => 'Francu oru francés',
'XFU' => 'Francu UIC francés',
'XOF' => 'francu CFA BCEAO',
- 'XPD' => 'onza troy de paladiu',
+ 'XPD' => 'Paladiu',
'XPF' => 'francu CFP',
- 'XPT' => 'platín',
- 'XRE' => 'fondos RINET',
+ 'XPT' => 'Platín',
+ 'XRE' => 'Fondos RINET',
'XSU' => 'Sucre',
- 'XTS' => 'códigu monetariu de prueba',
- 'XUA' => 'Unidá de cuenta ADB',
+ 'XTS' => 'Códigu monetariu de prueba',
+ 'XUA' => 'unidá de cuenta ADB',
'XXX' => 'Divisa desconocida',
- 'YER' => 'rial yemenín',
- 'ZAR' => 'rand sudafricanu',
- 'ZMK' => 'kwacha zambianu (1968–2012)',
- 'ZMW' => 'kwacha zambianu',
-);
+ 'YDD' => 'Dinar yemenín',
+ 'YER' => 'Rial yemenín',
+ 'YUD' => 'Dinar fuerte yugoslavu (1966–1990)',
+ 'YUM' => 'Dinar nuevu yugoslavu (1994–2002)',
+ 'YUN' => 'Dinar convertible yugoslavu (1990–1992)',
+ 'YUR' => 'Dinar reformáu yugoslavu (1992–1993)',
+ 'ZAL' => 'Rand sudafricanu (financieru)',
+ 'ZAR' => 'Rand sudafricanu',
+ 'ZMK' => 'Kwacha zambianu (1968–2012)',
+ 'ZMW' => 'Kwacha zambianu',
+ 'ZRN' => 'Zaire nuevu zairiegu (1993–1998)',
+ 'ZRZ' => 'Zaire zairiegu (1971–1993)',
+ 'ZWD' => 'Dólar zimbabuanu (1980–2008)',
+ 'ZWL' => 'Dólar zimbabuanu (2009)',
+ 'ZWR' => 'Dólar zimbabuanu (2008)',
+];
-$currencySymbols = array(
+$currencySymbols = [
+ 'ADP' => 'ADP',
'AED' => 'AED',
+ 'AFA' => 'AFA',
'AFN' => 'AFN',
+ 'ALL' => 'ALL',
'AMD' => 'AMD',
'ANG' => 'ANG',
'AOA' => 'AOA',
+ 'AOK' => 'AOK',
+ 'AON' => 'AON',
+ 'AOR' => 'AOR',
+ 'ARA' => 'ARA',
+ 'ARL' => 'ARL',
+ 'ARM' => 'ARM',
+ 'ARP' => 'ARP',
'ARS' => 'ARS',
+ 'ATS' => 'ATS',
'AUD' => 'A$',
'AWG' => 'AWG',
+ 'AZM' => 'AZM',
+ 'AZN' => 'AZN',
+ 'BAD' => 'BAD',
'BAM' => 'BAM',
+ 'BAN' => 'BAN',
'BBD' => 'BBD',
'BDT' => 'BDT',
+ 'BEC' => 'BEC',
+ 'BEF' => 'BEF',
+ 'BEL' => 'BEL',
+ 'BGL' => 'BGL',
+ 'BGM' => 'BGM',
+ 'BGN' => 'BGN',
+ 'BGO' => 'BGO',
+ 'BHD' => 'BHD',
'BIF' => 'BIF',
'BMD' => 'BMD',
'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BOL' => 'BOL',
+ 'BOP' => 'BOP',
+ 'BOV' => 'BOV',
+ 'BRB' => 'BRB',
+ 'BRC' => 'BRC',
+ 'BRE' => 'BRE',
'BRL' => 'R$',
+ 'BRN' => 'BRN',
+ 'BRR' => 'BRR',
+ 'BRZ' => 'BRZ',
'BSD' => 'BSD',
'BTN' => 'BTN',
+ 'BUK' => 'BUK',
'BWP' => 'BWP',
+ 'BYB' => 'BYB',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CA$',
'CDF' => 'CDF',
+ 'CHE' => 'CHE',
'CHF' => 'CHF',
+ 'CHW' => 'CHW',
+ 'CLE' => 'CLE',
+ 'CLF' => 'CLF',
'CLP' => 'CLP',
'CNY' => 'CN¥',
'COP' => 'COP',
+ 'COU' => 'COU',
'CRC' => 'CRC',
+ 'CSD' => 'CSD',
+ 'CSK' => 'CSK',
'CUC' => 'CUC',
'CUP' => 'CUP',
'CVE' => 'CVE',
+ 'CYP' => 'CYP',
'CZK' => 'CZK',
+ 'DDM' => 'DDM',
+ 'DEM' => 'DEM',
+ 'DJF' => 'DJF',
'DKK' => 'DKK',
'DOP' => 'DOP',
'DZD' => 'DZD',
+ 'ECS' => 'ECS',
+ 'ECV' => 'ECV',
+ 'EEK' => 'EEK',
'EGP' => 'EGP',
'ERN' => 'ERN',
+ 'ESA' => 'ESA',
+ 'ESB' => 'ESB',
+ 'ESP' => 'ESP',
'ETB' => 'ETB',
'EUR' => '€',
+ 'FIM' => 'FIM',
+ 'FJD' => 'FJD',
'FKP' => 'FKP',
+ 'FRF' => 'FRF',
'GBP' => '£',
+ 'GEK' => 'GEK',
'GEL' => 'GEL',
+ 'GHC' => 'GHC',
'GHS' => 'GHS',
'GIP' => 'GIP',
'GMD' => 'GMD',
'GNF' => 'GNF',
+ 'GNS' => 'GNS',
+ 'GQE' => 'GQE',
+ 'GRD' => 'GRD',
'GTQ' => 'GTQ',
+ 'GWE' => 'GWE',
+ 'GWP' => 'GWP',
'GYD' => 'GYD',
'HKD' => 'HK$',
'HNL' => 'HNL',
+ 'HRD' => 'HRD',
+ 'HRK' => 'HRK',
'HTG' => 'HTG',
+ 'HUF' => 'HUF',
'IDR' => 'IDR',
+ 'IEP' => 'IEP',
+ 'ILP' => 'ILP',
'ILS' => '₪',
'INR' => '₹',
'IQD' => 'IQD',
'IRR' => 'IRR',
'ISK' => 'ISK',
+ 'ITL' => 'ITL',
'JMD' => 'JMD',
'JOD' => 'JOD',
'JPY' => '¥',
@@ -807,6 +1054,8 @@ $currencySymbols = array(
'KHR' => 'KHR',
'KMF' => 'KMF',
'KPW' => 'KPW',
+ 'KRH' => 'KRH',
+ 'KRO' => 'KRO',
'KRW' => '₩',
'KWD' => 'KWD',
'KYD' => 'KYD',
@@ -815,59 +1064,119 @@ $currencySymbols = array(
'LBP' => 'LBP',
'LKR' => 'LKR',
'LRD' => 'LRD',
+ 'LSL' => 'LSL',
+ 'LTL' => 'LTL',
+ 'LTT' => 'LTT',
+ 'LUC' => 'LUC',
+ 'LUF' => 'LUF',
+ 'LUL' => 'LUL',
+ 'LVL' => 'LVL',
+ 'LVR' => 'LVR',
'LYD' => 'LYD',
'MAD' => 'MAD',
+ 'MAF' => 'MAF',
+ 'MCF' => 'MCF',
+ 'MDC' => 'MDC',
'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MGF' => 'MGF',
+ 'MKD' => 'MKD',
+ 'MKN' => 'MKN',
+ 'MLF' => 'MLF',
'MMK' => 'MMK',
'MNT' => 'MNT',
'MOP' => 'MOP',
'MRO' => 'MRO',
+ 'MTL' => 'MTL',
+ 'MTP' => 'MTP',
'MUR' => 'MUR',
'MVR' => 'MVR',
+ 'MWK' => 'MWK',
'MXN' => 'MX$',
+ 'MXP' => 'MXP',
+ 'MXV' => 'MXV',
'MYR' => 'MYR',
+ 'MZE' => 'MZE',
+ 'MZM' => 'MZM',
'MZN' => 'MZN',
'NAD' => 'NAD',
'NGN' => 'NGN',
+ 'NIC' => 'NIC',
'NIO' => 'NIO',
+ 'NLG' => 'NLG',
'NOK' => 'NOK',
'NPR' => 'NPR',
'NZD' => 'NZ$',
'OMR' => 'OMR',
'PAB' => 'PAB',
+ 'PEI' => 'PEI',
'PEN' => 'PEN',
+ 'PES' => 'PES',
+ 'PGK' => 'PGK',
'PHP' => 'PHP',
'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PLZ' => 'PLZ',
+ 'PTE' => 'PTE',
'PYG' => 'PYG',
'QAR' => 'QAR',
+ 'RHD' => 'RHD',
+ 'ROL' => 'ROL',
'RON' => 'RON',
'RSD' => 'RSD',
'RUB' => 'RUB',
+ 'RUR' => 'RUR',
'RWF' => 'RWF',
'SAR' => 'SAR',
'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDD' => 'SDD',
'SDG' => 'SDG',
+ 'SDP' => 'SDP',
'SEK' => 'SEK',
'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SIT' => 'SIT',
+ 'SKK' => 'SKK',
'SLL' => 'SLL',
'SOS' => 'SOS',
'SRD' => 'SRD',
+ 'SRG' => 'SRG',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'Db',
+ 'SUR' => 'SUR',
+ 'SVC' => 'SVC',
'SYP' => 'SYP',
'SZL' => 'SZL',
'THB' => '฿',
+ 'TJR' => 'TJR',
+ 'TJS' => 'TJS',
+ 'TMM' => 'TMM',
+ 'TMT' => 'TMT',
'TND' => 'TND',
'TOP' => 'TOP',
+ 'TPE' => 'TPE',
+ 'TRL' => 'TRL',
+ 'TRY' => 'TRY',
'TTD' => 'TTD',
'TWD' => 'NT$',
'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UAK' => 'UAK',
+ 'UGS' => 'UGS',
'UGX' => 'UGX',
'USD' => '$',
+ 'USN' => 'USN',
+ 'USS' => 'USS',
+ 'UYI' => 'UYI',
+ 'UYP' => 'UYP',
'UYU' => 'UYU',
'UZS' => 'UZS',
+ 'VEB' => 'VEB',
'VEF' => 'VEF',
'VND' => '₫',
+ 'VNN' => 'VNN',
'VUV' => 'VUV',
'WST' => 'WST',
'XAF' => 'FCFA',
@@ -879,6 +1188,7 @@ $currencySymbols = array(
'XBD' => 'XBD',
'XCD' => 'EC$',
'XDR' => 'XDR',
+ 'XEU' => 'XEU',
'XFO' => 'XFO',
'XFU' => 'XFU',
'XOF' => 'CFA',
@@ -890,12 +1200,24 @@ $currencySymbols = array(
'XTS' => 'XTS',
'XUA' => 'XUA',
'XXX' => 'XXX',
+ 'YDD' => 'YDD',
'YER' => 'YER',
+ 'YUD' => 'YUD',
+ 'YUM' => 'YUM',
+ 'YUN' => 'YUN',
+ 'YUR' => 'YUR',
+ 'ZAL' => 'ZAL',
'ZAR' => 'ZAR',
+ 'ZMK' => 'ZMK',
'ZMW' => 'ZMW',
-);
+ 'ZRN' => 'ZRN',
+ 'ZRZ' => 'ZRZ',
+ 'ZWD' => 'ZWD',
+ 'ZWL' => 'ZWL',
+ 'ZWR' => 'ZWR',
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'Islla Ascensión',
'AD' => 'Andorra',
'AE' => 'Emiratos Árabes Xuníos',
@@ -917,7 +1239,7 @@ $countryNames = array(
'BB' => 'Barbados',
'BD' => 'Bangladex',
'BE' => 'Bélxica',
- 'BF' => 'BF',
+ 'BF' => 'Burkina Fasu',
'BG' => 'Bulgaria',
'BH' => 'Baḥréin',
'BI' => 'Burundi',
@@ -936,9 +1258,9 @@ $countryNames = array(
'BZ' => 'Belize',
'CA' => 'Canadá',
'CC' => 'Islles Cocos (Keeling)',
- 'CD' => 'CD',
+ 'CD' => 'Congu - Kinxasa',
'CF' => 'República Centroafricana',
- 'CG' => 'CG',
+ 'CG' => 'Congu - Brazzaville',
'CH' => 'Suiza',
'CI' => 'Costa de Marfil',
'CK' => 'Islles Cook',
@@ -954,9 +1276,9 @@ $countryNames = array(
'CX' => 'Islla Christmas',
'CY' => 'Xipre',
'CZ' => 'Chequia',
- 'DE' => 'Alemania',
+ 'DE' => 'Alemaña',
'DG' => 'Diego Garcia',
- 'DJ' => 'DJ',
+ 'DJ' => 'Xibuti',
'DK' => 'Dinamarca',
'DM' => 'Dominica',
'DO' => 'República Dominicana',
@@ -969,7 +1291,8 @@ $countryNames = array(
'ER' => 'Eritrea',
'ES' => 'España',
'ET' => 'Etiopía',
- 'EU' => 'Xunión Européa',
+ 'EU' => 'Xunión Europea',
+ 'EZ' => 'Eurozona',
'FI' => 'Finlandia',
'FJ' => 'Islles Fixi',
'FK' => 'Falkland Islands',
@@ -977,7 +1300,7 @@ $countryNames = array(
'FO' => 'Islles Feroe',
'FR' => 'Francia',
'GA' => 'Gabón',
- 'GB' => 'GB',
+ 'GB' => 'RX',
'GD' => 'Granada',
'GE' => 'Xeorxa',
'GF' => 'Guyana Francesa',
@@ -1033,7 +1356,7 @@ $countryNames = array(
'LI' => 'Liechtenstein',
'LK' => 'Sri Lanka',
'LR' => 'Liberia',
- 'LS' => 'LS',
+ 'LS' => 'Lesothu',
'LT' => 'Lituania',
'LU' => 'Luxemburgu',
'LV' => 'Letonia',
@@ -1058,7 +1381,7 @@ $countryNames = array(
'MU' => 'Mauriciu',
'MV' => 'Les Maldives',
'MW' => 'Malaui',
- 'MX' => 'MX',
+ 'MX' => 'Méxicu',
'MY' => 'Malasia',
'MZ' => 'Mozambique',
'NA' => 'Namibia',
@@ -1079,15 +1402,15 @@ $countryNames = array(
'PF' => 'Polinesia Francesa',
'PG' => 'Papúa Nueva Guinea',
'PH' => 'Filipines',
- 'PK' => 'Pakistan',
+ 'PK' => 'Paquistán',
'PL' => 'Polonia',
'PM' => 'Saint Pierre y Miquelon',
'PN' => 'Islles Pitcairn',
'PR' => 'Puertu Ricu',
- 'PS' => 'PS',
+ 'PS' => 'Palestina',
'PT' => 'Portugal',
'PW' => 'Paláu',
- 'PY' => 'Paraguay',
+ 'PY' => 'Paraguái',
'QA' => 'Qatar',
'QO' => 'Oceanía esterior',
'RE' => 'Reunión',
@@ -1097,15 +1420,15 @@ $countryNames = array(
'RW' => 'Ruanda',
'SA' => 'Arabia Saudita',
'SB' => 'Islles Salomón',
- 'SC' => 'SC',
+ 'SC' => 'Les Seixeles',
'SD' => 'Sudán',
'SE' => 'Suecia',
'SG' => 'Singapur',
- 'SH' => 'SH',
+ 'SH' => 'Santa Helena',
'SI' => 'Eslovenia',
'SJ' => 'Svalbard ya Islla Jan Mayen',
'SK' => 'Eslovaquia',
- 'SL' => 'SL',
+ 'SL' => 'Sierra Lleona',
'SM' => 'San Marín',
'SN' => 'Senegal',
'SO' => 'Somalia',
@@ -1120,7 +1443,7 @@ $countryNames = array(
'TC' => 'Islles Turques y Caicos',
'TD' => 'Chad',
'TF' => 'Tierres Australes Franceses',
- 'TG' => 'TG',
+ 'TG' => 'Togu',
'TH' => 'Tailandia',
'TJ' => 'Taxiquistán',
'TK' => 'Tokeláu',
@@ -1136,8 +1459,9 @@ $countryNames = array(
'UA' => 'Ucraína',
'UG' => 'Uganda',
'UM' => 'Islles Perifériques Menores de los EE.XX.',
- 'US' => 'US',
- 'UY' => 'Uruguay',
+ 'UN' => 'Naciones Xuníes',
+ 'US' => 'EE.XX.',
+ 'UY' => 'Uruguái',
'UZ' => 'Uzbequistán',
'VA' => 'Ciudá del Vaticanu',
'VC' => 'San Vicente y Granadines',
@@ -1148,39 +1472,53 @@ $countryNames = array(
'VU' => 'Vanuatu',
'WF' => 'Wallis y Futuna',
'WS' => 'Samoa',
- 'XK' => 'XK',
+ 'XK' => 'Kosovu',
'YE' => 'Yemen',
'YT' => 'Mayotte',
'ZA' => 'Sudáfrica',
'ZM' => 'Zambia',
'ZW' => 'Zimbabue',
-);
+];
-$timeUnits = array(
- 'day-future-one' => 'En {0} dia',
- 'day-future-other' => 'En {0} díes',
+$timeUnits = [
+ 'century-one' => '{0} sieglu',
+ 'century-other' => '{0} sieglos',
+ 'day-future-one' => 'en {0} día',
+ 'day-future-other' => 'en {0} díes',
'day-narrow-future-one' => 'en {0} d.',
'day-narrow-future-other' => 'en {0} d.',
'day-narrow-past-one' => 'hai {0} d.',
'day-narrow-past-other' => 'hai {0} d.',
- 'day-one' => '{0} dia',
+ 'day-one' => '{0} día',
'day-other' => '{0} díes',
- 'day-past-one' => 'Hai {0} dia',
- 'day-past-other' => 'Hai {0} díes',
+ 'day-past-one' => 'hai {0} día',
+ 'day-past-other' => 'hai {0} díes',
'day-short-future-one' => 'en {0} día',
'day-short-future-other' => 'en {0} díes',
'day-short-past-one' => 'hai {0} día',
'day-short-past-other' => 'hai {0} díes',
- 'hour-future-one' => 'En {0} hora',
- 'hour-future-other' => 'En {0} hores',
+ 'fri-future-one' => 'dientro de {0} vienres',
+ 'fri-future-other' => 'dientro de {0} vienres',
+ 'fri-narrow-future-one' => 'dientro de {0} vienres',
+ 'fri-narrow-future-other' => 'dientro de {0} vienres',
+ 'fri-narrow-past-one' => 'hai {0} vienres',
+ 'fri-narrow-past-other' => 'hai {0} vienres',
+ 'fri-past-one' => 'hai {0} vienres',
+ 'fri-past-other' => 'hai {0} vienres',
+ 'fri-short-future-one' => 'dientro de {0} vienres',
+ 'fri-short-future-other' => 'dientro de {0} vienres',
+ 'fri-short-past-one' => 'hai {0} vienres',
+ 'fri-short-past-other' => 'hai {0} vienres',
+ 'hour-future-one' => 'en {0} hora',
+ 'hour-future-other' => 'en {0} hores',
'hour-narrow-future-one' => 'en {0} h.',
'hour-narrow-future-other' => 'en {0} h.',
'hour-narrow-past-one' => 'hai {0} h.',
'hour-narrow-past-other' => 'hai {0} h.',
'hour-one' => '{0} hora',
'hour-other' => '{0} hores',
- 'hour-past-one' => 'Hai {0} hora',
- 'hour-past-other' => 'Hai {0} hores',
+ 'hour-past-one' => 'hai {0} hora',
+ 'hour-past-other' => 'hai {0} hores',
'hour-short-future-one' => 'en {0} h.',
'hour-short-future-other' => 'en {0} h.',
'hour-short-past-one' => 'hai {0} h.',
@@ -1189,30 +1527,42 @@ $timeUnits = array(
'microsecond-other' => '{0} microsegundos',
'millisecond-one' => '{0} milisegundu',
'millisecond-other' => '{0} milisegundos',
- 'minute-future-one' => 'En {0} minutu',
- 'minute-future-other' => 'En {0} minutos',
+ 'minute-future-one' => 'en {0} minutu',
+ 'minute-future-other' => 'en {0} minutos',
'minute-narrow-future-one' => 'en {0} min.',
'minute-narrow-future-other' => 'en {0} min.',
'minute-narrow-past-one' => 'hai {0} min.',
'minute-narrow-past-other' => 'hai {0} min.',
'minute-one' => '{0} minutu',
'minute-other' => '{0} minutos',
- 'minute-past-one' => 'Hai {0} minutu',
- 'minute-past-other' => 'Hai {0} minutos',
+ 'minute-past-one' => 'hai {0} minutu',
+ 'minute-past-other' => 'hai {0} minutos',
'minute-short-future-one' => 'en {0} min.',
'minute-short-future-other' => 'en {0} min.',
'minute-short-past-one' => 'hai {0} min.',
'minute-short-past-other' => 'hai {0} min.',
- 'month-future-one' => 'En {0} mes',
- 'month-future-other' => 'En {0} meses',
+ 'mon-future-one' => 'dientro de {0} llunes',
+ 'mon-future-other' => 'dientro de {0} llunes',
+ 'mon-narrow-future-one' => 'dientro de {0} llunes',
+ 'mon-narrow-future-other' => 'dientro de {0} llunes',
+ 'mon-narrow-past-one' => 'hai {0} llunes',
+ 'mon-narrow-past-other' => 'hai {0} llunes',
+ 'mon-past-one' => 'hai {0} llunes',
+ 'mon-past-other' => 'hai {0} llunes',
+ 'mon-short-future-one' => 'dientro de {0} llunes',
+ 'mon-short-future-other' => 'dientro de {0} llunes',
+ 'mon-short-past-one' => 'hai {0} llunes',
+ 'mon-short-past-other' => 'hai {0} llunes',
+ 'month-future-one' => 'en {0} mes',
+ 'month-future-other' => 'en {0} meses',
'month-narrow-future-one' => 'en {0} m.',
'month-narrow-future-other' => 'en {0} m.',
'month-narrow-past-one' => 'hai {0} m.',
'month-narrow-past-other' => 'hai {0} m.',
'month-one' => '{0} mes',
'month-other' => '{0} meses',
- 'month-past-one' => 'Hai {0} mes',
- 'month-past-other' => 'Hai {0} meses',
+ 'month-past-one' => 'hai {0} mes',
+ 'month-past-other' => 'hai {0} meses',
'month-short-future-one' => 'en {0} mes',
'month-short-future-other' => 'en {0} meses',
'month-short-past-one' => 'hai {0} mes',
@@ -1231,46 +1581,106 @@ $timeUnits = array(
'quarter-short-future-other' => 'en {0} trim.',
'quarter-short-past-one' => 'hai {0} trim.',
'quarter-short-past-other' => 'hai {0} trim.',
- 'second-future-one' => 'En {0} segundu',
- 'second-future-other' => 'En {0} segundos',
+ 'sat-future-one' => 'dientro de {0} sábadu',
+ 'sat-future-other' => 'dientro de {0} sábados',
+ 'sat-narrow-future-one' => 'dientro de {0} sábadu',
+ 'sat-narrow-future-other' => 'dientro de {0} sábados',
+ 'sat-narrow-past-one' => 'hai {0} sábadu',
+ 'sat-narrow-past-other' => 'hai {0} sábados',
+ 'sat-past-one' => 'hai {0} sábadu',
+ 'sat-past-other' => 'hai {0} sábados',
+ 'sat-short-future-one' => 'dientro de {0} sábadu',
+ 'sat-short-future-other' => 'dientro de {0} sábados',
+ 'sat-short-past-one' => 'hai {0} sábadu',
+ 'sat-short-past-other' => 'hai {0} sábados',
+ 'second-future-one' => 'en {0} segundu',
+ 'second-future-other' => 'en {0} segundos',
'second-narrow-future-one' => 'en {0} s.',
'second-narrow-future-other' => 'en {0} s.',
'second-narrow-past-one' => 'hai {0} s.',
'second-narrow-past-other' => 'hai {0} s.',
'second-one' => '{0} segundu',
'second-other' => '{0} segundos',
- 'second-past-one' => 'Hai {0} segundu',
- 'second-past-other' => 'Hai {0} segundos',
+ 'second-past-one' => 'hai {0} segundu',
+ 'second-past-other' => 'hai {0} segundos',
'second-short-future-one' => 'en {0} seg.',
'second-short-future-other' => 'en {0} seg.',
'second-short-past-one' => 'hai {0} seg.',
'second-short-past-other' => 'hai {0} seg.',
- 'week-future-one' => 'En {0} selmana',
- 'week-future-other' => 'En {0} selmanes',
+ 'sun-future-one' => 'dientro de {0} domingu',
+ 'sun-future-other' => 'dientro de {0} domingos',
+ 'sun-narrow-future-one' => 'dientro de {0} domingu',
+ 'sun-narrow-future-other' => 'dientro de {0} domingos',
+ 'sun-narrow-past-one' => 'hai {0} domingu',
+ 'sun-narrow-past-other' => 'hai {0} domingos',
+ 'sun-past-one' => 'hai {0} domingu',
+ 'sun-past-other' => 'hai {0} domingos',
+ 'sun-short-future-one' => 'dientro de {0} domingu',
+ 'sun-short-future-other' => 'dientro de {0} domingos',
+ 'sun-short-past-one' => 'hai {0} domingu',
+ 'sun-short-past-other' => 'hai {0} domingos',
+ 'thu-future-one' => 'dientro de {0} xueves',
+ 'thu-future-other' => 'dientro de {0} xueves',
+ 'thu-narrow-future-one' => 'dientro de {0} xueves',
+ 'thu-narrow-future-other' => 'dientro de {0} xueves',
+ 'thu-narrow-past-one' => 'hai {0} xueves',
+ 'thu-narrow-past-other' => 'hai {0} xueves',
+ 'thu-past-one' => 'hai {0} xueves',
+ 'thu-past-other' => 'hai {0} xueves',
+ 'thu-short-future-one' => 'dientro de {0} xueves',
+ 'thu-short-future-other' => 'dientro de {0} xueves',
+ 'thu-short-past-one' => 'hai {0} xueves',
+ 'thu-short-past-other' => 'hai {0} xueves',
+ 'tue-future-one' => 'dientro de {0} martes',
+ 'tue-future-other' => 'dientro de {0} martes',
+ 'tue-narrow-future-one' => 'dientro de {0} martes',
+ 'tue-narrow-future-other' => 'dientro de {0} martes',
+ 'tue-narrow-past-one' => 'hai {0} martes',
+ 'tue-narrow-past-other' => 'hai {0} martes',
+ 'tue-past-one' => 'hai {0} martes',
+ 'tue-past-other' => 'hai {0} martes',
+ 'tue-short-future-one' => 'dientro de {0} martes',
+ 'tue-short-future-other' => 'dientro de {0} martes',
+ 'tue-short-past-one' => 'hai {0} martes',
+ 'tue-short-past-other' => 'hai {0} martes',
+ 'wed-future-one' => 'dientro de {0} miércoles',
+ 'wed-future-other' => 'dientro de {0} miércoles',
+ 'wed-narrow-future-one' => 'dientro de {0} miércoles',
+ 'wed-narrow-future-other' => 'dientro de {0} miércoles',
+ 'wed-narrow-past-one' => 'hai {0} miércoles',
+ 'wed-narrow-past-other' => 'hai {0} miércoles',
+ 'wed-past-one' => 'hai {0} miércoles',
+ 'wed-past-other' => 'hai {0} miércoles',
+ 'wed-short-future-one' => 'dientro de {0} miércoles',
+ 'wed-short-future-other' => 'dientro de {0} miércoles',
+ 'wed-short-past-one' => 'hai {0} miércoles',
+ 'wed-short-past-other' => 'hai {0} miércoles',
+ 'week-future-one' => 'en {0} selmana',
+ 'week-future-other' => 'en {0} selmanes',
'week-narrow-future-one' => 'en {0} se.',
'week-narrow-future-other' => 'en {0} se.',
'week-narrow-past-one' => 'hai {0} se.',
'week-narrow-past-other' => 'hai {0} se.',
'week-one' => '{0} selmana',
'week-other' => '{0} selmanes',
- 'week-past-one' => 'Hai {0} selmana',
- 'week-past-other' => 'Hai {0} selmanes',
+ 'week-past-one' => 'hai {0} selmana',
+ 'week-past-other' => 'hai {0} selmanes',
'week-short-future-one' => 'en {0} selm.',
'week-short-future-other' => 'en {0} selm.',
'week-short-past-one' => 'hai {0} selm.',
'week-short-past-other' => 'hai {0} selm.',
- 'year-future-one' => 'En {0} añu',
- 'year-future-other' => 'En {0} años',
+ 'year-future-one' => 'en {0} añu',
+ 'year-future-other' => 'en {0} años',
'year-narrow-future-one' => 'en {0} a.',
'year-narrow-future-other' => 'en {0} a.',
'year-narrow-past-one' => 'hai {0} a.',
'year-narrow-past-other' => 'hai {0} a.',
'year-one' => '{0} añu',
'year-other' => '{0} años',
- 'year-past-one' => 'Hai {0} añu',
- 'year-past-other' => 'Hai {0} años',
+ 'year-past-one' => 'hai {0} añu',
+ 'year-past-other' => 'hai {0} años',
'year-short-future-one' => 'en {0} añu',
'year-short-future-other' => 'en {0} años',
'year-short-past-one' => 'hai {0} añu',
'year-short-past-other' => 'hai {0} años',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesAz.php b/MLEB/cldr/CldrNames/CldrNamesAz.php
index cbac6555..ff3952a0 100644
--- a/MLEB/cldr/CldrNames/CldrNamesAz.php
+++ b/MLEB/cldr/CldrNames/CldrNamesAz.php
@@ -1,122 +1,126 @@
<?php
-$languageNames = array(
- 'aa' => 'afarca',
+$languageNames = [
+ 'aa' => 'afar',
'ab' => 'abxaz',
- 'ace' => 'akin dili',
- 'ach' => 'akoli dili',
- 'ada' => 'adangme dili',
- 'ady' => 'aduge dili',
- 'ae' => 'avestanca',
+ 'ace' => 'akin',
+ 'ach' => 'akoli',
+ 'ada' => 'adanqme',
+ 'ady' => 'adıgey',
+ 'ae' => 'avestan',
'af' => 'afrikaans',
- 'afh' => 'afrihili dili',
+ 'afh' => 'afrihili',
'agq' => 'aqhem',
- 'ain' => 'aynuca',
- 'ak' => 'akanca',
- 'akk' => 'akadianca',
- 'ale' => 'aleutca',
- 'alt' => 'cənub altay dili',
+ 'ain' => 'aynu',
+ 'ak' => 'akan',
+ 'akk' => 'akkad',
+ 'ale' => 'aleut',
+ 'alt' => 'cənubi altay',
'am' => 'amhar',
- 'an' => 'aragonca',
- 'ang' => 'qədimi ingiliscə',
- 'anp' => 'angikə dili',
+ 'an' => 'araqon',
+ 'ang' => 'qədim ingilis',
+ 'anp' => 'angika',
'ar' => 'ərəb',
- 'ar-001' => 'Modern Standart Ərəbcə',
- 'arc' => 'aramik dili',
- 'arn' => 'araukanca',
- 'arp' => 'arapaho dili',
- 'arw' => 'aravakça',
+ 'ar-001' => 'müasir standart ərəb',
+ 'arc' => 'aramik',
+ 'arn' => 'mapuçe',
+ 'arp' => 'arapaho',
+ 'arw' => 'aravak',
'as' => 'assam',
'asa' => 'asu',
- 'ast' => 'asturicə',
- 'av' => 'avarikcə',
- 'awa' => 'avadicə',
- 'ay' => 'aymarca',
+ 'ast' => 'asturiya',
+ 'av' => 'avar',
+ 'awa' => 'avadhi',
+ 'ay' => 'aymara',
'az' => 'azərbaycan',
+ 'az-arab' => 'cənubi azərbaycan',
'ba' => 'başqırd',
- 'bal' => 'baluc dili',
- 'ban' => 'balincə',
- 'bas' => 'basa dili',
+ 'bal' => 'baluc',
+ 'ban' => 'bali',
+ 'bas' => 'basa',
'be' => 'belarus',
- 'bej' => 'beja dili',
+ 'bej' => 'beja',
'bem' => 'bemba',
'bez' => 'bena',
'bg' => 'bolqar',
- 'bho' => 'bxoçpuri dili',
- 'bi' => 'bislama dili',
- 'bik' => 'bikolca',
- 'bin' => 'bini dili',
- 'bla' => 'siksikə dili',
+ 'bgn' => 'qərbi bəluc',
+ 'bho' => 'bxoçpuri',
+ 'bi' => 'bislama',
+ 'bik' => 'bikol',
+ 'bin' => 'bini',
+ 'bla' => 'siksikə',
'bm' => 'bambara',
'bn' => 'benqal',
'bo' => 'tibet',
- 'br' => 'Bretonca',
- 'bra' => 'braj dili',
+ 'br' => 'breton',
+ 'bra' => 'braj',
'brx' => 'bodo',
- 'bs' => 'bosniak',
- 'bua' => 'buryat dili',
- 'bug' => 'bugin dili',
- 'byn' => 'bilincə',
+ 'bs' => 'bosniya',
+ 'bua' => 'buryat',
+ 'bug' => 'bugin',
+ 'byn' => 'blin',
'ca' => 'katalan',
- 'cad' => 'kado dili',
- 'car' => 'karib dili',
- 'cch' => 'atsamca',
- 'ce' => 'çeçen dili',
- 'ceb' => 'kebuano dili',
+ 'cad' => 'keddo',
+ 'car' => 'karib',
+ 'cch' => 'atsam',
+ 'ce' => 'çeçen',
+ 'ceb' => 'sebuan',
'cgg' => 'çiqa',
- 'ch' => 'çamoro dili',
- 'chb' => 'çibçə dili',
- 'chg' => 'çağatay dili',
- 'chk' => 'çukiz dili',
- 'chm' => 'mari dili',
+ 'ch' => 'çamoro',
+ 'chb' => 'çibça',
+ 'chg' => 'çağatay',
+ 'chk' => 'çukiz',
+ 'chm' => 'mari',
'chn' => 'çinuk ləhçəsi',
- 'cho' => 'çoktau dili',
- 'chp' => 'çipevyan dili',
- 'chr' => 'çiroki',
- 'chy' => 'çeyen dili',
- 'ckb' => 'sorani kürd',
+ 'cho' => 'çoktau',
+ 'chp' => 'çipevyan',
+ 'chr' => 'çeroki',
+ 'chy' => 'çeyen',
+ 'ckb' => 'Mərkəzi kürdcə',
'co' => 'korsika',
- 'cop' => 'kopt dili',
- 'cr' => 'kri dili',
- 'crh' => 'krım türkçə',
+ 'cop' => 'kopt',
+ 'cr' => 'kri',
+ 'crh' => 'krım türkcəsi',
+ 'crs' => 'Seyşel kreol fransızcası',
'cs' => 'çex',
- 'csb' => 'kaşubyan dili',
- 'cu' => 'kilsə slav dili',
- 'cv' => 'çuvaş dili',
+ 'csb' => 'kaşubyan',
+ 'cu' => 'slavyan',
+ 'cv' => 'çuvaş',
'cy' => 'uels',
'da' => 'danimarka',
- 'dak' => 'dakota dili',
- 'dar' => 'darqva dili',
+ 'dak' => 'dakota',
+ 'dar' => 'darqva',
'dav' => 'taita',
'de' => 'alman',
'de-at' => 'Avstriya almancası',
'de-ch' => 'İsveçrə yüksək almancası',
- 'del' => 'delaver dili',
+ 'del' => 'delaver',
'den' => 'slavey',
- 'dgr' => 'doqrib dili',
- 'din' => 'dinka dili',
+ 'dgr' => 'doqrib',
+ 'din' => 'dinka',
'dje' => 'zarma',
- 'doi' => 'doqri dili',
+ 'doi' => 'doqri',
'dsb' => 'aşağı sorb',
'dua' => 'duala',
- 'dum' => 'ortacaq hollandca',
- 'dv' => 'diveh dili',
+ 'dum' => 'orta holland',
+ 'dv' => 'maldiv',
'dyo' => 'diola',
- 'dyu' => 'dyula dili',
- 'dz' => 'dzonqa',
+ 'dyu' => 'dyula',
+ 'dz' => 'dzonqxa',
+ 'dzg' => 'dazaqa',
'ebu' => 'embu',
'ee' => 'eve',
- 'efi' => 'efik dili',
- 'egy' => 'qədimi misir dili',
- 'eka' => 'ekacuk dili',
+ 'efi' => 'efik',
+ 'egy' => 'qədim misir',
+ 'eka' => 'ekacuk',
'el' => 'yunan',
- 'elx' => 'elamit dili',
+ 'elx' => 'elamit',
'en' => 'ingilis',
'en-au' => 'Avstraliya ingiliscəsi',
'en-ca' => 'Kanada ingiliscəsi',
'en-gb' => 'Britaniya ingiliscəsi',
'en-us' => 'Amerika ingiliscəsi',
- 'enm' => 'ortacaq ingiliscə',
+ 'enm' => 'orta ingilis',
'eo' => 'esperanto',
'es' => 'ispan',
'es-419' => 'Latın Amerikası ispancası',
@@ -124,370 +128,394 @@ $languageNames = array(
'es-mx' => 'Meksika ispancası',
'et' => 'eston',
'eu' => 'bask',
- 'ewo' => 'evondo dili',
+ 'ewo' => 'evondo',
'fa' => 'fars',
- 'fan' => 'fang dili',
- 'fat' => 'fanti dili',
- 'ff' => 'fula dili',
+ 'fan' => 'fang',
+ 'fat' => 'fanti',
+ 'ff' => 'fula',
'fi' => 'fin',
'fil' => 'filippin',
'fj' => 'fici',
'fo' => 'farer',
- 'fon' => 'fon dili',
+ 'fon' => 'fon',
'fr' => 'fransız',
'fr-ca' => 'Kanada fransızcası',
'fr-ch' => 'İsveçrə fransızcası',
- 'frm' => 'ortacaq fransızca',
- 'fro' => 'qədimi fransızca',
- 'frr' => 'şimal fris dili',
- 'fur' => 'friul dili',
+ 'frm' => 'orta fransız',
+ 'fro' => 'qədim fransız',
+ 'frr' => 'şimali fris',
+ 'fur' => 'friul',
'fy' => 'qərbi friz',
'ga' => 'irland',
- 'gaa' => 'qa dili',
+ 'gaa' => 'qa',
'gag' => 'qaqauz',
- 'gay' => 'qayo dili',
- 'gba' => 'qabaya dili',
- 'gd' => 'skot gaelik dili',
- 'gez' => 'qez dili',
- 'gil' => 'qilbert gili',
- 'gl' => 'qalisian',
- 'gmh' => 'ortacaq yüksək almanca',
+ 'gan' => 'qan',
+ 'gay' => 'qayo',
+ 'gba' => 'qabaya',
+ 'gd' => 'Şotlandiya keltcəsi',
+ 'gez' => 'qez',
+ 'gil' => 'qilbert',
+ 'gl' => 'qalisiya',
+ 'gmh' => 'orta yüksək alman',
'gn' => 'quarani',
- 'goh' => 'qədimi almanca',
- 'gon' => 'qondi dili',
- 'gor' => 'qorontalo dili',
- 'got' => 'gotça',
- 'grb' => 'qrebo dili',
- 'grc' => 'qədimi yunanca',
+ 'goh' => 'qədim alman',
+ 'gon' => 'qondi',
+ 'gor' => 'qorontalo',
+ 'got' => 'qotika',
+ 'grb' => 'qrebo',
+ 'grc' => 'qədim yunan',
'gsw' => 'İsveçrə almancası',
'gu' => 'qucarat',
'guz' => 'qusi',
'gv' => 'manks',
- 'gwi' => 'qviçin dili',
+ 'gwi' => 'qviçin',
'ha' => 'hausa',
- 'hai' => 'hayda dili',
+ 'hai' => 'hayda',
+ 'hak' => 'hakka',
'haw' => 'havay',
'he' => 'ivrit',
- 'hi' => 'hindi',
- 'hil' => 'hiliqaynon dili',
- 'hit' => 'hittit dili',
- 'hmn' => 'monq dili',
- 'ho' => 'hiri motu dili',
+ 'hi' => 'hind',
+ 'hil' => 'hiliqaynon',
+ 'hit' => 'hittit',
+ 'hmn' => 'monq',
+ 'ho' => 'hiri motu',
'hr' => 'xorvat',
'hsb' => 'yuxarı sorb',
- 'ht' => 'haiti',
+ 'hsn' => 'syan',
+ 'ht' => 'haiti kreol',
'hu' => 'macar',
- 'hup' => 'hupa dili',
+ 'hup' => 'hupa',
'hy' => 'erməni',
- 'hz' => 'Herer dili',
- 'ia' => 'interlingua dili',
- 'iba' => 'iban dili',
- 'id' => 'indonez',
- 'ie' => 'interlingue dili',
+ 'hz' => 'herero',
+ 'ia' => 'interlinqua',
+ 'iba' => 'iban',
+ 'ibb' => 'ibibio',
+ 'id' => 'indoneziya',
+ 'ie' => 'interlinqve',
'ig' => 'iqbo',
'ii' => 'siçuan yi',
- 'ik' => 'inupiaq dili',
- 'ilo' => 'iloko dili',
- 'inh' => 'inquş dili',
- 'io' => 'ido dili',
+ 'ik' => 'inupiaq',
+ 'ilo' => 'iloko',
+ 'inh' => 'inquş',
+ 'io' => 'ido',
'is' => 'island',
'it' => 'italyan',
'iu' => 'inuktitut',
'ja' => 'yapon',
- 'jbo' => 'loğban dili',
+ 'jbo' => 'loğban',
'jgo' => 'nqomba',
'jmc' => 'maçam',
- 'jpr' => 'judo-farsca',
- 'jrb' => 'jude-ərəbcə',
+ 'jpr' => 'ivrit-fars',
+ 'jrb' => 'ivrit-ərəb',
'jv' => 'yava',
'ka' => 'gürcü',
- 'kaa' => 'qara-qalpaq dili',
+ 'kaa' => 'qaraqalpaq',
'kab' => 'kabile',
- 'kac' => 'kaçinca',
- 'kaj' => 'ju dili',
+ 'kac' => 'kaçin',
+ 'kaj' => 'ju',
'kam' => 'kamba',
- 'kaw' => 'kavi dili',
- 'kbd' => 'kabardca',
- 'kcg' => 'tiyap dili',
+ 'kaw' => 'kavi',
+ 'kbd' => 'kabarda-çərkəz',
+ 'kcg' => 'tiyap',
'kde' => 'makond',
'kea' => 'kabuverdian',
- 'kfo' => 'koro dili',
- 'kg' => 'konqo dili',
- 'kha' => 'xazi dili',
- 'kho' => 'xotan dili',
+ 'kfo' => 'koro',
+ 'kg' => 'konqo',
+ 'kha' => 'xazi',
+ 'kho' => 'xotan',
'khq' => 'koyra çiini',
'ki' => 'kikuyu',
- 'kj' => 'kuanyama dili',
+ 'kj' => 'kuanyama',
'kk' => 'qazax',
+ 'kkj' => 'kako',
'kl' => 'kalaallisut',
'kln' => 'kalencin',
'km' => 'kxmer',
- 'kmb' => 'kimbundu dili',
+ 'kmb' => 'kimbundu',
'kn' => 'kannada',
'ko' => 'koreya',
'koi' => 'komi-permyak',
- 'kok' => 'konkan',
- 'kos' => 'kosreyan dili',
- 'kpe' => 'kpelle dili',
- 'kr' => 'kanur dili',
- 'krc' => 'qaraçay-balkar dili',
- 'krl' => 'karelyan dili',
- 'kru' => 'kurux dili',
- 'ks' => 'kaşmir',
+ 'kok' => 'konkani',
+ 'kos' => 'kosreyan',
+ 'kpe' => 'kpelle',
+ 'kr' => 'kanuri',
+ 'krc' => 'qaraçay-balkar',
+ 'krl' => 'karel',
+ 'kru' => 'kurux',
+ 'ks' => 'kəşmir',
'ksb' => 'şambala',
'ksf' => 'bafia',
+ 'ksh' => 'köln',
'ku' => 'kürd',
- 'kum' => 'kumuk dili',
- 'kut' => 'kutenay dili',
- 'kv' => 'komi dili',
+ 'kum' => 'kumık',
+ 'kut' => 'kutenay',
+ 'kv' => 'komi',
'kw' => 'korn',
'ky' => 'qırğız',
'la' => 'latın',
- 'lad' => 'ladin dili',
+ 'lad' => 'sefard',
'lag' => 'langi',
- 'lah' => 'laxnda dili',
- 'lam' => 'lamba dili',
+ 'lah' => 'qərbi pəncab',
+ 'lam' => 'lamba',
'lb' => 'lüksemburq',
- 'lez' => 'ləzqi dili',
+ 'lez' => 'ləzgi',
'lg' => 'qanda',
- 'li' => 'limburqiş dili',
+ 'li' => 'limburq',
'lkt' => 'lakota',
'ln' => 'linqala',
'lo' => 'laos',
- 'lol' => 'monqo dili',
- 'loz' => 'lozi dili',
+ 'lol' => 'monqo',
+ 'loz' => 'lozi',
+ 'lrc' => 'şimali luri',
'lt' => 'litva',
'lu' => 'luba-katanqa',
- 'lua' => 'luba-lulua dili',
- 'lui' => 'luyseno dili',
- 'lun' => 'lunda dili',
+ 'lua' => 'luba-lulua',
+ 'lui' => 'luyseno',
+ 'lun' => 'lunda',
'luo' => 'luo',
- 'lus' => 'lushayca',
+ 'lus' => 'mizo',
'luy' => 'luyia',
'lv' => 'latış',
- 'mad' => 'maduriz dili',
- 'mag' => 'maqahi dili',
- 'mai' => 'maitili dili',
- 'mak' => 'makasar dili',
- 'man' => 'məndinqo dili',
+ 'mad' => 'maduriz',
+ 'mag' => 'maqahi',
+ 'mai' => 'maitili',
+ 'mak' => 'makasar',
+ 'man' => 'məndinqo',
'mas' => 'masay',
- 'mdf' => 'mokşa dili',
- 'mdr' => 'mandar dili',
- 'men' => 'mende dili',
+ 'mdf' => 'mokşa',
+ 'mdr' => 'mandar',
+ 'men' => 'mende',
'mer' => 'meru',
'mfe' => 'morisien',
'mg' => 'malaqas',
- 'mga' => 'ortacaq irlandca',
+ 'mga' => 'orta irland',
'mgh' => 'maxuva-meetto',
'mgo' => 'meta’',
- 'mh' => 'marşal dili',
+ 'mh' => 'marşal',
'mi' => 'maori',
- 'mic' => 'mikmak dili',
- 'min' => 'minanqkaban dili',
+ 'mic' => 'mikmak',
+ 'min' => 'minanqkaban',
'mk' => 'makedon',
'ml' => 'malayalam',
'mn' => 'monqol',
- 'mnc' => 'mançu dili',
- 'mni' => 'manipüri dili',
+ 'mnc' => 'mançu',
+ 'mni' => 'manipüri',
'moh' => 'mohavk',
- 'mos' => 'mosi dili',
- 'mr' => 'marati',
+ 'mos' => 'mosi',
+ 'mr' => 'marathi',
'ms' => 'malay',
'mt' => 'malta',
'mua' => 'mundanq',
- 'mul' => 'digər dillər',
- 'mus' => 'krik dili',
- 'mwl' => 'mirand dili',
- 'mwr' => 'maruari dili',
- 'my' => 'birma',
- 'myv' => 'erzya dili',
- 'na' => 'nauru dili',
- 'nap' => 'neapolital dili',
+ 'mul' => 'çoxsaylı dillər',
+ 'mus' => 'krik',
+ 'mwl' => 'mirand',
+ 'mwr' => 'maruari',
+ 'my' => 'birman',
+ 'myv' => 'erzya',
+ 'mzn' => 'mazandaran',
+ 'na' => 'nauru',
+ 'nan' => 'Min Nan',
+ 'nap' => 'neapolitan',
'naq' => 'nama',
'nb' => 'bokmal norveç',
'nd' => 'şimali ndebele',
- 'nds' => 'aşağı almanca',
+ 'nds' => 'aşağı alman',
+ 'nds-nl' => 'aşağı sakson',
'ne' => 'nepal',
- 'new' => 'nevari dili',
- 'ng' => 'nqonka dili',
- 'nia' => 'nyas dili',
- 'niu' => 'niyuan dili',
+ 'new' => 'nevari',
+ 'ng' => 'ndonqa',
+ 'nia' => 'nias',
+ 'niu' => 'niyuan',
'nl' => 'holland',
'nl-be' => 'flamand',
'nmg' => 'kvasio',
'nn' => 'nünorsk norveç',
- 'no' => 'norveç dili',
- 'nog' => 'noqay dili',
- 'non' => 'qədimi norsca',
+ 'nnh' => 'ngiemboon',
+ 'no' => 'norveç',
+ 'nog' => 'noqay',
+ 'non' => 'qədim nors',
'nqo' => 'nqo',
- 'nr' => 'cənub ndebele dili',
- 'nso' => 'şimal soto dili',
+ 'nr' => 'cənubi ndebele',
+ 'nso' => 'şimal soto',
'nus' => 'nuer',
- 'nv' => 'navayo dili',
- 'ny' => 'nyanca dili',
- 'nym' => 'nyamvezi dili',
+ 'nv' => 'navayo',
+ 'ny' => 'nyanca',
+ 'nym' => 'nyamvezi',
'nyn' => 'nyankol',
- 'nyo' => 'niyoro dili',
- 'nzi' => 'nizima dili',
- 'oc' => 'oksitanca',
- 'oj' => 'ocibva dili',
+ 'nyo' => 'nyoro',
+ 'nzi' => 'nzima',
+ 'oc' => 'oksitan',
+ 'oj' => 'ocibva',
'om' => 'oromo',
- 'or' => 'oriya',
- 'os' => 'osetik dili',
- 'osa' => 'osage dili',
- 'ota' => 'osman dili',
+ 'or' => 'odiya',
+ 'os' => 'osetin',
+ 'osa' => 'osage',
+ 'ota' => 'osman',
'pa' => 'pəncab',
- 'pag' => 'panqasinan dili',
- 'pal' => 'paxlavi dili',
- 'pam' => 'pampanqa dili',
- 'pap' => 'papyamento dili',
- 'pau' => 'palayanca',
- 'peo' => 'qədimi farsca',
- 'phn' => 'foyenik dili',
- 'pi' => 'pali dili',
+ 'pag' => 'panqasinan',
+ 'pal' => 'pəhləvi',
+ 'pam' => 'pampanqa',
+ 'pap' => 'papyamento',
+ 'pau' => 'palayan',
+ 'pcm' => 'niger kreol',
+ 'peo' => 'qədim fars',
+ 'phn' => 'foyenik',
+ 'pi' => 'pali',
'pl' => 'polyak',
- 'pon' => 'ponpeyan dili',
- 'pro' => 'qədimi provensialca',
+ 'pon' => 'ponpey',
+ 'prg' => 'pruss',
+ 'pro' => 'qədim provansal',
'ps' => 'puştu',
'pt' => 'portuqal',
'pt-br' => 'Braziliya portuqalcası',
'pt-pt' => 'Portuqaliya portuqalcası',
'qu' => 'keçua',
'quc' => 'kiçe',
- 'raj' => 'racastan dili',
- 'rap' => 'rapanu dili',
- 'rar' => 'rarotonqan dili',
- 'rm' => 'retoroman',
+ 'raj' => 'racastani',
+ 'rap' => 'rapanui',
+ 'rar' => 'rarotonqan',
+ 'rm' => 'romanş',
'rn' => 'rundi',
'ro' => 'rumın',
'ro-md' => 'moldav',
'rof' => 'rombo',
- 'rom' => 'roman dili',
+ 'rom' => 'roman',
'ru' => 'rus',
- 'rup' => 'aromanca',
+ 'rup' => 'aroman',
'rw' => 'kinyarvanda',
'rwk' => 'rua',
'sa' => 'sanskrit',
- 'sad' => 'sandave dili',
- 'sah' => 'yakut dili',
- 'sam' => 'samaritan dili',
+ 'sad' => 'sandave',
+ 'sah' => 'saxa',
+ 'sam' => 'samaritan',
'saq' => 'samburu',
- 'sas' => 'sasak dili',
- 'sat' => 'santal dili',
+ 'sas' => 'sasak',
+ 'sat' => 'santal',
+ 'sba' => 'nqambay',
'sbp' => 'sanqu',
- 'sc' => 'sardin dili',
- 'scn' => 'sisili dili',
- 'sco' => 'skots dili',
+ 'sc' => 'sardin',
+ 'scn' => 'siciliya',
+ 'sco' => 'skots',
'sd' => 'sindhi',
+ 'sdh' => 'cənubi kürd',
'se' => 'şimali sami',
'seh' => 'sena',
- 'sel' => 'selkup dili',
+ 'sel' => 'selkup',
'ses' => 'koyraboro senni',
'sg' => 'sanqo',
- 'sga' => 'qədimi irlandca',
- 'sh' => 'serb-xorvatca',
+ 'sga' => 'qədim irland',
+ 'sh' => 'serb-xorvat',
'shi' => 'taçelit',
- 'shn' => 'şan dili',
- 'si' => 'sinhal',
- 'sid' => 'sidamo dili',
+ 'shn' => 'şan',
+ 'si' => 'sinhala',
+ 'sid' => 'sidamo',
'sk' => 'slovak',
'sl' => 'sloven',
- 'sm' => 'samoa dili',
+ 'sm' => 'samoa',
'sma' => 'cənubi sami',
'smj' => 'lule sami',
'smn' => 'inari sami',
- 'sms' => 'skolt',
+ 'sms' => 'skolt sami',
'sn' => 'şona',
- 'snk' => 'soninke dili',
+ 'snk' => 'soninke',
'so' => 'somali',
- 'sog' => 'soqdiyen dili',
+ 'sog' => 'soqdiyen',
'sq' => 'alban',
'sr' => 'serb',
- 'srn' => 'sranan tonqo dili',
- 'srr' => 'serer dilii',
- 'ss' => 'svati dili',
- 'st' => 'Sesoto dili',
- 'su' => 'sudan',
- 'suk' => 'sukuma dili',
- 'sus' => 'susu dili',
- 'sux' => 'sumeryan dili',
+ 'srn' => 'sranan tonqo',
+ 'srr' => 'serer',
+ 'ss' => 'svati',
+ 'ssy' => 'saho',
+ 'st' => 'sesoto',
+ 'su' => 'sundan',
+ 'suk' => 'sukuma',
+ 'sus' => 'susu',
+ 'sux' => 'sumeryan',
'sv' => 'isveç',
'sw' => 'suahili',
- 'swc' => 'Konqo suahilicəsi',
- 'syr' => 'siryak dili',
+ 'sw-cd' => 'Konqo suahilicəsi',
+ 'swb' => 'komor',
+ 'syr' => 'suriya',
'ta' => 'tamil',
'te' => 'teluqu',
- 'tem' => 'timne dili',
+ 'tem' => 'timne',
'teo' => 'teso',
- 'ter' => 'tereno dili',
- 'tet' => 'tetum dili',
+ 'ter' => 'tereno',
+ 'tet' => 'tetum',
'tg' => 'tacik',
'th' => 'tay',
'ti' => 'tiqrin',
- 'tig' => 'tiqre dili',
- 'tiv' => 'tiv dili',
+ 'tig' => 'tiqre',
+ 'tiv' => 'tiv',
'tk' => 'türkmən',
- 'tkl' => 'tokelay dili',
- 'tl' => 'taqaloq dili',
+ 'tkl' => 'tokelay',
+ 'tl' => 'taqaloq',
'tlh' => 'klinqon',
- 'tli' => 'tlinqit dili',
- 'tmh' => 'tamaşek dili',
- 'tn' => 'svana dili',
+ 'tli' => 'tlinqit',
+ 'tmh' => 'tamaşek',
+ 'tn' => 'svana',
'to' => 'tonqa',
- 'tog' => 'niyasa tonga dili',
- 'tpi' => 'tok pisin dili',
+ 'tog' => 'nyasa tonqa',
+ 'tpi' => 'tok pisin',
'tr' => 'türk',
- 'ts' => 'sonqa dili',
- 'tsi' => 'simşyan dili',
+ 'trv' => 'taroko',
+ 'ts' => 'sonqa',
+ 'tsi' => 'simşyan',
'tt' => 'tatar',
- 'tum' => 'tumbuka dili',
- 'tvl' => 'tuvalu dili',
- 'tw' => 'Tvi dili',
+ 'tum' => 'tumbuka',
+ 'tvl' => 'tuvalu',
+ 'tw' => 'tvi',
'twq' => 'tasavaq',
- 'ty' => 'taxiti dili',
- 'tyv' => 'tuvinyan dili',
+ 'ty' => 'taxiti',
+ 'tyv' => 'tuvinyan',
'tzm' => 'Mərkəzi Atlas tamazicəsi',
- 'udm' => 'udmurt dili',
+ 'udm' => 'udmurt',
'ug' => 'uyğur',
- 'uga' => 'uqaritik dili',
+ 'uga' => 'uqarit',
'uk' => 'ukrayna',
- 'umb' => 'umbundu dili',
+ 'umb' => 'umbundu',
'und' => 'naməlum dil',
'ur' => 'urdu',
'uz' => 'özbək',
'vai' => 'vai',
- 've' => 'venda dili',
+ 've' => 'venda',
'vi' => 'vyetnam',
- 'vo' => 'volapük dili',
- 'vot' => 'votik dili',
+ 'vo' => 'volapük',
+ 'vot' => 'votik',
'vun' => 'vunyo',
- 'wa' => 'valun dili',
- 'wal' => 'valamo dili',
- 'war' => 'varay dili',
- 'was' => 'vaşo dili',
+ 'wa' => 'valun',
+ 'wae' => 'valles',
+ 'wal' => 'valamo',
+ 'war' => 'varay',
+ 'was' => 'vaşo',
+ 'wbp' => 'valpiri',
'wo' => 'volof',
- 'xal' => 'kalmıqca',
+ 'wuu' => 'vu',
+ 'xal' => 'kalmık',
'xh' => 'xosa',
'xog' => 'soqa',
- 'yao' => 'yao dili',
- 'yap' => 'yapiz dili',
- 'yi' => 'Yahudi dili',
+ 'yao' => 'yao',
+ 'yap' => 'yapiz',
+ 'yav' => 'yanqben',
+ 'ybb' => 'yemba',
+ 'yi' => 'idiş',
'yo' => 'yoruba',
- 'za' => 'juənq dili',
- 'zap' => 'zapotek dili',
- 'zbl' => 'blisimbols dili',
- 'zen' => 'zenaqa dili',
+ 'yue' => 'kanton',
+ 'za' => 'çjuan',
+ 'zap' => 'zapotek',
+ 'zbl' => 'blisimbols',
+ 'zen' => 'zenaqa',
'zgh' => 'tamazi',
'zh' => 'çin',
'zh-hans' => 'sadələşmiş çin',
'zh-hant' => 'ənənəvi çin',
'zu' => 'zulu',
- 'zun' => 'zuni dili',
+ 'zun' => 'zuni',
'zxx' => 'dil məzmunu yoxdur',
- 'zza' => 'zaza dili',
-);
+ 'zza' => 'zaza',
+];
-$currencyNames = array(
+$currencyNames = [
'ADP' => 'Andora Pesetası',
'AED' => 'Birləşmiş Ərəb Əmirlikləri Dirhəmi',
'AFA' => 'Əfqanıstan Əfqanisi (1927–2002)',
@@ -535,7 +563,8 @@ $currencyNames = array(
'BUK' => 'Burmis Kyatı',
'BWP' => 'Botsvana Pulası',
'BYB' => 'Belarus Yeni Rublu (1994–1999)',
- 'BYR' => 'Belarus Rublu',
+ 'BYN' => 'Belarus Rublu',
+ 'BYR' => 'Belarus Rublu (2000–2016)',
'BZD' => 'Beliz Dolları',
'CAD' => 'Kanada Dolları',
'CDF' => 'Konqo Frankı',
@@ -543,6 +572,7 @@ $currencyNames = array(
'CHF' => 'İsveçrə Frankı',
'CHW' => 'WIR Frankası',
'CLP' => 'Çili Pesosu',
+ 'CNH' => 'Çin Yuanı (ofşor)',
'CNY' => 'Çin Yuanı',
'COP' => 'Kolumbiya Pesosu',
'CRC' => 'Kosta Rika Kolonu',
@@ -640,7 +670,8 @@ $currencyNames = array(
'MMK' => 'Myanma Kiyatı',
'MNT' => 'Monqoliya Tuqriki',
'MOP' => 'Makao Patakası',
- 'MRO' => 'Mavritaniya Ugiyası',
+ 'MRO' => 'Mavritaniya Ugiyası (1973–2017)',
+ 'MRU' => 'Mavritaniya Ugiyası',
'MTP' => 'Maltiz Paundu',
'MUR' => 'Mavriki Rupisi',
'MVR' => 'Maldiv Rufiyası',
@@ -662,8 +693,8 @@ $currencyNames = array(
'OMR' => 'Oman Rialı',
'PAB' => 'Panama Balboası',
'PEI' => 'Peru Inti',
- 'PEN' => 'Peru Nuevo Solu',
- 'PES' => 'Peru Solu',
+ 'PEN' => 'Peru Solu',
+ 'PES' => 'Peru Solu (1863–1965)',
'PGK' => 'Papua Yeni Qvineya Kinası',
'PHP' => 'Filippin Pesosu',
'PKR' => 'Pakistan Rupisi',
@@ -692,7 +723,8 @@ $currencyNames = array(
'SOS' => 'Somali Şillinqi',
'SRD' => 'Surinam Dolları',
'SSP' => 'Cənubi Sudan Funtu',
- 'STD' => 'San Tom və Prinsip Dobrası',
+ 'STD' => 'San Tom və Prinsip Dobrası (1977–2017)',
+ 'STN' => 'San Tom və Prinsip Dobrası',
'SUR' => 'Sovet Rublu',
'SVC' => 'El Salvador kolonu',
'SYP' => 'Suriya Funtu',
@@ -722,7 +754,8 @@ $currencyNames = array(
'UYU' => 'Uruqvay Pesosu',
'UZS' => 'Özbəkistan Somu',
'VEB' => 'Venesuela Bolivarı (1871–2008)',
- 'VEF' => 'Venesuela Bolivarı',
+ 'VEF' => 'Venesuela Bolivarı (2008–2018)',
+ 'VES' => 'Venesuela Bolivarı',
'VND' => 'Vyetnam Donqu',
'VNN' => 'Vyetnam Donqu (1978–1985)',
'VUV' => 'Vanuatu Vatusu',
@@ -752,9 +785,9 @@ $currencyNames = array(
'ZWD' => 'Zimbabve Dolları (1980–2008)',
'ZWL' => 'Zimbabve Dolları (2009)',
'ZWR' => 'Zimbabve Dolları (2008)',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'AED' => 'AED',
'AFN' => 'AFN',
'ALL' => 'ALL',
@@ -764,7 +797,7 @@ $currencySymbols = array(
'ARS' => 'ARS',
'AUD' => 'A$',
'AWG' => 'AWG',
- 'AZN' => 'AZN',
+ 'AZN' => '₼',
'BAM' => 'BAM',
'BBD' => 'BBD',
'BDT' => 'BDT',
@@ -778,12 +811,14 @@ $currencySymbols = array(
'BSD' => 'BSD',
'BTN' => 'BTN',
'BWP' => 'BWP',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CA$',
'CDF' => 'CDF',
'CHF' => 'CHF',
'CLP' => 'CLP',
+ 'CNH' => 'CNH',
'CNY' => 'CN¥',
'COP' => 'COP',
'CRC' => 'CRC',
@@ -884,6 +919,7 @@ $currencySymbols = array(
'SRD' => 'SRD',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'STN',
'SYP' => 'SYP',
'SZL' => 'SZL',
'THB' => '฿',
@@ -901,6 +937,7 @@ $currencySymbols = array(
'UYU' => 'UYU',
'UZS' => 'UZS',
'VEF' => 'VEF',
+ 'VES' => 'VES',
'VND' => '₫',
'VUV' => 'VUV',
'WST' => 'WST',
@@ -911,18 +948,17 @@ $currencySymbols = array(
'YER' => 'YER',
'ZAR' => 'ZAR',
'ZMW' => 'ZMW',
-);
+];
-$countryNames = array(
- 'AC' => 'Yüksəliş Adası',
+$countryNames = [
+ 'AC' => 'Askenson adası',
'AD' => 'Andorra',
'AE' => 'Birləşmiş Ərəb Əmirlikləri',
'AF' => 'Əfqanıstan',
'AG' => 'Antiqua və Barbuda',
- 'AI' => 'Angila',
+ 'AI' => 'Angilya',
'AL' => 'Albaniya',
'AM' => 'Ermənistan',
- 'AN' => 'Hollandiya antilleri',
'AO' => 'Anqola',
'AQ' => 'Antarktika',
'AR' => 'Argentina',
@@ -930,47 +966,47 @@ $countryNames = array(
'AT' => 'Avstriya',
'AU' => 'Avstraliya',
'AW' => 'Aruba',
- 'AX' => 'Aland Adaları',
+ 'AX' => 'Aland adaları',
'AZ' => 'Azərbaycan',
- 'BA' => 'Bosniya və Hersoqovina',
+ 'BA' => 'Bosniya və Herseqovina',
'BB' => 'Barbados',
'BD' => 'Banqladeş',
'BE' => 'Belçika',
'BF' => 'Burkina Faso',
- 'BG' => 'Bolqariya',
+ 'BG' => 'Bolqarıstan',
'BH' => 'Bəhreyn',
'BI' => 'Burundi',
'BJ' => 'Benin',
- 'BL' => 'San Bartolomey',
- 'BM' => 'Bermuda',
+ 'BL' => 'Sent-Bartelemi',
+ 'BM' => 'Bermud adaları',
'BN' => 'Bruney',
'BO' => 'Boliviya',
'BQ' => 'Karib Niderlandı',
'BR' => 'Braziliya',
- 'BS' => 'Baham Adaları',
+ 'BS' => 'Baham adaları',
'BT' => 'Butan',
- 'BV' => 'Buve Adası',
+ 'BV' => 'Buve adası',
'BW' => 'Botsvana',
'BY' => 'Belarus',
'BZ' => 'Beliz',
'CA' => 'Kanada',
- 'CC' => 'Kokos Adaları',
+ 'CC' => 'Kokos (Kilinq) adaları',
'CD' => 'Konqo - Kinşasa',
'CF' => 'Mərkəzi Afrika Respublikası',
'CG' => 'Konqo - Brazzavil',
'CH' => 'İsveçrə',
- 'CI' => 'Fil Dişi Sahili',
- 'CK' => 'Kuk Adaları',
+ 'CI' => 'Kotd’ivuar',
+ 'CK' => 'Kuk adaları',
'CL' => 'Çili',
'CM' => 'Kamerun',
'CN' => 'Çin',
'CO' => 'Kolumbiya',
- 'CP' => 'Klipperton Adası',
+ 'CP' => 'Klipperton adası',
'CR' => 'Kosta Rika',
'CU' => 'Kuba',
- 'CV' => 'Kape Verde',
+ 'CV' => 'Kabo-Verde',
'CW' => 'Kurasao',
- 'CX' => 'Milad Adası',
+ 'CX' => 'Milad adası',
'CY' => 'Kipr',
'CZ' => 'Çexiya',
'DE' => 'Almaniya',
@@ -984,49 +1020,50 @@ $countryNames = array(
'EC' => 'Ekvador',
'EE' => 'Estoniya',
'EG' => 'Misir',
- 'EH' => 'Qərbi Sahara',
+ 'EH' => 'Qərbi Saxara',
'ER' => 'Eritreya',
'ES' => 'İspaniya',
'ET' => 'Efiopiya',
'EU' => 'Avropa Birliyi',
+ 'EZ' => 'Avrozona',
'FI' => 'Finlandiya',
'FJ' => 'Fici',
- 'FK' => 'Folklend Adaları',
+ 'FK' => 'Folklend adaları',
'FM' => 'Mikroneziya',
- 'FO' => 'Farer Adaları',
+ 'FO' => 'Farer adaları',
'FR' => 'Fransa',
'GA' => 'Qabon',
- 'GB' => 'B.K.',
+ 'GB' => 'BK',
'GD' => 'Qrenada',
'GE' => 'Gürcüstan',
- 'GF' => 'Fransız Qviyanası',
- 'GG' => 'Gernsey',
+ 'GF' => 'Fransa Qvianası',
+ 'GG' => 'Gernsi',
'GH' => 'Qana',
- 'GI' => 'Gibraltar',
+ 'GI' => 'Cəbəllütariq',
'GL' => 'Qrenlandiya',
'GM' => 'Qambiya',
'GN' => 'Qvineya',
'GP' => 'Qvadelupa',
'GQ' => 'Ekvatorial Qvineya',
'GR' => 'Yunanıstan',
- 'GS' => 'Cənubi Corciya və Cənubi Sendviç Adaları',
+ 'GS' => 'Cənubi Corciya və Cənubi Sendviç adaları',
'GT' => 'Qvatemala',
'GU' => 'Quam',
'GW' => 'Qvineya-Bisau',
- 'GY' => 'Qviyana',
+ 'GY' => 'Qayana',
'HK' => 'Honq Konq',
- 'HM' => 'Herd və Mak Donald Adaları',
+ 'HM' => 'Herd və Makdonald adaları',
'HN' => 'Honduras',
'HR' => 'Xorvatiya',
'HT' => 'Haiti',
'HU' => 'Macarıstan',
- 'IC' => 'Kanar Adaları',
+ 'IC' => 'Kanar adaları',
'ID' => 'İndoneziya',
'IE' => 'İrlandiya',
'IL' => 'İsrail',
- 'IM' => 'Men Adası',
+ 'IM' => 'Men adası',
'IN' => 'Hindistan',
- 'IO' => 'Britaniya Hind Okeanı Ərazisi',
+ 'IO' => 'Britaniyanın Hind Okeanı Ərazisi',
'IQ' => 'İraq',
'IR' => 'İran',
'IS' => 'İslandiya',
@@ -1039,18 +1076,18 @@ $countryNames = array(
'KG' => 'Qırğızıstan',
'KH' => 'Kamboca',
'KI' => 'Kiribati',
- 'KM' => 'Komor Adaları',
- 'KN' => 'San Kits və Nevis',
+ 'KM' => 'Komor adaları',
+ 'KN' => 'Sent-Kits və Nevis',
'KP' => 'Şimali Koreya',
'KR' => 'Cənubi Koreya',
'KW' => 'Küveyt',
- 'KY' => 'Kayman Adaları',
+ 'KY' => 'Kayman adaları',
'KZ' => 'Qazaxıstan',
'LA' => 'Laos',
'LB' => 'Livan',
- 'LC' => 'San Lüsiya',
+ 'LC' => 'Sent-Lusiya',
'LI' => 'Lixtenşteyn',
- 'LK' => 'Şri Lanka',
+ 'LK' => 'Şri-Lanka',
'LR' => 'Liberiya',
'LS' => 'Lesoto',
'LT' => 'Litva',
@@ -1061,21 +1098,21 @@ $countryNames = array(
'MC' => 'Monako',
'MD' => 'Moldova',
'ME' => 'Monteneqro',
- 'MF' => 'San Martin',
+ 'MF' => 'Sent Martin',
'MG' => 'Madaqaskar',
- 'MH' => 'Marşal Adaları',
+ 'MH' => 'Marşal adaları',
'MK' => 'Makedoniya',
'ML' => 'Mali',
'MM' => 'Myanma',
- 'MN' => 'Monqoliya',
+ 'MN' => 'Monqolustan',
'MO' => 'Makao',
- 'MP' => 'Şimali Mariana Adaları',
+ 'MP' => 'Şimali Marian adaları',
'MQ' => 'Martinik',
'MR' => 'Mavritaniya',
'MS' => 'Monserat',
'MT' => 'Malta',
'MU' => 'Mavriki',
- 'MV' => 'Maldiv Adaları',
+ 'MV' => 'Maldiv adaları',
'MW' => 'Malavi',
'MX' => 'Meksika',
'MY' => 'Malayziya',
@@ -1083,7 +1120,7 @@ $countryNames = array(
'NA' => 'Namibiya',
'NC' => 'Yeni Kaledoniya',
'NE' => 'Niger',
- 'NF' => 'Norfolk Adası',
+ 'NF' => 'Norfolk adası',
'NG' => 'Nigeriya',
'NI' => 'Nikaraqua',
'NL' => 'Niderland',
@@ -1095,77 +1132,78 @@ $countryNames = array(
'OM' => 'Oman',
'PA' => 'Panama',
'PE' => 'Peru',
- 'PF' => 'Fransız Polineziyası',
- 'PG' => 'Papua Yeni Qvineya',
+ 'PF' => 'Fransa Polineziyası',
+ 'PG' => 'Papua-Yeni Qvineya',
'PH' => 'Filippin',
'PK' => 'Pakistan',
'PL' => 'Polşa',
- 'PM' => 'San Pier və Mikelon',
- 'PN' => 'Pitkern Adaları',
+ 'PM' => 'Müqəddəs Pyer və Mikelon',
+ 'PN' => 'Pitkern adaları',
'PR' => 'Puerto Riko',
'PS' => 'Fələstin',
- 'PT' => 'Portuqal',
+ 'PT' => 'Portuqaliya',
'PW' => 'Palau',
'PY' => 'Paraqvay',
- 'QA' => 'Qatar',
+ 'QA' => 'Qətər',
'QO' => 'Uzaq Okeaniya',
- 'RE' => 'Reunion',
+ 'RE' => 'Reyunyon',
'RO' => 'Rumıniya',
'RS' => 'Serbiya',
'RU' => 'Rusiya',
'RW' => 'Ruanda',
'SA' => 'Səudiyyə Ərəbistanı',
- 'SB' => 'Solomon Adaları',
- 'SC' => 'Seyşel Adaları',
+ 'SB' => 'Solomon adaları',
+ 'SC' => 'Seyşel adaları',
'SD' => 'Sudan',
'SE' => 'İsveç',
'SG' => 'Sinqapur',
'SH' => 'Müqəddəs Yelena',
'SI' => 'Sloveniya',
- 'SJ' => 'Svalbard və Yan Mayen',
+ 'SJ' => 'Svalbard və Yan-Mayen',
'SK' => 'Slovakiya',
- 'SL' => 'Siera Leon',
- 'SM' => 'San Marino',
+ 'SL' => 'Syerra-Leone',
+ 'SM' => 'San-Marino',
'SN' => 'Seneqal',
'SO' => 'Somali',
'SR' => 'Surinam',
'SS' => 'Cənubi Sudan',
- 'ST' => 'Sao Tome və Prinsip',
+ 'ST' => 'San-Tome və Prinsipi',
'SV' => 'Salvador',
- 'SX' => 'Sint Maarten',
+ 'SX' => 'Sint-Marten',
'SY' => 'Suriya',
'SZ' => 'Svazilend',
'TA' => 'Tristan da Kunya',
- 'TC' => 'Turks və Kaikos Adaları',
+ 'TC' => 'Törks və Kaykos adaları',
'TD' => 'Çad',
- 'TF' => 'Fransa Cənub Əraziləri',
+ 'TF' => 'Fransanın Cənub Əraziləri',
'TG' => 'Toqo',
- 'TH' => 'Tayland',
+ 'TH' => 'Tailand',
'TJ' => 'Tacikistan',
'TK' => 'Tokelau',
'TL' => 'Şərqi Timor',
'TM' => 'Türkmənistan',
'TN' => 'Tunis',
'TO' => 'Tonqa',
- 'TR' => 'Türkiya',
+ 'TR' => 'Türkiyə',
'TT' => 'Trinidad və Tobaqo',
'TV' => 'Tuvalu',
'TW' => 'Tayvan',
'TZ' => 'Tanzaniya',
'UA' => 'Ukrayna',
'UG' => 'Uqanda',
- 'UM' => 'Birləşmiş Ştatlar Uzaq Adalar',
- 'US' => 'A.B.Ş.',
+ 'UM' => 'ABŞ-a bağlı kiçik adacıqlar',
+ 'UN' => 'BMT',
+ 'US' => 'ABŞ',
'UY' => 'Uruqvay',
'UZ' => 'Özbəkistan',
'VA' => 'Vatikan',
- 'VC' => 'San Vinsent və Qrenada',
+ 'VC' => 'Sent-Vinsent və Qrenadinlər',
'VE' => 'Venesuela',
- 'VG' => 'Britaniya Vircin Adaları',
- 'VI' => 'ABŞ Vircin Adaları',
+ 'VG' => 'Britaniyanın Virgin adaları',
+ 'VI' => 'ABŞ Virgin adaları',
'VN' => 'Vyetnam',
'VU' => 'Vanuatu',
- 'WF' => 'Uolis və Futuna',
+ 'WF' => 'Uollis və Futuna',
'WS' => 'Samoa',
'XK' => 'Kosovo',
'YE' => 'Yəmən',
@@ -1173,9 +1211,11 @@ $countryNames = array(
'ZA' => 'Cənub Afrika',
'ZM' => 'Zambiya',
'ZW' => 'Zimbabve',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-one' => '{0} əsr',
+ 'century-other' => '{0} əsr',
'day-future-one' => '{0} gün ərzində',
'day-future-other' => '{0} gün ərzində',
'day-narrow-future-one' => '{0} gün ərzində',
@@ -1190,6 +1230,18 @@ $timeUnits = array(
'day-short-future-other' => '{0} gün ərzində',
'day-short-past-one' => '{0} gün öncə',
'day-short-past-other' => '{0} gün öncə',
+ 'fri-future-one' => '{0} cümə ərzində',
+ 'fri-future-other' => '{0} cümə ərzində',
+ 'fri-narrow-future-one' => '{0} cümə ərzində',
+ 'fri-narrow-future-other' => '{0} cümə ərzində',
+ 'fri-narrow-past-one' => '{0} cümə öncə',
+ 'fri-narrow-past-other' => '{0} cümə öncə',
+ 'fri-past-one' => '{0} cümə öncə',
+ 'fri-past-other' => '{0} cümə öncə',
+ 'fri-short-future-one' => '{0} cümə ərzində',
+ 'fri-short-future-other' => '{0} cümə ərzində',
+ 'fri-short-past-one' => '{0} cümə öncə',
+ 'fri-short-past-other' => '{0} cümə öncə',
'hour-future-one' => '{0} saat ərzində',
'hour-future-other' => '{0} saat ərzində',
'hour-narrow-future-one' => '{0} saat ərzində',
@@ -1222,6 +1274,18 @@ $timeUnits = array(
'minute-short-future-other' => '{0} dəqiqə ərzində',
'minute-short-past-one' => '{0} dəqiqə öncə',
'minute-short-past-other' => '{0} dəqiqə öncə',
+ 'mon-future-one' => '{0} bazar ertəsi ərzində',
+ 'mon-future-other' => '{0} bazar ertəsi əzrində',
+ 'mon-narrow-future-one' => '{0} bazar ertəsi ərzində',
+ 'mon-narrow-future-other' => '{0} bazar ertəsi ərzində',
+ 'mon-narrow-past-one' => '{0} bazar ertəsi öncə',
+ 'mon-narrow-past-other' => '{0} bazar ertəsi öncə',
+ 'mon-past-one' => '{0} bazar ertəsi öncə',
+ 'mon-past-other' => '{0} bazar ertəsi öncə',
+ 'mon-short-future-one' => '{0} bazar ertəsi ərzində',
+ 'mon-short-future-other' => '{0} bazar ertəsi ərzində',
+ 'mon-short-past-one' => '{0} bazar ertəsi öncə',
+ 'mon-short-past-other' => '{0} bazar ertəsi öncə',
'month-future-one' => '{0} ay ərzində',
'month-future-other' => '{0} ay ərzində',
'month-narrow-future-one' => '{0} ay ərzində',
@@ -1250,6 +1314,18 @@ $timeUnits = array(
'quarter-short-future-other' => '{0} rüb ərzində',
'quarter-short-past-one' => '{0} rüb öncə',
'quarter-short-past-other' => '{0} rüb öncə',
+ 'sat-future-one' => '{0} şənbə ərzində',
+ 'sat-future-other' => '{0} şənbə ərzində',
+ 'sat-narrow-future-one' => '{0} şənbə ərzində',
+ 'sat-narrow-future-other' => '{0} şənbə ərzində',
+ 'sat-narrow-past-one' => '{0} şənbə öncə',
+ 'sat-narrow-past-other' => '{0} şənbə öncə',
+ 'sat-past-one' => '{0} şənbə öncə',
+ 'sat-past-other' => '{0} şənbə öncə',
+ 'sat-short-future-one' => '{0} şənbə ərzində',
+ 'sat-short-future-other' => '{0} şənbə ərzində',
+ 'sat-short-past-one' => '{0} şənbə öncə',
+ 'sat-short-past-other' => '{0} şənbə öncə',
'second-future-one' => '{0} saniyə ərzində',
'second-future-other' => '{0} saniyə ərzində',
'second-narrow-future-one' => '{0} saniyə ərzində',
@@ -1264,6 +1340,54 @@ $timeUnits = array(
'second-short-future-other' => '{0} saniyə ərzində',
'second-short-past-one' => '{0} saniyə öncə',
'second-short-past-other' => '{0} saniyə öncə',
+ 'sun-future-one' => '{0} bazar ərzində',
+ 'sun-future-other' => '{0} bazar ərzində',
+ 'sun-narrow-future-one' => '{0} bazar ərzində',
+ 'sun-narrow-future-other' => '{0} bazar ərzində',
+ 'sun-narrow-past-one' => '{0} bazar öncə',
+ 'sun-narrow-past-other' => '{0} bazar öncə',
+ 'sun-past-one' => '{0} bazar öncə',
+ 'sun-past-other' => '{0} bazar öncə',
+ 'sun-short-future-one' => '{0} bazar ərzində',
+ 'sun-short-future-other' => '{0} bazar ərzində',
+ 'sun-short-past-one' => '{0} bazar öncə',
+ 'sun-short-past-other' => '{0} bazar öncə',
+ 'thu-future-one' => '{0} cümə axşamı ərzində',
+ 'thu-future-other' => '{0} cümə axşamı ərzində',
+ 'thu-narrow-future-one' => '{0} cümə axşamı ərzində',
+ 'thu-narrow-future-other' => '{0} cümə axşamı ərzində',
+ 'thu-narrow-past-one' => '{0} cümə axşamı öncə',
+ 'thu-narrow-past-other' => '{0} cümə axşamı öncə',
+ 'thu-past-one' => '{0} cümə axşamı öncə',
+ 'thu-past-other' => '{0} cümə axşamı öncə',
+ 'thu-short-future-one' => '{0} cümə axşamı ərzində',
+ 'thu-short-future-other' => '{0} cümə axşamı ərzində',
+ 'thu-short-past-one' => '{0} cümə axşamı öncə',
+ 'thu-short-past-other' => '{0} cümə axşamı öncə',
+ 'tue-future-one' => '{0} çərşənbə axşamı ərzində',
+ 'tue-future-other' => '{0} çərşənbə axşamı ərzində',
+ 'tue-narrow-future-one' => '{0} çərşənbə axşamı ərzində',
+ 'tue-narrow-future-other' => '{0} çərşənbə axşamı ərzində',
+ 'tue-narrow-past-one' => '{0} çərşənbə axşamı öncə',
+ 'tue-narrow-past-other' => '{0} çərşənbə axşamı öncə',
+ 'tue-past-one' => '{0} çərşənbə axşamı öncə',
+ 'tue-past-other' => '{0} çərşənbə axşamı öncə',
+ 'tue-short-future-one' => '{0} çərşənbə axşamı ərzində',
+ 'tue-short-future-other' => '{0} çərşənbə axşamı ərzində',
+ 'tue-short-past-one' => '{0} çərşənbə axşamı öncə',
+ 'tue-short-past-other' => '{0} çərşənbə axşamı öncə',
+ 'wed-future-one' => '{0} çərşənbə ərzində',
+ 'wed-future-other' => '{0} çərşənbə ərzində',
+ 'wed-narrow-future-one' => '{0} çərşənbə ərzində',
+ 'wed-narrow-future-other' => '{0} çərşənbə ərzində',
+ 'wed-narrow-past-one' => '{0} çərşənbə öncə',
+ 'wed-narrow-past-other' => '{0} çərşənbə öncə',
+ 'wed-past-one' => '{0} çərşənbə öncə',
+ 'wed-past-other' => '{0} çərşənbə öncə',
+ 'wed-short-future-one' => '{0} çərşənbə ərzində',
+ 'wed-short-future-other' => '{0} çərşənbə ərzində',
+ 'wed-short-past-one' => '{0} çərşənbə öncə',
+ 'wed-short-past-other' => '{0} çərşənbə öncə',
'week-future-one' => '{0} həftə ərzində',
'week-future-other' => '{0} həftə ərzində',
'week-narrow-future-one' => '{0} həftə ərzində',
@@ -1292,4 +1416,4 @@ $timeUnits = array(
'year-short-future-other' => '{0} il ərzində',
'year-short-past-one' => '{0} il öncə',
'year-short-past-other' => '{0} il öncə',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesBe.php b/MLEB/cldr/CldrNames/CldrNamesBe.php
index fa130686..31b5fc45 100644
--- a/MLEB/cldr/CldrNames/CldrNamesBe.php
+++ b/MLEB/cldr/CldrNames/CldrNamesBe.php
@@ -1,191 +1,739 @@
<?php
-$languageNames = array(
+$languageNames = [
+ 'aa' => 'афарская',
'ab' => 'абхазская',
+ 'ace' => 'ачэх',
+ 'ada' => 'адангмэ',
'ady' => 'адыгейская',
'af' => 'афрыкаанс',
- 'akk' => 'акадзкая',
+ 'agq' => 'агем',
+ 'ain' => 'айнская',
+ 'ak' => 'акан',
+ 'akk' => 'акадская',
'ale' => 'алеуцкая',
+ 'alt' => 'паўднёваалтайская',
'am' => 'амхарская',
'an' => 'арагонская',
'ang' => 'стараанглійская',
+ 'anp' => 'ангіка',
'ar' => 'арабская',
'arc' => 'арамейская',
+ 'arn' => 'мапудунгун',
+ 'arp' => 'арапаха',
'as' => 'асамская',
+ 'asa' => 'асу',
'ast' => 'астурыйская',
'av' => 'аварская',
+ 'awa' => 'авадхі',
'ay' => 'аймара',
'az' => 'азербайджанская',
'ba' => 'башкірская',
+ 'ban' => 'балійская',
+ 'bas' => 'басаа',
'be' => 'беларуская',
+ 'bem' => 'бемба',
+ 'bez' => 'бена',
'bg' => 'балгарская',
+ 'bgn' => 'заходняя белуджская',
+ 'bho' => 'бхаджпуры',
+ 'bi' => 'біслама',
+ 'bin' => 'эда',
+ 'bla' => 'блэкфут',
+ 'bm' => 'бамбара',
'bn' => 'бенгальская',
+ 'bo' => 'тыбецкая',
'br' => 'брэтонская',
+ 'brx' => 'бода',
'bs' => 'баснійская',
'bua' => 'бурацкая',
- 'ca' => 'каталонская',
+ 'bug' => 'бугіс',
+ 'byn' => 'білен',
+ 'ca' => 'каталанская',
'ce' => 'чачэнская',
+ 'ceb' => 'себуана',
+ 'cgg' => 'чыга',
+ 'ch' => 'чамора',
'chb' => 'чыбча',
+ 'chk' => 'чуук',
+ 'chm' => 'мары',
+ 'cho' => 'чокта',
+ 'chr' => 'чэрокі',
+ 'chy' => 'шэйен',
+ 'ckb' => 'цэнтральнакурдская',
+ 'co' => 'карсіканская',
'cop' => 'копцкая',
+ 'crs' => 'сэсэльва',
'cs' => 'чэшская',
+ 'cu' => 'царкоўнаславянская',
'cv' => 'чувашская',
'cy' => 'валійская',
'da' => 'дацкая',
+ 'dak' => 'дакота',
+ 'dar' => 'даргінская',
+ 'dav' => 'таіта',
'de' => 'нямецкая',
- 'de-at' => 'нямецкая (аўстр.)',
- 'de-ch' => 'нямецкая (швейц.)',
- 'egy' => 'стараэгіпецкая',
- 'el' => 'грэцкая',
+ 'dgr' => 'догрыб',
+ 'dje' => 'зарма',
+ 'dsb' => 'ніжнялужыцкая',
+ 'dua' => 'дуала',
+ 'dv' => 'мальдыўская',
+ 'dyo' => 'джола-фоньі',
+ 'dz' => 'дзонг-кэ',
+ 'dzg' => 'дазага',
+ 'ebu' => 'эмбу',
+ 'ee' => 'эве',
+ 'efi' => 'эфік',
+ 'egy' => 'старажытнаегіпецкая',
+ 'eka' => 'экаджук',
+ 'el' => 'грэчаская',
'en' => 'англійская',
- 'en-au' => 'англійская (аўстрал.)',
- 'en-ca' => 'англійская (канад.)',
- 'en-us' => 'англійская (ЗША)',
'eo' => 'эсперанта',
'es' => 'іспанская',
- 'es-419' => 'іспанская (лацінаамер.)',
'et' => 'эстонская',
'eu' => 'баскская',
+ 'ewo' => 'эвонда',
'fa' => 'фарсі',
+ 'ff' => 'фула',
'fi' => 'фінская',
- 'fil' => 'тагальская',
+ 'fil' => 'філіпінская',
+ 'fj' => 'фіджыйская',
'fo' => 'фарэрская',
+ 'fon' => 'фон',
'fr' => 'французская',
- 'fr-ca' => 'французская (канад.)',
- 'fr-ch' => 'французская (швейц.)',
'fro' => 'старафранцузская',
- 'fy' => 'фрызская',
+ 'fur' => 'фрыульская',
+ 'fy' => 'заходняя фрызская',
'ga' => 'ірландская',
+ 'gaa' => 'га',
+ 'gag' => 'гагаузская',
'gd' => 'шатландская гэльская',
+ 'gez' => 'геэз',
+ 'gil' => 'кірыбаці',
'gl' => 'галісійская',
'gn' => 'гуарані',
- 'grc' => 'старагрэцкая',
- 'gu' => 'гуяраці',
+ 'gor' => 'гарантала',
+ 'grc' => 'старажытнагрэчаская',
+ 'gsw' => 'швейцарская нямецкая',
+ 'gu' => 'гуджараці',
+ 'guz' => 'гусіі',
+ 'gv' => 'мэнская',
+ 'gwi' => 'гуіч’ін',
+ 'ha' => 'хауса',
+ 'haw' => 'гавайская',
'he' => 'іўрыт',
'hi' => 'хіндзі',
+ 'hil' => 'хілігайнон',
+ 'hmn' => 'хмонг',
'hr' => 'харвацкая',
+ 'hsb' => 'верхнялужыцкая',
+ 'ht' => 'гаіцянская крэольская',
'hu' => 'венгерская',
+ 'hup' => 'хупа',
'hy' => 'армянская',
+ 'hz' => 'герэра',
'ia' => 'інтэрлінгва',
+ 'iba' => 'ібан',
+ 'ibb' => 'ібібія',
'id' => 'інданезійская',
- 'ie' => 'інтэрлінгве',
+ 'ie' => 'інтэрлінгвэ',
+ 'ig' => 'ігба',
+ 'ii' => 'сычуаньская йі',
+ 'ilo' => 'ілакана',
+ 'inh' => 'інгушская',
+ 'io' => 'іда',
'is' => 'ісландская',
'it' => 'італьянская',
+ 'iu' => 'інуктытут',
'ja' => 'японская',
+ 'jbo' => 'ложбан',
+ 'jgo' => 'нгомба',
+ 'jmc' => 'мачамбэ',
'jv' => 'яванская',
'ka' => 'грузінская',
+ 'kab' => 'кабільская',
+ 'kac' => 'качынская',
+ 'kaj' => 'дджу',
+ 'kam' => 'камба',
+ 'kbd' => 'кабардзінская',
+ 'kcg' => 'т’яп',
+ 'kde' => 'макондэ',
+ 'kea' => 'кабувердыяну',
+ 'kfo' => 'кора',
+ 'kha' => 'кхасі',
+ 'khq' => 'койра чыіні',
+ 'ki' => 'кікуйю',
+ 'kj' => 'куаньяма',
'kk' => 'казахская',
- 'kn' => 'каннада',
+ 'kkj' => 'како',
+ 'kl' => 'грэнландская',
+ 'kln' => 'календжын',
+ 'km' => 'кхмерская',
+ 'kmb' => 'кімбунду',
+ 'kn' => 'канада',
'ko' => 'карэйская',
+ 'koi' => 'комі-пярмяцкая',
+ 'kok' => 'канкані',
+ 'kpe' => 'кпеле',
+ 'kr' => 'кануры',
+ 'krc' => 'карачай-балкарская',
+ 'krl' => 'карэльская',
+ 'kru' => 'курух',
+ 'ks' => 'кашмірская',
+ 'ksb' => 'шамбала',
+ 'ksf' => 'бафія',
+ 'ksh' => 'кёльнская',
'ku' => 'курдская',
+ 'kum' => 'кумыцкая',
+ 'kv' => 'комі',
+ 'kw' => 'корнская',
+ 'ky' => 'кіргізская',
'la' => 'лацінская',
+ 'lad' => 'ладына',
+ 'lag' => 'лангі',
+ 'lb' => 'люксембургская',
+ 'lez' => 'лезгінская',
+ 'lg' => 'ганда',
+ 'li' => 'лімбургская',
+ 'lkt' => 'лакота',
'ln' => 'лінгала',
'lo' => 'лаоская',
'lol' => 'монга',
+ 'loz' => 'лозі',
+ 'lrc' => 'паўночная луры',
'lt' => 'літоўская',
+ 'lu' => 'луба-катанга',
+ 'lua' => 'луба-касаі',
+ 'lun' => 'лунда',
'luo' => 'луо',
+ 'lus' => 'мізо',
+ 'luy' => 'луйя',
'lv' => 'латышская',
- 'man' => 'мандынга',
- 'mas' => 'масаі',
+ 'mad' => 'мадурская',
+ 'mag' => 'магахі',
+ 'mai' => 'майтхілі',
+ 'mak' => 'макасар',
+ 'man' => 'мандынг',
+ 'mas' => 'маасай',
+ 'mdf' => 'макшанская',
'men' => 'мендэ',
- 'mg' => 'мальгашская',
+ 'mer' => 'меру',
+ 'mfe' => 'марысьен',
+ 'mg' => 'малагасійская',
+ 'mgh' => 'макуўа-меета',
+ 'mgo' => 'мета',
+ 'mh' => 'маршальская',
+ 'mi' => 'маары',
+ 'mic' => 'мікмак',
+ 'min' => 'мінангкабау',
'mk' => 'македонская',
- 'ml' => 'малаяламская',
+ 'ml' => 'малаялам',
'mn' => 'мангольская',
+ 'mni' => 'мейтэй',
+ 'moh' => 'мохак',
'mos' => 'мосі',
'mr' => 'маратхі',
'ms' => 'малайская',
'mt' => 'мальтыйская',
- 'nb' => 'нарвэская букмал',
+ 'mua' => 'мунданг',
+ 'mul' => 'некалькі моў',
+ 'mus' => 'мускогі',
+ 'mwl' => 'мірандыйская',
+ 'my' => 'бірманская',
+ 'myv' => 'эрзянская',
+ 'mzn' => 'мазандэранская',
+ 'na' => 'науру',
+ 'nap' => 'неапалітанская',
+ 'naq' => 'нама',
+ 'nb' => 'нарвежская (букмол)',
+ 'nd' => 'паўночная ндэбеле',
+ 'nds' => 'ніжненямецкая',
+ 'nds-nl' => 'ніжнесаксонская',
'ne' => 'непальская',
- 'nl' => 'галандская',
- 'nl-be' => 'фламандская',
- 'nn' => 'нарвежская (нюнорск)',
+ 'new' => 'неўары',
+ 'ng' => 'ндонга',
+ 'nia' => 'ніас',
+ 'niu' => 'ніўэ',
+ 'nl' => 'нідэрландская',
+ 'nmg' => 'нгумба',
+ 'nn' => 'нарвежская (нюношк)',
+ 'nnh' => 'нг’ембон',
'no' => 'нарвежская',
'nog' => 'нагайская',
'non' => 'старанарвежская',
- 'oc' => 'правансальская',
- 'oj' => 'аджыбве',
+ 'nqo' => 'нко',
+ 'nr' => 'паўднёвая ндэбеле',
+ 'nso' => 'паўночная сота',
+ 'nus' => 'нуэр',
+ 'nv' => 'наваха',
+ 'ny' => 'ньянджа',
+ 'nyn' => 'ньянколе',
+ 'oc' => 'аксітанская',
+ 'oj' => 'аджыбва',
+ 'om' => 'арома',
'or' => 'орыя',
'os' => 'асецінская',
'pa' => 'панджабі',
+ 'pag' => 'пангасінан',
+ 'pam' => 'пампанга',
+ 'pap' => 'пап’яменту',
+ 'pau' => 'палау',
+ 'pcm' => 'нігерыйскі піджын',
'peo' => 'стараперсідская',
'phn' => 'фінікійская',
'pl' => 'польская',
+ 'prg' => 'пруская',
'pro' => 'стараправансальская',
'ps' => 'пушту',
'pt' => 'партугальская',
- 'pt-br' => 'партугальская (бразіл.)',
+ 'pt-br' => 'бразільская партугальская',
+ 'pt-pt' => 'еўрапейская партугальская',
'qu' => 'кечуа',
+ 'quc' => 'кічэ',
'raj' => 'раджастханская',
- 'rm' => 'рэта-раманская',
+ 'rap' => 'рапануі',
+ 'rar' => 'раратонг',
+ 'rm' => 'рэтараманская',
+ 'rn' => 'рундзі',
'ro' => 'румынская',
'ro-md' => 'малдаўская',
+ 'rof' => 'ромба',
'ru' => 'руская',
+ 'rup' => 'арумунская',
+ 'rw' => 'руанда',
+ 'rwk' => 'руа',
'sa' => 'санскрыт',
+ 'sad' => 'сандаўэ',
'sah' => 'якуцкая',
+ 'saq' => 'самбуру',
+ 'sat' => 'санталі',
+ 'sba' => 'нгамбай',
+ 'sbp' => 'сангу',
+ 'sc' => 'сардзінская',
+ 'scn' => 'сіцылійская',
+ 'sco' => 'шатландская',
'sd' => 'сіндхі',
+ 'sdh' => 'паўднёвакурдская',
+ 'se' => 'паўночнасаамская',
+ 'seh' => 'сена',
+ 'ses' => 'кайрабора сэні',
+ 'sg' => 'санга',
'sga' => 'стараірландская',
- 'sh' => 'сербска-харвацкая',
+ 'sh' => 'сербскахарвацкая',
+ 'shi' => 'ташэльхіт',
+ 'shn' => 'шан',
'si' => 'сінгальская',
'sk' => 'славацкая',
'sl' => 'славенская',
- 'so' => 'самалійская',
+ 'sm' => 'самоа',
+ 'sma' => 'паўднёвасаамская',
+ 'smj' => 'луле-саамская',
+ 'smn' => 'інары-саамская',
+ 'sms' => 'колта-саамская',
+ 'sn' => 'шона',
+ 'snk' => 'санінке',
+ 'so' => 'самалі',
'sq' => 'албанская',
'sr' => 'сербская',
- 'su' => 'суданская',
+ 'srn' => 'сранан-тонга',
+ 'ss' => 'суаці',
+ 'ssy' => 'саха',
+ 'st' => 'сесута',
+ 'su' => 'сунда',
+ 'suk' => 'сукума',
'sux' => 'шумерская',
'sv' => 'шведская',
'sw' => 'суахілі',
+ 'sw-cd' => 'кангалезская суахілі',
+ 'swb' => 'каморская',
+ 'syr' => 'сірыйская',
'ta' => 'тамільская',
'te' => 'тэлугу',
+ 'tem' => 'тэмнэ',
+ 'teo' => 'тэсо',
+ 'tet' => 'тэтум',
'tg' => 'таджыкская',
'th' => 'тайская',
'ti' => 'тыгрынья',
+ 'tig' => 'тыгрэ',
'tk' => 'туркменская',
- 'tlh' => 'клінгон',
+ 'tlh' => 'клінган',
+ 'tn' => 'тсвана',
+ 'to' => 'танганская',
+ 'tpi' => 'ток-пісін',
'tr' => 'турэцкая',
+ 'trv' => 'тарока',
+ 'ts' => 'тсонга',
'tt' => 'татарская',
+ 'tum' => 'тумбука',
+ 'tvl' => 'тувалу',
+ 'twq' => 'тасаўак',
+ 'ty' => 'таіці',
'tyv' => 'тувінская',
+ 'tzm' => 'цэнтральнаатлаская тамазіхт',
+ 'udm' => 'удмурцкая',
'ug' => 'уйгурская',
'uk' => 'украінская',
+ 'umb' => 'умбунду',
'und' => 'невядомая мова',
'ur' => 'урду',
'uz' => 'узбекская',
+ 'vai' => 'ваі',
+ 've' => 'венда',
'vi' => 'в’етнамская',
'vo' => 'валапюк',
- 'xh' => 'хоса',
+ 'vun' => 'вунджо',
+ 'wa' => 'валонская',
+ 'wae' => 'вальшская',
+ 'wal' => 'волайта',
+ 'war' => 'варай',
+ 'wbp' => 'варлпіры',
+ 'wo' => 'валоф',
+ 'xal' => 'калмыцкая',
+ 'xh' => 'коса',
+ 'xog' => 'сога',
+ 'yav' => 'янгбэн',
+ 'ybb' => 'йемба',
'yi' => 'ідыш',
- 'zap' => 'сапатэкаў',
+ 'yo' => 'ёруба',
+ 'yue' => 'кантонскі дыялект кітайскай',
+ 'zap' => 'сапатэк',
+ 'zgh' => 'стандартная мараканская тамазіхт',
'zh' => 'кітайская',
- 'zh-hans' => 'спрошчаная кітайская',
- 'zh-hant' => 'традыцыйная кітайская',
+ 'zh-hans' => 'кітайская (спрошчаныя іерогліфы)',
+ 'zh-hant' => 'кітайская (традыцыйныя іерогліфы)',
'zu' => 'зулу',
-);
+ 'zun' => 'зуні',
+ 'zxx' => 'няма моўнага матэрыялу',
+ 'zza' => 'зазакі',
+];
-$currencyNames = array(
- 'AUD' => 'аўстралійскі даляр',
+$currencyNames = [
+ 'AED' => 'дырхем ААЭ',
+ 'AFN' => 'афганскі афгані',
+ 'ALL' => 'албанскі лек',
+ 'AMD' => 'армянскі драм',
+ 'ANG' => 'нідэрландскі антыльскі гульдэн',
+ 'AOA' => 'ангольская кванза',
+ 'ARS' => 'аргенцінскае песа',
+ 'AUD' => 'аўстралійскі долар',
+ 'AWG' => 'арубанскі фларын',
+ 'AZN' => 'азербайджанскі манат',
+ 'BAM' => 'канверсоўная марка Босніі і Герцагавіны',
+ 'BBD' => 'барбадоскі долар',
+ 'BDT' => 'бангладэшская така',
+ 'BGN' => 'балгарскі леў',
+ 'BHD' => 'бахрэйнскі дынар',
+ 'BIF' => 'бурундзійскі франк',
+ 'BMD' => 'бермудскі долар',
+ 'BND' => 'брунейскі долар',
+ 'BOB' => 'балівіяна',
'BRL' => 'бразільскі рэал',
- 'BYR' => 'беларускі рубель',
+ 'BSD' => 'багамскі долар',
+ 'BTN' => 'бутанскі нгултрум',
+ 'BWP' => 'батсванская пула',
+ 'BYN' => 'беларускі рубель',
+ 'BYR' => 'беларускі рубель (2000–2016)',
+ 'BZD' => 'белізскі долар',
+ 'CAD' => 'канадскі долар',
+ 'CDF' => 'кангалезскі франк',
+ 'CHF' => 'швейцарскі франк',
+ 'CLP' => 'чылійскае песа',
+ 'CNH' => 'афшорны кітайскі юань',
'CNY' => 'кітайскі юань',
+ 'COP' => 'калумбійскае песа',
+ 'CRC' => 'коста-рыканскі калон',
+ 'CUC' => 'кубінскае канверсоўнае песа',
+ 'CUP' => 'кубінскае песа',
+ 'CVE' => 'эскуда Каба-Вердэ',
+ 'CZK' => 'чэшская крона',
+ 'DJF' => 'джыбуційскі франк',
+ 'DKK' => 'дацкая крона',
+ 'DOP' => 'дамініканскае песа',
+ 'DZD' => 'алжырскі дынар',
+ 'EGP' => 'егіпецкі фунт',
'ERN' => 'эрытрэйская накфа',
+ 'ETB' => 'эфіопскі быр',
'EUR' => 'еўра',
- 'GBP' => 'англійскі фунт',
+ 'FJD' => 'фіджыйскі долар',
+ 'FKP' => 'фунт Фалклендскіх астравоў',
+ 'GBP' => 'брытанскі фунт стэрлінгаў',
+ 'GEL' => 'грузінскі лары',
+ 'GHS' => 'ганскі седзі',
+ 'GIP' => 'гібралтарскі фунт',
+ 'GMD' => 'гамбійскі даласі',
+ 'GNF' => 'гвінейскі франк',
+ 'GTQ' => 'гватэмальскі кетсаль',
+ 'GYD' => 'гаянскі долар',
+ 'HKD' => 'ганконгскі долар',
+ 'HNL' => 'гандураская лемпіра',
+ 'HRK' => 'харвацкая куна',
+ 'HTG' => 'гаіцянскі гурд',
+ 'HUF' => 'венгерскі форынт',
+ 'IDR' => 'інданезійская рупія',
+ 'ILS' => 'новы ізраільскі шэкель',
'INR' => 'індыйская рупія',
+ 'IQD' => 'іракскі дынар',
+ 'IRR' => 'іранскі рыал',
+ 'ISK' => 'ісландская крона',
+ 'JMD' => 'ямайскі долар',
+ 'JOD' => 'іарданскі дынар',
'JPY' => 'японская іена',
- 'NOK' => 'нарвэская крона',
- 'RUB' => 'рускі рубель',
+ 'KES' => 'кенійскі шылінг',
+ 'KGS' => 'кіргізскі сом',
+ 'KHR' => 'камбаджыйскі рыэль',
+ 'KMF' => 'каморскі франк',
+ 'KPW' => 'паўночнакарэйская вона',
+ 'KRW' => 'паўднёвакарэйская вона',
+ 'KWD' => 'кувейцкі дынар',
+ 'KYD' => 'долар Кайманавых астравоў',
+ 'KZT' => 'казахстанскі тэнгэ',
+ 'LAK' => 'лаоскі кіп',
+ 'LBP' => 'ліванскі фунт',
+ 'LKR' => 'шры-ланкійская рупія',
+ 'LRD' => 'ліберыйскі долар',
+ 'LYD' => 'лівійскі дынар',
+ 'MAD' => 'мараканскі дырхам',
+ 'MDL' => 'малдаўскі лей',
+ 'MGA' => 'малагасійскі арыяры',
+ 'MKD' => 'македонскі дэнар',
+ 'MMK' => 'м’янманскі к’ят',
+ 'MNT' => 'мангольскі тугрык',
+ 'MOP' => 'патака Макаа',
+ 'MRO' => 'маўрытанская ўгія (1973–2017)',
+ 'MRU' => 'маўрытанская ўгія',
+ 'MUR' => 'маўрыкійская рупія',
+ 'MVR' => 'мальдыўская руфія',
+ 'MWK' => 'малавійская квача',
+ 'MXN' => 'мексіканскае песа',
+ 'MYR' => 'малайзійскі рынгіт',
+ 'MZN' => 'мазамбікскі метыкал',
+ 'NAD' => 'намібійскі долар',
+ 'NGN' => 'нігерыйская найра',
+ 'NIO' => 'нікарагуанская кордаба',
+ 'NOK' => 'нарвежская крона',
+ 'NPR' => 'непальская рупія',
+ 'NZD' => 'новазеландскі долар',
+ 'OMR' => 'аманскі рыал',
+ 'PAB' => 'панамскае бальбоа',
+ 'PEN' => 'перуанскі соль',
+ 'PGK' => 'кіна',
+ 'PHP' => 'філіпінскае песа',
+ 'PKR' => 'пакістанская рупія',
+ 'PLN' => 'польскі злоты',
+ 'PYG' => 'парагвайскі гуарані',
+ 'QAR' => 'катарскі рыал',
+ 'RON' => 'румынскі лей',
+ 'RSD' => 'сербскі дынар',
+ 'RUB' => 'расійскі рубель',
+ 'RWF' => 'руандыйскі франк',
+ 'SAR' => 'саудаўскі рыял',
+ 'SBD' => 'долар Саламонавых астравоў',
+ 'SCR' => 'сейшэльская рупія',
+ 'SDG' => 'суданскі фунт',
+ 'SEK' => 'шведская крона',
+ 'SGD' => 'сінгапурскі долар',
+ 'SHP' => 'фунт Святой Алены',
+ 'SLL' => 'леонэ',
+ 'SOS' => 'самалійскі шылінг',
+ 'SRD' => 'сурынамскі долар',
+ 'SSP' => 'паўднёвасуданскі фунт',
+ 'STD' => 'добра Сан-Тамэ і Прынсіпі (1977–2017)',
+ 'STN' => 'добра Сан-Тамэ і Прынсіпі',
+ 'SYP' => 'сірыйскі фунт',
+ 'SZL' => 'свазілендскі лілангені',
+ 'THB' => 'тайскі бат',
+ 'TJS' => 'таджыкскі самані',
+ 'TMT' => 'туркменскі манат',
+ 'TND' => 'туніскі дынар',
+ 'TOP' => 'танганская паанга',
+ 'TRY' => 'турэцкая ліра',
+ 'TTD' => 'долар Трынідада і Табага',
+ 'TWD' => 'новы тайваньскі долар',
+ 'TZS' => 'танзанійскі шылінг',
+ 'UAH' => 'украінская грыўня',
+ 'UGX' => 'угандыйскі шылінг',
'USD' => 'долар ЗША',
- 'XXX' => 'невядомая або недапушчальная валюта',
-);
+ 'UYU' => 'уругвайскае песа',
+ 'UZS' => 'узбекскі сум',
+ 'VEF' => 'венесуальскі балівар (2008–2018)',
+ 'VES' => 'венесуальскі балівар',
+ 'VND' => 'в’етнамскі донг',
+ 'VUV' => 'вату',
+ 'WST' => 'самаанская тала',
+ 'XAF' => 'цэнтральнаафрыканскі франк КФА',
+ 'XCD' => 'усходнекарыбскі долар',
+ 'XOF' => 'заходнеафрыканскі франк КФА',
+ 'XPF' => 'французскі ціхаакіянскі франк',
+ 'XXX' => 'невядомая валюта',
+ 'YER' => 'еменскі рыал',
+ 'ZAR' => 'паўднёваафрыканскі ранд',
+ 'ZMW' => 'замбійская квача',
+];
-$currencySymbols = array(
- 'BYR' => 'р.',
+$currencySymbols = [
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => 'A$',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => 'BRL',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYN' => 'Br',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CAD',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNH' => 'CNH',
+ 'CNY' => 'CN¥',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GBP' => '£',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
'JPY' => '¥',
- 'RUB' => 'рас. руб.',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MX$',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZD',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => '₽',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'STN' => 'STN',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => 'THB',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
'USD' => '$',
-);
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VES' => 'VES',
+ 'VND' => '₫',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'EC$',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+];
-$countryNames = array(
+$countryNames = [
+ 'AC' => 'Востраў Узнясення',
'AD' => 'Андора',
'AE' => 'Аб’яднаныя Арабскія Эміраты',
'AF' => 'Афганістан',
@@ -193,7 +741,6 @@ $countryNames = array(
'AI' => 'Ангілья',
'AL' => 'Албанія',
'AM' => 'Арменія',
- 'AN' => 'Нідэрландскія Антылы',
'AO' => 'Ангола',
'AQ' => 'Антарктыка',
'AR' => 'Аргенціна',
@@ -216,18 +763,19 @@ $countryNames = array(
'BM' => 'Бермудскія астравы',
'BN' => 'Бруней',
'BO' => 'Балівія',
+ 'BQ' => 'Карыбскія Нідэрланды',
'BR' => 'Бразілія',
- 'BS' => 'Багамы',
+ 'BS' => 'Багамскія астравы',
'BT' => 'Бутан',
- 'BV' => 'Бувэ востраў',
+ 'BV' => 'Востраў Бувэ',
'BW' => 'Батсвана',
'BY' => 'Беларусь',
'BZ' => 'Беліз',
'CA' => 'Канада',
- 'CC' => 'Какосавыя астравы',
- 'CD' => 'Конга, Дэмакратычная Рэспубліка',
+ 'CC' => 'Какосавыя (Кілінг) астравы',
+ 'CD' => 'Конга (Кіншаса)',
'CF' => 'Цэнтральна-Афрыканская Рэспубліка',
- 'CG' => 'Конга',
+ 'CG' => 'Конга - Бразавіль',
'CH' => 'Швейцарыя',
'CI' => 'Кот-д’Івуар',
'CK' => 'Астравы Кука',
@@ -235,19 +783,22 @@ $countryNames = array(
'CM' => 'Камерун',
'CN' => 'Кітай',
'CO' => 'Калумбія',
+ 'CP' => 'Востраў Кліпертон',
'CR' => 'Коста-Рыка',
'CU' => 'Куба',
'CV' => 'Каба-Вердэ',
- 'CW' => 'Востраў Кюрасаа',
- 'CX' => 'Востраў Ражства',
+ 'CW' => 'Кюрасаа',
+ 'CX' => 'Востраў Каляд',
'CY' => 'Кіпр',
'CZ' => 'Чэхія',
'DE' => 'Германія',
+ 'DG' => 'Востраў Дыега-Гарсія',
'DJ' => 'Джыбуці',
'DK' => 'Данія',
'DM' => 'Дамініка',
'DO' => 'Дамініканская Рэспубліка',
'DZ' => 'Алжыр',
+ 'EA' => 'Сеўта і Мелілья',
'EC' => 'Эквадор',
'EE' => 'Эстонія',
'EG' => 'Егіпет',
@@ -255,10 +806,11 @@ $countryNames = array(
'ER' => 'Эрытрэя',
'ES' => 'Іспанія',
'ET' => 'Эфіопія',
- 'EU' => 'Еўрапейскі Звяз',
+ 'EU' => 'Еўрапейскі саюз',
+ 'EZ' => 'Еўразона',
'FI' => 'Фінляндыя',
'FJ' => 'Фіджы',
- 'FK' => 'Фолклэндскія астравы',
+ 'FK' => 'Фалклендскія астравы',
'FM' => 'Мікранезія',
'FO' => 'Фарэрскія астравы',
'FR' => 'Францыя',
@@ -267,7 +819,7 @@ $countryNames = array(
'GD' => 'Грэнада',
'GE' => 'Грузія',
'GF' => 'Французская Гвіяна',
- 'GG' => 'Востраў Гернсі',
+ 'GG' => 'Гернсі',
'GH' => 'Гана',
'GI' => 'Гібралтар',
'GL' => 'Грэнландыя',
@@ -282,11 +834,12 @@ $countryNames = array(
'GW' => 'Гвінея-Бісау',
'GY' => 'Гаяна',
'HK' => 'Ганконг',
- 'HM' => 'Востраў Херд і Астравы Макдоналд',
+ 'HM' => 'Астравы Херд і Макдональд',
'HN' => 'Гандурас',
'HR' => 'Харватыя',
'HT' => 'Гаіці',
'HU' => 'Венгрыя',
+ 'IC' => 'Канарскія астравы',
'ID' => 'Інданезія',
'IE' => 'Ірландыя',
'IL' => 'Ізраіль',
@@ -297,7 +850,7 @@ $countryNames = array(
'IR' => 'Іран',
'IS' => 'Ісландыя',
'IT' => 'Італія',
- 'JE' => 'Востраў Джэрсі',
+ 'JE' => 'Джэрсі',
'JM' => 'Ямайка',
'JO' => 'Іарданія',
'JP' => 'Японія',
@@ -305,7 +858,7 @@ $countryNames = array(
'KG' => 'Кыргызстан',
'KH' => 'Камбоджа',
'KI' => 'Кірыбаці',
- 'KM' => 'Каморскія Астравы',
+ 'KM' => 'Каморскія астравы',
'KN' => 'Сент-Кітс і Невіс',
'KP' => 'Паўночная Карэя',
'KR' => 'Паўднёвая Карэя',
@@ -327,11 +880,12 @@ $countryNames = array(
'MC' => 'Манака',
'MD' => 'Малдова',
'ME' => 'Чарнагорыя',
+ 'MF' => 'Сен-Мартэн',
'MG' => 'Мадагаскар',
- 'MH' => 'Маршалавы Астравы',
- 'MK' => 'Македонія, БЮР',
+ 'MH' => 'Маршалавы астравы',
+ 'MK' => 'Македонія',
'ML' => 'Малі',
- 'MM' => 'М’янма',
+ 'MM' => 'М’янма (Бірма)',
'MN' => 'Манголія',
'MO' => 'Макаа',
'MP' => 'Паўночныя Марыянскія астравы',
@@ -361,33 +915,33 @@ $countryNames = array(
'PA' => 'Панама',
'PE' => 'Перу',
'PF' => 'Французская Палінезія',
- 'PG' => 'Папуа — Новая Гвінея',
+ 'PG' => 'Папуа-Новая Гвінея',
'PH' => 'Філіпіны',
'PK' => 'Пакістан',
'PL' => 'Польшча',
'PM' => 'Сен-П’ер і Мікелон',
'PN' => 'Астравы Піткэрн',
'PR' => 'Пуэрта-Рыка',
- 'PS' => 'Палестынскія тэрыторыі',
+ 'PS' => 'Палесціна',
'PT' => 'Партугалія',
'PW' => 'Палау',
'PY' => 'Парагвай',
'QA' => 'Катар',
- 'QO' => 'Вонкавая Акіянія',
+ 'QO' => 'Знешняя Акіянія',
'RE' => 'Рэюньён',
'RO' => 'Румынія',
'RS' => 'Сербія',
'RU' => 'Расія',
'RW' => 'Руанда',
'SA' => 'Саудаўская Аравія',
- 'SB' => 'Саламонавы Астравы',
- 'SC' => 'Сейшэльскія Астравы',
+ 'SB' => 'Саламонавы астравы',
+ 'SC' => 'Сейшэльскія астравы',
'SD' => 'Судан',
'SE' => 'Швецыя',
'SG' => 'Сінгапур',
- 'SH' => 'Святой Алены, Востраў',
+ 'SH' => 'Востраў Святой Алены',
'SI' => 'Славенія',
- 'SJ' => 'Свальбард (Паўночна-Усходняя Зямля) і Ян-Маен',
+ 'SJ' => 'Шпіцберген і Ян-Маен',
'SK' => 'Славакія',
'SL' => 'Сьера-Леонэ',
'SM' => 'Сан-Марына',
@@ -397,16 +951,18 @@ $countryNames = array(
'SS' => 'Паўднёвы Судан',
'ST' => 'Сан-Тамэ і Прынсіпі',
'SV' => 'Сальвадор',
+ 'SX' => 'Сінт-Мартэн',
'SY' => 'Сірыя',
'SZ' => 'Свазіленд',
- 'TC' => 'Цёркс і Кайкас',
+ 'TA' => 'Трыстан-да-Кунья',
+ 'TC' => 'Астравы Цёркс і Кайкас',
'TD' => 'Чад',
- 'TF' => 'Французскія Паўднёвыя тэрыторыі',
+ 'TF' => 'Французскія паўднёвыя тэрыторыі',
'TG' => 'Тога',
'TH' => 'Тайланд',
'TJ' => 'Таджыкістан',
'TK' => 'Такелау',
- 'TL' => 'Усходні Тымор',
+ 'TL' => 'Тымор-Лешці',
'TM' => 'Туркменістан',
'TN' => 'Туніс',
'TO' => 'Тонга',
@@ -417,7 +973,9 @@ $countryNames = array(
'TZ' => 'Танзанія',
'UA' => 'Украіна',
'UG' => 'Уганда',
- 'US' => 'Злучаныя Штаты Амерыкі',
+ 'UM' => 'Малыя Аддаленыя астравы ЗША',
+ 'UN' => 'ААН',
+ 'US' => 'ЗША',
'UY' => 'Уругвай',
'UZ' => 'Узбекістан',
'VA' => 'Ватыкан',
@@ -429,40 +987,417 @@ $countryNames = array(
'VU' => 'Вануату',
'WF' => 'Уоліс і Футуна',
'WS' => 'Самоа',
+ 'XK' => 'Косава',
'YE' => 'Емен',
- 'YT' => 'Востраў Маёта',
+ 'YT' => 'Маёта',
'ZA' => 'Паўднёва-Афрыканская Рэспубліка',
'ZM' => 'Замбія',
'ZW' => 'Зімбабвэ',
-);
+];
-$timeUnits = array(
- 'day-few' => '{0} дні',
- 'day-many' => '{0} дзён',
- 'day-one' => '{0} дзень',
- 'day-other' => '{0} дня',
+$timeUnits = [
+ 'century-few' => '{0} стагоддзі',
+ 'century-many' => '{0} стагоддзяў',
+ 'century-one' => '{0} стагоддзе',
+ 'century-other' => '{0} стагоддзя',
+ 'day-few' => '{0} сутак',
+ 'day-future-few' => 'праз {0} дні',
+ 'day-future-many' => 'праз {0} дзён',
+ 'day-future-one' => 'праз {0} дзень',
+ 'day-future-other' => 'праз {0} дня',
+ 'day-many' => '{0} сутак',
+ 'day-narrow-future-few' => 'праз {0} дні',
+ 'day-narrow-future-many' => 'праз {0} дзён',
+ 'day-narrow-future-one' => 'праз {0} дзень',
+ 'day-narrow-future-other' => 'праз {0} дня',
+ 'day-narrow-past-few' => '{0} дні таму',
+ 'day-narrow-past-many' => '{0} дзён таму',
+ 'day-narrow-past-one' => '{0} дзень таму',
+ 'day-narrow-past-other' => '{0} дня таму',
+ 'day-one' => '{0} суткі',
+ 'day-other' => '{0} сутак',
+ 'day-past-few' => '{0} дні таму',
+ 'day-past-many' => '{0} дзён таму',
+ 'day-past-one' => '{0} дзень таму',
+ 'day-past-other' => '{0} дня таму',
+ 'day-short-future-few' => 'праз {0} дні',
+ 'day-short-future-many' => 'праз {0} дзён',
+ 'day-short-future-one' => 'праз {0} дзень',
+ 'day-short-future-other' => 'праз {0} дня',
+ 'day-short-past-few' => '{0} дні таму',
+ 'day-short-past-many' => '{0} дзён таму',
+ 'day-short-past-one' => '{0} дзень таму',
+ 'day-short-past-other' => '{0} дня таму',
+ 'fri-future-few' => 'праз {0} пятніцы',
+ 'fri-future-many' => 'праз {0} пятніц',
+ 'fri-future-one' => 'праз {0} пятніцу',
+ 'fri-future-other' => 'праз {0} пятніцы',
+ 'fri-narrow-future-few' => 'праз {0} пятніцы',
+ 'fri-narrow-future-many' => 'праз {0} пятніц',
+ 'fri-narrow-future-one' => 'праз {0} пт',
+ 'fri-narrow-future-other' => 'праз {0} пт',
+ 'fri-narrow-past-few' => '{0} пятніцы таму',
+ 'fri-narrow-past-many' => '{0} пятніц таму',
+ 'fri-narrow-past-one' => '{0} пт таму',
+ 'fri-narrow-past-other' => '{0} пт таму',
+ 'fri-past-few' => '{0} пятніцы таму',
+ 'fri-past-many' => '{0} пятніц таму',
+ 'fri-past-one' => '{0} пятніцу таму',
+ 'fri-past-other' => '{0} пятніцы таму',
+ 'fri-short-future-few' => 'праз {0} пятніцы',
+ 'fri-short-future-many' => 'праз {0} пятніц',
+ 'fri-short-future-one' => 'праз {0} пт',
+ 'fri-short-future-other' => 'праз {0} пт',
+ 'fri-short-past-few' => '{0} пятніцы таму',
+ 'fri-short-past-many' => '{0} пятніц таму',
+ 'fri-short-past-one' => '{0} пт таму',
+ 'fri-short-past-other' => '{0} пт таму',
'hour-few' => '{0} гадзіны',
+ 'hour-future-few' => 'праз {0} гадзіны',
+ 'hour-future-many' => 'праз {0} гадзін',
+ 'hour-future-one' => 'праз {0} гадзіну',
+ 'hour-future-other' => 'праз {0} гадзіны',
'hour-many' => '{0} гадзін',
+ 'hour-narrow-future-few' => 'праз {0} гадз',
+ 'hour-narrow-future-many' => 'праз {0} гадз',
+ 'hour-narrow-future-one' => 'праз {0} гадз',
+ 'hour-narrow-future-other' => 'праз {0} гадз',
+ 'hour-narrow-past-few' => '{0} гадз таму',
+ 'hour-narrow-past-many' => '{0} гадз таму',
+ 'hour-narrow-past-one' => '{0} гадз таму',
+ 'hour-narrow-past-other' => '{0} гадз таму',
'hour-one' => '{0} гадзіна',
'hour-other' => '{0} гадзіны',
+ 'hour-past-few' => '{0} гадзіны таму',
+ 'hour-past-many' => '{0} гадзін таму',
+ 'hour-past-one' => '{0} гадзіну таму',
+ 'hour-past-other' => '{0} гадзіны таму',
+ 'hour-short-future-few' => 'праз {0} гадз',
+ 'hour-short-future-many' => 'праз {0} гадз',
+ 'hour-short-future-one' => 'праз {0} гадз',
+ 'hour-short-future-other' => 'праз {0} гадз',
+ 'hour-short-past-few' => '{0} гадз таму',
+ 'hour-short-past-many' => '{0} гадз таму',
+ 'hour-short-past-one' => '{0} гадз таму',
+ 'hour-short-past-other' => '{0} гадз таму',
+ 'microsecond-few' => '{0} мікрасекунды',
+ 'microsecond-many' => '{0} мікрасекунд',
+ 'microsecond-one' => '{0} мікрасекунда',
+ 'microsecond-other' => '{0} мікрасекунды',
+ 'millisecond-few' => '{0} мілісекунды',
+ 'millisecond-many' => '{0} мілісекунд',
+ 'millisecond-one' => '{0} мілісекунда',
+ 'millisecond-other' => '{0} мілісекунды',
'minute-few' => '{0} хвіліны',
+ 'minute-future-few' => 'праз {0} хвіліны',
+ 'minute-future-many' => 'праз {0} хвілін',
+ 'minute-future-one' => 'праз {0} хвіліну',
+ 'minute-future-other' => 'праз {0} хвіліны',
'minute-many' => '{0} хвілін',
+ 'minute-narrow-future-few' => 'праз {0} хв',
+ 'minute-narrow-future-many' => 'праз {0} хв',
+ 'minute-narrow-future-one' => 'праз {0} хв',
+ 'minute-narrow-future-other' => 'праз {0} хв',
+ 'minute-narrow-past-few' => '{0} хв таму',
+ 'minute-narrow-past-many' => '{0} хв таму',
+ 'minute-narrow-past-one' => '{0} хв таму',
+ 'minute-narrow-past-other' => '{0} хв таму',
'minute-one' => '{0} хвіліна',
'minute-other' => '{0} хвіліны',
+ 'minute-past-few' => '{0} хвіліны таму',
+ 'minute-past-many' => '{0} хвілін таму',
+ 'minute-past-one' => '{0} хвіліну таму',
+ 'minute-past-other' => '{0} хвіліны таму',
+ 'minute-short-future-few' => 'праз {0} хв',
+ 'minute-short-future-many' => 'праз {0} хв',
+ 'minute-short-future-one' => 'праз {0} хв',
+ 'minute-short-future-other' => 'праз {0} хв',
+ 'minute-short-past-few' => '{0} хв таму',
+ 'minute-short-past-many' => '{0} хв таму',
+ 'minute-short-past-one' => '{0} хв таму',
+ 'minute-short-past-other' => '{0} хв таму',
+ 'mon-future-few' => 'праз {0} панядзелкі',
+ 'mon-future-many' => 'праз {0} панядзелкаў',
+ 'mon-future-one' => 'праз {0} панядзелак',
+ 'mon-future-other' => 'праз {0} панядзелка',
+ 'mon-narrow-future-few' => 'праз {0} панядзелкі',
+ 'mon-narrow-future-many' => 'праз {0} панядзелкаў',
+ 'mon-narrow-future-one' => 'праз {0} пн',
+ 'mon-narrow-future-other' => 'праз {0} пн',
+ 'mon-narrow-past-few' => '{0} панядзелкі таму',
+ 'mon-narrow-past-many' => '{0} панядзелкаў таму',
+ 'mon-narrow-past-one' => '{0} пн таму',
+ 'mon-narrow-past-other' => '{0} пн таму',
+ 'mon-past-few' => '{0} панядзелкі таму',
+ 'mon-past-many' => '{0} панядзелкаў таму',
+ 'mon-past-one' => '{0} панядзелак таму',
+ 'mon-past-other' => '{0} панядзелка таму',
+ 'mon-short-future-few' => 'праз {0} панядзелкі',
+ 'mon-short-future-many' => 'праз {0} панядзелкаў',
+ 'mon-short-future-one' => 'праз {0} пн',
+ 'mon-short-future-other' => 'праз {0} пн',
+ 'mon-short-past-few' => '{0} панядзелкі таму',
+ 'mon-short-past-many' => '{0} панядзелкаў таму',
+ 'mon-short-past-one' => '{0} пн таму',
+ 'mon-short-past-other' => '{0} пн таму',
'month-few' => '{0} месяца',
+ 'month-future-few' => 'праз {0} месяцы',
+ 'month-future-many' => 'праз {0} месяцаў',
+ 'month-future-one' => 'праз {0} месяц',
+ 'month-future-other' => 'праз {0} месяца',
'month-many' => '{0} месяцаў',
+ 'month-narrow-future-few' => 'праз {0} мес.',
+ 'month-narrow-future-many' => 'праз {0} мес.',
+ 'month-narrow-future-one' => 'праз {0} мес.',
+ 'month-narrow-future-other' => 'праз {0} мес.',
+ 'month-narrow-past-few' => '{0} мес. таму',
+ 'month-narrow-past-many' => '{0} мес. таму',
+ 'month-narrow-past-one' => '{0} мес. таму',
+ 'month-narrow-past-other' => '{0} мес. таму',
'month-one' => '{0} месяц',
'month-other' => '{0} месяца',
- 'second-few' => '{0} сэкунды',
- 'second-many' => '{0} сэкунд',
- 'second-one' => '{0} сэкунда',
- 'second-other' => '{0} сэкунды',
+ 'month-past-few' => '{0} месяцы таму',
+ 'month-past-many' => '{0} месяцаў таму',
+ 'month-past-one' => '{0} месяц таму',
+ 'month-past-other' => '{0} месяца таму',
+ 'month-short-future-few' => 'праз {0} мес.',
+ 'month-short-future-many' => 'праз {0} мес.',
+ 'month-short-future-one' => 'праз {0} мес.',
+ 'month-short-future-other' => 'праз {0} мес.',
+ 'month-short-past-few' => '{0} мес. таму',
+ 'month-short-past-many' => '{0} мес. таму',
+ 'month-short-past-one' => '{0} мес. таму',
+ 'month-short-past-other' => '{0} мес. таму',
+ 'nanosecond-few' => '{0} нанасекунды',
+ 'nanosecond-many' => '{0} нанасекунд',
+ 'nanosecond-one' => '{0} нанасекунда',
+ 'nanosecond-other' => '{0} нанасекунды',
+ 'quarter-future-few' => 'праз {0} кварталы',
+ 'quarter-future-many' => 'праз {0} кварталаў',
+ 'quarter-future-one' => 'праз {0} квартал',
+ 'quarter-future-other' => 'праз {0} квартала',
+ 'quarter-narrow-future-few' => 'праз {0} кв.',
+ 'quarter-narrow-future-many' => 'праз {0} кв.',
+ 'quarter-narrow-future-one' => 'праз {0} кв.',
+ 'quarter-narrow-future-other' => 'праз {0} кв.',
+ 'quarter-narrow-past-few' => '{0} кв. таму',
+ 'quarter-narrow-past-many' => '{0} кв. таму',
+ 'quarter-narrow-past-one' => '{0} кв. таму',
+ 'quarter-narrow-past-other' => '{0} кв. таму',
+ 'quarter-past-few' => '{0} кварталы таму',
+ 'quarter-past-many' => '{0} кварталаў таму',
+ 'quarter-past-one' => '{0} квартал таму',
+ 'quarter-past-other' => '{0} квартала таму',
+ 'quarter-short-future-few' => 'праз {0} кв.',
+ 'quarter-short-future-many' => 'праз {0} кв.',
+ 'quarter-short-future-one' => 'праз {0} кв.',
+ 'quarter-short-future-other' => 'праз {0} кв.',
+ 'quarter-short-past-few' => '{0} кв. таму',
+ 'quarter-short-past-many' => '{0} кв. таму',
+ 'quarter-short-past-one' => '{0} кв. таму',
+ 'quarter-short-past-other' => '{0} кв. таму',
+ 'sat-future-few' => 'праз {0} суботы',
+ 'sat-future-many' => 'праз {0} субот',
+ 'sat-future-one' => 'праз {0} суботу',
+ 'sat-future-other' => 'праз {0} суботы',
+ 'sat-narrow-future-few' => 'праз {0} суботы',
+ 'sat-narrow-future-many' => 'праз {0} субот',
+ 'sat-narrow-future-one' => 'праз {0} сб',
+ 'sat-narrow-future-other' => 'праз {0} сб',
+ 'sat-narrow-past-few' => '{0} суботы таму',
+ 'sat-narrow-past-many' => '{0} субот таму',
+ 'sat-narrow-past-one' => '{0} сб таму',
+ 'sat-narrow-past-other' => '{0} сб таму',
+ 'sat-past-few' => '{0} суботы таму',
+ 'sat-past-many' => '{0} субот таму',
+ 'sat-past-one' => '{0} суботу таму',
+ 'sat-past-other' => '{0} суботы таму',
+ 'sat-short-future-few' => 'праз {0} суботы',
+ 'sat-short-future-many' => 'праз {0} субот',
+ 'sat-short-future-one' => 'праз {0} сб',
+ 'sat-short-future-other' => 'праз {0} сб',
+ 'sat-short-past-few' => '{0} суботы таму',
+ 'sat-short-past-many' => '{0} субот таму',
+ 'sat-short-past-one' => '{0} сб таму',
+ 'sat-short-past-other' => '{0} сб таму',
+ 'second-few' => '{0} секунды',
+ 'second-future-few' => 'праз {0} секунды',
+ 'second-future-many' => 'праз {0} секунд',
+ 'second-future-one' => 'праз {0} секунду',
+ 'second-future-other' => 'праз {0} секунды',
+ 'second-many' => '{0} секунд',
+ 'second-narrow-future-few' => 'праз {0} с',
+ 'second-narrow-future-many' => 'праз {0} с',
+ 'second-narrow-future-one' => 'праз {0} с',
+ 'second-narrow-future-other' => 'праз {0} с',
+ 'second-narrow-past-few' => '{0} с таму',
+ 'second-narrow-past-many' => '{0} с таму',
+ 'second-narrow-past-one' => '{0} с таму',
+ 'second-narrow-past-other' => '{0} с таму',
+ 'second-one' => '{0} секунда',
+ 'second-other' => '{0} секунды',
+ 'second-past-few' => '{0} секунды таму',
+ 'second-past-many' => '{0} секунд таму',
+ 'second-past-one' => '{0} секунду таму',
+ 'second-past-other' => '{0} секунды таму',
+ 'second-short-future-few' => 'праз {0} с',
+ 'second-short-future-many' => 'праз {0} с',
+ 'second-short-future-one' => 'праз {0} с',
+ 'second-short-future-other' => 'праз {0} с',
+ 'second-short-past-few' => '{0} с таму',
+ 'second-short-past-many' => '{0} с таму',
+ 'second-short-past-one' => '{0} с таму',
+ 'second-short-past-other' => '{0} с таму',
+ 'sun-future-few' => 'праз {0} нядзелі',
+ 'sun-future-many' => 'праз {0} нядзель',
+ 'sun-future-one' => 'праз {0} нядзелю',
+ 'sun-future-other' => 'праз {0} нядзелі',
+ 'sun-narrow-future-few' => 'праз {0} нядзелі',
+ 'sun-narrow-future-many' => 'праз {0} нядзель',
+ 'sun-narrow-future-one' => 'праз {0} нд',
+ 'sun-narrow-future-other' => 'праз {0} нд',
+ 'sun-narrow-past-few' => '{0} нядзелі таму',
+ 'sun-narrow-past-many' => '{0} нядзель таму',
+ 'sun-narrow-past-one' => '{0} нд таму',
+ 'sun-narrow-past-other' => '{0} нд таму',
+ 'sun-past-few' => '{0} нядзелі таму',
+ 'sun-past-many' => '{0} нядзель таму',
+ 'sun-past-one' => '{0} нядзелю таму',
+ 'sun-past-other' => '{0} нядзелі таму',
+ 'sun-short-future-few' => 'праз {0} нядзелі',
+ 'sun-short-future-many' => 'праз {0} нядзель',
+ 'sun-short-future-one' => 'праз {0} нд',
+ 'sun-short-future-other' => 'праз {0} нд',
+ 'sun-short-past-few' => '{0} нядзелі таму',
+ 'sun-short-past-many' => '{0} нядзель таму',
+ 'sun-short-past-one' => '{0} нд таму',
+ 'sun-short-past-other' => '{0} нд таму',
+ 'thu-future-few' => 'праз {0} чацвяргі',
+ 'thu-future-many' => 'праз {0} чацвяргоў',
+ 'thu-future-one' => 'праз {0} чацвер',
+ 'thu-future-other' => 'праз {0} чацвярга',
+ 'thu-narrow-future-few' => 'праз {0} чацвяргі',
+ 'thu-narrow-future-many' => 'праз {0} чацвяргоў',
+ 'thu-narrow-future-one' => 'праз {0} чц',
+ 'thu-narrow-future-other' => 'праз {0} чц',
+ 'thu-narrow-past-few' => '{0} чацвяргі таму',
+ 'thu-narrow-past-many' => '{0} чацвяргоў таму',
+ 'thu-narrow-past-one' => '{0} чц таму',
+ 'thu-narrow-past-other' => '{0} чц таму',
+ 'thu-past-few' => '{0} чацвяргі таму',
+ 'thu-past-many' => '{0} чацвяргоў таму',
+ 'thu-past-one' => '{0} чацвер таму',
+ 'thu-past-other' => '{0} чацвярга таму',
+ 'thu-short-future-few' => 'праз {0} чацвяргі',
+ 'thu-short-future-many' => 'праз {0} чацвяргоў',
+ 'thu-short-future-one' => 'праз {0} чц',
+ 'thu-short-future-other' => 'праз {0} чц',
+ 'thu-short-past-few' => '{0} чацвяргі таму',
+ 'thu-short-past-many' => '{0} чацвяргоў таму',
+ 'thu-short-past-one' => '{0} чц таму',
+ 'thu-short-past-other' => '{0} чц таму',
+ 'tue-future-few' => 'праз {0} аўторкі',
+ 'tue-future-many' => 'праз {0} аўторкаў',
+ 'tue-future-one' => 'праз {0} аўторак',
+ 'tue-future-other' => 'праз {0} аўторка',
+ 'tue-narrow-future-few' => 'праз {0} аўторкі',
+ 'tue-narrow-future-many' => 'праз {0} аўторкаў',
+ 'tue-narrow-future-one' => 'праз {0} аў',
+ 'tue-narrow-future-other' => 'праз {0} аў',
+ 'tue-narrow-past-few' => '{0} аўторкі таму',
+ 'tue-narrow-past-many' => '{0} аўторкаў таму',
+ 'tue-narrow-past-one' => '{0} аў таму',
+ 'tue-narrow-past-other' => '{0} аў таму',
+ 'tue-past-few' => '{0} аўторкі таму',
+ 'tue-past-many' => '{0} аўторкаў таму',
+ 'tue-past-one' => '{0} аўторак таму',
+ 'tue-past-other' => '{0} аўторка таму',
+ 'tue-short-future-few' => 'праз {0} аўторкі',
+ 'tue-short-future-many' => 'праз {0} аўторкаў',
+ 'tue-short-future-one' => 'праз {0} аў',
+ 'tue-short-future-other' => 'праз {0} аў',
+ 'tue-short-past-few' => '{0} аўторкі таму',
+ 'tue-short-past-many' => '{0} аўторкаў таму',
+ 'tue-short-past-one' => '{0} аў таму',
+ 'tue-short-past-other' => '{0} аў таму',
+ 'wed-future-few' => 'праз {0} серады',
+ 'wed-future-many' => 'праз {0} серад',
+ 'wed-future-one' => 'праз {0} сераду',
+ 'wed-future-other' => 'праз {0} серады',
+ 'wed-narrow-future-few' => 'праз {0} серады',
+ 'wed-narrow-future-many' => 'праз {0} серад',
+ 'wed-narrow-future-one' => 'праз {0} ср',
+ 'wed-narrow-future-other' => 'праз {0} ср',
+ 'wed-narrow-past-few' => '{0} серады таму',
+ 'wed-narrow-past-many' => '{0} серад таму',
+ 'wed-narrow-past-one' => '{0} ср таму',
+ 'wed-narrow-past-other' => '{0} ср таму',
+ 'wed-past-few' => '{0} серады таму',
+ 'wed-past-many' => '{0} серад таму',
+ 'wed-past-one' => '{0} сераду таму',
+ 'wed-past-other' => '{0} серады таму',
+ 'wed-short-future-few' => 'праз {0} серады',
+ 'wed-short-future-many' => 'праз {0} серад',
+ 'wed-short-future-one' => 'праз {0} ср',
+ 'wed-short-future-other' => 'праз {0} ср',
+ 'wed-short-past-few' => '{0} серады таму',
+ 'wed-short-past-many' => '{0} серад таму',
+ 'wed-short-past-one' => '{0} ср таму',
+ 'wed-short-past-other' => '{0} ср таму',
'week-few' => '{0} тыдні',
+ 'week-future-few' => 'праз {0} тыдні',
+ 'week-future-many' => 'праз {0} тыдняў',
+ 'week-future-one' => 'праз {0} тыдзень',
+ 'week-future-other' => 'праз {0} тыдня',
'week-many' => '{0} тыдняў',
+ 'week-narrow-future-few' => 'праз {0} тыд',
+ 'week-narrow-future-many' => 'праз {0} тыд',
+ 'week-narrow-future-one' => 'праз {0} тыд',
+ 'week-narrow-future-other' => 'праз {0} тыд',
+ 'week-narrow-past-few' => '{0} тыд таму',
+ 'week-narrow-past-many' => '{0} тыд таму',
+ 'week-narrow-past-one' => '{0} тыд таму',
+ 'week-narrow-past-other' => '{0} тыд таму',
'week-one' => '{0} тыдзень',
'week-other' => '{0} тыдня',
+ 'week-past-few' => '{0} тыдні таму',
+ 'week-past-many' => '{0} тыдняў таму',
+ 'week-past-one' => '{0} тыдзень таму',
+ 'week-past-other' => '{0} тыдня таму',
+ 'week-short-future-few' => 'праз {0} тыд',
+ 'week-short-future-many' => 'праз {0} тыд',
+ 'week-short-future-one' => 'праз {0} тыд',
+ 'week-short-future-other' => 'праз {0} тыд',
+ 'week-short-past-few' => '{0} тыд таму',
+ 'week-short-past-many' => '{0} тыд таму',
+ 'week-short-past-one' => '{0} тыд таму',
+ 'week-short-past-other' => '{0} тыд таму',
'year-few' => '{0} гады',
+ 'year-future-few' => 'праз {0} гады',
+ 'year-future-many' => 'праз {0} гадоў',
+ 'year-future-one' => 'праз {0} год',
+ 'year-future-other' => 'праз {0} года',
'year-many' => '{0} гадоў',
+ 'year-narrow-future-few' => 'праз {0} г.',
+ 'year-narrow-future-many' => 'праз {0} г.',
+ 'year-narrow-future-one' => 'праз {0} г.',
+ 'year-narrow-future-other' => 'праз {0} г.',
+ 'year-narrow-past-few' => '{0} г. таму',
+ 'year-narrow-past-many' => '{0} г. таму',
+ 'year-narrow-past-one' => '{0} г. таму',
+ 'year-narrow-past-other' => '{0} г. таму',
'year-one' => '{0} год',
- 'year-other' => '{0} году',
-);
+ 'year-other' => '{0} года',
+ 'year-past-few' => '{0} гады таму',
+ 'year-past-many' => '{0} гадоў таму',
+ 'year-past-one' => '{0} год таму',
+ 'year-past-other' => '{0} года таму',
+ 'year-short-future-few' => 'праз {0} г.',
+ 'year-short-future-many' => 'праз {0} г.',
+ 'year-short-future-one' => 'праз {0} г.',
+ 'year-short-future-other' => 'праз {0} г.',
+ 'year-short-past-few' => '{0} г. таму',
+ 'year-short-past-many' => '{0} г. таму',
+ 'year-short-past-one' => '{0} г. таму',
+ 'year-short-past-other' => '{0} г. таму',
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesBg.php b/MLEB/cldr/CldrNames/CldrNamesBg.php
index 0e849248..438f1003 100644
--- a/MLEB/cldr/CldrNames/CldrNamesBg.php
+++ b/MLEB/cldr/CldrNames/CldrNamesBg.php
@@ -1,12 +1,12 @@
<?php
-$languageNames = array(
- 'aa' => 'афар',
+$languageNames = [
+ 'aa' => 'афарски',
'ab' => 'абхазки',
- 'ace' => 'ачински',
+ 'ace' => 'ачешки',
'ach' => 'аколи',
'ada' => 'адангме',
- 'ady' => 'адиге',
+ 'ady' => 'адигейски',
'ae' => 'авестски',
'af' => 'африканс',
'afh' => 'африхили',
@@ -35,14 +35,15 @@ $languageNames = array(
'az' => 'азербайджански',
'ba' => 'башкирски',
'bal' => 'балучи',
- 'ban' => 'балинейски',
+ 'ban' => 'балийски',
'bas' => 'баса',
'be' => 'беларуски',
'bej' => 'бея',
'bem' => 'бемба',
'bez' => 'бена',
'bg' => 'български',
- 'bho' => 'божпури',
+ 'bgn' => 'западен балочи',
+ 'bho' => 'боджпури',
'bi' => 'бислама',
'bik' => 'биколски',
'bin' => 'бини',
@@ -62,7 +63,7 @@ $languageNames = array(
'car' => 'карибски',
'cch' => 'атсам',
'ce' => 'чеченски',
- 'ceb' => 'себуано',
+ 'ceb' => 'себуански',
'cgg' => 'чига',
'ch' => 'чаморо',
'chb' => 'чибча',
@@ -72,54 +73,50 @@ $languageNames = array(
'chn' => 'жаргон чинуук',
'cho' => 'чокто',
'chp' => 'чиипувски',
- 'chr' => 'чероки',
- 'chy' => 'чейенски',
- 'ckb' => 'кюрдски (сорани)',
+ 'chr' => 'черокски',
+ 'chy' => 'шайенски',
+ 'ckb' => 'кюрдски (централен)',
'co' => 'корсикански',
'cop' => 'коптски',
'cr' => 'крии',
'crh' => 'кримскотатарски',
+ 'crs' => 'сеселва, креолски френски',
'cs' => 'чешки',
'csb' => 'кашубски',
- 'cu' => 'църковно славянски',
+ 'cu' => 'църковнославянски',
'cv' => 'чувашки',
'cy' => 'уелски',
'da' => 'датски',
'dak' => 'дакотски',
- 'dar' => 'даргва',
+ 'dar' => 'даргински',
'dav' => 'таита',
'de' => 'немски',
- 'de-at' => 'австрийски немски',
- 'de-ch' => 'швейцарски горногермански',
'del' => 'делауер',
'den' => 'слейви',
'dgr' => 'догриб',
'din' => 'динка',
- 'dje' => 'джерма',
+ 'dje' => 'зарма',
'doi' => 'догри',
'dsb' => 'долнолужишки',
'dua' => 'дуала',
'dum' => 'средновековен холандски',
'dv' => 'дивехи',
- 'dyo' => 'диола',
+ 'dyo' => 'диола-фони',
'dyu' => 'диула',
- 'dz' => 'дзонха',
+ 'dz' => 'дзонгкха',
+ 'dzg' => 'дазага',
'ebu' => 'ембу',
'ee' => 'еве',
'efi' => 'ефик',
- 'egy' => 'египетски',
+ 'egy' => 'древноегипетски',
'eka' => 'екажук',
'el' => 'гръцки',
'elx' => 'еламитски',
'en' => 'английски',
- 'en-au' => 'австралийски английски',
- 'en-ca' => 'канадски английски',
- 'en-gb' => 'британски английски',
- 'en-us' => 'американски английски',
+ 'en-us' => 'английски (САЩ)',
'enm' => 'средновековен английски',
'eo' => 'есперанто',
'es' => 'испански',
- 'es-mx' => 'мексикански испански',
'et' => 'естонски',
'eu' => 'баски',
'ewo' => 'евондо',
@@ -133,14 +130,12 @@ $languageNames = array(
'fo' => 'фарьорски',
'fon' => 'фон',
'fr' => 'френски',
- 'fr-ca' => 'канадски френски',
- 'fr-ch' => 'швейцарски френски',
'frm' => 'средновековен френски',
'fro' => 'старофренски',
'frr' => 'северен фризски',
- 'frs' => 'източен фризски',
+ 'frs' => 'източнофризийски',
'fur' => 'фриулиански',
- 'fy' => 'фризийски',
+ 'fy' => 'западнофризийски',
'ga' => 'ирландски',
'gaa' => 'га',
'gag' => 'гагаузки',
@@ -150,7 +145,7 @@ $languageNames = array(
'gez' => 'гииз',
'gil' => 'гилбертски',
'gl' => 'галисийски',
- 'gmh' => 'средновековен немски',
+ 'gmh' => 'средновисоконемски',
'gn' => 'гуарани',
'goh' => 'старовисоконемски',
'gon' => 'гонди',
@@ -163,7 +158,7 @@ $languageNames = array(
'guz' => 'гусии',
'gv' => 'манкски',
'gwi' => 'гвичин',
- 'ha' => 'хауза',
+ 'ha' => 'хауса',
'hai' => 'хайда',
'haw' => 'хавайски',
'he' => 'иврит',
@@ -174,13 +169,14 @@ $languageNames = array(
'ho' => 'хири моту',
'hr' => 'хърватски',
'hsb' => 'горнолужишки',
- 'ht' => 'хаитянски',
+ 'ht' => 'хаитянски креолски',
'hu' => 'унгарски',
'hup' => 'хупа',
'hy' => 'арменски',
'hz' => 'хереро',
'ia' => 'интерлингва',
'iba' => 'ибан',
+ 'ibb' => 'ибибио',
'id' => 'индонезийски',
'ie' => 'оксидентал',
'ig' => 'игбо',
@@ -193,17 +189,17 @@ $languageNames = array(
'it' => 'италиански',
'iu' => 'инуктитут',
'ja' => 'японски',
- 'jbo' => 'лоджбан',
+ 'jbo' => 'ложбан',
'jgo' => 'нгомба',
'jmc' => 'мачаме',
- 'jpr' => 'еврейско-персийски',
- 'jrb' => 'еврейско-арабски',
+ 'jpr' => 'юдео-персийски',
+ 'jrb' => 'юдео-арабски',
'jv' => 'явански',
'ka' => 'грузински',
'kaa' => 'каракалпашки',
'kab' => 'кабилски',
'kac' => 'качински',
- 'kaj' => 'жжи',
+ 'kaj' => 'жжу',
'kam' => 'камба',
'kaw' => 'кави',
'kbd' => 'кабардиан',
@@ -218,13 +214,14 @@ $languageNames = array(
'ki' => 'кикую',
'kj' => 'кваняма',
'kk' => 'казахски',
+ 'kkj' => 'како',
'kl' => 'гренландски',
'kln' => 'календжин',
'km' => 'кхмерски',
'kmb' => 'кимбунду',
'kn' => 'каннада',
'ko' => 'корейски',
- 'koi' => 'коми-пермяцки',
+ 'koi' => 'коми-пермякски',
'kok' => 'конкани',
'kos' => 'косраен',
'kpe' => 'кпеле',
@@ -235,10 +232,11 @@ $languageNames = array(
'ks' => 'кашмирски',
'ksb' => 'шамбала',
'ksf' => 'бафия',
+ 'ksh' => 'кьолнски',
'ku' => 'кюрдски',
'kum' => 'кумикски',
'kut' => 'кутенай',
- 'kv' => 'Коми',
+ 'kv' => 'коми',
'kw' => 'корнуолски',
'ky' => 'киргизки',
'la' => 'латински',
@@ -255,14 +253,15 @@ $languageNames = array(
'lo' => 'лаоски',
'lol' => 'монго',
'loz' => 'лози',
+ 'lrc' => 'северен лури',
'lt' => 'литовски',
- 'lu' => 'луба катанга',
+ 'lu' => 'луба-катанга',
'lua' => 'луба-лулуа',
'lui' => 'луисеньо',
'lun' => 'лунда',
'luo' => 'луо',
- 'lus' => 'лушаи',
- 'luy' => 'луя',
+ 'lus' => 'мизо',
+ 'luy' => 'лухя',
'lv' => 'латвийски',
'mad' => 'мадурски',
'mag' => 'магахи',
@@ -282,12 +281,12 @@ $languageNames = array(
'mh' => 'маршалезе',
'mi' => 'маорски',
'mic' => 'микмак',
- 'min' => 'минангбау',
+ 'min' => 'минангкабау',
'mk' => 'македонски',
'ml' => 'малаялам',
'mn' => 'монголски',
- 'mnc' => 'манчжурски',
- 'mni' => 'манипури',
+ 'mnc' => 'манджурски',
+ 'mni' => 'манипурски',
'moh' => 'мохоук',
'mos' => 'моси',
'mr' => 'марати',
@@ -295,17 +294,19 @@ $languageNames = array(
'mt' => 'малтийски',
'mua' => 'мунданг',
'mul' => 'многоезични',
- 'mus' => 'крик',
+ 'mus' => 'мускогски',
'mwl' => 'мирандийски',
'mwr' => 'марвари',
'my' => 'бирмански',
'myv' => 'ерзиа',
+ 'mzn' => 'мазандари',
'na' => 'науру',
'nap' => 'неаполитански',
'naq' => 'нама',
- 'nb' => 'норвежки букмол',
+ 'nb' => 'норвежки (букмол)',
'nd' => 'северен ндебеле',
- 'nds' => 'долносаксонски',
+ 'nds' => 'долнонемски',
+ 'nds-nl' => 'долносаксонски',
'ne' => 'непалски',
'new' => 'неварски',
'ng' => 'ндонга',
@@ -314,19 +315,20 @@ $languageNames = array(
'nl' => 'нидерландски',
'nl-be' => 'фламандски',
'nmg' => 'квасио',
- 'nn' => 'норвежки нюношк',
+ 'nn' => 'норвежки (нюношк)',
+ 'nnh' => 'нгиембун',
'no' => 'норвежки',
'nog' => 'ногаи',
- 'non' => 'старонорвежски',
+ 'non' => 'старонорвежки',
'nqo' => 'нко',
'nr' => 'южен ндебеле',
'nso' => 'северен сото',
'nus' => 'нуер',
'nv' => 'навахо',
'nwc' => 'класически невари',
- 'ny' => 'чинянджа',
+ 'ny' => 'нянджа',
'nym' => 'ниамвези',
- 'nyn' => 'нианколе',
+ 'nyn' => 'нянколе',
'nyo' => 'нуоро',
'nzi' => 'нзима',
'oc' => 'окситански',
@@ -334,49 +336,53 @@ $languageNames = array(
'om' => 'оромо',
'or' => 'ория',
'os' => 'осетски',
- 'osa' => 'оседжи',
+ 'osa' => 'осейджи',
'ota' => 'отомански турски',
'pa' => 'пенджабски',
'pag' => 'пангасинан',
- 'pal' => 'пехлевийски',
+ 'pal' => 'пахлави',
'pam' => 'пампанга',
- 'pap' => 'папиаменту',
+ 'pap' => 'папиаменто',
'pau' => 'палауан',
+ 'pcm' => 'нигерийски пиджин',
'peo' => 'староперсийски',
'phn' => 'финикийски',
'pi' => 'пали',
'pl' => 'полски',
- 'pon' => 'похнпеиан',
- 'pro' => 'провансалски',
+ 'pon' => 'понапеан',
+ 'prg' => 'пруски',
+ 'pro' => 'старопровансалски',
'ps' => 'пущу',
'pt' => 'португалски',
'qu' => 'кечуа',
'quc' => 'киче',
'raj' => 'раджастански',
'rap' => 'рапа нуи',
- 'rar' => 'рапотонган',
+ 'rar' => 'раротонга',
'rm' => 'реторомански',
'rn' => 'рунди',
'ro' => 'румънски',
'ro-md' => 'молдовски',
'rof' => 'ромбо',
- 'rom' => 'цигански език',
+ 'rom' => 'ромски',
'ru' => 'руски',
'rup' => 'арумънски',
'rw' => 'киняруанда',
'rwk' => 'рва',
- 'sa' => 'санкскритски',
- 'sad' => 'сандве',
+ 'sa' => 'санскрит',
+ 'sad' => 'сандаве',
'sah' => 'якутски',
'sam' => 'самаритански арамейски',
'saq' => 'самбуру',
'sas' => 'сасак',
'sat' => 'сантали',
+ 'sba' => 'нгамбай',
'sbp' => 'сангу',
'sc' => 'сардински',
'scn' => 'сицилиански',
'sco' => 'шотландски',
'sd' => 'синдхи',
+ 'sdh' => 'южнокюрдски',
'se' => 'северносаамски',
'seh' => 'сена',
'sel' => 'селкуп',
@@ -403,16 +409,17 @@ $languageNames = array(
'sr' => 'сръбски',
'srn' => 'сранан тонго',
'srr' => 'серер',
- 'ss' => 'суази',
- 'st' => 'сесуто',
+ 'ss' => 'свати',
+ 'ssy' => 'сахо',
+ 'st' => 'сесото',
'su' => 'сундански',
'suk' => 'сукума',
'sus' => 'сусу',
'sux' => 'шумерски',
'sv' => 'шведски',
'sw' => 'суахили',
+ 'sw-cd' => 'конгоански суахили',
'swb' => 'коморски',
- 'swc' => 'конгоански суахили',
'syc' => 'класически сирийски',
'syr' => 'сирийски',
'ta' => 'тамилски',
@@ -429,15 +436,16 @@ $languageNames = array(
'tk' => 'туркменски',
'tkl' => 'токелайски',
'tl' => 'тагалог',
- 'tlh' => 'клингон',
+ 'tlh' => 'клингонски',
'tli' => 'тлингит',
'tmh' => 'тамашек',
'tn' => 'тсвана',
- 'to' => 'тонга',
+ 'to' => 'тонгански',
'tog' => 'нианса тонга',
'tpi' => 'ток писин',
'tr' => 'турски',
- 'ts' => 'тсонга',
+ 'trv' => 'тароко',
+ 'ts' => 'цонга',
'tsi' => 'цимшиански',
'tt' => 'татарски',
'tum' => 'тумбука',
@@ -462,15 +470,19 @@ $languageNames = array(
'vot' => 'вотик',
'vun' => 'вунджо',
'wa' => 'валонски',
+ 'wae' => 'валзерски немски',
'wal' => 'валамо',
'war' => 'варай',
'was' => 'уашо',
+ 'wbp' => 'валпири',
'wo' => 'волоф',
'xal' => 'калмик',
'xh' => 'ксоса',
'xog' => 'сога',
'yao' => 'яо',
'yap' => 'япезе',
+ 'yav' => 'янгбен',
+ 'ybb' => 'йемба',
'yi' => 'идиш',
'yo' => 'йоруба',
'yue' => 'кантонски',
@@ -480,15 +492,14 @@ $languageNames = array(
'zen' => 'зенага',
'zgh' => 'стандартен марокански тамазигт',
'zh' => 'китайски',
- 'zh-hans' => 'опростен китайски',
- 'zh-hant' => 'традиционен китайски',
+ 'zh-hans' => 'китайски (опростен)',
'zu' => 'зулуски',
'zun' => 'зуни',
'zxx' => 'без лингвистично съдържание',
'zza' => 'заза',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'ADP' => 'Андорска песета',
'AED' => 'Дирхам на Обединените арабски емирства',
'AFA' => 'Афганистански афган (1927–2002)',
@@ -535,7 +546,8 @@ $currencyNames = array(
'BUK' => 'Бирмански киат',
'BWP' => 'Ботсванска пула',
'BYB' => 'Беларуска нова рубла (1994–1999)',
- 'BYR' => 'Беларуска рубла',
+ 'BYN' => 'Беларуска рубла',
+ 'BYR' => 'Беларуска рубла (2000–2016)',
'BZD' => 'Белизийски долар',
'CAD' => 'Канадски долар',
'CDF' => 'Конгоански франк',
@@ -544,6 +556,7 @@ $currencyNames = array(
'CHW' => 'WIR франк',
'CLF' => 'Условна разчетна единица на Чили',
'CLP' => 'Чилийско песо',
+ 'CNH' => 'Китайски ренминби юан (offshore)',
'CNY' => 'Китайски юан',
'COP' => 'Колумбийско песо',
'COU' => 'Колумбийска единица на реалната стойност',
@@ -636,7 +649,8 @@ $currencyNames = array(
'MMK' => 'Мианмарски кият',
'MNT' => 'Монголски тугрик',
'MOP' => 'Патака на Макао',
- 'MRO' => 'Мавританска угия',
+ 'MRO' => 'Мавританска угия (1973–2017)',
+ 'MRU' => 'Мавританска угия',
'MTL' => 'Малтийска лира',
'MUR' => 'Маврицийска рупия',
'MVR' => 'Малдивска руфия',
@@ -659,8 +673,8 @@ $currencyNames = array(
'OMR' => 'Омански риал',
'PAB' => 'Панамска балбоа',
'PEI' => 'Перуанско инти',
- 'PEN' => 'Перуански нов сол',
- 'PES' => 'Перуански сол',
+ 'PEN' => 'Перуански сол',
+ 'PES' => 'Перуански сол (1863–1965)',
'PGK' => 'Папуа-новогвинейска кина',
'PHP' => 'Филипинско песо',
'PKR' => 'Пакистанска рупия',
@@ -691,7 +705,8 @@ $currencyNames = array(
'SRD' => 'Суринамски долар',
'SRG' => 'Суринамски гилдер',
'SSP' => 'Южносуданска лира',
- 'STD' => 'Добра на Сао Томе и Принсипи',
+ 'STD' => 'Добра на Сао Томе и Принсипи (1977–2017)',
+ 'STN' => 'Добра на Сао Томе и Принсипи',
'SUR' => 'Съветска рубла',
'SVC' => 'Салвадорски колон',
'SYP' => 'Сирийска лира',
@@ -720,6 +735,7 @@ $currencyNames = array(
'UZS' => 'Узбекски сум',
'VEB' => 'Венецуелски боливар (1871–2008)',
'VEF' => 'Венецуелски боливар',
+ 'VES' => 'Венецуелски боливар (VES)',
'VND' => 'Виетнамски донг',
'VUV' => 'Вануатско вату',
'WST' => 'Самоанска тала',
@@ -753,9 +769,9 @@ $currencyNames = array(
'ZRZ' => 'Заирско зайре',
'ZWD' => 'Зимбабвийски долар',
'ZWL' => 'Зимбабвийски долар (2009)',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'AED' => 'AED',
'AFN' => 'AFN',
'ALL' => 'ALL',
@@ -779,6 +795,7 @@ $currencySymbols = array(
'BSD' => 'BSD',
'BTN' => 'BTN',
'BWP' => 'BWP',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CAD',
@@ -874,7 +891,7 @@ $currencySymbols = array(
'QAR' => 'QAR',
'RON' => 'RON',
'RSD' => 'RSD',
- 'RUB' => 'руб.',
+ 'RUB' => 'RUB',
'RWF' => 'RWF',
'SAR' => 'SAR',
'SBD' => 'SBD',
@@ -888,6 +905,7 @@ $currencySymbols = array(
'SRD' => 'SRD',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'Db',
'SVC' => 'SVC',
'SYP' => 'SYP',
'SZL' => 'SZL',
@@ -906,6 +924,7 @@ $currencySymbols = array(
'UYU' => 'UYU',
'UZS' => 'UZS',
'VEF' => 'VEF',
+ 'VES' => 'VES',
'VND' => 'VND',
'VUV' => 'VUV',
'WST' => 'WST',
@@ -916,9 +935,9 @@ $currencySymbols = array(
'YER' => 'YER',
'ZAR' => 'ZAR',
'ZMW' => 'ZMW',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'остров Възнесение',
'AD' => 'Андора',
'AE' => 'Обединени арабски емирства',
@@ -927,7 +946,6 @@ $countryNames = array(
'AI' => 'Ангуила',
'AL' => 'Албания',
'AM' => 'Армения',
- 'AN' => 'Холандски Антили',
'AO' => 'Ангола',
'AQ' => 'Антарктика',
'AR' => 'Аржентина',
@@ -947,12 +965,12 @@ $countryNames = array(
'BI' => 'Бурунди',
'BJ' => 'Бенин',
'BL' => 'Сен Бартелеми',
- 'BM' => 'Бермуда',
- 'BN' => 'Бруней Дарусалам',
+ 'BM' => 'Бермудски острови',
+ 'BN' => 'Бруней Даруссалам',
'BO' => 'Боливия',
'BQ' => 'Карибска Нидерландия',
'BR' => 'Бразилия',
- 'BS' => 'Бахами',
+ 'BS' => 'Бахамски острови',
'BT' => 'Бутан',
'BV' => 'остров Буве',
'BW' => 'Ботсвана',
@@ -960,9 +978,9 @@ $countryNames = array(
'BZ' => 'Белиз',
'CA' => 'Канада',
'CC' => 'Кокосови острови (острови Кийлинг)',
- 'CD' => 'Демократична република Конго',
+ 'CD' => 'Конго (Киншаса)',
'CF' => 'Централноафриканска република',
- 'CG' => 'Конго',
+ 'CG' => 'Конго (Бразавил)',
'CH' => 'Швейцария',
'CI' => 'Кот д’Ивоар',
'CK' => 'острови Кук',
@@ -994,18 +1012,19 @@ $countryNames = array(
'ES' => 'Испания',
'ET' => 'Етиопия',
'EU' => 'Европейски съюз',
+ 'EZ' => 'Еврозона',
'FI' => 'Финландия',
'FJ' => 'Фиджи',
- 'FK' => 'Фолклендски острови',
+ 'FK' => 'Фолкландски острови',
'FM' => 'Микронезия',
'FO' => 'Фарьорски острови',
'FR' => 'Франция',
'GA' => 'Габон',
- 'GB' => 'Великобритания',
+ 'GB' => 'Обединеното кралство',
'GD' => 'Гренада',
'GE' => 'Грузия',
'GF' => 'Френска Гвиана',
- 'GG' => 'Гърнси',
+ 'GG' => 'Гърнзи',
'GH' => 'Гана',
'GI' => 'Гибралтар',
'GL' => 'Гренландия',
@@ -1020,7 +1039,7 @@ $countryNames = array(
'GW' => 'Гвинея-Бисау',
'GY' => 'Гаяна',
'HK' => 'Хонконг',
- 'HM' => 'остров Хърд и острови Макдоналд',
+ 'HM' => 'острови Хърд и Макдоналд',
'HN' => 'Хондурас',
'HR' => 'Хърватия',
'HT' => 'Хаити',
@@ -1101,7 +1120,7 @@ $countryNames = array(
'PA' => 'Панама',
'PE' => 'Перу',
'PF' => 'Френска Полинезия',
- 'PG' => 'Папуа Нова Гвинея',
+ 'PG' => 'Папуа-Нова Гвинея',
'PH' => 'Филипини',
'PK' => 'Пакистан',
'PL' => 'Полша',
@@ -1113,7 +1132,7 @@ $countryNames = array(
'PW' => 'Палау',
'PY' => 'Парагвай',
'QA' => 'Катар',
- 'QO' => 'отдалечени острови на Океания',
+ 'QO' => 'Отдалечени острови на Океания',
'RE' => 'Реюнион',
'RO' => 'Румъния',
'RS' => 'Сърбия',
@@ -1160,6 +1179,7 @@ $countryNames = array(
'UA' => 'Украйна',
'UG' => 'Уганда',
'UM' => 'Отдалечени острови на САЩ',
+ 'UN' => 'Организация на обединените нации',
'US' => 'САЩ',
'UY' => 'Уругвай',
'UZ' => 'Узбекистан',
@@ -1178,9 +1198,11 @@ $countryNames = array(
'ZA' => 'Южна Африка',
'ZM' => 'Замбия',
'ZW' => 'Зимбабве',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-one' => '{0} век',
+ 'century-other' => '{0} века',
'day-future-one' => 'след {0} ден',
'day-future-other' => 'след {0} дни',
'day-narrow-future-one' => 'сл. {0} д',
@@ -1191,10 +1213,22 @@ $timeUnits = array(
'day-other' => '{0} дни',
'day-past-one' => 'преди {0} ден',
'day-past-other' => 'преди {0} дни',
- 'day-short-future-one' => 'след {0} д',
- 'day-short-future-other' => 'след {0} д',
- 'day-short-past-one' => 'преди {0} д',
- 'day-short-past-other' => 'преди {0} д',
+ 'day-short-future-one' => 'след {0} ден',
+ 'day-short-future-other' => 'след {0} дни',
+ 'day-short-past-one' => 'преди {0} ден',
+ 'day-short-past-other' => 'преди {0} дни',
+ 'fri-future-one' => 'след {0} петък',
+ 'fri-future-other' => 'след {0} петъка',
+ 'fri-narrow-future-one' => 'сл. {0} пт',
+ 'fri-narrow-future-other' => 'сл. {0} пт',
+ 'fri-narrow-past-one' => 'пр. {0} пт',
+ 'fri-narrow-past-other' => 'пр. {0} пт',
+ 'fri-past-one' => 'преди {0} петък',
+ 'fri-past-other' => 'преди {0} петъка',
+ 'fri-short-future-one' => 'след {0} пт',
+ 'fri-short-future-other' => 'след {0} пт',
+ 'fri-short-past-one' => 'преди {0} пт',
+ 'fri-short-past-other' => 'преди {0} пт',
'hour-future-one' => 'след {0} час',
'hour-future-other' => 'след {0} часа',
'hour-narrow-future-one' => 'сл. {0} ч',
@@ -1227,6 +1261,18 @@ $timeUnits = array(
'minute-short-future-other' => 'след {0} мин',
'minute-short-past-one' => 'преди {0} мин',
'minute-short-past-other' => 'преди {0} мин',
+ 'mon-future-one' => 'след {0} понеделник',
+ 'mon-future-other' => 'след {0} понеделника',
+ 'mon-narrow-future-one' => 'сл. {0} пн',
+ 'mon-narrow-future-other' => 'сл. {0} пн',
+ 'mon-narrow-past-one' => 'пр. {0} пн',
+ 'mon-narrow-past-other' => 'пр. {0} пн',
+ 'mon-past-one' => 'преди {0} понеделник',
+ 'mon-past-other' => 'преди {0} понеделника',
+ 'mon-short-future-one' => 'след {0} пн',
+ 'mon-short-future-other' => 'след {0} пн',
+ 'mon-short-past-one' => 'преди {0} пн',
+ 'mon-short-past-other' => 'преди {0} пн',
'month-future-one' => 'след {0} месец',
'month-future-other' => 'след {0} месеца',
'month-narrow-future-one' => 'сл. {0} м.',
@@ -1237,10 +1283,10 @@ $timeUnits = array(
'month-other' => '{0} месеца',
'month-past-one' => 'преди {0} месец',
'month-past-other' => 'преди {0} месеца',
- 'month-short-future-one' => 'сл. {0} м.',
- 'month-short-future-other' => 'сл. {0} м.',
- 'month-short-past-one' => 'пр. {0} м.',
- 'month-short-past-other' => 'пр. {0} м.',
+ 'month-short-future-one' => 'след {0} м.',
+ 'month-short-future-other' => 'след {0} м.',
+ 'month-short-past-one' => 'преди {0} м.',
+ 'month-short-past-other' => 'преди {0} м.',
'nanosecond-one' => '{0} наносекунда',
'nanosecond-other' => '{0} наносекунди',
'quarter-future-one' => 'след {0} тримесечие',
@@ -1251,24 +1297,84 @@ $timeUnits = array(
'quarter-narrow-past-other' => 'пр. {0} трим.',
'quarter-past-one' => 'преди {0} тримесечие',
'quarter-past-other' => 'преди {0} тримесечия',
- 'quarter-short-future-one' => 'сл. {0} трим.',
- 'quarter-short-future-other' => 'сл. {0} трим.',
- 'quarter-short-past-one' => 'пр. {0} трим.',
- 'quarter-short-past-other' => 'пр. {0} трим.',
+ 'quarter-short-future-one' => 'след {0} трим.',
+ 'quarter-short-future-other' => 'след {0} трим.',
+ 'quarter-short-past-one' => 'преди {0} трим.',
+ 'quarter-short-past-other' => 'преди {0} трим.',
+ 'sat-future-one' => 'след {0} събота',
+ 'sat-future-other' => 'след {0} съботи',
+ 'sat-narrow-future-one' => 'сл. {0} сб',
+ 'sat-narrow-future-other' => 'сл. {0} сб',
+ 'sat-narrow-past-one' => 'пр. {0} сб',
+ 'sat-narrow-past-other' => 'пр. {0} сб',
+ 'sat-past-one' => 'преди {0} събота',
+ 'sat-past-other' => 'преди {0} съботи',
+ 'sat-short-future-one' => 'след {0} сб',
+ 'sat-short-future-other' => 'след {0} сб',
+ 'sat-short-past-one' => 'преди {0} сб',
+ 'sat-short-past-other' => 'преди {0} сб',
'second-future-one' => 'след {0} секунда',
'second-future-other' => 'след {0} секунди',
- 'second-narrow-future-one' => 'сл. {0} с',
- 'second-narrow-future-other' => 'сл. {0} с',
- 'second-narrow-past-one' => 'пр. {0} с',
- 'second-narrow-past-other' => 'пр. {0} с',
+ 'second-narrow-future-one' => 'сл. {0} сек',
+ 'second-narrow-future-other' => 'сл. {0} сек',
+ 'second-narrow-past-one' => 'пр. {0} сек',
+ 'second-narrow-past-other' => 'пр. {0} сек',
'second-one' => '{0} секунда',
'second-other' => '{0} секунди',
'second-past-one' => 'преди {0} секунда',
'second-past-other' => 'преди {0} секунди',
- 'second-short-future-one' => 'след {0} с',
- 'second-short-future-other' => 'след {0} с',
- 'second-short-past-one' => 'преди {0} с',
- 'second-short-past-other' => 'преди {0} с',
+ 'second-short-future-one' => 'след {0} сек',
+ 'second-short-future-other' => 'след {0} сек',
+ 'second-short-past-one' => 'преди {0} сек',
+ 'second-short-past-other' => 'преди {0} сек',
+ 'sun-future-one' => 'след {0} неделя',
+ 'sun-future-other' => 'след {0} недели',
+ 'sun-narrow-future-one' => 'сл. {0} нд',
+ 'sun-narrow-future-other' => 'сл. {0} нд',
+ 'sun-narrow-past-one' => 'пр. {0} нд',
+ 'sun-narrow-past-other' => 'пр. {0} нд',
+ 'sun-past-one' => 'преди {0} неделя',
+ 'sun-past-other' => 'преди {0} недели',
+ 'sun-short-future-one' => 'след {0} нд',
+ 'sun-short-future-other' => 'след {0} нд',
+ 'sun-short-past-one' => 'преди {0} нд',
+ 'sun-short-past-other' => 'преди {0} нд',
+ 'thu-future-one' => 'след {0} четвъртък',
+ 'thu-future-other' => 'след {0} четвъртъка',
+ 'thu-narrow-future-one' => 'след {0} четвъртък',
+ 'thu-narrow-future-other' => 'след {0} четвъртъка',
+ 'thu-narrow-past-one' => 'пр. {0} чт',
+ 'thu-narrow-past-other' => 'пр. {0} чт',
+ 'thu-past-one' => 'преди {0} четвъртък',
+ 'thu-past-other' => 'преди {0} четвъртъка',
+ 'thu-short-future-one' => 'след {0} чт',
+ 'thu-short-future-other' => 'след {0} чт',
+ 'thu-short-past-one' => 'преди {0} чт',
+ 'thu-short-past-other' => 'преди {0} чт',
+ 'tue-future-one' => 'след {0} вторник',
+ 'tue-future-other' => 'след {0} вторника',
+ 'tue-narrow-future-one' => 'сл. {0} вт.',
+ 'tue-narrow-future-other' => 'сл. {0} вт.',
+ 'tue-narrow-past-one' => 'пр. {0} вт.',
+ 'tue-narrow-past-other' => 'пр. {0} вт.',
+ 'tue-past-one' => 'преди {0} вторник',
+ 'tue-past-other' => 'преди {0} вторника',
+ 'tue-short-future-one' => 'след {0} вт',
+ 'tue-short-future-other' => 'след {0} вт',
+ 'tue-short-past-one' => 'преди {0} вт',
+ 'tue-short-past-other' => 'преди {0} вт',
+ 'wed-future-one' => 'след {0} сряда',
+ 'wed-future-other' => 'след {0} среди',
+ 'wed-narrow-future-one' => 'сл. {0} ср',
+ 'wed-narrow-future-other' => 'сл. {0} ср',
+ 'wed-narrow-past-one' => 'пр. {0} ср',
+ 'wed-narrow-past-other' => 'пр. {0} ср',
+ 'wed-past-one' => 'преди {0} сряда',
+ 'wed-past-other' => 'преди {0} среди',
+ 'wed-short-future-one' => 'след {0} ср',
+ 'wed-short-future-other' => 'след {0} ср',
+ 'wed-short-past-one' => 'преди {0} ср',
+ 'wed-short-past-other' => 'преди {0} ср',
'week-future-one' => 'след {0} седмица',
'week-future-other' => 'след {0} седмици',
'week-narrow-future-one' => 'сл. {0} седм.',
@@ -1293,8 +1399,8 @@ $timeUnits = array(
'year-other' => '{0} години',
'year-past-one' => 'преди {0} година',
'year-past-other' => 'преди {0} години',
- 'year-short-future-one' => 'сл. {0} г.',
- 'year-short-future-other' => 'сл. {0} г.',
- 'year-short-past-one' => 'пр. {0} г.',
- 'year-short-past-other' => 'пр. {0} г.',
-);
+ 'year-short-future-one' => 'след {0} г.',
+ 'year-short-future-other' => 'след {0} г.',
+ 'year-short-past-one' => 'преди {0} г.',
+ 'year-short-past-other' => 'преди {0} г.',
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesBm.php b/MLEB/cldr/CldrNames/CldrNamesBm.php
index d107ed99..f6ba3af3 100644
--- a/MLEB/cldr/CldrNames/CldrNamesBm.php
+++ b/MLEB/cldr/CldrNames/CldrNamesBm.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'ak' => 'akankan',
'am' => 'amarikikan',
'ar' => 'larabukan',
@@ -46,9 +46,9 @@ $languageNames = array(
'yo' => 'yorubakan',
'zh' => 'siniwakan',
'zu' => 'zulukan',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'AED' => 'arabu mara kafoli Diram',
'AOA' => 'angola Kwanza',
'AUD' => 'ositirali Dolar',
@@ -79,7 +79,8 @@ $currencyNames = array(
'LYD' => 'libi Dinar',
'MAD' => 'marɔku Diram',
'MGA' => 'madagasikari Fraŋ',
- 'MRO' => 'mɔritani Uguwiya',
+ 'MRO' => 'mɔritani Uguwiya (1973–2017)',
+ 'MRU' => 'mɔritani Uguwiya',
'MUR' => 'morisi Rupi',
'MWK' => 'malawi Kwaca',
'MZM' => 'mozanbiki Metikali',
@@ -93,7 +94,8 @@ $currencyNames = array(
'SHP' => 'Ɛlɛni-Senu Livri',
'SLL' => 'siyeralewɔni Lewɔni',
'SOS' => 'somali Siling',
- 'STD' => 'sawotome Dobra',
+ 'STD' => 'sawotome Dobra (1977–2017)',
+ 'STN' => 'sawotome Dobra',
'SZL' => 'swazilandi Lilangeni',
'TND' => 'tunizi Dinar',
'TZS' => 'tanzani Siling',
@@ -105,9 +107,9 @@ $currencyNames = array(
'ZMK' => 'zambi Kwaca (1968–2012)',
'ZMW' => 'zambi Kwaca',
'ZWD' => 'zimbabuwe Dolar',
-);
+];
-$countryNames = array(
+$countryNames = [
'AD' => 'Andɔr',
'AE' => 'Arabu mara kafoli',
'AF' => 'Afiganistaŋ',
@@ -115,7 +117,6 @@ $countryNames = array(
'AI' => 'Angiya',
'AL' => 'Alibani',
'AM' => 'Arimeni',
- 'AN' => 'Peyiba ka Antiyi',
'AO' => 'Angola',
'AR' => 'Arizantin',
'AS' => 'Samowa amerikani',
@@ -333,4 +334,4 @@ $countryNames = array(
'ZA' => 'Worodugu Afriki',
'ZM' => 'Zanbi',
'ZW' => 'Zimbabuwe',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesBn.php b/MLEB/cldr/CldrNames/CldrNamesBn.php
index a12378ed..5082a679 100644
--- a/MLEB/cldr/CldrNames/CldrNamesBn.php
+++ b/MLEB/cldr/CldrNames/CldrNamesBn.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'আফার',
'ab' => 'আবখাজিয়ান',
'ace' => 'অ্যাচাইনিজ',
@@ -8,7 +8,7 @@ $languageNames = array(
'ada' => 'অদাগ্মে',
'ady' => 'আদেগে',
'ae' => 'আবেস্তীয়',
- 'af' => 'আফ্রিকান্স',
+ 'af' => 'আফ্রিকান',
'afh' => 'আফ্রিহিলি',
'agq' => 'এঘেম',
'ain' => 'আইনু',
@@ -26,7 +26,7 @@ $languageNames = array(
'arn' => 'মাপুচি',
'arp' => 'আরাপাহো',
'arw' => 'আরাওয়াক',
- 'as' => 'আসামি',
+ 'as' => 'অসমীয়া',
'asa' => 'আসু',
'ast' => 'আস্তুরিয়',
'av' => 'আভেরিক',
@@ -42,6 +42,7 @@ $languageNames = array(
'bem' => 'বেম্বা',
'bez' => 'বেনা',
'bg' => 'বুলগেরিয়',
+ 'bgn' => 'পশ্চিম বালোচি',
'bho' => 'ভোজপুরি',
'bi' => 'বিসলামা',
'bik' => 'বিকোল',
@@ -52,7 +53,7 @@ $languageNames = array(
'bo' => 'তিব্বতি',
'br' => 'ব্রেটন',
'bra' => 'ব্রাজ',
- 'brx' => 'বড়ো',
+ 'brx' => 'বোড়ো',
'bs' => 'বসনীয়ান',
'bua' => 'বুরিয়াত',
'bug' => 'বুগিনি',
@@ -74,11 +75,12 @@ $languageNames = array(
'chp' => 'চিপেওয়ান',
'chr' => 'চেরোকী',
'chy' => 'শাইয়েন',
- 'ckb' => 'সোরানি কুর্দিশ',
+ 'ckb' => 'মধ্য কুর্দিশ',
'co' => 'কর্সিকান',
'cop' => 'কপটিক',
'cr' => 'ক্রি',
'crh' => 'ক্রিমিয়ান তুর্কি',
+ 'crs' => 'সেসেলওয়া ক্রেওল ফ্রেঞ্চ',
'cs' => 'চেক',
'csb' => 'কাশুবিয়ান',
'cu' => 'চার্চ স্লাভিক',
@@ -89,8 +91,8 @@ $languageNames = array(
'dar' => 'দার্গওয়া',
'dav' => 'তাইতা',
'de' => 'জার্মান',
- 'de-at' => 'অস্ট্রিয়ান জারমান',
- 'de-ch' => 'সুইস উচ্চ জার্মানি',
+ 'de-at' => 'অস্ট্রিয়ান জার্মান',
+ 'de-ch' => 'সুইস হাই জার্মান',
'del' => 'ডেলাওয়ের',
'den' => 'স্ল্যাভ',
'dgr' => 'দোগ্রীব',
@@ -101,11 +103,12 @@ $languageNames = array(
'dua' => 'দুয়ালা',
'dum' => 'মধ্য ডাচ',
'dv' => 'দিবেহি',
- 'dyo' => 'জলা-ফনী',
+ 'dyo' => 'জোলা-ফনী',
'dyu' => 'ডিউলা',
'dz' => 'জোঙ্গা',
+ 'dzg' => 'দাজাগা',
'ebu' => 'এম্বু',
- 'ee' => 'এয়ে',
+ 'ee' => 'ইউয়ি',
'efi' => 'এফিক',
'egy' => 'প্রাচীন মিশরীয়',
'eka' => 'ইকাজুক',
@@ -131,21 +134,23 @@ $languageNames = array(
'ff' => 'ফুলাহ্',
'fi' => 'ফিনিশ',
'fil' => 'ফিলিপিনো',
- 'fj' => 'ফিজিও',
- 'fo' => 'ফেরাউনি',
+ 'fj' => 'ফিজিআন',
+ 'fo' => 'ফারোস',
'fon' => 'ফন',
'fr' => 'ফরাসি',
- 'fr-ca' => 'ক্যানাডিয়ান ফরাসী',
+ 'fr-ca' => 'কানাডীয় ফরাসি',
'fr-ch' => 'সুইস ফরাসি',
+ 'frc' => 'কাজুন ফরাসি',
'frm' => 'মধ্য ফরাসি',
'fro' => 'প্রাচীন ফরাসি',
'frr' => 'উত্তরাঞ্চলীয় ফ্রিসিয়ান',
'frs' => 'পূর্ব ফ্রিসিয়',
'fur' => 'ফ্রিউলিয়ান',
- 'fy' => 'পশ্চিম ফ্রিসিয়',
+ 'fy' => 'পশ্চিম ফ্রিসিয়ান',
'ga' => 'আইরিশ',
'gaa' => 'গা',
'gag' => 'গাগাউজ',
+ 'gan' => 'gan',
'gay' => 'গায়ো',
'gba' => 'বায়া',
'gd' => 'স্কটস-গ্যেলিক',
@@ -167,6 +172,7 @@ $languageNames = array(
'gwi' => 'গওইচ্’ইন',
'ha' => 'হাউসা',
'hai' => 'হাইডা',
+ 'hak' => 'hak',
'haw' => 'হাওয়াইয়ান',
'he' => 'হিব্রু',
'hi' => 'হিন্দি',
@@ -176,13 +182,15 @@ $languageNames = array(
'ho' => 'হিরি মোতু',
'hr' => 'ক্রোয়েশীয়',
'hsb' => 'উচ্চ সোর্বিয়ান',
- 'ht' => 'হাইতিয়ান',
+ 'hsn' => 'Xiang চীনা',
+ 'ht' => 'হাইতিয়ান ক্রেওল',
'hu' => 'হাঙ্গেরীয়',
'hup' => 'হুপা',
'hy' => 'আর্মেনিয়',
'hz' => 'হেরেরো',
'ia' => 'ইন্টারলিঙ্গুয়া',
'iba' => 'ইবান',
+ 'ibb' => 'ইবিবিও',
'id' => 'ইন্দোনেশীয়',
'ie' => 'ইন্টারলিঙ্গ',
'ig' => 'ইগ্‌বো',
@@ -192,7 +200,7 @@ $languageNames = array(
'inh' => 'ইঙ্গুশ',
'io' => 'ইডো',
'is' => 'আইসল্যান্ডীয়',
- 'it' => 'ইতালীয়',
+ 'it' => 'ইতালিয়',
'iu' => 'ইনুক্টিটুট',
'ja' => 'জাপানি',
'jbo' => 'লোজবান',
@@ -200,7 +208,7 @@ $languageNames = array(
'jmc' => 'মাকামে',
'jpr' => 'জুদেও ফার্সি',
'jrb' => 'জুদেও আরবি',
- 'jv' => 'জাভানি',
+ 'jv' => 'জাভানিজ',
'ka' => 'জর্জিয়ান',
'kaa' => 'কারা-কাল্পাক',
'kab' => 'কাবাইলে',
@@ -217,14 +225,15 @@ $languageNames = array(
'kha' => 'খাশি',
'kho' => 'খোটানিজ',
'khq' => 'কোয়রা চীনি',
- 'ki' => 'কিকু্ইয়ু',
+ 'ki' => 'কিকুয়ু',
'kj' => 'কোয়ানিয়ামা',
'kk' => 'কাজাখ',
+ 'kkj' => 'কাকো',
'kl' => 'ক্যালাল্লিসুট',
'kln' => 'কালেনজিন',
'km' => 'খমের',
'kmb' => 'কিম্বুন্দু',
- 'kn' => 'কান্নাড়ী',
+ 'kn' => 'কন্নড়',
'ko' => 'কোরিয়ান',
'koi' => 'কমি-পারমিআক',
'kok' => 'কোঙ্কানি',
@@ -234,16 +243,17 @@ $languageNames = array(
'krc' => 'কারচে-বাল্কার',
'krl' => 'কারেলিয়ান',
'kru' => 'কুরুখ',
- 'ks' => 'কাশ্মীরী',
+ 'ks' => 'কাশ্মীরি',
'ksb' => 'শাম্বালা',
'ksf' => 'বাফিয়া',
- 'ku' => 'কুর্দি',
+ 'ksh' => 'কলোনিয়ান',
+ 'ku' => 'কুর্দিশ',
'kum' => 'কুমিক',
'kut' => 'কুটেনাই',
'kv' => 'কোমি',
'kw' => 'কর্ণিশ',
'ky' => 'কির্গিজ',
- 'la' => 'লাটিন',
+ 'la' => 'লাতিন',
'lad' => 'লাডিনো',
'lag' => 'লাঙ্গি',
'lah' => 'লান্ডা',
@@ -256,14 +266,16 @@ $languageNames = array(
'ln' => 'লিঙ্গালা',
'lo' => 'লাও',
'lol' => 'মোঙ্গো',
+ 'lou' => 'লুইসিয়ানা ক্রেওল',
'loz' => 'লোজি',
+ 'lrc' => 'উত্তর লুরি',
'lt' => 'লিথুয়েনীয়',
'lu' => 'লুবা-কাটাঙ্গা',
'lua' => 'লুবা-লুলুয়া',
'lui' => 'লুইসেনো',
'lun' => 'লুন্ডা',
'luo' => 'লুয়ো',
- 'lus' => 'লুশাই',
+ 'lus' => 'মিজো',
'luy' => 'লুইয়া',
'lv' => 'লাত্‌ভীয়',
'mad' => 'মাদুরেসে',
@@ -284,7 +296,7 @@ $languageNames = array(
'mh' => 'মার্শালিজ',
'mi' => 'মাওরি',
'mic' => 'মিকম্যাক',
- 'min' => 'মিনাঙ্গ্‌কাবাউ',
+ 'min' => 'মিনাংকাবাউ',
'mk' => 'ম্যাসিডোনীয়',
'ml' => 'মালায়ালাম',
'mn' => 'মঙ্গোলিয়',
@@ -296,27 +308,31 @@ $languageNames = array(
'ms' => 'মালয়',
'mt' => 'মল্টিয়',
'mua' => 'মুদাঙ্গ',
- 'mul' => 'বহুগুণিতক ভাষাসমূহ',
+ 'mul' => 'একাধিক ভাষা',
'mus' => 'ক্রিক',
'mwl' => 'মিরান্ডিজ',
'mwr' => 'মারোয়ারি',
'my' => 'বর্মি',
'myv' => 'এরজিয়া',
+ 'mzn' => 'মাজানদেরানি',
'na' => 'নাউরু',
+ 'nan' => 'nan',
'nap' => 'নেয়াপোলিটান',
'naq' => 'নামা',
'nb' => 'নরওয়েজিয়ান বোকমাল',
'nd' => 'উত্তর এন্দেবিলি',
'nds' => 'নিম্ন জার্মানি',
+ 'nds-nl' => 'লো স্যাক্সন',
'ne' => 'নেপালী',
'new' => 'নেওয়ারি',
'ng' => 'এন্দোঙ্গা',
'nia' => 'নিয়াস',
'niu' => 'নিউয়ান',
- 'nl' => 'ডাচ',
+ 'nl' => 'ওলন্দাজ',
'nl-be' => 'ফ্লেমিশ',
'nmg' => 'কোয়াসিও',
'nn' => 'নরওয়েজীয়ান নিনর্স্ক',
+ 'nnh' => 'নিঙ্গেম্বুন',
'no' => 'নরওয়েজীয়',
'nog' => 'নোগাই',
'non' => 'প্রাচীন নর্স',
@@ -330,7 +346,7 @@ $languageNames = array(
'nym' => 'ন্যায়ামওয়েজি',
'nyn' => 'ন্যায়াঙ্কোলে',
'nyo' => 'ন্যোরো',
- 'nzi' => 'এন্.জিমা',
+ 'nzi' => 'এনজিমা',
'oc' => 'অক্সিটান',
'oj' => 'ওজিবওয়া',
'om' => 'অরোমো',
@@ -344,13 +360,15 @@ $languageNames = array(
'pam' => 'পাম্পাঙ্গা',
'pap' => 'পাপিয়ামেন্টো',
'pau' => 'পালায়ুয়ান',
+ 'pcm' => 'নাইজেরিয় পিজিন',
'peo' => 'প্রাচীন ফার্সি',
'phn' => 'ফোনিশীয়ান',
'pi' => 'পালি',
'pl' => 'পোলিশ',
'pon' => 'পোহ্নপেইয়ান',
+ 'prg' => 'প্রুশিয়ান',
'pro' => 'প্রাচীন প্রোভেনসাল',
- 'ps' => 'পাশ্তু',
+ 'ps' => 'পুশতু',
'pt' => 'পর্তুগীজ',
'pt-br' => 'ব্রাজিলের পর্তুগীজ',
'pt-pt' => 'ইউরোপের পর্তুগীজ',
@@ -369,18 +387,20 @@ $languageNames = array(
'rup' => 'আরমেনিয়ান',
'rw' => 'কিনয়ারোয়ান্ডা',
'rwk' => 'রাওয়া',
- 'sa' => 'সংষ্কৃত',
+ 'sa' => 'সংস্কৃত',
'sad' => 'স্যান্ডাওয়ে',
- 'sah' => 'ইয়াকুট',
+ 'sah' => 'শাখা',
'sam' => 'সামারিটান আরামিক',
'saq' => 'সামবুরু',
'sas' => 'সাসাক',
'sat' => 'সাঁওতালি',
+ 'sba' => 'ন্যাগাম্বে',
'sbp' => 'সাঙ্গু',
'sc' => 'সার্ডিনিয়ান',
'scn' => 'সিসিলিয়ান',
'sco' => 'স্কটস',
'sd' => 'সিন্ধি',
+ 'sdh' => 'দক্ষিণ কুর্দিশ',
'se' => 'উত্তরাঞ্চলীয় সামি',
'seh' => 'সেনা',
'sel' => 'সেল্কুপ',
@@ -401,13 +421,14 @@ $languageNames = array(
'sms' => 'স্কোল্ট সামি',
'sn' => 'শোনা',
'snk' => 'সোনিঙ্কে',
- 'so' => 'সোমালী',
+ 'so' => 'সোমালি',
'sog' => 'সোগডিয়ান',
'sq' => 'আলবেনীয়',
'sr' => 'সার্বীয়',
'srn' => 'স্রানান টোঙ্গো',
'srr' => 'সেরের',
'ss' => 'সোয়াতি',
+ 'ssy' => 'সাহো',
'st' => 'দক্ষিন সোথো',
'su' => 'সুদানী',
'suk' => 'সুকুমা',
@@ -415,12 +436,12 @@ $languageNames = array(
'sux' => 'সুমেরীয়',
'sv' => 'সুইডিশ',
'sw' => 'সোয়াহিলি',
+ 'sw-cd' => 'কঙ্গো সোয়াহিলি',
'swb' => 'কমোরিয়ান',
- 'swc' => 'কঙ্গো সোয়াহিলি',
'syc' => 'প্রাচীন সিরিও',
'syr' => 'সিরিয়াক',
'ta' => 'তামিল',
- 'te' => 'তেলেগু',
+ 'te' => 'তেলুগু',
'tem' => 'টাইম্নে',
'teo' => 'তেসো',
'ter' => 'তেরেনো',
@@ -441,6 +462,7 @@ $languageNames = array(
'tog' => 'নায়াসা টোঙ্গা',
'tpi' => 'টোক পিসিন',
'tr' => 'তুর্কী',
+ 'trv' => 'তারোকো',
'ts' => 'সঙ্গা',
'tsi' => 'সিমশিয়ান',
'tt' => 'তাতার',
@@ -466,16 +488,21 @@ $languageNames = array(
'vot' => 'ভোটিক',
'vun' => 'ভুঞ্জো',
'wa' => 'ওয়ালুন',
+ 'wae' => 'ওয়ালসের',
'wal' => 'ওয়ালামো',
'war' => 'ওয়ারে',
'was' => 'ওয়াশো',
+ 'wbp' => 'ওয়ার্লপিরি',
'wo' => 'উওলোফ',
+ 'wuu' => 'Wu চীনা',
'xal' => 'কাল্মইক',
'xh' => 'জোসা',
'xog' => 'সোগা',
'yao' => 'ইয়াও',
'yap' => 'ইয়াপেসে',
- 'yi' => 'য়িদ্দিশ',
+ 'yav' => 'ইয়াঙ্গবেন',
+ 'ybb' => 'ইয়েম্বা',
+ 'yi' => 'ইয়েদ্দিশ',
'yo' => 'ইওরুবা',
'yue' => 'ক্যানটোনীজ',
'za' => 'ঝু্য়াঙ',
@@ -490,9 +517,9 @@ $languageNames = array(
'zun' => 'জুনি',
'zxx' => 'ভাষাভিত্তিক বিষয়বস্তু নেই',
'zza' => 'জাজা',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'ADP' => 'এ্যান্ডোরান পেসেতা',
'AED' => 'সংযুক্ত আরব আমিরাত দিরহাম',
'AFA' => 'আফগানি (১৯২৭–২০০২)',
@@ -513,14 +540,14 @@ $currencyNames = array(
'AZM' => 'আজারবাইজান মানাত (১৯৯৩–২০০৬)',
'AZN' => 'আজারবাইজান মানাত',
'BAD' => 'বসনিয়া এবং হার্জেগোভিনা দিনার',
- 'BAM' => 'বসনিয়া এবং হার্জেগোভিনা মার্ক',
+ 'BAM' => 'বসনিয়া এবং হার্জেগোভিনা বিনিমেয় মার্ক',
'BBD' => 'বার্বেডোজ ডলার',
'BDT' => 'বাংলাদেশী টাকা',
'BEC' => 'বেলজিয়ান ফ্রাঙ্ক (রূপান্তরযোগ্য)',
'BEF' => 'বেলজিয়ান ফ্রাঙ্ক',
'BEL' => 'বেলজিয়ান ফ্রাঙ্ক (আর্থিক)',
'BGL' => 'বুলগেরীয় হার্ড লেভ',
- 'BGN' => 'বুলগেরীয় নিউ লেভ',
+ 'BGN' => 'বুলগেরীয় লেভ',
'BHD' => 'বাহরাইনি দিনার',
'BIF' => 'বুরুন্ডি ফ্রাঙ্ক',
'BMD' => 'বারমিউডান ডলার',
@@ -539,15 +566,17 @@ $currencyNames = array(
'BUK' => 'বর্মি কিয়াৎ',
'BWP' => 'বতসোয়ানা পুলা',
'BYB' => 'বেলারুশিয়ান নিউ রুবেল (১৯৯৪–১৯৯৯)',
- 'BYR' => 'বেলারুশিয়ান রুবেল',
+ 'BYN' => 'বেলারুশিয়ান রুবেল',
+ 'BYR' => 'বেলারুশিয়ান রুবেল (2000–2016)',
'BZD' => 'বেলিজ ডলার',
'CAD' => 'কানাডিয়ান ডলার',
'CDF' => 'কঙ্গোলিস ফ্র্যাঙ্ক',
'CHE' => 'সুইজারল্যান্ড ইউরো',
- 'CHF' => 'সুইস ফ্রাঙ্ক',
+ 'CHF' => 'সুইস ফ্রাঁ',
'CHW' => 'সুইজারল্যান্ড ফ্রাঙ্ক',
'CLF' => 'চিলিয়ান উনিদাদেস দি ফোমেন্তো',
'CLP' => 'চিলি পেসো',
+ 'CNH' => 'চাইনিজ ইউয়ান (অফশোর)',
'CNY' => 'চীনা য়ুয়ান',
'COP' => 'কলোম্বিয়ান পেসো',
'COU' => 'উনিদাদ দি ভ্যালোর রিয়েল',
@@ -558,11 +587,11 @@ $currencyNames = array(
'CUP' => 'কিউবান পেসো',
'CVE' => 'কেপ ভার্দে এসকুডো',
'CYP' => 'সাইপ্রাস পাউন্ড',
- 'CZK' => 'চেকোস্লোভাক কোরুনা',
+ 'CZK' => 'চেক প্রজাতন্ত্র কোরুনা',
'DDM' => 'পূর্ব জার্মান মার্ক',
'DEM' => 'ডয়চ্ মার্ক',
'DJF' => 'জিবুতি ফ্রাঙ্ক',
- 'DKK' => 'ড্যানিশ ক্রৌন',
+ 'DKK' => 'ড্যানিশ ক্রোন',
'DOP' => 'ডোমিনিকান পেসো',
'DZD' => 'আলজেরীয় দিনার',
'ECS' => 'ইকুয়াডোর সুক্রে',
@@ -579,7 +608,7 @@ $currencyNames = array(
'FJD' => 'ফিজি ডলার',
'FKP' => 'ফকল্যান্ড দ্বীপপুঞ্জ পাউন্ড',
'FRF' => 'ফরাসি ফ্রাঙ্ক',
- 'GBP' => 'ব্রিটিশ পাউন্ড স্টার্লিং',
+ 'GBP' => 'ব্রিটিশ পাউন্ড',
'GEK' => 'জর্জিয়ান কুপন লারিট',
'GEL' => 'জর্জিয়ান লারি',
'GHC' => 'ঘানা সেডি (১৯৭৯–২০০৭)',
@@ -607,9 +636,9 @@ $currencyNames = array(
'INR' => 'ভারতীয় রুপি',
'IQD' => 'ইরাকি দিনার',
'IRR' => 'ইরানিয়ান রিয়াল',
- 'ISK' => 'আইসল্যান্ড ক্রৌন',
+ 'ISK' => 'আইসল্যান্ডীয় ক্রোনা',
'ITL' => 'ইতালীয় লিরা',
- 'JMD' => 'জ্যামাইকান ডলার',
+ 'JMD' => 'জামাইকান ডলার',
'JOD' => 'জর্ডানিয়ান দিনার',
'JPY' => 'জাপানি ইয়েন',
'KES' => 'কেনিয়ান শিলিং',
@@ -620,11 +649,11 @@ $currencyNames = array(
'KRW' => 'দক্ষিণ কোরিয়ান ওন',
'KWD' => 'কুয়েতি দিনার',
'KYD' => 'কেম্যান দ্বীপপুঞ্জের ডলার',
- 'KZT' => 'কাজাক্সটান টেঙ্গে',
+ 'KZT' => 'কাজাখাস্তানি টেঙ্গে',
'LAK' => 'লেউশান কিপ',
'LBP' => 'লেবানিজ পাউন্ড',
'LKR' => 'শ্রীলঙ্কান রুপি',
- 'LRD' => 'লাইবেরিয়ান ডলার',
+ 'LRD' => 'লিবেরিয়ান ডলার',
'LSL' => 'লেসুটু লোটি',
'LTL' => 'লিথুইনিয়ান লিটা',
'LTT' => 'লিথুইনিয়ান টালোন্যাস',
@@ -633,7 +662,7 @@ $currencyNames = array(
'LUL' => 'লুক্সেমবার্গ ফাইনেনশিয়াল ফ্রাঙ্ক',
'LVL' => 'ল্যাটভিয়ান ল্যাট্‌স',
'LVR' => 'ল্যাটভিয়ান রুবল',
- 'LYD' => 'লিবিয়ান ডলার',
+ 'LYD' => 'লিবিয়ান দিনার',
'MAD' => 'মোরোক্কান দিরহাম',
'MAF' => 'মোরোক্কান ফ্রাঙ্ক',
'MDL' => 'মোল্ডোভান লেয়ু',
@@ -644,7 +673,8 @@ $currencyNames = array(
'MMK' => 'মায়ানমার কিয়াত',
'MNT' => 'মঙ্গোলিয়ান তুগরিক',
'MOP' => 'ম্যাক্যাও পাটাকা',
- 'MRO' => 'মৌরিতানিয়ান ওউগুইয়া',
+ 'MRO' => 'মৌরিতানিয়ান ওউগুইয়া (১৯৭৩–২০১৭)',
+ 'MRU' => 'মৌরিতানিয়ান ওউগুইয়া',
'MTL' => 'মাল্টা লিরা',
'MTP' => 'মাল্টা পাউন্ড',
'MUR' => 'মৌরিতানিয়ান রুপি',
@@ -662,22 +692,22 @@ $currencyNames = array(
'NIC' => 'নিকারাগুয়ান কর্ডোবা (১৯৮৮–১৯৯১)',
'NIO' => 'নিকারাগুয়ান কর্ডোবা',
'NLG' => 'নেদারল্যান্ড গুল্ডের',
- 'NOK' => 'নরওয়ে ক্রৌন',
+ 'NOK' => 'নরওয়েজিয়ান ক্রোন',
'NPR' => 'নেপালি রুপি',
'NZD' => 'নিউজিল্যান্ড ডলার',
'OMR' => 'ওমানি রিয়াল',
'PAB' => 'পানামা বেলবোয়া',
'PEI' => 'পেরুভিয়ান ইন্তি',
- 'PEN' => 'পেরুভিয়ান সোল নুয়েভো',
- 'PES' => 'পেরুভিয়ান সোল',
+ 'PEN' => 'পেরুভিয়ান সোল',
+ 'PES' => 'পেরুভিয়ান সোল (1863–1965)',
'PGK' => 'পাপুয়া নিউ গিনিয়ান কিনা',
'PHP' => 'ফিলিপাইন পেসো',
'PKR' => 'পাকিস্তানি রুপি',
'PLN' => 'পোলিশ জ্লোটি',
'PLZ' => 'পোলিশ জ্লোটি (১৯৫০–১৯৯৫)',
'PTE' => 'পর্তুগিজ এসকুডো',
- 'PYG' => 'প্যারগুয়ান',
- 'QAR' => 'কাতার রিয়্যাল',
+ 'PYG' => 'প্যারাগুয়ান গুয়ারানি',
+ 'QAR' => 'কাতার রিয়াল',
'RHD' => 'রোডেশিয়ান ডলার',
'ROL' => 'প্রাচীন রুমানিয়া লেয়ু',
'RON' => 'রুমানিয়া লেয়ু',
@@ -685,7 +715,7 @@ $currencyNames = array(
'RUB' => 'রাশিয়ান রুবেল',
'RUR' => 'রাশিয়ান রুবল (১৯৯১–১৯৯৮)',
'RWF' => 'রুয়ান্ডান ফ্রাঙ্ক',
- 'SAR' => 'সৌদি রিয়্যাল',
+ 'SAR' => 'সৌদি রিয়াল',
'SBD' => 'সলোমন দ্বীপপুঞ্জ ডলার',
'SCR' => 'সেয়চেল্লোইস রুপি',
'SDD' => 'প্রাচীন সুদানি দিনার',
@@ -701,7 +731,8 @@ $currencyNames = array(
'SRD' => 'সুরিনাম ডলার',
'SRG' => 'সুরিনাম গিল্ডার',
'SSP' => 'দক্ষিণ সুদানি পাউন্ড',
- 'STD' => 'সাও টোমে এবং প্রিন্সিপে ডোবরা',
+ 'STD' => 'সাও টোমে এবং প্রিন্সিপে ডোবরা (১৯৭৭–২০১৭)',
+ 'STN' => 'সাও টোমে এবং প্রিন্সিপে ডোবরা',
'SUR' => 'সোভিয়েত রুবল',
'SVC' => 'এল স্যালভোডোর কোলোন',
'SYP' => 'সিরিয়ান পাউন্ড',
@@ -710,7 +741,7 @@ $currencyNames = array(
'TJR' => 'তাজিকিস্তান রুবল',
'TJS' => 'তাজিকিস্তান সোমোনি',
'TMM' => 'তুর্কমেনিস্টানি মানাত',
- 'TMT' => 'তুর্কমেনিস্তান নতুন মানত',
+ 'TMT' => 'তুর্কমেনিস্তান মানত',
'TND' => 'তিউনেশিয়ান দিনার',
'TOP' => 'টোঙ্গা পা’আঙ্গা',
'TPE' => 'তিমুর এসকুডো',
@@ -731,11 +762,12 @@ $currencyNames = array(
'UYU' => 'উরুগুয়ে পেসো',
'UZS' => 'উজবেকিস্তানি সোম',
'VEB' => 'ভেনিজুয়েলান বলিভার (১৮৭১–২০০৮)',
- 'VEF' => 'ভেনিজুয়েলীয় বলিভার',
+ 'VEF' => 'ভেনিজুয়েলীয় বলিভার (২০০৮–২০১৮)',
+ 'VES' => 'ভেনিজুয়েলীয় বলিভার',
'VND' => 'ভিয়েতনামি ডঙ্গ',
'VUV' => 'ভানুয়াতু ভাতু',
'WST' => 'সামোয়ান টালা',
- 'XAF' => 'সিএফএ ফ্র্যাঙ্ক বিইএসি',
+ 'XAF' => 'মধ্য আফ্রিকান [CFA] ফ্র্যাঙ্ক',
'XAG' => 'সিলভার',
'XAU' => 'গোল্ড',
'XBB' => 'ইউরোপীয় আর্থিক একক',
@@ -743,7 +775,7 @@ $currencyNames = array(
'XEU' => 'ইউরোপীয় মুদ্রা একক',
'XFO' => 'ফরাসি গোল্ড ফ্রাঙ্ক',
'XFU' => 'ফরাসি ইউআইসি - ফ্রাঙ্ক',
- 'XOF' => 'সিএফএ ফ্র্যাঙ্ক বিসিইএও',
+ 'XOF' => 'পশ্চিম আফ্রিকান [CFA] ফ্র্যাঙ্ক',
'XPD' => 'প্যালেডিয়াম',
'XPF' => 'সিএফপি ফ্র্যাঙ্ক',
'XPT' => 'প্লাটিনাম',
@@ -762,9 +794,9 @@ $currencyNames = array(
'ZWD' => 'জিম্বাবুয়ে ডলার (১৯৮০–২০০৮)',
'ZWL' => 'জিম্বাবুয়ে ডলার (২০০৯)',
'ZWR' => 'জিম্বাবুয়ে ডলার (২০০৮)',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'AED' => 'AED',
'AFN' => 'AFN',
'ALL' => 'ALL',
@@ -788,12 +820,14 @@ $currencySymbols = array(
'BSD' => 'BSD',
'BTN' => 'BTN',
'BWP' => 'BWP',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CA$',
'CDF' => 'CDF',
'CHF' => 'CHF',
'CLP' => 'CLP',
+ 'CNH' => 'CNH',
'CNY' => 'CN¥',
'COP' => 'COP',
'CRC' => 'CRC',
@@ -857,6 +891,7 @@ $currencySymbols = array(
'MNT' => 'MNT',
'MOP' => 'MOP',
'MRO' => 'MRO',
+ 'MRU' => 'MRU',
'MUR' => 'MUR',
'MVR' => 'MVR',
'MWK' => 'MWK',
@@ -894,6 +929,7 @@ $currencySymbols = array(
'SRD' => 'SRD',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'STN',
'SYP' => 'SYP',
'SZL' => 'SZL',
'THB' => '฿',
@@ -911,6 +947,7 @@ $currencySymbols = array(
'UYU' => 'UYU',
'UZS' => 'UZS',
'VEF' => 'VEF',
+ 'VES' => 'VES',
'VND' => '₫',
'VUV' => 'VUV',
'WST' => 'WST',
@@ -921,18 +958,17 @@ $currencySymbols = array(
'YER' => 'YER',
'ZAR' => 'ZAR',
'ZMW' => 'ZMW',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'অ্যাসসেনশন আইল্যান্ড',
- 'AD' => 'এ্যান্ডোরা',
+ 'AD' => 'আন্ডোরা',
'AE' => 'সংযুক্ত আরব আমিরাত',
'AF' => 'আফগানিস্তান',
- 'AG' => 'এন্টিগুয়া ও বারবুডা',
+ 'AG' => 'অ্যান্টিগুয়া ও বারবুডা',
'AI' => 'এ্যাঙ্গুইলা',
- 'AL' => 'আলব্যানিয়া',
+ 'AL' => 'আলবেনিয়া',
'AM' => 'আর্মেনিয়া',
- 'AN' => 'নেদারল্যান্ডস এ্যান্টিলিস',
'AO' => 'অ্যাঙ্গোলা',
'AQ' => 'অ্যান্টার্কটিকা',
'AR' => 'আর্জেন্টিনা',
@@ -954,35 +990,35 @@ $countryNames = array(
'BL' => 'সেন্ট বারথেলিমি',
'BM' => 'বারমুডা',
'BN' => 'ব্রুনেই',
- 'BO' => 'বোলিভিয়া',
+ 'BO' => 'বলিভিয়া',
'BQ' => 'ক্যারিবিয়ান নেদারল্যান্ডস',
'BR' => 'ব্রাজিল',
'BS' => 'বাহামা দ্বীপপুঞ্জ',
'BT' => 'ভুটান',
'BV' => 'বোভেট দ্বীপ',
'BW' => 'বতসোয়ানা',
- 'BY' => 'বেলোরুশিয়া',
+ 'BY' => 'বেলারুশ',
'BZ' => 'বেলিজ',
'CA' => 'কানাডা',
- 'CC' => 'কোকোস (কিলিং)দ্বীপপুঞ্জ',
+ 'CC' => 'কোকোস (কিলিং) দ্বীপপুঞ্জ',
'CD' => 'কঙ্গো-কিনশাসা',
'CF' => 'মধ্য আফ্রিকার প্রজাতন্ত্র',
'CG' => 'কঙ্গো - ব্রাজাভিল',
'CH' => 'সুইজারল্যান্ড',
- 'CI' => 'আইভরি কোস্ট',
+ 'CI' => 'কোত দিভোয়ার',
'CK' => 'কুক দ্বীপপুঞ্জ',
'CL' => 'চিলি',
'CM' => 'ক্যামেরুন',
'CN' => 'চীন',
- 'CO' => 'কোলোম্বিয়া',
+ 'CO' => 'কলম্বিয়া',
'CP' => 'ক্লিপারটন আইল্যান্ড',
'CR' => 'কোস্টারিকা',
'CU' => 'কিউবা',
'CV' => 'কেপভার্দে',
- 'CW' => 'কিউরাসাও',
+ 'CW' => 'কুরাসাও',
'CX' => 'ক্রিসমাস দ্বীপ',
'CY' => 'সাইপ্রাস',
- 'CZ' => 'চেক প্রজাতন্ত্র',
+ 'CZ' => 'চেচিয়া',
'DE' => 'জার্মানি',
'DG' => 'দিয়েগো গার্সিয়া',
'DJ' => 'জিবুতি',
@@ -997,8 +1033,9 @@ $countryNames = array(
'EH' => 'পশ্চিম সাহারা',
'ER' => 'ইরিত্রিয়া',
'ES' => 'স্পেন',
- 'ET' => 'ইফিওপিয়া',
+ 'ET' => 'ইথিওপিয়া',
'EU' => 'ইউরোপীয় ইউনিয়ন',
+ 'EZ' => 'ইউরোজোন',
'FI' => 'ফিনল্যান্ড',
'FJ' => 'ফিজি',
'FK' => 'ফকল্যান্ড দ্বীপপুঞ্জ',
@@ -1006,11 +1043,11 @@ $countryNames = array(
'FO' => 'ফ্যারও দ্বীপপুঞ্জ',
'FR' => 'ফ্রান্স',
'GA' => 'গ্যাবন',
- 'GB' => 'ইউ. কে',
- 'GD' => 'গ্রেনেডা',
+ 'GB' => 'ইউ কে',
+ 'GD' => 'গ্রেনাডা',
'GE' => 'জর্জিয়া',
'GF' => 'ফরাসী গায়ানা',
- 'GG' => 'গ্রাঞ্জি',
+ 'GG' => 'গুয়ার্নসি',
'GH' => 'ঘানা',
'GI' => 'জিব্রাল্টার',
'GL' => 'গ্রীনল্যান্ড',
@@ -1020,33 +1057,33 @@ $countryNames = array(
'GQ' => 'নিরক্ষীয় গিনি',
'GR' => 'গ্রীস',
'GS' => 'দক্ষিণ জর্জিয়া ও দক্ষিণ স্যান্ডউইচ দ্বীপপুঞ্জ',
- 'GT' => 'গোয়াতেমালা',
+ 'GT' => 'গুয়াতেমালা',
'GU' => 'গুয়াম',
'GW' => 'গিনি-বিসাউ',
'GY' => 'গিয়ানা',
'HK' => 'হংকং',
- 'HM' => 'হার্ড দ্বীপ এবং ম্যাকডোনাল্ড দ্বীপপুঞ্জ',
- 'HN' => 'হণ্ডুরাস',
+ 'HM' => 'হার্ড এবং ম্যাকডোনাল্ড দ্বীপপুঞ্জ',
+ 'HN' => 'হন্ডুরাস',
'HR' => 'ক্রোয়েশিয়া',
'HT' => 'হাইতি',
'HU' => 'হাঙ্গেরি',
'IC' => 'ক্যানারি দ্বীপপুঞ্জ',
'ID' => 'ইন্দোনেশিয়া',
'IE' => 'আয়ারল্যান্ড',
- 'IL' => 'ইস্রায়েল',
+ 'IL' => 'ইজরায়েল',
'IM' => 'আইল অফ ম্যান',
'IN' => 'ভারত',
'IO' => 'ব্রিটিশ ভারত মহাসাগরীয় অঞ্চল',
'IQ' => 'ইরাক',
'IR' => 'ইরান',
'IS' => 'আইসল্যান্ড',
- 'IT' => 'ইতালী',
+ 'IT' => 'ইতালি',
'JE' => 'জার্সি',
'JM' => 'জামাইকা',
'JO' => 'জর্ডন',
'JP' => 'জাপান',
'KE' => 'কেনিয়া',
- 'KG' => 'কির্গিজিয়া',
+ 'KG' => 'কিরগিজিস্তান',
'KH' => 'কম্বোডিয়া',
'KI' => 'কিরিবাতি',
'KM' => 'কমোরোস',
@@ -1055,7 +1092,7 @@ $countryNames = array(
'KR' => 'দক্ষিণ কোরিয়া',
'KW' => 'কুয়েত',
'KY' => 'কেম্যান দ্বীপপুঞ্জ',
- 'KZ' => 'কাজাকস্থান',
+ 'KZ' => 'কাজাখস্তান',
'LA' => 'লাওস',
'LB' => 'লেবানন',
'LC' => 'সেন্ট লুসিয়া',
@@ -1069,7 +1106,7 @@ $countryNames = array(
'LY' => 'লিবিয়া',
'MA' => 'মোরক্কো',
'MC' => 'মোনাকো',
- 'MD' => 'মোল্দাভিয়া',
+ 'MD' => 'মলডোভা',
'ME' => 'মন্টিনিগ্রো',
'MF' => 'সেন্ট মার্টিন',
'MG' => 'মাদাগাস্কার',
@@ -1093,7 +1130,7 @@ $countryNames = array(
'NA' => 'নামিবিয়া',
'NC' => 'নিউ ক্যালেডোনিয়া',
'NE' => 'নাইজার',
- 'NF' => 'নিরফোক দ্বীপ',
+ 'NF' => 'নরফোক দ্বীপ',
'NG' => 'নাইজেরিয়া',
'NI' => 'নিকারাগুয়া',
'NL' => 'নেদারল্যান্ডস',
@@ -1104,7 +1141,7 @@ $countryNames = array(
'NZ' => 'নিউজিল্যান্ড',
'OM' => 'ওমান',
'PA' => 'পানামা',
- 'PE' => 'পিরু',
+ 'PE' => 'পেরু',
'PF' => 'ফরাসী পলিনেশিয়া',
'PG' => 'পাপুয়া নিউ গিনি',
'PH' => 'ফিলিপাইন',
@@ -1120,7 +1157,7 @@ $countryNames = array(
'QA' => 'কাতার',
'QO' => 'আউটলাইনিং ওসানিয়া',
'RE' => 'রিইউনিয়ন',
- 'RO' => 'রুমানিয়া',
+ 'RO' => 'রোমানিয়া',
'RS' => 'সার্বিয়া',
'RU' => 'রাশিয়া',
'RW' => 'রুয়ান্ডা',
@@ -1133,13 +1170,13 @@ $countryNames = array(
'SH' => 'সেন্ট হেলেনা',
'SI' => 'স্লোভানিয়া',
'SJ' => 'স্বালবার্ড ও জান মেয়েন',
- 'SK' => 'শ্লোভাকিয়া',
- 'SL' => 'সিয়েরালিওন',
+ 'SK' => 'স্লোভাকিয়া',
+ 'SL' => 'সিয়েরা লিওন',
'SM' => 'সান মারিনো',
'SN' => 'সেনেগাল',
'SO' => 'সোমালিয়া',
'SR' => 'সুরিনাম',
- 'SS' => 'দক্ষিন সুদান',
+ 'SS' => 'দক্ষিণ সুদান',
'ST' => 'সাওটোমা ও প্রিন্সিপি',
'SV' => 'এল সালভেদর',
'SX' => 'সিন্ট মার্টেন',
@@ -1151,28 +1188,29 @@ $countryNames = array(
'TF' => 'ফরাসী দক্ষিণাঞ্চল',
'TG' => 'টোগো',
'TH' => 'থাইল্যান্ড',
- 'TJ' => 'তাজিকস্থান',
+ 'TJ' => 'তাজিকিস্তান',
'TK' => 'টোকেলাউ',
'TL' => 'তিমুর-লেস্তে',
'TM' => 'তুর্কমেনিস্তান',
- 'TN' => 'তিউনিশিয়া',
+ 'TN' => 'তিউনিসিয়া',
'TO' => 'টোঙ্গা',
'TR' => 'তুরস্ক',
'TT' => 'ত্রিনিনাদ ও টোব্যাগো',
'TV' => 'টুভালু',
'TW' => 'তাইওয়ান',
'TZ' => 'তাঞ্জানিয়া',
- 'UA' => 'ইউক্রেইন',
+ 'UA' => 'ইউক্রেন',
'UG' => 'উগান্ডা',
'UM' => 'যুক্তরাষ্ট্রের পার্শ্ববর্তী দ্বীপপুঞ্জ',
+ 'UN' => 'ইউএন',
'US' => 'ইউ এস',
'UY' => 'উরুগুয়ে',
'UZ' => 'উজবেকিস্তান',
'VA' => 'ভ্যাটিকান সিটি',
- 'VC' => 'সেন্ট ভিনসেন্ট ও দ্যা গ্রেনাডিনস',
+ 'VC' => 'সেন্ট ভিনসেন্ট ও গ্রেনাডিনস',
'VE' => 'ভেনেজুয়েলা',
'VG' => 'ব্রিটিশ ভার্জিন দ্বীপপুঞ্জ',
- 'VI' => 'মার্কিন ভার্জিন দ্বীপপুঞ্জ',
+ 'VI' => 'মার্কিন যুক্তরাষ্ট্রের ভার্জিন দ্বীপপুঞ্জ',
'VN' => 'ভিয়েতনাম',
'VU' => 'ভানুয়াটু',
'WF' => 'ওয়ালিস ও ফুটুনা',
@@ -1183,23 +1221,37 @@ $countryNames = array(
'ZA' => 'দক্ষিণ আফ্রিকা',
'ZM' => 'জাম্বিয়া',
'ZW' => 'জিম্বাবোয়ে',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-one' => '{0} শতাব্দী',
+ 'century-other' => '{0} শতাব্দী',
'day-future-one' => '{0} দিনের মধ্যে',
'day-future-other' => '{0} দিনের মধ্যে',
'day-narrow-future-one' => '{0} দিনের মধ্যে',
'day-narrow-future-other' => '{0} দিনের মধ্যে',
- 'day-narrow-past-one' => '{0} দিন পূর্বে',
- 'day-narrow-past-other' => '{0} দিন পূর্বে',
+ 'day-narrow-past-one' => '{0} দিন আগে',
+ 'day-narrow-past-other' => '{0} দিন আগে',
'day-one' => '{0} দিন',
'day-other' => '{0} দিন',
- 'day-past-one' => '{0} দিন পূর্বে',
- 'day-past-other' => '{0} দিন পূর্বে',
+ 'day-past-one' => '{0} দিন আগে',
+ 'day-past-other' => '{0} দিন আগে',
'day-short-future-one' => '{0} দিনের মধ্যে',
'day-short-future-other' => '{0} দিনের মধ্যে',
- 'day-short-past-one' => '{0} দিন পূর্বে',
- 'day-short-past-other' => '{0} দিন পূর্বে',
+ 'day-short-past-one' => '{0} দিন আগে',
+ 'day-short-past-other' => '{0} দিন আগে',
+ 'fri-future-one' => '{0} শুক্রবারে',
+ 'fri-future-other' => '{0} শুক্রবারে',
+ 'fri-narrow-future-one' => '{0} শুক্রবারে',
+ 'fri-narrow-future-other' => '{0} শুক্রবারে',
+ 'fri-narrow-past-one' => '{0} শুক্রবার আগে',
+ 'fri-narrow-past-other' => '{0} শুক্রবার আগে',
+ 'fri-past-one' => '{0} শুক্রবার আগে',
+ 'fri-past-other' => '{0} শুক্রবার আগে',
+ 'fri-short-future-one' => '{0} শুক্রবারে',
+ 'fri-short-future-other' => '{0} শুক্রবারে',
+ 'fri-short-past-one' => '{0} শুক্রবার আগে',
+ 'fri-short-past-other' => '{0} শুক্রবার আগে',
'hour-future-one' => '{0} ঘন্টায়',
'hour-future-other' => '{0} ঘন্টায়',
'hour-narrow-future-one' => '{0} ঘন্টায়',
@@ -1222,50 +1274,74 @@ $timeUnits = array(
'minute-future-other' => '{0} মিনিটে',
'minute-narrow-future-one' => '{0} মিনিটে',
'minute-narrow-future-other' => '{0} মিনিটে',
- 'minute-narrow-past-one' => '{0} মিনিট পূর্বে',
- 'minute-narrow-past-other' => '{0} মিনিট পূর্বে',
+ 'minute-narrow-past-one' => '{0} মিনিট আগে',
+ 'minute-narrow-past-other' => '{0} মিনিট আগে',
'minute-one' => '{0} মিনিট',
'minute-other' => '{0} মিনিট',
- 'minute-past-one' => '{0} মিনিট পূর্বে',
- 'minute-past-other' => '{0} মিনিট পূর্বে',
+ 'minute-past-one' => '{0} মিনিট আগে',
+ 'minute-past-other' => '{0} মিনিট আগে',
'minute-short-future-one' => '{0} মিনিটে',
'minute-short-future-other' => '{0} মিনিটে',
- 'minute-short-past-one' => '{0} মিনিট পূর্বে',
- 'minute-short-past-other' => '{0} মিনিট পূর্বে',
+ 'minute-short-past-one' => '{0} মিনিট আগে',
+ 'minute-short-past-other' => '{0} মিনিট আগে',
+ 'mon-future-one' => '{0} সোমবারেতে',
+ 'mon-future-other' => '{0} সোমবারেতে',
+ 'mon-narrow-future-one' => '{0} সোমবারেতে',
+ 'mon-narrow-future-other' => '{0} সোমবারেতে',
+ 'mon-narrow-past-one' => '{0} সোমবার আগে',
+ 'mon-narrow-past-other' => '{0} সোমবার আগে',
+ 'mon-past-one' => '{0} সোমবারেতে',
+ 'mon-past-other' => '{0} সোমবার আগে',
+ 'mon-short-future-one' => '{0} সোমবারেতে',
+ 'mon-short-future-other' => '{0} সোমবারেতে',
+ 'mon-short-past-one' => '{0} সোমবার আগে',
+ 'mon-short-past-other' => '{0} সোমবার আগে',
'month-future-one' => '{0} মাসে',
'month-future-other' => '{0} মাসে',
'month-narrow-future-one' => '{0} মাসে',
'month-narrow-future-other' => '{0} মাসে',
- 'month-narrow-past-one' => '{0} মাস পূর্বে',
- 'month-narrow-past-other' => '{0} মাস পূর্বে',
+ 'month-narrow-past-one' => '{0} মাস আগে',
+ 'month-narrow-past-other' => '{0} মাস আগে',
'month-one' => '{0} মাস',
'month-other' => '{0} মাস',
- 'month-past-one' => '{0} মাস পূর্বে',
- 'month-past-other' => '{0} মাস পূর্বে',
+ 'month-past-one' => '{0} মাস আগে',
+ 'month-past-other' => '{0} মাস আগে',
'month-short-future-one' => '{0} মাসে',
'month-short-future-other' => '{0} মাসে',
- 'month-short-past-one' => '{0} মাস পূর্বে',
- 'month-short-past-other' => '{0} মাস পূর্বে',
+ 'month-short-past-one' => '{0} মাস আগে',
+ 'month-short-past-other' => '{0} মাস আগে',
'nanosecond-one' => '{0} ন্যানোসেকেন্ড',
'nanosecond-other' => '{0} ন্যানোসেকেন্ড',
- 'quarter-future-one' => '{0} ত্রৈমাসিকের এক চতুর্থাংশ',
- 'quarter-future-other' => '{0} ত্রৈমাসিকের এক চতুর্থাংশ',
- 'quarter-narrow-future-one' => '{0} ত্রৈমাসিকের এক চতুর্থাংশ',
- 'quarter-narrow-future-other' => '{0} ত্রৈমাসিকের এক চতুর্থাংশ',
- 'quarter-narrow-past-one' => '{0} ত্রৈমাসিকের আগে',
- 'quarter-narrow-past-other' => '{0} ত্রৈমাসিকের আগে',
- 'quarter-past-one' => '{0} ত্রৈমাসিকের আগে',
- 'quarter-past-other' => '{0} ত্রৈমাসিকের আগে',
- 'quarter-short-future-one' => '{0} ত্রৈমাসিকের এক চতুর্থাংশ',
- 'quarter-short-future-other' => '{0} ত্রৈমাসিকের এক চতুর্থাংশ',
- 'quarter-short-past-one' => '{0} ত্রৈমাসিকের আগে',
- 'quarter-short-past-other' => '{0} ত্রৈমাসিকের আগে',
+ 'quarter-future-one' => '{0} ত্রৈমাসিকে',
+ 'quarter-future-other' => '{0} ত্রৈমাসিকে',
+ 'quarter-narrow-future-one' => '{0} ত্রৈমাসিকে',
+ 'quarter-narrow-future-other' => '{0} ত্রৈমাসিকে',
+ 'quarter-narrow-past-one' => '{0} ত্রৈমাসিক আগে',
+ 'quarter-narrow-past-other' => '{0} ত্রৈমাসিক আগে',
+ 'quarter-past-one' => '{0} ত্রৈমাসিক আগে',
+ 'quarter-past-other' => '{0} ত্রৈমাসিক আগে',
+ 'quarter-short-future-one' => '{0} ত্রৈমাসিকে',
+ 'quarter-short-future-other' => '{0} ত্রৈমাসিকে',
+ 'quarter-short-past-one' => '{0} ত্রৈমাসিক আগে',
+ 'quarter-short-past-other' => '{0} ত্রৈমাসিক আগে',
+ 'sat-future-one' => '{0} শনিবারে',
+ 'sat-future-other' => '{0} শনিবারে',
+ 'sat-narrow-future-one' => '{0} শনিবারে',
+ 'sat-narrow-future-other' => '{0} শনিবারে',
+ 'sat-narrow-past-one' => '{0} শনিবার আগে',
+ 'sat-narrow-past-other' => '{0} শনিবার আগে',
+ 'sat-past-one' => '{0} শনিবার আগে',
+ 'sat-past-other' => '{0} শনিবার আগে',
+ 'sat-short-future-one' => '{0} শনিবারে',
+ 'sat-short-future-other' => '{0} শনিবারে',
+ 'sat-short-past-one' => '{0} শনিবার আগে',
+ 'sat-short-past-other' => '{0} শনিবার আগে',
'second-future-one' => '{0} সেকেন্ডে',
'second-future-other' => '{0} সেকেন্ডে',
'second-narrow-future-one' => '{0} সেকেন্ডে',
'second-narrow-future-other' => '{0} সেকেন্ডে',
- 'second-narrow-past-one' => '{0} সেকেন্ড পূর্বে',
- 'second-narrow-past-other' => '{0} সেকেন্ড পূর্বে',
+ 'second-narrow-past-one' => '{0} সেকেন্ড আগে',
+ 'second-narrow-past-other' => '{0} সেকেন্ড আগে',
'second-one' => '{0} সেকেন্ড',
'second-other' => '{0} সেকেন্ড',
'second-past-one' => '{0} সেকেন্ড পূর্বে',
@@ -1274,20 +1350,68 @@ $timeUnits = array(
'second-short-future-other' => '{0} সেকেন্ডে',
'second-short-past-one' => '{0} সেকেন্ড পূর্বে',
'second-short-past-other' => '{0} সেকেন্ড পূর্বে',
+ 'sun-future-one' => '{0} রবিবারেতে',
+ 'sun-future-other' => '{0} রবিবারেতে',
+ 'sun-narrow-future-one' => '{0} রবিবারেতে',
+ 'sun-narrow-future-other' => '{0} রবিবারেতে',
+ 'sun-narrow-past-one' => '{0} রবিবার আগে',
+ 'sun-narrow-past-other' => '{0} রবিবার আগে',
+ 'sun-past-one' => '{0} রবিবার আগে',
+ 'sun-past-other' => '{0} রবিবার আগে',
+ 'sun-short-future-one' => '{0} রবিবারেতে',
+ 'sun-short-future-other' => '{0} রবিবারেতে',
+ 'sun-short-past-one' => '{0} রবিবার আগে',
+ 'sun-short-past-other' => '{0} রবিবার আগে',
+ 'thu-future-one' => '{0} বৃহস্পতিবারে',
+ 'thu-future-other' => '{0} বৃহস্পতিবারে',
+ 'thu-narrow-future-one' => '{0} বৃহস্পতিবারে',
+ 'thu-narrow-future-other' => '{0} বৃহস্পতিবারে',
+ 'thu-narrow-past-one' => '{0} বৃহস্পতিবার আগে',
+ 'thu-narrow-past-other' => '{0} বৃহস্পতিবার আগে',
+ 'thu-past-one' => '{0} বৃহস্পতিবার আগে',
+ 'thu-past-other' => '{0} বৃহস্পতিবার আগে',
+ 'thu-short-future-one' => '{0} বৃহস্পতিবারে',
+ 'thu-short-future-other' => '{0} বৃহস্পতিবারে',
+ 'thu-short-past-one' => '{0} বৃহস্পতিবার আগে',
+ 'thu-short-past-other' => '{0} বৃহস্পতিবার আগে',
+ 'tue-future-one' => '{0} মঙ্গলবারে',
+ 'tue-future-other' => '{0} মঙ্গলবারে',
+ 'tue-narrow-future-one' => '{0} মঙ্গলবারে',
+ 'tue-narrow-future-other' => '{0} মঙ্গলবারে',
+ 'tue-narrow-past-one' => '{0} মঙ্গলবার আগে',
+ 'tue-narrow-past-other' => '{0} মঙ্গলবার আগে',
+ 'tue-past-one' => '{0} মঙ্গলবার আগে',
+ 'tue-past-other' => '{0} মঙ্গলবার আগে',
+ 'tue-short-future-one' => '{0} মঙ্গলবারে',
+ 'tue-short-future-other' => '{0} মঙ্গলবারে',
+ 'tue-short-past-one' => '{0} মঙ্গলবার আগে',
+ 'tue-short-past-other' => '{0} মঙ্গলবার আগে',
+ 'wed-future-one' => '{0} বুধবারে',
+ 'wed-future-other' => '{0} বুধবারে',
+ 'wed-narrow-future-one' => '{0} বুধবারে',
+ 'wed-narrow-future-other' => '{0} বুধবারে',
+ 'wed-narrow-past-one' => '{0} বুধবার আগে',
+ 'wed-narrow-past-other' => '{0} বুধবার আগে',
+ 'wed-past-one' => '{0} বুধবার আগে',
+ 'wed-past-other' => '{0} বুধবার আগে',
+ 'wed-short-future-one' => '{0} বুধবারে',
+ 'wed-short-future-other' => '{0} বুধবারে',
+ 'wed-short-past-one' => '{0} বুধবার আগে',
+ 'wed-short-past-other' => '{0} বুধবার আগে',
'week-future-one' => '{0} সপ্তাহে',
'week-future-other' => '{0} সপ্তাহে',
'week-narrow-future-one' => '{0} সপ্তাহে',
'week-narrow-future-other' => '{0} সপ্তাহে',
- 'week-narrow-past-one' => '{0} সপ্তাহ পূর্বে',
- 'week-narrow-past-other' => '{0} সপ্তাহ পূর্বে',
+ 'week-narrow-past-one' => '{0} সপ্তাহ আগে',
+ 'week-narrow-past-other' => '{0} সপ্তাহ আগে',
'week-one' => '{0} সপ্তাহ',
'week-other' => '{0} সপ্তাহ',
- 'week-past-one' => '{0} সপ্তাহ পূর্বে',
- 'week-past-other' => '{0} সপ্তাহ পূর্বে',
+ 'week-past-one' => '{0} সপ্তাহ আগে',
+ 'week-past-other' => '{0} সপ্তাহ আগে',
'week-short-future-one' => '{0} সপ্তাহে',
'week-short-future-other' => '{0} সপ্তাহে',
- 'week-short-past-one' => '{0} সপ্তাহ পূর্বে',
- 'week-short-past-other' => '{0} সপ্তাহ পূর্বে',
+ 'week-short-past-one' => '{0} সপ্তাহ আগে',
+ 'week-short-past-other' => '{0} সপ্তাহ আগে',
'year-future-one' => '{0} বছরে',
'year-future-other' => '{0} বছরে',
'year-narrow-future-one' => '{0} বছরে',
@@ -1302,4 +1426,4 @@ $timeUnits = array(
'year-short-future-other' => '{0} বছরে',
'year-short-past-one' => '{0} বছর পূর্বে',
'year-short-past-other' => '{0} বছর পূর্বে',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesBo.php b/MLEB/cldr/CldrNames/CldrNamesBo.php
index 141384e4..bad42fd7 100644
--- a/MLEB/cldr/CldrNames/CldrNamesBo.php
+++ b/MLEB/cldr/CldrNames/CldrNamesBo.php
@@ -1,15 +1,15 @@
<?php
-$languageNames = array(
+$languageNames = [
'bn' => 'བྷང་ག་ལའི་སྐད།',
'bo' => 'བོད་སྐད་',
'da' => 'ཏེན་མག་གི་སྐད།',
'de' => 'འཇར་མན་གྱི།',
'dz' => 'རྫོང་ཁ',
- 'en' => 'དབིན་ཇིའི་སྐད།',
- 'en-ca' => 'དབིན་ཇིའི་སྐད། (ཁེ་ན་ཌ་)',
- 'en-gb' => 'དབིན་ཇིའི་སྐད། (དབིན་ཇིའི་རྒྱལ་ཁབ་)',
- 'en-us' => 'དབིན་ཇིའི་སྐད། (ཨ་རི་)',
+ 'en' => 'དབྱིན་ཇིའི་སྐད།',
+ 'en-ca' => 'དབྱིན་ཇིའི་སྐད། (ཁེ་ན་ཌ་)',
+ 'en-gb' => 'དབྱིན་ཇིའི་སྐད། (དབྱིན་ལན་)',
+ 'en-us' => 'དབྱིན་ཇིའི་སྐད། (ཨ་རི་)',
'es' => 'ཞི་པན་ཡའི།',
'fr' => 'ཧྥ་རན་སིའི་།',
'gaa' => 'གཱ་སྐད།',
@@ -17,7 +17,7 @@ $languageNames = array(
'hi' => 'ཧིན་དི',
'id' => 'ཨིན་དོ་ནི་སི་སྐད།',
'it' => 'དབྱི་ཏ་་ལའི་མི།',
- 'ja' => 'རི་པིན་སྐད་',
+ 'ja' => 'ཉི་ཧོང་སྐད་',
'kn' => 'ཀནྣ་ཌ་སྐད།',
'ko' => 'ཁོ་རེ་ཡའི་སྐད།',
'la' => 'ལཱ་ཏིན་སྐད།',
@@ -51,21 +51,21 @@ $languageNames = array(
'zh-hant' => 'སྲོལ་རྒྱུན་གྱི།',
'zu' => 'ཟུ་ལུ་སྐད།',
'zun' => 'ཟུ་ནི་སྐད།',
- 'zza' => 'ཟ་ཟཱ་སྐད།',
-);
+ 'zza' => 'ཟ་ཟའ་སྐད།',
+];
-$currencyNames = array(
+$currencyNames = [
'CNY' => 'ཡུ་ཨན་',
- 'INR' => 'རྒྱ་གར་སྒོར་མོ་',
- 'USD' => 'ཨ་རིའི་སྒོར་མོ།',
+ 'INR' => 'རྒྱ་གར་སྒོར་',
+ 'USD' => 'ཨ་རིའི་སྒོར་',
'XXX' => 'མ་རྟོགས་པའི་ནུས་མེད་དངུལ་ལོར',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'CNY' => '¥',
-);
+];
-$countryNames = array(
+$countryNames = [
'AD' => 'ཨེན་ཌོ་ར།',
'AE' => 'ཨ་རབ། ཨི་མི་རཊ྄། ཆིག་སྒྲིལ་རྒྱལ་ཁབ།',
'AF' => 'ཨཕ་ག་ནི་སྟཱན།',
@@ -153,13 +153,13 @@ $countryNames = array(
'IT' => 'ཨི་ཀྲར་ལི་',
'JM' => 'ཛ་མེ་ཀ།',
'JO' => 'ཇོར་ཌན།',
- 'JP' => 'རི་པིན་',
+ 'JP' => 'ཉི་ཧོང་',
'KE' => 'ཁེན་ཉི་ཡ།',
'KG' => 'ཁིར་གིཛ་སྟཱན།',
'KH' => 'ཀམ་བོ་ཌི་ཡ།',
'KI' => 'ཀི་རི་བཱ་ཏི།',
'KN' => 'སེནྚ། ཀིཊྚས྄། དང༌། ནེ་བིས྄།',
- 'KR' => 'ཀོ་རི་ཡ། ལྷོ་མ།',
+ 'KR' => 'ལྷོ་ཀོ་རི་ཡ།',
'KW' => 'ཀུ་ཝེད་རྒྱལ་ཁབ།',
'KY' => 'ཁེ་མེན་གླིང་ཕྲན།',
'KZ' => 'ཁ་ཛཱག་སྟཱན།',
@@ -196,7 +196,7 @@ $countryNames = array(
'NI' => 'ནི་ཀ་ར་གུ་ཨ།',
'NL' => 'ཧའོ་ལན།',
'NO' => 'ནོར་ཝེ།',
- 'NP' => 'བར་ཡུལ་',
+ 'NP' => 'བལ་ཡུལ་',
'NR' => 'ནཽ་རུ།',
'NU' => 'ནིའུ་ཝ།',
'NZ' => 'ནིའུ་ཛི་ལན྄ཌ།',
@@ -249,4 +249,4 @@ $countryNames = array(
'ZA' => 'ལྷོ་ ཨཕྲི་ཀ།',
'ZM' => 'ཛམ་བི་ཡ།',
'ZW' => 'ཛིམ་བྷཱ་བེ།',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesBr.php b/MLEB/cldr/CldrNames/CldrNamesBr.php
index 5ae68432..b4cad072 100644
--- a/MLEB/cldr/CldrNames/CldrNamesBr.php
+++ b/MLEB/cldr/CldrNames/CldrNamesBr.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'afar',
'ab' => 'abkhazeg',
'ace' => 'achineg',
@@ -22,10 +22,12 @@ $languageNames = array(
'am' => 'amhareg',
'an' => 'aragoneg',
'ang' => 'hensaozneg',
+ 'anp' => 'angika',
'ar' => 'arabeg',
'ar-001' => 'arabeg modern',
'arc' => 'arameeg',
'arn' => 'araoukaneg',
+ 'aro' => 'araona',
'arp' => 'arapaho',
'arq' => 'arabeg Aljeria',
'arw' => 'arawakeg',
@@ -33,11 +35,12 @@ $languageNames = array(
'arz' => 'arabeg Egipt',
'as' => 'asameg',
'asa' => 'asu',
+ 'ase' => 'yezh sinoù Amerika',
+ 'ast' => 'asturianeg',
'av' => 'avar',
'awa' => 'awadhi',
'ay' => 'aymara',
- 'az' => 'azeri',
- 'azb' => 'azeri ar Su',
+ 'az' => 'azerbaidjaneg',
'ba' => 'bachkir',
'bal' => 'baloutchi',
'ban' => 'balineg',
@@ -48,10 +51,12 @@ $languageNames = array(
'bem' => 'bemba',
'bez' => 'bena',
'bg' => 'bulgareg',
+ 'bgn' => 'baloutchi ar Cʼhornôg',
'bho' => 'bhojpuri',
'bi' => 'bislama',
'bik' => 'bikol',
'bin' => 'bini',
+ 'bla' => 'siksika',
'bm' => 'bambara',
'bn' => 'bengali',
'bo' => 'tibetaneg',
@@ -60,16 +65,20 @@ $languageNames = array(
'brh' => 'brahweg',
'brx' => 'bodo',
'bs' => 'bosneg',
+ 'bss' => 'akoose',
'bua' => 'bouriat',
'bug' => 'bugi',
'byn' => 'blin',
'ca' => 'katalaneg',
'cad' => 'caddo',
'car' => 'karibeg',
+ 'cch' => 'atsam',
'ce' => 'tchetcheneg',
'ceb' => 'cebuano',
+ 'cgg' => 'chigaeg',
'ch' => 'chamorru',
'chb' => 'chibcha',
+ 'chk' => 'chuuk',
'chm' => 'marieg',
'cho' => 'choktaw',
'chp' => 'chipewyan',
@@ -80,6 +89,7 @@ $languageNames = array(
'cop' => 'kopteg',
'cr' => 'kri',
'crh' => 'turkeg Krimea',
+ 'crs' => 'kreoleg Sechelez',
'cs' => 'tchekeg',
'csb' => 'kachoubeg',
'cu' => 'slavoneg iliz',
@@ -88,18 +98,23 @@ $languageNames = array(
'da' => 'daneg',
'dak' => 'dakota',
'dar' => 'dargwa',
+ 'dav' => 'taita',
'de' => 'alamaneg',
'de-at' => 'alamaneg Aostria',
'de-ch' => 'alamaneg uhel Suis',
'del' => 'delaware',
'dgr' => 'dogrib',
'din' => 'dinka',
+ 'dje' => 'zarma',
'doi' => 'dogri',
'dsb' => 'izelsorabeg',
+ 'dua' => 'douala',
'dum' => 'nederlandeg krenn',
'dv' => 'divehi',
+ 'dyo' => 'diola',
'dyu' => 'dyula',
'dz' => 'dzongkha',
+ 'dzg' => 'dazagaeg',
'ebu' => 'embu',
'ee' => 'ewe',
'efi' => 'efik',
@@ -124,14 +139,17 @@ $languageNames = array(
'fa' => 'perseg',
'fan' => 'fang',
'fat' => 'fanti',
+ 'ff' => 'fula',
'fi' => 'finneg',
'fil' => 'filipineg',
+ 'fit' => 'finneg traoñienn an Torne',
'fj' => 'fidjieg',
'fo' => 'faeroeg',
'fon' => 'fon',
'fr' => 'galleg',
'fr-ca' => 'galleg Kanada',
'fr-ch' => 'galleg Suis',
+ 'frc' => 'galleg cajun',
'frm' => 'krenncʼhalleg',
'fro' => 'hencʼhalleg',
'frp' => 'arpitaneg',
@@ -158,7 +176,9 @@ $languageNames = array(
'grc' => 'hencʼhresianeg',
'gsw' => 'alamaneg Suis',
'gu' => 'gujarati',
+ 'guz' => 'gusiieg',
'gv' => 'manaveg',
+ 'gwi' => 'gwich’in',
'ha' => 'haousa',
'hai' => 'haida',
'hak' => 'sinaeg Hakka',
@@ -184,12 +204,17 @@ $languageNames = array(
'ig' => 'igbo',
'ii' => 'yieg Sichuan',
'ik' => 'inupiaq',
+ 'ilo' => 'ilokanoeg',
'inh' => 'ingoucheg',
'io' => 'ido',
'is' => 'islandeg',
'it' => 'italianeg',
'iu' => 'inuktitut',
'ja' => 'japaneg',
+ 'jam' => 'kreoleg Jamaika',
+ 'jbo' => 'lojban',
+ 'jgo' => 'ngomba',
+ 'jmc' => 'machame',
'jpr' => 'yuzev-perseg',
'jrb' => 'yuzev-arabeg',
'jv' => 'javaneg',
@@ -197,15 +222,23 @@ $languageNames = array(
'kaa' => 'karakalpak',
'kab' => 'kabileg',
'kac' => 'kachin',
+ 'kaj' => 'jju',
'kam' => 'kamba',
'kbd' => 'kabardeg',
+ 'kcg' => 'tyap',
+ 'kde' => 'makonde',
'kea' => 'kabuverdianu',
+ 'kfo' => 'koroeg',
'kg' => 'kongo',
'kha' => 'khasi',
'kho' => 'khotaneg',
+ 'khq' => 'koyra chiini',
'ki' => 'kikuyu',
'kj' => 'kwanyama',
'kk' => 'kazak',
+ 'kkj' => 'kakoeg',
+ 'kl' => 'greunlandeg',
+ 'kln' => 'kalendjineg',
'km' => 'khmer',
'kmb' => 'kimbundu',
'kn' => 'kanareg',
@@ -219,12 +252,18 @@ $languageNames = array(
'krl' => 'karelieg',
'kru' => 'kurukh',
'ks' => 'kashmiri',
+ 'ksb' => 'shambala',
+ 'ksf' => 'bafiaeg',
+ 'ksh' => 'koluneg',
'ku' => 'kurdeg',
+ 'kum' => 'koumikeg',
'kut' => 'kutenai',
+ 'kv' => 'komieg',
'kw' => 'kerneveureg',
'ky' => 'kirgiz',
'la' => 'latin',
'lad' => 'ladino',
+ 'lag' => 'langi',
'lah' => 'lahnda',
'lam' => 'lamba',
'lb' => 'luksembourgeg',
@@ -233,10 +272,13 @@ $languageNames = array(
'lg' => 'ganda',
'li' => 'limbourgeg',
'lij' => 'ligurieg',
+ 'lkt' => 'lakota',
'ln' => 'lingala',
'lo' => 'laoseg',
'lol' => 'mongo',
+ 'lou' => 'kreoleg Louiziana',
'loz' => 'lozi',
+ 'lrc' => 'loureg an Norzh',
'lt' => 'lituaneg',
'lu' => 'luba-katanga',
'lua' => 'luba-lulua',
@@ -247,51 +289,69 @@ $languageNames = array(
'luy' => 'luyia',
'lv' => 'latvieg',
'lzh' => 'sinaeg lennegel',
+ 'mad' => 'madoureg',
'mag' => 'magahi',
'mai' => 'maithili',
+ 'mak' => 'makasar',
'mas' => 'masai',
'mdf' => 'moksha',
'mdr' => 'mandar',
'men' => 'mende',
+ 'mer' => 'meru',
'mfe' => 'moriseg',
'mg' => 'malgacheg',
'mga' => 'krenniwerzhoneg',
+ 'mgh' => 'makhuwa-meetto',
+ 'mgo' => 'metaʼ',
'mh' => 'marshall',
'mi' => 'maori',
+ 'mic' => 'mikmakeg',
+ 'min' => 'minangkabau',
'mk' => 'makedoneg',
'ml' => 'malayalam',
'mn' => 'mongoleg',
'mnc' => 'manchou',
'mni' => 'manipuri',
'moh' => 'mohawk',
+ 'mos' => 'more',
'mr' => 'marathi',
'mrj' => 'marieg ar Cʼhornôg',
'ms' => 'malayseg',
'mt' => 'malteg',
+ 'mua' => 'moundangeg',
'mul' => 'yezhoù lies',
'mus' => 'muskogi',
+ 'mwl' => 'mirandeg',
'my' => 'birmaneg',
'myv' => 'erza',
+ 'mzn' => 'mazanderaneg',
'na' => 'naurueg',
'nan' => 'sinaeg Min Nan',
'nap' => 'napolitaneg',
+ 'naq' => 'nama',
'nb' => 'norvegeg bokmål',
'nd' => 'ndebele an Norzh',
'nds' => 'alamaneg izel',
+ 'nds-nl' => 'saksoneg izel',
'ne' => 'nepaleg',
'new' => 'newari',
'ng' => 'ndonga',
'nia' => 'nias',
'niu' => 'niue',
+ 'njo' => 'aoeg',
'nl' => 'nederlandeg',
'nl-be' => 'flandrezeg',
+ 'nmg' => 'ngoumbeg',
'nn' => 'norvegeg nynorsk',
+ 'nnh' => 'ngiemboon',
'no' => 'norvegeg',
'nog' => 'nogay',
'non' => 'hennorseg',
'nov' => 'novial',
+ 'nqo' => 'nkoeg',
'nr' => 'ndebele ar Su',
'nso' => 'sotho an Norzh',
+ 'nus' => 'nouereg',
'nv' => 'navacʼho',
'nwc' => 'newari klasel',
'ny' => 'nyanja',
@@ -300,6 +360,7 @@ $languageNames = array(
'nyo' => 'nyoro',
'oc' => 'okitaneg',
'oj' => 'ojibwa',
+ 'om' => 'oromoeg',
'or' => 'oriya',
'os' => 'oseteg',
'osa' => 'osage',
@@ -311,6 +372,7 @@ $languageNames = array(
'pap' => 'papiamento',
'pau' => 'palau',
'pcd' => 'pikardeg',
+ 'pcm' => 'pidjin Nigeria',
'pdc' => 'alamaneg Pennsylvania',
'peo' => 'henberseg',
'phn' => 'fenikianeg',
@@ -326,6 +388,8 @@ $languageNames = array(
'pt-br' => 'portugaleg Brazil',
'pt-pt' => 'portugaleg Europa',
'qu' => 'kechuaeg',
+ 'quc' => 'kʼicheʼ',
+ 'qug' => 'kichuaeg Chimborazo',
'raj' => 'rajasthani',
'rap' => 'rapanui',
'rar' => 'rarotonga',
@@ -344,17 +408,23 @@ $languageNames = array(
'sad' => 'sandawe',
'sah' => 'yakouteg',
'sam' => 'arameeg ar Samaritaned',
+ 'saq' => 'samburu',
'sas' => 'sasak',
'sat' => 'santali',
+ 'sba' => 'ngambayeg',
+ 'sbp' => 'sangu',
'sc' => 'sardeg',
'scn' => 'sikilieg',
'sco' => 'skoteg',
'sd' => 'sindhi',
'sdc' => 'sasareseg',
'se' => 'sámi an Norzh',
+ 'seh' => 'sena',
+ 'ses' => 'koyraboro senni',
'sg' => 'sango',
'sga' => 'heniwerzhoneg',
'sh' => 'serb-kroateg',
+ 'shi' => 'tacheliteg',
'shn' => 'shan',
'shu' => 'arabeg Tchad',
'si' => 'singhaleg',
@@ -372,19 +442,26 @@ $languageNames = array(
'sog' => 'sogdieg',
'sq' => 'albaneg',
'sr' => 'serbeg',
+ 'srn' => 'sranan tongo',
'srr' => 'serer',
'ss' => 'swati',
+ 'ssy' => 'sahoeg',
'st' => 'sotho ar Su',
'su' => 'sundaneg',
+ 'suk' => 'sukuma',
'sux' => 'sumereg',
'sv' => 'svedeg',
'sw' => 'swahili',
+ 'sw-cd' => 'swahili Kongo',
'swb' => 'komoreg',
'syc' => 'sirieg klasel',
'syr' => 'sirieg',
+ 'szl' => 'silezieg',
'ta' => 'tamileg',
'tcy' => 'touloueg',
'te' => 'telougou',
+ 'tem' => 'temne',
+ 'teo' => 'tesoeg',
'ter' => 'tereno',
'tet' => 'tetum',
'tg' => 'tadjik',
@@ -403,14 +480,18 @@ $languageNames = array(
'tog' => 'nyasa tonga',
'tpi' => 'tok pisin',
'tr' => 'turkeg',
+ 'tru' => 'turoyoeg',
+ 'trv' => 'taroko',
'ts' => 'tsonga',
'tsi' => 'tsimshian',
'tt' => 'tatar',
'tum' => 'tumbuka',
'tvl' => 'tuvalu',
'tw' => 'twi',
+ 'twq' => 'tasawakeg',
'ty' => 'tahitianeg',
'tyv' => 'touva',
+ 'tzm' => 'tamazigteg Kreizatlas',
'udm' => 'oudmourteg',
'ug' => 'ouigoureg',
'uga' => 'ougariteg',
@@ -421,10 +502,14 @@ $languageNames = array(
'uz' => 'ouzbekeg',
'vai' => 'vai',
've' => 'venda',
+ 'vec' => 'venezieg',
+ 'vep' => 'vepseg',
'vi' => 'vietnameg',
'vls' => 'flandrezeg ar c’hornôg',
'vo' => 'volapük',
'vot' => 'votyakeg',
+ 'vro' => 'voroeg',
+ 'vun' => 'vunjo',
'wa' => 'walloneg',
'wae' => 'walser',
'wal' => 'walamo',
@@ -434,8 +519,12 @@ $languageNames = array(
'wuu' => 'sinaeg Wu',
'xal' => 'kalmouk',
'xh' => 'xhosa',
+ 'xmf' => 'megreleg',
+ 'xog' => 'sogaeg',
'yao' => 'yao',
'yap' => 'yapeg',
+ 'yav' => 'yangben',
+ 'ybb' => 'yemba',
'yi' => 'yiddish',
'yo' => 'yorouba',
'yue' => 'kantoneg',
@@ -451,9 +540,10 @@ $languageNames = array(
'zu' => 'zouloueg',
'zun' => 'zuni',
'zxx' => 'diyezh',
-);
+ 'zza' => 'zazakeg',
+];
-$currencyNames = array(
+$currencyNames = [
'ADP' => 'peseta Andorra',
'AED' => 'dirham EAU',
'AFA' => 'afghani Afghanistan (1927–2002)',
@@ -497,11 +587,14 @@ $currencyNames = array(
'BUK' => 'kyat Birmania',
'BWP' => 'pula Botswana',
'BYB' => 'roubl nevez Belarus (1994–1999)',
- 'BYR' => 'roubl Belarus',
+ 'BYN' => 'roubl Belarus',
+ 'BYR' => 'roubl Belarus (2000–2016)',
'BZD' => 'dollar Belize',
'CAD' => 'dollar Kanada',
'CDF' => 'lur Kongo',
+ 'CHE' => 'euro WIR',
'CHF' => 'lur Suis',
+ 'CHW' => 'lur WIR',
'CLE' => 'escudo Chile',
'CLF' => 'unanenn jediñ Chile',
'CLP' => 'peso Chile',
@@ -599,7 +692,8 @@ $currencyNames = array(
'MMK' => 'kyat Myanmar',
'MNT' => 'tugrik Mongolia',
'MOP' => 'pataca Macau',
- 'MRO' => 'ouguiya Maouritania',
+ 'MRO' => 'ouguiya Maouritania (1973–2017)',
+ 'MRU' => 'ouguiya Maouritania',
'MTL' => 'lira Malta',
'MTP' => 'lur Malta',
'MUR' => 'roupi Moris',
@@ -622,7 +716,7 @@ $currencyNames = array(
'NZD' => 'dollar Zeland-Nevez',
'OMR' => 'rial Oman',
'PAB' => 'balboa Panamá',
- 'PEN' => 'nuevo sol Perou',
+ 'PEN' => 'sol Perou',
'PES' => 'sol Perou (1863–1965)',
'PGK' => 'kina Papoua Ginea-Nevez',
'PHP' => 'peso Filipinez',
@@ -655,7 +749,8 @@ $currencyNames = array(
'SRD' => 'dollar Surinam',
'SRG' => 'florin Surinam',
'SSP' => 'lur Susoudan',
- 'STD' => 'dobra São Tomé ha Príncipe',
+ 'STD' => 'dobra São Tomé ha Príncipe (1977–2017)',
+ 'STN' => 'dobra São Tomé ha Príncipe',
'SUR' => 'roubl soviedel',
'SVC' => 'colón Salvador',
'SYP' => 'lur Siria',
@@ -681,12 +776,13 @@ $currencyNames = array(
'UYU' => 'peso Uruguay',
'UZS' => 'som Ouzbekistan',
'VEB' => 'bolivar Venezuela (1871–2008)',
- 'VEF' => 'bolivar Venezuela',
+ 'VEF' => 'bolivar Venezuela (2008–2018)',
+ 'VES' => 'bolivar Venezuela',
'VND' => 'dong Viêt Nam',
'VNN' => 'dong Viêt Nam (1978–1985)',
'VUV' => 'vatu Vanuatu',
'WST' => 'tala Samoa',
- 'XAF' => 'lur CFA BEAC',
+ 'XAF' => 'lur CFA Kreizafrika',
'XAG' => 'arcʼhant',
'XAU' => 'aour',
'XBA' => 'unanenn genaoz europat',
@@ -698,7 +794,7 @@ $currencyNames = array(
'XEU' => 'unanenn jediñ europat',
'XFO' => 'lur aour Frañs',
'XFU' => 'lur Unaniezh etrebroadel an hentoù-houarn',
- 'XOF' => 'lur CFA BCEAO',
+ 'XOF' => 'lur CFA Afrika ar Cʼhornôg',
'XPD' => 'palladiom',
'XPF' => 'lur CFP',
'XPT' => 'platin',
@@ -715,51 +811,276 @@ $currencyNames = array(
'ZWD' => 'dollar Zimbabwe (1980–2008)',
'ZWL' => 'dollar Zimbabwe (2009)',
'ZWR' => 'dollar Zimbabwe (2008)',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
+ 'ADP' => 'ADP',
+ 'AED' => 'AED',
+ 'AFA' => 'AFA',
+ 'AFN' => 'AFN',
+ 'ALK' => 'ALK',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'AOK' => 'AOK',
+ 'AON' => 'AON',
+ 'ARM' => 'ARM',
+ 'ARP' => 'ARP',
+ 'ARS' => 'ARS',
+ 'ATS' => 'ATS',
'AUD' => '$A',
- 'BBD' => '$',
- 'BDT' => '৳',
- 'BMD' => '$',
- 'BND' => '$',
- 'BSD' => '$',
- 'BZD' => '$',
+ 'AWG' => 'AWG',
+ 'AZM' => 'AZM',
+ 'AZN' => 'AZN',
+ 'BAD' => 'BAD',
+ 'BAM' => 'BAM',
+ 'BAN' => 'BAN',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BEC' => 'BEC',
+ 'BEF' => 'BEF',
+ 'BEL' => 'BEL',
+ 'BGM' => 'BGM',
+ 'BGN' => 'BGN',
+ 'BGO' => 'BGO',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BOL' => 'BOL',
+ 'BOP' => 'BOP',
+ 'BRL' => 'BRL',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BUK' => 'BUK',
+ 'BWP' => 'BWP',
+ 'BYB' => 'BYB',
+ 'BYN' => 'BYN',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
'CAD' => '$CA',
- 'CNY' => '¥',
- 'CRC' => '₡',
+ 'CDF' => 'CDF',
+ 'CHE' => 'CHE',
+ 'CHF' => 'CHF',
+ 'CHW' => 'CHW',
+ 'CLE' => 'CLE',
+ 'CLF' => 'CLF',
+ 'CLP' => 'CLP',
+ 'CNX' => 'CNX',
+ 'CNY' => 'CNY',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CSD' => 'CSD',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CYP' => 'CYP',
+ 'CZK' => 'CZK',
+ 'DDM' => 'DDM',
+ 'DEM' => 'DEM',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EEK' => 'EEK',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ESB' => 'ESB',
+ 'ESP' => 'ESP',
+ 'ETB' => 'ETB',
'EUR' => '€',
- 'FJD' => '$',
+ 'FIM' => 'FIM',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'FRF' => 'FRF',
'GBP' => '£ RU',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GNS' => 'GNS',
+ 'GQE' => 'GQE',
+ 'GRD' => 'GRD',
+ 'GTQ' => 'GTQ',
+ 'GWP' => 'GWP',
+ 'GYD' => 'GYD',
'HKD' => '$ HK',
- 'ILS' => '₪',
+ 'HNL' => 'HNL',
+ 'HRD' => 'HRD',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'IEP' => 'IEP',
+ 'ILP' => 'ILP',
+ 'ILR' => 'ILR',
+ 'ILS' => 'ILS',
'INR' => '₹',
- 'JMD' => '$',
- 'JPY' => '¥',
- 'KHR' => '៛',
- 'KRW' => '₩',
- 'KYD' => '$',
- 'KZT' => '₸',
- 'LAK' => '₭',
- 'LRD' => '$',
- 'MNT' => '₮',
- 'NAD' => '$',
- 'NGN' => '₦',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISJ' => 'ISJ',
+ 'ISK' => 'ISK',
+ 'ITL' => 'ITL',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => 'JPY',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRH' => 'KRH',
+ 'KRO' => 'KRO',
+ 'KRW' => 'KRW',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LSL' => 'LSL',
+ 'LTL' => 'LTL',
+ 'LTT' => 'LTT',
+ 'LUC' => 'LUC',
+ 'LUF' => 'LUF',
+ 'LVL' => 'LVL',
+ 'LVR' => 'LVR',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MAF' => 'MAF',
+ 'MCF' => 'MCF',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MGF' => 'MGF',
+ 'MKD' => 'MKD',
+ 'MKN' => 'MKN',
+ 'MLF' => 'MLF',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MTL' => 'MTL',
+ 'MTP' => 'MTP',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MX$',
+ 'MXP' => 'MXP',
+ 'MYR' => 'MYR',
+ 'MZE' => 'MZE',
+ 'MZM' => 'MZM',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIC' => 'NIC',
+ 'NIO' => 'NIO',
+ 'NLG' => 'NLG',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
'NZD' => '$ ZN',
- 'PHP' => '₱',
- 'PYG' => '₲',
- 'SBD' => '$',
- 'SGD' => '$',
- 'SRD' => '$',
- 'TRY' => '₺',
- 'TTD' => '$',
- 'TWD' => '$',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PES' => 'PES',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PLZ' => 'PLZ',
+ 'PTE' => 'PTE',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RHD' => 'RHD',
+ 'ROL' => 'ROL',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RUR' => 'RUR',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDD' => 'SDD',
+ 'SDG' => 'SDG',
+ 'SDP' => 'SDP',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SIT' => 'SIT',
+ 'SKK' => 'SKK',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SRG' => 'SRG',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'STN' => 'Db',
+ 'SUR' => 'SUR',
+ 'SVC' => 'SVC',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => 'THB',
+ 'TJR' => 'TJR',
+ 'TJS' => 'TJS',
+ 'TMM' => 'TMM',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TPE' => 'TPE',
+ 'TRL' => 'TRL',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'TWD',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGS' => 'UGS',
+ 'UGX' => 'UGX',
'USD' => '$ SU',
- 'VND' => '₫',
+ 'UYP' => 'UYP',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEB' => 'VEB',
+ 'VEF' => 'VEF',
+ 'VND' => 'VND',
+ 'VNN' => 'VNN',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XAG' => 'XAG',
+ 'XAU' => 'XAU',
+ 'XBA' => 'XBA',
+ 'XBB' => 'XBB',
+ 'XBC' => 'XBC',
+ 'XBD' => 'XBD',
+ 'XCD' => 'XCD',
+ 'XDR' => 'XDR',
+ 'XEU' => 'XEU',
+ 'XFO' => 'XFO',
'XFU' => 'XFU',
-);
+ 'XOF' => 'CFA',
+ 'XPD' => 'XPD',
+ 'XPF' => 'CFPF',
+ 'XPT' => 'XPT',
+ 'XTS' => 'XTS',
+ 'XXX' => 'XXX',
+ 'YDD' => 'YDD',
+ 'YER' => 'YER',
+ 'YUM' => 'YUM',
+ 'YUN' => 'YUN',
+ 'YUR' => 'YUR',
+ 'ZAR' => 'ZAR',
+ 'ZMK' => 'ZMK',
+ 'ZMW' => 'ZMW',
+ 'ZWD' => 'ZWD',
+ 'ZWL' => 'ZWL',
+ 'ZWR' => 'ZWR',
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'Enez Ascension',
'AD' => 'Andorra',
'AE' => 'Emirelezhioù Arab Unanet',
@@ -768,7 +1089,6 @@ $countryNames = array(
'AI' => 'Anguilla',
'AL' => 'Albania',
'AM' => 'Armenia',
- 'AN' => 'Antilhez Nederlandat',
'AO' => 'Angola',
'AQ' => 'Antarktika',
'AR' => 'Arcʼhantina',
@@ -791,7 +1111,7 @@ $countryNames = array(
'BM' => 'Bermuda',
'BN' => 'Brunei',
'BO' => 'Bolivia',
- 'BQ' => 'Nederlandat Karib',
+ 'BQ' => 'Karib Nederlandat',
'BR' => 'Brazil',
'BS' => 'Bahamas',
'BT' => 'Bhoutan',
@@ -814,11 +1134,11 @@ $countryNames = array(
'CP' => 'Enez Clipperton',
'CR' => 'Costa Rica',
'CU' => 'Kuba',
- 'CV' => 'Kab Glas',
+ 'CV' => 'Kab-Glas',
'CW' => 'Curaçao',
'CX' => 'Enez Christmas',
'CY' => 'Kiprenez',
- 'CZ' => 'Republik Tchek',
+ 'CZ' => 'Tchekia',
'DE' => 'Alamagn',
'DG' => 'Diego Garcia',
'DJ' => 'Djibouti',
@@ -835,6 +1155,7 @@ $countryNames = array(
'ES' => 'Spagn',
'ET' => 'Etiopia',
'EU' => 'Unaniezh Europa',
+ 'EZ' => 'takad an euro',
'FI' => 'Finland',
'FJ' => 'Fidji',
'FK' => 'Inizi Falkland',
@@ -842,7 +1163,7 @@ $countryNames = array(
'FO' => 'Inizi Faero',
'FR' => 'Frañs',
'GA' => 'Gabon',
- 'GB' => 'R.U.',
+ 'GB' => 'RU',
'GD' => 'Grenada',
'GE' => 'Jorjia',
'GF' => 'Gwiana cʼhall',
@@ -955,13 +1276,13 @@ $countryNames = array(
'PY' => 'Paraguay',
'QA' => 'Qatar',
'QO' => 'Oseania diabell',
- 'RE' => 'Reünion',
+ 'RE' => 'Ar Reünion',
'RO' => 'Roumania',
'RS' => 'Serbia',
'RU' => 'Rusia',
'RW' => 'Rwanda',
'SA' => 'Arabia Saoudat',
- 'SB' => 'Salomon',
+ 'SB' => 'Inizi Salomon',
'SC' => 'Sechelez',
'SD' => 'Soudan',
'SE' => 'Sveden',
@@ -1001,7 +1322,8 @@ $countryNames = array(
'UA' => 'Ukraina',
'UG' => 'Ouganda',
'UM' => 'Inizi diabell ar Stadoù-Unanet',
- 'US' => 'S.U.',
+ 'UN' => 'Broadoù unanet',
+ 'US' => 'SU',
'UY' => 'Uruguay',
'UZ' => 'Ouzbekistan',
'VA' => 'Vatikan',
@@ -1019,18 +1341,93 @@ $countryNames = array(
'ZA' => 'Suafrika',
'ZM' => 'Zambia',
'ZW' => 'Zimbabwe',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-few' => '{0} c\'hantved',
+ 'century-many' => '{0} a gantvedoù',
+ 'century-one' => '{0} c\'hantved',
+ 'century-other' => '{0} kantved',
+ 'century-two' => '{0} gantved',
'day-few' => '{0} deiz',
+ 'day-future-few' => 'a-benn {0} deiz',
+ 'day-future-many' => 'a-benn {0} a zeizioù',
+ 'day-future-one' => 'a-benn {0} deiz',
+ 'day-future-other' => 'a-benn {0} deiz',
+ 'day-future-two' => 'a-benn {0} zeiz',
'day-many' => '{0} a zeizioù',
+ 'day-narrow-future-few' => '+{0} d',
+ 'day-narrow-future-many' => '+{0} d',
+ 'day-narrow-future-one' => '+{0} d',
+ 'day-narrow-future-other' => '+{0} d',
+ 'day-narrow-future-two' => '+{0} d',
+ 'day-narrow-past-few' => '-{0} d',
+ 'day-narrow-past-many' => '-{0} d',
+ 'day-narrow-past-one' => '-{0} d',
+ 'day-narrow-past-other' => '-{0} d',
+ 'day-narrow-past-two' => '-{0} d',
'day-one' => '{0} deiz',
'day-other' => '{0} deiz',
+ 'day-past-few' => '{0} deiz zo',
+ 'day-past-many' => '{0} a zeizioù zo',
+ 'day-past-one' => '{0} deiz zo',
+ 'day-past-other' => '{0} deiz zo',
+ 'day-past-two' => '{0} zeiz zo',
+ 'day-short-future-few' => 'a-benn {0} d',
+ 'day-short-future-many' => 'a-benn {0} d',
+ 'day-short-future-one' => 'a-benn {0} d',
+ 'day-short-future-other' => 'a-benn {0} d',
+ 'day-short-future-two' => 'a-benn {0} d',
+ 'day-short-past-few' => '{0} d zo',
+ 'day-short-past-many' => '{0} d zo',
+ 'day-short-past-one' => '{0} d zo',
+ 'day-short-past-other' => '{0} d zo',
+ 'day-short-past-two' => '{0} d zo',
'day-two' => '{0} zeiz',
+ 'fri-future-few' => 'a-benn {0} Gwener',
+ 'fri-future-many' => 'a-benn {0} a Wenerioù',
+ 'fri-future-one' => 'a-benn {0} Gwener',
+ 'fri-future-other' => 'a-benn {0} Gwener',
+ 'fri-future-two' => 'a-benn {0} Wener',
+ 'fri-past-few' => '{0} Gwener zo',
+ 'fri-past-many' => '{0} a Wenerioù zo',
+ 'fri-past-one' => '{0} Gwener zo',
+ 'fri-past-other' => '{0} Gwener zo',
+ 'fri-past-two' => '{0} Wener zo',
'hour-few' => '{0} eur',
+ 'hour-future-few' => 'a-benn {0} eur',
+ 'hour-future-many' => 'a-benn {0} a eurioù',
+ 'hour-future-one' => 'a-benn {0} eur',
+ 'hour-future-other' => 'a-benn {0} eur',
+ 'hour-future-two' => 'a-benn {0} eur',
'hour-many' => '{0} a eurioù',
+ 'hour-narrow-future-few' => '+{0} h',
+ 'hour-narrow-future-many' => '+{0} h',
+ 'hour-narrow-future-one' => '+{0} h',
+ 'hour-narrow-future-other' => '+{0} h',
+ 'hour-narrow-future-two' => '+{0} h',
+ 'hour-narrow-past-few' => '-{0} h',
+ 'hour-narrow-past-many' => '-{0} h',
+ 'hour-narrow-past-one' => '-{0} h',
+ 'hour-narrow-past-other' => '-{0} h',
+ 'hour-narrow-past-two' => '-{0} h',
'hour-one' => '{0} eur',
'hour-other' => '{0} eur',
+ 'hour-past-few' => '{0} eur zo',
+ 'hour-past-many' => '{0} a eurioù zo',
+ 'hour-past-one' => '{0} eur zo',
+ 'hour-past-other' => '{0} eur zo',
+ 'hour-past-two' => '{0} eur zo',
+ 'hour-short-future-few' => 'a-benn {0} e',
+ 'hour-short-future-many' => 'a-benn {0} e',
+ 'hour-short-future-one' => 'a-benn {0} e',
+ 'hour-short-future-other' => 'a-benn {0} e',
+ 'hour-short-future-two' => 'a-benn {0} e',
+ 'hour-short-past-few' => '{0} e zo',
+ 'hour-short-past-many' => '{0} e zo',
+ 'hour-short-past-one' => '{0} e zo',
+ 'hour-short-past-other' => '{0} e zo',
+ 'hour-short-past-two' => '{0} e zo',
'hour-two' => '{0} eur',
'microsecond-few' => '{0} mikroeilenn',
'microsecond-many' => '{0} a vikroeilennoù',
@@ -1043,28 +1440,333 @@ $timeUnits = array(
'millisecond-other' => '{0} milieilenn',
'millisecond-two' => '{0} vilieilenn',
'minute-few' => '{0} munut',
+ 'minute-future-few' => 'a-benn {0} munut',
+ 'minute-future-many' => 'a-benn {0} a vunutoù',
+ 'minute-future-one' => 'a-benn {0} munut',
+ 'minute-future-other' => 'a-benn {0} munut',
+ 'minute-future-two' => 'a-benn {0} vunut',
'minute-many' => '{0} a vunutoù',
+ 'minute-narrow-future-few' => '+{0} min',
+ 'minute-narrow-future-many' => '+{0} min',
+ 'minute-narrow-future-one' => '+{0} min',
+ 'minute-narrow-future-other' => '+{0} min',
+ 'minute-narrow-future-two' => '+{0} min',
+ 'minute-narrow-past-few' => '-{0} min',
+ 'minute-narrow-past-many' => '-{0} min',
+ 'minute-narrow-past-one' => '-{0} min',
+ 'minute-narrow-past-other' => '-{0} min',
+ 'minute-narrow-past-two' => '-{0} min',
'minute-one' => '{0} munut',
'minute-other' => '{0} munut',
+ 'minute-past-few' => '{0} munut zo',
+ 'minute-past-many' => '{0} a vunutoù zo',
+ 'minute-past-one' => '{0} munut zo',
+ 'minute-past-other' => '{0} munut zo',
+ 'minute-past-two' => '{0} vunut zo',
+ 'minute-short-future-few' => 'a-benn {0} min',
+ 'minute-short-future-many' => 'a-benn {0} min',
+ 'minute-short-future-one' => 'a-benn {0} min',
+ 'minute-short-future-other' => 'a-benn {0} min',
+ 'minute-short-future-two' => 'a-benn {0} min',
+ 'minute-short-past-few' => '{0} min zo',
+ 'minute-short-past-many' => '{0} min zo',
+ 'minute-short-past-one' => '{0} min zo',
+ 'minute-short-past-other' => '{0} min zo',
+ 'minute-short-past-two' => '{0} min zo',
'minute-two' => '{0} vunut',
+ 'mon-future-few' => 'a-benn {0} Lun',
+ 'mon-future-many' => 'a-benn {0} a Lunioù',
+ 'mon-future-one' => 'a-benn {0} Lun',
+ 'mon-future-other' => 'a-benn {0} Lun',
+ 'mon-future-two' => 'a-benn {0} Lun',
+ 'mon-narrow-future-few' => 'a-benn {0} L',
+ 'mon-narrow-future-many' => 'a-benn {0} a L',
+ 'mon-narrow-future-one' => 'a-benn {0} L',
+ 'mon-narrow-future-other' => 'a-benn {0} L',
+ 'mon-narrow-future-two' => 'a-benn {0} L',
+ 'mon-narrow-past-few' => '{0} L zo',
+ 'mon-narrow-past-many' => '{0} a L zo',
+ 'mon-narrow-past-one' => '{0} L zo',
+ 'mon-narrow-past-other' => '{0} L zo',
+ 'mon-narrow-past-two' => '{0} L zo',
+ 'mon-past-few' => '{0} Lun zo',
+ 'mon-past-many' => '{0} a Lunioù zo',
+ 'mon-past-one' => '{0} Lun zo',
+ 'mon-past-other' => '{0} Lun zo',
+ 'mon-past-two' => '{0} Lun zo',
+ 'mon-short-future-few' => 'a-benn {0} Lun',
+ 'mon-short-future-many' => 'a-benn {0} a Lun.',
+ 'mon-short-future-one' => 'a-benn {0} Lun',
+ 'mon-short-future-other' => 'a-benn {0} Lun',
+ 'mon-short-future-two' => 'a-benn {0} Lun',
+ 'mon-short-past-few' => '{0} Lun zo',
+ 'mon-short-past-many' => '{0} a Lun. zo',
+ 'mon-short-past-one' => '{0} Lun zo',
+ 'mon-short-past-other' => '{0} Lun zo',
+ 'mon-short-past-two' => '{0} Lun zo',
'month-few' => '{0} miz',
+ 'month-future-few' => 'a-benn {0} miz',
+ 'month-future-many' => 'a-benn {0} a vizioù',
+ 'month-future-one' => 'a-benn {0} miz',
+ 'month-future-other' => 'a-benn {0} miz',
+ 'month-future-two' => 'a-benn {0} viz',
'month-many' => '{0} a vizioù',
+ 'month-narrow-future-few' => '+{0} miz',
+ 'month-narrow-future-many' => '+{0} miz',
+ 'month-narrow-future-one' => '+{0} miz',
+ 'month-narrow-future-other' => '+{0} miz',
+ 'month-narrow-future-two' => '+{0} miz',
+ 'month-narrow-past-few' => '-{0} miz',
+ 'month-narrow-past-many' => '-{0} miz',
+ 'month-narrow-past-one' => '-{0} miz',
+ 'month-narrow-past-other' => '-{0} miz',
+ 'month-narrow-past-two' => '-{0} miz',
'month-one' => '{0} miz',
'month-other' => '{0} miz',
+ 'month-past-few' => '{0} miz zo',
+ 'month-past-many' => '{0} a vizioù zo',
+ 'month-past-one' => '{0} miz zo',
+ 'month-past-other' => '{0} miz zo',
+ 'month-past-two' => '{0} viz zo',
+ 'month-short-future-few' => 'a-benn {0} miz',
+ 'month-short-future-many' => 'a-benn {0} a vizioù',
+ 'month-short-future-one' => 'a-benn {0} miz',
+ 'month-short-future-other' => 'a-benn {0} miz',
+ 'month-short-future-two' => 'a-benn {0} viz',
+ 'month-short-past-few' => '{0} miz zo',
+ 'month-short-past-many' => '{0} a vizioù zo',
+ 'month-short-past-one' => '{0} miz zo',
+ 'month-short-past-other' => '{0} miz zo',
+ 'month-short-past-two' => '{0} viz zo',
'month-two' => '{0} viz',
'nanosecond-few' => '{0} nanoeilenn',
'nanosecond-many' => '{0} a nanoeilennoù',
'nanosecond-one' => '{0} nanoeilenn',
'nanosecond-other' => '{0} nanoeilenn',
'nanosecond-two' => '{0} nanoeilenn',
+ 'quarter-future-few' => 'a-benn {0} zrimiziad',
+ 'quarter-future-many' => 'a-benn {0} a drimiziadoù',
+ 'quarter-future-one' => 'a-benn {0} trimiziad',
+ 'quarter-future-other' => 'a-benn {0} trimiziad',
+ 'quarter-future-two' => 'a-benn {0} drimiziad',
+ 'quarter-narrow-future-few' => '+{0} trim.',
+ 'quarter-narrow-future-many' => '+{0} trim.',
+ 'quarter-narrow-future-one' => '+{0} trim.',
+ 'quarter-narrow-future-other' => '+{0} trim.',
+ 'quarter-narrow-future-two' => '+{0} trim.',
+ 'quarter-narrow-past-few' => '-{0} trim.',
+ 'quarter-narrow-past-many' => '-{0} trim.',
+ 'quarter-narrow-past-one' => '-{0} trim.',
+ 'quarter-narrow-past-other' => '-{0} trim.',
+ 'quarter-narrow-past-two' => '-{0} trim.',
+ 'quarter-past-few' => '{0} zrimiziad zo',
+ 'quarter-past-many' => '{0} a zrimiziadoù zo',
+ 'quarter-past-one' => '{0} trimiziad zo',
+ 'quarter-past-other' => '{0} trimiziad zo',
+ 'quarter-past-two' => '{0} drimiziad zo',
+ 'quarter-short-future-few' => 'a-benn {0} trim.',
+ 'quarter-short-future-many' => 'a-benn {0} trim.',
+ 'quarter-short-future-one' => 'a-benn {0} trim.',
+ 'quarter-short-future-other' => 'a-benn {0} trim.',
+ 'quarter-short-future-two' => 'a-benn {0} trim.',
+ 'quarter-short-past-few' => '{0} trim. zo',
+ 'quarter-short-past-many' => '{0} trim. zo',
+ 'quarter-short-past-one' => '{0} trim. zo',
+ 'quarter-short-past-other' => '{0} trim. zo',
+ 'quarter-short-past-two' => '{0} trim. zo',
+ 'sat-future-few' => 'a-benn {0} Sadorn',
+ 'sat-future-many' => 'a-benn {0} a Sadornioù',
+ 'sat-future-one' => 'a-benn {0} Sadorn',
+ 'sat-future-other' => 'a-benn {0} Sadorn',
+ 'sat-future-two' => 'a-benn {0} Sadorn',
+ 'sat-narrow-future-few' => 'a-benn {0} Sa',
+ 'sat-narrow-future-many' => 'a-benn {0} a Sa',
+ 'sat-narrow-future-one' => 'a-benn {0} Sa',
+ 'sat-narrow-future-other' => 'a-benn {0} Sa',
+ 'sat-narrow-future-two' => 'a-benn {0} Sa',
+ 'sat-narrow-past-few' => '{0} Sa zo',
+ 'sat-narrow-past-many' => '{0} a Sa zo',
+ 'sat-narrow-past-one' => '{0} Sa zo',
+ 'sat-narrow-past-other' => '{0} Sa zo',
+ 'sat-narrow-past-two' => '{0} Sa zo',
+ 'sat-past-few' => '{0} Sadorn zo',
+ 'sat-past-many' => '{0} a Sadornioù zo',
+ 'sat-past-one' => '{0} Sadorn zo',
+ 'sat-past-other' => '{0} Sadorn zo',
+ 'sat-past-two' => '{0} Sadorn zo',
+ 'sat-short-future-few' => 'a-benn {0} Sad.',
+ 'sat-short-future-many' => 'a-benn {0} a Sad.',
+ 'sat-short-future-one' => 'a-benn {0} Sad.',
+ 'sat-short-future-other' => 'a-benn {0} Sad.',
+ 'sat-short-future-two' => 'a-benn {0} Sad.',
+ 'sat-short-past-few' => '{0} Sad. zo',
+ 'sat-short-past-many' => '{0} a Sad. zo',
+ 'sat-short-past-one' => '{0} Sad. zo',
+ 'sat-short-past-other' => '{0} Sad. zo',
+ 'sat-short-past-two' => '{0} Sad. zo',
'second-few' => '{0} eilenn',
+ 'second-future-few' => 'a-benn {0} eilenn',
+ 'second-future-many' => 'a-benn {0} a eilennoù',
+ 'second-future-one' => 'a-benn {0} eilenn',
+ 'second-future-other' => 'a-benn {0} eilenn',
+ 'second-future-two' => 'a-benn {0} eilenn',
'second-many' => '{0} a eilennoù',
+ 'second-narrow-future-few' => '+{0} s',
+ 'second-narrow-future-many' => '+{0} s',
+ 'second-narrow-future-one' => '+{0} s',
+ 'second-narrow-future-other' => '+{0} s',
+ 'second-narrow-future-two' => '+{0} s',
+ 'second-narrow-past-few' => '-{0} s',
+ 'second-narrow-past-many' => '-{0} s',
+ 'second-narrow-past-one' => '-{0} s',
+ 'second-narrow-past-other' => '-{0} s',
+ 'second-narrow-past-two' => '-{0} s',
'second-one' => '{0} eilenn',
'second-other' => '{0} eilenn',
+ 'second-past-few' => '{0} eilenn zo',
+ 'second-past-many' => '{0} eilenn zo',
+ 'second-past-one' => '{0} eilenn zo',
+ 'second-past-other' => '{0} eilenn zo',
+ 'second-past-two' => '{0} eilenn zo',
+ 'second-short-future-few' => 'a-benn {0} s',
+ 'second-short-future-many' => 'a-benn {0} s',
+ 'second-short-future-one' => 'a-benn {0} s',
+ 'second-short-future-other' => 'a-benn {0} s',
+ 'second-short-future-two' => 'a-benn {0} s',
+ 'second-short-past-few' => '{0} s zo',
+ 'second-short-past-many' => '{0} s zo',
+ 'second-short-past-one' => '{0} s zo',
+ 'second-short-past-other' => '{0} s zo',
+ 'second-short-past-two' => '{0} s zo',
'second-two' => '{0} eilenn',
+ 'sun-future-few' => 'a-benn {0} Sul',
+ 'sun-future-many' => 'a-benn {0} a Sulioù',
+ 'sun-future-one' => 'a-benn {0} Sul',
+ 'sun-future-other' => 'a-benn {0} Sul',
+ 'sun-future-two' => 'a-benn {0} Sul',
+ 'sun-narrow-future-few' => 'a-benn {0} Su',
+ 'sun-narrow-future-many' => 'a-benn {0} a Su',
+ 'sun-narrow-future-one' => 'a-benn {0} Su',
+ 'sun-narrow-future-other' => 'a-benn {0} Su',
+ 'sun-narrow-future-two' => 'a-benn {0} Su',
+ 'sun-narrow-past-few' => '{0} Su zo',
+ 'sun-narrow-past-many' => '{0} a Su zo',
+ 'sun-narrow-past-one' => '{0} Su zo',
+ 'sun-narrow-past-other' => '{0} Su zo',
+ 'sun-narrow-past-two' => '{0} Su zo',
+ 'sun-past-few' => '{0} Sul zo',
+ 'sun-past-many' => '{0} a Sulioù zo',
+ 'sun-past-one' => '{0} Sul zo',
+ 'sun-past-other' => '{0} Sul zo',
+ 'sun-past-two' => '{0} Sul zo',
+ 'sun-short-future-few' => 'a-benn {0} Sul',
+ 'sun-short-future-many' => 'a-benn {0} a Sul.',
+ 'sun-short-future-one' => 'a-benn {0} Sul',
+ 'sun-short-future-other' => 'a-benn {0} Sul',
+ 'sun-short-future-two' => 'a-benn {0} Sul',
+ 'sun-short-past-few' => '{0} Sul zo',
+ 'sun-short-past-many' => '{0} a Sul. zo',
+ 'sun-short-past-one' => '{0} Sul zo',
+ 'sun-short-past-other' => '{0} Sul zo',
+ 'sun-short-past-two' => '{0} Sul zo',
+ 'thu-future-few' => 'a-benn {0} Yaou',
+ 'thu-future-many' => 'a-benn {0} a Yaouioù',
+ 'thu-future-one' => 'a-benn {0} Yaou',
+ 'thu-future-other' => 'a-benn {0} Yaou',
+ 'thu-future-two' => 'a-benn {0} Yaou',
+ 'thu-narrow-future-few' => 'a-benn {0} Y',
+ 'thu-narrow-future-many' => 'a-benn {0} a Yaou.',
+ 'thu-narrow-future-one' => 'a-benn {0} Y',
+ 'thu-narrow-future-other' => 'a-benn {0} Y',
+ 'thu-narrow-future-two' => 'a-benn {0} Y',
+ 'thu-narrow-past-few' => '{0} Y zo',
+ 'thu-narrow-past-many' => '{0} a Y zo',
+ 'thu-narrow-past-one' => '{0} Y zo',
+ 'thu-narrow-past-other' => '{0} Y zo',
+ 'thu-narrow-past-two' => '{0} Y zo',
+ 'thu-past-few' => '{0} Yaou zo',
+ 'thu-past-many' => '{0} a Yaouioù zo',
+ 'thu-past-one' => '{0} Yaou zo',
+ 'thu-past-other' => '{0} Yaou zo',
+ 'thu-past-two' => '{0} Yaou zo',
+ 'thu-short-future-few' => 'a-benn {0} Yaou',
+ 'thu-short-future-many' => 'a-benn {0} a Yaou.',
+ 'thu-short-future-one' => 'a-benn {0} Yaou',
+ 'thu-short-future-other' => 'a-benn {0} Yaou',
+ 'thu-short-future-two' => 'a-benn {0} Yaou',
+ 'thu-short-past-few' => '{0} Yaou zo',
+ 'thu-short-past-many' => '{0} a Yaou. zo',
+ 'thu-short-past-one' => '{0} Yaou zo',
+ 'thu-short-past-other' => '{0} Yaou zo',
+ 'thu-short-past-two' => '{0} Yaou zo',
+ 'tue-future-few' => 'a-benn {0} Meurzh',
+ 'tue-future-many' => 'a-benn {0} a Veurzhioù',
+ 'tue-future-one' => 'a-benn {0} Meurzh',
+ 'tue-future-other' => 'a-benn {0} Meurzh',
+ 'tue-future-two' => 'a-benn {0} Veurzh',
+ 'tue-past-few' => '{0} Meurzh zo',
+ 'tue-past-many' => '{0} a Veurzhioù zo',
+ 'tue-past-one' => '{0} Meurzh zo',
+ 'tue-past-other' => '{0} Meurzh zo',
+ 'tue-past-two' => '{0} Veurzh zo',
+ 'wed-future-few' => 'a-benn {0} Mercʼher',
+ 'wed-future-many' => 'a-benn {0} a Vercʼherioù',
+ 'wed-future-one' => 'a-benn {0} Mercʼher',
+ 'wed-future-other' => 'a-benn {0} Mercʼher',
+ 'wed-future-two' => 'a-benn {0} Vercʼher',
+ 'wed-past-few' => '{0} Mercʼher zo',
+ 'wed-past-many' => '{0} Mercʼher zo',
+ 'wed-past-one' => '{0} Mercʼher zo',
+ 'wed-past-other' => '{0} Mercʼher zo',
+ 'wed-past-two' => '{0} Vercʼher zo',
+ 'week-few' => '{0} sizhun',
+ 'week-future-few' => 'a-benn {0} sizhun',
+ 'week-future-many' => 'a-benn {0} a sizhunioù',
+ 'week-future-one' => 'a-benn {0} sizhun',
+ 'week-future-other' => 'a-benn {0} sizhun',
+ 'week-future-two' => 'a-benn {0} sizhun',
+ 'week-many' => '{0} a sizhunioù',
+ 'week-one' => '{0} sizhun',
+ 'week-other' => '{0} sizhun',
+ 'week-past-few' => '{0} sizhun zo',
+ 'week-past-many' => '{0} a sizhunioù zo',
+ 'week-past-one' => '{0} sizhun zo',
+ 'week-past-other' => '{0} sizhun zo',
+ 'week-past-two' => '{0} sizhun zo',
+ 'week-two' => '{0} sizhun',
'year-few' => '{0} bloaz',
+ 'year-future-few' => 'a-benn {0} bloaz',
+ 'year-future-many' => 'a-benn {0} a vloazioù',
+ 'year-future-one' => 'a-benn {0} bloaz',
+ 'year-future-other' => 'a-benn {0} vloaz',
+ 'year-future-two' => 'a-benn {0} vloaz',
'year-many' => '{0} a vloazioù',
+ 'year-narrow-future-few' => '+{0} bl.',
+ 'year-narrow-future-many' => '+{0} bl.',
+ 'year-narrow-future-one' => '+{0} bl.',
+ 'year-narrow-future-other' => '+{0} bl.',
+ 'year-narrow-future-two' => '+{0} bl.',
+ 'year-narrow-past-few' => '-{0} bl.',
+ 'year-narrow-past-many' => '-{0} bl.',
+ 'year-narrow-past-one' => '-{0} bl.',
+ 'year-narrow-past-other' => '-{0} bl.',
+ 'year-narrow-past-two' => '-{0} bl.',
'year-one' => '{0} bloaz',
'year-other' => '{0} vloaz',
+ 'year-past-few' => '{0} bloaz zo',
+ 'year-past-many' => '{0} a vloazioù zo',
+ 'year-past-one' => '{0} bloaz zo',
+ 'year-past-other' => '{0} vloaz zo',
+ 'year-past-two' => '{0} vloaz zo',
+ 'year-short-future-few' => 'a-benn {0} bl.',
+ 'year-short-future-many' => 'a-benn {0} bl.',
+ 'year-short-future-one' => 'a-benn {0} bl.',
+ 'year-short-future-other' => 'a-benn {0} bl.',
+ 'year-short-future-two' => 'a-benn {0} bl.',
+ 'year-short-past-few' => '{0} bl. zo',
+ 'year-short-past-many' => '{0} bl. zo',
+ 'year-short-past-one' => '{0} bl. zo',
+ 'year-short-past-other' => '{0} bl. zo',
+ 'year-short-past-two' => '{0} bl. zo',
'year-two' => '{0} vloaz',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesBs.php b/MLEB/cldr/CldrNames/CldrNamesBs.php
index ea2d7fd0..e7ef8e68 100644
--- a/MLEB/cldr/CldrNames/CldrNamesBs.php
+++ b/MLEB/cldr/CldrNames/CldrNamesBs.php
@@ -1,32 +1,32 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'afarski',
- 'ab' => 'abhazijski',
- 'ace' => 'ačineski',
+ 'ab' => 'abhaski',
+ 'ace' => 'ačinski',
'ach' => 'akoli',
'ada' => 'adangmejski',
'ady' => 'adigejski',
'ae' => 'avestanski',
- 'af' => 'afrikanerski',
+ 'af' => 'afrikans',
'afh' => 'afrihili',
'agq' => 'aghem',
'ain' => 'ainu',
'ak' => 'akan',
'akk' => 'akadijski',
- 'ale' => 'aljut',
+ 'ale' => 'aleutski',
'alt' => 'južni altai',
'am' => 'amharski',
- 'an' => 'aragonežanski',
+ 'an' => 'aragonski',
'ang' => 'staroengleski',
'anp' => 'angika',
'ar' => 'arapski',
'ar-001' => 'moderni standardni arapski',
- 'arc' => 'armajski',
- 'arn' => 'araukanski',
+ 'arc' => 'aramejski',
+ 'arn' => 'mapuški',
'arp' => 'arapaho',
'arw' => 'aravak',
- 'as' => 'asemijski',
+ 'as' => 'asamski',
'asa' => 'asu',
'ast' => 'asturijski',
'av' => 'avarski',
@@ -38,13 +38,14 @@ $languageNames = array(
'ban' => 'balinezijski',
'bas' => 'basa',
'bax' => 'bamunski',
- 'bbj' => 'ghomala',
+ 'bbj' => 'gomala',
'be' => 'bjeloruski',
'bej' => 'beja',
'bem' => 'bemba',
'bez' => 'bena',
'bfd' => 'bafut',
'bg' => 'bugarski',
+ 'bgn' => 'zapadni belučki',
'bho' => 'bojpuri',
'bi' => 'bislama',
'bik' => 'bikol',
@@ -58,16 +59,16 @@ $languageNames = array(
'bra' => 'braj',
'brx' => 'bodo',
'bs' => 'bosanski',
- 'bss' => 'akoose',
+ 'bss' => 'akoski',
'bua' => 'buriat',
- 'bug' => 'buginežanskii',
+ 'bug' => 'bugiški',
'bum' => 'bulu',
'byn' => 'blin',
'byv' => 'medumba',
'ca' => 'katalonski',
'cad' => 'kado',
'car' => 'karipski',
- 'cay' => 'cayuga',
+ 'cay' => 'kajuga',
'cch' => 'atsam',
'ce' => 'čečenski',
'ceb' => 'cebuano',
@@ -77,60 +78,53 @@ $languageNames = array(
'chg' => 'čagatai',
'chk' => 'čukeski',
'chm' => 'mari',
- 'chn' => 'činukski',
- 'cho' => 'čoktavski',
+ 'chn' => 'činukski žargon',
+ 'cho' => 'čoktav',
'chp' => 'čipvijanski',
'chr' => 'čiroki',
'chy' => 'čejenski',
- 'ckb' => 'soranski kurdski',
+ 'ckb' => 'centralnokurdski',
'co' => 'korzikanski',
'cop' => 'koptski',
'cr' => 'kri',
- 'crh' => 'krimeanski turski',
+ 'crh' => 'krimski turski',
+ 'crs' => 'seselva kreolski francuski',
'cs' => 'češki',
'csb' => 'kašubijanski',
- 'cu' => 'staroslovenski',
+ 'cu' => 'staroslavenski',
'cv' => 'čuvaški',
- 'cy' => 'cy',
+ 'cy' => 'velški',
'da' => 'danski',
'dak' => 'dakota',
'dar' => 'dargva',
'dav' => 'taita',
'de' => 'njemački',
- 'de-at' => 'austrijski njemački',
- 'de-ch' => 'gornjonjemački (švicarski)',
+ 'de-ch' => 'gornjonjemački (Švicarska)',
'del' => 'delaver',
- 'den' => 'slavski',
+ 'den' => 'slave',
'dgr' => 'dogrib',
'din' => 'dinka',
'dje' => 'zarma',
'doi' => 'dogri',
'dsb' => 'donjolužičkosrpski',
'dua' => 'duala',
- 'dum' => 'srednji holandski',
- 'dv' => 'divehijski',
- 'dyo' => 'jola-fonyi',
- 'dyu' => 'đula',
+ 'dum' => 'srednjovjekovni holandski',
+ 'dv' => 'divehi',
+ 'dyo' => 'jola-foni',
+ 'dyu' => 'diula',
'dz' => 'džonga',
'dzg' => 'dazaga',
'ebu' => 'embu',
'ee' => 'eve',
- 'efi' => 'efikski',
+ 'efi' => 'efik',
'egy' => 'staroegipatski',
'eka' => 'ekajuk',
'el' => 'grčki',
'elx' => 'elamitski',
'en' => 'engleski',
- 'en-au' => 'australski engleski',
- 'en-ca' => 'kanadski engleski',
- 'en-gb' => 'britanski engleski',
- 'en-us' => 'američki engleski',
- 'enm' => 'srednji engleski',
+ 'enm' => 'srednjovjekovni engleski',
'eo' => 'esperanto',
'es' => 'španski',
- 'es-419' => 'latinoamerički španski',
- 'es-es' => 'evropski španski',
- 'es-mx' => 'meksički španski',
'et' => 'estonski',
'eu' => 'baskijski',
'ewo' => 'evondo',
@@ -139,41 +133,39 @@ $languageNames = array(
'fat' => 'fanti',
'ff' => 'fulah',
'fi' => 'finski',
- 'fil' => 'filipinski',
+ 'fil' => 'filipino',
'fj' => 'fidžijski',
'fo' => 'farski',
'fon' => 'fon',
'fr' => 'francuski',
- 'fr-ca' => 'kanadski francuski',
- 'fr-ch' => 'švajcarski francuski',
- 'frm' => 'srednji francuski',
+ 'frm' => 'srednjovjekovni francuski',
'fro' => 'starofrancuski',
- 'frr' => 'severno-frizijski',
- 'frs' => 'istočni frizijski',
+ 'frr' => 'sjeverni frizijski',
+ 'frs' => 'istočnofrizijski',
'fur' => 'friulijski',
- 'fy' => 'frizijski',
+ 'fy' => 'zapadni frizijski',
'ga' => 'irski',
'gaa' => 'ga',
'gag' => 'gagauški',
'gay' => 'gajo',
'gba' => 'gbaja',
'gd' => 'škotski galski',
- 'gez' => 'džiz',
- 'gil' => 'gilbertški',
- 'gl' => 'galski',
- 'gmh' => 'srednji visoki nemački',
+ 'gez' => 'staroetiopski',
+ 'gil' => 'gilbertski',
+ 'gl' => 'galicijski',
+ 'gmh' => 'srednjovjekovni gornjonjemački',
'gn' => 'gvarani',
- 'goh' => 'staronemački',
+ 'goh' => 'staronjemački',
'gon' => 'gondi',
'gor' => 'gorontalo',
'got' => 'gotski',
'grb' => 'grebo',
'grc' => 'starogrčki',
- 'gsw' => 'švajcarski njemački',
+ 'gsw' => 'njemački (Švicarska)',
'gu' => 'gudžarati',
- 'guz' => 'gusii',
+ 'guz' => 'gusi',
'gv' => 'manks',
- 'gwi' => 'gwich’in',
+ 'gwi' => 'gvičin',
'ha' => 'hausa',
'hai' => 'haida',
'haw' => 'havajski',
@@ -185,10 +177,10 @@ $languageNames = array(
'ho' => 'hiri motu',
'hr' => 'hrvatski',
'hsb' => 'gornjolužičkosrpski',
- 'ht' => 'haićanski',
+ 'ht' => 'haićanski kreolski',
'hu' => 'mađarski',
'hup' => 'hupa',
- 'hy' => 'jermenski',
+ 'hy' => 'armenski',
'hz' => 'herero',
'ia' => 'interlingva',
'iba' => 'iban',
@@ -207,15 +199,15 @@ $languageNames = array(
'ja' => 'japanski',
'jbo' => 'lojban',
'jgo' => 'ngomba',
- 'jmc' => 'machame',
- 'jpr' => 'judeo-persijski',
+ 'jmc' => 'makame',
+ 'jpr' => 'judeo-perzijski',
'jrb' => 'judeo-arapski',
'jv' => 'javanski',
'ka' => 'gruzijski',
- 'kaa' => 'kara-kalpaški',
+ 'kaa' => 'kara-kalpak',
'kab' => 'kabile',
'kac' => 'kačin',
- 'kaj' => 'žju',
+ 'kaj' => 'kaju',
'kam' => 'kamba',
'kaw' => 'kavi',
'kbd' => 'kabardijski',
@@ -227,10 +219,10 @@ $languageNames = array(
'kg' => 'kongo',
'kha' => 'kasi',
'kho' => 'kotanizijski',
- 'khq' => 'koyra chiini',
+ 'khq' => 'kojra čini',
'ki' => 'kikuju',
'kj' => 'kuanjama',
- 'kk' => 'kazački',
+ 'kk' => 'kazaški',
'kkj' => 'kako',
'kl' => 'kalalisutski',
'kln' => 'kalenjin',
@@ -238,48 +230,49 @@ $languageNames = array(
'kmb' => 'kimbundu',
'kn' => 'kanada',
'ko' => 'korejski',
- 'koi' => 'komi-permjački',
+ 'koi' => 'komi-permski',
'kok' => 'konkani',
- 'kos' => 'kosreanski',
+ 'kos' => 'kosrejski',
'kpe' => 'kpele',
'kr' => 'kanuri',
'krc' => 'karačaj-balkar',
'kri' => 'krio',
'krl' => 'karelijski',
- 'kru' => 'kurukh',
- 'ks' => 'kašmiri',
- 'ksb' => 'shambala',
+ 'kru' => 'kuruški',
+ 'ks' => 'kašmirski',
+ 'ksb' => 'šambala',
'ksf' => 'bafia',
'ksh' => 'kelnski',
'ku' => 'kurdski',
'kum' => 'kumik',
'kut' => 'kutenai',
'kv' => 'komi',
- 'kw' => 'korniški',
- 'ky' => 'kirgiski',
+ 'kw' => 'kornski',
+ 'ky' => 'kirgiški',
'la' => 'latinski',
'lad' => 'ladino',
'lag' => 'langi',
'lah' => 'landa',
'lam' => 'lamba',
'lb' => 'luksemburški',
- 'lez' => 'lezgian',
+ 'lez' => 'lezgijski',
'lg' => 'ganda',
- 'li' => 'limburgiš',
+ 'li' => 'limburški',
'lkt' => 'lakota',
'ln' => 'lingala',
- 'lo' => 'laoški',
+ 'lo' => 'laoski',
'lol' => 'mongo',
'loz' => 'lozi',
+ 'lrc' => 'sjeverni luri',
'lt' => 'litvanski',
'lu' => 'luba-katanga',
'lua' => 'luba-lulua',
'lui' => 'luiseno',
'lun' => 'lunda',
'luo' => 'luo',
- 'lus' => 'lušai',
- 'luy' => 'luyia',
- 'lv' => 'letonski',
+ 'lus' => 'mizo',
+ 'luy' => 'luhija',
+ 'lv' => 'latvijski',
'mad' => 'madureški',
'maf' => 'mafa',
'mag' => 'magahi',
@@ -293,10 +286,10 @@ $languageNames = array(
'men' => 'mende',
'mer' => 'meru',
'mfe' => 'mauricijski kreolski',
- 'mg' => 'malagazijski',
- 'mga' => 'srednji irski',
- 'mgh' => 'makhuwa-meetto',
- 'mgo' => 'meta’',
+ 'mg' => 'malgaški',
+ 'mga' => 'srednjovjekovni irski',
+ 'mgh' => 'makuva-meto',
+ 'mgo' => 'meta',
'mh' => 'maršalski',
'mi' => 'maorski',
'mic' => 'mikmak',
@@ -306,7 +299,7 @@ $languageNames = array(
'mn' => 'mongolski',
'mnc' => 'manču',
'mni' => 'manipuri',
- 'moh' => 'mahavski',
+ 'moh' => 'mohavk',
'mos' => 'mosi',
'mr' => 'marati',
'ms' => 'malajski',
@@ -317,30 +310,32 @@ $languageNames = array(
'mwl' => 'mirandeški',
'mwr' => 'marvari',
'my' => 'burmanski',
- 'mye' => 'myene',
+ 'mye' => 'mjene',
'myv' => 'erzija',
+ 'mzn' => 'mazanderanski',
'na' => 'nauru',
- 'nap' => 'neapolitanski',
+ 'nap' => 'napolitanski',
'naq' => 'nama',
- 'nb' => 'norveški bokmal',
+ 'nb' => 'norveški (Bokmal)',
'nd' => 'sjeverni ndebele',
- 'nds' => 'niski nemački',
+ 'nds' => 'donjonjemački',
+ 'nds-nl' => 'donjosaksonski',
'ne' => 'nepalski',
'new' => 'nevari',
'ng' => 'ndonga',
'nia' => 'nias',
- 'niu' => 'niuean',
+ 'niu' => 'niue',
'nl' => 'holandski',
'nl-be' => 'flamanski',
- 'nmg' => 'kwasio',
- 'nn' => 'norveški njorsk',
- 'nnh' => 'ngiemboon',
+ 'nmg' => 'kvasio',
+ 'nn' => 'norveški (Nynorsk)',
+ 'nnh' => 'ngiembon',
'no' => 'norveški',
'nog' => 'nogai',
- 'non' => 'stari norski',
+ 'non' => 'staronordijski',
'nqo' => 'nko',
'nr' => 'južni ndebele',
- 'nso' => 'severni soto',
+ 'nso' => 'sjeverni soto',
'nus' => 'nuer',
'nv' => 'navaho',
'nwc' => 'klasični nevari',
@@ -349,59 +344,62 @@ $languageNames = array(
'nyn' => 'njankole',
'nyo' => 'njoro',
'nzi' => 'nzima',
- 'oc' => 'provansalski',
+ 'oc' => 'oksitanski',
'oj' => 'ojibva',
'om' => 'oromo',
'or' => 'orijski',
'os' => 'osetski',
'osa' => 'osage',
- 'ota' => 'otomanski turski',
- 'pa' => 'pandžabski',
+ 'ota' => 'osmanski turski',
+ 'pa' => 'pandžapski',
'pag' => 'pangasinski',
'pal' => 'pahlavi',
'pam' => 'pampanga',
'pap' => 'papiamento',
'pau' => 'palauanski',
- 'peo' => 'staropersijski',
+ 'pcm' => 'nigerijski pidžin',
+ 'peo' => 'staroperzijski',
'phn' => 'feničanski',
'pi' => 'pali',
'pl' => 'poljski',
'pon' => 'ponpejski',
+ 'prg' => 'pruski',
'pro' => 'staroprovansalski',
- 'ps' => 'paštunski',
+ 'ps' => 'paštu',
'pt' => 'portugalski',
- 'qu' => 'kvenča',
+ 'qu' => 'kečua',
'quc' => 'kiče',
- 'raj' => 'rađastani',
+ 'raj' => 'rajastani',
'rap' => 'rapanui',
'rar' => 'rarotongan',
- 'rm' => 'reto-romanski',
+ 'rm' => 'retoromanski',
'rn' => 'rundi',
'ro' => 'rumunski',
'ro-md' => 'moldavski',
'rof' => 'rombo',
'rom' => 'romani',
'ru' => 'ruski',
- 'rup' => 'aromanijski',
- 'rw' => 'kinjarvanda',
+ 'rup' => 'arumunski',
+ 'rw' => 'kinjaruanda',
'rwk' => 'rua',
'sa' => 'sanskrit',
'sad' => 'sandave',
- 'sah' => 'jakut',
+ 'sah' => 'jakutski',
'sam' => 'samaritanski aramejski',
'saq' => 'samburu',
'sas' => 'sasak',
'sat' => 'santali',
- 'sba' => 'ngambay',
+ 'sba' => 'ngambaj',
'sbp' => 'sangu',
'sc' => 'sardinijski',
'scn' => 'sicilijanski',
'sco' => 'škotski',
'sd' => 'sindi',
+ 'sdh' => 'južni kurdski',
'se' => 'sjeverni sami',
- 'see' => 'seneca',
+ 'see' => 'seneka',
'seh' => 'sena',
- 'sel' => 'selkap',
+ 'sel' => 'selkup',
'ses' => 'kojraboro seni',
'sg' => 'sango',
'sga' => 'staroirski',
@@ -409,34 +407,33 @@ $languageNames = array(
'shi' => 'tahelhit',
'shn' => 'šan',
'shu' => 'čadski arapski',
- 'si' => 'singaleski',
+ 'si' => 'sinhaleški',
'sid' => 'sidamo',
'sk' => 'slovački',
- 'sl' => 'slovenački',
+ 'sl' => 'slovenski',
'sm' => 'samoanski',
'sma' => 'južni sami',
'smj' => 'lule sami',
'smn' => 'inari sami',
- 'sms' => 'skoltski jezik',
+ 'sms' => 'skolt sami',
'sn' => 'šona',
'snk' => 'soninke',
'so' => 'somalski',
- 'sog' => 'sodžijenski',
+ 'sog' => 'sogdien',
'sq' => 'albanski',
'sr' => 'srpski',
'srn' => 'srananski tongo',
'srr' => 'serer',
'ss' => 'svati',
'ssy' => 'saho',
- 'st' => 'sesoto',
- 'su' => 'sudanski',
+ 'st' => 'južni soto',
+ 'su' => 'sundanski',
'suk' => 'sukuma',
'sus' => 'susu',
'sux' => 'sumerski',
'sv' => 'švedski',
'sw' => 'svahili',
'swb' => 'komorski',
- 'swc' => 'kongoanski swahili',
'syc' => 'klasični sirijski',
'syr' => 'sirijski',
'ta' => 'tamilski',
@@ -452,12 +449,12 @@ $languageNames = array(
'tiv' => 'tiv',
'tk' => 'turkmenski',
'tkl' => 'tokelau',
- 'tl' => 'tagalski',
+ 'tl' => 'tagalog',
'tlh' => 'klingonski',
'tli' => 'tlingit',
'tmh' => 'tamašek',
'tn' => 'tsvana',
- 'to' => 'tonga',
+ 'to' => 'tonganski',
'tog' => 'njasa tonga',
'tpi' => 'tok pisin',
'tr' => 'turski',
@@ -471,40 +468,41 @@ $languageNames = array(
'twq' => 'tasavak',
'ty' => 'tahićanski',
'tyv' => 'tuvinijski',
- 'tzm' => 'marokanski tamazigt',
+ 'tzm' => 'centralnoatlaski tamazigt',
'udm' => 'udmurt',
'ug' => 'ujgurski',
'uga' => 'ugaritski',
'uk' => 'ukrajinski',
'umb' => 'umbundu',
- 'und' => 'nepoznati ili nevažeći jezik',
+ 'und' => 'nepoznati jezik',
'ur' => 'urdu',
'uz' => 'uzbečki',
'vai' => 'vai',
've' => 'venda',
'vi' => 'vijetnamski',
- 'vo' => 'volapük',
+ 'vo' => 'volapuk',
'vot' => 'votski',
'vun' => 'vunjo',
'wa' => 'valun',
- 'wae' => 'walser',
+ 'wae' => 'valser',
'wal' => 'valamo',
'war' => 'varej',
'was' => 'vašo',
+ 'wbp' => 'varlpiri',
'wo' => 'volof',
'xal' => 'kalmik',
- 'xh' => 'kosa',
+ 'xh' => 'hosa',
'xog' => 'soga',
'yao' => 'jao',
'yap' => 'japeški',
- 'yav' => 'yangben',
- 'ybb' => 'yemba',
+ 'yav' => 'jangben',
+ 'ybb' => 'jemba',
'yi' => 'jidiš',
'yo' => 'jorubanski',
'yue' => 'kantonski',
'za' => 'zuang',
'zap' => 'zapotečki',
- 'zbl' => 'blisimboli',
+ 'zbl' => 'blis simboli',
'zen' => 'zenaga',
'zgh' => 'standardni marokanski tamazigt',
'zh' => 'kineski',
@@ -514,17 +512,17 @@ $languageNames = array(
'zun' => 'zuni',
'zxx' => 'bez lingvističkog sadržaja',
'zza' => 'zaza',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'ADP' => 'Andorska pezeta',
'AED' => 'Dirham Ujedinjenih Arapskih Emirata',
'AFA' => 'Avganistanski avgani (1927–2002)',
'AFN' => 'Afganistanski afgan',
'ALK' => 'Albanski lek (1946–1965)',
'ALL' => 'Albanski lek',
- 'AMD' => 'Jermenski dram',
- 'ANG' => 'Gulden Holandskih Antila',
+ 'AMD' => 'Armenski dram',
+ 'ANG' => 'Holandskoantilski gulden',
'AOA' => 'Angolska kvanza',
'AOK' => 'Angolijska kvanza (1977–1991)',
'AON' => 'Angolijska nova kvanza (1990–2000)',
@@ -540,7 +538,7 @@ $currencyNames = array(
'AZM' => 'Azerbejdžanski manat (1993–2006)',
'AZN' => 'Azerbejdžanski manat',
'BAD' => 'Bosansko-Hercegovački dinar',
- 'BAM' => 'Bosansko-Hercegovačka konvertibilna marka',
+ 'BAM' => 'Bosanskohercegovačka konvertibilna marka',
'BAN' => 'Bosansko-hercegovački novi dinar',
'BBD' => 'Barbadoski dolar',
'BDT' => 'Bangladeška taka',
@@ -571,7 +569,8 @@ $currencyNames = array(
'BUK' => 'Burmanski kjat',
'BWP' => 'Bocvanska pula',
'BYB' => 'Beloruska nova rublja (1994–1999)',
- 'BYR' => 'Bjeloruska rublja',
+ 'BYN' => 'Bjeloruska rublja',
+ 'BYR' => 'Bjeloruska rublja (2000–2016)',
'BZD' => 'Belizeanski dolar',
'CAD' => 'Kanadski dolar',
'CDF' => 'Kongoanski franak',
@@ -581,6 +580,7 @@ $currencyNames = array(
'CLE' => 'Čileanski eskudo',
'CLF' => 'Čileanski unidades de fomento',
'CLP' => 'Čileanski pezos',
+ 'CNH' => 'Kineski juan (izvanteritorijalni)',
'CNX' => 'Dolar kineske narodne banke',
'CNY' => 'Kineski juan',
'COP' => 'Kolumbijski pezos',
@@ -610,7 +610,7 @@ $currencyNames = array(
'ETB' => 'Etiopski bir',
'EUR' => 'Euro',
'FIM' => 'Finska marka',
- 'FJD' => 'Fidži dolar',
+ 'FJD' => 'Fidžijski dolar',
'FKP' => 'Folklandska funta',
'FRF' => 'Francuski franak',
'GBP' => 'Britanska funta',
@@ -629,7 +629,7 @@ $currencyNames = array(
'GWP' => 'Gvineja bisao pezo',
'GYD' => 'Gvajanski dolar',
'HKD' => 'Honkonški dolar',
- 'HNL' => 'Honduraska lempira',
+ 'HNL' => 'Honduraška lempira',
'HRD' => 'Hrvatski dinar',
'HRK' => 'Hrvatska kuna',
'HTG' => 'Haićanski gurd',
@@ -645,7 +645,7 @@ $currencyNames = array(
'ISJ' => 'stara islandska kruna',
'ISK' => 'Islandska kruna',
'ITL' => 'Italijanska lira',
- 'JMD' => 'Jamajski dolar',
+ 'JMD' => 'Jamajčanski dolar',
'JOD' => 'Jordanski dinar',
'JPY' => 'Japanski jen',
'KES' => 'Kenijski šiling',
@@ -676,8 +676,8 @@ $currencyNames = array(
'MAF' => 'Marokanski franak',
'MCF' => 'Monegaskaški franak',
'MDC' => 'moldavski kupon',
- 'MDL' => 'Moldavski lev',
- 'MGA' => 'Malagaski ariari',
+ 'MDL' => 'Moldavski lej',
+ 'MGA' => 'Malagaški arijari',
'MGF' => 'Malagasijski franak',
'MKD' => 'Makedonski denar',
'MKN' => 'Makedonski denar (1992–1993)',
@@ -685,12 +685,13 @@ $currencyNames = array(
'MMK' => 'Mijanmarski kjat',
'MNT' => 'Mongolski tugrik',
'MOP' => 'Makaonska pataka',
- 'MRO' => 'Mauritanijska ugvija',
+ 'MRO' => 'Mauritanijska ugvija (1973–2017)',
+ 'MRU' => 'Mauritanijska ugvija',
'MTL' => 'Malteška lira',
'MTP' => 'Malteška funta',
'MUR' => 'Mauricijska rupija',
'MVR' => 'Maldivska rufija',
- 'MWK' => 'Malavska kvača',
+ 'MWK' => 'Malavijska kvača',
'MXN' => 'Meksički pezos',
'MXP' => 'Meksijski srebrno pezo (1861–1992)',
'MXV' => 'Meksijski unidad de inverzion',
@@ -709,7 +710,7 @@ $currencyNames = array(
'OMR' => 'Omanski rijal',
'PAB' => 'Panamska balboa',
'PEI' => 'Peruvijski inti',
- 'PEN' => 'Peruanski novi sol',
+ 'PEN' => 'Peruanski sol',
'PES' => 'Peruvijski sol (1863–1965)',
'PGK' => 'Kina Papue Nove Gvineje',
'PHP' => 'Filipinski pezos',
@@ -721,7 +722,7 @@ $currencyNames = array(
'QAR' => 'Katarski rijal',
'RHD' => 'Rodizijski dolar',
'ROL' => 'Rumunski leu (1952–2006)',
- 'RON' => 'Rumunski lev',
+ 'RON' => 'Rumunski lej',
'RSD' => 'Srpski dinar',
'RUB' => 'Ruska rublja',
'RUR' => 'Ruska rublja (1991–1998)',
@@ -742,7 +743,8 @@ $currencyNames = array(
'SRD' => 'Surinamski dolar',
'SRG' => 'Surinamski gilder',
'SSP' => 'Južnosudanska funta',
- 'STD' => 'Dobra Sao Toma i Principa',
+ 'STD' => 'Dobra Sao Toma i Principa (1977–2017)',
+ 'STN' => 'Dobra Sao Toma i Principa',
'SUR' => 'Sovjetska rublja',
'SVC' => 'Salvadorski kolon',
'SYP' => 'Sirijska funta',
@@ -752,15 +754,15 @@ $currencyNames = array(
'TJS' => 'Tadžikistanski somoni',
'TMM' => 'Turkmenistanski manat (1993–2009)',
'TMT' => 'Turkmenistanski manat',
- 'TND' => 'Tuniski dinar',
+ 'TND' => 'Tuniški dinar',
'TOP' => 'Tonganska panga',
'TPE' => 'Timorški eskudo',
'TRL' => 'Turska lira (1922–2005)',
'TRY' => 'Turska lira',
'TTD' => 'Trinidadtobaški dolar',
'TWD' => 'Novi tajvanski dolar',
- 'TZS' => 'Tanzanski šiling',
- 'UAH' => 'Ukrajinska grivna',
+ 'TZS' => 'Tanzanijski šiling',
+ 'UAH' => 'Ukrajinska hrivnja',
'UAK' => 'Ukrajinski karbovaneti',
'UGS' => 'Ugandijski šiling (1966–1987)',
'UGX' => 'Ugandski šiling',
@@ -772,12 +774,13 @@ $currencyNames = array(
'UYU' => 'Urugvajski pezos',
'UZS' => 'Uzbekistanski som',
'VEB' => 'Venecuelanski bolivar (1871–2008)',
- 'VEF' => 'Venecuelanski bolivar',
+ 'VEF' => 'venecuelanski bolivar (2008–2018)',
+ 'VES' => 'venecuelanski bolivar',
'VND' => 'Vijetnamski dong',
'VNN' => 'Vijetnamski dong (1978–1985)',
'VUV' => 'Vanuatski vatu',
'WST' => 'Samoanska tala',
- 'XAF' => 'CFA franak BEAC',
+ 'XAF' => 'Centralnoafrički franak (CFA)',
'XAG' => 'Srebro',
'XAU' => 'Zlato',
'XBA' => 'Evropska kompozitna jedinica',
@@ -789,9 +792,9 @@ $currencyNames = array(
'XEU' => 'Evropska valutna jedinica',
'XFO' => 'Francuski zlatni frank',
'XFU' => 'Francuski UIC-frank',
- 'XOF' => 'CFA franak BCEAO',
+ 'XOF' => 'Zapadnoafrički franak (CFA)',
'XPD' => 'Paladijum',
- 'XPF' => 'CFP franak',
+ 'XPF' => 'Franak (CFP)',
'XPT' => 'Platina',
'XRE' => 'RINET fondovi',
'XTS' => 'Kod testirane valute',
@@ -811,9 +814,9 @@ $currencyNames = array(
'ZWD' => 'Zimbabvejski dolar (1980–2008)',
'ZWL' => 'Zimbabvejski dolar (2009)',
'ZWR' => 'Zimbabvejski dolar (2008)',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'AED' => 'AED',
'AFN' => 'AFN',
'ALL' => 'ALL',
@@ -837,6 +840,7 @@ $currencySymbols = array(
'BSD' => 'BSD',
'BTN' => 'BTN',
'BWP' => 'BWP',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CAD',
@@ -943,6 +947,7 @@ $currencySymbols = array(
'SRD' => 'SRD',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'STN',
'SYP' => 'SYP',
'SZL' => 'SZL',
'THB' => '฿',
@@ -970,18 +975,17 @@ $currencySymbols = array(
'YER' => 'YER',
'ZAR' => 'ZAR',
'ZMW' => 'ZMW',
-);
+];
-$countryNames = array(
- 'AC' => 'Ostrvo Asension',
+$countryNames = [
+ 'AC' => 'Ostrvo Ascension',
'AD' => 'Andora',
'AE' => 'Ujedinjeni Arapski Emirati',
'AF' => 'Afganistan',
'AG' => 'Antigva i Barbuda',
'AI' => 'Angvila',
'AL' => 'Albanija',
- 'AM' => 'Jermenija',
- 'AN' => 'Holandski Antili',
+ 'AM' => 'Armenija',
'AO' => 'Angola',
'AQ' => 'Antarktika',
'AR' => 'Argentina',
@@ -989,7 +993,7 @@ $countryNames = array(
'AT' => 'Austrija',
'AU' => 'Australija',
'AW' => 'Aruba',
- 'AX' => 'Alandska Ostrva',
+ 'AX' => 'Olandska ostrva',
'AZ' => 'Azerbejdžan',
'BA' => 'Bosna i Hercegovina',
'BB' => 'Barbados',
@@ -1000,7 +1004,7 @@ $countryNames = array(
'BH' => 'Bahrein',
'BI' => 'Burundi',
'BJ' => 'Benin',
- 'BL' => 'Sv. Bartolomej',
+ 'BL' => 'Sveti Bartolomej',
'BM' => 'Bermuda',
'BN' => 'Brunej',
'BO' => 'Bolivija',
@@ -1008,18 +1012,18 @@ $countryNames = array(
'BR' => 'Brazil',
'BS' => 'Bahami',
'BT' => 'Butan',
- 'BV' => 'Buve Ostrva',
+ 'BV' => 'Ostrvo Buve',
'BW' => 'Bocvana',
'BY' => 'Bjelorusija',
'BZ' => 'Belize',
'CA' => 'Kanada',
- 'CC' => 'Kokos (Keling) Ostrva',
+ 'CC' => 'Kokosova (Keelingova) ostrva',
'CD' => 'Demokratska Republika Kongo',
'CF' => 'Centralnoafrička Republika',
'CG' => 'Kongo',
'CH' => 'Švicarska',
'CI' => 'Obala Slonovače',
- 'CK' => 'Kukova Ostrva',
+ 'CK' => 'Kukova ostrva',
'CL' => 'Čile',
'CM' => 'Kamerun',
'CN' => 'Kina',
@@ -1029,7 +1033,7 @@ $countryNames = array(
'CU' => 'Kuba',
'CV' => 'Kape Verde',
'CW' => 'Kurasao',
- 'CX' => 'Božićna Ostrva',
+ 'CX' => 'Božićno ostrvo',
'CY' => 'Kipar',
'CZ' => 'Češka',
'DE' => 'Njemačka',
@@ -1047,12 +1051,13 @@ $countryNames = array(
'ER' => 'Eritreja',
'ES' => 'Španija',
'ET' => 'Etiopija',
- 'EU' => 'Evropska Unija',
+ 'EU' => 'Evropska unija',
+ 'EZ' => 'Eurozona',
'FI' => 'Finska',
'FJ' => 'Fidži',
- 'FK' => 'Folklandska Ostrva',
+ 'FK' => 'Folklandska ostrva',
'FM' => 'Mikronezija',
- 'FO' => 'Farska Ostrva',
+ 'FO' => 'Farska ostrva',
'FR' => 'Francuska',
'GA' => 'Gabon',
'GB' => 'UK',
@@ -1065,16 +1070,16 @@ $countryNames = array(
'GL' => 'Grenland',
'GM' => 'Gambija',
'GN' => 'Gvineja',
- 'GP' => 'Gvadelupe',
+ 'GP' => 'Gvadalupe',
'GQ' => 'Ekvatorijalna Gvineja',
'GR' => 'Grčka',
- 'GS' => 'Južna Džordžija i Južna Sendvič Ostrva',
+ 'GS' => 'Južna Džordžija i Južna Sendvič ostrva',
'GT' => 'Gvatemala',
'GU' => 'Guam',
'GW' => 'Gvineja-Bisao',
'GY' => 'Gvajana',
'HK' => 'Hong Kong',
- 'HM' => 'Herd i Mekdonald Ostrva',
+ 'HM' => 'Herd i arhipelag MekDonald',
'HN' => 'Honduras',
'HR' => 'Hrvatska',
'HT' => 'Haiti',
@@ -1085,55 +1090,55 @@ $countryNames = array(
'IL' => 'Izrael',
'IM' => 'Ostrvo Man',
'IN' => 'Indija',
- 'IO' => 'Britanska Territorija u Indijskom Okeanu',
+ 'IO' => 'Britanska Teritorija u Indijskom Okeanu',
'IQ' => 'Irak',
'IR' => 'Iran',
'IS' => 'Island',
'IT' => 'Italija',
- 'JE' => 'Džersi',
+ 'JE' => 'Jersey',
'JM' => 'Jamajka',
'JO' => 'Jordan',
'JP' => 'Japan',
'KE' => 'Kenija',
- 'KG' => 'Kirgizstan',
+ 'KG' => 'Kirgistan',
'KH' => 'Kambodža',
'KI' => 'Kiribati',
- 'KM' => 'Komorska Ostrva',
- 'KN' => 'Sent Kits i Nevis',
+ 'KM' => 'Komori',
+ 'KN' => 'Sveti Kits i Nevis',
'KP' => 'Sjeverna Koreja',
'KR' => 'Južna Koreja',
'KW' => 'Kuvajt',
- 'KY' => 'Kajmanska Ostrva',
+ 'KY' => 'Kajmanska ostrva',
'KZ' => 'Kazahstan',
'LA' => 'Laos',
'LB' => 'Liban',
- 'LC' => 'Sent Lucija',
+ 'LC' => 'Sveta Lucija',
'LI' => 'Lihtenštajn',
'LK' => 'Šri Lanka',
'LR' => 'Liberija',
'LS' => 'Lesoto',
'LT' => 'Litvanija',
'LU' => 'Luksemburg',
- 'LV' => 'Letonija',
+ 'LV' => 'Latvija',
'LY' => 'Libija',
'MA' => 'Maroko',
'MC' => 'Monako',
'MD' => 'Moldavija',
'ME' => 'Crna Gora',
- 'MF' => 'Sv. Martin',
+ 'MF' => 'Sveti Martin',
'MG' => 'Madagaskar',
- 'MH' => 'Maršalska Ostrva',
+ 'MH' => 'Maršalova ostrva',
'MK' => 'Makedonija',
'ML' => 'Mali',
- 'MM' => 'Mijanmar',
+ 'MM' => 'Mjanmar',
'MN' => 'Mongolija',
'MO' => 'Makao',
- 'MP' => 'Sjeverna Marijanska Ostrva',
+ 'MP' => 'Sjeverna Marijanska ostrva',
'MQ' => 'Martinik',
'MR' => 'Mauritanija',
'MS' => 'Monserat',
'MT' => 'Malta',
- 'MU' => 'Mauricius',
+ 'MU' => 'Mauricijus',
'MV' => 'Maldivi',
'MW' => 'Malavi',
'MX' => 'Meksiko',
@@ -1142,7 +1147,7 @@ $countryNames = array(
'NA' => 'Namibija',
'NC' => 'Nova Kaledonija',
'NE' => 'Niger',
- 'NF' => 'Norfolk Ostrvo',
+ 'NF' => 'Ostrvo Norfolk',
'NG' => 'Nigerija',
'NI' => 'Nikaragva',
'NL' => 'Holandija',
@@ -1159,16 +1164,16 @@ $countryNames = array(
'PH' => 'Filipini',
'PK' => 'Pakistan',
'PL' => 'Poljska',
- 'PM' => 'Sen Pjer i Mikelon',
- 'PN' => 'Pitkern',
+ 'PM' => 'Sveti Petar i Mikelon',
+ 'PN' => 'Pitkernska Ostrva',
'PR' => 'Porto Riko',
'PS' => 'Palestina',
'PT' => 'Portugal',
'PW' => 'Palau',
'PY' => 'Paragvaj',
'QA' => 'Katar',
- 'QO' => 'Ostala Okeanija',
- 'RE' => 'Rejunion',
+ 'QO' => 'Vanjska Okeanija',
+ 'RE' => 'Reunion',
'RO' => 'Rumunija',
'RS' => 'Srbija',
'RU' => 'Rusija',
@@ -1181,7 +1186,7 @@ $countryNames = array(
'SG' => 'Singapur',
'SH' => 'Sveta Helena',
'SI' => 'Slovenija',
- 'SJ' => 'Svalbard i Janmajen Ostrva',
+ 'SJ' => 'Svalbard i Jan Majen',
'SK' => 'Slovačka',
'SL' => 'Sijera Leone',
'SM' => 'San Marino',
@@ -1194,15 +1199,15 @@ $countryNames = array(
'SX' => 'Sint Marten',
'SY' => 'Sirija',
'SZ' => 'Svazilend',
- 'TA' => 'Tristan da Kunja',
- 'TC' => 'Turks i Kajkos Ostrva',
+ 'TA' => 'Tristan da Cunha',
+ 'TC' => 'Ostrva Turks i Kaikos',
'TD' => 'Čad',
'TF' => 'Francuske Južne Teritorije',
'TG' => 'Togo',
'TH' => 'Tajland',
'TJ' => 'Tadžikistan',
'TK' => 'Tokelau',
- 'TL' => 'Timor Leste',
+ 'TL' => 'Istočni Timor',
'TM' => 'Turkmenistan',
'TN' => 'Tunis',
'TO' => 'Tonga',
@@ -1213,18 +1218,19 @@ $countryNames = array(
'TZ' => 'Tanzanija',
'UA' => 'Ukrajina',
'UG' => 'Uganda',
- 'UM' => 'Manja Udaljena Ostrva SAD',
+ 'UM' => 'Američka Vanjska Ostrva',
+ 'UN' => 'UN',
'US' => 'SAD',
'UY' => 'Urugvaj',
'UZ' => 'Uzbekistan',
'VA' => 'Vatikan',
- 'VC' => 'Sent Vinsent i Grenadini',
+ 'VC' => 'Sveti Vinsent i Grenadin',
'VE' => 'Venecuela',
- 'VG' => 'Britanska Djevičanska Ostrva',
- 'VI' => 'Djevičanska Ostrva SAD',
+ 'VG' => 'Britanska Djevičanska ostrva',
+ 'VI' => 'Američka Djevičanska ostrva',
'VN' => 'Vijetnam',
'VU' => 'Vanuatu',
- 'WF' => 'Valis i Futuna Ostrva',
+ 'WF' => 'Ostrva Valis i Futuna',
'WS' => 'Samoa',
'XK' => 'Kosovo',
'YE' => 'Jemen',
@@ -1232,9 +1238,12 @@ $countryNames = array(
'ZA' => 'Južnoafrička Republika',
'ZM' => 'Zambija',
'ZW' => 'Zimbabve',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-few' => '{0} stoljeća',
+ 'century-one' => '{0} stoljeće',
+ 'century-other' => '{0} stoljeća',
'day-few' => '{0} dana',
'day-future-few' => 'za {0} dana',
'day-future-one' => 'za {0} dan',
@@ -1256,30 +1265,48 @@ $timeUnits = array(
'day-short-past-few' => 'prije {0} d.',
'day-short-past-one' => 'prije {0} d.',
'day-short-past-other' => 'prije {0} d.',
+ 'fri-future-few' => 'za {0} petka',
+ 'fri-future-one' => 'za {0} petak',
+ 'fri-future-other' => 'za {0} petaka',
+ 'fri-narrow-future-few' => 'za {0} petka',
+ 'fri-narrow-future-one' => 'za {0} petak',
+ 'fri-narrow-future-other' => 'za {0} petaka',
+ 'fri-narrow-past-few' => 'prije {0} petka',
+ 'fri-narrow-past-one' => 'prije {0} petak',
+ 'fri-narrow-past-other' => 'prije {0} petaka',
+ 'fri-past-few' => 'prije {0} petka',
+ 'fri-past-one' => 'prije {0} petak',
+ 'fri-past-other' => 'prije {0} petaka',
+ 'fri-short-future-few' => 'za {0} petka',
+ 'fri-short-future-one' => 'za {0} petak',
+ 'fri-short-future-other' => 'za {0} petaka',
+ 'fri-short-past-few' => 'prije {0} petka',
+ 'fri-short-past-one' => 'prije {0} petak',
+ 'fri-short-past-other' => 'prije {0} petaka',
'hour-few' => '{0} sata',
'hour-future-few' => 'za {0} sata',
'hour-future-one' => 'za {0} sat',
'hour-future-other' => 'za {0} sati',
- 'hour-narrow-future-few' => 'za {0} sati',
- 'hour-narrow-future-one' => 'za {0} sati',
+ 'hour-narrow-future-few' => 'za {0} sata',
+ 'hour-narrow-future-one' => 'za {0} sat',
'hour-narrow-future-other' => 'za {0} sati',
- 'hour-narrow-past-few' => 'prije {0} sati',
- 'hour-narrow-past-one' => 'prije {0} sati',
+ 'hour-narrow-past-few' => 'prije {0} sata',
+ 'hour-narrow-past-one' => 'prije {0} sat',
'hour-narrow-past-other' => 'prije {0} sati',
'hour-one' => '{0} sat',
'hour-other' => '{0} sati',
'hour-past-few' => 'prije {0} sata',
'hour-past-one' => 'prije {0} sat',
'hour-past-other' => 'prije {0} sati',
- 'hour-short-future-few' => 'za {0} sati',
- 'hour-short-future-one' => 'za {0} sati',
+ 'hour-short-future-few' => 'za {0} sata',
+ 'hour-short-future-one' => 'za {0} sat',
'hour-short-future-other' => 'za {0} sati',
- 'hour-short-past-few' => 'prije {0} sati',
- 'hour-short-past-one' => 'prije {0} sati',
+ 'hour-short-past-few' => 'prije {0} sata',
+ 'hour-short-past-one' => 'prije {0} sat',
'hour-short-past-other' => 'prije {0} sati',
- 'microsecond-few' => '{0} μs',
- 'microsecond-one' => '{0} μs',
- 'microsecond-other' => '{0} μs',
+ 'microsecond-few' => '{0} mikrosekunde',
+ 'microsecond-one' => '{0} mikrosekunda',
+ 'microsecond-other' => '{0} mikrosekundi',
'millisecond-few' => '{0} milisekunde',
'millisecond-one' => '{0} milisekunda',
'millisecond-other' => '{0} milisekundi',
@@ -1293,7 +1320,7 @@ $timeUnits = array(
'minute-narrow-past-few' => 'prije {0} min.',
'minute-narrow-past-one' => 'prije {0} min.',
'minute-narrow-past-other' => 'prije {0} min.',
- 'minute-one' => '{0} minut',
+ 'minute-one' => '{0} minuta',
'minute-other' => '{0} minuta',
'minute-past-few' => 'prije {0} minute',
'minute-past-one' => 'prije {0} minutu',
@@ -1304,6 +1331,24 @@ $timeUnits = array(
'minute-short-past-few' => 'prije {0} min.',
'minute-short-past-one' => 'prije {0} min.',
'minute-short-past-other' => 'prije {0} min.',
+ 'mon-future-few' => 'za {0} ponedjeljka',
+ 'mon-future-one' => 'za {0} ponedjeljak',
+ 'mon-future-other' => 'za {0} ponedjeljaka',
+ 'mon-narrow-future-few' => 'za {0} ponedjeljka',
+ 'mon-narrow-future-one' => 'za {0} ponedjeljak',
+ 'mon-narrow-future-other' => 'za {0} ponedjeljaka',
+ 'mon-narrow-past-few' => 'prije {0} ponedjeljka',
+ 'mon-narrow-past-one' => 'prije {0} ponedjeljak',
+ 'mon-narrow-past-other' => 'prije {0} ponedjeljaka',
+ 'mon-past-few' => 'prije {0} ponedjeljka',
+ 'mon-past-one' => 'prije {0} ponedjeljak',
+ 'mon-past-other' => 'prije {0} ponedjeljaka',
+ 'mon-short-future-few' => 'za {0} ponedjeljka',
+ 'mon-short-future-one' => 'za {0} ponedjeljak',
+ 'mon-short-future-other' => 'za {0} ponedjeljaka',
+ 'mon-short-past-few' => 'prije {0} ponedjeljka',
+ 'mon-short-past-one' => 'prije {0} ponedjeljak',
+ 'mon-short-past-other' => 'prije {0} ponedjeljaka',
'month-few' => '{0} mjeseca',
'month-future-few' => 'za {0} mjeseca',
'month-future-one' => 'za {0} mjesec',
@@ -1325,9 +1370,9 @@ $timeUnits = array(
'month-short-past-few' => 'prije {0} mj.',
'month-short-past-one' => 'prije {0} mj.',
'month-short-past-other' => 'prije {0} mj.',
- 'nanosecond-few' => '{0} ns',
- 'nanosecond-one' => '{0} ns',
- 'nanosecond-other' => '{0} ns',
+ 'nanosecond-few' => '{0} nanosekunde',
+ 'nanosecond-one' => '{0} nanosekunda',
+ 'nanosecond-other' => '{0} nanosekundi',
'quarter-future-few' => 'za {0} kvartala',
'quarter-future-one' => 'za {0} kvartal',
'quarter-future-other' => 'za {0} kvartala',
@@ -1339,13 +1384,31 @@ $timeUnits = array(
'quarter-narrow-past-other' => 'prije {0} kv.',
'quarter-past-few' => 'prije {0} kvartala',
'quarter-past-one' => 'prije {0} kvartal',
- 'quarter-past-other' => '-{0} kv.',
+ 'quarter-past-other' => 'prije {0} kvartala',
'quarter-short-future-few' => 'za {0} kv.',
'quarter-short-future-one' => 'za {0} kv.',
'quarter-short-future-other' => 'za {0} kv.',
'quarter-short-past-few' => 'prije {0} kv.',
'quarter-short-past-one' => 'prije {0} kv.',
'quarter-short-past-other' => 'prije {0} kv.',
+ 'sat-future-few' => 'za {0} subote',
+ 'sat-future-one' => 'za {0} subotu',
+ 'sat-future-other' => 'za {0} subota',
+ 'sat-narrow-future-few' => 'za {0} subote',
+ 'sat-narrow-future-one' => 'za {0} subotu',
+ 'sat-narrow-future-other' => 'za {0} subota',
+ 'sat-narrow-past-few' => 'prije {0} subote',
+ 'sat-narrow-past-one' => 'prije {0} subotu',
+ 'sat-narrow-past-other' => 'prije {0} subota',
+ 'sat-past-few' => 'prije {0} subote',
+ 'sat-past-one' => 'prije {0} subotu',
+ 'sat-past-other' => 'prije {0} subota',
+ 'sat-short-future-few' => 'za {0} subote',
+ 'sat-short-future-one' => 'za {0} subotu',
+ 'sat-short-future-other' => 'za {0} subota',
+ 'sat-short-past-few' => 'prije {0} subote',
+ 'sat-short-past-one' => 'prije {0} subotu',
+ 'sat-short-past-other' => 'prije {0} subota',
'second-few' => '{0} sekunde',
'second-future-few' => 'za {0} sekunde',
'second-future-one' => 'za {0} sekundu',
@@ -1367,6 +1430,78 @@ $timeUnits = array(
'second-short-past-few' => 'prije {0} sek.',
'second-short-past-one' => 'prije {0} sek.',
'second-short-past-other' => 'prije {0} sek.',
+ 'sun-future-few' => 'za {0} nedjelje',
+ 'sun-future-one' => 'za {0} nedjelju',
+ 'sun-future-other' => 'za {0} nedjelja',
+ 'sun-narrow-future-few' => 'za {0} nedjelje',
+ 'sun-narrow-future-one' => 'za {0} nedjelju',
+ 'sun-narrow-future-other' => 'za {0} nedjelja',
+ 'sun-narrow-past-few' => 'prije {0} nedjelje',
+ 'sun-narrow-past-one' => 'prije {0} nedjelju',
+ 'sun-narrow-past-other' => 'prije {0} nedjelja',
+ 'sun-past-few' => 'prije {0} nedjelje',
+ 'sun-past-one' => 'prije {0} nedjelju',
+ 'sun-past-other' => 'prije {0} nedjelja',
+ 'sun-short-future-few' => 'za {0} nedjelje',
+ 'sun-short-future-one' => 'za {0} nedjelju',
+ 'sun-short-future-other' => 'za {0} nedjelja',
+ 'sun-short-past-few' => 'prije {0} nedjelje',
+ 'sun-short-past-one' => 'prije {0} nedjelju',
+ 'sun-short-past-other' => 'prije {0} nedjelja',
+ 'thu-future-few' => 'za {0} četvrtka',
+ 'thu-future-one' => 'za {0} četvrtak',
+ 'thu-future-other' => 'za {0} četvrtaka',
+ 'thu-narrow-future-few' => 'za {0} četvrtka',
+ 'thu-narrow-future-one' => 'za {0} četvrtak',
+ 'thu-narrow-future-other' => 'za {0} četvrtaka',
+ 'thu-narrow-past-few' => 'prije {0} četvrtka',
+ 'thu-narrow-past-one' => 'prije {0} četvrtak',
+ 'thu-narrow-past-other' => 'prije {0} četvrtaka',
+ 'thu-past-few' => 'prije {0} četvrtka',
+ 'thu-past-one' => 'prije {0} četvrtak',
+ 'thu-past-other' => 'prije {0} četvrtaka',
+ 'thu-short-future-few' => 'za {0} četvrtka',
+ 'thu-short-future-one' => 'za {0} četvrtak',
+ 'thu-short-future-other' => 'za {0} četvrtaka',
+ 'thu-short-past-few' => 'prije {0} četvrtka',
+ 'thu-short-past-one' => 'prije {0} četvrtak',
+ 'thu-short-past-other' => 'prije {0} četvrtaka',
+ 'tue-future-few' => 'za {0} utorka',
+ 'tue-future-one' => 'za {0} utorak',
+ 'tue-future-other' => 'za {0} utoraka',
+ 'tue-narrow-future-few' => 'za {0} utorka',
+ 'tue-narrow-future-one' => 'za {0} utorak',
+ 'tue-narrow-future-other' => 'za {0} utoraka',
+ 'tue-narrow-past-few' => 'prije {0} utorka',
+ 'tue-narrow-past-one' => 'prije {0} utorak',
+ 'tue-narrow-past-other' => 'prije {0} utoraka',
+ 'tue-past-few' => 'prije {0} utorka',
+ 'tue-past-one' => 'prije {0} utorak',
+ 'tue-past-other' => 'prije {0} utoraka',
+ 'tue-short-future-few' => 'za {0} utorka',
+ 'tue-short-future-one' => 'za {0} utorak',
+ 'tue-short-future-other' => 'za {0} utoraka',
+ 'tue-short-past-few' => 'prije {0} utorka',
+ 'tue-short-past-one' => 'prije {0} utorak',
+ 'tue-short-past-other' => 'prije {0} utoraka',
+ 'wed-future-few' => 'za {0} srijede',
+ 'wed-future-one' => 'za {0} srijedu',
+ 'wed-future-other' => 'za {0} srijeda',
+ 'wed-narrow-future-few' => 'za {0} srijede',
+ 'wed-narrow-future-one' => 'za {0} srijedu',
+ 'wed-narrow-future-other' => 'za {0} srijeda',
+ 'wed-narrow-past-few' => 'prije {0} srijede',
+ 'wed-narrow-past-one' => 'prije {0} srijedu',
+ 'wed-narrow-past-other' => 'prije {0} srijeda',
+ 'wed-past-few' => 'prije {0} srijede',
+ 'wed-past-one' => 'prije {0} srijedu',
+ 'wed-past-other' => 'prije {0} srijeda',
+ 'wed-short-future-few' => 'za {0} srijede',
+ 'wed-short-future-one' => 'za {0} srijedu',
+ 'wed-short-future-other' => 'za {0} srijeda',
+ 'wed-short-past-few' => 'prije {0} srijede',
+ 'wed-short-past-one' => 'prije {0} srijedu',
+ 'wed-short-past-other' => 'prije {0} srijeda',
'week-few' => '{0} sedmice',
'week-future-few' => 'za {0} sedmice',
'week-future-one' => 'za {0} sedmicu',
@@ -1409,4 +1544,4 @@ $timeUnits = array(
'year-short-past-few' => 'prije {0} god.',
'year-short-past-one' => 'prije {0} god.',
'year-short-past-other' => 'prije {0} god.',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesCa.php b/MLEB/cldr/CldrNames/CldrNamesCa.php
index a6d1d532..bf60d04d 100644
--- a/MLEB/cldr/CldrNames/CldrNamesCa.php
+++ b/MLEB/cldr/CldrNames/CldrNamesCa.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'àfar',
'ab' => 'abkhaz',
'ace' => 'atjeh',
@@ -14,7 +14,9 @@ $languageNames = array(
'ain' => 'ainu',
'ak' => 'àkan',
'akk' => 'accadi',
+ 'akz' => 'alabama',
'ale' => 'aleuta',
+ 'aln' => 'albanès geg',
'alt' => 'altaic meridional',
'am' => 'amhàric',
'an' => 'aragonès',
@@ -23,11 +25,15 @@ $languageNames = array(
'ar' => 'àrab',
'ar-001' => 'àrab estàndard modern',
'arc' => 'arameu',
- 'arn' => 'araucà',
+ 'arn' => 'mapudungu',
+ 'aro' => 'araona',
'arp' => 'arapaho',
+ 'ars' => 'àrab najdi',
'arw' => 'arauac',
+ 'arz' => 'àrab egipci',
'as' => 'assamès',
'asa' => 'pare',
+ 'ase' => 'llengua de signes americana',
'ast' => 'asturià',
'av' => 'àvar',
'awa' => 'awadhi',
@@ -36,19 +42,22 @@ $languageNames = array(
'ba' => 'baixkir',
'bal' => 'balutxi',
'ban' => 'balinès',
+ 'bar' => 'bavarès',
'bas' => 'basa',
- 'bax' => 'bamun',
+ 'bax' => 'bamum',
'bbj' => 'ghomala',
- 'be' => 'bielorús',
+ 'be' => 'belarús',
'bej' => 'beja',
'bem' => 'bemba',
'bez' => 'bena',
'bfd' => 'bafut',
+ 'bfq' => 'badaga',
'bg' => 'búlgar',
+ 'bgn' => 'balutxi occidental',
'bho' => 'bhojpuri',
'bi' => 'bislama',
'bik' => 'bicol',
- 'bin' => 'bini',
+ 'bin' => 'edo',
'bkm' => 'kom',
'bla' => 'blackfoot',
'bm' => 'bambara',
@@ -56,12 +65,13 @@ $languageNames = array(
'bo' => 'tibetà',
'br' => 'bretó',
'bra' => 'braj',
+ 'brh' => 'brahui',
'brx' => 'bodo',
'bs' => 'bosnià',
'bss' => 'akoose',
'bua' => 'buriat',
'bug' => 'bugui',
- 'bum' => 'seki',
+ 'bum' => 'bulu',
'byn' => 'bilin',
'byv' => 'medumba',
'ca' => 'català',
@@ -81,12 +91,13 @@ $languageNames = array(
'cho' => 'choctaw',
'chp' => 'chipewyan',
'chr' => 'cherokee',
- 'chy' => 'xeienne',
- 'ckb' => 'kurd sorani',
+ 'chy' => 'xeiene',
+ 'ckb' => 'kurd central',
'co' => 'cors',
'cop' => 'copte',
'cr' => 'cree',
'crh' => 'tàtar de Crimea',
+ 'crs' => 'francès crioll de les Seychelles',
'cs' => 'txec',
'csb' => 'caixubi',
'cu' => 'eslau eclesiàstic',
@@ -98,9 +109,9 @@ $languageNames = array(
'dav' => 'taita',
'de' => 'alemany',
'de-at' => 'alemany austríac',
- 'de-ch' => 'alt alemany suís',
+ 'de-ch' => 'alemany estàndard suís',
'del' => 'delaware',
- 'den' => 'slavey',
+ 'den' => 'slavi',
'dgr' => 'dogrib',
'din' => 'dinka',
'dje' => 'zarma',
@@ -116,6 +127,7 @@ $languageNames = array(
'ebu' => 'embu',
'ee' => 'ewe',
'efi' => 'efik',
+ 'egl' => 'emilià',
'egy' => 'egipci antic',
'eka' => 'ekajuk',
'el' => 'grec',
@@ -134,6 +146,7 @@ $languageNames = array(
'et' => 'estonià',
'eu' => 'basc',
'ewo' => 'ewondo',
+ 'ext' => 'extremeny',
'fa' => 'persa',
'fan' => 'fang',
'fat' => 'fanti',
@@ -146,24 +159,28 @@ $languageNames = array(
'fr' => 'francès',
'fr-ca' => 'francès canadenc',
'fr-ch' => 'francès suís',
+ 'frc' => 'francès cajun',
'frm' => 'francès mitjà',
'fro' => 'francès antic',
'frr' => 'frisó septentrional',
- 'frs' => 'frisó occidental',
+ 'frs' => 'frisó oriental',
'fur' => 'friülà',
- 'fy' => 'frisó oriental',
+ 'fy' => 'frisó occidental',
'ga' => 'irlandès',
'gaa' => 'ga',
'gag' => 'gagaús',
+ 'gan' => 'xinès gan',
'gay' => 'gayo',
'gba' => 'gbaya',
'gd' => 'gaèlic escocès',
'gez' => 'gueez',
'gil' => 'gilbertès',
'gl' => 'gallec',
+ 'glk' => 'gilaki',
'gmh' => 'alt alemany mitjà',
'gn' => 'guaraní',
'goh' => 'alt alemany antic',
+ 'gom' => 'concani de Goa',
'gon' => 'gondi',
'gor' => 'gorontalo',
'got' => 'gòtic',
@@ -171,21 +188,25 @@ $languageNames = array(
'grc' => 'grec antic',
'gsw' => 'alemany suís',
'gu' => 'gujarati',
+ 'guc' => 'wayú',
'guz' => 'gusí',
'gv' => 'manx',
- 'gwi' => 'gwichin',
+ 'gwi' => 'gwich’in',
'ha' => 'haussa',
'hai' => 'haida',
+ 'hak' => 'xinès hakka',
'haw' => 'hawaià',
'he' => 'hebreu',
'hi' => 'hindi',
- 'hil' => 'hiligainon',
+ 'hif' => 'hindi de Fiji',
+ 'hil' => 'híligaynon',
'hit' => 'hitita',
'hmn' => 'hmong',
'ho' => 'hiri motu',
'hr' => 'croat',
'hsb' => 'alt sòrab',
- 'ht' => 'haitià',
+ 'hsn' => 'xinès xiang',
+ 'ht' => 'crioll d’Haití',
'hu' => 'hongarès',
'hup' => 'hupa',
'hy' => 'armeni',
@@ -198,13 +219,14 @@ $languageNames = array(
'ig' => 'igbo',
'ii' => 'yi sichuan',
'ik' => 'inupiak',
- 'ilo' => 'ilocà',
+ 'ilo' => 'ilocano',
'inh' => 'ingúix',
'io' => 'ido',
'is' => 'islandès',
'it' => 'italià',
'iu' => 'inuktitut',
'ja' => 'japonès',
+ 'jam' => 'crioll anglès de Jamaica',
'jbo' => 'lojban',
'jgo' => 'ngomba',
'jmc' => 'machame',
@@ -223,8 +245,10 @@ $languageNames = array(
'kcg' => 'tyap',
'kde' => 'makonde',
'kea' => 'crioll capverdià',
+ 'ken' => 'kenyang',
'kfo' => 'koro',
'kg' => 'kongo',
+ 'kgp' => 'kaingà',
'kha' => 'khasi',
'kho' => 'khotanès',
'khq' => 'koyra chiini',
@@ -239,17 +263,18 @@ $languageNames = array(
'kn' => 'kannada',
'ko' => 'coreà',
'koi' => 'komi-permiac',
- 'kok' => 'konkani',
+ 'kok' => 'concani',
'kos' => 'kosraeà',
'kpe' => 'kpelle',
'kr' => 'kanuri',
- 'krc' => 'karatxai',
+ 'krc' => 'karatxai-balkar',
+ 'kri' => 'krio',
'krl' => 'carelià',
'kru' => 'kurukh',
'ks' => 'caixmiri',
'ksb' => 'shambala',
'ksf' => 'bafia',
- 'ksh' => 'colognian',
+ 'ksh' => 'kölsch',
'ku' => 'kurd',
'kum' => 'kúmik',
'kut' => 'kutenai',
@@ -257,7 +282,7 @@ $languageNames = array(
'kw' => 'còrnic',
'ky' => 'kirguís',
'la' => 'llatí',
- 'lad' => 'ladí',
+ 'lad' => 'judeocastellà',
'lag' => 'langi',
'lah' => 'panjabi occidental',
'lam' => 'lamba',
@@ -265,11 +290,15 @@ $languageNames = array(
'lez' => 'lesguià',
'lg' => 'ganda',
'li' => 'limburguès',
+ 'lij' => 'lígur',
'lkt' => 'lakota',
+ 'lmo' => 'llombard',
'ln' => 'lingala',
'lo' => 'laosià',
'lol' => 'mongo',
+ 'lou' => 'crioll francès de Louisiana',
'loz' => 'lozi',
+ 'lrc' => 'luri septentrional',
'lt' => 'lituà',
'lu' => 'luba katanga',
'lua' => 'luba-lulua',
@@ -279,6 +308,8 @@ $languageNames = array(
'lus' => 'mizo',
'luy' => 'luyia',
'lv' => 'letó',
+ 'lzh' => 'xinès clàssic',
+ 'lzz' => 'laz',
'mad' => 'madurès',
'maf' => 'mafa',
'mag' => 'magahi',
@@ -306,8 +337,9 @@ $languageNames = array(
'mnc' => 'manxú',
'mni' => 'manipurí',
'moh' => 'mohawk',
- 'mos' => 'moré',
+ 'mos' => 'moore',
'mr' => 'marathi',
+ 'mrj' => 'mari occidental',
'ms' => 'malai',
'mt' => 'maltès',
'mua' => 'mundang',
@@ -318,12 +350,15 @@ $languageNames = array(
'my' => 'birmà',
'mye' => 'myene',
'myv' => 'mordovià erza',
+ 'mzn' => 'mazanderani',
'na' => 'nauruà',
+ 'nan' => 'xinès min del sud',
'nap' => 'napolità',
'naq' => 'nama',
'nb' => 'noruec bokmål',
'nd' => 'ndebele septentrional',
'nds' => 'baix alemany',
+ 'nds-nl' => 'baix saxó',
'ne' => 'nepalès',
'new' => 'newari',
'ng' => 'ndonga',
@@ -337,6 +372,7 @@ $languageNames = array(
'no' => 'noruec',
'nog' => 'nogai',
'non' => 'nòrdic antic',
+ 'nov' => 'novial',
'nqo' => 'n’Ko',
'nr' => 'ndebele meridional',
'nso' => 'sotho septentrional',
@@ -352,30 +388,38 @@ $languageNames = array(
'oj' => 'ojibwa',
'om' => 'oromo',
'or' => 'oriya',
- 'os' => 'osset',
+ 'os' => 'osseta',
'osa' => 'osage',
'ota' => 'turc otomà',
'pa' => 'panjabi',
- 'pag' => 'pangasi',
+ 'pag' => 'pangasinan',
'pal' => 'pahlavi',
- 'pam' => 'pampangà',
- 'pap' => 'papiamento',
+ 'pam' => 'pampanga',
+ 'pap' => 'papiament',
'pau' => 'palauà',
+ 'pcd' => 'picard',
+ 'pcm' => 'pidgin de Nigèria',
+ 'pdc' => 'alemany pennsilvanià',
'peo' => 'persa antic',
+ 'pfl' => 'alemany palatí',
'phn' => 'fenici',
'pi' => 'pali',
'pl' => 'polonès',
+ 'pms' => 'piemontès',
+ 'pnt' => 'pòntic',
'pon' => 'ponapeà',
+ 'prg' => 'prussià',
'pro' => 'provençal antic',
'ps' => 'paixtu',
'pt' => 'portuguès',
'pt-br' => 'portuguès del Brasil',
'pt-pt' => 'portuguès de Portugal',
'qu' => 'quítxua',
- 'quc' => 'quitxé',
+ 'quc' => 'k’iche’',
'raj' => 'rajasthani',
'rap' => 'rapanui',
'rar' => 'rarotongà',
+ 'rgn' => 'romanyès',
'rm' => 'retoromànic',
'rn' => 'rundi',
'ro' => 'romanès',
@@ -398,7 +442,9 @@ $languageNames = array(
'sc' => 'sard',
'scn' => 'sicilià',
'sco' => 'escocès',
- 'sd' => 'sindhi',
+ 'sd' => 'sindi',
+ 'sdc' => 'sasserès',
+ 'sdh' => 'kurd meridional',
'se' => 'sami septentrional',
'see' => 'seneca',
'seh' => 'sena',
@@ -427,37 +473,40 @@ $languageNames = array(
'sr' => 'serbi',
'srn' => 'sranan',
'srr' => 'serer',
- 'ss' => 'siswati',
+ 'ss' => 'swazi',
'ssy' => 'saho',
'st' => 'sotho meridional',
- 'su' => 'sundanès',
+ 'su' => 'sondanès',
'suk' => 'sukuma',
'sus' => 'susú',
'sux' => 'sumeri',
'sv' => 'suec',
'sw' => 'suahili',
+ 'sw-cd' => 'suahili del Congo',
'swb' => 'comorià',
- 'swc' => 'suahili del Congo',
'syc' => 'siríac clàssic',
'syr' => 'siríac',
+ 'szl' => 'silesià',
'ta' => 'tàmil',
'te' => 'telugu',
'tem' => 'temne',
'teo' => 'teso',
'ter' => 'terena',
- 'tet' => 'tetun',
+ 'tet' => 'tètum',
'tg' => 'tadjik',
- 'th' => 'tailandès',
+ 'th' => 'tai',
'ti' => 'tigrinya',
'tig' => 'tigre',
'tiv' => 'tiv',
'tk' => 'turcman',
'tkl' => 'tokelauès',
- 'tl' => 'tagàlog',
+ 'tkr' => 'tsakhur',
+ 'tl' => 'tagal',
'tlh' => 'klingonià',
'tli' => 'tlingit',
- 'tmh' => 'tamazight',
- 'tn' => 'tswana',
+ 'tly' => 'talix',
+ 'tmh' => 'amazic',
+ 'tn' => 'setswana',
'to' => 'tongalès',
'tog' => 'tonga',
'tpi' => 'tok pisin',
@@ -466,6 +515,7 @@ $languageNames = array(
'ts' => 'tsonga',
'tsi' => 'tsimshià',
'tt' => 'tàtar',
+ 'ttt' => 'tat meridional',
'tum' => 'tumbuka',
'tvl' => 'tuvaluà',
'tw' => 'twi',
@@ -483,29 +533,36 @@ $languageNames = array(
'uz' => 'uzbek',
'vai' => 'vai',
've' => 'venda',
+ 'vec' => 'vènet',
+ 'vep' => 'vepse',
'vi' => 'vietnamita',
+ 'vls' => 'flamenc occidental',
'vo' => 'volapük',
'vot' => 'vòtic',
'vun' => 'vunjo',
'wa' => 'való',
'wae' => 'walser',
- 'wal' => 'ameto',
- 'war' => 'waray-waray',
+ 'wal' => 'wolaita',
+ 'war' => 'waray',
'was' => 'washo',
+ 'wbp' => 'warlpiri',
'wo' => 'wòlof',
+ 'wuu' => 'xinès wu',
'xal' => 'calmuc',
'xh' => 'xosa',
+ 'xmf' => 'mingrelià',
'xog' => 'soga',
'yao' => 'yao',
'yap' => 'yapeà',
'yav' => 'yangben',
'ybb' => 'yemba',
- 'yi' => 'jiddisch',
+ 'yi' => 'ídix',
'yo' => 'ioruba',
'yue' => 'cantonès',
'za' => 'zhuang',
'zap' => 'zapoteca',
'zbl' => 'símbols Bliss',
+ 'zea' => 'zelandès',
'zen' => 'zenaga',
'zgh' => 'amazic estàndard marroquí',
'zh' => 'xinès',
@@ -515,9 +572,9 @@ $languageNames = array(
'zun' => 'zuni',
'zxx' => 'sense contingut lingüístic',
'zza' => 'zaza',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'ADP' => 'pesseta andorrana',
'AED' => 'dírham de la UEA',
'AFA' => 'afgani afganès (1927–2002)',
@@ -572,7 +629,8 @@ $currencyNames = array(
'BUK' => 'kyat birmà',
'BWP' => 'pula de Botswana',
'BYB' => 'nou ruble bielorús (1994–1999)',
- 'BYR' => 'ruble bielorús',
+ 'BYN' => 'ruble bielorús',
+ 'BYR' => 'ruble bielorús (2000–2016)',
'BZD' => 'dòlar de Belize',
'CAD' => 'dòlar canadenc',
'CDF' => 'franc congolès',
@@ -582,11 +640,12 @@ $currencyNames = array(
'CLE' => 'escut xilè',
'CLF' => 'unidad de fomento xilena',
'CLP' => 'peso xilè',
+ 'CNH' => 'iuan xinès extracontinental',
'CNX' => 'dòlar del Banc Popular Xinès',
'CNY' => 'iuan xinès',
'COP' => 'peso colombià',
'COU' => 'unidad de valor real colombiana',
- 'CRC' => 'colón costa-riqueny',
+ 'CRC' => 'colon costa-riqueny',
'CSD' => 'dinar serbi antic',
'CSK' => 'corona forta txecoslovaca',
'CUC' => 'peso convertible cubà',
@@ -614,7 +673,7 @@ $currencyNames = array(
'FJD' => 'dòlar fijià',
'FKP' => 'lliura de les illes Malvines',
'FRF' => 'franc francès',
- 'GBP' => 'lliura britànica',
+ 'GBP' => 'lliura esterlina britànica',
'GEK' => 'cupó de lari georgià',
'GEL' => 'lari georgià',
'GHC' => 'cedi ghanès (1979–2007)',
@@ -686,7 +745,8 @@ $currencyNames = array(
'MMK' => 'kyat de Myanmar',
'MNT' => 'tögrög mongol',
'MOP' => 'pataca de Macau',
- 'MRO' => 'ouguiya maurità',
+ 'MRO' => 'ouguiya maurità (1973–2017)',
+ 'MRU' => 'ouguiya maurità',
'MTL' => 'lira maltesa',
'MTP' => 'lliura maltesa',
'MUR' => 'rupia mauriciana',
@@ -702,7 +762,7 @@ $currencyNames = array(
'NAD' => 'dòlar namibià',
'NGN' => 'naira nigerià',
'NIC' => 'córdoba nicaragüenca',
- 'NIO' => 'córdoba oro nicaragüenca',
+ 'NIO' => 'córdoba nicaragüenc',
'NLG' => 'florí neerlandès',
'NOK' => 'corona noruega',
'NPR' => 'rupia nepalesa',
@@ -710,8 +770,8 @@ $currencyNames = array(
'OMR' => 'rial omanita',
'PAB' => 'balboa panameny',
'PEI' => 'inti peruà',
- 'PEN' => 'nou sol peruà',
- 'PES' => 'sol peruà',
+ 'PEN' => 'sol peruà',
+ 'PES' => 'sol peruà (1863–1965)',
'PGK' => 'kina de Papua Nova Guinea',
'PHP' => 'peso filipí',
'PKR' => 'rupia pakistanesa',
@@ -743,9 +803,10 @@ $currencyNames = array(
'SRD' => 'dòlar de Surinam',
'SRG' => 'florí de Surinam',
'SSP' => 'lliura del Sudan del Sud',
- 'STD' => 'dobra de São Tomé i Príncipe',
+ 'STD' => 'dobra de São Tomé i Príncipe (1977–2017)',
+ 'STN' => 'dobra de São Tomé i Príncipe',
'SUR' => 'ruble soviètic',
- 'SVC' => 'colón salvadorenc',
+ 'SVC' => 'colon salvadorenc',
'SYP' => 'lliura síria',
'SZL' => 'lilangeni swazi',
'THB' => 'baht tailandès',
@@ -773,7 +834,8 @@ $currencyNames = array(
'UYU' => 'peso uruguaià',
'UZS' => 'som uzbek',
'VEB' => 'bolívar veneçolà (1871–2008)',
- 'VEF' => 'bolívar veneçolà',
+ 'VEF' => 'bolívar veneçolà (2008–2018)',
+ 'VES' => 'bolívar veneçolà',
'VND' => 'dong vietnamita',
'VNN' => 'dong vietnamita (1978–1985)',
'VUV' => 'vatu de Vanuatu',
@@ -812,9 +874,9 @@ $currencyNames = array(
'ZWD' => 'dòlar zimbabuès (1980–2008)',
'ZWL' => 'dòlar zimbabuès (2009)',
'ZWR' => 'dòlar zimbabuès (2008)',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'ADP' => 'ADP',
'AED' => 'AED',
'AFA' => 'AFA',
@@ -868,6 +930,7 @@ $currencySymbols = array(
'BUK' => 'BUK',
'BWP' => 'BWP',
'BYB' => 'BYB',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CAD',
@@ -878,7 +941,8 @@ $currencySymbols = array(
'CLE' => 'CLE',
'CLF' => 'CLF',
'CLP' => 'CLP',
- 'CNY' => '¥',
+ 'CNH' => 'CNH',
+ 'CNY' => 'CNY',
'COP' => 'COP',
'COU' => 'COU',
'CRC' => 'CRC',
@@ -980,6 +1044,7 @@ $currencySymbols = array(
'MNT' => 'MNT',
'MOP' => 'MOP',
'MRO' => 'MRO',
+ 'MRU' => 'MRU',
'MTL' => 'MTL',
'MTP' => 'MTP',
'MUR' => 'MUR',
@@ -1037,6 +1102,7 @@ $currencySymbols = array(
'SRG' => 'SRG',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'STN',
'SUR' => 'SUR',
'SVC' => 'SVC',
'SYP' => 'SYP',
@@ -1067,6 +1133,7 @@ $currencySymbols = array(
'UZS' => 'UZS',
'VEB' => 'VEB',
'VEF' => 'VEF',
+ 'VES' => 'VES',
'VND' => '₫',
'VNN' => 'VNN',
'VUV' => 'VUV',
@@ -1083,7 +1150,7 @@ $currencySymbols = array(
'XEU' => 'XEU',
'XFO' => 'XFO',
'XFU' => 'XFU',
- 'XOF' => 'XOF',
+ 'XOF' => 'CFA',
'XPD' => 'XPD',
'XPF' => 'CFPF',
'XPT' => 'XPT',
@@ -1105,10 +1172,10 @@ $currencySymbols = array(
'ZWD' => 'ZWD',
'ZWL' => 'ZWL',
'ZWR' => 'ZWR',
-);
+];
-$countryNames = array(
- 'AC' => 'illa de l’Ascensió',
+$countryNames = [
+ 'AC' => 'Illa de l’Ascensió',
'AD' => 'Andorra',
'AE' => 'Emirats Àrabs Units',
'AF' => 'Afganistan',
@@ -1116,7 +1183,6 @@ $countryNames = array(
'AI' => 'Anguilla',
'AL' => 'Albània',
'AM' => 'Armènia',
- 'AN' => 'Antilles Neerlandeses',
'AO' => 'Angola',
'AQ' => 'Antàrtida',
'AR' => 'Argentina',
@@ -1124,7 +1190,7 @@ $countryNames = array(
'AT' => 'Àustria',
'AU' => 'Austràlia',
'AW' => 'Aruba',
- 'AX' => 'illes Åland',
+ 'AX' => 'Illes Åland',
'AZ' => 'Azerbaidjan',
'BA' => 'Bòsnia i Hercegovina',
'BB' => 'Barbados',
@@ -1145,28 +1211,28 @@ $countryNames = array(
'BT' => 'Bhutan',
'BV' => 'Bouvet',
'BW' => 'Botswana',
- 'BY' => 'Bielorússia',
+ 'BY' => 'Belarús',
'BZ' => 'Belize',
'CA' => 'Canadà',
- 'CC' => 'illes Cocos',
+ 'CC' => 'Illes Cocos',
'CD' => 'Congo - Kinshasa',
'CF' => 'República Centreafricana',
'CG' => 'Congo - Brazzaville',
'CH' => 'Suïssa',
'CI' => 'Costa d’Ivori',
- 'CK' => 'illes Cook',
+ 'CK' => 'Illes Cook',
'CL' => 'Xile',
'CM' => 'Camerun',
'CN' => 'Xina',
'CO' => 'Colòmbia',
- 'CP' => 'illa Clipperton',
+ 'CP' => 'Illa Clipperton',
'CR' => 'Costa Rica',
'CU' => 'Cuba',
'CV' => 'Cap Verd',
'CW' => 'Curaçao',
- 'CX' => 'illa Christmas',
+ 'CX' => 'Illa Christmas',
'CY' => 'Xipre',
- 'CZ' => 'República Txeca',
+ 'CZ' => 'Txèquia',
'DE' => 'Alemanya',
'DG' => 'Diego Garcia',
'DJ' => 'Djibouti',
@@ -1183,14 +1249,15 @@ $countryNames = array(
'ES' => 'Espanya',
'ET' => 'Etiòpia',
'EU' => 'Unió Europea',
+ 'EZ' => 'zona euro',
'FI' => 'Finlàndia',
'FJ' => 'Fiji',
'FK' => 'Illes Malvines',
'FM' => 'Micronèsia',
- 'FO' => 'illes Fèroe',
+ 'FO' => 'Illes Fèroe',
'FR' => 'França',
'GA' => 'Gabon',
- 'GB' => 'GB',
+ 'GB' => 'RU',
'GD' => 'Grenada',
'GE' => 'Geòrgia',
'GF' => 'Guaiana Francesa',
@@ -1203,7 +1270,7 @@ $countryNames = array(
'GP' => 'Guadeloupe',
'GQ' => 'Guinea Equatorial',
'GR' => 'Grècia',
- 'GS' => 'illes Geòrgia del Sud i Sandwich del Sud',
+ 'GS' => 'Illes Geòrgia del Sud i Sandwich del Sud',
'GT' => 'Guatemala',
'GU' => 'Guam',
'GW' => 'Guinea Bissau',
@@ -1214,11 +1281,11 @@ $countryNames = array(
'HR' => 'Croàcia',
'HT' => 'Haití',
'HU' => 'Hongria',
- 'IC' => 'illes Canàries',
+ 'IC' => 'Illes Canàries',
'ID' => 'Indonèsia',
'IE' => 'Irlanda',
'IL' => 'Israel',
- 'IM' => 'illa de Man',
+ 'IM' => 'Illa de Man',
'IN' => 'Índia',
'IO' => 'Territori Britànic de l’Oceà Índic',
'IQ' => 'Iraq',
@@ -1257,13 +1324,13 @@ $countryNames = array(
'ME' => 'Montenegro',
'MF' => 'Saint Martin',
'MG' => 'Madagascar',
- 'MH' => 'illes Marshall',
+ 'MH' => 'Illes Marshall',
'MK' => 'Macedònia',
'ML' => 'Mali',
'MM' => 'Myanmar (Birmània)',
'MN' => 'Mongòlia',
'MO' => 'Macau',
- 'MP' => 'illes Mariannes del Nord',
+ 'MP' => 'Illes Mariannes del Nord',
'MQ' => 'Martinica',
'MR' => 'Mauritània',
'MS' => 'Montserrat',
@@ -1295,7 +1362,7 @@ $countryNames = array(
'PK' => 'Pakistan',
'PL' => 'Polònia',
'PM' => 'Saint-Pierre-et-Miquelon',
- 'PN' => 'illes Pitcairn',
+ 'PN' => 'Illes Pitcairn',
'PR' => 'Puerto Rico',
'PS' => 'Palestina',
'PT' => 'Portugal',
@@ -1309,7 +1376,7 @@ $countryNames = array(
'RU' => 'Rússia',
'RW' => 'Ruanda',
'SA' => 'Aràbia Saudita',
- 'SB' => 'illes Salomó',
+ 'SB' => 'Illes Salomó',
'SC' => 'Seychelles',
'SD' => 'Sudan',
'SE' => 'Suècia',
@@ -1332,7 +1399,7 @@ $countryNames = array(
'TA' => 'Tristão da Cunha',
'TC' => 'Illes Turks i Caicos',
'TD' => 'Txad',
- 'TF' => 'Territoris Francesos del Sud',
+ 'TF' => 'Territoris Australs Francesos',
'TG' => 'Togo',
'TH' => 'Tailàndia',
'TJ' => 'Tadjikistan',
@@ -1348,7 +1415,8 @@ $countryNames = array(
'TZ' => 'Tanzània',
'UA' => 'Ucraïna',
'UG' => 'Uganda',
- 'UM' => 'illes Perifèriques Menors dels EUA',
+ 'UM' => 'Illes Perifèriques Menors dels EUA',
+ 'UN' => 'ONU',
'US' => 'EUA',
'UY' => 'Uruguai',
'UZ' => 'Uzbekistan',
@@ -1367,9 +1435,11 @@ $countryNames = array(
'ZA' => 'República de Sud-àfrica',
'ZM' => 'Zàmbia',
'ZW' => 'Zimbàbue',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-one' => '{0} segle',
+ 'century-other' => '{0} segles',
'day-future-one' => 'd’aquí a {0} dia',
'day-future-other' => 'd’aquí a {0} dies',
'day-narrow-future-one' => 'd’aquí a {0} dia',
@@ -1384,8 +1454,20 @@ $timeUnits = array(
'day-short-future-other' => 'd’aquí a {0} dies',
'day-short-past-one' => 'fa {0} dia',
'day-short-past-other' => 'fa {0} dies',
+ 'fri-future-one' => 'd’aquí a {0} divendres',
+ 'fri-future-other' => 'd’aquí a {0} divendres',
+ 'fri-narrow-future-one' => 'd’aquí a {0} dv.',
+ 'fri-narrow-future-other' => 'd’aquí a {0} dv.',
+ 'fri-narrow-past-one' => 'fa {0} dv.',
+ 'fri-narrow-past-other' => 'fa {0} dv.',
+ 'fri-past-one' => 'fa {0} divendres',
+ 'fri-past-other' => 'fa {0} divendres',
+ 'fri-short-future-one' => 'd’aquí a {0} dv.',
+ 'fri-short-future-other' => 'd’aquí a {0} dv.',
+ 'fri-short-past-one' => 'fa {0} dv.',
+ 'fri-short-past-other' => 'fa {0} dv.',
'hour-future-one' => 'd’aquí a {0} hora',
- 'hour-future-other' => 'd’aquí {0} hores',
+ 'hour-future-other' => 'd’aquí a {0} hores',
'hour-narrow-future-one' => 'd‘aquí a {0} h',
'hour-narrow-future-other' => 'd‘aquí a {0} h',
'hour-narrow-past-one' => 'fa {0} h',
@@ -1395,7 +1477,7 @@ $timeUnits = array(
'hour-past-one' => 'fa {0} hora',
'hour-past-other' => 'fa {0} hores',
'hour-short-future-one' => 'd’aquí a {0} h',
- 'hour-short-future-other' => 'd’aquí {0} hores',
+ 'hour-short-future-other' => 'd’aquí a {0} h',
'hour-short-past-one' => 'fa {0} h',
'hour-short-past-other' => 'fa {0} h',
'microsecond-one' => '{0} microsegon',
@@ -1416,10 +1498,22 @@ $timeUnits = array(
'minute-short-future-other' => 'd’aquí a {0} min',
'minute-short-past-one' => 'fa {0} min',
'minute-short-past-other' => 'fa {0} min',
+ 'mon-future-one' => 'd’aquí a {0} dilluns',
+ 'mon-future-other' => 'd’aquí a {0} dilluns',
+ 'mon-narrow-future-one' => 'd’aquí a {0} dl.',
+ 'mon-narrow-future-other' => 'd’aquí a {0} dl.',
+ 'mon-narrow-past-one' => 'fa {0} dl.',
+ 'mon-narrow-past-other' => 'fa {0} dl.',
+ 'mon-past-one' => 'fa {0} dilluns',
+ 'mon-past-other' => 'fa {0} dilluns',
+ 'mon-short-future-one' => 'd’aquí a {0} dl.',
+ 'mon-short-future-other' => 'd’aquí a {0} dl.',
+ 'mon-short-past-one' => 'fa {0} dl.',
+ 'mon-short-past-other' => 'fa {0} dl.',
'month-future-one' => 'd’aquí a {0} mes',
'month-future-other' => 'd’aquí a {0} mesos',
- 'month-narrow-future-one' => 'en {0} mes',
- 'month-narrow-future-other' => 'en {0} mesos',
+ 'month-narrow-future-one' => 'd’aquí a {0} mes',
+ 'month-narrow-future-other' => 'd’aquí a {0} mesos',
'month-narrow-past-one' => 'fa {0} mes',
'month-narrow-past-other' => 'fa {0} mesos',
'month-one' => '{0} mes',
@@ -1434,8 +1528,8 @@ $timeUnits = array(
'nanosecond-other' => '{0} nanosegons',
'quarter-future-one' => 'd’aquí a {0} trimestre',
'quarter-future-other' => 'd’aquí a {0} trimestres',
- 'quarter-narrow-future-one' => 'en {0} trim.',
- 'quarter-narrow-future-other' => 'en {0} trim.',
+ 'quarter-narrow-future-one' => 'd’aquí a {0} trim.',
+ 'quarter-narrow-future-other' => 'd’aquí a {0} trim.',
'quarter-narrow-past-one' => 'fa {0} trim.',
'quarter-narrow-past-other' => 'fa {0} trim.',
'quarter-past-one' => 'fa {0} trimestre',
@@ -1444,6 +1538,18 @@ $timeUnits = array(
'quarter-short-future-other' => 'd’aquí a {0} trim.',
'quarter-short-past-one' => 'fa {0} trim.',
'quarter-short-past-other' => 'fa {0} trim.',
+ 'sat-future-one' => 'd’aquí a {0} dissabte',
+ 'sat-future-other' => 'd’aquí a {0} dissabtes',
+ 'sat-narrow-future-one' => 'd’aquí a {0} ds.',
+ 'sat-narrow-future-other' => 'd’aquí a {0} ds.',
+ 'sat-narrow-past-one' => 'fa {0} ds.',
+ 'sat-narrow-past-other' => 'fa {0} ds.',
+ 'sat-past-one' => 'fa {0} dissabte',
+ 'sat-past-other' => 'fa {0} dissabtes',
+ 'sat-short-future-one' => 'd’aquí a {0} ds.',
+ 'sat-short-future-other' => 'd’aquí a {0} ds.',
+ 'sat-short-past-one' => 'fa {0} ds.',
+ 'sat-short-past-other' => 'fa {0} ds.',
'second-future-one' => 'd’aquí a {0} segon',
'second-future-other' => 'd’aquí a {0} segons',
'second-narrow-future-one' => 'd’aquí a {0} s',
@@ -1458,10 +1564,58 @@ $timeUnits = array(
'second-short-future-other' => 'd’aquí a {0} s',
'second-short-past-one' => 'fa {0} s',
'second-short-past-other' => 'fa {0} s',
+ 'sun-future-one' => 'd’aquí a {0} diumenge',
+ 'sun-future-other' => 'd’aquí a {0} diumenges',
+ 'sun-narrow-future-one' => 'd’aquí a {0} dg.',
+ 'sun-narrow-future-other' => 'd’aquí a {0} dg.',
+ 'sun-narrow-past-one' => 'fa {0} dg.',
+ 'sun-narrow-past-other' => 'fa {0} dg.',
+ 'sun-past-one' => 'fa {0} diumenge',
+ 'sun-past-other' => 'fa {0} diumenges',
+ 'sun-short-future-one' => 'd’aquí a {0} dg.',
+ 'sun-short-future-other' => 'd’aquí a {0} dg.',
+ 'sun-short-past-one' => 'fa {0} dg.',
+ 'sun-short-past-other' => 'fa {0} dg.',
+ 'thu-future-one' => 'd’aquí a {0} dijous',
+ 'thu-future-other' => 'd’aquí a {0} dijous',
+ 'thu-narrow-future-one' => 'd’aquí a {0} dj.',
+ 'thu-narrow-future-other' => 'd’aquí a {0} dj.',
+ 'thu-narrow-past-one' => 'fa {0} dj.',
+ 'thu-narrow-past-other' => 'fa {0} dj.',
+ 'thu-past-one' => 'fa {0} dijous',
+ 'thu-past-other' => 'fa {0} dijous',
+ 'thu-short-future-one' => 'd’aquí a {0} dj.',
+ 'thu-short-future-other' => 'd’aquí a {0} dj.',
+ 'thu-short-past-one' => 'fa {0} dj.',
+ 'thu-short-past-other' => 'fa {0} dj.',
+ 'tue-future-one' => 'd’aquí a {0} dimarts',
+ 'tue-future-other' => 'd’aquí a {0} dimarts',
+ 'tue-narrow-future-one' => 'd’aquí a {0} dt.',
+ 'tue-narrow-future-other' => 'd’aquí a {0} dt.',
+ 'tue-narrow-past-one' => 'fa {0} dt.',
+ 'tue-narrow-past-other' => 'fa {0} dt.',
+ 'tue-past-one' => 'fa {0} dimarts',
+ 'tue-past-other' => 'fa {0} dimarts',
+ 'tue-short-future-one' => 'd’aquí a {0} dt.',
+ 'tue-short-future-other' => 'd’aquí a {0} dt.',
+ 'tue-short-past-one' => 'fa {0} dt.',
+ 'tue-short-past-other' => 'fa {0} dt.',
+ 'wed-future-one' => 'd’aquí a {0} dimecres',
+ 'wed-future-other' => 'd’aquí a {0} dimecres',
+ 'wed-narrow-future-one' => 'd’aquí a {0} dc.',
+ 'wed-narrow-future-other' => 'd’aquí a {0} dc.',
+ 'wed-narrow-past-one' => 'fa {0} dc.',
+ 'wed-narrow-past-other' => 'fa {0} dc.',
+ 'wed-past-one' => 'fa {0} dimecres',
+ 'wed-past-other' => 'fa {0} dimecres',
+ 'wed-short-future-one' => 'd’aquí a {0} dc.',
+ 'wed-short-future-other' => 'd’aquí a {0} dc.',
+ 'wed-short-past-one' => 'fa {0} dc.',
+ 'wed-short-past-other' => 'fa {0} dc.',
'week-future-one' => 'd’aquí a {0} setmana',
'week-future-other' => 'd’aquí a {0} setmanes',
- 'week-narrow-future-one' => 'en {0} setm.',
- 'week-narrow-future-other' => 'en {0} setm.',
+ 'week-narrow-future-one' => 'd’aquí a {0} setm.',
+ 'week-narrow-future-other' => 'd’aquí a {0} setm.',
'week-narrow-past-one' => 'fa {0} setm.',
'week-narrow-past-other' => 'fa {0} setm.',
'week-one' => '{0} setmana',
@@ -1474,8 +1628,8 @@ $timeUnits = array(
'week-short-past-other' => 'fa {0} setm.',
'year-future-one' => 'd’aquí a {0} any',
'year-future-other' => 'd’aquí a {0} anys',
- 'year-narrow-future-one' => 'en {0} any',
- 'year-narrow-future-other' => 'en {0} anys',
+ 'year-narrow-future-one' => 'd’aquí a {0} any',
+ 'year-narrow-future-other' => 'd’aquí a {0} anys',
'year-narrow-past-one' => 'fa {0} any',
'year-narrow-past-other' => 'fa {0} anys',
'year-one' => '{0} any',
@@ -1486,4 +1640,4 @@ $timeUnits = array(
'year-short-future-other' => 'd’aquí a {0} anys',
'year-short-past-one' => 'fa {0} any',
'year-short-past-other' => 'fa {0} anys',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesChr.php b/MLEB/cldr/CldrNames/CldrNamesChr.php
index d24c845e..940e95b4 100644
--- a/MLEB/cldr/CldrNames/CldrNamesChr.php
+++ b/MLEB/cldr/CldrNames/CldrNamesChr.php
@@ -1,46 +1,730 @@
<?php
-$languageNames = array(
- 'cay' => 'ᎦᏳᎦ',
- 'cho' => 'ᎠᏣᏗ',
+$languageNames = [
+ 'aa' => 'ᎠᏩᎳ',
+ 'ab' => 'ᎠᏆᏏᎠᏂ',
+ 'ace' => 'ᎠᏥᏂᏏ',
+ 'ada' => 'ᎠᏓᎾᎦᎺ',
+ 'ady' => 'ᎠᏗᎨ',
+ 'af' => 'ᎠᎬᎿᎨᏍᏛ',
+ 'agq' => 'ᎠᎨᎹ',
+ 'ain' => 'ᎠᏱᏄ',
+ 'ak' => 'ᎠᎧᎾ',
+ 'ale' => 'ᎠᎵᎤᏘ',
+ 'alt' => 'ᏧᎦᎾᏮ ᏗᏜ ᎠᎵᏔᎢ',
+ 'am' => 'ᎠᎹᎭᎵᎩ',
+ 'an' => 'ᎠᏩᎪᏂᏏ',
+ 'anp' => 'ᎠᎾᎩᎧ',
+ 'ar' => 'ᎡᎳᏈ',
+ 'ar-001' => 'ᎪᎯᏊ ᎢᎬᏥᎩ ᎠᏟᎶᏍᏗ ᎡᎳᏈ',
+ 'arn' => 'ᎹᏊᏤ',
+ 'arp' => 'ᎠᏩᏈᎰ',
+ 'as' => 'ᎠᏌᎻᏏ',
+ 'asa' => 'ᎠᏑ',
+ 'ast' => 'ᎠᏍᏚᎵᎠᏂ',
+ 'av' => 'ᎠᏩᎵᎧ',
+ 'awa' => 'ᎠᏩᏗ',
+ 'ay' => 'ᎠᏱᎹᎳ',
+ 'az' => 'ᎠᏎᏆᏣᏂ',
+ 'ba' => 'ᏆᏍᎯᎩᎠ',
+ 'ban' => 'ᏆᎵᏁᏏ',
+ 'bas' => 'ᏆᏌᎠ',
+ 'be' => 'ᏇᎳᎷᏏ',
+ 'bem' => 'ᏇᎹᏆ',
+ 'bez' => 'ᏇᎾ',
+ 'bg' => 'ᏊᎵᎨᎵᎠᏂ',
+ 'bho' => 'ᏉᏣᏊᎵ',
+ 'bi' => 'ᏈᏍᎳᎹ',
+ 'bin' => 'ᏈᏂ',
+ 'bla' => 'ᏏᎩᏏᎧ',
+ 'bm' => 'ᏆᎻᏆᎳ',
+ 'bn' => 'ᏇᏂᎦᎳ',
+ 'bo' => 'ᏘᏇᏔᏂ',
+ 'br' => 'ᏇᏙᏂ',
+ 'brx' => 'ᏉᏙ',
+ 'bs' => 'ᏆᏍᏂᎠᏂ',
+ 'bug' => 'ᏈᎥᎩᏂᏍ',
+ 'byn' => 'ᏟᏂ',
+ 'ca' => 'ᎨᏔᎳᏂ',
+ 'cay' => 'ᎧᏳᎦ',
+ 'ce' => 'ᏤᏤᏂ',
+ 'ceb' => 'ᏎᏆᏃ',
+ 'cgg' => 'ᏥᎦ',
+ 'ch' => 'ᏣᎼᎶ',
+ 'chk' => 'ᏧᎨᏎ',
+ 'chm' => 'ᎹᎵ',
+ 'cho' => 'ᎠᏣᏓ',
'chr' => 'ᏣᎳᎩ',
- 'de' => 'ᎠᏂᏓᏥ',
+ 'chy' => 'ᏣᏰᏂ',
+ 'ckb' => 'ᎠᏰᏟ ᎫᏗᏏ',
+ 'co' => 'ᎪᎵᏍᎢᎧᏂ',
+ 'crs' => 'ᏎᏎᎵᏩ ᏟᏲᎵ ᎠᏂᎦᎸ',
+ 'cs' => 'ᏤᎩ',
+ 'cu' => 'ᏧᏂᎳᏫᏍᏗ ᏍᎳᏫᎪ',
+ 'cv' => 'ᏧᏩᏏ',
+ 'cy' => 'ᏪᎵᏏ',
+ 'da' => 'ᏕᏂᏍ',
+ 'dak' => 'ᏓᎪᏔ',
+ 'dar' => 'ᏓᎳᏆ',
+ 'dav' => 'ᏔᎢᏔ',
+ 'de' => 'ᏙᎢᏥ',
+ 'de-at' => 'ᎠᏟᏯᏂ ᎠᏂᏓᏥ',
+ 'de-ch' => 'ᏍᏫᏏ ᎦᎸᎳᏗ ᎠᏂᏓᏥ',
+ 'dgr' => 'ᎩᏟ ᎤᏄᎳᏥ',
+ 'dje' => 'ᏌᎹ',
+ 'dsb' => 'ᎡᎳᏗ ᏐᏈᎠᏂ',
+ 'dua' => 'ᏚᎠᎳ',
+ 'dv' => 'ᏗᏪᎯ',
+ 'dyo' => 'ᏦᎳ-ᏬᏱ',
+ 'dz' => 'ᏓᏐᏅᎧ',
+ 'dzg' => 'ᏓᏌᎦ',
+ 'ebu' => 'ᎡᎻᏊ',
+ 'ee' => 'ᎡᏪ',
+ 'efi' => 'ᎡᏫᎩ',
+ 'eka' => 'ᎨᎧᏧᎧ',
+ 'el' => 'ᎠᏂᎪᎢ',
'en' => 'ᎩᎵᏏ',
+ 'en-au' => 'ᎡᎳᏗᏜ ᎩᎵᏏ',
+ 'en-ca' => 'ᎨᎾᏓ ᎩᎵᏏ',
+ 'en-gb' => 'ᎩᎵᏏᏲ ᎩᎵᏏ',
+ 'en-us' => 'ᎠᎹᏰᏟ ᎩᎵᏏ',
+ 'eo' => 'ᎡᏍᏇᎳᏂᏙ',
'es' => 'ᏍᏆᏂ',
+ 'es-419' => 'ᏔᏘᏂ ᎠᎹᏰᏟ ᏍᏆᏂ',
+ 'es-es' => 'ᎠᏂᏍᏆᏂᏱ ᏍᏆᏂ',
+ 'es-mx' => 'ᏍᏆᏂᏱ ᏍᏆᏂ',
+ 'et' => 'ᎡᏍᏙᏂᎠᏂ',
+ 'eu' => 'ᏆᏍᎨ',
+ 'ewo' => 'ᎡᏬᏂᏙ',
+ 'fa' => 'ᏇᏏᎠᏂ',
+ 'ff' => 'ᏊᎳᏂ',
+ 'fi' => 'ᏈᏂᏍ',
+ 'fil' => 'ᎠᏈᎵᎩ',
+ 'fj' => 'ᏫᏥᎠᏂ',
+ 'fo' => 'ᏇᎶᎡᏍ',
+ 'fon' => 'ᏠᏂ',
'fr' => 'ᎦᎸᏥ',
+ 'fr-ca' => 'ᎨᎾᏓ ᎦᎸᏥ',
+ 'fr-ch' => 'ᏍᏫᏏ ᎦᎸᏥ',
+ 'fur' => 'ᏞᎤᎵᎠᏂ',
+ 'fy' => 'ᏭᏕᎵᎬ ᏗᏜ ᏟᏏᎠᏂ',
+ 'ga' => 'ᎨᎵᎩ',
+ 'gaa' => 'Ꭶ',
+ 'gd' => 'ᏍᎦᏗ ᎨᎵᎩ',
+ 'gez' => 'ᎩᏏ',
+ 'gil' => 'ᎩᏇᏘᏏ',
+ 'gl' => 'ᎦᎵᏏᎠᏂ',
+ 'gn' => 'ᏆᎳᏂ',
+ 'gor' => 'ᎪᎶᏂᏔᏃ',
+ 'gsw' => 'ᏍᏫᏏ ᎠᏂᏓᏥ',
+ 'gu' => 'ᎫᏣᎳᏘ',
+ 'guz' => 'ᎫᏏ',
+ 'gv' => 'ᎹᎾᎧᏏ',
+ 'gwi' => 'ᏈᏥᏂ',
+ 'ha' => 'ᎭᎤᏌ',
+ 'haw' => 'ᎭᏩᎼ',
+ 'he' => 'ᎠᏂᏈᎷ',
+ 'hi' => 'ᎯᏂᏗ',
+ 'hil' => 'ᎯᎵᎨᎾᏂ',
+ 'hmn' => 'ᎭᎼᏂᎩ',
+ 'hr' => 'ᎧᎶᎡᏏᏂ',
+ 'hsb' => 'ᎦᎸᎳᏗᎨ ᏐᏈᎠᏂ',
+ 'ht' => 'ᎮᏏᎠᏂ ᏟᏲᎵ',
+ 'hu' => 'ᎲᏂᎦᎵᎠᏂ',
+ 'hup' => 'ᎠᏂᎱᏆ',
+ 'hy' => 'ᎠᎳᎻᎠᏂ',
+ 'hz' => 'ᎮᎴᎶ',
+ 'ia' => 'ᎠᏰᏟ ᎦᏬᏂᎯᏍᏗ',
+ 'iba' => 'ᎢᏆᏂ',
+ 'ibb' => 'ᎢᏈᏈᎣ',
+ 'id' => 'ᎢᏂᏙᏂᏏᎠ',
+ 'ig' => 'ᎢᎦᎪ',
+ 'ii' => 'ᏏᏧᏩᏂ Ᏹ',
+ 'ilo' => 'ᎢᎶᎪ',
+ 'inh' => 'ᎢᏂᎫᏏ',
+ 'io' => 'ᎢᏙ',
+ 'is' => 'ᏧᏁᏍᏓᎸᎯᎢᎩ',
'it' => 'ᎬᏩᎵᏲᏥᎢ',
+ 'iu' => 'ᎢᏄᎦᏘᏚ',
'ja' => 'ᏣᏩᏂᏏ',
- 'moh' => 'ᎼᎻᎦ',
+ 'jbo' => 'ᎶᏣᏆᏂ',
+ 'jgo' => 'ᎾᎪᏆ',
+ 'jmc' => 'ᎹᏣᎺ',
+ 'jv' => 'ᏆᏌ ᏣᏩ',
+ 'ka' => 'ᏦᏥᎠᏂ',
+ 'kab' => 'ᎧᏈᎴ',
+ 'kac' => 'ᎧᏥᏂ',
+ 'kaj' => 'ᏥᏧ',
+ 'kam' => 'ᎧᎻᏆ',
+ 'kbd' => 'ᎧᏆᏗᎠᏂ',
+ 'kcg' => 'ᏔᏯᏆ',
+ 'kde' => 'ᎹᎪᏕ',
+ 'kea' => 'ᎧᏊᏪᏗᎠᏄ',
+ 'kfo' => 'ᎪᎶ',
+ 'kha' => 'ᎧᏏ',
+ 'khq' => 'ᎪᏱᎳ ᏥᏂ',
+ 'ki' => 'ᎩᎫᏳ',
+ 'kj' => 'ᎫᏩᏂᎠᎹ',
+ 'kk' => 'ᎧᏌᎧ',
+ 'kkj' => 'ᎧᎪ',
+ 'kl' => 'ᎧᎳᎵᏑᏘ',
+ 'kln' => 'ᎧᎴᏂᏥᏂ',
+ 'km' => 'ᎩᎻᎷ',
+ 'kmb' => 'ᎩᎻᏊᏚ',
+ 'kn' => 'ᎧᎾᏓ',
+ 'ko' => 'ᎪᎵᎠᏂ',
+ 'kok' => 'ᎧᏂᎧᏂ',
+ 'kpe' => 'ᏇᎴ',
+ 'kr' => 'ᎧᏄᎵ',
+ 'krc' => 'ᎧᎳᏣᏱ-ᏆᎵᎧᎵ',
+ 'krl' => 'ᎧᎴᎵᎠᏂ',
+ 'kru' => 'ᎫᎷᎩ',
+ 'ks' => 'ᎧᏏᎻᎵ',
+ 'ksb' => 'ᏝᎻᏆᎸ',
+ 'ksf' => 'ᏆᏫᎠ',
+ 'ksh' => 'ᎪᎶᏂᎠᏂ',
+ 'ku' => 'ᎫᏗᏏ',
+ 'kum' => 'ᎫᎻᎧ',
+ 'kv' => 'ᎪᎻ',
+ 'kw' => 'ᏎᎷᎭ',
+ 'ky' => 'ᎩᎵᏣᎢᏍ',
+ 'la' => 'ᎳᏘᏂ',
+ 'lad' => 'ᎳᏗᏃ',
+ 'lag' => 'ᎳᏂᎩ',
+ 'lb' => 'ᎸᎦᏏᎻᏋᎢᏍ',
+ 'lez' => 'ᎴᏏᎦᏂ',
+ 'lg' => 'ᎦᏂᏓ',
+ 'li' => 'ᎴᎹᏊᎵᏏ',
+ 'lkt' => 'ᎳᎪᏓ',
+ 'ln' => 'ᎵᏂᎦᎳ',
+ 'lo' => 'ᎳᎣ',
+ 'loz' => 'ᎶᏏ',
+ 'lrc' => 'ᏧᏴᏢ ᏗᏜ ᎷᎵ',
+ 'lt' => 'ᎵᏚᏩᏂᎠᏂ',
+ 'lu' => 'ᎷᏆ-ᎧᏔᎦ',
+ 'lua' => 'ᎷᏆ-ᎷᎷᎠ',
+ 'lun' => 'ᎷᎾᏓ',
+ 'luo' => 'ᎷᎣ',
+ 'lus' => 'ᎻᏐ',
+ 'luy' => 'ᎷᏱᎠ',
+ 'lv' => 'ᎳᏘᏫᎠᏂ',
+ 'mad' => 'ᎹᏚᎴᏏ',
+ 'mag' => 'ᎹᎦᎯ',
+ 'mai' => 'ᎹᏟᎵ',
+ 'mak' => 'ᎹᎧᏌ',
+ 'mas' => 'ᎹᏌᏱ',
+ 'mdf' => 'ᎼᎧᏌ',
+ 'men' => 'ᎺᎾᏕ',
+ 'mer' => 'ᎺᎷ',
+ 'mfe' => 'ᎼᎵᏏᎡᏂ',
+ 'mg' => 'ᎹᎳᎦᏏ',
+ 'mgh' => 'ᎹᎫᏩ-ᎻᏙ',
+ 'mgo' => 'ᎺᎳ’',
+ 'mh' => 'ᎹᏌᎵᏏ',
+ 'mi' => 'ᎹᏫ',
+ 'mic' => 'ᎻᎧᎹᎩ',
+ 'min' => 'ᎻᎾᎧᏆᎤ',
+ 'mk' => 'ᎹᏎᏙᏂᎠᏂ',
+ 'ml' => 'ᎹᎳᏯᎳᎻ',
+ 'mn' => 'ᎹᏂᎪᎵᎠᏂ',
+ 'mni' => 'ᎺᏂᏉᎵ',
+ 'moh' => 'ᎼᎭᎩ',
+ 'mos' => 'ᎼᏍᏏ',
+ 'mr' => 'ᎹᎳᏘ',
+ 'ms' => 'ᎹᎴ',
+ 'mt' => 'ᎹᎵᏘᏍ',
+ 'mua' => 'ᎽᏂᏓᎩ',
+ 'mul' => 'ᏧᏈᏍᏗ ᏗᎦᏬᏂᎯᏍᏗ',
'mus' => 'ᎠᎫᏌ',
- 'pt' => 'ᏉᏧᎦᎵ',
- 'ru' => 'ᏲᏂᎢ',
+ 'mwl' => 'ᎻᎳᏕᏏ',
+ 'my' => 'ᏋᎻᏍ',
+ 'myv' => 'ᎡᏏᏯ',
+ 'mzn' => 'ᎹᏌᏕᎳᏂ',
+ 'na' => 'ᏃᎤᎷ',
+ 'nap' => 'ᏂᏯᏆᎵᏔᏂ',
+ 'naq' => 'ᎾᎹ',
+ 'nb' => 'ᏃᎵᏪᏥᏂ ᏉᎧᎹᎵ',
+ 'nd' => 'ᏧᏴᏢ ᏂᏕᏇᎴ',
+ 'nds-nl' => 'ᎡᎳᏗ ᏁᏛᎳᏂ',
+ 'ne' => 'ᏁᏆᎵ',
+ 'new' => 'ᏁᏩᎵ',
+ 'ng' => 'ᎾᏙᎦ',
+ 'nia' => 'ᏂᎠᏏ',
+ 'niu' => 'ᏂᏳᏫᏯᏂ',
+ 'nl' => 'ᏛᏥ',
+ 'nl-be' => 'ᏊᎵᏥᎥᎻ ᏛᏥ',
+ 'nmg' => 'ᏆᏏᏲ',
+ 'nn' => 'ᏃᎵᏪᏥᏂ ᎾᎵᏍᎩ',
+ 'nnh' => 'ᎾᏥᏰᎹᏊᏂ',
+ 'nog' => 'ᏃᎦᏱ',
+ 'nqo' => 'ᎾᎪ',
+ 'nr' => 'ᏧᎦᎾᏮ ᏂᏕᏇᎴ',
+ 'nso' => 'ᏧᏴᏢ ᏗᏜ ᏐᏠ',
+ 'nus' => 'ᏄᏪᎵ',
+ 'nv' => 'ᎾᏩᎰ',
+ 'ny' => 'ᏂᏯᏂᏣ',
+ 'nyn' => 'ᏂᏯᎾᎪᎴ',
+ 'oc' => 'ᎠᏏᏔᏂ',
+ 'om' => 'ᎣᎶᎼ',
+ 'or' => 'ᎣᏗᎠ',
+ 'os' => 'ᎣᏎᏘᎧ',
+ 'pa' => 'ᏡᏂᏣᏈ',
+ 'pag' => 'ᏇᎦᏏᎠᏂ',
+ 'pam' => 'ᏆᎹᏆᎾᎦ',
+ 'pap' => 'ᏆᏈᏯᎺᎾᏙ',
+ 'pau' => 'ᏆᎳᎤᏩᏂ',
+ 'pcm' => 'ᎾᎩᎵᎠᏂ ᏈᏥᏂ',
+ 'pl' => 'ᏉᎵᏍ',
+ 'prg' => 'ᏡᏏᎠᏂ',
+ 'ps' => 'ᏆᏍᏙ',
+ 'pt' => 'ᏉᏧᎩᏍ',
+ 'pt-br' => 'ᏆᏏᎵᎢ ᏉᏧᎩᏍ',
+ 'pt-pt' => 'ᏉᏥᎦᎳ ᏉᏧᎩᏍ',
+ 'qu' => 'ᎨᏧᏩ',
+ 'quc' => 'ᎩᏤ',
+ 'rap' => 'ᎳᏆᏄᏫ',
+ 'rar' => 'ᎳᎶᏙᎾᎦᏂ',
+ 'rm' => 'ᎠᏂᎶᎺᏂ',
+ 'rn' => 'ᎷᏂᏗ',
+ 'ro' => 'ᎶᎹᏂᎠᏂ',
+ 'ro-md' => 'ᎹᎵᏙᏫᎠ ᏣᎹᏂᎠᏂ',
+ 'rof' => 'ᎶᎹᏉ',
+ 'ru' => 'ᏲᏅᎯ',
+ 'rup' => 'ᎠᏬᎹᏂᎠᏂ',
+ 'rw' => 'ᎩᏂᏯᏩᏂᏓ',
+ 'rwk' => 'Ꮖ',
+ 'sa' => 'ᏍᏂᏍᎩᏗ',
+ 'sad' => 'ᏌᏅᏓᏫ',
+ 'sah' => 'ᏌᎧᎾ',
+ 'saq' => 'ᏌᎹᏊᎷ',
+ 'sat' => 'ᏌᏂᏔᎵ',
+ 'sba' => 'ᎾᎦᎹᏇ',
+ 'sbp' => 'ᏌᏁᎫ',
+ 'sc' => 'ᏌᏗᏂᎠᏂ',
+ 'scn' => 'ᏏᏏᎵᎠᏂ',
+ 'sco' => 'ᏍᎦᏗ',
+ 'sd' => 'ᏏᏂᏗ',
+ 'se' => 'ᏧᏴᏢ ᏗᏜ ᏌᎻ',
'see' => 'ᏏᏂᎦ',
+ 'seh' => 'ᏎᎾ',
+ 'ses' => 'ᎪᏱᎳᏈᎶ ᏎᏂ',
+ 'sg' => 'ᏌᏂᎪ',
+ 'shi' => 'ᏔᏤᎵᎯᏘ',
+ 'shn' => 'ᏝᏂ',
+ 'si' => 'ᏏᎾᎭᎳ',
+ 'sk' => 'ᏍᎶᏩᎩ',
+ 'sl' => 'ᏍᎶᏫᏂᎠᏂ',
+ 'sm' => 'ᏌᎼᏯᏂ',
+ 'sma' => 'ᏧᎦᎾᏮ ᏗᏜ ᏌᎻ',
+ 'smj' => 'ᎷᎴ ᏌᎻ',
+ 'smn' => 'ᎢᎾᎵ ᏌᎻ',
+ 'sms' => 'ᏍᎪᎵᏘ ᏌᎻ',
+ 'sn' => 'ᏠᎾ',
+ 'snk' => 'ᏐᏂᏂᎨ',
+ 'so' => 'ᏐᎹᎵ',
+ 'sq' => 'ᎠᎵᏇᏂ',
+ 'sr' => 'ᏒᏈᎠᏂ',
+ 'srn' => 'ᏏᎳᎾᏂ ᏙᏃᎪ',
+ 'ss' => 'ᏍᏩᏘ',
+ 'ssy' => 'ᏌᎰ',
+ 'st' => 'ᏧᎦᎾᏮ ᏗᏜ ᏐᏠ',
+ 'su' => 'ᏑᏂᏓᏂᏏ',
+ 'suk' => 'ᏑᎫᎹ',
+ 'sv' => 'ᏍᏫᏗᏏ',
+ 'sw' => 'ᏍᏩᎯᎵ',
+ 'sw-cd' => 'ᎧᏂᎪ ᏍᏩᎯᎵ',
+ 'swb' => 'ᎪᎼᎵᎠᏂ',
+ 'syr' => 'ᏏᎵᎠᎩ',
+ 'ta' => 'ᏔᎻᎵ',
+ 'te' => 'ᏖᎷᎦ',
+ 'tem' => 'ᏘᎹᏁ',
+ 'teo' => 'ᏖᏐ',
+ 'tet' => 'ᏖᏚᎼ',
+ 'tg' => 'ᏔᏥᎩ',
+ 'th' => 'ᏔᏱ',
+ 'ti' => 'ᏘᎩᎵᏂᎠ',
+ 'tig' => 'ᏢᏓᏥ',
+ 'tk' => 'ᎠᏂᎬᎾ',
+ 'tlh' => 'ᏟᎦᎾ',
+ 'tn' => 'ᏧᏩᎾ',
+ 'to' => 'ᏙᎾᎦᏂ',
+ 'tpi' => 'ᏙᎩ ᏈᏏᏂ',
+ 'tr' => 'ᎠᎬᎾ',
+ 'trv' => 'ᏔᎶᎪ',
+ 'ts' => 'ᏦᎾᎦ',
+ 'tt' => 'ᏔᏔ',
+ 'tum' => 'ᏛᎹᏊᎧ',
+ 'tvl' => 'ᏚᏩᎷ',
+ 'twq' => 'ᏔᏌᏩᎩ',
+ 'ty' => 'ᏔᎯᏘᎠᏂ',
+ 'tyv' => 'ᏚᏫᏂᎠᏂ',
+ 'tzm' => 'ᎠᏰᏟ ᎡᎶᎯ ᏓᏟᎶᏍᏗᏓᏅᎢ ᏔᎹᏏᏘ',
+ 'udm' => 'ᎤᏚᎷᏘ',
+ 'ug' => 'ᏫᎦ',
+ 'uk' => 'ᏳᎧᎴᏂᎠᏂ',
+ 'umb' => 'ᎤᎹᏊᏅᏚ',
'und' => 'ᏄᏬᎵᏍᏛᎾ ᎦᏬᏂᎯᏍᏗ',
+ 'ur' => 'ᎤᎵᏚ',
+ 'uz' => 'ᎤᏍᏇᎩ',
+ 'vai' => 'ᏩᏱ',
+ 've' => 'ᏫᏂᏓ',
+ 'vi' => 'ᏫᎡᏘᎾᎻᏍ',
+ 'vo' => 'ᏬᎳᏊᎩ',
+ 'vun' => 'ᏭᎾᏦ',
+ 'wa' => 'ᏩᎷᎾ',
+ 'wae' => 'ᏩᎵᏎᎵ',
+ 'wal' => 'ᏬᎳᏱᏔ',
+ 'war' => 'ᏩᎴ',
+ 'wo' => 'ᏬᎶᏫ',
+ 'xal' => 'ᎧᎳᎻᎧ',
+ 'xh' => 'ᏠᏌ',
+ 'xog' => 'ᏐᎦ',
+ 'yav' => 'ᏰᎾᎦᏇᏂ',
+ 'ybb' => 'ᏰᎹᏋ',
+ 'yi' => 'ᏱᏗᏍ',
+ 'yo' => 'ᏲᏄᏆ',
+ 'yue' => 'ᎨᎾᏙᏂᏏ',
+ 'zgh' => 'ᎠᏟᎶᏍᏗ ᎼᎶᎪ ᏔᎹᏏᏘ',
'zh' => 'ᏓᎶᏂᎨ',
-);
+ 'zh-hans' => 'ᎠᎯᏗᎨ ᏓᎶᏂᎨ',
+ 'zh-hant' => 'ᎤᏦᏍᏗ ᏓᎶᏂᎨ',
+ 'zu' => 'ᏑᎷ',
+ 'zun' => 'ᏑᏂ',
+ 'zxx' => 'Ꮭ ᎦᏬᏂᎯᏍᏗ ᎦᎸᏛᎢ ᏱᎩ',
+ 'zza' => 'ᏌᏌ',
+];
-$currencyNames = array(
+$currencyNames = [
+ 'AED' => 'ᏌᏊ ᎢᏳᎾᎵᏍᏔᏅ ᎡᎳᏈ ᎢᎹᎵᏘᏏ ᎠᏕᎳ',
+ 'AFN' => 'ᎠᏫᎨᏂᏍᏖᏂ ᎠᏕᎳ',
+ 'ALL' => 'ᎠᎵᏇᏂᏯ ᎠᏕᎳ',
+ 'AMD' => 'ᎠᎵᎻᏂᎠ ᎠᏕᎳ',
+ 'ANG' => 'ᎾᏍᎩᏁᏛᎳᏂ ᎠᏂᏘᎵᏏ ᎠᏕᎳ',
+ 'AOA' => 'ᎠᏂᎪᎳ ᎠᏕᎳ',
+ 'ARS' => 'ᎠᏥᏂᏘᏂᎠ ᎠᏕᎳ',
+ 'AUD' => 'ᎡᎳᏗᏜ ᎠᏕᎳ',
+ 'AWG' => 'ᎠᎷᏆ ᎠᏕᎳ',
+ 'AZN' => 'ᎠᏏᎵᏆᏌᏂ ᎠᏕᎳ',
+ 'BAM' => 'ᏉᏏᏂᎠ-ᎲᏤᎪᏫ ᎦᏁᏟᏴᏍᏔᏅ ᎠᏕᎳ',
+ 'BBD' => 'ᏆᏇᏙᏍ ᎠᏕᎳ',
+ 'BDT' => 'ᏆᏂᎦᎵᏕᏍ ᎠᏕᎳ',
+ 'BGN' => 'ᏊᎵᎨᎵᎠ ᎠᏕᎳ',
+ 'BHD' => 'ᏆᎭᎴᎢᏂ ᎠᏕᎳ',
+ 'BIF' => 'ᏋᎷᏂᏗ ᎠᏕᎳ',
+ 'BMD' => 'ᏆᏊᏓ ᎠᏕᎳ',
+ 'BND' => 'ᏊᎾᎢ ᎠᏕᎳ',
+ 'BOB' => 'ᏉᎵᏫᎠ ᎠᏕᎳ',
'BRL' => 'ᏆᏏᎵᎢ ᎠᏕᎳ',
- 'CAD' => 'ᎧᎾᏓ ᎠᏕᎳ',
+ 'BSD' => 'ᏆᎭᎹ ᎠᏕᎳ',
+ 'BTN' => 'ᏊᏔᏂ ᎠᏕᎳ',
+ 'BWP' => 'ᏆᏣᏩᎾ ᎠᏕᎳ',
+ 'BYN' => 'ᏇᎳᎷᏍ ᎠᏕᎳ',
+ 'BYR' => 'ᏇᎳᎷᏍ ᎠᏕᎳ (2000–2016)',
+ 'BZD' => 'ᏇᎵᏍ ᎠᏕᎳ',
+ 'CAD' => 'ᎨᎾᏓ ᎠᏕᎳ',
+ 'CDF' => 'ᎧᏂᎪ ᎠᏕᎳ',
+ 'CHF' => 'ᏍᏫᏏ ᎠᏕᎳ',
+ 'CLP' => 'ᏥᎵ ᎠᏕᎳ',
+ 'CNH' => 'ᏣᏂᏏ ᎠᏕᎳ (ᏓᎹᏳᏟᏗ)',
'CNY' => 'ᏓᎶᏂᎨ ᎠᏕᎳ',
- 'EUR' => 'ᏳᎳᏛ',
+ 'COP' => 'ᎪᎸᎻᏈᎢᎠ ᎠᏕᎳ',
+ 'CRC' => 'ᎪᏍᏓᎵᎧ ᎠᏕᎳ',
+ 'CUC' => 'ᎫᏆ ᎦᏁᏟᏴᏍᏔᏅ ᎠᏕᎳ',
+ 'CUP' => 'ᎫᏆ ᎠᏕᎳ',
+ 'CVE' => 'ᎢᎬᎾᏕᎾ ᎢᏤᏳᏍᏗ ᎠᏕᎳ',
+ 'CZK' => 'ᏤᎩ ᎠᏕᎳ',
+ 'DJF' => 'ᏥᏊᏗ ᎠᏕᎳ',
+ 'DKK' => 'ᏕᏂᏍ ᎠᏕᎳ',
+ 'DOP' => 'ᏙᎻᏂᎧᏂ ᎠᏕᎳ',
+ 'DZD' => 'ᎠᎵᏥᎵᏯ ᎠᏕᎳ',
+ 'EGP' => 'ᎢᏥᏈᎢ ᎠᏕᎳ',
+ 'ERN' => 'ᎡᎵᏟᏯ ᎠᏕᎳ',
+ 'ETB' => 'ᎢᏗᎣᏈᎠ ᎠᏕᎳ',
+ 'EUR' => 'ᏳᎳᏛ ᎠᏕᎳ',
+ 'FJD' => 'ᏫᎩ ᎠᏕᎳ',
+ 'FKP' => 'ᏩᎩᎤ ᏚᎦᏚᏛᎢ ᎠᏕᎳ',
'GBP' => 'ᎩᎵᏏᏲ ᎠᏕᎳ',
- 'INR' => 'ᎢᏅᏗᎾ ᎠᏕᎳ',
+ 'GEL' => 'ᏣᎠᏥᎢ ᎠᏕᎳ',
+ 'GHS' => 'ᎦᎠᎾ ᎠᏕᎳ',
+ 'GIP' => 'ᏥᏆᎵᏓ ᎠᏕᎳ',
+ 'GMD' => 'ᎦᎹᏈᎢᎠ ᎠᏕᎳ',
+ 'GNF' => 'ᎩᎢᏂ ᎠᏕᎳ',
+ 'GTQ' => 'ᏆᏖᎹᎳ ᎠᏕᎳ',
+ 'GYD' => 'ᎦᏯᎾ ᎠᏕᎳ',
+ 'HKD' => 'ᎰᏂᎩ ᎪᏂᎩ ᎠᏕᎳ',
+ 'HNL' => 'ᎭᏂᏚᎳᏍ ᎠᏕᎳ',
+ 'HRK' => 'ᎧᎶᎡᏏᎠ ᎠᏕᎳ',
+ 'HTG' => 'ᎮᏘ ᎠᏕᎳ',
+ 'HUF' => 'ᎲᏂᎦᎵ ᎠᏕᎳ',
+ 'IDR' => 'ᎢᏂᏙᏂᏍᏯ ᎠᏕᎳ',
+ 'ILS' => 'ᎢᏏᎵᏱ ᎢᏤ ᎠᏕᎳ',
+ 'INR' => 'ᎢᏂᏗᎢᎠ ᎠᏕᎳ',
+ 'IQD' => 'ᎢᎳᎩ ᎠᏕᎳ',
+ 'IRR' => 'ᎢᎴᏂ ᎠᏕᎳ',
+ 'ISK' => 'ᏧᏁᏍᏓᎸᎯ ᎠᏕᎳ',
+ 'JMD' => 'ᏣᎺᎢᎧ ᎠᏕᎳ',
+ 'JOD' => 'ᏦᏓᏂ ᎠᏕᎳ',
'JPY' => 'ᏣᏩᏂᏏ ᎠᏕᎳ',
+ 'KES' => 'ᎨᏂᏯ ᎠᏕᎳ',
+ 'KGS' => 'ᎩᎵᏣᎢᏍ ᎠᏕᎳ',
+ 'KHR' => 'ᎧᎹᏉᏗᎠᏂ ᎠᏕᎳ',
+ 'KMF' => 'ᎪᎼᎳᏍ ᎠᏕᎳ',
+ 'KPW' => 'ᏧᏴᏢ ᎪᎵᎠ ᎠᏕᎳ',
+ 'KRW' => 'ᏧᎦᎾᏮ ᎪᎵᎠ ᎠᏕᎳ',
+ 'KWD' => 'ᎫᏪᎢᏘ ᎠᏕᎳ',
+ 'KYD' => 'ᎨᎢᎹᏂ ᏚᎦᏚᏛᎢ ᎠᏕᎳ',
+ 'KZT' => 'ᎧᏎᎧᏍᏕᏂ ᎠᏕᎳ',
+ 'LAK' => 'ᎳᎣ ᎠᏕᎳ',
+ 'LBP' => 'ᎴᏆᎾᏂ ᎠᏕᎳ',
+ 'LKR' => 'ᏍᎵ ᎳᏂᎧ ᎠᏕᎳ',
+ 'LRD' => 'ᎳᏈᎵᏯ ᎠᏕᎳ',
+ 'LYD' => 'ᎵᏈᏯ ᎠᏕᎳ',
+ 'MAD' => 'ᎼᎶᎪ ᎠᏕᎳ',
+ 'MDL' => 'ᎹᎵᏙᏫᎠ ᎠᏕᎳ',
+ 'MGA' => 'ᎹᎳᎦᏏ ᎠᏕᎳ',
+ 'MKD' => 'ᎹᏎᏙᏂᎠ ᎠᏕᎳ',
+ 'MMK' => 'ᎹᏯᎹᎵ ᎠᏕᎳ',
+ 'MNT' => 'ᎹᏂᎪᎵᎠ ᎠᏕᎳ',
+ 'MOP' => 'ᎹᎧᎣ ᎠᏕᎳ',
+ 'MRO' => 'ᎹᏈᏔᏂᎠ ᎠᏕᎳ (1973–2017)',
+ 'MRU' => 'ᎹᏈᏔᏂᎠ ᎠᏕᎳ',
+ 'MUR' => 'ᎹᏘᎢᏯ ᎠᏕᎳ',
+ 'MVR' => 'ᎹᎵᏗᏫᏍ ᎠᏕᎳ',
+ 'MWK' => 'ᎹᎳᏫ ᎠᏕᎳ',
'MXN' => 'ᏍᏆᏂ ᎠᏕᎳ',
+ 'MYR' => 'ᎹᎴᏏᎢᎠ ᎠᏕᎳ',
+ 'MZN' => 'ᎼᏎᎻᏇᎩ ᎠᏕᎳ',
+ 'NAD' => 'ᎾᎻᏈᎢᏯ ᎠᏕᎳ',
+ 'NGN' => 'ᏂᏥᎵᏯ ᎠᏕᎳ',
+ 'NIO' => 'ᏂᎧᎳᏆ ᎠᏕᎳ',
+ 'NOK' => 'ᏃᏪ ᎠᏕᎳ',
+ 'NPR' => 'ᏁᏆᎵ ᎠᏕᎳ',
+ 'NZD' => 'ᎢᏤ ᏏᎢᎴᏂᏗ ᎠᏕᎳ',
+ 'OMR' => 'ᎣᎺᏂ ᎠᏕᎳ',
+ 'PAB' => 'ᏆᎾᎹ ᎠᏕᎳ',
+ 'PEN' => 'ᏇᎷ ᎠᏕᎳ',
+ 'PGK' => 'ᏆᏇ ᎢᏤ ᎩᎢᏂ ᎠᏕᎳ',
+ 'PHP' => 'ᎠᏂᏈᎵᎩᏃ ᎠᏕᎳ',
+ 'PKR' => 'ᏆᎩᏍᏖᏂ ᎠᏕᎳ',
+ 'PLN' => 'ᏉᎳᏂ ᎠᏕᎳ',
+ 'PYG' => 'ᏆᎳᏇᎢᏯ ᎠᏕᎳ',
+ 'QAR' => 'ᎧᏔᎵ ᎠᏕᎳ',
+ 'RON' => 'ᎶᎹᏂᏯ ᎠᏕᎳ',
+ 'RSD' => 'ᏒᏈᏯ ᎠᏕᎳ',
'RUB' => 'ᏲᏂᎢ ᎠᏕᎳ',
- 'USD' => 'ᎤᏃᏍᏗ',
-);
+ 'RWF' => 'ᎶᏩᏂᏓ ᎠᏕᎳ',
+ 'SAR' => 'ᏌᎤᏗ ᎠᏕᎳ',
+ 'SBD' => 'ᏐᎶᎹᏂ ᏚᎦᏚᏛᎢ ᎠᏕᎳ',
+ 'SCR' => 'ᏏᎡᏥᎵᏍ ᎠᏕᎳ',
+ 'SDG' => 'ᏑᏕᏂ ᎠᏕᎳ',
+ 'SEK' => 'ᏍᏫᏕᏂ ᎠᏕᎳ',
+ 'SGD' => 'ᏏᏂᎦᏉᎵ ᎠᏕᎳ',
+ 'SHP' => 'ᎤᏓᏅᏘ ᎮᎵᎾ ᎠᏕᎳ',
+ 'SLL' => 'ᏏᎡᎳᎴᎣᏂ ᎠᏕᎳ',
+ 'SOS' => 'ᏐᎹᎵ ᎠᏕᎳ',
+ 'SRD' => 'ᏒᎵᎾᎻ ᎠᏕᎳ',
+ 'SSP' => 'ᏧᎦᎾᏮ ᏑᏕᏂ ᎠᏕᎳ',
+ 'STD' => 'ᏌᎣᏙᎺ ᎠᎴ ᏈᏂᏏᏇ ᎠᏕᎳ (1977–2017)',
+ 'STN' => 'ᏌᎣᏙᎺ & ᏈᏂᏏᏇ ᎠᏕᎳ',
+ 'SYP' => 'ᏏᎵᎠ ᎠᏕᎳ',
+ 'SZL' => 'ᏍᏩᏏ ᎠᏕᎳ',
+ 'THB' => 'ᏔᏯᎴᏂ ᎠᏕᎳ',
+ 'TJS' => 'ᏔᏥᎩᏍᏕᏂ ᎠᏕᎳ',
+ 'TMT' => 'ᏛᎵᎩᎺᏂᏍᏔᏂ ᎠᏕᎳ',
+ 'TND' => 'ᏚᏂᏏᏍᎠ ᎠᏕᎳ',
+ 'TOP' => 'ᏔᏂᎪ ᎠᏕᎳ',
+ 'TRY' => 'ᎬᏃ ᎠᏕᎳ',
+ 'TTD' => 'ᏟᏂᏕᏗ & ᏙᏆᎪ ᎠᏕᎳ',
+ 'TWD' => 'ᎢᏤ ᏔᎢᏩᏂ ᎠᏕᎳ',
+ 'TZS' => 'ᏖᏂᏏᏂᏯ ᎠᏕᎳ',
+ 'UAH' => 'ᏳᎧᎴᏂ ᎠᏕᎳ',
+ 'UGX' => 'ᏳᎦᏂᏓ ᎠᏕᎳ',
+ 'USD' => 'US ᎠᏕᎳ',
+ 'UYU' => 'ᏳᎷᏇ ᎠᏕᎳ',
+ 'UZS' => 'ᎤᏍᏇᎩᏍᏖᏂ ᎠᏕᎳ',
+ 'VEF' => 'ᏪᏁᏑᏪ ᎠᏕᎳ (2008–2018)',
+ 'VES' => 'ᏪᏁᏑᏪ ᎠᏕᎳ',
+ 'VND' => 'ᏫᎡᏘᎾᎻᏍ ᎠᏕᎳ',
+ 'VUV' => 'ᏩᏂᎤᏩᏚ ᎠᏕᎳ',
+ 'WST' => 'ᏌᎼᎠ ᎠᏕᎳ',
+ 'XAF' => 'ᎠᏰᏟ ᎬᎿᎨᏍᏛ CFA ᎠᏕᎳ',
+ 'XCD' => 'ᏗᎧᎸᎬ ᎨᏆᏙᏯ ᎠᏕᎳ',
+ 'XOF' => 'ᏭᏕᎵᎬ ᎬᎿᎨᏍᏛ CFA ᎠᏕᎳ',
+ 'XPF' => 'CFP ᎠᏕᎳ',
+ 'XXX' => 'ᏄᏬᎵᏍᏛᎾ ᎠᏕᎳ',
+ 'YER' => 'ᏰᎺᏂ ᎠᏕᎳ',
+ 'ZAR' => 'ᏧᎦᎾᏮ ᎬᎿᎨᏍᏛ ᎠᏕᎳ',
+ 'ZMW' => 'ᏏᎻᏆᏇ ᎠᏕᎳ',
+];
-$currencySymbols = array(
+$currencySymbols = [
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => 'A$',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => 'R$',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYN' => 'BYN',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CA$',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNH' => 'CNH',
+ 'CNY' => 'CN¥',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GBP' => '£',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => 'JP¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MRU' => 'MRU',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MX$',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZ$',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'STN' => 'STN',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => 'THB',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
'USD' => '$',
-);
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VES' => 'VES',
+ 'VND' => '₫',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'EC$',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+];
-$countryNames = array(
+$countryNames = [
+ 'AC' => 'ᎤᎵᏌᎳᏓᏅ ᎤᎦᏚᏛᎢ',
'AD' => 'ᎠᏂᏙᎳ',
'AE' => 'ᏌᏊ ᎢᏳᎾᎵᏍᏔᏅ ᎡᎳᏈ ᎢᎹᎵᏘᏏ',
'AF' => 'ᎠᏫᎨᏂᏍᏖᏂ',
- 'AG' => 'ᎤᏪᏘ ᎠᎴ ᏆᏊᏓ',
+ 'AG' => 'ᎤᏪᏘ & ᏆᏊᏓ',
'AI' => 'ᎠᏂᎩᎳ',
'AL' => 'ᎠᎵᏇᏂᏯ',
'AM' => 'ᎠᎵᎻᏂᎠ',
@@ -51,9 +735,9 @@ $countryNames = array(
'AT' => 'ᎠᏍᏟᏯ',
'AU' => 'ᎡᎳᏗᏜ',
'AW' => 'ᎠᎷᏆ',
- 'AX' => 'ᎣᎴᏅᏓ ᏚᎦᏚᏛ',
- 'AZ' => 'ᎠᏏᎵᏆᏌᏂ',
- 'BA' => 'ᏉᏏᏂᎠ ᎠᎴ ᎲᏤᎪᏫ',
+ 'AX' => 'ᎣᎴᏅᏓ ᏚᎦᏚᏛᎢ',
+ 'AZ' => 'ᎠᏎᏆᏣᏂ',
+ 'BA' => 'ᏉᏏᏂᎠ & ᎲᏤᎪᏫ',
'BB' => 'ᏆᏇᏙᏍ',
'BD' => 'ᏆᏂᎦᎵᏕᏍ',
'BE' => 'ᏇᎵᏥᎥᎻ',
@@ -62,55 +746,63 @@ $countryNames = array(
'BH' => 'ᏆᎭᎴᎢᏂ',
'BI' => 'ᏋᎷᏂᏗ',
'BJ' => 'ᏆᏂᎢᏂ',
- 'BL' => 'ᎠᏥᎸᏉᏗ ᏆᏕᎳᎻ',
+ 'BL' => 'ᎤᏓᏅᏘ ᏆᏕᎳᎻ',
'BM' => 'ᏆᏊᏓ',
'BN' => 'ᏊᎾᎢ',
'BO' => 'ᏉᎵᏫᎠ',
- 'BR' => 'ᏆᏏᎵᎢ',
+ 'BQ' => 'ᎧᎵᏈᎢᏂᎯ ᎾᏍᎩᏁᏛᎳᏂ',
+ 'BR' => 'ᏆᏏᎵ',
'BS' => 'ᎾᏍᎩ ᏆᎭᎹᏍ',
'BT' => 'ᏊᏔᏂ',
- 'BV' => 'ᏊᏪ ᎤᎦᏚᏛ',
+ 'BV' => 'ᏊᏪ ᎤᎦᏚᏛᎢ',
'BW' => 'ᏆᏣᏩᎾ',
'BY' => 'ᏇᎳᎷᏍ',
'BZ' => 'ᏇᎵᏍ',
'CA' => 'ᎨᎾᏓ',
- 'CC' => 'ᎪᎪᏍ (ᎩᎵᏂ) ᏚᎦᏚᏛ',
- 'CD' => 'ᎧᏂᎪ',
+ 'CC' => 'ᎪᎪᏍ (ᎩᎵᏂ) ᏚᎦᏚᏛᎢ',
+ 'CD' => 'ᎧᏂᎪ - ᎨᏂᏝᏌ',
'CF' => 'ᎬᎿᎨᏍᏛ ᎠᏰᏟ ᏍᎦᏚᎩ',
- 'CG' => 'ᎧᏂᎪ (ᏍᎦᏚᎩ)',
+ 'CG' => 'ᎧᏂᎪ - ᏆᏌᏩᎵ',
'CH' => 'ᏍᏫᏍ',
'CI' => 'ᎢᏬᎵ ᎾᎿ ᎠᎹᏳᎶᏗ',
- 'CK' => 'ᎠᏓᏍᏓᏴᎲᏍᎩ ᎤᎦᏚᏛ',
+ 'CK' => 'ᎠᏓᏍᏓᏴᎲᏍᎩ ᏚᎦᏚᏛᎢ',
'CL' => 'ᏥᎵ',
'CM' => 'ᎧᎹᎷᏂ',
'CN' => 'ᏓᎶᏂᎨᏍᏛ',
'CO' => 'ᎪᎸᎻᏈᎢᎠ',
+ 'CP' => 'ᎦᏂᏴᏔᏅᎣᏓᎸ ᎤᎦᏚᏛᎢ',
'CR' => 'ᎪᏍᏓ ᎵᎧ',
'CU' => 'ᎫᏆ',
'CV' => 'ᎢᎬᎾᏕᎾ ᎢᏤᏳᏍᏗ',
- 'CW' => 'ᏂᎦᏓ ᎤᏂᎲ ᎾᎿ ᎫᎳᎨᎣ',
- 'CX' => 'ᏓᏂᏍᏓᏲᎯᎲ ᎤᎦᏚᏛ',
+ 'CW' => 'ᎫᎳᎨᎣ',
+ 'CX' => 'ᏓᏂᏍᏓᏲᎯᎲ ᎤᎦᏚᏛᎢ',
'CY' => 'ᏌᎢᏆᏍ',
- 'CZ' => 'ᏤᎩ ᏍᎦᏚᎩ',
+ 'CZ' => 'ᏤᎩᎠ',
'DE' => 'ᎠᏂᏛᏥ',
+ 'DG' => 'ᏗᏰᎪ ᎦᏏᏯ',
'DJ' => 'ᏥᏊᏗ',
'DK' => 'ᏗᏂᎹᎦ',
'DM' => 'ᏙᎻᏂᎧ',
'DO' => 'ᏙᎻᏂᎧᏂ ᏍᎦᏚᎩ',
'DZ' => 'ᎠᎵᏥᎵᏯ',
+ 'EA' => 'ᏑᏔ ᎠᎴ ᎺᎵᏯ',
'EC' => 'ᎡᏆᏙᎵ',
'EE' => 'ᎡᏍᏙᏂᏯ',
'EG' => 'ᎢᏥᏈᎢ',
+ 'EH' => 'ᏭᏕᎵᎬ ᏗᏜ ᏌᎮᎳ',
'ER' => 'ᎡᎵᏟᏯ',
'ES' => 'ᎠᏂᏍᏆᏂᏱ',
+ 'ET' => 'ᎢᏗᎣᏈᎠ',
+ 'EU' => 'ᏳᎳᏛ ᎠᏂᎤᎾᏓᏡᎬ',
+ 'EZ' => 'ᏳᎶᎠᏍᏓᏅᏅ',
'FI' => 'ᏫᏂᎦᏙᎯ',
'FJ' => 'ᏫᏥ',
- 'FK' => 'ᏩᎩ ᎤᎦᏚᏛ',
- 'FM' => 'ᎠᏰᏟ ᏧᎾᎵᎪᎯ ᎾᎿ ᎹᎢᏉᏂᏏᏯ',
- 'FO' => 'ᏪᎶ ᏚᎦᏚᏛ',
+ 'FK' => 'ᏩᎩ ᏚᎦᏚᏛᎢ',
+ 'FM' => 'ᎹᎢᏉᏂᏏᏯ',
+ 'FO' => 'ᏪᎶ ᏚᎦᏚᏛᎢ',
'FR' => 'ᎦᎸᏥᏱ',
'GA' => 'ᎦᏉᏂ',
- 'GB' => 'ᎩᎵᏏᏲ',
+ 'GB' => 'UK',
'GD' => 'ᏋᎾᏓ',
'GE' => 'ᏣᎠᏥᎢ',
'GF' => 'ᎠᏂᎦᎸᏥ ᎩᎠ',
@@ -119,30 +811,32 @@ $countryNames = array(
'GI' => 'ᏥᏆᎵᏓ',
'GL' => 'ᎢᏤᏍᏛᏱ',
'GM' => 'ᎦᎹᏈᎢᎠ',
- 'GN' => 'ᎫᏇ',
+ 'GN' => 'ᎩᎢᏂ',
'GP' => 'ᏩᏓᎷᏇ',
'GQ' => 'ᎡᏆᏙᎵᎠᎵ ᎩᎢᏂ',
'GR' => 'ᎪᎢᎯ',
- 'GS' => 'ᏧᎦᏃᏮ ᏣᏥᏱ ᎠᎴ ᎾᏍᎩ ᏧᎦᏃᏮ ᎠᏍᏛᎭᏟ ᏚᎦᏚᏛ',
+ 'GS' => 'ᏧᎦᏃᏮ ᏣᎠᏥᎢ ᎠᎴ ᎾᏍᎩ ᏧᎦᏃᏮ ᎠᏍᏛᎭᏟ ᏚᎦᏚᏛᎢ',
'GT' => 'ᏩᏔᎹᎳ',
'GU' => 'ᏆᎻ',
- 'GW' => 'ᎫᏇ-ᏈᏌᎤᏫ',
+ 'GW' => 'ᎩᎢᏂ-ᏈᏌᎤᏫ',
'GY' => 'ᎦᏯᎾ',
'HK' => 'ᎰᏂᎩ ᎪᏂᎩ',
- 'HM' => 'ᎲᏗ ᎤᎦᏚᏛ ᎠᎴ ᎺᎩᏓᎾᎵᏗ ᏚᎦᏚᏛ',
+ 'HM' => 'ᎲᏗ ᎤᎦᏚᏛᎢ ᎠᎴ ᎺᎩᏓᎾᎵᏗ ᏚᎦᏚᏛᎢ',
+ 'HN' => 'ᎭᏂᏚᎳᏍ',
'HR' => 'ᎧᎶᎡᏏᎠ',
'HT' => 'ᎮᎢᏘ',
'HU' => 'ᎲᏂᎦᎵ',
+ 'IC' => 'ᏥᏍᏆ ᏚᎦᏚᏛᎢ',
'ID' => 'ᎢᏂᏙᏂᏍᏯ',
- 'IE' => 'ᎠᎢᎴᏂᏗ',
+ 'IE' => 'ᎠᏲᎳᏂ',
'IL' => 'ᎢᏏᎵᏱ',
- 'IM' => 'ᎤᏍᏗ ᎤᎦᏚᏛ ᎾᎿ ᎠᏍᎦᏯ',
+ 'IM' => 'ᎤᏍᏗ ᎤᎦᏚᏛᎢ ᎾᎿ ᎠᏍᎦᏯ',
'IN' => 'ᎢᏅᏗᎾ',
'IO' => 'ᏈᏗᏏ ᏴᏫᏯ ᎠᎺᏉ ᎢᎬᎾᏕᏅ',
'IQ' => 'ᎢᎳᎩ',
'IR' => 'ᎢᎴᏂ',
'IS' => 'ᏧᏁᏍᏓᎸᎯ',
- 'IT' => 'ᏲᎶ',
+ 'IT' => 'ᎢᏔᎵ',
'JE' => 'ᏨᎵᏏ',
'JM' => 'ᏣᎺᎢᎧ',
'JO' => 'ᏦᏓᏂ',
@@ -152,7 +846,7 @@ $countryNames = array(
'KH' => 'ᎧᎹᏉᏗᎠᏂ',
'KI' => 'ᎧᎵᏆᏘ',
'KM' => 'ᎪᎼᎳᏍ',
- 'KN' => 'ᎠᏰᏟ ᎾᎿ ᎨᏥᎸᏉᏗ ᎠᏂᏪᏌ ᎠᎴ ᎠᏂᏁᏫᏍ',
+ 'KN' => 'ᎤᏓᏅᏘ ᎨᏘᏏ ᎠᎴ ᏁᏪᏏ',
'KP' => 'ᏧᏴᏢ ᎪᎵᎠ',
'KR' => 'ᏧᎦᏃᏮ ᎪᎵᎠ',
'KW' => 'ᎫᏪᎢᏘ',
@@ -160,6 +854,7 @@ $countryNames = array(
'KZ' => 'ᎧᏎᎧᏍᏕᏂ',
'LA' => 'ᎴᎣᏍ',
'LB' => 'ᎴᏆᎾᏂ',
+ 'LC' => 'ᎤᏓᏅᏘ ᎷᏏᏯ',
'LI' => 'ᎵᎦᏗᏂᏍᏓᏂ',
'LK' => 'ᏍᎵ ᎳᏂᎧ',
'LR' => 'ᎳᏈᎵᏯ',
@@ -172,15 +867,15 @@ $countryNames = array(
'MC' => 'ᎹᎾᎪ',
'MD' => 'ᎹᎵᏙᏫᎠ',
'ME' => 'ᎼᏂᏔᏁᎦᎶ',
- 'MF' => 'ᎠᏥᎸᏉᏗ ᏡᏡ',
+ 'MF' => 'ᎤᏓᏅᏘ ᏡᏡ',
'MG' => 'ᎹᏓᎦᏍᎧᎵ',
- 'MH' => 'ᎹᏌᎵ ᏚᎪᏚᏛ',
- 'MK' => 'ᎹᏏᏙᏂᎢᎠ',
+ 'MH' => 'ᎹᏌᎵ ᏚᎦᏚᏛᎢ',
+ 'MK' => 'ᎹᏎᏙᏂᏯ',
'ML' => 'ᎹᎵ',
- 'MM' => 'ᎹᏯᎹᎵ',
+ 'MM' => 'ᎹᏯᎹᎵ (ᏇᎵᎹ)',
'MN' => 'ᎹᏂᎪᎵᎠ',
'MO' => 'ᎹᎧᎣ',
- 'MP' => 'ᎾᏍᎩ ᎤᏴᏢ ᏗᏜ ᎹᎵᎠᎾ ᏚᎦᏚᏛ',
+ 'MP' => 'ᏧᏴᏢ ᏗᏜ ᎹᎵᎠᎾ ᏚᎦᏚᏛᎢ',
'MQ' => 'ᎹᏘᏂᎨ',
'MR' => 'ᎹᏘᎢᏯ',
'MS' => 'ᎹᏂᏘᏌᎳᏗ',
@@ -188,12 +883,13 @@ $countryNames = array(
'MU' => 'ᎼᎵᏏᎥᏍ',
'MV' => 'ᎹᎵᏗᏫᏍ',
'MW' => 'ᎹᎳᏫ',
- 'MX' => 'ᏍᏆᏂᏱ',
+ 'MX' => 'ᎠᏂᏍᏆᏂ',
'MY' => 'ᎹᎴᏏᎢᎠ',
'MZ' => 'ᎼᏎᎻᏇᎩ',
'NA' => 'ᎾᎻᏈᎢᏯ',
'NC' => 'ᎢᏤ ᎧᎵᏙᏂᎠᏂ',
- 'NF' => 'ᏃᎵᏬᎵᎩ ᎤᎦᏚᏛ',
+ 'NE' => 'ᎾᎢᏨ',
+ 'NF' => 'ᏃᎵᏬᎵᎩ ᎤᎦᏚᏛᎢ',
'NG' => 'ᏂᏥᎵᏯ',
'NI' => 'ᏂᎧᎳᏆ',
'NL' => 'ᏁᏛᎳᏂ',
@@ -205,49 +901,288 @@ $countryNames = array(
'OM' => 'ᎣᎺᏂ',
'PA' => 'ᏆᎾᎹ',
'PE' => 'ᏇᎷ',
- 'PF' => 'ᎠᏂᎦᎸᏣ ᏆᎵᏂᏏᎠ',
- 'PG' => 'ᏆᏇ ᎢᏤ ᎩᏂ',
+ 'PF' => 'ᎠᏂᎦᎸᏥ ᏆᎵᏂᏏᎠ',
+ 'PG' => 'ᏆᏇ ᎢᏤ ᎩᎢᏂ',
'PH' => 'ᎠᏂᏈᎵᎩᏃ',
'PK' => 'ᏆᎩᏍᏖᏂ',
'PL' => 'ᏉᎳᏂ',
- 'PM' => 'ᏎᏂᏘ ᏈᏓ ᎠᎴ ᎻᏇᎶᏂ',
- 'PN' => 'ᏈᎧᎵᏂ ᎤᎦᏚᏛᎢ',
+ 'PM' => 'ᎤᏓᏅᏘ ᏈᏰ ᎠᎴ ᎻᏇᎶᏂ',
+ 'PN' => 'ᏈᎧᎵᏂ ᏚᎦᏚᏛᎢ',
'PR' => 'ᏇᎡᏙ ᎵᎢᎪ',
- 'PS' => 'ᏆᎴᏍᏗᏂᎠᏂ ᏄᎬᏫᏳᏌᏕᎩ',
+ 'PS' => 'ᏆᎴᏍᏗᏂ',
'PT' => 'ᏉᏥᎦᎳ',
'PW' => 'ᏆᎴᎠᏫ',
'PY' => 'ᏆᎳᏇᎢᏯ',
'QA' => 'ᎧᏔᎵ',
+ 'QO' => 'ᎠᏍᏛ ᎣᏏᏰᏂᎠ',
+ 'RE' => 'ᎴᏳᏂᎠᏂ',
'RO' => 'ᎶᎹᏂᏯ',
'RS' => 'ᏒᏈᏯ',
'RU' => 'ᏲᏂᎢ',
'RW' => 'ᎶᏩᏂᏓ',
'SA' => 'ᏌᎤᏗ ᎡᎴᏈᎠ',
- 'SB' => 'ᏐᎶᎹᏂ ᏚᎦᏚᏛ',
+ 'SB' => 'ᏐᎶᎹᏂ ᏚᎦᏚᏛᎢ',
'SC' => 'ᏏᎡᏥᎵᏍ',
'SD' => 'ᏑᏕᏂ',
'SE' => 'ᏍᏫᏕᏂ',
'SG' => 'ᏏᏂᎦᏉᎵ',
- 'SH' => 'ᎠᏥᎸᏉᏗ ᎮᎵᎾ',
+ 'SH' => 'ᎤᏓᏅᏘ ᎮᎵᎾ',
'SI' => 'ᏍᎶᏫᏂᎠ',
+ 'SJ' => 'ᏍᏩᎵᏆᎵᏗ ᎠᎴ ᏤᏂ ᎹᏰᏂ',
'SK' => 'ᏍᎶᏩᎩᎠ',
'SL' => 'ᏏᎡᎳ ᎴᎣᏂ',
- 'US' => 'ᎠᎹᏰᏟ',
-);
+ 'SM' => 'ᎤᏓᏅᏘ ᎹᎵᎢᏃ',
+ 'SN' => 'ᏏᏂᎦᎵ',
+ 'SO' => 'ᏐᎹᎵ',
+ 'SR' => 'ᏒᎵᎾᎻ',
+ 'SS' => 'ᏧᎦᎾᏮ ᏑᏕᏂ',
+ 'ST' => 'ᏌᎣ ᏙᎺ ᎠᎴ ᏈᏂᏏᏇ',
+ 'SV' => 'ᎡᎵᏌᎵᏆᏙᎵ',
+ 'SX' => 'ᏏᏂᏘ ᎹᏘᏂ',
+ 'SY' => 'ᏏᎵᎠ',
+ 'SZ' => 'ᎠᏂᏍᏩᏏᎢ',
+ 'TA' => 'ᏟᏍᏛᏂ Ꮣ ᎫᎾᎭ',
+ 'TC' => 'ᎠᏂᏛᎵᎩ ᎠᎴ ᎨᎢᎪ ᏚᎦᏚᏛᎢ',
+ 'TD' => 'ᏣᏗ',
+ 'TF' => 'ᎠᏂᎦᎸᏥ ᏧᎦᎾᏮ ᎦᏙᎯ ᎤᎵᏍᏛᎢ',
+ 'TG' => 'ᏙᎪ',
+ 'TH' => 'ᏔᏯᎴᏂ',
+ 'TJ' => 'ᏔᏥᎩᏍᏕᏂ',
+ 'TK' => 'ᏙᎨᎳᏭ',
+ 'TL' => 'ᏘᎼᎵ-ᎴᏍᏖ',
+ 'TM' => 'ᏛᎵᎩᎺᏂᏍᏔᏂ',
+ 'TN' => 'ᏚᏂᏏᏍᎠ',
+ 'TO' => 'ᏙᎾᎦ',
+ 'TR' => 'ᎬᏃ',
+ 'TT' => 'ᏟᏂᏕᏗ ᎠᎴ ᏙᏆᎪ',
+ 'TV' => 'ᏚᏩᎷ',
+ 'TW' => 'ᏔᎢᏩᏂ',
+ 'TZ' => 'ᏖᏂᏏᏂᏯ',
+ 'UA' => 'ᏳᎧᎴᏂ',
+ 'UG' => 'ᏳᎦᏂᏓ',
+ 'UM' => 'U.S. ᎠᏍᏛ ᏚᎦᏚᏛᎢ',
+ 'UN' => 'ᏌᏊ ᎢᏳᎾᎵᏍᏔᏅ ᎠᏰᎵ ᏚᎾᏙᏢᏒ',
+ 'US' => 'US',
+ 'UY' => 'ᏳᎷᏇ',
+ 'UZ' => 'ᎤᏍᏇᎩᏍᏖᏂ',
+ 'VA' => 'ᎠᏥᎳᏁᏠ ᎦᏚᎲ',
+ 'VC' => 'ᎤᏓᏅᏘ ᏫᏂᏏᏂᏗ ᎠᎴ ᎾᏍᎩ ᏇᎾᏗᏁᏍ',
+ 'VE' => 'ᏪᏁᏑᏪᎳ',
+ 'VG' => 'ᏈᏗᏍ ᎠᏒᏂᎸ ᏂᎨᏒᎾ ᏚᎦᏚᏛᎢ',
+ 'VI' => 'U.S. ᎠᏒᏂᎸ ᏂᎨᏒᎾ ᏚᎦᏚᏛᎢ',
+ 'VN' => 'ᏫᎡᏘᎾᎻ',
+ 'VU' => 'ᏩᏂᎤᏩᏚ',
+ 'WF' => 'ᏩᎵᏍ ᎠᎴ ᏊᏚᎾ',
+ 'WS' => 'ᏌᎼᎠ',
+ 'XK' => 'ᎪᏐᏉ',
+ 'YE' => 'ᏰᎺᏂ',
+ 'YT' => 'ᎺᏯᏖ',
+ 'ZA' => 'ᏧᎦᎾᏮ ᎬᎿᎨᏍᏛ',
+ 'ZM' => 'ᏌᎻᏈᏯ',
+ 'ZW' => 'ᏏᎻᏆᏇ',
+];
-$timeUnits = array(
- 'day-one' => '{0} ᏏᎦ',
- 'day-other' => '{0} ᏧᏒᎯᏓ',
- 'hour-one' => '{0} ᏑᏣᎶᏓ',
- 'hour-other' => '{0} ᎢᏧᏣᎶᏓ',
+$timeUnits = [
+ 'century-one' => '{0} ᏍᎪᎯᏧᏈ ᏧᏕᏘᏴᏓ',
+ 'century-other' => '{0} ᏍᎪᎯᏧᏈ ᏧᏕᏘᏴᏓ',
+ 'day-future-one' => 'ᎾᎿ {0} ᎢᎦ',
+ 'day-future-other' => 'ᎾᎿ {0} ᎯᎸᏍᎩ ᏧᏒᎯᏛ',
+ 'day-narrow-future-one' => 'ᎾᎿ {0} ᎢᎦ',
+ 'day-narrow-future-other' => 'ᎾᎿ {0} ᎯᎸᏍᎩ ᏧᏒᎯᏛ',
+ 'day-narrow-past-one' => '{0} ᎢᎦ ᏥᎨᏒ',
+ 'day-narrow-past-other' => '{0} ᎯᎸᏍᎩ ᏧᏒᎯᏛ ᏥᎨᏒ',
+ 'day-one' => '{0} ᎢᎦ',
+ 'day-other' => '{0} ᎯᎸᏍᎩ ᏧᏒᎯᏓ',
+ 'day-past-one' => '{0} ᎢᎦ ᏥᎨᏒ',
+ 'day-past-other' => '{0} ᎯᎸᏍᎩ ᏧᏒᎯᏛ ᏥᎨᏒ',
+ 'day-short-future-one' => 'ᎾᎿ {0} ᎢᎦ',
+ 'day-short-future-other' => 'ᎾᎿ {0} ᎯᎸᏍᎩ ᏧᏒᎯᏛ',
+ 'day-short-past-one' => '{0} ᎢᎦ ᏥᎨᏒ',
+ 'day-short-past-other' => '{0} ᎯᎸᏍᎩ ᏧᏒᎯᏛ ᏥᎨᏒ',
+ 'fri-future-one' => 'ᎾᎿ {0} ᏧᎾᎩᎶᏍᏗ',
+ 'fri-future-other' => 'ᎾᎿ {0} ᏧᎾᎩᎶᏍᏗ',
+ 'fri-narrow-future-one' => 'ᎾᎿ {0} Ꮷ',
+ 'fri-narrow-future-other' => 'ᎾᎿ {0} Ꮷ',
+ 'fri-narrow-past-one' => '{0} Ꮷ ᏥᎨᏒ',
+ 'fri-narrow-past-other' => '{0} Ꮷ ᏥᎨᏒ',
+ 'fri-past-one' => '{0} ᏧᎾᎩᎶᏍᏗ ᏥᎨᏒ',
+ 'fri-past-other' => '{0} ᏧᎾᎩᎶᏍᏗ ᏥᎨᏒ',
+ 'fri-short-future-one' => 'ᎾᎿ {0} ᏧᎾᎩ.',
+ 'fri-short-future-other' => 'ᎾᎿ {0} ᏧᎾᎩ.',
+ 'fri-short-past-one' => '{0} ᏧᎾᎩ. ᏥᎨᏒ',
+ 'fri-short-past-other' => '{0} ᏧᎾᎩ. ᏥᎨᏒ',
+ 'hour-future-one' => 'ᎾᎿ {0} ᏑᏟᎶᏓ',
+ 'hour-future-other' => 'ᎾᎿ {0} ᎢᏳᏟᎶᏓ',
+ 'hour-narrow-future-one' => 'ᎾᎿ {0} ᏑᏟ.',
+ 'hour-narrow-future-other' => 'ᎾᎿ {0} ᏑᏟ.',
+ 'hour-narrow-past-one' => '{0} ᏑᏟ. ᏥᎨᏒ',
+ 'hour-narrow-past-other' => '{0} ᏑᏟ. ᏥᎨᏒ',
+ 'hour-one' => '{0} ᏑᏟᎶᏓ',
+ 'hour-other' => '{0} ᎢᏳᏟᎶᏓ',
+ 'hour-past-one' => '{0} ᏑᏟᎶᏓ ᏥᎨᏒ',
+ 'hour-past-other' => '{0} ᎢᏳᏟᎶᏓ ᏥᎨᏒ',
+ 'hour-short-future-one' => 'ᎾᎿ {0} ᏑᏟ.',
+ 'hour-short-future-other' => 'ᎾᎿ {0} ᏑᏟ.',
+ 'hour-short-past-one' => '{0} ᏑᏟ. ᏥᎨᏒ',
+ 'hour-short-past-other' => '{0} ᏑᏟ. ᏥᎨᏒ',
+ 'microsecond-one' => '{0} ᏌᏉ ᎢᏳᏆᏗᏅᏛ ᎠᏎᏢ',
+ 'microsecond-other' => '{0} ᏌᏉ ᎢᏳᏆᏗᏅᏛ ᏗᏎᏢ',
+ 'millisecond-one' => '{0} ᏌᏉ ᎢᏯᎦᎨᎵᏁᎢ ᎠᏎᏢ',
+ 'millisecond-other' => '{0} ᏌᏉ ᎢᏯᎦᎨᎵᏁᎢ ᏗᏎᏢ',
+ 'minute-future-one' => 'ᎾᎿ {0} ᎢᏯᏔᏬᏍᏔᏅ',
+ 'minute-future-other' => 'ᎾᎿ {0} ᎢᏯᏔᏬᏍᏔᏅ',
+ 'minute-narrow-future-one' => 'ᎾᎿ {0} ᎢᏯᏔ.',
+ 'minute-narrow-future-other' => 'ᎾᎿ {0} ᎢᏯᏔ.',
+ 'minute-narrow-past-one' => '{0} ᎢᏯᏔ. ᏥᎨᏒ',
+ 'minute-narrow-past-other' => '{0} ᎢᏯᏔ. ᏥᎨᏒ',
'minute-one' => '{0} ᎢᏯᏔᏬᏍᏔᏅ',
- 'minute-other' => '{0} ᎢᏧᏔᏬᏍᏔᏅ',
- 'month-one' => '{0} ᏏᏅᏓ',
- 'month-other' => '{0} ᎢᏯᏅᏓ',
+ 'minute-other' => '{0} ᎢᏯᏔᏬᏍᏔᏅ',
+ 'minute-past-one' => '{0} ᎢᏯᏔᏬᏍᏔᏅ ᏥᎨᏒ',
+ 'minute-past-other' => '{0} ᎢᏯᏔᏬᏍᏔᏅ ᏥᎨᏒ',
+ 'minute-short-future-one' => 'ᎾᎿ {0} ᎢᏯᏔ.',
+ 'minute-short-future-other' => 'ᎾᎿ {0} ᎢᏯᏔ.',
+ 'minute-short-past-one' => '{0} ᎢᏯᏔ. ᏥᎨᏒ',
+ 'minute-short-past-other' => '{0} ᎢᏯᏔ. ᏥᎨᏒ',
+ 'mon-future-one' => 'ᎾᎿ {0} ᎤᎾᏙᏓᏉᏅᎯ',
+ 'mon-future-other' => 'ᎾᎿ {0} ᎤᎾᏙᏓᏉᏅᎯ',
+ 'mon-narrow-future-one' => 'ᎾᎿ {0} Ꮙ',
+ 'mon-narrow-future-other' => 'ᎾᎿ {0} Ꮙ',
+ 'mon-narrow-past-one' => '{0} Ꮙ ᏥᎨᏒ',
+ 'mon-narrow-past-other' => '{0} Ꮙ ᏥᎨᏒ',
+ 'mon-past-one' => '{0} ᎤᎾᏙᏓᏉᏅᎯ ᏥᎨᏒ',
+ 'mon-past-other' => '{0} ᎤᎾᏙᏓᏉᏅᎯ ᏥᎨᏒ',
+ 'mon-short-future-one' => 'ᎾᎿ {0} ᏉᏅᎯ.',
+ 'mon-short-future-other' => 'ᎾᎿ {0} ᏉᏅᎯ.',
+ 'mon-short-past-one' => '{0} ᏉᏅᎯ. ᏥᎨᏒ',
+ 'mon-short-past-other' => '{0} ᏉᏅᎯ. ᏥᎨᏒ',
+ 'month-future-one' => 'ᎾᎿ {0} ᎧᎸᎢ',
+ 'month-future-other' => 'ᎾᎿ {0} ᏗᎧᎸᎢ',
+ 'month-narrow-future-one' => 'ᎾᎿ {0} ᎧᎸ.',
+ 'month-narrow-future-other' => 'ᎾᎿ {0} ᎧᎸ.',
+ 'month-narrow-past-one' => '{0} ᎧᎸ. ᏥᎨᏒ',
+ 'month-narrow-past-other' => '{0} ᎧᎸ. ᏥᎨᏒ',
+ 'month-one' => '{0} ᎧᎸᎢ',
+ 'month-other' => '{0} ᏗᎧᎸᎢ',
+ 'month-past-one' => '{0} ᎧᎸᎢ ᏥᎨᏒ',
+ 'month-past-other' => '{0} ᏗᎧᎸᎢ ᏥᎨᏒ',
+ 'month-short-future-one' => 'ᎾᎿ {0} ᎧᎸ.',
+ 'month-short-future-other' => 'ᎾᎿ {0} ᎧᎸ.',
+ 'month-short-past-one' => '{0} ᎧᎸ. ᏥᎨᏒ',
+ 'month-short-past-other' => '{0} ᎧᎸ. ᏥᎨᏒ',
+ 'nanosecond-one' => '{0} ᎾᏃᎠᏎᏢ',
+ 'nanosecond-other' => '{0} ᎾᏃᏗᏎᏢ',
+ 'quarter-future-one' => 'ᎾᎿ {0} ᎩᏄᏙᏗ',
+ 'quarter-future-other' => 'ᎾᎿ {0} ᎩᏄᏙᏗ',
+ 'quarter-narrow-future-one' => 'ᎾᎿ {0} ᎩᏄᏘ.',
+ 'quarter-narrow-future-other' => 'ᎾᎿ {0} ᎩᏄᏘ.',
+ 'quarter-narrow-past-one' => '{0} ᎩᏄᏘ. ᏥᎨᏒ',
+ 'quarter-narrow-past-other' => '{0} ᎩᏄᏘ. ᏥᎨᏒ',
+ 'quarter-past-one' => 'ᎾᎿ {0} ᎩᏄᏙᏗ ᏥᎨᏒ',
+ 'quarter-past-other' => '{0} ᎩᏄᏙᏗ ᏥᎨᏒ',
+ 'quarter-short-future-one' => 'ᎾᎿ {0} ᎩᏄᏘ.',
+ 'quarter-short-future-other' => 'ᎾᎿ {0} ᎩᏄᏘ.',
+ 'quarter-short-past-one' => '{0} ᎩᏄᏘ. ᏥᎨᏒ',
+ 'quarter-short-past-other' => '{0} ᎩᏄᏘ. ᏥᎨᏒ',
+ 'sat-future-one' => 'ᎾᎿ {0} ᎤᎾᏙᏓᏈᏕᎾ',
+ 'sat-future-other' => 'ᎾᎿ {0} ᎤᎾᏙᏓᏈᏕᎾ',
+ 'sat-narrow-future-one' => 'ᎾᎿ {0} ᏕᎾ',
+ 'sat-narrow-future-other' => 'ᎾᎿ {0} ᏕᎾ',
+ 'sat-narrow-past-one' => '{0} ᏕᎾ ᏥᎨᏒ',
+ 'sat-narrow-past-other' => '{0} ᏕᎾ ᏥᎨᏒ',
+ 'sat-past-one' => '{0} ᎤᎾᏙᏓᏈᏕᎾ ᏥᎨᏒ',
+ 'sat-past-other' => '{0} ᎤᎾᏙᏓᏈᏕᎾ ᏥᎨᏒ',
+ 'sat-short-future-one' => 'ᎾᎿ {0} ᏈᏕᎾ.',
+ 'sat-short-future-other' => 'ᎾᎿ {0} ᏈᏕᎾ.',
+ 'sat-short-past-one' => '{0} ᏈᏕᎾ. ᏥᎨᏒ',
+ 'sat-short-past-other' => '{0} ᏈᏕᎾ. ᏥᎨᏒ',
+ 'second-future-one' => 'ᎾᎿ {0} ᎠᏎᏢ',
+ 'second-future-other' => 'ᎾᎿ {0} ᏓᏓᎾᏩᏍᎬ ᏥᎨᏒ',
+ 'second-narrow-future-one' => 'ᎾᎿ {0} ᎠᏎ.',
+ 'second-narrow-future-other' => 'ᎾᎿ {0} ᎠᏎ.',
+ 'second-narrow-past-one' => '{0} ᎠᏎ. ᏥᎨᏒ',
+ 'second-narrow-past-other' => '{0} ᎠᏎ. ᏥᎨᏒ',
'second-one' => '{0} ᎠᏎᏢ',
'second-other' => '{0} ᏗᏎᏢ',
+ 'second-past-one' => '{0} ᎠᏎᏢ ᏥᎨᏒ',
+ 'second-past-other' => '{0} ᏓᏓᎾᏩᏍᎬ ᏥᎨᏒ',
+ 'second-short-future-one' => 'ᎾᎿ {0} ᎠᏎ.',
+ 'second-short-future-other' => 'ᎾᎿ {0} ᎠᏎ.',
+ 'second-short-past-one' => '{0} ᎠᏎ. ᏥᎨᏒ',
+ 'second-short-past-other' => '{0} ᎠᏎ. ᏥᎨᏒ',
+ 'sun-future-one' => 'ᎾᎿ {0} ᎤᎾᏙᏓᏆᏍᎬ',
+ 'sun-future-other' => 'ᎾᎿ {0} ᎤᎾᏙᏓᏆᏍᎬ',
+ 'sun-narrow-future-one' => 'ᎾᎿ {0} ᏍᎬ',
+ 'sun-narrow-future-other' => 'ᎾᎿ {0} ᏍᎬ',
+ 'sun-narrow-past-one' => '{0} ᏍᎬ ᏥᎨᏒ',
+ 'sun-narrow-past-other' => '{0} ᏍᎬ ᏥᎨᏒ',
+ 'sun-past-one' => '{0} ᎤᎾᏙᏓᏆᏍᎬ ᏥᎨᏒ',
+ 'sun-past-other' => '{0} ᎤᎾᏙᏓᏆᏍᎬ ᏥᎨᏒ',
+ 'sun-short-future-one' => 'ᎾᎿ {0} ᏆᏍᎬ.',
+ 'sun-short-future-other' => 'ᎾᎿ {0} ᏆᏍᎬ.',
+ 'sun-short-past-one' => '{0} ᏆᏍᎬ. ᏥᎨᏒ',
+ 'sun-short-past-other' => '{0} ᏆᏍᎬ. ᏥᎨᏒ',
+ 'thu-future-one' => 'ᎾᎿ {0} ᏅᎩᏁ ᎢᎦ',
+ 'thu-future-other' => 'ᎾᎿ {0} ᏅᎩᏁ ᎢᎦ',
+ 'thu-narrow-future-one' => 'ᎾᎿ {0} ᏅᎩ',
+ 'thu-narrow-future-other' => 'ᎾᎿ {0} ᏅᎩ',
+ 'thu-narrow-past-one' => '{0} ᏅᎩ ᏥᎨᏒ',
+ 'thu-narrow-past-other' => '{0} ᏅᎩ ᏥᎨᏒ',
+ 'thu-past-one' => '{0} ᏅᎩᏁ ᎢᎦ ᏥᎨᏒ',
+ 'thu-past-other' => '{0} ᏅᎩᏁ ᎢᎦ ᏥᎨᏒ',
+ 'thu-short-future-one' => 'ᎾᎿ {0} ᏅᎩᏁ.',
+ 'thu-short-future-other' => 'ᎾᎿ {0} ᏅᎩᏁ.',
+ 'thu-short-past-one' => '{0} ᏅᎩᏁ. ᏥᎨᏒ',
+ 'thu-short-past-other' => '{0} ᏅᎩᏁ. ᏥᎨᏒ',
+ 'tue-future-one' => 'ᎾᎿ {0} ᏔᎵᏁ ᎢᎦ',
+ 'tue-future-other' => 'ᎾᎿ {0} ᏔᎵᏁ ᎢᎦ',
+ 'tue-narrow-future-one' => 'ᎾᎿ {0} ᏔᎵ',
+ 'tue-narrow-future-other' => 'ᎾᎿ {0} ᏔᎵ',
+ 'tue-narrow-past-one' => '{0} ᏔᎵ ᏥᎨᏒ',
+ 'tue-narrow-past-other' => '{0} ᏔᎵ ᏥᎨᏒ',
+ 'tue-past-one' => '{0} ᏔᎵᏁ ᎢᎦ ᏥᎨᏒ',
+ 'tue-past-other' => '{0} ᏔᎵᏁ ᎢᎦ ᏥᎨᏒ',
+ 'tue-short-future-one' => 'ᎾᎿ {0} ᏔᎵᏁ.',
+ 'tue-short-future-other' => 'ᎾᎿ {0} ᏔᎵᏁ.',
+ 'tue-short-past-one' => '{0} ᏔᎵᏁ. ᏥᎨᏒ',
+ 'tue-short-past-other' => '{0} ᏔᎵᏁ. ᏥᎨᏒ',
+ 'wed-future-one' => 'ᎾᎿ {0} ᏦᎢᏁ ᎢᎦ',
+ 'wed-future-other' => 'ᎾᎿ {0} ᏦᎢᏁ ᎢᎦ',
+ 'wed-narrow-future-one' => 'ᎾᎿ {0} Ꮶ',
+ 'wed-narrow-future-other' => 'ᎾᎿ {0} Ꮶ',
+ 'wed-narrow-past-one' => '{0} Ꮶ ᏥᎨᏒ',
+ 'wed-narrow-past-other' => '{0} Ꮶ ᏥᎨᏒ',
+ 'wed-past-one' => '{0} ᏦᎢᏁ ᎢᎦ ᏥᎨᏒ',
+ 'wed-past-other' => '{0} ᏦᎢᏁ ᎢᎦ ᏥᎨᏒ',
+ 'wed-short-future-one' => 'ᎾᎿ {0} ᏦᎢᏁ.',
+ 'wed-short-future-other' => 'ᎾᎿ {0} ᏦᎢᏁ.',
+ 'wed-short-past-one' => '{0} ᏦᎢᏁ. ᏥᎨᏒ',
+ 'wed-short-past-other' => '{0} ᏦᎢᏁ. ᏥᎨᏒ',
+ 'week-future-one' => 'ᎾᎿ {0} ᏒᎾᏙᏓᏆᏍᏗ',
+ 'week-future-other' => 'ᎾᎿ {0} ᎢᏳᎾᏙᏓᏆᏍᏗ',
+ 'week-narrow-future-one' => 'ᎾᎿ {0} ᏒᎾ.',
+ 'week-narrow-future-other' => 'ᎾᎿ {0} ᏒᎾ.',
+ 'week-narrow-past-one' => '{0} ᏒᎾ. ᏥᎨᏒ',
+ 'week-narrow-past-other' => '{0} ᏒᎾ. ᏥᎨᏒ',
'week-one' => '{0} ᏒᎾᏙᏓᏆᏍᏗ',
'week-other' => '{0} ᎢᏳᎾᏙᏓᏆᏍᏗ',
- 'year-one' => '{0} ᏑᏕᏘᏴᏓ',
- 'year-other' => '{0} ᏧᏕᏘᏴᏓ',
-);
+ 'week-past-one' => '{0} ᏒᎾᏙᏓᏆᏍᏗ ᏥᎨᏒ',
+ 'week-past-other' => '{0} ᎢᏳᎾᏙᏓᏆᏍᏗ ᏥᎨᏒ',
+ 'week-short-future-one' => 'ᎾᎿ {0} ᏒᎾ.',
+ 'week-short-future-other' => 'ᎾᎿ {0} ᏒᎾ.',
+ 'week-short-past-one' => '{0} ᏒᎾ. ᏥᎨᏒ',
+ 'week-short-past-other' => '{0} ᏒᎾ. ᏥᎨᏒ',
+ 'year-future-one' => 'ᎾᎿ {0} ᎤᏕᏘᏴᏌᏗᏒᎢ',
+ 'year-future-other' => 'ᎾᎿ {0} ᎢᏧᏕᏘᏴᏌᏗᏒᎢ',
+ 'year-narrow-future-one' => 'ᎾᎿ {0} ᎤᏕ.',
+ 'year-narrow-future-other' => 'ᎾᎿ {0} ᎤᏕ.',
+ 'year-narrow-past-one' => '{0} ᎤᏕ. ᏥᎨᏒ',
+ 'year-narrow-past-other' => '{0} ᎤᏕ. ᏥᎨᏒ',
+ 'year-one' => '{0} ᎤᏕᏘᏴᏌᏗᏒᎢ',
+ 'year-other' => '{0} ᏧᏕᏘᏴᏌᏗᏒᎢ',
+ 'year-past-one' => '{0} ᎤᏕᏘᏴᏌᏗᏒᎢ ᏥᎨᏒ',
+ 'year-past-other' => '{0} ᎢᏧᏕᏘᏴᏌᏗᏒᎢ ᏥᎨᏒ',
+ 'year-short-future-one' => 'ᎾᎿ {0} ᎤᏕ.',
+ 'year-short-future-other' => 'ᎾᎿ {0} ᎤᏕ.',
+ 'year-short-past-one' => '{0} ᎤᏕ. ᏥᎨᏒ',
+ 'year-short-past-other' => '{0} ᎤᏕ. ᏥᎨᏒ',
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesCs.php b/MLEB/cldr/CldrNames/CldrNamesCs.php
index f418230c..5f4405e2 100644
--- a/MLEB/cldr/CldrNames/CldrNamesCs.php
+++ b/MLEB/cldr/CldrNames/CldrNamesCs.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'afarština',
'ab' => 'abcházština',
'ace' => 'acehština',
@@ -26,10 +26,11 @@ $languageNames = array(
'ar' => 'arabština',
'ar-001' => 'arabština (moderní standardní)',
'arc' => 'aramejština',
- 'arn' => 'araukánština',
+ 'arn' => 'mapudungun',
'aro' => 'araonština',
'arp' => 'arapažština',
'arq' => 'arabština (alžírská)',
+ 'ars' => 'arabština (Nadžd)',
'arw' => 'arawacké jazyky',
'ary' => 'arabština (marocká)',
'arz' => 'arabština (egyptská)',
@@ -42,7 +43,6 @@ $languageNames = array(
'awa' => 'awadhština',
'ay' => 'ajmarština',
'az' => 'ázerbájdžánština',
- 'azb' => 'ázerbájdžánština (jižní)',
'ba' => 'baškirština',
'bal' => 'balúčština',
'ban' => 'balijština',
@@ -59,7 +59,8 @@ $languageNames = array(
'bfd' => 'bafut',
'bfq' => 'badagština',
'bg' => 'bulharština',
- 'bho' => 'bhojpurština',
+ 'bgn' => 'balúčština (západní)',
+ 'bho' => 'bhódžpurština',
'bi' => 'bislamština',
'bik' => 'bikolština',
'bin' => 'bini',
@@ -106,6 +107,7 @@ $languageNames = array(
'cps' => 'kapiznonština',
'cr' => 'kríjština',
'crh' => 'turečtina (krymská)',
+ 'crs' => 'kreolština (seychelská)',
'cs' => 'čeština',
'csb' => 'kašubština',
'cu' => 'staroslověnština',
@@ -141,6 +143,7 @@ $languageNames = array(
'el' => 'řečtina',
'elx' => 'elamitština',
'en' => 'angličtina',
+ 'en-gb' => 'angličtina (Velká Británie)',
'en-us' => 'angličtina (USA)',
'enm' => 'angličtina (středověká)',
'eo' => 'esperanto',
@@ -162,14 +165,14 @@ $languageNames = array(
'fo' => 'faerština',
'fon' => 'fonština',
'fr' => 'francouzština',
- 'frc' => 'francouzština (kajunská)',
+ 'frc' => 'francouzština (cajunská)',
'frm' => 'francouzština (středověká)',
'fro' => 'francouzština (stará)',
'frp' => 'franko-provensálština',
'frr' => 'fríština (severní)',
'frs' => 'fríština (východní)',
'fur' => 'furlanština',
- 'fy' => 'fríština',
+ 'fy' => 'fríština (západní)',
'ga' => 'irština',
'gaa' => 'gaština',
'gag' => 'gagauzština',
@@ -223,7 +226,7 @@ $languageNames = array(
'id' => 'indonéština',
'ie' => 'interlingue',
'ig' => 'igboština',
- 'ii' => 's’-čchuan i',
+ 'ii' => 'iština (sečuánská)',
'ik' => 'inupiakština',
'ilo' => 'ilokánština',
'inh' => 'inguština',
@@ -309,7 +312,9 @@ $languageNames = array(
'ln' => 'lingalština',
'lo' => 'laoština',
'lol' => 'mongština',
+ 'lou' => 'kreolština (Louisiana)',
'loz' => 'lozština',
+ 'lrc' => 'lúrština (severní)',
'lt' => 'litevština',
'ltg' => 'latgalština',
'lu' => 'lubu-katanžština',
@@ -355,7 +360,7 @@ $languageNames = array(
'ms' => 'malajština',
'mt' => 'maltština',
'mua' => 'mundang',
- 'mul' => 'složené (víceřádkové) jazyky',
+ 'mul' => 'více jazyků',
'mus' => 'kríkština',
'mwl' => 'mirandština',
'mwr' => 'márvárština',
@@ -371,6 +376,7 @@ $languageNames = array(
'nb' => 'norština (bokmål)',
'nd' => 'ndebele (Zimbabwe)',
'nds' => 'dolnoněmčina',
+ 'nds-nl' => 'dolnosaština',
'ne' => 'nepálština',
'new' => 'névárština',
'ng' => 'ndondština',
@@ -411,6 +417,7 @@ $languageNames = array(
'pap' => 'papiamento',
'pau' => 'palauština',
'pcd' => 'picardština',
+ 'pcm' => 'nigerijský pidžin',
'pdc' => 'němčina (pensylvánská)',
'pdt' => 'němčina (plautdietsch)',
'peo' => 'staroperština',
@@ -462,6 +469,7 @@ $languageNames = array(
'sco' => 'skotština',
'sd' => 'sindhština',
'sdc' => 'sassarština',
+ 'sdh' => 'kurdština (jižní)',
'se' => 'sámština (severní)',
'see' => 'seneca',
'seh' => 'sena',
@@ -472,7 +480,7 @@ $languageNames = array(
'sga' => 'irština (stará)',
'sgs' => 'žemaitština',
'sh' => 'srbochorvatština',
- 'shi' => 'tachelhit',
+ 'shi' => 'tašelhit',
'shn' => 'šanština',
'shu' => 'arabština (čadská)',
'si' => 'sinhálština',
@@ -504,8 +512,8 @@ $languageNames = array(
'sux' => 'sumerština',
'sv' => 'švédština',
'sw' => 'svahilština',
+ 'sw-cd' => 'svahilština (Kongo)',
'swb' => 'komorština',
- 'swc' => 'svahilština (Kongo)',
'syc' => 'syrština (klasická)',
'syr' => 'syrština',
'szl' => 'slezština',
@@ -572,6 +580,7 @@ $languageNames = array(
'wal' => 'wolajtština',
'war' => 'warajština',
'was' => 'waština',
+ 'wbp' => 'warlpiri',
'wo' => 'wolofština',
'wuu' => 'čínština (dialekty Wu)',
'xal' => 'kalmyčtina',
@@ -598,9 +607,9 @@ $languageNames = array(
'zun' => 'zunijština',
'zxx' => 'žádný jazykový obsah',
'zza' => 'zaza',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'ADP' => 'andorrská peseta',
'AED' => 'SAE dirham',
'AFA' => 'afghánský afghán (1927–2002)',
@@ -631,8 +640,9 @@ $currencyNames = array(
'BEC' => 'belgický konvertibilní frank',
'BEF' => 'belgický frank',
'BEL' => 'belgický finanční frank',
- 'BGL' => 'BGL',
- 'BGN' => 'bulharský lev',
+ 'BGL' => 'bulharský tvrdý leva',
+ 'BGM' => 'bulharský socialistický leva',
+ 'BGN' => 'bulharský leva',
'BGO' => 'bulharský lev (1879–1952)',
'BHD' => 'bahrajnský dinár',
'BIF' => 'burundský frank',
@@ -654,7 +664,8 @@ $currencyNames = array(
'BUK' => 'barmský kyat',
'BWP' => 'botswanská pula',
'BYB' => 'běloruský rubl (1994–1999)',
- 'BYR' => 'běloruský rubl',
+ 'BYN' => 'běloruský rubl',
+ 'BYR' => 'běloruský rubl (2000–2016)',
'BZD' => 'belizský dolar',
'CAD' => 'kanadský dolar',
'CDF' => 'konžský frank',
@@ -664,6 +675,8 @@ $currencyNames = array(
'CLE' => 'chilské escudo',
'CLF' => 'chilská účetní jednotka (UF)',
'CLP' => 'chilské peso',
+ 'CNH' => 'čínský jüan (offshore)',
+ 'CNX' => 'čínský dolar ČLB',
'CNY' => 'čínský jüan',
'COP' => 'kolumbijské peso',
'COU' => 'kolumbijská jednotka reálné hodnoty',
@@ -767,7 +780,8 @@ $currencyNames = array(
'MMK' => 'myanmarský kyat',
'MNT' => 'mongolský tugrik',
'MOP' => 'macajská pataca',
- 'MRO' => 'mauritánská ouguiya',
+ 'MRO' => 'mauritánská ouguiya (1973–2017)',
+ 'MRU' => 'mauritánská ouguiya',
'MTL' => 'maltská lira',
'MTP' => 'maltská libra',
'MUR' => 'mauricijská rupie',
@@ -792,7 +806,7 @@ $currencyNames = array(
'OMR' => 'ománský rijál',
'PAB' => 'panamská balboa',
'PEI' => 'peruánská inti',
- 'PEN' => 'peruánský nový sol',
+ 'PEN' => 'peruánský sol',
'PES' => 'peruánský sol (1863–1965)',
'PGK' => 'papuánská nová kina',
'PHP' => 'filipínské peso',
@@ -804,7 +818,7 @@ $currencyNames = array(
'QAR' => 'katarský rijál',
'RHD' => 'rhodéský dolar',
'ROL' => 'rumunské leu (1952–2006)',
- 'RON' => 'rumunské leu',
+ 'RON' => 'rumunský leu',
'RSD' => 'srbský dinár',
'RUB' => 'ruský rubl',
'RUR' => 'ruský rubl (1991–1998)',
@@ -825,7 +839,8 @@ $currencyNames = array(
'SRD' => 'surinamský dolar',
'SRG' => 'surinamský zlatý',
'SSP' => 'jihosúdánská libra',
- 'STD' => 'svatotomášská dobra',
+ 'STD' => 'svatotomášská dobra (1977–2017)',
+ 'STN' => 'svatotomášská dobra',
'SUR' => 'sovětský rubl',
'SVC' => 'salvadorský colón',
'SYP' => 'syrská libra',
@@ -855,7 +870,8 @@ $currencyNames = array(
'UYU' => 'uruguayské peso',
'UZS' => 'uzbecký sum',
'VEB' => 'venezuelský bolívar (1871–2008)',
- 'VEF' => 'venezuelský bolívar',
+ 'VEF' => 'venezuelský bolívar (2008–2018)',
+ 'VES' => 'venezuelský bolívar',
'VND' => 'vietnamský dong',
'VNN' => 'vietnamský dong (1978–1985)',
'VUV' => 'vanuatský vatu',
@@ -895,9 +911,9 @@ $currencyNames = array(
'ZWD' => 'zimbabwský dolar (1980–2008)',
'ZWL' => 'zimbabwský dolar (2009)',
'ZWR' => 'zimbabwský dolar (2008)',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'ADP' => 'ADP',
'AED' => 'AED',
'AFA' => 'AFA',
@@ -929,6 +945,7 @@ $currencySymbols = array(
'BEF' => 'BEF',
'BEL' => 'BEL',
'BGL' => 'BGL',
+ 'BGM' => 'BGM',
'BGN' => 'BGN',
'BGO' => 'BGO',
'BHD' => 'BHD',
@@ -951,6 +968,7 @@ $currencySymbols = array(
'BUK' => 'BUK',
'BWP' => 'BWP',
'BYB' => 'BYB',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CA$',
@@ -961,6 +979,8 @@ $currencySymbols = array(
'CLE' => 'CLE',
'CLF' => 'CLF',
'CLP' => 'CLP',
+ 'CNH' => 'CNH',
+ 'CNX' => 'CNX',
'CNY' => 'CN¥',
'COP' => 'COP',
'COU' => 'COU',
@@ -1065,6 +1085,7 @@ $currencySymbols = array(
'MNT' => 'MNT',
'MOP' => 'MOP',
'MRO' => 'MRO',
+ 'MRU' => 'MRU',
'MTL' => 'MTL',
'MTP' => 'MTP',
'MUR' => 'MUR',
@@ -1123,6 +1144,7 @@ $currencySymbols = array(
'SRG' => 'SRG',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'STN',
'SUR' => 'SUR',
'SVC' => 'SVC',
'SYP' => 'SYP',
@@ -1153,6 +1175,7 @@ $currencySymbols = array(
'UZS' => 'UZS',
'VEB' => 'VEB',
'VEF' => 'VEF',
+ 'VES' => 'VES',
'VND' => 'VND',
'VNN' => 'VNN',
'VUV' => 'VUV',
@@ -1161,7 +1184,7 @@ $currencySymbols = array(
'XAG' => 'XAG',
'XAU' => 'XAU',
'XBA' => 'XBA',
- 'XBB' => 'EMU',
+ 'XBB' => 'XBB',
'XBC' => 'XBC',
'XBD' => 'XBD',
'XCD' => 'EC$',
@@ -1192,9 +1215,9 @@ $currencySymbols = array(
'ZWD' => 'ZWD',
'ZWL' => 'ZWL',
'ZWR' => 'ZWR',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'Ascension',
'AD' => 'Andorra',
'AE' => 'Spojené arabské emiráty',
@@ -1203,7 +1226,6 @@ $countryNames = array(
'AI' => 'Anguilla',
'AL' => 'Albánie',
'AM' => 'Arménie',
- 'AN' => 'Nizozemské Antily',
'AO' => 'Angola',
'AQ' => 'Antarktida',
'AR' => 'Argentina',
@@ -1253,7 +1275,7 @@ $countryNames = array(
'CW' => 'Curaçao',
'CX' => 'Vánoční ostrov',
'CY' => 'Kypr',
- 'CZ' => 'Česká republika',
+ 'CZ' => 'Česko',
'DE' => 'Německo',
'DG' => 'Diego García',
'DJ' => 'Džibutsko',
@@ -1270,6 +1292,7 @@ $countryNames = array(
'ES' => 'Španělsko',
'ET' => 'Etiopie',
'EU' => 'Evropská unie',
+ 'EZ' => 'eurozóna',
'FI' => 'Finsko',
'FJ' => 'Fidži',
'FK' => 'Falklandské ostrovy',
@@ -1277,7 +1300,7 @@ $countryNames = array(
'FO' => 'Faerské ostrovy',
'FR' => 'Francie',
'GA' => 'Gabon',
- 'GB' => 'VB',
+ 'GB' => 'GB',
'GD' => 'Grenada',
'GE' => 'Gruzie',
'GF' => 'Francouzská Guyana',
@@ -1389,7 +1412,7 @@ $countryNames = array(
'PW' => 'Palau',
'PY' => 'Paraguay',
'QA' => 'Katar',
- 'QO' => 'Vnější Oceánie',
+ 'QO' => 'vnější Oceánie',
'RE' => 'Réunion',
'RO' => 'Rumunsko',
'RS' => 'Srbsko',
@@ -1436,6 +1459,7 @@ $countryNames = array(
'UA' => 'Ukrajina',
'UG' => 'Uganda',
'UM' => 'Menší odlehlé ostrovy USA',
+ 'UN' => 'OSN',
'US' => 'USA',
'UY' => 'Uruguay',
'UZ' => 'Uzbekistán',
@@ -1454,9 +1478,13 @@ $countryNames = array(
'ZA' => 'Jihoafrická republika',
'ZM' => 'Zambie',
'ZW' => 'Zimbabwe',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-few' => '{0} století',
+ 'century-many' => '{0} století',
+ 'century-one' => '{0} století',
+ 'century-other' => '{0} století',
'day-few' => '{0} dny',
'day-future-few' => 'za {0} dny',
'day-future-many' => 'za {0} dne',
@@ -1468,13 +1496,13 @@ $timeUnits = array(
'day-narrow-future-one' => 'za {0} den',
'day-narrow-future-other' => 'za {0} dní',
'day-narrow-past-few' => 'před {0} dny',
- 'day-narrow-past-many' => 'před {0} dnem',
+ 'day-narrow-past-many' => 'před {0} dne',
'day-narrow-past-one' => 'před {0} dnem',
'day-narrow-past-other' => 'před {0} dny',
'day-one' => '{0} den',
'day-other' => '{0} dní',
'day-past-few' => 'před {0} dny',
- 'day-past-many' => 'před {0} dnem',
+ 'day-past-many' => 'před {0} dne',
'day-past-one' => 'před {0} dnem',
'day-past-other' => 'před {0} dny',
'day-short-future-few' => 'za {0} dny',
@@ -1482,9 +1510,33 @@ $timeUnits = array(
'day-short-future-one' => 'za {0} den',
'day-short-future-other' => 'za {0} dní',
'day-short-past-few' => 'před {0} dny',
- 'day-short-past-many' => 'před {0} dnem',
+ 'day-short-past-many' => 'před {0} dne',
'day-short-past-one' => 'před {0} dnem',
'day-short-past-other' => 'před {0} dny',
+ 'fri-future-few' => 'za {0} pátky',
+ 'fri-future-many' => 'za {0} pátku',
+ 'fri-future-one' => 'za {0} pátek',
+ 'fri-future-other' => 'za {0} pátků',
+ 'fri-narrow-future-few' => 'za {0} pátky',
+ 'fri-narrow-future-many' => 'za {0} pátku',
+ 'fri-narrow-future-one' => 'za {0} pátek',
+ 'fri-narrow-future-other' => 'za {0} pátků',
+ 'fri-narrow-past-few' => 'před {0} pátky',
+ 'fri-narrow-past-many' => 'před {0} pátku',
+ 'fri-narrow-past-one' => 'před {0} pátkem',
+ 'fri-narrow-past-other' => 'před {0} pátky',
+ 'fri-past-few' => 'před {0} pátky',
+ 'fri-past-many' => 'před {0} pátku',
+ 'fri-past-one' => 'před {0} pátkem',
+ 'fri-past-other' => 'před {0} pátky',
+ 'fri-short-future-few' => 'za {0} pátky',
+ 'fri-short-future-many' => 'za {0} pátku',
+ 'fri-short-future-one' => 'za {0} pátek',
+ 'fri-short-future-other' => 'za {0} pátků',
+ 'fri-short-past-few' => 'před {0} pátky',
+ 'fri-short-past-many' => 'před {0} pátku',
+ 'fri-short-past-one' => 'před {0} pátkem',
+ 'fri-short-past-other' => 'před {0} pátky',
'hour-few' => '{0} hodiny',
'hour-future-few' => 'za {0} hodiny',
'hour-future-many' => 'za {0} hodiny',
@@ -1502,7 +1554,7 @@ $timeUnits = array(
'hour-one' => '{0} hodina',
'hour-other' => '{0} hodin',
'hour-past-few' => 'před {0} hodinami',
- 'hour-past-many' => 'před {0} hodinou',
+ 'hour-past-many' => 'před {0} hodiny',
'hour-past-one' => 'před {0} hodinou',
'hour-past-other' => 'před {0} hodinami',
'hour-short-future-few' => 'za {0} h',
@@ -1538,7 +1590,7 @@ $timeUnits = array(
'minute-one' => '{0} minuta',
'minute-other' => '{0} minut',
'minute-past-few' => 'před {0} minutami',
- 'minute-past-many' => 'před {0} minutou',
+ 'minute-past-many' => 'před {0} minuty',
'minute-past-one' => 'před {0} minutou',
'minute-past-other' => 'před {0} minutami',
'minute-short-future-few' => 'za {0} min',
@@ -1549,6 +1601,30 @@ $timeUnits = array(
'minute-short-past-many' => 'před {0} min',
'minute-short-past-one' => 'před {0} min',
'minute-short-past-other' => 'před {0} min',
+ 'mon-future-few' => 'za {0} pondělí',
+ 'mon-future-many' => 'za {0} pondělí',
+ 'mon-future-one' => 'za {0} pondělí',
+ 'mon-future-other' => 'za {0} pondělí',
+ 'mon-narrow-future-few' => 'za {0} pondělí',
+ 'mon-narrow-future-many' => 'za {0} pondělí',
+ 'mon-narrow-future-one' => 'za {0} pondělí',
+ 'mon-narrow-future-other' => 'za {0} pondělí',
+ 'mon-narrow-past-few' => 'před {0} pondělími',
+ 'mon-narrow-past-many' => 'před {0} pondělí',
+ 'mon-narrow-past-one' => 'před {0} pondělím',
+ 'mon-narrow-past-other' => 'před {0} pondělími',
+ 'mon-past-few' => 'před {0} pondělími',
+ 'mon-past-many' => 'před {0} pondělí',
+ 'mon-past-one' => 'před {0} pondělím',
+ 'mon-past-other' => 'před {0} pondělími',
+ 'mon-short-future-few' => 'za {0} pondělí',
+ 'mon-short-future-many' => 'za {0} pondělí',
+ 'mon-short-future-one' => 'za {0} pondělí',
+ 'mon-short-future-other' => 'za {0} pondělí',
+ 'mon-short-past-few' => 'před {0} pondělími',
+ 'mon-short-past-many' => 'před {0} pondělí',
+ 'mon-short-past-one' => 'před {0} pondělím',
+ 'mon-short-past-other' => 'před {0} pondělími',
'month-few' => '{0} měsíce',
'month-future-few' => 'za {0} měsíce',
'month-future-many' => 'za {0} měsíce',
@@ -1566,7 +1642,7 @@ $timeUnits = array(
'month-one' => '{0} měsíc',
'month-other' => '{0} měsíců',
'month-past-few' => 'před {0} měsíci',
- 'month-past-many' => 'před {0} měsícem',
+ 'month-past-many' => 'před {0} měsíce',
'month-past-one' => 'před {0} měsícem',
'month-past-other' => 'před {0} měsíci',
'month-short-future-few' => 'za {0} měs.',
@@ -1594,7 +1670,7 @@ $timeUnits = array(
'quarter-narrow-past-one' => '-{0} Q',
'quarter-narrow-past-other' => '-{0} Q',
'quarter-past-few' => 'před {0} čtvrtletími',
- 'quarter-past-many' => 'před {0} čtvrtletím',
+ 'quarter-past-many' => 'před {0} čtvrtletí',
'quarter-past-one' => 'před {0} čtvrtletím',
'quarter-past-other' => 'před {0} čtvrtletími',
'quarter-short-future-few' => '+{0} Q',
@@ -1605,6 +1681,30 @@ $timeUnits = array(
'quarter-short-past-many' => '-{0} Q',
'quarter-short-past-one' => '-{0} Q',
'quarter-short-past-other' => '-{0} Q',
+ 'sat-future-few' => 'za {0} soboty',
+ 'sat-future-many' => 'za {0} soboty',
+ 'sat-future-one' => 'za {0} sobotu',
+ 'sat-future-other' => 'za {0} sobot',
+ 'sat-narrow-future-few' => 'za {0} soboty',
+ 'sat-narrow-future-many' => 'za {0} soboty',
+ 'sat-narrow-future-one' => 'za {0} sobotu',
+ 'sat-narrow-future-other' => 'za {0} sobot',
+ 'sat-narrow-past-few' => 'před {0} sobotami',
+ 'sat-narrow-past-many' => 'před {0} soboty',
+ 'sat-narrow-past-one' => 'před {0} sobotou',
+ 'sat-narrow-past-other' => 'před {0} sobotami',
+ 'sat-past-few' => 'před {0} sobotami',
+ 'sat-past-many' => 'před {0} soboty',
+ 'sat-past-one' => 'před {0} sobotou',
+ 'sat-past-other' => 'před {0} sobotami',
+ 'sat-short-future-few' => 'za {0} soboty',
+ 'sat-short-future-many' => 'za {0} soboty',
+ 'sat-short-future-one' => 'za {0} sobotu',
+ 'sat-short-future-other' => 'za {0} sobot',
+ 'sat-short-past-few' => 'před {0} sobotami',
+ 'sat-short-past-many' => 'před {0} soboty',
+ 'sat-short-past-one' => 'před {0} sobotou',
+ 'sat-short-past-other' => 'před {0} sobotami',
'second-few' => '{0} sekundy',
'second-future-few' => 'za {0} sekundy',
'second-future-many' => 'za {0} sekundy',
@@ -1622,7 +1722,7 @@ $timeUnits = array(
'second-one' => '{0} sekunda',
'second-other' => '{0} sekund',
'second-past-few' => 'před {0} sekundami',
- 'second-past-many' => 'před {0} sekundou',
+ 'second-past-many' => 'před {0} sekundy',
'second-past-one' => 'před {0} sekundou',
'second-past-other' => 'před {0} sekundami',
'second-short-future-few' => 'za {0} s',
@@ -1633,6 +1733,102 @@ $timeUnits = array(
'second-short-past-many' => 'před {0} s',
'second-short-past-one' => 'před {0} s',
'second-short-past-other' => 'před {0} s',
+ 'sun-future-few' => 'za {0} neděle',
+ 'sun-future-many' => 'za {0} neděle',
+ 'sun-future-one' => 'za {0} neděli',
+ 'sun-future-other' => 'za {0} nedělí',
+ 'sun-narrow-future-few' => 'za {0} neděle',
+ 'sun-narrow-future-many' => 'za {0} neděle',
+ 'sun-narrow-future-one' => 'za {0} neděli',
+ 'sun-narrow-future-other' => 'za {0} nedělí',
+ 'sun-narrow-past-few' => 'před {0} nedělemi',
+ 'sun-narrow-past-many' => 'před {0} neděle',
+ 'sun-narrow-past-one' => 'před {0} nedělí',
+ 'sun-narrow-past-other' => 'před {0} nedělemi',
+ 'sun-past-few' => 'před {0} nedělemi',
+ 'sun-past-many' => 'před {0} neděle',
+ 'sun-past-one' => 'před {0} nedělí',
+ 'sun-past-other' => 'před {0} nedělemi',
+ 'sun-short-future-few' => 'za {0} neděle',
+ 'sun-short-future-many' => 'za {0} neděle',
+ 'sun-short-future-one' => 'za {0} neděli',
+ 'sun-short-future-other' => 'za {0} nedělí',
+ 'sun-short-past-few' => 'před {0} nedělemi',
+ 'sun-short-past-many' => 'před {0} neděle',
+ 'sun-short-past-one' => 'před {0} nedělí',
+ 'sun-short-past-other' => 'před {0} nedělemi',
+ 'thu-future-few' => 'za {0} čtvrtky',
+ 'thu-future-many' => 'za {0} čtvrtku',
+ 'thu-future-one' => 'za {0} čtvrtek',
+ 'thu-future-other' => 'za {0} čtvrtků',
+ 'thu-narrow-future-few' => 'za {0} čtvrtky',
+ 'thu-narrow-future-many' => 'za {0} čtvrtku',
+ 'thu-narrow-future-one' => 'za {0} čtvrtek',
+ 'thu-narrow-future-other' => 'za {0} čtvrtků',
+ 'thu-narrow-past-few' => 'před {0} čtvrtky',
+ 'thu-narrow-past-many' => 'před {0} čtvrtku',
+ 'thu-narrow-past-one' => 'před {0} čtvrtkem',
+ 'thu-narrow-past-other' => 'před {0} čtvrtky',
+ 'thu-past-few' => 'před {0} čtvrtky',
+ 'thu-past-many' => 'před {0} čtvrtku',
+ 'thu-past-one' => 'před {0} čtvrtkem',
+ 'thu-past-other' => 'před {0} čtvrtky',
+ 'thu-short-future-few' => 'za {0} čtvrtky',
+ 'thu-short-future-many' => 'za {0} čtvrtku',
+ 'thu-short-future-one' => 'za {0} čtvrtek',
+ 'thu-short-future-other' => 'za {0} čtvrtků',
+ 'thu-short-past-few' => 'před {0} čtvrtky',
+ 'thu-short-past-many' => 'před {0} čtvrtku',
+ 'thu-short-past-one' => 'před {0} čtvrtkem',
+ 'thu-short-past-other' => 'před {0} čtvrtky',
+ 'tue-future-few' => 'za {0} úterý',
+ 'tue-future-many' => 'za {0} úterý',
+ 'tue-future-one' => 'za {0} úterý',
+ 'tue-future-other' => 'za {0} úterý',
+ 'tue-narrow-future-few' => 'za {0} úterý',
+ 'tue-narrow-future-many' => 'za {0} úterý',
+ 'tue-narrow-future-one' => 'za {0} úterý',
+ 'tue-narrow-future-other' => 'za {0} úterý',
+ 'tue-narrow-past-few' => 'před {0} úterými',
+ 'tue-narrow-past-many' => 'před {0} úterý',
+ 'tue-narrow-past-one' => 'před {0} úterým',
+ 'tue-narrow-past-other' => 'před {0} úterými',
+ 'tue-past-few' => 'před {0} úterými',
+ 'tue-past-many' => 'před {0} úterý',
+ 'tue-past-one' => 'před {0} úterým',
+ 'tue-past-other' => 'před {0} úterými',
+ 'tue-short-future-few' => 'za {0} úterý',
+ 'tue-short-future-many' => 'za {0} úterý',
+ 'tue-short-future-one' => 'za {0} úterý',
+ 'tue-short-future-other' => 'za {0} úterý',
+ 'tue-short-past-few' => 'před {0} úterými',
+ 'tue-short-past-many' => 'před {0} úterý',
+ 'tue-short-past-one' => 'před {0} úterým',
+ 'tue-short-past-other' => 'před {0} úterými',
+ 'wed-future-few' => 'za {0} středy',
+ 'wed-future-many' => 'za {0} středy',
+ 'wed-future-one' => 'za {0} středu',
+ 'wed-future-other' => 'za {0} střed',
+ 'wed-narrow-future-few' => 'za {0} středy',
+ 'wed-narrow-future-many' => 'za {0} středy',
+ 'wed-narrow-future-one' => 'za {0} středu',
+ 'wed-narrow-future-other' => 'za {0} střed',
+ 'wed-narrow-past-few' => 'před {0} středami',
+ 'wed-narrow-past-many' => 'před {0} středy',
+ 'wed-narrow-past-one' => 'před {0} středou',
+ 'wed-narrow-past-other' => 'před {0} středami',
+ 'wed-past-few' => 'před {0} středami',
+ 'wed-past-many' => 'před {0} středy',
+ 'wed-past-one' => 'před {0} středou',
+ 'wed-past-other' => 'před {0} středami',
+ 'wed-short-future-few' => 'za {0} středy',
+ 'wed-short-future-many' => 'za {0} středy',
+ 'wed-short-future-one' => 'za {0} středu',
+ 'wed-short-future-other' => 'za {0} střed',
+ 'wed-short-past-few' => 'před {0} středami',
+ 'wed-short-past-many' => 'před {0} středy',
+ 'wed-short-past-one' => 'před {0} středou',
+ 'wed-short-past-other' => 'před {0} středami',
'week-few' => '{0} týdny',
'week-future-few' => 'za {0} týdny',
'week-future-many' => 'za {0} týdne',
@@ -1650,7 +1846,7 @@ $timeUnits = array(
'week-one' => '{0} týden',
'week-other' => '{0} týdnů',
'week-past-few' => 'před {0} týdny',
- 'week-past-many' => 'před {0} týdnem',
+ 'week-past-many' => 'před {0} týdne',
'week-past-one' => 'před {0} týdnem',
'week-past-other' => 'před {0} týdny',
'week-short-future-few' => 'za {0} týd.',
@@ -1678,7 +1874,7 @@ $timeUnits = array(
'year-one' => '{0} rok',
'year-other' => '{0} let',
'year-past-few' => 'před {0} lety',
- 'year-past-many' => 'před {0} rokem',
+ 'year-past-many' => 'před {0} roku',
'year-past-one' => 'před {0} rokem',
'year-past-other' => 'před {0} lety',
'year-short-future-few' => 'za {0} r.',
@@ -1689,4 +1885,4 @@ $timeUnits = array(
'year-short-past-many' => 'před {0} r.',
'year-short-past-one' => 'před {0} r.',
'year-short-past-other' => 'před {0} l.',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesCy.php b/MLEB/cldr/CldrNames/CldrNamesCy.php
index e02fb66c..5ee56490 100644
--- a/MLEB/cldr/CldrNames/CldrNamesCy.php
+++ b/MLEB/cldr/CldrNames/CldrNamesCy.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'Affareg',
'ab' => 'Abchaseg',
'ace' => 'Acehneg',
@@ -22,6 +22,7 @@ $languageNames = array(
'am' => 'Amhareg',
'an' => 'Aragoneg',
'ang' => 'Hen Saesneg',
+ 'anp' => 'Angika',
'ar' => 'Arabeg',
'ar-001' => 'Arabeg Modern Safonol',
'arc' => 'Aramaeg',
@@ -33,10 +34,14 @@ $languageNames = array(
'ary' => 'Arabeg Moroco',
'arz' => 'Arabeg yr Aifft',
'as' => 'Asameg',
+ 'asa' => 'Asw',
'ase' => 'Iaith Arwyddion America',
+ 'ast' => 'Astwrianeg',
'av' => 'Afareg',
+ 'awa' => 'Awadhi',
+ 'ay' => 'Aymareg',
'az' => 'Aserbaijaneg',
- 'azb' => 'Aserbaijaneg Deheuol',
+ 'az-arab' => 'Aserbaijaneg Deheuol',
'ba' => 'Bashcorteg',
'bal' => 'Balwtsi',
'ban' => 'Balïeg',
@@ -46,23 +51,36 @@ $languageNames = array(
'bej' => 'Bejäeg',
'bem' => 'Bembeg',
'bez' => 'Bena',
+ 'bfd' => 'Baffwteg',
+ 'bfq' => 'Badaga',
'bg' => 'Bwlgareg',
+ 'bgn' => 'Balochi Gorllewinol',
+ 'bho' => 'Bhojpuri',
'bi' => 'Bislama',
+ 'bin' => 'Bini',
'bkm' => 'Comeg',
+ 'bla' => 'Siksika',
'bm' => 'Bambareg',
'bn' => 'Bengaleg',
'bo' => 'Tibeteg',
'br' => 'Llydaweg',
'brh' => 'Brahui',
+ 'brx' => 'Bodo',
'bs' => 'Bosnieg',
+ 'bss' => 'Acwseg',
'bua' => 'Bwriateg',
+ 'bug' => 'Bwginaeg',
'bum' => 'Bwlw',
+ 'byn' => 'Blin',
'ca' => 'Catalaneg',
'cad' => 'Cado',
'car' => 'Caribeg',
'cch' => 'Atsameg',
'ce' => 'Tsietsieneg',
+ 'ceb' => 'Cebuano',
+ 'cgg' => 'Tsiga',
'ch' => 'Tsiamorro',
+ 'chk' => 'Chuukaeg',
'chm' => 'Marieg',
'cho' => 'Siocto',
'chr' => 'Tsierocî',
@@ -72,24 +90,34 @@ $languageNames = array(
'cop' => 'Copteg',
'cr' => 'Cri',
'crh' => 'Tyrceg y Crimea',
+ 'crs' => 'Ffrangeg Seselwa Creole',
'cs' => 'Tsieceg',
'cu' => 'Hen Slafoneg',
+ 'cv' => 'Tshwfasheg',
'cy' => 'Cymraeg',
'da' => 'Daneg',
'dak' => 'Dacotaeg',
'dar' => 'Dargwa',
+ 'dav' => 'Taita',
'de' => 'Almaeneg',
'de-at' => 'Almaeneg Awstria',
'de-ch' => 'Almaeneg Safonol y Swistir',
+ 'dgr' => 'Dogrib',
'din' => 'Dinca',
- 'dje' => 'Zarmaeg',
+ 'dje' => 'Sarmaeg',
'doi' => 'Dogri',
'dsb' => 'Sorbeg Isaf',
+ 'dua' => 'Diwaleg',
'dum' => 'Iseldireg Canol',
'dv' => 'Difehi',
+ 'dyo' => 'Jola-Fonyi',
+ 'dz' => 'Dzongkha',
+ 'dzg' => 'Dazaga',
'ebu' => 'Embw',
'ee' => 'Ewe',
+ 'efi' => 'Efik',
'egy' => 'Hen Eiffteg',
+ 'eka' => 'Ekajuk',
'el' => 'Groeg',
'elx' => 'Elameg',
'en' => 'Saesneg',
@@ -115,42 +143,52 @@ $languageNames = array(
'fit' => 'Ffinneg Tornedal',
'fj' => 'Ffijïeg',
'fo' => 'Ffaröeg',
+ 'fon' => 'Fon',
'fr' => 'Ffrangeg',
'fr-ca' => 'Ffrangeg Canada',
'fr-ch' => 'Ffrangeg y Swistir',
'frc' => 'Ffrangeg Cajwn',
'frm' => 'Ffrangeg Canol',
'fro' => 'Hen Ffrangeg',
- 'frr' => 'Ffriseg y Gogledd',
+ 'frp' => 'Arpitaneg',
+ 'frr' => 'Ffriseg Gogleddol',
'frs' => 'Ffriseg y Dwyrain',
'fur' => 'Ffriwleg',
'fy' => 'Ffriseg y Gorllewin',
'ga' => 'Gwyddeleg',
+ 'gaa' => 'Ga',
+ 'gag' => 'Gagauz',
'gay' => 'Gaio',
'gba' => 'Gbaia',
'gbz' => 'Dareg y Zoroastriaid',
'gd' => 'Gaeleg yr Alban',
+ 'gez' => 'Geez',
'gil' => 'Gilberteg',
'gl' => 'Galisieg',
- 'gmh' => 'Uchel Almaeneg Canol',
+ 'gmh' => 'Almaeneg Uchel Canol',
'gn' => 'Guaraní',
- 'goh' => 'Hen Uchel Almaeneg',
+ 'goh' => 'Hen Almaeneg Uchel',
+ 'gor' => 'Gorontalo',
'got' => 'Gotheg',
'grc' => 'Hen Roeg',
'gsw' => 'Almaeneg y Swistir',
'gu' => 'Gwjarati',
+ 'guz' => 'Gusii',
'gv' => 'Manaweg',
+ 'gwi' => 'Gwichʼin',
'ha' => 'Hawsa',
'hai' => 'Haida',
'haw' => 'Hawäieg',
'he' => 'Hebraeg',
'hi' => 'Hindi',
+ 'hil' => 'Hiligaynon',
'hit' => 'Hetheg',
'hmn' => 'Hmongeg',
'hr' => 'Croateg',
'hsb' => 'Sorbeg Uchaf',
'ht' => 'Creol Haiti',
'hu' => 'Hwngareg',
+ 'hup' => 'Hupa',
'hy' => 'Armeneg',
'hz' => 'Herero',
'ia' => 'Interlingua',
@@ -163,10 +201,13 @@ $languageNames = array(
'ik' => 'Inwpiaceg',
'ilo' => 'Ilocaneg',
'inh' => 'Ingwsieg',
+ 'io' => 'Ido',
'is' => 'Islandeg',
'it' => 'Eidaleg',
'iu' => 'Inwctitwt',
'ja' => 'Japaneeg',
+ 'jbo' => 'Lojban',
+ 'jgo' => 'Ngomba',
'jmc' => 'Matsiame',
'jpr' => 'Iddew-Bersieg',
'jrb' => 'Iddew-Arabeg',
@@ -174,21 +215,37 @@ $languageNames = array(
'ka' => 'Georgeg',
'kaa' => 'Cara-Calpaceg',
'kab' => 'Cabileg',
+ 'kac' => 'Kachin',
+ 'kaj' => 'Jju',
'kam' => 'Camba',
- 'kbd' => 'Circaseg Dwyreiniol',
+ 'kbd' => 'Cabardieg',
+ 'kcg' => 'Tyapeg',
'kde' => 'Macondeg',
'kea' => 'Caboferdianeg',
+ 'kfo' => 'Koro',
'kg' => 'Congo',
'kha' => 'Càseg',
- 'ki' => 'ki',
+ 'khq' => 'Koyra Chiini',
+ 'khw' => 'Chowareg',
+ 'ki' => 'Kikuyu',
+ 'kj' => 'Kuanyama',
'kk' => 'Casacheg',
+ 'kkj' => 'Kako',
+ 'kl' => 'Kalaallisut',
+ 'kln' => 'Kalenjin',
'km' => 'Chmereg',
+ 'kmb' => 'Kimbundu',
'kn' => 'Kannada',
'ko' => 'Coreeg',
+ 'koi' => 'Komi-Permyak',
'kok' => 'Concani',
+ 'kpe' => 'Kpelle',
'kr' => 'Canwri',
+ 'krc' => 'Karachay-Balkar',
'krl' => 'Careleg',
+ 'kru' => 'Kurukh',
'ks' => 'Cashmireg',
+ 'ksb' => 'Shambala',
'ksf' => 'Baffia',
'ksh' => 'Cwleneg',
'ku' => 'Cwrdeg',
@@ -205,13 +262,17 @@ $languageNames = array(
'lez' => 'Lezgheg',
'lg' => 'Ganda',
'li' => 'Limbwrgeg',
+ 'lkt' => 'Lakota',
'lmo' => 'Lombardeg',
'ln' => 'Lingala',
'lo' => 'Laoeg',
'lol' => 'Mongo',
'loz' => 'Lozi',
+ 'lrc' => 'Luri Gogleddol',
'lt' => 'Lithwaneg',
- 'ltg' => 'Latgalieg',
+ 'ltg' => 'Latgaleg',
+ 'lu' => 'Luba-Katanga',
+ 'lua' => 'Luba-Lulua',
'lun' => 'Lwnda',
'luo' => 'Lŵo',
'lus' => 'Lwshaieg',
@@ -227,11 +288,15 @@ $languageNames = array(
'mdr' => 'Mandareg',
'men' => 'Mendeg',
'mer' => 'Mêrw',
+ 'mfe' => 'Morisyen',
'mg' => 'Malagaseg',
'mga' => 'Gwyddeleg Canol',
+ 'mgh' => 'Makhuwa-Meetto',
+ 'mgo' => 'Meta',
'mh' => 'Marsialeg',
'mi' => 'Maori',
'mic' => 'Micmaceg',
+ 'min' => 'Minangkabau',
'mk' => 'Macedoneg',
'ml' => 'Malayalam',
'mn' => 'Mongoleg',
@@ -240,26 +305,39 @@ $languageNames = array(
'moh' => 'Mohoceg',
'mos' => 'Mosi',
'mr' => 'Marathi',
+ 'mrj' => 'Mari Gorllewinol',
'ms' => 'Maleieg',
'mt' => 'Malteg',
- 'mua' => 'Mas',
- 'mul' => 'mwy nag un iaith',
+ 'mua' => 'Mundang',
+ 'mul' => 'Mwy nag un iaith',
+ 'mus' => 'Creek',
'mwl' => 'Mirandeg',
'mwr' => 'Marwari',
'my' => 'Byrmaneg',
+ 'myv' => 'Erzya',
+ 'mzn' => 'Masanderani',
'na' => 'Nawrŵeg',
'nap' => 'Naplieg',
+ 'naq' => 'Nama',
'nb' => 'Norwyeg Bokmål',
'nd' => 'Ndebele Gogleddol',
- 'nds' => 'Isel Almaeneg',
+ 'nds' => 'Almaeneg Isel',
+ 'nds-nl' => 'Sacsoneg Isel',
'ne' => 'Nepaleg',
'new' => 'Newaeg',
'ng' => 'Ndonga',
+ 'nia' => 'Nias',
+ 'niu' => 'Niuean',
+ 'njo' => 'Ao Naga',
'nl' => 'Iseldireg',
'nl-be' => 'Fflemeg',
+ 'nmg' => 'Kwasio',
'nn' => 'Norwyeg Nynorsk',
+ 'nnh' => 'Ngiemboon',
'no' => 'Norwyeg',
+ 'nog' => 'Nogai',
'non' => 'Hen Norseg',
+ 'nqo' => 'N’Ko',
'nr' => 'Ndebele Deheuol',
'nso' => 'Sotho Gogleddol',
'nus' => 'Nŵereg',
@@ -273,7 +351,7 @@ $languageNames = array(
'oc' => 'Ocsitaneg',
'oj' => 'Ojibwa',
'om' => 'Oromo',
- 'or' => 'Oriya',
+ 'or' => 'Odia',
'os' => 'Oseteg',
'osa' => 'Osageg',
'ota' => 'Tyrceg Otoman',
@@ -281,7 +359,10 @@ $languageNames = array(
'pag' => 'Pangasineg',
'pal' => 'Pahlafi',
'pam' => 'Pampanga',
+ 'pap' => 'Papiamento',
+ 'pau' => 'Palawan',
'pcd' => 'Picardeg',
+ 'pcm' => 'Pidgin Nigeria',
'pdc' => 'Almaeneg Pensylfania',
'peo' => 'Hen Bersieg',
'pfl' => 'Almaeneg Palatin',
@@ -289,6 +370,7 @@ $languageNames = array(
'pi' => 'Pali',
'pl' => 'Pwyleg',
'pms' => 'Piedmonteg',
+ 'pnt' => 'Ponteg',
'pon' => 'Pohnpeianeg',
'prg' => 'Prwseg',
'pro' => 'Hen Brofensaleg',
@@ -301,7 +383,7 @@ $languageNames = array(
'raj' => 'Rajasthaneg',
'rap' => 'Rapanŵi',
'rar' => 'Raratongeg',
- 'rm' => 'Romaunsch',
+ 'rm' => 'Románsh',
'rn' => 'Rwndi',
'ro' => 'Rwmaneg',
'ro-md' => 'Moldofeg',
@@ -314,7 +396,7 @@ $languageNames = array(
'rwk' => 'Rwa',
'sa' => 'Sansgrit',
'sad' => 'Sandäweg',
- 'sah' => 'Iacwteg',
+ 'sah' => 'Sakha',
'sam' => 'Aramaeg Samaria',
'saq' => 'Sambŵrw',
'sas' => 'Sasaceg',
@@ -326,12 +408,19 @@ $languageNames = array(
'sco' => 'Sgoteg',
'sd' => 'Sindhi',
'sdc' => 'Sasareseg Sardinia',
+ 'sdh' => 'Cwrdeg Deheuol',
'se' => 'Sami Gogleddol',
'see' => 'Seneca',
+ 'seh' => 'Sena',
+ 'sei' => 'Seri',
'sel' => 'Selcypeg',
+ 'ses' => 'Koyraboro Senni',
'sg' => 'Sango',
'sga' => 'Hen Wyddeleg',
+ 'sgs' => 'Samogiteg',
'sh' => 'Serbo-Croateg',
+ 'shi' => 'Tachelhit',
+ 'shn' => 'Shan',
'shu' => 'Arabeg Chad',
'si' => 'Sinhaleg',
'sid' => 'Sidamo',
@@ -343,20 +432,26 @@ $languageNames = array(
'smj' => 'Sami Lwle',
'smn' => 'Sami Inari',
'sms' => 'Sami Scolt',
+ 'sn' => 'Shona',
'snk' => 'Soninceg',
'so' => 'Somaleg',
'sog' => 'Sogdeg',
'sq' => 'Albaneg',
'sr' => 'Serbeg',
- 'st' => 'Sesotheg',
+ 'srn' => 'Sranan Tongo',
+ 'srr' => 'Serereg',
+ 'ss' => 'Swati',
+ 'ssy' => 'Saho',
+ 'st' => 'Sesotheg Deheuol',
+ 'stq' => 'Ffriseg Saterland',
'su' => 'Swndaneg',
'suk' => 'Swcwma',
'sus' => 'Swsŵeg',
'sux' => 'Swmereg',
'sv' => 'Swedeg',
'sw' => 'Swahili',
+ 'sw-cd' => 'Swahili’r Congo',
'swb' => 'Comoreg',
- 'swc' => 'Swahili’r Congo',
'syc' => 'Hen Syrieg',
'syr' => 'Syrieg',
'szl' => 'Silesieg',
@@ -364,40 +459,65 @@ $languageNames = array(
'tcy' => 'Tulu',
'te' => 'Telugu',
'tem' => 'Timneg',
+ 'teo' => 'Teso',
+ 'ter' => 'Terena',
'tet' => 'Tetumeg',
'tg' => 'Tajiceg',
'th' => 'Thai',
'ti' => 'Tigrinya',
+ 'tig' => 'Tigreg',
+ 'tiv' => 'Tifeg',
'tk' => 'Twrcmeneg',
+ 'tkl' => 'Tocelaweg',
+ 'tkr' => 'Tsakhureg',
'tl' => 'Tagalog',
'tlh' => 'Klingon',
+ 'tli' => 'Llingit',
+ 'tly' => 'Talysheg',
'tmh' => 'Tamasheceg',
'tn' => 'Tswana',
'to' => 'Tongeg',
+ 'tpi' => 'Tok Pisin',
'tr' => 'Tyrceg',
+ 'trv' => 'Taroko',
'ts' => 'Tsongaeg',
+ 'tsd' => 'Tsaconeg',
'tt' => 'Tatareg',
+ 'tum' => 'Twmbwca',
'tvl' => 'Twfalweg',
'tw' => 'Twi',
+ 'twq' => 'Tasawaq',
'ty' => 'Tahitïeg',
+ 'tyv' => 'Twfwnieg',
+ 'tzm' => 'Tamaseit Canolbarth Moroco',
'udm' => 'Fotiaceg',
'ug' => 'Uighur',
'uga' => 'Wgariteg',
'uk' => 'Wcreineg',
'umb' => 'Umbundu',
- 'und' => 'Iaith Anhysbys',
+ 'und' => 'Iaith anhysbys',
'ur' => 'Wrdw',
'uz' => 'Wsbeceg',
'vai' => 'Faieg',
've' => 'Fendeg',
'vec' => 'Feniseg',
+ 'vep' => 'Feps',
'vi' => 'Fietnameg',
'vls' => 'Fflemeg Gorllewinol',
+ 'vo' => 'Folapük',
+ 'vot' => 'Foteg',
+ 'vun' => 'Funjo',
'wa' => 'Walwneg',
+ 'wae' => 'Walsereg',
'wal' => 'Walamo',
+ 'war' => 'Winarayeg',
+ 'was' => 'Washo',
+ 'wbp' => 'Warlpiri',
'wo' => 'Woloff',
'xal' => 'Calmyceg',
'xh' => 'Xhosa',
+ 'xog' => 'Soga',
+ 'yav' => 'Iangben',
'ybb' => 'Iembaeg',
'yi' => 'Iddew-Almaeneg',
'yo' => 'Iorwba',
@@ -405,70 +525,116 @@ $languageNames = array(
'zap' => 'Zapoteceg',
'zbl' => 'Blisssymbols',
'zea' => 'Zêlandeg',
- 'zgh' => 'Tamazight Safonol Moroco',
+ 'zgh' => 'Tamaseit Safonol',
'zh' => 'Tsieineeg',
'zh-hans' => 'Tsieineeg Symledig',
'zh-hant' => 'Tsieineeg Traddodiadol',
'zu' => 'Swlw',
- 'zun' => 'Zuni',
+ 'zun' => 'Swni',
'zxx' => 'Dim cynnwys ieithyddol',
- 'zza' => 'Zazäeg',
-);
+ 'zza' => 'Sasäeg',
+];
-$currencyNames = array(
+$currencyNames = [
'AED' => 'Dirham Yr Emiradau Arabaidd Unedig',
+ 'AFA' => 'Afghani Afghanistan (1927–2002)',
'AFN' => 'Afghani Afghanistan',
'ALL' => 'Lek Albania',
'AMD' => 'Dram Armenia',
'ANG' => 'Guilder Antilles yr Iseldiroedd',
'AOA' => 'Kwanza Angola',
+ 'AOK' => 'Kwanza Angola (1977–1991)',
+ 'AON' => 'Kwanza Newydd Angola (1990–2000)',
+ 'AOR' => 'Kwanza Ailgymhwysedig Angola (1995–1999)',
+ 'ARA' => 'Austral yr Ariannin',
+ 'ARL' => 'Peso Ley yr Ariannin (1970–1983)',
+ 'ARM' => 'Peso yr Ariannin (1881–1970)',
+ 'ARP' => 'Peso yr Ariannin (1983–1985)',
'ARS' => 'Peso yr Ariannin',
+ 'ATS' => 'Swllt Awstria',
'AUD' => 'Doler Awstralia',
'AWG' => 'Fflorin Aruba',
+ 'AZM' => 'Manat Azerbaijan (1993–2006)',
'AZN' => 'Manat Azerbaijan',
'BAM' => 'Marc Trosadwy Bosnia a Hercegovina',
'BBD' => 'Doler Barbados',
'BDT' => 'Taka Bangladesh',
+ 'BEC' => 'Ffranc Gwlad Belg (arnewidiol)',
+ 'BEF' => 'Ffranc Gwlad Belg',
+ 'BEL' => 'Ffranc Gwlad Belg (ariannol)',
+ 'BGM' => 'Lev Sosialaidd Bwlgaria',
'BGN' => 'Lev Bwlgaria',
+ 'BGO' => 'Lev Bwlgaria (1879–1952)',
'BHD' => 'Dinar Bahrain',
'BIF' => 'Ffranc Burundi',
'BMD' => 'Doler Bermuda',
'BND' => 'Doler Brunei',
'BOB' => 'Boliviano Bolifia',
+ 'BOL' => 'Boliviano Bolifia (1863–1963)',
+ 'BOP' => 'Peso Bolifia',
+ 'BOV' => 'Mvdol Bolifia',
+ 'BRB' => 'Cruzeiro Newydd Brasil (1967–1986)',
+ 'BRC' => 'Cruzado Brasil (1986–1989)',
+ 'BRE' => 'Cruzeiro Brasil (1990–1993)',
'BRL' => 'Real Brasil',
+ 'BRN' => 'Cruzado Newydd Brasil (1989–1990)',
+ 'BRR' => 'Cruzeiro Brasil (1993–1994)',
+ 'BRZ' => 'Cruzeiro Brasil (1942–1967)',
'BSD' => 'Doler y Bahamas',
'BTN' => 'Ngultrum Bhutan',
+ 'BUK' => 'Kyat Byrma',
'BWP' => 'Pula Botswana',
- 'BYR' => 'Rwbl Belarws',
+ 'BYN' => 'Rwbl Belarws',
+ 'BYR' => 'Rwbl Belarws (2000–2016)',
'BZD' => 'Doler Belize',
'CAD' => 'Doler Canada',
'CDF' => 'Ffranc Congo',
+ 'CHE' => 'Ewro WIR',
'CHF' => 'Ffranc y Swistir',
+ 'CHW' => 'Ffranc WIR',
+ 'CLE' => 'Escudo Chile',
+ 'CLF' => 'Uned Cyfrifo Chile (UF)',
'CLP' => 'Peso Chile',
+ 'CNH' => 'Yuan Tsieina (ar y môr)',
+ 'CNX' => 'Doler Banc Pobl Tsieina',
'CNY' => 'Yuan Tsieina',
'COP' => 'Peso Colombia',
+ 'COU' => 'Uned Gwir Werth Colombia',
'CRC' => 'Colón Costa Rica',
- 'CUC' => 'Peso Trosadwy Cuba',
- 'CUP' => 'Peso Cuba',
+ 'CUC' => 'Peso Trosadwy Ciwba',
+ 'CUP' => 'Peso Ciwba',
'CVE' => 'Esgwdo Cabo Verde',
- 'CZK' => 'Koruna Tsiec',
+ 'CYP' => 'Punt Cyprus',
+ 'CZK' => 'Koruna’r Weriniaeth Tsiec',
+ 'DDM' => 'Marc Dwyrain yr Almaen',
+ 'DEM' => 'Marc yr Almaen',
'DJF' => 'Ffranc Djibouti',
'DKK' => 'Krone Denmarc',
'DOP' => 'Peso Gweriniaeth Dominica',
'DZD' => 'Dinar Algeria',
+ 'ECS' => 'Sucre Ecuador',
+ 'ECV' => 'Uned Gwerth Gyson Ecuador',
+ 'EEK' => 'Kroon Estonia',
'EGP' => 'Punt Yr Aifft',
'ERN' => 'Nakfa Eritrea',
'ETB' => 'Birr Ethiopia',
'EUR' => 'Ewro',
+ 'FIM' => 'Markka’r Ffindir',
'FJD' => 'Doler Ffiji',
'FKP' => 'Punt Ynysoedd Falkland/Malvinas',
+ 'FRF' => 'Ffranc Ffrainc',
'GBP' => 'Punt Prydain',
+ 'GEK' => 'Kupon Larit Georgia',
'GEL' => 'Lari Georgia',
+ 'GHC' => 'Cedi Ghana (1979–2007)',
'GHS' => 'Cedi Ghana',
'GIP' => 'Punt Gibraltar',
'GMD' => 'Dalasi Gambia',
'GNF' => 'Ffranc Guinée',
+ 'GNS' => 'Syli Guinée',
+ 'GQE' => 'Ekwele Guinea Gyhydeddol',
'GTQ' => 'Quetzal Guatemala',
+ 'GWP' => 'Peso Guiné-Bissau',
'GYD' => 'Doler Guyana',
'HKD' => 'Doler Hong Kong',
'HNL' => 'Lempira Honduras',
@@ -477,10 +643,13 @@ $currencyNames = array(
'HUF' => 'Fforint Hwngari',
'IDR' => 'Rupiah Indonesia',
'IEP' => 'Punt Iwerddon',
+ 'ILP' => 'Punt Israel',
+ 'ILR' => 'Shegel Israel (1980–1985)',
'ILS' => 'Shegel Newydd Israel',
'INR' => 'Rwpî India',
'IQD' => 'Dinar Irac',
'IRR' => 'Rial Iran',
+ 'ISJ' => 'Króna Gwlad yr Iâ (1918 – 1981)',
'ISK' => 'Króna Gwlad yr Iâ',
'JMD' => 'Doler Jamaica',
'JOD' => 'Dinar Gwlad yr Iorddonen',
@@ -490,7 +659,9 @@ $currencyNames = array(
'KHR' => 'Riel Cambodia',
'KMF' => 'Ffranc Comoros',
'KPW' => 'Won Gogledd Corea',
- 'KRW' => 'Won De Korea',
+ 'KRH' => 'Hwan De Corea (1953–1962)',
+ 'KRO' => 'Won De Corea (1945–1953)',
+ 'KRW' => 'Won De Corea',
'KWD' => 'Dinar Kuwait',
'KYD' => 'Doler Ynysoedd Cayman',
'KZT' => 'Tenge Kazakstan',
@@ -498,38 +669,57 @@ $currencyNames = array(
'LBP' => 'Punt Libanus',
'LKR' => 'Rwpî Sri Lanka',
'LRD' => 'Doler Liberia',
+ 'LSL' => 'Loti Lesotho',
'LTL' => 'Litas Lithwania',
+ 'LTT' => 'Talonas Lithwania',
+ 'LUF' => 'Ffranc Lwcsembwrg',
'LVL' => 'Lats Latfia',
+ 'LVR' => 'Rwbl Latfia',
'LYD' => 'Dinar Libya',
'MAD' => 'Dirham Moroco',
+ 'MAF' => 'Ffranc Moroco',
+ 'MCF' => 'Ffranc Monaco',
'MDL' => 'Leu Moldofa',
'MGA' => 'Ariary Madagascar',
+ 'MGF' => 'Ffranc Madagascar',
'MKD' => 'Denar Macedonia',
+ 'MLF' => 'Ffranc Mali',
'MMK' => 'Kyat Myanmar',
'MNT' => 'Tugrik Mongolia',
'MOP' => 'Pataca Macau',
- 'MRO' => 'Ouguiya Mauritania',
+ 'MRO' => 'Ouguiya Mauritania (1973–2017)',
+ 'MRU' => 'Ouguiya Mauritania',
'MUR' => 'Rwpî Mauritius',
+ 'MVP' => 'Rwpî’r Maldives (1947–1981)',
'MVR' => 'Rufiyaa’r Maldives',
'MWK' => 'Kwacha Malawi',
- 'MXN' => 'Peso México',
+ 'MXN' => 'Peso Mecsico',
+ 'MXP' => 'Peso Arian México (1861–1992)',
+ 'MXV' => 'Uned Fuddsoddi México',
'MYR' => 'Ringgit Malaysia',
+ 'MZE' => 'Escudo Mozambique',
+ 'MZM' => 'Metical Mozambique (1980–2006)',
'MZN' => 'Metical Mozambique',
'NAD' => 'Doler Namibia',
'NGN' => 'Naira Nigeria',
- 'NIO' => 'Córdoba Nicaragua',
+ 'NIC' => 'Córdoba Nicaragua (1988–1991)',
+ 'NIO' => 'Cordoba Nicaragwa',
+ 'NLG' => 'Guilder yr Iseldiroedd',
'NOK' => 'Krone Norwy',
'NPR' => 'Rwpî Nepal',
'NZD' => 'Doler Seland Newydd',
'OMR' => 'Rial Oman',
'PAB' => 'Balboa Panama',
- 'PEN' => 'Nuevo Sol Periw',
+ 'PEI' => 'Inti Periw',
+ 'PEN' => 'Sol Periw',
+ 'PES' => 'Sol Periw (1863–1965)',
'PGK' => 'Kina Papua Guinea Newydd',
- 'PHP' => 'Peso Pilipinas',
+ 'PHP' => 'Peso’r Philipinau',
'PKR' => 'Rwpî Pacistan',
'PLN' => 'Zloty Gwlad Pwyl',
'PYG' => 'Guarani Paraguay',
'QAR' => 'Rial Qatar',
+ 'RHD' => 'Doler Rhodesia',
'RON' => 'Leu Rwmania',
'RSD' => 'Dinar Serbia',
'RUB' => 'Rwbl Rwsia',
@@ -537,75 +727,326 @@ $currencyNames = array(
'SAR' => 'Riyal Saudi Arabia',
'SBD' => 'Doler Ynysoedd Solomon',
'SCR' => 'Rwpî Seychelles',
+ 'SDD' => 'Dinar Sudan (1992–2007)',
'SDG' => 'Punt Sudan',
+ 'SDP' => 'Punt Sudan (1957–1998)',
'SEK' => 'Krona Sweden',
'SGD' => 'Doler Singapore',
- 'SHP' => 'Punt Saint Helena',
+ 'SHP' => 'Punt St Helena',
'SLL' => 'Leone Sierra Leone',
'SOS' => 'Swllt Somalia',
'SRD' => 'Doler Surinam',
+ 'SRG' => 'Guilder Surinam',
'SSP' => 'Punt De Sudan',
- 'STD' => 'Dobra São Tomé a Príncipe',
+ 'STD' => 'Dobra São Tomé a Príncipe (1977–2017)',
+ 'STN' => 'Dobra São Tomé a Príncipe',
+ 'SVC' => 'Colón El Salvador',
'SYP' => 'Punt Syria',
'SZL' => 'Lilangeni Gwlad Swazi',
'THB' => 'Baht Gwlad Thai',
+ 'TJR' => 'Rwbl Tajikistan',
'TJS' => 'Somoni Tajikistan',
+ 'TMM' => 'Manat Turkmenistan (1993–2009)',
'TMT' => 'Manat Turkmenistan',
'TND' => 'Dinar Tunisia',
'TOP' => 'Paʻanga Tonga',
+ 'TPE' => 'Escudo Timor',
+ 'TRL' => 'Lira Twrci (1922–2005)',
'TRY' => 'Lira Twrci',
'TTD' => 'Doler Trinidad a Tobago',
'TWD' => 'Doler Newydd Taiwan',
'TZS' => 'Swllt Tanzania',
'UAH' => 'Hryvnia Wcráin',
+ 'UGS' => 'Swllt Uganda (1966–1987)',
'UGX' => 'Swllt Uganda',
'USD' => 'Doler UDA',
+ 'USN' => 'Doler UDA (y diwrnod nesaf)',
+ 'USS' => 'Doler UDA (yr un diwrnod)',
+ 'UYP' => 'Peso Uruguay (1975–1993)',
'UYU' => 'Peso Uruguay',
'UZS' => 'Som Uzbekistan',
- 'VEF' => 'Bolívar Venezuela',
+ 'VEB' => 'Bolívar Venezuela (1871–2008)',
+ 'VEF' => 'Bolívar Venezuela (2008–2018)',
+ 'VES' => 'Bolívar Venezuela',
'VND' => 'Dong Fietnam',
+ 'VNN' => 'Dong Fietnam (1978–1985)',
'VUV' => 'Vatu Vanuatu',
'WST' => 'Tala Samoa',
- 'XAF' => 'Ffranc CFA y BEAC',
+ 'XAF' => 'Ffranc CFA Canol Affrica',
+ 'XAG' => 'Arian',
+ 'XAU' => 'Aur',
+ 'XBA' => 'Uned Cyfansawdd Ewropeaidd',
+ 'XBB' => 'Uned Ariannol Ewropeaidd',
'XCD' => 'Doler Dwyrain y Caribî',
- 'XOF' => 'Ffranc CFA y BCEAO',
- 'XPF' => 'Ffranc CPF',
- 'XXX' => 'Arian Cyfredol Anhysbys',
+ 'XEU' => 'Uned Arian Cyfred Ewropeaidd',
+ 'XOF' => 'Ffranc CFA Gorllewin Affrica',
+ 'XPD' => 'Paladiwm',
+ 'XPF' => 'Ffranc CFP',
+ 'XPT' => 'Platinwm',
+ 'XSU' => 'Sucre',
+ 'XXX' => 'Arian Cyfred Anhysbys',
+ 'YDD' => 'Dinar Yemen',
'YER' => 'Rial Yemen',
+ 'ZAL' => 'Rand (ariannol) De Affrica',
'ZAR' => 'Rand De Affrica',
'ZMK' => 'Kwacha Zambia (1968–2012)',
'ZMW' => 'Kwacha Zambia',
-);
+ 'ZRN' => 'Zaire Newydd Zaire (1993–1998)',
+ 'ZRZ' => 'Zaire Zaire (1971–1993)',
+ 'ZWD' => 'Doler Zimbabwe (1980–2008)',
+ 'ZWL' => 'Doler Zimbabwe (2009)',
+ 'ZWR' => 'Doler Zimbabwe (2008)',
+];
-$currencySymbols = array(
+$currencySymbols = [
+ 'AED' => 'AED',
+ 'AFA' => 'AFA',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'AOK' => 'AOK',
+ 'AON' => 'AON',
+ 'AOR' => 'AOR',
+ 'ARA' => 'ARA',
+ 'ARL' => 'ARL',
+ 'ARM' => 'ARM',
+ 'ARP' => 'ARP',
+ 'ARS' => 'ARS',
+ 'ATS' => 'ATS',
'AUD' => 'A$',
+ 'AWG' => 'AWG',
+ 'AZM' => 'AZM',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BEC' => 'BEC',
+ 'BEF' => 'BEF',
+ 'BEL' => 'BEL',
+ 'BGM' => 'BGM',
+ 'BGN' => 'BGN',
+ 'BGO' => 'BGO',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BOL' => 'BOL',
+ 'BOP' => 'BOP',
+ 'BOV' => 'BOV',
+ 'BRB' => 'BRB',
+ 'BRC' => 'BRC',
+ 'BRE' => 'BRE',
'BRL' => 'R$',
+ 'BRN' => 'BRN',
+ 'BRR' => 'BRR',
+ 'BRZ' => 'BRZ',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BUK' => 'BUK',
+ 'BWP' => 'BWP',
+ 'BYN' => 'BYN',
+ 'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CA$',
+ 'CDF' => 'CDF',
+ 'CHE' => 'CHE',
+ 'CHF' => 'CHF',
+ 'CHW' => 'CHW',
+ 'CLE' => 'CLE',
+ 'CLF' => 'CLF',
+ 'CLP' => 'CLP',
+ 'CNH' => 'CNH',
'CNY' => 'CN¥',
+ 'COP' => 'COP',
+ 'COU' => 'COU',
'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CYP' => 'CYP',
+ 'CZK' => 'CZK',
+ 'DDM' => 'DDM',
+ 'DEM' => 'DEM',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'ECS' => 'ECS',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
'EUR' => '€',
+ 'FIM' => 'FIM',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'FRF' => 'FRF',
'GBP' => '£',
+ 'GEK' => 'GEK',
+ 'GEL' => 'GEL',
+ 'GHC' => 'GHC',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GNS' => 'GNS',
+ 'GQE' => 'GQE',
'GTQ' => 'GTQ',
+ 'GWP' => 'GWP',
+ 'GYD' => 'GYD',
'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'IEP' => 'IEP',
+ 'ILP' => 'ILP',
'ILS' => '₪',
'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
'JPY' => 'JP¥',
- 'KRW' => '₩',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRH' => 'KRH',
+ 'KRO' => 'KRO',
+ 'KRW' => 'KRW',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LSL' => 'LSL',
+ 'LTL' => 'LTL',
+ 'LTT' => 'LTT',
+ 'LUF' => 'LUF',
+ 'LVL' => 'LVL',
+ 'LVR' => 'LVR',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MAF' => 'MAF',
+ 'MCF' => 'MCF',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MGF' => 'MGF',
+ 'MKD' => 'MKD',
+ 'MLF' => 'MLF',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
'MXN' => 'MX$',
+ 'MXP' => 'MXP',
+ 'MXV' => 'MXV',
+ 'MYR' => 'MYR',
+ 'MZE' => 'MZE',
+ 'MZM' => 'MZM',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIC' => 'NIC',
+ 'NIO' => 'NIO',
+ 'NLG' => 'NLG',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
'NZD' => 'NZ$',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEI' => 'PEI',
+ 'PEN' => 'PEN',
+ 'PES' => 'PES',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RHD' => 'RHD',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDD' => 'SDD',
+ 'SDG' => 'SDG',
+ 'SDP' => 'SDP',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SRG' => 'SRG',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'STN' => 'Db',
+ 'SVC' => 'SVC',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
'THB' => '฿',
+ 'TJR' => 'TJR',
+ 'TJS' => 'TJS',
+ 'TMM' => 'TMM',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TPE' => 'TPE',
+ 'TRL' => 'TRL',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGS' => 'UGS',
+ 'UGX' => 'UGX',
'USD' => 'US$',
+ 'USN' => 'USN',
+ 'USS' => 'USS',
+ 'UYP' => 'UYP',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEB' => 'VEB',
+ 'VEF' => 'VEF',
'VND' => '₫',
+ 'VNN' => 'VNN',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
'XAF' => 'FCFA',
'XCD' => 'EC$',
+ 'XEU' => 'XEU',
'XOF' => 'CFA',
'XPF' => 'CFPF',
-);
+ 'XXX' => 'XXX',
+ 'YDD' => 'YDD',
+ 'YER' => 'YER',
+ 'ZAL' => 'ZAL',
+ 'ZAR' => 'ZAR',
+ 'ZMK' => 'ZMK',
+ 'ZMW' => 'ZMW',
+ 'ZRN' => 'ZRN',
+ 'ZRZ' => 'ZRZ',
+ 'ZWD' => 'ZWD',
+ 'ZWL' => 'ZWL',
+ 'ZWR' => 'ZWR',
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'Ynys Ascension',
'AD' => 'Andorra',
'AE' => 'Emiradau Arabaidd Unedig',
@@ -614,7 +1055,6 @@ $countryNames = array(
'AI' => 'Anguilla',
'AL' => 'Albania',
'AM' => 'Armenia',
- 'AN' => 'Ynysoedd Caribî yr Iseldiroedd',
'AO' => 'Angola',
'AQ' => 'Antarctica',
'AR' => 'Yr Ariannin',
@@ -624,7 +1064,7 @@ $countryNames = array(
'AW' => 'Aruba',
'AX' => 'Ynysoedd Åland',
'AZ' => 'Azerbaijan',
- 'BA' => 'Bosnia a Hercegovina',
+ 'BA' => 'Bosnia & Herzegovina',
'BB' => 'Barbados',
'BD' => 'Bangladesh',
'BE' => 'Gwlad Belg',
@@ -664,7 +1104,7 @@ $countryNames = array(
'CW' => 'Curaçao',
'CX' => 'Ynys y Nadolig',
'CY' => 'Cyprus',
- 'CZ' => 'Gweriniaeth Tsiec',
+ 'CZ' => 'Tsiecia',
'DE' => 'Yr Almaen',
'DG' => 'Diego Garcia',
'DJ' => 'Djibouti',
@@ -681,11 +1121,12 @@ $countryNames = array(
'ES' => 'Sbaen',
'ET' => 'Ethiopia',
'EU' => 'Yr Undeb Ewropeaidd',
+ 'EZ' => 'Ardal yr Ewro',
'FI' => 'Y Ffindir',
'FJ' => 'Fiji',
'FK' => 'Ynysoedd y Falkland/Malvinas',
'FM' => 'Micronesia',
- 'FO' => 'Føroyar',
+ 'FO' => 'Ynysoedd Ffaro',
'FR' => 'Ffrainc',
'GA' => 'Gabon',
'GB' => 'DU',
@@ -789,7 +1230,7 @@ $countryNames = array(
'PE' => 'Periw',
'PF' => 'Polynesia Ffrengig',
'PG' => 'Papua Guinea Newydd',
- 'PH' => 'Pilipinas',
+ 'PH' => 'Y Philipinau',
'PK' => 'Pakistan',
'PL' => 'Gwlad Pwyl',
'PM' => 'Saint-Pierre-et-Miquelon',
@@ -818,7 +1259,7 @@ $countryNames = array(
'SK' => 'Slofacia',
'SL' => 'Sierra Leone',
'SM' => 'San Marino',
- 'SN' => 'Sénégal',
+ 'SN' => 'Senegal',
'SO' => 'Somalia',
'SR' => 'Suriname',
'SS' => 'De Swdan',
@@ -847,6 +1288,7 @@ $countryNames = array(
'UA' => 'Wcráin',
'UG' => 'Uganda',
'UM' => 'Ynysoedd Pellennig UDA',
+ 'UN' => 'UN',
'US' => 'UDA',
'UY' => 'Uruguay',
'UZ' => 'Uzbekistan',
@@ -865,17 +1307,35 @@ $countryNames = array(
'ZA' => 'De Affrica',
'ZM' => 'Zambia',
'ZW' => 'Zimbabwe',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-few' => '{0} canrif',
+ 'century-many' => '{0} canrif',
+ 'century-one' => '{0} canrif',
+ 'century-other' => '{0} canrif',
+ 'century-two' => '{0} ganrif',
+ 'century-zero' => '{0} canrif',
'day-few' => '{0} diwrnod',
- 'day-future-few' => 'Ymhen tridiau',
- 'day-future-many' => 'Ymhen {0} diwrnod',
- 'day-future-one' => 'Ymhen diwrnod',
- 'day-future-other' => 'Ymhen {0} diwrnod',
- 'day-future-two' => 'Ymhen deuddydd',
- 'day-future-zero' => 'Ymhen {0} diwrnod',
+ 'day-future-few' => 'ymhen {0} diwrnod',
+ 'day-future-many' => 'ymhen {0} diwrnod',
+ 'day-future-one' => 'ymhen diwrnod',
+ 'day-future-other' => 'ymhen {0} diwrnod',
+ 'day-future-two' => 'ymhen deuddydd',
+ 'day-future-zero' => 'ymhen {0} diwrnod',
'day-many' => '{0} diwrnod',
+ 'day-narrow-future-few' => 'ymhen {0} diwrnod',
+ 'day-narrow-future-many' => 'ymhen {0} diwrnod',
+ 'day-narrow-future-one' => 'ymhen {0} diwrnod',
+ 'day-narrow-future-other' => 'ymhen {0} diwrnod',
+ 'day-narrow-future-two' => 'ymhen {0} diwrnod',
+ 'day-narrow-future-zero' => 'ymhen {0} diwrnod',
+ 'day-narrow-past-few' => '{0} diwrnod yn ôl',
+ 'day-narrow-past-many' => '{0} diwrnod yn ôl',
+ 'day-narrow-past-one' => '{0} diwrnod yn ôl',
+ 'day-narrow-past-other' => '{0} diwrnod yn ôl',
+ 'day-narrow-past-two' => '{0} ddiwrnod yn ôl',
+ 'day-narrow-past-zero' => '{0} diwrnod yn ôl',
'day-one' => '{0} diwrnod',
'day-other' => '{0} diwrnod',
'day-past-few' => '{0} diwrnod yn ôl',
@@ -884,32 +1344,104 @@ $timeUnits = array(
'day-past-other' => '{0} diwrnod yn ôl',
'day-past-two' => '{0} ddiwrnod yn ôl',
'day-past-zero' => '{0} diwrnod yn ôl',
+ 'day-short-future-few' => 'ymhen {0} diwrnod',
+ 'day-short-future-many' => 'ymhen {0} diwrnod',
+ 'day-short-future-one' => 'ymhen diwrnod',
+ 'day-short-future-other' => 'ymhen {0} diwrnod',
+ 'day-short-future-two' => 'ymhen deuddydd',
+ 'day-short-future-zero' => 'ymhen {0} diwrnod',
'day-short-past-few' => '{0} diwrnod yn ôl',
'day-short-past-many' => '{0} diwrnod yn ôl',
'day-short-past-one' => '{0} diwrnod yn ôl',
'day-short-past-other' => '{0} diwrnod yn ôl',
- 'day-short-past-two' => '{0} diwrnod yn ôl',
+ 'day-short-past-two' => '{0} ddiwrnod yn ôl',
'day-short-past-zero' => '{0} diwrnod yn ôl',
'day-two' => '{0} ddiwrnod',
'day-zero' => '{0} diwrnod',
+ 'fri-future-few' => 'ymhen {0} dydd Gwener',
+ 'fri-future-many' => 'ymhen {0} dydd Gwener',
+ 'fri-future-one' => 'ymhen {0} dydd Gwener',
+ 'fri-future-other' => 'ymhen {0} dydd Gwener',
+ 'fri-future-two' => 'ymhen {0} dydd Gwener',
+ 'fri-future-zero' => 'ymhen {0} dydd Gwener',
+ 'fri-narrow-future-few' => 'ymhen {0} dydd Gwener',
+ 'fri-narrow-future-many' => 'ymhen {0} dydd Gwener',
+ 'fri-narrow-future-one' => 'ymhen {0} dydd Gwener',
+ 'fri-narrow-future-other' => 'ymhen {0} dydd Gwener',
+ 'fri-narrow-future-two' => 'ymhen {0} dydd Gwener',
+ 'fri-narrow-future-zero' => 'ymhen {0} dydd Gwener',
+ 'fri-narrow-past-few' => '{0} dydd Gwener yn ôl',
+ 'fri-narrow-past-many' => '{0} dydd Gwener yn ôl',
+ 'fri-narrow-past-one' => '{0} dydd Gwener yn ôl',
+ 'fri-narrow-past-other' => '{0} dydd Gwener yn ôl',
+ 'fri-narrow-past-two' => '{0} dydd Gwener yn ôl',
+ 'fri-narrow-past-zero' => '{0} dydd Gwener yn ôl',
+ 'fri-past-few' => '{0} dydd Gwener yn ôl',
+ 'fri-past-many' => '{0} dydd Gwener yn ôl',
+ 'fri-past-one' => '{0} dydd Gwener yn ôl',
+ 'fri-past-other' => '{0} dydd Gwener yn ôl',
+ 'fri-past-two' => '{0} dydd Gwener yn ôl',
+ 'fri-past-zero' => '{0} dydd Gwener yn ôl',
+ 'fri-short-future-few' => 'ymhen {0} dydd Gwener',
+ 'fri-short-future-many' => 'ymhen {0} dydd Gwener',
+ 'fri-short-future-one' => 'ymhen {0} dydd Gwener',
+ 'fri-short-future-other' => 'ymhen {0} dydd Gwener',
+ 'fri-short-future-two' => 'ymhen {0} dydd Gwener',
+ 'fri-short-future-zero' => 'ymhen {0} dydd Gwener',
+ 'fri-short-past-few' => '{0} dydd Gwener yn ôl',
+ 'fri-short-past-many' => '{0} dydd Gwener yn ôl',
+ 'fri-short-past-one' => '{0} dydd Gwener yn ôl',
+ 'fri-short-past-other' => '{0} dydd Gwener yn ôl',
+ 'fri-short-past-two' => '{0} dydd Gwener yn ôl',
+ 'fri-short-past-zero' => '{0} dydd Gwener yn ôl',
'hour-few' => '{0} awr',
- 'hour-future-few' => 'Ymhen {0} awr',
- 'hour-future-many' => 'Ymhen {0} awr',
- 'hour-future-one' => 'Ymhen {0} awr',
- 'hour-future-other' => 'Ymhen {0} awr',
- 'hour-future-two' => 'Ymhen {0} awr',
- 'hour-future-zero' => 'Ymhen {0} awr',
+ 'hour-future-few' => 'ymhen {0} awr',
+ 'hour-future-many' => 'ymhen {0} awr',
+ 'hour-future-one' => 'ymhen awr',
+ 'hour-future-other' => 'ymhen {0} awr',
+ 'hour-future-two' => 'ymhen {0} awr',
+ 'hour-future-zero' => 'ymhen {0} awr',
'hour-many' => '{0} awr',
+ 'hour-narrow-future-few' => 'ymhen {0} awr',
+ 'hour-narrow-future-many' => 'ymhen {0} awr',
+ 'hour-narrow-future-one' => 'ymhen {0} awr',
+ 'hour-narrow-future-other' => 'ymhen {0} awr',
+ 'hour-narrow-future-two' => 'ymhen {0} awr',
+ 'hour-narrow-future-zero' => 'ymhen {0} awr',
+ 'hour-narrow-past-few' => '{0} awr yn ôl',
+ 'hour-narrow-past-many' => '{0} awr yn ôl',
+ 'hour-narrow-past-one' => '{0} awr yn ôl',
+ 'hour-narrow-past-other' => '{0} awr yn ôl',
+ 'hour-narrow-past-two' => '{0} awr yn ôl',
+ 'hour-narrow-past-zero' => '{0} awr yn ôl',
'hour-one' => '{0} awr',
'hour-other' => '{0} awr',
'hour-past-few' => '{0} awr yn ôl',
'hour-past-many' => '{0} awr yn ôl',
- 'hour-past-one' => 'awr yn ôl',
+ 'hour-past-one' => '{0} awr yn ôl',
'hour-past-other' => '{0} awr yn ôl',
'hour-past-two' => '{0} awr yn ôl',
'hour-past-zero' => '{0} awr yn ôl',
+ 'hour-short-future-few' => 'ymhen {0} awr',
+ 'hour-short-future-many' => 'ymhen {0} awr',
+ 'hour-short-future-one' => 'ymhen awr',
+ 'hour-short-future-other' => 'ymhen {0} awr',
+ 'hour-short-future-two' => 'ymhen {0} awr',
+ 'hour-short-future-zero' => 'ymhen {0} awr',
+ 'hour-short-past-few' => '{0} awr yn ôl',
+ 'hour-short-past-many' => '{0} awr yn ôl',
+ 'hour-short-past-one' => 'awr yn ôl',
+ 'hour-short-past-other' => '{0} awr yn ôl',
+ 'hour-short-past-two' => '{0} awr yn ôl',
+ 'hour-short-past-zero' => '{0} awr yn ôl',
'hour-two' => '{0} awr',
'hour-zero' => '{0} awr',
+ 'microsecond-few' => '{0} microeiliadau',
+ 'microsecond-many' => '{0} microeiliadau',
+ 'microsecond-one' => '{0} microeiliadau',
+ 'microsecond-other' => '{0} microeiliadau',
+ 'microsecond-two' => '{0} microeiliadau',
+ 'microsecond-zero' => '{0} microeiliadau',
'millisecond-few' => '{0} milieiliad',
'millisecond-many' => '{0} milieiliad',
'millisecond-one' => '{0} milieiliad',
@@ -917,36 +1449,102 @@ $timeUnits = array(
'millisecond-two' => '{0} filieiliad',
'millisecond-zero' => '{0} milieiliad',
'minute-few' => '{0} munud',
- 'minute-future-few' => 'Ymhen {0} munud',
- 'minute-future-many' => 'Ymhen {0} munud',
- 'minute-future-one' => 'Ymhen munud',
- 'minute-future-other' => 'Ymhen {0} munud',
- 'minute-future-two' => 'Ymhen {0} funud',
- 'minute-future-zero' => 'Ymhen {0} munud',
+ 'minute-future-few' => 'ymhen {0} munud',
+ 'minute-future-many' => 'ymhen {0} munud',
+ 'minute-future-one' => 'ymhen {0} munud',
+ 'minute-future-other' => 'ymhen {0} munud',
+ 'minute-future-two' => 'ymhen {0} munud',
+ 'minute-future-zero' => 'ymhen {0} munud',
'minute-many' => '{0} munud',
+ 'minute-narrow-future-few' => 'ymhen {0} mun.',
+ 'minute-narrow-future-many' => 'ymhen {0} mun.',
+ 'minute-narrow-future-one' => 'ymhen {0} mun.',
+ 'minute-narrow-future-other' => 'ymhen {0} mun.',
+ 'minute-narrow-future-two' => 'ymhen {0} mun.',
+ 'minute-narrow-future-zero' => 'ymhen {0} mun.',
+ 'minute-narrow-past-few' => '{0} mun. yn ôl',
+ 'minute-narrow-past-many' => '{0} mun. yn ôl',
+ 'minute-narrow-past-one' => '{0} mun. yn ôl',
+ 'minute-narrow-past-other' => '{0} mun. yn ôl',
+ 'minute-narrow-past-two' => '{0} mun. yn ôl',
+ 'minute-narrow-past-zero' => '{0} mun. yn ôl',
'minute-one' => '{0} munud',
'minute-other' => '{0} munud',
'minute-past-few' => '{0} munud yn ôl',
'minute-past-many' => '{0} munud yn ôl',
'minute-past-one' => '{0} munud yn ôl',
'minute-past-other' => '{0} munud yn ôl',
- 'minute-past-two' => '{0} funud yn ôl',
+ 'minute-past-two' => '{0} munud yn ôl',
'minute-past-zero' => '{0} munud yn ôl',
+ 'minute-short-future-few' => 'ymhen {0} munud',
+ 'minute-short-future-many' => 'ymhen {0} munud',
+ 'minute-short-future-one' => 'ymhen {0} mun.',
+ 'minute-short-future-other' => 'ymhen {0} munud',
+ 'minute-short-future-two' => 'ymhen {0} fun.',
+ 'minute-short-future-zero' => 'ymhen {0} munud',
+ 'minute-short-past-few' => '{0} munud yn ôl',
+ 'minute-short-past-many' => '{0} munud yn ôl',
+ 'minute-short-past-one' => '{0} munud yn ôl',
+ 'minute-short-past-other' => '{0} munud yn ôl',
+ 'minute-short-past-two' => '{0} fun. yn ôl',
+ 'minute-short-past-zero' => '{0} munud yn ôl',
'minute-two' => '{0} funud',
'minute-zero' => '{0} munud',
+ 'mon-future-few' => 'ymhen {0} Dydd Llun',
+ 'mon-future-many' => 'ymhen {0} Dydd Llun',
+ 'mon-future-one' => 'ymhen {0} Dydd Llun',
+ 'mon-future-other' => 'ymhen {0} Dydd Llun',
+ 'mon-future-two' => 'ymhen {0} Dydd Llun',
+ 'mon-future-zero' => 'ymhen {0} Dydd Llun',
+ 'mon-narrow-future-few' => 'ymhen {0} Dydd Llun',
+ 'mon-narrow-future-many' => 'ymhen {0} Dydd Llun',
+ 'mon-narrow-future-one' => 'ymhen {0} Dydd Llun',
+ 'mon-narrow-future-other' => 'ymhen {0} Dydd Llun',
+ 'mon-narrow-future-two' => 'ymhen {0} Dydd Llun',
+ 'mon-narrow-future-zero' => 'ymhen {0} Dydd Llun',
+ 'mon-narrow-past-few' => '{0} dydd Llun yn ôl',
+ 'mon-narrow-past-many' => '{0} dydd Llun yn ôl',
+ 'mon-narrow-past-one' => '{0} dydd Llun yn ôl',
+ 'mon-narrow-past-other' => '{0} dydd Llun yn ôl',
+ 'mon-narrow-past-two' => '{0} dydd Llun yn ôl',
+ 'mon-narrow-past-zero' => '{0} dydd Llun yn ôl',
+ 'mon-past-few' => '{0} dydd Llun yn ôl',
+ 'mon-past-many' => '{0} dydd Llun yn ôl',
+ 'mon-past-one' => '{0} dydd Llun yn ôl',
+ 'mon-past-other' => '{0} dydd Llun yn ôl',
+ 'mon-past-two' => '{0} dydd Llun yn ôl',
+ 'mon-past-zero' => '{0} dydd Llun yn ôl',
+ 'mon-short-future-few' => 'ymhen {0} Dydd Llun',
+ 'mon-short-future-many' => 'ymhen {0} Dydd Llun',
+ 'mon-short-future-one' => 'ymhen {0} Dydd Llun',
+ 'mon-short-future-other' => 'ymhen {0} Dydd Llun',
+ 'mon-short-future-two' => 'ymhen {0} Dydd Llun',
+ 'mon-short-future-zero' => 'ymhen {0} Dydd Llun',
+ 'mon-short-past-few' => '{0} dydd Llun yn ôl',
+ 'mon-short-past-many' => '{0} dydd Llun yn ôl',
+ 'mon-short-past-one' => '{0} dydd Llun yn ôl',
+ 'mon-short-past-other' => '{0} dydd Llun yn ôl',
+ 'mon-short-past-two' => '{0} dydd Llun yn ôl',
+ 'mon-short-past-zero' => '{0} dydd Llun yn ôl',
'month-few' => '{0} mis',
- 'month-future-few' => 'Ymhen {0} mis',
- 'month-future-many' => 'Ymhen {0} mis',
- 'month-future-one' => 'Ymhen mis',
- 'month-future-other' => 'Ymhen {0} mis',
- 'month-future-two' => 'Ymhen deufis',
- 'month-future-zero' => 'Ymhen {0} mis',
+ 'month-future-few' => 'ymhen {0} mis',
+ 'month-future-many' => 'ymhen {0} mis',
+ 'month-future-one' => 'ymhen mis',
+ 'month-future-other' => 'ymhen {0} mis',
+ 'month-future-two' => 'ymhen deufis',
+ 'month-future-zero' => 'ymhen {0} mis',
'month-many' => '{0} mis',
+ 'month-narrow-future-few' => 'ymhen {0} mis',
+ 'month-narrow-future-many' => 'ymhen {0} mis',
+ 'month-narrow-future-one' => 'ymhen mis',
+ 'month-narrow-future-other' => 'ymhen {0} mis',
+ 'month-narrow-future-two' => 'ymhen deufis',
+ 'month-narrow-future-zero' => 'ymhen {0} mis',
'month-narrow-past-few' => '{0} mis yn ôl',
'month-narrow-past-many' => '{0} mis yn ôl',
'month-narrow-past-one' => '{0} mis yn ôl',
'month-narrow-past-other' => '{0} mis yn ôl',
- 'month-narrow-past-two' => '{0} mis yn ôl',
+ 'month-narrow-past-two' => '{0} fis yn ôl',
'month-narrow-past-zero' => '{0} mis yn ôl',
'month-one' => '{0} mis',
'month-other' => '{0} mis',
@@ -956,40 +1554,304 @@ $timeUnits = array(
'month-past-other' => '{0} mis yn ôl',
'month-past-two' => '{0} fis yn ôl',
'month-past-zero' => '{0} mis yn ôl',
+ 'month-short-future-few' => 'ymhen {0} mis',
+ 'month-short-future-many' => 'ymhen {0} mis',
+ 'month-short-future-one' => 'ymhen mis',
+ 'month-short-future-other' => 'ymhen {0} mis',
+ 'month-short-future-two' => 'ymhen deufis',
+ 'month-short-future-zero' => 'ymhen {0} mis',
'month-short-past-few' => '{0} mis yn ôl',
'month-short-past-many' => '{0} mis yn ôl',
'month-short-past-one' => '{0} mis yn ôl',
'month-short-past-other' => '{0} mis yn ôl',
- 'month-short-past-two' => '{0} mis yn ôl',
+ 'month-short-past-two' => 'deufis yn ôl',
'month-short-past-zero' => '{0} mis yn ôl',
'month-two' => '{0} fis',
'month-zero' => '{0} mis',
+ 'nanosecond-few' => '{0} nanoeiliadau',
+ 'nanosecond-many' => '{0} nanoeiliadau',
+ 'nanosecond-one' => '{0} nanoeiliadau',
+ 'nanosecond-other' => '{0} nanoeiliadau',
+ 'nanosecond-two' => '{0} nanoeiliadau',
+ 'nanosecond-zero' => '{0} nanoeiliadau',
+ 'quarter-future-few' => 'ymhen {0} chwarter',
+ 'quarter-future-many' => 'ymhen {0} chwarter',
+ 'quarter-future-one' => 'ymhen {0} chwarter',
+ 'quarter-future-other' => 'ymhen {0} chwarter',
+ 'quarter-future-two' => 'ymhen {0} chwarter',
+ 'quarter-future-zero' => 'ymhen {0} chwarter',
+ 'quarter-narrow-future-few' => 'ymhen {0} chwarter',
+ 'quarter-narrow-future-many' => 'ymhen {0} chwarter',
+ 'quarter-narrow-future-one' => 'ymhen {0} chwarter',
+ 'quarter-narrow-future-other' => 'ymhen {0} chwarter',
+ 'quarter-narrow-future-two' => 'ymhen {0} chwarter',
+ 'quarter-narrow-future-zero' => 'ymhen {0} chwarter',
+ 'quarter-narrow-past-few' => '{0} chwarter yn ôl',
+ 'quarter-narrow-past-many' => '{0} chwarter yn ôl',
+ 'quarter-narrow-past-one' => '{0} chwarter yn ôl',
+ 'quarter-narrow-past-other' => '{0} o chwarteri yn ôl',
+ 'quarter-narrow-past-two' => '{0} chwarter yn ôl',
+ 'quarter-narrow-past-zero' => '{0} o chwarteri yn ôl',
+ 'quarter-past-few' => '{0} chwarter yn ôl',
+ 'quarter-past-many' => '{0} chwarter yn ôl',
+ 'quarter-past-one' => '{0} chwarter yn ôl',
+ 'quarter-past-other' => '{0} o chwarteri yn ôl',
+ 'quarter-past-two' => '{0} chwarter yn ôl',
+ 'quarter-past-zero' => '{0} o chwarteri yn ôl',
+ 'quarter-short-future-few' => 'ymhen {0} chwarter',
+ 'quarter-short-future-many' => 'ymhen {0} chwarter',
+ 'quarter-short-future-one' => 'ymhen {0} chwarter',
+ 'quarter-short-future-other' => 'ymhen {0} chwarter',
+ 'quarter-short-future-two' => 'ymhen {0} chwarter',
+ 'quarter-short-future-zero' => 'ymhen {0} chwarter',
+ 'quarter-short-past-few' => '{0} chwarter yn ôl',
+ 'quarter-short-past-many' => '{0} chwarter yn ôl',
+ 'quarter-short-past-one' => '{0} chwarter yn ôl',
+ 'quarter-short-past-other' => '{0} o chwarteri yn ôl',
+ 'quarter-short-past-two' => '{0} chwarter yn ôl',
+ 'quarter-short-past-zero' => '{0} o chwarteri yn ôl',
+ 'sat-future-few' => 'ymhen {0} dydd Sadwrn',
+ 'sat-future-many' => 'ymhen {0} dydd Sadwrn',
+ 'sat-future-one' => 'ymhen {0} dydd Sadwrn',
+ 'sat-future-other' => 'ymhen {0} dydd Sadwrn',
+ 'sat-future-two' => 'ymhen {0} dydd Sadwrn',
+ 'sat-future-zero' => 'ymhen {0} dydd Sadwrn',
+ 'sat-narrow-future-few' => 'ymhen {0} dydd Sadwrn',
+ 'sat-narrow-future-many' => 'ymhen {0} dydd Sadwrn',
+ 'sat-narrow-future-one' => 'ymhen {0} dydd Sadwrn',
+ 'sat-narrow-future-other' => 'ymhen {0} dydd Sadwrn',
+ 'sat-narrow-future-two' => 'ymhen {0} dydd Sadwrn',
+ 'sat-narrow-future-zero' => 'ymhen {0} dydd Sadwrn',
+ 'sat-narrow-past-few' => '{0} dydd Sadwrn yn ôl',
+ 'sat-narrow-past-many' => '{0} dydd Sadwrn yn ôl',
+ 'sat-narrow-past-one' => '{0} dydd Sadwrn yn ôl',
+ 'sat-narrow-past-other' => '{0} dydd Sadwrn yn ôl',
+ 'sat-narrow-past-two' => '{0} dydd Sadwrn yn ôl',
+ 'sat-narrow-past-zero' => '{0} dydd Sadwrn yn ôl',
+ 'sat-past-few' => '{0} dydd Sadwrn yn ôl',
+ 'sat-past-many' => '{0} dydd Sadwrn yn ôl',
+ 'sat-past-one' => '{0} dydd Sadwrn yn ôl',
+ 'sat-past-other' => '{0} dydd Sadwrn yn ôl',
+ 'sat-past-two' => '{0} dydd Sadwrn yn ôl',
+ 'sat-past-zero' => '{0} dydd Sadwrn yn ôl',
+ 'sat-short-future-few' => 'ymhen {0} dydd Sadwrn',
+ 'sat-short-future-many' => 'ymhen {0} dydd Sadwrn',
+ 'sat-short-future-one' => 'ymhen {0} dydd Sadwrn',
+ 'sat-short-future-other' => 'ymhen {0} dydd Sadwrn',
+ 'sat-short-future-two' => 'ymhen {0} dydd Sadwrn',
+ 'sat-short-future-zero' => 'ymhen {0} dydd Sadwrn',
+ 'sat-short-past-few' => '{0} dydd Sadwrn yn ôl',
+ 'sat-short-past-many' => '{0} dydd Sadwrn yn ôl',
+ 'sat-short-past-one' => '{0} dydd Sadwrn yn ôl',
+ 'sat-short-past-other' => '{0} dydd Sadwrn yn ôl',
+ 'sat-short-past-two' => '{0} dydd Sadwrn yn ôl',
+ 'sat-short-past-zero' => '{0} dydd Sadwrn yn ôl',
'second-few' => '{0} eiliad',
- 'second-future-few' => 'Ymhen {0} eiliad',
- 'second-future-many' => 'Ymhen {0} eiliad',
- 'second-future-one' => 'Ymhen eiliad',
- 'second-future-other' => 'Ymhen {0} eiliad',
- 'second-future-two' => 'Ymhen {0} eiliad',
- 'second-future-zero' => 'Ymhen {0} eiliad',
+ 'second-future-few' => 'ymhen {0} eiliad',
+ 'second-future-many' => 'ymhen {0} eiliad',
+ 'second-future-one' => 'ymhen {0} eiliad',
+ 'second-future-other' => 'ymhen {0} eiliad',
+ 'second-future-two' => 'ymhen {0} eiliad',
+ 'second-future-zero' => 'ymhen {0} eiliad',
'second-many' => '{0} eiliad',
+ 'second-narrow-future-few' => 'ymhen {0} eiliad',
+ 'second-narrow-future-many' => 'ymhen {0} eiliad',
+ 'second-narrow-future-one' => 'ymhen {0} eiliad',
+ 'second-narrow-future-other' => 'ymhen {0} eiliad',
+ 'second-narrow-future-two' => 'ymhen {0} eiliad',
+ 'second-narrow-future-zero' => 'ymhen {0} eiliad',
+ 'second-narrow-past-few' => '{0} eiliad yn ôl',
+ 'second-narrow-past-many' => '{0} eiliad yn ôl',
+ 'second-narrow-past-one' => '{0} eiliad yn ôl',
+ 'second-narrow-past-other' => '{0} eiliad yn ôl',
+ 'second-narrow-past-two' => '{0} eiliad yn ôl',
+ 'second-narrow-past-zero' => '{0} eiliad yn ôl',
'second-one' => '{0} eiliad',
'second-other' => '{0} eiliad',
'second-past-few' => '{0} eiliad yn ôl',
'second-past-many' => '{0} eiliad yn ôl',
- 'second-past-one' => 'eiliad yn ôl',
+ 'second-past-one' => '{0} eiliad yn ôl',
'second-past-other' => '{0} eiliad yn ôl',
'second-past-two' => '{0} eiliad yn ôl',
'second-past-zero' => '{0} eiliad yn ôl',
+ 'second-short-future-few' => 'ymhen {0} eiliad',
+ 'second-short-future-many' => 'ymhen {0} eiliad',
+ 'second-short-future-one' => 'ymhen {0} eiliad',
+ 'second-short-future-other' => 'ymhen {0} eiliad',
+ 'second-short-future-two' => 'ymhen {0} eiliad',
+ 'second-short-future-zero' => 'ymhen {0} eiliad',
+ 'second-short-past-few' => '{0} eiliad yn ôl',
+ 'second-short-past-many' => '{0} eiliad yn ôl',
+ 'second-short-past-one' => '{0} eiliad yn ôl',
+ 'second-short-past-other' => '{0} eiliad yn ôl',
+ 'second-short-past-two' => '{0} eiliad yn ôl',
+ 'second-short-past-zero' => '{0} eiliad yn ôl',
'second-two' => '{0} eiliad',
'second-zero' => '{0} eiliad',
+ 'sun-future-few' => 'ymhen {0} Dydd Sul',
+ 'sun-future-many' => 'ymhen {0} Dydd Sul',
+ 'sun-future-one' => 'ymhen {0} Dydd Sul',
+ 'sun-future-other' => 'ymhen {0} Dydd Sul',
+ 'sun-future-two' => 'ymhen {0} Dydd Sul',
+ 'sun-future-zero' => 'ymhen {0} Dydd Sul',
+ 'sun-narrow-future-few' => 'ymhen {0} Dydd Sul',
+ 'sun-narrow-future-many' => 'ymhen {0} Dydd Sul',
+ 'sun-narrow-future-one' => 'ymhen {0} Dydd Sul',
+ 'sun-narrow-future-other' => 'ymhen {0} Dydd Sul',
+ 'sun-narrow-future-two' => 'ymhen {0} Dydd Sul',
+ 'sun-narrow-future-zero' => 'ymhen {0} Dydd Sul',
+ 'sun-narrow-past-few' => '{0} Dydd Sul yn ôl',
+ 'sun-narrow-past-many' => '{0} Dydd Sul yn ôl',
+ 'sun-narrow-past-one' => '{0} Dydd Sul yn ôl',
+ 'sun-narrow-past-other' => '{0} Dydd Sul yn ôl',
+ 'sun-narrow-past-two' => '{0} Dydd Sul yn ôl',
+ 'sun-narrow-past-zero' => '{0} Dydd Sul yn ôl',
+ 'sun-past-few' => '{0} Dydd Sul yn ôl',
+ 'sun-past-many' => '{0} Dydd Sul yn ôl',
+ 'sun-past-one' => '{0} Dydd Sul yn ôl',
+ 'sun-past-other' => '{0} Dydd Sul yn ôl',
+ 'sun-past-two' => '{0} Dydd Sul yn ôl',
+ 'sun-past-zero' => '{0} Dydd Sul yn ôl',
+ 'sun-short-future-few' => 'ymhen {0} Dydd Sul',
+ 'sun-short-future-many' => 'ymhen {0} Dydd Sul',
+ 'sun-short-future-one' => 'ymhen {0} Dydd Sul',
+ 'sun-short-future-other' => 'ymhen {0} Dydd Sul',
+ 'sun-short-future-two' => 'ymhen {0} Dydd Sul',
+ 'sun-short-future-zero' => 'ymhen {0} Dydd Sul',
+ 'sun-short-past-few' => '{0} Dydd Sul yn ôl',
+ 'sun-short-past-many' => '{0} Dydd Sul yn ôl',
+ 'sun-short-past-one' => '{0} Dydd Sul yn ôl',
+ 'sun-short-past-other' => '{0} Dydd Sul yn ôl',
+ 'sun-short-past-two' => '{0} Dydd Sul yn ôl',
+ 'sun-short-past-zero' => '{0} Dydd Sul yn ôl',
+ 'thu-future-few' => 'ymhen {0} dydd Iau',
+ 'thu-future-many' => 'ymhen {0} dydd Iau',
+ 'thu-future-one' => 'ymhen {0} dydd Iau',
+ 'thu-future-other' => 'ymhen {0} dydd Iau',
+ 'thu-future-two' => 'ymhen {0} dydd Iau',
+ 'thu-future-zero' => 'ymhen {0} dydd Iau',
+ 'thu-narrow-future-few' => 'ymhen {0} dydd Iau',
+ 'thu-narrow-future-many' => 'ymhen {0} dydd Iau',
+ 'thu-narrow-future-one' => 'ymhen {0} dydd Iau',
+ 'thu-narrow-future-other' => 'ymhen {0} dydd Iau',
+ 'thu-narrow-future-two' => 'ymhen {0} dydd Iau',
+ 'thu-narrow-future-zero' => 'ymhen {0} dydd Iau',
+ 'thu-narrow-past-few' => '{0} dydd Iau yn ôl',
+ 'thu-narrow-past-many' => '{0} dydd Iau yn ôl',
+ 'thu-narrow-past-one' => '{0} dydd Iau yn ôl',
+ 'thu-narrow-past-other' => '{0} dydd Iau yn ôl',
+ 'thu-narrow-past-two' => '{0} dydd Iau yn ôl',
+ 'thu-narrow-past-zero' => '{0} dydd Iau yn ôl',
+ 'thu-past-few' => '{0} dydd Iau yn ôl',
+ 'thu-past-many' => '{0} dydd Iau yn ôl',
+ 'thu-past-one' => '{0} dydd Iau yn ôl',
+ 'thu-past-other' => '{0} dydd Iau yn ôl',
+ 'thu-past-two' => '{0} dydd Iau yn ôl',
+ 'thu-past-zero' => '{0} dydd Iau yn ôl',
+ 'thu-short-future-few' => 'ymhen {0} dydd Iau',
+ 'thu-short-future-many' => 'ymhen {0} dydd Iau',
+ 'thu-short-future-one' => 'ymhen {0} dydd Iau',
+ 'thu-short-future-other' => 'ymhen {0} dydd Iau',
+ 'thu-short-future-two' => 'ymhen {0} dydd Iau',
+ 'thu-short-future-zero' => 'ymhen {0} dydd Iau',
+ 'thu-short-past-few' => '{0} dydd Iau yn ôl',
+ 'thu-short-past-many' => '{0} dydd Iau yn ôl',
+ 'thu-short-past-one' => '{0} dydd Iau yn ôl',
+ 'thu-short-past-other' => '{0} dydd Iau yn ôl',
+ 'thu-short-past-two' => '{0} dydd Iau yn ôl',
+ 'thu-short-past-zero' => '{0} dydd Iau yn ôl',
+ 'tue-future-few' => 'ymhen {0} dydd Mawrth',
+ 'tue-future-many' => 'ymhen {0} dydd Mawrth',
+ 'tue-future-one' => 'ymhen {0} dydd Mawrth',
+ 'tue-future-other' => 'ymhen {0} dydd Mawrth',
+ 'tue-future-two' => 'ymhen {0} dydd Mawrth',
+ 'tue-future-zero' => 'ymhen {0} dydd Mawrth',
+ 'tue-narrow-future-few' => 'ymhen {0} dydd Mawrth',
+ 'tue-narrow-future-many' => 'ymhen {0} dydd Mawrth',
+ 'tue-narrow-future-one' => 'ymhen {0} dydd Mawrth',
+ 'tue-narrow-future-other' => 'ymhen {0} dydd Mawrth',
+ 'tue-narrow-future-two' => 'ymhen {0} dydd Mawrth',
+ 'tue-narrow-future-zero' => 'ymhen {0} dydd Mawrth',
+ 'tue-narrow-past-few' => '{0} dydd Mawrth yn ôl',
+ 'tue-narrow-past-many' => '{0} dydd Mawrth yn ôl',
+ 'tue-narrow-past-one' => '{0} dydd Mawrth yn ôl',
+ 'tue-narrow-past-other' => '{0} dydd Mawrth yn ôl',
+ 'tue-narrow-past-two' => '{0} dydd Mawrth yn ôl',
+ 'tue-narrow-past-zero' => '{0} dydd Mawrth yn ôl',
+ 'tue-past-few' => '{0} dydd Mawrth yn ôl',
+ 'tue-past-many' => '{0} dydd Mawrth yn ôl',
+ 'tue-past-one' => '{0} dydd Mawrth yn ôl',
+ 'tue-past-other' => '{0} dydd Mawrth yn ôl',
+ 'tue-past-two' => '{0} dydd Mawrth yn ôl',
+ 'tue-past-zero' => '{0} dydd Mawrth yn ôl',
+ 'tue-short-future-few' => 'ymhen {0} dydd Mawrth',
+ 'tue-short-future-many' => 'ymhen {0} dydd Mawrth',
+ 'tue-short-future-one' => 'ymhen {0} dydd Mawrth',
+ 'tue-short-future-other' => 'ymhen {0} dydd Mawrth',
+ 'tue-short-future-two' => 'ymhen {0} dydd Mawrth',
+ 'tue-short-future-zero' => 'ymhen {0} dydd Mawrth',
+ 'tue-short-past-few' => '{0} dydd Mawrth yn ôl',
+ 'tue-short-past-many' => '{0} dydd Mawrth yn ôl',
+ 'tue-short-past-one' => '{0} dydd Mawrth yn ôl',
+ 'tue-short-past-other' => '{0} dydd Mawrth yn ôl',
+ 'tue-short-past-two' => '{0} dydd Mawrth yn ôl',
+ 'tue-short-past-zero' => '{0} dydd Mawrth yn ôl',
+ 'wed-future-few' => 'ymhen {0} dydd Mercher',
+ 'wed-future-many' => 'ymhen {0} dydd Mercher',
+ 'wed-future-one' => 'ymhen {0} dydd Mercher',
+ 'wed-future-other' => 'ymhen {0} dydd Mercher',
+ 'wed-future-two' => 'ymhen {0} dydd Mercher',
+ 'wed-future-zero' => 'ymhen {0} dydd Mercher',
+ 'wed-narrow-future-few' => 'ymhen {0} dydd Mercher',
+ 'wed-narrow-future-many' => 'ymhen {0} dydd Mercher',
+ 'wed-narrow-future-one' => 'ymhen {0} dydd Mercher',
+ 'wed-narrow-future-other' => 'ymhen {0} dydd Mercher',
+ 'wed-narrow-future-two' => 'ymhen {0} dydd Mercher',
+ 'wed-narrow-future-zero' => 'ymhen {0} dydd Mercher',
+ 'wed-narrow-past-few' => '{0} dydd Mercher yn ôl',
+ 'wed-narrow-past-many' => '{0} dydd Mercher yn ôl',
+ 'wed-narrow-past-one' => '{0} dydd Mercher yn ôl',
+ 'wed-narrow-past-other' => '{0} dydd Mercher yn ôl',
+ 'wed-narrow-past-two' => '{0} dydd Mercher yn ôl',
+ 'wed-narrow-past-zero' => '{0} dydd Mercher yn ôl',
+ 'wed-past-few' => '{0} dydd Mercher yn ôl',
+ 'wed-past-many' => '{0} dydd Mercher yn ôl',
+ 'wed-past-one' => '{0} dydd Mercher yn ôl',
+ 'wed-past-other' => '{0} dydd Mercher yn ôl',
+ 'wed-past-two' => '{0} dydd Mercher yn ôl',
+ 'wed-past-zero' => '{0} dydd Mercher yn ôl',
+ 'wed-short-future-few' => 'ymhen {0} dydd Mercher',
+ 'wed-short-future-many' => 'ymhen {0} dydd Mercher',
+ 'wed-short-future-one' => 'ymhen {0} dydd Mercher',
+ 'wed-short-future-other' => 'ymhen {0} dydd Mercher',
+ 'wed-short-future-two' => 'ymhen {0} dydd Mercher',
+ 'wed-short-future-zero' => 'ymhen {0} dydd Mercher',
+ 'wed-short-past-few' => '{0} dydd Mercher yn ôl',
+ 'wed-short-past-many' => '{0} dydd Mercher yn ôl',
+ 'wed-short-past-one' => '{0} dydd Mercher yn ôl',
+ 'wed-short-past-other' => '{0} dydd Mercher yn ôl',
+ 'wed-short-past-two' => '{0} dydd Mercher yn ôl',
+ 'wed-short-past-zero' => '{0} dydd Mercher yn ôl',
'week-few' => '{0} wythnos',
- 'week-future-few' => 'Ymhen {0} wythnos',
- 'week-future-many' => 'Ymhen {0} wythnos',
- 'week-future-one' => 'Ymhen wythnos',
- 'week-future-other' => 'Ymhen {0} wythnos',
- 'week-future-two' => 'Ymhen pythefnos',
- 'week-future-zero' => 'Ymhen {0} wythnos',
+ 'week-future-few' => 'ymhen {0} wythnos',
+ 'week-future-many' => 'ymhen {0} wythnos',
+ 'week-future-one' => 'ymhen wythnos',
+ 'week-future-other' => 'ymhen {0} wythnos',
+ 'week-future-two' => 'ymhen pythefnos',
+ 'week-future-zero' => 'ymhen {0} wythnos',
'week-many' => '{0} wythnos',
+ 'week-narrow-future-few' => 'ymhen {0} wythnos',
+ 'week-narrow-future-many' => 'ymhen {0} wythnos',
+ 'week-narrow-future-one' => 'ymhen {0} wythnos',
+ 'week-narrow-future-other' => 'ymhen {0} wythnos',
+ 'week-narrow-future-two' => 'ymhen {0} wythnos',
+ 'week-narrow-future-zero' => 'ymhen {0} wythnos',
+ 'week-narrow-past-few' => '{0} wythnos yn ôl',
+ 'week-narrow-past-many' => '{0} wythnos yn ôl',
+ 'week-narrow-past-one' => '{0} wythnos yn ôl',
+ 'week-narrow-past-other' => '{0} wythnos yn ôl',
+ 'week-narrow-past-two' => 'pythefnos yn ôl',
+ 'week-narrow-past-zero' => '{0} wythnos yn ôl',
'week-one' => '{0} wythnos',
'week-other' => '{0} wythnos',
'week-past-few' => '{0} wythnos yn ôl',
@@ -998,16 +1860,40 @@ $timeUnits = array(
'week-past-other' => '{0} wythnos yn ôl',
'week-past-two' => '{0} wythnos yn ôl',
'week-past-zero' => '{0} wythnos yn ôl',
+ 'week-short-future-few' => 'ymhen {0} wythnos',
+ 'week-short-future-many' => 'ymhen {0} wythnos',
+ 'week-short-future-one' => 'ymhen wythnos',
+ 'week-short-future-other' => 'ymhen {0} wythnos',
+ 'week-short-future-two' => 'ymhen pythefnos',
+ 'week-short-future-zero' => 'ymhen {0} wythnos',
+ 'week-short-past-few' => '{0} wythnos yn ôl',
+ 'week-short-past-many' => '{0} wythnos yn ôl',
+ 'week-short-past-one' => '{0} wythnos yn ôl',
+ 'week-short-past-other' => '{0} wythnos yn ôl',
+ 'week-short-past-two' => 'pythefnos yn ôl',
+ 'week-short-past-zero' => '{0} wythnos yn ôl',
'week-two' => '{0} wythnos',
'week-zero' => '{0} wythnos',
'year-few' => '{0} blynedd',
- 'year-future-few' => 'Ymhen {0} blynedd',
- 'year-future-many' => 'Ymhen {0} blynedd',
- 'year-future-one' => 'Ymhen blwyddyn',
- 'year-future-other' => 'Ymhen {0} mlynedd',
- 'year-future-two' => 'Ymhen {0} flynedd',
- 'year-future-zero' => 'Ymhen {0} mlynedd',
+ 'year-future-few' => 'ymhen {0} blynedd',
+ 'year-future-many' => 'ymhen {0} blynedd',
+ 'year-future-one' => 'ymhen blwyddyn',
+ 'year-future-other' => 'ymhen {0} mlynedd',
+ 'year-future-two' => 'ymhen {0} flynedd',
+ 'year-future-zero' => 'ymhen {0} mlynedd',
'year-many' => '{0} blynedd',
+ 'year-narrow-future-few' => 'ymhen {0} blynedd',
+ 'year-narrow-future-many' => 'ymhen {0} blynedd',
+ 'year-narrow-future-one' => 'ymhen blwyddyn',
+ 'year-narrow-future-other' => 'ymhen {0} mlynedd',
+ 'year-narrow-future-two' => 'ymhen {0} flynedd',
+ 'year-narrow-future-zero' => 'ymhen {0} mlynedd',
+ 'year-narrow-past-few' => '{0} blynedd yn ôl',
+ 'year-narrow-past-many' => '{0} blynedd yn ôl',
+ 'year-narrow-past-one' => 'blwyddyn yn ôl',
+ 'year-narrow-past-other' => '{0} o flynyddoedd yn ôl',
+ 'year-narrow-past-two' => '{0} flynedd yn ôl',
+ 'year-narrow-past-zero' => '{0} o flynyddoedd yn ôl',
'year-one' => '{0} flwyddyn',
'year-other' => '{0} mlynedd',
'year-past-few' => '{0} blynedd yn ôl',
@@ -1016,6 +1902,18 @@ $timeUnits = array(
'year-past-other' => '{0} o flynyddoedd yn ôl',
'year-past-two' => '{0} flynedd yn ôl',
'year-past-zero' => '{0} o flynyddoedd yn ôl',
+ 'year-short-future-few' => 'ymhen {0} blynedd',
+ 'year-short-future-many' => 'ymhen {0} blynedd',
+ 'year-short-future-one' => 'ymhen blwyddyn',
+ 'year-short-future-other' => 'ymhen {0} mlynedd',
+ 'year-short-future-two' => 'ymhen {0} flynedd',
+ 'year-short-future-zero' => 'ymhen {0} mlynedd',
+ 'year-short-past-few' => '{0} blynedd yn ôl',
+ 'year-short-past-many' => '{0} blynedd yn ôl',
+ 'year-short-past-one' => 'blwyddyn yn ôl',
+ 'year-short-past-other' => '{0} o flynyddoedd yn ôl',
+ 'year-short-past-two' => '{0} flynedd yn ôl',
+ 'year-short-past-zero' => '{0} o flynyddoedd yn ôl',
'year-two' => '{0} flynedd',
'year-zero' => '{0} mlynedd',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesDa.php b/MLEB/cldr/CldrNames/CldrNamesDa.php
index caa38309..c772e391 100644
--- a/MLEB/cldr/CldrNames/CldrNamesDa.php
+++ b/MLEB/cldr/CldrNames/CldrNamesDa.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'afar',
'ab' => 'abkhasisk',
'ace' => 'achinesisk',
@@ -23,8 +23,9 @@ $languageNames = array(
'ar' => 'arabisk',
'ar-001' => 'moderne standardarabisk',
'arc' => 'aramæisk',
- 'arn' => 'araukansk',
+ 'arn' => 'mapudungun',
'arp' => 'arapaho',
+ 'ars' => 'Najd-arabisk',
'arw' => 'arawak',
'as' => 'assamesisk',
'asa' => 'asu',
@@ -36,7 +37,7 @@ $languageNames = array(
'ba' => 'bashkir',
'bal' => 'baluchi',
'ban' => 'balinesisk',
- 'bas' => 'basa',
+ 'bas' => 'basaa',
'bax' => 'bamun',
'bbj' => 'ghomala',
'be' => 'hviderussisk',
@@ -45,6 +46,7 @@ $languageNames = array(
'bez' => 'bena',
'bfd' => 'bafut',
'bg' => 'bulgarsk',
+ 'bgn' => 'vestbaluchi',
'bho' => 'bhojpuri',
'bi' => 'bislama',
'bik' => 'bikol',
@@ -86,7 +88,8 @@ $languageNames = array(
'co' => 'korsikansk',
'cop' => 'koptisk',
'cr' => 'cree',
- 'crh' => 'krim tyrkisk',
+ 'crh' => 'krim-tyrkisk',
+ 'crs' => 'seselwa (kreol-fransk)',
'cs' => 'tjekkisk',
'csb' => 'kasjubisk',
'cu' => 'kirkeslavisk',
@@ -146,15 +149,17 @@ $languageNames = array(
'fr' => 'fransk',
'fr-ca' => 'canadisk fransk',
'fr-ch' => 'schweizisk fransk',
+ 'frc' => 'cajunfransk',
'frm' => 'middelfransk',
'fro' => 'oldfransk',
'frr' => 'nordfrisisk',
'frs' => 'østfrisisk',
'fur' => 'friulian',
- 'fy' => 'frisisk',
+ 'fy' => 'vestfrisisk',
'ga' => 'irsk',
'gaa' => 'ga',
'gag' => 'gagauzisk',
+ 'gan' => 'gan-kinesisk',
'gay' => 'gayo',
'gba' => 'gbaya',
'gd' => 'skotsk gælisk',
@@ -176,6 +181,7 @@ $languageNames = array(
'gwi' => 'gwichin',
'ha' => 'hausa',
'hai' => 'haida',
+ 'hak' => 'hakka-kinesisk',
'haw' => 'hawaiiansk',
'he' => 'hebraisk',
'hi' => 'hindi',
@@ -185,6 +191,7 @@ $languageNames = array(
'ho' => 'hirimotu',
'hr' => 'kroatisk',
'hsb' => 'øvresorbisk',
+ 'hsn' => 'xiang-kinesisk',
'ht' => 'haitisk',
'hu' => 'ungarsk',
'hup' => 'hupa',
@@ -269,7 +276,9 @@ $languageNames = array(
'ln' => 'lingala',
'lo' => 'lao',
'lol' => 'mongo',
+ 'lou' => 'Louisiana-kreolsk',
'loz' => 'lozi',
+ 'lrc' => 'nordluri',
'lt' => 'litauisk',
'lu' => 'luba-Katanga',
'lua' => 'luba-Lulua',
@@ -308,7 +317,7 @@ $languageNames = array(
'moh' => 'mohawk',
'mos' => 'mossi',
'mr' => 'marathisk',
- 'ms' => 'malay',
+ 'ms' => 'malajisk',
'mt' => 'maltesisk',
'mua' => 'mundang',
'mul' => 'flere sprog',
@@ -318,17 +327,20 @@ $languageNames = array(
'my' => 'burmesisk',
'mye' => 'myene',
'myv' => 'erzya',
+ 'mzn' => 'mazenisk',
'na' => 'nauru',
- 'nap' => 'neapolitansk',
+ 'nan' => 'min-kinesisk',
+ 'nap' => 'napolitansk',
'naq' => 'nama',
'nb' => 'norsk bokmål',
'nd' => 'nordndebele',
'nds' => 'nedertysk',
+ 'nds-nl' => 'plattysk (Holland)',
'ne' => 'nepalesisk',
'new' => 'newari',
'ng' => 'ndonga',
'nia' => 'nias',
- 'niu' => 'niuean',
+ 'niu' => 'niueansk',
'nl' => 'hollandsk',
'nl-be' => 'flamsk',
'nmg' => 'kwasio',
@@ -346,7 +358,7 @@ $languageNames = array(
'ny' => 'nyanja',
'nym' => 'nyamwezi',
'nyn' => 'nyankole',
- 'nyo' => 'nyoro sprog',
+ 'nyo' => 'nyoro-sprog',
'nzi' => 'nzima',
'oc' => 'occitansk',
'oj' => 'ojibwa',
@@ -354,18 +366,20 @@ $languageNames = array(
'or' => 'oriya',
'os' => 'ossetisk',
'osa' => 'osage',
- 'ota' => 'osmannisk-tyrkisk',
- 'pa' => 'punjabi',
+ 'ota' => 'osmannisk tyrkisk',
+ 'pa' => 'punjabisk',
'pag' => 'pangasinan',
'pal' => 'pahlavi',
'pam' => 'pampanga',
'pap' => 'papiamento',
'pau' => 'palauansk',
+ 'pcm' => 'nigeriansk pidgin',
'peo' => 'oldpersisk',
'phn' => 'fønikisk',
'pi' => 'pali',
'pl' => 'polsk',
'pon' => 'ponape',
+ 'prg' => 'preussisk',
'pro' => 'oldprovencalsk',
'ps' => 'pashto',
'pt' => 'portugisisk',
@@ -375,7 +389,7 @@ $languageNames = array(
'quc' => 'quiché',
'raj' => 'rajasthani',
'rap' => 'rapanui',
- 'rar' => 'rarotongan',
+ 'rar' => 'rarotonga',
'rm' => 'rætoromansk',
'rn' => 'rundi',
'ro' => 'rumænsk',
@@ -389,7 +403,7 @@ $languageNames = array(
'sa' => 'sanskrit',
'sad' => 'sandawe',
'sah' => 'yakut',
- 'sam' => 'samaritansk',
+ 'sam' => 'samaritansk aramæisk',
'saq' => 'samburu',
'sas' => 'sasak',
'sat' => 'santali',
@@ -399,6 +413,7 @@ $languageNames = array(
'scn' => 'siciliansk',
'sco' => 'skotsk',
'sd' => 'sindhi',
+ 'sdh' => 'sydkurdisk',
'se' => 'nordsamisk',
'see' => 'seneca',
'seh' => 'sena',
@@ -409,7 +424,7 @@ $languageNames = array(
'sh' => 'serbokroatisk',
'shi' => 'tachelhit',
'shn' => 'shan',
- 'shu' => 'tchadisk-arabisk',
+ 'shu' => 'tchadisk arabisk',
'si' => 'singalesisk',
'sid' => 'sidamo',
'sk' => 'slovakisk',
@@ -421,7 +436,7 @@ $languageNames = array(
'sms' => 'skoltesamisk',
'sn' => 'shona',
'snk' => 'soninke',
- 'so' => 'somalisk',
+ 'so' => 'somali',
'sog' => 'sogdiansk',
'sq' => 'albansk',
'sr' => 'serbisk',
@@ -436,18 +451,18 @@ $languageNames = array(
'sux' => 'sumerisk',
'sv' => 'svensk',
'sw' => 'swahili',
+ 'sw-cd' => 'congolesisk swahili',
'swb' => 'shimaore',
- 'swc' => 'congolesisk swahili',
'syc' => 'klassisk syrisk',
'syr' => 'syrisk',
- 'ta' => 'tamilsk',
+ 'ta' => 'tamil',
'te' => 'telugu',
'tem' => 'temne',
'teo' => 'teso',
'ter' => 'tereno',
'tet' => 'tetum',
- 'tg' => 'tajik',
- 'th' => 'thailandsk',
+ 'tg' => 'tadsjikisk',
+ 'th' => 'thai',
'ti' => 'tigrinya',
'tig' => 'tigre',
'tiv' => 'tivi',
@@ -467,7 +482,7 @@ $languageNames = array(
'tsi' => 'tsimshisk',
'tt' => 'tatarisk',
'tum' => 'tumbuka',
- 'tvl' => 'tuvalu',
+ 'tvl' => 'tuvaluansk',
'tw' => 'twi',
'twq' => 'tasawaq',
'ty' => 'tahitiansk',
@@ -492,9 +507,11 @@ $languageNames = array(
'wal' => 'walamo',
'war' => 'waray',
'was' => 'washo',
+ 'wbp' => 'walbiri',
'wo' => 'wolof',
+ 'wuu' => 'wu-kinesisk',
'xal' => 'kalmyk',
- 'xh' => 'xhosa',
+ 'xh' => 'isiXhosa',
'xog' => 'soga',
'yao' => 'yao',
'yap' => 'yapese',
@@ -515,138 +532,153 @@ $languageNames = array(
'zun' => 'zuni',
'zxx' => 'intet sprogligt indhold',
'zza' => 'zaza',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'ADP' => 'Andorransk peseta',
- 'AED' => 'Dirham fra de Forenede Arabiske Emirater',
+ 'AED' => 'dirham fra de Forenede Arabiske Emirater',
'AFA' => 'Afghansk afghani (1927–2002)',
- 'AFN' => 'Afghansk afghani',
- 'ALL' => 'Albansk lek',
- 'AMD' => 'Armensk dram',
+ 'AFN' => 'afghansk afghani',
+ 'ALK' => 'albansk lek (1946–1965)',
+ 'ALL' => 'albansk lek',
+ 'AMD' => 'armensk dram',
'ANG' => 'Nederlandske Antiller-gylden',
- 'AOA' => 'Angolansk kwanza',
+ 'AOA' => 'angolansk kwanza',
'AOK' => 'Angolansk kwanza (1977–1990)',
'AON' => 'Angolansk nye kwanza (1990–2000)',
'AOR' => 'Angolansk kwanza (1995–1999)',
'ARA' => 'Argentinsk austral',
+ 'ARL' => 'argentinsk peso ley (1970–1983)',
+ 'ARM' => 'argentinsk peso (1881–1970)',
'ARP' => 'Argentinsk peso (1983–1985)',
- 'ARS' => 'Argentinsk peso',
+ 'ARS' => 'argentinsk peso',
'ATS' => 'Østrigsk schilling',
- 'AUD' => 'Australsk dollar',
- 'AWG' => 'Arubansk florin',
+ 'AUD' => 'australsk dollar',
+ 'AWG' => 'arubansk florin',
'AZM' => 'Aserbajdsjansk manat (1993–2006)',
- 'AZN' => 'Aserbajdsjansk manat',
+ 'AZN' => 'aserbajdsjansk manat',
'BAD' => 'Bosnien-Hercegovinsk dinar',
- 'BAM' => 'Bosnien-Hercegovinsk konvertibel mark',
- 'BBD' => 'Barbadisk dollar',
- 'BDT' => 'Bangladeshisk taka',
+ 'BAM' => 'bosnien-hercegovinsk konvertibel mark',
+ 'BAN' => 'ny bosnien-hercegovinsk dinar (1994–1997)',
+ 'BBD' => 'barbadisk dollar',
+ 'BDT' => 'bangladeshisk taka',
'BEC' => 'Belgisk franc (konvertibel)',
'BEF' => 'Belgisk franc',
'BEL' => 'Belgisk franc (financial)',
'BGL' => 'Bulgarsk hard lev',
- 'BGN' => 'Bulgarsk lev',
- 'BHD' => 'Bahrainsk dinar',
- 'BIF' => 'Burundisk franc',
- 'BMD' => 'Bermudansk dollar',
- 'BND' => 'Bruneisk dollar',
- 'BOB' => 'Boliviansk boliviano',
+ 'BGM' => 'bulgarsk socialistisk lev',
+ 'BGN' => 'bulgarsk lev',
+ 'BGO' => 'bulgarsk lev (1879–1952)',
+ 'BHD' => 'bahrainsk dinar',
+ 'BIF' => 'burundisk franc',
+ 'BMD' => 'bermudansk dollar',
+ 'BND' => 'bruneisk dollar',
+ 'BOB' => 'boliviansk boliviano',
+ 'BOL' => 'boliviansk boliviano (1863–1963)',
'BOP' => 'Boliviansk peso',
'BOV' => 'Boliviansk mvdol',
'BRB' => 'Brasiliansk cruzeiro novo (1967–1986)',
'BRC' => 'Brasiliansk cruzado (1986–1989)',
'BRE' => 'Brasiliansk cruzeiro (1990–1993)',
- 'BRL' => 'Brasiliansk real',
+ 'BRL' => 'brasiliansk real',
'BRN' => 'Brasiliansk cruzado novo (1989–1990)',
'BRR' => 'Brasiliansk cruzeiro (1993–1994)',
- 'BSD' => 'Bahamansk dollar',
- 'BTN' => 'Bhutansk ngultrum',
+ 'BRZ' => 'brasiliansk cruzeiro (1942–1967)',
+ 'BSD' => 'bahamansk dollar',
+ 'BTN' => 'bhutansk ngultrum',
'BUK' => 'Burmesisk kyat',
- 'BWP' => 'Botswansk pula',
+ 'BWP' => 'botswansk pula',
'BYB' => 'Hviderussisk rubel (1994–1999)',
- 'BYR' => 'Hviderussisk rubel',
- 'BZD' => 'Belizisk dollar',
- 'CAD' => 'Canadisk dollar',
- 'CDF' => 'Congolesisk franc',
+ 'BYN' => 'hviderussisk rubel',
+ 'BYR' => 'hviderussisk rubel (2000–2016)',
+ 'BZD' => 'belizisk dollar',
+ 'CAD' => 'canadisk dollar',
+ 'CDF' => 'congolesisk franc',
'CHE' => 'WIR euro',
- 'CHF' => 'Schweizisk franc',
+ 'CHF' => 'schweizerfranc',
'CHW' => 'WIR franc',
- 'CLP' => 'Chilensk peso',
- 'CNY' => 'Kinesisk yuan renminbi',
- 'COP' => 'Colombiansk peso',
- 'CRC' => 'Costaricansk colón',
+ 'CLE' => 'chilensk escudo',
+ 'CLP' => 'chilensk peso',
+ 'CNH' => 'kinesisk yuan (offshore)',
+ 'CNY' => 'kinesisk yuan',
+ 'COP' => 'colombiansk peso',
+ 'CRC' => 'costaricansk colón',
'CSD' => 'Serbisk dinar (2002–2006)',
'CSK' => 'Tjekkoslovakisk hard koruna',
- 'CUC' => 'Cubansk konvertibel peso',
- 'CUP' => 'Cubansk peso',
- 'CVE' => 'Kapverdisk escudo',
+ 'CUC' => 'cubansk konvertibel peso',
+ 'CUP' => 'cubansk peso',
+ 'CVE' => 'kapverdisk escudo',
'CYP' => 'Cypriotisk pund',
- 'CZK' => 'Tjekkisk koruna',
+ 'CZK' => 'tjekkisk koruna',
'DDM' => 'Østtysk mark',
'DEM' => 'Tysk mark',
- 'DJF' => 'Djiboutisk franc',
- 'DKK' => 'Dansk krone',
- 'DOP' => 'Dominikansk peso',
- 'DZD' => 'Algerisk dinar',
+ 'DJF' => 'djiboutisk franc',
+ 'DKK' => 'dansk krone',
+ 'DOP' => 'dominikansk peso',
+ 'DZD' => 'algerisk dinar',
'ECS' => 'Ecuadoriansk sucre',
'EEK' => 'Estisk kroon',
- 'EGP' => 'Egyptisk pund',
- 'ERN' => 'Eritreisk nakfa',
+ 'EGP' => 'egyptisk pund',
+ 'ERN' => 'eritreisk nakfa',
'ESA' => 'Spansk peseta (A–konto)',
'ESB' => 'Spansk peseta (konvertibel konto)',
'ESP' => 'Spansk peseta',
- 'ETB' => 'Etiopisk birr',
- 'EUR' => 'Euro',
+ 'ETB' => 'etiopisk birr',
+ 'EUR' => 'euro',
'FIM' => 'Finsk mark',
- 'FJD' => 'Fijiansk dollar',
- 'FKP' => 'Pund fra Falklandsøerne',
+ 'FJD' => 'fijiansk dollar',
+ 'FKP' => 'pund fra Falklandsøerne',
'FRF' => 'Fransk franc',
- 'GBP' => 'Britisk pund',
+ 'GBP' => 'britisk pund',
'GEK' => 'Georgisk kupon larit',
- 'GEL' => 'Georgisk lari',
+ 'GEL' => 'georgisk lari',
'GHC' => 'Ghanesisk cedi (1979–2007)',
- 'GHS' => 'Ghanesisk cedi',
- 'GIP' => 'Gibraltarisk pund',
- 'GMD' => 'Gambisk dalasi',
- 'GNF' => 'Guineansk franc',
+ 'GHS' => 'ghanesisk cedi',
+ 'GIP' => 'gibraltarisk pund',
+ 'GMD' => 'gambisk dalasi',
+ 'GNF' => 'guineansk franc',
'GNS' => 'Guineansk syli',
'GQE' => 'Ækvatorialguineask ekwele',
'GRD' => 'Græsk drakme',
- 'GTQ' => 'Guatemalansk quetzal',
+ 'GTQ' => 'guatemalansk quetzal',
'GWE' => 'Portugisisk guinea escudo',
'GWP' => 'Guineansk peso',
- 'GYD' => 'Guyansk dollar',
+ 'GYD' => 'guyansk dollar',
'HKD' => 'Hongkong dollar',
- 'HNL' => 'Honduransk lempira',
+ 'HNL' => 'honduransk lempira',
'HRD' => 'Kroatisk dinar',
- 'HRK' => 'Kroatisk kuna',
- 'HTG' => 'Haitisk gourde',
- 'HUF' => 'Ungarsk forint',
- 'IDR' => 'Indonesisk rupiah',
+ 'HRK' => 'kroatisk kuna',
+ 'HTG' => 'haitisk gourde',
+ 'HUF' => 'ungarsk forint',
+ 'IDR' => 'indonesisk rupiah',
'IEP' => 'Irsk pund',
'ILP' => 'Israelsk pund',
- 'ILS' => 'Ny israelsk shekel',
- 'INR' => 'Indisk rupee',
- 'IQD' => 'Irakisk dinar',
- 'IRR' => 'Iransk rial',
- 'ISK' => 'Islansk krone',
+ 'ILR' => 'israelsk shekel (1980–1985)',
+ 'ILS' => 'ny israelsk shekel',
+ 'INR' => 'indisk rupee',
+ 'IQD' => 'irakisk dinar',
+ 'IRR' => 'iransk rial',
+ 'ISJ' => 'islandsk krone (1918–1981)',
+ 'ISK' => 'islandsk krone',
'ITL' => 'Italiensk lire',
- 'JMD' => 'Jamaicansk dollar',
- 'JOD' => 'Jordansk dinar',
- 'JPY' => 'Japansk yen',
- 'KES' => 'Kenyansk shilling',
- 'KGS' => 'Kirgisisk som',
- 'KHR' => 'Cambodjansk riel',
- 'KMF' => 'Comorisk franc',
- 'KPW' => 'Nordkoreansk won',
- 'KRW' => 'Sydkoreansk won',
- 'KWD' => 'Kuwaitisk dinar',
- 'KYD' => 'Caymansk dollar',
- 'KZT' => 'Kasakhisk tenge',
- 'LAK' => 'Laotisk kip',
- 'LBP' => 'Libanesisk pund',
- 'LKR' => 'Srilankansk rupee',
- 'LRD' => 'Liberisk dollar',
+ 'JMD' => 'jamaicansk dollar',
+ 'JOD' => 'jordansk dinar',
+ 'JPY' => 'japansk yen',
+ 'KES' => 'kenyansk shilling',
+ 'KGS' => 'kirgisisk som',
+ 'KHR' => 'cambodjansk riel',
+ 'KMF' => 'comorisk franc',
+ 'KPW' => 'nordkoreansk won',
+ 'KRH' => 'sydkoreansk hwan (1953–1962)',
+ 'KRO' => 'sydkoreansk won (1945–1953)',
+ 'KRW' => 'sydkoreansk won',
+ 'KWD' => 'kuwaitisk dinar',
+ 'KYD' => 'caymansk dollar',
+ 'KZT' => 'kasakhisk tenge',
+ 'LAK' => 'laotisk kip',
+ 'LBP' => 'libanesisk pund',
+ 'LKR' => 'srilankansk rupee',
+ 'LRD' => 'liberisk dollar',
'LSL' => 'Lesothisk loti',
'LTL' => 'Litauisk litas',
'LTT' => 'Litauisk talonas',
@@ -655,111 +687,120 @@ $currencyNames = array(
'LUL' => 'Luxembourgsk finansiel franc',
'LVL' => 'Lettisk lat',
'LVR' => 'Lettisk rubel',
- 'LYD' => 'Libysk dinar',
- 'MAD' => 'Marokkansk dirham',
+ 'LYD' => 'libysk dinar',
+ 'MAD' => 'marokkansk dirham',
'MAF' => 'Marokkansk franc',
- 'MDL' => 'Moldovisk leu',
- 'MGA' => 'Madagaskisk ariary',
+ 'MCF' => 'monegaskisk franc',
+ 'MDC' => 'moldovisk cupon',
+ 'MDL' => 'moldovisk leu',
+ 'MGA' => 'madagaskisk ariary',
'MGF' => 'Madagaskisk franc',
- 'MKD' => 'Makedonsk denar',
+ 'MKD' => 'makedonsk denar',
+ 'MKN' => 'makedonsk denar (1992–1993)',
'MLF' => 'Malisk franc',
- 'MMK' => 'Myanmarsk kyat',
- 'MNT' => 'Mongolsk tugrik',
- 'MOP' => 'Macaosk pataca',
- 'MRO' => 'Mauritansk ouguiya',
+ 'MMK' => 'myanmarsk kyat',
+ 'MNT' => 'mongolsk tugrik',
+ 'MOP' => 'macaosk pataca',
+ 'MRO' => 'mauritansk ouguiya (1973–2017)',
+ 'MRU' => 'mauritansk ouguiya',
'MTL' => 'Maltesisk lira',
'MTP' => 'Maltesisk pund',
- 'MUR' => 'Mauritisk rupee',
- 'MVR' => 'Maldivisk rufiyaa',
- 'MWK' => 'Malawisk kwacha',
- 'MXN' => 'Mexicansk peso',
+ 'MUR' => 'mauritisk rupee',
+ 'MVP' => 'maldivisk rupi (1947–1981)',
+ 'MVR' => 'maldivisk rufiyaa',
+ 'MWK' => 'malawisk kwacha',
+ 'MXN' => 'mexicansk peso',
'MXP' => 'Mexicansk silver peso (1861–1992)',
- 'MYR' => 'Malaysisk ringgit',
+ 'MYR' => 'malaysisk ringgit',
'MZE' => 'Mozambiquisk escudo',
'MZM' => 'Mozambiquisk metical (1980–2006)',
- 'MZN' => 'Mozambiquisk metical',
- 'NAD' => 'Namibisk dollar',
- 'NGN' => 'Nigeriansk naira',
+ 'MZN' => 'mozambiquisk metical',
+ 'NAD' => 'namibisk dollar',
+ 'NGN' => 'nigeriansk naira',
'NIC' => 'Nicaraguansk cordoba (1988–1991)',
- 'NIO' => 'Nicaraguansk cordoba',
+ 'NIO' => 'nicaraguansk cordoba',
'NLG' => 'Hollandsk guilder',
- 'NOK' => 'Norsk krone',
- 'NPR' => 'Nepalesisk rupee',
- 'NZD' => 'New Zealandsk dollar',
- 'OMR' => 'Omansk rial',
- 'PAB' => 'Panamansk balboa',
- 'PEI' => 'Peruviansk inti',
- 'PEN' => 'Peruviansk nuevo sol',
- 'PES' => 'Peruviansk sol (1863–1965)',
- 'PGK' => 'Papuansk kina',
- 'PHP' => 'Filippinsk peso',
- 'PKR' => 'Pakistansk rupee',
- 'PLN' => 'Polsk zloty',
+ 'NOK' => 'norsk krone',
+ 'NPR' => 'nepalesisk rupee',
+ 'NZD' => 'newzealandsk dollar',
+ 'OMR' => 'omansk rial',
+ 'PAB' => 'panamansk balboa',
+ 'PEI' => 'peruviansk inti',
+ 'PEN' => 'peruansk sol',
+ 'PES' => 'peruviansk sol (1863–1965)',
+ 'PGK' => 'papuansk kina',
+ 'PHP' => 'filippinsk peso',
+ 'PKR' => 'pakistansk rupee',
+ 'PLN' => 'polsk zloty',
'PLZ' => 'Polsk zloty (1950–1995)',
'PTE' => 'Portugisisk escudo',
- 'PYG' => 'Paraguaysk guarani',
- 'QAR' => 'Qatarsk rial',
+ 'PYG' => 'paraguaysk guarani',
+ 'QAR' => 'qatarsk rial',
+ 'RHD' => 'rhodesisk dollar',
'ROL' => 'Rumænsk leu (1952–2006)',
- 'RON' => 'Rumænsk leu',
- 'RSD' => 'Serbisk dinar',
- 'RUB' => 'Russisk rubel',
+ 'RON' => 'rumænsk leu',
+ 'RSD' => 'serbisk dinar',
+ 'RUB' => 'russisk rubel',
'RUR' => 'Russisk rubel (1991–1998)',
- 'RWF' => 'Rwandisk franc',
- 'SAR' => 'Saudiarabisk riyal',
- 'SBD' => 'Salomonsk dollar',
- 'SCR' => 'Seychellisk rupee',
+ 'RWF' => 'rwandisk franc',
+ 'SAR' => 'saudiarabisk riyal',
+ 'SBD' => 'salomonsk dollar',
+ 'SCR' => 'seychellisk rupee',
'SDD' => 'Sudansk dinar (1992–2007)',
- 'SDG' => 'Sudansk pund',
+ 'SDG' => 'sudansk pund',
'SDP' => 'Sudansk pund (1957–1998)',
- 'SEK' => 'Svensk krone',
- 'SGD' => 'Singaporeansk dollar',
- 'SHP' => 'Pund fra Saint Helena',
+ 'SEK' => 'svensk krone',
+ 'SGD' => 'singaporeansk dollar',
+ 'SHP' => 'pund fra Saint Helena',
'SIT' => 'Slovensk tolar',
'SKK' => 'Slovakisk koruna',
- 'SLL' => 'Sierraleonsk leone',
- 'SOS' => 'Somalisk shilling',
- 'SRD' => 'Surinamsk dollar',
+ 'SLL' => 'sierraleonsk leone',
+ 'SOS' => 'somalisk shilling',
+ 'SRD' => 'surinamsk dollar',
'SRG' => 'Surinamsk guilder',
- 'SSP' => 'Sydsudanske pund',
- 'STD' => 'Dobra fra Sao Tome og Principe',
+ 'SSP' => 'sydsudansk pund',
+ 'STD' => 'dobra fra Sao Tome og Principe (1977–2017)',
+ 'STN' => 'dobra fra Sao Tome og Principe',
'SUR' => 'Sovjetisk rubel',
'SVC' => 'Salvadoransk colon',
- 'SYP' => 'Syrisk pund',
- 'SZL' => 'Swazilandsk lilangeni',
- 'THB' => 'Thailandsk baht',
+ 'SYP' => 'syrisk pund',
+ 'SZL' => 'swazilandsk lilangeni',
+ 'THB' => 'thailandsk baht',
'TJR' => 'Tadsjikisk rubel',
- 'TJS' => 'Tadsjikisk somoni',
+ 'TJS' => 'tadsjikisk somoni',
'TMM' => 'Turkmensk manat (1993–2009)',
- 'TMT' => 'Turkmensk manat',
- 'TND' => 'Tunesisk dinar',
- 'TOP' => 'Tongansk paʻanga',
+ 'TMT' => 'turkmensk manat',
+ 'TND' => 'tunesisk dinar',
+ 'TOP' => 'tongansk paʻanga',
'TPE' => 'Escudo fra Timor',
'TRL' => 'Tyrkisk lire (1922–2005)',
- 'TRY' => 'Tyrkisk lira',
- 'TTD' => 'Dollar fra Trinidad og Tobago',
- 'TWD' => 'Ny taiwansk dollar',
- 'TZS' => 'Tanzanisk shilling',
- 'UAH' => 'Ukrainsk grynia',
+ 'TRY' => 'tyrkisk lira',
+ 'TTD' => 'dollar fra Trinidad og Tobago',
+ 'TWD' => 'ny taiwansk dollar',
+ 'TZS' => 'tanzanisk shilling',
+ 'UAH' => 'ukrainsk grynia',
'UAK' => 'Ukrainsk karbovanetz',
'UGS' => 'Ugandisk shilling (1966–1987)',
- 'UGX' => 'Ugandisk shilling',
- 'USD' => 'Amerikansk dollar',
+ 'UGX' => 'ugandisk shilling',
+ 'USD' => 'amerikansk dollar',
'USN' => 'Amerikansk dollar (næste dag)',
'USS' => 'Amerikansk dollar (samme dag)',
'UYP' => 'Uruguayansk peso (1975–1993)',
- 'UYU' => 'Uruguayansk peso',
- 'UZS' => 'Usbekisk sum',
+ 'UYU' => 'uruguayansk peso',
+ 'UZS' => 'usbekisk sum',
'VEB' => 'Venezuelansk bolivar (1871–2008)',
- 'VEF' => 'Venezuelansk bolivar',
- 'VND' => 'Vietnamesisk dong',
- 'VUV' => 'Vanuaisk vatu',
- 'WST' => 'Samoansk tala',
+ 'VEF' => 'venezuelansk bolivar (2008–2018)',
+ 'VES' => 'venezuelansk bolivar',
+ 'VND' => 'vietnamesisk dong',
+ 'VNN' => 'vietnamesisk dong (1978–1985)',
+ 'VUV' => 'vanuaisk vatu',
+ 'WST' => 'samoansk tala',
'XAF' => 'CFA-franc (BEAC)',
'XAG' => 'Sølv',
'XAU' => 'Guld',
'XBA' => 'EURCO',
'XBB' => 'EMU',
- 'XCD' => 'Østkaribisk dollar',
+ 'XCD' => 'østkaribisk dollar',
'XDR' => 'SDR',
'XEU' => 'ECU',
'XFO' => 'Fransk guldfranc',
@@ -770,24 +811,25 @@ $currencyNames = array(
'XPT' => 'Platin',
'XRE' => 'RINET-fond',
'XTS' => 'testvalutakode',
- 'XXX' => 'Ukendt valuta',
+ 'XXX' => 'ukendt valuta',
'YDD' => 'Yemenitisk dinar',
- 'YER' => 'Yemenitisk rial',
+ 'YER' => 'yemenitisk rial',
'YUD' => 'Jugoslavisk hard dinar (1966–1990)',
'YUM' => 'Jugoslavisk noviy dinar (1994–2002)',
'YUN' => 'Jugoslavisk konvertibel dinar (1990–1992)',
+ 'YUR' => 'jugoslavisk reformeret dinar (1992–1993)',
'ZAL' => 'Sydafrikansk rand (financial)',
- 'ZAR' => 'Sydafrikansk rand',
+ 'ZAR' => 'sydafrikansk rand',
'ZMK' => 'Zambisk kwacha (1968–2012)',
- 'ZMW' => 'Zambisk kwacha',
+ 'ZMW' => 'zambisk kwacha',
'ZRN' => 'Ny zairisk zaire (1993–1998)',
'ZRZ' => 'Zairisk zaire (1971–1993)',
'ZWD' => 'Zimbabwisk dollar (1980–2008)',
'ZWL' => 'Zimbabwisk dollar (2009)',
'ZWR' => 'Zimbabwisk dollar (2008)',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'AED' => 'AED',
'AFN' => 'AFN',
'ALL' => 'ALL',
@@ -811,12 +853,14 @@ $currencySymbols = array(
'BSD' => 'BSD',
'BTN' => 'BTN',
'BWP' => 'BWP',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CA$',
'CDF' => 'CDF',
'CHF' => 'CHF',
'CLP' => 'CLP',
+ 'CNH' => 'CNH',
'CNY' => 'CN¥',
'COP' => 'COP',
'CRC' => 'CRC',
@@ -880,6 +924,7 @@ $currencySymbols = array(
'MNT' => 'MNT',
'MOP' => 'MOP',
'MRO' => 'MRO',
+ 'MRU' => 'MRU',
'MUR' => 'MUR',
'MVR' => 'MVR',
'MWK' => 'MWK',
@@ -917,6 +962,7 @@ $currencySymbols = array(
'SRD' => 'SRD',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'STN',
'SYP' => 'SYP',
'SZL' => 'SZL',
'THB' => '฿',
@@ -934,6 +980,7 @@ $currencySymbols = array(
'UYU' => 'UYU',
'UZS' => 'UZS',
'VEF' => 'VEF',
+ 'VES' => 'VES',
'VND' => '₫',
'VUV' => 'VUV',
'WST' => 'WST',
@@ -943,19 +990,19 @@ $currencySymbols = array(
'XPF' => 'CFPF',
'YER' => 'YER',
'ZAR' => 'ZAR',
+ 'ZMK' => 'ZMK',
'ZMW' => 'ZMW',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'Ascensionøen',
'AD' => 'Andorra',
- 'AE' => 'Forenede Arabiske Emirater',
+ 'AE' => 'De Forenede Arabiske Emirater',
'AF' => 'Afghanistan',
'AG' => 'Antigua og Barbuda',
'AI' => 'Anguilla',
'AL' => 'Albanien',
'AM' => 'Armenien',
- 'AN' => 'Hollandske Antiller',
'AO' => 'Angola',
'AQ' => 'Antarktis',
'AR' => 'Argentina',
@@ -978,7 +1025,7 @@ $countryNames = array(
'BM' => 'Bermuda',
'BN' => 'Brunei',
'BO' => 'Bolivia',
- 'BQ' => 'Nederlandske antiller',
+ 'BQ' => 'De tidligere Nederlandske Antiller',
'BR' => 'Brasilien',
'BS' => 'Bahamas',
'BT' => 'Bhutan',
@@ -989,7 +1036,7 @@ $countryNames = array(
'CA' => 'Canada',
'CC' => 'Cocosøerne',
'CD' => 'Congo-Kinshasa',
- 'CF' => 'Centralafrikanske Republik',
+ 'CF' => 'Den Centralafrikanske Republik',
'CG' => 'Congo-Brazzaville',
'CH' => 'Schweiz',
'CI' => 'Elfenbenskysten',
@@ -1022,10 +1069,11 @@ $countryNames = array(
'ES' => 'Spanien',
'ET' => 'Etiopien',
'EU' => 'Den Europæiske Union',
+ 'EZ' => 'eurozonen',
'FI' => 'Finland',
'FJ' => 'Fiji',
'FK' => 'Falklandsøerne',
- 'FM' => 'Mikronesiens Forenede Stater',
+ 'FM' => 'Mikronesien',
'FO' => 'Færøerne',
'FR' => 'Frankrig',
'GA' => 'Gabon',
@@ -1042,7 +1090,7 @@ $countryNames = array(
'GP' => 'Guadeloupe',
'GQ' => 'Ækvatorialguinea',
'GR' => 'Grækenland',
- 'GS' => 'South Georgia og South Sandwich Islands',
+ 'GS' => 'South Georgia og De Sydlige Sandwichøer',
'GT' => 'Guatemala',
'GU' => 'Guam',
'GW' => 'Guinea-Bissau',
@@ -1163,7 +1211,7 @@ $countryNames = array(
'SO' => 'Somalia',
'SR' => 'Surinam',
'SS' => 'Sydsudan',
- 'ST' => 'Sao Tome og Principe',
+ 'ST' => 'São Tomé og Príncipe',
'SV' => 'El Salvador',
'SX' => 'Sint Maarten',
'SY' => 'Syrien',
@@ -1171,7 +1219,7 @@ $countryNames = array(
'TA' => 'Tristan da Cunha',
'TC' => 'Turks- og Caicosøerne',
'TD' => 'Tchad',
- 'TF' => 'De franske besiddelser i Det Sydlige Indiske Ocean',
+ 'TF' => 'De Franske Besiddelser i Det Sydlige Indiske Ocean',
'TG' => 'Togo',
'TH' => 'Thailand',
'TJ' => 'Tadsjikistan',
@@ -1188,6 +1236,7 @@ $countryNames = array(
'UA' => 'Ukraine',
'UG' => 'Uganda',
'UM' => 'Amerikanske oversøiske øer',
+ 'UN' => 'FN',
'US' => 'USA',
'UY' => 'Uruguay',
'UZ' => 'Usbekistan',
@@ -1206,9 +1255,11 @@ $countryNames = array(
'ZA' => 'Sydafrika',
'ZM' => 'Zambia',
'ZW' => 'Zimbabwe',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-one' => '{0} århundrede',
+ 'century-other' => '{0} århundreder',
'day-future-one' => 'om {0} dag',
'day-future-other' => 'om {0} dage',
'day-narrow-future-one' => 'om {0} dag',
@@ -1223,6 +1274,18 @@ $timeUnits = array(
'day-short-future-other' => 'om {0} dage',
'day-short-past-one' => 'for {0} dag siden',
'day-short-past-other' => 'for {0} dage siden',
+ 'fri-future-one' => 'om {0} fredag',
+ 'fri-future-other' => 'om {0} fredage',
+ 'fri-narrow-future-one' => 'om {0} fredag',
+ 'fri-narrow-future-other' => 'om {0} fredage',
+ 'fri-narrow-past-one' => 'for {0} fredag siden',
+ 'fri-narrow-past-other' => 'for {0} fredage siden',
+ 'fri-past-one' => 'for {0} fredag siden',
+ 'fri-past-other' => 'for {0} fredage siden',
+ 'fri-short-future-one' => 'om {0} fredag',
+ 'fri-short-future-other' => 'om {0} fredage',
+ 'fri-short-past-one' => 'for {0} fredag siden',
+ 'fri-short-past-other' => 'for {0} fredage siden',
'hour-future-one' => 'om {0} time',
'hour-future-other' => 'om {0} timer',
'hour-narrow-future-one' => 'om {0} time',
@@ -1255,20 +1318,32 @@ $timeUnits = array(
'minute-short-future-other' => 'om {0} min.',
'minute-short-past-one' => 'for {0} min. siden',
'minute-short-past-other' => 'for {0} min. siden',
+ 'mon-future-one' => 'om {0} mandag',
+ 'mon-future-other' => 'om {0} mandage',
+ 'mon-narrow-future-one' => 'om {0} mandag',
+ 'mon-narrow-future-other' => 'om {0} mandage',
+ 'mon-narrow-past-one' => 'for {0} mandag siden',
+ 'mon-narrow-past-other' => 'for {0} mandage siden',
+ 'mon-past-one' => 'for {0} mandag siden',
+ 'mon-past-other' => 'for {0} mandage siden',
+ 'mon-short-future-one' => 'om {0} mandag',
+ 'mon-short-future-other' => 'om {0} mandage',
+ 'mon-short-past-one' => 'for {0} mandag siden',
+ 'mon-short-past-other' => 'for {0} mandage siden',
'month-future-one' => 'om {0} måned',
'month-future-other' => 'om {0} måneder',
'month-narrow-future-one' => 'om {0} md.',
- 'month-narrow-future-other' => 'om {0} md.',
+ 'month-narrow-future-other' => 'om {0} mdr.',
'month-narrow-past-one' => 'for {0} md. siden',
- 'month-narrow-past-other' => 'for {0} md. siden',
+ 'month-narrow-past-other' => 'for {0} mdr. siden',
'month-one' => '{0} måned',
'month-other' => '{0} måneder',
'month-past-one' => 'for {0} måned siden',
'month-past-other' => 'for {0} måneder siden',
'month-short-future-one' => 'om {0} md.',
- 'month-short-future-other' => 'om {0} md.',
+ 'month-short-future-other' => 'om {0} mdr.',
'month-short-past-one' => 'for {0} md. siden',
- 'month-short-past-other' => 'for {0} md. siden',
+ 'month-short-past-other' => 'for {0} mdr. siden',
'nanosecond-one' => '{0} nanosekund',
'nanosecond-other' => '{0} nanosekunder',
'quarter-future-one' => 'om {0} kvartal',
@@ -1283,6 +1358,18 @@ $timeUnits = array(
'quarter-short-future-other' => 'om {0} kvt.',
'quarter-short-past-one' => 'for {0} kvt. siden',
'quarter-short-past-other' => 'for {0} kvt. siden',
+ 'sat-future-one' => 'om {0} lørdag',
+ 'sat-future-other' => 'om {0} lørdage',
+ 'sat-narrow-future-one' => 'om {0} lørdag',
+ 'sat-narrow-future-other' => 'om {0} lørdage',
+ 'sat-narrow-past-one' => 'for {0} lørdag siden',
+ 'sat-narrow-past-other' => 'for {0} lørdage siden',
+ 'sat-past-one' => 'for {0} lørdag siden',
+ 'sat-past-other' => 'for {0} lørdage siden',
+ 'sat-short-future-one' => 'om {0} lørdag',
+ 'sat-short-future-other' => 'om {0} lørdage',
+ 'sat-short-past-one' => 'for {0} lørdag siden',
+ 'sat-short-past-other' => 'for {0} lørdage siden',
'second-future-one' => 'om {0} sekund',
'second-future-other' => 'om {0} sekunder',
'second-narrow-future-one' => 'om {0} sek.',
@@ -1297,6 +1384,54 @@ $timeUnits = array(
'second-short-future-other' => 'om {0} sek.',
'second-short-past-one' => 'for {0} sek. siden',
'second-short-past-other' => 'for {0} sek. siden',
+ 'sun-future-one' => 'om {0} søndag',
+ 'sun-future-other' => 'om {0} søndage',
+ 'sun-narrow-future-one' => 'om {0} søndag',
+ 'sun-narrow-future-other' => 'om {0} søndage',
+ 'sun-narrow-past-one' => 'for {0} søndag siden',
+ 'sun-narrow-past-other' => 'for {0} søndage siden',
+ 'sun-past-one' => 'for {0} søndag siden',
+ 'sun-past-other' => 'for {0} søndage siden',
+ 'sun-short-future-one' => 'om {0} søndag',
+ 'sun-short-future-other' => 'om {0} søndage',
+ 'sun-short-past-one' => 'for {0} søndag siden',
+ 'sun-short-past-other' => 'for {0} søndage siden',
+ 'thu-future-one' => 'om {0} torsdag',
+ 'thu-future-other' => 'om {0} torsdage',
+ 'thu-narrow-future-one' => 'om {0} torsdag',
+ 'thu-narrow-future-other' => 'om {0} torsdage',
+ 'thu-narrow-past-one' => 'for {0} torsdag siden',
+ 'thu-narrow-past-other' => 'for {0} torsdage siden',
+ 'thu-past-one' => 'for {0} torsdag siden',
+ 'thu-past-other' => 'for {0} torsdage siden',
+ 'thu-short-future-one' => 'om {0} torsdag',
+ 'thu-short-future-other' => 'om {0} torsdage',
+ 'thu-short-past-one' => 'for {0} torsdag siden',
+ 'thu-short-past-other' => 'for {0} torsdage siden',
+ 'tue-future-one' => 'om {0} tirsdag',
+ 'tue-future-other' => 'om {0} tirsdage',
+ 'tue-narrow-future-one' => 'om {0} tirsdag',
+ 'tue-narrow-future-other' => 'om {0} tirsdage',
+ 'tue-narrow-past-one' => 'for {0} tirsdag siden',
+ 'tue-narrow-past-other' => 'for {0} tirsdage siden',
+ 'tue-past-one' => 'for {0} tirsdag siden',
+ 'tue-past-other' => 'for {0} tirsdage siden',
+ 'tue-short-future-one' => 'om {0} tirsdag',
+ 'tue-short-future-other' => 'om {0} tirsdage',
+ 'tue-short-past-one' => 'for {0} tirsdag siden',
+ 'tue-short-past-other' => 'for {0} tirsdage siden',
+ 'wed-future-one' => 'om {0} onsdag',
+ 'wed-future-other' => 'om {0} onsdage',
+ 'wed-narrow-future-one' => 'om {0} onsdag',
+ 'wed-narrow-future-other' => 'om {0} onsdage',
+ 'wed-narrow-past-one' => 'for {0} onsdag siden',
+ 'wed-narrow-past-other' => 'for {0} onsdage siden',
+ 'wed-past-one' => 'for {0} onsdag siden',
+ 'wed-past-other' => 'for {0} onsdage siden',
+ 'wed-short-future-one' => 'om {0} onsdag',
+ 'wed-short-future-other' => 'om {0} onsdage',
+ 'wed-short-past-one' => 'for {0} onsdag siden',
+ 'wed-short-past-other' => 'for {0} onsdage siden',
'week-future-one' => 'om {0} uge',
'week-future-other' => 'om {0} uger',
'week-narrow-future-one' => 'om {0} uge',
@@ -1325,4 +1460,4 @@ $timeUnits = array(
'year-short-future-other' => 'om {0} år',
'year-short-past-one' => 'for {0} år siden',
'year-short-past-other' => 'for {0} år siden',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesDe.php b/MLEB/cldr/CldrNames/CldrNamesDe.php
index 062788e6..12238d6b 100644
--- a/MLEB/cldr/CldrNames/CldrNamesDe.php
+++ b/MLEB/cldr/CldrNames/CldrNamesDe.php
@@ -1,10 +1,10 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'Afar',
'ab' => 'Abchasisch',
- 'ace' => 'Aceh-Sprache',
- 'ach' => 'Acholi-Sprache',
+ 'ace' => 'Aceh',
+ 'ach' => 'Acholi',
'ada' => 'Adangme',
'ady' => 'Adygeisch',
'ae' => 'Avestisch',
@@ -12,7 +12,7 @@ $languageNames = array(
'af' => 'Afrikaans',
'afh' => 'Afrihili',
'agq' => 'Aghem',
- 'ain' => 'Ainu-Sprache',
+ 'ain' => 'Ainu',
'ak' => 'Akan',
'akk' => 'Akkadisch',
'akz' => 'Alabama',
@@ -26,15 +26,16 @@ $languageNames = array(
'ar' => 'Arabisch',
'ar-001' => 'Modernes Hocharabisch',
'arc' => 'Aramäisch',
- 'arn' => 'Araukanisch',
+ 'arn' => 'Mapudungun',
'aro' => 'Araona',
- 'arp' => 'Arapaho-Sprache',
+ 'arp' => 'Arapaho',
'arq' => 'Algerisches Arabisch',
- 'arw' => 'Arawak-Sprache',
+ 'ars' => 'Arabisch (Nadschd)',
+ 'arw' => 'Arawak',
'ary' => 'Marokkanisches Arabisch',
'arz' => 'Ägyptisches Arabisch',
'as' => 'Assamesisch',
- 'asa' => 'Pare',
+ 'asa' => 'Asu',
'ase' => 'Amerikanische Gebärdensprache',
'ast' => 'Asturianisch',
'av' => 'Awarisch',
@@ -42,31 +43,31 @@ $languageNames = array(
'awa' => 'Awadhi',
'ay' => 'Aymara',
'az' => 'Aserbaidschanisch',
- 'azb' => 'Südaserbaidschanisch',
'ba' => 'Baschkirisch',
'bal' => 'Belutschisch',
'ban' => 'Balinesisch',
'bar' => 'Bairisch',
- 'bas' => 'Basaa-Sprache',
+ 'bas' => 'Basaa',
'bax' => 'Bamun',
'bbc' => 'Batak Toba',
'bbj' => 'Ghomala',
'be' => 'Weißrussisch',
'bej' => 'Bedauye',
- 'bem' => 'Bemba-Sprache',
+ 'bem' => 'Bemba',
'bew' => 'Betawi',
'bez' => 'Bena',
'bfd' => 'Bafut',
'bfq' => 'Badaga',
'bg' => 'Bulgarisch',
+ 'bgn' => 'Westliches Belutschi',
'bho' => 'Bhodschpuri',
'bi' => 'Bislama',
- 'bik' => 'Bikol-Sprache',
- 'bin' => 'Bini-Sprache',
+ 'bik' => 'Bikol',
+ 'bin' => 'Bini',
'bjn' => 'Banjaresisch',
'bkm' => 'Kom',
- 'bla' => 'Blackfoot-Sprache',
- 'bm' => 'Bambara-Sprache',
+ 'bla' => 'Blackfoot',
+ 'bm' => 'Bambara',
'bn' => 'Bengalisch',
'bo' => 'Tibetisch',
'bpy' => 'Bishnupriya',
@@ -90,48 +91,49 @@ $languageNames = array(
'ce' => 'Tschetschenisch',
'ceb' => 'Cebuano',
'cgg' => 'Rukiga',
- 'ch' => 'Chamorro-Sprache',
- 'chb' => 'Chibcha-Sprache',
+ 'ch' => 'Chamorro',
+ 'chb' => 'Chibcha',
'chg' => 'Tschagataisch',
- 'chk' => 'Trukesisch',
- 'chm' => 'Tscheremissisch',
+ 'chk' => 'Chuukesisch',
+ 'chm' => 'Mari',
'chn' => 'Chinook',
'cho' => 'Choctaw',
'chp' => 'Chipewyan',
'chr' => 'Cherokee',
'chy' => 'Cheyenne',
- 'ckb' => 'Sorani',
+ 'ckb' => 'Zentralkurdisch',
'co' => 'Korsisch',
'cop' => 'Koptisch',
'cps' => 'Capiznon',
'cr' => 'Cree',
'crh' => 'Krimtatarisch',
+ 'crs' => 'Seychellenkreol',
'cs' => 'Tschechisch',
'csb' => 'Kaschubisch',
'cu' => 'Kirchenslawisch',
'cv' => 'Tschuwaschisch',
'cy' => 'Walisisch',
'da' => 'Dänisch',
- 'dak' => 'Dakota-Sprache',
+ 'dak' => 'Dakota',
'dar' => 'Darginisch',
'dav' => 'Taita',
'de' => 'Deutsch',
'de-at' => 'Österreichisches Deutsch',
'de-ch' => 'Schweizer Hochdeutsch',
- 'del' => 'Delaware-Sprache',
+ 'del' => 'Delaware',
'den' => 'Slave',
'dgr' => 'Dogrib',
- 'din' => 'Dinka-Sprache',
+ 'din' => 'Dinka',
'dje' => 'Zarma',
'doi' => 'Dogri',
'dsb' => 'Niedersorbisch',
'dtp' => 'Zentral-Dusun',
'dua' => 'Duala',
'dum' => 'Mittelniederländisch',
- 'dv' => 'Maledivisch',
+ 'dv' => 'Dhivehi',
'dyo' => 'Diola',
- 'dyu' => 'Dyula-Sprache',
- 'dz' => 'Bhutanisch',
+ 'dyu' => 'Dyula',
+ 'dz' => 'Dzongkha',
'dzg' => 'Dazaga',
'ebu' => 'Embu',
'ee' => 'Ewe',
@@ -142,62 +144,53 @@ $languageNames = array(
'el' => 'Griechisch',
'elx' => 'Elamisch',
'en' => 'Englisch',
- 'en-au' => 'Australisches Englisch',
- 'en-ca' => 'Kanadisches Englisch',
- 'en-gb' => 'Britisches Englisch',
- 'en-us' => 'Amerikanisches Englisch',
'enm' => 'Mittelenglisch',
'eo' => 'Esperanto',
'es' => 'Spanisch',
- 'es-419' => 'Lateinamerikanisches Spanisch',
- 'es-es' => 'Europäisches Spanisch',
- 'es-mx' => 'Mexikanisches Spanisch',
'esu' => 'Zentral-Alaska-Yupik',
'et' => 'Estnisch',
'eu' => 'Baskisch',
'ewo' => 'Ewondo',
'ext' => 'Extremadurisch',
'fa' => 'Persisch',
- 'fan' => 'Pangwe-Sprache',
- 'fat' => 'Fanti-Sprache',
+ 'fan' => 'Pangwe',
+ 'fat' => 'Fanti',
'ff' => 'Ful',
'fi' => 'Finnisch',
'fil' => 'Filipino',
'fit' => 'Meänkieli',
'fj' => 'Fidschi',
'fo' => 'Färöisch',
- 'fon' => 'Fon-Sprache',
+ 'fon' => 'Fon',
'fr' => 'Französisch',
- 'fr-ca' => 'Kanadisches Französisch',
- 'fr-ch' => 'Schweizer Französisch',
'frc' => 'Cajun',
'frm' => 'Mittelfranzösisch',
'fro' => 'Altfranzösisch',
'frp' => 'Frankoprovenzalisch',
'frr' => 'Nordfriesisch',
'frs' => 'Ostfriesisch',
- 'fur' => 'Friulisch',
+ 'fur' => 'Friaulisch',
'fy' => 'Westfriesisch',
'ga' => 'Irisch',
- 'gaa' => 'Ga-Sprache',
+ 'gaa' => 'Ga',
'gag' => 'Gagausisch',
'gan' => 'Gan',
'gay' => 'Gayo',
- 'gba' => 'Gbaya-Sprache',
+ 'gba' => 'Gbaya',
'gbz' => 'Gabri',
'gd' => 'Schottisches Gälisch',
'gez' => 'Geez',
- 'gil' => 'Gilbertesisch',
- 'gl' => 'Galizisch',
+ 'gil' => 'Kiribatisch',
+ 'gl' => 'Galicisch',
'glk' => 'Gilaki',
'gmh' => 'Mittelhochdeutsch',
- 'gn' => 'Guarani',
+ 'gn' => 'Guaraní',
'goh' => 'Althochdeutsch',
'gom' => 'Goa-Konkani',
- 'gon' => 'Gondi-Sprache',
+ 'gon' => 'Gondi',
'gor' => 'Mongondou',
'got' => 'Gotisch',
- 'grb' => 'Grebo-Sprache',
+ 'grb' => 'Grebo',
'grc' => 'Altgriechisch',
'gsw' => 'Schweizerdeutsch',
'gu' => 'Gujarati',
@@ -205,26 +198,26 @@ $languageNames = array(
'gur' => 'Farefare',
'guz' => 'Gusii',
'gv' => 'Manx',
- 'gwi' => 'Kutchin-Sprache',
- 'ha' => 'Hausa',
- 'hai' => 'Haida-Sprache',
+ 'gwi' => 'Kutchin',
+ 'ha' => 'Haussa',
+ 'hai' => 'Haida',
'hak' => 'Hakka',
'haw' => 'Hawaiisch',
'he' => 'Hebräisch',
'hi' => 'Hindi',
'hif' => 'Fidschi-Hindi',
- 'hil' => 'Hiligaynon-Sprache',
+ 'hil' => 'Hiligaynon',
'hit' => 'Hethitisch',
- 'hmn' => 'Miao-Sprache',
+ 'hmn' => 'Miao',
'ho' => 'Hiri-Motu',
'hr' => 'Kroatisch',
'hsb' => 'Obersorbisch',
'hsn' => 'Xiang',
- 'ht' => 'Haitianisch',
+ 'ht' => 'Haiti-Kreolisch',
'hu' => 'Ungarisch',
'hup' => 'Hupa',
'hy' => 'Armenisch',
- 'hz' => 'Herero-Sprache',
+ 'hz' => 'Herero',
'ia' => 'Interlingua',
'iba' => 'Iban',
'ibb' => 'Ibibio',
@@ -233,15 +226,15 @@ $languageNames = array(
'ig' => 'Igbo',
'ii' => 'Yi',
'ik' => 'Inupiak',
- 'ilo' => 'Ilokano-Sprache',
+ 'ilo' => 'Ilokano',
'inh' => 'Inguschisch',
- 'io' => 'Ido-Sprache',
+ 'io' => 'Ido',
'is' => 'Isländisch',
'it' => 'Italienisch',
'iu' => 'Inuktitut',
'izh' => 'Ischorisch',
'ja' => 'Japanisch',
- 'jam' => 'Jamaikanisch-kreolische Sprache',
+ 'jam' => 'Jamaikanisch-Kreolisch',
'jbo' => 'Lojban',
'jgo' => 'Ngomba',
'jmc' => 'Machame',
@@ -252,7 +245,7 @@ $languageNames = array(
'ka' => 'Georgisch',
'kaa' => 'Karakalpakisch',
'kab' => 'Kabylisch',
- 'kac' => 'Kachin-Sprache',
+ 'kac' => 'Kachin',
'kaj' => 'Jju',
'kam' => 'Kamba',
'kaw' => 'Kawi',
@@ -265,7 +258,7 @@ $languageNames = array(
'kfo' => 'Koro',
'kg' => 'Kongolesisch',
'kgp' => 'Kaingang',
- 'kha' => 'Khasi-Sprache',
+ 'kha' => 'Khasi',
'kho' => 'Sakisch',
'khq' => 'Koyra Chiini',
'khw' => 'Khowar',
@@ -276,35 +269,35 @@ $languageNames = array(
'kkj' => 'Kako',
'kl' => 'Grönländisch',
'kln' => 'Kalenjin',
- 'km' => 'Kambodschanisch',
- 'kmb' => 'Kimbundu-Sprache',
+ 'km' => 'Khmer',
+ 'kmb' => 'Kimbundu',
'kn' => 'Kannada',
'ko' => 'Koreanisch',
'koi' => 'Komi-Permjakisch',
'kok' => 'Konkani',
'kos' => 'Kosraeanisch',
- 'kpe' => 'Kpelle-Sprache',
- 'kr' => 'Kanuri-Sprache',
+ 'kpe' => 'Kpelle',
+ 'kr' => 'Kanuri',
'krc' => 'Karatschaiisch-Balkarisch',
'kri' => 'Krio',
'krj' => 'Kinaray-a',
'krl' => 'Karelisch',
- 'kru' => 'Oraon-Sprache',
- 'ks' => 'Kaschmirisch',
+ 'kru' => 'Oraon',
+ 'ks' => 'Kaschmiri',
'ksb' => 'Shambala',
'ksf' => 'Bafia',
'ksh' => 'Kölsch',
'ku' => 'Kurdisch',
'kum' => 'Kumükisch',
- 'kut' => 'Kutenai-Sprache',
- 'kv' => 'Komi-Sprache',
+ 'kut' => 'Kutenai',
+ 'kv' => 'Komi',
'kw' => 'Kornisch',
'ky' => 'Kirgisisch',
'la' => 'Latein',
'lad' => 'Ladino',
'lag' => 'Langi',
'lah' => 'Lahnda',
- 'lam' => 'Lamba-Sprache',
+ 'lam' => 'Lamba',
'lb' => 'Luxemburgisch',
'lez' => 'Lesgisch',
'lfn' => 'Lingua Franca Nova',
@@ -317,15 +310,17 @@ $languageNames = array(
'ln' => 'Lingala',
'lo' => 'Laotisch',
'lol' => 'Mongo',
- 'loz' => 'Rotse-Sprache',
+ 'lou' => 'Kreol (Louisiana)',
+ 'loz' => 'Lozi',
+ 'lrc' => 'Nördliches Luri',
'lt' => 'Litauisch',
'ltg' => 'Lettgallisch',
'lu' => 'Luba-Katanga',
'lua' => 'Luba-Lulua',
- 'lui' => 'Luiseno-Sprache',
- 'lun' => 'Lunda-Sprache',
- 'luo' => 'Luo-Sprache',
- 'lus' => 'Lushai-Sprache',
+ 'lui' => 'Luiseno',
+ 'lun' => 'Lunda',
+ 'luo' => 'Luo',
+ 'lus' => 'Lushai',
'luy' => 'Luhya',
'lv' => 'Lettisch',
'lzh' => 'Klassisches Chinesisch',
@@ -335,12 +330,12 @@ $languageNames = array(
'mag' => 'Khotta',
'mai' => 'Maithili',
'mak' => 'Makassarisch',
- 'man' => 'Manding-Sprache',
- 'mas' => 'Massai-Sprache',
+ 'man' => 'Malinke',
+ 'mas' => 'Massai',
'mde' => 'Maba',
- 'mdf' => 'Moksha',
+ 'mdf' => 'Mokschanisch',
'mdr' => 'Mandaresisch',
- 'men' => 'Mende-Sprache',
+ 'men' => 'Mende',
'mer' => 'Meru',
'mfe' => 'Morisyen',
'mg' => 'Madagassisch',
@@ -349,22 +344,22 @@ $languageNames = array(
'mgo' => 'Meta’',
'mh' => 'Marschallesisch',
'mi' => 'Maori',
- 'mic' => 'Micmac-Sprache',
- 'min' => 'Minangkabau-Sprache',
+ 'mic' => 'Micmac',
+ 'min' => 'Minangkabau',
'mk' => 'Mazedonisch',
'ml' => 'Malayalam',
'mn' => 'Mongolisch',
'mnc' => 'Mandschurisch',
- 'mni' => 'Meithei-Sprache',
+ 'mni' => 'Meithei',
'moh' => 'Mohawk',
- 'mos' => 'Mossi-Sprache',
+ 'mos' => 'Mossi',
'mr' => 'Marathi',
'mrj' => 'Bergmari',
'ms' => 'Malaiisch',
'mt' => 'Maltesisch',
'mua' => 'Mundang',
'mul' => 'Mehrsprachig',
- 'mus' => 'Muskogee-Sprache',
+ 'mus' => 'Muskogee',
'mwl' => 'Mirandesisch',
'mwr' => 'Marwari',
'mwv' => 'Mentawai',
@@ -377,13 +372,14 @@ $languageNames = array(
'nap' => 'Neapolitanisch',
'naq' => 'Nama',
'nb' => 'Norwegisch Bokmål',
- 'nd' => 'Nord-Ndebele-Sprache',
+ 'nd' => 'Nord-Ndebele',
'nds' => 'Niederdeutsch',
+ 'nds-nl' => 'Niedersächsisch',
'ne' => 'Nepalesisch',
'new' => 'Newari',
'ng' => 'Ndonga',
- 'nia' => 'Nias-Sprache',
- 'niu' => 'Niue-Sprache',
+ 'nia' => 'Nias',
+ 'niu' => 'Niue',
'njo' => 'Ao-Naga',
'nl' => 'Niederländisch',
'nl-be' => 'Flämisch',
@@ -395,35 +391,36 @@ $languageNames = array(
'non' => 'Altnordisch',
'nov' => 'Novial',
'nqo' => 'N’Ko',
- 'nr' => 'Süd-Ndebele-Sprache',
- 'nso' => 'Nord-Sotho-Sprache',
+ 'nr' => 'Süd-Ndebele',
+ 'nso' => 'Nord-Sotho',
'nus' => 'Nuer',
'nv' => 'Navajo',
'nwc' => 'Alt-Newari',
- 'ny' => 'Nyanja-Sprache',
- 'nym' => 'Nyamwezi-Sprache',
+ 'ny' => 'Nyanja',
+ 'nym' => 'Nyamwezi',
'nyn' => 'Nyankole',
'nyo' => 'Nyoro',
'nzi' => 'Nzima',
'oc' => 'Okzitanisch',
- 'oj' => 'Ojibwa-Sprache',
+ 'oj' => 'Ojibwa',
'om' => 'Oromo',
'or' => 'Oriya',
'os' => 'Ossetisch',
- 'osa' => 'Osage-Sprache',
+ 'osa' => 'Osage',
'ota' => 'Osmanisch',
- 'pa' => 'Panjabi',
- 'pag' => 'Pangasinan-Sprache',
+ 'pa' => 'Punjabi',
+ 'pag' => 'Pangasinan',
'pal' => 'Mittelpersisch',
- 'pam' => 'Pampanggan-Sprache',
+ 'pam' => 'Pampanggan',
'pap' => 'Papiamento',
'pau' => 'Palau',
'pcd' => 'Picardisch',
+ 'pcm' => 'Nigerianisches Pidgin',
'pdc' => 'Pennsylvaniadeutsch',
'pdt' => 'Plautdietsch',
'peo' => 'Altpersisch',
'pfl' => 'Pfälzisch',
- 'phn' => 'Phönikisch',
+ 'phn' => 'Phönizisch',
'pi' => 'Pali',
'pl' => 'Polnisch',
'pms' => 'Piemontesisch',
@@ -433,18 +430,16 @@ $languageNames = array(
'pro' => 'Altprovenzalisch',
'ps' => 'Paschtu',
'pt' => 'Portugiesisch',
- 'pt-br' => 'Brasilianisches Portugiesisch',
- 'pt-pt' => 'Europäisches Portugiesisch',
'qu' => 'Quechua',
'quc' => 'K’iche’',
'qug' => 'Chimborazo Hochland-Quechua',
'raj' => 'Rajasthani',
- 'rap' => 'Osterinsel-Sprache',
+ 'rap' => 'Rapanui',
'rar' => 'Rarotonganisch',
'rgn' => 'Romagnol',
'rif' => 'Tarifit',
'rm' => 'Rätoromanisch',
- 'rn' => 'Rundi-Sprache',
+ 'rn' => 'Rundi',
'ro' => 'Rumänisch',
'ro-md' => 'Moldauisch',
'rof' => 'Rombo',
@@ -454,10 +449,10 @@ $languageNames = array(
'rue' => 'Russinisch',
'rug' => 'Roviana',
'rup' => 'Aromunisch',
- 'rw' => 'Ruandisch',
+ 'rw' => 'Kinyarwanda',
'rwk' => 'Rwa',
'sa' => 'Sanskrit',
- 'sad' => 'Sandawe-Sprache',
+ 'sad' => 'Sandawe',
'sah' => 'Jakutisch',
'sam' => 'Samaritanisch',
'saq' => 'Samburu',
@@ -471,7 +466,8 @@ $languageNames = array(
'sco' => 'Schottisch',
'sd' => 'Sindhi',
'sdc' => 'Sassarisch',
- 'se' => 'Nord-Samisch',
+ 'sdh' => 'Südkurdisch',
+ 'se' => 'Nordsamisch',
'see' => 'Seneca',
'seh' => 'Sena',
'sei' => 'Seri',
@@ -482,76 +478,76 @@ $languageNames = array(
'sgs' => 'Samogitisch',
'sh' => 'Serbo-Kroatisch',
'shi' => 'Taschelhit',
- 'shn' => 'Schan-Sprache',
+ 'shn' => 'Schan',
'shu' => 'Tschadisch-Arabisch',
'si' => 'Singhalesisch',
'sid' => 'Sidamo',
'sk' => 'Slowakisch',
'sl' => 'Slowenisch',
- 'sli' => 'Schlesisch',
+ 'sli' => 'Schlesisch (Niederschlesisch)',
'sly' => 'Selayar',
'sm' => 'Samoanisch',
- 'sma' => 'Süd-Samisch',
- 'smj' => 'Lule-Lappisch',
- 'smn' => 'Inari-Lappisch',
- 'sms' => 'Skolt-Lappisch',
+ 'sma' => 'Südsamisch',
+ 'smj' => 'Lule-Samisch',
+ 'smn' => 'Inari-Samisch',
+ 'sms' => 'Skolt-Samisch',
'sn' => 'Shona',
- 'snk' => 'Soninke-Sprache',
+ 'snk' => 'Soninke',
'so' => 'Somali',
'sog' => 'Sogdisch',
'sq' => 'Albanisch',
'sr' => 'Serbisch',
'srn' => 'Srananisch',
- 'srr' => 'Serer-Sprache',
+ 'srr' => 'Serer',
'ss' => 'Swazi',
'ssy' => 'Saho',
- 'st' => 'Süd-Sotho-Sprache',
+ 'st' => 'Süd-Sotho',
'stq' => 'Saterfriesisch',
'su' => 'Sundanesisch',
- 'suk' => 'Sukuma-Sprache',
+ 'suk' => 'Sukuma',
'sus' => 'Susu',
'sux' => 'Sumerisch',
'sv' => 'Schwedisch',
'sw' => 'Suaheli',
+ 'sw-cd' => 'Kongo-Swahili',
'swb' => 'Komorisch',
- 'swc' => 'Kongo-Suaheli',
'syc' => 'Altsyrisch',
'syr' => 'Syrisch',
- 'szl' => 'Schlesisch (Polen)',
- 'ta' => 'Tamilisch',
+ 'szl' => 'Schlesisch (Wasserpolnisch)',
+ 'ta' => 'Tamil',
'tcy' => 'Tulu',
'te' => 'Telugu',
'tem' => 'Temne',
'teo' => 'Teso',
- 'ter' => 'Tereno-Sprache',
- 'tet' => 'Tetum-Sprache',
+ 'ter' => 'Tereno',
+ 'tet' => 'Tetum',
'tg' => 'Tadschikisch',
'th' => 'Thailändisch',
- 'ti' => 'Tigrinja',
+ 'ti' => 'Tigrinya',
'tig' => 'Tigre',
- 'tiv' => 'Tiv-Sprache',
+ 'tiv' => 'Tiv',
'tk' => 'Turkmenisch',
'tkl' => 'Tokelauanisch',
'tkr' => 'Tsachurisch',
'tl' => 'Tagalog',
'tlh' => 'Klingonisch',
- 'tli' => 'Tlingit-Sprache',
+ 'tli' => 'Tlingit',
'tly' => 'Talisch',
'tmh' => 'Tamaseq',
- 'tn' => 'Tswana-Sprache',
+ 'tn' => 'Tswana',
'to' => 'Tongaisch',
- 'tog' => 'Tsonga-Sprache',
+ 'tog' => 'Nyasa Tonga',
'tpi' => 'Neumelanesisch',
'tr' => 'Türkisch',
'tru' => 'Turoyo',
'trv' => 'Taroko',
'ts' => 'Tsonga',
'tsd' => 'Tsakonisch',
- 'tsi' => 'Tsimshian-Sprache',
+ 'tsi' => 'Tsimshian',
'tt' => 'Tatarisch',
'ttt' => 'Tatisch',
- 'tum' => 'Tumbuka-Sprache',
- 'tvl' => 'Elliceanisch',
+ 'tum' => 'Tumbuka',
+ 'tvl' => 'Tuvaluisch',
'tw' => 'Twi',
'twq' => 'Tasawaq',
'ty' => 'Tahitisch',
@@ -561,12 +557,12 @@ $languageNames = array(
'ug' => 'Uigurisch',
'uga' => 'Ugaritisch',
'uk' => 'Ukrainisch',
- 'umb' => 'Mbundu-Sprache',
- 'und' => 'Unbestimmte Sprache',
+ 'umb' => 'Umbundu',
+ 'und' => 'Unbekannte Sprache',
'ur' => 'Urdu',
'uz' => 'Usbekisch',
'vai' => 'Vai',
- 've' => 'Venda-Sprache',
+ 've' => 'Venda',
'vec' => 'Venetisch',
'vep' => 'Wepsisch',
'vi' => 'Vietnamesisch',
@@ -577,17 +573,18 @@ $languageNames = array(
'vro' => 'Võro',
'vun' => 'Vunjo',
'wa' => 'Wallonisch',
- 'wae' => 'Walser-Dialekte',
- 'wal' => 'Walamo-Sprache',
+ 'wae' => 'Walliserdeutsch',
+ 'wal' => 'Walamo',
'war' => 'Waray',
- 'was' => 'Washo-Sprache',
+ 'was' => 'Washo',
+ 'wbp' => 'Warlpiri',
'wo' => 'Wolof',
'wuu' => 'Wu',
'xal' => 'Kalmückisch',
'xh' => 'Xhosa',
'xmf' => 'Mingrelisch',
'xog' => 'Soga',
- 'yao' => 'Yao-Sprache',
+ 'yao' => 'Yao',
'yap' => 'Yapesisch',
'yav' => 'Yangben',
'ybb' => 'Yemba',
@@ -605,12 +602,12 @@ $languageNames = array(
'zh-hans' => 'Chinesisch (vereinfacht)',
'zh-hant' => 'Chinesisch (traditionell)',
'zu' => 'Zulu',
- 'zun' => 'Zuni-Sprache',
+ 'zun' => 'Zuni',
'zxx' => 'Keine Sprachinhalte',
'zza' => 'Zaza',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'ADP' => 'Andorranische Pesete',
'AED' => 'VAE-Dirham',
'AFA' => 'Afghanische Afghani (1927–2002)',
@@ -649,7 +646,7 @@ $currencyNames = array(
'BIF' => 'Burundi-Franc',
'BMD' => 'Bermuda-Dollar',
'BND' => 'Brunei-Dollar',
- 'BOB' => 'Bolivanischer Boliviano',
+ 'BOB' => 'Bolivianischer Boliviano',
'BOL' => 'Bolivianischer Boliviano (1863–1963)',
'BOP' => 'Bolivianischer Peso',
'BOV' => 'Boliviansiche Mvdol',
@@ -665,7 +662,8 @@ $currencyNames = array(
'BUK' => 'Birmanischer Kyat',
'BWP' => 'Botswanischer Pula',
'BYB' => 'Belarus-Rubel (1994–1999)',
- 'BYR' => 'Weißrussischer Rubel',
+ 'BYN' => 'Weißrussischer Rubel',
+ 'BYR' => 'Weißrussischer Rubel (2000–2016)',
'BZD' => 'Belize-Dollar',
'CAD' => 'Kanadischer Dollar',
'CDF' => 'Kongo-Franc',
@@ -675,6 +673,7 @@ $currencyNames = array(
'CLE' => 'Chilenischer Escudo',
'CLF' => 'Chilenische Unidades de Fomento',
'CLP' => 'Chilenischer Peso',
+ 'CNH' => 'Renminbi Yuan (Off–Shore)',
'CNX' => 'Dollar der Chinesischen Volksbank',
'CNY' => 'Renminbi Yuan',
'COP' => 'Kolumbianischer Peso',
@@ -684,7 +683,7 @@ $currencyNames = array(
'CSK' => 'Tschechoslowakische Krone',
'CUC' => 'Kubanischer Peso (konvertibel)',
'CUP' => 'Kubanischer Peso',
- 'CVE' => 'Kap-Verde-Escudo',
+ 'CVE' => 'Cabo-Verde-Escudo',
'CYP' => 'Zypern-Pfund',
'CZK' => 'Tschechische Krone',
'DDM' => 'Mark der DDR',
@@ -779,7 +778,8 @@ $currencyNames = array(
'MMK' => 'Myanmarischer Kyat',
'MNT' => 'Mongolischer Tögrög',
'MOP' => 'Macao-Pataca',
- 'MRO' => 'Mauretanischer Ouguiya',
+ 'MRO' => 'Mauretanischer Ouguiya (1973–2017)',
+ 'MRU' => 'Mauretanischer Ouguiya',
'MTL' => 'Maltesische Lira',
'MTP' => 'Maltesisches Pfund',
'MUR' => 'Mauritius-Rupie',
@@ -804,7 +804,7 @@ $currencyNames = array(
'OMR' => 'Omanischer Rial',
'PAB' => 'Panamaischer Balboa',
'PEI' => 'Peruanischer Inti',
- 'PEN' => 'Peruanischer Neuer Sol',
+ 'PEN' => 'Peruanischer Sol',
'PES' => 'Peruanischer Sol (1863–1965)',
'PGK' => 'Papua-Neuguineischer Kina',
'PHP' => 'Philippinischer Peso',
@@ -837,7 +837,8 @@ $currencyNames = array(
'SRD' => 'Suriname-Dollar',
'SRG' => 'Suriname Gulden',
'SSP' => 'Südsudanesisches Pfund',
- 'STD' => 'São-toméischer Dobra',
+ 'STD' => 'São-toméischer Dobra (1977–2017)',
+ 'STN' => 'São-toméischer Dobra',
'SUR' => 'Sowjetischer Rubel',
'SVC' => 'El Salvador Colon',
'SYP' => 'Syrisches Pfund',
@@ -867,7 +868,8 @@ $currencyNames = array(
'UYU' => 'Uruguayischer Peso',
'UZS' => 'Usbekistan-Sum',
'VEB' => 'Venezolanischer Bolívar (1871–2008)',
- 'VEF' => 'Venezolanischer Bolívar',
+ 'VEF' => 'Venezolanischer Bolívar (2008–2018)',
+ 'VES' => 'Venezolanischer Bolívar',
'VND' => 'Vietnamesischer Dong',
'VNN' => 'Vietnamesischer Dong(1978–1985)',
'VUV' => 'Vanuatu-Vatu',
@@ -908,9 +910,9 @@ $currencyNames = array(
'ZWD' => 'Simbabwe-Dollar (1980–2008)',
'ZWL' => 'Simbabwe-Dollar (2009)',
'ZWR' => 'Simbabwe-Dollar (2008)',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'ADP' => 'ADP',
'AED' => 'AED',
'AFA' => 'AFA',
@@ -962,6 +964,7 @@ $currencySymbols = array(
'BTN' => 'BTN',
'BWP' => 'BWP',
'BYB' => 'BYB',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CA$',
@@ -972,6 +975,7 @@ $currencySymbols = array(
'CLE' => 'CLE',
'CLF' => 'CLF',
'CLP' => 'CLP',
+ 'CNH' => 'CNH',
'CNX' => 'CNX',
'CNY' => 'CN¥',
'COP' => 'COP',
@@ -1073,6 +1077,7 @@ $currencySymbols = array(
'MNT' => 'MNT',
'MOP' => 'MOP',
'MRO' => 'MRO',
+ 'MRU' => 'MRU',
'MTL' => 'MTL',
'MTP' => 'MTP',
'MUR' => 'MUR',
@@ -1128,6 +1133,7 @@ $currencySymbols = array(
'SRG' => 'SRG',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'STN',
'SUR' => 'SUR',
'SVC' => 'SVC',
'SYP' => 'SYP',
@@ -1158,6 +1164,7 @@ $currencySymbols = array(
'UZS' => 'UZS',
'VEB' => 'VEB',
'VEF' => 'VEF',
+ 'VES' => 'VES',
'VND' => '₫',
'VNN' => 'VNN',
'VUV' => 'VUV',
@@ -1198,9 +1205,9 @@ $currencySymbols = array(
'ZWD' => 'ZWD',
'ZWL' => 'ZWL',
'ZWR' => 'ZWR',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'Ascension',
'AD' => 'Andorra',
'AE' => 'Vereinigte Arabische Emirate',
@@ -1209,7 +1216,6 @@ $countryNames = array(
'AI' => 'Anguilla',
'AL' => 'Albanien',
'AM' => 'Armenien',
- 'AN' => 'Niederländische Antillen',
'AO' => 'Angola',
'AQ' => 'Antarktis',
'AR' => 'Argentinien',
@@ -1255,11 +1261,11 @@ $countryNames = array(
'CP' => 'Clipperton-Insel',
'CR' => 'Costa Rica',
'CU' => 'Kuba',
- 'CV' => 'Kap Verde',
+ 'CV' => 'Cabo Verde',
'CW' => 'Curaçao',
'CX' => 'Weihnachtsinsel',
'CY' => 'Zypern',
- 'CZ' => 'Tschechische Republik',
+ 'CZ' => 'Tschechien',
'DE' => 'Deutschland',
'DG' => 'Diego Garcia',
'DJ' => 'Dschibuti',
@@ -1276,6 +1282,7 @@ $countryNames = array(
'ES' => 'Spanien',
'ET' => 'Äthiopien',
'EU' => 'Europäische Union',
+ 'EZ' => 'Eurozone',
'FI' => 'Finnland',
'FJ' => 'Fidschi',
'FK' => 'Falklandinseln',
@@ -1283,7 +1290,7 @@ $countryNames = array(
'FO' => 'Färöer',
'FR' => 'Frankreich',
'GA' => 'Gabun',
- 'GB' => 'UK',
+ 'GB' => 'GB',
'GD' => 'Grenada',
'GE' => 'Georgien',
'GF' => 'Französisch-Guayana',
@@ -1302,7 +1309,7 @@ $countryNames = array(
'GW' => 'Guinea-Bissau',
'GY' => 'Guyana',
'HK' => 'Hongkong',
- 'HM' => 'Heard- und McDonald-Inseln',
+ 'HM' => 'Heard und McDonaldinseln',
'HN' => 'Honduras',
'HR' => 'Kroatien',
'HT' => 'Haiti',
@@ -1409,7 +1416,7 @@ $countryNames = array(
'SG' => 'Singapur',
'SH' => 'St. Helena',
'SI' => 'Slowenien',
- 'SJ' => 'Svalbard und Jan Mayen',
+ 'SJ' => 'Spitzbergen und Jan Mayen',
'SK' => 'Slowakei',
'SL' => 'Sierra Leone',
'SM' => 'San Marino',
@@ -1441,7 +1448,8 @@ $countryNames = array(
'TZ' => 'Tansania',
'UA' => 'Ukraine',
'UG' => 'Uganda',
- 'UM' => 'Amerikanisch-Ozeanien',
+ 'UM' => 'Amerikanische Überseeinseln',
+ 'UN' => 'UN',
'US' => 'USA',
'UY' => 'Uruguay',
'UZ' => 'Usbekistan',
@@ -1460,9 +1468,11 @@ $countryNames = array(
'ZA' => 'Südafrika',
'ZM' => 'Sambia',
'ZW' => 'Simbabwe',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-one' => '{0} Jahrhundert',
+ 'century-other' => '{0} Jahrhunderte',
'day-future-one' => 'in {0} Tag',
'day-future-other' => 'in {0} Tagen',
'day-narrow-future-one' => 'in {0} Tag',
@@ -1477,6 +1487,18 @@ $timeUnits = array(
'day-short-future-other' => 'in {0} Tagen',
'day-short-past-one' => 'vor {0} Tag',
'day-short-past-other' => 'vor {0} Tagen',
+ 'fri-future-one' => 'Freitag in {0} Woche',
+ 'fri-future-other' => 'Freitag in {0} Wochen',
+ 'fri-narrow-future-one' => 'Fr. in {0} W.',
+ 'fri-narrow-future-other' => 'Fr. in {0} W.',
+ 'fri-narrow-past-one' => 'Fr. vor {0} W.',
+ 'fri-narrow-past-other' => 'Fr. vor {0} W.',
+ 'fri-past-one' => 'Freitag vor {0} Woche',
+ 'fri-past-other' => 'Freitag vor {0} Wochen',
+ 'fri-short-future-one' => 'Fr. in {0} Woche',
+ 'fri-short-future-other' => 'Fr. in {0} Wochen',
+ 'fri-short-past-one' => 'Fr. vor {0} Woche',
+ 'fri-short-past-other' => 'Fr. vor {0} Wochen',
'hour-future-one' => 'in {0} Stunde',
'hour-future-other' => 'in {0} Stunden',
'hour-narrow-future-one' => 'in {0} Std.',
@@ -1509,6 +1531,18 @@ $timeUnits = array(
'minute-short-future-other' => 'in {0} Min.',
'minute-short-past-one' => 'vor {0} Min.',
'minute-short-past-other' => 'vor {0} Min.',
+ 'mon-future-one' => 'Montag in {0} Woche',
+ 'mon-future-other' => 'Montag in {0} Wochen',
+ 'mon-narrow-future-one' => 'Mo. in {0} W.',
+ 'mon-narrow-future-other' => 'Mo. in {0} W.',
+ 'mon-narrow-past-one' => 'Mo. vor {0} W.',
+ 'mon-narrow-past-other' => 'Mo. vor {0} W.',
+ 'mon-past-one' => 'Montag vor {0} Woche',
+ 'mon-past-other' => 'Montag vor {0} Wochen',
+ 'mon-short-future-one' => 'Mo. in {0} Woche',
+ 'mon-short-future-other' => 'Mo. in {0} Wochen',
+ 'mon-short-past-one' => 'Mo. vor {0} Woche',
+ 'mon-short-past-other' => 'Mo. vor {0} Wochen',
'month-future-one' => 'in {0} Monat',
'month-future-other' => 'in {0} Monaten',
'month-narrow-future-one' => 'in {0} Monat',
@@ -1537,6 +1571,18 @@ $timeUnits = array(
'quarter-short-future-other' => 'in {0} Quart.',
'quarter-short-past-one' => 'vor {0} Quart.',
'quarter-short-past-other' => 'vor {0} Quart.',
+ 'sat-future-one' => 'Samstag in {0} Woche',
+ 'sat-future-other' => 'Samstag in {0} Wochen',
+ 'sat-narrow-future-one' => 'Sa. in {0} W.',
+ 'sat-narrow-future-other' => 'Sa. in {0} W.',
+ 'sat-narrow-past-one' => 'Sa. vor {0} W.',
+ 'sat-narrow-past-other' => 'Sa. vor {0} W.',
+ 'sat-past-one' => 'Samstag vor {0} Woche',
+ 'sat-past-other' => 'Samstag vor {0} Wochen',
+ 'sat-short-future-one' => 'Sa. in {0} Woche',
+ 'sat-short-future-other' => 'Sa. in {0} Wochen',
+ 'sat-short-past-one' => 'Sa. vor {0} Woche',
+ 'sat-short-past-other' => 'Sa. vor {0} Wochen',
'second-future-one' => 'in {0} Sekunde',
'second-future-other' => 'in {0} Sekunden',
'second-narrow-future-one' => 'in {0} s',
@@ -1551,6 +1597,54 @@ $timeUnits = array(
'second-short-future-other' => 'in {0} Sek.',
'second-short-past-one' => 'vor {0} Sek.',
'second-short-past-other' => 'vor {0} Sek.',
+ 'sun-future-one' => 'Sonntag in {0} Woche',
+ 'sun-future-other' => 'Sonntag in {0} Wochen',
+ 'sun-narrow-future-one' => 'So. in {0} W.',
+ 'sun-narrow-future-other' => 'So. in {0} W.',
+ 'sun-narrow-past-one' => 'So. vor {0} W.',
+ 'sun-narrow-past-other' => 'So. vor {0} W.',
+ 'sun-past-one' => 'Sonntag vor {0} Woche',
+ 'sun-past-other' => 'Sonntag vor {0} Wochen',
+ 'sun-short-future-one' => 'So. in {0} Woche',
+ 'sun-short-future-other' => 'So. in {0} Wochen',
+ 'sun-short-past-one' => 'So. vor {0} Woche',
+ 'sun-short-past-other' => 'So. vor {0} Wochen',
+ 'thu-future-one' => 'Donnerstag in {0} Woche',
+ 'thu-future-other' => 'Donnerstag in {0} Wochen',
+ 'thu-narrow-future-one' => 'Do. in {0} W.',
+ 'thu-narrow-future-other' => 'Do. in {0} W.',
+ 'thu-narrow-past-one' => 'Do. vor {0} W.',
+ 'thu-narrow-past-other' => 'Do. vor {0} W.',
+ 'thu-past-one' => 'Donnerstag vor {0} Woche',
+ 'thu-past-other' => 'Donnerstag vor {0} Wochen',
+ 'thu-short-future-one' => 'Do. in {0} Woche',
+ 'thu-short-future-other' => 'Do. in {0} Wochen',
+ 'thu-short-past-one' => 'Do. vor {0} Woche',
+ 'thu-short-past-other' => 'Do. vor {0} Wochen',
+ 'tue-future-one' => 'Dienstag in {0} Woche',
+ 'tue-future-other' => 'Dienstag in {0} Wochen',
+ 'tue-narrow-future-one' => 'Di. in {0} W.',
+ 'tue-narrow-future-other' => 'Di. in {0} W.',
+ 'tue-narrow-past-one' => 'Di. vor {0} W.',
+ 'tue-narrow-past-other' => 'Di. vor {0} W.',
+ 'tue-past-one' => 'Dienstag vor {0} Woche',
+ 'tue-past-other' => 'Dienstag vor {0} Wochen',
+ 'tue-short-future-one' => 'Di. in {0} Woche',
+ 'tue-short-future-other' => 'Di. in {0} Wochen',
+ 'tue-short-past-one' => 'Di. vor {0} Woche',
+ 'tue-short-past-other' => 'Di. vor {0} Wochen',
+ 'wed-future-one' => 'Mittwoch in {0} Woche',
+ 'wed-future-other' => 'Mittwoch in {0} Wochen',
+ 'wed-narrow-future-one' => 'Mi. in {0} W.',
+ 'wed-narrow-future-other' => 'Mi. in {0} W.',
+ 'wed-narrow-past-one' => 'Mi. vor {0} W.',
+ 'wed-narrow-past-other' => 'Mi. vor {0} W.',
+ 'wed-past-one' => 'Mittwoch vor {0} Woche',
+ 'wed-past-other' => 'Mittwoch vor {0} Wochen',
+ 'wed-short-future-one' => 'Mi. in {0} Woche',
+ 'wed-short-future-other' => 'Mi. in {0} Wochen',
+ 'wed-short-past-one' => 'Mi. vor {0} Woche',
+ 'wed-short-past-other' => 'Mi. vor {0} Wochen',
'week-future-one' => 'in {0} Woche',
'week-future-other' => 'in {0} Wochen',
'week-narrow-future-one' => 'in {0} Wo.',
@@ -1579,4 +1673,4 @@ $timeUnits = array(
'year-short-future-other' => 'in {0} Jahren',
'year-short-past-one' => 'vor {0} Jahr',
'year-short-past-other' => 'vor {0} Jahren',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesDe_ch.php b/MLEB/cldr/CldrNames/CldrNamesDe_ch.php
index 6220d62e..06c6da57 100644
--- a/MLEB/cldr/CldrNames/CldrNamesDe_ch.php
+++ b/MLEB/cldr/CldrNames/CldrNamesDe_ch.php
@@ -1,26 +1,38 @@
<?php
-$languageNames = array(
+$languageNames = [
+ 'ace' => 'Aceh-Sprache',
+ 'ach' => 'Acholi-Sprache',
+ 'ars' => 'Nadschd-Arabisch',
+ 'bas' => 'Basaa-Sprache',
'be' => 'Weissrussisch',
+ 'bik' => 'Bikol-Sprache',
+ 'bin' => 'Bini-Sprache',
+ 'chb' => 'Chibcha-Sprache',
+ 'din' => 'Dinka-Sprache',
+ 'fan' => 'Pangwe-Sprache',
+ 'gba' => 'Gbaya-Sprache',
+ 'kmb' => 'Kimbundu-Sprache',
+ 'mus' => 'Muskogee-Sprache',
'prg' => 'Altpreussisch',
-);
+];
-$currencyNames = array(
- 'BYR' => 'Weissrussischer Rubel',
-);
+$currencyNames = [
+ 'BYN' => 'Weissrussischer Rubel',
+ 'BYR' => 'Weissrussischer Rubel (2000–2016)',
+ 'STN' => 'São-toméischer Dobra (2018)',
+ 'VEF' => 'Venezolanischer Bolívar',
+ 'VES' => 'VES',
+];
-$countryNames = array(
- 'BD' => 'Bangladesh',
+$countryNames = [
'BN' => 'Brunei',
'BW' => 'Botswana',
'BY' => 'Weissrussland',
'CV' => 'Kapverden',
- 'DJ' => 'Djibouti',
'GB' => 'Grossbritannien',
- 'MH' => 'Marshall-Inseln',
'QO' => 'Äusseres Ozeanien',
- 'RW' => 'Rwanda',
'SB' => 'Salomon-Inseln',
- 'ST' => 'Sao Tomé und Principe',
+ 'TL' => 'Osttimor',
'ZW' => 'Zimbabwe',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesDsb.php b/MLEB/cldr/CldrNames/CldrNamesDsb.php
index 199c777f..c496f360 100644
--- a/MLEB/cldr/CldrNames/CldrNamesDsb.php
+++ b/MLEB/cldr/CldrNames/CldrNamesDsb.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'afaršćina',
'ab' => 'abchazšćina',
'af' => 'afrikans',
@@ -225,7 +225,7 @@ $languageNames = array(
'su' => 'sundanšćina',
'sv' => 'šwedšćina',
'sw' => 'swahilišćina',
- 'swc' => 'kongojska swahilišćina',
+ 'sw-cd' => 'kongojska swahilišćina',
'ta' => 'tamilšćina',
'te' => 'telugšćina',
'teo' => 'teso',
@@ -265,9 +265,9 @@ $languageNames = array(
'zh-hant' => 'chinšćina (tradicionalna)',
'zu' => 'zulu',
'zxx' => 'žedno rěcne wopśimjeśe',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'ADP' => 'andorraska peseta',
'AED' => 'ZAE dirham',
'AFN' => 'afghaniski afgani',
@@ -313,7 +313,8 @@ $currencyNames = array(
'BUK' => 'burmaski kyat',
'BWP' => 'botswaniska pula',
'BYB' => 'běłoruski rubl (1994–1999)',
- 'BYR' => 'běłoruski rubl',
+ 'BYN' => 'běłoruski rubl',
+ 'BYR' => 'běłoruski rubl (2000–2016)',
'BZD' => 'belizeski dolar',
'CAD' => 'kanadiski dolar',
'CDF' => 'kongoski frank',
@@ -382,7 +383,8 @@ $currencyNames = array(
'MMK' => 'myanmarski kyat',
'MNT' => 'mongolski tugrik',
'MOP' => 'macaoska pataca',
- 'MRO' => 'mauretański ouguiya',
+ 'MRO' => 'mauretański ouguiya (1973–2017)',
+ 'MRU' => 'mauretański ouguiya',
'MUR' => 'mauriciska rupija',
'MVR' => 'malediwiska rupija',
'MWK' => 'malawiski kwacha',
@@ -399,7 +401,7 @@ $currencyNames = array(
'NZD' => 'nowoseelandski dolar',
'OMR' => 'omański rial',
'PAB' => 'panamaski balboa',
- 'PEN' => 'peruski nowy sol',
+ 'PEN' => 'peruski sol',
'PGK' => 'papua-neuguinejska kina',
'PHP' => 'filipinski peso',
'PKR' => 'pakistańska rupija',
@@ -421,7 +423,8 @@ $currencyNames = array(
'SOS' => 'somaliski šiling',
'SRD' => 'surinamski dolar',
'SSP' => 'pódpołdnjowosudański punt',
- 'STD' => 'são-tomeska dobra',
+ 'STD' => 'são-tomeska dobra (1977–2017)',
+ 'STN' => 'são-tomeska dobra',
'SVC' => 'el-salvadorski colón',
'SYP' => 'syriski punt',
'SZL' => 'swasiski lilangeni',
@@ -439,7 +442,8 @@ $currencyNames = array(
'USD' => 'ameriski dolar',
'UYU' => 'uruguayski peso',
'UZS' => 'usbekiski sum',
- 'VEF' => 'venezuelski bolívar',
+ 'VEF' => 'venezuelski bolívar (2008–2018)',
+ 'VES' => 'venezuelski bolívar',
'VND' => 'vietnamski dong',
'VUV' => 'vanuatski vatu',
'WST' => 'samoaska tala',
@@ -451,9 +455,9 @@ $currencyNames = array(
'YER' => 'jemeński rial',
'ZAR' => 'pódpołdnjowoafriski rand',
'ZMW' => 'sambiska kwacha',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'ALL' => 'ALL',
'AUD' => 'AUD',
'BGN' => 'BGN',
@@ -477,9 +481,9 @@ $currencySymbols = array(
'XCD' => 'EC$',
'XOF' => 'CFA',
'XPF' => 'CFPF',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'Ascension',
'AD' => 'Andorra',
'AE' => 'Zjadnośone arabiske emiraty',
@@ -738,9 +742,9 @@ $countryNames = array(
'ZA' => 'Pódpołdnjowa Afrika (Republika)',
'ZM' => 'Sambija',
'ZW' => 'Simbabwe',
-);
+];
-$timeUnits = array(
+$timeUnits = [
'day-few' => '{0} dny',
'day-future-few' => 'za {0} dny',
'day-future-one' => 'za {0} źeń',
@@ -973,4 +977,4 @@ $timeUnits = array(
'year-short-past-other' => 'pśed {0} l.',
'year-short-past-two' => 'pśed {0} l.',
'year-two' => '{0} lěśe',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesDz.php b/MLEB/cldr/CldrNames/CldrNamesDz.php
index c225390f..3ec633e0 100644
--- a/MLEB/cldr/CldrNames/CldrNamesDz.php
+++ b/MLEB/cldr/CldrNames/CldrNamesDz.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'ཨ་ཕར་ཁ',
'ab' => 'ཨཱབ་ཁ་ཟི་ཡ་ཁ',
'af' => 'ཨཕ་རི་ཀཱནས་ཁ',
@@ -145,9 +145,9 @@ $languageNames = array(
'zh-hant' => 'སྔ་དུས་ཀྱི་རྒྱ་མི་ཁ',
'zu' => 'ཟུ་ལུ་ཁ',
'zxx' => 'སྐད་རིག་ནང་དོན་མེདཔ',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'AED' => 'ཡུ་ནཱའི་ཊེཌ་ ཨ་རབ་ ཨེ་མེ་རེཊས་ཀྱི་དངུལ་ ཌིར་ཧཱམ',
'AFN' => 'ཨཕ་གཱན་གྱི་དངུལ་ ཨཕ་ག་ནི',
'AUD' => 'ཨཱོས་ཊྲེ་ལི་ཡ་གི་དངུལ་ ཌོ་ལར',
@@ -218,13 +218,14 @@ $currencyNames = array(
'USD' => 'ཡུ་ཨེས་ ཌོ་ལར',
'UYU' => 'ཡུ་རུ་གུ་ཝའི་གི་དངུལ་ པེ་སོ',
'UZS' => 'ཨུས་བེ་ཀིས་ཏཱན་གྱི་དངུལ་ སོམ',
- 'VEF' => 'བེ་ནི་ཛུ་ཝེ་ལ་གི་དངུལ་ བོ་ལི་བར',
+ 'VEF' => 'བེ་ནི་ཛུ་ཝེ་ལ་གི་དངུལ་ བོ་ལི་བར (2008–2018)',
+ 'VES' => 'བེ་ནི་ཛུ་ཝེ་ལ་གི་དངུལ་ བོ་ལི་བར',
'VND' => 'བེཊ་ནཱམ་གྱི་དངུལ་ ཌོང',
'XXX' => 'མ་ཤེས་པའི་དངུལ',
'ZAR' => 'སཱའུཐ་ ཨཕ་རི་ཀ་གི་དངུལ་ རཱནད',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'AUD' => 'AU$',
'BRL' => 'R$',
'BTN' => 'Nu.',
@@ -242,9 +243,9 @@ $currencySymbols = array(
'THB' => 'TH฿',
'TWD' => 'NT$',
'USD' => 'US$',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'ཨེ་སེན་ཤུན་ཚོ་གླིང༌',
'AD' => 'ཨཱན་དོ་ར',
'AE' => 'ཡུ་ནཱའི་ཊེཌ་ ཨ་རབ་ ཨེ་མེ་རེཊས',
@@ -502,9 +503,9 @@ $countryNames = array(
'ZA' => 'སཱའུཐ་ ཨཕ་རི་ཀ',
'ZM' => 'ཛམ་བྷི་ཡ',
'ZW' => 'ཛིམ་བྷབ་ཝེ',
-);
+];
-$timeUnits = array(
+$timeUnits = [
'day-future-other' => 'ཉིནམ་ {0} ནང་',
'day-other' => 'ཉིན་ཞག་ {0}',
'day-past-other' => 'ཉིནམ་ {0} ཧེ་མ་',
@@ -526,4 +527,4 @@ $timeUnits = array(
'year-future-other' => 'ལོ་འཁོར་ {0} ནང་',
'year-other' => 'ལོ་འཁོར་ {0}',
'year-past-other' => 'ལོ་འཁོར་ {0} ཧེ་མ་',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesEe.php b/MLEB/cldr/CldrNames/CldrNamesEe.php
index 85fc7377..c85ec05f 100644
--- a/MLEB/cldr/CldrNames/CldrNamesEe.php
+++ b/MLEB/cldr/CldrNames/CldrNamesEe.php
@@ -1,13 +1,13 @@
<?php
-$languageNames = array(
+$languageNames = [
'ab' => 'abkhaziagbe',
'ady' => 'adyghegbe',
'af' => 'afrikaangbe',
'agq' => 'aghemgbe',
'ak' => 'blugbe',
'am' => 'amhariagbe',
- 'ar' => 'arabiagbe',
+ 'ar' => 'Arabiagbe',
'as' => 'assamegbe',
'asa' => 'asagbe',
'ast' => 'asturiagbe',
@@ -26,7 +26,7 @@ $languageNames = array(
'bi' => 'bislamagbe',
'bkm' => 'komgbe',
'bm' => 'bambaragbe',
- 'bn' => 'bengalgbe',
+ 'bn' => 'Bengaligbe',
'bo' => 'tibetagbe',
'br' => 'bretongbe',
'brx' => 'bodogbe',
@@ -42,27 +42,28 @@ $languageNames = array(
'cs' => 'tsɛkgbe',
'cy' => 'walesgbe',
'da' => 'denmarkgbe',
- 'de' => 'germaniagbe',
- 'de-at' => 'austriatɔwo ƒe germaniagbe',
- 'de-ch' => 'swizerlanɖ germaniagbe kɔkɔtɔ',
+ 'de' => 'Germaniagbe',
+ 'de-at' => 'Germaniagbe (Austria)',
+ 'de-ch' => 'Germaniagbe (Switzerland)',
'dje' => 'zamagbe',
'dua' => 'dualagbe',
'dv' => 'divehgbe',
'dyo' => 'dzola-fonyigbe',
'dz' => 'dzongkhagbe',
'ebu' => 'embugbe',
- 'ee' => 'eʋegbe',
+ 'ee' => 'Eʋegbe',
'efi' => 'efigbe',
'el' => 'grisigbe',
- 'en' => 'yevugbe',
- 'en-au' => 'australiatɔwo ƒe yevugbe',
- 'en-ca' => 'kanadatɔwo ƒe yevugbe',
- 'en-gb' => 'britaintɔwo ƒe yevugbe',
- 'en-us' => 'u.s.dukɔmetɔwo ƒe yevugbe',
+ 'en' => 'Yevugbe',
+ 'en-au' => 'Yevugbe (Australia)',
+ 'en-ca' => 'Yevugbe (Canada)',
+ 'en-gb' => 'Yevugbe (Britain)',
+ 'en-us' => 'Yevugbe (America)',
'eo' => 'esperantogbe',
- 'es' => 'spaniagbe',
- 'es-419' => 'latin amerikatɔwo ƒe spaniagbe',
- 'es-es' => 'iberiatɔwo ƒe spaniagbe',
+ 'es' => 'Spanishgbe',
+ 'es-419' => 'Spanishgbe (Latin America)',
+ 'es-es' => 'Spanishgbe (Europe)',
+ 'es-mx' => 'Spanishgbe (Mexico)',
'et' => 'estoniagbe',
'eu' => 'basqugbe',
'ewo' => 'ewondogbe',
@@ -73,9 +74,9 @@ $languageNames = array(
'fil' => 'filipingbe',
'fj' => 'fidzigbe',
'fo' => 'faroegbe',
- 'fr' => 'fransegbe',
- 'fr-ca' => 'kanadatɔwo ƒe fransegbe',
- 'fr-ch' => 'swizerlanɖtɔwo ƒe fransegbe',
+ 'fr' => 'Fransegbe',
+ 'fr-ca' => 'Fransegbe (Canada)',
+ 'fr-ch' => 'Fransegbe (Switzerland)',
'fy' => 'ɣetoɖoƒe frisiagbe',
'ga' => 'irelanɖgbe',
'gaa' => 'gɛgbe',
@@ -88,7 +89,7 @@ $languageNames = array(
'ha' => 'hausagbe',
'haw' => 'hawaigbe',
'he' => 'hebrigbe',
- 'hi' => 'hindigbe',
+ 'hi' => 'Hindigbe',
'hil' => 'hiligenɔgbe',
'ho' => 'hiri motugbe',
'hr' => 'kroatiagbe',
@@ -96,13 +97,13 @@ $languageNames = array(
'hu' => 'hungarigbe',
'hy' => 'armeniagbe',
'ibb' => 'ibibiogbe',
- 'id' => 'indonesiagbe',
+ 'id' => 'Indonesiagbe',
'ig' => 'igbogbe',
'ilo' => 'ilikogbe',
'inh' => 'ingusigbe',
'is' => 'icelanɖgbe',
- 'it' => 'italiagbe',
- 'ja' => 'dzapangbe',
+ 'it' => 'Italiagbe',
+ 'ja' => 'Japangbe',
'jv' => 'dzavangbe',
'ka' => 'gɔgiagbe',
'kbd' => 'kabardiagbe',
@@ -115,7 +116,7 @@ $languageNames = array(
'kl' => 'kalaalisugbe',
'km' => 'khmergbe',
'kn' => 'kannadagbe',
- 'ko' => 'koreagbe',
+ 'ko' => 'Koreagbe',
'kok' => 'konkaniagbe',
'kos' => 'kosraeagbe',
'kr' => 'kanuriagbe',
@@ -159,8 +160,8 @@ $languageNames = array(
'nd' => 'dziehe ndebelegbe',
'ne' => 'nepalgbe',
'niu' => 'niuegbe',
- 'nl' => 'hɔlandgbe',
- 'nl-be' => 'flemiagbe',
+ 'nl' => 'Hollandgbe',
+ 'nl-be' => 'Flemishgbe',
'nmg' => 'kwasiogbe',
'nn' => 'nɔweigbe ninɔsk',
'nnh' => 'ngiemboongbe',
@@ -175,18 +176,18 @@ $languageNames = array(
'pag' => 'pangsinagbe',
'pap' => 'papiamentogbe',
'pau' => 'paluagbe',
- 'pl' => 'polandgbe',
+ 'pl' => 'Polishgbe',
'pon' => 'ponpeiagbe',
'ps' => 'pashtogbe',
- 'pt' => 'pɔtugalgbe',
- 'pt-br' => 'braziltɔwo ƒe portugalgbe',
- 'pt-pt' => 'iberiatɔwo ƒe portugalgbe',
+ 'pt' => 'Portuguesegbe',
+ 'pt-br' => 'Portuguesegbe (Brazil)',
+ 'pt-pt' => 'Portuguesegbe (Europe)',
'qu' => 'kwetsuagbe',
'rm' => 'romanshgbe',
'rn' => 'rundigbe',
'ro' => 'romaniagbe',
'rof' => 'rombogbe',
- 'ru' => 'rɔtsiagbe',
+ 'ru' => 'Russiagbe',
'rw' => 'ruwandagbe',
'rwk' => 'rwagbe',
'sa' => 'sanskrigbe',
@@ -207,7 +208,6 @@ $languageNames = array(
'sr' => 'serbiagbe',
'ss' => 'swatgbe',
'st' => 'anyiehe sothogbe',
- 'su' => 'sudangbe',
'sv' => 'swedengbe',
'sw' => 'swahili',
'swb' => 'komorogbe',
@@ -215,7 +215,7 @@ $languageNames = array(
'te' => 'telegugbe',
'tet' => 'tetumgbe',
'tg' => 'tadzikistangbe',
- 'th' => 'tailandgbe',
+ 'th' => 'Thailandgbe',
'ti' => 'tigrinyagbe',
'tk' => 'tɛkmengbe',
'tkl' => 'tokelaugbe',
@@ -223,7 +223,7 @@ $languageNames = array(
'tn' => 'tswanagbe',
'to' => 'tongagbe',
'tpi' => 'tok pisigbe',
- 'tr' => 'tɛkigbe',
+ 'tr' => 'Turkishgbe',
'ts' => 'tsongagbe',
'tt' => 'tatargbe',
'tvl' => 'tuvalugbe',
@@ -249,14 +249,14 @@ $languageNames = array(
'yo' => 'yorubagbe',
'yue' => 'cantongbe',
'za' => 'zhuangbe',
- 'zh' => 'kinagbe',
+ 'zh' => 'Chinagbe',
'zh-hans' => 'tsainagbe',
'zh-hant' => 'blema tsainagbe',
'zu' => 'zulugbe',
'zxx' => 'gbegbɔgblɔ manɔmee',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'ADP' => 'andorraga peseta',
'AED' => 'united arab emiratesga dirham',
'AFA' => 'afghanistanga afghani (1927–2002)',
@@ -264,7 +264,7 @@ $currencyNames = array(
'ALK' => 'albaniaga lek (1946–1965)',
'ALL' => 'albaniaga lek',
'AMD' => 'armeniaga dram',
- 'ANG' => 'nedalands antilleaga guilder',
+ 'ANG' => 'netherlands antilleaga guilder',
'AOA' => 'angolaga kwanza',
'AOK' => 'angolaga kwanza (1977–1991)',
'AON' => 'angolaga kwanza (1990–2000)',
@@ -275,14 +275,14 @@ $currencyNames = array(
'ARP' => 'argentinaga peso (1983–1985)',
'ARS' => 'argentinaga peso',
'ATS' => 'ɔstriaga schilling',
- 'AUD' => 'australiaga dollar',
+ 'AUD' => 'Australiaga dollar',
'AWG' => 'arubaga lorin',
'AZM' => 'azerbaidzanga manat (1993–2006)',
'AZN' => 'azerbaidzanga manat',
'BAD' => 'bosnia-herzegovinaga dinar (1992–1994)',
'BAM' => 'bosnia-herzegovinaga convertible mark',
'BAN' => 'bosnia kple herzegovinaga dinar yeyètɔ (1994–1997)',
- 'BBD' => 'barbadiaga dollar',
+ 'BBD' => 'barbadosga dollar',
'BDT' => 'bangladeshga taka',
'BEC' => 'beldziumga franc (convertible)',
'BEF' => 'beldziumga franc',
@@ -302,41 +302,42 @@ $currencyNames = array(
'BRB' => 'braziliaga cruzeiro xoxotɔ (1967–1986)',
'BRC' => 'brazilia cruzado (1986–1989)',
'BRE' => 'braziliaga cruzeiro xoxotɔ gbãtɔ (1990–1993)',
- 'BRL' => 'brazilga real',
+ 'BRL' => 'braziliaga real',
'BRN' => 'brazilia cruzado xoxotɔ (1989–1990)',
'BRR' => 'braziliaga cruzeiro (1993–1994)',
'BRZ' => 'braziliaga cruzeiro (1942–1967)',
- 'BSD' => 'bahamiaga dollar',
+ 'BSD' => 'bahamasga dollar',
'BTN' => 'bhutanga ngultrum',
'BUK' => 'burmaga kyat',
'BWP' => 'botswanaga pula',
'BYB' => 'belarusiaga ruble yeytɔ (1994–1999)',
- 'BYR' => 'belarusiaga ruble',
+ 'BYN' => 'belarusiaga ruble',
+ 'BYR' => 'belarusiaga ruble (2000–2016)',
'BZD' => 'belizega dollar',
- 'CAD' => 'kanadaga dollar',
+ 'CAD' => 'canadaga dollar',
'CDF' => 'kongoga franc',
'CHE' => 'WIR euro CHE',
- 'CHF' => 'swissga franc',
+ 'CHF' => 'switzerlandga franc',
'CHW' => 'WIR euro CHW',
'CLE' => 'tsilega escudo',
'CLF' => 'tsilegakɔnta dzidzenu UF',
- 'CLP' => 'tsilega peso',
+ 'CLP' => 'chilega peso',
'CNX' => 'tsainatɔwo ƒe gadzraɖoƒe dollar',
- 'CNY' => 'tsainaga yuan',
- 'COP' => 'kolombiaga peso',
+ 'CNY' => 'Chinesega yuan',
+ 'COP' => 'colombiaga peso',
'COU' => 'kolombiaga vavãtɔ',
- 'CRC' => 'kosta rikaga kolón',
+ 'CRC' => 'costa ricaga colón',
'CSD' => 'serbiaga dinar (2002–2006)',
'CSK' => 'tsɛkoslovakiaga hard koruna',
- 'CUC' => 'kubaga convertible peso',
- 'CUP' => 'kubaga peso',
+ 'CUC' => 'cubaga convertible peso',
+ 'CUP' => 'cubaga peso',
'CVE' => 'kape verdega escudo',
'CYP' => 'saipriɔtga pound',
- 'CZK' => 'tsɛk repɔblikga koruna',
+ 'CZK' => 'czechga koruna',
'DDM' => 'ɣedzeƒe germaniaga mark',
'DEM' => 'germaniaga mark',
'DJF' => 'dziboutiga franc',
- 'DKK' => 'danemarkga krone',
+ 'DKK' => 'denmarkga krone',
'DOP' => 'dominicaga peso',
'DZD' => 'aldzeriaga dinar',
'ECS' => 'ekuadɔga sucre',
@@ -348,17 +349,17 @@ $currencyNames = array(
'ESB' => 'spaniaga peseta (Convertible)',
'ESP' => 'spaniaga peseta',
'ETB' => 'ethiopiaga birr',
- 'EUR' => 'euro',
+ 'EUR' => 'EUR',
'FIM' => 'finlandga markka',
'FJD' => 'fidziga dollar',
- 'FKP' => 'falklanɖ ƒudomekpo dukɔwo ƒe ga pound',
+ 'FKP' => 'falkland islands pound',
'FRF' => 'frentsiga franc',
'GBP' => 'britainga pound',
'GEK' => 'dzɔdziaga kupon larit',
'GEL' => 'dzɔdziaga lari',
'GHC' => 'ghana siɖi (1979–2007)',
'GHS' => 'ghana siɖi',
- 'GIP' => 'gilbrataga pound',
+ 'GIP' => 'gilbratarga pound',
'GMD' => 'gambiaga dalasi',
'GNF' => 'giniga franc',
'GNS' => 'giniga syli',
@@ -368,26 +369,26 @@ $currencyNames = array(
'GWE' => 'pɔtugaltɔwo ƒe giniga escudo',
'GWP' => 'gini-bisau peso',
'GYD' => 'guyanaga dollar',
- 'HKD' => 'hong kongga dollar',
+ 'HKD' => 'Hong Kongga dollar',
'HNL' => 'honduraga lempira',
'HRD' => 'kroatiaga dinar',
- 'HRK' => 'kroatiaga kuna',
+ 'HRK' => 'croatiaga kuna',
'HTG' => 'haitiga gourde',
'HUF' => 'hungariaga forint',
- 'IDR' => 'indinesiaga rupiah',
+ 'IDR' => 'Indonesiaga rupiah',
'IEP' => 'ireland pound',
'ILP' => 'israelga pound',
'ILR' => 'israelga sheqel (1980–1985)',
'ILS' => 'israelga yeyetɔ sheqel',
- 'INR' => 'indiaga rupee',
+ 'INR' => 'Indiaga rupee',
'IQD' => 'irakga dinar',
'IRR' => 'iranga rial',
'ISJ' => 'aiselandga króna (1918–1981)',
- 'ISK' => 'aiselandga króna',
+ 'ISK' => 'icelandga króna',
'ITL' => 'italiaga lira',
- 'JMD' => 'dzamaikaga dollar',
+ 'JMD' => 'jamaicaga dollar',
'JOD' => 'yɔdanga dinar',
- 'JPY' => 'dzapanga yen',
+ 'JPY' => 'Japanesega yen',
'KES' => 'kenyaga shilling',
'KGS' => 'kirgistanga som',
'KHR' => 'kambodiaga riel',
@@ -395,9 +396,9 @@ $currencyNames = array(
'KPW' => 'dziehe koreaga won',
'KRH' => 'anyiehe koreaga hwan (1953–1962)',
'KRO' => 'anyiehe koreaga won (1945–1953)',
- 'KRW' => 'anyiehe koreaga won',
+ 'KRW' => 'South Koreaga won',
'KWD' => 'kuwaitga dinar',
- 'KYD' => 'kayman ƒudomekpoga dollar',
+ 'KYD' => 'cayman islandsga dollar',
'KZT' => 'kazakhstanga tenge',
'LAK' => 'laosga kip',
'LBP' => 'lebanonga pound',
@@ -419,25 +420,26 @@ $currencyNames = array(
'MDL' => 'moldovaga leu',
'MGA' => 'malagasega ariary',
'MGF' => 'malagasega franc',
- 'MKD' => 'makedoniaga denar',
+ 'MKD' => 'marcedoniaga denar',
'MKN' => 'makedoniaga denar (1992–1993)',
'MLF' => 'maliga franc',
'MMK' => 'myanmaga kyat',
'MNT' => 'mongoliaga tugrik',
'MOP' => 'makanesega pataca',
- 'MRO' => 'mɔritaniaga ouguiya',
+ 'MRO' => 'mɔritaniaga ouguiya (1973–2017)',
+ 'MRU' => 'mɔritaniaga ouguiya',
'MTL' => 'maltaga lira',
'MTP' => 'maltaga pound',
'MUR' => 'mɔritiusga rupee',
'MVR' => 'maldiviaga rufiyaa',
'MWK' => 'malawiga kwacha',
- 'MXN' => 'meksikoga peso',
+ 'MXN' => 'mexicoga peso',
'MYR' => 'malaysiaga ringit',
'MZN' => 'mozambikga metikal',
'NAD' => 'namibiaga dollar',
'NGN' => 'naidzeriaga naira',
'NIC' => 'nikaraguaga córdoba (1988–1991)',
- 'NIO' => 'nikaraguaga córdoba',
+ 'NIO' => 'nicaraguaga córdoba',
'NLG' => 'hollandga guilder',
'NOK' => 'norwayga krone',
'NPR' => 'nepalga rupee',
@@ -445,12 +447,12 @@ $currencyNames = array(
'OMR' => 'omanga rial',
'PAB' => 'panamaga balboa',
'PEI' => 'peruga inti',
- 'PEN' => 'peruga nuevo sol',
- 'PES' => 'peruga nuevo sol (1863–1965)',
+ 'PEN' => 'peruga sol',
+ 'PES' => 'peruga sol (1863–1965)',
'PGK' => 'papua new guineaga kina',
'PHP' => 'filipiniga peso',
'PKR' => 'pakistaniga rupee',
- 'PLN' => 'polanɖga zloty',
+ 'PLN' => 'polandga zloty',
'PLZ' => 'polanɖga zloty (1950–1995)',
'PTE' => 'pɔtugalga escudo',
'PYG' => 'paraguayga guarani',
@@ -459,16 +461,16 @@ $currencyNames = array(
'ROL' => 'romaniaga leu (1952–2006)',
'RON' => 'romaniaga leu',
'RSD' => 'serbiaga dinar',
- 'RUB' => 'rɔtsiaga ruble',
+ 'RUB' => 'russiaga ruble',
'RUR' => 'rɔtsiaga ruble (1991–1998)',
'RWF' => 'rwandaga franc',
- 'SAR' => 'saudiga riyal',
+ 'SAR' => 'Saudi Arabiaga riyal',
'SBD' => 'solomon ƒudomekpo dukɔwo ƒe ga dollar',
'SCR' => 'sɛtselsga rupee',
'SDD' => 'sudanga dinar (1992–2007)',
'SDG' => 'sudanga pound',
'SDP' => 'sudanga pound (1957–1998)',
- 'SEK' => 'swedenga krona',
+ 'SEK' => 'swedenga krone',
'SGD' => 'singapɔga dollar',
'SHP' => 'saint helenaga pound',
'SIT' => 'slovaniaga tolar',
@@ -478,12 +480,13 @@ $currencyNames = array(
'SRD' => 'surinamga dollar',
'SRG' => 'surinamega guilder',
'SSP' => 'anyiehe sudanga pound',
- 'STD' => 'são tomé kple príncipega dobra',
+ 'STD' => 'são tomé kple príncipega dobra (1977–2017)',
+ 'STN' => 'são tomé kple príncipega dobra',
'SUR' => 'sovietga rouble',
'SVC' => 'salvadɔga colón',
'SYP' => 'syriaga pound',
'SZL' => 'swaziga lilangeni',
- 'THB' => 'thaiga baht',
+ 'THB' => 'Thailandga baht',
'TJR' => 'tajikistanga ruble',
'TJS' => 'tajikistanga somoni',
'TMM' => 'turkmenistanga manat (1993–2009)',
@@ -492,9 +495,9 @@ $currencyNames = array(
'TOP' => 'tonagaga pa’anga',
'TPE' => 'timɔga escudo',
'TRL' => 'tɛkiiga lira (1922–2005)',
- 'TRY' => 'tɛkiiga lira',
- 'TTD' => 'trinidad kple tobagoga dollar',
- 'TWD' => 'taiwanga yeye dollar',
+ 'TRY' => 'Turkishga lira',
+ 'TTD' => 'trinidad & tobagoga dollar',
+ 'TWD' => 'Taiwanga dollar',
'TZS' => 'Tanzaniatɔwofɛgadudu',
'UAH' => 'ukrainega hryvnia',
'UAK' => 'ukrainega karbovanet',
@@ -508,7 +511,8 @@ $currencyNames = array(
'UYU' => 'uruguayga peso',
'UZS' => 'uzbekistanga som',
'VEB' => 'venezuelaga bolívar (1871–2008)',
- 'VEF' => 'venezuelaga bolívar',
+ 'VEF' => 'venezuelaga bolívar (2008–2018)',
+ 'VES' => 'venezuelaga bolívar',
'VND' => 'vietnamga dong',
'VNN' => 'vietnamga dong (1978–1985)',
'VUV' => 'vanuatuga vatu',
@@ -520,7 +524,7 @@ $currencyNames = array(
'XBB' => 'europa gadzidzenu xbb',
'XBC' => 'europa kɔnta dzidzenu xbc',
'XBD' => 'europa kɔnta dzidzenu xbd',
- 'XCD' => 'ɣedzeƒe caribbeaga dollar',
+ 'XCD' => 'east caribbeanga dollar',
'XDR' => 'gaɖuɖu ɖoɖo tɔxɛ',
'XEU' => 'europa gaɖuɖu',
'XFO' => 'fransemega sika franc',
@@ -539,7 +543,7 @@ $currencyNames = array(
'YUN' => 'yugoslaviaga convertible dinar (1990–1992)',
'YUR' => 'yugoslaviaga dinar (1992–1993)',
'ZAL' => 'anyiehe afrikaga rand (gadzikpɔtɔ)',
- 'ZAR' => 'anyiehe afrikaga rand',
+ 'ZAR' => 'South Africaga rand',
'ZMK' => 'zambiaga kwacha (1968–2012)',
'ZMW' => 'zambiaga kwacha',
'ZRN' => 'zairega yeyetɔ zaire',
@@ -547,31 +551,84 @@ $currencyNames = array(
'ZWD' => 'zimbabwega dollar (1980–2008)',
'ZWL' => 'zimbabwega dollar (2009)',
'ZWR' => 'zimbabwega dollar (2008)',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
+ 'ALL' => 'ALL',
+ 'ANG' => 'ANG',
+ 'ARS' => 'ARS',
'AUD' => 'AU$',
+ 'AWG' => 'AWG',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BGN' => 'BGN',
+ 'BMD' => 'BMD',
+ 'BOB' => 'BOB',
'BRL' => 'R$',
+ 'BSD' => 'BSD',
+ 'BYN' => 'BYN',
+ 'BZD' => 'BZD',
'CAD' => 'CA$',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
'CNY' => 'CN¥',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CZK' => 'CZK',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
'EUR' => '€',
+ 'FKP' => 'FKP',
'GBP' => '£',
'GHS' => 'GH₵',
+ 'GIP' => 'GIP',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
'ILS' => '₪',
'INR' => '₹',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
'JPY' => 'JP¥',
'KRW' => '₩',
+ 'KYD' => 'KYD',
+ 'MDL' => 'MDL',
+ 'MKD' => 'MKD',
'MXN' => 'MX$',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
'NZD' => 'NZ$',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'SAR' => 'SAR',
+ 'SEK' => 'SEK',
+ 'SRD' => 'SRD',
'THB' => '฿',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
'TWD' => 'NT$',
+ 'UAH' => 'UAH',
'USD' => 'US$',
+ 'UYU' => 'UYU',
+ 'VEF' => 'VEF',
'VND' => '₫',
'XCD' => 'EC$',
-);
+ 'ZAR' => 'ZAR',
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'Ascension ƒudomekpo nutome',
'AD' => 'Andorra nutome',
'AE' => 'United Arab Emirates nutome',
@@ -580,7 +637,6 @@ $countryNames = array(
'AI' => 'Anguilla nutome',
'AL' => 'Albania nutome',
'AM' => 'Armenia nutome',
- 'AN' => 'Nedalands Antilis nutome',
'AO' => 'Angola nutome',
'AQ' => 'Antartica nutome',
'AR' => 'Argentina nutome',
@@ -611,7 +667,7 @@ $countryNames = array(
'BW' => 'Botswana nutome',
'BY' => 'Belarus nutome',
'BZ' => 'Belize nutome',
- 'CA' => 'Kanada nutome',
+ 'CA' => 'Canada nutome',
'CC' => 'Kokos (Kiling) fudomekpo nutome',
'CD' => 'Kongo Kinshasa nutome',
'CF' => 'Titina Afrika repɔblik nutome',
@@ -644,7 +700,7 @@ $countryNames = array(
'EG' => 'Egypte nutome',
'EH' => 'Ɣetoɖoƒe Sahara nutome',
'ER' => 'Eritrea nutome',
- 'ES' => 'Spania nutome',
+ 'ES' => 'Spain nutome',
'ET' => 'Etiopia nutome',
'EU' => 'Europa Wɔɖeka nutome',
'FI' => 'Finland nutome',
@@ -652,7 +708,7 @@ $countryNames = array(
'FK' => 'Falkland ƒudomekpowo nutome',
'FM' => 'Mikronesia nutome',
'FO' => 'Faroe ƒudomekpowo nutome',
- 'FR' => 'Frans nutome',
+ 'FR' => 'France nutome',
'GA' => 'Gabɔn nutome',
'GB' => 'United Kingdom nutome',
'GD' => 'Grenada nutome',
@@ -666,7 +722,7 @@ $countryNames = array(
'GN' => 'Guini nutome',
'GP' => 'Guadelupe nutome',
'GQ' => 'Ekuatorial Guini nutome',
- 'GR' => 'Grisi nutome',
+ 'GR' => 'Greece nutome',
'GS' => 'Anyiehe Georgia kple Anyiehe Sandwich ƒudomekpowo nutome',
'GT' => 'Guatemala nutome',
'GU' => 'Guam nutome',
@@ -735,7 +791,7 @@ $countryNames = array(
'MU' => 'mauritiusdukɔ',
'MV' => 'maldivesdukɔ',
'MW' => 'Malawi nutome',
- 'MX' => 'Meksico nutome',
+ 'MX' => 'Mexico nutome',
'MY' => 'Malaysia nutome',
'MZ' => 'Mozambiki nutome',
'NA' => 'Namibia nutome',
@@ -744,7 +800,7 @@ $countryNames = array(
'NF' => 'Norfolk ƒudomekpo nutome',
'NG' => 'Nigeria nutome',
'NI' => 'Nicaraguadukɔ',
- 'NL' => 'Nedalands nutome',
+ 'NL' => 'Netherlands nutome',
'NO' => 'Norway nutome',
'NP' => 'Nepal nutome',
'NR' => 'Nauru nutome',
@@ -798,7 +854,7 @@ $countryNames = array(
'TD' => 'Tsad nutome',
'TF' => 'Anyiehe Franseme nutome',
'TG' => 'Togo nutome',
- 'TH' => 'Tailand nutome',
+ 'TH' => 'Thailand nutome',
'TJ' => 'Tajikistan nutome',
'TK' => 'Tokelau nutome',
'TL' => 'Timor-Leste nutome',
@@ -827,36 +883,48 @@ $countryNames = array(
'WS' => 'Samoa nutome',
'YE' => 'Yemen nutome',
'YT' => 'Mayotte nutome',
- 'ZA' => 'Anyiehe Afrika nutome',
+ 'ZA' => 'Anyiehe Africa nutome',
'ZM' => 'Zambia nutome',
'ZW' => 'Zimbabwe nutome',
-);
+];
-$timeUnits = array(
+$timeUnits = [
'day-future-one' => 'le ŋkeke {0} me',
'day-future-other' => 'le ŋkeke {0} wo me',
- 'day-one' => 'ŋkeke {0} wo',
- 'day-other' => 'ŋkeke {0} wo',
+ 'day-one' => 'ŋkeke {0}',
+ 'day-other' => 'ŋkeke {0}',
'day-past-one' => 'ŋkeke {0} si va yi',
'day-past-other' => 'ŋkeke {0} si wo va yi',
'hour-future-one' => 'le gaƒoƒo {0} me',
'hour-future-other' => 'le gaƒoƒo {0} wo me',
- 'hour-one' => 'gaƒoƒo {0} wo',
- 'hour-other' => 'gaƒoƒo {0} wo',
+ 'hour-one' => 'gaƒoƒo {0}',
+ 'hour-other' => 'gaƒoƒo {0}',
'hour-past-one' => 'gaƒoƒo {0} si va yi',
'hour-past-other' => 'gaƒoƒo {0} si wo va yi',
'minute-future-one' => 'le aɖabaƒoƒo {0} me',
'minute-future-other' => 'le aɖabaƒoƒo {0} wo me',
- 'minute-one' => 'aɖabaƒoƒo {0} wo',
- 'minute-other' => 'aɖabaƒoƒo {0} wo',
+ 'minute-one' => 'aɖabaƒoƒo {0}',
+ 'minute-other' => 'aɖabaƒoƒo {0}',
'minute-past-one' => 'aɖabaƒoƒo {0} si va yi',
'minute-past-other' => 'aɖabaƒoƒo {0} si wo va yi',
'month-future-one' => 'le ɣleti {0} me',
'month-future-other' => 'le ɣleti {0} wo me',
- 'month-one' => 'ɣleti {0} wo',
- 'month-other' => 'ɣleti {0} wo',
+ 'month-one' => 'ɣleti {0}',
+ 'month-other' => 'ɣleti {0}',
'month-past-one' => 'ɣleti {0} si va yi',
'month-past-other' => 'ɣleti {0} si wo va yi',
+ 'quarter-future-one' => 'le kɔta {0} si gbɔ na me',
+ 'quarter-future-other' => 'le kɔta {0} si gbɔ na me',
+ 'quarter-narrow-future-one' => 'le kɔta {0} si gbɔna me',
+ 'quarter-narrow-future-other' => 'le kɔta {0} si gbɔ na me',
+ 'quarter-narrow-past-one' => 'kɔta {0} si va yi me',
+ 'quarter-narrow-past-other' => 'kɔta {0} si va yi me',
+ 'quarter-past-one' => 'kɔta {0} si va yi me',
+ 'quarter-past-other' => 'kɔta {0} si va yi me',
+ 'quarter-short-future-one' => 'le kɔta {0} si gbɔ na me',
+ 'quarter-short-future-other' => 'le kɔta {0} si gbɔ na me',
+ 'quarter-short-past-one' => 'kɔta {0} si va yi me',
+ 'quarter-short-past-other' => 'kɔta {0} si va yi me',
'second-future-one' => 'le sekend {0} me',
'second-future-other' => 'le sekend {0} wo me',
'second-one' => 'sekend {0} wo',
@@ -865,14 +933,22 @@ $timeUnits = array(
'second-past-other' => 'sekend {0} si wo va yi',
'week-future-one' => 'le kɔsiɖa {0} me',
'week-future-other' => 'le kɔsiɖa {0} wo me',
- 'week-one' => 'kɔsiɖa {0} wo',
- 'week-other' => 'kɔsiɖa {0} wo',
+ 'week-one' => 'kɔsiɖa {0}',
+ 'week-other' => 'kɔsiɖa {0}',
'week-past-one' => 'kɔsiɖa {0} si va yi',
'week-past-other' => 'kɔsiɖa {0} si wo va yi',
'year-future-one' => 'le ƒe {0} me',
- 'year-future-other' => 'le ƒe {0} wo me',
- 'year-one' => 'ƒe {0} wo',
- 'year-other' => 'ƒe {0} wo',
+ 'year-future-other' => 'le ƒe {0} me',
+ 'year-narrow-future-one' => 'le ƒe {0} si gbɔna me',
+ 'year-narrow-future-other' => 'le ƒe {0} si gbɔna me',
+ 'year-narrow-past-one' => 'ƒe {0} si va yi me',
+ 'year-narrow-past-other' => 'ƒe {0} si va yi me',
+ 'year-one' => 'ƒe {0}',
+ 'year-other' => 'ƒe {0}',
'year-past-one' => 'ƒe {0} si va yi',
'year-past-other' => 'ƒe {0} si wo va yi',
-);
+ 'year-short-future-one' => 'le ƒe {0} me',
+ 'year-short-future-other' => 'le ƒe {0} me',
+ 'year-short-past-one' => 'le ƒe {0} si va yi me',
+ 'year-short-past-other' => 'le ƒe {0} si va yi me',
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesEl.php b/MLEB/cldr/CldrNames/CldrNamesEl.php
index a953851d..891d5f24 100644
--- a/MLEB/cldr/CldrNames/CldrNamesEl.php
+++ b/MLEB/cldr/CldrNames/CldrNamesEl.php
@@ -1,9 +1,9 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'Αφάρ',
'ab' => 'Αμπχαζικά',
- 'ace' => 'Αχινίζ',
+ 'ace' => 'Ατσινιζικά',
'ach' => 'Ακολί',
'ada' => 'Αντάνγκμε',
'ady' => 'Αντιγκέα',
@@ -14,22 +14,23 @@ $languageNames = array(
'ain' => 'Αϊνού',
'ak' => 'Ακάν',
'akk' => 'Ακάντιαν',
- 'ale' => 'Αλούτ',
- 'alt' => 'Νότια Αλαταϊκά',
- 'am' => 'Αμαρικά',
- 'an' => 'Αραγκονικά',
+ 'ale' => 'Αλεούτ',
+ 'alt' => 'Νότια Αλτάι',
+ 'am' => 'Αμχαρικά',
+ 'an' => 'Αραγονικά',
'ang' => 'Παλαιά Αγγλικά',
'anp' => 'Ανγκικά',
'ar' => 'Αραβικά',
'ar-001' => 'Σύγχρονα Τυπικά Αραβικά',
'arc' => 'Αραμαϊκά',
- 'arn' => 'Αρουκάνιαν',
- 'arp' => 'Αράπαχο',
+ 'arn' => 'Αραουκανικά',
+ 'arp' => 'Αραπάχο',
+ 'ars' => 'Αραβικά Νάτζντι',
'arw' => 'Αραγουάκ',
- 'as' => 'Ασαμεζικά',
+ 'as' => 'Ασαμικά',
'asa' => 'Άσου',
'ast' => 'Αστουριανά',
- 'av' => 'Άβαρικ',
+ 'av' => 'Αβαρικά',
'awa' => 'Αγουαντί',
'ay' => 'Αϊμάρα',
'az' => 'Αζερμπαϊτζανικά',
@@ -45,14 +46,15 @@ $languageNames = array(
'bez' => 'Μπένα',
'bfd' => 'Μπαφούτ',
'bg' => 'Βουλγαρικά',
- 'bho' => 'Μποζπούρι',
+ 'bgn' => 'Δυτικά Μπαλοχικά',
+ 'bho' => 'Μπότζπουρι',
'bi' => 'Μπισλάμα',
'bik' => 'Μπικόλ',
'bin' => 'Μπίνι',
'bkm' => 'Κομ',
'bla' => 'Σικσίκα',
'bm' => 'Μπαμπάρα',
- 'bn' => 'Μπενγκάλι',
+ 'bn' => 'Βεγγαλικά',
'bo' => 'Θιβετιανά',
'br' => 'Βρετονικά',
'bra' => 'Μπρατζ',
@@ -69,28 +71,29 @@ $languageNames = array(
'car' => 'Καρίμπ',
'cay' => 'Καγιούγκα',
'cch' => 'Ατσάμ',
- 'ce' => 'Τσέτσνιαν',
- 'ceb' => 'Κεμπουάνο',
+ 'ce' => 'Τσετσενικά',
+ 'ceb' => 'Σεμπουάνο',
'cgg' => 'Τσίγκα',
- 'ch' => 'Καμόρρο',
+ 'ch' => 'Τσαμόρο',
'chb' => 'Τσίμπτσα',
'chg' => 'Τσαγκατάι',
'chk' => 'Τσουκίζι',
'chm' => 'Μάρι',
'chn' => 'Ιδιωματικά Σινούκ',
- 'cho' => 'Τσοκτάου',
+ 'cho' => 'Τσόκτο',
'chp' => 'Τσίπιουαν',
'chr' => 'Τσερόκι',
- 'chy' => 'Σεγιέν',
+ 'chy' => 'Τσεγιέν',
'ckb' => 'Κουρδικά Σοράνι',
'co' => 'Κορσικανικά',
'cop' => 'Κοπτικά',
'cr' => 'Κρι',
'crh' => 'Τουρκικά Κριμαίας',
+ 'crs' => 'Κρεολικά Γαλλικά Σεϋχελλών',
'cs' => 'Τσεχικά',
'csb' => 'Κασούμπιαν',
'cu' => 'Εκκλησιαστικά Σλαβικά',
- 'cv' => 'Χουβάς',
+ 'cv' => 'Τσουβασικά',
'cy' => 'Ουαλικά',
'da' => 'Δανικά',
'dak' => 'Ντακότα',
@@ -98,14 +101,14 @@ $languageNames = array(
'dav' => 'Τάιτα',
'de' => 'Γερμανικά',
'de-at' => 'Γερμανικά Αυστρίας',
- 'de-ch' => 'Γερμανικά Ελβετίας',
+ 'de-ch' => 'Υψηλά Γερμανικά Ελβετίας',
'del' => 'Ντέλαγουερ',
'den' => 'Σλαβικά',
'dgr' => 'Ντόγκριμπ',
'din' => 'Ντίνκα',
'dje' => 'Ζάρμα',
'doi' => 'Ντόγκρι',
- 'dsb' => 'Γλώσσα Κάτω Λουσατίας',
+ 'dsb' => 'Κάτω Σορβικά',
'dua' => 'Ντουάλα',
'dum' => 'Μέσα Ολλανδικά',
'dv' => 'Ντιβέχι',
@@ -114,7 +117,7 @@ $languageNames = array(
'dz' => 'Ντζόνγκχα',
'dzg' => 'Νταζάγκα',
'ebu' => 'Έμπου',
- 'ee' => 'Γι',
+ 'ee' => 'Έουε',
'efi' => 'Εφίκ',
'egy' => 'Αρχαία Αιγυπτιακά',
'eka' => 'Εκατζούκ',
@@ -123,7 +126,7 @@ $languageNames = array(
'en' => 'Αγγλικά',
'en-au' => 'Αγγλικά Αυστραλίας',
'en-ca' => 'Αγγλικά Καναδά',
- 'en-gb' => 'Αγγλικά Ηνωμένου Βασιλείου',
+ 'en-gb' => 'Αγγλικά Βρετανίας',
'en-us' => 'Αγγλικά Αμερικής',
'enm' => 'Μέσα Αγγλικά',
'eo' => 'Εσπεράντο',
@@ -137,21 +140,22 @@ $languageNames = array(
'fa' => 'Περσικά',
'fan' => 'Φανγκ',
'fat' => 'Φάντι',
- 'ff' => 'Φουλάχ',
+ 'ff' => 'Φουλά',
'fi' => 'Φινλανδικά',
- 'fil' => 'Φιλιππινεζικά',
+ 'fil' => 'Φιλιππινικά',
'fj' => 'Φίτζι',
- 'fo' => 'Φαρόε',
+ 'fo' => 'Φεροϊκά',
'fon' => 'Φον',
'fr' => 'Γαλλικά',
'fr-ca' => 'Γαλλικά Καναδά',
'fr-ch' => 'Γαλλικά Ελβετίας',
+ 'frc' => 'Γαλλικά (Λουιζιάνα)',
'frm' => 'Μέσα Γαλλικά',
'fro' => 'Παλαιά Γαλλικά',
'frr' => 'Βόρεια Φριζιανά',
'frs' => 'Ανατολικά Φριζιανά',
- 'fur' => 'Φριούλιαν',
- 'fy' => 'Δυτικά Φριζιανά',
+ 'fur' => 'Φριουλανικά',
+ 'fy' => 'Δυτικά Φριζικά',
'ga' => 'Ιρλανδικά',
'gaa' => 'Γκα',
'gag' => 'Γκαγκάουζ',
@@ -169,22 +173,22 @@ $languageNames = array(
'got' => 'Γοτθικά',
'grb' => 'Γκρίμπο',
'grc' => 'Αρχαία Ελληνικά',
- 'gsw' => 'Ελβετικά Γερμανικά',
+ 'gsw' => 'Γερμανικά Ελβετίας',
'gu' => 'Γκουγιαράτι',
'guz' => 'Γκούσι',
'gv' => 'Μανξ',
'gwi' => 'Γκουίτσιν',
'ha' => 'Χάουσα',
'hai' => 'Χάιντα',
- 'haw' => 'Χαβανεζικά',
+ 'haw' => 'Χαβαϊκά',
'he' => 'Εβραϊκά',
'hi' => 'Χίντι',
- 'hil' => 'Χιλιγκαγιόν',
+ 'hil' => 'Χιλιγκαϊνόν',
'hit' => 'Χιτίτε',
'hmn' => 'Χμονγκ',
'ho' => 'Χίρι Μότου',
'hr' => 'Κροατικά',
- 'hsb' => 'Γλώσσα Άνω Λουσατίας',
+ 'hsb' => 'Άνω Σορβικά',
'ht' => 'Αϊτιανά',
'hu' => 'Ουγγρικά',
'hup' => 'Χούπα',
@@ -196,21 +200,21 @@ $languageNames = array(
'id' => 'Ινδονησιακά',
'ie' => 'Ιντερλίνγκουε',
'ig' => 'Ίγκμπο',
- 'ii' => 'Σικουάν Γι',
+ 'ii' => 'Σίτσουαν Γι',
'ik' => 'Ινουπιάκ',
'ilo' => 'Ιλόκο',
'inh' => 'Ινγκούς',
'io' => 'Ίντο',
'is' => 'Ισλανδικά',
'it' => 'Ιταλικά',
- 'iu' => 'Ινουκτιτούτ',
+ 'iu' => 'Ινούκτιτουτ',
'ja' => 'Ιαπωνικά',
'jbo' => 'Λόζμπαν',
'jgo' => 'Νγκόμπα',
- 'jmc' => 'Μάχαμε',
+ 'jmc' => 'Ματσάμε',
'jpr' => 'Ιουδαϊκά-Περσικά',
'jrb' => 'Ιουδαϊκά-Αραβικά',
- 'jv' => 'Ιαβανεζικά',
+ 'jv' => 'Ιαβανικά',
'ka' => 'Γεωργιανά',
'kaa' => 'Κάρα-Καλπάκ',
'kab' => 'Καμπίλε',
@@ -220,7 +224,7 @@ $languageNames = array(
'kaw' => 'Κάουι',
'kbd' => 'Καμπαρντιανά',
'kbl' => 'Κανέμπου',
- 'kcg' => 'Τουάπ',
+ 'kcg' => 'Τιάπ',
'kde' => 'Μακόντε',
'kea' => 'Γλώσσα του Πράσινου Ακρωτηρίου',
'kfo' => 'Κόρο',
@@ -229,86 +233,88 @@ $languageNames = array(
'kho' => 'Κοτανικά',
'khq' => 'Κόιρα Τσίνι',
'ki' => 'Κικούγιου',
- 'kj' => 'Κουανιγιάμα',
+ 'kj' => 'Κουανιάμα',
'kk' => 'Καζακικά',
'kkj' => 'Κάκο',
'kl' => 'Καλαάλισουτ',
'kln' => 'Καλεντζίν',
- 'km' => 'Καμποτζιανά',
+ 'km' => 'Χμερ',
'kmb' => 'Κιμπούντου',
'kn' => 'Κανάντα',
'ko' => 'Κορεατικά',
'koi' => 'Κόμι-Περμιάκ',
- 'kok' => 'Κονκάνι',
+ 'kok' => 'Κονκανικά',
'kos' => 'Κοσραενικά',
'kpe' => 'Κπέλε',
'kr' => 'Κανούρι',
'krc' => 'Καρατσάι-Μπαλκάρ',
- 'krl' => 'Καρελιακά',
+ 'krl' => 'Καρελικά',
'kru' => 'Κουρούχ',
- 'ks' => 'Κασμίρι',
- 'ksb' => 'Σάμπαλα',
+ 'ks' => 'Κασμιρικά',
+ 'ksb' => 'Σαμπάλα',
'ksf' => 'Μπάφια',
'ksh' => 'Κολωνικά',
'ku' => 'Κουρδικά',
'kum' => 'Κουμγιούκ',
'kut' => 'Κουτενάι',
'kv' => 'Κόμι',
- 'kw' => 'Κόρνις',
- 'ky' => 'Κυργιζικά',
+ 'kw' => 'Κορνουαλικά',
+ 'ky' => 'Κιργιζικά',
'la' => 'Λατινικά',
'lad' => 'Λαδίνο',
'lag' => 'Λάνγκι',
'lah' => 'Λάχδα',
'lam' => 'Λάμπα',
'lb' => 'Λουξεμβουργιανά',
- 'lez' => 'Λαζγκιάν',
+ 'lez' => 'Λεζγκικά',
'lg' => 'Γκάντα',
'li' => 'Λιμβουργιανά',
'lkt' => 'Λακότα',
'ln' => 'Λινγκάλα',
- 'lo' => 'Λαοθιανά',
+ 'lo' => 'Λαοτινά',
'lol' => 'Μόνγκο',
+ 'lou' => 'Κρεολικά (Λουιζιάνα)',
'loz' => 'Λόζι',
+ 'lrc' => 'Βόρεια Λούρι',
'lt' => 'Λιθουανικά',
'lu' => 'Λούμπα-Κατάνγκα',
'lua' => 'Λούμπα-Λουλούα',
'lui' => 'Λουισένο',
'lun' => 'Λούντα',
'luo' => 'Λούο',
- 'lus' => 'Λουσάι',
- 'luy' => 'Λουχία',
+ 'lus' => 'Μίζο',
+ 'luy' => 'Λούχια',
'lv' => 'Λετονικά',
'mad' => 'Μαντουρίζ',
'maf' => 'Μάφα',
'mag' => 'Μαγκάχι',
'mai' => 'Μαϊτχίλι',
- 'mak' => 'Μακαζάρ',
+ 'mak' => 'Μακασάρ',
'man' => 'Μαντίνγκο',
'mas' => 'Μασάι',
'mde' => 'Μάμπα',
'mdf' => 'Μόκσα',
'mdr' => 'Μανδάρ',
'men' => 'Μέντε',
- 'mer' => 'Μερού',
- 'mfe' => 'Μορίσιεν',
- 'mg' => 'Μαλαγάσι',
+ 'mer' => 'Μέρου',
+ 'mfe' => 'Μορισιέν',
+ 'mg' => 'Μαλγασικά',
'mga' => 'Μέσα Ιρλανδικά',
'mgh' => 'Μακούβα-Μέτο',
- 'mgo' => 'Μετά',
- 'mh' => 'Μάρσαλ',
- 'mi' => 'Μάορι',
+ 'mgo' => 'Μέτα',
+ 'mh' => 'Μαρσαλέζικα',
+ 'mi' => 'Μαορί',
'mic' => 'Μικμάκ',
'min' => 'Μινανγκαμπάου',
'mk' => 'Σλαβομακεδονικά',
- 'ml' => 'Μαλαγιαλάμ',
+ 'ml' => 'Μαλαγιαλαμικά',
'mn' => 'Μογγολικά',
'mnc' => 'Μαντσού',
'mni' => 'Μανιπούρι',
'moh' => 'Μοχόκ',
'mos' => 'Μόσι',
- 'mr' => 'Μαράθι',
- 'ms' => 'Μαλάι',
+ 'mr' => 'Μαραθικά',
+ 'ms' => 'Μαλαισιανά',
'mt' => 'Μαλτεζικά',
'mua' => 'Μουντάνγκ',
'mul' => 'Πολλαπλές γλώσσες',
@@ -317,18 +323,20 @@ $languageNames = array(
'mwr' => 'Μαργουάρι',
'my' => 'Βιρμανικά',
'mye' => 'Μιένε',
- 'myv' => 'Έρζυα',
+ 'myv' => 'Έρζια',
+ 'mzn' => 'Μαζαντεράνι',
'na' => 'Ναούρου',
'nap' => 'Ναπολιτανικά',
'naq' => 'Νάμα',
'nb' => 'Νορβηγικά Μποκμάλ',
- 'nd' => 'Ντεμπέλε Βορρά',
+ 'nd' => 'Βόρεια Ντεμπέλε',
'nds' => 'Κάτω Γερμανικά',
- 'ne' => 'Νεπάλι',
+ 'nds-nl' => 'Κάτω Γερμανικά Ολλανδίας',
+ 'ne' => 'Νεπαλικά',
'new' => 'Νεγουάρι',
'ng' => 'Ντόνγκα',
'nia' => 'Νίας',
- 'niu' => 'Νιούεαν',
+ 'niu' => 'Νιούε',
'nl' => 'Ολλανδικά',
'nl-be' => 'Φλαμανδικά',
'nmg' => 'Κβάσιο',
@@ -338,9 +346,9 @@ $languageNames = array(
'nog' => 'Νογκάι',
'non' => 'Παλαιά Νορβηγικά',
'nqo' => 'Ν’Κο',
- 'nr' => 'Ντεμπέλε Νότου',
+ 'nr' => 'Νότια Ντεμπέλε',
'nso' => 'Βόρεια Σόθο',
- 'nus' => 'Νουέρ',
+ 'nus' => 'Νούερ',
'nv' => 'Νάβαχο',
'nwc' => 'Κλασικά Νεουάρι',
'ny' => 'Νιάντζα',
@@ -348,10 +356,10 @@ $languageNames = array(
'nyn' => 'Νιανκόλε',
'nyo' => 'Νιόρο',
'nzi' => 'Νζίμα',
- 'oc' => 'Οκσιτανικά',
+ 'oc' => 'Οξιτανικά',
'oj' => 'Οζιβίγουα',
'om' => 'Ορόμο',
- 'or' => 'Ορίγια',
+ 'or' => 'Όντια',
'os' => 'Οσετικά',
'osa' => 'Οσάζ',
'ota' => 'Οθωμανικά Τουρκικά',
@@ -361,18 +369,20 @@ $languageNames = array(
'pam' => 'Παμπάνγκα',
'pap' => 'Παπιαμέντο',
'pau' => 'Παλάουαν',
+ 'pcm' => 'Πίτζιν Νιγηρίας',
'peo' => 'Αρχαία Περσικά',
'phn' => 'Φοινικικά',
'pi' => 'Πάλι',
'pl' => 'Πολωνικά',
- 'pon' => 'Ποχπέιαν',
- 'pro' => 'Παλαιά Προβενσιάλ',
+ 'pon' => 'Πομπηικά',
+ 'prg' => 'Πρωσικά',
+ 'pro' => 'Παλαιά Προβανσάλ',
'ps' => 'Πάστο',
'pt' => 'Πορτογαλικά',
'pt-br' => 'Πορτογαλικά Βραζιλίας',
'pt-pt' => 'Πορτογαλικά Ευρώπης',
- 'qu' => 'Κετσούα',
- 'quc' => 'Κισέ',
+ 'qu' => 'Κέτσουα',
+ 'quc' => 'Κιτσέ',
'raj' => 'Ραζασθάνι',
'rap' => 'Ραπανούι',
'rar' => 'Ραροτονγκάν',
@@ -384,21 +394,22 @@ $languageNames = array(
'rom' => 'Ρομανί',
'ru' => 'Ρωσικά',
'rup' => 'Αρομανικά',
- 'rw' => 'Κινιαρβάντα',
+ 'rw' => 'Κινιαρουάντα',
'rwk' => 'Ρουά',
'sa' => 'Σανσκριτικά',
'sad' => 'Σαντάγουε',
- 'sah' => 'Γιακούτ',
+ 'sah' => 'Σαχά',
'sam' => 'Σαμαρίτικα Αραμαϊκά',
'saq' => 'Σαμπούρου',
'sas' => 'Σασάκ',
'sat' => 'Σαντάλι',
'sba' => 'Νγκαμπέι',
'sbp' => 'Σάνγκου',
- 'sc' => 'Σαρδινικά',
- 'scn' => 'Σικελιανά',
+ 'sc' => 'Σαρδηνιακά',
+ 'scn' => 'Σικελικά',
'sco' => 'Σκωτικά',
'sd' => 'Σίντι',
+ 'sdh' => 'Νότια Κουρδικά',
'se' => 'Βόρεια Σάμι',
'see' => 'Σένεκα',
'seh' => 'Σένα',
@@ -414,50 +425,50 @@ $languageNames = array(
'sid' => 'Σιντάμο',
'sk' => 'Σλοβακικά',
'sl' => 'Σλοβενικά',
- 'sm' => 'Σαμόαν',
+ 'sm' => 'Σαμοανά',
'sma' => 'Νότια Σάμι',
'smj' => 'Λούλε Σάμι',
'smn' => 'Ινάρι Σάμι',
'sms' => 'Σκολτ Σάμι',
- 'sn' => 'Σχόνα',
+ 'sn' => 'Σόνα',
'snk' => 'Σονίνκε',
- 'so' => 'Σομάλι',
+ 'so' => 'Σομαλικά',
'sog' => 'Σογκντιέν',
'sq' => 'Αλβανικά',
'sr' => 'Σερβικά',
- 'srn' => 'Σρανάρ Τόνγκο',
+ 'srn' => 'Σρανάν Τόνγκο',
'srr' => 'Σερέρ',
'ss' => 'Σουάτι',
'ssy' => 'Σάχο',
'st' => 'Νότια Σόθο',
- 'su' => 'Σουδανικά',
+ 'su' => 'Σουνδανικά',
'suk' => 'Σουκούμα',
'sus' => 'Σούσου',
'sux' => 'Σουμερικά',
'sv' => 'Σουηδικά',
'sw' => 'Σουαχίλι',
- 'swb' => 'Κομόρρια',
- 'swc' => 'Κονγκό Σουαχίλι',
+ 'sw-cd' => 'Κονγκό Σουαχίλι',
+ 'swb' => 'Κομοριανά',
'syc' => 'Κλασικά Συριακά',
'syr' => 'Συριακά',
- 'ta' => 'Ταμίλ',
+ 'ta' => 'Ταμιλικά',
'te' => 'Τελούγκου',
'tem' => 'Τίμνε',
'teo' => 'Τέσο',
'ter' => 'Τερένο',
'tet' => 'Τέτουμ',
- 'tg' => 'Τατζίκ',
+ 'tg' => 'Τατζικικά',
'th' => 'Ταϊλανδικά',
- 'ti' => 'Τιγκρίνυα',
+ 'ti' => 'Τιγκρινικά',
'tig' => 'Τίγκρε',
'tiv' => 'Τιβ',
'tk' => 'Τουρκμενικά',
'tkl' => 'Τοκελάου',
- 'tl' => 'Ταγκαλόγκ',
+ 'tl' => 'Τάγκαλογκ',
'tlh' => 'Κλίνγκον',
'tli' => 'Τλίνγκιτ',
'tmh' => 'Ταμασέκ',
- 'tn' => 'Τσιγουάνα',
+ 'tn' => 'Τσουάνα',
'to' => 'Τονγκανικά',
'tog' => 'Νιάσα Τόνγκα',
'tpi' => 'Τοκ Πισίν',
@@ -465,36 +476,38 @@ $languageNames = array(
'trv' => 'Ταρόκο',
'ts' => 'Τσόνγκα',
'tsi' => 'Τσίμσιαν',
- 'tt' => 'Τατάρ',
+ 'tt' => 'Ταταρικά',
'tum' => 'Τουμπούκα',
'tvl' => 'Τουβαλού',
'tw' => 'Τούι',
'twq' => 'Τασαβάκ',
'ty' => 'Ταϊτιανά',
- 'tyv' => 'Τουβίνιαν',
+ 'tyv' => 'Τουβινικά',
'tzm' => 'Ταμαζίτ Κεντρικού Μαρόκο',
'udm' => 'Ουντμούρτ',
- 'ug' => 'Ουιγουρικά',
- 'uga' => 'Ουγκαρίτικ',
+ 'ug' => 'Ουιγκουρικά',
+ 'uga' => 'Ουγκαριτικά',
'uk' => 'Ουκρανικά',
'umb' => 'Ουμπούντου',
'und' => 'Άγνωστη γλώσσα',
'ur' => 'Ουρντού',
'uz' => 'Ουζμπεκικά',
'vai' => 'Βάι',
- 've' => 'Βένδα',
+ 've' => 'Βέντα',
'vi' => 'Βιετναμικά',
- 'vo' => 'Βόλαπικ',
+ 'vo' => 'Βολαπιούκ',
'vot' => 'Βότικ',
'vun' => 'Βούντζο',
- 'wa' => 'Γουαλούν',
+ 'wa' => 'Βαλλωνικά',
'wae' => 'Βάλσερ',
- 'wal' => 'Γουάλαμο',
- 'war' => 'Γουάρει',
+ 'wal' => 'Γουολάιτα',
+ 'war' => 'Γουάραϊ',
'was' => 'Γουασό',
+ 'wbp' => 'Γουαρλπίρι',
'wo' => 'Γουόλοφ',
+ 'wuu' => 'Κινεζικά Γου',
'xal' => 'Καλμίκ',
- 'xh' => 'Ζόσα',
+ 'xh' => 'Κόσα',
'xog' => 'Σόγκα',
'yao' => 'Γιάο',
'yap' => 'Γιαπίζ',
@@ -507,7 +520,7 @@ $languageNames = array(
'zap' => 'Ζάποτεκ',
'zbl' => 'Σύμβολα Bliss',
'zen' => 'Ζενάγκα',
- 'zgh' => 'Τυπικά Ταμαζίγκτ Μαρόκου',
+ 'zgh' => 'Τυπικά Ταμαζίτ Μαρόκου',
'zh' => 'Κινεζικά',
'zh-hans' => 'Απλοποιημένα Κινεζικά',
'zh-hant' => 'Παραδοσιακά Κινεζικά',
@@ -515,9 +528,9 @@ $languageNames = array(
'zun' => 'Ζούνι',
'zxx' => 'Χωρίς γλωσσολογικό περιεχόμενο',
'zza' => 'Ζάζα',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'ADP' => 'Πεσέτα Ανδόρας',
'AED' => 'Ντιράμ Ηνωμένων Αραβικών Εμιράτων',
'AFA' => 'Αφγανί Αφγανιστάν (1927–2002)',
@@ -535,13 +548,13 @@ $currencyNames = array(
'ARS' => 'Πέσο Αργεντινής',
'ATS' => 'Σελίνι Αυστρίας',
'AUD' => 'Δολάριο Αυστραλίας',
- 'AWG' => 'Φλορίνι Αρούμπα',
+ 'AWG' => 'Φλορίνι Αρούμπας',
'AZM' => 'Μανάτ Αζερμπαϊτζάν (1993–2006)',
'AZN' => 'Μανάτ Αζερμπαϊτζάν',
'BAD' => 'Δηνάριο Βοσνίας-Ερζεγοβίνης',
'BAM' => 'Μετατρέψιμο Μάρκο Βοσνίας-Ερζεγοβίνης',
'BAN' => 'Νέο δινάριο Βοσνίας-Ερζεγοβίνης',
- 'BBD' => 'Δολάριο Μπαρμπάντος',
+ 'BBD' => 'Δολάριο Μπαρμπέιντος',
'BDT' => 'Τάκα Μπαγκλαντές',
'BEC' => 'Φράγκο Βελγίου (μετατρέψιμο)',
'BEF' => 'Φράγκο Βελγίου',
@@ -565,12 +578,13 @@ $currencyNames = array(
'BRN' => 'Νέο Κρουζάντο Βραζιλίας',
'BRR' => 'Κρουζιέρο Βραζιλίας',
'BRZ' => 'Παλαιό κρουζέιρο Βραζιλίας',
- 'BSD' => 'Δολάριο Μπαχάμες',
+ 'BSD' => 'Δολάριο Μπαχαμών',
'BTN' => 'Νγκούλτρουμ Μπουτάν',
'BUK' => 'Κιατ Βιρμανίας',
'BWP' => 'Πούλα Μποτσουάνας',
'BYB' => 'Νέο Ρούβλι Λευκορωσίας (1994–1999)',
- 'BYR' => 'Ρούβλι Λευκορωσίας',
+ 'BYN' => 'Ρούβλι Λευκορωσίας',
+ 'BYR' => 'Ρούβλι Λευκορωσίας (2000–2016)',
'BZD' => 'Δολάριο Μπελίζ',
'CAD' => 'Δολάριο Καναδά',
'CDF' => 'Φράγκο Κονγκό',
@@ -580,6 +594,7 @@ $currencyNames = array(
'CLE' => 'Εσκούδο Χιλής',
'CLF' => 'Ουνιδάδες ντε φομέντο Χιλής',
'CLP' => 'Πέσο Χιλής',
+ 'CNH' => 'Γουάν Κίνας (υπεράκτιο)',
'CNX' => 'Δολάριο Λαϊκής Τράπεζας Κίνας',
'CNY' => 'Γουάν Κίνας',
'COP' => 'Πέσο Κολομβίας',
@@ -608,9 +623,9 @@ $currencyNames = array(
'EUR' => 'Ευρώ',
'FIM' => 'Μάρκο Φινλανδίας',
'FJD' => 'Δολάριο Φίτζι',
- 'FKP' => 'Λίρα Νησιών Φώκλαντ',
+ 'FKP' => 'Λίρα Νήσων Φόκλαντ',
'FRF' => 'Φράγκο Γαλλίας',
- 'GBP' => 'Λίρα Βρετανίας',
+ 'GBP' => 'Λίρα Στερλίνα Βρετανίας',
'GEK' => 'Κούπον Λάρι Γεωργίας',
'GEL' => 'Λάρι Γεωργίας',
'GHC' => 'Σέντι Γκάνας (1979–2007)',
@@ -653,7 +668,7 @@ $currencyNames = array(
'KRO' => 'Παλιό γον Νότιας Κορέας',
'KRW' => 'Γουόν Νότιας Κορέας',
'KWD' => 'Δηνάριο Κουβέιτ',
- 'KYD' => 'Δολάριο Νήσων Κάιμαν',
+ 'KYD' => 'Δολάριο Νήσων Κέιμαν',
'KZT' => 'Τένγκε Καζακστάν',
'LAK' => 'Κιπ Λάος',
'LBP' => 'Λίρα Λιβάνου',
@@ -675,13 +690,14 @@ $currencyNames = array(
'MDL' => 'Λέου Μολδαβίας',
'MGA' => 'Αριάρι Μαδαγασκάρης',
'MGF' => 'Φράγκο Μαδαγασκάρης',
- 'MKD' => 'Δηνάριο Π.Γ.Δ.Μ.',
+ 'MKD' => 'Δηνάριο ΠΓΔΜ',
'MKN' => 'Παλιό δηνάριο ΠΓΔΜ',
'MLF' => 'Φράγκο Μαλί',
- 'MMK' => 'Κυάτ Μιανμάρ',
+ 'MMK' => 'Κιάτ Μιανμάρ',
'MNT' => 'Τουγκρίκ Μογγολίας',
'MOP' => 'Πατάκα Μακάο',
- 'MRO' => 'Ουγκίγια Μαυριτανίας',
+ 'MRO' => 'Ουγκίγια Μαυριτανίας (1973–2017)',
+ 'MRU' => 'Ουγκίγια Μαυριτανίας',
'MTL' => 'Λιρέτα Μάλτας',
'MTP' => 'Λίρα Μάλτας',
'MUR' => 'Ρουπία Μαυρικίου',
@@ -693,7 +709,7 @@ $currencyNames = array(
'MZE' => 'Εσκούδο Μοζαμβίκης',
'MZM' => 'Παλαιό Μετικάλ Μοζαμβίκης',
'MZN' => 'Μετικάλ Μοζαμβίκης',
- 'NAD' => 'Δολάριο Ναμίμπια',
+ 'NAD' => 'Δολάριο Ναμίμπιας',
'NGN' => 'Νάιρα Νιγηρίας',
'NIC' => 'Κόρδοβα Νικαράγουας',
'NIO' => 'Χρυσή Κόρδοβα Νικαράγουας',
@@ -704,9 +720,9 @@ $currencyNames = array(
'OMR' => 'Ριάλ Ομάν',
'PAB' => 'Μπαλμπόα Παναμά',
'PEI' => 'Ίντι Περού',
- 'PEN' => 'Νέο Σολ Περού',
- 'PES' => 'Σολ Περού',
- 'PGK' => 'Κίνα Παπούα Νέα Γουινέα',
+ 'PEN' => 'Σολ Περού',
+ 'PES' => 'Σολ Περού (1863–1965)',
+ 'PGK' => 'Κίνα Παπούας Νέας Γουινέας',
'PHP' => 'Πέσο Φιλιππίνων',
'PKR' => 'Ρουπία Πακιστάν',
'PLN' => 'Ζλότι Πολωνίας',
@@ -737,7 +753,8 @@ $currencyNames = array(
'SRD' => 'Δολάριο Σουρινάμ',
'SRG' => 'Γκίλντα Σουρινάμ',
'SSP' => 'Λίρα Νότιου Σουδάν',
- 'STD' => 'Ντόμπρα Σάο Τομέ και Πρίνσιπε',
+ 'STD' => 'Ντόμπρα Σάο Τομέ και Πρίνσιπε (1977–2017)',
+ 'STN' => 'Ντόμπρα Σάο Τομέ και Πρίνσιπε',
'SUR' => 'Σοβιετικό Ρούβλι',
'SVC' => 'Κολόν Ελ Σαλβαδόρ',
'SYP' => 'Λίρα Συρίας',
@@ -748,10 +765,10 @@ $currencyNames = array(
'TMM' => 'Μανάτ Τουρκμενιστάν',
'TMT' => 'Μάνατ Τουρκμενιστάν',
'TND' => 'Δηνάριο Τυνησίας',
- 'TOP' => 'Παάγκα νήσων Τόγκα',
+ 'TOP' => 'Παάγκα Τόνγκα',
'TPE' => 'Εσκούδο Τιμόρ',
'TRL' => 'Παλιά Λίρα Τουρκίας',
- 'TRY' => 'Τουρκική Λίρα',
+ 'TRY' => 'Λίρα Τουρκίας',
'TTD' => 'Δολάριο Τρινιντάντ και Τομπάγκο',
'TWD' => 'Νέο δολάριο Ταϊβάν',
'TZS' => 'Σελίνι Τανζανίας',
@@ -766,12 +783,13 @@ $currencyNames = array(
'UYU' => 'Πέσο Ουρουγουάης',
'UZS' => 'Σομ Ουζμπεκιστάν',
'VEB' => 'Μπολιβάρ Βενεζουέλας (1871–2008)',
- 'VEF' => 'Μπολιβάρ Βενεζουέλας',
+ 'VEF' => 'Μπολιβάρ Βενεζουέλας (2008–2018)',
+ 'VES' => 'Μπολιβάρ Βενεζουέλας',
'VND' => 'Ντονγκ Βιετνάμ',
'VNN' => 'Παλαιό ντονγκ Βιετνάμ',
'VUV' => 'Βατού Βανουάτου',
'WST' => 'Τάλα Σαμόα',
- 'XAF' => 'Φράγκο CFA Κεντρικής Αφρικής (BEAC)',
+ 'XAF' => 'Φράγκο CFA Κεντρικής Αφρικής',
'XBA' => 'Ευρωπαϊκή Σύνθετη Μονάδα',
'XBB' => 'Ευρωπαϊκή Νομισματική Μονάδα',
'XBC' => 'Ευρωπαϊκή μονάδα λογαριασμού (XBC)',
@@ -781,7 +799,7 @@ $currencyNames = array(
'XEU' => 'Ευρωπαϊκή Συναλλαγματική Μονάδα',
'XFO' => 'Χρυσό Φράγκο Γαλλίας',
'XFU' => 'UIC-Φράγκο Γαλλίας',
- 'XOF' => 'Φράγκο CFA Δυτικής Αφρικής (BCEAO)',
+ 'XOF' => 'Φράγκο CFA Δυτικής Αφρικής',
'XPF' => 'Φράγκο CFP',
'XRE' => 'Ταμείο RINET',
'XXX' => 'Άγνωστο νόμισμα',
@@ -800,9 +818,9 @@ $currencyNames = array(
'ZWD' => 'Δολάριο Ζιμπάμπουε',
'ZWL' => 'Δολάριο Ζιμπάμπουε (2009)',
'ZWR' => 'Δολάριο Ζιμπάμπουε (2008)',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'AED' => 'AED',
'AFN' => 'AFN',
'ALL' => 'ALL',
@@ -826,12 +844,14 @@ $currencySymbols = array(
'BSD' => 'BSD',
'BTN' => 'BTN',
'BWP' => 'BWP',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CA$',
'CDF' => 'CDF',
'CHF' => 'CHF',
'CLP' => 'CLP',
+ 'CNH' => 'CNH',
'CNY' => 'CN¥',
'COP' => 'COP',
'CRC' => 'CRC',
@@ -896,6 +916,7 @@ $currencySymbols = array(
'MNT' => 'MNT',
'MOP' => 'MOP',
'MRO' => 'MRO',
+ 'MRU' => 'MRU',
'MUR' => 'MUR',
'MVR' => 'MVR',
'MWK' => 'MWK',
@@ -933,6 +954,7 @@ $currencySymbols = array(
'SRD' => 'SRD',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'STN',
'SYP' => 'SYP',
'SZL' => 'SZL',
'THB' => '฿',
@@ -951,6 +973,7 @@ $currencySymbols = array(
'UYU' => 'UYU',
'UZS' => 'UZS',
'VEF' => 'VEF',
+ 'VES' => 'VES',
'VND' => '₫',
'VUV' => 'VUV',
'WST' => 'WST',
@@ -961,9 +984,9 @@ $currencySymbols = array(
'YER' => 'YER',
'ZAR' => 'ZAR',
'ZMW' => 'ZMW',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'Νήσος Ασενσιόν',
'AD' => 'Ανδόρα',
'AE' => 'Ηνωμένα Αραβικά Εμιράτα',
@@ -972,8 +995,7 @@ $countryNames = array(
'AI' => 'Ανγκουίλα',
'AL' => 'Αλβανία',
'AM' => 'Αρμενία',
- 'AN' => 'Ολλανδικές Αντίλλες',
- 'AO' => 'Ανγκόλα',
+ 'AO' => 'Αγκόλα',
'AQ' => 'Ανταρκτική',
'AR' => 'Αργεντινή',
'AS' => 'Αμερικανική Σαμόα',
@@ -983,7 +1005,7 @@ $countryNames = array(
'AX' => 'Νήσοι Όλαντ',
'AZ' => 'Αζερμπαϊτζάν',
'BA' => 'Βοσνία - Ερζεγοβίνη',
- 'BB' => 'Μπαρμπάντος',
+ 'BB' => 'Μπαρμπέιντος',
'BD' => 'Μπανγκλαντές',
'BE' => 'Βέλγιο',
'BF' => 'Μπουρκίνα Φάσο',
@@ -1022,7 +1044,7 @@ $countryNames = array(
'CW' => 'Κουρασάο',
'CX' => 'Νήσος των Χριστουγέννων',
'CY' => 'Κύπρος',
- 'CZ' => 'Τσεχική Δημοκρατία',
+ 'CZ' => 'Τσεχία',
'DE' => 'Γερμανία',
'DG' => 'Ντιέγκο Γκαρσία',
'DJ' => 'Τζιμπουτί',
@@ -1030,8 +1052,8 @@ $countryNames = array(
'DM' => 'Ντομίνικα',
'DO' => 'Δομινικανή Δημοκρατία',
'DZ' => 'Αλγερία',
- 'EA' => 'Θεούτα και Μελίλα',
- 'EC' => 'Εκουαδόρ',
+ 'EA' => 'Θέουτα και Μελίγια',
+ 'EC' => 'Ισημερινός',
'EE' => 'Εσθονία',
'EG' => 'Αίγυπτος',
'EH' => 'Δυτική Σαχάρα',
@@ -1039,6 +1061,7 @@ $countryNames = array(
'ES' => 'Ισπανία',
'ET' => 'Αιθιοπία',
'EU' => 'Ευρωπαϊκή Ένωση',
+ 'EZ' => 'Ευρωζώνη',
'FI' => 'Φινλανδία',
'FJ' => 'Φίτζι',
'FK' => 'Νήσοι Φόκλαντ',
@@ -1046,7 +1069,7 @@ $countryNames = array(
'FO' => 'Νήσοι Φερόες',
'FR' => 'Γαλλία',
'GA' => 'Γκαμπόν',
- 'GB' => 'Η.Β.',
+ 'GB' => 'ΗΒ',
'GD' => 'Γρενάδα',
'GE' => 'Γεωργία',
'GF' => 'Γαλλική Γουιάνα',
@@ -1074,7 +1097,7 @@ $countryNames = array(
'ID' => 'Ινδονησία',
'IE' => 'Ιρλανδία',
'IL' => 'Ισραήλ',
- 'IM' => 'Νήσος Μαν',
+ 'IM' => 'Νήσος του Μαν',
'IN' => 'Ινδία',
'IO' => 'Βρετανικά Εδάφη Ινδικού Ωκεανού',
'IQ' => 'Ιράκ',
@@ -1090,11 +1113,11 @@ $countryNames = array(
'KH' => 'Καμπότζη',
'KI' => 'Κιριμπάτι',
'KM' => 'Κομόρες',
- 'KN' => 'Άγιος Χριστόφορος και Νέβις',
+ 'KN' => 'Σεν Κιτς και Νέβις',
'KP' => 'Βόρεια Κορέα',
'KR' => 'Νότια Κορέα',
'KW' => 'Κουβέιτ',
- 'KY' => 'Νήσοι Κάιμαν',
+ 'KY' => 'Νήσοι Κέιμαν',
'KZ' => 'Καζακστάν',
'LA' => 'Λάος',
'LB' => 'Λίβανος',
@@ -1114,9 +1137,9 @@ $countryNames = array(
'MF' => 'Άγιος Μαρτίνος (Γαλλικό τμήμα)',
'MG' => 'Μαδαγασκάρη',
'MH' => 'Νήσοι Μάρσαλ',
- 'MK' => 'ΠΓΔΜ',
+ 'MK' => 'Πρώην Γιουγκοσλαβική Δημοκρατία της Μακεδονίας',
'ML' => 'Μάλι',
- 'MM' => 'Μιανμάρ/Βιρμανία',
+ 'MM' => 'Μιανμάρ (Βιρμανία)',
'MN' => 'Μογγολία',
'MO' => 'Μακάο',
'MP' => 'Νήσοι Βόρειες Μαριάνες',
@@ -1186,7 +1209,7 @@ $countryNames = array(
'SY' => 'Συρία',
'SZ' => 'Σουαζιλάνδη',
'TA' => 'Τριστάν ντα Κούνια',
- 'TC' => 'Νήσοι Τερκ και Κάικος',
+ 'TC' => 'Νήσοι Τερκς και Κάικος',
'TD' => 'Τσαντ',
'TF' => 'Γαλλικά Νότια Εδάφη',
'TG' => 'Τόγκο',
@@ -1204,66 +1227,81 @@ $countryNames = array(
'TZ' => 'Τανζανία',
'UA' => 'Ουκρανία',
'UG' => 'Ουγκάντα',
- 'UM' => 'Απομακρυσμένες Νησίδες Η.Π.Α.',
+ 'UM' => 'Απομακρυσμένες Νησίδες ΗΠΑ',
+ 'UN' => 'ΟΗΕ',
'US' => 'ΗΠΑ',
'UY' => 'Ουρουγουάη',
'UZ' => 'Ουζμπεκιστάν',
'VA' => 'Βατικανό',
'VC' => 'Άγιος Βικέντιος και Γρεναδίνες',
'VE' => 'Βενεζουέλα',
- 'VG' => 'Βρετανικές Παρθένοι Νήσοι',
- 'VI' => 'Αμερικανικές Παρθένοι Νήσοι',
+ 'VG' => 'Βρετανικές Παρθένες Νήσοι',
+ 'VI' => 'Αμερικανικές Παρθένες Νήσοι',
'VN' => 'Βιετνάμ',
'VU' => 'Βανουάτου',
- 'WF' => 'Ουάλις και Φουτούνα',
+ 'WF' => 'Γουάλις και Φουτούνα',
'WS' => 'Σαμόα',
- 'XK' => 'Κόσοβο',
+ 'XK' => 'Κοσσυφοπέδιο',
'YE' => 'Υεμένη',
'YT' => 'Μαγιότ',
'ZA' => 'Νότια Αφρική',
'ZM' => 'Ζάμπια',
'ZW' => 'Ζιμπάμπουε',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-one' => '{0} αιώνας',
+ 'century-other' => '{0} αιώνες',
'day-future-one' => 'σε {0} ημέρα',
'day-future-other' => 'σε {0} ημέρες',
- 'day-narrow-future-one' => 'σε {0} ημέρα',
- 'day-narrow-future-other' => 'σε {0} ημέρες',
- 'day-narrow-past-one' => 'πριν από {0} ημέρα',
- 'day-narrow-past-other' => 'πριν από {0} ημέρες',
+ 'day-narrow-future-one' => 'σε {0} ημ.',
+ 'day-narrow-future-other' => 'σε {0} ημ.',
+ 'day-narrow-past-one' => '{0} ημ. πριν',
+ 'day-narrow-past-other' => '{0} ημ. πριν',
'day-one' => '{0} ημέρα',
'day-other' => '{0} ημέρες',
'day-past-one' => 'πριν από {0} ημέρα',
'day-past-other' => 'πριν από {0} ημέρες',
- 'day-short-future-one' => 'σε {0} ημέρα',
- 'day-short-future-other' => 'σε {0} ημέρες',
- 'day-short-past-one' => 'πριν από {0} ημέρα',
- 'day-short-past-other' => 'πριν από {0} ημέρες',
+ 'day-short-future-one' => 'σε {0} ημ.',
+ 'day-short-future-other' => 'σε {0} ημ.',
+ 'day-short-past-one' => 'πριν από {0} ημ.',
+ 'day-short-past-other' => 'πριν από {0} ημ.',
+ 'fri-future-one' => 'σε {0} Παρασκευή',
+ 'fri-future-other' => 'σε {0} Παρασκευές',
+ 'fri-narrow-future-one' => 'σε {0} Πα',
+ 'fri-narrow-future-other' => 'σε {0} Πα',
+ 'fri-narrow-past-one' => '{0} Πα πριν',
+ 'fri-narrow-past-other' => '{0} Πα πριν',
+ 'fri-past-one' => 'πριν από {0} Παρασκευή',
+ 'fri-past-other' => 'πριν από {0} Παρασκευές',
+ 'fri-short-future-one' => 'σε {0} Παρ.',
+ 'fri-short-future-other' => 'σε {0} Παρ.',
+ 'fri-short-past-one' => 'πριν από {0} Παρ.',
+ 'fri-short-past-other' => 'πριν από {0} Παρ.',
'hour-future-one' => 'σε {0} ώρα',
'hour-future-other' => 'σε {0} ώρες',
- 'hour-narrow-future-one' => '+{0} ώ',
- 'hour-narrow-future-other' => '+{0} ώ',
- 'hour-narrow-past-one' => '-{0} ώ',
- 'hour-narrow-past-other' => '-{0} ώ',
+ 'hour-narrow-future-one' => 'σε {0} ώ.',
+ 'hour-narrow-future-other' => 'σε {0} ώ.',
+ 'hour-narrow-past-one' => '{0} ώ. πριν',
+ 'hour-narrow-past-other' => '{0} ώ. πριν',
'hour-one' => '{0} ώρα',
'hour-other' => '{0} ώρες',
'hour-past-one' => 'πριν από {0} ώρα',
'hour-past-other' => 'πριν από {0} ώρες',
- 'hour-short-future-one' => 'σε {0} ώρα',
- 'hour-short-future-other' => 'σε {0} ώρ.',
- 'hour-short-past-one' => 'πριν από {0} ώρα',
- 'hour-short-past-other' => 'πριν από {0} ώρ.',
+ 'hour-short-future-one' => 'σε {0} ώ.',
+ 'hour-short-future-other' => 'σε {0} ώ.',
+ 'hour-short-past-one' => 'πριν από {0} ώ.',
+ 'hour-short-past-other' => 'πριν από {0} ώ.',
'microsecond-one' => '{0} μικροδευτερόλεπτο',
'microsecond-other' => '{0} μικροδευτερόλεπτα',
'millisecond-one' => '{0} χιλιοστό του δευτερολέπτου',
'millisecond-other' => '{0} χιλιοστά του δευτερολέπτου',
'minute-future-one' => 'σε {0} λεπτό',
'minute-future-other' => 'σε {0} λεπτά',
- 'minute-narrow-future-one' => '+{0} λ',
- 'minute-narrow-future-other' => '+{0} λ',
- 'minute-narrow-past-one' => '-{0} λ',
- 'minute-narrow-past-other' => '-{0} λ',
+ 'minute-narrow-future-one' => 'σε {0} λ.',
+ 'minute-narrow-future-other' => 'σε {0} λ.',
+ 'minute-narrow-past-one' => '{0} λ. πριν',
+ 'minute-narrow-past-other' => '{0} λ. πριν',
'minute-one' => '{0} λεπτό',
'minute-other' => '{0} λεπτά',
'minute-past-one' => 'πριν από {0} λεπτό',
@@ -1272,40 +1310,64 @@ $timeUnits = array(
'minute-short-future-other' => 'σε {0} λεπ.',
'minute-short-past-one' => 'πριν από {0} λεπ.',
'minute-short-past-other' => 'πριν από {0} λεπ.',
+ 'mon-future-one' => 'σε {0} Δευτέρα',
+ 'mon-future-other' => 'σε {0} Δευτέρες',
+ 'mon-narrow-future-one' => 'σε {0} Δε',
+ 'mon-narrow-future-other' => 'σε {0} Δε',
+ 'mon-narrow-past-one' => '{0} Δε πριν',
+ 'mon-narrow-past-other' => '{0} Δε πριν',
+ 'mon-past-one' => 'πριν από {0} Δευτέρα',
+ 'mon-past-other' => 'πριν από {0} Δευτέρες',
+ 'mon-short-future-one' => 'σε {0} Δευτ.',
+ 'mon-short-future-other' => 'σε {0} Δευτ.',
+ 'mon-short-past-one' => 'πριν από {0} Δευτ.',
+ 'mon-short-past-other' => 'πριν από {0} Δευτ.',
'month-future-one' => 'σε {0} μήνα',
'month-future-other' => 'σε {0} μήνες',
- 'month-narrow-future-one' => '+{0} μήν.',
- 'month-narrow-future-other' => '+{0} μήν.',
- 'month-narrow-past-one' => '-{0} μήν.',
- 'month-narrow-past-other' => '-{0} μήν.',
+ 'month-narrow-future-one' => 'σε {0} μ.',
+ 'month-narrow-future-other' => 'σε {0} μ.',
+ 'month-narrow-past-one' => '{0} μ. πριν',
+ 'month-narrow-past-other' => '{0} μ. πριν',
'month-one' => '{0} μήνας',
'month-other' => '{0} μήνες',
'month-past-one' => 'πριν από {0} μήνα',
'month-past-other' => 'πριν από {0} μήνες',
- 'month-short-future-one' => 'σε {0} μήν.',
- 'month-short-future-other' => 'σε {0} μήν.',
- 'month-short-past-one' => 'πριν από {0} μήν.',
- 'month-short-past-other' => 'πριν από {0} μήν.',
+ 'month-short-future-one' => 'σε {0} μήνα',
+ 'month-short-future-other' => 'σε {0} μήνες',
+ 'month-short-past-one' => 'πριν από {0} μήνα',
+ 'month-short-past-other' => 'πριν από {0} μήνες',
'nanosecond-one' => '{0} νανοδευτερόλεπτο',
'nanosecond-other' => '{0} νανοδευτερόλεπτα',
'quarter-future-one' => 'σε {0} τρίμηνο',
'quarter-future-other' => 'σε {0} τρίμηνα',
- 'quarter-narrow-future-one' => '+{0} Τ',
- 'quarter-narrow-future-other' => '+{0} Τ',
- 'quarter-narrow-past-one' => '-{0} Τ',
- 'quarter-narrow-past-other' => '-{0} Τ',
+ 'quarter-narrow-future-one' => 'σε {0} τρίμ.',
+ 'quarter-narrow-future-other' => 'σε {0} τρίμ.',
+ 'quarter-narrow-past-one' => '{0} τρίμ. πριν',
+ 'quarter-narrow-past-other' => '{0} τρίμ. πριν',
'quarter-past-one' => 'πριν από {0} τρίμηνο',
'quarter-past-other' => 'πριν από {0} τρίμηνα',
'quarter-short-future-one' => 'σε {0} τρίμ.',
'quarter-short-future-other' => 'σε {0} τρίμ.',
'quarter-short-past-one' => 'πριν από {0} τρίμ.',
'quarter-short-past-other' => 'πριν από {0} τρίμ.',
+ 'sat-future-one' => 'σε {0} Σάββατο',
+ 'sat-future-other' => 'σε {0} Σάββατα',
+ 'sat-narrow-future-one' => 'σε {0} Σά',
+ 'sat-narrow-future-other' => 'σε {0} Σά',
+ 'sat-narrow-past-one' => '{0} Σά πριν',
+ 'sat-narrow-past-other' => '{0} Σά πριν',
+ 'sat-past-one' => 'πριν από {0} Σάββατο',
+ 'sat-past-other' => 'πριν από {0} Σάββατα',
+ 'sat-short-future-one' => 'σε {0} Σάβ.',
+ 'sat-short-future-other' => 'σε {0} Σάβ.',
+ 'sat-short-past-one' => 'πριν από {0} Σάβ.',
+ 'sat-short-past-other' => 'πριν από {0} Σάβ.',
'second-future-one' => 'σε {0} δευτερόλεπτο',
'second-future-other' => 'σε {0} δευτερόλεπτα',
- 'second-narrow-future-one' => '+{0} δ',
- 'second-narrow-future-other' => '+{0} δ',
- 'second-narrow-past-one' => '-{0} δ',
- 'second-narrow-past-other' => '-{0} δ',
+ 'second-narrow-future-one' => 'σε {0} δ.',
+ 'second-narrow-future-other' => 'σε {0} δ.',
+ 'second-narrow-past-one' => '{0} δ. πριν',
+ 'second-narrow-past-other' => '{0} δ. πριν',
'second-one' => '{0} δευτερόλεπτο',
'second-other' => '{0} δευτερόλεπτα',
'second-past-one' => 'πριν από {0} δευτερόλεπτο',
@@ -1314,12 +1376,60 @@ $timeUnits = array(
'second-short-future-other' => 'σε {0} δευτ.',
'second-short-past-one' => 'πριν από {0} δευτ.',
'second-short-past-other' => 'πριν από {0} δευτ.',
+ 'sun-future-one' => 'σε {0} Κυριακή',
+ 'sun-future-other' => 'σε {0} Κυριακές',
+ 'sun-narrow-future-one' => 'σε {0} Κυ',
+ 'sun-narrow-future-other' => 'σε {0} Κυ',
+ 'sun-narrow-past-one' => '{0} Κυ πριν',
+ 'sun-narrow-past-other' => '{0} Κυ πριν',
+ 'sun-past-one' => 'πριν από {0} Κυριακή',
+ 'sun-past-other' => 'πριν από {0} Κυριακές',
+ 'sun-short-future-one' => 'σε {0} Κυρ.',
+ 'sun-short-future-other' => 'σε {0} Κυρ.',
+ 'sun-short-past-one' => 'πριν από {0} Κυρ.',
+ 'sun-short-past-other' => 'πριν από {0} Κυρ.',
+ 'thu-future-one' => 'σε {0} Πέμπτη',
+ 'thu-future-other' => 'σε {0} Πέμπτες',
+ 'thu-narrow-future-one' => 'σε {0} Πέ',
+ 'thu-narrow-future-other' => 'σε {0} Πέ',
+ 'thu-narrow-past-one' => '{0} Πέ πριν',
+ 'thu-narrow-past-other' => '{0} Πέ πριν',
+ 'thu-past-one' => 'πριν από {0} Πέμπτη',
+ 'thu-past-other' => 'πριν από {0} Πέμπτες',
+ 'thu-short-future-one' => 'σε {0} Πέμ.',
+ 'thu-short-future-other' => 'σε {0} Πέμ.',
+ 'thu-short-past-one' => 'πριν από {0} Πέμ.',
+ 'thu-short-past-other' => 'πριν από {0} Πέμ.',
+ 'tue-future-one' => 'σε {0} Τρίτη',
+ 'tue-future-other' => 'σε {0} Τρίτες',
+ 'tue-narrow-future-one' => 'σε {0} Τρ',
+ 'tue-narrow-future-other' => 'σε {0} Τρ',
+ 'tue-narrow-past-one' => '{0} Τρ πριν',
+ 'tue-narrow-past-other' => '{0} Τρ πριν',
+ 'tue-past-one' => 'πριν από {0} Τρίτη',
+ 'tue-past-other' => 'πριν από {0} Τρίτες',
+ 'tue-short-future-one' => 'σε {0} Τρ.',
+ 'tue-short-future-other' => 'σε {0} Τρ.',
+ 'tue-short-past-one' => 'πριν από {0} Τρ.',
+ 'tue-short-past-other' => 'πριν από {0} Τρ.',
+ 'wed-future-one' => 'σε {0} Τετάρτη',
+ 'wed-future-other' => 'σε {0} Τετάρτες',
+ 'wed-narrow-future-one' => 'σε {0} Τε',
+ 'wed-narrow-future-other' => 'σε {0} Τε',
+ 'wed-narrow-past-one' => '{0} Τε πριν',
+ 'wed-narrow-past-other' => '{0} Τε πριν',
+ 'wed-past-one' => 'πριν από {0} Τετάρτη',
+ 'wed-past-other' => 'πριν από {0} Τετάρτες',
+ 'wed-short-future-one' => 'σε {0} Τετ.',
+ 'wed-short-future-other' => 'σε {0} Τετ.',
+ 'wed-short-past-one' => 'πριν από {0} Τετ.',
+ 'wed-short-past-other' => 'πριν από {0} Τετ.',
'week-future-one' => 'σε {0} εβδομάδα',
'week-future-other' => 'σε {0} εβδομάδες',
- 'week-narrow-future-one' => '+{0} εβδ.',
- 'week-narrow-future-other' => '+{0} εβδ.',
- 'week-narrow-past-one' => '-{0} εβδ.',
- 'week-narrow-past-other' => '-{0} εβδ.',
+ 'week-narrow-future-one' => 'σε {0} εβδ.',
+ 'week-narrow-future-other' => 'σε {0} εβδ.',
+ 'week-narrow-past-one' => '{0} εβδ. πριν',
+ 'week-narrow-past-other' => '{0} εβδ. πριν',
'week-one' => '{0} εβδομάδα',
'week-other' => '{0} εβδομάδες',
'week-past-one' => 'πριν από {0} εβδομάδα',
@@ -1330,10 +1440,10 @@ $timeUnits = array(
'week-short-past-other' => 'πριν από {0} εβδ.',
'year-future-one' => 'σε {0} έτος',
'year-future-other' => 'σε {0} έτη',
- 'year-narrow-future-one' => '+{0} έτος',
- 'year-narrow-future-other' => '+{0} έτη',
- 'year-narrow-past-one' => '-{0} έτος',
- 'year-narrow-past-other' => '-{0} έτη',
+ 'year-narrow-future-one' => 'σε {0} έτος',
+ 'year-narrow-future-other' => 'σε {0} έτη',
+ 'year-narrow-past-one' => '{0} έτος πριν',
+ 'year-narrow-past-other' => '{0} έτη πριν',
'year-one' => '{0} έτος',
'year-other' => '{0} έτη',
'year-past-one' => 'πριν από {0} έτος',
@@ -1342,4 +1452,4 @@ $timeUnits = array(
'year-short-future-other' => 'σε {0} έτη',
'year-short-past-one' => 'πριν από {0} έτος',
'year-short-past-other' => 'πριν από {0} έτη',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesEn.php b/MLEB/cldr/CldrNames/CldrNamesEn.php
index c8b494ec..663e23b6 100644
--- a/MLEB/cldr/CldrNames/CldrNamesEn.php
+++ b/MLEB/cldr/CldrNames/CldrNamesEn.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'Afar',
'ab' => 'Abkhazian',
'ace' => 'Achinese',
@@ -30,6 +30,7 @@ $languageNames = array(
'aro' => 'Araona',
'arp' => 'Arapaho',
'arq' => 'Algerian Arabic',
+ 'ars' => 'Najdi Arabic',
'arw' => 'Arawak',
'ary' => 'Moroccan Arabic',
'arz' => 'Egyptian Arabic',
@@ -42,7 +43,6 @@ $languageNames = array(
'awa' => 'Awadhi',
'ay' => 'Aymara',
'az' => 'Azerbaijani',
- 'azb' => 'South Azerbaijani',
'ba' => 'Bashkir',
'bal' => 'Baluchi',
'ban' => 'Balinese',
@@ -59,6 +59,7 @@ $languageNames = array(
'bfd' => 'Bafut',
'bfq' => 'Badaga',
'bg' => 'Bulgarian',
+ 'bgn' => 'Western Balochi',
'bho' => 'Bhojpuri',
'bi' => 'Bislama',
'bik' => 'Bikol',
@@ -67,7 +68,7 @@ $languageNames = array(
'bkm' => 'Kom',
'bla' => 'Siksika',
'bm' => 'Bambara',
- 'bn' => 'Bengali',
+ 'bn' => 'Bangla',
'bo' => 'Tibetan',
'bpy' => 'Bishnupriya',
'bqi' => 'Bakhtiari',
@@ -87,6 +88,7 @@ $languageNames = array(
'car' => 'Carib',
'cay' => 'Cayuga',
'cch' => 'Atsam',
+ 'ccp' => 'Chakma',
'ce' => 'Chechen',
'ceb' => 'Cebuano',
'cgg' => 'Chiga',
@@ -106,6 +108,7 @@ $languageNames = array(
'cps' => 'Capiznon',
'cr' => 'Cree',
'crh' => 'Crimean Turkish',
+ 'crs' => 'Seselwa Creole French',
'cs' => 'Czech',
'csb' => 'Kashubian',
'cu' => 'Church Slavic',
@@ -158,6 +161,7 @@ $languageNames = array(
'ewo' => 'Ewondo',
'ext' => 'Extremaduran',
'fa' => 'Persian',
+ 'fa-af' => 'Dari',
'fan' => 'Fang',
'fat' => 'Fanti',
'ff' => 'Fulah',
@@ -220,7 +224,7 @@ $languageNames = array(
'hr' => 'Croatian',
'hsb' => 'Upper Sorbian',
'hsn' => 'Xiang Chinese',
- 'ht' => 'Haitian',
+ 'ht' => 'Haitian Creole',
'hu' => 'Hungarian',
'hup' => 'Hupa',
'hy' => 'Armenian',
@@ -317,7 +321,9 @@ $languageNames = array(
'ln' => 'Lingala',
'lo' => 'Lao',
'lol' => 'Mongo',
+ 'lou' => 'Louisiana Creole',
'loz' => 'Lozi',
+ 'lrc' => 'Northern Luri',
'lt' => 'Lithuanian',
'ltg' => 'Latgalian',
'lu' => 'Luba-Katanga',
@@ -349,7 +355,7 @@ $languageNames = array(
'mgo' => 'Metaʼ',
'mh' => 'Marshallese',
'mi' => 'Maori',
- 'mic' => 'Micmac',
+ 'mic' => 'Mi\'kmaq',
'min' => 'Minangkabau',
'mk' => 'Macedonian',
'ml' => 'Malayalam',
@@ -363,7 +369,7 @@ $languageNames = array(
'ms' => 'Malay',
'mt' => 'Maltese',
'mua' => 'Mundang',
- 'mul' => 'Multiple Languages',
+ 'mul' => 'Multiple languages',
'mus' => 'Creek',
'mwl' => 'Mirandese',
'mwr' => 'Marwari',
@@ -379,6 +385,7 @@ $languageNames = array(
'nb' => 'Norwegian Bokmål',
'nd' => 'North Ndebele',
'nds' => 'Low German',
+ 'nds-nl' => 'Low Saxon',
'ne' => 'Nepali',
'new' => 'Newari',
'ng' => 'Ndonga',
@@ -394,7 +401,7 @@ $languageNames = array(
'nog' => 'Nogai',
'non' => 'Old Norse',
'nov' => 'Novial',
- 'nqo' => 'NʼKo',
+ 'nqo' => 'N’Ko',
'nr' => 'South Ndebele',
'nso' => 'Northern Sotho',
'nus' => 'Nuer',
@@ -408,7 +415,7 @@ $languageNames = array(
'oc' => 'Occitan',
'oj' => 'Ojibwa',
'om' => 'Oromo',
- 'or' => 'Oriya',
+ 'or' => 'Odia',
'os' => 'Ossetic',
'osa' => 'Osage',
'ota' => 'Ottoman Turkish',
@@ -419,6 +426,7 @@ $languageNames = array(
'pap' => 'Papiamento',
'pau' => 'Palauan',
'pcd' => 'Picard',
+ 'pcm' => 'Nigerian Pidgin',
'pdc' => 'Pennsylvania German',
'pdt' => 'Plautdietsch',
'peo' => 'Old Persian',
@@ -471,6 +479,7 @@ $languageNames = array(
'sco' => 'Scots',
'sd' => 'Sindhi',
'sdc' => 'Sassarese Sardinian',
+ 'sdh' => 'Southern Kurdish',
'se' => 'Northern Sami',
'see' => 'Seneca',
'seh' => 'Sena',
@@ -501,6 +510,7 @@ $languageNames = array(
'sog' => 'Sogdien',
'sq' => 'Albanian',
'sr' => 'Serbian',
+ 'sr-me' => 'Montenegrin',
'srn' => 'Sranan Tongo',
'srr' => 'Serer',
'ss' => 'Swati',
@@ -513,8 +523,8 @@ $languageNames = array(
'sux' => 'Sumerian',
'sv' => 'Swedish',
'sw' => 'Swahili',
+ 'sw-cd' => 'Congo Swahili',
'swb' => 'Comorian',
- 'swc' => 'Congo Swahili',
'syc' => 'Classical Syriac',
'syr' => 'Syriac',
'szl' => 'Silesian',
@@ -562,7 +572,7 @@ $languageNames = array(
'uga' => 'Ugaritic',
'uk' => 'Ukrainian',
'umb' => 'Umbundu',
- 'und' => 'Unknown Language',
+ 'und' => 'Unknown language',
'ur' => 'Urdu',
'uz' => 'Uzbek',
'vai' => 'Vai',
@@ -609,9 +619,9 @@ $languageNames = array(
'zun' => 'Zuni',
'zxx' => 'No linguistic content',
'zza' => 'Zaza',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'ADP' => 'Andorran Peseta',
'AED' => 'United Arab Emirates Dirham',
'AFA' => 'Afghan Afghani (1927–2002)',
@@ -665,8 +675,9 @@ $currencyNames = array(
'BTN' => 'Bhutanese Ngultrum',
'BUK' => 'Burmese Kyat',
'BWP' => 'Botswanan Pula',
- 'BYB' => 'Belarusian New Ruble (1994–1999)',
- 'BYR' => 'Belarusian Ruble',
+ 'BYB' => 'Belarusian Ruble (1994–1999)',
+ 'BYN' => 'Belarusian Ruble',
+ 'BYR' => 'Belarusian Ruble (2000–2016)',
'BZD' => 'Belize Dollar',
'CAD' => 'Canadian Dollar',
'CDF' => 'Congolese Franc',
@@ -676,6 +687,7 @@ $currencyNames = array(
'CLE' => 'Chilean Escudo',
'CLF' => 'Chilean Unit of Account (UF)',
'CLP' => 'Chilean Peso',
+ 'CNH' => 'Chinese Yuan (offshore)',
'CNX' => 'Chinese People’s Bank Dollar',
'CNY' => 'Chinese Yuan',
'COP' => 'Colombian Peso',
@@ -687,7 +699,7 @@ $currencyNames = array(
'CUP' => 'Cuban Peso',
'CVE' => 'Cape Verdean Escudo',
'CYP' => 'Cypriot Pound',
- 'CZK' => 'Czech Republic Koruna',
+ 'CZK' => 'Czech Koruna',
'DDM' => 'East German Mark',
'DEM' => 'German Mark',
'DJF' => 'Djiboutian Franc',
@@ -732,8 +744,8 @@ $currencyNames = array(
'IDR' => 'Indonesian Rupiah',
'IEP' => 'Irish Pound',
'ILP' => 'Israeli Pound',
- 'ILR' => 'Israeli Sheqel (1980–1985)',
- 'ILS' => 'Israeli New Sheqel',
+ 'ILR' => 'Israeli Shekel (1980–1985)',
+ 'ILS' => 'Israeli New Shekel',
'INR' => 'Indian Rupee',
'IQD' => 'Iraqi Dinar',
'IRR' => 'Iranian Rial',
@@ -780,7 +792,8 @@ $currencyNames = array(
'MMK' => 'Myanmar Kyat',
'MNT' => 'Mongolian Tugrik',
'MOP' => 'Macanese Pataca',
- 'MRO' => 'Mauritanian Ouguiya',
+ 'MRO' => 'Mauritanian Ouguiya (1973–2017)',
+ 'MRU' => 'Mauritanian Ouguiya',
'MTL' => 'Maltese Lira',
'MTP' => 'Maltese Pound',
'MUR' => 'Mauritian Rupee',
@@ -805,10 +818,10 @@ $currencyNames = array(
'OMR' => 'Omani Rial',
'PAB' => 'Panamanian Balboa',
'PEI' => 'Peruvian Inti',
- 'PEN' => 'Peruvian Nuevo Sol',
+ 'PEN' => 'Peruvian Sol',
'PES' => 'Peruvian Sol (1863–1965)',
'PGK' => 'Papua New Guinean Kina',
- 'PHP' => 'Philippine Peso',
+ 'PHP' => 'Philippine Piso',
'PKR' => 'Pakistani Rupee',
'PLN' => 'Polish Zloty',
'PLZ' => 'Polish Zloty (1950–1995)',
@@ -838,7 +851,8 @@ $currencyNames = array(
'SRD' => 'Surinamese Dollar',
'SRG' => 'Surinamese Guilder',
'SSP' => 'South Sudanese Pound',
- 'STD' => 'São Tomé & Príncipe Dobra',
+ 'STD' => 'São Tomé & Príncipe Dobra (1977–2017)',
+ 'STN' => 'São Tomé & Príncipe Dobra',
'SUR' => 'Soviet Rouble',
'SVC' => 'Salvadoran Colón',
'SYP' => 'Syrian Pound',
@@ -866,9 +880,11 @@ $currencyNames = array(
'UYI' => 'Uruguayan Peso (Indexed Units)',
'UYP' => 'Uruguayan Peso (1975–1993)',
'UYU' => 'Uruguayan Peso',
+ 'UYW' => 'Uruguayan Nominal Wage Index Unit',
'UZS' => 'Uzbekistani Som',
'VEB' => 'Venezuelan Bolívar (1871–2008)',
- 'VEF' => 'Venezuelan Bolívar',
+ 'VEF' => 'Venezuelan Bolívar (2008–2018)',
+ 'VES' => 'Venezuelan Bolívar',
'VND' => 'Vietnamese Dong',
'VNN' => 'Vietnamese Dong (1978–1985)',
'VUV' => 'Vanuatu Vatu',
@@ -909,14 +925,14 @@ $currencyNames = array(
'ZWD' => 'Zimbabwean Dollar (1980–2008)',
'ZWL' => 'Zimbabwean Dollar (2009)',
'ZWR' => 'Zimbabwean Dollar (2008)',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'JPY' => '¥',
'USD' => '$',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'Ascension Island',
'AD' => 'Andorra',
'AE' => 'United Arab Emirates',
@@ -925,7 +941,6 @@ $countryNames = array(
'AI' => 'Anguilla',
'AL' => 'Albania',
'AM' => 'Armenia',
- 'AN' => 'Netherlands Antilles',
'AO' => 'Angola',
'AQ' => 'Antarctica',
'AR' => 'Argentina',
@@ -975,7 +990,7 @@ $countryNames = array(
'CW' => 'Curaçao',
'CX' => 'Christmas Island',
'CY' => 'Cyprus',
- 'CZ' => 'Czech Republic',
+ 'CZ' => 'Czechia',
'DE' => 'Germany',
'DG' => 'Diego Garcia',
'DJ' => 'Djibouti',
@@ -992,6 +1007,7 @@ $countryNames = array(
'ES' => 'Spain',
'ET' => 'Ethiopia',
'EU' => 'European Union',
+ 'EZ' => 'Eurozone',
'FI' => 'Finland',
'FJ' => 'Fiji',
'FK' => 'Falkland Islands',
@@ -1158,6 +1174,7 @@ $countryNames = array(
'UA' => 'Ukraine',
'UG' => 'Uganda',
'UM' => 'U.S. Outlying Islands',
+ 'UN' => 'UN',
'US' => 'US',
'UY' => 'Uruguay',
'UZ' => 'Uzbekistan',
@@ -1170,21 +1187,41 @@ $countryNames = array(
'VU' => 'Vanuatu',
'WF' => 'Wallis & Futuna',
'WS' => 'Samoa',
+ 'XA' => 'Pseudo-Accents',
+ 'XB' => 'Pseudo-Bidi',
'XK' => 'Kosovo',
'YE' => 'Yemen',
'YT' => 'Mayotte',
'ZA' => 'South Africa',
'ZM' => 'Zambia',
'ZW' => 'Zimbabwe',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-one' => '{0} century',
+ 'century-other' => '{0} centuries',
'day-future-one' => 'in {0} day',
'day-future-other' => 'in {0} days',
'day-one' => '{0} day',
'day-other' => '{0} days',
'day-past-one' => '{0} day ago',
'day-past-other' => '{0} days ago',
+ 'day-short-future-one' => 'in {0} day',
+ 'day-short-future-other' => 'in {0} days',
+ 'day-short-past-one' => '{0} day ago',
+ 'day-short-past-other' => '{0} days ago',
+ 'fri-future-one' => 'in {0} Friday',
+ 'fri-future-other' => 'in {0} Fridays',
+ 'fri-narrow-future-one' => 'in {0} F',
+ 'fri-narrow-future-other' => 'in {0} F',
+ 'fri-narrow-past-one' => '{0} F ago',
+ 'fri-narrow-past-other' => '{0} F ago',
+ 'fri-past-one' => '{0} Friday ago',
+ 'fri-past-other' => '{0} Fridays ago',
+ 'fri-short-future-one' => 'in {0} Fri.',
+ 'fri-short-future-other' => 'in {0} Fri.',
+ 'fri-short-past-one' => '{0} Fri. ago',
+ 'fri-short-past-other' => '{0} Fri. ago',
'hour-future-one' => 'in {0} hour',
'hour-future-other' => 'in {0} hours',
'hour-one' => '{0} hour',
@@ -1209,6 +1246,18 @@ $timeUnits = array(
'minute-short-future-other' => 'in {0} min.',
'minute-short-past-one' => '{0} min. ago',
'minute-short-past-other' => '{0} min. ago',
+ 'mon-future-one' => 'in {0} Monday',
+ 'mon-future-other' => 'in {0} Mondays',
+ 'mon-narrow-future-one' => 'in {0} M',
+ 'mon-narrow-future-other' => 'in {0} M',
+ 'mon-narrow-past-one' => '{0} M ago',
+ 'mon-narrow-past-other' => '{0} M ago',
+ 'mon-past-one' => '{0} Monday ago',
+ 'mon-past-other' => '{0} Mondays ago',
+ 'mon-short-future-one' => 'in {0} Mon.',
+ 'mon-short-future-other' => 'in {0} Mon.',
+ 'mon-short-past-one' => '{0} Mon. ago',
+ 'mon-short-past-other' => '{0} Mon. ago',
'month-future-one' => 'in {0} month',
'month-future-other' => 'in {0} months',
'month-one' => '{0} month',
@@ -1229,6 +1278,18 @@ $timeUnits = array(
'quarter-short-future-other' => 'in {0} qtrs.',
'quarter-short-past-one' => '{0} qtr. ago',
'quarter-short-past-other' => '{0} qtrs. ago',
+ 'sat-future-one' => 'in {0} Saturday',
+ 'sat-future-other' => 'in {0} Saturdays',
+ 'sat-narrow-future-one' => 'in {0} Sa',
+ 'sat-narrow-future-other' => 'in {0} Sa',
+ 'sat-narrow-past-one' => '{0} Sa ago',
+ 'sat-narrow-past-other' => '{0} Sa ago',
+ 'sat-past-one' => '{0} Saturday ago',
+ 'sat-past-other' => '{0} Saturdays ago',
+ 'sat-short-future-one' => 'in {0} Sat.',
+ 'sat-short-future-other' => 'in {0} Sat.',
+ 'sat-short-past-one' => '{0} Sat. ago',
+ 'sat-short-past-other' => '{0} Sat. ago',
'second-future-one' => 'in {0} second',
'second-future-other' => 'in {0} seconds',
'second-one' => '{0} second',
@@ -1239,6 +1300,54 @@ $timeUnits = array(
'second-short-future-other' => 'in {0} sec.',
'second-short-past-one' => '{0} sec. ago',
'second-short-past-other' => '{0} sec. ago',
+ 'sun-future-one' => 'in {0} Sunday',
+ 'sun-future-other' => 'in {0} Sundays',
+ 'sun-narrow-future-one' => 'in {0} Su',
+ 'sun-narrow-future-other' => 'in {0} Su',
+ 'sun-narrow-past-one' => '{0} Su ago',
+ 'sun-narrow-past-other' => '{0} Su ago',
+ 'sun-past-one' => '{0} Sunday ago',
+ 'sun-past-other' => '{0} Sundays ago',
+ 'sun-short-future-one' => 'in {0} Sun.',
+ 'sun-short-future-other' => 'in {0} Sun.',
+ 'sun-short-past-one' => '{0} Sun. ago',
+ 'sun-short-past-other' => '{0} Sun. ago',
+ 'thu-future-one' => 'in {0} Thursday',
+ 'thu-future-other' => 'in {0} Thursdays',
+ 'thu-narrow-future-one' => 'in {0} Th',
+ 'thu-narrow-future-other' => 'in {0} Th',
+ 'thu-narrow-past-one' => '{0} Th ago',
+ 'thu-narrow-past-other' => '{0} Th ago',
+ 'thu-past-one' => '{0} Thursday ago',
+ 'thu-past-other' => '{0} Thursdays ago',
+ 'thu-short-future-one' => 'in {0} Thu.',
+ 'thu-short-future-other' => 'in {0} Thu.',
+ 'thu-short-past-one' => '{0} Thu. ago',
+ 'thu-short-past-other' => '{0} Thu. ago',
+ 'tue-future-one' => 'in {0} Tuesday',
+ 'tue-future-other' => 'in {0} Tuesdays',
+ 'tue-narrow-future-one' => 'in {0} Tu',
+ 'tue-narrow-future-other' => 'in {0} Tu',
+ 'tue-narrow-past-one' => '{0} Tu ago',
+ 'tue-narrow-past-other' => '{0} Tu ago',
+ 'tue-past-one' => '{0} Tuesday ago',
+ 'tue-past-other' => '{0} Tuesdays ago',
+ 'tue-short-future-one' => 'in {0} Tue.',
+ 'tue-short-future-other' => 'in {0} Tue.',
+ 'tue-short-past-one' => '{0} Tue. ago',
+ 'tue-short-past-other' => '{0} Tue. ago',
+ 'wed-future-one' => 'in {0} Wednesday',
+ 'wed-future-other' => 'in {0} Wednesdays',
+ 'wed-narrow-future-one' => 'in {0} W',
+ 'wed-narrow-future-other' => 'in {0} W',
+ 'wed-narrow-past-one' => '{0} W ago',
+ 'wed-narrow-past-other' => '{0} W ago',
+ 'wed-past-one' => '{0} Wednesday ago',
+ 'wed-past-other' => '{0} Wednesdays ago',
+ 'wed-short-future-one' => 'in {0} Wed.',
+ 'wed-short-future-other' => 'in {0} Wed.',
+ 'wed-short-past-one' => '{0} Wed. ago',
+ 'wed-short-past-other' => '{0} Wed. ago',
'week-future-one' => 'in {0} week',
'week-future-other' => 'in {0} weeks',
'week-one' => '{0} week',
@@ -1259,4 +1368,4 @@ $timeUnits = array(
'year-short-future-other' => 'in {0} yr.',
'year-short-past-one' => '{0} yr. ago',
'year-short-past-other' => '{0} yr. ago',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesEn_ca.php b/MLEB/cldr/CldrNames/CldrNamesEn_ca.php
index 166fc02c..eecf8584 100644
--- a/MLEB/cldr/CldrNames/CldrNamesEn_ca.php
+++ b/MLEB/cldr/CldrNames/CldrNamesEn_ca.php
@@ -1,9 +1,127 @@
<?php
-$currencyNames = array(
- 'CAD' => '',
-);
+$languageNames = [
+ 'bn' => 'Bengali',
+ 'mfe' => 'Mauritian',
+ 'ro-md' => 'Moldovan',
+ 'tvl' => 'Tuvaluan',
+];
-$currencySymbols = array(
- 'CAD' => '$',
-);
+$currencyNames = [
+ 'ILS' => 'Israeli new sheqel',
+];
+
+$timeUnits = [
+ 'fri-narrow-future-one' => 'in {0} Fr',
+ 'fri-narrow-future-other' => 'in {0} Fr’s',
+ 'fri-narrow-past-one' => '{0} Fr ago',
+ 'fri-narrow-past-other' => '{0} Fr’s ago',
+ 'fri-short-future-one' => 'in {0} Fri.',
+ 'fri-short-future-other' => 'in {0} Fri’s.',
+ 'fri-short-past-one' => '{0} Fri. ago',
+ 'fri-short-past-other' => '{0} Fri’s. ago',
+ 'hour-narrow-future-one' => 'in {0} hr.',
+ 'hour-narrow-future-other' => 'in {0} hrs.',
+ 'hour-narrow-past-one' => '{0} hr. ago',
+ 'hour-narrow-past-other' => '{0} hrs. ago',
+ 'hour-short-future-one' => 'in {0} hr.',
+ 'hour-short-future-other' => 'in {0} hrs.',
+ 'hour-short-past-one' => '{0} hr. ago',
+ 'hour-short-past-other' => '{0} hrs. ago',
+ 'minute-narrow-future-one' => 'in {0} min.',
+ 'minute-narrow-future-other' => 'in {0} mins.',
+ 'minute-narrow-past-one' => '{0} min. ago',
+ 'minute-narrow-past-other' => '{0} mins. ago',
+ 'minute-short-future-one' => 'in {0} min.',
+ 'minute-short-future-other' => 'in {0} mins.',
+ 'minute-short-past-one' => '{0} min. ago',
+ 'minute-short-past-other' => '{0} mins. ago',
+ 'mon-narrow-future-one' => 'in {0} Mo',
+ 'mon-narrow-future-other' => 'in {0} Mo’s',
+ 'mon-narrow-past-one' => '{0} Mo ago',
+ 'mon-narrow-past-other' => '{0} Mo’s ago',
+ 'mon-short-future-one' => 'in {0} Mon.',
+ 'mon-short-future-other' => 'in {0} Mon’s.',
+ 'mon-short-past-one' => '{0} Mon. ago',
+ 'mon-short-past-other' => '{0} Mon’s. ago',
+ 'month-narrow-future-one' => 'in {0} mo.',
+ 'month-narrow-future-other' => 'in {0} mos.',
+ 'month-narrow-past-one' => '{0} mo. ago',
+ 'month-narrow-past-other' => '{0} mos. ago',
+ 'month-short-future-one' => 'in {0} mo.',
+ 'month-short-future-other' => 'in {0} mos.',
+ 'month-short-past-one' => '{0} mo. ago',
+ 'month-short-past-other' => '{0} mos. ago',
+ 'quarter-narrow-future-one' => 'in {0} qtr.',
+ 'quarter-narrow-future-other' => 'in {0} qtrs.',
+ 'quarter-narrow-past-one' => '{0} qtr. ago',
+ 'quarter-narrow-past-other' => '{0} qtrs. ago',
+ 'quarter-short-future-one' => 'in {0} qtr.',
+ 'quarter-short-future-other' => 'in {0} qtrs.',
+ 'quarter-short-past-one' => '{0} qtr. ago',
+ 'quarter-short-past-other' => '{0} qtrs. ago',
+ 'sat-narrow-future-one' => 'in {0} Sa',
+ 'sat-narrow-future-other' => 'in {0} Sa’s',
+ 'sat-narrow-past-one' => '{0} Sa ago',
+ 'sat-narrow-past-other' => '{0} Sa’s ago',
+ 'sat-short-future-one' => 'in {0} Sat.',
+ 'sat-short-future-other' => 'in {0} Sat’s.',
+ 'sat-short-past-one' => '{0} Sat. ago',
+ 'sat-short-past-other' => '{0} Sat’s. ago',
+ 'second-narrow-future-one' => 'in {0} sec.',
+ 'second-narrow-future-other' => 'in {0} secs.',
+ 'second-narrow-past-one' => '{0} sec. ago',
+ 'second-narrow-past-other' => '{0} secs. ago',
+ 'second-short-future-one' => 'in {0} sec.',
+ 'second-short-future-other' => 'in {0} secs.',
+ 'second-short-past-one' => '{0} sec. ago',
+ 'second-short-past-other' => '{0} secs. ago',
+ 'sun-narrow-future-one' => 'in {0} Su',
+ 'sun-narrow-future-other' => 'in {0} Su’s',
+ 'sun-narrow-past-one' => '{0} Su ago',
+ 'sun-narrow-past-other' => '{0} Su’s ago',
+ 'sun-short-future-one' => 'in {0} Sun.',
+ 'sun-short-future-other' => 'in {0} Sun’s.',
+ 'sun-short-past-one' => '{0} Sun. ago',
+ 'sun-short-past-other' => '{0} Sun’s. ago',
+ 'thu-narrow-future-one' => 'in {0} Th',
+ 'thu-narrow-future-other' => 'in {0} Th’s',
+ 'thu-narrow-past-one' => '{0} Th ago',
+ 'thu-narrow-past-other' => '{0} Th’s ago',
+ 'thu-short-future-one' => 'in {0} Thu.',
+ 'thu-short-future-other' => 'in {0} Thu’s.',
+ 'thu-short-past-one' => '{0} Thu. ago',
+ 'thu-short-past-other' => '{0} Thu’s ago',
+ 'tue-narrow-future-one' => 'in {0} Tu',
+ 'tue-narrow-future-other' => 'in {0} Tu’s',
+ 'tue-narrow-past-one' => '{0} Tu ago',
+ 'tue-narrow-past-other' => '{0} Tu’s ago',
+ 'tue-short-future-one' => 'in {0} Tue.',
+ 'tue-short-future-other' => 'in {0} Tue’s.',
+ 'tue-short-past-one' => '{0} Tue. ago',
+ 'tue-short-past-other' => '{0} Tue’s. ago',
+ 'wed-narrow-future-one' => 'in {0} We',
+ 'wed-narrow-future-other' => 'in {0} We’s',
+ 'wed-narrow-past-one' => '{0} We ago',
+ 'wed-narrow-past-other' => '{0} We’s ago',
+ 'wed-short-future-one' => 'in {0} Wed.',
+ 'wed-short-future-other' => 'in {0} Wed’s.',
+ 'wed-short-past-one' => '{0} Wed. ago',
+ 'wed-short-past-other' => '{0} Wed’s. ago',
+ 'week-narrow-future-one' => 'in {0} wk.',
+ 'week-narrow-future-other' => 'in {0} wks.',
+ 'week-narrow-past-one' => '{0} wk. ago',
+ 'week-narrow-past-other' => '{0} wks. ago',
+ 'week-short-future-one' => 'in {0} wk.',
+ 'week-short-future-other' => 'in {0} wks.',
+ 'week-short-past-one' => '{0} wk. ago',
+ 'week-short-past-other' => '{0} wks. ago',
+ 'year-narrow-future-one' => 'in {0} yr.',
+ 'year-narrow-future-other' => 'in {0} yrs.',
+ 'year-narrow-past-one' => '{0} yr. ago',
+ 'year-narrow-past-other' => '{0} yrs. ago',
+ 'year-short-future-one' => 'in {0} yr.',
+ 'year-short-future-other' => 'in {0} yrs.',
+ 'year-short-past-one' => '{0} yr. ago',
+ 'year-short-past-other' => '{0} yrs. ago',
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesEn_gb.php b/MLEB/cldr/CldrNames/CldrNamesEn_gb.php
index 20676004..dbfd6f46 100644
--- a/MLEB/cldr/CldrNames/CldrNamesEn_gb.php
+++ b/MLEB/cldr/CldrNames/CldrNamesEn_gb.php
@@ -1,6 +1,22 @@
<?php
-$currencyNames = array(
- 'ILR' => 'Israeli Shekel (1980–1985)',
- 'ILS' => 'Israeli New Shekel',
-);
+$languageNames = [
+ 'nds-nl' => 'West Low German',
+];
+
+$currencyNames = [
+ 'SHP' => 'St Helena Pound',
+];
+
+$countryNames = [
+ 'BL' => 'St Barthélemy',
+ 'KN' => 'St Kitts & Nevis',
+ 'LC' => 'St Lucia',
+ 'MF' => 'St Martin',
+ 'PM' => 'St Pierre & Miquelon',
+ 'SH' => 'St Helena',
+ 'UM' => 'US Outlying Islands',
+ 'US' => 'US',
+ 'VC' => 'St Vincent & Grenadines',
+ 'VI' => 'US Virgin Islands',
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesEo.php b/MLEB/cldr/CldrNames/CldrNamesEo.php
index d4c927eb..ab68d188 100644
--- a/MLEB/cldr/CldrNames/CldrNamesEo.php
+++ b/MLEB/cldr/CldrNames/CldrNamesEo.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'afara',
'ab' => 'abĥaza',
'af' => 'afrikansa',
@@ -175,9 +175,9 @@ $languageNames = array(
'zh-hant' => 'ĉina tradicia',
'zu' => 'zulua',
'zxx' => 'nelingvaĵo',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'AUD' => 'Aŭstralia dolaro',
'BRL' => 'Brazila realo',
'CAD' => 'Kanada dolaro',
@@ -209,9 +209,9 @@ $currencyNames = array(
'XPT' => 'plateno',
'XXX' => 'Nekonata valuto',
'ZAR' => 'Sud-afrika rando',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'AUD' => 'AU$',
'BRL' => 'R$',
'CAD' => 'CA$',
@@ -236,17 +236,16 @@ $currencySymbols = array(
'TWD' => 'NT$',
'USD' => 'US$',
'ZAR' => 'ZAR',
-);
+];
-$countryNames = array(
+$countryNames = [
'AD' => 'Andoro',
- 'AE' => 'Unuiĝintaj Arabaj Emirlandos',
+ 'AE' => 'Unuiĝintaj Arabaj Emirlandoj',
'AF' => 'Afganujo',
'AG' => 'Antigvo-Barbudo',
'AI' => 'Angvilo',
'AL' => 'Albanujo',
'AM' => 'Armenujo',
- 'AN' => 'Nederlandaj Antiloj',
'AO' => 'Angolo',
'AQ' => 'Antarkto',
'AR' => 'Argentino',
@@ -465,9 +464,9 @@ $countryNames = array(
'ZA' => 'Sud-Afriko',
'ZM' => 'Zambio',
'ZW' => 'Zimbabvo',
-);
+];
-$timeUnits = array(
+$timeUnits = [
'day-future-one' => 'post {0} tago',
'day-future-other' => 'post {0} tagoj',
'day-one' => '{0} tago',
@@ -516,4 +515,4 @@ $timeUnits = array(
'year-other' => '{0} jaroj',
'year-past-one' => 'antaŭ {0} jaro',
'year-past-other' => 'antaŭ {0} jaroj',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesEs.php b/MLEB/cldr/CldrNames/CldrNamesEs.php
index e8706954..5f2cbfec 100644
--- a/MLEB/cldr/CldrNames/CldrNamesEs.php
+++ b/MLEB/cldr/CldrNames/CldrNamesEs.php
@@ -1,12 +1,12 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'afar',
'ab' => 'abjasio',
'ace' => 'acehnés',
'ach' => 'acoli',
'ada' => 'adangme',
- 'ady' => 'adigeo',
+ 'ady' => 'adigué',
'ae' => 'avéstico',
'af' => 'afrikáans',
'afh' => 'afrihili',
@@ -25,6 +25,7 @@ $languageNames = array(
'arc' => 'arameo',
'arn' => 'mapuche',
'arp' => 'arapaho',
+ 'ars' => 'árabe najdí',
'arw' => 'arahuaco',
'as' => 'asamés',
'asa' => 'asu',
@@ -36,8 +37,8 @@ $languageNames = array(
'ba' => 'baskir',
'bal' => 'baluchi',
'ban' => 'balinés',
- 'bas' => 'basa',
- 'bax' => 'bamun',
+ 'bas' => 'basaa',
+ 'bax' => 'bamún',
'bbj' => 'ghomala',
'be' => 'bielorruso',
'bej' => 'beja',
@@ -45,7 +46,8 @@ $languageNames = array(
'bez' => 'bena',
'bfd' => 'bafut',
'bg' => 'búlgaro',
- 'bho' => 'bhojpuri',
+ 'bgn' => 'baluchi occidental',
+ 'bho' => 'bhoyapurí',
'bi' => 'bislama',
'bik' => 'bicol',
'bin' => 'bini',
@@ -59,7 +61,7 @@ $languageNames = array(
'brx' => 'bodo',
'bs' => 'bosnio',
'bss' => 'akoose',
- 'bua' => 'buriat',
+ 'bua' => 'buriato',
'bug' => 'buginés',
'bum' => 'bulu',
'byn' => 'blin',
@@ -87,10 +89,11 @@ $languageNames = array(
'cop' => 'copto',
'cr' => 'cree',
'crh' => 'tártaro de Crimea',
+ 'crs' => 'criollo seychelense',
'cs' => 'checo',
'csb' => 'casubio',
'cu' => 'eslavo eclesiástico',
- 'cv' => 'chuvash',
+ 'cv' => 'chuvasio',
'cy' => 'galés',
'da' => 'danés',
'dak' => 'dakota',
@@ -107,7 +110,7 @@ $languageNames = array(
'doi' => 'dogri',
'dsb' => 'bajo sorbio',
'dua' => 'duala',
- 'dum' => 'neerlandés medieval',
+ 'dum' => 'neerlandés medio',
'dv' => 'divehi',
'dyo' => 'jola-fonyi',
'dyu' => 'diula',
@@ -125,7 +128,7 @@ $languageNames = array(
'en-ca' => 'inglés canadiense',
'en-gb' => 'inglés británico',
'en-us' => 'inglés estadounidense',
- 'enm' => 'inglés medieval',
+ 'enm' => 'inglés medio',
'eo' => 'esperanto',
'es' => 'español',
'es-419' => 'español latinoamericano',
@@ -146,7 +149,8 @@ $languageNames = array(
'fr' => 'francés',
'fr-ca' => 'francés canadiense',
'fr-ch' => 'francés suizo',
- 'frm' => 'francés medieval',
+ 'frc' => 'francés cajún',
+ 'frm' => 'francés medio',
'fro' => 'francés antiguo',
'frr' => 'frisón septentrional',
'frs' => 'frisón oriental',
@@ -155,27 +159,29 @@ $languageNames = array(
'ga' => 'irlandés',
'gaa' => 'ga',
'gag' => 'gagauzo',
+ 'gan' => 'chino gan',
'gay' => 'gayo',
'gba' => 'gbaya',
'gd' => 'gaélico escocés',
'gez' => 'geez',
'gil' => 'gilbertés',
'gl' => 'gallego',
- 'gmh' => 'alemán de la alta edad media',
+ 'gmh' => 'alto alemán medio',
'gn' => 'guaraní',
- 'goh' => 'alemán de la alta edad antigua',
+ 'goh' => 'alto alemán antiguo',
'gon' => 'gondi',
'gor' => 'gorontalo',
'got' => 'gótico',
'grb' => 'grebo',
'grc' => 'griego antiguo',
'gsw' => 'alemán suizo',
- 'gu' => 'gujarati',
+ 'gu' => 'guyaratí',
'guz' => 'gusii',
'gv' => 'manés',
'gwi' => 'kutchin',
'ha' => 'hausa',
'hai' => 'haida',
+ 'hak' => 'chino hakka',
'haw' => 'hawaiano',
'he' => 'hebreo',
'hi' => 'hindi',
@@ -185,7 +191,8 @@ $languageNames = array(
'ho' => 'hiri motu',
'hr' => 'croata',
'hsb' => 'alto sorbio',
- 'ht' => 'haitiano',
+ 'hsn' => 'chino xiang',
+ 'ht' => 'criollo haitiano',
'hu' => 'húngaro',
'hup' => 'hupa',
'hy' => 'armenio',
@@ -267,16 +274,18 @@ $languageNames = array(
'li' => 'limburgués',
'lkt' => 'lakota',
'ln' => 'lingala',
- 'lo' => 'laosiano',
+ 'lo' => 'lao',
'lol' => 'mongo',
+ 'lou' => 'criollo de Luisiana',
'loz' => 'lozi',
+ 'lrc' => 'lorí septentrional',
'lt' => 'lituano',
'lu' => 'luba-katanga',
'lua' => 'luba-lulua',
'lui' => 'luiseño',
'lun' => 'lunda',
'luo' => 'luo',
- 'lus' => 'lushai',
+ 'lus' => 'mizo',
'luy' => 'luyia',
'lv' => 'letón',
'mad' => 'madurés',
@@ -293,7 +302,7 @@ $languageNames = array(
'mer' => 'meru',
'mfe' => 'criollo mauriciano',
'mg' => 'malgache',
- 'mga' => 'irlandés medieval',
+ 'mga' => 'irlandés medio',
'mgh' => 'makhuwa-meetto',
'mgo' => 'meta’',
'mh' => 'marshalés',
@@ -311,19 +320,22 @@ $languageNames = array(
'ms' => 'malayo',
'mt' => 'maltés',
'mua' => 'mundang',
- 'mul' => 'lenguas múltiples',
+ 'mul' => 'varios idiomas',
'mus' => 'creek',
'mwl' => 'mirandés',
'mwr' => 'marwari',
'my' => 'birmano',
'mye' => 'myene',
'myv' => 'erzya',
+ 'mzn' => 'mazandaraní',
'na' => 'nauruano',
+ 'nan' => 'chino min nan',
'nap' => 'napolitano',
'naq' => 'nama',
- 'nb' => 'bokmal noruego',
+ 'nb' => 'noruego bokmal',
'nd' => 'ndebele septentrional',
'nds' => 'bajo alemán',
+ 'nds-nl' => 'bajo sajón',
'ne' => 'nepalí',
'new' => 'newari',
'ng' => 'ndonga',
@@ -332,7 +344,7 @@ $languageNames = array(
'nl' => 'neerlandés',
'nl-be' => 'flamenco',
'nmg' => 'kwasio',
- 'nn' => 'nynorsk noruego',
+ 'nn' => 'noruego nynorsk',
'nnh' => 'ngiemboon',
'no' => 'noruego',
'nog' => 'nogai',
@@ -361,11 +373,13 @@ $languageNames = array(
'pam' => 'pampanga',
'pap' => 'papiamento',
'pau' => 'palauano',
+ 'pcm' => 'pidgin de Nigeria',
'peo' => 'persa antiguo',
'phn' => 'fenicio',
'pi' => 'pali',
'pl' => 'polaco',
'pon' => 'pohnpeiano',
+ 'prg' => 'prusiano',
'pro' => 'provenzal antiguo',
'ps' => 'pastún',
'pt' => 'portugués',
@@ -376,8 +390,8 @@ $languageNames = array(
'raj' => 'rajasthani',
'rap' => 'rapanui',
'rar' => 'rarotongano',
- 'rm' => 'retorrománico',
- 'rn' => 'kiroundi',
+ 'rm' => 'romanche',
+ 'rn' => 'kirundi',
'ro' => 'rumano',
'ro-md' => 'moldavo',
'rof' => 'rombo',
@@ -399,6 +413,7 @@ $languageNames = array(
'scn' => 'siciliano',
'sco' => 'escocés',
'sd' => 'sindhi',
+ 'sdh' => 'kurdo meridional',
'se' => 'sami septentrional',
'see' => 'seneca',
'seh' => 'sena',
@@ -427,17 +442,17 @@ $languageNames = array(
'sr' => 'serbio',
'srn' => 'sranan tongo',
'srr' => 'serer',
- 'ss' => 'siswati',
+ 'ss' => 'suazi',
'ssy' => 'saho',
- 'st' => 'sesotho meridional',
+ 'st' => 'sotho meridional',
'su' => 'sundanés',
'suk' => 'sukuma',
'sus' => 'susu',
'sux' => 'sumerio',
'sv' => 'sueco',
- 'sw' => 'swahili',
+ 'sw' => 'suajili',
+ 'sw-cd' => 'suajili del Congo',
'swb' => 'comorense',
- 'swc' => 'swahili del Congo',
'syc' => 'siríaco clásico',
'syr' => 'siriaco',
'ta' => 'tamil',
@@ -457,7 +472,7 @@ $languageNames = array(
'tlh' => 'klingon',
'tli' => 'tlingit',
'tmh' => 'tamashek',
- 'tn' => 'setchwana',
+ 'tn' => 'setsuana',
'to' => 'tongano',
'tog' => 'tonga del Nyasa',
'tpi' => 'tok pisin',
@@ -472,7 +487,7 @@ $languageNames = array(
'twq' => 'tasawaq',
'ty' => 'tahitiano',
'tyv' => 'tuviniano',
- 'tzm' => 'tamazight del Marruecos Central',
+ 'tzm' => 'tamazight del Atlas Central',
'udm' => 'udmurt',
'ug' => 'uigur',
'uga' => 'ugarítico',
@@ -489,10 +504,12 @@ $languageNames = array(
'vun' => 'vunjo',
'wa' => 'valón',
'wae' => 'walser',
- 'wal' => 'walamo',
+ 'wal' => 'wolayta',
'war' => 'waray',
'was' => 'washo',
+ 'wbp' => 'warlpiri',
'wo' => 'wólof',
+ 'wuu' => 'chino wu',
'xal' => 'kalmyk',
'xh' => 'xhosa',
'xog' => 'soga',
@@ -500,7 +517,7 @@ $languageNames = array(
'yap' => 'yapés',
'yav' => 'yangben',
'ybb' => 'yemba',
- 'yi' => 'yídish',
+ 'yi' => 'yidis',
'yo' => 'yoruba',
'yue' => 'cantonés',
'za' => 'zhuang',
@@ -512,18 +529,18 @@ $languageNames = array(
'zh-hans' => 'chino simplificado',
'zh-hant' => 'chino tradicional',
'zu' => 'zulú',
- 'zun' => 'zuni',
+ 'zun' => 'zuñi',
'zxx' => 'sin contenido lingüístico',
'zza' => 'zazaki',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'ADP' => 'peseta andorrana',
'AED' => 'dírham de los Emiratos Árabes Unidos',
'AFA' => 'afgani (1927–2002)',
'AFN' => 'afgani',
'ALL' => 'lek',
- 'AMD' => 'dram armenio',
+ 'AMD' => 'dram',
'ANG' => 'florín de las Antillas Neerlandesas',
'AOA' => 'kuanza',
'AOK' => 'kwanza angoleño (1977–1990)',
@@ -536,9 +553,9 @@ $currencyNames = array(
'AUD' => 'dólar australiano',
'AWG' => 'florín arubeño',
'AZM' => 'manat azerí (1993–2006)',
- 'AZN' => 'manat azerí',
+ 'AZN' => 'manat azerbaiyano',
'BAD' => 'dinar bosnio',
- 'BAM' => 'marco convertible de Bosnia-Herzegovina',
+ 'BAM' => 'marco convertible de Bosnia y Herzegovina',
'BBD' => 'dólar barbadense',
'BDT' => 'taka',
'BEC' => 'franco belga (convertible)',
@@ -564,7 +581,8 @@ $currencyNames = array(
'BUK' => 'kyat birmano',
'BWP' => 'pula',
'BYB' => 'nuevo rublo bielorruso (1994–1999)',
- 'BYR' => 'rublo bielorruso',
+ 'BYN' => 'rublo bielorruso',
+ 'BYR' => 'rublo bielorruso (2000–2016)',
'BZD' => 'dólar beliceño',
'CAD' => 'dólar canadiense',
'CDF' => 'franco congoleño',
@@ -573,6 +591,7 @@ $currencyNames = array(
'CHW' => 'franco WIR',
'CLF' => 'unidad de fomento chilena',
'CLP' => 'peso chileno',
+ 'CNH' => 'yuan chino (extracontinental)',
'CNY' => 'yuan',
'COP' => 'peso colombiano',
'COU' => 'unidad de valor real colombiana',
@@ -594,7 +613,7 @@ $currencyNames = array(
'ECV' => 'unidad de valor constante (UVC) ecuatoriana',
'EEK' => 'corona estonia',
'EGP' => 'libra egipcia',
- 'ERN' => 'nakfa eritreo',
+ 'ERN' => 'nakfa',
'ESA' => 'peseta española (cuenta A)',
'ESB' => 'peseta española (cuenta convertible)',
'ESP' => 'peseta española',
@@ -604,7 +623,7 @@ $currencyNames = array(
'FJD' => 'dólar fiyiano',
'FKP' => 'libra malvinense',
'FRF' => 'franco francés',
- 'GBP' => 'libra británica',
+ 'GBP' => 'libra esterlina',
'GEK' => 'kupon larit georgiano',
'GEL' => 'lari',
'GHC' => 'cedi ghanés (1979–2007)',
@@ -669,7 +688,8 @@ $currencyNames = array(
'MMK' => 'kiat',
'MNT' => 'tugrik',
'MOP' => 'pataca de Macao',
- 'MRO' => 'uguiya',
+ 'MRO' => 'uguiya (1973–2017)',
+ 'MRU' => 'uguiya',
'MTL' => 'lira maltesa',
'MTP' => 'libra maltesa',
'MUR' => 'rupia mauriciana',
@@ -693,8 +713,8 @@ $currencyNames = array(
'OMR' => 'rial omaní',
'PAB' => 'balboa panameño',
'PEI' => 'inti peruano',
- 'PEN' => 'nuevo sol peruano',
- 'PES' => 'sol peruano',
+ 'PEN' => 'sol peruano',
+ 'PES' => 'sol peruano (1863–1965)',
'PGK' => 'kina',
'PHP' => 'peso filipino',
'PKR' => 'rupia pakistaní',
@@ -726,7 +746,8 @@ $currencyNames = array(
'SRD' => 'dólar surinamés',
'SRG' => 'florín surinamés',
'SSP' => 'libra sursudanesa',
- 'STD' => 'dobra',
+ 'STD' => 'dobra (1977–2017)',
+ 'STN' => 'dobra',
'SUR' => 'rublo soviético',
'SVC' => 'colón salvadoreño',
'SYP' => 'libra siria',
@@ -754,13 +775,15 @@ $currencyNames = array(
'UYI' => 'peso uruguayo en unidades indexadas',
'UYP' => 'peso uruguayo (1975–1993)',
'UYU' => 'peso uruguayo',
+ 'UYW' => 'unidad previsional uruguayo',
'UZS' => 'sum',
'VEB' => 'bolívar venezolano (1871–2008)',
- 'VEF' => 'bolívar venezolano',
+ 'VEF' => 'bolívar venezolano (2008–2018)',
+ 'VES' => 'bolívar venezolano',
'VND' => 'dong',
'VUV' => 'vatu',
'WST' => 'tala',
- 'XAF' => 'franco CFA BEAC',
+ 'XAF' => 'franco CFA de África Central',
'XAG' => 'plata',
'XAU' => 'oro',
'XBA' => 'unidad compuesta europea',
@@ -772,7 +795,7 @@ $currencyNames = array(
'XEU' => 'unidad de moneda europea',
'XFO' => 'franco oro francés',
'XFU' => 'franco UIC francés',
- 'XOF' => 'franco CFA BCEAO',
+ 'XOF' => 'franco CFA de África Occidental',
'XPD' => 'paladio',
'XPF' => 'franco CFP',
'XPT' => 'platino',
@@ -787,14 +810,14 @@ $currencyNames = array(
'ZAL' => 'rand sudafricano (financiero)',
'ZAR' => 'rand',
'ZMK' => 'kwacha zambiano (1968–2012)',
- 'ZMW' => 'kuacha zambiano',
+ 'ZMW' => 'kwacha zambiano',
'ZRN' => 'nuevo zaire zaireño',
'ZRZ' => 'zaire zaireño',
'ZWD' => 'dólar de Zimbabue',
'ZWL' => 'dólar zimbabuense',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'AED' => 'AED',
'AFN' => 'AFN',
'ALL' => 'ALL',
@@ -818,12 +841,14 @@ $currencySymbols = array(
'BSD' => 'BSD',
'BTN' => 'BTN',
'BWP' => 'BWP',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CA$',
'CDF' => 'CDF',
'CHF' => 'CHF',
'CLP' => 'CLP',
+ 'CNH' => 'CNH',
'CNY' => 'CNY',
'COP' => 'COP',
'CRC' => 'CRC',
@@ -839,6 +864,7 @@ $currencySymbols = array(
'ERN' => 'ERN',
'ESP' => '₧',
'ETB' => 'ETB',
+ 'EUR' => '€',
'FJD' => 'FJD',
'FKP' => 'FKP',
'GBP' => 'GBP',
@@ -924,6 +950,7 @@ $currencySymbols = array(
'SRD' => 'SRD',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'STN',
'SYP' => 'SYP',
'SZL' => 'SZL',
'THB' => '฿',
@@ -937,10 +964,12 @@ $currencySymbols = array(
'TZS' => 'TZS',
'UAH' => 'UAH',
'UGX' => 'UGX',
- 'USD' => '$',
+ 'USD' => 'US$',
'UYU' => 'UYU',
+ 'UYW' => 'UYW',
'UZS' => 'UZS',
'VEF' => 'VEF',
+ 'VES' => 'VES',
'VND' => '₫',
'VUV' => 'VUV',
'WST' => 'WST',
@@ -950,9 +979,10 @@ $currencySymbols = array(
'XPF' => 'CFPF',
'YER' => 'YER',
'ZAR' => 'ZAR',
-);
+ 'ZMW' => 'ZMW',
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'Isla de la Ascensión',
'AD' => 'Andorra',
'AE' => 'Emiratos Árabes Unidos',
@@ -961,7 +991,6 @@ $countryNames = array(
'AI' => 'Anguila',
'AL' => 'Albania',
'AM' => 'Armenia',
- 'AN' => 'Antillas Neerlandesas',
'AO' => 'Angola',
'AQ' => 'Antártida',
'AR' => 'Argentina',
@@ -971,7 +1000,7 @@ $countryNames = array(
'AW' => 'Aruba',
'AX' => 'Islas Åland',
'AZ' => 'Azerbaiyán',
- 'BA' => 'Bosnia-Herzegovina',
+ 'BA' => 'Bosnia y Herzegovina',
'BB' => 'Barbados',
'BD' => 'Bangladés',
'BE' => 'Bélgica',
@@ -996,9 +1025,9 @@ $countryNames = array(
'CC' => 'Islas Cocos',
'CD' => 'República Democrática del Congo',
'CF' => 'República Centroafricana',
- 'CG' => 'República del Congo',
+ 'CG' => 'Congo',
'CH' => 'Suiza',
- 'CI' => 'Costa de Marfil',
+ 'CI' => 'Côte d’Ivoire',
'CK' => 'Islas Cook',
'CL' => 'Chile',
'CM' => 'Camerún',
@@ -1009,9 +1038,9 @@ $countryNames = array(
'CU' => 'Cuba',
'CV' => 'Cabo Verde',
'CW' => 'Curazao',
- 'CX' => 'Isla de Navidad (Christmas)',
+ 'CX' => 'Isla de Navidad',
'CY' => 'Chipre',
- 'CZ' => 'República Checa',
+ 'CZ' => 'Chequia',
'DE' => 'Alemania',
'DG' => 'Diego García',
'DJ' => 'Yibuti',
@@ -1028,6 +1057,7 @@ $countryNames = array(
'ES' => 'España',
'ET' => 'Etiopía',
'EU' => 'Unión Europea',
+ 'EZ' => 'zona euro',
'FI' => 'Finlandia',
'FJ' => 'Fiyi',
'FK' => 'Islas Malvinas',
@@ -1039,7 +1069,7 @@ $countryNames = array(
'GD' => 'Granada',
'GE' => 'Georgia',
'GF' => 'Guayana Francesa',
- 'GG' => 'Guernesey',
+ 'GG' => 'Guernsey',
'GH' => 'Ghana',
'GI' => 'Gibraltar',
'GL' => 'Groenlandia',
@@ -1059,7 +1089,7 @@ $countryNames = array(
'HR' => 'Croacia',
'HT' => 'Haití',
'HU' => 'Hungría',
- 'IC' => 'islas Canarias',
+ 'IC' => 'Canarias',
'ID' => 'Indonesia',
'IE' => 'Irlanda',
'IL' => 'Israel',
@@ -1144,7 +1174,7 @@ $countryNames = array(
'PR' => 'Puerto Rico',
'PS' => 'Palestina',
'PT' => 'Portugal',
- 'PW' => 'Palau',
+ 'PW' => 'Palaos',
'PY' => 'Paraguay',
'QA' => 'Catar',
'QO' => 'Territorios alejados de Oceanía',
@@ -1174,7 +1204,7 @@ $countryNames = array(
'SX' => 'Sint Maarten',
'SY' => 'Siria',
'SZ' => 'Suazilandia',
- 'TA' => 'Tristán da Cunha',
+ 'TA' => 'Tristán de Acuña',
'TC' => 'Islas Turcas y Caicos',
'TD' => 'Chad',
'TF' => 'Territorios Australes Franceses',
@@ -1182,7 +1212,7 @@ $countryNames = array(
'TH' => 'Tailandia',
'TJ' => 'Tayikistán',
'TK' => 'Tokelau',
- 'TL' => 'Timor Oriental',
+ 'TL' => 'Timor-Leste',
'TM' => 'Turkmenistán',
'TN' => 'Túnez',
'TO' => 'Tonga',
@@ -1194,6 +1224,7 @@ $countryNames = array(
'UA' => 'Ucrania',
'UG' => 'Uganda',
'UM' => 'Islas menores alejadas de EE. UU.',
+ 'UN' => 'Naciones Unidas',
'US' => 'EE. UU.',
'UY' => 'Uruguay',
'UZ' => 'Uzbekistán',
@@ -1212,9 +1243,11 @@ $countryNames = array(
'ZA' => 'Sudáfrica',
'ZM' => 'Zambia',
'ZW' => 'Zimbabue',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-one' => '{0} siglo',
+ 'century-other' => '{0} siglos',
'day-future-one' => 'dentro de {0} día',
'day-future-other' => 'dentro de {0} días',
'day-narrow-future-one' => 'dentro de {0} día',
@@ -1229,6 +1262,18 @@ $timeUnits = array(
'day-short-future-other' => 'dentro de {0} días',
'day-short-past-one' => 'hace {0} día',
'day-short-past-other' => 'hace {0} días',
+ 'fri-future-one' => 'dentro de {0} viernes',
+ 'fri-future-other' => 'dentro de {0} viernes',
+ 'fri-narrow-future-one' => 'dentro de {0} VI',
+ 'fri-narrow-future-other' => 'dentro de {0} VI',
+ 'fri-narrow-past-one' => 'hace {0} VI',
+ 'fri-narrow-past-other' => 'hace {0} VI',
+ 'fri-past-one' => 'hace {0} viernes',
+ 'fri-past-other' => 'hace {0} viernes',
+ 'fri-short-future-one' => 'dentro de {0} vie.',
+ 'fri-short-future-other' => 'dentro de {0} vie.',
+ 'fri-short-past-one' => 'hace {0} vie.',
+ 'fri-short-past-other' => 'hace {0} vie.',
'hour-future-one' => 'dentro de {0} hora',
'hour-future-other' => 'dentro de {0} horas',
'hour-narrow-future-one' => 'dentro de {0} h',
@@ -1261,6 +1306,18 @@ $timeUnits = array(
'minute-short-future-other' => 'dentro de {0} min',
'minute-short-past-one' => 'hace {0} min',
'minute-short-past-other' => 'hace {0} min',
+ 'mon-future-one' => 'dentro de {0} lunes',
+ 'mon-future-other' => 'dentro de {0} lunes',
+ 'mon-narrow-future-one' => 'dentro de {0} LU',
+ 'mon-narrow-future-other' => 'dentro de {0} LU',
+ 'mon-narrow-past-one' => 'hace {0} LU',
+ 'mon-narrow-past-other' => 'hace {0} LU',
+ 'mon-past-one' => 'hace {0} lunes',
+ 'mon-past-other' => 'hace {0} lunes',
+ 'mon-short-future-one' => 'dentro de {0} lun.',
+ 'mon-short-future-other' => 'dentro de {0} lun.',
+ 'mon-short-past-one' => 'hace {0} lun.',
+ 'mon-short-past-other' => 'hace {0} lun.',
'month-future-one' => 'dentro de {0} mes',
'month-future-other' => 'dentro de {0} meses',
'month-narrow-future-one' => 'dentro de {0} m',
@@ -1289,6 +1346,18 @@ $timeUnits = array(
'quarter-short-future-other' => 'dentro de {0} trim.',
'quarter-short-past-one' => 'hace {0} trim.',
'quarter-short-past-other' => 'hace {0} trim.',
+ 'sat-future-one' => 'dentro de {0} sábado',
+ 'sat-future-other' => 'dentro de {0} sábados',
+ 'sat-narrow-future-one' => 'dentro de {0} SA',
+ 'sat-narrow-future-other' => 'dentro de {0} SA',
+ 'sat-narrow-past-one' => 'hace {0} SA',
+ 'sat-narrow-past-other' => 'hace {0} SA',
+ 'sat-past-one' => 'hace {0} sábado',
+ 'sat-past-other' => 'hace {0} sábados',
+ 'sat-short-future-one' => 'dentro de {0} sáb.',
+ 'sat-short-future-other' => 'dentro de {0} sáb.',
+ 'sat-short-past-one' => 'hace {0} sáb.',
+ 'sat-short-past-other' => 'hace {0} sáb.',
'second-future-one' => 'dentro de {0} segundo',
'second-future-other' => 'dentro de {0} segundos',
'second-narrow-future-one' => 'dentro de {0} s',
@@ -1303,6 +1372,54 @@ $timeUnits = array(
'second-short-future-other' => 'dentro de {0} s',
'second-short-past-one' => 'hace {0} s',
'second-short-past-other' => 'hace {0} s',
+ 'sun-future-one' => 'dentro de {0} domingo',
+ 'sun-future-other' => 'dentro de {0} domingos',
+ 'sun-narrow-future-one' => 'dentro de {0} DO',
+ 'sun-narrow-future-other' => 'dentro de {0} DO',
+ 'sun-narrow-past-one' => 'hace {0} DO',
+ 'sun-narrow-past-other' => 'hace {0} DO',
+ 'sun-past-one' => 'hace {0} domingo',
+ 'sun-past-other' => 'hace {0} domingos',
+ 'sun-short-future-one' => 'dentro de {0} dom.',
+ 'sun-short-future-other' => 'dentro de {0} dom.',
+ 'sun-short-past-one' => 'hace {0} dom.',
+ 'sun-short-past-other' => 'hace {0} dom.',
+ 'thu-future-one' => 'dentro de {0} jueves',
+ 'thu-future-other' => 'dentro de {0} jueves',
+ 'thu-narrow-future-one' => 'dentro de {0} JU',
+ 'thu-narrow-future-other' => 'dentro de {0} JU',
+ 'thu-narrow-past-one' => 'hace {0} JU',
+ 'thu-narrow-past-other' => 'hace {0} JU',
+ 'thu-past-one' => 'hace {0} jueves',
+ 'thu-past-other' => 'hace {0} jueves',
+ 'thu-short-future-one' => 'dentro de {0} jue.',
+ 'thu-short-future-other' => 'dentro de {0} jue.',
+ 'thu-short-past-one' => 'hace {0} jue.',
+ 'thu-short-past-other' => 'hace {0} jue.',
+ 'tue-future-one' => 'dentro de {0} martes',
+ 'tue-future-other' => 'dentro de {0} martes',
+ 'tue-narrow-future-one' => 'dentro de {0} MA',
+ 'tue-narrow-future-other' => 'dentro de {0} MA',
+ 'tue-narrow-past-one' => 'hace {0} MA',
+ 'tue-narrow-past-other' => 'hace {0} MA',
+ 'tue-past-one' => 'hace {0} martes',
+ 'tue-past-other' => 'hace {0} martes',
+ 'tue-short-future-one' => 'dentro de {0} mar.',
+ 'tue-short-future-other' => 'dentro de {0} mar.',
+ 'tue-short-past-one' => 'hace {0} mar.',
+ 'tue-short-past-other' => 'hace {0} mar.',
+ 'wed-future-one' => 'dentro de {0} miércoles',
+ 'wed-future-other' => 'dentro de {0} miércoles',
+ 'wed-narrow-future-one' => 'dentro de {0} MI',
+ 'wed-narrow-future-other' => 'dentro de {0} MI',
+ 'wed-narrow-past-one' => 'hace {0} MI',
+ 'wed-narrow-past-other' => 'hace {0} MI',
+ 'wed-past-one' => 'hace {0} miércoles',
+ 'wed-past-other' => 'hace {0} miércoles',
+ 'wed-short-future-one' => 'dentro de {0} mié.',
+ 'wed-short-future-other' => 'dentro de {0} mié.',
+ 'wed-short-past-one' => 'hace {0} mié.',
+ 'wed-short-past-other' => 'hace {0} mié.',
'week-future-one' => 'dentro de {0} semana',
'week-future-other' => 'dentro de {0} semanas',
'week-narrow-future-one' => 'dentro de {0} sem.',
@@ -1331,4 +1448,4 @@ $timeUnits = array(
'year-short-future-other' => 'dentro de {0} a',
'year-short-past-one' => 'hace {0} a',
'year-short-past-other' => 'hace {0} a',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesEs_mx.php b/MLEB/cldr/CldrNames/CldrNamesEs_mx.php
deleted file mode 100644
index af4dfbe0..00000000
--- a/MLEB/cldr/CldrNames/CldrNamesEs_mx.php
+++ /dev/null
@@ -1,138 +0,0 @@
-<?php
-
-$languageNames = array(
- 'ba' => 'bashkir',
-);
-
-$currencyNames = array(
- 'AFN' => 'afgani afgano',
- 'ALL' => 'lek albanés',
- 'AMD' => 'dram armenio',
- 'AOA' => 'kwanza angoleño',
- 'BDT' => 'taka de Bangladesh',
- 'BND' => 'dólar de Brunéi',
- 'BTN' => 'ngultrum butanés',
- 'BWP' => 'pula botsuano',
- 'CNY' => 'yuan chino',
- 'ERN' => 'nakfa eritreo',
- 'ETB' => 'birr etíope',
- 'GEL' => 'lari georgiano',
- 'GHS' => 'cedi ghanés',
- 'GMD' => 'dalasi gambiano',
- 'HKD' => 'dólar de Hong Kong',
- 'HRK' => 'kuna croata',
- 'ILS' => 'nuevo shéquel israelí',
- 'JPY' => 'yen japonés',
- 'KGS' => 'som kirguís',
- 'KHR' => 'riel camboyano',
- 'KZT' => 'tenge kazajo',
- 'LAK' => 'kip laosiano',
- 'LKR' => 'rupia de Sri Lanka',
- 'LVL' => 'lats letón',
- 'MGA' => 'ariary malgache',
- 'MMK' => 'kyat de Myanmar',
- 'MNT' => 'tugrik mongol',
- 'MRO' => 'ouguiya mauritano',
- 'MVR' => 'rufiyaa de Maldivas',
- 'MWK' => 'kwacha malauí',
- 'MYR' => 'ringgit malayo',
- 'MZN' => 'metical mozambiqueño',
- 'NGN' => 'naira nigeriano',
- 'PGK' => 'kina de Papúa Nueva Guinea',
- 'PLN' => 'zloty polaco',
- 'QAR' => 'riyal de Qatar',
- 'RON' => 'leu rumano',
- 'SAR' => 'riyal saudí',
- 'SBD' => 'dólar de las Islas Salomón',
- 'SCR' => 'rupia de Seychelles',
- 'SLL' => 'leone de Sierra Leona',
- 'STD' => 'dobra de Santo Tomé y Príncipe',
- 'SZL' => 'lilangeni suazi',
- 'THB' => 'baht tailandés',
- 'TMT' => 'manat turkmeno',
- 'TOP' => 'paʻanga tongano',
- 'UAH' => 'grivna ucraniana',
- 'UZS' => 'som uzbeko',
- 'VND' => 'dong vietnamita',
- 'VUV' => 'vatu vanuatuense',
- 'WST' => 'tala samoano',
- 'ZAR' => 'rand sudafricano',
- 'ZMW' => 'kwacha zambiano',
-);
-
-$currencySymbols = array(
- 'AFN' => 'Af',
- 'AOA' => 'Kz',
- 'CNY' => 'CN¥',
-);
-
-$countryNames = array(
- 'BD' => 'Bangladesh',
- 'CC' => 'Islas Cocos (Keeling)',
- 'CX' => 'Isla de Navidad',
- 'GB' => 'RU',
- 'GG' => 'Guernsey',
- 'HK' => 'Región Administrativa Especial de Hong Kong de la República Popular China',
- 'IC' => 'Islas Canarias',
- 'MO' => 'Región Administrativa Especial de Macao de la República Popular China',
- 'PW' => 'Palaos',
- 'QO' => 'Islas Ultramarinas',
- 'TA' => 'Tristán de Acuña',
- 'UM' => 'Islas Ultramarinas Menores de Estados Unidos',
- 'VI' => 'Islas Vírgenes de los Estados Unidos',
-);
-
-$timeUnits = array(
- 'day-narrow-future-one' => '+{0} día',
- 'day-narrow-future-other' => '+{0} días',
- 'day-narrow-past-one' => '-{0} día',
- 'day-narrow-past-other' => '-{0} días',
- 'day-short-future-one' => 'en {0} día',
- 'day-short-future-other' => 'en {0} días',
- 'hour-narrow-future-one' => '+{0} h',
- 'hour-narrow-future-other' => '+{0} h',
- 'hour-narrow-past-one' => '-{0} h',
- 'hour-narrow-past-other' => '-{0} h',
- 'hour-short-future-one' => 'en {0} h',
- 'hour-short-future-other' => 'en {0} n',
- 'minute-narrow-future-one' => '+{0} min',
- 'minute-narrow-future-other' => '+{0} min',
- 'minute-narrow-past-one' => '-{0} min',
- 'minute-narrow-past-other' => '-{0} min',
- 'minute-short-future-one' => 'en {0} min',
- 'minute-short-future-other' => 'en {0} min',
- 'month-future-one' => 'en {0} mes',
- 'month-future-other' => 'en {0} meses',
- 'month-narrow-future-one' => '+{0} m',
- 'month-narrow-future-other' => '+{0} m',
- 'month-narrow-past-one' => '-{0} m',
- 'month-narrow-past-other' => '-{0} m',
- 'month-short-future-one' => 'en {0} m',
- 'month-short-future-other' => 'en {0} m',
- 'quarter-future-one' => 'en {0} trimestre',
- 'quarter-future-other' => 'en {0} trimestres',
- 'quarter-narrow-future-one' => '+{0} T',
- 'quarter-narrow-future-other' => '+{0} T',
- 'quarter-narrow-past-one' => '-{0} T',
- 'quarter-narrow-past-other' => '-{0} T',
- 'quarter-short-future-one' => 'en {0} trim.',
- 'quarter-short-future-other' => 'en {0} trim',
- 'second-narrow-future-one' => '+{0} s',
- 'second-narrow-future-other' => '+{0} s',
- 'second-narrow-past-one' => '-{0} s',
- 'second-narrow-past-other' => '-{0} s',
- 'second-short-future-one' => 'en {0} s',
- 'second-short-future-other' => 'en {0} s',
- 'week-narrow-future-one' => '+{0} sem.',
- 'week-narrow-future-other' => '+{0} sem.',
- 'week-narrow-past-one' => '-{0} sem.',
- 'week-narrow-past-other' => '-{0} sem.',
- 'week-short-future-one' => 'en {0} sem.',
- 'week-short-future-other' => 'en {0} sem.',
- 'year-narrow-future-one' => 'en {0} a',
- 'year-narrow-future-other' => 'en {0} a',
- 'year-narrow-past-one' => '-{0} a',
- 'year-narrow-past-other' => '-{0} a',
- 'year-short-future-one' => 'en {0} a',
- 'year-short-future-other' => 'en {0} a',
-);
diff --git a/MLEB/cldr/CldrNames/CldrNamesEt.php b/MLEB/cldr/CldrNames/CldrNamesEt.php
index 3efa6920..6a3fafe7 100644
--- a/MLEB/cldr/CldrNames/CldrNamesEt.php
+++ b/MLEB/cldr/CldrNames/CldrNamesEt.php
@@ -1,33 +1,41 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'afari',
'ab' => 'abhaasi',
'ace' => 'atšehi',
- 'ach' => 'akoli',
+ 'ach' => 'atšoli',
'ada' => 'adangme',
'ady' => 'adõgee',
'ae' => 'avesta',
+ 'aeb' => 'Tuneesia araabia',
'af' => 'afrikaani',
'afh' => 'afrihili',
'agq' => 'aghemi',
'ain' => 'ainu',
'ak' => 'akani',
'akk' => 'akadi',
+ 'akz' => 'alabama',
'ale' => 'aleuudi',
+ 'aln' => 'geegi',
'alt' => 'altai',
- 'am' => 'amhari',
+ 'am' => 'amhara',
'an' => 'aragoni',
'ang' => 'vanainglise',
'anp' => 'angika',
'ar' => 'araabia',
'ar-001' => 'araabia (tänapäevane)',
'arc' => 'aramea',
- 'arn' => 'araukaani',
+ 'arn' => 'mapudunguni',
+ 'aro' => 'araona',
'arp' => 'arapaho',
+ 'arq' => 'Alžeeria araabia',
'arw' => 'aravaki',
+ 'ary' => 'Maroko araabia',
+ 'arz' => 'Egiptuse araabia',
'as' => 'assami',
- 'asa' => 'asa',
+ 'asa' => 'asu',
+ 'ase' => 'Ameerika viipekeel',
'ast' => 'astuuria',
'av' => 'avaari',
'awa' => 'avadhi',
@@ -36,26 +44,35 @@ $languageNames = array(
'ba' => 'baškiiri',
'bal' => 'belutši',
'ban' => 'bali',
- 'bas' => 'basa',
+ 'bar' => 'baieri',
+ 'bas' => 'basaa',
'bax' => 'bamuni',
+ 'bbc' => 'bataki',
'bbj' => 'ghomala',
'be' => 'valgevene',
'bej' => 'bedža',
'bem' => 'bemba',
+ 'bew' => 'betavi',
'bez' => 'bena',
'bfd' => 'bafuti',
+ 'bfq' => 'badaga',
'bg' => 'bulgaaria',
+ 'bgn' => 'läänebelutši',
'bho' => 'bhodžpuri',
'bi' => 'bislama',
'bik' => 'bikoli',
'bin' => 'edo',
- 'bkm' => 'itaŋikomi',
- 'bla' => 'siksika',
+ 'bjn' => 'bandžari',
+ 'bkm' => 'komi (Aafrika)',
+ 'bla' => 'mustjalaindiaani',
'bm' => 'bambara',
'bn' => 'bengali',
'bo' => 'tiibeti',
+ 'bpy' => 'bišnuprija',
+ 'bqi' => 'bahtiari',
'br' => 'bretooni',
'bra' => 'bradži',
+ 'brh' => 'brahui',
'brx' => 'bodo',
'bs' => 'bosnia',
'bss' => 'akoose',
@@ -67,11 +84,11 @@ $languageNames = array(
'ca' => 'katalaani',
'cad' => 'kado',
'car' => 'kariibi',
- 'cay' => 'cayuga',
- 'cch' => 'atsami',
+ 'cay' => 'kajuka',
+ 'cch' => 'aitšami',
'ce' => 'tšetšeeni',
'ceb' => 'sebu',
- 'cgg' => 'chiga',
+ 'cgg' => 'tšiga',
'ch' => 'tšamorro',
'chb' => 'tšibtša',
'chg' => 'tšagatai',
@@ -82,11 +99,13 @@ $languageNames = array(
'chp' => 'tšipevai',
'chr' => 'tšerokii',
'chy' => 'šaieeni',
- 'ckb' => 'sorani kurdi',
+ 'ckb' => 'sorani',
'co' => 'korsika',
'cop' => 'kopti',
+ 'cps' => 'kapisnoni',
'cr' => 'krii',
'crh' => 'krimmitatari',
+ 'crs' => 'seišelli',
'cs' => 'tšehhi',
'csb' => 'kašuubi',
'cu' => 'kirikuslaavi',
@@ -95,9 +114,10 @@ $languageNames = array(
'da' => 'taani',
'dak' => 'siuu',
'dar' => 'dargi',
- 'dav' => 'taita',
+ 'dav' => 'davida',
'de' => 'saksa',
- 'de-ch' => 'saksa (kõrgsaksa)',
+ 'de-at' => 'Austria saksa',
+ 'de-ch' => 'Šveitsi ülemsaksa',
'del' => 'delavari',
'den' => 'sleivi',
'dgr' => 'dogribi',
@@ -105,42 +125,55 @@ $languageNames = array(
'dje' => 'zarma',
'doi' => 'dogri',
'dsb' => 'alamsorbi',
+ 'dtp' => 'keskdusuni',
'dua' => 'duala',
'dum' => 'keskhollandi',
'dv' => 'maldiivi',
- 'dyo' => 'jola-fonyi',
+ 'dyo' => 'fonji',
'dyu' => 'djula',
'dz' => 'dzongkha',
- 'dzg' => 'dazaga',
+ 'dzg' => 'daza',
'ebu' => 'embu',
'ee' => 'eve',
'efi' => 'efiki',
- 'egy' => 'muinasegiptuse',
+ 'egl' => 'emiilia',
+ 'egy' => 'egiptuse',
'eka' => 'ekadžuki',
'el' => 'kreeka',
'elx' => 'eelami',
'en' => 'inglise',
- 'en-gb' => 'inglise (Briti)',
- 'en-us' => 'inglise (USA)',
+ 'en-au' => 'Austraalia inglise',
+ 'en-ca' => 'Kanada inglise',
+ 'en-gb' => 'Briti inglise',
+ 'en-us' => 'Ameerika inglise',
'enm' => 'keskinglise',
'eo' => 'esperanto',
'es' => 'hispaania',
- 'es-es' => 'hispaania (Euroopa)',
+ 'es-419' => 'Ladina-Ameerika hispaania',
+ 'es-es' => 'Euroopa hispaania',
+ 'es-mx' => 'Mehhiko hispaania',
+ 'esu' => 'keskjupiki',
'et' => 'eesti',
'eu' => 'baski',
'ewo' => 'evondo',
+ 'ext' => 'estremenju',
'fa' => 'pärsia',
'fan' => 'fangi',
'fat' => 'fanti',
- 'ff' => 'fulbe',
+ 'ff' => 'fula',
'fi' => 'soome',
- 'fil' => 'filipino',
+ 'fil' => 'filipiini',
+ 'fit' => 'meä',
'fj' => 'fidži',
'fo' => 'fääri',
'fon' => 'foni',
'fr' => 'prantsuse',
+ 'fr-ca' => 'Kanada prantsuse',
+ 'fr-ch' => 'Šveitsi prantsuse',
+ 'frc' => 'cajun’i',
'frm' => 'keskprantsuse',
'fro' => 'vanaprantsuse',
+ 'frp' => 'frankoprovansi',
'frr' => 'põhjafriisi',
'frs' => 'idafriisi',
'fur' => 'friuuli',
@@ -148,12 +181,14 @@ $languageNames = array(
'ga' => 'iiri',
'gaa' => 'gaa',
'gag' => 'gagauusi',
+ 'gan' => 'kani',
'gay' => 'gajo',
'gba' => 'gbaja',
'gd' => 'gaeli',
'gez' => 'etioopia',
'gil' => 'kiribati',
'gl' => 'galeegi',
+ 'glk' => 'gilaki',
'gmh' => 'keskülemsaksa',
'gn' => 'guaranii',
'goh' => 'vanaülemsaksa',
@@ -164,20 +199,25 @@ $languageNames = array(
'grc' => 'vanakreeka',
'gsw' => 'šveitsisaksa',
'gu' => 'gudžarati',
+ 'guc' => 'vajuu',
+ 'gur' => 'farefare',
'guz' => 'gusii',
'gv' => 'mänksi',
'gwi' => 'gvitšini',
'ha' => 'hausa',
'hai' => 'haida',
+ 'hak' => 'hakka',
'haw' => 'havai',
'he' => 'heebrea',
'hi' => 'hindi',
+ 'hif' => 'Fidži hindi',
'hil' => 'hiligainoni',
'hit' => 'heti',
'hmn' => 'hmongi',
- 'ho' => 'motu',
+ 'ho' => 'hirimotu',
'hr' => 'horvaadi',
'hsb' => 'ülemsorbi',
+ 'hsn' => 'sjangi',
'ht' => 'haiti',
'hu' => 'ungari',
'hup' => 'hupa',
@@ -189,7 +229,7 @@ $languageNames = array(
'id' => 'indoneesia',
'ie' => 'interlingue',
'ig' => 'ibo',
- 'ii' => 'sichuani jii',
+ 'ii' => 'Sichuani jii',
'ik' => 'injupiaki',
'ilo' => 'iloko',
'inh' => 'inguši',
@@ -197,12 +237,15 @@ $languageNames = array(
'is' => 'islandi',
'it' => 'itaalia',
'iu' => 'inuktituti',
+ 'izh' => 'isuri',
'ja' => 'jaapani',
- 'jbo' => 'lojbani',
+ 'jam' => 'Jamaica kreoolkeel',
+ 'jbo' => 'ložban',
'jgo' => 'ngomba',
- 'jmc' => 'machame',
+ 'jmc' => 'matšame',
'jpr' => 'juudipärsia',
'jrb' => 'juudiaraabia',
+ 'jut' => 'jüüti',
'jv' => 'jaava',
'ka' => 'gruusia',
'kaa' => 'karakalpaki',
@@ -213,20 +256,23 @@ $languageNames = array(
'kaw' => 'kaavi',
'kbd' => 'kabardi-tšerkessi',
'kbl' => 'kanembu',
- 'kcg' => 'tyapi',
+ 'kcg' => 'tjapi',
'kde' => 'makonde',
'kea' => 'kabuverdianu',
'kfo' => 'koro',
'kg' => 'kongo',
+ 'kgp' => 'kaingangi',
'kha' => 'khasi',
- 'kho' => 'saki',
+ 'kho' => 'saka',
'khq' => 'koyra chiini',
+ 'khw' => 'khovari',
'ki' => 'kikuju',
- 'kj' => 'ambo',
+ 'kiu' => 'kõrmandžki',
+ 'kj' => 'kvanjama',
'kk' => 'kasahhi',
'kkj' => 'kako',
'kl' => 'grööni',
- 'kln' => 'kaljenjin',
+ 'kln' => 'kalendžini',
'km' => 'khmeeri',
'kmb' => 'mbundu',
'kn' => 'kannada',
@@ -237,12 +283,14 @@ $languageNames = array(
'kpe' => 'kpelle',
'kr' => 'kanuri',
'krc' => 'karatšai-balkaari',
+ 'kri' => 'krio',
+ 'krj' => 'kinaraia',
'krl' => 'karjala',
- 'kru' => 'oraoni',
+ 'kru' => 'kuruhhi',
'ks' => 'kašmiiri',
- 'ksb' => 'shambala',
+ 'ksb' => 'šambala',
'ksf' => 'bafia',
- 'ksh' => 'cologniani',
+ 'ksh' => 'kölni',
'ku' => 'kurdi',
'kum' => 'kumõki',
'kut' => 'kutenai',
@@ -258,23 +306,31 @@ $languageNames = array(
'lez' => 'lesgi',
'lg' => 'ganda',
'li' => 'limburgi',
+ 'lij' => 'liguuri',
+ 'liv' => 'liivi',
'lkt' => 'lakota',
+ 'lmo' => 'lombardi',
'ln' => 'lingala',
'lo' => 'lao',
'lol' => 'mongo',
+ 'lou' => 'Louisiana kreoolkeel',
'loz' => 'lozi',
+ 'lrc' => 'põhjaluri',
'lt' => 'leedu',
+ 'ltg' => 'latgali',
'lu' => 'luba',
- 'lua' => 'luba-lulua',
+ 'lua' => 'lulua',
'lui' => 'luisenjo',
'lun' => 'lunda',
'luo' => 'luo',
'lus' => 'lušei',
- 'luy' => 'luyia',
+ 'luy' => 'luhja',
'lv' => 'läti',
+ 'lzh' => 'klassikaline hiina',
+ 'lzz' => 'lazi',
'mad' => 'madura',
'maf' => 'mafa',
- 'mag' => 'magali',
+ 'mag' => 'magahi',
'mai' => 'maithili',
'mak' => 'makassari',
'man' => 'malinke',
@@ -288,7 +344,7 @@ $languageNames = array(
'mg' => 'malagassi',
'mga' => 'keskiiri',
'mgh' => 'makhuwa-meetto',
- 'mgo' => 'meta’',
+ 'mgo' => 'meta',
'mh' => 'maršalli',
'mi' => 'maoori',
'mic' => 'mikmaki',
@@ -301,6 +357,7 @@ $languageNames = array(
'moh' => 'mohoogi',
'mos' => 'more',
'mr' => 'marathi',
+ 'mrj' => 'mäemari',
'ms' => 'malai',
'mt' => 'malta',
'mua' => 'mundangi',
@@ -308,31 +365,37 @@ $languageNames = array(
'mus' => 'maskogi',
'mwl' => 'miranda',
'mwr' => 'marvari',
+ 'mwv' => 'mentavei',
'my' => 'birma',
- 'mye' => 'myene',
+ 'mye' => 'mjene',
'myv' => 'ersa',
+ 'mzn' => 'mazandaraani',
'na' => 'nauru',
+ 'nan' => 'lõunamini',
'nap' => 'napoli',
'naq' => 'nama',
'nb' => 'norra bokmål',
'nd' => 'põhjandebele',
'nds' => 'alamsaksa',
+ 'nds-nl' => 'Hollandi alamsaksa',
'ne' => 'nepali',
'new' => 'nevari',
'ng' => 'ndonga',
'nia' => 'niasi',
'niu' => 'niue',
+ 'njo' => 'ao',
'nl' => 'hollandi',
'nl-be' => 'flaami',
'nmg' => 'kwasio',
- 'nn' => 'norra nynorsk',
+ 'nn' => 'uusnorra',
'nnh' => 'ngiembooni',
'no' => 'norra',
'nog' => 'nogai',
'non' => 'vanapõhjala',
+ 'nov' => 'noviaal',
'nqo' => 'nkoo',
'nr' => 'lõunandebele',
- 'nso' => 'pedi',
+ 'nso' => 'põhjasotho',
'nus' => 'nueri',
'nv' => 'navaho',
'nwc' => 'vananevari',
@@ -341,7 +404,7 @@ $languageNames = array(
'nyn' => 'nkole',
'nyo' => 'njoro',
'nzi' => 'nzima',
- 'oc' => 'provansi',
+ 'oc' => 'oksitaani',
'oj' => 'odžibvei',
'om' => 'oromo',
'or' => 'oria',
@@ -354,62 +417,82 @@ $languageNames = array(
'pam' => 'pampanga',
'pap' => 'papiamento',
'pau' => 'belau',
+ 'pcd' => 'pikardi',
+ 'pcm' => 'Nigeeria pidžinkeel',
+ 'pdc' => 'Pennsylvania saksa',
+ 'pdt' => 'mennoniidisaksa',
'peo' => 'vanapärsia',
+ 'pfl' => 'Pfalzi',
'phn' => 'foiniikia',
'pi' => 'paali',
'pl' => 'poola',
+ 'pms' => 'piemonte',
+ 'pnt' => 'pontose',
'pon' => 'poonpei',
+ 'prg' => 'preisi',
'pro' => 'vanaprovansi',
'ps' => 'puštu',
'pt' => 'portugali',
- 'pt-pt' => 'portugali (Euroopa)',
+ 'pt-br' => 'Brasiilia portugali',
+ 'pt-pt' => 'Euroopa portugali',
'qu' => 'ketšua',
- 'quc' => 'k’iche’',
+ 'quc' => 'kitše',
'raj' => 'radžastani',
'rap' => 'rapanui',
'rar' => 'rarotonga',
- 'rm' => 'retoromaani',
+ 'rgn' => 'romanja',
+ 'rif' => 'riifi',
+ 'rm' => 'romanši',
'rn' => 'rundi',
'ro' => 'rumeenia',
'ro-md' => 'moldova',
'rof' => 'rombo',
'rom' => 'mustlaskeel',
+ 'rtm' => 'rotuma',
'ru' => 'vene',
+ 'rue' => 'russiini',
+ 'rug' => 'roviana',
'rup' => 'aromuuni',
'rw' => 'ruanda',
- 'rwk' => 'rwa',
+ 'rwk' => 'rvaa',
'sa' => 'sanskriti',
'sad' => 'sandave',
'sah' => 'jakuudi',
- 'sam' => 'samaaria aramea',
+ 'sam' => 'Samaaria aramea',
'saq' => 'samburu',
'sas' => 'sasaki',
'sat' => 'santali',
- 'sba' => 'ngembay',
+ 'saz' => 'sauraštra',
+ 'sba' => 'ngambai',
'sbp' => 'sangu',
- 'sc' => 'sardiinia',
+ 'sc' => 'sardi',
'scn' => 'sitsiilia',
'sco' => 'šoti',
'sd' => 'sindhi',
+ 'sdh' => 'lõunakurdi',
'se' => 'põhjasaami',
- 'see' => 'seneca',
+ 'see' => 'seneka',
'seh' => 'sena',
+ 'sei' => 'seri',
'sel' => 'sölkupi',
'ses' => 'koyraboro senni',
'sg' => 'sango',
'sga' => 'vanaiiri',
+ 'sgs' => 'žemaidi',
'sh' => 'serbia-horvaadi',
- 'shi' => 'tachelhiti',
+ 'shi' => 'šilha',
'shn' => 'šani',
'shu' => 'Tšaadi araabia',
'si' => 'singali',
'sid' => 'sidamo',
'sk' => 'slovaki',
'sl' => 'sloveeni',
+ 'sli' => 'alamsileesia',
+ 'sly' => 'selajari',
'sm' => 'samoa',
'sma' => 'lõunasaami',
- 'smj' => 'lule saami',
- 'smn' => 'inari saami',
+ 'smj' => 'Lule saami',
+ 'smn' => 'Inari saami',
'sms' => 'koltasaami',
'sn' => 'šona',
'snk' => 'soninke',
@@ -422,17 +505,20 @@ $languageNames = array(
'ss' => 'svaasi',
'ssy' => 'saho',
'st' => 'lõunasotho',
+ 'stq' => 'saterfriisi',
'su' => 'sunda',
'suk' => 'sukuma',
'sus' => 'susu',
'sux' => 'sumeri',
'sv' => 'rootsi',
'sw' => 'suahiili',
+ 'sw-cd' => 'Kongo suahiili',
'swb' => 'komoori',
- 'swc' => 'Kongo suahiili',
- 'syc' => 'klassikaline süüria',
+ 'syc' => 'vanasüüria',
'syr' => 'süüria',
+ 'szl' => 'sileesia',
'ta' => 'tamili',
+ 'tcy' => 'tulu',
'te' => 'telugu',
'tem' => 'temne',
'teo' => 'teso',
@@ -445,92 +531,110 @@ $languageNames = array(
'tiv' => 'tivi',
'tk' => 'türkmeeni',
'tkl' => 'tokelau',
+ 'tkr' => 'tsahhi',
'tl' => 'tagalogi',
'tlh' => 'klingoni',
'tli' => 'tlingiti',
+ 'tly' => 'talõši',
'tmh' => 'tamašeki',
'tn' => 'tsvana',
'to' => 'tonga',
'tog' => 'tšitonga',
'tpi' => 'uusmelaneesia',
'tr' => 'türgi',
+ 'tru' => 'turojo',
'trv' => 'taroko',
'ts' => 'tsonga',
+ 'tsd' => 'tsakoonia',
'tsi' => 'tšimši',
'tt' => 'tatari',
+ 'ttt' => 'lõunataadi',
'tum' => 'tumbuka',
'tvl' => 'tuvalu',
'tw' => 'tvii',
'twq' => 'taswaqi',
'ty' => 'tahiti',
'tyv' => 'tõva',
- 'tzm' => 'Kesk-Maroko tamazighti',
+ 'tzm' => 'tamasikti',
'udm' => 'udmurdi',
'ug' => 'uiguuri',
'uga' => 'ugariti',
'uk' => 'ukraina',
'umb' => 'umbundu',
- 'und' => 'määramata',
+ 'und' => 'määramata keel',
'ur' => 'urdu',
'uz' => 'usbeki',
'vai' => 'vai',
've' => 'venda',
+ 'vec' => 'veneti',
+ 'vep' => 'vepsa',
'vi' => 'vietnami',
+ 'vls' => 'lääneflaami',
+ 'vmf' => 'Maini frangi',
'vo' => 'volapüki',
'vot' => 'vadja',
- 'vun' => 'vunjo',
+ 'vro' => 'võru',
+ 'vun' => 'vundžo',
'wa' => 'vallooni',
'wae' => 'walseri',
- 'wal' => 'volamo',
+ 'wal' => 'volaita',
'war' => 'varai',
'was' => 'vašo',
+ 'wbp' => 'varlpiri',
'wo' => 'volofi',
+ 'wuu' => 'uu',
'xal' => 'kalmõki',
'xh' => 'koosa',
+ 'xmf' => 'megreli',
'xog' => 'soga',
'yao' => 'jao',
'yap' => 'japi',
'yav' => 'yangbeni',
- 'ybb' => 'yemba',
+ 'ybb' => 'jemba',
'yi' => 'jidiši',
'yo' => 'joruba',
+ 'yrl' => 'njengatu',
'yue' => 'kantoni',
'za' => 'tšuangi',
'zap' => 'sapoteegi',
- 'zbl' => 'blissümbolid',
+ 'zbl' => 'Blissi sümbolid',
+ 'zea' => 'zeelandi',
'zen' => 'zenaga',
'zgh' => 'tamasikti (Maroko)',
'zh' => 'hiina',
- 'zh-hans' => 'hiina (lihtsustatud)',
- 'zh-hant' => 'hiina (traditsiooniline)',
+ 'zh-hans' => 'lihtsustatud hiina',
+ 'zh-hant' => 'traditsiooniline hiina',
'zu' => 'suulu',
'zun' => 'sunji',
'zxx' => 'mittekeeleline',
'zza' => 'zaza',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'ADP' => 'Andorra peseeta',
'AED' => 'Araabia Ühendemiraatide dirhem',
- 'AFA' => 'Afganistani afgaani, 1927-2002',
+ 'AFA' => 'Afganistani afgaani (1927–2002)',
'AFN' => 'Afganistani afgaani',
+ 'ALK' => 'Albaania lekk (1946–1965)',
'ALL' => 'Albaania lekk',
'AMD' => 'Armeenia dramm',
'ANG' => 'Hollandi Antillide kulden',
'AOA' => 'Angola kvanza',
- 'AOK' => 'Angola kvanza, 1977-1990',
- 'AON' => 'Angola kvanza, 1990-2000',
- 'AOR' => 'Angola reformitud kvanza, 1995-1999',
+ 'AOK' => 'Angola kvanza (1977–1990)',
+ 'AON' => 'Angola kvanza (1990–2000)',
+ 'AOR' => 'Angola reformitud kvanza, 1995–1999',
'ARA' => 'Argentina austral',
- 'ARP' => 'Argentina peeso, 1983-1985',
+ 'ARM' => 'Argentina peeso (1881–1970)',
+ 'ARP' => 'Argentina peeso (1983–1985)',
'ARS' => 'Argentina peeso',
'ATS' => 'Austria šilling',
'AUD' => 'Austraalia dollar',
- 'AWG' => 'Aruba guilder',
- 'AZM' => 'Aserbaidžaani manat, 1993-2006',
+ 'AWG' => 'Aruba kulden',
+ 'AZM' => 'Aserbaidžaani manat (1993–2006)',
'AZN' => 'Aserbaidžaani manat',
- 'BAD' => 'Bosnia-Hertsegoviina dinaar',
- 'BAM' => 'Bosnia-Hertsegoviina mark',
+ 'BAD' => 'Bosnia ja Hertsegoviina dinaar (1992–1994)',
+ 'BAM' => 'Bosnia ja Hertsegoviina konverteeritav mark',
+ 'BAN' => 'Bosnia ja Hertsegoviina uus dinaar (1994–1997)',
'BBD' => 'Barbadose dollar',
'BDT' => 'Bangladeshi taka',
'BEC' => 'Belgia konverteeritav frank',
@@ -538,34 +642,44 @@ $currencyNames = array(
'BEL' => 'Belgia arveldusfrank',
'BGL' => 'Bulgaaria püsiv leev',
'BGN' => 'Bulgaaria leev',
+ 'BGO' => 'Bulgaaria leev (1879–1952)',
'BHD' => 'Bahreini dinaar',
'BIF' => 'Burundi frank',
'BMD' => 'Bermuda dollar',
'BND' => 'Brunei dollar',
- 'BOB' => 'Bolivia boliviaano',
+ 'BOB' => 'Boliivia boliviaano',
+ 'BOL' => 'Boliivia boliviaano (1863–1963)',
'BOP' => 'Boliivia peeso',
+ 'BRB' => 'Brasiilia uus kruseiro (1967–1986)',
'BRC' => 'Brasiilia krusado',
+ 'BRE' => 'Brasiilia kruseiro (1990–1993)',
'BRL' => 'Brasiilia reaal',
+ 'BRR' => 'Brasiilia kruseiro (1993–1994)',
+ 'BRZ' => 'Brasiilia kruseiro (1942–1967)',
'BSD' => 'Bahama dollar',
'BTN' => 'Bhutani ngultrum',
'BUK' => 'Birma kjatt',
'BWP' => 'Botswana pula',
- 'BYB' => 'Valgevene uus rubla, 1994-1999',
- 'BYR' => 'Valgevene rubla',
- 'BZD' => 'Belize dollar',
+ 'BYB' => 'Valgevene uus rubla (1994–1999)',
+ 'BYN' => 'Valgevene rubla',
+ 'BYR' => 'Valgevene rubla (2000–2016)',
+ 'BZD' => 'Belize’i dollar',
'CAD' => 'Kanada dollar',
'CDF' => 'Kongo frank',
'CHF' => 'Šveitsi frank',
+ 'CLE' => 'Tšiili eskuudo',
'CLP' => 'Tšiili peeso',
+ 'CNH' => 'Hiina jüaan (välismaine turg)',
'CNY' => 'Hiina jüaan',
- 'COP' => 'Kolumbia peeso',
- 'CRC' => 'Costa Rica colón',
- 'CSD' => 'Serbia vana dinaar',
+ 'COP' => 'Colombia peeso',
+ 'CRC' => 'Costa Rica koloon',
+ 'CSD' => 'Serbia dinaar (2002–2006)',
'CUC' => 'Kuuba konverteeritav peeso',
'CUP' => 'Kuuba peeso',
- 'CVE' => 'Roheneemesaarte eskuudo',
+ 'CVE' => 'Cabo Verde eskuudo',
'CYP' => 'Küprose nael',
'CZK' => 'Tšehhi kroon',
+ 'DDM' => 'Ida-Saksa mark',
'DEM' => 'Saksa mark',
'DJF' => 'Djibouti frank',
'DKK' => 'Taani kroon',
@@ -584,41 +698,46 @@ $currencyNames = array(
'FRF' => 'Prantsuse frank',
'GBP' => 'Suurbritannia naelsterling',
'GEL' => 'Gruusia lari',
- 'GHC' => 'Ghana sedi',
- 'GHS' => 'Ghana cedi',
+ 'GHC' => 'Ghana sedi (1979–2007)',
+ 'GHS' => 'Ghana sedi',
'GIP' => 'Gibraltari nael',
'GMD' => 'Gambia dalasi',
'GNF' => 'Guinea frank',
'GNS' => 'Guinea syli',
'GRD' => 'Kreeka drahm',
- 'GTQ' => 'Guatemala ketsal',
+ 'GTQ' => 'Guatemala ketsaal',
+ 'GWE' => 'Portugali Guinea eskuudo',
'GWP' => 'Guinea-Bissau peeso',
'GYD' => 'Guyana dollar',
'HKD' => 'Hongkongi dollar',
'HNL' => 'Hondurase lempiira',
+ 'HRD' => 'Horvaatia dinaar',
'HRK' => 'Horvaatia kuna',
'HTG' => 'Haiti gurd',
'HUF' => 'Ungari forint',
'IDR' => 'Indoneesia ruupia',
'IEP' => 'Iiri nael',
'ILP' => 'Iisraeli nael',
+ 'ILR' => 'Iisraeli seekel (1980–1985)',
'ILS' => 'Iisraeli uus seekel',
'INR' => 'India ruupia',
'IQD' => 'Iraagi dinaar',
'IRR' => 'Iraani riaal',
+ 'ISJ' => 'Islandi kroon (1918–1981)',
'ISK' => 'Islandi kroon',
'ITL' => 'Itaalia liir',
'JMD' => 'Jamaica dollar',
'JOD' => 'Jordaania dinaar',
'JPY' => 'Jaapani jeen',
- 'KES' => 'Kenya šilling',
+ 'KES' => 'Keenia šilling',
'KGS' => 'Kõrgõzstani somm',
'KHR' => 'Kambodža riaal',
- 'KMF' => 'Komooride frank',
+ 'KMF' => 'Komoori frank',
'KPW' => 'Põhja-Korea vonn',
+ 'KRO' => 'Lõuna-Korea vonn (1945–1953)',
'KRW' => 'Lõuna-Korea vonn',
'KWD' => 'Kuveidi dinaar',
- 'KYD' => 'Caymani saarte dollar',
+ 'KYD' => 'Kaimanisaarte dollar',
'KZT' => 'Kasahstani tenge',
'LAK' => 'Laose kiip',
'LBP' => 'Liibanoni nael',
@@ -626,29 +745,41 @@ $currencyNames = array(
'LRD' => 'Libeeria dollar',
'LSL' => 'Lesotho loti',
'LTL' => 'Leedu litt',
+ 'LUC' => 'Luksemburgi konverteeritav frank',
'LUF' => 'Luksemburgi frank',
'LVL' => 'Läti latt',
+ 'LVR' => 'Läti rubla',
'LYD' => 'Liibüa dinaar',
'MAD' => 'Maroko dirhem',
+ 'MAF' => 'Maroko frank',
+ 'MCF' => 'Monaco frank',
'MDL' => 'Moldova leu',
- 'MGA' => 'Madagaskari ariary',
- 'MKD' => 'Makedoonia denaar',
+ 'MGA' => 'Madagaskari ariari',
+ 'MGF' => 'Madagaskar frank',
+ 'MKD' => 'Makedoonia dinaar',
+ 'MKN' => 'Makedoonia dinaar (1992–1993)',
+ 'MLF' => 'Mali frank',
'MMK' => 'Myanmari kjatt',
'MNT' => 'Mongoolia tugrik',
- 'MOP' => 'Macao pataka',
- 'MRO' => 'Mauritaania ugia',
+ 'MOP' => 'Macau pataaka',
+ 'MRO' => 'Mauritaania ugia (1973–2017)',
+ 'MRU' => 'Mauritaania ugia',
'MTL' => 'Malta liir',
+ 'MTP' => 'Malta nael',
'MUR' => 'Mauritiuse ruupia',
- 'MVR' => 'Maldiivide ruupia',
+ 'MVP' => 'Maldiivi ruupia (1947–1981)',
+ 'MVR' => 'Maldiivi ruupia',
'MWK' => 'Malawi kvatša',
'MXN' => 'Mehhiko peeso',
- 'MXP' => 'Mehhiko peeso, 1861-1990',
+ 'MXP' => 'Mehhiko peeso (1861–1992)',
'MYR' => 'Malaisia ringgit',
+ 'MZE' => 'Mosambiigi eskuudo',
+ 'MZM' => 'Mosambiigi metikal (1980–2006)',
'MZN' => 'Mosambiigi metikal',
'NAD' => 'Namiibia dollar',
'NGN' => 'Nigeeria naira',
- 'NIC' => 'Nicaragua kordoba',
- 'NIO' => 'Nicaragua kuldkordoba',
+ 'NIC' => 'Nicaragua kordoba (1988–1991)',
+ 'NIO' => 'Nicaragua kordoba',
'NLG' => 'Hollandi kulden',
'NOK' => 'Norra kroon',
'NPR' => 'Nepali ruupia',
@@ -656,68 +787,76 @@ $currencyNames = array(
'OMR' => 'Omaani riaal',
'PAB' => 'Panama balboa',
'PEI' => 'Peruu inti',
- 'PEN' => 'Peruu uus soll',
- 'PES' => 'Peruu soll',
+ 'PEN' => 'Peruu soll',
+ 'PES' => 'Peruu soll (1863–1965)',
'PGK' => 'Paapua Uus-Guinea kina',
- 'PHP' => 'Filipiinide peeso',
+ 'PHP' => 'Filipiini peeso',
'PKR' => 'Pakistani ruupia',
'PLN' => 'Poola zlott',
- 'PLZ' => 'Poola zlott, 1950-1995',
+ 'PLZ' => 'Poola zlott (1950–1995)',
'PTE' => 'Portugali eskuudo',
- 'PYG' => 'Paraguai guaranii',
- 'QAR' => 'Quatari riaal',
- 'ROL' => 'Rumeenia lei, -2005',
- 'RON' => 'Rumeenia lei',
+ 'PYG' => 'Paraguay guaranii',
+ 'QAR' => 'Katari riaal',
+ 'RHD' => 'Rodeesia dollar',
+ 'ROL' => 'Rumeenia leu (1952–2006)',
+ 'RON' => 'Rumeenia leu',
'RSD' => 'Serbia dinaar',
'RUB' => 'Venemaa rubla',
- 'RUR' => 'Venemaa rubla, 1991-1998',
+ 'RUR' => 'Venemaa rubla (1991–1998)',
'RWF' => 'Rwanda frank',
- 'SAR' => 'Saudi-Araabia riaal',
- 'SBD' => 'Saalomoni saarte dollar',
- 'SCR' => 'Seišelli saarte ruupia',
+ 'SAR' => 'Saudi Araabia riaal',
+ 'SBD' => 'Saalomoni Saarte dollar',
+ 'SCR' => 'Seišelli ruupia',
+ 'SDD' => 'Sudaani dinaar (1992–2007)',
'SDG' => 'Sudaani nael',
- 'SDP' => 'Sudaani nael, 1957-1998',
+ 'SDP' => 'Sudaani nael (1957–1998)',
'SEK' => 'Rootsi kroon',
'SGD' => 'Singapuri dollar',
'SHP' => 'Saint Helena nael',
'SIT' => 'Sloveenia tolar',
- 'SKK' => 'Slovakkia kroon',
+ 'SKK' => 'Slovaki kroon',
'SLL' => 'Sierra Leone leoone',
'SOS' => 'Somaalia šilling',
- 'SRD' => 'Surinami dollar',
- 'SRG' => 'Surinami kulden',
+ 'SRD' => 'Suriname dollar',
+ 'SRG' => 'Suriname kulden',
'SSP' => 'Lõuna-Sudaani nael',
- 'STD' => 'São Tomé ja Príncipe dobra',
- 'SUR' => 'NSVL rubla',
- 'SVC' => 'Salvadori koloon',
+ 'STD' => 'São Tomé ja Príncipe dobra (1977–2017)',
+ 'STN' => 'São Tomé ja Príncipe dobra',
+ 'SUR' => 'NSVL-i rubla',
+ 'SVC' => 'El Salvadori koloon',
'SYP' => 'Süüria nael',
'SZL' => 'Svaasimaa lilangeni',
'THB' => 'Tai baat',
+ 'TJR' => 'Tadžikistani rubla',
'TJS' => 'Tadžikistani somoni',
- 'TMM' => 'Türkmenistani manat, 1993-2009',
+ 'TMM' => 'Türkmenistani manat (1993–2009)',
'TMT' => 'Türkmenistani manat',
'TND' => 'Tuneesia dinaar',
'TOP' => 'Tonga pa’anga',
'TPE' => 'Timori eskuudo',
- 'TRL' => 'Türgi liir',
- 'TRY' => 'Türgi uus liir',
+ 'TRL' => 'Türgi liir (1922–2005)',
+ 'TRY' => 'Türgi liir',
'TTD' => 'Trinidadi ja Tobago dollar',
- 'TWD' => 'Taiwani dollar',
+ 'TWD' => 'uus Taiwani dollar',
'TZS' => 'Tansaania šilling',
'UAH' => 'Ukraina grivna',
'UAK' => 'Ukraina karbovanets',
+ 'UGS' => 'Uganda šilling (1966–1987)',
'UGX' => 'Uganda šilling',
'USD' => 'USA dollar',
'USN' => 'USA järgmise päeva dollar',
'USS' => 'USA sama päeva dollar',
- 'UYU' => 'Uruguai peeso',
+ 'UYP' => 'Uruguay peeso (1975–1993)',
+ 'UYU' => 'Uruguay peeso',
'UZS' => 'Usbekistani somm',
- 'VEB' => 'Venezuela bolívar (1871–2008)',
- 'VEF' => 'Venezuela bolívar',
+ 'VEB' => 'Venezuela boliivar (1871–2008)',
+ 'VEF' => 'Venezuela boliivar (2008–2018)',
+ 'VES' => 'Venezuela boliivar',
'VND' => 'Vietnami dong',
+ 'VNN' => 'Vietnami dong (1978–1985)',
'VUV' => 'Vanuatu vatu',
- 'WST' => 'Lääne-Samoa tala',
- 'XAF' => 'CFA frank BEAC',
+ 'WST' => 'Samoa taala',
+ 'XAF' => 'Kesk-Aafrika CFA frank',
'XAG' => 'hõbe',
'XAU' => 'kuld',
'XBA' => 'EURCO',
@@ -729,24 +868,26 @@ $currencyNames = array(
'XEU' => 'eküü',
'XFO' => 'Prantsuse kuldfrank',
'XFU' => 'Prantsuse UIC-frank',
- 'XOF' => 'Aafrika ühisfrank BCEAO',
+ 'XOF' => 'Lääne-Aafrika CFA frank',
'XPD' => 'pallaadium',
- 'XPF' => 'Prantsuse Vaikse-Ookeani frank',
+ 'XPF' => 'CFP frank',
'XPT' => 'plaatina',
'XTS' => 'vääringute testkood',
'XXX' => 'määramata rahaühik',
'YDD' => 'Jeemeni dinaar',
'YER' => 'Jeemeni riaal',
- 'YUM' => 'Jugoslaavia uus dinaar',
- 'YUN' => 'Jugoslaavia konverteeritav dinaar',
+ 'YUM' => 'Jugoslaavia uus dinaar (1994–2002)',
+ 'YUN' => 'Jugoslaavia konverteeritav dinaar (1990–1992)',
'ZAR' => 'Lõuna-Aafrika rand',
'ZMK' => 'Sambia kvatša (1968–2012)',
'ZMW' => 'Sambia kvatša',
'ZRZ' => 'Sairi zaire',
- 'ZWD' => 'Zimbabwe dollar',
-);
+ 'ZWD' => 'Zimbabwe dollar (1980–2008)',
+ 'ZWL' => 'Zimbabwe dollar (2009)',
+ 'ZWR' => 'Zimbabwe dollar (2008)',
+];
-$currencySymbols = array(
+$currencySymbols = [
'AED' => 'AED',
'AFN' => 'AFN',
'ALL' => 'ALL',
@@ -770,12 +911,14 @@ $currencySymbols = array(
'BSD' => 'BSD',
'BTN' => 'BTN',
'BWP' => 'BWP',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CA$',
'CDF' => 'CDF',
'CHF' => 'CHF',
'CLP' => 'CLP',
+ 'CNH' => 'CNH',
'CNY' => 'CN¥',
'COP' => 'COP',
'CRC' => 'CRC',
@@ -840,6 +983,7 @@ $currencySymbols = array(
'MNT' => 'MNT',
'MOP' => 'MOP',
'MRO' => 'MRO',
+ 'MRU' => 'MRU',
'MUR' => 'MUR',
'MVR' => 'MVR',
'MWK' => 'MWK',
@@ -877,6 +1021,7 @@ $currencySymbols = array(
'SRD' => 'SRD',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'STN',
'SYP' => 'SYP',
'SZL' => 'SZL',
'THB' => '฿',
@@ -894,6 +1039,7 @@ $currencySymbols = array(
'UYU' => 'UYU',
'UZS' => 'UZS',
'VEF' => 'VEF',
+ 'VES' => 'VES',
'VND' => '₫',
'VUV' => 'VUV',
'WST' => 'WST',
@@ -903,10 +1049,11 @@ $currencySymbols = array(
'XPF' => 'CFPF',
'YER' => 'YER',
'ZAR' => 'ZAR',
+ 'ZMK' => 'ZMK',
'ZMW' => 'ZMW',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'Ascensioni saar',
'AD' => 'Andorra',
'AE' => 'Araabia Ühendemiraadid',
@@ -915,9 +1062,8 @@ $countryNames = array(
'AI' => 'Anguilla',
'AL' => 'Albaania',
'AM' => 'Armeenia',
- 'AN' => 'Hollandi Antillid',
'AO' => 'Angola',
- 'AQ' => 'Antarktis',
+ 'AQ' => 'Antarktika',
'AR' => 'Argentina',
'AS' => 'Ameerika Samoa',
'AT' => 'Austria',
@@ -934,7 +1080,7 @@ $countryNames = array(
'BH' => 'Bahrein',
'BI' => 'Burundi',
'BJ' => 'Benin',
- 'BL' => 'Saint Barthélemy',
+ 'BL' => 'Saint-Barthélemy',
'BM' => 'Bermuda',
'BN' => 'Brunei',
'BO' => 'Boliivia',
@@ -950,7 +1096,7 @@ $countryNames = array(
'CC' => 'Kookossaared',
'CD' => 'Kongo DV',
'CF' => 'Kesk-Aafrika Vabariik',
- 'CG' => 'Kongo-Brazzaville',
+ 'CG' => 'Kongo Vabariik',
'CH' => 'Šveits',
'CI' => 'Côte d’Ivoire',
'CK' => 'Cooki saared',
@@ -982,14 +1128,15 @@ $countryNames = array(
'ES' => 'Hispaania',
'ET' => 'Etioopia',
'EU' => 'Euroopa Liit',
+ 'EZ' => 'euroala',
'FI' => 'Soome',
'FJ' => 'Fidži',
'FK' => 'Falklandi saared',
- 'FM' => 'Mikroneesia Liiduriigid',
+ 'FM' => 'Mikroneesia',
'FO' => 'Fääri saared',
'FR' => 'Prantsusmaa',
'GA' => 'Gabon',
- 'GB' => 'Suurbritannia',
+ 'GB' => 'ÜK',
'GD' => 'Grenada',
'GE' => 'Gruusia',
'GF' => 'Prantsuse Guajaana',
@@ -1028,7 +1175,7 @@ $countryNames = array(
'JM' => 'Jamaica',
'JO' => 'Jordaania',
'JP' => 'Jaapan',
- 'KE' => 'Kenya',
+ 'KE' => 'Keenia',
'KG' => 'Kõrgõzstan',
'KH' => 'Kambodža',
'KI' => 'Kiribati',
@@ -1054,9 +1201,9 @@ $countryNames = array(
'MC' => 'Monaco',
'MD' => 'Moldova',
'ME' => 'Montenegro',
- 'MF' => 'Saint Martin',
+ 'MF' => 'Saint-Martin',
'MG' => 'Madagaskar',
- 'MH' => 'Marshalli saared',
+ 'MH' => 'Marshalli Saared',
'MK' => 'Makedoonia',
'ML' => 'Mali',
'MM' => 'Myanmar (Birma)',
@@ -1093,7 +1240,7 @@ $countryNames = array(
'PH' => 'Filipiinid',
'PK' => 'Pakistan',
'PL' => 'Poola',
- 'PM' => 'Saint Pierre ja Miquelon',
+ 'PM' => 'Saint-Pierre ja Miquelon',
'PN' => 'Pitcairni saared',
'PR' => 'Puerto Rico',
'PS' => 'Palestiina',
@@ -1148,6 +1295,7 @@ $countryNames = array(
'UA' => 'Ukraina',
'UG' => 'Uganda',
'UM' => 'Ühendriikide hajasaared',
+ 'UN' => 'ÜRO',
'US' => 'USA',
'UY' => 'Uruguay',
'UZ' => 'Usbekistan',
@@ -1166,37 +1314,51 @@ $countryNames = array(
'ZA' => 'Lõuna-Aafrika Vabariik',
'ZM' => 'Sambia',
'ZW' => 'Zimbabwe',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-one' => '{0} sajand',
+ 'century-other' => '{0} sajandit',
'day-future-one' => '{0} päeva pärast',
'day-future-other' => '{0} päeva pärast',
'day-narrow-future-one' => '{0} p pärast',
'day-narrow-future-other' => '{0} p pärast',
- 'day-narrow-past-one' => '{0} p tagasi',
- 'day-narrow-past-other' => '{0} p tagasi',
+ 'day-narrow-past-one' => '{0} p eest',
+ 'day-narrow-past-other' => '{0} p eest',
'day-one' => '{0} ööpäev',
'day-other' => '{0} ööpäeva',
'day-past-one' => '{0} päeva eest',
'day-past-other' => '{0} päeva eest',
'day-short-future-one' => '{0} p pärast',
'day-short-future-other' => '{0} p pärast',
- 'day-short-past-one' => '{0} p tagasi',
- 'day-short-past-other' => '{0} p tagasi',
+ 'day-short-past-one' => '{0} p eest',
+ 'day-short-past-other' => '{0} p eest',
+ 'fri-future-one' => '{0} reede pärast',
+ 'fri-future-other' => '{0} reede pärast',
+ 'fri-narrow-future-one' => '{0} R pärast',
+ 'fri-narrow-future-other' => '{0} R pärast',
+ 'fri-narrow-past-one' => '{0} R eest',
+ 'fri-narrow-past-other' => '{0} R eest',
+ 'fri-past-one' => '{0} reede eest',
+ 'fri-past-other' => '{0} reede eest',
+ 'fri-short-future-one' => '{0} reede pärast',
+ 'fri-short-future-other' => '{0} reede pärast',
+ 'fri-short-past-one' => '{0} reede eest',
+ 'fri-short-past-other' => '{0} reede eest',
'hour-future-one' => '{0} tunni pärast',
'hour-future-other' => '{0} tunni pärast',
- 'hour-narrow-future-one' => '{0} h pärast',
- 'hour-narrow-future-other' => '{0} h pärast',
- 'hour-narrow-past-one' => '{0} h tagasi',
- 'hour-narrow-past-other' => '{0} h tagasi',
+ 'hour-narrow-future-one' => '{0} t pärast',
+ 'hour-narrow-future-other' => '{0} t pärast',
+ 'hour-narrow-past-one' => '{0} t eest',
+ 'hour-narrow-past-other' => '{0} t eest',
'hour-one' => '{0} tund',
'hour-other' => '{0} tundi',
'hour-past-one' => '{0} tunni eest',
'hour-past-other' => '{0} tunni eest',
- 'hour-short-future-one' => '{0} h pärast',
- 'hour-short-future-other' => '{0} h pärast',
- 'hour-short-past-one' => '{0} h tagasi',
- 'hour-short-past-other' => '{0} h tagasi',
+ 'hour-short-future-one' => '{0} t pärast',
+ 'hour-short-future-other' => '{0} t pärast',
+ 'hour-short-past-one' => '{0} t eest',
+ 'hour-short-past-other' => '{0} t eest',
'microsecond-one' => '{0} mikrosekund',
'microsecond-other' => '{0} mikrosekundit',
'millisecond-one' => '{0} millisekund',
@@ -1205,22 +1367,34 @@ $timeUnits = array(
'minute-future-other' => '{0} minuti pärast',
'minute-narrow-future-one' => '{0} min pärast',
'minute-narrow-future-other' => '{0} min pärast',
- 'minute-narrow-past-one' => '{0} min tagasi',
- 'minute-narrow-past-other' => '{0} min tagasi',
+ 'minute-narrow-past-one' => '{0} min eest',
+ 'minute-narrow-past-other' => '{0} min eest',
'minute-one' => '{0} minut',
'minute-other' => '{0} minutit',
'minute-past-one' => '{0} minuti eest',
'minute-past-other' => '{0} minuti eest',
'minute-short-future-one' => '{0} min pärast',
'minute-short-future-other' => '{0} min pärast',
- 'minute-short-past-one' => '{0} min tagasi',
- 'minute-short-past-other' => '{0} min tagasi',
+ 'minute-short-past-one' => '{0} min eest',
+ 'minute-short-past-other' => '{0} min eest',
+ 'mon-future-one' => '{0} esmaspäeva pärast',
+ 'mon-future-other' => '{0} esmaspäeva pärast',
+ 'mon-narrow-future-one' => '{0} E pärast',
+ 'mon-narrow-future-other' => '{0} E pärast',
+ 'mon-narrow-past-one' => '{0} E eest',
+ 'mon-narrow-past-other' => '{0} E eest',
+ 'mon-past-one' => '{0} esmaspäeva eest',
+ 'mon-past-other' => '{0} esmaspäeva eest',
+ 'mon-short-future-one' => '{0} esmasp pärast',
+ 'mon-short-future-other' => '{0} esmasp pärast',
+ 'mon-short-past-one' => '{0} esmasp eest',
+ 'mon-short-past-other' => '{0} esmasp eest',
'month-future-one' => '{0} kuu pärast',
'month-future-other' => '{0} kuu pärast',
- 'month-narrow-future-one' => '{0} kuu pärast',
- 'month-narrow-future-other' => '{0} kuu pärast',
- 'month-narrow-past-one' => '{0} kuu eest',
- 'month-narrow-past-other' => '{0} kuu eest',
+ 'month-narrow-future-one' => '{0} k pärast',
+ 'month-narrow-future-other' => '{0} k pärast',
+ 'month-narrow-past-one' => '{0} k eest',
+ 'month-narrow-past-other' => '{0} k eest',
'month-one' => '{0} kuu',
'month-other' => '{0} kuud',
'month-past-one' => '{0} kuu eest',
@@ -1233,56 +1407,116 @@ $timeUnits = array(
'nanosecond-other' => '{0} nanosekundit',
'quarter-future-one' => '{0} kvartali pärast',
'quarter-future-other' => '{0} kvartali pärast',
- 'quarter-narrow-future-one' => '+{0} kv',
- 'quarter-narrow-future-other' => '+{0} kv',
- 'quarter-narrow-past-one' => '-{0} kv',
- 'quarter-narrow-past-other' => '-{0} kv',
+ 'quarter-narrow-future-one' => '{0} kv pärast',
+ 'quarter-narrow-future-other' => '{0} kv pärast',
+ 'quarter-narrow-past-one' => '{0} kv eest',
+ 'quarter-narrow-past-other' => '{0} kv eest',
'quarter-past-one' => '{0} kvartali eest',
'quarter-past-other' => '{0} kvartali eest',
'quarter-short-future-one' => '{0} kv pärast',
'quarter-short-future-other' => '{0} kv pärast',
'quarter-short-past-one' => '{0} kv eest',
'quarter-short-past-other' => '{0} kv eest',
+ 'sat-future-one' => '{0} laupäeva pärast',
+ 'sat-future-other' => '{0} laupäeva pärast',
+ 'sat-narrow-future-one' => '{0} L pärast',
+ 'sat-narrow-future-other' => '{0} L pärast',
+ 'sat-narrow-past-one' => '{0} L eest',
+ 'sat-narrow-past-other' => '{0} L eest',
+ 'sat-past-one' => '{0} laupäeva eest',
+ 'sat-past-other' => '{0} laupäeva eest',
+ 'sat-short-future-one' => '{0} laup pärast',
+ 'sat-short-future-other' => '{0} laup pärast',
+ 'sat-short-past-one' => '{0} laup eest',
+ 'sat-short-past-other' => '{0} laup eest',
'second-future-one' => '{0} sekundi pärast',
'second-future-other' => '{0} sekundi pärast',
'second-narrow-future-one' => '{0} s pärast',
'second-narrow-future-other' => '{0} s pärast',
- 'second-narrow-past-one' => '{0} s tagasi',
- 'second-narrow-past-other' => '{0} s tagasi',
+ 'second-narrow-past-one' => '{0} s eest',
+ 'second-narrow-past-other' => '{0} s eest',
'second-one' => '{0} sekund',
'second-other' => '{0} sekundit',
'second-past-one' => '{0} sekundi eest',
'second-past-other' => '{0} sekundi eest',
- 'second-short-future-one' => '{0} s pärast',
- 'second-short-future-other' => '{0} s pärast',
- 'second-short-past-one' => '{0} s tagasi',
- 'second-short-past-other' => '{0} s tagasi',
+ 'second-short-future-one' => '{0} sek pärast',
+ 'second-short-future-other' => '{0} sek pärast',
+ 'second-short-past-one' => '{0} sek eest',
+ 'second-short-past-other' => '{0} sek eest',
+ 'sun-future-one' => '{0} pühapäeva pärast',
+ 'sun-future-other' => '{0} pühapäeva pärast',
+ 'sun-narrow-future-one' => '{0} P pärast',
+ 'sun-narrow-future-other' => '{0} P pärast',
+ 'sun-narrow-past-one' => '{0} P eest',
+ 'sun-narrow-past-other' => '{0} P eest',
+ 'sun-past-one' => '{0} pühapäeva eest',
+ 'sun-past-other' => '{0} pühapäeva eest',
+ 'sun-short-future-one' => '{0} pühap pärast',
+ 'sun-short-future-other' => '{0} pühap pärast',
+ 'sun-short-past-one' => '{0} pühap eest',
+ 'sun-short-past-other' => '{0} pühap pärast',
+ 'thu-future-one' => '{0} neljapäeva pärast',
+ 'thu-future-other' => '{0} neljapäeva pärast',
+ 'thu-narrow-future-one' => '{0} N pärast',
+ 'thu-narrow-future-other' => '{0} N pärast',
+ 'thu-narrow-past-one' => '{0} N eest',
+ 'thu-narrow-past-other' => '{0} N eest',
+ 'thu-past-one' => '{0} neljapäeva eest',
+ 'thu-past-other' => '{0} neljapäeva eest',
+ 'thu-short-future-one' => '{0} neljap pärast',
+ 'thu-short-future-other' => '{0} neljap pärast',
+ 'thu-short-past-one' => '{0} neljap eest',
+ 'thu-short-past-other' => '{0} neljap eest',
+ 'tue-future-one' => '{0} teisipäeva pärast',
+ 'tue-future-other' => '{0} teisipäeva pärast',
+ 'tue-narrow-future-one' => '{0} T pärast',
+ 'tue-narrow-future-other' => '{0} T pärast',
+ 'tue-narrow-past-one' => '{0} T eest',
+ 'tue-narrow-past-other' => '{0} T eest',
+ 'tue-past-one' => '{0} teisipäeva eest',
+ 'tue-past-other' => '{0} teisipäeva eest',
+ 'tue-short-future-one' => '{0} teisip pärast',
+ 'tue-short-future-other' => '{0} teisip pärast',
+ 'tue-short-past-one' => '{0} teisip eest',
+ 'tue-short-past-other' => '{0} teisip eest',
+ 'wed-future-one' => '{0} kolmapäeva pärast',
+ 'wed-future-other' => '{0} kolmapäeva pärast',
+ 'wed-narrow-future-one' => '{0} K pärast',
+ 'wed-narrow-future-other' => '{0} K pärast',
+ 'wed-narrow-past-one' => '{0} K eest',
+ 'wed-narrow-past-other' => '{0} K eest',
+ 'wed-past-one' => '{0} kolmapäeva eest',
+ 'wed-past-other' => '{0} kolmapäeva eest',
+ 'wed-short-future-one' => '{0} kolmap pärast',
+ 'wed-short-future-other' => '{0} kolmap pärast',
+ 'wed-short-past-one' => '{0} kolmap eest',
+ 'wed-short-past-other' => '{0} kolmap eest',
'week-future-one' => '{0} nädala pärast',
'week-future-other' => '{0} nädala pärast',
- 'week-narrow-future-one' => '{0} nädala pärast',
- 'week-narrow-future-other' => '{0} nädala pärast',
- 'week-narrow-past-one' => '{0} nädala eest',
- 'week-narrow-past-other' => '{0} nädala eest',
+ 'week-narrow-future-one' => '{0} näd pärast',
+ 'week-narrow-future-other' => '{0} näd pärast',
+ 'week-narrow-past-one' => '{0} näd eest',
+ 'week-narrow-past-other' => '{0} näd eest',
'week-one' => '{0} nädal',
'week-other' => '{0} nädalat',
'week-past-one' => '{0} nädala eest',
'week-past-other' => '{0} nädala eest',
- 'week-short-future-one' => '{0} nädala pärast',
- 'week-short-future-other' => '{0} nädala pärast',
- 'week-short-past-one' => '{0} nädala eest',
- 'week-short-past-other' => '{0} nädala eest',
+ 'week-short-future-one' => '{0} näd pärast',
+ 'week-short-future-other' => '{0} näd pärast',
+ 'week-short-past-one' => '{0} näd eest',
+ 'week-short-past-other' => '{0} näd eest',
'year-future-one' => '{0} aasta pärast',
'year-future-other' => '{0} aasta pärast',
- 'year-narrow-future-one' => '{0} aasta pärast',
- 'year-narrow-future-other' => '{0} aasta pärast',
- 'year-narrow-past-one' => '{0} aasta eest',
- 'year-narrow-past-other' => '{0} aasta eest',
+ 'year-narrow-future-one' => '{0} a pärast',
+ 'year-narrow-future-other' => '{0} a pärast',
+ 'year-narrow-past-one' => '{0} a eest',
+ 'year-narrow-past-other' => '{0} a eest',
'year-one' => '{0} aasta',
'year-other' => '{0} aastat',
'year-past-one' => '{0} aasta eest',
'year-past-other' => '{0} aasta eest',
- 'year-short-future-one' => '{0} aasta pärast',
- 'year-short-future-other' => '{0} aasta pärast',
- 'year-short-past-one' => '{0} aasta eest',
- 'year-short-past-other' => '{0} aasta eest',
-);
+ 'year-short-future-one' => '{0} a pärast',
+ 'year-short-future-other' => '{0} a pärast',
+ 'year-short-past-one' => '{0} a eest',
+ 'year-short-past-other' => '{0} a eest',
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesEu.php b/MLEB/cldr/CldrNames/CldrNamesEu.php
index 356e8b8d..1141aa90 100644
--- a/MLEB/cldr/CldrNames/CldrNamesEu.php
+++ b/MLEB/cldr/CldrNames/CldrNamesEu.php
@@ -1,253 +1,407 @@
<?php
-$languageNames = array(
- 'ab' => 'abkhazera',
- 'ach' => 'Acholiera',
- 'af' => 'afrikaansa',
+$languageNames = [
+ 'aa' => 'afarera',
+ 'ab' => 'abkhaziera',
+ 'ace' => 'acehnera',
+ 'ach' => 'acholiera',
+ 'ada' => 'adangmera',
+ 'ady' => 'adigera',
+ 'af' => 'afrikaans',
'agq' => 'aghemera',
+ 'ain' => 'ainuera',
'ak' => 'akanera',
+ 'ale' => 'aleutera',
+ 'alt' => 'hegoaldeko altaiera',
'am' => 'amharera',
+ 'an' => 'aragoiera',
+ 'anp' => 'angikera',
'ar' => 'arabiera',
'ar-001' => 'arabiera moderno estandarra',
- 'arn' => 'maputxea',
+ 'arn' => 'maputxe',
+ 'arp' => 'arapaho',
'as' => 'assamera',
'asa' => 'asua',
+ 'ast' => 'asturiera',
+ 'av' => 'avarera',
+ 'awa' => 'awadhiera',
'ay' => 'aimara',
'az' => 'azerbaijanera',
- 'ba' => 'bashkirrera',
+ 'ba' => 'baxkirera',
+ 'ban' => 'baliera',
+ 'bas' => 'basaa',
'be' => 'bielorrusiera',
'bem' => 'bembera',
'bez' => 'benera',
'bg' => 'bulgariera',
+ 'bho' => 'bhojpurera',
+ 'bi' => 'bislama',
+ 'bin' => 'edoera',
+ 'bla' => 'siksikera',
'bm' => 'bambarera',
'bn' => 'bengalera',
'bo' => 'tibetera',
'br' => 'bretoiera',
'brx' => 'bodoera',
'bs' => 'bosniera',
- 'ca' => 'katalana',
+ 'bug' => 'buginera',
+ 'byn' => 'bilena',
+ 'ca' => 'katalan',
+ 'ce' => 'txetxenera',
+ 'ceb' => 'cebuera',
'cgg' => 'chigera',
+ 'ch' => 'chamorrera',
+ 'chk' => 'chuukera',
+ 'chm' => 'mariera',
+ 'cho' => 'choctaw',
'chr' => 'txerokiera',
- 'ckb' => 'soraniera',
+ 'chy' => 'cheyennera',
+ 'ckb' => 'sorania',
'co' => 'korsikera',
+ 'crs' => 'Seychelleetako kreolera',
'cs' => 'txekiera',
- 'cy' => 'galesera',
+ 'cu' => 'elizako eslaviera',
+ 'cv' => 'txuvaxera',
+ 'cy' => 'gales',
'da' => 'daniera',
+ 'dak' => 'dakotera',
+ 'dar' => 'dargvera',
'dav' => 'taitera',
- 'de' => 'alemana',
- 'de-ch' => 'aleman garaia (Suitza)',
- 'dje' => 'zarmera',
+ 'de' => 'aleman',
+ 'de-at' => 'Austriako aleman',
+ 'de-ch' => 'Suitzako aleman garai',
+ 'dgr' => 'dogribera',
+ 'dje' => 'zarma',
'dsb' => 'behe-sorabiera',
'dua' => 'dualera',
'dv' => 'divehiera',
'dyo' => 'fonyi jolera',
'dz' => 'dzongkha',
+ 'dzg' => 'dazaga',
'ebu' => 'embua',
'ee' => 'eweera',
'efi' => 'efikera',
+ 'eka' => 'akajuka',
'el' => 'greziera',
- 'en' => 'ingelesa',
- 'en-us' => 'ingelesa (AEB)',
- 'eo' => 'esperantoa',
+ 'en' => 'ingeles',
+ 'en-au' => 'Australiako ingeles',
+ 'en-ca' => 'Kanadako ingeles',
+ 'en-gb' => 'Britania Handiko ingeles',
+ 'en-us' => 'AEBko ingeles',
+ 'eo' => 'esperanto',
'es' => 'espainiera',
+ 'es-419' => 'Latinoamerikako espainiera',
'es-es' => 'espainiera (Europa)',
+ 'es-mx' => 'Mexikoko espainiera',
'et' => 'estoniera',
'eu' => 'euskara',
+ 'ewo' => 'ewondera',
'fa' => 'persiera',
+ 'ff' => 'fula',
'fi' => 'finlandiera',
- 'fil' => 'tagaloga',
+ 'fil' => 'filipinera',
'fj' => 'fijiera',
'fo' => 'faroera',
- 'fr' => 'frantsesa',
+ 'fon' => 'fona',
+ 'fr' => 'frantses',
+ 'fr-ca' => 'Kanadako frantses',
+ 'fr-ch' => 'Suitzako frantses',
+ 'fur' => 'friuliera',
'fy' => 'frisiera',
- 'ga' => 'gaelikoa',
- 'gaa' => 'Ga',
+ 'ga' => 'gaeliko',
+ 'gaa' => 'ga',
'gag' => 'gagauzera',
- 'gd' => 'eskoziako gaelikoa',
+ 'gd' => 'Eskoziako gaeliko',
+ 'gez' => 'ge’ez',
+ 'gil' => 'gilbertera',
'gl' => 'galiziera',
'gn' => 'guaraniera',
- 'gsw' => 'alemana (Suitza)',
+ 'gor' => 'gorontaloa',
+ 'gsw' => 'Suitzako aleman',
'gu' => 'gujaratera',
'guz' => 'gusiiera',
'gv' => 'manxera',
+ 'gwi' => 'gwichʼin',
'ha' => 'hausa',
'haw' => 'hawaiiera',
'he' => 'hebreera',
- 'hi' => 'hindia',
+ 'hi' => 'hindi',
+ 'hil' => 'hiligainon',
+ 'hmn' => 'hmong',
'hr' => 'kroaziera',
'hsb' => 'goi-sorabiera',
- 'ht' => 'haitiera',
+ 'ht' => 'Haitiko kreolera',
'hu' => 'hungariera',
+ 'hup' => 'hupera',
'hy' => 'armeniera',
- 'ia' => 'Interlingua',
+ 'hz' => 'hereroera',
+ 'ia' => 'interlingua',
+ 'iba' => 'ibanera',
+ 'ibb' => 'ibibioera',
'id' => 'indonesiera',
'ie' => 'interlingue',
'ig' => 'igboera',
- 'ii' => 'sichuan yia',
+ 'ii' => 'Sichuango yiera',
+ 'ilo' => 'ilokanera',
+ 'inh' => 'ingushera',
+ 'io' => 'ido',
'is' => 'islandiera',
'it' => 'italiera',
- 'iu' => 'inuitera',
+ 'iu' => 'inuktitut',
'ja' => 'japoniera',
+ 'jbo' => 'lojbanera',
'jgo' => 'ngomba',
'jmc' => 'machamera',
'jv' => 'javera',
'ka' => 'georgiera',
'kab' => 'kabilera',
+ 'kac' => 'jingpoera',
+ 'kaj' => 'kaiji',
'kam' => 'kambera',
+ 'kbd' => 'kabardiera',
+ 'kcg' => 'kataba',
'kde' => 'makondera',
- 'kea' => 'Cabo Verdeko kreola',
- 'kg' => 'Kikongoa',
+ 'kea' => 'Cabo Verdeko kreolera',
+ 'kfo' => 'koroa',
+ 'kg' => 'kikongoa',
+ 'kha' => 'kashia',
'khq' => 'koyra chiiniera',
'ki' => 'kikuyuera',
+ 'kj' => 'kuanyama',
'kk' => 'kazakhera',
- 'kl' => 'kalaallisutera',
+ 'kkj' => 'kakoa',
+ 'kl' => 'groenlandiera',
'kln' => 'kalenjinera',
'km' => 'khemerera',
- 'kn' => 'kannadera',
+ 'kmb' => 'kimbundua',
+ 'kn' => 'kannada',
'ko' => 'koreera',
'koi' => 'komi-permyakera',
- 'kok' => 'konkaniera',
- 'ks' => 'kashmirera',
+ 'kok' => 'konkanera',
+ 'kpe' => 'kpellea',
+ 'kr' => 'kanuriera',
+ 'krc' => 'karachayera-balkarera',
+ 'krl' => 'kareliera',
+ 'kru' => 'kurukhera',
+ 'ks' => 'kaxmirera',
'ksb' => 'shambalera',
'ksf' => 'bafiera',
+ 'ksh' => 'koloniera',
'ku' => 'kurduera',
+ 'kum' => 'kumykera',
+ 'kv' => 'komiera',
'kw' => 'kornubiera',
'ky' => 'kirgizera',
- 'la' => 'latina',
+ 'la' => 'latin',
+ 'lad' => 'ladino',
'lag' => 'langiera',
'lb' => 'luxenburgera',
+ 'lez' => 'lezgiera',
'lg' => 'gandera',
+ 'li' => 'limburgera',
'lkt' => 'lakotera',
'ln' => 'lingala',
'lo' => 'laosera',
- 'loz' => 'Loziera',
+ 'loz' => 'loziera',
+ 'lrc' => 'iparraldeko lurera',
'lt' => 'lituaniera',
'lu' => 'luba-katangera',
- 'lua' => 'Luba-lulua',
+ 'lua' => 'txilubera',
+ 'lun' => 'lundera',
'luo' => 'luoera',
+ 'lus' => 'mizoa',
'luy' => 'luhyera',
'lv' => 'letoniera',
+ 'mad' => 'madurera',
+ 'mag' => 'magahiera',
+ 'mai' => 'maithilera',
+ 'mak' => 'makasarera',
'mas' => 'masaiera',
+ 'mdf' => 'mokxera',
+ 'men' => 'mendeera',
'mer' => 'meruera',
'mfe' => 'Mauritaniako kreolera',
- 'mg' => 'malagasyera',
+ 'mg' => 'malgaxe',
'mgh' => 'makhuwa-meettoera',
'mgo' => 'metera',
+ 'mh' => 'marshallera',
'mi' => 'maoriera',
+ 'mic' => 'mikmakera',
+ 'min' => 'minangkabauera',
'mk' => 'mazedoniera',
- 'ml' => 'malayalamera',
+ 'ml' => 'malabarera',
'mn' => 'mongoliera',
+ 'mni' => 'manipurera',
'moh' => 'mohawkera',
+ 'mos' => 'moreera',
'mr' => 'marathera',
'ms' => 'malaysiera',
'mt' => 'maltera',
'mua' => 'mudangera',
- 'mul' => 'hizkuntza anitzak',
- 'my' => 'burmatarra',
+ 'mul' => 'zenbait hizkuntza',
+ 'mus' => 'creera',
+ 'mwl' => 'mirandera',
+ 'my' => 'birmaniera',
+ 'myv' => 'erziera',
+ 'mzn' => 'mazandarandera',
+ 'na' => 'nauruera',
+ 'nap' => 'napoliera',
'naq' => 'namera',
- 'nb' => 'bokmala (Norvegia)',
+ 'nb' => 'bokmål (norvegiera)',
'nd' => 'iparraldeko ndebeleera',
+ 'nds-nl' => 'behe-saxoiera',
'ne' => 'nepalera',
+ 'new' => 'newarera',
+ 'ng' => 'ndongera',
+ 'nia' => 'niasera',
+ 'niu' => 'niueera',
'nl' => 'nederlandera',
'nl-be' => 'flandriera',
'nmg' => 'kwasiera',
- 'nn' => 'nynorsk norvegiera',
+ 'nn' => 'nynorsk (norvegiera)',
+ 'nnh' => 'ngiemboonera',
'no' => 'norvegiera',
+ 'nog' => 'nogaiera',
'nqo' => 'n’koera',
+ 'nr' => 'hegoaldeko ndebelera',
'nso' => 'pediera',
'nus' => 'nuerera',
- 'ny' => 'nyanja',
+ 'nv' => 'navajoera',
+ 'ny' => 'chewera',
'nyn' => 'ankolera',
- 'oc' => 'Okzitaniera',
+ 'oc' => 'okzitaniera',
'om' => 'oromoera',
- 'or' => 'oriyera',
+ 'or' => 'oriya',
'os' => 'osetiera',
'pa' => 'punjabera',
+ 'pag' => 'pangasinanera',
+ 'pam' => 'pampangera',
+ 'pap' => 'papiamento',
+ 'pau' => 'palauera',
+ 'pcm' => 'Nigeriako pidgina',
'pl' => 'poloniera',
+ 'prg' => 'prusiera',
'ps' => 'paxtuera',
- 'pt' => 'portugesa',
- 'pt-pt' => 'portugesa (Europa)',
- 'qu' => 'quechuera',
- 'quc' => 'k’iche’ra',
- 'rm' => 'erromantxera',
+ 'pt' => 'portuges',
+ 'pt-br' => 'Brasilgo portuges',
+ 'pt-pt' => 'Europako portuges',
+ 'qu' => 'kitxua',
+ 'quc' => 'quicheera',
+ 'rap' => 'rapa nui',
+ 'rar' => 'rarotongera',
+ 'rm' => 'erretorromaniera',
'rn' => 'rundiera',
'ro' => 'errumaniera',
+ 'ro-md' => 'moldaviera',
'rof' => 'romboera',
'ru' => 'errusiera',
+ 'rup' => 'aromaniera',
'rw' => 'kinyaruanda',
'rwk' => 'rwaera',
- 'sa' => 'sanskritoa',
+ 'sa' => 'sanskrito',
+ 'sad' => 'sandaweera',
+ 'sah' => 'sakhera',
'saq' => 'samburuera',
+ 'sat' => 'santalera',
+ 'sba' => 'ngambayera',
'sbp' => 'sanguera',
- 'sd' => 'sindhia',
+ 'sc' => 'sardiniera',
+ 'scn' => 'siziliera',
+ 'sco' => 'eskoziera',
+ 'sd' => 'sindhi',
'se' => 'iparraldeko samiera',
'seh' => 'senera',
'ses' => 'koyraboro sennia',
- 'sg' => 'sangoera',
+ 'sg' => 'sango',
'sh' => 'serbokroaziera',
'shi' => 'tachelhita',
+ 'shn' => 'shanera',
'si' => 'sinhala',
'sk' => 'eslovakiera',
'sl' => 'esloveniera',
'sm' => 'samoera',
'sma' => 'hegoaldeko samiera',
- 'smj' => 'Lule samiera',
- 'smn' => 'Inari samiera',
- 'sms' => 'Skolt samiera',
+ 'smj' => 'Luleko samiera',
+ 'smn' => 'Inariko samiera',
+ 'sms' => 'skolten samiera',
'sn' => 'shonera',
+ 'snk' => 'soninkera',
'so' => 'somaliera',
'sq' => 'albaniera',
'sr' => 'serbiera',
+ 'srn' => 'srananera',
'ss' => 'swatiera',
+ 'ssy' => 'sahoa',
'st' => 'hegoaldeko sothoera',
'su' => 'sundanera',
+ 'suk' => 'sukumera',
'sv' => 'suediera',
- 'sw' => 'swahili',
- 'swc' => 'Kongoko swahilia',
+ 'sw' => 'swahilia',
+ 'sw-cd' => 'Kongoko swahilia',
+ 'swb' => 'komoreera',
+ 'syr' => 'siriera',
'ta' => 'tamilera',
- 'te' => 'teluguera',
+ 'te' => 'telugu',
+ 'tem' => 'temnea',
'teo' => 'tesoera',
- 'tet' => 'tetuma',
- 'tg' => 'tajikistanera',
+ 'tet' => 'tetum',
+ 'tg' => 'tajikera',
'th' => 'thailandiera',
- 'ti' => 'tigriñera',
- 'tk' => 'turkmeniera',
+ 'ti' => 'tigrinyera',
+ 'tig' => 'tigrea',
+ 'tk' => 'turkmenera',
'tl' => 'tagalog',
- 'tlh' => 'Klingonera',
+ 'tlh' => 'klingonera',
'tn' => 'tswanera',
'to' => 'tongera',
- 'tpi' => 'tok pisina',
+ 'tpi' => 'tok pisin',
'tr' => 'turkiera',
+ 'trv' => 'tarokoa',
'ts' => 'tsongera',
'tt' => 'tatarera',
- 'tum' => 'Tumbukera',
+ 'tum' => 'tumbukera',
+ 'tvl' => 'tuvaluera',
'tw' => 'twia',
- 'twq' => 'tasawaqa',
+ 'twq' => 'tasawaq',
'ty' => 'tahitiera',
- 'tzm' => 'Maroko erdialdeko tamazighta',
+ 'tyv' => 'tuvera',
+ 'tzm' => 'Erdialdeko Atlaseko amazigera',
+ 'udm' => 'udmurtera',
'ug' => 'uigurrera',
'uk' => 'ukrainera',
+ 'umb' => 'umbundu',
'und' => 'hizkuntza ezezaguna',
- 'ur' => 'urdua',
+ 'ur' => 'urdu',
'uz' => 'uzbekera',
'vai' => 'vaiera',
've' => 'vendera',
'vi' => 'vietnamera',
- 'vun' => 'vunjoa',
+ 'vo' => 'volapük',
+ 'vun' => 'vunjo',
+ 'wa' => 'waloiera',
+ 'wae' => 'walserera',
+ 'wal' => 'welayta',
+ 'war' => 'samerera',
'wo' => 'wolofera',
+ 'xal' => 'kalmykera',
'xh' => 'xhosera',
'xog' => 'sogera',
- 'yi' => 'Jiddisha',
- 'yo' => 'yorubera',
- 'zgh' => 'tamazight estandarra',
+ 'yav' => 'jangbenera',
+ 'ybb' => 'yemba',
+ 'yi' => 'yiddish',
+ 'yo' => 'jorubera',
+ 'yue' => 'kantonera',
+ 'zgh' => 'amazigera estandarra',
'zh' => 'txinera',
'zh-hans' => 'txinera soildua',
'zh-hant' => 'txinera tradizionala',
'zu' => 'zuluera',
+ 'zun' => 'zuñia',
'zxx' => 'ez dago eduki linguistikorik',
-);
+ 'zza' => 'zazera',
+];
-$currencyNames = array(
+$currencyNames = [
'AED' => 'Arabiar Emirerri Batuetako dirhama',
'AFN' => 'Afganistango afghania',
'ALL' => 'Albaniako leka',
@@ -256,7 +410,7 @@ $currencyNames = array(
'AOA' => 'Angolako kwanza',
'ARS' => 'Argentinako pesoa',
'AUD' => 'Australiako dolarra',
- 'AWG' => 'Arubeko florina',
+ 'AWG' => 'Arubako florina',
'AZN' => 'Azerbaijango manata',
'BAM' => 'Bosnia-Herzegovinako marko trukakorra',
'BBD' => 'Barbadosetako dolarra',
@@ -271,12 +425,14 @@ $currencyNames = array(
'BSD' => 'Bahametako dolarra',
'BTN' => 'Bhutango ngultruma',
'BWP' => 'Bosniako pula',
- 'BYR' => 'Bielorrusiako errubloa',
+ 'BYN' => 'Bielorrusiako errubloa',
+ 'BYR' => 'Bielorrusiako errubloa (2000–2016)',
'BZD' => 'Belizeko dolarra',
'CAD' => 'Kanadako dolarra',
'CDF' => 'Kongoko frankoa',
'CHF' => 'Suitzako frankoa',
'CLP' => 'Txileko pesoa',
+ 'CNH' => 'yuan txinatar (itsasoz haraindikoa)',
'CNY' => 'Txinako yuana',
'COP' => 'Kolonbiako pesoa',
'CRC' => 'Costa Ricako colona',
@@ -284,14 +440,14 @@ $currencyNames = array(
'CUP' => 'Kubako pesoa',
'CVE' => 'Cabo Verdeko ezkutua',
'CZK' => 'Txekiar Errepublikako koroa',
- 'DJF' => 'Djibouteko frankoa',
+ 'DJF' => 'Djibutiko frankoa',
'DKK' => 'Danimarkako koroa',
'DOP' => 'Dominikar Errepublikako pesoa',
- 'DZD' => 'Algeriako dinarra',
+ 'DZD' => 'Aljeriako dinarra',
'EGP' => 'Egiptoko libera',
'ERN' => 'Eritreako nakfa',
'ETB' => 'Etiopiako birra',
- 'EUR' => 'Euroa',
+ 'EUR' => 'euroa',
'FJD' => 'Fijiko dolarra',
'FKP' => 'Falkland uharteetako libera',
'GBP' => 'Libera esterlina',
@@ -308,7 +464,7 @@ $currencyNames = array(
'HTG' => 'Haitiko gourdea',
'HUF' => 'Hungariako florina',
'IDR' => 'Indonesiako errupia',
- 'ILS' => 'Israeleko sheqel berria',
+ 'ILS' => 'Israelgo shekel berria',
'INR' => 'Indiako errupia',
'IQD' => 'Irakeko dinarra',
'IRR' => 'Irango riala',
@@ -336,11 +492,12 @@ $currencyNames = array(
'MAD' => 'Marokoko dirhama',
'MDL' => 'Moldaviako leua',
'MGA' => 'Madagaskarreko ariarya',
- 'MKD' => 'Mazedoniako denara',
+ 'MKD' => 'Mazedoniako dinarra',
'MMK' => 'Myanmarreko kyata',
'MNT' => 'Mongoliako tugrika',
'MOP' => 'Macanako pataca',
- 'MRO' => 'Mauritaniako ouguiya',
+ 'MRO' => 'Mauritaniako ouguiya (1973–2017)',
+ 'MRU' => 'Mauritaniako ouguiya',
'MUR' => 'Maurizio uharteetako errupia',
'MVR' => 'Maldivetako rufiyaa',
'MWK' => 'Malawiko kwacha',
@@ -355,7 +512,7 @@ $currencyNames = array(
'NZD' => 'Zeelanda Berriko dolarra',
'OMR' => 'Omango riala',
'PAB' => 'Panamako balboa',
- 'PEN' => 'Peruko sol berria',
+ 'PEN' => 'Peruko sol',
'PGK' => 'Papua Ginea Berriko kina',
'PHP' => 'Filipinetako pesoa',
'PKR' => 'Pakistango errupia',
@@ -366,7 +523,7 @@ $currencyNames = array(
'RSD' => 'Serbiako dinarra',
'RUB' => 'Errusiako errubloa',
'RWF' => 'Ruandako frankoa',
- 'SAR' => 'Saudiko riala',
+ 'SAR' => 'Arabia Saudiko riala',
'SBD' => 'Salomon uharteetako dolarra',
'SCR' => 'Seychelleetako errupia',
'SDG' => 'Sudango libera',
@@ -377,39 +534,41 @@ $currencyNames = array(
'SOS' => 'Somaliako txelina',
'SRD' => 'Surinameko dolarra',
'SSP' => 'Hego Sudango libera',
- 'STD' => 'Sao Tomeko eta Principeko dobra',
+ 'STD' => 'Sao Tomeko eta Principeko dobra (1977–2017)',
+ 'STN' => 'Sao Tome eta Principeko dobra',
'SYP' => 'Siriako libera',
- 'SZL' => 'Swaziko lilangenia',
+ 'SZL' => 'Swazilandiako lilangenia',
'THB' => 'Thailandiako bahta',
'TJS' => 'Tajikistango somonia',
'TMT' => 'Turkmenistango manata',
'TND' => 'Tunisiako dinarra',
'TOP' => 'Tongako Paʻanga',
'TRY' => 'Turkiako lira',
- 'TTD' => 'Trinidadeko eta Tobagoko dolarra',
+ 'TTD' => 'Trinidad eta Tobagoko dolarra',
'TWD' => 'Taiwango dolar berria',
'TZS' => 'Tanzaniako txelina',
'UAH' => 'Ukrainako hryvnia',
'UGX' => 'Ugandako txelina',
- 'USD' => 'AEBetako dolarra',
+ 'USD' => 'AEBko dolarra',
'UYU' => 'Uruguaiko pesoa',
'UZS' => 'Uzbekistango soma',
- 'VEF' => 'Venezuelako bolivarra',
+ 'VEF' => 'Venezuelako bolivarra (2008–2018)',
+ 'VES' => 'Venezuelako bolivarra',
'VND' => 'Vietnameko donga',
'VUV' => 'Vanuatuko vatua',
'WST' => 'Samoko tala',
- 'XAF' => 'Afrika erdialdeko frankoa BEAC',
+ 'XAF' => 'Afrika erdialdeko CFA frankoa',
'XCD' => 'Karibe ekialdeko dolarra',
- 'XOF' => 'Afrika ekialdeko frankoa BCEAO',
+ 'XOF' => 'Afrika mendebaldeko CFA frankoa',
'XPF' => 'CFP frankoa',
'XXX' => 'Moneta ezezaguna',
'YER' => 'Yemengo riala',
'ZAR' => 'Hegoafrikako randa',
'ZMK' => 'Zambiako kwacha (1968–2012)',
'ZMW' => 'Zambiako kwacha',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'AED' => 'AED',
'AFN' => 'AFN',
'ALL' => 'ALL',
@@ -433,6 +592,7 @@ $currencySymbols = array(
'BSD' => 'BSD',
'BTN' => 'BTN',
'BWP' => 'BWP',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CA$',
@@ -539,6 +699,7 @@ $currencySymbols = array(
'SRD' => 'SRD',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'STN',
'SYP' => 'SYP',
'SZL' => 'SZL',
'THB' => '฿',
@@ -566,26 +727,25 @@ $currencySymbols = array(
'YER' => 'YER',
'ZAR' => 'ZAR',
'ZMW' => 'ZMW',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'Ascension uhartea',
'AD' => 'Andorra',
'AE' => 'Arabiar Emirerri Batuak',
'AF' => 'Afganistan',
'AG' => 'Antigua eta Barbuda',
- 'AI' => 'Angila',
+ 'AI' => 'Aingira',
'AL' => 'Albania',
'AM' => 'Armenia',
- 'AN' => 'Holandarren Antillak',
'AO' => 'Angola',
'AQ' => 'Antartika',
'AR' => 'Argentina',
- 'AS' => 'Amerikar Samoa',
+ 'AS' => 'Samoa Estatubatuarra',
'AT' => 'Austria',
'AU' => 'Australia',
'AW' => 'Aruba',
- 'AX' => 'Aland uharteak',
+ 'AX' => 'Åland',
'AZ' => 'Azerbaijan',
'BA' => 'Bosnia-Herzegovina',
'BB' => 'Barbados',
@@ -609,10 +769,10 @@ $countryNames = array(
'BY' => 'Bielorrusia',
'BZ' => 'Belize',
'CA' => 'Kanada',
- 'CC' => 'Cocos uharteak',
+ 'CC' => 'Cocos (Keeling) uharteak',
'CD' => 'Kongoko Errepublika Demokratikoa',
'CF' => 'Afrika Erdiko Errepublika',
- 'CG' => 'Kongo (Brazzaville)',
+ 'CG' => 'Kongo',
'CH' => 'Suitza',
'CI' => 'Boli Kosta',
'CK' => 'Cook uharteak',
@@ -627,9 +787,9 @@ $countryNames = array(
'CW' => 'Curaçao',
'CX' => 'Christmas uhartea',
'CY' => 'Zipre',
- 'CZ' => 'Txekiar Errepublika',
+ 'CZ' => 'Txekia',
'DE' => 'Alemania',
- 'DG' => 'Diego Garcia',
+ 'DG' => 'Diego García',
'DJ' => 'Djibuti',
'DK' => 'Danimarka',
'DM' => 'Dominika',
@@ -644,9 +804,10 @@ $countryNames = array(
'ES' => 'Espainia',
'ET' => 'Etiopia',
'EU' => 'Europar Batasuna',
+ 'EZ' => 'Eurogunea',
'FI' => 'Finlandia',
'FJ' => 'Fiji',
- 'FK' => 'Malvinak',
+ 'FK' => 'Falklandak',
'FM' => 'Mikronesia',
'FO' => 'Faroe uharteak',
'FR' => 'Frantzia',
@@ -667,7 +828,7 @@ $countryNames = array(
'GS' => 'Hegoaldeko Georgia eta Hegoaldeko Sandwich uharteak',
'GT' => 'Guatemala',
'GU' => 'Guam',
- 'GW' => 'Ginea-Bissau',
+ 'GW' => 'Ginea Bissau',
'GY' => 'Guyana',
'HK' => 'Hong Kong',
'HM' => 'Heard eta McDonald uharteak',
@@ -716,15 +877,15 @@ $countryNames = array(
'MC' => 'Monako',
'MD' => 'Moldavia',
'ME' => 'Montenegro',
- 'MF' => 'Saint Martin',
+ 'MF' => 'San Martin',
'MG' => 'Madagaskar',
- 'MH' => 'Marshall uharteak',
+ 'MH' => 'Marshall Uharteak',
'MK' => 'Mazedonia',
'ML' => 'Mali',
- 'MM' => 'Myanmar',
+ 'MM' => 'Myanmar (Birmania)',
'MN' => 'Mongolia',
'MO' => 'Macau',
- 'MP' => 'Iparraldeko Mariana uharteak',
+ 'MP' => 'Ipar Mariana uharteak',
'MQ' => 'Martinika',
'MR' => 'Mauritania',
'MS' => 'Montserrat',
@@ -770,12 +931,12 @@ $countryNames = array(
'RU' => 'Errusia',
'RW' => 'Ruanda',
'SA' => 'Saudi Arabia',
- 'SB' => 'Salomon uharteak',
+ 'SB' => 'Salomon Uharteak',
'SC' => 'Seychelleak',
'SD' => 'Sudan',
'SE' => 'Suedia',
'SG' => 'Singapur',
- 'SH' => 'Saint Helena',
+ 'SH' => 'Santa Helena',
'SI' => 'Eslovenia',
'SJ' => 'Svalbard eta Jan Mayen uharteak',
'SK' => 'Eslovakia',
@@ -791,7 +952,7 @@ $countryNames = array(
'SY' => 'Siria',
'SZ' => 'Swazilandia',
'TA' => 'Tristan da Cunha',
- 'TC' => 'Turk eta Caicos uharteak',
+ 'TC' => 'Turk eta Caico uharteak',
'TD' => 'Txad',
'TF' => 'Hegoaldeko lurralde frantsesak',
'TG' => 'Togo',
@@ -810,6 +971,7 @@ $countryNames = array(
'UA' => 'Ukraina',
'UG' => 'Uganda',
'UM' => 'Ameriketako Estatu Batuetako Kanpoaldeko Uharte Txikiak',
+ 'UN' => 'Nazio Batuak',
'US' => 'AEB',
'UY' => 'Uruguai',
'UZ' => 'Uzbekistan',
@@ -828,9 +990,11 @@ $countryNames = array(
'ZA' => 'Hegoafrika',
'ZM' => 'Zambia',
'ZW' => 'Zimbabwe',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-one' => '{0} mende',
+ 'century-other' => '{0} mende',
'day-future-one' => '{0} egun barru',
'day-future-other' => '{0} egun barru',
'day-narrow-future-one' => '{0} egun barru',
@@ -845,6 +1009,18 @@ $timeUnits = array(
'day-short-future-other' => '{0} egun barru',
'day-short-past-one' => 'Duela {0} egun',
'day-short-past-other' => 'Duela {0} egun',
+ 'fri-future-one' => '{0} ostiral barru',
+ 'fri-future-other' => '{0} ostiral barru',
+ 'fri-narrow-future-one' => '{0} or. barru',
+ 'fri-narrow-future-other' => '{0} or. barru',
+ 'fri-narrow-past-one' => 'Duela {0} or.',
+ 'fri-narrow-past-other' => 'Duela {0} or.',
+ 'fri-past-one' => 'Duela {0} ostiral',
+ 'fri-past-other' => 'Duela {0} ostiral',
+ 'fri-short-future-one' => '{0} or. barru',
+ 'fri-short-future-other' => '{0} or. barru',
+ 'fri-short-past-one' => 'Duela {0} or.',
+ 'fri-short-past-other' => 'Duela {0} or.',
'hour-future-one' => '{0} ordu barru',
'hour-future-other' => '{0} ordu barru',
'hour-narrow-future-one' => '{0} ordu barru',
@@ -877,6 +1053,18 @@ $timeUnits = array(
'minute-short-future-other' => '{0} minutu barru',
'minute-short-past-one' => 'Duela {0} minutu',
'minute-short-past-other' => 'Duela {0} minutu',
+ 'mon-future-one' => '{0} astelehen barru',
+ 'mon-future-other' => '{0} astelehen barru',
+ 'mon-narrow-future-one' => '{0} al. barru',
+ 'mon-narrow-future-other' => '{0} al. barru',
+ 'mon-narrow-past-one' => 'Duela {0} al.',
+ 'mon-narrow-past-other' => 'Duela {0} al.',
+ 'mon-past-one' => 'Duela {0} astelehen',
+ 'mon-past-other' => 'Duela {0} astelehen',
+ 'mon-short-future-one' => '{0} al. barru',
+ 'mon-short-future-other' => '{0} al. barru',
+ 'mon-short-past-one' => 'Duela {0} al.',
+ 'mon-short-past-other' => 'Duela {0} al.',
'month-future-one' => '{0} hilabete barru',
'month-future-other' => '{0} hilabete barru',
'month-narrow-future-one' => '{0} hilabete barru',
@@ -905,6 +1093,18 @@ $timeUnits = array(
'quarter-short-future-other' => '{0} hiruhileko barru',
'quarter-short-past-one' => 'Duela {0} hiruhileko',
'quarter-short-past-other' => 'Duela {0} hiruhileko',
+ 'sat-future-one' => '{0} larunbat barru',
+ 'sat-future-other' => '{0} larunbat barru',
+ 'sat-narrow-future-one' => '{0} lr. barru',
+ 'sat-narrow-future-other' => '{0} lr. barru',
+ 'sat-narrow-past-one' => 'Duela {0} lr.',
+ 'sat-narrow-past-other' => 'Duela {0} lr.',
+ 'sat-past-one' => 'Duela {0} larunbat',
+ 'sat-past-other' => 'Duela {0} larunbat',
+ 'sat-short-future-one' => '{0} lr. barru',
+ 'sat-short-future-other' => '{0} lr. barru',
+ 'sat-short-past-one' => 'Duela {0} lr.',
+ 'sat-short-past-other' => 'Duela {0} lr.',
'second-future-one' => '{0} segundo barru',
'second-future-other' => '{0} segundo barru',
'second-narrow-future-one' => '{0} segundo barru',
@@ -919,6 +1119,54 @@ $timeUnits = array(
'second-short-future-other' => '{0} segundo barru',
'second-short-past-one' => 'Duela {0} segundo',
'second-short-past-other' => 'Duela {0} segundo',
+ 'sun-future-one' => '{0} igande barru',
+ 'sun-future-other' => '{0} igande barru',
+ 'sun-narrow-future-one' => '{0} ig. barru',
+ 'sun-narrow-future-other' => '{0} ig. barru',
+ 'sun-narrow-past-one' => 'Duela {0} ig.',
+ 'sun-narrow-past-other' => 'Duela {0} ig.',
+ 'sun-past-one' => 'Duela {0} igande',
+ 'sun-past-other' => 'Duela {0} igande',
+ 'sun-short-future-one' => '{0} ig. barru',
+ 'sun-short-future-other' => '{0} ig. barru',
+ 'sun-short-past-one' => 'Duela {0} ig.',
+ 'sun-short-past-other' => 'Duela {0} ig.',
+ 'thu-future-one' => '{0} og. barru',
+ 'thu-future-other' => '{0} og. barru',
+ 'thu-narrow-future-one' => '{0} og. barru',
+ 'thu-narrow-future-other' => '{0} og. barru',
+ 'thu-narrow-past-one' => 'Duela {0} og.',
+ 'thu-narrow-past-other' => 'Duela {0} og.',
+ 'thu-past-one' => 'Duela {0} og.',
+ 'thu-past-other' => 'Duela {0} og.',
+ 'thu-short-future-one' => '{0} og. barru',
+ 'thu-short-future-other' => '{0} og. barru',
+ 'thu-short-past-one' => 'Duela {0} og.',
+ 'thu-short-past-other' => 'Duela {0} og.',
+ 'tue-future-one' => '{0} astearte barru',
+ 'tue-future-other' => '{0} astearte barru',
+ 'tue-narrow-future-one' => '{0} ar. barru',
+ 'tue-narrow-future-other' => '{0} ar. barru',
+ 'tue-narrow-past-one' => 'Duela {0} ar.',
+ 'tue-narrow-past-other' => 'Duela {0} ar.',
+ 'tue-past-one' => 'Duela {0} astearte',
+ 'tue-past-other' => 'Duela {0} astearte',
+ 'tue-short-future-one' => '{0} ar. barru',
+ 'tue-short-future-other' => '{0} ar. barru',
+ 'tue-short-past-one' => 'Duela {0} ar.',
+ 'tue-short-past-other' => 'Duela {0} ar.',
+ 'wed-future-one' => '{0} asteazken barru',
+ 'wed-future-other' => '{0} asteazken barru',
+ 'wed-narrow-future-one' => '{0} az. barru',
+ 'wed-narrow-future-other' => '{0} az. barru',
+ 'wed-narrow-past-one' => 'Duela {0} az.',
+ 'wed-narrow-past-other' => 'Duela {0} az.',
+ 'wed-past-one' => 'Duela {0} asteazken',
+ 'wed-past-other' => 'Duela {0} asteazken',
+ 'wed-short-future-one' => '{0} az. barru',
+ 'wed-short-future-other' => '{0} az. barru',
+ 'wed-short-past-one' => 'Duela {0} az.',
+ 'wed-short-past-other' => 'Duela {0} az.',
'week-future-one' => '{0} aste barru',
'week-future-other' => '{0} aste barru',
'week-narrow-future-one' => '{0} aste barru',
@@ -947,4 +1195,4 @@ $timeUnits = array(
'year-short-future-other' => '{0} urte barru',
'year-short-past-one' => 'Duela {0} urte',
'year-short-past-other' => 'Duela {0} urte',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesFa.php b/MLEB/cldr/CldrNames/CldrNamesFa.php
index 37bd4f19..fda71152 100644
--- a/MLEB/cldr/CldrNames/CldrNamesFa.php
+++ b/MLEB/cldr/CldrNames/CldrNamesFa.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'آفاری',
'ab' => 'آبخازی',
'ace' => 'آچئی',
@@ -35,29 +35,32 @@ $languageNames = array(
'asa' => 'آسو',
'ast' => 'آستوری',
'av' => 'آواری',
+ 'awa' => 'اودهی',
'ay' => 'آیمارایی',
'az' => 'ترکی آذربایجانی',
- 'azb' => 'ترکی آذربایجانی ایران',
- 'ba' => 'باشغیری',
+ 'az-arab' => 'ترکی آذری جنوبی',
+ 'ba' => 'باشقیری',
'bal' => 'بلوچی',
'ban' => 'بالیایی',
'bar' => 'باواریایی',
'bas' => 'باسایی',
'bax' => 'بمونی',
- 'be' => 'بلوروسی',
+ 'be' => 'بلاروسی',
'bej' => 'بجایی',
'bem' => 'بمبایی',
'bez' => 'بنایی',
'bg' => 'بلغاری',
+ 'bgn' => 'بلوچی غربی',
'bho' => 'بوجپوری',
'bi' => 'بیسلاما',
'bik' => 'بیکولی',
'bin' => 'بینی',
+ 'bla' => 'سیکسیکا',
'bm' => 'بامبارایی',
'bn' => 'بنگالی',
'bo' => 'تبتی',
'bqi' => 'لری بختیاری',
- 'br' => 'برتانیایی',
+ 'br' => 'برتون',
'bra' => 'براج',
'brh' => 'براهویی',
'brx' => 'بودویی',
@@ -80,23 +83,24 @@ $languageNames = array(
'chp' => 'چیپه‌ویه‌ای',
'chr' => 'چروکیایی',
'chy' => 'شایانی',
- 'ckb' => 'کردی سورانی',
+ 'ckb' => 'کردی مرکزی',
'co' => 'کورسی',
'cop' => 'قبطی',
'cr' => 'کریایی',
'crh' => 'ترکی کریمه',
+ 'crs' => 'سیشل آمیختهٔ فرانسوی',
'cs' => 'چکی',
'csb' => 'کاشوبی',
'cu' => 'اسلاوی کلیسایی',
'cv' => 'چوواشی',
- 'cy' => 'ویلزی',
+ 'cy' => 'ولزی',
'da' => 'دانمارکی',
'dak' => 'داکوتایی',
'dar' => 'دارقینی',
'dav' => 'تایتا',
'de' => 'آلمانی',
'de-at' => 'آلمانی اتریش',
- 'de-ch' => 'آلمانی علیای سوئیس',
+ 'de-ch' => 'آلمانی معیار سوئیس',
'del' => 'دلاواری',
'dgr' => 'دوگریب',
'din' => 'دینکایی',
@@ -105,10 +109,11 @@ $languageNames = array(
'dsb' => 'صُربی سفلی',
'dua' => 'دوآلایی',
'dum' => 'هلندی میانه',
- 'dv' => 'مالدیوی',
+ 'dv' => 'دیوهی',
'dyo' => 'دیولا فونی',
'dyu' => 'دایولایی',
- 'dz' => 'جونخایی',
+ 'dz' => 'دزونگخا',
+ 'dzg' => 'دازاگایی',
'ebu' => 'امبو',
'ee' => 'اوه‌ای',
'efi' => 'افیکی',
@@ -131,9 +136,10 @@ $languageNames = array(
'eu' => 'باسکی',
'ewo' => 'اواندو',
'fa' => 'فارسی',
- 'fan' => 'فانکی',
+ 'fa-af' => 'دری',
+ 'fan' => 'فانگی',
'fat' => 'فانتیایی',
- 'ff' => 'فولایی',
+ 'ff' => 'فولانی',
'fi' => 'فنلاندی',
'fil' => 'فیلیپینی',
'fj' => 'فیجیایی',
@@ -151,7 +157,7 @@ $languageNames = array(
'fy' => 'فریزی غربی',
'ga' => 'ایرلندی',
'gaa' => 'گایی',
- 'gag' => 'گاگاوز',
+ 'gag' => 'گاگائوزیایی',
'gay' => 'گایویی',
'gba' => 'گبایایی',
'gbz' => 'دری زرتشتی',
@@ -160,7 +166,7 @@ $languageNames = array(
'gil' => 'گیلبرتی',
'gl' => 'گالیسیایی',
'glk' => 'گیلکی',
- 'gmh' => 'آلمانی علیای میانه',
+ 'gmh' => 'آلمانی معیار میانه',
'gn' => 'گوارانی',
'goh' => 'آلمانی علیای باستان',
'gon' => 'گوندی',
@@ -191,7 +197,8 @@ $languageNames = array(
'hy' => 'ارمنی',
'hz' => 'هریرویی',
'ia' => 'میان‌زبان',
- 'iba' => 'آیبن',
+ 'iba' => 'ایبانی',
+ 'ibb' => 'ایبیبیو',
'id' => 'اندونزیایی',
'ie' => 'اکسیدنتال',
'ig' => 'ایگبویی',
@@ -228,31 +235,34 @@ $languageNames = array(
'khq' => 'کوجراچینی',
'khw' => 'کهوار',
'ki' => 'کیکویویی',
- 'kiu' => 'زازاکی',
+ 'kiu' => 'کرمانجی',
'kj' => 'کوانیاما',
'kk' => 'قزاقی',
+ 'kkj' => 'کاکایی',
'kl' => 'گرینلندی',
'kln' => 'کالنجین',
'km' => 'خمری',
'kmb' => 'کیمبوندویی',
- 'kn' => 'کاناده‌ای',
+ 'kn' => 'کانارا',
'ko' => 'کره‌ای',
'koi' => 'کومی پرمیاک',
'kok' => 'کنکانی',
'kpe' => 'کپله‌ای',
'kr' => 'کانوریایی',
'krc' => 'قره‌چایی‐بالکاری',
+ 'krl' => 'کاریلیانی',
'kru' => 'کوروخی',
'ks' => 'کشمیری',
'ksb' => 'شامبالا',
'ksf' => 'بافیایی',
+ 'ksh' => 'ریپواری',
'ku' => 'کردی',
'kum' => 'کومیکی',
'kut' => 'کوتنی',
'kv' => 'کومیایی',
'kw' => 'کرنوالی',
'ky' => 'قرقیزی',
- 'la' => 'لاتینی',
+ 'la' => 'لاتین',
'lad' => 'لادینو',
'lag' => 'لانگی',
'lah' => 'لاهندا',
@@ -265,7 +275,9 @@ $languageNames = array(
'ln' => 'لینگالا',
'lo' => 'لائوسی',
'lol' => 'مونگویی',
+ 'lou' => 'زبان آمیختهٔ مادری لوئیزیانا',
'loz' => 'لوزیایی',
+ 'lrc' => 'لری شمالی',
'lt' => 'لیتوانیایی',
'lu' => 'لوبایی‐کاتانگا',
'lua' => 'لوبایی‐لولوا',
@@ -308,15 +320,18 @@ $languageNames = array(
'mua' => 'ماندانگی',
'mul' => 'چندین زبان',
'mus' => 'کریکی',
+ 'mwl' => 'میراندی',
'mwr' => 'مارواری',
'my' => 'برمه‌ای',
'myv' => 'ارزیایی',
+ 'mzn' => 'مازندرانی',
'na' => 'نائورویی',
'nap' => 'ناپلی',
'naq' => 'نامایی',
- 'nb' => 'بوکسمال نروژی',
+ 'nb' => 'نروژی بوک‌مُل',
'nd' => 'انده‌بله‌ای شمالی',
'nds' => 'آلمانی سفلی',
+ 'nds-nl' => 'ساکسونی سفلی',
'ne' => 'نپالی',
'new' => 'نواریایی',
'ng' => 'اندونگایی',
@@ -325,7 +340,8 @@ $languageNames = array(
'nl' => 'هلندی',
'nl-be' => 'فلمنگی',
'nmg' => 'کوازیو',
- 'nn' => 'نرس جدید نروژی',
+ 'nn' => 'نروژی نی‌نُشک',
+ 'nnh' => 'انگیمبونی',
'no' => 'نروژی',
'nog' => 'نغایی',
'non' => 'نرس باستان',
@@ -340,7 +356,7 @@ $languageNames = array(
'nyn' => 'نیانکوله‌ای',
'nyo' => 'نیورویی',
'nzi' => 'نزیمایی',
- 'oc' => 'اوکیتایی',
+ 'oc' => 'اکسیتان',
'oj' => 'اوجیبوایی',
'om' => 'اورومویی',
'or' => 'اوریه‌ای',
@@ -353,6 +369,7 @@ $languageNames = array(
'pam' => 'پامپانگایی',
'pap' => 'پاپیامنتو',
'pau' => 'پالائویی',
+ 'pcm' => 'نیم‌زبان نیجریه‌ای',
'pdc' => 'آلمانی پنسیلوانیایی',
'peo' => 'فارسی باستان',
'phn' => 'فنیقی',
@@ -377,25 +394,28 @@ $languageNames = array(
'rof' => 'رومبویی',
'rom' => 'رومانویی',
'ru' => 'روسی',
+ 'rup' => 'آرومانی',
'rw' => 'کینیارواندایی',
'rwk' => 'روایی',
- 'sa' => 'سنسکریت',
+ 'sa' => 'سانسکریت',
'sad' => 'سانداوه‌ای',
'sah' => 'یاقوتی',
'sam' => 'آرامی سامری',
'saq' => 'سامبورو',
'sas' => 'ساساکی',
'sat' => 'سانتالی',
- 'sbp' => 'سانگو',
+ 'sba' => 'انگامبایی',
+ 'sbp' => 'سانگویی',
'sc' => 'ساردینیایی',
'scn' => 'سیسیلی',
'sco' => 'اسکاتلندی',
'sd' => 'سندی',
+ 'sdh' => 'کردی جنوبی',
'se' => 'سامی شمالی',
'seh' => 'سنا',
'sel' => 'سلکوپی',
'ses' => 'کویرابورا سنی',
- 'sg' => 'سانگویی',
+ 'sg' => 'سانگو',
'sga' => 'ایرلندی باستان',
'sh' => 'صرب و کرواتی',
'shi' => 'تاچل‌هیت',
@@ -404,7 +424,8 @@ $languageNames = array(
'si' => 'سینهالی',
'sid' => 'سیدامویی',
'sk' => 'اسلواکی',
- 'sl' => 'اسلووینیایی',
+ 'sl' => 'اسلوونیایی',
+ 'sli' => 'سیلزیایی سفلی',
'sm' => 'ساموآیی',
'sma' => 'سامی جنوبی',
'smj' => 'لوله سامی',
@@ -419,17 +440,19 @@ $languageNames = array(
'srn' => 'تاکی‌تاکی',
'srr' => 'سریری',
'ss' => 'سوازیایی',
+ 'ssy' => 'ساهو',
'st' => 'سوتویی جنوبی',
'su' => 'سوندایی',
'suk' => 'سوکومایی',
'sus' => 'سوسویی',
'sux' => 'سومری',
'sv' => 'سوئدی',
- 'sw' => 'سواحلی',
+ 'sw' => 'سواحیلی',
+ 'sw-cd' => 'سواحیلی کنگو',
'swb' => 'کوموری',
- 'swc' => 'سواحلی کنگویی',
'syc' => 'سریانی کلاسیک',
'syr' => 'سریانی',
+ 'szl' => 'سیلزیایی',
'ta' => 'تامیلی',
'te' => 'تلوگویی',
'tem' => 'تمنه‌ای',
@@ -451,6 +474,7 @@ $languageNames = array(
'tog' => 'تونگایی نیاسا',
'tpi' => 'توک‌پیسینی',
'tr' => 'ترکی استانبولی',
+ 'trv' => 'تاروکویی',
'ts' => 'تسونگایی',
'tsi' => 'تسیم‌شیانی',
'tt' => 'تاتاری',
@@ -476,15 +500,19 @@ $languageNames = array(
'vot' => 'وتی',
'vun' => 'ونجو',
'wa' => 'والونی',
+ 'wae' => 'والسر',
'wal' => 'والامو',
'war' => 'وارایی',
'was' => 'واشویی',
+ 'wbp' => 'وارلپیری',
'wo' => 'ولوفی',
'xal' => 'قلموقی',
'xh' => 'خوسایی',
'xog' => 'سوگایی',
'yao' => 'یائویی',
'yap' => 'یاپی',
+ 'yav' => 'یانگبنی',
+ 'ybb' => 'یمبایی',
'yi' => 'یدی',
'yo' => 'یوروبایی',
'yue' => 'کانتونی',
@@ -499,15 +527,15 @@ $languageNames = array(
'zun' => 'زونیایی',
'zxx' => 'بدون محتوای زبانی',
'zza' => 'زازایی',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'ADP' => 'پزتای آندورا',
'AED' => 'درهم امارات متحدهٔ عربی',
'AFA' => 'افغانی افغانستان (۱۹۲۷ تا ۲۰۰۲)',
'AFN' => 'افغانی افغانستان',
'ALL' => 'لک آلبانی',
- 'AMD' => 'درم ارمنستان',
+ 'AMD' => 'درام ارمنستان',
'ANG' => 'گیلدر آنتیل هلند',
'AOA' => 'کوانزای آنگولا',
'ARP' => 'پزوی آرژانتین (۱۹۸۳ تا ۱۹۸۵)‏',
@@ -535,12 +563,14 @@ $currencyNames = array(
'BTN' => 'انگولتروم بوتان',
'BWP' => 'پولای بوتسوانا',
'BYB' => 'روبل جدید بیلوروسی (۱۹۹۴ تا ۱۹۹۹)',
- 'BYR' => 'روبل بیلوروسی',
+ 'BYN' => 'روبل بلاروسی',
+ 'BYR' => 'روبل بلاروسی (۲۰۱۶–۲۰۰۰)',
'BZD' => 'دلار بلیز',
'CAD' => 'دلار کانادا',
'CDF' => 'فرانک کنگو',
'CHF' => 'فرانک سوئیس',
'CLP' => 'پزوی شیلی',
+ 'CNH' => 'یوآن چین (برون‌مرزی)',
'CNY' => 'یوآن چین',
'COP' => 'پزوی کلمبیا',
'CRC' => 'کولون کاستاریکا',
@@ -556,7 +586,7 @@ $currencyNames = array(
'DKK' => 'کرون دانمارک',
'DOP' => 'پزوی جمهوری دومینیکن',
'DZD' => 'دینار الجزایر',
- 'EGP' => 'لیرهٔ مصر',
+ 'EGP' => 'پوند مصر',
'ERN' => 'ناکفای اریتره',
'ETB' => 'بیر اتیوپی',
'EUR' => 'یورو',
@@ -572,7 +602,7 @@ $currencyNames = array(
'GRD' => 'دراخمای یونان',
'GTQ' => 'کتزال گواتمالا',
'GWP' => 'پزوی گینهٔ بیسائو',
- 'GYD' => 'دلار گویان',
+ 'GYD' => 'دلار گویانا',
'HKD' => 'دلار هنگ‌کنگ',
'HNL' => 'لمپیرای هندوراس',
'HRD' => 'دینار کرواسی',
@@ -620,7 +650,8 @@ $currencyNames = array(
'MMK' => 'کیات میانمار',
'MNT' => 'توگریک مغولستان',
'MOP' => 'پاتاکای ماکائو',
- 'MRO' => 'اوگوئیای موریتانی',
+ 'MRO' => 'اوگوئیای موریتانی (۱۹۷۳ تا ۲۰۱۷)',
+ 'MRU' => 'اوگوئیای موریتانی',
'MTL' => 'لیرهٔ مالت',
'MTP' => 'پوند مالت',
'MUR' => 'روپیهٔ موریس',
@@ -658,7 +689,7 @@ $currencyNames = array(
'SBD' => 'دلار جزایر سلیمان',
'SCR' => 'روپیهٔ سیشل',
'SDD' => 'دینار سودان (۱۹۹۲ تا ۲۰۰۷)',
- 'SDG' => 'لیرهٔ سودان',
+ 'SDG' => 'پوند سودان',
'SEK' => 'کرون سوئد',
'SGD' => 'دلار سنگاپور',
'SHP' => 'پوند سنت هلن',
@@ -667,7 +698,8 @@ $currencyNames = array(
'SRD' => 'دلار سورینام',
'SRG' => 'گیلدر سورینام',
'SSP' => 'پوند سودان جنوبی',
- 'STD' => 'دوبرای سائوتومه و پرنسیپ',
+ 'STD' => 'دوبرای سائوتومه و پرنسیپ (۱۹۷۷ تا ۲۰۱۷)',
+ 'STN' => 'دوبرای سائوتومه و پرنسیپ',
'SUR' => 'روبل شوروی',
'SYP' => 'لیرهٔ سوریه',
'SZL' => 'لیلانگنی سوازیلند',
@@ -693,7 +725,9 @@ $currencyNames = array(
'UYP' => 'پزوی اوروگوئه (۱۹۷۵ تا ۱۹۹۳)',
'UYU' => 'پزوی اوروگوئه',
'UZS' => 'سوم ازبکستان',
- 'VEF' => 'بولیوار ونزوئلا',
+ 'VEB' => 'بولیوار ونزوئلا (۱۸۷۱ تا ۲۰۰۸)',
+ 'VEF' => 'بولیوار ونزوئلا (۲۰۰۸ تا ۲۰۱۸)',
+ 'VES' => 'بولیوار ونزوئلا',
'VND' => 'دانگ ویتنام',
'VUV' => 'واتوی وانوواتو',
'WST' => 'تالای ساموا',
@@ -704,7 +738,7 @@ $currencyNames = array(
'XFO' => 'فرانک طلای فرانسه',
'XOF' => 'فرانک CFA غرب افریقا',
'XPD' => 'پالادیم',
- 'XPF' => 'فرانک CFP',
+ 'XPF' => 'فرانک اقیانوسیه',
'XPT' => 'پلاتین',
'XXX' => 'ارز نامشخص',
'YDD' => 'دینار یمن',
@@ -715,33 +749,176 @@ $currencyNames = array(
'ZWD' => 'دلار زیمبابوه (۱۹۸۰ تا ۲۰۰۸)',
'ZWL' => 'دلار زیمبابوه (۲۰۰۹)',
'ZWR' => 'دلار زیمبابوه (۲۰۰۸)',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
+ 'AED' => 'AED',
'AFN' => '؋',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => 'A$',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => 'R$',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYN' => 'BYN',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
'CAD' => '$CA',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNH' => 'CNH',
'CNY' => '¥CN',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
'EUR' => '€',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
'GBP' => '£',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
'HKD' => '$HK',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
'ILS' => '₪',
'INR' => '₹',
+ 'IQD' => 'IQD',
'IRR' => 'ریال',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
'JPY' => '¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LTL' => 'LTL',
+ 'LVL' => 'LVL',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MRU' => 'MRU',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
'MXN' => '$MX',
+ 'MXP' => 'MXP',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
'NZD' => '$NZ',
- 'RUB' => '₽',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'STN' => 'STN',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
'THB' => '฿',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
'USD' => '$',
+ 'USN' => 'USN',
+ 'USS' => 'USS',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VES' => 'VES',
'VND' => '₫',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
'XAF' => 'FCFA',
'XCD' => '$EC',
'XOF' => 'CFA',
'XPF' => 'CFPF',
-);
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'جزایر آسنسیون',
'AD' => 'آندورا',
'AE' => 'امارات متحدهٔ عربی',
@@ -750,7 +927,6 @@ $countryNames = array(
'AI' => 'آنگویلا',
'AL' => 'آلبانی',
'AM' => 'ارمنستان',
- 'AN' => 'آنتیل هلند',
'AO' => 'آنگولا',
'AQ' => 'جنوبگان',
'AR' => 'آرژانتین',
@@ -773,11 +949,11 @@ $countryNames = array(
'BM' => 'برمودا',
'BN' => 'برونئی',
'BO' => 'بولیوی',
- 'BQ' => 'بونیر',
+ 'BQ' => 'جزایر کارائیب هلند',
'BR' => 'برزیل',
'BS' => 'باهاما',
'BT' => 'بوتان',
- 'BV' => 'جزیره بووه',
+ 'BV' => 'جزیرهٔ بووه',
'BW' => 'بوتسوانا',
'BY' => 'بلاروس',
'BZ' => 'بلیز',
@@ -817,6 +993,7 @@ $countryNames = array(
'ES' => 'اسپانیا',
'ET' => 'اتیوپی',
'EU' => 'اتحادیهٔ اروپا',
+ 'EZ' => 'منطقه یورو',
'FI' => 'فنلاند',
'FJ' => 'فیجی',
'FK' => 'جزایر فالکلند',
@@ -837,7 +1014,7 @@ $countryNames = array(
'GP' => 'گوادلوپ',
'GQ' => 'گینهٔ استوایی',
'GR' => 'یونان',
- 'GS' => 'جورجیای جنوبی و جزایر ساندویچ جنوبی',
+ 'GS' => 'جزایر جورجیای جنوبی و ساندویچ جنوبی',
'GT' => 'گواتمالا',
'GU' => 'گوام',
'GW' => 'گینهٔ بیسائو',
@@ -867,7 +1044,7 @@ $countryNames = array(
'KG' => 'قرقیزستان',
'KH' => 'کامبوج',
'KI' => 'کیریباتی',
- 'KM' => 'کومورو',
+ 'KM' => 'کومور',
'KN' => 'سنت کیتس و نویس',
'KP' => 'کرهٔ شمالی',
'KR' => 'کرهٔ جنوبی',
@@ -958,7 +1135,7 @@ $countryNames = array(
'SO' => 'سومالی',
'SR' => 'سورینام',
'SS' => 'سودان جنوبی',
- 'ST' => 'پرینسیپ و سائوتومه',
+ 'ST' => 'سائوتومه و پرینسیپ',
'SV' => 'السالوادور',
'SX' => 'سنت مارتن',
'SY' => 'سوریه',
@@ -966,12 +1143,12 @@ $countryNames = array(
'TA' => 'تریستان دا کونا',
'TC' => 'جزایر تورکس و کایکوس',
'TD' => 'چاد',
- 'TF' => 'قلمروهای جنوبی فرانسه',
+ 'TF' => 'سرزمین‌های جنوب فرانسه',
'TG' => 'توگو',
'TH' => 'تایلند',
'TJ' => 'تاجیکستان',
'TK' => 'توکلائو',
- 'TL' => 'تیمور شرقی',
+ 'TL' => 'تیمور-لسته',
'TM' => 'ترکمنستان',
'TN' => 'تونس',
'TO' => 'تونگا',
@@ -983,11 +1160,12 @@ $countryNames = array(
'UA' => 'اوکراین',
'UG' => 'اوگاندا',
'UM' => 'جزایر دورافتادهٔ ایالات متحده',
+ 'UN' => 'سازمان ملل',
'US' => 'ایالات متحده',
'UY' => 'اروگوئه',
'UZ' => 'ازبکستان',
'VA' => 'واتیکان',
- 'VC' => 'سنت وینسنت و گرنادین‌ها',
+ 'VC' => 'سنت وینسنت و گرنادین',
'VE' => 'ونزوئلا',
'VG' => 'جزایر ویرجین بریتانیا',
'VI' => 'جزایر ویرجین ایالات متحده',
@@ -1001,9 +1179,11 @@ $countryNames = array(
'ZA' => 'افریقای جنوبی',
'ZM' => 'زامبیا',
'ZW' => 'زیمبابوه',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-one' => '{0} سده',
+ 'century-other' => '{0} سده',
'day-future-one' => '{0} روز بعد',
'day-future-other' => '{0} روز بعد',
'day-narrow-future-one' => '{0} روز بعد',
@@ -1018,6 +1198,18 @@ $timeUnits = array(
'day-short-future-other' => '{0} روز بعد',
'day-short-past-one' => '{0} روز پیش',
'day-short-past-other' => '{0} روز پیش',
+ 'fri-future-one' => '{0} جمعهٔ بعد',
+ 'fri-future-other' => '{0} جمعهٔ بعد',
+ 'fri-narrow-future-one' => '{0} جمعهٔ بعد',
+ 'fri-narrow-future-other' => '{0} جمعهٔ بعد',
+ 'fri-narrow-past-one' => '{0} جمعهٔ پیش',
+ 'fri-narrow-past-other' => '{0} جمعهٔ پیش',
+ 'fri-past-one' => '{0} جمعهٔ پیش',
+ 'fri-past-other' => '{0} جمعهٔ پیش',
+ 'fri-short-future-one' => '{0} جمعهٔ بعد',
+ 'fri-short-future-other' => '{0} جمعهٔ بعد',
+ 'fri-short-past-one' => '{0} جمعهٔ پیش',
+ 'fri-short-past-other' => '{0} جمعهٔ پیش',
'hour-future-one' => '{0} ساعت بعد',
'hour-future-other' => '{0} ساعت بعد',
'hour-narrow-future-one' => '{0} ساعت بعد',
@@ -1050,6 +1242,18 @@ $timeUnits = array(
'minute-short-future-other' => '{0} دقیقه بعد',
'minute-short-past-one' => '{0} دقیقه پیش',
'minute-short-past-other' => '{0} دقیقه پیش',
+ 'mon-future-one' => '{0} دوشنبهٔ بعد',
+ 'mon-future-other' => '{0} دوشنبهٔ بعد',
+ 'mon-narrow-future-one' => '{0} دوشنبهٔ بعد',
+ 'mon-narrow-future-other' => '{0} دوشنبهٔ بعد',
+ 'mon-narrow-past-one' => '{0} دوشنبهٔ پیش',
+ 'mon-narrow-past-other' => '{0} دوشنبهٔ پیش',
+ 'mon-past-one' => '{0} دوشنبهٔ پیش',
+ 'mon-past-other' => '{0} دوشنبهٔ پیش',
+ 'mon-short-future-one' => '{0} دوشنبهٔ بعد',
+ 'mon-short-future-other' => '{0} دوشنبهٔ بعد',
+ 'mon-short-past-one' => '{0} دوشنبهٔ پیش',
+ 'mon-short-past-other' => '{0} دوشنبهٔ پیش',
'month-future-one' => '{0} ماه بعد',
'month-future-other' => '{0} ماه بعد',
'month-narrow-future-one' => '{0} ماه بعد',
@@ -1066,18 +1270,30 @@ $timeUnits = array(
'month-short-past-other' => '{0} ماه پیش',
'nanosecond-one' => '{0} نانوثانیه',
'nanosecond-other' => '{0} نانوثانیه',
- 'quarter-future-one' => '{0} سه‌ماهه بعد',
- 'quarter-future-other' => '{0} سه‌ماهه بعد',
- 'quarter-narrow-future-one' => '{0} سه‌ماهه بعد',
- 'quarter-narrow-future-other' => '{0} سه‌ماهه بعد',
- 'quarter-narrow-past-one' => '{0} سه‌ماهه پیش',
- 'quarter-narrow-past-other' => '{0} سه‌ماهه پیش',
- 'quarter-past-one' => '{0} سه‌ماهه پیش',
- 'quarter-past-other' => '{0} سه‌ماهه پیش',
- 'quarter-short-future-one' => '{0} سه‌ماهه بعد',
- 'quarter-short-future-other' => '{0} سه‌ماهه بعد',
- 'quarter-short-past-one' => '{0} سه‌ماهه پیش',
- 'quarter-short-past-other' => '{0} سه‌ماهه پیش',
+ 'quarter-future-one' => '{0} سه‌ماههٔ بعد',
+ 'quarter-future-other' => '{0} سه‌ماههٔ بعد',
+ 'quarter-narrow-future-one' => '{0} سه‌ماههٔ بعد',
+ 'quarter-narrow-future-other' => '{0} سه‌ماههٔ بعد',
+ 'quarter-narrow-past-one' => '{0} سه‌ماههٔ پیش',
+ 'quarter-narrow-past-other' => '{0} سه‌ماههٔ پیش',
+ 'quarter-past-one' => '{0} سه‌ماههٔ پیش',
+ 'quarter-past-other' => '{0} سه‌ماههٔ پیش',
+ 'quarter-short-future-one' => '{0} سه‌ماههٔ بعد',
+ 'quarter-short-future-other' => '{0} سه‌ماههٔ بعد',
+ 'quarter-short-past-one' => '{0} سه‌ماههٔ پیش',
+ 'quarter-short-past-other' => '{0} سه‌ماههٔ پیش',
+ 'sat-future-one' => '{0} شنبهٔ بعد',
+ 'sat-future-other' => '{0} شنبهٔ بعد',
+ 'sat-narrow-future-one' => '{0} شنبهٔ بعد',
+ 'sat-narrow-future-other' => '{0} شنبهٔ بعد',
+ 'sat-narrow-past-one' => '{0} شنبهٔ پیش',
+ 'sat-narrow-past-other' => '{0} شنبهٔ پیش',
+ 'sat-past-one' => '{0} شنبهٔ پیش',
+ 'sat-past-other' => '{0} شنبهٔ پیش',
+ 'sat-short-future-one' => '{0} شنبهٔ بعد',
+ 'sat-short-future-other' => '{0} شنبهٔ بعد',
+ 'sat-short-past-one' => '{0} شنبهٔ پیش',
+ 'sat-short-past-other' => '{0} شنبهٔ پیش',
'second-future-one' => '{0} ثانیه بعد',
'second-future-other' => '{0} ثانیه بعد',
'second-narrow-future-one' => '{0} ثانیه بعد',
@@ -1092,6 +1308,54 @@ $timeUnits = array(
'second-short-future-other' => '{0} ثانیه بعد',
'second-short-past-one' => '{0} ثانیه پیش',
'second-short-past-other' => '{0} ثانیه پیش',
+ 'sun-future-one' => '{0} یکشنبهٔ بعد',
+ 'sun-future-other' => '{0} یکشنبهٔ بعد',
+ 'sun-narrow-future-one' => '{0} یکشنبهٔ بعد',
+ 'sun-narrow-future-other' => '{0} یکشنبهٔ بعد',
+ 'sun-narrow-past-one' => '{0} یکشنبهٔ پیش',
+ 'sun-narrow-past-other' => '{0} یکشنبهٔ پیش',
+ 'sun-past-one' => '{0} یکشنبهٔ پیش',
+ 'sun-past-other' => '{0} یکشنبهٔ پیش',
+ 'sun-short-future-one' => '{0} یکشنبهٔ بعد',
+ 'sun-short-future-other' => '{0} یکشنبهٔ بعد',
+ 'sun-short-past-one' => '{0} یکشنبهٔ پیش',
+ 'sun-short-past-other' => '{0} یکشنبهٔ پیش',
+ 'thu-future-one' => '{0} پنجشنبهٔ بعد',
+ 'thu-future-other' => '{0} پنجشنبهٔ بعد',
+ 'thu-narrow-future-one' => '{0} پنجشنبهٔ بعد',
+ 'thu-narrow-future-other' => '{0} پنجشنبهٔ بعد',
+ 'thu-narrow-past-one' => '{0} پنجشنبهٔ پیش',
+ 'thu-narrow-past-other' => '{0} پنجشنبهٔ پیش',
+ 'thu-past-one' => '{0} پنجشنبهٔ پیش',
+ 'thu-past-other' => '{0} پنجشنبهٔ پیش',
+ 'thu-short-future-one' => '{0} پنجشنبهٔ بعد',
+ 'thu-short-future-other' => '{0} پنجشنبهٔ بعد',
+ 'thu-short-past-one' => '{0} پنجشنبهٔ پیش',
+ 'thu-short-past-other' => '{0} پنجشنبهٔ پیش',
+ 'tue-future-one' => '{0} سه‌شنبهٔ بعد',
+ 'tue-future-other' => '{0} سه‌شنبهٔ بعد',
+ 'tue-narrow-future-one' => '{0} سه‌شنبهٔ بعد',
+ 'tue-narrow-future-other' => '{0} سه‌شنبهٔ بعد',
+ 'tue-narrow-past-one' => '{0} سه‌شنبهٔ پیش',
+ 'tue-narrow-past-other' => '{0} سه‌شنبهٔ پیش',
+ 'tue-past-one' => '{0} سه‌شنبهٔ پیش',
+ 'tue-past-other' => '{0} سه‌شنبهٔ پیش',
+ 'tue-short-future-one' => '{0} سه‌شنبهٔ بعد',
+ 'tue-short-future-other' => '{0} سه‌شنبهٔ بعد',
+ 'tue-short-past-one' => '{0} سه‌شنبهٔ پیش',
+ 'tue-short-past-other' => '{0} سه‌شنبهٔ پیش',
+ 'wed-future-one' => '{0} چهارشنبهٔ بعد',
+ 'wed-future-other' => '{0} چهارشنبهٔ بعد',
+ 'wed-narrow-future-one' => '{0} چهارشنبهٔ بعد',
+ 'wed-narrow-future-other' => '{0} چهارشنبهٔ بعد',
+ 'wed-narrow-past-one' => '{0} چهارشنبهٔ پیش',
+ 'wed-narrow-past-other' => '{0} چهارشنبهٔ پیش',
+ 'wed-past-one' => '{0} چهارشنبهٔ پیش',
+ 'wed-past-other' => '{0} چهارشنبهٔ پیش',
+ 'wed-short-future-one' => '{0} چهارشنبهٔ بعد',
+ 'wed-short-future-other' => '{0} چهارشنبهٔ بعد',
+ 'wed-short-past-one' => '{0} چهارشنبهٔ پیش',
+ 'wed-short-past-other' => '{0} چهارشنبهٔ پیش',
'week-future-one' => '{0} هفته بعد',
'week-future-other' => '{0} هفته بعد',
'week-narrow-future-one' => '{0} هفته بعد',
@@ -1120,4 +1384,4 @@ $timeUnits = array(
'year-short-future-other' => '{0} سال بعد',
'year-short-past-one' => '{0} سال پیش',
'year-short-past-other' => '{0} سال پیش',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesFf.php b/MLEB/cldr/CldrNames/CldrNamesFf.php
index 576f4019..e9b81019 100644
--- a/MLEB/cldr/CldrNames/CldrNamesFf.php
+++ b/MLEB/cldr/CldrNames/CldrNamesFf.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'ak' => 'Akaan',
'am' => 'Amarik',
'ar' => 'Aarabeere',
@@ -46,9 +46,9 @@ $languageNames = array(
'yo' => 'Yorrubaa',
'zh' => 'Sinuwaare',
'zu' => 'Suluŋkoore',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'AED' => 'Dirham Emiraati Araab Dentuɗi',
'AOA' => 'Kwansaa Anngolaa',
'AUD' => 'Dolaar Ostaraalii',
@@ -79,7 +79,8 @@ $currencyNames = array(
'LYD' => 'Dinaar Libi',
'MAD' => 'Diraham Maruk',
'MGA' => 'Ariyari Madagaskaar',
- 'MRO' => 'Ugiyya Muritani',
+ 'MRO' => 'Ugiyya Muritani (1973–2017)',
+ 'MRU' => 'Ugiyya Muritani',
'MUR' => 'Rupii Moriis',
'MWK' => 'Kuwacca Malaawi',
'MZM' => 'Metikal Mosammbik',
@@ -92,7 +93,8 @@ $currencyNames = array(
'SHP' => 'Liibar Sent Helen',
'SLL' => 'Lewoon Seraa Liyon',
'SOS' => 'Siling Soomali',
- 'STD' => 'Dobra Sawo Tome e Prensipe',
+ 'STD' => 'Dobra Sawo Tome e Prensipe (1977–2017)',
+ 'STN' => 'Dobra Sawo Tome e Prensipe',
'SZL' => 'Lilangeni Swaasilannda',
'TND' => 'Dinaar Tunisii',
'TZS' => 'Siling Tansanii',
@@ -104,9 +106,9 @@ $currencyNames = array(
'ZMK' => 'Kuwacca Sammbi (1968–2012)',
'ZMW' => 'Kuwacca Sammbi',
'ZWD' => 'Dolaar Simbaabuwe',
-);
+];
-$countryNames = array(
+$countryNames = [
'AD' => 'Anndoora',
'AE' => 'Emiraat Araab Denntuɗe',
'AF' => 'Afganistaan',
@@ -114,7 +116,6 @@ $countryNames = array(
'AI' => 'Anngiyaa',
'AL' => 'Albanii',
'AM' => 'Armenii',
- 'AN' => 'Antiiye Nederlanndeeje',
'AO' => 'Anngolaa',
'AR' => 'Arjantiin',
'AS' => 'Samowa Amerik',
@@ -332,4 +333,4 @@ $countryNames = array(
'ZA' => 'Afrik bŋ Worgo',
'ZM' => 'Sammbi',
'ZW' => 'Simbaabuwe',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesFi.php b/MLEB/cldr/CldrNames/CldrNamesFi.php
index 1015e9a7..7dfee57d 100644
--- a/MLEB/cldr/CldrNames/CldrNamesFi.php
+++ b/MLEB/cldr/CldrNames/CldrNamesFi.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'afar',
'ab' => 'abhaasi',
'ace' => 'atšeh',
@@ -17,7 +17,7 @@ $languageNames = array(
'akk' => 'akkadi',
'akz' => 'alabama',
'ale' => 'aleutti',
- 'aln' => 'geg',
+ 'aln' => 'gegi',
'alt' => 'altai',
'am' => 'amhara',
'an' => 'aragonia',
@@ -30,6 +30,7 @@ $languageNames = array(
'aro' => 'araona',
'arp' => 'arapaho',
'arq' => 'algerianarabia',
+ 'ars' => 'arabia – najd',
'arw' => 'arawak',
'ary' => 'marokonarabia',
'arz' => 'egyptinarabia',
@@ -42,7 +43,6 @@ $languageNames = array(
'awa' => 'awadhi',
'ay' => 'aimara',
'az' => 'azeri',
- 'azb' => 'eteläazeri',
'ba' => 'baškiiri',
'bal' => 'belutši',
'ban' => 'bali',
@@ -59,6 +59,7 @@ $languageNames = array(
'bfd' => 'fut',
'bfq' => 'badaga',
'bg' => 'bulgaria',
+ 'bgn' => 'länsibelutši',
'bho' => 'bhodžpuri',
'bi' => 'bislama',
'bik' => 'bikol',
@@ -106,6 +107,7 @@ $languageNames = array(
'cps' => 'capiznon',
'cr' => 'cree',
'crh' => 'krimintataari',
+ 'crs' => 'seychellienkreoli',
'cs' => 'tšekki',
'csb' => 'kašubi',
'cu' => 'kirkkoslaavi',
@@ -150,14 +152,14 @@ $languageNames = array(
'eo' => 'esperanto',
'es' => 'espanja',
'es-419' => 'amerikanespanja',
- 'es-es' => 'espanjanespanja',
+ 'es-es' => 'euroopanespanja',
'es-mx' => 'meksikonespanja',
'esu' => 'alaskanjupik',
'et' => 'viro',
'eu' => 'baski',
'ewo' => 'ewondo',
'ext' => 'extremadura',
- 'fa' => 'farsi',
+ 'fa' => 'persia',
'fan' => 'fang',
'fat' => 'fanti',
'ff' => 'fulani',
@@ -170,7 +172,7 @@ $languageNames = array(
'fr' => 'ranska',
'fr-ca' => 'kanadanranska',
'fr-ch' => 'sveitsinranska',
- 'frc' => 'cajun',
+ 'frc' => 'cajunranska',
'frm' => 'keskiranska',
'fro' => 'muinaisranska',
'frp' => 'arpitaani',
@@ -317,7 +319,9 @@ $languageNames = array(
'ln' => 'lingala',
'lo' => 'lao',
'lol' => 'mongo',
+ 'lou' => 'louisianankreoli',
'loz' => 'lozi',
+ 'lrc' => 'pohjoisluri',
'lt' => 'liettua',
'ltg' => 'latgalli',
'lu' => 'katanganluba',
@@ -363,7 +367,7 @@ $languageNames = array(
'ms' => 'malaiji',
'mt' => 'malta',
'mua' => 'mundang',
- 'mul' => 'monia kieliä',
+ 'mul' => 'useita kieliä',
'mus' => 'creek',
'mwl' => 'mirandeesi',
'mwr' => 'marwari',
@@ -379,6 +383,7 @@ $languageNames = array(
'nb' => 'norjan bokmål',
'nd' => 'pohjois-ndebele',
'nds' => 'alasaksa',
+ 'nds-nl' => 'alankomaidenalasaksa',
'ne' => 'nepali',
'new' => 'newari',
'ng' => 'ndonga',
@@ -419,6 +424,7 @@ $languageNames = array(
'pap' => 'papiamentu',
'pau' => 'palau',
'pcd' => 'picardi',
+ 'pcm' => 'nigerianpidgin',
'pdc' => 'pennsylvaniansaksa',
'pdt' => 'plautdietsch',
'peo' => 'muinaispersia',
@@ -434,7 +440,7 @@ $languageNames = array(
'ps' => 'paštu',
'pt' => 'portugali',
'pt-br' => 'brasilianportugali',
- 'pt-pt' => 'portugalinportugali',
+ 'pt-pt' => 'euroopanportugali',
'qu' => 'ketšua',
'quc' => 'kʼicheʼ',
'qug' => 'chimborazonylänköketšua',
@@ -471,6 +477,7 @@ $languageNames = array(
'sco' => 'skotti',
'sd' => 'sindhi',
'sdc' => 'sassarinsardi',
+ 'sdh' => 'eteläkurdi',
'se' => 'pohjoissaame',
'see' => 'seneca',
'seh' => 'sena',
@@ -513,8 +520,8 @@ $languageNames = array(
'sux' => 'sumeri',
'sv' => 'ruotsi',
'sw' => 'swahili',
+ 'sw-cd' => 'kingwana',
'swb' => 'komori',
- 'swc' => 'kingwana',
'syc' => 'muinaissyyria',
'syr' => 'syyria',
'szl' => 'sleesia',
@@ -562,7 +569,7 @@ $languageNames = array(
'uga' => 'ugarit',
'uk' => 'ukraina',
'umb' => 'mbundu',
- 'und' => 'määrittämätön kieli',
+ 'und' => 'tuntematon kieli',
'ur' => 'urdu',
'uz' => 'uzbekki',
'vai' => 'vai',
@@ -581,6 +588,7 @@ $languageNames = array(
'wal' => 'wolaitta',
'war' => 'waray',
'was' => 'washo',
+ 'wbp' => 'warlpiri',
'wo' => 'wolof',
'wuu' => 'wu-kiina',
'xal' => 'kalmukki',
@@ -608,9 +616,9 @@ $languageNames = array(
'zun' => 'zuni',
'zxx' => 'ei kielellistä sisältöä',
'zza' => 'zaza',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'ADP' => 'Andorran peseta',
'AED' => 'Arabiemiirikuntien dirhami',
'AFA' => 'Afganistanin afgaani (1927–2002)',
@@ -665,7 +673,8 @@ $currencyNames = array(
'BUK' => 'Burman kyat',
'BWP' => 'Botswanan pula',
'BYB' => 'Valko-Venäjän uusi rupla (1994–1999)',
- 'BYR' => 'Valko-Venäjän rupla',
+ 'BYN' => 'Valko-Venäjän rupla',
+ 'BYR' => 'Valko-Venäjän rupla (2000–2016)',
'BZD' => 'Belizen dollari',
'CAD' => 'Kanadan dollari',
'CDF' => 'Kongon frangi',
@@ -675,11 +684,12 @@ $currencyNames = array(
'CLE' => 'Chilen escudo',
'CLF' => 'Chilen unidades de fomento',
'CLP' => 'Chilen peso',
+ 'CNH' => 'Kiinan juan (offshore)',
'CNX' => 'Kiinan kansanpankin dollari',
- 'CNY' => 'Kiinan yuan',
+ 'CNY' => 'Kiinan juan',
'COP' => 'Kolumbian peso',
'COU' => 'Kolumbian unidad de valor real',
- 'CRC' => 'Costa Rican colon',
+ 'CRC' => 'Costa Rican colón',
'CSD' => 'Serbian dinaari (2002–2006)',
'CSK' => 'Tšekkoslovakian kova koruna',
'CUC' => 'Kuuban vaihdettava peso',
@@ -698,7 +708,7 @@ $currencyNames = array(
'EEK' => 'Viron kruunu',
'EGP' => 'Egyptin punta',
'ERN' => 'Eritrean nakfa',
- 'ESA' => 'Espanjan peseta (A–tili)',
+ 'ESA' => 'Espanjan peseta (A-tili)',
'ESB' => 'Espanjan peseta (vaihdettava tili)',
'ESP' => 'Espanjan peseta',
'ETB' => 'Etiopian birr',
@@ -779,7 +789,8 @@ $currencyNames = array(
'MMK' => 'Myanmarin kyat',
'MNT' => 'Mongolian tugrik',
'MOP' => 'Macaon pataca',
- 'MRO' => 'Mauritanian ouguiya',
+ 'MRO' => 'Mauritanian ouguiya (1973–2017)',
+ 'MRU' => 'Mauritanian ouguiya',
'MTL' => 'Maltan liira',
'MTP' => 'Maltan punta',
'MUR' => 'Mauritiuksen rupia',
@@ -795,8 +806,8 @@ $currencyNames = array(
'MZN' => 'Mosambikin metical',
'NAD' => 'Namibian dollari',
'NGN' => 'Nigerian naira',
- 'NIC' => 'Nicaraguan cordoba (1988–1991)',
- 'NIO' => 'Nicaraguan cordoba',
+ 'NIC' => 'Nicaraguan córdoba (1988–1991)',
+ 'NIO' => 'Nicaraguan córdoba',
'NLG' => 'Alankomaiden guldeni',
'NOK' => 'Norjan kruunu',
'NPR' => 'Nepalin rupia',
@@ -804,13 +815,13 @@ $currencyNames = array(
'OMR' => 'Omanin rial',
'PAB' => 'Panaman balboa',
'PEI' => 'Perun inti',
- 'PEN' => 'Perun uusi sol',
+ 'PEN' => 'Perun sol',
'PES' => 'Perun sol (1863–1965)',
'PGK' => 'Papua-Uuden-Guinean kina',
'PHP' => 'Filippiinien peso',
'PKR' => 'Pakistanin rupia',
- 'PLN' => 'Puolan zloty',
- 'PLZ' => 'Puolan zloty (1950–1995)',
+ 'PLN' => 'Puolan złoty',
+ 'PLZ' => 'Puolan złoty (1950–1995)',
'PTE' => 'Portugalin escudo',
'PYG' => 'Paraguayn guarani',
'QAR' => 'Qatarin rial',
@@ -834,12 +845,13 @@ $currencyNames = array(
'SKK' => 'Slovakian koruna',
'SLL' => 'Sierra Leonen leone',
'SOS' => 'Somalian šillinki',
- 'SRD' => 'Surinamin dollari',
- 'SRG' => 'Surinamin guldeni',
+ 'SRD' => 'Surinamen dollari',
+ 'SRG' => 'Surinamen guldeni',
'SSP' => 'Etelä-Sudanin punta',
- 'STD' => 'São Tomén ja Príncipen dobra',
+ 'STD' => 'São Tomén ja Príncipen dobra (1977–2017)',
+ 'STN' => 'São Tomén ja Príncipen dobra',
'SUR' => 'Neuvostoliiton rupla',
- 'SVC' => 'El Salvadorin colon',
+ 'SVC' => 'El Salvadorin colón',
'SYP' => 'Syyrian punta',
'SZL' => 'Swazimaan lilangeni',
'THB' => 'Thaimaan baht',
@@ -866,8 +878,9 @@ $currencyNames = array(
'UYP' => 'Uruguayn peso (1975–1993)',
'UYU' => 'Uruguayn peso',
'UZS' => 'Uzbekistanin som',
- 'VEB' => 'Venezuelan bolivar (1871–2008)',
- 'VEF' => 'Venezuelan bolivar',
+ 'VEB' => 'Venezuelan bolívar (1871–2008)',
+ 'VEF' => 'Venezuelan bolívar (2008–2018)',
+ 'VES' => 'Venezuelan suvereeni bolívar',
'VND' => 'Vietnamin dong',
'VNN' => 'Vietnamin dong (1978–1985)',
'VUV' => 'Vanuatun vatu',
@@ -891,7 +904,7 @@ $currencyNames = array(
'XRE' => 'RINET-rahastot',
'XSU' => 'etelä-amerikkalaisen ALBA:n laskentayksikkö sucre',
'XTS' => 'testaustarkoitukseen varattu valuuttakoodi',
- 'XUA' => 'afrikkalainen ADB-laskentayksikkö',
+ 'XUA' => 'afrikkalainen AfDB-laskentayksikkö',
'XXX' => 'tuntematon rahayksikkö',
'YDD' => 'Jemenin dinaari',
'YER' => 'Jemenin rial',
@@ -908,9 +921,9 @@ $currencyNames = array(
'ZWD' => 'Zimbabwen dollari (1980–2008)',
'ZWL' => 'Zimbabwen dollari (2009)',
'ZWR' => 'Zimbabwen dollari (2008)',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'ADP' => 'ADP',
'AED' => 'AED',
'AFA' => 'AFA',
@@ -965,6 +978,7 @@ $currencySymbols = array(
'BUK' => 'BUK',
'BWP' => 'BWP',
'BYB' => 'BYB',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CAD',
@@ -975,6 +989,7 @@ $currencySymbols = array(
'CLE' => 'CLE',
'CLF' => 'CLF',
'CLP' => 'CLP',
+ 'CNH' => 'CNH',
'CNX' => 'CNX',
'CNY' => 'CNY',
'COP' => 'COP',
@@ -1080,6 +1095,7 @@ $currencySymbols = array(
'MNT' => 'MNT',
'MOP' => 'MOP',
'MRO' => 'MRO',
+ 'MRU' => 'MRU',
'MTL' => 'MTL',
'MTP' => 'MTP',
'MUR' => 'MUR',
@@ -1138,6 +1154,7 @@ $currencySymbols = array(
'SRG' => 'SRG',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'STN',
'SUR' => 'SUR',
'SVC' => 'SVC',
'SYP' => 'SYP',
@@ -1168,6 +1185,7 @@ $currencySymbols = array(
'UZS' => 'UZS',
'VEB' => 'VEB',
'VEF' => 'VEF',
+ 'VES' => 'VES',
'VND' => 'VND',
'VNN' => 'VNN',
'VUV' => 'VUV',
@@ -1182,6 +1200,7 @@ $currencySymbols = array(
'XCD' => 'XCD',
'XDR' => 'XDR',
'XEU' => 'XEU',
+ 'XFO' => 'XFO',
'XFU' => 'XFU',
'XOF' => 'CFA',
'XPD' => 'XPD',
@@ -1207,9 +1226,9 @@ $currencySymbols = array(
'ZWD' => 'ZWD',
'ZWL' => 'ZWL',
'ZWR' => 'ZWR',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'Ascension-saari',
'AD' => 'Andorra',
'AE' => 'Arabiemiirikunnat',
@@ -1218,7 +1237,6 @@ $countryNames = array(
'AI' => 'Anguilla',
'AL' => 'Albania',
'AM' => 'Armenia',
- 'AN' => 'Alankomaiden Antillit',
'AO' => 'Angola',
'AQ' => 'Antarktis',
'AR' => 'Argentiina',
@@ -1285,6 +1303,7 @@ $countryNames = array(
'ES' => 'Espanja',
'ET' => 'Etiopia',
'EU' => 'Euroopan unioni',
+ 'EZ' => 'euroalue',
'FI' => 'Suomi',
'FJ' => 'Fidži',
'FK' => 'Falklandinsaaret',
@@ -1424,7 +1443,7 @@ $countryNames = array(
'SM' => 'San Marino',
'SN' => 'Senegal',
'SO' => 'Somalia',
- 'SR' => 'Surinam',
+ 'SR' => 'Suriname',
'SS' => 'Etelä-Sudan',
'ST' => 'São Tomé ja Príncipe',
'SV' => 'El Salvador',
@@ -1451,6 +1470,7 @@ $countryNames = array(
'UA' => 'Ukraina',
'UG' => 'Uganda',
'UM' => 'Yhdysvaltain erillissaaret',
+ 'UN' => 'YK',
'US' => 'USA',
'UY' => 'Uruguay',
'UZ' => 'Uzbekistan',
@@ -1469,9 +1489,11 @@ $countryNames = array(
'ZA' => 'Etelä-Afrikka',
'ZM' => 'Sambia',
'ZW' => 'Zimbabwe',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-one' => '{0} vuosisata',
+ 'century-other' => '{0} vuosisataa',
'day-future-one' => '{0} päivän päästä',
'day-future-other' => '{0} päivän päästä',
'day-narrow-future-one' => '{0} pv päästä',
@@ -1486,6 +1508,18 @@ $timeUnits = array(
'day-short-future-other' => '{0} pv päästä',
'day-short-past-one' => '{0} pv sitten',
'day-short-past-other' => '{0} pv sitten',
+ 'fri-future-one' => '{0} perjantain päästä',
+ 'fri-future-other' => '{0} perjantain päästä',
+ 'fri-narrow-future-one' => '{0} pe päästä',
+ 'fri-narrow-future-other' => '{0} pe päästä',
+ 'fri-narrow-past-one' => '{0} pe sitten',
+ 'fri-narrow-past-other' => '{0} pe sitten',
+ 'fri-past-one' => '{0} perjantai sitten',
+ 'fri-past-other' => '{0} perjantaita sitten',
+ 'fri-short-future-one' => '{0} pe päästä',
+ 'fri-short-future-other' => '{0} pe päästä',
+ 'fri-short-past-one' => '{0} pe sitten',
+ 'fri-short-past-other' => '{0} pe sitten',
'hour-future-one' => '{0} tunnin päästä',
'hour-future-other' => '{0} tunnin päästä',
'hour-narrow-future-one' => '{0} t päästä',
@@ -1518,6 +1552,18 @@ $timeUnits = array(
'minute-short-future-other' => '{0} min päästä',
'minute-short-past-one' => '{0} min sitten',
'minute-short-past-other' => '{0} min sitten',
+ 'mon-future-one' => '{0} maanantain päästä',
+ 'mon-future-other' => '{0} maanantain päästä',
+ 'mon-narrow-future-one' => '{0} ma päästä',
+ 'mon-narrow-future-other' => '{0} ma päästä',
+ 'mon-narrow-past-one' => '{0} ma sitten',
+ 'mon-narrow-past-other' => '{0} ma sitten',
+ 'mon-past-one' => '{0} maanantai sitten',
+ 'mon-past-other' => '{0} maanantaita sitten',
+ 'mon-short-future-one' => '{0} ma päästä',
+ 'mon-short-future-other' => '{0} ma päästä',
+ 'mon-short-past-one' => '{0} ma sitten',
+ 'mon-short-past-other' => '{0} ma sitten',
'month-future-one' => '{0} kuukauden päästä',
'month-future-other' => '{0} kuukauden päästä',
'month-narrow-future-one' => '{0} kk päästä',
@@ -1545,7 +1591,19 @@ $timeUnits = array(
'quarter-short-future-one' => '{0} neljänneksen päästä',
'quarter-short-future-other' => '{0} neljänneksen päästä',
'quarter-short-past-one' => '{0} neljännes sitten',
- 'quarter-short-past-other' => '{0} neljännes sitten',
+ 'quarter-short-past-other' => '{0} neljännestä sitten',
+ 'sat-future-one' => '{0} lauantain päästä',
+ 'sat-future-other' => '{0} lauantain päästä',
+ 'sat-narrow-future-one' => '{0} la päästä',
+ 'sat-narrow-future-other' => '{0} la päästä',
+ 'sat-narrow-past-one' => '{0} la sitten',
+ 'sat-narrow-past-other' => '{0} la sitten',
+ 'sat-past-one' => '{0} lauantai sitten',
+ 'sat-past-other' => '{0} lauantaita sitten',
+ 'sat-short-future-one' => '{0} la päästä',
+ 'sat-short-future-other' => '{0} la päästä',
+ 'sat-short-past-one' => '{0} la sitten',
+ 'sat-short-past-other' => '{0} la sitten',
'second-future-one' => '{0} sekunnin päästä',
'second-future-other' => '{0} sekunnin päästä',
'second-narrow-future-one' => '{0} s päästä',
@@ -1560,6 +1618,54 @@ $timeUnits = array(
'second-short-future-other' => '{0} s päästä',
'second-short-past-one' => '{0} s sitten',
'second-short-past-other' => '{0} s sitten',
+ 'sun-future-one' => '{0} sunnuntain päästä',
+ 'sun-future-other' => '{0} sunnuntain päästä',
+ 'sun-narrow-future-one' => '{0} su päästä',
+ 'sun-narrow-future-other' => '{0} su päästä',
+ 'sun-narrow-past-one' => '{0} su sitten',
+ 'sun-narrow-past-other' => '{0} su sitten',
+ 'sun-past-one' => '{0} sunnuntai sitten',
+ 'sun-past-other' => '{0} sunnuntaita sitten',
+ 'sun-short-future-one' => '{0} su päästä',
+ 'sun-short-future-other' => '{0} su päästä',
+ 'sun-short-past-one' => '{0} su sitten',
+ 'sun-short-past-other' => '{0} su sitten',
+ 'thu-future-one' => '{0} torstain päästä',
+ 'thu-future-other' => '{0} torstain päästä',
+ 'thu-narrow-future-one' => '{0} to päästä',
+ 'thu-narrow-future-other' => '{0} to päästä',
+ 'thu-narrow-past-one' => '{0} to sitten',
+ 'thu-narrow-past-other' => '{0} to sitten',
+ 'thu-past-one' => '{0} torstai sitten',
+ 'thu-past-other' => '{0} torstaita sitten',
+ 'thu-short-future-one' => '{0} to päästä',
+ 'thu-short-future-other' => '{0} to päästä',
+ 'thu-short-past-one' => '{0} to sitten',
+ 'thu-short-past-other' => '{0} to sitten',
+ 'tue-future-one' => '{0} tiistain päästä',
+ 'tue-future-other' => '{0} tiistain päästä',
+ 'tue-narrow-future-one' => '{0} ti päästä',
+ 'tue-narrow-future-other' => '{0} ti päästä',
+ 'tue-narrow-past-one' => '{0} ti sitten',
+ 'tue-narrow-past-other' => '{0} ti sitten',
+ 'tue-past-one' => '{0} tiistai sitten',
+ 'tue-past-other' => '{0} tiistaita sitten',
+ 'tue-short-future-one' => '{0} ti päästä',
+ 'tue-short-future-other' => '{0} ti päästä',
+ 'tue-short-past-one' => '{0} ti sitten',
+ 'tue-short-past-other' => '{0} ti sitten',
+ 'wed-future-one' => '{0} keskiviikon päästä',
+ 'wed-future-other' => '{0} keskiviikon päästä',
+ 'wed-narrow-future-one' => '{0} ke päästä',
+ 'wed-narrow-future-other' => '{0} ke päästä',
+ 'wed-narrow-past-one' => '{0} ke sitten',
+ 'wed-narrow-past-other' => '{0} ke sitten',
+ 'wed-past-one' => '{0} keskiviikko sitten',
+ 'wed-past-other' => '{0} keskiviikkoa sitten',
+ 'wed-short-future-one' => '{0} ke päästä',
+ 'wed-short-future-other' => '{0} ke päästä',
+ 'wed-short-past-one' => '{0} ke sitten',
+ 'wed-short-past-other' => '{0} ke sitten',
'week-future-one' => '{0} viikon päästä',
'week-future-other' => '{0} viikon päästä',
'week-narrow-future-one' => '{0} vk päästä',
@@ -1584,8 +1690,8 @@ $timeUnits = array(
'year-other' => '{0} vuotta',
'year-past-one' => '{0} vuosi sitten',
'year-past-other' => '{0} vuotta sitten',
- 'year-short-future-one' => '{0} vuoden päästä',
- 'year-short-future-other' => '{0} vuoden päästä',
- 'year-short-past-one' => '{0} vuotta sitten',
- 'year-short-past-other' => '{0} vuotta sitten',
-);
+ 'year-short-future-one' => '{0} v päästä',
+ 'year-short-future-other' => '{0} v päästä',
+ 'year-short-past-one' => '{0} v sitten',
+ 'year-short-past-other' => '{0} v sitten',
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesFo.php b/MLEB/cldr/CldrNames/CldrNamesFo.php
index 7d8b22b7..1a61a6ce 100644
--- a/MLEB/cldr/CldrNames/CldrNamesFo.php
+++ b/MLEB/cldr/CldrNames/CldrNamesFo.php
@@ -1,136 +1,351 @@
<?php
-$languageNames = array(
- 'ab' => 'abkhaziskt',
- 'af' => 'afríska',
+$languageNames = [
+ 'aa' => 'afar',
+ 'ab' => 'abkhasiskt',
+ 'ace' => 'achinese',
+ 'ada' => 'adangme',
+ 'ady' => 'adyghe',
+ 'af' => 'afrikaans',
+ 'agq' => 'aghem',
+ 'ain' => 'ainu',
+ 'ak' => 'akan',
+ 'ale' => 'aleut',
+ 'alt' => 'suður altai',
'am' => 'amhariskt',
+ 'an' => 'aragoniskt',
+ 'anp' => 'angika',
'ar' => 'arabiskt',
+ 'ar-001' => 'nútíðar vanligt arabiskt',
+ 'arn' => 'mapuche',
+ 'arp' => 'arapaho',
'as' => 'assamesiskt',
- 'asa' => 'asu (Tanzania)',
+ 'asa' => 'asu',
+ 'ast' => 'asturianskt',
+ 'av' => 'avariskt',
+ 'awa' => 'awadhi',
'ay' => 'aymara',
- 'az' => 'azerbaijaniskt',
+ 'az' => 'aserbajdsjanskt',
+ 'ba' => 'bashkir',
+ 'ban' => 'balinesiskt',
+ 'bas' => 'basaa',
'be' => 'hvitarussiskt',
'bem' => 'bemba',
- 'bez' => 'bena (Tanzania)',
+ 'bez' => 'bena',
'bg' => 'bulgarskt',
+ 'bgn' => 'vestur balochi',
+ 'bho' => 'bhojpuri',
+ 'bi' => 'bislama',
+ 'bin' => 'bini',
+ 'bla' => 'siksika',
'bm' => 'bambara',
- 'bn' => 'bengaliskt',
- 'bo' => 'tibetanskt',
+ 'bn' => 'bangla',
+ 'bo' => 'tibetskt',
'br' => 'bretonskt',
+ 'brx' => 'bodo',
'bs' => 'bosniskt',
'bss' => 'bakossi',
- 'ca' => 'katalanskt',
+ 'bug' => 'buginesiskt',
+ 'byn' => 'blin',
+ 'ca' => 'katalani',
+ 'ce' => 'tjetjenskt',
+ 'ceb' => 'cebuano',
+ 'cgg' => 'chiga',
+ 'ch' => 'chamorro',
+ 'chk' => 'chuukese',
+ 'chm' => 'mari',
+ 'cho' => 'choctaw',
+ 'chr' => 'cherokee',
+ 'chy' => 'cheyenne',
+ 'ckb' => 'miðkurdiskt',
+ 'co' => 'korsikanskt',
+ 'crs' => 'seselwa creole franskt',
'cs' => 'kekkiskt',
- 'cy' => 'valisiskt',
+ 'cu' => 'kirkju sláviskt',
+ 'cv' => 'chuvash',
+ 'cy' => 'walisiskt',
'da' => 'danskt',
+ 'dak' => 'dakota',
+ 'dar' => 'dargwa',
+ 'dav' => 'taita',
'de' => 'týskt',
+ 'de-ch' => 'høgt týskt (Sveis)',
+ 'dgr' => 'dogrib',
+ 'dje' => 'sarma',
+ 'dsb' => 'lágt sorbian',
+ 'dua' => 'duala',
'dv' => 'divehi',
+ 'dyo' => 'jola-fonyi',
'dz' => 'dzongkha',
- 'ebu' => 'kiembu',
+ 'dzg' => 'dazaga',
+ 'ebu' => 'embu',
+ 'ee' => 'ewe',
'efi' => 'efik',
- 'el' => 'grikiskt',
+ 'eka' => 'ekajuk',
+ 'el' => 'grikskt',
'en' => 'enskt',
'eo' => 'esperanto',
'es' => 'spanskt',
- 'et' => 'estlendskt',
+ 'et' => 'estiskt',
'eu' => 'baskiskt',
+ 'ewo' => 'ewondo',
'fa' => 'persiskt',
+ 'ff' => 'fulah',
'fi' => 'finskt',
'fil' => 'filipiniskt',
- 'fj' => 'fidjianskt',
+ 'fj' => 'fijimál',
'fo' => 'føroyskt',
+ 'fon' => 'fon',
'fr' => 'franskt',
- 'fy' => 'vestfrisikt',
+ 'fur' => 'friuliskt',
+ 'fy' => 'vestur frísiskt',
'ga' => 'írskt',
+ 'gaa' => 'ga',
+ 'gag' => 'gagauz',
+ 'gan' => 'gan kinesiskt',
'gd' => 'skotskt gæliskt',
+ 'gez' => 'geez',
+ 'gil' => 'kiribatiskt',
'gl' => 'galisiskt',
'gn' => 'guarani',
- 'gu' => 'gujariti',
- 'ha' => 'haussa',
+ 'gor' => 'gorontalo',
+ 'gsw' => 'týskt (Sveis)',
+ 'gu' => 'gujarati',
+ 'guz' => 'gusii',
+ 'gv' => 'manx',
+ 'gwi' => 'gwich’in',
+ 'ha' => 'hausa',
+ 'hak' => 'hakka kinesiskt',
'haw' => 'hawaiianskt',
'he' => 'hebraiskt',
'hi' => 'hindi',
+ 'hil' => 'hiligaynon',
+ 'hmn' => 'hmong',
'hr' => 'kroatiskt',
- 'ht' => 'haitiskt',
+ 'hsb' => 'ovara sorbian',
+ 'hsn' => 'xiang kinesiskt',
+ 'ht' => 'haitiskt creole',
'hu' => 'ungarskt',
+ 'hup' => 'hupa',
'hy' => 'armenskt',
+ 'hz' => 'herero',
'ia' => 'interlingua',
+ 'iba' => 'iban',
+ 'ibb' => 'ibibio',
'id' => 'indonesiskt',
'ie' => 'interlingue',
'ig' => 'igbo',
+ 'ii' => 'sichuan yi',
+ 'ilo' => 'iloko',
+ 'inh' => 'inguish',
+ 'io' => 'ido',
'is' => 'íslendskt',
'it' => 'italskt',
+ 'iu' => 'inuktitut',
'ja' => 'japanskt',
- 'jv' => 'javanesiskt',
+ 'jbo' => 'lojban',
+ 'jgo' => 'ngomba',
+ 'jmc' => 'machame',
+ 'jv' => 'javanskt',
'ka' => 'georgiskt',
- 'kea' => 'kapverdiskt',
- 'kk' => 'kazakiskt',
- 'km' => 'kambodjanskt',
+ 'kab' => 'kabyle',
+ 'kac' => 'kachin',
+ 'kaj' => 'jju',
+ 'kam' => 'kamba',
+ 'kbd' => 'kabardinskt',
+ 'kcg' => 'tyap',
+ 'kde' => 'makonde',
+ 'kea' => 'grønhøvdaoyggjarskt',
+ 'kfo' => 'koro',
+ 'kha' => 'khasi',
+ 'khq' => 'koyra chiini',
+ 'ki' => 'kikuyu',
+ 'kj' => 'kuanyama',
+ 'kk' => 'kazakh',
+ 'kkj' => 'kako',
+ 'kl' => 'kalaallisut',
+ 'kln' => 'kalenjin',
+ 'km' => 'khmer',
+ 'kmb' => 'kimbundu',
'kn' => 'kannada',
'ko' => 'koreanskt',
- 'ks' => 'kashmiriskt',
+ 'koi' => 'komi-permyak',
+ 'kok' => 'konkani',
+ 'kpe' => 'kpelle',
+ 'kr' => 'kanuri',
+ 'krc' => 'karachay-balkar',
+ 'krl' => 'karelskt',
+ 'kru' => 'kurukh',
+ 'ks' => 'kashmiri',
+ 'ksb' => 'shambala',
+ 'ksf' => 'bafia',
+ 'ksh' => 'kølnskt',
'ku' => 'kurdiskt',
- 'ky' => 'kirgisikt',
+ 'kum' => 'kumyk',
+ 'kv' => 'komi',
+ 'kw' => 'corniskt',
+ 'ky' => 'kyrgyz',
'la' => 'latín',
+ 'lad' => 'ladino',
+ 'lag' => 'langi',
'lah' => 'lahnda',
- 'lb' => 'luxemburgiskt',
+ 'lb' => 'luksemborgskt',
+ 'lez' => 'lezghian',
+ 'lg' => 'ganda',
+ 'li' => 'limburgiskt',
+ 'lkt' => 'lakota',
'ln' => 'lingala',
- 'lo' => 'laotiskt',
- 'lt' => 'litavskt',
- 'luy' => 'olulujia',
- 'lv' => 'latviskt',
- 'mg' => 'malagasiskt',
- 'mi' => 'maoriskt',
- 'mk' => 'makedonskt',
+ 'lo' => 'laoskt',
+ 'loz' => 'lozi',
+ 'lrc' => 'norður luri',
+ 'lt' => 'litaviskt',
+ 'lu' => 'luba-katanga',
+ 'lua' => 'luba-lulua',
+ 'lun' => 'lunda',
+ 'luo' => 'luo',
+ 'lus' => 'mizo',
+ 'luy' => 'luyia',
+ 'lv' => 'lettiskt',
+ 'mad' => 'maduresiskt',
+ 'mag' => 'magahi',
+ 'mai' => 'maithili',
+ 'mak' => 'makasar',
+ 'mas' => 'masai',
+ 'mdf' => 'moksha',
+ 'men' => 'mende',
+ 'mer' => 'meru',
+ 'mfe' => 'morisyen',
+ 'mg' => 'malagassiskt',
+ 'mgh' => 'makhuwa-meetto',
+ 'mgo' => 'metaʼ',
+ 'mh' => 'marshallesiskt',
+ 'mi' => 'maori',
+ 'mic' => 'micmac',
+ 'min' => 'minangkabau',
+ 'mk' => 'makedónskt',
'ml' => 'malayalam',
- 'mn' => 'mongoliskt',
- 'mr' => 'marathiskt',
- 'ms' => 'malajiskt',
- 'mt' => 'maltesiskt',
+ 'mn' => 'mongolskt',
+ 'mni' => 'manupuri',
+ 'moh' => 'mohawk',
+ 'mos' => 'mossi',
+ 'mr' => 'marathi',
+ 'ms' => 'malaiiskt',
+ 'mt' => 'maltiskt',
+ 'mua' => 'mundang',
+ 'mul' => 'ymisk mál',
+ 'mus' => 'creek',
+ 'mwl' => 'mirandesiskt',
'my' => 'burmesiskt',
- 'nb' => 'norskt bokmál',
+ 'myv' => 'erzya',
+ 'mzn' => 'mazanderani',
+ 'na' => 'nauru',
+ 'nan' => 'min nan kinesiskt',
+ 'nap' => 'napolitanskt',
+ 'naq' => 'nama',
+ 'nb' => 'norskt bókmál',
+ 'nd' => 'norður ndebele',
+ 'nds' => 'lágt týskt',
+ 'nds-nl' => 'lágt saksiskt',
'ne' => 'nepalskt',
- 'nl' => 'hollendskt',
+ 'new' => 'newari',
+ 'ng' => 'ndonga',
+ 'nia' => 'nias',
+ 'niu' => 'niuean',
+ 'nl' => 'hálendskt',
+ 'nl-be' => 'flamskt',
+ 'nmg' => 'kwasio',
'nn' => 'nýnorskt',
+ 'nnh' => 'ngiemboon',
'no' => 'norskt',
+ 'nog' => 'nogai',
+ 'nqo' => 'nʼko',
+ 'nr' => 'suður ndebele',
+ 'nso' => 'norður sotho',
+ 'nus' => 'nuer',
+ 'nv' => 'navajo',
'ny' => 'nyanja',
- 'oc' => 'occitan',
- 'or' => 'oriya',
+ 'nyn' => 'nyankole',
+ 'oc' => 'occitanskt',
+ 'om' => 'oromo',
+ 'or' => 'odia',
'os' => 'ossetiskt',
- 'pa' => 'punjabiskt',
- 'pl' => 'polskt',
- 'ps' => 'afghanskt',
- 'pt' => 'portugisiskt',
+ 'pa' => 'punjabi',
+ 'pag' => 'pangasinan',
+ 'pam' => 'pampanga',
+ 'pap' => 'papiamento',
+ 'pau' => 'palauan',
+ 'pcm' => 'nigeriskt pidgin',
+ 'pl' => 'pólskt',
+ 'prg' => 'prusslanskt',
+ 'ps' => 'pashto',
+ 'pt' => 'portugiskiskt',
+ 'pt-br' => 'portugiskiskt (Brasilia)',
+ 'pt-pt' => 'portugiskiskt (Evropa)',
'qu' => 'quechua',
- 'rm' => 'romansh',
+ 'quc' => 'kʼicheʼ',
+ 'rap' => 'rapanui',
+ 'rar' => 'rarotongiskt',
+ 'rm' => 'retoromanskt',
'rn' => 'rundi',
- 'ro' => 'romanskt',
+ 'ro' => 'rumenskt',
+ 'ro-md' => 'moldaviskt',
+ 'rof' => 'rombo',
'ru' => 'russiskt',
- 'rw' => 'ruanda',
+ 'rup' => 'aromenskt',
+ 'rw' => 'kinyarwanda',
+ 'rwk' => 'rwa',
'sa' => 'sanskrit',
+ 'sad' => 'sandawe',
+ 'sah' => 'sakha',
+ 'saq' => 'samburu',
+ 'sat' => 'santali',
+ 'sba' => 'ngambay',
+ 'sbp' => 'sangu',
+ 'sc' => 'sardiskt',
+ 'scn' => 'sisilanskt',
+ 'sco' => 'skotskt',
'sd' => 'sindhi',
+ 'sdh' => 'suður kurdiskt',
+ 'se' => 'norður sámiskt',
+ 'seh' => 'sena',
+ 'ses' => 'koyraboro senni',
'sg' => 'sango',
'sh' => 'serbokroatiskt',
- 'si' => 'sinhalesiskt',
+ 'shi' => 'tachelhit',
+ 'shn' => 'shan',
+ 'si' => 'singalesiskt',
'sk' => 'slovakiskt',
'sl' => 'slovenskt',
- 'sm' => 'samoiskt',
+ 'sm' => 'sámoiskt',
+ 'sma' => 'suður sámiskt',
+ 'smj' => 'lule sámiskt',
+ 'smn' => 'inari sami',
+ 'sms' => 'skolt sámiskt',
'sn' => 'shona',
+ 'snk' => 'soninke',
'so' => 'somaliskt',
'sq' => 'albanskt',
'sr' => 'serbiskt',
+ 'srn' => 'sranan tongo',
'ss' => 'swatiskt',
+ 'ssy' => 'saho',
'st' => 'sesotho',
'su' => 'sundanesiskt',
+ 'suk' => 'sukuma',
'sv' => 'svenskt',
'sw' => 'swahili',
- 'swb' => 'shimaoré',
+ 'sw-cd' => 'kongo svahili',
+ 'swb' => 'komoriskt',
+ 'syr' => 'syriac',
'ta' => 'tamilskt',
- 'te' => 'telugiskt',
+ 'te' => 'telugu',
+ 'tem' => 'timne',
+ 'teo' => 'teso',
'tet' => 'tetum',
- 'tg' => 'tajikiskt',
- 'th' => 'thailendskt',
+ 'tg' => 'tajik',
+ 'th' => 'tailendskt',
'ti' => 'tigrinya',
+ 'tig' => 'tigre',
'tk' => 'turkmenskt',
'tl' => 'tagalog',
'tlh' => 'klingonskt',
@@ -138,110 +353,447 @@ $languageNames = array(
'to' => 'tonganskt',
'tpi' => 'tok pisin',
'tr' => 'turkiskt',
+ 'trv' => 'taroko',
'ts' => 'tsonga',
- 'tt' => 'tatariskt',
+ 'tt' => 'tatar',
+ 'tum' => 'tumbuka',
+ 'tvl' => 'tuvalu',
'tw' => 'twi',
+ 'twq' => 'tasawaq',
'ty' => 'tahitiskt',
- 'ug' => 'uighur',
+ 'tyv' => 'tuvinian',
+ 'tzm' => 'miðatlasfjøll tamazight',
+ 'udm' => 'udmurt',
+ 'ug' => 'uyghur',
'uk' => 'ukrainskt',
- 'und' => 'ukjent mál',
+ 'umb' => 'umbundu',
+ 'und' => 'ókent mál',
'ur' => 'urdu',
- 'uz' => 'uzbekiskt',
+ 'uz' => 'usbekiskt',
+ 'vai' => 'vai',
've' => 'venda',
- 'vi' => 'vietnamesiskt',
+ 'vi' => 'vjetnamesiskt',
+ 'vo' => 'volapykk',
+ 'vun' => 'vunjo',
+ 'wa' => 'walloon',
+ 'wae' => 'walser',
+ 'wal' => 'wolaytta',
+ 'war' => 'waray',
+ 'wbp' => 'warlpiri',
'wo' => 'wolof',
+ 'wuu' => 'wu kinesiskt',
+ 'xal' => 'kalmyk',
'xh' => 'xhosa',
+ 'xog' => 'soga',
+ 'yav' => 'yangben',
+ 'ybb' => 'yemba',
'yi' => 'jiddiskt',
'yo' => 'yoruba',
- 'yue' => 'kantonesískt',
+ 'yue' => 'kantonesiskt',
+ 'zgh' => 'vanligt marokanskt tamazight',
'zh' => 'kinesiskt',
+ 'zh-hans' => 'einkult kinesiskt',
+ 'zh-hant' => 'vanligt kinesiskt',
'zu' => 'sulu',
-);
+ 'zun' => 'zuni',
+ 'zxx' => 'einki málsligt innihald',
+ 'zza' => 'zaza',
+];
-$currencyNames = array(
+$currencyNames = [
+ 'AED' => 'Sameindu Emirríkini dirham',
+ 'AFN' => 'Afganistan afghani',
+ 'ALL' => 'Albania lek',
+ 'AMD' => 'Armenia dram',
+ 'ANG' => 'Niðurlonds Karibia gyllin',
+ 'AOA' => 'Angola kwanza',
+ 'ARS' => 'Argentina peso',
+ 'AUD' => 'Avstralskur dollari',
+ 'AWG' => 'Aruba florin',
+ 'AZN' => 'Aserbadjan manat',
+ 'BAM' => 'Bosnia-Hersegovina mark (kann vekslast)',
+ 'BBD' => 'Barbados dollari',
+ 'BDT' => 'Bangladesj taka',
+ 'BGN' => 'Bulgaria lev',
+ 'BHD' => 'Barein dinar',
+ 'BIF' => 'Burundi frankur',
+ 'BMD' => 'Bermuda dollari',
+ 'BND' => 'Brunei dollari',
+ 'BOB' => 'Bolivia boliviano',
+ 'BRL' => 'Brasilianskur real',
+ 'BSD' => 'Bahamaoyggjar dollari',
+ 'BTN' => 'Butan ngultrum',
+ 'BWP' => 'Botsvana pula',
+ 'BYN' => 'Hvítarussland ruble',
+ 'BYR' => 'Hvítarussland ruble (2000–2016)',
+ 'BZD' => 'Belis dollari',
+ 'CAD' => 'Kanada dollari',
+ 'CDF' => 'Kongo frankur',
+ 'CHF' => 'sveisiskur frankur',
+ 'CLP' => 'Kili peso',
+ 'CNH' => 'kinesiskur yuan (úr landi)',
+ 'CNY' => 'kinesiskur yuan',
+ 'COP' => 'Kolombia peso',
+ 'CRC' => 'Kosta Rika colón',
+ 'CUC' => 'Kuba peso (sum kann vekslast)',
+ 'CUP' => 'Kuba peso',
+ 'CVE' => 'Grønhøvdaoyggjar escudo',
+ 'CZK' => 'Kekkia koruna',
+ 'DJF' => 'Djibuti frankur',
'DKK' => 'donsk króna',
- 'EUR' => 'euro',
+ 'DOP' => 'Dominika peso',
+ 'DZD' => 'Algeria dinar',
+ 'EGP' => 'Egyptaland pund',
+ 'ERN' => 'Eritrea nakfa',
+ 'ETB' => 'Etiopia birr',
+ 'EUR' => 'Evra',
+ 'FJD' => 'Fiji dollari',
+ 'FKP' => 'Falklandsoyggjar pund',
+ 'GBP' => 'bretsk pund',
+ 'GEL' => 'Georgia lari',
+ 'GHS' => 'Gana cedi',
+ 'GIP' => 'Gibraltar pund',
+ 'GMD' => 'Gambia dalasi',
+ 'GNF' => 'Guinea frankur',
+ 'GTQ' => 'Guatemala quetzal',
+ 'GYD' => 'Gujana dollari',
+ 'HKD' => 'Hong Kong dollari',
+ 'HNL' => 'Honduras lempira',
+ 'HRK' => 'Kroatia kuna',
+ 'HTG' => 'Haiti gourde',
+ 'HUF' => 'Ungarn forint',
+ 'IDR' => 'Indonesia rupiah',
+ 'ILS' => 'Ísrael new shekel',
+ 'INR' => 'indiskir rupis',
+ 'IQD' => 'Irak dinar',
+ 'IRR' => 'iranskir rials',
'ISK' => 'íslendsk króna',
+ 'JMD' => 'Jamaika dollari',
+ 'JOD' => 'Jordan dinar',
+ 'JPY' => 'japanskur yen',
+ 'KES' => 'kenjanskur skillingur',
+ 'KGS' => 'Kirgisia som',
+ 'KHR' => 'Kambodja riel',
+ 'KMF' => 'Komoroyggjar frankur',
+ 'KPW' => 'Norðurkorea won',
+ 'KRW' => 'Suðurkorea won',
+ 'KWD' => 'Kuvait dinar',
+ 'KYD' => 'Caymanoyggjar dollari',
+ 'KZT' => 'Kasakstan tenge',
+ 'LAK' => 'Laos kip',
+ 'LBP' => 'Libanon pund',
+ 'LKR' => 'Sri Lanka rupi',
+ 'LRD' => 'Liberia dollari',
+ 'LYD' => 'Libya dinar',
+ 'MAD' => 'Marokko dirham',
+ 'MDL' => 'Moldova leu',
+ 'MGA' => 'Madagaskar ariary',
+ 'MKD' => 'Makedónia denar',
+ 'MMK' => 'Myanmar (Burma) kyat',
+ 'MNT' => 'Mongolia tugrik',
+ 'MOP' => 'Makao pataca',
+ 'MRO' => 'Móritania ouguiya (1973–2017)',
+ 'MRU' => 'Móritania ouguiya',
+ 'MUR' => 'Móritius rupi',
+ 'MVR' => 'Maldivoyggjar rufiyaa',
+ 'MWK' => 'Malavi kwacha',
+ 'MXN' => 'Meksiko peso',
+ 'MYR' => 'Malaisia ringgit',
+ 'MZN' => 'Mosambik metical',
+ 'NAD' => 'Namibia dollari',
+ 'NGN' => 'Nigeria naira',
+ 'NIO' => 'Nikaragua córdoba',
'NOK' => 'norsk króna',
+ 'NPR' => 'Nepal rupi',
+ 'NZD' => 'Nýsæland dollari',
+ 'OMR' => 'Oman rial',
+ 'PAB' => 'Panama balboa',
+ 'PEN' => 'Peru sol',
+ 'PGK' => 'Papua Nýguinea kina',
+ 'PHP' => 'Filipsoyggjar peso',
+ 'PKR' => 'Pakistan rupi',
+ 'PLN' => 'Pólland zloty',
+ 'PYG' => 'Paraguai guarani',
+ 'QAR' => 'Katar rial',
+ 'RON' => 'Rumenia leu',
+ 'RSD' => 'Serbia dinar',
+ 'RUB' => 'Russland ruble',
+ 'RWF' => 'Ruanda frankur',
+ 'SAR' => 'Saudiarabia riyal',
+ 'SBD' => 'Salomonoyggjar dollari',
+ 'SCR' => 'Seyskelloyggjar rupi',
+ 'SDG' => 'Sudan pund',
'SEK' => 'svensk króna',
+ 'SGD' => 'Singapor dollari',
+ 'SHP' => 'St. Helena pund',
+ 'SLL' => 'Sierra Leona leone',
+ 'SOS' => 'Somalia skillingur',
+ 'SRD' => 'Surinam dollari',
+ 'SSP' => 'Suðursudan pund',
+ 'STD' => 'Sao Tome & Prinsipi dobra (1977–2017)',
+ 'STN' => 'Sao Tome & Prinsipi dobra',
+ 'SYP' => 'Sýria pund',
+ 'SZL' => 'Svasiland lilangeni',
+ 'THB' => 'Tailand baht',
+ 'TJS' => 'Tadsjikistan somoni',
+ 'TMT' => 'Turkmenistan manat',
+ 'TND' => 'Tunesia dinar',
+ 'TOP' => 'Tonga paʻanga',
+ 'TRY' => 'Turkaland liri',
+ 'TTD' => 'Trinidad & Tobago dollari',
+ 'TWD' => 'Taivan new dollari',
+ 'TZS' => 'Tansania skillingur',
+ 'UAH' => 'Ukraina hryvnia',
+ 'UGX' => 'Uganda skillingur',
+ 'USD' => 'US dollari',
+ 'UYU' => 'Uruguai peso',
+ 'UZS' => 'Usbekistan som',
+ 'VEF' => 'Venesuela bolívar (2008–2018)',
+ 'VES' => 'Venesuela bolívar',
+ 'VND' => 'Vjetnam dong',
+ 'VUV' => 'Vanuatu vatu',
+ 'WST' => 'Samoa tala',
+ 'XAF' => 'Miðafrika CFA frankur',
'XAG' => 'unse sølv',
'XAU' => 'unse guld',
+ 'XCD' => 'Eystur Karibia dollari',
+ 'XOF' => 'Vesturafrika CFA frankur',
'XPD' => 'unse palladium',
+ 'XPF' => 'CFP frankur',
'XPT' => 'unse platin',
-);
+ 'XXX' => 'ókent gjaldoyra',
+ 'YER' => 'Jemen rial',
+ 'ZAR' => 'Suðurafrika rand',
+ 'ZMW' => 'Sambia kwacha',
+];
-$currencySymbols = array(
+$currencySymbols = [
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => 'A$',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => 'R$',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYN' => 'BYN',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CA$',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNH' => 'CNH',
+ 'CNY' => 'CN¥',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
'DKK' => 'kr',
-);
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GBP' => '£',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => 'JP¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MX$',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZ$',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'STN' => 'STN',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => 'THB',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
+ 'USD' => 'US$',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VND' => '₫',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'EC$',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+];
-$countryNames = array(
- 'AC' => 'Ascensionoyggjin',
+$countryNames = [
+ 'AC' => 'Ascension',
'AD' => 'Andorra',
'AE' => 'Sameindu Emirríkini',
'AF' => 'Afganistan',
- 'AG' => 'Antigua og Barbuda',
+ 'AG' => 'Antigua & Barbuda',
'AI' => 'Anguilla',
'AL' => 'Albania',
'AM' => 'Armenia',
- 'AN' => 'Niðurlendsku Antilloyggjarnar',
'AO' => 'Angola',
'AQ' => 'Antarktis',
'AR' => 'Argentina',
- 'AS' => 'Amerikanska Sámoa',
+ 'AS' => 'Amerikanska Samoa',
'AT' => 'Eysturríki',
'AU' => 'Avstralia',
'AW' => 'Aruba',
'AX' => 'Áland',
- 'AZ' => 'Aserbajdsjan',
+ 'AZ' => 'Aserbadjan',
'BA' => 'Bosnia-Hersegovina',
'BB' => 'Barbados',
'BD' => 'Bangladesj',
'BE' => 'Belgia',
'BF' => 'Burkina Faso',
'BG' => 'Bulgaria',
- 'BH' => 'Bahrain',
+ 'BH' => 'Barein',
'BI' => 'Burundi',
'BJ' => 'Benin',
- 'BL' => 'Saint Barthélemy',
+ 'BL' => 'St. Barthélemy',
'BM' => 'Bermuda',
'BN' => 'Brunei',
'BO' => 'Bolivia',
'BQ' => 'Niðurlonds Karibia',
- 'BR' => 'Brasilia',
- 'BS' => 'Bahamas',
+ 'BR' => 'Brasil',
+ 'BS' => 'Bahamaoyggjar',
'BT' => 'Butan',
- 'BV' => 'Bouvetoyggjin',
+ 'BV' => 'Bouvetoyggj',
'BW' => 'Botsvana',
'BY' => 'Hvítarussland',
'BZ' => 'Belis',
'CA' => 'Kanada',
- 'CC' => 'Kokosoyggjarnar',
- 'CD' => 'Kongo-Kinshasa',
+ 'CC' => 'Kokosoyggjar',
+ 'CD' => 'Kongo, Dem. Lýðveldið',
'CF' => 'Miðafrikalýðveldið',
'CG' => 'Kongo',
'CH' => 'Sveis',
'CI' => 'Fílabeinsstrondin',
- 'CK' => 'Cooksoyggjarnar',
+ 'CK' => 'Cooksoyggjar',
'CL' => 'Kili',
'CM' => 'Kamerun',
'CN' => 'Kina',
'CO' => 'Kolombia',
- 'CP' => 'Clippertonoyggjin',
+ 'CP' => 'Clipperton',
'CR' => 'Kosta Rika',
'CU' => 'Kuba',
- 'CV' => 'Grønhøvdaoyggjarnar',
+ 'CV' => 'Grønhøvdaoyggjar',
'CW' => 'Curaçao',
'CX' => 'Jólaoyggjin',
'CY' => 'Kýpros',
'CZ' => 'Kekkia',
'DE' => 'Týskland',
'DG' => 'Diego Garcia',
- 'DJ' => 'Djibouti',
- 'DK' => 'Danmørk',
+ 'DJ' => 'Djibuti',
+ 'DK' => 'Danmark',
'DM' => 'Dominika',
- 'DO' => 'Domingo lýðveldið',
+ 'DO' => 'Dominikalýðveldið',
'DZ' => 'Algeria',
- 'EA' => 'Ceuta og Melilla',
+ 'EA' => 'Ceuta & Melilla',
'EC' => 'Ekvador',
'EE' => 'Estland',
'EG' => 'Egyptaland',
@@ -250,67 +802,68 @@ $countryNames = array(
'ES' => 'Spania',
'ET' => 'Etiopia',
'EU' => 'Evropasamveldið',
+ 'EZ' => 'Evrasona',
'FI' => 'Finnland',
'FJ' => 'Fiji',
- 'FK' => 'Falklandsoyggjarnar',
- 'FM' => 'Mikronesia',
+ 'FK' => 'Falklandsoyggjar',
+ 'FM' => 'Mikronesiasamveldið',
'FO' => 'Føroyar',
'FR' => 'Frakland',
'GA' => 'Gabon',
- 'GB' => 'Stóra Bretland',
+ 'GB' => 'UK',
'GD' => 'Grenada',
'GE' => 'Georgia',
- 'GF' => 'Fransk Gujana',
+ 'GF' => 'Franska Gujana',
'GG' => 'Guernsey',
- 'GH' => 'Ghana',
+ 'GH' => 'Gana',
'GI' => 'Gibraltar',
'GL' => 'Grønland',
'GM' => 'Gambia',
'GN' => 'Guinea',
'GP' => 'Guadeloupe',
- 'GQ' => 'Ekvator Guinea',
+ 'GQ' => 'Ekvatorguinea',
'GR' => 'Grikkaland',
- 'GS' => 'Suðurgeorgia',
+ 'GS' => 'Suðurgeorgia og Suðursandwichoyggjar',
'GT' => 'Guatemala',
'GU' => 'Guam',
- 'GW' => 'Guinea Bissau',
+ 'GW' => 'Guinea-Bissau',
'GY' => 'Gujana',
- 'HK' => 'Hongkong',
- 'HM' => 'Heard- og McDonald-oyggjarnar',
+ 'HK' => 'Hong Kong',
+ 'HM' => 'Heard og McDonaldoyggjar',
'HN' => 'Honduras',
'HR' => 'Kroatia',
'HT' => 'Haiti',
'HU' => 'Ungarn',
- 'IC' => 'Kanaríoyggjarnar',
+ 'IC' => 'Kanariuoyggjar',
'ID' => 'Indonesia',
'IE' => 'Írland',
'IL' => 'Ísrael',
- 'IM' => 'Mann',
+ 'IM' => 'Isle of Man',
'IN' => 'India',
- 'IO' => 'Bretsku Indiahavsoyggjarnar',
+ 'IO' => 'Stóra Bretlands Indiahavoyggjar',
'IQ' => 'Irak',
'IR' => 'Iran',
'IS' => 'Ísland',
'IT' => 'Italia',
'JE' => 'Jersey',
- 'JM' => 'Jameika',
- 'JO' => 'Jordania',
+ 'JM' => 'Jamaika',
+ 'JO' => 'Jordan',
'JP' => 'Japan',
'KE' => 'Kenja',
'KG' => 'Kirgisia',
'KH' => 'Kambodja',
'KI' => 'Kiribati',
- 'KM' => 'Komorooyggjarnar',
- 'KN' => 'Saint Kitts og Nevis',
- 'KP' => 'Norður-Korea',
- 'KR' => 'Suður-Korea',
+ 'KM' => 'Komoroyggjar',
+ 'KN' => 'St. Kitts & Nevis',
+ 'KP' => 'Norðurkorea',
+ 'KR' => 'Suðurkorea',
'KW' => 'Kuvait',
- 'KY' => 'Caymanoyggjarnar',
+ 'KY' => 'Caymanoyggjar',
'KZ' => 'Kasakstan',
'LA' => 'Laos',
'LB' => 'Libanon',
- 'LC' => 'Saint Lusia',
- 'LI' => 'Liktenstein',
+ 'LC' => 'St. Lusia',
+ 'LI' => 'Liktinstein',
'LK' => 'Sri Lanka',
'LR' => 'Liberia',
'LS' => 'Lesoto',
@@ -322,29 +875,29 @@ $countryNames = array(
'MC' => 'Monako',
'MD' => 'Moldova',
'ME' => 'Montenegro',
- 'MF' => 'Fransk Saint Martin',
+ 'MF' => 'St-Martin',
'MG' => 'Madagaskar',
- 'MH' => 'Marshalloyggjarnar',
+ 'MH' => 'Marshalloyggjar',
'MK' => 'Makedónia',
'ML' => 'Mali',
- 'MM' => 'Burma',
+ 'MM' => 'Myanmar (Burma)',
'MN' => 'Mongolia',
'MO' => 'Makao',
- 'MP' => 'Norðurmarianoyggjarnar',
+ 'MP' => 'Norðaru Mariuoyggjar',
'MQ' => 'Martinique',
'MR' => 'Móritania',
'MS' => 'Montserrat',
'MT' => 'Malta',
'MU' => 'Móritius',
- 'MV' => 'Maldivuoyggjarnar',
+ 'MV' => 'Maldivoyggjar',
'MW' => 'Malavi',
'MX' => 'Meksiko',
- 'MY' => 'Maleisia',
+ 'MY' => 'Malaisia',
'MZ' => 'Mosambik',
'NA' => 'Namibia',
- 'NC' => 'Ný-Kaledonia',
+ 'NC' => 'Nýkaledónia',
'NE' => 'Niger',
- 'NF' => 'Norfolkoyggjin',
+ 'NF' => 'Norfolksoyggj',
'NG' => 'Nigeria',
'NI' => 'Nikaragua',
'NL' => 'Niðurlond',
@@ -352,102 +905,292 @@ $countryNames = array(
'NP' => 'Nepal',
'NR' => 'Nauru',
'NU' => 'Niue',
- 'NZ' => 'Ný Sæland',
+ 'NZ' => 'Nýsæland',
'OM' => 'Oman',
'PA' => 'Panama',
- 'PE' => 'Perú',
+ 'PE' => 'Peru',
'PF' => 'Franska Polynesia',
'PG' => 'Papua Nýguinea',
'PH' => 'Filipsoyggjar',
'PK' => 'Pakistan',
'PL' => 'Pólland',
- 'PM' => 'Saint Pierre og Miquelon',
- 'PN' => 'Pitcairn',
- 'PR' => 'Puerto Rico',
+ 'PM' => 'Saint Pierre & Miquelon',
+ 'PN' => 'Pitcairnoyggjar',
+ 'PR' => 'Puerto Riko',
'PS' => 'Palestina',
'PT' => 'Portugal',
'PW' => 'Palau',
- 'PY' => 'Paraguei',
+ 'PY' => 'Paraguai',
'QA' => 'Katar',
+ 'QO' => 'fjarskoti Osiania',
'RE' => 'Réunion',
'RO' => 'Rumenia',
'RS' => 'Serbia',
'RU' => 'Russland',
'RW' => 'Ruanda',
- 'SA' => 'Saudi-Arábia',
- 'SB' => 'Sálomonoyggjarnar',
- 'SC' => 'Seyskelloyggjarnar',
- 'SD' => 'Norðursudan',
+ 'SA' => 'Saudiarabia',
+ 'SB' => 'Salomonoyggjar',
+ 'SC' => 'Seyskelloyggjar',
+ 'SD' => 'Sudan',
'SE' => 'Svøríki',
'SG' => 'Singapor',
- 'SH' => 'Saint Helena',
+ 'SH' => 'St. Helena',
'SI' => 'Slovenia',
- 'SJ' => 'Svalbard og Jan Mayen',
+ 'SJ' => 'Svalbard & Jan Mayen',
'SK' => 'Slovakia',
- 'SL' => 'Sierra Leone',
+ 'SL' => 'Sierra Leona',
'SM' => 'San Marino',
'SN' => 'Senegal',
'SO' => 'Somalia',
'SR' => 'Surinam',
'SS' => 'Suðursudan',
- 'ST' => 'Sao Tome og Prinsipi',
+ 'ST' => 'Sao Tome & Prinsipi',
'SV' => 'El Salvador',
- 'SX' => 'Niðurlonds Saint Martin',
- 'SY' => 'Syria',
+ 'SX' => 'Sint Maarten',
+ 'SY' => 'Sýria',
'SZ' => 'Svasiland',
'TA' => 'Tristan da Cunha',
- 'TC' => 'Turks- og Caicosoyggjarnar',
+ 'TC' => 'Turks- og Caicosoyggjar',
'TD' => 'Kjad',
+ 'TF' => 'Fronsku sunnaru landaøki',
'TG' => 'Togo',
- 'TH' => 'Teiland',
+ 'TH' => 'Tailand',
'TJ' => 'Tadsjikistan',
'TK' => 'Tokelau',
- 'TL' => 'Eystur-Timor',
+ 'TL' => 'Eysturtimor',
'TM' => 'Turkmenistan',
'TN' => 'Tunesia',
'TO' => 'Tonga',
'TR' => 'Turkaland',
- 'TT' => 'Trinidad og Tobago',
+ 'TT' => 'Trinidad & Tobago',
'TV' => 'Tuvalu',
- 'TW' => 'Teivan',
+ 'TW' => 'Taivan',
'TZ' => 'Tansania',
- 'UA' => 'Ukreina',
+ 'UA' => 'Ukraina',
'UG' => 'Uganda',
+ 'UM' => 'Sambandsríki Amerikas fjarskotnu oyggjar',
+ 'UN' => 'Sameindu Tjóðir',
'US' => 'USA',
- 'UY' => 'Uruguei',
+ 'UY' => 'Uruguai',
'UZ' => 'Usbekistan',
- 'VA' => 'Vatikan',
- 'VC' => 'Saint Vinsent og Grenadinoyggjar',
+ 'VA' => 'Vatikanbýur',
+ 'VC' => 'St. Vinsent & Grenadinoyggjar',
'VE' => 'Venesuela',
- 'VG' => 'Stóra Bretlands Jómfrúoyggjarnar',
- 'VI' => 'Sambandsríki Amerikas Jómfrúoyggjarnar',
- 'VN' => 'Vietnam',
+ 'VG' => 'Stóra Bretlands Jomfrúoyggjar',
+ 'VI' => 'Sambandsríki Amerikas Jomfrúoyggjar',
+ 'VN' => 'Vjetnam',
'VU' => 'Vanuatu',
- 'WF' => 'Wallis og Futuna',
- 'WS' => 'Sámoa',
+ 'WF' => 'Wallis- og Futunaoyggjar',
+ 'WS' => 'Samoa',
'XK' => 'Kosovo',
'YE' => 'Jemen',
'YT' => 'Mayotte',
- 'ZA' => 'Suðurafrikalýðveldið',
+ 'ZA' => 'Suðurafrika',
'ZM' => 'Sambia',
'ZW' => 'Simbabvi',
-);
+];
-$timeUnits = array(
- 'day-one' => '{0} samdøgur',
- 'day-other' => '{0} samdøgur',
+$timeUnits = [
+ 'century-one' => '{0} øld',
+ 'century-other' => '{0} øldir',
+ 'day-future-one' => 'um {0} dag',
+ 'day-future-other' => 'um {0} dagar',
+ 'day-narrow-future-one' => 'um {0} d.',
+ 'day-narrow-future-other' => 'um {0} d.',
+ 'day-narrow-past-one' => '{0} d. síðan',
+ 'day-narrow-past-other' => '{0} d. síðan',
+ 'day-one' => '{0} dagur',
+ 'day-other' => '{0} dagar',
+ 'day-past-one' => '{0} dagur síðan',
+ 'day-past-other' => '{0} dagar síðan',
+ 'day-short-future-one' => 'um {0} da.',
+ 'day-short-future-other' => 'um {0} da.',
+ 'day-short-past-one' => '{0} da. síðan',
+ 'day-short-past-other' => '{0} da. síðan',
+ 'fri-future-one' => 'um {0} fríggjadag',
+ 'fri-future-other' => 'um {0} fríggjadagar',
+ 'fri-narrow-future-one' => 'um {0} fr.',
+ 'fri-narrow-future-other' => 'um {0} fr.',
+ 'fri-narrow-past-one' => '{0} fr. síðani',
+ 'fri-narrow-past-other' => '{0} fr. síðani',
+ 'fri-past-one' => '{0} fríggjadag síðani',
+ 'fri-past-other' => '{0} fríggjadagar síðani',
+ 'fri-short-future-one' => 'um {0} frí.',
+ 'fri-short-future-other' => 'um {0} frí.',
+ 'fri-short-past-one' => '{0} frí. síðani',
+ 'fri-short-past-other' => '{0} frí. síðani',
+ 'hour-future-one' => 'um {0} tíma',
+ 'hour-future-other' => 'um {0} tímar',
+ 'hour-narrow-future-one' => 'um {0} t.',
+ 'hour-narrow-future-other' => 'um {0} t.',
+ 'hour-narrow-past-one' => '{0} t. síðan',
+ 'hour-narrow-past-other' => '{0} t. síðan',
'hour-one' => '{0} tími',
'hour-other' => '{0} tímar',
+ 'hour-past-one' => '{0} tími síðan',
+ 'hour-past-other' => '{0} tímar síðan',
+ 'hour-short-future-one' => 'um {0} t.',
+ 'hour-short-future-other' => 'um {0} t.',
+ 'hour-short-past-one' => '{0} t. síðan',
+ 'hour-short-past-other' => '{0} t. síðan',
+ 'microsecond-one' => '{0} mikrosekund',
+ 'microsecond-other' => '{0} mikrosekundir',
'millisecond-one' => '{0} millisekund',
- 'millisecond-other' => '{0} millissekundir',
+ 'millisecond-other' => '{0} millisekundir',
+ 'minute-future-one' => 'um {0} minutt',
+ 'minute-future-other' => 'um {0} minuttir',
+ 'minute-narrow-future-one' => 'um {0} m.',
+ 'minute-narrow-future-other' => 'um {0} m.',
+ 'minute-narrow-past-one' => '{0} m. síðan',
+ 'minute-narrow-past-other' => '{0} m. síðan',
'minute-one' => '{0} minuttur',
'minute-other' => '{0} minuttir',
- 'month-one' => '{0} mánadur',
+ 'minute-past-one' => '{0} minutt síðan',
+ 'minute-past-other' => '{0} minuttir síðan',
+ 'minute-short-future-one' => 'um {0} min.',
+ 'minute-short-future-other' => 'um {0} min.',
+ 'minute-short-past-one' => '{0} min. síðan',
+ 'minute-short-past-other' => '{0} min. síðan',
+ 'mon-future-one' => 'um {0} mánadag',
+ 'mon-future-other' => 'um {0} mánadagar',
+ 'mon-narrow-future-one' => 'um {0} má.',
+ 'mon-narrow-future-other' => 'um {0} má.',
+ 'mon-narrow-past-one' => '{0} má. síðani',
+ 'mon-narrow-past-other' => '{0} má. síðani',
+ 'mon-past-one' => '{0} mánadag síðani',
+ 'mon-past-other' => '{0} mánadagar síðani',
+ 'mon-short-future-one' => 'um {0} mán.',
+ 'mon-short-future-other' => 'um {0} mán.',
+ 'mon-short-past-one' => '{0} mán. síðani',
+ 'mon-short-past-other' => '{0} mán. síðani',
+ 'month-future-one' => 'um {0} mánað',
+ 'month-future-other' => 'um {0} mánaðir',
+ 'month-narrow-future-one' => 'um {0} mnð.',
+ 'month-narrow-future-other' => 'um {0} mnð.',
+ 'month-narrow-past-one' => '{0} mnð. síðan',
+ 'month-narrow-past-other' => '{0} mnð. síðan',
+ 'month-one' => '{0} mánaður',
'month-other' => '{0} mánaðir',
+ 'month-past-one' => '{0} mánað síðan',
+ 'month-past-other' => '{0} mánaðir síðan',
+ 'month-short-future-one' => 'um {0} mnð.',
+ 'month-short-future-other' => 'um {0} mnð.',
+ 'month-short-past-one' => '{0} mnð. síðan',
+ 'month-short-past-other' => '{0} mnð. síðan',
+ 'nanosecond-one' => '{0} nanosekund',
+ 'nanosecond-other' => '{0} nanosekundir',
+ 'quarter-future-one' => 'um {0} ársfjórðing',
+ 'quarter-future-other' => 'um {0} ársfjórðingar',
+ 'quarter-narrow-future-one' => 'um {0} ársfj.',
+ 'quarter-narrow-future-other' => 'um {0} ársfj.',
+ 'quarter-narrow-past-one' => '{0} ársfj. síðan',
+ 'quarter-narrow-past-other' => '{0} ársfj. síðan',
+ 'quarter-past-one' => '{0} ársfjórðing síðan',
+ 'quarter-past-other' => '{0} ársfjórðingar síðan',
+ 'quarter-short-future-one' => 'um {0} ársfj.',
+ 'quarter-short-future-other' => 'um {0} ársfj.',
+ 'quarter-short-past-one' => '{0} ársfj. síðan',
+ 'quarter-short-past-other' => '{0} ársfj. síðan',
+ 'sat-future-one' => 'um {0} leygardag',
+ 'sat-future-other' => 'um {0} leygardagar',
+ 'sat-narrow-future-one' => 'um {0} le.',
+ 'sat-narrow-future-other' => 'um {0} le.',
+ 'sat-narrow-past-one' => '{0} le. síðani',
+ 'sat-narrow-past-other' => '{0} le. síðani',
+ 'sat-past-one' => '{0} leygardag síðani',
+ 'sat-past-other' => '{0} leygardagar síðani',
+ 'sat-short-future-one' => 'um {0} ley.',
+ 'sat-short-future-other' => 'um {0} ley.',
+ 'sat-short-past-one' => '{0} ley. síðani',
+ 'sat-short-past-other' => '{0} ley. síðani',
+ 'second-future-one' => 'um {0} sekund',
+ 'second-future-other' => 'um {0} sekund',
+ 'second-narrow-future-one' => 'um {0} s.',
+ 'second-narrow-future-other' => 'um {0} s.',
+ 'second-narrow-past-one' => '{0} s. síðan',
+ 'second-narrow-past-other' => '{0} s. síðan',
'second-one' => '{0} sekund',
'second-other' => '{0} sekundir',
+ 'second-past-one' => '{0} sekund síðan',
+ 'second-past-other' => '{0} sekund síðan',
+ 'second-short-future-one' => 'um {0} sek.',
+ 'second-short-future-other' => 'um {0} sek.',
+ 'second-short-past-one' => '{0} sek. síðan',
+ 'second-short-past-other' => '{0} sek. síðan',
+ 'sun-future-one' => 'um {0} sunnudag',
+ 'sun-future-other' => 'um {0} sunnudagar',
+ 'sun-narrow-future-one' => 'um {0} su.',
+ 'sun-narrow-future-other' => 'um {0} su.',
+ 'sun-narrow-past-one' => '{0} su. síðani',
+ 'sun-narrow-past-other' => '{0} su. síðani',
+ 'sun-past-one' => '{0} sunnudag síðani',
+ 'sun-past-other' => '{0} sunnudagar síðani',
+ 'sun-short-future-one' => 'um {0} sun.',
+ 'sun-short-future-other' => 'um {0} sun.',
+ 'sun-short-past-one' => '{0} sun. síðani',
+ 'sun-short-past-other' => '{0} sun. síðani',
+ 'thu-future-one' => 'um {0} hósdag',
+ 'thu-future-other' => 'um {0} hósdagar',
+ 'thu-narrow-future-one' => 'um {0} hó.',
+ 'thu-narrow-future-other' => 'um {0} hó.',
+ 'thu-narrow-past-one' => '{0} hó. síðani',
+ 'thu-narrow-past-other' => '{0} hó. síðani',
+ 'thu-past-one' => '{0} hósdag síðani',
+ 'thu-past-other' => '{0} hósdagar síðani',
+ 'thu-short-future-one' => 'um {0} hós.',
+ 'thu-short-future-other' => 'um {0} hós.',
+ 'thu-short-past-one' => '{0} hós. síðani',
+ 'thu-short-past-other' => '{0} hós. síðani',
+ 'tue-future-one' => 'um {0} týsdag',
+ 'tue-future-other' => 'um {0} týsdagar',
+ 'tue-narrow-future-one' => 'um {0} tý.',
+ 'tue-narrow-future-other' => 'um {0} tý.',
+ 'tue-narrow-past-one' => '{0} tý. síðani',
+ 'tue-narrow-past-other' => '{0} tý. síðani',
+ 'tue-past-one' => '{0} týsdag síðani',
+ 'tue-past-other' => '{0} týsdagar síðani',
+ 'tue-short-future-one' => 'um {0} týs.',
+ 'tue-short-future-other' => 'um {0} týs.',
+ 'tue-short-past-one' => '{0} týs. síðani',
+ 'tue-short-past-other' => '{0} týs. síðani',
+ 'wed-future-one' => 'um {0} mikudag',
+ 'wed-future-other' => 'um {0} mikudagar',
+ 'wed-narrow-future-one' => 'um {0} mi.',
+ 'wed-narrow-future-other' => 'um {0} mi.',
+ 'wed-narrow-past-one' => '{0} mi. síðani',
+ 'wed-narrow-past-other' => '{0} mi. síðani',
+ 'wed-past-one' => '{0} mikudag síðani',
+ 'wed-past-other' => '{0} mikudagar síðani',
+ 'wed-short-future-one' => 'um {0} mik.',
+ 'wed-short-future-other' => 'um {0} mik.',
+ 'wed-short-past-one' => '{0} mik. síðani',
+ 'wed-short-past-other' => '{0} mik. síðani',
+ 'week-future-one' => 'um {0} viku',
+ 'week-future-other' => 'um {0} vikur',
+ 'week-narrow-future-one' => 'um {0} v.',
+ 'week-narrow-future-other' => 'um {0} v.',
+ 'week-narrow-past-one' => '{0} v. síðan',
+ 'week-narrow-past-other' => '{0} v. síðan',
'week-one' => '{0} vika',
'week-other' => '{0} vikur',
+ 'week-past-one' => '{0} vika síðan',
+ 'week-past-other' => '{0} vikur síðan',
+ 'week-short-future-one' => 'um {0} vi.',
+ 'week-short-future-other' => 'um {0} vi.',
+ 'week-short-past-one' => '{0} vi. síðan',
+ 'week-short-past-other' => '{0} vi. síðan',
+ 'year-future-one' => 'um {0} ár',
+ 'year-future-other' => 'um {0} ár',
+ 'year-narrow-future-one' => 'um {0} ár',
+ 'year-narrow-future-other' => 'um {0} ár',
+ 'year-narrow-past-one' => '{0} ár síðan',
+ 'year-narrow-past-other' => '{0} ár síðan',
'year-one' => '{0} ár',
- 'year-other' => '{0} ára',
-);
+ 'year-other' => '{0} ár',
+ 'year-past-one' => '{0} ár síðan',
+ 'year-past-other' => '{0} ár síðan',
+ 'year-short-future-one' => 'um {0} ár',
+ 'year-short-future-other' => 'um {0} ár',
+ 'year-short-past-one' => '{0} ár síðan',
+ 'year-short-past-other' => '{0} ár síðan',
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesFr.php b/MLEB/cldr/CldrNames/CldrNamesFr.php
index 76e1686a..9dcd6f56 100644
--- a/MLEB/cldr/CldrNames/CldrNamesFr.php
+++ b/MLEB/cldr/CldrNames/CldrNamesFr.php
@@ -1,12 +1,12 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'afar',
'ab' => 'abkhaze',
'ace' => 'aceh',
'ach' => 'acoli',
'ada' => 'adangme',
- 'ady' => 'adyghéen',
+ 'ady' => 'adyguéen',
'ae' => 'avestique',
'aeb' => 'arabe tunisien',
'af' => 'afrikaans',
@@ -26,15 +26,16 @@ $languageNames = array(
'ar' => 'arabe',
'ar-001' => 'arabe standard moderne',
'arc' => 'araméen',
- 'arn' => 'araukan',
+ 'arn' => 'mapuche',
'aro' => 'araona',
'arp' => 'arapaho',
'arq' => 'arabe algérien',
+ 'ars' => 'arabe najdi',
'arw' => 'arawak',
'ary' => 'arabe marocain',
'arz' => 'arabe égyptien',
'as' => 'assamais',
- 'asa' => 'assou',
+ 'asa' => 'asu',
'ase' => 'langue des signes américaine',
'ast' => 'asturien',
'av' => 'avar',
@@ -42,7 +43,6 @@ $languageNames = array(
'awa' => 'awadhi',
'ay' => 'aymara',
'az' => 'azéri',
- 'azb' => 'azéri méridional',
'ba' => 'bachkir',
'bal' => 'baloutchi',
'ban' => 'balinais',
@@ -50,7 +50,7 @@ $languageNames = array(
'bas' => 'bassa',
'bax' => 'bamoun',
'bbc' => 'batak toba',
- 'bbj' => 'ghomala',
+ 'bbj' => 'ghomalaʼ',
'be' => 'biélorusse',
'bej' => 'bedja',
'bem' => 'bemba',
@@ -59,7 +59,8 @@ $languageNames = array(
'bfd' => 'bafut',
'bfq' => 'badaga',
'bg' => 'bulgare',
- 'bho' => 'bhojpuri',
+ 'bgn' => 'baloutchi occidental',
+ 'bho' => 'bhodjpouri',
'bi' => 'bichelamar',
'bik' => 'bikol',
'bin' => 'bini',
@@ -81,7 +82,7 @@ $languageNames = array(
'bug' => 'bugi',
'bum' => 'boulou',
'byn' => 'blin',
- 'byv' => 'medumba',
+ 'byv' => 'médumba',
'ca' => 'catalan',
'cad' => 'caddo',
'car' => 'caribe',
@@ -106,6 +107,7 @@ $languageNames = array(
'cps' => 'capiznon',
'cr' => 'cree',
'crh' => 'turc de Crimée',
+ 'crs' => 'créole seychellois',
'cs' => 'tchèque',
'csb' => 'kachoube',
'cu' => 'slavon d’église',
@@ -119,7 +121,7 @@ $languageNames = array(
'de-at' => 'allemand autrichien',
'de-ch' => 'allemand suisse',
'del' => 'delaware',
- 'den' => 'slavey',
+ 'den' => 'esclave',
'dgr' => 'dogrib',
'din' => 'dinka',
'dje' => 'zarma',
@@ -135,10 +137,10 @@ $languageNames = array(
'dzg' => 'dazaga',
'ebu' => 'embou',
'ee' => 'éwé',
- 'efi' => 'efik',
+ 'efi' => 'éfik',
'egl' => 'émilien',
'egy' => 'égyptien ancien',
- 'eka' => 'ekajuk',
+ 'eka' => 'ékadjouk',
'el' => 'grec',
'elx' => 'élamite',
'en' => 'anglais',
@@ -149,9 +151,9 @@ $languageNames = array(
'enm' => 'moyen anglais',
'eo' => 'espéranto',
'es' => 'espagnol',
- 'es-419' => 'espagnol latino-américain',
- 'es-es' => 'espagnol européen',
- 'es-mx' => 'espagnol mexicain',
+ 'es-419' => 'espagnol d’Amérique latine',
+ 'es-es' => 'espagnol d’Espagne',
+ 'es-mx' => 'espagnol du Mexique',
'esu' => 'youpik central',
'et' => 'estonien',
'eu' => 'basque',
@@ -173,7 +175,7 @@ $languageNames = array(
'frc' => 'français cadien',
'frm' => 'moyen français',
'fro' => 'ancien français',
- 'frp' => 'franco-provençal',
+ 'frp' => 'francoprovençal',
'frr' => 'frison du Nord',
'frs' => 'frison oriental',
'fur' => 'frioulan',
@@ -187,7 +189,7 @@ $languageNames = array(
'gbz' => 'dari zoroastrien',
'gd' => 'gaélique écossais',
'gez' => 'guèze',
- 'gil' => 'gilbertais',
+ 'gil' => 'gilbertin',
'gl' => 'galicien',
'glk' => 'gilaki',
'gmh' => 'moyen haut-allemand',
@@ -200,11 +202,11 @@ $languageNames = array(
'grb' => 'grebo',
'grc' => 'grec ancien',
'gsw' => 'suisse allemand',
- 'gu' => 'gujarati',
+ 'gu' => 'goudjerati',
'guc' => 'wayuu',
'gur' => 'gurenne',
'guz' => 'gusii',
- 'gv' => 'manx',
+ 'gv' => 'mannois',
'gwi' => 'gwichʼin',
'ha' => 'haoussa',
'hai' => 'haida',
@@ -220,7 +222,7 @@ $languageNames = array(
'hr' => 'croate',
'hsb' => 'haut-sorabe',
'hsn' => 'xiang',
- 'ht' => 'haïtien',
+ 'ht' => 'créole haïtien',
'hu' => 'hongrois',
'hup' => 'hupa',
'hy' => 'arménien',
@@ -233,7 +235,7 @@ $languageNames = array(
'ig' => 'igbo',
'ii' => 'yi du Sichuan',
'ik' => 'inupiaq',
- 'ilo' => 'ilokano',
+ 'ilo' => 'ilocano',
'inh' => 'ingouche',
'io' => 'ido',
'is' => 'islandais',
@@ -241,10 +243,10 @@ $languageNames = array(
'iu' => 'inuktitut',
'izh' => 'ingrien',
'ja' => 'japonais',
- 'jam' => 'créole anglais jamaïcain',
+ 'jam' => 'créole jamaïcain',
'jbo' => 'lojban',
'jgo' => 'ngomba',
- 'jmc' => 'machame',
+ 'jmc' => 'matchamé',
'jpr' => 'judéo-persan',
'jrb' => 'judéo-arabe',
'jut' => 'jute',
@@ -256,14 +258,14 @@ $languageNames = array(
'kaj' => 'jju',
'kam' => 'kamba',
'kaw' => 'kawi',
- 'kbd' => 'kabardin',
+ 'kbd' => 'kabarde',
'kbl' => 'kanembou',
'kcg' => 'tyap',
- 'kde' => 'makonde',
+ 'kde' => 'makondé',
'kea' => 'capverdien',
- 'ken' => 'kenyang',
+ 'ken' => 'kényang',
'kfo' => 'koro',
- 'kg' => 'kongo',
+ 'kg' => 'kikongo',
'kgp' => 'caingangue',
'kha' => 'khasi',
'kho' => 'khotanais',
@@ -275,23 +277,23 @@ $languageNames = array(
'kk' => 'kazakh',
'kkj' => 'kako',
'kl' => 'groenlandais',
- 'kln' => 'kalenjin',
+ 'kln' => 'kalendjin',
'km' => 'khmer',
- 'kmb' => 'kiMboundou',
+ 'kmb' => 'kimboundou',
'kn' => 'kannada',
'ko' => 'coréen',
'koi' => 'komi-permiak',
'kok' => 'konkani',
- 'kos' => 'kusaien',
+ 'kos' => 'kosraéen',
'kpe' => 'kpellé',
'kr' => 'kanouri',
'krc' => 'karatchaï balkar',
'kri' => 'krio',
'krj' => 'kinaray-a',
'krl' => 'carélien',
- 'kru' => 'kurukh',
- 'ks' => 'kashmiri',
- 'ksb' => 'chambala',
+ 'kru' => 'kouroukh',
+ 'ks' => 'cachemiri',
+ 'ksb' => 'shambala',
'ksf' => 'bafia',
'ksh' => 'francique ripuaire',
'ku' => 'kurde',
@@ -317,37 +319,39 @@ $languageNames = array(
'ln' => 'lingala',
'lo' => 'lao',
'lol' => 'mongo',
+ 'lou' => 'créole louisianais',
'loz' => 'lozi',
+ 'lrc' => 'lori du Nord',
'lt' => 'lituanien',
'ltg' => 'latgalien',
- 'lu' => 'luba-katanga',
- 'lua' => 'luba-lulua',
- 'lui' => 'luiseno',
+ 'lu' => 'luba-katanga (kiluba)',
+ 'lua' => 'luba-kasaï (ciluba)',
+ 'lui' => 'luiseño',
'lun' => 'lunda',
'luo' => 'luo',
- 'lus' => 'lushai',
- 'luy' => 'oluluyia',
+ 'lus' => 'lushaï',
+ 'luy' => 'luyia',
'lv' => 'letton',
'lzh' => 'chinois littéraire',
'lzz' => 'laze',
'mad' => 'madurais',
'maf' => 'mafa',
'mag' => 'magahi',
- 'mai' => 'maithili',
+ 'mai' => 'maïthili',
'mak' => 'makassar',
'man' => 'mandingue',
- 'mas' => 'masai',
+ 'mas' => 'maasaï',
'mde' => 'maba',
- 'mdf' => 'moksa',
+ 'mdf' => 'mokcha',
'mdr' => 'mandar',
'men' => 'mendé',
- 'mer' => 'merou',
+ 'mer' => 'meru',
'mfe' => 'créole mauricien',
'mg' => 'malgache',
'mga' => 'moyen irlandais',
- 'mgh' => 'makhuwa-meetto',
- 'mgo' => 'méta’',
- 'mh' => 'marshall',
+ 'mgh' => 'makua',
+ 'mgo' => 'metaʼ',
+ 'mh' => 'marshallais',
'mi' => 'maori',
'mic' => 'micmac',
'min' => 'minangkabau',
@@ -358,11 +362,11 @@ $languageNames = array(
'mni' => 'manipuri',
'moh' => 'mohawk',
'mos' => 'moré',
- 'mr' => 'marathe',
+ 'mr' => 'marathi',
'mrj' => 'mari occidental',
'ms' => 'malais',
'mt' => 'maltais',
- 'mua' => 'mundang',
+ 'mua' => 'moundang',
'mul' => 'multilingue',
'mus' => 'creek',
'mwl' => 'mirandais',
@@ -379,15 +383,16 @@ $languageNames = array(
'nb' => 'norvégien bokmål',
'nd' => 'ndébélé du Nord',
'nds' => 'bas-allemand',
+ 'nds-nl' => 'bas-saxon néerlandais',
'ne' => 'népalais',
'new' => 'newari',
'ng' => 'ndonga',
- 'nia' => 'nias',
- 'niu' => 'niué',
- 'njo' => 'ao naga',
+ 'nia' => 'niha',
+ 'niu' => 'niuéen',
+ 'njo' => 'Ao',
'nl' => 'néerlandais',
'nl-be' => 'flamand',
- 'nmg' => 'kwasio',
+ 'nmg' => 'ngoumba',
'nn' => 'norvégien nynorsk',
'nnh' => 'ngiemboon',
'no' => 'norvégien',
@@ -398,9 +403,9 @@ $languageNames = array(
'nr' => 'ndébélé du Sud',
'nso' => 'sotho du Nord',
'nus' => 'nuer',
- 'nv' => 'navaho',
+ 'nv' => 'navajo',
'nwc' => 'newarî classique',
- 'ny' => 'nyanja',
+ 'ny' => 'chewa',
'nym' => 'nyamwezi',
'nyn' => 'nyankolé',
'nyo' => 'nyoro',
@@ -408,7 +413,7 @@ $languageNames = array(
'oc' => 'occitan',
'oj' => 'ojibwa',
'om' => 'oromo',
- 'or' => 'oriya',
+ 'or' => 'odia',
'os' => 'ossète',
'osa' => 'osage',
'ota' => 'turc ottoman',
@@ -419,7 +424,8 @@ $languageNames = array(
'pap' => 'papiamento',
'pau' => 'palau',
'pcd' => 'picard',
- 'pdc' => 'allemand de Pennsylvanie',
+ 'pcm' => 'pidgin nigérian',
+ 'pdc' => 'pennsilfaanisch',
'pdt' => 'bas-prussien',
'peo' => 'persan ancien',
'pfl' => 'allemand palatin',
@@ -436,25 +442,25 @@ $languageNames = array(
'pt-br' => 'portugais brésilien',
'pt-pt' => 'portugais européen',
'qu' => 'quechua',
- 'quc' => 'k’iche’',
+ 'quc' => 'quiché',
'qug' => 'quichua du Haut-Chimborazo',
'raj' => 'rajasthani',
'rap' => 'rapanui',
'rar' => 'rarotongien',
'rgn' => 'romagnol',
- 'rif' => 'riffain',
+ 'rif' => 'rifain',
'rm' => 'romanche',
'rn' => 'roundi',
'ro' => 'roumain',
'ro-md' => 'moldave',
'rof' => 'rombo',
- 'rom' => 'tzigane',
+ 'rom' => 'romani',
'rtm' => 'rotuman',
'ru' => 'russe',
'rue' => 'ruthène',
'rug' => 'roviana',
- 'rup' => 'valaque',
- 'rw' => 'rwanda',
+ 'rup' => 'aroumain',
+ 'rw' => 'kinyarwanda',
'rwk' => 'rwa',
'sa' => 'sanskrit',
'sad' => 'sandawe',
@@ -462,39 +468,40 @@ $languageNames = array(
'sam' => 'araméen samaritain',
'saq' => 'samburu',
'sas' => 'sasak',
- 'sat' => 'santal',
+ 'sat' => 'santali',
'saz' => 'saurashtra',
'sba' => 'ngambay',
- 'sbp' => 'sangu',
+ 'sbp' => 'isangu',
'sc' => 'sarde',
'scn' => 'sicilien',
'sco' => 'écossais',
'sd' => 'sindhi',
'sdc' => 'sarde sassarais',
- 'se' => 'sami du Nord',
+ 'sdh' => 'kurde du Sud',
+ 'se' => 'same du Nord',
'see' => 'seneca',
- 'seh' => 'sena',
+ 'seh' => 'cisena',
'sei' => 'séri',
'sel' => 'selkoupe',
'ses' => 'koyraboro senni',
- 'sg' => 'sangho',
+ 'sg' => 'sango',
'sga' => 'ancien irlandais',
'sgs' => 'samogitien',
'sh' => 'serbo-croate',
'shi' => 'chleuh',
'shn' => 'shan',
'shu' => 'arabe tchadien',
- 'si' => 'cinghalais',
+ 'si' => 'cingalais',
'sid' => 'sidamo',
'sk' => 'slovaque',
'sl' => 'slovène',
'sli' => 'bas-silésien',
- 'sly' => 'selayar',
+ 'sly' => 'sélayar',
'sm' => 'samoan',
- 'sma' => 'sami du Sud',
- 'smj' => 'sami de Lule',
- 'smn' => 'sami d’Inari',
- 'sms' => 'sami skolt',
+ 'sma' => 'same du Sud',
+ 'smj' => 'same de Lule',
+ 'smn' => 'same d’Inari',
+ 'sms' => 'same skolt',
'sn' => 'shona',
'snk' => 'soninké',
'so' => 'somali',
@@ -505,26 +512,26 @@ $languageNames = array(
'srr' => 'sérère',
'ss' => 'swati',
'ssy' => 'saho',
- 'st' => 'sesotho',
- 'stq' => 'frison de Saterland',
+ 'st' => 'sotho du Sud',
+ 'stq' => 'saterlandais',
'su' => 'soundanais',
- 'suk' => 'sukuma',
+ 'suk' => 'soukouma',
'sus' => 'soussou',
'sux' => 'sumérien',
'sv' => 'suédois',
'sw' => 'swahili',
+ 'sw-cd' => 'swahili du Congo',
'swb' => 'comorien',
- 'swc' => 'swahili du Congo',
'syc' => 'syriaque classique',
'syr' => 'syriaque',
'szl' => 'silésien',
'ta' => 'tamoul',
'tcy' => 'toulou',
'te' => 'télougou',
- 'tem' => 'temne',
+ 'tem' => 'timné',
'teo' => 'teso',
'ter' => 'tereno',
- 'tet' => 'tetum',
+ 'tet' => 'tétoum',
'tg' => 'tadjik',
'th' => 'thaï',
'ti' => 'tigrigna',
@@ -532,14 +539,14 @@ $languageNames = array(
'tiv' => 'tiv',
'tk' => 'turkmène',
'tkl' => 'tokelau',
- 'tkr' => 'tsakhur',
+ 'tkr' => 'tsakhour',
'tl' => 'tagalog',
'tlh' => 'klingon',
'tli' => 'tlingit',
'tly' => 'talysh',
'tmh' => 'tamacheq',
'tn' => 'tswana',
- 'to' => 'tonguien',
+ 'to' => 'tongien',
'tog' => 'tonga nyasa',
'tpi' => 'tok pisin',
'tr' => 'turc',
@@ -555,8 +562,8 @@ $languageNames = array(
'tw' => 'twi',
'twq' => 'tasawaq',
'ty' => 'tahitien',
- 'tyv' => 'touva',
- 'tzm' => 'tamazight',
+ 'tyv' => 'touvain',
+ 'tzm' => 'amazighe de l’Atlas central',
'udm' => 'oudmourte',
'ug' => 'ouïghour',
'uga' => 'ougaritique',
@@ -572,7 +579,7 @@ $languageNames = array(
'vi' => 'vietnamien',
'vls' => 'flamand occidental',
'vmf' => 'franconien du Main',
- 'vo' => 'volapuk',
+ 'vo' => 'volapük',
'vot' => 'vote',
'vro' => 'võro',
'vun' => 'vunjo',
@@ -581,8 +588,9 @@ $languageNames = array(
'wal' => 'walamo',
'war' => 'waray',
'was' => 'washo',
+ 'wbp' => 'warlpiri',
'wo' => 'wolof',
- 'wuu' => 'chinois wu',
+ 'wuu' => 'wu',
'xal' => 'kalmouk',
'xh' => 'xhosa',
'xmf' => 'mingrélien',
@@ -605,12 +613,12 @@ $languageNames = array(
'zh-hans' => 'chinois simplifié',
'zh-hant' => 'chinois traditionnel',
'zu' => 'zoulou',
- 'zun' => 'zuni',
+ 'zun' => 'zuñi',
'zxx' => 'sans contenu linguistique',
'zza' => 'zazaki',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'ADP' => 'peseta andorrane',
'AED' => 'dirham des Émirats arabes unis',
'AFA' => 'afghani (1927–2002)',
@@ -635,13 +643,16 @@ $currencyNames = array(
'AZN' => 'manat azéri',
'BAD' => 'dinar bosniaque',
'BAM' => 'mark convertible bosniaque',
+ 'BAN' => 'nouveau dinar bosniaque (1994–1997)',
'BBD' => 'dollar barbadien',
'BDT' => 'taka bangladeshi',
'BEC' => 'franc belge (convertible)',
'BEF' => 'franc belge',
'BEL' => 'franc belge (financier)',
'BGL' => 'lev bulgare (1962–1999)',
+ 'BGM' => 'lev socialiste bulgare',
'BGN' => 'lev bulgare',
+ 'BGO' => 'lev bulgare (1879–1952)',
'BHD' => 'dinar bahreïni',
'BIF' => 'franc burundais',
'BMD' => 'dollar bermudien',
@@ -662,7 +673,8 @@ $currencyNames = array(
'BUK' => 'kyat birman',
'BWP' => 'pula botswanais',
'BYB' => 'nouveau rouble biélorusse (1994–1999)',
- 'BYR' => 'rouble biélorusse',
+ 'BYN' => 'rouble biélorusse',
+ 'BYR' => 'rouble biélorusse (2000–2016)',
'BZD' => 'dollar bélizéen',
'CAD' => 'dollar canadien',
'CDF' => 'franc congolais',
@@ -672,6 +684,7 @@ $currencyNames = array(
'CLE' => 'escudo chilien',
'CLF' => 'unité d’investissement chilienne',
'CLP' => 'peso chilien',
+ 'CNH' => 'yuan chinois (zone extracôtière)',
'CNX' => 'dollar de la Banque populaire chinoise',
'CNY' => 'yuan renminbi chinois',
'COP' => 'peso colombien',
@@ -732,7 +745,8 @@ $currencyNames = array(
'ILS' => 'nouveau shekel israélien',
'INR' => 'roupie indienne',
'IQD' => 'dinar irakien',
- 'IRR' => 'rial iranien',
+ 'IRR' => 'riyal iranien',
+ 'ISJ' => 'couronne islandaise (1918–1981)',
'ISK' => 'couronne islandaise',
'ITL' => 'lire italienne',
'JMD' => 'dollar jamaïcain',
@@ -764,19 +778,23 @@ $currencyNames = array(
'LYD' => 'dinar libyen',
'MAD' => 'dirham marocain',
'MAF' => 'franc marocain',
+ 'MCF' => 'franc monégasque',
+ 'MDC' => 'cupon moldave',
'MDL' => 'leu moldave',
'MGA' => 'ariary malgache',
'MGF' => 'franc malgache',
'MKD' => 'denar macédonien',
+ 'MKN' => 'denar macédonien (1992–1993)',
'MLF' => 'franc malien',
'MMK' => 'kyat myanmarais',
'MNT' => 'tugrik mongol',
'MOP' => 'pataca macanaise',
- 'MRO' => 'ouguiya mauritanien',
+ 'MRO' => 'ouguiya mauritanien (1973–2017)',
+ 'MRU' => 'ouguiya mauritanien',
'MTL' => 'lire maltaise',
'MTP' => 'livre maltaise',
'MUR' => 'roupie mauricienne',
- 'MVP' => 'roupie maldivienne',
+ 'MVP' => 'roupie maldivienne (1947–1981)',
'MVR' => 'rufiyaa maldivien',
'MWK' => 'kwacha malawite',
'MXN' => 'peso mexicain',
@@ -794,11 +812,11 @@ $currencyNames = array(
'NOK' => 'couronne norvégienne',
'NPR' => 'roupie népalaise',
'NZD' => 'dollar néo-zélandais',
- 'OMR' => 'rial omanais',
+ 'OMR' => 'riyal omanais',
'PAB' => 'balboa panaméen',
'PEI' => 'inti péruvien',
- 'PEN' => 'nouveau sol péruvien',
- 'PES' => 'sol péruvien',
+ 'PEN' => 'sol péruvien',
+ 'PES' => 'sol péruvien (1863–1985)',
'PGK' => 'kina papouan-néo-guinéen',
'PHP' => 'peso philippin',
'PKR' => 'roupie pakistanaise',
@@ -806,7 +824,7 @@ $currencyNames = array(
'PLZ' => 'zloty (1950–1995)',
'PTE' => 'escudo portugais',
'PYG' => 'guaraní paraguayen',
- 'QAR' => 'rial qatari',
+ 'QAR' => 'riyal qatari',
'RHD' => 'dollar rhodésien',
'ROL' => 'ancien leu roumain',
'RON' => 'leu roumain',
@@ -814,7 +832,7 @@ $currencyNames = array(
'RUB' => 'rouble russe',
'RUR' => 'rouble russe (1991–1998)',
'RWF' => 'franc rwandais',
- 'SAR' => 'rial saoudien',
+ 'SAR' => 'riyal saoudien',
'SBD' => 'dollar des îles Salomon',
'SCR' => 'roupie des Seychelles',
'SDD' => 'dinar soudanais',
@@ -830,7 +848,8 @@ $currencyNames = array(
'SRD' => 'dollar surinamais',
'SRG' => 'florin surinamais',
'SSP' => 'livre sud-soudanaise',
- 'STD' => 'dobra santoméen',
+ 'STD' => 'dobra santoméen (1977–2017)',
+ 'STN' => 'dobra santoméen',
'SUR' => 'rouble soviétique',
'SVC' => 'colón salvadorien',
'SYP' => 'livre syrienne',
@@ -860,7 +879,8 @@ $currencyNames = array(
'UYU' => 'peso uruguayen',
'UZS' => 'sum ouzbek',
'VEB' => 'bolivar vénézuélien (1871–2008)',
- 'VEF' => 'bolivar vénézuélien',
+ 'VEF' => 'bolivar vénézuélien (2008–2018)',
+ 'VES' => 'bolivar vénézuélien',
'VND' => 'dông vietnamien',
'VNN' => 'dông vietnamien (1978–1985)',
'VUV' => 'vatu vanuatuan',
@@ -887,10 +907,11 @@ $currencyNames = array(
'XUA' => 'unité de compte ADB',
'XXX' => 'devise inconnue ou non valide',
'YDD' => 'dinar du Yémen',
- 'YER' => 'rial yéménite',
+ 'YER' => 'riyal yéménite',
'YUD' => 'nouveau dinar yougoslave',
'YUM' => 'dinar yougoslave Noviy',
'YUN' => 'dinar yougoslave convertible',
+ 'YUR' => 'dinar réformé yougoslave (1992–1993)',
'ZAL' => 'rand sud-africain (financier)',
'ZAR' => 'rand sud-africain',
'ZMK' => 'kwacha zambien (1968–2012)',
@@ -900,12 +921,14 @@ $currencyNames = array(
'ZWD' => 'dollar zimbabwéen',
'ZWL' => 'dollar zimbabwéen (2009)',
'ZWR' => 'dollar zimbabwéen (2008)',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
+ 'ADP' => 'ADP',
'AED' => 'AED',
'AFA' => 'AFA',
'AFN' => 'AFN',
+ 'ALK' => 'ALK',
'ALL' => 'ALL',
'AMD' => 'AMD',
'ANG' => 'ANG',
@@ -918,15 +941,23 @@ $currencySymbols = array(
'ARM' => 'ARM',
'ARP' => 'ARP',
'ARS' => '$AR',
+ 'ATS' => 'ATS',
'AUD' => '$AU',
'AWG' => 'AWG',
'AZM' => 'AZM',
'AZN' => 'AZN',
+ 'BAD' => 'BAD',
'BAM' => 'BAM',
+ 'BAN' => 'BAN',
'BBD' => 'BBD',
'BDT' => 'BDT',
+ 'BEC' => 'BEC',
'BEF' => 'FB',
+ 'BEL' => 'BEL',
+ 'BGL' => 'BGL',
+ 'BGM' => 'BGM',
'BGN' => 'BGN',
+ 'BGO' => 'BGO',
'BHD' => 'BHD',
'BIF' => 'BIF',
'BMD' => '$BM',
@@ -942,53 +973,73 @@ $currencySymbols = array(
'BRN' => 'BRN',
'BRR' => 'BRR',
'BRZ' => 'BRZ',
- 'BSD' => '$BS',
+ 'BSD' => 'BSD',
'BTN' => 'BTN',
'BUK' => 'BUK',
'BWP' => 'BWP',
+ 'BYB' => 'BYB',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => '$BZ',
'CAD' => '$CA',
'CDF' => 'CDF',
+ 'CHE' => 'CHE',
'CHF' => 'CHF',
+ 'CHW' => 'CHW',
'CLE' => 'CLE',
'CLF' => 'CLF',
'CLP' => '$CL',
+ 'CNH' => 'CNH',
'CNX' => 'CNX',
'CNY' => 'CNY',
'COP' => '$CO',
'COU' => 'COU',
'CRC' => 'CRC',
+ 'CSD' => 'CSD',
+ 'CSK' => 'CSK',
'CUC' => 'CUC',
'CUP' => 'CUP',
'CVE' => 'CVE',
'CYP' => '£CY',
'CZK' => 'CZK',
+ 'DDM' => 'DDM',
+ 'DEM' => 'DEM',
'DJF' => 'DJF',
'DKK' => 'DKK',
'DOP' => 'DOP',
'DZD' => 'DZD',
'ECS' => 'ECS',
'ECV' => 'ECV',
+ 'EEK' => 'EEK',
'EGP' => 'EGP',
'ERN' => 'ERN',
+ 'ESA' => 'ESA',
+ 'ESB' => 'ESB',
+ 'ESP' => 'ESP',
'ETB' => 'ETB',
'EUR' => '€',
+ 'FIM' => 'FIM',
'FJD' => '$FJ',
'FKP' => '£FK',
'FRF' => 'F',
'GBP' => '£GB',
'GEK' => 'GEK',
'GEL' => 'GEL',
+ 'GHC' => 'GHC',
'GHS' => 'GHS',
'GIP' => '£GI',
'GMD' => 'GMD',
'GNF' => 'GNF',
+ 'GNS' => 'GNS',
'GQE' => 'GQE',
+ 'GRD' => 'GRD',
'GTQ' => 'GTQ',
+ 'GWE' => 'GWE',
+ 'GWP' => 'GWP',
'GYD' => 'GYD',
'HKD' => 'HKD',
'HNL' => 'HNL',
+ 'HRD' => 'HRD',
'HRK' => 'HRK',
'HTG' => 'HTG',
'HUF' => 'HUF',
@@ -1000,6 +1051,7 @@ $currencySymbols = array(
'INR' => '₹',
'IQD' => 'IQD',
'IRR' => 'IRR',
+ 'ISJ' => 'ISJ',
'ISK' => 'ISK',
'ITL' => '₤IT',
'JMD' => 'JMD',
@@ -1022,18 +1074,29 @@ $currencySymbols = array(
'LRD' => 'LRD',
'LSL' => 'lLS',
'LTL' => 'LTL',
+ 'LTT' => 'LTT',
+ 'LUC' => 'LUC',
+ 'LUF' => 'LUF',
+ 'LUL' => 'LUL',
'LVL' => 'LVL',
+ 'LVR' => 'LVR',
'LYD' => 'LYD',
'MAD' => 'MAD',
'MAF' => 'fMA',
+ 'MCF' => 'MCF',
+ 'MDC' => 'MDC',
'MDL' => 'MDL',
'MGA' => 'MGA',
'MGF' => 'Fmg',
'MKD' => 'MKD',
+ 'MKN' => 'MKN',
+ 'MLF' => 'MLF',
'MMK' => 'MMK',
'MNT' => 'MNT',
'MOP' => 'MOP',
'MRO' => 'MRO',
+ 'MRU' => 'MRU',
+ 'MTL' => 'MTL',
'MTP' => '£MT',
'MUR' => 'MUR',
'MVP' => 'MVP',
@@ -1050,6 +1113,7 @@ $currencySymbols = array(
'NGN' => 'NGN',
'NIC' => 'NIC',
'NIO' => 'NIO',
+ 'NLG' => 'NLG',
'NOK' => 'NOK',
'NPR' => 'NPR',
'NZD' => '$NZ',
@@ -1062,12 +1126,16 @@ $currencySymbols = array(
'PHP' => 'PHP',
'PKR' => 'PKR',
'PLN' => 'PLN',
+ 'PLZ' => 'PLZ',
+ 'PTE' => 'PTE',
'PYG' => 'PYG',
'QAR' => 'QAR',
'RHD' => '$RH',
+ 'ROL' => 'ROL',
'RON' => 'RON',
'RSD' => 'RSD',
'RUB' => 'RUB',
+ 'RUR' => 'RUR',
'RWF' => 'RWF',
'SAR' => 'SAR',
'SBD' => '$SB',
@@ -1078,17 +1146,23 @@ $currencySymbols = array(
'SEK' => 'SEK',
'SGD' => '$SG',
'SHP' => 'SHP',
+ 'SIT' => 'SIT',
+ 'SKK' => 'SKK',
'SLL' => 'SLL',
'SOS' => 'SOS',
'SRD' => '$SR',
'SRG' => 'SRG',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'STN',
+ 'SUR' => 'SUR',
'SVC' => 'SVC',
'SYP' => 'SYP',
'SZL' => 'SZL',
- 'THB' => '฿',
+ 'THB' => 'THB',
+ 'TJR' => 'TJR',
'TJS' => 'TJS',
+ 'TMM' => 'TMM',
'TMT' => 'TMT',
'TND' => 'TND',
'TOP' => 'TOP',
@@ -1099,6 +1173,7 @@ $currencySymbols = array(
'TWD' => 'TWD',
'TZS' => 'TZS',
'UAH' => 'UAH',
+ 'UAK' => 'UAK',
'UGS' => 'UGS',
'UGX' => 'UGX',
'USD' => '$US',
@@ -1110,6 +1185,7 @@ $currencySymbols = array(
'UZS' => 'UZS',
'VEB' => 'VEB',
'VEF' => 'VEF',
+ 'VES' => 'VES',
'VND' => '₫',
'VNN' => 'VNN',
'VUV' => 'VUV',
@@ -1123,6 +1199,7 @@ $currencySymbols = array(
'XBD' => 'XBD',
'XCD' => 'XCD',
'XDR' => 'DTS',
+ 'XEU' => 'XEU',
'XFO' => 'XFO',
'XFU' => 'XFU',
'XOF' => 'CFA',
@@ -1136,6 +1213,10 @@ $currencySymbols = array(
'XXX' => 'XXX',
'YDD' => 'YDD',
'YER' => 'YER',
+ 'YUD' => 'YUD',
+ 'YUM' => 'YUM',
+ 'YUN' => 'YUN',
+ 'YUR' => 'YUR',
'ZAL' => 'ZAL',
'ZAR' => 'ZAR',
'ZMK' => 'ZMK',
@@ -1145,9 +1226,9 @@ $currencySymbols = array(
'ZWD' => 'ZWD',
'ZWL' => 'ZWL',
'ZWR' => 'ZWR',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'Île de l’Ascension',
'AD' => 'Andorre',
'AE' => 'Émirats arabes unis',
@@ -1156,7 +1237,6 @@ $countryNames = array(
'AI' => 'Anguilla',
'AL' => 'Albanie',
'AM' => 'Arménie',
- 'AN' => 'Antilles néerlandaises',
'AO' => 'Angola',
'AQ' => 'Antarctique',
'AR' => 'Argentine',
@@ -1206,7 +1286,7 @@ $countryNames = array(
'CW' => 'Curaçao',
'CX' => 'Île Christmas',
'CY' => 'Chypre',
- 'CZ' => 'République tchèque',
+ 'CZ' => 'Tchéquie',
'DE' => 'Allemagne',
'DG' => 'Diego Garcia',
'DJ' => 'Djibouti',
@@ -1223,6 +1303,7 @@ $countryNames = array(
'ES' => 'Espagne',
'ET' => 'Éthiopie',
'EU' => 'Union européenne',
+ 'EZ' => 'zone euro',
'FI' => 'Finlande',
'FJ' => 'Fidji',
'FK' => 'Îles Malouines',
@@ -1300,7 +1381,7 @@ $countryNames = array(
'MH' => 'Îles Marshall',
'MK' => 'Macédoine',
'ML' => 'Mali',
- 'MM' => 'Myanmar',
+ 'MM' => 'Myanmar (Birmanie)',
'MN' => 'Mongolie',
'MO' => 'Macao',
'MP' => 'Îles Mariannes du Nord',
@@ -1365,7 +1446,7 @@ $countryNames = array(
'SR' => 'Suriname',
'SS' => 'Soudan du Sud',
'ST' => 'Sao Tomé-et-Principe',
- 'SV' => 'El Salvador',
+ 'SV' => 'Salvador',
'SX' => 'Saint-Martin (partie néerlandaise)',
'SY' => 'Syrie',
'SZ' => 'Swaziland',
@@ -1389,6 +1470,7 @@ $countryNames = array(
'UA' => 'Ukraine',
'UG' => 'Ouganda',
'UM' => 'Îles mineures éloignées des États-Unis',
+ 'UN' => 'NU',
'US' => 'É.-U.',
'UY' => 'Uruguay',
'UZ' => 'Ouzbékistan',
@@ -1407,41 +1489,55 @@ $countryNames = array(
'ZA' => 'Afrique du Sud',
'ZM' => 'Zambie',
'ZW' => 'Zimbabwe',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-one' => '{0} siècle',
+ 'century-other' => '{0} siècles',
'day-future-one' => 'dans {0} jour',
'day-future-other' => 'dans {0} jours',
'day-narrow-future-one' => '+{0} j',
'day-narrow-future-other' => '+{0} j',
'day-narrow-past-one' => '-{0} j',
'day-narrow-past-other' => '-{0} j',
- 'day-one' => '{0} jour',
- 'day-other' => '{0} jours',
+ 'day-one' => '{0} jour',
+ 'day-other' => '{0} jours',
'day-past-one' => 'il y a {0} jour',
'day-past-other' => 'il y a {0} jours',
'day-short-future-one' => 'dans {0} j',
'day-short-future-other' => 'dans {0} j',
'day-short-past-one' => 'il y a {0} j',
'day-short-past-other' => 'il y a {0} j',
+ 'fri-future-one' => 'dans {0} vendredi',
+ 'fri-future-other' => 'dans {0} vendredis',
+ 'fri-narrow-future-one' => 'dans {0} ven.',
+ 'fri-narrow-future-other' => 'dans {0} ven.',
+ 'fri-narrow-past-one' => 'il y a {0} ven.',
+ 'fri-narrow-past-other' => 'il y a {0} ven.',
+ 'fri-past-one' => 'il y a {0} vendredi',
+ 'fri-past-other' => 'il y a {0} vendredis',
+ 'fri-short-future-one' => 'dans {0} ven.',
+ 'fri-short-future-other' => 'dans {0} ven.',
+ 'fri-short-past-one' => 'il y a {0} ven.',
+ 'fri-short-past-other' => 'il y a {0} ven.',
'hour-future-one' => 'dans {0} heure',
'hour-future-other' => 'dans {0} heures',
'hour-narrow-future-one' => '+{0} h',
'hour-narrow-future-other' => '+{0} h',
'hour-narrow-past-one' => '-{0} h',
'hour-narrow-past-other' => '-{0} h',
- 'hour-one' => '{0} heure',
- 'hour-other' => '{0} heures',
+ 'hour-one' => '{0} heure',
+ 'hour-other' => '{0} heures',
'hour-past-one' => 'il y a {0} heure',
'hour-past-other' => 'il y a {0} heures',
'hour-short-future-one' => 'dans {0} h',
'hour-short-future-other' => 'dans {0} h',
'hour-short-past-one' => 'il y a {0} h',
'hour-short-past-other' => 'il y a {0} h',
- 'microsecond-one' => '{0} microseconde',
- 'microsecond-other' => '{0} microsecondes',
- 'millisecond-one' => '{0} milliseconde',
- 'millisecond-other' => '{0} millisecondes',
+ 'microsecond-one' => '{0} microseconde',
+ 'microsecond-other' => '{0} microsecondes',
+ 'millisecond-one' => '{0} milliseconde',
+ 'millisecond-other' => '{0} millisecondes',
'minute-future-one' => 'dans {0} minute',
'minute-future-other' => 'dans {0} minutes',
'minute-narrow-future-one' => '+{0} min',
@@ -1456,22 +1552,34 @@ $timeUnits = array(
'minute-short-future-other' => 'dans {0} min',
'minute-short-past-one' => 'il y a {0} min',
'minute-short-past-other' => 'il y a {0} min',
+ 'mon-future-one' => 'dans {0} lundi',
+ 'mon-future-other' => 'dans {0} lundis',
+ 'mon-narrow-future-one' => 'dans {0} lun.',
+ 'mon-narrow-future-other' => 'dans {0} lun.',
+ 'mon-narrow-past-one' => 'il y a {0} lun.',
+ 'mon-narrow-past-other' => 'il y a {0} lun.',
+ 'mon-past-one' => 'il y a {0} lundi',
+ 'mon-past-other' => 'il y a {0} lundis',
+ 'mon-short-future-one' => 'dans {0} lun.',
+ 'mon-short-future-other' => 'dans {0} lun.',
+ 'mon-short-past-one' => 'il y a {0} lun.',
+ 'mon-short-past-other' => 'il y a {0} lun.',
'month-future-one' => 'dans {0} mois',
'month-future-other' => 'dans {0} mois',
'month-narrow-future-one' => '+{0} m.',
'month-narrow-future-other' => '+{0} m.',
'month-narrow-past-one' => '-{0} m.',
'month-narrow-past-other' => '-{0} m.',
- 'month-one' => '{0} mois',
- 'month-other' => '{0} mois',
+ 'month-one' => '{0} mois',
+ 'month-other' => '{0} mois',
'month-past-one' => 'il y a {0} mois',
'month-past-other' => 'il y a {0} mois',
'month-short-future-one' => 'dans {0} m.',
'month-short-future-other' => 'dans {0} m.',
'month-short-past-one' => 'il y a {0} m.',
'month-short-past-other' => 'il y a {0} m.',
- 'nanosecond-one' => '{0} nanoseconde',
- 'nanosecond-other' => '{0} nanosecondes',
+ 'nanosecond-one' => '{0} nanoseconde',
+ 'nanosecond-other' => '{0} nanosecondes',
'quarter-future-one' => 'dans {0} trimestre',
'quarter-future-other' => 'dans {0} trimestres',
'quarter-narrow-future-one' => '+{0} trim.',
@@ -1484,28 +1592,88 @@ $timeUnits = array(
'quarter-short-future-other' => 'dans {0} trim.',
'quarter-short-past-one' => 'il y a {0} trim.',
'quarter-short-past-other' => 'il y a {0} trim.',
+ 'sat-future-one' => 'dans {0} samedi',
+ 'sat-future-other' => 'dans {0} samedis',
+ 'sat-narrow-future-one' => 'dans {0} sam.',
+ 'sat-narrow-future-other' => 'dans {0} sam.',
+ 'sat-narrow-past-one' => 'il y a {0} sam.',
+ 'sat-narrow-past-other' => 'il y a {0} sam.',
+ 'sat-past-one' => 'il y a {0} samedi',
+ 'sat-past-other' => 'il y a {0} samedis',
+ 'sat-short-future-one' => 'dans {0} sam.',
+ 'sat-short-future-other' => 'dans {0} sam.',
+ 'sat-short-past-one' => 'dans {0} sam.',
+ 'sat-short-past-other' => 'dans {0} sam.',
'second-future-one' => 'dans {0} seconde',
'second-future-other' => 'dans {0} secondes',
'second-narrow-future-one' => '+{0} s',
'second-narrow-future-other' => '+{0} s',
'second-narrow-past-one' => '-{0} s',
'second-narrow-past-other' => '-{0} s',
- 'second-one' => '{0} seconde',
- 'second-other' => '{0} secondes',
+ 'second-one' => '{0} seconde',
+ 'second-other' => '{0} secondes',
'second-past-one' => 'il y a {0} seconde',
'second-past-other' => 'il y a {0} secondes',
'second-short-future-one' => 'dans {0} s',
'second-short-future-other' => 'dans {0} s',
'second-short-past-one' => 'il y a {0} s',
'second-short-past-other' => 'il y a {0} s',
+ 'sun-future-one' => 'dans {0} dimanche',
+ 'sun-future-other' => 'dans {0} dimanches',
+ 'sun-narrow-future-one' => 'dans {0} dim.',
+ 'sun-narrow-future-other' => 'dans {0} dim.',
+ 'sun-narrow-past-one' => 'il y a {0} dim.',
+ 'sun-narrow-past-other' => 'il y a {0} dim.',
+ 'sun-past-one' => 'il y a {0} dimanche',
+ 'sun-past-other' => 'il y a {0} dimanches',
+ 'sun-short-future-one' => 'dans {0} dim.',
+ 'sun-short-future-other' => 'dans {0} dim.',
+ 'sun-short-past-one' => 'il y a {0} dim.',
+ 'sun-short-past-other' => 'il y a {0} dim.',
+ 'thu-future-one' => 'dans {0} jeudi',
+ 'thu-future-other' => 'dans {0} jeudis',
+ 'thu-narrow-future-one' => 'dans {0} jeu.',
+ 'thu-narrow-future-other' => 'dans {0} jeu.',
+ 'thu-narrow-past-one' => 'il y a {0} jeu.',
+ 'thu-narrow-past-other' => 'il y a {0} jeu.',
+ 'thu-past-one' => 'il y a {0} jeudi',
+ 'thu-past-other' => 'il y a {0} jeudis',
+ 'thu-short-future-one' => 'dans {0} jeu.',
+ 'thu-short-future-other' => 'dans {0} jeu.',
+ 'thu-short-past-one' => 'il y a {0} jeu.',
+ 'thu-short-past-other' => 'il y a {0} jeu.',
+ 'tue-future-one' => 'dans {0} mardi',
+ 'tue-future-other' => 'dans {0} mardis',
+ 'tue-narrow-future-one' => 'dans {0} mar.',
+ 'tue-narrow-future-other' => 'dans {0} mar.',
+ 'tue-narrow-past-one' => 'il y a {0} mar.',
+ 'tue-narrow-past-other' => 'il y a {0} mar.',
+ 'tue-past-one' => 'il y a {0} mardi',
+ 'tue-past-other' => 'il y a {0} mardis',
+ 'tue-short-future-one' => 'dans {0} mar.',
+ 'tue-short-future-other' => 'dans {0} mar.',
+ 'tue-short-past-one' => 'il y a {0} mar.',
+ 'tue-short-past-other' => 'il y a {0} mar.',
+ 'wed-future-one' => 'dans {0} mercredi',
+ 'wed-future-other' => 'dans {0} mercredis',
+ 'wed-narrow-future-one' => 'dans {0} mer.',
+ 'wed-narrow-future-other' => 'dans {0} mer.',
+ 'wed-narrow-past-one' => 'il y a {0} mer.',
+ 'wed-narrow-past-other' => 'il y a {0} mer.',
+ 'wed-past-one' => 'il y a {0} mercredi',
+ 'wed-past-other' => 'il y a {0} mercredis',
+ 'wed-short-future-one' => 'dans {0} mer.',
+ 'wed-short-future-other' => 'dans {0} mer.',
+ 'wed-short-past-one' => 'il y a {0} mer.',
+ 'wed-short-past-other' => 'il y a {0} mer.',
'week-future-one' => 'dans {0} semaine',
'week-future-other' => 'dans {0} semaines',
'week-narrow-future-one' => '+{0} sem.',
'week-narrow-future-other' => '+{0} sem.',
'week-narrow-past-one' => '-{0} sem.',
'week-narrow-past-other' => '-{0} sem.',
- 'week-one' => '{0} semaine',
- 'week-other' => '{0} semaines',
+ 'week-one' => '{0} semaine',
+ 'week-other' => '{0} semaines',
'week-past-one' => 'il y a {0} semaine',
'week-past-other' => 'il y a {0} semaines',
'week-short-future-one' => 'dans {0} sem.',
@@ -1518,7 +1686,7 @@ $timeUnits = array(
'year-narrow-future-other' => '+{0} a',
'year-narrow-past-one' => '-{0} a',
'year-narrow-past-other' => '-{0} a',
- 'year-one' => '{0} an',
+ 'year-one' => '{0} an',
'year-other' => '{0} ans',
'year-past-one' => 'il y a {0} an',
'year-past-other' => 'il y a {0} ans',
@@ -1526,4 +1694,4 @@ $timeUnits = array(
'year-short-future-other' => 'dans {0} a',
'year-short-past-one' => 'il y a {0} a',
'year-short-past-other' => 'il y a {0} a',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesFur.php b/MLEB/cldr/CldrNames/CldrNamesFur.php
index 9c3af01b..f5b5423b 100644
--- a/MLEB/cldr/CldrNames/CldrNamesFur.php
+++ b/MLEB/cldr/CldrNames/CldrNamesFur.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'afar',
'ab' => 'abcazian',
'ae' => 'avestan',
@@ -185,9 +185,9 @@ $languageNames = array(
'zh-hans' => 'cinês semplificât',
'zh-hant' => 'cinês tradizionâl',
'zu' => 'zulu',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'AMD' => 'Dram armen',
'ARS' => 'Peso argjentin',
'ATS' => 'Selin austriac',
@@ -196,7 +196,8 @@ $currencyNames = array(
'BIF' => 'Franc burundês',
'BND' => 'Dolar dal Brunei',
'BRL' => 'real brasilian',
- 'BYR' => 'Rubli bielorùs',
+ 'BYN' => 'Rubli bielorùs',
+ 'BYR' => 'Rubli bielorùs (2000–2016)',
'CAD' => 'dolar canadês',
'CHF' => 'franc svuizar',
'CNY' => 'yuan cinês',
@@ -254,9 +255,9 @@ $currencyNames = array(
'XTS' => 'codiç di verifiche de monede',
'XXX' => 'Monede no valide o no cognossude',
'ZAR' => 'rand sudafrican',
-);
+];
-$countryNames = array(
+$countryNames = [
'AD' => 'Andorra',
'AE' => 'Emirâts araps unîts',
'AF' => 'Afghanistan',
@@ -264,7 +265,6 @@ $countryNames = array(
'AI' => 'Anguilla',
'AL' => 'Albanie',
'AM' => 'Armenie',
- 'AN' => 'Antilis olandesis',
'AO' => 'Angola',
'AQ' => 'Antartic',
'AR' => 'Argjentine',
@@ -510,9 +510,9 @@ $countryNames = array(
'ZA' => 'Sud Afriche',
'ZM' => 'Zambia',
'ZW' => 'Zimbabwe',
-);
+];
-$timeUnits = array(
+$timeUnits = [
'day-future-one' => 'ca di {0} zornade',
'day-future-other' => 'ca di {0} zornadis',
'day-one' => '{0} zornade',
@@ -555,4 +555,4 @@ $timeUnits = array(
'year-other' => '{0} agns',
'year-past-one' => '{0} an indaûr',
'year-past-other' => '{0} agns indaûr',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesFy.php b/MLEB/cldr/CldrNames/CldrNamesFy.php
index bf40becf..ecaa9b02 100644
--- a/MLEB/cldr/CldrNames/CldrNamesFy.php
+++ b/MLEB/cldr/CldrNames/CldrNamesFy.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'Afar',
'ab' => 'Abchazysk',
'ace' => 'Atjeesk',
@@ -151,7 +151,7 @@ $languageNames = array(
'frr' => 'Noard-Frysk',
'frs' => 'East-Frysk',
'fur' => 'Friulysk',
- 'fy' => 'West-Frysk',
+ 'fy' => 'Frysk',
'ga' => 'Iersk',
'gaa' => 'Ga',
'gay' => 'Gayo',
@@ -433,8 +433,8 @@ $languageNames = array(
'sux' => 'Soemerysk',
'sv' => 'Zweeds',
'sw' => 'Swahili',
+ 'sw-cd' => 'Congo Swahili',
'swb' => 'Shimaore',
- 'swc' => 'Congo Swahili',
'syc' => 'Klassiek Syrysk',
'syr' => 'Syrysk',
'ta' => 'Tamil',
@@ -512,9 +512,9 @@ $languageNames = array(
'zun' => 'Zuni',
'zxx' => 'Gjin linguïstyske ynhâld',
'zza' => 'Zaza',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'ADP' => 'Andorrese peseta',
'AED' => 'Verenigde Arabyske Emiraten-dirham',
'AFA' => 'Afghani (1927–2002)',
@@ -568,7 +568,8 @@ $currencyNames = array(
'BUK' => 'Birmese kyat',
'BWP' => 'Botswaanske pula',
'BYB' => 'Wit-Russyske nieuwe roebel (1994–1999)',
- 'BYR' => 'Wit-Russyske roebel',
+ 'BYN' => 'Wit-Russyske roebel',
+ 'BYR' => 'Wit-Russyske roebel (2000–2016)',
'BZD' => 'Belizaanske dollar',
'CAD' => 'Canadese dollar',
'CDF' => 'Congolese frank',
@@ -679,7 +680,8 @@ $currencyNames = array(
'MMK' => 'Myanmarese kyat',
'MNT' => 'Mongoalske tugrik',
'MOP' => 'Macause pataca',
- 'MRO' => 'Mauritaanske ouguiya',
+ 'MRO' => 'Mauritaanske ouguiya (1973–2017)',
+ 'MRU' => 'Mauritaanske ouguiya',
'MTL' => 'Maltese lire',
'MTP' => 'Maltees pûn',
'MUR' => 'Mauritiaanske roepie',
@@ -703,8 +705,8 @@ $currencyNames = array(
'OMR' => 'Omaanske rial',
'PAB' => 'Panamese balboa',
'PEI' => 'Peruaanske inti',
- 'PEN' => 'Peruaanske nieuwe sol',
- 'PES' => 'Peruaanske sol',
+ 'PEN' => 'Peruaanske sol',
+ 'PES' => 'Peruaanske sol (1863–1985)',
'PGK' => 'Papuaanske kina',
'PHP' => 'Filipynske peso',
'PKR' => 'Pakistaanske roepie',
@@ -736,7 +738,8 @@ $currencyNames = array(
'SRD' => 'Surinaamske dollar',
'SRG' => 'Surinaamske gulden',
'SSP' => 'Sûd-Soedaneeske pûn',
- 'STD' => 'Santomese dobra',
+ 'STD' => 'Santomese dobra (1977–2017)',
+ 'STN' => 'Santomese dobra',
'SUR' => 'Sovjet-roebel',
'SVC' => 'Salvadoraanske colón',
'SYP' => 'Syrysk pûn',
@@ -766,7 +769,8 @@ $currencyNames = array(
'UYU' => 'Uruguayaanske peso',
'UZS' => 'Oezbekistaanske sum',
'VEB' => 'Fenezolaanske bolivar (1871–2008)',
- 'VEF' => 'Fenezolaanske bolivar',
+ 'VEF' => 'Fenezolaanske bolivar (2008–2018)',
+ 'VES' => 'Fenezolaanske bolivar',
'VND' => 'Fietnameeske dong',
'VNN' => 'Alde Fietnameeske dong (1978–1985)',
'VUV' => 'Vanuatuaanske vatu',
@@ -807,9 +811,9 @@ $currencyNames = array(
'ZWD' => 'Simbabwaanske dollar',
'ZWL' => 'Simbabwaanske dollar (2009)',
'ZWR' => 'Simbabwaanske dollar (2008)',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'AUD' => 'AU$',
'BRL' => 'R$',
'CAD' => 'C$',
@@ -818,6 +822,7 @@ $currencySymbols = array(
'FJD' => 'FJ$',
'GBP' => '£',
'HKD' => 'HK$',
+ 'IEP' => 'IEP',
'ILS' => '₪',
'INR' => '₹',
'JPY' => 'JP¥',
@@ -830,12 +835,22 @@ $currencySymbols = array(
'USD' => 'US$',
'VND' => '₫',
'XAF' => 'FCFA',
+ 'XBA' => 'XBA',
+ 'XBB' => 'XBB',
+ 'XBC' => 'XBC',
+ 'XBD' => 'XBD',
'XCD' => 'EC$',
+ 'XFO' => 'XFO',
+ 'XFU' => 'XFU',
'XOF' => 'CFA',
'XPF' => 'XPF',
-);
+ 'XRE' => 'XRE',
+ 'XTS' => 'XTS',
+ 'XUA' => 'XUA',
+ 'XXX' => 'XXX',
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'Ascension',
'AD' => 'Andorra',
'AE' => 'Verenigde Arabyske Emiraten',
@@ -844,7 +859,6 @@ $countryNames = array(
'AI' => 'Anguilla',
'AL' => 'Albanië',
'AM' => 'Armenië',
- 'AN' => 'Nederlânske Antillen',
'AO' => 'Angola',
'AQ' => 'Antarctica',
'AR' => 'Argentinië',
@@ -1095,9 +1109,9 @@ $countryNames = array(
'ZA' => 'Sûd-Afrika',
'ZM' => 'Zambia',
'ZW' => 'Zimbabwe',
-);
+];
-$timeUnits = array(
+$timeUnits = [
'day-future-one' => 'Oer {0} dei',
'day-future-other' => 'Oer {0} deien',
'day-one' => '{0} dei',
@@ -1124,6 +1138,18 @@ $timeUnits = array(
'month-other' => '{0} moanneen',
'month-past-one' => '{0} moanne lyn',
'month-past-other' => '{0} moannen lyn',
+ 'quarter-future-one' => 'oer {0} fearnsjier',
+ 'quarter-future-other' => 'oer {0} fearnsjier',
+ 'quarter-narrow-future-one' => 'oer {0} fearnsjier',
+ 'quarter-narrow-future-other' => 'oer {0} fearnsjier',
+ 'quarter-narrow-past-one' => '{0} fearnsjier lyn',
+ 'quarter-narrow-past-other' => '{0} fearnsjier lyn',
+ 'quarter-past-one' => '{0} fearnsjier lyn',
+ 'quarter-past-other' => '{0} fearnsjier lyn',
+ 'quarter-short-future-one' => 'oer {0} fearnsjier',
+ 'quarter-short-future-other' => 'oer {0} fearnsjier',
+ 'quarter-short-past-one' => '{0} fearnsjier lyn',
+ 'quarter-short-past-other' => '{0} fearnsjier lyn',
'second-future-one' => 'Oer {0} sekonde',
'second-future-other' => 'Oer {0} sekonden',
'second-one' => '{0} sekonde',
@@ -1142,4 +1168,4 @@ $timeUnits = array(
'year-other' => '{0} jier',
'year-past-one' => '{0} jier lyn',
'year-past-other' => '{0} jier lyn',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesGa.php b/MLEB/cldr/CldrNames/CldrNamesGa.php
index 89b7ebc0..51059158 100644
--- a/MLEB/cldr/CldrNames/CldrNamesGa.php
+++ b/MLEB/cldr/CldrNames/CldrNamesGa.php
@@ -1,62 +1,97 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'Afáiris',
'ab' => 'Abcáisis',
+ 'ace' => 'ace',
+ 'ada' => 'ada',
+ 'ady' => 'Adaigéis',
'ae' => 'Aivéistis',
'af' => 'Afracáinis',
+ 'agq' => 'agq',
'ain' => 'Aidhniúis',
'ak' => 'Acáinis',
'akk' => 'Acáidis',
+ 'ale' => 'ale',
+ 'alt' => 'alt',
'am' => 'Amáiris',
'an' => 'Aragóinis',
'ang' => 'Sean-Bhéarla',
+ 'anp' => 'anp',
'ar' => 'Araibis',
'ar-001' => 'Araibis Chaighdeánach',
'arc' => 'Aramais',
'arn' => 'Mapúitsis',
+ 'arp' => 'arp',
'as' => 'Asaimis',
+ 'asa' => 'asa',
'ast' => 'Astúiris',
'av' => 'Aváiris',
+ 'awa' => 'awa',
'ay' => 'Aidhmiris',
'az' => 'Asarbaiseáinis',
'ba' => 'Baiscíris',
'ban' => 'Bailís',
'bar' => 'Baváiris',
+ 'bas' => 'bas',
'be' => 'Bealarúisis',
'bem' => 'Beimbis',
+ 'bez' => 'bez',
'bg' => 'Bulgáiris',
+ 'bho' => 'bho',
'bi' => 'Bioslaimis',
+ 'bin' => 'bin',
+ 'bla' => 'bla',
+ 'bm' => 'bm',
'bn' => 'Beangáilis',
'bo' => 'Tibéidis',
'br' => 'Briotáinis',
+ 'brx' => 'brx',
'bs' => 'Boisnis',
'bua' => 'Buiriáitis',
'bug' => 'Buiginis',
+ 'byn' => 'byn',
'ca' => 'Catalóinis',
- 'ce' => 'Sisinis',
+ 'ce' => 'Seisnis',
'ceb' => 'Seabúáinis',
+ 'cgg' => 'cgg',
'ch' => 'Seamóiris',
+ 'chk' => 'chk',
'chm' => 'Mairis',
+ 'cho' => 'cho',
'chr' => 'Seiricis',
+ 'chy' => 'chy',
+ 'ckb' => 'Coirdis Lárnach',
'co' => 'Corsaicis',
'cop' => 'Coptais',
'cr' => 'Craís',
+ 'crs' => 'Criól Fraincise Seselwa',
'cs' => 'Seicis',
'csb' => 'Caisiúibis',
'cu' => 'Slavais na hEaglaise',
'cv' => 'Suvaisis',
'cy' => 'Breatnais',
'da' => 'Danmhairgis',
+ 'dak' => 'dak',
+ 'dar' => 'dar',
+ 'dav' => 'Taita',
'de' => 'Gearmáinis',
'de-at' => 'Gearmáinis Ostarach',
'de-ch' => 'Ard-Ghearmáinis Eilvéiseach',
+ 'dgr' => 'dgr',
'dje' => 'Zarmais',
'dsb' => 'Sorbais Íochtarach',
+ 'dua' => 'dua',
'dum' => 'Meán-Ollainnis',
'dv' => 'Divéihis',
+ 'dyo' => 'dyo',
'dz' => 'Seoinicis',
+ 'dzg' => 'dzg',
+ 'ebu' => 'ebu',
+ 'ee' => 'ee',
+ 'efi' => 'efi',
'egy' => 'Sean-Éigiptis',
+ 'eka' => 'eka',
'el' => 'Gréigis',
'en' => 'Béarla',
'en-au' => 'Béarla Astrálach',
@@ -71,12 +106,14 @@ $languageNames = array(
'es-mx' => 'Spáinnis Mheicsiceach',
'et' => 'Eastóinis',
'eu' => 'Bascais',
+ 'ewo' => 'ewo',
'fa' => 'Peirsis',
'ff' => 'Fuláinis',
'fi' => 'Fionlainnis',
'fil' => 'Filipínis',
'fj' => 'Fidsis',
'fo' => 'Faróis',
+ 'fon' => 'fon',
'fr' => 'Fraincis',
'fr-ca' => 'Fraincis Cheanadach',
'fr-ch' => 'Fraincis Eilvéiseach',
@@ -86,17 +123,23 @@ $languageNames = array(
'fur' => 'Friúilis',
'fy' => 'Freaslainnis Iartharach',
'ga' => 'Gaeilge',
+ 'gaa' => 'gaa',
+ 'gan' => 'Sínis Gan',
'gd' => 'Gaeilge na hAlban',
'gez' => 'Aetóipis',
+ 'gil' => 'Cireabaitis',
'gl' => 'Gailísis',
'gmh' => 'Meán-Ard-Ghearmáinis',
'gn' => 'Guaráinis',
'goh' => 'Sean-Ard-Ghearmáinis',
+ 'gor' => 'gor',
'grc' => 'Sean-Ghréigis',
'gsw' => 'Gearmáinis Eilvéiseach',
'gu' => 'Gúisearáitis',
'guc' => 'Uaúis',
+ 'guz' => 'guz',
'gv' => 'Manainnis',
+ 'gwi' => 'gwi',
'ha' => 'Hásais',
'hak' => 'Haicéis',
'haw' => 'Haváis',
@@ -109,188 +152,305 @@ $languageNames = array(
'ho' => 'Motúis Hírí',
'hr' => 'Cróitis',
'hsb' => 'Sorbais Uachtarach',
+ 'hsn' => 'Sínis Xiang',
'ht' => 'Criól Háítíoch',
'hu' => 'Ungáiris',
'hup' => 'Húipis',
'hy' => 'Airméinis',
'hz' => 'Heiréiris',
'ia' => 'Interlingua',
+ 'iba' => 'iba',
'ibb' => 'Ibibis',
'id' => 'Indinéisis',
'ie' => 'Interlingue',
'ig' => 'Íogbóis',
+ 'ii' => 'ii',
'ik' => 'Iniúipiaicis',
+ 'ilo' => 'ilo',
'inh' => 'Iongúis',
'io' => 'Ido',
'is' => 'Íoslainnis',
'it' => 'Iodáilis',
'iu' => 'Ionúitis',
'ja' => 'Seapáinis',
+ 'jbo' => 'Lojban',
+ 'jgo' => 'jgo',
+ 'jmc' => 'jmc',
'jut' => 'Iútlainnis',
'jv' => 'Iáivis',
'ka' => 'Seoirsis',
'kaa' => 'Cara-Chalpáis',
+ 'kab' => 'kab',
+ 'kac' => 'kac',
+ 'kaj' => 'kaj',
+ 'kam' => 'kam',
+ 'kbd' => 'kbd',
+ 'kcg' => 'kcg',
+ 'kde' => 'kde',
+ 'kea' => 'Kabuverdianu',
+ 'kfo' => 'kfo',
'kg' => 'Congóis',
+ 'kha' => 'kha',
+ 'khq' => 'khq',
'ki' => 'Ciocúis',
'kj' => 'Cuainiáimis',
'kk' => 'Casaicis',
+ 'kkj' => 'kkj',
'kl' => 'Kalaallisut',
+ 'kln' => 'kln',
'km' => 'Ciméiris',
+ 'kmb' => 'kmb',
'kn' => 'Cannadais',
'ko' => 'Cóiréis',
'kok' => 'Concáinis',
+ 'kpe' => 'kpe',
'kr' => 'Canúiris',
+ 'krc' => 'krc',
'krl' => 'Cairéilis',
'kru' => 'Curúicis',
'ks' => 'Caismíris',
+ 'ksb' => 'ksb',
+ 'ksf' => 'ksf',
+ 'ksh' => 'ksh',
'ku' => 'Coirdis',
+ 'kum' => 'kum',
'kv' => 'Coimis',
'kw' => 'Coirnis',
'ky' => 'Cirgisis',
'la' => 'Laidin',
'lad' => 'Laidínis',
+ 'lag' => 'lag',
'lah' => 'Puinseáibis Iartharach',
'lb' => 'Lucsambuirgis',
+ 'lez' => 'lez',
'lg' => 'Lugandais',
+ 'li' => 'Liombuirgis',
'lij' => 'Liogúiris',
'liv' => 'Liovóinis',
+ 'lkt' => 'lkt',
'lmo' => 'Lombairdis',
'ln' => 'Liongáilis',
'lo' => 'Laoisis',
+ 'loz' => 'loz',
+ 'lrc' => 'lrc',
'lt' => 'Liotuáinis',
'lu' => 'Lúba-Cataingis',
+ 'lua' => 'lua',
+ 'lun' => 'lun',
+ 'luo' => 'luo',
+ 'lus' => 'lus',
+ 'luy' => 'luy',
'lv' => 'Laitvis',
+ 'mad' => 'mad',
+ 'mag' => 'mag',
+ 'mai' => 'mai',
+ 'mak' => 'mak',
+ 'mas' => 'mas',
+ 'mdf' => 'mdf',
'men' => 'Meindis',
+ 'mer' => 'mer',
+ 'mfe' => 'mfe',
'mg' => 'Malagáisis',
'mga' => 'Meán-Ghaeilge',
+ 'mgh' => 'mgh',
+ 'mgo' => 'mgo',
'mh' => 'Mairsillis',
'mi' => 'Maorais',
+ 'mic' => 'mic',
+ 'min' => 'min',
'mk' => 'Macadóinis',
'ml' => 'Mailéalaimis',
'mn' => 'Mongóilis',
'mni' => 'Manapúiris',
'moh' => 'Móháicis',
+ 'mos' => 'mos',
'mr' => 'Maraitis',
'mrj' => 'Mairis Iartharach',
'ms' => 'Malaeis',
'mt' => 'Máltais',
+ 'mua' => 'mua',
+ 'mul' => 'Ilteangacha',
+ 'mus' => 'mus',
'mwl' => 'Mioraindéis',
'mwr' => 'Marmhairis',
'my' => 'Burmais',
+ 'myv' => 'myv',
+ 'mzn' => 'mzn',
'na' => 'Nárúis',
+ 'nan' => 'Sínis Min Nan',
+ 'nap' => 'Napóilis',
+ 'naq' => 'naq',
'nb' => 'Ioruais Bokmål',
'nd' => 'Ndeibéilis an Tuaiscirt',
'nds' => 'Gearmáinis Íochtarach',
+ 'nds-nl' => 'Sacsainis Íochtarach',
'ne' => 'Neipeailis',
+ 'new' => 'new',
'ng' => 'Ndongais',
+ 'nia' => 'nia',
'niu' => 'Níobhais',
'nl' => 'Ollainnis',
'nl-be' => 'Pléimeannais',
+ 'nmg' => 'nmg',
'nn' => 'Nua-Ioruais',
+ 'nnh' => 'nnh',
'no' => 'Ioruais',
+ 'nog' => 'nog',
'non' => 'Sean-Lochlainnis',
+ 'nqo' => 'nqo',
'nr' => 'Ndeibéilis an Deiscirt',
'nso' => 'Sútúis an Tuaiscirt',
+ 'nus' => 'nus',
'nv' => 'Navachóis',
'ny' => 'Siséivis',
+ 'nyn' => 'nyn',
'oc' => 'Ocsatáinis',
'oj' => 'Óisibis',
'om' => 'Oraimis',
'or' => 'Oirísis',
'os' => 'Oiséitis',
'pa' => 'Puinseáibis',
+ 'pag' => 'pag',
+ 'pam' => 'pam',
+ 'pap' => 'pap',
+ 'pau' => 'pau',
+ 'pcm' => 'pcm',
'peo' => 'Sean-Pheirsis',
'pi' => 'Páilis',
'pl' => 'Polainnis',
'prg' => 'Prúisis',
'ps' => 'Paistis',
'pt' => 'Portaingéilis',
- 'pt-br' => 'Portaingéilis na Brasaíle',
+ 'pt-br' => 'Portaingéilis Bhrasaíleach',
'pt-pt' => 'Portaingéilis Ibéarach',
'qu' => 'Ceatsuais',
+ 'quc' => 'Cuitséis',
+ 'rap' => 'rap',
+ 'rar' => 'rar',
'rm' => 'Rómainis',
'rn' => 'Rúindis',
'ro' => 'Rómáinis',
'ro-md' => 'Moldáivis',
+ 'rof' => 'rof',
'rom' => 'Romainis',
'ru' => 'Rúisis',
'rup' => 'Arómáinis',
'rw' => 'Ciniaruaindis',
+ 'rwk' => 'rwk',
'sa' => 'Sanscrait',
+ 'sad' => 'sad',
'sah' => 'Sachais',
'sam' => 'Aramais Shamárach',
+ 'saq' => 'saq',
'sat' => 'Santáilis',
+ 'sba' => 'sba',
+ 'sbp' => 'sbp',
'sc' => 'Sairdínis',
'scn' => 'Sicilis',
'sco' => 'Albainis',
'sd' => 'Sindis',
'se' => 'Sáimis Thuaidh',
+ 'seh' => 'seh',
+ 'ses' => 'ses',
'sg' => 'Sangóis',
'sga' => 'Sean-Ghaeilge',
'sh' => 'Seirbea-Chróitis',
+ 'shi' => 'Tachelhit',
+ 'shn' => 'shn',
'si' => 'Siolóinis',
'sk' => 'Slóvaicis',
'sl' => 'Slóivéinis',
'sm' => 'Samóis',
+ 'sma' => 'Sáimis Theas',
'smj' => 'Sáimis Lule',
+ 'smn' => 'Sáimis Inari',
+ 'sms' => 'Sáimis Skolt',
'sn' => 'Seoinis',
+ 'snk' => 'snk',
'so' => 'Somáilis',
'sog' => 'Sogdánais',
'sq' => 'Albáinis',
'sr' => 'Seirbis',
+ 'srn' => 'srn',
'ss' => 'Suaisis',
+ 'ssy' => 'ssy',
'st' => 'Seasóitis',
'su' => 'Sundais',
+ 'suk' => 'suk',
'sux' => 'Suiméiris',
'sv' => 'Sualainnis',
'sw' => 'Svahaílis',
- 'swc' => 'Svahaílis an Chongó',
+ 'sw-cd' => 'Svahaílis an Chongó',
+ 'swb' => 'Comóiris',
'syr' => 'Siricis',
'szl' => 'Siléisis',
'ta' => 'Tamailis',
'te' => 'Teileagúis',
+ 'tem' => 'tem',
+ 'teo' => 'teo',
+ 'tet' => 'tet',
'tg' => 'Táidsícis',
'th' => 'Téalainnis',
'ti' => 'Tigrinis',
+ 'tig' => 'tig',
'tk' => 'Tuircméinis',
'tl' => 'Tagálaigis',
'tlh' => 'Klingon',
'tn' => 'Suáinis',
'to' => 'Tongais',
+ 'tpi' => 'Tok Pisin',
'tr' => 'Tuircis',
+ 'trv' => 'trv',
'ts' => 'Songais',
'tt' => 'Tatairis',
+ 'tum' => 'tum',
+ 'tvl' => 'tvl',
'tw' => 'Tíbhis',
+ 'twq' => 'twq',
'ty' => 'Taihítis',
+ 'tyv' => 'tyv',
+ 'tzm' => 'Tamazight Atlais Láir',
'udm' => 'Udmairtis',
'ug' => 'Uigiúiris',
'uk' => 'Úcráinis',
+ 'umb' => 'umb',
'und' => 'Teanga Anaithnid',
'ur' => 'Urdúis',
'uz' => 'Úisbéiceastáinis',
+ 'vai' => 'vai',
've' => 'Veindis',
'vec' => 'Veinéisis',
'vi' => 'Vítneaimis',
'vls' => 'Pléimeannais Iartharach',
'vo' => 'Volapük',
+ 'vun' => 'vun',
'wa' => 'Vallúnais',
+ 'wae' => 'wae',
+ 'wal' => 'wal',
+ 'war' => 'war',
'wo' => 'Volaifis',
+ 'wuu' => 'wuu',
'xal' => 'Cailmícis',
'xh' => 'Cóisis',
+ 'xog' => 'xog',
+ 'yav' => 'yav',
+ 'ybb' => 'ybb',
'yi' => 'Giúdais',
'yo' => 'Iarúibis',
'yue' => 'Cantainis',
'za' => 'Siuáingis',
'zea' => 'Séalainnis',
+ 'zgh' => 'Tamazight Caighdeánach Mharacó',
'zh' => 'Sínis',
'zh-hans' => 'Sínis Shimplithe',
'zh-hant' => 'Sínis Thraidisiúnta',
'zu' => 'Súlúis',
'zun' => 'Zúinis',
'zxx' => 'Gan ábhar teangeolaíoch',
-);
+ 'zza' => 'zza',
+];
-$currencyNames = array(
+$currencyNames = [
'ADP' => 'Peseta Andóra',
'AED' => 'Dirham Aontas na nÉimíríochtaí Arabacha',
'AFA' => 'Afgainí (1927–2002)',
@@ -307,18 +467,18 @@ $currencyNames = array(
'ARM' => 'Peso na hAirgintíne (1881–1970)',
'ARP' => 'Peso na hAirgintíne (1983–1985)',
'ARS' => 'Peso na hAirgintíne',
- 'ATS' => 'Scilling Ostarach',
+ 'ATS' => 'ATS',
'AUD' => 'Dollar na hAstráile',
'AWG' => 'Flóirín Arúba',
'AZM' => 'Manat na hAsarbaiseáine (1993–2006)',
'AZN' => 'Manat na hAsarbaiseáine',
- 'BAD' => 'Dínear Bhoisnia-Heirseagaivéin',
+ 'BAD' => 'Dínear Bhoisnia-Heirseagaivéin (1992–1994)',
'BAM' => 'Marg Inmhalartaithe na Boisnia-Heirseagaivéine',
'BBD' => 'Dollar Bharbadós',
'BDT' => 'Taka na Banglaidéise',
- 'BEC' => 'Franc Beilgeach (inathraithe)',
+ 'BEC' => 'BEC',
'BEF' => 'Franc Beilgeach',
- 'BEL' => 'Franc Beilgeach (airgeadúil)',
+ 'BEL' => 'BEL',
'BGL' => 'Lev Crua na Bulgáire',
'BGN' => 'Lev na Bulgáire',
'BGO' => 'Lev na Bulgáire (1879–1952)',
@@ -341,7 +501,8 @@ $currencyNames = array(
'BUK' => 'Kyat Bhurma',
'BWP' => 'Pula na Botsuáine',
'BYB' => 'Rúbal Nua na Bealarúise (1994–1999)',
- 'BYR' => 'Rúbal na Bealarúise',
+ 'BYN' => 'Rúbal na Bealarúise',
+ 'BYR' => 'Rúbal na Bealarúise (2000–2016)',
'BZD' => 'Dollar na Beilíse',
'CAD' => 'Dollar Cheanada',
'CDF' => 'Franc an Chongó',
@@ -349,6 +510,7 @@ $currencyNames = array(
'CLE' => 'Escudo na Sile',
'CLF' => 'Unidades de Fomento na Sile',
'CLP' => 'Peso na Sile',
+ 'CNH' => 'CNH',
'CNY' => 'Yuan na Síne',
'COP' => 'Peso na Colóime',
'CRC' => 'Colón Chósta Ríce',
@@ -359,7 +521,7 @@ $currencyNames = array(
'CVE' => 'Escudo Rinn Verde',
'CYP' => 'Punt na Cipire',
'CZK' => 'Koruna Phoblacht na Seice',
- 'DDM' => 'Ostmark na hOirGhearmáine',
+ 'DDM' => 'DDM',
'DEM' => 'Deutsche Mark',
'DJF' => 'Franc Djibouti',
'DKK' => 'Coróin na Danmhairge',
@@ -376,7 +538,7 @@ $currencyNames = array(
'FIM' => 'Markka Fionnlannach',
'FJD' => 'Dollar Fhidsí',
'FKP' => 'Punt Oileáin Fháclainne',
- 'FRF' => 'Franc Francach',
+ 'FRF' => 'FRF',
'GBP' => 'Punt Steirling',
'GEK' => 'Kupon Larit na Grúise',
'GEL' => 'Lari na Seoirsia',
@@ -386,7 +548,7 @@ $currencyNames = array(
'GMD' => 'Dalasi na Gaimbia',
'GNF' => 'Franc na Guine',
'GNS' => 'Syli Guine',
- 'GQE' => 'Ekwele Guineana na Guine Meánchriosaí',
+ 'GQE' => 'Ekwele Guineana na Guine Meánchiorclaí',
'GRD' => 'Drachma Gréagach',
'GTQ' => 'Quetzal Ghuatamala',
'GWE' => 'Escudo na Guine Portaingéalaí',
@@ -426,9 +588,10 @@ $currencyNames = array(
'LSL' => 'Loti Leosóta',
'LTL' => 'Litas na Liotuáine',
'LTT' => 'Talonas Liotuánach',
+ 'LUC' => 'LUC',
'LUF' => 'Franc Lucsamburg',
'LVL' => 'Lats na Laitvia',
- 'LVR' => 'Rúbal Laitviach',
+ 'LVR' => 'LVR',
'LYD' => 'Dinar na Libia',
'MAD' => 'Dirham Mharacó',
'MAF' => 'Franc Mharacó',
@@ -440,7 +603,8 @@ $currencyNames = array(
'MMK' => 'Kyat Mhaenmar',
'MNT' => 'Tugrik na Mongóile',
'MOP' => 'Pataca Mhacao',
- 'MRO' => 'Ouguiya na Máratáine',
+ 'MRO' => 'Ouguiya na Máratáine (1973–2017)',
+ 'MRU' => 'Ouguiya na Máratáine',
'MTL' => 'Lira Mhálta',
'MTP' => 'Punt Mhálta',
'MUR' => 'Rúipí Oileán Mhuirís',
@@ -449,7 +613,7 @@ $currencyNames = array(
'MWK' => 'Kwacha na Maláive',
'MXN' => 'Peso Mheicsiceo',
'MXP' => 'Peso Airgid Mheicsiceo (1861–1992)',
- 'MXV' => 'Unidad de Inversion (UDI) Meicsiceo',
+ 'MXV' => 'MXV',
'MYR' => 'Ringgit na Malaeisia',
'MZE' => 'Escudo Mósaimbíce',
'MZM' => 'Metical Mósaimbíce',
@@ -465,7 +629,7 @@ $currencyNames = array(
'OMR' => 'Rial Óman',
'PAB' => 'Balboa Phanama',
'PEI' => 'Inti Pheiriú',
- 'PEN' => 'Nuevo Sol Pheiriú',
+ 'PEN' => 'Sol Pheiriú',
'PES' => 'Sol Pheiriú (1863–1965)',
'PGK' => 'Kina Nua-Ghuine Phapua',
'PHP' => 'Peso na nOileán Filipíneach',
@@ -497,7 +661,8 @@ $currencyNames = array(
'SRD' => 'Dollar Shuranam',
'SRG' => 'Gildear Shuranam',
'SSP' => 'Punt na Súdáine Theas',
- 'STD' => 'Dobra São Tomé agus Príncipe',
+ 'STD' => 'Dobra São Tomé agus Príncipe (1977–2017)',
+ 'STN' => 'Dobra São Tomé agus Príncipe',
'SUR' => 'Rúbal an Aontais Shóivéadaigh',
'SVC' => 'Colón na Salvadóire',
'SYP' => 'Punt na Siria',
@@ -505,7 +670,7 @@ $currencyNames = array(
'THB' => 'Baht na Téalainne',
'TJR' => 'Rúbal na Táidsíceastáine',
'TJS' => 'Somoni na Táidsíceastáine',
- 'TMM' => 'Manat na An Tuircméanastáine',
+ 'TMM' => 'Manat na Tuircméanastáine (1993–2009)',
'TMT' => 'Manat na Tuircméanastáine',
'TND' => 'Dinar na Túinéise',
'TOP' => 'Paʻanga Thonga',
@@ -516,7 +681,7 @@ $currencyNames = array(
'TWD' => 'Dollar Nua na Téaváine',
'TZS' => 'Scilling na Tansáine',
'UAH' => 'Hryvnia na hÚcráine',
- 'UAK' => 'Karbovanetz Úcránach',
+ 'UAK' => 'Karbovanets Úcránach',
'UGS' => 'Scilling Uganda (1966–1987)',
'UGX' => 'Scilling Uganda',
'USD' => 'Dollar S.A.M.',
@@ -526,7 +691,8 @@ $currencyNames = array(
'UYU' => 'Peso Uragua',
'UZS' => 'Sum na hÚisbéiceastáine',
'VEB' => 'Bolívar Veiniséala (1871–2008)',
- 'VEF' => 'Bolívar Veiniséala',
+ 'VEF' => 'Bolívar Veiniséala (2008–2018)',
+ 'VES' => 'Bolívar Veiniséala',
'VND' => 'Dong Vítneam',
'VNN' => 'Dong Vítneam (1978–1985)',
'VUV' => 'Vatu Vanuatú',
@@ -550,30 +716,36 @@ $currencyNames = array(
'XXX' => 'Airgeadra Anaithnid',
'YDD' => 'Dínear Éimin',
'YER' => 'Rial Éimin',
- 'YUD' => 'Dínear Crua Iúgslavach',
- 'YUM' => 'Noviy Dinar Iúgslavach',
- 'YUN' => 'Dínear Inathraithe Iúgslavach',
+ 'YUD' => 'Dínear Crua Iúgslavach (1966–1990)',
+ 'YUM' => 'Dínear Nua Iúgslavach (1994–2002)',
+ 'YUN' => 'YUN',
'ZAL' => 'Rand na hAfraice Theas (airgeadúil)',
'ZAR' => 'Rand na hAfraice Theas',
'ZMK' => 'Kwacha Saimbiach (1968–2012)',
'ZMW' => 'Kwacha na Saimbia',
'ZRN' => 'Zaire Nua Sáíreach',
'ZRZ' => 'Zaire Sáíreach',
- 'ZWD' => 'Dollar Siombábach',
-);
+ 'ZWD' => 'Dollar Siombábach (1980–2008)',
+];
-$currencySymbols = array(
+$currencySymbols = [
'ADP' => 'ADP',
'AED' => 'AED',
+ 'AFA' => 'AFA',
'AFN' => 'AFN',
+ 'ALK' => 'ALK',
'ALL' => 'ALL',
'AMD' => 'AMD',
'ANG' => 'ANG',
'AOA' => 'AOA',
+ 'AOK' => 'AOK',
+ 'AON' => 'AON',
+ 'AOR' => 'AOR',
'ARA' => 'ARA',
'ARM' => 'ARM',
'ARP' => 'ARP',
'ARS' => 'ARS',
+ 'ATS' => 'ATS',
'AUD' => 'A$',
'AWG' => 'AWG',
'AZM' => 'AZM',
@@ -582,6 +754,9 @@ $currencySymbols = array(
'BAM' => 'BAM',
'BBD' => 'BBD',
'BDT' => 'BDT',
+ 'BEC' => 'BEC',
+ 'BEF' => 'BEF',
+ 'BEL' => 'BEL',
'BGL' => 'BGL',
'BGN' => 'BGN',
'BGO' => 'BGO',
@@ -604,6 +779,7 @@ $currencySymbols = array(
'BUK' => 'BUK',
'BWP' => 'BWP',
'BYB' => 'BYB',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CA$',
@@ -622,36 +798,48 @@ $currencySymbols = array(
'CVE' => 'CVE',
'CYP' => 'CYP',
'CZK' => 'CZK',
+ 'DDM' => 'DDM',
+ 'DEM' => 'DEM',
'DJF' => 'DJF',
'DKK' => 'DKK',
'DOP' => 'DOP',
'DZD' => 'DZD',
'ECS' => 'ECS',
'ECV' => 'ECV',
+ 'EEK' => 'EEK',
'EGP' => 'EGP',
'ERN' => 'ERN',
'ESP' => 'ESP',
'ETB' => 'ETB',
'EUR' => '€',
+ 'FIM' => 'FIM',
'FJD' => 'FJD',
'FKP' => 'FKP',
+ 'FRF' => 'FRF',
'GBP' => '£',
+ 'GEK' => 'GEK',
'GEL' => 'GEL',
'GHC' => 'GHC',
'GHS' => 'GHS',
'GIP' => 'GIP',
'GMD' => 'GMD',
'GNF' => 'GNF',
+ 'GNS' => 'GNS',
'GQE' => 'GQE',
'GRD' => 'GRD',
'GTQ' => 'GTQ',
+ 'GWE' => 'GWE',
+ 'GWP' => 'GWP',
'GYD' => 'GYD',
'HKD' => 'HK$',
'HNL' => 'HNL',
+ 'HRD' => 'HRD',
'HRK' => 'HRK',
'HTG' => 'HTG',
'HUF' => 'HUF',
'IDR' => 'IDR',
+ 'IEP' => 'IEP',
+ 'ILP' => 'ILP',
'ILS' => '₪',
'INR' => '₹',
'IQD' => 'IQD',
@@ -674,14 +862,21 @@ $currencySymbols = array(
'LBP' => 'LBP',
'LKR' => 'LKR',
'LRD' => 'LRD',
+ 'LSL' => 'LSL',
'LTL' => 'LTL',
+ 'LTT' => 'LTT',
+ 'LUC' => 'LUC',
+ 'LUF' => 'LUF',
'LVL' => 'LVL',
+ 'LVR' => 'LVR',
'LYD' => 'LYD',
'MAD' => 'MAD',
'MAF' => 'MAF',
'MDL' => 'MDL',
'MGA' => 'MGA',
+ 'MGF' => 'MGF',
'MKD' => 'MKD',
+ 'MLF' => 'MLF',
'MMK' => 'MMK',
'MNT' => 'MNT',
'MOP' => 'MOP',
@@ -689,17 +884,21 @@ $currencySymbols = array(
'MTL' => 'MTL',
'MTP' => 'MTP',
'MUR' => 'MUR',
+ 'MVP' => 'MVP',
'MVR' => 'MVR',
'MWK' => 'MWK',
'MXN' => 'MX$',
'MXP' => 'MXP',
'MXV' => 'MXV',
'MYR' => 'MYR',
+ 'MZE' => 'MZE',
+ 'MZM' => 'MZM',
'MZN' => 'MZN',
'NAD' => 'NAD',
'NGN' => 'NGN',
'NIC' => 'NIC',
'NIO' => 'NIO',
+ 'NLG' => 'NLG',
'NOK' => 'NOK',
'NPR' => 'NPR',
'NZD' => 'NZ$',
@@ -712,6 +911,7 @@ $currencySymbols = array(
'PHP' => 'PHP',
'PKR' => 'PKR',
'PLN' => 'PLN',
+ 'PLZ' => 'PLZ',
'PTE' => 'PTE',
'PYG' => 'PYG',
'QAR' => 'QAR',
@@ -738,21 +938,27 @@ $currencySymbols = array(
'SRG' => 'SRG',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'Db',
'SUR' => 'SUR',
'SVC' => 'SVC',
'SYP' => 'SYP',
'SZL' => 'SZL',
'THB' => '฿',
+ 'TJR' => 'TJR',
'TJS' => 'TJS',
+ 'TMM' => 'TMM',
'TMT' => 'TMT',
'TND' => 'TND',
'TOP' => 'TOP',
+ 'TPE' => 'TPE',
'TRL' => 'TRL',
'TRY' => 'TRY',
'TTD' => 'TTD',
'TWD' => 'NT$',
'TZS' => 'TZS',
'UAH' => 'UAH',
+ 'UAK' => 'UAK',
+ 'UGS' => 'UGS',
'UGX' => 'UGX',
'USD' => '$',
'USN' => 'USN',
@@ -762,6 +968,7 @@ $currencySymbols = array(
'UZS' => 'UZS',
'VEB' => 'VEB',
'VEF' => 'VEF',
+ 'VES' => 'VES',
'VND' => '₫',
'VNN' => 'VNN',
'VUV' => 'VUV',
@@ -769,11 +976,15 @@ $currencySymbols = array(
'XAF' => 'FCFA',
'XAG' => 'XAG',
'XAU' => 'XAU',
+ 'XBA' => 'XBA',
'XBB' => 'XBB',
'XBC' => 'XBC',
+ 'XBD' => 'XBD',
'XCD' => 'EC$',
'XDR' => 'XDR',
+ 'XEU' => 'XEU',
'XFO' => 'XFO',
+ 'XFU' => 'XFU',
'XOF' => 'CFA',
'XPD' => 'XPD',
'XPF' => 'CFPF',
@@ -784,257 +995,262 @@ $currencySymbols = array(
'YUD' => 'YUD',
'YUM' => 'YUM',
'YUN' => 'YUN',
+ 'ZAL' => 'ZAL',
'ZAR' => 'ZAR',
+ 'ZMK' => 'ZMK',
'ZMW' => 'ZMW',
+ 'ZRN' => 'ZRN',
'ZRZ' => 'ZRZ',
-);
+ 'ZWD' => 'ZWD',
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'Oileán na Deascabhála',
'AD' => 'Andóra',
'AE' => 'Aontas na nÉimíríochtaí Arabacha',
- 'AF' => 'An Afganastáin',
+ 'AF' => 'an Afganastáin',
'AG' => 'Antigua agus Barbúda',
'AI' => 'Angaíle',
- 'AL' => 'An Albáin',
- 'AM' => 'An Airméin',
- 'AN' => 'Aintillí na hÍsiltíre',
+ 'AL' => 'an Albáin',
+ 'AM' => 'an Airméin',
'AO' => 'Angóla',
- 'AQ' => 'An Antartaice',
- 'AR' => 'An Airgintín',
- 'AS' => 'Samó Meiriceánach',
- 'AT' => 'An Ostair',
- 'AU' => 'An Astráil',
+ 'AQ' => 'an Antartaice',
+ 'AR' => 'an Airgintín',
+ 'AS' => 'Samó Mheiriceá',
+ 'AT' => 'an Ostair',
+ 'AU' => 'an Astráil',
'AW' => 'Arúba',
'AX' => 'Oileáin Åland',
- 'AZ' => 'An Asarbaiseáin',
- 'BA' => 'An Bhoisnia agus An Heirseagaivéin',
+ 'AZ' => 'an Asarbaiseáin',
+ 'BA' => 'an Bhoisnia agus an Heirseagaivéin',
'BB' => 'Barbadós',
- 'BD' => 'An Bhanglaidéis',
- 'BE' => 'An Bheilg',
+ 'BD' => 'an Bhanglaidéis',
+ 'BE' => 'an Bheilg',
'BF' => 'Buircíne Fasó',
- 'BG' => 'An Bhulgáir',
+ 'BG' => 'an Bhulgáir',
'BH' => 'Bairéin',
- 'BI' => 'An Bhurúin',
+ 'BI' => 'an Bhurúin',
'BJ' => 'Beinin',
'BL' => 'Saint Barthélemy',
'BM' => 'Beirmiúda',
'BN' => 'Brúiné',
- 'BO' => 'An Bholaiv',
- 'BQ' => 'An Ísiltír Chairibeach',
- 'BR' => 'An Bhrasaíl',
- 'BS' => 'Na Bahámaí',
- 'BT' => 'An Bhútáin',
+ 'BO' => 'an Bholaiv',
+ 'BQ' => 'an Ísiltír Chairibeach',
+ 'BR' => 'an Bhrasaíl',
+ 'BS' => 'na Bahámaí',
+ 'BT' => 'an Bhútáin',
'BV' => 'Oileán Bouvet',
- 'BW' => 'An Bhotsuáin',
- 'BY' => 'An Bhealarúis',
- 'BZ' => 'An Bheilís',
+ 'BW' => 'an Bhotsuáin',
+ 'BY' => 'an Bhealarúis',
+ 'BZ' => 'an Bheilís',
'CA' => 'Ceanada',
'CC' => 'Oileáin Cocos (Keeling)',
'CD' => 'Poblacht Dhaonlathach an Chongó',
'CF' => 'Poblacht na hAfraice Láir',
- 'CG' => 'An Congó',
- 'CH' => 'An Eilvéis',
- 'CI' => 'An Cósta Eabhair',
+ 'CG' => 'an Congó',
+ 'CH' => 'an Eilvéis',
+ 'CI' => 'an Cósta Eabhair',
'CK' => 'Oileáin Cook',
- 'CL' => 'An tSile',
+ 'CL' => 'an tSile',
'CM' => 'Camarún',
- 'CN' => 'An tSín',
- 'CO' => 'An Cholóim',
+ 'CN' => 'an tSín',
+ 'CO' => 'an Cholóim',
'CP' => 'Oileán Clipperton',
'CR' => 'Cósta Ríce',
'CU' => 'Cúba',
'CV' => 'Rinn Verde',
'CW' => 'Curaçao',
'CX' => 'Oileán na Nollag',
- 'CY' => 'An Chipir',
- 'CZ' => 'Poblacht na Seice',
- 'DE' => 'An Ghearmáin',
+ 'CY' => 'an Chipir',
+ 'CZ' => 'an tSeicia',
+ 'DE' => 'an Ghearmáin',
'DG' => 'Diego Garcia',
'DJ' => 'Djibouti',
- 'DK' => 'An Danmhairg',
+ 'DK' => 'an Danmhairg',
'DM' => 'Doiminice',
- 'DO' => 'An Phoblacht Dhoiminiceach',
- 'DZ' => 'An Ailgéir',
+ 'DO' => 'an Phoblacht Dhoiminiceach',
+ 'DZ' => 'an Ailgéir',
'EA' => 'Ceuta agus Melilla',
'EC' => 'Eacuadór',
- 'EE' => 'An Eastóin',
- 'EG' => 'An Éigipt',
- 'EH' => 'An Sahára Thiar',
- 'ER' => 'An Eiritré',
- 'ES' => 'An Spáinn',
- 'ET' => 'An Aetóip',
- 'EU' => 'An tAontas Eorpach',
- 'FI' => 'An Fhionlainn',
+ 'EE' => 'an Eastóin',
+ 'EG' => 'an Éigipt',
+ 'EH' => 'an Sahára Thiar',
+ 'ER' => 'an Eiritré',
+ 'ES' => 'an Spáinn',
+ 'ET' => 'an Aetóip',
+ 'EU' => 'an tAontas Eorpach',
+ 'EZ' => 'Limistéar an euro',
+ 'FI' => 'an Fhionlainn',
'FJ' => 'Fidsí',
'FK' => 'Oileáin Fháclainne',
- 'FM' => 'An Mhicrinéis',
+ 'FM' => 'an Mhicrinéis',
'FO' => 'Oileáin Fharó',
- 'FR' => 'An Fhrainc',
- 'GA' => 'An Ghabúin',
+ 'FR' => 'an Fhrainc',
+ 'GA' => 'an Ghabúin',
'GB' => 'RA',
'GD' => 'Greanáda',
- 'GE' => 'An tSeoirsia',
+ 'GE' => 'an tSeoirsia',
'GF' => 'Guáin na Fraince',
'GG' => 'Geansaí',
'GH' => 'Gána',
'GI' => 'Giobráltar',
- 'GL' => 'An Ghraonlainn',
- 'GM' => 'An Ghaimbia',
- 'GN' => 'An Ghuine',
+ 'GL' => 'an Ghraonlainn',
+ 'GM' => 'an Ghaimbia',
+ 'GN' => 'an Ghuine',
'GP' => 'Guadalúip',
- 'GQ' => 'An Ghuine Mheánchriosach',
- 'GR' => 'An Ghréig',
- 'GS' => 'An tSeoirsia Theas agus Oileáin Sandwich Theas',
+ 'GQ' => 'an Ghuine Mheánchiorclach',
+ 'GR' => 'an Ghréig',
+ 'GS' => 'an tSeoirsia Theas agus Oileáin Sandwich Theas',
'GT' => 'Guatamala',
'GU' => 'Guam',
'GW' => 'Guine Bissau',
- 'GY' => 'An Ghuáin',
+ 'GY' => 'an Ghuáin',
'HK' => 'Hong Cong',
'HM' => 'Oileán Heard agus Oileáin McDonald',
'HN' => 'Hondúras',
- 'HR' => 'An Chróit',
+ 'HR' => 'an Chróit',
'HT' => 'Háítí',
- 'HU' => 'An Ungáir',
- 'IC' => 'Na hOileáin Chanáracha',
- 'ID' => 'An Indinéis',
+ 'HU' => 'an Ungáir',
+ 'IC' => 'na hOileáin Chanáracha',
+ 'ID' => 'an Indinéis',
'IE' => 'Éire',
'IL' => 'Iosrael',
'IM' => 'Oileán Mhanann',
- 'IN' => 'An India',
+ 'IN' => 'an India',
'IO' => 'Críoch Aigéan Indiach na Breataine',
- 'IQ' => 'An Iaráic',
- 'IR' => 'An Iaráin',
- 'IS' => 'An Íoslainn',
- 'IT' => 'An Iodáil',
+ 'IQ' => 'an Iaráic',
+ 'IR' => 'an Iaráin',
+ 'IS' => 'an Íoslainn',
+ 'IT' => 'an Iodáil',
'JE' => 'Geirsí',
'JM' => 'Iamáice',
- 'JO' => 'An Iordáin',
- 'JP' => 'An tSeapáin',
- 'KE' => 'An Chéinia',
- 'KG' => 'An Chirgeastáin',
- 'KH' => 'An Chambóid',
+ 'JO' => 'an Iordáin',
+ 'JP' => 'an tSeapáin',
+ 'KE' => 'an Chéinia',
+ 'KG' => 'an Chirgeastáin',
+ 'KH' => 'an Chambóid',
'KI' => 'Cireabaití',
'KM' => 'Oileáin Chomóra',
'KN' => 'San Críostóir-Nimheas',
- 'KP' => 'An Chóiré Thuaidh',
- 'KR' => 'An Chóiré Theas',
+ 'KP' => 'an Chóiré Thuaidh',
+ 'KR' => 'an Chóiré Theas',
'KW' => 'Cuáit',
'KY' => 'Oileáin Cayman',
- 'KZ' => 'An Chasacstáin',
+ 'KZ' => 'an Chasacstáin',
'LA' => 'Laos',
- 'LB' => 'An Liobáin',
+ 'LB' => 'an Liobáin',
'LC' => 'Saint Lucia',
'LI' => 'Lichtinstéin',
'LK' => 'Srí Lanca',
- 'LR' => 'An Libéir',
+ 'LR' => 'an Libéir',
'LS' => 'Leosóta',
- 'LT' => 'An Liotuáin',
+ 'LT' => 'an Liotuáin',
'LU' => 'Lucsamburg',
- 'LV' => 'An Laitvia',
- 'LY' => 'An Libia',
+ 'LV' => 'an Laitvia',
+ 'LY' => 'an Libia',
'MA' => 'Maracó',
'MC' => 'Monacó',
- 'MD' => 'An Mholdóiv',
+ 'MD' => 'an Mholdóiv',
'ME' => 'Montainéagró',
'MF' => 'Saint-Martin',
'MG' => 'Madagascar',
'MH' => 'Oileáin Marshall',
- 'MK' => 'An Mhacadóin',
+ 'MK' => 'an Mhacadóin',
'ML' => 'Mailí',
'MM' => 'Maenmar (Burma)',
- 'MN' => 'An Mhongóil',
+ 'MN' => 'an Mhongóil',
'MO' => 'Macao',
- 'MP' => 'Na hOileáin Mháirianacha Thuaidh',
+ 'MP' => 'na hOileáin Mháirianacha Thuaidh',
'MQ' => 'Martinique',
- 'MR' => 'An Mháratáin',
+ 'MR' => 'an Mháratáin',
'MS' => 'Montsarat',
'MT' => 'Málta',
'MU' => 'Oileán Mhuirís',
'MV' => 'Oileáin Mhaildíve',
- 'MW' => 'An Mhaláiv',
+ 'MW' => 'an Mhaláiv',
'MX' => 'Meicsiceo',
- 'MY' => 'An Mhalaeisia',
+ 'MY' => 'an Mhalaeisia',
'MZ' => 'Mósaimbíc',
- 'NA' => 'An Namaib',
- 'NC' => 'An Nua-Chaladóin',
- 'NE' => 'An Nígir',
+ 'NA' => 'an Namaib',
+ 'NC' => 'an Nua-Chaladóin',
+ 'NE' => 'an Nígir',
'NF' => 'Oileán Norfolk',
- 'NG' => 'An Nigéir',
+ 'NG' => 'an Nigéir',
'NI' => 'Nicearagua',
- 'NL' => 'An Ísiltír',
- 'NO' => 'An Iorua',
+ 'NL' => 'an Ísiltír',
+ 'NO' => 'an Iorua',
'NP' => 'Neipeal',
'NR' => 'Nárú',
'NU' => 'Niue',
- 'NZ' => 'An Nua-Shéalainn',
+ 'NZ' => 'an Nua-Shéalainn',
'OM' => 'Óman',
'PA' => 'Panama',
'PE' => 'Peiriú',
'PF' => 'Polainéis na Fraince',
'PG' => 'Nua-Ghuine Phapua',
- 'PH' => 'Na hOileáin Fhilipíneacha',
- 'PK' => 'An Phacastáin',
- 'PL' => 'An Pholainn',
- 'PM' => 'Saint-Pierre-et-Miquelon',
+ 'PH' => 'na hOileáin Fhilipíneacha',
+ 'PK' => 'an Phacastáin',
+ 'PL' => 'an Pholainn',
+ 'PM' => 'San Pierre agus Miquelon',
'PN' => 'Oileáin Pitcairn',
- 'PR' => 'Portó Ríce',
- 'PS' => 'An Phalaistín',
- 'PT' => 'An Phortaingéil',
- 'PW' => 'Palau',
+ 'PR' => 'Pórtó Ríce',
+ 'PS' => 'an Phalaistín',
+ 'PT' => 'an Phortaingéil',
+ 'PW' => 'Oileáin Palau',
'PY' => 'Paragua',
'QA' => 'Catar',
- 'QO' => 'An Aigéine Imeallach',
+ 'QO' => 'an Aigéine Imeallach',
'RE' => 'Réunion',
- 'RO' => 'An Rómáin',
- 'RS' => 'An tSeirbia',
- 'RU' => 'An Rúis',
+ 'RO' => 'an Rómáin',
+ 'RS' => 'an tSeirbia',
+ 'RU' => 'an Rúis',
'RW' => 'Ruanda',
- 'SA' => 'An Araib Shádach',
+ 'SA' => 'an Araib Shádach',
'SB' => 'Oileáin Sholomón',
- 'SC' => 'Na Séiséil',
- 'SD' => 'An tSúdáin',
- 'SE' => 'An tSualainn',
+ 'SC' => 'na Séiséil',
+ 'SD' => 'an tSúdáin',
+ 'SE' => 'an tSualainn',
'SG' => 'Singeapór',
'SH' => 'San Héilin',
- 'SI' => 'An tSlóivéin',
+ 'SI' => 'an tSlóivéin',
'SJ' => 'Svalbard agus Jan Mayen',
- 'SK' => 'An tSlóvaic',
+ 'SK' => 'an tSlóvaic',
'SL' => 'Siarra Leon',
'SM' => 'San Mairíne',
- 'SN' => 'An tSeineagáil',
- 'SO' => 'An tSomáil',
+ 'SN' => 'an tSeineagáil',
+ 'SO' => 'an tSomáil',
'SR' => 'Suranam',
- 'SS' => 'An tSúdáin Theas',
+ 'SS' => 'an tSúdáin Theas',
'ST' => 'São Tomé agus Príncipe',
- 'SV' => 'An tSalvadóir',
+ 'SV' => 'an tSalvadóir',
'SX' => 'Sint Maarten',
- 'SY' => 'An tSiria',
- 'SZ' => 'An tSuasalainn',
+ 'SY' => 'an tSiria',
+ 'SZ' => 'an tSuasalainn',
'TA' => 'Tristan da Cunha',
'TC' => 'Oileáin na dTurcach agus Caicos',
'TD' => 'Sead',
'TF' => 'Críocha Francacha Dheisceart an Domhain',
'TG' => 'Tóga',
- 'TH' => 'An Téalainn',
- 'TJ' => 'An Táidsíceastáin',
+ 'TH' => 'an Téalainn',
+ 'TJ' => 'an Táidsíceastáin',
'TK' => 'Tócalá',
'TL' => 'Tíomór Thoir',
- 'TM' => 'An Tuircméanastáin',
- 'TN' => 'An Túinéis',
+ 'TM' => 'an Tuircméanastáin',
+ 'TN' => 'an Túinéis',
'TO' => 'Tonga',
- 'TR' => 'An Tuirc',
+ 'TR' => 'an Tuirc',
'TT' => 'Oileán na Tríonóide agus Tobága',
'TV' => 'Tuvalu',
- 'TW' => 'An Téaváin',
- 'TZ' => 'An Tansáin',
- 'UA' => 'An Úcráin',
+ 'TW' => 'an Téaváin',
+ 'TZ' => 'an Tansáin',
+ 'UA' => 'an Úcráin',
'UG' => 'Uganda',
'UM' => 'Oileáin Imeallacha S.A.M.',
+ 'UN' => 'NA',
'US' => 'SAM',
- 'UY' => 'Urugua',
- 'UZ' => 'An Úisbéiceastáin',
- 'VA' => 'An Vatacáin',
+ 'UY' => 'Uragua',
+ 'UZ' => 'an Úisbéiceastáin',
+ 'VA' => 'Cathair na Vatacáine',
'VC' => 'San Uinseann agus na Greanáidíní',
'VE' => 'Veiniséala',
'VG' => 'Oileáin Bhriotanacha na Maighdean',
@@ -1043,15 +1259,20 @@ $countryNames = array(
'VU' => 'Vanuatú',
'WF' => 'Vailís agus Futúna',
'WS' => 'Samó',
- 'XK' => 'An Chosaiv',
+ 'XK' => 'an Chosaiv',
'YE' => 'Éimin',
'YT' => 'Mayotte',
- 'ZA' => 'An Afraic Theas',
- 'ZM' => 'An tSaimbia',
- 'ZW' => 'An tSiombáib',
-);
+ 'ZA' => 'an Afraic Theas',
+ 'ZM' => 'an tSaimbia',
+ 'ZW' => 'an tSiombáib',
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-few' => '{0} chéad bliain',
+ 'century-many' => '{0} gcéad bliain',
+ 'century-one' => '{0} chéad bliain',
+ 'century-other' => '{0} céad bliain',
+ 'century-two' => '{0} chéad bliain',
'day-few' => '{0} lá',
'day-future-few' => 'i gceann {0} lá',
'day-future-many' => 'i gceann {0} lá',
@@ -1087,6 +1308,36 @@ $timeUnits = array(
'day-short-past-other' => '{0} lá ó shin',
'day-short-past-two' => '{0} lá ó shin',
'day-two' => '{0} lá',
+ 'fri-future-few' => '{0} seachtaine ón Aoine',
+ 'fri-future-many' => '{0} seachtaine ón Aoine',
+ 'fri-future-one' => '{0} seachtain ón Aoine',
+ 'fri-future-other' => '{0} seachtain ón Aoine',
+ 'fri-future-two' => '{0} sheachtain ón Aoine',
+ 'fri-narrow-future-few' => '+{0} Aoine',
+ 'fri-narrow-future-many' => '+{0} Aoine',
+ 'fri-narrow-future-one' => '+{0} Aoine',
+ 'fri-narrow-future-other' => '+{0} Aoine',
+ 'fri-narrow-future-two' => '+{0} Aoine',
+ 'fri-narrow-past-few' => '{0} Aoine ó shin',
+ 'fri-narrow-past-many' => '{0} Aoine ó shin',
+ 'fri-narrow-past-one' => '{0} Aoine ó shin',
+ 'fri-narrow-past-other' => '{0} Aoine ó shin',
+ 'fri-narrow-past-two' => '{0} Aoine ó shin',
+ 'fri-past-few' => 'Dé hAoine {0} seachtaine ó shin',
+ 'fri-past-many' => 'Dé hAoine {0} seachtaine ó shin',
+ 'fri-past-one' => 'Dé hAoine {0} seachtain ó shin',
+ 'fri-past-other' => 'Dé hAoine {0} seachtain ó shin',
+ 'fri-past-two' => 'Dé hAoine {0} sheachtain ó shin',
+ 'fri-short-future-few' => '{0} seachtaine ón Aoine',
+ 'fri-short-future-many' => '{0} seachtaine ón Aoine',
+ 'fri-short-future-one' => '{0} seachtain ón Aoine',
+ 'fri-short-future-other' => '{0} seachtain ón Aoine',
+ 'fri-short-future-two' => '{0} sheachtain ón Aoine',
+ 'fri-short-past-few' => 'Dé hAoine {0} seachtaine ó shin',
+ 'fri-short-past-many' => 'Dé hAoine {0} seachtaine ó shin',
+ 'fri-short-past-one' => 'Dé hAoine {0} seachtain ó shin',
+ 'fri-short-past-other' => 'Dé hAoine {0} seachtain ó shin',
+ 'fri-short-past-two' => 'Dé hAoine {0} sheachtain ó shin',
'hour-few' => '{0} huaire',
'hour-future-few' => 'i gceann {0} huaire an chloig',
'hour-future-many' => 'i gceann {0} n-uaire an chloig',
@@ -1167,6 +1418,36 @@ $timeUnits = array(
'minute-short-past-other' => '{0} nóim. ó shin',
'minute-short-past-two' => '{0} nóim. ó shin',
'minute-two' => '{0} nóiméad',
+ 'mon-future-few' => '{0} seachtaine ón Luan',
+ 'mon-future-many' => '{0} seachtaine ón Luan',
+ 'mon-future-one' => '{0} seachtain ón Luan',
+ 'mon-future-other' => '{0} seachtain ón Luan',
+ 'mon-future-two' => '{0} sheachtain ón Luan',
+ 'mon-narrow-future-few' => '+{0} Luan',
+ 'mon-narrow-future-many' => '+{0} Luan',
+ 'mon-narrow-future-one' => '+{0} Luan',
+ 'mon-narrow-future-other' => '+{0} Luan',
+ 'mon-narrow-future-two' => '+{0} Luan',
+ 'mon-narrow-past-few' => '{0} Luan ó shin',
+ 'mon-narrow-past-many' => '{0} Luan ó shin',
+ 'mon-narrow-past-one' => '{0} Luan ó shin',
+ 'mon-narrow-past-other' => '{0} Luan ó shin',
+ 'mon-narrow-past-two' => '{0} Luan ó shin',
+ 'mon-past-few' => 'Dé Luain {0} seachtaine ó shin',
+ 'mon-past-many' => 'Dé Luain {0} seachtaine ó shin',
+ 'mon-past-one' => 'Dé Luain {0} seachtain ó shin',
+ 'mon-past-other' => 'Dé Luain {0} seachtain ó shin',
+ 'mon-past-two' => 'Dé Luain {0} sheachtain ó shin',
+ 'mon-short-future-few' => '{0} seachtaine ón Luan',
+ 'mon-short-future-many' => '{0} seachtaine ón Luan',
+ 'mon-short-future-one' => '{0} seachtain ón Luan',
+ 'mon-short-future-other' => '{0} seachtain ón Luan',
+ 'mon-short-future-two' => '{0} sheachtain ón Luan',
+ 'mon-short-past-few' => 'Dé Luain {0} seachtaine ó shin',
+ 'mon-short-past-many' => 'Dé Luain {0} seachtaine ó shin',
+ 'mon-short-past-one' => 'Dé Luain {0} seachtain ó shin',
+ 'mon-short-past-other' => 'Dé Luain {0} seachtain ó shin',
+ 'mon-short-past-two' => 'Dé Luain {0} sheachtain ó shin',
'month-few' => '{0} mhí',
'month-future-few' => 'i gceann {0} mhí',
'month-future-many' => 'i gceann {0} mí',
@@ -1237,6 +1518,36 @@ $timeUnits = array(
'quarter-short-past-one' => '{0} ráithe ó shin',
'quarter-short-past-other' => '{0} ráithe ó shin',
'quarter-short-past-two' => '{0} ráithe ó shin',
+ 'sat-future-few' => '{0} seachtaine ón Satharn',
+ 'sat-future-many' => '{0} seachtaine ón Satharn',
+ 'sat-future-one' => '{0} seachtain ón Satharn',
+ 'sat-future-other' => '{0} seachtain ón Satharn',
+ 'sat-future-two' => '{0} sheachtain ón Satharn',
+ 'sat-narrow-future-few' => '+{0} Shatharn',
+ 'sat-narrow-future-many' => '+{0} Satharn',
+ 'sat-narrow-future-one' => '+{0} Satharn',
+ 'sat-narrow-future-other' => '+{0} Satharn',
+ 'sat-narrow-future-two' => '+{0} Shatharn',
+ 'sat-narrow-past-few' => '{0} Shatharn ó shin',
+ 'sat-narrow-past-many' => '{0} Satharn ó shin',
+ 'sat-narrow-past-one' => '{0} Satharn ó shin',
+ 'sat-narrow-past-other' => '{0} Satharn ó shin',
+ 'sat-narrow-past-two' => '{0} Shatharn ó shin',
+ 'sat-past-few' => 'Dé Sathairn {0} seachtaine ó shin',
+ 'sat-past-many' => 'Dé Sathairn {0} seachtaine ó shin',
+ 'sat-past-one' => 'Dé Sathairn {0} seachtain ó shin',
+ 'sat-past-other' => 'Dé Sathairn {0} seachtain ó shin',
+ 'sat-past-two' => 'Dé Sathairn {0} sheachtain ó shin',
+ 'sat-short-future-few' => '{0} seachtaine ón Satharn',
+ 'sat-short-future-many' => '{0} seachtaine ón Satharn',
+ 'sat-short-future-one' => '{0} seachtain ón Satharn',
+ 'sat-short-future-other' => '{0} seachtain ón Satharn',
+ 'sat-short-future-two' => '{0} sheachtain ón Satharn',
+ 'sat-short-past-few' => 'Dé Sathairn {0} seachtaine ó shin',
+ 'sat-short-past-many' => 'Dé Sathairn {0} seachtaine ó shin',
+ 'sat-short-past-one' => 'Dé Sathairn {0} seachtain ó shin',
+ 'sat-short-past-other' => 'Dé Sathairn {0} seachtain ó shin',
+ 'sat-short-past-two' => 'Dé Sathairn {0} sheachtain ó shin',
'second-few' => '{0} shoicind',
'second-future-few' => 'i gceann {0} shoicind',
'second-future-many' => 'i gceann {0} soicind',
@@ -1272,6 +1583,126 @@ $timeUnits = array(
'second-short-past-other' => '{0} soic. ó shin',
'second-short-past-two' => '{0} shoic. ó shin',
'second-two' => '{0} shoicind',
+ 'sun-future-few' => '{0} seachtaine ón Domhnach',
+ 'sun-future-many' => '{0} seachtaine ón Domhnach',
+ 'sun-future-one' => '{0} seachtain ón Domhnach',
+ 'sun-future-other' => '{0} seachtain ón Domhnach',
+ 'sun-future-two' => '{0} sheachtain ón Domhnach',
+ 'sun-narrow-future-few' => '+{0} Dhomh.',
+ 'sun-narrow-future-many' => '+{0} nDomh.',
+ 'sun-narrow-future-one' => '+{0} Domh.',
+ 'sun-narrow-future-other' => '+{0} Domh.',
+ 'sun-narrow-future-two' => '+{0} Dhomh.',
+ 'sun-narrow-past-few' => '{0} Dhomh. ó shin',
+ 'sun-narrow-past-many' => '{0} nDomh. ó shin',
+ 'sun-narrow-past-one' => '{0} Domh. ó shin',
+ 'sun-narrow-past-other' => '{0} Domh. ó shin',
+ 'sun-narrow-past-two' => '{0} Dhomh. ó shin',
+ 'sun-past-few' => 'Dé Domhnaigh {0} seachtaine ó shin',
+ 'sun-past-many' => 'Dé Domhnaigh {0} seachtaine ó shin',
+ 'sun-past-one' => 'Dé Domhnaigh {0} seachtain ó shin',
+ 'sun-past-other' => 'Dé Domhnaigh {0} seachtain ó shin',
+ 'sun-past-two' => 'Dé Domhnaigh {0} sheachtain ó shin',
+ 'sun-short-future-few' => '{0} seachtaine ón Domh.',
+ 'sun-short-future-many' => '{0} seachtaine ón Domh.',
+ 'sun-short-future-one' => '{0} seachtain ón Domh.',
+ 'sun-short-future-other' => '{0} seachtain ón Domh.',
+ 'sun-short-future-two' => '{0} sheachtain ón Domh.',
+ 'sun-short-past-few' => 'Dé Domh. {0} seachtaine ó shin',
+ 'sun-short-past-many' => 'Dé Domh. {0} seachtaine ó shin',
+ 'sun-short-past-one' => 'Dé Domh. {0} seachtain ó shin',
+ 'sun-short-past-other' => 'Dé Domh. {0} seachtain ó shin',
+ 'sun-short-past-two' => 'Dé Domh. {0} sheachtain ó shin',
+ 'thu-future-few' => '{0} seachtaine ón Déardaoin',
+ 'thu-future-many' => '{0} seachtaine ón Déardaoin',
+ 'thu-future-one' => '{0} seachtain ón Déardaoin',
+ 'thu-future-other' => '{0} seachtain ón Déardaoin',
+ 'thu-future-two' => '{0} sheachtain ón Déardaoin',
+ 'thu-narrow-future-few' => '+{0} Dhéardaoin',
+ 'thu-narrow-future-many' => '+{0} nDéardaoin',
+ 'thu-narrow-future-one' => '+{0} Déardaoin',
+ 'thu-narrow-future-other' => '+{0} Déardaoin',
+ 'thu-narrow-future-two' => '+{0} Dhéardaoin',
+ 'thu-narrow-past-few' => '{0} Dhéardaoin ó shin',
+ 'thu-narrow-past-many' => '{0} nDéardaoin ó shin',
+ 'thu-narrow-past-one' => '{0} Déardaoin ó shin',
+ 'thu-narrow-past-other' => '{0} Déardaoin ó shin',
+ 'thu-narrow-past-two' => '{0} Dhéardaoin ó shin',
+ 'thu-past-few' => 'Déardaoin {0} seachtaine ó shin',
+ 'thu-past-many' => 'Déardaoin {0} seachtaine ó shin',
+ 'thu-past-one' => 'Déardaoin {0} seachtain ó shin',
+ 'thu-past-other' => 'Déardaoin {0} seachtain ó shin',
+ 'thu-past-two' => 'Déardaoin {0} sheachtain ó shin',
+ 'thu-short-future-few' => '{0} seachtaine ón Déardaoin',
+ 'thu-short-future-many' => '{0} seachtaine ón Déardaoin',
+ 'thu-short-future-one' => '{0} seachtain ón Déardaoin',
+ 'thu-short-future-other' => '{0} seachtain ón Déardaoin',
+ 'thu-short-future-two' => '{0} sheachtain ón Déardaoin',
+ 'thu-short-past-few' => 'Déardaoin {0} seachtaine ó shin',
+ 'thu-short-past-many' => 'Déardaoin {0} seachtaine ó shin',
+ 'thu-short-past-one' => 'Déardaoin {0} seachtain ó shin',
+ 'thu-short-past-other' => 'Déardaoin {0} seachtain ó shin',
+ 'thu-short-past-two' => 'Déardaoin {0} sheachtain ó shin',
+ 'tue-future-few' => '{0} seachtaine ón Máirt',
+ 'tue-future-many' => '{0} seachtaine ón Máirt',
+ 'tue-future-one' => '{0} seachtain ón Máirt',
+ 'tue-future-other' => '{0} seachtain ón Máirt',
+ 'tue-future-two' => '{0} sheachtain ón Máirt',
+ 'tue-narrow-future-few' => '+{0} Mháirt',
+ 'tue-narrow-future-many' => '+{0} Máirt',
+ 'tue-narrow-future-one' => '+{0} Mháirt',
+ 'tue-narrow-future-other' => '+{0} Máirt',
+ 'tue-narrow-future-two' => '+{0} Mháirt',
+ 'tue-narrow-past-few' => '{0} Mháirt ó shin',
+ 'tue-narrow-past-many' => '{0} Máirt ó shin',
+ 'tue-narrow-past-one' => '{0} Mháirt ó shin',
+ 'tue-narrow-past-other' => '{0} Máirt ó shin',
+ 'tue-narrow-past-two' => '{0} Mháirt ó shin',
+ 'tue-past-few' => 'Dé Máirt {0} seachtaine ó shin',
+ 'tue-past-many' => 'Dé Máirt {0} seachtaine ó shin',
+ 'tue-past-one' => 'Dé Máirt {0} seachtain ó shin',
+ 'tue-past-other' => 'Dé Máirt {0} seachtain ó shin',
+ 'tue-past-two' => 'Dé Máirt {0} sheachtain ó shin',
+ 'tue-short-future-few' => '{0} seachtaine ón Máirt',
+ 'tue-short-future-many' => '{0} seachtaine ón Máirt',
+ 'tue-short-future-one' => '{0} seachtain ón Máirt',
+ 'tue-short-future-other' => '{0} seachtain ón Máirt',
+ 'tue-short-future-two' => '{0} sheachtain ón Máirt',
+ 'tue-short-past-few' => 'Dé Máirt {0} seachtaine ó shin',
+ 'tue-short-past-many' => 'Dé Máirt {0} seachtaine ó shin',
+ 'tue-short-past-one' => 'Dé Máirt {0} seachtain ó shin',
+ 'tue-short-past-other' => 'Dé Máirt {0} seachtain ó shin',
+ 'tue-short-past-two' => 'Dé Máirt {0} sheachtain ó shin',
+ 'wed-future-few' => '{0} seachtaine ón Chéadaoin',
+ 'wed-future-many' => '{0} seachtaine ón Chéadaoin',
+ 'wed-future-one' => '{0} seachtain ón Chéadaoin',
+ 'wed-future-other' => '{0} seachtain ón Chéadaoin',
+ 'wed-future-two' => '{0} sheachtain ón Chéadaoin',
+ 'wed-narrow-future-few' => '+{0} Chéadaoin',
+ 'wed-narrow-future-many' => '+{0} gCéadaoin',
+ 'wed-narrow-future-one' => '+{0} Chéadaoin',
+ 'wed-narrow-future-other' => '+{0} Céadaoin',
+ 'wed-narrow-future-two' => '+{0} Chéadaoin',
+ 'wed-narrow-past-few' => '{0} Chéadaoin ó shin',
+ 'wed-narrow-past-many' => '{0} gCéadaoin ó shin',
+ 'wed-narrow-past-one' => '{0} Chéadaoin ó shin',
+ 'wed-narrow-past-other' => '{0} Céadaoin ó shin',
+ 'wed-narrow-past-two' => '{0} Chéadaoin ó shin',
+ 'wed-past-few' => 'Dé Céadaoin {0} seachtaine ó shin',
+ 'wed-past-many' => 'Dé Céadaoin {0} seachtaine ó shin',
+ 'wed-past-one' => 'Dé Céadaoin {0} seachtain ó shin',
+ 'wed-past-other' => 'Dé Céadaoin {0} seachtain ó shin',
+ 'wed-past-two' => 'Dé Céadaoin {0} sheachtain ó shin',
+ 'wed-short-future-few' => '{0} seachtaine ón Chéadaoin',
+ 'wed-short-future-many' => '{0} seachtaine ón Chéadaoin',
+ 'wed-short-future-one' => '{0} seachtain ón Chéadaoin',
+ 'wed-short-future-other' => '{0} seachtain ón Chéadaoin',
+ 'wed-short-future-two' => '{0} sheachtain ón Chéadaoin',
+ 'wed-short-past-few' => 'Dé Céadaoin {0} seachtaine ó shin',
+ 'wed-short-past-many' => 'Dé Céadaoin {0} seachtaine ó shin',
+ 'wed-short-past-one' => 'Dé Céadaoin {0} seachtain ó shin',
+ 'wed-short-past-other' => 'Dé Céadaoin {0} seachtain ó shin',
+ 'wed-short-past-two' => 'Dé Céadaoin {0} sheachtain ó shin',
'week-few' => '{0} seachtaine',
'week-future-few' => 'i gceann {0} seachtaine',
'week-future-many' => 'i gceann {0} seachtaine',
@@ -1342,4 +1773,4 @@ $timeUnits = array(
'year-short-past-other' => '{0} bl. ó shin',
'year-short-past-two' => '{0} bhl. ó shin',
'year-two' => '{0} bhliain',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesGd.php b/MLEB/cldr/CldrNames/CldrNamesGd.php
index 0bbbfe22..0f661145 100644
--- a/MLEB/cldr/CldrNames/CldrNamesGd.php
+++ b/MLEB/cldr/CldrNames/CldrNamesGd.php
@@ -1,22 +1,36 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'Afar',
'ab' => 'Abchasais',
+ 'ace' => 'Basa Acèh',
+ 'ach' => 'Acoli',
+ 'ada' => 'Adangme',
+ 'ady' => 'Adyghe',
'ae' => 'Avestanais',
'aeb' => 'Arabais Thuiniseach',
'af' => 'Afraganais',
+ 'afh' => 'Afrihili',
'agq' => 'Aghem',
+ 'ain' => 'Ainu',
'ak' => 'Akan',
+ 'akk' => 'Acadais',
+ 'akz' => 'Alabama',
'ale' => 'Aleutais',
+ 'aln' => 'Albàinis Ghegeach',
+ 'alt' => 'Altais Dheasach',
'am' => 'Amtharais',
'an' => 'Aragonais',
'ang' => 'Seann-Bheurla',
+ 'anp' => 'Angika',
'ar' => 'Arabais',
'ar-001' => 'Nuadh-Arabais Stannardach',
'arc' => 'Aramais',
- 'arn' => 'Mapuche',
+ 'arn' => 'Mapudungun',
+ 'aro' => 'Araona',
+ 'arp' => 'Arapaho',
'arq' => 'Arabais Aildireach',
+ 'arw' => 'Arawak',
'ary' => 'Arabais Mhorocach',
'arz' => 'Arabais Èipheiteach',
'as' => 'Asamais',
@@ -24,49 +38,106 @@ $languageNames = array(
'ase' => 'Cainnt-shanais na h-Aimeireaga',
'ast' => 'Astùrais',
'av' => 'Avarais',
+ 'avk' => 'Kotava',
+ 'awa' => 'Awadhi',
+ 'ay' => 'Aymara',
'az' => 'Asarbaideànais',
- 'azb' => 'Asarbaideànais Dheasach',
'ba' => 'Bashkir',
'bal' => 'Baluchì',
+ 'ban' => 'Cànan Bali',
+ 'bas' => 'Basaa',
+ 'bax' => 'Bamun',
+ 'bbc' => 'Batak Toba',
+ 'bbj' => 'Ghomala',
'be' => 'Bealaruisis',
+ 'bej' => 'Beja',
'bem' => 'Bemba',
+ 'bew' => 'Betawi',
'bez' => 'Bena',
+ 'bfd' => 'Bafut',
+ 'bfq' => 'Badaga',
'bg' => 'Bulgarais',
+ 'bgn' => 'Balochi Shiarach',
+ 'bho' => 'Bhojpuri',
'bi' => 'Bislama',
+ 'bik' => 'Bikol',
+ 'bin' => 'Bini',
+ 'bjn' => 'Banjar',
+ 'bkm' => 'Kom',
+ 'bla' => 'Siksika',
'bm' => 'Bambara',
- 'bn' => 'Beangailis',
+ 'bn' => 'Bangla',
'bo' => 'Tibeitis',
+ 'bpy' => 'Bishnupriya',
+ 'bqi' => 'Bakhtiari',
'br' => 'Breatnais',
+ 'bra' => 'Braj',
+ 'brh' => 'Brahui',
'brx' => 'Bodo',
'bs' => 'Bosnais',
+ 'bss' => 'Akoose',
+ 'bua' => 'Buriat',
+ 'bug' => 'Cànan nam Bugis',
+ 'bum' => 'Bulu',
+ 'byn' => 'Blin',
+ 'byv' => 'Medumba',
'ca' => 'Catalanais',
+ 'cad' => 'Caddo',
+ 'car' => 'Carib',
+ 'cay' => 'Cayuga',
+ 'cch' => 'Atsam',
'ce' => 'Deideanais',
+ 'ceb' => 'Cebuano',
'cgg' => 'Chiga',
'ch' => 'Chamorro',
+ 'chb' => 'Chibcha',
+ 'chg' => 'Chagatai',
+ 'chk' => 'Cànan Chuuk',
+ 'chm' => 'Mari',
+ 'chn' => 'Chinuk Wawa',
+ 'cho' => 'Choctaw',
+ 'chp' => 'Chipewyan',
'chr' => 'Cherokee',
- 'ckb' => 'Cùrdais Soranî',
+ 'chy' => 'Cheyenne',
+ 'ckb' => 'Cùrdais Mheadhanach',
'co' => 'Corsais',
'cop' => 'Coptais',
+ 'cps' => 'Capiznon',
+ 'cr' => 'Cree',
'crh' => 'Turcais Chriomach',
- 'cs' => 'Seacais',
+ 'crs' => 'Seiseallais',
+ 'cs' => 'Seicis',
'csb' => 'Caisiubais',
'cu' => 'Slàbhais na h-Eaglaise',
+ 'cv' => 'Chuvash',
'cy' => 'Cuimris',
'da' => 'Danmhairgis',
+ 'dak' => 'Dakota',
+ 'dar' => 'Dargwa',
'dav' => 'Taita',
'de' => 'Gearmailtis',
'de-at' => 'Gearmailtis na h-Ostaire',
'de-ch' => 'Àrd-Ghearmailtis na h-Eilbheise',
+ 'del' => 'Delaware',
+ 'den' => 'Slavey',
+ 'dgr' => 'Dogrib',
+ 'din' => 'Dinka',
'dje' => 'Zarma',
+ 'doi' => 'Dogri',
'dsb' => 'Sòrbais Ìochdarach',
+ 'dtp' => 'Dusun Mheadhanach',
'dua' => 'Duala',
'dum' => 'Meadhan-Dhuitsis',
'dv' => 'Divehi',
'dyo' => 'Jola-Fonyi',
+ 'dyu' => 'Dyula',
'dz' => 'Dzongkha',
+ 'dzg' => 'Dazaga',
'ebu' => 'Embu',
'ee' => 'Ewe',
+ 'efi' => 'Efik',
'egy' => 'Èipheitis Àrsaidh',
+ 'eka' => 'Ekajuk',
'el' => 'Greugais',
'elx' => 'Elamais',
'en' => 'Beurla',
@@ -80,54 +151,89 @@ $languageNames = array(
'es-419' => 'Spàinntis na h-Aimeireaga Laidinneach',
'es-es' => 'Spàinntis Eòrpach',
'es-mx' => 'Spàinntis Mheagsagach',
+ 'esu' => 'Yupik Mheadhanach',
'et' => 'Eastoinis',
'eu' => 'Basgais',
- 'fa' => 'Farsaidh',
+ 'ewo' => 'Ewondo',
+ 'ext' => 'Cànan na h-Extremadura',
+ 'fa' => 'Peirsis',
+ 'fan' => 'Fang',
+ 'fat' => 'Fanti',
+ 'ff' => 'Fulah',
'fi' => 'Fionnlannais',
'fil' => 'Filipinis',
+ 'fit' => 'Meänkieli',
'fj' => 'Fìdis',
'fo' => 'Fàrothais',
+ 'fon' => 'Fon',
'fr' => 'Fraingis',
'fr-ca' => 'Fraingis Chanada',
'fr-ch' => 'Fraingis Eilbheiseach',
+ 'frc' => 'Fraingis nan Cajun',
'frm' => 'Meadhan-Fhraingis',
'fro' => 'Seann-Fhraingis',
+ 'frp' => 'Arpitan',
'frr' => 'Frìoslannais Thuathach',
'frs' => 'Frìoslannais Earach',
'fur' => 'Friùilis',
- 'fy' => 'Frìoslannais Siarach',
+ 'fy' => 'Frìoslannais Shiarach',
'ga' => 'Gaeilge',
+ 'gaa' => 'Ga',
'gag' => 'Gagauz',
+ 'gan' => 'Gan',
+ 'gay' => 'Gayo',
+ 'gba' => 'Gbaya',
+ 'gbz' => 'Dari Zoroastrach',
'gd' => 'Gàidhlig',
'gez' => 'Ge’ez',
'gil' => 'Ciribeasais',
'gl' => 'Gailìsis',
+ 'glk' => 'Gilaki',
'gmh' => 'Meadhan-Àrd-Gearmailtis',
'gn' => 'Guaraní',
'goh' => 'Seann-Àrd-Gearmailtis',
+ 'gom' => 'Konkani Goa',
+ 'gon' => 'Gondi',
+ 'gor' => 'Gorontalo',
'got' => 'Gotais',
+ 'grb' => 'Grebo',
'grc' => 'Greugais Àrsaidh',
'gsw' => 'Gearmailtis Eilbheiseach',
'gu' => 'Gujarati',
+ 'guc' => 'Wayuu',
+ 'gur' => 'Frafra',
'guz' => 'Gusii',
'gv' => 'Gaelg',
+ 'gwi' => 'Gwichʼin',
'ha' => 'Hausa',
+ 'hai' => 'Haida',
+ 'hak' => 'Hakka',
'haw' => 'Cànan Hawai’i',
'he' => 'Eabhra',
'hi' => 'Hindis',
'hif' => 'Hindis Fhìditheach',
+ 'hil' => 'Hiligaynon',
+ 'hit' => 'Cànan Het',
+ 'hmn' => 'Hmong',
'ho' => 'Hiri Motu',
'hr' => 'Cròthaisis',
'hsb' => 'Sòrbais Uachdarach',
+ 'hsn' => 'Xiang',
'ht' => 'Crìtheol Haidhti',
'hu' => 'Ungairis',
+ 'hup' => 'Hupa',
'hy' => 'Airmeinis',
+ 'hz' => 'Herero',
'ia' => 'Interlingua',
+ 'iba' => 'Iban',
+ 'ibb' => 'Ibibio',
'id' => 'Innd-Innsis',
'ie' => 'Interlingue',
'ig' => 'Igbo',
'ii' => 'Yi Sichuan',
'ik' => 'Inupiaq',
+ 'ilo' => 'Iloko',
+ 'inh' => 'Ingush',
'io' => 'Ido',
'is' => 'Innis Tìlis',
'it' => 'Eadailtis',
@@ -141,43 +247,96 @@ $languageNames = array(
'jrb' => 'Arabais Iùdhach',
'jv' => 'Deàbhanais',
'ka' => 'Cairtbheilis',
+ 'kaa' => 'Kara-Kalpak',
'kab' => 'Kabyle',
+ 'kac' => 'Kachin',
+ 'kaj' => 'Jju',
'kam' => 'Kamba',
+ 'kaw' => 'Kawi',
+ 'kbd' => 'Cabardais',
+ 'kbl' => 'Kanembu',
+ 'kcg' => 'Tyap',
'kde' => 'Makonde',
'kea' => 'Kabuverdianu',
+ 'ken' => 'Kenyang',
+ 'kfo' => 'Koro',
+ 'kg' => 'Kongo',
+ 'kgp' => 'Kaingang',
+ 'kha' => 'Khasi',
+ 'kho' => 'Cànan Khotan',
'khq' => 'Koyra Chiini',
+ 'khw' => 'Khowar',
'ki' => 'Kikuyu',
+ 'kiu' => 'Kirmanjki',
+ 'kj' => 'Kuanyama',
'kk' => 'Casachais',
+ 'kkj' => 'Kako',
'kl' => 'Kalaallisut',
'kln' => 'Kalenjin',
'km' => 'Cmèar',
+ 'kmb' => 'Kimbundu',
'kn' => 'Kannada',
'ko' => 'Coirèanais',
'koi' => 'Komi-Permyak',
'kok' => 'Konkani',
+ 'kpe' => 'Kpelle',
+ 'kr' => 'Kanuri',
+ 'krc' => 'Karachay-Balkar',
+ 'kri' => 'Krio',
+ 'krj' => 'Kinaray-a',
+ 'krl' => 'Cairealais',
+ 'kru' => 'Kurukh',
'ks' => 'Caismiris',
'ksb' => 'Shambala',
'ksf' => 'Bafia',
+ 'ksh' => 'Gearmailtis Chologne',
'ku' => 'Cùrdais',
+ 'kum' => 'Kumyk',
+ 'kut' => 'Kutenai',
+ 'kv' => 'Komi',
'kw' => 'Còrnais',
'ky' => 'Cìorgasais',
'la' => 'Laideann',
'lad' => 'Ladino',
'lag' => 'Langi',
+ 'lah' => 'Lahnda',
+ 'lam' => 'Lamba',
'lb' => 'Lugsamburgais',
+ 'lez' => 'Leasgais',
+ 'lfn' => 'Lingua Franca Nova',
'lg' => 'Ganda',
+ 'li' => 'Cànan Limburg',
'lij' => 'Liogùrais',
'lkt' => 'Lakhóta',
'lmo' => 'Lombardais',
'ln' => 'Lingala',
'lo' => 'Làtho',
+ 'lol' => 'Mongo',
+ 'lou' => 'Crìtheol Louisiana',
+ 'loz' => 'Lozi',
+ 'lrc' => 'Luri Thuathach',
'lt' => 'Liotuainis',
'lu' => 'Luba-Katanga',
+ 'lua' => 'Luba-Lulua',
+ 'lui' => 'Luiseño',
+ 'lun' => 'Lunda',
'luo' => 'Luo',
+ 'lus' => 'Mizo',
'luy' => 'Luyia',
'lv' => 'Laitbheis',
'lzh' => 'Sìnis an Litreachais',
+ 'lzz' => 'Laz',
+ 'mad' => 'Cànan Madhura',
+ 'maf' => 'Mafa',
+ 'mag' => 'Magahi',
+ 'mai' => 'Maithili',
+ 'mak' => 'Makasar',
+ 'man' => 'Mandingo',
'mas' => 'Maasai',
+ 'mde' => 'Maba',
+ 'mdf' => 'Moksha',
+ 'mdr' => 'Mandar',
+ 'men' => 'Mende',
'mer' => 'Meru',
'mfe' => 'Morisyen',
'mg' => 'Malagasais',
@@ -186,53 +345,99 @@ $languageNames = array(
'mgo' => 'Meta’',
'mh' => 'Marshallais',
'mi' => 'Māori',
+ 'mic' => 'Mi’kmaq',
+ 'min' => 'Minangkabau',
'mk' => 'Masadonais',
'ml' => 'Malayalam',
'mn' => 'Mongolais',
+ 'mnc' => 'Manchu',
+ 'mni' => 'Manipuri',
'moh' => 'Mohawk',
+ 'mos' => 'Mossi',
'mr' => 'Marathi',
+ 'mrj' => 'Mari Shiarach',
'ms' => 'Malaidhis',
'mt' => 'Maltais',
'mua' => 'Mundang',
'mul' => 'Iomadh cànan',
+ 'mus' => 'Creek',
+ 'mwl' => 'Miorandais',
+ 'mwr' => 'Marwari',
+ 'mwv' => 'Mentawai',
'my' => 'Burmais',
+ 'mye' => 'Myene',
+ 'myv' => 'Erzya',
+ 'mzn' => 'Mazanderani',
'na' => 'Nabhru',
+ 'nan' => 'Min Nan',
+ 'nap' => 'Eadailtis Napoli',
'naq' => 'Nama',
'nb' => 'Bokmål na Nirribhidh',
'nd' => 'Ndebele Thuathach',
- 'ne' => 'Neapàilis',
+ 'nds' => 'Gearmailtis Ìochdarach',
+ 'nds-nl' => 'Sagsannais Ìochdarach',
+ 'ne' => 'Neapàlais',
+ 'new' => 'Newari',
+ 'ng' => 'Ndonga',
+ 'nia' => 'Nias',
'niu' => 'Cànan Niue',
+ 'njo' => 'Ao Naga',
'nl' => 'Duitsis',
'nl-be' => 'Flannrais',
'nmg' => 'Kwasio',
'nn' => 'Nynorsk na Nirribhidh',
+ 'nnh' => 'Ngiemboon',
'no' => 'Nirribhis',
+ 'nog' => 'Nogai',
'non' => 'Seann-Lochlannais',
+ 'nov' => 'Novial',
'nqo' => 'N’Ko',
'nr' => 'Ndebele Dheasach',
- 'nso' => 'Leasotais Thuathach',
+ 'nso' => 'Sesotho sa Leboa',
'nus' => 'Nuer',
- 'ny' => 'Chichewa',
+ 'nv' => 'Navajo',
+ 'nwc' => 'Newari Chlasaigeach',
+ 'ny' => 'Nyanja',
+ 'nym' => 'Nyamwezi',
'nyn' => 'Nyankole',
+ 'nyo' => 'Nyoro',
+ 'nzi' => 'Nzima',
'oc' => 'Ogsatanais',
+ 'oj' => 'Ojibwa',
'om' => 'Oromo',
- 'or' => 'Oriya',
+ 'or' => 'Odia',
'os' => 'Ossetic',
+ 'osa' => 'Osage',
'ota' => 'Turcais Otomanach',
'pa' => 'Panjabi',
+ 'pag' => 'Pangasinan',
+ 'pal' => 'Pahlavi',
+ 'pam' => 'Pampanga',
+ 'pap' => 'Papiamentu',
'pau' => 'Palabhais',
+ 'pcd' => 'Picard',
+ 'pcm' => 'Beurla Nigèiriach',
'pdc' => 'Gearmailtis Phennsylvania',
+ 'pdt' => 'Plautdietsch',
'peo' => 'Seann-Pheirsis',
+ 'phn' => 'Phenicis',
'pi' => 'Pali',
'pl' => 'Pòlainnis',
+ 'pms' => 'Piedmontese',
+ 'pon' => 'Cànan Pohnpei',
'prg' => 'Pruisis',
- 'ps' => 'Pachtu',
+ 'pro' => 'Seann-Phrovençal',
+ 'ps' => 'Pashto',
'pt' => 'Portagailis',
'pt-br' => 'Portagailis Bhraisileach',
'pt-pt' => 'Portagailis Eòrpach',
- 'qu' => 'Ceatsua',
+ 'qu' => 'Quechua',
'quc' => 'K’iche’',
+ 'qug' => 'Quichua Àrd-tìr Chimborazo',
+ 'raj' => 'Rajasthani',
'rap' => 'Rapa Nui',
+ 'rar' => 'Cànan Rarotonga',
+ 'rgn' => 'Romagnol',
'rm' => 'Rumains',
'rn' => 'Kirundi',
'ro' => 'Romàinis',
@@ -240,28 +445,44 @@ $languageNames = array(
'rof' => 'Rombo',
'rom' => 'Romanais',
'ru' => 'Ruisis',
+ 'rue' => 'Rusyn',
+ 'rug' => 'Roviana',
+ 'rup' => 'Aromanais',
'rw' => 'Kinyarwanda',
'rwk' => 'Rwa',
'sa' => 'Sanskrit',
- 'sah' => 'Sachais',
+ 'sad' => 'Sandawe',
+ 'sah' => 'Sakha',
'sam' => 'Aramais Shamaritanach',
'saq' => 'Samburu',
+ 'sas' => 'Sasak',
+ 'sat' => 'Santali',
+ 'saz' => 'Saurashtra',
+ 'sba' => 'Ngambay',
'sbp' => 'Sangu',
'sc' => 'Sàrdais',
'scn' => 'Sisilis',
'sco' => 'Albais',
'sd' => 'Sindhi',
+ 'sdc' => 'Sassarese',
+ 'sdh' => 'Cùrdais Dheasach',
'se' => 'Sàmais Thuathach',
+ 'see' => 'Seneca',
'seh' => 'Sena',
+ 'sei' => 'Seri',
+ 'sel' => 'Selkup',
'ses' => 'Koyraboro Senni',
'sg' => 'Sango',
'sga' => 'Seann-Ghaeilge',
'sh' => 'Sèirb-Chròthaisis',
'shi' => 'Tachelhit',
+ 'shn' => 'Shan',
'shu' => 'Arabais Seàdach',
'si' => 'Sinhala',
+ 'sid' => 'Sidamo',
'sk' => 'Slòbhacais',
'sl' => 'Slòbhainis',
+ 'sly' => 'Selayar',
'sm' => 'Samothais',
'sma' => 'Sàmais Dheasach',
'smj' => 'Sàmais Lule',
@@ -272,58 +493,109 @@ $languageNames = array(
'so' => 'Somàilis',
'sq' => 'Albàinis',
'sr' => 'Sèirbis',
- 'st' => 'Leasotach Dheasach',
+ 'srn' => 'Sranan Tongo',
+ 'srr' => 'Serer',
+ 'ss' => 'Swati',
+ 'ssy' => 'Saho',
+ 'st' => 'Sesotho',
'su' => 'Cànan Sunda',
+ 'suk' => 'Sukuma',
+ 'sus' => 'Susu',
+ 'sux' => 'Cànan Sumer',
'sv' => 'Suainis',
'sw' => 'Kiswahili',
+ 'sw-cd' => 'Kiswahili na Congo',
'swb' => 'Comorais',
- 'swc' => 'Kiswahili na Congo',
'syc' => 'Suraidheac Chlasaigeach',
'syr' => 'Suraidheac',
'ta' => 'Taimilis',
+ 'tcy' => 'Tulu',
'te' => 'Telugu',
+ 'tem' => 'Timne',
'teo' => 'Teso',
+ 'ter' => 'Terêna',
'tet' => 'Tetum',
'tg' => 'Taidigis',
- 'th' => 'Tàidh',
+ 'th' => 'Cànan nan Tàidh',
'ti' => 'Tigrinya',
+ 'tig' => 'Tigre',
+ 'tiv' => 'Tiv',
'tk' => 'Turcmanais',
'tkl' => 'Tokelau',
+ 'tkr' => 'Tsakhur',
'tl' => 'Tagalog',
- 'to' => 'Tongais',
+ 'tlh' => 'Klingon',
+ 'tli' => 'Tlingit',
+ 'tly' => 'Talysh',
+ 'tmh' => 'Tamashek',
+ 'tn' => 'Tswana',
+ 'to' => 'Tonga',
'tog' => 'Nyasa Tonga',
'tpi' => 'Tok Pisin',
'tr' => 'Turcais',
+ 'tru' => 'Turoyo',
+ 'trv' => 'Taroko',
'ts' => 'Tsonga',
+ 'tsi' => 'Tsimshian',
'tt' => 'Tatarais',
+ 'ttt' => 'Tati',
+ 'tum' => 'Tumbuka',
+ 'tvl' => 'Tubhalu',
+ 'tw' => 'Twi',
'twq' => 'Tasawaq',
- 'tzm' => 'Tamazight Meadhan na h-Atlas',
+ 'ty' => 'Cànan Tahiti',
+ 'tyv' => 'Cànan Tuva',
+ 'tzm' => 'Tamazight an Atlais Mheadhanaich',
+ 'udm' => 'Udmurt',
'ug' => 'Ùigiurais',
'uk' => 'Ucràinis',
+ 'umb' => 'Umbundu',
'und' => 'Cànan neo-aithnichte',
'ur' => 'Ùrdu',
'uz' => 'Usbagais',
'vai' => 'Vai',
've' => 'Venda',
+ 'vep' => 'Veps',
'vi' => 'Bhiet-Namais',
'vls' => 'Flannrais Siarach',
'vo' => 'Volapük',
+ 'vro' => 'Võro',
'vun' => 'Vunjo',
+ 'wa' => 'Walloon',
+ 'wae' => 'Gearmailtis Wallis',
+ 'wal' => 'Wolaytta',
+ 'war' => 'Waray',
+ 'was' => 'Washo',
+ 'wbp' => 'Warlpiri',
'wo' => 'Wolof',
+ 'wuu' => 'Wu',
+ 'xal' => 'Kalmyk',
'xh' => 'Xhosa',
'xog' => 'Soga',
+ 'yao' => 'Yao',
+ 'yap' => 'Cànan Yap',
+ 'yav' => 'Yangben',
+ 'ybb' => 'Yemba',
'yi' => 'Iùdhais',
- 'yo' => 'Ioruba',
+ 'yo' => 'Yoruba',
+ 'yrl' => 'Nheengatu',
'yue' => 'Cantonais',
+ 'za' => 'Zhuang',
+ 'zap' => 'Zapotec',
+ 'zbl' => 'Comharran Bliss',
+ 'zea' => 'Cànan Zeeland',
+ 'zen' => 'Zenaga',
'zgh' => 'Tamazight Stannardach Moroco',
'zh' => 'Sìnis',
'zh-hans' => 'Sìnis Shimplichte',
'zh-hant' => 'Sìnis Thradaiseanta',
'zu' => 'Zulu',
- 'zxx' => 'Susbaint nach eil ‘na chànan',
-);
+ 'zun' => 'Zuñi',
+ 'zxx' => 'Susbaint nach eil ’na chànan',
+ 'zza' => 'Zazaki',
+];
-$currencyNames = array(
+$currencyNames = [
'ADP' => 'Peseta Andorrach',
'AED' => 'Dirham nan Iomaratan Arabach Aonaichte',
'AFA' => 'Afghani Afghanach (1927–2002)',
@@ -378,7 +650,8 @@ $currencyNames = array(
'BUK' => 'Kyat Burmach',
'BWP' => 'Pula Botsuanach',
'BYB' => 'Rùbal ùr Bealaruiseach (1994–1999)',
- 'BYR' => 'Rùbal Bealaruiseach',
+ 'BYN' => 'Rùbal Bealaruiseach',
+ 'BYR' => 'Rùbal Bealaruiseach (2000–2016)',
'BZD' => 'Dolar Beilìseach',
'CAD' => 'Dolar Canadach',
'CDF' => 'Franc Congothach',
@@ -388,6 +661,7 @@ $currencyNames = array(
'CLE' => 'Escudo Sileach',
'CLF' => 'Aonad cunntasachd Sileach (UF)',
'CLP' => 'Peso Sileach',
+ 'CNH' => 'Yuan Sìneach (far-thìreach)',
'CNX' => 'Dolar an t-sluagh-bhanca Shìnich',
'CNY' => 'Yuan Sìneach',
'COP' => 'Peso Coloimbeach',
@@ -492,7 +766,8 @@ $currencyNames = array(
'MMK' => 'Kyat Miànmarach',
'MNT' => 'Tugrik Mongolach',
'MOP' => 'Pataca Macàthuach',
- 'MRO' => 'Ouguiya Moratàineach',
+ 'MRO' => 'Ouguiya Moratàineach (1973–2017)',
+ 'MRU' => 'Ouguiya Moratàineach',
'MTL' => 'Lira Maltach',
'MTP' => 'Punnd Maltach',
'MUR' => 'Rupee Moiriseasach',
@@ -517,7 +792,7 @@ $currencyNames = array(
'OMR' => 'Rial Omànach',
'PAB' => 'Balboa Panamach',
'PEI' => 'Inti Pearùthach',
- 'PEN' => 'Sol ùr Pearùthach',
+ 'PEN' => 'Sol Pearùthach',
'PES' => 'Sol Pearùthach (1863–1965)',
'PGK' => 'Kina Ghini Nuaidh Paputhaiche',
'PHP' => 'Peso Filipineach',
@@ -550,7 +825,8 @@ $currencyNames = array(
'SRD' => 'Dolar Suranamach',
'SRG' => 'Gulden Suranamach',
'SSP' => 'Punnd Sudàin a Deas',
- 'STD' => 'Dobra São Tomé agus Príncipe',
+ 'STD' => 'Dobra São Tomé agus Príncipe (1977–2017)',
+ 'STN' => 'Dobra São Tomé agus Príncipe',
'SUR' => 'Rùbal Sovietach',
'SVC' => 'Colón Salbhadorach',
'SYP' => 'Punnd Siridheach',
@@ -580,7 +856,8 @@ $currencyNames = array(
'UYU' => 'Peso Uruguaidheach',
'UZS' => 'Som Usbagach',
'VEB' => 'Bolívar Bheinisealach (1871–2008)',
- 'VEF' => 'Bolívar Bheinisealach',
+ 'VEF' => 'Bolívar Bheinisealach (2008–2018)',
+ 'VES' => 'Bolívar Bheinisealach',
'VND' => 'Dong Bhiet-Namach',
'VNN' => 'Dong Bhiet-Namach (1978–1985)',
'VUV' => 'Vatu Vanuatuthach',
@@ -621,9 +898,9 @@ $currencyNames = array(
'ZWD' => 'Dolar Sìombabuthach (1980–2008)',
'ZWL' => 'Dolar Sìombabuthach (2009)',
'ZWR' => 'Dolar Sìombabuthach (2008)',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'ADP' => 'ADP',
'AED' => 'AED',
'AFA' => 'AFA',
@@ -678,6 +955,7 @@ $currencySymbols = array(
'BUK' => 'BUK',
'BWP' => 'BWP',
'BYB' => 'BYB',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CA$',
@@ -688,6 +966,7 @@ $currencySymbols = array(
'CLE' => 'CLE',
'CLF' => 'CLF',
'CLP' => 'CLP',
+ 'CNH' => 'CNH',
'CNX' => 'CNX',
'CNY' => 'CN¥',
'COP' => 'COP',
@@ -793,6 +1072,7 @@ $currencySymbols = array(
'MNT' => 'MNT',
'MOP' => 'MOP',
'MRO' => 'MRO',
+ 'MRU' => 'MRU',
'MTL' => 'MTL',
'MTP' => 'MTP',
'MUR' => 'MUR',
@@ -851,6 +1131,7 @@ $currencySymbols = array(
'SRG' => 'SRG',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'STN',
'SUR' => 'SUR',
'SVC' => 'SVC',
'SYP' => 'SYP',
@@ -881,6 +1162,7 @@ $currencySymbols = array(
'UZS' => 'UZS',
'VEB' => 'VEB',
'VEF' => 'VEF',
+ 'VES' => 'VES',
'VND' => '₫',
'VNN' => 'VNN',
'VUV' => 'VUV',
@@ -921,18 +1203,17 @@ $currencySymbols = array(
'ZWD' => 'ZWD',
'ZWL' => 'ZWL',
'ZWR' => 'ZWR',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'Eilean na Deasgabhalach',
'AD' => 'Andorra',
'AE' => 'Na h-Iomaratan Arabach Aonaichte',
'AF' => 'Afghanastàn',
'AG' => 'Aintìoga is Barbuda',
- 'AI' => 'Anguilla',
+ 'AI' => 'Anguillia',
'AL' => 'Albàinia',
- 'AM' => 'Airmeinia',
- 'AN' => 'Eileanan Aintilia nan Tìrean Ìsle',
+ 'AM' => 'Airmeinea',
'AO' => 'Angòla',
'AQ' => 'An Antartaig',
'AR' => 'An Argantain',
@@ -942,7 +1223,7 @@ $countryNames = array(
'AW' => 'Arùba',
'AX' => 'Na h-Eileanan Åland',
'AZ' => 'Asarbaideàn',
- 'BA' => 'Bosna agus Hearsagobhana',
+ 'BA' => 'Bosna is Hearsagobhana',
'BB' => 'Barbados',
'BD' => 'Bangladais',
'BE' => 'A’ Bheilg',
@@ -964,7 +1245,7 @@ $countryNames = array(
'BY' => 'A’ Bhealaruis',
'BZ' => 'A’ Bheilìs',
'CA' => 'Canada',
- 'CC' => 'Na h-Eileanan Cocos (Keeling)',
+ 'CC' => 'Na h-Eileanan Chocos (Keeling)',
'CD' => 'Congo - Kinshasa',
'CF' => 'Poblachd Meadhan Afraga',
'CG' => 'A’ Chongo - Brazzaville',
@@ -982,7 +1263,7 @@ $countryNames = array(
'CW' => 'Curaçao',
'CX' => 'Eilean na Nollaig',
'CY' => 'Cìopras',
- 'CZ' => 'Poblachd na Seice',
+ 'CZ' => 'An t-Seic',
'DE' => 'A’ Ghearmailt',
'DG' => 'Diego Garcia',
'DJ' => 'Diobùtaidh',
@@ -996,13 +1277,14 @@ $countryNames = array(
'EG' => 'An Èiphit',
'EH' => 'Sathara an Iar',
'ER' => 'Eartra',
- 'ES' => 'An Spàinn',
+ 'ES' => 'An Spàinnt',
'ET' => 'An Itiop',
'EU' => 'An t-Aonadh Eòrpach',
+ 'EZ' => 'Raon an Eòro',
'FI' => 'An Fhionnlann',
'FJ' => 'Fìdi',
'FK' => 'Na h-Eileanan Fàclannach',
- 'FM' => 'Na Meanbh-Eileanan',
+ 'FM' => 'Na Meanbh-eileanan',
'FO' => 'Na h-Eileanan Fàro',
'FR' => 'An Fhraing',
'GA' => 'Gabon',
@@ -1019,7 +1301,7 @@ $countryNames = array(
'GP' => 'Guadalup',
'GQ' => 'Gini Mheadhan-Chriosach',
'GR' => 'A’ Ghreug',
- 'GS' => 'Seòrsea a Deas is na h-Eileanan Sandwich a Deas',
+ 'GS' => 'Seòirsea a Deas is na h-Eileanan Sandwich a Deas',
'GT' => 'Guatamala',
'GU' => 'Guam',
'GW' => 'Gini-Bioso',
@@ -1031,7 +1313,7 @@ $countryNames = array(
'HT' => 'Haidhti',
'HU' => 'An Ungair',
'IC' => 'Na h-Eileanan Canàrach',
- 'ID' => 'Na h-Innd Innse',
+ 'ID' => 'Na h-Innd-innse',
'IE' => 'Èirinn',
'IL' => 'Iosrael',
'IM' => 'Eilean Mhanainn',
@@ -1052,7 +1334,7 @@ $countryNames = array(
'KM' => 'Comoros',
'KN' => 'Naomh Crìstean is Nibheis',
'KP' => 'Coirèa a Tuath',
- 'KR' => 'Coirèa a Deas',
+ 'KR' => 'Coirèa',
'KW' => 'Cuibhèit',
'KY' => 'Na h-Eileanan Caimean',
'KZ' => 'Casachstàn',
@@ -1076,7 +1358,7 @@ $countryNames = array(
'MH' => 'Eileanan Mharshall',
'MK' => 'A’ Mhasadon',
'ML' => 'Màili',
- 'MM' => 'Miànmar (Burma)',
+ 'MM' => 'Miànmar',
'MN' => 'Dùthaich nam Mongol',
'MO' => 'Macàthu',
'MP' => 'Na h-Eileanan Mairianach a Tuath',
@@ -1097,7 +1379,7 @@ $countryNames = array(
'NG' => 'Nigèiria',
'NI' => 'Niocaragua',
'NL' => 'Na Tìrean Ìsle',
- 'NO' => 'An Nirribhidh',
+ 'NO' => 'Nirribhidh',
'NP' => 'Neapàl',
'NR' => 'Nabhru',
'NU' => 'Niue',
@@ -1111,7 +1393,7 @@ $countryNames = array(
'PK' => 'Pagastàn',
'PL' => 'A’ Phòlainn',
'PM' => 'Saint Pierre agus Miquelon',
- 'PN' => 'Eilean Peit a’ Chàirn',
+ 'PN' => 'Eileanan Pheit a’ Chàirn',
'PR' => 'Porto Rìceo',
'PS' => 'Palastain',
'PT' => 'A’ Phortagail',
@@ -1164,7 +1446,8 @@ $countryNames = array(
'TZ' => 'An Tansan',
'UA' => 'An Ucràin',
'UG' => 'Uganda',
- 'UM' => 'Meanbh-Eileanan Iomallach nan Stàitean Aonaichte',
+ 'UM' => 'Meanbh-Eileanan Iomallach nan SA',
+ 'UN' => 'Na Dùthchannan Aonaichte',
'US' => 'SA',
'UY' => 'Uruguaidh',
'UZ' => 'Usbagastàn',
@@ -1172,7 +1455,7 @@ $countryNames = array(
'VC' => 'Naomh Bhionsant agus Eileanan Greanadach',
'VE' => 'A’ Bheiniseala',
'VG' => 'Eileanan Breatannach na Maighdinn',
- 'VI' => 'Eileanan Aimeireagach na Maighdinn',
+ 'VI' => 'Eileanan na Maighdinn aig na SA',
'VN' => 'Bhiet-Nam',
'VU' => 'Vanuatu',
'WF' => 'Uallas agus Futuna',
@@ -1183,9 +1466,13 @@ $countryNames = array(
'ZA' => 'Afraga a Deas',
'ZM' => 'Sàimbia',
'ZW' => 'An t-Sìombab',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-few' => '{0} linntean',
+ 'century-one' => '{0} linn',
+ 'century-other' => '{0} linn',
+ 'century-two' => '{0} linn',
'day-few' => '{0} làithean',
'day-future-few' => 'an ceann {0} làithean',
'day-future-one' => 'an ceann {0} latha',
@@ -1201,10 +1488,10 @@ $timeUnits = array(
'day-narrow-past-two' => '-{0} là',
'day-one' => '{0} latha',
'day-other' => '{0} latha',
- 'day-past-few' => 'o chionn {0} làithean',
- 'day-past-one' => 'o chionn {0} latha',
- 'day-past-other' => 'o chionn {0} latha',
- 'day-past-two' => 'o chionn {0} latha',
+ 'day-past-few' => '{0} làithean air ais',
+ 'day-past-one' => '{0} latha air ais',
+ 'day-past-other' => '{0} latha air ais',
+ 'day-past-two' => '{0} latha air ais',
'day-short-future-few' => 'an {0} là.',
'day-short-future-one' => 'an {0} là',
'day-short-future-other' => 'an {0} là',
@@ -1214,6 +1501,30 @@ $timeUnits = array(
'day-short-past-other' => 'o {0} là',
'day-short-past-two' => 'o {0} là',
'day-two' => '{0} latha',
+ 'fri-future-few' => 'an ceann {0} DihAoine',
+ 'fri-future-one' => 'an ceann {0} DihAoine',
+ 'fri-future-other' => 'an ceann {0} DihAoine',
+ 'fri-future-two' => 'an ceann {0} DhihAoine',
+ 'fri-narrow-future-few' => 'an {0} Dih.',
+ 'fri-narrow-future-one' => 'an {0} Dih.',
+ 'fri-narrow-future-other' => 'an {0} Dih.',
+ 'fri-narrow-future-two' => 'an {0} Dhih.',
+ 'fri-narrow-past-few' => 'o {0} Dih.',
+ 'fri-narrow-past-one' => 'o {0} Dih.',
+ 'fri-narrow-past-other' => 'o {0} Dih.',
+ 'fri-narrow-past-two' => 'o {0} Dhih.',
+ 'fri-past-few' => 'o chionn {0} DihAoine',
+ 'fri-past-one' => 'o chionn {0} DihAoine',
+ 'fri-past-other' => 'o chionn {0} DihAoine',
+ 'fri-past-two' => 'o chionn {0} DhihAoine',
+ 'fri-short-future-few' => 'an ceann {0} Dih.',
+ 'fri-short-future-one' => 'an ceann {0} Dih.',
+ 'fri-short-future-other' => 'an ceann {0} Dih.',
+ 'fri-short-future-two' => 'an ceann {0} Dhih.',
+ 'fri-short-past-few' => 'o chionn {0} Dih.',
+ 'fri-short-past-one' => 'o chionn {0} Dih.',
+ 'fri-short-past-other' => 'o chionn {0} Dih.',
+ 'fri-short-past-two' => 'o chionn {0} Dhih.',
'hour-few' => '{0} uairean a thìde',
'hour-future-few' => 'an ceann {0} uairean a thìde',
'hour-future-one' => 'an ceann {0} uair a thìde',
@@ -1229,10 +1540,10 @@ $timeUnits = array(
'hour-narrow-past-two' => '-{0} u.',
'hour-one' => '{0} uair a thìde',
'hour-other' => '{0} uair a thìde',
- 'hour-past-few' => 'o chionn {0} uairean a thìde',
- 'hour-past-one' => 'o chionn {0} uair a thìde',
- 'hour-past-other' => 'o chionn {0} uair a thìde',
- 'hour-past-two' => 'o chionn {0} uair a thìde',
+ 'hour-past-few' => '{0} uairean a thìde air ais',
+ 'hour-past-one' => '{0} uair a thìde air ais',
+ 'hour-past-other' => '{0} uair a thìde air ais',
+ 'hour-past-two' => '{0} uair a thìde air ais',
'hour-short-future-few' => 'an {0} uair.',
'hour-short-future-one' => 'an {0} uair',
'hour-short-future-other' => 'an {0} uair',
@@ -1265,10 +1576,10 @@ $timeUnits = array(
'minute-narrow-past-two' => '-{0} m',
'minute-one' => '{0} mhionaid',
'minute-other' => '{0} mionaid',
- 'minute-past-few' => 'o chionn {0} mionaidean',
- 'minute-past-one' => 'o chionn {0} mhionaid',
- 'minute-past-other' => 'o chionn {0} mionaid',
- 'minute-past-two' => 'o chionn {0} mhionaid',
+ 'minute-past-few' => '{0} mionaidean air ais',
+ 'minute-past-one' => '{0} mhionaid air ais',
+ 'minute-past-other' => '{0} mionaid air ais',
+ 'minute-past-two' => '{0} mhionaid air ais',
'minute-short-future-few' => 'an {0} mion.',
'minute-short-future-one' => 'an {0} mhion.',
'minute-short-future-other' => 'an {0} mion.',
@@ -1278,33 +1589,57 @@ $timeUnits = array(
'minute-short-past-other' => 'o {0} mion.',
'minute-short-past-two' => 'o {0} mhion.',
'minute-two' => '{0} mhionaid',
+ 'mon-future-few' => 'an ceann {0} DiLuain',
+ 'mon-future-one' => 'an ceann {0} DiLuain',
+ 'mon-future-other' => 'an ceann {0} DiLuain',
+ 'mon-future-two' => 'an ceann {0} DhiLuain',
+ 'mon-narrow-future-few' => 'an {0} DiL.',
+ 'mon-narrow-future-one' => 'an {0} DiL.',
+ 'mon-narrow-future-other' => 'an {0} DiL.',
+ 'mon-narrow-future-two' => 'an {0} DhiL.',
+ 'mon-narrow-past-few' => 'o {0} DiL.',
+ 'mon-narrow-past-one' => 'o {0} DiL.',
+ 'mon-narrow-past-other' => 'o {0} DiL.',
+ 'mon-narrow-past-two' => 'o {0} DhiL.',
+ 'mon-past-few' => 'o chionn {0} DiLuain',
+ 'mon-past-one' => 'o chionn {0} DiLuain',
+ 'mon-past-other' => 'o chionn {0} DiLuain',
+ 'mon-past-two' => 'o chionn {0} DhiLuain',
+ 'mon-short-future-few' => 'an ceann {0} DiL.',
+ 'mon-short-future-one' => 'an ceann {0} DiL.',
+ 'mon-short-future-other' => 'an ceann {0} DiL.',
+ 'mon-short-future-two' => 'an ceann {0} DhiL.',
+ 'mon-short-past-few' => 'o chionn {0} DiL.',
+ 'mon-short-past-one' => 'o chionn {0} DiL.',
+ 'mon-short-past-other' => 'o chionn {0} DiL.',
+ 'mon-short-past-two' => 'o chionn {0} DhiL.',
'month-few' => '{0} mìosan',
'month-future-few' => 'an ceann {0} mìosan',
'month-future-one' => 'an ceann {0} mhìosa',
'month-future-other' => 'an ceann {0} mìosa',
'month-future-two' => 'an ceann {0} mhìosa',
'month-narrow-future-few' => '+{0} mì.',
- 'month-narrow-future-one' => '+{0} mì.',
+ 'month-narrow-future-one' => '+{0} mhì.',
'month-narrow-future-other' => '+{0} mì.',
- 'month-narrow-future-two' => '+{0} mì.',
+ 'month-narrow-future-two' => '+{0} mhì.',
'month-narrow-past-few' => '-{0} mì.',
- 'month-narrow-past-one' => '-{0} mì.',
+ 'month-narrow-past-one' => '-{0} mhì.',
'month-narrow-past-other' => '-{0} mì.',
- 'month-narrow-past-two' => '-{0} mì.',
+ 'month-narrow-past-two' => '-{0} mhì.',
'month-one' => '{0} mhìos',
'month-other' => '{0} mìos',
- 'month-past-few' => 'o chionn {0} mìosan',
- 'month-past-one' => 'o chionn {0} mhìosa',
- 'month-past-other' => 'o chionn {0} mìosa',
- 'month-past-two' => 'o chionn {0} mhìosa',
+ 'month-past-few' => '{0} mìosan air ais',
+ 'month-past-one' => '{0} mhìos air ais',
+ 'month-past-other' => '{0} mìos air ais',
+ 'month-past-two' => '{0} mhìos air ais',
'month-short-future-few' => 'an {0} mìos.',
- 'month-short-future-one' => 'an {0} mìos.',
+ 'month-short-future-one' => 'an {0} mhìos.',
'month-short-future-other' => 'an {0} mìos.',
- 'month-short-future-two' => 'an {0} mìos.',
+ 'month-short-future-two' => 'an {0} mhìos.',
'month-short-past-few' => 'o {0} mìos.',
- 'month-short-past-one' => 'o {0} mìos.',
+ 'month-short-past-one' => 'o {0} mhìos.',
'month-short-past-other' => 'o {0} mìos.',
- 'month-short-past-two' => 'o {0} mìos.',
+ 'month-short-past-two' => 'o {0} mhìos.',
'month-two' => '{0} mhìos',
'nanosecond-few' => '{0} nano-dhiogan',
'nanosecond-one' => '{0} nano-dhiog',
@@ -1334,6 +1669,30 @@ $timeUnits = array(
'quarter-short-past-one' => 'o {0} chairt.',
'quarter-short-past-other' => 'o {0} cairt.',
'quarter-short-past-two' => 'o {0} chairt.',
+ 'sat-future-few' => 'an ceann {0} DiSathairne',
+ 'sat-future-one' => 'an ceann {0} DiSathairne',
+ 'sat-future-other' => 'an ceann {0} DiSathairne',
+ 'sat-future-two' => 'an ceann {0} DhiSathairne',
+ 'sat-narrow-future-few' => 'an {0} DiS.',
+ 'sat-narrow-future-one' => 'an {0} DiS.',
+ 'sat-narrow-future-other' => 'an {0} DiS.',
+ 'sat-narrow-future-two' => 'an {0} DhiS.',
+ 'sat-narrow-past-few' => 'o {0} DiS.',
+ 'sat-narrow-past-one' => 'o {0} DiS.',
+ 'sat-narrow-past-other' => 'o {0} DiS.',
+ 'sat-narrow-past-two' => 'o {0} DhiS.',
+ 'sat-past-few' => 'o chionn {0} DiSathairne',
+ 'sat-past-one' => 'o chionn {0} DiSathairne',
+ 'sat-past-other' => 'o chionn {0} DiSathairne',
+ 'sat-past-two' => 'o chionn {0} DhiSathairne',
+ 'sat-short-future-few' => 'an ceann {0} DiS.',
+ 'sat-short-future-one' => 'an ceann {0} DiS.',
+ 'sat-short-future-other' => 'an ceann {0} DiS.',
+ 'sat-short-future-two' => 'an ceann {0} DhiS.',
+ 'sat-short-past-few' => 'o chionn {0} DiS.',
+ 'sat-short-past-one' => 'o chionn {0} DiS.',
+ 'sat-short-past-other' => 'o chionn {0} DiS.',
+ 'sat-short-past-two' => 'o chionn {0} DhiS.',
'second-few' => '{0} diogan',
'second-future-few' => 'an ceann {0} diogan',
'second-future-one' => 'an ceann {0} diog',
@@ -1349,10 +1708,10 @@ $timeUnits = array(
'second-narrow-past-two' => '-{0} d',
'second-one' => '{0} diog',
'second-other' => '{0} diog',
- 'second-past-few' => 'o chionn {0} diogan',
- 'second-past-one' => 'o chionn {0} diog',
- 'second-past-other' => 'o chionn {0} diog',
- 'second-past-two' => 'o chionn {0} dhiog',
+ 'second-past-few' => '{0} diogan air ais',
+ 'second-past-one' => '{0} diog air ais',
+ 'second-past-other' => '{0} diog air ais',
+ 'second-past-two' => '{0} dhiog air ais',
'second-short-future-few' => 'an {0} diog.',
'second-short-future-one' => 'an {0} diog',
'second-short-future-other' => 'an {0} diog',
@@ -1362,6 +1721,102 @@ $timeUnits = array(
'second-short-past-other' => 'o {0} diog',
'second-short-past-two' => 'o {0} dhiog',
'second-two' => '{0} dhiog',
+ 'sun-future-few' => 'an ceann {0} DiDòmhnaich',
+ 'sun-future-one' => 'an ceann {0} DiDòmhnaich',
+ 'sun-future-other' => 'an ceann {0} DiDòmhnaich',
+ 'sun-future-two' => 'an ceann {0} DhiDòmhnaich',
+ 'sun-narrow-future-few' => 'an {0} DiD.',
+ 'sun-narrow-future-one' => 'an {0} DiD.',
+ 'sun-narrow-future-other' => 'an {0} DiD.',
+ 'sun-narrow-future-two' => 'an {0} DhiD.',
+ 'sun-narrow-past-few' => 'o {0} DiD.',
+ 'sun-narrow-past-one' => 'o {0} DiD.',
+ 'sun-narrow-past-other' => 'o {0} DiD.',
+ 'sun-narrow-past-two' => 'o {0} DhiD.',
+ 'sun-past-few' => 'o chionn {0} DiDòmhnaich',
+ 'sun-past-one' => 'o chionn {0} DiDòmhnaich',
+ 'sun-past-other' => 'o chionn {0} DiDòmhnaich',
+ 'sun-past-two' => 'o chionn {0} DhiDòmhnaich',
+ 'sun-short-future-few' => 'an ceann {0} DiD.',
+ 'sun-short-future-one' => 'an ceann {0} DiD.',
+ 'sun-short-future-other' => 'an ceann {0} DiD.',
+ 'sun-short-future-two' => 'an ceann {0} DhiD.',
+ 'sun-short-past-few' => 'o chionn {0} DiDòmhnaich',
+ 'sun-short-past-one' => 'o chionn {0} DiD.',
+ 'sun-short-past-other' => 'o chionn {0} DiDòmhnaich',
+ 'sun-short-past-two' => 'o chionn {0} DhiD.',
+ 'thu-future-few' => 'an ceann {0} DiarDaoin',
+ 'thu-future-one' => 'an ceann {0} DiarDaoin',
+ 'thu-future-other' => 'an ceann {0} DiarDaoin',
+ 'thu-future-two' => 'an ceann {0} DhiarDaoin',
+ 'thu-narrow-future-few' => 'an {0} Dia.',
+ 'thu-narrow-future-one' => 'an {0} Dia.',
+ 'thu-narrow-future-other' => 'an {0} Dia.',
+ 'thu-narrow-future-two' => 'an {0} Dhia.',
+ 'thu-narrow-past-few' => 'o {0} Dia.',
+ 'thu-narrow-past-one' => 'o {0} Dia.',
+ 'thu-narrow-past-other' => 'o {0} Dia.',
+ 'thu-narrow-past-two' => 'o {0} Dhia.',
+ 'thu-past-few' => 'o chionn {0} DiarDaoin',
+ 'thu-past-one' => 'o chionn {0} DiarDaoin',
+ 'thu-past-other' => 'o chionn {0} DiarDaoin',
+ 'thu-past-two' => 'o chionn {0} DhiarDaoin',
+ 'thu-short-future-few' => 'an ceann {0} Dia.',
+ 'thu-short-future-one' => 'an ceann {0} Dia.',
+ 'thu-short-future-other' => 'an ceann {0} Dia.',
+ 'thu-short-future-two' => 'an ceann {0} Dhia.',
+ 'thu-short-past-few' => 'o chionn {0} Dia.',
+ 'thu-short-past-one' => 'o chionn {0} Dia.',
+ 'thu-short-past-other' => 'o chionn {0} Dia.',
+ 'thu-short-past-two' => 'o chionn {0} Dhia.',
+ 'tue-future-few' => 'an ceann {0} DiMàirt',
+ 'tue-future-one' => 'an ceann {0} DiMàirt',
+ 'tue-future-other' => 'an ceann {0} DiMàirt',
+ 'tue-future-two' => 'an ceann {0} DhiMàirt',
+ 'tue-narrow-future-few' => 'an {0} DiM.',
+ 'tue-narrow-future-one' => 'an {0} DiM.',
+ 'tue-narrow-future-other' => 'an {0} DiM.',
+ 'tue-narrow-future-two' => 'an {0} DhiM.',
+ 'tue-narrow-past-few' => 'o {0} DiM.',
+ 'tue-narrow-past-one' => 'o {0} DiM.',
+ 'tue-narrow-past-other' => 'o {0} DiM.',
+ 'tue-narrow-past-two' => 'o {0} DhiM.',
+ 'tue-past-few' => 'o chionn {0} DiMàirt',
+ 'tue-past-one' => 'o chionn {0} DiMàirt',
+ 'tue-past-other' => 'o chionn {0} DiMàirt',
+ 'tue-past-two' => 'o chionn {0} DhiMàirt',
+ 'tue-short-future-few' => 'an ceann {0} DiM.',
+ 'tue-short-future-one' => 'an ceann {0} DiM.',
+ 'tue-short-future-other' => 'an ceann {0} DiM.',
+ 'tue-short-future-two' => 'an ceann {0} DhiM.',
+ 'tue-short-past-few' => 'o chionn {0} DiM.',
+ 'tue-short-past-one' => 'o chionn {0} DiM.',
+ 'tue-short-past-other' => 'o chionn {0} DiM.',
+ 'tue-short-past-two' => 'o chionn {0} DhiM.',
+ 'wed-future-few' => 'an ceann {0} DiCiadain',
+ 'wed-future-one' => 'an ceann {0} DiCiadain',
+ 'wed-future-other' => 'an ceann {0} DiCiadain',
+ 'wed-future-two' => 'an ceann {0} DhiCiadain',
+ 'wed-narrow-future-few' => 'an {0} DiC.',
+ 'wed-narrow-future-one' => 'an {0} DiC.',
+ 'wed-narrow-future-other' => 'an {0} DiC.',
+ 'wed-narrow-future-two' => 'an {0} DhiC.',
+ 'wed-narrow-past-few' => 'o {0} DiC.',
+ 'wed-narrow-past-one' => 'o {0} DiC.',
+ 'wed-narrow-past-other' => 'o {0} DiC.',
+ 'wed-narrow-past-two' => 'o {0} DhiC.',
+ 'wed-past-few' => 'o chionn {0} DiCiadain',
+ 'wed-past-one' => 'o chionn {0} DiCiadain',
+ 'wed-past-other' => 'o chionn {0} DiCiadain',
+ 'wed-past-two' => 'o chionn {0} DhiCiadain',
+ 'wed-short-future-few' => 'an ceann {0} DiC.',
+ 'wed-short-future-one' => 'an ceann {0} DiC.',
+ 'wed-short-future-other' => 'an ceann {0} DiC.',
+ 'wed-short-future-two' => 'an ceann {0} DhiC.',
+ 'wed-short-past-few' => 'o chionn {0} DiC.',
+ 'wed-short-past-one' => 'o chionn {0} DiC.',
+ 'wed-short-past-other' => 'o chionn {0} DiC.',
+ 'wed-short-past-two' => 'o chionn {0} DhiC.',
'week-few' => '{0} seachdainean',
'week-future-few' => 'an ceann {0} seachdainean',
'week-future-one' => 'an ceann {0} seachdain',
@@ -1377,10 +1832,10 @@ $timeUnits = array(
'week-narrow-past-two' => '-{0} sn.',
'week-one' => '{0} seachdain',
'week-other' => '{0} seachdain',
- 'week-past-few' => 'o chionn {0} seachdainean',
- 'week-past-one' => 'o chionn {0} seachdain',
- 'week-past-other' => 'o chionn {0} seachdain',
- 'week-past-two' => 'o chionn {0} sheachdain',
+ 'week-past-few' => '{0} seachdainean air ais',
+ 'week-past-one' => '{0} seachdain air ais',
+ 'week-past-other' => '{0} seachdain air ais',
+ 'week-past-two' => '{0} sheachdain air ais',
'week-short-future-few' => 'an {0} seachd.',
'week-short-future-one' => 'an {0} sheachd.',
'week-short-future-other' => 'an {0} seachd.',
@@ -1396,19 +1851,19 @@ $timeUnits = array(
'year-future-other' => 'an ceann {0} bliadhna',
'year-future-two' => 'an ceann {0} bhliadhna',
'year-narrow-future-few' => '+{0} bl.',
- 'year-narrow-future-one' => '+{0} bl.',
+ 'year-narrow-future-one' => '+{0} bhl.',
'year-narrow-future-other' => '+{0} bl.',
- 'year-narrow-future-two' => '+{0} bl.',
+ 'year-narrow-future-two' => '+{0} bhl.',
'year-narrow-past-few' => '-{0} bl.',
- 'year-narrow-past-one' => '-{0} bl.',
+ 'year-narrow-past-one' => '-{0} bhl.',
'year-narrow-past-other' => '-{0} bl.',
- 'year-narrow-past-two' => '-{0} bl.',
+ 'year-narrow-past-two' => '-{0} bhl.',
'year-one' => '{0} bhliadhna',
'year-other' => '{0} bliadhna',
- 'year-past-few' => 'o chionn {0} bliadhnaichean',
- 'year-past-one' => 'o chionn {0} bhliadhna',
- 'year-past-other' => 'o chionn {0} bliadhna',
- 'year-past-two' => 'o chionn {0} bhliadhna',
+ 'year-past-few' => '{0} bhliadhnaichean air ais',
+ 'year-past-one' => '{0} bhliadhna air ais',
+ 'year-past-other' => '{0} bliadhna air ais',
+ 'year-past-two' => '{0} bhliadhna air ais',
'year-short-future-few' => 'an {0} blia.',
'year-short-future-one' => 'an {0} bhlia.',
'year-short-future-other' => 'an {0} blia.',
@@ -1418,4 +1873,4 @@ $timeUnits = array(
'year-short-past-other' => 'o {0} blia.',
'year-short-past-two' => 'o {0} bhlia.',
'year-two' => '{0} bhliadhna',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesGl.php b/MLEB/cldr/CldrNames/CldrNamesGl.php
index d1335156..13a8fae2 100644
--- a/MLEB/cldr/CldrNames/CldrNamesGl.php
+++ b/MLEB/cldr/CldrNames/CldrNamesGl.php
@@ -1,289 +1,434 @@
<?php
-$languageNames = array(
+$languageNames = [
+ 'aa' => 'afar',
'ab' => 'abkhazo',
- 'ach' => 'acoli',
+ 'ace' => 'achinés',
+ 'ach' => 'acholí',
+ 'ada' => 'adangme',
+ 'ady' => 'adigueo',
'af' => 'afrikaans',
'agq' => 'aghem',
- 'ak' => 'akán',
- 'am' => 'amárico',
+ 'ain' => 'ainu',
+ 'ak' => 'akan',
+ 'ale' => 'aleutiano',
+ 'alt' => 'altai meridional',
+ 'am' => 'amhárico',
'an' => 'aragonés',
+ 'anp' => 'angika',
'ar' => 'árabe',
'ar-001' => 'árabe estándar moderno',
'arc' => 'arameo',
'arn' => 'mapuche',
+ 'arp' => 'arapaho',
'as' => 'assamés',
'asa' => 'asu',
'ast' => 'asturiano',
+ 'av' => 'avar',
+ 'awa' => 'awadhi',
'ay' => 'aimará',
'az' => 'acerbaixano',
- 'ba' => 'baskir',
+ 'ba' => 'baxkir',
+ 'ban' => 'balinés',
+ 'bas' => 'basaa',
'be' => 'bielorruso',
'bem' => 'bemba',
'bez' => 'bena',
'bg' => 'búlgaro',
+ 'bgn' => 'baluchi occidental',
+ 'bho' => 'bhojpuri',
+ 'bi' => 'bislama',
+ 'bin' => 'bini',
+ 'bla' => 'siksiká',
'bm' => 'bambara',
'bn' => 'bengalí',
'bo' => 'tibetano',
'br' => 'bretón',
'brx' => 'bodo',
- 'bs' => 'bosnio',
+ 'bs' => 'bosníaco',
+ 'bug' => 'buginés',
+ 'byn' => 'blin',
'ca' => 'catalán',
+ 'ce' => 'checheno',
+ 'ceb' => 'cebuano',
'cgg' => 'kiga',
- 'chr' => 'cheroqui',
- 'ckb' => 'curdo soraní',
+ 'ch' => 'chamorro',
+ 'chk' => 'chuuk',
+ 'chm' => 'mari',
+ 'cho' => 'choctaw',
+ 'chr' => 'cherokee',
+ 'chy' => 'cheyenne',
+ 'ckb' => 'kurdo soraní',
'co' => 'corso',
+ 'crs' => 'seselwa (crioulo das Seychelles)',
'cs' => 'checo',
'cu' => 'eslavo eclesiástico',
+ 'cv' => 'chuvaxo',
'cy' => 'galés',
'da' => 'dinamarqués',
+ 'dak' => 'dakota',
+ 'dar' => 'dargwa',
'dav' => 'taita',
'de' => 'alemán',
- 'de-at' => 'alemán de austria',
+ 'de-at' => 'alemán austríaco',
'de-ch' => 'alto alemán suízo',
+ 'dgr' => 'dogrib',
'dje' => 'zarma',
- 'dsb' => 'baixo sorabio',
+ 'dsb' => 'baixo sorbio',
'dua' => 'duala',
'dv' => 'divehi',
'dyo' => 'jola-fonyi',
'dz' => 'dzongkha',
+ 'dzg' => 'dazaga',
'ebu' => 'embu',
- 'ee' => 'ewé',
- 'efi' => 'ibibio',
+ 'ee' => 'ewe',
+ 'efi' => 'efik',
'egy' => 'exipcio antigo',
+ 'eka' => 'ekajuk',
'el' => 'grego',
'en' => 'inglés',
'en-au' => 'inglés australiano',
- 'en-ca' => 'inglés canadiano',
+ 'en-ca' => 'inglés canadense',
'en-gb' => 'inglés británico',
- 'en-us' => 'inglés dos Estados Unidos',
+ 'en-us' => 'inglés estadounidense',
'eo' => 'esperanto',
'es' => 'español',
- 'es-419' => 'español latinoamericano',
- 'es-es' => 'castelán',
+ 'es-419' => 'español de América',
+ 'es-es' => 'español de España',
'es-mx' => 'español de México',
'et' => 'estoniano',
'eu' => 'éuscaro',
+ 'ewo' => 'ewondo',
'fa' => 'persa',
+ 'ff' => 'fula',
'fi' => 'finés',
'fil' => 'filipino',
'fj' => 'fixiano',
- 'fo' => 'faroés',
+ 'fo' => 'feroés',
+ 'fon' => 'fon',
'fr' => 'francés',
- 'fr-ca' => 'francés canadiano',
+ 'fr-ca' => 'francés canadense',
'fr-ch' => 'francés suízo',
- 'fy' => 'frisón',
+ 'fur' => 'friulano',
+ 'fy' => 'frisón occidental',
'ga' => 'irlandés',
'gaa' => 'ga',
'gag' => 'gagauz',
'gd' => 'gaélico escocés',
+ 'gez' => 'ge’ez',
+ 'gil' => 'kiribatiano',
'gl' => 'galego',
'gn' => 'guaraní',
+ 'gor' => 'gorontalo',
'grc' => 'grego antigo',
'gsw' => 'alemán suízo',
- 'gu' => 'guxaratiano',
+ 'gu' => 'guxarati',
'guz' => 'gusii',
'gv' => 'manx',
+ 'gwi' => 'gwichʼin',
'ha' => 'hausa',
'haw' => 'hawaiano',
'he' => 'hebreo',
'hi' => 'hindi',
+ 'hil' => 'hiligaynon',
+ 'hmn' => 'hmong',
'hr' => 'croata',
- 'hsb' => 'alto sorabio',
- 'ht' => 'haitiano',
+ 'hsb' => 'alto sorbio',
+ 'ht' => 'crioulo haitiano',
'hu' => 'húngaro',
+ 'hup' => 'hupa',
'hy' => 'armenio',
+ 'hz' => 'herero',
'ia' => 'interlingua',
+ 'iba' => 'iban',
+ 'ibb' => 'ibibio',
'id' => 'indonesio',
- 'ig' => 'ibo',
+ 'ig' => 'igbo',
'ii' => 'yi sichuanés',
+ 'ilo' => 'ilocano',
+ 'inh' => 'inguxo',
+ 'io' => 'ido',
'is' => 'islandés',
'it' => 'italiano',
- 'iu' => 'inuit',
+ 'iu' => 'inuktitut',
'ja' => 'xaponés',
+ 'jbo' => 'lojban',
'jgo' => 'ngomba',
'jmc' => 'machame',
'jv' => 'xavanés',
'ka' => 'xeorxiano',
- 'kab' => 'kabile',
+ 'kab' => 'cabila',
+ 'kac' => 'kachin',
+ 'kaj' => 'jju',
'kam' => 'kamba',
+ 'kbd' => 'cabardiano',
+ 'kcg' => 'tyap',
'kde' => 'makonde',
'kea' => 'caboverdiano',
+ 'kfo' => 'koro',
'kg' => 'kongo',
+ 'kha' => 'khasi',
'khq' => 'koyra chiini',
'ki' => 'kikuyu',
+ 'kj' => 'kuanyama',
'kk' => 'casaco',
+ 'kkj' => 'kako',
'kl' => 'groenlandés',
'kln' => 'kalenjin',
- 'km' => 'cambodiano',
- 'kn' => 'kannada',
+ 'km' => 'khmer',
+ 'kmb' => 'kimbundu',
+ 'kn' => 'kannará',
'ko' => 'coreano',
'koi' => 'komi permio',
'kok' => 'konkani',
- 'ks' => 'cachemir',
+ 'kpe' => 'kpelle',
+ 'kr' => 'kanuri',
+ 'krc' => 'carachaio-bálcara',
+ 'krl' => 'carelio',
+ 'kru' => 'kurukh',
+ 'ks' => 'caxemirés',
'ksb' => 'shambala',
'ksf' => 'bafia',
+ 'ksh' => 'kölsch',
'ku' => 'kurdo',
+ 'kum' => 'kumyk',
+ 'kv' => 'komi',
'kw' => 'córnico',
- 'ky' => 'quirguiz',
+ 'ky' => 'kirguiz',
'la' => 'latín',
+ 'lad' => 'ladino',
'lag' => 'langi',
'lb' => 'luxemburgués',
+ 'lez' => 'lezguio',
'lg' => 'ganda',
+ 'li' => 'limburgués',
'lkt' => 'lakota',
'ln' => 'lingala',
- 'lo' => 'laotiano',
+ 'lo' => 'laosiano',
'loz' => 'lozi',
+ 'lrc' => 'luri setentrional',
'lt' => 'lituano',
'lu' => 'luba-katanga',
'lua' => 'luba-lulua',
+ 'lun' => 'lunda',
'luo' => 'luo',
+ 'lus' => 'mizo',
'luy' => 'luyia',
'lv' => 'letón',
+ 'mad' => 'madurés',
+ 'mag' => 'magahi',
+ 'mai' => 'maithili',
+ 'mak' => 'makasar',
'mas' => 'masai',
+ 'mdf' => 'moksha',
+ 'men' => 'mende',
'mer' => 'meru',
- 'mfe' => 'crioulo mauritano',
+ 'mfe' => 'crioulo mauriciano',
'mg' => 'malgaxe',
'mgh' => 'makhuwa-meetto',
'mgo' => 'meta’',
+ 'mh' => 'marshalés',
'mi' => 'maorí',
+ 'mic' => 'micmac',
+ 'min' => 'minangkabau',
'mk' => 'macedonio',
'ml' => 'malabar',
'mn' => 'mongol',
+ 'mni' => 'manipuri',
'moh' => 'mohawk',
+ 'mos' => 'mossi',
'mr' => 'marathi',
'ms' => 'malaio',
'mt' => 'maltés',
'mua' => 'mundang',
'mul' => 'varias linguas',
+ 'mus' => 'creek',
+ 'mwl' => 'mirandés',
'my' => 'birmano',
+ 'myv' => 'erzya',
+ 'mzn' => 'mazandaraní',
+ 'na' => 'nauruano',
+ 'nap' => 'napolitano',
'naq' => 'nama',
- 'nb' => 'noruegués bokmal',
- 'nd' => 'ndebele do norte',
+ 'nb' => 'noruegués bokmål',
+ 'nd' => 'ndebele setentrional',
+ 'nds' => 'baixo alemán',
+ 'nds-nl' => 'baixo saxón',
'ne' => 'nepalí',
- 'nl' => 'holandés',
- 'nl-be' => 'flamenco',
+ 'new' => 'newari',
+ 'ng' => 'ndonga',
+ 'nia' => 'nias',
+ 'niu' => 'niueano',
+ 'nl' => 'neerlandés',
+ 'nl-be' => 'flamengo',
'nmg' => 'kwasio',
'nn' => 'noruegués nynorsk',
+ 'nnh' => 'ngiemboon',
'no' => 'noruegués',
+ 'nog' => 'nogai',
'nqo' => 'n’ko',
- 'nso' => 'sesotho sa leboa',
+ 'nr' => 'ndebele meridional',
+ 'nso' => 'sesotho do norte',
'nus' => 'nuer',
- 'ny' => 'chewa',
+ 'nv' => 'navajo',
+ 'ny' => 'nyanja',
'nyn' => 'nyankole',
'oc' => 'occitano',
'om' => 'oromo',
- 'or' => 'oriya',
- 'os' => 'osetio',
- 'pa' => 'punjabi',
+ 'or' => 'odiá',
+ 'os' => 'ossetio',
+ 'pa' => 'panxabí',
+ 'pag' => 'pangasinan',
+ 'pam' => 'pampanga',
+ 'pap' => 'papiamento',
+ 'pau' => 'palauano',
+ 'pcm' => 'pidgin nixeriano',
'pl' => 'polaco',
- 'ps' => 'paxtún',
+ 'prg' => 'prusiano',
+ 'ps' => 'paxto',
'pt' => 'portugués',
- 'pt-br' => 'portugués brasileiro',
- 'pt-pt' => 'portugués europeo',
+ 'pt-br' => 'portugués do Brasil',
+ 'pt-pt' => 'portugués de Portugal',
'qu' => 'quechua',
'quc' => 'quiché',
+ 'rap' => 'rapanui',
+ 'rar' => 'rarotongano',
'rm' => 'romanche',
'rn' => 'rundi',
'ro' => 'romanés',
- 'ro-md' => 'romanés moldavo',
+ 'ro-md' => 'moldavo',
'rof' => 'rombo',
'ru' => 'ruso',
- 'rw' => 'ruandés',
+ 'rup' => 'aromanés',
+ 'rw' => 'kiñaruanda',
'rwk' => 'rwa',
'sa' => 'sánscrito',
+ 'sad' => 'sandawe',
+ 'sah' => 'iacuto',
'saq' => 'samburu',
+ 'sat' => 'santali',
+ 'sba' => 'ngambay',
'sbp' => 'sangu',
+ 'sc' => 'sardo',
+ 'scn' => 'siciliano',
+ 'sco' => 'escocés',
'sd' => 'sindhi',
- 'se' => 'sami do norte',
+ 'sdh' => 'kurdo meridional',
+ 'se' => 'saami setentrional',
'seh' => 'sena',
'ses' => 'koyraboro senni',
'sg' => 'sango',
'sh' => 'serbocroata',
'shi' => 'tachelhit',
+ 'shn' => 'shan',
'si' => 'cingalés',
'sk' => 'eslovaco',
'sl' => 'esloveno',
'sm' => 'samoano',
- 'sma' => 'saami do sur',
- 'smj' => 'saami lule',
- 'smn' => 'saami inari',
+ 'sma' => 'saami meridional',
+ 'smj' => 'saami de Lule',
+ 'smn' => 'saami de Inari',
'sms' => 'saami skolt',
'sn' => 'shona',
+ 'snk' => 'soninke',
'so' => 'somalí',
'sq' => 'albanés',
'sr' => 'serbio',
- 'ss' => 'swati',
- 'st' => 'sesoto',
- 'su' => 'sondanés',
+ 'srn' => 'sranan tongo',
+ 'ss' => 'suazi',
+ 'ssy' => 'saho',
+ 'st' => 'sesotho',
+ 'su' => 'sundanés',
+ 'suk' => 'sukuma',
'sv' => 'sueco',
- 'sw' => 'swahili',
- 'swc' => 'suahili congolés',
- 'ta' => 'tamil',
+ 'sw' => 'suahili',
+ 'sw-cd' => 'suahili congolés',
+ 'swb' => 'comoriano',
+ 'syr' => 'siríaco',
+ 'ta' => 'támil',
'te' => 'telugu',
+ 'tem' => 'temne',
'teo' => 'teso',
- 'tet' => 'tetún',
+ 'tet' => 'tetun',
'tg' => 'taxico',
'th' => 'tailandés',
'ti' => 'tigriña',
- 'tk' => 'turcomano',
+ 'tig' => 'tigré',
+ 'tk' => 'turcomán',
'tl' => 'tagalo',
'tlh' => 'klingon',
'tn' => 'tswana',
- 'to' => 'tonganés',
+ 'to' => 'tongano',
'tpi' => 'tok pisin',
'tr' => 'turco',
- 'ts' => 'xitsonga',
+ 'trv' => 'taroko',
+ 'ts' => 'tsonga',
'tt' => 'tártaro',
'tum' => 'tumbuka',
+ 'tvl' => 'tuvalés',
'tw' => 'twi',
'twq' => 'tasawaq',
'ty' => 'tahitiano',
- 'tzm' => 'tamazight marroquí central',
+ 'tyv' => 'tuvaniano',
+ 'tzm' => 'tamazight de Marrocos central',
+ 'udm' => 'udmurto',
'ug' => 'uigur',
'uk' => 'ucraíno',
- 'und' => 'lingua descoñecida ou non válida',
+ 'umb' => 'umbundu',
+ 'und' => 'lingua descoñecida',
'ur' => 'urdú',
'uz' => 'uzbeco',
'vai' => 'vai',
've' => 'venda',
'vi' => 'vietnamita',
+ 'vo' => 'volapuk',
'vun' => 'vunjo',
+ 'wa' => 'valón',
+ 'wae' => 'walser',
+ 'wal' => 'wolaytta',
+ 'war' => 'waray-waray',
+ 'wbp' => 'walrpiri',
'wo' => 'wólof',
+ 'xal' => 'calmuco',
'xh' => 'xhosa',
'xog' => 'soga',
+ 'yav' => 'yangben',
+ 'ybb' => 'yemba',
'yi' => 'yiddish',
'yo' => 'ioruba',
- 'zgh' => 'tamazight de Marrocos estándar',
+ 'yue' => 'cantonés',
+ 'zgh' => 'tamazight marroquí estándar',
'zh' => 'chinés',
'zh-hans' => 'chinés simplificado',
'zh-hant' => 'chinés tradicional',
'zu' => 'zulú',
+ 'zun' => 'zuni',
'zxx' => 'sen contido lingüístico',
-);
+ 'zza' => 'zazaki',
+];
-$currencyNames = array(
+$currencyNames = [
'ADP' => 'peseta andorrana',
'AED' => 'Dirham dos Emiratos Árabes Unidos',
'AFN' => 'Afgani afgano',
'ALL' => 'Lek albanés',
'AMD' => 'Dram armenio',
'ANG' => 'Florín das Antillas Neerlandesas',
- 'AOA' => 'Kwanza angoleño',
+ 'AOA' => 'Kwanza angolano',
'ARP' => 'Peso arxentino (1983–1985)',
'ARS' => 'Peso arxentino',
'AUD' => 'Dólar australiano',
- 'AWG' => 'Florín arubeño',
+ 'AWG' => 'Florín de Aruba',
'AZN' => 'Manat acerbaixano',
'BAM' => 'Marco convertible de Bosnia e Hercegovina',
'BBD' => 'Dólar de Barbados',
- 'BDT' => 'Taka de Bangladesh',
+ 'BDT' => 'Taka de Bangladés',
'BEC' => 'Franco belga (convertible)',
'BEF' => 'Franco belga',
'BEL' => 'Franco belga (financeiro)',
'BGN' => 'Lev búlgaro',
- 'BHD' => 'Dinar de Baréin',
- 'BIF' => 'Franco burundés',
+ 'BHD' => 'Dinar de Bahrain',
+ 'BIF' => 'Franco burundiano',
'BMD' => 'Dólar das Bemudas',
'BND' => 'Dólar de Brunei',
'BOB' => 'Boliviano',
@@ -297,17 +442,19 @@ $currencyNames = array(
'BRR' => 'Cruzeiro brasileiro',
'BSD' => 'Dólar das Bahamas',
'BTN' => 'Ngultrum butanés',
- 'BWP' => 'Pula botsuano',
- 'BYR' => 'Rublo bielorruso',
- 'BZD' => 'Dólar beliceño',
- 'CAD' => 'Dólar canadiano',
+ 'BWP' => 'Pula botsuaniano',
+ 'BYN' => 'Rublo bielorruso',
+ 'BYR' => 'Rublo bielorruso (2000–2016)',
+ 'BZD' => 'Dólar belizense',
+ 'CAD' => 'Dólar canadense',
'CDF' => 'Franco congolés',
'CHF' => 'Franco suízo',
'CLF' => 'Unidades de fomento chilenas',
'CLP' => 'Peso chileno',
+ 'CNH' => 'Iuán chinés (extracontinental)',
'CNY' => 'Iuán chinés',
'COP' => 'Peso colombiano',
- 'CRC' => 'Colón costarricense',
+ 'CRC' => 'Colón costarriqueño',
'CUC' => 'Peso cubano convertible',
'CUP' => 'Peso cubano',
'CVE' => 'Escudo caboverdiano',
@@ -326,13 +473,13 @@ $currencyNames = array(
'ESP' => 'Peseta española',
'ETB' => 'Birr etíope',
'EUR' => 'Euro',
- 'FJD' => 'Dólar fixiano',
+ 'FJD' => 'Dólar fidxiano',
'FKP' => 'Libra das Malvinas',
'FRF' => 'Franco francés',
'GBP' => 'Libra esterlina',
'GEL' => 'Lari xeorxiano',
- 'GHS' => 'Cedi de Gana',
- 'GIP' => 'Libra de Xibraltar',
+ 'GHS' => 'Cedi de Ghana',
+ 'GIP' => 'Libra xibraltareña',
'GMD' => 'Dalasi gambiano',
'GNF' => 'Franco guineano',
'GNS' => 'Syli guineano',
@@ -356,8 +503,8 @@ $currencyNames = array(
'JMD' => 'Dólar xamaicano',
'JOD' => 'Dinar xordano',
'JPY' => 'Ien xaponés',
- 'KES' => 'Chelín kenyano',
- 'KGS' => 'Som quirguizo',
+ 'KES' => 'Xilin kenyano',
+ 'KGS' => 'Som quirguicistano',
'KHR' => 'Riel camboxano',
'KMF' => 'Franco comoriano',
'KPW' => 'Won norcoreano',
@@ -381,12 +528,13 @@ $currencyNames = array(
'MDL' => 'Leu moldavo',
'MGA' => 'Ariary malgaxe',
'MKD' => 'Dinar macedonio',
- 'MMK' => 'Kiat birmano',
+ 'MMK' => 'Kyat birmano',
'MNT' => 'Tugrik mongol',
'MOP' => 'Pataca de Macau',
- 'MRO' => 'Ouguiya mauritano',
- 'MUR' => 'Rupia de Mauricio',
- 'MVR' => 'Rupia maldiva',
+ 'MRO' => 'Ouguiya mauritano (1973–2017)',
+ 'MRU' => 'Ouguiya mauritano',
+ 'MUR' => 'Rupia mauriciana',
+ 'MVR' => 'Rupia maldivana',
'MWK' => 'Kwacha de Malaui',
'MXN' => 'Peso mexicano',
'MXP' => 'Peso de prata mexicano (1861–1992)',
@@ -396,7 +544,7 @@ $currencyNames = array(
'NAD' => 'Dólar namibio',
'NGN' => 'Naira nixeriano',
'NIC' => 'Córdoba nicaragüense',
- 'NIO' => 'Córdoba de ouro nicaragüense',
+ 'NIO' => 'Córdoba de ouro nicaraguano',
'NLG' => 'Florín holandés',
'NOK' => 'Coroa norueguesa',
'NPR' => 'Rupia nepalesa',
@@ -404,9 +552,9 @@ $currencyNames = array(
'OMR' => 'Rial omaní',
'PAB' => 'Balboa panameño',
'PEI' => 'Inti peruano',
- 'PEN' => 'Sol novo peruano',
- 'PES' => 'Sol peruano',
- 'PGK' => 'Kina de Papúa Nova Guinea',
+ 'PEN' => 'Sol peruano',
+ 'PES' => 'Sol peruano (1863–1965)',
+ 'PGK' => 'Kina de Papúa-Nova Guinea',
'PHP' => 'Peso filipino',
'PKR' => 'Rupia paquistaní',
'PLN' => 'Zloty polaco',
@@ -426,51 +574,53 @@ $currencyNames = array(
'SGD' => 'Dólar de Singapur',
'SHP' => 'Libra de Santa Helena',
'SLL' => 'Leone de Serra Leoa',
- 'SOS' => 'Chelín somalí',
+ 'SOS' => 'Xilin somalí',
'SRD' => 'Dólar surinamés',
'SSP' => 'Libra sursudanesa',
- 'STD' => 'Dobra de San Tomé e Príncipe',
+ 'STD' => 'Dobra de São Tomé e Príncipe (1977–2017)',
+ 'STN' => 'Dobra de São Tomé e Príncipe',
'SUR' => 'Rublo soviético',
'SVC' => 'Colón salvadoreño',
'SYP' => 'Libra siria',
- 'SZL' => 'Lilanxeni de Suacilandia',
+ 'SZL' => 'Lilangeni de Suacilandia',
'THB' => 'Baht tailandés',
- 'TJS' => 'Somoni taxico',
- 'TMT' => 'Manat turcomano',
- 'TND' => 'Dinar tunesino',
+ 'TJS' => 'Somoni taxiquistano',
+ 'TMT' => 'Manat turcomán',
+ 'TND' => 'Dinar tunisiano',
'TOP' => 'Paʻanga de Tonga',
'TRY' => 'Lira turca',
- 'TTD' => 'Dólar de Trinidade e Tobago',
+ 'TTD' => 'Dólar de Trinidad e Tobago',
'TWD' => 'Novo dólar taiwanés',
- 'TZS' => 'Chelín tanzano',
- 'UAH' => 'Grivna ucraína',
- 'UGX' => 'Chelín ugandés',
+ 'TZS' => 'Xilin tanzano',
+ 'UAH' => 'Hrivna ucraína',
+ 'UGX' => 'Xilin ugandés',
'USD' => 'Dólar estadounidense',
'UYI' => 'Peso en unidades indexadas uruguaio',
'UYP' => 'Peso uruguaio (1975–1993)',
'UYU' => 'Peso uruguaio',
'UZS' => 'Som usbeco',
'VEB' => 'Bolívar venezolano (1871–2008)',
- 'VEF' => 'Bolívar venezolano',
+ 'VEF' => 'Bolívar venezolano (2008–2018)',
+ 'VES' => 'Bolívar venezolano',
'VND' => 'Dong vietnamita',
- 'VUV' => 'Vatu vanuatense',
+ 'VUV' => 'Vatu vanuatiano',
'WST' => 'Tala samoano',
- 'XAF' => 'Franco CFA BEAC',
+ 'XAF' => 'Franco CFA (BEAC)',
'XAG' => 'Prata',
'XAU' => 'Ouro',
- 'XCD' => 'Dólar Caribe-Leste',
- 'XOF' => 'Franco CFA BCEAO',
+ 'XCD' => 'Dólar do Caribe Oriental',
+ 'XOF' => 'Franco CFA (BCEAO)',
'XPD' => 'Paladio',
'XPF' => 'Franco CFP',
'XPT' => 'Platino',
- 'XXX' => 'Unidade monetaria descoñecida',
+ 'XXX' => 'Moeda descoñecida',
'YER' => 'Rial iemení',
- 'ZAR' => 'Rand sudafricano',
+ 'ZAR' => 'Rand surafricano',
'ZMK' => 'Kwacha zambiano (1968–2012)',
'ZMW' => 'Kwacha zambiano',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'AED' => 'AED',
'AFN' => 'AFN',
'ALL' => 'ALL',
@@ -478,7 +628,7 @@ $currencySymbols = array(
'ANG' => 'ANG',
'AOA' => 'AOA',
'ARS' => 'ARS',
- 'AUD' => '$A',
+ 'AUD' => 'A$',
'AWG' => 'AWG',
'AZN' => 'AZN',
'BAM' => 'BAM',
@@ -490,16 +640,18 @@ $currencySymbols = array(
'BMD' => 'BMD',
'BND' => 'BND',
'BOB' => 'BOB',
- 'BRL' => '$R',
+ 'BRL' => 'R$',
'BSD' => 'BSD',
'BTN' => 'BTN',
'BWP' => 'BWP',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
- 'CAD' => '$CA',
+ 'CAD' => 'CA$',
'CDF' => 'CDF',
'CHF' => 'CHF',
'CLP' => 'CLP',
+ 'CNH' => 'CNH',
'CNY' => 'CN¥',
'COP' => 'COP',
'CRC' => 'CRC',
@@ -526,7 +678,7 @@ $currencySymbols = array(
'GNF' => 'GNF',
'GTQ' => 'GTQ',
'GYD' => 'GYD',
- 'HKD' => '$HK',
+ 'HKD' => 'HK$',
'HNL' => 'HNL',
'HRK' => 'HRK',
'HTG' => 'HTG',
@@ -539,7 +691,7 @@ $currencySymbols = array(
'ISK' => 'ISK',
'JMD' => 'JMD',
'JOD' => 'JOD',
- 'JPY' => '¥JP',
+ 'JPY' => 'JP¥',
'KES' => 'KES',
'KGS' => 'KGS',
'KHR' => 'KHR',
@@ -564,6 +716,7 @@ $currencySymbols = array(
'MNT' => 'MNT',
'MOP' => 'MOP',
'MRO' => 'MRO',
+ 'MRU' => 'MRU',
'MUR' => 'MUR',
'MVR' => 'MVR',
'MWK' => 'MWK',
@@ -601,6 +754,7 @@ $currencySymbols = array(
'SRD' => 'SRD',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'STN',
'SYP' => 'SYP',
'SZL' => 'SZL',
'THB' => '฿',
@@ -610,7 +764,7 @@ $currencySymbols = array(
'TOP' => 'TOP',
'TRY' => 'TRY',
'TTD' => 'TTD',
- 'TWD' => '$NT',
+ 'TWD' => 'NT$',
'TZS' => 'TZS',
'UAH' => 'UAH',
'UGX' => 'UGX',
@@ -618,6 +772,7 @@ $currencySymbols = array(
'UYU' => 'UYU',
'UZS' => 'UZS',
'VEF' => 'VEF',
+ 'VES' => 'VES',
'VND' => '₫',
'VUV' => 'VUV',
'WST' => 'WST',
@@ -628,26 +783,25 @@ $currencySymbols = array(
'YER' => 'YER',
'ZAR' => 'ZAR',
'ZMW' => 'ZMW',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'Illa de Ascensión',
'AD' => 'Andorra',
- 'AE' => 'Emiratos Árabes Unidos',
+ 'AE' => 'Os Emiratos Árabes Unidos',
'AF' => 'Afganistán',
- 'AG' => 'Antiga e Barbuda',
+ 'AG' => 'Antigua e Barbuda',
'AI' => 'Anguila',
'AL' => 'Albania',
'AM' => 'Armenia',
- 'AN' => 'Antillas Holandesas',
'AO' => 'Angola',
- 'AQ' => 'Antártida',
- 'AR' => 'Arxentina',
+ 'AQ' => 'A Antártida',
+ 'AR' => 'A Arxentina',
'AS' => 'Samoa Americana',
'AT' => 'Austria',
'AU' => 'Australia',
'AW' => 'Aruba',
- 'AX' => 'Åland',
+ 'AX' => 'Illas Åland',
'AZ' => 'Acerbaixán',
'BA' => 'Bosnia e Hercegovina',
'BB' => 'Barbados',
@@ -655,32 +809,32 @@ $countryNames = array(
'BE' => 'Bélxica',
'BF' => 'Burkina Faso',
'BG' => 'Bulgaria',
- 'BH' => 'Bahrein',
+ 'BH' => 'Bahrain',
'BI' => 'Burundi',
- 'BJ' => 'Benin',
- 'BL' => 'San Bartolomé',
- 'BM' => 'Bermudas',
+ 'BJ' => 'Benín',
+ 'BL' => 'Saint Barthélemy',
+ 'BM' => 'Illas Bermudas',
'BN' => 'Brunei',
'BO' => 'Bolivia',
- 'BQ' => 'Caribe neerlandés',
- 'BR' => 'Brasil',
+ 'BQ' => 'Caribe Neerlandés',
+ 'BR' => 'O Brasil',
'BS' => 'Bahamas',
'BT' => 'Bután',
'BV' => 'Illa Bouvet',
- 'BW' => 'Botsuana',
- 'BY' => 'Bielorrusia',
- 'BZ' => 'Belice',
- 'CA' => 'Canadá',
- 'CC' => 'Illas Cocos',
+ 'BW' => 'Botswana',
+ 'BY' => 'Belarús',
+ 'BZ' => 'Belize',
+ 'CA' => 'O Canadá',
+ 'CC' => 'Illas Cocos (Keeling)',
'CD' => 'República Democrática do Congo',
'CF' => 'República Centroafricana',
- 'CG' => 'Congo',
+ 'CG' => 'República do Congo',
'CH' => 'Suíza',
- 'CI' => 'Costa de Marfil',
+ 'CI' => 'Costa do Marfil',
'CK' => 'Illas Cook',
'CL' => 'Chile',
'CM' => 'Camerún',
- 'CN' => 'China',
+ 'CN' => 'A China',
'CO' => 'Colombia',
'CP' => 'Illa Clipperton',
'CR' => 'Costa Rica',
@@ -689,25 +843,26 @@ $countryNames = array(
'CW' => 'Curaçao',
'CX' => 'Illa Christmas',
'CY' => 'Chipre',
- 'CZ' => 'República Checa',
+ 'CZ' => 'Chequia',
'DE' => 'Alemaña',
'DG' => 'Diego García',
'DJ' => 'Djibuti',
'DK' => 'Dinamarca',
'DM' => 'Dominica',
'DO' => 'República Dominicana',
- 'DZ' => 'Arxelia',
+ 'DZ' => 'Alxeria',
'EA' => 'Ceuta e Melilla',
'EC' => 'Ecuador',
'EE' => 'Estonia',
'EG' => 'Exipto',
- 'EH' => 'Sáhara Occidental',
+ 'EH' => 'O Sáhara Occidental',
'ER' => 'Eritrea',
'ES' => 'España',
'ET' => 'Etiopía',
'EU' => 'Unión Europea',
+ 'EZ' => 'Eurozona',
'FI' => 'Finlandia',
- 'FJ' => 'Fidxi',
+ 'FJ' => 'Fixi',
'FK' => 'Illas Malvinas',
'FM' => 'Micronesia',
'FO' => 'Illas Feroe',
@@ -718,18 +873,18 @@ $countryNames = array(
'GE' => 'Xeorxia',
'GF' => 'Güiana Francesa',
'GG' => 'Guernsey',
- 'GH' => 'Gana',
+ 'GH' => 'Ghana',
'GI' => 'Xibraltar',
- 'GL' => 'Grenlandia',
+ 'GL' => 'Groenlandia',
'GM' => 'Gambia',
'GN' => 'Guinea',
'GP' => 'Guadalupe',
'GQ' => 'Guinea Ecuatorial',
'GR' => 'Grecia',
- 'GS' => 'Xeorxia do Sur e Illas Sandwich',
+ 'GS' => 'Illas Xeorxia do Sur e Sandwich do Sur',
'GT' => 'Guatemala',
'GU' => 'Guam',
- 'GW' => 'Guinea-Bisau',
+ 'GW' => 'A Guinea Bissau',
'GY' => 'Güiana',
'HK' => 'Hong Kong',
'HM' => 'Illa Heard e Illas McDonald',
@@ -742,19 +897,19 @@ $countryNames = array(
'IE' => 'Irlanda',
'IL' => 'Israel',
'IM' => 'Illa de Man',
- 'IN' => 'India',
+ 'IN' => 'A India',
'IO' => 'Territorio Británico do Océano Índico',
'IQ' => 'Iraq',
'IR' => 'Irán',
'IS' => 'Islandia',
'IT' => 'Italia',
- 'JE' => 'Illa de Jersey',
+ 'JE' => 'Jersey',
'JM' => 'Xamaica',
'JO' => 'Xordania',
- 'JP' => 'Xapón',
+ 'JP' => 'O Xapón',
'KE' => 'Kenya',
- 'KG' => 'Quirguicistán',
- 'KH' => 'Cambodia',
+ 'KG' => 'Kirguizistán',
+ 'KH' => 'Camboxa',
'KI' => 'Kiribati',
'KM' => 'Comores',
'KN' => 'Saint Kitts e Nevis',
@@ -764,12 +919,12 @@ $countryNames = array(
'KY' => 'Illas Caimán',
'KZ' => 'Casaquistán',
'LA' => 'Laos',
- 'LB' => 'Líbano',
+ 'LB' => 'O Líbano',
'LC' => 'Santa Lucía',
'LI' => 'Liechtenstein',
'LK' => 'Sri Lanka',
'LR' => 'Liberia',
- 'LS' => 'Lesoto',
+ 'LS' => 'Lesotho',
'LT' => 'Lituania',
'LU' => 'Luxemburgo',
'LV' => 'Letonia',
@@ -778,22 +933,22 @@ $countryNames = array(
'MC' => 'Mónaco',
'MD' => 'Moldavia',
'ME' => 'Montenegro',
- 'MF' => 'San Martiño',
+ 'MF' => 'Saint Martin',
'MG' => 'Madagascar',
'MH' => 'Illas Marshall',
- 'MK' => 'República de Macedonia',
+ 'MK' => 'Macedonia',
'ML' => 'Malí',
'MM' => 'Myanmar (Birmania)',
'MN' => 'Mongolia',
'MO' => 'Macau',
- 'MP' => 'Illas Marianas do norte',
+ 'MP' => 'Illas Marianas do Norte',
'MQ' => 'Martinica',
'MR' => 'Mauritania',
- 'MS' => 'Illa Montserrat',
+ 'MS' => 'Montserrat',
'MT' => 'Malta',
'MU' => 'Mauricio',
'MV' => 'Maldivas',
- 'MW' => 'Malaui',
+ 'MW' => 'Malawi',
'MX' => 'México',
'MY' => 'Malaisia',
'MZ' => 'Mozambique',
@@ -811,21 +966,21 @@ $countryNames = array(
'NZ' => 'Nova Zelandia',
'OM' => 'Omán',
'PA' => 'Panamá',
- 'PE' => 'Perú',
- 'PF' => 'Polinesia Francesa',
- 'PG' => 'Papúa Nova Guinea',
+ 'PE' => 'O Perú',
+ 'PF' => 'A Polinesia Francesa',
+ 'PG' => 'Papúa-Nova Guinea',
'PH' => 'Filipinas',
'PK' => 'Paquistán',
'PL' => 'Polonia',
- 'PM' => 'San Pedro e Miguelón',
+ 'PM' => 'Saint Pierre et Miquelon',
'PN' => 'Illas Pitcairn',
'PR' => 'Porto Rico',
'PS' => 'Palestina',
'PT' => 'Portugal',
- 'PW' => 'Rep. das Palaus',
- 'PY' => 'Paraguai',
+ 'PW' => 'Palau',
+ 'PY' => 'O Paraguai',
'QA' => 'Qatar',
- 'QO' => 'Oceanía Distante',
+ 'QO' => 'Territorios afastados de Oceanía',
'RE' => 'Reunión',
'RO' => 'Romanía',
'RS' => 'Serbia',
@@ -833,8 +988,8 @@ $countryNames = array(
'RW' => 'Ruanda',
'SA' => 'Arabia Saudita',
'SB' => 'Illas Salomón',
- 'SC' => 'Seixeles',
- 'SD' => 'Sudán',
+ 'SC' => 'Seychelles',
+ 'SD' => 'O Sudán',
'SE' => 'Suecia',
'SG' => 'Singapur',
'SH' => 'Santa Helena',
@@ -845,38 +1000,39 @@ $countryNames = array(
'SM' => 'San Marino',
'SN' => 'Senegal',
'SO' => 'Somalia',
- 'SR' => 'Surinam',
- 'SS' => 'Sudán do sur',
+ 'SR' => 'Suriname',
+ 'SS' => 'O Sudán do Sur',
'ST' => 'San Tomé e Príncipe',
'SV' => 'O Salvador',
'SX' => 'Sint Maarten',
'SY' => 'Siria',
- 'SZ' => 'Suacilandia',
+ 'SZ' => 'Suazilandia',
'TA' => 'Tristán da Cunha',
'TC' => 'Illas Turks e Caicos',
'TD' => 'Chad',
- 'TF' => 'Territorios Franceses do Sul',
+ 'TF' => 'Territorios Austrais Franceses',
'TG' => 'Togo',
'TH' => 'Tailandia',
'TJ' => 'Taxiquistán',
- 'TK' => 'Toquelau',
+ 'TK' => 'Tokelau',
'TL' => 'Timor Leste',
- 'TM' => 'Turcomenistán',
+ 'TM' => 'Turkmenistán',
'TN' => 'Tunisia',
'TO' => 'Tonga',
'TR' => 'Turquía',
- 'TT' => 'Trindade e Tobago',
+ 'TT' => 'Trinidad e Tobago',
'TV' => 'Tuvalu',
'TW' => 'Taiwán',
'TZ' => 'Tanzania',
'UA' => 'Ucraína',
'UG' => 'Uganda',
- 'UM' => 'Illas Menores Distantes dos EUA.',
+ 'UM' => 'Illas Menores Distantes dos Estados Unidos',
+ 'UN' => 'ONU',
'US' => 'EUA',
- 'UY' => 'Uruguai',
- 'UZ' => 'Uzbekistán',
+ 'UY' => 'O Uruguai',
+ 'UZ' => 'Uzbequistán',
'VA' => 'Cidade do Vaticano',
- 'VC' => 'San Vicente e Granadinas',
+ 'VC' => 'San Vicente e As Granadinas',
'VE' => 'Venezuela',
'VG' => 'Illas Virxes Británicas',
'VI' => 'Illas Virxes Estadounidenses',
@@ -885,112 +1041,214 @@ $countryNames = array(
'WF' => 'Wallis e Futuna',
'WS' => 'Samoa',
'XK' => 'Kosovo',
- 'YE' => 'Iemen',
+ 'YE' => 'O Iemen',
'YT' => 'Mayotte',
- 'ZA' => 'Sudáfrica',
+ 'ZA' => 'Suráfrica',
'ZM' => 'Zambia',
- 'ZW' => 'Cimbabue',
-);
+ 'ZW' => 'Zimbabwe',
+];
-$timeUnits = array(
- 'day-future-one' => 'En {0} día',
- 'day-future-other' => 'En {0} días',
- 'day-narrow-future-one' => 'En {0} d.',
- 'day-narrow-future-other' => 'En {0} d.',
- 'day-narrow-past-one' => 'Hai {0} d.',
- 'day-narrow-past-other' => 'Hai {0} d.',
+$timeUnits = [
+ 'century-one' => '{0} século',
+ 'century-other' => '{0} séculos',
+ 'day-future-one' => 'en {0} día',
+ 'day-future-other' => 'en {0} días',
+ 'day-narrow-future-one' => 'en {0} día',
+ 'day-narrow-future-other' => 'en {0} días',
+ 'day-narrow-past-one' => 'hai {0} día',
+ 'day-narrow-past-other' => 'hai {0} días',
'day-one' => '{0} día',
'day-other' => '{0} días',
- 'day-past-one' => 'Hai {0} día',
- 'day-past-other' => 'Hai {0} días',
- 'hour-future-one' => 'En {0} hora',
- 'hour-future-other' => 'En {0} horas',
- 'hour-narrow-future-one' => 'En {0} h.',
- 'hour-narrow-future-other' => 'en {0} hr.',
- 'hour-narrow-past-one' => 'Hai {0} hr.',
- 'hour-narrow-past-other' => 'Hai {0} hr.',
+ 'day-past-one' => 'hai {0} día',
+ 'day-past-other' => 'hai {0} días',
+ 'day-short-future-one' => 'en {0} día',
+ 'day-short-future-other' => 'en {0} días',
+ 'day-short-past-one' => 'hai {0} día',
+ 'day-short-past-other' => 'hai {0} días',
+ 'fri-future-one' => 'en {0} venres',
+ 'fri-future-other' => 'en {0} venres',
+ 'fri-narrow-future-one' => 'en {0} ven.',
+ 'fri-narrow-future-other' => 'en {0} ven.',
+ 'fri-narrow-past-one' => 'hai {0} ven.',
+ 'fri-narrow-past-other' => 'hai {0} ven.',
+ 'fri-past-one' => 'hai {0} venres',
+ 'fri-past-other' => 'hai {0} venres',
+ 'fri-short-future-one' => 'en {0} ven.',
+ 'fri-short-future-other' => 'en {0} ven.',
+ 'fri-short-past-one' => 'hai {0} ven.',
+ 'fri-short-past-other' => 'hai {0} ven.',
+ 'hour-future-one' => 'en {0} hora',
+ 'hour-future-other' => 'en {0} horas',
+ 'hour-narrow-future-one' => 'en {0} h',
+ 'hour-narrow-future-other' => 'en {0} h',
+ 'hour-narrow-past-one' => 'hai {0} h',
+ 'hour-narrow-past-other' => 'hai {0} h',
'hour-one' => '{0} hora',
'hour-other' => '{0} horas',
- 'hour-past-one' => 'Hai {0} hora',
- 'hour-past-other' => 'Hai {0} horas',
- 'hour-short-future-one' => 'En {0} hr.',
- 'hour-short-future-other' => 'En {0} hr.',
- 'hour-short-past-one' => 'Hai {0} hr.',
- 'hour-short-past-other' => 'Hai {0} hr.',
+ 'hour-past-one' => 'hai {0} hora',
+ 'hour-past-other' => 'hai {0} horas',
+ 'hour-short-future-one' => 'en {0} h',
+ 'hour-short-future-other' => 'en {0} h',
+ 'hour-short-past-one' => 'hai {0} h',
+ 'hour-short-past-other' => 'hai {0} h',
'microsecond-one' => '{0} microsegundo',
'microsecond-other' => '{0} microsegundos',
'millisecond-one' => '{0} milisegundo',
'millisecond-other' => '{0} milisegundos',
- 'minute-future-one' => 'En {0} minuto',
- 'minute-future-other' => 'En {0} minutos',
+ 'minute-future-one' => 'en {0} minuto',
+ 'minute-future-other' => 'en {0} minutos',
+ 'minute-narrow-future-one' => 'en {0} min',
+ 'minute-narrow-future-other' => 'en {0} min',
+ 'minute-narrow-past-one' => 'hai {0} min',
+ 'minute-narrow-past-other' => 'hai {0} min',
'minute-one' => '{0} minuto',
'minute-other' => '{0} minutos',
- 'minute-past-one' => 'Hai {0} minuto',
- 'minute-past-other' => 'Hai {0} minutos',
- 'minute-short-future-one' => 'En {0} min.',
- 'minute-short-future-other' => 'En {0} min.',
- 'minute-short-past-one' => 'Hai {0} min.',
- 'minute-short-past-other' => 'Hai {0} min.',
- 'month-future-one' => 'En {0} mes',
- 'month-future-other' => 'En {0} meses',
+ 'minute-past-one' => 'hai {0} minuto',
+ 'minute-past-other' => 'hai {0} minutos',
+ 'minute-short-future-one' => 'en {0} min',
+ 'minute-short-future-other' => 'en {0} min',
+ 'minute-short-past-one' => 'hai {0} min',
+ 'minute-short-past-other' => 'hai {0} min',
+ 'mon-future-one' => 'en {0} luns',
+ 'mon-future-other' => 'en {0} luns',
+ 'mon-narrow-future-one' => 'en {0} luns',
+ 'mon-narrow-future-other' => 'en {0} luns',
+ 'mon-narrow-past-one' => 'hai {0} luns',
+ 'mon-narrow-past-other' => 'hai {0} luns',
+ 'mon-past-one' => 'hai {0} luns',
+ 'mon-past-other' => 'hai {0} luns',
+ 'mon-short-future-one' => 'en {0} luns',
+ 'mon-short-future-other' => 'en {0} luns',
+ 'mon-short-past-one' => 'hai {0} luns',
+ 'mon-short-past-other' => 'hai {0} luns',
+ 'month-future-one' => 'en {0} mes',
+ 'month-future-other' => 'en {0} meses',
+ 'month-narrow-future-one' => 'en {0} mes',
+ 'month-narrow-future-other' => 'en {0} meses',
+ 'month-narrow-past-one' => 'hai {0} mes',
+ 'month-narrow-past-other' => 'hai {0} meses',
'month-one' => '{0} mes',
'month-other' => '{0} meses',
- 'month-past-one' => 'Hai {0} mes',
- 'month-past-other' => 'Hai {0} meses',
- 'month-short-future-one' => 'En {0} m.',
- 'month-short-future-other' => 'En {0} m.',
- 'month-short-past-one' => 'Hai {0} m.',
- 'month-short-past-other' => 'Hai {0} m.',
+ 'month-past-one' => 'hai {0} mes',
+ 'month-past-other' => 'hai {0} meses',
+ 'month-short-future-one' => 'en {0} mes',
+ 'month-short-future-other' => 'en {0} meses',
+ 'month-short-past-one' => 'hai {0} mes',
+ 'month-short-past-other' => 'hai {0} meses',
'nanosecond-one' => '{0} nanosegundo',
'nanosecond-other' => '{0} nanosegundos',
- 'quarter-future-one' => 'En {0} trimestre',
- 'quarter-future-other' => 'En {0} trimestres',
- 'quarter-narrow-future-one' => 'En {0} trim.',
- 'quarter-narrow-future-other' => 'En {0} trim.',
- 'quarter-narrow-past-one' => 'Hai {0} trim.',
- 'quarter-narrow-past-other' => 'Hai {0} trim.',
- 'quarter-past-one' => 'Hai {0} trimestre',
- 'quarter-past-other' => 'Hai {0} trimestres',
- 'quarter-short-future-one' => 'En {0} trim.',
- 'quarter-short-future-other' => 'En {0} trim.',
- 'quarter-short-past-one' => 'Hai {0} trim.',
- 'quarter-short-past-other' => 'Hai {0} trim.',
- 'second-future-one' => 'En {0} segundo',
- 'second-future-other' => 'En {0} segundos',
- 'second-narrow-future-one' => 'En {0} s.',
- 'second-narrow-future-other' => 'En {0} s.',
- 'second-narrow-past-one' => 'Hai {0} s.',
- 'second-narrow-past-other' => 'Hai {0} s.',
+ 'quarter-future-one' => 'en {0} trimestre',
+ 'quarter-future-other' => 'en {0} trimestres',
+ 'quarter-narrow-future-one' => 'en {0} trim.',
+ 'quarter-narrow-future-other' => 'en {0} trim.',
+ 'quarter-narrow-past-one' => 'hai {0} trim.',
+ 'quarter-narrow-past-other' => 'hai {0} trim.',
+ 'quarter-past-one' => 'hai {0} trimestre',
+ 'quarter-past-other' => 'hai {0} trimestres',
+ 'quarter-short-future-one' => 'en {0} trim.',
+ 'quarter-short-future-other' => 'en {0} trim.',
+ 'quarter-short-past-one' => 'hai {0} trim.',
+ 'quarter-short-past-other' => 'hai {0} trim.',
+ 'sat-future-one' => 'en {0} sábado',
+ 'sat-future-other' => 'en {0} sábados',
+ 'sat-narrow-future-one' => 'en {0} sáb.',
+ 'sat-narrow-future-other' => 'en {0} sáb.',
+ 'sat-narrow-past-one' => 'hai {0} sáb.',
+ 'sat-narrow-past-other' => 'hai {0} sáb.',
+ 'sat-past-one' => 'hai {0} sábado',
+ 'sat-past-other' => 'hai {0} sábados',
+ 'sat-short-future-one' => 'en {0} sáb.',
+ 'sat-short-future-other' => 'en {0} sáb.',
+ 'sat-short-past-one' => 'hai {0} sáb.',
+ 'sat-short-past-other' => 'hai {0} sáb.',
+ 'second-future-one' => 'en {0} segundo',
+ 'second-future-other' => 'en {0} segundos',
+ 'second-narrow-future-one' => 'en {0} s',
+ 'second-narrow-future-other' => 'en {0} s',
+ 'second-narrow-past-one' => 'hai {0} s',
+ 'second-narrow-past-other' => 'hai {0} s',
'second-one' => '{0} segundo',
'second-other' => '{0} segundos',
- 'second-past-one' => 'Hai {0} segundo',
- 'second-past-other' => 'Hai {0} segundos',
- 'second-short-future-one' => 'En {0} seg.',
- 'second-short-future-other' => 'En {0} seg.',
- 'second-short-past-one' => 'Hai {0} seg.',
- 'second-short-past-other' => 'Hai {0} seg.',
- 'week-future-one' => 'En {0} semana',
- 'week-future-other' => 'En {0} semanas',
+ 'second-past-one' => 'hai {0} segundo',
+ 'second-past-other' => 'hai {0} segundos',
+ 'second-short-future-one' => 'en {0} s',
+ 'second-short-future-other' => 'en {0} s',
+ 'second-short-past-one' => 'hai {0} s',
+ 'second-short-past-other' => 'hai {0} s',
+ 'sun-future-one' => 'en {0} domingo',
+ 'sun-future-other' => 'en {0} domingos',
+ 'sun-narrow-future-one' => 'en {0} dom.',
+ 'sun-narrow-future-other' => 'en {0} dom.',
+ 'sun-narrow-past-one' => 'hai {0} dom.',
+ 'sun-narrow-past-other' => 'hai {0} dom.',
+ 'sun-past-one' => 'hai {0} domingo',
+ 'sun-past-other' => 'hai {0} domingos',
+ 'sun-short-future-one' => 'en {0} dom.',
+ 'sun-short-future-other' => 'en {0} dom.',
+ 'sun-short-past-one' => 'hai {0} dom.',
+ 'sun-short-past-other' => 'hai {0} dom.',
+ 'thu-future-one' => 'en {0} xoves',
+ 'thu-future-other' => 'en {0} xoves',
+ 'thu-narrow-future-one' => 'en {0} xov.',
+ 'thu-narrow-future-other' => 'en {0} xov.',
+ 'thu-narrow-past-one' => 'hai {0} xov.',
+ 'thu-narrow-past-other' => 'hai {0} xov.',
+ 'thu-past-one' => 'hai {0} xoves',
+ 'thu-past-other' => 'hai {0} xoves',
+ 'thu-short-future-one' => 'en {0} xov.',
+ 'thu-short-future-other' => 'en {0} xov.',
+ 'thu-short-past-one' => 'hai {0} xov.',
+ 'thu-short-past-other' => 'hai {0} xov.',
+ 'tue-future-one' => 'en {0} martes',
+ 'tue-future-other' => 'en {0} martes',
+ 'tue-narrow-future-one' => 'en {0} mar.',
+ 'tue-narrow-future-other' => 'en {0} mar.',
+ 'tue-narrow-past-one' => 'hai {0} mar.',
+ 'tue-narrow-past-other' => 'hai {0} mar.',
+ 'tue-past-one' => 'hai {0} martes',
+ 'tue-past-other' => 'hai {0} martes',
+ 'tue-short-future-one' => 'en {0} mar.',
+ 'tue-short-future-other' => 'en {0} mar.',
+ 'tue-short-past-one' => 'hai {0} mar.',
+ 'tue-short-past-other' => 'hai {0} mar.',
+ 'wed-future-one' => 'en {0} mércores',
+ 'wed-future-other' => 'en {0} mércores',
+ 'wed-narrow-future-one' => 'en {0} mér.',
+ 'wed-narrow-future-other' => 'en {0} mér.',
+ 'wed-narrow-past-one' => 'hai {0} mér.',
+ 'wed-narrow-past-other' => 'hai {0} mér.',
+ 'wed-past-one' => 'hai {0} mércores',
+ 'wed-past-other' => 'hai {0} mércores',
+ 'wed-short-future-one' => 'en {0} mér.',
+ 'wed-short-future-other' => 'en {0} mér.',
+ 'wed-short-past-one' => 'hai {0} mér.',
+ 'wed-short-past-other' => 'hai {0} mér.',
+ 'week-future-one' => 'en {0} semana',
+ 'week-future-other' => 'en {0} semanas',
+ 'week-narrow-future-one' => 'en {0} sem.',
+ 'week-narrow-future-other' => 'en {0} sem.',
+ 'week-narrow-past-one' => 'hai {0} sem.',
+ 'week-narrow-past-other' => 'hai {0} sem.',
'week-one' => '{0} semana',
'week-other' => '{0} semanas',
- 'week-past-one' => 'Hai {0} semana',
- 'week-past-other' => 'Hai {0} semanas',
- 'week-short-future-one' => 'En {0} sem.',
- 'week-short-future-other' => 'En {0} sem.',
- 'week-short-past-one' => 'Hai {0} sem.',
- 'week-short-past-other' => 'Hai {0} sem.',
- 'year-future-one' => 'En {0} ano',
- 'year-future-other' => 'En {0} anos',
- 'year-narrow-future-one' => 'En {0} anos',
- 'year-narrow-future-other' => 'En {0} anos',
- 'year-narrow-past-one' => 'Hai {0} anos',
- 'year-narrow-past-other' => 'Hai {0} anos',
+ 'week-past-one' => 'hai {0} semana',
+ 'week-past-other' => 'hai {0} semanas',
+ 'week-short-future-one' => 'en {0} sem.',
+ 'week-short-future-other' => 'en {0} sem.',
+ 'week-short-past-one' => 'hai {0} sem.',
+ 'week-short-past-other' => 'hai {0} sem.',
+ 'year-future-one' => 'en {0} ano',
+ 'year-future-other' => 'en {0} anos',
+ 'year-narrow-future-one' => 'en {0} ano',
+ 'year-narrow-future-other' => 'en {0} anos',
+ 'year-narrow-past-one' => 'hai {0} ano',
+ 'year-narrow-past-other' => 'hai {0} anos',
'year-one' => '{0} ano',
'year-other' => '{0} anos',
- 'year-past-one' => 'Hai {0} ano',
- 'year-past-other' => 'Hai {0} anos',
- 'year-short-future-one' => 'En {0} anos',
- 'year-short-future-other' => 'En {0} anos',
- 'year-short-past-one' => 'Hai {0} anos',
- 'year-short-past-other' => 'Hai {0} anos',
-);
+ 'year-past-one' => 'hai {0} ano',
+ 'year-past-other' => 'hai {0} anos',
+ 'year-short-future-one' => 'en {0} ano',
+ 'year-short-future-other' => 'en {0} anos',
+ 'year-short-past-one' => 'hai {0} ano',
+ 'year-short-past-other' => 'hai {0} anos',
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesGsw.php b/MLEB/cldr/CldrNames/CldrNamesGsw.php
index 69a05cf2..4574aff3 100644
--- a/MLEB/cldr/CldrNames/CldrNamesGsw.php
+++ b/MLEB/cldr/CldrNames/CldrNamesGsw.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'Afar',
'ab' => 'Abchasisch',
'ace' => 'Aceh',
@@ -445,9 +445,9 @@ $languageNames = array(
'zun' => 'Zuni-Schpraach',
'zxx' => 'Kän schpraachliche Inhalt',
'zza' => 'Zaza',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'ADP' => 'Andorranischi Peseete',
'AED' => 'UAE Dirham',
'AFA' => 'Afghani (1927–2002)',
@@ -493,8 +493,9 @@ $currencyNames = array(
'BTN' => 'Bhutanische Ngultrum',
'BUK' => 'Birmanische Kyat',
'BWP' => 'Botswanische Pula',
- 'BYB' => 'Belarus-Rubel (alt)',
- 'BYR' => 'Belarus Rubel (nöi)',
+ 'BYB' => 'Belarus-Rubel (1994–1999)',
+ 'BYN' => 'Belarus Rubel',
+ 'BYR' => 'Belarus Rubel (2000–2016)',
'BZD' => 'Belize-Dollar',
'CAD' => 'Kanadische Dollar',
'CDF' => 'Kongolesische Franc',
@@ -598,7 +599,8 @@ $currencyNames = array(
'MMK' => 'Kyat',
'MNT' => 'Tugrik',
'MOP' => 'Pataca',
- 'MRO' => 'Ouguiya',
+ 'MRO' => 'Ouguiya (1973–2017)',
+ 'MRU' => 'Ouguiya',
'MTL' => 'Malteesischi Lira',
'MTP' => 'Malteesischs Pfund',
'MUR' => 'Maurizius-Rupie',
@@ -622,8 +624,8 @@ $currencyNames = array(
'OMR' => 'Rial Omani',
'PAB' => 'Balboa',
'PEI' => 'Peruanische Inti',
- 'PEN' => 'Nöie Sol',
- 'PES' => 'Sol',
+ 'PEN' => 'Sol',
+ 'PES' => 'Sol (1863–1965)',
'PGK' => 'Kina',
'PHP' => 'Philippiinische Peso',
'PKR' => 'Pakischtanischi Rupie',
@@ -655,7 +657,8 @@ $currencyNames = array(
'SRD' => 'Surinamische Dollar',
'SRG' => 'Surinamische Gulde',
'SSP' => 'Süüdsudaneesischs Pfund',
- 'STD' => 'Dobra',
+ 'STD' => 'Dobra (1977–2017)',
+ 'STN' => 'Dobra',
'SUR' => 'Sowjetische Rubel',
'SVC' => 'El-Salvador-Colon',
'SYP' => 'Süürischs Pfund',
@@ -683,7 +686,8 @@ $currencyNames = array(
'UYU' => 'Uruguayische Peso',
'UZS' => 'Usbeekischtan-Sum',
'VEB' => 'Bolivar (1871–2008)',
- 'VEF' => 'Bolivar',
+ 'VEF' => 'Bolivar (2008–2018)',
+ 'VES' => 'Bolivar',
'VND' => 'Dong',
'VUV' => 'Vatu',
'WST' => 'Tala',
@@ -717,16 +721,16 @@ $currencyNames = array(
'ZRN' => 'Nöie Zaire',
'ZRZ' => 'Zaire',
'ZWD' => 'Simbabwe-Dollar',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'ATS' => 'öS',
'CHF' => 'CHF',
'JPY' => '¥',
'USD' => '$',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'Ascension',
'AD' => 'Andorra',
'AE' => 'Veräinigti Arabischi Emirate',
@@ -735,7 +739,6 @@ $countryNames = array(
'AI' => 'Anguilla',
'AL' => 'Albaanie',
'AM' => 'Armeenie',
- 'AN' => 'Niderländischi Antille',
'AO' => 'Angoola',
'AQ' => 'Antarktis',
'AR' => 'Argentiinie',
@@ -981,9 +984,9 @@ $countryNames = array(
'ZA' => 'Süüdafrika',
'ZM' => 'Sambia',
'ZW' => 'Simbabwe',
-);
+];
-$timeUnits = array(
+$timeUnits = [
'day-one' => '{0} Taag',
'day-other' => '{0} Tääg',
'hour-one' => '{0} Schtund',
@@ -1000,4 +1003,4 @@ $timeUnits = array(
'week-other' => '{0} Wuche',
'year-one' => '{0} Jahr',
'year-other' => '{0} Jahr',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesGu.php b/MLEB/cldr/CldrNames/CldrNamesGu.php
index 22bf1d66..dc7552d5 100644
--- a/MLEB/cldr/CldrNames/CldrNamesGu.php
+++ b/MLEB/cldr/CldrNames/CldrNamesGu.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'અફાર',
'ab' => 'અબખાજિયન',
'ace' => 'અચીની',
@@ -22,8 +22,8 @@ $languageNames = array(
'anp' => 'અંગીકા',
'ar' => 'અરબી',
'ar-001' => 'મોડર્ન સ્ટાન્ડર્ડ અરબી',
- 'arc' => 'અર્માઇક',
- 'arn' => 'એરોકૈનિયન',
+ 'arc' => 'એરમૈક',
+ 'arn' => 'મેપુચે',
'arp' => 'અરાપાહો',
'arq' => 'આલ્જેરિયન અરબી',
'arw' => 'અરાવક',
@@ -36,7 +36,6 @@ $languageNames = array(
'awa' => 'અવધી',
'ay' => 'આયમારા',
'az' => 'અઝરબૈજાની',
- 'azb' => 'દક્ષિણ ઝરબૈજાની',
'ba' => 'બશ્કીર',
'bal' => 'બલૂચી',
'ban' => 'બાલિનીસ',
@@ -47,13 +46,14 @@ $languageNames = array(
'bem' => 'બેમ્બા',
'bez' => 'બેના',
'bg' => 'બલ્ગેરિયન',
+ 'bgn' => 'પશ્ચિમી બાલોચી',
'bho' => 'ભોજપુરી',
'bi' => 'બિસ્લામા',
'bik' => 'બિકોલ',
'bin' => 'બિની',
'bla' => 'સિક્સિકા',
'bm' => 'બામ્બારા',
- 'bn' => 'બંગાળી',
+ 'bn' => 'બાંગ્લા',
'bo' => 'તિબેટીયન',
'bpy' => 'બિષ્નુપ્રિયા',
'br' => 'બ્રેટોન',
@@ -62,7 +62,7 @@ $languageNames = array(
'brx' => 'બોડો',
'bs' => 'બોસ્નિયન',
'bua' => 'બુરિયાત',
- 'bug' => 'બગિનીસ',
+ 'bug' => 'બુગિનીસ',
'byn' => 'બ્લિન',
'ca' => 'કતલાન',
'cad' => 'કડ્ડો',
@@ -74,18 +74,19 @@ $languageNames = array(
'ch' => 'કેમોરો',
'chb' => 'ચિબ્ચા',
'chg' => 'છગાતાઇ',
- 'chk' => 'ચૂકીસે',
+ 'chk' => 'ચૂકીસ',
'chm' => 'મારી',
'chn' => 'ચિનૂક જાર્ગન',
'cho' => 'ચોક્તૌ',
'chp' => 'શિપેવ્યાન',
'chr' => 'શેરોકી',
'chy' => 'શેયેન્ન',
- 'ckb' => 'સોરાની કુર્દિશ',
+ 'ckb' => 'સેન્ટ્રલ કુર્દિશ',
'co' => 'કોર્સિકન',
'cop' => 'કોપ્ટિક',
'cr' => 'ક્રી',
'crh' => 'ક્રિમિયન તુર્કી',
+ 'crs' => 'સેસેલ્વા ક્રેઓલે ફ્રેન્ચ',
'cs' => 'ચેક',
'csb' => 'કાશુબિયન',
'cu' => 'ચર્ચ સ્લાવિક',
@@ -98,19 +99,20 @@ $languageNames = array(
'de' => 'જર્મન',
'de-at' => 'ઓસ્ટ્રિઅન જર્મન',
'de-ch' => 'સ્વિસ હાય જર્મન',
- 'del' => 'દેલેવેર',
+ 'del' => 'દેલવેર',
'den' => 'સ્લેવ',
'dgr' => 'ડોગ્રિબ',
'din' => 'દિન્કા',
'dje' => 'ઝર્મા',
'doi' => 'ડોગ્રી',
- 'dsb' => 'નિમ્ન સોર્બિયન',
+ 'dsb' => 'લોઅર સોર્બિયન',
'dua' => 'દુઆલા',
'dum' => 'મધ્ય ડચ',
'dv' => 'દિવેહી',
'dyo' => 'જોલા-ફોન્યી',
'dyu' => 'ડ્યુલા',
'dz' => 'ડ્ઝોંગ્ખા',
+ 'dzg' => 'દાઝાગા',
'ebu' => 'ઍમ્બુ',
'ee' => 'ઈવ',
'efi' => 'એફિક',
@@ -138,25 +140,27 @@ $languageNames = array(
'ff' => 'ફુલાહ',
'fi' => 'ફિનિશ',
'fil' => 'ફિલિપિનો',
- 'fj' => 'ફિજીયન',
+ 'fj' => 'ફીજીયન',
'fo' => 'ફોરિસ્ત',
'fon' => 'ફોન',
'fr' => 'ફ્રેન્ચ',
'fr-ca' => 'કેનેડિયન ફ્રેંચ',
'fr-ch' => 'સ્વિસ ફ્રેંચ',
+ 'frc' => 'કાજૂન ફ્રેન્ચ',
'frm' => 'મિડિલ ફ્રેંચ',
'fro' => 'જૂની ફ્રેંચ',
- 'frr' => 'નોર્ધર્ન ફ્રિશિયન',
+ 'frr' => 'ઉત્તરીય ફ્રિશિયન',
'frs' => 'પૂર્વ ફ્રિશિયન',
'fur' => 'ફ્રિયુલિયાન',
- 'fy' => 'પશ્ચિમી ફ્રિશિયન',
+ 'fy' => 'પશ્ચિમી ફ્રિસિયન',
'ga' => 'આઇરિશ',
- 'gaa' => 'Ga',
+ 'gaa' => 'ગા',
'gag' => 'ગાગાઝ',
+ 'gan' => 'gan',
'gay' => 'ગાયો',
'gba' => 'બાયા',
'gbz' => 'ઝોરોસ્ટ્રિઅન દારી',
- 'gd' => 'સ્કોટ્સ ગેલિક',
+ 'gd' => 'સ્કોટીસ ગેલિક',
'gez' => 'ગીઝ',
'gil' => 'જિલ્બરટીઝ',
'gl' => 'ગેલિશિયન',
@@ -176,23 +180,26 @@ $languageNames = array(
'gwi' => 'ગ્વિચ’ઇન',
'ha' => 'હૌસા',
'hai' => 'હૈડા',
- 'haw' => 'હાવાઇયન',
+ 'hak' => 'hak',
+ 'haw' => 'હવાઇયન',
'he' => 'હીબ્રુ',
'hi' => 'હિન્દી',
'hif' => 'ફીજી હિંદી',
'hil' => 'હિલિગેનોન',
'hit' => 'હિટ્ટિતે',
- 'hmn' => 'મોંગ',
+ 'hmn' => 'હમોંગ',
'ho' => 'હિરી મોટૂ',
'hr' => 'ક્રોએશિયન',
- 'hsb' => 'અપ્પર સોર્બિયન',
- 'ht' => 'હૈતીયન',
+ 'hsb' => 'અપર સોર્બિયન',
+ 'hsn' => 'hsn',
+ 'ht' => 'હૈતિઅન ક્રેઓલે',
'hu' => 'હંગેરિયન',
'hup' => 'હૂપા',
'hy' => 'આર્મેનિયન',
'hz' => 'હેરેરો',
'ia' => 'ઇંટરલિંગુઆ',
'iba' => 'ઇબાન',
+ 'ibb' => 'ઇબિબિઓ',
'id' => 'ઇન્ડોનેશિયન',
'ie' => 'ઇંટરલિંગ',
'ig' => 'ઇગ્બો',
@@ -200,7 +207,7 @@ $languageNames = array(
'ik' => 'ઇનુપિયાક',
'ilo' => 'ઇલોકો',
'inh' => 'ઇંગુશ',
- 'io' => 'ઇડૌ',
+ 'io' => 'ઈડો',
'is' => 'આઇસલેન્ડિક',
'it' => 'ઇટાલિયન',
'iu' => 'ઇનુકિટૂટ',
@@ -211,7 +218,7 @@ $languageNames = array(
'jpr' => 'જુદેઓ-પર્શિયન',
'jrb' => 'જુદેઓ-અરબી',
'jv' => 'જાવાનીસ',
- 'ka' => 'જ્યોર્જિઅન',
+ 'ka' => 'જ્યોર્જિયન',
'kaa' => 'કારા-કલ્પક',
'kab' => 'કબાઇલ',
'kac' => 'કાચિન',
@@ -230,6 +237,7 @@ $languageNames = array(
'ki' => 'કિકુયૂ',
'kj' => 'ક્વાન્યામા',
'kk' => 'કઝાખ',
+ 'kkj' => 'કાકો',
'kl' => 'કલાલ્લિસુત',
'kln' => 'કલેજિન',
'km' => 'ખ્મેર',
@@ -247,6 +255,7 @@ $languageNames = array(
'ks' => 'કાશ્મીરી',
'ksb' => 'શમ્બાલા',
'ksf' => 'બફિયા',
+ 'ksh' => 'કોલોગ્નિયન',
'ku' => 'કુર્દિશ',
'kum' => 'કુમીક',
'kut' => 'કુતેનાઇ',
@@ -265,16 +274,18 @@ $languageNames = array(
'li' => 'લિંબૂર્ગિશ',
'lkt' => 'લાકોટા',
'ln' => 'લિંગાલા',
- 'lo' => 'લાઓથિયન',
- 'lol' => 'મોગો',
+ 'lo' => 'લાઓ',
+ 'lol' => 'મોંગો',
+ 'lou' => 'લ્યુઇસિયાના ક્રેઓલ',
'loz' => 'લોઝી',
- 'lt' => 'લિથુનિયન',
- 'lu' => 'લ્યૂબા કટાંગા',
- 'lua' => 'લ્યૂબા-લુલુઆ',
+ 'lrc' => 'ઉત્તરી લુરી',
+ 'lt' => 'લિથુઆનિયન',
+ 'lu' => 'લૂબા-કટાંગા',
+ 'lua' => 'લૂબા-લુલુઆ',
'lui' => 'લુઇસેનો',
'lun' => 'લુન્ડા',
'luo' => 'લ્યુઓ',
- 'lus' => 'લુશાઇ',
+ 'lus' => 'મિઝો',
'luy' => 'લુઈયા',
'lv' => 'લાતવિયન',
'mad' => 'માદુરીસ',
@@ -284,12 +295,12 @@ $languageNames = array(
'man' => 'મન્ડિન્ગો',
'mas' => 'મસાઇ',
'mdf' => 'મોક્ષ',
- 'mdr' => 'મંડાર',
+ 'mdr' => 'મંદાર',
'men' => 'મેન્ડે',
'mer' => 'મેરુ',
'mfe' => 'મોરીસ્યેન',
'mg' => 'મલાગસી',
- 'mga' => 'મિડિલ આઇરિશ',
+ 'mga' => 'મધ્ય આઈરિશ',
'mgh' => 'માખુવા-મીટ્ટુ',
'mgo' => 'મેતા',
'mh' => 'માર્શલીઝ',
@@ -308,33 +319,37 @@ $languageNames = array(
'ms' => 'મલય',
'mt' => 'માલ્ટિઝ',
'mua' => 'મુનડાન્ગ',
- 'mul' => 'બહુવિધ ભાષા',
+ 'mul' => 'બહુવિધ ભાષાઓ',
'mus' => 'ક્રિક',
'mwl' => 'મિરાંડી',
'mwr' => 'મારવાડી',
'my' => 'બર્મીઝ',
'myv' => 'એર્ઝયા',
+ 'mzn' => 'મઝાન્દેરાની',
'na' => 'નાઉરૂ',
+ 'nan' => 'nan',
'nap' => 'નેપોલિટાન',
'naq' => 'નમા',
- 'nb' => 'નોર્વેજીયન બોકમાલ',
- 'nd' => 'ઉતર દેબેલ',
+ 'nb' => 'નોર્વેજિયન બોકમાલ',
+ 'nd' => 'ઉત્તર દેબેલ',
'nds' => 'લો જર્મન',
+ 'nds-nl' => 'લો સેક્સોન',
'ne' => 'નેપાળી',
- 'new' => 'નેવાડી',
+ 'new' => 'નેવારી',
'ng' => 'ડોન્ગા',
'nia' => 'નિયાસ',
'niu' => 'નિયુઆન',
'nl' => 'ડચ',
'nl-be' => 'ફ્લેમિશ',
'nmg' => 'ક્વાસિઓ',
- 'nn' => 'નૉર્વેજીયન નાયનૉર્સ્ક',
+ 'nn' => 'નોર્વેજિયન નાયનૉર્સ્ક',
+ 'nnh' => 'નીએમબુન',
'no' => 'નૉર્વેજીયન',
'nog' => 'નોગાઇ',
'non' => 'જૂની નોર્સ',
'nqo' => 'એન’કો',
'nr' => 'દક્ષિણ દેબેલ',
- 'nso' => 'ઉતરી સોથો',
+ 'nso' => 'ઉત્તરી સોથો',
'nus' => 'નુએર',
'nv' => 'નાવાજો',
'nwc' => 'પરંપરાગત નેવારી',
@@ -344,7 +359,7 @@ $languageNames = array(
'nyo' => 'ન્યોરો',
'nzi' => 'ન્ઝિમા',
'oc' => 'ઓક્સિટન',
- 'oj' => 'ઓઝિંબ્વા',
+ 'oj' => 'ઓજિબ્વા',
'om' => 'ઓરોમો',
'or' => 'ઉડિયા',
'os' => 'ઓસ્સેટિક',
@@ -356,11 +371,13 @@ $languageNames = array(
'pam' => 'પમ્પાન્ગા',
'pap' => 'પાપિયામેન્ટો',
'pau' => 'પલાઉઆન',
+ 'pcm' => 'નાઇજેરિયન પીજીન',
'peo' => 'જૂની ફારસી',
'phn' => 'ફોનિશિયન',
'pi' => 'પાલી',
'pl' => 'પોલીશ',
'pon' => 'પોહપિએન',
+ 'prg' => 'પ્રુસ્સીયન',
'pro' => 'જુની પ્રોવેન્સલ',
'ps' => 'પશ્તો',
'pt' => 'પોર્ટુગીઝ',
@@ -383,17 +400,19 @@ $languageNames = array(
'rwk' => 'રવા',
'sa' => 'સંસ્કૃત',
'sad' => 'સોંડવે',
- 'sah' => 'યાકૂત',
+ 'sah' => 'સખા',
'sam' => 'સામરિટાન અરેમિક',
'saq' => 'સમ્બુરુ',
'sas' => 'સાસાક',
'sat' => 'સંતાલી',
+ 'sba' => 'ન્ગામ્બેય',
'sbp' => 'સાંગુ',
'sc' => 'સાર્દિનિયન',
'scn' => 'સિસિલિયાન',
'sco' => 'સ્કોટ્સ',
'sd' => 'સિંધી',
- 'se' => 'ઉત્તરીય સામી',
+ 'sdh' => 'સર્ઘન કુર્દીશ',
+ 'se' => 'ઉત્તરી સામી',
'seh' => 'સેના',
'sel' => 'સેલ્કપ',
'ses' => 'કોયરાબોરો સેન્ની',
@@ -407,8 +426,8 @@ $languageNames = array(
'sk' => 'સ્લોવૅક',
'sl' => 'સ્લોવેનિયન',
'sm' => 'સામોન',
- 'sma' => 'દક્ષિણ સામી',
- 'smj' => 'લ્યુલ સામી',
+ 'sma' => 'દક્ષિણી સામી',
+ 'smj' => 'લુલે સામી',
'smn' => 'ઇનારી સામી',
'sms' => 'સ્કોલ્ટ સામી',
'sn' => 'શોના',
@@ -420,15 +439,16 @@ $languageNames = array(
'srn' => 'સ્રાનન ટોન્ગો',
'srr' => 'સેરેર',
'ss' => 'સ્વાતી',
- 'st' => 'સદર્ન સોથો',
+ 'ssy' => 'સાહો',
+ 'st' => 'દક્ષિણ સોથો',
'su' => 'સંડેનીઝ',
'suk' => 'સુકુમા',
'sus' => 'સુસુ',
'sux' => 'સુમેરિયન',
'sv' => 'સ્વીડિશ',
'sw' => 'સ્વાહિલી',
+ 'sw-cd' => 'કોંગો સ્વાહિલી',
'swb' => 'કોમોરિયન',
- 'swc' => 'કોંગો સ્વાહિલી',
'syc' => 'પરંપરાગત સિરિએક',
'syr' => 'સિરિએક',
'ta' => 'તમિલ',
@@ -447,13 +467,14 @@ $languageNames = array(
'tkl' => 'તોકેલાઉ',
'tl' => 'ટાગાલોગ',
'tlh' => 'ક્લિન્ગોન',
- 'tli' => 'લિંગિત',
+ 'tli' => 'ક્લીન્ગકિટ',
'tmh' => 'તામાશેખ',
'tn' => 'ત્સ્વાના',
'to' => 'ટોંગાન',
'tog' => 'ન્યાસા ટોન્ગા',
'tpi' => 'ટોક પિસિન',
- 'tr' => 'ટર્કીશ',
+ 'tr' => 'ટર્કિશ',
+ 'trv' => 'ટારોકો',
'ts' => 'સોંગા',
'tsi' => 'સિમ્શિયન',
'tt' => 'તતાર',
@@ -464,7 +485,7 @@ $languageNames = array(
'twq' => 'તસાવાક',
'ty' => 'તાહિતિયન',
'tyv' => 'ટુવીનિયન',
- 'tzm' => 'સેન્ટ્રલ ઍટ્લસ તામાઝિગ્ટ',
+ 'tzm' => 'સેન્ટ્રલ એટલાસ તામાઝિટ',
'udm' => 'ઉદમુર્ત',
'ug' => 'ઉઇગુર',
'uga' => 'યુગેરિટિક',
@@ -480,15 +501,20 @@ $languageNames = array(
'vot' => 'વોટિક',
'vun' => 'વુન્જો',
'wa' => 'વાલૂન',
- 'wal' => 'વલામો',
- 'war' => 'વારે',
+ 'wae' => 'વેલ્સેર',
+ 'wal' => 'વોલાયટ્ટા',
+ 'war' => 'વારેય',
'was' => 'વાશો',
+ 'wbp' => 'વાર્લ્પીરી',
'wo' => 'વોલોફ',
+ 'wuu' => 'wuu',
'xal' => 'કાલ્મિક',
'xh' => 'ખોસા',
'xog' => 'સોગા',
'yao' => 'યાઓ',
'yap' => 'યાપીસ',
+ 'yav' => 'યાન્ગબેન',
+ 'ybb' => 'યેમ્બા',
'yi' => 'યિદ્દિશ',
'yo' => 'યોરૂબા',
'yue' => 'કેંટોનીઝ',
@@ -496,7 +522,7 @@ $languageNames = array(
'zap' => 'ઝેપોટેક',
'zbl' => 'બ્લિસિમ્બોલ્સ',
'zen' => 'ઝેનાગા',
- 'zgh' => 'પ્રમાણભૂત મોરોક્કન ટમાઝિટ',
+ 'zgh' => 'માનક મોરોક્કન તામાઝિટ',
'zh' => 'ચાઇનીઝ',
'zh-hans' => 'સરળીકૃત ચાઇનીઝ',
'zh-hant' => 'પારંપરિક ચાઇનીઝ',
@@ -504,9 +530,9 @@ $languageNames = array(
'zun' => 'ઝૂની',
'zxx' => 'કોઇ ભાષાશાસ્ત્રીય સામગ્રી નથી',
'zza' => 'ઝાઝા',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'AED' => 'યુનાઈટેડ આરબ અમિરાત દિરહામ',
'AFN' => 'અફ્ગાન અફ્ગાની',
'ALL' => 'અલ્બેનિયન લેક',
@@ -530,12 +556,14 @@ $currencyNames = array(
'BSD' => 'બહામિયન ડોલર',
'BTN' => 'ભુતાનિઝ એંગુલ્ત્રમ',
'BWP' => 'બોત્સવાનન પુલા',
- 'BYR' => 'બેલારુશિયન રૂબલ',
+ 'BYN' => 'બેલારુશિયન રૂબલ',
+ 'BYR' => 'બેલારુશિયન રૂબલ (2000–2016)',
'BZD' => 'બેલિઝ ડોલર',
'CAD' => 'કેનેડિયન ડૉલર',
'CDF' => 'કોંગોલિઝ ફ્રેંક',
'CHF' => 'સ્વિસ ફ્રેંક',
'CLP' => 'ચિલિઅન પેસો',
+ 'CNH' => 'ચાઇનીઝ યુઆન (ઑફશોર)',
'CNY' => 'ચાઇનિઝ યુઆન',
'COP' => 'કોલમ્બિયન પેસો',
'CRC' => 'કોસ્ટા રિકન કોલોન',
@@ -553,7 +581,7 @@ $currencyNames = array(
'EUR' => 'યુરો',
'FJD' => 'ફિજિઅન ડોલર',
'FKP' => 'ફૉકલેન્ડ આઇલેંડ્સ પાઉન્ડ',
- 'GBP' => 'બ્રિટિશ પાઉન્ડ સ્ટર્લિંગ',
+ 'GBP' => 'બ્રિટિશ પાઉન્ડ',
'GEL' => 'જ્યોર્જિઅન લારી',
'GHS' => 'ઘાનાઇયન સેડી',
'GIP' => 'જીબ્રાલ્ટર પાઉન્ડ',
@@ -599,7 +627,8 @@ $currencyNames = array(
'MMK' => 'મ્યાંમાર ક્યાત',
'MNT' => 'મોંગોલિયન ટગરિક',
'MOP' => 'માકાનિઝ પતાકા',
- 'MRO' => 'મોરીશેનિયન ઓગુયા',
+ 'MRO' => 'મોરીશેનિયન ઓગુયા (1973–2017)',
+ 'MRU' => 'મોરીશેનિયન ઓગુયા',
'MUR' => 'મોરેશીઅન રૂપી',
'MVR' => 'માલ્દિવિયન રુફિયા',
'MWK' => 'માલાવિયન ક્વાચા',
@@ -614,7 +643,7 @@ $currencyNames = array(
'NZD' => 'ન્યૂઝિલેંડ ડૉલર',
'OMR' => 'ઓમાની રિયાલ',
'PAB' => 'પનામેનિયન બાલ્બોઆ',
- 'PEN' => 'પેરુવિયન ન્યુવો સોલ',
+ 'PEN' => 'પેરુવિયન સોલ',
'PGK' => 'પાપુઆ ન્યૂ ગિનીયન કિના',
'PHP' => 'ફિલીપાઇન પેસો',
'PKR' => 'પાકિસ્તાની રૂપી',
@@ -623,7 +652,7 @@ $currencyNames = array(
'QAR' => 'કતારી રિયાલ',
'RON' => 'રોમાનિયન લેઉ',
'RSD' => 'સર્બિયન દિનાર',
- 'RUB' => 'રશિયન રબલ',
+ 'RUB' => 'રશિયન રૂબલ',
'RWF' => 'રવાંડન ફ્રેંક',
'SAR' => 'સાઉદી રિયાલ',
'SBD' => 'સોલોમન આઇલેંડ્સ ડોલર',
@@ -636,7 +665,8 @@ $currencyNames = array(
'SOS' => 'સોમાલી શિલિંગ',
'SRD' => 'સૂરીનામિઝ ડોલર',
'SSP' => 'દક્ષિણ સુદાનિઝ પાઉન્ડ',
- 'STD' => 'સાઓ ટૉમ એન્ડ પ્રિંસાઇપ ડોબ્રા',
+ 'STD' => 'સાઓ ટૉમ એન્ડ પ્રિંસાઇપ ડોબ્રા (1977–2017)',
+ 'STN' => 'સાઓ ટૉમ એન્ડ પ્રિંસાઇપ ડોબ્રા',
'SYP' => 'સાઇરિયન પાઉન્ડ',
'SZL' => 'સ્વાઝી લિલાન્ગેની',
'THB' => 'થાઇ બાહ્ત',
@@ -653,22 +683,23 @@ $currencyNames = array(
'USD' => 'યુઍસ ડોલર',
'UYU' => 'ઉરુગ્વેયન પેસો',
'UZS' => 'ઉઝ્બેકિસ્તાન સોમ',
- 'VEF' => 'વેનેઝુએલન બોલિવર',
+ 'VEF' => 'વેનેઝુએલન બોલિવર (2008–2018)',
+ 'VES' => 'વેનેઝુએલન બોલિવર',
'VND' => 'વિયેતનામીસ ડોંગ',
'VUV' => 'વનૌતુ વાતુ',
'WST' => 'સમોઅન તાલા',
- 'XAF' => '[CFA] ફ્રેંક [BEAC]',
+ 'XAF' => 'મધ્ય આફ્રિકન [CFA] ફ્રેંક',
'XCD' => 'ઇસ્ટ કેરિબિયન ડોલર',
- 'XOF' => '[CFA] ફ્રેંક [BCEAO]',
+ 'XOF' => 'પશ્ચિમી આફ્રિકન [CFA] ફ્રેંક',
'XPF' => '[CFP] ફ્રેંક',
'XXX' => 'અજ્ઞાત ચલણ',
'YER' => 'યેમેની રિઆલ',
'ZAR' => 'દક્ષિણ આફ્રિકી રેંડ',
'ZMK' => 'ઝામ્બિયન ક્વાચા (1968–2012)',
'ZMW' => 'ઝામ્બિયન ક્વાચા',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'AED' => 'AED',
'AFN' => 'AFN',
'ALL' => 'ALL',
@@ -692,12 +723,14 @@ $currencySymbols = array(
'BSD' => 'BSD',
'BTN' => 'BTN',
'BWP' => 'BWP',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CA$',
'CDF' => 'CDF',
'CHF' => 'CHF',
'CLP' => 'CLP',
+ 'CNH' => 'CNH',
'CNY' => 'CN¥',
'COP' => 'COP',
'CRC' => 'CRC',
@@ -761,6 +794,7 @@ $currencySymbols = array(
'MNT' => 'MNT',
'MOP' => 'MOP',
'MRO' => 'MRO',
+ 'MRU' => 'MRU',
'MUR' => 'MUR',
'MVR' => 'MVR',
'MWK' => 'MWK',
@@ -798,6 +832,7 @@ $currencySymbols = array(
'SRD' => 'SRD',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'STN',
'SYP' => 'SYP',
'SZL' => 'SZL',
'THB' => '฿',
@@ -815,6 +850,7 @@ $currencySymbols = array(
'UYU' => 'UYU',
'UZS' => 'UZS',
'VEF' => 'VEF',
+ 'VES' => 'VES',
'VND' => '₫',
'VUV' => 'VUV',
'WST' => 'WST',
@@ -825,29 +861,28 @@ $currencySymbols = array(
'YER' => 'YER',
'ZAR' => 'ZAR',
'ZMW' => 'ZMW',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'એસેન્શન આઇલેન્ડ',
'AD' => 'ઍંડોરા',
'AE' => 'યુનાઇટેડ આરબ અમીરાત',
'AF' => 'અફઘાનિસ્તાન',
- 'AG' => 'એન્ટીગુઆ અને બરબુડા',
+ 'AG' => 'ઍન્ટિગુઆ અને બર્મુડા',
'AI' => 'ઍંગ્વિલા',
'AL' => 'અલ્બેનિયા',
'AM' => 'આર્મેનિયા',
- 'AN' => 'નેધરલેંડ્સ એંટિલેસ',
'AO' => 'અંગોલા',
'AQ' => 'એન્ટાર્કટિકા',
'AR' => 'આર્જેન્ટીના',
- 'AS' => 'અમેરીકન સમોઆ',
+ 'AS' => 'અમેરિકન સમોઆ',
'AT' => 'ઑસ્ટ્રિયા',
'AU' => 'ઑસ્ટ્રેલિયા',
'AW' => 'અરુબા',
- 'AX' => 'એલેંડ આઇલેન્ડ્સ',
+ 'AX' => 'ઑલેન્ડ આઇલેન્ડ્સ',
'AZ' => 'અઝરબૈજાન',
'BA' => 'બોસ્નિયા અને હર્ઝેગોવિના',
- 'BB' => 'બાર્બાડોસ',
+ 'BB' => 'બારબાડોસ',
'BD' => 'બાંગ્લાદેશ',
'BE' => 'બેલ્જીયમ',
'BF' => 'બુર્કિના ફાસો',
@@ -855,7 +890,7 @@ $countryNames = array(
'BH' => 'બેહરીન',
'BI' => 'બુરુંડી',
'BJ' => 'બેનિન',
- 'BL' => 'સેંટ બાર્થલેમી',
+ 'BL' => 'સેંટ બાર્થેલેમી',
'BM' => 'બર્મુડા',
'BN' => 'બ્રુનેઇ',
'BO' => 'બોલિવિયા',
@@ -870,10 +905,10 @@ $countryNames = array(
'CA' => 'કેનેડા',
'CC' => 'કોકોઝ (કીલીંગ) આઇલેન્ડ્સ',
'CD' => 'કોંગો - કિંશાસા',
- 'CF' => 'સેંટ્રલ આફ્રિકન રીપબ્લિક',
+ 'CF' => 'સેન્ટ્રલ આફ્રિકન રિપબ્લિક',
'CG' => 'કોંગો - બ્રાઝાવિલે',
'CH' => 'સ્વિટ્ઝર્લૅન્ડ',
- 'CI' => 'કોટ ડી આઇવરી',
+ 'CI' => 'કોટ ડીઆઇવરી',
'CK' => 'કુક આઇલેન્ડ્સ',
'CL' => 'ચિલી',
'CM' => 'કૅમરૂન',
@@ -883,16 +918,16 @@ $countryNames = array(
'CR' => 'કોસ્ટા રિકા',
'CU' => 'ક્યુબા',
'CV' => 'કૅપ વર્ડે',
- 'CW' => 'કુરાકાઓ',
+ 'CW' => 'ક્યુરાસાઓ',
'CX' => 'ક્રિસમસ આઇલેન્ડ',
'CY' => 'સાયપ્રસ',
- 'CZ' => 'ચેક રીપબ્લિક',
+ 'CZ' => 'ચેકીયા',
'DE' => 'જર્મની',
'DG' => 'ડિએગો ગારસિઆ',
'DJ' => 'જીબૌટી',
'DK' => 'ડેનમાર્ક',
'DM' => 'ડોમિનિકા',
- 'DO' => 'ડોમિનિકન રીપબ્લિક',
+ 'DO' => 'ડોમિનિકન રિપબ્લિક',
'DZ' => 'અલ્જીરિયા',
'EA' => 'સ્યુટા અને મેલિલા',
'EC' => 'એક્વાડોર',
@@ -903,16 +938,17 @@ $countryNames = array(
'ES' => 'સ્પેન',
'ET' => 'ઇથિઓપિયા',
'EU' => 'યુરોપિયન સંઘ',
+ 'EZ' => 'યુરોઝોન',
'FI' => 'ફિનલેન્ડ',
'FJ' => 'ફીજી',
'FK' => 'ફૉકલેન્ડ આઇલેન્ડ્સ',
'FM' => 'માઇક્રોનેશિયા',
- 'FO' => 'ફૅરો આઇલેન્ડ્સ',
+ 'FO' => 'ફેરો આઇલેન્ડ્સ',
'FR' => 'ફ્રાંસ',
'GA' => 'ગેબન',
'GB' => 'યુ.કે.',
'GD' => 'ગ્રેનેડા',
- 'GE' => 'જ્યોર્જીયા',
+ 'GE' => 'જ્યોર્જિયા',
'GF' => 'ફ્રેંચ ગયાના',
'GG' => 'ગ્વેર્નસે',
'GH' => 'ઘાના',
@@ -923,12 +959,12 @@ $countryNames = array(
'GP' => 'ગ્વાડેલોપ',
'GQ' => 'ઇક્વેટોરિયલ ગિની',
'GR' => 'ગ્રીસ',
- 'GS' => 'દક્ષિણ જ્યોર્જીયા અને દક્ષિણ સેન્ડવિચ આઇલેન્ડ્સ',
+ 'GS' => 'દક્ષિણ જ્યોર્જિયા અને દક્ષિણ સેન્ડવિચ આઇલેન્ડ્સ',
'GT' => 'ગ્વાટેમાલા',
'GU' => 'ગ્વામ',
'GW' => 'ગિની-બિસાઉ',
'GY' => 'ગયાના',
- 'HK' => 'હોંગ કોંગ',
+ 'HK' => 'હોંગકોંગ',
'HM' => 'હર્ડ અને મેકડોનાલ્ડ આઇલેન્ડ્સ',
'HN' => 'હોન્ડુરસ',
'HR' => 'ક્રોએશિયા',
@@ -936,9 +972,9 @@ $countryNames = array(
'HU' => 'હંગેરી',
'IC' => 'કૅનેરી આઇલેન્ડ્સ',
'ID' => 'ઇન્ડોનેશિયા',
- 'IE' => 'આયર્લેંડ',
+ 'IE' => 'આયર્લેન્ડ',
'IL' => 'ઇઝરાઇલ',
- 'IM' => 'આઈલ ઓફ મૅન',
+ 'IM' => 'આઇલ ઑફ મેન',
'IN' => 'ભારત',
'IO' => 'બ્રિટિશ ઇન્ડિયન ઓશન ટેરિટરી',
'IQ' => 'ઇરાક',
@@ -954,11 +990,11 @@ $countryNames = array(
'KH' => 'કંબોડિયા',
'KI' => 'કિરિબાટી',
'KM' => 'કોમોરસ',
- 'KN' => 'સેંટ કિટ્સ એંડ નેવિસ',
+ 'KN' => 'સેંટ કિટ્સ અને નેવિસ',
'KP' => 'ઉત્તર કોરિયા',
'KR' => 'દક્ષિણ કોરિયા',
'KW' => 'કુવૈત',
- 'KY' => 'કેયમેન આઇલેન્ડ્સ',
+ 'KY' => 'કેમેન આઇલેન્ડ્સ',
'KZ' => 'કઝાકિસ્તાન',
'LA' => 'લાઓસ',
'LB' => 'લેબનોન',
@@ -974,7 +1010,7 @@ $countryNames = array(
'MA' => 'મોરોક્કો',
'MC' => 'મોનાકો',
'MD' => 'મોલડોવા',
- 'ME' => 'મૉન્ટેંનેગ્રો',
+ 'ME' => 'મૉન્ટેનેગ્રો',
'MF' => 'સેંટ માર્ટિન',
'MG' => 'મેડાગાસ્કર',
'MH' => 'માર્શલ આઇલેન્ડ્સ',
@@ -983,7 +1019,7 @@ $countryNames = array(
'MM' => 'મ્યાંમાર (બર્મા)',
'MN' => 'મંગોલિયા',
'MO' => 'મકાઉ',
- 'MP' => 'ઉત્તરીય મારિયાના આઇલેન્ડ્સ',
+ 'MP' => 'ઉત્તરી મારિયાના આઇલેન્ડ્સ',
'MQ' => 'માર્ટીનીક',
'MR' => 'મૌરિટાનિયા',
'MS' => 'મોંટસેરાત',
@@ -997,10 +1033,10 @@ $countryNames = array(
'NA' => 'નામિબિયા',
'NC' => 'ન્યુ સેલેડોનિયા',
'NE' => 'નાઇજર',
- 'NF' => 'નોરફૉક આઇલેન્ડ',
- 'NG' => 'નાઇજીરીયા',
+ 'NF' => 'નોરફોક આઇલેન્ડ્સ',
+ 'NG' => 'નાઇજેરિયા',
'NI' => 'નિકારાગુઆ',
- 'NL' => 'નેધરલેન્ડ',
+ 'NL' => 'નેધરલેન્ડ્સ',
'NO' => 'નૉર્વે',
'NP' => 'નેપાળ',
'NR' => 'નૌરુ',
@@ -1011,10 +1047,10 @@ $countryNames = array(
'PE' => 'પેરુ',
'PF' => 'ફ્રેંચ પોલિનેશિયા',
'PG' => 'પાપુઆ ન્યૂ ગિની',
- 'PH' => 'ફિલીપાઇન્સ',
+ 'PH' => 'ફિલિપિન્સ',
'PK' => 'પાકિસ્તાન',
'PL' => 'પોલેંડ',
- 'PM' => 'સેંટ પીએરે એન્ડ મિકીલોન',
+ 'PM' => 'સેંટ પીએરી અને મિક્યુલોન',
'PN' => 'પીટકૈર્ન આઇલેન્ડ્સ',
'PR' => 'પ્યુઅર્ટો રિકો',
'PS' => 'પેલેસ્ટાઇન',
@@ -1022,7 +1058,7 @@ $countryNames = array(
'PW' => 'પલાઉ',
'PY' => 'પેરાગ્વે',
'QA' => 'કતાર',
- 'QO' => 'આઉટલાયિંગ ઓશનિયા',
+ 'QO' => 'આઉટલાઈન્ગ ઓશનિયા',
'RE' => 'રીયુનિયન',
'RO' => 'રોમાનિયા',
'RS' => 'સર્બિયા',
@@ -1030,13 +1066,13 @@ $countryNames = array(
'RW' => 'રવાંડા',
'SA' => 'સાઉદી અરેબિયા',
'SB' => 'સોલોમન આઇલેન્ડ્સ',
- 'SC' => 'શેશેલ્સ',
+ 'SC' => 'સેશેલ્સ',
'SD' => 'સુદાન',
'SE' => 'સ્વીડન',
'SG' => 'સિંગાપુર',
'SH' => 'સેંટ હેલેના',
'SI' => 'સ્લોવેનિયા',
- 'SJ' => 'સ્વાલબર્ડ એન્ડ જેન મેયન',
+ 'SJ' => 'સ્વાલબર્ડ અને જેન મેયન',
'SK' => 'સ્લોવેકિયા',
'SL' => 'સીએરા લેઓન',
'SM' => 'સૅન મેરિનો',
@@ -1050,9 +1086,9 @@ $countryNames = array(
'SY' => 'સીરિયા',
'SZ' => 'સ્વાઝિલેન્ડ',
'TA' => 'ત્રિસ્તાન દા કુન્હા',
- 'TC' => 'ટર્ક્સ એન્ડ કૈકોસ આઇલેન્ડ્સ',
+ 'TC' => 'તુર્ક્સ અને કેકોઝ આઇલેન્ડ્સ',
'TD' => 'ચાડ',
- 'TF' => 'ફ્રેંચ સદર્ન ટેરિટરીઝ',
+ 'TF' => 'ફ્રેંચ સધર્ન ટેરિટરીઝ',
'TG' => 'ટોગો',
'TH' => 'થાઇલેંડ',
'TJ' => 'તાજીકિસ્તાન',
@@ -1062,62 +1098,77 @@ $countryNames = array(
'TN' => 'ટ્યુનિશિયા',
'TO' => 'ટોંગા',
'TR' => 'તુર્કી',
- 'TT' => 'ત્રિનિદાદ અને ટોબેગો',
+ 'TT' => 'ટ્રિનીદાદ અને ટોબેગો',
'TV' => 'તુવાલુ',
'TW' => 'તાઇવાન',
'TZ' => 'તાંઝાનિયા',
'UA' => 'યુક્રેન',
'UG' => 'યુગાંડા',
- 'UM' => 'સંયુક્ત રાજ્ય આઉટલાઇંગ આયલેન્ડ્સ',
+ 'UM' => 'યુ.એસ. આઉટલાઇનિંગ આઇલેન્ડ્સ',
+ 'UN' => 'યૂએન',
'US' => 'યુ.એસ.',
'UY' => 'ઉરુગ્વે',
'UZ' => 'ઉઝ્બેકિસ્તાન',
'VA' => 'વેટિકન સિટી',
- 'VC' => 'સેન્ટ વિન્સેન્ટ એન્ડ ગ્રેનેડીન્સ',
+ 'VC' => 'સેંટ વિન્સેંટ અને ગ્રેનેડાઇંસ',
'VE' => 'વેનેઝુએલા',
'VG' => 'બ્રિટિશ વર્જિન આઇલેન્ડ્સ',
- 'VI' => 'યુ.એસ વર્જિન આઇલેન્ડ્સ',
+ 'VI' => 'યુએસ વર્જિન આઇલેન્ડ્સ',
'VN' => 'વિયેતનામ',
'VU' => 'વાનુઆતુ',
- 'WF' => 'વૉલિસ એંડ ફ્યુચુના',
+ 'WF' => 'વૉલિસ અને ફ્યુચુના',
'WS' => 'સમોઆ',
'XK' => 'કોસોવો',
- 'YE' => 'યેમેન',
+ 'YE' => 'યમન',
'YT' => 'મેયોટ',
'ZA' => 'દક્ષિણ આફ્રિકા',
'ZM' => 'ઝામ્બિયા',
'ZW' => 'ઝિમ્બાબ્વે',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-one' => '{0} સદી',
+ 'century-other' => '{0} સદીઓ',
'day-future-one' => '{0} દિવસમાં',
'day-future-other' => '{0} દિવસમાં',
- 'day-narrow-future-one' => '+{0} દિવસ',
- 'day-narrow-future-other' => '+{0} દિવસ',
- 'day-narrow-past-one' => '-{0} દિવસ',
- 'day-narrow-past-other' => '-{0} દિવસ',
+ 'day-narrow-future-one' => '{0} દિવસમાં',
+ 'day-narrow-future-other' => '{0} દિવસમાં',
+ 'day-narrow-past-one' => '{0} દિવસ પહેલાં',
+ 'day-narrow-past-other' => '{0} દિવસ પહેલાં',
'day-one' => '{0} દિવસ',
'day-other' => '{0} દિવસ',
- 'day-past-one' => '{0} દિવસ પહેલા',
- 'day-past-other' => '{0} દિવસ પહેલા',
+ 'day-past-one' => '{0} દિવસ પહેલાં',
+ 'day-past-other' => '{0} દિવસ પહેલાં',
'day-short-future-one' => '{0} દિવસમાં',
'day-short-future-other' => '{0} દિવસમાં',
- 'day-short-past-one' => '{0} દિવસ પહેલા',
- 'day-short-past-other' => '{0} દિવસ પહેલા',
+ 'day-short-past-one' => '{0} દિવસ પહેલાં',
+ 'day-short-past-other' => '{0} દિવસ પહેલાં',
+ 'fri-future-one' => '{0} શુક્રવારમાં',
+ 'fri-future-other' => '{0} શુક્રવારમાં',
+ 'fri-narrow-future-one' => '{0} શુક્રવારમાં',
+ 'fri-narrow-future-other' => '{0} શુક્રવારમાં',
+ 'fri-narrow-past-one' => '{0} શુક્ર. પહેલાં',
+ 'fri-narrow-past-other' => '{0} શુક્ર. પહેલાં',
+ 'fri-past-one' => '{0} શુક્રવાર પહેલાં',
+ 'fri-past-other' => '{0} શુક્રવાર પહેલાં',
+ 'fri-short-future-one' => '{0} શુક્રવારમાં',
+ 'fri-short-future-other' => '{0} શુક્રવારમાં',
+ 'fri-short-past-one' => '{0} શુક્ર. પહેલાં',
+ 'fri-short-past-other' => '{0} શુક્ર. પહેલાં',
'hour-future-one' => '{0} કલાકમાં',
'hour-future-other' => '{0} કલાકમાં',
'hour-narrow-future-one' => '{0} કલાકમાં',
'hour-narrow-future-other' => '{0} કલાકમાં',
- 'hour-narrow-past-one' => '-{0} કલાક',
- 'hour-narrow-past-other' => '-{0} કલાક',
+ 'hour-narrow-past-one' => '{0} કલાક પહેલાં',
+ 'hour-narrow-past-other' => '{0} કલાક પહેલાં',
'hour-one' => '{0} કલાક',
'hour-other' => '{0} કલાક',
- 'hour-past-one' => '{0} કલાક પહેલા',
- 'hour-past-other' => '{0} કલાક પહેલા',
+ 'hour-past-one' => '{0} કલાક પહેલાં',
+ 'hour-past-other' => '{0} કલાક પહેલાં',
'hour-short-future-one' => '{0} કલાકમાં',
'hour-short-future-other' => '{0} કલાકમાં',
- 'hour-short-past-one' => '{0} કલાક પહેલા',
- 'hour-short-past-other' => '{0} કલાક પહેલા',
+ 'hour-short-past-one' => '{0} કલાક પહેલાં',
+ 'hour-short-past-other' => '{0} કલાક પહેલાં',
'microsecond-one' => '{0} માઇક્રોસેકંડ',
'microsecond-other' => '{0} માઇક્રોસેકંડ',
'millisecond-one' => '{0} મિલિસેકન્ડ',
@@ -1126,84 +1177,156 @@ $timeUnits = array(
'minute-future-other' => '{0} મિનિટમાં',
'minute-narrow-future-one' => '{0} મિનિટમાં',
'minute-narrow-future-other' => '{0} મિનિટમાં',
- 'minute-narrow-past-one' => '-{0} મિનિટ',
- 'minute-narrow-past-other' => '-{0} મિનિટ',
+ 'minute-narrow-past-one' => '{0} મિનિટ પહેલાં',
+ 'minute-narrow-past-other' => '{0} મિનિટ પહેલાં',
'minute-one' => '{0} મિનિટ',
'minute-other' => '{0} મિનિટ',
- 'minute-past-one' => '{0} મિનિટ પહેલા',
- 'minute-past-other' => '{0} મિનિટ પહેલા',
+ 'minute-past-one' => '{0} મિનિટ પહેલાં',
+ 'minute-past-other' => '{0} મિનિટ પહેલાં',
'minute-short-future-one' => '{0} મિનિટમાં',
'minute-short-future-other' => '{0} મિનિટમાં',
- 'minute-short-past-one' => '{0} મિનિટ પહેલા',
- 'minute-short-past-other' => '{0} મિનિટ પહેલા',
+ 'minute-short-past-one' => '{0} મિનિટ પહેલાં',
+ 'minute-short-past-other' => '{0} મિનિટ પહેલાં',
+ 'mon-future-one' => '{0} સોમવારમાં',
+ 'mon-future-other' => '{0} સોમવારમાં',
+ 'mon-narrow-future-one' => '{0} સોમવારમાં',
+ 'mon-narrow-future-other' => '{0} સોમવારમાં',
+ 'mon-narrow-past-one' => '{0} સોમ. પહેલાં',
+ 'mon-narrow-past-other' => '{0} સોમ. પહેલાં',
+ 'mon-past-one' => '{0} સોમવાર પહેલાં',
+ 'mon-past-other' => '{0} સોમવાર પહેલાં',
+ 'mon-short-future-one' => '{0} સોમવારમાં',
+ 'mon-short-future-other' => '{0} સોમવારમાં',
+ 'mon-short-past-one' => '{0} સોમ. પહેલાં',
+ 'mon-short-past-other' => '{0} સોમ. પહેલાં',
'month-future-one' => '{0} મહિનામાં',
'month-future-other' => '{0} મહિનામાં',
- 'month-narrow-future-one' => '+{0} મહિના',
- 'month-narrow-future-other' => '+{0} મહિના',
- 'month-narrow-past-one' => '-{0} મહિના',
- 'month-narrow-past-other' => '-{0} મહિના',
+ 'month-narrow-future-one' => '{0} મહિનામાં',
+ 'month-narrow-future-other' => '{0} મહિનામાં',
+ 'month-narrow-past-one' => '{0} મહિના પહેલાં',
+ 'month-narrow-past-other' => '{0} મહિના પહેલાં',
'month-one' => '{0} મહિનો',
'month-other' => '{0} મહિના',
- 'month-past-one' => '{0} મહિના પહેલા',
- 'month-past-other' => '{0} મહિના પહેલા',
+ 'month-past-one' => '{0} મહિના પહેલાં',
+ 'month-past-other' => '{0} મહિના પહેલાં',
'month-short-future-one' => '{0} મહિનામાં',
'month-short-future-other' => '{0} મહિનામાં',
- 'month-short-past-one' => '{0} મહિના પહેલા',
- 'month-short-past-other' => '{0} મહિના પહેલા',
+ 'month-short-past-one' => '{0} મહિના પહેલાં',
+ 'month-short-past-other' => '{0} મહિના પહેલાં',
'nanosecond-one' => '{0} નેનોસેકંડ',
'nanosecond-other' => '{0} નેનોસેકંડ',
- 'quarter-future-one' => '{0} ત્રિમાસમાં',
- 'quarter-future-other' => '{0} ત્રિમાસમાં',
- 'quarter-narrow-future-one' => '+{0} ત્રિમાસ',
- 'quarter-narrow-future-other' => '+{0} ત્રિમાસ',
- 'quarter-narrow-past-one' => '-{0} ત્રિમાસ',
- 'quarter-narrow-past-other' => '-{0} ત્રિમાસ',
- 'quarter-past-one' => '{0} ત્રિમાસ પહેલાં',
- 'quarter-past-other' => '{0} ત્રિમાસ પહેલાં',
- 'quarter-short-future-one' => '{0} ત્રિમાસમાં',
- 'quarter-short-future-other' => '{0} ત્રિમાસમાં',
- 'quarter-short-past-one' => '{0} ત્રિમાસ પહેલાં',
- 'quarter-short-past-other' => '{0} ત્રિમાસ પહેલાં',
+ 'quarter-future-one' => '{0} ત્રિમાસિકમાં',
+ 'quarter-future-other' => '{0} ત્રિમાસિકમાં',
+ 'quarter-narrow-future-one' => '{0} ત્રિમાસિકમાં',
+ 'quarter-narrow-future-other' => '{0} ત્રિમાસિકમાં',
+ 'quarter-narrow-past-one' => '{0} ત્રિમાસિક પહેલાં',
+ 'quarter-narrow-past-other' => '{0} ત્રિમાસિક પહેલાં',
+ 'quarter-past-one' => '{0} ત્રિમાસિક પહેલાં',
+ 'quarter-past-other' => '{0} ત્રિમાસિક પહેલાં',
+ 'quarter-short-future-one' => '{0} ત્રિમાસિકમાં',
+ 'quarter-short-future-other' => '{0} ત્રિમાસિકમાં',
+ 'quarter-short-past-one' => '{0} ત્રિમાસિક પહેલાં',
+ 'quarter-short-past-other' => '{0} ત્રિમાસિક પહેલાં',
+ 'sat-future-one' => '{0} શનિવારમાં',
+ 'sat-future-other' => '{0} શનિવારમાં',
+ 'sat-narrow-future-one' => '{0} શનિવારમાં',
+ 'sat-narrow-future-other' => '{0} શનિવારમાં',
+ 'sat-narrow-past-one' => '{0} શનિ. પહેલાં',
+ 'sat-narrow-past-other' => '{0} શનિ. પહેલાં',
+ 'sat-past-one' => '{0} શનિવાર પહેલાં',
+ 'sat-past-other' => '{0} શનિવાર પહેલાં',
+ 'sat-short-future-one' => '{0} શનિવારમાં',
+ 'sat-short-future-other' => '{0} શનિવારમાં',
+ 'sat-short-past-one' => '{0} શનિ. પહેલાં',
+ 'sat-short-past-other' => '{0} શનિ. પહેલાં',
'second-future-one' => '{0} સેકંડમાં',
'second-future-other' => '{0} સેકંડમાં',
'second-narrow-future-one' => '{0} સેકંડમાં',
'second-narrow-future-other' => '{0} સેકંડમાં',
- 'second-narrow-past-one' => '-{0} સેકંડ પહેલા',
- 'second-narrow-past-other' => '-{0} સેકંડ પહેલા',
+ 'second-narrow-past-one' => '{0} સેકંડ પહેલાં',
+ 'second-narrow-past-other' => '{0} સેકંડ પહેલાં',
'second-one' => '{0} સેકંડ',
'second-other' => '{0} સેકંડ',
- 'second-past-one' => '{0} સેકંડ પહેલા',
- 'second-past-other' => '{0} સેકંડ પહેલા',
+ 'second-past-one' => '{0} સેકંડ પહેલાં',
+ 'second-past-other' => '{0} સેકંડ પહેલાં',
'second-short-future-one' => '{0} સેકંડમાં',
'second-short-future-other' => '{0} સેકંડમાં',
- 'second-short-past-one' => '{0} સેકંડ પહેલા',
- 'second-short-past-other' => '{0} સેકંડ પહેલા',
+ 'second-short-past-one' => '{0} સેકંડ પહેલાં',
+ 'second-short-past-other' => '{0} સેકંડ પહેલાં',
+ 'sun-future-one' => '{0} રવિવારમાં',
+ 'sun-future-other' => '{0} રવિવારમાં',
+ 'sun-narrow-future-one' => '{0} રવિવારમાં',
+ 'sun-narrow-future-other' => '{0} રવિવારમાં',
+ 'sun-narrow-past-one' => '{0} રવિ. પહેલાં',
+ 'sun-narrow-past-other' => '{0} રવિ. પહેલાં',
+ 'sun-past-one' => '{0} રવિવાર પહેલાં',
+ 'sun-past-other' => '{0} રવિવાર પહેલાં',
+ 'sun-short-future-one' => '{0} રવિવારમાં',
+ 'sun-short-future-other' => '{0} રવિવારમાં',
+ 'sun-short-past-one' => '{0} રવિ. પહેલાં',
+ 'sun-short-past-other' => '{0} રવિ. પહેલાં',
+ 'thu-future-one' => '{0} ગુરુવારમાં',
+ 'thu-future-other' => '{0} ગુરુવારમાં',
+ 'thu-narrow-future-one' => '{0} ગુરુવારમાં',
+ 'thu-narrow-future-other' => '{0} ગુરુવારમાં',
+ 'thu-narrow-past-one' => '{0} ગુરુ. પહેલાં',
+ 'thu-narrow-past-other' => '{0} ગુરુ. પહેલાં',
+ 'thu-past-one' => '{0} ગુરુવાર પહેલાં',
+ 'thu-past-other' => '{0} ગુરુવાર પહેલાં',
+ 'thu-short-future-one' => '{0} ગુરુવારમાં',
+ 'thu-short-future-other' => '{0} ગુરુવારમાં',
+ 'thu-short-past-one' => '{0} ગુરુ. પહેલાં',
+ 'thu-short-past-other' => '{0} ગુરુ. પહેલાં',
+ 'tue-future-one' => '{0} મંગળવારમાં',
+ 'tue-future-other' => '{0} મંગળવારમાં',
+ 'tue-narrow-future-one' => '{0} મંગળવારમાં',
+ 'tue-narrow-future-other' => '{0} મંગળવારમાં',
+ 'tue-narrow-past-one' => '{0} મંગળ. પહેલાં',
+ 'tue-narrow-past-other' => '{0} મંગળ. પહેલાં',
+ 'tue-past-one' => '{0} મંગળવાર પહેલાં',
+ 'tue-past-other' => '{0} મંગળવાર પહેલાં',
+ 'tue-short-future-one' => '{0} મંગળવારમાં',
+ 'tue-short-future-other' => '{0} મંગળવારમાં',
+ 'tue-short-past-one' => '{0} મંગળ. પહેલાં',
+ 'tue-short-past-other' => '{0} મંગળ. પહેલાં',
+ 'wed-future-one' => '{0} બુધવારમાં',
+ 'wed-future-other' => '{0} બુધવારમાં',
+ 'wed-narrow-future-one' => '{0} બુધવારમાં',
+ 'wed-narrow-future-other' => '{0} બુધવારમાં',
+ 'wed-narrow-past-one' => '{0} બુધ. પહેલાં',
+ 'wed-narrow-past-other' => '{0} બુધ. પહેલાં',
+ 'wed-past-one' => '{0} બુધવાર પહેલાં',
+ 'wed-past-other' => '{0} બુધવાર પહેલાં',
+ 'wed-short-future-one' => '{0} બુધવારમાં',
+ 'wed-short-future-other' => '{0} બુધવારમાં',
+ 'wed-short-past-one' => '{0} બુધ. પહેલાં',
+ 'wed-short-past-other' => '{0} બુધ. પહેલાં',
'week-future-one' => '{0} અઠવાડિયામાં',
'week-future-other' => '{0} અઠવાડિયામાં',
- 'week-narrow-future-one' => '+{0} અઠવાડિયા',
- 'week-narrow-future-other' => '+{0} અઠવાડિયા',
- 'week-narrow-past-one' => '-{0} અઠવાડિયા',
- 'week-narrow-past-other' => '-{0} અઠવાડિયા',
+ 'week-narrow-future-one' => '{0} અઠ. માં',
+ 'week-narrow-future-other' => '{0} અઠ. માં',
+ 'week-narrow-past-one' => '{0} અઠ. પહેલાં',
+ 'week-narrow-past-other' => '{0} અઠ. પહેલાં',
'week-one' => '{0} અઠવાડિયું',
'week-other' => '{0} અઠવાડિયા',
- 'week-past-one' => '{0} અઠવાડિયા પહેલા',
- 'week-past-other' => '{0} અઠવાડિયા પહેલા',
- 'week-short-future-one' => '{0} અઠવાડિયામાં',
- 'week-short-future-other' => '{0} અઠવાડિયામાં',
- 'week-short-past-one' => '{0} અઠવાડિયા પહેલા',
- 'week-short-past-other' => '{0} અઠવાડિયા પહેલા',
+ 'week-past-one' => '{0} અઠવાડિયા પહેલાં',
+ 'week-past-other' => '{0} અઠવાડિયા પહેલાં',
+ 'week-short-future-one' => '{0} અઠ. માં',
+ 'week-short-future-other' => '{0} અઠ. માં',
+ 'week-short-past-one' => '{0} અઠ. પહેલાં',
+ 'week-short-past-other' => '{0} અઠ. પહેલાં',
'year-future-one' => '{0} વર્ષમાં',
'year-future-other' => '{0} વર્ષમાં',
- 'year-narrow-future-one' => '+{0} વર્ષ',
- 'year-narrow-future-other' => '+{0} વર્ષ',
- 'year-narrow-past-one' => '-{0} વર્ષ',
- 'year-narrow-past-other' => '-{0} વર્ષ',
+ 'year-narrow-future-one' => '{0} વર્ષમાં',
+ 'year-narrow-future-other' => '{0} વર્ષમાં',
+ 'year-narrow-past-one' => '{0} વર્ષ પહેલાં',
+ 'year-narrow-past-other' => '{0} વર્ષ પહેલાં',
'year-one' => '{0} વર્ષ',
'year-other' => '{0} વર્ષ',
- 'year-past-one' => '{0} વર્ષ પહેલા',
- 'year-past-other' => '{0} વર્ષ પહેલા',
+ 'year-past-one' => '{0} વર્ષ પહેલાં',
+ 'year-past-other' => '{0} વર્ષ પહેલાં',
'year-short-future-one' => '{0} વર્ષમાં',
'year-short-future-other' => '{0} વર્ષમાં',
- 'year-short-past-one' => '{0} વર્ષ પહેલા',
- 'year-short-past-other' => '{0} વર્ષ પહેલા',
-);
+ 'year-short-past-one' => '{0} વર્ષ પહેલાં',
+ 'year-short-past-other' => '{0} વર્ષ પહેલાં',
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesGv.php b/MLEB/cldr/CldrNames/CldrNamesGv.php
index 0f948499..7887564c 100644
--- a/MLEB/cldr/CldrNames/CldrNamesGv.php
+++ b/MLEB/cldr/CldrNames/CldrNamesGv.php
@@ -1,10 +1,10 @@
<?php
-$languageNames = array(
+$languageNames = [
'gv' => 'Gaelg',
-);
+];
-$countryNames = array(
+$countryNames = [
'GB' => 'Rywvaneth Unys',
'IM' => 'Ellan Vannin',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesHa.php b/MLEB/cldr/CldrNames/CldrNamesHa.php
index 80a74cb5..ff4dc511 100644
--- a/MLEB/cldr/CldrNames/CldrNamesHa.php
+++ b/MLEB/cldr/CldrNames/CldrNamesHa.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'af' => 'Afirkanci',
'ak' => 'Akan',
'am' => 'Amharik',
@@ -111,9 +111,9 @@ $languageNames = array(
'yo' => 'Yarbanci',
'zh' => 'Harshen Sin',
'zu' => 'Harshen Zulu',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'AED' => 'Kuɗin Haɗaɗɗiyar Daular Larabawa',
'AOA' => 'Kuɗin Angola',
'AUD' => 'Dalar Ostareliya',
@@ -144,7 +144,8 @@ $currencyNames = array(
'LYD' => 'Kuɗin Libiya',
'MAD' => 'Kuɗin Maroko',
'MGA' => 'Kuɗin Madagaskar',
- 'MRO' => 'Kuɗin Moritaniya',
+ 'MRO' => 'Kuɗin Moritaniya (1973–2017)',
+ 'MRU' => 'Kuɗin Moritaniya',
'MUR' => 'Kuɗin Moritus',
'MWK' => 'Kuɗin Malawi',
'MZM' => 'Kuɗin Mozambik',
@@ -157,7 +158,8 @@ $currencyNames = array(
'SHP' => 'Fam kin San Helena',
'SLL' => 'Kuɗin Salewo',
'SOS' => 'Sulen Somaliya',
- 'STD' => 'Kuɗin Sawo Tome da Paransip',
+ 'STD' => 'Kuɗin Sawo Tome da Paransip (1977–2017)',
+ 'STN' => 'Kuɗin Sawo Tome da Paransip',
'SZL' => 'Kuɗin Lilangeni',
'TND' => 'Kuɗin Tunisiya',
'TZS' => 'Sulen Tanzaniya',
@@ -169,13 +171,13 @@ $currencyNames = array(
'ZMK' => 'Kuɗin Zambiya (1968–2012)',
'ZMW' => 'Kuɗin Zambiya',
'ZWD' => 'Dalar zimbabuwe',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'NGN' => '₦',
-);
+];
-$countryNames = array(
+$countryNames = [
'AD' => 'Andora',
'AE' => 'Haɗaɗɗiyar Daular Larabawa',
'AF' => 'Afaganistan',
@@ -183,7 +185,6 @@ $countryNames = array(
'AI' => 'Angila',
'AL' => 'Albaniya',
'AM' => 'Armeniya',
- 'AN' => 'Antiya Na Holan',
'AO' => 'Angola',
'AR' => 'Arjantiniya',
'AS' => 'Samowa Ta Amurka',
@@ -233,7 +234,7 @@ $countryNames = array(
'DZ' => 'Aljeriya',
'EC' => 'Ekwador',
'EE' => 'Estoniya',
- 'EG' => 'Masar, Misira',
+ 'EG' => 'Misira',
'ER' => 'Eritireya',
'ES' => 'Sipen',
'ET' => 'Habasha',
@@ -401,4 +402,4 @@ $countryNames = array(
'ZA' => 'Afirka Ta Kudu',
'ZM' => 'Zambiya',
'ZW' => 'Zimbabuwe',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesHaw.php b/MLEB/cldr/CldrNames/CldrNamesHaw.php
index 8c10d6ff..a42f8b63 100644
--- a/MLEB/cldr/CldrNames/CldrNamesHaw.php
+++ b/MLEB/cldr/CldrNames/CldrNamesHaw.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'ar' => 'ʻAlapia',
'cy' => 'Wale',
'da' => 'Kenemaka',
@@ -38,9 +38,9 @@ $languageNames = array(
'zh' => 'Pākē',
'zh-hans' => 'Pākē Hoʻomaʻalahi ʻia',
'zh-hant' => 'Pākē Kuʻuna',
-);
+];
-$countryNames = array(
+$countryNames = [
'AU' => 'Nūhōlani',
'CA' => 'Kanakā',
'CN' => 'Kina',
@@ -61,9 +61,9 @@ $countryNames = array(
'PH' => 'ʻĀina Pilipino',
'RU' => 'Lūkia',
'US' => 'ʻAmelika Hui Pū ʻIa',
-);
+];
-$timeUnits = array(
+$timeUnits = [
'day-one' => '{0} lā',
'day-other' => '{0} lā',
'hour-one' => '{0} hola',
@@ -78,4 +78,4 @@ $timeUnits = array(
'week-other' => '{0} pule',
'year-one' => '{0} makahiki',
'year-other' => '{0} makahiki',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesHe.php b/MLEB/cldr/CldrNames/CldrNamesHe.php
index 8f729576..04d35222 100644
--- a/MLEB/cldr/CldrNames/CldrNamesHe.php
+++ b/MLEB/cldr/CldrNames/CldrNamesHe.php
@@ -1,16 +1,16 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'אפארית',
'ab' => 'אבחזית',
'ace' => 'אכינזית',
- 'ach' => 'אקולי',
+ 'ach' => 'אקצ׳ולי',
'ada' => 'אדנמה',
'ady' => 'אדיגית',
'ae' => 'אבסטן',
'af' => 'אפריקאנס',
'afh' => 'אפריהילי',
- 'agq' => 'אהיים',
+ 'agq' => 'אע׳ם',
'ain' => 'אינו',
'ak' => 'אקאן',
'akk' => 'אכדית',
@@ -24,28 +24,30 @@ $languageNames = array(
'ar-001' => 'ערבית ספרותית',
'arc' => 'ארמית',
'arn' => 'אראוקנית',
- 'arp' => 'ארפהו',
+ 'arp' => 'אראפהו',
+ 'ars' => 'ערבית - נג׳ד',
'arw' => 'ארוואק',
'as' => 'אסאמית',
'asa' => 'אסו',
'ast' => 'אסטורית',
- 'av' => 'אבארית',
+ 'av' => 'אווארית',
'awa' => 'אוואדית',
'ay' => 'איימארית',
'az' => 'אזרית',
'ba' => 'בשקירית',
'bal' => 'באלוצ׳י',
- 'ban' => 'בלינזית',
+ 'ban' => 'באלינזית',
'bar' => 'בווארית',
'bas' => 'בסאא',
- 'bax' => 'באקס',
- 'bbj' => 'גומל',
+ 'bax' => 'במום',
+ 'bbj' => 'גומאלה',
'be' => 'בלארוסית',
'bej' => 'בז׳ה',
'bem' => 'במבה',
'bez' => 'בנה',
'bfd' => 'באפוט',
'bg' => 'בולגרית',
+ 'bgn' => 'באלוצ׳י מערבית',
'bho' => 'בוג׳פורי',
'bi' => 'ביסלמה',
'bik' => 'ביקול',
@@ -71,7 +73,7 @@ $languageNames = array(
'cay' => 'קאיוגה',
'cch' => 'אטסם',
'ce' => 'צ׳צ׳נית',
- 'ceb' => 'קבואנו',
+ 'ceb' => 'סבואנו',
'cgg' => 'צ׳יגה',
'ch' => 'צ׳מורו',
'chb' => 'צ׳יבצ׳ה',
@@ -88,29 +90,29 @@ $languageNames = array(
'cop' => 'קופטית',
'cr' => 'קרי',
'crh' => 'טטרית של קרים',
+ 'crs' => 'קריאולית (סיישל)',
'cs' => 'צ׳כית',
- 'csb' => 'קשוביאן',
+ 'csb' => 'קשובית',
'cu' => 'סלאבית כנסייתית עתיקה',
'cv' => 'צ׳ובאש',
- 'cy' => 'ולשית',
+ 'cy' => 'וולשית',
'da' => 'דנית',
'dak' => 'דקוטה',
'dar' => 'דרגווה',
'dav' => 'טאיטה',
'de' => 'גרמנית',
- 'de-at' => 'גרמנית אוסטרית',
- 'de-ch' => 'גרמנית שוויצרית (גבוהה)',
+ 'de-ch' => 'גרמנית (שוויץ)',
'del' => 'דלאוור',
'den' => 'סלאבית',
'dgr' => 'דוגריב',
'din' => 'דינקה',
'dje' => 'זארמה',
'doi' => 'דוגרי',
- 'dsb' => 'סורבית נמוכה',
+ 'dsb' => 'סורבית תחתית',
'dua' => 'דואלה',
'dum' => 'הולנדית תיכונה',
'dv' => 'דיבהי',
- 'dyo' => 'הולה-פוניי',
+ 'dyo' => 'ג׳ולה פונית',
'dyu' => 'דיולה',
'dz' => 'דזונקה',
'dzg' => 'דזאנגה',
@@ -122,16 +124,9 @@ $languageNames = array(
'el' => 'יוונית',
'elx' => 'עילמית',
'en' => 'אנגלית',
- 'en-au' => 'אנגלית אוסטרלית',
- 'en-ca' => 'אנגלית קנדית',
- 'en-gb' => 'אנגלית בריטית',
- 'en-us' => 'אנגלית אמריקאית',
'enm' => 'אנגלית תיכונה',
'eo' => 'אספרנטו',
'es' => 'ספרדית',
- 'es-419' => 'ספרדית לטינו־אמריקאית',
- 'es-es' => 'ספרדית אירופאית',
- 'es-mx' => 'ספרדית מקסיקנית',
'et' => 'אסטונית',
'eu' => 'בסקית',
'ewo' => 'אוונדו',
@@ -145,22 +140,23 @@ $languageNames = array(
'fo' => 'פארואזית',
'fon' => 'פון',
'fr' => 'צרפתית',
- 'fr-ca' => 'צרפתית קנדית',
- 'fr-ch' => 'צרפתית שוויצרית',
+ 'fr-ch' => 'צרפתית (שוויץ)',
+ 'frc' => 'צרפתית קייג׳ונית',
'frm' => 'צרפתית תיכונה',
'fro' => 'צרפתית עתיקה',
'frr' => 'פריזית צפונית',
- 'frs' => 'פריזיאן מזרחית',
+ 'frs' => 'פריזית מזרחית',
'fur' => 'פריולית',
- 'fy' => 'פריזית',
+ 'fy' => 'פריזית מערבית',
'ga' => 'אירית',
'gaa' => 'גא',
'gag' => 'גגאוזית',
+ 'gan' => 'סינית גאן',
'gay' => 'גאיו',
'gba' => 'גבאיה',
'gd' => 'גאלית סקוטית',
'gez' => 'געז',
- 'gil' => 'גילברטזית',
+ 'gil' => 'קיריבטית',
'gl' => 'גליציאנית',
'gmh' => 'גרמנית בינונית-גבוהה',
'gn' => 'גוארני',
@@ -171,22 +167,24 @@ $languageNames = array(
'grb' => 'גרבו',
'grc' => 'יוונית עתיקה',
'gsw' => 'גרמנית שוויצרית',
- 'gu' => 'גוג׳ראטית',
+ 'gu' => 'גוג׳ארטי',
'guz' => 'גוסי',
'gv' => 'מאנית',
- 'gwi' => 'גוויצ׳ין',
+ 'gwi' => 'גוויצ׳ן',
'ha' => 'האוסה',
'hai' => 'האידה',
+ 'hak' => 'סינית האקה',
'haw' => 'הוואית',
'he' => 'עברית',
'hi' => 'הינדי',
'hil' => 'היליגאינון',
- 'hit' => 'חיתית',
- 'hmn' => 'מונג',
- 'ho' => 'הארי מוטו',
+ 'hit' => 'חתית',
+ 'hmn' => 'המונג',
+ 'ho' => 'הירי מוטו',
'hr' => 'קרואטית',
'hsb' => 'סורבית גבוהה',
- 'ht' => 'האיטית',
+ 'hsn' => 'סינית שיאנג',
+ 'ht' => 'קריאולית (האיטי)',
'hu' => 'הונגרית',
'hup' => 'הופה',
'hy' => 'ארמנית',
@@ -197,7 +195,7 @@ $languageNames = array(
'id' => 'אינדונזית',
'ie' => 'אינטרלינגה',
'ig' => 'איגבו',
- 'ii' => 'סיצ׳ואן יי',
+ 'ii' => 'סצ׳ואן יי',
'ik' => 'אינופיאק',
'ilo' => 'אילוקו',
'inh' => 'אינגושית',
@@ -206,17 +204,17 @@ $languageNames = array(
'it' => 'איטלקית',
'iu' => 'אינוקטיטוט',
'ja' => 'יפנית',
- 'jbo' => 'לויבאן',
- 'jgo' => 'נגומה',
- 'jmc' => 'מצ׳אמה',
+ 'jbo' => 'לוז׳באן',
+ 'jgo' => 'נגומבה',
+ 'jmc' => 'מאקאמה',
'jpr' => 'פרסית יהודית',
'jrb' => 'ערבית יהודית',
- 'jv' => 'יאוונית',
+ 'jv' => 'יאוואית',
'ka' => 'גאורגית',
'kaa' => 'קארא-קלפאק',
'kab' => 'קבילה',
'kac' => 'קצ׳ין',
- 'kaj' => 'ג׳יו',
+ 'kaj' => 'ג׳ו',
'kam' => 'קמבה',
'kaw' => 'קאווי',
'kbd' => 'קברדית',
@@ -226,16 +224,16 @@ $languageNames = array(
'kea' => 'קאבוורדיאנו',
'kfo' => 'קורו',
'kg' => 'קונגו',
- 'kha' => 'קאסי',
+ 'kha' => 'קהאסי',
'kho' => 'קוטאנזית',
'khq' => 'קוירה צ׳יני',
'ki' => 'קיקויו',
'kj' => 'קואניאמה',
'kk' => 'קזחית',
'kkj' => 'קאקו',
- 'kl' => 'קאלאליסוטית',
- 'kln' => 'קאלנג׳ין',
- 'km' => 'קמרית',
+ 'kl' => 'גרינלנדית',
+ 'kln' => 'קלנג׳ין',
+ 'km' => 'חמרית',
'kmb' => 'קימבונדו',
'kn' => 'קנאדה',
'ko' => 'קוריאנית',
@@ -252,7 +250,7 @@ $languageNames = array(
'ksf' => 'באפיה',
'ksh' => 'קולוניאן',
'ku' => 'כורדית',
- 'kum' => 'קומיק',
+ 'kum' => 'קומיקית',
'kut' => 'קוטנאי',
'kv' => 'קומי',
'kw' => 'קורנית',
@@ -265,50 +263,52 @@ $languageNames = array(
'lb' => 'לוקסמבורגית',
'lez' => 'לזגית',
'lg' => 'גאנדה',
- 'li' => 'לימבורגיש',
+ 'li' => 'לימבורגית',
'lkt' => 'לקוטה',
'ln' => 'לינגלה',
- 'lo' => 'לאית',
+ 'lo' => 'לאו',
'lol' => 'מונגו',
- 'loz' => 'לוזי',
+ 'lou' => 'קריאולית לואיזיאנית',
+ 'loz' => 'לוזית',
+ 'lrc' => 'לורית צפונית',
'lt' => 'ליטאית',
'lu' => 'לובה-קטנגה',
- 'lua' => 'לובה, לולואה',
- 'lui' => 'לואיסנו',
+ 'lua' => 'לובה-לולואה',
+ 'lui' => 'לויסנו',
'lun' => 'לונדה',
'luo' => 'לואו',
- 'lus' => 'לושאי',
+ 'lus' => 'מיזו',
'luy' => 'לויה',
'lv' => 'לטבית',
- 'mad' => 'מדורסה',
- 'maf' => 'מאפא',
+ 'mad' => 'מדורזית',
+ 'maf' => 'מאפאה',
'mag' => 'מאגאהית',
'mai' => 'מאיטילית',
'mak' => 'מקסאר',
'man' => 'מנדינגו',
- 'mas' => 'מאסאית',
+ 'mas' => 'מסאית',
'mde' => 'מאבא',
'mdf' => 'מוקשה',
'mdr' => 'מנדאר',
'men' => 'מנדה',
'mer' => 'מרו',
- 'mfe' => 'מוריסיין',
+ 'mfe' => 'קריאולית מאוריציאנית',
'mg' => 'מלגשית',
'mga' => 'אירית תיכונה',
- 'mgh' => 'מקואה-מיטו',
+ 'mgh' => 'מאקוואה מטו',
'mgo' => 'מטא',
- 'mh' => 'מרשאלס',
+ 'mh' => 'מרשלית',
'mi' => 'מאורית',
'mic' => 'מיקמק',
'min' => 'מיננגקבאו',
'mk' => 'מקדונית',
- 'ml' => 'מלאיאלם',
+ 'ml' => 'מליאלאם',
'mn' => 'מונגולית',
'mnc' => 'מנצ׳ו',
'mni' => 'מניפורית',
'moh' => 'מוהוק',
'mos' => 'מוסי',
- 'mr' => 'מרטהי',
+ 'mr' => 'מראטהי',
'ms' => 'מלאית',
'mt' => 'מלטית',
'mua' => 'מונדאנג',
@@ -319,30 +319,33 @@ $languageNames = array(
'my' => 'בורמזית',
'mye' => 'מאיין',
'myv' => 'ארזיה',
+ 'mzn' => 'מאזאנדראני',
'na' => 'נאורית',
+ 'nan' => 'סינית מין נאן',
'nap' => 'נפוליטנית',
'naq' => 'נאמה',
- 'nb' => '‏נורבגית ספרותית',
- 'nd' => 'צפון נדבלה',
+ 'nb' => 'נורווגית ספרותית',
+ 'nd' => 'נדבלה צפונית',
'nds' => 'גרמנית תחתית',
+ 'nds-nl' => 'סקסונית תחתית',
'ne' => 'נפאלית',
'new' => 'נווארי',
'ng' => 'נדונגה',
'nia' => 'ניאס',
- 'niu' => 'ניואיאן',
+ 'niu' => 'ניואן',
'nl' => 'הולנדית',
'nl-be' => 'פלמית',
'nmg' => 'קוואסיו',
- 'nn' => 'נורבגית חדשה',
+ 'nn' => 'נורווגית חדשה',
'nnh' => 'נגיאמבון',
- 'no' => 'נורבגית',
+ 'no' => 'נורווגית',
'nog' => 'נוגאי',
'non' => '‏נורדית עתיקה',
'nqo' => 'נ׳קו',
- 'nr' => 'דרום נדבלה',
- 'nso' => 'סוטו הצפונית',
+ 'nr' => 'נדבלה דרומית',
+ 'nso' => 'סותו צפונית',
'nus' => 'נואר',
- 'nv' => 'נבחו',
+ 'nv' => 'נאוואחו',
'nwc' => 'נווארית קלאסית',
'ny' => 'ניאנג׳ה',
'nym' => 'ניאמווזי',
@@ -352,29 +355,29 @@ $languageNames = array(
'oc' => 'אוקסיטנית',
'oj' => 'אוג׳יבווה',
'om' => 'אורומו',
- 'or' => 'אוריה',
+ 'or' => 'אורייה',
'os' => 'אוסטית',
- 'osa' => 'אוסג׳ה',
- 'ota' => 'טורקית עותומנית',
- 'pa' => 'פנג׳אבית',
+ 'osa' => 'אוסג׳',
+ 'ota' => 'טורקית עות׳מנית',
+ 'pa' => 'פנג׳אבי',
'pag' => 'פנגסינאן',
'pal' => 'פלאבי',
'pam' => 'פמפאניה',
'pap' => 'פפיאמנטו',
'pau' => 'פלוואן',
+ 'pcm' => 'ניגרית פידג׳ית',
'peo' => 'פרסית עתיקה',
- 'phn' => 'פניקית',
+ 'phn' => 'פיניקית',
'pi' => 'פאלי',
'pl' => 'פולנית',
'pon' => 'פונפיאן',
+ 'prg' => 'פרוסית',
'pro' => 'פרובנסאל עתיקה',
'ps' => 'פאשטו',
- 'pt' => 'פורטוגלית',
- 'pt-br' => 'פורטוגלית ברזילאית',
- 'pt-pt' => 'פורטוגלית אירופאית',
+ 'pt' => 'פורטוגזית',
'qu' => 'קצ׳ואה',
'quc' => 'קיצ׳ה',
- 'raj' => 'ראג׳סטן',
+ 'raj' => 'ראג׳סטאני',
'rap' => 'רפאנוי',
'rar' => 'ררוטונגאן',
'rm' => 'רומאנש',
@@ -382,25 +385,26 @@ $languageNames = array(
'ro' => 'רומנית',
'ro-md' => 'מולדבית',
'rof' => 'רומבו',
- 'rom' => 'רומאנית',
+ 'rom' => 'רומאני',
'ru' => 'רוסית',
'rup' => 'ארומנית',
- 'rw' => 'קינירואנדה',
- 'rwk' => 'רווא',
+ 'rw' => 'קנירואנדית',
+ 'rwk' => 'ראווה',
'sa' => 'סנסקריט',
'sad' => 'סנדאווה',
'sah' => 'סאחה',
'sam' => 'ארמית שומרונית',
'saq' => 'סמבורו',
- 'sas' => 'ססאק',
- 'sat' => 'סאנטלי',
+ 'sas' => 'סאסק',
+ 'sat' => 'סאנטאלי',
'sba' => 'נגמבאי',
'sbp' => 'סאנגו',
'sc' => 'סרדינית',
'scn' => 'סיציליאנית',
'sco' => 'סקוטית',
'sd' => 'סינדהית',
- 'se' => 'לאפית צפונית',
+ 'sdh' => 'כורדית דרומית',
+ 'se' => 'סמי צפונית',
'see' => 'סנקה',
'seh' => 'סנה',
'sel' => 'סלקופ',
@@ -408,11 +412,11 @@ $languageNames = array(
'sg' => 'סנגו',
'sga' => 'אירית עתיקה',
'sh' => 'סרבו-קרואטית',
- 'shi' => 'טצ׳להיט',
+ 'shi' => 'שילה',
'shn' => 'שאן',
'shu' => 'ערבית צ׳אדית',
'si' => 'סינהלה',
- 'sid' => 'סידמו',
+ 'sid' => 'סידאמו',
'sk' => 'סלובקית',
'sl' => 'סלובנית',
'sm' => 'סמואית',
@@ -428,17 +432,17 @@ $languageNames = array(
'sr' => 'סרבית',
'srn' => 'סרנאן טונגו',
'srr' => 'סרר',
- 'ss' => 'סיסוואטי',
+ 'ss' => 'סאווזי',
'ssy' => 'סאהו',
- 'st' => 'ססות׳ו',
- 'su' => 'סונדנית',
+ 'st' => 'סותו דרומית',
+ 'su' => 'סונדנזית',
'suk' => 'סוקומה',
'sus' => 'סוסו',
'sux' => 'שומרית',
'sv' => 'שוודית',
- 'sw' => 'סווהילית',
- 'swb' => 'קומורו',
- 'swc' => 'סווהילי קונגולטזית',
+ 'sw' => 'סווהילי',
+ 'sw-cd' => 'סווהילי קונגו',
+ 'swb' => 'קומורית',
'syc' => 'סירית קלאסית',
'syr' => 'סורית',
'ta' => 'טמילית',
@@ -449,17 +453,17 @@ $languageNames = array(
'tet' => 'טטום',
'tg' => 'טג׳יקית',
'th' => 'תאית',
- 'ti' => 'טיגרינאית',
+ 'ti' => 'תיגרינית',
'tig' => 'טיגרית',
'tiv' => 'טיב',
'tk' => 'טורקמנית',
'tkl' => 'טוקלאו',
- 'tl' => 'טגלוג',
+ 'tl' => 'טאגאלוג',
'tlh' => 'קלינגון',
'tli' => 'טלינגיט',
'tmh' => 'טמאשק',
- 'tn' => 'טוניסיה',
- 'to' => 'טונגן',
+ 'tn' => 'סוואנה',
+ 'to' => 'טונגאית',
'tog' => 'ניאסה טונגה',
'tpi' => 'טוק פיסין',
'tr' => 'טורקית',
@@ -473,29 +477,31 @@ $languageNames = array(
'twq' => 'טסוואק',
'ty' => 'טהיטית',
'tyv' => 'טובינית',
- 'tzm' => 'טמזייט של מרכז מרוקו',
+ 'tzm' => 'תמאזיגת של מרכז מרוקו',
'udm' => 'אודמורט',
- 'ug' => 'אויגהור',
+ 'ug' => 'אויגור',
'uga' => 'אוגריתית',
'uk' => 'אוקראינית',
'umb' => 'אומבונדו',
'und' => 'שפה לא ידועה',
'ur' => 'אורדו',
'uz' => 'אוזבקית',
- 'vai' => 'ואי',
+ 'vai' => 'וואי',
've' => 'וונדה',
'vi' => 'ויאטנמית',
'vo' => '‏וולאפיק',
'vot' => 'ווטיק',
'vun' => 'וונג׳ו',
- 'wa' => 'וואלון',
+ 'wa' => 'ולונית',
'wae' => 'וואלסר',
- 'wal' => 'וולאמו',
+ 'wal' => 'ווליאטה',
'war' => 'ווראי',
'was' => 'וואשו',
- 'wo' => 'ג׳ולוף',
- 'xal' => 'קלמיק',
- 'xh' => 'קסוסה',
+ 'wbp' => 'וורלפירי',
+ 'wo' => 'וולוף',
+ 'wuu' => 'סינית וו',
+ 'xal' => 'קלמיקית',
+ 'xh' => 'קוסה',
'xog' => 'סוגה',
'yao' => 'יאו',
'yap' => 'יאפזית',
@@ -504,21 +510,21 @@ $languageNames = array(
'yi' => 'יידיש',
'yo' => 'יורובה',
'yue' => 'קנטונזית',
- 'za' => 'ז׳ואנג',
+ 'za' => 'זואנג',
'zap' => 'זאפוטק',
'zbl' => 'בליסימבולס',
'zen' => 'זנאגה',
'zgh' => 'תמזיע׳ת מרוקאית תקנית',
'zh' => 'סינית',
- 'zh-hans' => 'סינית מפושטת',
+ 'zh-hans' => 'סינית פשוטה',
'zh-hant' => 'סינית מסורתית',
'zu' => 'זולו',
'zun' => 'זוני',
'zxx' => 'ללא תוכן לשוני',
'zza' => 'זאזא',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'ADP' => 'פזטה אנדורית',
'AED' => 'דירהם של איחוד הנסיכויות הערביות',
'AFN' => 'אפגני אפגני',
@@ -534,9 +540,9 @@ $currencyNames = array(
'AUD' => 'דולר אוסטרלי',
'AWG' => 'פלורין של ארובה',
'AZM' => 'מנאט אזרביג׳אני (1993–2006)',
- 'AZN' => 'מאנאט אזרביג׳ני',
+ 'AZN' => 'מאנאט אזרבייג׳ני',
'BAD' => 'דינר של בוסניה־הרצגובינה',
- 'BAM' => 'מארק בר המרה של בוסניה־הרצגובינה',
+ 'BAM' => 'מארק סחיר של בוסניה והרצגובינה',
'BBD' => 'דולר ברבדיאני',
'BDT' => 'טאקה בנגלדשי',
'BEC' => 'פרנק בלגי (בר המרה)',
@@ -554,13 +560,15 @@ $currencyNames = array(
'BRL' => 'ריאל ברזילאי',
'BSD' => 'דולר בהאמי',
'BTN' => 'נגולטרום בהוטני',
- 'BWP' => 'פולה בוצוואני',
- 'BYR' => 'רובל בלרוסי',
+ 'BWP' => 'פולה בוטסואני',
+ 'BYN' => 'רובל בלרוסי',
+ 'BYR' => 'רובל בלרוסי (2000–2016)',
'BZD' => 'דולר בליזי',
'CAD' => 'דולר קנדי',
'CDF' => 'פרנק קונגולזי',
'CHF' => 'פרנק שוויצרי',
'CLP' => 'פסו צ׳ילאני',
+ 'CNH' => 'יואן סיני (CNH)',
'CNY' => 'יואן סיני',
'COP' => 'פסו קולומביאני',
'CRC' => 'קולון קוסטה־ריקני',
@@ -590,13 +598,13 @@ $currencyNames = array(
'FKP' => 'לירה של איי פוקלנד',
'FRF' => 'פרנק צרפתי',
'GBP' => 'לירה שטרלינג',
- 'GEL' => 'לרי גאורגי',
+ 'GEL' => 'לארי גאורגי',
'GHS' => 'סדי גאני',
'GIP' => 'פאונד גיברלטר',
- 'GMD' => 'דלאסי גמבי',
+ 'GMD' => 'דלסי גמבי',
'GNF' => 'פרנק גינאי',
'GRD' => 'דרכמה',
- 'GTQ' => 'קצל גואטמלי',
+ 'GTQ' => 'קצאל גואטמלי',
'GWP' => 'פזו גינאי',
'GYD' => 'דולר גיאני',
'HKD' => 'דולר הונג קונגי',
@@ -607,23 +615,23 @@ $currencyNames = array(
'IDR' => 'רופיה אינדונזית',
'IEP' => 'לירה אירית',
'ILP' => 'לירה ישראלית',
- 'ILS' => 'ש״ח',
+ 'ILS' => 'שקל חדש',
'INR' => 'רופי הודי',
- 'IQD' => 'דינר עירקי',
+ 'IQD' => 'דינר עיראקי',
'IRR' => 'ריאל איראני',
- 'ISK' => 'קרונה איסלנדית',
+ 'ISK' => 'כתר איסלנדי',
'ITL' => 'לירה איטלקית',
'JMD' => 'דולר ג׳מייקני',
'JOD' => 'דינר ירדני',
'JPY' => 'ין יפני',
- 'KES' => 'שילינג קנייאתי',
+ 'KES' => 'שילינג קנייתי',
'KGS' => 'סום קירגיזי',
'KHR' => 'ריל קמבודי',
'KMF' => 'פרנק קומורואי',
- 'KPW' => 'וון צפון-קוריאני',
- 'KRW' => 'וון דרום-קוריאני',
+ 'KPW' => 'וון צפון קוריאני',
+ 'KRW' => 'וון דרום קוריאני',
'KWD' => 'דינר כוויתי',
- 'KYD' => 'דולר קיימאני',
+ 'KYD' => 'דולר קיימני',
'KZT' => 'טנגה קזחסטני',
'LAK' => 'קיפ לאי',
'LBP' => 'לירה לבנונית',
@@ -636,18 +644,19 @@ $currencyNames = array(
'LYD' => 'דינר לובי',
'MAD' => 'דירהם מרוקאי',
'MAF' => 'פרנק מרוקאי',
- 'MDL' => 'ליאו מולדובני',
+ 'MDL' => 'לאו מולדובני',
'MGA' => 'אריארי מלגשי',
'MGF' => 'פרנק מדגסקארי',
'MKD' => 'דינר מקדוני',
'MMK' => 'קיאט מיאנמרי',
- 'MNT' => 'טוגריק מונגולי',
+ 'MNT' => 'טוגרוג מונגולי',
'MOP' => 'פטקה של מקאו',
- 'MRO' => 'אוגוויה מאוריטני',
+ 'MRO' => 'אואוגויה מאוריטני (1973–2017)',
+ 'MRU' => 'אואוגויה מאוריטני',
'MTL' => 'לירה מלטית',
'MUR' => 'רופי מאוריציני',
'MVR' => 'רופיה מלדיבית',
- 'MWK' => 'קואצ׳ה מלאוי',
+ 'MWK' => 'קואצ׳ה מלאווי',
'MXN' => 'פזו מקסיקני',
'MXP' => 'פזו מקסיקני (1861 – 1992)',
'MYR' => 'רינגיט מלזי',
@@ -656,21 +665,21 @@ $currencyNames = array(
'MZN' => 'מטיקל מוזמביני',
'NAD' => 'דולר נמיבי',
'NGN' => 'נאירה ניגרי',
- 'NIO' => 'קורדובה ניקראגי',
+ 'NIO' => 'קורדובה ניקרגואה',
'NLG' => 'גילדן הולנדי',
- 'NOK' => 'כתר נורבגי',
+ 'NOK' => 'כתר נורווגי',
'NPR' => 'רופי נפאלי',
'NZD' => 'דולר ניו זילנדי',
'OMR' => 'ריאל עומאני',
'PAB' => 'בלבואה פנמי',
- 'PEN' => 'סול פרואני חדש',
+ 'PEN' => 'סול פרואני',
'PGK' => 'קינה של פפואה גינאה החדשה',
'PHP' => 'פזו פיליפיני',
'PKR' => 'רופי פקיסטני',
'PLN' => 'זלוטי פולני',
'PLZ' => 'זלוטי (1950 – 1995)',
'PTE' => 'אסקודו פורטוגלי',
- 'PYG' => 'גוורני פראגוואי',
+ 'PYG' => 'גוארני פרגוואי',
'QAR' => 'ריאל קטארי',
'ROL' => 'לאו רומני ישן',
'RON' => 'לאו רומני',
@@ -690,15 +699,16 @@ $currencyNames = array(
'SIT' => 'טולאר סלובני',
'SKK' => 'קורונה סלובקי',
'SLL' => 'ליאון סיירה לאוני',
- 'SOS' => 'שילינג סומאלי',
+ 'SOS' => 'שילינג סומלי',
'SRD' => 'דולר סורינאמי',
'SRG' => 'גילדר סורינאמי',
'SSP' => 'לירה דרום-סודנית',
- 'STD' => 'דוברה של סן טומה ופרינסיפה',
+ 'STD' => 'דוברה של סן טומה ופרינסיפה (1977–2017)',
+ 'STN' => 'דוברה של סן טומה ופרינסיפה',
'SUR' => 'רובל סובייטי',
'SVC' => 'קולון סלבדורי',
'SYP' => 'לירה סורית',
- 'SZL' => 'לילנגני סווזי',
+ 'SZL' => 'לילנגני סווזילנדי',
'THB' => 'בהט תאילנדי',
'TJS' => 'סומוני טג׳קיסטני',
'TMM' => 'מנאט טורקמאני',
@@ -711,7 +721,7 @@ $currencyNames = array(
'TTD' => 'דולר טרינידדי',
'TWD' => 'דולר טייוואני חדש',
'TZS' => 'שילינג טנזני',
- 'UAH' => 'גריבנה אוקראיני',
+ 'UAH' => 'הריבנה אוקראיני',
'UGS' => 'שילינג אוגנדי (1966 – 1987)',
'UGX' => 'שילינג אוגנדי',
'USD' => 'דולר אמריקאי',
@@ -720,17 +730,18 @@ $currencyNames = array(
'UYU' => 'פסו אורוגוואי',
'UZS' => 'סום אוזבקי',
'VEB' => 'בוליבר ונצואלי (1871–2008)',
- 'VEF' => 'בוליבר ונצואלי',
+ 'VEF' => 'בוליבר ונצואלי (2008–2018)',
+ 'VES' => 'בוליבר ונצואלי',
'VND' => 'דונג וייטנאמי',
'VUV' => 'ואטו של ונואטו',
'WST' => 'טאלה סמואי',
- 'XAF' => 'פרנק CFA BEAC',
+ 'XAF' => 'פרנק CFA מרכז אפריקני',
'XAG' => 'כסף',
'XAU' => 'זהב',
'XCD' => 'דולר מזרח קריבי',
'XDR' => 'זכויות משיכה מיוחדות',
'XFO' => 'פרנק זהב',
- 'XOF' => 'פרנק CFA BCEAO',
+ 'XOF' => 'פרנק CFA מערב אפריקני',
'XPD' => 'פלדיום',
'XPF' => 'פרנק פולינזיה הצרפתית',
'XPT' => 'פלטינה',
@@ -743,12 +754,12 @@ $currencyNames = array(
'ZAL' => 'ראנד דרום אפריקאי (כספי)',
'ZAR' => 'ראנד דרום אפריקאי',
'ZMK' => 'קוואצ׳ה זמבית (1968–2012)',
- 'ZMW' => 'קוואצ׳ה זמבית',
+ 'ZMW' => 'קוואצ׳ה זמבי',
'ZRN' => 'זאיר חדש',
'ZWD' => 'דולר זימבבואי',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'AED' => 'AED',
'AFN' => 'AFN',
'ALL' => 'ALL',
@@ -772,13 +783,15 @@ $currencySymbols = array(
'BSD' => 'BSD',
'BTN' => 'BTN',
'BWP' => 'BWP',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CA$',
'CDF' => 'CDF',
'CHF' => 'CHF',
'CLP' => 'CLP',
- 'CNY' => 'CN¥',
+ 'CNH' => 'CNH',
+ 'CNY' => '‎CN¥‎',
'COP' => 'COP',
'CRC' => 'CRC',
'CUC' => 'CUC',
@@ -817,7 +830,7 @@ $currencySymbols = array(
'ISK' => 'ISK',
'JMD' => 'JMD',
'JOD' => 'JOD',
- 'JPY' => 'JP¥',
+ 'JPY' => '¥',
'KES' => 'KES',
'KGS' => 'KGS',
'KHR' => 'KHR',
@@ -842,6 +855,7 @@ $currencySymbols = array(
'MNT' => 'MNT',
'MOP' => 'MOP',
'MRO' => 'MRO',
+ 'MRU' => 'MRU',
'MUR' => 'MUR',
'MVR' => 'MVR',
'MWK' => 'MWK',
@@ -879,6 +893,7 @@ $currencySymbols = array(
'SRD' => 'SRD',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'STN',
'SYP' => 'SYP',
'SZL' => 'SZL',
'THB' => '฿',
@@ -896,6 +911,7 @@ $currencySymbols = array(
'UYU' => 'UYU',
'UZS' => 'UZS',
'VEF' => 'VEF',
+ 'VES' => 'VES',
'VND' => '₫',
'VUV' => 'VUV',
'WST' => 'WST',
@@ -906,18 +922,17 @@ $currencySymbols = array(
'YER' => 'YER',
'ZAR' => 'ZAR',
'ZMW' => 'ZMW',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'האי אסנשן',
'AD' => 'אנדורה',
'AE' => 'איחוד האמירויות הערביות',
'AF' => 'אפגניסטן',
'AG' => 'אנטיגואה וברבודה',
- 'AI' => 'אנגילה',
+ 'AI' => 'אנגווילה',
'AL' => 'אלבניה',
'AM' => 'ארמניה',
- 'AN' => 'אנטילים הולנדיים',
'AO' => 'אנגולה',
'AQ' => 'אנטארקטיקה',
'AR' => 'ארגנטינה',
@@ -944,14 +959,14 @@ $countryNames = array(
'BR' => 'ברזיל',
'BS' => 'איי בהאמה',
'BT' => 'בהוטן',
- 'BV' => 'איי בובה',
- 'BW' => 'בוטסוואנה',
+ 'BV' => 'האי בובה',
+ 'BW' => 'בוצוואנה',
'BY' => 'בלארוס',
'BZ' => 'בליז',
'CA' => 'קנדה',
'CC' => 'איי קוקוס (קילינג)',
'CD' => 'קונגו - קינשאסה',
- 'CF' => 'הרפובליקה של מרכז אפריקה',
+ 'CF' => 'הרפובליקה המרכז-אפריקאית',
'CG' => 'קונגו - ברזאויל',
'CH' => 'שווייץ',
'CI' => 'חוף השנהב',
@@ -984,33 +999,34 @@ $countryNames = array(
'ES' => 'ספרד',
'ET' => 'אתיופיה',
'EU' => 'האיחוד האירופי',
+ 'EZ' => 'גוש האירו',
'FI' => 'פינלנד',
'FJ' => 'פיג׳י',
'FK' => 'איי פוקלנד',
'FM' => 'מיקרונזיה',
'FO' => 'איי פארו',
'FR' => 'צרפת',
- 'GA' => 'גאבון',
+ 'GA' => 'גבון',
'GB' => 'בריטניה',
'GD' => 'גרנדה',
'GE' => 'גאורגיה',
'GF' => 'גיאנה הצרפתית',
- 'GG' => 'גרנסי',
+ 'GG' => 'גרנזי',
'GH' => 'גאנה',
'GI' => 'גיברלטר',
'GL' => 'גרינלנד',
'GM' => 'גמביה',
- 'GN' => 'גיניאה',
+ 'GN' => 'גינאה',
'GP' => 'גוואדלופ',
- 'GQ' => 'גיניאה המשוונית',
+ 'GQ' => 'גינאה המשוונית',
'GR' => 'יוון',
'GS' => 'ג׳ורג׳יה הדרומית ואיי סנדוויץ׳ הדרומיים',
'GT' => 'גואטמלה',
'GU' => 'גואם',
- 'GW' => 'גיניאה-ביסאו',
+ 'GW' => 'גינאה-ביסאו',
'GY' => 'גיאנה',
'HK' => 'הונג קונג',
- 'HM' => 'האי הרד ואיי מקדונלד',
+ 'HM' => 'איי הרד ומקדונלד',
'HN' => 'הונדורס',
'HR' => 'קרואטיה',
'HT' => 'האיטי',
@@ -1026,7 +1042,7 @@ $countryNames = array(
'IR' => 'איראן',
'IS' => 'איסלנד',
'IT' => 'איטליה',
- 'JE' => 'ג׳רסי',
+ 'JE' => 'ג׳רזי',
'JM' => 'ג׳מייקה',
'JO' => 'ירדן',
'JP' => 'יפן',
@@ -1061,7 +1077,7 @@ $countryNames = array(
'MH' => 'איי מרשל',
'MK' => 'מקדוניה',
'ML' => 'מאלי',
- 'MM' => 'מיאנמאר (בורמה)‎',
+ 'MM' => 'מיאנמר (בורמה)',
'MN' => 'מונגוליה',
'MO' => 'מקאו',
'MP' => 'איי מריאנה הצפוניים',
@@ -1078,7 +1094,7 @@ $countryNames = array(
'NA' => 'נמיביה',
'NC' => 'קלדוניה החדשה',
'NE' => 'ניז׳ר',
- 'NF' => 'איי נורפוק',
+ 'NF' => 'האי נורפוק',
'NG' => 'ניגריה',
'NI' => 'ניקרגואה',
'NL' => 'הולנד',
@@ -1091,8 +1107,8 @@ $countryNames = array(
'PA' => 'פנמה',
'PE' => 'פרו',
'PF' => 'פולינזיה הצרפתית',
- 'PG' => 'פפואה גיניאה החדשה',
- 'PH' => 'פיליפינים',
+ 'PG' => 'פפואה גינאה החדשה',
+ 'PH' => 'הפיליפינים',
'PK' => 'פקיסטן',
'PL' => 'פולין',
'PM' => 'סנט פייר ומיקלון',
@@ -1100,10 +1116,10 @@ $countryNames = array(
'PR' => 'פוארטו ריקו',
'PS' => 'פלסטין',
'PT' => 'פורטוגל',
- 'PW' => 'פאלאו',
+ 'PW' => 'פלאו',
'PY' => 'פרגוואי',
'QA' => 'קטאר',
- 'QO' => 'אוקיאניה חיצונית',
+ 'QO' => 'טריטוריות באוקיאניה',
'RE' => 'ראוניון',
'RO' => 'רומניה',
'RS' => 'סרביה',
@@ -1117,39 +1133,40 @@ $countryNames = array(
'SG' => 'סינגפור',
'SH' => 'סנט הלנה',
'SI' => 'סלובניה',
- 'SJ' => 'סוולבארד ויאן מאיין',
+ 'SJ' => 'סבאלברד ויאן מאיין',
'SK' => 'סלובקיה',
'SL' => 'סיירה לאונה',
'SM' => 'סן מרינו',
'SN' => 'סנגל',
'SO' => 'סומליה',
- 'SR' => 'סורינם',
+ 'SR' => 'סורינאם',
'SS' => 'דרום סודן',
'ST' => 'סאו טומה ופרינסיפה',
'SV' => 'אל סלבדור',
- 'SX' => 'סינט מארטן',
+ 'SX' => 'סנט מארטן',
'SY' => 'סוריה',
'SZ' => 'סווזילנד',
'TA' => 'טריסטן דה קונה',
- 'TC' => 'איי טורקס וקאיקוס',
+ 'TC' => 'איי טרקס וקייקוס',
'TD' => 'צ׳אד',
- 'TF' => 'טריטוריות דרומיות של צרפת',
+ 'TF' => 'הטריטוריות הדרומיות של צרפת',
'TG' => 'טוגו',
'TH' => 'תאילנד',
'TJ' => 'טג׳יקיסטן',
'TK' => 'טוקלאו',
- 'TL' => 'טימור לסטה',
+ 'TL' => 'טימור-לסטה',
'TM' => 'טורקמניסטן',
'TN' => 'תוניסיה',
'TO' => 'טונגה',
'TR' => 'טורקיה',
'TT' => 'טרינידד וטובגו',
- 'TV' => 'טובלו',
+ 'TV' => 'טובאלו',
'TW' => 'טייוואן',
'TZ' => 'טנזניה',
'UA' => 'אוקראינה',
'UG' => 'אוגנדה',
- 'UM' => 'איים לחוף ארצות הברית',
+ 'UM' => 'האיים המרוחקים הקטנים של ארה״ב',
+ 'UN' => 'האומות המאוחדות',
'US' => 'ארה״ב',
'UY' => 'אורוגוואי',
'UZ' => 'אוזבקיסטן',
@@ -1167,38 +1184,66 @@ $countryNames = array(
'YT' => 'מאיוט',
'ZA' => 'דרום אפריקה',
'ZM' => 'זמביה',
- 'ZW' => 'זימבאבווה',
-);
+ 'ZW' => 'זימבבואה',
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-many' => '{0} מאות',
+ 'century-one' => 'מאה {0}',
+ 'century-other' => '{0} מאות',
+ 'century-two' => '{0} מאות',
'day-future-many' => 'בעוד {0} ימים',
'day-future-one' => 'בעוד יום {0}',
'day-future-other' => 'בעוד {0} ימים',
'day-future-two' => 'בעוד יומיים',
'day-many' => '{0} יום',
- 'day-narrow-future-many' => 'בעוד {0} יום',
+ 'day-narrow-future-many' => 'בעוד {0} ימים',
'day-narrow-future-one' => 'מחר',
- 'day-narrow-future-other' => 'בעוד {0} ימ׳',
+ 'day-narrow-future-other' => 'בעוד {0} ימים',
'day-narrow-future-two' => 'בעוד יומיים',
- 'day-narrow-past-many' => 'לפני {0} יום',
+ 'day-narrow-past-many' => 'לפני {0} ימים',
'day-narrow-past-one' => 'אתמול',
- 'day-narrow-past-other' => 'לפני {0} ימ׳',
+ 'day-narrow-past-other' => 'לפני {0} ימים',
'day-narrow-past-two' => 'לפני יומיים',
- 'day-one' => 'יום',
+ 'day-one' => 'יום {0}',
'day-other' => '{0} ימים',
'day-past-many' => 'לפני {0} ימים',
'day-past-one' => 'לפני יום {0}',
'day-past-other' => 'לפני {0} ימים',
'day-past-two' => 'לפני יומיים',
- 'day-short-future-many' => 'בעוד {0} יום',
+ 'day-short-future-many' => 'בעוד {0} ימים',
'day-short-future-one' => 'מחר',
- 'day-short-future-other' => 'בעוד {0} ימ׳',
+ 'day-short-future-other' => 'בעוד {0} ימים',
'day-short-future-two' => 'בעוד יומיים',
- 'day-short-past-many' => 'לפני {0} יום',
+ 'day-short-past-many' => 'לפני {0} ימים',
'day-short-past-one' => 'אתמול',
- 'day-short-past-other' => 'לפני {0} ימ׳',
+ 'day-short-past-other' => 'לפני {0} ימים',
'day-short-past-two' => 'לפני יומיים',
'day-two' => 'יומיים',
+ 'fri-future-many' => 'בעוד {0} ימי שישי',
+ 'fri-future-one' => 'בעוד יום שישי {0}',
+ 'fri-future-other' => 'בעוד {0} ימי שישי',
+ 'fri-future-two' => 'בעוד {0} ימי שישי',
+ 'fri-narrow-future-many' => 'בעוד {0} ימי שישי',
+ 'fri-narrow-future-one' => 'בעוד יום שישי {0}',
+ 'fri-narrow-future-other' => 'בעוד {0} ימי שישי',
+ 'fri-narrow-future-two' => 'בעוד {0} ימי שישי',
+ 'fri-narrow-past-many' => 'לפני {0} ימי שישי',
+ 'fri-narrow-past-one' => 'לפני יום שישי {0}',
+ 'fri-narrow-past-other' => 'לפני {0} ימי שישי',
+ 'fri-narrow-past-two' => 'לפני {0} ימי שישי',
+ 'fri-past-many' => 'לפני {0} ימי שישי',
+ 'fri-past-one' => 'לפני יום שישי {0}',
+ 'fri-past-other' => 'לפני {0} ימי שישי',
+ 'fri-past-two' => 'לפני {0} ימי שישי',
+ 'fri-short-future-many' => 'בעוד {0} ימי שישי',
+ 'fri-short-future-one' => 'בעוד יום שישי {0}',
+ 'fri-short-future-other' => 'בעוד {0} ימי שישי',
+ 'fri-short-future-two' => 'בעוד {0} ימי שישי',
+ 'fri-short-past-many' => 'לפני {0} ימי שישי',
+ 'fri-short-past-one' => 'לפני יום שישי {0}',
+ 'fri-short-past-other' => 'לפני {0} ימי שישי',
+ 'fri-short-past-two' => 'לפני {0} ימי שישי',
'hour-future-many' => 'בעוד {0} שעות',
'hour-future-one' => 'בעוד שעה',
'hour-future-other' => 'בעוד {0} שעות',
@@ -1263,6 +1308,30 @@ $timeUnits = array(
'minute-short-past-other' => 'לפני {0} דק׳',
'minute-short-past-two' => 'לפני {0} דק׳',
'minute-two' => 'שתי דקות',
+ 'mon-future-many' => 'בעוד {0} ימי שני',
+ 'mon-future-one' => 'בעוד יום שני {0}',
+ 'mon-future-other' => 'בעוד {0} ימי שני',
+ 'mon-future-two' => 'בעוד {0} ימי שני',
+ 'mon-narrow-future-many' => 'בעוד {0} ימי שני',
+ 'mon-narrow-future-one' => 'בעוד יום שני {0}',
+ 'mon-narrow-future-other' => 'בעוד {0} ימי שני',
+ 'mon-narrow-future-two' => 'בעוד {0} ימי שני',
+ 'mon-narrow-past-many' => 'לפני {0} ימי שני',
+ 'mon-narrow-past-one' => 'לפני יום שני {0}',
+ 'mon-narrow-past-other' => 'לפני {0} ימי שני',
+ 'mon-narrow-past-two' => 'לפני {0} ימי שני',
+ 'mon-past-many' => 'לפני {0} ימי שני',
+ 'mon-past-one' => 'לפני יום שני {0}',
+ 'mon-past-other' => 'לפני {0} ימי שני',
+ 'mon-past-two' => 'לפני {0} ימי שני',
+ 'mon-short-future-many' => 'בעוד {0} ימי שני',
+ 'mon-short-future-one' => 'בעוד יום שני {0}',
+ 'mon-short-future-other' => 'בעוד {0} ימי שני',
+ 'mon-short-future-two' => 'בעוד {0} ימי שני',
+ 'mon-short-past-many' => 'לפני {0} ימי שני',
+ 'mon-short-past-one' => 'לפני יום שני {0}',
+ 'mon-short-past-other' => 'לפני {0} ימי שני',
+ 'mon-short-past-two' => 'לפני {0} ימי שני',
'month-future-many' => 'בעוד {0} חודשים',
'month-future-one' => 'בעוד חודש',
'month-future-other' => 'בעוד {0} חודשים',
@@ -1319,6 +1388,30 @@ $timeUnits = array(
'quarter-short-past-one' => 'ברבע׳ הקודם',
'quarter-short-past-other' => 'לפני {0} רבע׳',
'quarter-short-past-two' => 'לפני שני רבע׳',
+ 'sat-future-many' => 'בעוד {0} שבתות',
+ 'sat-future-one' => 'בעוד שבת {0}',
+ 'sat-future-other' => 'בעוד {0} שבתות',
+ 'sat-future-two' => 'בעוד {0} שבתות',
+ 'sat-narrow-future-many' => 'בעוד {0} שבתות',
+ 'sat-narrow-future-one' => 'בעוד שבת {0}',
+ 'sat-narrow-future-other' => 'בעוד {0} שבתות',
+ 'sat-narrow-future-two' => 'בעוד {0} שבתות',
+ 'sat-narrow-past-many' => 'לפני {0} שבתות',
+ 'sat-narrow-past-one' => 'לפני שבת {0}',
+ 'sat-narrow-past-other' => 'לפני {0} שבתות',
+ 'sat-narrow-past-two' => 'לפני {0} שבתות',
+ 'sat-past-many' => 'לפני {0} שבתות',
+ 'sat-past-one' => 'לפני שבת {0}',
+ 'sat-past-other' => 'לפני {0} שבתות',
+ 'sat-past-two' => 'לפני {0} שבתות',
+ 'sat-short-future-many' => 'בעוד {0} שבתות',
+ 'sat-short-future-one' => 'בעוד שבת {0}',
+ 'sat-short-future-other' => 'בעוד {0} שבתות',
+ 'sat-short-future-two' => 'בעוד {0} שבתות',
+ 'sat-short-past-many' => 'לפני {0} שבתות',
+ 'sat-short-past-one' => 'לפני שבת {0}',
+ 'sat-short-past-other' => 'לפני {0} שבתות',
+ 'sat-short-past-two' => 'לפני {0} שבתות',
'second-future-many' => 'בעוד {0} שניות',
'second-future-one' => 'בעוד שנייה',
'second-future-other' => 'בעוד {0} שניות',
@@ -1347,6 +1440,102 @@ $timeUnits = array(
'second-short-past-other' => 'לפני {0} שנ׳',
'second-short-past-two' => 'לפני שתי שנ׳',
'second-two' => 'שתי שניות',
+ 'sun-future-many' => 'בעוד {0} ימי ראשון',
+ 'sun-future-one' => 'בעוד יום ראשון {0}',
+ 'sun-future-other' => 'בעוד {0} ימי ראשון',
+ 'sun-future-two' => 'בעוד {0} ימי ראשון',
+ 'sun-narrow-future-many' => 'בעוד {0} ימי ראשון',
+ 'sun-narrow-future-one' => 'בעוד יום ראשון {0}',
+ 'sun-narrow-future-other' => 'בעוד {0} ימי ראשון',
+ 'sun-narrow-future-two' => 'בעוד {0} ימי ראשון',
+ 'sun-narrow-past-many' => 'לפני {0} ימי ראשון',
+ 'sun-narrow-past-one' => 'לפני יום ראשון {0}',
+ 'sun-narrow-past-other' => 'לפני {0} ימי ראשון',
+ 'sun-narrow-past-two' => 'לפני {0} ימי ראשון',
+ 'sun-past-many' => 'לפני {0} ימי ראשון',
+ 'sun-past-one' => 'לפני יום ראשון {0}',
+ 'sun-past-other' => 'לפני {0} ימי ראשון',
+ 'sun-past-two' => 'לפני {0} ימי ראשון',
+ 'sun-short-future-many' => 'בעוד {0} ימי ראשון',
+ 'sun-short-future-one' => 'בעוד יום ראשון {0}',
+ 'sun-short-future-other' => 'בעוד {0} ימי ראשון',
+ 'sun-short-future-two' => 'בעוד {0} ימי ראשון',
+ 'sun-short-past-many' => 'לפני {0} ימי ראשון',
+ 'sun-short-past-one' => 'לפני יום ראשון {0}',
+ 'sun-short-past-other' => 'לפני {0} ימי ראשון',
+ 'sun-short-past-two' => 'לפני {0} ימי ראשון',
+ 'thu-future-many' => 'בעוד {0} ימי חמישי',
+ 'thu-future-one' => 'בעוד יום חמישי {0}',
+ 'thu-future-other' => 'בעוד {0} ימי חמישי',
+ 'thu-future-two' => 'בעוד {0} ימי חמישי',
+ 'thu-narrow-future-many' => 'בעוד {0} ימי חמישי',
+ 'thu-narrow-future-one' => 'בעוד יום חמישי {0}',
+ 'thu-narrow-future-other' => 'בעוד {0} ימי חמישי',
+ 'thu-narrow-future-two' => 'בעוד {0} ימי חמישי',
+ 'thu-narrow-past-many' => 'לפני {0} ימי חמישי',
+ 'thu-narrow-past-one' => 'לפני יום חמישי {0}',
+ 'thu-narrow-past-other' => 'לפני {0} ימי חמישי',
+ 'thu-narrow-past-two' => 'לפני {0} ימי חמישי',
+ 'thu-past-many' => 'לפני {0} ימי חמישי',
+ 'thu-past-one' => 'לפני יום חמישי {0}',
+ 'thu-past-other' => 'לפני {0} ימי חמישי',
+ 'thu-past-two' => 'לפני {0} ימי חמישי',
+ 'thu-short-future-many' => 'בעוד {0} ימי חמישי',
+ 'thu-short-future-one' => 'בעוד יום חמישי {0}',
+ 'thu-short-future-other' => 'בעוד {0} ימי חמישי',
+ 'thu-short-future-two' => 'בעוד {0} ימי חמישי',
+ 'thu-short-past-many' => 'לפני {0} ימי חמישי',
+ 'thu-short-past-one' => 'לפני יום חמישי {0}',
+ 'thu-short-past-other' => 'לפני {0} ימי חמישי',
+ 'thu-short-past-two' => 'לפני {0} ימי חמישי',
+ 'tue-future-many' => 'בעוד {0} ימי שלישי',
+ 'tue-future-one' => 'בעוד יום שלישי {0}',
+ 'tue-future-other' => 'בעוד {0} ימי שלישי',
+ 'tue-future-two' => 'בעוד {0} ימי שלישי',
+ 'tue-narrow-future-many' => 'בעוד {0} ימי שלישי',
+ 'tue-narrow-future-one' => 'בעוד יום שלישי {0}',
+ 'tue-narrow-future-other' => 'בעוד {0} ימי שלישי',
+ 'tue-narrow-future-two' => 'בעוד {0} ימי שלישי',
+ 'tue-narrow-past-many' => 'לפני {0} ימי שלישי',
+ 'tue-narrow-past-one' => 'לפני יום שלישי {0}',
+ 'tue-narrow-past-other' => 'לפני {0} ימי שלישי',
+ 'tue-narrow-past-two' => 'לפני {0} ימי שלישי',
+ 'tue-past-many' => 'לפני {0} ימי שלישי',
+ 'tue-past-one' => 'לפני יום שלישי {0}',
+ 'tue-past-other' => 'לפני {0} ימי שלישי',
+ 'tue-past-two' => 'לפני {0} ימי שלישי',
+ 'tue-short-future-many' => 'בעוד {0} ימי שלישי',
+ 'tue-short-future-one' => 'בעוד יום שלישי {0}',
+ 'tue-short-future-other' => 'בעוד {0} ימי שלישי',
+ 'tue-short-future-two' => 'בעוד {0} ימי שלישי',
+ 'tue-short-past-many' => 'לפני {0} ימי שלישי',
+ 'tue-short-past-one' => 'לפני יום שלישי {0}',
+ 'tue-short-past-other' => 'לפני {0} ימי שלישי',
+ 'tue-short-past-two' => 'לפני {0} ימי שלישי',
+ 'wed-future-many' => 'בעוד {0} ימי רביעי',
+ 'wed-future-one' => 'בעוד יום רביעי {0}',
+ 'wed-future-other' => 'בעוד {0} ימי רביעי',
+ 'wed-future-two' => 'בעוד {0} ימי רביעי',
+ 'wed-narrow-future-many' => 'בעוד {0} ימי רביעי',
+ 'wed-narrow-future-one' => 'בעוד יום רביעי {0}',
+ 'wed-narrow-future-other' => 'בעוד {0} ימי רביעי',
+ 'wed-narrow-future-two' => 'בעוד {0} ימי רביעי',
+ 'wed-narrow-past-many' => 'לפני {0} ימי רביעי',
+ 'wed-narrow-past-one' => 'לפני יום רביעי {0}',
+ 'wed-narrow-past-other' => 'לפני {0} ימי רביעי',
+ 'wed-narrow-past-two' => 'לפני {0} ימי רביעי',
+ 'wed-past-many' => 'לפני {0} ימי רביעי',
+ 'wed-past-one' => 'לפני יום רביעי {0}',
+ 'wed-past-other' => 'לפני {0} ימי רביעי',
+ 'wed-past-two' => 'לפני {0} ימי רביעי',
+ 'wed-short-future-many' => 'בעוד {0} ימי רביעי',
+ 'wed-short-future-one' => 'בעוד יום רביעי {0}',
+ 'wed-short-future-other' => 'בעוד {0} ימי רביעי',
+ 'wed-short-future-two' => 'בעוד {0} ימי רביעי',
+ 'wed-short-past-many' => 'לפני {0} ימי רביעי',
+ 'wed-short-past-one' => 'לפני יום רביעי {0}',
+ 'wed-short-past-other' => 'לפני {0} ימי רביעי',
+ 'wed-short-past-two' => 'לפני {0} ימי רביעי',
'week-future-many' => 'בעוד {0} שבועות',
'week-future-one' => 'בעוד שבוע',
'week-future-other' => 'בעוד {0} שבועות',
@@ -1379,7 +1568,7 @@ $timeUnits = array(
'year-future-one' => 'בעוד שנה',
'year-future-other' => 'בעוד {0} שנים',
'year-future-two' => 'בעוד שנתיים',
- 'year-many' => '{0} שנה',
+ 'year-many' => '{0} שנים',
'year-narrow-future-many' => 'בעוד {0} שנה',
'year-narrow-future-one' => 'בעוד שנה',
'year-narrow-future-other' => 'בעוד {0} שנים',
@@ -1403,4 +1592,4 @@ $timeUnits = array(
'year-short-past-other' => 'לפני {0} שנים',
'year-short-past-two' => 'לפני שנתיים',
'year-two' => 'שנתיים',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesHi.php b/MLEB/cldr/CldrNames/CldrNamesHi.php
index 01ba682e..8982ff7e 100644
--- a/MLEB/cldr/CldrNames/CldrNamesHi.php
+++ b/MLEB/cldr/CldrNames/CldrNamesHi.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'अफ़ार',
'ab' => 'अब्ख़ाज़ियन',
'ace' => 'अचाइनीस',
@@ -24,7 +24,8 @@ $languageNames = array(
'ar-001' => 'आधुनिक मानक अरबी',
'arc' => 'ऐरेमेक',
'arn' => 'मापूचे',
- 'arp' => 'अराफाओ',
+ 'arp' => 'अरापाहो',
+ 'ars' => 'नज्दी अरबी',
'arw' => 'अरावक',
'as' => 'असमिया',
'asa' => 'असु',
@@ -42,6 +43,7 @@ $languageNames = array(
'bem' => 'बेम्बा',
'bez' => 'बेना',
'bg' => 'बुल्गारियाई',
+ 'bgn' => 'पश्चिमी बलोची',
'bho' => 'भोजपुरी',
'bi' => 'बिस्लामा',
'bik' => 'बिकोल',
@@ -72,13 +74,14 @@ $languageNames = array(
'chn' => 'चिनूक जारगॉन',
'cho' => 'चोक्तौ',
'chp' => 'शिपेव्यान',
- 'chr' => 'शेरोकी',
+ 'chr' => 'चेरोकी',
'chy' => 'शेयेन्न',
'ckb' => 'सोरानी कुर्दिश',
'co' => 'कोर्सीकन',
'cop' => 'कॉप्टिक',
'cr' => 'क्री',
'crh' => 'क्रीमीन तुर्की',
+ 'crs' => 'सेसेल्वा क्रिओल फ्रेंच',
'cs' => 'चेक',
'csb' => 'काशुबियन',
'cu' => 'चर्च साल्विक',
@@ -99,11 +102,12 @@ $languageNames = array(
'doi' => 'डोग्री',
'dsb' => 'निचला सॉर्बियन',
'dua' => 'दुआला',
- 'dum' => 'मध्य पुर्तगाली',
+ 'dum' => 'मध्यकालीन पुर्तगाली',
'dv' => 'दिवेही',
'dyo' => 'जोला-फोंई',
'dyu' => 'ड्युला',
'dz' => 'ज़ोन्गखा',
+ 'dzg' => 'दज़ागा',
'ebu' => 'एम्बु',
'ee' => 'ईवे',
'efi' => 'एफिक',
@@ -119,8 +123,8 @@ $languageNames = array(
'enm' => 'मध्यकालीन अंग्रेज़ी',
'eo' => 'एस्पेरेंतो',
'es' => 'स्पेनी',
- 'es-419' => 'लैटिन अमेरिकी स्पेनी',
- 'es-es' => 'यूरोपीय स्पेनी',
+ 'es-419' => 'लैटिन अमेरिकी स्पेनिश',
+ 'es-es' => 'यूरोपीय स्पेनिश',
'es-mx' => 'मैक्सिकन स्पेनिश',
'et' => 'एस्टोनियाई',
'eu' => 'बास्क',
@@ -131,24 +135,25 @@ $languageNames = array(
'ff' => 'फुलाह',
'fi' => 'फ़िनिश',
'fil' => 'फ़िलिपीनो',
- 'fj' => 'फ़ीजी',
+ 'fj' => 'फिजियन',
'fo' => 'फ़ैरोइज़',
'fon' => 'फॉन',
'fr' => 'फ़्रेंच',
'fr-ca' => 'कनाडाई फ़्रेंच',
'fr-ch' => 'स्विस फ़्रेंच',
+ 'frc' => 'केजन फ़्रेंच',
'frm' => 'मध्यकालीन फ़्रांसीसी',
'fro' => 'पुरातन फ़्रांसीसी',
- 'frr' => 'उत्तरी फ्रीसीयन',
- 'frs' => 'पूर्वी फ्रीसीयन',
+ 'frr' => 'उत्तरी फ़्रीसियाई',
+ 'frs' => 'पूर्वी फ़्रीसियाई',
'fur' => 'फ्रीयुलीयान',
'fy' => 'पश्चिमी फ़्रिसियाई',
- 'ga' => 'आइरिश',
+ 'ga' => 'आयरिश',
'gaa' => 'गा',
'gag' => 'गागौज़',
'gay' => 'गायो',
'gba' => 'ग्बाया',
- 'gd' => 'स्काट्स् गायेलिक्',
+ 'gd' => 'स्कॉटिश गाएलिक',
'gez' => 'गीज़',
'gil' => 'गिल्बरतीस',
'gl' => 'गैलिशियन',
@@ -164,7 +169,7 @@ $languageNames = array(
'gu' => 'गुजराती',
'guz' => 'गुसी',
'gv' => 'मैंक्स',
- 'gwi' => 'ग्विच’इन',
+ 'gwi' => 'ग्विचइन',
'ha' => 'हौसा',
'hai' => 'हैडा',
'haw' => 'हवाई',
@@ -181,8 +186,9 @@ $languageNames = array(
'hup' => 'हूपा',
'hy' => 'आर्मेनियाई',
'hz' => 'हरैरो',
- 'ia' => 'ईन्टरलिंगुआ',
+ 'ia' => 'इंटरलिंगुआ',
'iba' => 'इबान',
+ 'ibb' => 'इबिबियो',
'id' => 'इंडोनेशियाई',
'ie' => 'ईन्टरलिंगुइ',
'ig' => 'ईग्बो',
@@ -191,7 +197,7 @@ $languageNames = array(
'ilo' => 'इलोको',
'inh' => 'इंगुश',
'io' => 'इडौ',
- 'is' => 'आइसलैंडी',
+ 'is' => 'आइसलैंडिक',
'it' => 'इतालवी',
'iu' => 'इनूकीटूत्',
'ja' => 'जापानी',
@@ -220,7 +226,8 @@ $languageNames = array(
'ki' => 'किकुयू',
'kj' => 'क्वान्यामा',
'kk' => 'कज़ाख़',
- 'kl' => 'ग्रीनलैंडिक',
+ 'kkj' => 'काको',
+ 'kl' => 'कलालीसुत',
'kln' => 'कलेंजिन',
'km' => 'खमेर',
'kmb' => 'किम्बन्दु',
@@ -229,7 +236,7 @@ $languageNames = array(
'koi' => 'कोमी-पर्मयाक',
'kok' => 'कोंकणी',
'kos' => 'कोसरैन',
- 'kpe' => 'क्पेल्लै',
+ 'kpe' => 'क्पेल',
'kr' => 'कनुरी',
'krc' => 'कराचय-बल्कार',
'krl' => 'करेलियन',
@@ -237,9 +244,10 @@ $languageNames = array(
'ks' => 'कश्मीरी',
'ksb' => 'शम्बाला',
'ksf' => 'बफिआ',
+ 'ksh' => 'कोलोनियाई',
'ku' => 'कुर्दिश',
'kum' => 'कुमीक',
- 'kut' => 'कुतेनाई',
+ 'kut' => 'क्यूतनाई',
'kv' => 'कोमी',
'kw' => 'कोर्निश',
'ky' => 'किर्गीज़',
@@ -256,58 +264,63 @@ $languageNames = array(
'ln' => 'लिंगाला',
'lo' => 'लाओ',
'lol' => 'मोंगो',
+ 'lou' => 'लुईज़ियाना क्रियोल',
'loz' => 'लोज़ी',
+ 'lrc' => 'उत्तरी लूरी',
'lt' => 'लिथुआनियाई',
'lu' => 'ल्यूबा-कटांगा',
'lua' => 'ल्यूबा-लुलुआ',
'lui' => 'लुइसेनो',
'lun' => 'लुन्डा',
'luo' => 'ल्युओ',
- 'lus' => 'लुशाई',
+ 'lus' => 'मिज़ो',
'luy' => 'ल्युईआ',
'lv' => 'लातवियाई',
'mad' => 'मादुरीस',
- 'mag' => 'मगाही',
+ 'mag' => 'मगही',
'mai' => 'मैथिली',
'mak' => 'मकासर',
'man' => 'मन्डिन्गो',
'mas' => 'मसाई',
'mdf' => 'मोक्ष',
- 'mdr' => 'मंधार',
+ 'mdr' => 'मंदार',
'men' => 'मेन्डे',
'mer' => 'मेरु',
'mfe' => 'मोरीस्येन',
'mg' => 'मालागासी',
- 'mga' => 'मध्यकाल आइरिश',
+ 'mga' => 'मध्यकालीन आइरिश',
'mgh' => 'मैखुवा-मीट्टो',
'mgo' => 'मेटा',
'mh' => 'मार्शलीज़',
'mi' => 'माओरी',
'mic' => 'मिकमैक',
'min' => 'मिनांग्काबाउ',
- 'mk' => 'मैसिडोनियाई',
+ 'mk' => 'मकदूनियाई',
'ml' => 'मलयालम',
- 'mn' => 'मंगोलीयाई',
+ 'mn' => 'मंगोलियाई',
'mnc' => 'मन्चु',
- 'mni' => 'मणिपूरी',
+ 'mni' => 'मणिपुरी',
'moh' => 'मोहौक',
'mos' => 'मोस्सी',
'mr' => 'मराठी',
'ms' => 'मलय',
'mt' => 'माल्टीज़',
'mua' => 'मुंडैंग',
- 'mul' => 'विविध भाषाएँ',
+ 'mul' => 'एकाधिक भाषाएँ',
'mus' => 'क्रीक',
'mwl' => 'मिरांडी',
'mwr' => 'मारवाड़ी',
'my' => 'बर्मीज़',
'myv' => 'एर्ज़या',
+ 'mzn' => 'माज़न्देरानी',
'na' => 'नाउरू',
+ 'nan' => 'nan',
'nap' => 'नीपोलिटन',
'naq' => 'नामा',
'nb' => 'नॉर्वेजियाई बोकमाल',
'nd' => 'उत्तरी देबेल',
'nds' => 'निचला जर्मन',
+ 'nds-nl' => 'निचली सैक्सन',
'ne' => 'नेपाली',
'new' => 'नेवाड़ी',
'ng' => 'डोन्गा',
@@ -317,6 +330,7 @@ $languageNames = array(
'nl-be' => 'फ़्लेमिश',
'nmg' => 'क्वासिओ',
'nn' => 'नॉर्वेजियाई नॉयनॉर्स्क',
+ 'nnh' => 'गैम्बू',
'no' => 'नॉर्वेजियाई',
'nog' => 'नोगाई',
'non' => 'पुराना नॉर्स',
@@ -344,11 +358,13 @@ $languageNames = array(
'pam' => 'पाम्पान्गा',
'pap' => 'पापियामेन्टो',
'pau' => 'पलोउआन',
+ 'pcm' => 'नाइजीरियाई पिडगिन',
'peo' => 'पुरानी फारसी',
'phn' => 'फोएनिशियन',
'pi' => 'पाली',
'pl' => 'पोलिश',
'pon' => 'पोह्नपिएन',
+ 'prg' => 'प्रुशियाई',
'pro' => 'पुरानी प्रोवेन्सल',
'ps' => 'पश्तो',
'pt' => 'पुर्तगाली',
@@ -375,19 +391,21 @@ $languageNames = array(
'sam' => 'सामैरिटन अरैमिक',
'saq' => 'सैम्बुरु',
'sas' => 'सासाक',
- 'sat' => 'संताली',
+ 'sat' => 'संथाली',
+ 'sba' => 'न्गाम्बे',
'sbp' => 'सैंगु',
'sc' => 'सार्दिनियन',
'scn' => 'सिसिलियन',
'sco' => 'स्कॉट्स',
'sd' => 'सिंधी',
+ 'sdh' => 'दक्षिणी कार्डिश',
'se' => 'नॉर्दन सामी',
'seh' => 'सेना',
'sel' => 'सेल्कप',
'ses' => 'कोयराबोरो सेन्नी',
'sg' => 'सांगो',
'sga' => 'पुरानी आइरिश',
- 'sh' => 'सेर्बो-क्रोएशन्',
+ 'sh' => 'सेर्बो-क्रोएशियाई',
'shi' => 'तैचेल्हित',
'shn' => 'शैन',
'si' => 'सिंहली',
@@ -395,7 +413,7 @@ $languageNames = array(
'sk' => 'स्लोवाक',
'sl' => 'स्लोवेनियाई',
'sm' => 'सामोन',
- 'sma' => 'दक्षिण सामी',
+ 'sma' => 'दक्षिणी सामी',
'smj' => 'ल्युल सामी',
'smn' => 'इनारी सामी',
'sms' => 'स्कोल्ट सामी',
@@ -408,15 +426,16 @@ $languageNames = array(
'srn' => 'स्रानान टॉन्गो',
'srr' => 'सेरेर',
'ss' => 'स्वाती',
- 'st' => 'सेसोथो',
+ 'ssy' => 'साहो',
+ 'st' => 'दक्षिणी सेसेथो',
'su' => 'सुंडानी',
'suk' => 'सुकुमा',
'sus' => 'सुसु',
'sux' => 'सुमेरियन',
'sv' => 'स्वीडिश',
'sw' => 'स्वाहिली',
+ 'sw-cd' => 'कांगो स्वाहिली',
'swb' => 'कोमोरियन',
- 'swc' => 'कांगो स्वाहिली',
'syc' => 'क्लासिकल सिरिएक',
'syr' => 'सिरिएक',
'ta' => 'तमिल',
@@ -432,7 +451,7 @@ $languageNames = array(
'tiv' => 'तिव',
'tk' => 'तुर्कमेन',
'tkl' => 'तोकेलाऊ',
- 'tl' => 'तागालोग',
+ 'tl' => 'टैगलॉग',
'tlh' => 'क्लिंगन',
'tli' => 'त्लिंगित',
'tmh' => 'तामाशेक',
@@ -441,6 +460,7 @@ $languageNames = array(
'tog' => 'न्यासा टोन्गा',
'tpi' => 'टोक पिसिन',
'tr' => 'तुर्की',
+ 'trv' => 'तारोको',
'ts' => 'सोंगा',
'tsi' => 'त्सिमीशियन',
'tt' => 'तातार',
@@ -452,7 +472,7 @@ $languageNames = array(
'tyv' => 'तुवीनियन',
'tzm' => 'मध्य एटलस तमाज़ित',
'udm' => 'उदमुर्त',
- 'ug' => 'विघुर',
+ 'ug' => 'उइगर',
'uga' => 'युगैरिटिक',
'uk' => 'यूक्रेनियाई',
'umb' => 'उम्बुन्डु',
@@ -466,16 +486,21 @@ $languageNames = array(
'vot' => 'वॉटिक',
'vun' => 'वुंजो',
'wa' => 'वाल्लून',
+ 'wae' => 'वाल्सर',
'wal' => 'वलामो',
'war' => 'वारै',
'was' => 'वाशो',
+ 'wbp' => 'वॉल्पेरी',
'wo' => 'वोलोफ़',
+ 'wuu' => 'वू चीनी',
'xal' => 'काल्मिक',
'xh' => 'ख़ोसा',
'xog' => 'सोगा',
'yao' => 'याओ',
'yap' => 'यापीस',
- 'yi' => 'येहुदी',
+ 'yav' => 'यांगबेन',
+ 'ybb' => 'येंबा',
+ 'yi' => 'यहूदी',
'yo' => 'योरूबा',
'yue' => 'कैंटोनीज़',
'za' => 'ज़ुआंग',
@@ -490,9 +515,9 @@ $languageNames = array(
'zun' => 'ज़ूनी',
'zxx' => 'कोई भाषा सामग्री नहीं',
'zza' => 'ज़ाज़ा',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'AED' => 'संयुक्त अरब अमीरात दिरहाम',
'AFA' => 'अफगानी (1927–2002)',
'AFN' => 'अफ़गान अफ़गानी',
@@ -517,12 +542,14 @@ $currencyNames = array(
'BSD' => 'बहामाई डॉलर',
'BTN' => 'भूटानी नंगलट्रम',
'BWP' => 'बोत्सवानियाई पुला',
- 'BYR' => 'बेलारूसी रूबल',
+ 'BYN' => 'बेलारूसी रूबल',
+ 'BYR' => 'बेलारूसी रूबल (2000–2016)',
'BZD' => 'बेलीज़ डॉलर',
'CAD' => 'कनाडाई डॉलर',
'CDF' => 'कोंगोली फ़्रैंक',
'CHF' => 'स्विस फ़्रैंक',
'CLP' => 'चिली पेसो',
+ 'CNH' => 'चीनी यूआन',
'CNY' => 'चीनी युआन',
'COP' => 'कोलंबियाई पेसो',
'CRC' => 'कोस्टा रिका कोलोन',
@@ -594,7 +621,8 @@ $currencyNames = array(
'MMK' => 'म्यांमार क्याट',
'MNT' => 'मंगोलियाई टगरिक',
'MOP' => 'मेकानीज़ पाटाका',
- 'MRO' => 'मॉरीटेनियन ओगुइया',
+ 'MRO' => 'मॉरीटेनियन ओगुइया (1973–2017)',
+ 'MRU' => 'मॉरीटेनियन ओगुइया',
'MUR' => 'मॉरिशियन रुपया',
'MVR' => 'मालदीवी रुफ़िया',
'MWK' => 'मालावियन क्वाचा',
@@ -609,7 +637,7 @@ $currencyNames = array(
'NZD' => 'न्यूज़ीलैंड डॉलर',
'OMR' => 'ओमानी रियाल',
'PAB' => 'पनामेनियन बैल्बोआ',
- 'PEN' => 'पेरूवियन नुएवो सोल',
+ 'PEN' => 'पेरूवियन सोल',
'PGK' => 'पापुआ न्यू गिनीयन किना',
'PHP' => 'फ़िलिपीनी पेसो',
'PKR' => 'पाकिस्तानी रुपया',
@@ -637,7 +665,8 @@ $currencyNames = array(
'SRD' => 'सूरीनामी डॉलर',
'SRG' => 'सूरीनामी गिल्डर',
'SSP' => 'दक्षिण सूडानी पाउंड',
- 'STD' => 'साओ तोम और प्रिंसिपे डोबरा',
+ 'STD' => 'साओ तोम और प्रिंसिपे डोबरा (1977–2017)',
+ 'STN' => 'साओ टोम और प्रिंसिपे डोबरा',
'SUR' => 'सोवियत रूबल',
'SYP' => 'सीरियाई पाउंड',
'SZL' => 'स्वाज़ी लिलांजेनी',
@@ -660,22 +689,23 @@ $currencyNames = array(
'UYU' => 'उरुग्वियन पेसो',
'UZS' => 'उज़्बेकिस्तान सोम',
'VEB' => 'वेनेज़ुएला बोलिवर (1871–2008)',
- 'VEF' => 'वेनेज़ुएला बोलिवर',
+ 'VEF' => 'वेनेज़ुएला बोलिवर (2008–2018)',
+ 'VES' => 'वेनेज़ुएला बोलिवर',
'VND' => 'वियतनामी डोंग',
'VUV' => 'वनुआतू वातू',
'WST' => 'समोआई ताला',
- 'XAF' => '[CFA] फ़्रैंक [BEAC]',
+ 'XAF' => 'केंद्रीय अफ़्रीकी CFA फ़्रैंक',
'XCD' => 'पूर्वी कैरिबियाई डॉलर',
- 'XOF' => '[CFA] फ़्रैंक [BCEAO]',
+ 'XOF' => 'पश्चिमी अफ़्रीकी CFA फ़्रैंक',
'XPF' => '[CFP] फ़्रैंक',
'XXX' => 'अज्ञात मुद्रा',
'YER' => 'यमनी रियाल',
'ZAR' => 'दक्षिण अफ़्रीकी रैंड',
'ZMK' => 'ज़ाम्बियन क्वाचा (1968–2012)',
'ZMW' => 'ज़ाम्बियन क्वाचा',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'AED' => 'AED',
'AFN' => 'AFN',
'ALL' => 'ALL',
@@ -699,12 +729,14 @@ $currencySymbols = array(
'BSD' => 'BSD',
'BTN' => 'BTN',
'BWP' => 'BWP',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CA$',
'CDF' => 'CDF',
'CHF' => 'CHF',
'CLP' => 'CLP',
+ 'CNH' => 'CNH',
'CNY' => 'CN¥',
'COP' => 'COP',
'CRC' => 'CRC',
@@ -768,6 +800,7 @@ $currencySymbols = array(
'MNT' => 'MNT',
'MOP' => 'MOP',
'MRO' => 'MRO',
+ 'MRU' => 'MRU',
'MUR' => 'MUR',
'MVR' => 'MVR',
'MWK' => 'MWK',
@@ -805,6 +838,7 @@ $currencySymbols = array(
'SRD' => 'SRD',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'STN',
'SYP' => 'SYP',
'SZL' => 'SZL',
'THB' => '฿',
@@ -822,6 +856,7 @@ $currencySymbols = array(
'UYU' => 'UYU',
'UZS' => 'UZS',
'VEF' => 'VEF',
+ 'VES' => 'VES',
'VND' => '₫',
'VUV' => 'VUV',
'WST' => 'WST',
@@ -832,9 +867,9 @@ $currencySymbols = array(
'YER' => 'YER',
'ZAR' => 'ZAR',
'ZMW' => 'ZMW',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'असेंशन द्वीप',
'AD' => 'एंडोरा',
'AE' => 'संयुक्त अरब अमीरात',
@@ -843,7 +878,6 @@ $countryNames = array(
'AI' => 'एंग्विला',
'AL' => 'अल्बानिया',
'AM' => 'आर्मेनिया',
- 'AN' => 'नीदरलैंडी ऐंटील',
'AO' => 'अंगोला',
'AQ' => 'अंटार्कटिका',
'AR' => 'अर्जेंटीना',
@@ -893,7 +927,7 @@ $countryNames = array(
'CW' => 'क्यूरासाओ',
'CX' => 'क्रिसमस द्वीप',
'CY' => 'साइप्रस',
- 'CZ' => 'चेक गणराज्य',
+ 'CZ' => 'चेकिया',
'DE' => 'जर्मनी',
'DG' => 'डिएगो गार्सिया',
'DJ' => 'जिबूती',
@@ -910,6 +944,7 @@ $countryNames = array(
'ES' => 'स्पेन',
'ET' => 'इथियोपिया',
'EU' => 'यूरोपीय संघ',
+ 'EZ' => 'यूरोज़ोन',
'FI' => 'फ़िनलैंड',
'FJ' => 'फ़िजी',
'FK' => 'फ़ॉकलैंड द्वीपसमूह',
@@ -917,10 +952,10 @@ $countryNames = array(
'FO' => 'फ़ेरो द्वीपसमूह',
'FR' => 'फ़्रांस',
'GA' => 'गैबॉन',
- 'GB' => 'यू.के.',
+ 'GB' => 'यू॰के॰',
'GD' => 'ग्रेनाडा',
'GE' => 'जॉर्जिया',
- 'GF' => 'फ़्रेंच गयाना',
+ 'GF' => 'फ़्रेंच गुयाना',
'GG' => 'गर्नसी',
'GH' => 'घाना',
'GI' => 'जिब्राल्टर',
@@ -934,7 +969,7 @@ $countryNames = array(
'GT' => 'ग्वाटेमाला',
'GU' => 'गुआम',
'GW' => 'गिनी-बिसाउ',
- 'GY' => 'गयाना',
+ 'GY' => 'गुयाना',
'HK' => 'हाँग काँग',
'HM' => 'हर्ड द्वीप और मैकडोनॉल्ड द्वीपसमूह',
'HN' => 'होंडूरास',
@@ -944,7 +979,7 @@ $countryNames = array(
'IC' => 'कैनेरी द्वीपसमूह',
'ID' => 'इंडोनेशिया',
'IE' => 'आयरलैंड',
- 'IL' => 'इसराइल',
+ 'IL' => 'इज़राइल',
'IM' => 'आइल ऑफ़ मैन',
'IN' => 'भारत',
'IO' => 'ब्रिटिश हिंद महासागरीय क्षेत्र',
@@ -965,7 +1000,7 @@ $countryNames = array(
'KP' => 'उत्तर कोरिया',
'KR' => 'दक्षिण कोरिया',
'KW' => 'कुवैत',
- 'KY' => 'केमैन द्वीपसमूह',
+ 'KY' => 'कैमेन द्वीपसमूह',
'KZ' => 'कज़ाखस्तान',
'LA' => 'लाओस',
'LB' => 'लेबनान',
@@ -985,7 +1020,7 @@ $countryNames = array(
'MF' => 'सेंट मार्टिन',
'MG' => 'मेडागास्कर',
'MH' => 'मार्शल द्वीपसमूह',
- 'MK' => 'मैसिडोनिया',
+ 'MK' => 'मकदूनिया',
'ML' => 'माली',
'MM' => 'म्यांमार (बर्मा)',
'MN' => 'मंगोलिया',
@@ -995,7 +1030,7 @@ $countryNames = array(
'MR' => 'मॉरिटानिया',
'MS' => 'मोंटसेरात',
'MT' => 'माल्टा',
- 'MU' => 'मॉरिशस',
+ 'MU' => 'मॉरीशस',
'MV' => 'मालदीव',
'MW' => 'मलावी',
'MX' => 'मैक्सिको',
@@ -1027,7 +1062,7 @@ $countryNames = array(
'PS' => 'फ़िलिस्तीन',
'PT' => 'पुर्तगाल',
'PW' => 'पलाऊ',
- 'PY' => 'पेराग्वे',
+ 'PY' => 'पराग्वे',
'QA' => 'क़तर',
'QO' => 'आउटलाइंग ओशिनिया',
'RE' => 'रियूनियन',
@@ -1056,13 +1091,13 @@ $countryNames = array(
'SX' => 'सिंट मार्टिन',
'SY' => 'सीरिया',
'SZ' => 'स्वाज़ीलैंड',
- 'TA' => 'त्रिस्टान डा कुना',
+ 'TA' => 'ट्रिस्टन दा कुना',
'TC' => 'तुर्क और कैकोज़ द्वीपसमूह',
'TD' => 'चाड',
'TF' => 'फ़्रांसीसी दक्षिणी क्षेत्र',
'TG' => 'टोगो',
'TH' => 'थाईलैंड',
- 'TJ' => 'ताजिकिस्तान',
+ 'TJ' => 'ताज़िकिस्तान',
'TK' => 'तोकेलाउ',
'TL' => 'तिमोर-लेस्त',
'TM' => 'तुर्कमेनिस्तान',
@@ -1075,7 +1110,8 @@ $countryNames = array(
'TZ' => 'तंज़ानिया',
'UA' => 'यूक्रेन',
'UG' => 'युगांडा',
- 'UM' => 'यू.एस. आउटलाइंग द्वीपसमूह',
+ 'UM' => 'यू॰एस॰ आउटलाइंग द्वीपसमूह',
+ 'UN' => 'संयुक्त राष्ट्र',
'US' => 'अमेरिका',
'UY' => 'उरूग्वे',
'UZ' => 'उज़्बेकिस्तान',
@@ -1083,7 +1119,7 @@ $countryNames = array(
'VC' => 'सेंट विंसेंट और ग्रेनाडाइंस',
'VE' => 'वेनेज़ुएला',
'VG' => 'ब्रिटिश वर्जिन द्वीपसमूह',
- 'VI' => 'यू.एस. वर्जिन द्वीपसमूह',
+ 'VI' => 'यू॰एस॰ वर्जिन द्वीपसमूह',
'VN' => 'वियतनाम',
'VU' => 'वनुआतू',
'WF' => 'वालिस और फ़्यूचूना',
@@ -1094,9 +1130,11 @@ $countryNames = array(
'ZA' => 'दक्षिण अफ़्रीका',
'ZM' => 'ज़ाम्बिया',
'ZW' => 'ज़िम्बाब्वे',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-one' => '{0} शताब्दी',
+ 'century-other' => '{0} शताब्दियाँ',
'day-future-one' => '{0} दिन में',
'day-future-other' => '{0} दिन में',
'day-narrow-future-one' => '{0} दिन में',
@@ -1111,38 +1149,62 @@ $timeUnits = array(
'day-short-future-other' => '{0} दिन में',
'day-short-past-one' => '{0} दिन पहले',
'day-short-past-other' => '{0} दिन पहले',
+ 'fri-future-one' => '{0} शुक्रवार में',
+ 'fri-future-other' => '{0} शुक्रवार में',
+ 'fri-narrow-future-one' => '{0} शुक्र॰ में',
+ 'fri-narrow-future-other' => '{0} शुक्र॰ में',
+ 'fri-narrow-past-one' => '{0} शुक्र॰ पूर्व',
+ 'fri-narrow-past-other' => '{0} शुक्र॰ पूर्व',
+ 'fri-past-one' => '{0} शुक्रवार पूर्व',
+ 'fri-past-other' => '{0} शुक्रवार पूर्व',
+ 'fri-short-future-one' => '{0} शुक्र॰ में',
+ 'fri-short-future-other' => '{0} शुक्र॰ में',
+ 'fri-short-past-one' => '{0} शुक्र॰ पूर्व',
+ 'fri-short-past-other' => '{0} शुक्र॰ पूर्व',
'hour-future-one' => '{0} घंटे में',
'hour-future-other' => '{0} घंटे में',
- 'hour-narrow-future-one' => '{0} घं. में',
- 'hour-narrow-future-other' => '{0} घं. में',
- 'hour-narrow-past-one' => '{0} घं. पहले',
- 'hour-narrow-past-other' => '{0} घं. पहले',
+ 'hour-narrow-future-one' => '{0} घं॰ में',
+ 'hour-narrow-future-other' => '{0} घं॰ में',
+ 'hour-narrow-past-one' => '{0} घं॰ पहले',
+ 'hour-narrow-past-other' => '{0} घं॰ पहले',
'hour-one' => '{0} घंटा',
'hour-other' => '{0} घंटे',
'hour-past-one' => '{0} घंटे पहले',
'hour-past-other' => '{0} घंटे पहले',
- 'hour-short-future-one' => '{0} घं. में',
- 'hour-short-future-other' => '{0} घं. में',
- 'hour-short-past-one' => '{0} घं. पहले',
- 'hour-short-past-other' => '{0} घं. पहले',
+ 'hour-short-future-one' => '{0} घं॰ में',
+ 'hour-short-future-other' => '{0} घं॰ में',
+ 'hour-short-past-one' => '{0} घं॰ पहले',
+ 'hour-short-past-other' => '{0} घं॰ पहले',
'microsecond-one' => '{0} माइक्रोसेकंड',
'microsecond-other' => '{0} माइक्रोसेकंड',
'millisecond-one' => '{0} मिलीसेकंड',
'millisecond-other' => '{0} मिलीसेकंड',
'minute-future-one' => '{0} मिनट में',
'minute-future-other' => '{0} मिनट में',
- 'minute-narrow-future-one' => '{0} मि. में',
- 'minute-narrow-future-other' => '{0} मि. में',
- 'minute-narrow-past-one' => '{0} मि. पहले',
- 'minute-narrow-past-other' => '{0} मि. पहले',
+ 'minute-narrow-future-one' => '{0} मि॰ में',
+ 'minute-narrow-future-other' => '{0} मि॰ में',
+ 'minute-narrow-past-one' => '{0} मि॰ पहले',
+ 'minute-narrow-past-other' => '{0} मि॰ पहले',
'minute-one' => '{0} मिनट',
'minute-other' => '{0} मिनट',
'minute-past-one' => '{0} मिनट पहले',
'minute-past-other' => '{0} मिनट पहले',
- 'minute-short-future-one' => '{0} मि. में',
- 'minute-short-future-other' => '{0} मि. में',
- 'minute-short-past-one' => '{0} मि. पहले',
- 'minute-short-past-other' => '{0} मि. पहले',
+ 'minute-short-future-one' => '{0} मि॰ में',
+ 'minute-short-future-other' => '{0} मि॰ में',
+ 'minute-short-past-one' => '{0} मि॰ पहले',
+ 'minute-short-past-other' => '{0} मि॰ पहले',
+ 'mon-future-one' => '{0} सोमवार में',
+ 'mon-future-other' => '{0} सोमवार में',
+ 'mon-narrow-future-one' => '{0} सोम॰ में',
+ 'mon-narrow-future-other' => '{0} सोम॰ में',
+ 'mon-narrow-past-one' => '{0} सोम॰ पूर्व',
+ 'mon-narrow-past-other' => '{0} सोम॰ पूर्व',
+ 'mon-past-one' => '{0} सोमवार पूर्व',
+ 'mon-past-other' => '{0} सोमवार पूर्व',
+ 'mon-short-future-one' => '{0} सोम॰ में',
+ 'mon-short-future-other' => '{0} सोम॰ में',
+ 'mon-short-past-one' => '{0} सोम॰ पूर्व',
+ 'mon-short-past-other' => '{0} सोम॰ पूर्व',
'month-future-one' => '{0} माह में',
'month-future-other' => '{0} माह में',
'month-narrow-future-one' => '{0} माह में',
@@ -1161,30 +1223,90 @@ $timeUnits = array(
'nanosecond-other' => '{0} नैनो सेकंड',
'quarter-future-one' => '{0} तिमाही में',
'quarter-future-other' => '{0} तिमाहियों में',
- 'quarter-narrow-future-one' => '{0} ति. में',
- 'quarter-narrow-future-other' => '{0} ति. में',
- 'quarter-narrow-past-one' => '{0} ति. पहले',
- 'quarter-narrow-past-other' => '{0} ति. पहले',
+ 'quarter-narrow-future-one' => '{0} ति॰ में',
+ 'quarter-narrow-future-other' => '{0} ति॰ में',
+ 'quarter-narrow-past-one' => '{0} ति॰ पहले',
+ 'quarter-narrow-past-other' => '{0} ति॰ पहले',
'quarter-past-one' => '{0} तिमाही पहले',
'quarter-past-other' => '{0} तिमाही पहले',
'quarter-short-future-one' => '{0} तिमाही में',
'quarter-short-future-other' => '{0} तिमाहियों में',
'quarter-short-past-one' => '{0} तिमाही पहले',
'quarter-short-past-other' => '{0} तिमाहियों पहले',
+ 'sat-future-one' => '{0} शनिवार में',
+ 'sat-future-other' => '{0} शनिवार में',
+ 'sat-narrow-future-one' => '{0} शनि॰ में',
+ 'sat-narrow-future-other' => '{0} शनि॰ में',
+ 'sat-narrow-past-one' => '{0} शनि॰ पूर्व',
+ 'sat-narrow-past-other' => '{0} शनि॰ पूर्व',
+ 'sat-past-one' => '{0} शनिवार पूर्व',
+ 'sat-past-other' => '{0} शनिवार पूर्व',
+ 'sat-short-future-one' => '{0} शनि॰ में',
+ 'sat-short-future-other' => '{0} शनि॰ में',
+ 'sat-short-past-one' => '{0} शनि॰ पूर्व',
+ 'sat-short-past-other' => '{0} शनि॰ पूर्व',
'second-future-one' => '{0} सेकंड में',
'second-future-other' => '{0} सेकंड में',
- 'second-narrow-future-one' => '{0} से. में',
- 'second-narrow-future-other' => '{0} से. में',
- 'second-narrow-past-one' => '{0} से. पहले',
- 'second-narrow-past-other' => '{0} से. पहले',
+ 'second-narrow-future-one' => '{0} से॰ में',
+ 'second-narrow-future-other' => '{0} से॰ में',
+ 'second-narrow-past-one' => '{0} से॰ पहले',
+ 'second-narrow-past-other' => '{0} से॰ पहले',
'second-one' => '{0} सेकंड',
'second-other' => '{0} सेकंड',
'second-past-one' => '{0} सेकंड पहले',
'second-past-other' => '{0} सेकंड पहले',
- 'second-short-future-one' => '{0} से. में',
- 'second-short-future-other' => '{0} से. में',
- 'second-short-past-one' => '{0} से. पहले',
- 'second-short-past-other' => '{0} से. पहले',
+ 'second-short-future-one' => '{0} से॰ में',
+ 'second-short-future-other' => '{0} से॰ में',
+ 'second-short-past-one' => '{0} से॰ पहले',
+ 'second-short-past-other' => '{0} से॰ पहले',
+ 'sun-future-one' => '{0} रविवार में',
+ 'sun-future-other' => '{0} रविवार में',
+ 'sun-narrow-future-one' => '{0} रवि॰ में',
+ 'sun-narrow-future-other' => '{0} रवि॰ में',
+ 'sun-narrow-past-one' => '{0} रवि॰ पूर्व',
+ 'sun-narrow-past-other' => '{0} रवि॰ पूर्व',
+ 'sun-past-one' => '{0} रविवार पूर्व',
+ 'sun-past-other' => '{0} रविवार पूर्व',
+ 'sun-short-future-one' => '{0} रवि॰ में',
+ 'sun-short-future-other' => '{0} रवि॰ में',
+ 'sun-short-past-one' => '{0} रवि॰ पूर्व',
+ 'sun-short-past-other' => '{0} रवि॰ पूर्व',
+ 'thu-future-one' => '{0} गुरुवार में',
+ 'thu-future-other' => '{0} गुरुवार में',
+ 'thu-narrow-future-one' => '{0} गुरु॰ में',
+ 'thu-narrow-future-other' => '{0} गुरु॰ में',
+ 'thu-narrow-past-one' => '{0} गुरु॰ पूर्व',
+ 'thu-narrow-past-other' => '{0} गुरु॰ पूर्व',
+ 'thu-past-one' => '{0} गुरुवार पूर्व',
+ 'thu-past-other' => '{0} गुरुवार पूर्व',
+ 'thu-short-future-one' => '{0} गुरु॰ में',
+ 'thu-short-future-other' => '{0} गुरु॰ में',
+ 'thu-short-past-one' => '{0} गुरु॰ पूर्व',
+ 'thu-short-past-other' => '{0} गुरु॰ पूर्व',
+ 'tue-future-one' => '{0} मंगलवार में',
+ 'tue-future-other' => '{0} मंगलवार में',
+ 'tue-narrow-future-one' => '{0} मंगल॰ में',
+ 'tue-narrow-future-other' => '{0} मंगल॰ में',
+ 'tue-narrow-past-one' => '{0} मंगल॰ पूर्व',
+ 'tue-narrow-past-other' => '{0} मंगल॰ पूर्व',
+ 'tue-past-one' => '{0} मंगलवार पूर्व',
+ 'tue-past-other' => '{0} मंगलवार पूर्व',
+ 'tue-short-future-one' => '{0} मंगल॰ में',
+ 'tue-short-future-other' => '{0} मंगल॰ में',
+ 'tue-short-past-one' => '{0} मंगल॰ पूर्व',
+ 'tue-short-past-other' => '{0} मंगल॰ पूर्व',
+ 'wed-future-one' => '{0} बुधवार में',
+ 'wed-future-other' => '{0} बुधवार में',
+ 'wed-narrow-future-one' => '{0} बुध॰ में',
+ 'wed-narrow-future-other' => '{0} बुध॰ में',
+ 'wed-narrow-past-one' => '{0} बुध॰ पूर्व',
+ 'wed-narrow-past-other' => '{0} बुध॰ पूर्व',
+ 'wed-past-one' => '{0} बुधवार पूर्व',
+ 'wed-past-other' => '{0} बुधवार पूर्व',
+ 'wed-short-future-one' => '{0} बुध॰ में',
+ 'wed-short-future-other' => '{0} बुध॰ में',
+ 'wed-short-past-one' => '{0} बुध॰ पूर्व',
+ 'wed-short-past-other' => '{0} बुध॰ पूर्व',
'week-future-one' => '{0} सप्ताह में',
'week-future-other' => '{0} सप्ताह में',
'week-narrow-future-one' => '{0} सप्ताह में',
@@ -1213,4 +1335,4 @@ $timeUnits = array(
'year-short-future-other' => '{0} वर्ष में',
'year-short-past-one' => '{0} वर्ष पहले',
'year-short-past-other' => '{0} वर्ष पहले',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesHr.php b/MLEB/cldr/CldrNames/CldrNamesHr.php
index 5a41866b..24ceceb0 100644
--- a/MLEB/cldr/CldrNames/CldrNamesHr.php
+++ b/MLEB/cldr/CldrNames/CldrNamesHr.php
@@ -1,19 +1,19 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'afarski',
'ab' => 'abhaski',
- 'ace' => 'achinese',
- 'ach' => 'acoli',
+ 'ace' => 'ačinski',
+ 'ach' => 'ačoli',
'ada' => 'adangme',
'ady' => 'adigejski',
- 'ae' => 'avestan',
+ 'ae' => 'avestički',
'af' => 'afrikaans',
'afh' => 'afrihili',
'agq' => 'aghem',
- 'ain' => 'ainu',
+ 'ain' => 'ainuski',
'ak' => 'akanski',
- 'akk' => 'akkadian',
+ 'akk' => 'akadski',
'ale' => 'aleutski',
'alt' => 'južni altai',
'am' => 'amharski',
@@ -23,19 +23,21 @@ $languageNames = array(
'ar' => 'arapski',
'ar-001' => 'moderni standardni arapski',
'arc' => 'aramejski',
- 'arn' => 'araukanski',
+ 'arn' => 'mapuche',
'arp' => 'arapaho',
- 'arw' => 'arawak',
+ 'ars' => 'najdi arapski',
+ 'arw' => 'aravački',
'as' => 'asamski',
'asa' => 'asu',
'ast' => 'asturijski',
'av' => 'avarski',
'awa' => 'awadhi',
- 'ay' => 'aymara',
+ 'ay' => 'ajmarski',
'az' => 'azerbajdžanski',
+ 'az-arab' => 'južnoazerbajdžanski',
'ba' => 'baškirski',
- 'bal' => 'baluchi',
- 'ban' => 'balinezijski',
+ 'bal' => 'belučki',
+ 'ban' => 'balijski',
'bas' => 'basa',
'bax' => 'bamunski',
'bbj' => 'ghomala',
@@ -45,21 +47,22 @@ $languageNames = array(
'bez' => 'bena',
'bfd' => 'bafut',
'bg' => 'bugarski',
+ 'bgn' => 'zapadnobaludžijski',
'bho' => 'bhojpuri',
'bi' => 'bislama',
- 'bik' => 'bikol',
+ 'bik' => 'bikolski',
'bin' => 'bini',
'bkm' => 'kom',
'bla' => 'siksika',
'bm' => 'bambara',
- 'bn' => 'bengalski',
- 'bo' => 'tibetanski',
+ 'bn' => 'bangla',
+ 'bo' => 'tibetski',
'br' => 'bretonski',
'bra' => 'braj',
'brx' => 'bodo',
'bs' => 'bosanski',
'bss' => 'akoose',
- 'bua' => 'buriat',
+ 'bua' => 'burjatski',
'bug' => 'buginski',
'bum' => 'bulu',
'byn' => 'blin',
@@ -73,24 +76,25 @@ $languageNames = array(
'ceb' => 'cebuano',
'cgg' => 'chiga',
'ch' => 'chamorro',
- 'chb' => 'chibcha',
- 'chg' => 'chagatai',
+ 'chb' => 'čibča',
+ 'chg' => 'čagatajski',
'chk' => 'chuukese',
- 'chm' => 'mari',
+ 'chm' => 'marijski',
'chn' => 'chinook žargon',
'cho' => 'choctaw',
'chp' => 'chipewyan',
- 'chr' => 'čeroki',
+ 'chr' => 'čerokijski',
'chy' => 'čejenski',
'ckb' => 'soranski kurdski',
'co' => 'korzički',
'cop' => 'koptski',
'cr' => 'cree',
'crh' => 'krimski turski',
+ 'crs' => 'sejšelski kreolski',
'cs' => 'češki',
'csb' => 'kašupski',
'cu' => 'crkvenoslavenski',
- 'cv' => 'chuvash',
+ 'cv' => 'čuvaški',
'cy' => 'velški',
'da' => 'danski',
'dak' => 'dakota jezik',
@@ -105,9 +109,9 @@ $languageNames = array(
'din' => 'dinka',
'dje' => 'zarma',
'doi' => 'dogri',
- 'dsb' => 'lužičkosrpski',
+ 'dsb' => 'donjolužički',
'dua' => 'duala',
- 'dum' => 'nizozemski, srednji',
+ 'dum' => 'srednjonizozemski',
'dv' => 'divehi',
'dyo' => 'jola-fonyi',
'dyu' => 'dyula',
@@ -125,7 +129,7 @@ $languageNames = array(
'en-ca' => 'kanadski engleski',
'en-gb' => 'britanski engleski',
'en-us' => 'američki engleski',
- 'enm' => 'engleski, srednji',
+ 'enm' => 'srednjoengleski',
'eo' => 'esperanto',
'es' => 'španjolski',
'es-419' => 'latinoamerički španjolski',
@@ -137,36 +141,38 @@ $languageNames = array(
'fa' => 'perzijski',
'fan' => 'fang',
'fat' => 'fanti',
- 'ff' => 'fulah',
+ 'ff' => 'fula',
'fi' => 'finski',
- 'fil' => 'filipino',
+ 'fil' => 'filipinski',
'fj' => 'fidžijski',
'fo' => 'ferojski',
'fon' => 'fon',
'fr' => 'francuski',
'fr-ca' => 'kanadski francuski',
'fr-ch' => 'švicarski francuski',
- 'frm' => 'francuski, srednji',
+ 'frc' => 'kajunski francuski',
+ 'frm' => 'srednjofrancuski',
'fro' => 'starofrancuski',
'frr' => 'sjevernofrizijski',
'frs' => 'istočnofrizijski',
- 'fur' => 'friulski',
+ 'fur' => 'furlanski',
'fy' => 'zapadnofrizijski',
'ga' => 'irski',
'gaa' => 'ga',
'gag' => 'gagauski',
+ 'gan' => 'gan kineski',
'gay' => 'gayo',
'gba' => 'gbaya',
- 'gd' => 'škotski-galski',
- 'gez' => 'staroetiopski',
+ 'gd' => 'škotski gaelski',
+ 'gez' => 'geez',
'gil' => 'gilbertski',
'gl' => 'galicijski',
- 'gmh' => 'njemački, srednji visoki',
- 'gn' => 'guarani',
- 'goh' => 'staronjemački, visoki',
+ 'gmh' => 'srednjogornjonjemački',
+ 'gn' => 'gvaranski',
+ 'goh' => 'starovisokonjemački',
'gon' => 'gondi',
'gor' => 'gorontalo',
- 'got' => 'gothic',
+ 'got' => 'gotski',
'grb' => 'grebo',
'grc' => 'starogrčki',
'gsw' => 'švicarski njemački',
@@ -176,16 +182,18 @@ $languageNames = array(
'gwi' => 'gwich’in',
'ha' => 'hausa',
'hai' => 'haidi',
+ 'hak' => 'hakka kineski',
'haw' => 'havajski',
'he' => 'hebrejski',
'hi' => 'hindski',
- 'hil' => 'hiligaynon',
+ 'hil' => 'hiligaynonski',
'hit' => 'hetitski',
'hmn' => 'hmong',
'ho' => 'hiri motu',
'hr' => 'hrvatski',
'hsb' => 'gornjolužički',
- 'ht' => 'kreolski',
+ 'hsn' => 'xiang kineski',
+ 'ht' => 'haićanski kreolski',
'hu' => 'mađarski',
'hup' => 'hupa',
'hy' => 'armenski',
@@ -196,7 +204,7 @@ $languageNames = array(
'id' => 'indonezijski',
'ie' => 'interligua',
'ig' => 'igbo',
- 'ii' => 'sichuan yi',
+ 'ii' => 'sichuan ji',
'ik' => 'inupiaq',
'ilo' => 'iloko',
'inh' => 'ingušetski',
@@ -214,11 +222,11 @@ $languageNames = array(
'ka' => 'gruzijski',
'kaa' => 'kara-kalpak',
'kab' => 'kabilski',
- 'kac' => 'kachin',
+ 'kac' => 'kačinski',
'kaj' => 'kaje',
'kam' => 'kamba',
'kaw' => 'kawi',
- 'kbd' => 'kabardian',
+ 'kbd' => 'kabardinski',
'kbl' => 'kanembu',
'kcg' => 'tyap',
'kde' => 'makonde',
@@ -236,9 +244,9 @@ $languageNames = array(
'kln' => 'kalenjin',
'km' => 'kmerski',
'kmb' => 'kimbundu',
- 'kn' => 'kannadski',
+ 'kn' => 'karnatački',
'ko' => 'korejski',
- 'koi' => 'komski ili permski',
+ 'koi' => 'komi-permski',
'kok' => 'konkani',
'kos' => 'naurski',
'kpe' => 'kpelle',
@@ -255,7 +263,7 @@ $languageNames = array(
'kut' => 'kutenai',
'kv' => 'komi',
'kw' => 'kornski',
- 'ky' => 'kirgiški',
+ 'ky' => 'kirgiski',
'la' => 'latinski',
'lad' => 'ladino',
'lag' => 'langi',
@@ -264,12 +272,14 @@ $languageNames = array(
'lb' => 'luksemburški',
'lez' => 'lezgiški',
'lg' => 'ganda',
- 'li' => 'limburgish',
+ 'li' => 'limburški',
'lkt' => 'lakota',
'ln' => 'lingala',
'lo' => 'laoski',
'lol' => 'mongo',
+ 'lou' => 'lujzijanski kreolski',
'loz' => 'lozi',
+ 'lrc' => 'sjevernolurski',
'lt' => 'litavski',
'lu' => 'luba-katanga',
'lua' => 'luba-lulua',
@@ -293,7 +303,7 @@ $languageNames = array(
'mer' => 'meru',
'mfe' => 'mauricijski kreolski',
'mg' => 'malgaški',
- 'mga' => 'irski, srednji',
+ 'mga' => 'srednjoirski',
'mgh' => 'makhuwa-meetto',
'mgo' => 'meta’',
'mh' => 'maršalski',
@@ -305,7 +315,7 @@ $languageNames = array(
'mn' => 'mongolski',
'mnc' => 'mandžurski',
'mni' => 'manipurski',
- 'moh' => 'mohawk',
+ 'moh' => 'mohok',
'mos' => 'mossi',
'mr' => 'marathski',
'ms' => 'malajski',
@@ -318,12 +328,15 @@ $languageNames = array(
'my' => 'burmanski',
'mye' => 'myene',
'myv' => 'mordvinski',
+ 'mzn' => 'mazanderanski',
'na' => 'nauru',
+ 'nan' => 'min nan kineski',
'nap' => 'napolitanski',
'naq' => 'nama',
- 'nb' => 'književni norveški',
+ 'nb' => 'norveški bokmål',
'nd' => 'sjeverni ndebele',
'nds' => 'donjonjemački',
+ 'nds-nl' => 'donjosaksonski',
'ne' => 'nepalski',
'new' => 'newari',
'ng' => 'ndonga',
@@ -332,18 +345,18 @@ $languageNames = array(
'nl' => 'nizozemski',
'nl-be' => 'flamanski',
'nmg' => 'kwasio',
- 'nn' => 'novonorveški',
+ 'nn' => 'norveški nynorsk',
'nnh' => 'ngiemboon',
'no' => 'norveški',
'nog' => 'nogajski',
'non' => 'staronorveški',
'nqo' => 'n’ko',
'nr' => 'južni ndebele',
- 'nso' => 'sjeverni sotho',
- 'nus' => 'nuer',
+ 'nso' => 'sjeverni sotski',
+ 'nus' => 'nuerski',
'nv' => 'navajo',
'nwc' => 'klasični newari',
- 'ny' => 'nyanja',
+ 'ny' => 'njandža',
'nym' => 'nyamwezi',
'nyn' => 'nyankole',
'nyo' => 'nyoro',
@@ -361,22 +374,24 @@ $languageNames = array(
'pam' => 'pampanga',
'pap' => 'papiamento',
'pau' => 'palauanski',
+ 'pcm' => 'nigerijski pidžin',
'peo' => 'staroperzijski',
'phn' => 'fenički',
'pi' => 'pali',
'pl' => 'poljski',
'pon' => 'pohnpeian',
+ 'prg' => 'pruski',
'pro' => 'staroprovansalski',
- 'ps' => 'paštu',
+ 'ps' => 'paštunski',
'pt' => 'portugalski',
'pt-br' => 'brazilski portugalski',
'pt-pt' => 'europski portugalski',
- 'qu' => 'kečua',
+ 'qu' => 'kečuanski',
'quc' => 'kiče',
'raj' => 'rajasthani',
'rap' => 'rapa nui',
'rar' => 'rarotonški',
- 'rm' => 'romanš',
+ 'rm' => 'retoromanski',
'rn' => 'rundi',
'ro' => 'rumunjski',
'ro-md' => 'moldavski',
@@ -392,14 +407,15 @@ $languageNames = array(
'sam' => 'samarijanski aramejski',
'saq' => 'samburu',
'sas' => 'sasak',
- 'sat' => 'santali',
+ 'sat' => 'santalski',
'sba' => 'ngambay',
'sbp' => 'sangu',
'sc' => 'sardski',
'scn' => 'sicilijski',
'sco' => 'škotski',
- 'sd' => 'sindhi',
- 'se' => 'južni sami',
+ 'sd' => 'sindski',
+ 'sdh' => 'južnokurdski',
+ 'se' => 'sjeverni sami',
'see' => 'seneca',
'seh' => 'sena',
'sel' => 'selkupski',
@@ -415,7 +431,7 @@ $languageNames = array(
'sk' => 'slovački',
'sl' => 'slovenski',
'sm' => 'samoanski',
- 'sma' => 'sjeverni sami',
+ 'sma' => 'južni sami',
'smj' => 'lule sami',
'smn' => 'inari sami',
'sms' => 'skolt sami',
@@ -436,12 +452,12 @@ $languageNames = array(
'sux' => 'sumerski',
'sv' => 'švedski',
'sw' => 'svahili',
+ 'sw-cd' => 'kongoanski svahili',
'swb' => 'komorski',
- 'swc' => 'kongoanski swahili',
'syc' => 'klasični sirski',
'syr' => 'sirijski',
'ta' => 'tamilski',
- 'te' => 'telugu',
+ 'te' => 'teluški',
'tem' => 'temne',
'teo' => 'teso',
'ter' => 'tereno',
@@ -456,7 +472,7 @@ $languageNames = array(
'tl' => 'tagalog',
'tlh' => 'klingonski',
'tli' => 'tlingit',
- 'tmh' => 'tamashek',
+ 'tmh' => 'tamašečki',
'tn' => 'cvana',
'to' => 'tonganski',
'tog' => 'nyasa tonga',
@@ -471,8 +487,8 @@ $languageNames = array(
'tw' => 'twi',
'twq' => 'tasawaq',
'ty' => 'tahićanski',
- 'tyv' => 'tuvinian',
- 'tzm' => 'marokanski tamazight',
+ 'tyv' => 'tuvinski',
+ 'tzm' => 'tamašek (Srednji Atlas)',
'udm' => 'udmurtski',
'ug' => 'ujgurski',
'uga' => 'ugaritski',
@@ -485,14 +501,16 @@ $languageNames = array(
've' => 'venda',
'vi' => 'vijetnamski',
'vo' => 'volapük',
- 'vot' => 'votic',
+ 'vot' => 'votski',
'vun' => 'vunjo',
'wa' => 'valonski',
- 'wae' => 'walser',
+ 'wae' => 'walserski',
'wal' => 'walamo',
'war' => 'waray',
'was' => 'washo',
- 'wo' => 'wolof',
+ 'wbp' => 'warlpiri',
+ 'wo' => 'volof',
+ 'wuu' => 'wu kineski',
'xal' => 'kalmyk',
'xh' => 'xhosa',
'xog' => 'soga',
@@ -501,13 +519,13 @@ $languageNames = array(
'yav' => 'yangben',
'ybb' => 'yemba',
'yi' => 'jidiš',
- 'yo' => 'joruba',
+ 'yo' => 'jorupski',
'yue' => 'kantonski',
'za' => 'zhuang',
- 'zap' => 'zapotec',
- 'zbl' => 'blissymbols',
+ 'zap' => 'zapotečki',
+ 'zbl' => 'Blissovi simboli',
'zen' => 'zenaga',
- 'zgh' => 'standardni marokanski tamazight',
+ 'zgh' => 'standardni marokanski tamašek',
'zh' => 'kineski',
'zh-hans' => 'kineski (pojednostavljeni)',
'zh-hant' => 'kineski (tradicionalni)',
@@ -515,9 +533,9 @@ $languageNames = array(
'zun' => 'zuni',
'zxx' => 'bez jezičnog sadržaja',
'zza' => 'zazaki',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'ADP' => 'andorska pezeta',
'AED' => 'UAE dirham',
'AFA' => 'afganistanski afgani (1927.–2002.)',
@@ -572,7 +590,8 @@ $currencyNames = array(
'BUK' => 'burmanski kyat',
'BWP' => 'bocvanska pula',
'BYB' => 'bjeloruska nova rublja (1994–1999)',
- 'BYR' => 'bjeloruska rublja',
+ 'BYN' => 'bjeloruska rublja',
+ 'BYR' => 'bjeloruska rublja (2000–2016)',
'BZD' => 'belizeanski dolar',
'CAD' => 'kanadski dolar',
'CDF' => 'kongoanski franak',
@@ -582,6 +601,7 @@ $currencyNames = array(
'CLE' => 'čileanski eskudo',
'CLF' => 'čileanski unidades de fomentos',
'CLP' => 'čileanski pezo',
+ 'CNH' => 'kineski juan (offshore)',
'CNX' => 'kineski narodni dolar',
'CNY' => 'kineski yuan',
'COP' => 'kolumbijski pezo',
@@ -686,7 +706,8 @@ $currencyNames = array(
'MMK' => 'mjanmarski kjat',
'MNT' => 'mongolski tugrik',
'MOP' => 'makaoška pataka',
- 'MRO' => 'mauritanijska ouguja',
+ 'MRO' => 'mauritanijska ouguja (1973. – 2017.)',
+ 'MRU' => 'mauritanijska ouguja',
'MTL' => 'malteška lira',
'MTP' => 'malteška funta',
'MUR' => 'mauricijska rupija',
@@ -711,8 +732,8 @@ $currencyNames = array(
'OMR' => 'omanski rijal',
'PAB' => 'panamska balboa',
'PEI' => 'peruanski inti',
- 'PEN' => 'peruanski novi sol',
- 'PES' => 'peruanski sol',
+ 'PEN' => 'peruanski sol',
+ 'PES' => 'peruanski sol (1863–1965)',
'PGK' => 'kina Papue Nove Gvineje',
'PHP' => 'filipinski pezo',
'PKR' => 'pakistanska rupija',
@@ -744,7 +765,8 @@ $currencyNames = array(
'SRD' => 'surinamski dolar',
'SRG' => 'surinamski gulden',
'SSP' => 'južnosudanska funta',
- 'STD' => 'dobra Svetog Tome i Principa',
+ 'STD' => 'dobra Svetog Tome i Principa (1977–2017)',
+ 'STN' => 'dobra Svetog Tome i Principa',
'SUR' => 'sovjetska rublja',
'SVC' => 'salvadorski kolon',
'SYP' => 'sirijska funta',
@@ -774,10 +796,11 @@ $currencyNames = array(
'UYU' => 'urugvajski pezo',
'UZS' => 'uzbekistanski som',
'VEB' => 'venezuelanski bolivar (1871.–2008.)',
- 'VEF' => 'venezuelanski bolivar',
+ 'VEF' => 'venezuelanski bolivar (2008. – 2018.)',
+ 'VES' => 'venezuelanski bolivar',
'VND' => 'vijetnamski dong',
'VNN' => 'vijetnamski dong (1978.–1985.)',
- 'VUV' => 'vanuatuški vatu',
+ 'VUV' => 'vanuatski vatu',
'WST' => 'samoanska tala',
'XAF' => 'CFA franak BEAC',
'XAG' => 'srebro',
@@ -815,9 +838,9 @@ $currencyNames = array(
'ZWD' => 'zimbabveanski dolar (1980.–2008.)',
'ZWL' => 'zimbabveanski dolar (2009)',
'ZWR' => 'zimbabveanski dolar (2008)',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'ADP' => 'ADP',
'AED' => 'AED',
'AFA' => 'AFA',
@@ -872,6 +895,7 @@ $currencySymbols = array(
'BUK' => 'BUK',
'BWP' => 'BWP',
'BYB' => 'BYB',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CAD',
@@ -882,6 +906,7 @@ $currencySymbols = array(
'CLE' => 'CLE',
'CLF' => 'CLF',
'CLP' => 'CLP',
+ 'CNH' => 'CNH',
'CNX' => 'CNX',
'CNY' => 'CNY',
'COP' => 'COP',
@@ -987,6 +1012,7 @@ $currencySymbols = array(
'MNT' => 'MNT',
'MOP' => 'MOP',
'MRO' => 'MRO',
+ 'MRU' => 'MRU',
'MTL' => 'MTL',
'MTP' => 'MTP',
'MUR' => 'MUR',
@@ -1045,6 +1071,7 @@ $currencySymbols = array(
'SRG' => 'SRG',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'STN',
'SUR' => 'SUR',
'SVC' => 'SVC',
'SYP' => 'SYP',
@@ -1075,6 +1102,7 @@ $currencySymbols = array(
'UZS' => 'UZS',
'VEB' => 'VEB',
'VEF' => 'VEF',
+ 'VES' => 'VES',
'VND' => 'VND',
'VNN' => 'VNN',
'VUV' => 'VUV',
@@ -1115,18 +1143,17 @@ $currencySymbols = array(
'ZWD' => 'ZWD',
'ZWL' => 'ZWL',
'ZWR' => 'ZWR',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'Otok Ascension',
'AD' => 'Andora',
'AE' => 'Ujedinjeni Arapski Emirati',
'AF' => 'Afganistan',
- 'AG' => 'Antigua i Barbuda',
+ 'AG' => 'Antigva i Barbuda',
'AI' => 'Angvila',
'AL' => 'Albanija',
'AM' => 'Armenija',
- 'AN' => 'Nizozemski Antili',
'AO' => 'Angola',
'AQ' => 'Antarktika',
'AR' => 'Argentina',
@@ -1134,7 +1161,7 @@ $countryNames = array(
'AT' => 'Austrija',
'AU' => 'Australija',
'AW' => 'Aruba',
- 'AX' => 'Otoci Aland',
+ 'AX' => 'Ålandski otoci',
'AZ' => 'Azerbajdžan',
'BA' => 'Bosna i Hercegovina',
'BB' => 'Barbados',
@@ -1145,8 +1172,8 @@ $countryNames = array(
'BH' => 'Bahrein',
'BI' => 'Burundi',
'BJ' => 'Benin',
- 'BL' => 'Sveti Bartolomej',
- 'BM' => 'Bermuda',
+ 'BL' => 'Saint Barthélemy',
+ 'BM' => 'Bermudi',
'BN' => 'Brunej',
'BO' => 'Bolivija',
'BQ' => 'Karipski otoci Nizozemske',
@@ -1158,7 +1185,7 @@ $countryNames = array(
'BY' => 'Bjelorusija',
'BZ' => 'Belize',
'CA' => 'Kanada',
- 'CC' => 'Kokosovi (Keeling) Otoci',
+ 'CC' => 'Kokosovi (Keelingovi) otoci',
'CD' => 'Kongo - Kinshasa',
'CF' => 'Srednjoafrička Republika',
'CG' => 'Kongo - Brazzaville',
@@ -1174,9 +1201,9 @@ $countryNames = array(
'CU' => 'Kuba',
'CV' => 'Zelenortska Republika',
'CW' => 'Curaçao',
- 'CX' => 'Božićni Otok',
+ 'CX' => 'Božićni otok',
'CY' => 'Cipar',
- 'CZ' => 'Češka Republika',
+ 'CZ' => 'Češka',
'DE' => 'Njemačka',
'DG' => 'Diego Garcia',
'DJ' => 'Džibuti',
@@ -1193,24 +1220,25 @@ $countryNames = array(
'ES' => 'Španjolska',
'ET' => 'Etiopija',
'EU' => 'Europska unija',
+ 'EZ' => 'eurozona',
'FI' => 'Finska',
'FJ' => 'Fidži',
- 'FK' => 'Falklandski Otoci',
+ 'FK' => 'Falklandski otoci',
'FM' => 'Mikronezija',
- 'FO' => 'Farski Otoci',
+ 'FO' => 'Farski otoci',
'FR' => 'Francuska',
'GA' => 'Gabon',
'GB' => 'UK',
'GD' => 'Grenada',
'GE' => 'Gruzija',
- 'GF' => 'Francuska Gvajana',
+ 'GF' => 'Francuska Gijana',
'GG' => 'Guernsey',
'GH' => 'Gana',
'GI' => 'Gibraltar',
'GL' => 'Grenland',
'GM' => 'Gambija',
'GN' => 'Gvineja',
- 'GP' => 'Guadalupa',
+ 'GP' => 'Guadalupe',
'GQ' => 'Ekvatorska Gvineja',
'GR' => 'Grčka',
'GS' => 'Južna Georgija i Južni Sendvički Otoci',
@@ -1224,13 +1252,13 @@ $countryNames = array(
'HR' => 'Hrvatska',
'HT' => 'Haiti',
'HU' => 'Mađarska',
- 'IC' => 'Kanarski Otoci',
+ 'IC' => 'Kanarski otoci',
'ID' => 'Indonezija',
'IE' => 'Irska',
'IL' => 'Izrael',
'IM' => 'Otok Man',
'IN' => 'Indija',
- 'IO' => 'Britanski Indijskooceanski Teritorij',
+ 'IO' => 'Britanski Indijskooceanski teritorij',
'IQ' => 'Irak',
'IR' => 'Iran',
'IS' => 'Island',
@@ -1248,7 +1276,7 @@ $countryNames = array(
'KP' => 'Sjeverna Koreja',
'KR' => 'Južna Koreja',
'KW' => 'Kuvajt',
- 'KY' => 'Kajmanski Otoci',
+ 'KY' => 'Kajmanski otoci',
'KZ' => 'Kazahstan',
'LA' => 'Laos',
'LB' => 'Libanon',
@@ -1265,17 +1293,17 @@ $countryNames = array(
'MC' => 'Monako',
'MD' => 'Moldavija',
'ME' => 'Crna Gora',
- 'MF' => 'Sveti Martin',
+ 'MF' => 'Saint Martin',
'MG' => 'Madagaskar',
'MH' => 'Maršalovi Otoci',
'MK' => 'Makedonija',
'ML' => 'Mali',
- 'MM' => 'Mijanmar (Burma)',
+ 'MM' => 'Mjanmar (Burma)',
'MN' => 'Mongolija',
'MO' => 'Makao',
- 'MP' => 'Sjeverni Marijanski Otoci',
+ 'MP' => 'Sjevernomarijanski otoci',
'MQ' => 'Martinique',
- 'MR' => 'Mauritanija',
+ 'MR' => 'Mauretanija',
'MS' => 'Montserrat',
'MT' => 'Malta',
'MU' => 'Mauricijus',
@@ -1312,8 +1340,8 @@ $countryNames = array(
'PW' => 'Palau',
'PY' => 'Paragvaj',
'QA' => 'Katar',
- 'QO' => 'Ostala oceanija',
- 'RE' => 'Reunion',
+ 'QO' => 'Vanjska područja Oceanije',
+ 'RE' => 'Réunion',
'RO' => 'Rumunjska',
'RS' => 'Srbija',
'RU' => 'Rusija',
@@ -1342,12 +1370,12 @@ $countryNames = array(
'TA' => 'Tristan da Cunha',
'TC' => 'Otoci Turks i Caicos',
'TD' => 'Čad',
- 'TF' => 'Francuske Južne i Antarktičke Zemlje',
+ 'TF' => 'Francuski južni i antarktički teritoriji',
'TG' => 'Togo',
'TH' => 'Tajland',
'TJ' => 'Tadžikistan',
'TK' => 'Tokelau',
- 'TL' => 'Istočni Timor',
+ 'TL' => 'Timor-Leste',
'TM' => 'Turkmenistan',
'TN' => 'Tunis',
'TO' => 'Tonga',
@@ -1359,14 +1387,15 @@ $countryNames = array(
'UA' => 'Ukrajina',
'UG' => 'Uganda',
'UM' => 'Mali udaljeni otoci SAD-a',
+ 'UN' => 'UN',
'US' => 'SAD',
'UY' => 'Urugvaj',
'UZ' => 'Uzbekistan',
- 'VA' => 'Sveta Stolica',
+ 'VA' => 'Vatikanski Grad',
'VC' => 'Sveti Vincent i Grenadini',
'VE' => 'Venezuela',
- 'VG' => 'Britanski Djevičanski Otoci',
- 'VI' => 'Američki Djevičanski Otoci',
+ 'VG' => 'Britanski Djevičanski otoci',
+ 'VI' => 'Američki Djevičanski otoci',
'VN' => 'Vijetnam',
'VU' => 'Vanuatu',
'WF' => 'Wallis i Futuna',
@@ -1377,9 +1406,12 @@ $countryNames = array(
'ZA' => 'Južnoafrička Republika',
'ZM' => 'Zambija',
'ZW' => 'Zimbabve',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-few' => '{0} stoljeća',
+ 'century-one' => '{0} stoljeće',
+ 'century-other' => '{0} stoljeća',
'day-few' => '{0} dana',
'day-future-few' => 'za {0} dana',
'day-future-one' => 'za {0} dan',
@@ -1401,16 +1433,34 @@ $timeUnits = array(
'day-short-past-few' => 'prije {0} dana',
'day-short-past-one' => 'prije {0} dan',
'day-short-past-other' => 'prije {0} dana',
+ 'fri-future-few' => 'za {0} petka',
+ 'fri-future-one' => 'za {0} petak',
+ 'fri-future-other' => 'za {0} petaka',
+ 'fri-narrow-future-few' => 'za {0} petka',
+ 'fri-narrow-future-one' => 'za {0} petak',
+ 'fri-narrow-future-other' => 'za {0} petaka',
+ 'fri-narrow-past-few' => 'prije {0} petka',
+ 'fri-narrow-past-one' => 'prije {0} petak',
+ 'fri-narrow-past-other' => 'prije {0} petaka',
+ 'fri-past-few' => 'prije {0} petka',
+ 'fri-past-one' => 'prije {0} petak',
+ 'fri-past-other' => 'prije {0} petaka',
+ 'fri-short-future-few' => 'za {0} petka',
+ 'fri-short-future-one' => 'za {0} petak',
+ 'fri-short-future-other' => 'za {0} petaka',
+ 'fri-short-past-few' => 'prije {0} petka',
+ 'fri-short-past-one' => 'prije {0} petak',
+ 'fri-short-past-other' => 'prije {0} petaka',
'hour-few' => '{0} sata',
'hour-future-few' => 'za {0} sata',
'hour-future-one' => 'za {0} sat',
'hour-future-other' => 'za {0} sati',
- 'hour-narrow-future-few' => '+{0} h',
- 'hour-narrow-future-one' => '+{0} h',
- 'hour-narrow-future-other' => '+{0} h',
- 'hour-narrow-past-few' => '-{0} h',
- 'hour-narrow-past-one' => '-{0} h',
- 'hour-narrow-past-other' => '-{0} h',
+ 'hour-narrow-future-few' => 'za {0} h',
+ 'hour-narrow-future-one' => 'za {0} h',
+ 'hour-narrow-future-other' => 'za {0} h',
+ 'hour-narrow-past-few' => 'prije {0} h',
+ 'hour-narrow-past-one' => 'prije {0} h',
+ 'hour-narrow-past-other' => 'prije {0} h',
'hour-one' => '{0} sat',
'hour-other' => '{0} sati',
'hour-past-few' => 'prije {0} sata',
@@ -1432,12 +1482,12 @@ $timeUnits = array(
'minute-future-few' => 'za {0} minute',
'minute-future-one' => 'za {0} minutu',
'minute-future-other' => 'za {0} minuta',
- 'minute-narrow-future-few' => '+{0} min',
- 'minute-narrow-future-one' => '+{0} min',
- 'minute-narrow-future-other' => '+{0} min',
- 'minute-narrow-past-few' => '-{0} min',
- 'minute-narrow-past-one' => '-{0} min',
- 'minute-narrow-past-other' => '-{0} min',
+ 'minute-narrow-future-few' => 'za {0} min',
+ 'minute-narrow-future-one' => 'za {0} min',
+ 'minute-narrow-future-other' => 'za {0} min',
+ 'minute-narrow-past-few' => 'prije {0} min',
+ 'minute-narrow-past-one' => 'prije {0} min',
+ 'minute-narrow-past-other' => 'prije {0} min',
'minute-one' => '{0} minuta',
'minute-other' => '{0} minuta',
'minute-past-few' => 'prije {0} minute',
@@ -1449,16 +1499,34 @@ $timeUnits = array(
'minute-short-past-few' => 'prije {0} min',
'minute-short-past-one' => 'prije {0} min',
'minute-short-past-other' => 'prije {0} min',
+ 'mon-future-few' => 'za {0} ponedjeljka',
+ 'mon-future-one' => 'za {0} ponedjeljak',
+ 'mon-future-other' => 'za {0} ponedjeljaka',
+ 'mon-narrow-future-few' => 'za {0} ponedjeljka',
+ 'mon-narrow-future-one' => 'za {0} ponedjeljak',
+ 'mon-narrow-future-other' => 'za {0} ponedjeljaka',
+ 'mon-narrow-past-few' => 'prije {0} ponedjeljka',
+ 'mon-narrow-past-one' => 'prije {0} ponedjeljak',
+ 'mon-narrow-past-other' => 'prije {0} ponedjeljaka',
+ 'mon-past-few' => 'prije {0} ponedjeljka',
+ 'mon-past-one' => 'prije {0} ponedjeljak',
+ 'mon-past-other' => 'prije {0} ponedjeljaka',
+ 'mon-short-future-few' => 'za {0} ponedjeljka',
+ 'mon-short-future-one' => 'za {0} ponedjeljak',
+ 'mon-short-future-other' => 'za {0} ponedjeljaka',
+ 'mon-short-past-few' => 'prije {0} ponedjeljka',
+ 'mon-short-past-one' => 'prije {0} ponedjeljak',
+ 'mon-short-past-other' => 'prije {0} ponedjeljaka',
'month-few' => '{0} mjeseca',
'month-future-few' => 'za {0} mjeseca',
'month-future-one' => 'za {0} mjesec',
'month-future-other' => 'za {0} mjeseci',
- 'month-narrow-future-few' => '+{0} mj.',
- 'month-narrow-future-one' => '+{0} mj.',
- 'month-narrow-future-other' => '+{0} mj.',
- 'month-narrow-past-few' => '-{0} mj.',
- 'month-narrow-past-one' => '-{0} mj.',
- 'month-narrow-past-other' => '-{0} mj.',
+ 'month-narrow-future-few' => 'za {0} mj.',
+ 'month-narrow-future-one' => 'za {0} mj.',
+ 'month-narrow-future-other' => 'za {0} mj.',
+ 'month-narrow-past-few' => 'prije {0} mj.',
+ 'month-narrow-past-one' => 'prije {0} mj.',
+ 'month-narrow-past-other' => 'prije {0} mj.',
'month-one' => '{0} mjesec',
'month-other' => '{0} mjeseci',
'month-past-few' => 'prije {0} mjeseca',
@@ -1476,12 +1544,12 @@ $timeUnits = array(
'quarter-future-few' => 'za {0} kvartala',
'quarter-future-one' => 'za {0} kvartal',
'quarter-future-other' => 'za {0} kvartala',
- 'quarter-narrow-future-few' => '+{0} kv.',
- 'quarter-narrow-future-one' => '+{0} kv.',
- 'quarter-narrow-future-other' => '+{0} kv.',
- 'quarter-narrow-past-few' => '-{0} kv.',
- 'quarter-narrow-past-one' => '-{0} kv.',
- 'quarter-narrow-past-other' => '-{0} kv.',
+ 'quarter-narrow-future-few' => 'za {0} kv.',
+ 'quarter-narrow-future-one' => 'za {0} kv.',
+ 'quarter-narrow-future-other' => 'za {0} kv.',
+ 'quarter-narrow-past-few' => 'prije {0} kv.',
+ 'quarter-narrow-past-one' => 'prije {0} kv.',
+ 'quarter-narrow-past-other' => 'prije {0} kv.',
'quarter-past-few' => 'prije {0} kvartala',
'quarter-past-one' => 'prije {0} kvartal',
'quarter-past-other' => 'prije {0} kvartala',
@@ -1491,16 +1559,34 @@ $timeUnits = array(
'quarter-short-past-few' => 'prije {0} kv.',
'quarter-short-past-one' => 'prije {0} kv.',
'quarter-short-past-other' => 'prije {0} kv.',
+ 'sat-future-few' => 'za {0} subote',
+ 'sat-future-one' => 'za {0} subotu',
+ 'sat-future-other' => 'za {0} subota',
+ 'sat-narrow-future-few' => 'za {0} subote',
+ 'sat-narrow-future-one' => 'za {0} subotu',
+ 'sat-narrow-future-other' => 'za {0} subota',
+ 'sat-narrow-past-few' => 'prije {0} subote',
+ 'sat-narrow-past-one' => 'prije {0} subotu',
+ 'sat-narrow-past-other' => 'prije {0} subota',
+ 'sat-past-few' => 'prije {0} subote',
+ 'sat-past-one' => 'prije {0} subotu',
+ 'sat-past-other' => 'prije {0} subota',
+ 'sat-short-future-few' => 'za {0} subote',
+ 'sat-short-future-one' => 'za {0} subotu',
+ 'sat-short-future-other' => 'za {0} subota',
+ 'sat-short-past-few' => 'prije {0} subote',
+ 'sat-short-past-one' => 'prije {0} subotu',
+ 'sat-short-past-other' => 'prije {0} subota',
'second-few' => '{0} sekunde',
'second-future-few' => 'za {0} sekunde',
'second-future-one' => 'za {0} sekundu',
'second-future-other' => 'za {0} sekundi',
- 'second-narrow-future-few' => '+{0} s',
- 'second-narrow-future-one' => '+{0} s',
- 'second-narrow-future-other' => '+{0} s',
- 'second-narrow-past-few' => '-{0} s',
- 'second-narrow-past-one' => '-{0} s',
- 'second-narrow-past-other' => '-{0} s',
+ 'second-narrow-future-few' => 'za {0} s',
+ 'second-narrow-future-one' => 'za {0} s',
+ 'second-narrow-future-other' => 'za {0} s',
+ 'second-narrow-past-few' => 'prije {0} s',
+ 'second-narrow-past-one' => 'prije {0} s',
+ 'second-narrow-past-other' => 'prije {0} s',
'second-one' => '{0} sekunda',
'second-other' => '{0} sekundi',
'second-past-few' => 'prije {0} sekunde',
@@ -1512,16 +1598,88 @@ $timeUnits = array(
'second-short-past-few' => 'prije {0} s',
'second-short-past-one' => 'prije {0} s',
'second-short-past-other' => 'prije {0} s',
+ 'sun-future-few' => 'za {0} nedjelje',
+ 'sun-future-one' => 'za {0} nedjelju',
+ 'sun-future-other' => 'za {0} nedjelja',
+ 'sun-narrow-future-few' => 'za {0} nedjelje',
+ 'sun-narrow-future-one' => 'za {0} nedjelju',
+ 'sun-narrow-future-other' => 'za {0} nedjelja',
+ 'sun-narrow-past-few' => 'prije {0} nedjelje',
+ 'sun-narrow-past-one' => 'prije {0} nedjelju',
+ 'sun-narrow-past-other' => 'prije {0} nedjelja',
+ 'sun-past-few' => 'prije {0} nedjelje',
+ 'sun-past-one' => 'prije {0} nedjelju',
+ 'sun-past-other' => 'prije {0} nedjelja',
+ 'sun-short-future-few' => 'za {0} nedjelje',
+ 'sun-short-future-one' => 'za {0} nedjelju',
+ 'sun-short-future-other' => 'za {0} nedjelja',
+ 'sun-short-past-few' => 'prije {0} nedjelje',
+ 'sun-short-past-one' => 'prije {0} nedjelju',
+ 'sun-short-past-other' => 'prije {0} nedjelja',
+ 'thu-future-few' => 'za {0} četvrtka',
+ 'thu-future-one' => 'za {0} četvrtak',
+ 'thu-future-other' => 'za {0} četvrtaka',
+ 'thu-narrow-future-few' => 'za {0} četvrtka',
+ 'thu-narrow-future-one' => 'za {0} četvrtak',
+ 'thu-narrow-future-other' => 'za {0} četvrtaka',
+ 'thu-narrow-past-few' => 'prije {0} četvrtka',
+ 'thu-narrow-past-one' => 'prije {0} četvrtak',
+ 'thu-narrow-past-other' => 'prije {0} četvrtaka',
+ 'thu-past-few' => 'prije {0} četvrtka',
+ 'thu-past-one' => 'prije {0} četvrtak',
+ 'thu-past-other' => 'prije {0} četvrtaka',
+ 'thu-short-future-few' => 'za {0} četvrtka',
+ 'thu-short-future-one' => 'za {0} četvrtak',
+ 'thu-short-future-other' => 'za {0} četvrtaka',
+ 'thu-short-past-few' => 'prije {0} četvrtka',
+ 'thu-short-past-one' => 'prije {0} četvrtak',
+ 'thu-short-past-other' => 'prije {0} četvrtaka',
+ 'tue-future-few' => 'za {0} utorka',
+ 'tue-future-one' => 'za {0} utorak',
+ 'tue-future-other' => 'za {0} utoraka',
+ 'tue-narrow-future-few' => 'za {0} utorka',
+ 'tue-narrow-future-one' => 'za {0} utorak',
+ 'tue-narrow-future-other' => 'za {0} utoraka',
+ 'tue-narrow-past-few' => 'prije {0} utorka',
+ 'tue-narrow-past-one' => 'prije {0} utorak',
+ 'tue-narrow-past-other' => 'prije {0} utoraka',
+ 'tue-past-few' => 'prije {0} utorka',
+ 'tue-past-one' => 'prije {0} utorak',
+ 'tue-past-other' => 'prije {0} utoraka',
+ 'tue-short-future-few' => 'za {0} utorka',
+ 'tue-short-future-one' => 'za {0} utorak',
+ 'tue-short-future-other' => 'za {0} utoraka',
+ 'tue-short-past-few' => 'prije {0} utorka',
+ 'tue-short-past-one' => 'prije {0} utorak',
+ 'tue-short-past-other' => 'prije {0} utoraka',
+ 'wed-future-few' => 'za {0} srijede',
+ 'wed-future-one' => 'za {0} srijedu',
+ 'wed-future-other' => 'za {0} srijeda',
+ 'wed-narrow-future-few' => 'za {0} srijede',
+ 'wed-narrow-future-one' => 'za {0} srijedu',
+ 'wed-narrow-future-other' => 'za {0} srijeda',
+ 'wed-narrow-past-few' => 'prije {0} srijede',
+ 'wed-narrow-past-one' => 'prije {0} srijedu',
+ 'wed-narrow-past-other' => 'prije {0} srijeda',
+ 'wed-past-few' => 'prije {0} srijede',
+ 'wed-past-one' => 'prije {0} srijedu',
+ 'wed-past-other' => 'prije {0} srijeda',
+ 'wed-short-future-few' => 'za {0} srijede',
+ 'wed-short-future-one' => 'za {0} srijedu',
+ 'wed-short-future-other' => 'za {0} srijeda',
+ 'wed-short-past-few' => 'prije {0} srijede',
+ 'wed-short-past-one' => 'prije {0} srijedu',
+ 'wed-short-past-other' => 'prije {0} srijeda',
'week-few' => '{0} tjedna',
'week-future-few' => 'za {0} tjedna',
'week-future-one' => 'za {0} tjedan',
'week-future-other' => 'za {0} tjedana',
- 'week-narrow-future-few' => '+{0} tj.',
- 'week-narrow-future-one' => '+{0} tj.',
- 'week-narrow-future-other' => '+{0} tj.',
- 'week-narrow-past-few' => '-{0} tj.',
- 'week-narrow-past-one' => '-{0} tj.',
- 'week-narrow-past-other' => '-{0} tj.',
+ 'week-narrow-future-few' => 'za {0} tj.',
+ 'week-narrow-future-one' => 'za {0} tj.',
+ 'week-narrow-future-other' => 'za {0} tj.',
+ 'week-narrow-past-few' => 'prije {0} tj.',
+ 'week-narrow-past-one' => 'prije {0} tj.',
+ 'week-narrow-past-other' => 'prije {0} tj.',
'week-one' => '{0} tjedan',
'week-other' => '{0} tjedana',
'week-past-few' => 'prije {0} tjedna',
@@ -1537,12 +1695,12 @@ $timeUnits = array(
'year-future-few' => 'za {0} godine',
'year-future-one' => 'za {0} godinu',
'year-future-other' => 'za {0} godina',
- 'year-narrow-future-few' => '+{0} g.',
- 'year-narrow-future-one' => '+{0} g.',
- 'year-narrow-future-other' => '+{0} g.',
- 'year-narrow-past-few' => '-{0} g.',
- 'year-narrow-past-one' => '-{0} g.',
- 'year-narrow-past-other' => '-{0} g.',
+ 'year-narrow-future-few' => 'za {0} g.',
+ 'year-narrow-future-one' => 'za {0} g.',
+ 'year-narrow-future-other' => 'za {0} g.',
+ 'year-narrow-past-few' => 'prije {0} g.',
+ 'year-narrow-past-one' => 'prije {0} g.',
+ 'year-narrow-past-other' => 'prije {0} g.',
'year-one' => '{0} godina',
'year-other' => '{0} godina',
'year-past-few' => 'prije {0} godine',
@@ -1554,4 +1712,4 @@ $timeUnits = array(
'year-short-past-few' => 'prije {0} g.',
'year-short-past-one' => 'prije {0} g.',
'year-short-past-other' => 'prije {0} g.',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesHsb.php b/MLEB/cldr/CldrNames/CldrNamesHsb.php
index 42b60f7b..e2f5a264 100644
--- a/MLEB/cldr/CldrNames/CldrNamesHsb.php
+++ b/MLEB/cldr/CldrNames/CldrNamesHsb.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'afaršćina',
'ab' => 'abchazišćina',
'af' => 'afrikaanšćina',
@@ -225,7 +225,7 @@ $languageNames = array(
'su' => 'sundanezišćina',
'sv' => 'šwedšćina',
'sw' => 'suahelšćina',
- 'swc' => 'kongoska suahelšćina',
+ 'sw-cd' => 'kongoska suahelšćina',
'ta' => 'tamilšćina',
'te' => 'telugu',
'teo' => 'teso',
@@ -265,9 +265,9 @@ $languageNames = array(
'zh-hant' => 'chinšćina (tradicionalna)',
'zu' => 'zulušćina',
'zxx' => 'žadyn rěčny wobsah',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'ADP' => 'andorraska peseta',
'AED' => 'ZAE dirham',
'AFN' => 'afghaniski afghani',
@@ -313,7 +313,8 @@ $currencyNames = array(
'BUK' => 'burmaski kyat',
'BWP' => 'botswanska pula',
'BYB' => 'běłoruski rubl (1994–1999)',
- 'BYR' => 'běłoruski rubl',
+ 'BYN' => 'běłoruski rubl',
+ 'BYR' => 'běłoruski rubl (2000–2016)',
'BZD' => 'belizeski dolar',
'CAD' => 'kanadiski dolar',
'CDF' => 'kongoski frank',
@@ -382,7 +383,8 @@ $currencyNames = array(
'MMK' => 'myanmarski kyat',
'MNT' => 'mongolski tugrik',
'MOP' => 'macaoska pataka',
- 'MRO' => 'mawretanska ouguiya',
+ 'MRO' => 'mawretanska ouguiya (1973–2017)',
+ 'MRU' => 'mawretanska ouguiya',
'MUR' => 'mauritiuska rupija',
'MVR' => 'malediwiska rupija',
'MWK' => 'malawiski kwacha',
@@ -399,7 +401,7 @@ $currencyNames = array(
'NZD' => 'nowoseelandski dolar',
'OMR' => 'omanski rial',
'PAB' => 'panamaski balboa',
- 'PEN' => 'peruski nowy sol',
+ 'PEN' => 'peruski sol',
'PGK' => 'papua-nowoginejski kina',
'PHP' => 'filipinski peso',
'PKR' => 'pakistanska rupija',
@@ -421,7 +423,8 @@ $currencyNames = array(
'SOS' => 'somaliski šiling',
'SRD' => 'surinamski dolar',
'SSP' => 'južnosudanski punt',
- 'STD' => 'são tomeski dobra',
+ 'STD' => 'são tomeski dobra (1977–2017)',
+ 'STN' => 'são tomeski dobra',
'SVC' => 'el salvadorski colón',
'SYP' => 'syriski punt',
'SZL' => 'swasiski lilangeni',
@@ -439,7 +442,8 @@ $currencyNames = array(
'USD' => 'ameriski dolar',
'UYU' => 'uruguayski peso',
'UZS' => 'uzbekski sum',
- 'VEF' => 'venezuelski bolívar',
+ 'VEF' => 'venezuelski bolívar (2008–2018)',
+ 'VES' => 'venezuelski bolívar',
'VND' => 'vietnamski dong',
'VUV' => 'vanuatuski vatu',
'WST' => 'samoaski tala',
@@ -451,9 +455,9 @@ $currencyNames = array(
'YER' => 'jemenski rial',
'ZAR' => 'južnoafriski rand',
'ZMW' => 'sambiski kwacha',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'ALL' => 'ALL',
'AUD' => 'AUD',
'BGN' => 'BGN',
@@ -477,9 +481,9 @@ $currencySymbols = array(
'XCD' => 'EC$',
'XOF' => 'CFA',
'XPF' => 'CFPF',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'Ascension',
'AD' => 'Andorra',
'AE' => 'Zjednoćene arabske emiraty',
@@ -738,9 +742,9 @@ $countryNames = array(
'ZA' => 'Južna Afrika (Republika)',
'ZM' => 'Sambija',
'ZW' => 'Simbabwe',
-);
+];
-$timeUnits = array(
+$timeUnits = [
'day-few' => '{0} dny',
'day-future-few' => 'za {0} dny',
'day-future-one' => 'za {0} dźeń',
@@ -973,4 +977,4 @@ $timeUnits = array(
'year-short-past-other' => 'před {0} l.',
'year-short-past-two' => 'před {0} l.',
'year-two' => '{0} lěće',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesHu.php b/MLEB/cldr/CldrNames/CldrNamesHu.php
index dddfb828..542345e8 100644
--- a/MLEB/cldr/CldrNames/CldrNamesHu.php
+++ b/MLEB/cldr/CldrNames/CldrNamesHu.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'afar',
'ab' => 'abház',
'ace' => 'achinéz',
@@ -23,8 +23,9 @@ $languageNames = array(
'ar' => 'arab',
'ar-001' => 'modern szabányos arab',
'arc' => 'arámi',
- 'arn' => 'araucani',
+ 'arn' => 'mapucse',
'arp' => 'arapaho',
+ 'ars' => 'nedzsdi arab',
'arw' => 'aravak',
'as' => 'asszámi',
'asa' => 'asu',
@@ -39,12 +40,13 @@ $languageNames = array(
'bas' => 'basza',
'bax' => 'bamun',
'bbj' => 'gomala',
- 'be' => 'belorusz',
+ 'be' => 'belarusz',
'bej' => 'bedzsa',
'bem' => 'bemba',
'bez' => 'bena',
'bfd' => 'bafut',
'bg' => 'bolgár',
+ 'bgn' => 'nyugati beludzs',
'bho' => 'bodzspuri',
'bi' => 'bislama',
'bik' => 'bikol',
@@ -52,7 +54,7 @@ $languageNames = array(
'bkm' => 'kom',
'bla' => 'siksika',
'bm' => 'bambara',
- 'bn' => 'bengáli',
+ 'bn' => 'bangla',
'bo' => 'tibeti',
'br' => 'breton',
'bra' => 'braj',
@@ -70,7 +72,7 @@ $languageNames = array(
'cay' => 'kajuga',
'cch' => 'atszam',
'ce' => 'csecsen',
- 'ceb' => 'cebui',
+ 'ceb' => 'szebuano',
'cgg' => 'kiga',
'ch' => 'csamoró',
'chb' => 'csibcsa',
@@ -82,11 +84,12 @@ $languageNames = array(
'chp' => 'csipevé',
'chr' => 'cseroki',
'chy' => 'csejen',
- 'ckb' => 'szoráni kurd',
+ 'ckb' => 'közép-ázsiai kurd',
'co' => 'korzikai',
'cop' => 'kopt',
'cr' => 'krí',
'crh' => 'krími tatár',
+ 'crs' => 'szeszelva kreol francia',
'cs' => 'cseh',
'csb' => 'kasub',
'cu' => 'egyházi szláv',
@@ -105,13 +108,13 @@ $languageNames = array(
'din' => 'dinka',
'dje' => 'zarma',
'doi' => 'dogri',
- 'dsb' => 'alsó szorb',
+ 'dsb' => 'alsó-szorb',
'dua' => 'duala',
'dum' => 'közép holland',
'dv' => 'divehi',
'dyo' => 'jola-fonyi',
'dyu' => 'diula',
- 'dz' => 'butáni',
+ 'dz' => 'dzsonga',
'dzg' => 'dazaga',
'ebu' => 'embu',
'ee' => 'eve',
@@ -146,21 +149,23 @@ $languageNames = array(
'fr' => 'francia',
'fr-ca' => 'kanadai francia',
'fr-ch' => 'svájci francia',
+ 'frc' => 'cajun francia',
'frm' => 'közép francia',
'fro' => 'ófrancia',
'frr' => 'északi fríz',
'frs' => 'keleti fríz',
'fur' => 'friuli',
- 'fy' => 'fríz',
+ 'fy' => 'nyugati fríz',
'ga' => 'ír',
'gaa' => 'ga',
'gag' => 'gagauz',
+ 'gan' => 'gan kínai',
'gay' => 'gajo',
'gba' => 'gbaja',
- 'gd' => 'skót gael',
+ 'gd' => 'skóciai kelta',
'gez' => 'geez',
'gil' => 'ikiribati',
- 'gl' => 'galíciai',
+ 'gl' => 'gallego',
'gmh' => 'közép felső német',
'gn' => 'guarani',
'goh' => 'ófelső német',
@@ -170,29 +175,31 @@ $languageNames = array(
'grb' => 'grebó',
'grc' => 'ógörög',
'gsw' => 'svájci német',
- 'gu' => 'gudzsarati',
+ 'gu' => 'gudzsaráti',
'guz' => 'guszii',
'gv' => 'man-szigeti',
'gwi' => 'gvicsin',
'ha' => 'hausza',
'hai' => 'haida',
+ 'hak' => 'hakka kínai',
'haw' => 'hawaii',
'he' => 'héber',
'hi' => 'hindi',
- 'hil' => 'hiligajnon',
+ 'hil' => 'ilokano',
'hit' => 'hittite',
'hmn' => 'hmong',
'ho' => 'hiri motu',
'hr' => 'horvát',
- 'hsb' => 'felső szorb',
- 'ht' => 'haiti',
+ 'hsb' => 'felső-szorb',
+ 'hsn' => 'xiang kínai',
+ 'ht' => 'haiti kreol',
'hu' => 'magyar',
'hup' => 'hupa',
'hy' => 'örmény',
'hz' => 'herero',
'ia' => 'interlingva',
'iba' => 'iban',
- 'ibb' => 'ibibió',
+ 'ibb' => 'ibibio',
'id' => 'indonéz',
'ie' => 'interlingue',
'ig' => 'igbó',
@@ -234,7 +241,7 @@ $languageNames = array(
'kkj' => 'kakó',
'kl' => 'grönlandi',
'kln' => 'kalendzsin',
- 'km' => 'kambodzsai',
+ 'km' => 'khmer',
'kmb' => 'kimbundu',
'kn' => 'kannada',
'ko' => 'koreai',
@@ -246,7 +253,7 @@ $languageNames = array(
'krc' => 'karacsáj-balkár',
'krl' => 'karelai',
'kru' => 'kuruh',
- 'ks' => 'kásmíri',
+ 'ks' => 'kasmíri',
'ksb' => 'sambala',
'ksf' => 'bafia',
'ksh' => 'kölsch',
@@ -267,9 +274,11 @@ $languageNames = array(
'li' => 'limburgi',
'lkt' => 'lakota',
'ln' => 'lingala',
- 'lo' => 'laoszi',
+ 'lo' => 'lao',
'lol' => 'mongó',
+ 'lou' => 'louisianai kreol',
'loz' => 'lozi',
+ 'lrc' => 'északi luri',
'lt' => 'litván',
'lu' => 'luba-katanga',
'lua' => 'luba-lulua',
@@ -292,7 +301,7 @@ $languageNames = array(
'men' => 'mende',
'mer' => 'meru',
'mfe' => 'mauritiusi kreol',
- 'mg' => 'málgas',
+ 'mg' => 'malgas',
'mga' => 'közép ír',
'mgh' => 'makua-metó',
'mgo' => 'meta’',
@@ -307,51 +316,54 @@ $languageNames = array(
'mni' => 'manipuri',
'moh' => 'mohawk',
'mos' => 'moszi',
- 'mr' => 'marathi',
+ 'mr' => 'maráthi',
'ms' => 'maláj',
'mt' => 'máltai',
'mua' => 'mundang',
'mul' => 'többszörös nyelvek',
'mus' => 'krík',
'mwl' => 'mirandéz',
- 'mwr' => 'marvari',
+ 'mwr' => 'márvári',
'my' => 'burmai',
'mye' => 'myene',
'myv' => 'erzjány',
+ 'mzn' => 'mázanderáni',
'na' => 'naurui',
+ 'nan' => 'min nan kínai',
'nap' => 'nápolyi',
'naq' => 'nama',
- 'nb' => 'norvég bokmal',
+ 'nb' => 'norvég (bokmål)',
'nd' => 'északi ndebele',
'nds' => 'alsónémet',
+ 'nds-nl' => 'alsószász',
'ne' => 'nepáli',
'new' => 'nevari',
'ng' => 'ndonga',
'nia' => 'nias',
- 'niu' => 'niui',
+ 'niu' => 'niuei',
'nl' => 'holland',
'nl-be' => 'flamand',
'nmg' => 'ngumba',
- 'nn' => 'norvég nynorsk',
+ 'nn' => 'norvég (nynorsk)',
'nnh' => 'ngiemboon',
'no' => 'norvég',
'nog' => 'nogaj',
'non' => 'óskandináv',
'nqo' => 'n’kó',
'nr' => 'déli ndebele',
- 'nso' => 'északi szotó',
+ 'nso' => 'északi szeszotó',
'nus' => 'nuer',
'nv' => 'navahó',
'nwc' => 'klasszikus newari',
- 'ny' => 'nyanja',
+ 'ny' => 'nyandzsa',
'nym' => 'nyamvézi',
'nyn' => 'nyankole',
'nyo' => 'nyoró',
'nzi' => 'nzima',
'oc' => 'okszitán',
'oj' => 'ojibva',
- 'om' => 'oromói',
- 'or' => 'orija',
+ 'om' => 'oromo',
+ 'or' => 'odia',
'os' => 'oszét',
'osa' => 'osage',
'ota' => 'ottomán török',
@@ -359,13 +371,15 @@ $languageNames = array(
'pag' => 'pangaszinan',
'pal' => 'pahlavi',
'pam' => 'pampangan',
- 'pap' => 'papiamentó',
+ 'pap' => 'papiamento',
'pau' => 'palaui',
+ 'pcm' => 'nigériai pidgin',
'peo' => 'óperzsa',
'phn' => 'főniciai',
'pi' => 'pali',
'pl' => 'lengyel',
'pon' => 'pohnpei',
+ 'prg' => 'porosz',
'pro' => 'óprovánszi',
'ps' => 'pastu',
'pt' => 'portugál',
@@ -376,7 +390,7 @@ $languageNames = array(
'raj' => 'radzsasztáni',
'rap' => 'rapanui',
'rar' => 'rarotongai',
- 'rm' => 'réto-román',
+ 'rm' => 'rétoromán',
'rn' => 'kirundi',
'ro' => 'román',
'ro-md' => 'moldvai',
@@ -384,11 +398,11 @@ $languageNames = array(
'rom' => 'roma',
'ru' => 'orosz',
'rup' => 'aromán',
- 'rw' => 'kiruanda',
+ 'rw' => 'kinyarvanda',
'rwk' => 'rwo',
'sa' => 'szanszkrit',
'sad' => 'szandave',
- 'sah' => 'jakut',
+ 'sah' => 'szaha',
'sam' => 'szamaritánus arámi',
'saq' => 'szamburu',
'sas' => 'sasak',
@@ -399,6 +413,7 @@ $languageNames = array(
'scn' => 'szicíliai',
'sco' => 'skót',
'sd' => 'szindhi',
+ 'sdh' => 'dél-kurd',
'se' => 'északi számi',
'see' => 'szeneka',
'seh' => 'szena',
@@ -416,12 +431,12 @@ $languageNames = array(
'sl' => 'szlovén',
'sm' => 'szamoai',
'sma' => 'déli számi',
- 'smj' => 'lule számi',
- 'smn' => 'inar sami',
- 'sms' => 'koltta lapp',
+ 'smj' => 'lulei számi',
+ 'smn' => 'inari számi',
+ 'sms' => 'kolta számi',
'sn' => 'sona',
'snk' => 'szoninke',
- 'so' => 'szomáliai',
+ 'so' => 'szomáli',
'sog' => 'sogdien',
'sq' => 'albán',
'sr' => 'szerb',
@@ -429,17 +444,17 @@ $languageNames = array(
'srr' => 'szerer',
'ss' => 'sziszuati',
'ssy' => 'szahó',
- 'st' => 'szeszotó',
+ 'st' => 'déli szeszotó',
'su' => 'szundanéz',
'suk' => 'szukuma',
'sus' => 'szuszu',
'sux' => 'sumér',
'sv' => 'svéd',
'sw' => 'szuahéli',
+ 'sw-cd' => 'kongói szuahéli',
'swb' => 'comorei',
- 'swc' => 'kongói szuahéli',
'syc' => 'klasszikus szír',
- 'syr' => 'szíriai',
+ 'syr' => 'szír',
'ta' => 'tamil',
'te' => 'telugu',
'tem' => 'temne',
@@ -448,7 +463,7 @@ $languageNames = array(
'tet' => 'tetum',
'tg' => 'tadzsik',
'th' => 'thai',
- 'ti' => 'tigrinja',
+ 'ti' => 'tigrinya',
'tig' => 'tigré',
'tiv' => 'tiv',
'tk' => 'türkmén',
@@ -458,8 +473,8 @@ $languageNames = array(
'tli' => 'tlingit',
'tmh' => 'tamasek',
'tn' => 'szecsuáni',
- 'to' => 'tonga',
- 'tog' => 'nyasa tonga',
+ 'to' => 'tongai',
+ 'tog' => 'nyugati nyasza',
'tpi' => 'tok pisin',
'tr' => 'török',
'trv' => 'tarokó',
@@ -472,7 +487,7 @@ $languageNames = array(
'twq' => 'szavák',
'ty' => 'tahiti',
'tyv' => 'tuvai',
- 'tzm' => 'közép-marokkói tamazigt',
+ 'tzm' => 'közép-atlaszi tamazigt',
'udm' => 'udmurt',
'ug' => 'ujgur',
'uga' => 'ugariti',
@@ -492,9 +507,11 @@ $languageNames = array(
'wal' => 'valamo',
'war' => 'varaó',
'was' => 'vasó',
+ 'wbp' => 'warlpiri',
'wo' => 'volof',
+ 'wuu' => 'wu kínai',
'xal' => 'kalmük',
- 'xh' => 'hosza',
+ 'xh' => 'xhosza',
'xog' => 'szoga',
'yao' => 'jaó',
'yap' => 'japi',
@@ -515,9 +532,9 @@ $languageNames = array(
'zun' => 'zuni',
'zxx' => 'nincs nyelvészeti tartalom',
'zza' => 'zaza',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'ADP' => 'Andorrai peseta',
'AED' => 'EAE-dirham',
'AFA' => 'afgán afghani (1927–2002)',
@@ -564,7 +581,8 @@ $currencyNames = array(
'BUK' => 'Burmai kyat',
'BWP' => 'botswanai pula',
'BYB' => 'Fehérorosz új rubel (1994–1999)',
- 'BYR' => 'fehérorosz rubel',
+ 'BYN' => 'fehérorosz rubel',
+ 'BYR' => 'fehérorosz rubel (2000–2016)',
'BZD' => 'belize-i dollár',
'CAD' => 'kanadai dollár',
'CDF' => 'kongói frank',
@@ -573,6 +591,7 @@ $currencyNames = array(
'CHW' => 'WIR frank',
'CLF' => 'Chilei unidades de fomento',
'CLP' => 'chilei peso',
+ 'CNH' => 'kínai jüan (offshore)',
'CNY' => 'kínai jüan',
'COP' => 'kolumbiai peso',
'COU' => 'Unidad de Valor Real',
@@ -604,7 +623,7 @@ $currencyNames = array(
'FJD' => 'fidzsi dollár',
'FKP' => 'falkland-szigeteki font',
'FRF' => 'Francia frank',
- 'GBP' => 'brit font',
+ 'GBP' => 'angol font',
'GEK' => 'Grúz kupon larit',
'GEL' => 'grúz lari',
'GHC' => 'Ghánai cedi (1979–2007)',
@@ -669,7 +688,8 @@ $currencyNames = array(
'MMK' => 'mianmari kyat',
'MNT' => 'mongóliai tugrik',
'MOP' => 'makaói pataca',
- 'MRO' => 'mauritániai ouguiya',
+ 'MRO' => 'mauritániai ouguiya (1973–2017)',
+ 'MRU' => 'mauritániai ouguiya',
'MTL' => 'Máltai líra',
'MTP' => 'Máltai font',
'MUR' => 'mauritiusi rúpia',
@@ -692,9 +712,9 @@ $currencyNames = array(
'NZD' => 'új-zélandi dollár',
'OMR' => 'ománi rial',
'PAB' => 'panamai balboa',
- 'PEI' => 'Perui inti',
- 'PEN' => 'perui sol nuevo',
- 'PES' => 'Perui sol',
+ 'PEI' => 'perui inti',
+ 'PEN' => 'perui sol',
+ 'PES' => 'perui sol (1863–1965)',
'PGK' => 'pápua új-guineai kina',
'PHP' => 'fülöp-szigeteki peso',
'PKR' => 'pakisztáni rúpia',
@@ -726,7 +746,8 @@ $currencyNames = array(
'SRD' => 'suriname-i dollár',
'SRG' => 'Suriname-i gulden',
'SSP' => 'dél-szudáni font',
- 'STD' => 'São Tomé és Príncipe-i dobra',
+ 'STD' => 'São Tomé és Príncipe-i dobra (1977–2017)',
+ 'STN' => 'São Tomé és Príncipe-i dobra',
'SUR' => 'Szovjet rubel',
'SVC' => 'Salvadori colón',
'SYP' => 'szíriai font',
@@ -756,7 +777,8 @@ $currencyNames = array(
'UYU' => 'uruguay-i peso',
'UZS' => 'üzbegisztáni szum',
'VEB' => 'Venezuelai bolivar (1871–2008)',
- 'VEF' => 'venezuelai bolivar',
+ 'VEF' => 'venezuelai bolivar (2008–2018)',
+ 'VES' => 'venezuelai bolivar',
'VND' => 'vietnami dong',
'VUV' => 'vanuatui vatu',
'WST' => 'nyugat-szamoai tala',
@@ -793,9 +815,9 @@ $currencyNames = array(
'ZWD' => 'Zimbabwei dollár (1980–2008)',
'ZWL' => 'Zimbabwei dollár (2009)',
'ZWR' => 'Zimbabwei dollár (2008)',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'AED' => 'AED',
'AFN' => 'AFN',
'ALL' => 'ALL',
@@ -819,12 +841,14 @@ $currencySymbols = array(
'BSD' => 'BSD',
'BTN' => 'BTN',
'BWP' => 'BWP',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CAD',
'CDF' => 'CDF',
'CHF' => 'CHF',
'CLP' => 'CLP',
+ 'CNH' => 'CNH',
'CNY' => 'CNY',
'COP' => 'COP',
'CRC' => 'CRC',
@@ -854,7 +878,7 @@ $currencySymbols = array(
'HNL' => 'HNL',
'HRK' => 'HRK',
'HTG' => 'HTG',
- 'HUF' => 'HUF',
+ 'HUF' => 'Ft',
'IDR' => 'IDR',
'ILS' => 'ILS',
'INR' => 'INR',
@@ -925,6 +949,7 @@ $currencySymbols = array(
'SRD' => 'SRD',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'STN',
'SYP' => 'SYP',
'SZL' => 'SZL',
'THB' => 'THB',
@@ -942,6 +967,7 @@ $currencySymbols = array(
'UYU' => 'UYU',
'UZS' => 'UZS',
'VEF' => 'VEF',
+ 'VES' => 'VES',
'VND' => 'VND',
'VUV' => 'VUV',
'WST' => 'WST',
@@ -953,18 +979,17 @@ $currencySymbols = array(
'ZAR' => 'ZAR',
'ZMK' => 'ZMK',
'ZMW' => 'ZMW',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'Ascension-sziget',
'AD' => 'Andorra',
- 'AE' => 'Egyesült Arab Emirátus',
+ 'AE' => 'Egyesült Arab Emírségek',
'AF' => 'Afganisztán',
'AG' => 'Antigua és Barbuda',
'AI' => 'Anguilla',
'AL' => 'Albánia',
'AM' => 'Örményország',
- 'AN' => 'Holland Antillák',
'AO' => 'Angola',
'AQ' => 'Antarktisz',
'AR' => 'Argentína',
@@ -993,10 +1018,10 @@ $countryNames = array(
'BT' => 'Bhután',
'BV' => 'Bouvet-sziget',
'BW' => 'Botswana',
- 'BY' => 'Fehéroroszország',
+ 'BY' => 'Belarusz',
'BZ' => 'Belize',
'CA' => 'Kanada',
- 'CC' => 'Kókusz-szigetek',
+ 'CC' => 'Kókusz (Keeling)-szigetek',
'CD' => 'Kongó - Kinshasa',
'CF' => 'Közép-afrikai Köztársaság',
'CG' => 'Kongó - Brazzaville',
@@ -1031,11 +1056,12 @@ $countryNames = array(
'ES' => 'Spanyolország',
'ET' => 'Etiópia',
'EU' => 'Európai Unió',
+ 'EZ' => 'Eurózóna',
'FI' => 'Finnország',
- 'FJ' => 'Fidzsi-szigetek',
+ 'FJ' => 'Fidzsi',
'FK' => 'Falkland-szigetek',
'FM' => 'Mikronézia',
- 'FO' => 'Feröer-szigetek',
+ 'FO' => 'Feröer szigetek',
'FR' => 'Franciaország',
'GA' => 'Gabon',
'GB' => 'UK',
@@ -1054,7 +1080,7 @@ $countryNames = array(
'GS' => 'Déli-Georgia és Déli-Sandwich-szigetek',
'GT' => 'Guatemala',
'GU' => 'Guam',
- 'GW' => 'Guinea-Bissau',
+ 'GW' => 'Bissau-Guinea',
'GY' => 'Guyana',
'HK' => 'Hongkong',
'HM' => 'Heard-sziget és McDonald-szigetek',
@@ -1090,7 +1116,7 @@ $countryNames = array(
'KZ' => 'Kazahsztán',
'LA' => 'Laosz',
'LB' => 'Libanon',
- 'LC' => 'Santa Lucia',
+ 'LC' => 'Saint Lucia',
'LI' => 'Liechtenstein',
'LK' => 'Srí Lanka',
'LR' => 'Libéria',
@@ -1142,7 +1168,7 @@ $countryNames = array(
'PH' => 'Fülöp-szigetek',
'PK' => 'Pakisztán',
'PL' => 'Lengyelország',
- 'PM' => 'Saint Pierre és Miquelon',
+ 'PM' => 'Saint-Pierre és Miquelon',
'PN' => 'Pitcairn-szigetek',
'PR' => 'Puerto Rico',
'PS' => 'Palesztina',
@@ -1151,7 +1177,7 @@ $countryNames = array(
'PY' => 'Paraguay',
'QA' => 'Katar',
'QO' => 'Külső-Óceánia',
- 'RE' => 'Reunion',
+ 'RE' => 'Réunion',
'RO' => 'Románia',
'RS' => 'Szerbia',
'RU' => 'Oroszország',
@@ -1164,7 +1190,7 @@ $countryNames = array(
'SG' => 'Szingapúr',
'SH' => 'Szent Ilona',
'SI' => 'Szlovénia',
- 'SJ' => 'Spitzbergák és Jan Mayen-szigetek',
+ 'SJ' => 'Svalbard és Jan Mayen',
'SK' => 'Szlovákia',
'SL' => 'Sierra Leone',
'SM' => 'San Marino',
@@ -1172,7 +1198,7 @@ $countryNames = array(
'SO' => 'Szomália',
'SR' => 'Suriname',
'SS' => 'Dél-Szudán',
- 'ST' => 'Sao Tomé és Príncipe',
+ 'ST' => 'São Tomé és Príncipe',
'SV' => 'Salvador',
'SX' => 'Sint Maarten',
'SY' => 'Szíria',
@@ -1196,7 +1222,8 @@ $countryNames = array(
'TZ' => 'Tanzánia',
'UA' => 'Ukrajna',
'UG' => 'Uganda',
- 'UM' => 'Amerikai Csendes-óceáni Szigetek',
+ 'UM' => 'Az USA lakatlan külbirtokai',
+ 'UN' => 'ENSZ',
'US' => 'USA',
'UY' => 'Uruguay',
'UZ' => 'Üzbegisztán',
@@ -1205,9 +1232,9 @@ $countryNames = array(
'VE' => 'Venezuela',
'VG' => 'Brit Virgin-szigetek',
'VI' => 'Amerikai Virgin-szigetek',
- 'VN' => 'Vietnam',
+ 'VN' => 'Vietnám',
'VU' => 'Vanuatu',
- 'WF' => 'Wallis- és Futuna-szigetek',
+ 'WF' => 'Wallis és Futuna',
'WS' => 'Szamoa',
'XK' => 'Koszovó',
'YE' => 'Jemen',
@@ -1215,9 +1242,11 @@ $countryNames = array(
'ZA' => 'Dél-afrikai Köztársaság',
'ZM' => 'Zambia',
'ZW' => 'Zimbabwe',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-one' => '{0} évszázad',
+ 'century-other' => '{0} évszázad',
'day-future-one' => '{0} nap múlva',
'day-future-other' => '{0} nap múlva',
'day-narrow-future-one' => '{0} nap múlva',
@@ -1232,6 +1261,18 @@ $timeUnits = array(
'day-short-future-other' => '{0} nap múlva',
'day-short-past-one' => '{0} napja',
'day-short-past-other' => '{0} napja',
+ 'fri-future-one' => '{0} péntek múlva',
+ 'fri-future-other' => '{0} péntek múlva',
+ 'fri-narrow-future-one' => '{0} péntek múlva',
+ 'fri-narrow-future-other' => '{0} péntek múlva',
+ 'fri-narrow-past-one' => '{0} péntekkel ezelőtt',
+ 'fri-narrow-past-other' => '{0} péntekkel ezelőtt',
+ 'fri-past-one' => '{0} péntekkel ezelőtt',
+ 'fri-past-other' => '{0} péntekkel ezelőtt',
+ 'fri-short-future-one' => '{0} péntek múlva',
+ 'fri-short-future-other' => '{0} péntek múlva',
+ 'fri-short-past-one' => '{0} péntekkel ezelőtt',
+ 'fri-short-past-other' => '{0} péntekkel ezelőtt',
'hour-future-one' => '{0} óra múlva',
'hour-future-other' => '{0} óra múlva',
'hour-narrow-future-one' => '{0} óra múlva',
@@ -1264,6 +1305,18 @@ $timeUnits = array(
'minute-short-future-other' => '{0} perc múlva',
'minute-short-past-one' => '{0} perccel ezelőtt',
'minute-short-past-other' => '{0} perccel ezelőtt',
+ 'mon-future-one' => '{0} hétfő múlva',
+ 'mon-future-other' => '{0} hétfő múlva',
+ 'mon-narrow-future-one' => '{0} hétfő múlva',
+ 'mon-narrow-future-other' => '{0} hétfő múlva',
+ 'mon-narrow-past-one' => '{0} hétfővel ezelőtt',
+ 'mon-narrow-past-other' => '{0} hétfővel ezelőtt',
+ 'mon-past-one' => '{0} hétfővel ezelőtt',
+ 'mon-past-other' => '{0} hétfővel ezelőtt',
+ 'mon-short-future-one' => '{0} hétfő múlva',
+ 'mon-short-future-other' => '{0} hétfő múlva',
+ 'mon-short-past-one' => '{0} hétfővel ezelőtt',
+ 'mon-short-past-other' => '{0} hétfővel ezelőtt',
'month-future-one' => '{0} hónap múlva',
'month-future-other' => '{0} hónap múlva',
'month-narrow-future-one' => '{0} hónap múlva',
@@ -1282,8 +1335,8 @@ $timeUnits = array(
'nanosecond-other' => '{0} nanoszekundum',
'quarter-future-one' => '{0} negyedév múlva',
'quarter-future-other' => '{0} negyedév múlva',
- 'quarter-narrow-future-one' => '{0} negyedév múlva',
- 'quarter-narrow-future-other' => '{0} negyedév múlva',
+ 'quarter-narrow-future-one' => '{0} n.év múlva',
+ 'quarter-narrow-future-other' => '{0} n.év múlva',
'quarter-narrow-past-one' => '{0} negyedévvel ezelőtt',
'quarter-narrow-past-other' => '{0} negyedévvel ezelőtt',
'quarter-past-one' => '{0} negyedévvel ezelőtt',
@@ -1292,6 +1345,18 @@ $timeUnits = array(
'quarter-short-future-other' => '{0} negyedév múlva',
'quarter-short-past-one' => '{0} negyedévvel ezelőtt',
'quarter-short-past-other' => '{0} negyedévvel ezelőtt',
+ 'sat-future-one' => '{0} szombat múlva',
+ 'sat-future-other' => '{0} szombat múlva',
+ 'sat-narrow-future-one' => '{0} szombat múlva',
+ 'sat-narrow-future-other' => '{0} szombat múlva',
+ 'sat-narrow-past-one' => '{0} szombattal ezelőtt',
+ 'sat-narrow-past-other' => '{0} szombattal ezelőtt',
+ 'sat-past-one' => '{0} szombattal ezelőtt',
+ 'sat-past-other' => '{0} szombattal ezelőtt',
+ 'sat-short-future-one' => '{0} szombat múlva',
+ 'sat-short-future-other' => '{0} szombat múlva',
+ 'sat-short-past-one' => '{0} szombattal ezelőtt',
+ 'sat-short-past-other' => '{0} szombattal ezelőtt',
'second-future-one' => '{0} másodperc múlva',
'second-future-other' => '{0} másodperc múlva',
'second-narrow-future-one' => '{0} másodperc múlva',
@@ -1306,6 +1371,54 @@ $timeUnits = array(
'second-short-future-other' => '{0} másodperc múlva',
'second-short-past-one' => '{0} másodperccel ezelőtt',
'second-short-past-other' => '{0} másodperccel ezelőtt',
+ 'sun-future-one' => '{0} vasárnap múlva',
+ 'sun-future-other' => '{0} vasárnap múlva',
+ 'sun-narrow-future-one' => '{0} vasárnap múlva',
+ 'sun-narrow-future-other' => '{0} vasárnap múlva',
+ 'sun-narrow-past-one' => '{0} vasárnappal ezelőtt',
+ 'sun-narrow-past-other' => '{0} vasárnappal ezelőtt',
+ 'sun-past-one' => '{0} vasárnappal ezelőtt',
+ 'sun-past-other' => '{0} vasárnappal ezelőtt',
+ 'sun-short-future-one' => '{0} vasárnap múlva',
+ 'sun-short-future-other' => '{0} vasárnap múlva',
+ 'sun-short-past-one' => '{0} vasárnappal ezelőtt',
+ 'sun-short-past-other' => '{0} vasárnappal ezelőtt',
+ 'thu-future-one' => '{0} csütörtök múlva',
+ 'thu-future-other' => '{0} csütörtök múlva',
+ 'thu-narrow-future-one' => '{0} csütörtök múlva',
+ 'thu-narrow-future-other' => '{0} csütörtök múlva',
+ 'thu-narrow-past-one' => '{0} csütörtökkel ezelőtt',
+ 'thu-narrow-past-other' => '{0} csütörtökkel ezelőtt',
+ 'thu-past-one' => '{0} csütörtökkel ezelőtt',
+ 'thu-past-other' => '{0} csütörtökkel ezelőtt',
+ 'thu-short-future-one' => '{0} csütörtök múlva',
+ 'thu-short-future-other' => '{0} csütörtök múlva',
+ 'thu-short-past-one' => '{0} csütörtökkel ezelőtt',
+ 'thu-short-past-other' => '{0} csütörtökkel ezelőtt',
+ 'tue-future-one' => '{0} kedd múlva',
+ 'tue-future-other' => '{0} kedd múlva',
+ 'tue-narrow-future-one' => '{0} kedd múlva',
+ 'tue-narrow-future-other' => '{0} kedd múlva',
+ 'tue-narrow-past-one' => '{0} keddel ezelőtt',
+ 'tue-narrow-past-other' => '{0} keddel ezelőtt',
+ 'tue-past-one' => '{0} keddel ezelőtt',
+ 'tue-past-other' => '{0} keddel ezelőtt',
+ 'tue-short-future-one' => '{0} kedd múlva',
+ 'tue-short-future-other' => '{0} kedd múlva',
+ 'tue-short-past-one' => '{0} keddel ezelőtt',
+ 'tue-short-past-other' => '{0} keddel ezelőtt',
+ 'wed-future-one' => '{0} szerda múlva',
+ 'wed-future-other' => '{0} szerda múlva',
+ 'wed-narrow-future-one' => '{0} szerda múlva',
+ 'wed-narrow-future-other' => '{0} szerda múlva',
+ 'wed-narrow-past-one' => '{0} szerdával ezelőtt',
+ 'wed-narrow-past-other' => '{0} szerdával ezelőtt',
+ 'wed-past-one' => '{0} szerdával ezelőtt',
+ 'wed-past-other' => '{0} szerdával ezelőtt',
+ 'wed-short-future-one' => '{0} szerda múlva',
+ 'wed-short-future-other' => '{0} szerda múlva',
+ 'wed-short-past-one' => '{0} szerdával ezelőtt',
+ 'wed-short-past-other' => '{0} szerdával ezelőtt',
'week-future-one' => '{0} hét múlva',
'week-future-other' => '{0} hét múlva',
'week-narrow-future-one' => '{0} hét múlva',
@@ -1334,4 +1447,4 @@ $timeUnits = array(
'year-short-future-other' => '{0} év múlva',
'year-short-past-one' => '{0} évvel ezelőtt',
'year-short-past-other' => '{0} évvel ezelőtt',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesHy.php b/MLEB/cldr/CldrNames/CldrNamesHy.php
index 0332b4ba..5a1ecaf2 100644
--- a/MLEB/cldr/CldrNames/CldrNamesHy.php
+++ b/MLEB/cldr/CldrNames/CldrNamesHy.php
@@ -1,402 +1,645 @@
<?php
-$languageNames = array(
+$languageNames = [
+ 'aa' => 'աֆարերեն',
'ab' => 'աբխազերեն',
+ 'ace' => 'աչեհերեն',
+ 'ach' => 'աչոլի',
+ 'ada' => 'ադանգմերեն',
+ 'ady' => 'ադիղերեն',
+ 'aeb' => 'թունիսական արաբերեն',
'af' => 'աֆրիկաանս',
'agq' => 'աղեմ',
- 'ak' => 'աքաներեն',
+ 'ain' => 'այներեն',
+ 'ak' => 'աքան',
+ 'akk' => 'աքքադերեն',
+ 'ale' => 'ալեութերեն',
+ 'alt' => 'հարավային ալթայերեն',
'am' => 'ամհարերեն',
+ 'an' => 'արագոներեն',
+ 'ang' => 'հին անգլերեն',
+ 'anp' => 'անգիկա',
'ar' => 'արաբերեն',
- 'ar-001' => 'ժամանակակից ստանդարտ արաբերեն',
+ 'ar-001' => 'արդի ընդհանուր արաբերեն',
+ 'arc' => 'արամեերեն',
'arn' => 'մապուչի',
+ 'arp' => 'արապահո',
+ 'arq' => 'ալժիրական արաբերեն',
+ 'arz' => 'եգիպտական արաբերեն',
'as' => 'ասամերեն',
'asa' => 'ասու',
+ 'ase' => 'ամերիկյան ժեստերի լեզու',
+ 'ast' => 'աստուրերեն',
+ 'av' => 'ավարերեն',
+ 'awa' => 'ավադհի',
+ 'ay' => 'այմարա',
'az' => 'ադրբեջաներեն',
'ba' => 'բաշկիրերեն',
+ 'ban' => 'բալիերեն',
+ 'bas' => 'բասաա',
'be' => 'բելառուսերեն',
'bem' => 'բեմբա',
'bez' => 'բենա',
'bg' => 'բուլղարերեն',
+ 'bgn' => 'արևմտաբելուջիերեն',
+ 'bho' => 'բհոպուրի',
+ 'bi' => 'բիսլամա',
+ 'bin' => 'բինի',
+ 'bla' => 'սիկսիկա',
'bm' => 'բամբարա',
'bn' => 'բենգալերեն',
'bo' => 'տիբեթերեն',
'br' => 'բրետոներեն',
'brx' => 'բոդո',
'bs' => 'բոսնիերեն',
+ 'bss' => 'աքուզ',
+ 'bug' => 'բուգիերեն',
+ 'byn' => 'բիլին',
'ca' => 'կատալաներեն',
+ 'ce' => 'չեչեներեն',
+ 'ceb' => 'սեբուերեն',
'cgg' => 'չիգա',
- 'chr' => 'շերոկի',
- 'ckb' => 'սորանի (քրդերեն)',
+ 'ch' => 'չամոռո',
+ 'chk' => 'տրուկերեն',
+ 'chm' => 'մարի',
+ 'cho' => 'չոկտո',
+ 'chr' => 'չերոկի',
+ 'chy' => 'շայեն',
+ 'ckb' => 'սորանի քրդերեն',
'co' => 'կորսիկերեն',
+ 'cop' => 'ղպտերեն',
+ 'crh' => 'ղրիմյան թուրքերեն',
+ 'crs' => 'սեյշելյան խառնակերտ ֆրանսերեն',
'cs' => 'չեխերեն',
+ 'cu' => 'եկեղեցական սլավոներեն',
+ 'cv' => 'չուվաշերեն',
'cy' => 'ուելսերեն',
'da' => 'դանիերեն',
+ 'dak' => 'դակոտա',
+ 'dar' => 'դարգիներեն',
'dav' => 'թաիթա',
'de' => 'գերմաներեն',
'de-at' => 'ավստրիական գերմաներեն',
- 'de-ch' => 'շվեյցարական բարձր գերմաներեն',
+ 'de-ch' => 'շվեյցարական վերին գերմաներեն',
+ 'dgr' => 'դոգրիբ',
'dje' => 'զարմա',
- 'dsb' => 'ստորին սորբիերեն',
+ 'dsb' => 'ստորին սորբերեն',
'dua' => 'դուալա',
+ 'dv' => 'մալդիվերեն',
'dyo' => 'ջոլա-ֆոնյի',
'dz' => 'ջոնգքհա',
+ 'dzg' => 'դազագա',
'ebu' => 'էմբու',
'ee' => 'էվե',
+ 'efi' => 'էֆիկ',
+ 'egy' => 'հին եգիպտերեն',
+ 'eka' => 'էկաջուկ',
'el' => 'հունարեն',
'en' => 'անգլերեն',
- 'en-au' => 'ավստրալական անգլերեն',
+ 'en-au' => 'ավստրալիական անգլերեն',
'en-ca' => 'կանադական անգլերեն',
'en-gb' => 'բրիտանական անգլերեն',
'en-us' => 'ամերիկյան անգլերեն',
'eo' => 'էսպերանտո',
'es' => 'իսպաներեն',
- 'es-419' => 'լատինաամերիկյան իսպաներեն',
+ 'es-419' => 'լատինամերիկյան իսպաներեն',
'es-es' => 'եվրոպական իսպաներեն',
'es-mx' => 'մեքսիկական իսպաներեն',
'et' => 'էստոներեն',
'eu' => 'բասկերեն',
+ 'ewo' => 'էվոնդո',
'fa' => 'պարսկերեն',
+ 'ff' => 'ֆուլահ',
'fi' => 'ֆիններեն',
'fil' => 'ֆիլիպիներեն',
+ 'fit' => 'տորնադելեն ֆիններեն',
'fj' => 'ֆիջիերեն',
'fo' => 'ֆարյորերեն',
+ 'fon' => 'ֆոն',
'fr' => 'ֆրանսերեն',
'fr-ca' => 'կանադական ֆրանսերեն',
'fr-ch' => 'շվեյցարական ֆրանսերեն',
- 'fy' => 'արևմտյան ֆրիզերեն',
+ 'fro' => 'հին ֆրանսերեն',
+ 'frs' => 'արևելաֆրիզերեն',
+ 'fur' => 'ֆրիուլիերեն',
+ 'fy' => 'արևմտաֆրիզերեն',
'ga' => 'իռլանդերեն',
+ 'gaa' => 'գայերեն',
'gag' => 'գագաուզերեն',
- 'gd' => 'Գաելյան Շոտլանդերեն',
+ 'gbz' => 'զրադաշտական դարի',
+ 'gd' => 'շոտլանդական գաելերեն',
+ 'gez' => 'գեեզ',
+ 'gil' => 'կիրիբատի',
'gl' => 'գալիսերեն',
'gn' => 'գուարանի',
+ 'goh' => 'հին վերին գերմաներեն',
+ 'gor' => 'գորոնտալո',
+ 'got' => 'գոթերեն',
+ 'grc' => 'հին հունարեն',
'gsw' => 'շվեյցարական գերմաներեն',
'gu' => 'գուջարաթի',
+ 'guc' => 'վայուու',
'guz' => 'գուսի',
'gv' => 'մեներեն',
+ 'gwi' => 'գվիչին',
'ha' => 'հաուսա',
'haw' => 'հավայիերեն',
'he' => 'եբրայերեն',
'hi' => 'հինդի',
+ 'hil' => 'հիլիգայնոն',
+ 'hmn' => 'հմոնգ',
'hr' => 'խորվաթերեն',
- 'hsb' => 'վերին սորբիերեն',
- 'ht' => 'հաիթերեն',
+ 'hsb' => 'վերին սորբերեն',
+ 'hsn' => 'սյան չինարեն',
+ 'ht' => 'խառնակերտ հայիթերեն',
'hu' => 'հունգարերեն',
+ 'hup' => 'հուպա',
'hy' => 'հայերեն',
- 'ia' => 'Ինտերլինգուա',
+ 'hz' => 'հերերո',
+ 'ia' => 'ինտերլինգուա',
+ 'iba' => 'իբաներեն',
+ 'ibb' => 'իբիբիո',
'id' => 'ինդոնեզերեն',
- 'ie' => 'Ինտերլինգ',
+ 'ie' => 'ինտերլինգուե',
'ig' => 'իգբո',
- 'ii' => 'սիխուան յի',
+ 'ii' => 'սիչուան',
+ 'ilo' => 'իլոկերեն',
+ 'inh' => 'ինգուշերեն',
+ 'io' => 'իդո',
'is' => 'իսլանդերեն',
'it' => 'իտալերեն',
'iu' => 'ինուկտիտուտ',
'ja' => 'ճապոներեն',
+ 'jbo' => 'լոժբան',
'jgo' => 'նգոմբա',
'jmc' => 'մաշամե',
'jv' => 'ճավայերեն',
'ka' => 'վրացերեն',
'kab' => 'կաբիլերեն',
+ 'kac' => 'կաչիներեն',
+ 'kaj' => 'ջյու',
'kam' => 'կամբա',
+ 'kbd' => 'կաբարդերեն',
+ 'kcg' => 'տիապ',
'kde' => 'մակոնդե',
- 'kea' => 'կուբավերդիանու',
+ 'kea' => 'կաբուվերդերեն',
+ 'kfo' => 'կորո',
+ 'kha' => 'քասիերեն',
'khq' => 'կոյրա չինի',
'ki' => 'կիկույու',
+ 'kj' => 'կուանյամա',
'kk' => 'ղազախերեն',
+ 'kkj' => 'կակո',
'kl' => 'կալաալիսուտ',
'kln' => 'կալենջին',
'km' => 'քմերերեն',
+ 'kmb' => 'կիմբունդու',
'kn' => 'կաննադա',
'ko' => 'կորեերեն',
- 'koi' => 'կոմի-պերմյակ',
+ 'koi' => 'պերմյակ կոմիերեն',
'kok' => 'կոնկանի',
+ 'kpe' => 'կպելլեերեն',
+ 'kr' => 'կանուրի',
+ 'krc' => 'կարաչայ-բալկարերեն',
+ 'krl' => 'կարելերեն',
+ 'kru' => 'կուրուխ',
'ks' => 'քաշմիրերեն',
'ksb' => 'շամբալա',
'ksf' => 'բաֆիա',
+ 'ksh' => 'քյոլներեն',
'ku' => 'քրդերեն',
+ 'kum' => 'կումիկերեն',
+ 'kv' => 'կոմիերեն',
'kw' => 'կոռներեն',
'ky' => 'ղրղզերեն',
'la' => 'լատիներեն',
+ 'lad' => 'լադինո',
'lag' => 'լանգի',
'lb' => 'լյուքսեմբուրգերեն',
+ 'lez' => 'լեզգիերեն',
'lg' => 'գանդա',
+ 'li' => 'լիմբուրգերեն',
'lkt' => 'լակոտա',
'ln' => 'լինգալա',
'lo' => 'լաոսերեն',
+ 'loz' => 'լոզի',
+ 'lrc' => 'հյուսիսային լուրիերեն',
'lt' => 'լիտվերեն',
'lu' => 'լուբա-կատանգա',
+ 'lua' => 'լուբա-լուլուա',
+ 'lun' => 'լունդա',
'luo' => 'լուո',
+ 'lus' => 'միզո',
'luy' => 'լույա',
'lv' => 'լատվիերեն',
+ 'mad' => 'մադուրերեն',
+ 'mag' => 'մագահի',
+ 'mai' => 'մայթիլի',
+ 'mak' => 'մակասարերեն',
'mas' => 'մասաի',
+ 'mdf' => 'մոկշայերեն',
+ 'men' => 'մենդե',
'mer' => 'մերու',
'mfe' => 'մորիսյեն',
- 'mg' => 'մալագասերեն',
+ 'mg' => 'մալգաշերեն',
'mgh' => 'մաքուա-մետտո',
'mgo' => 'մետա',
+ 'mh' => 'մարշալերեն',
'mi' => 'մաորի',
+ 'mic' => 'միկմակ',
+ 'min' => 'մինանգկաբաու',
'mk' => 'մակեդոներեն',
'ml' => 'մալայալամ',
'mn' => 'մոնղոլերեն',
+ 'mni' => 'մանիպուրի',
'moh' => 'մոհավք',
+ 'mos' => 'մոսսի',
'mr' => 'մարաթի',
+ 'mrj' => 'արևմտամարիերեն',
'ms' => 'մալայերեն',
- 'mt' => 'մալթերեն',
+ 'mt' => 'մալթայերեն',
'mua' => 'մունդանգ',
+ 'mul' => 'բազմալեզու',
+ 'mus' => 'կրիկ',
+ 'mwl' => 'միրանդերեն',
'my' => 'բիրմայերեն',
+ 'myv' => 'էրզյա',
+ 'mzn' => 'մազանդարաներեն',
+ 'na' => 'նաուրու',
+ 'nap' => 'նեապոլերեն',
'naq' => 'նամա',
- 'nb' => 'նորվեգերեն բուկմոլ',
+ 'nb' => 'գրքային նորվեգերեն',
'nd' => 'հյուսիսային նդեբելե',
+ 'nds-nl' => 'ստորին սաքսոներեն',
'ne' => 'նեպալերեն',
+ 'new' => 'նեվարերեն',
+ 'ng' => 'նդոնգա',
+ 'nia' => 'նիասերեն',
+ 'niu' => 'նիուերեն',
'nl' => 'հոլանդերեն',
'nl-be' => 'ֆլամանդերեն',
'nmg' => 'կվասիո',
- 'nn' => 'նորվեգերեն նյունորսկ',
- 'no' => 'Նորվեգերեն',
+ 'nn' => 'նոր նորվեգերեն',
+ 'nnh' => 'նգիեմբուն',
+ 'no' => 'նորվեգերեն',
+ 'nog' => 'նոգայերեն',
+ 'non' => 'հին նորվեգերեն',
'nqo' => 'նկո',
+ 'nr' => 'հարավային նդեբելե',
+ 'nso' => 'հյուսիսային սոթո',
'nus' => 'նուեր',
+ 'nv' => 'նավախո',
+ 'ny' => 'նյանջա',
'nyn' => 'նյանկոլե',
- 'oc' => 'Ակվիտաներեն',
+ 'oc' => 'օքսիտաներեն',
+ 'oj' => 'օջիբվա',
'om' => 'օրոմո',
'or' => 'օրիյա',
+ 'os' => 'օսերեն',
+ 'osa' => 'օսեյջ',
+ 'ota' => 'օսմաներեն',
'pa' => 'փենջաբերեն',
+ 'pag' => 'պանգասինաներեն',
+ 'pal' => 'պահլավերեն',
+ 'pam' => 'պամպանգաերեն',
+ 'pap' => 'պապյամենտո',
+ 'pau' => 'պալաուերեն',
+ 'pcd' => 'պիկարդերեն',
+ 'pcm' => 'նիգերյան կրեոլերեն',
+ 'pdc' => 'փենսիլվանական գերմաներեն',
+ 'pdt' => 'պլատագերմաներեն',
+ 'peo' => 'հին պարսկերեն',
+ 'pfl' => 'պալատինյան գերմաներեն',
+ 'phn' => 'փյունիկերեն',
+ 'pi' => 'պալի',
'pl' => 'լեհերեն',
+ 'pms' => 'պիեմոնտերեն',
+ 'pnt' => 'պոնտերեն',
+ 'pon' => 'պոնպեերեն',
+ 'prg' => 'պրուսերեն',
+ 'pro' => 'հին պրովանսերեն',
'ps' => 'փուշթու',
'pt' => 'պորտուգալերեն',
'pt-br' => 'բրազիլական պորտուգալերեն',
'pt-pt' => 'եվրոպական պորտուգալերեն',
- 'qu' => 'քեչուա',
- 'quc' => 'կիչե',
+ 'qu' => 'կեչուա',
+ 'quc' => 'քիչե',
+ 'raj' => 'ռաջաստաներեն',
+ 'rap' => 'ռապանուի',
+ 'rar' => 'ռարոտոնգաներեն',
+ 'rgn' => 'ռոմանիոլերեն',
+ 'rif' => 'ռիֆերեն',
'rm' => 'ռոմանշերեն',
'rn' => 'ռունդի',
'ro' => 'ռումիներեն',
'ro-md' => 'մոլդովերեն',
'rof' => 'ռոմբո',
+ 'rom' => 'ռոմաներեն',
+ 'rtm' => 'ռոտուման',
'ru' => 'ռուսերեն',
- 'rw' => 'քինյարվանդա',
+ 'rue' => 'ռուսիներեն',
+ 'rug' => 'ռովիանա',
+ 'rup' => 'արոմաներեն',
+ 'rw' => 'կինյառուանդա',
'rwk' => 'ռվա',
'sa' => 'սանսկրիտ',
+ 'sad' => 'սանդավե',
+ 'sah' => 'յակուտերեն',
'saq' => 'սամբուրու',
+ 'sat' => 'սանտալի',
+ 'sba' => 'նգամբայ',
'sbp' => 'սանգու',
+ 'sc' => 'սարդիներեն',
+ 'scn' => 'սիցիլիերեն',
+ 'sco' => 'շոտլանդերեն',
'sd' => 'սինդհի',
- 'se' => 'հյուսիսային սամի',
+ 'sdh' => 'հարավային քրդերեն',
+ 'se' => 'հյուսիսային սաամի',
'seh' => 'սենա',
'ses' => 'կոյրաբորո սեննի',
'sg' => 'սանգո',
- 'sh' => 'Սերբա-Խորվաթերեն',
+ 'sga' => 'հին իռլանդերեն',
+ 'sh' => 'սերբա-խորվաթերեն',
'shi' => 'տաշելհիթ',
+ 'shn' => 'շաներեն',
'si' => 'սինհալերեն',
'sk' => 'սլովակերեն',
'sl' => 'սլովեներեն',
- 'sma' => 'հարավային սամի',
- 'smj' => 'լուլե սամի',
- 'smn' => 'ինարի սամի',
- 'sms' => 'սկոլտ սամի',
+ 'sm' => 'սամոաերեն',
+ 'sma' => 'հարավային սաամի',
+ 'smj' => 'լուլե սաամի',
+ 'smn' => 'ինարի սաամի',
+ 'sms' => 'սկոլտ սաամի',
'sn' => 'շոնա',
+ 'snk' => 'սոնինկե',
'so' => 'սոմալիերեն',
'sq' => 'ալբաներեն',
'sr' => 'սերբերեն',
- 'st' => 'Սեսոտո',
+ 'srn' => 'սրանան տոնգո',
+ 'ss' => 'սվազերեն',
+ 'ssy' => 'սահոերեն',
+ 'st' => 'հարավային սոթո',
'su' => 'սունդաներեն',
+ 'suk' => 'սուկումա',
'sv' => 'շվեդերեն',
'sw' => 'սուահիլի',
- 'swc' => 'կոնգոյի սուահիլի',
+ 'sw-cd' => 'կոնգոյի սուահիլի',
+ 'swb' => 'կոմորերեն',
+ 'syr' => 'ասորերեն',
'ta' => 'թամիլերեն',
+ 'tcy' => 'տուլու',
'te' => 'թելուգու',
+ 'tem' => 'տեմնե',
'teo' => 'տեսո',
+ 'ter' => 'տերենո',
+ 'tet' => 'տետում',
'tg' => 'տաջիկերեն',
'th' => 'թայերեն',
- 'ti' => 'թիգրինիա',
+ 'ti' => 'տիգրինյա',
+ 'tig' => 'տիգրե',
+ 'tiv' => 'տիվերեն',
'tk' => 'թուրքմեներեն',
- 'tlh' => 'Կլինգոն',
- 'to' => 'տոնգա',
+ 'tkl' => 'տոկելաու',
+ 'tkr' => 'ցախուր',
+ 'tl' => 'տագալերեն',
+ 'tlh' => 'կլինգոն',
+ 'tli' => 'տլինգիտ',
+ 'tly' => 'թալիշերեն',
+ 'tmh' => 'տամաշեկ',
+ 'tn' => 'ցվանա',
+ 'to' => 'տոնգերեն',
+ 'tpi' => 'տոկ փիսին',
'tr' => 'թուրքերեն',
+ 'tru' => 'տուրոյո',
+ 'trv' => 'տարոկո',
+ 'ts' => 'ցոնգա',
+ 'tsd' => 'ցակոներեն',
+ 'tsi' => 'ցիմշյան',
'tt' => 'թաթարերեն',
- 'tw' => 'Տուի',
+ 'tum' => 'տումբուկա',
+ 'tvl' => 'թուվալուերեն',
+ 'tw' => 'տուի',
'twq' => 'տասավաք',
- 'tzm' => 'կենտրոնատլասյան թամազիխտ',
+ 'ty' => 'թաիտերեն',
+ 'tyv' => 'տուվերեն',
+ 'tzm' => 'կենտրոնատլասյան թամազիղտ',
+ 'udm' => 'ուդմուրտերեն',
'ug' => 'ույղուրերեն',
+ 'uga' => 'ուգարիտերեն',
'uk' => 'ուկրաիներեն',
+ 'umb' => 'ումբունդու',
'und' => 'անհայտ լեզու',
'ur' => 'ուրդու',
'uz' => 'ուզբեկերեն',
'vai' => 'վաի',
+ 've' => 'վենդա',
+ 'vec' => 'վենետերեն',
+ 'vep' => 'վեպսերեն',
'vi' => 'վիետնամերեն',
+ 'vls' => 'արևմտաֆլամանդերեն',
+ 'vo' => 'վոլապյուկ',
+ 'vot' => 'վոդերեն',
+ 'vro' => 'վորո',
'vun' => 'վունջո',
+ 'wa' => 'վալոներեն',
+ 'wae' => 'վալսերեն',
+ 'wal' => 'վոլայտա',
+ 'war' => 'վարայերեն',
+ 'was' => 'վաշո',
+ 'wbp' => 'վարլպիրի',
'wo' => 'վոլոֆ',
- 'xh' => 'քսոզա',
+ 'wuu' => 'վու չինարեն',
+ 'xal' => 'կալմիկերեն',
+ 'xh' => 'քոսա',
'xog' => 'սոգա',
- 'yi' => 'Իդիշ',
+ 'yao' => 'յաո',
+ 'yap' => 'յափերեն',
+ 'yav' => 'յանգբեն',
+ 'ybb' => 'եմբա',
+ 'yi' => 'իդիշ',
'yo' => 'յորուբա',
- 'zgh' => 'ստանդարտ մարոկական թամազիղտ',
+ 'yue' => 'կանտոներեն',
+ 'za' => 'ժուանգ',
+ 'zap' => 'սապոտեկերեն',
+ 'zea' => 'զեյլանդերեն',
+ 'zen' => 'զենագա',
+ 'zgh' => 'ընդհանուր մարոկյան թամազիղտ',
'zh' => 'չինարեն',
'zh-hans' => 'պարզեցված չինարեն',
'zh-hant' => 'ավանդական չինարեն',
- 'zu' => 'զուլուսերեն',
+ 'zu' => 'զուլուերեն',
+ 'zun' => 'զունիերեն',
'zxx' => 'առանց լեզվային բովանդակության',
-);
+ 'zza' => 'զազաերեն',
+];
-$currencyNames = array(
+$currencyNames = [
'AED' => 'Արաբական Միացյալ Էմիրությունների դիրհամ',
- 'AFN' => 'Աֆղանական աֆղանի',
- 'ALL' => 'Ալբանական լեկ',
- 'AMD' => 'Հայկական դրամ',
- 'ANG' => 'Նիդերլանդական Անտիլների գուլդեն',
- 'AOA' => 'Անգոլական կվանզա',
- 'ARS' => 'Արգենտինական պեսո',
- 'AUD' => 'Ավստրալական դոլար',
- 'AWG' => 'Արուբական ֆլորին',
- 'AZN' => 'Ադրբեջանական մանաթ',
- 'BAM' => 'Բոսնիա և Հերցեգովինայի փոխարկելի մարկա',
- 'BBD' => 'Բարբադոսյան դոլար',
+ 'AFN' => 'աֆղանական աֆղանի',
+ 'ALL' => 'ալբանական լեկ',
+ 'AMD' => 'հայկական դրամ',
+ 'ANG' => 'նիդեռլանդական անտիլյան գուլդեն',
+ 'AOA' => 'անգոլական կվանզա',
+ 'ARS' => 'արգենտինական պեսո',
+ 'AUD' => 'ավստրալիական դոլար',
+ 'AWG' => 'արուբական ֆլորին',
+ 'AZN' => 'ադրբեջանական մանաթ',
+ 'BAM' => 'Բոսնիա և Հերցեգովինայի փոխարկվող մարկ',
+ 'BBD' => 'բարբադոսյան դոլար',
'BDT' => 'Բանգլադեշի տակա',
- 'BGN' => 'Բուլղարական լև',
- 'BHD' => 'Բահրեյնական դինար',
- 'BIF' => 'Բուրունդիի ֆրանկ',
- 'BMD' => 'Բերմուդյան դոլար',
- 'BND' => 'Բրունեյական դոլար',
- 'BOB' => 'Բոլիվիական բոլիվիանո',
- 'BRL' => 'Բրազիլական ռեալ',
- 'BSD' => 'Բահամական դոլար',
- 'BTN' => 'Բութանական նգուլտրում',
- 'BWP' => 'Բոթսվանական պուլա',
- 'BYR' => 'Բելառուսական ռուբլի',
+ 'BGN' => 'բուլղարական լև',
+ 'BHD' => 'Բահրեյնի դինար',
+ 'BIF' => 'բուրունդիական ֆրանկ',
+ 'BMD' => 'բերմուդյան դոլար',
+ 'BND' => 'Բրունեյի դոլար',
+ 'BOB' => 'բոլիվիական բոլիվիանո',
+ 'BRL' => 'բրազիլական ռեալ',
+ 'BSD' => 'բահամյան դոլար',
+ 'BTN' => 'բութանական նգուլտրում',
+ 'BWP' => 'բոթսվանական պուլա',
+ 'BYN' => 'բելառուսական ռուբլի',
+ 'BYR' => 'Բելառուսական ռուբլի (2000–2016)',
'BZD' => 'Բելիզի դոլար',
- 'CAD' => 'Կանադական դոլար',
+ 'CAD' => 'կանադական դոլար',
'CDF' => 'Կոնգոյի ֆրանկ',
- 'CHF' => 'Շվեյցարական ֆրանկ',
- 'CLP' => 'Չիլիական պեսո',
- 'CNY' => 'Չինական յուան',
- 'COP' => 'Կոլումբիական պեսո',
+ 'CHF' => 'շվեյցարական ֆրանկ',
+ 'CLP' => 'չիլիական պեսո',
+ 'CNH' => 'CNH',
+ 'CNY' => 'չինական յուան',
+ 'COP' => 'կոլումբիական պեսո',
'CRC' => 'Կոստա Ռիկայի կոլոն',
- 'CUC' => 'Կուբական փոխարկելի պեսո',
- 'CUP' => 'Կուբական պեսո',
+ 'CUC' => 'կուբայական փոխարկվող պեսո',
+ 'CUP' => 'կուբայական պեսո',
'CVE' => 'Կաբո Վերդեի էսկուդո',
- 'CZK' => 'Չեխական կրոնա',
+ 'CZK' => 'չեխական կրոն',
'DJF' => 'Ջիբութիի ֆրանկ',
- 'DKK' => 'Դանիական կրոնա',
- 'DOP' => 'Դոմինիկական պեսո',
- 'DZD' => 'Ալժիրական դինար',
- 'EGP' => 'Եգիպտական ֆունտ',
- 'ERN' => 'Էրիթրեական նակֆա',
- 'ETB' => 'Եթովպական բիր',
- 'EUR' => 'Եվրո',
- 'FJD' => 'Ֆիջիական դոլար',
- 'FKP' => 'Ֆոլկլենդյան կղզիներ ֆունտ',
- 'GBP' => 'Բրիտանական ֆունտ',
- 'GEL' => 'Վրացական լարի',
- 'GHS' => 'Գանական սեդի',
+ 'DKK' => 'դանիական կրոն',
+ 'DOP' => 'դոմինիկյան պեսո',
+ 'DZD' => 'ալժիրական դինար',
+ 'EGP' => 'եգիպտական ֆունտ',
+ 'ERN' => 'էրիթրեական նակվա',
+ 'ETB' => 'եթովպիական բիր',
+ 'EUR' => 'եվրո',
+ 'FJD' => 'ֆիջիական դոլար',
+ 'FKP' => 'Ֆոլքլենդյան կղզիների ֆունտ',
+ 'GBP' => 'բրիտանական ֆունտ ստերլինգ',
+ 'GEL' => 'վրացական լարի',
+ 'GHS' => 'գայանական սեդի',
'GIP' => 'Ջիբրալթարի ֆունտ',
- 'GMD' => 'Գամբիական դալասի',
- 'GNF' => 'Գվինեական ֆրանկ',
- 'GTQ' => 'Գվատեմալական կետսալ',
- 'GYD' => 'Գայանական դոլար',
+ 'GMD' => 'գամբիական դալասի',
+ 'GNF' => 'գվինեական ֆրանկ',
+ 'GTQ' => 'գվատեմալական կետսալ',
+ 'GYD' => 'գայանական դոլար',
'HKD' => 'Հոնկոնգի դոլար',
- 'HNL' => 'Հոնդուրասական լեմպրիա',
- 'HRK' => 'Խորվաթական կունա',
- 'HTG' => 'Հաիթյան գուրդ',
- 'HUF' => 'Հունգարական ֆորինտ',
- 'IDR' => 'Ինդոնեզական ռուփի',
+ 'HNL' => 'հոնդուրասական լեմպիրա',
+ 'HRK' => 'խորվաթական կունա',
+ 'HTG' => 'հայիթյան գուրդ',
+ 'HUF' => 'հունգարական ֆորինտ',
+ 'IDR' => 'ինդոնեզիական ռուփի',
'ILS' => 'Իսրայելի նոր շեկել',
- 'INR' => 'Հնդկական ռուփի',
- 'IQD' => 'Իրաքյան դինար',
- 'IRR' => 'Իրանական ռիալ',
- 'ISK' => 'Իսլանդական կրոնա',
- 'JMD' => 'Ջամայկական դոլար',
- 'JOD' => 'Հորդանանական դինար',
- 'JPY' => 'Ճապոնական իեն',
- 'KES' => 'Քենիական շիլինգ',
- 'KGS' => 'Ղրղզական սոմ',
- 'KHR' => 'Կամբոջական ռիել',
- 'KMF' => 'Կոմորյան կղզիների ֆրանկ',
- 'KPW' => 'ԿԺԴՀ-ի վոնա',
- 'KRW' => 'Հարավկորեական վոնա',
- 'KWD' => 'Քուվեյթական դինար',
+ 'INR' => 'հնդկական ռուփի',
+ 'IQD' => 'իրաքյան դինար',
+ 'IRR' => 'իրանական ռիալ',
+ 'ISK' => 'իսլանդական կրոն',
+ 'JMD' => 'Ճամայկայի դոլար',
+ 'JOD' => 'հորդանանյան դինար',
+ 'JPY' => 'ճապոնական իեն',
+ 'KES' => 'քենիական շիլինգ',
+ 'KGS' => 'ղրղզական սոմ',
+ 'KHR' => 'կամբոջական ռիել',
+ 'KMF' => 'կոմորյան ֆրանկ',
+ 'KPW' => 'հյուսիսկորեական վոն',
+ 'KRW' => 'հարավկորեական վոն',
+ 'KWD' => 'Քուվեյթի դինար',
'KYD' => 'Կայմանյան կղզիների դոլար',
- 'KZT' => 'Ղազախական տենգե',
- 'LAK' => 'Լաոսական կիպ',
- 'LBP' => 'Լիբանանական ֆունտ',
- 'LKR' => 'Լանկիական ռուփի',
- 'LRD' => 'Լիբերիական դոլար',
+ 'KZT' => 'ղազախական տենգե',
+ 'LAK' => 'լաոսական կիպ',
+ 'LBP' => 'լիբանանյան ֆունտ',
+ 'LKR' => 'Շրի Լանկայի ռուփի',
+ 'LRD' => 'լիբերիական դոլար',
'LTL' => 'Լիտվական լիտ',
'LVL' => 'Լատվիական լատ',
- 'LYD' => 'Լիբիական դինար',
- 'MAD' => 'Մարոկական դիրհամ',
- 'MDL' => 'Մոլդովական լեյ',
+ 'LYD' => 'լիբիական դինար',
+ 'MAD' => 'Մարոկկոյի դիրհամ',
+ 'MDL' => 'մոլդովական լեյ',
'MGA' => 'Մադագասկարի արիարի',
- 'MKD' => 'Մակեդոնական դենար',
- 'MMK' => 'Մյանմական կյատ',
- 'MNT' => 'Մոնղոլական տուգրիկ',
+ 'MKD' => 'մակեդոնական դենար',
+ 'MMK' => 'Մյանմայի կյատ',
+ 'MNT' => 'մոնղոլական տուգրիկ',
'MOP' => 'Մակաոյի պատակա',
- 'MRO' => 'Մավրիտանական ուգիյա',
- 'MUR' => 'Մավրիկական ռուփի',
- 'MVR' => 'Մալդիվյան ռուֆիա',
- 'MWK' => 'Մալավիական կվաչա',
- 'MXN' => 'Մեքսիկական պեսո',
- 'MYR' => 'Մալայզիական ռինգիտ',
- 'MZN' => 'Մոզամբիկյան մետիկալ',
- 'NAD' => 'Նամիբիական դոլար',
- 'NGN' => 'Նիգերիական նայրա',
- 'NIO' => 'Նիկարագուական կորդոբա',
- 'NOK' => 'Նորվեգական կրոնա',
- 'NPR' => 'Նեպալական ռուփի',
- 'NZD' => 'Նորզելանդական դոլար',
- 'OMR' => 'Օմանական ռիալ',
- 'PAB' => 'Պանամական բալբոա',
- 'PEN' => 'Պերուի նոր սոլ',
- 'PGK' => 'Պապուա-Նոր Գվինեայի կինա',
- 'PHP' => 'Ֆիլիպինական պեսո',
- 'PKR' => 'Պակիստանական ռուփի',
- 'PLN' => 'Լեհական զլոտի',
- 'PYG' => 'Պարագվայական գուարանի',
- 'QAR' => 'Քաթարական ռիալ',
- 'RON' => 'Ռումինական լեյ',
- 'RSD' => 'Սերբական դինար',
- 'RUB' => 'Ռուսական ռուբլի',
- 'RWF' => 'Ռուանդական ֆրանկ',
+ 'MRO' => 'մավրիտանական ուգիյա (1973–2017)',
+ 'MRU' => 'մավրիտանական ուգիյա',
+ 'MUR' => 'մավրիկյան ռուփի',
+ 'MVR' => 'մալդիվյան ռուֆիյա',
+ 'MWK' => 'մալավիական կվաչա',
+ 'MXN' => 'մեքսիկական պեսո',
+ 'MYR' => 'մալայզիական ռինգիտ',
+ 'MZN' => 'մոզամբիկյան մետիկալ',
+ 'NAD' => 'նամիբիական դոլար',
+ 'NGN' => 'նիգերիական նայրա',
+ 'NIO' => 'նիկարագուական կորդոբա',
+ 'NOK' => 'նորվեգական կրոն',
+ 'NPR' => 'Նեպալի ռուփի',
+ 'NZD' => 'նորզելանդական դոլար',
+ 'OMR' => 'Օմանի ռիալ',
+ 'PAB' => 'պանամական բալբոա',
+ 'PEN' => 'Պերուի սոլ',
+ 'PGK' => 'Պապուա Նոր Գվինեայի կինա',
+ 'PHP' => 'ֆիլիպինյան պեսո',
+ 'PKR' => 'պակիստանյան ռուփի',
+ 'PLN' => 'լեհական զլոտի',
+ 'PYG' => 'պարագվայական գուարանի',
+ 'QAR' => 'Կատարի ռիալ',
+ 'RON' => 'ռումինական լեյ',
+ 'RSD' => 'սերբական դինար',
+ 'RUB' => 'ռուսական ռուբլի',
+ 'RWF' => 'ռուանդական ֆրանկ',
'SAR' => 'Սաուդյան Արաբիայի ռիալ',
'SBD' => 'Սողոմոնյան կղզիների դոլար',
- 'SCR' => 'Սեյշելյան կղզիների ռուփի',
- 'SDG' => 'Սուդանական ֆունտ',
- 'SEK' => 'Շվեդական կրոնա',
- 'SGD' => 'Սինգապուրյան դոլար',
- 'SHP' => 'Սուրբ Հեղինեի կղզու ֆունտ',
- 'SLL' => 'Սիերա-Լեոնեի լեոնե',
- 'SOS' => 'Սոմալիական շիլինգ',
- 'SRD' => 'Սուրինամական դոլար',
- 'SSP' => 'Հարավսուդանական ֆունտ',
- 'STD' => 'Սան Տոմե և Պրինսիպիի դոբրա',
- 'SYP' => 'Սիրիական ֆունտ',
- 'SZL' => 'Սվազիլենդական լիլանգենի',
- 'THB' => 'Թաիլանդական բատ',
- 'TJS' => 'Տաջիկական սոմոնի',
- 'TMT' => 'Թուրքմենական մանաթ',
- 'TND' => 'Թունիսական դինար',
+ 'SCR' => 'սեյշելյան ռուփի',
+ 'SDG' => 'սուդանական ֆունտ',
+ 'SEK' => 'շվեդական կրոն',
+ 'SGD' => 'Սինգապուրի դոլար',
+ 'SHP' => 'Սուրբ Հեղինեի ֆունտ',
+ 'SLL' => 'Սիեռա Լեոնեի լեոնե',
+ 'SOS' => 'սոմալիական շիլինգ',
+ 'SRD' => 'սուրինամական դոլար',
+ 'SSP' => 'հարավսուդանական ֆունտ',
+ 'STD' => 'Սան Տոմե և Փրինսիպիի դոբրա (1977–2017)',
+ 'STN' => 'Սան Տոմե և Փրինսիպիի դոբրա',
+ 'SYP' => 'սիրիական ֆունտ',
+ 'SZL' => 'սվազիլենդական լիլանգենի',
+ 'THB' => 'թայլանդական բատ',
+ 'TJS' => 'տաջիկական սոմոնի',
+ 'TMT' => 'թուրքմենական մանաթ',
+ 'TND' => 'թունիսյան դինար',
'TOP' => 'Տոնգայի պաանգա',
- 'TRY' => 'Թուրքական լիրա',
+ 'TRY' => 'թուրքական լիրա',
'TTD' => 'Տրինիդադ և Տոբագոյի դոլար',
- 'TWD' => 'Թայվանական նոր դոլար',
- 'TZS' => 'Տանզանիական շիլինգ',
- 'UAH' => 'Ուկրաինական գրիվնա',
- 'UGX' => 'Ուգանդական շիլինգ',
+ 'TWD' => 'թայվանական նոր դոլար',
+ 'TZS' => 'տանզանիական շիլինգ',
+ 'UAH' => 'ուկրաինական գրիվնա',
+ 'UGX' => 'ուգանդական շիլինգ',
'USD' => 'ԱՄՆ դոլար',
- 'UYU' => 'Ուրուգվայական պեսո',
- 'UZS' => 'Ուզբեկական սում',
- 'VEF' => 'Վենեսուելական բոլիվար',
- 'VND' => 'Վիետնամական դոնգ',
+ 'UYU' => 'ուրուգվայական պեսո',
+ 'UZS' => 'ուզբեկական սոմ',
+ 'VEF' => 'վենեսուելական բոլիվար (2008–2018)',
+ 'VES' => 'վենեսուելական բոլիվար',
+ 'VND' => 'վիետնամական դոնգ',
'VUV' => 'Վանուատուի վատու',
- 'WST' => 'Սամոական տալա',
- 'XAF' => 'Աֆրիկական ֆինանսական համայնքի ֆրանկ BEAC',
- 'XCD' => 'Արևելակարիբյան դոլար',
- 'XOF' => 'Աֆրիկական ֆինանսական համայնքի ֆրանկ BCEAO',
+ 'WST' => 'սամոական տալա',
+ 'XAF' => 'Կենտրոնական Աֆրիկայի ԿՖԱ ֆրանկ',
+ 'XCD' => 'արևելակարիբյան դոլար',
+ 'XOF' => 'Արևմտյան Աֆրիկայի ԿՖԱ ֆրանկ',
'XPF' => 'ԿՊՖ ֆրանկ',
- 'XXX' => 'Անհայտ արժույթ',
- 'YER' => 'Եմենական ռիալ',
- 'ZAR' => 'Հարավաֆրիկական ռենդ',
+ 'XXX' => 'անհայտ արժույթ',
+ 'YER' => 'եմենական ռիալ',
+ 'ZAR' => 'հարավաֆրիկյան ռանդ',
'ZMK' => 'Զամբիական կվաչա (1968–2012)',
- 'ZMW' => 'Զամբիական կվաչա',
-);
+ 'ZMW' => 'զամբիական կվաչա',
+];
-$currencySymbols = array(
+$currencySymbols = [
'AED' => 'AED',
'AFN' => 'AFN',
'ALL' => 'ALL',
@@ -420,12 +663,14 @@ $currencySymbols = array(
'BSD' => 'BSD',
'BTN' => 'BTN',
'BWP' => 'BWP',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CA$',
'CDF' => 'CDF',
'CHF' => 'CHF',
'CLP' => 'CLP',
+ 'CNH' => 'CNH',
'CNY' => 'CN¥',
'COP' => 'COP',
'CRC' => 'CRC',
@@ -526,6 +771,7 @@ $currencySymbols = array(
'SRD' => 'SRD',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'STN',
'SYP' => 'SYP',
'SZL' => 'SZL',
'THB' => '฿',
@@ -552,16 +798,17 @@ $currencySymbols = array(
'XPF' => 'CFPF',
'YER' => 'YER',
'ZAR' => 'ZAR',
+ 'ZMK' => 'ZMK',
'ZMW' => 'ZMW',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'Համբարձման կղզի',
- 'AD' => 'Անդորա',
- 'AE' => 'Միացյալ Արաբական Էմիրություններ',
+ 'AD' => 'Անդորրա',
+ 'AE' => 'Արաբական Միացյալ Էմիրություններ',
'AF' => 'Աֆղանստան',
'AG' => 'Անտիգուա և Բարբուդա',
- 'AI' => 'Անգիլիա',
+ 'AI' => 'Անգուիլա',
'AL' => 'Ալբանիա',
'AM' => 'Հայաստան',
'AO' => 'Անգոլա',
@@ -582,16 +829,16 @@ $countryNames = array(
'BH' => 'Բահրեյն',
'BI' => 'Բուրունդի',
'BJ' => 'Բենին',
- 'BL' => 'Սուրբ Բարթողոմեոսի կղզի',
- 'BM' => 'Բերմուդյան կղզիներ',
+ 'BL' => 'Սուրբ Բարդուղիմեոս',
+ 'BM' => 'Բերմուդներ',
'BN' => 'Բրունեյ',
'BO' => 'Բոլիվիա',
- 'BQ' => 'Կարիբյան Նիդերլանդներ',
+ 'BQ' => 'Կարիբյան Նիդեռլանդներ',
'BR' => 'Բրազիլիա',
'BS' => 'Բահամյան կղզիներ',
'BT' => 'Բութան',
'BV' => 'Բուվե կղզի',
- 'BW' => 'Բոտսվանա',
+ 'BW' => 'Բոթսվանա',
'BY' => 'Բելառուս',
'BZ' => 'Բելիզ',
'CA' => 'Կանադա',
@@ -600,23 +847,23 @@ $countryNames = array(
'CF' => 'Կենտրոնական Աֆրիկյան Հանրապետություն',
'CG' => 'Կոնգո - Բրազավիլ',
'CH' => 'Շվեյցարիա',
- 'CI' => 'Փղոսկրի Ափ',
+ 'CI' => 'Կոտ դ’Իվուար',
'CK' => 'Կուկի կղզիներ',
'CL' => 'Չիլի',
'CM' => 'Կամերուն',
'CN' => 'Չինաստան',
'CO' => 'Կոլումբիա',
'CP' => 'Քլիփերթոն կղզի',
- 'CR' => 'Կոստա-Ռիկա',
+ 'CR' => 'Կոստա Ռիկա',
'CU' => 'Կուբա',
'CV' => 'Կաբո Վերդե',
'CW' => 'Կյուրասաո',
- 'CX' => 'Ծննդյան կղզի',
+ 'CX' => 'Սուրբ Ծննդյան կղզի',
'CY' => 'Կիպրոս',
'CZ' => 'Չեխիա',
'DE' => 'Գերմանիա',
'DG' => 'Դիեգո Գարսիա',
- 'DJ' => 'Ջիբուտի',
+ 'DJ' => 'Ջիբութի',
'DK' => 'Դանիա',
'DM' => 'Դոմինիկա',
'DO' => 'Դոմինիկյան Հանրապետություն',
@@ -626,18 +873,19 @@ $countryNames = array(
'EE' => 'Էստոնիա',
'EG' => 'Եգիպտոս',
'EH' => 'Արևմտյան Սահարա',
- 'ER' => 'Էրիտրեա',
+ 'ER' => 'Էրիթրեա',
'ES' => 'Իսպանիա',
'ET' => 'Եթովպիա',
'EU' => 'Եվրոպական Միություն',
+ 'EZ' => 'Եվրագոտի',
'FI' => 'Ֆինլանդիա',
'FJ' => 'Ֆիջի',
- 'FK' => 'Ֆոլկլենդյան կղզիներ',
+ 'FK' => 'Ֆոլքլենդյան կղզիներ',
'FM' => 'Միկրոնեզիա',
'FO' => 'Ֆարերյան կղզիներ',
'FR' => 'Ֆրանսիա',
'GA' => 'Գաբոն',
- 'GB' => 'Միացյալ Թագավորություն',
+ 'GB' => 'ՄԹ',
'GD' => 'Գրենադա',
'GE' => 'Վրաստան',
'GF' => 'Ֆրանսիական Գվիանա',
@@ -659,7 +907,7 @@ $countryNames = array(
'HM' => 'Հերդ կղզի և ՄակԴոնալդի կղզիներ',
'HN' => 'Հոնդուրաս',
'HR' => 'Խորվաթիա',
- 'HT' => 'Հաիթի',
+ 'HT' => 'Հայիթի',
'HU' => 'Հունգարիա',
'IC' => 'Կանարյան կղզիներ',
'ID' => 'Ինդոնեզիա',
@@ -667,13 +915,13 @@ $countryNames = array(
'IL' => 'Իսրայել',
'IM' => 'Մեն կղզի',
'IN' => 'Հնդկաստան',
- 'IO' => 'Հնդկական Օվկիանոսում Բրիտանական Տարածք',
+ 'IO' => 'Բրիտանական Տարածք Հնդկական Օվկիանոսում',
'IQ' => 'Իրաք',
'IR' => 'Իրան',
'IS' => 'Իսլանդիա',
'IT' => 'Իտալիա',
'JE' => 'Ջերսի',
- 'JM' => 'Ջամայկա',
+ 'JM' => 'Ճամայկա',
'JO' => 'Հորդանան',
'JP' => 'Ճապոնիա',
'KE' => 'Քենիա',
@@ -681,7 +929,7 @@ $countryNames = array(
'KH' => 'Կամբոջա',
'KI' => 'Կիրիբատի',
'KM' => 'Կոմորյան կղզիներ',
- 'KN' => 'Սենթ Քիթս և Նևիս',
+ 'KN' => 'Սենթ Քիտս և Նևիս',
'KP' => 'Հյուսիսային Կորեա',
'KR' => 'Հարավային Կորեա',
'KW' => 'Քուվեյթ',
@@ -698,7 +946,7 @@ $countryNames = array(
'LU' => 'Լյուքսեմբուրգ',
'LV' => 'Լատվիա',
'LY' => 'Լիբիա',
- 'MA' => 'Մարոկո',
+ 'MA' => 'Մարոկկո',
'MC' => 'Մոնակո',
'MD' => 'Մոլդովա',
'ME' => 'Չեռնոգորիա',
@@ -713,7 +961,7 @@ $countryNames = array(
'MP' => 'Հյուսիսային Մարիանյան կղզիներ',
'MQ' => 'Մարտինիկա',
'MR' => 'Մավրիտանիա',
- 'MS' => 'Մոնտսերատ',
+ 'MS' => 'Մոնսեռատ',
'MT' => 'Մալթա',
'MU' => 'Մավրիկիոս',
'MV' => 'Մալդիվներ',
@@ -727,7 +975,7 @@ $countryNames = array(
'NF' => 'Նորֆոլկ կղզի',
'NG' => 'Նիգերիա',
'NI' => 'Նիկարագուա',
- 'NL' => 'Նիդերլանդեր',
+ 'NL' => 'Նիդեռլանդներ',
'NO' => 'Նորվեգիա',
'NP' => 'Նեպալ',
'NR' => 'Նաուրու',
@@ -741,7 +989,7 @@ $countryNames = array(
'PH' => 'Ֆիլիպիններ',
'PK' => 'Պակիստան',
'PL' => 'Լեհաստան',
- 'PM' => 'Սեն Պիեր և Միկելոն',
+ 'PM' => 'Սեն Պիեռ և Միքելոն',
'PN' => 'Պիտկեռն կղզիներ',
'PR' => 'Պուերտո Ռիկո',
'PS' => 'Պաղեստին',
@@ -757,34 +1005,34 @@ $countryNames = array(
'RW' => 'Ռուանդա',
'SA' => 'Սաուդյան Արաբիա',
'SB' => 'Սողոմոնյան կղզիներ',
- 'SC' => 'Սեյշելյան կղզիներ',
+ 'SC' => 'Սեյշելներ',
'SD' => 'Սուդան',
'SE' => 'Շվեդիա',
'SG' => 'Սինգապուր',
'SH' => 'Սուրբ Հեղինեի կղզի',
'SI' => 'Սլովենիա',
- 'SJ' => 'Սվալբարդ և Յան-Մայեն',
+ 'SJ' => 'Սվալբարդ և Յան Մայեն',
'SK' => 'Սլովակիա',
- 'SL' => 'Սյերա-Լեոնե',
+ 'SL' => 'Սիեռա Լեոնե',
'SM' => 'Սան Մարինո',
'SN' => 'Սենեգալ',
'SO' => 'Սոմալի',
'SR' => 'Սուրինամ',
'SS' => 'Հարավային Սուդան',
- 'ST' => 'Սան Տոմե և Պրինսիպի',
+ 'ST' => 'Սան Տոմե և Փրինսիպի',
'SV' => 'Սալվադոր',
'SX' => 'Սինտ Մարտեն',
'SY' => 'Սիրիա',
'SZ' => 'Սվազիլենդ',
'TA' => 'Տրիստան դա Կունյա',
- 'TC' => 'Տերկս և Կայկոս կղզիներ',
+ 'TC' => 'Թըրքս և Կայկոս կղզիներ',
'TD' => 'Չադ',
'TF' => 'Ֆրանսիական Հարավային Տարածքներ',
'TG' => 'Տոգո',
- 'TH' => 'Թաիլանդ',
+ 'TH' => 'Թայլանդ',
'TJ' => 'Տաջիկստան',
'TK' => 'Տոկելաու',
- 'TL' => 'Թիմոր-Լեստե',
+ 'TL' => 'Թիմոր Լեշտի',
'TM' => 'Թուրքմենստան',
'TN' => 'Թունիս',
'TO' => 'Տոնգա',
@@ -796,14 +1044,15 @@ $countryNames = array(
'UA' => 'Ուկրաինա',
'UG' => 'Ուգանդա',
'UM' => 'Արտաքին կղզիներ (ԱՄՆ)',
+ 'UN' => 'ՄԱԿ',
'US' => 'ԱՄՆ',
'UY' => 'Ուրուգվայ',
'UZ' => 'Ուզբեկստան',
- 'VA' => 'Վատիկան քաղաք-պետություն',
- 'VC' => 'Սենթ Վիսենտ և Գրենադիններ',
+ 'VA' => 'Վատիկան',
+ 'VC' => 'Սենթ Վինսենթ և Գրենադիններ',
'VE' => 'Վենեսուելա',
'VG' => 'Բրիտանական Վիրջինյան կղզիներ',
- 'VI' => 'Ամերիկյան Վիրջինյան կղզիներ',
+ 'VI' => 'ԱՄՆ Վիրջինյան կղզիներ',
'VN' => 'Վիետնամ',
'VU' => 'Վանուատու',
'WF' => 'Ուոլիս և Ֆուտունա',
@@ -814,11 +1063,13 @@ $countryNames = array(
'ZA' => 'Հարավաֆրիկյան Հանրապետություն',
'ZM' => 'Զամբիա',
'ZW' => 'Զիմբաբվե',
-);
+];
-$timeUnits = array(
- 'day-future-one' => '{0} օր անց',
- 'day-future-other' => '{0} օր անց',
+$timeUnits = [
+ 'century-one' => '{0} դար',
+ 'century-other' => '{0} դար',
+ 'day-future-one' => '{0} օրից',
+ 'day-future-other' => '{0} օրից',
'day-narrow-future-one' => '{0} օրից',
'day-narrow-future-other' => '{0} օրից',
'day-narrow-past-one' => '{0} օր առաջ',
@@ -831,8 +1082,20 @@ $timeUnits = array(
'day-short-future-other' => '{0} օրից',
'day-short-past-one' => '{0} օր առաջ',
'day-short-past-other' => '{0} օր առաջ',
- 'hour-future-one' => '{0} ժամ անց',
- 'hour-future-other' => '{0} ժամ անց',
+ 'fri-future-one' => '{0} ուրբաթ հետո',
+ 'fri-future-other' => '{0} ուրբաթ հետո',
+ 'fri-narrow-future-one' => '{0} ուրբ հետո',
+ 'fri-narrow-future-other' => '{0} ուրբ հետո',
+ 'fri-narrow-past-one' => '{0} ուրբ առաջ',
+ 'fri-narrow-past-other' => '{0} ուրբ առաջ',
+ 'fri-past-one' => '{0} ուրբաթ առաջ',
+ 'fri-past-other' => '{0} ուրբաթ առաջ',
+ 'fri-short-future-one' => '{0} ուրբ հետո',
+ 'fri-short-future-other' => '{0} ուրբ հետո',
+ 'fri-short-past-one' => '{0} ուրբ առաջ',
+ 'fri-short-past-other' => '{0} ուրբ առաջ',
+ 'hour-future-one' => '{0} ժամից',
+ 'hour-future-other' => '{0} ժամից',
'hour-narrow-future-one' => '{0} ժ-ից',
'hour-narrow-future-other' => '{0} ժ-ից',
'hour-narrow-past-one' => '{0} ժ առաջ',
@@ -849,8 +1112,8 @@ $timeUnits = array(
'microsecond-other' => '{0} միկրովայրկյան',
'millisecond-one' => '{0} միլիվայրկյան',
'millisecond-other' => '{0} միլիվայրկյան',
- 'minute-future-one' => '{0} րոպե անց',
- 'minute-future-other' => '{0} րոպե անց',
+ 'minute-future-one' => '{0} րոպեից',
+ 'minute-future-other' => '{0} րոպեից',
'minute-narrow-future-one' => '{0} ր-ից',
'minute-narrow-future-other' => '{0} ր-ից',
'minute-narrow-past-one' => '{0} ր առաջ',
@@ -863,40 +1126,64 @@ $timeUnits = array(
'minute-short-future-other' => '{0} ր-ից',
'minute-short-past-one' => '{0} ր առաջ',
'minute-short-past-other' => '{0} ր առաջ',
- 'month-future-one' => '{0} ամիս անց',
- 'month-future-other' => '{0} ամիս անց',
- 'month-narrow-future-one' => '{0} ամիս անց',
- 'month-narrow-future-other' => '{0} ամիս անց',
+ 'mon-future-one' => '{0} երկուշաբթի հետո',
+ 'mon-future-other' => '{0} երկուշաբթի հետո',
+ 'mon-narrow-future-one' => '{0} երկ հետո',
+ 'mon-narrow-future-other' => '{0} երկ հետո',
+ 'mon-narrow-past-one' => '{0} երկ առաջ',
+ 'mon-narrow-past-other' => '{0} երկ առաջ',
+ 'mon-past-one' => '{0} երկուշաբթի առաջ',
+ 'mon-past-other' => '{0} երկուշաբթի առաջ',
+ 'mon-short-future-one' => '{0} երկ հետո',
+ 'mon-short-future-other' => '{0} երկ հետո',
+ 'mon-short-past-one' => '{0} երկ առաջ',
+ 'mon-short-past-other' => '{0} երկ առաջ',
+ 'month-future-one' => '{0} ամսից',
+ 'month-future-other' => '{0} ամսից',
+ 'month-narrow-future-one' => '{0} ամսից',
+ 'month-narrow-future-other' => '{0} ամսից',
'month-narrow-past-one' => '{0} ամիս առաջ',
'month-narrow-past-other' => '{0} ամիս առաջ',
'month-one' => '{0} ամիս',
'month-other' => '{0} ամիս',
'month-past-one' => '{0} ամիս առաջ',
'month-past-other' => '{0} ամիս առաջ',
- 'month-short-future-one' => '{0} ամիս անց',
- 'month-short-future-other' => '{0} ամիս անց',
+ 'month-short-future-one' => '{0} ամսից',
+ 'month-short-future-other' => '{0} ամսից',
'month-short-past-one' => '{0} ամիս առաջ',
'month-short-past-other' => '{0} ամիս առաջ',
'nanosecond-one' => '{0} նանովայրկյան',
'nanosecond-other' => '{0} նանովայրկյան',
- 'quarter-future-one' => '{0} եռամսյակ անց',
- 'quarter-future-other' => '{0} եռամսյակ անց',
- 'quarter-narrow-future-one' => '{0} եռմս. անց',
- 'quarter-narrow-future-other' => '{0} եռմս. անց',
- 'quarter-narrow-past-one' => '{0} եռմս. առաջ',
- 'quarter-narrow-past-other' => '{0} եռմս. առաջ',
+ 'quarter-future-one' => '{0} եռամսյակից',
+ 'quarter-future-other' => '{0} եռամսյակից',
+ 'quarter-narrow-future-one' => '{0} եռմս-ից',
+ 'quarter-narrow-future-other' => '{0} եռմս-ից',
+ 'quarter-narrow-past-one' => '{0} եռմս առաջ',
+ 'quarter-narrow-past-other' => '{0} եռմս առաջ',
'quarter-past-one' => '{0} եռամսյակ առաջ',
'quarter-past-other' => '{0} եռամսյակ առաջ',
- 'quarter-short-future-one' => '{0} եռմս. անց',
- 'quarter-short-future-other' => '{0} եռմս. անց',
- 'quarter-short-past-one' => '{0} եռմս. առաջ',
- 'quarter-short-past-other' => '{0} եռմս. առաջ',
- 'second-future-one' => '{0} վայրկյան անց',
- 'second-future-other' => '{0} վայրկյան անց',
- 'second-narrow-future-one' => '{0} վրկ-ից',
- 'second-narrow-future-other' => '{0} վրկ-ից',
- 'second-narrow-past-one' => '{0} վրկ առաջ',
- 'second-narrow-past-other' => '{0} վրկ առաջ',
+ 'quarter-short-future-one' => '{0} եռմս-ից',
+ 'quarter-short-future-other' => '{0} եռմս-ից',
+ 'quarter-short-past-one' => '{0} եռմս առաջ',
+ 'quarter-short-past-other' => '{0} եռմս առաջ',
+ 'sat-future-one' => '{0} շաբաթ օր հետո',
+ 'sat-future-other' => '{0} շաբաթ օր հետո',
+ 'sat-narrow-future-one' => '{0} շբթ հետո',
+ 'sat-narrow-future-other' => '{0} շբթ հետո',
+ 'sat-narrow-past-one' => '{0} շբթ առաջ',
+ 'sat-narrow-past-other' => '{0} շբթ առաջ',
+ 'sat-past-one' => '{0} շաբաթ օր առաջ',
+ 'sat-past-other' => '{0} շաբաթ օր առաջ',
+ 'sat-short-future-one' => '{0} շբթ հետո',
+ 'sat-short-future-other' => '{0} շբթ հետո',
+ 'sat-short-past-one' => '{0} շբթ առաջ',
+ 'sat-short-past-other' => '{0} շբթ առաջ',
+ 'second-future-one' => '{0} վայրկյանից',
+ 'second-future-other' => '{0} վայրկյանից',
+ 'second-narrow-future-one' => '{0} վ-ից',
+ 'second-narrow-future-other' => '{0} վ-ից',
+ 'second-narrow-past-one' => '{0} վ առաջ',
+ 'second-narrow-past-other' => '{0} վ առաջ',
'second-one' => '{0} վայրկյան',
'second-other' => '{0} վայրկյան',
'second-past-one' => '{0} վայրկյան առաջ',
@@ -905,32 +1192,80 @@ $timeUnits = array(
'second-short-future-other' => '{0} վրկ-ից',
'second-short-past-one' => '{0} վրկ առաջ',
'second-short-past-other' => '{0} վրկ առաջ',
- 'week-future-one' => '{0} շաբաթ անց',
- 'week-future-other' => '{0} շաբաթ անց',
- 'week-narrow-future-one' => '{0} շբթ. անց',
- 'week-narrow-future-other' => '{0} շբթ. անց',
- 'week-narrow-past-one' => '{0} շբթ. առաջ',
- 'week-narrow-past-other' => '{0} շբթ. առաջ',
+ 'sun-future-one' => '{0} կիրակի հետո',
+ 'sun-future-other' => '{0} կիրակի հետո',
+ 'sun-narrow-future-one' => '{0} կիր հետո',
+ 'sun-narrow-future-other' => '{0} կիր հետո',
+ 'sun-narrow-past-one' => '{0} կիր առաջ',
+ 'sun-narrow-past-other' => '{0} կիր առաջ',
+ 'sun-past-one' => '{0} կիրակի առաջ',
+ 'sun-past-other' => '{0} կիրակի առաջ',
+ 'sun-short-future-one' => '{0} կիր հետո',
+ 'sun-short-future-other' => '{0} կիր հետո',
+ 'sun-short-past-one' => '{0} կիր առաջ',
+ 'sun-short-past-other' => '{0} կիր առաջ',
+ 'thu-future-one' => '{0} հինգշաբթի հետո',
+ 'thu-future-other' => '{0} հինգշաբթի հետո',
+ 'thu-narrow-future-one' => '{0} հնգ հետո',
+ 'thu-narrow-future-other' => '{0} հնգ հետո',
+ 'thu-narrow-past-one' => '{0} հնգ առաջ',
+ 'thu-narrow-past-other' => '{0} հնգ առաջ',
+ 'thu-past-one' => '{0} հինգշաբթի առաջ',
+ 'thu-past-other' => '{0} հինգշաբթի առաջ',
+ 'thu-short-future-one' => '{0} հնգ հետո',
+ 'thu-short-future-other' => '{0} հնգ հետո',
+ 'thu-short-past-one' => '{0} հնգ առաջ',
+ 'thu-short-past-other' => '{0} հնգ առաջ',
+ 'tue-future-one' => '{0} երեքշաբթի հետո',
+ 'tue-future-other' => '{0} երեքշաբթի հետո',
+ 'tue-narrow-future-one' => '{0} երք հետո',
+ 'tue-narrow-future-other' => '{0} երք հետո',
+ 'tue-narrow-past-one' => '{0} երք առաջ',
+ 'tue-narrow-past-other' => '{0} երք առաջ',
+ 'tue-past-one' => '{0} երեքշաբթի առաջ',
+ 'tue-past-other' => '{0} երեքշաբթի առաջ',
+ 'tue-short-future-one' => '{0} երք հետո',
+ 'tue-short-future-other' => '{0} երք հետո',
+ 'tue-short-past-one' => '{0} երք առաջ',
+ 'tue-short-past-other' => '{0} երք առաջ',
+ 'wed-future-one' => '{0} չորեքշաբթի հետո',
+ 'wed-future-other' => '{0} չորեքշաբթի հետո',
+ 'wed-narrow-future-one' => '{0} չրք հետո',
+ 'wed-narrow-future-other' => '{0} չրք հետո',
+ 'wed-narrow-past-one' => '{0} չրք առաջ',
+ 'wed-narrow-past-other' => '{0} չրք առաջ',
+ 'wed-past-one' => '{0} չորեքշաբթի առաջ',
+ 'wed-past-other' => '{0} չորեքշաբթի առաջ',
+ 'wed-short-future-one' => '{0} չրք հետո',
+ 'wed-short-future-other' => '{0} չրք հետո',
+ 'wed-short-past-one' => '{0} չրք առաջ',
+ 'wed-short-past-other' => '{0} չրք առաջ',
+ 'week-future-one' => '{0} շաբաթից',
+ 'week-future-other' => '{0} շաբաթից',
+ 'week-narrow-future-one' => '{0} շաբ անց',
+ 'week-narrow-future-other' => '{0} շաբ անց',
+ 'week-narrow-past-one' => '{0} շաբ առաջ',
+ 'week-narrow-past-other' => '{0} շաբ առաջ',
'week-one' => '{0} շաբաթ',
'week-other' => '{0} շաբաթ',
'week-past-one' => '{0} շաբաթ առաջ',
'week-past-other' => '{0} շաբաթ առաջ',
- 'week-short-future-one' => '{0} շբթ. անց',
- 'week-short-future-other' => '{0} շբթ. անց',
- 'week-short-past-one' => '{0} շբթ. առաջ',
- 'week-short-past-other' => '{0} շբթ. առաջ',
- 'year-future-one' => '{0} տարի անց',
- 'year-future-other' => '{0} տարի անց',
- 'year-narrow-future-one' => '{0} տ. անց',
- 'year-narrow-future-other' => '{0} տ. անց',
- 'year-narrow-past-one' => '{0} տ. առաջ',
- 'year-narrow-past-other' => '{0} տ. առաջ',
+ 'week-short-future-one' => '{0} շաբ-ից',
+ 'week-short-future-other' => '{0} շաբ-ից',
+ 'week-short-past-one' => '{0} շաբ առաջ',
+ 'week-short-past-other' => '{0} շաբ առաջ',
+ 'year-future-one' => '{0} տարուց',
+ 'year-future-other' => '{0} տարուց',
+ 'year-narrow-future-one' => '{0} տարուց',
+ 'year-narrow-future-other' => '{0} տարուց',
+ 'year-narrow-past-one' => '{0} տ առաջ',
+ 'year-narrow-past-other' => '{0} տ առաջ',
'year-one' => '{0} տարի',
'year-other' => '{0} տարի',
'year-past-one' => '{0} տարի առաջ',
'year-past-other' => '{0} տարի առաջ',
- 'year-short-future-one' => '{0} տ. անց',
- 'year-short-future-other' => '{0} տ. անց',
- 'year-short-past-one' => '{0} տ. առաջ',
- 'year-short-past-other' => '{0} տ. առաջ',
-);
+ 'year-short-future-one' => '{0} տարուց',
+ 'year-short-future-other' => '{0} տարուց',
+ 'year-short-past-one' => '{0} տ առաջ',
+ 'year-short-past-other' => '{0} տ առաջ',
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesIa.php b/MLEB/cldr/CldrNames/CldrNamesIa.php
index bd198134..a6a4bc3e 100644
--- a/MLEB/cldr/CldrNames/CldrNamesIa.php
+++ b/MLEB/cldr/CldrNames/CldrNamesIa.php
@@ -1,140 +1,540 @@
<?php
-$languageNames = array(
+$languageNames = [
+ 'aa' => 'afar',
+ 'ab' => 'abkhazo',
+ 'ace' => 'acehnese',
+ 'ada' => 'adangme',
+ 'ady' => 'adygeano',
'af' => 'afrikaans',
+ 'agq' => 'aghem',
+ 'ain' => 'ainu',
+ 'ak' => 'akan',
+ 'ale' => 'aleuto',
+ 'alt' => 'altai del sud',
'am' => 'amharico',
+ 'an' => 'aragonese',
+ 'anp' => 'angika',
'ar' => 'arabe',
- 'as' => 'Assamese',
- 'az' => 'azerbaidzhani',
+ 'ar-001' => 'arabe standard moderne',
+ 'arn' => 'mapuche',
+ 'arp' => 'arapaho',
+ 'as' => 'assamese',
+ 'asa' => 'asu',
+ 'ast' => 'asturiano',
+ 'av' => 'avaro',
+ 'awa' => 'awadhi',
+ 'ay' => 'aymara',
+ 'az' => 'azerbaidzhano',
+ 'ba' => 'bashkir',
+ 'ban' => 'balinese',
+ 'bas' => 'basaa',
'be' => 'bielorusso',
+ 'bem' => 'bemba',
+ 'bez' => 'bena',
'bg' => 'bulgaro',
- 'bn' => 'bengali',
+ 'bho' => 'bhojpuri',
+ 'bi' => 'bislama',
+ 'bin' => 'bini',
+ 'bla' => 'siksika',
+ 'bm' => 'bambara',
+ 'bn' => 'bengalese',
+ 'bo' => 'tibetano',
'br' => 'breton',
+ 'brx' => 'bodo',
'bs' => 'bosniaco',
+ 'bug' => 'buginese',
+ 'byn' => 'blin',
'ca' => 'catalano',
+ 'ce' => 'checheno',
+ 'ceb' => 'cebuano',
+ 'cgg' => 'chiga',
+ 'ch' => 'chamorro',
+ 'chk' => 'chuukese',
+ 'chm' => 'mari',
+ 'cho' => 'choctaw',
+ 'chr' => 'cherokee',
+ 'chy' => 'cheyenne',
+ 'ckb' => 'kurdo central',
+ 'co' => 'corso',
+ 'crs' => 'creolo seychellese',
'cs' => 'checo',
+ 'cu' => 'slavo ecclesiastic',
+ 'cv' => 'chuvash',
'cy' => 'gallese',
'da' => 'danese',
+ 'dak' => 'dakota',
+ 'dar' => 'dargwa',
+ 'dav' => 'taita',
'de' => 'germano',
+ 'de-at' => 'germano austriac',
+ 'de-ch' => 'alte germano suisse',
+ 'dgr' => 'dogrib',
+ 'dje' => 'zarma',
+ 'dsb' => 'basse sorabo',
+ 'dua' => 'duala',
+ 'dv' => 'divehi',
+ 'dyo' => 'jola-fonyi',
+ 'dz' => 'dzongkha',
+ 'dzg' => 'dazaga',
+ 'ebu' => 'embu',
+ 'ee' => 'ewe',
+ 'efi' => 'efik',
+ 'eka' => 'ekajuk',
'el' => 'greco',
'en' => 'anglese',
- 'en-gb' => 'anglese (RU)',
- 'en-us' => 'anglese (SUA)',
+ 'en-au' => 'anglese australian',
+ 'en-ca' => 'anglese canadian',
+ 'en-gb' => 'anglese britannic',
+ 'en-us' => 'anglese american',
'eo' => 'esperanto',
'es' => 'espaniol',
+ 'es-419' => 'espaniol latinoamerican',
+ 'es-es' => 'espaniol europee',
+ 'es-mx' => 'espaniol mexican',
'et' => 'estoniano',
'eu' => 'basco',
- 'fa' => 'persiano',
+ 'ewo' => 'ewondo',
+ 'fa' => 'persa',
+ 'ff' => 'fula',
'fi' => 'finnese',
- 'fil' => 'tagalog',
- 'fo' => 'faroese',
+ 'fil' => 'filipino',
+ 'fj' => 'fijiano',
+ 'fo' => 'feroese',
+ 'fon' => 'fon',
'fr' => 'francese',
- 'fy' => 'frisiano',
+ 'fr-ca' => 'francese canadian',
+ 'fr-ch' => 'francese suisse',
+ 'fur' => 'friulano',
+ 'fy' => 'frison occidental',
'ga' => 'irlandese',
- 'gd' => 'scoto gaelic',
- 'gl' => 'gallego',
+ 'gaa' => 'ga',
+ 'gd' => 'gaelico scotese',
+ 'gez' => 'ge’ez',
+ 'gil' => 'gilbertese',
+ 'gl' => 'galleco',
'gn' => 'guarani',
+ 'gor' => 'gorontalo',
+ 'gsw' => 'germano suisse',
'gu' => 'gujarati',
+ 'guz' => 'gusii',
+ 'gv' => 'mannese',
+ 'gwi' => 'gwich’in',
+ 'ha' => 'hausa',
+ 'haw' => 'hawaiano',
'he' => 'hebreo',
'hi' => 'hindi',
+ 'hil' => 'hiligaynon',
+ 'hmn' => 'hmong',
'hr' => 'croato',
+ 'hsb' => 'alte sorabo',
+ 'ht' => 'creolo haitian',
'hu' => 'hungaro',
+ 'hup' => 'hupa',
'hy' => 'armeniano',
+ 'hz' => 'herero',
'ia' => 'interlingua',
+ 'iba' => 'iban',
+ 'ibb' => 'ibibio',
'id' => 'indonesiano',
'ie' => 'Interlingue',
+ 'ig' => 'igbo',
+ 'ii' => 'yi de Sichuan',
+ 'ilo' => 'ilocano',
+ 'inh' => 'ingush',
+ 'io' => 'ido',
'is' => 'islandese',
'it' => 'italiano',
+ 'iu' => 'inuktitut',
'ja' => 'japonese',
+ 'jbo' => 'lojban',
+ 'jgo' => 'ngomba',
+ 'jmc' => 'machame',
'jv' => 'javanese',
'ka' => 'georgiano',
- 'km' => 'Cambodiano',
+ 'kab' => 'kabylo',
+ 'kac' => 'kachin',
+ 'kaj' => 'jju',
+ 'kam' => 'kamba',
+ 'kbd' => 'cabardiano',
+ 'kcg' => 'tyap',
+ 'kde' => 'makonde',
+ 'kea' => 'capoverdiano',
+ 'kfo' => 'koro',
+ 'kha' => 'khasi',
+ 'khq' => 'koyra chiini',
+ 'ki' => 'kikuyu',
+ 'kj' => 'kuanyama',
+ 'kk' => 'kazakh',
+ 'kkj' => 'kako',
+ 'kl' => 'groenlandese',
+ 'kln' => 'kalenjin',
+ 'km' => 'khmer',
+ 'kmb' => 'kimbundu',
'kn' => 'kannada',
'ko' => 'coreano',
+ 'kok' => 'konkani',
+ 'kpe' => 'kpelle',
+ 'kr' => 'kanuri',
+ 'krc' => 'karachay-balkaro',
+ 'krl' => 'careliano',
+ 'kru' => 'kurukh',
+ 'ks' => 'kashmiri',
+ 'ksb' => 'shambala',
+ 'ksf' => 'bafia',
+ 'ksh' => 'coloniese',
'ku' => 'kurdo',
+ 'kum' => 'kumyko',
+ 'kv' => 'komi',
+ 'kw' => 'cornico',
'ky' => 'kirghizo',
'la' => 'latino',
+ 'lad' => 'ladino',
+ 'lag' => 'langi',
+ 'lb' => 'luxemburgese',
+ 'lez' => 'lezghiano',
+ 'lg' => 'luganda',
+ 'li' => 'limburgese',
+ 'lkt' => 'lakota',
'ln' => 'lingala',
'lo' => 'laotiano',
+ 'loz' => 'lozi',
+ 'lrc' => 'luri del nord',
'lt' => 'lithuano',
+ 'lu' => 'luba-katanga',
+ 'lua' => 'luba-lulua',
+ 'lun' => 'lunda',
+ 'luo' => 'luo',
+ 'lus' => 'mizo',
+ 'luy' => 'luyia',
'lv' => 'letton',
+ 'mad' => 'madurese',
+ 'mag' => 'magahi',
+ 'mai' => 'maithili',
+ 'mak' => 'macassarese',
+ 'mas' => 'masai',
+ 'mdf' => 'moksha',
+ 'men' => 'mende',
+ 'mer' => 'meri',
+ 'mfe' => 'creolo mauritian',
+ 'mg' => 'malgache',
+ 'mgh' => 'makhuwa-meetto',
+ 'mgo' => 'metaʼ',
+ 'mh' => 'marshallese',
+ 'mi' => 'maori',
+ 'mic' => 'micmac',
+ 'min' => 'minangkabau',
'mk' => 'macedone',
'ml' => 'malayalam',
- 'mn' => 'mongolico',
+ 'mn' => 'mongol',
+ 'mni' => 'manipuri',
+ 'moh' => 'mohawk',
+ 'mos' => 'mossi',
'mr' => 'marathi',
'ms' => 'malay',
'mt' => 'maltese',
+ 'mua' => 'mundang',
+ 'mul' => 'plure linguas',
+ 'mus' => 'creek',
+ 'mwl' => 'mirandese',
+ 'my' => 'birmano',
+ 'myv' => 'erzya',
+ 'mzn' => 'mazanderani',
+ 'na' => 'nauru',
+ 'nap' => 'napolitano',
+ 'naq' => 'nama',
+ 'nb' => 'norvegiano bokmål',
+ 'nd' => 'ndebele del nord',
'ne' => 'nepalese',
+ 'new' => 'newari',
+ 'ng' => 'ndonga',
+ 'nia' => 'nias',
+ 'niu' => 'nieuano',
'nl' => 'nederlandese',
- 'nn' => 'norvegiano (nynorsk)',
+ 'nl-be' => 'flamingo',
+ 'nmg' => 'kwasio',
+ 'nn' => 'norvegiano nynorsk',
+ 'nnh' => 'ngiemboon',
'no' => 'norvegiano',
+ 'nog' => 'nogai',
+ 'nqo' => 'n’ko',
+ 'nr' => 'ndebele del sud',
+ 'nso' => 'sotho del nord',
+ 'nus' => 'nuer',
+ 'nv' => 'navajo',
+ 'ny' => 'nyanja',
+ 'nyn' => 'nyankole',
'oc' => 'occitano',
+ 'om' => 'oromo',
'or' => 'oriya',
+ 'os' => 'osseto',
'pa' => 'punjabi',
+ 'pag' => 'pangasinan',
+ 'pam' => 'pampanga',
+ 'pap' => 'papiamento',
+ 'pau' => 'palauano',
+ 'pcm' => 'pidgin nigerian',
'pl' => 'polonese',
+ 'prg' => 'prussiano',
'ps' => 'pashto',
'pt' => 'portugese',
+ 'pt-br' => 'portugese de Brasil',
+ 'pt-pt' => 'portugese de Portugal',
+ 'qu' => 'quechua',
+ 'quc' => 'kʼicheʼ',
+ 'rap' => 'rapanui',
+ 'rar' => 'rarotongano',
+ 'rm' => 'romanche',
+ 'rn' => 'rundi',
'ro' => 'romaniano',
+ 'ro-md' => 'moldavo',
+ 'rof' => 'rombo',
'ru' => 'russo',
+ 'rup' => 'aromaniano',
+ 'rw' => 'kinyarwanda',
+ 'rwk' => 'rwa',
'sa' => 'sanscrito',
+ 'sad' => 'sandawe',
+ 'sah' => 'yakuto',
+ 'saq' => 'samburu',
+ 'sat' => 'santali',
+ 'sba' => 'ngambay',
+ 'sbp' => 'sangu',
+ 'sc' => 'sardo',
+ 'scn' => 'siciliano',
+ 'sco' => 'scotese',
'sd' => 'sindhi',
+ 'se' => 'sami del nord',
+ 'seh' => 'sena',
+ 'ses' => 'koyraboro senni',
+ 'sg' => 'sango',
'sh' => 'serbocroate',
- 'si' => 'sinhalese',
+ 'shi' => 'tachelhit',
+ 'shn' => 'shan',
+ 'si' => 'cingalese',
'sk' => 'slovaco',
'sl' => 'sloveno',
+ 'sm' => 'samoano',
+ 'sma' => 'sami del sud',
+ 'smj' => 'sami de Lule',
+ 'smn' => 'sami de Inari',
+ 'sms' => 'sami skolt',
+ 'sn' => 'shona',
+ 'snk' => 'soninke',
'so' => 'somali',
'sq' => 'albanese',
'sr' => 'serbo',
- 'st' => 'sesotho',
+ 'srn' => 'sranan tongo',
+ 'ss' => 'swati',
+ 'ssy' => 'saho',
+ 'st' => 'sotho del sud',
'su' => 'sundanese',
+ 'suk' => 'sukuma',
'sv' => 'svedese',
'sw' => 'swahili',
+ 'sw-cd' => 'swahili del Congo',
+ 'swb' => 'comoriano',
+ 'syr' => 'syriaco',
'ta' => 'tamil',
'te' => 'telugu',
+ 'tem' => 'temne',
+ 'teo' => 'teso',
+ 'tet' => 'tetum',
+ 'tg' => 'tajiko',
'th' => 'thai',
'ti' => 'tigrinya',
+ 'tig' => 'tigre',
'tk' => 'turkmeno',
- 'tlh' => 'Klingon',
+ 'tlh' => 'klingon',
+ 'tn' => 'tswana',
+ 'to' => 'tongano',
+ 'tpi' => 'tok pisin',
'tr' => 'turco',
+ 'trv' => 'taroko',
+ 'ts' => 'tsonga',
+ 'tt' => 'tataro',
+ 'tum' => 'tumbuka',
+ 'tvl' => 'tuvaluano',
'tw' => 'twi',
- 'ug' => 'Uyghur',
+ 'twq' => 'tasawaq',
+ 'ty' => 'tahitiano',
+ 'tyv' => 'tuvano',
+ 'tzm' => 'tamazight del Atlas Central',
+ 'udm' => 'udmurto',
+ 'ug' => 'uighur',
'uk' => 'ukrainiano',
+ 'umb' => 'umbundu',
+ 'und' => 'lingua incognite',
'ur' => 'urdu',
- 'uz' => 'uzbeco',
+ 'uz' => 'uzbeko',
+ 'vai' => 'vai',
+ 've' => 'venda',
'vi' => 'vietnamese',
+ 'vo' => 'volapük',
+ 'vun' => 'vunjo',
+ 'wa' => 'wallon',
+ 'wae' => 'walser',
+ 'wal' => 'wolaytta',
+ 'war' => 'waray',
+ 'wo' => 'wolof',
+ 'xal' => 'calmuco',
'xh' => 'xhosa',
+ 'xog' => 'soga',
+ 'yav' => 'yangben',
+ 'ybb' => 'yemba',
'yi' => 'yiddish',
+ 'yo' => 'yoruba',
+ 'yue' => 'cantonese',
+ 'zgh' => 'tamazight marocchin standard',
+ 'zh' => 'chinese',
+ 'zh-hans' => 'chinese simplificate',
+ 'zh-hant' => 'chinese traditional',
'zu' => 'zulu',
-);
+ 'zun' => 'zuni',
+ 'zxx' => 'sin contento linguistic',
+ 'zza' => 'zaza',
+];
-$currencyNames = array(
- 'AUD' => 'Dollares australian',
- 'CAD' => 'Dollares canadian',
- 'CHF' => 'Francos suisse',
- 'DEM' => 'Marcos german',
- 'DKK' => 'Coronas danese',
- 'EUR' => 'Euros',
- 'FRF' => 'francos francese',
- 'GBP' => 'Libras sterling britannic',
- 'JPY' => 'Yen japonese',
- 'NOK' => 'Coronas norvegian',
- 'SEK' => 'Coronas svedese',
- 'USD' => 'Dollares statounitese',
-);
+$currencyNames = [
+ 'ALL' => 'lek albanese',
+ 'ANG' => 'florino antillan',
+ 'AOA' => 'kwanza angolan',
+ 'ARS' => 'peso argentin',
+ 'AUD' => 'dollar australian',
+ 'AWG' => 'florino aruban',
+ 'BAM' => 'marco convertibile de Bosnia-Herzegovina',
+ 'BBD' => 'dollar barbadian',
+ 'BGN' => 'lev bulgare',
+ 'BIF' => 'franco burundese',
+ 'BMD' => 'dollar bermudan',
+ 'BOB' => 'boliviano bolivian',
+ 'BRL' => 'real brasilian',
+ 'BSD' => 'dollar bahamian',
+ 'BWP' => 'pula botswanese',
+ 'BYN' => 'rublo bielorusse',
+ 'BZD' => 'dollar belizan',
+ 'CAD' => 'dollar canadian',
+ 'CDF' => 'franco congolese',
+ 'CHF' => 'franco suisse',
+ 'CLP' => 'peso chilen',
+ 'CNY' => 'yuan chinese',
+ 'COP' => 'peso colombian',
+ 'CRC' => 'colon costarican',
+ 'CUC' => 'peso cuban convertibile',
+ 'CUP' => 'peso cuban',
+ 'CVE' => 'escudo capoverdian',
+ 'CZK' => 'corona chec',
+ 'DEM' => 'Marco geman',
+ 'DJF' => 'franco djibutian',
+ 'DKK' => 'corona danese',
+ 'DOP' => 'peso dominican',
+ 'DZD' => 'dinar algerin',
+ 'EEK' => 'Corona estonian',
+ 'EGP' => 'libra egyptie',
+ 'ERN' => 'nakfa eritree',
+ 'ETB' => 'birr ethiope',
+ 'EUR' => 'euro',
+ 'FIM' => 'Marco finnese',
+ 'FJD' => 'dollar fijian',
+ 'FKP' => 'libra falklandese',
+ 'FRF' => 'Franco francese',
+ 'GBP' => 'libra sterling',
+ 'GHS' => 'cedi ghanese',
+ 'GIP' => 'libra de Gibraltar',
+ 'GMD' => 'dalasi gambian',
+ 'GNF' => 'franco guinean',
+ 'GTQ' => 'quetzal guatemaltec',
+ 'GYD' => 'dollar guyanese',
+ 'HNL' => 'lempira hondurese',
+ 'HRK' => 'kuna croate',
+ 'HTG' => 'gourde haitian',
+ 'HUF' => 'forint hungare',
+ 'IEP' => 'Libra irlandese',
+ 'INR' => 'rupia indian',
+ 'ISK' => 'corona islandese',
+ 'JMD' => 'dollar jamaican',
+ 'JPY' => 'yen japonese',
+ 'KES' => 'shilling kenyan',
+ 'KMF' => 'franco comorian',
+ 'KYD' => 'dollar del Insulas Caiman',
+ 'LRD' => 'dollar liberian',
+ 'LYD' => 'dinar libyc',
+ 'MAD' => 'dirham marocchin',
+ 'MDL' => 'leu moldave',
+ 'MGA' => 'ariary malgache',
+ 'MKD' => 'denar macedonie',
+ 'MRO' => 'ouguiya mauritan (1973–2017)',
+ 'MRU' => 'ouguiya mauritan',
+ 'MUR' => 'rupia mauritian',
+ 'MWK' => 'kwacha malawian',
+ 'MXN' => 'peso mexican',
+ 'MZN' => 'metical mozambican',
+ 'NAD' => 'dollar namibian',
+ 'NGN' => 'naira nigerian',
+ 'NIO' => 'cordoba nicaraguan',
+ 'NLG' => 'Florino nederlandese',
+ 'NOK' => 'corona norvegian',
+ 'NZD' => 'dollar neozelandese',
+ 'PAB' => 'balboa panamen',
+ 'PEN' => 'sol peruvian',
+ 'PGK' => 'kina papuan',
+ 'PLN' => 'zloty polonese',
+ 'PYG' => 'guarani paraguayan',
+ 'RON' => 'leu romanian',
+ 'RSD' => 'dinar serbe',
+ 'RUB' => 'rublo russe',
+ 'RWF' => 'franco ruandese',
+ 'SBD' => 'dollar del insulas Salomon',
+ 'SCR' => 'rupia seychellese',
+ 'SDG' => 'libra sudanese',
+ 'SEK' => 'corona svedese',
+ 'SHP' => 'libra de St. Helena',
+ 'SLL' => 'leone sierraleonese',
+ 'SOS' => 'shilling somali',
+ 'SRD' => 'dollar surinamese',
+ 'SSP' => 'libra sud-sudanese',
+ 'STN' => 'dobra de São Tomé e Príncipe',
+ 'SZL' => 'lilangeni swazilandese',
+ 'TND' => 'dinar tunisian',
+ 'TOP' => 'paʻanga tongan',
+ 'TTD' => 'dollar de Trinidad e Tobago',
+ 'TZS' => 'shilling tanzanian',
+ 'UAH' => 'hryvnia ukrainian',
+ 'UGX' => 'shilling ugandese',
+ 'USD' => 'dollar statounitese',
+ 'UYU' => 'peso uruguayan',
+ 'VEF' => 'bolivar venezuelan (2008–2018)',
+ 'VES' => 'bolivar venezuelan',
+ 'VUV' => 'vatu vanuatuan',
+ 'WST' => 'tala samoan',
+ 'XAF' => 'franco CFA de Africa Central',
+ 'XCD' => 'dollar del Caribes Oriental',
+ 'XOF' => 'franco CFA de Africa Occidental',
+ 'XPF' => 'franco CFP',
+ 'XXX' => 'moneta incognite',
+ 'ZAR' => 'rand sudafrican',
+ 'ZMW' => 'kwacha zambian',
+];
-$countryNames = array(
+$currencySymbols = [
+ 'NLG' => 'ƒ',
+ 'RUB' => '₽',
+];
+
+$countryNames = [
+ 'AD' => 'Andorra',
'AE' => 'Emiratos Arabe Unite',
'AF' => 'Afghanistan',
'AG' => 'Antigua e Barbuda',
'AL' => 'Albania',
'AM' => 'Armenia',
- 'AN' => 'Antillas nederlandese',
'AO' => 'Angola',
'AQ' => 'Antarctica',
'AR' => 'Argentina',
'AS' => 'Samoa american',
'AT' => 'Austria',
'AU' => 'Australia',
+ 'AX' => 'Insulas Åland',
'AZ' => 'Azerbaidzhan',
'BA' => 'Bosnia e Herzegovina',
'BD' => 'Bangladesh',
@@ -143,6 +543,7 @@ $countryNames = array(
'BG' => 'Bulgaria',
'BI' => 'Burundi',
'BJ' => 'Benin',
+ 'BM' => 'Bermuda',
'BO' => 'Bolivia',
'BR' => 'Brasil',
'BS' => 'Bahamas',
@@ -150,6 +551,7 @@ $countryNames = array(
'BV' => 'Insula de Bouvet',
'BW' => 'Botswana',
'BY' => 'Bielorussia',
+ 'BZ' => 'Belize',
'CA' => 'Canada',
'CF' => 'Republica African Central',
'CG' => 'Congo',
@@ -159,10 +561,11 @@ $countryNames = array(
'CM' => 'Camerun',
'CN' => 'China',
'CO' => 'Colombia',
+ 'CR' => 'Costa Rica',
'CU' => 'Cuba',
'CX' => 'Insula de Natal',
'CY' => 'Cypro',
- 'CZ' => 'Republica Tchec',
+ 'CZ' => 'Chechia',
'DE' => 'Germania',
'DK' => 'Danmark',
'DO' => 'Republica Dominican',
@@ -174,20 +577,25 @@ $countryNames = array(
'ER' => 'Eritrea',
'ES' => 'Espania',
'ET' => 'Ethiopia',
+ 'EU' => 'Union Europee',
+ 'EZ' => 'Zona euro',
'FI' => 'Finlandia',
'FM' => 'Micronesia',
'FO' => 'Insulas Feroe',
'FR' => 'Francia',
'GA' => 'Gabon',
- 'GB' => 'Regno Unite',
+ 'GB' => 'GB',
'GE' => 'Georgia',
'GF' => 'Guyana francese',
+ 'GG' => 'Guernsey',
'GH' => 'Ghana',
+ 'GI' => 'Gibraltar',
'GL' => 'Groenlandia',
'GM' => 'Gambia',
'GN' => 'Guinea',
'GQ' => 'Guinea equatorial',
'GR' => 'Grecia',
+ 'GT' => 'Guatemala',
'GW' => 'Guinea-Bissau',
'HN' => 'Honduras',
'HR' => 'Croatia',
@@ -196,12 +604,14 @@ $countryNames = array(
'ID' => 'Indonesia',
'IE' => 'Irlanda',
'IL' => 'Israel',
+ 'IM' => 'Insula de Man',
'IN' => 'India',
'IO' => 'Territorio oceanic britanno-indian',
'IQ' => 'Irak',
'IR' => 'Iran',
'IS' => 'Islanda',
'IT' => 'Italia',
+ 'JE' => 'Jersey',
'JO' => 'Jordania',
'JP' => 'Japon',
'KE' => 'Kenya',
@@ -221,10 +631,13 @@ $countryNames = array(
'LR' => 'Liberia',
'LS' => 'Lesotho',
'LT' => 'Lituania',
+ 'LU' => 'Luxemburg',
'LV' => 'Lettonia',
'LY' => 'Libya',
'MA' => 'Marocco',
+ 'MC' => 'Monaco',
'MD' => 'Moldavia',
+ 'ME' => 'Montenegro',
'MG' => 'Madagascar',
'MH' => 'Insulas Marshall',
'MK' => 'Macedonia',
@@ -233,6 +646,7 @@ $countryNames = array(
'MN' => 'Mongolia',
'MP' => 'Insulas Marianna del Nord',
'MR' => 'Mauritania',
+ 'MT' => 'Malta',
'MW' => 'Malawi',
'MX' => 'Mexico',
'MY' => 'Malaysia',
@@ -248,15 +662,20 @@ $countryNames = array(
'NP' => 'Nepal',
'NZ' => 'Nove Zelanda',
'OM' => 'Oman',
+ 'PA' => 'Panama',
'PE' => 'Peru',
'PF' => 'Polynesia francese',
'PG' => 'Papua Nove Guinea',
'PH' => 'Philippinas',
'PK' => 'Pakistan',
'PL' => 'Polonia',
+ 'PM' => 'St. Pierre e Miquelon',
'PT' => 'Portugal',
'PY' => 'Paraguay',
+ 'QO' => 'Oceania remote',
'RO' => 'Romania',
+ 'RS' => 'Serbia',
+ 'RU' => 'Russia',
'RW' => 'Ruanda',
'SA' => 'Arabia Saudita',
'SB' => 'Insulas Solomon',
@@ -264,6 +683,7 @@ $countryNames = array(
'SD' => 'Sudan',
'SE' => 'Svedia',
'SI' => 'Slovenia',
+ 'SJ' => 'Svalbard e Jan Mayen',
'SK' => 'Slovachia',
'SL' => 'Sierra Leone',
'SM' => 'San Marino',
@@ -271,6 +691,7 @@ $countryNames = array(
'SO' => 'Somalia',
'SR' => 'Suriname',
'SS' => 'Sudan del Sud',
+ 'SV' => 'El Salvador',
'SY' => 'Syria',
'SZ' => 'Swazilandia',
'TC' => 'Insulas Turcos e Caicos',
@@ -283,7 +704,7 @@ $countryNames = array(
'TL' => 'Timor del Est',
'TM' => 'Turkmenistan',
'TN' => 'Tunisia',
- 'TO' => 'tonga',
+ 'TO' => 'Tonga',
'TR' => 'Turchia',
'TT' => 'Trinidad e Tobago',
'TV' => 'Tuvalu',
@@ -291,15 +712,223 @@ $countryNames = array(
'TZ' => 'Tanzania',
'UA' => 'Ukraina',
'UG' => 'Uganda',
- 'US' => 'Statos Unite',
+ 'UN' => 'Nationes Unite',
+ 'US' => 'SUA',
'UY' => 'Uruguay',
'UZ' => 'Uzbekistan',
+ 'VA' => 'Citate del Vaticano',
'VC' => 'Sancte Vincente e le Grenadinas',
'VE' => 'Venezuela',
'VU' => 'Vanuatu',
'WS' => 'Samoa',
+ 'XK' => 'Kosovo',
'YE' => 'Yemen',
- 'ZA' => 'Africa del Sud',
+ 'ZA' => 'Sudafrica',
'ZM' => 'Zambia',
'ZW' => 'Zimbabwe',
-);
+];
+
+$timeUnits = [
+ 'century-one' => '{0} seculos',
+ 'century-other' => '{0} seculos',
+ 'day-future-one' => 'in {0} dies',
+ 'day-future-other' => 'in {0} dies',
+ 'day-narrow-future-one' => 'in {0} dies',
+ 'day-narrow-future-other' => 'in {0} dies',
+ 'day-narrow-past-one' => '{0} dies retro',
+ 'day-narrow-past-other' => '{0} dies retro',
+ 'day-one' => '{0} dies',
+ 'day-other' => '{0} dies',
+ 'day-past-one' => '{0} dies retro',
+ 'day-past-other' => '{0} dies retro',
+ 'day-short-future-one' => 'in {0} dies',
+ 'day-short-future-other' => 'in {0} dies',
+ 'day-short-past-one' => '{0} dies retro',
+ 'day-short-past-other' => '{0} dies retro',
+ 'fri-future-one' => 'in {0} venerdis',
+ 'fri-future-other' => 'in {0} venerdis',
+ 'fri-narrow-future-one' => 'in {0} ven.',
+ 'fri-narrow-future-other' => 'in {0} ven.',
+ 'fri-narrow-past-one' => '{0} ven. retro',
+ 'fri-narrow-past-other' => '{0} ven. retro',
+ 'fri-past-one' => '{0} venerdis retro',
+ 'fri-past-other' => '{0} venerdis retro',
+ 'fri-short-future-one' => 'in {0} ven.',
+ 'fri-short-future-other' => 'in {0} ven.',
+ 'fri-short-past-one' => '{0} ven. retro',
+ 'fri-short-past-other' => '{0} ven. retro',
+ 'hour-future-one' => 'in {0} horas',
+ 'hour-future-other' => 'in {0} horas',
+ 'hour-narrow-future-one' => 'in {0} hr.',
+ 'hour-narrow-future-other' => 'in {0} hr.',
+ 'hour-narrow-past-one' => '{0} hr. retro',
+ 'hour-narrow-past-other' => '{0} hr. retro',
+ 'hour-one' => '{0} horas',
+ 'hour-other' => '{0} horas',
+ 'hour-past-one' => '{0} horas retro',
+ 'hour-past-other' => '{0} horas retro',
+ 'hour-short-future-one' => 'in {0} hr.',
+ 'hour-short-future-other' => 'in {0} hr.',
+ 'hour-short-past-one' => '{0} hr. retro',
+ 'hour-short-past-other' => '{0} hr. retro',
+ 'microsecond-one' => '{0} microsecundas',
+ 'microsecond-other' => '{0} microsecundas',
+ 'millisecond-one' => '{0} millisecundas',
+ 'millisecond-other' => '{0} millisecundas',
+ 'minute-future-one' => 'in {0} minutas',
+ 'minute-future-other' => 'in {0} minutas',
+ 'minute-narrow-future-one' => 'in {0} min.',
+ 'minute-narrow-future-other' => 'in {0} min.',
+ 'minute-narrow-past-one' => '{0} min. retro',
+ 'minute-narrow-past-other' => '{0} min. retro',
+ 'minute-one' => '{0} minutas',
+ 'minute-other' => '{0} minutas',
+ 'minute-past-one' => '{0} minutas retro',
+ 'minute-past-other' => '{0} minutas retro',
+ 'minute-short-future-one' => 'in {0} min.',
+ 'minute-short-future-other' => 'in {0} min.',
+ 'minute-short-past-one' => '{0} min. retro',
+ 'minute-short-past-other' => '{0} min. retro',
+ 'mon-future-one' => 'in {0} lunedis',
+ 'mon-future-other' => 'in {0} lunedis',
+ 'mon-narrow-future-one' => 'in {0} lun.',
+ 'mon-narrow-future-other' => 'in {0} lun.',
+ 'mon-narrow-past-one' => '{0} lun. retro',
+ 'mon-narrow-past-other' => '{0} lun. retro',
+ 'mon-past-one' => '{0} lunedis retro',
+ 'mon-past-other' => '{0} lunedis retro',
+ 'mon-short-future-one' => 'in {0} lun.',
+ 'mon-short-future-other' => 'in {0} lun.',
+ 'mon-short-past-one' => '{0} lun. retro',
+ 'mon-short-past-other' => '{0} lun. retro',
+ 'month-future-one' => 'in {0} menses',
+ 'month-future-other' => 'in {0} menses',
+ 'month-narrow-future-one' => 'in {0} mns.',
+ 'month-narrow-future-other' => 'in {0} mns.',
+ 'month-narrow-past-one' => '{0} mns. retro',
+ 'month-narrow-past-other' => '{0} mns. retro',
+ 'month-one' => '{0} menses',
+ 'month-other' => '{0} menses',
+ 'month-past-one' => '{0} menses retro',
+ 'month-past-other' => '{0} menses retro',
+ 'month-short-future-one' => 'in {0} mns.',
+ 'month-short-future-other' => 'in {0} mns.',
+ 'month-short-past-one' => '{0} mns. retro',
+ 'month-short-past-other' => '{0} mns. retro',
+ 'nanosecond-one' => '{0} nanosecundas',
+ 'nanosecond-other' => '{0} nanosecundas',
+ 'quarter-future-one' => 'in {0} trimestres',
+ 'quarter-future-other' => 'in {0} trimestres',
+ 'quarter-narrow-future-one' => 'in {0} trim.',
+ 'quarter-narrow-future-other' => 'in {0} trim.',
+ 'quarter-narrow-past-one' => '{0} trim. retro',
+ 'quarter-narrow-past-other' => '{0} trim. retro',
+ 'quarter-past-one' => 'in {0} trimestres',
+ 'quarter-past-other' => 'in {0} trimestres',
+ 'quarter-short-future-one' => 'in {0} trim.',
+ 'quarter-short-future-other' => 'in {0} trim.',
+ 'quarter-short-past-one' => '{0} trim. retro',
+ 'quarter-short-past-other' => '{0} trim. retro',
+ 'sat-future-one' => 'in {0} sabbatos',
+ 'sat-future-other' => 'in {0} sabbatos',
+ 'sat-narrow-future-one' => 'in {0} sab.',
+ 'sat-narrow-future-other' => 'in {0} sab.',
+ 'sat-narrow-past-one' => '{0} sab. retro',
+ 'sat-narrow-past-other' => '{0} sab. retro',
+ 'sat-past-one' => '{0} sabbatos retro',
+ 'sat-past-other' => '{0} sabbatos retro',
+ 'sat-short-future-one' => 'in {0} sab.',
+ 'sat-short-future-other' => 'in {0} sab.',
+ 'sat-short-past-one' => '{0} sab. retro',
+ 'sat-short-past-other' => '{0} sab. retro',
+ 'second-future-one' => 'in {0} secundas',
+ 'second-future-other' => 'in {0} secundas',
+ 'second-narrow-future-one' => 'in {0} sec.',
+ 'second-narrow-future-other' => 'in {0} sec.',
+ 'second-narrow-past-one' => '{0} sec. retro',
+ 'second-narrow-past-other' => '{0} sec. retro',
+ 'second-one' => '{0} secundas',
+ 'second-other' => '{0} secundas',
+ 'second-past-one' => '{0} secundas retro',
+ 'second-past-other' => '{0} secundas retro',
+ 'second-short-future-one' => 'in {0} sec.',
+ 'second-short-future-other' => 'in {0} sec.',
+ 'second-short-past-one' => '{0} sec. retro',
+ 'second-short-past-other' => '{0} sec. retro',
+ 'sun-future-one' => 'in {0} dominicas',
+ 'sun-future-other' => 'in {0} dominicas',
+ 'sun-narrow-future-one' => 'in {0} dom.',
+ 'sun-narrow-future-other' => 'in {0} dom.',
+ 'sun-narrow-past-one' => '{0} dom. retro',
+ 'sun-narrow-past-other' => '{0} dom. retro',
+ 'sun-past-one' => '{0} dominicas retro',
+ 'sun-past-other' => '{0} dominicas retro',
+ 'sun-short-future-one' => 'in {0} dom.',
+ 'sun-short-future-other' => 'in {0} dom.',
+ 'sun-short-past-one' => '{0} dom. retro',
+ 'sun-short-past-other' => '{0} dom. retro',
+ 'thu-future-one' => 'in {0} jovedis',
+ 'thu-future-other' => 'in {0} jovedis',
+ 'thu-narrow-future-one' => 'in {0} jov.',
+ 'thu-narrow-future-other' => 'in {0} jov.',
+ 'thu-narrow-past-one' => '{0} jov. retro',
+ 'thu-narrow-past-other' => '{0} jov. retro',
+ 'thu-past-one' => '{0} jovedis retro',
+ 'thu-past-other' => '{0} jovedis retro',
+ 'thu-short-future-one' => 'in {0} jov.',
+ 'thu-short-future-other' => 'in {0} jov.',
+ 'thu-short-past-one' => '{0} jov. retro',
+ 'thu-short-past-other' => '{0} jov. retro',
+ 'tue-future-one' => 'in {0} martedis',
+ 'tue-future-other' => 'in {0} martedis',
+ 'tue-narrow-future-one' => 'in {0} mar.',
+ 'tue-narrow-future-other' => 'in {0} mar.',
+ 'tue-narrow-past-one' => '{0} mar. retro',
+ 'tue-narrow-past-other' => '{0} mar. retro',
+ 'tue-past-one' => '{0} martedis retro',
+ 'tue-past-other' => '{0} martedis retro',
+ 'tue-short-future-one' => 'in {0} mar.',
+ 'tue-short-future-other' => 'in {0} mar.',
+ 'tue-short-past-one' => '{0} mar. retro',
+ 'tue-short-past-other' => '{0} mar. retro',
+ 'wed-future-one' => 'in {0} mercuridis',
+ 'wed-future-other' => 'in {0} mercuridis',
+ 'wed-narrow-future-one' => 'in {0} mer.',
+ 'wed-narrow-future-other' => 'in {0} mer.',
+ 'wed-narrow-past-one' => '{0} mer. retro',
+ 'wed-narrow-past-other' => '{0} mer. retro',
+ 'wed-past-one' => '{0} mercuridis retro',
+ 'wed-past-other' => '{0} mercuridis retro',
+ 'wed-short-future-one' => 'in {0} mer.',
+ 'wed-short-future-other' => 'in {0} mer.',
+ 'wed-short-past-one' => '{0} mer. retro',
+ 'wed-short-past-other' => '{0} mer. retro',
+ 'week-future-one' => 'in {0} septimanas',
+ 'week-future-other' => 'in {0} septimanas',
+ 'week-narrow-future-one' => 'in {0} sept.',
+ 'week-narrow-future-other' => 'in {0} sept.',
+ 'week-narrow-past-one' => '{0} sept. retro',
+ 'week-narrow-past-other' => '{0} sept. retro',
+ 'week-one' => '{0} septimanas',
+ 'week-other' => '{0} septimanas',
+ 'week-past-one' => '{0} septimanas retro',
+ 'week-past-other' => '{0} septimanas retro',
+ 'week-short-future-one' => 'in {0} sept.',
+ 'week-short-future-other' => 'in {0} sept.',
+ 'week-short-past-one' => '{0} sept. retro',
+ 'week-short-past-other' => '{0} sept. retro',
+ 'year-future-one' => 'in {0} annos',
+ 'year-future-other' => 'in {0} annos',
+ 'year-narrow-future-one' => 'in {0} an.',
+ 'year-narrow-future-other' => 'in {0} an.',
+ 'year-narrow-past-one' => '{0} an. retro',
+ 'year-narrow-past-other' => '{0} an. retro',
+ 'year-one' => '{0} annos',
+ 'year-other' => '{0} annos',
+ 'year-past-one' => '{0} annos retro',
+ 'year-past-other' => '{0} annos retro',
+ 'year-short-future-one' => 'in {0} an.',
+ 'year-short-future-other' => 'in {0} an.',
+ 'year-short-past-one' => '{0} an. retro',
+ 'year-short-past-other' => '{0} an. retro',
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesId.php b/MLEB/cldr/CldrNames/CldrNamesId.php
index e12fd865..6c49d52f 100644
--- a/MLEB/cldr/CldrNames/CldrNamesId.php
+++ b/MLEB/cldr/CldrNames/CldrNamesId.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'Afar',
'ab' => 'Abkhaz',
'ace' => 'Aceh',
@@ -25,21 +25,21 @@ $languageNames = array(
'ar' => 'Arab',
'ar-001' => 'Arab Standar Modern',
'arc' => 'Aram',
- 'arn' => 'Araukan',
+ 'arn' => 'Mapuche',
'arp' => 'Arapaho',
- 'arq' => 'Arab Algeria',
+ 'arq' => 'Arab Aljazair',
+ 'ars' => 'Arab Najdi',
'arw' => 'Arawak',
'ary' => 'Arab Maroko',
'arz' => 'Arab Mesir',
'as' => 'Assam',
'asa' => 'Asu',
'ase' => 'Bahasa Isyarat Amerika',
- 'ast' => 'Astur',
+ 'ast' => 'Asturia',
'av' => 'Avar',
'awa' => 'Awadhi',
'ay' => 'Aymara',
- 'az' => 'Azerbaijan',
- 'azb' => 'Azerbaijani Selatan',
+ 'az' => 'Azerbaijani',
'ba' => 'Bashkir',
'bal' => 'Baluchi',
'ban' => 'Bali',
@@ -54,7 +54,8 @@ $languageNames = array(
'bew' => 'Betawi',
'bez' => 'Bena',
'bfd' => 'Bafut',
- 'bg' => 'Bulgar',
+ 'bg' => 'Bulgaria',
+ 'bgn' => 'Balochi Barat',
'bho' => 'Bhojpuri',
'bi' => 'Bislama',
'bik' => 'Bikol',
@@ -81,7 +82,7 @@ $languageNames = array(
'cay' => 'Cayuga',
'cch' => 'Atsam',
'ce' => 'Chechen',
- 'ceb' => 'Sebuano',
+ 'ceb' => 'Cebuano',
'cgg' => 'Kiga',
'ch' => 'Chamorro',
'chb' => 'Chibcha',
@@ -98,6 +99,7 @@ $languageNames = array(
'cop' => 'Koptik',
'cr' => 'Kree',
'crh' => 'Tatar Krimea',
+ 'crs' => 'Seselwa Kreol Prancis',
'cs' => 'Cheska',
'csb' => 'Kashubia',
'cu' => 'Bahasa Gereja Slavonia',
@@ -108,17 +110,16 @@ $languageNames = array(
'dar' => 'Dargwa',
'dav' => 'Taita',
'de' => 'Jerman',
- 'de-at' => 'Jerman Austria',
- 'de-ch' => 'Jerman Tinggi Swiss',
+ 'de-ch' => 'Jerman Tinggi (Swiss)',
'del' => 'Delaware',
'den' => 'Slave',
'dgr' => 'Dogrib',
'din' => 'Dinka',
'dje' => 'Zarma',
'doi' => 'Dogri',
- 'dsb' => 'Sorbia Rendah',
+ 'dsb' => 'Sorbia Hilir',
'dua' => 'Duala',
- 'dum' => 'Belanda Tengah',
+ 'dum' => 'Belanda Abad Pertengahan',
'dv' => 'Divehi',
'dyo' => 'Jola-Fonyi',
'dyu' => 'Dyula',
@@ -132,18 +133,13 @@ $languageNames = array(
'el' => 'Yunani',
'elx' => 'Elam',
'en' => 'Inggris',
- 'en-au' => 'Inggris Australia',
- 'en-ca' => 'Inggris Kanada',
- 'en-gb' => 'Inggris Inggris',
- 'en-us' => 'Inggris Amerika',
+ 'en-gb' => 'Inggris (Inggris)',
'enm' => 'Inggris Abad Pertengahan',
'eo' => 'Esperanto',
'es' => 'Spanyol',
- 'es-419' => 'Spanyol Amerika Latin',
- 'es-es' => 'Spanyol Eropa',
- 'es-mx' => 'Spanyol Meksiko',
+ 'es-es' => 'Spanyol (Eropa)',
'et' => 'Esti',
- 'eu' => 'Bask',
+ 'eu' => 'Basque',
'ewo' => 'Ewondo',
'fa' => 'Persia',
'fan' => 'Fang',
@@ -152,11 +148,12 @@ $languageNames = array(
'fi' => 'Suomi',
'fil' => 'Filipino',
'fj' => 'Fiji',
- 'fo' => 'Faro',
+ 'fo' => 'Faroe',
'fon' => 'Fon',
'fr' => 'Prancis',
- 'fr-ca' => 'Prancis Kanada',
- 'fr-ch' => 'Prancis Swiss',
+ 'fr-ca' => 'Perancis (Kanada)',
+ 'fr-ch' => 'Perancis (Swiss)',
+ 'frc' => 'Prancis Cajun',
'frm' => 'Prancis Abad Pertengahan',
'fro' => 'Prancis Kuno',
'frp' => 'Arpitan',
@@ -179,11 +176,11 @@ $languageNames = array(
'goh' => 'Jerman Kuno',
'gon' => 'Gondi',
'gor' => 'Gorontalo',
- 'got' => 'Gothik',
+ 'got' => 'Gotik',
'grb' => 'Grebo',
'grc' => 'Yunani Kuno',
- 'gsw' => 'Jerman Swiss',
- 'gu' => 'Gujarati',
+ 'gsw' => 'Jerman (Swiss)',
+ 'gu' => 'Gujarat',
'guz' => 'Gusii',
'gv' => 'Manx',
'gwi' => 'Gwich’in',
@@ -198,8 +195,8 @@ $languageNames = array(
'hmn' => 'Hmong',
'ho' => 'Hiri Motu',
'hr' => 'Kroasia',
- 'hsb' => 'Sorbia Atas',
- 'ht' => 'Haiti',
+ 'hsb' => 'Sorbia Hulu',
+ 'ht' => 'Kreol Haiti',
'hu' => 'Hungaria',
'hup' => 'Hupa',
'hy' => 'Armenia',
@@ -207,7 +204,7 @@ $languageNames = array(
'ia' => 'Interlingua',
'iba' => 'Iban',
'ibb' => 'Ibibio',
- 'id' => 'Bahasa Indonesia',
+ 'id' => 'Indonesia',
'ie' => 'Interlingue',
'ig' => 'Igbo',
'ii' => 'Sichuan Yi',
@@ -286,7 +283,9 @@ $languageNames = array(
'ln' => 'Lingala',
'lo' => 'Lao',
'lol' => 'Mongo',
+ 'lou' => 'Kreol Louisiana',
'loz' => 'Lozi',
+ 'lrc' => 'Luri Utara',
'lt' => 'Lituavi',
'lu' => 'Luba-Katanga',
'lua' => 'Luba-Lulua',
@@ -313,7 +312,7 @@ $languageNames = array(
'mg' => 'Malagasi',
'mga' => 'Irlandia Abad Pertengahan',
'mgh' => 'Makhuwa-Meetto',
- 'mgo' => 'meta’',
+ 'mgo' => 'Meta’',
'mh' => 'Marshall',
'mi' => 'Maori',
'mic' => 'Mikmak',
@@ -337,6 +336,7 @@ $languageNames = array(
'my' => 'Burma',
'mye' => 'Myene',
'myv' => 'Eryza',
+ 'mzn' => 'Mazanderani',
'na' => 'Nauru',
'nap' => 'Neapolitan',
'naq' => 'Nama',
@@ -349,7 +349,6 @@ $languageNames = array(
'nia' => 'Nias',
'niu' => 'Niuea',
'nl' => 'Belanda',
- 'nl-be' => 'Flemish',
'nmg' => 'Kwasio',
'nn' => 'Nynorsk Norwegia',
'nnh' => 'Ngiemboon',
@@ -380,17 +379,18 @@ $languageNames = array(
'pam' => 'Pampanga',
'pap' => 'Papiamento',
'pau' => 'Palau',
+ 'pcm' => 'Pidgin Nigeria',
'pdc' => 'Jerman Pennsylvania',
'peo' => 'Persia Kuno',
'phn' => 'Funisia',
'pi' => 'Pali',
'pl' => 'Polski',
'pon' => 'Pohnpeia',
+ 'prg' => 'Prusia',
'pro' => 'Provencal Lama',
'ps' => 'Pashto',
'pt' => 'Portugis',
- 'pt-br' => 'Portugis Brasil',
- 'pt-pt' => 'Portugis Eropa',
+ 'pt-pt' => 'Portugis (Eropa)',
'qu' => 'Quechua',
'quc' => 'Kʼicheʼ',
'raj' => 'Rajasthani',
@@ -404,7 +404,7 @@ $languageNames = array(
'rom' => 'Romani',
'rtm' => 'Rotuma',
'ru' => 'Rusia',
- 'rup' => 'Makedo-Rumania',
+ 'rup' => 'Aromania',
'rw' => 'Kinyarwanda',
'rwk' => 'Rwa',
'sa' => 'Sanskerta',
@@ -420,6 +420,7 @@ $languageNames = array(
'scn' => 'Sisilia',
'sco' => 'Skotlandia',
'sd' => 'Sindhi',
+ 'sdh' => 'Kurdi Selatan',
'se' => 'Sami Utara',
'see' => 'Seneca',
'seh' => 'Sena',
@@ -436,7 +437,7 @@ $languageNames = array(
'sid' => 'Sidamo',
'sk' => 'Slovak',
'sl' => 'Sloven',
- 'sli' => 'Silesia Bawah',
+ 'sli' => 'Silesia Rendah',
'sly' => 'Selayar',
'sm' => 'Samoa',
'sma' => 'Sami Selatan',
@@ -445,10 +446,10 @@ $languageNames = array(
'sms' => 'Skolt Sami',
'sn' => 'Shona',
'snk' => 'Soninke',
- 'so' => 'Somali',
+ 'so' => 'Somalia',
'sog' => 'Sogdien',
'sq' => 'Albania',
- 'sr' => 'Serb',
+ 'sr' => 'Serbia',
'srn' => 'Sranan Tongo',
'srr' => 'Serer',
'ss' => 'Swati',
@@ -460,8 +461,8 @@ $languageNames = array(
'sux' => 'Sumeria',
'sv' => 'Swedia',
'sw' => 'Swahili',
+ 'sw-cd' => 'Swahili (Kongo)',
'swb' => 'Komoria',
- 'swc' => 'Kongo Swahili',
'syc' => 'Suriah Klasik',
'syr' => 'Suriah',
'szl' => 'Silesia',
@@ -521,6 +522,7 @@ $languageNames = array(
'wal' => 'Walamo',
'war' => 'Warai',
'was' => 'Washo',
+ 'wbp' => 'Warlpiri',
'wo' => 'Wolof',
'xal' => 'Kalmuk',
'xh' => 'Xhosa',
@@ -537,16 +539,16 @@ $languageNames = array(
'zbl' => 'Blissymbol',
'zen' => 'Zenaga',
'zgh' => 'Tamazight Maroko Standar',
- 'zh' => 'China',
- 'zh-hans' => 'China (Aksara Sederhana)',
- 'zh-hant' => 'China (Aksara Tradisional)',
+ 'zh' => 'Tionghoa',
+ 'zh-hans' => 'Tionghoa (Aksara Sederhana)',
+ 'zh-hant' => 'Tionghoa (Aksara Tradisional)',
'zu' => 'Zulu',
'zun' => 'Zuni',
'zxx' => 'Tidak ada konten linguistik',
'zza' => 'Zaza',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'ADP' => 'Peseta Andorra',
'AED' => 'Dirham Uni Emirat Arab',
'AFA' => 'Afgani Afganistan (1927–2002)',
@@ -600,7 +602,8 @@ $currencyNames = array(
'BUK' => 'Kyat Burma',
'BWP' => 'Pula Botswana',
'BYB' => 'Rubel Baru Belarus (1994–1999)',
- 'BYR' => 'Rubel Belarusia',
+ 'BYN' => 'Rubel Belarusia',
+ 'BYR' => 'Rubel Belarusia (2000–2016)',
'BZD' => 'Dolar Belize',
'CAD' => 'Dolar Kanada',
'CDF' => 'Franc Kongo',
@@ -610,7 +613,8 @@ $currencyNames = array(
'CLE' => 'Escudo Cile',
'CLF' => 'Satuan Hitung (UF) Cile',
'CLP' => 'Peso Cile',
- 'CNY' => 'Yuan China',
+ 'CNH' => 'Yuan Tiongkok (luar negeri)',
+ 'CNY' => 'Yuan Tiongkok',
'COP' => 'Peso Kolombia',
'COU' => 'Unit Nilai Nyata Kolombia',
'CRC' => 'Colon Kosta Rika',
@@ -713,7 +717,8 @@ $currencyNames = array(
'MMK' => 'Kyat Myanmar',
'MNT' => 'Tugrik Mongolia',
'MOP' => 'Pataca Makau',
- 'MRO' => 'Ouguiya Mauritania',
+ 'MRO' => 'Ouguiya Mauritania (1973–2017)',
+ 'MRU' => 'Ouguiya Mauritania',
'MTL' => 'Lira Malta',
'MTP' => 'Pound Malta',
'MUR' => 'Rupee Mauritius',
@@ -738,7 +743,7 @@ $currencyNames = array(
'OMR' => 'Rial Oman',
'PAB' => 'Balboa Panama',
'PEI' => 'Inti Peru',
- 'PEN' => 'Nuevo Sol Peru',
+ 'PEN' => 'Sol Peru',
'PES' => 'Sol Peru (1863–1965)',
'PGK' => 'Kina Papua Nugini',
'PHP' => 'Peso Filipina',
@@ -771,7 +776,8 @@ $currencyNames = array(
'SRD' => 'Dolar Suriname',
'SRG' => 'Guilder Suriname',
'SSP' => 'Pound Sudan Selatan',
- 'STD' => 'Dobra Sao Tome dan Principe',
+ 'STD' => 'Dobra Sao Tome dan Principe (1977–2017)',
+ 'STN' => 'Dobra Sao Tome dan Principe',
'SUR' => 'Rubel Soviet',
'SVC' => 'Colon El Savador',
'SYP' => 'Pound Suriah',
@@ -801,7 +807,8 @@ $currencyNames = array(
'UYU' => 'Peso Uruguay',
'UZS' => 'Som Uzbekistan',
'VEB' => 'Bolivar Venezuela (1871–2008)',
- 'VEF' => 'Bolivar Venezuela',
+ 'VEF' => 'Bolivar Venezuela (2008–2018)',
+ 'VES' => 'Bolivar Venezuela',
'VND' => 'Dong Vietnam',
'VNN' => 'Dong Vietnam (1978–1985)',
'VUV' => 'Vatu Vanuatu',
@@ -840,9 +847,9 @@ $currencyNames = array(
'ZWD' => 'Dolar Zimbabwe (1980–2008)',
'ZWL' => 'Dolar Zimbabwe (2009)',
'ZWR' => 'Dolar Zimbabwe (2008)',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'ADP' => 'ADP',
'AED' => 'AED',
'AFA' => 'AFA',
@@ -896,6 +903,7 @@ $currencySymbols = array(
'BUK' => 'BUK',
'BWP' => 'BWP',
'BYB' => 'BYB',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CA$',
@@ -906,6 +914,7 @@ $currencySymbols = array(
'CLE' => 'CLE',
'CLF' => 'CLF',
'CLP' => 'CLP',
+ 'CNH' => 'CNH',
'CNY' => 'CN¥',
'COP' => 'COP',
'COU' => 'COU',
@@ -1008,6 +1017,7 @@ $currencySymbols = array(
'MNT' => 'MNT',
'MOP' => 'MOP',
'MRO' => 'MRO',
+ 'MRU' => 'MRU',
'MTL' => 'MTL',
'MTP' => 'MTP',
'MUR' => 'MUR',
@@ -1065,6 +1075,7 @@ $currencySymbols = array(
'SRG' => 'SRG',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'STN',
'SUR' => 'SUR',
'SVC' => 'SVC',
'SYP' => 'SYP',
@@ -1091,10 +1102,11 @@ $currencySymbols = array(
'USS' => 'USS',
'UYI' => 'UYI',
'UYP' => 'UYP',
- 'UYU' => '$U',
+ 'UYU' => 'UYU',
'UZS' => 'UZS',
'VEB' => 'VEB',
'VEF' => 'VEF',
+ 'VES' => 'VES',
'VND' => '₫',
'VNN' => 'VNN',
'VUV' => 'VUV',
@@ -1132,9 +1144,9 @@ $currencySymbols = array(
'ZWD' => 'ZWD',
'ZWL' => 'ZWL',
'ZWR' => 'ZWR',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'Pulau Ascension',
'AD' => 'Andorra',
'AE' => 'Uni Emirat Arab',
@@ -1143,9 +1155,8 @@ $countryNames = array(
'AI' => 'Anguilla',
'AL' => 'Albania',
'AM' => 'Armenia',
- 'AN' => 'Antilla Belanda',
'AO' => 'Angola',
- 'AQ' => 'Antarktika',
+ 'AQ' => 'Antartika',
'AR' => 'Argentina',
'AS' => 'Samoa Amerika',
'AT' => 'Austria',
@@ -1162,11 +1173,11 @@ $countryNames = array(
'BH' => 'Bahrain',
'BI' => 'Burundi',
'BJ' => 'Benin',
- 'BL' => 'Saint Barthelemy',
+ 'BL' => 'Saint Barthélemy',
'BM' => 'Bermuda',
'BN' => 'Brunei',
'BO' => 'Bolivia',
- 'BQ' => 'Karibia Belanda',
+ 'BQ' => 'Belanda Karibia',
'BR' => 'Brasil',
'BS' => 'Bahama',
'BT' => 'Bhutan',
@@ -1175,16 +1186,16 @@ $countryNames = array(
'BY' => 'Belarus',
'BZ' => 'Belize',
'CA' => 'Kanada',
- 'CC' => 'Kepulauan Cocos',
+ 'CC' => 'Kepulauan Cocos (Keeling)',
'CD' => 'Kongo - Kinshasa',
'CF' => 'Republik Afrika Tengah',
'CG' => 'Kongo - Brazzaville',
'CH' => 'Swiss',
- 'CI' => 'Cote d’Ivoire',
+ 'CI' => 'Pantai Gading',
'CK' => 'Kepulauan Cook',
'CL' => 'Cile',
'CM' => 'Kamerun',
- 'CN' => 'China',
+ 'CN' => 'Tiongkok',
'CO' => 'Kolombia',
'CP' => 'Pulau Clipperton',
'CR' => 'Kosta Rika',
@@ -1193,7 +1204,7 @@ $countryNames = array(
'CW' => 'Curaçao',
'CX' => 'Pulau Christmas',
'CY' => 'Siprus',
- 'CZ' => 'Republik Cheska',
+ 'CZ' => 'Ceko',
'DE' => 'Jerman',
'DG' => 'Diego Garcia',
'DJ' => 'Jibuti',
@@ -1210,6 +1221,7 @@ $countryNames = array(
'ES' => 'Spanyol',
'ET' => 'Etiopia',
'EU' => 'Uni Eropa',
+ 'EZ' => 'Zona Euro',
'FI' => 'Finlandia',
'FJ' => 'Fiji',
'FK' => 'Kepulauan Malvinas',
@@ -1217,7 +1229,7 @@ $countryNames = array(
'FO' => 'Kepulauan Faroe',
'FR' => 'Prancis',
'GA' => 'Gabon',
- 'GB' => 'GB',
+ 'GB' => 'UK',
'GD' => 'Grenada',
'GE' => 'Georgia',
'GF' => 'Guyana Prancis',
@@ -1376,6 +1388,7 @@ $countryNames = array(
'UA' => 'Ukraina',
'UG' => 'Uganda',
'UM' => 'Kepulauan Terluar A.S.',
+ 'UN' => 'PBB',
'US' => 'A.S.',
'UY' => 'Uruguay',
'UZ' => 'Uzbekistan',
@@ -1394,65 +1407,108 @@ $countryNames = array(
'ZA' => 'Afrika Selatan',
'ZM' => 'Zambia',
'ZW' => 'Zimbabwe',
-);
+];
-$timeUnits = array(
- 'day-future-other' => 'Dalam {0} hari',
- 'day-narrow-future-other' => 'Dalam {0} hari',
- 'day-narrow-past-other' => '{0} hari yang lalu',
+$timeUnits = [
+ 'century-other' => '{0} abad',
+ 'day-future-other' => 'dalam {0} hari',
+ 'day-narrow-future-other' => 'dalam {0} h',
+ 'day-narrow-past-other' => '{0} h lalu',
'day-other' => '{0} hari',
'day-past-other' => '{0} hari yang lalu',
- 'day-short-future-other' => 'Dalam {0} hari',
- 'day-short-past-other' => '{0} hari yang lalu',
- 'hour-future-other' => 'Dalam {0} jam',
- 'hour-narrow-future-other' => '+{0} jam',
- 'hour-narrow-past-other' => '-{0} jam',
+ 'day-short-future-other' => 'dalam {0} h',
+ 'day-short-past-other' => '{0} h lalu',
+ 'fri-future-other' => 'dalam {0} Jumat',
+ 'fri-narrow-future-other' => 'dlm {0} Jum.',
+ 'fri-narrow-past-other' => '{0} Jum. lalu',
+ 'fri-past-other' => '{0} Jumat lalu',
+ 'fri-short-future-other' => 'dlm {0} Jum.',
+ 'fri-short-past-other' => '{0} Jum. lalu',
+ 'hour-future-other' => 'dalam {0} jam',
+ 'hour-narrow-future-other' => 'dalam {0} jam',
+ 'hour-narrow-past-other' => '{0} jam lalu',
'hour-other' => '{0} jam',
'hour-past-other' => '{0} jam yang lalu',
- 'hour-short-future-other' => 'dlm {0} jam',
- 'hour-short-past-other' => '{0} jam yg lalu',
+ 'hour-short-future-other' => 'dalam {0} jam',
+ 'hour-short-past-other' => '{0} jam lalu',
'microsecond-other' => '{0} mikrodetik',
'millisecond-other' => '{0} milidetik',
- 'minute-future-other' => 'Dalam {0} menit',
- 'minute-narrow-future-other' => '+{0} mnt',
- 'minute-narrow-past-other' => '-{0} mnt',
+ 'minute-future-other' => 'dalam {0} menit',
+ 'minute-narrow-future-other' => 'dlm {0} mnt',
+ 'minute-narrow-past-other' => '{0} mnt lalu',
'minute-other' => '{0} menit',
'minute-past-other' => '{0} menit yang lalu',
'minute-short-future-other' => 'dlm {0} mnt',
- 'minute-short-past-other' => '{0} mnt yg lalu',
- 'month-future-other' => 'Dalam {0} bulan',
- 'month-narrow-future-other' => '+{0} bln.',
- 'month-narrow-past-other' => '-{0} bln.',
+ 'minute-short-past-other' => '{0} mnt lalu',
+ 'mon-future-other' => 'dalam {0} Senin',
+ 'mon-narrow-future-other' => 'dlm {0} Sen.',
+ 'mon-narrow-past-other' => '{0} Sen. lalu',
+ 'mon-past-other' => '{0} Senin lalu',
+ 'mon-short-future-other' => 'dlm {0} Sen.',
+ 'mon-short-past-other' => '{0} Sen. lalu',
+ 'month-future-other' => 'dalam {0} bulan',
+ 'month-narrow-future-other' => 'dlm {0} bln',
+ 'month-narrow-past-other' => '{0} bln lalu',
'month-other' => '{0} bulan',
'month-past-other' => '{0} bulan yang lalu',
- 'month-short-future-other' => 'Dalam {0} bulan',
- 'month-short-past-other' => '{0} bulan yang lalu',
+ 'month-short-future-other' => 'dlm {0} bln',
+ 'month-short-past-other' => '{0} bln lalu',
'nanosecond-other' => '{0} nanodetik',
- 'quarter-future-other' => 'dalam {0} triwulan',
- 'quarter-narrow-future-other' => '+{0} triwln.',
- 'quarter-narrow-past-other' => '-{0} triwln.',
- 'quarter-past-other' => '{0} triwulan yang lalu',
- 'quarter-short-future-other' => 'dalam {0} triwulan',
- 'quarter-short-past-other' => '{0} triwulan yang lalu',
- 'second-future-other' => 'Dalam {0} detik',
- 'second-narrow-future-other' => '+{0} dtk',
- 'second-narrow-past-other' => '-{0} d yg lalu',
+ 'quarter-future-other' => 'dalam {0} kuartal',
+ 'quarter-narrow-future-other' => 'dlm {0} krtl.',
+ 'quarter-narrow-past-other' => '{0} krtl. lalu',
+ 'quarter-past-other' => '{0} kuartal yang lalu',
+ 'quarter-short-future-other' => 'dlm {0} krtl.',
+ 'quarter-short-past-other' => '{0} krtl. lalu',
+ 'sat-future-other' => 'dalam {0} Sabtu',
+ 'sat-narrow-future-other' => 'dlm {0} Sab.',
+ 'sat-narrow-past-other' => '{0} Sab. lalu',
+ 'sat-past-other' => '{0} Sabtu lalu',
+ 'sat-short-future-other' => 'dlm {0} Sab.',
+ 'sat-short-past-other' => '{0} Sab. lalu',
+ 'second-future-other' => 'dalam {0} detik',
+ 'second-narrow-future-other' => 'dlm {0} dtk',
+ 'second-narrow-past-other' => '{0} dtk lalu',
'second-other' => '{0} detik',
'second-past-other' => '{0} detik yang lalu',
'second-short-future-other' => 'dlm {0} dtk',
- 'second-short-past-other' => '{0} dtk yg lalu',
- 'week-future-other' => 'Dalam {0} minggu',
- 'week-narrow-future-other' => '+{0} mgg.',
- 'week-narrow-past-other' => '-{0} mgg.',
+ 'second-short-past-other' => '{0} dtk lalu',
+ 'sun-future-other' => 'dalam {0} hari Minggu',
+ 'sun-narrow-future-other' => 'dlm {0} Min.',
+ 'sun-narrow-past-other' => '{0} Min. lalu',
+ 'sun-past-other' => '{0} hari Minggu yang lalu',
+ 'sun-short-future-other' => 'dlm {0} Min.',
+ 'sun-short-past-other' => '{0} Min. lalu',
+ 'thu-future-other' => 'dalam {0} Kamis',
+ 'thu-narrow-future-other' => 'dlm {0} Kam.',
+ 'thu-narrow-past-other' => '{0} Kam. lalu',
+ 'thu-past-other' => '{0} Kamis lalu',
+ 'thu-short-future-other' => 'dlm {0} Kam.',
+ 'thu-short-past-other' => '{0} Kam. lalu',
+ 'tue-future-other' => 'dalam {0} Selasa',
+ 'tue-narrow-future-other' => 'dlm {0} Sel.',
+ 'tue-narrow-past-other' => '{0} Sel. lalu',
+ 'tue-past-other' => '{0} Selasa lalu',
+ 'tue-short-future-other' => 'dlm {0} Sel.',
+ 'tue-short-past-other' => '{0} Sel. lalu',
+ 'wed-future-other' => 'dalam {0} Rabu',
+ 'wed-narrow-future-other' => 'dlm {0} Rab.',
+ 'wed-narrow-past-other' => '{0} Rab. lalu',
+ 'wed-past-other' => '{0} Rabu lalu',
+ 'wed-short-future-other' => 'dlm {0} Rab.',
+ 'wed-short-past-other' => '{0} Rab. lalu',
+ 'week-future-other' => 'dalam {0} minggu',
+ 'week-narrow-future-other' => 'dlm {0} mgg',
+ 'week-narrow-past-other' => '{0} mgg lalu',
'week-other' => '{0} minggu',
'week-past-other' => '{0} minggu yang lalu',
- 'week-short-future-other' => 'Dalam {0} minggu',
- 'week-short-past-other' => '{0} minggu yang lalu',
- 'year-future-other' => 'Dalam {0} tahun',
- 'year-narrow-future-other' => '+{0} thn.',
- 'year-narrow-past-other' => '-{0} thn.',
+ 'week-short-future-other' => 'dlm {0} mgg',
+ 'week-short-past-other' => '{0} mgg lalu',
+ 'year-future-other' => 'dalam {0} tahun',
+ 'year-narrow-future-other' => 'dlm {0} thn',
+ 'year-narrow-past-other' => '{0} thn lalu',
'year-other' => '{0} tahun',
'year-past-other' => '{0} tahun yang lalu',
- 'year-short-future-other' => 'Dalam {0} tahun',
- 'year-short-past-other' => '{0} tahun yang lalu',
-);
+ 'year-short-future-other' => 'dlm {0} thn',
+ 'year-short-past-other' => '{0} thn lalu',
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesIg.php b/MLEB/cldr/CldrNames/CldrNamesIg.php
index 522f008c..52399865 100644
--- a/MLEB/cldr/CldrNames/CldrNamesIg.php
+++ b/MLEB/cldr/CldrNames/CldrNamesIg.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'ak' => 'Akan',
'am' => 'Amariikị',
'ar' => 'Arabiikị',
@@ -45,18 +45,18 @@ $languageNames = array(
'yo' => 'Yoruba',
'zh' => 'Mandarịịnị',
'zu' => 'Zulu',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'CVE' => 'Escudo Caboverdiano',
'NGN' => 'Naịra',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'NGN' => '₦',
-);
+];
-$countryNames = array(
+$countryNames = [
'BJ' => 'Binin',
'BM' => 'Bemuda',
'CN' => 'Chaina',
@@ -64,5 +64,5 @@ $countryNames = array(
'KM' => 'Comorosu',
'LY' => 'Libyia',
'MV' => 'Maldivesa',
- 'NG' => 'Nigeria',
-);
+ 'NG' => 'Naịjịrịa',
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesIi.php b/MLEB/cldr/CldrNames/CldrNamesIi.php
index 39ba00c8..febeb9f9 100644
--- a/MLEB/cldr/CldrNames/CldrNamesIi.php
+++ b/MLEB/cldr/CldrNames/CldrNamesIi.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'de' => 'ꄓꇩꉙ',
'en' => 'ꑱꇩꉙ',
'es' => 'ꑭꀠꑸꉙ',
@@ -15,13 +15,13 @@ $languageNames = array(
'zh' => 'ꍏꇩꉙ',
'zh-hans' => 'ꈝꐯꍏꇩꉙ',
'zh-hant' => 'ꀎꋏꍏꇩꉙ',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'XXX' => 'ꅉꀋꐚꌠꌋꆀꎆꃀꀋꈁꀐꌠ',
-);
+];
-$countryNames = array(
+$countryNames = [
'BR' => 'ꀠꑭ',
'CN' => 'ꍏꇩ',
'DE' => 'ꄓꇩ',
@@ -32,4 +32,4 @@ $countryNames = array(
'JP' => 'ꏝꀪ',
'RU' => 'ꊉꇆꌦ',
'US' => 'ꂰꇩ',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesIs.php b/MLEB/cldr/CldrNames/CldrNamesIs.php
index 5fa797e5..a42879cc 100644
--- a/MLEB/cldr/CldrNames/CldrNamesIs.php
+++ b/MLEB/cldr/CldrNames/CldrNamesIs.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'afár',
'ab' => 'abkasíska',
'ace' => 'akkíska',
@@ -23,7 +23,7 @@ $languageNames = array(
'ar' => 'arabíska',
'ar-001' => 'stöðluð nútímaarabíska',
'arc' => 'arameíska',
- 'arn' => 'arákaníska',
+ 'arn' => 'mapuche',
'arp' => 'arapahó',
'arw' => 'aravakska',
'as' => 'assamska',
@@ -43,6 +43,7 @@ $languageNames = array(
'bem' => 'bemba',
'bez' => 'bena',
'bg' => 'búlgarska',
+ 'bgn' => 'vesturbalotsí',
'bho' => 'bojpúrí',
'bi' => 'bíslama',
'bik' => 'bíkol',
@@ -82,6 +83,7 @@ $languageNames = array(
'cop' => 'koptíska',
'cr' => 'krí',
'crh' => 'krímtyrkneska',
+ 'crs' => 'seychelles-kreólska',
'cs' => 'tékkneska',
'csb' => 'kasúbíska',
'cu' => 'kirkjuslavneska',
@@ -107,6 +109,7 @@ $languageNames = array(
'dyo' => 'jola-fonyi',
'dyu' => 'djúla',
'dz' => 'dsongka',
+ 'dzg' => 'dazaga',
'ebu' => 'embu',
'ee' => 'ewe',
'efi' => 'efík',
@@ -122,7 +125,7 @@ $languageNames = array(
'enm' => 'miðenska',
'eo' => 'esperantó',
'es' => 'spænska',
- 'es-419' => 'rómanskamerísk spænska',
+ 'es-419' => 'rómönsk-amerísk spænska',
'es-es' => 'evrópsk spænska',
'es-mx' => 'mexíkósk spænska',
'et' => 'eistneska',
@@ -140,6 +143,7 @@ $languageNames = array(
'fr' => 'franska',
'fr-ca' => 'kanadísk franska',
'fr-ch' => 'svissnesk franska',
+ 'frc' => 'cajun-franska',
'frm' => 'miðfranska',
'fro' => 'fornfranska',
'frr' => 'norðurfrísneska',
@@ -149,6 +153,7 @@ $languageNames = array(
'ga' => 'írska',
'gaa' => 'ga',
'gag' => 'gagás',
+ 'gan' => 'gan',
'gay' => 'gajó',
'gba' => 'gbaja',
'gd' => 'skosk gelíska',
@@ -170,6 +175,7 @@ $languageNames = array(
'gwi' => 'gvísín',
'ha' => 'hása',
'hai' => 'haída',
+ 'hak' => 'hak',
'haw' => 'havaíska',
'he' => 'hebreska',
'hi' => 'hindí',
@@ -179,6 +185,7 @@ $languageNames = array(
'ho' => 'hírímótú',
'hr' => 'króatíska',
'hsb' => 'hásorbneska',
+ 'hsn' => 'hsn',
'ht' => 'haítíska',
'hu' => 'ungverska',
'hup' => 'húpa',
@@ -262,7 +269,9 @@ $languageNames = array(
'ln' => 'lingala',
'lo' => 'laó',
'lol' => 'mongó',
+ 'lou' => 'kreólska (Louisiana)',
'loz' => 'lozi',
+ 'lrc' => 'norðurlúrí',
'lt' => 'litháíska',
'lu' => 'lúbakatanga',
'lua' => 'luba-lulua',
@@ -308,12 +317,15 @@ $languageNames = array(
'mwr' => 'marvarí',
'my' => 'burmneska',
'myv' => 'ersja',
+ 'mzn' => 'masanderaní',
'na' => 'nárúska',
+ 'nan' => 'nan',
'nap' => 'napólíska',
'naq' => 'nama',
'nb' => 'norskt bókmál',
'nd' => 'norður-ndebele',
'nds' => 'lágþýska; lágsaxneska',
+ 'nds-nl' => 'lágsaxneska',
'ne' => 'nepalska',
'new' => 'nevarí',
'ng' => 'ndonga',
@@ -323,6 +335,7 @@ $languageNames = array(
'nl-be' => 'flæmska',
'nmg' => 'kwasio',
'nn' => 'nýnorska',
+ 'nnh' => 'ngiemboon',
'no' => 'norska',
'nog' => 'nógaí',
'non' => 'norræna',
@@ -350,11 +363,13 @@ $languageNames = array(
'pam' => 'pampanga',
'pap' => 'papíamentó',
'pau' => 'paláska',
+ 'pcm' => 'nígerískt pidgin',
'peo' => 'fornpersneska',
'phn' => 'fönikíska',
'pi' => 'palí',
'pl' => 'pólska',
'pon' => 'ponpeiska',
+ 'prg' => 'prússneska',
'pro' => 'fornpróvensalska',
'ps' => 'pastú',
'pt' => 'portúgalska',
@@ -382,11 +397,13 @@ $languageNames = array(
'saq' => 'sambúrú',
'sas' => 'sasak',
'sat' => 'santalí',
+ 'sba' => 'ngambay',
'sbp' => 'sangú',
'sc' => 'sardínska',
'scn' => 'sikileyska',
'sco' => 'skoska',
'sd' => 'sindí',
+ 'sdh' => 'suðurkúrdíska',
'se' => 'norðursamíska',
'seh' => 'sena',
'sel' => 'selkúp',
@@ -422,8 +439,8 @@ $languageNames = array(
'sux' => 'súmerska',
'sv' => 'sænska',
'sw' => 'svahílí',
+ 'sw-cd' => 'kongósvahílí',
'swb' => 'shimaoríska',
- 'swc' => 'Kongó-svahílí',
'syc' => 'klassísk sýrlenska',
'syr' => 'sýrlenska',
'ta' => 'tamílska',
@@ -448,6 +465,7 @@ $languageNames = array(
'tog' => 'tongverska (nyasa)',
'tpi' => 'tokpisin',
'tr' => 'tyrkneska',
+ 'trv' => 'tarókó',
'ts' => 'tsonga',
'tsi' => 'tsimsíska',
'tt' => 'tatarska',
@@ -473,18 +491,23 @@ $languageNames = array(
'vot' => 'votíska',
'vun' => 'vunjó',
'wa' => 'vallónska',
- 'wal' => 'valamó',
+ 'wae' => 'valser',
+ 'wal' => 'volayatta',
'war' => 'varaí',
'was' => 'vasjó',
+ 'wbp' => 'varlpiri',
'wo' => 'volof',
+ 'wuu' => 'wuu',
'xal' => 'kalmúkska',
'xh' => 'sósa',
'xog' => 'sóga',
'yao' => 'jaó',
'yap' => 'japíska',
+ 'yav' => 'yangben',
+ 'ybb' => 'yemba',
'yi' => 'jiddíska',
'yo' => 'jórúba',
- 'yue' => 'kantoneska',
+ 'yue' => 'kantónska',
'za' => 'súang',
'zap' => 'sapótek',
'zbl' => 'blisstákn',
@@ -497,238 +520,243 @@ $languageNames = array(
'zun' => 'súní',
'zxx' => 'ekkert tungumálaefni',
'zza' => 'zázáíska',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'ADP' => 'Andorrskur peseti',
- 'AED' => 'Arabískt dírham',
- 'AFN' => 'Afgani',
- 'ALL' => 'Albanskt lek',
- 'AMD' => 'Armenskt dramm',
- 'ANG' => 'Hollenskt Antillugyllini',
- 'AOA' => 'Angólsk kvansa',
+ 'AED' => 'arabískt dírham',
+ 'AFN' => 'afgani',
+ 'ALL' => 'albanskt lek',
+ 'AMD' => 'armenskt dramm',
+ 'ANG' => 'hollenskt Antillugyllini',
+ 'AOA' => 'angólsk kvansa',
'ARA' => 'Argentine Austral',
'ARP' => 'Argentískur pesi (1983–1985)',
- 'ARS' => 'Argentínskur pesi',
+ 'ARS' => 'argentínskur pesi',
'ATS' => 'Austurrískur skildingur',
- 'AUD' => 'Ástralskur dalur',
- 'AWG' => 'Arúbönsk flórína',
- 'AZN' => 'Aserskt manat',
- 'BAM' => 'Skiptanlegt Bosníu og Hersegóvínu-mark',
- 'BBD' => 'Barbadoskur dalur',
- 'BDT' => 'Bangladessk taka',
+ 'AUD' => 'ástralskur dalur',
+ 'AWG' => 'arúbönsk flórína',
+ 'AZN' => 'aserskt manat',
+ 'BAM' => 'skiptanlegt Bosníu og Hersegóvínu-mark',
+ 'BBD' => 'barbadoskur dalur',
+ 'BDT' => 'bangladessk taka',
'BEF' => 'Belgískur franki',
'BGL' => 'Lef',
- 'BGN' => 'Búlgarskt lef',
- 'BHD' => 'Bareinskur denari',
- 'BIF' => 'Búrúndískur franki',
+ 'BGN' => 'búlgarskt lef',
+ 'BHD' => 'bareinskur denari',
+ 'BIF' => 'búrúndískur franki',
'BMD' => 'Bermúdadalur',
- 'BND' => 'Brúneiskur dalur',
- 'BOB' => 'Bólivíani',
+ 'BND' => 'brúneiskur dalur',
+ 'BOB' => 'bólivíani',
'BOP' => 'Bólivískur pesi',
'BOV' => 'Bolivian Mvdol',
- 'BRL' => 'Brasilískt ríal',
+ 'BRL' => 'brasilískt ríal',
'BSD' => 'Bahamadalur',
- 'BTN' => 'Bútanskt núltrum',
+ 'BTN' => 'bútanskt núltrum',
'BUK' => 'Búrmverskt kjat',
- 'BWP' => 'Botsvönsk púla',
- 'BYR' => 'Hvítrússnesk rúbla',
- 'BZD' => 'Belískur dalur',
- 'CAD' => 'Kanadískur dalur',
- 'CDF' => 'Kongóskur franki',
- 'CHF' => 'Svissneskur franki',
+ 'BWP' => 'botsvönsk púla',
+ 'BYN' => 'hvítrússnesk rúbla',
+ 'BYR' => 'hvítrússnesk rúbla (2000–2016)',
+ 'BZD' => 'belískur dalur',
+ 'CAD' => 'Kanadadalur',
+ 'CDF' => 'kongóskur franki',
+ 'CHF' => 'svissneskur franki',
'CLF' => 'Chilean Unidades de Fomento',
- 'CLP' => 'Síleskur pesi',
- 'CNY' => 'Kínverskt júan',
- 'COP' => 'Kólumbískur pesi',
- 'CRC' => 'Kostarískt kólon',
+ 'CLP' => 'síleskur pesi',
+ 'CNH' => 'kínverskt júan (utan heimalands)',
+ 'CNY' => 'kínverskt júan',
+ 'COP' => 'kólumbískur pesi',
+ 'CRC' => 'kostarískt kólon',
'CSK' => 'Tékknesk króna, eldri',
- 'CUC' => 'Kúbverskur skiptanlegur pesi',
- 'CUP' => 'Kúbverskur pesi',
- 'CVE' => 'Grænhöfðeyskur skúti',
+ 'CUC' => 'kúbverskur skiptanlegur pesi',
+ 'CUP' => 'kúbverskur pesi',
+ 'CVE' => 'grænhöfðeyskur skúti',
'CYP' => 'Kýpverskt pund',
- 'CZK' => 'Tékknesk króna',
+ 'CZK' => 'tékknesk króna',
'DDM' => 'Austurþýskt mark',
'DEM' => 'Þýskt mark',
- 'DJF' => 'Djíbútískur franki',
- 'DKK' => 'Dönsk króna',
- 'DOP' => 'Dóminískur pesi',
- 'DZD' => 'Alsírskur denari',
+ 'DJF' => 'djíbútískur franki',
+ 'DKK' => 'dönsk króna',
+ 'DOP' => 'dóminískur pesi',
+ 'DZD' => 'alsírskur denari',
'ECS' => 'Ecuador Sucre',
'EEK' => 'Eistnesk króna',
- 'EGP' => 'Egypskt pund',
- 'ERN' => 'Erítresk nakfa',
+ 'EGP' => 'egypskt pund',
+ 'ERN' => 'erítresk nakfa',
'ESP' => 'Spænskur peseti',
- 'ETB' => 'Eþíópískt birr',
- 'EUR' => 'Evra',
+ 'ETB' => 'eþíópískt birr',
+ 'EUR' => 'evra',
'FIM' => 'Finnskt mark',
- 'FJD' => 'Fídjeyskur dalur',
- 'FKP' => 'Falklenskt pund',
+ 'FJD' => 'fidjeyskur dalur',
+ 'FKP' => 'falklenskt pund',
'FRF' => 'Franskur franki',
- 'GBP' => 'Sterlingspund',
- 'GEL' => 'Georgískur lari',
- 'GHS' => 'Ganverskur sedi',
+ 'GBP' => 'sterlingspund',
+ 'GEL' => 'georgískur lari',
+ 'GHS' => 'ganverskur sedi',
'GIP' => 'Gíbraltarspund',
- 'GMD' => 'Gambískur dalasi',
+ 'GMD' => 'gambískur dalasi',
'GNF' => 'Gíneufranki',
'GRD' => 'Drakma',
- 'GTQ' => 'Gvatemalskt kvesal',
+ 'GTQ' => 'gvatemalskt kvesal',
'GWE' => 'Portúgalskur, gíneskur skúti',
- 'GYD' => 'Gvæjanskur dalur',
+ 'GYD' => 'gvæjanskur dalur',
'HKD' => 'Hong Kong-dalur',
- 'HNL' => 'Hondúrsk lempíra',
- 'HRK' => 'Króatísk kúna',
- 'HTG' => 'Haítískur gúrdi',
- 'HUF' => 'Ungversk fórinta',
- 'IDR' => 'Indónesísk rúpía',
+ 'HNL' => 'hondúrsk lempíra',
+ 'HRK' => 'króatísk kúna',
+ 'HTG' => 'haítískur gúrdi',
+ 'HUF' => 'ungversk fórinta',
+ 'IDR' => 'indónesísk rúpía',
'IEP' => 'Írskt pund',
'ILP' => 'Ísraelskt pund',
- 'ILS' => 'Nýr ísraelskur sikill',
- 'INR' => 'Indversk rúpía',
- 'IQD' => 'Írakskur denari',
- 'IRR' => 'Íranskt ríal',
- 'ISK' => 'Íslensk króna',
+ 'ILS' => 'nýr ísraelskur sikill',
+ 'INR' => 'indversk rúpía',
+ 'IQD' => 'írakskur denari',
+ 'IRR' => 'íranskt ríal',
+ 'ISK' => 'íslensk króna',
'ITL' => 'Ítölsk líra',
- 'JMD' => 'Jamaískur dalur',
- 'JOD' => 'Jórdanskur denari',
- 'JPY' => 'Japanskt jen',
- 'KES' => 'Kenískur skildingur',
- 'KGS' => 'Kirgiskt som',
- 'KHR' => 'Kambódískt ríal',
- 'KMF' => 'Kómoreyskur franki',
- 'KPW' => 'Norðurkóreskt vonn',
- 'KRW' => 'Suðurkóreskt vonn',
- 'KWD' => 'Kúveiskur denari',
- 'KYD' => 'Caymaneyskur dalur',
- 'KZT' => 'Kasakst tengi',
- 'LAK' => 'Laoskt kip',
- 'LBP' => 'Líbanskt pund',
- 'LKR' => 'Srílönsk rúpía',
- 'LRD' => 'Líberískur dalur',
+ 'JMD' => 'jamaískur dalur',
+ 'JOD' => 'jórdanskur denari',
+ 'JPY' => 'japanskt jen',
+ 'KES' => 'kenískur skildingur',
+ 'KGS' => 'kirgiskt som',
+ 'KHR' => 'kambódískt ríal',
+ 'KMF' => 'kómoreyskur franki',
+ 'KPW' => 'norðurkóreskt vonn',
+ 'KRW' => 'suðurkóreskt vonn',
+ 'KWD' => 'kúveiskur denari',
+ 'KYD' => 'caymaneyskur dalur',
+ 'KZT' => 'kasakst tengi',
+ 'LAK' => 'laoskt kip',
+ 'LBP' => 'líbanskt pund',
+ 'LKR' => 'srílönsk rúpía',
+ 'LRD' => 'líberískur dalur',
'LSL' => 'Lesotho Loti',
'LTL' => 'Litháískt lít',
'LTT' => 'Lithuanian Talonas',
'LUF' => 'Lúxemborgarfranki',
'LVL' => 'Lettneskt lat',
'LVR' => 'Lettnesk rúbla',
- 'LYD' => 'Líbískur denari',
- 'MAD' => 'Marokkóskt dírham',
+ 'LYD' => 'líbískur denari',
+ 'MAD' => 'marokkóskt dírham',
'MAF' => 'Marokkóskur franki',
- 'MDL' => 'Moldavískt lei',
+ 'MDL' => 'moldavískt lei',
'MGA' => 'Madagaskararjari',
'MGF' => 'Madagaskur franki',
- 'MKD' => 'Makedónskur denari',
+ 'MKD' => 'makedónskur denari',
'MLF' => 'Malískur franki',
- 'MMK' => 'Mjanmarskt kjat',
- 'MNT' => 'Mongólskur túríkur',
- 'MOP' => 'Makaópataka',
- 'MRO' => 'Máritönsk úgía',
+ 'MMK' => 'mjanmarskt kjat',
+ 'MNT' => 'mongólskur túríkur',
+ 'MOP' => 'makaósk pataka',
+ 'MRO' => 'márítönsk úgía (1973–2017)',
+ 'MRU' => 'márítönsk úgía',
'MTL' => 'Meltnesk líra',
'MTP' => 'Maltneskt pund',
- 'MUR' => 'Máritísk rúpía',
- 'MVR' => 'Maldíveysk rúpía',
- 'MWK' => 'Malavísk kvaka',
- 'MXN' => 'Mexíkóskur pesi',
+ 'MUR' => 'máritísk rúpía',
+ 'MVR' => 'maldíveysk rúpía',
+ 'MWK' => 'malavísk kvaka',
+ 'MXN' => 'mexíkóskur pesi',
'MXP' => 'Mexíkóskur silfurpesi (1861–1992)',
'MXV' => 'Mexíkóskur pesi, UDI',
- 'MYR' => 'Malasískt ringit',
+ 'MYR' => 'malasískt ringit',
'MZE' => 'Mósambískur skúti',
- 'MZN' => 'Mósambískt metikal',
- 'NAD' => 'Namibískur dalur',
- 'NGN' => 'Nígerísk næra',
+ 'MZN' => 'mósambískt metikal',
+ 'NAD' => 'namibískur dalur',
+ 'NGN' => 'nígerísk næra',
'NIC' => 'Níkarögsk kordóva (1988–1991)',
- 'NIO' => 'Níkarögsk kordóva',
+ 'NIO' => 'níkaraögsk kordóva',
'NLG' => 'Hollenskt gyllini',
- 'NOK' => 'Norsk króna',
- 'NPR' => 'Nepölsk rúpía',
- 'NZD' => 'Nýsjálenskur dalur',
- 'OMR' => 'Ómanskt ríal',
- 'PAB' => 'Balbói',
- 'PEN' => 'Perúskt sól',
- 'PGK' => 'Papúsk kína',
- 'PHP' => 'Filippseyskur pesi',
- 'PKR' => 'Pakistönsk rúpía',
- 'PLN' => 'Pólskt slot',
+ 'NOK' => 'norsk króna',
+ 'NPR' => 'nepölsk rúpía',
+ 'NZD' => 'nýsjálenskur dalur',
+ 'OMR' => 'ómanskt ríal',
+ 'PAB' => 'balbói',
+ 'PEN' => 'perúskt sól',
+ 'PGK' => 'papúsk kína',
+ 'PHP' => 'filippseyskur pesi',
+ 'PKR' => 'pakistönsk rúpía',
+ 'PLN' => 'pólskt slot',
'PLZ' => 'Slot',
'PTE' => 'Portúgalskur skúti',
- 'PYG' => 'Paragvæskt gvaraní',
- 'QAR' => 'Katarskt ríal',
+ 'PYG' => 'paragvæskt gvaraní',
+ 'QAR' => 'katarskt ríal',
'ROL' => 'Rúmenskt lei (1952–2006)',
- 'RON' => 'Rúmenskt lei',
- 'RSD' => 'Serbneskur denari',
- 'RUB' => 'Rússnesk rúbla',
+ 'RON' => 'rúmenskt lei',
+ 'RSD' => 'serbneskur denari',
+ 'RUB' => 'rússnesk rúbla',
'RUR' => 'Rússnesk rúbla (1991–1998)',
- 'RWF' => 'Rúandskur franki',
- 'SAR' => 'Sádiarabískt ríal',
- 'SBD' => 'Salómonseyskur dalur',
+ 'RWF' => 'rúandskur franki',
+ 'SAR' => 'sádíarabískt ríal',
+ 'SBD' => 'salómonseyskur dalur',
'SCR' => 'Seychellesrúpía',
'SDD' => 'Súdanskur denari',
- 'SDG' => 'Súdanskt pund',
+ 'SDG' => 'súdanskt pund',
'SDP' => 'Súdanskt pund (1957–1998)',
- 'SEK' => 'Sænsk króna',
- 'SGD' => 'Singapúrskur dalur',
- 'SHP' => 'Helenskt pund',
+ 'SEK' => 'sænsk króna',
+ 'SGD' => 'singapúrskur dalur',
+ 'SHP' => 'helenskt pund',
'SIT' => 'Slóvenskur dalur',
'SKK' => 'Slóvakísk króna',
- 'SLL' => 'Síerraleónsk ljóna',
- 'SOS' => 'Sómalískur skildingur',
+ 'SLL' => 'síerraleónsk ljóna',
+ 'SOS' => 'sómalískur skildingur',
'SRD' => 'Súrínamdalur',
'SRG' => 'Suriname Guilder',
- 'SSP' => 'Suðursúdanskt pund',
- 'STD' => 'Saó Tóme og Prinsípe-dóbra',
+ 'SSP' => 'suðursúdanskt pund',
+ 'STD' => 'Saó Tóme og Prinsípe-dóbra (1977–2017)',
+ 'STN' => 'Saó Tóme og Prinsípe-dóbra',
'SUR' => 'Soviet Rouble',
'SVC' => 'El Salvador Colon',
- 'SYP' => 'Sýrlenskt pund',
- 'SZL' => 'Svasílenskur lílangeni',
- 'THB' => 'Taílenskt bat',
+ 'SYP' => 'sýrlenskt pund',
+ 'SZL' => 'svasílenskur lílangeni',
+ 'THB' => 'taílenskt bat',
'TJR' => 'Tadsjiksk rúbla',
- 'TJS' => 'Tadsjikskur sómóni',
+ 'TJS' => 'tadsjikskur sómóni',
'TMM' => 'Túrkmenskt manat (1993–2009)',
- 'TMT' => 'Túrkmenskt manat',
- 'TND' => 'Túniskur denari',
+ 'TMT' => 'túrkmenskt manat',
+ 'TND' => 'túnískur denari',
'TOP' => 'Tongapanga',
'TPE' => 'Tímorskur skúti',
'TRL' => 'Tyrknesk líra (1922–2005)',
- 'TRY' => 'Tyrknesk líra',
+ 'TRY' => 'tyrknesk líra',
'TTD' => 'Trínidad og Tóbagó-dalur',
- 'TWD' => 'Taívanskur dalur',
- 'TZS' => 'Tansanískur skildingur',
- 'UAH' => 'Úkraínsk hrinja',
+ 'TWD' => 'taívanskur dalur',
+ 'TZS' => 'tansanískur skildingur',
+ 'UAH' => 'úkraínsk hrinja',
'UAK' => 'Ukrainian Karbovanetz',
- 'UGX' => 'Úgandskur skildingur',
+ 'UGX' => 'úgandskur skildingur',
'USD' => 'Bandaríkjadalur',
'USN' => 'Bandaríkjadalur (næsta dag)',
'USS' => 'Bandaríkjadalur (sama dag)',
- 'UYU' => 'Úrúgvæskur pesi',
- 'UZS' => 'Úsbekskt súm',
+ 'UYU' => 'úrúgvæskur pesi',
+ 'UZS' => 'úsbekskt súm',
'VEB' => 'Bolívar í Venesúela (1871–2008)',
- 'VEF' => 'Venesúelskur bólívari',
- 'VND' => 'Víetnamskt dong',
- 'VUV' => 'Vanúatúskt vatú',
+ 'VEF' => 'venesúelskur bólívari (2008–2018)',
+ 'VES' => 'venesúelskur bólívari',
+ 'VND' => 'víetnamskt dong',
+ 'VUV' => 'vanúatúskt vatú',
'WST' => 'Samóatala',
- 'XAF' => 'Miðafrískur franki',
+ 'XAF' => 'miðafrískur franki',
'XAG' => 'unse silfur',
'XAU' => 'unse gull',
- 'XCD' => 'Austurkarabískur dalur',
+ 'XCD' => 'austurkarabískur dalur',
'XDR' => 'Sérstök dráttarréttindi',
'XFO' => 'Franskur gullfranki',
'XFU' => 'Franskur franki, UIC',
- 'XOF' => 'Vesturafrískur franki',
+ 'XOF' => 'vesturafrískur franki',
'XPD' => 'unse palladín',
- 'XPF' => 'Pólinesískur franki',
+ 'XPF' => 'pólinesískur franki',
'XPT' => 'unse platína',
- 'XXX' => 'Óþekktur gjaldmiðill',
+ 'XXX' => 'óþekktur gjaldmiðill',
'YDD' => 'Jemenskur denari',
- 'YER' => 'Jemenskt ríal',
+ 'YER' => 'jemenskt ríal',
'YUM' => 'Júgóslavneskur denari',
'ZAL' => 'Rand (viðskipta)',
- 'ZAR' => 'Suðurafrískt rand',
+ 'ZAR' => 'suðurafrískt rand',
'ZMK' => 'Zambian Kwacha (1968–2012)',
- 'ZMW' => 'Sambísk kvaka',
+ 'ZMW' => 'sambísk kvaka',
'ZWD' => 'Simbabveskur dalur',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'AED' => 'AED',
'AFN' => 'AFN',
'ALL' => 'ALL',
@@ -752,12 +780,14 @@ $currencySymbols = array(
'BSD' => 'BSD',
'BTN' => 'BTN',
'BWP' => 'BWP',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CAD',
'CDF' => 'CDF',
'CHF' => 'CHF',
'CLP' => 'CLP',
+ 'CNH' => 'CNH',
'CNY' => 'CN¥',
'COP' => 'COP',
'CRC' => 'CRC',
@@ -821,6 +851,7 @@ $currencySymbols = array(
'MNT' => 'MNT',
'MOP' => 'MOP',
'MRO' => 'MRO',
+ 'MRU' => 'MRU',
'MUR' => 'MUR',
'MVR' => 'MVR',
'MWK' => 'MWK',
@@ -858,6 +889,7 @@ $currencySymbols = array(
'SRD' => 'SRD',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'STN',
'SYP' => 'SYP',
'SZL' => 'SZL',
'THB' => 'THB',
@@ -875,6 +907,7 @@ $currencySymbols = array(
'UYU' => 'UYU',
'UZS' => 'UZS',
'VEF' => 'VEF',
+ 'VES' => 'VES',
'VND' => 'VND',
'VUV' => 'VUV',
'WST' => 'WST',
@@ -885,9 +918,9 @@ $currencySymbols = array(
'YER' => 'YER',
'ZAR' => 'ZAR',
'ZMW' => 'ZMW',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'Ascension-eyja',
'AD' => 'Andorra',
'AE' => 'Sameinuðu arabísku furstadæmin',
@@ -896,7 +929,6 @@ $countryNames = array(
'AI' => 'Angvilla',
'AL' => 'Albanía',
'AM' => 'Armenía',
- 'AN' => 'Hollensku Antillur',
'AO' => 'Angóla',
'AQ' => 'Suðurskautslandið',
'AR' => 'Argentína',
@@ -915,7 +947,7 @@ $countryNames = array(
'BH' => 'Barein',
'BI' => 'Búrúndí',
'BJ' => 'Benín',
- 'BL' => 'Saint Barthélemy',
+ 'BL' => 'Sankti Bartólómeusareyjar',
'BM' => 'Bermúdaeyjar',
'BN' => 'Brúnei',
'BO' => 'Bólivía',
@@ -963,8 +995,9 @@ $countryNames = array(
'ES' => 'Spánn',
'ET' => 'Eþíópía',
'EU' => 'Evrópusambandið',
+ 'EZ' => 'Evrusvæðið',
'FI' => 'Finnland',
- 'FJ' => 'Fídjieyjar',
+ 'FJ' => 'Fídjíeyjar',
'FK' => 'Falklandseyjar',
'FM' => 'Míkrónesía',
'FO' => 'Færeyjar',
@@ -1035,7 +1068,7 @@ $countryNames = array(
'MC' => 'Mónakó',
'MD' => 'Moldóva',
'ME' => 'Svartfjallaland',
- 'MF' => 'Saint Martin',
+ 'MF' => 'St. Martin',
'MG' => 'Madagaskar',
'MH' => 'Marshalleyjar',
'MK' => 'Makedónía',
@@ -1106,7 +1139,7 @@ $countryNames = array(
'SS' => 'Suður-Súdan',
'ST' => 'Saó Tóme og Prinsípe',
'SV' => 'El Salvador',
- 'SX' => 'Sint Maarten',
+ 'SX' => 'Sankti Martin',
'SY' => 'Sýrland',
'SZ' => 'Svasíland',
'TA' => 'Tristan da Cunha',
@@ -1129,6 +1162,7 @@ $countryNames = array(
'UA' => 'Úkraína',
'UG' => 'Úganda',
'UM' => 'Smáeyjar Bandaríkjanna',
+ 'UN' => 'SÞ',
'US' => 'BNA',
'UY' => 'Úrúgvæ',
'UZ' => 'Úsbekistan',
@@ -1147,9 +1181,11 @@ $countryNames = array(
'ZA' => 'Suður-Afríka',
'ZM' => 'Sambía',
'ZW' => 'Simbabve',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-one' => '{0} öld',
+ 'century-other' => '{0} aldir',
'day-future-one' => 'eftir {0} dag',
'day-future-other' => 'eftir {0} daga',
'day-narrow-future-one' => '+{0} dag',
@@ -1162,8 +1198,20 @@ $timeUnits = array(
'day-past-other' => 'fyrir {0} dögum',
'day-short-future-one' => 'eftir {0} dag',
'day-short-future-other' => 'eftir {0} daga',
- 'day-short-past-one' => 'fyrir {0} dögum',
+ 'day-short-past-one' => 'fyrir {0} degi',
'day-short-past-other' => 'fyrir {0} dögum',
+ 'fri-future-one' => 'eftir {0} föstudag',
+ 'fri-future-other' => 'eftir {0} föstudaga',
+ 'fri-narrow-future-one' => 'eftir {0} fös.',
+ 'fri-narrow-future-other' => 'eftir {0} fös.',
+ 'fri-narrow-past-one' => 'fyrir {0} fös.',
+ 'fri-narrow-past-other' => 'fyrir {0} fös.',
+ 'fri-past-one' => 'fyrir {0} föstudegi',
+ 'fri-past-other' => 'fyrir {0} föstudögum',
+ 'fri-short-future-one' => 'eftir {0} fös.',
+ 'fri-short-future-other' => 'eftir {0} fös.',
+ 'fri-short-past-one' => 'fyrir {0} fös.',
+ 'fri-short-past-other' => 'fyrir {0} fös.',
'hour-future-one' => 'eftir {0} klukkustund',
'hour-future-other' => 'eftir {0} klukkustundir',
'hour-narrow-future-one' => '+{0} klst.',
@@ -1196,6 +1244,18 @@ $timeUnits = array(
'minute-short-future-other' => 'eftir {0} mín.',
'minute-short-past-one' => 'fyrir {0} mín.',
'minute-short-past-other' => 'fyrir {0} mín.',
+ 'mon-future-one' => 'eftir {0} mánudag',
+ 'mon-future-other' => 'eftir {0} mánudaga',
+ 'mon-narrow-future-one' => 'eftir {0} mán.',
+ 'mon-narrow-future-other' => 'eftir {0} mán.',
+ 'mon-narrow-past-one' => 'fyrir {0} mán.',
+ 'mon-narrow-past-other' => 'fyrir {0} mán.',
+ 'mon-past-one' => 'fyrir {0} mánudegi',
+ 'mon-past-other' => 'fyrir {0} mánudögum',
+ 'mon-short-future-one' => 'eftir {0} mán.',
+ 'mon-short-future-other' => 'eftir {0} mán.',
+ 'mon-short-past-one' => 'fyrir {0} mán.',
+ 'mon-short-past-other' => 'fyrir {0} mán.',
'month-future-one' => 'eftir {0} mánuð',
'month-future-other' => 'eftir {0} mánuði',
'month-narrow-future-one' => 'eftir {0} mán.',
@@ -1224,6 +1284,18 @@ $timeUnits = array(
'quarter-short-future-other' => 'eftir {0} ársfj.',
'quarter-short-past-one' => 'fyrir {0} ársfj.',
'quarter-short-past-other' => 'fyrir {0} ársfj.',
+ 'sat-future-one' => 'eftir {0} laugardag',
+ 'sat-future-other' => 'eftir {0} laugardaga',
+ 'sat-narrow-future-one' => 'eftir {0} lau.',
+ 'sat-narrow-future-other' => 'eftir {0} lau.',
+ 'sat-narrow-past-one' => 'fyrir {0} lau.',
+ 'sat-narrow-past-other' => 'fyrir {0} lau.',
+ 'sat-past-one' => 'fyrir {0} laugardegi',
+ 'sat-past-other' => 'fyrir {0} laugardögum',
+ 'sat-short-future-one' => 'eftir {0} lau.',
+ 'sat-short-future-other' => 'eftir {0} lau.',
+ 'sat-short-past-one' => 'fyrir {0} lau.',
+ 'sat-short-past-other' => 'fyrir {0} lau.',
'second-future-one' => 'eftir {0} sekúndu',
'second-future-other' => 'eftir {0} sekúndur',
'second-narrow-future-one' => '+{0} sek.',
@@ -1238,6 +1310,54 @@ $timeUnits = array(
'second-short-future-other' => 'eftir {0} sek.',
'second-short-past-one' => 'fyrir {0} sek.',
'second-short-past-other' => 'fyrir {0} sek.',
+ 'sun-future-one' => 'eftir {0} sunnudag',
+ 'sun-future-other' => 'eftir {0} sunnudaga',
+ 'sun-narrow-future-one' => 'eftir {0} sun.',
+ 'sun-narrow-future-other' => 'eftir {0} sun.',
+ 'sun-narrow-past-one' => 'fyrir {0} sun.',
+ 'sun-narrow-past-other' => 'fyrir {0} sun.',
+ 'sun-past-one' => 'fyrir {0} sunnudegi',
+ 'sun-past-other' => 'fyrir {0} sunnudögum',
+ 'sun-short-future-one' => 'eftir {0} sun.',
+ 'sun-short-future-other' => 'eftir {0} sun.',
+ 'sun-short-past-one' => 'fyrir {0} sun.',
+ 'sun-short-past-other' => 'fyrir {0} sun.',
+ 'thu-future-one' => 'eftir {0} fimmtudag',
+ 'thu-future-other' => 'eftir {0} fimmtudaga',
+ 'thu-narrow-future-one' => 'eftir {0} fim.',
+ 'thu-narrow-future-other' => 'eftir {0} fim.',
+ 'thu-narrow-past-one' => 'fyrir {0} fim.',
+ 'thu-narrow-past-other' => 'fyrir {0} fim.',
+ 'thu-past-one' => 'fyrir {0} fimmtudegi',
+ 'thu-past-other' => 'fyrir {0} fimmtudögum',
+ 'thu-short-future-one' => 'eftir {0} fim.',
+ 'thu-short-future-other' => 'eftir {0} fim.',
+ 'thu-short-past-one' => 'fyrir {0} fim.',
+ 'thu-short-past-other' => 'fyrir {0} fim.',
+ 'tue-future-one' => 'eftir {0} þriðjudag',
+ 'tue-future-other' => 'eftir {0} þriðjudaga',
+ 'tue-narrow-future-one' => 'eftir {0} þri.',
+ 'tue-narrow-future-other' => 'eftir {0} þri.',
+ 'tue-narrow-past-one' => 'fyrir {0} þri.',
+ 'tue-narrow-past-other' => 'fyrir {0} þri.',
+ 'tue-past-one' => 'fyrir {0} þriðjudegi',
+ 'tue-past-other' => 'fyrir {0} þriðjudögum',
+ 'tue-short-future-one' => 'eftir {0} þri.',
+ 'tue-short-future-other' => 'eftir {0} þri.',
+ 'tue-short-past-one' => 'fyrir {0} þri.',
+ 'tue-short-past-other' => 'fyrir {0} þri.',
+ 'wed-future-one' => 'eftir {0} miðvikudag',
+ 'wed-future-other' => 'eftir {0} miðvikudaga',
+ 'wed-narrow-future-one' => 'eftir {0} mið.',
+ 'wed-narrow-future-other' => 'eftir {0} mið.',
+ 'wed-narrow-past-one' => 'fyrir {0} mið.',
+ 'wed-narrow-past-other' => 'fyrir {0} mið.',
+ 'wed-past-one' => 'fyrir {0} miðvikudegi',
+ 'wed-past-other' => 'fyrir {0} miðvikudögum',
+ 'wed-short-future-one' => 'eftir {0} mið.',
+ 'wed-short-future-other' => 'eftir {0} mið.',
+ 'wed-short-past-one' => 'fyrir {0} mið.',
+ 'wed-short-past-other' => 'fyrir {0} mið.',
'week-future-one' => 'eftir {0} viku',
'week-future-other' => 'eftir {0} vikur',
'week-narrow-future-one' => '+{0} viku',
@@ -1248,7 +1368,7 @@ $timeUnits = array(
'week-other' => '{0} vikur',
'week-past-one' => 'fyrir {0} viku',
'week-past-other' => 'fyrir {0} vikum',
- 'week-short-future-one' => 'eftir {0} vikur',
+ 'week-short-future-one' => 'eftir {0} viku',
'week-short-future-other' => 'eftir {0} vikur',
'week-short-past-one' => 'fyrir {0} viku',
'week-short-past-other' => 'fyrir {0} vikum',
@@ -1266,4 +1386,4 @@ $timeUnits = array(
'year-short-future-other' => 'eftir {0} ár',
'year-short-past-one' => 'fyrir {0} ári',
'year-short-past-other' => 'fyrir {0} árum',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesIt.php b/MLEB/cldr/CldrNames/CldrNamesIt.php
index 6adf680b..fc6f489e 100644
--- a/MLEB/cldr/CldrNames/CldrNamesIt.php
+++ b/MLEB/cldr/CldrNames/CldrNamesIt.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'afar',
'ab' => 'abcaso',
'ace' => 'accinese',
@@ -26,10 +26,11 @@ $languageNames = array(
'ar' => 'arabo',
'ar-001' => 'arabo moderno standard',
'arc' => 'aramaico',
- 'arn' => 'araucano',
+ 'arn' => 'mapudungun',
'aro' => 'araona',
'arp' => 'arapaho',
'arq' => 'arabo algerino',
+ 'ars' => 'arabo najd',
'arw' => 'aruaco',
'ary' => 'arabo marocchino',
'arz' => 'arabo egiziano',
@@ -42,7 +43,6 @@ $languageNames = array(
'awa' => 'awadhi',
'ay' => 'aymara',
'az' => 'azerbaigiano',
- 'azb' => 'azero meridionale',
'ba' => 'baschiro',
'bal' => 'beluci',
'ban' => 'balinese',
@@ -59,6 +59,7 @@ $languageNames = array(
'bfd' => 'bafut',
'bfq' => 'badaga',
'bg' => 'bulgaro',
+ 'bgn' => 'beluci occidentale',
'bho' => 'bhojpuri',
'bi' => 'bislama',
'bik' => 'bicol',
@@ -106,10 +107,11 @@ $languageNames = array(
'cps' => 'capiznon',
'cr' => 'cree',
'crh' => 'turco crimeo',
+ 'crs' => 'creolo delle Seychelles',
'cs' => 'ceco',
'csb' => 'kashubian',
'cu' => 'slavo della Chiesa',
- 'cv' => 'chuvash',
+ 'cv' => 'ciuvascio',
'cy' => 'gallese',
'da' => 'danese',
'dak' => 'dakota',
@@ -197,13 +199,13 @@ $languageNames = array(
'gon' => 'gondi',
'gor' => 'gorontalo',
'got' => 'gotico',
- 'grb' => 'gerbo',
+ 'grb' => 'grebo',
'grc' => 'greco antico',
'gsw' => 'tedesco svizzero',
'gu' => 'gujarati',
'guc' => 'wayuu',
'guz' => 'gusii',
- 'gv' => 'manx',
+ 'gv' => 'mannese',
'gwi' => 'gwichʼin',
'ha' => 'hausa',
'hai' => 'haida',
@@ -212,7 +214,7 @@ $languageNames = array(
'he' => 'ebraico',
'hi' => 'hindi',
'hif' => 'hindi figiano',
- 'hil' => 'hiligayna',
+ 'hil' => 'ilongo',
'hit' => 'hittite',
'hmn' => 'hmong',
'ho' => 'hiri motu',
@@ -255,7 +257,7 @@ $languageNames = array(
'kaj' => 'kai',
'kam' => 'kamba',
'kaw' => 'kawi',
- 'kbd' => 'kabardia',
+ 'kbd' => 'cabardino',
'kbl' => 'kanembu',
'kcg' => 'tyap',
'kde' => 'makonde',
@@ -272,7 +274,7 @@ $languageNames = array(
'kj' => 'kuanyama',
'kk' => 'kazako',
'kkj' => 'kako',
- 'kl' => 'kalaallisut',
+ 'kl' => 'groenlandese',
'kln' => 'kalenjin',
'km' => 'khmer',
'kmb' => 'kimbundu',
@@ -295,17 +297,17 @@ $languageNames = array(
'kut' => 'kutenai',
'kv' => 'komi',
'kw' => 'cornico',
- 'ky' => 'chirghiso',
+ 'ky' => 'kirghiso',
'la' => 'latino',
'lad' => 'giudeo-spagnolo',
'lag' => 'langi',
'lah' => 'lahnda',
'lam' => 'lamba',
'lb' => 'lussemburghese',
- 'lez' => 'lezghian',
+ 'lez' => 'lesgo',
'lfn' => 'Lingua Franca Nova',
'lg' => 'ganda',
- 'li' => 'limburgese',
+ 'li' => 'limburghese',
'lij' => 'ligure',
'liv' => 'livone',
'lkt' => 'lakota',
@@ -313,7 +315,9 @@ $languageNames = array(
'ln' => 'lingala',
'lo' => 'lao',
'lol' => 'lolo bantu',
+ 'lou' => 'creolo della Louisiana',
'loz' => 'lozi',
+ 'lrc' => 'luri settentrionale',
'lt' => 'lituano',
'ltg' => 'letgallo',
'lu' => 'luba-katanga',
@@ -375,6 +379,7 @@ $languageNames = array(
'nb' => 'norvegese bokmål',
'nd' => 'ndebele del nord',
'nds' => 'basso tedesco',
+ 'nds-nl' => 'basso tedesco olandese',
'ne' => 'nepalese',
'new' => 'newari',
'ng' => 'ndonga',
@@ -404,7 +409,7 @@ $languageNames = array(
'oc' => 'occitano',
'oj' => 'ojibwa',
'om' => 'oromo',
- 'or' => 'oriya',
+ 'or' => 'odia',
'os' => 'ossetico',
'osa' => 'osage',
'ota' => 'turco ottomano',
@@ -415,6 +420,7 @@ $languageNames = array(
'pap' => 'papiamento',
'pau' => 'palau',
'pcd' => 'piccardo',
+ 'pcm' => 'pidgin nigeriano',
'pdc' => 'tedesco della Pennsylvania',
'peo' => 'persiano antico',
'pfl' => 'tedesco palatino',
@@ -466,6 +472,7 @@ $languageNames = array(
'sco' => 'scozzese',
'sd' => 'sindhi',
'sdc' => 'sassarese',
+ 'sdh' => 'curdo meridionale',
'se' => 'sami del nord',
'see' => 'seneca',
'seh' => 'sena',
@@ -478,7 +485,7 @@ $languageNames = array(
'sh' => 'serbo-croato',
'shi' => 'tashelhit',
'shn' => 'shan',
- 'shu' => 'chadian arabic',
+ 'shu' => 'arabo ciadiano',
'si' => 'singalese',
'sid' => 'sidamo',
'sk' => 'slovacco',
@@ -508,8 +515,8 @@ $languageNames = array(
'sux' => 'sumero',
'sv' => 'svedese',
'sw' => 'swahili',
+ 'sw-cd' => 'swahili del Congo',
'swb' => 'comoriano',
- 'swc' => 'congo swahili',
'syc' => 'siriaco classico',
'syr' => 'siriaco',
'szl' => 'slesiano',
@@ -559,7 +566,7 @@ $languageNames = array(
'umb' => 'mbundu',
'und' => 'lingua imprecisata',
'ur' => 'urdu',
- 'uz' => 'usbeco',
+ 'uz' => 'uzbeco',
'vai' => 'vai',
've' => 'venda',
'vec' => 'veneto',
@@ -575,6 +582,7 @@ $languageNames = array(
'wal' => 'walamo',
'war' => 'waray',
'was' => 'washo',
+ 'wbp' => 'warlpiri',
'wo' => 'wolof',
'wuu' => 'wu',
'xal' => 'kalmyk',
@@ -602,16 +610,16 @@ $languageNames = array(
'zun' => 'zuni',
'zxx' => 'nessun contenuto linguistico',
'zza' => 'zaza',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'ADP' => 'peseta andorrana',
'AED' => 'dirham degli Emirati Arabi Uniti',
'AFA' => 'afgani (1927–2002)',
'AFN' => 'afghani',
'ALL' => 'lek albanese',
'AMD' => 'dram armeno',
- 'ANG' => 'fiorino delle Antille Olandesi',
+ 'ANG' => 'fiorino delle Antille olandesi',
'AOA' => 'kwanza angolano',
'AOK' => 'kwanza angolano (1977–1990)',
'AON' => 'nuovo kwanza angolano (1990–2000)',
@@ -625,7 +633,7 @@ $currencyNames = array(
'AZM' => 'manat azero (1993–2006)',
'AZN' => 'manat azero',
'BAD' => 'dinar Bosnia-Herzegovina',
- 'BAM' => 'marco conv. Bosnia-Erzegovina',
+ 'BAM' => 'marco convertibile della Bosnia-Herzegovina',
'BBD' => 'dollaro di Barbados',
'BDT' => 'taka bangladese',
'BEC' => 'franco belga (convertibile)',
@@ -647,17 +655,19 @@ $currencyNames = array(
'BRN' => 'cruzado novo brasiliano',
'BRR' => 'cruzeiro brasiliano',
'BSD' => 'dollaro delle Bahamas',
- 'BTN' => 'ngultrum butanese',
+ 'BTN' => 'ngultrum bhutanese',
'BUK' => 'kyat birmano',
'BWP' => 'pula del Botswana',
'BYB' => 'nuovo rublo bielorusso (1994–1999)',
- 'BYR' => 'rublo bielorusso',
+ 'BYN' => 'rublo bielorusso',
+ 'BYR' => 'rublo bielorusso (2000–2016)',
'BZD' => 'dollaro del Belize',
'CAD' => 'dollaro canadese',
'CDF' => 'franco congolese',
'CHF' => 'franco svizzero',
'CLF' => 'unidades de fomento chilene',
'CLP' => 'peso cileno',
+ 'CNH' => 'CNH',
'CNY' => 'renminbi cinese',
'COP' => 'peso colombiano',
'CRC' => 'colón costaricano',
@@ -665,12 +675,12 @@ $currencyNames = array(
'CSK' => 'corona forte cecoslovacca',
'CUC' => 'peso cubano convertibile',
'CUP' => 'peso cubano',
- 'CVE' => 'escudo del Capo Verde',
+ 'CVE' => 'escudo capoverdiano',
'CYP' => 'sterlina cipriota',
'CZK' => 'corona ceca',
'DDM' => 'ostmark della Germania Orientale',
'DEM' => 'marco tedesco',
- 'DJF' => 'franco gibutiano',
+ 'DJF' => 'franco di Gibuti',
'DKK' => 'corona danese',
'DOP' => 'peso dominicano',
'DZD' => 'dinaro algerino',
@@ -682,19 +692,19 @@ $currencyNames = array(
'ESA' => 'peseta spagnola account',
'ESB' => 'peseta spagnola account convertibile',
'ESP' => 'peseta spagnola',
- 'ETB' => 'birr etiopico',
+ 'ETB' => 'birr etiope',
'EUR' => 'euro',
'FIM' => 'markka finlandese',
'FJD' => 'dollaro delle Figi',
'FKP' => 'sterlina delle Falkland',
'FRF' => 'franco francese',
- 'GBP' => 'sterlina inglese',
+ 'GBP' => 'sterlina britannica',
'GEK' => 'kupon larit georgiano',
'GEL' => 'lari georgiano',
'GHC' => 'cedi del Ghana',
'GHS' => 'cedi ghanese',
'GIP' => 'sterlina di Gibilterra',
- 'GMD' => 'dalasi del Gambia',
+ 'GMD' => 'dalasi gambiano',
'GNF' => 'franco della Guinea',
'GNS' => 'syli della Guinea',
'GQE' => 'ekwele della Guinea Equatoriale',
@@ -722,9 +732,9 @@ $currencyNames = array(
'JOD' => 'dinaro giordano',
'JPY' => 'yen giapponese',
'KES' => 'scellino keniota',
- 'KGS' => 'som Kirghiso',
+ 'KGS' => 'som kirghiso',
'KHR' => 'riel cambogiano',
- 'KMF' => 'franco Comoriano',
+ 'KMF' => 'franco comoriano',
'KPW' => 'won nordcoreano',
'KRW' => 'won sudcoreano',
'KWD' => 'dinaro kuwaitiano',
@@ -748,12 +758,13 @@ $currencyNames = array(
'MDL' => 'leu moldavo',
'MGA' => 'ariary malgascio',
'MGF' => 'franco malgascio',
- 'MKD' => 'dinaro macedone',
+ 'MKD' => 'denar macedone',
'MLF' => 'franco di Mali',
'MMK' => 'kyat di Myanmar',
'MNT' => 'tugrik mongolo',
'MOP' => 'pataca di Macao',
- 'MRO' => 'ouguiya della Mauritania',
+ 'MRO' => 'ouguiya della Mauritania (1973–2017)',
+ 'MRU' => 'ouguiya della Mauritania',
'MTL' => 'lira maltese',
'MTP' => 'sterlina maltese',
'MUR' => 'rupia mauriziana',
@@ -762,7 +773,7 @@ $currencyNames = array(
'MXN' => 'peso messicano',
'MXP' => 'peso messicano d’argento (1861–1992)',
'MXV' => 'unidad de inversion (UDI) messicana',
- 'MYR' => 'ringgit della Malesia',
+ 'MYR' => 'ringgit malese',
'MZE' => 'escudo del Mozambico',
'MZN' => 'metical mozambicano',
'NAD' => 'dollaro namibiano',
@@ -773,19 +784,19 @@ $currencyNames = array(
'NOK' => 'corona norvegese',
'NPR' => 'rupia nepalese',
'NZD' => 'dollaro neozelandese',
- 'OMR' => 'rial dell’Oman',
- 'PAB' => 'balboa di Panama',
+ 'OMR' => 'rial omanita',
+ 'PAB' => 'balboa panamense',
'PEI' => 'inti peruviano',
- 'PEN' => 'sol nuevo peruviano',
- 'PES' => 'sol peruviano',
- 'PGK' => 'kina della Papua Nuova Guinea',
- 'PHP' => 'peso delle Filippine',
- 'PKR' => 'rupia del Pakistan',
+ 'PEN' => 'sol peruviano',
+ 'PES' => 'sol peruviano (1863–1965)',
+ 'PGK' => 'kina papuana',
+ 'PHP' => 'peso filippino',
+ 'PKR' => 'rupia pakistana',
'PLN' => 'złoty polacco',
'PLZ' => 'złoty Polacco (1950–1995)',
'PTE' => 'escudo portoghese',
- 'PYG' => 'guaraní del Paraguay',
- 'QAR' => 'rial del Qatar',
+ 'PYG' => 'guaraní paraguayano',
+ 'QAR' => 'rial qatariano',
'RHD' => 'dollaro della Rhodesia',
'ROL' => 'leu della Romania',
'RON' => 'leu rumeno',
@@ -794,7 +805,7 @@ $currencyNames = array(
'RUR' => 'rublo della CSI',
'RWF' => 'franco ruandese',
'SAR' => 'riyal saudita',
- 'SBD' => 'dollaro delle Isole Solomon',
+ 'SBD' => 'dollaro delle Isole Salomone',
'SCR' => 'rupia delle Seychelles',
'SDD' => 'dinaro sudanese',
'SDG' => 'sterlina sudanese',
@@ -805,21 +816,22 @@ $currencyNames = array(
'SKK' => 'corona slovacca',
'SLL' => 'leone della Sierra Leone',
'SOS' => 'scellino somalo',
- 'SRD' => 'dollaro surinamese',
+ 'SRD' => 'dollaro del Suriname',
'SRG' => 'fiorino del Suriname',
- 'SSP' => 'sterlina sudsudanese',
- 'STD' => 'dobra di Sao Tomé e Principe',
+ 'SSP' => 'sterlina sud-sudanese',
+ 'STD' => 'dobra di Sao Tomé e Principe (1977–2017)',
+ 'STN' => 'dobra di Sao Tomé e Príncipe',
'SUR' => 'rublo sovietico',
'SVC' => 'colón salvadoregno',
'SYP' => 'lira siriana',
'SZL' => 'lilangeni dello Swaziland',
'THB' => 'baht thailandese',
'TJR' => 'rublo del Tajikistan',
- 'TJS' => 'somoni del Tajikistan',
+ 'TJS' => 'somoni tagiko',
'TMM' => 'manat turkmeno (1993–2009)',
'TMT' => 'manat turkmeno',
'TND' => 'dinaro tunisino',
- 'TOP' => 'paʻanga di Tonga',
+ 'TOP' => 'paʻanga tongano',
'TPE' => 'escudo di Timor',
'TRL' => 'lira turca (1922–2005)',
'TRY' => 'lira turca',
@@ -835,13 +847,14 @@ $currencyNames = array(
'USS' => 'dollaro statunitense (same day)',
'UYI' => 'peso uruguaiano in unità indicizzate',
'UYP' => 'peso uruguaiano (1975–1993)',
- 'UYU' => 'peso uruguaiano',
- 'UZS' => 'sum dell’Uzbekistan',
+ 'UYU' => 'peso uruguayano',
+ 'UZS' => 'sum uzbeco',
'VEB' => 'bolivar venezuelano (1871–2008)',
- 'VEF' => 'bolívar venezuelano',
+ 'VEF' => 'bolívar venezuelano (2008–2018)',
+ 'VES' => 'bolívar venezuelano',
'VND' => 'dong vietnamita',
'VUV' => 'vatu di Vanuatu',
- 'WST' => 'tala della Samoa Occidentale',
+ 'WST' => 'tala samoano',
'XAF' => 'franco CFA BEAC',
'XAG' => 'argento',
'XAU' => 'oro',
@@ -849,7 +862,7 @@ $currencyNames = array(
'XBB' => 'unità monetaria europea',
'XBC' => 'unità di acconto europea (XBC)',
'XBD' => 'unità di acconto europea (XBD)',
- 'XCD' => 'dollaro dei Caraibi Orientali',
+ 'XCD' => 'dollaro dei Caraibi orientali',
'XDR' => 'diritti speciali di incasso',
'XFO' => 'franco oro francese',
'XFU' => 'franco UIC francese',
@@ -873,9 +886,9 @@ $currencyNames = array(
'ZRZ' => 'zaire dello Zaire',
'ZWD' => 'dollaro dello Zimbabwe',
'ZWL' => 'dollaro zimbabwiano (2009)',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'AED' => 'AED',
'AFN' => 'AFN',
'ALL' => 'ALL',
@@ -899,12 +912,14 @@ $currencySymbols = array(
'BSD' => 'BSD',
'BTN' => 'BTN',
'BWP' => 'BWP',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CA$',
'CDF' => 'CDF',
'CHF' => 'CHF',
'CLP' => 'CLP',
+ 'CNH' => 'CNH',
'CNY' => 'CN¥',
'COP' => 'COP',
'CRC' => 'CRC',
@@ -968,6 +983,7 @@ $currencySymbols = array(
'MNT' => 'MNT',
'MOP' => 'MOP',
'MRO' => 'MRO',
+ 'MRU' => 'MRU',
'MUR' => 'MUR',
'MVR' => 'MVR',
'MWK' => 'MWK',
@@ -1005,6 +1021,7 @@ $currencySymbols = array(
'SRD' => 'SRD',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'STN',
'SYP' => 'SYP',
'SZL' => 'SZL',
'THB' => '฿',
@@ -1018,10 +1035,11 @@ $currencySymbols = array(
'TZS' => 'TZS',
'UAH' => 'UAH',
'UGX' => 'UGX',
- 'USD' => 'US$',
+ 'USD' => 'USD',
'UYU' => 'UYU',
'UZS' => 'UZS',
'VEF' => 'VEF',
+ 'VES' => 'VES',
'VND' => '₫',
'VUV' => 'VUV',
'WST' => 'WST',
@@ -1032,10 +1050,10 @@ $currencySymbols = array(
'YER' => 'YER',
'ZAR' => 'ZAR',
'ZMW' => 'ZMW',
-);
+];
-$countryNames = array(
- 'AC' => 'Isola di Ascensione',
+$countryNames = [
+ 'AC' => 'Isola Ascensione',
'AD' => 'Andorra',
'AE' => 'Emirati Arabi Uniti',
'AF' => 'Afghanistan',
@@ -1043,17 +1061,16 @@ $countryNames = array(
'AI' => 'Anguilla',
'AL' => 'Albania',
'AM' => 'Armenia',
- 'AN' => 'Antille Olandesi',
'AO' => 'Angola',
'AQ' => 'Antartide',
'AR' => 'Argentina',
- 'AS' => 'Samoa Americane',
+ 'AS' => 'Samoa americane',
'AT' => 'Austria',
'AU' => 'Australia',
'AW' => 'Aruba',
- 'AX' => 'Isole Aland',
+ 'AX' => 'Isole Åland',
'AZ' => 'Azerbaigian',
- 'BA' => 'Bosnia-Erzegovina',
+ 'BA' => 'Bosnia ed Erzegovina',
'BB' => 'Barbados',
'BD' => 'Bangladesh',
'BE' => 'Belgio',
@@ -1066,7 +1083,7 @@ $countryNames = array(
'BM' => 'Bermuda',
'BN' => 'Brunei',
'BO' => 'Bolivia',
- 'BQ' => 'Caraibi Olandesi',
+ 'BQ' => 'Caraibi olandesi',
'BR' => 'Brasile',
'BS' => 'Bahamas',
'BT' => 'Bhutan',
@@ -1075,7 +1092,7 @@ $countryNames = array(
'BY' => 'Bielorussia',
'BZ' => 'Belize',
'CA' => 'Canada',
- 'CC' => 'Isole Cocos',
+ 'CC' => 'Isole Cocos (Keeling)',
'CD' => 'Congo - Kinshasa',
'CF' => 'Repubblica Centrafricana',
'CG' => 'Congo-Brazzaville',
@@ -1091,9 +1108,9 @@ $countryNames = array(
'CU' => 'Cuba',
'CV' => 'Capo Verde',
'CW' => 'Curaçao',
- 'CX' => 'Isola di Christmas',
+ 'CX' => 'Isola Christmas',
'CY' => 'Cipro',
- 'CZ' => 'Repubblica Ceca',
+ 'CZ' => 'Cechia',
'DE' => 'Germania',
'DG' => 'Diego Garcia',
'DJ' => 'Gibuti',
@@ -1105,22 +1122,23 @@ $countryNames = array(
'EC' => 'Ecuador',
'EE' => 'Estonia',
'EG' => 'Egitto',
- 'EH' => 'Sahara Occidentale',
+ 'EH' => 'Sahara occidentale',
'ER' => 'Eritrea',
'ES' => 'Spagna',
'ET' => 'Etiopia',
'EU' => 'Unione Europea',
+ 'EZ' => 'Eurozona',
'FI' => 'Finlandia',
'FJ' => 'Figi',
'FK' => 'Isole Falkland',
'FM' => 'Micronesia',
- 'FO' => 'Isole Faroe',
+ 'FO' => 'Isole Fær Øer',
'FR' => 'Francia',
'GA' => 'Gabon',
- 'GB' => 'GB',
+ 'GB' => 'UK',
'GD' => 'Grenada',
'GE' => 'Georgia',
- 'GF' => 'Guiana Francese',
+ 'GF' => 'Guyana francese',
'GG' => 'Guernsey',
'GH' => 'Ghana',
'GI' => 'Gibilterra',
@@ -1130,12 +1148,12 @@ $countryNames = array(
'GP' => 'Guadalupa',
'GQ' => 'Guinea Equatoriale',
'GR' => 'Grecia',
- 'GS' => 'Georgia del Sud e isole Sandwich meridionali',
+ 'GS' => 'Georgia del Sud e Sandwich australi',
'GT' => 'Guatemala',
'GU' => 'Guam',
'GW' => 'Guinea-Bissau',
'GY' => 'Guyana',
- 'HK' => 'Hong-Kong',
+ 'HK' => 'Hong Kong',
'HM' => 'Isole Heard e McDonald',
'HN' => 'Honduras',
'HR' => 'Croazia',
@@ -1147,7 +1165,7 @@ $countryNames = array(
'IL' => 'Israele',
'IM' => 'Isola di Man',
'IN' => 'India',
- 'IO' => 'Territorio Britannico dell’Oceano Indiano',
+ 'IO' => 'Territorio britannico dell’Oceano Indiano',
'IQ' => 'Iraq',
'IR' => 'Iran',
'IS' => 'Islanda',
@@ -1190,7 +1208,7 @@ $countryNames = array(
'MM' => 'Myanmar (Birmania)',
'MN' => 'Mongolia',
'MO' => 'Macao',
- 'MP' => 'Isole Marianne Settentrionali',
+ 'MP' => 'Isole Marianne settentrionali',
'MQ' => 'Martinica',
'MR' => 'Mauritania',
'MS' => 'Montserrat',
@@ -1199,7 +1217,7 @@ $countryNames = array(
'MV' => 'Maldive',
'MW' => 'Malawi',
'MX' => 'Messico',
- 'MY' => 'Malesia',
+ 'MY' => 'Malaysia',
'MZ' => 'Mozambico',
'NA' => 'Namibia',
'NC' => 'Nuova Caledonia',
@@ -1216,12 +1234,12 @@ $countryNames = array(
'OM' => 'Oman',
'PA' => 'Panamá',
'PE' => 'Perù',
- 'PF' => 'Polinesia Francese',
+ 'PF' => 'Polinesia francese',
'PG' => 'Papua Nuova Guinea',
'PH' => 'Filippine',
'PK' => 'Pakistan',
'PL' => 'Polonia',
- 'PM' => 'Saint Pierre e Miquelon',
+ 'PM' => 'Saint-Pierre e Miquelon',
'PN' => 'Isole Pitcairn',
'PR' => 'Portorico',
'PS' => 'Palestina',
@@ -1230,13 +1248,13 @@ $countryNames = array(
'PY' => 'Paraguay',
'QA' => 'Qatar',
'QO' => 'Oceania lontana',
- 'RE' => 'Réunion',
+ 'RE' => 'Riunione',
'RO' => 'Romania',
'RS' => 'Serbia',
- 'RU' => 'Federazione Russa',
+ 'RU' => 'Russia',
'RW' => 'Ruanda',
'SA' => 'Arabia Saudita',
- 'SB' => 'Isole Solomon',
+ 'SB' => 'Isole Salomone',
'SC' => 'Seychelles',
'SD' => 'Sudan',
'SE' => 'Svezia',
@@ -1250,7 +1268,7 @@ $countryNames = array(
'SN' => 'Senegal',
'SO' => 'Somalia',
'SR' => 'Suriname',
- 'SS' => 'Sudan del Sud',
+ 'SS' => 'Sud Sudan',
'ST' => 'São Tomé e Príncipe',
'SV' => 'El Salvador',
'SX' => 'Sint Maarten',
@@ -1259,9 +1277,9 @@ $countryNames = array(
'TA' => 'Tristan da Cunha',
'TC' => 'Isole Turks e Caicos',
'TD' => 'Ciad',
- 'TF' => 'Territori australi francesi',
+ 'TF' => 'Terre australi francesi',
'TG' => 'Togo',
- 'TH' => 'Tailandia',
+ 'TH' => 'Thailandia',
'TJ' => 'Tagikistan',
'TK' => 'Tokelau',
'TL' => 'Timor Est',
@@ -1275,12 +1293,13 @@ $countryNames = array(
'TZ' => 'Tanzania',
'UA' => 'Ucraina',
'UG' => 'Uganda',
- 'UM' => 'Isole minori lontane dagli USA',
+ 'UM' => 'Altre isole americane del Pacifico',
+ 'UN' => 'ONU',
'US' => 'USA',
'UY' => 'Uruguay',
'UZ' => 'Uzbekistan',
'VA' => 'Città del Vaticano',
- 'VC' => 'Saint Vincent e Grenadines',
+ 'VC' => 'Saint Vincent e Grenadine',
'VE' => 'Venezuela',
'VG' => 'Isole Vergini Britanniche',
'VI' => 'Isole Vergini Americane',
@@ -1294,9 +1313,11 @@ $countryNames = array(
'ZA' => 'Sudafrica',
'ZM' => 'Zambia',
'ZW' => 'Zimbabwe',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-one' => '{0} secolo',
+ 'century-other' => '{0} secoli',
'day-future-one' => 'tra {0} giorno',
'day-future-other' => 'tra {0} giorni',
'day-narrow-future-one' => 'tra {0} g',
@@ -1311,6 +1332,18 @@ $timeUnits = array(
'day-short-future-other' => 'tra {0} gg',
'day-short-past-one' => '{0} g fa',
'day-short-past-other' => '{0} gg fa',
+ 'fri-future-one' => 'tra {0} venerdì',
+ 'fri-future-other' => 'tra {0} venerdì',
+ 'fri-narrow-future-one' => 'tra {0} ven.',
+ 'fri-narrow-future-other' => 'tra {0} ven.',
+ 'fri-narrow-past-one' => '{0} ven. fa',
+ 'fri-narrow-past-other' => '{0} ven. fa',
+ 'fri-past-one' => '{0} venerdì fa',
+ 'fri-past-other' => '{0} venerdì fa',
+ 'fri-short-future-one' => 'tra {0} ven.',
+ 'fri-short-future-other' => 'tra {0} ven.',
+ 'fri-short-past-one' => '{0} ven. fa',
+ 'fri-short-past-other' => '{0} ven. fa',
'hour-future-one' => 'tra {0} ora',
'hour-future-other' => 'tra {0} ore',
'hour-narrow-future-one' => 'tra {0} h',
@@ -1321,10 +1354,10 @@ $timeUnits = array(
'hour-other' => '{0} ore',
'hour-past-one' => '{0} ora fa',
'hour-past-other' => '{0} ore fa',
- 'hour-short-future-one' => 'tra {0} h.',
- 'hour-short-future-other' => 'tra {0} h.',
- 'hour-short-past-one' => '{0} h. fa',
- 'hour-short-past-other' => '{0} h. fa',
+ 'hour-short-future-one' => 'tra {0} h',
+ 'hour-short-future-other' => 'tra {0} h',
+ 'hour-short-past-one' => '{0} h fa',
+ 'hour-short-past-other' => '{0} h fa',
'microsecond-one' => '{0} microsecondo',
'microsecond-other' => '{0} microsecondi',
'millisecond-one' => '{0} millisecondo',
@@ -1339,10 +1372,22 @@ $timeUnits = array(
'minute-other' => '{0} minuti',
'minute-past-one' => '{0} minuto fa',
'minute-past-other' => '{0} minuti fa',
- 'minute-short-future-one' => 'tra {0} min.',
- 'minute-short-future-other' => 'tra {0} min.',
- 'minute-short-past-one' => '{0} min. fa',
- 'minute-short-past-other' => '{0} min. fa',
+ 'minute-short-future-one' => 'tra {0} min',
+ 'minute-short-future-other' => 'tra {0} min',
+ 'minute-short-past-one' => '{0} min fa',
+ 'minute-short-past-other' => '{0} min fa',
+ 'mon-future-one' => 'tra {0} lunedì',
+ 'mon-future-other' => 'tra {0} lunedì',
+ 'mon-narrow-future-one' => 'tra {0} lun.',
+ 'mon-narrow-future-other' => 'tra {0} lun.',
+ 'mon-narrow-past-one' => '{0} lun. fa',
+ 'mon-narrow-past-other' => '{0} lun. fa',
+ 'mon-past-one' => '{0} lunedì fa',
+ 'mon-past-other' => '{0} lunedì fa',
+ 'mon-short-future-one' => 'tra {0} lun.',
+ 'mon-short-future-other' => 'tra {0} lun.',
+ 'mon-short-past-one' => '{0} lun. fa',
+ 'mon-short-past-other' => '{0} lun. fa',
'month-future-one' => 'tra {0} mese',
'month-future-other' => 'tra {0} mesi',
'month-narrow-future-one' => 'tra {0} mese',
@@ -1371,6 +1416,18 @@ $timeUnits = array(
'quarter-short-future-other' => 'tra {0} trim.',
'quarter-short-past-one' => '{0} trim. fa',
'quarter-short-past-other' => '{0} trim. fa',
+ 'sat-future-one' => 'tra {0} sabato',
+ 'sat-future-other' => 'tra {0} sabati',
+ 'sat-narrow-future-one' => 'tra {0} sab.',
+ 'sat-narrow-future-other' => 'tra {0} sab.',
+ 'sat-narrow-past-one' => '{0} sab. fa',
+ 'sat-narrow-past-other' => '{0} sab. fa',
+ 'sat-past-one' => '{0} sabato fa',
+ 'sat-past-other' => '{0} sabati fa',
+ 'sat-short-future-one' => 'tra {0} sab.',
+ 'sat-short-future-other' => 'tra {0} sab.',
+ 'sat-short-past-one' => '{0} sab. fa',
+ 'sat-short-past-other' => '{0} sab. fa',
'second-future-one' => 'tra {0} secondo',
'second-future-other' => 'tra {0} secondi',
'second-narrow-future-one' => 'tra {0} s',
@@ -1381,10 +1438,58 @@ $timeUnits = array(
'second-other' => '{0} secondi',
'second-past-one' => '{0} secondo fa',
'second-past-other' => '{0} secondi fa',
- 'second-short-future-one' => 'tra {0} sec.',
+ 'second-short-future-one' => 'tra {0} s',
'second-short-future-other' => 'tra {0} sec.',
- 'second-short-past-one' => '{0} sec. fa',
+ 'second-short-past-one' => '{0} s fa',
'second-short-past-other' => '{0} sec. fa',
+ 'sun-future-one' => 'tra {0} domenica',
+ 'sun-future-other' => 'tra {0} domeniche',
+ 'sun-narrow-future-one' => 'tra {0} dom.',
+ 'sun-narrow-future-other' => 'tra {0} dom.',
+ 'sun-narrow-past-one' => '{0} dom. fa',
+ 'sun-narrow-past-other' => '{0} dom. fa',
+ 'sun-past-one' => '{0} domenica fa',
+ 'sun-past-other' => '{0} domeniche fa',
+ 'sun-short-future-one' => 'tra {0} dom.',
+ 'sun-short-future-other' => 'tra {0} dom.',
+ 'sun-short-past-one' => '{0} dom. fa',
+ 'sun-short-past-other' => '{0} dom. fa',
+ 'thu-future-one' => 'tra {0} giovedì',
+ 'thu-future-other' => 'tra {0} giovedì',
+ 'thu-narrow-future-one' => 'tra {0} gio.',
+ 'thu-narrow-future-other' => 'tra {0} gio.',
+ 'thu-narrow-past-one' => '{0} gio. fa',
+ 'thu-narrow-past-other' => '{0} gio. fa',
+ 'thu-past-one' => '{0} giovedì fa',
+ 'thu-past-other' => '{0} giovedì fa',
+ 'thu-short-future-one' => 'tra {0} gio.',
+ 'thu-short-future-other' => 'tra {0} gio.',
+ 'thu-short-past-one' => '{0} gio. fa',
+ 'thu-short-past-other' => '{0} gio. fa',
+ 'tue-future-one' => 'tra {0} martedì',
+ 'tue-future-other' => 'tra {0} martedì',
+ 'tue-narrow-future-one' => 'tra {0} mar.',
+ 'tue-narrow-future-other' => 'tra {0} mar.',
+ 'tue-narrow-past-one' => '{0} mar. fa',
+ 'tue-narrow-past-other' => '{0} mar. fa',
+ 'tue-past-one' => '{0} martedì fa',
+ 'tue-past-other' => '{0} martedì fa',
+ 'tue-short-future-one' => 'tra {0} mar.',
+ 'tue-short-future-other' => 'tra {0} mar.',
+ 'tue-short-past-one' => '{0} mar. fa',
+ 'tue-short-past-other' => '{0} mar. fa',
+ 'wed-future-one' => 'tra {0} mercoledì',
+ 'wed-future-other' => 'tra {0} mercoledì',
+ 'wed-narrow-future-one' => 'tra {0} mer.',
+ 'wed-narrow-future-other' => 'tra {0} mer.',
+ 'wed-narrow-past-one' => '{0} mer. fa',
+ 'wed-narrow-past-other' => '{0} mer. fa',
+ 'wed-past-one' => '{0} mercoledì fa',
+ 'wed-past-other' => '{0} mercoledì fa',
+ 'wed-short-future-one' => 'tra {0} mer.',
+ 'wed-short-future-other' => 'tra {0} mer.',
+ 'wed-short-past-one' => '{0} mer. fa',
+ 'wed-short-past-other' => '{0} mer. fa',
'week-future-one' => 'tra {0} settimana',
'week-future-other' => 'tra {0} settimane',
'week-narrow-future-one' => 'tra {0} sett.',
@@ -1413,4 +1518,4 @@ $timeUnits = array(
'year-short-future-other' => 'tra {0} anni',
'year-short-past-one' => '{0} anno fa',
'year-short-past-other' => '{0} anni fa',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesJa.php b/MLEB/cldr/CldrNames/CldrNamesJa.php
index 3a313cbb..45dcc37a 100644
--- a/MLEB/cldr/CldrNames/CldrNamesJa.php
+++ b/MLEB/cldr/CldrNames/CldrNamesJa.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'アファル語',
'ab' => 'アブハズ語',
'ace' => 'アチェ語',
@@ -26,10 +26,11 @@ $languageNames = array(
'ar' => 'アラビア語',
'ar-001' => '現代標準アラビア語',
'arc' => 'アラム語',
- 'arn' => 'アラウカン語',
+ 'arn' => 'マプチェ語',
'aro' => 'アラオナ語',
'arp' => 'アラパホー語',
'arq' => 'アルジェリア・アラビア語',
+ 'ars' => 'ナジュド地方・アラビア語',
'arw' => 'アラワク語',
'ary' => 'モロッコ・アラビア語',
'arz' => 'エジプト・アラビア語',
@@ -42,7 +43,6 @@ $languageNames = array(
'awa' => 'アワディー語',
'ay' => 'アイマラ語',
'az' => 'アゼルバイジャン語',
- 'azb' => '南アゼルバイジャン語',
'ba' => 'バシキール語',
'bal' => 'バルーチー語',
'ban' => 'バリ語',
@@ -59,6 +59,7 @@ $languageNames = array(
'bfd' => 'バフット語',
'bfq' => 'バダガ語',
'bg' => 'ブルガリア語',
+ 'bgn' => '西バローチー語',
'bho' => 'ボージュプリー語',
'bi' => 'ビスラマ語',
'bik' => 'ビコル語',
@@ -100,12 +101,13 @@ $languageNames = array(
'chp' => 'チペワイアン語',
'chr' => 'チェロキー語',
'chy' => 'シャイアン語',
- 'ckb' => 'クルド語(ソラニー)',
+ 'ckb' => '中央クルド語',
'co' => 'コルシカ語',
'cop' => 'コプト語',
'cps' => 'カピス語',
'cr' => 'クリー語',
'crh' => 'クリミア・タタール語',
+ 'crs' => 'セーシェル・クレオール語',
'cs' => 'チェコ語',
'csb' => 'カシューブ語',
'cu' => '教会スラブ語',
@@ -113,17 +115,17 @@ $languageNames = array(
'cy' => 'ウェールズ語',
'da' => 'デンマーク語',
'dak' => 'ダコタ語',
- 'dar' => 'ダルガン語',
+ 'dar' => 'ダルグワ語',
'dav' => 'タイタ語',
'de' => 'ドイツ語',
- 'de-ch' => '標準ドイツ語(スイス)',
+ 'de-ch' => '標準ドイツ語 (スイス)',
'del' => 'デラウェア語',
'den' => 'スレイビー語',
'dgr' => 'ドグリブ語',
'din' => 'ディンカ語',
'dje' => 'ザルマ語',
'doi' => 'ドーグリー語',
- 'dsb' => '低ソルビア語',
+ 'dsb' => '低地ソルブ語',
'dtp' => '中央ドゥスン語',
'dua' => 'ドゥアラ語',
'dum' => '中世オランダ語',
@@ -148,7 +150,7 @@ $languageNames = array(
'enm' => '中英語',
'eo' => 'エスペラント語',
'es' => 'スペイン語',
- 'es-es' => 'スペイン語(イベリア半島)',
+ 'es-es' => 'スペイン語 (イベリア半島)',
'esu' => '中央アラスカ・ユピック語',
'et' => 'エストニア語',
'eu' => 'バスク語',
@@ -157,7 +159,7 @@ $languageNames = array(
'fa' => 'ペルシア語',
'fan' => 'ファング語',
'fat' => 'ファンティー語',
- 'ff' => 'フラニ語',
+ 'ff' => 'フラ語',
'fi' => 'フィンランド語',
'fil' => 'フィリピノ語',
'fit' => 'トルネダール・フィンランド語',
@@ -213,11 +215,11 @@ $languageNames = array(
'hmn' => 'フモン語',
'ho' => 'ヒリモツ語',
'hr' => 'クロアチア語',
- 'hsb' => '上ソルビア語',
+ 'hsb' => '高地ソルブ語',
'hsn' => '湘語',
- 'ht' => 'ハイチ語',
+ 'ht' => 'ハイチ・クレオール語',
'hu' => 'ハンガリー語',
- 'hup' => 'アタパスカ語',
+ 'hup' => 'フパ語',
'hy' => 'アルメニア語',
'hz' => 'ヘレロ語',
'ia' => 'インターリングア',
@@ -233,7 +235,7 @@ $languageNames = array(
'io' => 'イド語',
'is' => 'アイスランド語',
'it' => 'イタリア語',
- 'iu' => 'イヌクウティトット語',
+ 'iu' => 'イヌクティトット語',
'izh' => 'イングリア語',
'ja' => '日本語',
'jam' => 'ジャマイカ・クレオール語',
@@ -244,7 +246,7 @@ $languageNames = array(
'jrb' => 'ユダヤ・アラビア語',
'jut' => 'ユトランド語',
'jv' => 'ジャワ語',
- 'ka' => 'グルジア語',
+ 'ka' => 'ジョージア語',
'kaa' => 'カラカルパク語',
'kab' => 'カビル語',
'kac' => 'カチン語',
@@ -280,7 +282,7 @@ $languageNames = array(
'kos' => 'コスラエ語',
'kpe' => 'クペレ語',
'kr' => 'カヌリ語',
- 'krc' => 'カラチャイ語',
+ 'krc' => 'カラチャイ・バルカル語',
'kri' => 'クリオ語',
'krj' => 'キナライア語',
'krl' => 'カレリア語',
@@ -312,7 +314,9 @@ $languageNames = array(
'ln' => 'リンガラ語',
'lo' => 'ラオ語',
'lol' => 'モンゴ語',
+ 'lou' => 'ルイジアナ・クレオール語',
'loz' => 'ロジ語',
+ 'lrc' => '北ロル語',
'lt' => 'リトアニア語',
'ltg' => 'ラトガリア語',
'lu' => 'ルバ・カタンガ語',
@@ -320,7 +324,7 @@ $languageNames = array(
'lui' => 'ルイセーニョ語',
'lun' => 'ルンダ語',
'luo' => 'ルオ語',
- 'lus' => 'ルシャイ語',
+ 'lus' => 'ミゾ語',
'luy' => 'ルヒヤ語',
'lv' => 'ラトビア語',
'lzh' => '漢文',
@@ -363,7 +367,7 @@ $languageNames = array(
'mwl' => 'ミランダ語',
'mwr' => 'マールワーリー語',
'mwv' => 'メンタワイ語',
- 'my' => 'ビルマ語',
+ 'my' => 'ミャンマー語',
'mye' => 'ミエネ語',
'myv' => 'エルジャ語',
'mzn' => 'マーザンダラーン語',
@@ -403,7 +407,7 @@ $languageNames = array(
'oc' => 'オック語',
'oj' => 'オジブウェー語',
'om' => 'オロモ語',
- 'or' => 'オリヤー語',
+ 'or' => 'オディア語',
'os' => 'オセット語',
'osa' => 'オセージ語',
'ota' => 'オスマントルコ語',
@@ -414,6 +418,7 @@ $languageNames = array(
'pap' => 'パピアメント語',
'pau' => 'パラオ語',
'pcd' => 'ピカルディ語',
+ 'pcm' => 'ナイジェリア・ピジン語',
'pdc' => 'ペンシルベニア・ドイツ語',
'pdt' => 'メノナイト低地ドイツ語',
'peo' => '古代ペルシア語',
@@ -428,7 +433,7 @@ $languageNames = array(
'pro' => '古期プロバンス語',
'ps' => 'パシュトゥー語',
'pt' => 'ポルトガル語',
- 'pt-pt' => 'ポルトガル語(イベリア半島)',
+ 'pt-pt' => 'ポルトガル語 (イベリア半島)',
'qu' => 'ケチュア語',
'quc' => 'キチェ語',
'qug' => 'チンボラソ高地ケチュア語',
@@ -448,11 +453,11 @@ $languageNames = array(
'rue' => 'ルシン語',
'rug' => 'ロヴィアナ語',
'rup' => 'アルーマニア語',
- 'rw' => 'ルワンダ語',
+ 'rw' => 'キニアルワンダ語',
'rwk' => 'ルワ語',
'sa' => 'サンスクリット語',
'sad' => 'サンダウェ語',
- 'sah' => 'ヤクート語',
+ 'sah' => 'サハ語',
'sam' => 'サマリア・アラム語',
'saq' => 'サンブル語',
'sas' => 'ササク語',
@@ -465,6 +470,7 @@ $languageNames = array(
'sco' => 'スコットランド語',
'sd' => 'シンド語',
'sdc' => 'サッサリ・サルデーニャ語',
+ 'sdh' => '南部クルド語',
'se' => '北サーミ語',
'see' => 'セネカ語',
'seh' => 'セナ語',
@@ -472,8 +478,8 @@ $languageNames = array(
'sel' => 'セリクプ語',
'ses' => 'コイラボロ・センニ語',
'sg' => 'サンゴ語',
- 'sga' => '古期アイルランド語',
- 'sgs' => 'サモギティア語)',
+ 'sga' => '古アイルランド語',
+ 'sgs' => 'サモギティア語',
'sh' => 'セルボ・クロアチア語',
'shi' => 'タシルハイト語',
'shn' => 'シャン語',
@@ -507,8 +513,8 @@ $languageNames = array(
'sux' => 'シュメール語',
'sv' => 'スウェーデン語',
'sw' => 'スワヒリ語',
+ 'sw-cd' => 'コンゴ・スワヒリ語',
'swb' => 'コモロ語',
- 'swc' => 'コンゴ・スワヒリ語',
'syc' => '古典シリア語',
'syr' => 'シリア語',
'szl' => 'シレジア語',
@@ -575,6 +581,7 @@ $languageNames = array(
'wal' => 'ウォライタ語',
'war' => 'ワライ語',
'was' => 'ワショ語',
+ 'wbp' => 'ワルピリ語',
'wo' => 'ウォロフ語',
'wuu' => '呉語',
'xal' => 'カルムイク語',
@@ -594,7 +601,7 @@ $languageNames = array(
'zbl' => 'ブリスシンボル',
'zea' => 'ゼーラント語',
'zen' => 'ゼナガ語',
- 'zgh' => 'タマージク語(モロッコ公用語)',
+ 'zgh' => '標準モロッコ タマジクト語',
'zh' => '中国語',
'zh-hans' => '簡体中国語',
'zh-hant' => '繁体中国語',
@@ -602,24 +609,24 @@ $languageNames = array(
'zun' => 'ズニ語',
'zxx' => '言語的内容なし',
'zza' => 'ザザ語',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'ADP' => 'アンドラ ペセタ',
'AED' => 'アラブ首長国連邦ディルハム',
'AFA' => 'アフガニスタン アフガニー (1927–2002)',
- 'AFN' => 'アフガニー',
+ 'AFN' => 'アフガニスタン アフガニー',
'ALK' => 'アルバニア レク (1946–1965)',
'ALL' => 'アルバニア レク',
'AMD' => 'アルメニア ドラム',
'ANG' => 'オランダ領アンティル ギルダー',
- 'AOA' => 'クワンザ',
+ 'AOA' => 'アンゴラ クワンザ',
'AOK' => 'アンゴラ クワンザ (1977–1991)',
'AON' => 'アンゴラ 新クワンザ (1990–2000)',
'AOR' => 'アンゴラ 旧クワンザ (1995–1999)',
'ARA' => 'アルゼンチン アゥストラール',
- 'ARL' => 'アルゼンチン・ペソ・レイ(1970-1983)',
- 'ARM' => 'アルゼンチン・ペソ(1881-1970)',
+ 'ARL' => 'アルゼンチン・ペソ・レイ(1970–1983)',
+ 'ARM' => 'アルゼンチン・ペソ(1881–1970)',
'ARP' => 'アルゼンチン ペソ (1983–1985)',
'ARS' => 'アルゼンチン ペソ',
'ATS' => 'オーストリア シリング',
@@ -628,8 +635,8 @@ $currencyNames = array(
'AZM' => 'アゼルバイジャン マナト (1993–2006)',
'AZN' => 'アゼルバイジャン マナト',
'BAD' => 'ボスニア・ヘルツェゴビナ ディナール (1992–1994)',
- 'BAM' => 'ボスニア マルク (BAM)',
- 'BAN' => 'ボスニア・ヘルツェゴビナ 新ディナール(1994-1997)',
+ 'BAM' => 'ボスニア・ヘルツェゴビナ 兌換マルク (BAM)',
+ 'BAN' => 'ボスニア・ヘルツェゴビナ 新ディナール(1994–1997)',
'BBD' => 'バルバドス ドル',
'BDT' => 'バングラデシュ タカ',
'BEC' => 'ベルギー フラン (BEC)',
@@ -638,7 +645,7 @@ $currencyNames = array(
'BGL' => 'ブルガリア レフ',
'BGM' => 'ブルガリア社会主義 レフ',
'BGN' => 'ブルガリア 新レフ',
- 'BGO' => 'ブルガリア レフ(1879-1952)',
+ 'BGO' => 'ブルガリア レフ(1879–1952)',
'BHD' => 'バーレーン ディナール',
'BIF' => 'ブルンジ フラン',
'BMD' => 'バミューダ ドル',
@@ -653,13 +660,14 @@ $currencyNames = array(
'BRL' => 'ブラジル レアル',
'BRN' => 'ブラジル 新クルザード (1989–1990)',
'BRR' => 'ブラジル クルゼイロ (1993–1994)',
- 'BRZ' => 'ブラジル クルゼイロ(1942-1967)',
+ 'BRZ' => 'ブラジル クルゼイロ(1942–1967)',
'BSD' => 'バハマ ドル',
'BTN' => 'ブータン ニュルタム',
'BUK' => 'ビルマ チャット',
'BWP' => 'ボツワナ プラ',
'BYB' => 'ベラルーシ 新ルーブル (1994–1999)',
- 'BYR' => 'ベラルーシ ルーブル',
+ 'BYN' => 'ベラルーシ ルーブル',
+ 'BYR' => 'ベラルーシ ルーブル (2000–2016)',
'BZD' => 'ベリーズ ドル',
'CAD' => 'カナダ ドル',
'CDF' => 'コンゴ フラン',
@@ -669,6 +677,7 @@ $currencyNames = array(
'CLE' => 'チリ エスクード',
'CLF' => 'チリ ウニダ・デ・フォメント (UF)',
'CLP' => 'チリ ペソ',
+ 'CNH' => '中国人民元(オフショア)',
'CNX' => '中国人民銀行ドル',
'CNY' => '中国人民元',
'COP' => 'コロンビア ペソ',
@@ -698,12 +707,12 @@ $currencyNames = array(
'ETB' => 'エチオピア ブル',
'EUR' => 'ユーロ',
'FIM' => 'フィンランド マルカ',
- 'FJD' => 'フィジー諸島 ドル',
+ 'FJD' => 'フィジー ドル',
'FKP' => 'フォークランド(マルビナス)諸島 ポンド',
'FRF' => 'フランス フラン',
'GBP' => '英国ポンド',
- 'GEK' => 'グルジア クーポン ラリ',
- 'GEL' => 'グルジア ラリ',
+ 'GEK' => 'ジョージア クーポン ラリ',
+ 'GEL' => 'ジョージア ラリ',
'GHC' => 'ガーナ セディ (1979–2007)',
'GHS' => 'ガーナ セディ',
'GIP' => 'ジブラルタル ポンド',
@@ -737,13 +746,13 @@ $currencyNames = array(
'JOD' => 'ヨルダン ディナール',
'JPY' => '日本円',
'KES' => 'ケニア シリング',
- 'KGS' => 'キルギスタン ソム',
+ 'KGS' => 'キルギス ソム',
'KHR' => 'カンボジア リエル',
'KMF' => 'コモロ フラン',
- 'KPW' => '北朝鮮 ウォン',
- 'KRH' => '韓国 ファン(1953-1962)',
- 'KRO' => '韓国 ウォン(1945-1953)',
- 'KRW' => '韓国 ウォン',
+ 'KPW' => '北朝鮮ウォン',
+ 'KRH' => '韓国 ファン(1953–1962)',
+ 'KRO' => '韓国 ウォン(1945–1953)',
+ 'KRW' => '韓国ウォン',
'KWD' => 'クウェート ディナール',
'KYD' => 'ケイマン諸島 ドル',
'KZT' => 'カザフスタン テンゲ',
@@ -768,17 +777,18 @@ $currencyNames = array(
'MGA' => 'マダガスカル アリアリ',
'MGF' => 'マラガシ フラン',
'MKD' => 'マケドニア デナル',
- 'MKN' => 'マケドニア ディナール(1992-1993)',
+ 'MKN' => 'マケドニア ディナール(1992–1993)',
'MLF' => 'マリ フラン',
'MMK' => 'ミャンマー チャット',
'MNT' => 'モンゴル トグログ',
'MOP' => 'マカオ パタカ',
- 'MRO' => 'モーリタニア ウギア',
+ 'MRO' => 'モーリタニア ウギア (1973–2017)',
+ 'MRU' => 'モーリタニア ウギア',
'MTL' => 'マルタ リラ',
'MTP' => 'マルタ ポンド',
'MUR' => 'モーリシャス ルピー',
'MVP' => 'モルディブ諸島 ルピー',
- 'MVR' => 'モルディブ諸島 ルフィア',
+ 'MVR' => 'モルディブ ルフィア',
'MWK' => 'マラウィ クワチャ',
'MXN' => 'メキシコ ペソ',
'MXP' => 'メキシコ ペソ (1861–1992)',
@@ -798,7 +808,7 @@ $currencyNames = array(
'OMR' => 'オマーン リアル',
'PAB' => 'パナマ バルボア',
'PEI' => 'ペルー インティ',
- 'PEN' => 'ペルー 新ソル',
+ 'PEN' => 'ペルー ソル',
'PES' => 'ペルー ソル (1863–1965)',
'PGK' => 'パプアニューギニア キナ',
'PHP' => 'フィリピン ペソ',
@@ -823,15 +833,16 @@ $currencyNames = array(
'SDP' => 'スーダン ポンド (1957–1998)',
'SEK' => 'スウェーデン クローナ',
'SGD' => 'シンガポール ドル',
- 'SHP' => 'セントヘレナ島 ポンド',
+ 'SHP' => 'セントヘレナ ポンド',
'SIT' => 'スロベニア トラール',
'SKK' => 'スロバキア コルナ',
'SLL' => 'シエラレオネ レオン',
'SOS' => 'ソマリア シリング',
'SRD' => 'スリナム ドル',
'SRG' => 'スリナム ギルダー',
- 'SSP' => '南スーダン・ポンド',
- 'STD' => 'サントメ・プリンシペ ドブラ',
+ 'SSP' => '南スーダン ポンド',
+ 'STD' => 'サントメ・プリンシペ ドブラ (1977–2017)',
+ 'STN' => 'サントメ・プリンシペ ドブラ',
'SUR' => 'ソ連 ルーブル',
'SVC' => 'エルサルバドル コロン',
'SYP' => 'シリア ポンド',
@@ -846,7 +857,7 @@ $currencyNames = array(
'TPE' => 'ティモール エスクード',
'TRL' => 'トルコ リラ (1922–2005)',
'TRY' => '新トルコリラ',
- 'TTD' => 'トリニダードトバゴ ドル',
+ 'TTD' => 'トリニダード・トバゴ ドル',
'TWD' => '新台湾ドル',
'TZS' => 'タンザニア シリング',
'UAH' => 'ウクライナ グリブナ',
@@ -861,12 +872,13 @@ $currencyNames = array(
'UYU' => 'ウルグアイ ペソ',
'UZS' => 'ウズベキスタン スム',
'VEB' => 'ベネズエラ ボリバル (1871–2008)',
- 'VEF' => 'ベネズエラ ボリバル',
+ 'VEF' => 'ベネズエラ ボリバル (2008–2018)',
+ 'VES' => 'ベネズエラ ボリバル',
'VND' => 'ベトナム ドン',
- 'VNN' => 'ベトナム ドン(1978-1985)',
+ 'VNN' => 'ベトナム ドン(1978–1985)',
'VUV' => 'バヌアツ バツ',
'WST' => 'サモア タラ',
- 'XAF' => 'CFA フラン(BEAC)',
+ 'XAF' => '中央アフリカ CFA フラン',
'XAG' => '銀',
'XAU' => '金',
'XBA' => 'ヨーロッパ混合単位 (EURCO)',
@@ -878,7 +890,7 @@ $currencyNames = array(
'XEU' => 'ヨーロッパ通貨単位',
'XFO' => 'フランス金フラン',
'XFU' => 'フランス フラン (UIC)',
- 'XOF' => 'CFA フラン(BCEAO)',
+ 'XOF' => '西アフリカ CFA フラン',
'XPD' => 'パラジウム',
'XPF' => 'CFP フラン',
'XPT' => 'プラチナ',
@@ -892,7 +904,7 @@ $currencyNames = array(
'YUD' => 'ユーゴスラビア ハード・ディナール (1966–1990)',
'YUM' => 'ユーゴスラビア ノビ・ディナール (1994–2002)',
'YUN' => 'ユーゴスラビア 兌換ディナール (1990–1992)',
- 'YUR' => 'ユーゴスラビア 改革ディナール(1992-1993)',
+ 'YUR' => 'ユーゴスラビア 改革ディナール(1992–1993)',
'ZAL' => '南アフリカ ランド (ZAL)',
'ZAR' => '南アフリカ ランド',
'ZMK' => 'ザンビア クワチャ (1968–2012)',
@@ -902,9 +914,9 @@ $currencyNames = array(
'ZWD' => 'ジンバブエ ドル (1980–2008)',
'ZWL' => 'ジンバブエ ドル (2009)',
'ZWR' => 'シンバブエ ドル(2008)',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'ADP' => 'ADP',
'AED' => 'AED',
'AFA' => 'AFA',
@@ -923,7 +935,7 @@ $currencySymbols = array(
'ARP' => 'ARP',
'ARS' => 'ARS',
'ATS' => 'ATS',
- 'AUD' => 'AU$',
+ 'AUD' => 'A$',
'AWG' => 'AWG',
'AZM' => 'AZM',
'AZN' => 'AZN',
@@ -959,6 +971,7 @@ $currencySymbols = array(
'BUK' => 'BUK',
'BWP' => 'BWP',
'BYB' => 'BYB',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CA$',
@@ -969,6 +982,7 @@ $currencySymbols = array(
'CLE' => 'CLE',
'CLF' => 'CLF',
'CLP' => 'CLP',
+ 'CNH' => 'CNH',
'CNX' => 'CNX',
'CNY' => '元',
'COP' => 'COP',
@@ -1043,7 +1057,7 @@ $currencySymbols = array(
'KPW' => 'KPW',
'KRH' => 'KRH',
'KRO' => 'KRO',
- 'KRW' => '₩',
+ 'KRW' => '₩',
'KWD' => 'KWD',
'KYD' => 'KYD',
'KZT' => 'KZT',
@@ -1074,6 +1088,7 @@ $currencySymbols = array(
'MNT' => 'MNT',
'MOP' => 'MOP',
'MRO' => 'MRO',
+ 'MRU' => 'MRU',
'MTL' => 'MTL',
'MTP' => 'MTP',
'MUR' => 'MUR',
@@ -1132,11 +1147,12 @@ $currencySymbols = array(
'SRG' => 'SRG',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'STN',
'SUR' => 'SUR',
'SVC' => 'SVC',
'SYP' => 'SYP',
'SZL' => 'SZL',
- 'THB' => '฿',
+ 'THB' => 'THB',
'TJR' => 'TJR',
'TJS' => 'TJS',
'TMM' => 'TMM',
@@ -1162,6 +1178,7 @@ $currencySymbols = array(
'UZS' => 'UZS',
'VEB' => 'VEB',
'VEF' => 'VEF',
+ 'VES' => 'VES',
'VND' => '₫',
'VNN' => 'VNN',
'VUV' => 'VUV',
@@ -1202,9 +1219,9 @@ $currencySymbols = array(
'ZWD' => 'ZWD',
'ZWL' => 'ZWL',
'ZWR' => 'ZWR',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'アセンション島',
'AD' => 'アンドラ',
'AE' => 'アラブ首長国連邦',
@@ -1213,7 +1230,6 @@ $countryNames = array(
'AI' => 'アンギラ',
'AL' => 'アルバニア',
'AM' => 'アルメニア',
- 'AN' => 'オランダ領アンティル',
'AO' => 'アンゴラ',
'AQ' => '南極',
'AR' => 'アルゼンチン',
@@ -1232,7 +1248,7 @@ $countryNames = array(
'BH' => 'バーレーン',
'BI' => 'ブルンジ',
'BJ' => 'ベナン',
- 'BL' => 'サン・バルテルミー島',
+ 'BL' => 'サン・バルテルミー',
'BM' => 'バミューダ',
'BN' => 'ブルネイ',
'BO' => 'ボリビア',
@@ -1263,7 +1279,7 @@ $countryNames = array(
'CW' => 'キュラソー',
'CX' => 'クリスマス島',
'CY' => 'キプロス',
- 'CZ' => 'チェコ共和国',
+ 'CZ' => 'チェコ',
'DE' => 'ドイツ',
'DG' => 'ディエゴガルシア島',
'DJ' => 'ジブチ',
@@ -1280,6 +1296,7 @@ $countryNames = array(
'ES' => 'スペイン',
'ET' => 'エチオピア',
'EU' => '欧州連合',
+ 'EZ' => 'ユーロ圏',
'FI' => 'フィンランド',
'FJ' => 'フィジー',
'FK' => 'フォークランド諸島',
@@ -1289,7 +1306,7 @@ $countryNames = array(
'GA' => 'ガボン',
'GB' => '英国',
'GD' => 'グレナダ',
- 'GE' => 'グルジア',
+ 'GE' => 'ジョージア',
'GF' => '仏領ギアナ',
'GG' => 'ガーンジー',
'GH' => 'ガーナ',
@@ -1300,7 +1317,7 @@ $countryNames = array(
'GP' => 'グアドループ',
'GQ' => '赤道ギニア',
'GR' => 'ギリシャ',
- 'GS' => '南ジョージア島・南サンドイッチ諸島',
+ 'GS' => 'サウスジョージア・サウスサンドウィッチ諸島',
'GT' => 'グアテマラ',
'GU' => 'グアム',
'GW' => 'ギニアビサウ',
@@ -1331,9 +1348,9 @@ $countryNames = array(
'KH' => 'カンボジア',
'KI' => 'キリバス',
'KM' => 'コモロ',
- 'KN' => 'セントクリストファー・ネイビス',
- 'KP' => '朝鮮民主主義人民共和国',
- 'KR' => '大韓民国',
+ 'KN' => 'セントクリストファー・ネーヴィス',
+ 'KP' => '北朝鮮',
+ 'KR' => '韓国',
'KW' => 'クウェート',
'KY' => 'ケイマン諸島',
'KZ' => 'カザフスタン',
@@ -1345,7 +1362,7 @@ $countryNames = array(
'LR' => 'リベリア',
'LS' => 'レソト',
'LT' => 'リトアニア',
- 'LU' => 'ルクセンブルグ',
+ 'LU' => 'ルクセンブルク',
'LV' => 'ラトビア',
'LY' => 'リビア',
'MA' => 'モロッコ',
@@ -1357,7 +1374,7 @@ $countryNames = array(
'MH' => 'マーシャル諸島',
'MK' => 'マケドニア',
'ML' => 'マリ',
- 'MM' => 'ミャンマー',
+ 'MM' => 'ミャンマー (ビルマ)',
'MN' => 'モンゴル',
'MO' => 'マカオ',
'MP' => '北マリアナ諸島',
@@ -1381,7 +1398,7 @@ $countryNames = array(
'NO' => 'ノルウェー',
'NP' => 'ネパール',
'NR' => 'ナウル',
- 'NU' => 'ニウエ島',
+ 'NU' => 'ニウエ',
'NZ' => 'ニュージーランド',
'OM' => 'オマーン',
'PA' => 'パナマ',
@@ -1400,7 +1417,7 @@ $countryNames = array(
'PY' => 'パラグアイ',
'QA' => 'カタール',
'QO' => 'オセアニア周辺地域',
- 'RE' => 'レユニオン島',
+ 'RE' => 'レユニオン',
'RO' => 'ルーマニア',
'RS' => 'セルビア',
'RU' => 'ロシア',
@@ -1445,12 +1462,13 @@ $countryNames = array(
'TZ' => 'タンザニア',
'UA' => 'ウクライナ',
'UG' => 'ウガンダ',
- 'UM' => '米領太平洋諸島',
+ 'UM' => '合衆国領有小離島',
+ 'UN' => '国連',
'US' => 'アメリカ',
'UY' => 'ウルグアイ',
'UZ' => 'ウズベキスタン',
'VA' => 'バチカン市国',
- 'VC' => 'セントビンセント・グレナディーン諸島',
+ 'VC' => 'セントビンセント及びグレナディーン諸島',
'VE' => 'ベネズエラ',
'VG' => '英領ヴァージン諸島',
'VI' => '米領ヴァージン諸島',
@@ -1460,23 +1478,30 @@ $countryNames = array(
'WS' => 'サモア',
'XK' => 'コソボ',
'YE' => 'イエメン',
- 'YT' => 'マヨット島',
+ 'YT' => 'マヨット',
'ZA' => '南アフリカ',
'ZM' => 'ザンビア',
'ZW' => 'ジンバブエ',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-other' => '{0} 世紀',
'day-future-other' => '{0} 日後',
- 'day-narrow-future-other' => '{0} 日後',
- 'day-narrow-past-other' => '{0} 日前',
+ 'day-narrow-future-other' => '{0}日後',
+ 'day-narrow-past-other' => '{0}日前',
'day-other' => '{0} 日',
'day-past-other' => '{0} 日前',
'day-short-future-other' => '{0} 日後',
'day-short-past-other' => '{0} 日前',
+ 'fri-future-other' => '{0} 個後の金曜日',
+ 'fri-narrow-future-other' => '{0}個後の金曜',
+ 'fri-narrow-past-other' => '{0}個前の金曜',
+ 'fri-past-other' => '{0} 個前の金曜日',
+ 'fri-short-future-other' => '{0} 個後の金曜',
+ 'fri-short-past-other' => '{0} 個前の金曜',
'hour-future-other' => '{0} 時間後',
- 'hour-narrow-future-other' => '{0} 時間後',
- 'hour-narrow-past-other' => '{0} 時間前',
+ 'hour-narrow-future-other' => '{0}時間後',
+ 'hour-narrow-past-other' => '{0}時間前',
'hour-other' => '{0} 時間',
'hour-past-other' => '{0} 時間前',
'hour-short-future-other' => '{0} 時間後',
@@ -1484,45 +1509,81 @@ $timeUnits = array(
'microsecond-other' => '{0} マイクロ秒',
'millisecond-other' => '{0} ミリ秒',
'minute-future-other' => '{0} 分後',
- 'minute-narrow-future-other' => '{0} 分後',
- 'minute-narrow-past-other' => '{0} 分前',
+ 'minute-narrow-future-other' => '{0}分後',
+ 'minute-narrow-past-other' => '{0}分前',
'minute-other' => '{0} 分',
'minute-past-other' => '{0} 分前',
'minute-short-future-other' => '{0} 分後',
'minute-short-past-other' => '{0} 分前',
+ 'mon-future-other' => '{0} 個後の月曜日',
+ 'mon-narrow-future-other' => '{0}個後の月曜',
+ 'mon-narrow-past-other' => '{0}個前の月曜',
+ 'mon-past-other' => '{0} 個前の月曜日',
+ 'mon-short-future-other' => '{0} 個後の月曜',
+ 'mon-short-past-other' => '{0} 個前の月曜',
'month-future-other' => '{0} か月後',
- 'month-narrow-future-other' => '{0} か月後',
- 'month-narrow-past-other' => '{0} か月前',
+ 'month-narrow-future-other' => '{0}か月後',
+ 'month-narrow-past-other' => '{0}か月前',
'month-other' => '{0} か月',
'month-past-other' => '{0} か月前',
'month-short-future-other' => '{0} か月後',
'month-short-past-other' => '{0} か月前',
'nanosecond-other' => '{0} ナノ秒',
'quarter-future-other' => '{0} 四半期後',
- 'quarter-narrow-future-other' => '{0} 四半期後',
- 'quarter-narrow-past-other' => '{0} 四半期前',
+ 'quarter-narrow-future-other' => '{0}四半期後',
+ 'quarter-narrow-past-other' => '{0}四半期前',
'quarter-past-other' => '{0} 四半期前',
'quarter-short-future-other' => '{0} 四半期後',
'quarter-short-past-other' => '{0} 四半期前',
+ 'sat-future-other' => '{0} 個後の土曜日',
+ 'sat-narrow-future-other' => '{0}個後の土曜',
+ 'sat-narrow-past-other' => '{0}個前の土曜',
+ 'sat-past-other' => '{0} 個前の土曜日',
+ 'sat-short-future-other' => '{0} 個後の土曜',
+ 'sat-short-past-other' => '{0} 個前の土曜',
'second-future-other' => '{0} 秒後',
- 'second-narrow-future-other' => '{0} 秒後',
- 'second-narrow-past-other' => '{0} 秒前',
+ 'second-narrow-future-other' => '{0}秒後',
+ 'second-narrow-past-other' => '{0}秒前',
'second-other' => '{0} 秒',
'second-past-other' => '{0} 秒前',
'second-short-future-other' => '{0} 秒後',
'second-short-past-other' => '{0} 秒前',
+ 'sun-future-other' => '{0} 個後の日曜日',
+ 'sun-narrow-future-other' => '{0}個後の日曜',
+ 'sun-narrow-past-other' => '{0}個前の日曜',
+ 'sun-past-other' => '{0} 個前の日曜日',
+ 'sun-short-future-other' => '{0} 個後の日曜',
+ 'sun-short-past-other' => '{0} 個前の日曜',
+ 'thu-future-other' => '{0} 個後の木曜日',
+ 'thu-narrow-future-other' => '{0}個後の木曜',
+ 'thu-narrow-past-other' => '{0}個前の木曜',
+ 'thu-past-other' => '{0} 個前の木曜日',
+ 'thu-short-future-other' => '{0} 個後の木曜',
+ 'thu-short-past-other' => '{0} 個前の木曜',
+ 'tue-future-other' => '{0} 個後の火曜日',
+ 'tue-narrow-future-other' => '{0}個後の火曜',
+ 'tue-narrow-past-other' => '{0}個前の火曜',
+ 'tue-past-other' => '{0} 個前の火曜日',
+ 'tue-short-future-other' => '{0} 個後の火曜',
+ 'tue-short-past-other' => '{0} 個前の火曜',
+ 'wed-future-other' => '{0} 個後の水曜日',
+ 'wed-narrow-future-other' => '{0}個後の水曜',
+ 'wed-narrow-past-other' => '{0}個前の水曜',
+ 'wed-past-other' => '{0} 個前の水曜日',
+ 'wed-short-future-other' => '{0} 個後の水曜',
+ 'wed-short-past-other' => '{0} 個前の水曜',
'week-future-other' => '{0} 週間後',
- 'week-narrow-future-other' => '{0} 週間後',
- 'week-narrow-past-other' => '{0} 週間前',
+ 'week-narrow-future-other' => '{0}週間後',
+ 'week-narrow-past-other' => '{0}週間前',
'week-other' => '{0} 週間',
'week-past-other' => '{0} 週間前',
'week-short-future-other' => '{0} 週間後',
'week-short-past-other' => '{0} 週間前',
'year-future-other' => '{0} 年後',
- 'year-narrow-future-other' => '{0} 年後',
- 'year-narrow-past-other' => '{0} 年前',
+ 'year-narrow-future-other' => '{0}年後',
+ 'year-narrow-past-other' => '{0}年前',
'year-other' => '{0} 年',
'year-past-other' => '{0} 年前',
'year-short-future-other' => '{0} 年後',
'year-short-past-other' => '{0} 年前',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesKa.php b/MLEB/cldr/CldrNames/CldrNamesKa.php
index a189ed70..07412d35 100644
--- a/MLEB/cldr/CldrNames/CldrNamesKa.php
+++ b/MLEB/cldr/CldrNames/CldrNamesKa.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'აფარი',
'ab' => 'აფხაზური',
'ace' => 'აჩეხური',
@@ -42,7 +42,11 @@ $languageNames = array(
'bem' => 'ბემბა',
'bez' => 'ბენა',
'bg' => 'ბულგარული',
+ 'bgn' => 'დასავლეთ ბელუჯი',
'bho' => 'ბოჯპური',
+ 'bi' => 'ბისლამა',
+ 'bin' => 'ბინი',
+ 'bla' => 'სიკსიკა',
'bm' => 'ბამბარა',
'bn' => 'ბენგალური',
'bo' => 'ტიბეტური',
@@ -51,36 +55,41 @@ $languageNames = array(
'brx' => 'ბოდო',
'bs' => 'ბოსნიური',
'bua' => 'ბურიატული',
+ 'bug' => 'ბუგინური',
'byn' => 'ბილინი',
'ca' => 'კატალანური',
'cay' => 'კაიუგა',
'ce' => 'ჩეჩნური',
+ 'ceb' => 'სებუანო',
'cgg' => 'ჩიგა',
+ 'ch' => 'ჩამორო',
'chb' => 'ჩიბჩა',
+ 'chk' => 'ჩუკოტკური',
'chm' => 'მარიული',
- 'chn' => 'ჩინუკი ვავა',
+ 'chn' => 'ჩინუკის ჟარგონი',
'cho' => 'ჩოკტო',
- 'chp' => 'დენე სულინე',
+ 'chp' => 'ჩიპევიანი',
'chr' => 'ჩეროკი',
'chy' => 'ჩეიენი',
- 'ckb' => 'სორანი ქურთული',
+ 'ckb' => 'ცენტრალური ქურთული',
'co' => 'კორსიკული',
'cop' => 'კოპტური',
'cr' => 'კრი',
'crh' => 'ყირიმულ-თურქული',
+ 'crs' => 'სესელვა-კრეოლური ფრანგული',
'cs' => 'ჩეხური',
'csb' => 'კაშუბური',
'cu' => 'საეკლესიო სლავური',
'cv' => 'ჩუვაშური',
'cy' => 'უელსური',
'da' => 'დანიური',
- 'dak' => 'დაკოტა',
+ 'dak' => 'დაკოტური',
'dar' => 'დარგუული',
'dav' => 'ტაიტა',
'de' => 'გერმანული',
'de-at' => 'ავსტრიული გერმანული',
'de-ch' => 'შვეიცარიული ზემოგერმანული',
- 'del' => 'დელავარული',
+ 'del' => 'დელავერული',
'den' => 'სლეივი',
'dgr' => 'დოგრიბი',
'din' => 'დინკა',
@@ -93,10 +102,12 @@ $languageNames = array(
'dyo' => 'დიოლა',
'dyu' => 'დიულა',
'dz' => 'ძონგკხა',
+ 'dzg' => 'დაზაგა',
'ebu' => 'ემბუ',
'ee' => 'ევე',
'efi' => 'ეფიკი',
'egy' => 'ძველეგვიპტური',
+ 'eka' => 'ეკაჯუკი',
'el' => 'ბერძნული',
'en' => 'ინგლისური',
'en-au' => 'ავსტრალიური ინგლისური',
@@ -113,6 +124,7 @@ $languageNames = array(
'eu' => 'ბასკური',
'ewo' => 'ევონდო',
'fa' => 'სპარსული',
+ 'ff' => 'ფულა',
'fi' => 'ფინური',
'fil' => 'ფილიპინური',
'fj' => 'ფიჯი',
@@ -128,31 +140,39 @@ $languageNames = array(
'fur' => 'ფრიულური',
'fy' => 'დასავლეთფრიზიული',
'ga' => 'ირლანდიური',
+ 'gaa' => 'გა',
'gag' => 'გაგაუზური',
'gba' => 'გბაია',
'gd' => 'შოტლანდიური გელური',
'gez' => 'გეეზი',
+ 'gil' => 'გილბერტული',
'gl' => 'გალისიური',
'gmh' => 'საშუალო ზემოგერმანული',
'gn' => 'გუარანი',
'goh' => 'ძველი ზემოგერმანული',
'gon' => 'გონდი',
+ 'gor' => 'გორონტალო',
'got' => 'გოთური',
'grc' => 'ძველი ბერძნული',
'gsw' => 'შვეიცარიული გერმანული',
'gu' => 'გუჯარათი',
'guz' => 'გუსიი',
'gv' => 'მენური',
+ 'gwi' => 'გვიჩინი',
'ha' => 'ჰაუსა',
'haw' => 'ჰავაიური',
'he' => 'ებრაული',
'hi' => 'ჰინდი',
- 'hit' => 'ხეთური ენა',
+ 'hil' => 'ჰილიგაინონი',
+ 'hit' => 'ხეთური',
+ 'hmn' => 'ჰმონგი',
'hr' => 'ხორვატული',
'hsb' => 'ზემოსორბული',
- 'ht' => 'ჰაიტიური',
+ 'ht' => 'ჰაიტიური კრეოლი',
'hu' => 'უნგრული',
+ 'hup' => 'ჰუპა',
'hy' => 'სომხური',
+ 'hz' => 'ჰერერო',
'ia' => 'ინტერლინგუალური',
'iba' => 'იბანი',
'ibb' => 'იბიბიო',
@@ -160,6 +180,7 @@ $languageNames = array(
'ie' => 'ინტერლინგი',
'ig' => 'იგბო',
'ii' => 'სიჩუანის ი',
+ 'ilo' => 'ილოკო',
'inh' => 'ინგუშური',
'io' => 'იდო',
'is' => 'ისლანდიური',
@@ -176,14 +197,20 @@ $languageNames = array(
'kaa' => 'ყარაყალფახური',
'kab' => 'კაბილური',
'kac' => 'კაჩინი',
+ 'kaj' => 'კაჯი',
'kam' => 'კამბა',
'kbd' => 'ყაბარდოული',
+ 'kcg' => 'ტიაპი',
'kde' => 'მაკონდე',
'kea' => 'კაბუვერდიანუ',
+ 'kfo' => 'კორო',
'kg' => 'კონგო',
+ 'kha' => 'ხასი',
'khq' => 'კოირა-ჩიინი',
'ki' => 'კიკუიუ',
+ 'kj' => 'კუნამა',
'kk' => 'ყაზახური',
+ 'kkj' => 'კაკო',
'kl' => 'დასავლეთ გრენლანდიური',
'kln' => 'კალენჯინი',
'km' => 'ქმერული',
@@ -201,6 +228,7 @@ $languageNames = array(
'ks' => 'ქაშმირული',
'ksb' => 'შამბალა',
'ksf' => 'ბაფია',
+ 'ksh' => 'კიოლში',
'ku' => 'ქურთული',
'kum' => 'ყუმუხური',
'kut' => 'კუტენაი',
@@ -221,18 +249,21 @@ $languageNames = array(
'lo' => 'ლაოსური',
'lol' => 'მონგო',
'loz' => 'ლოზი',
- 'lt' => 'ლიტვური',
+ 'lrc' => 'ჩრდილოეთ ლური',
+ 'lt' => 'ლიეტუვური',
'lu' => 'ლუბა-კატანგა',
- 'lua' => 'ლუბა-კასაი',
+ 'lua' => 'ლუბა-ლულუა',
'lui' => 'ლუისენიო',
'lun' => 'ლუნდა',
'luo' => 'ლუო',
'lus' => 'მიზო',
'luy' => 'ლუჰია',
'lv' => 'ლატვიური',
+ 'mad' => 'მადურული',
'maf' => 'მაფა',
'mag' => 'მაგაჰი',
'mai' => 'მაითილი',
+ 'mak' => 'მაკასარი',
'mas' => 'მასაი',
'mde' => 'მაბა',
'mdf' => 'მოქშა',
@@ -242,7 +273,8 @@ $languageNames = array(
'mg' => 'მალაგასიური',
'mga' => 'საშუალო ირლანდიური',
'mgh' => 'მაქუვა-მეეტო',
- 'mgo' => 'მეტა’ ენა',
+ 'mgo' => 'მეტა-ენა',
+ 'mh' => 'მარშალური',
'mi' => 'მაორი',
'mic' => 'მიკმაკი',
'min' => 'მინანგკაბაუ',
@@ -252,33 +284,42 @@ $languageNames = array(
'mnc' => 'მანჯურიული',
'mni' => 'მანიპური',
'moh' => 'მოჰაუკური',
- 'mos' => 'მოორე',
+ 'mos' => 'მოსი',
'mr' => 'მარათჰი',
'ms' => 'მალაიური',
'mt' => 'მალტური',
'mua' => 'მუნდანგი',
+ 'mul' => 'სხვადასხვა ენა',
'mus' => 'კრიკი',
'mwl' => 'მირანდული',
'mwr' => 'მარვარი',
'my' => 'ბირმული',
'mye' => 'მიენე',
'myv' => 'ერზია',
+ 'mzn' => 'მაზანდერანული',
'na' => 'ნაურუ',
'nap' => 'ნეაპოლიტანური',
'naq' => 'ნამა',
'nb' => 'ნორვეგიული ბუკმოლი',
'nd' => 'ჩრდილოეთ ნდებელე',
'nds' => 'ქვემოგერმანული',
+ 'nds-nl' => 'ქვემოსაქსონური',
'ne' => 'ნეპალური',
'new' => 'ნევარი',
+ 'ng' => 'ნდონგა',
+ 'nia' => 'ნიასი',
+ 'niu' => 'ნიუე',
'nl' => 'ნიდერლანდური',
'nl-be' => 'ფლამანდიური',
'nmg' => 'კვასიო',
'nn' => 'ნორვეგიული ნიუნორსკი',
+ 'nnh' => 'ნგიმბუნი',
'no' => 'ნორვეგიული',
'nog' => 'ნოღაური',
'non' => 'ძველსკანდინავიური',
'nqo' => 'ნკო',
+ 'nr' => 'სამხრეთ ნდებელური',
+ 'nso' => 'ჩრდილოეთ სოთო',
'nus' => 'ნუერი',
'nv' => 'ნავახო',
'nwc' => 'კლასიკური ნევარული',
@@ -293,11 +334,17 @@ $languageNames = array(
'or' => 'ორია',
'os' => 'ოსური',
'pa' => 'პენჯაბური',
+ 'pag' => 'პანგასინანი',
'pal' => 'ფალაური',
+ 'pam' => 'პამპანგა',
+ 'pap' => 'პაპიამენტო',
+ 'pau' => 'ფალაუანი',
+ 'pcm' => 'ნიგერიული კრეოლური',
'peo' => 'ძველი სპარსული',
'phn' => 'ფინიკიური',
'pi' => 'პალი',
'pl' => 'პოლონური',
+ 'prg' => 'პრუსიული',
'pro' => 'ძველი პროვანსული',
'ps' => 'პუშტუ',
'pt' => 'პორტუგალიური',
@@ -315,16 +362,22 @@ $languageNames = array(
'rof' => 'რომბო',
'rom' => 'ბოშური',
'ru' => 'რუსული',
+ 'rup' => 'არომანული',
'rw' => 'კინიარუანდა',
'rwk' => 'რუა',
'sa' => 'სანსკრიტი',
+ 'sad' => 'სანდავე',
'sah' => 'იაკუტური',
'sam' => 'სამარიულ-არამეული',
'saq' => 'სამბურუ',
+ 'sat' => 'სანტალი',
+ 'sba' => 'ნგამბაი',
'sbp' => 'სანგუ',
'sc' => 'სარდინიული',
'scn' => 'სიცილიური',
+ 'sco' => 'შოტლანდიური',
'sd' => 'სინდჰური',
+ 'sdh' => 'სამხრეთქურთული',
'se' => 'ჩრდილოეთ საამური',
'see' => 'სენეკა',
'seh' => 'სენა',
@@ -340,55 +393,77 @@ $languageNames = array(
'sk' => 'სლოვაკური',
'sl' => 'სლოვენური',
'sm' => 'სამოა',
- 'sma' => 'სამხრეთ საამური',
+ 'sma' => 'სამხრეთსამური',
'smj' => 'ლულე-საამური',
'smn' => 'ინარი-საამური',
'sms' => 'სკოლტ-საამური',
'sn' => 'შონა',
+ 'snk' => 'სონინკე',
'so' => 'სომალიური',
'sq' => 'ალბანური',
'sr' => 'სერბული',
+ 'srn' => 'სრანან ტონგო',
+ 'ss' => 'სუატი',
+ 'ssy' => 'საჰო',
'st' => 'სამხრეთ სოთოს ენა',
'su' => 'სუნდური',
+ 'suk' => 'სუკუმა',
'sux' => 'შუმერული',
'sv' => 'შვედური',
'sw' => 'სუაჰილი',
+ 'sw-cd' => 'კონგოს სუაჰილი',
'swb' => 'კომორული',
- 'swc' => 'კონგოს სუაჰილი',
'syc' => 'კლასიკური სირიული',
'syr' => 'სირიული',
'ta' => 'ტამილური',
'te' => 'ტელუგუ',
+ 'tem' => 'ტინმე',
'teo' => 'ტესო',
+ 'tet' => 'ტეტუმი',
'tg' => 'ტაჯიკური',
'th' => 'ტაი',
- 'ti' => 'თიგრინია',
+ 'ti' => 'ტიგრინია',
'tig' => 'თიგრე',
'tk' => 'თურქმენული',
'tlh' => 'კლინგონი',
'tn' => 'ტსვანა',
'to' => 'ტონგანური',
+ 'tpi' => 'ტოკ-პისინი',
'tr' => 'თურქული',
+ 'trv' => 'ტაროკო',
+ 'ts' => 'ტსონგა',
'tt' => 'თათრული',
+ 'tum' => 'ტუმბუკა',
+ 'tvl' => 'ტუვალუ',
'tw' => 'თუი',
'twq' => 'ტასავაქი',
+ 'ty' => 'ტაიტური',
'tyv' => 'ტუვა',
'tzm' => 'ცენტრალური მოროკოს ტამაზიგხტი',
'udm' => 'უდმურტული',
'ug' => 'უიღურული',
'uga' => 'უგარითული',
'uk' => 'უკრაინული',
+ 'umb' => 'უმბუნდუ',
'und' => 'უცნობი ენა',
'ur' => 'ურდუ',
'uz' => 'უზბეკური',
'vai' => 'ვაი',
+ 've' => 'ვენდა',
'vi' => 'ვიეტნამური',
+ 'vo' => 'ვოლაპუკი',
'vun' => 'ვუნჯო',
+ 'wa' => 'ვალონური',
+ 'wae' => 'ვალსერი',
'wal' => 'ველაითა',
+ 'war' => 'ვარაი',
+ 'wbp' => 'ვალპირი',
'wo' => 'ვოლოფური',
'xal' => 'ყალმუხური',
'xh' => 'ქჰოსა',
'xog' => 'სოგა',
+ 'yav' => 'იანგბენი',
+ 'ybb' => 'იემბა',
'yi' => 'იდიში',
'yo' => 'იორუბა',
'yue' => 'კანტონური',
@@ -399,11 +474,12 @@ $languageNames = array(
'zh-hans' => 'გამარტივებული ჩინური',
'zh-hant' => 'ტრადიციული ჩინური',
'zu' => 'ზულუ',
+ 'zun' => 'ზუნი',
'zxx' => 'ლინგვისტური შიგთავსი არ არის',
'zza' => 'ზაზაკი',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'ADP' => 'ანდორული პესეტა',
'AED' => 'არაბთა გაერთიანებული საამიროების დირჰამი',
'AFA' => 'ავღანი (1927–2002)',
@@ -448,12 +524,14 @@ $currencyNames = array(
'BTN' => 'ბუტანური ნგულტრუმი',
'BWP' => 'ბოცვანური პულა',
'BYB' => 'ახალი ბელარუსიული რუბლი (1994–1999)',
- 'BYR' => 'ბელორუსული რუბლი',
+ 'BYN' => 'ბელორუსული რუბლი',
+ 'BYR' => 'ბელორუსული რუბლი (2000–2016)',
'BZD' => 'ბელიზის დოლარი',
'CAD' => 'კანადური დოლარი',
'CDF' => 'კონგოს ფრანკი',
'CHF' => 'შვეიცარიული ფრანკი',
'CLP' => 'ჩილეს პესო',
+ 'CNH' => 'ჩინური იუანი (ოფშორი)',
'CNY' => 'ჩინური იუანი',
'COP' => 'კოლუმბიური პესო',
'CRC' => 'კოსტა-რიკული კოლონი',
@@ -539,7 +617,8 @@ $currencyNames = array(
'MMK' => 'მიანმარის კიატი',
'MNT' => 'მონღოლური ტუგრიკი',
'MOP' => 'მაკაუს პატაკა',
- 'MRO' => 'მავრიტანული უგია',
+ 'MRO' => 'მავრიტანული უგია (1973–2017)',
+ 'MRU' => 'მავრიტანული უგია',
'MTL' => 'მალტის ლირა',
'MTP' => 'მალტის გირვანქა',
'MUR' => 'მავრიტანული რუპია',
@@ -562,8 +641,8 @@ $currencyNames = array(
'OMR' => 'ომანის რიალი',
'PAB' => 'პანამური ბალბოა',
'PEI' => 'პერუს ინტი',
- 'PEN' => 'პერუს ახალი სოლი',
- 'PES' => 'პერუს სოლი',
+ 'PEN' => 'პერუს სოლი',
+ 'PES' => 'პერუს სოლი (1863–1965)',
'PGK' => 'პაპუა-ახალი გვინეის კინა',
'PHP' => 'ფილიპინური პესო',
'PKR' => 'პაკისტანური რუპია',
@@ -593,7 +672,8 @@ $currencyNames = array(
'SRD' => 'სურინამული დოლარი',
'SRG' => 'სურინამის გულდენი',
'SSP' => 'სამხრეთ სუდანური ფუნტი',
- 'STD' => 'სან-ტომე და პრინსიპის დობრა',
+ 'STD' => 'სან-ტომე და პრინსიპის დობრა (1977–2017)',
+ 'STN' => 'სან-ტომე და პრინსიპის დობრა',
'SUR' => 'საბჭოთა რუბლი',
'SYP' => 'სირიული ფუნტი',
'SZL' => 'სვაზილენდის ლილანგენი',
@@ -620,18 +700,19 @@ $currencyNames = array(
'UYU' => 'ურუგვაის პესო',
'UZS' => 'უზბეკური სუმი',
'VEB' => 'ვენესუელის ბოლივარი (1871–2008)',
- 'VEF' => 'ვენესუელის ბოლივარი',
+ 'VEF' => 'ვენესუელის ბოლივარი (2008–2018)',
+ 'VES' => 'ვენესუელის ბოლივარი',
'VND' => 'ვიეტნამური დონგი',
'VUV' => 'ვანუატუს ვატუ',
'WST' => 'სამოური ტალა',
- 'XAF' => 'CFA ფრანკი (BEAC)',
+ 'XAF' => 'ცენტრალურ აფრიკული CFA ფრანკი',
'XAG' => 'ვერცხლი',
'XBA' => 'ევროპული კომპპოზიტური ერთეული',
'XBB' => 'ევროპული ფულადი ერთეული',
'XCD' => 'აღმოსავლეთ კარიბიული დოლარი',
'XEU' => 'ევროპული სავალუტო ერთეული',
'XFO' => 'ფრანგული ოქროს ფრანკი',
- 'XOF' => '(CFA) ფრანკი (BCEAO)',
+ 'XOF' => 'დასავლეთ აფრიკული CFA ფრანკი',
'XPF' => 'CFP ფრანკი',
'XXX' => 'უცნობი ვალუტა',
'YDD' => 'იემენის დინარი',
@@ -645,9 +726,9 @@ $currencyNames = array(
'ZRN' => 'ზაირის ახალი ზაირი',
'ZRZ' => 'ზაირის ზაირი',
'ZWD' => 'ზიმბაბვეს დოლარი',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'AED' => 'AED',
'AFN' => 'AFN',
'ALL' => 'ALL',
@@ -671,12 +752,14 @@ $currencySymbols = array(
'BSD' => 'BSD',
'BTN' => 'BTN',
'BWP' => 'BWP',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CA$',
'CDF' => 'CDF',
'CHF' => 'CHF',
'CLP' => 'CLP',
+ 'CNH' => 'CNH',
'CNY' => 'CNY',
'COP' => 'COP',
'CRC' => 'CRC',
@@ -695,7 +778,7 @@ $currencySymbols = array(
'FJD' => 'FJD',
'FKP' => 'FKP',
'GBP' => '£',
- 'GEL' => 'GEL',
+ 'GEL' => '₾',
'GHS' => 'GHS',
'GIP' => 'GIP',
'GMD' => 'GMD',
@@ -740,6 +823,7 @@ $currencySymbols = array(
'MNT' => 'MNT',
'MOP' => 'MOP',
'MRO' => 'MRO',
+ 'MRU' => 'MRU',
'MUR' => 'MUR',
'MVR' => 'MVR',
'MWK' => 'MWK',
@@ -777,6 +861,7 @@ $currencySymbols = array(
'SRD' => 'SRD',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'STN',
'SYP' => 'SYP',
'SZL' => 'SZL',
'THB' => 'THB',
@@ -794,6 +879,7 @@ $currencySymbols = array(
'UYU' => 'UYU',
'UZS' => 'UZS',
'VEF' => 'VEF',
+ 'VES' => 'VES',
'VND' => 'VND',
'VUV' => 'VUV',
'WST' => 'WST',
@@ -805,9 +891,9 @@ $currencySymbols = array(
'ZAR' => 'ZAR',
'ZMK' => 'ZMK',
'ZMW' => 'ZMW',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'ამაღლების კუნძული',
'AD' => 'ანდორა',
'AE' => 'არაბთა გაერთიანებული საამიროები',
@@ -816,7 +902,6 @@ $countryNames = array(
'AI' => 'ანგილია',
'AL' => 'ალბანეთი',
'AM' => 'სომხეთი',
- 'AN' => 'ნიდერლანდების ანტილები',
'AO' => 'ანგოლა',
'AQ' => 'ანტარქტიკა',
'AR' => 'არგენტინა',
@@ -836,19 +921,19 @@ $countryNames = array(
'BI' => 'ბურუნდი',
'BJ' => 'ბენინი',
'BL' => 'სენ-ბართელმი',
- 'BM' => 'ბერმუდი',
+ 'BM' => 'ბერმუდა',
'BN' => 'ბრუნეი',
'BO' => 'ბოლივია',
'BQ' => 'კარიბის ნიდერლანდები',
'BR' => 'ბრაზილია',
'BS' => 'ბაჰამის კუნძულები',
- 'BT' => 'ბჰუტანი',
+ 'BT' => 'ბუტანი',
'BV' => 'ბუვე',
'BW' => 'ბოტსვანა',
'BY' => 'ბელარუსი',
'BZ' => 'ბელიზი',
'CA' => 'კანადა',
- 'CC' => 'ქოქოსის კუნძულები',
+ 'CC' => 'ქოქოსის (კილინგის) კუნძულები',
'CD' => 'კონგო - კინშასა',
'CF' => 'ცენტრალური აფრიკის რესპუბლიკა',
'CG' => 'კონგო - ბრაზავილი',
@@ -866,7 +951,7 @@ $countryNames = array(
'CW' => 'კიურასაო',
'CX' => 'შობის კუნძული',
'CY' => 'კვიპროსი',
- 'CZ' => 'ჩეხეთის რესპუბლიკა',
+ 'CZ' => 'ჩეხეთი',
'DE' => 'გერმანია',
'DG' => 'დიეგო-გარსია',
'DJ' => 'ჯიბუტი',
@@ -878,11 +963,12 @@ $countryNames = array(
'EC' => 'ეკვადორი',
'EE' => 'ესტონეთი',
'EG' => 'ეგვიპტე',
- 'EH' => 'დასავლეთი საჰარა',
+ 'EH' => 'დასავლეთ საჰარა',
'ER' => 'ერიტრეა',
'ES' => 'ესპანეთი',
'ET' => 'ეთიოპია',
'EU' => 'ევროკავშირი',
+ 'EZ' => 'ევროზონა',
'FI' => 'ფინეთი',
'FJ' => 'ფიჯი',
'FK' => 'ფოლკლენდის კუნძულები',
@@ -903,7 +989,7 @@ $countryNames = array(
'GP' => 'გვადელუპა',
'GQ' => 'ეკვატორული გვინეა',
'GR' => 'საბერძნეთი',
- 'GS' => 'სამხრეთი გეორგია და სამხრეთ სენდვიჩის კუნძულები',
+ 'GS' => 'სამხრეთ ჯორჯია და სამხრეთ სენდვიჩის კუნძულები',
'GT' => 'გვატემალა',
'GU' => 'გუამი',
'GW' => 'გვინეა-ბისაუ',
@@ -920,7 +1006,7 @@ $countryNames = array(
'IL' => 'ისრაელი',
'IM' => 'მენის კუნძული',
'IN' => 'ინდოეთი',
- 'IO' => 'ბრიტ. ტერიტ. ინდ. ოკეანეში',
+ 'IO' => 'ბრიტანეთის ტერიტორია ინდოეთის ოკეანეში',
'IQ' => 'ერაყი',
'IR' => 'ირანი',
'IS' => 'ისლანდია',
@@ -935,8 +1021,8 @@ $countryNames = array(
'KI' => 'კირიბატი',
'KM' => 'კომორის კუნძულები',
'KN' => 'სენტ-კიტსი და ნევისი',
- 'KP' => 'ჩრდილოეთი კორეა',
- 'KR' => 'სამხრეთი კორეა',
+ 'KP' => 'ჩრდილოეთ კორეა',
+ 'KR' => 'სამხრეთ კორეა',
'KW' => 'ქუვეითი',
'KY' => 'კაიმანის კუნძულები',
'KZ' => 'ყაზახეთი',
@@ -947,7 +1033,7 @@ $countryNames = array(
'LK' => 'შრი-ლანკა',
'LR' => 'ლიბერია',
'LS' => 'ლესოთო',
- 'LT' => 'ლიტვა',
+ 'LT' => 'ლიეტუვა',
'LU' => 'ლუქსემბურგი',
'LV' => 'ლატვია',
'LY' => 'ლიბია',
@@ -969,7 +1055,7 @@ $countryNames = array(
'MS' => 'მონსერატი',
'MT' => 'მალტა',
'MU' => 'მავრიკი',
- 'MV' => 'მალდივის რესპუბლიკა',
+ 'MV' => 'მალდივები',
'MW' => 'მალავი',
'MX' => 'მექსიკა',
'MY' => 'მალაიზია',
@@ -1023,21 +1109,21 @@ $countryNames = array(
'SN' => 'სენეგალი',
'SO' => 'სომალი',
'SR' => 'სურინამი',
- 'SS' => 'სამხრეთი სუდანი',
+ 'SS' => 'სამხრეთ სუდანი',
'ST' => 'სან-ტომე და პრინსიპი',
'SV' => 'სალვადორი',
'SX' => 'სინტ-მარტენი',
'SY' => 'სირია',
'SZ' => 'სვაზილენდი',
'TA' => 'ტრისტან-და-კუნია',
- 'TC' => 'ტერქსისა და კაიკოსის კუნძულები',
+ 'TC' => 'თერქს-ქაიქოსის კუნძულები',
'TD' => 'ჩადი',
'TF' => 'ფრანგული სამხრეთის ტერიტორიები',
'TG' => 'ტოგო',
'TH' => 'ტაილანდი',
'TJ' => 'ტაჯიკეთი',
'TK' => 'ტოკელაუ',
- 'TL' => 'აღმოსავლეთი ტიმორი',
+ 'TL' => 'ტიმორ-ლესტე',
'TM' => 'თურქმენეთი',
'TN' => 'ტუნისი',
'TO' => 'ტონგა',
@@ -1049,6 +1135,7 @@ $countryNames = array(
'UA' => 'უკრაინა',
'UG' => 'უგანდა',
'UM' => 'აშშ-ის შორეული კუნძულები',
+ 'UN' => 'გაერო',
'US' => 'აშშ',
'UY' => 'ურუგვაი',
'UZ' => 'უზბეკეთი',
@@ -1067,9 +1154,11 @@ $countryNames = array(
'ZA' => 'სამხრეთ აფრიკის რესპუბლიკა',
'ZM' => 'ზამბია',
'ZW' => 'ზიმბაბვე',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-one' => '{0} საუკუნე',
+ 'century-other' => '{0} საუკუნე',
'day-future-one' => '{0} დღეში',
'day-future-other' => '{0} დღეში',
'day-narrow-future-one' => '{0} დღეში',
@@ -1084,6 +1173,18 @@ $timeUnits = array(
'day-short-future-other' => '{0} დღეში',
'day-short-past-one' => '{0} დღის წინ',
'day-short-past-other' => '{0} დღის წინ',
+ 'fri-future-one' => '{0} პარასკევში',
+ 'fri-future-other' => '{0} პარასკევში',
+ 'fri-narrow-future-one' => '{0} პარასკევში',
+ 'fri-narrow-future-other' => '{0} პარასკევში',
+ 'fri-narrow-past-one' => '{0} პარასკევის წინ',
+ 'fri-narrow-past-other' => '{0} პარასკევის წინ',
+ 'fri-past-one' => '{0} პარასკევის წინ',
+ 'fri-past-other' => '{0} პარასკევის წინ',
+ 'fri-short-future-one' => '{0} პარასკევში',
+ 'fri-short-future-other' => '{0} პარასკევში',
+ 'fri-short-past-one' => '{0} პარასკევის წინ',
+ 'fri-short-past-other' => '{0} პარასკევის წინ',
'hour-future-one' => '{0} საათში',
'hour-future-other' => '{0} საათში',
'hour-narrow-future-one' => '{0} საათში',
@@ -1116,6 +1217,18 @@ $timeUnits = array(
'minute-short-future-other' => '{0} წუთში',
'minute-short-past-one' => '{0} წთ წინ',
'minute-short-past-other' => '{0} წთ წინ',
+ 'mon-future-one' => '{0} ორშაბათში',
+ 'mon-future-other' => '{0} ორშაბათში',
+ 'mon-narrow-future-one' => '{0} ორშაბათში',
+ 'mon-narrow-future-other' => '{0} ორშაბათში',
+ 'mon-narrow-past-one' => '{0} ორშაბათის წინ',
+ 'mon-narrow-past-other' => '{0} ორშაბათის წინ',
+ 'mon-past-one' => '{0} ორშაბათის წინ',
+ 'mon-past-other' => '{0} ორშაბათის წინ',
+ 'mon-short-future-one' => '{0} ორშაბათში',
+ 'mon-short-future-other' => '{0} ორშაბათში',
+ 'mon-short-past-one' => '{0} ორშაბათის წინ',
+ 'mon-short-past-other' => '{0} ორშაბათის წინ',
'month-future-one' => '{0} თვეში',
'month-future-other' => '{0} თვეში',
'month-narrow-future-one' => '{0} თვეში',
@@ -1144,6 +1257,18 @@ $timeUnits = array(
'quarter-short-future-other' => '{0} კვარტალში',
'quarter-short-past-one' => '{0} კვარტ. წინ',
'quarter-short-past-other' => '{0} კვარტ. წინ',
+ 'sat-future-one' => '{0} შაბათში',
+ 'sat-future-other' => '{0} შაბათში',
+ 'sat-narrow-future-one' => '{0} შაბათში',
+ 'sat-narrow-future-other' => '{0} შაბათში',
+ 'sat-narrow-past-one' => '{0} შაბათის წინ',
+ 'sat-narrow-past-other' => '{0} შაბათის წინ',
+ 'sat-past-one' => '{0} შაბათის წინ',
+ 'sat-past-other' => '{0} შაბათის წინ',
+ 'sat-short-future-one' => '{0} შაბათში',
+ 'sat-short-future-other' => '{0} შაბათში',
+ 'sat-short-past-one' => '{0} შაბათის წინ',
+ 'sat-short-past-other' => '{0} შაბათის წინ',
'second-future-one' => '{0} წამში',
'second-future-other' => '{0} წამში',
'second-narrow-future-one' => '{0} წამში',
@@ -1158,6 +1283,54 @@ $timeUnits = array(
'second-short-future-other' => '{0} წამში',
'second-short-past-one' => '{0} წმ წინ',
'second-short-past-other' => '{0} წმ წინ',
+ 'sun-future-one' => '{0} კვირაში',
+ 'sun-future-other' => '{0} კვირაში',
+ 'sun-narrow-future-one' => '{0} კვირაში',
+ 'sun-narrow-future-other' => '{0} კვირაში',
+ 'sun-narrow-past-one' => '{0} კვირის წინ',
+ 'sun-narrow-past-other' => '{0} კვირი წინ',
+ 'sun-past-one' => '{0} კვირის წინ',
+ 'sun-past-other' => '{0} კვირი წინ',
+ 'sun-short-future-one' => '{0} კვირაში',
+ 'sun-short-future-other' => '{0} კვირაში',
+ 'sun-short-past-one' => '{0} კვირის წინ',
+ 'sun-short-past-other' => '{0} კვირის წინ',
+ 'thu-future-one' => '{0} ხუთშაბათში',
+ 'thu-future-other' => '{0} ხუთშაბათში',
+ 'thu-narrow-future-one' => '{0} ხუთშაბათში',
+ 'thu-narrow-future-other' => '{0} ხუთშაბათში',
+ 'thu-narrow-past-one' => '{0} ხუთშაბათის წინ',
+ 'thu-narrow-past-other' => '{0} ხუთშაბათის წინ',
+ 'thu-past-one' => '{0} ხუთშაბათის წინ',
+ 'thu-past-other' => '{0} ხუთშაბათის წინ',
+ 'thu-short-future-one' => '{0} ხუთშაბათში',
+ 'thu-short-future-other' => '{0} ხუთშაბათში',
+ 'thu-short-past-one' => '{0} ხუთშაბათის წინ',
+ 'thu-short-past-other' => '{0} ხუთშაბათის წინ',
+ 'tue-future-one' => '{0} სამშაბათში',
+ 'tue-future-other' => '{0} სამშაბათში',
+ 'tue-narrow-future-one' => '{0} სამშაბათში',
+ 'tue-narrow-future-other' => '{0} სამშაბათში',
+ 'tue-narrow-past-one' => '{0} სამშაბათის წინ',
+ 'tue-narrow-past-other' => '{0} სამშაბათის წინ',
+ 'tue-past-one' => '{0} სამშაბათის წინ',
+ 'tue-past-other' => '{0} სამშაბათის წინ',
+ 'tue-short-future-one' => '{0} სამშაბათში',
+ 'tue-short-future-other' => '{0} სამშაბათში',
+ 'tue-short-past-one' => '{0} სამშაბათის წინ',
+ 'tue-short-past-other' => '{0} სამშაბათის წინ',
+ 'wed-future-one' => '{0} ოთხშაბათში',
+ 'wed-future-other' => '{0} ოთხშაბათში',
+ 'wed-narrow-future-one' => '{0} ოთხშაბათში',
+ 'wed-narrow-future-other' => '{0} ოთხშაბათში',
+ 'wed-narrow-past-one' => '{0} ოთხშაბათის წინ',
+ 'wed-narrow-past-other' => '{0} ოთხშაბათის წინ',
+ 'wed-past-one' => '{0} ოთხშაბათის წინ',
+ 'wed-past-other' => '{0} ოთხშაბათის წინ',
+ 'wed-short-future-one' => '{0} ოთხშაბათში',
+ 'wed-short-future-other' => '{0} ოთხშაბათში',
+ 'wed-short-past-one' => '{0} ოთხშაბათის წინ',
+ 'wed-short-past-other' => '{0} ოთხშაბათის წინ',
'week-future-one' => '{0} კვირაში',
'week-future-other' => '{0} კვირაში',
'week-narrow-future-one' => '{0} კვირაში',
@@ -1186,4 +1359,4 @@ $timeUnits = array(
'year-short-future-other' => '{0} წელში',
'year-short-past-one' => '{0} წლის წინ',
'year-short-past-other' => '{0} წლის წინ',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesKab.php b/MLEB/cldr/CldrNames/CldrNamesKab.php
index 9a22e205..261af5eb 100644
--- a/MLEB/cldr/CldrNames/CldrNamesKab.php
+++ b/MLEB/cldr/CldrNames/CldrNamesKab.php
@@ -1,116 +1,950 @@
<?php
-$languageNames = array(
+$languageNames = [
+ 'aa' => 'Tafarit',
+ 'ab' => 'Tabxazit',
+ 'ace' => 'Tačinist',
+ 'ada' => 'Tadangmit',
+ 'ady' => 'Tadiganit',
+ 'af' => 'Tafrikant',
+ 'agq' => 'Taghemit',
+ 'ain' => 'Taynut',
'ak' => 'Takanit',
+ 'ale' => 'Taliyut',
+ 'alt' => 'Talṭayt n unẓul',
'am' => 'Tamahrict',
+ 'an' => 'Taṛagunit',
+ 'anp' => 'Tangikat',
'ar' => 'Taɛrabt',
+ 'arn' => 'Tamapuct',
+ 'arp' => 'Taṛapahut',
+ 'as' => 'Tasamizt',
+ 'asa' => 'Tasut',
+ 'ast' => 'Tasturit',
+ 'av' => 'Tavarikt',
+ 'awa' => 'Tawadhit',
+ 'ay' => 'Taymarit',
+ 'az' => 'Tazerbiǧanit',
+ 'ba' => 'Tabackirt',
+ 'ban' => 'Tabalinit',
+ 'bas' => 'Tabasat',
'be' => 'Tabilarusit',
+ 'bem' => 'Tabimbat',
+ 'bez' => 'Tabinat',
'bg' => 'Tabulgarit',
+ 'bho' => 'Tabujpurit',
+ 'bi' => 'Tabislamat',
+ 'bin' => 'Tabinit',
+ 'bla' => 'Tasiksikat',
+ 'bm' => 'Tabambarat',
'bn' => 'Tabengalit',
+ 'bo' => 'Tatibitant',
+ 'br' => 'Tabrutunt',
+ 'brx' => 'Tabudut',
+ 'bs' => 'Tabusnit',
+ 'bug' => 'Tabujinit',
+ 'byn' => 'Tablint',
+ 'ca' => 'Takaṭalant',
+ 'ce' => 'Tačičant',
+ 'ceb' => 'Tacibwanit',
+ 'cgg' => 'Tacigat',
+ 'ch' => 'Tacamuṛut',
+ 'chk' => 'Tačukizt',
+ 'chm' => 'Tamarit',
+ 'cho' => 'Tacuktawt',
+ 'chr' => 'Tacirukit',
+ 'chy' => 'Taciyant',
+ 'ckb' => 'Takurdit Talemmast',
+ 'co' => 'Takuṛsit',
+ 'crs' => 'Takriyult n Saycal',
'cs' => 'Tačikit',
+ 'cu' => 'Taslavt n tmezgida',
+ 'cv' => 'Tačubact',
+ 'cy' => 'Takusit',
+ 'da' => 'Tadanit',
+ 'dak' => 'Tadakutat',
+ 'dar' => 'Tadargwat',
+ 'dav' => 'Tataytat',
'de' => 'Talmant',
+ 'de-at' => 'Talmanit n Ustriya',
+ 'de-ch' => 'Talmanit n Swis',
+ 'dgr' => 'Tadugribt',
+ 'dje' => 'Tazarmat',
+ 'dsb' => 'Taṣurbyant n wadda',
+ 'dua' => 'Tadwalat',
+ 'dv' => 'Tamaldivit',
+ 'dyo' => 'Jula-Funyi',
+ 'dz' => 'Tadzungat',
+ 'dzg' => 'Tadazagat',
+ 'ebu' => 'Tumbut',
+ 'ee' => 'Tiwit',
+ 'efi' => 'Tafikt',
+ 'eka' => 'Takajukt',
'el' => 'Tagrikit',
'en' => 'Taglizit',
+ 'en-au' => 'Taglizit n Ustṛalya',
+ 'en-ca' => 'Taglizit n Kanada',
+ 'en-gb' => 'Taglizit n Briṭanya',
+ 'en-us' => 'Taglizit n Marikan',
+ 'eo' => 'Taspirantit',
'es' => 'Taspenyulit',
+ 'es-419' => 'Taspanit n Temrikt Talaṭinit',
+ 'es-es' => 'Taspanit n Turuft',
+ 'es-mx' => 'Taspanit n Miksik',
+ 'et' => 'Tasṭunit',
+ 'eu' => 'Tabaskit',
+ 'ewo' => 'Tawundut',
'fa' => 'Tafarisit',
+ 'ff' => 'Tafulaht',
+ 'fi' => 'Tafinit',
+ 'fil' => 'Tafilipant',
+ 'fj' => 'Tafiǧit',
+ 'fo' => 'Tafirwanit',
+ 'fon' => 'Tafunit',
'fr' => 'Tafransist',
+ 'fr-ca' => 'Tafransist n Kanada',
+ 'fr-ch' => 'Tafransist n Swis',
+ 'fur' => 'Tafriyulant',
+ 'fy' => 'Tafrizunt n umalu',
+ 'ga' => 'Tirlandit',
+ 'gaa' => 'Tagat',
+ 'gd' => 'Tagaylikt n Skuṭland',
+ 'gez' => 'Tagizit',
+ 'gil' => 'Tajibṛaltart',
+ 'gl' => 'Tagalisit',
+ 'gn' => 'Tagaranit',
+ 'gor' => 'Taguruntalut',
+ 'gsw' => 'Talmanit n Swiss',
+ 'gu' => 'Taguǧaṛatit',
+ 'guz' => 'Tagusit',
+ 'gv' => 'Tamanksit',
+ 'gwi' => 'Tagwičint',
'ha' => 'Tahwasit',
+ 'haw' => 'Tahawayt',
+ 'he' => 'Taɛebrit',
'hi' => 'Tahendit',
+ 'hil' => 'Tahiligaynunt',
+ 'hmn' => 'Tahmungt',
+ 'hr' => 'Takeṛwasit',
+ 'hsb' => 'Tasirbit n ufella',
+ 'ht' => 'Takriyult n Hayti',
'hu' => 'Tahungarit',
+ 'hup' => 'Tahupat',
+ 'hy' => 'Taṛminit',
+ 'hz' => 'Tahiriṛut',
+ 'ia' => 'Tutlayt tagraɣlant',
+ 'iba' => 'Tibant',
+ 'ibb' => 'Tabibyut',
'id' => 'Tandunisit',
'ig' => 'Tigbut',
+ 'ii' => 'Yi-n-Sicwan',
+ 'ilo' => 'Tilukanut',
+ 'inh' => 'Tinguct',
+ 'io' => 'Tidut',
+ 'is' => 'Taṣlandit',
'it' => 'Taṭalyanit',
+ 'iu' => 'Tinuktitut',
'ja' => 'Tajapunit',
+ 'jbo' => 'Talujbant',
+ 'jgo' => 'Tangumbat',
+ 'jmc' => 'Tamačamit',
'jv' => 'Tajavanit',
+ 'ka' => 'Tajyurjit',
'kab' => 'Taqbaylit',
+ 'kac' => 'Takacint',
+ 'kaj' => 'Tajjut',
+ 'kam' => 'Takambat',
+ 'kbd' => 'Takabardint',
+ 'kcg' => 'Tatyapt',
+ 'kde' => 'Tamakundit',
+ 'kea' => 'Takapverdit',
+ 'kfo' => 'Takurut',
+ 'kha' => 'Taxasit',
+ 'khq' => 'koyra chiini',
+ 'ki' => 'Takikuyut',
+ 'kj' => 'Takwanyamat',
+ 'kk' => 'Takazaxt',
+ 'kkj' => 'Takakut',
+ 'kl' => 'Tagrinlandit',
+ 'kln' => 'Takalinjint',
'km' => 'Takemrit',
+ 'kmb' => 'Takimbundut',
+ 'kn' => 'Takannadat',
'ko' => 'Takurit',
+ 'kok' => 'Takunkanit',
+ 'kpe' => 'Takpilit',
+ 'kr' => 'Takanurit',
+ 'krc' => 'Takaračayt Tabalkart',
+ 'krl' => 'Takarilyant',
+ 'kru' => 'Takuruxt',
+ 'ks' => 'Takacmirit',
+ 'ksb' => 'Tacambalat',
+ 'ksf' => 'Tabafyat',
+ 'ksh' => 'Takulunyant',
+ 'ku' => 'Takurdit',
+ 'kum' => 'Takumyakt',
+ 'kv' => 'Taklingunit',
+ 'kw' => 'Takurnikt',
+ 'ky' => 'Takirgizt',
+ 'la' => 'Talaṭinit',
+ 'lad' => 'Taladinut',
+ 'lag' => 'Talangit',
+ 'lb' => 'Taluksumburgit',
+ 'lez' => 'Talezɣant',
+ 'lg' => 'Tagandat',
+ 'li' => 'Talimburjwat',
+ 'lkt' => 'Talakutat',
+ 'ln' => 'Talingalat',
+ 'lo' => 'Talawsit',
+ 'loz' => 'Taluzit',
+ 'lrc' => 'Talurit n ugafa',
+ 'lt' => 'Talitwanit',
+ 'lu' => 'Talubit-Takatangit',
+ 'lua' => 'Talubat n Lulua',
+ 'lun' => 'Talundat',
+ 'luo' => 'Taluwut',
+ 'lus' => 'Talucayt',
+ 'luy' => 'Taluhyat',
+ 'lv' => 'Talitunit',
+ 'mad' => 'Tamadurizt',
+ 'mag' => 'Tamagahit',
+ 'mai' => 'Tamaytilit',
+ 'mak' => 'Tamakassart',
+ 'mas' => 'Tamassayt',
+ 'mdf' => 'Tamuksat',
+ 'men' => 'Tamandit',
+ 'mer' => 'Tamirut',
+ 'mfe' => 'Takriyult n Muris',
+ 'mg' => 'Tamalgact',
+ 'mgh' => 'Makhuwa-meetto',
+ 'mgo' => 'Tamitat',
+ 'mh' => 'Tamaṛcalit',
+ 'mi' => 'Tamawrit',
+ 'mic' => 'Tamikmakt',
+ 'min' => 'Taminangkabut',
+ 'mk' => 'Tamasidunit',
+ 'ml' => 'Tamalayalamit',
+ 'mn' => 'Tamungulit',
+ 'mni' => 'Tamanipurit',
+ 'moh' => 'Tamuhawkt',
+ 'mos' => 'Tamurit',
+ 'mr' => 'Tamaṛatit',
'ms' => 'Tamalawit',
+ 'mt' => 'Tamalṭit',
+ 'mua' => 'Tamundangt',
+ 'mul' => 'Tugett n tutlayin',
+ 'mus' => 'Takrikt',
+ 'mwl' => 'Tamirandit',
'my' => 'Taburmisit',
+ 'myv' => 'Tirzyat',
+ 'mzn' => 'Tamazandiranit',
+ 'na' => 'Tanurwant',
+ 'nap' => 'Tanapolitant',
+ 'naq' => 'Tanamat',
+ 'nb' => 'Tanurvijit Bukmal',
+ 'nd' => 'Tandibilit n Ugafa',
'ne' => 'Tanipalit',
+ 'new' => 'Taniwarit',
+ 'ng' => 'Tandungat',
+ 'nia' => 'Tanizt',
+ 'niu' => 'Tanyunit',
'nl' => 'Tadučit',
+ 'nl-be' => 'Taflamant',
+ 'nmg' => 'Takwazyut',
+ 'nn' => 'Tanuṛvijt ninuṛsk',
+ 'nnh' => 'Tangimbunt',
+ 'nog' => 'Tanugayt',
+ 'nqo' => 'Tankut',
+ 'nr' => 'Tandibilit n unzul',
+ 'nso' => 'Talizutut n ugafa',
+ 'nus' => 'Tanyurt',
+ 'nv' => 'Tanavahut',
+ 'ny' => 'Tanyanjat',
+ 'nyn' => 'Tanyankulit',
+ 'oc' => 'Tuksitant',
+ 'om' => 'Turumut',
+ 'or' => 'Turyat',
+ 'os' => 'Tusitit',
'pa' => 'Tapunjabit',
+ 'pag' => 'Tapangazinant',
+ 'pam' => 'Tapampangant',
+ 'pap' => 'Tapapyamintut',
+ 'pau' => 'Tapalut',
+ 'pcm' => 'Tapidgint n Nijirya',
'pl' => 'Tapulunit',
+ 'prg' => 'Taprusit',
+ 'ps' => 'Tapactut',
'pt' => 'Tapurtugalit',
+ 'pt-br' => 'Tapuṛṭugit (Brizil)',
+ 'pt-pt' => 'Tapuṛṭugit (Purtugal)',
+ 'qu' => 'Takicwit',
+ 'quc' => 'Takict',
+ 'rap' => 'Tarapanwit',
+ 'rar' => 'Tararutungant',
+ 'rm' => 'Tarumancit',
+ 'rn' => 'Tarundit',
'ro' => 'Tarumanit',
+ 'ro-md' => 'Tamuldavt',
+ 'rof' => 'Tarumbut',
'ru' => 'Tarusit',
+ 'rup' => 'Tavalakt',
'rw' => 'Taruwandit',
+ 'rwk' => 'Tarwat',
+ 'sa' => 'Tasanskrit',
+ 'sad' => 'Tasandawit',
+ 'sah' => 'Tayakut',
+ 'saq' => 'Tasamburut',
+ 'sat' => 'Tasantalt',
+ 'sba' => 'Tangambayt',
+ 'sbp' => 'Tasangut',
+ 'sc' => 'Tasardinit',
+ 'scn' => 'Tasisilit',
+ 'sco' => 'Taskutlandit',
+ 'sd' => 'Tasinḍit',
+ 'se' => 'Tasamt n ugafa',
+ 'seh' => 'Tasisinat',
+ 'ses' => 'Takuyraburut n Senni',
+ 'sg' => 'Tasangit',
+ 'shi' => 'Tacelḥit',
+ 'shn' => 'Tacant',
+ 'si' => 'Tasinhalit',
+ 'sk' => 'Tasluvakt',
+ 'sl' => 'Tasluvinit',
+ 'sm' => 'Taṣamwant',
+ 'sma' => 'Tasamit n unzul',
+ 'smj' => 'Tasamit n Lule',
+ 'smn' => 'Tasami n Inari',
+ 'sms' => 'Tasamit n Skolt',
+ 'sn' => 'Tacunit',
+ 'snk' => 'Tasunikit',
'so' => 'Taṣumalit',
+ 'sq' => 'Talbanit',
+ 'sr' => 'Taṣirbit',
+ 'srn' => 'Tasranant n Tongo',
+ 'ss' => 'Taswatit',
+ 'ssy' => 'Tasahut',
+ 'st' => 'Talizutut n Unzul',
+ 'su' => 'Tasudanit',
+ 'suk' => 'Tasukumat',
'sv' => 'Taswidit',
+ 'sw' => 'Taswayilit',
+ 'sw-cd' => 'Taswayilit n Kungu',
+ 'swb' => 'Takumurit',
+ 'syr' => 'Tasiryakt',
'ta' => 'Taṭamulit',
+ 'te' => 'Taluggut',
+ 'tem' => 'Tatimnit',
+ 'teo' => 'Tatizut',
+ 'tet' => 'Tatitumt',
+ 'tg' => 'Tatajikt',
'th' => 'Taṭaylundit',
+ 'ti' => 'Tigrinit',
+ 'tig' => 'Tatigrit',
+ 'tk' => 'Taturkmant',
+ 'tlh' => 'Taklingunt',
+ 'tn' => 'Tattwanit',
+ 'to' => 'Tatungant',
+ 'tpi' => 'Tatukt n Pisin',
'tr' => 'Taṭurkit',
+ 'trv' => 'Tatarukut',
+ 'ts' => 'Ttunga',
+ 'tt' => 'Taṭaṭarit',
+ 'tum' => 'Tatumbukat',
+ 'tvl' => 'Tatuvalut',
+ 'twq' => 'Tatasawaqt',
+ 'ty' => 'Tahesiant',
+ 'tyv' => 'Tatuvat',
+ 'tzm' => 'Tamaziɣt n Waṭlas alemmas',
+ 'udm' => 'Tudmurt',
+ 'ug' => 'Tawigurt',
'uk' => 'Tukranit',
+ 'umb' => 'Tumbundut',
+ 'und' => 'Tutlayt tarussint',
'ur' => 'Turdut',
+ 'uz' => 'Tuzbikt',
+ 'vai' => 'Tavayt',
+ 've' => 'Tavendat',
'vi' => 'Tabyiṭnamit',
+ 'vo' => 'Tavulapukt',
+ 'vun' => 'Tavunjut',
+ 'wa' => 'Tawalunit',
+ 'wae' => 'Tawalsirt',
+ 'wal' => 'Tawalamut',
+ 'war' => 'Tawarayt',
+ 'wo' => 'Tawuluft',
+ 'xal' => 'Takalmukt',
+ 'xh' => 'Taksuzit',
+ 'xog' => 'Tasugat',
+ 'yav' => 'Tayangbent',
+ 'ybb' => 'Yemba',
+ 'yi' => 'Tayiddict',
'yo' => 'Tayurubit',
+ 'yue' => 'Takantunit',
+ 'zgh' => 'Tamaziɣt Tizeɣt Tamerrukit',
'zh' => 'Tacinwat, Tamundarint',
+ 'zh-hans' => 'Tacinwat taḥerfit',
+ 'zh-hant' => 'Tacinwat tamensayt',
'zu' => 'Tazulut',
-);
+ 'zun' => 'Tazunit',
+ 'zxx' => 'Ulac agbur utlayan',
+ 'zza' => 'Tazazakit',
+];
-$currencyNames = array(
+$currencyNames = [
+ 'ADP' => 'Apisetas Anduran',
'AED' => 'Adirham n Tgeldunin Taɛrabin Yedduklen',
+ 'AFA' => 'Afɣani (1927–2002)',
+ 'AFN' => 'Afɣani Afɣan',
+ 'ALK' => 'Alek Albani (1947–1961)',
+ 'ALL' => 'Alek Albani',
+ 'AMD' => 'Adram Armini',
+ 'ANG' => 'Afluran n Antilles',
'AOA' => 'Akwanza n Ungula',
+ 'AOK' => 'Akwanza n Angula (1977–1990)',
+ 'AON' => 'Akwanza amaynut n Angula (1990–2000)',
+ 'AOR' => 'Akwanza n Angula yettwaseggmen (1995–1999)',
+ 'ARA' => 'Ustral n Arjuntin',
+ 'ARL' => 'Apisu aẓayan n Arjuntin (1970–1983)',
+ 'ARM' => 'Apisu n Arjuntin (1881–1970)',
+ 'ARP' => 'Apisu n Arjuntin (1983–1985)',
+ 'ARS' => 'Apisu n Arjuntin',
+ 'ATS' => 'Aciling n Ustriya',
'AUD' => 'Adular n Lusṭrali',
+ 'AWG' => 'Afluran n Aruba',
+ 'AZM' => 'Amanat Aziri (1993–2006)',
+ 'AZN' => 'Amanat Aziri',
+ 'BAD' => 'Adinar Abusni',
+ 'BAM' => 'Amark yettwaseklaten n Busni',
+ 'BBD' => 'Adulaṛ n Barbuda',
+ 'BDT' => 'Ataka n Bingladic',
+ 'BEC' => 'Afrank n Biljik (yettwaselkaten)',
+ 'BEF' => 'Afrank n Biljik',
+ 'BEL' => 'Afrank n Biljik (adriman)',
+ 'BGL' => 'Alev n Bulgar (1962–1999)',
+ 'BGN' => 'Alev n Bulgar',
'BHD' => 'Adinar Abaḥrini',
'BIF' => 'Afrank Aburandi',
+ 'BMD' => 'Adulaṛ n Birmud',
+ 'BND' => 'adular n Brunay',
+ 'BOB' => 'Abulivyanu n Bulivi',
+ 'BOL' => 'Abulivyanu n Bulivi (1863–1963)',
+ 'BOP' => 'Apisu n Bulivi',
+ 'BOV' => 'Amevdul n Bulivi',
+ 'BRB' => 'Akruziru amaynut n Brizil (1967–1986)',
+ 'BRC' => 'Akruzadu n Brizil (1986–1989)',
+ 'BRE' => 'Akruziru n Brizil (1990–1993)',
+ 'BRL' => 'Ariyal n Brizil',
+ 'BRN' => 'Akruzadu amaynut n Brizil',
+ 'BRR' => 'Akruziru',
+ 'BRZ' => 'Akruziru n Brizil (1942–1967)',
+ 'BSD' => 'Adular n Bahamas',
+ 'BTN' => 'Angultrum n Butan',
+ 'BUK' => 'Akyat n Burma',
'BWP' => 'Apula Abusṭwanan',
+ 'BYB' => 'Arubl amaynut n Bilarus (1994–1999)',
+ 'BYN' => 'Arubl n Bilarus',
+ 'BYR' => 'Arubl n Bilarus (2000–2016)',
+ 'BZD' => 'Adular n Biliz',
'CAD' => 'Adular Akanadi',
'CDF' => 'Afrank Akunguli',
+ 'CHE' => 'Uru WIR',
'CHF' => 'Afrank Aswis',
+ 'CHW' => 'Afrank WIR',
+ 'CLE' => 'Askudu n Cili',
+ 'CLF' => 'Aferdis n Usefti n Cili',
+ 'CLP' => 'Apisu n Cili',
+ 'CNX' => 'Adular n Lbanka Taɣerfant n Tacinwit',
'CNY' => 'Ayuwan Renminbi Acinwa',
+ 'COP' => 'Apisu n Kulumbi',
+ 'COU' => 'Aferdis n wazal ilaw n Kulumbi',
+ 'CRC' => 'Akulun n Kustarika',
+ 'CSD' => 'Adinar n Ṣirbya-Muntinigru',
+ 'CSK' => 'Akurun iǧehden Ačikusluvak',
+ 'CUC' => 'Apisu n Kuba yettwaselkaten',
+ 'CUP' => 'Apisu n Kuba',
'CVE' => 'Akabuviradinu Askudi',
+ 'CYP' => 'Apawnd n Cipr',
+ 'CZK' => 'Akurun n Čik',
+ 'DDM' => 'Amark n Walman n usammar',
+ 'DEM' => 'Amark n Walman',
'DJF' => 'Afrank Ajibuti',
+ 'DKK' => 'Akurun n Danmark',
+ 'DOP' => 'Apisu n Duminik',
'DZD' => 'Adinar Azzayri',
+ 'ECS' => 'Asukr n Ikwaṭur',
+ 'ECV' => 'Aferdis n wazal ameɣlal n Ikwaṭur (UVC)',
+ 'EEK' => 'Akurun n Isṭunya',
'EGP' => 'Apund Amaṣri',
'ERN' => 'Anakfa Iritiri',
+ 'ESA' => 'Apisetas n Spanya (amiḍan A)',
+ 'ESB' => 'Apisetas n Spanya (amiḍan yettwaselkaten)',
+ 'ESP' => 'Apisetas n Spanya',
'ETB' => 'Abir Utyupi',
'EUR' => 'Uru',
+ 'FIM' => 'Amark n Finland',
+ 'FJD' => 'Adular n Fiǧi',
+ 'FKP' => 'Apawnd n tegzrin n Malwin',
+ 'FRF' => 'Afrank n Fṛansa',
'GBP' => 'Apund Aglizi',
+ 'GEK' => 'Akupun n Larin Jyujya',
+ 'GEL' => 'Alari n Jyurjya',
'GHC' => 'Asidi Aɣani',
+ 'GHS' => 'Asidi n Ɣana',
+ 'GIP' => 'Apawnd n Jibraltar',
'GMD' => 'Adalasi Agambi',
+ 'GNF' => 'Afrank n Ɣinya',
'GNS' => 'Afrank Aɣini',
+ 'GQE' => 'Akwili n Ɣinya Tasebgast',
+ 'GRD' => 'Adrakmi n Grik',
+ 'GTQ' => 'Aketzal n Gwatimala',
+ 'GWE' => 'Askudu n Ɣinya tapurtugit',
+ 'GWP' => 'Apisu n Ɣinya-Bisaw',
+ 'GYD' => 'Adular n Guyana',
+ 'HKD' => 'Adular n Hung Kung',
+ 'HNL' => 'Alampir n Hunduras',
+ 'HRD' => 'Adinar n Kaṛwasya',
+ 'HRK' => 'Akuna n Kaṛwasya',
+ 'HTG' => 'Agurd n Hayti',
+ 'HUF' => 'Afurint n Hungaṛya',
+ 'IDR' => 'Arupi n Indunisya',
+ 'IEP' => 'Apawnd n Irland',
+ 'ILP' => 'Apawnd n Izrayil',
+ 'ILR' => 'Acikil n Izrayil(1980–1985)',
+ 'ILS' => 'Acikil amaynut n Izrayil',
'INR' => 'Arupi Ahendi',
+ 'IQD' => 'Adinar n Ɛiṛaq',
+ 'IRR' => 'Ariyal n Iran',
+ 'ISK' => 'Akurun n Island',
+ 'ITL' => 'Alir n Ṭelyan',
+ 'JMD' => 'Adular n Jamayik',
+ 'JOD' => 'Adinar Jurdan',
'JPY' => 'Ayen Ajappuni',
'KES' => 'Aciling Akini',
+ 'KGS' => 'Asum n Kirigistan',
+ 'KHR' => 'Ariyil n Kambuj',
'KMF' => 'Afrank Akamiruni',
+ 'KPW' => 'Awun n Tkurit n ugafa',
+ 'KRH' => 'Ahwan n Tkirit n unẓul (1953–1962)',
+ 'KRO' => 'Ahwan n Tkirit n unẓul (1945–1953)',
+ 'KRW' => 'Ahwan n Tkirit n unẓul',
+ 'KWD' => 'Adinarn Kuwayt',
+ 'KYD' => 'Adular n tegzirin Kayman',
+ 'KZT' => 'Atunj n Kazaxistan',
+ 'LAK' => 'Akip n Laws',
+ 'LBP' => 'Apawnd n Liban',
+ 'LKR' => 'Arupi n Srilanka',
'LRD' => 'Adular Alibiri',
'LSL' => 'Aluṭi Alizuṭi',
+ 'LTL' => 'Alitas n Litwanya',
+ 'LTT' => 'Atalonas n Litwanya',
+ 'LUC' => 'Afrank yettwaseklaten n Luksumburg',
+ 'LUF' => 'Afrank n Luksumburg',
+ 'LUL' => 'Afrank adriman n Luksumburg',
+ 'LVL' => 'Alats n Letunya',
+ 'LVR' => 'Arubl n Litunya',
'LYD' => 'Adinar Alibi',
'MAD' => 'Adirham Amerruki',
+ 'MAF' => 'Afrank n Meṛṛuk',
+ 'MDL' => 'Alu n Muldavya',
'MGA' => 'Aryari Amalgac',
- 'MRO' => 'Agiya Amuriṭani',
+ 'MGF' => 'Afrank n Madakaskaṛ',
+ 'MKD' => 'Adenar n Masidunya',
+ 'MLF' => 'Afrank n Mali',
+ 'MMK' => 'Akyat n Myanmar',
+ 'MNT' => 'Atugrik n Mungulya',
+ 'MOP' => 'Apataka n Makaw',
+ 'MRO' => 'Agiya Amuriṭani (1973–2017)',
+ 'MRU' => 'Agiya Amuriṭani',
+ 'MTL' => 'Alir n Malt',
+ 'MTP' => 'Apawnd n Malt',
'MUR' => 'Arupi Amurisi',
+ 'MVP' => 'Arupi n Maldiv',
+ 'MVR' => 'Arufiya n Maldiv',
'MWK' => 'Akwaca Amalawi',
+ 'MXN' => 'Apisu Miksik',
+ 'MXP' => 'Apisu n lfeṭṭa n Miksik (1861–1992)',
+ 'MXV' => 'Aferdis n uselket n Miksi (UDI)',
+ 'MYR' => 'Aringgit n Malizya',
+ 'MZE' => 'Askudu n Muzumbik',
'MZM' => 'Amitikal Amuzembiqi',
+ 'MZN' => 'Amitikal n Muzumbik',
'NAD' => 'Adular Anamibi',
'NGN' => 'Anayra Anijiri',
+ 'NIC' => 'Akurduba n Nikaragwa (1912–1988)',
+ 'NIO' => 'Akurduba n Nikaragwa',
+ 'NLG' => 'Aflurin n Huland',
+ 'NOK' => 'Akurun n Nurvij',
+ 'NPR' => 'Arupi n Nipal',
+ 'NZD' => 'Adular n Ziland Tamaynut',
+ 'OMR' => 'Ariyal n Ɛuman',
+ 'PAB' => 'Abalbwa n Panama',
+ 'PEI' => 'Inti n Piru',
+ 'PEN' => 'Asul amaynut n Piru',
+ 'PES' => 'Asul n Piru (1863–1985)',
+ 'PGK' => 'Akina n Papwazi n Ɣinya Tamaynut',
+ 'PHP' => 'Apisu n Filipin',
+ 'PKR' => 'Arupi n Pakistan',
+ 'PLN' => 'Azluti n Puland',
+ 'PLZ' => 'Azluti n Pulund (1950–1995)',
+ 'PTE' => 'Askudu n Purtugal',
+ 'PYG' => 'Agarani n Paragway',
+ 'QAR' => 'Ariyal n Qatar',
+ 'RHD' => 'Adular Arudizyan',
+ 'ROL' => 'Alu aqbuṛ n Rumanya (1952–2005)',
+ 'RON' => 'Alu n Rumanya',
+ 'RSD' => 'Adinar n Ṣirbya',
+ 'RUB' => 'Arubl n Rrus',
+ 'RUR' => 'Arubl n Rrus (1991–1998)',
'RWF' => 'Afrank Aruwandi',
'SAR' => 'Aryal Asuɛudi',
+ 'SBD' => 'Adular n tegzirin Salumun',
'SCR' => 'Arupi Aseycili',
+ 'SDD' => 'Adinar n Sudan (1992–2007)',
'SDG' => 'Apund Asudani',
+ 'SDP' => 'Apawnd n Sudan (1956–2007)',
+ 'SEK' => 'Akurun n Swid',
+ 'SGD' => 'Adular n Sangapur',
'SHP' => 'Apund Asant Ilini',
+ 'SIT' => 'Atular n Sluvinya',
+ 'SKK' => 'Akurun n Sluvakya',
'SLL' => 'Alyun',
'SOS' => 'Aciling Aṣumali',
- 'STD' => 'Asw Ṭum d Udubra Amenzay',
+ 'SRD' => 'Adular n Surinam',
+ 'SRG' => 'Aflurin n Surinam',
+ 'SSP' => 'Apawnd n Sudan n Unẓul',
+ 'STD' => 'Asw Ṭum d Udubra Amenzay (1977–2017)',
+ 'STN' => 'Asw Ṭum d Udubra Amenzay',
+ 'SUR' => 'Arubl n Suvyat',
+ 'SVC' => 'Akulun n Salvadur',
+ 'SYP' => 'Apawnd n Surya',
'SZL' => 'Alilangini',
+ 'THB' => 'Abaht n Tayland',
+ 'TJR' => 'Arubl n Ṭajikistan',
+ 'TJS' => 'Asumuni n Ṭajikistan',
+ 'TMM' => 'Amanat n Ṭurkmanistan',
+ 'TMT' => 'Amanat amaynut n Ṭurkmanistan',
'TND' => 'Adinar Atunsi',
+ 'TOP' => 'Apanga n Ṭunga',
+ 'TPE' => 'Askudu n Timur',
+ 'TRL' => 'Apawnd n Ṭurk (1844–2005)',
+ 'TRY' => 'Apawnd n Ṭurk',
+ 'TTD' => 'Adular n Triniti-d-Ṭubagu',
+ 'TWD' => 'Adular amaynut n Taywan',
'TZS' => 'Aciling Aṭanẓani',
+ 'UAH' => 'Ahrivnya n Ukrin',
+ 'UAK' => 'Akarbuvanit n Ukrin (1992–1996)',
+ 'UGS' => 'Aciling n Uganda (1966–1987)',
'UGX' => 'Aciling Awgandi',
'USD' => 'Adular WD',
+ 'USN' => 'Adular n Marikan (azekka–yen)',
+ 'USS' => 'Adular n Marikan (ass–en)',
+ 'UYI' => 'Apisu n Urugway (iferdisen s umatar)',
+ 'UYP' => 'Apisu n Urugway (1975–1993)',
+ 'UYU' => 'Apisu n Urugway',
+ 'UZS' => 'Asum n Uzbikistan',
+ 'VEB' => 'Abulivaṛ n Vinizwila (1871–2008)',
+ 'VEF' => 'Abulivaṛ n Vinizwila (2008–2018)',
+ 'VES' => 'Abulivaṛ n Vinizwila',
+ 'VND' => 'Adung n Vyitnam',
+ 'VNN' => 'Adung n Vyitnam (1978–1985)',
+ 'VUV' => 'Avatu n Vanuyatu',
+ 'WST' => 'Atala n Samwa',
'XAF' => 'Afrank BCEA CFA',
+ 'XAG' => 'lfeṭṭa',
+ 'XAU' => 'Awraɣ',
+ 'XBA' => 'Aferdis n tufut uddis (URKU)',
+ 'XBB' => 'Aferdis n tedrimt n tufurt (UME–6)',
+ 'XBC' => 'Aferdis n umiḍan n turfut (UEC–9)',
+ 'XBD' => 'Aferdis n umiḍan 17 n turfut (UEC–17)',
+ 'XCD' => 'Adular n Karayib n usammar',
+ 'XDR' => 'droit de tirage spécial',
+ 'XEU' => 'Aferdis n umiḍan n turfut (ACU)',
+ 'XFO' => 'Afrank awraɣ',
+ 'XFU' => 'Afrank UIC',
'XOF' => 'Afrank BCEAO CFA',
+ 'XPD' => 'Palladium',
+ 'XPF' => 'Afrank CFP',
+ 'XPT' => 'Platin',
+ 'XRE' => 'Anaw n idran RINET',
+ 'XSU' => 'Asukr',
+ 'XTS' => '(tadrimt n usefkyed)',
+ 'XUA' => 'Aferdis n umiḍan ADB',
+ 'XXX' => 'Tadrimt tarussint neɣ tarameɣtut',
+ 'YDD' => 'Adinar n Yaman',
+ 'YER' => 'Ariyal n Yaman',
+ 'YUD' => 'Adinar n Yuguslavya amaynut (1966–1989)',
+ 'YUM' => 'Adinar n Yuguslavya amaynut (1994–2003)',
+ 'YUN' => 'Adinar n Yuguslavya yettwaselkaten (1990–1992)',
+ 'ZAL' => 'Arand n Tefriqt n unzul (adriman)',
'ZAR' => 'Arand Afriqi n Wadda',
'ZMK' => 'Akwaca Azambi (1968–2012)',
'ZMW' => 'Akwaca Azambi',
+ 'ZRN' => 'Azayir amaynut n Zayir',
+ 'ZRZ' => 'Azayir n Zayir',
'ZWD' => 'Adular Azimbabwi',
-);
+ 'ZWL' => 'Adular n zimbabwi (2009)',
+ 'ZWR' => 'Adular n zimbabwi (2008)',
+];
-$currencySymbols = array(
+$currencySymbols = [
+ 'ADP' => 'ADP',
+ 'AED' => 'AED',
+ 'AFA' => 'AFA',
+ 'AFN' => 'AFN',
+ 'ALK' => 'ALK',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'AOK' => 'AOK',
+ 'AON' => 'AON',
+ 'AOR' => 'AOR',
+ 'ARA' => 'ARA',
+ 'ARL' => 'ARL',
+ 'ARM' => 'ARM',
+ 'ARP' => 'ARP',
+ 'ARS' => '$AR',
+ 'AUD' => '$AU',
+ 'AWG' => 'AWG',
+ 'AZM' => 'AZM',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BEF' => 'FB',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => '$BM',
+ 'BND' => '$BN',
+ 'BOB' => 'BOB',
+ 'BOL' => 'BOL',
+ 'BOP' => 'BOP',
+ 'BOV' => 'BOV',
+ 'BRB' => 'BRB',
+ 'BRC' => 'BRC',
+ 'BRE' => 'BRE',
+ 'BRL' => 'R$',
+ 'BRN' => 'BRN',
+ 'BRR' => 'BRR',
+ 'BRZ' => 'BRZ',
+ 'BSD' => '$BS',
+ 'BTN' => 'BTN',
+ 'BUK' => 'BUK',
+ 'BWP' => 'BWP',
+ 'BYN' => 'BYN',
+ 'BYR' => 'BYR',
+ 'BZD' => '$BZ',
+ 'CAD' => '$CA',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLE' => 'CLE',
+ 'CLF' => 'CLF',
+ 'CLP' => '$CL',
+ 'CNX' => 'CNX',
+ 'CNY' => 'CNY',
+ 'COP' => '$CO',
+ 'COU' => 'COU',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CYP' => '£CY',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
'DZD' => 'DA',
-);
+ 'ECS' => 'ECS',
+ 'ECV' => 'ECV',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ESA' => 'ESA',
+ 'ESB' => 'ESB',
+ 'ESP' => 'ESP',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FIM' => 'FIM',
+ 'FJD' => '$FJ',
+ 'FKP' => '£FK',
+ 'FRF' => 'F',
+ 'GBP' => '£GB',
+ 'GEK' => 'GEK',
+ 'GEL' => 'GEL',
+ 'GHC' => 'GHC',
+ 'GHS' => 'GHS',
+ 'GIP' => '£GI',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GQE' => 'GQE',
+ 'GRD' => 'GRD',
+ 'GTQ' => 'GTQ',
+ 'GWE' => 'GWE',
+ 'GWP' => 'GWP',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HKD',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'IEP' => '£IE',
+ 'ILP' => '£IL',
+ 'ILR' => 'ILR',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'ITL' => '₤IT',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => 'JPY',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRH' => 'KRH',
+ 'KRO' => 'KRO',
+ 'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => '£LB',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LSL' => 'lLS',
+ 'LTL' => 'LTL',
+ 'LVL' => 'LVL',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MAF' => 'fMA',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MGF' => 'Fmg',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MTP' => '£MT',
+ 'MUR' => 'MUR',
+ 'MVP' => 'MVP',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => '$MX',
+ 'MXP' => 'MXP',
+ 'MXV' => 'MXV',
+ 'MYR' => 'MYR',
+ 'MZE' => 'MZE',
+ 'MZM' => 'MZM',
+ 'MZN' => 'MZN',
+ 'NAD' => '$NA',
+ 'NGN' => 'NGN',
+ 'NIC' => 'NIC',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => '$NZ',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEI' => 'PEI',
+ 'PEN' => 'PEN',
+ 'PES' => 'PES',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RHD' => '$RH',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => '$SB',
+ 'SCR' => 'SCR',
+ 'SDD' => 'SDD',
+ 'SDG' => 'SDG',
+ 'SDP' => 'SDP',
+ 'SEK' => 'SEK',
+ 'SGD' => '$SG',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => '$SR',
+ 'SRG' => 'SRG',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'STN' => 'Db',
+ 'SVC' => 'SVC',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => 'THB',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TPE' => 'TPE',
+ 'TRL' => 'TRL',
+ 'TRY' => 'TRY',
+ 'TTD' => '$TT',
+ 'TWD' => 'TWD',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGS' => 'UGS',
+ 'UGX' => 'UGX',
+ 'USD' => '$US',
+ 'USN' => 'USN',
+ 'USS' => 'USS',
+ 'UYI' => 'UYI',
+ 'UYP' => 'UYP',
+ 'UYU' => '$UY',
+ 'UZS' => 'UZS',
+ 'VEB' => 'VEB',
+ 'VEF' => 'VEF',
+ 'VND' => '₫',
+ 'VNN' => 'VNN',
+ 'VUV' => 'VUV',
+ 'WST' => 'WS$',
+ 'XAF' => 'FCFA',
+ 'XAG' => 'XAG',
+ 'XAU' => 'XAU',
+ 'XBA' => 'XBA',
+ 'XBB' => 'XBB',
+ 'XBC' => 'XBC',
+ 'XBD' => 'XBD',
+ 'XCD' => 'XCD',
+ 'XDR' => 'DTS',
+ 'XFO' => 'XFO',
+ 'XFU' => 'XFU',
+ 'XOF' => 'CFA',
+ 'XPD' => 'XPD',
+ 'XPF' => 'FCFP',
+ 'XPT' => 'XPT',
+ 'XRE' => 'XRE',
+ 'XSU' => 'XSU',
+ 'XTS' => 'XTS',
+ 'XUA' => 'XUA',
+ 'XXX' => 'XXX',
+ 'YDD' => 'YDD',
+ 'YER' => 'YER',
+ 'ZAL' => 'ZAL',
+ 'ZAR' => 'ZAR',
+ 'ZMK' => 'ZMK',
+ 'ZMW' => 'ZMW',
+ 'ZRN' => 'ZRN',
+ 'ZRZ' => 'ZRZ',
+ 'ZWD' => 'ZWD',
+ 'ZWL' => 'ZWL',
+ 'ZWR' => 'ZWR',
+];
-$countryNames = array(
+$countryNames = [
+ 'AC' => 'Tigzirt n Aṣunsyun',
'AD' => 'Undura',
'AE' => 'Tigeldunin Yedduklen Taɛrabin',
'AF' => 'Afɣanistan',
@@ -118,13 +952,14 @@ $countryNames = array(
'AI' => 'Ungiya',
'AL' => 'Lalbani',
'AM' => 'Arminya',
- 'AN' => 'Antilles n Tmura-Yessakesren',
'AO' => 'Ungula',
+ 'AQ' => 'Antaṛktik',
'AR' => 'Arjuntin',
'AS' => 'Samwa Tamarikanit',
'AT' => 'Ustriya',
'AU' => 'Ustrali',
'AW' => 'Aruba',
+ 'AX' => 'Tigzirin n Aland',
'AZ' => 'Azrabijan',
'BA' => 'Busna d Hersek',
'BB' => 'Barbadus',
@@ -135,16 +970,20 @@ $countryNames = array(
'BH' => 'Baḥrin',
'BI' => 'Burandi',
'BJ' => 'Binin',
+ 'BL' => 'Sant Baṛtilimi',
'BM' => 'Bermuda',
'BN' => 'Bruney',
'BO' => 'Bulivi',
+ 'BQ' => 'Huland n Kaṛayib',
'BR' => 'Brizil',
'BS' => 'Bahamas',
'BT' => 'Bhutan',
+ 'BV' => 'Tigzirin n Buvet',
'BW' => 'Bustwana',
'BY' => 'Bilarus',
'BZ' => 'Biliz',
'CA' => 'Kanada',
+ 'CC' => 'Tigzirin n Kukus',
'CD' => 'Tigduda Tagdudant n Kungu',
'CF' => 'Tigduda n Tefriqt Talemmast',
'CG' => 'Kungu',
@@ -155,33 +994,43 @@ $countryNames = array(
'CM' => 'Kamirun',
'CN' => 'Lacin',
'CO' => 'Kulumbi',
+ 'CP' => 'Tigzirt n Klipirṭun',
'CR' => 'Kusta Rika',
'CU' => 'Kuba',
'CV' => 'Tigzirin n yixef azegzaw',
+ 'CW' => 'Kuṛaṣaw',
+ 'CX' => 'Tigzrin n Kristmaṣ',
'CY' => 'Cipr',
'CZ' => 'Čček',
'DE' => 'Lalman',
+ 'DG' => 'Digu Gaṛsya',
'DJ' => 'Ǧibuti',
'DK' => 'Denmark',
'DM' => 'Duminik',
'DO' => 'Tigduda Taduminikit',
'DZ' => 'Lezzayer',
+ 'EA' => 'Sebta d Melilla',
'EC' => 'Ikwaṭur',
'EE' => 'Istunya',
'EG' => 'Maṣr',
+ 'EH' => 'Seḥra n umalu',
'ER' => 'Iritiria',
'ES' => 'Spanya',
'ET' => 'Utyupi',
+ 'EU' => 'Tiddukla n Turuft',
+ 'EZ' => 'Tamnaḍt n Turuft',
'FI' => 'Finlund',
'FJ' => 'Fiji',
'FK' => 'Tigzirin n Falkland',
'FM' => 'Mikrunizya',
+ 'FO' => 'Tigzirin n Faṛwi',
'FR' => 'Fransa',
'GA' => 'Gabun',
- 'GB' => 'Tagelda Yedduklen',
+ 'GB' => 'Tag.Yed',
'GD' => 'Grunad',
'GE' => 'Jiyurji',
'GF' => 'Ɣana tafransist',
+ 'GG' => 'Girnizi',
'GH' => 'Ɣana',
'GI' => 'Jibraltar',
'GL' => 'Grunland',
@@ -190,23 +1039,29 @@ $countryNames = array(
'GP' => 'Gwadalupi',
'GQ' => 'Ɣinya Tasebgast',
'GR' => 'Lagris',
+ 'GS' => 'Tigzirin n Jyuṛjya n Unzul akked Sandwič n Unẓul',
'GT' => 'Gwatimala',
'GU' => 'Gwam',
'GW' => 'Ɣinya-Bisaw',
'GY' => 'Guwana',
+ 'HK' => 'Hung Kung',
+ 'HM' => 'Tigzirin Heard akked McDonald',
'HN' => 'Hunduras',
'HR' => 'Kerwasya',
'HT' => 'Hayti',
'HU' => 'Hungri',
+ 'IC' => 'Tigzirin Tikanaṛiyin',
'ID' => 'Indunizi',
'IE' => 'Lirlund',
'IL' => 'Izrayil',
+ 'IM' => 'Tigzirt n Man',
'IN' => 'Lhend',
'IO' => 'Akal Aglizi deg Ugaraw Ahendi',
'IQ' => 'Lɛiraq',
'IR' => 'Iran',
'IS' => 'Island',
'IT' => 'Ṭelyan',
+ 'JE' => 'Jiṛzi',
'JM' => 'Jamyika',
'JO' => 'Lajurdani',
'JP' => 'Jappu',
@@ -235,12 +1090,15 @@ $countryNames = array(
'MA' => 'Lmerruk',
'MC' => 'Munaku',
'MD' => 'Muldabi',
+ 'ME' => 'Muntinigru',
+ 'MF' => 'San Maṛtan',
'MG' => 'Madaɣecqer',
'MH' => 'Tigzirin n Marcal',
'MK' => 'Masidwan',
'ML' => 'Mali',
'MM' => 'Myanmar',
'MN' => 'Mungulya',
+ 'MO' => 'Makaw',
'MP' => 'Tigzirin n Maryan Ufella',
'MQ' => 'Martinik',
'MR' => 'Muriṭanya',
@@ -275,13 +1133,15 @@ $countryNames = array(
'PM' => 'San Pyar d Miklun',
'PN' => 'Pitkarin',
'PR' => 'Purtu Riku',
- 'PS' => 'Falisṭin d Ɣezza',
+ 'PS' => 'Falisṭin',
'PT' => 'Purtugal',
'PW' => 'Palu',
'PY' => 'Paragway',
'QA' => 'Qaṭar',
+ 'QO' => 'Timnaḍin ibeɛden n Tusyanit',
'RE' => 'Timlilit',
'RO' => 'Rumani',
+ 'RS' => 'Ṣirbya',
'RU' => 'Rrus',
'RW' => 'Ruwanda',
'SA' => 'Suɛudiya Taɛrabt',
@@ -292,18 +1152,23 @@ $countryNames = array(
'SG' => 'Singafur',
'SH' => 'Sant Ilina',
'SI' => 'Sluvinya',
+ 'SJ' => 'Svalvard d Jan Mayen',
'SK' => 'Sluvakya',
'SL' => 'Sira Lyun',
'SM' => 'San Marinu',
'SN' => 'Sinigal',
'SO' => 'Ṣumal',
'SR' => 'Surinam',
+ 'SS' => 'Sudan n unẓul',
'ST' => 'Saw Tumi d Pransip',
'SV' => 'Salvadur',
+ 'SX' => 'San Maṛtan(Tamnaḍt tahulandit)',
'SY' => 'Surya',
'SZ' => 'Swazilund',
+ 'TA' => 'Tristan da Kunha',
'TC' => 'Ṭurk d Tegzirin n Kaykus',
'TD' => 'Čad',
+ 'TF' => 'Timura n umalu tifṛansisiyin',
'TG' => 'Ṭugu',
'TH' => 'Ṭayland',
'TJ' => 'Tajikistan',
@@ -319,7 +1184,9 @@ $countryNames = array(
'TZ' => 'Ṭanzanya',
'UA' => 'Ukran',
'UG' => 'Uɣanda',
- 'US' => 'WDM',
+ 'UM' => 'Tigzirin ibeɛden n Marikan',
+ 'UN' => 'Timura Idduklen',
+ 'US' => 'US',
'UY' => 'Urugway',
'UZ' => 'Uzbaxistan',
'VA' => 'Awanek n Vatikan',
@@ -331,9 +1198,215 @@ $countryNames = array(
'VU' => 'Vanwatu',
'WF' => 'Wallis d Futuna',
'WS' => 'Samwa',
+ 'XK' => 'Kuṣuvu',
'YE' => 'Lyamen',
'YT' => 'Mayuṭ',
'ZA' => 'Tafriqt Wadda',
'ZM' => 'Zambya',
'ZW' => 'Zimbabwi',
-);
+];
+
+$timeUnits = [
+ 'century-one' => '{0} n lqern',
+ 'century-other' => '{0} n leqrun',
+ 'day-future-one' => 'deg {0} n wass',
+ 'day-future-other' => 'deg {0} n wussan',
+ 'day-narrow-future-one' => 'deg {0} n wass',
+ 'day-narrow-future-other' => 'deg {0} n wussan',
+ 'day-narrow-past-one' => '{0} n wass aya',
+ 'day-narrow-past-other' => '{0} n wussan aya',
+ 'day-one' => '{0} n wass',
+ 'day-other' => '{0} n wussan',
+ 'day-past-one' => '{0} n wass aya',
+ 'day-past-other' => '{0} n wussan aya',
+ 'day-short-future-one' => 'deg {0} n wass',
+ 'day-short-future-other' => 'deg {0} n wussan',
+ 'day-short-past-one' => '{0} n wass aya',
+ 'day-short-past-other' => '{0} n wussan aya',
+ 'fri-future-one' => 'Deg {0} Sem',
+ 'fri-future-other' => 'Deg {0} Sem',
+ 'fri-narrow-future-one' => 'Deg {0} Sm.',
+ 'fri-narrow-future-other' => 'Deg {0} Sm.',
+ 'fri-narrow-past-one' => '{0} n Sm. aya',
+ 'fri-narrow-past-other' => '{0} n Sm. aya',
+ 'fri-past-one' => '{0} n Sem aya',
+ 'fri-past-other' => '{0} n Sem aya',
+ 'fri-short-future-one' => 'Deg {0} Sem',
+ 'fri-short-future-other' => 'Deg {0} Sem',
+ 'fri-short-past-one' => '{0} n Sem aya',
+ 'fri-short-past-other' => '{0} n Sem aya',
+ 'hour-future-one' => 'deg {0} n usrag',
+ 'hour-future-other' => 'deg {0} n isragen',
+ 'hour-narrow-future-one' => 'deg {0} sr.',
+ 'hour-narrow-future-other' => 'deg {0} sr.',
+ 'hour-narrow-past-one' => '{0} sr. aya',
+ 'hour-narrow-past-other' => '{0} sr. aya',
+ 'hour-one' => '{0} n usrag',
+ 'hour-other' => '{0} n isragen',
+ 'hour-past-one' => '{0} n usrag aya',
+ 'hour-past-other' => '{0} n isragen aya',
+ 'hour-short-future-one' => 'deg {0} sr.',
+ 'hour-short-future-other' => 'deg {0} sr.',
+ 'hour-short-past-one' => '{0} sr. aya',
+ 'hour-short-past-other' => '{0} sr. aya',
+ 'microsecond-one' => '{0} n tmikrusint',
+ 'microsecond-other' => '{0} n tmikrusinin',
+ 'millisecond-one' => '{0} n tmilisint',
+ 'millisecond-other' => '{0} n tmilisinin',
+ 'minute-future-one' => 'deg {0} n tesdat',
+ 'minute-future-other' => 'deg {0} n tesdatin',
+ 'minute-narrow-future-one' => 'deg {0} tsd.',
+ 'minute-narrow-future-other' => 'deg {0} tsd.',
+ 'minute-narrow-past-one' => '{0} tsd. aya',
+ 'minute-narrow-past-other' => '{0} tsd. aya',
+ 'minute-one' => '{0} n tesdat',
+ 'minute-other' => '{0} n tesdatin',
+ 'minute-past-one' => '{0} n tesdat aya',
+ 'minute-past-other' => '{0} n tesdatin aya',
+ 'minute-short-future-one' => 'deg {0} tsd.',
+ 'minute-short-future-other' => 'deg {0} tsd.',
+ 'minute-short-past-one' => '{0} tsd. aya',
+ 'minute-short-past-other' => '{0} tsd. aya',
+ 'mon-future-one' => 'deg {0} n Arim',
+ 'mon-future-other' => 'deg {0} n Arim',
+ 'mon-narrow-future-one' => 'deg {0} n Ri.',
+ 'mon-narrow-future-other' => 'deg {0} n Ri.',
+ 'mon-narrow-past-one' => '{0} n Ri. aya',
+ 'mon-narrow-past-other' => '{0} n Ri. aya',
+ 'mon-past-one' => '{0} n Arim aya',
+ 'mon-past-other' => '{0} n Arim aya',
+ 'mon-short-future-one' => 'deg {0} n Arim',
+ 'mon-short-future-other' => 'deg {0} n Arim',
+ 'mon-short-past-one' => '{0} n Arim aya',
+ 'mon-short-past-other' => '{0} n Arim aya',
+ 'month-future-one' => 'deg {0} n wayyur',
+ 'month-future-other' => 'deg {0} n wayyuren',
+ 'month-narrow-future-one' => 'deg {0} yr.',
+ 'month-narrow-future-other' => 'deg {0} yr.',
+ 'month-narrow-past-one' => '{0} yr. aya',
+ 'month-narrow-past-other' => '{0} yr. aya',
+ 'month-one' => '{0} n wayyur',
+ 'month-other' => '{0} n wayyuren',
+ 'month-past-one' => '{0} n wayyur aya',
+ 'month-past-other' => '{0} n wayyuren aya',
+ 'month-short-future-one' => 'deg {0} yr.',
+ 'month-short-future-other' => 'deg {0} yr.',
+ 'month-short-past-one' => '{0} yr. aya',
+ 'month-short-past-other' => '{0} yr. aya',
+ 'nanosecond-one' => '{0} n tnanusint',
+ 'nanosecond-other' => '{0} n tnanusinin',
+ 'quarter-future-one' => 'deg {0} n ukraḍyur',
+ 'quarter-future-other' => 'deg {0} n ikraḍyuren',
+ 'quarter-narrow-future-one' => 'deg {0} kyr.',
+ 'quarter-narrow-future-other' => 'deg {0} kyrn.',
+ 'quarter-narrow-past-one' => '{0} kyr. aya',
+ 'quarter-narrow-past-other' => '{0} kyrn. aya',
+ 'quarter-past-one' => '{0} n ukraḍyur aya',
+ 'quarter-past-other' => '{0} n ikradyuren aya',
+ 'quarter-short-future-one' => 'deg {0} kyr.',
+ 'quarter-short-future-other' => 'deg {0} kyrn.',
+ 'quarter-short-past-one' => '{0} kyr. aya',
+ 'quarter-short-past-other' => '{0} kyrn. aya',
+ 'sat-future-one' => 'di {0} n sed',
+ 'sat-future-other' => 'di {0} n sed',
+ 'sat-narrow-future-one' => 'deg {0} n Sd',
+ 'sat-narrow-future-other' => 'deg {0} n Sd',
+ 'sat-narrow-past-one' => '{0} n Sd. aya',
+ 'sat-narrow-past-other' => '{0} n Sd aya',
+ 'sat-past-one' => '{0} n Sed aya',
+ 'sat-past-other' => '{0} n Sed aya',
+ 'sat-short-future-one' => 'di {0} n sed',
+ 'sat-short-future-other' => 'di {0} n sed',
+ 'sat-short-past-one' => '{0} n Sed aya',
+ 'sat-short-past-other' => '{0} n Sed aya',
+ 'second-future-one' => 'deg {0} n tasint',
+ 'second-future-other' => 'deg {0} n tasinin',
+ 'second-narrow-future-one' => 'deg {0} tsn.',
+ 'second-narrow-future-other' => 'deg {0} tsn.',
+ 'second-narrow-past-one' => '{0} tsn. aya',
+ 'second-narrow-past-other' => '{0} tsn. aya',
+ 'second-one' => '{0} n tasint',
+ 'second-other' => '{0} n tisinin',
+ 'second-past-one' => '{0} n tasint aya',
+ 'second-past-other' => '{0} n tasinin aya',
+ 'second-short-future-one' => 'deg {0} tsn.',
+ 'second-short-future-other' => 'deg {0} tsn.',
+ 'second-short-past-one' => '{0} tsn. aya',
+ 'second-short-past-other' => '{0} tsn. aya',
+ 'sun-future-one' => 'deg {0} n Acer',
+ 'sun-future-other' => 'deg {0} n Acer',
+ 'sun-narrow-future-one' => 'deg {0} Cr.',
+ 'sun-narrow-future-other' => 'deg {0} Cr.',
+ 'sun-narrow-past-one' => '{0} Cr. aya',
+ 'sun-narrow-past-other' => '{0} Cr. aya',
+ 'sun-past-one' => '{0} n Acer aya',
+ 'sun-past-other' => '{0} n Acer aya',
+ 'sun-short-future-one' => 'deg {0} n Ace.',
+ 'sun-short-future-other' => 'deg {0} n Ace.',
+ 'sun-short-past-one' => '{0} n Ace. aya',
+ 'sun-short-past-other' => '{0} n Ace. aya',
+ 'thu-future-one' => 'deg {0} n Amhad',
+ 'thu-future-other' => 'deg {0} n Amhad',
+ 'thu-narrow-future-one' => 'deg {0} n Amhad',
+ 'thu-narrow-future-other' => 'deg {0} n Amhad',
+ 'thu-narrow-past-one' => '{0} n Amhad aya',
+ 'thu-narrow-past-other' => '{0} n Amhad aya',
+ 'thu-past-one' => '{0} n Amhad aya',
+ 'thu-past-other' => '{0} n Amhad aya',
+ 'thu-short-future-one' => 'deg {0} n Amhad',
+ 'thu-short-future-other' => 'deg {0} n Amhad',
+ 'thu-short-past-one' => '{0} n Amhad aya',
+ 'thu-short-past-other' => '{0} n Amhad aya',
+ 'tue-future-one' => 'deg {0} Aram',
+ 'tue-future-other' => 'deg {0} Aram',
+ 'tue-narrow-future-one' => 'deg {0} Aram',
+ 'tue-narrow-future-other' => 'deg {0} Aram',
+ 'tue-narrow-past-one' => '{0} n Aram aya',
+ 'tue-narrow-past-other' => '{0} n Aram aya',
+ 'tue-past-one' => '{0} n Aram aya',
+ 'tue-past-other' => '{0} n Aram aya',
+ 'tue-short-future-one' => 'deg {0} Aram',
+ 'tue-short-future-other' => 'deg {0} Aram',
+ 'tue-short-past-one' => '{0} n Aram aya',
+ 'tue-short-past-other' => '{0} n Aram aya',
+ 'wed-future-one' => 'deg {0} n Ahad',
+ 'wed-future-other' => 'deg {0} n ahad',
+ 'wed-narrow-future-one' => 'deg {0} n Ahad',
+ 'wed-narrow-future-other' => 'deg {0} n ahad',
+ 'wed-narrow-past-one' => '{0} n Ahad aya',
+ 'wed-narrow-past-other' => '{0} n ahad aya',
+ 'wed-past-one' => '{0} n Ahad aya',
+ 'wed-past-other' => '{0} n Ahad aya',
+ 'wed-short-future-one' => 'deg {0} n Ahad',
+ 'wed-short-future-other' => 'deg {0} n ahad',
+ 'wed-short-past-one' => '{0} n Ahad aya',
+ 'wed-short-past-other' => '{0} n ahad aya',
+ 'week-future-one' => 'deg {0} n umalas',
+ 'week-future-other' => 'deg {0} n imalasen',
+ 'week-narrow-future-one' => 'deg {0} mls.',
+ 'week-narrow-future-other' => 'deg {0} mls.',
+ 'week-narrow-past-one' => '{0} mls. aya',
+ 'week-narrow-past-other' => '{0} mls. aya',
+ 'week-one' => '{0} n umalas',
+ 'week-other' => '{0} n imalasen',
+ 'week-past-one' => '{0} n umalas aya',
+ 'week-past-other' => '{0} n imalasen aya',
+ 'week-short-future-one' => 'deg {0} mls.',
+ 'week-short-future-other' => 'deg {0} mls.',
+ 'week-short-past-one' => '{0} mls. aya',
+ 'week-short-past-other' => '{0} mls. aya',
+ 'year-future-one' => 'deg {0} n useggas',
+ 'year-future-other' => 'deg {0} n iseggasen',
+ 'year-narrow-future-one' => 'deg {0} sg.',
+ 'year-narrow-future-other' => 'deg {0} sg.',
+ 'year-narrow-past-one' => '{0} sg. aya',
+ 'year-narrow-past-other' => '{0} sg. aya',
+ 'year-one' => '{0} n useggas',
+ 'year-other' => '{0} n iseggasen',
+ 'year-past-one' => '{0} n useggas aya',
+ 'year-past-other' => '{0} n iseggasen aya',
+ 'year-short-future-one' => 'deg {0} sg.',
+ 'year-short-future-other' => 'deg {0} sg.',
+ 'year-short-past-one' => '{0} sg. aya',
+ 'year-short-past-other' => '{0} sg. aya',
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesKea.php b/MLEB/cldr/CldrNames/CldrNamesKea.php
deleted file mode 100644
index 2c4dfdc0..00000000
--- a/MLEB/cldr/CldrNames/CldrNamesKea.php
+++ /dev/null
@@ -1,628 +0,0 @@
-<?php
-
-$languageNames = array(
- 'ab' => 'abkaziu',
- 'af' => 'afrikaner',
- 'agq' => 'aghem',
- 'ak' => 'akan',
- 'am' => 'amariku',
- 'ar' => 'arabi',
- 'ar-001' => 'arabi mudernu',
- 'arn' => 'araukanu',
- 'as' => 'asames',
- 'asa' => 'asu',
- 'ay' => 'aimara',
- 'az' => 'azerbaijanu',
- 'ba' => 'baxkir',
- 'be' => 'bielorusu',
- 'bem' => 'bemba',
- 'bez' => 'bena',
- 'bg' => 'bulgaru',
- 'bm' => 'bambara',
- 'bn' => 'bengali',
- 'bo' => 'tibetanu',
- 'br' => 'bretãu',
- 'brx' => 'bodo',
- 'bs' => 'bosniu',
- 'ca' => 'katalãu',
- 'cgg' => 'xiga',
- 'chr' => 'xeroki',
- 'ckb' => 'kurdu sorani',
- 'co' => 'córsiku',
- 'cs' => 'txeku',
- 'cy' => 'gales',
- 'da' => 'dinamarkes',
- 'dav' => 'taita',
- 'de' => 'alimãu',
- 'de-at' => 'alimãu austriaku',
- 'de-ch' => 'altu alimãu suisu',
- 'dje' => 'zarma',
- 'dsb' => 'sórbiu baxu',
- 'dua' => 'duala',
- 'dyo' => 'jola-fonyi',
- 'dz' => 'dzonka',
- 'ebu' => 'embu',
- 'ee' => 'eve',
- 'el' => 'gregu',
- 'en' => 'ingles',
- 'en-au' => 'ingles australianu',
- 'en-ca' => 'ingles kanadianu',
- 'en-gb' => 'ingles britanuku',
- 'en-us' => 'ingles merkanu',
- 'eo' => 'sperantu',
- 'es' => 'spanhol',
- 'es-419' => 'spanhol latinu-merkanu',
- 'es-es' => 'spanhol europeu',
- 'es-mx' => 'spanhol mexikanu',
- 'et' => 'stonianu',
- 'eu' => 'basku',
- 'fa' => 'persa',
- 'fi' => 'finlandes',
- 'fil' => 'filipinu',
- 'fj' => 'fijianu',
- 'fo' => 'faroes',
- 'fr' => 'franses',
- 'fr-ca' => 'franses kanadianu',
- 'fr-ch' => 'franses suisu',
- 'fy' => 'frisiu osidental',
- 'ga' => 'irlandes',
- 'gag' => 'gagauz',
- 'gl' => 'galegu',
- 'gn' => 'guarani',
- 'gsw' => 'alimãu di Suisa',
- 'gu' => 'gujarati',
- 'guz' => 'gusii',
- 'gv' => 'manks',
- 'ha' => 'auza',
- 'haw' => 'avaianu',
- 'he' => 'ebraiku',
- 'hi' => 'indi',
- 'hr' => 'kroata',
- 'hsb' => 'sórbiu altu',
- 'ht' => 'aitianu',
- 'hu' => 'úngaru',
- 'hy' => 'arméniu',
- 'id' => 'indoneziu',
- 'ig' => 'ibo',
- 'ii' => 'nuosu',
- 'is' => 'islandes',
- 'it' => 'italianu',
- 'iu' => 'inuktitut',
- 'ja' => 'japones',
- 'jgo' => 'ñomba',
- 'jmc' => 'matxame',
- 'jv' => 'javanes',
- 'ka' => 'jorjianu',
- 'kea' => 'kabuverdianu',
- 'kk' => 'kazak',
- 'km' => 'kmer',
- 'kn' => 'kanares',
- 'ko' => 'kureanu',
- 'ks' => 'kaxmira',
- 'ku' => 'kurdu',
- 'ky' => 'kirgiz',
- 'la' => 'latin',
- 'lb' => 'luxemburges',
- 'lo' => 'lausianu',
- 'lt' => 'lituanes',
- 'lv' => 'letãu',
- 'mg' => 'malgaxi',
- 'mi' => 'maori',
- 'mk' => 'masedoniu',
- 'ml' => 'malaialam',
- 'mr' => 'marati',
- 'ms' => 'malaiu',
- 'mt' => 'maltes',
- 'my' => 'birmanes',
- 'nb' => 'norueges bokmål',
- 'ne' => 'nepales',
- 'nl' => 'olandes',
- 'nl-be' => 'flamengu',
- 'nn' => 'norueges nynorsk',
- 'om' => 'oromo',
- 'or' => 'oriya',
- 'pa' => 'pandjabi',
- 'pl' => 'pulaku',
- 'ps' => 'paxto',
- 'pt' => 'purtuges',
- 'pt-br' => 'purtuges brazileru',
- 'pt-pt' => 'purtuges europeu',
- 'qu' => 'kexua',
- 'quc' => 'kitxe',
- 'rm' => 'romanxi',
- 'ro' => 'rumenu',
- 'ru' => 'rusu',
- 'rw' => 'kiniaruanda',
- 'sa' => 'sanskritu',
- 'sd' => 'sindi',
- 'si' => 'singales',
- 'sk' => 'slovaku',
- 'sl' => 'sloveniu',
- 'so' => 'somali',
- 'sq' => 'albanes',
- 'sr' => 'sérviu',
- 'su' => 'sundanes',
- 'sv' => 'sueku',
- 'sw' => 'suaíli',
- 'swc' => 'suaíli di Kongu',
- 'ta' => 'tamil',
- 'te' => 'telugu',
- 'tg' => 'tajik',
- 'th' => 'tailandes',
- 'ti' => 'tigrinia',
- 'tk' => 'turkmenu',
- 'to' => 'tonganes',
- 'tr' => 'turku',
- 'tt' => 'tatar',
- 'ug' => 'uigur',
- 'uk' => 'ukranianu',
- 'und' => 'lingua diskonxedu',
- 'ur' => 'urdu',
- 'uz' => 'uzbeki',
- 'vi' => 'vietnamita',
- 'wo' => 'uolof',
- 'xh' => 'koza',
- 'yo' => 'ioruba',
- 'zh' => 'xines',
- 'zh-hans' => 'xines simplifikadu',
- 'zh-hant' => 'xines tradisional',
- 'zu' => 'zulu',
- 'zxx' => 'sem konteudo linguistiku',
-);
-
-$currencyNames = array(
- 'AED' => 'Diren di Emiradus Arabi Unidu',
- 'AOA' => 'Kuanza',
- 'AUD' => 'Dola australianu',
- 'BHD' => 'Dinar di Barain',
- 'BIF' => 'Franku borundes',
- 'BRL' => 'Rial brazileru',
- 'BWP' => 'Pula di Botsuana',
- 'CAD' => 'Dola kanadianu',
- 'CDF' => 'Franku kongoles',
- 'CHF' => 'Franku suisu',
- 'CNY' => 'Iuan xines',
- 'CVE' => 'Skudu Kabuverdianu',
- 'DJF' => 'Franku di Djibuti',
- 'DKK' => 'Kuroa dinamarkeza',
- 'DZD' => 'Dinar arjelinu',
- 'EGP' => 'Libra ejipsiu',
- 'ERN' => 'Nafka di Eritreia',
- 'ETB' => 'Bir etiopi',
- 'EUR' => 'Euro',
- 'GBP' => 'Libra britaniku',
- 'GHC' => 'Sedi di Gana',
- 'GMD' => 'Dalasi',
- 'GNS' => 'Sili',
- 'HKD' => 'Dola di Ong Kong',
- 'IDR' => 'Rupia indoneziu',
- 'INR' => 'Rupia indianu',
- 'JPY' => 'Ieni japones',
- 'KES' => 'Xelin kenianu',
- 'KMF' => 'Franku di Komoris',
- 'KRW' => 'Won sul-koreanu',
- 'LRD' => 'Dola liberianu',
- 'LSL' => 'Loti di Lezotu',
- 'LYD' => 'Dinar libiu',
- 'MAD' => 'Diren marokinu',
- 'MGA' => 'Ariari di Madagaskar',
- 'MRO' => 'Ougia',
- 'MUR' => 'Rupia di Maurisias',
- 'MWK' => 'Kuaxa di Malaui',
- 'MXN' => 'Pezu mexikanu',
- 'MZM' => 'Metikal',
- 'NAD' => 'Dola namibianu',
- 'NGN' => 'Naira',
- 'NOK' => 'Kuroa norueges',
- 'PLN' => 'Zloty polaku',
- 'RUB' => 'Rublu rusu',
- 'RWF' => 'Franku ruandes',
- 'SAR' => 'Rial saudita',
- 'SCR' => 'Rupia di Seixelis',
- 'SDG' => 'Libra sudanes',
- 'SDP' => 'Libra sudanes antigu',
- 'SEK' => 'Kuroa sueku',
- 'SHP' => 'Libra di Santa Ilena',
- 'SLL' => 'Leone di Sera Leoa',
- 'SOS' => 'Xelin somalianu',
- 'STD' => 'Dobra di Sãu Tume i Prinsipi',
- 'SZL' => 'Lilanjeni',
- 'THB' => 'Baht tailandes',
- 'TND' => 'Dinar tunizianu',
- 'TRY' => 'Lira turku',
- 'TWD' => 'Dola Novu di Taiwan',
- 'TZS' => 'Xelin di Tanzania',
- 'UGX' => 'Xelin ugandensi',
- 'USD' => 'Dola merkanu',
- 'XAF' => 'Franku CFA BEAC',
- 'XOF' => 'Franku CFA BCEAO',
- 'XXX' => 'Mueda diskonxedu',
- 'ZAR' => 'Rand sulafrikanu',
- 'ZMK' => 'Kuaxa zambianu (1968–2012)',
- 'ZMW' => 'Kuaxa zambianu',
- 'ZWD' => 'Dola di Zimbabue',
-);
-
-$currencySymbols = array(
- 'AED' => 'AED',
- 'AOA' => 'AOA',
- 'AUD' => 'AU$',
- 'BHD' => 'BHD',
- 'BIF' => 'BIF',
- 'BRL' => 'R$',
- 'BWP' => 'BWP',
- 'CAD' => 'CA$',
- 'CDF' => 'CDF',
- 'CHF' => 'CHF',
- 'CNY' => 'CN¥',
- 'CVE' => '​',
- 'DJF' => 'DJF',
- 'DKK' => 'DKK',
- 'DZD' => 'DZD',
- 'EGP' => 'EGP',
- 'ERN' => 'ERN',
- 'ETB' => 'ETB',
- 'EUR' => '€',
- 'GBP' => '£',
- 'GMD' => 'GMD',
- 'HKD' => 'HK$',
- 'IDR' => 'IDR',
- 'INR' => '₹',
- 'JPY' => 'JP¥',
- 'KES' => 'KES',
- 'KMF' => 'KMF',
- 'KRW' => '₩',
- 'LYD' => 'LYD',
- 'MAD' => 'MAD',
- 'MGA' => 'MGA',
- 'MRO' => 'MRO',
- 'MUR' => 'MUR',
- 'MWK' => 'MWK',
- 'MXN' => 'MX$',
- 'NOK' => 'NOK',
- 'PLN' => 'PLN',
- 'RWF' => 'RWF',
- 'SAR' => 'SAR',
- 'SCR' => 'SCR',
- 'SDG' => 'SDG',
- 'SEK' => 'SEK',
- 'SHP' => 'SHP',
- 'SLL' => 'SLL',
- 'SOS' => 'SOS',
- 'STD' => 'STD',
- 'SZL' => 'SZL',
- 'THB' => '฿',
- 'TND' => 'TND',
- 'TRY' => '₺',
- 'TWD' => 'NT$',
- 'TZS' => 'TZS',
- 'UGX' => 'UGX',
- 'USD' => 'US$',
- 'XAF' => 'FCFA',
- 'XOF' => 'CFA',
- 'ZAR' => 'ZAR',
- 'ZMW' => 'ZMW',
-);
-
-$countryNames = array(
- 'AC' => 'Ilha di Asensãu',
- 'AD' => 'Andora',
- 'AE' => 'Emiradus Arabi Unidu',
- 'AF' => 'Afeganistãu',
- 'AG' => 'Antigua i Barbuda',
- 'AI' => 'Angila',
- 'AL' => 'Albania',
- 'AM' => 'Armenia',
- 'AN' => 'Antilhas Olandeza',
- 'AO' => 'Angola',
- 'AQ' => 'Antartika',
- 'AR' => 'Arjentina',
- 'AS' => 'Samoa Merkanu',
- 'AT' => 'Austria',
- 'AU' => 'Australia',
- 'AW' => 'Aruba',
- 'AX' => 'Ilhas Åland',
- 'AZ' => 'Azerbaijãu',
- 'BA' => 'Bosnia-Erzegovina',
- 'BB' => 'Barbadus',
- 'BD' => 'Bangladexi',
- 'BE' => 'Béljika',
- 'BF' => 'Burkina Fasu',
- 'BG' => 'Bulgaria',
- 'BH' => 'Barain',
- 'BI' => 'Burundi',
- 'BJ' => 'Benin',
- 'BL' => 'Sãu Bartolomeu',
- 'BM' => 'Bermudas',
- 'BN' => 'Brunei',
- 'BO' => 'Bolivia',
- 'BQ' => 'Karaibas olandes',
- 'BR' => 'Brazil',
- 'BS' => 'Baamas',
- 'BT' => 'Butãu',
- 'BV' => 'Ilha Buve',
- 'BW' => 'Botsuana',
- 'BY' => 'Belarus',
- 'BZ' => 'Belizi',
- 'CA' => 'Kanadá',
- 'CC' => 'Ilhas Kokus',
- 'CD' => 'Kongu - Kinxasa',
- 'CF' => 'Republika Sentru-Afrikanu',
- 'CG' => 'Kongu - Brazavili',
- 'CH' => 'Suisa',
- 'CI' => 'Kosta di Marfin',
- 'CK' => 'Ilhas Kuk',
- 'CL' => 'Xili',
- 'CM' => 'Kamarõis',
- 'CN' => 'Xina',
- 'CO' => 'Kulombia',
- 'CP' => 'Ilha Kliperton',
- 'CR' => 'Kosta Rika',
- 'CU' => 'Kuba',
- 'CV' => 'Kabu Verdi',
- 'CW' => 'Kurasau',
- 'CX' => 'Ilha di Natal',
- 'CY' => 'Xipri',
- 'CZ' => 'Republika Txeka',
- 'DE' => 'Alimanha',
- 'DG' => 'Diegu Garsia',
- 'DJ' => 'Djibuti',
- 'DK' => 'Dinamarka',
- 'DM' => 'Dominika',
- 'DO' => 'Repúblika Dominikana',
- 'DZ' => 'Arjelia',
- 'EA' => 'Seuta i Melila',
- 'EC' => 'Ekuador',
- 'EE' => 'Stonia',
- 'EG' => 'Ejitu',
- 'EH' => 'Sara Osidental',
- 'ER' => 'Iritreia',
- 'ES' => 'Spanha',
- 'ET' => 'Itiopia',
- 'EU' => 'Uniãu Europeia',
- 'FI' => 'Finlandia',
- 'FJ' => 'Fidji',
- 'FK' => 'Ilhas Malvinas',
- 'FM' => 'Mikronezia',
- 'FO' => 'Ilhas Faroe',
- 'FR' => 'Fransa',
- 'GA' => 'Gabãu',
- 'GB' => 'R.U.',
- 'GD' => 'Granada',
- 'GE' => 'Jiorjia',
- 'GF' => 'Giana Franseza',
- 'GG' => 'Gernzi',
- 'GH' => 'Gana',
- 'GI' => 'Jibraltar',
- 'GL' => 'Gronelandia',
- 'GM' => 'Gambia',
- 'GN' => 'Gine',
- 'GP' => 'Guadalupi',
- 'GQ' => 'Gine Ekuatorial',
- 'GR' => 'Gresia',
- 'GS' => 'Jeórjia di Sul i Ilhas di Sanduixi di Sul',
- 'GT' => 'Guatimala',
- 'GU' => 'Guam',
- 'GW' => 'Gine-Bisau',
- 'GY' => 'Giana',
- 'HK' => 'Ong Kong',
- 'HM' => 'Ilha Heard i Ilhas McDonald',
- 'HN' => 'Onduras',
- 'HR' => 'Kroasia',
- 'HT' => 'Aiti',
- 'HU' => 'Ungria',
- 'IC' => 'Kanárias',
- 'ID' => 'Indonezia',
- 'IE' => 'Irlanda',
- 'IL' => 'Israel',
- 'IM' => 'Ilha di Man',
- 'IN' => 'India',
- 'IO' => 'Ilhas Britanika di Indiku',
- 'IQ' => 'Iraki',
- 'IR' => 'Iron',
- 'IS' => 'Islandia',
- 'IT' => 'Italia',
- 'JE' => 'Jersi',
- 'JM' => 'Jamaika',
- 'JO' => 'Jordania',
- 'JP' => 'Japãu',
- 'KE' => 'Kenia',
- 'KG' => 'Kirgiston',
- 'KH' => 'Kambodja',
- 'KI' => 'Kiribati',
- 'KM' => 'Kamoris',
- 'KN' => 'Sãu Kristovãu i Nevis',
- 'KP' => 'Koreia di Norti',
- 'KR' => 'Koreia di Sul',
- 'KW' => 'Kueiti',
- 'KY' => 'Ilhas Kaimãu',
- 'KZ' => 'Kazakistãu',
- 'LA' => 'Laus',
- 'LB' => 'Libanu',
- 'LC' => 'Santa Lúsia',
- 'LI' => 'Lixenstain',
- 'LK' => 'Sri Lanka',
- 'LR' => 'Liberia',
- 'LS' => 'Lezotu',
- 'LT' => 'Lituania',
- 'LU' => 'Luxemburgu',
- 'LV' => 'Letonia',
- 'LY' => 'Libia',
- 'MA' => 'Marokus',
- 'MC' => 'Monaku',
- 'MD' => 'Moldavia',
- 'ME' => 'Montenegru',
- 'MF' => 'Sãu Martinhu di Fransa',
- 'MG' => 'Madagaskar',
- 'MH' => 'Ilhas Marxal',
- 'MK' => 'Masidonia',
- 'ML' => 'Mali',
- 'MM' => 'Mianmar',
- 'MN' => 'Mongolia',
- 'MO' => 'Makau',
- 'MP' => 'Ilhas Marianas di Norti',
- 'MQ' => 'Martinika',
- 'MR' => 'Mauritania',
- 'MS' => 'Monserat',
- 'MT' => 'Malta',
- 'MU' => 'Ilhas Maurisia',
- 'MV' => 'Maldivas',
- 'MW' => 'Malaui',
- 'MX' => 'Mexiku',
- 'MY' => 'Malazia',
- 'MZ' => 'Musambiki',
- 'NA' => 'Namibia',
- 'NC' => 'Nova Kalidonia',
- 'NE' => 'Nijer',
- 'NF' => 'Ilhas Norfolk',
- 'NG' => 'Nijeria',
- 'NI' => 'Nikaragua',
- 'NL' => 'Olanda',
- 'NO' => 'Noruega',
- 'NP' => 'Nepal',
- 'NR' => 'Nauru',
- 'NU' => 'Niue',
- 'NZ' => 'Nova Zilandia',
- 'OM' => 'Oman',
- 'PA' => 'Panama',
- 'PE' => 'Peru',
- 'PF' => 'Polinezia Franseza',
- 'PG' => 'Papua-Nova Gine',
- 'PH' => 'Filipinas',
- 'PK' => 'Pakistãu',
- 'PL' => 'Pulonia',
- 'PM' => 'San Piere i Mikelon',
- 'PN' => 'Pirkairn',
- 'PR' => 'Portu Riku',
- 'PS' => 'Palistina',
- 'PT' => 'Purtugal',
- 'PW' => 'Palau',
- 'PY' => 'Paraguai',
- 'QA' => 'Katar',
- 'QO' => 'Oseania Insular',
- 'RE' => 'Runion',
- 'RO' => 'Romenia',
- 'RS' => 'Servia',
- 'RU' => 'Rúsia',
- 'RW' => 'Ruanda',
- 'SA' => 'Arabia Saudita',
- 'SB' => 'Ilhas Salumon',
- 'SC' => 'Seixelis',
- 'SD' => 'Sudãu',
- 'SE' => 'Suesia',
- 'SG' => 'Singapura',
- 'SH' => 'Santa Ilena',
- 'SI' => 'Slovenia',
- 'SJ' => 'Svalbard i Jan Maien',
- 'SK' => 'Slovakia',
- 'SL' => 'Sera Lioa',
- 'SM' => 'San Marinu',
- 'SN' => 'Senegal',
- 'SO' => 'Sumalia',
- 'SR' => 'Surinami',
- 'SS' => 'Sudãu di Sul',
- 'ST' => 'Sãu Tume i Prinsipi',
- 'SV' => 'El Salvador',
- 'SX' => 'Sãu Martinhu di Olanda',
- 'SY' => 'Siria',
- 'SZ' => 'Suazilándia',
- 'TA' => 'Tristan da Kunha',
- 'TC' => 'Ilhas Turkas i Kaikus',
- 'TD' => 'Txadi',
- 'TF' => 'Terras Franses di Sul',
- 'TG' => 'Togu',
- 'TH' => 'Tailandia',
- 'TJ' => 'Tadjikistãu',
- 'TK' => 'Tokelau',
- 'TL' => 'Timor Lesti',
- 'TM' => 'Turkumenistãu',
- 'TN' => 'Tunizia',
- 'TO' => 'Tonga',
- 'TR' => 'Turkia',
- 'TT' => 'Trinidad i Tobagu',
- 'TV' => 'Tuvalu',
- 'TW' => 'Taiuan',
- 'TZ' => 'Tanzania',
- 'UA' => 'Ukrania',
- 'UG' => 'Uganda',
- 'UM' => 'Ilhas Minoris Distantis de Stadus Unidus',
- 'US' => 'S.U.',
- 'UY' => 'Uruguai',
- 'UZ' => 'Uzbekistãu',
- 'VA' => 'Vatikanu',
- 'VC' => 'Sãu Bisenti i Granadinas',
- 'VE' => 'Vinizuela',
- 'VG' => 'Ilhas Virjens Britanikas',
- 'VI' => 'Ilhas Virjens Merkanu',
- 'VN' => 'Vietnam',
- 'VU' => 'Vanuatu',
- 'WF' => 'Ualis i Futuna',
- 'WS' => 'Samoa',
- 'XK' => 'Kozovu',
- 'YE' => 'Iemen',
- 'YT' => 'Maiote',
- 'ZA' => 'Afrika di Sul',
- 'ZM' => 'Zambia',
- 'ZW' => 'Zimbabui',
-);
-
-$timeUnits = array(
- 'day-future-other' => 'di li {0} dia',
- 'day-narrow-future-other' => 'di li {0} dia',
- 'day-narrow-past-other' => 'a ten {0} dia',
- 'day-other' => '{0} dia',
- 'day-past-other' => 'a ten {0} dia',
- 'day-short-future-other' => 'di li {0} dia',
- 'day-short-past-other' => 'a ten {0} dia',
- 'hour-future-other' => 'di li {0} ora',
- 'hour-narrow-future-other' => 'di li {0} ora',
- 'hour-narrow-past-other' => 'a ten {0} ora',
- 'hour-other' => '{0} ora',
- 'hour-past-other' => 'a ten {0} ora',
- 'hour-short-future-other' => 'di li {0} ora',
- 'hour-short-past-other' => 'a ten {0} ora',
- 'microsecond-other' => '{0} mikrosigundu',
- 'millisecond-other' => '{0} milisigundu',
- 'minute-future-other' => 'di li {0} minutu',
- 'minute-narrow-future-other' => 'di li {0} m',
- 'minute-narrow-past-other' => 'a ten {0} m',
- 'minute-other' => '{0} minutu',
- 'minute-past-other' => 'a ten {0} minutu',
- 'minute-short-future-other' => 'di li {0} min',
- 'minute-short-past-other' => 'a ten {0} min',
- 'month-future-other' => 'di li {0} mes',
- 'month-narrow-future-other' => 'di li {0} mes',
- 'month-narrow-past-other' => 'a ten {0} mes',
- 'month-other' => '{0} mes',
- 'month-past-other' => 'a ten {0} mes',
- 'month-short-future-other' => 'di li {0} mes',
- 'month-short-past-other' => 'a ten {0} mes',
- 'nanosecond-other' => '{0} nanosigundu',
- 'quarter-future-other' => 'di li {0} trimestri',
- 'quarter-narrow-future-other' => 'di li {0} trim.',
- 'quarter-narrow-past-other' => 'a ten {0} trim.',
- 'quarter-past-other' => 'a ten {0} trimestri',
- 'quarter-short-future-other' => 'di li {0} trim.',
- 'quarter-short-past-other' => 'a ten {0} trim.',
- 'second-future-other' => 'di li {0} sigundu',
- 'second-narrow-future-other' => 'di li {0} s',
- 'second-narrow-past-other' => 'a ten {0} s',
- 'second-other' => '{0} sigundu',
- 'second-past-other' => 'a ten {0} sigundu',
- 'second-short-future-other' => 'di li {0} sig',
- 'second-short-past-other' => 'a ten {0} sig',
- 'week-future-other' => 'di li {0} simana',
- 'week-narrow-future-other' => 'di li {0} sim.',
- 'week-narrow-past-other' => 'a ten {0} sim.',
- 'week-other' => '{0} simana',
- 'week-past-other' => 'a ten {0} simana',
- 'week-short-future-other' => 'di li {0} sim.',
- 'week-short-past-other' => 'a ten {0} sim.',
- 'year-future-other' => 'di li {0} anu',
- 'year-narrow-future-other' => 'di li {0} anu',
- 'year-narrow-past-other' => 'a ten {0} anu',
- 'year-other' => '{0} anu',
- 'year-past-other' => 'a ten {0} anu',
- 'year-short-future-other' => 'di li {0} anu',
- 'year-short-past-other' => 'a ten {0} anu',
-);
diff --git a/MLEB/cldr/CldrNames/CldrNamesKi.php b/MLEB/cldr/CldrNames/CldrNamesKi.php
index 9f8f3f8b..aa0acf63 100644
--- a/MLEB/cldr/CldrNames/CldrNamesKi.php
+++ b/MLEB/cldr/CldrNames/CldrNamesKi.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'ak' => 'Kiakan',
'am' => 'Kiamhari',
'ar' => 'Kĩarabu',
@@ -46,9 +46,9 @@ $languageNames = array(
'yo' => 'Kiyoruba',
'zh' => 'Kĩcaina',
'zu' => 'Kizulu',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'AED' => 'Dirham ya Falme za Kiarabu',
'AOA' => 'Kwanza ya Angola',
'AUD' => 'Dola ya Australia',
@@ -79,7 +79,8 @@ $currencyNames = array(
'LYD' => 'Dinari ya Libya',
'MAD' => 'Dirham ya Moroko',
'MGA' => 'Ariary ya Bukini',
- 'MRO' => 'Ugwiya ya Moritania',
+ 'MRO' => 'Ugwiya ya Moritania (1973–2017)',
+ 'MRU' => 'Ugwiya ya Moritania',
'MUR' => 'Rupia ya Morisi',
'MWK' => 'Kwacha ya Malawi',
'MZM' => 'Metikali ya Msumbiji',
@@ -92,7 +93,8 @@ $currencyNames = array(
'SHP' => 'Pauni ya Santahelena',
'SLL' => 'Leoni',
'SOS' => 'ciringi cia cumarĩ',
- 'STD' => 'Dobra ya Sao Tome na Principe',
+ 'STD' => 'Dobra ya Sao Tome na Principe (1977–2017)',
+ 'STN' => 'Dobra ya Sao Tome na Principe',
'SZL' => 'Lilangeni',
'TND' => 'Dinari ya Tunisia',
'TZS' => 'ciringi cia Tanizania',
@@ -104,13 +106,13 @@ $currencyNames = array(
'ZMK' => 'Kwacha ya Zambia (1968–2012)',
'ZMW' => 'Kwacha ya Zambia',
'ZWD' => 'Dola ya Zimbabwe',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'KES' => 'Ksh',
-);
+];
-$countryNames = array(
+$countryNames = [
'AD' => 'Andora',
'AE' => 'Falme za Kiarabu',
'AF' => 'Afuganistani',
@@ -118,7 +120,6 @@ $countryNames = array(
'AI' => 'Anguilla',
'AL' => 'Albania',
'AM' => 'Armenia',
- 'AN' => 'Antili za Uholanzi',
'AO' => 'Angola',
'AR' => 'Ajentina',
'AS' => 'Samoa ya Marekani',
@@ -336,4 +337,4 @@ $countryNames = array(
'ZA' => 'Afrika Kusini',
'ZM' => 'Zambia',
'ZW' => 'Zimbabwe',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesKk_cyrl.php b/MLEB/cldr/CldrNames/CldrNamesKk_cyrl.php
index fd1d6577..b4c0319e 100644
--- a/MLEB/cldr/CldrNames/CldrNamesKk_cyrl.php
+++ b/MLEB/cldr/CldrNames/CldrNamesKk_cyrl.php
@@ -1,265 +1,425 @@
<?php
-$languageNames = array(
+$languageNames = [
+ 'aa' => 'афар тілі',
'ab' => 'абхаз тілі',
- 'af' => 'африкаанс',
- 'agq' => 'агхем',
- 'ak' => 'акан',
- 'am' => 'амхар',
+ 'ace' => 'ачех тілі',
+ 'ada' => 'адангме тілі',
+ 'ady' => 'адыгей тілі',
+ 'af' => 'африкаанс тілі',
+ 'agq' => 'агхем тілі',
+ 'ain' => 'айну тілі',
+ 'ak' => 'акан тілі',
+ 'ale' => 'алеут тілі',
+ 'alt' => 'оңтүстік алтай тілі',
+ 'am' => 'амхар тілі',
+ 'an' => 'арагон тілі',
+ 'anp' => 'ангика тілі',
'ar' => 'араб тілі',
'ar-001' => 'қазіргі стандартты араб тілі',
- 'arn' => 'мапуче',
+ 'arn' => 'мапуче тілі',
+ 'arp' => 'арапахо тілі',
'as' => 'ассам тілі',
- 'asa' => 'асу',
- 'ay' => 'Аймара',
+ 'asa' => 'асу тілі',
+ 'ast' => 'астурия тілі',
+ 'av' => 'авар тілі',
+ 'awa' => 'авадхи тілі',
+ 'ay' => 'аймара тілі',
'az' => 'әзірбайжан тілі',
'ba' => 'башқұрт тілі',
- 'be' => 'беларус тілі',
- 'bem' => 'бемба',
- 'bez' => 'бена',
+ 'ban' => 'бали тілі',
+ 'bas' => 'баса тілі',
+ 'be' => 'беларусь тілі',
+ 'bem' => 'бемба тілі',
+ 'bez' => 'бена тілі',
'bg' => 'болгар тілі',
- 'bm' => 'бамбара',
+ 'bgn' => 'батыс балучи тілі',
+ 'bho' => 'бходжпури тілі',
+ 'bi' => 'бислама тілі',
+ 'bin' => 'бини тілі',
+ 'bla' => 'сиксика тілі',
+ 'bm' => 'бамбара тілі',
'bn' => 'бенгал тілі',
'bo' => 'тибет тілі',
'br' => 'бретон тілі',
'brx' => 'бодо тілі',
'bs' => 'босния тілі',
- 'ca' => 'каталан',
- 'cgg' => 'кига',
+ 'bug' => 'бугис тілі',
+ 'byn' => 'блин тілі',
+ 'ca' => 'каталан тілі',
+ 'ce' => 'шешен тілі',
+ 'ceb' => 'себуано тілі',
+ 'cgg' => 'кига тілі',
+ 'ch' => 'чаморро тілі',
+ 'chk' => 'чуук тілі',
+ 'chm' => 'мари тілі',
+ 'cho' => 'чокто тілі',
'chr' => 'чероки тілі',
+ 'chy' => 'шайен тілі',
'ckb' => 'сорани тілі',
- 'co' => 'корсикан тілі',
+ 'co' => 'корсика тілі',
+ 'crs' => 'сейшельдік креол тілі',
'cs' => 'чех тілі',
- 'cy' => 'валлий',
- 'da' => 'дат',
- 'dav' => 'таита',
+ 'cu' => 'шіркеулік славян тілі',
+ 'cv' => 'чуваш тілі',
+ 'cy' => 'валлий тілі',
+ 'da' => 'дат тілі',
+ 'dak' => 'дакота тілі',
+ 'dar' => 'даргин тілі',
+ 'dav' => 'таита тілі',
'de' => 'неміс тілі',
'de-at' => 'австриялық неміс тілі',
- 'de-ch' => 'неміс тілінің швейцариялық диалекті',
- 'dje' => 'зарма',
+ 'de-ch' => 'швейцариялық әдеби неміс тілі',
+ 'dgr' => 'догриб тілі',
+ 'dje' => 'зарма тілі',
'dsb' => 'төменгі лужица тілі',
- 'dua' => 'дуала',
- 'dv' => 'Мальдив',
- 'dyo' => 'диола',
- 'dz' => 'дзонг-кэ',
- 'ebu' => 'ембу',
- 'ee' => 'эве',
- 'efi' => 'эфик',
+ 'dua' => 'дуала тілі',
+ 'dv' => 'дивехи тілі',
+ 'dyo' => 'диола тілі',
+ 'dz' => 'дзонг-кэ тілі',
+ 'dzg' => 'дазага тілі',
+ 'ebu' => 'эмбу тілі',
+ 'ee' => 'эве тілі',
+ 'efi' => 'эфик тілі',
+ 'eka' => 'экаджук тілі',
'el' => 'грек тілі',
'en' => 'ағылшын тілі',
'en-au' => 'австралиялық ағылшын тілі',
'en-ca' => 'канадалық ағылшын тілі',
'en-gb' => 'британиялық ағылшын тілі',
- 'en-us' => 'американдық ағылшын тілі',
- 'eo' => 'эсперанто',
+ 'en-us' => 'америкалық ағылшын тілі',
+ 'eo' => 'эсперанто тілі',
'es' => 'испан тілі',
- 'es-419' => 'латын американдық испан тілі',
- 'es-es' => 'ибериялық испан тілі',
+ 'es-419' => 'латынамерикалық испан тілі',
+ 'es-es' => 'еуропалық испан тілі',
'es-mx' => 'мексикалық испан тілі',
'et' => 'эстон тілі',
- 'eu' => 'баск',
+ 'eu' => 'баск тілі',
+ 'ewo' => 'эвондо тілі',
'fa' => 'парсы тілі',
- 'fi' => 'фин',
- 'fil' => 'филиппин',
- 'fj' => 'фиджи',
- 'fo' => 'фарер',
+ 'ff' => 'фула тілі',
+ 'fi' => 'фин тілі',
+ 'fil' => 'филиппин тілі',
+ 'fj' => 'фиджи тілі',
+ 'fo' => 'фарер тілі',
+ 'fon' => 'фон тілі',
'fr' => 'француз тілі',
'fr-ca' => 'канадалық француз тілі',
'fr-ch' => 'швейцариялық француз тілі',
- 'fy' => 'батыс фриз',
+ 'fur' => 'фриуль тілі',
+ 'fy' => 'батыс фриз тілі',
'ga' => 'ирланд тілі',
- 'gag' => 'гагауз',
- 'gd' => 'Солтүстік Шотландия',
- 'gl' => 'гали',
- 'gn' => 'гуарани',
+ 'gaa' => 'га тілі',
+ 'gag' => 'гагауз тілі',
+ 'gd' => 'шотландиялық гэль тілі',
+ 'gez' => 'геэз тілі',
+ 'gil' => 'гильберт тілі',
+ 'gl' => 'галисия тілі',
+ 'gn' => 'гуарани тілі',
+ 'gor' => 'горонтало тілі',
'gsw' => 'швейцариялық неміс тілі',
- 'gu' => 'гуджарати',
- 'guz' => 'гусии',
- 'gv' => 'мэнс',
- 'ha' => 'хауса',
- 'haw' => 'гавай',
- 'he' => 'иврит',
- 'hi' => 'хинди',
- 'hr' => 'хорват',
- 'hsb' => 'жоғарғы лужица',
- 'ht' => 'гаитян',
- 'hu' => 'венгер',
+ 'gu' => 'гуджарати тілі',
+ 'guz' => 'гусии тілі',
+ 'gv' => 'мэн тілі',
+ 'gwi' => 'гвичин тілі',
+ 'ha' => 'хауса тілі',
+ 'haw' => 'гавайи тілі',
+ 'he' => 'иврит тілі',
+ 'hi' => 'хинди тілі',
+ 'hil' => 'хилигайнон тілі',
+ 'hmn' => 'хмонг тілі',
+ 'hr' => 'хорват тілі',
+ 'hsb' => 'жоғарғы лужица тілі',
+ 'ht' => 'гаити тілі',
+ 'hu' => 'венгр тілі',
+ 'hup' => 'хупа тілі',
'hy' => 'армян тілі',
- 'ia' => 'интерлингва',
- 'id' => 'индонез тілі',
- 'ie' => 'интерлингве',
- 'ig' => 'игбо',
+ 'hz' => 'гереро тілі',
+ 'ia' => 'интерлингва тілі',
+ 'iba' => 'ибан тілі',
+ 'ibb' => 'ибибио тілі',
+ 'id' => 'индонезия тілі',
+ 'ie' => 'интерлингве тілі',
+ 'ig' => 'игбо тілі',
'ii' => 'сычуан и тілі',
- 'is' => 'исланд',
+ 'ilo' => 'илоко тілі',
+ 'inh' => 'ингуш тілі',
+ 'io' => 'идо тілі',
+ 'is' => 'исланд тілі',
'it' => 'итальян тілі',
- 'iu' => 'инуктитут',
+ 'iu' => 'инуктитут тілі',
'ja' => 'жапон тілі',
- 'jgo' => 'нгомба',
- 'jmc' => 'мачаме',
- 'jv' => 'ява',
+ 'jbo' => 'ложбан тілі',
+ 'jgo' => 'нгомба тілі',
+ 'jmc' => 'мачаме тілі',
+ 'jv' => 'ява тілі',
'ka' => 'грузин тілі',
- 'kab' => 'кабил',
- 'kam' => 'камба',
- 'kde' => 'маконде',
- 'kea' => 'кабувердиана',
- 'khq' => 'койра чини',
- 'ki' => 'кикуйю',
+ 'kab' => 'кабил тілі',
+ 'kac' => 'качин тілі',
+ 'kaj' => 'каджи тілі',
+ 'kam' => 'камба тілі',
+ 'kbd' => 'кабардин тілі',
+ 'kcg' => 'тьяп тілі',
+ 'kde' => 'маконде тілі',
+ 'kea' => 'кабувердьяну тілі',
+ 'kfo' => 'коро тілі',
+ 'kha' => 'кхаси тілі',
+ 'khq' => 'койра чини тілі',
+ 'ki' => 'кикуйю тілі',
+ 'kj' => 'кваньяма тілі',
'kk' => 'қазақ тілі',
- 'kl' => 'калаалисут',
- 'kln' => 'каленжин',
- 'km' => 'кхмер',
- 'kn' => 'каннада',
- 'ko' => 'кәріс тілі',
- 'koi' => 'коми-пермь тілі',
- 'kok' => 'конкани',
+ 'kkj' => 'како тілі',
+ 'kl' => 'калаалисут тілі',
+ 'kln' => 'каленжин тілі',
+ 'km' => 'кхмер тілі',
+ 'kmb' => 'кимбунду тілі',
+ 'kn' => 'каннада тілі',
+ 'ko' => 'корей тілі',
+ 'koi' => 'коми-пермяк тілі',
+ 'kok' => 'конкани тілі',
+ 'kpe' => 'кпелле тілі',
+ 'kr' => 'канури тілі',
+ 'krc' => 'қарашай-балқар тілі',
+ 'krl' => 'карель тілі',
+ 'kru' => 'курух тілі',
'ks' => 'кашмир тілі',
- 'ksb' => 'шамбала',
- 'ksf' => 'бафиа',
+ 'ksb' => 'шамбала тілі',
+ 'ksf' => 'бафиа тілі',
+ 'ksh' => 'кёльн тілі',
'ku' => 'күрд тілі',
- 'kw' => 'корниш',
+ 'kum' => 'құмық тілі',
+ 'kv' => 'коми тілі',
+ 'kw' => 'корн тілі',
'ky' => 'қырғыз тілі',
- 'la' => 'латын',
+ 'la' => 'латын тілі',
+ 'lad' => 'ладино тілі',
'lag' => 'ланги тілі',
- 'lb' => 'люксембург',
- 'lg' => 'ганда',
- 'lkt' => 'лакота',
- 'ln' => 'лингала',
+ 'lb' => 'люксембург тілі',
+ 'lez' => 'лезгин тілі',
+ 'lg' => 'ганда тілі',
+ 'li' => 'лимбург тілі',
+ 'lkt' => 'лакота тілі',
+ 'ln' => 'лингала тілі',
'lo' => 'лаос тілі',
+ 'loz' => 'лози тілі',
+ 'lrc' => 'солтүстік люри тілі',
'lt' => 'литва тілі',
- 'lu' => 'луба-катанга',
- 'luo' => 'луо',
- 'luy' => 'лухиа',
+ 'lu' => 'луба-катанга тілі',
+ 'lua' => 'луба-лулуа тілі',
+ 'lun' => 'лунда тілі',
+ 'luo' => 'луо тілі',
+ 'lus' => 'мизо тілі',
+ 'luy' => 'лухиа тілі',
'lv' => 'латыш тілі',
- 'mas' => 'масай',
- 'mer' => 'меру',
- 'mfe' => 'морисиен',
- 'mg' => 'малагаси',
- 'mgh' => 'макуа-меетто',
- 'mgo' => 'мета',
- 'mi' => 'маори',
+ 'mad' => 'мадур тілі',
+ 'mag' => 'магахи тілі',
+ 'mai' => 'майтхили тілі',
+ 'mak' => 'макасар тілі',
+ 'mas' => 'масай тілі',
+ 'mdf' => 'мокша тілі',
+ 'men' => 'менде тілі',
+ 'mer' => 'меру тілі',
+ 'mfe' => 'морисиен тілі',
+ 'mg' => 'малагаси тілі',
+ 'mgh' => 'макуа-меетто тілі',
+ 'mgo' => 'мета тілі',
+ 'mh' => 'маршалл тілі',
+ 'mi' => 'маори тілі',
+ 'mic' => 'микмак тілі',
+ 'min' => 'минангкабау тілі',
'mk' => 'македон тілі',
- 'ml' => 'малайялам',
+ 'ml' => 'малаялам тілі',
'mn' => 'моңғол тілі',
- 'moh' => 'мохоки',
- 'mr' => 'маратхи',
- 'ms' => 'малай',
- 'mt' => 'мальта',
- 'mua' => 'мунданг',
- 'my' => 'бирман',
- 'naq' => 'нама',
- 'nb' => 'норвегиялық букмол',
- 'nd' => 'солтүстік ндебел',
- 'ne' => 'непал',
+ 'mni' => 'манипури тілі',
+ 'moh' => 'могавк тілі',
+ 'mos' => 'мосси тілі',
+ 'mr' => 'маратхи тілі',
+ 'ms' => 'малай тілі',
+ 'mt' => 'мальта тілі',
+ 'mua' => 'мунданг тілі',
+ 'mul' => 'бірнеше тіл',
+ 'mus' => 'крик тілі',
+ 'mwl' => 'миранд тілі',
+ 'my' => 'бирма тілі',
+ 'myv' => 'эрзян тілі',
+ 'mzn' => 'мазандеран тілі',
+ 'na' => 'науру тілі',
+ 'nap' => 'неаполитан тілі',
+ 'naq' => 'нама тілі',
+ 'nb' => 'норвегиялық букмол тілі',
+ 'nd' => 'солтүстік ндебеле тілі',
+ 'nds' => 'төменгі неміс тілі',
+ 'nds-nl' => 'төменгі саксон тілі',
+ 'ne' => 'непал тілі',
+ 'new' => 'невар тілі',
+ 'ng' => 'ндонга тілі',
+ 'nia' => 'ниас тілі',
+ 'niu' => 'ниуэ тілі',
'nl' => 'нидерланд тілі',
'nl-be' => 'фламанд тілі',
- 'nmg' => 'квасио',
- 'nn' => 'норвегиялық нинорск',
- 'no' => 'норвег',
- 'nqo' => 'нко',
- 'nso' => 'Солтүстік сотхо',
- 'nus' => 'нуер',
- 'ny' => 'ньянджа',
- 'nyn' => 'нианколе',
- 'oc' => 'окситан',
- 'om' => 'оромо',
- 'or' => 'ория',
- 'os' => 'осетин',
- 'pa' => 'пенджаб',
+ 'nmg' => 'квасио тілі',
+ 'nn' => 'норвегиялық нюнорск тілі',
+ 'nnh' => 'нгиембун тілі',
+ 'no' => 'норвег тілі',
+ 'nog' => 'ноғай тілі',
+ 'nqo' => 'нко тілі',
+ 'nr' => 'оңтүстік ндебеле тілі',
+ 'nso' => 'солтүстік сото тілі',
+ 'nus' => 'нуэр тілі',
+ 'nv' => 'навахо тілі',
+ 'ny' => 'ньянджа тілі',
+ 'nyn' => 'нианколе тілі',
+ 'oc' => 'окситан тілі',
+ 'om' => 'оромо тілі',
+ 'or' => 'ория тілі',
+ 'os' => 'осетин тілі',
+ 'pa' => 'пенджаб тілі',
+ 'pag' => 'пангасинан тілі',
+ 'pam' => 'пампанга тілі',
+ 'pap' => 'папьяменто тілі',
+ 'pau' => 'палау тілі',
+ 'pcm' => 'нигериялық пиджин тілі',
'pl' => 'поляк тілі',
- 'ps' => 'пушту',
+ 'prg' => 'пруссия тілі',
+ 'ps' => 'пушту тілі',
'pt' => 'португал тілі',
'pt-br' => 'бразилиялық португал тілі',
'pt-pt' => 'еуропалық португал тілі',
- 'qu' => 'кечуа',
- 'quc' => 'киче',
- 'rm' => 'романш',
- 'rn' => 'рунди',
- 'ro' => 'румын',
+ 'qu' => 'кечуа тілі',
+ 'quc' => 'киче тілі',
+ 'rap' => 'рапануй тілі',
+ 'rar' => 'раротонган тілі',
+ 'rm' => 'романш тілі',
+ 'rn' => 'рунди тілі',
+ 'ro' => 'румын тілі',
'ro-md' => 'молдован тілі',
- 'rof' => 'ромбо',
+ 'rof' => 'ромбо тілі',
'ru' => 'орыс тілі',
- 'rw' => 'киньяруанда',
- 'rwk' => 'руа',
- 'sa' => 'санскрит',
- 'sah' => 'якут',
- 'saq' => 'самбуру',
- 'sbp' => 'сангу',
- 'sd' => 'синдхи',
- 'se' => 'солтүстік сами',
- 'seh' => 'сена',
- 'ses' => 'койраборо сенни',
- 'sg' => 'санго',
- 'sh' => 'сербхорват',
- 'shi' => 'ташелхит',
- 'si' => 'сингал',
- 'sk' => 'словак',
- 'sl' => 'словен',
- 'sma' => 'оңтүстік саами',
- 'smj' => 'луле саам',
- 'smn' => 'инари саам',
- 'sms' => 'сколт саам',
- 'sn' => 'шона',
- 'so' => 'сомали',
- 'sq' => 'албан',
+ 'rup' => 'арумын тілі',
+ 'rw' => 'киньяруанда тілі',
+ 'rwk' => 'руа тілі',
+ 'sa' => 'санскрит тілі',
+ 'sad' => 'сандаве тілі',
+ 'sah' => 'якут тілі',
+ 'saq' => 'самбуру тілі',
+ 'sat' => 'сантали тілі',
+ 'sba' => 'нгамбай тілі',
+ 'sbp' => 'сангу тілі',
+ 'sc' => 'сардин тілі',
+ 'scn' => 'сицилия тілі',
+ 'sco' => 'шотланд тілі',
+ 'sd' => 'синдхи тілі',
+ 'sdh' => 'оңтүстік күрд тілі',
+ 'se' => 'солтүстік саам тілі',
+ 'seh' => 'сена тілі',
+ 'ses' => 'койраборо сенни тілі',
+ 'sg' => 'санго тілі',
+ 'sh' => 'серб-хорват тілі',
+ 'shi' => 'ташелхит тілі',
+ 'shn' => 'шан тілі',
+ 'si' => 'сингал тілі',
+ 'sk' => 'словак тілі',
+ 'sl' => 'словен тілі',
+ 'sm' => 'самоа тілі',
+ 'sma' => 'оңтүстік саам тілі',
+ 'smj' => 'луле саам тілі',
+ 'smn' => 'инари саам тілі',
+ 'sms' => 'колтта саам тілі',
+ 'sn' => 'шона тілі',
+ 'snk' => 'сонинке тілі',
+ 'so' => 'сомали тілі',
+ 'sq' => 'албан тілі',
'sr' => 'серб тілі',
- 'st' => 'сесото',
- 'su' => 'судан',
- 'sv' => 'швед',
- 'sw' => 'суахили',
- 'swc' => 'конго суахили тілі',
- 'ta' => 'тамил',
- 'te' => 'телугу',
- 'teo' => 'тесо',
+ 'srn' => 'сранан тонго тілі',
+ 'ss' => 'свати тілі',
+ 'ssy' => 'сахо тілі',
+ 'st' => 'сесото тілі',
+ 'su' => 'сундан тілі',
+ 'suk' => 'сукума тілі',
+ 'sv' => 'швед тілі',
+ 'sw' => 'суахили тілі',
+ 'sw-cd' => 'конго суахили тілі',
+ 'swb' => 'комор тілі',
+ 'syr' => 'сирия тілі',
+ 'ta' => 'тамил тілі',
+ 'te' => 'телугу тілі',
+ 'tem' => 'темне тілі',
+ 'teo' => 'тесо тілі',
+ 'tet' => 'тетум тілі',
'tg' => 'тәжік тілі',
- 'th' => 'тай',
- 'ti' => 'тигринья',
- 'tk' => 'түрікмен',
- 'tlh' => 'клингон',
- 'to' => 'тонган',
- 'tr' => 'түрік',
+ 'th' => 'тай тілі',
+ 'ti' => 'тигринья тілі',
+ 'tig' => 'тигре тілі',
+ 'tk' => 'түрікмен тілі',
+ 'tlh' => 'клингон тілі',
+ 'tn' => 'тсвана тілі',
+ 'to' => 'тонган тілі',
+ 'tpi' => 'ток-писин тілі',
+ 'tr' => 'түрік тілі',
+ 'trv' => 'тароко тілі',
+ 'ts' => 'тсонга тілі',
'tt' => 'татар тілі',
- 'tw' => 'тви',
- 'twq' => 'тасавак',
- 'tzm' => 'орталық атлас тамасагихт тілі',
+ 'tum' => 'тумбука тілі',
+ 'tvl' => 'тувалу тілі',
+ 'tw' => 'тви тілі',
+ 'twq' => 'тасавак тілі',
+ 'ty' => 'таити тілі',
+ 'tyv' => 'тувин тілі',
+ 'tzm' => 'орталық атлас тамазигхт тілі',
+ 'udm' => 'удмурт тілі',
'ug' => 'ұйғыр тілі',
'uk' => 'украин тілі',
+ 'umb' => 'умбунду тілі',
'und' => 'белгісіз тіл',
- 'ur' => 'урду',
- 'uz' => 'өзбек',
- 'vai' => 'вай',
- 'vi' => 'вьетнам',
- 'vun' => 'вунджо',
- 'wo' => 'волоф',
- 'xh' => 'ксоза',
- 'xog' => 'сога',
- 'yi' => 'идиш',
- 'yo' => 'йоруба',
- 'zgh' => 'марокколық стандартты тамазигхт',
+ 'ur' => 'урду тілі',
+ 'uz' => 'өзбек тілі',
+ 'vai' => 'вай тілі',
+ 've' => 'венда тілі',
+ 'vi' => 'вьетнам тілі',
+ 'vo' => 'волапюк тілі',
+ 'vun' => 'вунджо тілі',
+ 'wa' => 'валлон тілі',
+ 'wae' => 'вальзер тілі',
+ 'wal' => 'волайта тілі',
+ 'war' => 'варай тілі',
+ 'wbp' => 'вальбири тілі',
+ 'wo' => 'волоф тілі',
+ 'xal' => 'қалмақ тілі',
+ 'xh' => 'кхоса тілі',
+ 'xog' => 'сога тілі',
+ 'yav' => 'янгбен тілі',
+ 'ybb' => 'йемба тілі',
+ 'yi' => 'идиш тілі',
+ 'yo' => 'йоруба тілі',
+ 'yue' => 'кантон тілі',
+ 'zgh' => 'марокколық стандартты тамазигхт тілі',
'zh' => 'қытай тілі',
'zh-hans' => 'жеңілдетілген қытай тілі',
'zh-hant' => 'дәстүрлі қытай тілі',
- 'zu' => 'зулу',
+ 'zu' => 'зулу тілі',
+ 'zun' => 'зуни тілі',
'zxx' => 'тілдік мазмұны жоқ',
-);
+ 'zza' => 'заза тілі',
+];
-$currencyNames = array(
- 'AED' => 'Дихрам (БАЭ)',
- 'AFN' => 'Ауғаныстан афганиі',
- 'ALL' => 'Албания лекі',
+$currencyNames = [
+ 'AED' => 'Біріккен Араб Әмірліктерінің дирхамы',
+ 'AFN' => 'Ауғанстан афганиі',
+ 'ALL' => 'Албания легі',
'AMD' => 'Армения драмы',
'ANG' => 'Нидерланд антиль гульдені',
'AOA' => 'Ангола кванзасы',
'ARS' => 'Аргентина песосы',
'AUD' => 'Австралия доллары',
- 'AWG' => 'Арубан флоринсы',
+ 'AWG' => 'Аруба флорині',
'AZM' => 'Азербайджан манаты (1993–2006)',
'AZN' => 'Әзірбайжан манаты',
'BAM' => 'Босния және Герцеговина айырбасталмалы маркасы',
'BBD' => 'Барбадос доллары',
'BDT' => 'Бангладеш такасы',
- 'BGN' => 'Болгар леві',
+ 'BGN' => 'Болгария леві',
'BHD' => 'Бахрейн динары',
- 'BIF' => 'Бурунди франкы',
+ 'BIF' => 'Бурунди франкі',
'BMD' => 'Бермуд доллары',
'BND' => 'Бруней доллары',
'BOB' => 'Боливия боливианосы',
@@ -267,55 +427,57 @@ $currencyNames = array(
'BSD' => 'Багам доллары',
'BTN' => 'Бутан нгултрумы',
'BWP' => 'Ботсвана пуласы',
- 'BYR' => 'Беларус рублі',
+ 'BYN' => 'Беларусь рублі',
+ 'BYR' => 'Беларусь рублі (2000–2016)',
'BZD' => 'Белиз доллары',
'CAD' => 'Канада доллары',
- 'CDF' => 'Конго франкы',
- 'CHF' => 'Швейцария франкы',
+ 'CDF' => 'Конго франкі',
+ 'CHF' => 'Швейцария франкі',
'CLP' => 'Чили песосы',
- 'CNY' => 'Қытай юаны',
+ 'CNH' => 'Қытай юані (офшор)',
+ 'CNY' => 'Қытай юані',
'COP' => 'Колумбия песосы',
- 'CRC' => 'Коста-рика колоны',
+ 'CRC' => 'Коста-Рика колоны',
'CUC' => 'Куба айырбасталмалы песосы',
'CUP' => 'Куба песосы',
'CVE' => 'Кабо-Верде эскудосы',
- 'CZK' => 'Чех кронасы',
- 'DJF' => 'Джибути франкы',
+ 'CZK' => 'Чехия кронасы',
+ 'DJF' => 'Джибути франкі',
'DKK' => 'Дат кроны',
'DOP' => 'Доминикан песосы',
'DZD' => 'Алжир динары',
'EGP' => 'Мысыр фунты',
- 'ERN' => 'Эритрей накфасы',
+ 'ERN' => 'Эритрея накфасы',
'ETB' => 'Эфиопия быры',
'EUR' => 'Еуро',
'FJD' => 'Фиджи доллары',
'FKP' => 'Фолкленд аралдарының фунты',
- 'GBP' => 'Британия фунты',
+ 'GBP' => 'Британдық фунт',
'GEL' => 'Грузия лариі',
'GHS' => 'Гана седиі',
'GIP' => 'Гибралтар фунты',
'GMD' => 'Гамбия даласиі',
- 'GNF' => 'Гвиней франкы',
+ 'GNF' => 'Гвинея франкі',
'GTQ' => 'Гватемала кетсалі',
'GYD' => 'Гайана доллары',
'HKD' => 'Гонконг доллары',
- 'HNL' => 'Гондурас лемпираcы',
+ 'HNL' => 'Гондурас лемпирасы',
'HRK' => 'Хорватия кунасы',
'HTG' => 'Гаити гурды',
- 'HUF' => 'Венгер форинты',
- 'IDR' => 'Индонезия рупиі',
+ 'HUF' => 'Венгрия форинті',
+ 'IDR' => 'Индонезия рупиясы',
'ILS' => 'Израиль жаңа шекелі',
- 'INR' => 'Үнді рупиясы',
+ 'INR' => 'Үндістан рупиясы',
'IQD' => 'Ирак динары',
'IRR' => 'Иран риалы',
'ISK' => 'Исландия кронасы',
'JMD' => 'Ямайка доллары',
- 'JOD' => 'Йордания динары',
- 'JPY' => 'Жапон иені',
+ 'JOD' => 'Иордания динары',
+ 'JPY' => 'Жапония иенасы',
'KES' => 'Кения шиллингі',
'KGS' => 'Қырғызстан сомы',
'KHR' => 'Камбоджа риелі',
- 'KMF' => 'Комор аралдары франкы',
+ 'KMF' => 'Комор аралдары франкі',
'KPW' => 'Солтүстік Корея воны',
'KRW' => 'Оңтүстік Корея воны',
'KWD' => 'Кувейт динары',
@@ -329,50 +491,52 @@ $currencyNames = array(
'LVL' => 'Латвия латы',
'LYD' => 'Ливия динары',
'MAD' => 'Марокко дирхамы',
- 'MDL' => 'Молдава лейі',
- 'MGA' => 'Малагаси ариариы',
+ 'MDL' => 'Молдова лейі',
+ 'MGA' => 'Малагаси ариариі',
'MKD' => 'Македония динары',
'MMK' => 'Мьянма кьяты',
- 'MNT' => 'Моңғолия тугрикасы',
+ 'MNT' => 'Моңғолия тугригі',
'MOP' => 'Макао патакасы',
- 'MRO' => 'Мавритания угиясы',
+ 'MRO' => 'Мавритания угиясы (1973–2017)',
+ 'MRU' => 'Мавритания угиясы',
'MUR' => 'Маврикий рупиясы',
'MVR' => 'Мальдив руфиясы',
'MWK' => 'Малави квачасы',
- 'MXN' => 'Мексика пессосы',
+ 'MXN' => 'Мексика песосы',
'MYR' => 'Малайзия ринггиті',
'MZN' => 'Мозамбик метикалы',
'NAD' => 'Намибия доллары',
'NGN' => 'Нигерия найрасы',
'NIO' => 'Никарагуа кордобасы',
'NOK' => 'Норвегия кроны',
- 'NPR' => 'Непал рупиі',
+ 'NPR' => 'Непал рупиясы',
'NZD' => 'Жаңа Зеландия доллары',
'OMR' => 'Оман риалы',
'PAB' => 'Панама бальбоасы',
- 'PEN' => 'Перу жаңа солі',
+ 'PEN' => 'Перу солі',
'PGK' => 'Папуа - Жаңа Гвинея кинасы',
'PHP' => 'Филиппин песосы',
- 'PKR' => 'Пәкістан рупиі',
+ 'PKR' => 'Пәкістан рупиясы',
'PLN' => 'Польша злотасы',
'PYG' => 'Парагвай гуараниі',
'QAR' => 'Катар риалы',
'RON' => 'Румыния лейі',
'RSD' => 'Сербия динары',
- 'RUB' => 'Ресей рубль',
- 'RWF' => 'Руанда франкы',
- 'SAR' => 'Сауд Арабия риалы',
+ 'RUB' => 'Ресей рублі',
+ 'RWF' => 'Руанда франкі',
+ 'SAR' => 'Сауд Арабиясының риалы',
'SBD' => 'Соломон аралдары доллары',
'SCR' => 'Сейшель рупиясы',
'SDG' => 'Судан фунты',
- 'SEK' => 'Швед кроны',
+ 'SEK' => 'Швеция кроны',
'SGD' => 'Сингапур доллары',
'SHP' => 'Әулие Елена аралы фунты',
- 'SLL' => 'Сьерра-Леоне леонесы',
+ 'SLL' => 'Сьерра-Леоне леонесі',
'SOS' => 'Сомали шиллингі',
'SRD' => 'Суринам доллары',
'SSP' => 'Оңтүстік Судан фунты',
- 'STD' => 'Сант-Томе мен Принсипи добрасы',
+ 'STD' => 'Сант-Томе мен Принсипи добрасы (1977–2017)',
+ 'STN' => 'Сант-Томе мен Принсипи добрасы',
'SYP' => 'Сирия фунты',
'SZL' => 'Свазиленд лилангениі',
'THB' => 'Тай баты',
@@ -381,7 +545,7 @@ $currencyNames = array(
'TND' => 'Тунис динары',
'TOP' => 'Тонга паангасы',
'TRY' => 'Түрік лирасы',
- 'TTD' => 'Тринидад пен Тобаго доллары',
+ 'TTD' => 'Тринидад және Тобаго доллары',
'TWD' => 'Жаңа Тайван доллары',
'TZS' => 'Танзания шиллингі',
'UAH' => 'Украина гривнасы',
@@ -389,66 +553,89 @@ $currencyNames = array(
'USD' => 'АҚШ доллары',
'UYU' => 'Уругвай песосы',
'UZS' => 'Өзбекстан сомы',
- 'VEF' => 'Венесуэла боливары',
- 'VND' => 'Вьетнам донгы',
+ 'VEF' => 'Венесуэла боливары (2008–2018)',
+ 'VES' => 'Венесуэла боливары',
+ 'VND' => 'Вьетнам донгі',
'VUV' => 'Вануату ватуы',
'WST' => 'Самоа таласы',
- 'XAF' => 'КФА ВЕАС франкы',
+ 'XAF' => 'КФА ВЕАС франкі',
'XCD' => 'Шығыс Кариб доллары',
- 'XOF' => 'КФА ВСЕАО франкы',
- 'XPF' => 'КФП франкы',
+ 'XOF' => 'КФА ВСЕАО франкі',
+ 'XPF' => 'КФП франкі',
'XXX' => 'Белгісіз валюта',
'YER' => 'Йемен риалы',
'ZAR' => 'Оңтүстік Африка рэнді',
'ZMW' => 'Замбия квачасы',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'AED' => 'AED',
'AFN' => 'AFN',
+ 'ALL' => 'ALL',
'AMD' => 'AMD',
'ANG' => 'ANG',
'AOA' => 'AOA',
+ 'ARS' => 'ARS',
'AUD' => 'A$',
'AWG' => 'AWG',
'AZN' => 'AZN',
+ 'BAM' => 'BAM',
'BBD' => 'BBD',
'BDT' => 'BDT',
+ 'BGN' => 'BGN',
'BHD' => 'BHD',
'BIF' => 'BIF',
- 'BMD' => 'БД',
+ 'BMD' => 'BMD',
'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => 'R$',
'BSD' => 'BSD',
'BTN' => 'BTN',
'BWP' => 'BWP',
+ 'BYN' => 'BYN',
+ 'BYR' => 'BYR',
'BZD' => 'BZD',
- 'CAD' => 'КД$',
+ 'CAD' => 'CA$',
'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNH' => 'CNH',
'CNY' => 'CN¥',
+ 'COP' => 'COP',
'CRC' => 'CRC',
'CUC' => 'CUC',
'CUP' => 'CUP',
'CVE' => 'CVE',
+ 'CZK' => 'CZK',
'DJF' => 'DJF',
+ 'DKK' => 'DKK',
'DOP' => 'DOP',
'DZD' => 'DZD',
'EGP' => 'EGP',
'ERN' => 'ERN',
'ETB' => 'ETB',
+ 'EUR' => '€',
'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GBP' => '£',
'GEL' => 'GEL',
'GHS' => 'GHS',
+ 'GIP' => 'GIP',
'GMD' => 'GMD',
'GNF' => 'GNF',
'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
'HKD' => 'HK$',
'HNL' => 'HNL',
+ 'HRK' => 'HRK',
'HTG' => 'HTG',
+ 'HUF' => 'HUF',
'IDR' => 'IDR',
'ILS' => '₪',
'INR' => '₹',
'IQD' => 'IQD',
'IRR' => 'IRR',
+ 'ISK' => 'ISK',
'JMD' => 'JMD',
'JOD' => 'JOD',
'JPY' => 'JP¥',
@@ -467,7 +654,9 @@ $currencySymbols = array(
'LRD' => 'LRD',
'LYD' => 'LYD',
'MAD' => 'MAD',
+ 'MDL' => 'MDL',
'MGA' => 'MGA',
+ 'MKD' => 'MKD',
'MMK' => 'MMK',
'MNT' => 'MNT',
'MOP' => 'MOP',
@@ -481,26 +670,35 @@ $currencySymbols = array(
'NAD' => 'NAD',
'NGN' => 'NGN',
'NIO' => 'NIO',
+ 'NOK' => 'NOK',
'NPR' => 'NPR',
'NZD' => 'NZ$',
'OMR' => 'OMR',
'PAB' => 'PAB',
+ 'PEN' => 'PEN',
'PGK' => 'PGK',
'PHP' => 'PHP',
'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
'QAR' => 'QAR',
- 'RUB' => 'руб.',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => '₽',
'RWF' => 'RWF',
'SAR' => 'SAR',
'SBD' => 'SBD',
'SCR' => 'SCR',
'SDG' => 'SDG',
+ 'SEK' => 'SEK',
'SGD' => 'SGD',
'SHP' => 'SHP',
'SLL' => 'SLL',
'SOS' => 'SOS',
+ 'SRD' => 'SRD',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'Db',
'SYP' => 'SYP',
'SZL' => 'SZL',
'THB' => '฿',
@@ -512,9 +710,12 @@ $currencySymbols = array(
'TTD' => 'TTD',
'TWD' => 'NT$',
'TZS' => 'TZS',
+ 'UAH' => 'UAH',
'UGX' => 'UGX',
'USD' => '$',
+ 'UYU' => 'UYU',
'UZS' => 'UZS',
+ 'VEF' => 'VEF',
'VND' => '₫',
'VUV' => 'VUV',
'WST' => 'WST',
@@ -525,26 +726,26 @@ $currencySymbols = array(
'YER' => 'YER',
'ZAR' => 'ZAR',
'ZMW' => 'ZMW',
-);
+];
-$countryNames = array(
- 'AC' => 'Ғибадат аралы',
+$countryNames = [
+ 'AC' => 'Әскенжін аралы',
'AD' => 'Андорра',
- 'AE' => 'Біріккен Араб Эмираттары',
+ 'AE' => 'Біріккен Араб Әмірліктері',
'AF' => 'Ауғанстан',
- 'AG' => 'Антигуа мен Барбуда',
+ 'AG' => 'Антигуа және Барбуда',
'AI' => 'Ангилья',
'AL' => 'Албания',
'AM' => 'Армения',
'AO' => 'Ангола',
- 'AQ' => 'Антарктика',
+ 'AQ' => 'Антарктида',
'AR' => 'Аргентина',
- 'AS' => 'Американ Самоасы',
+ 'AS' => 'Америкалық Самоа',
'AT' => 'Австрия',
'AU' => 'Австралия',
'AW' => 'Аруба',
'AX' => 'Аланд аралдары',
- 'AZ' => 'Әзербайжан',
+ 'AZ' => 'Әзірбайжан',
'BA' => 'Босния және Герцеговина',
'BB' => 'Барбадос',
'BD' => 'Бангладеш',
@@ -558,7 +759,7 @@ $countryNames = array(
'BM' => 'Бермуд аралдары',
'BN' => 'Бруней',
'BO' => 'Боливия',
- 'BQ' => 'Кариб Нидерландысы',
+ 'BQ' => 'Бонэйр, Синт-Эстатиус және Саба',
'BR' => 'Бразилия',
'BS' => 'Багам аралдары',
'BT' => 'Бутан',
@@ -567,7 +768,7 @@ $countryNames = array(
'BY' => 'Беларусь',
'BZ' => 'Белиз',
'CA' => 'Канада',
- 'CC' => 'Кокос аралдары',
+ 'CC' => 'Кокос (Килинг) аралдары',
'CD' => 'Конго',
'CF' => 'Орталық Африка Республикасы',
'CG' => 'Конго-Браззавиль Республикасы',
@@ -583,9 +784,9 @@ $countryNames = array(
'CU' => 'Куба',
'CV' => 'Кабо-Верде',
'CW' => 'Кюрасао',
- 'CX' => 'Кристмас аралы',
+ 'CX' => 'Рождество аралы',
'CY' => 'Кипр',
- 'CZ' => 'Чех Республикасы',
+ 'CZ' => 'Чехия',
'DE' => 'Германия',
'DG' => 'Диего-Гарсия',
'DJ' => 'Джибути',
@@ -593,7 +794,7 @@ $countryNames = array(
'DM' => 'Доминика',
'DO' => 'Доминикан Республикасы',
'DZ' => 'Алжир',
- 'EA' => 'Сеута мен Мелилья',
+ 'EA' => 'Сеута және Мелилья',
'EC' => 'Эквадор',
'EE' => 'Эстония',
'EG' => 'Мысыр',
@@ -602,6 +803,7 @@ $countryNames = array(
'ES' => 'Испания',
'ET' => 'Эфиопия',
'EU' => 'Еуропалық Одақ',
+ 'EZ' => 'Еуроаймақ',
'FI' => 'Финляндия',
'FJ' => 'Фиджи',
'FK' => 'Фолкленд аралдары',
@@ -609,7 +811,7 @@ $countryNames = array(
'FO' => 'Фарер аралдары',
'FR' => 'Франция',
'GA' => 'Габон',
- 'GB' => 'БК',
+ 'GB' => 'Ұлыбритания',
'GD' => 'Гренада',
'GE' => 'Грузия',
'GF' => 'Француз Гвианасы',
@@ -621,14 +823,14 @@ $countryNames = array(
'GN' => 'Гвинея',
'GP' => 'Гваделупа',
'GQ' => 'Экваторлық Гвинея',
- 'GR' => 'Греция',
- 'GS' => 'Оңтүстік Георгия және Оңтүстік Сандвичев аралы',
+ 'GR' => 'Грекия',
+ 'GS' => 'Оңтүстік Георгия және Оңтүстік Сандвич аралдары',
'GT' => 'Гватемала',
'GU' => 'Гуам',
'GW' => 'Гвинея-Бисау',
'GY' => 'Гайана',
- 'HK' => 'Гонконг',
- 'HM' => 'Херд аралы мен Макдональд аралы',
+ 'HK' => 'Сянган',
+ 'HM' => 'Херд аралы және Макдональд аралдары',
'HN' => 'Гондурас',
'HR' => 'Хорватия',
'HT' => 'Гаити',
@@ -652,10 +854,10 @@ $countryNames = array(
'KG' => 'Қырғызстан',
'KH' => 'Камбоджа',
'KI' => 'Кирибати',
- 'KM' => 'Комор',
+ 'KM' => 'Комор аралдары',
'KN' => 'Сент-Китс және Невис',
- 'KP' => 'Оңтүстік Корея',
- 'KR' => 'Солтүстік Корея',
+ 'KP' => 'Солтүстік Корея',
+ 'KR' => 'Оңтүстік Корея',
'KW' => 'Кувейт',
'KY' => 'Кайман аралдары',
'KZ' => 'Қазақстан',
@@ -669,8 +871,8 @@ $countryNames = array(
'LT' => 'Литва',
'LU' => 'Люксембург',
'LV' => 'Латвия',
- 'LY' => 'Либия',
- 'MA' => 'Морокко',
+ 'LY' => 'Ливия',
+ 'MA' => 'Марокко',
'MC' => 'Монако',
'MD' => 'Молдова',
'ME' => 'Черногория',
@@ -682,13 +884,13 @@ $countryNames = array(
'MM' => 'Мьянма (Бирма)',
'MN' => 'Моңғолия',
'MO' => 'Макао',
- 'MP' => 'Солтүстік Мариан аралдары',
+ 'MP' => 'Солтүстік Мариана аралдары',
'MQ' => 'Мартиника',
'MR' => 'Мавритания',
'MS' => 'Монтсеррат',
'MT' => 'Мальта',
'MU' => 'Маврикий',
- 'MV' => 'Мальдив Республикасы',
+ 'MV' => 'Мальдив аралдары',
'MW' => 'Малави',
'MX' => 'Мексика',
'MY' => 'Малайзия',
@@ -699,7 +901,7 @@ $countryNames = array(
'NF' => 'Норфолк аралы',
'NG' => 'Нигерия',
'NI' => 'Никарагуа',
- 'NL' => 'Голландия',
+ 'NL' => 'Нидерланд',
'NO' => 'Норвегия',
'NP' => 'Непал',
'NR' => 'Науру',
@@ -710,7 +912,7 @@ $countryNames = array(
'PE' => 'Перу',
'PF' => 'Француз Полинезиясы',
'PG' => 'Папуа — Жаңа Гвинея',
- 'PH' => 'Филиппиндер',
+ 'PH' => 'Филиппин аралдары',
'PK' => 'Пәкістан',
'PL' => 'Польша',
'PM' => 'Сен-Пьер және Микелон',
@@ -721,7 +923,7 @@ $countryNames = array(
'PW' => 'Палау',
'PY' => 'Парагвай',
'QA' => 'Катар',
- 'QO' => 'Алыс Океания',
+ 'QO' => 'Сыртқы Океания',
'RE' => 'Реюньон',
'RO' => 'Румыния',
'RS' => 'Сербия',
@@ -735,7 +937,7 @@ $countryNames = array(
'SG' => 'Сингапур',
'SH' => 'Әулие Елена аралы',
'SI' => 'Словения',
- 'SJ' => 'Шпицберген мен Ян-Майен',
+ 'SJ' => 'Шпицберген және Ян-Майен',
'SK' => 'Словакия',
'SL' => 'Сьерра-Леоне',
'SM' => 'Сан-Марино',
@@ -743,15 +945,15 @@ $countryNames = array(
'SO' => 'Сомали',
'SR' => 'Суринам',
'SS' => 'Оңтүстік Судан',
- 'ST' => 'Сан-Томе мен Принсипи',
+ 'ST' => 'Сан-Томе және Принсипи',
'SV' => 'Сальвадор',
'SX' => 'Синт-Мартен',
'SY' => 'Сирия',
'SZ' => 'Свазиленд',
'TA' => 'Тристан-да-Кунья',
- 'TC' => 'Туркс пен Кайкос',
+ 'TC' => 'Теркс және Кайкос аралдары',
'TD' => 'Чад',
- 'TF' => 'Францияның солтүстік аймағы',
+ 'TF' => 'Францияның оңтүстік аймақтары',
'TG' => 'Того',
'TH' => 'Тайланд',
'TJ' => 'Тәжікстан',
@@ -761,34 +963,37 @@ $countryNames = array(
'TN' => 'Тунис',
'TO' => 'Тонга',
'TR' => 'Түркия',
- 'TT' => 'Тринидад пен Тобаго',
+ 'TT' => 'Тринидад және Тобаго',
'TV' => 'Тувалу',
'TW' => 'Тайвань',
'TZ' => 'Танзания',
'UA' => 'Украина',
'UG' => 'Уганда',
- 'UM' => 'АҚШ-тың ішкі кіші аралдары',
+ 'UM' => 'АҚШ-тың сыртқы кіші аралдары',
+ 'UN' => 'БҰҰ',
'US' => 'АҚШ',
'UY' => 'Уругвай',
'UZ' => 'Өзбекстан',
'VA' => 'Ватикан',
- 'VC' => 'Сент-Винсент және Гренадиндер',
+ 'VC' => 'Сент-Винсент және Гренадин аралдары',
'VE' => 'Венесуэла',
'VG' => 'Британдық Виргин аралдары',
'VI' => 'АҚШ-тың Виргин аралдары',
'VN' => 'Вьетнам',
'VU' => 'Вануату',
- 'WF' => 'Уоллис пен Футуна',
+ 'WF' => 'Уоллис және Футуна',
'WS' => 'Самоа',
'XK' => 'Косово',
'YE' => 'Йемен',
'YT' => 'Майотта',
- 'ZA' => 'Оңтүстік Африка республикасы',
+ 'ZA' => 'Оңтүстік Африка Республикасы',
'ZM' => 'Замбия',
'ZW' => 'Зимбабве',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-one' => '{0} ғасыр',
+ 'century-other' => '{0} ғасыр',
'day-future-one' => '{0} күннен кейін',
'day-future-other' => '{0} күннен кейін',
'day-narrow-future-one' => '{0} күннен кейін',
@@ -803,38 +1008,62 @@ $timeUnits = array(
'day-short-future-other' => '{0} күннен кейін',
'day-short-past-one' => '{0} күн бұрын',
'day-short-past-other' => '{0} күн бұрын',
+ 'fri-future-one' => '{0} жұмадан кейін',
+ 'fri-future-other' => '{0} жұмадан кейін',
+ 'fri-narrow-future-one' => '{0} жм кейін',
+ 'fri-narrow-future-other' => '{0} жм кейін',
+ 'fri-narrow-past-one' => '{0} жм бұрын',
+ 'fri-narrow-past-other' => '{0} жм бұрын',
+ 'fri-past-one' => '{0} жұма бұрын',
+ 'fri-past-other' => '{0} жұма бұрын',
+ 'fri-short-future-one' => '{0} жұм. кейін',
+ 'fri-short-future-other' => '{0} жұм. кейін',
+ 'fri-short-past-one' => '{0} жұм. бұрын',
+ 'fri-short-past-other' => '{0} жұм. бұрын',
'hour-future-one' => '{0} сағаттан кейін',
'hour-future-other' => '{0} сағаттан кейін',
- 'hour-narrow-future-one' => '{0} сағ.кейін',
- 'hour-narrow-future-other' => '{0} сағаттан кейін',
- 'hour-narrow-past-one' => '{0} сағ.бұрын',
- 'hour-narrow-past-other' => '{0} сағат бұрын',
+ 'hour-narrow-future-one' => '{0} сағ. кейін',
+ 'hour-narrow-future-other' => '{0} сағ. кейін',
+ 'hour-narrow-past-one' => '{0} сағ. бұрын',
+ 'hour-narrow-past-other' => '{0} сағ. бұрын',
'hour-one' => '{0} сағат',
'hour-other' => '{0} сағат',
'hour-past-one' => '{0} сағат бұрын',
'hour-past-other' => '{0} сағат бұрын',
- 'hour-short-future-one' => '{0} сағаттан кейін',
- 'hour-short-future-other' => '{0} сағаттан кейін',
- 'hour-short-past-one' => '{0} сағат бұрын',
- 'hour-short-past-other' => '{0} сағат бұрын',
+ 'hour-short-future-one' => '{0} сағ. кейін',
+ 'hour-short-future-other' => '{0} сағ. кейін',
+ 'hour-short-past-one' => '{0} сағ. бұрын',
+ 'hour-short-past-other' => '{0} сағ. бұрын',
'microsecond-one' => '{0} микросекунд',
'microsecond-other' => '{0} микросекунд',
'millisecond-one' => '{0} миллисекунд',
'millisecond-other' => '{0} миллисекунд',
'minute-future-one' => '{0} минуттан кейін',
'minute-future-other' => '{0} минуттан кейін',
- 'minute-narrow-future-one' => '{0} мин.кейін',
- 'minute-narrow-future-other' => '{0} мин.кейін',
- 'minute-narrow-past-one' => '{0} мин.бұрын',
- 'minute-narrow-past-other' => '{0} минут бұрын',
+ 'minute-narrow-future-one' => '{0} мин. кейін',
+ 'minute-narrow-future-other' => '{0} мин. кейін',
+ 'minute-narrow-past-one' => '{0} мин. бұрын',
+ 'minute-narrow-past-other' => '{0} мин. бұрын',
'minute-one' => '{0} минут',
'minute-other' => '{0} минут',
'minute-past-one' => '{0} минут бұрын',
'minute-past-other' => '{0} минут бұрын',
- 'minute-short-future-one' => '{0} минуттан кейін',
- 'minute-short-future-other' => '{0} минуттан кейін',
- 'minute-short-past-one' => '{0} минут бұрын',
- 'minute-short-past-other' => '{0} минут бұрын',
+ 'minute-short-future-one' => '{0} мин. кейін',
+ 'minute-short-future-other' => '{0} мин. кейін',
+ 'minute-short-past-one' => '{0} мин. бұрын',
+ 'minute-short-past-other' => '{0} мин. бұрын',
+ 'mon-future-one' => '{0} дүйсенбіден кейін',
+ 'mon-future-other' => '{0} дүйсенбіден кейін',
+ 'mon-narrow-future-one' => '{0} дс кейін',
+ 'mon-narrow-future-other' => '{0} дс кейін',
+ 'mon-narrow-past-one' => '{0} дс бұрын',
+ 'mon-narrow-past-other' => '{0} дс бұрын',
+ 'mon-past-one' => '{0} дүйсенбі бұрын',
+ 'mon-past-other' => '{0} дүйсенбі бұрын',
+ 'mon-short-future-one' => '{0} дүй. кейін',
+ 'mon-short-future-other' => '{0} дүй. кейін',
+ 'mon-short-past-one' => '{0} дүй. бұрын',
+ 'mon-short-past-other' => '{0} дүй. бұрын',
'month-future-one' => '{0} айдан кейін',
'month-future-other' => '{0} айдан кейін',
'month-narrow-future-one' => '{0} айдан кейін',
@@ -853,36 +1082,96 @@ $timeUnits = array(
'nanosecond-other' => '{0} наносекунд',
'quarter-future-one' => '{0} тоқсаннан кейін',
'quarter-future-other' => '{0} тоқсаннан кейін',
- 'quarter-narrow-future-one' => '{0} тоқ.кейін',
- 'quarter-narrow-future-other' => '{0} тоқ.кейін',
- 'quarter-narrow-past-one' => '{0} тоқ. бұрын',
- 'quarter-narrow-past-other' => '{0} тоқ.бұрын',
+ 'quarter-narrow-future-one' => '{0} тқс. кейін',
+ 'quarter-narrow-future-other' => '{0} тқс. кейін',
+ 'quarter-narrow-past-one' => '{0} тқс. бұрын',
+ 'quarter-narrow-past-other' => '{0} тқс. бұрын',
'quarter-past-one' => '{0} тоқсан бұрын',
'quarter-past-other' => '{0} тоқсан бұрын',
- 'quarter-short-future-one' => '{0} тоқ. кейін',
- 'quarter-short-future-other' => '{0} тоқ. кейін',
- 'quarter-short-past-one' => '{0} тоқ. бұрын',
- 'quarter-short-past-other' => '{0} тоқ. бұрын',
+ 'quarter-short-future-one' => '{0} тқс. кейін',
+ 'quarter-short-future-other' => '{0} тқс. кейін',
+ 'quarter-short-past-one' => '{0} тқс. бұрын',
+ 'quarter-short-past-other' => '{0} тқс. бұрын',
+ 'sat-future-one' => '{0} сенбіден кейін',
+ 'sat-future-other' => '{0} сенбіден кейін',
+ 'sat-narrow-future-one' => '{0} сб кейін',
+ 'sat-narrow-future-other' => '{0} сб кейін',
+ 'sat-narrow-past-one' => '{0} сб бұрын',
+ 'sat-narrow-past-other' => '{0} сб бұрын',
+ 'sat-past-one' => '{0} сенбі бұрын',
+ 'sat-past-other' => '{0} сенбі бұрын',
+ 'sat-short-future-one' => '{0} сен. кейін',
+ 'sat-short-future-other' => '{0} сен. кейін',
+ 'sat-short-past-one' => '{0} сен. бұрын',
+ 'sat-short-past-other' => '{0} сен. бұрын',
'second-future-one' => '{0} секундтан кейін',
'second-future-other' => '{0} секундтан кейін',
- 'second-narrow-future-one' => '{0} сек.кейін',
- 'second-narrow-future-other' => '{0} сек.кейін',
- 'second-narrow-past-one' => '{0} сек.бұрын',
- 'second-narrow-past-other' => '{0} сек.бұрын',
+ 'second-narrow-future-one' => '{0} сек. кейін',
+ 'second-narrow-future-other' => '{0} сек. кейін',
+ 'second-narrow-past-one' => '{0} сек. бұрын',
+ 'second-narrow-past-other' => '{0} сек. бұрын',
'second-one' => '{0} секунд',
'second-other' => '{0} секунд',
'second-past-one' => '{0} секунд бұрын',
'second-past-other' => '{0} секунд бұрын',
- 'second-short-future-one' => '{0} секундтан кейін',
- 'second-short-future-other' => '{0} секундтан кейін',
- 'second-short-past-one' => '{0} секунд бұрын',
- 'second-short-past-other' => '{0} секунд бұрын',
+ 'second-short-future-one' => '{0} сек. кейін',
+ 'second-short-future-other' => '{0} сек. кейін',
+ 'second-short-past-one' => '{0} сек. бұрын',
+ 'second-short-past-other' => '{0} сек. бұрын',
+ 'sun-future-one' => '{0} жексенбіден кейін',
+ 'sun-future-other' => '{0} жексенбіден кейін',
+ 'sun-narrow-future-one' => '{0} жс кейін',
+ 'sun-narrow-future-other' => '{0} жс кейін',
+ 'sun-narrow-past-one' => '{0} жс бұрын',
+ 'sun-narrow-past-other' => '{0} жс бұрын',
+ 'sun-past-one' => '{0} жексенбі бұрын',
+ 'sun-past-other' => '{0} жексенбі бұрын',
+ 'sun-short-future-one' => '{0} жек. кейін',
+ 'sun-short-future-other' => '{0} жек. кейін',
+ 'sun-short-past-one' => '{0} жек. бұрын',
+ 'sun-short-past-other' => '{0} жек. бұрын',
+ 'thu-future-one' => '{0} бейсенбіден кейін',
+ 'thu-future-other' => '{0} бейсенбіден кейін',
+ 'thu-narrow-future-one' => '{0} бс кейін',
+ 'thu-narrow-future-other' => '{0} бс кейін',
+ 'thu-narrow-past-one' => '{0} бс бұрын',
+ 'thu-narrow-past-other' => '{0} бс бұрын',
+ 'thu-past-one' => '{0} бейсенбі бұрын',
+ 'thu-past-other' => '{0} бейсенбі бұрын',
+ 'thu-short-future-one' => '{0} бей. кейін',
+ 'thu-short-future-other' => '{0} бей. кейін',
+ 'thu-short-past-one' => '{0} бей. бұрын',
+ 'thu-short-past-other' => '{0} бей. бұрын',
+ 'tue-future-one' => '{0} сейсенбіден кейін',
+ 'tue-future-other' => '{0} сейсенбіден кейін',
+ 'tue-narrow-future-one' => '{0} сс кейін',
+ 'tue-narrow-future-other' => '{0} сс кейін',
+ 'tue-narrow-past-one' => '{0} сс бұрын',
+ 'tue-narrow-past-other' => '{0} сс бұрын',
+ 'tue-past-one' => '{0} сейсенбі бұрын',
+ 'tue-past-other' => '{0} сейсенбі бұрын',
+ 'tue-short-future-one' => '{0} сей. кейін',
+ 'tue-short-future-other' => '{0} сей. кейін',
+ 'tue-short-past-one' => '{0} сей. бұрын',
+ 'tue-short-past-other' => '{0} сей. бұрын',
+ 'wed-future-one' => '{0} сәрсенбіден кейін',
+ 'wed-future-other' => '{0} сәрсенбіден кейін',
+ 'wed-narrow-future-one' => '{0} ср кейін',
+ 'wed-narrow-future-other' => '{0} ср кейін',
+ 'wed-narrow-past-one' => '{0} ср бұрын',
+ 'wed-narrow-past-other' => '{0} ср бұрын',
+ 'wed-past-one' => '{0} сәрсенбі бұрын',
+ 'wed-past-other' => '{0} сәрсенбі бұрын',
+ 'wed-short-future-one' => '{0} сәр. кейін',
+ 'wed-short-future-other' => '{0} сәр. кейін',
+ 'wed-short-past-one' => '{0} сәр. бұрын',
+ 'wed-short-past-other' => '{0} сәр. бұрын',
'week-future-one' => '{0} аптадан кейін',
'week-future-other' => '{0} аптадан кейін',
- 'week-narrow-future-one' => '{0} ап.кейін',
- 'week-narrow-future-other' => '{0} ап.кейін',
- 'week-narrow-past-one' => '{0} ап.бұрын',
- 'week-narrow-past-other' => '{0} ап.бұрын',
+ 'week-narrow-future-one' => '{0} ап. кейін',
+ 'week-narrow-future-other' => '{0} ап. кейін',
+ 'week-narrow-past-one' => '{0} ап. бұрын',
+ 'week-narrow-past-other' => '{0} ап. бұрын',
'week-one' => '{0} апта',
'week-other' => '{0} апта',
'week-past-one' => '{0} апта бұрын',
@@ -893,10 +1182,10 @@ $timeUnits = array(
'week-short-past-other' => '{0} ап. бұрын',
'year-future-one' => '{0} жылдан кейін',
'year-future-other' => '{0} жылдан кейін',
- 'year-narrow-future-one' => '+{0} ж.',
- 'year-narrow-future-other' => '+{0} ж.',
- 'year-narrow-past-one' => '-{0} ж.',
- 'year-narrow-past-other' => '-{0} ж.',
+ 'year-narrow-future-one' => '{0} ж. кейін',
+ 'year-narrow-future-other' => '{0} ж. кейін',
+ 'year-narrow-past-one' => '{0} ж. бұрын',
+ 'year-narrow-past-other' => '{0} ж. бұрын',
'year-one' => '{0} жыл',
'year-other' => '{0} жыл',
'year-past-one' => '{0} жыл бұрын',
@@ -905,4 +1194,4 @@ $timeUnits = array(
'year-short-future-other' => '{0} ж. кейін',
'year-short-past-one' => '{0} ж. бұрын',
'year-short-past-other' => '{0} ж. бұрын',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesKl.php b/MLEB/cldr/CldrNames/CldrNamesKl.php
index 251d0c83..7e2b2d70 100644
--- a/MLEB/cldr/CldrNames/CldrNamesKl.php
+++ b/MLEB/cldr/CldrNames/CldrNamesKl.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'ar' => 'arabiamiusut',
'az' => 'aserbajdsjaniskisut',
'bn' => 'bengalimiutut',
@@ -46,23 +46,23 @@ $languageNames = array(
'ur' => 'urdumiutut',
'vi' => 'vietnamimiusut',
'zh' => 'kineserisut',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'DKK' => 'danmarkimut koruuni',
'EUR' => 'euro',
'NOK' => 'norskit koruuni',
'SEK' => 'svenskit koruuni',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'DKK' => 'kr.',
'EUR' => '€',
'NOK' => 'Nkr',
'SEK' => 'Skr',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'Ascension qeqertaq',
'AD' => 'Andorra',
'AF' => 'Afghanistani',
@@ -289,9 +289,9 @@ $countryNames = array(
'ZA' => 'Kujalleqafrika',
'ZM' => 'Zambia',
'ZW' => 'Zimbabwe',
-);
+];
-$timeUnits = array(
+$timeUnits = [
'day-future-one' => 'om {0} ulloq unnuarlu',
'day-future-other' => 'om {0} ulloq unnuarlu',
'day-one' => '{0} ulloq unnuarlu',
@@ -304,6 +304,8 @@ $timeUnits = array(
'hour-other' => '{0} nalunaaquttap-akunnera',
'hour-past-one' => 'for {0} nalunaaquttap-akunnera siden',
'hour-past-other' => 'for {0} nalunaaquttap-akunnera siden',
+ 'microsecond-one' => '{0} mikrosekundi',
+ 'microsecond-other' => '{0} mikrosekundi',
'millisecond-one' => '{0} millisekundi',
'millisecond-other' => '{0} millisekundi',
'minute-future-one' => 'om {0} minutsi',
@@ -318,6 +320,8 @@ $timeUnits = array(
'month-other' => '{0} qaammat',
'month-past-one' => 'for {0} qaammat siden',
'month-past-other' => 'for {0} qaammat siden',
+ 'nanosecond-one' => '{0} nanosekundi',
+ 'nanosecond-other' => '{0} nanosekundi',
'second-future-one' => 'om {0} sekundi',
'second-future-other' => 'om {0} sekundi',
'second-one' => '{0} sekundi',
@@ -336,4 +340,4 @@ $timeUnits = array(
'year-other' => '{0} ukioq',
'year-past-one' => 'for {0} ukioq siden',
'year-past-other' => 'for {0} ukioq siden',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesKm.php b/MLEB/cldr/CldrNames/CldrNamesKm.php
index 890d86b1..bcae4344 100644
--- a/MLEB/cldr/CldrNames/CldrNamesKm.php
+++ b/MLEB/cldr/CldrNames/CldrNamesKm.php
@@ -1,250 +1,405 @@
<?php
-$languageNames = array(
- 'aa' => 'ភាសាអាហ្វារ',
+$languageNames = [
+ 'aa' => 'អាហ្វារ',
'ab' => 'អាប់ខាហ៊្សាន',
- 'ae' => 'ភាសាអាវែស្តង់',
- 'af' => 'អាហ្វ្រីកាអាន',
- 'agq' => 'Aghem',
- 'ak' => 'Akan',
- 'am' => 'អាមហារីច',
- 'an' => 'ភាសាអារ៉ាហ្គោន',
+ 'ace' => 'អាកហ៊ីនឺស',
+ 'ada' => 'អាដេងមី',
+ 'ady' => 'អាឌីហ្គី',
+ 'ae' => 'អាវេស្ថាន',
+ 'af' => 'អាហ្វ្រិកាន',
+ 'agq' => 'អាហ្គីម',
+ 'ain' => 'អាយនូ',
+ 'ak' => 'អាកាន',
+ 'ale' => 'អាលូត',
+ 'alt' => 'អាល់តៃខាងត្បូង',
+ 'am' => 'អាំហារិក',
+ 'an' => 'អារ៉ាហ្គោន',
+ 'anp' => 'អាហ្គីកា',
'ar' => 'អារ៉ាប់',
- 'ar-001' => 'អារ៉ាប់​ស្តង់ដារ​ទំនើប',
- 'arn' => 'Mapuche',
+ 'ar-001' => 'អារ៉ាប់ (ស្តង់ដារ)',
+ 'arn' => 'ម៉ាពូឈី',
+ 'arp' => 'អារ៉ាប៉ាហូ',
'as' => 'អាសាមីស',
- 'asa' => 'Asu',
- 'ay' => 'ភាសាអីម៉ារ៉ា',
- 'az' => 'អាហ៊្សែរបែហ្សង់',
- 'ba' => 'បែស្កឺ',
- 'be' => 'បេឡារុស្ស',
- 'bem' => 'Bemba',
- 'bez' => 'Bena',
- 'bg' => 'ប៊ុលហ្ការី',
+ 'asa' => 'អាស៊ូ',
+ 'ast' => 'អាស្ទូរី',
+ 'av' => 'អាវ៉ារីក',
+ 'awa' => 'អាវ៉ាឌី',
+ 'ay' => 'អីម៉ារ៉ា',
+ 'az' => 'អាស៊ែបៃហ្សង់',
+ 'ba' => 'បាស្គៀ',
+ 'ban' => 'បាលី',
+ 'bas' => 'បាសា',
+ 'be' => 'បេឡារុស',
+ 'bem' => 'បេមបា',
+ 'bez' => 'បេណា',
+ 'bg' => 'ប៊ុលហ្គារី',
+ 'bgn' => 'បាឡូជីខាងលិច',
+ 'bho' => 'បូចពូរី',
+ 'bi' => 'ប៊ីស្លាម៉ា',
+ 'bin' => 'ប៊ីនី',
+ 'bla' => 'ស៊ីកស៊ីកា',
'bm' => 'បាម្បារា',
'bn' => 'បង់ក្លាដែស',
'bo' => 'ទីបេ',
'br' => 'ប្រីស្តុន',
- 'brx' => 'Bodo',
+ 'brx' => 'បូដូ',
'bs' => 'បូស្នី',
+ 'bug' => 'ប៊ុកហ្គី',
+ 'byn' => 'ប្ល៊ីន',
'ca' => 'កាតាឡាន',
- 'cgg' => 'Chiga',
+ 'ce' => 'ឈីឆេន',
+ 'ceb' => 'ស៊ីប៊ូអាណូ',
+ 'cgg' => 'ឈីហ្គា',
+ 'ch' => 'ឈីម៉ូរ៉ូ',
+ 'chk' => 'ឈូគី',
+ 'chm' => 'ម៉ារី',
+ 'cho' => 'ឆុកតាវ',
'chr' => 'ឆេរូគី',
- 'ckb' => 'សុរ៉ានី',
- 'co' => 'Corsican',
- 'cs' => 'ឆេក',
+ 'chy' => 'ឈីយីនី',
+ 'ckb' => 'ឃើដភាគកណ្តាល',
+ 'co' => 'កូស៊ីខាន',
+ 'crs' => 'សេសេលវ៉ាគ្រីអូល (បារាំង)',
+ 'cs' => 'ឆែក',
+ 'cu' => 'ឈឺជស្លាវិក',
+ 'cv' => 'ឈូវ៉ាស',
'cy' => 'វេល',
'da' => 'ដាណឺម៉ាក',
- 'dav' => 'Taita',
+ 'dak' => 'ដាកូតា',
+ 'dar' => 'ដាចវ៉ា',
+ 'dav' => 'តៃតា',
'de' => 'អាល្លឺម៉ង់',
- 'de-at' => 'អាល្លឺម៉ង់ អូទ្រីស',
- 'de-ch' => 'អាល្លឺម៉ង់ ស្វីស',
- 'dje' => 'Zarma',
- 'dsb' => 'Lower Sorbian',
- 'dua' => 'Duala',
- 'dyo' => 'Jola-Fonyi',
- 'dz' => 'ភាសាប៊ូតាន',
- 'ebu' => 'Embu',
- 'ee' => 'Ewe',
- 'el' => 'ក្រិច',
+ 'dgr' => 'ដូគ្រីប',
+ 'dje' => 'ហ្សាម៉ា',
+ 'dsb' => 'សូប៊ីក្រោម',
+ 'dua' => 'ឌួលឡា',
+ 'dv' => 'ទេវីហ៊ី',
+ 'dyo' => 'ចូឡាហ៊្វុនយី',
+ 'dz' => 'ដុងខា',
+ 'dzg' => 'ដាហ្សាហ្គា',
+ 'ebu' => 'អេមប៊ូ',
+ 'ee' => 'អ៊ីវ',
+ 'efi' => 'អ៊ីហ្វិក',
+ 'eka' => 'អ៊ីកាជុក',
+ 'el' => 'ក្រិក',
'en' => 'អង់គ្លេស',
- 'en-au' => 'អង់គ្លេស អូស្ត្រាលី',
- 'en-ca' => 'អង់គ្លេស កាណាដា',
- 'en-gb' => 'អង់គ្លេស ចក្រភព​អង់គ្លេស',
- 'en-us' => 'អង់គ្លេស អាមេរិក',
'eo' => 'អេស្ពេរ៉ាន់តូ',
'es' => 'អេស្ប៉ាញ',
- 'es-419' => 'អេស្ប៉ាញ អាមេរីកឡាតាំង',
- 'es-es' => 'អេស្ប៉ាញ អឺរ៉ុប',
+ 'es-es' => 'អេស្ប៉ាញ (អ៊ឺរ៉ុប)',
'et' => 'អេស្តូនី',
- 'eu' => 'បាស្កេ',
+ 'eu' => 'បាសខ៍',
+ 'ewo' => 'អ៊ីវ៉ុនដូ',
'fa' => 'ភឺសៀន',
+ 'ff' => 'ហ្វ៊ូឡា',
'fi' => 'ហ្វាំងឡង់',
'fil' => 'ហ្វីលីពីន',
'fj' => 'ហ៊្វីជី',
'fo' => 'ហ្វារូស',
+ 'fon' => 'ហ្វ៊ុន',
'fr' => 'បារាំង',
+ 'fur' => 'ហ៊្វ្រូលាន',
'fy' => 'ហ្វ្រីស៊ានខាងលិច',
'ga' => 'អៀរឡង់',
- 'gag' => 'Gagauz',
- 'gd' => 'ភាសាហ្កែលិគ (gd)',
+ 'gaa' => 'ហ្គា',
+ 'gag' => 'កាគូស',
+ 'gd' => 'ស្កុតហ្កែលិគ',
+ 'gez' => 'ជីស',
+ 'gil' => 'ហ្គីលបឺទ',
'gl' => 'ហ្គាលីស្យាន',
'gn' => 'ហ្គូរ៉ានី',
- 'gsw' => 'អាល្លឺម៉ង ស្វីស',
+ 'gor' => 'ហ្គូរុនតាឡូ',
+ 'gsw' => 'អាល្លឺម៉ង (ស្វីស)',
'gu' => 'ហ្កុយ៉ារាទី',
- 'guz' => 'Gusii',
- 'gv' => 'Manx',
+ 'guz' => 'ហ្គូស៊ី',
+ 'gv' => 'មេន',
+ 'gwi' => 'ហ្គីចឈីន',
'ha' => 'ហូសា',
'haw' => 'ហាវៃ',
- 'he' => 'អ៊ីស្រាអែល',
- 'hi' => 'ហិណ្ឌូ',
+ 'he' => 'ហេប្រឺ',
+ 'hi' => 'ហិណ្ឌី',
+ 'hil' => 'ហ៊ីលីហ្គេណុន',
+ 'hmn' => 'ម៉ុង',
'hr' => 'ក្រូអាត',
- 'hsb' => 'Upper Sorbian',
+ 'hsb' => 'សូប៊ីលើ',
'ht' => 'ហៃទី',
'hu' => 'ហុងគ្រី',
- 'hy' => 'អារមេនី',
+ 'hup' => 'ហ៊ូប៉ា',
+ 'hy' => 'អាមេនី',
+ 'hz' => 'ហឺរីរ៉ូ',
'ia' => 'អីនធើលីង',
+ 'iba' => 'អ៊ីបាន',
+ 'ibb' => 'អាយប៊ីប៊ីអូ',
'id' => 'ឥណ្ឌូណេស៊ី',
'ig' => 'អ៊ីកបូ',
- 'ii' => 'Sichuan Yi',
+ 'ii' => 'ស៊ីឈាន់យី',
+ 'ilo' => 'អ៊ីឡូកូ',
+ 'inh' => 'អ៊ិនហ្គូស',
+ 'io' => 'អ៊ីដូ',
'is' => 'អ៊ីស្លង់',
'it' => 'អ៊ីតាលី',
- 'iu' => 'Inuktitut',
+ 'iu' => 'អ៊ីនុកទីទុត',
'ja' => 'ជប៉ុន',
- 'jgo' => 'Ngomba',
- 'jmc' => 'Machame',
+ 'jbo' => 'លុចបាន',
+ 'jgo' => 'ងុំបា',
+ 'jmc' => 'ម៉ាឆាំ',
'jv' => 'ជ្វា',
'ka' => 'ហ្សក​ហ្ស៊ី',
- 'kab' => 'Kabyle',
- 'kam' => 'Kamba',
- 'kde' => 'Makonde',
- 'kea' => 'Kabuverdianu',
- 'khq' => 'Koyra Chiini',
- 'ki' => 'Kikuyu',
- 'kk' => 'កាហ្សាក់ស្តង់់',
- 'kl' => 'Kalaallisut',
- 'kln' => 'Kalenjin',
+ 'kab' => 'កាប៊ីឡេ',
+ 'kac' => 'កាឈីន',
+ 'kaj' => 'ជូ',
+ 'kam' => 'កាំបា',
+ 'kbd' => 'កាបាឌៀ',
+ 'kcg' => 'យ៉ាប់',
+ 'kde' => 'ម៉ាកូនដេ',
+ 'kea' => 'កាប៊ូវឺឌៀនូ',
+ 'kfo' => 'គូរូ',
+ 'kha' => 'កាស៊ី',
+ 'khq' => 'គុយរ៉ាឈីនី',
+ 'ki' => 'គីគូយូ',
+ 'kj' => 'គូនយ៉ាម៉ា',
+ 'kk' => 'កាហ្សាក់',
+ 'kkj' => 'កាកូ',
+ 'kl' => 'កាឡាលលីស៊ុត',
+ 'kln' => 'កាលែនជីន',
'km' => 'ខ្មែរ',
- 'kn' => 'កន្នដ',
+ 'kmb' => 'គីមប៊ុនឌូ',
+ 'kn' => 'ខាណាដា',
'ko' => 'កូរ៉េ',
- 'koi' => 'Komi-Permyak',
- 'kok' => 'Konkani',
+ 'koi' => 'គូមីភឹមយ៉ាគ',
+ 'kok' => 'គុនកានី',
+ 'kpe' => 'គ្លីប',
+ 'kr' => 'កានូរី',
+ 'krc' => 'ការ៉ាឆាយបាល់កា',
+ 'krl' => 'ការីលា',
+ 'kru' => 'គូរូក',
'ks' => 'កាស្មៀរ',
- 'ksb' => 'Shambala',
- 'ksf' => 'Bafia',
+ 'ksb' => 'សាមបាឡា',
+ 'ksf' => 'បាហ្វៀ',
+ 'ksh' => 'កូឡូញ',
'ku' => 'ឃឺដ',
- 'kw' => 'Cornish',
- 'ky' => 'គៀរហ្គីស្តង់',
+ 'kum' => 'គូមីគ',
+ 'kv' => 'កូមី',
+ 'kw' => 'កូនីស',
+ 'ky' => '​កៀហ្ស៊ីស',
'la' => 'ឡាតំាង',
- 'lag' => 'Langi',
- 'lb' => 'លុចហ្សំបួរ',
- 'lg' => 'Ganda',
- 'lkt' => 'Lakota',
+ 'lad' => 'ឡាឌីណូ',
+ 'lag' => 'ឡានហ្គី',
+ 'lb' => 'លុចសំបួ',
+ 'lez' => 'ឡេសហ្គី',
+ 'lg' => 'ហ្គាន់ដា',
+ 'li' => 'លីមប៊ូស',
+ 'lkt' => 'ឡាកូតា',
'ln' => 'លីនកាឡា',
'lo' => 'ឡាវ',
+ 'loz' => 'ឡូហ្ស៊ី',
+ 'lrc' => 'លូរីខាងជើង',
'lt' => 'លីទុយអានី',
- 'lu' => 'Luba-Katanga',
- 'luo' => 'Luo',
- 'luy' => 'Luyia',
- 'lv' => 'ឡាតវីយ៉ា',
- 'mas' => 'Masai',
- 'mer' => 'Meru',
- 'mfe' => 'Morisyen',
+ 'lu' => 'លូបាកាតានហ្គា',
+ 'lua' => 'លូបាលូឡា',
+ 'lun' => 'លុនដា',
+ 'luo' => 'លូអូ',
+ 'lus' => 'មីហ្សូ',
+ 'luy' => 'លូយ៉ា',
+ 'lv' => 'ឡាតវី',
+ 'mad' => 'ម៉ាឌូរីស',
+ 'mag' => 'ម៉ាហ្គាហ៊ី',
+ 'mai' => 'ម៉ៃធីលី',
+ 'mak' => 'ម៉ាកាសា',
+ 'mas' => 'ម៉ាសៃ',
+ 'mdf' => 'មុខសា',
+ 'men' => 'មេនឌី',
+ 'mer' => 'មេរូ',
+ 'mfe' => 'ម៉ូរីស៊ីន',
'mg' => 'ម៉ាឡាហ្គាស៊ី',
- 'mgh' => 'Makhuwa-Meetto',
- 'mgo' => 'Meta',
+ 'mgh' => 'ម៉ាកគូវ៉ាមីតូ',
+ 'mgo' => 'មេតា',
+ 'mh' => 'ម៉ាស់សល',
'mi' => 'ម៉ោរី',
+ 'mic' => 'មិកមេក',
+ 'min' => 'មីណាងកាប៊ូ',
'mk' => 'ម៉ាសេដូនី',
- 'ml' => 'មលយាល័ម',
+ 'ml' => 'ម៉ាឡាយ៉ាឡាម',
'mn' => 'ម៉ុងហ្គោលី',
- 'moh' => 'Mohawk',
- 'mr' => 'មរាធិ',
- 'ms' => 'ម៉ាឡេស៊ី',
+ 'mni' => 'ម៉ានីពូរី',
+ 'moh' => 'ម៊ូហាគ',
+ 'mos' => 'មូស៊ី',
+ 'mr' => 'ម៉ារ៉ាធី',
+ 'ms' => 'ម៉ាឡេ',
'mt' => 'ម៉ាល់តា',
- 'mua' => 'Mundang',
+ 'mua' => 'មុនដាង',
+ 'mul' => 'ពហុភាសា',
+ 'mus' => 'គ្រីក',
+ 'mwl' => 'មីរ៉ានដេស',
'my' => 'ភូមា',
- 'naq' => 'Nama',
+ 'myv' => 'អឺហ្ស៊ីយ៉ា',
+ 'mzn' => 'ម៉ាហ្សានដឺរេនី',
+ 'na' => 'ណូរូ',
+ 'nap' => 'នាប៉ូលីតាន',
+ 'naq' => 'ណាម៉ា',
'nb' => 'ន័រវែស បុកម៉ាល់',
- 'nd' => 'North Ndebele',
+ 'nd' => 'នេបេលេខាងជើង',
+ 'nds' => 'អាល្លឺម៉ង់ក្រោម',
+ 'nds-nl' => 'ហ្សាក់ស្យុងក្រោម',
'ne' => 'នេប៉ាល់',
- 'nl' => 'ហុល្លង់',
+ 'new' => 'នេវ៉ាវី',
+ 'ng' => 'នុនហ្គា',
+ 'nia' => 'នីអាស',
+ 'niu' => 'នូអៀន',
+ 'nl' => 'ហូឡង់',
'nl-be' => 'ផ្លាមីស',
- 'nmg' => 'Kwasio',
+ 'nmg' => 'ក្វាស្យូ',
'nn' => 'ន័រវែស នីនូស',
- 'no' => 'ភាសាន័រវែស',
- 'nqo' => 'N’Ko',
- 'nus' => 'Nuer',
- 'nyn' => 'Nyankole',
+ 'nnh' => 'ងៀមប៊ូន',
+ 'no' => 'ន័រវែស',
+ 'nog' => 'ណូហ្គៃ',
+ 'nqo' => 'នគោ',
+ 'nr' => 'នេប៊េលខាងត្បូង',
+ 'nso' => 'សូថូខាងជើង',
+ 'nus' => 'នូអ័រ',
+ 'nv' => 'ណាវ៉ាចូ',
+ 'ny' => 'ណានចា',
+ 'nyn' => 'ណានកូលេ',
'oc' => 'អូសីតាន់',
- 'om' => 'Oromo',
- 'or' => 'អូរីយ៉ា',
+ 'om' => 'អូរ៉ូម៉ូ',
+ 'or' => 'អូឌៀ',
+ 'os' => 'អូស៊ីទិក',
'pa' => 'បឹនជាពិ',
+ 'pag' => 'ភេនហ្គាស៊ីណាន',
+ 'pam' => 'ផាមភេនហ្គា',
+ 'pap' => 'ប៉ាប៉ៃមេនតូ',
+ 'pau' => 'ប៉ាលូអាន',
+ 'pcm' => 'ភាសាទំនាក់ទំនងនីហ្សេរីយ៉ា',
'pl' => 'ប៉ូឡូញ',
+ 'prg' => 'ព្រូស៊ាន',
'ps' => 'បាស្តូ',
- 'pt' => 'ព័រទុយហ្កាល់',
- 'pt-br' => 'ព័រទុយហ្គាល់ ប្រេស៊ីល',
- 'pt-pt' => 'ព័រទុយហ្គាល់ អឺរ៉ុប',
- 'qu' => 'កេទជួអា',
- 'quc' => 'Kʼicheʼ',
+ 'pt' => 'ព័រទុយហ្គាល់',
+ 'pt-pt' => 'ព័រទុយហ្គាល់ (អឺរ៉ុប)',
+ 'qu' => 'ហ្គិកឈួ',
+ 'quc' => 'គីចឈី',
+ 'rap' => 'រ៉ាប៉ានូ',
+ 'rar' => 'រ៉ារ៉ូតុងហ្គាន',
'rm' => 'រ៉ូម៉ង់',
- 'rn' => 'រូន្ឌី',
+ 'rn' => 'រុណ្ឌី',
'ro' => 'រូម៉ានី',
- 'ro-md' => 'ភាសាម៉ុលដាវី',
- 'rof' => 'Rombo',
+ 'ro-md' => 'ម៉ុលដាវី',
+ 'rof' => 'រុមបូ',
'ru' => 'រុស្ស៊ី',
- 'rw' => 'Kinyarwanda',
- 'rwk' => 'Rwa',
+ 'rup' => 'អារ៉ូម៉ានី',
+ 'rw' => 'គិនយ៉ាវ៉ាន់ដា',
+ 'rwk' => 'រ៉្វា',
'sa' => 'សំស្ក្រឹត',
- 'saq' => 'Samburu',
- 'sbp' => 'Sangu',
- 'sd' => '​​ស៊ីន្តី',
- 'se' => 'Sami ភាគ​ខាង​ជើង',
- 'seh' => 'Sena',
- 'ses' => 'Koyraboro Senni',
- 'sg' => 'Sango',
- 'sh' => 'សើបូក្រូទៀន',
- 'shi' => 'Tachelhit',
+ 'sad' => 'សានដាវី',
+ 'sah' => 'សាខា',
+ 'saq' => 'សាមបូរូ',
+ 'sat' => 'សាន់តាលី',
+ 'sba' => 'ងាំបេយ',
+ 'sbp' => 'សានហ្គូ',
+ 'sc' => 'សាឌីនា',
+ 'scn' => 'ស៊ីស៊ីលាន',
+ 'sco' => 'ស្កុត',
+ 'sd' => 'ស៊ីនឌី',
+ 'sdh' => 'ឃើដភាគខាងត្បូង',
+ 'se' => 'សាមីខាងជើង',
+ 'seh' => 'ស៊ីណា',
+ 'ses' => 'គុយរ៉ាបូរ៉ុស៊ីនី',
+ 'sg' => 'សានហ្គោ',
+ 'sh' => 'សឺបូក្រូអាត',
+ 'shi' => 'តាឈីលហ៊ីត',
+ 'shn' => 'សាន',
'si' => 'ស្រីលង្កា',
'sk' => 'ស្លូវ៉ាគី',
'sl' => 'ស្លូវ៉ានី',
- 'sm' => 'ភាសាសាមូអា',
- 'sma' => 'Sami ភាគ​ខាង​ត្បូង',
- 'smj' => 'Lule Sami',
- 'smn' => 'Inari Sami',
- 'sms' => 'Skolt Sami',
- 'sn' => 'Shona',
+ 'sm' => 'សាម័រ',
+ 'sma' => 'សាមីខាងត្បូង',
+ 'smj' => 'លូលីសាមី',
+ 'smn' => 'អ៊ីណារីសាម៉ី',
+ 'sms' => 'ស្កុលសាមី',
+ 'sn' => 'សូណា',
+ 'snk' => 'សូនីនគេ',
'so' => 'សូម៉ាលី',
'sq' => 'អាល់បានី',
- 'sr' => 'សើប',
- 'st' => 'សេសូដូ',
+ 'sr' => 'ស៊ែប',
+ 'srn' => 'ស្រាណានតុងហ្គោ',
+ 'ss' => 'ស្វាទី',
+ 'ssy' => 'សាហូ',
+ 'st' => 'សូថូខាងត្បូង',
'su' => 'ស៊ូដង់',
- 'sv' => 'ស៊ុយអែដ',
+ 'suk' => 'ស៊ូគូម៉ា',
+ 'sv' => 'ស៊ុយអែត',
'sw' => 'ស្វាហ៊ីលី',
- 'swc' => 'Congo Swahili',
+ 'sw-cd' => 'កុងហ្គោស្វាហ៊ីលី',
+ 'swb' => 'កូម៉ូរី',
+ 'syr' => 'ស៊ីរី',
'ta' => 'តាមីល',
'te' => 'តេលុគុ',
- 'teo' => 'Teso',
- 'tg' => 'តាដហ្សីគីស្តង់',
+ 'tem' => 'ធីមនី',
+ 'teo' => 'តេសូ',
+ 'tet' => 'ទីទុំ',
+ 'tg' => 'តាហ្ស៊ីគ',
'th' => 'ថៃ',
- 'ti' => 'ទីរិនយា',
- 'tk' => 'ទួគមេនីស្តង់',
- 'tlh' => 'ខ្លិងសុន',
- 'to' => 'តុងហ្គោ',
+ 'ti' => 'ទីហ្គ្រីញ៉ា',
+ 'tig' => 'ធីហ្គ្រា',
+ 'tk' => 'តួកម៉េន',
+ 'tlh' => 'ឃ្លីនហ្គុន',
+ 'tn' => 'ស្វាណា',
+ 'to' => 'តុងហ្គា',
+ 'tpi' => 'ថុកពីស៊ីន',
'tr' => 'ទួរគី',
- 'tt' => 'តាតារ',
+ 'trv' => 'តារ៉ូកូ',
+ 'ts' => 'សុងហ្គា',
+ 'tt' => 'តាតា',
+ 'tum' => 'ទុមប៊ូកា',
+ 'tvl' => 'ទូវ៉ាលូ',
'tw' => 'ទ្វី',
- 'twq' => 'Tasawaq',
- 'tzm' => 'Atlas Tamazight កណ្ដាល',
+ 'twq' => 'តាសាវ៉ាក់',
+ 'ty' => 'តាហ៊ីទី',
+ 'tyv' => 'ទូវីនៀ',
+ 'tzm' => 'តាម៉ាសាយអាត្លាសកណ្តាល',
+ 'udm' => 'អាត់មូដ',
'ug' => 'អ៊ុយហ្គឺរ',
'uk' => 'អ៊ុយក្រែន',
- 'und' => 'មិន​ស្គាល់​ភាសា',
+ 'umb' => 'អាម់ប៊ុនឌូ',
+ 'und' => 'ភាសាមិនស្គាល់',
'ur' => 'អ៊ូរឌូ',
- 'uz' => 'អ៊ូហ្សបេគីស្តង់',
- 'vai' => 'Vai',
+ 'uz' => 'អ៊ូសបេគ',
+ 'vai' => 'វៃ',
+ 've' => 'វេនដា',
'vi' => 'វៀតណាម',
- 'vun' => 'Vunjo',
+ 'vo' => 'វូឡាពូក',
+ 'vun' => 'វុនចូ',
+ 'wa' => 'វ៉ាលូន',
+ 'wae' => 'វេលសឺ',
+ 'wal' => 'វ៉ូឡាយតា',
+ 'war' => 'វ៉ារេយ',
+ 'wbp' => 'វ៉ារីប៉ារី',
'wo' => 'វូឡុហ្វ',
+ 'xal' => 'កាលមីគ',
'xh' => 'ឃសា',
- 'xog' => 'Soga',
- 'yi' => 'ភាសាយីឌីហ្ស',
+ 'xog' => 'សូហ្គា',
+ 'yav' => 'យ៉ាងបេន',
+ 'ybb' => 'យេមបា',
+ 'yi' => 'យ៉ីឌីស',
'yo' => 'យរូបា',
- 'za' => 'ភាសាចួង',
- 'zgh' => 'ម៉ារ៉ុក',
+ 'yue' => 'កន្តាំង',
+ 'za' => 'ហ្សួង',
+ 'zgh' => 'តាម៉ាហ្សៃម៉ារ៉ុកស្តង់ដា',
'zh' => 'ចិន',
'zh-hans' => 'ចិន​អក្សរ​កាត់',
'zh-hant' => 'ចិន​អក្សរ​ពេញ',
- 'zu' => 'សូលូ',
+ 'zu' => 'ហ្សូលូ',
+ 'zun' => 'ហ្សូនី',
'zxx' => 'គ្មាន​ទិន្នន័យ​ភាសា',
-);
+ 'zza' => 'ហ្សាហ្សា',
+];
-$currencyNames = array(
- 'AED' => 'ឌៀរហាំ​អេមីរ៉ាតអារ៉ាប់រួម',
+$currencyNames = [
+ 'AED' => 'ឌៀរហាំ​អារ៉ាប់រួម',
'AFN' => 'អាហ្វហ្គានី​អាហ្វហ្គានីស្ថាន',
'ALL' => 'លិក​អាល់បានី',
'AMD' => 'ដ្រាំ​អាមេនី',
'ANG' => 'ហ្គីឌិន​ហុល្លង់​អង់ទីលៀន',
'AOA' => 'ក្វាន់ហ្សា​អង់ហ្គោឡា',
- 'ARS' => 'ប៉ឺហ្សូ​អាហ្សង់ទីន',
+ 'ARS' => 'ប៉េសួអាហ្សង់ទីន',
'AUD' => 'ដុល្លារ​អូស្ត្រាលី',
'AWG' => 'ហ្វ្រ័ររិញ​អារ៉ូបា',
'AZN' => 'ម៉ាណាត​អាស៊ែបៃហ្សង់',
@@ -259,36 +414,38 @@ $currencyNames = array(
'BOB' => 'បូលីវីណូ​បូលីវី',
'BRL' => 'រៀល​ប្រេស៊ីល',
'BSD' => 'ដុល្លារ​បាហាម៉ា',
- 'BTN' => 'ញូលត្រឹម​ប៊ូតង់',
+ 'BTN' => 'ញូលត្រឹម​ប៊ូតាន',
'BWP' => 'ពូឡា​បុតស្វាណា',
- 'BYR' => 'រ៉ូបល​បេឡារុស',
+ 'BYN' => 'រ៉ូបល​បេឡារុស',
+ 'BYR' => 'រ៉ូបល​បេឡារុស (2000–2016)',
'BZD' => 'ដុល្លារ​បេលី',
'CAD' => 'ដុល្លារ​កាណាដា',
'CDF' => 'ហ្វ្រង់​កុងហ្គោ',
- 'CHF' => 'ហ្វ្រង់ ស្វីស',
- 'CLP' => 'ប៉ឺហ្សូ​ស៊ីលី',
+ 'CHF' => 'ហ្វ្រង់ស្វីស',
+ 'CLP' => 'ប៉េសូឈីលី',
+ 'CNH' => 'យ៉ន់ចិន (ក្រៅប្រទេស)',
'CNY' => 'យ៉ន់​ចិន',
- 'COP' => 'ប៉ឺហ្សូ​កូឡុំប៊ី',
+ 'COP' => 'ប៉េសូកូឡុំប៊ី',
'CRC' => 'កូឡុង​កូស្តារីកា',
- 'CUC' => 'ប៉ឺហ្សូ​អាច​បម្លែង​បាន​គុយបា',
- 'CUP' => 'ប៉ឺហ្សូ​គុយបា',
+ 'CUC' => 'ប៉េសូ​គុយបាអាច​បម្លែង​បាន',
+ 'CUP' => 'ប៉េសូគុយបា',
'CVE' => 'អ៊ីស្កូឌូ​កាប់វែរ',
'CZK' => 'កូរុណា​សាធារណៈ​ឆេក',
'DJF' => 'ហ្វ្រង់​ជីប៊ូទី',
'DKK' => 'ក្រូណេ​ដាណាម៉ាក់',
- 'DOP' => 'ប៉ឺហ្សូ​ដូមីនីក',
+ 'DOP' => 'ប៉េសូដូមីនីក',
'DZD' => 'ឌីណា​អាល់ស៊េរី',
- 'EGP' => 'ផោន​​អេហ្សីប',
- 'ERN' => 'ណាក់ហ្វា​អេរីត្រេ',
+ 'EGP' => 'ផោនអេហ្ស៊ីប',
+ 'ERN' => 'ណាក់ហ្វាអេរីទ្រា',
'ETB' => 'ប៊័រ​អេត្យូពី',
'EUR' => 'អឺរ៉ូ',
'FJD' => 'ដុល្លារ​ហ្វីជី',
'FKP' => 'ផោន​កោះ​ហ្វក់ឡែន',
- 'GBP' => 'ផោនស្ទែរលិញ​ចក្រភព​អង់គ្លេស',
+ 'GBP' => 'ផោនចក្រភពអង់គ្លេស',
'GEL' => 'ឡារី​​ហ្សកហ្ស៊ី',
'GHS' => 'ស៊ីឌី​ហ្គាណា',
'GIP' => 'ផោន​ហ្ស៊ីប្រាល់តា',
- 'GMD' => 'ដាឡាស៊ី​ហ្គំប៊ី',
+ 'GMD' => 'ដាឡាស៊ី​ហ្គាំប៊ី',
'GNF' => 'ហ្វ្រង់​ហ្គីណេ',
'GTQ' => 'ហ្គីស្សាល​ក្វាតេម៉ាឡា',
'GYD' => 'ដុល្លារ​ហ្គីយ៉ាន',
@@ -297,9 +454,9 @@ $currencyNames = array(
'HRK' => 'គូណា​ក្រូអាត',
'HTG' => 'គោឌី​ហៃទី',
'HUF' => 'ហ្វូរីន​ហុងគ្រី',
- 'IDR' => 'រ៉ូពីឥណ្ឌូណេស៊ី',
- 'ILS' => 'ស្ស៊ីហ្គែល​អ៊ីស្រាអែល',
- 'INR' => 'រ៉ូពី​ឥណ្ឌា',
+ 'IDR' => 'រូពីឥណ្ឌូណេស៊ី',
+ 'ILS' => 'ស៊ីគែលថ្មីអ៊ីស្រាអែល',
+ 'INR' => 'រូពីឥណ្ឌា',
'IQD' => 'ឌីណា​អ៊ីរ៉ាក់',
'IRR' => 'រៀល​អ៊ីរ៉ង់',
'ISK' => 'ក្រូណា​អ៊ីស្លង់',
@@ -310,14 +467,14 @@ $currencyNames = array(
'KGS' => 'សុម​កៀហ្ស៊ីស៊ីស្ថាន',
'KHR' => 'រៀល​កម្ពុជា',
'KMF' => 'ហ្វ្រង់​កូម័រ',
- 'KPW' => 'វូន​កូរ៉េ​ខាង​ជើង',
- 'KRW' => 'វូន​កូរ៉េ​ខាង​ត្បូង',
+ 'KPW' => 'វ៉ុនកូរ៉េខាងជើង',
+ 'KRW' => 'វ៉ុនកូរ៉េខាងត្បូង',
'KWD' => 'ឌីណា​គុយវ៉ែត',
'KYD' => 'ដុល្លារ​កោះ​កៃម៉ែន',
'KZT' => 'តង់ហ្គី​កាហ្សាក់ស្ថាន',
'LAK' => 'គីប​ឡាវ',
'LBP' => 'ផោន​លីបង់',
- 'LKR' => 'រ៉ូពី​ស្រីលង្ការ',
+ 'LKR' => 'រូពីស្រីលង្កា',
'LRD' => 'ដុល្លារ​លីប៊ី',
'LTL' => 'លីតា​លីទុយអានី',
'LVL' => 'ឡាត់​ឡេតូនី',
@@ -325,39 +482,40 @@ $currencyNames = array(
'MAD' => 'ឌៀរហាំ​ម៉ារ៉ុក',
'MDL' => 'លូ​ម៉ុលដាវី',
'MGA' => 'អារៀរី​ម៉ាឡាហ្គាស៊ី',
- 'MKD' => 'ឌីណា​ម៉ាសេដ្វាន',
+ 'MKD' => 'ឌីណាម៉ាសេដូនី',
'MMK' => 'គីយ៉ាត​ភូមា',
'MNT' => 'ទូរីក​ម៉ុងហ្គោលី',
'MOP' => 'ប៉ាតាកា​ម៉ាកាវ',
- 'MRO' => 'អ៊ូហ្គីយ៉ា​ម៉ូរីតានី',
- 'MUR' => 'រ៉ូពី​ម៉ូរីតានី',
+ 'MRO' => 'អ៊ូហ្គីយ៉ា​ម៉ូរីតានី (1973–2017)',
+ 'MRU' => 'អ៊ូហ្គីយ៉ា​ម៉ូរីតានី',
+ 'MUR' => 'រូពីម៉ូរីតានី',
'MVR' => 'រ៉ូហ្វីយ៉ា​ម៉ាល់ឌីវ',
'MWK' => 'ក្វាចា​ម៉ាឡាវី',
- 'MXN' => 'ប៉ីហ្សូ​ម៉ិកស៉ិក',
+ 'MXN' => 'ប៉េសូម៉ិកសិក',
'MYR' => 'រីងហ្គីត​ម៉ាឡេស៊ី',
'MZN' => 'មីទីខល​ម៉ូសំប៊ិក',
'NAD' => 'ដុល្លារ​ណាមីប៊ី',
'NGN' => 'ណៃរ៉ា​នីហ្សេរីយ៉ា',
'NIO' => 'ខឌូបា​នីការ៉ាហ្គា',
'NOK' => 'ក្រូណេ​ន័រវ៉េ',
- 'NPR' => 'រ៉ូពី​នេប៉ាល់',
+ 'NPR' => 'រូពីនេប៉ាល់',
'NZD' => 'ដុល្លារ​នូវែលសេឡង់',
'OMR' => 'រៀល​រូម៉ានី',
'PAB' => 'បាល់ប៉ៅ​ប៉ាណាម៉ា',
'PEN' => 'ញូវ៉ូសូល​ប៉េរូ',
- 'PGK' => 'គីណា​ប៉ាពូនូហ្គីណេ',
- 'PHP' => 'ប៉ឺហ្សូ​ហ្វីលីពីន',
- 'PKR' => 'រ៉ូពី​ប៉ាគីស្ថាន',
+ 'PGK' => 'គីណាប៉ាពួញូហ្គីណេ',
+ 'PHP' => 'ប៉េសូហ្វីលីពីន',
+ 'PKR' => 'រូពីប៉ាគីស្ថាន',
'PLN' => 'ហ្សូទី​ប៉ូឡូញ',
'PYG' => 'ហ្គូរីនី​ប៉ារ៉ាហ្គាយ',
'QAR' => 'រៀល​កាតា',
'RON' => 'លូ​រូម៉ានី',
- 'RSD' => 'ឌីណា​សើប',
+ 'RSD' => 'ឌីណាស៊ែប',
'RUB' => 'រ៉ូបល​រុស្ស៊ី',
'RWF' => 'ហ្វ្រង់​រវ៉ាន់ដា',
'SAR' => 'រីយ៉ាល​អារ៉ាប៊ីសាអូឌីត',
'SBD' => 'ដុល្លារ​កោះ​សូឡូម៉ុង',
- 'SCR' => 'រ៉ូពី​សីស្ហែល',
+ 'SCR' => 'រូពី​សីស្ហែល',
'SDG' => 'ផោន​ស៊ូដង់',
'SEK' => 'ក្រូណា​ស៊ុយអែត',
'SGD' => 'ដុល្លារ​​សិង្ហបូរី',
@@ -366,39 +524,41 @@ $currencyNames = array(
'SOS' => 'ស៊ីលិញ​សូម៉ាលី',
'SRD' => 'ដុល្លារ​សូរីណាម',
'SSP' => 'ផោន​ស៊ូដង់​ខាង​ត្បូង',
- 'STD' => 'ឌូប្រា​សៅតូម៉េ និងប្រាំងស៊ីប',
+ 'STD' => 'ឌូប្រា​សៅតូម៉េ និងប្រាំងស៊ីប (1977–2017)',
+ 'STN' => 'ឌូប្រា​សៅតូម៉េ និងប្រាំងស៊ីប',
'SYP' => 'ផោន​ស៊ីរី',
'SZL' => 'លីឡាងហ្គីនី​ស្វាស៊ីឡង់',
'THB' => 'បាត​ថៃ',
'TJS' => 'សូមុនី​តាហ្ស៊ីគីស្ថាន',
'TMT' => 'ម៉ាណាត​តួកម៉េនីស្ថាន',
- 'TND' => 'ឌីណា​ទុយនីស៊ី',
+ 'TND' => 'ឌីណាទុយនេស៊ី',
'TOP' => 'ប៉ាអង់កា​តុងហ្គា',
- 'TRY' => 'លីរ៉ា​ទួគី',
+ 'TRY' => 'លីរ៉ាទួរគី',
'TTD' => 'ដុល្លារ​ទ្រីនីដាដ និងតូបាហ្គោ',
'TWD' => 'ដុល្លារ​តៃវ៉ាន់',
'TZS' => 'ស៊ីលិញ​តង់សានី',
'UAH' => 'ហ៊ូនីយ៉ា​អ៊ុយក្រែន',
'UGX' => 'ស៊ីលិញ​អ៊ូហ្គង់ដា',
'USD' => 'ដុល្លារ​អាមេរិក',
- 'UYU' => 'ប៉ឺហ្សូអ៊ុយរូហ្គាយ',
- 'UZS' => 'សុម​អ៊ូសបេគីស្ថាន',
- 'VEF' => 'ប៊ូលីវ៉ា​វ៉េណេស៊ុយអេឡា',
+ 'UYU' => 'ប៉េសូអ៊ុយរូហ្គាយ',
+ 'UZS' => 'សុមអ៊ូបេគីស្ថាន',
+ 'VEF' => 'ប៊ូលីវ៉ា​វ៉េណេស៊ុយអេឡា (2008–2018)',
+ 'VES' => 'ប៊ូលីវ៉ា​វ៉េណេស៊ុយអេឡា',
'VND' => 'ដុង​វៀតណាម',
- 'VUV' => 'វ៉ាទូ​វ៉ានូទូ',
+ 'VUV' => 'វ៉ាទូវ៉ានូអាទូ',
'WST' => 'តាឡា​សាម័រ',
- 'XAF' => 'ហ្វ្រង់ BEAC CFA',
+ 'XAF' => 'ហ្វ្រង់ CFA អាហ្វ្រិកកណ្តាល',
'XCD' => 'ដុល្លារ​ការ៉ាប៊ីន​ខាង​កើត',
- 'XOF' => 'ហ្វ្រង់ BCEAO CFA',
+ 'XOF' => 'ហ្វ្រង់ CFA អាហ្វ្រិកខាងលិច',
'XPF' => 'ហ្វ្រង់ CFP',
'XXX' => 'រូបិយប័ណ្ណ​មិនស្គាល់',
'YER' => 'រៀល​យេម៉ែន',
- 'ZAR' => 'រ៉ង់​អាព្រិក​ខាង​ត្បូង',
+ 'ZAR' => 'រ៉ង់អាហ្វ្រិកខាងត្បូង',
'ZMK' => 'ក្វាចា សំប៊ី (1968–2012)',
- 'ZMW' => 'ក្វាចា​សំប៊ី',
-);
+ 'ZMW' => 'ក្វាចាហ្សំប៊ី',
+];
-$currencySymbols = array(
+$currencySymbols = [
'AED' => 'AED',
'AFN' => 'AFN',
'ALL' => 'ALL',
@@ -422,6 +582,7 @@ $currencySymbols = array(
'BSD' => 'BSD',
'BTN' => 'BTN',
'BWP' => 'BWP',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CA$',
@@ -528,6 +689,7 @@ $currencySymbols = array(
'SRD' => 'SRD',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'Db',
'SYP' => 'SYP',
'SZL' => 'SZL',
'THB' => '฿',
@@ -555,54 +717,54 @@ $currencySymbols = array(
'YER' => 'YER',
'ZAR' => 'ZAR',
'ZMW' => 'ZMW',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'កោះ​អាសេនសិន',
'AD' => 'អង់ដូរ៉ា',
- 'AE' => 'អេមីរ៉ែទអារ៉ាប់រួម',
+ 'AE' => 'អេមីរ៉ាត​អារ៉ាប់​រួម',
'AF' => 'អាហ្វហ្គានីស្ថាន',
- 'AG' => 'អង់ទីគ័រ និង​បាបុយដា',
- 'AI' => 'អង់កូឡា',
+ 'AG' => 'អង់ទីហ្គា និង បាប៊ុយដា',
+ 'AI' => 'អង់ហ្គីឡា',
'AL' => 'អាល់បានី',
- 'AM' => 'អារមេនី',
+ 'AM' => 'អាមេនី',
'AO' => 'អង់ហ្គោឡា',
- 'AQ' => 'អង់តាទីកា',
+ 'AQ' => 'អង់តាក់ទិក',
'AR' => 'អាហ្សង់ទីន',
- 'AS' => 'សៅម៉ៅ អាមេរិក',
+ 'AS' => 'សាម័រ អាមេរិកាំង',
'AT' => 'អូទ្រីស',
'AU' => 'អូស្ត្រាលី',
'AW' => 'អារូបា',
- 'AX' => 'កោះ​អាឡាំង',
- 'AZ' => 'អាហ៊្សែរបែហ្សង់',
- 'BA' => 'បូស្ន៉ី',
- 'BB' => 'បារបាដូស',
- 'BD' => 'បង់ក្លាដេស្ហ',
- 'BE' => 'បែលហ្ស៉ិក',
- 'BF' => 'ប៊ូរគីណាហ្វាសូ',
+ 'AX' => 'កោះ​អាឡង់',
+ 'AZ' => 'អាស៊ែបៃហ្សង់',
+ 'BA' => 'បូស្នី និងហឺហ្សីហ្គូវីណា',
+ 'BB' => 'បាបាដុស',
+ 'BD' => 'បង់ក្លាដែស',
+ 'BE' => 'បែលហ្ស៊ិក',
+ 'BF' => 'បួគីណាហ្វាសូ',
'BG' => 'ប៊ុលហ្គារី',
'BH' => 'បារ៉ែន',
'BI' => 'ប៊ូរុនឌី',
'BJ' => 'បេណាំង',
- 'BL' => 'សង់ បាតេឡេម៉ី',
+ 'BL' => 'សាំង​បាថេឡេមី',
'BM' => 'ប៊ឺមុយដា',
'BN' => 'ព្រុយណេ',
'BO' => 'បូលីវី',
- 'BQ' => 'ហុល្លង់ ការ៉ាប៊ីន',
+ 'BQ' => 'ហូឡង់ ការ៉ាប៊ីន',
'BR' => 'ប្រេស៊ីល',
'BS' => 'បាហាម៉ា',
- 'BT' => 'ប៊ូតាន',
+ 'BT' => 'ប៊ូតង់',
'BV' => 'កោះ​ប៊ូវ៉េត',
'BW' => 'បុតស្វាណា',
- 'BY' => 'បេឡារុស្ស',
- 'BZ' => 'បេលីហ្ស',
+ 'BY' => 'បេឡារុស',
+ 'BZ' => 'បេលី',
'CA' => 'កាណាដា',
- 'CC' => 'កោះ​កូកូស',
+ 'CC' => 'កោះ​កូកូស (គីលីង)',
'CD' => 'កុងហ្គោ- គីនស្ហាសា',
'CF' => 'សាធារណរដ្ឋអាហ្វ្រិកកណ្ដាល',
'CG' => 'កុងហ្គោ - ប្រាហ្សាវីល',
'CH' => 'ស្វីស',
- 'CI' => 'កូដឌីវ័រ',
+ 'CI' => 'កូតឌីវ័រ',
'CK' => 'កោះ​ខូក',
'CL' => 'ស៊ីលី',
'CM' => 'កាមេរូន',
@@ -611,56 +773,57 @@ $countryNames = array(
'CP' => 'កោះ​ឃ្លីភឺតុន',
'CR' => 'កូស្តារីកា',
'CU' => 'គុយបា',
- 'CV' => 'កាបវែរ',
+ 'CV' => 'កាប់វែរ',
'CW' => 'កូរ៉ាកៅ',
'CX' => 'កោះ​គ្រីស្មាស',
- 'CY' => 'ស៉ីពរ៍',
- 'CZ' => 'សាធារណរដ្ឋឆេក',
+ 'CY' => 'ស៊ីប',
+ 'CZ' => 'ឆែគា',
'DE' => 'អាល្លឺម៉ង់',
'DG' => 'ឌៀហ្គោហ្គាស៊ី',
- 'DJ' => 'ហ្ស៉ីបូទី',
+ 'DJ' => 'ជីប៊ូទី',
'DK' => 'ដាណឺម៉ាក',
- 'DM' => 'ដូមីនីកា',
- 'DO' => 'សាធារណរដ្ឋដូមីនីកែន',
+ 'DM' => 'ដូមីនីក',
+ 'DO' => 'សាធារណរដ្ឋ​ដូមីនីក',
'DZ' => 'អាល់ហ្សេរី',
'EA' => 'ជឺតា និង​ម៉េលីឡា',
- 'EC' => 'អេក្វាឌ័រ',
+ 'EC' => 'អេក្វាទ័រ',
'EE' => 'អេស្តូនី',
- 'EG' => 'អេហ្ស៉ីប',
+ 'EG' => 'អេហ្ស៊ីប',
'EH' => 'សាហារ៉ាខាងលិច',
- 'ER' => 'អេរីទ្រា',
+ 'ER' => 'អេរីត្រេ',
'ES' => 'អេស្ប៉ាញ',
'ET' => 'អេត្យូពី',
'EU' => 'សហភាព​អឺរ៉ុប',
+ 'EZ' => 'តំបន់ចាយលុយអឺរ៉ូ',
'FI' => 'ហ្វាំងឡង់',
'FJ' => 'ហ្វីជី',
'FK' => 'កោះ​ហ្វក់ឡែន',
- 'FM' => 'មិក្រូនេស៊ី',
+ 'FM' => 'មីក្រូណេស៊ី',
'FO' => 'កោះ​ហ្វារ៉ូ',
'FR' => 'បារាំង',
'GA' => 'ហ្គាបុង',
'GB' => 'ច.អ.',
'GD' => 'ហ្គ្រើណាដ',
- 'GE' => 'ហ្សកហ្ស៉ី',
- 'GF' => 'ហ្វ្វេន​ហ្គៀណា',
+ 'GE' => 'ហ្សកហ្ស៊ី',
+ 'GF' => 'ហ្គីអាណា បារាំង',
'GG' => 'ហ្គេនស៊ី',
'GH' => 'ហ្គាណា',
- 'GI' => 'ហ្គីប្រាលតា',
+ 'GI' => 'ហ្ស៊ីប្រាល់តា',
'GL' => 'ហ្គ្រោអង់ឡង់',
- 'GM' => 'ហ្គាំប៊ី',
+ 'GM' => 'ហ្គំប៊ី',
'GN' => 'ហ្គីណេ',
'GP' => 'ហ្គោដឺឡុប',
'GQ' => 'ហ្គីណេអេក្វាទ័រ',
- 'GR' => 'ក្រិច',
- 'GS' => 'កោះ​ហ្សកហ្ស៊ី​ខាង​ត្បូង និង​សាន់វិច​ខាង​ត្បូង',
- 'GT' => 'ហ្គាតេម៉ាឡា',
+ 'GR' => 'ក្រិក',
+ 'GS' => 'កោះ​ហ្សកហ្ស៊ី​ខាងត្បូង និង សង់វិច​ខាងត្បូង',
+ 'GT' => 'ក្វាតេម៉ាឡា',
'GU' => 'ហ្គាំ',
- 'GW' => 'ហ្គីណេប៊ីសូ',
- 'GY' => 'ហ្គីយ៉ាណា',
- 'HK' => 'ហុងកុង',
+ 'GW' => 'ហ្គីណេប៊ីស្សូ',
+ 'GY' => 'ហ្គីយ៉ាន',
+ 'HK' => 'ហុងកុង តំបន់រដ្ឋបាលពិសេសចិន',
'HM' => 'កោះ​ហឺដ និង​ម៉ាក់ដូណាល់',
- 'HN' => 'ហុងឌួរ៉ាស់',
- 'HR' => 'ក្រូអាត',
+ 'HN' => 'ហុងឌូរ៉ាស',
+ 'HR' => 'ក្រូអាស៊ី',
'HT' => 'ហៃទី',
'HU' => 'ហុងគ្រី',
'IC' => 'កោះ​កាណារី',
@@ -669,45 +832,45 @@ $countryNames = array(
'IL' => 'អ៊ីស្រាអែល',
'IM' => 'អែលអុហ្វមែន',
'IN' => 'ឥណ្ឌា',
- 'IO' => 'ដែន​មហា​សមុទ្រ​ឥណ្ឌា ចក្រភព​អង់គ្លេស',
+ 'IO' => 'ដែនដី​អង់គ្លេស​នៅ​មហា​សមុទ្រ​ឥណ្ឌា',
'IQ' => 'អ៊ីរ៉ាក់',
'IR' => 'អ៊ីរ៉ង់',
'IS' => 'អ៊ីស្លង់',
'IT' => 'អ៊ីតាលី',
'JE' => 'ជឺស៊ី',
- 'JM' => 'ហ្សាម៉ាអ៉ិគ',
+ 'JM' => 'ហ្សាម៉ាអ៊ីក',
'JO' => 'ហ៊្សកដានី',
'JP' => 'ជប៉ុន',
'KE' => 'កេនយ៉ា',
- 'KG' => 'គៀរហ្គីស្តង់',
+ 'KG' => 'កៀហ្ស៊ីស៊ីស្ថាន',
'KH' => 'កម្ពុជា',
- 'KI' => 'គិរិបាទី',
- 'KM' => 'កុំម៉ូរ៉ូស',
- 'KN' => 'សង់ឃីត និង​ណេវីស',
+ 'KI' => 'គិរីបាទី',
+ 'KM' => 'កូម័រ',
+ 'KN' => 'សាំង​គីត និង ណេវីស',
'KP' => 'កូរ៉េ​ខាង​ជើង',
'KR' => 'កូរ៉េ​ខាង​ត្បូង',
- 'KW' => 'គុយវ៉ែត',
+ 'KW' => 'កូវ៉ែត',
'KY' => 'កោះ​កៃម៉ង់',
- 'KZ' => 'កាហ្សាក់ស្តាង់់',
+ 'KZ' => 'កាហ្សាក់ស្ថាន',
'LA' => 'ឡាវ',
'LB' => 'លីបង់',
- 'LC' => 'សង់​លូសៀ',
- 'LI' => 'លិចទេនស្តែន',
+ 'LC' => 'សាំងលូស៊ី',
+ 'LI' => 'លិចតិនស្ដាញ',
'LK' => 'ស្រីលង្កា',
'LR' => 'លីបេរីយ៉ា',
- 'LS' => 'លើសូតូ',
+ 'LS' => 'ឡេសូតូ',
'LT' => 'លីទុយអានី',
- 'LU' => 'លុចហ្សំបួរ',
- 'LV' => 'ឡាតវីយ៉ា',
+ 'LU' => 'លុចសំបួ',
+ 'LV' => 'ឡេតូនី',
'LY' => 'លីប៊ី',
'MA' => 'ម៉ារ៉ុក',
'MC' => 'ម៉ូណាកូ',
- 'MD' => 'សាធារណរដ្ឋម៉ុលដាវី',
+ 'MD' => 'ម៉ុលដាវី',
'ME' => 'ម៉ុងតេណេហ្គ្រោ',
- 'MF' => 'សង់​ម៉ាទីន',
- 'MG' => 'ម៉ាដាហ្កាស្ការ',
+ 'MF' => 'សាំង​ម៉ាទីន',
+ 'MG' => 'ម៉ាដាហ្គាស្កា',
'MH' => 'កោះ​ម៉ាស់សល',
- 'MK' => 'ម៉ាសេដន',
+ 'MK' => 'ម៉ាសេដ្វាន',
'ML' => 'ម៉ាលី',
'MM' => 'មីយ៉ាន់ម៉ា (ភូមា)',
'MN' => 'ម៉ុងហ្គោលី',
@@ -715,166 +878,210 @@ $countryNames = array(
'MP' => 'កោះ​ម៉ារីណា​ខាង​ជើង',
'MQ' => 'ម៉ាទីនីក',
'MR' => 'ម៉ូរីតានី',
- 'MS' => 'ម៉ុង​សេរ៉ង់',
- 'MT' => 'ម៉ាល់តា',
- 'MU' => 'ម៉ូរីទុស',
+ 'MS' => 'ម៉ុងស៊ែរ៉ា',
+ 'MT' => 'ម៉ាល់ត៍',
+ 'MU' => 'ម៉ូរីស',
'MV' => 'ម៉ាល់ឌីវ',
'MW' => 'ម៉ាឡាវី',
- 'MX' => 'ម៉ិចសិក',
+ 'MX' => 'ម៉ិកស៊ិក',
'MY' => 'ម៉ាឡេស៊ី',
- 'MZ' => 'ម៉ូហ្សាំប៊ិក',
+ 'MZ' => 'ម៉ូសំប៊ិក',
'NA' => 'ណាមីប៊ី',
- 'NC' => 'ញូកាឡេដូនៀ',
- 'NE' => 'នីហ្សេរ',
+ 'NC' => 'នូវែល​កាឡេដូនី',
+ 'NE' => 'នីហ្សេ',
'NF' => 'កោះ​ណ័រហ្វក់',
'NG' => 'នីហ្សេរីយ៉ា',
- 'NI' => 'នីការ៉ាហ្គ័រ',
- 'NL' => 'ហុល្លង់',
+ 'NI' => 'នីការ៉ាហ្គា',
+ 'NL' => 'ហូឡង់',
'NO' => 'ន័រវែស',
'NP' => 'នេប៉ាល់',
'NR' => 'ណូរូ',
'NU' => 'ណៀ',
- 'NZ' => 'នូវែលហ្សេឡង់',
+ 'NZ' => 'នូវែល​សេឡង់',
'OM' => 'អូម៉ង់',
'PA' => 'ប៉ាណាម៉ា',
'PE' => 'ប៉េរូ',
- 'PF' => 'ហ្វ្រេន​ប៉ូលី​ណេស៊ី',
- 'PG' => 'ប៉ាពូអានូវែលហ្គីណេ',
+ 'PF' => 'ប៉ូលី​ណេស៊ី​បារាំង',
+ 'PG' => 'ប៉ាពូអាស៊ី​នូវែលហ្គីណេ',
'PH' => 'ហ្វីលីពីន',
'PK' => 'ប៉ាគីស្ថាន',
- 'PL' => 'ប៉ូលូញ',
+ 'PL' => 'ប៉ូឡូញ',
'PM' => 'សង់ព្យែរ និង​មីគីឡុង',
- 'PN' => 'កោះ​ភីតខារិន',
+ 'PN' => 'កោះ​ភីតកាន',
'PR' => 'ព័រតូរីកូ',
'PS' => 'ប៉ាលេស្ទីន',
- 'PT' => 'ព័រទុយហ្កាល់',
+ 'PT' => 'ព័រទុយហ្គាល់',
'PW' => 'ផៅឡូ',
'PY' => 'ប៉ារ៉ាហ្គាយ',
- 'QA' => 'កាតារ',
- 'QO' => 'អៅលីយីង អុកស៊ីន',
- 'RE' => 'រ៉េអ៊ុយ៉ុង',
+ 'QA' => 'កាតា',
+ 'QO' => 'តំបន់ជាយអូសេអានី',
+ 'RE' => 'រេអុយញ៉ុង',
'RO' => 'រូម៉ានី',
- 'RS' => 'សើប',
+ 'RS' => 'សែប៊ី',
'RU' => 'រុស្ស៊ី',
'RW' => 'រវ៉ាន់ដា',
- 'SA' => 'អារ៉ាប៊ីសាអ៊ូឌីត',
- 'SB' => 'កោះ​ស៊ូឡូម៉ុង',
- 'SC' => 'សីសែល',
+ 'SA' => 'អារ៉ាប៊ីសាអូឌីត',
+ 'SB' => 'កោះ​សូឡូម៉ុង',
+ 'SC' => 'សីស្ហែល',
'SD' => 'ស៊ូដង់',
- 'SE' => 'ស៊ុយអែដ',
+ 'SE' => 'ស៊ុយអែត',
'SG' => 'សិង្ហបុរី',
'SH' => 'សង់​ហេឡេណា',
'SI' => 'ស្លូវេនី',
- 'SJ' => 'ស្វាប៊ឺត និង​ហ្យង់ម៉ាយេន',
+ 'SJ' => 'ស្វាលបាដ និង ហ្សង់ម៉ាយេន',
'SK' => 'ស្លូវ៉ាគី',
- 'SL' => 'សេរ៉ាឡេអូន',
+ 'SL' => 'សៀរ៉ាឡេអូន',
'SM' => 'សាន​ម៉ារីណូ',
- 'SN' => 'សេនេហ្កាល់',
+ 'SN' => 'សេណេហ្គាល់',
'SO' => 'សូម៉ាលី',
'SR' => 'សូរីណាម',
'SS' => 'ស៊ូដង់​ខាង​ត្បូង',
- 'ST' => 'សៅ​តុំ និង​ព្រីនស៊ីប៉េ',
+ 'ST' => 'សៅតូម៉េ និង ប្រាំងស៊ីប',
'SV' => 'អែលសាល់វ៉ាឌ័រ',
'SX' => 'សីង​ម៉ាធីន',
'SY' => 'ស៊ីរី',
- 'SZ' => 'សូហ្ស៉ីឡង់',
+ 'SZ' => 'ស្វាស៊ីឡង់',
'TA' => 'ទ្រីស្តង់​ដា​ចូនហា',
- 'TC' => 'កោះ​កៃកូស និងទូក',
+ 'TC' => 'កោះ​ទួគ និង កៃកូស',
'TD' => 'ឆាដ',
- 'TF' => 'ដែន​បារាំង​ខាង​ត្បូង',
- 'TG' => 'តូហ្គូ',
+ 'TF' => 'ដែនដី​បារាំង​នៅ​ភាគខាងត្បូង',
+ 'TG' => 'តូហ្គោ',
'TH' => 'ថៃ',
- 'TJ' => 'តាដហ្ស៉ីគីស្តង់',
+ 'TJ' => 'តាហ្ស៊ីគីស្ថាន',
'TK' => 'តូខេឡៅ',
- 'TL' => 'ទីម័រ',
- 'TM' => 'ទួគមេនីស្តង់',
- 'TN' => 'ទុយនេស៊ី',
+ 'TL' => 'ទីម័រលីស',
+ 'TM' => 'តួកម៉េនីស្ថាន',
+ 'TN' => 'ទុយនីស៊ី',
'TO' => 'តុងហ្គា',
- 'TR' => 'ទួរគី',
+ 'TR' => 'តួកគី',
'TT' => 'ទ្រីនីដាត និង​តូបាហ្គោ',
'TV' => 'ទូវ៉ាលូ',
'TW' => 'តៃវ៉ាន់',
- 'TZ' => 'តង់ហ្សានី',
+ 'TZ' => 'តង់សានី',
'UA' => 'អ៊ុយក្រែន',
- 'UG' => 'អ៊ូហ្កង់ដា',
+ 'UG' => 'អ៊ូហ្គង់ដា',
'UM' => 'កោះ​អៅឡាយីង​អាមេរិក',
+ 'UN' => 'អង្គការ',
'US' => 'ស.រ.អ',
- 'UY' => 'អ៊ុយរុយហ្គាយ',
- 'UZ' => 'អ៊ូហ្សបេគីស្តង់',
- 'VA' => 'ទីក្រុងវ៉ាទីកង់',
- 'VC' => 'សាំង​វីនសេន និង​ឌឹ​ហ្គ្រីណាឌីនីស',
- 'VE' => 'វេនេហ្ស៊ុយឡា',
+ 'UY' => 'អ៊ុយរូហ្គាយ',
+ 'UZ' => 'អ៊ូសបេគីស្ថាន',
+ 'VA' => 'បុរី​វ៉ាទីកង់',
+ 'VC' => 'សាំង​វ៉ាំងសង់ និង ហ្គ្រេណាឌីន',
+ 'VE' => 'វ៉េណេស៊ុយអេឡា',
'VG' => 'កោះ​វឺជិន​ចក្រភព​អង់គ្លេស',
'VI' => 'កោះ​វឺជីន​អាមេរិក',
'VN' => 'វៀតណាម',
- 'VU' => 'វ៉ាន់ណៅទូ',
+ 'VU' => 'វ៉ានូទូ',
'WF' => 'វ៉ាលីស និង​ហ្វូទូណា',
- 'WS' => 'សាមូអា',
+ 'WS' => 'សាម័រ',
'XK' => 'កូសូវ៉ូ',
- 'YE' => 'យេមែន',
+ 'YE' => 'យេម៉ែន',
'YT' => 'ម៉ាយុត',
- 'ZA' => 'អាព្រិក​ភាគ​ខាង​ត្បូង',
- 'ZM' => 'ហ្សាំប៊ី',
- 'ZW' => 'ហ្ស៊ីមបាបវ៉េ',
-);
+ 'ZA' => 'អាហ្វ្រិកខាងត្បូង',
+ 'ZM' => 'សំប៊ី',
+ 'ZW' => 'ស៊ីមបាវ៉េ',
+];
-$timeUnits = array(
- 'day-future-other' => 'ក្នុង​រយៈ​ពេល {0} ថ្ងៃ',
- 'day-narrow-future-other' => 'ក្នុងពេល {0} ថ្ងៃ',
+$timeUnits = [
+ 'century-other' => '{0} សតវត្ស',
+ 'day-future-other' => '{0} ថ្ងៃទៀត',
+ 'day-narrow-future-other' => '{0} ថ្ងៃទៀត',
'day-narrow-past-other' => '{0} ថ្ងៃ​​មុន',
'day-other' => '{0} ថ្ងៃ',
'day-past-other' => '{0} ថ្ងៃ​មុន',
- 'day-short-future-other' => 'ក្នុង​រយៈ​ពេល {0} ថ្ងៃ',
+ 'day-short-future-other' => '{0} ថ្ងៃទៀត',
'day-short-past-other' => '{0} ថ្ងៃ​​មុន',
+ 'fri-future-other' => 'ក្នុងពេល {0} ថ្ងៃសុក្រទៀត',
+ 'fri-narrow-future-other' => 'ក្នុងពេល {0} ថ្ងៃសុក្រទៀត',
+ 'fri-narrow-past-other' => 'កាលពី {0} ថ្ងៃសុក្រមុន',
+ 'fri-past-other' => 'កាលពី {0} ថ្ងៃសុក្រមុន',
+ 'fri-short-future-other' => 'ក្នុងពេល {0} ថ្ងៃសុក្រទៀត',
+ 'fri-short-past-other' => 'កាលពី {0} ថ្ងៃសុក្រមុន',
'hour-future-other' => 'ក្នុង​រយៈ​ពេល {0} ម៉ោង',
- 'hour-narrow-future-other' => 'ក្នុង​រយៈ​ពេល {0} ម៉ោង',
+ 'hour-narrow-future-other' => '{0} ម៉ោងទៀត',
'hour-narrow-past-other' => '{0} ម៉ោង​មុន',
'hour-other' => '{0} ម៉ោង',
'hour-past-other' => '{0} ម៉ោង​មុន',
- 'hour-short-future-other' => 'ក្នុង​រយៈ​ពេល {0} ម៉ោង',
+ 'hour-short-future-other' => '{0} ម៉ោងទៀត',
'hour-short-past-other' => '{0} ម៉ោង​មុន',
'microsecond-other' => '{0} មីក្រូ​វិនាទី',
'millisecond-other' => '{0} មិល្លី​វិនាទី',
- 'minute-future-other' => 'ក្នុង​រយៈពេល {0} នាទី',
- 'minute-narrow-future-other' => 'ក្នុង​រយៈពេល {0} នាទី',
+ 'minute-future-other' => '{0} នាទីទៀត',
+ 'minute-narrow-future-other' => '{0} នាទីទៀត',
'minute-narrow-past-other' => '{0} នាទី​​មុន',
'minute-other' => '{0} នាទី',
'minute-past-other' => '{0} នាទី​មុន',
- 'minute-short-future-other' => 'ក្នុង​រយៈពេល {0} នាទី',
+ 'minute-short-future-other' => '{0} នាទីទៀត',
'minute-short-past-other' => '{0} នាទី​​មុន',
- 'month-future-other' => 'ក្នុង​រយៈ​ពេល {0} ខែ',
- 'month-narrow-future-other' => 'ក្នុង​រយៈ​ពេល {0} ខែ',
+ 'mon-future-other' => 'ក្នុងពេល {0} ថ្ងៃចន្ទទៀត',
+ 'mon-narrow-future-other' => 'ក្នុងពេល {0} ថ្ងៃចន្ទទៀត',
+ 'mon-narrow-past-other' => 'កាលពី {0} ថ្ងៃចន្ទមុន',
+ 'mon-past-other' => 'កាលពី {0} ថ្ងៃចន្ទមុន',
+ 'mon-short-future-other' => 'ក្នុងពេល {0} ថ្ងៃចន្ទទៀត',
+ 'mon-short-past-other' => 'កាលពី {0} ថ្ងៃចន្ទមុន',
+ 'month-future-other' => '{0} ខែទៀត',
+ 'month-narrow-future-other' => '{0} ខែទៀត',
'month-narrow-past-other' => '{0} ខែមុន',
'month-other' => '{0} ខែ',
'month-past-other' => '{0} ខែមុន',
- 'month-short-future-other' => 'ក្នុង​រយៈ​ពេល {0} ខែ',
+ 'month-short-future-other' => '{0} ខែទៀត',
'month-short-past-other' => '{0} ខែមុន',
'nanosecond-other' => '{0} ណាណូវិនាទី',
- 'quarter-future-other' => 'ក្នុង​រយៈ​ពេល {0} ត្រីមាស',
- 'quarter-narrow-future-other' => 'ក្នុង​រយៈ​ពេល {0} ត្រីមាស',
+ 'quarter-future-other' => '{0} ត្រីមាសទៀត',
+ 'quarter-narrow-future-other' => '{0} ត្រីមាសទៀត',
'quarter-narrow-past-other' => '{0} ត្រីមាស​មុន',
'quarter-past-other' => '{0} ត្រីមាស​មុន',
- 'quarter-short-future-other' => 'ក្នុង​រយៈ​ពេល {0} ត្រីមាស',
+ 'quarter-short-future-other' => '{0} ត្រីមាសទៀត',
'quarter-short-past-other' => '{0} ត្រីមាស​មុន',
- 'second-future-other' => 'ក្នុង​រយៈពេល {0} វិនាទី',
- 'second-narrow-future-other' => '{0} វិនាទី',
+ 'sat-future-other' => 'ក្នុងពេល {0} ថ្ងៃសៅរ៍ ទៀត',
+ 'sat-narrow-future-other' => 'ក្នុងពេល {0} ថ្ងៃសៅរ៍ ទៀត',
+ 'sat-narrow-past-other' => 'កាលពី {0} ថ្ងៃសៅរ៍ មុន',
+ 'sat-past-other' => 'កាលពី {0} ថ្ងៃសៅរ៍ មុន',
+ 'sat-short-future-other' => 'ក្នុងពេល {0} ថ្ងៃសៅរ៍ ទៀត',
+ 'sat-short-past-other' => 'កាលពី {0} ថ្ងៃសៅរ៍ មុន',
+ 'second-future-other' => '{0} វិនាទីទៀត',
+ 'second-narrow-future-other' => '{0} វិនាទីទៀត',
'second-narrow-past-other' => '{0} វិនាទី​មុន',
'second-other' => '{0} វិនាទី',
'second-past-other' => '{0} វិនាទី​មុន',
- 'second-short-future-other' => 'ក្នុង​រយៈពេល {0} វិនាទី',
+ 'second-short-future-other' => '{0} វិនាទីទៀត',
'second-short-past-other' => '{0} វិនាទី​មុន',
- 'week-future-other' => 'ក្នុង​រយៈ​ពេល {0} សប្ដាហ៍',
- 'week-narrow-future-other' => 'ក្នុង​រយៈ​ពេល {0} សប្ដាហ៍',
+ 'sun-future-other' => 'ថ្ងៃអាទិត្យ {0} សប្តាហ៍ទៀត',
+ 'sun-narrow-future-other' => 'ក្នុងពេល {0} ថ្ងៃអាទិត្យទៀត',
+ 'sun-narrow-past-other' => 'កាលពី {0} ថ្ងៃអាទិត្យមុន',
+ 'sun-past-other' => 'ថ្ងៃអាទិត្យ {0} សប្តាហ៍មុន',
+ 'sun-short-future-other' => 'ថ្ងៃអាទិត្យ {0} សប្តាហ៍ទៀត',
+ 'sun-short-past-other' => 'ថ្ងៃអាទិត្យ {0} សប្តាហ៍មុន',
+ 'thu-future-other' => 'ក្នុងពេល {0} ថ្ងៃព្រហស្បតិ៍ទៀត',
+ 'thu-narrow-future-other' => 'ក្នុងពេល {0} ថ្ងៃព្រហស្បតិ៍ទៀត',
+ 'thu-narrow-past-other' => 'កាលពី {0} ថ្ងៃព្រហស្បតិ៍មុន',
+ 'thu-past-other' => 'កាលពី {0} ថ្ងៃព្រហស្បតិ៍មុន',
+ 'thu-short-future-other' => 'ក្នុងពេល {0} ថ្ងៃព្រហស្បតិ៍ទៀត',
+ 'thu-short-past-other' => 'កាលពី {0} ថ្ងៃព្រហស្បតិ៍មុន',
+ 'tue-future-other' => 'ក្នុងពេល {0} ថ្ងៃអង្គារទៀត',
+ 'tue-narrow-future-other' => 'ក្នុងពេល {0} ថ្ងៃអង្គារទៀត',
+ 'tue-narrow-past-other' => 'កាលពី {0} ថ្ងៃអង្គារមុន',
+ 'tue-past-other' => 'កាលពី {0} ថ្ងៃអង្គារមុន',
+ 'tue-short-future-other' => 'ក្នុងពេល {0} ថ្ងៃអង្គារទៀត',
+ 'tue-short-past-other' => 'កាលពី {0} ថ្ងៃអង្គារមុន',
+ 'wed-future-other' => 'ក្នុងពេល {0} ថ្ងៃពុធទៀត',
+ 'wed-narrow-future-other' => 'ក្នុងពេល {0} ថ្ងៃពុធទៀត',
+ 'wed-narrow-past-other' => 'កាលពី {0} ថ្ងៃពុធមុន',
+ 'wed-past-other' => 'កាលពី {0} ថ្ងៃពុធមុន',
+ 'wed-short-future-other' => 'ក្នុងពេល {0} ថ្ងៃពុធទៀត',
+ 'wed-short-past-other' => 'កាលពី {0} ថ្ងៃពុធមុន',
+ 'week-future-other' => '{0} សប្ដាហ៍ទៀត',
+ 'week-narrow-future-other' => '{0} សប្ដាហ៍ទៀត',
'week-narrow-past-other' => '{0} សប្ដាហ៍​មុន',
'week-other' => '{0} សប្ដាហ៍',
'week-past-other' => '{0} សប្ដាហ៍​មុន',
- 'week-short-future-other' => 'ក្នុង​រយៈ​ពេល {0} សប្ដាហ៍',
+ 'week-short-future-other' => '{0} សប្ដាហ៍ទៀត',
'week-short-past-other' => '{0} សប្ដាហ៍​មុន',
- 'year-future-other' => 'ក្នុង​រយៈ​ពេល {0} ឆ្នាំ',
- 'year-narrow-future-other' => 'ក្នុង​រយៈ​ពេល {0} ឆ្នាំ',
+ 'year-future-other' => '{0} ឆ្នាំទៀត',
+ 'year-narrow-future-other' => '{0} ឆ្នាំទៀត',
'year-narrow-past-other' => '{0} ឆ្នាំ​មុន',
'year-other' => '{0} ឆ្នាំ',
'year-past-other' => '{0} ឆ្នាំ​មុន',
- 'year-short-future-other' => 'ក្នុង​រយៈ​ពេល {0} ឆ្នាំ',
+ 'year-short-future-other' => '{0} ឆ្នាំទៀត',
'year-short-past-other' => '{0} ឆ្នាំ​មុន',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesKn.php b/MLEB/cldr/CldrNames/CldrNamesKn.php
index 7f6b2bb9..d7bfa3f2 100644
--- a/MLEB/cldr/CldrNames/CldrNamesKn.php
+++ b/MLEB/cldr/CldrNames/CldrNamesKn.php
@@ -1,11 +1,11 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'ಅಫಾರ್',
'ab' => 'ಅಬ್ಖಾಜಿಯನ್',
'ace' => 'ಅಛಿನೀಸ್',
'ach' => 'ಅಕೋಲಿ',
- 'ada' => 'ಅಡಂಗ್‌ಮೆ',
+ 'ada' => 'ಅಡಂಗ್ಮೆ',
'ady' => 'ಅಡೈಘೆ',
'ae' => 'ಅವೆಸ್ಟನ್',
'af' => 'ಆಫ್ರಿಕಾನ್ಸ್',
@@ -42,16 +42,17 @@ $languageNames = array(
'bem' => 'ಬೆಂಬಾ',
'bez' => 'ಬೆನ',
'bg' => 'ಬಲ್ಗೇರಿಯನ್',
+ 'bgn' => 'ಪಶ್ಚಿಮ ಬಲೊಚಿ',
'bho' => 'ಭೋಜಪುರಿ',
'bi' => 'ಬಿಸ್ಲಾಮಾ',
'bik' => 'ಬಿಕೊಲ್',
'bin' => 'ಬಿನಿ',
'bla' => 'ಸಿಕ್ಸಿಕಾ',
'bm' => 'ಬಂಬಾರಾ',
- 'bn' => 'ಬೆಂಗಾಲಿ',
+ 'bn' => 'ಬಾಂಗ್ಲಾ',
'bo' => 'ಟಿಬೇಟಿಯನ್',
'br' => 'ಬ್ರೆಟನ್',
- 'bra' => 'ಬ್ರಾಜ್',
+ 'bra' => 'ಬ್ರಜ್',
'brx' => 'ಬೋಡೊ',
'bs' => 'ಬೋಸ್ನಿಯನ್',
'bua' => 'ಬುರಿಯಟ್',
@@ -62,7 +63,7 @@ $languageNames = array(
'car' => 'ಕಾರಿಬ್',
'cch' => 'ಅಟ್ಸಮ್',
'ce' => 'ಚೆಚನ್',
- 'ceb' => 'ಸೆಬುಆನೋ',
+ 'ceb' => 'ಸೆಬುವಾನೊ',
'cgg' => 'ಚಿಗಾ',
'ch' => 'ಕಮೊರೊ',
'chb' => 'ಚಿಬ್ಚಾ',
@@ -72,20 +73,21 @@ $languageNames = array(
'chn' => 'ಚಿನೂಕ್ ಜಾರ್ಗೋನ್',
'cho' => 'ಚೋಕ್ಟಾವ್',
'chp' => 'ಚಿಪೆವ್ಯಾನ್',
- 'chr' => 'ಚೆರೋಕೀ',
+ 'chr' => 'ಚೆರೋಕಿ',
'chy' => 'ಚೀಯೆನ್ನೇ',
- 'ckb' => 'ಸೊರಾನಿ ಕುರ್ದಿಷ್',
+ 'ckb' => 'ಮಧ್ಯ ಕುರ್ದಿಶ್',
'co' => 'ಕೋರ್ಸಿಕನ್',
'cop' => 'ಕೊಪ್ಟಿಕ್',
'cr' => 'ಕ್ರೀ',
'crh' => 'ಕ್ರಿಮೀಯನ್ ಟರ್ಕಿಷ್',
+ 'crs' => 'ಸೆಸೆಲ್ವಾ ಕ್ರಯೋಲ್ ಫ್ರೆಂಚ್',
'cs' => 'ಜೆಕ್',
'csb' => 'ಕಶುಬಿಯನ್',
'cu' => 'ಚರ್ಚ್ ಸ್ಲಾವಿಕ್',
'cv' => 'ಚುವಾಶ್',
'cy' => 'ವೆಲ್ಶ್',
'da' => 'ಡ್ಯಾನಿಶ್',
- 'dak' => 'ಡಕೋಟ',
+ 'dak' => 'ಡಕೋಟಾ',
'dar' => 'ದರ್ಗ್ವಾ',
'dav' => 'ಟೈಟ',
'de' => 'ಜರ್ಮನ್',
@@ -104,6 +106,7 @@ $languageNames = array(
'dyo' => 'ಜೊಲ-ಫೊನ್ಯಿ',
'dyu' => 'ಡ್ಯೂಲಾ',
'dz' => 'ಜೋಂಗ್‌ಖಾ',
+ 'dzg' => 'ಡಜಾಗ',
'ebu' => 'ಎಂಬು',
'ee' => 'ಈವ್',
'efi' => 'ಎಫಿಕ್',
@@ -111,24 +114,24 @@ $languageNames = array(
'eka' => 'ಎಕಾಜುಕ್',
'el' => 'ಗ್ರೀಕ್',
'elx' => 'ಎಲಾಮೈಟ್',
- 'en' => 'ಇಂಗ್ಲೀಷ್',
- 'en-au' => 'ಆಸ್ಟ್ರೇಲಿಯನ್ ಇಂಗ್ಲೀಷ್',
- 'en-ca' => 'ಕೆನೆಡಿಯನ್ ಇಂಗ್ಲೀಷ್',
- 'en-gb' => 'ಬ್ರಿಟಿಷ್ ಇಂಗ್ಲೀಷ್',
- 'en-us' => 'ಅಮೆರಿಕನ್ ಇಂಗ್ಲೀಷ್',
+ 'en' => 'ಇಂಗ್ಲಿಷ್',
+ 'en-au' => 'ಆಸ್ಟ್ರೇಲಿಯನ್ ಇಂಗ್ಲಿಷ್',
+ 'en-ca' => 'ಕೆನೆಡಿಯನ್ ಇಂಗ್ಲಿಷ್',
+ 'en-gb' => 'ಬ್ರಿಟಿಷ್ ಇಂಗ್ಲಿಷ್',
+ 'en-us' => 'ಅಮೆರಿಕನ್ ಇಂಗ್ಲಿಷ್',
'enm' => 'ಮಧ್ಯ ಇಂಗ್ಲೀಷ್',
'eo' => 'ಎಸ್ಪೆರಾಂಟೊ',
'es' => 'ಸ್ಪ್ಯಾನಿಷ್',
- 'es-419' => 'ಲ್ಯಾಟಿನ್ ಅಮೇರಿಕನ್ ಸ್ಪ್ಯಾನಿಶ್',
+ 'es-419' => 'ಲ್ಯಾಟಿನ್ ಅಮೇರಿಕನ್ ಸ್ಪ್ಯಾನಿಷ್',
'es-es' => 'ಯುರೋಪಿಯನ್ ಸ್ಪ್ಯಾನಿಷ್',
'es-mx' => 'ಮೆಕ್ಸಿಕನ್ ಸ್ಪ್ಯಾನಿಷ್',
'et' => 'ಎಸ್ಟೊನಿಯನ್',
'eu' => 'ಬಾಸ್ಕ್',
'ewo' => 'ಇವಾಂಡೋ',
'fa' => 'ಪರ್ಶಿಯನ್',
- 'fan' => 'ಫೆಂಗ್',
+ 'fan' => 'ಫಾಂಗ್',
'fat' => 'ಫಾಂಟಿ',
- 'ff' => 'ಫುಲಾಹ್',
+ 'ff' => 'ಫುಲಾ',
'fi' => 'ಫಿನ್ನಿಶ್',
'fil' => 'ಫಿಲಿಪಿನೊ',
'fj' => 'ಫಿಜಿಯನ್',
@@ -137,6 +140,7 @@ $languageNames = array(
'fr' => 'ಫ್ರೆಂಚ್',
'fr-ca' => 'ಕೆನೆಡಿಯನ್ ಫ್ರೆಂಚ್',
'fr-ch' => 'ಸ್ವಿಸ್ ಫ್ರೆಂಚ್',
+ 'frc' => 'ಕಾಜುನ್ ಫ್ರೆಂಚ್',
'frm' => 'ಮಧ್ಯ ಫ್ರೆಂಚ್',
'fro' => 'ಪ್ರಾಚೀನ ಫ್ರೆಂಚ್',
'frr' => 'ಉತ್ತರ ಫ್ರಿಸಿಯನ್',
@@ -146,9 +150,10 @@ $languageNames = array(
'ga' => 'ಐರಿಷ್',
'gaa' => 'ಗ',
'gag' => 'ಗಗೌಜ್',
+ 'gan' => 'ಗಾನ್ ಚೀನೀಸ್',
'gay' => 'ಗಾಯೋ',
'gba' => 'ಗ್ಬಾಯಾ',
- 'gd' => 'ಸ್ಕಾಟಿಶ್ ಗ್ಯಾಲಿಕ್',
+ 'gd' => 'ಸ್ಕಾಟಿಶ್ ಗೆಲಿಕ್',
'gez' => 'ಗೀಝ್',
'gil' => 'ಗಿಲ್ಬರ್ಟೀಸ್',
'gl' => 'ಗ್ಯಾಲಿಶಿಯನ್',
@@ -167,8 +172,9 @@ $languageNames = array(
'gwi' => 'ಗ್ವಿಚ್‌ಇನ್',
'ha' => 'ಹೌಸಾ',
'hai' => 'ಹೈಡಾ',
+ 'hak' => 'ಹಕ್',
'haw' => 'ಹವಾಯಿಯನ್',
- 'he' => 'ಹೀಬ್ರ್ಯೂ',
+ 'he' => 'ಹೀಬ್ರೂ',
'hi' => 'ಹಿಂದಿ',
'hil' => 'ಹಿಲಿಗೇನನ್',
'hit' => 'ಹಿಟ್ಟಿಟೆ',
@@ -176,13 +182,15 @@ $languageNames = array(
'ho' => 'ಹಿರಿ ಮೊಟು',
'hr' => 'ಕ್ರೊಯೇಶಿಯನ್',
'hsb' => 'ಅಪ್ಪರ್ ಸರ್ಬಿಯನ್',
- 'ht' => 'ಹೈತಿಯನ್',
+ 'hsn' => 'ಶಯಾಂಗ್ ಚೀನೀಸೇ',
+ 'ht' => 'ಹೈಟಿಯನ್ ಕ್ರಿಯೋಲಿ',
'hu' => 'ಹಂಗೇರಿಯನ್',
'hup' => 'ಹೂಪಾ',
'hy' => 'ಅರ್ಮೇನಿಯನ್',
'hz' => 'ಹೆರೆರೊ',
'ia' => 'ಇಂಟರ್‌ಲಿಂಗ್ವಾ',
'iba' => 'ಇಬಾನ್',
+ 'ibb' => 'ಇಬಿಬಿಯೋ',
'id' => 'ಇಂಡೋನೇಶಿಯನ್',
'ie' => 'ಇಂಟರ್ಲಿಂಗ್',
'ig' => 'ಇಗ್ಬೊ',
@@ -191,7 +199,7 @@ $languageNames = array(
'ilo' => 'ಇಲ್ಲಿಕೋ',
'inh' => 'ಇಂಗುಷ್',
'io' => 'ಇಡೊ',
- 'is' => 'ಐಸ್ಲಾಂಡಿಕ್',
+ 'is' => 'ಐಸ್‌ಲ್ಯಾಂಡಿಕ್',
'it' => 'ಇಟಾಲಿಯನ್',
'iu' => 'ಇನುಕ್ಟಿಟುಟ್',
'ja' => 'ಜಾಪನೀಸ್',
@@ -213,20 +221,21 @@ $languageNames = array(
'kde' => 'ಮ್ಯಾಕೊಂಡ್',
'kea' => 'ಕಬುವೆರ್ಡಿಯನು',
'kfo' => 'ಕೋರೋ',
- 'kg' => 'ಕೊಂಗೊ',
+ 'kg' => 'ಕಾಂಗೋ',
'kha' => 'ಖಾಸಿ',
'kho' => 'ಖೋಟಾನೀಸ್',
'khq' => 'ಕೊಯ್ರ ಚೀನಿ',
'ki' => 'ಕಿಕುಯು',
'kj' => 'ಕ್ವಾನ್‌ಯಾಮಾ',
'kk' => 'ಕಝಕ್',
+ 'kkj' => 'ಕಾಕೊ',
'kl' => 'ಕಲಾಲ್ಲಿಸುಟ್',
'kln' => 'ಕಲೆಂಜಿನ್',
'km' => 'ಖಮೇರ್',
'kmb' => 'ಕಿಂಬುಂಡು',
'kn' => 'ಕನ್ನಡ',
'ko' => 'ಕೊರಿಯನ್',
- 'koi' => 'ಕೊಮಿ-ಪರ್ಮ್ಯಕ್',
+ 'koi' => 'ಕೋಮಿ-ಪರ್ಮ್ಯಕ್',
'kok' => 'ಕೊಂಕಣಿ',
'kos' => 'ಕೊಸರಿಯನ್',
'kpe' => 'ಕಪೆಲ್ಲೆ',
@@ -237,18 +246,19 @@ $languageNames = array(
'ks' => 'ಕಾಶ್ಮೀರಿ',
'ksb' => 'ಶಂಬಲ',
'ksf' => 'ಬಫಿಯ',
+ 'ksh' => 'ಕಲೊಗ್ನಿಯನ್',
'ku' => 'ಕುರ್ದಿಷ್',
'kum' => 'ಕುಮೈಕ್',
'kut' => 'ಕುಟೇನಾಯ್',
'kv' => 'ಕೋಮಿ',
- 'kw' => 'ಕೋರ್ನಿಷ್',
+ 'kw' => 'ಕಾರ್ನಿಷ್',
'ky' => 'ಕಿರ್ಗಿಜ್',
'la' => 'ಲ್ಯಾಟಿನ್',
- 'lad' => 'ಕಾಡಿನೋ',
+ 'lad' => 'ಲ್ಯಾಡಿನೋ',
'lag' => 'ಲಾಂಗಿ',
'lah' => 'ಲಹಂಡಾ',
'lam' => 'ಲಂಬಾ',
- 'lb' => 'ಲಕ್ಸಂಬರ್ಗ್',
+ 'lb' => 'ಲಕ್ಸಂಬರ್ಗಿಷ್',
'lez' => 'ಲೆಜ್ಘಿಯನ್',
'lg' => 'ಗಾಂಡಾ',
'li' => 'ಲಿಂಬರ್ಗಿಶ್',
@@ -256,16 +266,18 @@ $languageNames = array(
'ln' => 'ಲಿಂಗಾಲ',
'lo' => 'ಲಾವೋ',
'lol' => 'ಮೊಂಗೋ',
+ 'lou' => 'ಲೂಯಿಸಿಯಾನ ಕ್ರಿಯೋಲ್',
'loz' => 'ಲೋಝಿ',
+ 'lrc' => 'ಉತ್ತರ ಲೂರಿ',
'lt' => 'ಲಿಥುವೇನಿಯನ್',
'lu' => 'ಲೂಬಾ-ಕಟಾಂಗಾ',
'lua' => 'ಲುಬ-ಲುಲಾ',
'lui' => 'ಲೂಯಿಸೆನೋ',
'lun' => 'ಲುಂಡಾ',
'luo' => 'ಲುವೋ',
- 'lus' => 'ಲುಶಾಯ್',
+ 'lus' => 'ಮಿಝೋ',
'luy' => 'ಲುಯಿಯ',
- 'lv' => 'ಲಟ್ವಿಯನ್',
+ 'lv' => 'ಲಾಟ್ವಿಯನ್',
'mad' => 'ಮದುರೀಸ್',
'mag' => 'ಮಗಾಹಿ',
'mai' => 'ಮೈಥಿಲಿ',
@@ -298,16 +310,19 @@ $languageNames = array(
'mua' => 'ಮುಂಡಂಗ್',
'mul' => 'ಬಹುಸಂಖ್ಯೆಯ ಭಾಷೆಗಳು',
'mus' => 'ಕ್ರೀಕ್',
- 'mwl' => 'ಕಿರಾಂಡೀಸ್',
+ 'mwl' => 'ಮಿರಾಂಡೀಸ್',
'mwr' => 'ಮಾರ್ವಾಡಿ',
'my' => 'ಬರ್ಮೀಸ್',
- 'myv' => 'ಎರ್‌ಝ್ಯಾ',
+ 'myv' => 'ಎರ್ಝ್ಯಾ',
+ 'mzn' => 'ಮಜಂದೆರಾನಿ',
'na' => 'ನೌರು',
+ 'nan' => 'ನಾನ್',
'nap' => 'ನಿಯಾಪೊಲಿಟನ್',
'naq' => 'ನಮ',
'nb' => 'ನಾರ್ವೆಜಿಯನ್ ಬೊಕ್ಮಲ್',
'nd' => 'ಉತ್ತರ ದೆಬೆಲೆ',
'nds' => 'ಲೋ ಜರ್ಮನ್',
+ 'nds-nl' => 'ಲೋ ಸ್ಯಾಕ್ಸನ್',
'ne' => 'ನೇಪಾಳಿ',
'new' => 'ನೇವಾರೀ',
'ng' => 'ಡೋಂಗಾ',
@@ -316,7 +331,8 @@ $languageNames = array(
'nl' => 'ಡಚ್',
'nl-be' => 'ಫ್ಲೆಮಿಷ್',
'nmg' => 'ಖ್ವಾಸಿಯೊ',
- 'nn' => 'ನಾರ್ವೆಜಿಯನ್ ನೈನೊಸ್ಕ್',
+ 'nn' => 'ನಾರ್ವೇಜಿಯನ್ ನೈನಾರ್ಸ್ಕ್',
+ 'nnh' => 'ನಿಂಬೂನ್',
'no' => 'ನಾರ್ವೇಜಿಯನ್',
'nog' => 'ನೊಗಾಯ್',
'non' => 'ಪ್ರಾಚೀನ ನೋರ್ಸ್',
@@ -333,8 +349,8 @@ $languageNames = array(
'nzi' => 'ಜೀಮಾ',
'oc' => 'ಒಸಿಟನ್',
'oj' => 'ಒಜಿಬ್ವಾ',
- 'om' => 'ಓರೊಮೋ',
- 'or' => 'ಒರಿಯಾ',
+ 'om' => 'ಒರೊಮೊ',
+ 'or' => 'ಒಡಿಯ',
'os' => 'ಒಸ್ಸೆಟಿಕ್',
'osa' => 'ಓಸಾಜ್',
'ota' => 'ಒಟ್ಟೋಮನ್ ತುರ್ಕಿಷ್',
@@ -342,13 +358,15 @@ $languageNames = array(
'pag' => 'ಪಂಗಾಸಿನನ್',
'pal' => 'ಪಹ್ಲವಿ',
'pam' => 'ಪಂಪಾಂಗಾ',
- 'pap' => 'ಪಾಪಿಯಮೆಂಟೋ',
+ 'pap' => 'ಪಪಿಯಾಮೆಂಟೊ',
'pau' => 'ಪಲುಆನ್',
+ 'pcm' => 'ನೈಜೀರಿಯನ್ ಪಿಡ್ಗಿನ್',
'peo' => 'ಪ್ರಾಚೀನ ಪರ್ಶಿಯನ್',
'phn' => 'ಫೀನಿಷಿಯನ್',
'pi' => 'ಪಾಲಿ',
- 'pl' => 'ಪೋಲಿಶ್',
+ 'pl' => 'ಪೊಲಿಶ್',
'pon' => 'ಪೋನ್‌‌ಪಿಯನ್',
+ 'prg' => 'ಪ್ರಶಿಯನ್',
'pro' => 'ಪ್ರಾಚೀನ ಪ್ರೊವೆನ್ಶಿಯಲ್',
'ps' => 'ಪಾಷ್ಟೋ',
'pt' => 'ಪೋರ್ಚುಗೀಸ್',
@@ -356,31 +374,33 @@ $languageNames = array(
'pt-pt' => 'ಯೂರೋಪಿಯನ್ ಪೋರ್ಚುಗೀಸ್',
'qu' => 'ಕ್ವೆಚುವಾ',
'quc' => 'ಕಿಷೆ',
- 'raj' => 'ರಾಜಾಸ್ಥಾನಿ',
+ 'raj' => 'ರಾಜಸ್ಥಾನಿ',
'rap' => 'ರಾಪಾನುಯಿ',
'rar' => 'ರಾರೋಟೊಂಗನ್',
- 'rm' => 'ರೊಮಾನ್ಷ್',
+ 'rm' => 'ರೊಮಾನ್ಶ್',
'rn' => 'ರುಂಡಿ',
'ro' => 'ರೊಮೇನಿಯನ್',
- 'ro-md' => 'ಮೊಲ್ಡೆವಿಯನ್',
+ 'ro-md' => 'ಮಾಲ್ಡೇವಿಯನ್',
'rof' => 'ರೊಂಬೊ',
'rom' => 'ರೋಮಾನಿ',
'ru' => 'ರಷ್ಯನ್',
'rup' => 'ಅರೋಮಾನಿಯನ್',
- 'rw' => 'ಕೀನ್ಯಾರುವಾಂಡಾ',
+ 'rw' => 'ಕಿನ್ಯಾರ್‌ವಾಂಡಾ',
'rwk' => 'ರುವ',
'sa' => 'ಸಂಸ್ಕೃತ',
'sad' => 'ಸಂಡಾವೇ',
- 'sah' => 'ಯಾಕುಟ್',
+ 'sah' => 'ಸಖಾ',
'sam' => 'ಸಮರಿಟನ್ ಅರಾಮಿಕ್',
'saq' => 'ಸಂಬುರು',
'sas' => 'ಸಸಾಕ್',
'sat' => 'ಸಂತಾಲಿ',
+ 'sba' => 'ನಂಬೇ',
'sbp' => 'ಸಂಗು',
'sc' => 'ಸರ್ಡೀನಿಯನ್',
'scn' => 'ಸಿಸಿಲಿಯನ್',
'sco' => 'ಸ್ಕೋಟ್ಸ್',
'sd' => 'ಸಿಂಧಿ',
+ 'sdh' => 'ದಕ್ಷಿಣ ಕುರ್ದಿಶ್',
'se' => 'ಉತ್ತರ ಸಾಮಿ',
'seh' => 'ಸೆನ',
'sel' => 'ಸೆಲ್ಕಪ್',
@@ -397,17 +417,18 @@ $languageNames = array(
'sm' => 'ಸಮೋವನ್',
'sma' => 'ದಕ್ಷಿಣ ಸಾಮಿ',
'smj' => 'ಲೂಲ್ ಸಾಮಿ',
- 'smn' => 'ಇನರಿ ಸಾಮಿ',
+ 'smn' => 'ಇನಾರಿ ಸಮೀ',
'sms' => 'ಸ್ಕೋಟ್ ಸಾಮಿ',
'sn' => 'ಶೋನಾ',
'snk' => 'ಸೋನಿಂಕೆ',
'so' => 'ಸೊಮಾಲಿ',
- 'sog' => 'ಸೋಗ್ಡಿಏನ್',
+ 'sog' => 'ಸೋಗ್ಡಿಯನ್',
'sq' => 'ಅಲ್ಬೇನಿಯನ್',
- 'sr' => 'ಸರ್ಬಿಯನ್',
+ 'sr' => 'ಸೆರ್ಬಿಯನ್',
'srn' => 'ಸ್ರಾನನ್ ಟೋಂಗೋ',
'srr' => 'ಸೇರೇರ್',
'ss' => 'ಸ್ವಾತಿ',
+ 'ssy' => 'ಸಹೊ',
'st' => 'ದಕ್ಷಿಣ ಸೋಥೋ',
'su' => 'ಸುಂಡಾನೀಸ್',
'suk' => 'ಸುಕುಮಾ',
@@ -415,10 +436,10 @@ $languageNames = array(
'sux' => 'ಸುಮೇರಿಯನ್',
'sv' => 'ಸ್ವೀಡಿಷ್',
'sw' => 'ಸ್ವಹಿಲಿ',
+ 'sw-cd' => 'ಕಾಂಗೊ ಸ್ವಹಿಲಿ',
'swb' => 'ಕೊಮೊರಿಯನ್',
- 'swc' => 'ಕಾಂಗೊ ಸ್ವಹಿಲಿ',
'syc' => 'ಶಾಸ್ತ್ರೀಯ ಸಿರಿಯಕ್',
- 'syr' => 'ಸಿರಿಯಕ್',
+ 'syr' => 'ಸಿರಿಯಾಕ್',
'ta' => 'ತಮಿಳು',
'te' => 'ತೆಲುಗು',
'tem' => 'ಟಿಮ್ನೆ',
@@ -441,6 +462,7 @@ $languageNames = array(
'tog' => 'ನ್ಯಾಸಾ ಟೋಂಗಾ',
'tpi' => 'ಟೋಕ್ ಪಿಸಿನ್',
'tr' => 'ಟರ್ಕಿಶ್',
+ 'trv' => 'ಟರೊಕೊ',
'ts' => 'ಸೋಂಗಾ',
'tsi' => 'ಸಿಂಶಿಯನ್',
'tt' => 'ಟಾಟರ್',
@@ -448,39 +470,44 @@ $languageNames = array(
'tvl' => 'ಟುವಾಲು',
'tw' => 'ಟ್ವಿ',
'twq' => 'ಟಸವಕ್',
- 'ty' => 'ತಹಿತಿಯನ್',
+ 'ty' => 'ಟಹೀಟಿಯನ್',
'tyv' => 'ಟುವಿನಿಯನ್',
'tzm' => 'ಮಧ್ಯ ಅಟ್ಲಾಸ್ ಟಮಜೈಟ್',
'udm' => 'ಉಡ್‌ಮುರ್ಟ್',
'ug' => 'ಉಯಿಘರ್',
'uga' => 'ಉಗಾರಿಟಿಕ್',
- 'uk' => 'ಉಕ್ರೈನಿಯನ್',
+ 'uk' => 'ಉಕ್ರೇನಿಯನ್',
'umb' => 'ಉಂಬುಂಡು',
- 'und' => 'ಅಪರಿಚಿತ ಅಥವಾ ಅಮಾನ್ಯ ಭಾಷೆ',
+ 'und' => 'ಅಪರಿಚಿತ ಭಾಷೆ',
'ur' => 'ಉರ್ದು',
'uz' => 'ಉಜ್ಬೇಕ್',
'vai' => 'ವಾಯಿ',
've' => 'ವೆಂಡಾ',
- 'vi' => 'ವಿಯೇಟ್ನಾಮೀಸ್',
+ 'vi' => 'ವಿಯೆಟ್ನಾಮೀಸ್',
'vo' => 'ವೋಲಾಪುಕ್',
'vot' => 'ವೋಟಿಕ್',
'vun' => 'ವುಂಜೊ',
'wa' => 'ವಾಲೂನ್',
- 'wal' => 'ವಲಾಮೋ',
+ 'wae' => 'ವಾಲ್ಸರ್',
+ 'wal' => 'ವಲಾಯ್ತಾ',
'war' => 'ವರಾಯ್',
'was' => 'ವಾಷೋ',
+ 'wbp' => 'ವಾರ್ಲ್‌ಪಿರಿ',
'wo' => 'ವೋಲೋಫ್',
- 'xal' => 'ಕಲ್‌ಮೈಕ್',
+ 'wuu' => 'ವು',
+ 'xal' => 'ಕಲ್ಮೈಕ್',
'xh' => 'ಕ್ಸೋಸ',
'xog' => 'ಸೊಗ',
- 'yao' => 'ಯಾಓ',
+ 'yao' => 'ಯಾವೊ',
'yap' => 'ಯಪೀಸೆ',
- 'yi' => 'ಯಡ್ಡಿಶ್',
+ 'yav' => 'ಯಾಂಗ್ಬೆನ್',
+ 'ybb' => 'ಯೆಂಬಾ',
+ 'yi' => 'ಯಿಡ್ಡಿಶ್',
'yo' => 'ಯೊರುಬಾ',
- 'yue' => 'ಕಾಂಟೊನೀಸ್',
+ 'yue' => 'ಕ್ಯಾಂಟನೀಸ್',
'za' => 'ಝೂವಾಂಗ್',
'zap' => 'ಝೋಪೊಟೆಕ್',
- 'zbl' => 'ಬ್ಲಿಸ್‌ಸಿಂಬಲ್ಸ್',
+ 'zbl' => 'ಬ್ಲಿಸ್ಸಿಂಬಲ್ಸ್',
'zen' => 'ಝೆನಾಗಾ',
'zgh' => 'ಸ್ಟ್ಯಾಂಡರ್ಡ್ ಮೊರೊಕ್ಕನ್ ಟಮಜೈಟ್',
'zh' => 'ಚೈನೀಸ್',
@@ -490,11 +517,11 @@ $languageNames = array(
'zun' => 'ಝೂನಿ',
'zxx' => 'ಯಾವುದೇ ಭಾಷಾಸಂಬಂಧಿ ವಿಷಯವಿಲ್ಲ',
'zza' => 'ಜಾಝಾ',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'AED' => 'ಸಂಯುಕ್ತ ಅರಬ್‌ ಎಮಿರೇಟ್‌‌ಗಳ ದಿರಾಮ್‌‌',
- 'AFN' => 'ಅಫ್‌ಘನ್ ಅಫಗಾನಿ',
+ 'AFN' => 'ಅಫ್‌ಘನ್ ಅಫಘಾನಿ',
'ALL' => 'ಅಲ್‌ಬೇನಿಯನ್ ಲೆಕ್',
'AMD' => 'ಅರ್ಮೆನಿಯನ್ ಡ್ರಾಮ್',
'ANG' => 'ನೆದರ್ಲೆಂಡ್ಸ್ ಆಂಟಿಲಿಯನ್ ಗಿಲ್ಡರ್',
@@ -516,12 +543,14 @@ $currencyNames = array(
'BSD' => 'ಬಹಾಮಿಯನ್ ಡಾಲರ್',
'BTN' => 'ಭೂತಾನೀಸ್ ನುಲ್ತರಮ್',
'BWP' => 'ಬೋಟ್ಸ್‌ವಾನನ್ ಪುಲಾ',
- 'BYR' => 'ಬೆಲಾರುಸಿಯನ್ ರೂಬಲ್',
+ 'BYN' => 'ಬೆಲಾರುಸಿಯನ್ ರೂಬಲ್',
+ 'BYR' => 'ಬೆಲಾರುಸಿಯನ್ ರೂಬಲ್ (2000–2016)',
'BZD' => 'ಬೆಲೀಜ್ ಡಾಲರ್',
'CAD' => 'ಕೆನಡಾದ ಡಾಲರ್',
'CDF' => 'ಕಾಂಗೋಲೀಸ್ ಫ್ರಾಂಕ್',
'CHF' => 'ಸ್ವಿಸ್ ಫ್ರಾಂಕ್',
'CLP' => 'ಚಿಲಿಯ ಪೆಸೊ',
+ 'CNH' => 'CNH',
'CNY' => 'ಚೈನೀಸ್ ಯುವಾನ್',
'COP' => 'ಕೊಲೊಂಬಿಯೋದ ಪೆಸೊ',
'CRC' => 'ಕೋಸ್ಟ ರಿಕನ್ ಕೊಲನ್',
@@ -539,7 +568,7 @@ $currencyNames = array(
'EUR' => 'ಯೂರೊ',
'FJD' => 'ಫಿಜಿಯನ್ ಡಾಲರ್',
'FKP' => 'ಫಾಲ್ಕ್‌ಲ್ಯಾಂಡ್ ದ್ವೀಪಗಳ ಪೌಂಡ್',
- 'GBP' => 'ಬ್ರಿಟೀಷ್ ಪೌಂಡ್ ಸ್ಟೆರ್ಲಿಂಗ್',
+ 'GBP' => 'ಬ್ರಿಟೀಷ್ ಪೌಂಡ್',
'GEL' => 'ಜಾರ್ಜಿಯಾದ ಲಾರಿ',
'GHS' => 'ಘಾನಾದ ಸೆದಿ',
'GIP' => 'ಗಿಬ್ರಾಲ್ಟರ್ ಪೌಂಡ್',
@@ -554,14 +583,14 @@ $currencyNames = array(
'HUF' => 'ಹಂಗೇರಿಯನ್ ಫೋರಿಂಟ್',
'IDR' => 'ಇಂಡೊನೇಷ್ಯಾ ರುಪೈ',
'ILS' => 'ಇಸ್ರೇಲಿ ನ್ಯೂ ಶೇಖಲ್',
- 'INR' => 'ಭಾರತೀಯ ರುಪಾಯಿ',
- 'IQD' => 'ಇರಾಖಿಯನ್ ದಿನಾರ್',
+ 'INR' => 'ಭಾರತೀಯ ರೂಪಾಯಿ',
+ 'IQD' => 'ಇರಾಕಿಯನ್ ದಿನಾರ್‌',
'IRR' => 'ಇರಾನಿಯನ್ ರಿಯಲ್',
'ISK' => 'ಐಸ್‌ಲ್ಯಾಂಡಿಕ್ ಕ್ರೋನಾ',
'JMD' => 'ಜಮೈಕನ್ ಡಾಲರ್',
'JOD' => 'ಜೋರ್ಡಾನಿಯನ್ ದಿನಾರ್',
'JPY' => 'ಜಪಾನೀಸ್ ಯೆನ್',
- 'KES' => 'ಕೆನ್ಯನ್ ಶಿಲ್ಲಿಂಗ್',
+ 'KES' => 'ಕೀನ್ಯಾದ ಶಿಲ್ಲಿಂಗ್‌',
'KGS' => 'ಕಿರ್ಗಿಸ್ತಾನಿ ಸೋಮ್',
'KHR' => 'ಕಾಂಬೋಡಿಯನ್ ರಿಯಲ್',
'KMF' => 'ಕೊಮೊರಿಯನ್ ಫ್ರಾಂಕ್',
@@ -585,7 +614,8 @@ $currencyNames = array(
'MMK' => 'ಮ್ಯಾನ್ಮಾರ್ ಕ್ಯಾಟ್',
'MNT' => 'ಮಂಗೋಲಿಯಾದ ತುಗ್ರಿಕ್‌‌',
'MOP' => 'ಮಕ್ಯೂದ ಪಟಕಾ',
- 'MRO' => 'ಮೌರೀಶಿಯನಿಯನ್ ಒಗಿಯ',
+ 'MRO' => 'ಮೌರೀಶಿಯನಿಯನ್ ಒಗಿಯ (1973–2017)',
+ 'MRU' => 'ಮೌರೀಶಿಯನಿಯನ್ ಒಗಿಯ',
'MUR' => 'ಮಾರಿಷಿಯನ್ ರುಪಿ',
'MVR' => 'ಮಾಲ್ಡೀವಿಯನ್ ರುಫಿಯಾ',
'MWK' => 'ಮಲಾವಿಯ ಕ್ವಾಚ',
@@ -600,7 +630,7 @@ $currencyNames = array(
'NZD' => 'ನ್ಯೂಜಿಲ್ಯಾಂಡ್ ಡಾಲರ್',
'OMR' => 'ಒಮಾನಿ ರಿಯಲ್',
'PAB' => 'ಪನಾಮಾನಿಯನ್ ಬಲ್ಬೋವಾ',
- 'PEN' => 'ಪೆರುವಿಯನ್ ನುಯೆವೊ ಸೊಲ್',
+ 'PEN' => 'ಪೆರುವಿಯನ್ ಸೊಲ್',
'PGK' => 'ಪಪುವಾ ನ್ಯೂ ಗಿನಿಯನ್ ಕಿನಾ',
'PHP' => 'ಫಿಲಿಪ್ಪೈನ್ ಪೆಸೊ',
'PKR' => 'ಪಾಕಿಸ್ತಾನದ ರುಪೀ',
@@ -622,13 +652,14 @@ $currencyNames = array(
'SOS' => 'ಸೊಮಾಲಿ ಶಿಲ್ಲಿಂಗ್',
'SRD' => 'ಸುರಿನಾಮೀಸ್ ಡಾಲರ್',
'SSP' => 'ದಕ್ಷಿಣ ಸೂಡಾನೀಸ್ ಪೌಂಡ್‍',
- 'STD' => 'ಸಾವೊ ಟೋಮ್ ಮತ್ತು ಪ್ರಿನ್ಸಿಪ್ ದೊಬ್ರಾ',
+ 'STD' => 'ಸಾವೊ ಟೋಮ್ ಮತ್ತು ಪ್ರಿನ್ಸಿಪ್ ದೊಬ್ರಾ (1977–2017)',
+ 'STN' => 'ಸಾವೊ ಟೋಮ್ ಮತ್ತು ಪ್ರಿನ್ಸಿಪ್ ದೊಬ್ರಾ',
'SYP' => 'ಸಿರಿಯನ್ ಪೌಂಡ್',
'SZL' => 'ಸ್ವಾಜಿ ಲಿಲಂಗೆನಿ',
'THB' => 'ಥಾಯ್ ಬಹ್ತ್',
'TJS' => 'ತಜಕಿಸ್ತಾನಿ ಸೊಮೋನಿ',
'TMT' => 'ಟರ್ಕ್‍ಮೆನಿಸ್ತಾನ್ ಮನಾತ್',
- 'TND' => 'ತುನೀಸಿಯನ್ ದಿನಾರ್',
+ 'TND' => 'ಟ್ಯುನೀಷಿಯನ್‌ ದಿನಾರ್',
'TOP' => 'ಟೊಂಗಾ ಪಾಂಗ',
'TRY' => 'ಟರ್ಕಿಶ್ ಲಿರಾ',
'TTD' => 'ಟ್ರಿನಿಡಾಡ್ ಮತ್ತು ಟೊಬಾಗೊ ಡಾಲರ್',
@@ -639,22 +670,23 @@ $currencyNames = array(
'USD' => 'ಅಮೆರಿಕದ ಡಾಲರ್‌',
'UYU' => 'ಉರುಗ್ವೆಯ ಪೆಸೊ',
'UZS' => 'ಉಜ್ಬೇಕಿಸ್ತಾನ್ ಸೊಮ್',
- 'VEF' => 'ವೆನಿಜುಲಿಯನ್ ಬೊಲಿವರ್',
+ 'VEF' => 'ವೆನಿಜುಲಿಯನ್ ಬೊಲಿವರ್ (2008–2018)',
+ 'VES' => 'ವೆನಿಜುಲಿಯನ್ ಬೊಲಿವರ್',
'VND' => 'ವಿಯೆಟ್ನಾಮೀಸ್ ಡಾಂಗ್',
'VUV' => 'ವನೂತು ವತು',
'WST' => 'ಸಮೋನ್ ತಲಾ',
- 'XAF' => 'CFA ಫ್ರಾಂಕ್ BEAC',
+ 'XAF' => 'ಮಧ್ಯ ಆಫ್ರಿಕನ್ CFA ಫ್ರಾಂಕ್',
'XCD' => 'ಪೂರ್ವ ಕೆರೀಬಿಯನ್ ಡಾಲರ್',
- 'XOF' => 'CFA ಫ್ರಾಂಕ್ BCEAO',
- 'XPF' => 'CFP ಫ್ರಾಂಕ್',
- 'XXX' => 'ಗೊತ್ತಿಲ್ಲದ ಕರೆನ್ಸಿ',
+ 'XOF' => 'ಪಶ್ಚಿಮ ಆಫ್ರಿಕಾದ [CFA] ಫ್ರಾಂಕ್',
+ 'XPF' => '[CFP] ಫ್ರಾಂಕ್',
+ 'XXX' => 'ಅಪರಿಚಿತ ಕರೆನ್ಸಿ',
'YER' => 'ಯೆಮೆನಿ ರಿಯಲ್',
'ZAR' => 'ದಕ್ಷಿಣ ಆಫ್ರಿಕನ್ ರಾಂಡ್',
'ZMK' => 'ಜಾಂಬಿಯಾ ಕ್ವಾಚ (1968–2012)',
'ZMW' => 'ಜಾಂಬಿಯಾ ಕ್ವಾಚ',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'AED' => 'AED',
'AFN' => 'AFN',
'ALL' => 'ALL',
@@ -678,12 +710,14 @@ $currencySymbols = array(
'BSD' => 'BSD',
'BTN' => 'BTN',
'BWP' => 'BWP',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CA$',
'CDF' => 'CDF',
'CHF' => 'CHF',
'CLP' => 'CLP',
+ 'CNH' => 'CNH',
'CNY' => 'CN¥',
'COP' => 'COP',
'CRC' => 'CRC',
@@ -747,6 +781,7 @@ $currencySymbols = array(
'MNT' => 'MNT',
'MOP' => 'MOP',
'MRO' => 'MRO',
+ 'MRU' => 'MRU',
'MUR' => 'MUR',
'MVR' => 'MVR',
'MWK' => 'MWK',
@@ -784,6 +819,7 @@ $currencySymbols = array(
'SRD' => 'SRD',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'STN',
'SYP' => 'SYP',
'SZL' => 'SZL',
'THB' => '฿',
@@ -801,6 +837,7 @@ $currencySymbols = array(
'UYU' => 'UYU',
'UZS' => 'UZS',
'VEF' => 'VEF',
+ 'VES' => 'VES',
'VND' => '₫',
'VUV' => 'VUV',
'WST' => 'WST',
@@ -811,34 +848,33 @@ $currencySymbols = array(
'YER' => 'YER',
'ZAR' => 'ZAR',
'ZMW' => 'ZMW',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'ಅಸೆನ್ಶನ್ ದ್ವೀಪ',
'AD' => 'ಅಂಡೋರಾ',
- 'AE' => 'ಸಂಯುಕ್ತ ಅರಬ್ ಎಮಿರೇಟಸ್',
- 'AF' => 'ಅಫಘಾನಿಸ್ಥಾನ್',
+ 'AE' => 'ಯುನೈಟೆಡ್ ಅರಬ್ ಎಮಿರೇಟ್ಸ್',
+ 'AF' => 'ಅಫಘಾನಿಸ್ಥಾನ',
'AG' => 'ಆಂಟಿಗುವಾ ಮತ್ತು ಬರ್ಬುಡಾ',
- 'AI' => 'ಆಂಗುಯಿಲ್ಲಾ',
+ 'AI' => 'ಆಂಗ್ವಿಲ್ಲಾ',
'AL' => 'ಅಲ್ಬೇನಿಯಾ',
- 'AM' => 'ಅರ್ಮೇನಿಯಾ',
- 'AN' => 'ನೆದರ್‌ಲ್ಯಾಂಡ್',
+ 'AM' => 'ಆರ್ಮೇನಿಯ',
'AO' => 'ಅಂಗೋಲಾ',
'AQ' => 'ಅಂಟಾರ್ಟಿಕಾ',
'AR' => 'ಅರ್ಜೆಂಟಿನಾ',
'AS' => 'ಅಮೇರಿಕನ್ ಸಮೋವಾ',
'AT' => 'ಆಸ್ಟ್ರಿಯಾ',
- 'AU' => 'ಆಸ್ಟ್ರೇಲಿಯ',
+ 'AU' => 'ಆಸ್ಟ್ರೇಲಿಯಾ',
'AW' => 'ಅರುಬಾ',
'AX' => 'ಆಲ್ಯಾಂಡ್ ದ್ವೀಪಗಳು',
'AZ' => 'ಅಜರ್ಬೈಜಾನ್',
'BA' => 'ಬೋಸ್ನಿಯಾ ಮತ್ತು ಹರ್ಜೆಗೋವಿನಾ',
'BB' => 'ಬಾರ್ಬಡೋಸ್',
- 'BD' => 'ಬಾಂಗ್ಲಾದೇಶ್',
+ 'BD' => 'ಬಾಂಗ್ಲಾದೇಶ',
'BE' => 'ಬೆಲ್ಜಿಯಮ್',
- 'BF' => 'ಬುರ್ಕಿನಾ ಫಾಸೋ',
+ 'BF' => 'ಬುರ್ಕಿನಾ ಫಾಸೊ',
'BG' => 'ಬಲ್ಗೇರಿಯಾ',
- 'BH' => 'ಬಹರೈನ್',
+ 'BH' => 'ಬಹ್ರೇನ್',
'BI' => 'ಬುರುಂಡಿ',
'BJ' => 'ಬೆನಿನ್',
'BL' => 'ಸೇಂಟ್ ಬಾರ್ಥೆಲೆಮಿ',
@@ -862,36 +898,37 @@ $countryNames = array(
'CI' => 'ಕೋತ್‌ ದಿವಾರ್‍',
'CK' => 'ಕುಕ್ ದ್ವೀಪಗಳು',
'CL' => 'ಚಿಲಿ',
- 'CM' => 'ಕ್ಯಾಮರೋನ್',
+ 'CM' => 'ಕ್ಯಾಮರೂನ್',
'CN' => 'ಚೀನಾ',
'CO' => 'ಕೊಲಂಬಿಯಾ',
- 'CP' => 'ಕ್ಲಿಪ್ಪರ್‌ಟಾನ್ ದ್ವೀಪಗಳು',
+ 'CP' => 'ಕ್ಲಿಪ್ಪರ್‌ಟಾನ್ ದ್ವೀಪ',
'CR' => 'ಕೊಸ್ಟಾ ರಿಕಾ',
'CU' => 'ಕ್ಯೂಬಾ',
'CV' => 'ಕೇಪ್ ವರ್ಡೆ',
'CW' => 'ಕುರಾಕಾವ್',
'CX' => 'ಕ್ರಿಸ್ಮಸ್ ದ್ವೀಪ',
'CY' => 'ಸೈಪ್ರಸ್',
- 'CZ' => 'ಚೆಕ್ ರಿಪಬ್ಲಿಕ್',
+ 'CZ' => 'ಝೆಕಿಯಾ',
'DE' => 'ಜರ್ಮನಿ',
'DG' => 'ಡೈಗೋ ಗಾರ್ಸಿಯ',
- 'DJ' => 'ಜಿಬೋಟಿ',
+ 'DJ' => 'ಜಿಬೂಟಿ',
'DK' => 'ಡೆನ್ಮಾರ್ಕ್',
'DM' => 'ಡೊಮಿನಿಕಾ',
'DO' => 'ಡೊಮೆನಿಕನ್ ರಿಪಬ್ಲಿಕ್',
- 'DZ' => 'ಅಲ್ಗೇರಿಯಾ',
+ 'DZ' => 'ಅಲ್ಜೀರಿಯ',
'EA' => 'ಸೆಯುಟಾ ಹಾಗೂ ಮೆಲಿಲ್ಲಾ',
'EC' => 'ಈಕ್ವೆಡಾರ್',
'EE' => 'ಎಸ್ಟೋನಿಯಾ',
'EG' => 'ಈಜಿಪ್ಟ್',
'EH' => 'ಪಶ್ಚಿಮ ಸಹಾರಾ',
- 'ER' => 'ಏರಿಟ್ರಿಯಾ',
+ 'ER' => 'ಎರಿಟ್ರಿಯಾ',
'ES' => 'ಸ್ಪೇನ್',
'ET' => 'ಇಥಿಯೋಪಿಯಾ',
- 'EU' => 'ಯುರೋಪಿಯನ್ ಯೂನಿಯನ್',
+ 'EU' => 'ಯುರೋಪಿಯನ್ ಒಕ್ಕೂಟ',
+ 'EZ' => 'ಯೂರೋಝೋನ್‌',
'FI' => 'ಫಿನ್‌ಲ್ಯಾಂಡ್',
'FJ' => 'ಫಿಜಿ',
- 'FK' => 'ಫಾಲ್ಕ್‌ಲ್ಯಾಂಡ್ ದ್ವೀಪಗಳು',
+ 'FK' => 'ಫಾಕ್‌ಲ್ಯಾಂಡ್ ದ್ವೀಪಗಳು',
'FM' => 'ಮೈಕ್ರೋನೇಶಿಯಾ',
'FO' => 'ಫರೋ ದ್ವೀಪಗಳು',
'FR' => 'ಫ್ರಾನ್ಸ್',
@@ -911,22 +948,22 @@ $countryNames = array(
'GR' => 'ಗ್ರೀಸ್',
'GS' => 'ದಕ್ಷಿಣ ಜಾರ್ಜಿಯಾ ಮತ್ತು ದಕ್ಷಿಣ ಸ್ಯಾಂಡ್‍ವಿಚ್ ದ್ವೀಪಗಳು',
'GT' => 'ಗ್ವಾಟೆಮಾಲಾ',
- 'GU' => 'ಗುಯಾಮ್',
+ 'GU' => 'ಗುವಾಮ್',
'GW' => 'ಗಿನಿ-ಬಿಸ್ಸಾವ್',
'GY' => 'ಗಯಾನಾ',
'HK' => 'ಹಾಂಗ್ ಕಾಂಗ್',
- 'HM' => 'ಹರ್ಡ್ ದ್ವೀಪ ಮತ್ತು ಮ್ಯಾಕ್‍ಡೊನಾಲ್ಡ್ ದ್ವೀಪಗಳು',
+ 'HM' => 'ಹರ್ಡ್ ಮತ್ತು ಮ್ಯಾಕ್‌ಡೋನಾಲ್ಡ್ ದ್ವೀಪಗಳು',
'HN' => 'ಹೊಂಡುರಾಸ್',
- 'HR' => 'ಕ್ರೊಯೇಶಿಯಾ',
+ 'HR' => 'ಕ್ರೊಯೇಷಿಯಾ',
'HT' => 'ಹೈಟಿ',
- 'HU' => 'ಹಂಗಾರಿ',
+ 'HU' => 'ಹಂಗೇರಿ',
'IC' => 'ಕ್ಯಾನರಿ ದ್ವೀಪಗಳು',
'ID' => 'ಇಂಡೋನೇಶಿಯಾ',
'IE' => 'ಐರ್ಲೆಂಡ್',
'IL' => 'ಇಸ್ರೇಲ್',
'IM' => 'ಐಲ್ ಆಫ್ ಮ್ಯಾನ್',
'IN' => 'ಭಾರತ',
- 'IO' => 'ಬ್ರಿಟೀಶ್ ಇಂಡಿಯನ್ ಮಹಾಸಾಗರ ಪ್ರದೇಶ',
+ 'IO' => 'ಬ್ರಿಟೀಷ್ ಹಿಂದೂ ಮಹಾಸಾಗರದ ಪ್ರದೇಶ',
'IQ' => 'ಇರಾಕ್',
'IR' => 'ಇರಾನ್',
'IS' => 'ಐಸ್‌ಲ್ಯಾಂಡ್',
@@ -938,11 +975,11 @@ $countryNames = array(
'KE' => 'ಕೀನ್ಯಾ',
'KG' => 'ಕಿರ್ಗಿಸ್ಥಾನ್',
'KH' => 'ಕಾಂಬೋಡಿಯಾ',
- 'KI' => 'ಕಿರಿಬಾತಿ',
+ 'KI' => 'ಕಿರಿಬಾಟಿ',
'KM' => 'ಕೊಮೊರೊಸ್',
'KN' => 'ಸೇಂಟ್ ಕಿಟ್ಸ್ ಮತ್ತು ನೆವಿಸ್',
- 'KP' => 'ಉತ್ತರ ಕೋರಿಯಾ',
- 'KR' => 'ದಕ್ಷಿಣ ಕೋರಿಯಾ',
+ 'KP' => 'ಉತ್ತರ ಕೊರಿಯಾ',
+ 'KR' => 'ದಕ್ಷಿಣ ಕೊರಿಯಾ',
'KW' => 'ಕುವೈತ್',
'KY' => 'ಕೇಮನ್ ದ್ವೀಪಗಳು',
'KZ' => 'ಕಝಾಕಿಸ್ಥಾನ್',
@@ -952,9 +989,9 @@ $countryNames = array(
'LI' => 'ಲಿಚೆನ್‌ಸ್ಟೈನ್',
'LK' => 'ಶ್ರೀಲಂಕಾ',
'LR' => 'ಲಿಬೇರಿಯಾ',
- 'LS' => 'ಲೆಸೊಥೋ',
+ 'LS' => 'ಲೆಸೊಥೊ',
'LT' => 'ಲಿಥುವೇನಿಯಾ',
- 'LU' => 'ಲಕ್ಸಂಬರ್ಗ್',
+ 'LU' => 'ಲಕ್ಸೆಂಬರ್ಗ್',
'LV' => 'ಲಾಟ್ವಿಯಾ',
'LY' => 'ಲಿಬಿಯಾ',
'MA' => 'ಮೊರಾಕ್ಕೊ',
@@ -967,15 +1004,15 @@ $countryNames = array(
'MK' => 'ಮ್ಯಾಸಿಡೋನಿಯಾ',
'ML' => 'ಮಾಲಿ',
'MM' => 'ಮಯನ್ಮಾರ್ (ಬರ್ಮಾ)',
- 'MN' => 'ಮೊಂಗೋಲಿಯಾ',
- 'MO' => 'ಮಖಾವ್',
+ 'MN' => 'ಮಂಗೋಲಿಯಾ',
+ 'MO' => 'ಮಕಾವು',
'MP' => 'ಉತ್ತರ ಮರಿಯಾನಾ ದ್ವೀಪಗಳು',
'MQ' => 'ಮಾರ್ಟಿನಿಕ್',
'MR' => 'ಮಾರಿಟೇನಿಯಾ',
- 'MS' => 'ಮಾಂಟ್‌ಸೆರೇಟ್',
+ 'MS' => 'ಮಾಂಟ್‌ಸೆರಟ್',
'MT' => 'ಮಾಲ್ಟಾ',
- 'MU' => 'ಮಾರಿಶಿಯಸ್',
- 'MV' => 'ಮಾಲ್ಡಿವ್ಸ್',
+ 'MU' => 'ಮಾರಿಷಸ್',
+ 'MV' => 'ಮಾಲ್ಡೀವ್ಸ್',
'MW' => 'ಮಲಾವಿ',
'MX' => 'ಮೆಕ್ಸಿಕೊ',
'MY' => 'ಮಲೇಶಿಯಾ',
@@ -987,7 +1024,7 @@ $countryNames = array(
'NG' => 'ನೈಜೀರಿಯಾ',
'NI' => 'ನಿಕಾರಾಗುವಾ',
'NL' => 'ನೆದರ್‌ಲ್ಯಾಂಡ್ಸ್',
- 'NO' => 'ನಾರ್ವೇ',
+ 'NO' => 'ನಾರ್ವೆ',
'NP' => 'ನೇಪಾಳ',
'NR' => 'ನೌರು',
'NU' => 'ನಿಯು',
@@ -1000,36 +1037,36 @@ $countryNames = array(
'PH' => 'ಫಿಲಿಫೈನ್ಸ್',
'PK' => 'ಪಾಕಿಸ್ತಾನ',
'PL' => 'ಪೋಲ್ಯಾಂಡ್',
- 'PM' => 'ಸೇಂಟ್ ಪಿಯರೆ ಮತ್ತು ಮಿಕೆಲನ್',
+ 'PM' => 'ಸೇಂಟ್ ಪಿಯರ್ ಮತ್ತು ಮಿಕ್ವೆಲನ್',
'PN' => 'ಪಿಟ್‌ಕೈರ್ನ್ ದ್ವೀಪಗಳು',
'PR' => 'ಪ್ಯೂರ್ಟೋ ರಿಕೊ',
- 'PS' => 'ಪ್ಯಾಲೆಸ್ಟೇನ್',
+ 'PS' => 'ಪ್ಯಾಲೆಸ್ಟೈನ್',
'PT' => 'ಪೋರ್ಚುಗಲ್',
'PW' => 'ಪಲಾವು',
'PY' => 'ಪರಾಗ್ವೇ',
'QA' => 'ಖತಾರ್',
'QO' => 'ಔಟ್ ಲೈಯಿಂಗ್ ಓಷಿಯಾನಿಯಾ',
- 'RE' => 'ರೀಯೂನಿಯನ್',
+ 'RE' => 'ರಿಯೂನಿಯನ್',
'RO' => 'ರೊಮೇನಿಯಾ',
'RS' => 'ಸೆರ್ಬಿಯಾ',
'RU' => 'ರಷ್ಯಾ',
'RW' => 'ರುವಾಂಡಾ',
'SA' => 'ಸೌದಿ ಅರೇಬಿಯಾ',
- 'SB' => 'ಸೊಲೊಮನ್ ದ್ವೀಪಗಳು',
+ 'SB' => 'ಸಾಲೊಮನ್ ದ್ವೀಪಗಳು',
'SC' => 'ಸೀಶೆಲ್ಲೆಸ್',
- 'SD' => 'ಸೂಡಾನ್',
+ 'SD' => 'ಸುಡಾನ್',
'SE' => 'ಸ್ವೀಡನ್',
- 'SG' => 'ಸಿಂಗಾಪುರ್',
+ 'SG' => 'ಸಿಂಗಪುರ್',
'SH' => 'ಸೇಂಟ್ ಹೆಲೆನಾ',
'SI' => 'ಸ್ಲೋವೇನಿಯಾ',
'SJ' => 'ಸ್ವಾಲ್ಬಾರ್ಡ್ ಮತ್ತು ಜಾನ್ ಮೆಯನ್',
- 'SK' => 'ಸ್ಲೋವೇಕಿಯಾ',
+ 'SK' => 'ಸ್ಲೊವಾಕಿಯಾ',
'SL' => 'ಸಿಯೆರ್ರಾ ಲಿಯೋನ್',
'SM' => 'ಸ್ಯಾನ್ ಮೆರಿನೋ',
'SN' => 'ಸೆನೆಗಲ್',
'SO' => 'ಸೊಮಾಲಿಯಾ',
- 'SR' => 'ಸುರಿನಾಮ',
- 'SS' => 'ದಕ್ಷಿಣ ಸೂಡಾನ್',
+ 'SR' => 'ಸುರಿನಾಮ್',
+ 'SS' => 'ದಕ್ಷಿಣ ಸುಡಾನ್',
'ST' => 'ಸಾವೋ ಟೋಮ್ ಮತ್ತು ಪ್ರಿನ್ಸಿಪಿ',
'SV' => 'ಎಲ್ ಸಾಲ್ವೇಡಾರ್',
'SX' => 'ಸಿಂಟ್ ಮಾರ್ಟೆನ್',
@@ -1041,29 +1078,30 @@ $countryNames = array(
'TF' => 'ಫ್ರೆಂಚ್ ದಕ್ಷಿಣ ಪ್ರದೇಶಗಳು',
'TG' => 'ಟೋಗೋ',
'TH' => 'ಥೈಲ್ಯಾಂಡ್',
- 'TJ' => 'ತಜಾಕಿಸ್ಥಾನ್',
+ 'TJ' => 'ತಜಿಕಿಸ್ತಾನ್',
'TK' => 'ಟೊಕೆಲಾವ್',
'TL' => 'ಪೂರ್ವ ತಿಮೋರ್',
- 'TM' => 'ತುರ್ಕ್ಮೇನಿಸ್ಥಾನ್',
- 'TN' => 'ಟುನಿಶಿಯಾ',
- 'TO' => 'ಟೊಂಗ',
+ 'TM' => 'ತುರ್ಕಮೆನಿಸ್ತಾನ್',
+ 'TN' => 'ಟುನೀಶಿಯ',
+ 'TO' => 'ಟೊಂಗಾ',
'TR' => 'ಟರ್ಕಿ',
'TT' => 'ಟ್ರಿನಿಡಾಡ್ ಮತ್ತು ಟೊಬಾಗೊ',
'TV' => 'ಟುವಾಲು',
- 'TW' => 'ಥೈವಾನ್',
+ 'TW' => 'ತೈವಾನ್',
'TZ' => 'ತಾಂಜೇನಿಯಾ',
'UA' => 'ಉಕ್ರೈನ್',
'UG' => 'ಉಗಾಂಡಾ',
- 'UM' => 'ಯುಎಸ್‌. ಔಟ್‌ಲೇಯಿಂಗ್ ದ್ವೀಪಗಳು',
+ 'UM' => 'ಯುಎಸ್‌ ಔಟ್‌ಲೇಯಿಂಗ್ ದ್ವೀಪಗಳು',
+ 'UN' => 'ಯುಎನ್',
'US' => 'ಯು.ಎಸ್',
- 'UY' => 'ಉರುಗ್ವೇ',
+ 'UY' => 'ಉರುಗ್ವೆ',
'UZ' => 'ಉಜ್ಬೇಕಿಸ್ಥಾನ್',
- 'VA' => 'ವ್ಯಾಟಿಕನ್',
+ 'VA' => 'ವ್ಯಾಟಿಕನ್ ಸಿಟಿ',
'VC' => 'ಸೇಂಟ್. ವಿನ್ಸೆಂಟ್ ಮತ್ತು ಗ್ರೆನೆಡೈನ್ಸ್',
'VE' => 'ವೆನೆಜುವೆಲಾ',
'VG' => 'ಬ್ರಿಟಿಷ್ ವರ್ಜಿನ್ ದ್ವೀಪಗಳು',
'VI' => 'ಯು.ಎಸ್. ವರ್ಜಿನ್ ದ್ವೀಪಗಳು',
- 'VN' => 'ವಿಯೇಟ್ನಾಮ್',
+ 'VN' => 'ವಿಯೆಟ್ನಾಮ್',
'VU' => 'ವನೌಟು',
'WF' => 'ವಾಲಿಸ್ ಮತ್ತು ಫುಟುನಾ',
'WS' => 'ಸಮೋವಾ',
@@ -1071,16 +1109,18 @@ $countryNames = array(
'YE' => 'ಯೆಮನ್',
'YT' => 'ಮಯೊಟ್ಟೆ',
'ZA' => 'ದಕ್ಷಿಣ ಆಫ್ರಿಕಾ',
- 'ZM' => 'ಝಾಂಬಿಯಾ',
+ 'ZM' => 'ಜಾಂಬಿಯ',
'ZW' => 'ಜಿಂಬಾಬ್ವೆ',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-one' => '{0} ಶತಮಾನ',
+ 'century-other' => '{0}ಶತಮಾನಗಳು',
'day-future-one' => '{0} ದಿನದಲ್ಲಿ',
'day-future-other' => '{0} ದಿನಗಳಲ್ಲಿ',
'day-narrow-future-one' => '{0} ದಿನದಲ್ಲಿ',
'day-narrow-future-other' => '{0} ದಿನಗಳಲ್ಲಿ',
- 'day-narrow-past-one' => '{0} ದಿನಗಳ ಹಿಂದೆ',
+ 'day-narrow-past-one' => '{0} ದಿನದ ಹಿಂದೆ',
'day-narrow-past-other' => '{0} ದಿನಗಳ ಹಿಂದೆ',
'day-one' => '{0} ದಿನ',
'day-other' => '{0} ದಿನಗಳು',
@@ -1088,8 +1128,20 @@ $timeUnits = array(
'day-past-other' => '{0} ದಿನಗಳ ಹಿಂದೆ',
'day-short-future-one' => '{0} ದಿನದಲ್ಲಿ',
'day-short-future-other' => '{0} ದಿನಗಳಲ್ಲಿ',
- 'day-short-past-one' => '{0} ದಿನಗಳ ಹಿಂದೆ',
+ 'day-short-past-one' => '{0} ದಿನದ ಹಿಂದೆ',
'day-short-past-other' => '{0} ದಿನಗಳ ಹಿಂದೆ',
+ 'fri-future-one' => '{0} ಶುಕ್ರವಾರದಂದು',
+ 'fri-future-other' => '{0} ಶುಕ್ರವಾರಗಳಲ್ಲಿ',
+ 'fri-narrow-future-one' => '{0} ಶುಕ್ರವಾರದಂದು',
+ 'fri-narrow-future-other' => '{0} ಶುಕ್ರವಾರಗಳಲ್ಲಿ',
+ 'fri-narrow-past-one' => '{0} ಶುಕ್ರವಾರದ ಹಿಂದೆ',
+ 'fri-narrow-past-other' => '{0} ಶುಕ್ರವಾರಗಳ ಹಿಂದೆ',
+ 'fri-past-one' => '{0} ಶುಕ್ರವಾರದ ಹಿಂದೆ',
+ 'fri-past-other' => '{0} ಶುಕ್ರವಾರಗಳ ಹಿಂದೆ',
+ 'fri-short-future-one' => '{0} ಶುಕ್ರವಾರದಂದು',
+ 'fri-short-future-other' => '{0} ಶುಕ್ರವಾರಗಳಲ್ಲಿ',
+ 'fri-short-past-one' => '{0} ಶುಕ್ರವಾರಗಳ ಹಿಂದೆ',
+ 'fri-short-past-other' => '{0} ಶುಕ್ರವಾರಗಳ ಹಿಂದೆ',
'hour-future-one' => '{0} ಗಂಟೆಯಲ್ಲಿ',
'hour-future-other' => '{0} ಗಂಟೆಗಳಲ್ಲಿ',
'hour-narrow-future-one' => '{0} ಗಂಟೆಯಲ್ಲಿ',
@@ -1116,12 +1168,24 @@ $timeUnits = array(
'minute-narrow-past-other' => '{0} ನಿಮಿಷಗಳ ಹಿಂದೆ',
'minute-one' => '{0} ನಿಮಿಷ',
'minute-other' => '{0} ನಿಮಿಷಗಳು',
- 'minute-past-one' => '{0} ನಿಮಿಷಗಳ ಹಿಂದೆ',
+ 'minute-past-one' => '{0} ನಿಮಿಷದ ಹಿಂದೆ',
'minute-past-other' => '{0} ನಿಮಿಷಗಳ ಹಿಂದೆ',
'minute-short-future-one' => '{0} ನಿಮಿಷದಲ್ಲಿ',
'minute-short-future-other' => '{0} ನಿಮಿಷಗಳಲ್ಲಿ',
'minute-short-past-one' => '{0} ನಿಮಿಷದ ಹಿಂದೆ',
'minute-short-past-other' => '{0} ನಿಮಿಷಗಳ ಹಿಂದೆ',
+ 'mon-future-one' => '{0} ಸೋಮವಾರದಂದು',
+ 'mon-future-other' => '{0} ಸೋಮವಾರಗಳಂದು',
+ 'mon-narrow-future-one' => '{0} ಸೋಮವಾರದಂದು',
+ 'mon-narrow-future-other' => '{0} ಸೋಮವಾರಗಳಂದು',
+ 'mon-narrow-past-one' => '{0} ಸೋಮವಾರದ ಹಿಂದೆ',
+ 'mon-narrow-past-other' => '{0} ಸೋಮವಾರಗಳ ಹಿಂದೆ',
+ 'mon-past-one' => '{0} ಸೋಮವಾರದ ಹಿಂದೆ',
+ 'mon-past-other' => '{0} ಸೋಮವಾರಗಳ ಹಿಂದೆ',
+ 'mon-short-future-one' => '{0} ಸೋಮವಾರದಂದು',
+ 'mon-short-future-other' => '{0} ಸೋಮವಾರಗಳಂದು',
+ 'mon-short-past-one' => '{0} ಸೋಮವಾರದ ಹಿಂದೆ',
+ 'mon-short-past-other' => '{0} ಸೋಮವಾರಗಳ ಹಿಂದೆ',
'month-future-one' => '{0} ತಿಂಗಳಲ್ಲಿ',
'month-future-other' => '{0} ತಿಂಗಳುಗಳಲ್ಲಿ',
'month-narrow-future-one' => '{0} ತಿಂಗಳಲ್ಲಿ',
@@ -1130,7 +1194,7 @@ $timeUnits = array(
'month-narrow-past-other' => '{0} ತಿಂಗಳುಗಳ ಹಿಂದೆ',
'month-one' => '{0} ತಿಂಗಳು',
'month-other' => '{0} ತಿಂಗಳು',
- 'month-past-one' => '{0} ತಿಂಗಳುಗಳ ಹಿಂದೆ',
+ 'month-past-one' => '{0} ತಿಂಗಳ ಹಿಂದೆ',
'month-past-other' => '{0} ತಿಂಗಳುಗಳ ಹಿಂದೆ',
'month-short-future-one' => '{0} ತಿಂಗಳಲ್ಲಿ',
'month-short-future-other' => '{0} ತಿಂಗಳುಗಳಲ್ಲಿ',
@@ -1140,16 +1204,28 @@ $timeUnits = array(
'nanosecond-other' => '{0} ನ್ಯಾನೊಸೆಕೆಂಡುಗಳು',
'quarter-future-one' => '{0} ತ್ರೈಮಾಸಿಕದಲ್ಲಿ',
'quarter-future-other' => '{0} ತ್ರೈಮಾಸಿಕಗಳಲ್ಲಿ',
- 'quarter-narrow-future-one' => '+{0} ತ್ರೈ',
- 'quarter-narrow-future-other' => '+{0} ತ್ರೈ',
- 'quarter-narrow-past-one' => '+{0} ತ್ರೈ. ಹಿಂದೆ',
- 'quarter-narrow-past-other' => '+{0} ತ್ರೈ. ಹಿಂದೆ',
+ 'quarter-narrow-future-one' => '{0} ತ್ರೈಮಾಸಿಕಗಳಲ್ಲಿ',
+ 'quarter-narrow-future-other' => '{0} ತ್ರೈಮಾಸಿಕಗಳಲ್ಲಿ',
+ 'quarter-narrow-past-one' => '{0} ತ್ರೈ.ಮಾ. ಹಿಂದೆ',
+ 'quarter-narrow-past-other' => '{0} ತ್ರೈಮಾಸಿಕಗಳ ಹಿಂದೆ',
'quarter-past-one' => '{0} ತ್ರೈಮಾಸಿಕದ ಹಿಂದೆ',
'quarter-past-other' => '{0} ತ್ರೈಮಾಸಿಕಗಳ ಹಿಂದೆ',
'quarter-short-future-one' => '{0} ತ್ರೈ.ಮಾ.ದಲ್ಲಿ',
- 'quarter-short-future-other' => '{0} ತ್ರೈ.ಮಾ.ಗಳಲ್ಲಿ',
+ 'quarter-short-future-other' => '{0} ತ್ರೈಮಾಸಿಕಗಳಲ್ಲಿ',
'quarter-short-past-one' => '{0} ತ್ರೈ.ಮಾ. ಹಿಂದೆ',
- 'quarter-short-past-other' => '{0} ತ್ರೈ.ಮಾ. ಗಳ ಹಿಂದೆ',
+ 'quarter-short-past-other' => '{0} ತ್ರೈಮಾಸಿಕಗಳ ಹಿಂದೆ',
+ 'sat-future-one' => '{0} ಶನಿವಾರದಂದು',
+ 'sat-future-other' => '{0} ಶನಿವಾರಗಳಂದು',
+ 'sat-narrow-future-one' => '{0} ಶನಿವಾರದಂದು',
+ 'sat-narrow-future-other' => '{0} ಶನಿವಾರಗಳಂದು',
+ 'sat-narrow-past-one' => '{0} ಶನಿವಾರದ ಹಿಂದೆ',
+ 'sat-narrow-past-other' => '{0} ಶನಿವಾರಗಳ ಹಿಂದೆ',
+ 'sat-past-one' => '{0} ಶನಿವಾರದ ಹಿಂದೆ',
+ 'sat-past-other' => '{0} ಶನಿವಾರಗಳ ಹಿಂದೆ',
+ 'sat-short-future-one' => '{0} ಶನಿವಾರದಂದು',
+ 'sat-short-future-other' => '{0} ಶನಿವಾರಗಳಂದು',
+ 'sat-short-past-one' => '{0} ಶನಿವಾರದ ಹಿಂದೆ',
+ 'sat-short-past-other' => '{0} ಶನಿವಾರಗಳ ಹಿಂದೆ',
'second-future-one' => '{0} ಸೆಕೆಂಡ್‌ನಲ್ಲಿ',
'second-future-other' => '{0} ಸೆಕೆಂಡ್‌ಗಳಲ್ಲಿ',
'second-narrow-future-one' => '{0} ಸೆಕೆಂಡ್‌ನಲ್ಲಿ',
@@ -1164,13 +1240,61 @@ $timeUnits = array(
'second-short-future-other' => '{0} ಸೆಕೆಂಡ್‌ಗಳಲ್ಲಿ',
'second-short-past-one' => '{0} ಸೆಕೆಂಡ್ ಹಿಂದೆ',
'second-short-past-other' => '{0} ಸೆಕೆಂಡುಗಳ ಹಿಂದೆ',
+ 'sun-future-one' => '{0} ಭಾನುವಾರದಂದು',
+ 'sun-future-other' => '{0} ಭಾನುವಾರಗಳಂದು',
+ 'sun-narrow-future-one' => '{0} ಭಾನುವಾರದಂದು',
+ 'sun-narrow-future-other' => '{0} ಭಾನುವಾರಗಳಂದು',
+ 'sun-narrow-past-one' => '{0} ಭಾನುವಾರದ ಹಿಂದೆ',
+ 'sun-narrow-past-other' => '{0} ಭಾನುವಾರಗಳ ಹಿಂದೆ',
+ 'sun-past-one' => '{0} ಭಾನುವಾರದ ಹಿಂದೆ',
+ 'sun-past-other' => '{0} ಭಾನುವಾರಗಳ ಹಿಂದೆ',
+ 'sun-short-future-one' => '{0} ಭಾನುವಾರದಂದು',
+ 'sun-short-future-other' => '{0} ಭಾನುವಾರಗಳಂದು',
+ 'sun-short-past-one' => '{0} ಭಾನುವಾರದ ಹಿಂದೆ',
+ 'sun-short-past-other' => '{0} ಭಾನುವಾರಗಳ ಹಿಂದೆ',
+ 'thu-future-one' => '{0} ಗುರುವಾರದಂದು',
+ 'thu-future-other' => '{0} ಗುರುವಾರಗಳಂದು',
+ 'thu-narrow-future-one' => '{0} ಗುರುವಾರದಂದು',
+ 'thu-narrow-future-other' => '{0} ಗುರುವಾರಗಳಂದು',
+ 'thu-narrow-past-one' => '{0} ಗುರುವಾರದ ಹಿಂದೆ',
+ 'thu-narrow-past-other' => '{0} ಗುರುವಾರಗಳ ಹಿಂದೆ',
+ 'thu-past-one' => '{0} ಗುರುವಾರದ ಹಿಂದೆ',
+ 'thu-past-other' => '{0} ಗುರುವಾರಗಳ ಹಿಂದೆ',
+ 'thu-short-future-one' => '{0} ಗುರುವಾರದಂದು',
+ 'thu-short-future-other' => '{0} ಗುರುವಾರಗಳಂದು',
+ 'thu-short-past-one' => '{0} ಗುರುವಾರದ ಹಿಂದೆ',
+ 'thu-short-past-other' => '{0} ಗುರುವಾರಗಳ ಹಿಂದೆ',
+ 'tue-future-one' => '{0} ಮಂಗಳವಾರದಂದು',
+ 'tue-future-other' => '{0} ಮಂಗಳವಾರಗಳಂದು',
+ 'tue-narrow-future-one' => '{0} ಮಂಗಳವಾರದಂದು',
+ 'tue-narrow-future-other' => '{0} ಮಂಗಳವಾರಗಳಂದು',
+ 'tue-narrow-past-one' => '{0} ಮಂಗಳವಾರದ ಹಿಂದೆ',
+ 'tue-narrow-past-other' => '{0} ಮಂಗಳವಾರಗಳ ಹಿಂದೆ',
+ 'tue-past-one' => '{0} ಮಂಗಳವಾರದ ಹಿಂದೆ',
+ 'tue-past-other' => '{0} ಮಂಗಳವಾರಗಳ ಹಿಂದೆ',
+ 'tue-short-future-one' => '{0} ಮಂಗಳವಾರದಂದು',
+ 'tue-short-future-other' => '{0} ಮಂಗಳವಾರಗಳಂದು',
+ 'tue-short-past-one' => '{0} ಮಂಗಳವಾರದ ಹಿಂದೆ',
+ 'tue-short-past-other' => '{0} ಮಂಗಳವಾರಗಳ ಹಿಂದೆ',
+ 'wed-future-one' => '{0} ಬುಧವಾರದಂದು',
+ 'wed-future-other' => '{0} ಬುಧವಾರಗಳಂದು',
+ 'wed-narrow-future-one' => '{0} ಬುಧವಾರದಂದು',
+ 'wed-narrow-future-other' => '{0} ಬುಧವಾರಗಳಂದು',
+ 'wed-narrow-past-one' => '{0} ಬುಧವಾರದ ಹಿಂದೆ',
+ 'wed-narrow-past-other' => '{0} ಬುಧವಾರಗಳ ಹಿಂದೆ',
+ 'wed-past-one' => '{0} ಬುಧವಾರದ ಹಿಂದೆ',
+ 'wed-past-other' => '{0} ಬುಧವಾರಗಳ ಹಿಂದೆ',
+ 'wed-short-future-one' => '{0} ಬುಧವಾರದಂದು',
+ 'wed-short-future-other' => '{0} ಬುಧವಾರಗಳಂದು',
+ 'wed-short-past-one' => '{0} ಬುಧವಾರದ ಹಿಂದೆ',
+ 'wed-short-past-other' => '{0} ಬುಧವಾರಗಳ ಹಿಂದೆ',
'week-future-one' => '{0} ವಾರದಲ್ಲಿ',
'week-future-other' => '{0} ವಾರಗಳಲ್ಲಿ',
'week-narrow-future-one' => '{0} ವಾರದಲ್ಲಿ',
'week-narrow-future-other' => '{0} ವಾರಗಳಲ್ಲಿ',
'week-narrow-past-one' => '{0} ವಾರದ ಹಿಂದೆ',
'week-narrow-past-other' => '{0} ವಾರಗಳ ಹಿಂದೆ',
- 'week-one' => '{0} ವಾರಗಳು',
+ 'week-one' => '{0} ವಾರ',
'week-other' => '{0} ವಾರಗಳು',
'week-past-one' => '{0} ವಾರದ ಹಿಂದೆ',
'week-past-other' => '{0} ವಾರಗಳ ಹಿಂದೆ',
@@ -1192,4 +1316,4 @@ $timeUnits = array(
'year-short-future-other' => '{0} ವರ್ಷಗಳಲ್ಲಿ',
'year-short-past-one' => '{0} ವರ್ಷದ ಹಿಂದೆ',
'year-short-past-other' => '{0} ವರ್ಷಗಳ ಹಿಂದೆ',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesKo.php b/MLEB/cldr/CldrNames/CldrNamesKo.php
index f6a84d75..79f3bd54 100644
--- a/MLEB/cldr/CldrNames/CldrNamesKo.php
+++ b/MLEB/cldr/CldrNames/CldrNamesKo.php
@@ -1,16 +1,16 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => '아파르어',
'ab' => '압카즈어',
'ace' => '아체어',
'ach' => '아콜리어',
'ada' => '아당메어',
- 'ady' => '아닥헤어',
+ 'ady' => '아디게어',
'ae' => '아베스타어',
'aeb' => '튀니지 아랍어',
'af' => '아프리칸스어',
- 'afh' => '아프리히리어',
+ 'afh' => '아프리힐리어',
'agq' => '아그햄어',
'ain' => '아이누어',
'ak' => '아칸어',
@@ -24,20 +24,20 @@ $languageNames = array(
'ar' => '아랍어',
'ar-001' => '현대 표준 아랍어',
'arc' => '아람어',
- 'arn' => '아라우칸어',
+ 'arn' => '마푸둥군어',
'arp' => '아라파호어',
'arq' => '알제리 아랍어',
+ 'ars' => '아랍어(나즈디)',
'arw' => '아라와크어',
'ary' => '모로코 아랍어',
'arz' => '이집트 아랍어',
- 'as' => '아샘어',
+ 'as' => '아삼어',
'asa' => '아수어',
'ast' => '아스투리아어',
'av' => '아바릭어',
'awa' => '아와히어',
'ay' => '아이마라어',
'az' => '아제르바이잔어',
- 'azb' => '남아제르바이잔어',
'ba' => '바슈키르어',
'bal' => '발루치어',
'ban' => '발리어',
@@ -50,6 +50,7 @@ $languageNames = array(
'bez' => '베나어',
'bfd' => '바푸트어',
'bg' => '불가리아어',
+ 'bgn' => '서부 발로치어',
'bho' => '호즈푸리어',
'bi' => '비슬라마어',
'bik' => '비콜어',
@@ -74,7 +75,7 @@ $languageNames = array(
'cad' => '카도어',
'car' => '카리브어',
'cay' => '카유가어',
- 'cch' => '아삼어',
+ 'cch' => '앗삼어',
'ce' => '체첸어',
'ceb' => '세부아노어',
'cgg' => '치가어',
@@ -83,7 +84,7 @@ $languageNames = array(
'chg' => '차가타이어',
'chk' => '추크어',
'chm' => '마리어',
- 'chn' => '치누크어와 영어 프랑스어의 혼성어',
+ 'chn' => '치누크 자곤',
'cho' => '촉토어',
'chp' => '치페우얀',
'chr' => '체로키어',
@@ -93,6 +94,7 @@ $languageNames = array(
'cop' => '콥트어',
'cr' => '크리어',
'crh' => '크리민 터키어; 크리민 타타르어',
+ 'crs' => '세이셸 크리올 프랑스어',
'cs' => '체코어',
'csb' => '카슈비아어',
'cu' => '교회 슬라브어',
@@ -103,7 +105,7 @@ $languageNames = array(
'dar' => '다르그와어',
'dav' => '타이타어',
'de' => '독일어',
- 'de-ch' => '고지 독일어 (스위스)',
+ 'de-ch' => '고지 독일어(스위스)',
'del' => '델라웨어어',
'den' => '슬라브어',
'dgr' => '도그리브어',
@@ -111,7 +113,7 @@ $languageNames = array(
'dje' => '자르마어',
'doi' => '도그리어',
'dsb' => '저지 소르비아어',
- 'dua' => '드와라어',
+ 'dua' => '두알라어',
'dum' => '중세 네덜란드어',
'dv' => '디베히어',
'dyo' => '졸라 포니어',
@@ -121,19 +123,15 @@ $languageNames = array(
'ebu' => '엠부어',
'ee' => '에웨어',
'efi' => '이픽어',
- 'egy' => '이집트어 (고대)',
+ 'egy' => '고대 이집트어',
'eka' => '이카죽어',
'el' => '그리스어',
'elx' => '엘람어',
'en' => '영어',
'en-au' => '영어(호주)',
- 'en-ca' => '영어 (캐나다)',
- 'en-gb' => '영어 (영국식)',
- 'enm' => '영어, 중세',
+ 'enm' => '중세 영어',
'eo' => '에스페란토어',
'es' => '스페인어',
- 'es-419' => '중남미 스페인어',
- 'es-es' => '유럽식 스페인어',
'et' => '에스토니아어',
'eu' => '바스크어',
'ewo' => '이원도어',
@@ -147,17 +145,17 @@ $languageNames = array(
'fo' => '페로어',
'fon' => '폰어',
'fr' => '프랑스어',
- 'fr-ca' => '프랑스어 (캐나다)',
- 'fr-ch' => '프랑스어 (스위스)',
+ 'frc' => '케이준 프랑스어',
'frm' => '중세 프랑스어',
'fro' => '고대 프랑스어',
- 'frr' => '북부 프리슬란드어',
+ 'frr' => '북부 프리지아어',
'frs' => '동부 프리슬란드어',
- 'fur' => '프리우리안어',
- 'fy' => '프리지아어',
+ 'fur' => '프리울리어',
+ 'fy' => '서부 프리지아어',
'ga' => '아일랜드어',
'gaa' => '가어',
'gag' => '가가우스어',
+ 'gan' => '간어',
'gay' => '가요어',
'gba' => '그바야어',
'gbz' => '조로아스터 다리어',
@@ -174,7 +172,7 @@ $languageNames = array(
'gor' => '고론탈로어',
'got' => '고트어',
'grb' => '게르보어',
- 'grc' => '그리스어, 고대',
+ 'grc' => '고대 그리스어',
'gsw' => '독일어(스위스)',
'gu' => '구자라트어',
'guz' => '구시어',
@@ -182,6 +180,7 @@ $languageNames = array(
'gwi' => '그위친어',
'ha' => '하우사어',
'hai' => '하이다어',
+ 'hak' => '하카어',
'haw' => '하와이어',
'he' => '히브리어',
'hi' => '힌디어',
@@ -192,12 +191,13 @@ $languageNames = array(
'ho' => '히리 모투어',
'hr' => '크로아티아어',
'hsb' => '고지 소르비아어',
+ 'hsn' => '샹어',
'ht' => '아이티어',
'hu' => '헝가리어',
'hup' => '후파어',
'hy' => '아르메니아어',
'hz' => '헤레로어',
- 'ia' => '인테르링구아 (국제보조어협회)',
+ 'ia' => '인터링구아',
'iba' => '이반어',
'ibb' => '이비비오어',
'id' => '인도네시아어',
@@ -242,7 +242,7 @@ $languageNames = array(
'kkj' => '카코어',
'kl' => '그린란드어',
'kln' => '칼렌진어',
- 'km' => '캄보디아어',
+ 'km' => '크메르어',
'kmb' => '킴분두어',
'kn' => '칸나다어',
'ko' => '한국어',
@@ -277,8 +277,10 @@ $languageNames = array(
'lkt' => '라코타어',
'ln' => '링갈라어',
'lo' => '라오어',
- 'lol' => '몽구어',
+ 'lol' => '몽고어',
+ 'lou' => '루이지애나 크리올어',
'loz' => '로지어',
+ 'lrc' => '북부 루리어',
'lt' => '리투아니아어',
'lu' => '루바-카탄가어',
'lua' => '루바-룰루아어',
@@ -290,8 +292,8 @@ $languageNames = array(
'lv' => '라트비아어',
'mad' => '마두라어',
'maf' => '마파어',
- 'mag' => '마가히',
- 'mai' => '마이틸리',
+ 'mag' => '마가히어',
+ 'mai' => '마이틸리어',
'mak' => '마카사어',
'man' => '만딩고어',
'mas' => '마사이어',
@@ -302,16 +304,16 @@ $languageNames = array(
'mer' => '메루어',
'mfe' => '모리스얀어',
'mg' => '말라가시어',
- 'mga' => '아일랜드어, 중세',
+ 'mga' => '중세 아일랜드어',
'mgh' => '마크후와-메토어',
'mgo' => '메타어',
- 'mh' => '마셜제도어',
+ 'mh' => '마셜어',
'mi' => '마오리어',
'mic' => '미크맥어',
- 'min' => '미낭카바우',
+ 'min' => '미낭카바우어',
'mk' => '마케도니아어',
'ml' => '말라얄람어',
- 'mn' => '몽고어',
+ 'mn' => '몽골어',
'mnc' => '만주어',
'mni' => '마니푸리어',
'moh' => '모호크어',
@@ -330,11 +332,13 @@ $languageNames = array(
'myv' => '엘즈야어',
'mzn' => '마잔데라니어',
'na' => '나우루어',
+ 'nan' => '민난어',
'nap' => '나폴리어',
'naq' => '나마어',
'nb' => '노르웨이어(보크말)',
'nd' => '북부 은데벨레어',
'nds' => '저지 독일어',
+ 'nds-nl' => '저지 색슨어',
'ne' => '네팔어',
'new' => '네와르어',
'ng' => '느동가어',
@@ -347,48 +351,48 @@ $languageNames = array(
'nnh' => '느기엠본어',
'no' => '노르웨이어',
'nog' => '노가이어',
- 'non' => '노르웨이, 고대',
+ 'non' => '고대 노르웨이어',
'nqo' => '응코어',
'nr' => '남부 은데벨레어',
- 'nso' => '소토어 (북부)',
+ 'nso' => '북부 소토어',
'nus' => '누에르어',
'nv' => '나바호어',
- 'nwc' => '네와르어 (고전)',
- 'ny' => '니안자어; 치츄어; 츄어',
+ 'nwc' => '고전 네와르어',
+ 'ny' => '냔자어',
'nym' => '니암웨지어',
'nyn' => '니안콜어',
'nyo' => '뉴로어',
'nzi' => '느지마어',
'oc' => '오크어',
- 'oj' => '오지브웨이어',
+ 'oj' => '오지브와어',
'om' => '오로모어',
'or' => '오리야어',
'os' => '오세트어',
'osa' => '오세이지어',
- 'ota' => '터키어, 오스만',
+ 'ota' => '오스만 터키어',
'pa' => '펀잡어',
'pag' => '판가시난어',
'pal' => '팔레비어',
'pam' => '팜팡가어',
'pap' => '파피아먼토어',
- 'pau' => '파라우안어',
+ 'pau' => '팔라우어',
+ 'pcm' => '나이지리아 피진어',
'peo' => '고대 페르시아어',
'phn' => '페니키아어',
'pi' => '팔리어',
'pl' => '폴란드어',
'pnt' => '폰틱어',
'pon' => '폼페이어',
+ 'prg' => '프러시아어',
'pro' => '고대 프로방스어',
'ps' => '파슈토어',
'pt' => '포르투갈어',
- 'pt-br' => '포르투갈어 (브라질)',
- 'pt-pt' => '유럽식 포르투갈어',
'qu' => '케추아어',
'quc' => '키체어',
'raj' => '라자스탄어',
'rap' => '라파뉴이',
'rar' => '라로통가어',
- 'rm' => '레토로만어',
+ 'rm' => '로만시어',
'rn' => '룬디어',
'ro' => '루마니아어',
'ro-md' => '몰도바어',
@@ -401,7 +405,7 @@ $languageNames = array(
'rwk' => '르와어',
'sa' => '산스크리트어',
'sad' => '산다웨어',
- 'sah' => '야큐트어',
+ 'sah' => '야쿠트어',
'sam' => '사마리아 아랍어',
'saq' => '삼부루어',
'sas' => '사사크어',
@@ -412,13 +416,14 @@ $languageNames = array(
'scn' => '시칠리아어',
'sco' => '스코틀랜드어',
'sd' => '신디어',
+ 'sdh' => '남부 쿠르드어',
'se' => '북부 사미어',
'see' => '세네카어',
'seh' => '세나어',
'sel' => '셀쿠프어',
'ses' => '코이야보로 세니어',
'sg' => '산고어',
- 'sga' => '아일랜드, 고대',
+ 'sga' => '고대 아일랜드어',
'sh' => '세르비아-크로아티아어',
'shi' => '타셸히트어',
'shn' => '샨어',
@@ -442,16 +447,16 @@ $languageNames = array(
'srr' => '세레르어',
'ss' => '시스와티어',
'ssy' => '사호어',
- 'st' => '소토어 (남부)',
+ 'st' => '남부 소토어',
'su' => '순다어',
- 'suk' => '수쿠마족어',
+ 'suk' => '수쿠마어',
'sus' => '수수어',
'sux' => '수메르어',
'sv' => '스웨덴어',
'sw' => '스와힐리어',
+ 'sw-cd' => '콩고 스와힐리어',
'swb' => '코모로어',
- 'swc' => '콩고 스와힐리어',
- 'syc' => '시리아어 (고전)',
+ 'syc' => '고전 시리아어',
'syr' => '시리아어',
'ta' => '타밀어',
'te' => '텔루구어',
@@ -463,7 +468,7 @@ $languageNames = array(
'th' => '태국어',
'ti' => '티그리냐어',
'tig' => '티그레어',
- 'tiv' => '티비어',
+ 'tiv' => '티브어',
'tk' => '투르크멘어',
'tkl' => '토켈라우제도어',
'tkr' => '차후르어',
@@ -472,9 +477,9 @@ $languageNames = array(
'tli' => '틀링깃족어',
'tly' => '탈리쉬어',
'tmh' => '타마섹어',
- 'tn' => '세츠와나어',
+ 'tn' => '츠와나어',
'to' => '통가어',
- 'tog' => '통가어 (니아살랜드)',
+ 'tog' => '니아사 통가어',
'tpi' => '토크 피신어',
'tr' => '터키어',
'trv' => '타로코어',
@@ -487,12 +492,12 @@ $languageNames = array(
'twq' => '타사와크어',
'ty' => '타히티어',
'tyv' => '투비니안어',
- 'tzm' => '중앙모로코 타마지트어',
+ 'tzm' => '중앙 모로코 타마지트어',
'udm' => '우드말트어',
'ug' => '위구르어',
'uga' => '유가리틱어',
'uk' => '우크라이나어',
- 'umb' => '윤번두어',
+ 'umb' => '움분두어',
'und' => '알 수 없는 언어',
'ur' => '우르두어',
'uz' => '우즈베크어',
@@ -504,10 +509,12 @@ $languageNames = array(
'vun' => '분조어',
'wa' => '왈론어',
'wae' => '월저어',
- 'wal' => '와라모어',
+ 'wal' => '월라이타어',
'war' => '와라이어',
'was' => '와쇼어',
- 'wo' => '올로프어',
+ 'wbp' => '왈피리어',
+ 'wo' => '월로프어',
+ 'wuu' => '우어',
'xal' => '칼미크어',
'xh' => '코사어',
'xog' => '소가어',
@@ -522,17 +529,15 @@ $languageNames = array(
'zap' => '사포테크어',
'zbl' => '블리스 심볼',
'zen' => '제나가어',
- 'zgh' => '표준 모로코 타마제크어',
+ 'zgh' => '표준 모로코 타마지트어',
'zh' => '중국어',
- 'zh-hans' => '중국어(간체)',
- 'zh-hant' => '중국어(번체)',
'zu' => '줄루어',
'zun' => '주니어',
'zxx' => '언어 관련 내용 없음',
'zza' => '자자어',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'ADP' => '안도라 페세타',
'AED' => '아랍에미리트 디르함',
'AFA' => '아프가니 (1927–2002)',
@@ -586,7 +591,8 @@ $currencyNames = array(
'BUK' => '버마 차트',
'BWP' => '보츠와나 폴라',
'BYB' => '벨라루스 신권 루블 (1994–1999)',
- 'BYR' => '벨라루스 루블',
+ 'BYN' => '벨라루스 루블',
+ 'BYR' => '벨라루스 루블 (2000–2016)',
'BZD' => '벨리즈 달러',
'CAD' => '캐나다 달러',
'CDF' => '콩고 프랑 콩골라스',
@@ -596,6 +602,7 @@ $currencyNames = array(
'CLE' => '칠레 에스쿠도',
'CLF' => '칠레 (UF)',
'CLP' => '칠레 페소',
+ 'CNH' => '중국 위안화(역외)',
'CNY' => '중국 위안화',
'COP' => '콜롬비아 페소',
'COU' => '콜롬비아 실가 단위',
@@ -621,7 +628,7 @@ $currencyNames = array(
'ESA' => '스페인 페세타(예금)',
'ESB' => '스페인 페세타(변환 예금)',
'ESP' => '스페인 페세타',
- 'ETB' => '이디오피아 비르',
+ 'ETB' => '에티오피아 비르',
'EUR' => '유로',
'FIM' => '핀란드 마르카',
'FJD' => '피지 달러',
@@ -695,7 +702,8 @@ $currencyNames = array(
'MMK' => '미얀마 키얏',
'MNT' => '몽골 투그릭',
'MOP' => '마카오 파타카',
- 'MRO' => '모리타니 우기야',
+ 'MRO' => '모리타니 우기야 (1973–2017)',
+ 'MRU' => '모리타니 우기야',
'MTL' => '몰타 리라',
'MTP' => '몰타 파운드',
'MUR' => '모리셔스 루피',
@@ -719,8 +727,8 @@ $currencyNames = array(
'OMR' => '오만 리얄',
'PAB' => '파나마 발보아',
'PEI' => '페루 인티',
- 'PEN' => '페루 누에보 솔',
- 'PES' => '페루 솔',
+ 'PEN' => '페루 솔',
+ 'PES' => '페루 솔 (1863–1965)',
'PGK' => '파푸아뉴기니 키나',
'PHP' => '필리핀 페소',
'PKR' => '파키스탄 루피',
@@ -752,7 +760,8 @@ $currencyNames = array(
'SRD' => '수리남 달러',
'SRG' => '수리남 길더',
'SSP' => '남수단 파운드',
- 'STD' => '상투메 프린시페 도브라',
+ 'STD' => '상투메 프린시페 도브라 (1977–2017)',
+ 'STN' => '상투메 프린시페 도브라',
'SUR' => '소련 루블',
'SVC' => '엘살바도르 콜론',
'SYP' => '시리아 파운드',
@@ -782,12 +791,13 @@ $currencyNames = array(
'UYU' => '우루과이 페소 우루과요',
'UZS' => '우즈베키스탄 숨',
'VEB' => '베네주엘라 볼리바르 (1871–2008)',
- 'VEF' => '베네수엘라 볼리바르',
+ 'VEF' => '베네수엘라 볼리바르 (2008–2018)',
+ 'VES' => '베네수엘라 볼리바르',
'VND' => '베트남 동',
'VNN' => '베트남 동 (1978–1985)',
'VUV' => '바누아투 바투',
'WST' => '서 사모아 탈라',
- 'XAF' => 'CFA 프랑 BEAC',
+ 'XAF' => '중앙아프리카 CFA 프랑',
'XAG' => '은화',
'XAU' => '금',
'XBA' => '유르코 (유럽 회계 단위)',
@@ -799,13 +809,13 @@ $currencyNames = array(
'XEU' => '유럽 환율 단위',
'XFO' => '프랑스 프랑 (Gold)',
'XFU' => '프랑스 프랑 (UIC)',
- 'XOF' => 'CFA 프랑 BCEAO',
+ 'XOF' => '서아프리카 CFA 프랑',
'XPD' => '팔라듐',
'XPF' => 'CFP 프랑',
'XPT' => '백금',
'XRE' => 'RINET 기금',
'XTS' => '테스트 통화 코드',
- 'XXX' => '알 수 없는 통화단위',
+ 'XXX' => '알 수 없는 통화 단위',
'YDD' => '예멘 디나르',
'YER' => '예멘 리알',
'YUD' => '유고슬라비아 동전 디나르',
@@ -820,9 +830,9 @@ $currencyNames = array(
'ZWD' => '짐바브웨 달러',
'ZWL' => '짐바브웨 달러 (2009)',
'ZWR' => '짐바브웨 달러 (2008)',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'AED' => 'AED',
'AFN' => 'AFN',
'ALL' => 'ALL',
@@ -846,12 +856,14 @@ $currencySymbols = array(
'BSD' => 'BSD',
'BTN' => 'BTN',
'BWP' => 'BWP',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CA$',
'CDF' => 'CDF',
'CHF' => 'CHF',
'CLP' => 'CLP',
+ 'CNH' => 'CNH',
'CNY' => 'CN¥',
'COP' => 'COP',
'CRC' => 'CRC',
@@ -915,6 +927,7 @@ $currencySymbols = array(
'MNT' => 'MNT',
'MOP' => 'MOP',
'MRO' => 'MRO',
+ 'MRU' => 'MRU',
'MUR' => 'MUR',
'MVR' => 'MVR',
'MWK' => 'MWK',
@@ -952,9 +965,10 @@ $currencySymbols = array(
'SRD' => 'SRD',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'STN',
'SYP' => 'SYP',
'SZL' => 'SZL',
- 'THB' => '฿',
+ 'THB' => 'THB',
'TJS' => 'TJS',
'TMT' => 'TMT',
'TND' => 'TND',
@@ -969,6 +983,7 @@ $currencySymbols = array(
'UYU' => 'UYU',
'UZS' => 'UZS',
'VEF' => 'VEF',
+ 'VES' => 'VES',
'VND' => '₫',
'VUV' => 'VUV',
'WST' => 'WST',
@@ -979,18 +994,17 @@ $currencySymbols = array(
'YER' => 'YER',
'ZAR' => 'ZAR',
'ZMW' => 'ZMW',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => '어센션 섬',
'AD' => '안도라',
- 'AE' => '아랍에미리트 연합',
+ 'AE' => '아랍에미리트',
'AF' => '아프가니스탄',
'AG' => '앤티가 바부다',
'AI' => '앵귈라',
'AL' => '알바니아',
'AM' => '아르메니아',
- 'AN' => '네덜란드령 안틸레스',
'AO' => '앙골라',
'AQ' => '남극 대륙',
'AR' => '아르헨티나',
@@ -1022,13 +1036,13 @@ $countryNames = array(
'BY' => '벨라루스',
'BZ' => '벨리즈',
'CA' => '캐나다',
- 'CC' => '코코스제도',
+ 'CC' => '코코스 제도',
'CD' => '콩고-킨샤사',
'CF' => '중앙 아프리카 공화국',
- 'CG' => '콩고',
+ 'CG' => '콩고-브라자빌',
'CH' => '스위스',
'CI' => '코트디부아르',
- 'CK' => '쿡제도',
+ 'CK' => '쿡 제도',
'CL' => '칠레',
'CM' => '카메룬',
'CN' => '중국',
@@ -1055,8 +1069,9 @@ $countryNames = array(
'EH' => '서사하라',
'ER' => '에리트리아',
'ES' => '스페인',
- 'ET' => '이디오피아',
+ 'ET' => '에티오피아',
'EU' => '유럽 연합',
+ 'EZ' => '유로존',
'FI' => '핀란드',
'FJ' => '피지',
'FK' => '포클랜드 제도',
@@ -1109,10 +1124,10 @@ $countryNames = array(
'KI' => '키리바시',
'KM' => '코모로',
'KN' => '세인트키츠 네비스',
- 'KP' => '조선민주주의인민공화국',
+ 'KP' => '북한',
'KR' => '대한민국',
'KW' => '쿠웨이트',
- 'KY' => '케이맨제도',
+ 'KY' => '케이맨 제도',
'KZ' => '카자흐스탄',
'LA' => '라오스',
'LB' => '레바논',
@@ -1129,9 +1144,9 @@ $countryNames = array(
'MC' => '모나코',
'MD' => '몰도바',
'ME' => '몬테네그로',
- 'MF' => '생 마르탱',
+ 'MF' => '생마르탱',
'MG' => '마다가스카르',
- 'MH' => '마샬 군도',
+ 'MH' => '마셜 제도',
'MK' => '마케도니아',
'ML' => '말리',
'MM' => '미얀마',
@@ -1223,10 +1238,11 @@ $countryNames = array(
'UA' => '우크라이나',
'UG' => '우간다',
'UM' => '미국령 해외 제도',
+ 'UN' => '유엔',
'US' => '미국',
'UY' => '우루과이',
'UZ' => '우즈베키스탄',
- 'VA' => '바티칸시국',
+ 'VA' => '바티칸 시국',
'VC' => '세인트빈센트그레나딘',
'VE' => '베네수엘라',
'VG' => '영국령 버진아일랜드',
@@ -1241,9 +1257,10 @@ $countryNames = array(
'ZA' => '남아프리카',
'ZM' => '잠비아',
'ZW' => '짐바브웨',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-other' => '{0}세기',
'day-future-other' => '{0}일 후',
'day-narrow-future-other' => '{0}일 후',
'day-narrow-past-other' => '{0}일 전',
@@ -1251,6 +1268,12 @@ $timeUnits = array(
'day-past-other' => '{0}일 전',
'day-short-future-other' => '{0}일 후',
'day-short-past-other' => '{0}일 전',
+ 'fri-future-other' => '{0}주 후 금요일',
+ 'fri-narrow-future-other' => '{0}주 후 금요일',
+ 'fri-narrow-past-other' => '{0}주 전 금요일',
+ 'fri-past-other' => '{0}주 전 금요일',
+ 'fri-short-future-other' => '{0}주 후 금요일',
+ 'fri-short-past-other' => '{0}주 전 금요일',
'hour-future-other' => '{0}시간 후',
'hour-narrow-future-other' => '{0}시간 후',
'hour-narrow-past-other' => '{0}시간 전',
@@ -1267,6 +1290,12 @@ $timeUnits = array(
'minute-past-other' => '{0}분 전',
'minute-short-future-other' => '{0}분 후',
'minute-short-past-other' => '{0}분 전',
+ 'mon-future-other' => '{0}주 후 월요일',
+ 'mon-narrow-future-other' => '{0}주 후 월요일',
+ 'mon-narrow-past-other' => '{0}주 전 월요일',
+ 'mon-past-other' => '{0}주 전 월요일',
+ 'mon-short-future-other' => '{0}주 후 월요일',
+ 'mon-short-past-other' => '{0}주 전 월요일',
'month-future-other' => '{0}개월 후',
'month-narrow-future-other' => '{0}개월 후',
'month-narrow-past-other' => '{0}개월 전',
@@ -1281,6 +1310,12 @@ $timeUnits = array(
'quarter-past-other' => '{0}분기 전',
'quarter-short-future-other' => '{0}분기 후',
'quarter-short-past-other' => '{0}분기 전',
+ 'sat-future-other' => '{0}주 후 토요일',
+ 'sat-narrow-future-other' => '{0}주 후 토요일',
+ 'sat-narrow-past-other' => '{0}주 전 토요일',
+ 'sat-past-other' => '{0}주 전 토요일',
+ 'sat-short-future-other' => '{0}주 후 토요일',
+ 'sat-short-past-other' => '{0}주 전 토요일',
'second-future-other' => '{0}초 후',
'second-narrow-future-other' => '{0}초 후',
'second-narrow-past-other' => '{0}초 전',
@@ -1288,6 +1323,30 @@ $timeUnits = array(
'second-past-other' => '{0}초 전',
'second-short-future-other' => '{0}초 후',
'second-short-past-other' => '{0}초 전',
+ 'sun-future-other' => '{0}주 후 일요일',
+ 'sun-narrow-future-other' => '{0}주 후 일요일',
+ 'sun-narrow-past-other' => '{0}주 전 일요일',
+ 'sun-past-other' => '{0}주 전 일요일',
+ 'sun-short-future-other' => '{0}주 후 일요일',
+ 'sun-short-past-other' => '{0}주 전 일요일',
+ 'thu-future-other' => '{0}주 후 목요일',
+ 'thu-narrow-future-other' => '{0}주 후 목요일',
+ 'thu-narrow-past-other' => '{0}주 전 목요일',
+ 'thu-past-other' => '{0}주 전 목요일',
+ 'thu-short-future-other' => '{0}주 후 목요일',
+ 'thu-short-past-other' => '{0}주 전 목요일',
+ 'tue-future-other' => '{0}주 후 화요일',
+ 'tue-narrow-future-other' => '{0}주 후 화요일',
+ 'tue-narrow-past-other' => '{0}주 전 화요일',
+ 'tue-past-other' => '{0}주 전 화요일',
+ 'tue-short-future-other' => '{0}주 후 화요일',
+ 'tue-short-past-other' => '{0}주 전 화요일',
+ 'wed-future-other' => '{0}주 후 수요일',
+ 'wed-narrow-future-other' => '{0}주 후 수요일',
+ 'wed-narrow-past-other' => '{0}주 전 수요일',
+ 'wed-past-other' => '{0}주 전 수요일',
+ 'wed-short-future-other' => '{0}주 후 수요일',
+ 'wed-short-past-other' => '{0}주 전 수요일',
'week-future-other' => '{0}주 후',
'week-narrow-future-other' => '{0}주 후',
'week-narrow-past-other' => '{0}주 전',
@@ -1302,4 +1361,4 @@ $timeUnits = array(
'year-past-other' => '{0}년 전',
'year-short-future-other' => '{0}년 후',
'year-short-past-other' => '{0}년 전',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesKs.php b/MLEB/cldr/CldrNames/CldrNamesKs.php
index 11f383b8..a176cd35 100644
--- a/MLEB/cldr/CldrNames/CldrNamesKs.php
+++ b/MLEB/cldr/CldrNames/CldrNamesKs.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'اَفار',
'ab' => 'اَبخازِیان',
'ace' => 'اَچَےنیٖز',
@@ -436,9 +436,9 @@ $languageNames = array(
'zun' => 'زوٗنی',
'zxx' => 'کانٛہہ تہِ لِسانیاتی مواد نہٕ',
'zza' => 'زازا',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'ADP' => 'اٮ۪ڑورَن پیسِٹا',
'AED' => 'مُتحدہ عرب اِمارات دِرہم',
'AFN' => 'افغان افغٲنی',
@@ -477,7 +477,8 @@ $currencyNames = array(
'BUK' => 'بٔرمیٖز کیٹ',
'BWP' => 'بوٹٕسوانَن پُلا',
'BYB' => 'بِلیروشِیَن نِو رِبٕل',
- 'BYR' => 'بِلیروشِیَن رِبٕل',
+ 'BYN' => 'بِلیروشِیَن رِبٕل',
+ 'BYR' => 'بِلیروشِیَن رِبٕل (۲۰۰۰–۲۰۱۶)',
'BZD' => 'بِلِزی ڈالر',
'CAD' => 'کینَڑِیَن ڈالر',
'CDF' => 'کونٛگولیٖز فرٛیک',
@@ -575,7 +576,8 @@ $currencyNames = array(
'MMK' => 'مِیانما کیاٹ',
'MNT' => 'مۄنگولِیَن ٹُگرِک',
'MOP' => 'مٮ۪کانیٖز پَٹاکا',
- 'MRO' => 'مورِٹینِیَن عوگیوٗیا',
+ 'MRO' => 'مورِٹینِیَن عوگیوٗیا (1973–2017)',
+ 'MRU' => 'مورِٹینِیَن عوگیوٗیا',
'MTL' => 'مالٹیٖزُک لیٖرا',
'MTP' => 'مالٹیٖزُک پاونٛڑ',
'MUR' => 'مورٮ۪شِیاہٕچ رۄپَے',
@@ -598,8 +600,8 @@ $currencyNames = array(
'OMR' => 'اومِنی رِیال',
'PAB' => 'پانامانِیَن بالبوز',
'PEI' => 'پٔریوٗوِیَن اِنٛٹی',
- 'PEN' => 'پٔریوٗوِیَن نیوٗاوز سولٕز',
- 'PES' => 'پٔریوٗوِیَن سول',
+ 'PEN' => 'پٔریوٗوِیَن سولٕز',
+ 'PES' => 'پٔریوٗوِیَن سول (۱۸۶۳–۱۹۶۵)',
'PGK' => 'نیوٗ پیپُعا گِنِیَن کیٖنا',
'PHP' => 'پھِلِپایِٔن پٮ۪سو',
'PKR' => 'پاکِستٲنۍ رۄپَے',
@@ -656,7 +658,8 @@ $currencyNames = array(
'UYU' => 'اُروٗگایَن پیٚسو',
'UZS' => 'اُبیکِستان سوم',
'VEB' => 'وینٕزوٗلیُک بولِوَر (۱۸۷۱–۲۰۰۸)',
- 'VEF' => 'وینٕزوٗلیُک بولِوَر',
+ 'VEF' => 'وینٕزوٗلیُک بولِوَر (2008–2018)',
+ 'VES' => 'وینٕزوٗلیُک بولِوَر',
'VND' => 'وِیَنَمُک ڈانٛگ',
'VUV' => 'وَنوٗاَتوٗ وَتوٗ',
'WST' => 'سَمون تَلا',
@@ -690,9 +693,9 @@ $currencyNames = array(
'ZRN' => 'زایرِیَن نِو زایِر',
'ZRZ' => 'زَیرُک ڈالَر',
'ZWD' => 'زِمبابِیُک ڈالَر',
-);
+];
-$countryNames = array(
+$countryNames = [
'AD' => 'اٮ۪نڑورا',
'AE' => 'مُتحدہ عرَب امارات',
'AF' => 'اَفغانَستان',
@@ -700,7 +703,6 @@ $countryNames = array(
'AI' => 'انگوئیلا',
'AL' => 'اٮ۪لبانِیا',
'AM' => 'اَرمانِیا',
- 'AN' => 'نَیدَرلینٛڑٕس اٮ۪نٹَیلٕس',
'AO' => 'انگولا',
'AQ' => 'اینٹارٹِکا',
'AR' => 'أرجَنٹینا',
@@ -938,9 +940,9 @@ $countryNames = array(
'ZA' => 'جَنوٗبی اَفریٖکا',
'ZM' => 'جامبِیا',
'ZW' => 'زِمبابے',
-);
+];
-$timeUnits = array(
+$timeUnits = [
'day-one' => '{0} دۄہ',
'day-other' => '{0} دۄہ',
'hour-one' => '{0} گَنٹہٕ',
@@ -955,4 +957,4 @@ $timeUnits = array(
'week-other' => '{0} ہَفتہٕ',
'year-one' => '{0} ؤری',
'year-other' => '{0} ؤری',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesKsf.php b/MLEB/cldr/CldrNames/CldrNamesKsf.php
deleted file mode 100644
index 7837a246..00000000
--- a/MLEB/cldr/CldrNames/CldrNamesKsf.php
+++ /dev/null
@@ -1,335 +0,0 @@
-<?php
-
-$languageNames = array(
- 'ak' => 'riakan',
- 'am' => 'riamarik',
- 'ar' => 'riarab',
- 'be' => 'ribɛlɔrís',
- 'bg' => 'ribulgarí',
- 'bn' => 'ribɛngáli',
- 'cs' => 'ricɛ́k',
- 'de' => 'ridjɛrman',
- 'el' => 'rigrɛ́k',
- 'en' => 'riingɛrís',
- 'es' => 'rikpanyá',
- 'fa' => 'ripɛrsán',
- 'fr' => 'ripɛrɛsǝ́',
- 'ha' => 'rikaksa',
- 'hi' => 'riíndí',
- 'hu' => 'riɔngrɔá',
- 'id' => 'riindonɛsí',
- 'ig' => 'riigbo',
- 'it' => 'riitalyɛ́n',
- 'ja' => 'rijapɔ́ŋ',
- 'jv' => 'rijawanɛ́',
- 'km' => 'rikmɛr',
- 'ko' => 'rikɔrɛɛ́',
- 'ksf' => 'rikpa',
- 'ms' => 'rimalaí',
- 'my' => 'ribirmán',
- 'ne' => 'rinepalɛ́',
- 'nl' => 'riɔlándɛ́',
- 'pa' => 'ripɛnjabí',
- 'pl' => 'ripɔlɔ́n',
- 'pt' => 'ripɔrtugɛ́',
- 'ro' => 'rirɔmán',
- 'ru' => 'rirís',
- 'rw' => 'rirwanda',
- 'so' => 'risomalí',
- 'sv' => 'riswɛ́dǝ',
- 'ta' => 'ritamúl',
- 'th' => 'ritaí',
- 'tr' => 'riturk',
- 'uk' => 'riukrɛ́n',
- 'ur' => 'riurdú',
- 'vi' => 'riwyɛtnám',
- 'yo' => 'riyúuba',
- 'zh' => 'ricinɔá',
- 'zu' => 'rizúlu',
-);
-
-$currencyNames = array(
- 'AED' => 'mɔni mǝ á bǝlɔŋ bǝ kaksa bɛ táatáaŋzǝn',
- 'AOA' => 'mɔni mǝ á angóla',
- 'AUD' => 'mɔni mǝ á ɔstralí',
- 'BHD' => 'mɔni mǝ á barǝ́n',
- 'BIF' => 'mɔni mǝ á burundí',
- 'BWP' => 'mɔni mǝ á botswana',
- 'CAD' => 'mɔni mǝ á kanada',
- 'CDF' => 'mɔni mǝ á kɔngó',
- 'CHF' => 'mɔni mǝ á swís',
- 'CNY' => 'mɔni mǝ á cín',
- 'CVE' => 'mɔni mǝ á kapvɛr',
- 'DJF' => 'mɔni mǝ á dyibutí',
- 'DZD' => 'mɔni mǝ á aljɛrí',
- 'EGP' => 'mɔni mǝ á ɛjípt',
- 'ERN' => 'mɔni mǝ á ɛritrɛ́',
- 'ETB' => 'mɔni mǝ á ɛtyɔpí',
- 'EUR' => 'mɔni mǝ á pɛrɛsǝ́',
- 'GBP' => 'mɔni mǝ á ingɛrís',
- 'GHC' => 'mɔni mǝ á gána',
- 'GMD' => 'mɔni mǝ á gambí',
- 'GNS' => 'mɔni mǝ á ginɛ́',
- 'INR' => 'mɔni mǝ á indí',
- 'JPY' => 'mɔni mǝ á japɔ́ŋ',
- 'KES' => 'mɔni mǝ á kɛnya',
- 'KMF' => 'mɔni mǝ á komɔr',
- 'LRD' => 'mɔni mǝ á libɛrya',
- 'LSL' => 'mɔni mǝ á lǝsóto',
- 'LYD' => 'mɔni mǝ á libí',
- 'MAD' => 'mɔni mǝ á marɔk',
- 'MGA' => 'mɔni mǝ á madagaska',
- 'MRO' => 'mɔni mǝ á mwaritaní',
- 'MUR' => 'mɔni mǝ á mwarís',
- 'MWK' => 'mɔni mǝ á malawi',
- 'MZM' => 'mɔni mǝ á mosambík',
- 'NAD' => 'mɔni mǝ á namibí',
- 'NGN' => 'mɔni mǝ á nijɛ́rya',
- 'RWF' => 'mɔni mǝ á rwanda',
- 'SAR' => 'mɔni mǝ á arabí saodí',
- 'SCR' => 'mɔni mǝ á sɛcɛl',
- 'SDG' => 'mɔni mǝ á sudan',
- 'SHP' => 'mɔni mǝ á sɛntɛ́len',
- 'SLL' => 'mɔni mǝ á syɛraleon',
- 'SOS' => 'mɔni mǝ á somalí',
- 'STD' => 'mɔni mǝ á saotomɛ́ ri priŋsib',
- 'SZL' => 'mɔni mǝ á swazilan',
- 'TND' => 'mɔni mǝ á tunɛsí',
- 'TZS' => 'mɔni mǝ á tanzaní',
- 'UGX' => 'mɔni mǝ á uganda',
- 'USD' => 'mɔni mǝ á amɛrika',
- 'XAF' => 'fráŋ',
- 'XOF' => 'mɔni mǝ á afríka aná wɛs',
- 'ZAR' => 'mɔni mǝ á afrik anǝ a sud',
- 'ZMK' => 'mɔni mǝ á zambí (1968–2012)',
- 'ZMW' => 'mɔni mǝ á zambí',
- 'ZWD' => 'mɔni mǝ á zimbabwɛ́',
-);
-
-$countryNames = array(
- 'AD' => 'andɔrǝ',
- 'AE' => 'bǝlɔŋ bǝ kaksa bɛ táatáaŋzǝn',
- 'AF' => 'afganistáŋ',
- 'AG' => 'antiga ri barbúda',
- 'AI' => 'angiya',
- 'AL' => 'albaní',
- 'AM' => 'armɛní',
- 'AN' => 'antíyǝ nɛlandé',
- 'AO' => 'angóla',
- 'AR' => 'arjǝntín',
- 'AS' => 'samɔa a amɛrika',
- 'AT' => 'otric',
- 'AU' => 'ɔstralí',
- 'AW' => 'aruba',
- 'AZ' => 'azabecán',
- 'BA' => 'bɔsnyɛ ri hɛrsǝgɔvín',
- 'BB' => 'baabaadǝ',
- 'BD' => 'baŋladɛ́c',
- 'BE' => 'bɛljík',
- 'BF' => 'bukína fǝ́ asɔ',
- 'BG' => 'bulgarí',
- 'BH' => 'barǝ́n',
- 'BI' => 'burundí',
- 'BJ' => 'bɛnǝ́n',
- 'BM' => 'bɛɛmúdǝ',
- 'BN' => 'brunǝ́',
- 'BO' => 'bɔɔlíví',
- 'BR' => 'brɛsíl',
- 'BS' => 'baamás',
- 'BT' => 'bután',
- 'BW' => 'botswana',
- 'BY' => 'bɛlaris',
- 'BZ' => 'bɛliz',
- 'CA' => 'kanada',
- 'CD' => 'kɔngó anyɔ́n',
- 'CF' => 'santrafrík',
- 'CG' => 'kɔngó',
- 'CH' => 'swís',
- 'CI' => 'kɔtiwuár',
- 'CK' => 'zɛ i kúk',
- 'CL' => 'cíli',
- 'CM' => 'kamɛrún',
- 'CN' => 'cín',
- 'CO' => 'kolɔmbí',
- 'CR' => 'kɔstaríka',
- 'CU' => 'kuba',
- 'CV' => 'kapvɛr',
- 'CY' => 'cíprɛ',
- 'CZ' => 'cɛ́k',
- 'DE' => 'djɛrman',
- 'DJ' => 'dyibutí',
- 'DK' => 'danmak',
- 'DM' => 'dɔminik',
- 'DO' => 'dɔminik rɛpublík',
- 'DZ' => 'aljɛrí',
- 'EC' => 'ɛkwatɛǝ́',
- 'EE' => 'ɛstoní',
- 'EG' => 'ɛjípt',
- 'ER' => 'ɛritrɛ́',
- 'ES' => 'kpanyá',
- 'ET' => 'ɛtyɔpí',
- 'FI' => 'fínlan',
- 'FJ' => 'fíji',
- 'FK' => 'zǝ maalwín',
- 'FM' => 'mikronɛ́si',
- 'FR' => 'pɛrɛsǝ́',
- 'GA' => 'gabɔŋ',
- 'GB' => 'kǝlɔŋ kǝ kǝtáatáaŋzǝn',
- 'GD' => 'grɛnadǝ',
- 'GE' => 'jɔrjí',
- 'GF' => 'guyán i pɛrɛsǝ́',
- 'GH' => 'gána',
- 'GI' => 'jibraltá',
- 'GL' => 'grínlan',
- 'GM' => 'gambí',
- 'GN' => 'ginɛ́',
- 'GP' => 'gwadɛlúp',
- 'GQ' => 'ginɛ́ ɛkwatɔrial',
- 'GR' => 'grɛ́k',
- 'GT' => 'gwátǝmala',
- 'GU' => 'gwám',
- 'GW' => 'ginɛ́ bisɔ́',
- 'GY' => 'guyán',
- 'HN' => 'ɔnduras',
- 'HR' => 'krwasí',
- 'HT' => 'ayiti',
- 'HU' => 'ɔngrí',
- 'ID' => 'indonɛsí',
- 'IE' => 'ilán',
- 'IL' => 'israɛ́l',
- 'IN' => 'indí',
- 'IO' => 'zǝ ingɛrís ncɔ́m wa indi',
- 'IQ' => 'irák',
- 'IR' => 'iráŋ',
- 'IS' => 'zǝ i glás',
- 'IT' => 'italí',
- 'JM' => 'jamaík',
- 'JO' => 'jɔrdán',
- 'JP' => 'japɔ́ŋ',
- 'KE' => 'kɛnya',
- 'KG' => 'kigistáŋ',
- 'KH' => 'kambodj',
- 'KI' => 'kiribáti',
- 'KM' => 'komɔr',
- 'KN' => 'sɛnkrǝstɔ́f ri nyɛ́vǝ',
- 'KP' => 'korɛanɔ́r',
- 'KR' => 'korɛasud',
- 'KW' => 'kuwɛit',
- 'KY' => 'zǝ i gan',
- 'KZ' => 'kazakstáŋ',
- 'LA' => 'laɔs',
- 'LB' => 'libáŋ',
- 'LC' => 'sɛntlísí',
- 'LI' => 'lictɛnstɛ́n',
- 'LK' => 'srílaŋka',
- 'LR' => 'libɛrya',
- 'LS' => 'lǝsóto',
- 'LT' => 'litwaní',
- 'LU' => 'luksɛmbúr',
- 'LV' => 'lɛtoní',
- 'LY' => 'libí',
- 'MA' => 'marɔk',
- 'MC' => 'monako',
- 'MD' => 'mɔldaví',
- 'MG' => 'madagaska',
- 'MH' => 'zǝ i marcál',
- 'MK' => 'másǝdwán',
- 'ML' => 'mali',
- 'MM' => 'myanmár',
- 'MN' => 'mɔŋolí',
- 'MP' => 'zǝ maryánnɔ́r',
- 'MQ' => 'matiník',
- 'MR' => 'mwaritaní',
- 'MS' => 'mɔnsɛrat',
- 'MT' => 'maltǝ',
- 'MU' => 'mwarís',
- 'MV' => 'maldivǝ',
- 'MW' => 'malawi',
- 'MX' => 'mɛksík',
- 'MY' => 'malɛsí',
- 'MZ' => 'mosambík',
- 'NA' => 'namibí',
- 'NC' => 'kalɛdoní anyɔ́n',
- 'NE' => 'nijɛ́r',
- 'NF' => 'zɛ nɔ́fɔlk',
- 'NG' => 'nijɛ́rya',
- 'NI' => 'níkarágwa',
- 'NL' => 'kǝlɔŋ kǝ ázǝ',
- 'NO' => 'nɔrvɛjǝ',
- 'NP' => 'nɛpal',
- 'NR' => 'nwarú',
- 'NU' => 'niwɛ́',
- 'NZ' => 'zɛlan anyɔ́n',
- 'OM' => 'oman',
- 'PA' => 'panama',
- 'PE' => 'pɛrú',
- 'PF' => 'pɔlinɛsí a pɛrɛsǝ́',
- 'PG' => 'papwazí ginɛ́ anyɔ́n',
- 'PH' => 'filipǝ́n',
- 'PK' => 'pakistáŋ',
- 'PL' => 'polɔ́n',
- 'PM' => 'sɛnpyɛr ri mikɛlɔŋ',
- 'PN' => 'pitkɛ́n',
- 'PR' => 'pɔtoríko',
- 'PS' => 'zǝ palɛstínǝ',
- 'PT' => 'portugál',
- 'PW' => 'palwa',
- 'PY' => 'paragwɛ́',
- 'QA' => 'katá',
- 'RE' => 'rɛunyɔŋ',
- 'RO' => 'rɔmaní',
- 'RU' => 'risí',
- 'RW' => 'rwanda',
- 'SA' => 'arabí saodí',
- 'SB' => 'zǝ salomɔ́n',
- 'SC' => 'sɛcɛl',
- 'SD' => 'sudan',
- 'SE' => 'swɛdǝ',
- 'SG' => 'siŋapó',
- 'SH' => 'sɛntɛ́len',
- 'SI' => 'slovɛní',
- 'SK' => 'slovakí',
- 'SL' => 'syɛraleon',
- 'SM' => 'sɛnmarǝn',
- 'SN' => 'sɛnɛgal',
- 'SO' => 'somalí',
- 'SR' => 'surinam',
- 'ST' => 'saotomɛ́ ri priŋsib',
- 'SV' => 'salvadɔr',
- 'SY' => 'sirí',
- 'SZ' => 'swazilan',
- 'TC' => 'zǝ tirk ri kakɔs',
- 'TD' => 'caád',
- 'TG' => 'togo',
- 'TH' => 'tɛlan',
- 'TJ' => 'tadjikistaŋ',
- 'TK' => 'tokǝlao',
- 'TL' => 'timor anǝ á ɛst',
- 'TM' => 'tirkmɛnistaŋ',
- 'TN' => 'tunɛsí',
- 'TO' => 'tɔŋa',
- 'TR' => 'tirkí',
- 'TT' => 'tɛrinitɛ ri tobago',
- 'TV' => 'tuwalu',
- 'TW' => 'tɛwán',
- 'TZ' => 'tanzaní',
- 'UA' => 'ukrain',
- 'UG' => 'uganda',
- 'US' => 'amɛrika',
- 'UY' => 'urugwɛ́',
- 'UZ' => 'usbɛkistaŋ',
- 'VA' => 'watikáŋ',
- 'VC' => 'sɛnvǝnsǝŋ ri grɛnadín',
- 'VE' => 'wɛnǝzwɛla',
- 'VG' => 'zǝ bɛ gɔn inɛ a ingɛrís',
- 'VI' => 'zǝ bɛ gɔn inɛ á amɛrika',
- 'VN' => 'wyɛtnám',
- 'VU' => 'wanwatu',
- 'WF' => 'walis ri futuna',
- 'WS' => 'samɔa',
- 'YE' => 'yɛmɛn',
- 'YT' => 'mayɔ́t',
- 'ZA' => 'afrik anǝ a sud',
- 'ZM' => 'zambí',
- 'ZW' => 'zimbabwɛ́',
-);
diff --git a/MLEB/cldr/CldrNames/CldrNamesKsh.php b/MLEB/cldr/CldrNames/CldrNamesKsh.php
index 0502e1f4..d085b42b 100644
--- a/MLEB/cldr/CldrNames/CldrNamesKsh.php
+++ b/MLEB/cldr/CldrNames/CldrNamesKsh.php
@@ -1,21 +1,27 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'Afahresch',
'ab' => 'Abchahsesch',
'ace' => 'Aschenehsesch',
+ 'ada' => 'Adangmesch',
+ 'ady' => 'Adygehjsch',
'ae' => 'Avästahnesch',
'aeb' => 'Tonehsesch Arahbesch',
'af' => 'Afrikaans',
'afh' => 'Afrehihlesch',
+ 'agq' => 'Aghehmesch',
+ 'ain' => 'Aijnu',
'ak' => 'Akahnesch',
'akk' => 'Akahdesch',
'ale' => 'Ale’uhtesch',
'am' => 'Amhahresch',
'an' => 'Arrajonehsesch',
'ang' => 'Ahl Änglesch',
+ 'anp' => 'Anjikahnesch',
'ar' => 'Arahbesch',
'ar-001' => 'Schtandatt Arahbesch',
+ 'arp' => 'Arrappaho',
'arq' => 'Aljehresch Arahbesch',
'ary' => 'Marokahnesch Arahbesch',
'arz' => 'Äjiptesch Arahbesch',
@@ -24,29 +30,45 @@ $languageNames = array(
'ase' => 'Amärrekahnesche Blendeschprohch',
'ast' => 'Astuhrejahnesch',
'av' => 'Avahresch',
+ 'awa' => 'Awahdesch',
'ay' => 'Aimahresch',
'az' => 'Asserbaidschahnesch',
- 'azb' => 'Södasserbaidschahnesch',
+ 'az-arab' => 'Södasserbaidschahnesch',
'ba' => 'Baschkihresch',
'bal' => 'Beluhtschesch',
'ban' => 'Balinehsesch',
'bar' => 'Bairesch',
+ 'bas' => 'Basaa-Schprohche',
'be' => 'Wiißrußesch',
'bem' => 'Bemba',
'bez' => 'Bena',
- 'bg' => 'Bulljaaresch',
+ 'bg' => 'Bulljahresch',
+ 'bho' => 'Bhohdschpuresch',
+ 'bi' => 'Bislahmesch',
+ 'bin' => 'Edo',
'bm' => 'Bambara',
- 'bn' => 'Bängjaalesch',
+ 'bn' => 'Bängjahlesch',
'bo' => 'Tibehtesch',
'bpy' => 'Bischnuprejahnesch',
'br' => 'Bettohnesch',
- 'bra' => 'Brajesch',
+ 'bra' => 'Brahjesch',
'brh' => 'Brahuijesch',
'brx' => 'Boddo',
'bs' => 'Boßnesch',
'bua' => 'Burejahtesch',
'bug' => 'Bujinehsesch',
+ 'byn' => 'Bilihnesch',
'ca' => 'Kattalahnesch',
+ 'ce' => 'Tschätschehnesch',
+ 'ceb' => 'Zebuwahnesch',
+ 'cgg' => 'Kihja-Schprohch',
+ 'ch' => 'Chamorru',
+ 'chk' => 'Trukehsesch',
+ 'chm' => 'Mahresch',
+ 'cho' => 'Tschoktoh',
+ 'chr' => 'Tschärrokeh',
+ 'chy' => 'Tschäjänn',
+ 'ckb' => 'Zäntrahl-Kurrdesch',
'co' => 'Korsesch',
'cop' => 'Koptesch',
'cs' => 'Tschäschesch',
@@ -55,106 +77,184 @@ $languageNames = array(
'cv' => 'Tschowaschesch',
'cy' => 'Wallihsesch',
'da' => 'Dähnesch',
+ 'dak' => 'Dakohtesch',
+ 'dar' => 'Darjihnesch',
+ 'dav' => 'Dawedahnesch',
'de' => 'Deutsch',
- 'de-at' => 'Deutsch uß Ößterich',
+ 'de-at' => 'Deutsch uß Öhßterich',
'de-ch' => 'Deutsch uß de Schweijz',
+ 'dgr' => 'Dohjribesch',
+ 'dje' => 'Djerma',
'dsb' => 'Niddersorbesch',
+ 'dua' => 'Du’ala',
'dum' => 'Meddelnehderlängsch',
'dv' => 'Divehjesch',
+ 'dyo' => 'Jola-Fonyisch',
'dz' => 'Butahnesch',
'dzg' => 'Dassajahnesch',
- 'ebu' => 'Embu',
+ 'ebu' => 'Kîembu',
'ee' => 'Ewe',
- 'efi' => 'Efik',
+ 'efi' => 'Äffiksch',
'egl' => 'Emilijahnesch',
'egy' => 'Ahl Äjiptesch',
+ 'eka' => 'Ekajukesch',
'el' => 'Jrihschesch',
'en' => 'Änglesch',
- 'en-au' => 'Änglesch uß Außtraalije',
+ 'en-au' => 'Änglesch uß Außtrahlije',
'en-ca' => 'Änglesch uß Kanada',
- 'en-gb' => 'Änglesch uß Jruußbrettannije',
- 'en-us' => 'Amärrekaanesch Änglesch',
+ 'en-gb' => 'Änglesch uß Jruhßbrettannije',
+ 'en-us' => 'Amärrekahnesch Änglesch',
'enm' => 'Meddelänglesch',
'eo' => 'Esperanto',
'es' => 'Schpahnesch',
- 'es-419' => 'Schpaanesch uß Latting-Ammärrika',
+ 'es-419' => 'Schpahnesch uß Latting-Ammärrika',
'es-es' => 'Schpahnesch en Schpahneje',
'es-mx' => 'Schpahnesch en Mäxikoh',
- 'esu' => 'Zätrahl-Jupik',
+ 'esu' => 'Zäntrahl-Juppik',
'et' => 'Äßnesch',
'eu' => 'Baskesch',
+ 'ewo' => 'Ewonndo',
'fa' => 'Pärsesch',
+ 'ff' => 'Fulfulde',
'fi' => 'Finnesch',
- 'fil' => 'fil',
- 'fj' => 'Fidschesch',
- 'fo' => 'Färröeresch',
- 'fr' => 'Franzüüsesch',
- 'fr-ca' => 'Franzüüsesch uß Kanada',
- 'fr-ch' => 'Franzüüsesch uß de Schweijz',
- 'fy' => 'Wäßfriisesch',
- 'ga' => 'Ieresch',
- 'gl' => 'Jalliizesch',
- 'gn' => 'Juwaraanesch',
+ 'fil' => 'Fillipihnesch',
+ 'fj' => 'Fihdschesch',
+ 'fo' => 'Färröhresch',
+ 'fon' => 'Fohnesch',
+ 'fr' => 'Franzühsesch',
+ 'fr-ca' => 'Franzühsesch uß Kanada',
+ 'fr-ch' => 'Franzühsesch uß de Schweijz',
+ 'fur' => 'Frijauhlesch',
+ 'fy' => 'Wäßfrihsesch',
+ 'ga' => 'Ihresch',
+ 'gaa' => 'Jah',
+ 'gez' => 'Ji’is-Ahl-Ättejohpesch',
+ 'gil' => 'Jillbättehsesch',
+ 'gl' => 'Jallihzesch',
+ 'gn' => 'Juwarahnesch',
+ 'gor' => 'Jorontalohsch',
'gsw' => 'Schwitzerdütsch',
'gu' => 'Gutscharatesch',
+ 'gv' => 'Mangx',
'ha' => 'Haußa',
- 'haw' => 'Hauajaanesch',
- 'he' => 'Hebräjesch',
- 'hi' => 'Hindi',
+ 'haw' => 'Hauajahnesch',
+ 'he' => 'Hebrähjesch',
+ 'hi' => 'Hinndi',
+ 'hil' => 'Hiligaynon',
+ 'hmn' => 'Hmong',
'hr' => 'Krowatesch',
- 'ht' => 'Ha’iitesch',
- 'hu' => 'Unjarresch',
- 'hy' => 'Armeenesch',
- 'id' => 'Indoneesesch',
+ 'hsb' => 'Bovversorrbesch',
+ 'ht' => 'Ha’iihtesch',
+ 'hu' => 'Unnjarresch',
+ 'hup' => 'Hupa',
+ 'hy' => 'Armehnesch',
+ 'hz' => 'Herrehro',
+ 'ia' => 'de Interlingua',
+ 'iba' => 'Ibahnesch',
+ 'ibb' => 'Ibibio',
+ 'id' => 'Indonehsesch',
'ig' => 'Igbo',
+ 'ilo' => 'Ilokahnesch',
'inh' => 'Engjuschesch',
- 'io' => 'Ido',
- 'is' => 'Ißländesch',
- 'it' => 'Etalljänesch',
+ 'io' => 'Ihdo',
+ 'is' => 'Ißlänndesch',
+ 'it' => 'Etalljähnesch',
'iu' => 'Inuktitut',
'izh' => 'Ingjrijahnesch',
- 'ja' => 'Japaanesch',
+ 'ja' => 'Japahnesch',
'jam' => 'Jamaikahnesch-Änglesch',
'jbo' => 'Lodschbahn',
+ 'jgo' => 'Njomba',
'jpr' => 'Jühdesch-Pärsesch',
- 'jut' => 'Jütesch',
+ 'jut' => 'Jüttesch',
'jv' => 'Javahnesch',
'ka' => 'Je’orjesch',
+ 'kab' => 'Kabyhlesch',
+ 'kam' => 'Kamba vun Kehnija',
+ 'kbd' => 'Kabadihnesch',
+ 'kde' => 'Chimakonde',
'kea' => 'Kapvärdesch',
- 'kk' => 'Kassakesch',
+ 'kfo' => 'Koro vun de Älfebeijnköß',
+ 'kha' => 'Khasi',
+ 'khq' => 'Kojra Tschihni',
+ 'ki' => 'Rekohjo',
+ 'kj' => 'Oschivambo',
+ 'kk' => 'Kassakkesch',
+ 'kkj' => 'Kako',
+ 'kl' => 'Jröhnländesch',
+ 'kln' => 'Kaländjihnesch',
'km' => 'Khmer',
+ 'kmb' => 'Kimbundu',
'kn' => 'Kannada',
'ko' => 'Korrejaanesch',
- 'ks' => 'Kaschmieresch',
+ 'kok' => 'Kon’kahnesch',
+ 'kpe' => 'Kpäle',
+ 'kr' => 'Kanuhresch',
+ 'krc' => 'Karatschaj-Balkahresch-Törkesch',
+ 'krl' => 'Karehlesch',
+ 'kru' => 'Korochesch',
+ 'ks' => 'Kaschmihresch',
+ 'ksf' => 'Bafijahnesch',
'ksh' => 'Kölsch',
- 'ku' => 'Kurdesch',
+ 'ku' => 'Kurrdesch',
+ 'kum' => 'Kumykesch',
+ 'kv' => 'Kohmesch',
+ 'kw' => 'Kornesch',
'ky' => 'Kirjihsesch',
'la' => 'Lateijnesch',
+ 'lad' => 'Ladihnesch',
+ 'lag' => 'Lango',
'lah' => 'de Landa-Schprooche',
'lb' => 'Luxemborjesch',
+ 'lez' => 'Lesjesch',
+ 'lg' => 'Lugannda',
+ 'li' => 'Lemburjesch',
+ 'lkt' => 'Lakota',
'ln' => 'Lingjalla',
'lo' => 'Lahootesch',
+ 'loz' => 'Silohzi',
+ 'lrc' => 'Nood-Luhresch',
'lt' => 'Littouesch',
- 'luy' => 'Luyjanesch',
+ 'lu' => 'Kiluba',
+ 'lua' => 'Tschiluba',
+ 'lun' => 'Schilunnda',
+ 'luo' => 'Luo',
+ 'luy' => 'Luhjesch',
'lv' => 'Lättesch',
+ 'mdf' => 'Mokschah',
'mg' => 'Madajaßkesch',
- 'mi' => 'Maahori',
- 'mk' => 'Mazedoonesch',
+ 'mh' => 'Maschallehsesch',
+ 'mi' => 'Ma’ohresch',
+ 'mk' => 'Mazedohnesch',
'ml' => 'Mallajalam',
- 'mn' => 'Mongjolesch',
- 'mr' => 'Marraatesch',
+ 'mn' => 'Mongjohlesch',
+ 'mni' => 'Meitei-Manipuhresch',
+ 'mr' => 'Marrahtesch',
'ms' => 'Mallaijesch',
- 'mt' => 'Malteesesch',
- 'mul' => '-ongerscheidlijje Schprooche-',
- 'my' => 'Burmessesch',
- 'nb' => 'Norrweejesch Bokmål',
+ 'mt' => 'Maltehsesch',
+ 'mua' => 'Mundang',
+ 'mul' => '-ongerscheidlijje Schprohche-',
+ 'mus' => 'Krihk',
+ 'mwl' => 'Mirandehsesch',
+ 'my' => 'Burmehsesch',
+ 'myv' => 'Ärsjahnesch',
+ 'na' => 'Nauruhesch',
+ 'nap' => 'Napolletahnesch',
+ 'nb' => 'Norrwehjesch Bokmål',
'nd' => 'Nood-Ndebele',
- 'ne' => 'Nepallessesch',
+ 'nds-nl' => 'Nehdersaksesch en de Nederläng',
+ 'ne' => 'Nepallehsesch',
+ 'new' => 'Newahresch',
+ 'ng' => 'Ndongjahnesch',
'nl' => 'Holländesch',
- 'nl-be' => 'Flämesch',
- 'nn' => 'Neu-Norrweejesch',
- 'no' => 'Norrweejesch',
- 'nso' => 'Nood-Sooto',
+ 'nl-be' => 'Flähmesch',
+ 'nmg' => 'Gyele',
+ 'nn' => 'Neu Norrwehjesch',
+ 'nnh' => 'Njijembohn',
+ 'no' => 'Norrwehjesch',
+ 'nog' => 'Nojal',
+ 'nso' => 'Nood-Sohto',
+ 'nv' => 'Navvacho',
'ny' => 'Schi-Schewa',
'or' => 'Oriija',
'os' => 'Oßeetesch',
@@ -165,67 +265,91 @@ $languageNames = array(
'pt-br' => 'Brasilljaanesch Pochtojesesch',
'pt-pt' => 'Pochtojesesch uß Pochtojall',
'qu' => 'Kättschowa',
+ 'quc' => 'K’ische’',
'rm' => 'Rätoromaanesch',
'rn' => 'K-Rundesch',
'ro' => 'Rumänesch',
'rof' => 'Kirombo',
'ru' => 'Rußßesch',
+ 'rup' => 'Arromahnesch',
'rw' => 'Kinja-Ruandesch',
'sa' => 'Sanskrit',
'sah' => 'Jackutesch',
+ 'sba' => 'Njambaij',
'sd' => 'Sinndi',
'se' => 'Nood-Lappländesch',
+ 'ses' => 'Kojraboro Senni',
'sg' => 'Sangjo',
'sh' => 'Särbokowatesch',
+ 'shi' => 'Taschelhittesch',
'si' => 'Singjaleesesch',
'sk' => 'ẞlovakesch',
'sl' => 'ẞloveenesch',
'sm' => 'Sammohanesch',
+ 'smj' => 'Lule-Läppländesch',
+ 'smn' => 'Inahri Lappländesch',
'sn' => 'Schi-Schona',
- 'so' => 'Somaalesch',
- 'sq' => 'Albaanesch',
+ 'so' => 'Somahlesch',
+ 'sq' => 'Albahnesch',
'sr' => 'Särbesch',
'ss' => 'Si-Swatesch',
'st' => 'Söd-Sooto',
- 'su' => 'Sindaneesesch',
- 'sv' => 'Schweedesch',
- 'sw' => 'Suaheelesch',
- 'swb' => 'Kommooresch',
- 'ta' => 'Tamiilesch',
- 'te' => 'Telluuju',
+ 'su' => 'Sindanehsesch',
+ 'sv' => 'Schwehdesch',
+ 'sw' => 'Suahehlesch',
+ 'swb' => 'Kommohresch',
+ 'syr' => 'Sührejakkesch',
+ 'ta' => 'Tamihlesch',
+ 'te' => 'Telluhju',
'tet' => 'Tetumsch',
- 'tg' => 'Tadschiikesch',
+ 'tg' => 'Tadschihkesch',
'th' => 'Tailändesch',
- 'ti' => 'Tijrenejaanesch',
- 'tk' => 'Törkmeenesch',
- 'tl' => 'Tagalog',
- 'tn' => 'Se-Zwaanesch',
- 'to' => 'Tongjaanesch',
- 'tpi' => 'Took Pisin',
+ 'ti' => 'Tijrenejahnesch',
+ 'tig' => 'Tigre',
+ 'tk' => 'Törkmehnesch',
+ 'tl' => 'Tajalloch',
+ 'tlh' => 'Klingjohnesch',
+ 'tn' => 'Se-Zwahnesch',
+ 'to' => 'Tongjahnesch',
+ 'tpi' => 'Tok Pisin',
'tr' => 'Törkesch',
- 'ts' => 'Xi-Zongjanesch',
- 'tt' => 'Tattaaresch',
- 'ty' => 'Tahitesch',
- 'ug' => 'Uj’juuersch',
+ 'ts' => 'Xi-Zongjahnesch',
+ 'tt' => 'Tattahresch',
+ 'twq' => 'Tasawaq',
+ 'ty' => 'Tahihtesch',
+ 'tyv' => 'Tuvinijahnesch',
+ 'tzm' => 'Tamasicht ussem meddlere Atlas',
+ 'udm' => 'Udmuchtesch',
+ 'ug' => 'Uj’juhresch',
'uk' => 'Ukrainesch',
+ 'umb' => 'Umbundesch',
'und' => '-onbikannte-Schprooch-',
'ur' => 'Urdu/Hindi',
- 'uz' => 'Ußbeekesch',
+ 'uz' => 'Ußbehkesch',
've' => 'Wenda',
- 'vi' => 'Vijätnammeesesch',
+ 'vi' => 'Vijätnammehsesch',
+ 'vo' => 'Volapük',
+ 'wa' => 'Walohnesch',
'wae' => 'Walserdütsch',
+ 'wal' => 'Welahmo',
+ 'war' => 'Waray-Waray',
'wo' => 'Woloff',
- 'xh' => 'Isi-Khoosa',
- 'yo' => 'Joruuba',
- 'yue' => 'Kanton-Schineesesch',
- 'zh' => 'Schineesesch',
- 'zh-hans' => 'Schineesesch en de eijfacher Schreff',
- 'zh-hant' => 'Schineesesch en de tradizjonälle Schreff',
- 'zu' => 'Suulu',
+ 'xal' => 'Kalmükkesch',
+ 'xh' => 'Isi-Khohsa',
+ 'ybb' => 'Jämmbah',
+ 'yi' => 'Jiddesch',
+ 'yo' => 'Joruhba',
+ 'yue' => 'Kanton-Schinehsesch',
+ 'zh' => 'Schinehsesch (Mandarin)',
+ 'zh-hans' => 'Schinehsesch (eijfache Schreff)',
+ 'zh-hant' => 'Schinehsesch (tradizjonälle Schreff)',
+ 'zu' => 'Suhlu',
+ 'zun' => 'Suhñi',
'zxx' => 'kein Schprooch',
-);
+ 'zza' => 'Sahsajesch',
+];
-$currencyNames = array(
+$currencyNames = [
'AED' => 'de vereineschte arraabesche Emiraate ier Dirham',
'AFN' => 'Afjahni',
'ALL' => 'albaanesche Lek',
@@ -250,7 +374,8 @@ $currencyNames = array(
'BSD' => 'bahama’sche Dollaa',
'BTN' => 'bhutanesesche Ngultrum',
'BWP' => 'Pula us Bozwaana',
- 'BYR' => 'wiißrußesche Rubel',
+ 'BYN' => 'wiißrußesche Rubel',
+ 'BYR' => 'wiißrußesche Rubel (2000–2016)',
'BZD' => 'belizjaanesche Dollaa',
'CAD' => 'kannaadesche Dollaa',
'CDF' => 'kongjoleesesche Frang',
@@ -320,7 +445,8 @@ $currencyNames = array(
'MMK' => 'burmeesesche Kyat',
'MNT' => 'mongjoolesche Tugrik',
'MOP' => 'makaneesesche Pataca',
- 'MRO' => 'mauretanesche Ouguiya',
+ 'MRO' => 'mauretanesche Ouguiya (1973–2017)',
+ 'MRU' => 'mauretanesche Ouguiya',
'MUR' => 'maurizjahnesche Ruupije',
'MVR' => 'mallediivesche Rufiyaa',
'MWK' => 'malaawesche Kwache',
@@ -336,7 +462,7 @@ $currencyNames = array(
'NZD' => 'neuseeländesche Dollaa',
'OMR' => 'ommaanesche Rijal',
'PAB' => 'pannameesesche Balboa',
- 'PEN' => 'perruaanesche Nuevo Sol',
+ 'PEN' => 'perruaanesche Sol',
'PGK' => 'papua neujinejaanesche Kina',
'PHP' => 'fillipiinesche Pesos',
'PKR' => 'pakestaanesche Ruupije',
@@ -360,7 +486,8 @@ $currencyNames = array(
'SOS' => 'somaalesche Schillenge',
'SRD' => 'sürinameesesche Dollaa',
'SSP' => 'södsudaneesesche Pongk',
- 'STD' => 'Dobra vun São Tomé un Príncipe',
+ 'STD' => 'Dobra vun São Tomé un Príncipe (1977–2017)',
+ 'STN' => 'Dobra vun São Tomé un Príncipe',
'SVC' => 'asalvadorejaanesche Cosan',
'SYP' => 'süüresche Pund',
'SZL' => 'swasiländesche Lilangeni',
@@ -379,7 +506,8 @@ $currencyNames = array(
'USD' => 'ammärrikaanesche Dollaa',
'UYU' => 'urrujuwaische Peeso',
'UZS' => 'ußbeekesche Som',
- 'VEF' => 'venezuelaanesche Bolívar',
+ 'VEF' => 'venezuelaanesche Bolívar (2008–2018)',
+ 'VES' => 'venezuelaanesche Bolívar',
'VND' => 'vijätnammeesesche Dong',
'VUV' => 'vanuatesche Vatu',
'WST' => 'samowaanesche Tala',
@@ -400,9 +528,9 @@ $currencyNames = array(
'ZMW' => 'sambesche Kwacha',
'ZWD' => 'simbabwesche Dollaa (1980–2008)',
'ZWL' => 'simbabwesche Dollaa (2009)',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'Aßension',
'AD' => 'Andorra',
'AE' => 'Vereinschte Arrabesche Emmirate',
@@ -411,7 +539,6 @@ $countryNames = array(
'AI' => 'Anggwilla',
'AL' => 'Albaanije',
'AM' => 'Arrmeenije',
- 'AN' => 'de Nederlängsche Antille',
'AO' => 'Angjoola',
'AQ' => 'der Södpol',
'AR' => 'Ajjentiinije',
@@ -456,7 +583,7 @@ $countryNames = array(
'CO' => 'Kolumbije',
'CP' => 'de Klipperton-Ensel',
'CR' => 'Kostarika',
- 'CU' => 'Kuba',
+ 'CU' => 'Kuhba',
'CV' => 'de kapvärdesche Enselle',
'CW' => 'Curaçao',
'CX' => 'de Weihnaachs-Ensel',
@@ -477,7 +604,7 @@ $countryNames = array(
'ER' => 'Äritreja',
'ES' => 'Schpaanije',
'ET' => 'Ättijoopije',
- 'EU' => 'de Europäjesche Unijon',
+ 'EU' => 'de Europähjesche Unijon',
'FI' => 'Finnland',
'FJ' => 'de Fidschi-Endelle',
'FK' => 'de Falkland-Enselle',
@@ -486,7 +613,7 @@ $countryNames = array(
'FR' => 'Frankrisch',
'GA' => 'Jabuhn',
'GB' => 'Jruußbrettannije',
- 'GD' => 'Jrenaada',
+ 'GD' => 'Jrenahda',
'GE' => 'Jeorrjije',
'GF' => 'Franzüüsesch Jujaana',
'GG' => 'Jöönsei',
@@ -499,7 +626,7 @@ $countryNames = array(
'GQ' => 'Äquatorial Jineeja',
'GR' => 'Jriescheland',
'GS' => 'Söd-Jeorjie un de södlijje Botteramms-Enselle',
- 'GT' => 'Juwatemaala',
+ 'GT' => 'Juwatemahla',
'GU' => 'Juham',
'GW' => 'Jinneha_Bißau',
'GY' => 'Jujaana',
@@ -574,7 +701,7 @@ $countryNames = array(
'NE' => 'Nijer',
'NF' => 'de Noofok-Ensel',
'NG' => 'Nikaraagua',
- 'NI' => 'Nikaraaguwa',
+ 'NI' => 'Nikarahguwa',
'NL' => 'de Nederläng',
'NO' => 'Norrweeje',
'NP' => 'Nepall',
@@ -597,7 +724,7 @@ $countryNames = array(
'PW' => 'Pallau',
'PY' => 'Parraguwai',
'QA' => 'Kataa',
- 'QO' => 'Ozejaanije ußerhallef',
+ 'QO' => 'Ozejahnije ußerhallef',
'RE' => 'Rehunjohn',
'RO' => 'Romäänije',
'RS' => 'Särbije',
@@ -620,7 +747,7 @@ $countryNames = array(
'SR' => 'Sürinamm',
'SS' => 'Södsudahn',
'ST' => 'Zint Tommeh un Printschipe',
- 'SV' => 'Äl Slavadoor',
+ 'SV' => 'Äl Slavadohr',
'SX' => 'Zint Maarten',
'SY' => 'Sürije',
'SZ' => 'ẞwaasiland',
@@ -637,7 +764,7 @@ $countryNames = array(
'TN' => 'Tuneesije',
'TO' => 'Tongga',
'TR' => 'de Törkei',
- 'TT' => 'Trinidad un Tobääjo',
+ 'TT' => 'Trinidad un Tobähjo',
'TV' => 'Tuvalu',
'TW' => 'Taiwan',
'TZ' => 'Tansanija',
@@ -662,9 +789,9 @@ $countryNames = array(
'ZA' => 'de Republik Södaffrika',
'ZM' => 'Sambija',
'ZW' => 'Simbabwe',
-);
+];
-$timeUnits = array(
+$timeUnits = [
'day-one' => '{0} Dääsch',
'day-other' => '{0} Dääsch',
'day-zero' => '{0} Dääsch',
@@ -686,7 +813,13 @@ $timeUnits = array(
'week-one' => '{0} Woche',
'week-other' => '{0} Woche',
'week-zero' => '{0} Woche',
+ 'year-future-one' => 'en {0} Johr',
+ 'year-future-other' => 'en {0} Johre',
+ 'year-future-zero' => 'en keinem Johr',
'year-one' => '{0} Johre',
'year-other' => '{0} Johre',
+ 'year-past-one' => 'vör {0} Johr',
+ 'year-past-other' => 'vör {0} Johre',
+ 'year-past-zero' => 'vör keijnem Johr',
'year-zero' => '{0} Johre',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesKw.php b/MLEB/cldr/CldrNames/CldrNamesKw.php
index fabd39ad..21da4fd0 100644
--- a/MLEB/cldr/CldrNames/CldrNamesKw.php
+++ b/MLEB/cldr/CldrNames/CldrNamesKw.php
@@ -1,41 +1,55 @@
<?php
-$languageNames = array(
+$languageNames = [
'ar' => 'Arabek',
+ 'ar-001' => 'Arabek Savonek Arnowydh',
+ 'br' => 'Bretonek',
'cy' => 'Kembrek',
'da' => 'Danek',
'de' => 'Almaynek',
+ 'de-at' => 'Almaynek (Ostri)',
+ 'de-ch' => 'Almaynek Ughel (Pow Swis)',
+ 'el' => 'Greka',
'en' => 'Sowsnek',
+ 'en-au' => 'Sowsnek (Ostrali)',
+ 'en-ca' => 'Sowsnek (Kanada)',
+ 'en-gb' => 'Sowsnek (Breten Veur)',
'es' => 'Spaynek',
'eu' => 'Baskek',
'fr' => 'Frenkek',
+ 'fr-ca' => 'Frenkek (Kanada)',
+ 'fr-ch' => 'Frenkek (Pow Swis)',
'ga' => 'Wordhonek',
+ 'gd' => 'Godhalek Alban',
'it' => 'Italek',
'ja' => 'Japanek',
'kw' => 'kernewek',
'nl' => 'Iseldiryek',
'pt' => 'Portyngalek',
- 'pt-br' => 'Portyngalek Brasil',
+ 'pt-pt' => 'Portyngalek (Ewrop)',
+ 'ro-md' => 'Moldavek',
'ru' => 'Russek',
'yue' => 'Kantonek',
'zh' => 'Chinek',
- 'zh-hans' => 'Chinek sempel',
- 'zh-hant' => 'Chînek Tradycyonal',
-);
+ 'zh-hans' => 'Chinek sempelhes',
+ 'zh-hant' => 'Chinek hengovek',
+];
-$currencyNames = array(
+$currencyNames = [
'EUR' => 'Euro',
-);
+];
-$countryNames = array(
+$countryNames = [
'BR' => 'Brasil',
'CN' => 'China',
'DE' => 'Almayn',
+ 'EU' => 'Unyans Europek',
'FR' => 'Pow Frenk',
'GB' => 'Rywvaneth Unys',
'IN' => 'Eynda',
'IT' => 'Itali',
'JP' => 'Japan',
'RU' => 'Russi',
+ 'UN' => 'Kenedhlow Unys',
'US' => 'Statys Unys',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesKy.php b/MLEB/cldr/CldrNames/CldrNamesKy.php
index b942a665..f2848f61 100644
--- a/MLEB/cldr/CldrNames/CldrNamesKy.php
+++ b/MLEB/cldr/CldrNames/CldrNamesKy.php
@@ -1,228 +1,404 @@
<?php
-$languageNames = array(
+$languageNames = [
+ 'aa' => 'афарча',
'ab' => 'абхазча',
+ 'ace' => 'ачехче',
+ 'ada' => 'адаңмече',
+ 'ady' => 'адыгейче',
'af' => 'африкаанча',
'agq' => 'агемче',
+ 'ain' => 'айнуча',
'ak' => 'аканча',
+ 'ale' => 'алеутча',
+ 'alt' => 'түштүк алтайча',
'am' => 'амхарча',
+ 'an' => 'арагончо',
+ 'anp' => 'ангикача',
'ar' => 'арабча',
'ar-001' => 'азыркы адабий араб тилинде',
- 'arn' => 'мапучеде',
+ 'arn' => 'мапучече',
+ 'arp' => 'арапахочо',
'as' => 'ассамча',
'asa' => 'асуча',
+ 'ast' => 'астурийче',
+ 'av' => 'аварикче',
+ 'awa' => 'авадхиче',
+ 'ay' => 'аймарача',
'az' => 'азербайжанча',
'ba' => 'башкырча',
+ 'ban' => 'баличе',
+ 'bas' => 'басаача',
'be' => 'беларусча',
'bem' => 'бембача',
'bez' => 'бенача',
'bg' => 'болгарча',
- 'bm' => 'бамбарада',
+ 'bgn' => 'чыгыш балучиче',
+ 'bho' => 'бхожпуриче',
+ 'bi' => 'бисламача',
+ 'bin' => 'биниче',
+ 'bla' => 'сиксикача',
+ 'bm' => 'бамбарача',
'bn' => 'бангладешче',
'bo' => 'тибетче',
'br' => 'бретончо',
- 'brx' => 'бододо',
+ 'brx' => 'бодочо',
'bs' => 'боснийче',
- 'ca' => 'каталанча',
+ 'bug' => 'бугийче',
+ 'byn' => 'блинче',
+ 'ca' => 'каталонча',
+ 'ce' => 'чеченче',
+ 'ceb' => 'себуанча',
'cgg' => 'чигача',
+ 'ch' => 'чаморрочо',
+ 'chk' => 'чуукиче',
+ 'chm' => 'мариче',
+ 'cho' => 'чокточо',
'chr' => 'черокиче',
- 'ckb' => 'сорани курд',
+ 'chy' => 'шайеннче',
+ 'ckb' => 'борбордук курдча',
'co' => 'корсиканча',
+ 'crs' => 'сеселва креол французча',
'cs' => 'чехче',
+ 'cu' => 'чиркөө славянча',
+ 'cv' => 'чувашча',
'cy' => 'уелшче',
'da' => 'датча',
+ 'dak' => 'дакотача',
+ 'dar' => 'даргинче',
'dav' => 'таитача',
'de' => 'немисче',
- 'de-ch' => 'жогорку немисче (Швейцария)',
- 'dje' => 'замрача',
+ 'de-ch' => 'адабий немисче (Швейцария)',
+ 'dgr' => 'догрибче',
+ 'dje' => 'зармача',
'dsb' => 'төмөнкү сорбианча',
'dua' => 'дуалача',
+ 'dv' => 'дивехиче',
'dyo' => 'жола-фониче',
'dz' => 'жонгуча',
+ 'dzg' => 'дазагача',
'ebu' => 'эмбуча',
'ee' => 'эбече',
+ 'efi' => 'эфикче',
+ 'eka' => 'экажукча',
'el' => 'грекче',
'en' => 'англисче',
+ 'en-us' => 'англисче (Америка Кошмо Штаттары)',
'eo' => 'эсперанто',
'es' => 'испанча',
'es-es' => 'испанча (Европа)',
'et' => 'эстончо',
'eu' => 'баскча',
- 'fa' => 'фарсыча',
+ 'ewo' => 'эвондочо',
+ 'fa' => 'фарсча',
+ 'ff' => 'фулача',
'fi' => 'финче',
- 'fil' => 'филипино',
+ 'fil' => 'филипинче',
'fj' => 'фижиче',
- 'fo' => 'фароэче',
+ 'fo' => 'фарерче',
+ 'fon' => 'фончо',
'fr' => 'французча',
+ 'fur' => 'фриулча',
'fy' => 'батыш фризче',
'ga' => 'ирландча',
+ 'gaa' => 'гача',
'gag' => 'гагаузча',
+ 'gan' => 'Гань Кытайча',
+ 'gd' => 'шотладиялык гелча',
+ 'gez' => 'гиизче',
+ 'gil' => 'гилбертче',
'gl' => 'галисияча',
- 'gn' => 'гуараш',
+ 'gn' => 'гуараниче',
+ 'gor' => 'горонталочо',
'gsw' => 'немисче (Швейцария)',
'gu' => 'гужаратча',
'guz' => 'гусиче',
- 'gv' => 'манксыча',
+ 'gv' => 'мэнксыча',
+ 'gwi' => 'гвичинче',
'ha' => 'хаусача',
+ 'hak' => 'Хакка кытайча',
'haw' => 'гавайча',
- 'he' => 'ивритте',
+ 'he' => 'ивритче',
'hi' => 'хиндиче',
+ 'hil' => 'хилигайнончо',
+ 'hmn' => 'хмонгчо',
'hr' => 'хорватча',
'hsb' => 'жогорку сорбианча',
+ 'hsn' => 'Сянь Кытайча',
'ht' => 'гаитиче',
- 'hu' => 'мажарча',
+ 'hu' => 'венгерче',
+ 'hup' => 'хупача',
'hy' => 'армянча',
- 'id' => 'индонезче',
+ 'hz' => 'герерочо',
+ 'ia' => 'интерлингва',
+ 'iba' => 'ибанча',
+ 'ibb' => 'ибибиочо',
+ 'id' => 'индонезияча',
'ig' => 'игбочо',
- 'ii' => 'носуча',
+ 'ii' => 'сычуань йиче',
+ 'ilo' => 'илокочо',
+ 'inh' => 'ингушча',
+ 'io' => 'идочо',
'is' => 'исландча',
'it' => 'италиянча',
- 'iu' => 'инуктитутта',
- 'ja' => 'япончо',
+ 'iu' => 'инуктитутча',
+ 'ja' => 'жапончо',
+ 'jbo' => 'ложбанча',
'jgo' => 'нгомбача',
'jmc' => 'мачамече',
'jv' => 'жаванизче',
'ka' => 'грузинче',
'kab' => 'кабылча',
+ 'kac' => 'кахинче',
+ 'kaj' => 'джуча',
'kam' => 'камбача',
+ 'kbd' => 'кабардинче',
+ 'kcg' => 'тяпча',
'kde' => 'макондече',
'kea' => 'кабувердиче',
+ 'kfo' => 'корочо',
+ 'kha' => 'хасиче',
'khq' => 'койра чиниче',
'ki' => 'кикуйиче',
+ 'kj' => 'куаньямача',
'kk' => 'казакча',
+ 'kkj' => 'какочо',
'kl' => 'калаалисутча',
'kln' => 'каленжиче',
'km' => 'кмерче',
+ 'kmb' => 'кимбундуча',
'kn' => 'каннадача',
'ko' => 'корейче',
'koi' => 'коми-пермякча',
'kok' => 'конканиче',
+ 'kpe' => 'кпеллече',
+ 'kr' => 'кануриче',
+ 'krc' => 'карачай-балкарча',
+ 'krl' => 'карелче',
+ 'kru' => 'курухча',
'ks' => 'кашмирче',
'ksb' => 'шамабалача',
'ksf' => 'бафияча',
+ 'ksh' => 'колоньяча',
'ku' => 'курдча',
+ 'kum' => 'кумыкча',
+ 'kv' => 'комиче',
'kw' => 'корнишче',
'ky' => 'кыргызча',
'la' => 'латынча',
+ 'lad' => 'ладиночо',
'lag' => 'лангиче',
'lb' => 'люксембургча',
+ 'lez' => 'лезгинче',
'lg' => 'гандача',
+ 'li' => 'лимбургиче',
'lkt' => 'лакотача',
'ln' => 'лингалача',
'lo' => 'лаочо',
+ 'loz' => 'лозиче',
+ 'lrc' => 'түндүк луриче',
'lt' => 'литовчо',
'lu' => 'луба-катангача',
+ 'lua' => 'луба-лулуача',
+ 'lun' => 'лундача',
'luo' => 'луочо',
+ 'lus' => 'мизочо',
'luy' => 'лухияча',
'lv' => 'латышча',
+ 'mad' => 'мадурисче',
+ 'mag' => 'магахиче',
+ 'mai' => 'маитиличе',
+ 'mak' => 'макасарча',
'mas' => 'масайча',
+ 'mdf' => 'мокшача',
+ 'men' => 'мендече',
'mer' => 'меруча',
'mfe' => 'морисианча',
'mg' => 'малагасча',
'mgh' => 'макуача',
- 'mgo' => 'метөчө',
+ 'mgo' => 'метача',
+ 'mh' => 'маршаллча',
'mi' => 'маориче',
+ 'mic' => 'микмакча',
+ 'min' => 'минанкабауча',
'mk' => 'македончо',
'ml' => 'малайаламча',
- 'mn' => 'моңголчо',
+ 'mn' => 'монголчо',
+ 'mni' => 'манипуриче',
'moh' => 'мохаукча',
+ 'mos' => 'моссиче',
'mr' => 'маратиче',
'ms' => 'малайча',
'mt' => 'малтизче',
'mua' => 'мундангча',
+ 'mul' => 'бир нече тилде',
+ 'mus' => 'крикче',
+ 'mwl' => 'мирандизче',
'my' => 'бурмача',
+ 'myv' => 'эрзянча',
+ 'mzn' => 'мазандераниче',
+ 'na' => 'науруча',
+ 'nan' => 'nan',
+ 'nap' => 'неополитанча',
'naq' => 'намача',
- 'nb' => 'норвежче (Букмал)',
+ 'nb' => 'норвежче (букмал)',
'nd' => 'түндүк ндыбелче',
+ 'nds' => 'төмөнкү немисче',
+ 'nds-nl' => 'төмөнкү саксончо',
'ne' => 'непалча',
+ 'new' => 'невариче',
+ 'ng' => 'ндонгача',
+ 'nia' => 'ниасча',
+ 'niu' => 'ньюанча',
'nl' => 'голландча',
'nl-be' => 'фламандча',
'nmg' => 'квасиочо',
- 'nn' => 'норвежче (Нинорск)',
+ 'nn' => 'норвежче (нинорск)',
+ 'nnh' => 'нгимбунча',
'no' => 'норвежче',
+ 'nog' => 'ногайча',
'nqo' => 'нкочо',
+ 'nr' => 'түштүк ндебелече',
+ 'nso' => 'түндүк соточо',
'nus' => 'нуерче',
+ 'nv' => 'наваджочо',
+ 'ny' => 'ньянджача',
'nyn' => 'ныйанколчо',
+ 'oc' => 'окситанча',
'om' => 'оромочо',
'or' => 'орияча',
+ 'os' => 'осетинче',
'pa' => 'пунжабиче',
+ 'pag' => 'пангасиче',
+ 'pam' => 'пампангача',
+ 'pap' => 'папиаменточо',
+ 'pau' => 'палауанча',
+ 'pcm' => 'аргындашкан тил (Нигерия)',
'pl' => 'полякча',
- 'ps' => 'пашточо',
+ 'prg' => 'пруссча',
+ 'ps' => 'пуштуча',
'pt' => 'португалча',
'pt-pt' => 'португалча (Европа)',
'qu' => 'кечуача',
'quc' => 'кичече',
+ 'rap' => 'рапаньюча',
+ 'rar' => 'раротонгача',
'rm' => 'романшча',
'rn' => 'рундиче',
'ro' => 'румынча',
'ro-md' => 'молдованча',
'rof' => 'ромбочо',
'ru' => 'орусча',
+ 'rup' => 'аромунча',
'rw' => 'руандача',
'rwk' => 'руача',
'sa' => 'санскритче',
+ 'sad' => 'сандавече',
+ 'sah' => 'сахача',
'saq' => 'самбуруча',
+ 'sat' => 'санталиче',
+ 'sba' => 'нгамбайча',
'sbp' => 'сангуча',
+ 'sc' => 'сардинче',
+ 'scn' => 'сицилийче',
+ 'sco' => 'шотландча',
'sd' => 'синдхиче',
- 'se' => 'түндүк самиче',
+ 'sdh' => 'түштүк курдча',
+ 'se' => 'түндүк саамиче',
'seh' => 'сенача',
'ses' => 'койраборо сенниче',
'sg' => 'сангочо',
'sh' => 'серб-хорват',
'shi' => 'ташелитче',
+ 'shn' => 'шанча',
'si' => 'сингалача',
'sk' => 'словакча',
'sl' => 'словенче',
+ 'sm' => 'самоанча',
'sma' => 'түштүк саамиче',
- 'smj' => 'лөлө саамиче',
+ 'smj' => 'луле саамиче',
'smn' => 'инари саамиче',
'sms' => 'сколт саамиче',
'sn' => 'шонача',
+ 'snk' => 'сонинкече',
'so' => 'сомаличе',
'sq' => 'албанча',
'sr' => 'сербче',
- 'st' => 'сесото',
+ 'srn' => 'сранан тонгочо',
+ 'ss' => 'сватиче',
+ 'ssy' => 'сахочо',
+ 'st' => 'сесоточо',
'su' => 'сунданча',
+ 'suk' => 'сукумача',
'sv' => 'шведче',
'sw' => 'суахиличе',
- 'swc' => 'конго суахаличе',
+ 'sw-cd' => 'конго суахаличе',
+ 'swb' => 'коморчо',
+ 'syr' => 'сирияча',
'ta' => 'тамилче',
'te' => 'телугуча',
+ 'tem' => 'тимнече',
'teo' => 'тесочо',
+ 'tet' => 'тетумча',
'tg' => 'тажикче',
'th' => 'тайча',
'ti' => 'тигриниача',
+ 'tig' => 'тигрече',
'tk' => 'түркмөнчө',
'tlh' => 'клингончо',
+ 'tn' => 'тсванача',
'to' => 'тонгача',
+ 'tpi' => 'ток-писинче',
'tr' => 'түркчө',
+ 'trv' => 'тарокочо',
+ 'ts' => 'тсонгача',
'tt' => 'татарча',
+ 'tum' => 'тумбукача',
+ 'tvl' => 'тувалуча',
'tw' => 'тви',
'twq' => 'тасабакча',
- 'tzm' => 'борбордук Атлас тамазитче',
+ 'ty' => 'таитиче',
+ 'tyv' => 'тувинче',
+ 'tzm' => 'борбордук Атлас тамазигтче',
+ 'udm' => 'удмуртча',
'ug' => 'уйгурча',
'uk' => 'украинче',
+ 'umb' => 'умбундуча',
'und' => 'белгисиз тилде',
'ur' => 'урдуча',
'uz' => 'өзбекче',
'vai' => 'вайиче',
+ 've' => 'вендача',
'vi' => 'вьетнамча',
+ 'vo' => 'волапюкча',
'vun' => 'вунжочо',
+ 'wa' => 'валлончо',
+ 'wae' => 'валцерче',
+ 'wal' => 'вольяттача',
+ 'war' => 'варайча',
+ 'wbp' => 'ворлпириче',
'wo' => 'уолофчо',
+ 'wuu' => 'wuu',
+ 'xal' => 'калмыкча',
'xh' => 'косача',
'xog' => 'согача',
+ 'yav' => 'янгбенче',
+ 'ybb' => 'йембача',
'yi' => 'идишче',
'yo' => 'йорубача',
+ 'yue' => 'кантончо',
'zgh' => 'марокко тамазигт адабий тилинде',
'zh' => 'кытайча',
'zh-hans' => 'кытайча (жөнөкөйлөштүрүлгөн)',
'zh-hant' => 'кытайча (салттуу)',
'zu' => 'зулуча',
+ 'zun' => 'зуниче',
'zxx' => 'тилдик мазмун жок',
-);
+ 'zza' => 'зазача',
+];
-$currencyNames = array(
- 'AED' => 'Бириккен Араб Эмираттары дирхамы',
+$currencyNames = [
+ 'AED' => 'Бириккен Араб Эмираттарынын дирхамы',
'AFN' => 'Афганстан афганиси',
'ALL' => 'албан леги',
'AMD' => 'Армения драмы',
@@ -232,7 +408,7 @@ $currencyNames = array(
'AUD' => 'Австралия доллары',
'AWG' => 'аруба флорини',
'AZN' => 'Азербайжан манаты',
- 'BAM' => 'босния-герцоговина жүгүртөлмөлүү маркасы',
+ 'BAM' => 'босния-герцоговина конвертациялануучу маркасы',
'BBD' => 'барбадос доллары',
'BDT' => 'Бангладеш такасы',
'BGN' => 'болгар левиси',
@@ -245,30 +421,32 @@ $currencyNames = array(
'BSD' => 'багама доллары',
'BTN' => 'Бутан нгултруму',
'BWP' => 'Ботсвана пуласы',
- 'BYR' => 'беларусь рублу',
+ 'BYN' => 'беларусь рублу',
+ 'BYR' => 'беларусь рублу (2000–2016)',
'BZD' => 'белиз доллары',
'CAD' => 'канада доллары',
'CDF' => 'Конго франкы',
'CHF' => 'швейцария франкы',
'CLP' => 'чили песосу',
+ 'CNH' => 'CNH',
'CNY' => 'Кытай юаны',
'COP' => 'колумбия песосу',
'CRC' => 'коста-рика колону',
- 'CUC' => 'куба жүгүртүлмөлүү песосу',
+ 'CUC' => 'кубанын конвертациялануучу песосу',
'CUP' => 'куба песосу',
'CVE' => 'Кабо-Верде эскудосу',
'CZK' => 'чех кронасы',
'DJF' => 'Жибути франкы',
'DKK' => 'дания крону',
'DOP' => 'доминикан песосу',
- 'DZD' => 'Алжир динары',
- 'EGP' => 'Мисир фунту',
+ 'DZD' => 'алжир динары',
+ 'EGP' => 'египет фунту',
'ERN' => 'Эритреа накфасы',
'ETB' => 'Эфиопия бирри',
'EUR' => 'Евро',
'FJD' => 'Фижи доллары',
'FKP' => 'фолкленд аралдарынын фунту',
- 'GBP' => 'британия фунт',
+ 'GBP' => 'британия фунт стерлинги',
'GEL' => 'Грузия лариси',
'GHS' => 'Гана седиси',
'GIP' => 'гибралтар фунту',
@@ -276,13 +454,13 @@ $currencyNames = array(
'GNF' => 'Гине франкы',
'GTQ' => 'гватемала кетсалы',
'GYD' => 'гуйана доллары',
- 'HKD' => 'Гоӊ Коӊ доллары',
+ 'HKD' => 'Гонконг доллары',
'HNL' => 'гондурас лемпирасы',
'HRK' => 'хорват кунасы',
'HTG' => 'гаити гурдусу',
'HUF' => 'венгр форинти',
'IDR' => 'Индонезия рупийасы',
- 'ILS' => 'Израил жаӊы шегели',
+ 'ILS' => 'Израилдин жаңы шекели',
'INR' => 'Индия руписи',
'IQD' => 'Ирак динары',
'IRR' => 'Иран риалы',
@@ -298,24 +476,25 @@ $currencyNames = array(
'KRW' => 'Түштүк Корея уону',
'KWD' => 'Кувейт динары',
'KYD' => 'кайман доллары',
- 'KZT' => 'Казакстан теӊгеси',
+ 'KZT' => 'Казакстан теңгеси',
'LAK' => 'Лаос киби',
'LBP' => 'Ливан фунту',
'LKR' => 'Шри Ланка руписи',
'LRD' => 'Либерия доллары',
'LTL' => 'литва литасы',
'LVL' => 'латвия латы',
- 'LYD' => 'Ливия динары',
- 'MAD' => 'Марокко дирхамы',
+ 'LYD' => 'ливия динары',
+ 'MAD' => 'марокко дирхамы',
'MDL' => 'молдован лейи',
'MGA' => 'Мадагаскар ариариси',
'MKD' => 'македон денары',
'MMK' => 'Мйанмар кйаты',
'MNT' => 'Монгол тугриги',
'MOP' => 'Макау патакасы',
- 'MRO' => 'Мавритания угиясы',
+ 'MRO' => 'Мавритания угиясы (1973–2017)',
+ 'MRU' => 'Мавритания угиясы',
'MUR' => 'Мавританий руписи',
- 'MVR' => 'Малдив Руфийасы',
+ 'MVR' => 'Малдив руфийасы',
'MWK' => 'Малави квачасы',
'MXN' => 'мексика песосу',
'MYR' => 'Малайзия ринггити',
@@ -325,11 +504,11 @@ $currencyNames = array(
'NIO' => 'никарагуа кордобасы',
'NOK' => 'норвегия крону',
'NPR' => 'Непал руписи',
- 'NZD' => 'Жаӊы Зеландия доллары',
+ 'NZD' => 'Жаңы Зеландия доллары',
'OMR' => 'Оман риалы',
'PAB' => 'панама балбоасы',
- 'PEN' => 'перу нуэво солу',
- 'PGK' => 'Папуа Жаӊы Гине кинасы',
+ 'PEN' => 'перу солу',
+ 'PGK' => 'Папуа Жаңы Гвинея кинасы',
'PHP' => 'Филиппин песосу',
'PKR' => 'Пакистан руписи',
'PLN' => 'польша злотыйы',
@@ -340,69 +519,99 @@ $currencyNames = array(
'RUB' => 'орус рублу',
'RWF' => 'Руанда франкы',
'SAR' => 'Сауд риалы',
- 'SBD' => 'Соломон доллары',
+ 'SBD' => 'Соломон аралдарынын доллары',
'SCR' => 'Сейшел руписи',
- 'SDG' => 'Судан фунту',
+ 'SDG' => 'судан фунту',
'SEK' => 'швеция крону',
'SGD' => 'Сингапур доллары',
- 'SHP' => 'Ыйык Елена фунту',
+ 'SHP' => 'Ыйык Елена аралынын фунту',
'SLL' => 'Сиерра-Леоне леонеси',
'SOS' => 'Сомали шиллинги',
'SRD' => 'суринам доллары',
'SSP' => 'Түштүк Судан фунту',
- 'STD' => 'Сао Томе жана Принсипе добрасы',
+ 'STD' => 'Сао Томе жана Принсипе добрасы (1977–2017)',
+ 'STN' => 'Сао Томе жана Принсипе добрасы',
'SYP' => 'Сирия фунту',
'SZL' => 'Свази лилангени',
'THB' => 'Тай баты',
'TJS' => 'Тажикстан сомониси',
'TMT' => 'Түркмөнстан манаты',
- 'TND' => 'Тунис динары',
+ 'TND' => 'тунис динары',
'TOP' => 'Тонга паангасы',
'TRY' => 'Түркия лирасы',
'TTD' => 'тринидад жана тобаго доллары',
- 'TWD' => 'Тайвань жаӊы доллары',
+ 'TWD' => 'Тайвань жаңы доллары',
'TZS' => 'Танзания шиллинги',
'UAH' => 'украин гривени',
'UGX' => 'Уганда шиллинги',
'USD' => 'АКШ доллары',
'UYU' => 'уругвай песосу',
- 'UZS' => 'Өзбекстан сому',
- 'VEF' => 'венесуэла боливары',
- 'VND' => 'Вьетнам доӊу',
+ 'UZS' => 'Өзбекстан суму',
+ 'VEF' => 'венесуэла боливары (2008–2018)',
+ 'VES' => 'VES',
+ 'VND' => 'Вьетнам доңу',
'VUV' => 'Вануату ватусу',
'WST' => 'Самоа таласы',
- 'XAF' => 'КФА ВЕАС франкы',
+ 'XAF' => 'Борбордук Африка КФА франкы',
'XCD' => 'чыгыш кариб доллары',
- 'XOF' => 'КФА ВСЕАО франкы',
+ 'XOF' => 'КФА франкы',
'XPF' => 'КФП франкы',
'XXX' => 'Белгисиз акча',
'YER' => 'Йемен риалы',
'ZAR' => 'Түштүк Африка ранды',
'ZMW' => 'Замбия квачасы',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
'ARS' => 'ARS',
'AUD' => 'AUD',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
'BAM' => 'BAM',
'BBD' => 'BBD',
+ 'BDT' => 'BDT',
'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
'BMD' => 'BMD',
+ 'BND' => 'BND',
'BOB' => 'BOB',
'BRL' => 'BRL',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CAD',
+ 'CDF' => 'CDF',
'CHF' => 'CHF',
'CLP' => 'CLP',
'CNY' => 'CN¥',
'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
'CVE' => 'CVE',
'CZK' => 'CZK',
+ 'DJF' => 'DJF',
'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
'EUR' => '€',
+ 'FJD' => 'FJD',
'FKP' => 'FKP',
'GBP' => 'GBP',
+ 'GEL' => 'GEL',
'GHS' => 'GHS',
'GIP' => 'GIP',
'GMD' => 'GMD',
@@ -412,62 +621,121 @@ $currencySymbols = array(
'HKD' => 'HKD',
'HNL' => 'HNL',
'HRK' => 'HRK',
+ 'HTG' => 'HTG',
'HUF' => 'HUF',
+ 'IDR' => 'IDR',
'ILS' => 'ILS',
'INR' => 'INR',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
'JPY' => 'JP¥',
+ 'KES' => 'KES',
'KGS' => 'сом',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
'KRW' => 'KRW',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
'LRD' => 'LRD',
'LTL' => 'LTL',
'LVL' => 'LVL',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
'MXN' => 'MXN',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
'NGN' => 'NGN',
+ 'NIO' => 'NIO',
'NOK' => 'NOK',
+ 'NPR' => 'NPR',
'NZD' => 'NZD',
+ 'OMR' => 'OMR',
'PAB' => 'PAB',
'PEN' => 'PEN',
'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
'PLN' => 'PLN',
'PYG' => 'PYG',
+ 'QAR' => 'QAR',
'RON' => 'RON',
'RSD' => 'RSD',
'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
'SEK' => 'SEK',
+ 'SGD' => 'SGD',
'SHP' => 'SHP',
'SLL' => 'SLL',
+ 'SOS' => 'SOS',
'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'STN' => 'Db',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
'THB' => '฿',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
'TTD' => 'TTD',
'TWD' => 'TWD',
+ 'TZS' => 'TZS',
'UAH' => 'UAH',
+ 'UGX' => 'UGX',
'USD' => 'USD',
'UYU' => 'UYU',
+ 'UZS' => 'UZS',
'VEF' => 'VEF',
'VND' => '₫',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
'XAF' => 'FCFA',
'XCD' => 'XCD',
'XOF' => 'CFA',
'XPF' => 'CFPF',
-);
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+];
-$countryNames = array(
- 'AC' => 'Ассеншин аралы',
+$countryNames = [
+ 'AC' => 'Вознесение аралы',
'AD' => 'Андорра',
'AE' => 'Бириккен Араб Эмираттары',
'AF' => 'Афганистан',
'AG' => 'Антигуа жана Барбуда',
- 'AI' => 'Ангуила',
+ 'AI' => 'Ангилья',
'AL' => 'Албания',
'AM' => 'Армения',
'AO' => 'Ангола',
- 'AQ' => 'Антарктика',
+ 'AQ' => 'Антарктида',
'AR' => 'Аргентина',
- 'AS' => 'Америка Самоасы',
+ 'AS' => 'Америкалык Самоа',
'AT' => 'Австрия',
'AU' => 'Австралия',
'AW' => 'Аруба',
@@ -488,14 +756,14 @@ $countryNames = array(
'BO' => 'Боливия',
'BQ' => 'Кариб Нидерланддары',
'BR' => 'Бразилия',
- 'BS' => 'Багам аралдары',
+ 'BS' => 'Багама аралдары',
'BT' => 'Бутан',
- 'BV' => 'Буве аралдары',
+ 'BV' => 'Буве аралы',
'BW' => 'Ботсвана',
'BY' => 'Беларусь',
'BZ' => 'Белиз',
'CA' => 'Канада',
- 'CC' => 'Кокос (Килиӊ) аралдары',
+ 'CC' => 'Кокос (Килинг) аралдары',
'CD' => 'Конго-Киншаса',
'CF' => 'Борбордук Африка Республикасы',
'CG' => 'Конго-Браззавил',
@@ -509,9 +777,9 @@ $countryNames = array(
'CP' => 'Клиппертон аралы',
'CR' => 'Коста-Рика',
'CU' => 'Куба',
- 'CV' => 'Капе Верде',
+ 'CV' => 'Кабо-Верде',
'CW' => 'Кюрасао',
- 'CX' => 'Крисмас аралы',
+ 'CX' => 'Рождество аралы',
'CY' => 'Кипр',
'CZ' => 'Чехия',
'DE' => 'Германия',
@@ -530,9 +798,10 @@ $countryNames = array(
'ES' => 'Испания',
'ET' => 'Эфиопия',
'EU' => 'Европа Биримдиги',
+ 'EZ' => 'Еврозона',
'FI' => 'Финляндия',
'FJ' => 'Фиджи',
- 'FK' => 'Фолклэнд аралдары',
+ 'FK' => 'Фолкленд аралдары',
'FM' => 'Микронезия',
'FO' => 'Фарер аралдары',
'FR' => 'Франция',
@@ -540,7 +809,7 @@ $countryNames = array(
'GB' => 'УБ',
'GD' => 'Гренада',
'GE' => 'Грузия',
- 'GF' => 'Гвиана (Франция)',
+ 'GF' => 'Француздук Гвиана',
'GG' => 'Гернси',
'GH' => 'Гана',
'GI' => 'Гибралтар',
@@ -548,7 +817,7 @@ $countryNames = array(
'GM' => 'Гамбия',
'GN' => 'Гвинея',
'GP' => 'Гваделупа',
- 'GQ' => 'Экваториалдык Гвинея',
+ 'GQ' => 'Экватордук Гвинея',
'GR' => 'Греция',
'GS' => 'Түштүк Жоржия жана Түштүк Сэндвич аралдары',
'GT' => 'Гватемала',
@@ -556,7 +825,7 @@ $countryNames = array(
'GW' => 'Гвинея-Бисау',
'GY' => 'Гайана',
'HK' => 'Гонконг',
- 'HM' => 'Херд жана Макдоналд аралдары',
+ 'HM' => 'Херд жана Макдональд аралдары',
'HN' => 'Гондурас',
'HR' => 'Хорватия',
'HT' => 'Гаити',
@@ -567,7 +836,7 @@ $countryNames = array(
'IL' => 'Израиль',
'IM' => 'Мэн аралы',
'IN' => 'Индия',
- 'IO' => 'Британиянын Индия океанындагы аймагы',
+ 'IO' => 'Инди океанындагы Британ территориясы',
'IQ' => 'Ирак',
'IR' => 'Иран',
'IS' => 'Исландия',
@@ -585,7 +854,7 @@ $countryNames = array(
'KP' => 'Түндүк Корея',
'KR' => 'Түштүк Корея',
'KW' => 'Кувейт',
- 'KY' => 'Кайман Аралдары',
+ 'KY' => 'Кайман аралдары',
'KZ' => 'Казакстан',
'LA' => 'Лаос',
'LB' => 'Ливан',
@@ -613,32 +882,32 @@ $countryNames = array(
'MP' => 'Түндүк Мариана аралдары',
'MQ' => 'Мартиника',
'MR' => 'Мавритания',
- 'MS' => 'Монсеррат',
+ 'MS' => 'Монтсеррат',
'MT' => 'Мальта',
'MU' => 'Маврикий',
- 'MV' => 'Малдив аралдары',
+ 'MV' => 'Мальдив',
'MW' => 'Малави',
'MX' => 'Мексика',
'MY' => 'Малайзия',
'MZ' => 'Мозамбик',
'NA' => 'Намибия',
- 'NC' => 'Жаӊы Каледония',
+ 'NC' => 'Жаңы Каледония',
'NE' => 'Нигер',
'NF' => 'Норфолк аралы',
'NG' => 'Нигерия',
'NI' => 'Никарагуа',
- 'NL' => 'Нидерланддар',
+ 'NL' => 'Нидерланд',
'NO' => 'Норвегия',
'NP' => 'Непал',
'NR' => 'Науру',
'NU' => 'Ниуэ',
- 'NZ' => 'Жаӊы Зеландия',
+ 'NZ' => 'Жаңы Зеландия',
'OM' => 'Оман',
'PA' => 'Панама',
'PE' => 'Перу',
- 'PF' => 'Француз Полинезиясы',
- 'PG' => 'Папуа Жаңы-Гвинея',
- 'PH' => 'Филлипин',
+ 'PF' => 'Полинезия (франциялык)',
+ 'PG' => 'Папуа-Жаңы Гвинея',
+ 'PH' => 'Филиппин',
'PK' => 'Пакистан',
'PL' => 'Польша',
'PM' => 'Сен-Пьер жана Микелон',
@@ -650,38 +919,38 @@ $countryNames = array(
'PY' => 'Парагвай',
'QA' => 'Катар',
'QO' => 'Алыскы Океания',
- 'RE' => 'Реюнион',
+ 'RE' => 'Реюньон',
'RO' => 'Румыния',
'RS' => 'Сербия',
'RU' => 'Россия',
'RW' => 'Руанда',
'SA' => 'Сауд Арабиясы',
'SB' => 'Соломон аралдары',
- 'SC' => 'Сейшелдер',
+ 'SC' => 'Сейшел аралдары',
'SD' => 'Судан',
'SE' => 'Швеция',
'SG' => 'Сингапур',
'SH' => 'Ыйык Елена',
'SI' => 'Словения',
- 'SJ' => 'Свалбард жана Жан Майен',
+ 'SJ' => 'Шпицберген жана Ян-Майен',
'SK' => 'Словакия',
'SL' => 'Сьерра-Леоне',
'SM' => 'Сан Марино',
'SN' => 'Сенегал',
'SO' => 'Сомали',
- 'SR' => 'Суринаме',
+ 'SR' => 'Суринам',
'SS' => 'Түштүк Судан',
'ST' => 'Сан-Томе жана Принсипи',
- 'SV' => 'Эл Салвадор',
- 'SX' => 'Синт Маартен',
+ 'SV' => 'Эль-Сальвадор',
+ 'SX' => 'Синт-Мартен',
'SY' => 'Сирия',
'SZ' => 'Свазиленд',
- 'TA' => 'Тристан да Кунья',
+ 'TA' => 'Тристан-да-Кунья',
'TC' => 'Түркс жана Кайкос аралдары',
'TD' => 'Чад',
'TF' => 'Франциянын Түштүктөгү аймактары',
'TG' => 'Того',
- 'TH' => 'Таиланд',
+ 'TH' => 'Тайланд',
'TJ' => 'Тажикстан',
'TK' => 'Токелау',
'TL' => 'Тимор-Лесте',
@@ -696,11 +965,12 @@ $countryNames = array(
'UA' => 'Украина',
'UG' => 'Уганда',
'UM' => 'АКШнын сырткы аралдары',
+ 'UN' => 'БУ',
'US' => 'АКШ',
'UY' => 'Уругвай',
'UZ' => 'Өзбекстан',
'VA' => 'Ватикан',
- 'VC' => 'Сент-Винсент жана Гренадиналар',
+ 'VC' => 'Сент-Винсент жана Гренадиндер',
'VE' => 'Венесуэла',
'VG' => 'Виргин аралдары (Британия)',
'VI' => 'Виргин аралдары (АКШ)',
@@ -711,32 +981,46 @@ $countryNames = array(
'XK' => 'Косово',
'YE' => 'Йемен',
'YT' => 'Майотта',
- 'ZA' => 'Түштүк Африка Республикасы',
+ 'ZA' => 'Түштүк-Африка Республикасы',
'ZM' => 'Замбия',
'ZW' => 'Зимбабве',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-one' => '{0} кылым',
+ 'century-other' => '{0} кылым',
'day-future-one' => '{0} күндөн кийин',
'day-future-other' => '{0} күндөн кийин',
- 'day-narrow-future-one' => '+{0} күн',
- 'day-narrow-future-other' => '+{0} күн',
- 'day-narrow-past-one' => '-{0} күн',
- 'day-narrow-past-other' => '-{0} күн',
+ 'day-narrow-future-one' => '{0} күн. кийин',
+ 'day-narrow-future-other' => '{0} күн. кийин',
+ 'day-narrow-past-one' => '{0} күн мурун',
+ 'day-narrow-past-other' => '{0} күн мурун',
'day-one' => '{0} күн',
'day-other' => '{0} күн',
'day-past-one' => '{0} күн мурун',
'day-past-other' => '{0} күн мурун',
- 'day-short-future-one' => '{0} күндөн кийин',
- 'day-short-future-other' => '{0} күндөн кийин',
+ 'day-short-future-one' => '{0} күн. кийин',
+ 'day-short-future-other' => '{0} күн. кийин',
'day-short-past-one' => '{0} күн мурун',
'day-short-past-other' => '{0} күн мурун',
+ 'fri-future-one' => '{0} жумадан кийин',
+ 'fri-future-other' => '{0} жумадан кийин',
+ 'fri-narrow-future-one' => '{0} жм кийн',
+ 'fri-narrow-future-other' => '{0} жм кийн',
+ 'fri-narrow-past-one' => '{0} жм мурн',
+ 'fri-narrow-past-other' => '{0} жм мурн',
+ 'fri-past-one' => '{0} жума мурун',
+ 'fri-past-other' => '{0} жума мурун',
+ 'fri-short-future-one' => '{0} жм кийин',
+ 'fri-short-future-other' => '{0} жм кийин',
+ 'fri-short-past-one' => '{0} жм мурн',
+ 'fri-short-past-other' => '{0} жм мурн',
'hour-future-one' => '{0} сааттан кийин',
'hour-future-other' => '{0} сааттан кийин',
- 'hour-narrow-future-one' => '+{0} с.',
- 'hour-narrow-future-other' => '+{0} с.',
- 'hour-narrow-past-one' => '-{0} с.',
- 'hour-narrow-past-other' => '-{0} с.',
+ 'hour-narrow-future-one' => '{0} с. кийн',
+ 'hour-narrow-future-other' => '{0} с. кийн',
+ 'hour-narrow-past-one' => '{0} с. мурн',
+ 'hour-narrow-past-other' => '{0} с. мурн',
'hour-one' => '{0} саат',
'hour-other' => '{0} саат',
'hour-past-one' => '{0} саат мурун',
@@ -751,10 +1035,10 @@ $timeUnits = array(
'millisecond-other' => '{0} миллисекунд',
'minute-future-one' => '{0} мүнөттөн кийин',
'minute-future-other' => '{0} мүнөттөн кийин',
- 'minute-narrow-future-one' => '+{0} м.',
- 'minute-narrow-future-other' => '-{0} м.',
- 'minute-narrow-past-one' => '-{0} м.',
- 'minute-narrow-past-other' => '-{0} м.',
+ 'minute-narrow-future-one' => '{0} мүн. кийн',
+ 'minute-narrow-future-other' => '{0} мүн. кийн',
+ 'minute-narrow-past-one' => '{0} мүн. мурн',
+ 'minute-narrow-past-other' => '{0} мүн. мурн',
'minute-one' => '{0} мүнөт',
'minute-other' => '{0} мүнөт',
'minute-past-one' => '{0} мүнөт мурун',
@@ -763,40 +1047,64 @@ $timeUnits = array(
'minute-short-future-other' => '{0} мүн. кийин',
'minute-short-past-one' => '{0} мүн. мурун',
'minute-short-past-other' => '{0} мүн. мурун',
+ 'mon-future-one' => '{0} дүйшөмбүдөн кийин',
+ 'mon-future-other' => '{0} дүйшөмбүдөн кийин',
+ 'mon-narrow-future-one' => '{0} дш. кийн',
+ 'mon-narrow-future-other' => '{0} дш. кийн',
+ 'mon-narrow-past-one' => '{0} дш. мурн',
+ 'mon-narrow-past-other' => '{0} дш. мурн',
+ 'mon-past-one' => '{0} дүйшөмбү мурун',
+ 'mon-past-other' => '{0} дүйшөмбү мурун',
+ 'mon-short-future-one' => '{0} дүйш. кийн',
+ 'mon-short-future-other' => '{0} дүйш. кийн',
+ 'mon-short-past-one' => '{0} дүйш. мурн',
+ 'mon-short-past-other' => '{0} дүйш. мурн',
'month-future-one' => '{0} айдан кийин',
'month-future-other' => '{0} айдан кийин',
- 'month-narrow-future-one' => '+{0} ай',
- 'month-narrow-future-other' => '+{0} ай',
- 'month-narrow-past-one' => '-{0} ай',
- 'month-narrow-past-other' => '-{0} ай',
+ 'month-narrow-future-one' => '{0} айд. кийн',
+ 'month-narrow-future-other' => '{0} айд. кийн',
+ 'month-narrow-past-one' => '{0} ай мурн',
+ 'month-narrow-past-other' => '{0} ай мурн',
'month-one' => '{0} ай',
'month-other' => '{0} ай',
'month-past-one' => '{0} ай мурун',
'month-past-other' => '{0} ай мурун',
- 'month-short-future-one' => '{0} айдан кийин',
- 'month-short-future-other' => '{0} айдан кийин',
+ 'month-short-future-one' => '{0} айд. кийин',
+ 'month-short-future-other' => '{0} айд. кийин',
'month-short-past-one' => '{0} ай мурун',
'month-short-past-other' => '{0} ай мурун',
'nanosecond-one' => '{0} наносекунд',
'nanosecond-other' => '{0} наносекунд',
- 'quarter-future-one' => 'кийинки {0} чейректе',
- 'quarter-future-other' => 'кийинки {0} чейректе',
- 'quarter-narrow-future-one' => '+{0} чейр.',
- 'quarter-narrow-future-other' => '+{0} чейр.',
- 'quarter-narrow-past-one' => '-{0} чейр.',
- 'quarter-narrow-past-other' => '-{0} чейр.',
+ 'quarter-future-one' => '{0} чейректен кийин',
+ 'quarter-future-other' => '{0} чейректен кийин',
+ 'quarter-narrow-future-one' => '{0} чейр. кийин',
+ 'quarter-narrow-future-other' => '{0} чейр. кийин',
+ 'quarter-narrow-past-one' => '{0} чейр. мурун',
+ 'quarter-narrow-past-other' => '{0} чейр. мурун',
'quarter-past-one' => '{0} чейрек мурун',
'quarter-past-other' => '{0} чейрек мурун',
- 'quarter-short-future-one' => 'кийинки {0} чейр.',
- 'quarter-short-future-other' => 'кийинки {0} чейр.',
+ 'quarter-short-future-one' => '{0} чейректен кийин',
+ 'quarter-short-future-other' => '{0} чейректен кийин',
'quarter-short-past-one' => '{0} чейр. мурун',
'quarter-short-past-other' => '{0} чейр. мурун',
+ 'sat-future-one' => '{0} ишембиден кийин',
+ 'sat-future-other' => '{0} ишембиден кийин',
+ 'sat-narrow-future-one' => '{0} ишм. кийин',
+ 'sat-narrow-future-other' => '{0} ишм. кийин',
+ 'sat-narrow-past-one' => '{0} ишм. мурн',
+ 'sat-narrow-past-other' => '{0} ишм. мурн',
+ 'sat-past-one' => '{0} ишемби мурун',
+ 'sat-past-other' => '{0} ишемби мурун',
+ 'sat-short-future-one' => '{0} ишм. кийин',
+ 'sat-short-future-other' => '{0} ишм. кийин',
+ 'sat-short-past-one' => '{0} ишм. мурн',
+ 'sat-short-past-other' => '{0} ишм. мурн',
'second-future-one' => '{0} секунддан кийин',
'second-future-other' => '{0} секунддан кийин',
- 'second-narrow-future-one' => '+{0} сек.',
- 'second-narrow-future-other' => '+{0} сек.',
- 'second-narrow-past-one' => '-{0} сек. мурун',
- 'second-narrow-past-other' => '-{0} сек. мурун',
+ 'second-narrow-future-one' => '{0} сек. кийн',
+ 'second-narrow-future-other' => '{0} сек. кийн',
+ 'second-narrow-past-one' => '{0} сек. мурн',
+ 'second-narrow-past-other' => '{0} сек. мурн',
'second-one' => '{0} секунд',
'second-other' => '{0} секунд',
'second-past-one' => '{0} секунд мурун',
@@ -805,12 +1113,60 @@ $timeUnits = array(
'second-short-future-other' => '{0} сек. кийин',
'second-short-past-one' => '{0} сек. мурун',
'second-short-past-other' => '{0} сек. мурун',
+ 'sun-future-one' => '{0} жекшембиден кийин',
+ 'sun-future-other' => '{0} жекшембиден кийин',
+ 'sun-narrow-future-one' => '{0} жекшемб. кийн',
+ 'sun-narrow-future-other' => '{0} жекшемб. кийн',
+ 'sun-narrow-past-one' => '{0} жекшемб. мурн',
+ 'sun-narrow-past-other' => '{0} жекшемб. мурн',
+ 'sun-past-one' => '{0} жекшемби мурун',
+ 'sun-past-other' => '{0} жекшемби мурун',
+ 'sun-short-future-one' => '{0} жекшемб. кийн',
+ 'sun-short-future-other' => '{0} жекшемб. кийн',
+ 'sun-short-past-one' => '{0} жекшемб. мурн',
+ 'sun-short-past-other' => '{0} жекшемб. мурн',
+ 'thu-future-one' => '{0} бейшембиден кийин',
+ 'thu-future-other' => '{0} бейшембиден кийин',
+ 'thu-narrow-future-one' => '{0} бш. кийн',
+ 'thu-narrow-future-other' => '{0} бш. кийн',
+ 'thu-narrow-past-one' => '{0} бш. мурн',
+ 'thu-narrow-past-other' => '{0} бш. мурн',
+ 'thu-past-one' => '{0} бейшемби мурун',
+ 'thu-past-other' => '{0} бейшемби мурун',
+ 'thu-short-future-one' => '{0} бейш. кийин',
+ 'thu-short-future-other' => '{0} бейш. кийин',
+ 'thu-short-past-one' => '{0} бейш. мурун',
+ 'thu-short-past-other' => '{0} бейш. мурун',
+ 'tue-future-one' => '{0} шейшембиден кийин',
+ 'tue-future-other' => '{0} шейшембиден кийин',
+ 'tue-narrow-future-one' => '{0} шейш. кийн',
+ 'tue-narrow-future-other' => '{0} шейш. кийн',
+ 'tue-narrow-past-one' => '{0} шейш. мурн',
+ 'tue-narrow-past-other' => '{0} шейш. мурн',
+ 'tue-past-one' => '{0} шейшемби мурун',
+ 'tue-past-other' => '{0} шейшемби мурун',
+ 'tue-short-future-one' => '{0} шейш. кийн',
+ 'tue-short-future-other' => '{0} шейш. кийн',
+ 'tue-short-past-one' => '{0} шейш. мурн',
+ 'tue-short-past-other' => '{0} шейш. мурн',
+ 'wed-future-one' => '{0} шаршембиден кийин',
+ 'wed-future-other' => '{0} шаршембиден кийин',
+ 'wed-narrow-future-one' => '{0} шр. кийн',
+ 'wed-narrow-future-other' => '{0} шр. кийн',
+ 'wed-narrow-past-one' => '{0} шр. мурн',
+ 'wed-narrow-past-other' => '{0} шр. мурн',
+ 'wed-past-one' => '{0} шаршемби мурун',
+ 'wed-past-other' => '{0} шаршемби мурун',
+ 'wed-short-future-one' => '{0} шарш. кийн',
+ 'wed-short-future-other' => '{0} шарш. кийн',
+ 'wed-short-past-one' => '{0} шарш. мурн',
+ 'wed-short-past-other' => '{0} шарш. мурн',
'week-future-one' => '{0} аптадан кийин',
'week-future-other' => '{0} аптадан кийин',
- 'week-narrow-future-one' => '+{0} апт.',
- 'week-narrow-future-other' => '+{0} апт.',
- 'week-narrow-past-one' => '-{0} апт.',
- 'week-narrow-past-other' => '-{0} апт.',
+ 'week-narrow-future-one' => '{0} апт. кийин',
+ 'week-narrow-future-other' => '{0} апт. кийин',
+ 'week-narrow-past-one' => '{0} апт. мурун',
+ 'week-narrow-past-other' => '{0} апт. мурун',
'week-one' => '{0} апта',
'week-other' => '{0} апта',
'week-past-one' => '{0} апта мурун',
@@ -833,4 +1189,4 @@ $timeUnits = array(
'year-short-future-other' => '{0} жыл. кийин',
'year-short-past-one' => '{0} жыл мурун',
'year-short-past-other' => '{0} жыл мурун',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesLb.php b/MLEB/cldr/CldrNames/CldrNamesLb.php
index d29a6b77..61ae9467 100644
--- a/MLEB/cldr/CldrNames/CldrNamesLb.php
+++ b/MLEB/cldr/CldrNames/CldrNamesLb.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'Afar',
'ab' => 'Abchasesch',
'ace' => 'Aceh-Sprooch',
@@ -26,7 +26,7 @@ $languageNames = array(
'ar' => 'Arabesch',
'ar-001' => 'Modernt Héicharabesch',
'arc' => 'Aramäesch',
- 'arn' => 'Araukanesch',
+ 'arn' => 'Mapudungun',
'aro' => 'Araona',
'arp' => 'Arapaho-Sprooch',
'arq' => 'Algerescht Arabesch',
@@ -42,7 +42,6 @@ $languageNames = array(
'awa' => 'Awadhi',
'ay' => 'Aymara',
'az' => 'Aserbaidschanesch',
- 'azb' => 'Süd-Aserbaidschanesch',
'ba' => 'Baschkiresch',
'bal' => 'Belutschesch',
'ban' => 'Balinesesch',
@@ -513,8 +512,8 @@ $languageNames = array(
'sux' => 'Sumeresch',
'sv' => 'Schwedesch',
'sw' => 'Suaheli',
+ 'sw-cd' => 'Kongo-Swahili',
'swb' => 'Komoresch',
- 'swc' => 'Kongo-Swahili',
'syc' => 'Alsyresch',
'syr' => 'Syresch',
'szl' => 'Schlesesch',
@@ -608,9 +607,9 @@ $languageNames = array(
'zun' => 'Zuni-Sprooch',
'zxx' => 'Keng Sproochinhalter',
'zza' => 'Zaza',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'ADP' => 'Andorranesch Peseta',
'AED' => 'VAE-Dirham',
'AFA' => 'Afghanesch Afghani (1927–2002)',
@@ -658,7 +657,8 @@ $currencyNames = array(
'BUK' => 'Birmanesche Kyat',
'BWP' => 'Botswanesch Pula',
'BYB' => 'Wäissrussesche Rubel (1994–1999)',
- 'BYR' => 'Wäissrussesche Rubel',
+ 'BYN' => 'Wäissrussesche Rubel',
+ 'BYR' => 'Wäissrussesche Rubel (2000–2016)',
'BZD' => 'Belize-Dollar',
'CAD' => 'Kanadeschen Dollar',
'CDF' => 'Kongo-Frang',
@@ -762,7 +762,8 @@ $currencyNames = array(
'MMK' => 'Myanmaresche Kyat',
'MNT' => 'Mongoleschen Tögrög',
'MOP' => 'Macau-Pataca',
- 'MRO' => 'Mauretaneschen Ouguiya',
+ 'MRO' => 'Mauretaneschen Ouguiya (1973–2017)',
+ 'MRU' => 'Mauretaneschen Ouguiya',
'MTL' => 'Maltesesch Lira',
'MTP' => 'Maltesescht Pond',
'MUR' => 'Mauritius-Rupie',
@@ -786,8 +787,8 @@ $currencyNames = array(
'OMR' => 'Omanesche Rial',
'PAB' => 'Panamaesche Balboa',
'PEI' => 'Peruaneschen Inti',
- 'PEN' => 'Peruaneschen Neie Sol',
- 'PES' => 'Peruanesche Sol (1863–1965)',
+ 'PEN' => 'Peruaneschen Sol',
+ 'PES' => 'Peruaneschen Sol (1863–1965)',
'PGK' => 'Papua-Neiguinéiesche Kina',
'PHP' => 'Philippinnesche Peso',
'PKR' => 'Pakistanesch Rupie',
@@ -819,7 +820,8 @@ $currencyNames = array(
'SRD' => 'Surinameschen Dollar',
'SRG' => 'Surinamesche Gulden',
'SSP' => 'Südsudanesescht Pond',
- 'STD' => 'São-toméeschen Dobra',
+ 'STD' => 'São-toméeschen Dobra (1977–2017)',
+ 'STN' => 'São-toméeschen Dobra',
'SUR' => 'Sowjetesche Rubel',
'SVC' => 'El-Salvador-Colón',
'SYP' => 'Syrescht Pond',
@@ -848,7 +850,8 @@ $currencyNames = array(
'UYU' => 'Uruguayesche Peso',
'UZS' => 'Usbekistan-Sum',
'VEB' => 'Venezolanesche Bolívar (1871–2008)',
- 'VEF' => 'Venezolanesche Bolívar',
+ 'VEF' => 'Venezolanesche Bolívar (2008–2018)',
+ 'VES' => 'Venezolanesche Bolívar',
'VND' => 'Vietnameseschen Dong',
'VUV' => 'Vanuatu-Vatu',
'WST' => 'Samoaneschen Tala',
@@ -885,9 +888,9 @@ $currencyNames = array(
'ZWD' => 'Simbabwe-Dollar (1980–2008)',
'ZWL' => 'Simbabwe-Dollar (2009)',
'ZWR' => 'Simbabwe-Dollar (2008)',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'AFA' => 'AFA',
'AFN' => 'AFN',
'ATS' => 'öS',
@@ -931,9 +934,9 @@ $currencySymbols = array(
'XCD' => 'EC$',
'XOF' => 'CFA',
'XPF' => 'CFPF',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'Ascension',
'AD' => 'Andorra',
'AE' => 'Vereenegt Arabesch Emirater',
@@ -978,7 +981,7 @@ $countryNames = array(
'CF' => 'Zentralafrikanesch Republik',
'CG' => 'Kongo-Brazzaville',
'CH' => 'Schwäiz',
- 'CI' => 'Elfebeeküst',
+ 'CI' => 'Côte d’Ivoire',
'CK' => 'Cookinselen',
'CL' => 'Chile',
'CM' => 'Kamerun',
@@ -1192,9 +1195,9 @@ $countryNames = array(
'ZA' => 'Südafrika',
'ZM' => 'Sambia',
'ZW' => 'Simbabwe',
-);
+];
-$timeUnits = array(
+$timeUnits = [
'day-future-one' => 'an {0} Dag',
'day-future-other' => 'a(n) {0} Deeg',
'day-narrow-future-one' => '+{0} D.',
@@ -1311,4 +1314,4 @@ $timeUnits = array(
'year-short-future-other' => 'a(n) {0} J.',
'year-short-past-one' => 'virun {0} J.',
'year-short-past-other' => 'viru(n) {0} J.',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesLg.php b/MLEB/cldr/CldrNames/CldrNamesLg.php
index 11ca3348..ea1214fe 100644
--- a/MLEB/cldr/CldrNames/CldrNamesLg.php
+++ b/MLEB/cldr/CldrNames/CldrNamesLg.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'ak' => 'Lu-akaani',
'am' => 'Lu-amhariki',
'ar' => 'Luwarabu',
@@ -46,9 +46,9 @@ $languageNames = array(
'yo' => 'Luyoruba',
'zh' => 'Lucayina',
'zu' => 'Luzzulu',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'AED' => 'Diraamu eya Emireeti',
'AOA' => 'Kwanza ey’Angola',
'AUD' => 'Doola ey’Awusiturelya',
@@ -79,7 +79,8 @@ $currencyNames = array(
'LYD' => 'Dinaali ey’eLibya',
'MAD' => 'Diraamu ey’eMoroko',
'MGA' => 'Faranga ey’eMalagase',
- 'MRO' => 'Wugwiya ey’eMawritenya',
+ 'MRO' => 'Wugwiya ey’eMawritenya (1973–2017)',
+ 'MRU' => 'Wugwiya ey’eMawritenya',
'MUR' => 'Rupiya ey’eMawurisyasi',
'MWK' => 'Kwaca ey’eMalawi',
'MZM' => 'Metikaali ey’eMozambiiki',
@@ -93,7 +94,8 @@ $currencyNames = array(
'SHP' => 'Pawundi ey’eSenti Herena',
'SLL' => 'Lewone',
'SOS' => 'Silingi ey’eSomaliya',
- 'STD' => 'Dobura ey’eSantome ne Purincipe',
+ 'STD' => 'Dobura ey’eSantome ne Purincipe (1977–2017)',
+ 'STN' => 'Dobura ey’eSantome ne Purincipe',
'SZL' => 'Lilangeni',
'TND' => 'Dinaali ey’eTunizya',
'TZS' => 'Silingi ey’eTanzaniya',
@@ -105,13 +107,13 @@ $currencyNames = array(
'ZMK' => 'Kwaca ey’eZambya (1968–2012)',
'ZMW' => 'Kwaca ey’eZambya',
'ZWD' => 'Doola ey’eZimbabwe',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'UGX' => 'USh',
-);
+];
-$countryNames = array(
+$countryNames = [
'AD' => 'Andora',
'AE' => 'Emireeti',
'AF' => 'Afaganisitani',
@@ -119,7 +121,6 @@ $countryNames = array(
'AI' => 'Angwila',
'AL' => 'Alibaniya',
'AM' => 'Arameniya',
- 'AN' => 'Bizinga bya Antile eby’abaHolandi',
'AO' => 'Angola',
'AR' => 'Arigentina',
'AS' => 'Samowa omumerika',
@@ -337,4 +338,4 @@ $countryNames = array(
'ZA' => 'Sawusafirika',
'ZM' => 'Zambya',
'ZW' => 'Zimbabwe',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesLkt.php b/MLEB/cldr/CldrNames/CldrNamesLkt.php
deleted file mode 100644
index 0949be76..00000000
--- a/MLEB/cldr/CldrNames/CldrNamesLkt.php
+++ /dev/null
@@ -1,184 +0,0 @@
-<?php
-
-$languageNames = array(
- 'ab' => 'Abkhaz Iyápi',
- 'ady' => 'Adyghe Iyápi',
- 'ae' => 'Avestan Iyápi',
- 'af' => 'Afrikaans Iyápi',
- 'alt' => 'Itóǧata Altai Iyápi',
- 'am' => 'Amharic Iyápi',
- 'ar' => 'Arab Iyápi',
- 'arp' => 'Maȟpíya Tȟó Iyápi',
- 'as' => 'Assamese Iyápi',
- 'av' => 'Avaric Iyápi',
- 'az' => 'Azerbaijani Iyápi',
- 'ba' => 'Bashkir Iyápi',
- 'bal' => 'Baluchi Iyápi',
- 'bax' => 'Bamun Iyápi',
- 'be' => 'Belarus Iyápi',
- 'bej' => 'Beja Iyápi',
- 'bg' => 'Bulgar Iyápi',
- 'bn' => 'Bengali Iyápi',
- 'bo' => 'Tibetan Iyápi',
- 'bs' => 'Bosnia Iyápi',
- 'bua' => 'Buriat Iyápi',
- 'ca' => 'Catalan Iyápi',
- 'ce' => 'Chechen Iyápi',
- 'chm' => 'Mari Iyápi',
- 'chr' => 'Cherokee Iyápi',
- 'chy' => 'Šahíyela Iyápi',
- 'cop' => 'Coptic Iyápi',
- 'cr' => 'Maštíŋča Oyáte Iyápi',
- 'crh' => 'Crimean Turkish Iyápi',
- 'cs' => 'Czech Iyápi',
- 'cv' => 'Chuvash Iyápi',
- 'cy' => 'Wales Iyápi',
- 'da' => 'Dane Iyápi',
- 'dak' => 'Dakȟótiyapi',
- 'dar' => 'Dargwa Iyápi',
- 'de' => 'Iyášiča Iyápi',
- 'doi' => 'Dogri Iyápi',
- 'el' => 'Greece Iyápi',
- 'en' => 'Wašíčuiyapi',
- 'en-gb' => 'Šagláša Wašíčuiyapi',
- 'en-us' => 'Mílahaŋska Wašíčuiyapi',
- 'eo' => 'Esperanto Iyápi',
- 'es' => 'Spayóla Iyápi',
- 'es-419' => 'Wiyóȟpeyata Spayóla Iyápi',
- 'es-es' => 'Spayólaȟča Iyápi',
- 'et' => 'Estonia Iyápi',
- 'eu' => 'Basque Iyápi',
- 'fa' => 'Persian Iyápi',
- 'fi' => 'Finnish Iyápi',
- 'fil' => 'Filipino Iyápi',
- 'fj' => 'Fiji Iyápi',
- 'fo' => 'Faroese Iyápi',
- 'fr' => 'Wašíču Ikčéka Iyápi',
- 'ga' => 'Irish Iyápi',
- 'gba' => 'Gbaya Iyápi',
- 'gl' => 'Galician Iyápi',
- 'gn' => 'Guarani Iyápi',
- 'gu' => 'Gujarati Iyápi',
- 'ha' => 'Hausa Iyápi',
- 'haw' => 'Hawaiian Iyápi',
- 'he' => 'Hebrew Iyápi',
- 'hi' => 'Hindi Iyápi',
- 'hr' => 'Croatian Iyápi',
- 'ht' => 'Haiti Iyápi',
- 'hu' => 'Hungary Iyápi',
- 'hy' => 'Armenia Iyápi',
- 'id' => 'Indonesia Iyápi',
- 'ig' => 'Igbo Iyápi',
- 'inh' => 'Ingush Iyápi',
- 'is' => 'Iceland Iyápi',
- 'it' => 'Italia Iyápi',
- 'ja' => 'Kisúŋla Iyápi',
- 'jv' => 'Java Iyápi',
- 'ka' => 'Georia Iyápi',
- 'kaa' => 'Kara-Kalpak Iyápi',
- 'kbd' => 'Kabardian Iyápi',
- 'kk' => 'Kazakh Iyápi',
- 'km' => 'Khmer Iyápi',
- 'kn' => 'Kannada Iyápi',
- 'ko' => 'Korea Iyápi',
- 'ks' => 'Kashmir Iyápi',
- 'ku' => 'Kurd Iyápi',
- 'ky' => 'Kirghiz Iyápi',
- 'la' => 'Latin Iyápi',
- 'lah' => 'Lahnda Iyápi',
- 'lb' => 'Luxembourg Iyápi',
- 'lkt' => 'Lakȟólʼiyapi',
- 'lo' => 'Lao Iyápi',
- 'lt' => 'Lithuania Iyápilt',
- 'lus' => 'Mizo Iyápi',
- 'lv' => 'Latvia Iyápi',
- 'mg' => 'Malagasy Iyápi',
- 'mi' => 'Maori Iyápi',
- 'mk' => 'Macedonia Iyápi',
- 'ml' => 'Malayalam Iyápi',
- 'mni' => 'Namipuri Iyápi',
- 'mr' => 'Marathi Iyápi',
- 'ms' => 'Malay Iyápi',
- 'mt' => 'Maltese Iyápi',
- 'my' => 'Burmese Iyápi',
- 'ne' => 'Nepal Iyápi',
- 'nl' => 'Dutch Iyápi',
- 'nl-be' => 'Flemish Iyápi',
- 'nv' => 'Šináglegleǧa Iyápi',
- 'oj' => 'Ȟaȟátȟuŋwaŋ Iyápi',
- 'or' => 'Oriya Iyápi',
- 'pa' => 'Punjabi Iyápi',
- 'pl' => 'Polish Iyápi',
- 'ps' => 'Pashto Iyápi',
- 'pt' => 'Portuguese Iyápi',
- 'qu' => 'Quechua Iyápi',
- 'rm' => 'Romansh Iyápi',
- 'ro' => 'Romanian Iyápi',
- 'ru' => 'Russia Iyápi',
- 'sa' => 'Sanskrit Iyápi',
- 'sd' => 'Sindhi Iyápi',
- 'si' => 'Sinhala Iyápi',
- 'sk' => 'Slovak Iyápi',
- 'sl' => 'Slovenian Iyápi',
- 'so' => 'Somali Iyápi',
- 'sq' => 'Albanian Iyápi',
- 'sr' => 'Serbia Iyápi',
- 'su' => 'Sundanese Iyápi',
- 'sv' => 'Swedish Iyápi',
- 'sw' => 'Swahili Iyápi',
- 'swb' => 'Comonian Iyápi',
- 'ta' => 'Tamil Iyápi',
- 'te' => 'Telugu Iyápi',
- 'tg' => 'Tajik Iyápi',
- 'th' => 'Thai Iyápi',
- 'ti' => 'Tigrinya Iyápi',
- 'tk' => 'Turkmen Iyápi',
- 'to' => 'Tongan Iyápi',
- 'tr' => 'Turkish Iyápi',
- 'tt' => 'Tatar Iyápi',
- 'ug' => 'Uyghur Iyápi',
- 'uk' => 'Ukrain Iyápi',
- 'und' => 'Tukté iyápi tȟaŋíŋ šni',
- 'ur' => 'Urdu Iyápi',
- 'uz' => 'Uzbek Iyápi',
- 'vi' => 'Vietnamese Iyápi',
- 'wo' => 'Wolof Iyápi',
- 'xh' => 'Xhosa Iyápi',
- 'yo' => 'Yoruba Iyápi',
- 'zh' => 'Pȟečhókaŋ Háŋska Iyápi',
- 'zh-hans' => 'Pȟečhókaŋ Háŋska Iyápi Ikčéka',
- 'zh-hant' => 'Pȟečhókaŋ Háŋska Iyápi Ȟče',
- 'zu' => 'Zulu Iyápi',
- 'zza' => 'Zaza Iyápi',
-);
-
-$countryNames = array(
- 'CA' => 'Uŋčíyapi Makȟóčhe',
- 'CN' => 'Pȟečhókaŋhaŋska Makȟóčhe',
- 'DE' => 'Iyášiča Makȟóčhe',
- 'ES' => 'Spayólaȟče Makȟóčhe',
- 'JP' => 'Kisúŋla Makȟóčhe',
- 'MX' => 'Spayóla Makȟóčhe',
- 'US' => 'Mílahaŋska Tȟamákȟočhe',
-);
-
-$timeUnits = array(
- 'day-future-other' => 'Letáŋhaŋ {0}-čháŋ kiŋháŋ',
- 'day-other' => '{0}-čháŋ',
- 'day-past-other' => 'Hékta {0}-čháŋ k’uŋ héhaŋ',
- 'hour-future-other' => 'Letáŋhaŋ owápȟe {0} kiŋháŋ',
- 'hour-other' => 'Owápȟe {0}',
- 'hour-past-other' => 'Hékta owápȟe {0} kʼuŋ héhaŋ',
- 'month-future-other' => 'Letáŋhaŋ wíyawapi {0} kiŋháŋ',
- 'month-other' => 'Wíyawapi {0}',
- 'month-past-other' => 'Hékta wíyawapi {0} kʼuŋ héhaŋ',
- 'second-future-other' => 'Letáŋhaŋ okpí {0} kiŋháŋ',
- 'second-other' => 'Okpí {0}',
- 'second-past-other' => 'Hékta okpí {0} k’uŋ héhaŋ',
- 'week-future-other' => 'Letáŋhaŋ okó {0} kiŋháŋ',
- 'week-other' => 'okó {0}',
- 'week-past-other' => 'Hékta okó {0} kʼuŋ héhaŋ',
- 'year-future-other' => 'Letáŋhaŋ ómakȟa {0} kiŋháŋ',
- 'year-other' => 'ómakȟa {0}',
- 'year-past-other' => 'Hékta ómakȟa {0} kʼuŋ héhaŋ',
-);
diff --git a/MLEB/cldr/CldrNames/CldrNamesLn.php b/MLEB/cldr/CldrNames/CldrNamesLn.php
index f8e60681..84821939 100644
--- a/MLEB/cldr/CldrNames/CldrNamesLn.php
+++ b/MLEB/cldr/CldrNames/CldrNamesLn.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'af' => 'afrikansi',
'ak' => 'akan',
'am' => 'liamariki',
@@ -65,18 +65,27 @@ $languageNames = array(
'yo' => 'yoruba',
'zh' => 'lisinwa',
'zu' => 'zulu',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'AED' => 'Dirihamɛ ya Lémila alabo',
+ 'ALL' => 'Lek',
'AOA' => 'Kwanza ya Angóla',
'ARS' => 'Peso y’Argentina',
'AUD' => 'Dolarɛ ya Ositali',
+ 'AWG' => 'Guldeni y’ Aruba',
+ 'BAM' => 'Mark ya kobóngwama',
+ 'BBD' => 'Dolále ya Barbados',
+ 'BGN' => 'Lev ya Bulgaria',
'BHD' => 'Dinarɛ ya Bahrɛnɛ',
'BIF' => 'Falánga ya Burundi',
'BOB' => 'Boliviano',
'BRL' => 'Real ya Brazil',
+ 'BSD' => 'Dolále ya Bahamas',
'BWP' => 'Pula ya Botswana',
+ 'BYN' => 'Rubelé ya Bielorusí',
+ 'BYR' => 'Rubelé ya Bielorusí (2000–2016)',
+ 'BZD' => 'Dolále ya Belíze',
'CAD' => 'Dolarɛ ya Kanadá',
'CDF' => 'Falánga ya Kongó',
'CHF' => 'Falánga ya Swisɛ',
@@ -95,18 +104,26 @@ $currencyNames = array(
'ERN' => 'Nakfa ya Elitlɛ',
'ETB' => 'Birɛ ya Etsiópi',
'EUR' => 'Ɛlɔ́',
+ 'FJD' => 'Dolále ya Fiji',
'GBP' => 'Paunɛ ya Angɛlɛtɛ́lɛ',
'GHC' => 'Sedi ya Gana',
'GHS' => 'Cedi',
+ 'GIP' => 'Bojito ya Gibraltar',
'GMD' => 'Dalasi ya Gambi',
'GNF' => 'Falánga ya Gine',
'GNS' => 'Falánga ya Ginɛ',
+ 'GTQ' => 'Quetzal',
+ 'HNL' => 'Lempira',
+ 'HRK' => 'Kuna ya Kroasia',
'HTG' => 'Gurde',
+ 'HUF' => 'Folinte',
'INR' => 'Rupi ya Índɛ',
'ISK' => 'Motolé ya Islandi',
+ 'JMD' => 'Dolále ya Jamaïke',
'JPY' => 'Yeni ya Zapɔ',
'KES' => 'Shilingɛ ya Kenya',
'KMF' => 'Falánga ya Komoro',
+ 'KYD' => 'Dolále ya Bisanga bya Kayman',
'LRD' => 'Dolarɛ ya Liberya',
'LSL' => 'Loti ya Lesóto',
'LTL' => 'Litas ya Litwani',
@@ -114,19 +131,29 @@ $currencyNames = array(
'LYD' => 'Dinarɛ ya Libí',
'MAD' => 'Dirihame ya Marokɛ',
'MGA' => 'Falánga ya Madagasikarɛ',
- 'MRO' => 'Ugwiya ya Moritani',
+ 'MKD' => 'Denalé',
+ 'MRO' => 'Ugwiya ya Moritani (1973–2017)',
+ 'MRU' => 'Ugwiya ya Moritani',
'MUR' => 'Rupi ya Morisi',
'MWK' => 'Kwasha ya Malawi',
'MXN' => 'Peso ya Mexiko',
'MZM' => 'Metikali ya Mozambiki',
+ 'MZN' => 'Métikal',
'NAD' => 'Dolarɛ ya Namibi',
'NGN' => 'Naira ya Nizerya',
'NOK' => 'Motolé ya Norvej',
+ 'NZD' => 'Dolále ya Zeland ya Sika',
'PAB' => 'Balboa',
'PEN' => 'Sol Sika',
+ 'PGK' => 'Kina',
+ 'PLN' => 'Sloty',
'PYG' => 'Guarani',
+ 'RON' => 'Leu Sika',
+ 'RSD' => 'Dinalé ya Serbia',
+ 'RUB' => 'Rubelé ya Rusí',
'RWF' => 'Falánga ya Rwanda',
'SAR' => 'Riyalɛ ya Alabi Sawuditɛ',
+ 'SBD' => 'Dolále ya Bisanga Solomoni',
'SCR' => 'Rupi ya Sɛshɛlɛ',
'SDG' => 'Dinarɛ ya Sudá',
'SDP' => 'Paunɛ ya Sudá',
@@ -134,26 +161,63 @@ $currencyNames = array(
'SHP' => 'Paunɛ ya Sántu elena',
'SLL' => 'Leonɛ',
'SOS' => 'Shilingɛ ya Somali',
- 'STD' => 'Dobra ya Sao Tomé mpé Presipe',
+ 'SSP' => 'Bojito ya Sudaní ya Súdi',
+ 'STD' => 'Dobra ya Sao Tomé mpé Presipe (1977–2017)',
+ 'STN' => 'Dobra ya Sao Tomé mpé Presipe',
'SZL' => 'Lilangeni',
'TND' => 'Dinarɛ ya Tinizi',
+ 'TOP' => 'Pa’Anga',
+ 'TTD' => 'Dolále ya Trinidad mpé Tobago',
'TZS' => 'Shilingɛ ya Tanzani',
+ 'UAH' => 'Griwná',
'UGX' => 'Shilingɛ ya Uganda',
'USD' => 'Dolarɛ ya Ameriki',
+ 'VUV' => 'Vatu',
+ 'WST' => 'Tala',
'XAF' => 'Falánga CFA BEAC',
+ 'XCD' => 'Dolále ya Kalibí Monyɛlɛ',
'XOF' => 'Falánga CFA BCEAO',
+ 'XPF' => 'Falánga CFP',
'ZAR' => 'Randɛ ya Afríka Súdi',
'ZMK' => 'Kwasha ya Zambi (1968–2012)',
'ZMW' => 'Kwasha ya Zambi',
'ZWD' => 'Dolarɛ ya Zimbabwɛ',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
+ 'AOA' => 'Kz',
+ 'AUD' => 'A$',
+ 'BAM' => 'BAM',
+ 'BZD' => 'BZD',
'CDF' => 'FC',
-);
+ 'CHF' => 'Fr.',
+ 'CZK' => 'CZK',
+ 'DKK' => 'DKK',
+ 'EUR' => '€',
+ 'FJD' => 'FJD',
+ 'GBP' => '£',
+ 'GIP' => 'GIP',
+ 'HRK' => 'HRK',
+ 'HUF' => 'HUF',
+ 'ISK' => 'ISK',
+ 'MKD' => 'MKD',
+ 'NOK' => 'NOK',
+ 'NZD' => 'NZ$',
+ 'PGK' => 'PGK',
+ 'PLN' => 'PLN',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RF',
+ 'SBD' => 'SBD',
+ 'SEK' => 'SEK',
+ 'TOP' => 'T$',
+ 'UAH' => 'UAH',
+ 'XAF' => 'FCFA',
+ 'XPF' => 'F CFP',
+];
-$countryNames = array(
- 'AC' => 'Esenga ya Mbuta o likoló',
+$countryNames = [
+ 'AC' => 'Esanga ya Mbuta o Likoló',
'AD' => 'Andorɛ',
'AE' => 'Lɛmila alabo',
'AF' => 'Afiganisitá',
@@ -161,7 +225,6 @@ $countryNames = array(
'AI' => 'Angiyɛ',
'AL' => 'Alibani',
'AM' => 'Amɛni',
- 'AN' => 'Antiyɛ ya Olandɛ',
'AO' => 'Angóla',
'AQ' => 'Antarctique',
'AR' => 'Arizantinɛ',
@@ -180,19 +243,20 @@ $countryNames = array(
'BH' => 'Bahrɛnɛ',
'BI' => 'Burundi',
'BJ' => 'Benɛ',
+ 'BL' => 'Sántu Barthélemy',
'BM' => 'Bermuda',
'BN' => 'Brineyi',
'BO' => 'Bolivi',
'BR' => 'Brezílɛ',
'BS' => 'Bahamasɛ',
'BT' => 'Butáni',
- 'BV' => 'Esenga Buvé',
+ 'BV' => 'Esanga Buvé',
'BW' => 'Botswana',
'BY' => 'Byelorisi',
'BZ' => 'Belizɛ',
'CA' => 'Kanada',
'CC' => 'Bisanga Kokos',
- 'CD' => 'Repibiki demokratiki ya Kongó',
+ 'CD' => 'Republíki ya Kongó Demokratíki',
'CF' => 'Repibiki ya Afríka ya Káti',
'CG' => 'Kongo',
'CH' => 'Swisɛ',
@@ -202,12 +266,13 @@ $countryNames = array(
'CM' => 'Kamɛrune',
'CN' => 'Sinɛ',
'CO' => 'Kolombi',
+ 'CP' => 'Esanga Clipperton',
'CR' => 'Kositarika',
'CU' => 'Kiba',
'CV' => 'Bisanga bya Kapevɛrɛ',
- 'CX' => 'Esenga ya Mbótama',
+ 'CX' => 'Esanga ya Mbótama',
'CY' => 'Sípɛlɛ',
- 'CZ' => 'Repibiki Tsekɛ',
+ 'CZ' => 'Shekia',
'DE' => 'Alemani',
'DJ' => 'Dzibuti',
'DK' => 'Danɛmarike',
@@ -227,7 +292,7 @@ $countryNames = array(
'FJ' => 'Fidzi',
'FK' => 'Bisanga bya Maluni',
'FM' => 'Mikronezi',
- 'FO' => 'Bisanga ya Fɛróa',
+ 'FO' => 'Bisanga bya Faloé',
'FR' => 'Falánsɛ',
'GA' => 'Gabɔ',
'GB' => 'Angɛlɛtɛ́lɛ',
@@ -265,6 +330,7 @@ $countryNames = array(
'IR' => 'Irâ',
'IS' => 'Isilandɛ',
'IT' => 'Itali',
+ 'JE' => 'Jelezy',
'JM' => 'Zamaiki',
'JO' => 'Zɔdani',
'JP' => 'Zapɔ',
@@ -294,6 +360,7 @@ $countryNames = array(
'MC' => 'Monako',
'MD' => 'Molidavi',
'ME' => 'Monténégro',
+ 'MF' => 'Sántu Martin',
'MG' => 'Madagasikari',
'MH' => 'Bisanga bya Marishalɛ',
'MK' => 'Masedwanɛ',
@@ -383,6 +450,7 @@ $countryNames = array(
'TZ' => 'Tanzani',
'UA' => 'Ikrɛni',
'UG' => 'Uganda',
+ 'UM' => 'Bisanga Mokɛ́na Mosíká bya Lisangá lya Ameríka',
'US' => 'Ameriki',
'UY' => 'Irigwei',
'UZ' => 'Uzibɛkisitá',
@@ -400,4 +468,29 @@ $countryNames = array(
'ZA' => 'Afríka ya Súdi',
'ZM' => 'Zambi',
'ZW' => 'Zimbabwe',
-);
+];
+
+$timeUnits = [
+ 'century-one' => '{0} sekúlo',
+ 'century-other' => '{0} sekúlo',
+ 'day-one' => '{0} mokɔlɔ',
+ 'day-other' => '{0} mikɔlɔ',
+ 'hour-one' => '{0} ngonga',
+ 'hour-other' => '{0} ngonga',
+ 'microsecond-one' => '{0} mikrosekundí',
+ 'microsecond-other' => '{0} mikrosekundí',
+ 'millisecond-one' => '{0} millisekundí',
+ 'millisecond-other' => '{0} millisekundí',
+ 'minute-one' => '{0} monúti',
+ 'minute-other' => '{0} minúti',
+ 'month-one' => '{0} sánzá',
+ 'month-other' => '{0} sánzá',
+ 'nanosecond-one' => '{0} nanosekundí',
+ 'nanosecond-other' => '{0} nanosekundí',
+ 'second-one' => '{0} sekundí',
+ 'second-other' => '{0} sekundí',
+ 'week-one' => '{0} mpɔ́sɔ',
+ 'week-other' => '{0} mpɔ́sɔ',
+ 'year-one' => '{0} mobú',
+ 'year-other' => '{0} mibú',
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesLo.php b/MLEB/cldr/CldrNames/CldrNamesLo.php
index 4f2d7dcb..cc4bce6d 100644
--- a/MLEB/cldr/CldrNames/CldrNamesLo.php
+++ b/MLEB/cldr/CldrNames/CldrNamesLo.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'ອະຟາ',
'ab' => 'ແອບຄາຊຽນ',
'ace' => 'ແອັກຊີເນັສ',
@@ -23,7 +23,7 @@ $languageNames = array(
'ar' => 'ອາຣັບ',
'ar-001' => 'ອາຣາບິກມາດຕະຖານສະໄໝໃໝ່',
'arc' => 'ອາລາມິກ',
- 'arn' => 'ອາຣົວຄານຽນ',
+ 'arn' => 'ມາພຸດຊີ',
'arp' => 'ອາຣາປາໂຮ',
'arw' => 'ອາຣາແວກ',
'as' => 'ອັສຊາມີສ',
@@ -45,6 +45,7 @@ $languageNames = array(
'bez' => 'ບີນາ',
'bfd' => 'ບາຟັດ',
'bg' => 'ບັງກາຣຽນ',
+ 'bgn' => 'ບາໂລຈີ ພາກຕາເວັນຕົກ',
'bho' => 'ໂບພູຣິ',
'bi' => 'ບິສລະມາ',
'bik' => 'ບີຄອນ',
@@ -87,6 +88,7 @@ $languageNames = array(
'cop' => 'ຄອບຕິກ',
'cr' => 'ຄີ',
'crh' => 'ຄຣີເມນເຕີຄິຊ',
+ 'crs' => 'ເຊເຊວາ ໂຄຣດ ຝຣັ່ງ',
'cs' => 'ເຊກ',
'csb' => 'ກາຊູບຽນ',
'cu' => 'ໂບດສລາວິກ',
@@ -97,7 +99,7 @@ $languageNames = array(
'dar' => 'ດາກວາ',
'dav' => 'ໄຕຕາ',
'de' => 'ເຢຍລະມັນ',
- 'de-at' => 'ອອສຕຣຽນ ເຈີແມນ',
+ 'de-at' => 'ເຢຍລະມັນ (ໂອສຕຣິດ)',
'de-ch' => 'ສະວິສ ໄຮ ເຈີແມນ',
'del' => 'ເດລາວາ',
'den' => 'ຊີເລັບ',
@@ -121,15 +123,15 @@ $languageNames = array(
'el' => 'ກຣີກ',
'elx' => 'ອີລາໄມ',
'en' => 'ອັງກິດ',
- 'en-au' => 'ອັງກິດ (ອອສເຕຣລຽນ)',
- 'en-ca' => 'ອັງກິດ (ເຄເນດຽນ)',
+ 'en-au' => 'ອັງກິດ (ໂອດສະຕາລີ)',
+ 'en-ca' => 'ອັງກິດແຄນາດາ',
'en-gb' => 'ອັງກິດ (ບຣິດທິຊ)',
'en-us' => 'ອັງກິດ (ອາເມລິກັນ)',
'enm' => 'ອັງກິດກາງ',
- 'eo' => 'ເອສເປີຣັນໂຕ',
+ 'eo' => 'ເອສປາຍ',
'es' => 'ສະແປນນິຊ',
'es-419' => 'ລາຕິນ ອາເມຣິກັນ ສະແປນນິຊ',
- 'es-es' => 'ຢູໂຣປຽນ ສະແປນນິຊ',
+ 'es-es' => 'ສະເປັນ ຢຸໂຣບ',
'es-mx' => 'ເມັກຊິກັນ ສະແປນນິຊ',
'et' => 'ເອສໂຕນຽນ',
'eu' => 'ບັສກີ',
@@ -144,14 +146,14 @@ $languageNames = array(
'fo' => 'ຟາໂຣສ',
'fon' => 'ຟອນ',
'fr' => 'ຝຣັ່ງ',
- 'fr-ca' => 'ເຄເນດຽນ ຝຣັ່ງ',
- 'fr-ch' => 'ສະວິສ ຝຣັ່ງ',
+ 'fr-ca' => 'ຟລັງ(ການາດາ)',
+ 'fr-ch' => 'ຝຣັ່ງ (ສວິສ)',
'frm' => 'ຟຮັ່ງເສດກາງ',
'fro' => 'ຟຮັ່ງເສດໂບຮານ',
'frr' => 'ຟຣີຊຽນເໜືອ',
'frs' => 'ຟຣີຊຽນຕາເວັນອອກ',
'fur' => 'ຟຣີລຽນ',
- 'fy' => 'ເວສເທີນ ຟຣິຊຽນ',
+ 'fy' => 'ຟຣິຊຽນ ຕາເວັນຕົກ',
'ga' => 'ໄອຣິສ',
'gaa' => 'ກາ',
'gag' => 'ກາກາອຸຊ',
@@ -184,7 +186,7 @@ $languageNames = array(
'hmn' => 'ມອງ',
'ho' => 'ຮິຣິໂມຕູ',
'hr' => 'ໂຄຣເອທຽນ',
- 'hsb' => 'ຊຸບເປີຊໍບຽນ',
+ 'hsb' => 'ຊໍບຽນ ທາງຕອນເໜືອ',
'ht' => 'ໄຮຕຽນ',
'hu' => 'ຮັງກາຣຽນ',
'hup' => 'ຮູປາ',
@@ -246,7 +248,7 @@ $languageNames = array(
'krc' => 'ກາຣາໄຊ-ບານກາ',
'krl' => 'ກາເຣລຽນ',
'kru' => 'ກູຣູກ',
- 'ks' => 'ຄັດຊະມີຣີ',
+ 'ks' => 'ຄາສເມຍຣິ',
'ksb' => 'ຊຳບາລ້າ',
'ksf' => 'ບາເຟຍ',
'ksh' => 'ໂຄລອກນຽນ',
@@ -270,6 +272,7 @@ $languageNames = array(
'lo' => 'ລາວ',
'lol' => 'ແມັງໂກ້',
'loz' => 'ໂລຊິ',
+ 'lrc' => 'ລູຣິ ທາງຕອນເໜືອ',
'lt' => 'ລິທົວນຽນ',
'lu' => 'ລູບາ-ຄາຕັງກາ',
'lua' => 'ລູບາ-ລູລົວ',
@@ -300,7 +303,7 @@ $languageNames = array(
'mi' => 'ມາວຣິ',
'mic' => 'ມິກແມກ',
'min' => 'ທີແນງກາບູ',
- 'mk' => 'ແມັກເຊໂດນຽນ',
+ 'mk' => 'ແມຊິໂດນຽນ',
'ml' => 'ມາເລອາລຳ',
'mn' => 'ມອງໂກເລຍ',
'mnc' => 'ແມນຈູ',
@@ -318,12 +321,14 @@ $languageNames = array(
'my' => 'ມຽນມາ',
'mye' => 'ມໍຢິນ',
'myv' => 'ເອີຍາ',
+ 'mzn' => 'ມາແຊນເດີລັງ',
'na' => 'ນາຢູລູ',
'nap' => 'ນາໂປລີ',
'naq' => 'ນາມາ',
'nb' => 'ນໍເວຈຽນ ບັອກມອລ',
'nd' => 'ເອັນເດເບເລເໜືອ',
- 'nds' => 'ເຢຍລະມັນຕ່ຳ ແຊກຊອນຕໍ່ຳ',
+ 'nds' => 'ເຢຍລະມັນ ຕອນໄຕ້',
+ 'nds-nl' => 'ຊາຊອນ ຕອນໄຕ',
'ne' => 'ເນປາລີ',
'new' => 'ນີວາຣິ',
'ng' => 'ເອັນດອງກາ',
@@ -361,28 +366,30 @@ $languageNames = array(
'pam' => 'ປາມປານກາ',
'pap' => 'ປາມເປຍເມັນໂທ',
'pau' => 'ປາລົວອານ',
+ 'pcm' => 'ໄນຈີຣຽນພິດກິນ',
'peo' => 'ເປີເຊຍໂບຮານ',
'phn' => 'ຟີນີເຊຍ',
'pi' => 'ປາລີ',
'pl' => 'ໂປລິຊ',
'pon' => 'ພອນເພ',
+ 'prg' => 'ປຣັສຊຽນ',
'pro' => 'ໂປວອງຊານໂບຮານ',
'ps' => 'ປາສໂຕ',
- 'pt' => 'ປໍຕູກີສ',
- 'pt-br' => 'ບຣາຊິລຽນ ປໍຕູກີສ',
- 'pt-pt' => 'ຢູໂຣປຽນ ປໍຕູກີສ',
+ 'pt' => 'ປອກຕຸຍກິສ',
+ 'pt-br' => 'ປອກຕຸຍກິສ ບະເລຊີ່ນ',
+ 'pt-pt' => 'ປອກຕຸຍກິສ ຢຸໂຣບ',
'qu' => 'ຄີຊົວ',
'quc' => 'Kʼicheʼ',
'raj' => 'ຣາຈັສທານິ',
'rap' => 'ຣາປານຸຍ',
'rar' => 'ຣາໂຣທອນການ',
- 'rm' => 'ໂຣແມນ',
+ 'rm' => 'ໂຣແມນຊ໌',
'rn' => 'ຣຸນດິ',
'ro' => 'ໂຣແມນຽນ',
'ro-md' => 'ໂມດາວຽນ',
'rof' => 'ຣົມໂບ',
'rom' => 'ໂຣເມນີ',
- 'ru' => 'ຣັດຊຽນ',
+ 'ru' => 'ລັດເຊຍ',
'rup' => 'ອາໂຣມານຽນ',
'rw' => 'ຄິນຢາວານດາ',
'rwk' => 'ອາຣວາ',
@@ -399,6 +406,7 @@ $languageNames = array(
'scn' => 'ຊີຊິລີນ',
'sco' => 'ສກອດ',
'sd' => 'ສິນທິ',
+ 'sdh' => 'ພາກໄຕ້ ຂອງ ກູດິດ',
'se' => 'ຊາມິເໜືອ',
'see' => 'ຊີນີກາ',
'seh' => 'ຊີນາ',
@@ -408,7 +416,7 @@ $languageNames = array(
'sga' => 'ອີຣິຊເກົ່າ',
'sh' => 'ເຊີໂບ-ໂກເຊຍ',
'shi' => 'ທາເຊວຫິດ',
- 'shn' => 'ໄທໃຫ່ຍ',
+ 'shn' => 'ຊານ',
'shu' => 'ອາລັບ-ຊາດ',
'si' => 'ສິນຫາລາ',
'sid' => 'ຊິດາໂມ',
@@ -436,8 +444,8 @@ $languageNames = array(
'sux' => 'ຊູເມີເລຍ',
'sv' => 'ສະວີດິຊ',
'sw' => 'ຊວາຮີລິ',
+ 'sw-cd' => 'ຄອງໂກ ຊວາຮີລິ',
'swb' => 'ໂຄໂນຣຽນ',
- 'swc' => 'ຄອງໂກ ຊວາຮີລິ',
'syc' => 'ຊີເລຍແບບດັ້ງເດີມ',
'syr' => 'ຊີເລຍ',
'ta' => 'ທາມິລ',
@@ -479,7 +487,7 @@ $languageNames = array(
'uk' => 'ຢູເຄຣນຽນ',
'umb' => 'ອຳບັນດູ',
'und' => 'ບໍ່ສາມາດລະບຸພາສາ',
- 'ur' => 'ອູຣະດູ',
+ 'ur' => 'ອູຣດູ',
'uz' => 'ອຸສເບກ',
'vai' => 'ໄວ',
've' => 'ເວນດາ',
@@ -492,6 +500,7 @@ $languageNames = array(
'wal' => 'ວາລາໂມ',
'war' => 'ວາເລ',
'was' => 'ວາໂຊ',
+ 'wbp' => 'ວາຣພິຣິ',
'wo' => 'ວໍລອບ',
'xal' => 'ການມິກ',
'xh' => 'ໂຮຊາ',
@@ -515,9 +524,9 @@ $languageNames = array(
'zun' => 'ຊູນີ',
'zxx' => 'ບໍ່ມີເນື້ອຫາພາສາ',
'zza' => 'ຊາຊາ',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'ADP' => 'ເປເຊຕາ ອັນໂດລາ',
'AED' => 'ສະ​ຫະ​ລັດ​ອາ​ຣັບ​ອາ​ມິ​ເຣດ ເດີ​ແຮມ',
'AFA' => 'ອັບການິ ອັບການິສະຖານ (1927–2002)',
@@ -571,7 +580,8 @@ $currencyNames = array(
'BUK' => 'ຈາດ ພະມ້າ',
'BWP' => 'ບອດ​ສະ​ວາ​ນານ ພູ​ລາ',
'BYB' => 'ຣູໂບ ເບຣາຣຸສ ໃໝ່(1994–1999)',
- 'BYR' => 'ເບ​ລາ​ຣຸ​ສ​ຊຽນ ຣູ​ເບິນ',
+ 'BYN' => 'ເບ​ລາ​ຣຸ​ສ​ຊຽນ ຣູ​ເບິນ',
+ 'BYR' => 'ເບ​ລາ​ຣຸ​ສ​ຊຽນ ຣູ​ເບິນ (2000–2016)',
'BZD' => 'ໂດ​ລ່າ​ເບ​ລິ​ຊ',
'CAD' => 'ໂດລ່າຄານາດາ',
'CDF' => 'ຄອງ​ໂກ​ລີສ ຟຣັງ',
@@ -581,6 +591,7 @@ $currencyNames = array(
'CLE' => 'ເອສກູໂດ ຊິລີ',
'CLF' => 'ຫົວໜ່ວຍບັນຊີ (UF) ຊິລີ',
'CLP' => 'ຊິ​ລຽນ ເປ​ໂຊ',
+ 'CNH' => 'ຢວນຈີນ (ນອກປະເທດ)',
'CNY' => 'ຈີນ ຢວນ',
'COP' => 'ໂຄ​ລົມ​ບຽນ ເປ​ໂຊ',
'COU' => 'ຫົວໜ່ວຍຄ່າຈິງ ໂຄລັມເບຍ',
@@ -612,7 +623,7 @@ $currencyNames = array(
'FJD' => 'ຟິ​ຈຽນ ໂດ​ລ່າ',
'FKP' => 'ຟອ​ລ໌ກ​ແລນ ໄອ​ແລນ​ສ໌ ພາວ​ດ໌',
'FRF' => 'ຟຣັງ ຝຣັ່ງ',
- 'GBP' => 'ພາວ​ດ໌ ສະ​ເຕີ​ຣິງ (ອັງ​ກິດ)',
+ 'GBP' => 'ປອນ ສະ​ເຕີ​ຣິງ (ອັງ​ກິດ)',
'GEK' => 'ກູປອນ ລາຣິທ ຈໍເຈຍ',
'GEL' => 'ຈໍ​ຈຽນ ລາ​ຣິ',
'GHC' => 'ເຊດີ ການາ (1979–2007)',
@@ -682,7 +693,8 @@ $currencyNames = array(
'MMK' => 'ມຽນ​ມາ ຈ໊າດ',
'MNT' => 'ມອງ​ໂກ​ລຽນ ຕູກຣິກ',
'MOP' => 'ມາ​ເກົ້າ ປາ​​ຕາ​ກາ',
- 'MRO' => 'ມົວ​ຣິ​ທາ​ນຽນ ອູ​ກິວ​ຢາ',
+ 'MRO' => 'ມົວ​ຣິ​ທາ​ນຽນ ອູ​ກິວ​ຢາ (1973–2017)',
+ 'MRU' => 'ມົວ​ຣິ​ທາ​ນຽນ ອູ​ກິວ​ຢາ',
'MTL' => 'ລິຣາ ມອນຕາ',
'MTP' => 'ປອນ ມອນຕາ',
'MUR' => 'ເມົາ​ຣິ​ທຽນ ຣູ​ປີ',
@@ -706,7 +718,7 @@ $currencyNames = array(
'OMR' => 'ໂອ​ມາ​ນິ ຣຽວ',
'PAB' => 'ພານາມານຽນ ບອນບົວ',
'PEI' => 'ອິນຕິ ເປຣູ',
- 'PEN' => 'ເປ​ຣູ​ວຽນ ນູ​ໂວ ໂຊ​ລ໌',
+ 'PEN' => 'ເປ​ຣູ​ວຽນ ໂຊ​ລ໌',
'PES' => 'ໂຊນ ເປຣູ (1863–1965)',
'PGK' => 'ປາ​ປົວ ນິວ ກິ​ນຽນ ກິ​ນາ',
'PHP' => 'ຟິ​ລິບ​ປິນ ເປ​ໂຊ',
@@ -739,7 +751,8 @@ $currencyNames = array(
'SRD' => 'ຊູ​ຣິ​ນາ​ມີ​ສ ໂດ​ລ່າ',
'SRG' => 'ກິລເດີ ຊູຣິນາເມ',
'SSP' => 'ເຊົາ​ທ໌ ຊູ​ດານ​ນີ​ສ ພາວດ໌',
- 'STD' => 'ເຊົາ ໂທ​ເມ ແອນ ພ​ຣິນ​ຊິ​ປີ ໂດບຣາ',
+ 'STD' => 'ເຊົາ ໂທ​ເມ ແອນ ພ​ຣິນ​ຊິ​ປີ ໂດບຣາ (1977–2017)',
+ 'STN' => 'ເຊົາ ໂທ​ເມ ແອນ ພ​ຣິນ​ຊິ​ປີ ໂດບຣາ',
'SUR' => 'ຣູໂບ ໂຊວຽດ',
'SVC' => 'ໂກລອງ ເອກາວາດໍ',
'SYP' => 'ຊີ​ຣຽນ ພາວດ໌',
@@ -767,14 +780,15 @@ $currencyNames = array(
'UYI' => 'ເປໂຊອູຣຸກວຍ (ຫົວໜ່ວຍອິນເດັກ)',
'UYP' => 'ເປໂຊ ອູຣຸກວຍ (1975–1993)',
'UYU' => 'ອູ​ຣຸ​ກົວ​ຢານ ເປ​ໂຊ',
- 'UZS' => 'ອຸສ​ເບ​ກິ​ສ​ຖານ ໂຊມ',
+ 'UZS' => 'ອຸສເບກິສຖານິ ໂຊມ',
'VEB' => 'ໂບລີວາ ເວເນຊູເອລາ (1871–2008)',
- 'VEF' => 'ເວ​ເນ​ຊູ​ເອ​ລັນ ໂບ​ລິ​ວາ',
+ 'VEF' => 'ເວ​ເນ​ຊູ​ເອ​ລັນ ໂບ​ລິ​ວາ (2008–2018)',
+ 'VES' => 'ເວ​ເນ​ຊູ​ເອ​ລັນ ໂບ​ລິ​ວາ',
'VND' => 'ຫວຽດ​ນາມ ດົງ',
'VNN' => 'ດົງ ຫວຽດນາມ (1978–1985)',
'VUV' => '​ວາ​ນົວ​ຕູ ວາ​ຕູ',
'WST' => 'ຊາ​ໂມນ ທາ​ລາ',
- 'XAF' => 'ຟຣັງ ເຊຟານ ທະນາຄານລັດອາຟຣິກາກາງ',
+ 'XAF' => 'ສາທາລະນະລັດອາຟຣິກາກາງ',
'XAG' => 'ເງິນ',
'XAU' => 'ຄຳ',
'XBA' => 'ຫົວໜ່ວຍຄອມໂປຊິດ ເອີຣົບ',
@@ -792,7 +806,7 @@ $currencyNames = array(
'XPT' => 'ແພລັດຕິນຳ',
'XRE' => 'ກອງທຶນໄຣເນັດ',
'XTS' => 'ລະຫັດທົດສອບສະກຸນເງິນ',
- 'XXX' => 'ສະ​ກຸນ​ເງິນ​ທີ່ບໍ່​ຮູັ​ຈັກ',
+ 'XXX' => 'ສະກຸນເງິນທີ່ບໍ່ຮູ້ຈັກ',
'YDD' => 'ດີນາ ເຢເມນ',
'YER' => 'ເຢ​ເມ​ນິ ຣຽວ',
'YUD' => 'ຮາດດີນາ ຢູໂກສະລາວີ',
@@ -808,9 +822,9 @@ $currencyNames = array(
'ZWD' => 'ດອນລາ ຊິມບັບເວ (1980–2008)',
'ZWL' => 'ດອນລາ ຊິມບັບເວ (2009)',
'ZWR' => 'ດອນລາ ຊິມບັບເວ (2008)',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'AED' => 'AED',
'AFN' => 'AFN',
'ALL' => 'ALL',
@@ -834,6 +848,7 @@ $currencySymbols = array(
'BSD' => 'BSD',
'BTN' => 'BTN',
'BWP' => 'BWP',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CA$',
@@ -855,7 +870,7 @@ $currencySymbols = array(
'ERN' => 'ERN',
'ETB' => 'ETB',
'EUR' => '€',
- 'FJD' => '$',
+ 'FJD' => 'FJD',
'FKP' => 'FKP',
'GBP' => '£',
'GEL' => 'GEL',
@@ -940,6 +955,7 @@ $currencySymbols = array(
'SRD' => 'SRD',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'Db',
'SYP' => 'SYP',
'SZL' => 'SZL',
'THB' => '฿',
@@ -967,25 +983,24 @@ $currencySymbols = array(
'YER' => 'YER',
'ZAR' => 'ZAR',
'ZMW' => 'ZMW',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'ເກາະອາເຊນຊັນ',
'AD' => 'ອັນດໍຣາ',
'AE' => 'ສະຫະລັດອາຣັບເອມິເຣດ',
- 'AF' => 'ອາຟການິສຖານ',
- 'AG' => 'ອາທິກົວ ບາບູດາ',
+ 'AF' => 'ອາຟການິດສະຖານ',
+ 'AG' => 'ແອນທິກົວ ແລະ ບາບູດາ',
'AI' => 'ແອນກຸຍລາ',
'AL' => 'ແອວເບເນຍ',
'AM' => 'ອາເມເນຍ',
- 'AN' => 'ເນເທີແລນແອນເທິນ',
- 'AO' => 'ອັນໂກລາ',
+ 'AO' => 'ແອງໂກລາ',
'AQ' => 'ແອນຕາດຕິກາ',
'AR' => 'ອາເຈນທິນາ',
'AS' => 'ອາເມຣິກາ ຊາມົວ',
'AT' => 'ອອສເທຣຍ',
'AU' => 'ອອສເຕຣເລຍ',
- 'AW' => 'ອໍຣູບາ',
+ 'AW' => 'ອາຣູບາ',
'AX' => 'ຫມູ່ເກາະໂອລັນ',
'AZ' => 'ອາເຊີໄບຈານ',
'BA' => 'ບອດສະເນຍ ແລະ ແຮສໂກວີນາ',
@@ -1007,7 +1022,7 @@ $countryNames = array(
'BT' => 'ພູຖານ',
'BV' => 'ເກາະບູເວດ',
'BW' => 'ບອດສະວານາ',
- 'BY' => 'ເບວບາຣຸສ',
+ 'BY' => 'ເບລາຣຸສ',
'BZ' => 'ເບລີຊ',
'CA' => 'ແຄນາດາ',
'CC' => 'ຫມູ່ເກາະໂກໂກສ',
@@ -1028,7 +1043,7 @@ $countryNames = array(
'CW' => 'ຄູຣາຊາວ',
'CX' => 'ເກາະຄຣິສມາດ',
'CY' => 'ໄຊປຣັສ',
- 'CZ' => 'ສາທາລະນະລັດເຊກ',
+ 'CZ' => 'ເຊັກເຊຍ',
'DE' => 'ເຢຍລະມັນ',
'DG' => 'ດິເອໂກ ກາເຊຍ',
'DJ' => 'ຈິບູຕິ',
@@ -1037,7 +1052,7 @@ $countryNames = array(
'DO' => 'ສາທາລະນະລັດ ໂດມິນິກັນ',
'DZ' => 'ອັລຈິເຣຍ',
'EA' => 'ເຊວຕາ ແລະເມລິນລາ',
- 'EC' => 'ເອກກວາດໍ',
+ 'EC' => 'ເອກວາດໍ',
'EE' => 'ເອສໂຕເນຍ',
'EG' => 'ອີຢິບ',
'EH' => 'ຊາຮາຣາຕາເວັນຕົກ',
@@ -1045,6 +1060,7 @@ $countryNames = array(
'ES' => 'ສະເປນ',
'ET' => 'ອີທິໂອເປຍ',
'EU' => 'ສະຫະພາບຢູໂຣບ',
+ 'EZ' => 'ເຂດຢູໂຣບ',
'FI' => 'ຟິນແລນ',
'FJ' => 'ຟິຈິ',
'FK' => 'ຫມູ່ເກາະຟອກແລນ',
@@ -1063,14 +1079,14 @@ $countryNames = array(
'GM' => 'ສາທາລະນະລັດແກມເບຍ',
'GN' => 'ກິນີ',
'GP' => 'ກົວດາລູບ',
- 'GQ' => 'ອີຄົວໂຕຣຽວ ກີນີ',
+ 'GQ' => 'ເອຄົວໂທຣຽວ ກີນີ',
'GR' => 'ກຣີຊ',
- 'GS' => 'ໝູ່ເກາະຈໍເຈຍ & ເຊົາ ແຊນວິດ',
+ 'GS' => 'ໝູ່ເກາະ ຈໍເຈຍຕອນໃຕ້ ແລະ ແຊນວິດຕອນໃຕ້',
'GT' => 'ກົວເທມາລາ',
- 'GU' => 'ກວມ',
+ 'GU' => 'ກວາມ',
'GW' => 'ກິນີ-ບິສເຊົາ',
'GY' => 'ກາຍຢານາ',
- 'HK' => 'ຮອງກົງ',
+ 'HK' => 'ຮົງກົງ',
'HM' => 'ໝູ່ເກາະເຮີດ & ແມັກໂດນອລ',
'HN' => 'ຮອນດູຣັສ',
'HR' => 'ໂຄຣເອເທຍ',
@@ -1078,13 +1094,13 @@ $countryNames = array(
'HU' => 'ຮັງກາຣີ',
'IC' => 'ໝູ່ເກາະຄານາຣີ',
'ID' => 'ອິນໂດເນເຊຍ',
- 'IE' => 'ໄອຣ໌ແລນ',
+ 'IE' => 'ໄອແລນ',
'IL' => 'ອິສຣາເອວ',
'IM' => 'ເອວ ອອບ ແມນ',
'IN' => 'ອິນເດຍ',
- 'IO' => 'ເຂດແດນບຣິທິສອິນດຽນໂອຊຽນ',
+ 'IO' => 'ເຂດແດນອັງກິດໃນມະຫາສະມຸດອິນເດຍ',
'IQ' => 'ອີຣັກ',
- 'IR' => 'ອີຣ່ານ',
+ 'IR' => 'ອີຣານ',
'IS' => 'ໄອສແລນ',
'IT' => 'ອິຕາລີ',
'JE' => 'ເຈີຊີ',
@@ -1092,15 +1108,15 @@ $countryNames = array(
'JO' => 'ຈໍແດນ',
'JP' => 'ຍີ່ປຸ່ນ',
'KE' => 'ເຄນຢາ',
- 'KG' => 'ຄີກິສຖານ',
+ 'KG' => 'ຄຽກກິດສະຖານ',
'KH' => 'ກຳປູເຈຍ',
'KI' => 'ຄິຣິບາທິ',
'KM' => 'ໂຄໂມໂຣສ',
'KN' => 'ເຊນ ຄິດ ແລະ ເນວິສ',
'KP' => 'ເກົາຫລີເໜືອ',
'KR' => 'ເກົາຫລີໃຕ້',
- 'KW' => 'ຄູເວດ',
- 'KY' => 'ເຄແມນ ໄອແລນ',
+ 'KW' => 'ກູເວດ',
+ 'KY' => 'ໝູ່ເກາະ ເຄແມນ',
'KZ' => 'ຄາຊັກສະຖານ',
'LA' => 'ລາວ',
'LB' => 'ເລບານອນ',
@@ -1118,14 +1134,14 @@ $countryNames = array(
'MD' => 'ໂມນໂດວາ',
'ME' => 'ມອນເຕເນໂກຣ',
'MF' => 'ເຊນ ມາທິນ',
- 'MG' => 'ມາດາກາສກາ',
+ 'MG' => 'ມາດາກາສະກາ',
'MH' => 'ຫມູ່ເກາະມາແຊວ',
'MK' => 'ແມຊິໂດເນຍ',
- 'ML' => 'ມາລິ',
+ 'ML' => 'ມາລີ',
'MM' => 'ມຽນມາ (ເບີມາ)',
'MN' => 'ມອງໂກເລຍ',
- 'MO' => 'ມາເກົ້າ',
- 'MP' => 'ຫມູ່ເກາະມາແຊວຕອນເຫນືອ',
+ 'MO' => 'ມາກາວ',
+ 'MP' => 'ໝູ່ເກາະມາເຣຍນາຕອນເໜືອ',
'MQ' => 'ມາຕິນີກ',
'MR' => 'ມົວຣິເທເນຍ',
'MS' => 'ມອນເຊີຣາດ',
@@ -1151,17 +1167,17 @@ $countryNames = array(
'OM' => 'ໂອມານ',
'PA' => 'ພານາມາ',
'PE' => 'ເປຣູ',
- 'PF' => 'ເຟຣນຊ໌ ໂພລີນີເຊຍ',
+ 'PF' => 'ເຟຣນຊ໌ ໂພລິນີເຊຍ',
'PG' => 'ປາປົວນິວກີນີ',
'PH' => 'ຟິລິບປິນ',
- 'PK' => 'ປາກິສຖານ',
+ 'PK' => 'ປາກິດສະຖານ',
'PL' => 'ໂປແລນ',
'PM' => 'ເຊນ ປີແອ ມິເກວລອນ',
'PN' => 'ໝູ່ເກາະພິດແຄນ',
'PR' => 'ເພືອໂຕ ຣິໂກ',
- 'PS' => 'ປາເລສຕິນ',
+ 'PS' => 'ປາເລສຕາຍ',
'PT' => 'ພອລທູໂກ',
- 'PW' => 'ປາເລົາ',
+ 'PW' => 'ປາລາວ',
'PY' => 'ພາຣາກວຍ',
'QA' => 'ກາຕາ',
'QO' => 'ເຂດຫ່າງໄກໂອຊີເນຍ',
@@ -1197,10 +1213,10 @@ $countryNames = array(
'TF' => 'ເຂດແດນທາງໃຕ້ຂອຝຮັ່ງ',
'TG' => 'ໂຕໂກ',
'TH' => 'ໄທ',
- 'TJ' => 'ທາຈິກິສຖານ',
+ 'TJ' => 'ທາຈິກິດສະຖານ',
'TK' => 'ໂຕເກເລົາ',
'TL' => 'ທິມໍ-ເລສເຕ',
- 'TM' => 'ເທີກເມນິສຖານ',
+ 'TM' => 'ເທີກເມນິສະຖານ',
'TN' => 'ຕູນິເຊຍ',
'TO' => 'ທອງກາ',
'TR' => 'ເທີຄີ',
@@ -1211,27 +1227,29 @@ $countryNames = array(
'UA' => 'ຢູເຄຣນ',
'UG' => 'ອູການດາ',
'UM' => 'ໝູ່ເກາະຮອບນອກຂອງສະຫະລັດຯ',
+ 'UN' => 'ຢູເອັນ',
'US' => 'ສະຫະລັດຯ',
'UY' => 'ອູຣຸກວຍ',
- 'UZ' => 'ອຸສເບກິສຖານ',
+ 'UZ' => 'ອຸສເບກິສະຖານ',
'VA' => 'ນະຄອນ ວາຕິກັນ',
- 'VC' => 'ເຊນ ວິນເຊນ & ເກຣເນດິນ',
+ 'VC' => 'ເຊນ ວິນເຊນ ແລະ ເກຣເນດິນ',
'VE' => 'ເວເນຊູເອລາ',
- 'VG' => 'ໝູ່ເກາະ ບຣິທິຊ ເວີຈິນ',
- 'VI' => 'ໝູ່ເກາະ ຢູເອສ ເວີຈິນ',
+ 'VG' => 'ໝູ່ເກາະ ເວີຈິນຂອງອັງກິດ',
+ 'VI' => 'ໝູ່ເກາະ ເວີຈິນ ຂອງສະຫະລັດ',
'VN' => 'ຫວຽດນາມ',
'VU' => 'ວານົວຕູ',
- 'WF' => 'ວາລິສ ແລະ ຟຸຕູນາ',
+ 'WF' => 'ວາລລິສ ແລະ ຟູຕູນາ',
'WS' => 'ຊາມົວ',
'XK' => 'ໂຄໂຊໂວ',
'YE' => 'ເຢເມນ',
'YT' => 'ມາຢັອດ',
- 'ZA' => 'ອາຟະລິກາໃຕ້',
+ 'ZA' => 'ອາຟຣິກາໃຕ້',
'ZM' => 'ແຊມເບຍ',
'ZW' => 'ຊິມບັບເວ',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-other' => '{0} ສັດຕະວັດ',
'day-future-other' => 'ໃນອີກ {0} ມື້',
'day-narrow-future-other' => 'ໃນອີກ {0} ມື້',
'day-narrow-past-other' => '{0} ມື້ກ່ອນ',
@@ -1239,51 +1257,97 @@ $timeUnits = array(
'day-past-other' => '{0} ມື້ກ່ອນ',
'day-short-future-other' => 'ໃນອີກ {0} ມື້',
'day-short-past-other' => '{0} ມື້ກ່ອນ',
+ 'fri-future-other' => 'ໃນອີກ {0} ວັນສຸກ',
+ 'fri-narrow-future-other' => 'ໃນອີກ {0} ວັນສຸກ',
+ 'fri-narrow-past-other' => '{0} ວັນສຸກກ່ອນ',
+ 'fri-past-other' => '{0} ວັນສຸກກ່ອນ',
+ 'fri-short-future-other' => 'ໃນອີກ {0} ວັນສຸກ',
+ 'fri-short-past-other' => '{0} ວັນສຸກກ່ອນ',
'hour-future-other' => 'ໃນອີກ {0} ຊົ່ວໂມງ',
- 'hour-narrow-future-other' => 'ໃນອີກ {0} ຊົ່ວໂມງ',
- 'hour-narrow-past-other' => '{0} ຊົ່ວໂມງກ່ອນ',
+ 'hour-narrow-future-other' => 'ໃນອີກ {0} ຊມ.',
+ 'hour-narrow-past-other' => '{0} ຊມ. ກ່ອນ',
'hour-other' => '{0} ຊົ່ວໂມງ',
'hour-past-other' => '{0} ຊົ່ວໂມງກ່ອນ',
- 'hour-short-future-other' => 'ໃນອີກ {0} ຊົ່ວໂມງ',
- 'hour-short-past-other' => '{0} ຊົ່ວໂມງກ່ອນ',
+ 'hour-short-future-other' => 'ໃນອີກ {0} ຊມ.',
+ 'hour-short-past-other' => '{0} ຊມ. ກ່ອນ',
'microsecond-other' => '{0} ໄມ​ໂຄຣ​ວິ​ນາ​ທີ',
'millisecond-other' => '{0} ມິນລີວິນາທີ',
'minute-future-other' => '{0} ໃນອີກ 0 ນາທີ',
- 'minute-narrow-future-other' => 'ໃນອີກ {0} ນາທີ',
- 'minute-narrow-past-other' => '{0} ນາທີກ່ອນ',
+ 'minute-narrow-future-other' => 'ໃນ {0} ນທ.',
+ 'minute-narrow-past-other' => '{0} ນທ. ກ່ອນ',
'minute-other' => '{0} ນາທີ',
'minute-past-other' => '{0} ນາທີກ່ອນ',
- 'minute-short-future-other' => 'ໃນອີກ {0} ນາທີ',
- 'minute-short-past-other' => '{0} ນາທີກ່ອນ',
+ 'minute-short-future-other' => 'ໃນ {0} ນທ.',
+ 'minute-short-past-other' => '{0} ນທ. ກ່ອນ',
+ 'mon-future-other' => 'ໃນ {0} ວັນຈັນ',
+ 'mon-narrow-future-other' => 'ໃນ {0} ວັນຈັນ',
+ 'mon-narrow-past-other' => '{0} ວັນຈັນກ່ອນ',
+ 'mon-past-other' => '{0} ວັນຈັນກ່ອນ',
+ 'mon-short-future-other' => 'ໃນ {0} ວັນຈັນ',
+ 'mon-short-past-other' => '{0} ວັນຈັນກ່ອນ',
'month-future-other' => 'ໃນອີກ {0} ເດືອນ',
- 'month-narrow-future-other' => '+{0} ດ.',
- 'month-narrow-past-other' => '-{0} ດ.',
+ 'month-narrow-future-other' => 'ໃນອີກ {0} ດ.',
+ 'month-narrow-past-other' => '{0} ດ. ກ່ອນ',
'month-other' => '{0} ເດືອນ',
'month-past-other' => '{0} ເດືອນກ່ອນ',
'month-short-future-other' => 'ໃນອີກ {0} ດ.',
'month-short-past-other' => '{0} ດ. ກ່ອນ',
'nanosecond-other' => '{0} ນາ​ໂນ​ວິ​ນາ​ທີ',
- 'quarter-future-other' => 'ໃນອີກ {0} ຄວດເຕີ',
- 'quarter-narrow-future-other' => '+{0} ຄຕ.',
- 'quarter-narrow-past-other' => '-{0} ຄຕ.',
- 'quarter-past-other' => '{0} ຄວດເຕີກ່ອນ',
- 'quarter-short-future-other' => 'ໃນອີກ {0} ຄຕ.',
- 'quarter-short-past-other' => '{0} ຄຕ. ກ່ອນ',
+ 'quarter-future-other' => 'ໃນອີກ {0} ໄຕຣມາດ',
+ 'quarter-narrow-future-other' => 'ໃນ {0} ຕມ.',
+ 'quarter-narrow-past-other' => '{0} ຕມ. ກ່ອນ',
+ 'quarter-past-other' => '{0} ໄຕຣມາດກ່ອນ',
+ 'quarter-short-future-other' => 'ໃນ {0} ຕມ.',
+ 'quarter-short-past-other' => '{0} ຕມ. ກ່ອນ',
+ 'sat-future-other' => 'ໃນ {0} ວັນເສົາ',
+ 'sat-narrow-future-other' => 'ໃນ {0} ວັນເສົາ',
+ 'sat-narrow-past-other' => '{0} ວັນເສົາກ່ອນ',
+ 'sat-past-other' => '{0} ວັນເສົາກ່ອນ',
+ 'sat-short-future-other' => 'ໃນ {0} ວັນເສົາ',
+ 'sat-short-past-other' => '{0} ວັນເສົາກ່ອນ',
'second-future-other' => 'ໃນອີກ {0} ວິນາທີ',
- 'second-narrow-future-other' => 'ໃນອີກ {0} ວິນາທີ',
- 'second-narrow-past-other' => '{0} ວິນາທີກ່ອນ',
+ 'second-narrow-future-other' => 'ໃນ {0} ວິ.',
+ 'second-narrow-past-other' => '{0} ວິ. ກ່ອນ',
'second-other' => '{0} ວິນາທີ',
'second-past-other' => '{0} ວິນາທີກ່ອນ',
- 'second-short-future-other' => 'ໃນອີກ {0} ວິນາທີ',
- 'second-short-past-other' => '{0} ວິນາທີກ່ອນ',
+ 'second-short-future-other' => 'ໃນ {0} ວິ.',
+ 'second-short-past-other' => '{0} ວິ. ກ່ອນ',
+ 'sun-future-other' => 'ໃນ {0} ວັນອາທິດ',
+ 'sun-narrow-future-other' => 'ໃນ {0} ວັນອາທິດ',
+ 'sun-narrow-past-other' => '{0} ວັນອາທິດກ່ອນ',
+ 'sun-past-other' => '{0} ວັນອາທິດກ່ອນ',
+ 'sun-short-future-other' => 'ໃນ {0} ວັນອາທິດ',
+ 'sun-short-past-other' => '{0} ວັນອາທິດກ່ອນ',
+ 'thu-future-other' => 'ໃນ {0} ວັນພະຫັດ',
+ 'thu-narrow-future-other' => 'ໃນ {0} ວັນພະຫັດ',
+ 'thu-narrow-past-other' => '{0} ວັນພະຫັດກ່ອນ',
+ 'thu-past-other' => '{0} ວັນພະຫັດກ່ອນ',
+ 'thu-short-future-other' => 'ໃນ {0} ວັນພະຫັດ',
+ 'thu-short-past-other' => '{0} ວັນພະຫັດກ່ອນ',
+ 'tue-future-other' => 'ໃນ {0} ວັນອັງຄານ',
+ 'tue-narrow-future-other' => 'ໃນ {0} ວັນອັງຄານ',
+ 'tue-narrow-past-other' => '{0} ວັນອັງຄານກ່ອນ',
+ 'tue-past-other' => '{0} ວັນອັງຄານກ່ອນ',
+ 'tue-short-future-other' => 'ໃນ {0} ວັນອັງຄານ',
+ 'tue-short-past-other' => '{0} ວັນອັງຄານກ່ອນ',
+ 'wed-future-other' => 'ໃນ {0} ວັນພຸດ',
+ 'wed-narrow-future-other' => 'ໃນ {0} ວັນພຸດ',
+ 'wed-narrow-past-other' => '{0} ວັນພຸດກ່ອນ',
+ 'wed-past-other' => '{0} ວັນພຸດກ່ອນ',
+ 'wed-short-future-other' => 'ໃນ {0} ວັນພຸດ',
+ 'wed-short-past-other' => '{0} ວັນພຸດກ່ອນ',
'week-future-other' => 'ໃນອີກ {0} ອາທິດ',
- 'week-narrow-future-other' => '+{0} ອທ.',
- 'week-narrow-past-other' => '-{0} ອທ.',
+ 'week-narrow-future-other' => 'ໃນອີກ {0} ອທ.',
+ 'week-narrow-past-other' => '{0} ອທ. ກ່ອນ',
'week-other' => '{0} ອາທິດ',
'week-past-other' => '{0} ອາທິດກ່ອນ',
'week-short-future-other' => 'ໃນອີກ {0} ອທ.',
'week-short-past-other' => '{0} ອທ. ກ່ອນ',
'year-future-other' => 'ໃນອີກ {0} ປີ',
+ 'year-narrow-future-other' => 'ໃນອີກ {0} ປີ',
+ 'year-narrow-past-other' => '{0} ປີກ່ອນ',
'year-other' => '{0} ປີ',
'year-past-other' => '{0} ປີກ່ອນ',
-);
+ 'year-short-future-other' => 'ໃນອີກ {0} ປີ',
+ 'year-short-past-other' => '{0} ປີກ່ອນ',
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesLt.php b/MLEB/cldr/CldrNames/CldrNamesLt.php
index 7f75f0ff..2cc073f9 100644
--- a/MLEB/cldr/CldrNames/CldrNamesLt.php
+++ b/MLEB/cldr/CldrNames/CldrNamesLt.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'afarų',
'ab' => 'abchazų',
'ace' => 'ačinezų',
@@ -42,10 +42,9 @@ $languageNames = array(
'awa' => 'avadhi',
'ay' => 'aimarų',
'az' => 'azerbaidžaniečių',
- 'azb' => 'pietų Azerbaidžano',
'ba' => 'baškirų',
'bal' => 'baluči',
- 'ban' => 'balinezų',
+ 'ban' => 'baliečių',
'bar' => 'bavarų',
'bas' => 'basų',
'bax' => 'bamunų',
@@ -59,17 +58,18 @@ $languageNames = array(
'bfd' => 'bafutų',
'bfq' => 'badaga',
'bg' => 'bulgarų',
+ 'bgn' => 'vakarų beludžių',
'bho' => 'baučpuri',
'bi' => 'bislama',
'bik' => 'bikolų',
'bin' => 'bini',
'bjn' => 'bandžarų',
'bkm' => 'komų',
- 'bla' => 'siksika',
+ 'bla' => 'siksikų',
'bm' => 'bambarų',
'bn' => 'bengalų',
'bo' => 'tibetiečių',
- 'bpy' => 'Bišnuprijos',
+ 'bpy' => 'bišnuprijos',
'bqi' => 'bakhtiari',
'br' => 'bretonų',
'bra' => 'brajų',
@@ -88,13 +88,13 @@ $languageNames = array(
'cay' => 'kaijūgų',
'cch' => 'atsamų',
'ce' => 'čečėnų',
- 'ceb' => 'cebuanų',
+ 'ceb' => 'sebuanų',
'cgg' => 'čigų',
'ch' => 'čamorų',
- 'chb' => 'čibča',
+ 'chb' => 'čibčų',
'chg' => 'čagatų',
'chk' => 'čukesų',
- 'chm' => 'mari',
+ 'chm' => 'marių',
'chn' => 'činuk žargonas',
'cho' => 'čoktau',
'chp' => 'čipvėjų',
@@ -106,6 +106,7 @@ $languageNames = array(
'cps' => 'capiznon',
'cr' => 'kry',
'crh' => 'Krymo turkų',
+ 'crs' => 'Seišelių kreolų ir prancūzų',
'cs' => 'čekų',
'csb' => 'kašubų',
'cu' => 'bažnytinė slavų',
@@ -128,7 +129,7 @@ $languageNames = array(
'dtp' => 'centrinio Dusuno',
'dua' => 'dualų',
'dum' => 'Vidurio Vokietijos',
- 'dv' => 'divehi',
+ 'dv' => 'divehų',
'dyo' => 'džiola-foni',
'dyu' => 'dyulų',
'dz' => 'botijų',
@@ -158,7 +159,7 @@ $languageNames = array(
'ewo' => 'evondo',
'ext' => 'ispanų kalbos Ekstremadūros tarmė',
'fa' => 'persų',
- 'fan' => 'fang',
+ 'fan' => 'fangų',
'fat' => 'fanti',
'ff' => 'fulahų',
'fi' => 'suomių',
@@ -173,10 +174,10 @@ $languageNames = array(
'frc' => 'kadžunų prancūzų',
'frm' => 'Vidurio Prancūzijos',
'fro' => 'senoji prancūzų',
- 'frp' => 'Arpitano',
+ 'frp' => 'arpitano',
'frr' => 'šiaurinių fryzų',
'frs' => 'rytų fryzų',
- 'fur' => 'frulan',
+ 'fur' => 'friulių',
'fy' => 'vakarų fryzų',
'ga' => 'airių',
'gaa' => 'ga',
@@ -192,7 +193,7 @@ $languageNames = array(
'glk' => 'gilaki',
'gmh' => 'Vidurio Aukštosios Vokietijos',
'gn' => 'gvaranių',
- 'goh' => 'Senoji Aukštosios Vokietijos',
+ 'goh' => 'senoji Aukštosios Vokietijos',
'gom' => 'Goa konkanių',
'gon' => 'gondi',
'gor' => 'gorontalo',
@@ -213,7 +214,7 @@ $languageNames = array(
'he' => 'hebrajų',
'hi' => 'hindi',
'hif' => 'Fidžio hindi',
- 'hil' => 'hiligainon',
+ 'hil' => 'hiligainonų',
'hit' => 'hititų',
'hmn' => 'hmong',
'ho' => 'hiri motu',
@@ -224,16 +225,16 @@ $languageNames = array(
'hu' => 'vengrų',
'hup' => 'hupa',
'hy' => 'armėnų',
- 'hz' => 'herero',
- 'ia' => 'interlingva',
+ 'hz' => 'hererų',
+ 'ia' => 'tarpinė',
'iba' => 'iban',
- 'ibb' => 'ibibio',
+ 'ibb' => 'ibibijų',
'id' => 'indoneziečių',
'ie' => 'interkalba',
'ig' => 'igbų',
'ii' => 'sičuan ji',
- 'ik' => 'inupiak',
- 'ilo' => 'iloko',
+ 'ik' => 'inupiakų',
+ 'ilo' => 'ilokų',
'inh' => 'ingušų',
'io' => 'ido',
'is' => 'islandų',
@@ -252,10 +253,10 @@ $languageNames = array(
'ka' => 'gruzinų',
'kaa' => 'karakalpakų',
'kab' => 'kebailų',
- 'kac' => 'kačin',
+ 'kac' => 'kačinų',
'kaj' => 'ju',
'kam' => 'kembų',
- 'kaw' => 'kavi',
+ 'kaw' => 'kavių',
'kbd' => 'kabardinų',
'kbl' => 'kanembų',
'kcg' => 'tyap',
@@ -283,8 +284,8 @@ $languageNames = array(
'koi' => 'komių-permių',
'kok' => 'konkanių',
'kos' => 'kosreanų',
- 'kpe' => 'kpele',
- 'kr' => 'kanuri',
+ 'kpe' => 'kpelių',
+ 'kr' => 'kanurių',
'krc' => 'karačiajų balkarijos',
'kri' => 'krio',
'krj' => 'kinaray-a',
@@ -309,21 +310,23 @@ $languageNames = array(
'lez' => 'lezginų',
'lfn' => 'naujoji frankų kalba',
'lg' => 'ganda',
- 'li' => 'limburgiš',
+ 'li' => 'limburgiečių',
'lij' => 'ligūrų',
'liv' => 'lyvių',
'lkt' => 'lakotų',
'lmo' => 'lombardų',
'ln' => 'ngalų',
'lo' => 'laosiečių',
- 'lol' => 'mongo',
- 'loz' => 'lozi',
+ 'lol' => 'mongų',
+ 'lou' => 'Luizianos kreolų',
+ 'loz' => 'lozių',
+ 'lrc' => 'šiaurės luri',
'lt' => 'lietuvių',
'ltg' => 'latgalių',
'lu' => 'luba katanga',
'lua' => 'luba lulua',
'lui' => 'luiseno',
- 'lun' => 'lunda',
+ 'lun' => 'Lundos',
'luo' => 'luo',
'lus' => 'mizo',
'luy' => 'luja',
@@ -334,12 +337,12 @@ $languageNames = array(
'maf' => 'mafų',
'mag' => 'magahi',
'mai' => 'maithili',
- 'mak' => 'makasaro',
- 'man' => 'mandingo',
+ 'mak' => 'Makasaro',
+ 'man' => 'mandingų',
'mas' => 'masajų',
'mde' => 'mabų',
'mdf' => 'mokša',
- 'mdr' => 'mandar',
+ 'mdr' => 'mandarų',
'men' => 'mende',
'mer' => 'merų',
'mfe' => 'morisijų',
@@ -349,13 +352,13 @@ $languageNames = array(
'mgo' => 'meta',
'mh' => 'Maršalo Salų',
'mi' => 'maorių',
- 'mic' => 'mikmak',
- 'min' => 'minankabu',
+ 'mic' => 'mikmakų',
+ 'min' => 'minangkabau',
'mk' => 'makedonų',
'ml' => 'malajalių',
'mn' => 'mongolų',
'mnc' => 'manču',
- 'mni' => 'manipuri',
+ 'mni' => 'manipurių',
'moh' => 'mohok',
'mos' => 'mosi',
'mr' => 'maratų',
@@ -376,14 +379,15 @@ $languageNames = array(
'nan' => 'kinų kalbos pietų minų tarmė',
'nap' => 'neapoliečių',
'naq' => 'nama',
- 'nb' => 'Norvegijos rašytinė – būkmolų',
+ 'nb' => 'norvegų bukmolas',
'nd' => 'šiaurės ndebelų',
'nds' => 'Žemutinės Vokietijos',
+ 'nds-nl' => 'Žemutinės Saksonijos (Nyderlandai)',
'ne' => 'nepaliečių',
'new' => 'nevari',
'ng' => 'ndongų',
'nia' => 'nias',
- 'niu' => 'niuenų',
+ 'niu' => 'niujiečių',
'njo' => 'ao naga',
'nl' => 'olandų',
'nl-be' => 'flamandų',
@@ -392,33 +396,34 @@ $languageNames = array(
'nnh' => 'ngiembūnų',
'no' => 'norvegų',
'nog' => 'nogų',
- 'non' => 'norsu',
+ 'non' => 'senoji norsų',
'nov' => 'novial',
'nqo' => 'enko',
'nr' => 'pietų ndebele',
- 'nso' => 'šiaurės sothų',
+ 'nso' => 'šiaurės Soto',
'nus' => 'nuerų',
'nv' => 'navajų',
'nwc' => 'klasikinė nevari',
- 'ny' => 'nianja',
+ 'ny' => 'nianjų',
'nym' => 'niamvezi',
'nyn' => 'niankolų',
- 'nyo' => 'nioro',
+ 'nyo' => 'niorų',
'nzi' => 'nzima',
'oc' => 'očitarų',
'oj' => 'ojibva',
'om' => 'oromų',
- 'or' => 'orijų',
+ 'or' => 'odijų',
'os' => 'osetinų',
'osa' => 'osage',
'ota' => 'osmanų turkų',
'pa' => 'pendžabų',
- 'pag' => 'pangasinan',
- 'pal' => 'pahlavi',
- 'pam' => 'pampanga',
- 'pap' => 'papiemento',
- 'pau' => 'palau',
+ 'pag' => 'pangasinanų',
+ 'pal' => 'vidurinė persų kalba',
+ 'pam' => 'pampangų',
+ 'pap' => 'papiamento',
+ 'pau' => 'palauliečių',
'pcd' => 'pikardų',
+ 'pcm' => 'Nigerijos pidžinų',
'pdc' => 'Pensilvanijos vokiečių',
'pdt' => 'vokiečių kalbos žemaičių tarmė',
'peo' => 'senoji persų',
@@ -438,9 +443,9 @@ $languageNames = array(
'qu' => 'kečujų',
'quc' => 'kičių',
'qug' => 'Čimboraso aukštumų kečujų',
- 'raj' => 'radžastano',
+ 'raj' => 'Radžastano',
'rap' => 'rapanui',
- 'rar' => 'rarotongan',
+ 'rar' => 'rarotonganų',
'rgn' => 'italų kalbos Romanijos tarmė',
'rif' => 'rifų',
'rm' => 'retoromanų',
@@ -457,12 +462,12 @@ $languageNames = array(
'rw' => 'kinjaruandų',
'rwk' => 'rua',
'sa' => 'sanskritas',
- 'sad' => 'sandavi',
+ 'sad' => 'sandavių',
'sah' => 'jakutų',
'sam' => 'samarėjų aramių',
'saq' => 'sambūrų',
'sas' => 'sasak',
- 'sat' => 'santali',
+ 'sat' => 'santalių',
'saz' => 'sauraštrų',
'sba' => 'ngambajų',
'sbp' => 'sangų',
@@ -471,6 +476,7 @@ $languageNames = array(
'sco' => 'škotų',
'sd' => 'sindų',
'sdc' => 'sasaresų sardinų',
+ 'sdh' => 'pietų kurdų',
'se' => 'šiaurės samių',
'see' => 'senecų',
'seh' => 'senų',
@@ -485,14 +491,14 @@ $languageNames = array(
'shn' => 'šan',
'shu' => 'chadian arabų',
'si' => 'sinhalų',
- 'sid' => 'sidamo',
+ 'sid' => 'sidamų',
'sk' => 'slovakų',
'sl' => 'slovėnų',
'sli' => 'sileziečių žemaičių',
'sly' => 'selajarų',
- 'sm' => 'samoa',
+ 'sm' => 'Samoa',
'sma' => 'pietų samių',
- 'smj' => 'Lulėjo samių',
+ 'smj' => 'Liuleo samių',
'smn' => 'Inario samių',
'sms' => 'Skolto samių',
'sn' => 'šonų',
@@ -503,9 +509,9 @@ $languageNames = array(
'sr' => 'serbų',
'srn' => 'sranan tongo',
'srr' => 'sererų',
- 'ss' => 'svati',
+ 'ss' => 'svatų',
'ssy' => 'saho',
- 'st' => 'pietų sesuto',
+ 'st' => 'pietų Soto',
'stq' => 'Saterlendo fryzų',
'su' => 'sundų',
'suk' => 'sukuma',
@@ -513,9 +519,9 @@ $languageNames = array(
'sux' => 'šumerų',
'sv' => 'švedų',
'sw' => 'suahilių',
+ 'sw-cd' => 'Kongo suahilių',
'swb' => 'Komorų',
- 'swc' => 'Kongo suahilių',
- 'syc' => 'klasikinė siriečių',
+ 'syc' => 'klasikinė sirų',
'syr' => 'sirų',
'szl' => 'sileziečių',
'ta' => 'tamilų',
@@ -523,7 +529,7 @@ $languageNames = array(
'te' => 'telugų',
'tem' => 'timne',
'teo' => 'teso',
- 'ter' => 'tereno',
+ 'ter' => 'Tereno',
'tet' => 'tetum',
'tg' => 'tadžikų',
'th' => 'tajų',
@@ -531,27 +537,27 @@ $languageNames = array(
'tig' => 'tigre',
'tiv' => 'tiv',
'tk' => 'turkmėnų',
- 'tkl' => 'tokelau',
+ 'tkl' => 'Tokelau',
'tkr' => 'tsakurų',
'tl' => 'tagalogų',
'tlh' => 'klingonų',
- 'tli' => 'tlingit',
+ 'tli' => 'tlingitų',
'tly' => 'talyšų',
'tmh' => 'tamašek',
- 'tn' => 'tsvana',
+ 'tn' => 'tsvanų',
'to' => 'tonganų',
- 'tog' => 'niasa tongos',
- 'tpi' => 'tok pisin',
+ 'tog' => 'niasa tongų',
+ 'tpi' => 'Papua pidžinų',
'tr' => 'turkų',
'tru' => 'turoyo',
- 'trv' => 'taroko',
- 'ts' => 'tsonga',
+ 'trv' => 'Taroko',
+ 'ts' => 'tsongų',
'tsd' => 'tsakonų',
'tsi' => 'tsimšian',
'tt' => 'totorių',
'ttt' => 'musulmonų tatų',
'tum' => 'tumbukų',
- 'tvl' => 'tuvalu',
+ 'tvl' => 'Tuvalu',
'tw' => 'tvi',
'twq' => 'tasavakų',
'ty' => 'taitiečių',
@@ -559,28 +565,29 @@ $languageNames = array(
'tzm' => 'Centrinio Maroko tamazitų',
'udm' => 'udmurtų',
'ug' => 'uigūrų',
- 'uga' => 'ugaritic',
+ 'uga' => 'ugaritų',
'uk' => 'ukrainiečių',
'umb' => 'umbundu',
'und' => 'nežinoma kalba',
'ur' => 'urdų',
'uz' => 'uzbekų',
'vai' => 'vai',
- 've' => 'venda',
+ 've' => 'vendų',
'vec' => 'venetų',
'vep' => 'vepsų',
'vi' => 'vietnamiečių',
'vls' => 'vakarų flamandų',
'vmf' => 'pagrindinė frankonų',
- 'vo' => 'volapiuk',
- 'vot' => 'votik',
- 'vro' => 'võro',
+ 'vo' => 'volapiuko',
+ 'vot' => 'Votik',
+ 'vro' => 'veru',
'vun' => 'vunjo',
'wa' => 'valonų',
'wae' => 'valserų',
'wal' => 'valamo',
'war' => 'varai',
- 'was' => 'vašo',
+ 'was' => 'Vašo',
+ 'wbp' => 'valrpiri',
'wo' => 'volofų',
'wuu' => 'kinų kalbos vu tarmė',
'xal' => 'kalmukų',
@@ -597,7 +604,7 @@ $languageNames = array(
'yue' => 'kinų kalbos Kantono tarmė',
'za' => 'chuang',
'zap' => 'zapotekų',
- 'zbl' => '„Bliss“ simbolių',
+ 'zbl' => 'BLISS simbolių',
'zea' => 'zelandų',
'zen' => 'zenaga',
'zgh' => 'standartinė Maroko tamazigtų',
@@ -605,12 +612,12 @@ $languageNames = array(
'zh-hans' => 'supaprastintoji kinų',
'zh-hant' => 'tradicinė kinų',
'zu' => 'zulų',
- 'zun' => 'zuni',
+ 'zun' => 'Zuni',
'zxx' => 'nėra kalbinio turinio',
'zza' => 'zaza',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'ADP' => 'Andoros peseta',
'AED' => 'Jungtinių Arabų Emyratų dirhamas',
'AFA' => 'Afganistano afganis (1927–2002)',
@@ -665,7 +672,8 @@ $currencyNames = array(
'BUK' => 'Birmos kijatas',
'BWP' => 'Botsvanos pula',
'BYB' => 'Baltarusijos naujasis rublis (1994–1999)',
- 'BYR' => 'Baltarusijos rublis',
+ 'BYN' => 'Baltarusijos rublis',
+ 'BYR' => 'Baltarusijos rublis (2000–2016)',
'BZD' => 'Belizo doleris',
'CAD' => 'Kanados doleris',
'CDF' => 'Kongo frankas',
@@ -675,6 +683,7 @@ $currencyNames = array(
'CLE' => 'Čilės eskudai',
'CLF' => 'Čiliečių unidades de fomentos',
'CLP' => 'Čilės pesas',
+ 'CNH' => 'Kinijos Užsienio juanis',
'CNX' => 'Kinijos "People" banko doleris',
'CNY' => 'Kinijos ženminbi juanis',
'COP' => 'Kolumbijos pesas',
@@ -779,7 +788,8 @@ $currencyNames = array(
'MMK' => 'Mianmaro kijatas',
'MNT' => 'Mongolijos tugrikas',
'MOP' => 'Makao pataka',
- 'MRO' => 'Mauritanijos ugija',
+ 'MRO' => 'Mauritanijos ugija (1973–2017)',
+ 'MRU' => 'Mauritanijos ugija',
'MTL' => 'Maltos lira',
'MTP' => 'Maltos svaras',
'MUR' => 'Mauricijaus rupija',
@@ -804,7 +814,7 @@ $currencyNames = array(
'OMR' => 'Omano rialas',
'PAB' => 'Panamos balboja',
'PEI' => 'Peru intis',
- 'PEN' => 'Peru naujasis solis',
+ 'PEN' => 'Peru solis',
'PES' => 'Peru solis (1863–1965)',
'PGK' => 'Papua Naujosios Gvinėjos kina',
'PHP' => 'Filipinų pesas',
@@ -837,7 +847,8 @@ $currencyNames = array(
'SRD' => 'Surimano doleris',
'SRG' => 'Surimano guldenas',
'SSP' => 'Pietų Sudano svaras',
- 'STD' => 'San Tomės ir Principės dobra',
+ 'STD' => 'San Tomės ir Principės dobra (1977–2017)',
+ 'STN' => 'San Tomės ir Principės dobra',
'SUR' => 'Sovietų rublis',
'SVC' => 'Salvadoro kolonas',
'SYP' => 'Sirijos svaras',
@@ -867,7 +878,8 @@ $currencyNames = array(
'UYU' => 'Urugvajaus pesas',
'UZS' => 'Uzbekistano sumas',
'VEB' => 'Venesuelos bolivaras (1871–2008)',
- 'VEF' => 'Venesuelos bolivaras',
+ 'VEF' => 'Venesuelos bolivaras (2008–2018)',
+ 'VES' => 'Venesuelos bolivaras',
'VND' => 'Vietnamo dongas',
'VNN' => 'Vietnamo dongas (1978–1985)',
'VUV' => 'Vanuatu vatas',
@@ -908,9 +920,9 @@ $currencyNames = array(
'ZWD' => 'Zimbabvės doleris (1980–2008)',
'ZWL' => 'Zimbabvės doleris (2009)',
'ZWR' => 'Zimbabvės doleris (2008)',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'AED' => 'AED',
'AFN' => 'AFN',
'ALL' => 'ALL',
@@ -934,12 +946,14 @@ $currencySymbols = array(
'BSD' => 'BSD',
'BTN' => 'BTN',
'BWP' => 'BWP',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CAD',
'CDF' => 'CDF',
'CHF' => 'CHF',
'CLP' => 'CLP',
+ 'CNH' => 'CNH',
'CNY' => 'CNY',
'COP' => 'COP',
'CRC' => 'CRC',
@@ -954,6 +968,7 @@ $currencySymbols = array(
'EGP' => 'EGP',
'ERN' => 'ERN',
'ETB' => 'ETB',
+ 'EUR' => '€',
'FJD' => 'FJD',
'FKP' => 'FKP',
'GBP' => 'GBP',
@@ -1002,6 +1017,7 @@ $currencySymbols = array(
'MNT' => 'MNT',
'MOP' => 'MOP',
'MRO' => 'MRO',
+ 'MRU' => 'MRU',
'MUR' => 'MUR',
'MVR' => 'MVR',
'MWK' => 'MWK',
@@ -1039,6 +1055,7 @@ $currencySymbols = array(
'SRD' => 'SRD',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'STN',
'SYP' => 'SYP',
'SZL' => 'SZL',
'THB' => 'THB',
@@ -1052,10 +1069,11 @@ $currencySymbols = array(
'TZS' => 'TZS',
'UAH' => 'UAH',
'UGX' => 'UGX',
- 'USD' => 'dol.',
+ 'USD' => 'USD',
'UYU' => 'UYU',
'UZS' => 'UZS',
'VEF' => 'VEF',
+ 'VES' => 'VES',
'VND' => 'VND',
'VUV' => 'VUV',
'WST' => 'WST',
@@ -1066,9 +1084,9 @@ $currencySymbols = array(
'YER' => 'YER',
'ZAR' => 'ZAR',
'ZMW' => 'ZMW',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'Dangun Žengimo sala',
'AD' => 'Andora',
'AE' => 'Jungtiniai Arabų Emyratai',
@@ -1077,7 +1095,6 @@ $countryNames = array(
'AI' => 'Angilija',
'AL' => 'Albanija',
'AM' => 'Armėnija',
- 'AN' => 'Olandijos Antilai',
'AO' => 'Angola',
'AQ' => 'Antarktida',
'AR' => 'Argentina',
@@ -1144,6 +1161,7 @@ $countryNames = array(
'ES' => 'Ispanija',
'ET' => 'Etiopija',
'EU' => 'Europos Sąjunga',
+ 'EZ' => 'euro zona',
'FI' => 'Suomija',
'FJ' => 'Fidžis',
'FK' => 'Folklando Salos',
@@ -1151,7 +1169,7 @@ $countryNames = array(
'FO' => 'Farerų Salos',
'FR' => 'Prancūzija',
'GA' => 'Gabonas',
- 'GB' => 'Didžioji Britanija',
+ 'GB' => 'JK',
'GD' => 'Grenada',
'GE' => 'Gruzija',
'GF' => 'Prancūzijos Gviana',
@@ -1203,7 +1221,7 @@ $countryNames = array(
'KZ' => 'Kazachstanas',
'LA' => 'Laosas',
'LB' => 'Libanas',
- 'LC' => 'Šventoji Liucija',
+ 'LC' => 'Sent Lusija',
'LI' => 'Lichtenšteinas',
'LK' => 'Šri Lanka',
'LR' => 'Liberija',
@@ -1250,13 +1268,13 @@ $countryNames = array(
'OM' => 'Omanas',
'PA' => 'Panama',
'PE' => 'Peru',
- 'PF' => 'Prancūzų Polinezija',
+ 'PF' => 'Prancūzijos Polinezija',
'PG' => 'Papua Naujoji Gvinėja',
'PH' => 'Filipinai',
'PK' => 'Pakistanas',
'PL' => 'Lenkija',
'PM' => 'Sen Pjeras ir Mikelonas',
- 'PN' => 'Pitkernas',
+ 'PN' => 'Pitkerno salos',
'PR' => 'Puerto Rikas',
'PS' => 'Palestina',
'PT' => 'Portugalija',
@@ -1310,6 +1328,7 @@ $countryNames = array(
'UA' => 'Ukraina',
'UG' => 'Uganda',
'UM' => 'Jungtinių Valstijų Mažosios Tolimosios Salos',
+ 'UN' => 'JT',
'US' => 'JAV',
'UY' => 'Urugvajus',
'UZ' => 'Uzbekistanas',
@@ -1320,7 +1339,7 @@ $countryNames = array(
'VI' => 'Jungtinių Valstijų Mergelių Salos',
'VN' => 'Vietnamas',
'VU' => 'Vanuatu',
- 'WF' => 'Volisas ir Futuna',
+ 'WF' => 'Volisas ir Futūna',
'WS' => 'Samoa',
'XK' => 'Kosovas',
'YE' => 'Jemenas',
@@ -1328,9 +1347,13 @@ $countryNames = array(
'ZA' => 'Pietų Afrika',
'ZM' => 'Zambija',
'ZW' => 'Zimbabvė',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-few' => '{0} amžiai',
+ 'century-many' => '{0} amžiaus',
+ 'century-one' => '{0} amžius',
+ 'century-other' => '{0} amžių',
'day-few' => '{0} dienos',
'day-future-few' => 'po {0} dienų',
'day-future-many' => 'po {0} dienos',
@@ -1359,6 +1382,30 @@ $timeUnits = array(
'day-short-past-many' => 'prieš {0} d.',
'day-short-past-one' => 'prieš {0} d.',
'day-short-past-other' => 'prieš {0} d.',
+ 'fri-future-few' => 'po {0} penktadienių',
+ 'fri-future-many' => 'po {0} penktadienio',
+ 'fri-future-one' => 'po {0} penktadienio',
+ 'fri-future-other' => 'po {0} penktadienių',
+ 'fri-narrow-future-few' => 'po {0} penkt.',
+ 'fri-narrow-future-many' => 'po {0} penkt.',
+ 'fri-narrow-future-one' => 'po {0} penkt.',
+ 'fri-narrow-future-other' => 'po {0} penkt.',
+ 'fri-narrow-past-few' => 'prieš {0} penkt.',
+ 'fri-narrow-past-many' => 'prieš {0} penkt.',
+ 'fri-narrow-past-one' => 'prieš {0} penkt.',
+ 'fri-narrow-past-other' => 'prieš {0} penkt.',
+ 'fri-past-few' => 'prieš {0} penktadienius',
+ 'fri-past-many' => 'prieš {0} penktadienio',
+ 'fri-past-one' => 'prieš {0} penktadienį',
+ 'fri-past-other' => 'prieš {0} penktadienių',
+ 'fri-short-future-few' => 'po {0} penkt.',
+ 'fri-short-future-many' => 'po {0} penkt.',
+ 'fri-short-future-one' => 'po {0} penkt.',
+ 'fri-short-future-other' => 'po {0} penkt.',
+ 'fri-short-past-few' => 'prieš {0} penkt.',
+ 'fri-short-past-many' => 'prieš {0} penkt.',
+ 'fri-short-past-one' => 'prieš {0} penkt.',
+ 'fri-short-past-other' => 'prieš {0} penkt.',
'hour-few' => '{0} valandos',
'hour-future-few' => 'po {0} valandų',
'hour-future-many' => 'po {0} valandos',
@@ -1423,6 +1470,30 @@ $timeUnits = array(
'minute-short-past-many' => 'prieš {0} min.',
'minute-short-past-one' => 'prieš {0} min.',
'minute-short-past-other' => 'prieš {0} min.',
+ 'mon-future-few' => 'po {0} pirmadienių',
+ 'mon-future-many' => 'po {0} pirmadienio',
+ 'mon-future-one' => 'po {0} pirmadienio',
+ 'mon-future-other' => 'po {0} pirmadienių',
+ 'mon-narrow-future-few' => 'po {0} pirm.',
+ 'mon-narrow-future-many' => 'po {0} pirm.',
+ 'mon-narrow-future-one' => 'po {0} pirm.',
+ 'mon-narrow-future-other' => 'po {0} pirm.',
+ 'mon-narrow-past-few' => 'prieš {0} pirm.',
+ 'mon-narrow-past-many' => 'prieš {0} pirm.',
+ 'mon-narrow-past-one' => 'prieš {0} pirm.',
+ 'mon-narrow-past-other' => 'prieš {0} pirm.',
+ 'mon-past-few' => 'prieš {0} pirmadienius',
+ 'mon-past-many' => 'prieš {0} pirmadienio',
+ 'mon-past-one' => 'prieš {0} pirmadienį',
+ 'mon-past-other' => 'prieš {0} pirmadienių',
+ 'mon-short-future-few' => 'po {0} pirm.',
+ 'mon-short-future-many' => 'po {0} pirm.',
+ 'mon-short-future-one' => 'po {0} pirm.',
+ 'mon-short-future-other' => 'po {0} pirm.',
+ 'mon-short-past-few' => 'prieš {0} pirm.',
+ 'mon-short-past-many' => 'prieš {0} pirm.',
+ 'mon-short-past-one' => 'prieš {0} pirm.',
+ 'mon-short-past-other' => 'prieš {0} pirm.',
'month-few' => '{0} mėnesiai',
'month-future-few' => 'po {0} mėnesių',
'month-future-many' => 'po {0} mėnesio',
@@ -1479,6 +1550,30 @@ $timeUnits = array(
'quarter-short-past-many' => 'prieš {0} ketv.',
'quarter-short-past-one' => 'prieš {0} ketv.',
'quarter-short-past-other' => 'prieš {0} ketv.',
+ 'sat-future-few' => 'po {0} šeštadienių',
+ 'sat-future-many' => 'po {0} šeštadienio',
+ 'sat-future-one' => 'po {0} šeštadienio',
+ 'sat-future-other' => 'po {0} šeštadienių',
+ 'sat-narrow-future-few' => 'po {0} šešt.',
+ 'sat-narrow-future-many' => 'po {0} šešt.',
+ 'sat-narrow-future-one' => 'po {0} šeštadienio',
+ 'sat-narrow-future-other' => 'po {0} šešt.',
+ 'sat-narrow-past-few' => 'prieš {0} šešt.',
+ 'sat-narrow-past-many' => 'prieš {0} šešt.',
+ 'sat-narrow-past-one' => 'prieš {0} šešt.',
+ 'sat-narrow-past-other' => 'prieš {0} šešt.',
+ 'sat-past-few' => 'prieš {0} šeštadienius',
+ 'sat-past-many' => 'prieš {0} šeštadienio',
+ 'sat-past-one' => 'prieš {0} šeštadienį',
+ 'sat-past-other' => 'prieš {0} šeštadienių',
+ 'sat-short-future-few' => 'po {0} šešt.',
+ 'sat-short-future-many' => 'po {0} šešt.',
+ 'sat-short-future-one' => 'po {0} šešt.',
+ 'sat-short-future-other' => 'po {0} šešt.',
+ 'sat-short-past-few' => 'prieš {0} šešt.',
+ 'sat-short-past-many' => 'prieš {0} šešt.',
+ 'sat-short-past-one' => 'prieš {0} šešt.',
+ 'sat-short-past-other' => 'prieš {0} šešt.',
'second-few' => '{0} sekundės',
'second-future-few' => 'po {0} sekundžių',
'second-future-many' => 'po {0} sekundės',
@@ -1507,6 +1602,102 @@ $timeUnits = array(
'second-short-past-many' => 'prieš {0} sek.',
'second-short-past-one' => 'prieš {0} sek.',
'second-short-past-other' => 'prieš {0} sek.',
+ 'sun-future-few' => 'po {0} sekmadienių',
+ 'sun-future-many' => 'po {0} sekmadienio',
+ 'sun-future-one' => 'po {0} sekmadienio',
+ 'sun-future-other' => 'po {0} sekmadienių',
+ 'sun-narrow-future-few' => 'po {0} sekm.',
+ 'sun-narrow-future-many' => 'po {0} sekm.',
+ 'sun-narrow-future-one' => 'po {0} sekm.',
+ 'sun-narrow-future-other' => 'po {0} sekm.',
+ 'sun-narrow-past-few' => 'prieš {0} sekm.',
+ 'sun-narrow-past-many' => 'prieš {0} sekm.',
+ 'sun-narrow-past-one' => 'prieš {0} sekm.',
+ 'sun-narrow-past-other' => 'prieš {0} sekm.',
+ 'sun-past-few' => 'prieš {0} sekmadienius',
+ 'sun-past-many' => 'prieš {0} sekmadienio',
+ 'sun-past-one' => 'prieš {0} sekmadienį',
+ 'sun-past-other' => 'prieš {0} sekmadienių',
+ 'sun-short-future-few' => 'po {0} sekm.',
+ 'sun-short-future-many' => 'po {0} sekm.',
+ 'sun-short-future-one' => 'po {0} sekm.',
+ 'sun-short-future-other' => 'po {0} sekm.',
+ 'sun-short-past-few' => 'prieš {0} sekm.',
+ 'sun-short-past-many' => 'prieš {0} sekm.',
+ 'sun-short-past-one' => 'prieš {0} sekm.',
+ 'sun-short-past-other' => 'prieš {0} sekm.',
+ 'thu-future-few' => 'po {0} ketvirtadienių',
+ 'thu-future-many' => 'po {0} ketvirtadienio',
+ 'thu-future-one' => 'po {0} ketvirtadienio',
+ 'thu-future-other' => 'po {0} ketvirtadienių',
+ 'thu-narrow-future-few' => 'po {0} ketv.',
+ 'thu-narrow-future-many' => 'po {0} ketv.',
+ 'thu-narrow-future-one' => 'po {0} ketv.',
+ 'thu-narrow-future-other' => 'po {0} ketv.',
+ 'thu-narrow-past-few' => 'prieš {0} ketv.',
+ 'thu-narrow-past-many' => 'prieš {0} ketv.',
+ 'thu-narrow-past-one' => 'prieš {0} ketv.',
+ 'thu-narrow-past-other' => 'prieš {0} ketv.',
+ 'thu-past-few' => 'prieš {0} ketvirtadienius',
+ 'thu-past-many' => 'prieš {0} ketvirtadienio',
+ 'thu-past-one' => 'prieš {0} ketvirtadienį',
+ 'thu-past-other' => 'prieš {0} ketvirtadienių',
+ 'thu-short-future-few' => 'po {0} ketv.',
+ 'thu-short-future-many' => 'po {0} ketv.',
+ 'thu-short-future-one' => 'po {0} ketv.',
+ 'thu-short-future-other' => 'po {0} ketv.',
+ 'thu-short-past-few' => 'prieš {0} ketv.',
+ 'thu-short-past-many' => 'prieš {0} ketv.',
+ 'thu-short-past-one' => 'prieš {0} ketv.',
+ 'thu-short-past-other' => 'prieš {0} ketv.',
+ 'tue-future-few' => 'po {0} antradienių',
+ 'tue-future-many' => 'po {0} antradienio',
+ 'tue-future-one' => 'po {0} antradienio',
+ 'tue-future-other' => 'po {0} antradienių',
+ 'tue-narrow-future-few' => 'po {0} antr.',
+ 'tue-narrow-future-many' => 'po {0} antr.',
+ 'tue-narrow-future-one' => 'po {0} antr.',
+ 'tue-narrow-future-other' => 'po {0} antr.',
+ 'tue-narrow-past-few' => 'prieš {0} antr.',
+ 'tue-narrow-past-many' => 'prieš {0} antr.',
+ 'tue-narrow-past-one' => 'prieš {0} antr.',
+ 'tue-narrow-past-other' => 'prieš {0} antr.',
+ 'tue-past-few' => 'prieš {0} antradienius',
+ 'tue-past-many' => 'prieš {0} antradienio',
+ 'tue-past-one' => 'prieš {0} antradienį',
+ 'tue-past-other' => 'prieš {0} antradienių',
+ 'tue-short-future-few' => 'po {0} antr.',
+ 'tue-short-future-many' => 'po {0} antr.',
+ 'tue-short-future-one' => 'po {0} antr.',
+ 'tue-short-future-other' => 'po {0} antr.',
+ 'tue-short-past-few' => 'prieš {0} antr.',
+ 'tue-short-past-many' => 'prieš {0} antr.',
+ 'tue-short-past-one' => 'prieš {0} antr.',
+ 'tue-short-past-other' => 'prieš {0} antr.',
+ 'wed-future-few' => 'po {0} trečiadienių',
+ 'wed-future-many' => 'po {0} trečiadienio',
+ 'wed-future-one' => 'po {0} trečiadienio',
+ 'wed-future-other' => 'po {0} trečiadienių',
+ 'wed-narrow-future-few' => 'po {0} treč.',
+ 'wed-narrow-future-many' => 'po {0} treč.',
+ 'wed-narrow-future-one' => 'po {0} treč.',
+ 'wed-narrow-future-other' => 'po {0} treč.',
+ 'wed-narrow-past-few' => 'prieš {0} treč.',
+ 'wed-narrow-past-many' => 'prieš {0} treč.',
+ 'wed-narrow-past-one' => 'prieš {0} treč.',
+ 'wed-narrow-past-other' => 'prieš {0} treč.',
+ 'wed-past-few' => 'prieš {0} trečiadienius',
+ 'wed-past-many' => 'prieš {0} trečiadienio',
+ 'wed-past-one' => 'prieš {0} trečiadienį',
+ 'wed-past-other' => 'prieš {0} trečiadienių',
+ 'wed-short-future-few' => 'po {0} treč.',
+ 'wed-short-future-many' => 'po {0} treč.',
+ 'wed-short-future-one' => 'po {0} treč.',
+ 'wed-short-future-other' => 'po {0} treč.',
+ 'wed-short-past-few' => 'prieš {0} treč.',
+ 'wed-short-past-many' => 'prieš {0} treč.',
+ 'wed-short-past-one' => 'prieš {0} treč.',
+ 'wed-short-past-other' => 'prieš {0} treč.',
'week-few' => '{0} savaitės',
'week-future-few' => 'po {0} savaičių',
'week-future-many' => 'po {0} savaitės',
@@ -1562,5 +1753,5 @@ $timeUnits = array(
'year-short-past-few' => 'prieš {0} m.',
'year-short-past-many' => 'prieš {0} m.',
'year-short-past-one' => 'prieš {0} m.',
- 'year-short-past-other' => 'prieš {0} metų',
-);
+ 'year-short-past-other' => 'prieš {0} m.',
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesLv.php b/MLEB/cldr/CldrNames/CldrNamesLv.php
index a6849f1d..e1ed4768 100644
--- a/MLEB/cldr/CldrNames/CldrNamesLv.php
+++ b/MLEB/cldr/CldrNames/CldrNamesLv.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'afāru',
'ab' => 'abhāzu',
'ace' => 'ačinu',
@@ -33,6 +33,7 @@ $languageNames = array(
'awa' => 'avadhu',
'ay' => 'aimaru',
'az' => 'azerbaidžāņu',
+ 'az-arab' => 'dienvidazerbaidžāņu',
'ba' => 'baškīru',
'bal' => 'beludžu',
'ban' => 'baliešu',
@@ -45,6 +46,7 @@ $languageNames = array(
'bez' => 'bena',
'bfd' => 'bafutu',
'bg' => 'bulgāru',
+ 'bgn' => 'rietumbeludžu',
'bho' => 'bhodžpūru',
'bi' => 'bišlamā',
'bik' => 'bikolu',
@@ -82,11 +84,12 @@ $languageNames = array(
'chp' => 'čipevaianu',
'chr' => 'čiroku',
'chy' => 'šejenu',
- 'ckb' => 'kurdu (Sorani)',
+ 'ckb' => 'centrālkurdu',
'co' => 'korsikāņu',
'cop' => 'koptu',
'cr' => 'krī',
'crh' => 'Krimas tatāru',
+ 'crs' => 'franciskā kreoliskā valoda (Seišelu salas)',
'cs' => 'čehu',
'csb' => 'kašubu',
'cu' => 'baznīcslāvu',
@@ -97,8 +100,7 @@ $languageNames = array(
'dar' => 'dargu',
'dav' => 'taitu',
'de' => 'vācu',
- 'de-at' => 'Austrijas vācu',
- 'de-ch' => 'Šveices augšvācu',
+ 'de-ch' => 'augšvācu (Šveice)',
'del' => 'delavēru',
'den' => 'sleivu',
'dgr' => 'dogribu',
@@ -121,16 +123,10 @@ $languageNames = array(
'el' => 'grieķu',
'elx' => 'elamiešu',
'en' => 'angļu',
- 'en-au' => 'Austrālijas angļu',
- 'en-ca' => 'Kanādas angļu',
- 'en-gb' => 'Lielbritānijas angļu',
- 'en-us' => 'ASV angļu',
+ 'en-gb' => 'angļu (Lielbritānija)',
'enm' => 'vidusangļu',
'eo' => 'esperanto',
'es' => 'spāņu',
- 'es-419' => 'Latīņamerikas spāņu',
- 'es-es' => 'Eiropas spāņu',
- 'es-mx' => 'Meksikas spāņu',
'et' => 'igauņu',
'eu' => 'basku',
'ewo' => 'evondu',
@@ -144,8 +140,7 @@ $languageNames = array(
'fo' => 'fēru',
'fon' => 'fonu',
'fr' => 'franču',
- 'fr-ca' => 'Kanādas franču',
- 'fr-ch' => 'Šveices franču',
+ 'frc' => 'kadžūnu franču',
'frm' => 'vidusfranču',
'fro' => 'senfranču',
'frr' => 'ziemeļfrīzu',
@@ -157,7 +152,7 @@ $languageNames = array(
'gag' => 'gagauzu',
'gay' => 'gajo',
'gba' => 'gbaju',
- 'gd' => 'gēlu',
+ 'gd' => 'skotu gēlu',
'gez' => 'gēzu',
'gil' => 'kiribatiešu',
'gl' => 'galisiešu',
@@ -201,7 +196,7 @@ $languageNames = array(
'ilo' => 'iloku',
'inh' => 'ingušu',
'io' => 'ido',
- 'is' => 'īslandiešu',
+ 'is' => 'islandiešu',
'it' => 'itāļu',
'iu' => 'inuītu',
'ja' => 'japāņu',
@@ -269,7 +264,9 @@ $languageNames = array(
'ln' => 'lingala',
'lo' => 'laosiešu',
'lol' => 'mongu',
+ 'lou' => 'Luiziānas kreolu',
'loz' => 'lozu',
+ 'lrc' => 'ziemeļluru',
'lt' => 'lietuviešu',
'lu' => 'lubakatanga',
'lua' => 'lubalulva',
@@ -294,7 +291,7 @@ $languageNames = array(
'mfe' => 'Maurīcijas kreolu',
'mg' => 'malagasu',
'mga' => 'vidusīru',
- 'mgh' => 'makua-meetto',
+ 'mgh' => 'makua',
'mgo' => 'mgo',
'mh' => 'māršaliešu',
'mi' => 'maoru',
@@ -307,7 +304,7 @@ $languageNames = array(
'mni' => 'manipūru',
'moh' => 'mohauku',
'mos' => 'mosu',
- 'mr' => 'maratu',
+ 'mr' => 'marathu',
'ms' => 'malajiešu',
'mt' => 'maltiešu',
'mua' => 'mundangu',
@@ -318,12 +315,14 @@ $languageNames = array(
'my' => 'birmiešu',
'mye' => 'mjenu',
'myv' => 'erzju',
+ 'mzn' => 'mazanderāņu',
'na' => 'nauruiešu',
'nap' => 'neapoliešu',
'naq' => 'nama',
'nb' => 'norvēģu bukmols',
'nd' => 'ziemeļndebelu',
'nds' => 'lejasvācu',
+ 'nds-nl' => 'lejassakšu',
'ne' => 'nepāliešu',
'new' => 'nevaru',
'ng' => 'ndongu',
@@ -361,16 +360,16 @@ $languageNames = array(
'pam' => 'pampanganu',
'pap' => 'papjamento',
'pau' => 'palaviešu',
+ 'pcm' => 'Nigērijas pidžinvaloda',
'peo' => 'senpersu',
'phn' => 'feniķiešu',
'pi' => 'pāli',
'pl' => 'poļu',
'pon' => 'ponapiešu',
+ 'prg' => 'prūšu',
'pro' => 'senprovansiešu',
'ps' => 'puštu',
'pt' => 'portugāļu',
- 'pt-br' => 'Brazīlijas portugāļu',
- 'pt-pt' => 'Eiropas portugāļu',
'qu' => 'kečvu',
'quc' => 'kiče',
'raj' => 'radžastāņu',
@@ -389,7 +388,7 @@ $languageNames = array(
'sa' => 'sanskrits',
'sad' => 'sandavu',
'sah' => 'jakutu',
- 'sam' => 'samārijas aramiešu',
+ 'sam' => 'Samārijas aramiešu',
'saq' => 'samburu',
'sas' => 'sasaku',
'sat' => 'santalu',
@@ -399,6 +398,7 @@ $languageNames = array(
'scn' => 'sicīliešu',
'sco' => 'skotu',
'sd' => 'sindhu',
+ 'sdh' => 'dienvidkurdu',
'se' => 'ziemeļsāmu',
'see' => 'seneku',
'seh' => 'senu',
@@ -406,7 +406,7 @@ $languageNames = array(
'ses' => 'koiraboro senni',
'sg' => 'sango',
'sga' => 'senīru',
- 'sh' => 'serbu-horvātu',
+ 'sh' => 'serbu–horvātu',
'shi' => 'šilhu',
'shn' => 'šanu',
'shu' => 'Čadas arābu',
@@ -430,14 +430,14 @@ $languageNames = array(
'ss' => 'svatu',
'ssy' => 'saho',
'st' => 'dienvidsotu',
- 'su' => 'sundaniešu',
+ 'su' => 'zundu',
'suk' => 'sukumu',
'sus' => 'susu',
'sux' => 'šumeru',
'sv' => 'zviedru',
'sw' => 'svahili',
+ 'sw-cd' => 'svahili (Kongo)',
'swb' => 'komoru',
- 'swc' => 'Kongo svahili',
'syc' => 'klasiskā sīriešu',
'syr' => 'sīriešu',
'ta' => 'tamilu',
@@ -459,7 +459,7 @@ $languageNames = array(
'tmh' => 'tuaregu',
'tn' => 'cvanu',
'to' => 'tongiešu',
- 'tog' => 'njasas tongu',
+ 'tog' => 'Njasas tongu',
'tpi' => 'tokpisins',
'tr' => 'turku',
'trv' => 'taroko',
@@ -492,6 +492,7 @@ $languageNames = array(
'wal' => 'valamu',
'war' => 'varaju',
'was' => 'vašo',
+ 'wbp' => 'varlpirī',
'wo' => 'volofu',
'xal' => 'kalmiku',
'xh' => 'khosu',
@@ -507,7 +508,7 @@ $languageNames = array(
'zap' => 'sapoteku',
'zbl' => 'blissimbolika',
'zen' => 'zenagu',
- 'zgh' => 'standarta marokāņu berberu',
+ 'zgh' => 'standarta tamazigtu (Maroka)',
'zh' => 'ķīniešu',
'zh-hans' => 'ķīniešu vienkāršotā',
'zh-hant' => 'ķīniešu tradicionālā',
@@ -515,9 +516,9 @@ $languageNames = array(
'zun' => 'zunju',
'zxx' => 'bez lingvistiska satura',
'zza' => 'zazaki',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'AED' => 'Apvienoto Arābu Emirātu dirhēms',
'AFN' => 'Afganistānas afgāns',
'ALL' => 'Albānijas leks',
@@ -530,7 +531,7 @@ $currencyNames = array(
'AWG' => 'Arubas guldenis',
'AZM' => 'Azerbaidžānas manats (1993–2006)',
'AZN' => 'Azerbaidžānas manats',
- 'BAM' => 'Bosnijas un Hercogovinas marka',
+ 'BAM' => 'Bosnijas un Hercogovinas konvertējamā marka',
'BBD' => 'Barbadosas dolārs',
'BDT' => 'Bangladešas taka',
'BEF' => 'Beļģijas franks',
@@ -544,12 +545,14 @@ $currencyNames = array(
'BSD' => 'Bahamu dolārs',
'BTN' => 'Butānas ngultrums',
'BWP' => 'Botsvanas pula',
- 'BYR' => 'Baltkrievijas rubelis',
+ 'BYN' => 'Baltkrievijas rubelis',
+ 'BYR' => 'Baltkrievijas rubelis (2000–2016)',
'BZD' => 'Belizas dolārs',
'CAD' => 'Kanādas dolārs',
'CDF' => 'KDR franks',
'CHF' => 'Šveices franks',
'CLP' => 'Čīles peso',
+ 'CNH' => 'Ķīnas juaņa (ofšors)',
'CNY' => 'Ķīnas juaņs',
'COP' => 'Kolumbijas peso',
'COU' => 'Kolumbijas reāls',
@@ -594,7 +597,7 @@ $currencyNames = array(
'INR' => 'Indijas rūpija',
'IQD' => 'Irākas dinārs',
'IRR' => 'Irānas riāls',
- 'ISK' => 'Īslandes krona',
+ 'ISK' => 'Islandes krona',
'ITL' => 'Itālijas lira',
'JMD' => 'Jamaikas dolārs',
'JOD' => 'Jordānas dinārs',
@@ -626,7 +629,8 @@ $currencyNames = array(
'MMK' => 'Mjanmas kjats',
'MNT' => 'Mongolijas tugriks',
'MOP' => 'Makao pataka',
- 'MRO' => 'Mauritānijas ugija',
+ 'MRO' => 'Mauritānijas ugija (1973–2017)',
+ 'MRU' => 'Mauritānijas ugija',
'MTL' => 'Maltas lira',
'MTP' => 'Maltas mārciņa',
'MUR' => 'Maurīcijas rūpija',
@@ -646,7 +650,7 @@ $currencyNames = array(
'NZD' => 'Jaunzēlandes dolārs',
'OMR' => 'Omānas riāls',
'PAB' => 'Panamas balboa',
- 'PEN' => 'Peru jaunais sols',
+ 'PEN' => 'Peru sols',
'PGK' => 'Papua-Jaungvinejas kina',
'PHP' => 'Filipīnu peso',
'PKR' => 'Pakistānas rūpija',
@@ -659,7 +663,7 @@ $currencyNames = array(
'RSD' => 'Serbijas dinārs',
'RUB' => 'Krievijas rublis',
'RWF' => 'Ruandas franks',
- 'SAR' => 'Saūda riāls',
+ 'SAR' => 'Saūda Arābijas riāls',
'SBD' => 'Zālamana Salu dolārs',
'SCR' => 'Seišelu salu rūpija',
'SDG' => 'Sudānas mārciņa',
@@ -673,7 +677,8 @@ $currencyNames = array(
'SRD' => 'Surinamas dolārs',
'SRG' => 'Surinamas guldenis',
'SSP' => 'Dienvidsudānas mārciņa',
- 'STD' => 'Santome un Prinsipi dobra',
+ 'STD' => 'Santome un Prinsipi dobra (1977–2017)',
+ 'STN' => 'Santome un Prinsipi dobra',
'SVC' => 'Salvadoras kolons',
'SYP' => 'Sīrijas mārciņa',
'SZL' => 'Svazilendas lilangeni',
@@ -694,7 +699,8 @@ $currencyNames = array(
'UYU' => 'Urugvajas peso',
'UZS' => 'Uzbekistānas sums',
'VEB' => 'Venecuēlas bolivārs (1871–2008)',
- 'VEF' => 'Venecuēlas bolivārs',
+ 'VEF' => 'Venecuēlas bolivārs (2008–2018)',
+ 'VES' => 'Venecuēlas bolivārs',
'VND' => 'Vjetnamas dongi',
'VUV' => 'Vanuatu vatu',
'WST' => 'Samoa tala',
@@ -722,9 +728,9 @@ $currencyNames = array(
'ZMW' => 'Zambijas kvača',
'ZWD' => 'Zimbabves dolārs',
'ZWL' => 'Zimbabves dolārs (2009)',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'AED' => 'AED',
'AFN' => 'AFN',
'ALL' => 'ALL',
@@ -748,12 +754,14 @@ $currencySymbols = array(
'BSD' => 'BSD',
'BTN' => 'BTN',
'BWP' => 'BWP',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CA$',
'CDF' => 'CDF',
'CHF' => 'CHF',
'CLP' => 'CLP',
+ 'CNH' => 'CNH',
'CNY' => 'CN¥',
'COP' => 'COP',
'CRC' => 'CRC',
@@ -854,6 +862,7 @@ $currencySymbols = array(
'SRD' => 'SRD',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'STN',
'SYP' => 'SYP',
'SZL' => 'SZL',
'THB' => '฿',
@@ -871,6 +880,7 @@ $currencySymbols = array(
'UYU' => 'UYU',
'UZS' => 'UZS',
'VEF' => 'VEF',
+ 'VES' => 'VES',
'VND' => '₫',
'VUV' => 'VUV',
'WST' => 'WST',
@@ -882,9 +892,9 @@ $currencySymbols = array(
'ZAR' => 'ZAR',
'ZMK' => 'ZMK',
'ZMW' => 'ZMW',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'Debesbraukšanas sala',
'AD' => 'Andora',
'AE' => 'Apvienotie Arābu Emirāti',
@@ -893,11 +903,10 @@ $countryNames = array(
'AI' => 'Angilja',
'AL' => 'Albānija',
'AM' => 'Armēnija',
- 'AN' => 'Nīderlandes Antiļas',
'AO' => 'Angola',
'AQ' => 'Antarktika',
'AR' => 'Argentīna',
- 'AS' => 'Amerikāņu Samoa',
+ 'AS' => 'ASV Samoa',
'AT' => 'Austrija',
'AU' => 'Austrālija',
'AW' => 'Aruba',
@@ -910,7 +919,7 @@ $countryNames = array(
'BF' => 'Burkinafaso',
'BG' => 'Bulgārija',
'BH' => 'Bahreina',
- 'BI' => 'Burundi',
+ 'BI' => 'Burundija',
'BJ' => 'Benina',
'BL' => 'Senbartelmī',
'BM' => 'Bermudu salas',
@@ -925,10 +934,10 @@ $countryNames = array(
'BY' => 'Baltkrievija',
'BZ' => 'Beliza',
'CA' => 'Kanāda',
- 'CC' => 'Kokosu jeb Kīlinga salas',
- 'CD' => 'Kongo-Kinšasa',
+ 'CC' => 'Kokosu (Kīlinga) salas',
+ 'CD' => 'Kongo (Kinšasa)',
'CF' => 'Centrālāfrikas Republika',
- 'CG' => 'Kongo - Brazavila',
+ 'CG' => 'Kongo (Brazavila)',
'CH' => 'Šveice',
'CI' => 'Kotdivuāra',
'CK' => 'Kuka salas',
@@ -960,17 +969,18 @@ $countryNames = array(
'ES' => 'Spānija',
'ET' => 'Etiopija',
'EU' => 'Eiropas Savienība',
+ 'EZ' => 'Eirozona',
'FI' => 'Somija',
'FJ' => 'Fidži',
'FK' => 'Folklenda salas',
'FM' => 'Mikronēzija',
- 'FO' => 'Fēru Salas',
+ 'FO' => 'Fēru salas',
'FR' => 'Francija',
'GA' => 'Gabona',
- 'GB' => 'Lielbritānija',
+ 'GB' => 'Apvienotā Karaliste',
'GD' => 'Grenāda',
'GE' => 'Gruzija',
- 'GF' => 'Franču Gviāna',
+ 'GF' => 'Francijas Gviāna',
'GG' => 'Gērnsija',
'GH' => 'Gana',
'GI' => 'Gibraltārs',
@@ -986,7 +996,7 @@ $countryNames = array(
'GW' => 'Gvineja-Bisava',
'GY' => 'Gajāna',
'HK' => 'Honkonga',
- 'HM' => 'Hērda un Makdonalda salas',
+ 'HM' => 'Hērda sala un Makdonalda salas',
'HN' => 'Hondurasa',
'HR' => 'Horvātija',
'HT' => 'Haiti',
@@ -1000,7 +1010,7 @@ $countryNames = array(
'IO' => 'Indijas okeāna Britu teritorija',
'IQ' => 'Irāka',
'IR' => 'Irāna',
- 'IS' => 'Īslande',
+ 'IS' => 'Islande',
'IT' => 'Itālija',
'JE' => 'Džērsija',
'JM' => 'Jamaika',
@@ -1066,13 +1076,13 @@ $countryNames = array(
'OM' => 'Omāna',
'PA' => 'Panama',
'PE' => 'Peru',
- 'PF' => 'Franču Polinēzija',
+ 'PF' => 'Francijas Polinēzija',
'PG' => 'Papua-Jaungvineja',
'PH' => 'Filipīnas',
'PK' => 'Pakistāna',
'PL' => 'Polija',
'PM' => 'Senpjēra un Mikelona',
- 'PN' => 'Pitkērna',
+ 'PN' => 'Pitkērnas salas',
'PR' => 'Puertoriko',
'PS' => 'Palestīna',
'PT' => 'Portugāle',
@@ -1087,7 +1097,7 @@ $countryNames = array(
'RW' => 'Ruanda',
'SA' => 'Saūda Arābija',
'SB' => 'Zālamana salas',
- 'SC' => 'Šeišelu salas',
+ 'SC' => 'Seišelu salas',
'SD' => 'Sudāna',
'SE' => 'Zviedrija',
'SG' => 'Singapūra',
@@ -1109,7 +1119,7 @@ $countryNames = array(
'TA' => 'Tristana da Kuņas salas',
'TC' => 'Tērksas un Kaikosas salas',
'TD' => 'Čada',
- 'TF' => 'Francijas Dienvidjūru Zemes',
+ 'TF' => 'Francijas Dienvidjūru teritorija',
'TG' => 'Togo',
'TH' => 'Taizeme',
'TJ' => 'Tadžikistāna',
@@ -1125,7 +1135,8 @@ $countryNames = array(
'TZ' => 'Tanzānija',
'UA' => 'Ukraina',
'UG' => 'Uganda',
- 'UM' => 'ASV Aizjūras salas',
+ 'UM' => 'ASV Mazās Aizjūras salas',
+ 'UN' => 'ANO',
'US' => 'ASV',
'UY' => 'Urugvaja',
'UZ' => 'Uzbekistāna',
@@ -1136,7 +1147,7 @@ $countryNames = array(
'VI' => 'ASV Virdžīnas',
'VN' => 'Vjetnama',
'VU' => 'Vanuatu',
- 'WF' => 'Volisa un Futuna',
+ 'WF' => 'Volisa un Futunas salas',
'WS' => 'Samoa',
'XK' => 'Kosova',
'YE' => 'Jemena',
@@ -1144,9 +1155,12 @@ $countryNames = array(
'ZA' => 'Dienvidāfrikas Republika',
'ZM' => 'Zambija',
'ZW' => 'Zimbabve',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-one' => '{0} gadsimts',
+ 'century-other' => '{0} gadsimti',
+ 'century-zero' => '{0} gadsimtu',
'day-future-one' => 'pēc {0} dienas',
'day-future-other' => 'pēc {0} dienām',
'day-future-zero' => 'pēc {0} dienām',
@@ -1167,7 +1181,25 @@ $timeUnits = array(
'day-short-past-one' => 'pirms {0} d.',
'day-short-past-other' => 'pirms {0} d.',
'day-short-past-zero' => 'pirms {0} d.',
- 'day-zero' => '{0} dienas',
+ 'day-zero' => '{0} dienu',
+ 'fri-future-one' => 'pēc {0} piektdienas',
+ 'fri-future-other' => 'pēc {0} piektdienām',
+ 'fri-future-zero' => 'pēc {0} piektdienām',
+ 'fri-narrow-future-one' => 'pēc {0} piektd.',
+ 'fri-narrow-future-other' => 'pēc {0} piektd.',
+ 'fri-narrow-future-zero' => 'pēc {0} piektdienām',
+ 'fri-narrow-past-one' => 'pirms {0} piektd.',
+ 'fri-narrow-past-other' => 'pirms {0} piektd.',
+ 'fri-narrow-past-zero' => 'pirms {0} piektdienām',
+ 'fri-past-one' => 'pirms {0} piektdienas',
+ 'fri-past-other' => 'pirms {0} piektdienām',
+ 'fri-past-zero' => 'pirms {0} piektdienām',
+ 'fri-short-future-one' => 'pēc {0} piektd.',
+ 'fri-short-future-other' => 'pēc {0} piektd.',
+ 'fri-short-future-zero' => 'pēc {0} piektdienām',
+ 'fri-short-past-one' => 'pirms {0} piektd.',
+ 'fri-short-past-other' => 'pirms {0} piektd.',
+ 'fri-short-past-zero' => 'pirms {0} piektdienām',
'hour-future-one' => 'pēc {0} stundas',
'hour-future-other' => 'pēc {0} stundām',
'hour-future-zero' => 'pēc {0} stundām',
@@ -1188,13 +1220,13 @@ $timeUnits = array(
'hour-short-past-one' => 'pirms {0} st.',
'hour-short-past-other' => 'pirms {0} st.',
'hour-short-past-zero' => 'pirms {0} st.',
- 'hour-zero' => '{0} stundas',
+ 'hour-zero' => '{0} stundu',
'microsecond-one' => '{0} mikrosekunde',
'microsecond-other' => '{0} mikrosekundes',
- 'microsecond-zero' => '{0} mikrosekundes',
+ 'microsecond-zero' => '{0} mikrosekunžu',
'millisecond-one' => '{0} milisekunde',
'millisecond-other' => '{0} milisekundes',
- 'millisecond-zero' => '{0} milisekundes',
+ 'millisecond-zero' => '{0} milisekunžu',
'minute-future-one' => 'pēc {0} minūtes',
'minute-future-other' => 'pēc {0} minūtēm',
'minute-future-zero' => 'pēc {0} minūtēm',
@@ -1215,7 +1247,25 @@ $timeUnits = array(
'minute-short-past-one' => 'pirms {0} min.',
'minute-short-past-other' => 'pirms {0} min.',
'minute-short-past-zero' => 'pirms {0} min.',
- 'minute-zero' => '{0} minūtes',
+ 'minute-zero' => '{0} minūšu',
+ 'mon-future-one' => 'pēc {0} pirmdienas',
+ 'mon-future-other' => 'pēc {0} pirmdienām',
+ 'mon-future-zero' => 'pēc {0} pirmdienām',
+ 'mon-narrow-future-one' => 'pēc {0} pirmd.',
+ 'mon-narrow-future-other' => 'pēc {0} pirmd.',
+ 'mon-narrow-future-zero' => 'pēc {0} pirmdienām',
+ 'mon-narrow-past-one' => 'pirms {0} pirmd.',
+ 'mon-narrow-past-other' => 'pirms {0} pirmd.',
+ 'mon-narrow-past-zero' => 'pirms {0} pirmdienām',
+ 'mon-past-one' => 'pirms {0} pirmdienas',
+ 'mon-past-other' => 'pirms {0} pirmdienām',
+ 'mon-past-zero' => 'pirms {0} pirmdienām',
+ 'mon-short-future-one' => 'pēc {0} pirmd.',
+ 'mon-short-future-other' => 'pēc {0} pirmd.',
+ 'mon-short-future-zero' => 'pēc {0} pirmdienām',
+ 'mon-short-past-one' => 'pirms {0} pirmd.',
+ 'mon-short-past-other' => 'pirms {0} pirmd.',
+ 'mon-short-past-zero' => 'pirms {0} pirmdienām',
'month-future-one' => 'pēc {0} mēneša',
'month-future-other' => 'pēc {0} mēnešiem',
'month-future-zero' => 'pēc {0} mēnešiem',
@@ -1236,10 +1286,10 @@ $timeUnits = array(
'month-short-past-one' => 'pirms {0} mēn.',
'month-short-past-other' => 'pirms {0} mēn.',
'month-short-past-zero' => 'pirms {0} mēn.',
- 'month-zero' => '{0} mēneši',
+ 'month-zero' => '{0} mēnešu',
'nanosecond-one' => '{0} nanosekunde',
'nanosecond-other' => '{0} nanosekundes',
- 'nanosecond-zero' => '{0} nanosekundes',
+ 'nanosecond-zero' => '{0} nanosekunžu',
'quarter-future-one' => 'pēc {0} ceturkšņa',
'quarter-future-other' => 'pēc {0} ceturkšņiem',
'quarter-future-zero' => 'pēc {0} ceturkšņiem',
@@ -1258,6 +1308,24 @@ $timeUnits = array(
'quarter-short-past-one' => 'pirms {0} cet.',
'quarter-short-past-other' => 'pirms {0} cet.',
'quarter-short-past-zero' => 'pirms {0} cet.',
+ 'sat-future-one' => 'pēc {0} sestdienas',
+ 'sat-future-other' => 'pēc {0} sestdienām',
+ 'sat-future-zero' => 'pēc {0} sestdienām',
+ 'sat-narrow-future-one' => 'pēc {0} sestd.',
+ 'sat-narrow-future-other' => 'pēc {0} sestd.',
+ 'sat-narrow-future-zero' => 'pēc {0} sestdienām',
+ 'sat-narrow-past-one' => 'pirms {0} sestd.',
+ 'sat-narrow-past-other' => 'pirms {0} sestd.',
+ 'sat-narrow-past-zero' => 'pirms {0} sestdienām',
+ 'sat-past-one' => 'pirms {0} sestdienas',
+ 'sat-past-other' => 'pirms {0} sestdienām',
+ 'sat-past-zero' => 'pirms {0} sestdienām',
+ 'sat-short-future-one' => 'pēc {0} sestd.',
+ 'sat-short-future-other' => 'pēc {0} sestd.',
+ 'sat-short-future-zero' => 'pēc {0} sestdienām',
+ 'sat-short-past-one' => 'pirms {0} sestd.',
+ 'sat-short-past-other' => 'pirms {0} sestd.',
+ 'sat-short-past-zero' => 'pirms {0} sestdienām',
'second-future-one' => 'pēc {0} sekundes',
'second-future-other' => 'pēc {0} sekundēm',
'second-future-zero' => 'pēc {0} sekundēm',
@@ -1278,7 +1346,79 @@ $timeUnits = array(
'second-short-past-one' => 'pirms {0} sek.',
'second-short-past-other' => 'pirms {0} sek.',
'second-short-past-zero' => 'pirms {0} sek.',
- 'second-zero' => '{0} sekundes',
+ 'second-zero' => '{0} sekunžu',
+ 'sun-future-one' => 'pēc {0} svētdienas',
+ 'sun-future-other' => 'pēc {0} svētdienām',
+ 'sun-future-zero' => 'pēc {0} svētdienām',
+ 'sun-narrow-future-one' => 'pēc {0} svētd.',
+ 'sun-narrow-future-other' => 'pēc {0} svētd.',
+ 'sun-narrow-future-zero' => 'pēc {0} svētdienām',
+ 'sun-narrow-past-one' => 'pirms {0} svētd.',
+ 'sun-narrow-past-other' => 'pirms {0} svētd.',
+ 'sun-narrow-past-zero' => 'pirms {0} svētdienām',
+ 'sun-past-one' => 'pirms {0} svētdienas',
+ 'sun-past-other' => 'pirms {0} svētdienām',
+ 'sun-past-zero' => 'pirms {0} svētdienām',
+ 'sun-short-future-one' => 'pēc {0} svētd.',
+ 'sun-short-future-other' => 'pēc {0} svētd.',
+ 'sun-short-future-zero' => 'pēc {0} svētdienām',
+ 'sun-short-past-one' => 'pirms {0} svētd.',
+ 'sun-short-past-other' => 'pirms {0} svētd.',
+ 'sun-short-past-zero' => 'pirms {0} svētdienām',
+ 'thu-future-one' => 'pēc {0} ceturtdienas',
+ 'thu-future-other' => 'pēc {0} ceturtdienām',
+ 'thu-future-zero' => 'pēc {0} ceturtdienām',
+ 'thu-narrow-future-one' => 'pēc {0} ceturtd.',
+ 'thu-narrow-future-other' => 'pēc {0} ceturtd.',
+ 'thu-narrow-future-zero' => 'pēc {0} ceturtdienām',
+ 'thu-narrow-past-one' => 'pirms {0} ceturtd.',
+ 'thu-narrow-past-other' => 'pirms {0} ceturtd.',
+ 'thu-narrow-past-zero' => 'pirms {0} ceturtdienām',
+ 'thu-past-one' => 'pirms {0} ceturtdienas',
+ 'thu-past-other' => 'pirms {0} ceturtdienām',
+ 'thu-past-zero' => 'pirms {0} ceturtdienām',
+ 'thu-short-future-one' => 'pēc {0} ceturtd.',
+ 'thu-short-future-other' => 'pēc {0} ceturtd.',
+ 'thu-short-future-zero' => 'pēc {0} ceturtdienām',
+ 'thu-short-past-one' => 'pirms {0} ceturtd.',
+ 'thu-short-past-other' => 'pirms {0} ceturtd.',
+ 'thu-short-past-zero' => 'pirms {0} ceturtdienām',
+ 'tue-future-one' => 'pēc {0} otrdienas',
+ 'tue-future-other' => 'pēc {0} otrdienām',
+ 'tue-future-zero' => 'pēc {0} otrdienām',
+ 'tue-narrow-future-one' => 'pēc {0} otrd.',
+ 'tue-narrow-future-other' => 'pēc {0} otrd.',
+ 'tue-narrow-future-zero' => 'pēc {0} otrdienām',
+ 'tue-narrow-past-one' => 'pirms {0} otrd.',
+ 'tue-narrow-past-other' => 'pirms {0} otrd.',
+ 'tue-narrow-past-zero' => 'pirms {0} otrdienām',
+ 'tue-past-one' => 'pirms {0} otrdienas',
+ 'tue-past-other' => 'pirms {0} otrdienām',
+ 'tue-past-zero' => 'pirms {0} otrdienām',
+ 'tue-short-future-one' => 'pēc {0} otrd.',
+ 'tue-short-future-other' => 'pēc {0} otrd.',
+ 'tue-short-future-zero' => 'pēc {0} otrdienām',
+ 'tue-short-past-one' => 'pirms {0} otrd.',
+ 'tue-short-past-other' => 'pirms {0} otrd.',
+ 'tue-short-past-zero' => 'pirms {0} otrdienām',
+ 'wed-future-one' => 'pēc {0} trešdienas',
+ 'wed-future-other' => 'pēc {0} trešdienām',
+ 'wed-future-zero' => 'pēc {0} trešdienām',
+ 'wed-narrow-future-one' => 'pēc {0} trešd.',
+ 'wed-narrow-future-other' => 'pēc {0} trešd.',
+ 'wed-narrow-future-zero' => 'pēc {0} trešdienām',
+ 'wed-narrow-past-one' => 'pirms {0} trešd.',
+ 'wed-narrow-past-other' => 'pirms {0} trešd.',
+ 'wed-narrow-past-zero' => 'pirms {0} trešdienām',
+ 'wed-past-one' => 'pirms {0} trešdienas',
+ 'wed-past-other' => 'pirms {0} trešdienām',
+ 'wed-past-zero' => 'pirms {0} trešdienām',
+ 'wed-short-future-one' => 'pēc {0} trešd.',
+ 'wed-short-future-other' => 'pēc {0} trešd.',
+ 'wed-short-future-zero' => 'pēc {0} trešdienām',
+ 'wed-short-past-one' => 'pirms {0} trešd.',
+ 'wed-short-past-other' => 'pirms {0} trešd.',
+ 'wed-short-past-zero' => 'pirms {0} trešdienām',
'week-future-one' => 'pēc {0} nedēļas',
'week-future-other' => 'pēc {0} nedēļām',
'week-future-zero' => 'pēc {0} nedēļām',
@@ -1299,7 +1439,7 @@ $timeUnits = array(
'week-short-past-one' => 'pirms {0} ned.',
'week-short-past-other' => 'pirms {0} ned.',
'week-short-past-zero' => 'pirms {0} ned.',
- 'week-zero' => '{0} nedēļas',
+ 'week-zero' => '{0} nedēļu',
'year-future-one' => 'pēc {0} gada',
'year-future-other' => 'pēc {0} gadiem',
'year-future-zero' => 'pēc {0} gadiem',
@@ -1320,5 +1460,5 @@ $timeUnits = array(
'year-short-past-one' => 'pirms {0} g.',
'year-short-past-other' => 'pirms {0} g.',
'year-short-past-zero' => 'pirms {0} g.',
- 'year-zero' => '{0} gadi',
-);
+ 'year-zero' => '{0} gadu',
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesMfe.php b/MLEB/cldr/CldrNames/CldrNamesMfe.php
deleted file mode 100644
index 707ac19e..00000000
--- a/MLEB/cldr/CldrNames/CldrNamesMfe.php
+++ /dev/null
@@ -1,340 +0,0 @@
-<?php
-
-$languageNames = array(
- 'ak' => 'akan',
- 'am' => 'amarik',
- 'ar' => 'arab',
- 'be' => 'bieloris',
- 'bg' => 'bilgar',
- 'bn' => 'bengali',
- 'cs' => 'tchek',
- 'de' => 'alman',
- 'el' => 'grek',
- 'en' => 'angle',
- 'es' => 'espagnol',
- 'fa' => 'persan',
- 'fr' => 'franse',
- 'ha' => 'haoussa',
- 'hi' => 'hindi',
- 'hu' => 'hongrwa',
- 'id' => 'indonezien',
- 'ig' => 'igbo',
- 'it' => 'italien',
- 'ja' => 'zapone',
- 'jv' => 'zavane',
- 'km' => 'khmer, santral',
- 'ko' => 'koreen',
- 'mfe' => 'kreol morisien',
- 'ms' => 'male',
- 'my' => 'birman',
- 'ne' => 'nepale',
- 'nl' => 'olande',
- 'pa' => 'penjabi',
- 'pl' => 'polone',
- 'pt' => 'portige',
- 'ro' => 'roumin',
- 'ru' => 'ris',
- 'rw' => 'rwanda',
- 'so' => 'somali',
- 'sv' => 'swedwa',
- 'ta' => 'tamoul',
- 'th' => 'thaï',
- 'tr' => 'tirk',
- 'uk' => 'ikrenien',
- 'ur' => 'ourdou',
- 'vi' => 'vietnamien',
- 'yo' => 'yoruba',
- 'zh' => 'sinwa, mandarin',
- 'zu' => 'zoulou',
-);
-
-$currencyNames = array(
- 'AED' => 'dirham Emira arab ini',
- 'AOA' => 'kwanza angole',
- 'AUD' => 'dolar ostralien',
- 'BHD' => 'dinar bahreïn',
- 'BIF' => 'fran burunde',
- 'BWP' => 'pula ya botswane',
- 'CAD' => 'dolar kanadien',
- 'CDF' => 'fran kongole',
- 'CHF' => 'fran swis',
- 'CNY' => 'yuan renminbi sinwa',
- 'CVE' => 'eskudo kapverdien',
- 'DJF' => 'fran djiboutien',
- 'DZD' => 'dinar alzerien',
- 'EGP' => 'liv ezipsien',
- 'ERN' => 'nafka erythreen',
- 'ETB' => 'birr etiopien',
- 'EUR' => 'euro',
- 'GBP' => 'liv sterlin',
- 'GHC' => 'sedi ganeen',
- 'GMD' => 'dalasi gambien',
- 'GNS' => 'fran gineen',
- 'INR' => 'roupi',
- 'JPY' => 'yen zapone',
- 'KES' => 'shiling kenyan',
- 'KMF' => 'fran komorien',
- 'LRD' => 'dolar liberien',
- 'LSL' => 'loti lezoto',
- 'LYD' => 'dinar libien',
- 'MAD' => 'dirham marokin',
- 'MGA' => 'fran malgas',
- 'MRO' => 'ouguiya moritanien',
- 'MUR' => 'roupi morisien',
- 'MWK' => 'kwacha malawit',
- 'MZM' => 'metikal mozanbikin',
- 'NAD' => 'dolar namibien',
- 'NGN' => 'naira nizerian',
- 'RWF' => 'fran rwande',
- 'SAR' => 'rial saoudien',
- 'SCR' => 'roupi seselwa',
- 'SDG' => 'dinar soudane',
- 'SDP' => 'liv soudane',
- 'SHP' => 'liv Sainte-Hélène',
- 'SLL' => 'leonn Sierra-Leone',
- 'SOS' => 'shilingi somalien',
- 'STD' => 'dobra santomeen',
- 'SZL' => 'lilangeni swazi',
- 'TND' => 'dinar tinizien',
- 'TZS' => 'shiling tanzanien',
- 'UGX' => 'shiling ougande',
- 'USD' => 'dolar amerikin',
- 'XAF' => 'fran CFA (BEAC)',
- 'XOF' => 'fran CFA (BCEAO)',
- 'ZAR' => 'rand sid-afrikin',
- 'ZMK' => 'kwacha zanbien (1968–2012)',
- 'ZMW' => 'kwacha zanbien',
- 'ZWD' => 'dolar zimbawe',
-);
-
-$currencySymbols = array(
- 'MUR' => 'Rs',
-);
-
-$countryNames = array(
- 'AD' => 'Andor',
- 'AE' => 'Emira arab ini',
- 'AF' => 'Afganistan',
- 'AG' => 'Antigua-ek-Barbuda',
- 'AI' => 'Anguilla',
- 'AL' => 'Albani',
- 'AM' => 'Armeni',
- 'AN' => 'Antiy neerlande',
- 'AO' => 'Angola',
- 'AR' => 'Larzantinn',
- 'AS' => 'Samoa amerikin',
- 'AT' => 'Lostris',
- 'AU' => 'Lostrali',
- 'AW' => 'Aruba',
- 'AZ' => 'Azerbaïdjan',
- 'BA' => 'Bosni-Herzegovinn',
- 'BB' => 'Barbad',
- 'BD' => 'Banglades',
- 'BE' => 'Belzik',
- 'BF' => 'Burkina Faso',
- 'BG' => 'Bilgari',
- 'BH' => 'Bahreïn',
- 'BI' => 'Burundi',
- 'BJ' => 'Benin',
- 'BM' => 'Bermid',
- 'BN' => 'Brunei',
- 'BO' => 'Bolivi',
- 'BR' => 'Brezil',
- 'BS' => 'Bahamas',
- 'BT' => 'Boutan',
- 'BW' => 'Botswana',
- 'BY' => 'Belaris',
- 'BZ' => 'Beliz',
- 'CA' => 'Kanada',
- 'CD' => 'Repiblik demokratik Kongo',
- 'CF' => 'Repiblik Lafrik Santral',
- 'CG' => 'Kongo',
- 'CH' => 'Laswis',
- 'CI' => 'Côte d’Ivoire',
- 'CK' => 'Zil Cook',
- 'CL' => 'Shili',
- 'CM' => 'Kamerounn',
- 'CN' => 'Lasinn',
- 'CO' => 'Kolonbi',
- 'CR' => 'Costa Rica',
- 'CU' => 'Cuba',
- 'CV' => 'Kap-Ver',
- 'CY' => 'Cyprus',
- 'CZ' => 'Repiblik Chek',
- 'DE' => 'Almagn',
- 'DJ' => 'Djibouti',
- 'DK' => 'Dannmark',
- 'DM' => 'Dominik',
- 'DO' => 'Repiblik dominikin',
- 'DZ' => 'Alzeri',
- 'EC' => 'Ekwater',
- 'EE' => 'Estoni',
- 'EG' => 'Lezipt',
- 'ER' => 'Erythre',
- 'ES' => 'Lespagn',
- 'ET' => 'Letiopi',
- 'FI' => 'Finland',
- 'FJ' => 'Fidji',
- 'FK' => 'Zil malwinn',
- 'FM' => 'Mikronezi',
- 'FR' => 'Lafrans',
- 'GA' => 'Gabon',
- 'GB' => 'United Kingdom',
- 'GD' => 'Grenad',
- 'GE' => 'Zeorzi',
- 'GF' => 'Gwiyann franse',
- 'GH' => 'Ghana',
- 'GI' => 'Zibraltar',
- 'GL' => 'Greenland',
- 'GM' => 'Gambi',
- 'GN' => 'Gine',
- 'GP' => 'Guadloup',
- 'GQ' => 'Gine ekwatoryal',
- 'GR' => 'Gres',
- 'GT' => 'Guatemala',
- 'GU' => 'Guam',
- 'GW' => 'Gine-Bisau',
- 'GY' => 'Guyana',
- 'HN' => 'Honduras',
- 'HR' => 'Kroasi',
- 'HT' => 'Ayti',
- 'HU' => 'Ongri',
- 'ID' => 'Indonezi',
- 'IE' => 'Irland',
- 'IL' => 'Izrael',
- 'IN' => 'Lenn',
- 'IO' => 'Teritwar Britanik Losean Indien',
- 'IQ' => 'Irak',
- 'IR' => 'Iran',
- 'IS' => 'Island',
- 'IT' => 'Itali',
- 'JM' => 'Zamaik',
- 'JO' => 'Zordani',
- 'JP' => 'Zapon',
- 'KE' => 'Kenya',
- 'KG' => 'Kirghizistan',
- 'KH' => 'Kambodj',
- 'KI' => 'Kiribati',
- 'KM' => 'Komor',
- 'KN' => 'Saint-Christophe-ek-Niévès',
- 'KP' => 'Lakore-dinor',
- 'KR' => 'Lakore-disid',
- 'KW' => 'Koweit',
- 'KY' => 'Zil Kayman',
- 'KZ' => 'Kazakstan',
- 'LA' => 'Laos',
- 'LB' => 'Liban',
- 'LC' => 'Sainte-Lucie',
- 'LI' => 'Liechtenstein',
- 'LK' => 'Sri Lanka',
- 'LR' => 'Liberia',
- 'LS' => 'Lezoto',
- 'LT' => 'Lituani',
- 'LU' => 'Luxembourg',
- 'LV' => 'Letoni',
- 'LY' => 'Libi',
- 'MA' => 'Marok',
- 'MC' => 'Monako',
- 'MD' => 'Moldavi',
- 'MG' => 'Madagaskar',
- 'MH' => 'Zil Marshall',
- 'MK' => 'Masedwann',
- 'ML' => 'Mali',
- 'MM' => 'Myanmar',
- 'MN' => 'Mongoli',
- 'MP' => 'Zil Maryann dinor',
- 'MQ' => 'Martinik',
- 'MR' => 'Moritani',
- 'MS' => 'Montsera',
- 'MT' => 'Malt',
- 'MU' => 'Moris',
- 'MV' => 'Maldiv',
- 'MW' => 'Malawi',
- 'MX' => 'Mexik',
- 'MY' => 'Malezi',
- 'MZ' => 'Mozambik',
- 'NA' => 'Namibi',
- 'NC' => 'Nouvel-Kaledoni',
- 'NE' => 'Nizer',
- 'NF' => 'Lil Norfolk',
- 'NG' => 'Nizeria',
- 'NI' => 'Nicaragua',
- 'NL' => 'Oland',
- 'NO' => 'Norvez',
- 'NP' => 'Nepal',
- 'NR' => 'Nauru',
- 'NU' => 'Niowe',
- 'NZ' => 'Nouvel Zeland',
- 'OM' => 'Oman',
- 'PA' => 'Panama',
- 'PE' => 'Perou',
- 'PF' => 'Polinezi franse',
- 'PG' => 'Papouazi-Nouvel-Gine',
- 'PH' => 'Filipinn',
- 'PK' => 'Pakistan',
- 'PL' => 'Pologn',
- 'PM' => 'Saint-Pierre-ek-Miquelon',
- 'PN' => 'Pitcairn',
- 'PR' => 'Porto Rico',
- 'PS' => 'Teritwar Palestinn',
- 'PT' => 'Portigal',
- 'PW' => 'Palau',
- 'PY' => 'Paraguay',
- 'QA' => 'Katar',
- 'RE' => 'Larenion',
- 'RO' => 'Roumani',
- 'RU' => 'Larisi',
- 'RW' => 'Rwanda',
- 'SA' => 'Larabi Saoudit',
- 'SB' => 'Zil Salomon',
- 'SC' => 'Sesel',
- 'SD' => 'Soudan',
- 'SE' => 'Laswed',
- 'SG' => 'Singapour',
- 'SH' => 'Sainte-Hélène',
- 'SI' => 'Sloveni',
- 'SK' => 'Slovaki',
- 'SL' => 'Sierra Leone',
- 'SM' => 'Saint-Marin',
- 'SN' => 'Senegal',
- 'SO' => 'Somali',
- 'SR' => 'Surinam',
- 'ST' => 'São Tome-ek-Prínsip',
- 'SV' => 'Salvador',
- 'SY' => 'Lasiri',
- 'SZ' => 'Swaziland',
- 'TC' => 'Zil Tirk ek Caïcos',
- 'TD' => 'Tchad',
- 'TG' => 'Togo',
- 'TH' => 'Thayland',
- 'TJ' => 'Tadjikistan',
- 'TK' => 'Tokelau',
- 'TL' => 'Timor oriantal',
- 'TM' => 'Turkmenistan',
- 'TN' => 'Tinizi',
- 'TO' => 'Tonga',
- 'TR' => 'Tirki',
- 'TT' => 'Trinite-ek-Tobago',
- 'TV' => 'Tuvalu',
- 'TW' => 'Taiwan',
- 'TZ' => 'Tanzani',
- 'UA' => 'Ikrenn',
- 'UG' => 'Ouganda',
- 'US' => 'Lamerik',
- 'UY' => 'Uruguay',
- 'UZ' => 'Ouzbekistan',
- 'VA' => 'Lata Vatikan',
- 'VC' => 'Saint-Vincent-ek-Grenadines',
- 'VE' => 'Venezuela',
- 'VG' => 'Zil vierz britanik',
- 'VI' => 'Zil Vierz Lamerik',
- 'VN' => 'Vietnam',
- 'VU' => 'Vanuatu',
- 'WF' => 'Wallis-ek-Futuna',
- 'WS' => 'Samoa',
- 'YE' => 'Yemenn',
- 'YT' => 'Mayot',
- 'ZA' => 'Sid-Afrik',
- 'ZM' => 'Zambi',
- 'ZW' => 'Zimbabwe',
-);
diff --git a/MLEB/cldr/CldrNames/CldrNamesMg.php b/MLEB/cldr/CldrNames/CldrNamesMg.php
index 0cd19236..e00d9b83 100644
--- a/MLEB/cldr/CldrNames/CldrNamesMg.php
+++ b/MLEB/cldr/CldrNames/CldrNamesMg.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'ak' => 'Akan',
'am' => 'Amharika',
'ar' => 'Arabo',
@@ -46,9 +46,9 @@ $languageNames = array(
'yo' => 'Yôrobà',
'zh' => 'Sinoa, Mandarin',
'zu' => 'Zolò',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'AED' => 'Dirham',
'AOA' => 'kwanza angoley',
'AUD' => 'Dolara aostralianina',
@@ -79,7 +79,8 @@ $currencyNames = array(
'LYD' => 'Dinara Libyanina',
'MAD' => 'Dirham marokianina',
'MGA' => 'Ariary',
- 'MRO' => 'Ouguiya moritanianina',
+ 'MRO' => 'Ouguiya moritanianina (1973–2017)',
+ 'MRU' => 'Ouguiya moritanianina',
'MUR' => 'Ropia maorisianina',
'MWK' => 'kwacha malawite',
'MZM' => 'Metikaly',
@@ -93,7 +94,8 @@ $currencyNames = array(
'SHP' => 'livre de Sainte-Hélène',
'SLL' => 'Leone',
'SOS' => 'Shilling somalianina',
- 'STD' => 'Dobra',
+ 'STD' => 'Dobra (1977–2017)',
+ 'STN' => 'Dobra',
'SZL' => 'Lilangeni',
'TND' => 'Dinar tonizianina',
'TZS' => 'Shilling tanzanianina',
@@ -105,13 +107,13 @@ $currencyNames = array(
'ZMK' => 'Kwacha zambianina (1968–2012)',
'ZMW' => 'Kwacha zambianina',
'ZWD' => 'Dôlara Zimbaboeanina',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'MGA' => 'Ar',
-);
+];
-$countryNames = array(
+$countryNames = [
'AD' => 'Andorra',
'AE' => 'Emirà Arabo mitambatra',
'AF' => 'Afghanistan',
@@ -119,7 +121,6 @@ $countryNames = array(
'AI' => 'Anguilla',
'AL' => 'Albania',
'AM' => 'Armenia',
- 'AN' => 'Vondronosy karaiba holandey',
'AO' => 'Angola',
'AR' => 'Arzantina',
'AS' => 'Samoa amerikanina',
@@ -337,4 +338,4 @@ $countryNames = array(
'ZA' => 'Afrika Atsimo',
'ZM' => 'Zambia',
'ZW' => 'Zimbaboe',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesMk.php b/MLEB/cldr/CldrNames/CldrNamesMk.php
index 7829c77f..b6958817 100644
--- a/MLEB/cldr/CldrNames/CldrNamesMk.php
+++ b/MLEB/cldr/CldrNames/CldrNamesMk.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'афарски',
'ab' => 'апхаски',
'ace' => 'ачешки',
@@ -42,7 +42,6 @@ $languageNames = array(
'awa' => 'авади',
'ay' => 'ајмарски',
'az' => 'азербејџански',
- 'azb' => 'јужноазербејџански',
'ba' => 'башкирски',
'bal' => 'белуџиски',
'ban' => 'балиски',
@@ -59,6 +58,7 @@ $languageNames = array(
'bfd' => 'бафут',
'bfq' => 'бадага',
'bg' => 'бугарски',
+ 'bgn' => 'западен балочи',
'bho' => 'боџпури',
'bi' => 'бислама',
'bik' => 'биколски',
@@ -100,12 +100,13 @@ $languageNames = array(
'chp' => 'чипевјански',
'chr' => 'черокиски',
'chy' => 'чејенски',
- 'ckb' => 'сорански курдски',
+ 'ckb' => 'централнокурдски',
'co' => 'корзикански',
'cop' => 'коптски',
'cps' => 'капизнон',
'cr' => 'кри',
'crh' => 'кримскотурски',
+ 'crs' => 'француски (Сеселва креоли)',
'cs' => 'чешки',
'csb' => 'кашупски',
'cu' => 'црковнословенски',
@@ -116,6 +117,8 @@ $languageNames = array(
'dar' => 'даргва',
'dav' => 'таита',
'de' => 'германски',
+ 'de-at' => 'австриски германски',
+ 'de-ch' => 'швајцарски високо-германски',
'del' => 'делавер',
'den' => 'слејви',
'dgr' => 'догрипски',
@@ -140,12 +143,16 @@ $languageNames = array(
'el' => 'грчки',
'elx' => 'еламски',
'en' => 'англиски',
+ 'en-au' => 'австралиски англиски',
+ 'en-ca' => 'канадски англиски',
'en-gb' => 'британски англиски',
'en-us' => 'американски англиски',
'enm' => 'средноанглиски',
'eo' => 'есперанто',
'es' => 'шпански',
+ 'es-419' => 'латиноамерикански шпански',
'es-es' => 'шпански (во Европа)',
+ 'es-mx' => 'мексикански шпански',
'esu' => 'централнојупички',
'et' => 'естонски',
'eu' => 'баскиски',
@@ -162,7 +169,8 @@ $languageNames = array(
'fo' => 'фарски',
'fon' => 'фон',
'fr' => 'француски',
- 'fr-ca' => 'француски (во Канада)',
+ 'fr-ca' => 'канадски француски',
+ 'fr-ch' => 'швајцарски француски',
'frc' => 'каџунски француски',
'frm' => 'среднофранцуски',
'fro' => 'старофранцуски',
@@ -224,7 +232,7 @@ $languageNames = array(
'id' => 'индонезиски',
'ie' => 'окцидентал',
'ig' => 'игбо',
- 'ii' => 'носу',
+ 'ii' => 'сичуан ји',
'ik' => 'инупијачки',
'ilo' => 'илокански',
'inh' => 'ингушки',
@@ -265,7 +273,7 @@ $languageNames = array(
'ki' => 'кикују',
'kiu' => 'зазаки',
'kj' => 'квањама',
- 'kk' => 'казакстански',
+ 'kk' => 'казашки',
'kkj' => 'како',
'kl' => 'калалисут',
'kln' => 'каленџин',
@@ -306,11 +314,13 @@ $languageNames = array(
'lij' => 'лигурски',
'liv' => 'ливонски',
'lkt' => 'лакотски',
- 'lmo' => 'ломбардски',
+ 'lmo' => 'ломбардиски',
'ln' => 'лингала',
'lo' => 'лаошки',
'lol' => 'монго',
+ 'lou' => 'луизијански креолски',
'loz' => 'лози',
+ 'lrc' => 'севернолуриски',
'lt' => 'литвански',
'ltg' => 'латгалски',
'lu' => 'луба-катанга',
@@ -345,10 +355,10 @@ $languageNames = array(
'mic' => 'микмак',
'min' => 'минангкабау',
'mk' => 'македонски',
- 'ml' => 'малајалам',
+ 'ml' => 'малајамски',
'mn' => 'монголски',
'mnc' => 'манџурски',
- 'mni' => 'манипури',
+ 'mni' => 'манипурски',
'moh' => 'мохавски',
'mos' => 'моси',
'mr' => 'марати',
@@ -371,13 +381,15 @@ $languageNames = array(
'nb' => 'норвешки букмол',
'nd' => 'северен ндебеле',
'nds' => 'долногермански',
+ 'nds-nl' => 'долносаксонски',
'ne' => 'непалски',
'new' => 'неварски',
'ng' => 'ндонга',
'nia' => 'нијас',
- 'niu' => 'ниуејски',
- 'njo' => 'ао',
+ 'niu' => 'ниујески',
+ 'njo' => 'ао нага',
'nl' => 'холандски',
+ 'nl-be' => 'фламански',
'nmg' => 'квазио',
'nn' => 'норвешки нинорск',
'nnh' => 'нгиембун',
@@ -387,7 +399,7 @@ $languageNames = array(
'nov' => 'новијал',
'nqo' => 'нко',
'nr' => 'јужен ндебеле',
- 'nso' => 'северен сото',
+ 'nso' => 'северносотски',
'nus' => 'нуер',
'nv' => 'навахо',
'nwc' => 'класичен неварски',
@@ -399,7 +411,7 @@ $languageNames = array(
'oc' => 'окситански',
'oj' => 'оџибва',
'om' => 'оромо',
- 'or' => 'орија',
+ 'or' => 'одија',
'os' => 'осетски',
'osa' => 'осашки',
'ota' => 'отомански турски',
@@ -410,6 +422,7 @@ $languageNames = array(
'pap' => 'папијаменто',
'pau' => 'палауански',
'pcd' => 'пикардски',
+ 'pcm' => 'нигериски пиџин',
'pdc' => 'пенсилваниски германски',
'pdt' => 'менонитски долногермански',
'peo' => 'староперсиски',
@@ -424,6 +437,7 @@ $languageNames = array(
'pro' => 'старопровансалски',
'ps' => 'паштунски',
'pt' => 'португалски',
+ 'pt-br' => 'бразилски португалски',
'pt-pt' => 'португалски (во Европа)',
'qu' => 'кечуански',
'quc' => 'киче',
@@ -444,7 +458,7 @@ $languageNames = array(
'rue' => 'русински',
'rug' => 'ровијански',
'rup' => 'влашки',
- 'rw' => 'руанда',
+ 'rw' => 'руандски',
'rwk' => 'руа',
'sa' => 'санскрит',
'sad' => 'сандаве',
@@ -461,7 +475,8 @@ $languageNames = array(
'sco' => 'шкотски германски',
'sd' => 'синди',
'sdc' => 'сасарски сардински',
- 'se' => 'севернолапонски',
+ 'sdh' => 'јужнокурдски',
+ 'se' => 'северен сами',
'see' => 'сенека',
'seh' => 'сена',
'sei' => 'сери',
@@ -481,10 +496,10 @@ $languageNames = array(
'sli' => 'долношлезиски',
'sly' => 'селајарски',
'sm' => 'самоански',
- 'sma' => 'јужнолапонски',
- 'smj' => 'лулски лапонски',
- 'smn' => 'инарски лапонски',
- 'sms' => 'сколтски лапонски',
+ 'sma' => 'јужен сами',
+ 'smj' => 'луле сами',
+ 'smn' => 'инари сами',
+ 'sms' => 'сколт сами',
'sn' => 'шона',
'snk' => 'сонинке',
'so' => 'сомалиски',
@@ -503,8 +518,8 @@ $languageNames = array(
'sux' => 'сумерски',
'sv' => 'шведски',
'sw' => 'свахили',
+ 'sw-cd' => 'конгоански свахили',
'swb' => 'коморијански',
- 'swc' => 'конгоански свахили',
'syc' => 'класичен сириски',
'syr' => 'сириски',
'szl' => 'шлезиски',
@@ -529,7 +544,7 @@ $languageNames = array(
'tly' => 'талишки',
'tmh' => 'тамашек',
'tn' => 'цвана',
- 'to' => 'тонгански',
+ 'to' => 'тонгајски',
'tog' => 'њаса тонга',
'tpi' => 'ток писин',
'tr' => 'турски',
@@ -546,7 +561,7 @@ $languageNames = array(
'twq' => 'тазавак',
'ty' => 'тахитски',
'tyv' => 'тувански',
- 'tzm' => 'централно марокански тамазитски',
+ 'tzm' => 'централноатлански тамазитски',
'udm' => 'удмуртски',
'ug' => 'ујгурски',
'uga' => 'угаритски',
@@ -554,7 +569,7 @@ $languageNames = array(
'umb' => 'умбунду',
'und' => 'непознат јазик',
'ur' => 'урду',
- 'uz' => 'узбекистански',
+ 'uz' => 'узбечки',
'vai' => 'вај',
've' => 'венда',
'vec' => 'венетски',
@@ -571,6 +586,7 @@ $languageNames = array(
'wal' => 'воламо',
'war' => 'варајски',
'was' => 'вашо',
+ 'wbp' => 'варлпири',
'wo' => 'волофски',
'wuu' => 'ву',
'xal' => 'калмички',
@@ -590,7 +606,7 @@ $languageNames = array(
'zbl' => 'блиссимболи',
'zea' => 'зеландски',
'zen' => 'зенага',
- 'zgh' => 'стандарден марокански тамазигтски',
+ 'zgh' => 'стандарден марокански тамазитски',
'zh' => 'кинески',
'zh-hans' => 'поедноставен кинески',
'zh-hant' => 'традиционален кинески',
@@ -598,21 +614,21 @@ $languageNames = array(
'zun' => 'зуни',
'zxx' => 'без лингвистичка содржина',
'zza' => 'заза',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'ADP' => 'Андорска Пезета',
- 'AED' => 'Обединети Арапски Емирати Дирхам',
+ 'AED' => 'Дирхам на Обединети Арапски Емирати',
'AFA' => 'Авгани (1927–2002)',
'AFN' => 'Авганистански авгани',
- 'ALL' => 'Албански Лек',
- 'AMD' => 'Ермениски Драм',
+ 'ALL' => 'Албански лек',
+ 'AMD' => 'Ерменски драм',
'ANG' => 'Холандски антилски гилдер',
'AOA' => 'Анголска Кванза',
'AOK' => 'Анголска Кванза (1977–1990)',
'AON' => 'Анголска нова Кванза (1990–2000)',
'ARP' => 'Аргентински Пезос (1983–1985)',
- 'ARS' => 'Аргентински Пезос',
+ 'ARS' => 'Аргентински пезос',
'ATS' => 'Австралиски Шилинг',
'AUD' => 'Австралиски долар',
'AWG' => 'Арубиски флорин',
@@ -626,24 +642,26 @@ $currencyNames = array(
'BEL' => 'Белгиски Франк (финансиски)',
'BGL' => 'Бугарски цврст лев',
'BGN' => 'Бугарски лев',
- 'BHD' => 'Бахреински Динар',
- 'BIF' => 'Бурундиски Франк',
+ 'BHD' => 'Бахреински динар',
+ 'BIF' => 'Бурундиски франк',
'BMD' => 'Бермудски долар',
'BND' => 'Брунејски долар',
'BOB' => 'Боливиски боливиано',
'BRL' => 'Бразилски реал',
'BSD' => 'Бахамски долар',
'BTN' => 'Бутански нгултрум',
- 'BWP' => 'Боцванска Пула',
+ 'BWP' => 'Боцванска пула',
'BYB' => 'Белоруска нова рубља (1994–1999)',
- 'BYR' => 'Белоруска рубља',
+ 'BYN' => 'Белоруска рубља',
+ 'BYR' => 'Белоруска рубља (2000–2016)',
'BZD' => 'Белизиски Долар',
'CAD' => 'Канадски долар',
'CDF' => 'Конголски франк',
- 'CHF' => 'Швајцарски Франк',
+ 'CHF' => 'Швајцарски франк',
'CLP' => 'Чилеански пезос',
+ 'CNH' => 'Кинески јуан (офшор)',
'CNY' => 'Кинески јуан',
- 'COP' => 'Колумбиски Пезос',
+ 'COP' => 'Колумбиски пезос',
'CRC' => 'Костарикански колон',
'CSK' => 'Чехословачка цврста корона',
'CUC' => 'Кубански пезос (конвертибилен)',
@@ -652,20 +670,20 @@ $currencyNames = array(
'CYP' => 'Кипарска фунта',
'CZK' => 'Чешка корона',
'DEM' => 'Германска Марка',
- 'DJF' => 'Џибути франк',
+ 'DJF' => 'Џибутски франк',
'DKK' => 'Данска круна',
'DOP' => 'Доминикански Пезос',
- 'DZD' => 'Алжирски Динар',
- 'EGP' => 'Египетска Фунта',
- 'ERN' => 'Еритрејска Накфа',
+ 'DZD' => 'Алжирски динар',
+ 'EGP' => 'Египетска фунта',
+ 'ERN' => 'Еритрејска накфа',
'ESP' => 'Шпанска Пезета',
- 'ETB' => 'Етиописки Бир',
+ 'ETB' => 'Етиописки бир',
'EUR' => 'Евро',
'FIM' => 'Финска марка',
'FJD' => 'Фиџиски долар',
'FKP' => 'Фолкландска фунта',
'FRF' => 'Француски франк',
- 'GBP' => 'Британска Фунта',
+ 'GBP' => 'Британска фунта',
'GEL' => 'Грузиски лари',
'GHC' => 'Ганајски Седи',
'GHS' => 'Гански седи',
@@ -675,11 +693,11 @@ $currencyNames = array(
'GRD' => 'Грчка драхма',
'GTQ' => 'Гватемалски кветцал',
'GWP' => 'Гвинејски Бисау пезос',
- 'GYD' => 'Гвијански Долар',
+ 'GYD' => 'Гвајански долар',
'HKD' => 'Хонгконшки долар',
'HNL' => 'Хондурска лемпира',
'HRD' => 'Хрватски динар',
- 'HRK' => 'Хрватска Куна',
+ 'HRK' => 'Хрватска куна',
'HTG' => 'Хаитски гурд',
'HUF' => 'Унгарска форинта',
'IDR' => 'Индонезиска рупија',
@@ -697,7 +715,7 @@ $currencyNames = array(
'KES' => 'Кениски шилинг',
'KGS' => 'Киргистански сом',
'KHR' => 'Камбоџиски рел',
- 'KMF' => 'Коморски долар',
+ 'KMF' => 'Коморски франк',
'KPW' => 'Северно корејски вон',
'KRW' => 'Јужно корејски вон',
'KWD' => 'Кувајтски динар',
@@ -714,7 +732,7 @@ $currencyNames = array(
'LVL' => 'Латвијски лат',
'LVR' => 'Латвијска рубља',
'LYD' => 'Либијски динар',
- 'MAD' => 'Марокански Дирхам',
+ 'MAD' => 'Марокански дирхам',
'MAF' => 'Марокански франк',
'MDL' => 'Молдавски леу',
'MGA' => 'Малагасиски ариари',
@@ -723,7 +741,8 @@ $currencyNames = array(
'MMK' => 'Мјанмарски киат',
'MNT' => 'Монголиски тугрик',
'MOP' => 'Макао патака',
- 'MRO' => 'Мавританска угија',
+ 'MRO' => 'Мавританска угија (1973–2017)',
+ 'MRU' => 'Мавританска угија',
'MTL' => 'Малтешка лира',
'MTP' => 'Малтешка фунта',
'MUR' => 'Мавританска рупија',
@@ -731,7 +750,7 @@ $currencyNames = array(
'MWK' => 'Малависка квача',
'MXN' => 'Мексикански пезос',
'MXP' => 'Мексикански сребрен пезос (1861–1992)',
- 'MYR' => 'Малазиски рингит',
+ 'MYR' => 'Малезиски рингит',
'MZE' => 'Мозамбиско ескудо',
'MZM' => 'Стар мозамбиски метикал',
'MZN' => 'Мозамбиски метикал',
@@ -745,8 +764,8 @@ $currencyNames = array(
'NZD' => 'Новозеландски долар',
'OMR' => 'Омански риал',
'PAB' => 'Панамска балбоа',
- 'PEN' => 'Перуански нов сол',
- 'PES' => 'Перуански сол',
+ 'PEN' => 'Перуански сол',
+ 'PES' => 'Перуански сол (1863–1965)',
'PGK' => 'Папуа новогвинејска кина',
'PHP' => 'Филипински пезос',
'PKR' => 'Пакистанска рупија',
@@ -777,7 +796,8 @@ $currencyNames = array(
'SRD' => 'Суринамски долар',
'SRG' => 'Суринамски гилдер',
'SSP' => 'Јужносуданска фунта',
- 'STD' => 'Добра на Сао Томе и Принсипе',
+ 'STD' => 'Добра на Саун Томе и Принсип (1977–2017)',
+ 'STN' => 'Добра на Саун Томе и Принсип',
'SUR' => 'Советска рубља',
'SVC' => 'Салвадорски колон',
'SYP' => 'Сиријска фунта',
@@ -805,13 +825,14 @@ $currencyNames = array(
'UYU' => 'Уругвајски пезос',
'UZS' => 'Узбекистански сом',
'VEB' => 'Венецуелски боливар (1871–2008)',
- 'VEF' => 'Венецуелски боливар',
+ 'VEF' => 'Венецуелски боливар (2008–2018)',
+ 'VES' => 'Венецуелски боливар',
'VND' => 'Виетнамски донг',
'VUV' => 'Ванатски вату',
'WST' => 'Самоанска тала',
- 'XAF' => 'XAF',
+ 'XAF' => 'Централноафрикански франк',
'XCD' => 'Источно карибиски долар',
- 'XOF' => 'XOF',
+ 'XOF' => 'Западноафрикански франк',
'XPF' => 'ЦФП франк',
'XXX' => 'Непозната валута',
'YDD' => 'Јеменски динар',
@@ -819,15 +840,15 @@ $currencyNames = array(
'YUD' => 'Југословенски динар',
'YUN' => 'Југословенски конвертибилен динар',
'ZAL' => 'Јужно афрички ранд(финансиски)',
- 'ZAR' => 'Јужно афрички ранд',
+ 'ZAR' => 'Јужноафрикански ранд',
'ZMK' => 'Замбијска квача (1968–2012)',
'ZMW' => 'Замбијска квача',
'ZRN' => 'Заирско новозаире',
'ZRZ' => 'Заирско заире',
'ZWD' => 'Зимбабвиски долар',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'AED' => 'AED',
'AFN' => 'AFN',
'ALL' => 'ALL',
@@ -851,12 +872,14 @@ $currencySymbols = array(
'BSD' => 'BSD',
'BTN' => 'BTN',
'BWP' => 'BWP',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CA$',
'CDF' => 'CDF',
'CHF' => 'CHF',
'CLP' => 'CLP',
+ 'CNH' => 'CNH',
'CNY' => 'CNY',
'COP' => 'COP',
'CRC' => 'CRC',
@@ -920,6 +943,7 @@ $currencySymbols = array(
'MNT' => 'MNT',
'MOP' => 'MOP',
'MRO' => 'MRO',
+ 'MRU' => 'MRU',
'MUR' => 'MUR',
'MVR' => 'MVR',
'MWK' => 'MWK',
@@ -957,6 +981,7 @@ $currencySymbols = array(
'SRD' => 'SRD',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'STN',
'SYP' => 'SYP',
'SZL' => 'SZL',
'THB' => 'THB',
@@ -974,6 +999,7 @@ $currencySymbols = array(
'UYU' => 'UYU',
'UZS' => 'UZS',
'VEF' => 'VEF',
+ 'VES' => 'VES',
'VND' => 'VND',
'VUV' => 'VUV',
'WST' => 'WST',
@@ -984,18 +1010,17 @@ $currencySymbols = array(
'YER' => 'YER',
'ZAR' => 'ZAR',
'ZMW' => 'ZMW',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'Остров Асенсион',
'AD' => 'Андора',
'AE' => 'Обединети Арапски Емирати',
'AF' => 'Авганистан',
- 'AG' => 'Антигва и Барбуда',
+ 'AG' => 'Антига и Барбуда',
'AI' => 'Ангвила',
'AL' => 'Албанија',
'AM' => 'Ерменија',
- 'AN' => 'Холандски Антили',
'AO' => 'Ангола',
'AQ' => 'Антарктик',
'AR' => 'Аргентина',
@@ -1003,7 +1028,7 @@ $countryNames = array(
'AT' => 'Австрија',
'AU' => 'Австралија',
'AW' => 'Аруба',
- 'AX' => 'Оландски острови',
+ 'AX' => 'Оландски Острови',
'AZ' => 'Азербејџан',
'BA' => 'Босна и Херцеговина',
'BB' => 'Барбадос',
@@ -1045,7 +1070,7 @@ $countryNames = array(
'CW' => 'Курасао',
'CX' => 'Божиќен Остров',
'CY' => 'Кипар',
- 'CZ' => 'Република Чешка',
+ 'CZ' => 'Чешка',
'DE' => 'Германија',
'DG' => 'Диего Гарсија',
'DJ' => 'Џибути',
@@ -1062,6 +1087,7 @@ $countryNames = array(
'ES' => 'Шпанија',
'ET' => 'Етиопија',
'EU' => 'Европска унија',
+ 'EZ' => 'Еврозона',
'FI' => 'Финска',
'FJ' => 'Фиџи',
'FK' => 'Фолкландски Острови',
@@ -1084,11 +1110,11 @@ $countryNames = array(
'GR' => 'Грција',
'GS' => 'Јужна Џорџија и Јужни Сендвички Острови',
'GT' => 'Гватемала',
- 'GU' => 'Гвам',
+ 'GU' => 'Гуам',
'GW' => 'Гвинеја-Бисау',
'GY' => 'Гвајана',
'HK' => 'Хонг Конг',
- 'HM' => 'Остров Херд и Острови Макдоналд',
+ 'HM' => 'Остров Херд и Острови Мекдоналд',
'HN' => 'Хондурас',
'HR' => 'Хрватска',
'HT' => 'Хаити',
@@ -1113,7 +1139,7 @@ $countryNames = array(
'KH' => 'Камбоџа',
'KI' => 'Кирибати',
'KM' => 'Коморски Острови',
- 'KN' => 'Свети Кристофер и Невис',
+ 'KN' => 'Свети Китс и Невис',
'KP' => 'Северна Кореја',
'KR' => 'Јужна Кореја',
'KW' => 'Кувајт',
@@ -1121,7 +1147,7 @@ $countryNames = array(
'KZ' => 'Казахстан',
'LA' => 'Лаос',
'LB' => 'Либан',
- 'LC' => 'Света Луција',
+ 'LC' => 'Сент Лусија',
'LI' => 'Лихтенштајн',
'LK' => 'Шри Ланка',
'LR' => 'Либерија',
@@ -1163,7 +1189,7 @@ $countryNames = array(
'NO' => 'Норвешка',
'NP' => 'Непал',
'NR' => 'Науру',
- 'NU' => 'Ниуе',
+ 'NU' => 'Ниује',
'NZ' => 'Нов Зеланд',
'OM' => 'Оман',
'PA' => 'Панама',
@@ -1182,7 +1208,7 @@ $countryNames = array(
'PY' => 'Парагвај',
'QA' => 'Катар',
'QO' => 'Зависни земји во Океанија',
- 'RE' => 'Ријунион',
+ 'RE' => 'Реунион',
'RO' => 'Романија',
'RS' => 'Србија',
'RU' => 'Русија',
@@ -1209,9 +1235,9 @@ $countryNames = array(
'SY' => 'Сирија',
'SZ' => 'Свазиленд',
'TA' => 'Тристан да Куња',
- 'TC' => 'Острови Туркс и Кајкос',
+ 'TC' => 'Острови Туркс и Каикос',
'TD' => 'Чад',
- 'TF' => 'Француски Јужни територии',
+ 'TF' => 'Француски Јужни Територии',
'TG' => 'Того',
'TH' => 'Тајланд',
'TJ' => 'Таџикистан',
@@ -1228,17 +1254,18 @@ $countryNames = array(
'UA' => 'Украина',
'UG' => 'Уганда',
'UM' => 'Американски територии во Пацификот',
+ 'UN' => 'ОН',
'US' => 'САД',
'UY' => 'Уругвај',
'UZ' => 'Узбекистан',
'VA' => 'Ватикан',
- 'VC' => 'Свети Винсент и Гренадините',
+ 'VC' => 'Сент Винсент и Гренадини',
'VE' => 'Венецуела',
'VG' => 'Британски Девствени Острови',
'VI' => 'Американски Девствени Острови',
'VN' => 'Виетнам',
'VU' => 'Вануату',
- 'WF' => 'Волис и Футуна',
+ 'WF' => 'Валис и Футуна',
'WS' => 'Самоа',
'XK' => 'Косово',
'YE' => 'Јемен',
@@ -1246,9 +1273,11 @@ $countryNames = array(
'ZA' => 'Јужноафриканска Република',
'ZM' => 'Замбија',
'ZW' => 'Зимбабве',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-one' => '{0} век',
+ 'century-other' => '{0} векови',
'day-future-one' => 'за {0} ден',
'day-future-other' => 'за {0} дена',
'day-narrow-future-one' => 'за {0} ден',
@@ -1263,6 +1292,18 @@ $timeUnits = array(
'day-short-future-other' => 'за {0} дена',
'day-short-past-one' => 'пред {0} ден',
'day-short-past-other' => 'пред {0} дена',
+ 'fri-future-one' => 'за {0} петок',
+ 'fri-future-other' => 'за {0} петоци',
+ 'fri-narrow-future-one' => 'за {0} пет.',
+ 'fri-narrow-future-other' => 'за {0} пет.',
+ 'fri-narrow-past-one' => 'пред {0} пет.',
+ 'fri-narrow-past-other' => 'пред {0} пет.',
+ 'fri-past-one' => 'пред {0} петок',
+ 'fri-past-other' => 'пред {0} петоци',
+ 'fri-short-future-one' => 'за {0} пет.',
+ 'fri-short-future-other' => 'за {0} пет.',
+ 'fri-short-past-one' => 'пред {0} пет.',
+ 'fri-short-past-other' => 'пред {0} пет.',
'hour-future-one' => 'за {0} час',
'hour-future-other' => 'за {0} часа',
'hour-narrow-future-one' => 'за {0} час',
@@ -1283,18 +1324,30 @@ $timeUnits = array(
'millisecond-other' => '{0} милисекунди',
'minute-future-one' => 'за {0} минута',
'minute-future-other' => 'за {0} минути',
- 'minute-narrow-future-one' => 'за {0} минута',
- 'minute-narrow-future-other' => 'за {0} минути',
- 'minute-narrow-past-one' => 'пред {0} минута',
- 'minute-narrow-past-other' => 'пред {0} минути',
+ 'minute-narrow-future-one' => 'за {0} мин.',
+ 'minute-narrow-future-other' => 'за {0} мин.',
+ 'minute-narrow-past-one' => 'пред {0} мин.',
+ 'minute-narrow-past-other' => 'пред {0} мин.',
'minute-one' => '{0} минута',
'minute-other' => '{0} минути',
'minute-past-one' => 'пред {0} минута',
'minute-past-other' => 'пред {0} минути',
- 'minute-short-future-one' => 'за {0} минута',
- 'minute-short-future-other' => 'за {0} минути',
- 'minute-short-past-one' => 'пред {0} минута',
- 'minute-short-past-other' => 'пред {0} минути',
+ 'minute-short-future-one' => 'за {0} мин.',
+ 'minute-short-future-other' => 'за {0} мин.',
+ 'minute-short-past-one' => 'пред {0} мин.',
+ 'minute-short-past-other' => 'пред {0} мин.',
+ 'mon-future-one' => 'за {0} понеделник',
+ 'mon-future-other' => 'за {0} понеделници',
+ 'mon-narrow-future-one' => 'за {0} пон.',
+ 'mon-narrow-future-other' => 'за {0} пон.',
+ 'mon-narrow-past-one' => 'пред {0} пон.',
+ 'mon-narrow-past-other' => 'пред {0} пон.',
+ 'mon-past-one' => 'пред {0} понеделник',
+ 'mon-past-other' => 'пред {0} понеделници',
+ 'mon-short-future-one' => 'за {0} пон.',
+ 'mon-short-future-other' => 'за {0} пон.',
+ 'mon-short-past-one' => 'пред {0} пон.',
+ 'mon-short-past-other' => 'пред {0} пон.',
'month-future-one' => 'за {0} месец',
'month-future-other' => 'за {0} месеци',
'month-narrow-future-one' => 'за {0} месец',
@@ -1313,30 +1366,90 @@ $timeUnits = array(
'nanosecond-other' => '{0} наносекунди',
'quarter-future-one' => 'за {0} тромесечје',
'quarter-future-other' => 'за {0} тромесечја',
- 'quarter-narrow-future-one' => 'за {0} тромесечја',
- 'quarter-narrow-future-other' => 'за {0} тромесечја',
- 'quarter-narrow-past-one' => 'пред {0} тромесечја',
- 'quarter-narrow-past-other' => 'пред {0} тромесечја',
+ 'quarter-narrow-future-one' => 'за {0} тромес.',
+ 'quarter-narrow-future-other' => 'за {0} тромес.',
+ 'quarter-narrow-past-one' => 'пред {0} тромес.',
+ 'quarter-narrow-past-other' => 'пред {0} тромес.',
'quarter-past-one' => 'пред {0} тромесечје',
'quarter-past-other' => 'пред {0} тромесечја',
- 'quarter-short-future-one' => 'за {0} тромесечје',
- 'quarter-short-future-other' => 'за {0} тромесечја',
- 'quarter-short-past-one' => 'пред {0} тромесечје',
- 'quarter-short-past-other' => 'пред {0} тромесечја',
+ 'quarter-short-future-one' => 'за {0} тромес.',
+ 'quarter-short-future-other' => 'за {0} тромес.',
+ 'quarter-short-past-one' => 'пред {0} тромес.',
+ 'quarter-short-past-other' => 'пред {0} тромес.',
+ 'sat-future-one' => 'за {0} сабота',
+ 'sat-future-other' => 'за {0} саботи',
+ 'sat-narrow-future-one' => 'за {0} саб.',
+ 'sat-narrow-future-other' => 'за {0} саб.',
+ 'sat-narrow-past-one' => 'пред {0} саб.',
+ 'sat-narrow-past-other' => 'пред {0} саб.',
+ 'sat-past-one' => 'пред {0} сабота',
+ 'sat-past-other' => 'пред {0} саботи',
+ 'sat-short-future-one' => 'за {0} саб.',
+ 'sat-short-future-other' => 'за {0} саб.',
+ 'sat-short-past-one' => 'пред {0} саб.',
+ 'sat-short-past-other' => 'пред {0} саб.',
'second-future-one' => 'за {0} секунда',
'second-future-other' => 'за {0} секунди',
- 'second-narrow-future-one' => 'за {0} секунда',
- 'second-narrow-future-other' => 'за {0} секунди',
- 'second-narrow-past-one' => 'пред {0} секунда',
- 'second-narrow-past-other' => 'пред {0} секунди',
+ 'second-narrow-future-one' => 'за {0} сек.',
+ 'second-narrow-future-other' => 'за {0} сек.',
+ 'second-narrow-past-one' => 'пред {0} сек.',
+ 'second-narrow-past-other' => 'пред {0} сек.',
'second-one' => '{0} секунда',
'second-other' => '{0} секунди',
'second-past-one' => 'пред {0} секунда',
'second-past-other' => 'пред {0} секунди',
- 'second-short-future-one' => 'за {0} секунда',
- 'second-short-future-other' => 'за {0} секунди',
- 'second-short-past-one' => 'пред {0} секунда',
- 'second-short-past-other' => 'пред {0} секунди',
+ 'second-short-future-one' => 'за {0} сек.',
+ 'second-short-future-other' => 'за {0} сек.',
+ 'second-short-past-one' => 'пред {0} сек.',
+ 'second-short-past-other' => 'пред {0} сек.',
+ 'sun-future-one' => 'за {0} недела',
+ 'sun-future-other' => 'за {0} недели',
+ 'sun-narrow-future-one' => 'за {0} нед.',
+ 'sun-narrow-future-other' => 'за {0} нед.',
+ 'sun-narrow-past-one' => 'пред {0} нед.',
+ 'sun-narrow-past-other' => 'пред {0} нед.',
+ 'sun-past-one' => 'пред {0} недела',
+ 'sun-past-other' => 'пред {0} недели',
+ 'sun-short-future-one' => 'за {0} нед.',
+ 'sun-short-future-other' => 'за {0} нед.',
+ 'sun-short-past-one' => 'пред {0} нед.',
+ 'sun-short-past-other' => 'пред {0} нед.',
+ 'thu-future-one' => 'за {0} четврток',
+ 'thu-future-other' => 'за {0} четвртоци',
+ 'thu-narrow-future-one' => 'за {0} чет.',
+ 'thu-narrow-future-other' => 'за {0} чет.',
+ 'thu-narrow-past-one' => 'пред {0} чет.',
+ 'thu-narrow-past-other' => 'пред {0} чет.',
+ 'thu-past-one' => 'пред {0} четврток',
+ 'thu-past-other' => 'пред {0} четвртоци',
+ 'thu-short-future-one' => 'за {0} чет.',
+ 'thu-short-future-other' => 'за {0} чет.',
+ 'thu-short-past-one' => 'пред {0} чет.',
+ 'thu-short-past-other' => 'пред {0} чет.',
+ 'tue-future-one' => 'за {0} вторник',
+ 'tue-future-other' => 'за {0} вторници',
+ 'tue-narrow-future-one' => 'за {0} вто.',
+ 'tue-narrow-future-other' => 'за {0} вто.',
+ 'tue-narrow-past-one' => 'пред {0} вто.',
+ 'tue-narrow-past-other' => 'пред {0} вто.',
+ 'tue-past-one' => 'пред {0} вторник',
+ 'tue-past-other' => 'пред {0} вторници',
+ 'tue-short-future-one' => 'за {0} вто.',
+ 'tue-short-future-other' => 'за {0} вто.',
+ 'tue-short-past-one' => 'пред {0} вто.',
+ 'tue-short-past-other' => 'пред {0} вто.',
+ 'wed-future-one' => 'за {0} среда',
+ 'wed-future-other' => 'за {0} среди',
+ 'wed-narrow-future-one' => 'за {0} сре.',
+ 'wed-narrow-future-other' => 'за {0} сре.',
+ 'wed-narrow-past-one' => 'пред {0} сре.',
+ 'wed-narrow-past-other' => 'пред {0} сре.',
+ 'wed-past-one' => 'пред {0} среда',
+ 'wed-past-other' => 'пред {0} среди',
+ 'wed-short-future-one' => 'за {0} сре.',
+ 'wed-short-future-other' => 'за {0} сре.',
+ 'wed-short-past-one' => 'пред {0} сре.',
+ 'wed-short-past-other' => 'пред {0} сре.',
'week-future-one' => 'за {0} седмица',
'week-future-other' => 'за {0} седмици',
'week-narrow-future-one' => 'за {0} седмица',
@@ -1353,16 +1466,16 @@ $timeUnits = array(
'week-short-past-other' => 'пред {0} седмици',
'year-future-one' => 'за {0} година',
'year-future-other' => 'за {0} години',
- 'year-narrow-future-one' => 'За {0} години',
- 'year-narrow-future-other' => 'За {0} години',
- 'year-narrow-past-one' => 'Пред {0} години',
- 'year-narrow-past-other' => 'Пред {0} години',
+ 'year-narrow-future-one' => 'за {0} год.',
+ 'year-narrow-future-other' => 'за {0} год.',
+ 'year-narrow-past-one' => 'пред {0} год.',
+ 'year-narrow-past-other' => 'пред {0} год.',
'year-one' => '{0} година',
'year-other' => '{0} години',
'year-past-one' => 'пред {0} година',
'year-past-other' => 'пред {0} години',
- 'year-short-future-one' => 'за {0} година',
- 'year-short-future-other' => 'за {0} години',
- 'year-short-past-one' => 'пред {0} година',
- 'year-short-past-other' => 'пред {0} години',
-);
+ 'year-short-future-one' => 'за {0} год.',
+ 'year-short-future-other' => 'за {0} год.',
+ 'year-short-past-one' => 'пред {0} год.',
+ 'year-short-past-other' => 'пред {0} год.',
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesMl.php b/MLEB/cldr/CldrNames/CldrNamesMl.php
index a2e8d9ba..761ae36c 100644
--- a/MLEB/cldr/CldrNames/CldrNamesMl.php
+++ b/MLEB/cldr/CldrNames/CldrNamesMl.php
@@ -1,20 +1,20 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'അഫാർ',
'ab' => 'അബ്‌ഖാസിയൻ',
'ace' => 'അചിനീസ്',
'ach' => 'അകോലി',
- 'ada' => 'അഡാങ്ഗമി',
+ 'ada' => 'അഡാങ്‌മി',
'ady' => 'അഡൈഗേ',
'ae' => 'അവസ്റ്റാൻ',
'af' => 'ആഫ്രിക്കാൻസ്',
'afh' => 'ആഫ്രിഹിലി',
'agq' => 'ആഘേം',
- 'ain' => 'അയിനു',
+ 'ain' => 'ഐനു',
'ak' => 'അകാൻ‌',
'akk' => 'അക്കാഡിയൻ',
- 'ale' => 'അലൈട്ട്',
+ 'ale' => 'അലൂട്ട്',
'alt' => 'തെക്കൻ അൾത്തായി',
'am' => 'അംഹാരിക്',
'an' => 'അരഗോണീസ്',
@@ -22,15 +22,15 @@ $languageNames = array(
'anp' => 'ആൻഗിക',
'ar' => 'അറബിക്',
'ar-001' => 'ആധുനിക സ്റ്റാൻഡേർഡ് അറബിക്',
- 'arc' => 'അരമായഭാഷ',
+ 'arc' => 'അരമായ',
'arn' => 'മാപുചി',
- 'arp' => 'അരപാഹോ',
+ 'arp' => 'അറാപഹോ',
'arw' => 'അറാവക്',
'as' => 'ആസ്സാമീസ്',
'asa' => 'ആസു',
'ast' => 'ഓസ്‌ട്രിയൻ',
'av' => 'അവാരിക്',
- 'awa' => 'അവധി',
+ 'awa' => 'അവാധി',
'ay' => 'അയ്മാറ',
'az' => 'അസർബൈജാനി',
'ba' => 'ബഷ്ഖിർ',
@@ -45,7 +45,8 @@ $languageNames = array(
'bez' => 'ബെനാ',
'bfd' => 'ബാഫട്ട്',
'bg' => 'ബൾഗേറിയൻ',
- 'bho' => 'ഭോജ്‌പൂരി',
+ 'bgn' => 'പശ്ചിമ ബലൂചി',
+ 'bho' => 'ഭോജ്‌പുരി',
'bi' => 'ബിസ്‌ലാമ',
'bik' => 'ബികോൽ',
'bin' => 'ബിനി',
@@ -72,21 +73,22 @@ $languageNames = array(
'ce' => 'ചെചൻ',
'ceb' => 'സെബുവാനോ',
'cgg' => 'ചിഗ',
- 'ch' => 'കമോറോ',
+ 'ch' => 'ചമോറോ',
'chb' => 'ചിബ്ച',
- 'chg' => 'ചഗതൈ',
+ 'chg' => 'ഷാഗതായ്',
'chk' => 'ചൂകീസ്',
'chm' => 'മാരി',
- 'chn' => 'ചിനൂഗ്-ജാർഗൺ',
+ 'chn' => 'ചിനൂഗ് ജാർഗൺ',
'cho' => 'ചോക്റ്റാവ്',
'chp' => 'ചിപേവ്യൻ',
'chr' => 'ഷെരോക്കി',
- 'chy' => 'ചിയേന്നേ',
- 'ckb' => 'സൊറാനി കുർദിഷ്',
+ 'chy' => 'ഷായാൻ',
+ 'ckb' => 'സെൻട്രൽ കുർദിഷ്',
'co' => 'കോർസിക്കൻ',
'cop' => 'കോപ്റ്റിക്',
'cr' => 'ക്രീ',
'crh' => 'ക്രിമിയൻ ടർക്കിഷ്',
+ 'crs' => 'സെഷൽവ ക്രിയോൾ ഫ്രഞ്ച്',
'cs' => 'ചെക്ക്',
'csb' => 'കാഷുബിയാൻ',
'cu' => 'ചർച്ച് സ്ലാവിക്',
@@ -99,7 +101,7 @@ $languageNames = array(
'de' => 'ജർമ്മൻ',
'de-at' => 'ഓസ്‌ട്രിയൻ ജർമൻ',
'de-ch' => 'സ്വിസ് ഹൈ ജർമൻ',
- 'del' => 'ദലവാരെ',
+ 'del' => 'ദെലവേർ',
'den' => 'സ്ലേവ്',
'dgr' => 'ഡോഗ്രിബ്',
'din' => 'ദിൻക',
@@ -114,7 +116,7 @@ $languageNames = array(
'dz' => 'സോങ്ക',
'dzg' => 'ഡാസാഗ',
'ebu' => 'എംബു',
- 'ee' => 'ഇവ്',
+ 'ee' => 'യൂവ്',
'efi' => 'എഫിക്',
'egy' => 'പ്രാചീന ഈജിപ്ഷ്യൻ',
'eka' => 'എകാജുക്',
@@ -136,7 +138,7 @@ $languageNames = array(
'ewo' => 'എവോൻഡോ',
'fa' => 'പേർഷ്യൻ',
'fan' => 'ഫങ്',
- 'fat' => 'ഫിലിപ്പീനോ',
+ 'fat' => 'ഫാന്റി',
'ff' => 'ഫുല',
'fi' => 'ഫിന്നിഷ്',
'fil' => 'ഫിലിപ്പിനോ',
@@ -146,6 +148,7 @@ $languageNames = array(
'fr' => 'ഫ്രഞ്ച്',
'fr-ca' => 'കനേഡിയൻ ഫ്രഞ്ച്',
'fr-ch' => 'സ്വിസ് ഫ്രഞ്ച്',
+ 'frc' => 'കേജൺ ഫ്രഞ്ച്',
'frm' => 'മദ്ധ്യ ഫ്രഞ്ച്',
'fro' => 'പഴയ ഫ്രഞ്ച്',
'frr' => 'നോർത്തേൻ ഫ്രിഷ്യൻ',
@@ -155,46 +158,49 @@ $languageNames = array(
'ga' => 'ഐറിഷ്',
'gaa' => 'ഗാ',
'gag' => 'ഗാഗൂസ്',
+ 'gan' => 'ഗാൻ ചൈനീസ്',
'gay' => 'ഗയൊ',
'gba' => 'ഗബ്യ',
'gd' => 'സ്കോട്ടിഷ് ഗൈലിക്',
'gez' => 'ഗീസ്',
- 'gil' => 'ഗിൽബർസേ',
+ 'gil' => 'ഗിൽബർട്ടീസ്',
'gl' => 'ഗലീഷ്യൻ',
'gmh' => 'മദ്ധ്യ ഉച്ച ജർമൻ',
'gn' => 'ഗ്വരനീ',
- 'goh' => 'പ്രാചീന ഉച്ച ജർമൻ',
+ 'goh' => 'ഓൾഡ് ഹൈ ജർമൻ',
'gon' => 'ഗോണ്ഡി',
- 'gor' => 'ഗൊറോൻറാലോ',
+ 'gor' => 'ഗൊറോന്റാലോ',
'got' => 'ഗോഥിക്ക്',
'grb' => 'ഗ്രബൊ',
- 'grc' => 'പുരാതന യവന ഭാഷ',
+ 'grc' => 'പുരാതന ഗ്രീക്ക്',
'gsw' => 'സ്വിസ് ജർമ്മൻ',
'gu' => 'ഗുജറാത്തി',
'guz' => 'ഗുസീ',
'gv' => 'മാൻസ്',
- 'gwi' => 'ഗ്വിച്ച് ഇൻ',
+ 'gwi' => 'ഗ്വിച്ചിൻ',
'ha' => 'ഹൗസ',
'hai' => 'ഹൈഡ',
+ 'hak' => 'ഹാക്ക ചൈനീസ്',
'haw' => 'ഹവായിയൻ',
'he' => 'ഹീബ്രു',
'hi' => 'ഹിന്ദി',
'hil' => 'ഹിലിഗയ്നോൺ',
- 'hit' => 'ഹിറ്റൈറ്റേ',
+ 'hit' => 'ഹിറ്റൈറ്റ്',
'hmn' => 'മോങ്',
'ho' => 'ഹിരി മോതു',
'hr' => 'ക്രൊയേഷ്യൻ',
'hsb' => 'അപ്പർ സോർബിയൻ',
- 'ht' => 'ഹെയ്‌തിയൻ',
+ 'hsn' => 'ഷ്യാങ് ചൈനീസ്',
+ 'ht' => 'ഹെയ്‌തിയൻ ക്രിയോൾ',
'hu' => 'ഹംഗേറിയൻ',
'hup' => 'ഹൂപ',
'hy' => 'അർമേനിയൻ',
'hz' => 'ഹെരേരൊ',
- 'ia' => 'ഇന്റർലിൻ‌ഗ്വാ',
+ 'ia' => 'ഇന്റർലിംഗ്വ',
'iba' => 'ഇബാൻ',
'ibb' => 'ഇബീബിയോ',
- 'id' => 'ഇൻഡോനേഷ്യൻ',
- 'ie' => 'ഇന്റർലിംഗ്വ',
+ 'id' => 'ഇന്തോനേഷ്യൻ',
+ 'ie' => 'ഇന്റർലിംഗ്വേ',
'ig' => 'ഇഗ്ബോ',
'ii' => 'ഷുവാൻയി',
'ik' => 'ഇനുപിയാക്',
@@ -204,7 +210,7 @@ $languageNames = array(
'is' => 'ഐസ്‌ലാൻഡിക്',
'it' => 'ഇറ്റാലിയൻ',
'iu' => 'ഇനുക്റ്റിറ്റട്ട്',
- 'ja' => 'ജപ്പാനീസ്',
+ 'ja' => 'ജാപ്പനീസ്',
'jbo' => 'ലോജ്ബാൻ',
'jgo' => 'ഗോമ്പ',
'jmc' => 'മചേം',
@@ -231,11 +237,11 @@ $languageNames = array(
'ki' => 'കികൂയു',
'kj' => 'ക്വാന്യമ',
'kk' => 'കസാഖ്',
- 'kkj' => 'കക്കോ',
+ 'kkj' => 'കാകോ',
'kl' => 'കലാല്ലിസട്ട്',
'kln' => 'കലെഞ്ഞിൻ',
'km' => 'ഖമെർ',
- 'kmb' => 'ക്ലിംഗൻ',
+ 'kmb' => 'കിംബുണ്ടു',
'kn' => 'കന്നഡ',
'ko' => 'കൊറിയൻ',
'koi' => 'കോമി-പെർമ്യാക്ക്',
@@ -248,8 +254,8 @@ $languageNames = array(
'kru' => 'കുരുഖ്',
'ks' => 'കാശ്‌മീരി',
'ksb' => 'ഷംഭാള',
- 'ksf' => 'ഭാഫിയ',
- 'ksh' => 'കൊളോഞ്ഞിയൻ',
+ 'ksf' => 'ബാഫിയ',
+ 'ksh' => 'കൊളോണിയൻ',
'ku' => 'കുർദ്ദിഷ്',
'kum' => 'കുമൈക്',
'kut' => 'കുതേനൈ',
@@ -269,7 +275,9 @@ $languageNames = array(
'ln' => 'ലിംഗാല',
'lo' => 'ലാവോ',
'lol' => 'മോങ്കോ',
+ 'lou' => 'ലൂസിയാന ക്രിയോൾ',
'loz' => 'ലൊസി',
+ 'lrc' => 'വടക്കൻ ലൂറി',
'lt' => 'ലിത്വാനിയൻ',
'lu' => 'ലുബ-കറ്റംഗ',
'lua' => 'ലൂബ-ലുലുവ',
@@ -303,7 +311,7 @@ $languageNames = array(
'mk' => 'മാസിഡോണിയൻ',
'ml' => 'മലയാളം',
'mn' => 'മംഗോളിയൻ',
- 'mnc' => 'മൻചു',
+ 'mnc' => 'മാൻ‌ചു',
'mni' => 'മണിപ്പൂരി',
'moh' => 'മോഹാക്',
'mos' => 'മൊസ്സി',
@@ -318,12 +326,15 @@ $languageNames = array(
'my' => 'ബർമീസ്',
'mye' => 'മയീൻ',
'myv' => 'ഏഴ്സ്യ',
+ 'mzn' => 'മസന്ററാനി',
'na' => 'നൗറു',
+ 'nan' => 'മിൻ നാൻ ചൈനീസ്',
'nap' => 'നെപ്പോളിറ്റാൻ',
'naq' => 'നാമ',
'nb' => 'നോർവീജിയൻ ബുക്‌മൽ',
'nd' => 'നോർത്ത് ഡെബിൾ',
'nds' => 'ലോ ജർമൻ',
+ 'nds-nl' => 'ലോ സാക്സൺ',
'ne' => 'നേപ്പാളി',
'new' => 'നേവാരി',
'ng' => 'ഡോങ്ക',
@@ -336,12 +347,12 @@ $languageNames = array(
'nnh' => 'ഗീംബൂൺ',
'no' => 'നോർവീജിയൻ',
'nog' => 'നോഗൈ',
- 'non' => 'പഴയ പേർഷ്യൻ',
+ 'non' => 'പഴയ നോഴ്‌സ്',
'nqo' => 'ഇൻകോ',
'nr' => 'ദക്ഷിണ നെഡിബിൾ',
'nso' => 'നോർത്തേൻ സോതോ',
'nus' => 'നുവേർ',
- 'nv' => 'നവാഹൊ',
+ 'nv' => 'നവാജോ',
'nwc' => 'ക്ലാസിക്കൽ നേവാരി',
'ny' => 'ന്യൻജ',
'nym' => 'ന്യാംവേസി',
@@ -359,15 +370,17 @@ $languageNames = array(
'pag' => 'പങ്കാസിനൻ',
'pal' => 'പാഹ്ലവി',
'pam' => 'പാംപൻഗ',
- 'pap' => 'പാപിയാമെൻറൊ',
+ 'pap' => 'പാപിയാമെന്റൊ',
'pau' => 'പലാവുൻ',
- 'peo' => 'പ്രാചീന പേർഷ്യൻ',
+ 'pcm' => 'നൈജീരിയൻ പിഡ്‌ഗിൻ',
+ 'peo' => 'പഴയ പേർഷ്യൻ',
'phn' => 'ഫീനിഷ്യൻ',
'pi' => 'പാലി',
'pl' => 'പോളിഷ്',
'pon' => 'പൊൻപിയൻ',
- 'pro' => 'പ്രൊവൻഷ്ൽ',
- 'ps' => 'പഷ്തു',
+ 'prg' => 'പ്രഷ്യൻ',
+ 'pro' => 'പഴയ പ്രൊവൻഷ്ൽ',
+ 'ps' => 'പഷ്‌തോ',
'pt' => 'പോർച്ചുഗീസ്',
'pt-br' => 'ബ്രസീലിയൻ പോർച്ചുഗീസ്',
'pt-pt' => 'യൂറോപ്യൻ പോർച്ചുഗീസ്',
@@ -381,7 +394,7 @@ $languageNames = array(
'ro' => 'റൊമാനിയൻ',
'ro-md' => 'മോൾഡാവിയൻ',
'rof' => 'റോംബോ',
- 'rom' => 'റോമനി',
+ 'rom' => 'റൊമാനി',
'ru' => 'റഷ്യൻ',
'rup' => 'ആരോമാനിയൻ',
'rw' => 'കിന്യാർവാണ്ട',
@@ -399,25 +412,26 @@ $languageNames = array(
'scn' => 'സിസിലിയൻ',
'sco' => 'സ്കോട്സ്',
'sd' => 'സിന്ധി',
+ 'sdh' => 'തെക്കൻ കുർദ്ദിഷ്',
'se' => 'വടക്കൻ സമി',
'see' => 'സെനേക',
'seh' => 'സേന',
'sel' => 'സെൽകപ്',
'ses' => 'കൊയ്റാബൊറോ സെന്നി',
'sg' => 'സാംഗോ',
- 'sga' => 'പ്രാചീന ഐറിഷ്',
+ 'sga' => 'പഴയ ഐറിഷ്',
'sh' => 'സെർബോ-ക്രൊയേഷ്യൻ',
'shi' => 'താച്ചലിറ്റ്',
'shn' => 'ഷാൻ',
- 'shu' => 'ചാഡ് അറബി',
+ 'shu' => 'ചാഡിയൻ അറബി',
'si' => 'സിംഹള',
'sid' => 'സിഡാമോ',
'sk' => 'സ്ലോവാക്',
'sl' => 'സ്ലോവേനിയൻ',
'sm' => 'സമോവൻ',
- 'sma' => 'തെക്കൻ സാമി',
+ 'sma' => 'തെക്കൻ സമി',
'smj' => 'ലൂലീ സമി',
- 'smn' => 'ഇനാരി സാമി',
+ 'smn' => 'ഇനാരി സമി',
'sms' => 'സ്കോൾട്ട് സമി',
'sn' => 'ഷോണ',
'snk' => 'സോണിൻകെ',
@@ -430,14 +444,14 @@ $languageNames = array(
'ss' => 'സ്വാറ്റി',
'ssy' => 'സാഹോ',
'st' => 'തെക്കൻ സോതോ',
- 'su' => 'സുഡാനീസ്',
+ 'su' => 'സുണ്ടാനീസ്',
'suk' => 'സുകുമ',
'sus' => 'സുസു',
'sux' => 'സുമേരിയൻ',
'sv' => 'സ്വീഡിഷ്',
'sw' => 'സ്വാഹിലി',
+ 'sw-cd' => 'കോംഗോ സ്വാഹിലി',
'swb' => 'കൊമോറിയൻ',
- 'swc' => 'കോംഗോ സ്വാഹിലി',
'syc' => 'പുരാതന സുറിയാനിഭാഷ',
'syr' => 'സുറിയാനി',
'ta' => 'തമിഴ്',
@@ -457,17 +471,17 @@ $languageNames = array(
'tlh' => 'ക്ലിംഗോൺ',
'tli' => 'ലിംഗ്വിറ്റ്',
'tmh' => 'ടമഷേക്',
- 'tn' => 'ത്സ്വാന',
+ 'tn' => 'സ്വാന',
'to' => 'ടോംഗൻ',
'tog' => 'ന്യാസാ ഡോങ്ക',
'tpi' => 'ടോക് പിസിൻ',
'tr' => 'ടർക്കിഷ്',
'trv' => 'തരോക്കോ',
- 'ts' => 'ത്സോംഗ',
+ 'ts' => 'സോംഗ',
'tsi' => 'സിംഷ്യൻ',
'tt' => 'ടാട്ടർ',
'tum' => 'ടുംബുക',
- 'tvl' => 'തുവാലു',
+ 'tvl' => 'ടുവാലു',
'tw' => 'ട്വി',
'twq' => 'ടസവാക്ക്',
'ty' => 'താഹിതിയൻ',
@@ -486,13 +500,15 @@ $languageNames = array(
'vi' => 'വിയറ്റ്നാമീസ്',
'vo' => 'വോളാപുക്',
'vot' => 'വോട്ടിക്',
- 'vun' => 'വുഞ്ജോ',
+ 'vun' => 'വുൻജോ',
'wa' => 'വല്ലൂൺ',
'wae' => 'വാൾസർ',
- 'wal' => 'വലമൊ',
+ 'wal' => 'വൊലൈറ്റ',
'war' => 'വാരേയ്',
'was' => 'വാഷൊ',
+ 'wbp' => 'വൂൾപിരി',
'wo' => 'വൊളോഫ്',
+ 'wuu' => 'വു ചൈനീസ്',
'xal' => 'കൽമൈക്',
'xh' => 'ഖോസ',
'xog' => 'സോഗോ',
@@ -507,17 +523,17 @@ $languageNames = array(
'zap' => 'സാപ്പോടെക്',
'zbl' => 'ബ്ലിസ്സിംബൽസ്',
'zen' => 'സെനഗ',
- 'zgh' => 'മൊറോക്കൻ സാധാരണ താമസൈറ്റ്',
+ 'zgh' => 'സ്റ്റാൻഡേർഡ് മൊറോക്കൻ റ്റാമസിയറ്റ്',
'zh' => 'ചൈനീസ്',
- 'zh-hans' => 'ചീനഭാഷ-ലളിതലിപി',
- 'zh-hant' => 'ചീനഭാഷ-പരമ്പരാഗതലിപി',
+ 'zh-hans' => 'ലളിതമാക്കിയ ചൈനീസ്',
+ 'zh-hant' => 'പരമ്പരാഗത ചൈനീസ്',
'zu' => 'സുലു',
'zun' => 'സുനി',
'zxx' => 'ഭാഷാപരമായ ഉള്ളടക്കമൊന്നുമില്ല',
'zza' => 'സാസാ',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'ADP' => 'അൻഡോറൻ പെസെയ്റ്റ',
'AED' => 'യുണൈറ്റഡ് അറബ് എമിറേറ്റ്സ് ദിർഹം',
'AFA' => 'അഫ്ഘാനി (1927–2002)',
@@ -539,7 +555,7 @@ $currencyNames = array(
'AZN' => 'അസർബൈജാനി മനത്',
'BAD' => 'ബോസ്നിയ-ഹെർസഗോവിന ദിനാർ',
'BAM' => 'ബോസ്‌നിയ-ഹെർസഗോവിന കൺവേർട്ടബിൾ മാർക്ക്',
- 'BBD' => 'ബാർബഡോസ് ഡോളർ',
+ 'BBD' => 'ബാർബേഡിയൻ ഡോളർ',
'BDT' => 'ബംഗ്ലാദേശി ടാക്ക',
'BEC' => 'ബെൽജിയൻ ഫ്രാങ്ക് (കൈമാറ്റം ചെയ്യാവുന്നത്)',
'BEF' => 'ബെൽജിയൻ ഫ്രാങ്ക്',
@@ -564,7 +580,8 @@ $currencyNames = array(
'BUK' => 'ബർമീസ് ചാറ്റ്',
'BWP' => 'ബോട്‌സ്വാനൻ പ്യുല',
'BYB' => 'ബെലാറഷ്യൻ ന്യൂ റൂബിൾ (1994–1999)',
- 'BYR' => 'ബെലാറുഷ്യൻ റൂബിൾ',
+ 'BYN' => 'ബെലാറുഷ്യൻ റൂബിൾ',
+ 'BYR' => 'ബെലാറുഷ്യൻ റൂബിൾ (2000–2016)',
'BZD' => 'ബെലീസ് ഡോളർ',
'CAD' => 'കനേഡിയൻ ഡോളർ',
'CDF' => 'കോങ്കളീസ് ഫ്രാങ്ക്',
@@ -573,6 +590,7 @@ $currencyNames = array(
'CHW' => 'WIR ഫ്രാങ്ക്',
'CLF' => 'ചിലിയൻ യൂണിഡാഡ്സ് ഡി ഫോമെൻറോ',
'CLP' => 'ചിലിയൻ പെസോ',
+ 'CNH' => 'ചൈനീസ് യുവാൻ (ഓഫ്‌ഷോർ)',
'CNY' => 'ചൈനീസ് യുവാൻ',
'COP' => 'കൊളംബിയൻ പെസോ',
'COU' => 'യൂണിഡാഡ് ഡി വാലർ റിയൽ',
@@ -604,7 +622,7 @@ $currencyNames = array(
'FJD' => 'ഫിജിയൻ ഡോളർ',
'FKP' => 'ഫാക്ക്‌ലാന്റ് ദ്വീപുകളുടെ പൗണ്ട്',
'FRF' => 'ഫ്രാങ്ക്',
- 'GBP' => 'ബ്രിട്ടീഷ് പൗണ്ട് സ്‌റ്റെർലിംഗ്',
+ 'GBP' => 'ബ്രിട്ടീഷ് പൗണ്ട്',
'GEK' => 'ജോർ‍ജ്ജിയൻ ക്യൂപോൺ ലാരിറ്റ്',
'GEL' => 'ജോർജ്ജിയൻ ലാറി',
'GHC' => 'ഘാന കെഡി (1979–2007)',
@@ -636,7 +654,7 @@ $currencyNames = array(
'ITL' => 'ഇറ്റാലിയൻ ലിറ',
'JMD' => 'ജമൈക്കൻ ഡോളർ',
'JOD' => 'ജോർദ്ദാനിയൻ ദിനാർ',
- 'JPY' => 'ജപ്പാനീസ് യെൻ',
+ 'JPY' => 'ജാപ്പനീസ് യെൻ',
'KES' => 'കെനിയൻ ഷില്ലിംഗ്',
'KGS' => 'കിർഗിസ്ഥാനി സോം',
'KHR' => 'കംബോഡിയൻ റീൽ',
@@ -645,7 +663,7 @@ $currencyNames = array(
'KRW' => 'ദക്ഷിണ കൊറിയൻ വോൺ',
'KWD' => 'കുവൈറ്റി ദിനാർ',
'KYD' => 'കേമാൻ ഐലൻഡ്‌സ് ഡോളർ',
- 'KZT' => 'കസാക്കിസ്ഥാൻ ടെംഗെ',
+ 'KZT' => 'കസാക്കിസ്ഥാനി ടെംഗെ',
'LAK' => 'ലാവോഷിയൻ കിപ്',
'LBP' => 'ലെബനീസ് പൗണ്ട്',
'LKR' => 'ശ്രീലങ്കൻ റുപ്പീ',
@@ -669,7 +687,8 @@ $currencyNames = array(
'MMK' => 'മ്യാൻമാർ ക്യാട്',
'MNT' => 'മംഗോളിയൻ തുഗ്രിക്',
'MOP' => 'മകാനീസ് പതാക്ക',
- 'MRO' => 'മൗറിറ്റേനിയൻ ഔഗിയ',
+ 'MRO' => 'മൗറിറ്റേനിയൻ ഔഗിയ (1973–2017)',
+ 'MRU' => 'മൗറിറ്റേനിയൻ ഔഗിയ',
'MTL' => 'മൽത്തീസ് ലിറ',
'MTP' => 'മൽത്തീസ് പൌണ്ട്',
'MUR' => 'മൗറീഷ്യൻ റുപ്പീ',
@@ -693,8 +712,8 @@ $currencyNames = array(
'OMR' => 'ഒമാനി റിയാൽ',
'PAB' => 'പനാമനിയൻ ബാൽബോവ',
'PEI' => 'പെറൂവിയൻ ഇൻറി',
- 'PEN' => 'പെറുവിയൻ ന്യൂവോ സോൾ',
- 'PES' => 'പെറൂവിയൻ സോൾ',
+ 'PEN' => 'പെറുവിയൻ സോൾ',
+ 'PES' => 'പെറൂവിയൻ സോൾ (1863–1965)',
'PGK' => 'പാപ്പുവ ന്യൂ ഗിനിയൻ കിന',
'PHP' => 'ഫിലിപ്പീനി പെസോ',
'PKR' => 'പാക്കിസ്ഥാനി റുപ്പീ',
@@ -726,14 +745,15 @@ $currencyNames = array(
'SRD' => 'സുരിനെയിമിസ് ഡോളർ',
'SRG' => 'സൂരിനാം ഗിൽഡർ',
'SSP' => 'ദക്ഷിണ സുഡാനീസ് പൗണ്ട്',
- 'STD' => 'സാവോ ടോമി ആൻഡ് പ്രിൻസിപെ ഡോബ്ര',
+ 'STD' => 'സാവോ ടോമി ആൻഡ് പ്രിൻസിപെ ഡോബ്ര (1977–2017)',
+ 'STN' => 'സാവോ ടോമി ആൻഡ് പ്രിൻസിപെ ഡോബ്ര',
'SUR' => 'സോവിയറ്റ് റൂബിൾ',
'SVC' => 'എൽ സാൽവഡോർ കോളൻ',
'SYP' => 'സിറിയൻ പൗണ്ട്',
'SZL' => 'സ്വാസി ലിലാംഗനി',
'THB' => 'തായ് ബട്ട്',
'TJR' => 'താജിക്കിസ്ഥാൻ റൂബിൾ',
- 'TJS' => 'താജിക്കിസ്ഥാനി സൊമോനി',
+ 'TJS' => 'താജിക്കിസ്ഥാനി സോംനി',
'TMM' => 'തുർക്മെനിസ്ഥാൻ മനത്',
'TMT' => 'തുർക്ക്‌മെനിസ്ഥാനി മനത്',
'TND' => 'ടുണീഷ്യൻ ദിനാർ',
@@ -754,13 +774,14 @@ $currencyNames = array(
'UYI' => 'ഉറുഗ്വേ പെയ്സോ എൻ യൂണിഡാഡ്സ്',
'UYP' => 'ഉറുഗ്വേ പെയ്സോ (1975–1993)',
'UYU' => 'ഉറുഗ്വേയൻ പെസോ',
- 'UZS' => 'ഉസ്‌ബെക്കിസ്ഥാൻ സോം',
+ 'UZS' => 'ഉസ്‌ബെക്കിസ്ഥാനി സോം',
'VEB' => 'വെനസ്വേലൻ ബോലിവർ (1871–2008)',
- 'VEF' => 'വെനിസ്വേലൻ ബൊളീവർ',
+ 'VEF' => 'വെനിസ്വേലൻ ബൊളീവർ (2008–2018)',
+ 'VES' => 'വെനിസ്വേലൻ ബൊളീവർ',
'VND' => 'വിയറ്റ്നാമീസ് ഡോങ്',
'VUV' => 'വന്വാതു വാതു',
'WST' => 'സമോവൻ താല',
- 'XAF' => 'CFA ഫ്രാങ്ക് BEAC',
+ 'XAF' => 'മദ്ധ്യ ആഫ്രിക്കൻ [CFA] ഫ്രാങ്ക്',
'XAG' => 'വെള്ളി',
'XAU' => 'സ്വർണ്ണം',
'XBA' => 'യൂറോപ്യൻ കോന്പസിറ്റ് യൂണിറ്റ്',
@@ -772,7 +793,7 @@ $currencyNames = array(
'XEU' => 'യൂറോപ്യൻ നാണയ യൂണിറ്റ്',
'XFO' => 'ഫ്രെഞ്ച് ഗോൾഡ് ഫ്രാങ്ക്',
'XFU' => 'ഫ്രെഞ്ച് UIC-ഫ്രാങ്ക്',
- 'XOF' => 'CFA ഫ്രാങ്ക് BCEAO',
+ 'XOF' => 'പശ്ചിമ ആഫ്രിക്കൻ [CFA] ഫ്രാങ്ക്',
'XPD' => 'പലാഡിയം',
'XPF' => 'CFP ഫ്രാങ്ക്',
'XPT' => 'പ്ലാറ്റിനം',
@@ -791,9 +812,9 @@ $currencyNames = array(
'ZRN' => 'സൈറിയൻ ന്യൂ സൈർ',
'ZRZ' => 'സൈറിയൻ സൈർ',
'ZWD' => 'സിംബാബ്‌വെ ഡോളർ',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'AED' => 'AED',
'AFN' => 'AFN',
'ALL' => 'ALL',
@@ -817,12 +838,14 @@ $currencySymbols = array(
'BSD' => 'BSD',
'BTN' => 'BTN',
'BWP' => 'BWP',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CA$',
'CDF' => 'CDF',
'CHF' => 'CHF',
'CLP' => 'CLP',
+ 'CNH' => 'CNH',
'CNY' => 'CN¥',
'COP' => 'COP',
'CRC' => 'CRC',
@@ -886,6 +909,7 @@ $currencySymbols = array(
'MNT' => 'MNT',
'MOP' => 'MOP',
'MRO' => 'MRO',
+ 'MRU' => 'MRU',
'MUR' => 'MUR',
'MVR' => 'MVR',
'MWK' => 'MWK',
@@ -923,6 +947,7 @@ $currencySymbols = array(
'SRD' => 'SRD',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'STN',
'SYP' => 'SYP',
'SZL' => 'SZL',
'THB' => '฿',
@@ -940,6 +965,7 @@ $currencySymbols = array(
'UYU' => 'UYU',
'UZS' => 'UZS',
'VEF' => 'VEF',
+ 'VES' => 'VES',
'VND' => '₫',
'VUV' => 'VUV',
'WST' => 'WST',
@@ -950,21 +976,20 @@ $currencySymbols = array(
'YER' => 'YER',
'ZAR' => 'ZAR',
'ZMW' => 'ZMW',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'അസൻഷൻ ദ്വീപ്',
- 'AD' => 'അന്റോറ',
+ 'AD' => 'അൻഡോറ',
'AE' => 'യുണൈറ്റഡ് അറബ് എമിറൈറ്റ്‌സ്',
'AF' => 'അഫ്‌ഗാനിസ്ഥാൻ',
'AG' => 'ആൻറിഗ്വയും ബർബുഡയും',
'AI' => 'ആൻഗ്വില്ല',
'AL' => 'അൽബേനിയ',
'AM' => 'അർമേനിയ',
- 'AN' => 'നെതർലൻഡ്സ് ആൻറിലിസ്',
'AO' => 'അംഗോള',
- 'AQ' => 'അൻറാർട്ടിക്ക',
- 'AR' => 'അർജൻറീന',
+ 'AQ' => 'അന്റാർട്ടിക്ക',
+ 'AR' => 'അർജന്റീന',
'AS' => 'അമേരിക്കൻ സമോവ',
'AT' => 'ഓസ്ട്രിയ',
'AU' => 'ഓസ്‌ട്രേലിയ',
@@ -975,7 +1000,7 @@ $countryNames = array(
'BB' => 'ബാർബഡോസ്',
'BD' => 'ബംഗ്ലാദേശ്',
'BE' => 'ബെൽജിയം',
- 'BF' => 'ബുർക്കിനാ ഫാസോ',
+ 'BF' => 'ബർക്കിന ഫാസോ',
'BG' => 'ബൾഗേറിയ',
'BH' => 'ബഹ്റിൻ',
'BI' => 'ബറുണ്ടി',
@@ -984,7 +1009,7 @@ $countryNames = array(
'BM' => 'ബർമുഡ',
'BN' => 'ബ്രൂണൈ',
'BO' => 'ബൊളീവിയ',
- 'BQ' => 'ബൊണെയ്ർ, സിന്റ് യുസ്റ്റേഷ്യസ്, സാബ എന്നിവ',
+ 'BQ' => 'കരീബിയൻ നെതർലാൻഡ്സ്',
'BR' => 'ബ്രസീൽ',
'BS' => 'ബഹാമാസ്',
'BT' => 'ഭൂട്ടാൻ',
@@ -993,9 +1018,9 @@ $countryNames = array(
'BY' => 'ബെലറൂസ്',
'BZ' => 'ബെലീസ്',
'CA' => 'കാനഡ',
- 'CC' => 'കോക്കസ് ദ്വീപുകൾ',
+ 'CC' => 'കോക്കസ് (കീലിംഗ്) ദ്വീപുകൾ',
'CD' => 'കോംഗോ - കിൻഷാസ',
- 'CF' => 'സെൻട്രൽ ആഫ്രിക്കൻ റിപ്പബ്ലിക്',
+ 'CF' => 'സെൻട്രൽ ആഫ്രിക്കൻ റിപ്പബ്ലിക്ക്',
'CG' => 'കോംഗോ - ബ്രാസവില്ലി',
'CH' => 'സ്വിറ്റ്സർലാൻഡ്',
'CI' => 'കോട്ട് ഡി വാർ',
@@ -1007,17 +1032,17 @@ $countryNames = array(
'CP' => 'ക്ലിപ്പെർട്ടൻ ദ്വീപ്',
'CR' => 'കോസ്റ്ററിക്ക',
'CU' => 'ക്യൂബ',
- 'CV' => 'കേപ്പ് വെർദെ',
+ 'CV' => 'കേപ്പ് വേർഡ്',
'CW' => 'കുറാകാവോ',
'CX' => 'ക്രിസ്മസ് ദ്വീപ്',
'CY' => 'സൈപ്രസ്',
- 'CZ' => 'ചെക്ക് റിപ്പബ്ലിക്',
- 'DE' => 'ജർമനി',
+ 'CZ' => 'ചെക്കിയ',
+ 'DE' => 'ജർമ്മനി',
'DG' => 'ഡീഗോ ഗ്രാഷ്യ',
- 'DJ' => 'ദിജിബൗട്ടി',
+ 'DJ' => 'ജിബൂത്തി',
'DK' => 'ഡെൻമാർക്ക്',
'DM' => 'ഡൊമിനിക്ക',
- 'DO' => 'ഡൊമിനിക്കൻ റിപ്പബ്ലിക്',
+ 'DO' => 'ഡൊമിനിക്കൻ റിപ്പബ്ലിക്ക്',
'DZ' => 'അൾജീരിയ',
'EA' => 'സെയൂത്ത ആൻഡ് മെലിയ',
'EC' => 'ഇക്വഡോർ',
@@ -1028,6 +1053,7 @@ $countryNames = array(
'ES' => 'സ്‌പെയിൻ',
'ET' => 'എത്യോപ്യ',
'EU' => 'യൂറോപ്യൻ യൂണിയൻ',
+ 'EZ' => 'യൂറോസോൺ',
'FI' => 'ഫിൻലാൻഡ്',
'FJ' => 'ഫിജി',
'FK' => 'ഫാക്ക്‌ലാന്റ് ദ്വീപുകൾ',
@@ -1053,7 +1079,7 @@ $countryNames = array(
'GU' => 'ഗ്വാം',
'GW' => 'ഗിനിയ-ബിസൗ',
'GY' => 'ഗയാന',
- 'HK' => 'ഹോങ്കോങ്ങ്',
+ 'HK' => 'ഹോങ്കോങ്',
'HM' => 'ഹിയേർഡും മക്‌ഡൊണാൾഡ് ദ്വീപുകളും',
'HN' => 'ഹോണ്ടുറാസ്',
'HR' => 'ക്രൊയേഷ്യ',
@@ -1061,7 +1087,7 @@ $countryNames = array(
'HU' => 'ഹംഗറി',
'IC' => 'കാനറി ദ്വീപുകൾ',
'ID' => 'ഇന്തോനേഷ്യ',
- 'IE' => 'അയർലാൻഡ്',
+ 'IE' => 'അയർലൻഡ്',
'IL' => 'ഇസ്രായേൽ',
'IM' => 'ഐൽ ഓഫ് മാൻ',
'IN' => 'ഇന്ത്യ',
@@ -1083,11 +1109,11 @@ $countryNames = array(
'KP' => 'ഉത്തരകൊറിയ',
'KR' => 'ദക്ഷിണകൊറിയ',
'KW' => 'കുവൈറ്റ്',
- 'KY' => 'കേമാൻ ദ്വീപുകൾ',
+ 'KY' => 'കേയ്മാൻ ദ്വീപുകൾ',
'KZ' => 'കസാഖിസ്ഥാൻ',
'LA' => 'ലാവോസ്',
'LB' => 'ലെബനൻ',
- 'LC' => 'സെൻറ് ലൂസിയ',
+ 'LC' => 'സെന്റ് ലൂസിയ',
'LI' => 'ലിച്ചൺസ്റ്റൈൻ',
'LK' => 'ശ്രീലങ്ക',
'LR' => 'ലൈബീരിയ',
@@ -1100,9 +1126,9 @@ $countryNames = array(
'MC' => 'മൊണാക്കോ',
'MD' => 'മൾഡോവ',
'ME' => 'മോണ്ടെനെഗ്രോ',
- 'MF' => 'സെൻറ് മാർട്ടിൻ',
+ 'MF' => 'സെന്റ് മാർട്ടിൻ',
'MG' => 'മഡഗാസ്കർ',
- 'MH' => 'മാർഷൽ‍‍ ദ്വീപുകൾ',
+ 'MH' => 'മാർഷൽ ദ്വീപുകൾ',
'MK' => 'മാസിഡോണിയ',
'ML' => 'മാലി',
'MM' => 'മ്യാൻമാർ (ബർമ്മ)',
@@ -1120,7 +1146,7 @@ $countryNames = array(
'MY' => 'മലേഷ്യ',
'MZ' => 'മൊസാംബിക്ക്',
'NA' => 'നമീബിയ',
- 'NC' => 'പുതിയ കാലിഡോണിയ',
+ 'NC' => 'ന്യൂ കാലിഡോണിയ',
'NE' => 'നൈജർ',
'NF' => 'നോർഫോക് ദ്വീപ്',
'NG' => 'നൈജീരിയ',
@@ -1136,12 +1162,12 @@ $countryNames = array(
'PE' => 'പെറു',
'PF' => 'ഫ്രഞ്ച് പോളിനേഷ്യ',
'PG' => 'പാപ്പുവ ന്യൂ ഗിനിയ',
- 'PH' => 'ഫിലിപ്പൈൻസ്',
+ 'PH' => 'ഫിലിപ്പീൻസ്',
'PK' => 'പാക്കിസ്ഥാൻ',
'PL' => 'പോളണ്ട്',
'PM' => 'സെന്റ് പിയറിയും മിക്കലണും',
'PN' => 'പിറ്റ്‌കെയ്‌ൻ ദ്വീപുകൾ',
- 'PR' => 'പ്യൂർട്ടോ റിക്കോ',
+ 'PR' => 'പോർട്ടോ റിക്കോ',
'PS' => 'പലസ്‌തീൻ',
'PT' => 'പോർച്ചുഗൽ',
'PW' => 'പലാവു',
@@ -1154,12 +1180,12 @@ $countryNames = array(
'RU' => 'റഷ്യ',
'RW' => 'റുവാണ്ട',
'SA' => 'സൗദി അറേബ്യ',
- 'SB' => 'സോളമൻ‍ ദ്വീപുകൾ',
- 'SC' => 'സെയ്‌ഷെൽസ്',
+ 'SB' => 'സോളമൻ ദ്വീപുകൾ',
+ 'SC' => 'സീഷെൽസ്',
'SD' => 'സുഡാൻ',
'SE' => 'സ്വീഡൻ',
- 'SG' => 'സിംഗപ്പുർ',
- 'SH' => 'സെൻറ് ഹെലീന',
+ 'SG' => 'സിംഗപ്പൂർ',
+ 'SH' => 'സെന്റ് ഹെലീന',
'SI' => 'സ്ലോവേനിയ',
'SJ' => 'സ്വാൽബാഡും ജാൻ മായേനും',
'SK' => 'സ്ലോവാക്യ',
@@ -1167,13 +1193,13 @@ $countryNames = array(
'SM' => 'സാൻ മറിനോ',
'SN' => 'സെനഗൽ',
'SO' => 'സോമാലിയ',
- 'SR' => 'സുരിനെയിം',
+ 'SR' => 'സുരിനാം',
'SS' => 'ദക്ഷിണ സുഡാൻ',
'ST' => 'സാവോ ടോമും പ്രിൻസിപെയും',
'SV' => 'എൽ സാൽവദോർ',
'SX' => 'സിന്റ് മാർട്ടെൻ',
'SY' => 'സിറിയ',
- 'SZ' => 'സ്വാസിലാൻറ്',
+ 'SZ' => 'സ്വാസിലാന്റ്',
'TA' => 'ട്രസ്റ്റൻ ഡ കൂന',
'TC' => 'ടർക്ക്‌സും കെയ്‌ക്കോ ദ്വീപുകളും',
'TD' => 'ഛാഡ്',
@@ -1194,6 +1220,7 @@ $countryNames = array(
'UA' => 'ഉക്രെയ്‌ൻ',
'UG' => 'ഉഗാണ്ട',
'UM' => 'യു.എസ്. ദ്വീപസമൂഹങ്ങൾ',
+ 'UN' => 'യുഎൻ',
'US' => 'യു.എസ്',
'UY' => 'ഉറുഗ്വേ',
'UZ' => 'ഉസ്‌ബെക്കിസ്ഥാൻ',
@@ -1212,9 +1239,11 @@ $countryNames = array(
'ZA' => 'ദക്ഷിണാഫ്രിക്ക',
'ZM' => 'സാംബിയ',
'ZW' => 'സിംബാബ്‌വേ',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-one' => '{0} നൂറ്റാണ്ട്',
+ 'century-other' => '{0} നൂറ്റാണ്ടുകൾ',
'day-future-one' => '{0} ദിവസത്തിൽ',
'day-future-other' => '{0} ദിവസത്തിൽ',
'day-narrow-future-one' => '{0} ദിവസത്തിൽ',
@@ -1229,6 +1258,18 @@ $timeUnits = array(
'day-short-future-other' => '{0} ദിവസത്തിൽ',
'day-short-past-one' => '{0} ദിവസം മുമ്പ്',
'day-short-past-other' => '{0} ദിവസം മുമ്പ്',
+ 'fri-future-one' => '{0} വെള്ളിയാഴ്ചയിൽ',
+ 'fri-future-other' => '{0} വെള്ളിയാഴ്ചയിൽ',
+ 'fri-narrow-future-one' => '{0} വെള്ളിയാഴ്ചയിൽ',
+ 'fri-narrow-future-other' => '{0} വെള്ളിയാഴ്ചയിൽ',
+ 'fri-narrow-past-one' => '{0} വെള്ളിയാഴ്ച മുമ്പ്',
+ 'fri-narrow-past-other' => '{0} വെള്ളിയാഴ്ച മുമ്പ്',
+ 'fri-past-one' => '{0} വെള്ളിയാഴ്ച മുമ്പ്',
+ 'fri-past-other' => '{0} വെള്ളിയാഴ്ച മുമ്പ്',
+ 'fri-short-future-one' => '{0} വെള്ളിയാഴ്ചയിൽ',
+ 'fri-short-future-other' => '{0} വെള്ളിയാഴ്ചയിൽ',
+ 'fri-short-past-one' => '{0} വെള്ളിയാഴ്ച മുമ്പ്',
+ 'fri-short-past-other' => '{0} വെള്ളിയാഴ്ച മുമ്പ്',
'hour-future-one' => '{0} മണിക്കൂറിൽ',
'hour-future-other' => '{0} മണിക്കൂറിൽ',
'hour-narrow-future-one' => '{0} മണിക്കൂറിൽ',
@@ -1261,6 +1302,18 @@ $timeUnits = array(
'minute-short-future-other' => '{0} മിനിറ്റിൽ',
'minute-short-past-one' => '{0} മിനിറ്റ് മുമ്പ്',
'minute-short-past-other' => '{0} മിനിറ്റ് മുമ്പ്',
+ 'mon-future-one' => '{0} തിങ്കളാഴ്ചയിൽ',
+ 'mon-future-other' => '{0} തിങ്കളാഴ്ചയിൽ',
+ 'mon-narrow-future-one' => '{0} തിങ്കളാഴ്ചയിൽ',
+ 'mon-narrow-future-other' => '{0} തിങ്കളാഴ്ചയിൽ',
+ 'mon-narrow-past-one' => '{0} തിങ്കളാഴ്ച മുമ്പ്',
+ 'mon-narrow-past-other' => '{0} തിങ്കളാഴ്ച മുമ്പ്',
+ 'mon-past-one' => '{0} തിങ്കളാഴ്ച മുമ്പ്',
+ 'mon-past-other' => '{0} തിങ്കളാഴ്ച മുമ്പ്',
+ 'mon-short-future-one' => '{0} തിങ്കളാഴ്ചയിൽ',
+ 'mon-short-future-other' => '{0} തിങ്കളാഴ്ചയിൽ',
+ 'mon-short-past-one' => '{0} തിങ്കളാഴ്ച മുമ്പ്',
+ 'mon-short-past-other' => '{0} തിങ്കളാഴ്ച മുമ്പ്',
'month-future-one' => '{0} മാസത്തിൽ',
'month-future-other' => '{0} മാസത്തിൽ',
'month-narrow-future-one' => '{0} മാസത്തിൽ',
@@ -1289,6 +1342,18 @@ $timeUnits = array(
'quarter-short-future-other' => '{0} പാദത്തിൽ',
'quarter-short-past-one' => '{0} പാദം മുമ്പ്',
'quarter-short-past-other' => '{0} പാദം മുമ്പ്',
+ 'sat-future-one' => '{0} ശനിയാഴ്ചയിൽ',
+ 'sat-future-other' => '{0} ശനിയാഴ്ചയിൽ',
+ 'sat-narrow-future-one' => '{0} ശനിയാഴ്ചയിൽ',
+ 'sat-narrow-future-other' => '{0} ശനിയാഴ്ചയിൽ',
+ 'sat-narrow-past-one' => '{0} ശനിയാഴ്ച മുമ്പ്',
+ 'sat-narrow-past-other' => '{0} ശനിയാഴ്ച മുമ്പ്',
+ 'sat-past-one' => '{0} ശനിയാഴ്ച മുമ്പ്',
+ 'sat-past-other' => '{0} ശനിയാഴ്ച മുമ്പ്',
+ 'sat-short-future-one' => '{0} ശനിയാഴ്ചയിൽ',
+ 'sat-short-future-other' => '{0} ശനിയാഴ്ചയിൽ',
+ 'sat-short-past-one' => '{0} ശനിയാഴ്ച മുമ്പ്',
+ 'sat-short-past-other' => '{0} ശനിയാഴ്ച മുമ്പ്',
'second-future-one' => '{0} സെക്കൻഡിൽ',
'second-future-other' => '{0} സെക്കൻഡിൽ',
'second-narrow-future-one' => '{0} സെക്കൻഡിൽ',
@@ -1303,6 +1368,54 @@ $timeUnits = array(
'second-short-future-other' => '{0} സെക്കൻഡിൽ',
'second-short-past-one' => '{0} സെക്കൻഡ് മുമ്പ്',
'second-short-past-other' => '{0} സെക്കൻഡ് മുമ്പ്',
+ 'sun-future-one' => '{0} ഞായറാഴ്ചയിൽ',
+ 'sun-future-other' => '{0} ഞായറാഴ്ചയിൽ',
+ 'sun-narrow-future-one' => '{0} ഞായറാഴ്ചയിൽ',
+ 'sun-narrow-future-other' => '{0} ഞായറാഴ്ചയിൽ',
+ 'sun-narrow-past-one' => '{0} ഞായറാഴ്ച മുമ്പ്',
+ 'sun-narrow-past-other' => '{0} ഞായറാഴ്ച മുമ്പ്',
+ 'sun-past-one' => '{0} ഞായറാഴ്ച മുമ്പ്',
+ 'sun-past-other' => '{0} ഞായറാഴ്ച മുമ്പ്',
+ 'sun-short-future-one' => '{0} ഞായറാഴ്ചയിൽ',
+ 'sun-short-future-other' => '{0} ഞായറാഴ്ചയിൽ',
+ 'sun-short-past-one' => '{0} ഞായറാഴ്ച മുമ്പ്',
+ 'sun-short-past-other' => '{0} ഞായറാഴ്ച മുമ്പ്',
+ 'thu-future-one' => '{0} വ്യാഴാഴ്ചയിൽ',
+ 'thu-future-other' => '{0} വ്യാഴാഴ്ചയിൽ',
+ 'thu-narrow-future-one' => '{0} വ്യാഴാഴ്ചയിൽ',
+ 'thu-narrow-future-other' => '{0} വ്യാഴാഴ്ചയിൽ',
+ 'thu-narrow-past-one' => '{0} വ്യാഴാഴ്ച മുമ്പ്',
+ 'thu-narrow-past-other' => '{0} വ്യാഴാഴ്ച മുമ്പ്',
+ 'thu-past-one' => '{0} വ്യാഴാഴ്ച മുമ്പ്',
+ 'thu-past-other' => '{0} വ്യാഴാഴ്ച മുമ്പ്',
+ 'thu-short-future-one' => '{0} വ്യാഴാഴ്ചയിൽ',
+ 'thu-short-future-other' => '{0} വ്യാഴാഴ്ചയിൽ',
+ 'thu-short-past-one' => '{0} വ്യാഴാഴ്ച മുമ്പ്',
+ 'thu-short-past-other' => '{0} വ്യാഴാഴ്ച മുമ്പ്',
+ 'tue-future-one' => '{0} ചൊവ്വാഴ്ചയിൽ',
+ 'tue-future-other' => '{0} ചൊവ്വാഴ്ചയിൽ',
+ 'tue-narrow-future-one' => '{0} ചൊവ്വാഴ്ചയിൽ',
+ 'tue-narrow-future-other' => '{0} ചൊവ്വാഴ്ചയിൽ',
+ 'tue-narrow-past-one' => '{0} ചൊവ്വാഴ്ച മുമ്പ്',
+ 'tue-narrow-past-other' => '{0} ചൊവ്വാഴ്ച മുമ്പ്',
+ 'tue-past-one' => '{0} ചൊവ്വാഴ്ച മുമ്പ്',
+ 'tue-past-other' => '{0} ചൊവ്വാഴ്ച മുമ്പ്',
+ 'tue-short-future-one' => '{0} ചൊവ്വാഴ്ചയിൽ',
+ 'tue-short-future-other' => '{0} ചൊവ്വാഴ്ചയിൽ',
+ 'tue-short-past-one' => '{0} ചൊവ്വാഴ്ച മുമ്പ്',
+ 'tue-short-past-other' => '{0} ചൊവ്വാഴ്ച മുമ്പ്',
+ 'wed-future-one' => '{0} ബുധനാഴ്ചയിൽ',
+ 'wed-future-other' => '{0} ബുധനാഴ്ചയിൽ',
+ 'wed-narrow-future-one' => '{0} ബുധനാഴ്ചയിൽ',
+ 'wed-narrow-future-other' => '{0} ബുധനാഴ്ചയിൽ',
+ 'wed-narrow-past-one' => '{0} ബുധനാഴ്ച മുമ്പ്',
+ 'wed-narrow-past-other' => '{0} ബുധനാഴ്ച മുമ്പ്',
+ 'wed-past-one' => '{0} ബുധനാഴ്ച മുമ്പ്',
+ 'wed-past-other' => '{0} ബുധനാഴ്ച മുമ്പ്',
+ 'wed-short-future-one' => '{0} ബുധനാഴ്ചയിൽ',
+ 'wed-short-future-other' => '{0} ബുധനാഴ്ചയിൽ',
+ 'wed-short-past-one' => '{0} ബുധനാഴ്ച മുമ്പ്',
+ 'wed-short-past-other' => '{0} ബുധനാഴ്ച മുമ്പ്',
'week-future-one' => '{0} ആഴ്ചയിൽ',
'week-future-other' => '{0} ആഴ്ചയിൽ',
'week-narrow-future-one' => '{0} ആഴ്ചയിൽ',
@@ -1331,4 +1444,4 @@ $timeUnits = array(
'year-short-future-other' => '{0} വർഷത്തിൽ',
'year-short-past-one' => '{0} വർഷം മുമ്പ്',
'year-short-past-other' => '{0} വർഷം മുമ്പ്',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesMn.php b/MLEB/cldr/CldrNames/CldrNamesMn.php
index 928bf22c..27db35b0 100644
--- a/MLEB/cldr/CldrNames/CldrNamesMn.php
+++ b/MLEB/cldr/CldrNames/CldrNamesMn.php
@@ -1,182 +1,311 @@
<?php
-$languageNames = array(
+$languageNames = [
+ 'aa' => 'афар',
'ab' => 'абхаз',
- 'af' => 'африк',
+ 'ace' => 'ачин',
+ 'ada' => 'адангмэ',
+ 'ady' => 'адигэ',
+ 'af' => 'африкаанс',
'agq' => 'агем',
+ 'ain' => 'айну',
'ak' => 'акан',
+ 'ale' => 'алют',
+ 'alt' => 'өмнөд алтай',
'am' => 'амхар',
+ 'an' => 'арагон',
+ 'anp' => 'ангик',
'ar' => 'араб',
'ar-001' => 'стандарт араб',
'arn' => 'мапүчи',
+ 'arp' => 'арапаго',
'as' => 'ассам',
'asa' => 'асу',
+ 'ast' => 'астури',
+ 'av' => 'авар',
+ 'awa' => 'авадхи',
+ 'ay' => 'аймара',
'az' => 'азербайжан',
'ba' => 'башкир',
+ 'ban' => 'бали',
+ 'bas' => 'басаа',
'be' => 'беларусь',
'bem' => 'бемба',
'bez' => 'бена',
'bg' => 'болгар',
+ 'bho' => 'божпури',
+ 'bi' => 'бислам',
+ 'bin' => 'бини',
+ 'bla' => 'сиксика',
'bm' => 'бамбара',
'bn' => 'бенгал',
'bo' => 'төвд',
'br' => 'бретон',
'brx' => 'бодо',
'bs' => 'босни',
+ 'bug' => 'буги',
+ 'byn' => 'блин',
'ca' => 'каталан',
+ 'ce' => 'чечень',
+ 'ceb' => 'себуано',
'cgg' => 'чига',
- 'chr' => 'чироки',
- 'ckb' => 'сорани күрд',
+ 'ch' => 'чаморро',
+ 'chk' => 'чуук',
+ 'chm' => 'мари хэл',
+ 'cho' => 'чоктау',
+ 'chr' => 'чероки',
+ 'chy' => 'чэенн',
+ 'ckb' => 'төв курд',
'co' => 'корсик',
+ 'crs' => 'сеселва креол франц',
'cs' => 'чех',
- 'cy' => 'уэлс',
+ 'cu' => 'сүмийн славян',
+ 'cv' => 'чуваш',
+ 'cy' => 'уэльс',
'da' => 'дани',
+ 'dak' => 'дакота',
+ 'dar' => 'даргва',
'dav' => 'тайта',
'de' => 'герман',
- 'de-at' => 'австри герман',
- 'de-ch' => 'швейцари дээр герман',
+ 'de-at' => 'австри-герман',
+ 'de-ch' => 'швейцарь-герман',
+ 'dgr' => 'догриб',
'dje' => 'зарма',
- 'dsb' => 'ловер-сорби',
+ 'dsb' => 'доод сорби',
'dua' => 'дуала',
+ 'dv' => 'дивехи',
'dyo' => 'жола-фони',
- 'dz' => 'жонха',
+ 'dz' => 'зонха',
+ 'dzg' => 'дазага',
'ebu' => 'эмбу',
'ee' => 'эвэ',
+ 'efi' => 'эфик',
+ 'eka' => 'экажук',
'el' => 'грек',
'en' => 'англи',
- 'en-au' => 'австрали англи',
- 'en-ca' => 'канад англи',
- 'en-gb' => 'британийн англи',
- 'en-us' => 'америкийн англи',
+ 'en-au' => 'австрали-англи',
+ 'en-ca' => 'канад-англи',
+ 'en-gb' => 'британи-англи',
+ 'en-us' => 'америк-англи',
'eo' => 'эсперанто',
'es' => 'испани',
- 'es-419' => 'латин америкийн испани',
- 'es-es' => 'европын испани',
- 'es-mx' => 'мексикийн испани',
+ 'es-419' => 'испани хэл (Латин Америк)',
+ 'es-es' => 'испани хэл (Европ)',
+ 'es-mx' => 'испани хэл (Мексик)',
'et' => 'эстони',
'eu' => 'баск',
+ 'ewo' => 'эвондо',
'fa' => 'перс',
- 'fi' => 'финлянд',
- 'fil' => 'филиппин',
+ 'ff' => 'фула',
+ 'fi' => 'фин',
+ 'fil' => 'филипино',
'fj' => 'фижи',
'fo' => 'фарер',
+ 'fon' => 'фон',
'fr' => 'франц',
- 'fr-ca' => 'канад франц',
- 'fr-ch' => 'швейцари франц',
- 'fy' => 'баруун фризын',
+ 'fr-ca' => 'канад-франц',
+ 'fr-ch' => 'швейцари-франц',
+ 'fur' => 'фриулан',
+ 'fy' => 'баруун фриз',
'ga' => 'ирланд',
+ 'gaa' => 'га',
'gag' => 'гагуз',
- 'gd' => 'шотланд келт',
- 'gl' => 'галик',
+ 'gd' => 'шотландын гел',
+ 'gez' => 'гийз',
+ 'gil' => 'гилберт',
+ 'gl' => 'галего',
'gn' => 'гуарани',
- 'gsw' => 'швейцари герман',
+ 'gor' => 'горонтало',
+ 'gsw' => 'швейцари-герман',
'gu' => 'гужарати',
'guz' => 'гузы',
'gv' => 'манкс',
+ 'gwi' => 'гвичин',
'ha' => 'хауса',
'haw' => 'хавай',
'he' => 'еврей',
'hi' => 'хинди',
+ 'hil' => 'хилигайнон',
+ 'hmn' => 'хмонг',
'hr' => 'хорват',
'hsb' => 'дээд сорби',
- 'ht' => 'гаити',
- 'hu' => 'унгар',
+ 'ht' => 'Гаитийн креол',
+ 'hu' => 'мажар',
+ 'hup' => 'хупа',
'hy' => 'армен',
+ 'hz' => 'хереро',
'ia' => 'интерлингво',
+ 'iba' => 'ибан',
+ 'ibb' => 'ибибио',
'id' => 'индонези',
'ie' => 'нэгдмэл хэл',
'ig' => 'игбо',
- 'ii' => 'шичуан еи',
+ 'ii' => 'сычуань и',
+ 'ilo' => 'илоко',
+ 'inh' => 'ингуш',
+ 'io' => 'идо',
'is' => 'исланд',
'it' => 'итали',
'iu' => 'инуктитут',
'ja' => 'япон',
+ 'jbo' => 'ложбан',
'jgo' => 'нгомба',
'jmc' => 'мачамэ',
'jv' => 'ява',
'ka' => 'гүрж',
'kab' => 'кабиле',
+ 'kac' => 'качин',
+ 'kaj' => 'жжу',
'kam' => 'камба',
+ 'kbd' => 'кабардин',
+ 'kcg' => 'тяп',
'kde' => 'маконде',
'kea' => 'кабүвердиану',
+ 'kfo' => 'коро',
+ 'kha' => 'каси',
'khq' => 'койра чини',
'ki' => 'кикуюү',
- 'kk' => 'хасаг',
+ 'kj' => 'куаньяма',
+ 'kk' => 'казах',
+ 'kkj' => 'како',
'kl' => 'калалисут',
'kln' => 'каленжин',
- 'km' => 'камбож',
+ 'km' => 'кхмер',
+ 'kmb' => 'кимбунду',
'kn' => 'каннада',
'ko' => 'солонгос',
'koi' => 'коми-пермяк',
'kok' => 'конкани',
+ 'kpe' => 'кпелле',
+ 'kr' => 'канури',
+ 'krc' => 'карачай-балкар',
+ 'krl' => 'карель',
+ 'kru' => 'курук',
'ks' => 'кашмир',
- 'ksb' => 'шамбала',
+ 'ksb' => 'шамбал',
'ksf' => 'бафиа',
- 'ku' => 'күрд',
- 'kw' => 'корны',
+ 'ksh' => 'кёльш',
+ 'ku' => 'курд',
+ 'kum' => 'кумук',
+ 'kv' => 'коми',
+ 'kw' => 'корн',
'ky' => 'киргиз',
'la' => 'латин',
+ 'lad' => 'ладин',
'lag' => 'ланги',
'lb' => 'люксембург',
+ 'lez' => 'лезги',
'lg' => 'ганда',
+ 'li' => 'лимбург',
'lkt' => 'лакота',
'ln' => 'лингала',
'lo' => 'лаос',
+ 'loz' => 'лози',
+ 'lrc' => 'хойд лури',
'lt' => 'литва',
'lu' => 'луба-катанга',
+ 'lua' => 'луба-лулуа',
+ 'lun' => 'лунда',
'luo' => 'луо',
+ 'lus' => 'мизо',
'luy' => 'луяа',
'lv' => 'латви',
+ 'mad' => 'мадури хэл',
+ 'mag' => 'магахи',
+ 'mai' => 'май',
+ 'mak' => 'макасар',
'mas' => 'масай',
+ 'mdf' => 'мокша',
+ 'men' => 'менде',
'mer' => 'меру',
'mfe' => 'морисен',
'mg' => 'малагаси',
'mgh' => 'макува-мито',
'mgo' => 'мета',
+ 'mh' => 'маршалл',
'mi' => 'маори',
+ 'mic' => 'микмак',
+ 'min' => 'минангкабау',
'mk' => 'македон',
- 'ml' => 'малайлам',
+ 'ml' => 'малаялам',
'mn' => 'монгол',
+ 'mni' => 'манипури',
'moh' => 'мохаук',
+ 'mos' => 'мосси',
'mr' => 'марати',
'ms' => 'малай',
- 'mt' => 'малти',
+ 'mt' => 'малта',
'mua' => 'мунданг',
+ 'mul' => 'олон хэл',
+ 'mus' => 'крик',
+ 'mwl' => 'меранди',
'my' => 'бирм',
+ 'myv' => 'эрзя',
+ 'mzn' => 'мазандерани',
+ 'na' => 'науру',
+ 'nap' => 'неаполитан',
'naq' => 'нама',
'nb' => 'норвегийн букмол',
'nd' => 'хойд ндебеле',
+ 'nds-nl' => 'бага саксон',
'ne' => 'балба',
- 'nl' => 'голланд',
+ 'new' => 'невари',
+ 'ng' => 'ндонга',
+ 'nia' => 'ниас хэл',
+ 'niu' => 'ниуэ',
+ 'nl' => 'нидерланд',
'nl-be' => 'фламанд',
'nmg' => 'квазио',
'nn' => 'норвегийн нинорск',
+ 'nnh' => 'нгиембүүн',
'no' => 'норвеги',
+ 'nog' => 'ногаи',
'nqo' => 'нко',
+ 'nr' => 'өмнөд ндебеле',
+ 'nso' => 'хойд сото',
'nus' => 'нуер',
+ 'nv' => 'навахо',
+ 'ny' => 'нянжа',
'nyn' => 'нянколе',
- 'oc' => 'францын окситан',
+ 'oc' => 'окситан',
'om' => 'оромо',
'or' => 'ория',
- 'pa' => 'панжаб',
+ 'os' => 'оссетин',
+ 'pa' => 'панжаби',
+ 'pag' => 'пангасин',
+ 'pam' => 'пампанга',
+ 'pap' => 'папьяменто',
+ 'pau' => 'палау',
+ 'pcm' => 'нигерийн пиджин',
'pl' => 'польш',
- 'ps' => 'пашто',
+ 'prg' => 'прусс',
+ 'ps' => 'пушту',
'pt' => 'португал',
- 'pt-br' => 'португал (бразил)',
- 'pt-pt' => 'европын португал',
+ 'pt-br' => 'португал хэл (Бразил)',
+ 'pt-pt' => 'португал хэл (Европ)',
'qu' => 'кечуа',
'quc' => 'киче',
+ 'rap' => 'рапануи',
+ 'rar' => 'раротонг',
'rm' => 'романш',
'rn' => 'рунди',
'ro' => 'румын',
'ro-md' => 'молдав',
'rof' => 'ромбо',
'ru' => 'орос',
- 'rw' => 'кинярванда',
+ 'rup' => 'ароманы',
+ 'rw' => 'киньяруанда',
'rwk' => 'рва',
'sa' => 'санскрит',
+ 'sad' => 'сандавэ',
+ 'sah' => 'саха',
'saq' => 'самбүрү',
+ 'sat' => 'сантали',
+ 'sba' => 'нгамбай',
'sbp' => 'сангү',
+ 'sc' => 'сардин',
+ 'scn' => 'сицил',
+ 'sco' => 'шотланд',
'sd' => 'синдхи',
'se' => 'хойд сами',
'seh' => 'сена',
@@ -184,130 +313,166 @@ $languageNames = array(
'sg' => 'санго',
'sh' => 'хорватын серб',
'shi' => 'тачелхит',
+ 'shn' => 'шань',
'si' => 'синхала',
'sk' => 'словак',
- 'sl' => 'словен',
+ 'sl' => 'словени',
+ 'sm' => 'самоа',
'sma' => 'өмнөд сами',
'smj' => 'люле сами',
'smn' => 'инари сами',
'sms' => 'сколт сами',
'sn' => 'шона',
+ 'snk' => 'сонинке',
'so' => 'сомали',
'sq' => 'албани',
'sr' => 'серб',
+ 'srn' => 'сранан тонго',
+ 'ss' => 'свати',
+ 'ssy' => 'сахо',
'st' => 'сесото',
'su' => 'сундан',
+ 'suk' => 'сукума',
'sv' => 'швед',
'sw' => 'свахили',
- 'swc' => 'конго свахили',
+ 'sw-cd' => 'конгогийн свахили',
+ 'swb' => 'комори',
+ 'syr' => 'сири',
'ta' => 'тамил',
'te' => 'тэлүгү',
+ 'tem' => 'тимн',
'teo' => 'тэсо',
+ 'tet' => 'тетум',
'tg' => 'тажик',
'th' => 'тай',
- 'ti' => 'тигрина',
+ 'ti' => 'тигринья',
+ 'tig' => 'тигр',
'tk' => 'туркмен',
- 'tlh' => 'клингон хэл',
+ 'tlh' => 'клингон',
+ 'tn' => 'цвана',
'to' => 'тонга',
+ 'tpi' => 'ток писин',
'tr' => 'турк',
+ 'trv' => 'тароко',
+ 'ts' => 'цонга',
'tt' => 'татар',
+ 'tum' => 'тумбула',
+ 'tvl' => 'тувалу',
'tw' => 'тви',
'twq' => 'тасавак',
- 'tzm' => 'төв атласын тамазайт',
- 'ug' => 'уйгар',
- 'uk' => 'украйн',
- 'und' => 'тодорхойгүй хэл',
+ 'ty' => 'таити',
+ 'tyv' => 'тува',
+ 'tzm' => 'Төв Атласын тамазайт',
+ 'udm' => 'удмурт',
+ 'ug' => 'уйгур',
+ 'uk' => 'украин',
+ 'umb' => 'умбунду',
+ 'und' => 'Үл мэдэгдэх хэл',
'ur' => 'урду',
'uz' => 'узбек',
'vai' => 'вай',
+ 've' => 'венда',
'vi' => 'вьетнам',
+ 'vo' => 'волапюк',
'vun' => 'вунжо',
+ 'wa' => 'уоллун',
+ 'wae' => 'уолсэр',
+ 'wal' => 'уоллайтта',
+ 'war' => 'варай',
'wo' => 'волоф',
+ 'xal' => 'халимаг',
'xh' => 'хоса',
'xog' => 'сога',
+ 'yav' => 'янгбен',
+ 'ybb' => 'емба',
'yi' => 'иддиш',
'yo' => 'ёруба',
- 'zgh' => 'тамазит',
+ 'yue' => 'кантон',
+ 'zgh' => 'Мороккогийн стандарт тамазайт',
'zh' => 'хятад',
'zh-hans' => 'хялбаршуулсан хятад',
'zh-hant' => 'уламжлалт хятад',
'zu' => 'зулу',
- 'zxx' => 'хэл зүйн агуулга байхгүй',
-);
+ 'zun' => 'зуни',
+ 'zxx' => 'хэл зүйн агуулгагүй',
+ 'zza' => 'заза',
+];
-$currencyNames = array(
+$currencyNames = [
'AED' => 'арабын нэгдсэн эмиратын дирхам',
- 'AFN' => 'афганистаний афгани',
+ 'AFN' => 'афганистан афгани',
'ALL' => 'албанийн лек',
'AMD' => 'арменийн драм',
'ANG' => 'нидерландын антиллъя гулдер',
- 'AOA' => 'Ангол кванза',
+ 'AOA' => 'ангол кванза',
'ARS' => 'аргентин песо',
'AUD' => 'австрали доллар',
'AWG' => 'арубын флорин',
'AZN' => 'азербайжаны манат',
'BAM' => 'босни-герцеговин хөрвөгч марк',
'BBD' => 'барбадос доллар',
- 'BDT' => 'бангладешийн така',
- 'BGN' => 'болгарийн лев',
+ 'BDT' => 'бангладеш така',
+ 'BGN' => 'болгарын лев',
'BHD' => 'бахрейн динар',
- 'BIF' => 'Бурунд франк',
+ 'BIF' => 'бурунд франк',
'BMD' => 'бермуд доллар',
'BND' => 'бруней доллар',
'BOB' => 'боливи боливиано',
'BRL' => 'бразилийн рил',
'BSD' => 'багам доллар',
'BTN' => 'бутаны нгултрум',
- 'BWP' => 'Ботсвани пула',
- 'BYR' => 'беларус рубль',
+ 'BWP' => 'ботсвани пула',
+ 'BYN' => 'беларусь рубль',
+ 'BYR' => 'беларусь рубль (2000–2016)',
'BZD' => 'белиз доллар',
'CAD' => 'канад доллар',
- 'CDF' => 'Конго франк',
+ 'CDF' => 'конго франк',
'CHF' => 'швейцарь франк',
'CLP' => 'чилийн песо',
+ 'CNH' => 'Хятадын юань',
'CNY' => 'хятад юань',
'COP' => 'колумбын песо',
'CRC' => 'коста рикагийн колон',
- 'CUC' => 'кубийн хөрвөгч песо',
- 'CUP' => 'кубийн песо',
- 'CVE' => 'Кабо-Верде эскудо',
- 'CZK' => 'чехийн коруна',
- 'DJF' => 'Жибоути франк',
+ 'CUC' => 'кубын хөрвөгч песо',
+ 'CUP' => 'кубын песо',
+ 'CVE' => 'кабо-верде эскудо',
+ 'CZK' => 'Чех крон',
+ 'DJF' => 'жибоути франк',
'DKK' => 'данийн крон',
- 'DOP' => 'доминикын песо',
+ 'DOP' => 'доминиканы песо',
'DZD' => 'алжир доллар',
'EGP' => 'египет паунд',
- 'ERN' => 'Эритрей накфа',
- 'ETB' => 'Этиоп бирр',
+ 'ERN' => 'эритрей накфа',
+ 'ETB' => 'этиоп бирр',
'EUR' => 'евро',
'FJD' => 'фижи доллар',
'FKP' => 'фолклэнд арлын паунд',
'GBP' => 'британийн фунт',
'GEL' => 'гүржийн лари',
- 'GHS' => 'Гана седи',
+ 'GHS' => 'гана седи',
'GIP' => 'гибралтар паунд',
- 'GMD' => 'Гамби даласи',
- 'GNF' => 'Гвиней франк',
- 'GTQ' => 'гватемалийн кецал',
+ 'GMD' => 'гамби даласи',
+ 'GNF' => 'гвиней франк',
+ 'GTQ' => 'гватемалын кецал',
'GYD' => 'гайана доллар',
'HKD' => 'хонгконг доллар',
'HNL' => 'гондурасын лемпира',
'HRK' => 'хорватын куна',
- 'HTG' => 'гайтийн гоурд',
- 'HUF' => 'унгарийн форинт',
+ 'HTG' => 'гаитийн гоурд',
+ 'HUF' => 'унгарын форинт',
'IDR' => 'индонези рупи',
- 'ILS' => 'израйлийн шинэ шекел',
+ 'ILS' => 'израилийн шинэ шекел',
'INR' => 'энэтхэг рупи',
'IQD' => 'ирак динар',
'IRR' => 'иран риал',
- 'ISK' => 'исландийн крон',
+ 'ISK' => 'исландын крон',
'JMD' => 'ямайк доллар',
'JOD' => 'йордан динар',
'JPY' => 'япон иен',
- 'KES' => 'Кени шиллинг',
- 'KGS' => 'кыргызын сом',
+ 'KES' => 'кени шиллинг',
+ 'KGS' => 'кыргыз сом',
'KHR' => 'камбож риел',
- 'KMF' => 'Комор франк',
+ 'KMF' => 'комор франк',
'KPW' => 'хойд солонгос вон',
'KRW' => 'өмнөд солонгос вон',
'KWD' => 'кувейт динар',
@@ -316,33 +481,34 @@ $currencyNames = array(
'LAK' => 'лаосын кип',
'LBP' => 'ливан паунд',
'LKR' => 'шри-ланк рупи',
- 'LRD' => 'Либери доллар',
+ 'LRD' => 'либери доллар',
'LTL' => 'литвийн литас',
'LVL' => 'латвийн лац',
'LYD' => 'ливи доллар',
'MAD' => 'мароккогийн дирхам',
- 'MDL' => 'молдавийн леу',
- 'MGA' => 'Малайн ариари',
+ 'MDL' => 'молдавын леу',
+ 'MGA' => 'малайн ариари',
'MKD' => 'македони динар',
'MMK' => 'мьянмарын киат',
'MNT' => 'төгрөг',
'MOP' => 'макаогийн патака',
- 'MRO' => 'Мавритан угия',
- 'MUR' => 'Мавритын рупи',
+ 'MRO' => 'мавритан угия (1973–2017)',
+ 'MRU' => 'мавритан угия',
+ 'MUR' => 'мавритын рупи',
'MVR' => 'мальдив руфия',
- 'MWK' => 'Малави квача',
+ 'MWK' => 'малави квача',
'MXN' => 'мексикийн песо',
'MYR' => 'малайзын рингит',
- 'MZN' => 'Мозамбик метикал',
- 'NAD' => 'Намиби доллар',
- 'NGN' => 'Нигери найра',
+ 'MZN' => 'мозамбик метикал',
+ 'NAD' => 'намиби доллар',
+ 'NGN' => 'нигери найра',
'NIO' => 'никарагуагийн кордоба',
'NOK' => 'норвегийн крон',
'NPR' => 'балба рупи',
'NZD' => 'шинэ зеланд доллар',
'OMR' => 'омани риал',
'PAB' => 'панамын бальбоа',
- 'PEN' => 'перугийн невосоль',
+ 'PEN' => 'перугийн соль',
'PGK' => 'папуа-шинэ гвинейн кина',
'PHP' => 'филиппин песо',
'PKR' => 'пакистан рупи',
@@ -352,21 +518,22 @@ $currencyNames = array(
'RON' => 'румыны леу',
'RSD' => 'серб динар',
'RUB' => 'орос рубль',
- 'RWF' => 'Руанд франк',
+ 'RWF' => 'руанд франк',
'SAR' => 'сауди риал',
'SBD' => 'соломон арлын доллар',
- 'SCR' => 'Сейшел рупи',
+ 'SCR' => 'сейшел рупи',
'SDG' => 'судан паунд',
'SEK' => 'шведийн крон',
'SGD' => 'сингапур доллар',
- 'SHP' => 'Сент Хелена паунд',
- 'SLL' => 'Сьерра Леоне леоне',
- 'SOS' => 'Сомали шиллинг',
+ 'SHP' => 'сент хелена фунт',
+ 'SLL' => 'сьерра леоны леон',
+ 'SOS' => 'сомали шиллинг',
'SRD' => 'суринам доллар',
'SSP' => 'өмнөд судан паунд',
- 'STD' => 'Сан-Томе ба Принсипи добра',
+ 'STD' => 'сан-томе ба принсипи добра (1977–2017)',
+ 'STN' => 'сан-томе ба принсипи добра',
'SYP' => 'сири паунд',
- 'SZL' => 'Свазиланд лилангени',
+ 'SZL' => 'свазиланд лилангени',
'THB' => 'тайландын бат',
'TJS' => 'тажикийн сомон',
'TMT' => 'туркмен манат',
@@ -374,29 +541,30 @@ $currencyNames = array(
'TOP' => 'тонгагийн панга',
'TRY' => 'туркийн лира',
'TTD' => 'тринидад ба тобаго доллар',
- 'TWD' => 'шинэ тайван доллар',
- 'TZS' => 'Танзани шиллинг',
- 'UAH' => 'украйны гривня',
- 'UGX' => 'Уганд шиллинг',
+ 'TWD' => 'шинэ тайвань доллар',
+ 'TZS' => 'танзани шиллинг',
+ 'UAH' => 'украины гривня',
+ 'UGX' => 'уганд шиллинг',
'USD' => 'америк доллар',
'UYU' => 'уругвайн песо',
- 'UZS' => 'узбекын сом',
- 'VEF' => 'венесуэлийн боливар',
+ 'UZS' => 'узбекийн сом',
+ 'VEF' => 'венесуэлийн боливар (2008–2018)',
+ 'VES' => 'венесуэлийн боливар',
'VND' => 'вьетнамын донг',
'VUV' => 'вануатугийн вату',
'WST' => 'самоагийн тала',
- 'XAF' => 'Франк КФА BEAC',
+ 'XAF' => 'төв африкийн франк',
'XCD' => 'зүүн карибийн доллар',
- 'XOF' => 'Франк КФА BCЕАО',
- 'XPF' => 'CFP франк',
- 'XXX' => 'Тодорхойгүй мөнгөн тэмдэгт',
+ 'XOF' => 'баруун африкийн франк',
+ 'XPF' => 'францын колоний франк',
+ 'XXX' => 'тодорхойгүй мөнгөн тэмдэгт',
'YER' => 'йемен риал',
- 'ZAR' => 'Өмнөд Африкийн ранд',
+ 'ZAR' => 'өмнөд африкийн ранд',
'ZMK' => 'Замби квача (1968–2012)',
- 'ZMW' => 'Замби квача',
-);
+ 'ZMW' => 'замби квача',
+];
-$currencySymbols = array(
+$currencySymbols = [
'AED' => 'AED',
'AFN' => 'AFN',
'ALL' => 'ALL',
@@ -420,12 +588,14 @@ $currencySymbols = array(
'BSD' => 'BSD',
'BTN' => 'BTN',
'BWP' => 'BWP',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CA$',
'CDF' => 'CDF',
'CHF' => 'CHF',
'CLP' => 'CLP',
+ 'CNH' => 'CNH',
'CNY' => 'CN¥',
'COP' => 'COP',
'CRC' => 'CRC',
@@ -526,6 +696,7 @@ $currencySymbols = array(
'SRD' => 'SRD',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'Db',
'SYP' => 'SYP',
'SZL' => 'SZL',
'THB' => '฿',
@@ -553,94 +724,95 @@ $currencySymbols = array(
'YER' => 'YER',
'ZAR' => 'ZAR',
'ZMW' => 'ZMW',
-);
+];
-$countryNames = array(
- 'AC' => 'Аскенсион Арал',
+$countryNames = [
+ 'AC' => 'Асенсион арал',
'AD' => 'Андорра',
- 'AE' => 'Арабын Нэгдсэн Эмират',
+ 'AE' => 'Арабын Нэгдсэн Эмирт Улс',
'AF' => 'Афганистан',
'AG' => 'Антигуа ба Барбуда',
- 'AI' => 'Ангила',
+ 'AI' => 'Ангилья',
'AL' => 'Албани',
- 'AM' => 'Армен',
+ 'AM' => 'Армени',
'AO' => 'Ангол',
- 'AQ' => 'Антарктик',
+ 'AQ' => 'Антарктид',
'AR' => 'Аргентин',
'AS' => 'Америкийн Самоа',
'AT' => 'Австри',
'AU' => 'Австрали',
'AW' => 'Аруба',
- 'AX' => 'Аландын Арлууд',
+ 'AX' => 'Аландын арлууд',
'AZ' => 'Азербайжан',
- 'BA' => 'Босни Херцеговин',
+ 'BA' => 'Босни-Герцеговин',
'BB' => 'Барбадос',
'BD' => 'Бангладеш',
- 'BE' => 'Белги',
- 'BF' => 'Буркина фасо',
+ 'BE' => 'Бельги',
+ 'BF' => 'Буркина Фасо',
'BG' => 'Болгар',
'BH' => 'Бахрейн',
'BI' => 'Бурунди',
'BJ' => 'Бенин',
- 'BL' => 'Сент Бартельми',
- 'BM' => 'Бермуд',
+ 'BL' => 'Сент-Бартельми',
+ 'BM' => 'Бермуда',
'BN' => 'Бруней',
'BO' => 'Боливи',
'BQ' => 'Карибын Нидерланд',
'BR' => 'Бразил',
- 'BS' => 'Багам',
+ 'BS' => 'Багамын арлууд',
'BT' => 'Бутан',
- 'BV' => 'Буветын Арлууд',
- 'BW' => 'Ботсвана',
- 'BY' => 'Беларус',
- 'BZ' => 'Белиз',
+ 'BV' => 'Буве арал',
+ 'BW' => 'Ботсван',
+ 'BY' => 'Беларусь',
+ 'BZ' => 'Белизе',
'CA' => 'Канад',
- 'CC' => 'Кокос (Кийлинг) Арлууд',
+ 'CC' => 'Кокос (Кийлинг) арлууд',
'CD' => 'Конго-Киншаса',
'CF' => 'Төв Африкийн Бүгд Найрамдах Улс',
- 'CG' => 'Конго Браззавиль',
- 'CH' => 'Швейцари',
- 'CI' => 'Кот д’Ивуар',
- 'CK' => 'Күүкийн Арлууд',
+ 'CG' => 'Конго-Браззавиль',
+ 'CH' => 'Швейцарь',
+ 'CI' => 'Кот-д’Ивуар',
+ 'CK' => 'Күүкийн арлууд',
'CL' => 'Чили',
'CM' => 'Камерун',
'CN' => 'Хятад',
- 'CO' => 'Колумб',
- 'CP' => 'Клиппертон Арал',
- 'CR' => 'Коста Рика',
+ 'CO' => 'Колумби',
+ 'CP' => 'Клиппертон арал',
+ 'CR' => 'Коста-Рика',
'CU' => 'Куба',
- 'CV' => 'Капе Верде',
- 'CW' => 'Куракао',
- 'CX' => 'Зул Сарын Арал',
+ 'CV' => 'Кабо-Верде',
+ 'CW' => 'Кюрасао',
+ 'CX' => 'Зул сарын арал',
'CY' => 'Кипр',
- 'CZ' => 'Бүгд Найрамдах Чех Улс',
+ 'CZ' => 'Чех',
'DE' => 'Герман',
'DG' => 'Диего Гарсиа',
'DJ' => 'Джибути',
'DK' => 'Дани',
- 'DM' => 'Доминик',
- 'DO' => 'Бүгд Найрамдах Доминикан',
+ 'DM' => 'Доминика',
+ 'DO' => 'Бүгд Найрамдах Доминикан Улс',
'DZ' => 'Алжир',
'EA' => 'Сеута ба Мелилья',
'EC' => 'Эквадор',
- 'EE' => 'Эстон',
+ 'EE' => 'Эстони',
'EG' => 'Египет',
'EH' => 'Баруун Сахар',
- 'ER' => 'Эритри',
+ 'ER' => 'Эритрей',
'ES' => 'Испани',
'ET' => 'Этиоп',
'EU' => 'Европын Холбоо',
- 'FI' => 'Финланд',
+ 'EZ' => 'Евро бүс',
+ 'FI' => 'Финлянд',
'FJ' => 'Фижи',
- 'FK' => 'Фолькландын Арлууд',
+ 'FK' => 'Фолклендийн арлууд',
'FM' => 'Микронези',
- 'FO' => 'Фароэ Арлууд',
+ 'FO' => 'Фарерын арлууд',
'FR' => 'Франц',
'GA' => 'Габон',
'GB' => 'ИБ',
'GD' => 'Гренада',
'GE' => 'Гүрж',
- 'GF' => 'Францын Гайана',
+ 'GF' => 'Францын Гвиана',
'GG' => 'Гернси',
'GH' => 'Гана',
'GI' => 'Гибралтар',
@@ -650,72 +822,72 @@ $countryNames = array(
'GP' => 'Гваделуп',
'GQ' => 'Экваторын Гвиней',
'GR' => 'Грек',
- 'GS' => 'Өмнөд Жоржиа ба Өмнөд Сэндвичийн Арлууд',
+ 'GS' => 'Өмнөд Жоржиа ба Өмнөд Сэндвичийн арлууд',
'GT' => 'Гватемал',
'GU' => 'Гуам',
'GW' => 'Гвиней-Бисау',
'GY' => 'Гайана',
'HK' => 'Хонг Конг',
- 'HM' => 'Хэрд болон Макдоналд Арлууд',
+ 'HM' => 'Херд ба Макдональдийн арлууд',
'HN' => 'Гондурас',
'HR' => 'Хорват',
'HT' => 'Гаити',
'HU' => 'Унгар',
'IC' => 'Канарын арлууд',
- 'ID' => 'Индонези',
+ 'ID' => 'Индонез',
'IE' => 'Ирланд',
'IL' => 'Израиль',
'IM' => 'Мэн Арал',
'IN' => 'Энэтхэг',
- 'IO' => 'Британийн харьяа Энэтхэгийн далай дахь нутаг дэвсгэрүүд',
+ 'IO' => 'Британийн харьяа Энэтхэгийн далай дахь нутаг дэвсгэр',
'IQ' => 'Ирак',
'IR' => 'Иран',
'IS' => 'Исланд',
'IT' => 'Итали',
'JE' => 'Жерси',
- 'JM' => 'Ямайк',
+ 'JM' => 'Ямайка',
'JO' => 'Йордан',
'JP' => 'Япон',
'KE' => 'Кени',
'KG' => 'Кыргызстан',
'KH' => 'Камбож',
'KI' => 'Кирибати',
- 'KM' => 'Коморос',
+ 'KM' => 'Коморын арлууд',
'KN' => 'Сент-Киттс ба Невис',
'KP' => 'Хойд Солонгос',
'KR' => 'Өмнөд Солонгос',
'KW' => 'Кувейт',
- 'KY' => 'Кайманы Арлууд',
+ 'KY' => 'Кайманы арлууд',
'KZ' => 'Казахстан',
'LA' => 'Лаос',
'LB' => 'Ливан',
'LC' => 'Сент Люсиа',
'LI' => 'Лихтенштейн',
- 'LK' => 'Шри Ланка',
+ 'LK' => 'Шри-Ланка',
'LR' => 'Либери',
'LS' => 'Лесото',
'LT' => 'Литва',
'LU' => 'Люксембург',
'LV' => 'Латви',
'LY' => 'Ливи',
- 'MA' => 'Марокко',
+ 'MA' => 'Морокко',
'MC' => 'Монако',
'MD' => 'Молдав',
'ME' => 'Монтенегро',
'MF' => 'Сент-Мартин',
'MG' => 'Мадагаскар',
- 'MH' => 'Маршаллын Арлууд',
+ 'MH' => 'Маршаллын арлууд',
'MK' => 'Македон',
'ML' => 'Мали',
- 'MM' => 'Мьянмар (Бурма)',
+ 'MM' => 'Мьянмар',
'MN' => 'Монгол',
'MO' => 'Макао',
- 'MP' => 'Хойд Марианы Арлууд',
+ 'MP' => 'Хойд Марианы арлууд',
'MQ' => 'Мартиник',
'MR' => 'Мавритани',
'MS' => 'Монтсеррат',
'MT' => 'Мальта',
- 'MU' => 'Мавритус',
+ 'MU' => 'Маврикий',
'MV' => 'Мальдив',
'MW' => 'Малави',
'MX' => 'Мексик',
@@ -724,10 +896,10 @@ $countryNames = array(
'NA' => 'Намиби',
'NC' => 'Шинэ Каледони',
'NE' => 'Нигер',
- 'NF' => 'Норфолк Арлууд',
+ 'NF' => 'Норфолк арал',
'NG' => 'Нигери',
'NI' => 'Никарагуа',
- 'NL' => 'Голланд',
+ 'NL' => 'Нидерланд',
'NO' => 'Норвеги',
'NP' => 'Балба',
'NR' => 'Науру',
@@ -741,23 +913,23 @@ $countryNames = array(
'PH' => 'Филиппин',
'PK' => 'Пакистан',
'PL' => 'Польш',
- 'PM' => 'Сэнт Пьер ба Микелон',
- 'PN' => 'Питкэрн Арлууд',
- 'PR' => 'Пуэрто Рико',
+ 'PM' => 'Сент-Пьер ба Микело',
+ 'PN' => 'Питкэрн арлууд',
+ 'PR' => 'Пуэрто-Рико',
'PS' => 'Палестин',
'PT' => 'Португал',
'PW' => 'Палау',
'PY' => 'Парагвай',
'QA' => 'Катар',
'QO' => 'Номхон далайг тойрсон улс орнууд',
- 'RE' => 'Реюньон',
+ 'RE' => 'Реюнион',
'RO' => 'Румын',
'RS' => 'Серби',
'RU' => 'Орос',
'RW' => 'Руанда',
'SA' => 'Саудын Араб',
- 'SB' => 'Соломоны Арлууд',
- 'SC' => 'Сейшел',
+ 'SB' => 'Соломоны арлууд',
+ 'SC' => 'Сейшелийн арлууд',
'SD' => 'Судан',
'SE' => 'Швед',
'SG' => 'Сингапур',
@@ -776,7 +948,7 @@ $countryNames = array(
'SX' => 'Синт Мартен',
'SY' => 'Сири',
'SZ' => 'Свазиланд',
- 'TA' => 'Тристан да Кунья',
+ 'TA' => 'Тристан да Кунъя',
'TC' => 'Турк ба Кайкосын Арлууд',
'TD' => 'Чад',
'TF' => 'Францын өмнөд газар нутаг',
@@ -791,38 +963,41 @@ $countryNames = array(
'TR' => 'Турк',
'TT' => 'Тринидад ба Тобаго',
'TV' => 'Тувалу',
- 'TW' => 'Тайван',
+ 'TW' => 'Тайвань',
'TZ' => 'Танзани',
- 'UA' => 'Украйн',
+ 'UA' => 'Украин',
'UG' => 'Уганда',
- 'UM' => 'АНУ-ын тойрсон арлууд',
+ 'UM' => 'Америкийн Нэгдсэн Улсын бага арлууд',
+ 'UN' => 'НҮБ',
'US' => 'АНУ',
'UY' => 'Уругвай',
'UZ' => 'Узбекистан',
'VA' => 'Ватикан хот улс',
- 'VC' => 'Сэнт Винсэнт ба Гренадин',
+ 'VC' => 'Сент-Винсент ба Гренадин',
'VE' => 'Венесуэл',
- 'VG' => 'Британийн Виржиний Арлууд',
- 'VI' => 'АНУ-ын Виржиний Арлууд',
+ 'VG' => 'Британийн Виржиний арлууд',
+ 'VI' => 'АНУ-ын Виржиний арлууд',
'VN' => 'Вьетнам',
'VU' => 'Вануату',
'WF' => 'Уоллис ба Футуна',
'WS' => 'Самоа',
'XK' => 'Косово',
'YE' => 'Йемен',
- 'YT' => 'Майотте',
- 'ZA' => 'Өмнөд Африк тив',
+ 'YT' => 'Майотта',
+ 'ZA' => 'Өмнөд Африк',
'ZM' => 'Замби',
'ZW' => 'Зимбабве',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-one' => '{0}зуун',
+ 'century-other' => '{0}зуун',
'day-future-one' => '{0} өдрийн дараа',
'day-future-other' => '{0} өдрийн дараа',
- 'day-narrow-future-one' => '+{0} өдөр',
- 'day-narrow-future-other' => '+{0} өдөр',
- 'day-narrow-past-one' => '-{0} өдөр',
- 'day-narrow-past-other' => '-{0} өдөр',
+ 'day-narrow-future-one' => '{0} өдрийн дараа',
+ 'day-narrow-future-other' => '{0} өдрийн дараа',
+ 'day-narrow-past-one' => '{0} өдрийн өмнө',
+ 'day-narrow-past-other' => '{0} өдрийн өмнө',
'day-one' => '{0} өдөр',
'day-other' => '{0} өдөр',
'day-past-one' => '{0} өдрийн өмнө',
@@ -831,106 +1006,190 @@ $timeUnits = array(
'day-short-future-other' => '{0} өдрийн дараа',
'day-short-past-one' => '{0} өдрийн өмнө',
'day-short-past-other' => '{0} өдрийн өмнө',
+ 'fri-future-one' => '{0} баасан гарагийн дараа',
+ 'fri-future-other' => '{0} баасан гарагийн дараа',
+ 'fri-narrow-future-one' => '{0} Ба дараа',
+ 'fri-narrow-future-other' => '{0} Ба дараа',
+ 'fri-narrow-past-one' => '{0} Ба өмнө',
+ 'fri-narrow-past-other' => '{0} Ба өмнө',
+ 'fri-past-one' => '{0} баасан гарагийн өмнө',
+ 'fri-past-other' => '{0} баасан гарагийн өмнө',
+ 'fri-short-future-one' => '{0} Ба дараа',
+ 'fri-short-future-other' => '{0} Ба дараа',
+ 'fri-short-past-one' => '{0} Ба өмнө',
+ 'fri-short-past-other' => '{0} Ба өмнө',
'hour-future-one' => '{0} цагийн дараа',
'hour-future-other' => '{0} цагийн дараа',
- 'hour-narrow-future-one' => '+{0} ц',
- 'hour-narrow-future-other' => '+{0} ц',
- 'hour-narrow-past-one' => '-{0} ц',
- 'hour-narrow-past-other' => '-{0} ц',
+ 'hour-narrow-future-one' => '{0} ц дараа',
+ 'hour-narrow-future-other' => '{0} ц дараа',
+ 'hour-narrow-past-one' => '{0} ц өмнө',
+ 'hour-narrow-past-other' => '{0} ц өмнө',
'hour-one' => '{0} цаг',
'hour-other' => '{0} цаг',
'hour-past-one' => '{0} цагийн өмнө',
'hour-past-other' => '{0} цагийн өмнө',
- 'hour-short-future-one' => '{0} ц. дараа',
- 'hour-short-future-other' => '{0} ц. дараа',
- 'hour-short-past-one' => '{0} ц. өмнө',
- 'hour-short-past-other' => '{0} ц. өмнө',
+ 'hour-short-future-one' => '{0} ц дараа',
+ 'hour-short-future-other' => '{0} ц дараа',
+ 'hour-short-past-one' => '{0} ц өмнө',
+ 'hour-short-past-other' => '{0} ц өмнө',
'microsecond-one' => '{0} микросекунд',
'microsecond-other' => '{0} микросекунд',
'millisecond-one' => '{0} милисекунд',
'millisecond-other' => '{0} милисекунд',
'minute-future-one' => '{0} минутын дараа',
'minute-future-other' => '{0} минутын дараа',
- 'minute-narrow-future-one' => '+{0} м',
- 'minute-narrow-future-other' => '+{0} м',
- 'minute-narrow-past-one' => '-{0} м',
- 'minute-narrow-past-other' => '-{0} м',
+ 'minute-narrow-future-one' => '{0} мин дараа',
+ 'minute-narrow-future-other' => '{0} мин дараа',
+ 'minute-narrow-past-one' => '{0} мин өмнө',
+ 'minute-narrow-past-other' => '{0} мин өмнө',
'minute-one' => '{0} минут',
'minute-other' => '{0} минут',
'minute-past-one' => '{0} минутын өмнө',
'minute-past-other' => '{0} минутын өмнө',
- 'minute-short-future-one' => '{0} мин. дараа',
- 'minute-short-future-other' => '{0} мин. дараа',
- 'minute-short-past-one' => '{0} мин. өмнө',
- 'minute-short-past-other' => '{0} мин. өмнө',
+ 'minute-short-future-one' => '{0} мин дараа',
+ 'minute-short-future-other' => '{0} мин дараа',
+ 'minute-short-past-one' => '{0} мин өмнө',
+ 'minute-short-past-other' => '{0} мин өмнө',
+ 'mon-future-one' => '{0} даваа гарагийн дараа',
+ 'mon-future-other' => '{0} даваа гарагийн дараа',
+ 'mon-narrow-future-one' => '{0} Да дараа',
+ 'mon-narrow-future-other' => '{0} Да дараа',
+ 'mon-narrow-past-one' => '{0} Да өмнө',
+ 'mon-narrow-past-other' => '{0} Да өмнө',
+ 'mon-past-one' => '{0} даваа гарагийн өмнө',
+ 'mon-past-other' => '{0} даваа гарагийн өмнө',
+ 'mon-short-future-one' => '{0} Да дараа',
+ 'mon-short-future-other' => '{0} Да дараа',
+ 'mon-short-past-one' => '{0} Да өмнө',
+ 'mon-short-past-other' => '{0} Да өмнө',
'month-future-one' => '{0} сарын дараа',
'month-future-other' => '{0} сарын дараа',
- 'month-narrow-future-one' => '+{0} ср.',
- 'month-narrow-future-other' => '+{0} ср.',
- 'month-narrow-past-one' => '-{0} ср.',
- 'month-narrow-past-other' => '-{0} ср.',
+ 'month-narrow-future-one' => '{0} сарын дараа',
+ 'month-narrow-future-other' => '{0} сарын дараа',
+ 'month-narrow-past-one' => '{0} сарын өмнө',
+ 'month-narrow-past-other' => '{0} сарын өмнө',
'month-one' => '{0} сар',
'month-other' => '{0} сар',
'month-past-one' => '{0} сарын өмнө',
'month-past-other' => '{0} сарын өмнө',
- 'month-short-future-one' => '{0} ср. дараа',
- 'month-short-future-other' => '{0} ср. дараа',
- 'month-short-past-one' => '{0} ср. өмнө',
- 'month-short-past-other' => '{0} ср. өмнө',
+ 'month-short-future-one' => '{0} сарын дараа',
+ 'month-short-future-other' => '{0} сарын дараа',
+ 'month-short-past-one' => '{0} сарын өмнө',
+ 'month-short-past-other' => '{0} сарын өмнө',
'nanosecond-one' => '{0} наносекунд',
'nanosecond-other' => '{0} наносекунд',
'quarter-future-one' => '{0} улирлын дараа',
'quarter-future-other' => '{0} улирлын дараа',
- 'quarter-narrow-future-one' => '+{0} У',
- 'quarter-narrow-future-other' => '+{0} У',
- 'quarter-narrow-past-one' => '-{0} У',
- 'quarter-narrow-past-other' => '-{0} У',
+ 'quarter-narrow-future-one' => '{0} улирлын дараа',
+ 'quarter-narrow-future-other' => '{0} улирлын дараа',
+ 'quarter-narrow-past-one' => '{0} улирлын өмнө',
+ 'quarter-narrow-past-other' => '{0} улирлын өмнө',
'quarter-past-one' => '{0} улирлын өмнө',
'quarter-past-other' => '{0} улирлын өмнө',
- 'quarter-short-future-one' => '{0} улрл. дараа',
- 'quarter-short-future-other' => '{0} улрл. дараа',
- 'quarter-short-past-one' => '{0} улрл. өмнө',
- 'quarter-short-past-other' => '{0} улрл. өмнө',
+ 'quarter-short-future-one' => '{0} улирлын дараа',
+ 'quarter-short-future-other' => '{0} улирлын дараа',
+ 'quarter-short-past-one' => '{0} улирлын өмнө',
+ 'quarter-short-past-other' => '{0} улирлын өмнө',
+ 'sat-future-one' => '{0} бямба гарагийн дараа',
+ 'sat-future-other' => '{0} бямба гарагийн дараа',
+ 'sat-narrow-future-one' => '{0} Бя дараа',
+ 'sat-narrow-future-other' => '{0} Бя дараа',
+ 'sat-narrow-past-one' => '{0} Бя өмнө',
+ 'sat-narrow-past-other' => '{0} Бя өмнө',
+ 'sat-past-one' => '{0} бямба гарагийн өмнө',
+ 'sat-past-other' => '{0} бямба гарагийн өмнө',
+ 'sat-short-future-one' => '{0} Бя дараа',
+ 'sat-short-future-other' => '{0} Бя дараа',
+ 'sat-short-past-one' => '{0} Бя өмнө',
+ 'sat-short-past-other' => '{0} Бя өмнө',
'second-future-one' => '{0} секундын дараа',
'second-future-other' => '{0} секундын дараа',
- 'second-narrow-future-one' => '+{0} с',
- 'second-narrow-future-other' => '+{0} с',
- 'second-narrow-past-one' => '-{0} с',
- 'second-narrow-past-other' => '-{0} с',
+ 'second-narrow-future-one' => '{0} сек дараа',
+ 'second-narrow-future-other' => '{0} сек дараа',
+ 'second-narrow-past-one' => '{0} сек өмнө',
+ 'second-narrow-past-other' => '{0} сек өмнө',
'second-one' => '{0} секунд',
'second-other' => '{0} секунд',
'second-past-one' => '{0} секундын өмнө',
'second-past-other' => '{0} секундын өмнө',
- 'second-short-future-one' => '{0} сек. дараа',
- 'second-short-future-other' => '{0} сек. дараа',
- 'second-short-past-one' => '{0} сек. өмнө',
- 'second-short-past-other' => '{0} сек. өмнө',
+ 'second-short-future-one' => '{0} сек дараа',
+ 'second-short-future-other' => '{0} сек дараа',
+ 'second-short-past-one' => '{0} сек өмнө',
+ 'second-short-past-other' => '{0} сек өмнө',
+ 'sun-future-one' => '{0} ням гарагийн дараа',
+ 'sun-future-other' => '{0} ням гарагийн дараа',
+ 'sun-narrow-future-one' => '{0} Ня дараа',
+ 'sun-narrow-future-other' => '{0} Ня дараа',
+ 'sun-narrow-past-one' => '{0} Ня өмнө',
+ 'sun-narrow-past-other' => '{0} Ня өмнө',
+ 'sun-past-one' => '{0} ням гарагийн өмнө',
+ 'sun-past-other' => '{0} ням гарагийн өмнө',
+ 'sun-short-future-one' => '{0} Ня дараа',
+ 'sun-short-future-other' => '{0} Ня дараа',
+ 'sun-short-past-one' => '{0} Ня өмнө',
+ 'sun-short-past-other' => '{0} Ня өмнө',
+ 'thu-future-one' => '{0} пүрэв гарагийн дараа',
+ 'thu-future-other' => '{0} пүрэв гарагийн дараа',
+ 'thu-narrow-future-one' => '{0} Пү дараа',
+ 'thu-narrow-future-other' => '{0} Пү дараа',
+ 'thu-narrow-past-one' => '{0} Пү өмнө',
+ 'thu-narrow-past-other' => '{0} Пү өмнө',
+ 'thu-past-one' => '{0} пүрэв гарагийн өмнө',
+ 'thu-past-other' => '{0} пүрэв гарагийн өмнө',
+ 'thu-short-future-one' => '{0} Пү дараа',
+ 'thu-short-future-other' => '{0} Пү дараа',
+ 'thu-short-past-one' => '{0} Пү өмнө',
+ 'thu-short-past-other' => '{0} Пү өмнө',
+ 'tue-future-one' => '{0} мягмар гарагийн дараа',
+ 'tue-future-other' => '{0} мягмар гарагийн дараа',
+ 'tue-narrow-future-one' => '{0} Мя дараа',
+ 'tue-narrow-future-other' => '{0} Мя дараа',
+ 'tue-narrow-past-one' => '{0} Мя өмнө',
+ 'tue-narrow-past-other' => '{0} Мя өмнө',
+ 'tue-past-one' => '{0} мягмар гарагийн өмнө',
+ 'tue-past-other' => '{0} мягмар гарагийн өмнө',
+ 'tue-short-future-one' => '{0} Мя дараа',
+ 'tue-short-future-other' => '{0} Мя дараа',
+ 'tue-short-past-one' => '{0} Мя өмнө',
+ 'tue-short-past-other' => '{0} Мя өмнө',
+ 'wed-future-one' => '{0} лхагва гарагийн дараа',
+ 'wed-future-other' => '{0} лхагва гарагийн дараа',
+ 'wed-narrow-future-one' => '{0} Лха дараа',
+ 'wed-narrow-future-other' => '{0} Лха дараа',
+ 'wed-narrow-past-one' => '{0} Лха өмнө',
+ 'wed-narrow-past-other' => '{0} Лха өмнө',
+ 'wed-past-one' => '{0} лхагва гарагийн өмнө',
+ 'wed-past-other' => '{0} лхагва гарагийн өмнө',
+ 'wed-short-future-one' => '{0} Лха дараа',
+ 'wed-short-future-other' => '{0} Лха дараа',
+ 'wed-short-past-one' => '{0} Лха өмнө',
+ 'wed-short-past-other' => '{0} Лха өмнө',
'week-future-one' => '{0} долоо хоногийн дараа',
'week-future-other' => '{0} долоо хоногийн дараа',
- 'week-narrow-future-one' => '+{0} дх.',
- 'week-narrow-future-other' => '+{0} дх.',
- 'week-narrow-past-one' => '-{0} дх.',
- 'week-narrow-past-other' => '-{0} дх.',
+ 'week-narrow-future-one' => '{0} 7 хоногийн дараа',
+ 'week-narrow-future-other' => '{0} 7 хоногийн дараа',
+ 'week-narrow-past-one' => '{0} 7 хоногийн өмнө',
+ 'week-narrow-past-other' => '{0} 7 хоногийн өмнө',
'week-one' => '{0} долоо хоног',
'week-other' => '{0} долоо хоног',
'week-past-one' => '{0} долоо хоногийн өмнө',
'week-past-other' => '{0} долоо хоногийн өмнө',
- 'week-short-future-one' => '{0} дх. дараа',
- 'week-short-future-other' => '{0} дх. дараа',
- 'week-short-past-one' => '{0} дх. өмнө',
- 'week-short-past-other' => '{0} дх. өмнө',
+ 'week-short-future-one' => '{0} 7 хоногийн дараа',
+ 'week-short-future-other' => '{0} 7 хоногийн дараа',
+ 'week-short-past-one' => '{0} 7 хоногийн өмнө',
+ 'week-short-past-other' => '{0} 7 хоногийн өмнө',
'year-future-one' => '{0} жилийн дараа',
'year-future-other' => '{0} жилийн дараа',
- 'year-narrow-future-one' => '+{0} жл.',
- 'year-narrow-future-other' => '+{0} жл.',
- 'year-narrow-past-one' => '-{0} жл.',
- 'year-narrow-past-other' => '-{0} жл.',
+ 'year-narrow-future-one' => '{0} жилийн дараа',
+ 'year-narrow-future-other' => '{0} жилийн дараа',
+ 'year-narrow-past-one' => '{0} жилийн өмнө',
+ 'year-narrow-past-other' => '{0} жилийн өмнө',
'year-one' => '{0} жил',
'year-other' => '{0} жил',
'year-past-one' => '{0} жилийн өмнө',
'year-past-other' => '{0} жилийн өмнө',
- 'year-short-future-one' => '{0} жл. дараа',
- 'year-short-future-other' => '{0} жл. дараа',
- 'year-short-past-one' => '{0} жл. өмнө',
- 'year-short-past-other' => '{0} жл. өмнө',
-);
+ 'year-short-future-one' => '{0} жилийн дараа',
+ 'year-short-future-other' => '{0} жилийн дараа',
+ 'year-short-past-one' => '{0} жилийн өмнө',
+ 'year-short-past-other' => '{0} жилийн өмнө',
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesMr.php b/MLEB/cldr/CldrNames/CldrNamesMr.php
index 4a77929e..9e956562 100644
--- a/MLEB/cldr/CldrNames/CldrNamesMr.php
+++ b/MLEB/cldr/CldrNames/CldrNamesMr.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'अफार',
'ab' => 'अबखेजियन',
'ace' => 'अचीनी',
@@ -13,7 +13,7 @@ $languageNames = array(
'agq' => 'अघेम',
'ain' => 'ऐनू',
'ak' => 'अकान',
- 'akk' => 'अक्कादिआन',
+ 'akk' => 'अक्केडियन',
'ale' => 'अलेउत',
'alt' => 'दक्षिणात्य अल्ताई',
'am' => 'अम्हारिक',
@@ -24,8 +24,8 @@ $languageNames = array(
'ar-001' => 'आधुनिक प्रमाणित अरबी',
'arc' => 'अ‍ॅरेमाइक',
'arn' => 'मापुची',
- 'arp' => 'अराफाओ',
- 'arw' => 'अरावक',
+ 'arp' => 'आरापाहो',
+ 'arw' => 'आरावाक',
'as' => 'आसामी',
'asa' => 'असु',
'ast' => 'अस्तुरियन',
@@ -35,13 +35,14 @@ $languageNames = array(
'az' => 'अझरबैजानी',
'ba' => 'बष्किर',
'bal' => 'बलुची',
- 'ban' => 'बालिनीस',
+ 'ban' => 'बालिनीज',
'bas' => 'बसा',
'be' => 'बेलारुशियन',
'bej' => 'बेजा',
'bem' => 'बेम्बा',
'bez' => 'बेना',
'bg' => 'बल्गेरियन',
+ 'bgn' => 'पश्चिमी बालोची',
'bho' => 'भोजपुरी',
'bi' => 'बिस्लामा',
'bik' => 'बिकोल',
@@ -61,12 +62,12 @@ $languageNames = array(
'cad' => 'कॅड्डो',
'car' => 'कॅरिब',
'cch' => 'अत्सम',
- 'ce' => 'चेचन',
+ 'ce' => 'चेचेन',
'ceb' => 'सिबुआनो',
'cgg' => 'किगा',
'ch' => 'कॅमोरो',
'chb' => 'चिब्चा',
- 'chg' => 'छगाताई',
+ 'chg' => 'छागाताइ',
'chk' => 'चूकीसे',
'chm' => 'मारी',
'chn' => 'चिनूक जारगॉन',
@@ -74,27 +75,28 @@ $languageNames = array(
'chp' => 'शिपेव्यान',
'chr' => 'चेरोकी',
'chy' => 'शेयेन्न',
- 'ckb' => 'सोरानी कुर्दिश',
+ 'ckb' => 'मध्य कुर्दिश',
'co' => 'कॉर्सिकन',
'cop' => 'कॉप्टिक',
'cr' => 'क्री',
'crh' => 'क्राइमीन तुर्की',
+ 'crs' => 'सेसेल्वा क्रिओल फ्रेंच',
'cs' => 'झेक',
'csb' => 'काशुबियन',
'cu' => 'चर्च स्लाव्हिक',
'cv' => 'चूवाश',
'cy' => 'वेल्श',
'da' => 'डॅनिश',
- 'dak' => 'दाकोता',
+ 'dak' => 'डाकोटा',
'dar' => 'दार्गवा',
'dav' => 'तायता',
'de' => 'जर्मन',
'de-at' => 'ऑस्ट्रियन जर्मन',
'de-ch' => 'स्विस हाय जर्मन',
- 'del' => 'डेलॅवेयर',
+ 'del' => 'डेलावेयर',
'den' => 'स्लाव्ह',
'dgr' => 'डोग्रिब',
- 'din' => 'दिन्का',
+ 'din' => 'डिन्का',
'dje' => 'झार्मा',
'doi' => 'डोगरी',
'dsb' => 'लोअर सोर्बियन',
@@ -104,6 +106,7 @@ $languageNames = array(
'dyo' => 'जोला-फोंयी',
'dyu' => 'ड्युला',
'dz' => 'झोंगखा',
+ 'dzg' => 'दाझागा',
'ebu' => 'एम्बू',
'ee' => 'एवे',
'efi' => 'एफिक',
@@ -137,6 +140,7 @@ $languageNames = array(
'fr' => 'फ्रेंच',
'fr-ca' => 'कॅनडियन फ्रेंच',
'fr-ch' => 'स्विस फ्रेंच',
+ 'frc' => 'केजॉन फ्रेंच',
'frm' => 'मिडल फ्रेंच',
'fro' => 'पुरातन फ्रेंच',
'frr' => 'उत्तरी फ्रिशियन',
@@ -144,8 +148,9 @@ $languageNames = array(
'fur' => 'फ्रियुलियान',
'fy' => 'पश्चिमी फ्रिशियन',
'ga' => 'आयरिश',
- 'gaa' => 'Ga',
+ 'gaa' => 'गा',
'gag' => 'गागाउझ',
+ 'gan' => 'गॅन चिनी',
'gay' => 'गायो',
'gba' => 'बाया',
'gd' => 'स्कॉट्स गेलिक',
@@ -167,6 +172,7 @@ $languageNames = array(
'gwi' => 'ग्विच’इन',
'ha' => 'हौसा',
'hai' => 'हैडा',
+ 'hak' => 'हाक्का चिनी',
'haw' => 'हवाईयन',
'he' => 'हिब्रू',
'hi' => 'हिंदी',
@@ -176,6 +182,7 @@ $languageNames = array(
'ho' => 'हिरी मॉटू',
'hr' => 'क्रोएशियन',
'hsb' => 'अप्पर सॉर्बियन',
+ 'hsn' => 'शियांग चिनी',
'ht' => 'हैतीयन',
'hu' => 'हंगेरियन',
'hup' => 'हूपा',
@@ -183,6 +190,7 @@ $languageNames = array(
'hz' => 'हरेरो',
'ia' => 'इंटरलिंग्वा',
'iba' => 'इबान',
+ 'ibb' => 'इबिबिओ',
'id' => 'इंडोनेशियन',
'ie' => 'इन्टरलिंग',
'ig' => 'ईग्बो',
@@ -193,7 +201,7 @@ $languageNames = array(
'io' => 'इडौ',
'is' => 'आईसलँडिक',
'it' => 'इटालियन',
- 'iu' => 'इनुकिटुट्',
+ 'iu' => 'इनुक्तीटुट',
'ja' => 'जपानी',
'jbo' => 'लोज्बान',
'jgo' => 'गोम्बा',
@@ -220,6 +228,7 @@ $languageNames = array(
'ki' => 'किकुयू',
'kj' => 'क्वान्यामा',
'kk' => 'कझाक',
+ 'kkj' => 'काको',
'kl' => 'कलाल्लिसत',
'kln' => 'कालेंजीन',
'km' => 'ख्मेर',
@@ -237,6 +246,7 @@ $languageNames = array(
'ks' => 'काश्मीरी',
'ksb' => 'शांबाला',
'ksf' => 'बाफिया',
+ 'ksh' => 'कोलोग्नियन',
'ku' => 'कुर्दिश',
'kum' => 'कुमीक',
'kut' => 'कुतेनाई',
@@ -256,14 +266,16 @@ $languageNames = array(
'ln' => 'लिंगाला',
'lo' => 'लाओ',
'lol' => 'मोंगो',
+ 'lou' => 'ल्युसियाना क्रिओल',
'loz' => 'लोझि',
+ 'lrc' => 'उत्तरी ल्युरी',
'lt' => 'लिथुआनियन',
'lu' => 'ल्यूबा-कटांगा',
'lua' => 'लुबा-लुलुआ',
'lui' => 'लुइसेनो',
'lun' => 'लुन्डा',
'luo' => 'ल्युओ',
- 'lus' => 'लुशाई',
+ 'lus' => 'मिझो',
'luy' => 'ल्युइया',
'lv' => 'लात्व्हियन',
'mad' => 'मादुरीस',
@@ -296,18 +308,21 @@ $languageNames = array(
'ms' => 'मलय',
'mt' => 'माल्टिज्',
'mua' => 'मुंडांग',
- 'mul' => 'एकविध भाषा',
+ 'mul' => 'एकाधिक भाषा',
'mus' => 'क्रीक',
'mwl' => 'मिरांडिज्',
'mwr' => 'मारवाडी',
'my' => 'बर्मी',
'myv' => 'एर्झ्या',
+ 'mzn' => 'माझानदेरानी',
'na' => 'नउरू',
+ 'nan' => 'मिन नान चिनी',
'nap' => 'नेपोलिटान',
'naq' => 'नामा',
'nb' => 'नॉर्वेजियन बोकमाल',
'nd' => 'उत्तर देबेली',
'nds' => 'लो जर्मन',
+ 'nds-nl' => 'लो सॅक्सन',
'ne' => 'नेपाळी',
'new' => 'नेवारी',
'ng' => 'डोंगा',
@@ -317,6 +332,7 @@ $languageNames = array(
'nl-be' => 'फ्लेमिश',
'nmg' => 'क्वासिओ',
'nn' => 'नॉर्वेजियन न्योर्स्क',
+ 'nnh' => 'जिएम्बून',
'no' => 'नोर्वेजियन',
'nog' => 'नोगाई',
'non' => 'पुरातन नॉर्स',
@@ -344,11 +360,13 @@ $languageNames = array(
'pam' => 'पाम्पान्गा',
'pap' => 'पापियामेन्टो',
'pau' => 'पालाउआन',
+ 'pcm' => 'नायजिरिअन पिजिन',
'peo' => 'पुरातन फारसी',
'phn' => 'फोनिशियन',
'pi' => 'पाली',
'pl' => 'पोलिश',
'pon' => 'पोह्नपियन',
+ 'prg' => 'प्रुशियन',
'pro' => 'पुरातन प्रोव्हेन्सल',
'ps' => 'पश्तो',
'pt' => 'पोर्तुगीज',
@@ -371,16 +389,18 @@ $languageNames = array(
'rwk' => 'रव्हा',
'sa' => 'संस्कृत',
'sad' => 'सँडवे',
- 'sah' => 'याकूत',
+ 'sah' => 'साखा',
'sam' => 'सामरिटान अरॅमिक',
'saq' => 'सांबुरू',
'sas' => 'सासाक',
'sat' => 'संताली',
+ 'sba' => 'गाम्बे',
'sbp' => 'सांगु',
'sc' => 'सर्दिनियन',
'scn' => 'सिसिलियन',
'sco' => 'स्कॉट्स',
'sd' => 'सिंधी',
+ 'sdh' => 'दक्षिणी कुर्दिश',
'se' => 'उत्तरी सामी',
'seh' => 'सेना',
'sel' => 'सेल्कप',
@@ -408,6 +428,7 @@ $languageNames = array(
'srn' => 'स्रानान टॉन्गो',
'srr' => 'सेरेर',
'ss' => 'स्वाती',
+ 'ssy' => 'साहो',
'st' => 'सेसोथो',
'su' => 'सुंदानीज',
'suk' => 'सुकुमा',
@@ -415,8 +436,8 @@ $languageNames = array(
'sux' => 'सुमेरियन',
'sv' => 'स्वीडिश',
'sw' => 'स्वाहिली',
+ 'sw-cd' => 'काँगो स्वाहिली',
'swb' => 'कोमोरियन',
- 'swc' => 'काँगो स्वाहिली',
'syc' => 'अभिजात सिरियाक',
'syr' => 'सिरियाक',
'ta' => 'तामिळ',
@@ -441,6 +462,7 @@ $languageNames = array(
'tog' => 'न्यासा टोन्गा',
'tpi' => 'टोक पिसिन',
'tr' => 'तुर्की',
+ 'trv' => 'तारोको',
'ts' => 'सोंगा',
'tsi' => 'सिम्शियन',
'tt' => 'तातर',
@@ -466,15 +488,20 @@ $languageNames = array(
'vot' => 'वॉटिक',
'vun' => 'वुंजो',
'wa' => 'वालून',
- 'wal' => 'वलामो',
+ 'wae' => 'वालसेर',
+ 'wal' => 'वोलायता',
'war' => 'वारे',
'was' => 'वाशो',
+ 'wbp' => 'वार्लपिरी',
'wo' => 'वोलोफ',
+ 'wuu' => 'व्हू चिनी',
'xal' => 'काल्मिक',
'xh' => 'खोसा',
'xog' => 'सोगा',
'yao' => 'याओ',
'yap' => 'यापीस',
+ 'yav' => 'यांगबेन',
+ 'ybb' => 'येमबा',
'yi' => 'यिद्दिश',
'yo' => 'योरुबा',
'yue' => 'कँटोनीज',
@@ -490,9 +517,9 @@ $languageNames = array(
'zun' => 'झुनी',
'zxx' => 'भाषावैज्ञानिक सामग्री नाही',
'zza' => 'झाझा',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'AED' => 'संयुक्त अरब अमीरात दिरहॅम',
'AFN' => 'अफगाण अफगाणी',
'ALL' => 'अल्बानियन लेक',
@@ -508,20 +535,22 @@ $currencyNames = array(
'BDT' => 'बांगलादेशी टका',
'BGN' => 'बल्गेरियन लेव',
'BHD' => 'बाहरिनी दिनार',
- 'BIF' => 'बुरुडियन फ्रँक',
+ 'BIF' => 'बुरुंडियन फ्रँक',
'BMD' => 'बर्मुडा डॉलर',
'BND' => 'ब्रुनेई डॉलर',
'BOB' => 'बोलिव्हियन बोलिव्हियानो',
'BRL' => 'ब्राझिलियन रियाल',
'BSD' => 'बहामी डॉलर',
'BTN' => 'भूतानी एंगल्ट्रम',
- 'BWP' => 'बोट्सवाना पुला',
- 'BYR' => 'बेलारुशियन रुबल',
+ 'BWP' => 'बोट्सवानन पुला',
+ 'BYN' => 'बेलारुशियन रुबल',
+ 'BYR' => 'बेलारुशियन रुबल (2000–2016)',
'BZD' => 'बेलीझ डॉलर',
'CAD' => 'कॅनडियन डॉलर',
'CDF' => 'काँगोलीज फ्रँक',
'CHF' => 'स्विस फ्रँक',
'CLP' => 'चिली पेसो',
+ 'CNH' => 'चिनी युआन (ऑफशोर)',
'CNY' => 'चीनी युआन',
'COP' => 'कोलंबियन पेसो',
'CRC' => 'कोस्टा रिका कोलोन',
@@ -534,12 +563,12 @@ $currencyNames = array(
'DOP' => 'डोमिनिकन पेसो',
'DZD' => 'अल्जेरियन दिनार',
'EGP' => 'इजिप्शियन पाउंड',
- 'ERN' => 'इरिट्रियन नाफ्का',
+ 'ERN' => 'इरिट्रियन नाक्फा',
'ETB' => 'इथिओपियन बिर',
'EUR' => 'युरो',
'FJD' => 'फिजियन डॉलर',
'FKP' => 'फॉकलंड आयलंड पाउंड',
- 'GBP' => 'ब्रिटिश पाऊंड स्टर्लिंग',
+ 'GBP' => 'ब्रिटिश पाऊंड',
'GEL' => 'जॉर्जियन लारी',
'GHS' => 'घानीयन सेडी',
'GIP' => 'जिब्राल्टर पाउंड',
@@ -548,11 +577,11 @@ $currencyNames = array(
'GTQ' => 'ग्वाटेमालाचे क्वेत्झाल',
'GYD' => 'गयाना डॉलर',
'HKD' => 'हाँगकाँग डॉलर',
- 'HNL' => 'होंडुरा लेम्पियरा',
+ 'HNL' => 'होन्डुरन लेंपिरा',
'HRK' => 'क्रोएशियन कूना',
'HTG' => 'हैती गोअर्ड',
'HUF' => 'हंगेरियन फॉरिन्ट',
- 'IDR' => 'इंडोनेशियन रुपैयाह',
+ 'IDR' => 'इंडोनेशियन रुपिया',
'ILS' => 'ईस्त्रायली न्यू शेकेल',
'INR' => 'भारतीय रुपया',
'IQD' => 'इराकी दिनार',
@@ -564,15 +593,15 @@ $currencyNames = array(
'KES' => 'केनियन शिलिंग',
'KGS' => 'किरगिस्तानी सॉम',
'KHR' => 'कंबोडियन रियेल',
- 'KMF' => 'कोलोरियन फ्रँक',
+ 'KMF' => 'कोमोरियन फ्रँक',
'KPW' => 'उत्तर कोरियन वॉन',
'KRW' => 'दक्षिण कोरियन वॉन',
'KWD' => 'कुवैती दिनार',
'KYD' => 'केमेन आयलॅंड डॉलर',
'KZT' => 'कझाकिस्तानी तेंगे',
- 'LAK' => 'लेओशियन किप',
+ 'LAK' => 'लाओशियन किप',
'LBP' => 'लेबनीज पाउंड',
- 'LKR' => 'श्रीलंकन रुपी',
+ 'LKR' => 'श्रीलंकन रुपया',
'LRD' => 'लाइबेरियन डॉलर',
'LSL' => 'लेसोटो लोटी',
'LTL' => 'लिथुआनियन लिटास',
@@ -585,7 +614,8 @@ $currencyNames = array(
'MMK' => 'म्यानमार क्याट',
'MNT' => 'मंगोलियन टुग्रिक',
'MOP' => 'मॅकॅनीज् पटाका',
- 'MRO' => 'मॉरिटानियन ओगिया',
+ 'MRO' => 'मॉरिटानियन ओगिया (1973–2017)',
+ 'MRU' => 'मॉरिटानियन ओगिया',
'MUR' => 'मॉरिशियन रुपी',
'MVR' => 'मालदीवियन रुफिया',
'MWK' => 'मालावियन क्वाचा',
@@ -600,7 +630,7 @@ $currencyNames = array(
'NZD' => 'न्यूझीलँड डॉलर',
'OMR' => 'ओमानी रियाल',
'PAB' => 'पनामा बाल्बोआ',
- 'PEN' => 'पेरुवियन नुइव्हो सोल',
+ 'PEN' => 'पेरुवियन सोल',
'PGK' => 'पापुआ न्यू गिनीयन किना',
'PHP' => 'फिलिपिनी पेसो',
'PKR' => 'पाकिस्तानी रुपया',
@@ -622,14 +652,15 @@ $currencyNames = array(
'SOS' => 'सोमाली शिलिंग',
'SRD' => 'सुरिनामी डॉलर',
'SSP' => 'दक्षिण सुदानी पाउंड',
- 'STD' => 'साओ टोम आणि प्रिन्सिपे डोबरा',
+ 'STD' => 'साओ टोम आणि प्रिन्सिपे डोबरा (1977–2017)',
+ 'STN' => 'साओ टोम आणि प्रिन्सिपे डोबरा',
'SYP' => 'सीरियन पाउंड',
'SZL' => 'स्वाझी लीलांगेनी',
'THB' => 'थाई बाहत',
'TJS' => 'ताजकीस्तानी सोमोनी',
'TMT' => 'तुर्कमेनिस्तानी मानाट',
'TND' => 'ट्यूनिशियन दिनार',
- 'TOP' => 'टोंगा पाआंगा',
+ 'TOP' => 'टोंगन पाआंगा',
'TRY' => 'तुर्की लिरा',
'TTD' => 'त्रिनिदाद आणि टोबॅगो डॉलर',
'TWD' => 'न्यू तैवान डॉलर',
@@ -638,23 +669,24 @@ $currencyNames = array(
'UGX' => 'युगांडा शिलिंग',
'USD' => 'यूएस डॉलर',
'UYU' => 'उरुग्वेचा पेसो',
- 'UZS' => 'उझबेकिस्तान सॉम',
- 'VEF' => 'व्हेनेझुएला बोलिव्हार',
+ 'UZS' => 'उझबेकिस्तानी सोम',
+ 'VEF' => 'व्हेनेझुएला बोलिव्हार (2008–2018)',
+ 'VES' => 'व्हेनेझुएला बोलिव्हार',
'VND' => 'व्हिएतनामी डोंग',
- 'VUV' => 'वानाटु वाटु',
+ 'VUV' => 'वानुआतु वाटु',
'WST' => 'सामोअन टाला',
- 'XAF' => '[CFA] फ्रँक [BEAC]',
+ 'XAF' => 'मध्य आफ्रिकन [CFA] फ्रँक',
'XCD' => 'पूर्व कॅरीबियन डॉलर',
- 'XOF' => '[CFA] फ्रँक [BCEAO]',
+ 'XOF' => 'पश्चिम आफ्रिकन [CFA] फ्रँक',
'XPF' => '[CFP] फ्रँक',
'XXX' => 'अज्ञात चलन',
'YER' => 'येमेनी रियाल',
'ZAR' => 'दक्षिण आफ्रिकी रँड',
'ZMK' => 'झांबियन क्वाचा (1968–2012)',
'ZMW' => 'झांबियन क्वाचा',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'AED' => 'AED',
'AFN' => 'AFN',
'ALL' => 'ALL',
@@ -678,12 +710,14 @@ $currencySymbols = array(
'BSD' => 'BSD',
'BTN' => 'BTN',
'BWP' => 'BWP',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CA$',
'CDF' => 'CDF',
'CHF' => 'CHF',
'CLP' => 'CLP',
+ 'CNH' => 'CNH',
'CNY' => 'CN¥',
'COP' => 'COP',
'CRC' => 'CRC',
@@ -747,6 +781,7 @@ $currencySymbols = array(
'MNT' => 'MNT',
'MOP' => 'MOP',
'MRO' => 'MRO',
+ 'MRU' => 'MRU',
'MUR' => 'MUR',
'MVR' => 'MVR',
'MWK' => 'MWK',
@@ -784,6 +819,7 @@ $currencySymbols = array(
'SRD' => 'SRD',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'STN',
'SYP' => 'SYP',
'SZL' => 'SZL',
'THB' => '฿',
@@ -801,6 +837,7 @@ $currencySymbols = array(
'UYU' => 'UYU',
'UZS' => 'UZS',
'VEF' => 'VEF',
+ 'VES' => 'VES',
'VND' => '₫',
'VUV' => 'VUV',
'WST' => 'WST',
@@ -811,9 +848,9 @@ $currencySymbols = array(
'YER' => 'YER',
'ZAR' => 'ZAR',
'ZMW' => 'ZMW',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'अ‍ॅसेन्शियन बेट',
'AD' => 'अँडोरा',
'AE' => 'संयुक्त अरब अमीरात',
@@ -822,7 +859,6 @@ $countryNames = array(
'AI' => 'अँग्विला',
'AL' => 'अल्बानिया',
'AM' => 'अर्मेनिया',
- 'AN' => 'नेदरलँड्‍स अँ‍टिल्स',
'AO' => 'अंगोला',
'AQ' => 'अंटार्क्टिका',
'AR' => 'अर्जेंटिना',
@@ -852,7 +888,7 @@ $countryNames = array(
'BV' => 'बोउवेट बेट',
'BW' => 'बोट्सवाना',
'BY' => 'बेलारूस',
- 'BZ' => 'बलिझ',
+ 'BZ' => 'बेलिझे',
'CA' => 'कॅनडा',
'CC' => 'कोकोस (कीलिंग) बेटे',
'CD' => 'काँगो - किंशासा',
@@ -869,10 +905,10 @@ $countryNames = array(
'CR' => 'कोस्टा रिका',
'CU' => 'क्यूबा',
'CV' => 'केप व्हर्डे',
- 'CW' => 'कुरॅको',
+ 'CW' => 'क्युरासाओ',
'CX' => 'ख्रिसमस बेट',
'CY' => 'सायप्रस',
- 'CZ' => 'झेक प्रजासत्ताक',
+ 'CZ' => 'झेकिया',
'DE' => 'जर्मनी',
'DG' => 'दिएगो गार्सिया',
'DJ' => 'जिबौटी',
@@ -889,6 +925,7 @@ $countryNames = array(
'ES' => 'स्पेन',
'ET' => 'इथिओपिया',
'EU' => 'युरोपीय संघ',
+ 'EZ' => 'युरोझोन',
'FI' => 'फिनलंड',
'FJ' => 'फिजी',
'FK' => 'फॉकलंड बेटे',
@@ -924,11 +961,11 @@ $countryNames = array(
'ID' => 'इंडोनेशिया',
'IE' => 'आयर्लंड',
'IL' => 'इस्त्राइल',
- 'IM' => 'इस्ले ऑफ मॅन',
+ 'IM' => 'आयल ऑफ मॅन',
'IN' => 'भारत',
'IO' => 'ब्रिटिश हिंदी महासागर क्षेत्र',
'IQ' => 'इराक',
- 'IR' => 'ईराण',
+ 'IR' => 'इराण',
'IS' => 'आइसलँड',
'IT' => 'इटली',
'JE' => 'जर्सी',
@@ -989,7 +1026,7 @@ $countryNames = array(
'NL' => 'नेदरलँड',
'NO' => 'नॉर्वे',
'NP' => 'नेपाळ',
- 'NR' => 'नऊरु',
+ 'NR' => 'नाउरू',
'NU' => 'नीयू',
'NZ' => 'न्यूझीलंड',
'OM' => 'ओमान',
@@ -1043,7 +1080,7 @@ $countryNames = array(
'TH' => 'थायलंड',
'TJ' => 'ताजिकिस्तान',
'TK' => 'तोकेलाउ',
- 'TL' => 'पूर्व तिमोर',
+ 'TL' => 'तिमोर-लेस्ते',
'TM' => 'तुर्कमेनिस्तान',
'TN' => 'ट्यूनिशिया',
'TO' => 'टोंगा',
@@ -1055,6 +1092,7 @@ $countryNames = array(
'UA' => 'युक्रेन',
'UG' => 'युगांडा',
'UM' => 'यू.एस. आउटलाइंग बेटे',
+ 'UN' => 'यूएन',
'US' => 'यू.एस.',
'UY' => 'उरुग्वे',
'UZ' => 'उझबेकिस्तान',
@@ -1064,7 +1102,7 @@ $countryNames = array(
'VG' => 'ब्रिटिश व्हर्जिन बेटे',
'VI' => 'यू.एस. व्हर्जिन बेटे',
'VN' => 'व्हिएतनाम',
- 'VU' => 'वानौटु',
+ 'VU' => 'वानुआतु',
'WF' => 'वालिस आणि फ्यूचूना',
'WS' => 'सामोआ',
'XK' => 'कोसोव्हो',
@@ -1073,47 +1111,61 @@ $countryNames = array(
'ZA' => 'दक्षिण आफ्रिका',
'ZM' => 'झाम्बिया',
'ZW' => 'झिम्बाब्वे',
-);
+];
-$timeUnits = array(
- 'day-future-one' => '{0} दिवसामध्ये',
- 'day-future-other' => '{0} दिवसांमध्ये',
- 'day-narrow-future-one' => '+{0} दिवस',
- 'day-narrow-future-other' => '+{0} दिवस',
- 'day-narrow-past-one' => '-{0} दिवस',
- 'day-narrow-past-other' => '-{0} दिवस',
+$timeUnits = [
+ 'century-one' => '{0} शतक',
+ 'century-other' => '{0} शतके',
+ 'day-future-one' => 'येत्या {0} दिवसामध्ये',
+ 'day-future-other' => 'येत्या {0} दिवसांमध्ये',
+ 'day-narrow-future-one' => '{0} दिवसामध्ये',
+ 'day-narrow-future-other' => '{0} दिवसांमध्ये',
+ 'day-narrow-past-one' => '{0} दिवसापूर्वी',
+ 'day-narrow-past-other' => '{0} दिवसांपूर्वी',
'day-one' => '{0} दिवस',
'day-other' => '{0} दिवस',
'day-past-one' => '{0} दिवसापूर्वी',
'day-past-other' => '{0} दिवसांपूर्वी',
'day-short-future-one' => '{0} दिवसामध्ये',
- 'day-short-future-other' => '{0} दिवसांमध्ये',
+ 'day-short-future-other' => 'येत्या {0} दिवसांमध्ये',
'day-short-past-one' => '{0} दिवसापूर्वी',
'day-short-past-other' => '{0} दिवसांपूर्वी',
+ 'fri-future-one' => 'येत्या {0} शुक्रवारी',
+ 'fri-future-other' => 'येत्या {0} शुक्रवारी',
+ 'fri-narrow-future-one' => 'येत्या {0} शुक्रवारी',
+ 'fri-narrow-future-other' => 'येत्या {0} शुक्रवारी',
+ 'fri-narrow-past-one' => '{0} शुक्रवारपूर्वी',
+ 'fri-narrow-past-other' => '{0} शुक्रवारांपूर्वी',
+ 'fri-past-one' => '{0} शुक्रवारपूर्वी',
+ 'fri-past-other' => '{0} शुक्रवारांपूर्वी',
+ 'fri-short-future-one' => 'येत्या {0} शुक्रवारी',
+ 'fri-short-future-other' => 'येत्या {0} शुक्रवारी',
+ 'fri-short-past-one' => '{0} शुक्रवारपूर्वी',
+ 'fri-short-past-other' => '{0} शुक्रवारांपूर्वी',
'hour-future-one' => '{0} तासामध्ये',
'hour-future-other' => '{0} तासांमध्ये',
- 'hour-narrow-future-one' => '+{0} ता',
- 'hour-narrow-future-other' => '+{0} ता',
- 'hour-narrow-past-one' => '-{0} ता',
- 'hour-narrow-past-other' => '-{0} ता',
+ 'hour-narrow-future-one' => 'येत्या {0} तासामध्ये',
+ 'hour-narrow-future-other' => 'येत्या {0} तासांमध्ये',
+ 'hour-narrow-past-one' => '{0} तासापूर्वी',
+ 'hour-narrow-past-other' => '{0} तासांपूर्वी',
'hour-one' => '{0} तास',
'hour-other' => '{0} तास',
'hour-past-one' => '{0} तासापूर्वी',
'hour-past-other' => '{0} तासांपूर्वी',
'hour-short-future-one' => '{0} तासामध्ये',
- 'hour-short-future-other' => '{0} तासामध्ये',
+ 'hour-short-future-other' => '{0} तासांमध्ये',
'hour-short-past-one' => '{0} तासापूर्वी',
- 'hour-short-past-other' => '{0} तासापूर्वी',
+ 'hour-short-past-other' => '{0} तासांपूर्वी',
'microsecond-one' => '{0} मायक्रोसेकंद',
'microsecond-other' => '{0} मायक्रोसेकंद',
'millisecond-one' => '{0} मिलिसेकंद',
'millisecond-other' => '{0} मिलिसेकंद',
'minute-future-one' => '{0} मिनिटामध्ये',
'minute-future-other' => '{0} मिनिटांमध्ये',
- 'minute-narrow-future-one' => '+{0} मि',
- 'minute-narrow-future-other' => '+{0} मि',
- 'minute-narrow-past-one' => '-{0} मि',
- 'minute-narrow-past-other' => '-{0} मि',
+ 'minute-narrow-future-one' => '{0} मिनि. मध्ये',
+ 'minute-narrow-future-other' => '{0} मिनि. मध्ये',
+ 'minute-narrow-past-one' => '{0} मिनि. पूर्वी',
+ 'minute-narrow-past-other' => '{0} मिनि. पूर्वी',
'minute-one' => '{0} मिनिट',
'minute-other' => '{0} मिनिटे',
'minute-past-one' => '{0} मिनिटापूर्वी',
@@ -1122,12 +1174,24 @@ $timeUnits = array(
'minute-short-future-other' => '{0} मिनि. मध्ये',
'minute-short-past-one' => '{0} मिनि. पूर्वी',
'minute-short-past-other' => '{0} मिनि. पूर्वी',
- 'month-future-one' => '{0} महिन्यामध्ये',
- 'month-future-other' => '{0} महिन्यांमध्ये',
- 'month-narrow-future-one' => '+{0} महिना',
- 'month-narrow-future-other' => '+{0} महिना',
- 'month-narrow-past-one' => '-{0} महिना',
- 'month-narrow-past-other' => '-{0} महिना',
+ 'mon-future-one' => 'येत्या {0} सोमवारी',
+ 'mon-future-other' => 'येत्या {0} सोमवारी',
+ 'mon-narrow-future-one' => 'येत्या {0} सोमवारी',
+ 'mon-narrow-future-other' => 'येत्या {0} सोमवारी',
+ 'mon-narrow-past-one' => '{0} सोमवारापूर्वी',
+ 'mon-narrow-past-other' => '{0} सोमवारांपूर्वी',
+ 'mon-past-one' => '{0} सोमवारपूर्वी',
+ 'mon-past-other' => '{0} सोमवारांपूर्वी',
+ 'mon-short-future-one' => 'येत्या {0} सोमवारी',
+ 'mon-short-future-other' => 'येत्या {0} सोमवारी',
+ 'mon-short-past-one' => '{0} सोमवारापूर्वी',
+ 'mon-short-past-other' => '{0} सोमवारांपूर्वी',
+ 'month-future-one' => 'येत्या {0} महिन्यामध्ये',
+ 'month-future-other' => 'येत्या {0} महिन्यांमध्ये',
+ 'month-narrow-future-one' => '{0} महिन्यामध्ये',
+ 'month-narrow-future-other' => '{0} महिन्यांमध्ये',
+ 'month-narrow-past-one' => '{0} महिन्यापूर्वी',
+ 'month-narrow-past-other' => '{0} महिन्यांपूर्वी',
'month-one' => '{0} महिना',
'month-other' => '{0} महिने',
'month-past-one' => '{0} महिन्यापूर्वी',
@@ -1135,61 +1199,121 @@ $timeUnits = array(
'month-short-future-one' => '{0} महिन्यामध्ये',
'month-short-future-other' => '{0} महिन्यामध्ये',
'month-short-past-one' => '{0} महिन्यापूर्वी',
- 'month-short-past-other' => '{0} महिन्यापूर्वी',
+ 'month-short-past-other' => '{0} महिन्यांपूर्वी',
'nanosecond-one' => '{0} नॅनोसेकंद',
'nanosecond-other' => '{0} नॅनोसेकंद',
'quarter-future-one' => '{0} तिमाहीमध्ये',
'quarter-future-other' => '{0} तिमाहींमध्ये',
- 'quarter-narrow-future-one' => '+{0} तिमाही',
- 'quarter-narrow-future-other' => '+{0} तिमाही',
- 'quarter-narrow-past-one' => '-{0} तिमाही',
- 'quarter-narrow-past-other' => '-{0} तिमाही',
+ 'quarter-narrow-future-one' => '{0} तिमाहीमध्ये',
+ 'quarter-narrow-future-other' => '{0} तिमाहींमध्ये',
+ 'quarter-narrow-past-one' => '{0} तिमाहीपूर्वी',
+ 'quarter-narrow-past-other' => '{0} तिमाहींपूर्वी',
'quarter-past-one' => '{0} तिमाहीपूर्वी',
'quarter-past-other' => '{0} तिमाहींपूर्वी',
- 'quarter-short-future-one' => '{0} तिमाहीमध्ये',
- 'quarter-short-future-other' => '{0} तिमाहींमध्ये',
+ 'quarter-short-future-one' => 'येत्या {0} तिमाहीमध्ये',
+ 'quarter-short-future-other' => 'येत्या {0} तिमाहींमध्ये',
'quarter-short-past-one' => '{0} तिमाहीपूर्वी',
'quarter-short-past-other' => '{0} तिमाहींपूर्वी',
+ 'sat-future-one' => 'येत्या {0} शनिवारी',
+ 'sat-future-other' => 'येत्या {0} शनिवारी',
+ 'sat-narrow-future-one' => 'येत्या {0} शनिवारी',
+ 'sat-narrow-future-other' => 'येत्या {0} शनिवारी',
+ 'sat-narrow-past-one' => '{0} शनिवारपूर्वी',
+ 'sat-narrow-past-other' => '{0} शनिवारांपूर्वी',
+ 'sat-past-one' => '{0} शनिवारपूर्वी',
+ 'sat-past-other' => '{0} शनिवारांपूर्वी',
+ 'sat-short-future-one' => 'येत्या {0} शनिवारी',
+ 'sat-short-future-other' => 'येत्या {0} शनिवारी',
+ 'sat-short-past-one' => '{0} शनिवारपूर्वी',
+ 'sat-short-past-other' => '{0} शनिवारांपूर्वी',
'second-future-one' => '{0} सेकंदामध्ये',
'second-future-other' => '{0} सेकंदांमध्ये',
- 'second-narrow-future-one' => '+{0} से',
- 'second-narrow-future-other' => '+{0} से',
- 'second-narrow-past-one' => '-{0} से पूर्वी',
- 'second-narrow-past-other' => '-{0} से पूर्वी',
+ 'second-narrow-future-one' => '{0} से. मध्ये',
+ 'second-narrow-future-other' => 'येत्या {0} से. मध्ये',
+ 'second-narrow-past-one' => '{0} से. पूर्वी',
+ 'second-narrow-past-other' => '{0} से. पूर्वी',
'second-one' => '{0} सेकंद',
'second-other' => '{0} सेकंद',
'second-past-one' => '{0} सेकंदापूर्वी',
'second-past-other' => '{0} सेकंदांपूर्वी',
- 'second-short-future-one' => '{0} सेकंदामध्ये',
- 'second-short-future-other' => '{0} सेकंदामध्ये',
- 'second-short-past-one' => '{0} सेकंदापूर्वी',
- 'second-short-past-other' => '{0} सेकंदापूर्वी',
+ 'second-short-future-one' => '{0} से. मध्ये',
+ 'second-short-future-other' => '{0} से. मध्ये',
+ 'second-short-past-one' => '{0} से. पूर्वी',
+ 'second-short-past-other' => '{0} से. पूर्वी',
+ 'sun-future-one' => 'येत्या {0} रविवारी',
+ 'sun-future-other' => 'येत्या {0} रविवारी',
+ 'sun-narrow-future-one' => 'येत्या {0} रविवारी',
+ 'sun-narrow-future-other' => 'येत्या {0} रविवारी',
+ 'sun-narrow-past-one' => '{0} रविवारपूर्वी',
+ 'sun-narrow-past-other' => '{0} रविवारांपूर्वी',
+ 'sun-past-one' => '{0} रविवारपूर्वी',
+ 'sun-past-other' => '{0} रविवारांपूर्वी',
+ 'sun-short-future-one' => 'येत्या {0} रविवारी',
+ 'sun-short-future-other' => 'येत्या {0} रविवारी',
+ 'sun-short-past-one' => '{0} रविवारपूर्वी',
+ 'sun-short-past-other' => '{0} रविवारांपूर्वी',
+ 'thu-future-one' => 'येत्या {0} गुरूवारी',
+ 'thu-future-other' => 'येत्या {0} गुरूवारी',
+ 'thu-narrow-future-one' => 'येत्या {0} गुरूवारी',
+ 'thu-narrow-future-other' => 'येत्या {0} गुरूवारी',
+ 'thu-narrow-past-one' => '{0} गुरूवारपूर्वी',
+ 'thu-narrow-past-other' => '{0} गुरूवारांपूर्वी',
+ 'thu-past-one' => '{0} गुरूवारपूर्वी',
+ 'thu-past-other' => '{0} गुरूवारांपूर्वी',
+ 'thu-short-future-one' => 'येत्या {0} गुरूवारी',
+ 'thu-short-future-other' => 'येत्या {0} गुरूवारी',
+ 'thu-short-past-one' => '{0} गुरूवारपूर्वी',
+ 'thu-short-past-other' => '{0} गुरूवारांपूर्वी',
+ 'tue-future-one' => 'येत्या {0} मंगळवारी',
+ 'tue-future-other' => 'येत्या {0} मंगळवारी',
+ 'tue-narrow-future-one' => 'येत्या {0} मंगळवारी',
+ 'tue-narrow-future-other' => 'येत्या {0} मंगळवारी',
+ 'tue-narrow-past-one' => '{0} मंगळवारपूर्वी',
+ 'tue-narrow-past-other' => '{0} मंगळवारांपूर्वी',
+ 'tue-past-one' => '{0} मंगळवारपूर्वी',
+ 'tue-past-other' => '{0} मंगळवारांपूर्वी',
+ 'tue-short-future-one' => 'येत्या {0} मंगळवारी',
+ 'tue-short-future-other' => 'येत्या {0} मंगळवारी',
+ 'tue-short-past-one' => '{0} मंगळवारापूर्वी',
+ 'tue-short-past-other' => '{0} मंगळवारांपूर्वी',
+ 'wed-future-one' => 'येत्या {0} बुधवारी',
+ 'wed-future-other' => 'येत्या {0} बुधवारी',
+ 'wed-narrow-future-one' => 'येत्या {0} बुधवारी',
+ 'wed-narrow-future-other' => 'येत्या {0} बुधवारी',
+ 'wed-narrow-past-one' => '{0} बुधवारपूर्वी',
+ 'wed-narrow-past-other' => '{0} बुधवारांपूर्वी',
+ 'wed-past-one' => '{0} बुधवारपूर्वी',
+ 'wed-past-other' => '{0} बुधवारांपूर्वी',
+ 'wed-short-future-one' => 'येत्या {0} बुधवार',
+ 'wed-short-future-other' => 'येत्या {0} बुधवार',
+ 'wed-short-past-one' => '{0} बुधवारपूर्वी',
+ 'wed-short-past-other' => '{0} बुधवारांपूर्वी',
'week-future-one' => '{0} आठवड्यामध्ये',
'week-future-other' => '{0} आठवड्यांमध्ये',
- 'week-narrow-future-one' => '+{0} आठवडा',
- 'week-narrow-future-other' => '+{0} आठवडा',
- 'week-narrow-past-one' => '-{0} आठवडा',
- 'week-narrow-past-other' => '-{0} आठवडा',
+ 'week-narrow-future-one' => 'येत्या {0} आठवड्यामध्ये',
+ 'week-narrow-future-other' => 'येत्या {0} आठवड्यांमध्ये',
+ 'week-narrow-past-one' => '{0} आठवड्यापूर्वी',
+ 'week-narrow-past-other' => '{0} आठवड्यांपूर्वी',
'week-one' => '{0} आठवडा',
'week-other' => '{0} आठवडे',
'week-past-one' => '{0} आठवड्यापूर्वी',
'week-past-other' => '{0} आठवड्यांपूर्वी',
- 'week-short-future-one' => '{0} आठवड्यामध्ये',
- 'week-short-future-other' => '{0} आठवड्यामध्ये',
+ 'week-short-future-one' => 'येत्या {0} आठवड्यामध्ये',
+ 'week-short-future-other' => 'येत्या {0} आठवड्यांमध्ये',
'week-short-past-one' => '{0} आठवड्यापूर्वी',
- 'week-short-past-other' => '{0} आठवड्यापूर्वी',
- 'year-future-one' => '{0} वर्षामध्ये',
- 'year-future-other' => '{0} वर्षांमध्ये',
- 'year-narrow-future-one' => '+{0} वर्ष',
- 'year-narrow-future-other' => '+{0} वर्ष',
- 'year-narrow-past-one' => '-{0} वर्ष',
- 'year-narrow-past-other' => '-{0} वर्ष',
+ 'week-short-past-other' => '{0} आठवड्यांपूर्वी',
+ 'year-future-one' => 'येत्या {0} वर्षामध्ये',
+ 'year-future-other' => 'येत्या {0} वर्षांमध्ये',
+ 'year-narrow-future-one' => 'येत्या {0} वर्षामध्ये',
+ 'year-narrow-future-other' => 'येत्या {0} वर्षांमध्ये',
+ 'year-narrow-past-one' => '{0} वर्षापूर्वी',
+ 'year-narrow-past-other' => '{0} वर्षांपूर्वी',
'year-one' => '{0} वर्ष',
'year-other' => '{0} वर्षे',
'year-past-one' => '{0} वर्षापूर्वी',
'year-past-other' => '{0} वर्षांपूर्वी',
- 'year-short-future-one' => '{0} वर्षांमध्ये',
+ 'year-short-future-one' => '{0} वर्षामध्ये',
'year-short-future-other' => '{0} वर्षांमध्ये',
- 'year-short-past-one' => '{0} वर्षांपूर्वी',
+ 'year-short-past-one' => '{0} वर्षापूर्वी',
'year-short-past-other' => '{0} वर्षांपूर्वी',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesMs.php b/MLEB/cldr/CldrNames/CldrNamesMs.php
index 384a10e5..cd4f93a0 100644
--- a/MLEB/cldr/CldrNames/CldrNamesMs.php
+++ b/MLEB/cldr/CldrNames/CldrNamesMs.php
@@ -1,30 +1,42 @@
<?php
-$languageNames = array(
+$languageNames = [
+ 'aa' => 'Afar',
'ab' => 'Abkhazia',
+ 'ace' => 'Aceh',
'ach' => 'Akoli',
+ 'ada' => 'Adangme',
'ady' => 'Adyghe',
'ae' => 'Avestan',
'aeb' => 'Arab Tunisia',
'af' => 'Afrikaans',
'agq' => 'Aghem',
+ 'ain' => 'Ainu',
'ak' => 'Akan',
+ 'ale' => 'Aleut',
'alt' => 'Altai Selatan',
'am' => 'Amharic',
+ 'an' => 'Aragon',
+ 'anp' => 'Angika',
'ar' => 'Arab',
'ar-001' => 'Arab Standard Moden',
'arn' => 'Mapuche',
+ 'arp' => 'Arapaho',
'arq' => 'Arab Algeria',
+ 'ars' => 'Arab Najdi',
'ary' => 'Arab Maghribi',
'arz' => 'Arab Mesir',
'as' => 'Assam',
'asa' => 'Asu',
+ 'ast' => 'Asturia',
'av' => 'Avaric',
+ 'awa' => 'Awadhi',
'ay' => 'Aymara',
'az' => 'Azerbaijan',
- 'azb' => 'Azerbaijan Selatan',
'ba' => 'Bashkir',
'bal' => 'Baluchi',
+ 'ban' => 'Bali',
+ 'bas' => 'Basaa',
'bax' => 'Bamun',
'bbj' => 'Ghomala',
'be' => 'Belarus',
@@ -33,7 +45,12 @@ $languageNames = array(
'bez' => 'Bena',
'bfd' => 'Bafut',
'bg' => 'Bulgaria',
+ 'bgn' => 'Balochi Barat',
+ 'bho' => 'Bhojpuri',
+ 'bi' => 'Bislama',
+ 'bin' => 'Bini',
'bkm' => 'Kom',
+ 'bla' => 'Siksika',
'bm' => 'Bambara',
'bn' => 'Benggala',
'bo' => 'Tibet',
@@ -44,30 +61,41 @@ $languageNames = array(
'bs' => 'Bosnia',
'bss' => 'Akoose',
'bua' => 'Buriat',
+ 'bug' => 'Bugis',
'bum' => 'Bulu',
+ 'byn' => 'Blin',
'byv' => 'Medumba',
'ca' => 'Catalonia',
'cay' => 'Cayuga',
'ce' => 'Chechen',
+ 'ceb' => 'Cebuano',
'cgg' => 'Chiga',
+ 'ch' => 'Chamorro',
+ 'chk' => 'Chukese',
'chm' => 'Mari',
+ 'cho' => 'Choctaw',
'chr' => 'Cherokee',
+ 'chy' => 'Cheyenne',
'ckb' => 'Kurdi Sorani',
'co' => 'Corsica',
'cop' => 'Coptic',
'crh' => 'Turki Krimea',
+ 'crs' => 'Perancis Seselwa Creole',
'cs' => 'Czech',
'cu' => 'Slavik Gereja',
'cv' => 'Chuvash',
'cy' => 'Wales',
'da' => 'Denmark',
+ 'dak' => 'Dakota',
+ 'dar' => 'Dargwa',
'dav' => 'Taita',
'de' => 'Jerman',
'de-at' => 'Jerman Austria',
'de-ch' => 'Jerman Halus Switzerland',
+ 'dgr' => 'Dogrib',
'dje' => 'Zarma',
'doi' => 'Dogri',
- 'dsb' => 'Lower Sorbian',
+ 'dsb' => 'Sorbian Rendah',
'dua' => 'Duala',
'dv' => 'Divehi',
'dyo' => 'Jola-Fonyi',
@@ -76,6 +104,7 @@ $languageNames = array(
'ebu' => 'Embu',
'ee' => 'Ewe',
'efi' => 'Efik',
+ 'eka' => 'Ekajuk',
'el' => 'Greek',
'en' => 'Inggeris',
'en-au' => 'Inggeris Australia',
@@ -89,153 +118,238 @@ $languageNames = array(
'es-mx' => 'Sepanyol Mexico',
'et' => 'Estonia',
'eu' => 'Basque',
+ 'ewo' => 'Ewondo',
'fa' => 'Parsi',
+ 'ff' => 'Fulah',
'fi' => 'Finland',
'fil' => 'Filipina',
'fj' => 'Fiji',
'fo' => 'Faroe',
+ 'fon' => 'Fon',
'fr' => 'Perancis',
'fr-ca' => 'Perancis Kanada',
'fr-ch' => 'Perancis Switzerland',
- 'fy' => 'Frisian',
+ 'frc' => 'Perancis Cajun',
+ 'fur' => 'Friulian',
+ 'fy' => 'Frisian Barat',
'ga' => 'Ireland',
'gaa' => 'Ga',
'gag' => 'Gagauz',
+ 'gan' => 'Cina Gan',
'gba' => 'Gbaya',
'gbz' => 'Zoroastrian Dari',
'gd' => 'Scots Gaelic',
+ 'gez' => 'Geez',
+ 'gil' => 'Kiribati',
'gl' => 'Galicia',
'glk' => 'Gilaki',
'gn' => 'Guarani',
+ 'gor' => 'Gorontalo',
'grc' => 'Greek Purba',
'gsw' => 'Jerman Switzerland',
'gu' => 'Gujerat',
'guz' => 'Gusii',
'gv' => 'Manx',
+ 'gwi' => 'Gwichʼin',
'ha' => 'Hausa',
+ 'hak' => 'Cina Hakka',
'haw' => 'Hawaii',
'he' => 'Ibrani',
'hi' => 'Hindi',
- 'hr' => 'Croat',
- 'hsb' => 'Upper Sorbian',
+ 'hil' => 'Hiligaynon',
+ 'hmn' => 'Hmong',
+ 'hr' => 'Croatia',
+ 'hsb' => 'Sorbian Atas',
+ 'hsn' => 'Cina Xiang',
'ht' => 'Haiti',
'hu' => 'Hungary',
+ 'hup' => 'Hupa',
'hy' => 'Armenia',
+ 'hz' => 'Herero',
'ia' => 'Interlingua',
+ 'iba' => 'Iban',
'ibb' => 'Ibibio',
'id' => 'Indonesia',
'ie' => 'Interlingue',
'ig' => 'Igbo',
'ii' => 'Sichuan Yi',
+ 'ilo' => 'Iloko',
+ 'inh' => 'Ingush',
+ 'io' => 'Ido',
'is' => 'Iceland',
'it' => 'Itali',
'iu' => 'Inuktitut',
'ja' => 'Jepun',
+ 'jbo' => 'Lojban',
'jgo' => 'Ngomba',
'jmc' => 'Machame',
'jv' => 'Jawa',
'ka' => 'Georgia',
'kab' => 'Kabyle',
+ 'kac' => 'Kachin',
+ 'kaj' => 'Jju',
'kam' => 'Kamba',
+ 'kbd' => 'Kabardia',
'kbl' => 'Kanembu',
+ 'kcg' => 'Tyap',
'kde' => 'Makonde',
'kea' => 'Kabuverdianu',
+ 'kfo' => 'Koro',
'kg' => 'Kongo',
+ 'kha' => 'Khasi',
'khq' => 'Koyra Chiini',
'khw' => 'Khowar',
'ki' => 'Kikuya',
+ 'kj' => 'Kuanyama',
'kk' => 'Kazakhstan',
'kkj' => 'Kako',
'kl' => 'Kalaallisut',
'kln' => 'Kalenjin',
'km' => 'Khmer',
+ 'kmb' => 'Kimbundu',
'kn' => 'Kannada',
'ko' => 'Korea',
'koi' => 'Komi-Permyak',
'kok' => 'Konkani',
+ 'kpe' => 'Kpelle',
+ 'kr' => 'Kanuri',
+ 'krc' => 'Karachay-Balkar',
+ 'krl' => 'Karelian',
+ 'kru' => 'Kurukh',
'ks' => 'Kashmir',
'ksb' => 'Shambala',
'ksf' => 'Bafia',
'ksh' => 'Colognian',
'ku' => 'Kurdish',
+ 'kum' => 'Kumyk',
+ 'kv' => 'Komi',
'kw' => 'Cornish',
'ky' => 'Kirghiz',
'la' => 'Latin',
+ 'lad' => 'Ladino',
'lag' => 'Langi',
'lah' => 'Lahnda',
'lb' => 'Luxembourg',
+ 'lez' => 'Lezghian',
'lg' => 'Ganda',
+ 'li' => 'Limburgish',
'lkt' => 'Lakota',
'ln' => 'Lingala',
'lo' => 'Laos',
+ 'lou' => 'Kreol Louisiana',
'loz' => 'Lozi',
+ 'lrc' => 'Luri Utara',
'lt' => 'Lithuania',
'lu' => 'Luba-Katanga',
'lua' => 'Luba-Lulua',
+ 'lun' => 'Lunda',
'luo' => 'Luo',
'lus' => 'Mizo',
'luy' => 'Luyia',
'lv' => 'Latvia',
+ 'mad' => 'Madura',
'maf' => 'Mafa',
+ 'mag' => 'Magahi',
+ 'mai' => 'Maithili',
+ 'mak' => 'Makasar',
'mas' => 'Masai',
'mde' => 'Maba',
+ 'mdf' => 'Moksha',
+ 'men' => 'Mende',
'mer' => 'Meru',
'mfe' => 'Morisyen',
'mg' => 'Malagasy',
'mgh' => 'Makhuwa-Meetto',
'mgo' => 'Meta’',
+ 'mh' => 'Marshall',
'mi' => 'Maori',
+ 'mic' => 'Micmac',
+ 'min' => 'Minangkabau',
'mk' => 'Macedonia',
'ml' => 'Malayalam',
'mn' => 'Mongolia',
'mni' => 'Manipuri',
'moh' => 'Mohawk',
+ 'mos' => 'Mossi',
'mr' => 'Marathi',
- 'ms' => 'Bahasa Melayu',
+ 'ms' => 'Melayu',
'mt' => 'Malta',
'mua' => 'Mundang',
+ 'mul' => 'Pelbagai Bahasa',
+ 'mus' => 'Creek',
+ 'mwl' => 'Mirandese',
'my' => 'Burma',
'mye' => 'Myene',
+ 'myv' => 'Erzya',
'mzn' => 'Mazanderani',
+ 'na' => 'Nauru',
+ 'nan' => 'Cina Min Nan',
+ 'nap' => 'Neapolitan',
'naq' => 'Nama',
'nb' => 'Bokmål Norway',
'nd' => 'Ndebele Utara',
+ 'nds' => 'Jerman Rendah',
+ 'nds-nl' => 'Saxon Rendah',
'ne' => 'Nepal',
+ 'new' => 'Newari',
+ 'ng' => 'Ndonga',
+ 'nia' => 'Nias',
+ 'niu' => 'Niu',
'nl' => 'Belanda',
'nl-be' => 'Flemish',
'nmg' => 'Kwasio',
'nn' => 'Nynorsk Norway',
+ 'nnh' => 'Ngiemboon',
'no' => 'Norway',
+ 'nog' => 'Nogai',
'nqo' => 'N’ko',
+ 'nr' => 'Ndebele Selatan',
'nso' => 'Sotho Utara',
'nus' => 'Nuer',
+ 'nv' => 'Navajo',
'ny' => 'Nyanja',
'nyn' => 'Nyankole',
'oc' => 'Occitania',
'om' => 'Oromo',
- 'or' => 'Oriya',
+ 'or' => 'Odia',
'os' => 'Ossete',
'pa' => 'Punjabi',
+ 'pag' => 'Pangasinan',
+ 'pam' => 'Pampanga',
+ 'pap' => 'Papiamento',
+ 'pau' => 'Palauan',
+ 'pcm' => 'Nigerian Pidgin',
'pl' => 'Poland',
+ 'prg' => 'Prusia',
'ps' => 'Pashto',
'pt' => 'Portugis',
'pt-br' => 'Portugis Brazil',
'pt-pt' => 'Portugis Eropah',
'qu' => 'Quechua',
'quc' => 'Kʼicheʼ',
+ 'rap' => 'Rapanui',
+ 'rar' => 'Rarotonga',
'rm' => 'Romansh',
'rn' => 'Rundi',
'ro' => 'Romania',
'ro-md' => 'Moldavia',
'rof' => 'Rombo',
'ru' => 'Rusia',
+ 'rup' => 'Aromanian',
'rw' => 'Kinyarwanda',
'rwk' => 'Rwa',
'sa' => 'Sanskrit',
+ 'sad' => 'Sandawe',
+ 'sah' => 'Sakha',
'saq' => 'Samburu',
+ 'sat' => 'Santali',
'sba' => 'Ngambay',
'sbp' => 'Sangu',
+ 'sc' => 'Sardinia',
+ 'scn' => 'Sicili',
+ 'sco' => 'Scots',
'sd' => 'Sindhi',
+ 'sdh' => 'Kurdish Selatan',
'se' => 'Sami Utara',
'see' => 'Seneca',
'seh' => 'Sena',
@@ -243,7 +357,8 @@ $languageNames = array(
'sg' => 'Sango',
'sh' => 'SerboCroatia',
'shi' => 'Tachelhit',
- 'shu' => 'Chadian Arab',
+ 'shn' => 'Shan',
+ 'shu' => 'Arab Chadian',
'si' => 'Sinhala',
'sk' => 'Slovak',
'sl' => 'Slovenia',
@@ -253,24 +368,30 @@ $languageNames = array(
'smn' => 'Inari Sami',
'sms' => 'Skolt Sami',
'sn' => 'Shona',
+ 'snk' => 'Soninke',
'so' => 'Somali',
'sq' => 'Albania',
'sr' => 'Serbia',
+ 'srn' => 'Sranan Tongo',
'ss' => 'Swati',
'ssy' => 'Saho',
'st' => 'Sotho Selatan',
'su' => 'Sunda',
+ 'suk' => 'Sukuma',
'sv' => 'Sweden',
'sw' => 'Swahili',
+ 'sw-cd' => 'Congo Swahili',
'swb' => 'Comoria',
- 'swc' => 'Congo Swahili',
+ 'syr' => 'Syriac',
'ta' => 'Tamil',
'te' => 'Telugu',
+ 'tem' => 'Timne',
'teo' => 'Teso',
'tet' => 'Tetum',
'tg' => 'Tajik',
'th' => 'Thai',
'ti' => 'Tigrinya',
+ 'tig' => 'Tigre',
'tk' => 'Turkmen',
'tlh' => 'Klingon',
'tly' => 'Talysh',
@@ -282,42 +403,55 @@ $languageNames = array(
'ts' => 'Tsonga',
'tt' => 'Tatar',
'tum' => 'Tumbuka',
+ 'tvl' => 'Tuvalu',
'tw' => 'Twi',
'twq' => 'Tasawaq',
'ty' => 'Tahiti',
+ 'tyv' => 'Tuvinian',
'tzm' => 'Tamazight Atlas Tengah',
+ 'udm' => 'Udmurt',
'ug' => 'Uyghur',
'uk' => 'Ukraine',
+ 'umb' => 'Umbundu',
'und' => 'Bahasa Tidak Diketahui',
'ur' => 'Urdu',
'uz' => 'Uzbekistan',
'vai' => 'Vai',
've' => 'Venda',
'vi' => 'Vietnam',
+ 'vo' => 'Volapük',
'vun' => 'Vunjo',
+ 'wa' => 'Walloon',
'wae' => 'Walser',
+ 'wal' => 'Wolaytta',
+ 'war' => 'Waray',
+ 'wbp' => 'Warlpiri',
'wo' => 'Wolof',
+ 'wuu' => 'Cina Wu',
+ 'xal' => 'Kalmyk',
'xh' => 'Xhosa',
'xog' => 'Soga',
'yav' => 'Yangben',
'ybb' => 'Yemba',
'yi' => 'Yiddish',
'yo' => 'Yoruba',
+ 'yue' => 'Kantonis',
'zgh' => 'Tamazight Maghribi Standard',
'zh' => 'Cina',
'zh-hans' => 'Cina Ringkas',
'zh-hant' => 'Cina Tradisional',
'zu' => 'Zulu',
+ 'zun' => 'Zuni',
'zxx' => 'Tiada kandungan linguistik',
'zza' => 'Zaza',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'AED' => 'Dirham Emiriah Arab Bersatu',
'AFN' => 'Afghani Afghanistan',
'ALL' => 'Lek Albania',
'AMD' => 'Dram Armenia',
- 'ANG' => 'Guilder Antillean Netherland',
+ 'ANG' => 'Guilder Antillen Belanda',
'AOA' => 'Kwanza Angola',
'ARS' => 'Peso Argentina',
'AUD' => 'Dolar Australia',
@@ -328,7 +462,7 @@ $currencyNames = array(
'BDT' => 'Taka Bangladesh',
'BGN' => 'Lev Bulgaria',
'BHD' => 'Dinar Bahrain',
- 'BIF' => 'Franc Burundia',
+ 'BIF' => 'Franc Burundi',
'BMD' => 'Dolar Bermuda',
'BND' => 'Dolar Brunei',
'BOB' => 'Boliviano Bolivia',
@@ -336,12 +470,14 @@ $currencyNames = array(
'BSD' => 'Dolar Bahamas',
'BTN' => 'Ngultrum Bhutan',
'BWP' => 'Pula Botswana',
- 'BYR' => 'Ruble Belarus',
+ 'BYN' => 'Rubel Belarus baharu',
+ 'BYR' => 'Rubel Belarus (2000–2016)',
'BZD' => 'Dolar Belize',
'CAD' => 'Dolar Kanada',
'CDF' => 'Franc Congo',
'CHF' => 'Franc Switzerland',
'CLP' => 'Peso Chile',
+ 'CNH' => 'Yuan China (luar pesisir)',
'CNY' => 'Yuan Cina',
'COP' => 'Peso Colombia',
'CRC' => 'Colon Costa Rica',
@@ -373,7 +509,7 @@ $currencyNames = array(
'HTG' => 'Gourde Haiti',
'HUF' => 'Forint Hungary',
'IDR' => 'Rupiah Indonesia',
- 'ILS' => 'Sheqel Baru Israel',
+ 'ILS' => 'Syekel Baharu Israel',
'INR' => 'Rupee India',
'IQD' => 'Dinar Iraq',
'IRR' => 'Rial Iran',
@@ -405,8 +541,9 @@ $currencyNames = array(
'MMK' => 'Kyat Myanma',
'MNT' => 'Tugrik Mongolia',
'MOP' => 'Pataca Macau',
- 'MRO' => 'Ouguiya Mauritania',
- 'MUR' => 'Rupee Mauritia',
+ 'MRO' => 'Ouguiya Mauritania (1973–2017)',
+ 'MRU' => 'Ouguiya Mauritania',
+ 'MUR' => 'Rupee Mauritius',
'MVR' => 'Rufiyaa Maldives',
'MWK' => 'Kwacha Malawi',
'MXN' => 'Peso Mexico',
@@ -420,7 +557,7 @@ $currencyNames = array(
'NZD' => 'Dolar New Zealand',
'OMR' => 'Rial Oman',
'PAB' => 'Balboa Panama',
- 'PEN' => 'Nuevo Sol Peru',
+ 'PEN' => 'Sol Peru',
'PGK' => 'Kina Papua New Guinea',
'PHP' => 'Peso Filipina',
'PKR' => 'Rupee Pakistan',
@@ -429,7 +566,7 @@ $currencyNames = array(
'QAR' => 'Rial Qatar',
'RON' => 'Leu Romania',
'RSD' => 'Dinar Serbia',
- 'RUB' => 'Ruble Rusia',
+ 'RUB' => 'Rubel Rusia',
'RWF' => 'Franc Rwanda',
'SAR' => 'Riyal Saudi',
'SBD' => 'Dolar Kepulauan Solomon',
@@ -442,14 +579,15 @@ $currencyNames = array(
'SOS' => 'Syiling Somali',
'SRD' => 'Dolar Surinam',
'SSP' => 'Paun Sudan selatan',
- 'STD' => 'Dobra Sao Tome dan Principe',
+ 'STD' => 'Dobra Sao Tome dan Principe (1977–2017)',
+ 'STN' => 'Dobra Sao Tome dan Principe',
'SYP' => 'Paun Syria',
'SZL' => 'Lilangeni Swazi',
'THB' => 'Baht Thai',
'TJS' => 'Somoni Tajikistan',
'TMT' => 'Manat Turkmenistan',
'TND' => 'Dinar Tunisia',
- 'TOP' => 'Tongan Paʻanga',
+ 'TOP' => 'Pa’anga Tonga',
'TRY' => 'Lira Turki',
'TTD' => 'Dolar Trinidad dan Tobago',
'TWD' => 'Dolar Taiwan Baru',
@@ -457,9 +595,10 @@ $currencyNames = array(
'UAH' => 'Hryvnia Ukraine',
'UGX' => 'Syiling Uganda',
'USD' => 'Dolar AS',
- 'UYU' => 'UYU',
+ 'UYU' => 'Peso Uruguay',
'UZS' => 'Som Uzbekistan',
- 'VEF' => 'Bolivar Venezuela',
+ 'VEF' => 'Bolivar Venezuela (2008–2018)',
+ 'VES' => 'Bolivar Venezuela',
'VND' => 'Dong Vietnam',
'VUV' => 'Vatu Vanuatu',
'WST' => 'Tala Samoa',
@@ -472,9 +611,9 @@ $currencyNames = array(
'ZAR' => 'Rand Afrika Selatan',
'ZMK' => 'Kwacha Zambia (1968–2012)',
'ZMW' => 'Kwacha Zambia',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'AED' => 'AED',
'AFN' => 'AFN',
'ALL' => 'ALL',
@@ -498,12 +637,14 @@ $currencySymbols = array(
'BSD' => 'BSD',
'BTN' => 'BTN',
'BWP' => 'BWP',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CAD',
'CDF' => 'CDF',
'CHF' => 'CHF',
'CLP' => 'CLP',
+ 'CNH' => 'CNH',
'CNY' => 'CN¥',
'COP' => 'COP',
'CRC' => 'CRC',
@@ -567,6 +708,7 @@ $currencySymbols = array(
'MNT' => 'MNT',
'MOP' => 'MOP',
'MRO' => 'MRO',
+ 'MRU' => 'MRU',
'MUR' => 'MUR',
'MVR' => 'MVR',
'MWK' => 'MWK',
@@ -604,9 +746,10 @@ $currencySymbols = array(
'SRD' => 'SRD',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'STN',
'SYP' => 'SYP',
'SZL' => 'SZL',
- 'THB' => '฿',
+ 'THB' => 'THB',
'TJS' => 'TJS',
'TMT' => 'TMT',
'TND' => 'TND',
@@ -621,6 +764,7 @@ $currencySymbols = array(
'UYU' => 'UYU',
'UZS' => 'UZS',
'VEF' => 'VEF',
+ 'VES' => 'VES',
'VND' => '₫',
'VUV' => 'VUV',
'WST' => 'WST',
@@ -632,9 +776,9 @@ $currencySymbols = array(
'ZAR' => 'ZAR',
'ZMK' => 'ZMK',
'ZMW' => 'ZMW',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'Pulau Ascension',
'AD' => 'Andorra',
'AE' => 'Emiriah Arab Bersatu',
@@ -643,7 +787,6 @@ $countryNames = array(
'AI' => 'Anguilla',
'AL' => 'Albania',
'AM' => 'Armenia',
- 'AN' => 'Netherlands Antilles',
'AO' => 'Angola',
'AQ' => 'Antartika',
'AR' => 'Argentina',
@@ -662,7 +805,7 @@ $countryNames = array(
'BH' => 'Bahrain',
'BI' => 'Burundi',
'BJ' => 'Benin',
- 'BL' => 'Saint Barthélemy',
+ 'BL' => 'St. Barthelemy',
'BM' => 'Bermuda',
'BN' => 'Brunei',
'BO' => 'Bolivia',
@@ -693,7 +836,7 @@ $countryNames = array(
'CW' => 'Curacao',
'CX' => 'Pulau Krismas',
'CY' => 'Cyprus',
- 'CZ' => 'Republik Czech',
+ 'CZ' => 'Czechia',
'DE' => 'Jerman',
'DG' => 'Diego Garcia',
'DJ' => 'Djibouti',
@@ -710,6 +853,7 @@ $countryNames = array(
'ES' => 'Sepanyol',
'ET' => 'Ethiopia',
'EU' => 'Kesatuan Eropah',
+ 'EZ' => 'Zon Euro',
'FI' => 'Finland',
'FJ' => 'Fiji',
'FK' => 'Kepulauan Falkland',
@@ -717,7 +861,7 @@ $countryNames = array(
'FO' => 'Kepulauan Faroe',
'FR' => 'Perancis',
'GA' => 'Gabon',
- 'GB' => 'GB',
+ 'GB' => 'UK',
'GD' => 'Grenada',
'GE' => 'Georgia',
'GF' => 'Guiana Perancis',
@@ -729,7 +873,7 @@ $countryNames = array(
'GN' => 'Guinea',
'GP' => 'Guadeloupe',
'GQ' => 'Guinea Khatulistiwa',
- 'GR' => 'Yunani',
+ 'GR' => 'Greece',
'GS' => 'Kepulauan Georgia Selatan & Sandwich Selatan',
'GT' => 'Guatemala',
'GU' => 'Guam',
@@ -876,6 +1020,7 @@ $countryNames = array(
'UA' => 'Ukraine',
'UG' => 'Uganda',
'UM' => 'Kepulauan Terpencil A.S.',
+ 'UN' => 'PBB',
'US' => 'A.S',
'UY' => 'Uruguay',
'UZ' => 'Uzbekistan',
@@ -894,65 +1039,108 @@ $countryNames = array(
'ZA' => 'Afrika Selatan',
'ZM' => 'Zambia',
'ZW' => 'Zimbabwe',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-other' => '{0} abad',
'day-future-other' => 'dalam {0} hari',
'day-narrow-future-other' => 'dlm {0} hari',
- 'day-narrow-past-other' => '{0} hari yg lalu',
+ 'day-narrow-past-other' => '{0} hari lalu',
'day-other' => '{0} hari',
'day-past-other' => '{0} hari lalu',
'day-short-future-other' => 'dlm {0} hari',
- 'day-short-past-other' => '{0} hari yg lalu',
+ 'day-short-past-other' => '{0} hari lalu',
+ 'fri-future-other' => 'pada {0} Jumaat',
+ 'fri-narrow-future-other' => 'pd {0} Jum',
+ 'fri-narrow-past-other' => '{0} Jum lalu',
+ 'fri-past-other' => '{0} Jumaat lalu',
+ 'fri-short-future-other' => 'pada {0} Jum',
+ 'fri-short-past-other' => '{0} Jum lalu',
'hour-future-other' => 'dalam {0} jam',
'hour-narrow-future-other' => 'dlm {0} jam',
- 'hour-narrow-past-other' => '{0} jam yg lalu',
+ 'hour-narrow-past-other' => '{0} jam lalu',
'hour-other' => '{0} jam',
- 'hour-past-other' => '{0} jam yang lalu',
+ 'hour-past-other' => '{0} jam lalu',
'hour-short-future-other' => 'dlm {0} jam',
- 'hour-short-past-other' => '{0} jam yg lalu',
+ 'hour-short-past-other' => '{0} jam lalu',
'microsecond-other' => '{0} mikrosaat',
'millisecond-other' => '{0} milisaat',
'minute-future-other' => 'dalam {0} minit',
'minute-narrow-future-other' => 'dlm {0} min',
- 'minute-narrow-past-other' => '{0} min yg lalu',
+ 'minute-narrow-past-other' => '{0} min lalu',
'minute-other' => '{0} minit',
- 'minute-past-other' => '{0} minit yang lalu',
+ 'minute-past-other' => '{0} minit lalu',
'minute-short-future-other' => 'dlm {0} min',
- 'minute-short-past-other' => '{0} min yg lalu',
+ 'minute-short-past-other' => '{0} min lalu',
+ 'mon-future-other' => 'pada {0} Isnin',
+ 'mon-narrow-future-other' => 'pd {0} Isn',
+ 'mon-narrow-past-other' => '{0} Isn lalu',
+ 'mon-past-other' => '{0} Isnin lalu',
+ 'mon-short-future-other' => 'pada {0} Isn',
+ 'mon-short-past-other' => '{0} Isn lalu',
'month-future-other' => 'dalam {0} bulan',
- 'month-narrow-future-other' => 'dalam {0} bln lalu',
+ 'month-narrow-future-other' => 'dlm {0} bln',
'month-narrow-past-other' => '{0} bulan lalu',
'month-other' => '{0} bulan',
'month-past-other' => '{0} bulan lalu',
'month-short-future-other' => 'dlm {0} bln',
'month-short-past-other' => '{0} bln lalu',
'nanosecond-other' => '{0} nanosaat',
- 'quarter-future-other' => 'dalam {0} suku',
- 'quarter-narrow-future-other' => 'dlm {0} suku',
- 'quarter-narrow-past-other' => '{0} suku lalu',
- 'quarter-past-other' => '{0} suku lalu',
- 'quarter-short-future-other' => 'dlm {0} suku',
- 'quarter-short-past-other' => '{0} suku lalu',
+ 'quarter-future-other' => 'dalam {0} suku tahun',
+ 'quarter-narrow-future-other' => 'dlm {0} suku thn',
+ 'quarter-narrow-past-other' => '{0} suku thn lalu',
+ 'quarter-past-other' => '{0} suku tahun lalu',
+ 'quarter-short-future-other' => 'dlm {0} suku thn',
+ 'quarter-short-past-other' => '{0} suku thn lalu',
+ 'sat-future-other' => 'pada {0} Sabtu',
+ 'sat-narrow-future-other' => 'pada {0} Sab',
+ 'sat-narrow-past-other' => '{0} Sab lalu',
+ 'sat-past-other' => '{0} Sabtu lalu',
+ 'sat-short-future-other' => 'pada {0} Sab',
+ 'sat-short-past-other' => '{0} Sab lalu',
'second-future-other' => 'dalam {0} saat',
'second-narrow-future-other' => 'dlm {0} saat',
- 'second-narrow-past-other' => '{0} saat yg lalu',
+ 'second-narrow-past-other' => '{0} saat lalu',
'second-other' => '{0} saat',
'second-past-other' => '{0} saat lalu',
'second-short-future-other' => 'dlm {0} saat',
- 'second-short-past-other' => '{0} saat yg lalu',
+ 'second-short-past-other' => '{0} saat lalu',
+ 'sun-future-other' => 'pada {0} Ahad',
+ 'sun-narrow-future-other' => 'pd {0} Ahd',
+ 'sun-narrow-past-other' => '{0} Ahd lalu',
+ 'sun-past-other' => '{0} Ahad lalu',
+ 'sun-short-future-other' => 'pada {0} Ahd',
+ 'sun-short-past-other' => '{0} Ahd lalu',
+ 'thu-future-other' => 'pada {0} Khamis',
+ 'thu-narrow-future-other' => 'pada {0} Kha',
+ 'thu-narrow-past-other' => '{0} Kha lalu',
+ 'thu-past-other' => '{0} Khamis lalu',
+ 'thu-short-future-other' => 'pada {0} Kha',
+ 'thu-short-past-other' => '{0} Kha lalu',
+ 'tue-future-other' => 'pada {0} Selasa',
+ 'tue-narrow-future-other' => 'pada {0} Sel',
+ 'tue-narrow-past-other' => '{0} Sel lalu',
+ 'tue-past-other' => '{0} Selasa lalu',
+ 'tue-short-future-other' => 'pada {0} Sel',
+ 'tue-short-past-other' => '{0} Sel lalu',
+ 'wed-future-other' => 'pada {0} Rabu',
+ 'wed-narrow-future-other' => 'pd {0} Rab',
+ 'wed-narrow-past-other' => '{0} Rab lalu',
+ 'wed-past-other' => '{0} Rabu lalu',
+ 'wed-short-future-other' => 'pada {0} Rab',
+ 'wed-short-past-other' => '{0} Rab lalu',
'week-future-other' => 'dalam {0} minggu',
'week-narrow-future-other' => 'dlm {0} mgu',
'week-narrow-past-other' => '{0} mgu lalu',
'week-other' => '{0} minggu',
'week-past-other' => '{0} minggu lalu',
'week-short-future-other' => 'dlm {0} mgu',
- 'week-short-past-other' => '{0} mng lalu',
- 'year-future-other' => 'dalam {0} saat',
+ 'week-short-past-other' => '{0} mgu lalu',
+ 'year-future-other' => 'dalam {0} tahun',
'year-narrow-future-other' => 'dalam {0} thn',
'year-narrow-past-other' => '{0} thn lalu',
'year-other' => '{0} tahun',
'year-past-other' => '{0} tahun lalu',
'year-short-future-other' => 'dalam {0} thn',
'year-short-past-other' => '{0} thn lalu',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesMt.php b/MLEB/cldr/CldrNames/CldrNamesMt.php
index ee2a4dc7..07a3c5a5 100644
--- a/MLEB/cldr/CldrNames/CldrNamesMt.php
+++ b/MLEB/cldr/CldrNames/CldrNamesMt.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'Afar',
'ab' => 'Abkażjan',
'ace' => 'Aċiniż',
@@ -10,35 +10,39 @@ $languageNames = array(
'ae' => 'Avestan',
'af' => 'Afrikans',
'afh' => 'Afriħili',
+ 'agq' => 'Aghem',
'ain' => 'Ajnu',
'ak' => 'Akan',
'akk' => 'Akkadjen',
'ale' => 'Aleut',
- 'am' => 'Amħariku',
- 'an' => 'Aragonese',
- 'ang' => 'Ingliż, Antik',
+ 'alt' => 'Altai tan-Nofsinhar',
+ 'am' => 'Amhariku',
+ 'an' => 'Aragoniż',
+ 'ang' => 'Ingliż Antik',
'anp' => 'Angika',
'ar' => 'Għarbi',
'ar-001' => 'Għarbi Standard Modern',
'arc' => 'Aramajk',
- 'arn' => 'Arawkanjan',
- 'arp' => 'Arapaħo',
+ 'arn' => 'Mapuche',
+ 'arp' => 'Arapaho',
'arw' => 'Arawak',
- 'as' => 'Assamese',
+ 'as' => 'Assamiż',
+ 'asa' => 'Asu',
'ast' => 'Asturian',
'av' => 'Avarik',
- 'awa' => 'Awadħi',
- 'ay' => 'Ajmara',
+ 'awa' => 'Awadhi',
+ 'ay' => 'Aymara',
'az' => 'Ażerbajġani',
- 'ba' => 'Baxkir',
+ 'ba' => 'Bashkir',
'bal' => 'Baluċi',
'ban' => 'Baliniż',
'bas' => 'Basa',
'be' => 'Belarussu',
'bej' => 'Beja',
'bem' => 'Bemba',
+ 'bez' => 'Bena',
'bg' => 'Bulgaru',
- 'bho' => 'Bojpuri',
+ 'bho' => 'Bhojpuri',
'bi' => 'Bislama',
'bik' => 'Bikol',
'bin' => 'Bini',
@@ -46,52 +50,63 @@ $languageNames = array(
'bm' => 'Bambara',
'bn' => 'Bengali',
'bo' => 'Tibetjan',
- 'br' => 'Brenton',
+ 'br' => 'Breton',
'bra' => 'Braj',
- 'bs' => 'Bosnijan',
+ 'brx' => 'Bodo',
+ 'bs' => 'Bożnijaku',
'bua' => 'Burjat',
- 'bug' => 'Buginiż',
+ 'bug' => 'Buginese',
'byn' => 'Blin',
'ca' => 'Katalan',
'cad' => 'Kaddo',
'car' => 'Karib',
'cch' => 'Atsam',
- 'ce' => 'Ċeċen',
- 'ceb' => 'Sibwano',
- 'ch' => 'Ċamorro',
- 'chb' => 'Ċibċa',
- 'chg' => 'Ċagataj',
- 'chk' => 'Ċukese',
+ 'ce' => 'Chechen',
+ 'ceb' => 'Cebuano',
+ 'cgg' => 'Chiga',
+ 'ch' => 'Chamorro',
+ 'chb' => 'Chibcha',
+ 'chg' => 'Chagatai',
+ 'chk' => 'Ċukiż',
'chm' => 'Mari',
- 'chn' => 'Ġargon taċ-Ċinuk',
- 'cho' => 'Ċostaw',
+ 'chn' => 'Chinook Jargon',
+ 'cho' => 'Choctaw',
'chp' => 'Ċipewjan',
- 'chr' => 'Ċerokij',
- 'chy' => 'Xajenn',
+ 'chr' => 'Cherokee',
+ 'chy' => 'Cheyenne',
+ 'ckb' => 'Kurd Ċentrali',
'co' => 'Korsiku',
'cop' => 'Koptiku',
- 'cr' => 'Krij',
- 'crh' => 'Crimean Turkish; Crimean Tatar',
+ 'cr' => 'Cree',
+ 'crh' => 'Tork tal-Krimea',
+ 'crs' => 'Franċiż tas-Seselwa Creole',
'cs' => 'Ċek',
'csb' => 'Kashubian',
'cu' => 'Slaviku tal-Knisja',
- 'cv' => 'Ċuvax',
- 'cy' => 'Welx',
+ 'cv' => 'Chuvash',
+ 'cy' => 'Welsh',
'da' => 'Daniż',
'dak' => 'Dakota',
'dar' => 'Dargwa',
+ 'dav' => 'Taita',
'de' => 'Ġermaniż',
+ 'de-at' => 'Ġermaniż Awstrijak',
+ 'de-ch' => 'Ġermaniż Żvizzeru',
'del' => 'Delawerjan',
'den' => 'Slav',
'dgr' => 'Dogrib',
'din' => 'Dinka',
+ 'dje' => 'Zarma',
'doi' => 'Dogri',
- 'dsb' => 'Lower Sorbian',
+ 'dsb' => 'Sorbjan Komuni',
'dua' => 'Dwala',
- 'dum' => 'Olandiż, Medjevali',
- 'dv' => 'Diveħi',
- 'dyu' => 'Djula',
- 'dz' => 'Dżongka',
+ 'dum' => 'Olandiż Medjevali',
+ 'dv' => 'Divehi',
+ 'dyo' => 'Jola-Fonyi',
+ 'dyu' => 'Dyula',
+ 'dz' => 'Dzongkha',
+ 'dzg' => 'Dazaga',
+ 'ebu' => 'Embu',
'ee' => 'Ewe',
'efi' => 'Efik',
'egy' => 'Eġizzjan (Antik)',
@@ -100,67 +115,74 @@ $languageNames = array(
'elx' => 'Elamit',
'en' => 'Ingliż',
'en-au' => 'Ingliż Awstraljan',
+ 'en-ca' => 'Ingliż Kanadiż',
'en-gb' => 'Ingliż Brittaniku',
'en-us' => 'Ingliż Amerikan',
- 'enm' => 'Ingliż, Medjevali',
+ 'enm' => 'Ingliż Medjevali',
'eo' => 'Esperanto',
'es' => 'Spanjol',
+ 'es-419' => 'Spanjol Latin Amerikan',
+ 'es-es' => 'Spanjol Ewropew',
+ 'es-mx' => 'Spanjol tal-Messiku',
'et' => 'Estonjan',
'eu' => 'Bask',
'ewo' => 'Ewondo',
'fa' => 'Persjan',
'fan' => 'Fang',
'fat' => 'Fanti',
- 'ff' => 'Fulaħ',
+ 'ff' => 'Fulah',
'fi' => 'Finlandiż',
- 'fil' => 'Filippino',
- 'fj' => 'Fiġi',
- 'fo' => 'Fawriż',
+ 'fil' => 'Filippin',
+ 'fj' => 'Fiġjan',
+ 'fo' => 'Faroese',
'fon' => 'Fon',
'fr' => 'Franċiż',
'fr-ca' => 'Franċiż Kanadiż',
'fr-ch' => 'Franċiż Żvizzeru',
- 'frm' => 'Franċiż, Medjevali',
- 'fro' => 'Franċiż, Antik',
+ 'frm' => 'Franċiż Medjevali',
+ 'fro' => 'Franċiż Antik',
'fur' => 'Frijuljan',
- 'fy' => 'Friżjan',
+ 'fy' => 'Frisian tal-Punent',
'ga' => 'Irlandiż',
'gaa' => 'Ga',
- 'gay' => 'Gajo',
- 'gba' => 'Gbaja',
+ 'gay' => 'Gayo',
+ 'gba' => 'Gbaya',
'gd' => 'Galliku Skoċċiż',
'gez' => 'Geez',
'gil' => 'Gilbertjan',
- 'gl' => 'Gallegjan',
- 'gmh' => 'Ġermaniku, Medjevali Pulit',
- 'gn' => 'Gwarani',
- 'goh' => 'Ġermaniku, Antik Pulit',
+ 'gl' => 'Galiċjan',
+ 'gmh' => 'Ġermaniż Medjevali Pulit',
+ 'gn' => 'Guarani',
+ 'goh' => 'Ġermaniż Antik, Pulit',
'gon' => 'Gondi',
'gor' => 'Gorontalo',
'got' => 'Gotiku',
- 'grb' => 'Ġerbo',
+ 'grb' => 'Grebo',
'grc' => 'Grieg, Antik',
- 'gu' => 'Guġarati',
- 'gv' => 'Manks',
+ 'gsw' => 'Ġermaniż tal-Iżvizzera',
+ 'gu' => 'Gujarati',
+ 'guz' => 'Gusii',
+ 'gv' => 'Manx',
'gwi' => 'Gwiċin',
- 'ha' => 'Ħawsa',
- 'hai' => 'Ħajda',
+ 'ha' => 'Hausa',
+ 'hai' => 'Haida',
'haw' => 'Ħawajjan',
'he' => 'Ebrajk',
- 'hi' => 'Ħindi',
+ 'hi' => 'Hindi',
'hil' => 'Hiligaynon',
- 'hit' => 'Ħittit',
- 'hmn' => 'Ħmong',
- 'ho' => 'Ħiri Motu',
+ 'hit' => 'Hittite',
+ 'hmn' => 'Hmong',
+ 'ho' => 'Hiri Motu',
'hr' => 'Kroat',
- 'hsb' => 'Upper Sorbian',
- 'ht' => 'Haitian',
+ 'hsb' => 'Sorbjan ta’ Fuq',
+ 'ht' => 'Creole ta’ Haiti',
'hu' => 'Ungeriż',
- 'hup' => 'Ħupa',
- 'hy' => 'Armenjan',
- 'hz' => 'Ħerero',
+ 'hup' => 'Hupa',
+ 'hy' => 'Armen',
+ 'hz' => 'Herero',
'ia' => 'Interlingua',
'iba' => 'Iban',
+ 'ibb' => 'Ibibio',
'id' => 'Indoneżjan',
'ie' => 'Interlingue',
'ig' => 'Igbo',
@@ -171,199 +193,249 @@ $languageNames = array(
'io' => 'Ido',
'is' => 'Iżlandiż',
'it' => 'Taljan',
- 'iu' => 'Inukitut',
+ 'iu' => 'Inuktitut',
'ja' => 'Ġappuniż',
'jbo' => 'Lojban',
+ 'jgo' => 'Ngomba',
+ 'jmc' => 'Machame',
'jpr' => 'Lhudi-Persjan',
'jrb' => 'Lhudi-Għarbi',
'jv' => 'Ġavaniż',
'ka' => 'Ġorġjan',
'kaa' => 'Kara-Kalpak',
'kab' => 'Kabuljan',
- 'kac' => 'Kaċin',
+ 'kac' => 'Kachin',
+ 'kaj' => 'Jju',
'kam' => 'Kamba',
'kaw' => 'Kawi',
'kbd' => 'Kabardian',
+ 'kcg' => 'Tyap',
+ 'kde' => 'Makonde',
+ 'kea' => 'Cape Verdjan',
+ 'kfo' => 'Koro',
'kg' => 'Kongo',
- 'kha' => 'Kasi',
+ 'kha' => 'Khasi',
'kho' => 'Kotaniż',
+ 'khq' => 'Koyra Chiini',
'ki' => 'Kikuju',
'kj' => 'Kuanyama',
'kk' => 'Każak',
+ 'kkj' => 'Kako',
'kl' => 'Kalallisut',
- 'km' => 'Kmer',
+ 'kln' => 'Kalenjin',
+ 'km' => 'Khmer',
'kmb' => 'Kimbundu',
'kn' => 'Kannada',
- 'ko' => 'Korejan',
+ 'ko' => 'Korean',
'kok' => 'Konkani',
'kos' => 'Kosrejan',
'kpe' => 'Kpelle',
'kr' => 'Kanuri',
'krc' => 'Karachay-Balkar',
- 'kru' => 'Kurusk',
- 'ks' => 'Kaxmiri',
- 'ku' => 'Kurdiż',
- 'kum' => 'Kumiku',
+ 'krl' => 'Kareljan',
+ 'kru' => 'Kurux',
+ 'ks' => 'Kashmiri',
+ 'ksb' => 'Shambala',
+ 'ksf' => 'Bafia',
+ 'ksh' => 'Kolonjan',
+ 'ku' => 'Kurd',
+ 'kum' => 'Kumyk',
'kut' => 'Kutenaj',
'kv' => 'Komi',
'kw' => 'Korniku',
'ky' => 'Kirgiż',
'la' => 'Latin',
'lad' => 'Ladino',
- 'lah' => 'Landa',
+ 'lag' => 'Langi',
+ 'lah' => 'Lahnda',
'lam' => 'Lamba',
- 'lb' => 'Letżburgiż',
+ 'lb' => 'Lussemburgiż',
'lez' => 'Leżgjan',
'lg' => 'Ganda',
'li' => 'Limburgish',
+ 'lkt' => 'Lakota',
'ln' => 'Lingaljan',
- 'lo' => 'Lao',
+ 'lo' => 'Laosjan',
'lol' => 'Mongo',
'loz' => 'Lożi',
- 'lt' => 'Litwanjan',
+ 'lrc' => 'Luri tat-Tramuntana',
+ 'lt' => 'Litwan',
'lu' => 'Luba-Katanga',
'lua' => 'Luba-Luluwa',
- 'lui' => 'Luwisinuż',
+ 'lui' => 'Luiseno',
'lun' => 'Lunda',
- 'luo' => 'Luwa',
- 'lus' => 'Luxaj',
+ 'luo' => 'Luo',
+ 'lus' => 'Mizo',
+ 'luy' => 'Luyia',
'lv' => 'Latvjan',
'mad' => 'Maduriż',
- 'mag' => 'Magaħi',
- 'mai' => 'Majtili',
+ 'mag' => 'Magahi',
+ 'mai' => 'Maithili',
'mak' => 'Makasar',
- 'man' => 'Mandingwan',
- 'mas' => 'Masaj',
+ 'man' => 'Mandingo',
+ 'mas' => 'Masai',
'mdf' => 'Moksha',
'mdr' => 'Mandar',
'men' => 'Mende',
- 'mg' => 'Malagażi',
- 'mga' => 'Irlandiż, Medjevali',
- 'mh' => 'Marxall',
+ 'mer' => 'Meru',
+ 'mfe' => 'Morisyen',
+ 'mg' => 'Malagasy',
+ 'mga' => 'Irlandiż Medjevali',
+ 'mgh' => 'Makhuwa-Meetto',
+ 'mgo' => 'Metà',
+ 'mh' => 'Marshalljaniż',
'mi' => 'Maori',
- 'mic' => 'Mikmek',
- 'min' => 'Minangkabaw',
+ 'mic' => 'Micmac',
+ 'min' => 'Minangkabau',
'mk' => 'Maċedonjan',
- 'ml' => 'Malajalam',
+ 'ml' => 'Malayalam',
'mn' => 'Mongoljan',
- 'mnc' => 'Manċurjan',
+ 'mnc' => 'Manchu',
'mni' => 'Manipuri',
- 'moh' => 'Moħak',
+ 'moh' => 'Mohawk',
'mos' => 'Mossi',
- 'mr' => 'Marati',
- 'ms' => 'Malajan',
+ 'mr' => 'Marathi',
+ 'ms' => 'Malay',
'mt' => 'Malti',
+ 'mua' => 'Mundang',
'mul' => 'Lingwi Diversi',
'mus' => 'Kriek',
'mwl' => 'Mirandiż',
'mwr' => 'Marwari',
'my' => 'Burmiż',
'myv' => 'Erzya',
- 'na' => 'Nawuru',
- 'nap' => 'Neapolitan',
- 'nb' => 'Bokmahal Norveġiż',
- 'nd' => 'Ndebele, ta’ Fuq',
- 'nds' => 'Ġermaniż Komuni; Sassonu Komuni',
+ 'mzn' => 'Mazanderani',
+ 'na' => 'Naurujan',
+ 'nap' => 'Naplitan',
+ 'naq' => 'Nama',
+ 'nb' => 'Bokmal Norveġiż',
+ 'nd' => 'Ndebeli tat-Tramuntana',
+ 'nds' => 'Ġermaniż Komuni',
+ 'nds-nl' => 'Sassonu Komuni',
'ne' => 'Nepaliż',
'new' => 'Newari',
'ng' => 'Ndonga',
'nia' => 'Nijas',
- 'niu' => 'Nijuwejan',
+ 'niu' => 'Niuean',
'nl' => 'Olandiż',
+ 'nl-be' => 'Fjamming',
+ 'nmg' => 'Kwasio',
'nn' => 'Ninorsk Norveġiż',
+ 'nnh' => 'Ngiemboon',
'no' => 'Norveġiż',
'nog' => 'Nogai',
- 'non' => 'Skandinav, Antik',
- 'nr' => 'Ndebele, t’Isfel',
- 'nso' => 'Soto, ta’ Fuq',
- 'nv' => 'Navaħo',
- 'nwc' => 'Classical Newari',
- 'ny' => 'Ċiċewa; Njanġa',
+ 'non' => 'Nors Antik',
+ 'nqo' => 'N’Ko',
+ 'nr' => 'Ndebele tan-Nofsinhar',
+ 'nso' => 'Soto tat-Tramuntana',
+ 'nus' => 'Nuer',
+ 'nv' => 'Navajo',
+ 'nwc' => 'Newari Klassiku',
+ 'ny' => 'Nyanja',
'nym' => 'Njamweżi',
'nyn' => 'Nyankole',
- 'nyo' => 'Njoro',
- 'nzi' => 'Nżima',
+ 'nyo' => 'Nyoro',
+ 'nzi' => 'Nzima',
'oc' => 'Oċċitan',
'oj' => 'Oġibwa',
- 'om' => 'Oromo (Afan)',
- 'or' => 'Orija',
+ 'om' => 'Oromo',
+ 'or' => 'Odia',
'os' => 'Ossettiku',
'osa' => 'Osaġjan',
- 'ota' => 'Tork (Imperu Ottoman)',
- 'pa' => 'Punġabi',
+ 'ota' => 'Tork Ottoman',
+ 'pa' => 'Punjabi',
'pag' => 'Pangasinjan',
- 'pal' => 'Paħlavi',
- 'pam' => 'Pampamga',
- 'pap' => 'Papjamento',
+ 'pal' => 'Pahlavi',
+ 'pam' => 'Pampanga',
+ 'pap' => 'Papiamento',
'pau' => 'Palawjan',
+ 'pcm' => 'Pidgin Niġerjan',
'peo' => 'Persjan Antik',
'phn' => 'Feniċju',
'pi' => 'Pali',
'pl' => 'Pollakk',
'pon' => 'Ponpejan',
- 'pro' => 'Provenzal, Antik',
- 'ps' => 'Paxtun',
+ 'prg' => 'Prussu',
+ 'pro' => 'Provenzal Antik',
+ 'ps' => 'Pashto',
'pt' => 'Portugiż',
- 'qu' => 'Keċwa',
+ 'pt-br' => 'Portugiż tal-Brażil',
+ 'pt-pt' => 'Portugiż Ewropew',
+ 'qu' => 'Quechua',
+ 'quc' => 'K’iche’',
'raj' => 'Raġastani',
'rap' => 'Rapanwi',
'rar' => 'Rarotongani',
- 'rm' => 'Reto-Romanz',
+ 'rm' => 'Romanz',
'rn' => 'Rundi',
'ro' => 'Rumen',
- 'ro-md' => 'Moldavjan',
- 'rom' => 'Żingaru',
+ 'ro-md' => 'Moldovan',
+ 'rof' => 'Rombo',
+ 'rom' => 'Romanesk',
'ru' => 'Russu',
- 'rup' => 'Aromanijan',
+ 'rup' => 'Aromanjan',
'rw' => 'Kinjarwanda',
+ 'rwk' => 'Rwa',
'sa' => 'Sanskrit',
'sad' => 'Sandawe',
- 'sah' => 'Jakut',
- 'sam' => 'Samritan',
- 'sas' => 'Saska',
+ 'sah' => 'Sakha',
+ 'sam' => 'Samaritan Aramajk',
+ 'saq' => 'Samburu',
+ 'sas' => 'Sasak',
'sat' => 'Santali',
+ 'sba' => 'Ngambay',
+ 'sbp' => 'Sangu',
'sc' => 'Sardinjan',
+ 'scn' => 'Sqalli',
'sco' => 'Skoċċiż',
- 'sd' => 'Sindi',
- 'se' => 'Sami ta’ Fuq',
+ 'sd' => 'Sindhi',
+ 'se' => 'Sami tat-Tramuntana',
+ 'seh' => 'Sena',
'sel' => 'Selkup',
+ 'ses' => 'Koyraboro Senni',
'sg' => 'Sango',
- 'sga' => 'Irlandiż, Antik',
+ 'sga' => 'Irlandiż Antik',
'sh' => 'Serbo-Kroat',
- 'shn' => 'Xan',
- 'si' => 'Sinħaliż',
+ 'shi' => 'Tachelhit',
+ 'shn' => 'Shan',
+ 'si' => 'Sinhala',
'sid' => 'Sidamo',
'sk' => 'Slovakk',
'sl' => 'Sloven',
- 'sm' => 'Samojan',
- 'sma' => 'Southern Sami',
+ 'sm' => 'Samoan',
+ 'sma' => 'Sami tan-Nofsinhar',
'smj' => 'Lule Sami',
'smn' => 'Inari Sami',
'sms' => 'Skolt Sami',
- 'sn' => 'Xona',
+ 'sn' => 'Shona',
'snk' => 'Soninke',
'so' => 'Somali',
'sog' => 'Sogdien',
'sq' => 'Albaniż',
'sr' => 'Serb',
+ 'srn' => 'Sranan Tongo',
'srr' => 'Serer',
'ss' => 'Swati',
- 'st' => 'Soto, t’Isfel',
+ 'ssy' => 'Saho',
+ 'st' => 'Soto tan-Nofsinhar',
'su' => 'Sundaniż',
'suk' => 'Sukuma',
'sus' => 'Susu',
'sux' => 'Sumerjan',
- 'sv' => 'Svediż',
- 'sw' => 'Swaħili',
+ 'sv' => 'Żvediż',
+ 'sw' => 'Swahili',
+ 'sw-cd' => 'Swahili tar-Repubblika Demokratika tal-Kongo',
+ 'swb' => 'Komorjan',
'syr' => 'Sirjan',
'ta' => 'Tamil',
'te' => 'Telugu',
'tem' => 'Timne',
+ 'teo' => 'Teso',
'ter' => 'Tereno',
'tet' => 'Tetum',
- 'tg' => 'Taġik',
+ 'tg' => 'Tajik',
'th' => 'Tajlandiż',
- 'ti' => 'Tigrinja',
+ 'ti' => 'Tigrinya',
'tig' => 'Tigre',
'tiv' => 'Tiv',
'tk' => 'Turkmeni',
@@ -371,316 +443,850 @@ $languageNames = array(
'tl' => 'Tagalog',
'tlh' => 'Klingon',
'tli' => 'Tlingit',
- 'tmh' => 'Tamaxek',
- 'tn' => 'Zwana',
+ 'tmh' => 'Tamashek',
+ 'tn' => 'Tswana',
'to' => 'Tongan',
- 'tog' => 'Tonga (Njasa)',
+ 'tog' => 'Nyasa Tonga',
'tpi' => 'Tok Pisin',
'tr' => 'Tork',
+ 'trv' => 'Taroko',
'ts' => 'Tsonga',
- 'tsi' => 'Zimxjan',
+ 'tsi' => 'Tsimshian',
'tt' => 'Tatar',
'tum' => 'Tumbuka',
'tvl' => 'Tuvalu',
'tw' => 'Twi',
+ 'twq' => 'Tasawaq',
'ty' => 'Taħitjan',
'tyv' => 'Tuvinjan',
+ 'tzm' => 'Tamazight tal-Atlas Ċentrali',
'udm' => 'Udmurt',
- 'ug' => 'Wigur',
+ 'ug' => 'Uyghur',
'uga' => 'Ugaritiku',
- 'uk' => 'Ukranjan',
+ 'uk' => 'Ukren',
'umb' => 'Umbundu',
- 'und' => 'Lingwa Mhux Magħrufa',
+ 'und' => 'Lingwa Mhix Magħrufa',
'ur' => 'Urdu',
- 'uz' => 'Użbek',
+ 'uz' => 'Uzbek',
'vai' => 'Vai',
've' => 'Venda',
'vi' => 'Vjetnamiż',
'vo' => 'Volapuk',
'vot' => 'Votik',
+ 'vun' => 'Vunjo',
'wa' => 'Walloon',
+ 'wae' => 'Walser',
'wal' => 'Walamo',
- 'war' => 'Waraj',
- 'was' => 'Waxo',
+ 'war' => 'Waray',
+ 'was' => 'Washo',
'wo' => 'Wolof',
'xal' => 'Kalmyk',
- 'xh' => 'Ħoża',
- 'yao' => 'Jao',
- 'yap' => 'Japese',
- 'yi' => 'Jiddix',
- 'yo' => 'Joruba',
- 'za' => 'Żwang',
- 'zap' => 'Żapotek',
- 'zen' => 'Żenaga',
+ 'xh' => 'Xhosa',
+ 'xog' => 'Soga',
+ 'yao' => 'Yao',
+ 'yap' => 'Yapese',
+ 'yav' => 'Yangben',
+ 'ybb' => 'Yemba',
+ 'yi' => 'Yiddish',
+ 'yo' => 'Yoruba',
+ 'yue' => 'Kantoniż',
+ 'za' => 'Zhuang',
+ 'zap' => 'Zapotec',
+ 'zen' => 'Zenaga',
+ 'zgh' => 'Tamazight Standard tal-Marokk',
'zh' => 'Ċiniż',
'zh-hans' => 'Ċiniż Simplifikat',
- 'zu' => 'Żulu',
- 'zun' => 'Żuni',
- 'zxx' => 'Bla kontent lingwistiku',
-);
+ 'zh-hant' => 'Ċiniż Tradizzjonali',
+ 'zu' => 'Zulu',
+ 'zun' => 'Zuni',
+ 'zxx' => 'Bla kontenut lingwistiku',
+ 'zza' => 'Zaza',
+];
-$currencyNames = array(
+$currencyNames = [
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => 'AUD',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => 'BRL',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYN' => 'BYN',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CAD',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
'EUR' => 'ewro',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'ILS' => 'ILS',
+ 'INR' => 'INR',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => 'KRW',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MRU' => 'MRU',
'MTL' => 'Lira Maltija',
- 'XXX' => 'Munita Mhux Magħrufa jew Mhux Valida',
-);
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MXN',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZD',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'STN' => 'STN',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => 'THB',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'TWD',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
+ 'USD' => 'USD',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VES' => 'VES',
+ 'VND' => 'VND',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'XAF',
+ 'XCD' => 'XCD',
+ 'XOF' => 'XOF',
+ 'XPF' => 'XPF',
+ 'XXX' => 'Munita Mhix Magħrufa jew Mhix Valida',
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+];
-$currencySymbols = array(
+$currencySymbols = [
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => 'A$',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => 'R$',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYN' => 'BYN',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
'EUR' => '€',
-);
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MX$',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NPR' => 'Rs',
+ 'NZD' => 'NZ$',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'STN' => 'STN',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => 'THB',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
+ 'USD' => 'US$',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VND' => '₫',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'EC$',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+];
-$countryNames = array(
+$countryNames = [
+ 'AC' => 'Ascension Island',
'AD' => 'Andorra',
- 'AE' => 'Emirati Għarab Maqgħuda',
- 'AF' => 'Afganistan',
- 'AG' => 'Antigua and Barbuda',
- 'AI' => 'Angwilla',
- 'AL' => 'Albanija',
- 'AM' => 'Armenja',
- 'AN' => 'Antilles Olandiżi',
- 'AO' => 'Angola',
- 'AQ' => 'Antartika',
- 'AR' => 'Arġentina',
- 'AS' => 'Samoa Amerikana',
- 'AT' => 'Awstrija',
- 'AU' => 'Awstralja',
+ 'AE' => 'l-Emirati Għarab Magħquda',
+ 'AF' => 'l-Afganistan',
+ 'AG' => 'Antigua u Barbuda',
+ 'AI' => 'Anguilla',
+ 'AL' => 'l-Albanija',
+ 'AM' => 'l-Armenja',
+ 'AO' => 'l-Angola',
+ 'AQ' => 'l-Antartika',
+ 'AR' => 'l-Arġentina',
+ 'AS' => 'is-Samoa Amerikana',
+ 'AT' => 'l-Awstrija',
+ 'AU' => 'l-Awstralja',
'AW' => 'Aruba',
- 'AX' => 'Gżejjer Aland',
- 'AZ' => 'Ażerbajġan',
- 'BA' => 'Bożnija Ħerżegovina',
+ 'AX' => 'il-Gżejjer Aland',
+ 'AZ' => 'l-Ażerbajġan',
+ 'BA' => 'il-Bożnija-Ħerzegovina',
'BB' => 'Barbados',
- 'BD' => 'Bangladexx',
- 'BE' => 'Belġju',
- 'BF' => 'Burkina Faso',
- 'BG' => 'Bulgarija',
- 'BH' => 'Baħrajn',
- 'BI' => 'Burundi',
- 'BJ' => 'Benin',
+ 'BD' => 'il-Bangladesh',
+ 'BE' => 'il-Belġju',
+ 'BF' => 'il-Burkina Faso',
+ 'BG' => 'il-Bulgarija',
+ 'BH' => 'il-Bahrain',
+ 'BI' => 'il-Burundi',
+ 'BJ' => 'il-Benin',
+ 'BL' => 'Saint Barthélemy',
'BM' => 'Bermuda',
- 'BN' => 'Brunej',
- 'BO' => 'Bolivja',
+ 'BN' => 'il-Brunei',
+ 'BO' => 'il-Bolivja',
+ 'BQ' => 'in-Netherlands tal-Karibew',
'BR' => 'Il-Brażil',
- 'BS' => 'Baħamas',
- 'BT' => 'Butan',
- 'BV' => 'Bouvet Island',
- 'BW' => 'Botswana',
- 'BY' => 'Bjelorussja',
- 'BZ' => 'Beliże',
- 'CA' => 'Kanada',
- 'CC' => 'Cocos (Keeling) Islands',
- 'CD' => 'Democratic Republic of the Congo',
- 'CF' => 'Repubblika Afrikana Ċentrali',
- 'CG' => 'Kongo',
- 'CH' => 'Svizzera',
- 'CI' => 'Kosta ta’ l-Avorju',
- 'CK' => 'Cook Islands',
- 'CL' => 'Ċili',
- 'CM' => 'Kamerun',
- 'CN' => 'Iċ-Ċina',
- 'CO' => 'Kolumbja',
- 'CR' => 'Kosta Rika',
+ 'BS' => 'il-Bahamas',
+ 'BT' => 'il-Bhutan',
+ 'BV' => 'Gżira Bouvet',
+ 'BW' => 'il-Botswana',
+ 'BY' => 'il-Belarussja',
+ 'BZ' => 'il-Belize',
+ 'CA' => 'il-Kanada',
+ 'CC' => 'Gżejjer Cocos (Keeling)',
+ 'CD' => 'ir-Repubblika Demokratika tal-Kongo',
+ 'CF' => 'ir-Repubblika Ċentru-Afrikana',
+ 'CG' => 'il-Kongo - Brazzaville',
+ 'CH' => 'l-Iżvizzera',
+ 'CI' => 'il-Kosta tal-Avorju',
+ 'CK' => 'Gżejjer Cook',
+ 'CL' => 'iċ-Ċili',
+ 'CM' => 'il-Kamerun',
+ 'CN' => 'iċ-Ċina',
+ 'CO' => 'il-Kolombja',
+ 'CP' => 'il-Gżira Clipperton',
+ 'CR' => 'il-Costa Rica',
'CU' => 'Kuba',
- 'CV' => 'Kape Verde',
- 'CX' => 'Christmas Island',
+ 'CV' => 'Cape Verde',
+ 'CW' => 'Curaçao',
+ 'CX' => 'il-Gżira Christmas',
'CY' => 'Ċipru',
- 'CZ' => 'Repubblika Ċeka',
- 'DE' => 'Il-Ġermanja',
- 'DJ' => 'Ġibuti',
- 'DK' => 'Danimarka',
- 'DM' => 'Dominika',
- 'DO' => 'Republikka Domenikana',
- 'DZ' => 'Alġerija',
- 'EC' => 'Ekwador',
- 'EE' => 'Estonja',
- 'EG' => 'Eġittu',
- 'EH' => 'Sahara tal-Punent',
- 'ER' => 'Eritreja',
+ 'CZ' => 'ir-Repubblika Ċeka',
+ 'DE' => 'il-Ġermanja',
+ 'DG' => 'Diego Garcia',
+ 'DJ' => 'il-Djibouti',
+ 'DK' => 'id-Danimarka',
+ 'DM' => 'Dominica',
+ 'DO' => 'ir-Repubblika Dominicana',
+ 'DZ' => 'l-Alġerija',
+ 'EA' => 'Ceuta u Melilla',
+ 'EC' => 'l-Ekwador',
+ 'EE' => 'l-Estonja',
+ 'EG' => 'l-Eġittu',
+ 'EH' => 'is-Saħara tal-Punent',
+ 'ER' => 'l-Eritrea',
'ES' => 'Spanja',
- 'ET' => 'Etijopja',
+ 'ET' => 'l-Etjopja',
'EU' => 'Unjoni Ewropea',
- 'FI' => 'Finlandja',
+ 'FI' => 'il-Finlandja',
'FJ' => 'Fiġi',
- 'FK' => 'Falkland Islands',
- 'FM' => 'Mikronesja',
- 'FO' => 'Gżejjer Faroe',
+ 'FK' => 'il-Gżejjer Falkland',
+ 'FM' => 'Mikroneżja',
+ 'FO' => 'il-Gżejjer Faeroe',
'FR' => 'Franza',
- 'GA' => 'Gabon',
- 'GB' => 'L-Ingilterra',
+ 'GA' => 'il-Gabon',
+ 'GB' => 'UK',
'GD' => 'Grenada',
- 'GE' => 'Ġorġja',
- 'GF' => 'Gujana Franċiża',
- 'GH' => 'Gana',
- 'GI' => 'Gibraltar',
- 'GL' => 'Grinlandja',
- 'GM' => 'Gambja',
- 'GN' => 'Gineja',
- 'GP' => 'Gwadelupe',
- 'GQ' => 'Ginea Ekwatorjali',
- 'GR' => 'Greċja',
- 'GS' => 'South Georgia and the South Sandwich Islands',
- 'GT' => 'Gwatemala',
- 'GU' => 'Gwam',
- 'GW' => 'Ginea-Bissaw',
- 'GY' => 'Gujana',
- 'HK' => 'Ħong Kong',
- 'HM' => 'Heard Island and McDonald Islands',
- 'HN' => 'Ħonduras',
- 'HR' => 'Kroazja',
- 'HT' => 'Ħaiti',
- 'HU' => 'Ungerija',
- 'ID' => 'Indoneżja',
- 'IE' => 'Irlanda',
+ 'GE' => 'il-Georgia',
+ 'GF' => 'il-Guyana Franċiża',
+ 'GG' => 'Guernsey',
+ 'GH' => 'il-Ghana',
+ 'GI' => 'Ġibiltà',
+ 'GL' => 'Greenland',
+ 'GM' => 'il-Gambja',
+ 'GN' => 'il-Guinea',
+ 'GP' => 'Guadeloupe',
+ 'GQ' => 'il-Guinea Ekwatorjali',
+ 'GR' => 'il-Greċja',
+ 'GS' => 'il-Georgia tan-Nofsinhar u l-Gżejjer Sandwich tan-Nofsinhar',
+ 'GT' => 'il-Gwatemala',
+ 'GU' => 'Guam',
+ 'GW' => 'il-Guinea-Bissau',
+ 'GY' => 'il-Guyana',
+ 'HK' => 'Hong Kong',
+ 'HM' => 'il-Gżejjer Heard u l-Gżejjer McDonald',
+ 'HN' => 'il-Honduras',
+ 'HR' => 'il-Kroazja',
+ 'HT' => 'il-Haiti',
+ 'HU' => 'l-Ungerija',
+ 'IC' => 'il-Gżejjer Canary',
+ 'ID' => 'l-Indoneżja',
+ 'IE' => 'l-Irlanda',
'IL' => 'Iżrael',
'IM' => 'Isle of Man',
- 'IN' => 'L-Indja',
- 'IO' => 'British Indian Ocean Territory',
- 'IQ' => 'Iraq',
- 'IR' => 'Iran',
- 'IS' => 'Islanda',
- 'IT' => 'L-Italja',
- 'JM' => 'Ġamajka',
- 'JO' => 'Ġordan',
- 'JP' => 'Il-Ġappun',
- 'KE' => 'Kenja',
- 'KG' => 'Kirgistan',
- 'KH' => 'Kambodja',
+ 'IN' => 'l-Indja',
+ 'IO' => 'Territorju Brittaniku tal-Oċean Indjan',
+ 'IQ' => 'l-Iraq',
+ 'IR' => 'l-Iran',
+ 'IS' => 'l-iżlanda',
+ 'IT' => 'l-Italja',
+ 'JE' => 'Jersey',
+ 'JM' => 'il-Ġamajka',
+ 'JO' => 'il-Ġordan',
+ 'JP' => 'il-Ġappun',
+ 'KE' => 'il-Kenja',
+ 'KG' => 'il-Kirgiżistan',
+ 'KH' => 'il-Kambodja',
'KI' => 'Kiribati',
- 'KM' => 'Komoros',
- 'KN' => 'Saint Kitts and Nevis',
- 'KP' => 'Koreja ta’ Fuq',
- 'KR' => 'Koreja t’Isfel',
- 'KW' => 'Kuwajt',
- 'KY' => 'Gżejjer Kajmani',
- 'KZ' => 'Każakstan',
- 'LA' => 'Laos',
- 'LB' => 'Libanu',
- 'LC' => 'Santa Luċija',
- 'LI' => 'Liechtenstein',
- 'LK' => 'Sri Lanka',
- 'LR' => 'Liberja',
- 'LS' => 'Lesoto',
- 'LT' => 'Litwanja',
- 'LU' => 'Lussemburgu',
- 'LV' => 'Latvja',
- 'LY' => 'Libja',
- 'MA' => 'Marokk',
- 'MC' => 'Monako',
- 'MD' => 'Maldova',
- 'MG' => 'Madagaskar',
- 'MH' => 'Gżejjer ta’ Marshall',
- 'MK' => 'Maċedonja',
- 'ML' => 'Mali',
- 'MM' => 'Mjanmar',
- 'MN' => 'Mongolja',
- 'MO' => 'Macao',
- 'MP' => 'Gżejjer Marjana ta’ Fuq',
- 'MQ' => 'Martinik',
- 'MR' => 'Mawritanja',
+ 'KM' => 'Comoros',
+ 'KN' => 'Saint Kitts u Nevis',
+ 'KP' => 'il-Korea ta’ Fuq',
+ 'KR' => 'il-Korea t’Isfel',
+ 'KW' => 'il-Kuwajt',
+ 'KY' => 'il-Gżejjer Cayman',
+ 'KZ' => 'il-Każakistan',
+ 'LA' => 'il-Laos',
+ 'LB' => 'il-Libanu',
+ 'LC' => 'Saint Lucia',
+ 'LI' => 'il-Liechtenstein',
+ 'LK' => 'is-Sri Lanka',
+ 'LR' => 'il-Liberja',
+ 'LS' => 'il-Lesoto',
+ 'LT' => 'il-Litwanja',
+ 'LU' => 'il-Lussemburgu',
+ 'LV' => 'il-Latvja',
+ 'LY' => 'il-Libja',
+ 'MA' => 'il-Marokk',
+ 'MC' => 'Monaco',
+ 'MD' => 'il-Moldova',
+ 'ME' => 'il-Montenegro',
+ 'MF' => 'Saint Martin',
+ 'MG' => 'Madagascar',
+ 'MH' => 'Gżejjer Marshall',
+ 'MK' => 'l-Eks-Repubblika Jugoslava tal-Maċedonia',
+ 'ML' => 'il-Mali',
+ 'MM' => 'il-Myanmar/Burma',
+ 'MN' => 'il-Mongolja',
+ 'MO' => 'il-Macao',
+ 'MP' => 'Ġżejjer Mariana tat-Tramuntana',
+ 'MQ' => 'Martinique',
+ 'MR' => 'il-Mauritania',
'MS' => 'Montserrat',
'MT' => 'Malta',
- 'MU' => 'Mawrizju',
- 'MV' => 'Maldives',
- 'MW' => 'Malawi',
- 'MX' => 'Messiku',
- 'MY' => 'Malasja',
- 'MZ' => 'Możambik',
- 'NA' => 'Namibja',
+ 'MU' => 'Mauritius',
+ 'MV' => 'il-Maldivi',
+ 'MW' => 'il-Malawi',
+ 'MX' => 'il-Messiku',
+ 'MY' => 'il-Malasja',
+ 'MZ' => 'il-Mozambique',
+ 'NA' => 'in-Namibja',
'NC' => 'New Caledonia',
- 'NE' => 'Niġer',
- 'NF' => 'Norfolk Island',
- 'NG' => 'Niġerja',
- 'NI' => 'Nikaragwa',
- 'NL' => 'Olanda',
- 'NO' => 'Norveġja',
- 'NP' => 'Nepal',
+ 'NE' => 'in-Niġer',
+ 'NF' => 'Gżira Norfolk',
+ 'NG' => 'in-Niġerja',
+ 'NI' => 'in-Nikaragwa',
+ 'NL' => 'in-Netherlands',
+ 'NO' => 'in-Norveġja',
+ 'NP' => 'in-Nepal',
'NR' => 'Nauru',
'NU' => 'Niue',
'NZ' => 'New Zealand',
- 'OM' => 'Oman',
- 'PA' => 'Panama',
- 'PE' => 'Peru',
- 'PF' => 'Polinesja Franċiża',
- 'PG' => 'Papwa-Ginea Ġdida',
- 'PH' => 'Filippini',
- 'PK' => 'Pakistan',
- 'PL' => 'Polonja',
- 'PM' => 'Saint Pierre and Miquelon',
- 'PN' => 'Pitcairn',
+ 'OM' => 'l-Oman',
+ 'PA' => 'il-Panama',
+ 'PE' => 'il-Perù',
+ 'PF' => 'Polineżja Franċiża',
+ 'PG' => 'Papua New Guinea',
+ 'PH' => 'il-Filippini',
+ 'PK' => 'il-Pakistan',
+ 'PL' => 'il-Polonja',
+ 'PM' => 'Saint Pierre u Miquelon',
+ 'PN' => 'Gżejjer Pitcairn',
'PR' => 'Puerto Rico',
- 'PS' => 'Territorju Palestinjan',
- 'PT' => 'Portugall',
+ 'PS' => 'il-Palestina',
+ 'PT' => 'il-Portugall',
'PW' => 'Palau',
- 'PY' => 'Paragwaj',
- 'QA' => 'Qatar',
+ 'PY' => 'il-Paragwaj',
+ 'QA' => 'il-Qatar',
'RE' => 'Réunion',
- 'RO' => 'Rumanija',
- 'RU' => 'Ir-Russja',
- 'RW' => 'Rwanda',
- 'SA' => 'Għarabja Sawdita',
- 'SB' => 'Solomon Islands',
- 'SC' => 'Seychelles',
- 'SD' => 'Sudan',
- 'SE' => 'Żvezja',
- 'SG' => 'Singapor',
+ 'RO' => 'ir-Rumanija',
+ 'RS' => 'is-Serbja',
+ 'RU' => 'ir-Russja',
+ 'RW' => 'ir-Rwanda',
+ 'SA' => 'l-Arabia Sawdija',
+ 'SB' => 'il-Gżejjer Solomon',
+ 'SC' => 'is-Seychelles',
+ 'SD' => 'is-Sudan',
+ 'SE' => 'l-Iżvezja',
+ 'SG' => 'Singapore',
'SH' => 'Saint Helena',
- 'SI' => 'Slovenja',
- 'SJ' => 'Svalbard and Jan Mayen',
- 'SK' => 'Slovakkja',
+ 'SI' => 'is-Slovenja',
+ 'SJ' => 'Svalbard u Jan Mayen',
+ 'SK' => 'is-Slovakkja',
'SL' => 'Sierra Leone',
'SM' => 'San Marino',
- 'SN' => 'Senegal',
- 'SO' => 'Somalja',
- 'SR' => 'Surinam',
- 'ST' => 'Sao Tome and Principe',
+ 'SN' => 'is-Senegal',
+ 'SO' => 'is-Somalja',
+ 'SR' => 'is-Suriname',
+ 'SS' => 'is-Sudan t’Isfel',
+ 'ST' => 'São Tomé u Príncipe',
'SV' => 'El Salvador',
- 'SY' => 'Sirja',
- 'SZ' => 'Sważiland',
- 'TC' => 'Turks and Caicos Islands',
- 'TD' => 'Ċad',
- 'TF' => 'Territorji Franċiżi ta’ Nofsinhar',
- 'TG' => 'Togo',
- 'TH' => 'Tajlandja',
- 'TJ' => 'Taġikistan',
- 'TK' => 'Tokelaw',
- 'TL' => 'Timor tal-Lvant',
- 'TM' => 'Turkmenistan',
- 'TN' => 'Tuneż',
+ 'SX' => 'Sint Maarten',
+ 'SY' => 'is-Sirja',
+ 'SZ' => 'is-Swaziland',
+ 'TA' => 'Tristan da Cunha',
+ 'TC' => 'il-Gżejjer Turks u Caicos',
+ 'TD' => 'iċ-Chad',
+ 'TF' => 'It-Territorji Franċiżi tan-Nofsinhar',
+ 'TG' => 'it-Togo',
+ 'TH' => 'it-Tajlandja',
+ 'TJ' => 'it-Taġikistan',
+ 'TK' => 'it-Tokelau',
+ 'TL' => 'Timor Leste',
+ 'TM' => 'it-Turkmenistan',
+ 'TN' => 'it-Tuneżija',
'TO' => 'Tonga',
- 'TR' => 'Turkija',
+ 'TR' => 'it-Turkija',
'TT' => 'Trinidad u Tobago',
'TV' => 'Tuvalu',
- 'TW' => 'Tajwan',
- 'TZ' => 'Tanżanija',
- 'UA' => 'Ukraina',
- 'UG' => 'Uganda',
- 'UM' => 'United States Minor Outlying Islands',
- 'US' => 'L-Istati Uniti',
- 'UY' => 'Urugwaj',
- 'UZ' => 'Użbekistan',
- 'VA' => 'Vatikan',
- 'VC' => 'Saint Vincent and the Grenadines',
- 'VE' => 'Venezwela',
- 'VG' => 'British Virgin Islands',
- 'VI' => 'U.S. Virgin Islands',
- 'VN' => 'Vjetnam',
- 'VU' => 'Vanwatu',
- 'WF' => 'Wallis and Futuna',
+ 'TW' => 'it-Tajwan',
+ 'TZ' => 'it-Tanzanija',
+ 'UA' => 'l-Ukrajna',
+ 'UG' => 'l-Uganda',
+ 'UM' => 'Il-Gżejjer Minuri Mbiegħda tal-Istati Uniti',
+ 'US' => 'US',
+ 'UY' => 'l-Urugwaj',
+ 'UZ' => 'l-Użbekistan',
+ 'VA' => 'l-Istat tal-Belt tal-Vatikan',
+ 'VC' => 'Saint Vincent u l-Grenadini',
+ 'VE' => 'il-Venezwela',
+ 'VG' => 'il-Gżejjer Verġni Brittaniċi',
+ 'VI' => 'il-Gżejjer Verġni tal-Istati Uniti',
+ 'VN' => 'il-Vjetnam',
+ 'VU' => 'Vanuatu',
+ 'WF' => 'Wallis u Futuna',
'WS' => 'Samoa',
- 'XK' => 'Kosovo',
- 'YE' => 'Jemen',
- 'YT' => 'Majotte',
- 'ZA' => 'Afrika t’Isfel',
- 'ZM' => 'Żambja',
- 'ZW' => 'Żimbabwe',
-);
+ 'XK' => 'il-Kosovo',
+ 'YE' => 'il-Jemen',
+ 'YT' => 'Mayotte',
+ 'ZA' => 'l-Afrika t’Isfel',
+ 'ZM' => 'iż-Żambja',
+ 'ZW' => 'iż-Żimbabwe',
+];
-$timeUnits = array(
+$timeUnits = [
+ 'day-future-few' => 'fi żmien {0} ġurnata oħra',
+ 'day-future-many' => 'fi żmien {0} ġurnata oħra',
+ 'day-future-one' => 'fi żmien ġurnata',
+ 'day-future-other' => 'fi żmien {0} ġurnata oħra',
+ 'day-narrow-future-few' => 'fi żmien {0} ġurnata oħra',
+ 'day-narrow-future-many' => 'fi żmien {0} ġurnata oħra',
+ 'day-narrow-future-one' => 'fi żmien ġurnata',
+ 'day-narrow-future-other' => 'fi żmien {0} ġurnata oħra',
+ 'day-narrow-past-few' => '{0} ġranet ilu',
+ 'day-narrow-past-many' => '{0}-il ġurnata ilu',
+ 'day-narrow-past-one' => 'ġurnata ilu',
+ 'day-narrow-past-other' => '{0}-il ġurnata ilu',
+ 'day-past-few' => '{0} ġranet ilu',
+ 'day-past-many' => '{0}-il ġurnata ilu',
+ 'day-past-one' => 'ġurnata ilu',
+ 'day-past-other' => '{0}-il ġurnata ilu',
+ 'day-short-future-few' => 'fi żmien {0} ġurnata oħra',
+ 'day-short-future-many' => 'fi żmien {0} ġurnata oħra',
+ 'day-short-future-one' => 'fi żmien ġurnata',
+ 'day-short-future-other' => 'fi żmien {0} ġurnata oħra',
+ 'day-short-past-few' => '{0} ġranet ilu',
+ 'day-short-past-many' => '{0}-il ġurnata ilu',
+ 'day-short-past-one' => 'ġurnata ilu',
+ 'day-short-past-other' => '{0}-il ġurnata ilu',
+ 'hour-future-few' => 'fi żmien {0} sigħat',
+ 'hour-future-many' => 'fi żmien{0} sigħat',
+ 'hour-future-one' => 'fi żmien siegħa oħra',
+ 'hour-future-other' => 'fi żmien {0} sigħat',
+ 'hour-narrow-future-few' => 'fi żmien {0} sigħat',
+ 'hour-narrow-future-many' => 'fi żmien {0} sigħat',
+ 'hour-narrow-future-one' => 'fi żmien siegħa oħra',
+ 'hour-narrow-future-other' => 'fi żmien {0} sigħat',
+ 'hour-narrow-past-few' => '{0} sigħat ilu',
+ 'hour-narrow-past-many' => '{0} sigħat ilu',
+ 'hour-narrow-past-one' => 'siegħa ilu',
+ 'hour-narrow-past-other' => '{0} sigħat ilu',
+ 'hour-past-few' => '{0} sigħat ilu',
+ 'hour-past-many' => '{0} sigħat ilu',
+ 'hour-past-one' => 'siegħa ilu',
+ 'hour-past-other' => '{0} sigħat ilu',
+ 'hour-short-future-few' => 'fi żmien {0} sigħat',
+ 'hour-short-future-many' => '+{0} h',
+ 'hour-short-future-one' => 'fi żmien siegħa oħra',
+ 'hour-short-future-other' => 'fi żmien {0} sigħat',
+ 'hour-short-past-few' => '{0} sigħat ilu',
+ 'hour-short-past-many' => '{0} sigħat ilu',
+ 'hour-short-past-one' => 'siegħa ilu',
+ 'hour-short-past-other' => '{0} sigħat ilu',
'millisecond-few' => '{0} millisekondi',
'millisecond-many' => '{0} millisekondi',
'millisecond-one' => '{0} millisekonda',
'millisecond-other' => '{0} millisekondi',
+ 'minute-future-few' => 'sa {0} minuti oħra',
+ 'minute-future-many' => 'sa {0} minuti oħra',
+ 'minute-future-one' => 'sa minuta oħra',
+ 'minute-future-other' => 'sa {0} minuti oħra',
+ 'minute-narrow-future-few' => 'sa {0} min. oħra',
+ 'minute-narrow-future-many' => '+{0} min',
+ 'minute-narrow-future-one' => 'sa min. oħra',
+ 'minute-narrow-future-other' => 'sa {0} min. oħra',
+ 'minute-narrow-past-few' => '{0} min. ilu',
+ 'minute-narrow-past-many' => '{0} min. ilu',
+ 'minute-narrow-past-one' => 'min. ilu',
+ 'minute-narrow-past-other' => '{0} min. ilu',
+ 'minute-past-few' => '{0} minuti ilu',
+ 'minute-past-many' => '{0} minuti ilu',
+ 'minute-past-one' => 'minuta ilu',
+ 'minute-past-other' => '{0} minuti ilu',
+ 'minute-short-future-few' => 'sa {0} min. oħra',
+ 'minute-short-future-many' => 'sa {0} min. oħra',
+ 'minute-short-future-one' => 'sa min. oħra',
+ 'minute-short-future-other' => 'sa {0} min. oħra',
+ 'minute-short-past-few' => '{0} min. ilu',
+ 'minute-short-past-many' => '{0} minuti ilu',
+ 'minute-short-past-one' => 'min. ilu',
+ 'minute-short-past-other' => '{0} min. ilu',
+ 'month-future-few' => 'fi {0} xhur oħra',
+ 'month-future-many' => 'fi {0} xhur oħra',
+ 'month-future-one' => 'sa xahar ieħor',
+ 'month-future-other' => 'fi {0} xhur oħra',
+ 'month-narrow-future-few' => 'sa {0} xhur oħra',
+ 'month-narrow-future-many' => 'sa {0} xhur oħra',
+ 'month-narrow-future-one' => 'sa xahar ieħor',
+ 'month-narrow-future-other' => 'sa {0} xhur oħra',
+ 'month-narrow-past-few' => '{0} xhur ilu',
+ 'month-narrow-past-many' => '{0} xhur ilu',
+ 'month-narrow-past-one' => 'xahar ilu',
+ 'month-narrow-past-other' => '{0} xhur ilu',
+ 'month-past-few' => '{0} xhur ilu',
+ 'month-past-many' => '{0} xhur ilu',
+ 'month-past-one' => 'xahar ilu',
+ 'month-past-other' => '{0} xhur ilu',
+ 'month-short-future-few' => 'sa {0} xhur oħra',
+ 'month-short-future-many' => 'sa {0} xhur oħra',
+ 'month-short-future-one' => 'sa xahar ieħor',
+ 'month-short-future-other' => 'sa {0} xhur oħra',
+ 'month-short-past-few' => '{0} xhur ilu',
+ 'month-short-past-many' => '{0} xhur ilu',
+ 'month-short-past-one' => '{0} xahar ilu',
+ 'month-short-past-other' => '{0} xhur ilu',
+ 'quarter-future-few' => 'f’{0} kwarti ta’ sena oħrajn',
+ 'quarter-future-many' => 'f’{0} kwarti ta’ sena oħrajn',
+ 'quarter-future-one' => 'f’{0} kwarti ta’ sena oħrajn',
+ 'quarter-future-other' => 'f’{0} kwarti ta’ sena oħrajn',
+ 'quarter-narrow-future-few' => 'f’{0} kwarti ta’ sena oħrajn',
+ 'quarter-narrow-future-many' => 'f’{0} kwarti ta’ sena oħrajn',
+ 'quarter-narrow-future-one' => 'fi kwart ta’ sena ieħor',
+ 'quarter-narrow-future-other' => 'f’{0} kwarti ta’ sena oħrajn',
+ 'quarter-narrow-past-few' => '{0} kwarti ta’ sena ilu',
+ 'quarter-narrow-past-many' => '{0} kwarti ta’ sena ilu',
+ 'quarter-narrow-past-one' => 'fil-kwart tas-sena li għadda',
+ 'quarter-narrow-past-other' => '{0} kwarti ta’ sena ilu',
+ 'quarter-past-few' => '{0} kwarti ta’ sena li għaddew',
+ 'quarter-past-many' => '{0} kwarti ta’ sena li għaddew',
+ 'quarter-past-one' => 'il-kwart ta’ sena li għadda',
+ 'quarter-past-other' => '{0} kwarti ta’ sena li għaddew',
+ 'quarter-short-future-few' => 'f’{0} kwarti ta’ sena oħrajn',
+ 'quarter-short-future-many' => 'f’{0} kwarti ta’ sena oħrajn',
+ 'quarter-short-future-one' => 'fil-kwart tas-sena li ġej',
+ 'quarter-short-future-other' => 'f’{0} kwarti ta’ sena oħrajn',
+ 'quarter-short-past-few' => '{0} kwarti ta’ sena ilu',
+ 'quarter-short-past-many' => '{0} kwarti ta’ sena ilu',
+ 'quarter-short-past-one' => 'fil-kwart tas-sena li għadda',
+ 'quarter-short-past-other' => '{0} kwarti ta’ sena ilu',
+ 'second-future-few' => 'sa {0} sekondi oħra',
+ 'second-future-many' => 'sa {0} sekondi oħra',
+ 'second-future-one' => 'sa {0} sekondi oħra',
+ 'second-future-other' => 'sa {0} sekondi oħra',
+ 'second-narrow-future-few' => 'sa {0} sek. oħra',
+ 'second-narrow-future-many' => 'sa {0} sek. oħra',
+ 'second-narrow-future-one' => 'sa sek. oħra',
+ 'second-narrow-future-other' => 'sa {0} sek. oħra',
+ 'second-narrow-past-few' => '{0} sek. ilu',
+ 'second-narrow-past-many' => '{0} sek. ilu',
+ 'second-narrow-past-one' => 'sek. ilu',
+ 'second-narrow-past-other' => '{0} sek. ilu',
+ 'second-past-few' => '{0} sekondi ilu',
+ 'second-past-many' => '{0} sekondi ilu',
+ 'second-past-one' => 'sekonda ilu',
+ 'second-past-other' => '{0} sekondi ilu',
+ 'second-short-future-few' => 'sa {0} sek. oħra',
+ 'second-short-future-many' => 'sa {0} sek. oħra',
+ 'second-short-future-one' => 'sa {0} sekondi oħra',
+ 'second-short-future-other' => 'sa {0} sekondi oħra',
+ 'second-short-past-few' => '{0} sek. ilu',
+ 'second-short-past-many' => '{0} sek. ilu',
+ 'second-short-past-one' => 'sek. ilu',
+ 'second-short-past-other' => '{0} sek. ilu',
+ 'sun-future-few' => 'sa {0} Ħdud oħra',
+ 'sun-future-many' => 'sa {0} Ħdud oħra',
+ 'sun-future-one' => 'sa Ħadd ieħor',
+ 'sun-future-other' => 'sa {0} Ħdud oħra',
+ 'sun-narrow-future-few' => 'sa {0} Ħd. oħra',
+ 'sun-narrow-future-many' => 'sa {0} Ħd. oħra',
+ 'sun-narrow-future-one' => 'sa Ħd. ieħor',
+ 'sun-narrow-future-other' => 'sa {0} Ħd. oħra',
+ 'sun-narrow-past-few' => '{0} Ħd. ilu',
+ 'sun-narrow-past-many' => '{0} Ħd. ilu',
+ 'sun-narrow-past-one' => '{0} Ħd. ilu',
+ 'sun-narrow-past-other' => '{0} Ħd. ilu',
+ 'sun-past-few' => '{0} Ħdud ilu',
+ 'sun-past-many' => '{0} Ħdud ilu',
+ 'sun-past-one' => 'il-Ħadd li għadda',
+ 'sun-past-other' => '{0} Ħdud ilu',
+ 'sun-short-future-few' => 'sa {0} Ħd. oħra',
+ 'sun-short-future-many' => 'sa {0} Ħd. oħra',
+ 'sun-short-future-one' => 'sa Ħd. ieħor',
+ 'sun-short-future-other' => 'sa {0} Ħd. oħra',
+ 'sun-short-past-few' => '{0} Ħd. ilu',
+ 'sun-short-past-many' => '{0} Ħd. ilu',
+ 'sun-short-past-one' => 'il-Ħd. li għadda',
+ 'sun-short-past-other' => '{0} Ħd. ilu',
+ 'week-future-few' => 'sa {0} ġimgħat oħra',
+ 'week-future-many' => 'sa {0} ġimgħat oħra',
+ 'week-future-one' => 'sa ġimgħa oħra',
+ 'week-future-other' => 'sa {0} ġimgħat oħra',
+ 'week-narrow-future-few' => 'sa {0} ġimgħat oħra',
+ 'week-narrow-future-many' => 'sa {0} ġimgħat oħra',
+ 'week-narrow-future-one' => 'sa ġimgħa oħra',
+ 'week-narrow-future-other' => 'sa {0} ġimgħat oħra',
+ 'week-narrow-past-few' => '{0} ġimgħat ilu',
+ 'week-narrow-past-many' => '{0} ġimgħat ilu',
+ 'week-narrow-past-one' => 'ġimgħa ilu',
+ 'week-narrow-past-other' => '{0} ġimgħat ilu',
+ 'week-past-few' => '{0} ġimgħat ilu',
+ 'week-past-many' => '{0} ġimgħat ilu',
+ 'week-past-one' => 'ġimgħa ilu',
+ 'week-past-other' => '{0} ġimgħat ilu',
+ 'week-short-future-few' => 'sa {0} ġimgħat oħra',
+ 'week-short-future-many' => 'sa {0} ġimgħat oħra',
+ 'week-short-future-one' => 'sa ġimgħa oħra',
+ 'week-short-future-other' => '+{0} w',
+ 'week-short-past-few' => '{0} ġimgħat ilu',
+ 'week-short-past-many' => '{0} ġimgħat ilu',
+ 'week-short-past-one' => 'ġimgħa ilu',
+ 'week-short-past-other' => '{0} ġimgħat ilu',
+ 'year-future-few' => 'fi żmien {0} snin oħra',
+ 'year-future-many' => 'fi żmien {0} snin oħra',
+ 'year-future-one' => 'fi żmien sena',
+ 'year-future-other' => 'fi żmien {0} snin oħra',
+ 'year-narrow-future-few' => 'fi żmien {0} snin oħra',
+ 'year-narrow-future-many' => 'fi żmien {0} snin oħra',
+ 'year-narrow-future-one' => 'fi żmien sena',
+ 'year-narrow-future-other' => 'fi żmien {0} snin oħra',
+ 'year-narrow-past-few' => '{0} snin ilu',
+ 'year-narrow-past-many' => '{0} snin ilu',
+ 'year-narrow-past-one' => 'sena ilu',
+ 'year-narrow-past-other' => '{0} snin ilu',
'year-past-few' => '{0} snin ilu',
'year-past-many' => '{0} snin ilu',
- 'year-past-one' => '{0} sena ilu',
+ 'year-past-one' => 'sena ilu',
'year-past-other' => '{0} snin ilu',
-);
+ 'year-short-future-few' => 'fi żmien {0} snin oħra',
+ 'year-short-future-many' => 'fi żmien {0} snin oħra',
+ 'year-short-future-one' => 'fi żmien sena',
+ 'year-short-future-other' => 'fi żmien {0} snin oħra',
+ 'year-short-past-few' => '{0} snin ilu',
+ 'year-short-past-many' => '{0} snin ilu',
+ 'year-short-past-one' => 'sa sena ilu',
+ 'year-short-past-other' => '{0} snin ilu',
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesMy.php b/MLEB/cldr/CldrNames/CldrNamesMy.php
index 8df84b92..fdffb99a 100644
--- a/MLEB/cldr/CldrNames/CldrNamesMy.php
+++ b/MLEB/cldr/CldrNames/CldrNamesMy.php
@@ -1,56 +1,91 @@
<?php
-$languageNames = array(
- 'ab' => 'အက်ခါဇူအနျ',
- 'af' => 'အာဖရိကန်းစ်',
+$languageNames = [
+ 'aa' => 'အာဖာ',
+ 'ab' => 'အဘ်ခါဇီရာ',
+ 'ace' => 'အာချေး',
+ 'ada' => 'ဒန်မဲ',
+ 'ady' => 'အဒိုင်ဂီ',
+ 'af' => 'တောင်အာဖရိက',
'agq' => 'အာဂ်ဟိန်း',
- 'ak' => 'အာကိန်',
- 'am' => 'အန်ဟာရစျချ',
- 'ang' => 'အင်္ဂလိပ်စာဟောင်း',
- 'ar' => 'အာရေဗီ',
- 'ar-001' => 'အရေဗီ(ပုံမှန်)',
+ 'ain' => 'အိန်နု',
+ 'ak' => 'အာကန်',
+ 'ale' => 'အာလီယု',
+ 'alt' => 'တောင် အာလ်တိုင်း',
+ 'am' => 'အမ်ဟာရစ်ခ်',
+ 'an' => 'အာရာဂွန်',
+ 'ang' => 'အင်ဂလို ဆက္ကစွန်',
+ 'anp' => 'အန်ဂီကာ',
+ 'ar' => 'အာရဗီ',
'arn' => 'မာပုချီ',
- 'as' => 'အက္စမီစ်',
+ 'arp' => 'အာရာပါဟို',
+ 'as' => 'အာသံ',
'asa' => 'အာစု',
- 'az' => 'အော်ဇောဘိုင်ဂျောနီ',
- 'ba' => 'ဘက်ရှ်ကီအာ',
+ 'ast' => 'အက်စတူရီယန်း',
+ 'av' => 'အာဗာရစ်ခ်',
+ 'awa' => 'အာဝါဒီ',
+ 'ay' => 'အိုင်မာရ',
+ 'az' => 'အဇာဘိုင်ဂျန်',
+ 'ba' => 'ဘက်ရှ်ကာ',
'ban' => 'ဘာလီ',
'bas' => 'ဘာဆာ',
- 'be' => 'ဘီလာရု',
+ 'be' => 'ဘီလာရုစ်',
'bem' => 'ဘိန်ဘာ',
'bez' => 'ဘီနာ',
- 'bg' => 'ဘူဂေးရီးယား',
+ 'bg' => 'ဘူလ်ဂေးရီးယား',
+ 'bgn' => 'အနောက် ဘဲလိုချီ',
+ 'bho' => 'ဘို့ဂျ်ပူရီ',
+ 'bi' => 'ဘစ်စ်လာမာ',
+ 'bin' => 'ဘီနီ',
+ 'bla' => 'စစ္စီကာ',
'bm' => 'ဘန်ဘာရာ',
'bn' => 'ဘင်္ဂါလီ',
'bo' => 'တိဘက်',
'br' => 'ဘရီတွန်',
'brx' => 'ဗိုဒို',
'bs' => 'ဘော့စ်နီးယား',
- 'ca' => 'ကာတာလန်',
- 'ce' => 'ချေချင်း',
+ 'bug' => 'ဘူဂစ်စ်',
+ 'byn' => 'ဘလင်',
+ 'ca' => 'ကတ်တလန်',
+ 'ce' => 'ချက်ချန်း',
+ 'ceb' => 'စီဗူအာနို',
'cgg' => 'ချီဂါ',
+ 'ch' => 'ချမိုရို',
+ 'chk' => 'ချူကီးစ်',
+ 'chm' => 'မာရီ',
+ 'cho' => 'ချော့တို',
'chr' => 'ချာရိုကီ',
- 'ckb' => 'ဆိုရာနီ ကူဒစ်ရှ်',
+ 'chy' => 'ချေယန်း',
+ 'ckb' => 'ဆိုရာနီ',
'co' => 'ခိုစီကန်',
'cr' => 'ခရီး',
+ 'crs' => 'ခရီအိုလီ',
'cs' => 'ချက်',
+ 'cu' => 'ချပ်ချ် စလာဗစ်',
+ 'cv' => 'ချူဗက်ရှ်',
'cy' => 'ဝေလ',
'da' => 'ဒိန်းမတ်',
'dak' => 'ဒါကိုတာ',
+ 'dar' => 'ဒါဂ်ဝါ',
'dav' => 'တိုင်တာ',
'de' => 'ဂျာမန်',
- 'de-at' => 'ဩစတြီးယ ဂျာမန်',
- 'de-ch' => 'ဆွစ် အမြင့် ဂျာမန်',
- 'del' => 'ဒီလာဝဲ',
+ 'de-at' => 'ဩစတြီးယား ဂျာမန်',
+ 'de-ch' => 'အလီမဲန်နစ် ဂျာမန်',
+ 'del' => 'ဒယ်လာဝဲလ်',
+ 'dgr' => 'ဒေါ့ဂ်ရစ်ဘ်',
'dje' => 'ဇာမာ',
- 'dsb' => 'အောက်ဆိုဘီအမ်',
+ 'dsb' => 'အနိမ့် ဆိုဘီယန်း',
'dua' => 'ဒူအလာ',
'dum' => 'အလယ်ပိုင်း ဒတ်ချ်',
+ 'dv' => 'ဒီဗာဟီ',
'dyo' => 'ဂျိုလာ-ဖွန်ရီ',
- 'dz' => 'ဒွန်ကာ',
+ 'dz' => 'ဒဇွန်ကာ',
+ 'dzg' => 'ဒဇာဂါ',
'ebu' => 'အမ်ဘူ',
- 'ee' => 'ဝီ',
+ 'ee' => 'အီဝီ',
+ 'efi' => 'အာဖိခ်',
'egy' => 'ရှေးဟောင်း အီဂျစ်',
+ 'eka' => 'အီကာဂျုခ်',
'el' => 'ဂရိ',
'en' => 'အင်္ဂလိပ်',
'en-au' => 'ဩစတြေးလျှ အင်္ဂလိပ်',
@@ -58,472 +93,735 @@ $languageNames = array(
'en-gb' => 'ဗြိတိသျှ အင်္ဂလိပ်',
'en-us' => 'အမေရိကန် အင်္ဂလိပ်',
'enm' => 'အလယ်ပိုင်း အင်္ဂလိပ်',
- 'eo' => 'အက္စပရန္တို',
+ 'eo' => 'အက်စ်ပရန်တို',
'es' => 'စပိန်',
- 'es-419' => 'လက်တင်အမေရိက စပိန်',
- 'es-es' => 'စပိန်(ဥရောပ)',
- 'et' => 'အက်စ်တိုးနီးရန်း',
- 'eu' => 'ဘစ်က္ကီ',
+ 'es-es' => 'စပိန် (ဥရောပ)',
+ 'et' => 'အက်စ်တိုးနီးယား',
+ 'eu' => 'ဘာစ်ခ်',
+ 'ewo' => 'အီဝန်ဒို',
'fa' => 'ပါရှန်',
- 'fi' => 'ဖင်နစ်ရှ်',
- 'fil' => 'ဖိလစ်ပီနို',
+ 'ff' => 'ဖူလာ',
+ 'fi' => 'ဖင်လန်',
+ 'fil' => 'ဖိလစ်ပိုင်',
'fj' => 'ဖီဂျီ',
- 'fo' => 'ဖာရိုအိစ်',
+ 'fo' => 'ဖာရို',
+ 'fon' => 'ဖော်န်',
'fr' => 'ပြင်သစ်',
'fr-ca' => 'ကနေဒါ ပြင်သစ်',
'fr-ch' => 'ဆွစ် ပြင်သစ်',
- 'frm' => 'အလယ်ပိုင်းပြင်သစ်',
- 'fro' => 'ပြင်သစ်ဟောင်း',
- 'frr' => 'မြောက်ပိုင်း ဖရီစီရန်',
- 'frs' => 'အရှေ့ပိုင်း ဖရီစီရန်',
- 'fy' => 'အနောက်ပိုင်း ဖရီစီရန်',
- 'ga' => 'အိုင်းရစ်',
- 'gag' => 'ဂါဂါဇ်',
- 'gl' => 'ဂါလာစီယံ',
- 'gmh' => 'အလယ်ပိုင်းအမြင့်ဂျာမန်',
+ 'frm' => 'အလယ်ပိုင်း ပြင်သစ်',
+ 'fro' => 'ဖရန်စီစ်',
+ 'frr' => 'မြောက် ဖရီစီရန်',
+ 'frs' => 'အရှေ့ ဖရီစီရန်',
+ 'fur' => 'ဖရူလီယန်း',
+ 'fy' => 'အနောက် ဖရီစီရန်',
+ 'ga' => 'အိုင်းရစ်ရှ်',
+ 'gaa' => 'ဂါ',
+ 'gag' => 'ဂါဂုဇ်',
+ 'gd' => 'စကော့တစ်ရှ် ဂေးလစ်ခ်',
+ 'gez' => 'ဂီးဇ်',
+ 'gil' => 'ကာရီဗာတီ',
+ 'gl' => 'ဂါလီစီယာ',
+ 'gmh' => 'အလယ်ပိုင်း အမြင့် ဂျာမန်',
'gn' => 'ဂူအာရာနီ',
+ 'gor' => 'ဂိုရိုတာလို',
'grc' => 'ရှေးဟောင်း ဂရိ',
'gsw' => 'ဆွစ် ဂျာမန်',
'gu' => 'ဂူဂျာရသီ',
'guz' => 'ဂူစီး',
'gv' => 'မန်းဇ်',
+ 'gwi' => 'ဂွစ်ချင်',
'ha' => 'ဟာဥစာ',
- 'haw' => 'ဟာဝေယံ',
+ 'haw' => 'ဟာဝိုင်ယီ',
'he' => 'ဟီးဘရူး',
- 'hi' => 'ဟိန္ဒီ',
- 'hr' => 'ခရိုအေရှန်',
- 'hsb' => 'အပေါ်ဆိုဘီအမ်',
- 'ht' => 'ဟာအီတီအန်',
+ 'hi' => 'ဟိန်ဒူ',
+ 'hil' => 'ဟီလီဂေနွန်',
+ 'hmn' => 'မုံ',
+ 'hr' => 'ခရိုအေးရှား',
+ 'hsb' => 'ဆက္ကဆိုနီ',
+ 'ht' => 'ဟေတီ',
'hu' => 'ဟန်ဂေရီ',
- 'hy' => 'အာမေနီအန်',
+ 'hup' => 'ဟူပါ',
+ 'hy' => 'အာမေးနီးယား',
+ 'hz' => 'ဟီရဲရို',
+ 'ia' => 'အင်တာလင်ဂွါ',
+ 'iba' => 'အီဗန်',
+ 'ibb' => 'အီဘီဘီယို',
'id' => 'အင်ဒိုနီးရှား',
'ig' => 'အစ္ဂဘို',
'ii' => 'စီချွမ် ရီ',
- 'is' => 'အိုင်စ်လန္ဒီ',
+ 'ilo' => 'အီလိုကို',
+ 'inh' => 'အင်ဂုရှ်',
+ 'io' => 'အီဒို',
+ 'is' => 'အိုက်စ်လန်',
'it' => 'အီတလီ',
'iu' => 'အီနုခ်တီတု',
'ja' => 'ဂျပန်',
+ 'jbo' => 'လိုဂျ်ဘန်',
'jgo' => 'ဂွမ်ဘာ',
'jmc' => 'မချာမီ',
'jpr' => 'ဂျူဒီယို-ပါရှန်',
- 'jrb' => 'ဂျူဒီယို-အာရေဗျ',
- 'jv' => 'ဂျာဗားနီးစ်',
- 'ka' => 'ဂျော်ဂျီယန်',
- 'kab' => 'ခဘိုင်လ်',
+ 'jrb' => 'ဂျူဒီယို-အာရဗီ',
+ 'jv' => 'ဂျာဗား',
+ 'ka' => 'ဂျော်ဂျီယာ',
+ 'kab' => 'ကဘိုင်လ်',
'kac' => 'ကချင်',
- 'kam' => 'ခမ်ဘာ',
+ 'kaj' => 'ဂျူအူ',
+ 'kam' => 'ကမ်ဘာ',
+ 'kbd' => 'ကဘာဒင်',
+ 'kcg' => 'တိုင်အပ်',
'kde' => 'မာခွန်ဒီ',
- 'kea' => 'ခဘူဗာဒီအာနူ',
+ 'kea' => 'ကဘူဗာဒီအာနူ',
+ 'kfo' => 'ကိုရို',
'kg' => 'ကွန်ဂို',
'kha' => 'ခါစီ',
- 'khq' => 'ခိုရာ ချီအီနီ',
- 'ki' => 'ခီခူယူ',
- 'kk' => 'ခါဇါခ်',
- 'kl' => 'ခလာအ်လီဆပ်',
- 'kln' => 'ခါလိမ်ဂျင်',
+ 'khq' => 'ကိုရာ ချီအီနီ',
+ 'ki' => 'ကီကူယူ',
+ 'kj' => 'ကွန်းယာမာ',
+ 'kk' => 'ကာဇာချ',
+ 'kkj' => 'ကကို',
+ 'kl' => 'ကလာအ်လီဆပ်',
+ 'kln' => 'ကလန်ဂျင်',
'km' => 'ခမာ',
- 'kn' => 'ကန္နာဒါ',
- 'ko' => 'ကိုးရီးယား',
+ 'kmb' => 'ကင်ဘွန်ဒူ',
+ 'kn' => 'ကန်နာဒါ',
+ 'ko' => 'ကိုရီးယား',
'koi' => 'ကိုမီ-ပါမြက်',
'kok' => 'ကွန်ကနီ',
- 'ks' => 'ကက်ရှ်မီရီ',
+ 'kpe' => 'ကပ်ပဲလ်',
+ 'kr' => 'ကနူရီ',
+ 'krc' => 'ကရာချေး-ဘာကာ',
+ 'krl' => 'ကာရီလီယန်',
+ 'kru' => 'ကူရုပ်ခ်',
+ 'ks' => 'ကက်ရှ်မီးယား',
'ksb' => 'ရှန်ဘာလာ',
'ksf' => 'ဘာဖီအာ',
+ 'ksh' => 'ကိုလိုနီယန်း',
'ku' => 'ကဒ်',
+ 'kum' => 'ကွမ်မိုက်',
+ 'kv' => 'ကိုမီ',
'kw' => 'ခိုနီရှ်',
- 'ky' => 'ခရူဂစ်',
+ 'ky' => 'ကာဂျစ်',
'la' => 'လက်တင်',
+ 'lad' => 'လာဒီနို',
'lag' => 'လန်ဂီ',
- 'lb' => 'လူဇင်ဘတ်က်',
- 'lg' => 'ဂန်ဒီ',
+ 'lb' => 'လူဇင်ဘတ်',
+ 'lez' => 'လက်ဇ်ဂီးယား',
+ 'lg' => 'ဂန်ဒါ',
+ 'li' => 'လင်ဘာဂစ်ရှ်',
'lkt' => 'လာကိုတာ',
'ln' => 'လင်ဂါလာ',
'lo' => 'လာအို',
- 'lt' => 'လစ္သူအာနီယံ',
- 'lu' => 'လူဘာ-ခါတန်ဂါ',
+ 'loz' => 'လိုဇီ',
+ 'lrc' => 'မြောက်လူရီ',
+ 'lt' => 'လစ်သူဝေးနီးယား',
+ 'lu' => 'လူဘာ-ကတန်ဂါ',
+ 'lua' => 'လူဘာ-လူလူအာ',
+ 'lun' => 'လွန်ဒါ',
'luo' => 'လူအို',
+ 'lus' => 'မီဇို',
'luy' => 'လူရီအာ',
- 'lv' => 'လက္ဘီအံ',
+ 'lv' => 'လတ်ဗီးယား',
+ 'mad' => 'မဒူရာ',
+ 'mag' => 'မဂါဟီ',
+ 'mai' => 'မိုင်သီလီ',
+ 'mak' => 'မကာဆာ',
'mas' => 'မာဆိုင်',
+ 'mdf' => 'မို့ခ်ရှာ',
+ 'men' => 'မန်ဒဲ',
'mer' => 'မီရု',
- 'mfe' => 'မိုရှီစ်ယန်း',
- 'mg' => 'အာလာဂါစီ',
- 'mga' => 'အလယ်ပိုင်း အိုင်းရစ်',
+ 'mfe' => 'မောရစ်ရှ',
+ 'mg' => 'မာလဂက်စီ',
+ 'mga' => 'အလယ်ပိုင်း အိုင်းရစ်ရှ်',
'mgh' => 'မာခူဝါ-မီအီတို',
'mgo' => 'မီတာ',
- 'mi' => 'မောင်းရီ (နယူးဇီလန်ကျွန်းရှိ ပင်ရင်းတိုင်းရင်းသားလူမျိုး)',
- 'mk' => 'မာစီဒိုနီယံ',
- 'ml' => 'မလေးရာလမ်',
- 'mn' => 'မွန်ဂိုလီးယန်း',
+ 'mh' => 'မာရှယ်လိဇ်',
+ 'mi' => 'မာအိုရီ',
+ 'mic' => 'မစ်ခ်မက်ခ်',
+ 'min' => 'စူကူမီနန်',
+ 'mk' => 'မက်ဆီဒိုးနီးယား',
+ 'ml' => 'မလေယာလမ်',
+ 'mn' => 'မွန်ဂိုလီးယား',
'mnc' => 'မန်ချူး',
- 'mni' => 'မနိပူရီ',
+ 'mni' => 'မနိပူရ',
'moh' => 'မိုဟော့ခ်',
+ 'mos' => 'မိုစီ',
'mr' => 'မာရသီ',
'ms' => 'မလေး',
- 'mt' => 'မောလ္တီစ်',
- 'mua' => 'မန်ဒန်း',
- 'mul' => 'အကြိမ်များစွာ ဘာသာစကားများ',
- 'my' => 'ဗမာ',
+ 'mt' => 'မော်လ်တာ',
+ 'mua' => 'မွန်ဒန်း',
+ 'mul' => 'ဘာသာစကား အမျိုးမျိုး',
+ 'mus' => 'ခရိချ',
+ 'mwl' => 'မီရန်ဒီးဇ်',
+ 'my' => 'မြန်မာ',
+ 'myv' => 'အီဇယာ',
+ 'mzn' => 'မာဇန်ဒါရန်နီ',
+ 'na' => 'နော်ရူး',
+ 'nap' => 'နပိုလီတန်',
'naq' => 'နာမာ',
- 'nb' => 'ဘွတ်မော်လ်',
- 'nd' => 'တောင်ဒီဘီလီ',
+ 'nb' => 'နော်ဝေ ဘွတ်ခ်မော်လ်',
+ 'nd' => 'မြောက် အွန်န်ဒီဘီလီ',
'nds' => 'အနိမ့် ဂျာမန်',
- 'ne' => 'နီပါလီ',
- 'nl' => 'ဒတ်ချ်',
+ 'nds-nl' => 'ဂျာမန် (နယ်သာလန်)',
+ 'ne' => 'နီပေါ',
+ 'new' => 'နီဝါရီ',
+ 'ng' => 'အွန်ဒွန်ဂါ',
+ 'nia' => 'နီးရပ်စ်',
+ 'niu' => 'နူအဲယန်း',
+ 'nl' => 'ဒတ်ခ်ျ',
'nl-be' => 'ဖလီမစ်ရှ်',
- 'nmg' => 'ဝါဆီအို',
- 'nn' => 'နော်ဝေး နီးနော်စ်ခ်',
+ 'nmg' => 'ကွာစီအို',
+ 'nn' => 'နော်ဝေ နီးနောစ်',
+ 'nnh' => 'အွန်ရဲဘွန်း',
'no' => 'နော်ဝေး',
- 'nqo' => 'နကို',
+ 'nog' => 'နိုဂိုင်',
+ 'nqo' => 'အွန်ကို',
+ 'nr' => 'တောင် အွန်န်ဘီလီ',
+ 'nso' => 'မြောက် ဆိုသို',
'nus' => 'နူအာ',
- 'nyn' => 'ယန်ကိုလီ',
+ 'nv' => 'နာဗာဟို',
+ 'ny' => 'နရန်ဂျာ',
+ 'nyn' => 'နရန်ကိုလီ',
+ 'oc' => 'အိုစီတန်',
'om' => 'အိုရိုမို',
'or' => 'အိုရီရာ',
+ 'os' => 'အိုဆဲတစ်ခ်',
'pa' => 'ပန်ချာပီ',
+ 'pag' => 'ပန်ဂါစီနန်',
+ 'pam' => 'ပမ်ပန်ညာ',
+ 'pap' => 'ပါပီမင်တို',
+ 'pau' => 'ပလာအို',
+ 'pcm' => 'နိုင်ဂျီးရီးယား ပစ်ဂျင်',
'peo' => 'ပါရှန် အဟောင်း',
'pi' => 'ပါဠိ',
'pl' => 'ပိုလန်',
- 'ps' => 'ပါရှ်တို',
+ 'prg' => 'ပရူရှန်',
+ 'ps' => 'ပက်ရှ်တွန်း',
'pt' => 'ပေါ်တူဂီ',
'pt-br' => 'ဘရာဇီး ပေါ်တူဂီ',
'pt-pt' => 'ဥရောပ ပေါ်တူဂီ',
- 'qu' => 'ခက်ချ်ဝါ',
- 'quc' => 'ခီခ်အီချီ',
+ 'qu' => 'ခီချူဝါအိုဝါ',
+ 'quc' => 'ကီခ်အီချီ',
+ 'rap' => 'ရပန်နူအီ',
+ 'rar' => 'ရရိုတွန်ဂန်',
'rm' => 'ရောမ',
'rn' => 'ရွန်ဒီ',
'ro' => 'ရိုမေနီယား',
+ 'ro-md' => 'မော်လဒိုဗာ',
'rof' => 'ရွမ်ဘို',
'ru' => 'ရုရှ',
+ 'rup' => 'အာရိုမန်းနီးယန်း',
'rw' => 'ကင်ရာဝန်ဒါ',
- 'rwk' => 'ဝါ',
+ 'rwk' => 'ရူဝမ်',
'sa' => 'သင်္သကရိုက်',
- 'saq' => 'ဆန်ဘူရု',
+ 'sad' => 'ဆန်ဒါဝီ',
+ 'sah' => 'ဆခါ',
+ 'saq' => 'ဆမ်ဘူရူ',
+ 'sat' => 'ဆန်တာလီ',
+ 'sba' => 'အွန်ဂမ်းဘေး',
'sbp' => 'ဆန်ဂု',
- 'sco' => 'စကော့',
+ 'sc' => 'ဆာဒီနီးယား',
+ 'scn' => 'စစ္စလီ',
+ 'sco' => 'စကော့တ်',
'sd' => 'စင်ဒီ',
- 'se' => 'တောင်ဆာမိ',
+ 'se' => 'မြောက် ဆာမိ',
'seh' => 'စီနာ',
- 'ses' => 'ခိုရာဘိုရို ဆမ်နီ',
- 'sg' => 'ဆမ်ဂို',
+ 'ses' => 'ကိုရာဘိုရို ဆမ်နီ',
+ 'sg' => 'ဆန်ဂို',
'sga' => 'အိုင်းရစ် ဟောင်း',
'shi' => 'တာချယ်လ်ဟစ်',
'shn' => 'ရှမ်း',
- 'si' => 'ဆင်ဟာလ',
- 'sk' => 'စလိုဗက်',
- 'sl' => 'စလိုဗေးနီးယမ်း',
- 'sma' => 'တောင်ပိုင်း ဆာမိ',
+ 'si' => 'စင်ဟာလာ',
+ 'sk' => 'ဆလိုဗက်',
+ 'sl' => 'ဆလိုဗေးနီးယား',
+ 'sm' => 'ဆမိုအာ',
+ 'sma' => 'တောင် ဆာမိ',
'smj' => 'လူလီ ဆာမိ',
'smn' => 'အီနာရီ ဆာမိ',
- 'sms' => 'ခိုလ် ဆာမိ',
- 'sn' => 'ရှိနာ',
+ 'sms' => 'စခိုးလ် ဆာမိ',
+ 'sn' => 'ရှိုနာ',
+ 'snk' => 'ဆိုနင်ကေး',
'so' => 'ဆိုမာလီ',
- 'sq' => 'အယ်လ်ဘေးနီးယန်း',
- 'sr' => 'ဆားဗီးယန်း',
+ 'sq' => 'အယ်လ်ဘေးနီးယား',
+ 'sr' => 'ဆားဘီးယား',
+ 'srn' => 'ဆရာနန် တွန်ဂို',
+ 'ss' => 'ဆွာဇီလန်',
+ 'ssy' => 'ဆာဟို',
+ 'st' => 'တောင်ပိုင်း ဆိုသို',
'su' => 'ဆူဒန်',
+ 'suk' => 'ဆူကူမာ',
'sv' => 'ဆွီဒင်',
- 'sw' => 'ဆြာဟီလီ',
- 'swc' => 'ခွန်ဂို စွာဟီလီ',
+ 'sw' => 'ဆွာဟီလီ',
+ 'sw-cd' => 'ကွန်ဂို ဆွာဟီလီ',
+ 'swb' => 'ကိုမိုရီးယန်း',
+ 'syr' => 'ဆီးရီးယား',
'ta' => 'တမီးလ်',
- 'te' => 'တီလီဂု',
+ 'te' => 'တီလီဂူ',
+ 'tem' => 'တင်မ်နဲ',
'teo' => 'တီဆို',
- 'tg' => 'တာဂွီခ်',
+ 'tet' => 'တီတွမ်',
+ 'tg' => 'တာဂျစ်',
'th' => 'ထိုင်း',
- 'ti' => 'တီဂ်ရင်ရာ',
- 'tk' => 'တခ္မင်',
+ 'ti' => 'တီဂ်ရင်ယာ',
+ 'tig' => 'တီဂရီ',
+ 'tk' => 'တာ့ခ်မင်နစ္စတန်',
+ 'tlh' => 'ကလင်ဂွန်',
+ 'tn' => 'တီဆဝါနာ',
'to' => 'တွန်ဂါ',
- 'tr' => 'တာကစ်',
- 'tt' => 'တတာ',
- 'twq' => 'တာဆာဝါခ်',
- 'tzm' => 'အလယ်အက်တ်လက်စ် တာမာဇိုက်',
+ 'tpi' => 'တော့ခ် ပိစင်',
+ 'tr' => 'တူရကီ',
+ 'trv' => 'တရိုကို',
+ 'ts' => 'ဆွန်ဂါ',
+ 'tt' => 'တာတာ',
+ 'tum' => 'တမ်ဘူကာ',
+ 'tvl' => 'တူဗာလူ',
+ 'twq' => 'တာဆာဝါချ',
+ 'ty' => 'တဟီတီ',
+ 'tyv' => 'တူဗန်',
+ 'tzm' => 'အလယ်အာ့တလာစ် တာမာဇိုက်',
+ 'udm' => 'အူမူရတ်',
'ug' => 'ဝီဂါ',
'uk' => 'ယူကရိန်း',
- 'und' => 'မသိ သို့မဟုတ် မရှိ သော ဘာသာစကား',
- 'ur' => 'အော်ဒူ',
- 'uz' => 'ဦးဇ်ဘက်',
+ 'umb' => 'အူဘန်ဒူ',
+ 'und' => 'မသိသော ဘာသာ',
+ 'ur' => 'အူရ်ဒူ',
+ 'uz' => 'ဥဇဘတ်',
'vai' => 'ဗိုင်',
+ 've' => 'ဗင်န်ဒါ',
'vi' => 'ဗီယက်နမ်',
- 'vun' => 'ဗန်ဂျို',
+ 'vo' => 'ဗိုလာပိုက်',
+ 'vun' => 'ဗွန်ဂျို',
+ 'wa' => 'ဝါလူးန်',
+ 'wae' => 'ဝေါလ်ဆာ',
+ 'wal' => 'ဝိုလက်တာ',
+ 'war' => 'ဝါရေး',
+ 'wbp' => 'ဝေါလ်ပီရီ',
'wo' => 'ဝူလိုဖ်',
+ 'xal' => 'ကာလ်မိုက်',
'xh' => 'ဇိုစာ',
'xog' => 'ဆိုဂါ',
- 'yo' => 'ရိုရုဘာ',
- 'zgh' => 'မိုရိုကန် တွမ်မဇိုတ် စံ',
+ 'yav' => 'ရန်ဘဲန်',
+ 'ybb' => 'ရမ်ဘာ',
+ 'yi' => 'ဂျူး',
+ 'yo' => 'ယိုရူဘာ',
+ 'yue' => 'ကွမ်တုံ',
+ 'zgh' => 'မိုရိုကို တမဇိုက်',
'zh' => 'တရုတ်',
- 'zh-hans' => 'ရိုးရှင်းသော တရုတ်',
- 'zh-hant' => 'ရှေးရိုးစဉ်လာ တရုတ်',
- 'zu' => 'ဇူလူ',
- 'zxx' => 'ဘာသာစကား နှင့် ပတ်သက် သောအရာမရှိ',
-);
+ 'zu' => 'ဇူးလူး',
+ 'zun' => 'ဇူနီ',
+ 'zxx' => 'ဘာသာစကားနှင့် ပတ်သက်သောအရာ မရှိပါ',
+ 'zza' => 'ဇာဇာ',
+];
-$currencyNames = array(
- 'AED' => 'အာရပ်ဒူဟမ်း',
- 'AFN' => 'အာဖဂန်အာဖဂါနီ',
- 'ALL' => 'အယ်လ်ဘီးနီးယားလီခ်',
- 'AMD' => 'အာမေးနီးယားဒရမ်း',
+$currencyNames = [
+ 'AED' => 'အာရပ်စော်ဘွားများ ပြည်ထောင်စု ဒါဟမ်း',
+ 'AFN' => 'အာဖဂန် အာဖဂါနီ',
+ 'ALL' => 'အယ်ဘေးနီးယား လီခ်',
+ 'AMD' => 'အာမေးနီးယား ဒရမ်',
'ANG' => 'နယ်သာလန် အန်တီလန် ဂင်းဒါး',
- 'AOA' => 'အင်ဂိုလာ ကန်ဇာ',
+ 'AOA' => 'အန်ဂိုလာ ကွမ်ဇာ',
'ARP' => 'အာဂျင်တီးနား ပီဆို (၁၉၈၃–၁၉၈၅)',
'ARS' => 'အာဂျင်တီးနား ပီဆို',
'AUD' => 'ဩစတြေးလျ ဒေါ်လာ',
- 'AWG' => 'အရူဘန် ဂင်းဒါး',
- 'AZN' => 'အဇာဘိုင်ဂျန်မာနတ်',
- 'BAM' => 'ဘော့စနီးယား နှင့် ဟာဇီဂိုဘီးနားမတ်က်',
- 'BBD' => 'ဘာဘဒီယံဒေါ်လာ',
+ 'AWG' => 'အရူးဗာ ဖလိုရင်း',
+ 'AZN' => 'အဇာဘိုင်ဂျန် မာနတ်',
+ 'BAM' => 'ဘော့စနီးယားနှင့် ဟာဇီဂိုဘီးနား ငွေလဲနိုင်သော မတ်က်',
+ 'BBD' => 'ဘာဘေးဒီယန်း ဒေါ်လာ',
'BDT' => 'ဘင်္ဂလားဒေ့ရှ် တာကာ',
'BEF' => 'ဘယ်လ်ဂျီယမ် ဖရန့်',
- 'BGN' => 'ဘူဂေးရီးယားလက်ဖ်',
- 'BHD' => 'ဘာရိန်းဒီနား',
+ 'BGN' => 'ဘူလ်ဂေးရီးယား လက်ဖ်',
+ 'BHD' => 'ဘာရိန်း ဒီနား',
'BIF' => 'ဘူရွန်ဒီ ဖရန့်',
- 'BMD' => 'ဘာမူဒါ ဒေါ်လာ',
+ 'BMD' => 'ဘာမြူဒါ ဒေါ်လာ',
'BND' => 'ဘရူနိုင်း ဒေါ်လာ',
- 'BOB' => 'ဘိုလီဘီယံ ဘိုလီဘီအားနို',
+ 'BOB' => 'ဘိုလီးဗီးယား ဘိုလီးဗီယားနို',
'BOP' => 'ဘိုလီးဘီးယား ပီဆို',
'BRL' => 'ဘရာဇီး ရီးယဲ',
'BSD' => 'ဘဟားမား ဒေါ်လာ',
- 'BTN' => 'ဘူတန်အံဂါလ်ထရန်',
+ 'BTN' => 'ဘူတန် အံဂါလ်ထရန်',
'BUK' => 'ဗမာ ကျပ်',
- 'BWP' => 'ဘော့စ်ဝါနာ ပုလ',
+ 'BWP' => 'ဘော့ဆွာနာ ပုလ',
'BYB' => 'ဘီလာရုစ် ရူဘယ်အသစ် (၁၉၉၄–၁၉၉၉)',
- 'BYR' => 'ဘီလာရုစ် ရူဘယ်',
- 'BZD' => 'ဘေလီဇ် ဒေါ်လာ',
+ 'BYN' => 'ဘီလာရုစ် ရူဘယ်',
+ 'BYR' => 'ဘီလာရုဇ် ရူဘယ် (၂၀၀၀–၂၀၁၆)',
+ 'BZD' => 'ဘလိဇ် ဒေါ်လာ',
'CAD' => 'ကနေဒါ ဒေါ်လာ',
'CDF' => 'ကွန်ဂို ဖရန့်',
'CHF' => 'ဆွစ် ဖရန့်',
'CLP' => 'ချီလီ ပီဆို',
+ 'CNH' => 'တရုတ် ယွမ် (ဟောင်ကောင်)',
'CNY' => 'တရုတ် ယွမ်',
'COP' => 'ကိုလံဘီယာ ပီဆို',
- 'CRC' => 'ကော့စ်တာရီကာ ခိုလုံး',
- 'CUC' => 'နိုင်ငံခြားငွေလဲလှယ်နိုင်သော ကျူးဘားပီဆိုငွေ',
+ 'CRC' => 'ကို့စတာရီကာ ကိုလွန်',
+ 'CUC' => 'နိုင်ငံခြားငွေလဲလှယ်နိုင်သော ကျူးဘားပီဆို',
'CUP' => 'ကျူးဘား ပီဆို',
- 'CVE' => 'ခေ့ပ်ဗာဒူ အက်စ်ခူဒို',
+ 'CVE' => 'ကိတ်ပ်ဗာဒီ အက်စ်ခူဒို',
'CYP' => 'ဆိုက်ပရက်စ် ပေါင်',
- 'CZK' => 'ချက်ခိုရိုနာ',
+ 'CZK' => 'ချက် ခိုရိုနာ',
'DEM' => 'ဂျာမဏီ မတ်',
'DJF' => 'ဂျီဘူတီ ဖရန့်',
- 'DKK' => 'ဒိန်းမတ်ခရိုဏာ',
+ 'DKK' => 'ဒိန်းမတ် ခရိုဏာ',
'DOP' => 'ဒိုမီနီကန် ပီဆို',
- 'DZD' => 'အဲလ်ဂျီရီယန် ဒီနာ',
+ 'DZD' => 'အယ်လ်ဂျီးရီးယား ဒီနာ',
'EGP' => 'အီဂျစ် ပေါင်',
- 'ERN' => 'အီရီတရီအာနာ့ခ်ဖာ',
+ 'ERN' => 'အီရီထရီးယား နာ့ခ်ဖာ',
'ESP' => 'စပိန် ပယ်စေးတာ',
- 'ETB' => 'အီသီယိုးပီးယားဘီးယာ',
+ 'ETB' => 'အီသီယိုးပီးယား ဘီးယာ',
'EUR' => 'ယူရို',
'FJD' => 'ဖီဂျီ ဒေါ်လာ',
- 'FKP' => 'ဖောက်ကလန် ကျွန်းစု ပေါင်',
+ 'FKP' => 'ဖော့ကလန်ကျွန်းစု ပေါင်',
'FRF' => 'ပြင်သစ် ဖရန့်',
'GBP' => 'ဗြိတိသျှ ပေါင်',
- 'GEL' => 'ဂျော်ဂျီယာလားရီ',
+ 'GEL' => 'ဂျော်ဂျီယာ လားရီ',
'GHS' => 'ဂါနာ ဆဲဒီ',
'GIP' => 'ဂျီဘရော်လ်တာ ပေါင်',
- 'GMD' => 'ဂန်ဘီယာ ဒါလာစီ',
- 'GNF' => 'ဂီးနီ ဖရန့်',
- 'GTQ' => 'ဂွာတီမာလာ ခက်ဇော်လ်',
- 'GYD' => 'ဂူရာနာ ဒေါ်လာ',
+ 'GMD' => 'ဂမ်ဘီယာ ဒါလာစီ',
+ 'GNF' => 'ဂီနီရာ ဖရန့်',
+ 'GTQ' => 'ဂွါတီမာလာ ခက်ဇော်လ်',
+ 'GYD' => 'ဂိုင်ယာနာ ဒေါ်လာ',
'HKD' => 'ဟောင်ကောင် ဒေါ်လာ',
- 'HNL' => 'ဟွန်ဒူးရပ်စ် လန်းပီးရာ',
- 'HRK' => 'ခရိုအေးရှားခူးနာ',
+ 'HNL' => 'ဟွန်ဒူးရပ်စ် လမ်းပီရာ',
+ 'HRK' => 'ခရိုအေးရှား ခူးနာ',
'HTG' => 'ဟေတီဂူးအော်ဒ်',
- 'HUF' => 'ဟန်ဂေရီယံဖော်ရင့်တ်',
+ 'HUF' => 'ဟန်ဂေရီယံ ဖော်ရင့်တ်',
'IDR' => 'အင်ဒိုနီးရှား ရူပီးယား',
'ILP' => 'အစ္စရေး ပေါင်',
- 'ILS' => 'အစ္စရေးရှဲကလ်အသစ်',
+ 'ILS' => 'အစ္စရေး ရှဲကလ်အသစ်',
'INR' => 'အိန္ဒိယ ရူပီး',
- 'IQD' => 'အီရပ်ဒီနား',
- 'IRR' => 'အီရန်ရီအော်လ်',
+ 'IQD' => 'အီရတ် ဒီနာ',
+ 'IRR' => 'အီရန် ရီအော်လ်',
'ISK' => 'အိုက်စလန် ခရိုဏာ',
'JMD' => 'ဂျမေကာ ဒေါ်လာ',
- 'JOD' => 'ဂျော်ဒန်ဒီနား',
- 'JPY' => 'ဂျပန်ယန်း',
- 'KES' => 'ကင်ညာသျှီလင်',
- 'KGS' => 'ခရူဂစ်စတန်ဆော်မ်',
+ 'JOD' => 'ဂျော်ဒန် ဒီနာ',
+ 'JPY' => 'ဂျပန် ယန်း',
+ 'KES' => 'ကင်ညာ သျှီလင်',
+ 'KGS' => 'ကာဂျစ္စတန် ဆော်မ်',
'KHR' => 'ကမ္ဘောဒီးယား ရီးယဲ',
'KMF' => 'ကိုမိုရိုစ် ဖရန့်',
- 'KPW' => 'မြောက်ကိုးရီးယား ဝမ်',
- 'KRW' => 'တောင်ကိုးရီးယား ဝမ်',
- 'KWD' => 'ကူဝိတ်ဒီနာ',
+ 'KPW' => 'မြောက်ကိုရီးယား ဝမ်',
+ 'KRW' => 'တောင်ကိုရီးယား ဝမ်',
+ 'KWD' => 'ကူဝိတ် ဒီနာ',
'KYD' => 'ကေမန် ကျွန်းစု ဒေါ်လာ',
- 'KZT' => 'ခရူဂစ်စတန်ထိန်ဂျီ',
- 'LAK' => 'လာအိုခိပ်',
+ 'KZT' => 'ကာဇက်စတန် ထိန်ဂျီ',
+ 'LAK' => 'လာအို ကစ်',
'LBP' => 'လက်ဘနွန် ပေါင်',
'LKR' => 'သီရိလင်္ကာ ရူပီး',
- 'LRD' => 'လိုင်ဘေးရီးယား ဒေါ်လာ',
+ 'LRD' => 'လိုက်ဘေးရီးယား ဒေါ်လာ',
'LTL' => 'လစ်သူယေးနီးယားလီတားစ်',
'LVL' => 'လတ်ဗီးယားလတ်',
- 'LYD' => 'လီဗျာ ဒီနာ',
+ 'LYD' => 'လစ်ဗျား ဒိုင်နာ',
'MAD' => 'မိုရိုကို ဒရမ်',
- 'MDL' => 'မောလ်ဒိုဗာလယ်အို',
- 'MGA' => 'မလာဂစ်စီ အရီရရီ ငွေကြေး',
- 'MKD' => 'မာစီဒိုးနီးယားဒီနာ',
- 'MMK' => 'မြန်မာကျပ်',
- 'MNT' => 'မွန်ဂိုးလီးယားထူးဂရခ်',
- 'MOP' => 'မကာအိုပါတားကား',
- 'MRO' => 'မောရီတာနီအာအူဂီးယာ',
- 'MUR' => 'မော်ရေရှားစ် ရူပီ',
- 'MVR' => 'မော်လ်ဒိုက်ရူးဖီရာ',
- 'MWK' => 'မာလာဝီခွါးချာ',
- 'MXN' => 'မက္ကဆီကို ပီဆို',
+ 'MDL' => 'မောလ်ဒိုဗာ လယ်အို',
+ 'MGA' => 'မာလာဂါစီ အရီရရီ',
+ 'MKD' => 'မက်ဆီဒိုးနီးယား ဒီနာ',
+ 'MMK' => 'မြန်မာ ကျပ်',
+ 'MNT' => 'မွန်ဂိုးလီးယား ထူးဂရခ်',
+ 'MOP' => 'မကာအို ပါတားကား',
+ 'MRO' => 'မော်ရီတေးနီးယား အူဂီးယာ (၁၉၇၃–၂၀၁၇)',
+ 'MRU' => 'မော်ရီတေးနီးယန်း အူဂီးယာ',
+ 'MUR' => 'မောရစ်ရှ ရူပီး',
+ 'MVR' => 'မော်လ်ဒိုက် ရူးဖီရာ',
+ 'MWK' => 'မာလာဝီ ခွါးချာ',
+ 'MXN' => 'မက်ကဆီကို ပီဆို',
'MYR' => 'မလေးရှား ရင်းဂစ်',
- 'MZN' => 'မိုဇန်ဘစ်မက်တီခယ်လ်',
- 'NAD' => 'နမ်မီးဘီးယား ဒေါ်လာ',
- 'NGN' => 'နိုင်ဂျီးရီးယားနိုင်းရာ',
- 'NIO' => 'နီကာရာဂွာ ခိုးဒိုဘာ',
+ 'MZN' => 'မိုဇမ်ဘစ် မက်တီခယ်လ်',
+ 'NAD' => 'နမီးဘီးယား ဒေါ်လာ',
+ 'NGN' => 'နိုင်ဂျီးရီးယား နိုင်းရာ',
+ 'NIO' => 'နီကာရာဂွါ ခိုးဒိုဘာ',
'NOK' => 'နော်ဝေ ခရိုဏာ',
'NPR' => 'နီပေါ ရူပီး',
'NZD' => 'နယူးဇီလန် ဒေါ်လာ',
- 'OMR' => 'အိုမန်ရီအော်လ်',
- 'PAB' => 'ပနားမား ဘလ်ဘိုးအာ',
- 'PEN' => 'ပီရူး နူအီဗိုဆိုးလ်',
- 'PGK' => 'ပါပူရာနယူးဂီနီခီးနာ',
+ 'OMR' => 'အိုမန်နီ ရီရယ်',
+ 'PAB' => 'ပနားမား ဘလျဘိုးအာ',
+ 'PEN' => 'ပီရူး ဆိုးလ်',
+ 'PGK' => 'ပါပူအာ နယူးဂီနီ ခီးနာ',
'PHP' => 'ဖိလစ်ပိုင် ပီဆို',
'PKR' => 'ပါကစ္စတန် ရူပီး',
- 'PLN' => 'ပိုလန် ဇ‌လော့တီ',
- 'PYG' => 'ပါရာဂွေးဂွါးအ်နီး',
- 'QAR' => 'ကာတာရီအော်လ်',
- 'RON' => 'ရိုမေးနီယားလယ်အို',
- 'RSD' => 'ဆားဘီးယားဒယ်နား',
+ 'PLN' => 'ပိုလန် ဇလော့တီ',
+ 'PYG' => 'ပါရာဂွေး ဂွါးအ်နီး',
+ 'QAR' => 'ကာတာရီ ရီရယ်',
+ 'RON' => 'ရိုမေးနီးယား လယ်အို',
+ 'RSD' => 'ဆားဘီးယား ဒယ်နား',
'RUB' => 'ရုရှ ရူဘယ်',
'RUR' => 'ရုရှ ရူဘယ် (၁၉၉၁–၁၉၉၈)',
'RWF' => 'ရဝန်ဒါ ဖရန့်',
- 'SAR' => 'ဆော်ဒီအာရေးဗီးယားရီယော်လ်',
+ 'SAR' => 'ဆော်ဒီအာရေးဗီးယား ရီယော်လ်',
'SBD' => 'ဆော်လမွန်ကျွန်းစု ဒေါ်လာ',
- 'SCR' => 'ဆေးရှလ်ရူးပီး',
+ 'SCR' => 'ဆေးရှဲ ရူပီး',
'SDG' => 'ဆူဒန် ပေါင်',
'SDP' => 'ဆူဒန် ပေါင်အဟောင်း',
'SEK' => 'ဆွီဒင် ခရိုဏာ',
'SGD' => 'စင်္ကာပူ ဒေါ်လာ',
- 'SHP' => 'စိန့်ဟဲလီနာ ပေါင်',
- 'SLL' => 'ဆီအဲရာ လီအိုနီယန် လီအိုနီ',
- 'SOS' => 'ဆိုမာလီသျှီလင်',
- 'SRD' => 'ဆူရီနိမ်း ဒေါ်လာ',
- 'SSP' => 'တောင်ဆူဒန်ပေါင်',
- 'STD' => 'စိန့်တိုမီနှင့်ပရင်စီပ့် ဒိုဘရာ',
+ 'SHP' => 'စိန့်ဟယ်လယ်နာ ပေါင်',
+ 'SLL' => 'ဆီယာရာလီယွန်း လီအိုနီ',
+ 'SOS' => 'ဆိုမာလီ သျှီလင်',
+ 'SRD' => 'ဆူရီနမ်း ဒေါ်လာ',
+ 'SSP' => 'တောင်ဆူဒန် ပေါင်',
+ 'STD' => 'ဆောင်တူမေးနှင့် ပရင်စီပီ ဒိုဘရာ',
+ 'STN' => 'ဆောင်တူမေးနှင့် ပရင်စီပီ ဒိုဘရာ (၂၀၁၈)',
'SUR' => 'ဆိုဗီယက် ရူဗယ်',
'SYP' => 'ဆီးရီးယား ပေါင်',
- 'SZL' => 'စွာဇီလန်လီလန်းဂီနီ',
- 'THB' => 'ထိုင်းဘတ်',
- 'TJS' => 'တာဂျီကစ္စတန်ဆိုမိုနီ',
- 'TMT' => 'တာခ်မီန့စ်တန်မာနတ်',
- 'TND' => 'တူနီရှားဒီနာ',
- 'TOP' => 'တွန်ဂါဗန်ဂါ',
+ 'SZL' => 'ဆွာဇီလန် လီလန်းဂီနီ',
+ 'THB' => 'ထိုင်း ဘတ်',
+ 'TJS' => 'တာဂျစ်ကစ္စတန် ဆိုမိုနီ',
+ 'TMT' => 'တာ့ခ်မင်နစ္စတန် မာနတ်',
+ 'TND' => 'တူနီးရှား ဒိုင်နာ',
+ 'TOP' => 'တွန်ဂါ ဗန်ဂါ',
'TRL' => 'ရှေးဟောင်းတူရကီ လိုင်ရာ',
'TRY' => 'တူရကီ လိုင်ရာ',
- 'TTD' => 'ထရိုင်နီဒတ်နှင့်တိုဘာဂိုဒေါ်လာ',
+ 'TTD' => 'ထရီနီဒတ်နှင့် တိုဘက်ဂို ဒေါ်လာ',
'TWD' => 'ထိုင်ဝမ် ဒေါ်လာအသစ်',
- 'TZS' => 'တန်ဇန်းနီးယားသျှီလင်',
- 'UAH' => 'ယူကရိန်း',
- 'UGX' => 'ယူဂန္ဓာသျှီလင်',
+ 'TZS' => 'တန်ဇန်းနီးယား သျှီလင်',
+ 'UAH' => 'ယူကရိန်း ဟီရီဗင်းညား',
+ 'UGX' => 'ယူဂန္ဒာ သျှီလင်',
'USD' => 'အမေရိကန် ဒေါ်လာ',
'USN' => 'အမေရိကန် ဒေါ်လာ (နောက်နေ့)',
'USS' => 'အမေရိကန် ဒေါ်လာ (တနေ့တည်း)',
- 'UYU' => 'ဥရုဂွေးပီဆို',
- 'UZS' => 'ဥဘက်ကစ္စတန်ဆော်မ်',
- 'VEF' => 'ဗင်နီဇွဲလား ဘိုလီဗာ',
+ 'UYU' => 'ဥရုဂွေး ပီဆို',
+ 'UZS' => 'ဥဇဘက်ကစ္စတန် ဆော်မ်',
+ 'VEF' => 'ဗင်နီဇွဲလား ဘိုလီဗာ (၂၀၀၈–၂၀၁၈)',
+ 'VES' => 'ဗင်နီဇွဲလန်း ဘိုလီဗာ',
'VND' => 'ဗီယက်နမ် ဒေါင်',
- 'VUV' => 'ဗာနုအာတူဗားထူ',
- 'WST' => 'စမိုအထားလာ',
- 'XAF' => 'ကင်မရွန်းဖရန့်',
+ 'VUV' => 'ဗနွားတူ ဗားထူ',
+ 'WST' => 'ဆမိုအား ထားလာ',
+ 'XAF' => 'ကင်မရွန်း ဖရန့်',
'XAG' => 'ငွေ',
'XAU' => 'ရွှေ',
'XBB' => 'ဥရောပငွေကြေးစံနစ်',
- 'XCD' => 'အရှေ့ကာရီဘီယံဒေါ်လာ',
+ 'XCD' => 'အရှေ့ကာရစ်ဘီယံ ဒေါ်လာ',
'XDR' => 'အထူးထုတ်ယူခွင့်',
- 'XOF' => 'အိုင်ဗရီးကိုးစ်ဖရန့်',
- 'XPF' => 'XPFဖရန့်',
+ 'XOF' => 'အနောက် အာဖရိက CFA ဖရန့်',
+ 'XPF' => 'CFP ဖရန့်',
'XPT' => 'ပလက်တီနမ်',
'XTS' => 'စမ်းသပ် ငွေကြေး ကုဒ်',
'XXX' => 'မသိသို့မဟုတ်မရှိသောငွေကြေး',
- 'YER' => 'ယီမင်ရီအော်လ်',
- 'ZAR' => 'တောင်အဖရိက ရန်း',
- 'ZMW' => 'ဇင်ဘာဘွေခွါးချာ',
+ 'YER' => 'ယီမင်နီ ရီရယ်',
+ 'ZAR' => 'တောင်အာဖရိက ရန်း',
+ 'ZMW' => 'ဇင်ဘာဘွေ ခွါးချာ',
'ZWD' => 'ဇင်ဘာဘွေ ဒေါ်လာ',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'NAf',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
'AUD' => 'A$',
+ 'AWG' => 'Afl',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
'BRL' => 'R$',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYN' => 'BYN',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
'CAD' => 'CA$',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNH' => 'CNH',
'CNY' => 'CN¥',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
'EUR' => '€',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
'GBP' => '£',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'G',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
'ILS' => '₪',
'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
'JPY' => 'JP¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
'MMK' => 'K',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
'MXN' => 'MX$',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
'NZD' => 'NZ$',
+ 'OMR' => 'OMR',
+ 'PAB' => 'B/.',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'STN' => 'Db',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
'THB' => '฿',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TT$',
'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
'USD' => 'US$',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
'VND' => '₫',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
'XAF' => 'FCFA',
'XCD' => 'EC$',
'XOF' => 'CFA',
'XPF' => 'CFPF',
-);
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+];
-$countryNames = array(
- 'AC' => 'အက်စ်စင်ရှီအွန်ကျွန်း',
+$countryNames = [
+ 'AC' => 'အဆန်းရှင်းကျွန်း',
'AD' => 'အန်ဒိုရာ',
'AE' => 'ယူအေအီး',
'AF' => 'အာဖဂန်နစ္စတန်',
- 'AG' => 'အန်တီဂုအာနှင့်ဘာဘုဒါ',
- 'AI' => 'အန်ဂွီလာ',
- 'AL' => 'အဲလ်ဘာနီအာ',
- 'AM' => 'အာမေနီးယား',
- 'AO' => 'အင်ဂိုလာ',
- 'AQ' => 'အန္တာတိက',
+ 'AG' => 'အန်တီဂွါနှင့် ဘာဘူဒါ',
+ 'AI' => 'အန်ဂီလာ',
+ 'AL' => 'အယ်လ်ဘေးနီးယား',
+ 'AM' => 'အာမေးနီးယား',
+ 'AO' => 'အန်ဂိုလာ',
+ 'AQ' => 'အန်တာတိက',
'AR' => 'အာဂျင်တီးနား',
- 'AS' => 'အမေရိကန် စမိုအ',
+ 'AS' => 'အမေရိကန် ဆမိုးအား',
'AT' => 'ဩစတြီးယား',
'AU' => 'ဩစတြေးလျ',
- 'AW' => 'အာရုဘာ',
+ 'AW' => 'အာရူးဗား',
'AX' => 'အာလန်ကျွန်း',
'AZ' => 'အဇာဘိုင်ဂျန်',
- 'BA' => 'ဘော့စနီးယား နှင့် ဟာဇီဂိုဘီးနား',
- 'BB' => 'ဘာဘဒိုးစ်',
+ 'BA' => 'ဘော့စနီးယားနှင့် ဟာဇီဂိုဗီနား',
+ 'BB' => 'ဘာဘေးဒိုးစ်',
'BD' => 'ဘင်္ဂလားဒေ့ရှ်',
'BE' => 'ဘယ်လ်ဂျီယမ်',
- 'BF' => 'ဘာကီနာ ဖာဆို',
- 'BG' => 'ဘူဂေးရီးယား',
+ 'BF' => 'ဘာကီးနား ဖားဆို',
+ 'BG' => 'ဘူလ်ဂေးရီးယား',
'BH' => 'ဘာရိန်း',
'BI' => 'ဘူရွန်ဒီ',
'BJ' => 'ဘီနင်',
- 'BL' => 'စိန့်ဘာသီလီမိုင်',
- 'BM' => 'ဘာမူဒါ',
+ 'BL' => 'စိန့်ဘာသယ်လ်မီ',
+ 'BM' => 'ဘာမြူဒါ',
'BN' => 'ဘရူနိုင်း',
- 'BO' => 'ဘိုလီးဘီးယား',
- 'BQ' => 'ကာရီဘီယံနယ်သာလန်',
+ 'BO' => 'ဘိုလီးဗီးယား',
+ 'BQ' => 'ကာရစ်ဘီယံ နယ်သာလန်',
'BR' => 'ဘရာဇီး',
'BS' => 'ဘဟားမား',
'BT' => 'ဘူတန်',
'BV' => 'ဘူဗက်ကျွန်း',
- 'BW' => 'ဘော့စ်ဝါနာ',
+ 'BW' => 'ဘော့ဆွာနာ',
'BY' => 'ဘီလာရုစ်',
- 'BZ' => 'ဘေလီဇ်',
+ 'BZ' => 'ဘလိဇ်',
'CA' => 'ကနေဒါ',
- 'CC' => 'ကိုကိုး ကျွန်းစု',
- 'CD' => 'ကွန်ဂို-ကင်ရှာစ',
- 'CF' => 'အလယ်ပိုင်း အာဖရိက ပြည်ထောင်စု',
- 'CG' => 'ကွန်ဂို-ဘရာဇာဗီလ်',
- 'CH' => 'ဆွစ်ဇလန်',
- 'CI' => 'အိုင်ဗရီကိုစ့်',
+ 'CC' => 'ကိုကိုးကျွန်း',
+ 'CD' => 'ကွန်ဂို',
+ 'CF' => 'ဗဟို အာဖရိက ပြည်ထောင်စု',
+ 'CG' => 'ကွန်ဂို-ဘရာဇာဗီးလ်',
+ 'CH' => 'ဆွစ်ဇာလန်',
+ 'CI' => 'ကို့တ် ဒီဗွာ',
'CK' => 'ကွတ် ကျွန်းစု',
'CL' => 'ချီလီ',
'CM' => 'ကင်မရွန်း',
'CN' => 'တရုတ်',
'CO' => 'ကိုလံဘီယာ',
'CP' => 'ကလစ်ပါတန်ကျွန်း',
- 'CR' => 'ကော့စ်တာရီကာ',
+ 'CR' => 'ကို့စ်တာရီကာ',
'CU' => 'ကျူးဘား',
- 'CV' => 'ခေ့ပ်ဗာဒူ',
- 'CW' => 'ခူရာကာအို',
+ 'CV' => 'ကိတ်ဗာဒီ',
+ 'CW' => 'ကျူရေးကိုးစ်',
'CX' => 'ခရစ်စမတ် ကျွန်း',
- 'CY' => 'ဆိုက်ပရက်စ်',
- 'CZ' => 'ချက် ပြည်ထောင်စု',
- 'DE' => 'ဂျာမဏီ',
- 'DG' => 'ဒီအေဂိုဂရာစီအာ',
+ 'CY' => 'ဆိုက်ပရပ်စ်',
+ 'CZ' => 'ချက်ကီယား',
+ 'DE' => 'ဂျာမနီ',
+ 'DG' => 'ဒီအဲဂိုဂါစီရာ',
'DJ' => 'ဂျီဘူတီ',
'DK' => 'ဒိန်းမတ်',
'DM' => 'ဒိုမီနီကာ',
@@ -533,49 +831,50 @@ $countryNames = array(
'EC' => 'အီကွေဒေါ',
'EE' => 'အက်စတိုးနီးယား',
'EG' => 'အီဂျစ်',
- 'EH' => 'အနောက်ပိုင်း ဆာဟာရ',
- 'ER' => 'အီရီတရီအာ',
+ 'EH' => 'အနောက် ဆာဟာရ',
+ 'ER' => 'အီရီထရီးယား',
'ES' => 'စပိန်',
'ET' => 'အီသီယိုးပီးယား',
'EU' => 'ဥရောပသမဂ္ဂ',
+ 'EZ' => 'ဥရောပဒေသ',
'FI' => 'ဖင်လန်',
'FJ' => 'ဖီဂျီ',
- 'FK' => 'ဖောက်ကလန် ကျွန်းစု',
+ 'FK' => 'ဖော့ကလန် ကျွန်းစု',
'FM' => 'မိုင်ခရိုနီရှား',
'FO' => 'ဖာရိုး ကျွန်းစုများ',
'FR' => 'ပြင်သစ်',
'GA' => 'ဂါဘွန်',
'GB' => 'ယူကေ',
- 'GD' => 'ဂရီနာဒါ',
+ 'GD' => 'ဂရီနေဒါ',
'GE' => 'ဂျော်ဂျီယာ',
'GF' => 'ပြင်သစ် ဂီယာနာ',
'GG' => 'ဂွန်းဇီ',
'GH' => 'ဂါနာ',
'GI' => 'ဂျီဘရော်လ်တာ',
'GL' => 'ဂရင်းလန်း',
- 'GM' => 'ဂန်ဘီရာ',
- 'GN' => 'ဂီးနီ',
- 'GP' => 'ဂူအာဒီလုပ်',
- 'GQ' => 'အီကွေတာ ဂီရာနာ',
+ 'GM' => 'ဂမ်ဘီရာ',
+ 'GN' => 'ဂီနီ',
+ 'GP' => 'ဂွါဒီလု',
+ 'GQ' => 'အီကွေတာ ဂီနီ',
'GR' => 'ဂရိ',
'GS' => 'တောင် ဂျော်ဂျီယာ နှင့် တောင် ဆင်းဒဝစ်ဂျ် ကျွန်းစုများ',
- 'GT' => 'ဂွာတီမာလာ',
+ 'GT' => 'ဂွါတီမာလာ',
'GU' => 'ဂူအမ်',
- 'GW' => 'ဂီရာနာ-ဘီစ်စာဥ',
- 'GY' => 'ဂူရာနာ',
+ 'GW' => 'ဂီနီ-ဘီစော',
+ 'GY' => 'ဂိုင်ယာနာ',
'HK' => 'ဟောင်ကောင်',
'HM' => 'ဟတ်ကျွန်းနှင့်မက်ဒေါနယ်ကျွန်းစု',
'HN' => 'ဟွန်ဒူးရပ်စ်',
'HR' => 'ခရိုအေးရှား',
'HT' => 'ဟေတီ',
'HU' => 'ဟန်ဂေရီ',
- 'IC' => 'ကာနာရီကျွန်းစု',
+ 'IC' => 'ကနေရီ ကျွန်းစု',
'ID' => 'အင်ဒိုနီးရှား',
'IE' => 'အိုင်ယာလန်',
'IL' => 'အစ္စရေး',
'IM' => 'မန်ကျွန်း',
'IN' => 'အိန္ဒိယ',
- 'IO' => 'ဗြိတိသျှ အိန္ဒြိယ သမုဒ္ဒရာ ပိုင်နက်',
+ 'IO' => 'ဗြိတိသျှပိုင် အိန္ဒိယသမုဒ္ဒရာကျွန်းများ',
'IQ' => 'အီရတ်',
'IR' => 'အီရန်',
'IS' => 'အိုက်စလန်',
@@ -585,7 +884,7 @@ $countryNames = array(
'JO' => 'ဂျော်ဒန်',
'JP' => 'ဂျပန်',
'KE' => 'ကင်ညာ',
- 'KG' => 'ခရူဂစ်စတန်',
+ 'KG' => 'ကာဂျစ္စတန်',
'KH' => 'ကမ္ဘောဒီးယား',
'KI' => 'ခီရီဘာတီ',
'KM' => 'ကိုမိုရိုစ်',
@@ -597,162 +896,234 @@ $countryNames = array(
'KZ' => 'ကာဇက်စတန်',
'LA' => 'လာအို',
'LB' => 'လက်ဘနွန်',
- 'LC' => 'စိန့်လူစီအာ',
- 'LI' => 'လစ်ခ်ထင်စတိုင်',
+ 'LC' => 'စိန့်လူစီယာ',
+ 'LI' => 'လစ်တန်စတိန်း',
'LK' => 'သီရိလင်္ကာ',
- 'LR' => 'လိုင်ဘေးရီးယား',
+ 'LR' => 'လိုက်ဘေးရီးယား',
'LS' => 'လီဆိုသို',
'LT' => 'လစ်သူယေးနီးယား',
'LU' => 'လူဇင်ဘတ်',
'LV' => 'လတ်ဗီးယား',
- 'LY' => 'လီဗရာ',
+ 'LY' => 'လစ်ဗျား',
'MA' => 'မော်ရိုကို',
'MC' => 'မိုနာကို',
'MD' => 'မောလ်ဒိုဗာ',
'ME' => 'မွန်တီနိဂရိုး',
'MF' => 'စိန့်မာတင်',
- 'MG' => 'မာဒါဂတ်စကာ',
+ 'MG' => 'မဒါဂတ်စကား',
'MH' => 'မာရှယ် ကျွန်းစု',
- 'MK' => 'မာစီဒိုးနီးယား',
+ 'MK' => 'မက်ဆီဒိုးနီးယား',
'ML' => 'မာလီ',
'MM' => 'မြန်မာ',
'MN' => 'မွန်ဂိုးလီးယား',
'MO' => 'မကာအို',
- 'MP' => 'တောင်ပိုင်းမာရီအာနာကျွန်းစု',
- 'MQ' => 'မာတီနီကီ',
- 'MR' => 'မောရီတာနီအာ',
+ 'MP' => 'မြောက်ပိုင်းမာရီအာနာကျွန်းစု',
+ 'MQ' => 'မာတီနိခ်',
+ 'MR' => 'မော်ရီတေးနီးယား',
'MS' => 'မောင့်စဲရက်',
'MT' => 'မောလ်တာ',
- 'MU' => 'မော်ရေရှားစ်',
+ 'MU' => 'မောရစ်ရှ',
'MV' => 'မော်လ်ဒိုက်',
'MW' => 'မာလာဝီ',
- 'MX' => 'မက္ကဆီကို',
+ 'MX' => 'မက်ကဆီကို',
'MY' => 'မလေးရှား',
- 'MZ' => 'မိုဇန်ဘစ်',
- 'NA' => 'နမ်မီးဘီးယား',
+ 'MZ' => 'မိုဇမ်ဘစ်',
+ 'NA' => 'နမီးဘီးယား',
'NC' => 'နယူး ကယ်လီဒိုနီးယား',
'NE' => 'နိုင်ဂျာ',
- 'NF' => 'နောဖော့ခ်ကျွန်း',
+ 'NF' => 'နောဖုတ်ကျွန်း',
'NG' => 'နိုင်ဂျီးရီးယား',
- 'NI' => 'နီကာရာဂွာ',
+ 'NI' => 'နီကာရာဂွါ',
'NL' => 'နယ်သာလန်',
'NO' => 'နော်ဝေ',
'NP' => 'နီပေါ',
- 'NR' => 'နာဥူရူ',
+ 'NR' => 'နော်ရူး',
'NU' => 'နီဥူအေ',
'NZ' => 'နယူးဇီလန်',
'OM' => 'အိုမန်',
'PA' => 'ပနားမား',
'PE' => 'ပီရူး',
- 'PF' => 'ပြင်သစ် ပေါ်လီနေးရှား',
- 'PG' => 'ပါပူရာနယူးဂီနီ',
+ 'PF' => 'ပြင်သစ် ပေါ်လီနီးရှား',
+ 'PG' => 'ပါပူအာ နယူးဂီနီ',
'PH' => 'ဖိလစ်ပိုင်',
'PK' => 'ပါကစ္စတန်',
'PL' => 'ပိုလန်',
- 'PM' => 'စိန့်ပီအဲရီနှင့်မီကွီလွန်',
+ 'PM' => 'စိန့်ပီအဲရ်နှင့် မီကွီလွန်',
'PN' => 'ပစ်တ်ကိန်းကျွန်းစု',
- 'PR' => 'ပေါ်တူရီကို',
+ 'PR' => 'ပေါ်တိုရီကို',
'PS' => 'ပါလက်စတိုင်း',
'PT' => 'ပေါ်တူဂီ',
- 'PW' => 'ပလောင်',
+ 'PW' => 'ပလာအို',
'PY' => 'ပါရာဂွေး',
'QA' => 'ကာတာ',
- 'QO' => 'သမုဒ္ဒရာဒေသအပြင်ထွက်နေသောဒေသများ',
- 'RE' => 'ရဲအူနီရွန်',
+ 'QO' => 'သမုဒ္ဒရာ အပြင်ဘက်ရှိ ကျွန်းနိုင်ငံများ',
+ 'RE' => 'ရီယူနီယန်',
'RO' => 'ရိုမေးနီးယား',
'RS' => 'ဆားဘီးယား',
- 'RU' => 'ရုရှ',
+ 'RU' => 'ရုရှား',
'RW' => 'ရဝန်ဒါ',
- 'SA' => 'ဆော်ဒီအာရေးဗီးယား',
+ 'SA' => 'ဆော်ဒီအာရေးဘီးယား',
'SB' => 'ဆော်လမွန်ကျွန်းစု',
- 'SC' => 'ဆေးရှလ်',
+ 'SC' => 'ဆေးရှဲ',
'SD' => 'ဆူဒန်',
'SE' => 'ဆွီဒင်',
'SG' => 'စင်္ကာပူ',
- 'SH' => 'စိန့်ဟဲလီနာ',
- 'SI' => 'စလိုဗေးနီးယား',
+ 'SH' => 'စိန့်ဟယ်လယ်နာ',
+ 'SI' => 'ဆလိုဗေးနီးယား',
'SJ' => 'စဗိုလ်ဘတ်နှင့်ဂျန်မေရန်',
- 'SK' => 'စလိုဗေးကီးယား',
- 'SL' => 'ဆီအဲရာ လီအိုနီ',
- 'SM' => 'ဆော့န်မာရီနို',
+ 'SK' => 'ဆလိုဗက်ကီးယား',
+ 'SL' => 'ဆီယာရာ လီယွန်း',
+ 'SM' => 'ဆန်မာရီနို',
'SN' => 'ဆီနီဂေါ',
'SO' => 'ဆိုမာလီယာ',
- 'SR' => 'ဆူရီနိမ်း',
- 'SS' => 'မြောက်ဆူဒန်',
- 'ST' => 'စိန့်တိုမီနှင့်ပရင်စီပ့်',
+ 'SR' => 'ဆူရာနမ်',
+ 'SS' => 'တောင် ဆူဒန်',
+ 'ST' => 'ဆောင်တူမေးနှင့် ပရင်စီပီ',
'SV' => 'အယ်လ်ဆာဗေးဒိုး',
- 'SX' => 'ဆင့်မာအာတင်',
+ 'SX' => 'စင့်မာတင်',
'SY' => 'ဆီးရီးယား',
- 'SZ' => 'စွာဇီလန်',
- 'TA' => 'ထရစ်တန်ဒါကွန်ဟာ',
+ 'SZ' => 'ဆွာဇီလန်',
+ 'TA' => 'ထရစ္စတန် ဒါ ကွန်ဟာ',
'TC' => 'တခ်စ်နှင့်ကာအီကိုစ်ကျွန်းစု',
'TD' => 'ချဒ်',
'TF' => 'ပြင်သစ် တောင်ပိုင်း ပိုင်နက်များ',
'TG' => 'တိုဂို',
'TH' => 'ထိုင်း',
'TJ' => 'တာဂျီကစ္စတန်',
- 'TK' => 'ထိုးခါလူ',
+ 'TK' => 'တိုကလောင်',
'TL' => 'အရှေ့တီမော',
- 'TM' => 'တာခ်မီန့စ်တန်',
+ 'TM' => 'တာ့ခ်မင်နစ္စတန်',
'TN' => 'တူနီးရှား',
'TO' => 'တွန်ဂါ',
'TR' => 'တူရကီ',
- 'TT' => 'ထရိုင်နီဒတ်နှင့်တိုဘာဂို',
- 'TV' => 'ထူးဗလူ',
+ 'TT' => 'ထရီနီဒတ်နှင့် တိုဘက်ဂို',
+ 'TV' => 'တူဗားလူ',
'TW' => 'ထိုင်ဝမ်',
'TZ' => 'တန်ဇန်းနီးယား',
'UA' => 'ယူကရိန်း',
- 'UG' => 'ယူဂန္ဓာ',
- 'UM' => 'ယူနိုက်တက်စတိတ် အပြင်ထွက် နေသည့် သေးငယ်သောကျွန်းများ',
+ 'UG' => 'ယူဂန်းဒါး',
+ 'UM' => 'ယူနိုက်တက်စတိတ် ကျွန်းနိုင်ငံများ',
+ 'UN' => 'ကုလသမဂ္ဂ',
'US' => 'ယူအက်စ်',
'UY' => 'ဥရုဂွေး',
- 'UZ' => 'ဥဘက်ကစ္စတန်',
- 'VA' => 'ဗာတီကန်စီတီး',
- 'VC' => 'စိန့်ဗင့်ဆင့်နှင့် သည်ဂရဲနာဒင်းစ်',
+ 'UZ' => 'ဥဇဘက်ကစ္စတန်',
+ 'VA' => 'ဗာတီကန်စီးတီး',
+ 'VC' => 'စိန့်ဗင်းဆင့်နှင့် ဂရိနေဒိုင်',
'VE' => 'ဗင်နီဇွဲလား',
'VG' => 'ဗြိတိသျှ ဗာဂျင်း ကျွန်းစု',
'VI' => 'ယူအက်စ် ဗာဂျင်း ကျွန်းစု',
'VN' => 'ဗီယက်နမ်',
- 'VU' => 'ဗာနုအာတူ',
- 'WF' => 'ဝေါလစ်နှင့်ဖူထူးနား',
- 'WS' => 'ဆာမိုအာ',
+ 'VU' => 'ဗနွားတူ',
+ 'WF' => 'ဝေါလစ်နှင့် ဖူကျူးနား',
+ 'WS' => 'ဆမိုးအား',
'XK' => 'ကိုဆိုဗို',
'YE' => 'ယီမင်',
- 'YT' => 'မေအိုတီ',
+ 'YT' => 'မေယော့',
'ZA' => 'တောင်အာဖရိက',
'ZM' => 'ဇမ်ဘီယာ',
'ZW' => 'ဇင်ဘာဘွေ',
-);
+];
-$timeUnits = array(
- 'day-future-other' => '{0}ရက်အတွင်း',
- 'day-other' => '{0}ရက်',
- 'day-past-other' => 'လွန်ခဲ့သော{0}ရက်',
- 'hour-future-other' => '{0}နာရီအတွင်း',
- 'hour-other' => '{0}နာရီ',
- 'hour-past-other' => 'လွန်ခဲ့သော{0}နာရီ',
- 'microsecond-other' => '{0}မိုက်ခရိုစက္ကန့်',
- 'millisecond-other' => '{0}မီလီစက္ကန့်',
- 'minute-future-other' => '{0}မိနစ်အတွင်း',
+$timeUnits = [
+ 'century-other' => '{0} ရာစုနှစ်',
+ 'day-future-other' => '{0} ရက်အတွင်း',
+ 'day-narrow-future-other' => '{0} ရက်အတွင်း',
+ 'day-narrow-past-other' => 'ပြီးခဲ့သည့် {0} ရက်',
+ 'day-other' => '{0} ရက်',
+ 'day-past-other' => 'ပြီးခဲ့သည့် {0} ရက်',
+ 'day-short-future-other' => '{0} ရက်အတွင်း',
+ 'day-short-past-other' => 'ပြီးခဲ့သည့် {0} ရက်',
+ 'fri-future-other' => 'သောကြာ {0} ပတ်အတွင်း',
+ 'fri-narrow-future-other' => 'သောကြာ {0} ပတ်အတွင်း',
+ 'fri-narrow-past-other' => 'ပြီးခဲ့သည့် သောကြာ {0} ပတ်အတွင်း',
+ 'fri-past-other' => 'ပြီးခဲ့သည့် သောကြာ {0} ပတ်အတွင်း',
+ 'fri-short-future-other' => 'သောကြာ {0} ပတ်အတွင်း',
+ 'fri-short-past-other' => 'ပြီးခဲ့သည့် သောကြာ {0} ပတ်အတွင်း',
+ 'hour-future-other' => '{0} နာရီအတွင်း',
+ 'hour-narrow-future-other' => '{0} နာရီအတွင်း',
+ 'hour-narrow-past-other' => 'ပြီးခဲ့သည့် {0} နာရီ',
+ 'hour-other' => '{0} နာရီ',
+ 'hour-past-other' => 'ပြီးခဲ့သည့် {0} နာရီ',
+ 'hour-short-future-other' => '{0} နာရီအတွင်း',
+ 'hour-short-past-other' => 'ပြီးခဲ့သည့် {0} နာရီ',
+ 'microsecond-other' => '{0} မိုက်ခရိုစက္ကန့်',
+ 'millisecond-other' => '{0} မီလီစက္ကန့်',
+ 'minute-future-other' => '{0} မိနစ်အတွင်း',
+ 'minute-narrow-future-other' => '{0} မိနစ်အတွင်း',
+ 'minute-narrow-past-other' => 'ပြီးခဲ့သည့် {0} မိနစ်',
'minute-other' => '{0} မိနစ်',
- 'minute-past-other' => 'လွန်ခဲ့သော{0}မိနစ်',
- 'month-future-other' => '{0}လအတွင်း',
- 'month-other' => '{0}လ',
- 'month-past-other' => 'လွန်ခဲ့သော{0}လ',
+ 'minute-past-other' => 'ပြီးခဲ့သည့် {0} မိနစ်',
+ 'minute-short-future-other' => '{0} မိနစ်အတွင်း',
+ 'minute-short-past-other' => 'ပြီးခဲ့သည့် {0} မိနစ်',
+ 'mon-future-other' => 'တနင်္လာ {0} ပတ်အတွင်း',
+ 'mon-narrow-future-other' => 'တနင်္လာ {0} ပတ်အတွင်း',
+ 'mon-narrow-past-other' => 'ပြီးခဲ့သည့် တနင်္လာ {0} ပတ်',
+ 'mon-past-other' => 'ပြီးခဲ့သည့် တနင်္လာ {0} ပတ်',
+ 'mon-short-future-other' => 'တနင်္လာ {0} ပတ်အတွင်း',
+ 'mon-short-past-other' => 'ပြီးခဲ့သည့် တနင်္လာ {0} ပတ်',
+ 'month-future-other' => '{0} လအတွင်း',
+ 'month-narrow-future-other' => '{0} လအတွင်း',
+ 'month-narrow-past-other' => 'ပြီးခဲ့သည့် {0} လ',
+ 'month-other' => '{0} လ',
+ 'month-past-other' => 'ပြီးခဲ့သည့် {0} လ',
+ 'month-short-future-other' => '{0} လအတွင်း',
+ 'month-short-past-other' => 'ပြီးခဲ့သည့် {0} လ',
'nanosecond-other' => '{0} နာနိုစက္ကန့်',
- 'quarter-future-other' => 'သုံးလပတ်{0}ခု အတွင်း',
- 'quarter-narrow-future-other' => 'သုံးလပတ်{0}ခု အတွင်း',
- 'quarter-narrow-past-other' => 'လွန်ခဲ့သော သုံးလပတ်{0}ခု',
- 'quarter-past-other' => 'လွန်ခဲ့သော သုံးလပတ်{0}ခု',
- 'quarter-short-future-other' => 'သုံးလပတ်{0}ခု အတွင်း',
- 'quarter-short-past-other' => 'လွန်ခဲ့သော သုံးလပတ်{0}ခု',
- 'second-future-other' => '{0}စက္ကန့်အတွင်း',
+ 'quarter-future-other' => 'သုံးလပတ်ကာလ {0} အတွင်း',
+ 'quarter-narrow-future-other' => 'သုံးလပတ်ကာလ {0} ခုအတွင်း',
+ 'quarter-narrow-past-other' => 'ပြီးခဲ့သည့် သုံးလပတ်ကာလ {0} ခုအတွင်း',
+ 'quarter-past-other' => 'ပြီးခဲ့သည့် သုံးလပတ်ကာလ {0} ခုအတွင်း',
+ 'quarter-short-future-other' => 'သုံးလပတ်ကာလ {0} ခုအတွင်း',
+ 'quarter-short-past-other' => 'ပြီးခဲ့သည့် သုံးလပတ်ကာလ {0} ခုအတွင်း',
+ 'sat-future-other' => 'စနေ {0} ပတ်အတွင်း',
+ 'sat-narrow-future-other' => 'စနေ {0} ပတ်အတွင်း',
+ 'sat-narrow-past-other' => 'ပြီးခဲ့သည့် စနေ {0} ပတ်အတွင်း',
+ 'sat-past-other' => 'ပြီးခဲ့သည့် စနေ {0} ပတ်အတွင်း',
+ 'sat-short-future-other' => 'စနေ {0} ပတ်အတွင်း',
+ 'sat-short-past-other' => 'ပြီးခဲ့သည့် စနေ {0} ပတ်အတွင်း',
+ 'second-future-other' => '{0} စက္ကန့်အတွင်း',
+ 'second-narrow-future-other' => '{0} စက္ကန့်အတွင်း',
+ 'second-narrow-past-other' => 'ပြီးခဲ့သည့် {0} စက္ကန့်',
'second-other' => '{0} စက္ကန့်',
- 'second-past-other' => 'လွန်ခဲ့သော{0}စက္ကန့်',
- 'week-future-other' => '{0}ပတ်အတွင်း',
- 'week-other' => '{0}ပတ်',
- 'week-past-other' => 'လွန်ခဲ့သော{0}ပတ်',
- 'year-future-other' => '{0}နှစ်အတွင်း',
- 'year-other' => '{0}နှစ်',
- 'year-past-other' => 'လွန်ခဲ့သော{0}နှစ်',
-);
+ 'second-past-other' => 'ပြီးခဲ့သည့် {0} စက္ကန့်',
+ 'second-short-future-other' => '{0} စက္ကန့်အတွင်း',
+ 'second-short-past-other' => 'ပြီးခဲ့သည့် {0} စက္ကန့်',
+ 'sun-future-other' => 'တနင်္ဂနွေ {0} ပတ်အတွင်း',
+ 'sun-narrow-future-other' => 'တနင်္ဂနွေ {0} ပတ်အတွင်း',
+ 'sun-narrow-past-other' => 'ပြီးခဲ့သည့် တနင်္ဂနွေ {0} ပတ်',
+ 'sun-past-other' => 'ပြီးခဲ့သည့် တနင်္ဂနွေ {0} ပတ်',
+ 'sun-short-future-other' => 'တနင်္ဂနွေ {0} ပတ်အတွင်း',
+ 'sun-short-past-other' => 'ပြီးခဲ့သည့် တနင်္ဂနွေ {0} ပတ်',
+ 'thu-future-other' => 'ကြာသပတေး {0} ပတ်အတွင်း',
+ 'thu-narrow-future-other' => 'ကြာသပတေး {0} ပတ်အတွင်း',
+ 'thu-narrow-past-other' => 'ပြီးခဲ့သည့် ကြာသပတေး {0} ပတ်',
+ 'thu-past-other' => 'ပြီးခဲ့သည့် ကြာသပတေး {0} ပတ်',
+ 'thu-short-future-other' => 'ကြာသပတေး {0} ပတ်အတွင်း',
+ 'thu-short-past-other' => 'ပြီးခဲ့သည့် ကြာသပတေး {0} ပတ်',
+ 'tue-future-other' => 'အင်္ဂါ {0} ပတ်အတွင်း',
+ 'tue-narrow-future-other' => 'အင်္ဂါ {0} ပတ်အတွင်း',
+ 'tue-narrow-past-other' => 'ပြီးခဲ့သည့် အင်္ဂါ {0} ပတ်',
+ 'tue-past-other' => 'ပြီးခဲ့သည့် အင်္ဂါ {0} ပတ်',
+ 'tue-short-future-other' => 'အင်္ဂါ {0} ပတ်အတွင်း',
+ 'tue-short-past-other' => 'ပြီးခဲ့သည့် အင်္ဂါ {0} ပတ်',
+ 'wed-future-other' => 'ဗုဒ္ဓဟူး {0} ပတ်အတွင်း',
+ 'wed-narrow-future-other' => 'ဗုဒ္ဓဟူး {0} ပတ်အတွင်း',
+ 'wed-narrow-past-other' => 'ပြီးခဲ့သည့် ဗုဒ္ဓဟူး {0} ပတ်',
+ 'wed-past-other' => 'ပြီးခဲ့သည့် ဗုဒ္ဓဟူး {0} ပတ်',
+ 'wed-short-future-other' => 'ဗုဒ္ဓဟူး {0} ပတ်အတွင်း',
+ 'wed-short-past-other' => 'ပြီးခဲ့သည့် ဗုဒ္ဓဟူး {0} ပတ်',
+ 'week-future-other' => '{0} ပတ်အတွင်း',
+ 'week-narrow-future-other' => '{0} ပတ်အတွင်း',
+ 'week-narrow-past-other' => 'ပြီးခဲ့သည့် {0} ပတ်',
+ 'week-other' => '{0} ပတ်',
+ 'week-past-other' => 'ပြီးခဲ့သည့် {0} ပတ်',
+ 'week-short-future-other' => '{0} ပတ်အတွင်း',
+ 'week-short-past-other' => 'ပြီးခဲ့သည့် {0} ပတ်',
+ 'year-future-other' => '{0} နှစ်အတွင်း',
+ 'year-narrow-future-other' => '{0} နှစ်အတွင်း',
+ 'year-narrow-past-other' => 'ပြီးခဲ့သည့် {0} နှစ်',
+ 'year-other' => '{0} နှစ်',
+ 'year-past-other' => 'ပြီးခဲ့သည့် {0} နှစ်',
+ 'year-short-future-other' => '{0} နှစ်အတွင်း',
+ 'year-short-past-other' => 'ပြီးခဲ့သည့် {0} နှစ်',
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesNb.php b/MLEB/cldr/CldrNames/CldrNamesNb.php
index b93fbf6d..0e86dee6 100644
--- a/MLEB/cldr/CldrNames/CldrNamesNb.php
+++ b/MLEB/cldr/CldrNames/CldrNamesNb.php
@@ -1,65 +1,84 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'afar',
'ab' => 'abkhasisk',
'ace' => 'achinesisk',
'ach' => 'acoli',
'ada' => 'adangme',
- 'ady' => 'adyghe',
+ 'ady' => 'adygeisk',
'ae' => 'avestisk',
+ 'aeb' => 'tunisisk-arabisk',
'af' => 'afrikaans',
'afh' => 'afrihili',
'agq' => 'aghem',
'ain' => 'ainu',
'ak' => 'akan',
'akk' => 'akkadisk',
+ 'akz' => 'alabama',
'ale' => 'aleutisk',
+ 'aln' => 'gegisk-albansk',
'alt' => 'søraltaisk',
'am' => 'amharisk',
'an' => 'aragonsk',
'ang' => 'gammelengelsk',
'anp' => 'angika',
'ar' => 'arabisk',
- 'ar-001' => 'moderne standard arabisk',
+ 'ar-001' => 'moderne standardarabisk',
'arc' => 'arameisk',
- 'arn' => 'araukansk',
+ 'arn' => 'mapudungun',
+ 'aro' => 'araona',
'arp' => 'arapaho',
+ 'arq' => 'algerisk arabisk',
+ 'ars' => 'najdi-arabisk',
'arw' => 'arawak',
- 'as' => 'assamisk',
+ 'ary' => 'marokkansk-arabisk',
+ 'arz' => 'egyptisk arabisk',
+ 'as' => 'assamesisk',
'asa' => 'asu',
+ 'ase' => 'amerikansk tegnspråk',
'ast' => 'asturisk',
'av' => 'avarisk',
- 'awa' => 'awadhi',
+ 'avk' => 'kotava',
+ 'awa' => 'avadhi',
'ay' => 'aymara',
'az' => 'aserbajdsjansk',
'ba' => 'basjkirsk',
'bal' => 'baluchi',
'ban' => 'balinesisk',
- 'bas' => 'basa',
+ 'bar' => 'bairisk',
+ 'bas' => 'basaa',
'bax' => 'bamun',
+ 'bbc' => 'batak toba',
'bbj' => 'ghomala',
'be' => 'hviterussisk',
'bej' => 'beja',
'bem' => 'bemba',
+ 'bew' => 'betawi',
'bez' => 'bena',
'bfd' => 'bafut',
+ 'bfq' => 'badaga',
'bg' => 'bulgarsk',
+ 'bgn' => 'vestbalutsji',
'bho' => 'bhojpuri',
'bi' => 'bislama',
'bik' => 'bikol',
'bin' => 'bini',
+ 'bjn' => 'banjar',
'bkm' => 'kom',
'bla' => 'siksika',
'bm' => 'bambara',
'bn' => 'bengali',
'bo' => 'tibetansk',
+ 'bpy' => 'bishnupriya',
+ 'bqi' => 'bakhtiari',
'br' => 'bretonsk',
'bra' => 'braj',
+ 'brh' => 'brahui',
'brx' => 'bodo',
'bs' => 'bosnisk',
'bss' => 'akose',
- 'bua' => 'buriat',
+ 'bua' => 'burjatisk',
'bug' => 'buginesisk',
'bum' => 'bulu',
'byn' => 'blin',
@@ -74,7 +93,7 @@ $languageNames = array(
'cgg' => 'kiga',
'ch' => 'chamorro',
'chb' => 'chibcha',
- 'chg' => 'chagatai',
+ 'chg' => 'tsjagatai',
'chk' => 'chuukesisk',
'chm' => 'mari',
'chn' => 'chinook',
@@ -85,27 +104,28 @@ $languageNames = array(
'ckb' => 'kurdisk (sorani)',
'co' => 'korsikansk',
'cop' => 'koptisk',
+ 'cps' => 'kapiz',
'cr' => 'cree',
'crh' => 'krimtatarisk',
+ 'crs' => 'seselwa',
'cs' => 'tsjekkisk',
'csb' => 'kasjubisk',
'cu' => 'kirkeslavisk',
- 'cv' => 'tsjuvansk',
+ 'cv' => 'tsjuvasjisk',
'cy' => 'walisisk',
'da' => 'dansk',
'dak' => 'dakota',
'dar' => 'dargwa',
'dav' => 'taita',
'de' => 'tysk',
- 'de-at' => 'østerriksk tysk',
- 'de-ch' => 'sveitsisk høytysk',
'del' => 'delaware',
- 'den' => 'slavisk',
+ 'den' => 'slavey',
'dgr' => 'dogrib',
'din' => 'dinka',
'dje' => 'zarma',
'doi' => 'dogri',
'dsb' => 'lavsorbisk',
+ 'dtp' => 'sentraldusun',
'dua' => 'duala',
'dum' => 'mellomnederlandsk',
'dv' => 'divehi',
@@ -116,38 +136,35 @@ $languageNames = array(
'ebu' => 'kiembu',
'ee' => 'ewe',
'efi' => 'efik',
+ 'egl' => 'emiliansk',
'egy' => 'gammelegyptisk',
'eka' => 'ekajuk',
'el' => 'gresk',
'elx' => 'elamittisk',
'en' => 'engelsk',
- 'en-au' => 'australsk engelsk',
- 'en-ca' => 'canadisk engelsk',
- 'en-gb' => 'britisk engelsk',
- 'en-us' => 'amerikansk engelsk',
'enm' => 'mellomengelsk',
'eo' => 'esperanto',
'es' => 'spansk',
- 'es-419' => 'latinamerikansk spansk',
- 'es-es' => 'europeisk spansk',
- 'es-mx' => 'meksikansk spansk',
+ 'esu' => 'sentralyupik',
'et' => 'estisk',
'eu' => 'baskisk',
'ewo' => 'ewondo',
+ 'ext' => 'ekstremaduransk',
'fa' => 'persisk',
'fan' => 'fang',
'fat' => 'fanti',
- 'ff' => 'fulani',
+ 'ff' => 'fulfulde',
'fi' => 'finsk',
- 'fil' => 'filippinsk',
+ 'fil' => 'filipino',
+ 'fit' => 'tornedalsfinsk',
'fj' => 'fijiansk',
'fo' => 'færøysk',
'fon' => 'fon',
'fr' => 'fransk',
- 'fr-ca' => 'canadisk fransk',
- 'fr-ch' => 'sveitsisk fransk',
+ 'frc' => 'cajunfransk',
'frm' => 'mellomfransk',
'fro' => 'gammelfransk',
+ 'frp' => 'arpitansk',
'frr' => 'nordfrisisk',
'frs' => 'østfrisisk',
'fur' => 'friuliansk',
@@ -155,15 +172,19 @@ $languageNames = array(
'ga' => 'irsk',
'gaa' => 'ga',
'gag' => 'gagausisk',
+ 'gan' => 'gan',
'gay' => 'gayo',
'gba' => 'gbaya',
- 'gd' => 'skotsk gælisk',
- 'gez' => 'ges',
+ 'gbz' => 'zoroastrisk dari',
+ 'gd' => 'skotsk-gælisk',
+ 'gez' => 'geez',
'gil' => 'kiribatisk',
'gl' => 'galisisk',
+ 'glk' => 'gileki',
'gmh' => 'mellomhøytysk',
'gn' => 'guarani',
'goh' => 'gammelhøytysk',
+ 'gom' => 'goansk konkani',
'gon' => 'gondi',
'gor' => 'gorontalo',
'got' => 'gotisk',
@@ -171,20 +192,25 @@ $languageNames = array(
'grc' => 'gammelgresk',
'gsw' => 'sveitsertysk',
'gu' => 'gujarati',
+ 'guc' => 'wayuu',
+ 'gur' => 'frafra',
'guz' => 'gusii',
'gv' => 'mansk',
'gwi' => 'gwichin',
'ha' => 'hausa',
'hai' => 'haida',
+ 'hak' => 'hakka',
'haw' => 'hawaiisk',
'he' => 'hebraisk',
'hi' => 'hindi',
+ 'hif' => 'fijiansk hindi',
'hil' => 'hiligaynon',
'hit' => 'hettittisk',
'hmn' => 'hmong',
'ho' => 'hiri motu',
'hr' => 'kroatisk',
'hsb' => 'høysorbisk',
+ 'hsn' => 'xiang',
'ht' => 'haitisk',
'hu' => 'ungarsk',
'hup' => 'hupa',
@@ -204,12 +230,15 @@ $languageNames = array(
'is' => 'islandsk',
'it' => 'italiensk',
'iu' => 'inuktitut',
+ 'izh' => 'ingrisk',
'ja' => 'japansk',
+ 'jam' => 'jamaicansk kreolengelsk',
'jbo' => 'lojban',
'jgo' => 'ngomba',
'jmc' => 'machame',
'jpr' => 'jødepersisk',
'jrb' => 'jødearabisk',
+ 'jut' => 'jysk',
'jv' => 'javanesisk',
'ka' => 'georgisk',
'kaa' => 'karakalpakisk',
@@ -223,12 +252,16 @@ $languageNames = array(
'kcg' => 'tyap',
'kde' => 'makonde',
'kea' => 'kappverdisk',
+ 'ken' => 'kenyang',
'kfo' => 'koro',
'kg' => 'kikongo',
+ 'kgp' => 'kaingang',
'kha' => 'khasi',
'kho' => 'khotanesisk',
'khq' => 'koyra chiini',
+ 'khw' => 'khowar',
'ki' => 'kikuyu',
+ 'kiu' => 'kirmancki',
'kj' => 'kuanyama',
'kk' => 'kasakhisk',
'kkj' => 'kako',
@@ -243,7 +276,9 @@ $languageNames = array(
'kos' => 'kosraeansk',
'kpe' => 'kpelle',
'kr' => 'kanuri',
- 'krc' => 'karachay-balkar',
+ 'krc' => 'karatsjajbalkarsk',
+ 'kri' => 'krio',
+ 'krj' => 'kinaray-a',
'krl' => 'karelsk',
'kru' => 'kurukh',
'ks' => 'kasjmiri',
@@ -251,7 +286,7 @@ $languageNames = array(
'ksf' => 'bafia',
'ksh' => 'kølnsk',
'ku' => 'kurdisk',
- 'kum' => 'kumyk',
+ 'kum' => 'kumykisk',
'kut' => 'kutenai',
'kv' => 'komi',
'kw' => 'kornisk',
@@ -262,23 +297,32 @@ $languageNames = array(
'lah' => 'lahnda',
'lam' => 'lamba',
'lb' => 'luxemburgsk',
- 'lez' => 'lezghian',
+ 'lez' => 'lesgisk',
+ 'lfn' => 'lingua franca nova',
'lg' => 'ganda',
- 'li' => 'limburgisk',
+ 'li' => 'limburgsk',
+ 'lij' => 'ligurisk',
+ 'liv' => 'livisk',
'lkt' => 'lakota',
+ 'lmo' => 'lombardisk',
'ln' => 'lingala',
'lo' => 'laotisk',
'lol' => 'mongo',
+ 'lou' => 'louisianakreolsk',
'loz' => 'lozi',
+ 'lrc' => 'nord-luri',
'lt' => 'litauisk',
+ 'ltg' => 'latgallisk',
'lu' => 'luba-katanga',
'lua' => 'luba-lulua',
'lui' => 'luiseno',
'lun' => 'lunda',
'luo' => 'luo',
- 'lus' => 'lushai',
+ 'lus' => 'mizo',
'luy' => 'luhya',
'lv' => 'latvisk',
+ 'lzh' => 'klassisk kinesisk',
+ 'lzz' => 'lazisk',
'mad' => 'maduresisk',
'maf' => 'mafa',
'mag' => 'magahi',
@@ -287,12 +331,12 @@ $languageNames = array(
'man' => 'mandingo',
'mas' => 'masai',
'mde' => 'maba',
- 'mdf' => 'moksha',
+ 'mdf' => 'moksja',
'mdr' => 'mandar',
'men' => 'mende',
'mer' => 'meru',
'mfe' => 'mauritisk-kreolsk',
- 'mg' => 'madagassisk',
+ 'mg' => 'gassisk',
'mga' => 'mellomirsk',
'mgh' => 'makhuwa-meetto',
'mgo' => 'meta’',
@@ -308,6 +352,7 @@ $languageNames = array(
'moh' => 'mohawk',
'mos' => 'mossi',
'mr' => 'marathi',
+ 'mrj' => 'vestmarisk',
'ms' => 'malayisk',
'mt' => 'maltesisk',
'mua' => 'mundang',
@@ -315,29 +360,35 @@ $languageNames = array(
'mus' => 'creek',
'mwl' => 'mirandesisk',
'mwr' => 'marwari',
+ 'mwv' => 'mentawai',
'my' => 'burmesisk',
'mye' => 'myene',
- 'myv' => 'erzya',
+ 'myv' => 'erzia',
+ 'mzn' => 'mazandarani',
'na' => 'nauru',
+ 'nan' => 'minnan',
'nap' => 'napolitansk',
'naq' => 'nama',
'nb' => 'norsk bokmål',
'nd' => 'nord-ndebele',
- 'nds' => 'lavtysk',
+ 'nds' => 'nedertysk',
+ 'nds-nl' => 'nedersaksisk',
'ne' => 'nepali',
'new' => 'newari',
'ng' => 'ndonga',
'nia' => 'nias',
'niu' => 'niueansk',
+ 'njo' => 'ao naga',
'nl' => 'nederlandsk',
'nl-be' => 'flamsk',
'nmg' => 'kwasio',
'nn' => 'norsk nynorsk',
'nnh' => 'ngiemboon',
'no' => 'norsk',
- 'nog' => 'nogai',
+ 'nog' => 'nogaisk',
'non' => 'gammelnorsk',
- 'nqo' => 'nkå',
+ 'nov' => 'novial',
+ 'nqo' => 'nʼko',
'nr' => 'sør-ndebele',
'nso' => 'nord-sotho',
'nus' => 'nuer',
@@ -351,69 +402,88 @@ $languageNames = array(
'oc' => 'oksitansk',
'oj' => 'ojibwa',
'om' => 'oromo',
- 'or' => 'oriya',
+ 'or' => 'odia',
'os' => 'ossetisk',
'osa' => 'osage',
'ota' => 'ottomansk tyrkisk',
- 'pa' => 'punjabi',
+ 'pa' => 'panjabi',
'pag' => 'pangasinan',
'pal' => 'pahlavi',
'pam' => 'pampanga',
'pap' => 'papiamento',
'pau' => 'palauisk',
+ 'pcd' => 'pikardisk',
+ 'pcm' => 'nigeriansk pidginspråk',
+ 'pdc' => 'pennsylvaniatysk',
+ 'pdt' => 'plautdietsch',
'peo' => 'gammelpersisk',
+ 'pfl' => 'palatintysk',
'phn' => 'fønikisk',
'pi' => 'pali',
'pl' => 'polsk',
+ 'pms' => 'piemontesisk',
+ 'pnt' => 'pontisk',
'pon' => 'ponapisk',
+ 'prg' => 'prøyssisk',
'pro' => 'gammelprovençalsk',
'ps' => 'pashto',
'pt' => 'portugisisk',
- 'pt-br' => 'brasiliansk portugisisk',
- 'pt-pt' => 'europeisk portugisisk',
'qu' => 'quechua',
- 'quc' => 'quiché',
+ 'quc' => 'k’iche’',
+ 'qug' => 'kichwa (Chimborazo-høylandet)',
'raj' => 'rajasthani',
'rap' => 'rapanui',
'rar' => 'rarotongansk',
+ 'rgn' => 'romagnolsk',
+ 'rif' => 'riff',
'rm' => 'retoromansk',
'rn' => 'rundi',
'ro' => 'rumensk',
'ro-md' => 'moldovsk',
'rof' => 'rombo',
'rom' => 'romani',
+ 'rtm' => 'rotumansk',
'ru' => 'russisk',
+ 'rue' => 'rusinsk',
+ 'rug' => 'roviana',
'rup' => 'aromansk',
'rw' => 'kinyarwanda',
'rwk' => 'rwa',
'sa' => 'sanskrit',
'sad' => 'sandawe',
- 'sah' => 'jakutsk',
+ 'sah' => 'sakha',
'sam' => 'samaritansk arameisk',
'saq' => 'samburu',
'sas' => 'sasak',
'sat' => 'santali',
+ 'saz' => 'saurashtra',
'sba' => 'ngambay',
'sbp' => 'sangu',
- 'sc' => 'sardinsk',
+ 'sc' => 'sardisk',
'scn' => 'siciliansk',
'sco' => 'skotsk',
'sd' => 'sindhi',
+ 'sdc' => 'sassaresisk sardisk',
+ 'sdh' => 'sørkurdisk',
'se' => 'nordsamisk',
'see' => 'seneca',
'seh' => 'sena',
+ 'sei' => 'seri',
'sel' => 'selkupisk',
'ses' => 'koyraboro senni',
'sg' => 'sango',
'sga' => 'gammelirsk',
+ 'sgs' => 'samogitisk',
'sh' => 'serbokroatisk',
'shi' => 'tachelhit',
'shn' => 'shan',
- 'shu' => 'Tsjad-arabisk',
+ 'shu' => 'tsjadisk arabisk',
'si' => 'singalesisk',
'sid' => 'sidamo',
'sk' => 'slovakisk',
'sl' => 'slovensk',
+ 'sli' => 'lavschlesisk',
+ 'sly' => 'selayar',
'sm' => 'samoansk',
'sma' => 'sørsamisk',
'smj' => 'lulesamisk',
@@ -425,22 +495,25 @@ $languageNames = array(
'sog' => 'sogdisk',
'sq' => 'albansk',
'sr' => 'serbisk',
- 'srn' => 'sranan tongo',
+ 'srn' => 'sranan',
'srr' => 'serer',
'ss' => 'swati',
'ssy' => 'saho',
'st' => 'sør-sotho',
+ 'stq' => 'saterfrisisk',
'su' => 'sundanesisk',
'suk' => 'sukuma',
'sus' => 'susu',
'sux' => 'sumerisk',
'sv' => 'svensk',
'sw' => 'swahili',
+ 'sw-cd' => 'kongolesisk swahili',
'swb' => 'komorisk',
- 'swc' => 'kongolesisk swahili',
'syc' => 'klassisk syrisk',
- 'syr' => 'syrisk',
- 'ta' => 'tamilsk',
+ 'syr' => 'syriakisk',
+ 'szl' => 'schlesisk',
+ 'ta' => 'tamil',
+ 'tcy' => 'tulu',
'te' => 'telugu',
'tem' => 'temne',
'teo' => 'teso',
@@ -452,28 +525,33 @@ $languageNames = array(
'tig' => 'tigré',
'tiv' => 'tiv',
'tk' => 'turkmensk',
- 'tkl' => 'tokelau',
+ 'tkl' => 'tokelauisk',
+ 'tkr' => 'tsakhursk',
'tl' => 'tagalog',
'tlh' => 'klingon',
'tli' => 'tlingit',
+ 'tly' => 'talysj',
'tmh' => 'tamasjek',
'tn' => 'setswana',
'to' => 'tongansk',
'tog' => 'nyasa-tongansk',
'tpi' => 'tok pisin',
'tr' => 'tyrkisk',
+ 'tru' => 'turoyo',
'trv' => 'taroko',
'ts' => 'tsonga',
+ 'tsd' => 'tsakonisk',
'tsi' => 'tsimshian',
'tt' => 'tatarisk',
+ 'ttt' => 'muslimsk tat',
'tum' => 'tumbuka',
- 'tvl' => 'tuvalu',
+ 'tvl' => 'tuvalsk',
'tw' => 'twi',
'twq' => 'tasawaq',
'ty' => 'tahitisk',
- 'tyv' => 'tuvinisk',
+ 'tyv' => 'tuvinsk',
'tzm' => 'sentralmarokkansk tamazight',
- 'udm' => 'udmurt',
+ 'udm' => 'udmurtisk',
'ug' => 'uigurisk',
'uga' => 'ugaritisk',
'uk' => 'ukrainsk',
@@ -483,18 +561,26 @@ $languageNames = array(
'uz' => 'usbekisk',
'vai' => 'vai',
've' => 'venda',
+ 'vec' => 'venetiansk',
+ 'vep' => 'vepsisk',
'vi' => 'vietnamesisk',
+ 'vls' => 'vestflamsk',
+ 'vmf' => 'Main-frankisk',
'vo' => 'volapyk',
'vot' => 'votisk',
+ 'vro' => 'sørestisk',
'vun' => 'vunjo',
'wa' => 'vallonsk',
- 'wae' => 'walser',
- 'wal' => 'walamo',
- 'war' => 'waray',
+ 'wae' => 'walsertysk',
+ 'wal' => 'wolaytta',
+ 'war' => 'waray-waray',
'was' => 'washo',
+ 'wbp' => 'warlpiri',
'wo' => 'wolof',
- 'xal' => 'kalmyk',
+ 'wuu' => 'wu',
+ 'xal' => 'kalmukkisk',
'xh' => 'xhosa',
+ 'xmf' => 'mingrelsk',
'xog' => 'soga',
'yao' => 'yao',
'yap' => 'yapesisk',
@@ -502,10 +588,12 @@ $languageNames = array(
'ybb' => 'yemba',
'yi' => 'jiddisk',
'yo' => 'joruba',
+ 'yrl' => 'nheengatu',
'yue' => 'kantonesisk',
'za' => 'zhuang',
- 'zap' => 'zapotec',
+ 'zap' => 'zapotekisk',
'zbl' => 'blissymboler',
+ 'zea' => 'zeeuws',
'zen' => 'zenaga',
'zgh' => 'standard marrokansk tamazight',
'zh' => 'kinesisk',
@@ -514,14 +602,14 @@ $languageNames = array(
'zu' => 'zulu',
'zun' => 'zuni',
'zxx' => 'uten språklig innhold',
- 'zza' => 'zaza',
-);
+ 'zza' => 'zazaisk',
+];
-$currencyNames = array(
+$currencyNames = [
'ADP' => 'andorranske pesetas',
'AED' => 'emiratarabiske dirham',
'AFA' => 'afgansk afghani (1927–2002)',
- 'AFN' => 'afghansk afghani',
+ 'AFN' => 'afghanske afghani',
'ALK' => 'albanske lek (1946–1965)',
'ALL' => 'albanske lek',
'AMD' => 'armenske dram',
@@ -561,18 +649,19 @@ $currencyNames = array(
'BOP' => 'bolivianske pesos',
'BOV' => 'bolivianske mvdol',
'BRB' => 'brasilianske cruzeiro novo (1967–1986)',
- 'BRC' => 'brasilianske cruzado',
+ 'BRC' => 'brasilianske cruzados (1986–1989)',
'BRE' => 'brasilianske cruzeiro (1990–1993)',
'BRL' => 'brasilianske real',
'BRN' => 'brasilianske cruzado novo (1989–1990)',
- 'BRR' => 'brasilianske cruzeiro',
+ 'BRR' => 'brasilianske cruzeiro (1993–1994)',
'BRZ' => 'brasilianske cruzeiro (1942–1967)',
'BSD' => 'bahamanske dollar',
'BTN' => 'bhutanske ngultrum',
'BUK' => 'burmesiske kyat',
'BWP' => 'botswanske pula',
'BYB' => 'hviterussiske nye rubler (1994–1999)',
- 'BYR' => 'hviterussiske rubler',
+ 'BYN' => 'nye hviterussiske rubler',
+ 'BYR' => 'hviterussiske rubler (2000–2016)',
'BZD' => 'beliziske dollar',
'CAD' => 'kanadiske dollar',
'CDF' => 'kongolesiske franc',
@@ -582,10 +671,11 @@ $currencyNames = array(
'CLE' => 'chilenske escudo',
'CLF' => 'chilenske unidades de fomento',
'CLP' => 'chilenske pesos',
+ 'CNH' => 'kinesiske yuan (offshore)',
'CNX' => 'Kinas folkebank dollar',
'CNY' => 'kinesiske yuan',
'COP' => 'colombianske pesos',
- 'COU' => 'unidad de valor real',
+ 'COU' => 'colombianske unidad de valor real',
'CRC' => 'costaricanske colón',
'CSD' => 'serbiske dinarer (2002–2006)',
'CSK' => 'tsjekkoslovakiske koruna (hard)',
@@ -594,7 +684,7 @@ $currencyNames = array(
'CVE' => 'kappverdiske escudos',
'CYP' => 'kypriotiske pund',
'CZK' => 'tsjekkiske koruna',
- 'DDM' => 'østtyske ostmark',
+ 'DDM' => 'østtyske mark',
'DEM' => 'tyske mark',
'DJF' => 'djiboutiske franc',
'DKK' => 'danske kroner',
@@ -643,7 +733,7 @@ $currencyNames = array(
'INR' => 'indiske rupier',
'IQD' => 'irakske dinarer',
'IRR' => 'iranske rialer',
- 'ISJ' => 'gammel islandsk krone',
+ 'ISJ' => 'islandske kroner (1918–1981)',
'ISK' => 'islandske kroner',
'ITL' => 'italienske lire',
'JMD' => 'jamaikanske dollar',
@@ -665,7 +755,7 @@ $currencyNames = array(
'LKR' => 'srilankiske rupier',
'LRD' => 'liberiske dollar',
'LSL' => 'lesothiske loti',
- 'LTL' => 'litauiske lita',
+ 'LTL' => 'litauiske litas',
'LTT' => 'litauiske talonas',
'LUC' => 'luxemburgske konvertible franc',
'LUF' => 'luxemburgske franc',
@@ -686,7 +776,8 @@ $currencyNames = array(
'MMK' => 'myanmarske kyat',
'MNT' => 'mongolske tugrik',
'MOP' => 'makaoiske pataca',
- 'MRO' => 'mauritanske ouguiya',
+ 'MRO' => 'mauritanske ouguiya (1973–2017)',
+ 'MRU' => 'mauritanske ouguiya',
'MTL' => 'maltesiske lira',
'MTP' => 'maltesiske pund',
'MUR' => 'mauritiske rupier',
@@ -710,9 +801,9 @@ $currencyNames = array(
'NZD' => 'newzealandske dollar',
'OMR' => 'omanske rialer',
'PAB' => 'panamanske balboa',
- 'PEI' => 'peruvianske inti',
- 'PEN' => 'peruanske nuevo sol',
- 'PES' => 'peruvianske sol (1863–1965)',
+ 'PEI' => 'peruanske inti',
+ 'PEN' => 'peruanske sol',
+ 'PES' => 'peruanske sol (1863–1965)',
'PGK' => 'papuanske kina',
'PHP' => 'filippinske pesos',
'PKR' => 'pakistanske rupier',
@@ -744,7 +835,8 @@ $currencyNames = array(
'SRD' => 'surinamske dollar',
'SRG' => 'surinamske gylden',
'SSP' => 'sørsudanske pund',
- 'STD' => 'São Tomé og Príncipe-dobra',
+ 'STD' => 'saotomesiske dobra (1977–2017)',
+ 'STN' => 'saotomesiske dobra',
'SUR' => 'sovjetiske rubler',
'SVC' => 'salvadoranske colon',
'SYP' => 'syriske pund',
@@ -774,7 +866,8 @@ $currencyNames = array(
'UYU' => 'uruguayanske pesos',
'UZS' => 'usbekiske som',
'VEB' => 'venezuelanske bolivar (1871–2008)',
- 'VEF' => 'venezuelanske bolivar',
+ 'VEF' => 'venezuelanske bolivar (2008–2018)',
+ 'VES' => 'venezuelanske bolivar',
'VND' => 'vietnamesiske dong',
'VNN' => 'vietnamesiske dong (1978–1985)',
'VUV' => 'vanuatiske vatu',
@@ -815,9 +908,9 @@ $currencyNames = array(
'ZWD' => 'zimbabwiske dollar (1980–2008)',
'ZWL' => 'zimbabwisk dollar (2009)',
'ZWR' => 'zimbabwisk dollar (2008)',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'ADP' => 'ADP',
'AED' => 'AED',
'AFA' => 'AFA',
@@ -872,6 +965,7 @@ $currencySymbols = array(
'BUK' => 'BUK',
'BWP' => 'BWP',
'BYB' => 'BYB',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CAD',
@@ -882,6 +976,7 @@ $currencySymbols = array(
'CLE' => 'CLE',
'CLF' => 'CLF',
'CLP' => 'CLP',
+ 'CNH' => 'CNH',
'CNX' => 'CNX',
'CNY' => 'CNY',
'COP' => 'COP',
@@ -985,6 +1080,7 @@ $currencySymbols = array(
'MNT' => 'MNT',
'MOP' => 'MOP',
'MRO' => 'MRO',
+ 'MRU' => 'MRU',
'MTL' => 'MTL',
'MTP' => 'MTP',
'MUR' => 'MUR',
@@ -1043,6 +1139,7 @@ $currencySymbols = array(
'SRG' => 'SRG',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'STN',
'SUR' => 'SUR',
'SVC' => 'SVC',
'SYP' => 'SYP',
@@ -1073,6 +1170,7 @@ $currencySymbols = array(
'UZS' => 'UZS',
'VEB' => 'VEB',
'VEF' => 'VEF',
+ 'VES' => 'VES',
'VND' => 'VND',
'VNN' => 'VNN',
'VUV' => 'VUV',
@@ -1112,9 +1210,9 @@ $currencySymbols = array(
'ZRZ' => 'ZRZ',
'ZWD' => 'ZWD',
'ZWL' => 'ZWL',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'Ascension',
'AD' => 'Andorra',
'AE' => 'De forente arabiske emirater',
@@ -1123,7 +1221,6 @@ $countryNames = array(
'AI' => 'Anguilla',
'AL' => 'Albania',
'AM' => 'Armenia',
- 'AN' => 'De nederlandske antiller',
'AO' => 'Angola',
'AQ' => 'Antarktis',
'AR' => 'Argentina',
@@ -1190,6 +1287,7 @@ $countryNames = array(
'ES' => 'Spania',
'ET' => 'Etiopia',
'EU' => 'EU',
+ 'EZ' => 'eurosonen',
'FI' => 'Finland',
'FJ' => 'Fiji',
'FK' => 'Falklandsøyene',
@@ -1301,15 +1399,15 @@ $countryNames = array(
'PH' => 'Filippinene',
'PK' => 'Pakistan',
'PL' => 'Polen',
- 'PM' => 'St. Pierre og Miquelon',
- 'PN' => 'Pitcairn',
+ 'PM' => 'Saint-Pierre-et-Miquelon',
+ 'PN' => 'Pitcairnøyene',
'PR' => 'Puerto Rico',
'PS' => 'Palestina',
'PT' => 'Portugal',
'PW' => 'Palau',
'PY' => 'Paraguay',
'QA' => 'Qatar',
- 'QO' => 'ytre Oseania',
+ 'QO' => 'Ytre Oseania',
'RE' => 'Réunion',
'RO' => 'Romania',
'RS' => 'Serbia',
@@ -1356,6 +1454,7 @@ $countryNames = array(
'UA' => 'Ukraina',
'UG' => 'Uganda',
'UM' => 'USAs ytre øyer',
+ 'UN' => 'FN',
'US' => 'USA',
'UY' => 'Uruguay',
'UZ' => 'Usbekistan',
@@ -1374,9 +1473,11 @@ $countryNames = array(
'ZA' => 'Sør-Afrika',
'ZM' => 'Zambia',
'ZW' => 'Zimbabwe',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-one' => '{0} århundre',
+ 'century-other' => '{0} århundrer',
'day-future-one' => 'om {0} døgn',
'day-future-other' => 'om {0} døgn',
'day-narrow-future-one' => '+{0} d.',
@@ -1387,10 +1488,22 @@ $timeUnits = array(
'day-other' => '{0} døgn',
'day-past-one' => 'for {0} døgn siden',
'day-past-other' => 'for {0} døgn siden',
- 'day-short-future-one' => 'om {0} døgn',
- 'day-short-future-other' => 'om {0} døgn',
- 'day-short-past-one' => 'for {0} døgn siden',
- 'day-short-past-other' => 'for {0} døgn siden',
+ 'day-short-future-one' => 'om {0} d.',
+ 'day-short-future-other' => 'om {0} d.',
+ 'day-short-past-one' => 'for {0} d. siden',
+ 'day-short-past-other' => 'for {0} d. siden',
+ 'fri-future-one' => 'om {0} fredag',
+ 'fri-future-other' => 'om {0} fredager',
+ 'fri-narrow-future-one' => 'om {0} fr.',
+ 'fri-narrow-future-other' => 'om {0} fr.',
+ 'fri-narrow-past-one' => 'for {0} fr. siden',
+ 'fri-narrow-past-other' => 'for {0} fr. siden',
+ 'fri-past-one' => 'for {0} fredag siden',
+ 'fri-past-other' => 'for {0} fredager siden',
+ 'fri-short-future-one' => 'om {0} fre.',
+ 'fri-short-future-other' => 'om {0} fre.',
+ 'fri-short-past-one' => 'for {0} fre. siden',
+ 'fri-short-past-other' => 'for {0} fre. siden',
'hour-future-one' => 'om {0} time',
'hour-future-other' => 'om {0} timer',
'hour-narrow-future-one' => '+{0} t',
@@ -1423,6 +1536,18 @@ $timeUnits = array(
'minute-short-future-other' => 'om {0} min',
'minute-short-past-one' => 'for {0} min siden',
'minute-short-past-other' => 'for {0} min siden',
+ 'mon-future-one' => 'om {0} mandag',
+ 'mon-future-other' => 'om {0} mandager',
+ 'mon-narrow-future-one' => 'om {0} ma.',
+ 'mon-narrow-future-other' => 'om {0} ma.',
+ 'mon-narrow-past-one' => 'for {0} ma. siden',
+ 'mon-narrow-past-other' => 'for {0} ma. siden',
+ 'mon-past-one' => 'for {0} mandag siden',
+ 'mon-past-other' => 'for {0} mandager siden',
+ 'mon-short-future-one' => 'om {0} man.',
+ 'mon-short-future-other' => 'om {0} man.',
+ 'mon-short-past-one' => 'for {0} man. siden',
+ 'mon-short-past-other' => 'for {0} man. siden',
'month-future-one' => 'om {0} måned',
'month-future-other' => 'om {0} måneder',
'month-narrow-future-one' => '+{0} md.',
@@ -1433,10 +1558,10 @@ $timeUnits = array(
'month-other' => '{0} måneder',
'month-past-one' => 'for {0} måned siden',
'month-past-other' => 'for {0} måneder siden',
- 'month-short-future-one' => 'om {0} måneder',
- 'month-short-future-other' => 'om {0} måneder',
- 'month-short-past-one' => 'for {0} måneder siden',
- 'month-short-past-other' => 'for {0} måneder siden',
+ 'month-short-future-one' => 'om {0} md.',
+ 'month-short-future-other' => 'om {0} md.',
+ 'month-short-past-one' => 'for {0} md. siden',
+ 'month-short-past-other' => 'for {0} md. siden',
'nanosecond-one' => '{0} nanosekund',
'nanosecond-other' => '{0} nanosekunder',
'quarter-future-one' => 'om {0} kvartal',
@@ -1451,6 +1576,18 @@ $timeUnits = array(
'quarter-short-future-other' => 'om {0} kv.',
'quarter-short-past-one' => 'for {0} kv. siden',
'quarter-short-past-other' => 'for {0} kv. siden',
+ 'sat-future-one' => 'om {0} lørdag',
+ 'sat-future-other' => 'om {0} lørdager',
+ 'sat-narrow-future-one' => 'om {0} lø.',
+ 'sat-narrow-future-other' => 'om {0} lø.',
+ 'sat-narrow-past-one' => 'for {0} lø. siden',
+ 'sat-narrow-past-other' => 'for {0} lø. siden',
+ 'sat-past-one' => 'for {0} lørdag siden',
+ 'sat-past-other' => 'for {0} lørdager siden',
+ 'sat-short-future-one' => 'om {0} lør.',
+ 'sat-short-future-other' => 'om {0} lør.',
+ 'sat-short-past-one' => 'for {0} lør. siden',
+ 'sat-short-past-other' => 'for {0} lør. siden',
'second-future-one' => 'om {0} sekund',
'second-future-other' => 'om {0} sekunder',
'second-narrow-future-one' => '+{0} s',
@@ -1465,6 +1602,54 @@ $timeUnits = array(
'second-short-future-other' => 'om {0} sek',
'second-short-past-one' => 'for {0} sek siden',
'second-short-past-other' => 'for {0} sek siden',
+ 'sun-future-one' => 'om {0} søndag',
+ 'sun-future-other' => 'om {0} søndager',
+ 'sun-narrow-future-one' => 'om {0} sø.',
+ 'sun-narrow-future-other' => 'om {0} sø.',
+ 'sun-narrow-past-one' => 'for {0} sø. siden',
+ 'sun-narrow-past-other' => 'for {0} sø. siden',
+ 'sun-past-one' => 'for {0} søndag siden',
+ 'sun-past-other' => 'for {0} søndager siden',
+ 'sun-short-future-one' => 'om {0} søn.',
+ 'sun-short-future-other' => 'om {0} søn.',
+ 'sun-short-past-one' => 'for {0} søn. siden',
+ 'sun-short-past-other' => 'for {0} søn. siden',
+ 'thu-future-one' => 'om {0} torsdag',
+ 'thu-future-other' => 'om {0} torsdager',
+ 'thu-narrow-future-one' => 'om {0} to.',
+ 'thu-narrow-future-other' => 'om {0} to.',
+ 'thu-narrow-past-one' => 'for {0} to. siden',
+ 'thu-narrow-past-other' => 'for {0} to. siden',
+ 'thu-past-one' => 'for {0} torsdag siden',
+ 'thu-past-other' => 'for {0} torsdager siden',
+ 'thu-short-future-one' => 'om {0} tor.',
+ 'thu-short-future-other' => 'om {0} tor.',
+ 'thu-short-past-one' => 'for {0} tor. siden',
+ 'thu-short-past-other' => 'for {0} tor. siden',
+ 'tue-future-one' => 'om {0} tirsdag',
+ 'tue-future-other' => 'om {0} tirsdager',
+ 'tue-narrow-future-one' => 'om {0} ti.',
+ 'tue-narrow-future-other' => 'om {0} ti.',
+ 'tue-narrow-past-one' => 'for {0} ti. siden',
+ 'tue-narrow-past-other' => 'for {0} ti. siden',
+ 'tue-past-one' => 'for {0} tirsdag siden',
+ 'tue-past-other' => 'for {0} tirsdager siden',
+ 'tue-short-future-one' => 'om {0} tir.',
+ 'tue-short-future-other' => 'om {0} tir.',
+ 'tue-short-past-one' => 'for {0} tir. siden',
+ 'tue-short-past-other' => 'for {0} tir. siden',
+ 'wed-future-one' => 'om {0} onsdag',
+ 'wed-future-other' => 'om {0} onsdager',
+ 'wed-narrow-future-one' => 'om {0} on.',
+ 'wed-narrow-future-other' => 'om {0} on.',
+ 'wed-narrow-past-one' => 'for {0} on. siden',
+ 'wed-narrow-past-other' => 'for {0} on. siden',
+ 'wed-past-one' => 'for {0} onsdag siden',
+ 'wed-past-other' => 'for {0} onsdager siden',
+ 'wed-short-future-one' => 'om {0} ons.',
+ 'wed-short-future-other' => 'om {0} ons.',
+ 'wed-short-past-one' => 'for {0} ons. siden',
+ 'wed-short-past-other' => 'for {0} ons. siden',
'week-future-one' => 'om {0} uke',
'week-future-other' => 'om {0} uker',
'week-narrow-future-one' => '+{0} u.',
@@ -1475,10 +1660,10 @@ $timeUnits = array(
'week-other' => '{0} uker',
'week-past-one' => 'for {0} uke siden',
'week-past-other' => 'for {0} uker siden',
- 'week-short-future-one' => 'om {0} uke',
- 'week-short-future-other' => 'om {0} uker',
- 'week-short-past-one' => 'for {0} uke siden',
- 'week-short-past-other' => 'for {0} uker siden',
+ 'week-short-future-one' => 'om {0} u.',
+ 'week-short-future-other' => 'om {0} u.',
+ 'week-short-past-one' => 'for {0} u. siden',
+ 'week-short-past-other' => 'for {0} u. siden',
'year-future-one' => 'om {0} år',
'year-future-other' => 'om {0} år',
'year-narrow-future-one' => '+{0} år',
@@ -1493,4 +1678,4 @@ $timeUnits = array(
'year-short-future-other' => 'om {0} år',
'year-short-past-one' => 'for {0} år siden',
'year-short-past-other' => 'for {0} år siden',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesNe.php b/MLEB/cldr/CldrNames/CldrNamesNe.php
index ba8a48e6..a656ccfd 100644
--- a/MLEB/cldr/CldrNames/CldrNamesNe.php
+++ b/MLEB/cldr/CldrNames/CldrNamesNe.php
@@ -1,229 +1,566 @@
<?php
-$languageNames = array(
+$languageNames = [
+ 'aa' => 'अफार',
'ab' => 'अब्खाजियाली',
+ 'ace' => 'अचाइनिज',
+ 'ach' => 'अकोली',
+ 'ada' => 'अदाङमे',
+ 'ady' => 'अदिघे',
+ 'ae' => 'अवेस्तान',
'af' => 'अफ्रिकान्स',
+ 'afh' => 'अफ्रिहिली',
'agq' => 'आघेम',
+ 'ain' => 'अइनु',
'ak' => 'आकान',
+ 'akk' => 'अक्कादियाली',
+ 'akz' => 'अलाबामा',
+ 'ale' => 'अलेउट',
+ 'aln' => 'घेग अल्बानियाली',
+ 'alt' => 'दक्षिणी आल्टाइ',
'am' => 'अम्हारिक',
+ 'an' => 'अरागोनी',
+ 'ang' => 'पुरातन अङ्ग्रेजी',
+ 'anp' => 'अङ्गिका',
'ar' => 'अरबी',
'ar-001' => 'आधुनिक मानक अरबी',
+ 'arc' => 'अरामाइक',
'arn' => 'मापुचे',
+ 'aro' => 'अराओना',
+ 'arp' => 'अरापाहो',
+ 'arq' => 'अल्जेरियाली अरबी',
+ 'arw' => 'अरावाक',
+ 'ary' => 'मोरोक्कोली अरबी',
+ 'arz' => 'इजिप्ट अरबी',
'as' => 'आसामी',
'asa' => 'आसु',
+ 'ase' => 'अमेरिकी साङ्केतिक भाषा',
+ 'ast' => 'अस्टुरियाली',
+ 'av' => 'अवारिक',
+ 'avk' => 'कोटावा',
+ 'awa' => 'अवधी',
+ 'ay' => 'ऐमारा',
'az' => 'अजरबैजानी',
- 'ba' => 'बाश्किर',
- 'be' => 'वेलारूसी',
+ 'ba' => 'बास्किर',
+ 'bal' => 'बालुची',
+ 'ban' => 'बाली',
+ 'bar' => 'बाभारियाली',
+ 'bas' => 'बासा',
+ 'bax' => 'बामुन',
+ 'bbc' => 'बाताक तोबा',
+ 'bbj' => 'घोमाला',
+ 'be' => 'बेलारुसी',
+ 'bej' => 'बेजा',
'bem' => 'बेम्बा',
+ 'bew' => 'बेटावी',
'bez' => 'बेना',
+ 'bfd' => 'बाफुट',
+ 'bfq' => 'बडागा',
'bg' => 'बुल्गेरियाली',
+ 'bgn' => 'पश्चिम बालोची',
+ 'bho' => 'भोजपुरी',
+ 'bi' => 'बिस्लाम',
+ 'bik' => 'बिकोल',
+ 'bin' => 'बिनी',
+ 'bjn' => 'बन्जार',
+ 'bkm' => 'कोम',
+ 'bla' => 'सिक्सिका',
'bm' => 'बाम्बारा',
'bn' => 'बंगाली',
'bo' => 'तिब्बती',
+ 'bpy' => 'विष्णुप्रिया',
+ 'bqi' => 'बाख्तिआरी',
'br' => 'ब्रेटन',
+ 'bra' => 'ब्रज',
+ 'brh' => 'ब्राहुइ',
'brx' => 'बोडो',
'bs' => 'बोस्नियाली',
+ 'bss' => 'अकुज',
+ 'bua' => 'बुरिआत',
+ 'bug' => 'बुगिनियाली',
+ 'bum' => 'बुलु',
+ 'byn' => 'ब्लिन',
+ 'byv' => 'मेडुम्बा',
'ca' => 'क्याटालन',
+ 'cad' => 'काड्डो',
+ 'car' => 'क्यारिब',
+ 'cay' => 'कायुगा',
+ 'cch' => 'अट्साम',
+ 'ce' => 'चेचेन',
+ 'ceb' => 'सेबुआनो',
'cgg' => 'चिगा',
+ 'ch' => 'चामोर्रो',
+ 'chb' => 'चिब्चा',
+ 'chg' => 'चागाटाई',
+ 'chk' => 'चुकेसे',
+ 'chm' => 'मारी',
+ 'chn' => 'चिनुक जार्गन',
+ 'cho' => 'चोक्टाव',
+ 'chp' => 'चिपेव्यान',
'chr' => 'चेरोकी',
- 'ckb' => 'सोरानी कुर्दिश',
+ 'chy' => 'चेयेन्ने',
+ 'ckb' => 'मध्यवर्ती कुर्दिस',
'co' => 'कोर्सिकन',
+ 'cop' => 'कोप्टिक',
+ 'cps' => 'कापिज्नोन',
+ 'cr' => 'क्री',
+ 'crh' => 'क्रिमियाली तुर्क',
+ 'crs' => 'सेसेल्वा क्रिओल फ्रान्सेली',
'cs' => 'चेक',
+ 'csb' => 'कासुवियन',
+ 'cu' => 'चर्च स्लाभिक',
+ 'cv' => 'चुभास',
'cy' => 'वेल्श',
- 'da' => 'डेनिश',
+ 'da' => 'डेनिस',
+ 'dak' => 'डाकोटा',
+ 'dar' => 'दार्ग्वा',
'dav' => 'ताइता',
'de' => 'जर्मन',
- 'de-at' => 'अष्ट्रियन जर्मन',
+ 'de-at' => 'अस्ट्रिएन जर्मन',
'de-ch' => 'स्वीस हाई जर्मन',
+ 'del' => 'देलावर',
+ 'dgr' => 'दोग्रिब',
+ 'din' => 'दिन्का',
'dje' => 'जर्मा',
+ 'doi' => 'डोगरी',
'dsb' => 'तल्लो सोर्बियन',
+ 'dtp' => 'केन्द्रीय दुसुन',
'dua' => 'दुवाला',
+ 'dum' => 'मध्य डच',
+ 'dv' => 'दिबेही',
'dyo' => 'जोला-फोनिल',
+ 'dyu' => 'द्युला',
'dz' => 'जोङ्खा',
+ 'dzg' => 'दाजागा',
'ebu' => 'एम्बु',
- 'ee' => 'इवि',
+ 'ee' => 'इवी',
+ 'efi' => 'एफिक',
+ 'egl' => 'एमिलियाली',
+ 'egy' => 'पुरातन इजिप्टी',
+ 'eka' => 'एकाजुक',
'el' => 'ग्रीक',
- 'en' => 'अंग्रेजी',
+ 'elx' => 'एलामाइट',
+ 'en' => 'अङ्ग्रेजी',
+ 'en-au' => 'अस्ट्रेलियाली अङ्ग्रेजी',
+ 'en-ca' => 'क्यानाडेली अङ्ग्रेजी',
+ 'en-gb' => 'बेलायती अङ्ग्रेजी',
+ 'en-us' => 'अमेरिकी अङ्ग्रेजी',
+ 'enm' => 'मध्य अङ्ग्रेजी',
'eo' => 'एस्पेरान्तो',
- 'es' => 'स्पेनिस',
- 'es-es' => 'युरोपेली स्पेनिस',
- 'et' => 'इस्टोनियाली',
+ 'es' => 'स्पेनी',
+ 'es-419' => 'ल्याटिन अमेरिकी स्पेनी',
+ 'es-es' => 'युरोपेली स्पेनी',
+ 'es-mx' => 'मेक्सिकन स्पेनी',
+ 'esu' => 'केन्द्रीय युपिक',
+ 'et' => 'इस्टोनियन',
'eu' => 'बास्क',
+ 'ewo' => 'इवोन्डो',
+ 'ext' => 'एक्सट्रेमादुराली',
'fa' => 'फारसी',
- 'fi' => 'फिनिश',
+ 'fan' => 'फाङ',
+ 'fat' => 'फान्टी',
+ 'ff' => 'फुलाह',
+ 'fi' => 'फिनिस',
'fil' => 'फिलिपिनी',
- 'fj' => 'फिजियाली',
+ 'fj' => 'फिजियन',
'fo' => 'फारोज',
+ 'fon' => 'फोन',
'fr' => 'फ्रान्सेली',
- 'fy' => 'फ्रिजीयन',
- 'ga' => 'आइरिश',
+ 'fr-ca' => 'क्यानेडाली फ्रान्सेली',
+ 'fr-ch' => 'स्विस फ्रेन्च',
+ 'frc' => 'काहुन फ्रान्सेली',
+ 'frm' => 'मध्य फ्रान्सेली',
+ 'fro' => 'पुरातन फ्रान्सेली',
+ 'frp' => 'अर्पितान',
+ 'frr' => 'उत्तरी फ्रिजी',
+ 'frs' => 'पूर्वी फ्रिसियाली',
+ 'fur' => 'फ्रिउलियाली',
+ 'fy' => 'पश्चिमी फ्रिसियन',
+ 'ga' => 'आइरिस',
+ 'gaa' => 'गा',
'gag' => 'गगाउज',
- 'gd' => 'स्कट्स गाएलिक',
+ 'gan' => 'गान चिनियाँ',
+ 'gay' => 'गायो',
+ 'gba' => 'ग्बाया',
+ 'gd' => 'स्कटिस गाएलिक',
+ 'gez' => 'गिज',
+ 'gil' => 'गिल्बर्टी',
'gl' => 'गलिसियाली',
- 'gn' => 'गुजरानी',
+ 'glk' => 'गिलाकी',
+ 'gmh' => 'मध्य उच्च जर्मन',
+ 'gn' => 'गुवारानी',
+ 'goh' => 'पुरातन उच्च जर्मन',
+ 'gom' => 'गोवा कोन्कानी',
+ 'gon' => 'गोन्डी',
+ 'gor' => 'गोरोन्टालो',
+ 'got' => 'गोथिक',
+ 'grb' => 'ग्रेबो',
+ 'grc' => 'पुरातन ग्रिक',
'gsw' => 'स्वीस जर्मन',
'gu' => 'गुजराती',
+ 'gur' => 'फ्राफ्रा',
'guz' => 'गुसी',
'gv' => 'मान्क्स',
+ 'gwi' => 'गुइचिन',
'ha' => 'हाउसा',
+ 'hai' => 'हाइदा',
+ 'hak' => 'हक्का चिनियाँ',
'haw' => 'हवाइयन',
'he' => 'हिब्रु',
'hi' => 'हिन्दी',
- 'hr' => 'क्रोएशियाली',
+ 'hif' => 'फिजी हिन्दी',
+ 'hil' => 'हिलिगायनोन',
+ 'hit' => 'हिट्टिटे',
+ 'hmn' => 'हमोङ',
+ 'ho' => 'हिरी मोटु',
+ 'hr' => 'क्रोयसियाली',
'hsb' => 'माथिल्लो सोर्बियन',
- 'ht' => 'हैटियाली',
- 'hu' => 'हंग्रीयाली',
+ 'hsn' => 'जियाङ चिनियाँ',
+ 'ht' => 'हैटियाली क्रियोल',
+ 'hu' => 'हङ्गेरियाली',
+ 'hup' => 'हुपा',
'hy' => 'आर्मेनियाली',
+ 'hz' => 'हेरेरो',
'ia' => 'इन्टर्लिङ्गुआ',
+ 'iba' => 'इबान',
+ 'ibb' => 'इबिबियो',
'id' => 'इन्डोनेसियाली',
- 'ie' => 'अन्तरभाषी',
+ 'ie' => 'इन्टरलिङ्ग्वे',
'ig' => 'इग्बो',
'ii' => 'सिचुआन यि',
- 'is' => 'आइसल्यान्डिक',
- 'it' => 'इटालियन',
- 'iu' => 'लनुक्टिटुट',
+ 'ik' => 'इनुपिआक्',
+ 'ilo' => 'इयोको',
+ 'inh' => 'इन्गस',
+ 'io' => 'इडो',
+ 'is' => 'आइसल्यान्डियाली',
+ 'it' => 'इटालेली',
+ 'iu' => 'इनुक्टिटुट',
+ 'izh' => 'इन्ग्रियाली',
'ja' => 'जापानी',
- 'jgo' => 'गोम्बा',
+ 'jam' => 'जमैकाली क्रेओले अङ्ग्रेजी',
+ 'jbo' => 'लोज्बान',
+ 'jgo' => 'न्गोम्बा',
'jmc' => 'माचामे',
- 'jv' => 'जाभानिज',
+ 'jpr' => 'जुडियो-फारसी',
+ 'jrb' => 'जुडियो-अरबी',
+ 'jut' => 'जुटिस',
+ 'jv' => 'जाभानी',
'ka' => 'जर्जियाली',
+ 'kaa' => 'कारा-काल्पाक',
'kab' => 'काबिल',
+ 'kac' => 'काचिन',
+ 'kaj' => 'ज्जु',
'kam' => 'काम्बा',
+ 'kaw' => 'कावी',
+ 'kbd' => 'काबार्दियाली',
+ 'kbl' => 'कानेम्बु',
+ 'kcg' => 'टुआप',
'kde' => 'माकोन्डे',
'kea' => 'काबुभेर्डियानु',
+ 'ken' => 'केनयाङ',
+ 'kfo' => 'कोरो',
+ 'kg' => 'कोङ्गो',
+ 'kgp' => 'काइनगाङ',
+ 'kha' => 'खासी',
+ 'kho' => 'खोटानी',
'khq' => 'कोयरा चिनी',
+ 'khw' => 'खोवार',
'ki' => 'किकुयु',
+ 'kiu' => 'किर्मान्जकी',
+ 'kj' => 'कुआन्यामा',
'kk' => 'काजाख',
+ 'kkj' => 'काको',
'kl' => 'कालालिसुट',
'kln' => 'कालेन्जिन',
'km' => 'खमेर',
+ 'kmb' => 'किम्बुन्डु',
'kn' => 'कन्नाडा',
'ko' => 'कोरियाली',
'koi' => 'कोमी-पर्म्याक',
'kok' => 'कोन्कानी',
- 'ks' => 'काश्मीरी',
+ 'kos' => 'कोस्राली',
+ 'kpe' => 'क्पेल्ले',
+ 'kr' => 'कानुरी',
+ 'krc' => 'काराचाय-बाल्कर',
+ 'kri' => 'क्रिओ',
+ 'krj' => 'किनाराय-ए',
+ 'krl' => 'करेलियन',
+ 'kru' => 'कुरुख',
+ 'ks' => 'कास्मिरी',
'ksb' => 'शाम्बाला',
'ksf' => 'बाफिया',
- 'ku' => 'कुर्दिश',
- 'kw' => 'कोर्निश',
+ 'ksh' => 'कोलोग्नियाली',
+ 'ku' => 'कुर्दी',
+ 'kum' => 'कुमिक',
+ 'kut' => 'कुतेनाइ',
+ 'kv' => 'कोमी',
+ 'kw' => 'कोर्निस',
'ky' => 'किर्गिज',
'la' => 'ल्याटिन',
+ 'lad' => 'लाडिनो',
'lag' => 'लाङ्गी',
- 'lb' => 'लक्जेम्बर्गिस',
+ 'lah' => 'लाहन्डा',
+ 'lam' => 'लाम्बा',
+ 'lb' => 'लक्जेम्बर्गी',
+ 'lez' => 'लाज्घियाली',
+ 'lfn' => 'लिङ्गुवा फ्राङ्का नोभा',
'lg' => 'गान्डा',
- 'lkt' => 'लोकोता',
- 'ln' => 'लिंगाला',
+ 'li' => 'लिम्बुर्गी',
+ 'lij' => 'लिगुरियाली',
+ 'liv' => 'लिभोनियाली',
+ 'lkt' => 'लाकोता',
+ 'lmo' => 'लोम्बार्ड',
+ 'ln' => 'लिङ्गाला',
'lo' => 'लाओ',
+ 'lol' => 'मोङ्गो',
+ 'loz' => 'लोजी',
+ 'lrc' => 'उत्तरी लुरी',
'lt' => 'लिथुआनियाली',
+ 'ltg' => 'लाट्गाली',
'lu' => 'लुबा-काताङ्गा',
+ 'lua' => 'लुबा-लुलुआ',
+ 'lui' => 'लुइसेनो',
+ 'lun' => 'लुन्डा',
'luo' => 'लुओ',
+ 'lus' => 'मिजो',
'luy' => 'लुइया',
'lv' => 'लात्भियाली',
- 'mas' => 'मासाल',
+ 'lzh' => 'साहित्यिक चिनियाँ',
+ 'lzz' => 'लाज',
+ 'mad' => 'मादुरेसे',
+ 'maf' => 'माफा',
+ 'mag' => 'मगधी',
+ 'mai' => 'मैथिली',
+ 'mak' => 'माकासार',
+ 'man' => 'मान्दिङो',
+ 'mas' => 'मसाई',
+ 'mde' => 'माबा',
+ 'mdf' => 'मोक्ष',
+ 'mdr' => 'मन्दर',
+ 'men' => 'मेन्डे',
'mer' => 'मेरू',
'mfe' => 'मोरिसेन',
'mg' => 'मलागासी',
+ 'mga' => 'मध्य आयरिस',
'mgh' => 'माखुवा-मिट्टो',
'mgo' => 'मेटा',
+ 'mh' => 'मार्साली',
'mi' => 'माओरी',
- 'mk' => 'म्याकेडोनियन',
+ 'mic' => 'मिकमाक',
+ 'min' => 'मिनाङकाबाउ',
+ 'mk' => 'म्यासेडोनियन',
'ml' => 'मलयालम',
- 'mn' => 'मंगोल',
+ 'mn' => 'मङ्गोलियाली',
+ 'mnc' => 'मान्चु',
+ 'mni' => 'मनिपुरी',
'moh' => 'मोहक',
+ 'mos' => 'मोस्सी',
'mr' => 'मराठी',
- 'ms' => 'मलाया',
+ 'ms' => 'मलाय',
'mt' => 'माल्टिज',
'mua' => 'मुन्डाङ',
- 'my' => 'वर्मेली',
+ 'mul' => 'बहुभाषा',
+ 'mus' => 'क्रिक',
+ 'mwl' => 'मिरान्डी',
+ 'mwr' => 'माडवारी',
+ 'mwv' => 'मेन्टावाई',
+ 'my' => 'बर्मेली',
+ 'mye' => 'म्येने',
+ 'myv' => 'इर्ज्या',
+ 'mzn' => 'मजानडेरानी',
+ 'na' => 'नाउरू',
+ 'nan' => 'मिन नान चिनियाँ',
+ 'nap' => 'नेपोलिटान',
'naq' => 'नामा',
'nb' => 'नर्वेली बोकमाल',
- 'nd' => 'उत्तर नेडेबेले',
+ 'nd' => 'उत्तरी न्डेबेले',
+ 'nds' => 'तल्लो जर्मन',
+ 'nds-nl' => 'तल्लो साक्सन',
'ne' => 'नेपाली',
+ 'new' => 'नेवारी',
+ 'ng' => 'न्दोन्गा',
+ 'nia' => 'नियास',
+ 'niu' => 'निउएन',
+ 'njo' => 'अओ नागा',
'nl' => 'डच',
- 'nl-be' => 'फ्लेमिश',
+ 'nl-be' => 'फ्लेमिस',
'nmg' => 'क्वासियो',
'nn' => 'नर्वेली नाइनोर्स्क',
- 'no' => 'नर्वेजियाली',
+ 'nnh' => 'न्गिएम्बुन',
+ 'no' => 'नर्वेली',
+ 'nog' => 'नोगाइ',
+ 'non' => 'पुरानो नोर्से',
+ 'nov' => 'नोभियल',
'nqo' => 'नको',
+ 'nr' => 'दक्षिण न्देबेले',
+ 'nso' => 'उत्तरी सोथो',
'nus' => 'नुएर',
+ 'nv' => 'नाभाजो',
+ 'nwc' => 'परम्परागत नेवारी',
+ 'ny' => 'न्यान्जा',
+ 'nym' => 'न्यामवेजी',
'nyn' => 'न्यान्कोल',
+ 'nyo' => 'न्योरो',
+ 'nzi' => 'नजिमा',
'oc' => 'अक्सिटन',
+ 'oj' => 'ओजिब्वा',
'om' => 'ओरोमो',
- 'or' => 'ओरिया',
+ 'or' => 'उडिया',
+ 'os' => 'अोस्सेटिक',
+ 'osa' => 'ओसागे',
+ 'ota' => 'अटोमन तुर्की',
'pa' => 'पंजाबी',
- 'pl' => 'पोलिश',
- 'ps' => 'पाश्तो',
+ 'pag' => 'पाङ्गासिनान',
+ 'pal' => 'पाहलावी',
+ 'pam' => 'पामपाङ्गा',
+ 'pap' => 'पापियामेन्तो',
+ 'pau' => 'पालाउवाली',
+ 'pcd' => 'पिकार्ड',
+ 'pcm' => 'नाइजेरियाली पिड्जिन',
+ 'pdc' => 'पेन्सिलभानियाली जर्मन',
+ 'peo' => 'पुरातन फारसी',
+ 'pfl' => 'पालाटिन जर्मन',
+ 'phn' => 'फोनिसियाली',
+ 'pi' => 'पाली',
+ 'pl' => 'पोलिस',
+ 'pms' => 'पिएडमोन्तेसे',
+ 'pnt' => 'पोन्टिक',
+ 'prg' => 'प्रसियाली',
+ 'pro' => 'पुरातन प्रोभेन्काल',
+ 'ps' => 'पास्तो',
'pt' => 'पोर्तुगी',
- 'pt-pt' => 'पोर्तुगी (युरोप)',
+ 'pt-br' => 'ब्राजिली पोर्तुगी',
+ 'pt-pt' => 'युरोपेली पोर्तुगी',
'qu' => 'क्वेचुवा',
'quc' => 'किचे',
- 'rm' => 'रोमानिश',
- 'rn' => 'रूण्डी',
+ 'qug' => 'चिम्बोराजो उच्चस्थान किचुआ',
+ 'raj' => 'राजस्थानी',
+ 'rap' => 'रापानुई',
+ 'rar' => 'रारोटोङ्गान',
+ 'rm' => 'रोमानिस',
+ 'rn' => 'रुन्डी',
'ro' => 'रोमानियाली',
- 'ro-md' => 'माल्डाभियन',
+ 'ro-md' => 'मोल्डाभियाली',
'rof' => 'रोम्बो',
- 'ru' => 'रूसी',
+ 'ru' => 'रसियाली',
+ 'rup' => 'अरोमानीयाली',
'rw' => 'किन्यारवान्डा',
'rwk' => 'र्‌वा',
'sa' => 'संस्कृत',
+ 'sad' => 'सान्डेअ',
+ 'sah' => 'साखा',
'saq' => 'साम्बुरू',
+ 'sat' => 'सान्ताली',
+ 'sba' => 'न्गामबाय',
'sbp' => 'साङ्गु',
+ 'sc' => 'सार्डिनियाली',
+ 'scn' => 'सिसिलियाली',
+ 'sco' => 'स्कट्स',
'sd' => 'सिन्धी',
+ 'sdh' => 'दक्षिणी कुर्दिश',
'se' => 'उत्तरी सामी',
'seh' => 'सेना',
'ses' => 'कोयराबोरो सेन्नी',
'sg' => 'साङ्गो',
+ 'sga' => 'पुरातन आयरीस',
'shi' => 'टाचेल्हिट',
- 'si' => 'सिन्हाला',
+ 'shn' => 'शान',
+ 'shu' => 'चाड अरबी',
+ 'si' => 'सिन्हाली',
'sk' => 'स्लोभाकियाली',
'sl' => 'स्लोभेनियाली',
+ 'sli' => 'तल्लो सिलेसियाली',
+ 'sm' => 'सामोआ',
'sma' => 'दक्षिणी सामी',
'smj' => 'लुले सामी',
'smn' => 'इनारी सामी',
'sms' => 'स्कोइट सामी',
'sn' => 'शोना',
+ 'snk' => 'सोनिन्के',
'so' => 'सोमाली',
- 'sq' => 'अल्बेनियन',
+ 'sq' => 'अल्बानियाली',
'sr' => 'सर्बियाली',
+ 'srn' => 'स्रानान टोङ्गो',
+ 'ss' => 'स्वाती',
+ 'ssy' => 'साहो',
+ 'st' => 'दक्षिणी सोथो',
'su' => 'सुडानी',
- 'sv' => 'स्विडिश',
+ 'suk' => 'सुकुमा',
+ 'sus' => 'सुसू',
+ 'sux' => 'सुमेरियाली',
+ 'sv' => 'स्विडिस',
'sw' => 'स्वाहिली',
- 'swc' => 'कोङ्गो स्वाहिली',
+ 'sw-cd' => 'कङ्गो स्वाहिली',
+ 'swb' => 'कोमोरी',
+ 'syc' => 'परम्परागत सिरियाक',
+ 'syr' => 'सिरियाक',
'ta' => 'तामिल',
'te' => 'तेलुगु',
+ 'tem' => 'टिम्ने',
'teo' => 'टेसो',
+ 'tet' => 'टेटुम',
'tg' => 'ताजिक',
'th' => 'थाई',
- 'ti' => 'तिग्रीन्या',
+ 'ti' => 'टिग्रिन्या',
+ 'tig' => 'टिग्रे',
'tk' => 'टर्कमेन',
'tlh' => 'क्लिङ्गन',
+ 'tn' => 'ट्स्वाना',
'to' => 'टोङ्गन',
+ 'tog' => 'न्यास टोङ्गा',
+ 'tpi' => 'टोक पिसिन',
'tr' => 'टर्किश',
+ 'trv' => 'टारोको',
+ 'ts' => 'ट्सोङ्गा',
'tt' => 'तातार',
+ 'ttt' => 'मुस्लिम टाट',
+ 'tum' => 'टुम्बुका',
+ 'tvl' => 'टुभालु',
'twq' => 'तासावाक',
+ 'ty' => 'टाहिटियन',
+ 'tyv' => 'टुभिनियाली',
'tzm' => 'केन्द्रीय एट्लास टामाजिघट',
+ 'udm' => 'उड्मुर्ट',
'ug' => 'उइघुर',
'uk' => 'युक्रेनी',
+ 'umb' => 'उम्बुन्डी',
'und' => 'अज्ञात भाषा',
'ur' => 'उर्दु',
'uz' => 'उज्बेकी',
'vai' => 'भाइ',
+ 've' => 'भेन्डा',
'vi' => 'भियतनामी',
+ 'vmf' => 'मुख्य-फ्राङ्कोनियाली',
+ 'vo' => 'भोलापिक',
'vun' => 'भुन्जो',
+ 'wa' => 'वाल्लुन',
+ 'wae' => 'वाल्सर',
+ 'wal' => 'वोलेट्टा',
+ 'war' => 'वारे',
+ 'wbp' => 'वार्ल्पिरी',
'wo' => 'वुलुफ',
+ 'xal' => 'काल्मिक',
'xh' => 'खोसा',
+ 'xmf' => 'मिनग्रेलियाली',
'xog' => 'सोगा',
+ 'yav' => 'याङ्बेन',
+ 'ybb' => 'येम्बा',
'yi' => 'यिद्दिस',
'yo' => 'योरूवा',
+ 'yrl' => 'न्हिनगातु',
+ 'yue' => 'क्यान्टोनिज',
+ 'zbl' => 'ब्लिससिम्बोल्स',
'zgh' => 'मानक मोरोक्कोन तामाजिघट',
'zh' => 'चिनियाँ',
'zh-hans' => 'सरलिकृत चिनियाँ',
'zh-hant' => 'परम्परागत चिनियाँ',
'zu' => 'जुलु',
+ 'zun' => 'जुनी',
'zxx' => 'भाषिक सामग्री छैन',
-);
+ 'zza' => 'जाजा',
+];
-$currencyNames = array(
+$currencyNames = [
'AED' => 'संयुक्त अरब एमिराट्स डिर्हाम',
'AFA' => 'अफ्गानी(१९२७–२००२)',
'AFN' => 'अफ्गान अफ्गानी',
@@ -248,12 +585,14 @@ $currencyNames = array(
'BSD' => 'बहामियाली डलर',
'BTN' => 'भुटानी एन्‌गुल्ट्रुम',
'BWP' => 'बोट्सवानान पुला',
- 'BYR' => 'बेलारूसी रूबल',
+ 'BYN' => 'बेलारूसी रूबल',
+ 'BYR' => 'बेलारूसी रूबल (2000–2016)',
'BZD' => 'वेलिज डलर',
'CAD' => 'क्यानाडियाली डलर',
'CDF' => 'कङ्गोली फ्रान्क',
'CHF' => 'स्विस् फ्रैङ्क',
'CLP' => 'चिलियन पेसो',
+ 'CNH' => 'चिनियाँ युआन(तटवर्ती)',
'CNY' => 'चिनिँया युआन',
'COP' => 'कोलम्वियन पेसो',
'CRC' => 'कोष्टारिकन कोलोन',
@@ -313,10 +652,11 @@ $currencyNames = array(
'MDL' => 'माल्डोभन लेउ',
'MGA' => 'मालागासी एरिआरी',
'MKD' => 'म्यासेडोनियाली डेनार',
- 'MMK' => 'म्यान्मा क्याट',
+ 'MMK' => 'म्यान्मार क्याट',
'MNT' => 'मङ्गोलियाली टुग्रिक',
'MOP' => 'माकानिज पटाका',
- 'MRO' => 'माउरिटानियानली औगुइया',
+ 'MRO' => 'माउरिटानियानली औगुइया (१९७३–२०१७)',
+ 'MRU' => 'माउरिटानियानली औगुइया',
'MUR' => 'माउरिटियन रूपी',
'MVR' => 'मालडिभियाली रूफियाँ',
'MWK' => 'मलाविअन क्वाचा',
@@ -331,7 +671,7 @@ $currencyNames = array(
'NZD' => 'न्यूजिल्याण्ड डलर',
'OMR' => 'ओमनी रियल',
'PAB' => 'पानामानियाली बाल्बोआ',
- 'PEN' => 'पेरूभियाली न्यूभो सोल',
+ 'PEN' => 'पेरूभियाली सोल',
'PGK' => 'पपुआ न्यू गिनियाली किना',
'PHP' => 'फिलिपिनी पेसो',
'PKR' => 'पाकिस्तानी रूपियाँ',
@@ -353,7 +693,8 @@ $currencyNames = array(
'SOS' => 'सोमाली शिलिङ',
'SRD' => 'सुरिनामिज डलर',
'SSP' => 'दक्षिण सुडानी पाउन्ड',
- 'STD' => 'साओ टोम र प्रिन्सिप डोब्रा',
+ 'STD' => 'साओ टोम र प्रिन्सिप डोब्रा (१९७७–२०१७)',
+ 'STN' => 'साओ टोम र प्रिन्सिप डोब्रा',
'SYP' => 'सिरियाली पाउन्ड',
'SZL' => 'स्वाजी लिलान्गेनी',
'THB' => 'थाई भाट',
@@ -370,7 +711,8 @@ $currencyNames = array(
'USD' => 'अमेरिकी डलर',
'UYU' => 'उरूगुवायाली पेसो',
'UZS' => 'उज्बेकिस्तान सोम',
- 'VEF' => 'भेनेजुएलन बोलिभर',
+ 'VEF' => 'भेनेजुएलन बोलिभर (२००८–२०१८)',
+ 'VES' => 'भेनेजुएलन बोलिभर-2',
'VND' => 'भियतनामी डङ्',
'VUV' => 'भानुआतू भातु',
'WST' => 'सामोआन ताला',
@@ -383,9 +725,9 @@ $currencyNames = array(
'ZAR' => 'दक्षिण अफ्रिकी र्‍यान्ड',
'ZMK' => 'जाम्बियाली क्वाचा (१९६८–२०१२)',
'ZMW' => 'जाम्बियाली क्वाचा',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'AED' => 'AED',
'AFN' => 'AFN',
'ALL' => 'ALL',
@@ -409,12 +751,14 @@ $currencySymbols = array(
'BSD' => 'BSD',
'BTN' => 'BTN',
'BWP' => 'BWP',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CA$',
'CDF' => 'CDF',
'CHF' => 'CHF',
'CLP' => 'CLP',
+ 'CNH' => 'CNH',
'CNY' => 'CN¥',
'COP' => 'COP',
'CRC' => 'CRC',
@@ -515,6 +859,7 @@ $currencySymbols = array(
'SRD' => 'SRD',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'Db',
'SYP' => 'SYP',
'SZL' => 'SZL',
'THB' => '฿',
@@ -542,37 +887,36 @@ $currencySymbols = array(
'YER' => 'YER',
'ZAR' => 'ZAR',
'ZMW' => 'ZMW',
-);
+];
-$countryNames = array(
- 'AC' => 'एस्केन्सन टापु',
+$countryNames = [
+ 'AC' => 'असेन्सन टापु',
'AD' => 'अन्डोर्रा',
'AE' => 'संयुक्त अरब इमिराट्स',
'AF' => 'अफगानिस्तान',
'AG' => 'एन्टिगुआ र बारबुडा',
'AI' => 'आङ्गुइला',
- 'AL' => 'अल्बानिया',
+ 'AL' => 'अल्बेनिया',
'AM' => 'आर्मेनिया',
- 'AN' => 'नेदरल्याण्ड्स एण्टिलिस',
'AO' => 'अङ्गोला',
- 'AQ' => 'अन्टारतिका',
+ 'AQ' => 'अन्टारटिका',
'AR' => 'अर्जेन्टिना',
'AS' => 'अमेरिकी समोआ',
'AT' => 'अष्ट्रिया',
'AU' => 'अष्ट्रेलिया',
- 'AW' => 'आरूबा',
+ 'AW' => 'अरुबा',
'AX' => 'अलान्ड टापुहरु',
'AZ' => 'अजरबैजान',
'BA' => 'बोस्निया एण्ड हर्जगोभिनिया',
'BB' => 'बार्बाडोस',
'BD' => 'बङ्गलादेश',
'BE' => 'बेल्जियम',
- 'BF' => 'बर्किना फासो',
+ 'BF' => 'बुर्किना फासो',
'BG' => 'बुल्गेरिया',
'BH' => 'बहराइन',
'BI' => 'बुरूण्डी',
'BJ' => 'बेनिन',
- 'BL' => 'सेन्ट बार्थालेमी',
+ 'BL' => 'सेन्ट बार्थेलेमी',
'BM' => 'बर्मुडा',
'BN' => 'ब्रुनाइ',
'BO' => 'बोलिभिया',
@@ -586,11 +930,11 @@ $countryNames = array(
'BZ' => 'बेलिज',
'CA' => 'क्यानाडा',
'CC' => 'कोकोस (किलिंग) टापुहरु',
- 'CD' => 'कोङ्गो-किन्शासा',
- 'CF' => 'केन्द्रीय अफ्रिकी गणतन्त्र',
- 'CG' => 'कोङ्गो - ब्राज्जाभिल्ले',
+ 'CD' => 'कङ्गो - किन्शासा',
+ 'CF' => 'मध्य अफ्रिकी गणतन्त्र',
+ 'CG' => 'कङ्गो ब्राजाभिल',
'CH' => 'स्विजरल्याण्ड',
- 'CI' => 'आइभरी कोस्ट',
+ 'CI' => 'कोट दिभोर',
'CK' => 'कुक टापुहरु',
'CL' => 'चिली',
'CM' => 'क्यामरून',
@@ -603,7 +947,7 @@ $countryNames = array(
'CW' => 'कुराकाओ',
'CX' => 'क्रिष्टमस टापु',
'CY' => 'साइप्रस',
- 'CZ' => 'चेक गणतन्त्र',
+ 'CZ' => 'चेकिया',
'DE' => 'जर्मनी',
'DG' => 'डियगो गार्सिया',
'DJ' => 'डिजिबुटी',
@@ -612,7 +956,7 @@ $countryNames = array(
'DO' => 'डोमिनिकन गणतन्त्र',
'DZ' => 'अल्जेरिया',
'EA' => 'सिउटा र मेलिला',
- 'EC' => 'इक्वडेर',
+ 'EC' => 'इक्वेडोर',
'EE' => 'इस्टोनिया',
'EG' => 'इजिप्ट',
'EH' => 'पश्चिमी साहारा',
@@ -620,14 +964,15 @@ $countryNames = array(
'ES' => 'स्पेन',
'ET' => 'इथियोपिया',
'EU' => 'युरोपियन युनियन',
- 'FI' => 'फिन्ल्याण्ड',
+ 'EZ' => 'युरोजोन',
+ 'FI' => 'फिनल्याण्ड',
'FJ' => 'फिजी',
'FK' => 'फकल्याण्ड टापुहरु',
'FM' => 'माइक्रोनेसिया',
- 'FO' => 'फारोर टापुहरु',
+ 'FO' => 'फारो टापुहरू',
'FR' => 'फ्रान्स',
'GA' => 'गावोन',
- 'GB' => 'बेलायत',
+ 'GB' => 'संयुक्त अधिराज्य',
'GD' => 'ग्रेनाडा',
'GE' => 'जर्जिया',
'GF' => 'फ्रान्सेली गायना',
@@ -639,14 +984,14 @@ $countryNames = array(
'GN' => 'गिनी',
'GP' => 'ग्वाडेलुप',
'GQ' => 'भू-मध्यीय गिनी',
- 'GR' => 'ग्रिस',
+ 'GR' => 'ग्रीस',
'GS' => 'दक्षिण जर्जिया र दक्षिण स्यान्डवीच टापुहरू',
'GT' => 'ग्वाटेमाला',
'GU' => 'गुवाम',
'GW' => 'गिनी-बिसाउ',
'GY' => 'गुयाना',
'HK' => 'हङकङ',
- 'HM' => 'हर्ड टापु एण्ड म्याकडोनाल्ड टापुहरु',
+ 'HM' => 'हर्ड टापु र म्याकडोनाल्ड टापुहरु',
'HN' => 'हन्डुरास',
'HR' => 'क्रोएशिया',
'HT' => 'हैटी',
@@ -655,7 +1000,7 @@ $countryNames = array(
'ID' => 'इन्डोनेशिया',
'IE' => 'आयरल्याण्ड',
'IL' => 'इजरायल',
- 'IM' => 'आइज्ले अफ् म्यान',
+ 'IM' => 'आइल अफ म्यान',
'IN' => 'भारत',
'IO' => 'बेलायती हिन्द महासागर क्षेत्र',
'IQ' => 'इराक',
@@ -663,11 +1008,11 @@ $countryNames = array(
'IS' => 'आइस्ल्याण्ड',
'IT' => 'इटाली',
'JE' => 'जर्सी',
- 'JM' => 'जमाइका',
+ 'JM' => 'जमैका',
'JO' => 'जोर्डन',
'JP' => 'जापान',
'KE' => 'केन्या',
- 'KG' => 'किर्गिस्थान',
+ 'KG' => 'किर्गिस्तान',
'KH' => 'कम्बोडिया',
'KI' => 'किरिबाटी',
'KM' => 'कोमोरोस',
@@ -680,51 +1025,51 @@ $countryNames = array(
'LA' => 'लाओस',
'LB' => 'लेबनन',
'LC' => 'सेन्ट लुसिया',
- 'LI' => 'लिएखटेन्स्टाइन',
+ 'LI' => 'लिकटेन्सटाइन',
'LK' => 'श्रीलङ्का',
'LR' => 'लाइबेरिया',
'LS' => 'लेसोथो',
- 'LT' => 'लिथुअनिया',
+ 'LT' => 'लिथुएनिया',
'LU' => 'लक्जेमबर्ग',
'LV' => 'लाट्भिया',
'LY' => 'लिबिया',
'MA' => 'मोरोक्को',
'MC' => 'मोनाको',
'MD' => 'माल्डोभा',
- 'ME' => 'मोन्टेनेग्रो',
+ 'ME' => 'मोन्टेनिग्रो',
'MF' => 'सेन्ट मार्टिन',
- 'MG' => 'मडागास्कर',
+ 'MG' => 'माडागास्कर',
'MH' => 'मार्शल टापुहरु',
- 'MK' => 'म्याकेडोनिया',
+ 'MK' => 'म्यासेडोनिया',
'ML' => 'माली',
'MM' => 'म्यान्मार (बर्मा)',
'MN' => 'मङ्गोलिया',
- 'MO' => 'मकावो',
+ 'MO' => 'मकाउ',
'MP' => 'उत्तरी मारिआना टापु',
'MQ' => 'मार्टिनिक',
'MR' => 'माउरिटानिया',
'MS' => 'मोन्टसेर्राट',
'MT' => 'माल्टा',
- 'MU' => 'माउरिटस',
+ 'MU' => 'मौरिसियस',
'MV' => 'माल्दिभ्स',
'MW' => 'मालावी',
'MX' => 'मेक्सिको',
'MY' => 'मलेसिया',
'MZ' => 'मोजाम्बिक',
'NA' => 'नामिबिया',
- 'NC' => 'नयाँ कालेडोनिया',
+ 'NC' => 'न्यु क्यालेडोनिया',
'NE' => 'नाइजर',
'NF' => 'नोरफोल्क टापु',
'NG' => 'नाइजेरिया',
'NI' => 'निकारागुवा',
- 'NL' => 'नेदरल्याण्ड्स',
+ 'NL' => 'नेदरल्याण्ड',
'NO' => 'नर्वे',
'NP' => 'नेपाल',
'NR' => 'नाउरू',
'NU' => 'नियुइ',
'NZ' => 'न्युजिल्याण्ड',
'OM' => 'ओमन',
- 'PA' => 'पनामा',
+ 'PA' => 'प्यानामा',
'PE' => 'पेरू',
'PF' => 'फ्रान्सेली पोलिनेसिया',
'PG' => 'पपुआ न्यू गाइनिया',
@@ -741,7 +1086,7 @@ $countryNames = array(
'QA' => 'कतार',
'QO' => 'बाह्य ओसनिया',
'RE' => 'रियुनियन',
- 'RO' => 'रोमानिया',
+ 'RO' => 'रोमेनिया',
'RS' => 'सर्बिया',
'RU' => 'रूस',
'RW' => 'रवाण्डा',
@@ -757,10 +1102,10 @@ $countryNames = array(
'SK' => 'स्लोभाकिया',
'SL' => 'सिएर्रा लिओन',
'SM' => 'सान् मारिनो',
- 'SN' => 'सेनेगाल',
+ 'SN' => 'सेनेगल',
'SO' => 'सोमालिया',
'SR' => 'सुरिनेम',
- 'SS' => 'दक्षिणी सुडान',
+ 'SS' => 'दक्षिण सुडान',
'ST' => 'साओ टोमे र प्रिन्सिप',
'SV' => 'एल् साल्भाडोर',
'SX' => 'सिन्ट मार्टेन',
@@ -785,28 +1130,31 @@ $countryNames = array(
'TZ' => 'तान्जानिया',
'UA' => 'युक्रेन',
'UG' => 'युगाण्डा',
- 'UM' => 'संयुक्त राज्य बाह्य टापुहरु',
+ 'UM' => 'संयुक्त राज्यका बाह्य टापुहरु',
+ 'UN' => 'यूएन',
'US' => 'अमेरिका',
'UY' => 'उरूग्वे',
'UZ' => 'उज्बेकिस्तान',
'VA' => 'भेटिकन सिटी',
'VC' => 'सेन्ट भिन्सेन्ट र ग्रेनाडिन्स',
'VE' => 'भेनेजुएला',
- 'VG' => 'बेलायती भर्जिन टापुहरु',
+ 'VG' => 'बेलायती भर्जिन टापुहरू',
'VI' => 'संयुक्त राज्य भर्जिन टापुहरु',
'VN' => 'भिएतनाम',
'VU' => 'भानुआतु',
'WF' => 'वालिस र फुटुना',
'WS' => 'सामोआ',
- 'XK' => 'कोसोवो',
+ 'XK' => 'कोसोभो',
'YE' => 'येमेन',
'YT' => 'मायोट्ट',
'ZA' => 'दक्षिण अफ्रिका',
'ZM' => 'जाम्बिया',
- 'ZW' => 'जिम्बाबे',
-);
+ 'ZW' => 'जिम्बाबवे',
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-one' => '{0} शताब्दी',
+ 'century-other' => '{0} शताब्दी',
'day-future-one' => '{0} दिनमा',
'day-future-other' => '{0} दिनमा',
'day-narrow-future-one' => '{0} दिनमा',
@@ -821,6 +1169,18 @@ $timeUnits = array(
'day-short-future-other' => '{0} दिनमा',
'day-short-past-one' => '{0} दिन पहिले',
'day-short-past-other' => '{0} दिन पहिले',
+ 'fri-future-one' => '{0} शुक्रबारमा',
+ 'fri-future-other' => '{0} शुक्रबारहरूमा',
+ 'fri-narrow-future-one' => '{0} शुक्रबारमा',
+ 'fri-narrow-future-other' => '{0} शुक्रबारहरूमा',
+ 'fri-narrow-past-one' => '{0} शुक्रबार पहिले',
+ 'fri-narrow-past-other' => '{0} शुक्रबारहरू पहिले',
+ 'fri-past-one' => '{0} शुक्रबार पहिले',
+ 'fri-past-other' => '{0} शुक्रबारहरू पहिले',
+ 'fri-short-future-one' => '{0} शुक्रबारमा',
+ 'fri-short-future-other' => '{0} शुक्रबारहरूमा',
+ 'fri-short-past-one' => '{0} शुक्रबार पहिले',
+ 'fri-short-past-other' => '{0} शुक्रबारहरू पहिले',
'hour-future-one' => '{0} घण्टामा',
'hour-future-other' => '{0} घण्टामा',
'hour-narrow-future-one' => '{0} घण्टामा',
@@ -835,12 +1195,16 @@ $timeUnits = array(
'hour-short-future-other' => '{0} घण्टामा',
'hour-short-past-one' => '{0} घण्टा पहिले',
'hour-short-past-other' => '{0} घण्टा पहिले',
- 'microsecond-one' => '{0}माइक्रोसेकेण्ड',
- 'microsecond-other' => '{0}माइक्रोसेकेण्ड',
- 'millisecond-one' => '{0} मिली सेकेण्ड',
- 'millisecond-other' => '{0} मिली सेकेण्ड',
+ 'microsecond-one' => '{0} माइक्रोसेकेन्ड',
+ 'microsecond-other' => '{0} माइक्रोसेकेन्ड',
+ 'millisecond-one' => '{0} मिली सेकेन्ड',
+ 'millisecond-other' => '{0} मिली सेकेन्ड',
'minute-future-one' => '{0} मिनेटमा',
'minute-future-other' => '{0} मिनेटमा',
+ 'minute-narrow-future-one' => '{0} मिनेटमा',
+ 'minute-narrow-future-other' => '{0} मिनेटमा',
+ 'minute-narrow-past-one' => '{0} मिनेट पहिले',
+ 'minute-narrow-past-other' => '{0} मिनेट पहिले',
'minute-one' => '{0} मिनेट',
'minute-other' => '{0} मिनेट',
'minute-past-one' => '{0} मिनेट पहिले',
@@ -849,6 +1213,18 @@ $timeUnits = array(
'minute-short-future-other' => '{0} मिनेटमा',
'minute-short-past-one' => '{0} मिनेट पहिले',
'minute-short-past-other' => '{0} मिनेट पहिले',
+ 'mon-future-one' => '{0} सोमबारहरूमा',
+ 'mon-future-other' => '{0} सोमबारहरूमा',
+ 'mon-narrow-future-one' => '{0} सोमबारहरूमा',
+ 'mon-narrow-future-other' => '{0} सोमबारहरूमा',
+ 'mon-narrow-past-one' => '{0} सोमबार पहिले',
+ 'mon-narrow-past-other' => '{0}सोमबारहरू पहिले',
+ 'mon-past-one' => '{0} सोमबार पहिले',
+ 'mon-past-other' => '{0} सोमबारहरू पहिले',
+ 'mon-short-future-one' => '{0} सोमबारहरूमा',
+ 'mon-short-future-other' => '{0} सोमबारहरूमा',
+ 'mon-short-past-one' => '{0} सोमबार पहिले',
+ 'mon-short-past-other' => '{0} सोमबारहरू पहिले',
'month-future-one' => '{0} महिनामा',
'month-future-other' => '{0} महिनामा',
'month-narrow-future-one' => '{0} महिनामा',
@@ -863,8 +1239,8 @@ $timeUnits = array(
'month-short-future-other' => '{0} महिनामा',
'month-short-past-one' => '{0} महिना पहिले',
'month-short-past-other' => '{0} महिना पहिले',
- 'nanosecond-one' => '{0}न्यानोसेकेण्ड',
- 'nanosecond-other' => '{0}न्यानोसेकेण्ड',
+ 'nanosecond-one' => '{0} न्यानोसेकेन्ड',
+ 'nanosecond-other' => '{0} न्यानोसेकेन्ड',
'quarter-future-one' => '+{0} सत्रमा',
'quarter-future-other' => '{0}सत्रमा',
'quarter-narrow-future-one' => '{0}सत्रमा',
@@ -875,20 +1251,82 @@ $timeUnits = array(
'quarter-past-other' => '{0}सत्र अघि',
'quarter-short-future-one' => '{0}सत्रमा',
'quarter-short-future-other' => '{0}सत्रमा',
- 'second-future-one' => '{0} सेकेण्डमा',
- 'second-future-other' => '{0} सेकेण्डमा',
- 'second-narrow-future-one' => '{0} सेकेण्डमा',
- 'second-narrow-future-other' => '{0} सेकेण्डमा',
- 'second-narrow-past-one' => '{0} सेकेण्ड पहिले',
- 'second-narrow-past-other' => '{0} सेकेण्ड पहिले',
- 'second-one' => '{0} सेकेण्ड',
- 'second-other' => '{0} सेकेण्ड',
- 'second-past-one' => '{0} सेकेण्ड पहिले',
- 'second-past-other' => '{0} सेकेण्ड पहिले',
- 'second-short-future-one' => '{0} सेकेण्डमा',
- 'second-short-future-other' => '{0} सेकेण्डमा',
- 'second-short-past-one' => '{0} सेकेण्ड पहिले',
- 'second-short-past-other' => '{0} सेकेण्ड पहिले',
+ 'quarter-short-past-one' => '{0}सत्र अघि',
+ 'quarter-short-past-other' => '{0}सत्र अघि',
+ 'sat-future-one' => '{0} शनिबारमा',
+ 'sat-future-other' => '{0} शनिबारहरूमा',
+ 'sat-narrow-future-one' => '{0} शनिबारमा',
+ 'sat-narrow-future-other' => '{0} शनिबारहरूमा',
+ 'sat-narrow-past-one' => '{0} शनिबार पहिले',
+ 'sat-narrow-past-other' => '{0} शनिबारहरू पहिले',
+ 'sat-past-one' => '{0} शनिबार पहिले',
+ 'sat-past-other' => '{0} शनिबारहरू पहिले',
+ 'sat-short-future-one' => '{0} शनिबारमा',
+ 'sat-short-future-other' => '{0} शनिबारहरूमा',
+ 'sat-short-past-one' => '{0} शनिबार पहिले',
+ 'sat-short-past-other' => '{0} शनिबारहरू पहिले',
+ 'second-future-one' => '{0} सेकेन्डमा',
+ 'second-future-other' => '{0} सेकेन्डमा',
+ 'second-narrow-future-one' => '{0} सेकेन्डमा',
+ 'second-narrow-future-other' => '{0} सेकेन्डमा',
+ 'second-narrow-past-one' => '{0} सेकेन्ड पहिले',
+ 'second-narrow-past-other' => '{0} सेकेन्ड पहिले',
+ 'second-one' => '{0} सेकेन्ड',
+ 'second-other' => '{0} सेकेन्ड',
+ 'second-past-one' => '{0} सेकेन्ड पहिले',
+ 'second-past-other' => '{0} सेकेन्ड पहिले',
+ 'second-short-future-one' => '{0} सेकेन्डमा',
+ 'second-short-future-other' => '{0} सेकेन्डमा',
+ 'second-short-past-one' => '{0} सेकेन्ड पहिले',
+ 'second-short-past-other' => '{0} सेकेन्ड पहिले',
+ 'sun-future-one' => '{0} आइतबारमा',
+ 'sun-future-other' => '{0} आइतबारहरूमा',
+ 'sun-narrow-future-one' => '{0} आइतबारहरूमा',
+ 'sun-narrow-future-other' => '{0} आइतबारहरूमा',
+ 'sun-narrow-past-one' => '{0} आइतबारहरू पहिले',
+ 'sun-narrow-past-other' => '{0} आइतबारहरू पहिले',
+ 'sun-past-one' => '{0}आइतबार पहिले',
+ 'sun-past-other' => '{0} आइतबारहरू पहिले',
+ 'sun-short-future-one' => '{0} आइतबारहरूमा',
+ 'sun-short-future-other' => '{0} आइतबारहरूमा',
+ 'sun-short-past-one' => '{0} आइतबारहरू पहिले',
+ 'sun-short-past-other' => '{0} आइतबारहरू पहिले',
+ 'thu-future-one' => '{0} बिहिबारमा',
+ 'thu-future-other' => '{0} बिहिबारहरूमा',
+ 'thu-narrow-future-one' => '{0} बिहिबारमा',
+ 'thu-narrow-future-other' => '{0} बिहिबारहरूमा',
+ 'thu-narrow-past-one' => '{0} बिहिबार पहिले',
+ 'thu-narrow-past-other' => '{0} बिहिबारहरू पहिले',
+ 'thu-past-one' => '{0} बिहिबार पहिले',
+ 'thu-past-other' => '{0} बिहिबारहरू पहिले',
+ 'thu-short-future-one' => '{0} बिहिबारमा',
+ 'thu-short-future-other' => '{0} बिहिबारहरूमा',
+ 'thu-short-past-one' => '{0} बिहिबार पहिले',
+ 'thu-short-past-other' => '{0} बिहिबारहरू पहिले',
+ 'tue-future-one' => '{0} मंगलबारमा',
+ 'tue-future-other' => '{0} मंगलबारहरूमा',
+ 'tue-narrow-future-one' => '{0} मंगलबारमा',
+ 'tue-narrow-future-other' => '{0} मंगलबारहरूमा',
+ 'tue-narrow-past-one' => '{0} मंगलबार पहिले',
+ 'tue-narrow-past-other' => '{0} मंगलबारहरू पहिले',
+ 'tue-past-one' => '{0} मंगलबार पहिले',
+ 'tue-past-other' => '{0} मंगलबारहरू पहिले',
+ 'tue-short-future-one' => '{0} मंगलबारमा',
+ 'tue-short-future-other' => '{0} मंगलबारहरूमा',
+ 'tue-short-past-one' => '{0} मंगलबार पहिले',
+ 'tue-short-past-other' => '{0} मंगलबारहरू पहिले',
+ 'wed-future-one' => '{0} बुधबारमा',
+ 'wed-future-other' => '{0} बुधबारमाहरूमा',
+ 'wed-narrow-future-one' => '{0} बुधबारमा',
+ 'wed-narrow-future-other' => '{0} बुधबारमाहरूमा',
+ 'wed-narrow-past-one' => '{0} बुधबार पहिले',
+ 'wed-narrow-past-other' => '{0} बुधबारहरू पहिले',
+ 'wed-past-one' => '{0} बुधबार पहिले',
+ 'wed-past-other' => '{0} बुधबारहरू पहिले',
+ 'wed-short-future-one' => '{0} बुधबारमा',
+ 'wed-short-future-other' => '{0} बुधबारमाहरूमा',
+ 'wed-short-past-one' => '{0} बुधबार पहिले',
+ 'wed-short-past-other' => '{0} बुधबारहरू पहिले',
'week-future-one' => '{0} हप्तामा',
'week-future-other' => '{0} हप्तामा',
'week-narrow-future-one' => '{0} हप्तामा',
@@ -917,4 +1355,4 @@ $timeUnits = array(
'year-short-future-other' => '{0} वर्षमा',
'year-short-past-one' => '{0} वर्ष अघि',
'year-short-past-other' => '{0} वर्ष अघि',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesNl.php b/MLEB/cldr/CldrNames/CldrNamesNl.php
index 9c9eaa25..d319ca3e 100644
--- a/MLEB/cldr/CldrNames/CldrNamesNl.php
+++ b/MLEB/cldr/CldrNames/CldrNamesNl.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'Afar',
'ab' => 'Abchazisch',
'ace' => 'Atjehs',
@@ -12,7 +12,7 @@ $languageNames = array(
'af' => 'Afrikaans',
'afh' => 'Afrihili',
'agq' => 'Aghem',
- 'ain' => 'Ainu',
+ 'ain' => 'Aino',
'ak' => 'Akan',
'akk' => 'Akkadisch',
'akz' => 'Alabama',
@@ -24,12 +24,12 @@ $languageNames = array(
'ang' => 'Oudengels',
'anp' => 'Angika',
'ar' => 'Arabisch',
- 'ar-001' => 'modern standaard Arabisch',
'arc' => 'Aramees',
'arn' => 'Mapudungun',
'aro' => 'Araona',
'arp' => 'Arapaho',
'arq' => 'Algerijns Arabisch',
+ 'ars' => 'Nadjdi-Arabisch',
'arw' => 'Arawak',
'ary' => 'Marokkaans Arabisch',
'arz' => 'Egyptisch Arabisch',
@@ -42,7 +42,6 @@ $languageNames = array(
'awa' => 'Awadhi',
'ay' => 'Aymara',
'az' => 'Azerbeidzjaans',
- 'azb' => 'Zuid-Azerbeidzjaans Arabisch',
'ba' => 'Basjkiers',
'bal' => 'Beloetsji',
'ban' => 'Balinees',
@@ -59,6 +58,7 @@ $languageNames = array(
'bfd' => 'Bafut',
'bfq' => 'Badaga',
'bg' => 'Bulgaars',
+ 'bgn' => 'Westers Beloetsji',
'bho' => 'Bhojpuri',
'bi' => 'Bislama',
'bik' => 'Bikol',
@@ -106,6 +106,7 @@ $languageNames = array(
'cps' => 'Capiznon',
'cr' => 'Cree',
'crh' => 'Krim-Tataars',
+ 'crs' => 'Seychellencreools',
'cs' => 'Tsjechisch',
'csb' => 'Kasjoebisch',
'cu' => 'Kerkslavisch',
@@ -116,8 +117,6 @@ $languageNames = array(
'dar' => 'Dargwa',
'dav' => 'Taita',
'de' => 'Duits',
- 'de-at' => 'Oostenrijks Duits',
- 'de-ch' => 'Zwitsers Hoogduits',
'del' => 'Delaware',
'den' => 'Slavey',
'dgr' => 'Dogrib',
@@ -142,16 +141,9 @@ $languageNames = array(
'el' => 'Grieks',
'elx' => 'Elamitisch',
'en' => 'Engels',
- 'en-au' => 'Australisch Engels',
- 'en-ca' => 'Canadees Engels',
- 'en-gb' => 'Brits Engels',
- 'en-us' => 'Amerikaans Engels',
'enm' => 'Middelengels',
'eo' => 'Esperanto',
'es' => 'Spaans',
- 'es-419' => 'Latijns-Amerikaans Spaans',
- 'es-es' => 'Europees Spaans',
- 'es-mx' => 'Mexicaans Spaans',
'esu' => 'Yupik',
'et' => 'Estisch',
'eu' => 'Baskisch',
@@ -168,8 +160,6 @@ $languageNames = array(
'fo' => 'Faeröers',
'fon' => 'Fon',
'fr' => 'Frans',
- 'fr-ca' => 'Canadees Frans',
- 'fr-ch' => 'Zwitsers Frans',
'frc' => 'Cajun-Frans',
'frm' => 'Middelfrans',
'fro' => 'Oudfrans',
@@ -181,7 +171,7 @@ $languageNames = array(
'ga' => 'Iers',
'gaa' => 'Ga',
'gag' => 'Gagaoezisch',
- 'gan' => 'Gan',
+ 'gan' => 'Ganyu',
'gay' => 'Gayo',
'gba' => 'Gbaya',
'gbz' => 'Zoroastrisch Dari',
@@ -317,7 +307,9 @@ $languageNames = array(
'ln' => 'Lingala',
'lo' => 'Laotiaans',
'lol' => 'Mongo',
+ 'lou' => 'Louisiana-Creools',
'loz' => 'Lozi',
+ 'lrc' => 'Noordelijk Luri',
'lt' => 'Litouws',
'ltg' => 'Letgaals',
'lu' => 'Luba-Katanga',
@@ -379,6 +371,7 @@ $languageNames = array(
'nb' => 'Noors - Bokmål',
'nd' => 'Noord-Ndebele',
'nds' => 'Nedersaksisch',
+ 'nds-nl' => 'Nederduits',
'ne' => 'Nepalees',
'new' => 'Newari',
'ng' => 'Ndonga',
@@ -386,7 +379,6 @@ $languageNames = array(
'niu' => 'Niueaans',
'njo' => 'Ao Naga',
'nl' => 'Nederlands',
- 'nl-be' => 'Vlaams',
'nmg' => 'Ngumba',
'nn' => 'Noors - Nynorsk',
'nnh' => 'Ngiemboon',
@@ -419,6 +411,7 @@ $languageNames = array(
'pap' => 'Papiaments',
'pau' => 'Palaus',
'pcd' => 'Picardisch',
+ 'pcm' => 'Nigeriaans Pidgin',
'pdc' => 'Pennsylvania-Duits',
'pdt' => 'Plautdietsch',
'peo' => 'Oudperzisch',
@@ -433,8 +426,6 @@ $languageNames = array(
'pro' => 'Oudprovençaals',
'ps' => 'Pasjtoe',
'pt' => 'Portugees',
- 'pt-br' => 'Braziliaans Portugees',
- 'pt-pt' => 'Europees Portugees',
'qu' => 'Quechua',
'quc' => 'K’iche’',
'qug' => 'Kichwa',
@@ -470,6 +461,7 @@ $languageNames = array(
'sco' => 'Schots',
'sd' => 'Sindhi',
'sdc' => 'Sassarees',
+ 'sdh' => 'Pahlavani',
'se' => 'Noord-Samisch',
'see' => 'Seneca',
'seh' => 'Sena',
@@ -513,7 +505,6 @@ $languageNames = array(
'sv' => 'Zweeds',
'sw' => 'Swahili',
'swb' => 'Shimaore',
- 'swc' => 'Congo Swahili',
'syc' => 'Klassiek Syrisch',
'syr' => 'Syrisch',
'szl' => 'Silezisch',
@@ -525,7 +516,7 @@ $languageNames = array(
'ter' => 'Tereno',
'tet' => 'Tetun',
'tg' => 'Tadzjieks',
- 'th' => 'Thais',
+ 'th' => 'Thai',
'ti' => 'Tigrinya',
'tig' => 'Tigre',
'tiv' => 'Tiv',
@@ -535,7 +526,7 @@ $languageNames = array(
'tl' => 'Tagalog',
'tlh' => 'Klingon',
'tli' => 'Tlingit',
- 'tly' => 'Talisch',
+ 'tly' => 'Talysh',
'tmh' => 'Tamashek',
'tn' => 'Tswana',
'to' => 'Tongaans',
@@ -570,7 +561,7 @@ $languageNames = array(
'vep' => 'Wepsisch',
'vi' => 'Vietnamees',
'vls' => 'West-Vlaams',
- 'vmf' => 'Mainfränkisch',
+ 'vmf' => 'Opperfrankisch',
'vo' => 'Volapük',
'vot' => 'Votisch',
'vro' => 'Võro',
@@ -580,6 +571,7 @@ $languageNames = array(
'wal' => 'Wolaytta',
'war' => 'Waray',
'was' => 'Washo',
+ 'wbp' => 'Warlpiri',
'wo' => 'Wolof',
'wuu' => 'Wuyu',
'xal' => 'Kalmuks',
@@ -601,15 +593,13 @@ $languageNames = array(
'zen' => 'Zenaga',
'zgh' => 'Standaard Marokkaanse Tamazight',
'zh' => 'Chinees',
- 'zh-hans' => 'vereenvoudigd Chinees',
- 'zh-hant' => 'traditioneel Chinees',
'zu' => 'Zoeloe',
'zun' => 'Zuni',
'zxx' => 'geen linguïstische inhoud',
'zza' => 'Zaza',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'ADP' => 'Andorrese peseta',
'AED' => 'Verenigde Arabische Emiraten-dirham',
'AFA' => 'Afghani (1927–2002)',
@@ -656,7 +646,7 @@ $currencyNames = array(
'BRC' => 'Braziliaanse cruzado',
'BRE' => 'Braziliaanse cruzeiro (1990–1993)',
'BRL' => 'Braziliaanse real',
- 'BRN' => 'Braziliaanse cruzado novo',
+ 'BRN' => 'Braziliaanse nieuwe cruzado (1989–1990)',
'BRR' => 'Braziliaanse cruzeiro',
'BRZ' => 'Braziliaanse cruzeiro (1942–1967)',
'BSD' => 'Bahamaanse dollar',
@@ -664,7 +654,8 @@ $currencyNames = array(
'BUK' => 'Birmese kyat',
'BWP' => 'Botswaanse pula',
'BYB' => 'Wit-Russische nieuwe roebel (1994–1999)',
- 'BYR' => 'Wit-Russische roebel',
+ 'BYN' => 'Wit-Russische roebel',
+ 'BYR' => 'Wit-Russische roebel (2000–2016)',
'BZD' => 'Belizaanse dollar',
'CAD' => 'Canadese dollar',
'CDF' => 'Congolese frank',
@@ -674,8 +665,9 @@ $currencyNames = array(
'CLE' => 'Chileense escudo',
'CLF' => 'Chileense unidades de fomento',
'CLP' => 'Chileense peso',
+ 'CNH' => 'Chinese renminbi (offshore)',
'CNX' => 'dollar van de Chinese Volksbank',
- 'CNY' => 'Chinese yuan renminbi',
+ 'CNY' => 'Chinese yuan',
'COP' => 'Colombiaanse peso',
'COU' => 'Unidad de Valor Real',
'CRC' => 'Costa Ricaanse colon',
@@ -713,7 +705,7 @@ $currencyNames = array(
'GHS' => 'Ghanese cedi',
'GIP' => 'Gibraltarees pond',
'GMD' => 'Gambiaanse dalasi',
- 'GNF' => 'Guinese franc',
+ 'GNF' => 'Guinese frank',
'GNS' => 'Guinese syli',
'GQE' => 'Equatoriaal-Guinese ekwele guineana',
'GRD' => 'Griekse drachme',
@@ -750,7 +742,7 @@ $currencyNames = array(
'KRO' => 'Oude Zuid-Koreaanse won (1945–1953)',
'KRW' => 'Zuid-Koreaanse won',
'KWD' => 'Koeweitse dinar',
- 'KYD' => 'Caymaneilandse dollar',
+ 'KYD' => 'Kaaimaneilandse dollar',
'KZT' => 'Kazachse tenge',
'LAK' => 'Laotiaanse kip',
'LBP' => 'Libanees pond',
@@ -778,7 +770,8 @@ $currencyNames = array(
'MMK' => 'Myanmarese kyat',
'MNT' => 'Mongoolse tugrik',
'MOP' => 'Macause pataca',
- 'MRO' => 'Mauritaanse ouguiya',
+ 'MRO' => 'Mauritaanse ouguiya (1973–2017)',
+ 'MRU' => 'Mauritaanse ouguiya',
'MTL' => 'Maltese lire',
'MTP' => 'Maltees pond',
'MUR' => 'Mauritiaanse roepie',
@@ -803,8 +796,8 @@ $currencyNames = array(
'OMR' => 'Omaanse rial',
'PAB' => 'Panamese balboa',
'PEI' => 'Peruaanse inti',
- 'PEN' => 'Peruaanse nieuwe sol',
- 'PES' => 'Peruaanse sol',
+ 'PEN' => 'Peruaanse sol',
+ 'PES' => 'Peruaanse sol (1863–1965)',
'PGK' => 'Papoea-Nieuw-Guinese kina',
'PHP' => 'Filipijnse peso',
'PKR' => 'Pakistaanse roepie',
@@ -836,7 +829,8 @@ $currencyNames = array(
'SRD' => 'Surinaamse dollar',
'SRG' => 'Surinaamse gulden',
'SSP' => 'Zuid-Soedanees pond',
- 'STD' => 'Santomese dobra',
+ 'STD' => 'Santomese dobra (1977–2017)',
+ 'STN' => 'Santomese dobra',
'SUR' => 'Sovjet-roebel',
'SVC' => 'Salvadoraanse colón',
'SYP' => 'Syrisch pond',
@@ -866,9 +860,10 @@ $currencyNames = array(
'UYU' => 'Uruguayaanse peso',
'UZS' => 'Oezbeekse sum',
'VEB' => 'Venezolaanse bolivar (1871–2008)',
- 'VEF' => 'Venezolaanse bolivar',
+ 'VEF' => 'Venezolaanse bolivar (2008–2018)',
+ 'VES' => 'Venezolaanse bolivar',
'VND' => 'Vietnamese dong',
- 'VNN' => 'Oude Vietnamese dong (1978–1985)',
+ 'VNN' => 'Vietnamese dong (1978–1985)',
'VUV' => 'Vanuatuaanse vatu',
'WST' => 'Samoaanse tala',
'XAF' => 'CFA-frank',
@@ -885,7 +880,7 @@ $currencyNames = array(
'XFU' => 'Franse UIC-franc',
'XOF' => 'CFA-franc BCEAO',
'XPD' => 'Palladium',
- 'XPF' => 'CFP-franc',
+ 'XPF' => 'CFP-frank',
'XPT' => 'Platina',
'XRE' => 'RINET-fondsen',
'XSU' => 'Sucre',
@@ -907,9 +902,9 @@ $currencyNames = array(
'ZWD' => 'Zimbabwaanse dollar',
'ZWL' => 'Zimbabwaanse dollar (2009)',
'ZWR' => 'Zimbabwaanse dollar (2008)',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'ADP' => 'ADP',
'AED' => 'AED',
'AFA' => 'AFA',
@@ -964,6 +959,7 @@ $currencySymbols = array(
'BUK' => 'BUK',
'BWP' => 'BWP',
'BYB' => 'BYB',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'C$',
@@ -974,6 +970,7 @@ $currencySymbols = array(
'CLE' => 'CLE',
'CLF' => 'CLF',
'CLP' => 'CLP',
+ 'CNH' => 'CNH',
'CNX' => 'CNX',
'CNY' => 'CN¥',
'COP' => 'COP',
@@ -1079,6 +1076,7 @@ $currencySymbols = array(
'MNT' => 'MNT',
'MOP' => 'MOP',
'MRO' => 'MRO',
+ 'MRU' => 'MRU',
'MTL' => 'MTL',
'MTP' => 'MTP',
'MUR' => 'MUR',
@@ -1137,6 +1135,7 @@ $currencySymbols = array(
'SRG' => 'SRG',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'STN',
'SUR' => 'SUR',
'SVC' => 'SVC',
'SYP' => 'SYP',
@@ -1167,6 +1166,7 @@ $currencySymbols = array(
'UZS' => 'UZS',
'VEB' => 'VEB',
'VEF' => 'VEF',
+ 'VES' => 'VES',
'VND' => '₫',
'VNN' => 'VNN',
'VUV' => 'VUV',
@@ -1207,9 +1207,9 @@ $currencySymbols = array(
'ZWD' => 'ZWD',
'ZWL' => 'ZWL',
'ZWR' => 'ZWR',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'Ascension',
'AD' => 'Andorra',
'AE' => 'Verenigde Arabische Emiraten',
@@ -1218,7 +1218,6 @@ $countryNames = array(
'AI' => 'Anguilla',
'AL' => 'Albanië',
'AM' => 'Armenië',
- 'AN' => 'Nederlandse Antillen',
'AO' => 'Angola',
'AQ' => 'Antarctica',
'AR' => 'Argentinië',
@@ -1247,7 +1246,7 @@ $countryNames = array(
'BT' => 'Bhutan',
'BV' => 'Bouveteiland',
'BW' => 'Botswana',
- 'BY' => 'Wit-Rusland',
+ 'BY' => 'Belarus',
'BZ' => 'Belize',
'CA' => 'Canada',
'CC' => 'Cocoseilanden',
@@ -1285,6 +1284,7 @@ $countryNames = array(
'ES' => 'Spanje',
'ET' => 'Ethiopië',
'EU' => 'Europese Unie',
+ 'EZ' => 'eurozone',
'FI' => 'Finland',
'FJ' => 'Fiji',
'FK' => 'Falklandeilanden',
@@ -1322,7 +1322,7 @@ $countryNames = array(
'IL' => 'Israël',
'IM' => 'Isle of Man',
'IN' => 'India',
- 'IO' => 'Britse Gebieden in de Indische Oceaan',
+ 'IO' => 'Brits Indische Oceaanterritorium',
'IQ' => 'Irak',
'IR' => 'Iran',
'IS' => 'IJsland',
@@ -1340,7 +1340,7 @@ $countryNames = array(
'KP' => 'Noord-Korea',
'KR' => 'Zuid-Korea',
'KW' => 'Koeweit',
- 'KY' => 'Caymaneilanden',
+ 'KY' => 'Kaaimaneilanden',
'KZ' => 'Kazachstan',
'LA' => 'Laos',
'LB' => 'Libanon',
@@ -1434,7 +1434,7 @@ $countryNames = array(
'TA' => 'Tristan da Cunha',
'TC' => 'Turks- en Caicoseilanden',
'TD' => 'Tsjaad',
- 'TF' => 'Franse Zuidelijke Gebieden',
+ 'TF' => 'Franse Gebieden in de zuidelijke Indische Oceaan',
'TG' => 'Togo',
'TH' => 'Thailand',
'TJ' => 'Tadzjikistan',
@@ -1451,6 +1451,7 @@ $countryNames = array(
'UA' => 'Oekraïne',
'UG' => 'Oeganda',
'UM' => 'Kleine afgelegen eilanden van de Verenigde Staten',
+ 'UN' => 'VN',
'US' => 'VS',
'UY' => 'Uruguay',
'UZ' => 'Oezbekistan',
@@ -1469,9 +1470,11 @@ $countryNames = array(
'ZA' => 'Zuid-Afrika',
'ZM' => 'Zambia',
'ZW' => 'Zimbabwe',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-one' => '{0} eeuw',
+ 'century-other' => '{0} eeuwen',
'day-future-one' => 'over {0} dag',
'day-future-other' => 'over {0} dagen',
'day-narrow-future-one' => 'over {0} dag',
@@ -1486,6 +1489,18 @@ $timeUnits = array(
'day-short-future-other' => 'over {0} dgn',
'day-short-past-one' => '{0} dag geleden',
'day-short-past-other' => '{0} dgn geleden',
+ 'fri-future-one' => 'over {0} vrijdag',
+ 'fri-future-other' => 'over {0} vrijdagen',
+ 'fri-narrow-future-one' => 'over {0} vr',
+ 'fri-narrow-future-other' => 'over {0} vr',
+ 'fri-narrow-past-one' => '{0} vr geleden',
+ 'fri-narrow-past-other' => '{0} vr geleden',
+ 'fri-past-one' => '{0} vrijdag geleden',
+ 'fri-past-other' => '{0} vrijdagen geleden',
+ 'fri-short-future-one' => 'over {0} vrij.',
+ 'fri-short-future-other' => 'over {0} vrij.',
+ 'fri-short-past-one' => '{0} vrij. geleden',
+ 'fri-short-past-other' => '{0} vrij. geleden',
'hour-future-one' => 'over {0} uur',
'hour-future-other' => 'over {0} uur',
'hour-narrow-future-one' => 'over {0} uur',
@@ -1518,6 +1533,18 @@ $timeUnits = array(
'minute-short-future-other' => 'over {0} min.',
'minute-short-past-one' => '{0} min. geleden',
'minute-short-past-other' => '{0} min. geleden',
+ 'mon-future-one' => 'over {0} maandag',
+ 'mon-future-other' => 'over {0} maandagen',
+ 'mon-narrow-future-one' => 'over {0} ma',
+ 'mon-narrow-future-other' => 'over {0} ma',
+ 'mon-narrow-past-one' => '{0} ma geleden',
+ 'mon-narrow-past-other' => '{0} ma geleden',
+ 'mon-past-one' => '{0} maandag geleden',
+ 'mon-past-other' => '{0} maandagen geleden',
+ 'mon-short-future-one' => 'over {0} maan.',
+ 'mon-short-future-other' => 'over {0} maan.',
+ 'mon-short-past-one' => '{0} maan. geleden',
+ 'mon-short-past-other' => '{0} maan. geleden',
'month-future-one' => 'over {0} maand',
'month-future-other' => 'over {0} maanden',
'month-narrow-future-one' => 'over {0} maand',
@@ -1536,7 +1563,7 @@ $timeUnits = array(
'nanosecond-other' => '{0} nanoseconden',
'quarter-future-one' => 'over {0} kwartaal',
'quarter-future-other' => 'over {0} kwartalen',
- 'quarter-narrow-future-one' => 'over {0} kwartaal',
+ 'quarter-narrow-future-one' => 'over {0} kw.',
'quarter-narrow-future-other' => 'over {0} kwartalen',
'quarter-narrow-past-one' => '{0} kwartaal geleden',
'quarter-narrow-past-other' => '{0} kwartalen geleden',
@@ -1546,6 +1573,18 @@ $timeUnits = array(
'quarter-short-future-other' => 'over {0} kwartalen',
'quarter-short-past-one' => '{0} kwartaal geleden',
'quarter-short-past-other' => '{0} kwartalen geleden',
+ 'sat-future-one' => 'over {0} zaterdag',
+ 'sat-future-other' => 'over {0} zaterdagen',
+ 'sat-narrow-future-one' => 'over {0} za',
+ 'sat-narrow-future-other' => 'over {0} za',
+ 'sat-narrow-past-one' => '{0} za geleden',
+ 'sat-narrow-past-other' => '{0} za geleden',
+ 'sat-past-one' => '{0} zaterdag geleden',
+ 'sat-past-other' => '{0} zaterdagen geleden',
+ 'sat-short-future-one' => 'over {0} zater.',
+ 'sat-short-future-other' => 'over {0} zater.',
+ 'sat-short-past-one' => '{0} zater. geleden',
+ 'sat-short-past-other' => '{0} zater. geleden',
'second-future-one' => 'over {0} seconde',
'second-future-other' => 'over {0} seconden',
'second-narrow-future-one' => 'over {0} sec.',
@@ -1560,6 +1599,54 @@ $timeUnits = array(
'second-short-future-other' => 'over {0} sec.',
'second-short-past-one' => '{0} sec. geleden',
'second-short-past-other' => '{0} sec. geleden',
+ 'sun-future-one' => 'over {0} zondag',
+ 'sun-future-other' => 'over {0} zondagen',
+ 'sun-narrow-future-one' => 'over {0} zo',
+ 'sun-narrow-future-other' => 'over {0} zo',
+ 'sun-narrow-past-one' => '{0} zo geleden',
+ 'sun-narrow-past-other' => '{0} zo geleden',
+ 'sun-past-one' => '{0} zondag geleden',
+ 'sun-past-other' => '{0} zondagen geleden',
+ 'sun-short-future-one' => 'over {0} zon.',
+ 'sun-short-future-other' => 'over {0} zon.',
+ 'sun-short-past-one' => '{0} zon. geleden',
+ 'sun-short-past-other' => '{0} zon. geleden',
+ 'thu-future-one' => 'over {0} donderdag',
+ 'thu-future-other' => 'over {0} donderdagen',
+ 'thu-narrow-future-one' => 'over {0} do',
+ 'thu-narrow-future-other' => 'over {0} do',
+ 'thu-narrow-past-one' => '{0} do geleden',
+ 'thu-narrow-past-other' => '{0} do geleden',
+ 'thu-past-one' => '{0} donderdag geleden',
+ 'thu-past-other' => '{0} donderdagen geleden',
+ 'thu-short-future-one' => 'over {0} donder.',
+ 'thu-short-future-other' => 'over {0} donder.',
+ 'thu-short-past-one' => '{0} donder. geleden',
+ 'thu-short-past-other' => '{0} donder. geleden',
+ 'tue-future-one' => 'over {0} dinsdag',
+ 'tue-future-other' => 'over {0} dinsdagen',
+ 'tue-narrow-future-one' => 'over {0} di',
+ 'tue-narrow-future-other' => 'over {0} di',
+ 'tue-narrow-past-one' => '{0} di geleden',
+ 'tue-narrow-past-other' => '{0} di geleden',
+ 'tue-past-one' => '{0} dinsdag geleden',
+ 'tue-past-other' => '{0} dinsdagen geleden',
+ 'tue-short-future-one' => 'over {0} dins.',
+ 'tue-short-future-other' => 'over {0} dins.',
+ 'tue-short-past-one' => '{0} dins. geleden',
+ 'tue-short-past-other' => '{0} dins. geleden',
+ 'wed-future-one' => 'over {0} woensdag',
+ 'wed-future-other' => 'over {0} woensdagen',
+ 'wed-narrow-future-one' => 'over {0} wo',
+ 'wed-narrow-future-other' => 'over {0} wo',
+ 'wed-narrow-past-one' => '{0} wo geleden',
+ 'wed-narrow-past-other' => '{0} wo geleden',
+ 'wed-past-one' => '{0} woensdag geleden',
+ 'wed-past-other' => '{0} woensdagen geleden',
+ 'wed-short-future-one' => 'over {0} woens.',
+ 'wed-short-future-other' => 'over {0} woens.',
+ 'wed-short-past-one' => '{0} woens. geleden',
+ 'wed-short-past-other' => '{0} woens. geleden',
'week-future-one' => 'over {0} week',
'week-future-other' => 'over {0} weken',
'week-narrow-future-one' => 'over {0} week',
@@ -1588,4 +1675,4 @@ $timeUnits = array(
'year-short-future-other' => 'over {0} jaar',
'year-short-past-one' => '{0} jaar geleden',
'year-short-past-other' => '{0} jaar geleden',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesNl_be.php b/MLEB/cldr/CldrNames/CldrNamesNl_be.php
deleted file mode 100644
index e1bf57ef..00000000
--- a/MLEB/cldr/CldrNames/CldrNamesNl_be.php
+++ /dev/null
@@ -1,6 +0,0 @@
-<?php
-
-$countryNames = array(
- 'MV' => 'Malediven',
- 'SB' => 'Salomoneilanden',
-);
diff --git a/MLEB/cldr/CldrNames/CldrNamesNn.php b/MLEB/cldr/CldrNames/CldrNamesNn.php
index e3c37b7a..d80d79ea 100644
--- a/MLEB/cldr/CldrNames/CldrNamesNn.php
+++ b/MLEB/cldr/CldrNames/CldrNamesNn.php
@@ -1,12 +1,12 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'afar',
'ab' => 'abkhasisk',
'ace' => 'achinesisk',
'ach' => 'acoli',
'ada' => 'adangme',
- 'ady' => 'adyghe',
+ 'ady' => 'adygeisk',
'ae' => 'avestisk',
'af' => 'afrikaans',
'afh' => 'afrihili',
@@ -15,21 +15,22 @@ $languageNames = array(
'ak' => 'akan',
'akk' => 'akkadisk',
'ale' => 'aleutisk',
- 'alt' => 'sør-altai',
+ 'alt' => 'sør-altaj',
'am' => 'amharisk',
'an' => 'aragonsk',
'ang' => 'gammalengelsk',
'anp' => 'angika',
'ar' => 'arabisk',
+ 'ar-001' => 'moderne standardarabisk',
'arc' => 'arameisk',
- 'arn' => 'araukansk',
+ 'arn' => 'mapudungun',
'arp' => 'arapaho',
'arw' => 'arawak',
- 'as' => 'assamisk',
+ 'as' => 'assamesisk',
'asa' => 'asu (Tanzania)',
'ast' => 'asturisk',
'av' => 'avarisk',
- 'awa' => 'awadhi',
+ 'awa' => 'avadhi',
'ay' => 'aymara',
'az' => 'aserbajdsjansk',
'ba' => 'basjkirsk',
@@ -60,13 +61,14 @@ $languageNames = array(
'byn' => 'blin',
'ca' => 'katalansk',
'cad' => 'caddo',
- 'car' => 'karibisk',
+ 'car' => 'carib',
'cch' => 'atsam',
'ce' => 'tsjetsjensk',
- 'ceb' => 'cebuansk',
+ 'ceb' => 'cebuano',
+ 'cgg' => 'kiga',
'ch' => 'chamorro',
'chb' => 'chibcha',
- 'chg' => 'chagatai',
+ 'chg' => 'tsjagataisk',
'chk' => 'chuukesisk',
'chm' => 'mari',
'chn' => 'chinook',
@@ -74,10 +76,12 @@ $languageNames = array(
'chp' => 'chipewiansk',
'chr' => 'cherokee',
'chy' => 'cheyenne',
+ 'ckb' => 'sorani',
'co' => 'korsikansk',
'cop' => 'koptisk',
'cr' => 'cree',
'crh' => 'krimtatarisk',
+ 'crs' => 'seselwa (fransk-kreolsk)',
'cs' => 'tsjekkisk',
'csb' => 'kasjubisk',
'cu' => 'kyrkjeslavisk',
@@ -86,9 +90,8 @@ $languageNames = array(
'da' => 'dansk',
'dak' => 'dakota',
'dar' => 'dargwa',
+ 'dav' => 'taita',
'de' => 'tysk',
- 'de-at' => 'austerriksk tysk',
- 'de-ch' => 'sveitsisk høgtysk',
'del' => 'delaware',
'den' => 'slavej',
'dgr' => 'dogrib',
@@ -97,56 +100,50 @@ $languageNames = array(
'doi' => 'dogri',
'dsb' => 'lågsorbisk',
'dua' => 'duala',
- 'dum' => 'mellumnederlandsk',
+ 'dum' => 'mellomnederlandsk',
'dv' => 'divehi',
'dyo' => 'jola-fonyi',
'dyu' => 'dyula',
'dz' => 'dzongkha',
- 'ebu' => 'kiembu',
+ 'dzg' => 'dazaga',
+ 'ebu' => 'embu',
'ee' => 'ewe',
'efi' => 'efik',
'egy' => 'gammalegyptisk',
'eka' => 'ekajuk',
'el' => 'gresk',
- 'elx' => 'elamittisk',
+ 'elx' => 'elamite',
'en' => 'engelsk',
- 'en-au' => 'australisk engelsk',
- 'en-ca' => 'kanadisk engelsk',
'en-gb' => 'britisk engelsk',
- 'en-us' => 'engelsk (amerikansk)',
'enm' => 'mellomengelsk',
'eo' => 'esperanto',
'es' => 'spansk',
- 'es-419' => 'latinamerikansk spansk',
- 'es-es' => 'iberisk spansk',
'et' => 'estisk',
'eu' => 'baskisk',
'ewo' => 'ewondo',
'fa' => 'persisk',
'fan' => 'fang',
'fat' => 'fanti',
- 'ff' => 'fulani',
+ 'ff' => 'fulfulde',
'fi' => 'finsk',
'fil' => 'filippinsk',
'fj' => 'fijiansk',
'fo' => 'færøysk',
'fon' => 'fon',
'fr' => 'fransk',
- 'fr-ca' => 'kanadisk fransk',
- 'fr-ch' => 'sveitsisk fransk',
'frm' => 'mellomfransk',
'fro' => 'gammalfransk',
'frr' => 'nordfrisisk',
'frs' => 'austfrisisk',
- 'fur' => 'friuliansk',
+ 'fur' => 'friulisk',
'fy' => 'vestfrisisk',
'ga' => 'irsk',
'gaa' => 'ga',
'gay' => 'gayo',
'gba' => 'gbaya',
'gd' => 'skotsk-gælisk',
- 'gez' => 'ges',
- 'gil' => 'kiribatisk',
+ 'gez' => 'geez',
+ 'gil' => 'gilbertese',
'gl' => 'galicisk',
'gmh' => 'mellomhøgtysk',
'gn' => 'guarani',
@@ -158,6 +155,7 @@ $languageNames = array(
'grc' => 'gammalgresk',
'gsw' => 'sveitsertysk',
'gu' => 'gujarati',
+ 'guz' => 'gusii',
'gv' => 'manx',
'gwi' => 'gwichin',
'ha' => 'hausa',
@@ -192,28 +190,33 @@ $languageNames = array(
'iu' => 'inuktitut',
'ja' => 'japansk',
'jbo' => 'lojban',
+ 'jgo' => 'ngomba',
+ 'jmc' => 'machame',
'jpr' => 'jødepersisk',
'jrb' => 'jødearabisk',
'jv' => 'javanesisk',
'ka' => 'georgisk',
'kaa' => 'karakalpakisk',
- 'kab' => 'kabylsk',
+ 'kab' => 'kabyle',
'kac' => 'kachin',
'kaj' => 'jju',
'kam' => 'kamba',
'kaw' => 'kawi',
'kbd' => 'kabardisk',
'kcg' => 'tyap',
- 'kea' => 'kapverdisk',
+ 'kde' => 'makonde',
+ 'kea' => 'kabuverdianu',
'kfo' => 'koro',
'kg' => 'kikongo',
'kha' => 'khasi',
'kho' => 'khotanesisk',
+ 'khq' => 'koyra chiini',
'ki' => 'kikuyu',
'kj' => 'kuanyama',
'kk' => 'kasakhisk',
'kkj' => 'kako',
- 'kl' => 'kalaallisut; grønlandsk',
+ 'kl' => 'grønlandsk (kalaallisut)',
+ 'kln' => 'kalenjin',
'km' => 'khmer',
'kmb' => 'kimbundu',
'kn' => 'kannada',
@@ -226,7 +229,9 @@ $languageNames = array(
'krl' => 'karelsk',
'kru' => 'kurukh',
'ks' => 'kasjmiri',
+ 'ksb' => 'shambala',
'ksf' => 'bafia',
+ 'ksh' => 'kølnsk',
'ku' => 'kurdisk',
'kum' => 'kumyk',
'kut' => 'kutenai',
@@ -234,17 +239,20 @@ $languageNames = array(
'kw' => 'kornisk',
'ky' => 'kirgisisk',
'la' => 'latin',
- 'lad' => 'ladinsk',
+ 'lad' => 'ladino',
+ 'lag' => 'langi',
'lah' => 'lahnda',
'lam' => 'lamba',
'lb' => 'luxemburgsk',
'lez' => 'lezghian',
'lg' => 'ganda',
'li' => 'limburgisk',
+ 'lkt' => 'lakota',
'ln' => 'lingala',
'lo' => 'laotisk',
'lol' => 'mongo',
'loz' => 'lozi',
+ 'lrc' => 'nord-lurisk',
'lt' => 'litauisk',
'lu' => 'luba-katanga',
'lua' => 'luba-lulua',
@@ -263,8 +271,12 @@ $languageNames = array(
'mdf' => 'moksha',
'mdr' => 'mandar',
'men' => 'mende',
+ 'mer' => 'meru',
+ 'mfe' => 'morisyen',
'mg' => 'madagassisk',
'mga' => 'mellomirsk',
+ 'mgh' => 'Makhuwa-Meetto',
+ 'mgo' => 'meta’',
'mh' => 'marshallesisk',
'mi' => 'maori',
'mic' => 'micmac',
@@ -285,21 +297,25 @@ $languageNames = array(
'mwl' => 'mirandesisk',
'mwr' => 'marwari',
'my' => 'burmesisk',
- 'myv' => 'erzya',
+ 'myv' => 'erzia',
+ 'mzn' => 'mazanderani',
'na' => 'nauru',
'nap' => 'napolitansk',
+ 'naq' => 'nama',
'nb' => 'bokmål',
'nd' => 'nord-ndebele',
'nds' => 'lågtysk',
+ 'nds-nl' => 'lågsaksisk',
'ne' => 'nepalsk',
'new' => 'newari',
'ng' => 'ndonga',
'nia' => 'nias',
- 'niu' => 'niueansk',
+ 'niu' => 'niuisk',
'nl' => 'nederlandsk',
'nl-be' => 'flamsk',
'nmg' => 'kwasio',
'nn' => 'nynorsk',
+ 'nnh' => 'ngiemboon',
'no' => 'norsk',
'nog' => 'nogai',
'non' => 'gammalnorsk',
@@ -317,7 +333,7 @@ $languageNames = array(
'oc' => 'oksitansk',
'oj' => 'ojibwa',
'om' => 'oromo',
- 'or' => 'oriya',
+ 'or' => 'odia',
'os' => 'ossetisk',
'osa' => 'osage',
'ota' => 'ottomansk tyrkisk',
@@ -327,17 +343,18 @@ $languageNames = array(
'pam' => 'pampanga',
'pap' => 'papiamento',
'pau' => 'palauisk',
+ 'pcm' => 'nigeriansk pidgin',
'peo' => 'gammalpersisk',
'phn' => 'fønikisk',
'pi' => 'pali',
'pl' => 'polsk',
'pon' => 'ponapisk',
+ 'prg' => 'prøyssisk',
'pro' => 'gammalprovençalsk',
'ps' => 'pashto',
'pt' => 'portugisisk',
- 'pt-br' => 'brasiliansk portugisisk',
- 'pt-pt' => 'europeisk portugisisk',
'qu' => 'quechua',
+ 'quc' => 'k’iche',
'raj' => 'rajasthani',
'rap' => 'rapanui',
'rar' => 'rarotongansk',
@@ -348,25 +365,30 @@ $languageNames = array(
'rof' => 'rombo',
'rom' => 'romani',
'ru' => 'russisk',
- 'rup' => 'aromansk',
+ 'rup' => 'arumensk',
'rw' => 'kinjarwanda',
'rwk' => 'rwa',
'sa' => 'sanskrit',
'sad' => 'sandawe',
- 'sah' => 'jakutsk',
+ 'sah' => 'sakha',
'sam' => 'samaritansk arameisk',
+ 'saq' => 'samburu',
'sas' => 'sasak',
'sat' => 'santali',
+ 'sba' => 'ngambay',
'sbp' => 'sangu',
'sc' => 'sardinsk',
'scn' => 'siciliansk',
'sco' => 'skotsk',
'sd' => 'sindhi',
'se' => 'nordsamisk',
+ 'seh' => 'sena',
'sel' => 'selkupisk',
+ 'ses' => 'Koyraboro Senni',
'sg' => 'sango',
'sga' => 'gammalirsk',
'sh' => 'serbokroatisk',
+ 'shi' => 'tachelhit',
'shn' => 'shan',
'si' => 'singalesisk',
'sid' => 'sidamo',
@@ -386,6 +408,7 @@ $languageNames = array(
'srn' => 'sranan tongo',
'srr' => 'serer',
'ss' => 'swati',
+ 'ssy' => 'saho',
'st' => 'sørsotho',
'su' => 'sundanesisk',
'suk' => 'sukuma',
@@ -399,9 +422,10 @@ $languageNames = array(
'ta' => 'tamil',
'te' => 'telugu',
'tem' => 'temne',
+ 'teo' => 'teso',
'ter' => 'tereno',
'tet' => 'tetum',
- 'tg' => 'tatsjikisk',
+ 'tg' => 'tadsjikisk',
'th' => 'thai',
'ti' => 'tigrinja',
'tig' => 'tigré',
@@ -413,10 +437,11 @@ $languageNames = array(
'tli' => 'tlingit',
'tmh' => 'tamasjek',
'tn' => 'tswana',
- 'to' => 'tonga (Tonga-øyane)',
+ 'to' => 'tongansk',
'tog' => 'tonga (Nyasa)',
'tpi' => 'tok pisin',
'tr' => 'tyrkisk',
+ 'trv' => 'taroko',
'ts' => 'tsonga',
'tsi' => 'tsimshian',
'tt' => 'tatarisk',
@@ -426,6 +451,7 @@ $languageNames = array(
'twq' => 'tasawaq',
'ty' => 'tahitisk',
'tyv' => 'tuvinisk',
+ 'tzm' => 'sentral-tamazight',
'udm' => 'udmurt',
'ug' => 'uigurisk',
'uga' => 'ugaritisk',
@@ -439,16 +465,20 @@ $languageNames = array(
'vi' => 'vietnamesisk',
'vo' => 'volapyk',
'vot' => 'votisk',
+ 'vun' => 'vunjo',
'wa' => 'vallonsk',
- 'wal' => 'walamo',
+ 'wae' => 'walsertysk',
+ 'wal' => 'wolaytta',
'war' => 'waray',
'was' => 'washo',
'wo' => 'wolof',
- 'xal' => 'kalmyk',
+ 'xal' => 'kalmykisk',
'xh' => 'xhosa',
+ 'xog' => 'soga',
'yao' => 'yao',
'yap' => 'yapesisk',
'yav' => 'yangben',
+ 'ybb' => 'yemba',
'yi' => 'jiddisk',
'yo' => 'joruba',
'yue' => 'kantonesisk',
@@ -456,6 +486,7 @@ $languageNames = array(
'zap' => 'zapotec',
'zbl' => 'blissymbol',
'zen' => 'zenaga',
+ 'zgh' => 'standard marokkansk tamazight',
'zh' => 'kinesisk',
'zh-hans' => 'forenkla kinesisk',
'zh-hant' => 'tradisjonell kinesisk',
@@ -463,289 +494,446 @@ $languageNames = array(
'zun' => 'zuni',
'zxx' => 'utan språkleg innhald',
'zza' => 'zaza',
-);
+];
-$currencyNames = array(
- 'ADP' => 'andorransk peseta',
- 'AED' => 'UAE dirham',
+$currencyNames = [
+ 'ADP' => 'andorranske peseta',
+ 'AED' => 'emiratarabiske dirham',
'AFA' => 'afghani (1927–2002)',
- 'AFN' => 'afghani',
- 'ALL' => 'albansk lek',
- 'AMD' => 'armensk dram',
- 'ANG' => 'nederlansk antillegylden',
- 'AOA' => 'angolsk kwanza',
- 'AOK' => 'angolsk kwanza (1977–1990)',
- 'AON' => 'angolsk ny kwanza (1990–2000)',
- 'AOR' => 'angolsk kwanza reajustado (1995–1999)',
- 'ARA' => 'argentisk austral',
- 'ARP' => 'argentinsk peso (1983–1985)',
- 'ARS' => 'argentinsk peso',
- 'ATS' => 'austerriksk schilling',
- 'AUD' => 'australsk dollar',
- 'AWG' => 'arubisk gylden',
- 'AZM' => 'aserbaijansk manat',
- 'AZN' => 'aserbajdsjansk manat',
- 'BAD' => 'bosnisk-hercegovinsk dinar',
- 'BAM' => 'bosnisk-hercegovinsk mark (konvertibel)',
- 'BBD' => 'barbadisk dollar',
- 'BDT' => 'bangladeshisk taka',
- 'BEC' => 'belgisk franc (konvertibel)',
- 'BEF' => 'belgisk franc',
- 'BEL' => 'belgisk franc (finansiell)',
+ 'AFN' => 'afghanske afghani',
+ 'ALL' => 'albanske lek',
+ 'AMD' => 'armenske dram',
+ 'ANG' => 'nederlandske antillegylden',
+ 'AOA' => 'angolanske kwanza',
+ 'AOK' => 'angolske kwanza (1977–1990)',
+ 'AON' => 'angolske nye kwanza (1990–2000)',
+ 'AOR' => 'angolske kwanza reajustado (1995–1999)',
+ 'ARA' => 'argentiske austral',
+ 'ARP' => 'argentinske peso (1983–1985)',
+ 'ARS' => 'argentinske pesos',
+ 'ATS' => 'austerrikske schilling',
+ 'AUD' => 'australske dollar',
+ 'AWG' => 'arubiske floriner',
+ 'AZM' => 'aserbaijanske manat',
+ 'AZN' => 'aserbajdsjanske manat',
+ 'BAD' => 'bosnisk-hercegovinske dinarar',
+ 'BAM' => 'bosnisk-hercegovinske konvertible mark',
+ 'BBD' => 'barbadiske dollar',
+ 'BDT' => 'bangladeshiske taka',
+ 'BEC' => 'belgiske franc (konvertibel)',
+ 'BEF' => 'belgiske franc',
+ 'BEL' => 'belgiske franc (finansiell)',
'BGL' => 'bulgarsk hard lev',
- 'BGN' => 'bulgarsk ny lev',
- 'BHD' => 'bahrainsk dinar',
- 'BIF' => 'burundisk franc',
- 'BMD' => 'bermudisk dollar',
- 'BND' => 'bruneisk dollar',
- 'BOB' => 'boliviano',
- 'BOP' => 'bolivisk peso',
- 'BOV' => 'bolivisk mvdol',
+ 'BGN' => 'bulgarske lev',
+ 'BHD' => 'bahrainske dinarar',
+ 'BIF' => 'burundiske franc',
+ 'BMD' => 'bermudiske dollar',
+ 'BND' => 'bruneiske dollar',
+ 'BOB' => 'bolivianske boliviano',
+ 'BOP' => 'boliviske peso',
+ 'BOV' => 'boliviske mvdol',
'BRB' => 'brasiliansk cruzeiro novo (1967–1986)',
- 'BRC' => 'brasiliansk cruzado',
- 'BRE' => 'brasiliansk cruzeiro (1990–1993)',
- 'BRL' => 'brasiliansk real',
- 'BRN' => 'brasiliansk cruzado novo',
- 'BRR' => 'brasiliansk cruzeiro',
- 'BSD' => 'bahamisk dollar',
- 'BTN' => 'bhutansk ngultrum',
+ 'BRC' => 'brasilianske cruzado',
+ 'BRE' => 'brasilianske cruzeiro (1990–1993)',
+ 'BRL' => 'brasilianske real',
+ 'BRN' => 'brasilianske cruzado novo',
+ 'BRR' => 'brasilianske cruzeiro',
+ 'BSD' => 'bahamanske dollar',
+ 'BTN' => 'bhutanske ngultrum',
'BUK' => 'burmesisk kyat',
- 'BWP' => 'botswansk pula',
- 'BYB' => 'kviterussisk ny rubel (1994–1999)',
- 'BYR' => 'kviterussisk rubel',
- 'BZD' => 'belizisk dollar',
- 'CAD' => 'kanadisk dollar',
- 'CDF' => 'kongolesisk franc',
+ 'BWP' => 'botswanske pula',
+ 'BYB' => 'kviterussiske nye rublar (1994–1999)',
+ 'BYN' => 'kviterussiske rublar',
+ 'BYR' => 'kviterussiske rublar (2000–2016)',
+ 'BZD' => 'beliziske dollar',
+ 'CAD' => 'kanadiske dollar',
+ 'CDF' => 'kongolesiske franc',
'CHE' => 'WIR euro',
- 'CHF' => 'sveitsisk franc',
+ 'CHF' => 'sveitsiske franc',
'CHW' => 'WIR franc',
- 'CLF' => 'chilensk unidades de fomento',
- 'CLP' => 'chilensk peso',
- 'CNY' => 'kinesisk yuan renminbi',
- 'COP' => 'colombiansk peso',
+ 'CLF' => 'chilenske unidades de fomento',
+ 'CLP' => 'chilenske pesos',
+ 'CNY' => 'kinesiske yuan',
+ 'COP' => 'kolombianske pesos',
'COU' => 'unidad de valor real',
- 'CRC' => 'costaricansk colon',
- 'CSD' => 'gammal serbisk dinar',
- 'CSK' => 'tsjekkoslovakisk koruna (hard)',
- 'CUC' => 'kubansk peso (konvertibel)',
- 'CUP' => 'kubansk peso',
- 'CVE' => 'kappverdisk escudo',
- 'CYP' => 'kypriotisk pund',
- 'CZK' => 'tsjekkisk koruna',
- 'DDM' => 'austtysk mark',
- 'DEM' => 'tysk mark',
- 'DJF' => 'djiboutisk franc',
- 'DKK' => 'dansk krone',
- 'DOP' => 'dominikansk peso',
- 'DZD' => 'algerisk dinar',
- 'ECS' => 'ecuadoriansk sucre',
- 'ECV' => 'ecuadoriansk unidad de valor constante (UVC)',
- 'EEK' => 'estisk kroon',
- 'EGP' => 'egyptisk pund',
- 'ERN' => 'eritreisk nakfa',
- 'ESA' => 'spansk peseta (A–konto)',
- 'ESB' => 'spansk peseta (konvertibel konto)',
- 'ESP' => 'spansk peseta',
- 'ETB' => 'etiopisk birr',
+ 'CRC' => 'kostarikanske colón',
+ 'CSD' => 'gamle serbiske dinarer',
+ 'CSK' => 'tsjekkoslovakiske koruna (hard)',
+ 'CUC' => 'kubanske konvertible pesos',
+ 'CUP' => 'kubanske pesos',
+ 'CVE' => 'kappverdiske escudo',
+ 'CYP' => 'kypriotiske pund',
+ 'CZK' => 'tsjekkiske koruna',
+ 'DDM' => 'austtyske mark',
+ 'DEM' => 'tyske mark',
+ 'DJF' => 'djiboutiske franc',
+ 'DKK' => 'danske kroner',
+ 'DOP' => 'dominikanske pesos',
+ 'DZD' => 'algeriske dinarar',
+ 'ECS' => 'ecuadorianske sucre',
+ 'ECV' => 'ecuadorianske unidad de valor constante (UVC)',
+ 'EEK' => 'estiske kroon',
+ 'EGP' => 'egyptiske pund',
+ 'ERN' => 'eritreiske nakfa',
+ 'ESA' => 'spanske peseta (A–konto)',
+ 'ESB' => 'spanske peseta (konvertibel konto)',
+ 'ESP' => 'spanske peseta',
+ 'ETB' => 'etiopiske birr',
'EUR' => 'euro',
- 'FIM' => 'finsk mark',
- 'FJD' => 'fijiansk dollar',
- 'FKP' => 'Falkland-pund',
- 'FRF' => 'fransk franc',
- 'GBP' => 'britisk pund',
- 'GEK' => 'georgisk kupon larit',
- 'GEL' => 'georgisk lari',
- 'GHC' => 'ghanesisk cedi (1979–2007)',
- 'GHS' => 'ghanesisk cedi',
- 'GIP' => 'gibraltarsk pund',
- 'GMD' => 'gambisk dalasi',
- 'GNF' => 'guineansk franc',
- 'GNS' => 'guineansk syli',
- 'GQE' => 'ekvatorialguineansk ekwele guineana',
- 'GRD' => 'gresk drakme',
- 'GTQ' => 'guatemalansk quetzal',
- 'GWE' => 'portugisisk guinea escudo',
+ 'FIM' => 'finske mark',
+ 'FJD' => 'fijianske dollar',
+ 'FKP' => 'falklandspund',
+ 'FRF' => 'franske franc',
+ 'GBP' => 'britiske pund',
+ 'GEK' => 'georgiske kupon larit',
+ 'GEL' => 'georgiske lari',
+ 'GHC' => 'ghanesiske cedi (1979–2007)',
+ 'GHS' => 'ghanesiske cedi',
+ 'GIP' => 'gibraltarske pund',
+ 'GMD' => 'gambiske dalasi',
+ 'GNF' => 'guineanske franc',
+ 'GNS' => 'guineanske syli',
+ 'GQE' => 'ekvatorialguineanske ekwele guineana',
+ 'GRD' => 'greske drakme',
+ 'GTQ' => 'guatemalanske quetzal',
+ 'GWE' => 'portugisiske guinea escudo',
'GWP' => 'Guinea-Bissau-peso',
- 'GYD' => 'guyansk dollar',
+ 'GYD' => 'guyanske dollar',
'HKD' => 'Hongkong-dollar',
- 'HNL' => 'honduransk lempira',
- 'HRD' => 'kroatisk dinar',
- 'HRK' => 'kroatisk kuna',
- 'HTG' => 'haitisk gourde',
- 'HUF' => 'ungarsk forint',
- 'IDR' => 'indonesisk rupi',
- 'IEP' => 'irsk pund',
- 'ILP' => 'israelsk pund',
- 'ILS' => 'israelsk ny shekel',
- 'INR' => 'indisk rupi',
- 'IQD' => 'iraksk dinar',
- 'IRR' => 'iransk rial',
- 'ISK' => 'islandsk krone',
- 'ITL' => 'italiensk lire',
- 'JMD' => 'jamaikansk dollar',
- 'JOD' => 'jordansk dinar',
- 'JPY' => 'japansk yen',
- 'KES' => 'kenyansk shilling',
- 'KGS' => 'kirgisisk som',
- 'KHR' => 'kambodsjansk riel',
- 'KMF' => 'komorisk franc',
- 'KPW' => 'nordkoreansk won',
- 'KRW' => 'sørkoreansk won',
- 'KWD' => 'kuwaitisk dinar',
- 'KYD' => 'caymansk dollar',
- 'KZT' => 'kasakhstansk tenge',
- 'LAK' => 'laotisk kip',
- 'LBP' => 'libanesisk pund',
- 'LKR' => 'srilankisk rupi',
- 'LRD' => 'liberisk dollar',
- 'LSL' => 'lesothisk loti',
- 'LTL' => 'litauisk lita',
- 'LTT' => 'litauisk talona',
- 'LUC' => 'luxemburgsk konvertibel franc',
- 'LUF' => 'luxemburgsk franc',
- 'LUL' => 'luxemburgsk finansiell franc',
- 'LVL' => 'latvisk lat',
- 'LVR' => 'latvisk rubel',
- 'LYD' => 'libysk dinar',
- 'MAD' => 'marokkansk dirham',
- 'MAF' => 'marokkansk franc',
- 'MDL' => 'moldovsk leu',
- 'MGA' => 'madagassisk ariary',
- 'MGF' => 'madagassisk franc',
- 'MKD' => 'makedonsk denar',
- 'MLF' => 'malisk franc',
- 'MMK' => 'myanmarsk kyat',
- 'MNT' => 'mongolsk tugrik',
- 'MOP' => 'makaosk pataca',
- 'MRO' => 'mauritansk ouguiya',
- 'MTL' => 'maltesisk lira',
- 'MTP' => 'maltesisk pund',
- 'MUR' => 'mauritansk rupi',
- 'MVR' => 'maldivisk rufiyaa',
- 'MWK' => 'malawisk kwacha',
- 'MXN' => 'meksikansk peso',
- 'MXP' => 'meksikansk sølvpeso (1861–1992)',
- 'MXV' => 'meksikansk unidad de inversion (UDI)',
- 'MYR' => 'malaysisk ringgit',
- 'MZE' => 'mosambikisk escudo',
- 'MZM' => 'gammal mosambikisk metical',
- 'MZN' => 'mosambikisk metical',
- 'NAD' => 'namibisk dollar',
- 'NGN' => 'nigeriansk naira',
- 'NIC' => 'nicaraguansk cordoba',
- 'NIO' => 'nicaraguansk cordoba oro',
- 'NLG' => 'nederlandsk gylden',
- 'NOK' => 'norsk krone',
- 'NPR' => 'nepalsk rupi',
- 'NZD' => 'new zealandsk dollar',
- 'OMR' => 'omansk rial',
- 'PAB' => 'panamansk balboa',
- 'PEI' => 'peruansk inti',
- 'PEN' => 'peruansk nuevo sol',
- 'PES' => 'peruansk sol',
- 'PGK' => 'papuansk kina',
- 'PHP' => 'filippinsk peso',
- 'PKR' => 'pakistansk rupi',
- 'PLN' => 'polsk zloty',
- 'PLZ' => 'polsk zloty (1950–1995)',
- 'PTE' => 'portugisisk escudo',
- 'PYG' => 'paraguayansk guarani',
- 'QAR' => 'qatarsk rial',
- 'RHD' => 'rhodesisk dollar',
- 'ROL' => 'gammal rumensk leu',
- 'RON' => 'rumensk leu',
- 'RSD' => 'serbisk dinar',
- 'RUB' => 'russisk rubel',
- 'RUR' => 'russisk rubel (1991–1998)',
- 'RWF' => 'rwandisk franc',
- 'SAR' => 'saudiarabisk rial',
- 'SBD' => 'salomonsk dollar',
- 'SCR' => 'seychellisk rupi',
- 'SDD' => 'gammal sudanesisk dinar',
- 'SDG' => 'sudansk pund',
- 'SDP' => 'gammalt sudanesisk pund',
- 'SEK' => 'svensk krone',
- 'SGD' => 'singaporsk dollar',
- 'SHP' => 'sankthelensk pund',
- 'SIT' => 'slovensk tolar',
- 'SKK' => 'slovakisk koruna',
- 'SLL' => 'sierraleonsk leone',
- 'SOS' => 'somalisk shilling',
- 'SRD' => 'surinamsk dollar',
- 'SRG' => 'surinamsk gylden',
- 'STD' => 'Sao Tome og Principe-dobra',
- 'SUR' => 'sovjetisk rubel',
- 'SVC' => 'salvadoransk colon',
- 'SYP' => 'syrisk pund',
- 'SZL' => 'swazilandsk lilangeni',
- 'THB' => 'thailandsk baht',
- 'TJR' => 'tadsjikisk rubel',
- 'TJS' => 'tadsjikisk somoni',
- 'TMM' => 'turkmensk manat',
- 'TMT' => 'turkmenistansk manat',
- 'TND' => 'tunisisk dinar',
- 'TOP' => 'tongansk paʻanga',
- 'TPE' => 'timoresisk escudo',
- 'TRL' => 'gammal tyrkiske lire',
- 'TRY' => 'tyrkisk lire',
- 'TTD' => 'trinidadisk dollar',
- 'TWD' => 'taiwansk ny dollar',
- 'TZS' => 'tanzaniansk shilling',
- 'UAH' => 'ukrainsk hryvnia',
- 'UAK' => 'ukrainsk karbovanetz',
- 'UGS' => 'ugandisk shilling (1966–1987)',
- 'UGX' => 'ugandisk shilling',
- 'USD' => 'amerikansk dollar',
- 'USN' => 'amerikansk dollar (neste dag)',
- 'USS' => 'amerikansk dollar (same dag)',
- 'UYI' => 'uruguayansk peso en unidades indexadas',
- 'UYP' => 'uruguayansk peso (1975–1993)',
- 'UYU' => 'uruguayansk peso',
- 'UZS' => 'usbekisk sum',
- 'VEB' => 'venezuelansk bolivar (1871–2008)',
- 'VEF' => 'venezuelansk bolivar',
- 'VND' => 'vietnamesisk dong',
- 'VUV' => 'vanuatuisk vatu',
- 'WST' => 'vestsamoisk tala',
- 'XAF' => 'CFA franc BEAC',
+ 'HNL' => 'honduranske lempira',
+ 'HRD' => 'kroatiske dinar',
+ 'HRK' => 'kroatiske kuna',
+ 'HTG' => 'haitiske gourde',
+ 'HUF' => 'ungarske forintar',
+ 'IDR' => 'indonesiske rupiar',
+ 'IEP' => 'irske pund',
+ 'ILP' => 'israelske pund',
+ 'ILS' => 'israelske nye sheklar',
+ 'INR' => 'indiske rupiar',
+ 'IQD' => 'irakiske dinarar',
+ 'IRR' => 'iranske rial',
+ 'ISK' => 'islandske kroner',
+ 'ITL' => 'italienske lire',
+ 'JMD' => 'jamaikanske dollar',
+ 'JOD' => 'jordanske dinarar',
+ 'JPY' => 'japanske yen',
+ 'KES' => 'kenyanske shilling',
+ 'KGS' => 'kirgisiske som',
+ 'KHR' => 'kambodsjanske riel',
+ 'KMF' => 'komoriske franc',
+ 'KPW' => 'nordkoreanske won',
+ 'KRW' => 'sørkoreanske won',
+ 'KWD' => 'kuwaitiske dinarar',
+ 'KYD' => 'caymanske dollar',
+ 'KZT' => 'kasakhstanske tenge',
+ 'LAK' => 'laotiske kip',
+ 'LBP' => 'libanesiske pund',
+ 'LKR' => 'srilankiske rupiar',
+ 'LRD' => 'liberiske dollar',
+ 'LSL' => 'lesothiske loti',
+ 'LTL' => 'litauiske lita',
+ 'LTT' => 'litauiske talona',
+ 'LUC' => 'luxemburgske konvertibel franc',
+ 'LUF' => 'luxemburgske franc',
+ 'LUL' => 'luxemburgske finansielle franc',
+ 'LVL' => 'latviske lat',
+ 'LVR' => 'latviske rublar',
+ 'LYD' => 'libyske dinarar',
+ 'MAD' => 'marokkanske dirham',
+ 'MAF' => 'marokkanske franc',
+ 'MDL' => 'moldovske leuar',
+ 'MGA' => 'madagassiske ariary',
+ 'MGF' => 'madagassiske franc',
+ 'MKD' => 'makedonske denarar',
+ 'MLF' => 'maliske franc',
+ 'MMK' => 'myanmarske kyat',
+ 'MNT' => 'mongolske tugrik',
+ 'MOP' => 'makaoiske pataca',
+ 'MRO' => 'mauritanske ouguiya (1973–2017)',
+ 'MRU' => 'mauritanske ouguiya',
+ 'MTL' => 'maltesiske lira',
+ 'MTP' => 'maltesiske pund',
+ 'MUR' => 'mauritanske rupiar',
+ 'MVR' => 'maldiviske rufiyaa',
+ 'MWK' => 'malawiske kwacha',
+ 'MXN' => 'meksikanske pesos',
+ 'MXP' => 'meksikanske sølvpeso (1861–1992)',
+ 'MXV' => 'meksikanske unidad de inversion (UDI)',
+ 'MYR' => 'malaysiske ringgit',
+ 'MZE' => 'mosambikiske escudo',
+ 'MZM' => 'gamle mosambikiske metical',
+ 'MZN' => 'mosambikiske metical',
+ 'NAD' => 'namibiske dollar',
+ 'NGN' => 'nigerianske naira',
+ 'NIC' => 'nicaraguanske cordoba',
+ 'NIO' => 'nicaraguanske córdoba',
+ 'NLG' => 'nederlandske gylden',
+ 'NOK' => 'norske kroner',
+ 'NPR' => 'nepalske rupiar',
+ 'NZD' => 'nyzealandske dollar',
+ 'OMR' => 'omanske rial',
+ 'PAB' => 'panamanske balboa',
+ 'PEI' => 'peruanske inti',
+ 'PEN' => 'peruanske sol',
+ 'PES' => 'peruanske sol (1863–1965)',
+ 'PGK' => 'papuanske kina',
+ 'PHP' => 'filippinske pesos',
+ 'PKR' => 'pakistanske rupiar',
+ 'PLN' => 'polske zloty',
+ 'PLZ' => 'polske zloty (1950–1995)',
+ 'PTE' => 'portugisiske escudo',
+ 'PYG' => 'paraguayanske guaraní',
+ 'QAR' => 'qatarske rial',
+ 'RHD' => 'rhodesiske dollar',
+ 'ROL' => 'gamle rumenske leu',
+ 'RON' => 'rumenske leuar',
+ 'RSD' => 'serbiske dinarar',
+ 'RUB' => 'russiske rublar',
+ 'RUR' => 'russiske rublar (1991–1998)',
+ 'RWF' => 'rwandiske franc',
+ 'SAR' => 'saudiarabiske rial',
+ 'SBD' => 'salomonske dollar',
+ 'SCR' => 'seychelliske rupiar',
+ 'SDD' => 'gamle sudanske dinarer',
+ 'SDG' => 'sudanske pund',
+ 'SDP' => 'gamle sudanske pund',
+ 'SEK' => 'svenske kroner',
+ 'SGD' => 'singaporske dollar',
+ 'SHP' => 'sankthelenske pund',
+ 'SIT' => 'slovenske tolar',
+ 'SKK' => 'slovakiske koruna',
+ 'SLL' => 'sierraleonske leone',
+ 'SOS' => 'somaliske shilling',
+ 'SRD' => 'surinamske dollar',
+ 'SRG' => 'surinamske gylden',
+ 'SSP' => 'sørsudanske pund',
+ 'STD' => 'saotomesiske dobra (1977–2017)',
+ 'STN' => 'saotomesiske dobra',
+ 'SUR' => 'sovjetiske rublar',
+ 'SVC' => 'salvadoranske colon',
+ 'SYP' => 'syriske pund',
+ 'SZL' => 'swazilandske lilangeni',
+ 'THB' => 'thailandske baht',
+ 'TJR' => 'tadsjikiske rublar',
+ 'TJS' => 'tadsjikiske somoni',
+ 'TMM' => 'turkmensk manat (1993–2009)',
+ 'TMT' => 'turkmenske manat',
+ 'TND' => 'tunisiske dinarar',
+ 'TOP' => 'tonganske paʻanga',
+ 'TPE' => 'timoresiske escudo',
+ 'TRL' => 'gamle tyrkiske lire',
+ 'TRY' => 'tyrkiske lire',
+ 'TTD' => 'trinidadiske dollar',
+ 'TWD' => 'nye taiwanske dollar',
+ 'TZS' => 'tanzanianske shilling',
+ 'UAH' => 'ukrainske hryvnia',
+ 'UAK' => 'ukrainske karbovanetz',
+ 'UGS' => 'ugandiske shilling (1966–1987)',
+ 'UGX' => 'ugandiske shilling',
+ 'USD' => 'amerikanske dollar',
+ 'USN' => 'amerikanske dollar (neste dag)',
+ 'USS' => 'amerikanske dollar (same dag)',
+ 'UYI' => 'uruguayanske peso en unidades indexadas',
+ 'UYP' => 'uruguayanske peso (1975–1993)',
+ 'UYU' => 'uruguayanske pesos',
+ 'UZS' => 'usbekiske sum',
+ 'VEB' => 'venezuelanske bolivar (1871–2008)',
+ 'VEF' => 'venezuelanske bolivar (2008–2018)',
+ 'VES' => 'venezuelanske bolivar',
+ 'VND' => 'vietnamesiske dong',
+ 'VUV' => 'vanuatuiske vatu',
+ 'WST' => 'samoanske tala',
+ 'XAF' => 'sentralafrikanske CFA-franc',
'XAG' => 'sølv',
'XAU' => 'gull',
- 'XBA' => 'europeisk samansett eining',
- 'XBB' => 'europeisk monetær eining',
- 'XBC' => 'europeisk kontoeining (XBC)',
- 'XBD' => 'europeisk kontoeining (XBD)',
- 'XCD' => 'austkaribisk dollar',
+ 'XBA' => 'europeiske samansette einingar',
+ 'XBB' => 'europeiske monetære einingar',
+ 'XBC' => 'europeiske kontoeiningar (XBC)',
+ 'XBD' => 'europeiske kontoeiningar (XBD)',
+ 'XCD' => 'austkaribiske dollar',
'XDR' => 'spesielle trekkrettar',
- 'XEU' => 'europeisk valutaeining',
- 'XFO' => 'fransk gullfranc',
- 'XFU' => 'fransk UIC-franc',
- 'XOF' => 'CFA franc BCEAO',
+ 'XEU' => 'europeiske valutaeiningar',
+ 'XFO' => 'franske gullfranc',
+ 'XFU' => 'franske UIC-franc',
+ 'XOF' => 'vestafrikanske CFA-franc',
'XPD' => 'palladium',
- 'XPF' => 'CFP franc',
+ 'XPF' => 'CFP-franc',
'XPT' => 'platina',
'XRE' => 'RINET-fond',
'XTS' => 'testvalutakode',
- 'XXX' => 'ukjend eller ugyldig valuta',
- 'YDD' => 'jemenittisk dinar',
- 'YER' => 'jemenittisk rial',
- 'YUD' => 'jugoslavisk dinar (hard)',
- 'YUM' => 'jugoslavisk noviy-dinar',
- 'YUN' => 'jugoslavisk konvertibel dinar',
- 'ZAL' => 'sørafrikansk rand (finansiell)',
- 'ZAR' => 'sørafrikansk rand',
- 'ZMK' => 'zambisk kwacha (1968–2012)',
- 'ZMW' => 'zambisk kwacha',
+ 'XXX' => 'ukjend valuta',
+ 'YDD' => 'jemenittiske dinarar',
+ 'YER' => 'jemenittiske rial',
+ 'YUD' => 'jugoslaviske dinarar (hard)',
+ 'YUM' => 'jugoslaviske noviy-dinarar',
+ 'YUN' => 'jugoslaviske konvertibel dinarar',
+ 'ZAL' => 'sørafrikanske rand (finansiell)',
+ 'ZAR' => 'sørafrikanske rand',
+ 'ZMK' => 'zambiske kwacha (1968–2012)',
+ 'ZMW' => 'zambiske kwacha',
'ZRN' => 'zairisk ny zaire',
'ZRZ' => 'zairisk zaire',
'ZWD' => 'zimbabwisk dollar',
'ZWL' => 'Zimbabwe-dollar (2009)',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => 'AUD',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => 'BRL',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYN' => 'BYN',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CAD',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNY' => 'CNY',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GBP' => 'GBP',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HKD',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'ILS' => 'ILS',
+ 'INR' => 'INR',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => 'JPY',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => 'KRW',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MXN',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
'NOK' => 'kr',
-);
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZD',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'STN' => 'Db',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => 'THB',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'TWD',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
+ 'USD' => 'USD',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VND' => 'VND',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'XAF',
+ 'XCD' => 'XCD',
+ 'XOF' => 'CFA',
+ 'XPF' => 'XPF',
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'Ascension',
'AD' => 'Andorra',
'AE' => 'Dei sameinte arabiske emirata',
@@ -754,7 +942,6 @@ $countryNames = array(
'AI' => 'Anguilla',
'AL' => 'Albania',
'AM' => 'Armenia',
- 'AN' => 'Dei nederlandske Antillane',
'AO' => 'Angola',
'AQ' => 'Antarktis',
'AR' => 'Argentina',
@@ -764,7 +951,7 @@ $countryNames = array(
'AW' => 'Aruba',
'AX' => 'Åland',
'AZ' => 'Aserbajdsjan',
- 'BA' => 'Bosnia og Hercegovina',
+ 'BA' => 'Bosnia-Hercegovina',
'BB' => 'Barbados',
'BD' => 'Bangladesh',
'BE' => 'Belgia',
@@ -775,7 +962,7 @@ $countryNames = array(
'BJ' => 'Benin',
'BL' => 'Saint Barthélemy',
'BM' => 'Bermuda',
- 'BN' => 'Brunei Darussalam',
+ 'BN' => 'Brunei',
'BO' => 'Bolivia',
'BQ' => 'Karibisk Nederland',
'BR' => 'Brasil',
@@ -820,7 +1007,8 @@ $countryNames = array(
'ER' => 'Eritrea',
'ES' => 'Spania',
'ET' => 'Etiopia',
- 'EU' => 'Den europeiske unionen',
+ 'EU' => 'EU',
+ 'EZ' => 'eurosona',
'FI' => 'Finland',
'FJ' => 'Fiji',
'FK' => 'Falklandsøyane',
@@ -841,13 +1029,13 @@ $countryNames = array(
'GP' => 'Guadeloupe',
'GQ' => 'Ekvatorial-Guinea',
'GR' => 'Hellas',
- 'GS' => 'Sør-Georgia og Sør-Sandwich-øyane',
+ 'GS' => 'Sør-Georgia og Sør-Sandwichøyene',
'GT' => 'Guatemala',
'GU' => 'Guam',
'GW' => 'Guinea-Bissau',
'GY' => 'Guyana',
'HK' => 'Hongkong',
- 'HM' => 'Heard- og McDonaldsøyane',
+ 'HM' => 'Heardøya og McDonaldøyane',
'HN' => 'Honduras',
'HR' => 'Kroatia',
'HT' => 'Haiti',
@@ -858,7 +1046,7 @@ $countryNames = array(
'IL' => 'Israel',
'IM' => 'Man',
'IN' => 'India',
- 'IO' => 'Britiske område i Det indiske hav',
+ 'IO' => 'Det britiske territoriet I Indiahavet',
'IQ' => 'Irak',
'IR' => 'Iran',
'IS' => 'Island',
@@ -871,8 +1059,8 @@ $countryNames = array(
'KG' => 'Kirgisistan',
'KH' => 'Kambodsja',
'KI' => 'Kiribati',
- 'KM' => 'Komorene',
- 'KN' => 'St. Christopher og Nevis',
+ 'KM' => 'Komorane',
+ 'KN' => 'Saint Kitts og Nevis',
'KP' => 'Nord-Korea',
'KR' => 'Sør-Korea',
'KW' => 'Kuwait',
@@ -898,7 +1086,7 @@ $countryNames = array(
'MH' => 'Marshalløyane',
'MK' => 'Makedonia',
'ML' => 'Mali',
- 'MM' => 'Myanmar',
+ 'MM' => 'Myanmar (Burma)',
'MN' => 'Mongolia',
'MO' => 'Macao',
'MP' => 'Nord-Marianane',
@@ -915,7 +1103,7 @@ $countryNames = array(
'NA' => 'Namibia',
'NC' => 'Ny-Caledonia',
'NE' => 'Niger',
- 'NF' => 'Norfolkøyane',
+ 'NF' => 'Norfolkøya',
'NG' => 'Nigeria',
'NI' => 'Nicaragua',
'NL' => 'Nederland',
@@ -932,7 +1120,7 @@ $countryNames = array(
'PH' => 'Filippinane',
'PK' => 'Pakistan',
'PL' => 'Polen',
- 'PM' => 'St. Pierre og Miquelon',
+ 'PM' => 'Saint-Pierre-et-Miquelon',
'PN' => 'Pitcairn',
'PR' => 'Puerto Rico',
'PS' => 'Palestina',
@@ -946,7 +1134,7 @@ $countryNames = array(
'RS' => 'Serbia',
'RU' => 'Russland',
'RW' => 'Rwanda',
- 'SA' => 'Saudi Arabia',
+ 'SA' => 'Saudi-Arabia',
'SB' => 'Salomonøyane',
'SC' => 'Seychellane',
'SD' => 'Sudan',
@@ -964,18 +1152,18 @@ $countryNames = array(
'SS' => 'Sør-Sudan',
'ST' => 'São Tomé og Príncipe',
'SV' => 'El Salvador',
- 'SX' => 'Nederlandsk St. Martin',
+ 'SX' => 'Sint Maarten',
'SY' => 'Syria',
'SZ' => 'Swaziland',
'TA' => 'Tristan da Cunha',
'TC' => 'Turks- og Caicosøyane',
- 'TD' => 'Tchad',
- 'TF' => 'Franske sørområde',
+ 'TD' => 'Tsjad',
+ 'TF' => 'Dei franske sørterritoria',
'TG' => 'Togo',
'TH' => 'Thailand',
'TJ' => 'Tadsjikistan',
'TK' => 'Tokelau',
- 'TL' => 'Aust-Timor',
+ 'TL' => 'Timor-Leste (Aust-Timor)',
'TM' => 'Turkmenistan',
'TN' => 'Tunisia',
'TO' => 'Tonga',
@@ -987,69 +1175,228 @@ $countryNames = array(
'UA' => 'Ukraina',
'UG' => 'Uganda',
'UM' => 'USAs ytre småøyar',
+ 'UN' => 'SN',
'US' => 'USA',
'UY' => 'Uruguay',
'UZ' => 'Usbekistan',
'VA' => 'Vatikanstaten',
'VC' => 'St. Vincent og Grenadinane',
'VE' => 'Venezuela',
- 'VG' => 'Dei britiske jomfruøyane',
- 'VI' => 'Dei amerikanske jomfruøyane',
+ 'VG' => 'Dei britiske Jomfruøyane',
+ 'VI' => 'Dei amerikanske Jomfruøyane',
'VN' => 'Vietnam',
'VU' => 'Vanuatu',
'WF' => 'Wallis og Futuna',
'WS' => 'Samoa',
'XK' => 'Kosovo',
- 'YE' => 'Yemen',
+ 'YE' => 'Jemen',
'YT' => 'Mayotte',
'ZA' => 'Sør-Afrika',
'ZM' => 'Zambia',
'ZW' => 'Zimbabwe',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-one' => '{0} hundreår',
+ 'century-other' => '{0} hundreår',
'day-future-one' => 'om {0} døgn',
'day-future-other' => 'om {0} døgn',
+ 'day-narrow-future-one' => '+{0} d.',
+ 'day-narrow-future-other' => '+{0} d.',
+ 'day-narrow-past-one' => '–{0} d.',
+ 'day-narrow-past-other' => '–{0} d.',
'day-one' => '{0} døgn',
'day-other' => '{0} døgn',
- 'day-past-one' => 'for {0} døgn siden',
- 'day-past-other' => 'for {0} døgn siden',
+ 'day-past-one' => 'for {0} døgn sidan',
+ 'day-past-other' => 'for {0} døgn sidan',
+ 'day-short-future-one' => 'om {0} d.',
+ 'day-short-future-other' => 'om {0} d.',
+ 'day-short-past-one' => 'for {0} d. sidan',
+ 'day-short-past-other' => 'for {0} d. sidan',
+ 'fri-future-one' => 'om {0} fredag',
+ 'fri-future-other' => 'om {0} fredagar',
+ 'fri-narrow-future-one' => 'om {0} fr.',
+ 'fri-narrow-future-other' => 'om {0} fr.',
+ 'fri-narrow-past-one' => 'for {0} fr. sidan',
+ 'fri-narrow-past-other' => 'for {0} fr. sidan',
+ 'fri-past-one' => 'for {0} fredag sidan',
+ 'fri-past-other' => 'for {0} fredagar sidan',
+ 'fri-short-future-one' => 'om {0} fre.',
+ 'fri-short-future-other' => 'om {0} fre.',
+ 'fri-short-past-one' => 'for {0} fre. sidan',
+ 'fri-short-past-other' => 'for {0} fre. sidan',
'hour-future-one' => 'om {0} time',
- 'hour-future-other' => 'om {0} timer',
+ 'hour-future-other' => 'om {0} timar',
+ 'hour-narrow-future-one' => '+{0} t',
+ 'hour-narrow-future-other' => '+{0} t',
+ 'hour-narrow-past-one' => '–{0} t',
+ 'hour-narrow-past-other' => '–{0} t',
'hour-one' => '{0} time',
- 'hour-other' => '{0} timer',
- 'hour-past-one' => 'for {0} time siden',
- 'hour-past-other' => 'for {0} timer siden',
+ 'hour-other' => '{0} timar',
+ 'hour-past-one' => 'for {0} time sidan',
+ 'hour-past-other' => 'for {0} timar sidan',
+ 'hour-short-future-one' => 'om {0} t',
+ 'hour-short-future-other' => 'om {0} t',
+ 'hour-short-past-one' => 'for {0} t sidan',
+ 'hour-short-past-other' => 'for {0} t sidan',
+ 'microsecond-one' => '{0} mikrosekund',
+ 'microsecond-other' => '{0} mikrosekund',
'millisecond-one' => '{0} millisekund',
- 'millisecond-other' => '{0} millisekunder',
+ 'millisecond-other' => '{0} millisekund',
'minute-future-one' => 'om {0} minutt',
- 'minute-future-other' => 'om {0} minutter',
+ 'minute-future-other' => 'om {0} minutt',
+ 'minute-narrow-future-one' => '+{0} min',
+ 'minute-narrow-future-other' => '+{0} min',
+ 'minute-narrow-past-one' => '–{0} min',
+ 'minute-narrow-past-other' => '–{0} min',
'minute-one' => '{0} minutt',
- 'minute-other' => '{0} minutter',
- 'minute-past-one' => 'for {0} minutt siden',
- 'minute-past-other' => 'for {0} minutter siden',
- 'month-future-one' => 'om {0} måned',
- 'month-future-other' => 'om {0} måneder',
- 'month-one' => '{0} måned',
- 'month-other' => '{0} måneder',
- 'month-past-one' => 'for {0} måned siden',
- 'month-past-other' => 'for {0} måneder siden',
+ 'minute-other' => '{0} minutt',
+ 'minute-past-one' => 'for {0} minutt sidan',
+ 'minute-past-other' => 'for {0} minutt sidan',
+ 'minute-short-future-one' => 'om {0} min',
+ 'minute-short-future-other' => 'om {0} min',
+ 'minute-short-past-one' => 'for {0} min sidan',
+ 'minute-short-past-other' => 'for {0} min sidan',
+ 'mon-future-one' => 'om {0} måndag',
+ 'mon-future-other' => 'om {0} måndagar',
+ 'mon-narrow-future-one' => 'om {0} må.',
+ 'mon-narrow-future-other' => 'om {0} må.',
+ 'mon-narrow-past-one' => 'for {0} må. sidan',
+ 'mon-narrow-past-other' => 'for {0} må. sidan',
+ 'mon-past-one' => 'for {0} måndag sidan',
+ 'mon-past-other' => 'for {0} måndagar sidan',
+ 'mon-short-future-one' => 'om {0} mån.',
+ 'mon-short-future-other' => 'om {0} mån.',
+ 'mon-short-past-one' => 'for {0} mån. sidan',
+ 'mon-short-past-other' => 'for {0} mån. sidan',
+ 'month-future-one' => 'om {0} månad',
+ 'month-future-other' => 'om {0} månadar',
+ 'month-narrow-future-one' => '+{0} md.',
+ 'month-narrow-future-other' => '+{0} md.',
+ 'month-narrow-past-one' => '–{0} md.',
+ 'month-narrow-past-other' => '–{0} md.',
+ 'month-one' => '{0} månad',
+ 'month-other' => '{0} månadar',
+ 'month-past-one' => 'for {0} månad sidan',
+ 'month-past-other' => 'for {0} månadar sidan',
+ 'month-short-future-one' => 'om {0} md.',
+ 'month-short-future-other' => 'om {0} md.',
+ 'month-short-past-one' => 'for {0} md. sidan',
+ 'month-short-past-other' => 'for {0} md. sidan',
+ 'nanosecond-one' => '{0} nanosekund',
+ 'nanosecond-other' => '{0} nanosekund',
+ 'quarter-future-one' => 'om {0} kvartal',
+ 'quarter-future-other' => 'om {0} kvartal',
+ 'quarter-narrow-future-one' => '+{0} kv.',
+ 'quarter-narrow-future-other' => '+{0} kv.',
+ 'quarter-narrow-past-one' => '–{0} kv.',
+ 'quarter-narrow-past-other' => '–{0} kv.',
+ 'quarter-past-one' => 'for {0} kvartal sidan',
+ 'quarter-past-other' => 'for {0} kvartal sidan',
+ 'quarter-short-future-one' => 'om {0} kv.',
+ 'quarter-short-future-other' => 'om {0} kv.',
+ 'quarter-short-past-one' => 'for {0} kv. sidan',
+ 'quarter-short-past-other' => 'for {0} kv. sidan',
+ 'sat-future-one' => 'om {0} laurdag',
+ 'sat-future-other' => 'om {0} laurdagar',
+ 'sat-narrow-future-one' => 'om {0} la.',
+ 'sat-narrow-future-other' => 'om {0} la.',
+ 'sat-narrow-past-one' => 'for {0} la. sidan',
+ 'sat-narrow-past-other' => 'for {0} la. sidan',
+ 'sat-past-one' => 'for {0} laurdag sidan',
+ 'sat-past-other' => 'for {0} laurdagar sidan',
+ 'sat-short-future-one' => 'om {0} lau.',
+ 'sat-short-future-other' => 'om {0} lau.',
+ 'sat-short-past-one' => 'for {0} lau. sidan',
+ 'sat-short-past-other' => 'for {0} lau. sidan',
'second-future-one' => 'om {0} sekund',
- 'second-future-other' => 'om {0} sekunder',
+ 'second-future-other' => 'om {0} sekund',
+ 'second-narrow-future-one' => '+{0} s',
+ 'second-narrow-future-other' => '+{0} s',
+ 'second-narrow-past-one' => '–{0} s',
+ 'second-narrow-past-other' => '–{0} s',
'second-one' => '{0} sekund',
- 'second-other' => '{0} sekunder',
- 'second-past-one' => 'for {0} sekund siden',
- 'second-past-other' => 'for {0} sekunder siden',
- 'week-future-one' => 'om {0} uke',
- 'week-future-other' => 'om {0} uker',
- 'week-one' => '{0} uke',
- 'week-other' => '{0} uker',
- 'week-past-one' => 'for {0} uke siden',
- 'week-past-other' => 'for {0} uker siden',
+ 'second-other' => '{0} sekund',
+ 'second-past-one' => 'for {0} sekund sidan',
+ 'second-past-other' => 'for {0} sekund sidan',
+ 'second-short-future-one' => 'om {0} sek',
+ 'second-short-future-other' => 'om {0} sek',
+ 'second-short-past-one' => 'for {0} sek sidan',
+ 'second-short-past-other' => 'for {0} sek sidan',
+ 'sun-future-one' => 'om {0} sundag',
+ 'sun-future-other' => 'om {0} sundagar',
+ 'sun-narrow-future-one' => 'om {0} su.',
+ 'sun-narrow-future-other' => 'om {0} su.',
+ 'sun-narrow-past-one' => 'for {0} su. sidan',
+ 'sun-narrow-past-other' => 'for {0} su. sidan',
+ 'sun-past-one' => 'for {0} sundag sidan',
+ 'sun-past-other' => 'for {0} sundagar sidan',
+ 'sun-short-future-one' => 'om {0} sun.',
+ 'sun-short-future-other' => 'om {0} sun.',
+ 'sun-short-past-one' => 'for {0} sun. sidan',
+ 'sun-short-past-other' => 'for {0} sun. sidan',
+ 'thu-future-one' => 'om {0} torsdag',
+ 'thu-future-other' => 'om {0} torsdagar',
+ 'thu-narrow-future-one' => 'om {0} to.',
+ 'thu-narrow-future-other' => 'om {0} to.',
+ 'thu-narrow-past-one' => 'for {0} to. sidan',
+ 'thu-narrow-past-other' => 'for {0} to. sidan',
+ 'thu-past-one' => 'for {0} torsdag sidan',
+ 'thu-past-other' => 'for {0} torsdagar sidan',
+ 'thu-short-future-one' => 'om {0} tor.',
+ 'thu-short-future-other' => 'om {0} tor.',
+ 'thu-short-past-one' => 'for {0} tor. sidan',
+ 'thu-short-past-other' => 'for {0} tor. sidan',
+ 'tue-future-one' => 'om {0} tysdag',
+ 'tue-future-other' => 'om {0} tysdagar',
+ 'tue-narrow-future-one' => 'om {0} ty.',
+ 'tue-narrow-future-other' => 'om {0} ty.',
+ 'tue-narrow-past-one' => 'for {0} ty. sidan',
+ 'tue-narrow-past-other' => 'for {0} ty. sidan',
+ 'tue-past-one' => 'for {0} tysdag sidan',
+ 'tue-past-other' => 'for {0} tysdagar sidan',
+ 'tue-short-future-one' => 'om {0} tys.',
+ 'tue-short-future-other' => 'om {0} tys.',
+ 'tue-short-past-one' => 'for {0} tys. sidan',
+ 'tue-short-past-other' => 'for {0} tys. sidan',
+ 'wed-future-one' => 'om {0} onsdag',
+ 'wed-future-other' => 'om {0} onsdagar',
+ 'wed-narrow-future-one' => 'om {0} on.',
+ 'wed-narrow-future-other' => 'om {0} on.',
+ 'wed-narrow-past-one' => 'for {0} on. sidan',
+ 'wed-narrow-past-other' => 'for {0} on. sidan',
+ 'wed-past-one' => 'for {0} onsdag sidan',
+ 'wed-past-other' => 'for {0} onsdagar sidan',
+ 'wed-short-future-one' => 'om {0} ons.',
+ 'wed-short-future-other' => 'om {0} ons.',
+ 'wed-short-past-one' => 'for {0} ons. sidan',
+ 'wed-short-past-other' => 'for {0} ons. sidan',
+ 'week-future-one' => 'om {0} veke',
+ 'week-future-other' => 'om {0} veker',
+ 'week-narrow-future-one' => '+{0} v.',
+ 'week-narrow-future-other' => '+{0} v.',
+ 'week-narrow-past-one' => '–{0} v.',
+ 'week-narrow-past-other' => '–{0} v.',
+ 'week-one' => '{0} veke',
+ 'week-other' => '{0} veker',
+ 'week-past-one' => 'for {0} veke sidan',
+ 'week-past-other' => 'for {0} veker sidan',
+ 'week-short-future-one' => 'om {0} v.',
+ 'week-short-future-other' => 'om {0} v.',
+ 'week-short-past-one' => 'for {0} v. sidan',
+ 'week-short-past-other' => 'for {0} v. sidan',
'year-future-one' => 'om {0} år',
'year-future-other' => 'om {0} år',
+ 'year-narrow-future-one' => 'om {0} år',
+ 'year-narrow-future-other' => 'om {0} år',
+ 'year-narrow-past-one' => 'for {0} år sidan',
+ 'year-narrow-past-other' => 'for {0} år sidan',
'year-one' => '{0} år',
'year-other' => '{0} år',
- 'year-past-one' => 'for {0} år siden',
- 'year-past-other' => 'for {0} år siden',
-);
+ 'year-past-one' => 'for {0} år sidan',
+ 'year-past-other' => 'for {0} år sidan',
+ 'year-short-future-one' => 'om {0} år',
+ 'year-short-future-other' => 'om {0} år',
+ 'year-short-past-one' => 'for {0} år sidan',
+ 'year-short-past-other' => 'for {0} år sidan',
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesNso.php b/MLEB/cldr/CldrNames/CldrNamesNso.php
deleted file mode 100644
index 6d1760ee..00000000
--- a/MLEB/cldr/CldrNames/CldrNamesNso.php
+++ /dev/null
@@ -1,5 +0,0 @@
-<?php
-
-$languageNames = array(
- 'nso' => 'Sesotho sa Leboa',
-);
diff --git a/MLEB/cldr/CldrNames/CldrNamesOm.php b/MLEB/cldr/CldrNames/CldrNamesOm.php
index 2ed7bd79..fd0620ba 100644
--- a/MLEB/cldr/CldrNames/CldrNamesOm.php
+++ b/MLEB/cldr/CldrNames/CldrNamesOm.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'af' => 'Afrikoota',
'am' => 'Afaan Sidaamaa',
'ar' => 'Arabiffaa',
@@ -87,9 +87,9 @@ $languageNames = array(
'xh' => 'Afaan Xhosa',
'zh' => 'Chinese',
'zu' => 'Afaan Zuulu',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'BRL' => 'Brazilian Real',
'CNY' => 'Chinese Yuan Renminbi',
'ETB' => 'Itoophiyaa Birrii',
@@ -99,13 +99,13 @@ $currencyNames = array(
'JPY' => 'Japanese Yen',
'RUB' => 'Russian Ruble',
'USD' => 'US Dollar',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'ETB' => 'Br',
-);
+];
-$countryNames = array(
+$countryNames = [
'BR' => 'Brazil',
'CN' => 'China',
'DE' => 'Germany',
@@ -118,4 +118,4 @@ $countryNames = array(
'KE' => 'Keeniyaa',
'RU' => 'Russia',
'US' => 'United States',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesOr.php b/MLEB/cldr/CldrNames/CldrNamesOr.php
index 596b546a..3ae31fd7 100644
--- a/MLEB/cldr/CldrNames/CldrNamesOr.php
+++ b/MLEB/cldr/CldrNames/CldrNamesOr.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'ଅଫାର୍',
'ab' => 'ଆବ୍ଖାଜିଆନ୍',
'ace' => 'ଆଚାଇନୀଜ୍',
@@ -8,7 +8,7 @@ $languageNames = array(
'ada' => 'ଆଦାଙ୍ଗେମ୍',
'ady' => 'ଅଦ୍ୟଘେ',
'ae' => 'ଅବେସ୍ତନ',
- 'af' => 'ଆଫ୍ରିକାନସ୍',
+ 'af' => 'ଆଫ୍ରିକୀୟ',
'afh' => 'ଆଫ୍ରିହିଲି',
'agq' => 'ଆଘେମ',
'ain' => 'ଆଇନୁ',
@@ -21,19 +21,19 @@ $languageNames = array(
'ang' => 'ପୁରୁଣା ଇଁରାଜୀ',
'anp' => 'ଅଁଗୀକା',
'ar' => 'ଆରବିକ୍',
- 'ar-001' => 'ମାନକ ଆରବିକ',
+ 'ar-001' => 'ଆଧୁନିକ ମାନାଙ୍କ ଆରବୀୟ',
'arc' => 'ଆରାମାଇକ୍',
- 'arn' => 'ଆରାଉକାନିଆନ୍',
+ 'arn' => 'ମାପୁଚେ',
'arp' => 'ଆରାପାହୋ',
'arw' => 'ଆରୱକ',
- 'as' => 'ଆସାମୀ',
+ 'as' => 'ଆସାମୀୟ',
'asa' => 'ଆସୁ',
'ast' => 'ଆଷ୍ଟୁରିଆନ୍',
'av' => 'ଆଭାରିକ୍',
'awa' => 'ଆୱାଧି',
'ay' => 'ଆୟମାରା',
'az' => 'ଆଜେରବାଇଜାନି',
- 'ba' => 'ବଶଖିର୍',
+ 'ba' => 'ବାଶକିର୍',
'bal' => 'ବାଲୁଚି',
'ban' => 'ବାଲିନୀଜ୍',
'bas' => 'ବାସା',
@@ -46,13 +46,14 @@ $languageNames = array(
'bi' => 'ବିସଲାମା',
'bik' => 'ବିକୋଲ୍',
'bin' => 'ବିନି',
- 'bla' => 'ବିକ୍ସିକା',
+ 'bla' => 'ସିକସିକା',
'bm' => 'ବାମ୍ବାରା',
- 'bn' => 'ବଙ୍ଗାଳୀ',
- 'bo' => 'ତିବେତାନ୍',
+ 'bn' => 'ବଙ୍ଗଳା',
+ 'bo' => 'ତିବ୍ବତୀୟ',
'br' => 'ବ୍ରେଟନ୍',
'bra' => 'ବ୍ରାଜ୍',
- 'bs' => 'କାଟଲାନ୍',
+ 'brx' => 'ବୋଡୋ',
+ 'bs' => 'ବୋସନିଆନ୍',
'bua' => 'ବୁରିଆଟ୍',
'bug' => 'ବୁଗୀନୀଜ୍',
'byn' => 'ବ୍ଲିନ୍',
@@ -62,6 +63,7 @@ $languageNames = array(
'cch' => 'ଆତ୍ସମ୍',
'ce' => 'ଚେଚନ୍',
'ceb' => 'ସୀବୁଆନୋ',
+ 'cgg' => 'ଚିଗା',
'ch' => 'ଚାମୋରୋ',
'chb' => 'ଚିବ୍ଚା',
'chg' => 'ଛଗତାଇ',
@@ -72,11 +74,12 @@ $languageNames = array(
'chp' => 'ଚିପେୱାନ୍',
'chr' => 'ଚେରୋକୀ',
'chy' => 'ଚେଚେନା',
- 'ckb' => 'ସୋରାନି କୁର୍ଦିଶ',
+ 'ckb' => 'କେନ୍ଦ୍ରୀୟ କୁରଡିସ୍',
'co' => 'କୋର୍ସିକାନ୍',
'cop' => 'କପ୍ଟିକ୍',
'cr' => 'କ୍ରୀ',
'crh' => 'କ୍ରୀମିନ୍ ତୁର୍କୀସ୍',
+ 'crs' => 'ସେସେଲୱା କ୍ରେଓଲେ ଫ୍ରେଞ୍ଚ୍',
'cs' => 'ଚେକ୍',
'csb' => 'କାଶୁବିଆନ୍',
'cu' => 'ଚର୍ଚ୍ଚ ସ୍ଲାଭିକ୍',
@@ -85,20 +88,25 @@ $languageNames = array(
'da' => 'ଡାନ୍ନିସ୍',
'dak' => 'ଡାକୋଟା',
'dar' => 'ଡାରାଗ୍ୱା',
- 'de' => 'ଜର୍ମାନ୍',
+ 'dav' => 'ତାଇତି',
+ 'de' => 'ଜର୍ମାନ',
'de-at' => 'ଅଷ୍ଟ୍ରିଆନ୍ ଜର୍ମାନ',
- 'de-ch' => 'ସ୍ବିସ୍ ହାଇ ଜର୍ମାନ୍',
+ 'de-ch' => 'ସ୍ୱିସ୍‌ ହାଇ ଜର୍ମାନ',
'del' => 'ଡେଲାୱେର୍',
'den' => 'ସ୍ଲେଭ୍',
'dgr' => 'ଡୋଗ୍ରିବ୍',
'din' => 'ଦିଙ୍କା',
+ 'dje' => 'ଜର୍ମା',
'doi' => 'ଡୋଗ୍ରୀ',
- 'dsb' => 'ନିଚଳା ସର୍ବିଆନ୍',
+ 'dsb' => 'ନିମ୍ନ ସର୍ବିଆନ୍‌',
'dua' => 'ଡୁଆନା',
'dum' => 'ମଧ୍ୟ ପର୍ତ୍ତୁଗାଲୀ',
'dv' => 'ଡିଭେହୀ',
+ 'dyo' => 'ଜୋଲା-ଫୋନୟି',
'dyu' => 'ଡୁଆଲା',
- 'dz' => 'ଭୂଟାନୀ',
+ 'dz' => 'ଦଡଜୋଙ୍ଗଖା',
+ 'dzg' => 'ଡାଜାଗା',
+ 'ebu' => 'ଏମ୍ଵୁ',
'ee' => 'ଇୱେ',
'efi' => 'ଏଫିକ୍',
'egy' => 'ପ୍ରାଚୀନ୍ ମିଶିରି',
@@ -106,15 +114,16 @@ $languageNames = array(
'el' => 'ଗ୍ରୀକ୍',
'elx' => 'ଏଲାମାଇଟ୍',
'en' => 'ଇଂରାଜୀ',
- 'en-au' => 'ଅଷ୍ଟ୍ରେଲିଆନ୍ ଇଁରାଜୀ',
- 'en-ca' => 'କାନାଡିଆନ୍ ଇଁରାଜୀ',
- 'en-gb' => 'ବ୍ରିଟିଶ୍ ଇଁରାଜୀ',
- 'en-us' => 'ୟୁ.ଏସ୍. ଇଁରାଜୀ',
+ 'en-au' => 'ଅଷ୍ଟ୍ରେଲିୟ ଇଂରାଜୀ',
+ 'en-ca' => 'କାନାଡିୟ ଇଂରାଜୀ',
+ 'en-gb' => 'ବ୍ରିଟିଶ୍‌ ଇଂରାଜୀ',
+ 'en-us' => 'ଆମେରିକୀୟ ଇଂରାଜୀ',
'enm' => 'ମଧ୍ୟ ଇଁରାଜୀ',
'eo' => 'ଏସ୍ପାରେଣ୍ଟୋ',
- 'es' => 'ସ୍ପାନିସ୍',
- 'es-419' => 'ଲାଟିନ୍ ଆମେରିକାନ୍ ସ୍ପାନିଶ୍',
- 'es-es' => 'ଲେବେରିଆନ୍ ସ୍ପାନିଶ୍',
+ 'es' => 'ସ୍ପେନିୟ',
+ 'es-419' => 'ଲାଟିନ୍‌ ଆମେରିକୀୟ ସ୍ପାନିସ୍‌',
+ 'es-es' => 'ୟୁରୋପୀୟ ସ୍ପାନିସ୍‌',
+ 'es-mx' => 'ମେକ୍ସିକାନ ସ୍ପାନିସ୍‌',
'et' => 'ଏସ୍ତୋନିଆନ୍',
'eu' => 'ବାସ୍କ୍ୱି',
'ewo' => 'ଇୱୋଣ୍ଡୋ',
@@ -127,15 +136,15 @@ $languageNames = array(
'fj' => 'ଫିଜି',
'fo' => 'ଫାରୋଏସେ',
'fon' => 'ଫନ୍',
- 'fr' => 'ଫ୍ରେଞ୍ଚ',
- 'fr-ca' => 'କାନାଡିଆନ୍ ଫ୍ରେଞ୍ଚ',
- 'fr-ch' => 'ସ୍ବିସ୍ ଫ୍ରେଞ୍ଚ୍',
+ 'fr' => 'ଫରାସୀ',
+ 'fr-ca' => 'କାନାଡିୟ ଫ୍ରେଞ୍ଚ',
+ 'fr-ch' => 'ସ୍ୱିସ୍ ଫ୍ରେଞ୍ଚ',
'frm' => 'ମଧ୍ୟ ଫ୍ରେଞ୍ଚ',
'fro' => 'ପୁରୁଣା ଫ୍ରେଞ୍ଚ',
'frr' => 'ଉତ୍ତର ଫ୍ରିସିୟାନ୍',
'frs' => 'ପୂର୍ବ ଫ୍ରିସିୟାନ୍',
'fur' => 'ଫ୍ରିୟୁଲୀୟାନ୍',
- 'fy' => 'ପଶ୍ଚିମ ଫ୍ରିସିୟନ୍',
+ 'fy' => 'ପାଶ୍ଚାତ୍ୟ ଫ୍ରିସିଆନ୍',
'ga' => 'ଇରିସ୍',
'gaa' => 'ଗା',
'gay' => 'ଗାୟୋ',
@@ -152,10 +161,11 @@ $languageNames = array(
'got' => 'ଗୋଥିକ୍',
'grb' => 'ଗ୍ରେବୋ',
'grc' => 'ପ୍ରାଚୀନ୍ ୟୁନାନୀ',
- 'gsw' => 'ସ୍ବିସ୍ ଜର୍ମାନ୍',
+ 'gsw' => 'ସୁଇସ୍ ଜର୍ମାନ୍',
'gu' => 'ଗୁଜୁରାଟୀ',
+ 'guz' => 'ଗୁସି',
'gv' => 'ମାଁକ୍ସ',
- 'gwi' => 'ସ୍ବିଚ୍ ଇନ୍',
+ 'gwi' => 'ଗୱିଚ’ଇନ୍',
'ha' => 'ହୌସା',
'hai' => 'ହାଇଡା',
'haw' => 'ହାୱାଇନ୍',
@@ -168,50 +178,58 @@ $languageNames = array(
'hr' => 'କ୍ରୋଆଟିଆନ୍',
'hsb' => 'ଉପର ସର୍ବିଆନ୍',
'ht' => 'ହୈତାୟିନ୍',
- 'hu' => 'ହଙ୍ଗେରିଆନ୍',
+ 'hu' => 'ହଙ୍ଗେରୀୟ',
'hup' => 'ହୁପା',
'hy' => 'ଆର୍ମେନିଆନ୍',
'hz' => 'ହେରେରୋ',
'ia' => 'ଇର୍ଣ୍ଟଲିଙ୍ଗୁଆ',
'iba' => 'ଇବାନ୍',
- 'id' => 'ଇଣ୍ଡୋନେସିଆନ୍',
+ 'ibb' => 'ଇବିବିଓ',
+ 'id' => 'ଇଣ୍ଡୋନେସୀୟ',
'ie' => 'ଇର୍ଣ୍ଟରଲିଙ୍ଗୁଇ',
- 'ig' => 'ଇଗ୍ବୋ',
+ 'ig' => 'ଇଗବୋ',
'ii' => 'ସିଚୁଆନ୍ ୟୀ',
'ik' => 'ଇନୁପିୟାକ୍',
'ilo' => 'ଇଲୋକୋ',
'inh' => 'ଇଁଙ୍ଗୁଶ୍',
'io' => 'ଇଡୋ',
'is' => 'ଆଇସଲାଣ୍ଡିକ୍',
- 'it' => 'ଇଟାଲିଆନ୍',
- 'iu' => 'ଇନକୀଟୁତ୍',
- 'ja' => 'ଜାପାନୀଜ୍',
+ 'it' => 'ଇଟାଲୀୟ',
+ 'iu' => 'ଇନୁକଟିଟୁତ୍‌',
+ 'ja' => 'ଜାପାନୀ',
'jbo' => 'ଲୋଜବାନ୍',
+ 'jgo' => 'ନାଗୋମ୍ଵା',
+ 'jmc' => 'ମାଚେମେ',
'jpr' => 'ଜୁଡେଓ-ପର୍ସିଆନ୍',
'jrb' => 'ଜୁଡେଓ-ଆରବୀକ୍',
'jv' => 'ଜାଭାନୀଜ୍',
- 'ka' => 'ଜର୍ଜିଆନ୍',
+ 'ka' => 'ଜର୍ଜିୟ',
'kaa' => 'କାରା-କଲ୍ପକ୍',
'kab' => 'କବାଇଲ୍',
'kac' => 'କଚିନ୍',
- 'kaj' => 'ଜ୍ଜୁ',
+ 'kaj' => 'ଜଜୁ',
'kam' => 'କମ୍ବା',
'kaw' => 'କାୱି',
'kbd' => 'କାବାର୍ଡିଆନ୍',
'kcg' => 'ତ୍ୟାପ୍',
+ 'kde' => 'ମାକୋଣ୍ଡେ',
+ 'kea' => 'କାବୁଭେରଡିଆନୁ',
'kfo' => 'କୋରୋ',
'kg' => 'କଙ୍ଗୋ',
'kha' => 'ଖାସୀ',
'kho' => 'ଖୋତାନୀଜ୍',
+ 'khq' => 'କୋୟରା ଚିନି',
'ki' => 'କୀକୁୟୁ',
'kj' => 'କ୍ୱାନ୍ୟାମ୍',
'kk' => 'କାଜାକ୍',
- 'kl' => 'ଗ୍ରୀନଲାଣ୍ଡିକ୍',
- 'km' => 'ଖ୍ମେର୍',
+ 'kkj' => 'କାକୋ',
+ 'kl' => 'କାଲାଲିସୁଟ୍',
+ 'kln' => 'କାଲେନଜିନ୍',
+ 'km' => 'ଖାମେର୍',
'kmb' => 'କିମ୍ବୁଣ୍ଡୁ',
'kn' => 'କନ୍ନଡ',
'ko' => 'କୋରିଆନ୍',
- 'kok' => 'କୋନକାନୀ',
+ 'kok' => 'କୋଙ୍କଣି',
'kos' => 'କୋସରୈନ୍',
'kpe' => 'କୈପେଲେ',
'kr' => 'କନୁରୀ',
@@ -219,31 +237,38 @@ $languageNames = array(
'krl' => 'କାରେଲିୟାନ୍',
'kru' => 'କୁରୁଖ',
'ks' => 'କାଶ୍ମିରୀ',
+ 'ksb' => 'ଶାମବାଲା',
+ 'ksf' => 'ବାଫଲା',
+ 'ksh' => 'କୋଲୋବନିୟ',
'ku' => 'କୁର୍ଦ୍ଦିଶ୍',
'kum' => 'କୁମୀକ୍',
'kut' => 'କୁତେନାଉ',
'kv' => 'କୋମି',
'kw' => 'କୋର୍ନିସ୍',
- 'ky' => 'କିରଗିଜ୍',
+ 'ky' => 'କୀରଗୀଜ୍',
'la' => 'ଲାଟିନ୍',
'lad' => 'ଲାଦିନୋ',
+ 'lag' => 'ଲାନଗି',
'lah' => 'ଲାହାଣ୍ଡା',
'lam' => 'ଲାମ୍ବା',
'lb' => 'ଲକ୍ସେମବର୍ଗିସ୍',
'lez' => 'ଲେଜଗିୟାନ୍',
'lg' => 'ଗନ୍ଦା',
'li' => 'ଲିମ୍ବୁର୍ଗିସ୍',
+ 'lkt' => 'ଲାକୋଟା',
'ln' => 'ଲିଙ୍ଗାଲା',
'lo' => 'ଲାଓ',
'lol' => 'ମଙ୍ଗୋ',
'loz' => 'ଲୋଜି',
+ 'lrc' => 'ଉତ୍ତର ଲୁରି',
'lt' => 'ଲିଥୁଆନିଆନ୍',
'lu' => 'ଲ୍ୟୁବା-କାଟାଙ୍ଗା',
'lua' => 'ଲୁବା-ଲୁଲୁଆ',
'lui' => 'ଲୁଇସେନୋ',
'lun' => 'ଲୁଣ୍ଡା',
'luo' => 'ଲୁଓ',
- 'lus' => 'ଲୁସାଉ',
+ 'lus' => 'ମିଜୋ',
+ 'luy' => 'ଲୁୟିଆ',
'lv' => 'ଲାଟଭିଆନ୍',
'mad' => 'ମାଦୁରୀସ୍',
'mag' => 'ମାଗାହୀ',
@@ -253,16 +278,20 @@ $languageNames = array(
'mas' => 'ମାସାଇ',
'mdf' => 'ମୋକ୍ଷ',
'mdr' => 'ମନ୍ଦାର',
- 'men' => 'ମେଣ୍ଡେ',
+ 'men' => 'ମେନଡେ',
+ 'mer' => 'ମେରୁ',
+ 'mfe' => 'ମୋରିସୟେନ୍',
'mg' => 'ମାଲାଗାସୀ',
'mga' => 'ମଧ୍ୟ ଇରିଶ୍',
+ 'mgh' => 'ମଖୁୱା-ମେଟ୍ଟା',
+ 'mgo' => 'ମେଟା',
'mh' => 'ମାର୍ଶାଲୀଜ୍',
'mi' => 'ମାଓରୀ',
'mic' => 'ମିକମୌକ୍',
'min' => 'ମିନାଙ୍ଗାବାଉ',
- 'mk' => 'ମାକଡୋନିଆନ୍',
+ 'mk' => 'ମାସେଡୋନିଆନ୍',
'ml' => 'ମାଲାୟଲମ୍',
- 'mn' => 'ମଙ୍ଗୋଲିଆନ୍',
+ 'mn' => 'ମଙ୍ଗୋଳିୟ',
'mnc' => 'ମାଞ୍ଚୁ',
'mni' => 'ମଣିପୁରୀ',
'moh' => 'ମୋହୌକ',
@@ -270,14 +299,17 @@ $languageNames = array(
'mr' => 'ମରାଠୀ',
'ms' => 'ମାଲୟ',
'mt' => 'ମାଲଟୀଜ୍',
+ 'mua' => 'ମୁନଡାଂ',
'mul' => 'ବିବିଧ ଭାଷାମାନ',
'mus' => 'କ୍ରୀକ୍',
'mwl' => 'ମିରାଣ୍ଡିଜ୍',
'mwr' => 'ମାରୱାରୀ',
'my' => 'ବର୍ମୀଜ୍',
'myv' => 'ଏର୍ଜୟା',
+ 'mzn' => 'ମାଜାନଡେରାନି',
'na' => 'ନାଉରୁ',
'nap' => 'ନୀପୋଲିଟାନ୍',
+ 'naq' => 'ନାମା',
'nb' => 'ନରୱେଜିଆନ୍ ବୋକମଲ୍',
'nd' => 'ଉତ୍ତର ନେଡବେଲେ',
'nds' => 'ଲୋ ଜର୍ମାନ୍',
@@ -288,13 +320,16 @@ $languageNames = array(
'niu' => 'ନିୟୁଆନ୍',
'nl' => 'ଡଚ୍',
'nl-be' => 'ଫ୍ଲେମିଶ୍',
+ 'nmg' => 'କୱାସିଓ',
'nn' => 'ନରୱେଜିଆନ୍ ନିୟୋର୍ସ୍କ',
+ 'nnh' => 'ନାଗିମବୋନ୍',
'no' => 'ନରୱେଜିଆନ୍',
'nog' => 'ନୋଗାଇ',
'non' => 'ପୁରୁଣା ନର୍ସ',
- 'nqo' => 'ଏନ୍କୋ',
+ 'nqo' => 'ଏନକୋ',
'nr' => 'ଦକ୍ଷିଣ ନେଡବେଲେ',
'nso' => 'ଉତ୍ତରୀ ସୋଥୋ',
+ 'nus' => 'ନୁଏର',
'nv' => 'ନାଭାଜୋ',
'nwc' => 'ପାରମ୍ପରିକ ନେୱାରୀ',
'ny' => 'ନିୟାଞ୍ଜ',
@@ -313,46 +348,56 @@ $languageNames = array(
'pag' => 'ପାଙ୍ଗାସିନିଆନ୍',
'pal' => 'ପାହ୍ଲାଭି',
'pam' => 'ପାମ୍ପାଙ୍ଗା',
- 'pap' => 'ପାପିୟାମିଣ୍ଟୋ',
+ 'pap' => 'ପାପିଆମେଣ୍ଟୋ',
'pau' => 'ପାଲାଉଆନ୍',
+ 'pcm' => 'ନାଇଜେରୀୟ ପିଡଗିନ୍',
'peo' => 'ପୁରୁଣା ପର୍ସିଆନ୍',
'phn' => 'ଫୋନେସିଆନ୍',
'pi' => 'ପାଲି',
'pl' => 'ପୋଲିଶ୍',
'pon' => 'ପୋହପିଏନ୍',
+ 'prg' => 'ପ୍ରୁସିୟ',
'pro' => 'ପୁରୁଣା ପ୍ରେଭେନେସିଆଲ୍',
'ps' => 'ପାସ୍ତୋ',
- 'pt' => 'ପର୍ତ୍ତୁଗ୍ରୀଜ୍',
+ 'pt' => 'ପର୍ତ୍ତୁଗୀଜ୍‌',
'pt-br' => 'ବ୍ରାଜିଲିଆନ୍ ପର୍ତ୍ତୁଗୀଜ୍',
- 'pt-pt' => 'ଲେବେରିଆନ୍ ପର୍ତ୍ତୁଗୀଜ୍',
+ 'pt-pt' => 'ୟୁରୋପୀୟ ପର୍ତ୍ତୁଗୀଜ୍‌',
'qu' => 'କ୍ୱେଚୁଆ',
+ 'quc' => 'କିଚେ',
'raj' => 'ରାଜସ୍ଥାନୀ',
'rap' => 'ରାପାନୁଇ',
'rar' => 'ରାରୋତୋଙ୍ଗନ୍',
- 'rm' => 'ରେହେଟୋ-ରୋମାନ୍ସ',
+ 'rm' => 'ରୋମାନଶ୍‌',
'rn' => 'ରୁଣ୍ଡି',
'ro' => 'ରୋମାନିଆନ୍',
'ro-md' => 'ମୋଲଡୋଭିଆନ୍',
'rof' => 'ରୋମ୍ବୋ',
'rom' => 'ରୋମାନି',
- 'ru' => 'ରଷିଆନ୍',
+ 'ru' => 'ରୁଷିୟ',
'rup' => 'ଆରୋମାନିଆନ୍',
'rw' => 'କିନ୍ୟାରୱାଣ୍ଡା',
+ 'rwk' => 'ଆରଡବ୍ୟୁଏ',
'sa' => 'ସଂସ୍କୃତ',
'sad' => 'ସଣ୍ଡାୱେ',
- 'sah' => 'ୟାକୁଟ୍',
+ 'sah' => 'ସାଖା',
'sam' => 'ସାମୌରିଟନ୍ ଆରମାଇକ୍',
+ 'saq' => 'ସମବୁରୁ',
'sas' => 'ସାସାକ୍',
'sat' => 'ସାନ୍ତାଳି',
+ 'sba' => 'ନଗାମବେ',
+ 'sbp' => 'ସାନଗୁ',
'sc' => 'ସର୍ଦିନିଆନ୍',
'scn' => 'ସିଶିଲିଆନ୍',
'sco' => 'ସ୍କଟସ୍',
'sd' => 'ସିନ୍ଧୀ',
'se' => 'ଉତ୍ତର ସାମି',
+ 'seh' => 'ସେନା',
'sel' => 'ସେଲ୍କପ୍',
+ 'ses' => 'କୋୟରା ସେନ୍ନି',
'sg' => 'ସାଙ୍ଗୋ',
'sga' => 'ପୁରୁଣା ଇରିଶ୍',
'sh' => 'ସର୍ବୋ-କ୍ରୋଆଟିଆନ୍',
+ 'shi' => 'ତାଚେଲହିଟ୍',
'shn' => 'ଶାନ୍',
'si' => 'ସିଂହଳ',
'sid' => 'ସିଦାମୋ',
@@ -362,16 +407,17 @@ $languageNames = array(
'sma' => 'ଦକ୍ଷିଣ ସାମି',
'smj' => 'ଲୁଲେ ସାମି',
'smn' => 'ଇନାରୀ ସାମି',
- 'sms' => 'ସ୍କୋଲ୍ଟ ସାମୀ',
+ 'sms' => 'ସ୍କୋଲ୍ଟ ସାମି',
'sn' => 'ଶୋନା',
'snk' => 'ସୋନିଙ୍କେ',
'so' => 'ସୋମାଲିଆ',
'sog' => 'ସୋଗଡିଏନ୍',
'sq' => 'ଆଲବାନିଆନ୍',
- 'sr' => 'ସର୍ବିଆନ୍',
+ 'sr' => 'ସର୍ବିୟ',
'srn' => 'ଶାରାନା ଟୋଙ୍ଗୋ',
'srr' => 'ଶେରେର୍',
- 'ss' => 'ସ୍ବାତୀ',
+ 'ss' => 'ସ୍ଵାତି',
+ 'ssy' => 'ସହୋ',
'st' => 'ସେସୋଥୋ',
'su' => 'ସୁଦାନୀଜ୍',
'suk' => 'ସୁକୁମା',
@@ -379,11 +425,14 @@ $languageNames = array(
'sux' => 'ସୁମେରିଆନ୍',
'sv' => 'ସ୍ୱେଡିସ୍',
'sw' => 'ସ୍ୱାହିଲ୍',
+ 'sw-cd' => 'କଙ୍ଗୋ ସ୍ୱାହିଲି',
+ 'swb' => 'କୋମୋରିୟ',
'syc' => 'କ୍ଲାସିକାଲ୍ ସିରିକ୍',
'syr' => 'ସିରିକ୍',
'ta' => 'ତାମିଲ୍',
'te' => 'ତେଲୁଗୁ',
'tem' => 'ତିମନେ',
+ 'teo' => 'ତେସା',
'ter' => 'ତେରେନୋ',
'tet' => 'ତେତୁମ୍',
'tg' => 'ତାଜିକ୍',
@@ -397,25 +446,28 @@ $languageNames = array(
'tlh' => 'କ୍ଲିଙ୍ଗନ୍',
'tli' => 'ତ୍ଲିଙ୍ଗିଟ୍',
'tmh' => 'ତାମାଶେକ୍',
- 'tn' => 'ସେସ୍ବାନା',
+ 'tn' => 'ସୱାନା',
'to' => 'ଟୋଙ୍ଗା',
'tog' => 'ନ୍ୟାସା ଟୋଙ୍ଗୋ',
'tpi' => 'ଟୋକ୍ ପିସିନ୍',
'tr' => 'ତୁର୍କିସ୍',
- 'ts' => 'ସୋଂଗା',
+ 'trv' => 'ତାରୋକୋ',
+ 'ts' => 'ସୋଙ୍ଗା',
'tsi' => 'ତିସିମିସିଆନ୍',
'tt' => 'ତାତାର୍',
'tum' => 'ଟୁମ୍ବୁକା',
'tvl' => 'ତୁଭାଲୁ',
'tw' => 'ତ୍ୱି',
+ 'twq' => 'ତାସାୱାକ୍',
'ty' => 'ତାହିତିଆନ୍',
'tyv' => 'ତୁଭିନିଆନ୍',
+ 'tzm' => 'କେନ୍ଦ୍ରୀୟ ଆଟଲାସ୍ ଟାମାଜିଘାଟ୍',
'udm' => 'ଉଦମୂର୍ତ୍ତ',
'ug' => 'ୟୁଘୁର୍',
'uga' => 'ୟୁଗୋରଟିକ୍',
'uk' => 'ୟୁକ୍ରାନିଆନ୍',
'umb' => 'ଉମ୍ବୁଣ୍ଡୁ',
- 'und' => 'ଅଜଣା ଏବଂ ଅବୈଧ ଭାଷା',
+ 'und' => 'ଅଜଣା ଭାଷା',
'ur' => 'ଉର୍ଦ୍ଦୁ',
'uz' => 'ଉଜବେକ୍',
'vai' => 'ଭାଇ',
@@ -423,96 +475,425 @@ $languageNames = array(
'vi' => 'ଭିଏତନାମିଜ୍',
'vo' => 'ବୋଲାପୁକ',
'vot' => 'ଭୋଟିକ୍',
+ 'vun' => 'ଭୁନଜୋ',
'wa' => 'ୱାଲୁନ୍',
+ 'wae' => 'ୱାଲସେର୍',
'wal' => 'ୱାଲମୋ',
'war' => 'ୱାରୈ',
'was' => 'ୱାସୋ',
'wo' => 'ୱୋଲଫ୍',
'xal' => 'କାଲ୍ମୀକ୍',
'xh' => 'ଖୋସା',
+ 'xog' => 'ସୋଗା',
'yao' => 'ୟାଓ',
'yap' => 'ୟାପୀସ୍',
+ 'yav' => 'ୟାଂବେନ୍',
+ 'ybb' => 'ୟେମବା',
'yi' => 'ୟିଡିସ୍',
'yo' => 'ୟୋରୁବା',
+ 'yue' => 'କାନଟୋନେସେ',
'za' => 'ଜୁଆଙ୍ଗ',
'zap' => 'ଜାପୋଟେକ୍',
'zbl' => 'ବ୍ଲିସିମ୍ବଲସ୍',
'zen' => 'ଜେନାଗା',
- 'zh' => 'ଚାଇନୀଜ୍',
- 'zh-hans' => 'ସରଳିକରଣ ଚାଇନୀଜ୍',
- 'zh-hant' => 'ପାରମ୍ପରିକ ଚାଇନୀଜ୍',
+ 'zgh' => 'ମାନାଙ୍କ ମରୋକିୟ ତାମାଜିଘାଟ୍',
+ 'zh' => 'ଚାଇନିଜ୍‌',
+ 'zh-hans' => 'ସରଳୀକୃତ ଚାଇନିଜ୍‌',
+ 'zh-hant' => 'ପାରମ୍ପରିକ ଚାଇନିଜ୍‌',
'zu' => 'ଜୁଲୁ',
'zun' => 'ଜୁନୀ',
'zxx' => 'କୌଣସି ଲିଙ୍ଗୁଇଷ୍ଟ ସାମଗ୍ରୀ ନାହିଁ',
'zza' => 'ଜାଜା',
-);
+];
-$currencyNames = array(
- 'INR' => 'ଟଙକା',
-);
+$currencyNames = [
+ 'AED' => 'ଯୁକ୍ତ ଆରବ ଏମିରେଟସ୍ ଦିରହାମ୍',
+ 'AFN' => 'ଆଫଗାନ ଆଫଗାନି',
+ 'ALL' => 'ଆଲବାନିୟ ଲେକ୍',
+ 'AMD' => 'ଅର୍ମେନୀୟ ଡ୍ରାମ୍',
+ 'ANG' => 'ନେଦରଲ୍ୟାଣ୍ଡ୍ ଆଣ୍ଟିଲିୟ ଗିଲଡର୍',
+ 'AOA' => 'ଅଙ୍ଗୋଲୀୟ କୱାନଜା',
+ 'ARS' => 'ଆର୍ଜେଣ୍ଟାଇନ୍‍ ପେସୋ',
+ 'AUD' => 'ଅଷ୍ଟ୍ରେଲିୟ ଡଲାର୍',
+ 'AWG' => 'ଆରୁବୀୟ ଫ୍ଲୋରିନ୍',
+ 'AZN' => 'ଆଜେରବାଇଜାନି ମନତ୍',
+ 'BAM' => 'ବୋସନିଆ-ହର୍ଜଗୋଭିନା କନଭର୍ଟିବଲ୍ ମାର୍କ୍',
+ 'BBD' => 'ବାର୍ବାଡୀୟ ଡଲାର୍',
+ 'BDT' => 'ବଙ୍ଗଳାଦେଶୀ ଟାକା',
+ 'BGN' => 'ବୁଲଗେରୀୟ ଲେଭ୍',
+ 'BHD' => 'ବାଃରେନି ଦିନାର୍',
+ 'BIF' => 'ବୁରୁଣ୍ଡିୟ ଫ୍ରାଙ୍କ୍',
+ 'BMD' => 'ବର୍ମ୍ୟୁଡା ଡଲାର୍',
+ 'BND' => 'ବ୍ରୁନେଇ ଡଲାର୍',
+ 'BOB' => 'ବୋଲିଭୀୟ ବୋଲିଭିଆନୋ',
+ 'BRL' => 'ବ୍ରାଜିଲୀୟ ରିଏଲ୍',
+ 'BSD' => 'ବାହାମୀୟ ଡଲାର୍',
+ 'BTN' => 'ଭୁଟାନୀ ଗଲଟ୍ରୁମ୍',
+ 'BWP' => 'ବୋତ୍ସୱାନା ପୁଲା',
+ 'BYN' => 'ବେଲାରୁସି ରୁବଲ୍',
+ 'BZD' => 'ବେଲିଜ୍ ଡଲାର୍',
+ 'CAD' => 'କାନେଡିୟ ଡଲାର୍',
+ 'CDF' => 'କଙ୍ଗୋଲିଜ୍ ଫ୍ରାଙ୍କ୍',
+ 'CHF' => 'ସୁଇସ୍ ଫ୍ରାଙ୍କ୍',
+ 'CLP' => 'ଚିଲି ପେସୋ',
+ 'CNH' => 'ଚିନୀ ୟୁଆନ୍ (ଅଫସୋର୍)',
+ 'CNY' => 'ଚିନୀ ୟୁଆନ୍',
+ 'COP' => 'କଲୋମ୍ବୀୟ ପେସୋ',
+ 'CRC' => 'କୋଷ୍ଟା ରିକୀୟ କୋଲୋନ୍',
+ 'CUC' => 'କ୍ୟୁବାନ୍ କନଭର୍ଟିବଲ୍ ପେସୋ',
+ 'CUP' => 'କ୍ୟୁବାନ୍ ପେସୋ',
+ 'CVE' => 'କେପ୍ ଭେର୍ଦେୟ ଏସ୍କୁଡୋ',
+ 'CZK' => 'ଚେକ୍ କୋରୁନା',
+ 'DJF' => 'ଜିବୌଟିୟ ଫ୍ରାଙ୍କ୍',
+ 'DKK' => 'ଡାନିସ୍ କ୍ରୋନ୍',
+ 'DOP' => 'ଡୋମିନିକୀୟ ପେସୋ',
+ 'DZD' => 'ଆଲଜେରୀୟ ଦିନାର୍',
+ 'EGP' => 'ଇଜିପ୍ଟିୟ ପାଉଣ୍ଡ୍',
+ 'ERN' => 'ଏରିଟ୍ରେୟ ନାକଫା',
+ 'ETB' => 'ଇଥିଓପିୟ ବିର୍',
+ 'EUR' => 'ୟୁରୋ',
+ 'FJD' => 'ଫିଜି ଡଲାର୍',
+ 'FKP' => 'ଫକଲ୍ୟାଣ୍ଡ୍ ଦ୍ଵୀପପୁଞ୍ଜ ପାଉଣ୍ଡ୍',
+ 'GBP' => 'ବ୍ରିଟିଶ୍ ପାଉଣ୍ଡ୍',
+ 'GEL' => 'ଜର୍ଜିୟ ଲାରି',
+ 'GHS' => 'ଘାନିୟ ସେଡି',
+ 'GIP' => 'ଗିବ୍ରାଲଟର୍ ପାଉଣ୍ଡ୍',
+ 'GMD' => 'ଗାମ୍ବିୟ ଡାଲାସି',
+ 'GNF' => 'ଗୁଇନେୟ ଫ୍ରାଙ୍କ୍',
+ 'GTQ' => 'ଗୁଏଟମାଲୀୟ କ୍ଵେତଜାଲ୍',
+ 'GYD' => 'ଗାୟାନିସ୍ ଡଲାର୍',
+ 'HKD' => 'ହଂ କଂ ଡଲାର୍',
+ 'HNL' => 'ହୋଣ୍ଡୁରୀୟ ଲେମପିରା',
+ 'HRK' => 'କ୍ରୋଏସୀୟ କୁନା',
+ 'HTG' => 'ହାଇତୀୟ ଗୋରଡ୍',
+ 'HUF' => 'ହଙ୍ଗେରିୟ ଫୋରିଣ୍ଟ୍',
+ 'IDR' => 'ଇଣ୍ଡୋନେସିୟ ରୁପିଆ',
+ 'ILS' => 'ଇସ୍ରାଇଲି ନ୍ୟୁ ଶେକେଲ୍',
+ 'INR' => 'ଭାରତୀୟ ଟଙ୍କା',
+ 'IQD' => 'ଇରାକି ଦିନାର୍',
+ 'IRR' => 'ଇରାନୀ ରିଆଲ୍',
+ 'ISK' => 'ଆଇସଲ୍ୟାଣ୍ଡିକ୍‍ କ୍ରୋନା',
+ 'JMD' => 'ଜାମାଇକୀୟ ଡଲାର୍',
+ 'JOD' => 'ଜର୍ଡାନିୟ ଦିନାର୍',
+ 'JPY' => 'ଜାପାନୀ ୟେନ୍',
+ 'KES' => 'କେନିୟ ଶିଲିଂ',
+ 'KGS' => 'କିର୍ଗିସ୍ତାନୀ ସୋମ୍',
+ 'KHR' => 'କାମ୍ଵୋଡିୟ ରିଏଲ୍',
+ 'KMF' => 'କୋମୋରୀୟ ଫ୍ରାଙ୍କ୍',
+ 'KPW' => 'ଉତ୍ତର କୋରିଆଇ ୱୋନ୍',
+ 'KRW' => 'ଦକ୍ଷିଣ କୋରିଆଇ ୱୋନ୍',
+ 'KWD' => 'କୁୱେତି ଦିନାର୍',
+ 'KYD' => 'କେମେନ୍ ଦ୍ଵୀପପୁଞ୍ଜ ଡଲାର୍',
+ 'KZT' => 'କାଜାକସ୍ତାନୀ ତେଙ୍ଗେ',
+ 'LAK' => 'ଲାଓଟିୟ କିପ୍',
+ 'LBP' => 'ଲେବାନିଜ୍ ପାଉଣ୍ଡ୍',
+ 'LKR' => 'ଶ୍ରୀଲଙ୍କିୟ ରୁପି',
+ 'LRD' => 'ଲିବେରୀୟ ଡଲାର୍',
+ 'LYD' => 'ଲିବ୍ୟ ଦିନାର୍',
+ 'MAD' => 'ମୋରୋକୀୟ ଦିର୍ହାମ୍',
+ 'MDL' => 'ମୋଲଡୋଭାନ୍ ଲେୟୁ',
+ 'MGA' => 'ମାଲାଗାସି ଏରିଆରୀ',
+ 'MKD' => 'ମାସେଡୋନୀୟ ଡିନର୍',
+ 'MMK' => 'ମ୍ୟାନମାର୍ କ୍ୟାତ୍‌',
+ 'MNT' => 'ମଙ୍ଗୋଲିୟ ତୁଗ୍ରିକ୍',
+ 'MOP' => 'ମାକାନେଜ୍ ପାଟାକା',
+ 'MRO' => 'ମର୍ଟିନିୟ ଆଗୁଇଅ (1973–2017)',
+ 'MRU' => 'ମର୍ଟିନିୟ ଆଗୁଇଅ',
+ 'MUR' => 'ମୌରିସୀୟ ରୁପି',
+ 'MVR' => 'ମାଲଡିଭିୟ ରୁଫିୟା',
+ 'MWK' => 'ମଲାୱି କ୍ୱାଚା',
+ 'MXN' => 'ମେକ୍ସିକୀୟ ପେସୋ',
+ 'MYR' => 'ମାଲେସିୟ ରିଙ୍ଗିଟ୍',
+ 'MZN' => 'ମୋଜାମ୍ବିକୀୟ ମେଟିକାଲ୍',
+ 'NAD' => 'ନାମିବିୟ ଡଲାର୍',
+ 'NGN' => 'ନାଇଜେରିଆଇ ନାଇରା',
+ 'NIO' => 'ନିକାରାଗୁଆ କୋର୍ଡୋବା',
+ 'NOK' => 'ନରୱେୟୀୟ କ୍ରୋନ୍',
+ 'NPR' => 'ନେପାଳି ରୁପି',
+ 'NZD' => 'ନ୍ୟୁଜିଲ୍ୟାଣ୍ଡ୍ ଡଲାର୍',
+ 'OMR' => 'ଓମାନି ରିଆଲ୍',
+ 'PAB' => 'ପାନାମାନିୟ ବାଲବୋଆ',
+ 'PEN' => 'ପେରୁଭୀୟ ସୋଲ୍',
+ 'PGK' => 'ପପୁଆ ନ୍ୟୁ ଗୁଇନିୟ କିନା',
+ 'PHP' => 'ଫିଲିପିନି ପେସୋ',
+ 'PKR' => 'ପାକିସ୍ତାନୀ ରୁପି',
+ 'PLN' => 'ପୋଲିଶ୍ ଜ୍ଲଟୀ',
+ 'PYG' => 'ପାରାଗୁଆୟାନ୍ ଗୁଆରାନି',
+ 'QAR' => 'କ୍ଵାତାରି ରିଆଲ୍',
+ 'RON' => 'ରୋମାନିୟ ଲେଉ',
+ 'RSD' => 'ସର୍ବିଆଇ ଦିନାର',
+ 'RUB' => 'ରୁଷି ରୁବଲ୍',
+ 'RWF' => 'ରୁୱାଣ୍ଡା ଫ୍ରାଙ୍କ୍',
+ 'SAR' => 'ସୌଦି ରିୟାଲ୍',
+ 'SBD' => 'ସୋଲୋମୋନ୍ ଦ୍ଵୀପପୁଞ୍ଜ ଡଲାର୍',
+ 'SCR' => 'ସେୟଚେଲୋଇସ୍ ରୁପି',
+ 'SDG' => 'ସୁଦାନୀଜ ପାଉଣ୍ଡ୍',
+ 'SEK' => 'ସ୍ୱେଡିଶ୍ କ୍ରୋନା',
+ 'SGD' => 'ସିଙ୍ଗାପୁର୍ ଡଲାର୍',
+ 'SHP' => 'ସେଣ୍ଟ୍. ହେଲେନା ପାଉଣ୍ଡ୍',
+ 'SLL' => 'ସିଏରା ଲିଓନୀୟ ଲେଓନ୍',
+ 'SOS' => 'ସୋମାଲି ସିଲିଂ',
+ 'SRD' => 'ସୁରିନାମିଜ୍ ଡଲାର୍',
+ 'SSP' => 'ଦକ୍ଷିଣ ସୁଡାନିଜ୍‍ ପାଉଣ୍ଡ୍',
+ 'STD' => 'ସାଓ ତୋମେ & ପ୍ରିସିପ୍ ଡୋବ୍ରା (1977–2017)',
+ 'STN' => 'ସାଓ ତୋମେ & ପ୍ରିସିପ୍ ଡୋବ୍ରା',
+ 'SYP' => 'ସିରିୟ ପାଉଣ୍ଡ୍',
+ 'SZL' => 'ସ୍ଵାଜି ଲିଲାଞ୍ଜେନି',
+ 'THB' => 'ଥାଇ ଭାଟ୍',
+ 'TJS' => 'ତାଜିକିସ୍ତାନୀ ସୋମୋନି',
+ 'TMT' => 'ତୁର୍କମେନିସ୍ତାନୀ ମନତ୍‌',
+ 'TND' => 'ଟୁନେସିଆଇ ଦିନାର୍',
+ 'TOP' => 'ତୋଙ୍ଗିୟ ପାଙ୍ଗା',
+ 'TRY' => 'ତୁର୍କିୟ ଲିରା',
+ 'TTD' => 'ତ୍ରିନିଦାଦ୍ ଏବଂ ଟୋବାଗୋ ଡଲାର୍',
+ 'TWD' => 'ନ୍ୟୁ ତାଇୱାନ୍ ଡଲାର୍',
+ 'TZS' => 'ତାନଜାନୀୟ ଶିଲିଂ',
+ 'UAH' => 'ୟୁକ୍ରେନୀୟ ହ୍ରାଇଭନିଆ',
+ 'UGX' => 'ଉଗାଣ୍ଡିୟ ଶିଲିଂ',
+ 'USD' => 'ଯୁକ୍ତରାଷ୍ଟ୍ର ଡଲାର୍',
+ 'UYU' => 'ଉରୁଗୁଇୟାନ୍ ପେସୋ',
+ 'UZS' => 'ଉଜବେକିସ୍ତାନୀ ସୋମ୍',
+ 'VEF' => 'ଭେନେଜୁଏଲାନ୍ ବୋଲିଭାର୍ (2008–2018)',
+ 'VES' => 'ଭେନେଜୁଏଲାନ୍ ବୋଲିଭାର୍',
+ 'VND' => 'ଭୀଏତନାମୀୟ ଡଙ୍ଗ',
+ 'VUV' => 'ଭାନୁଆଟୁ ଭାଟୁ',
+ 'WST' => 'ସାମୋୟିୟ ତାଲା',
+ 'XAF' => 'ମଧ୍ୟ ଆଫ୍ରିକୀ CFA ଫ୍ରାଙ୍କ୍',
+ 'XCD' => 'ପୂର୍ବ କାରିବୀୟ ଡଲାର୍',
+ 'XOF' => 'ପଶ୍ଚିମ ଆଫ୍ରିକିୟ CFA ଫ୍ରାଙ୍କ୍',
+ 'XPF' => 'CFP ଫ୍ରାଙ୍କ୍',
+ 'XXX' => 'ଅଜଣା ମୁଦ୍ରା',
+ 'YER' => 'ୟେମେନି ରିଆଲ୍',
+ 'ZAR' => 'ଦକ୍ଷିଣ ଆଫ୍ରିକିୟ ରାଣ୍ଡ୍',
+ 'ZMW' => 'ଜାମ୍ବୀୟ କ୍ୱାଚା',
+];
-$countryNames = array(
+$currencySymbols = [
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => 'A$',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => 'R$',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYN' => 'BYN',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CA$',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNH' => 'CNH',
+ 'CNY' => 'CN¥',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GBP' => '£',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => '¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MX$',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZ$',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'STN' => 'STN',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => 'THB',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
+ 'USD' => '$',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VND' => '₫',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'EC$',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+];
+
+$countryNames = [
+ 'AC' => 'ଆସେନସିଅନ୍‌ ଦ୍ୱୀପ',
'AD' => 'ଆଣ୍ଡୋରା',
'AE' => 'ସଂଯୁକ୍ତ ଆରବ ଏମିରେଟସ୍',
- 'AF' => 'ଆଫାଗାନିସ୍ତାନ୍',
+ 'AF' => 'ଆଫଗାନିସ୍ତାନ୍',
'AG' => 'ଆଣ୍ଟିଗୁଆ ଏବଂ ବାରବୁଦା',
'AI' => 'ଆଙ୍ଗୁଇଲ୍ଲା',
'AL' => 'ଆଲବାନିଆ',
'AM' => 'ଆର୍ମେନିଆ',
- 'AN' => 'ନେଦରଲ୍ୟାଣ୍ଡସ୍ ଆଣ୍ଟିଲିଜ୍',
'AO' => 'ଆଙ୍ଗୋଲା',
- 'AQ' => 'ଆର୍ଣ୍ଟକଟିକା',
+ 'AQ' => 'ଆଣ୍ଟାର୍କାଟିକା',
'AR' => 'ଆର୍ଜେଣ୍ଟିନା',
'AS' => 'ଆମେରିକାନ୍ ସାମୋଆ',
'AT' => 'ଅଷ୍ଟ୍ରିଆ',
'AU' => 'ଅଷ୍ଟ୍ରେଲିଆ',
'AW' => 'ଆରୁବା',
- 'AX' => 'ଆଲାଣ୍ଡ ଆଇସଲ୍ୟାଣ୍ଡ',
+ 'AX' => 'ଅଲାଣ୍ଡ ଦ୍ଵୀପପୁଞ୍ଜ',
'AZ' => 'ଆଜେରବାଇଜାନ୍',
'BA' => 'ବୋସନିଆ ଏବଂ ହର୍ଜଗୋଭିନା',
'BB' => 'ବାରବାଡୋସ୍',
- 'BD' => 'ବାଙ୍ଗଲାଦେଶ୍',
+ 'BD' => 'ବାଂଲାଦେଶ',
'BE' => 'ବେଲଜିୟମ୍',
- 'BF' => 'ବୁର୍କିନୋ ଫାସୋ',
+ 'BF' => 'ବୁର୍କିନା ଫାସୋ',
'BG' => 'ବୁଲଗେରିଆ',
'BH' => 'ବାହାରିନ୍',
- 'BI' => 'ବୁରୁନ୍ଦି',
+ 'BI' => 'ବୁରୁଣ୍ଡି',
'BJ' => 'ବେନିନ୍',
'BL' => 'ସେଣ୍ଟ ବାର୍ଥେଲେମି',
- 'BM' => 'ବରମୁଡା',
+ 'BM' => 'ବର୍ମୁଡା',
'BN' => 'ବ୍ରୁନେଇ',
'BO' => 'ବୋଲଭିଆ',
+ 'BQ' => 'କାରବିୟନ୍‌ ନେଦରଲ୍ୟାଣ୍ଡ',
'BR' => 'ବ୍ରାଜିଲ୍',
'BS' => 'ବାହାମାସ୍',
- 'BT' => 'ଭୁଟାନ୍',
- 'BV' => 'ବୌଭେଟ୍ ଆଇସଲ୍ୟାଣ୍ଡ',
- 'BW' => 'ବୋଟସ୍ବାନ୍',
+ 'BT' => 'ଭୁଟାନ',
+ 'BV' => 'ବୌଭେଟ୍‌ ଦ୍ୱୀପ',
+ 'BW' => 'ବୋଟସ୍ୱାନା',
'BY' => 'ବେଲାରୁଷ୍',
'BZ' => 'ବେଲିଜ୍',
'CA' => 'କାନାଡା',
- 'CC' => 'କୋକୋସ୍ ଆଇସଲ୍ୟାଣ୍ଡ',
+ 'CC' => 'କୋକୋସ୍ (କୀଲିଂ) ଦ୍ଵୀପପୁଞ୍ଜ',
'CD' => 'କଙ୍ଗୋ-କିନସାସା',
- 'CF' => 'ମଧ୍ୟ ଆଫ୍ରିକୀୟ ଗଣତନ୍ତ୍ର',
+ 'CF' => 'ମଧ୍ୟ ଆଫ୍ରିକୀୟ ସାଧାରଣତନ୍ତ୍ର',
'CG' => 'କଙ୍ଗୋ-ବ୍ରାଜିଭିଲ୍ଲେ',
- 'CH' => 'ସ୍ବିଜରଲ୍ୟାଣ୍ଡ',
- 'CI' => 'ଆଇବରୀ କୋଷ୍ଟ',
- 'CK' => 'କୁକ୍ ଆଇସଲ୍ୟାଣ୍ଡ',
+ 'CH' => 'ସ୍ୱିଜରଲ୍ୟାଣ୍ଡ',
+ 'CI' => 'କୋତ୍ ଡି ଭ୍ଵାର୍',
+ 'CK' => 'କୁକ୍‌ ଦ୍ୱୀପପୁଞ୍ଜ',
'CL' => 'ଚିଲ୍ଲୀ',
'CM' => 'କାମେରୁନ୍',
'CN' => 'ଚିନ୍',
'CO' => 'କୋଲମ୍ବିଆ',
+ 'CP' => 'କ୍ଲିପରଟନ୍‌ ଦ୍ୱୀପ',
'CR' => 'କୋଷ୍ଟା ରିକା',
'CU' => 'କ୍ୱିବା',
'CV' => 'କେପ୍ ଭର୍ଦେ',
- 'CX' => 'ଖ୍ରୀଷ୍ଟମାସ ଆଇଲ୍ୟାଣ୍ଡ',
+ 'CW' => 'କୁରାକାଓ',
+ 'CX' => 'ଖ୍ରୀଷ୍ଟମାସ ଦ୍ୱୀପ',
'CY' => 'ସାଇପ୍ରସ୍',
- 'CZ' => 'ଚେକ୍ ସାଧାରଣତନ୍ତ୍ର',
+ 'CZ' => 'ଚେଚିଆ',
'DE' => 'ଜର୍ମାନୀ',
- 'DJ' => 'ଡିବୌଟି',
+ 'DG' => 'ଡିଏଗୋ ଗାର୍ସିଆ',
+ 'DJ' => 'ଜିବୋଟି',
'DK' => 'ଡେନମାର୍କ',
- 'DM' => 'ଡୋମିନାକା',
- 'DO' => 'ଡୋମିନକାନ୍ ପ୍ରଜାତନ୍ତ୍ର',
+ 'DM' => 'ଡୋମିନିକା',
+ 'DO' => 'ଡୋମିନିକାନ୍‌ ସାଧାରଣତନ୍ତ୍ର',
'DZ' => 'ଆଲଜେରିଆ',
+ 'EA' => 'ସିଉଟା ଏବଂ ମେଲିଲା',
'EC' => 'ଇକ୍ୱାଡୋର୍',
'EE' => 'ଏସ୍ତୋନିଆ',
'EG' => 'ଇଜିପ୍ଟ',
@@ -520,15 +901,16 @@ $countryNames = array(
'ER' => 'ଇରିଟ୍ରିୟା',
'ES' => 'ସ୍ପେନ୍',
'ET' => 'ଇଥିଓପିଆ',
- 'EU' => 'ୟୁରୋପିଆନ୍ ୟୁନିଅନ୍',
+ 'EU' => 'ୟୁରୋପୀୟ ସଂଘ',
+ 'EZ' => 'ୟୁରୋକ୍ଷେତ୍ର',
'FI' => 'ଫିନଲ୍ୟାଣ୍ଡ',
'FJ' => 'ଫିଜି',
- 'FK' => 'ଫଲ୍କଲ୍ୟାଣ୍ଡ ଦ୍ବୀପପୁଞ୍ଜ',
+ 'FK' => 'ଫକ୍‌ଲ୍ୟାଣ୍ଡ ଦ୍ଵୀପପୁଞ୍ଜ',
'FM' => 'ମାଇକ୍ରୋନେସିଆ',
- 'FO' => 'ଫାରୋଇ ଦ୍ବୀପପୁଞ୍ଜ',
+ 'FO' => 'ଫାରୋଇ ଦ୍ୱୀପପୁଞ୍ଜ',
'FR' => 'ଫ୍ରାନ୍ସ',
'GA' => 'ଗାବୋନ୍',
- 'GB' => 'ବ୍ରିଟେନ୍',
+ 'GB' => 'ୟୁକେ',
'GD' => 'ଗ୍ରେନାଡା',
'GE' => 'ଜର୍ଜିଆ',
'GF' => 'ଫ୍ରେଞ୍ଚ ଗୁଇନା',
@@ -537,84 +919,85 @@ $countryNames = array(
'GI' => 'ଜିବ୍ରାଲ୍ଟର୍',
'GL' => 'ଗ୍ରୀନଲ୍ୟାଣ୍ଡ',
'GM' => 'ଗାମ୍ବିଆ',
- 'GN' => 'ଗୁଏନେଆ',
- 'GP' => 'ଗୌଡେଲୌପେ',
+ 'GN' => 'ଗୁଇନିଆ',
+ 'GP' => 'ଗୁଆଡେଲୋପ୍',
'GQ' => 'ଇକ୍ବାଟେରିଆଲ୍ ଗୁଇନିଆ',
'GR' => 'ଗ୍ରୀସ୍',
- 'GS' => 'ଦକ୍ଷିଣ ଜର୍ଜିଆ ଏବଂ ଦକ୍ଷିଣ ସାଣ୍ଡୱିଚ୍ ଦ୍ବୀପପୁଞ୍ଜ',
+ 'GS' => 'ଦକ୍ଷିଣ ଜର୍ଜିଆ ଏବଂ ଦକ୍ଷିଣ ସାଣ୍ଡୱିଚ୍ ଦ୍ୱୀପପୁଞ୍ଜ',
'GT' => 'ଗୁଏତମାଲା',
'GU' => 'ଗୁଆମ୍',
'GW' => 'ଗୁଇନିଆ-ବିସାଉ',
'GY' => 'ଗୁଇନା',
- 'HK' => 'ହଂକଂ ବିଶେଷ ପ୍ରଶାସନିକ କ୍ଷେତ୍ର ଚୀନ୍',
- 'HM' => 'ହାର୍ଡ ଦ୍ବୀପପୁଞ୍ଜ ଏବଂ ମ୍ୟାକଡୋନାଲ୍ ଦ୍ବୀପପୁଞ୍ଜ',
- 'HN' => 'ହୋଣ୍ଡାରୁସ୍',
- 'HR' => 'କ୍ରୋଆଟିଆ',
+ 'HK' => 'ହଂ କଂ',
+ 'HM' => 'ହାର୍ଡ୍‌ ଏବଂ ମ୍ୟାକଡୋନାଲ୍ଡ ଦ୍ୱୀପପୁଞ୍ଜ',
+ 'HN' => 'ହୋଣ୍ଡୁରାସ୍‌',
+ 'HR' => 'କ୍ରୋଏସିଆ',
'HT' => 'ହାଇତି',
'HU' => 'ହଙ୍ଗେରୀ',
+ 'IC' => 'କେନେରୀ ଦ୍ୱୀପପୁଞ୍ଜ',
'ID' => 'ଇଣ୍ଡୋନେସିଆ',
'IE' => 'ଆୟରଲ୍ୟାଣ୍ଡ',
'IL' => 'ଇସ୍ରାଏଲ୍',
- 'IM' => 'ଆଇଲ୍ ଅଫ୍ ମୈନ୍',
+ 'IM' => 'ଆଇଲ୍‌ ଅଫ୍‌ ମ୍ୟାନ୍‌',
'IN' => 'ଭାରତ',
- 'IO' => 'ବ୍ରିଟିଶ୍ ଭାରତୀୟ ସାମୁଦ୍ରିକ କ୍ଷେତ୍ର',
+ 'IO' => 'ବ୍ରିଟିଶ୍‌ ଭାରତ ମାହାସାଗର କ୍ଷେତ୍ର',
'IQ' => 'ଇରାକ୍',
- 'IR' => 'ଇରାନ୍',
+ 'IR' => 'ଇରାନ',
'IS' => 'ଆଇସଲ୍ୟାଣ୍ଡ',
'IT' => 'ଇଟାଲୀ',
'JE' => 'ଜର୍ସି',
'JM' => 'ଜାମାଇକା',
'JO' => 'ଜୋର୍ଡାନ୍',
- 'JP' => 'ଜାପାନ୍',
+ 'JP' => 'ଜାପାନ',
'KE' => 'କେନିୟା',
- 'KG' => 'କିର୍ଗିଜିସ୍ଥାନ',
+ 'KG' => 'କିର୍ଗିଜିସ୍ତାନ',
'KH' => 'କାମ୍ବୋଡିଆ',
- 'KI' => 'କିରିବାଟୀ',
- 'KM' => 'କାମୋରସ୍',
- 'KN' => 'ସେଣ୍ଟ କିଟସ୍ ଏଣ୍ଡ ନେଭିସ୍',
+ 'KI' => 'କିରିବାଟି',
+ 'KM' => 'କୋମୋରସ୍',
+ 'KN' => 'ସେଣ୍ଟ କିଟସ୍‌ ଏବଂ ନେଭିସ୍‌',
'KP' => 'ଉତ୍ତର କୋରିଆ',
'KR' => 'ଦକ୍ଷିଣ କୋରିଆ',
'KW' => 'କୁଏତ୍',
- 'KY' => 'କେମ୍ୟାନ୍ ଦ୍ବୀପପୁଞ୍ଜ',
- 'KZ' => 'କାଜାକାସ୍ଥାନ୍',
+ 'KY' => 'କେମ୍ୟାନ୍‌ ଦ୍ୱୀପପୁଞ୍ଜ',
+ 'KZ' => 'କାଜାକାସ୍ତାନ',
'LA' => 'ଲାଓସ୍',
'LB' => 'ଲେବାନନ୍',
'LC' => 'ସେଣ୍ଟ ଲୁସିଆ',
- 'LI' => 'ଲିଚେସ୍ତିଆନାନ୍',
+ 'LI' => 'ଲିଚେଟନଷ୍ଟେଇନ୍',
'LK' => 'ଶ୍ରୀଲଙ୍କା',
- 'LR' => 'ଲିବେରିଆ',
+ 'LR' => 'ଲାଇବେରିଆ',
'LS' => 'ଲେସୋଥୋ',
- 'LT' => 'ଲିଥାଆନିଆ',
+ 'LT' => 'ଲିଥୁଆନିଆ',
'LU' => 'ଲକ୍ସେମବର୍ଗ',
'LV' => 'ଲାଟଭିଆ',
- 'LY' => 'ଲିବିଆ',
+ 'LY' => 'ଲିବ୍ୟା',
'MA' => 'ମୋରୋକ୍କୋ',
'MC' => 'ମୋନାକୋ',
- 'MD' => 'ମାଲଡୋଭା',
- 'ME' => 'ମଣ୍ଟେଗ୍ରୋ',
+ 'MD' => 'ମୋଲଡୋଭା',
+ 'ME' => 'ମଣ୍ଟେନିଗ୍ରୋ',
'MF' => 'ସେଣ୍ଟ ମାର୍ଟିନ୍',
'MG' => 'ମାଡାଗାସ୍କର୍',
- 'MH' => 'ମାର୍ଶଲ୍ ଦ୍ବୀପପୁଞ୍ଜ',
+ 'MH' => 'ମାର୍ଶାଲ୍ ଦ୍ୱୀପପୁଞ୍ଜ',
'MK' => 'ମାସେଡୋନିଆ',
- 'ML' => 'ମାଳୀ',
- 'MM' => 'ମିୟାମାର୍',
+ 'ML' => 'ମାଲି',
+ 'MM' => 'ମିଆଁମାର',
'MN' => 'ମଙ୍ଗୋଲିଆ',
- 'MO' => 'ମାକାଉ SAR ଚିନ୍',
- 'MP' => 'ଉତ୍ତର ମାରିଆନା ଦ୍ବୀପପୁଞ୍ଜ',
+ 'MO' => 'ମାକାଉ',
+ 'MP' => 'ଉତ୍ତର ମାରିଆନା ଦ୍ୱୀପପୁଞ୍ଜ',
'MQ' => 'ମାର୍ଟିନିକ୍ୟୁ',
- 'MR' => 'ମାଉରିଟାନିଆ',
+ 'MR' => 'ମୌରିଟାନିଆ',
'MS' => 'ମଣ୍ଟେସେରାଟ୍',
'MT' => 'ମାଲ୍ଟା',
- 'MU' => 'ମୌରିସସ୍',
- 'MV' => 'ମାଳଦ୍ବୀପ',
+ 'MU' => 'ମରିସସ',
+ 'MV' => 'ମାଲଦିଭସ୍‌',
'MW' => 'ମାଲୱି',
'MX' => 'ମେକ୍ସିକୋ',
'MY' => 'ମାଲେସିଆ',
- 'MZ' => 'ମୋଜାମ୍ବିକ୍ୟୁ',
- 'NA' => 'ନାମ୍ବିଆ',
+ 'MZ' => 'ମୋଜାମ୍ବିକ୍‌',
+ 'NA' => 'ନାମିବିଆ',
'NC' => 'ନୂତନ କାଲେଡୋନିଆ',
- 'NE' => 'ନାଇଜର୍',
- 'NF' => 'ନରଫ୍ଲକ୍ ଦ୍ବୀପ',
+ 'NE' => 'ନାଇଜର',
+ 'NF' => 'ନର୍ଫକ୍ ଦ୍ଵୀପ',
'NG' => 'ନାଇଜେରିଆ',
'NI' => 'ନିକାରାଗୁଆ',
'NL' => 'ନେଦରଲ୍ୟାଣ୍ଡ',
@@ -631,74 +1014,283 @@ $countryNames = array(
'PH' => 'ଫିଲିପାଇନସ୍',
'PK' => 'ପାକିସ୍ତାନ',
'PL' => 'ପୋଲାଣ୍ଡ',
- 'PM' => 'ସେଣ୍ଟ ପିଏରେ ଏବଂ ମିକ୍ବାଲୋନ୍',
- 'PN' => 'ପିଟକାଇରିନ୍',
+ 'PM' => 'ସେଣ୍ଟ ପିଏରେ ଏବଂ ମିକ୍ୱେଲନ୍‌',
+ 'PN' => 'ପିଟକାଇରିନ୍‌ ଦ୍ୱୀପପୁଞ୍ଜ',
'PR' => 'ପୁଏର୍ତ୍ତୋ ରିକୋ',
- 'PS' => 'ପାଲେସ୍ତେନିଆ',
+ 'PS' => 'ପାଲେଷ୍ଟାଇନ୍',
'PT' => 'ପର୍ତ୍ତୁଗାଲ୍',
'PW' => 'ପାଲାଉ',
'PY' => 'ପାରାଗୁଏ',
'QA' => 'କତାର୍',
- 'QO' => 'ଆଉଟଲେଇଂ ଓସେନିଆ',
+ 'QO' => 'ସୀମାନ୍ତବର୍ତ୍ତୀ ଓସିନିଆ',
'RE' => 'ରିୟୁନିଅନ୍',
'RO' => 'ରୋମାନିଆ',
'RS' => 'ସର୍ବିଆ',
'RU' => 'ରୁଷିଆ',
'RW' => 'ରାୱାଣ୍ଡା',
'SA' => 'ସାଉଦି ଆରବିଆ',
- 'SB' => 'ସୋଲୋମନ୍ ଦ୍ବୀପପୁଞ୍ଜ',
+ 'SB' => 'ସୋଲୋମନ୍‌ ଦ୍ୱୀପପୁଞ୍ଜ',
'SC' => 'ସେଚେଲସ୍',
- 'SD' => 'ସୁଦାନ୍',
+ 'SD' => 'ସୁଦାନ',
'SE' => 'ସ୍ୱେଡେନ୍',
'SG' => 'ସିଙ୍ଗାପୁର୍',
'SH' => 'ସେଣ୍ଟ ହେଲେନା',
'SI' => 'ସ୍ଲୋଭେନିଆ',
- 'SJ' => 'ସାଲ୍ଭାର୍ଡ ଏବଂ ଜାନ୍ ମାୟୋନ୍',
+ 'SJ' => 'ସାଲବାର୍ଡ ଏବଂ ଜାନ୍‌ ମାୟେନ୍‌',
'SK' => 'ସ୍ଲୋଭାକିଆ',
- 'SL' => 'ସିଓରା ଲିଓନ୍',
+ 'SL' => 'ସିଏରା ଲିଓନ',
'SM' => 'ସାନ୍ ମାରିନୋ',
'SN' => 'ସେନେଗାଲ୍',
'SO' => 'ସୋମାଲିଆ',
'SR' => 'ସୁରିନାମ',
- 'SS' => 'ଦକ୍ଷିନ ସୁଦାନ',
+ 'SS' => 'ଦକ୍ଷିଣ ସୁଦାନ',
'ST' => 'ସାଓ ଟୋମେ ଏବଂ ପ୍ରିନସିପି',
'SV' => 'ଏଲ୍ ସାଲଭାଡୋର୍',
+ 'SX' => 'ସିଣ୍ଟ ମାର୍ଟୀନ୍‌',
'SY' => 'ସିରିଆ',
- 'SZ' => 'ସ୍ବାଜିଲାଣ୍ଡ',
- 'TC' => 'ତୁର୍କସ୍ ଏବଂ ସାଇକସ୍ ଦ୍ବୀପପୁଞ୍ଜ',
+ 'SZ' => 'ସ୍ୱାଜିଲ୍ୟାଣ୍ଡ',
+ 'TA' => 'ଟ୍ରାଇଷ୍ଟନ୍‌ ଦା କୁନ୍‌ଚା',
+ 'TC' => 'ତୁର୍କସ୍‌ ଏବଂ କାଇକୋସ୍‌ ଦ୍ୱୀପପୁଞ୍ଜ',
'TD' => 'ଚାଦ୍',
'TF' => 'ଫରାସୀ ଦକ୍ଷିଣ କ୍ଷେତ୍ର',
'TG' => 'ଟୋଗୋ',
- 'TH' => 'ଥାଇଲାଣ୍ଡ',
+ 'TH' => 'ଥାଇଲ୍ୟାଣ୍ଡ',
'TJ' => 'ତାଜିକିସ୍ଥାନ୍',
'TK' => 'ଟୋକେଲାଉ',
- 'TL' => 'ପୁର୍ବ ତିମୋର୍',
- 'TM' => 'ତୁର୍କମେନିସ୍ତାନ୍',
- 'TN' => 'ତୁନିସିଆ',
+ 'TL' => 'ତିମୋର୍-ଲେଷ୍ଟେ',
+ 'TM' => 'ତୁର୍କମେନିସ୍ତାନ',
+ 'TN' => 'ଟ୍ୟୁନିସିଆ',
'TO' => 'ଟୋଙ୍ଗା',
'TR' => 'ତୁର୍କୀ',
'TT' => 'ତ୍ରିନିଦାଦ୍ ଏବଂ ଟୋବାଗୋ',
- 'TV' => 'ଟୁଭାଲୁ',
- 'TW' => 'ତାଇୱାନ୍',
+ 'TV' => 'ତୁଭାଲୁ',
+ 'TW' => 'ତାଇୱାନ',
'TZ' => 'ତାଞ୍ଜାନିଆ',
- 'UA' => 'ୟୁକ୍ରାଇନ୍',
+ 'UA' => 'ୟୁକ୍ରେନ୍',
'UG' => 'ଉଗାଣ୍ଡା',
- 'UM' => 'ୟୁନାଇଟେଡ୍ ଷ୍ଟେଟସ୍ ମାଇନର୍ ଆଉଟଲେଇଂ ଦ୍ବୀପପୁଞ୍ଜ',
- 'US' => 'ୟୁ.ଏସ୍',
+ 'UM' => 'ଯୁକ୍ତରାଷ୍ଟ୍ର ଆଉଟ୍‌ଲାଇଙ୍ଗ ଦ୍ଵୀପପୁଞ୍ଜ',
+ 'UN' => 'ଜାତିସଂଘ',
+ 'US' => 'ଯୁକ୍ତରାଷ୍ଟ୍ର',
'UY' => 'ଉରୁଗୁଏ',
- 'UZ' => 'ଉଜବେକିସ୍ଥାନ୍',
- 'VA' => 'ଭାଟିକାନ୍',
+ 'UZ' => 'ଉଜବେକିସ୍ତାନ',
+ 'VA' => 'ଭାଟିକାନ୍ ସିଟି',
'VC' => 'ସେଣ୍ଟ ଭିନସେଣ୍ଟ ଏବଂ ଦି ଗ୍ରେନାଡିସ୍',
- 'VE' => 'ଭେନଜୁଏଲା',
- 'VG' => 'ବ୍ରିଟିଶ୍ ଭର୍ଜିନ୍ ଦ୍ବୀପପୁଞ୍ଜ',
- 'VI' => 'ୟୁଏସ୍ ଭର୍ଜିନ୍ ଦ୍ବୀପପୁଞ୍ଜ',
+ 'VE' => 'ଭେନେଜୁଏଲା',
+ 'VG' => 'ବ୍ରିଟିଶ୍‌ ଭର୍ଜିନ୍ ଦ୍ୱୀପପୁଞ୍ଜ',
+ 'VI' => 'ଯୁକ୍ତରାଷ୍ଟ୍ର ଭିର୍ଜିନ୍ ଦ୍ଵୀପପୁଞ୍ଜ',
'VN' => 'ଭିଏତନାମ୍',
'VU' => 'ଭାନୁଆତୁ',
'WF' => 'ୱାଲିସ୍ ଏବଂ ଫୁତୁନା',
'WS' => 'ସାମୋଆ',
+ 'XK' => 'କୋସୋଭୋ',
'YE' => 'ୟେମେନ୍',
'YT' => 'ମାୟୋଟେ',
'ZA' => 'ଦକ୍ଷିଣ ଆଫ୍ରିକା',
'ZM' => 'ଜାମ୍ବିଆ',
'ZW' => 'ଜିମ୍ବାୱେ',
-);
+];
+
+$timeUnits = [
+ 'century-one' => '{0} ଶତାବ୍ଦୀ',
+ 'century-other' => '{0} ଶତାବ୍ଦୀ',
+ 'day-future-one' => '{0} ଦିନରେ',
+ 'day-future-other' => '{0} ଦିନରେ',
+ 'day-narrow-future-one' => '{0} ଦିନରେ',
+ 'day-narrow-future-other' => '{0} ଦିନରେ',
+ 'day-narrow-past-one' => '{0} ଦିନ ପୂର୍ବେ',
+ 'day-narrow-past-other' => '{0} ଦିନ ପୂର୍ବେ',
+ 'day-one' => '{0} ଦିନ',
+ 'day-other' => '{0} ଦିନ',
+ 'day-past-one' => '{0} ଦିନ ପୂର୍ବେ',
+ 'day-past-other' => '{0} ଦିନ ପୂର୍ବେ',
+ 'day-short-future-one' => '{0} ଦିନରେ',
+ 'day-short-future-other' => '{0} ଦିନରେ',
+ 'day-short-past-one' => '{0} ଦିନ ପୂର୍ବେ',
+ 'day-short-past-other' => '{0} ଦିନ ପୂର୍ବେ',
+ 'fri-future-one' => '{0} ଶୁକ୍ରବାରରେ',
+ 'fri-future-other' => '{0} ଶୁକ୍ରବାରରେ',
+ 'fri-narrow-future-one' => '{0} ଶୁକ୍ର. ରେ',
+ 'fri-narrow-future-other' => '{0} ଶୁକ୍ର. ରେ',
+ 'fri-narrow-past-one' => '{0} ଶୁ. ପୂର୍ବେ',
+ 'fri-narrow-past-other' => '{0} ଶୁ. ପୂର୍ବେ',
+ 'fri-past-one' => '{0} ଶୁକ୍ରବାର ପୂର୍ବେ',
+ 'fri-past-other' => '{0} ଶୁକ୍ରବାର ପୂର୍ବେ',
+ 'fri-short-future-one' => '{0} ଶୁକ୍ର. ରେ',
+ 'fri-short-future-other' => '{0} ଶୁକ୍ର. ରେ',
+ 'fri-short-past-one' => '{0} ଶୁକ୍ର. ପୂର୍ବେ',
+ 'fri-short-past-other' => '{0} ଶୁକ୍ର. ପୂର୍ବେ',
+ 'hour-future-one' => '{0} ଘଣ୍ଟାରେ',
+ 'hour-future-other' => '{0} ଘଣ୍ଟାରେ',
+ 'hour-narrow-future-one' => '{0} ଘ. ରେ',
+ 'hour-narrow-future-other' => '{0} ଘ. ରେ',
+ 'hour-narrow-past-one' => '{0} ଘ. ପୂର୍ବେ',
+ 'hour-narrow-past-other' => '{0} ଘ. ପୂର୍ବେ',
+ 'hour-one' => '{0} ଘଣ୍ଟା',
+ 'hour-other' => '{0} ଘଣ୍ଟା',
+ 'hour-past-one' => '{0} ଘଣ୍ଟା ପୂର୍ବେ',
+ 'hour-past-other' => '{0} ଘଣ୍ଟା ପୂର୍ବେ',
+ 'hour-short-future-one' => '{0} ଘ. ରେ',
+ 'hour-short-future-other' => '{0} ଘ. ରେ',
+ 'hour-short-past-one' => '{0} ଘ. ପୂର୍ବେ',
+ 'hour-short-past-other' => '{0} ଘ. ପୂର୍ବେ',
+ 'microsecond-one' => '{0} ମାଇକ୍ରୋସେକେଣ୍ଡ',
+ 'microsecond-other' => '{0} ମାଇକ୍ରୋସେକେଣ୍ଡ',
+ 'millisecond-one' => '{0} ମିଲିସେକେଣ୍ଡ',
+ 'millisecond-other' => '{0} ମିଲିସେକେଣ୍ଡ',
+ 'minute-future-one' => '{0} ମିନିଟ୍‌‌ରେ',
+ 'minute-future-other' => '{0} ମିନିଟ୍‌‌ରେ',
+ 'minute-narrow-future-one' => '{0} ମି. ରେ',
+ 'minute-narrow-future-other' => '{0} ମି. ରେ',
+ 'minute-narrow-past-one' => '{0} ମି. ପୂର୍ବେ',
+ 'minute-narrow-past-other' => '{0} ମି. ପୂର୍ବେ',
+ 'minute-one' => '{0} ମିନିଟ୍‌',
+ 'minute-other' => '{0} ମିନିଟ୍',
+ 'minute-past-one' => '{0} ମିନିଟ୍ ପୂର୍ବେ',
+ 'minute-past-other' => '{0} ମିନିଟ୍ ପୂର୍ବେ',
+ 'minute-short-future-one' => '{0} ମି. ରେ',
+ 'minute-short-future-other' => '{0} ମି. ରେ',
+ 'minute-short-past-one' => '{0} ମି. ପୂର୍ବେ',
+ 'minute-short-past-other' => '{0} ମି. ପୂର୍ବେ',
+ 'mon-future-one' => '{0} ସୋମବାରରେ',
+ 'mon-future-other' => '{0} ସୋମବାରରେ',
+ 'mon-narrow-future-one' => '{0} ସୋ ରେ',
+ 'mon-narrow-future-other' => '{0} ସୋ ରେ',
+ 'mon-narrow-past-one' => '{0} ସୋ ପୂର୍ବେ',
+ 'mon-narrow-past-other' => '{0} ସୋ ପୂର୍ବେ',
+ 'mon-past-one' => '{0} ସୋମବାର ପୂର୍ବେ',
+ 'mon-past-other' => '{0} ସୋମବାର ପୂର୍ବେ',
+ 'mon-short-future-one' => '{0} ସୋମ. ରେ',
+ 'mon-short-future-other' => '{0} ସୋମ. ରେ',
+ 'mon-short-past-one' => '{0} ସୋମ. ପୂର୍ବେ',
+ 'mon-short-past-other' => '{0} ସୋମ. ପୂର୍ବେ',
+ 'month-future-one' => '{0} ମାସରେ',
+ 'month-future-other' => '{0} ମାସରେ',
+ 'month-narrow-future-one' => '{0} ମା. ରେ',
+ 'month-narrow-future-other' => '{0} ମା. ରେ',
+ 'month-narrow-past-one' => '{0} ମା. ପୂର୍ବେ',
+ 'month-narrow-past-other' => '{0} ମା. ପୂର୍ବେ',
+ 'month-one' => '{0} ମାସ',
+ 'month-other' => '{0} ମାସ',
+ 'month-past-one' => '{0} ମାସ ପୂର୍ବେ',
+ 'month-past-other' => '{0} ମାସ ପୂର୍ବେ',
+ 'month-short-future-one' => '{0} ମା. ରେ',
+ 'month-short-future-other' => '{0} ମା. ରେ',
+ 'month-short-past-one' => '{0} ମା. ପୂର୍ବେ',
+ 'month-short-past-other' => '{0} ମା. ପୂର୍ବେ',
+ 'nanosecond-one' => '{0} ନାନୋସେକେଣ୍ଡ',
+ 'nanosecond-other' => '{0} ନାନୋସେକେଣ୍ଡ',
+ 'quarter-future-one' => '{0} ତ୍ରୟମାସରେ',
+ 'quarter-future-other' => '{0} ତ୍ରୟମାସରେ',
+ 'quarter-narrow-future-one' => '{0} ତ୍ରୟ. ରେ',
+ 'quarter-narrow-future-other' => '{0} ତ୍ରୟ. ରେ',
+ 'quarter-narrow-past-one' => '{0} ତ୍ରୟ. ପୂର୍ବେ',
+ 'quarter-narrow-past-other' => '{0} ତ୍ରୟ. ପୂର୍ବେ',
+ 'quarter-past-one' => '{0} ତ୍ରୟମାସ ପୂର୍ବେ',
+ 'quarter-past-other' => '{0} ତ୍ରୟମାସ ପୂର୍ବେ',
+ 'quarter-short-future-one' => '{0} ତ୍ରୟ. ରେ',
+ 'quarter-short-future-other' => '{0} ତ୍ରୟ. ରେ',
+ 'quarter-short-past-one' => '{0} ତ୍ରୟ. ପୂର୍ବେ',
+ 'quarter-short-past-other' => '{0} ତ୍ରୟ. ପୂର୍ବେ',
+ 'sat-future-one' => '{0} ଶନିବାରରେ',
+ 'sat-future-other' => '{0} ଶନିବାରରେ',
+ 'sat-narrow-future-one' => '{0} ଶନି. ରେ',
+ 'sat-narrow-future-other' => '{0} ଶନି. ରେ',
+ 'sat-narrow-past-one' => '{0} ଶନି. ପୂର୍ବେ',
+ 'sat-narrow-past-other' => '{0} ଶନି. ପୂର୍ବେ',
+ 'sat-past-one' => '{0} ଶନିବାର ପୂର୍ବେ',
+ 'sat-past-other' => '{0} ଶନିବାର ପୂର୍ବେ',
+ 'sat-short-future-one' => '{0} ଶନି. ରେ',
+ 'sat-short-future-other' => '{0} ଶନି. ରେ',
+ 'sat-short-past-one' => '{0} ଶନି. ପୂର୍ବେ',
+ 'sat-short-past-other' => '{0} ଶନି. ପୂର୍ବେ',
+ 'second-future-one' => '{0} ସେକେଣ୍ଡରେ',
+ 'second-future-other' => '{0} ସେକେଣ୍ଡରେ',
+ 'second-narrow-future-one' => '{0} ସେ. ରେ',
+ 'second-narrow-future-other' => '{0} ସେ. ରେ',
+ 'second-narrow-past-one' => '{0} ସେ. ପୂର୍ବେ',
+ 'second-narrow-past-other' => '{0} ସେ. ପୂର୍ବେ',
+ 'second-one' => '{0} ସେକେଣ୍ଡ',
+ 'second-other' => '{0} ସେକେଣ୍ଡ',
+ 'second-past-one' => '{0} ସେକେଣ୍ଡ ପୂର୍ବେ',
+ 'second-past-other' => '{0} ସେକେଣ୍ଡ ପୂର୍ବେ',
+ 'second-short-future-one' => '{0} ସେ. ରେ',
+ 'second-short-future-other' => '{0} ସେ. ରେ',
+ 'second-short-past-one' => '{0} ସେ. ପୂର୍ବେ',
+ 'second-short-past-other' => '{0} ସେ. ପୂର୍ବେ',
+ 'sun-future-one' => '{0} ରବିବାରରେ',
+ 'sun-future-other' => '{0} ରବିବାରରେ',
+ 'sun-narrow-future-one' => '{0} ରବି. ରେ',
+ 'sun-narrow-future-other' => '{0} ରବି. ରେ',
+ 'sun-narrow-past-one' => '{0} ରବି. ପୂର୍ବେ',
+ 'sun-narrow-past-other' => '{0} ରବି. ପୂର୍ବେ',
+ 'sun-past-one' => '{0} ରବିବାର ପୂର୍ବେ',
+ 'sun-past-other' => '{0} ରବିବାର ପୂର୍ବେ',
+ 'sun-short-future-one' => '{0} ରବି. ରେ',
+ 'sun-short-future-other' => '{0} ରବି. ରେ',
+ 'sun-short-past-one' => '{0} ରବି. ପୂର୍ବେ',
+ 'sun-short-past-other' => '{0} ରବି. ପୂର୍ବେ',
+ 'thu-future-one' => '{0} ଗୁରୁବାରରେ',
+ 'thu-future-other' => '{0} ଗୁରୁବାରରେ',
+ 'thu-narrow-future-one' => '{0} ଗୁରୁ. ରେ',
+ 'thu-narrow-future-other' => '{0} ଗୁରୁ. ରେ',
+ 'thu-narrow-past-one' => '{0} ଗୁରୁ. ପୂର୍ବେ',
+ 'thu-narrow-past-other' => '{0} ଗୁରୁ. ପୂର୍ବେ',
+ 'thu-past-one' => '{0} ଗୁରୁବାର ପୂର୍ବେ',
+ 'thu-past-other' => '{0} ଗୁରୁବାର ପୂର୍ବେ',
+ 'thu-short-future-one' => '{0} ଗୁରୁ. ରେ',
+ 'thu-short-future-other' => '{0} ଗୁରୁ. ରେ',
+ 'thu-short-past-one' => '{0} ଗୁରୁ. ପୂର୍ବେ',
+ 'thu-short-past-other' => '{0} ଗୁରୁ. ପୂର୍ବେ',
+ 'tue-future-one' => '{0} ମଙ୍ଗଳବାରରେ',
+ 'tue-future-other' => '{0} ମଙ୍ଗଳବାରରେ',
+ 'tue-narrow-future-one' => '{0} ମଙ୍ଗଳ. ରେ',
+ 'tue-narrow-future-other' => '{0} ମଙ୍ଗଳ. ରେ',
+ 'tue-narrow-past-one' => '{0} ମଙ୍ଗଳ. ପୂର୍ବେ',
+ 'tue-narrow-past-other' => '{0} ମଙ୍ଗଳ. ପୂର୍ବେ',
+ 'tue-past-one' => '{0} ମଙ୍ଗଳବାର ପୂର୍ବେ',
+ 'tue-past-other' => '{0} ମଙ୍ଗଳବାର ପୂର୍ବେ',
+ 'tue-short-future-one' => '{0} ମଙ୍ଗଳ. ରେ',
+ 'tue-short-future-other' => '{0} ମଙ୍ଗଳ. ରେ',
+ 'tue-short-past-one' => '{0} ମଙ୍ଗଳ. ପୂର୍ବେ',
+ 'tue-short-past-other' => '{0} ମଙ୍ଗଳ. ପୂର୍ବେ',
+ 'wed-future-one' => '{0} ବୁଧବାରରେ',
+ 'wed-future-other' => '{0} ବୁଧବାରରେ',
+ 'wed-narrow-future-one' => '{0} ବୁଧ. ରେ',
+ 'wed-narrow-future-other' => '{0} ବୁଧ. ରେ',
+ 'wed-narrow-past-one' => '{0} ବୁଧ. ପୂର୍ବେ',
+ 'wed-narrow-past-other' => '{0} ବୁଧ. ପୂର୍ବେ',
+ 'wed-past-one' => '{0} ବୁଧବାର ପୂର୍ବେ',
+ 'wed-past-other' => '{0} ବୁଧବାର ପୂର୍ବେ',
+ 'wed-short-future-one' => '{0} ବୁଧ. ରେ',
+ 'wed-short-future-other' => '{0} ବୁଧ. ରେ',
+ 'wed-short-past-one' => '{0} ବୁଧ. ପୂର୍ବେ',
+ 'wed-short-past-other' => '{0} ବୁଧ. ପୂର୍ବେ',
+ 'week-future-one' => '{0} ସପ୍ତାହରେ',
+ 'week-future-other' => '{0} ସପ୍ତାହରେ',
+ 'week-narrow-future-one' => '{0} ସପ୍ତା. ରେ',
+ 'week-narrow-future-other' => '{0} ସପ୍ତା. ରେ',
+ 'week-narrow-past-one' => '{0} ସପ୍ତା. ପୂର୍ବେ',
+ 'week-narrow-past-other' => '{0} ସପ୍ତା. ପୂର୍ବେ',
+ 'week-one' => '{0} ସପ୍ତାହ',
+ 'week-other' => '{0} ସପ୍ତାହ',
+ 'week-past-one' => '{0} ସପ୍ତାହରେ',
+ 'week-past-other' => '{0} ସପ୍ତାହ ପୂର୍ବେ',
+ 'week-short-future-one' => '{0} ସପ୍ତା. ରେ',
+ 'week-short-future-other' => '{0} ସପ୍ତା. ରେ',
+ 'week-short-past-one' => '{0} ସପ୍ତା. ପୂର୍ବେ',
+ 'week-short-past-other' => '{0} ସପ୍ତା. ପୂର୍ବେ',
+ 'year-future-one' => '{0} ବର୍ଷରେ',
+ 'year-future-other' => '{0} ବର୍ଷରେ',
+ 'year-narrow-future-one' => '{0} ବ. ରେ',
+ 'year-narrow-future-other' => '{0} ବ. ରେ',
+ 'year-narrow-past-one' => '{0} ବ. ପୂର୍ବେ',
+ 'year-narrow-past-other' => '{0} ବ. ପୂର୍ବେ',
+ 'year-one' => '{0} ବର୍ଷ',
+ 'year-other' => '{0} ବର୍ଷ',
+ 'year-past-one' => '{0} ବର୍ଷ ପୂର୍ବେ',
+ 'year-past-other' => '{0} ବର୍ଷ ପୂର୍ବେ',
+ 'year-short-future-one' => '{0} ବ. ରେ',
+ 'year-short-future-other' => '{0} ବ. ରେ',
+ 'year-short-past-one' => '{0} ବ. ପୂର୍ବେ',
+ 'year-short-past-other' => '{0} ବ. ପୂର୍ବେ',
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesOs.php b/MLEB/cldr/CldrNames/CldrNamesOs.php
index ac3a738f..148af577 100644
--- a/MLEB/cldr/CldrNames/CldrNamesOs.php
+++ b/MLEB/cldr/CldrNames/CldrNamesOs.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'ab' => 'абхазаг',
'ady' => 'адыгейаг',
'ae' => 'авестӕ',
@@ -33,6 +33,7 @@ $languageNames = array(
'es' => 'испайнаг',
'es-419' => 'латинаг америкаг англисаг',
'es-es' => 'европӕйаг англисаг',
+ 'es-mx' => 'мексикӕйаг испайнаг',
'et' => 'естойнаг',
'eu' => 'баскаг',
'fa' => 'персайнаг',
@@ -71,9 +72,9 @@ $languageNames = array(
'zh' => 'китайаг',
'zh-hans' => 'ӕнцонгонд китайаг',
'zh-hant' => 'традицион китайаг',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'BRL' => 'Бразилиаг реал',
'EUR' => 'Евро',
'GBP' => 'Бритайнаг Фунт',
@@ -81,16 +82,17 @@ $currencyNames = array(
'RUB' => 'Сом',
'USD' => 'АИШ-ы Доллар',
'XXX' => 'Нӕзонгӕ валютӕ',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'BRL' => 'R$',
'EUR' => '€',
'GBP' => '£',
+ 'GEL' => '₾',
'USD' => '$',
-);
+];
-$countryNames = array(
+$countryNames = [
'BR' => 'Бразили',
'CN' => 'Китай',
'DE' => 'Герман',
@@ -102,9 +104,9 @@ $countryNames = array(
'JP' => 'Япон',
'RU' => 'Уӕрӕсе',
'US' => 'АИШ',
-);
+];
-$timeUnits = array(
+$timeUnits = [
'day-future-one' => '{0} боны фӕстӕ',
'day-future-other' => '{0} боны фӕстӕ',
'day-one' => '{0} бон',
@@ -127,4 +129,4 @@ $timeUnits = array(
'week-other' => '{0} къуырийы',
'year-one' => '{0} аз',
'year-other' => '{0} азы',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesPa.php b/MLEB/cldr/CldrNames/CldrNamesPa.php
index 57944b89..d4ae7d8b 100644
--- a/MLEB/cldr/CldrNames/CldrNamesPa.php
+++ b/MLEB/cldr/CldrNames/CldrNamesPa.php
@@ -1,194 +1,324 @@
<?php
-$languageNames = array(
+$languageNames = [
+ 'aa' => 'ਅਫ਼ਾਰ',
'ab' => 'ਅਬਖਾਜ਼ੀਅਨ',
'ace' => 'ਅਚੀਨੀ',
'ach' => 'ਅਕੋਲੀ',
+ 'ada' => 'ਅਡਾਂਗਮੇ',
+ 'ady' => 'ਅਡਿਗੇ',
'af' => 'ਅਫ਼ਰੀਕੀ',
'agq' => 'ਅਗੇਮ',
+ 'ain' => 'ਆਇਨੂ',
'ak' => 'ਅਕਾਨ',
+ 'ale' => 'ਅਲੇਉਟ',
+ 'alt' => 'ਦੱਖਣੀ ਅਲਤਾਈ',
'am' => 'ਅਮਹਾਰਿਕ',
+ 'an' => 'ਅਰਾਗੋਨੀ',
'ang' => 'ਪੁਰਾਣੀ ਅੰਗਰੇਜ਼ੀ',
+ 'anp' => 'ਅੰਗਿਕਾ',
'ar' => 'ਅਰਬੀ',
'ar-001' => 'ਆਧੁਨਿਕ ਮਿਆਰੀ ਅਰਬੀ',
'arn' => 'ਮਾਪੁਚੇ',
+ 'arp' => 'ਅਰਾਫਾਓ',
'as' => 'ਅਸਾਮੀ',
'asa' => 'ਅਸੂ',
+ 'ast' => 'ਅਸਤੂਰੀ',
+ 'av' => 'ਅਵਾਰਿਕ',
+ 'awa' => 'ਅਵਧੀ',
+ 'ay' => 'ਅਈਮਾਰਾ',
'az' => 'ਅਜ਼ਰਬਾਈਜਾਨੀ',
'ba' => 'ਬਸ਼ਕੀਰ',
+ 'ban' => 'ਬਾਲੀਨੀਜ਼',
+ 'bas' => 'ਬਾਸਾ',
'be' => 'ਬੇਲਾਰੂਸੀ',
'bem' => 'ਬੇਮਬਾ',
'bez' => 'ਬੇਨਾ',
'bg' => 'ਬੁਲਗਾਰੀਆਈ',
+ 'bgn' => 'ਪੱਛਮੀ ਬਲੂਚੀ',
'bho' => 'ਭੋਜਪੁਰੀ',
+ 'bi' => 'ਬਿਸਲਾਮਾ',
+ 'bin' => 'ਬਿਨੀ',
+ 'bla' => 'ਸਿਕਸਿਕਾ',
'bm' => 'ਬੰਬਾਰਾ',
'bn' => 'ਬੰਗਾਲੀ',
'bo' => 'ਤਿੱਬਤੀ',
'br' => 'ਬਰੇਟਨ',
'brx' => 'ਬੋਡੋ',
'bs' => 'ਬੋਸਨੀਆਈ',
+ 'bug' => 'ਬਗਨੀਜ਼',
+ 'byn' => 'ਬਲਿਨ',
'ca' => 'ਕੈਟਾਲਾਨ',
'ce' => 'ਚੇਚਨ',
+ 'ceb' => 'ਸੀਬੂਆਨੋ',
'cgg' => 'ਚੀਗਾ',
+ 'ch' => 'ਚਮੋਰੋ',
+ 'chk' => 'ਚੂਕੀਸ',
'chm' => 'ਮਾਰੀ',
+ 'cho' => 'ਚੌਕਟੋ',
'chr' => 'ਚੇਰੋਕੀ',
- 'ckb' => 'ਸੋਰਾਨੀ ਕੁਰਦਿਸ਼',
+ 'chy' => 'ਛਾਇਆਨ',
+ 'ckb' => 'ਕੇਂਦਰੀ ਕੁਰਦਿਸ਼',
'co' => 'ਕੋਰਸੀਕਨ',
- 'cs' => 'ਚੈਕ',
- 'cy' => 'ਵੈਲਜ਼',
+ 'crs' => 'ਸੇਸੇਲਵਾ ਕ੍ਰਿਓਲ ਫ੍ਰੈਂਚ',
+ 'cs' => 'ਚੈੱਕ',
+ 'cu' => 'ਚਰਚ ਸਲਾਵੀ',
+ 'cv' => 'ਚੁਵਾਸ਼',
+ 'cy' => 'ਵੈਲਸ਼',
'da' => 'ਡੈਨਿਸ਼',
+ 'dak' => 'ਡਕੋਟਾ',
+ 'dar' => 'ਦਾਰਗਵਾ',
'dav' => 'ਟੇਟਾ',
'de' => 'ਜਰਮਨ',
- 'de-at' => 'ਆਸਟਰੀਆਈ ਜਰਮਨ',
- 'de-ch' => 'ਸਵਿਸ ਹਾਈ ਜਰਮਨ',
+ 'de-at' => 'ਜਰਮਨ (ਆਸਟਰੀਆਈ)',
+ 'de-ch' => 'ਹਾਈ ਜਰਮਨ (ਸਵਿਟਜ਼ਰਲੈਂਡ)',
+ 'dgr' => 'ਡੋਗਰਿੱਬ',
'dje' => 'ਜ਼ਾਰਮਾ',
'dsb' => 'ਲੋਅਰ ਸੋਰਬੀਅਨ',
'dua' => 'ਡੂਆਲਾ',
+ 'dv' => 'ਦਿਵੇਹੀ',
'dyo' => 'ਜੋਲਾ-ਫੋਇਨੀ',
'dz' => 'ਜ਼ੋਂਗਖਾ',
+ 'dzg' => 'ਡਜ਼ਾਗਾ',
'ebu' => 'ਇੰਬੂ',
'ee' => 'ਈਵਈ',
+ 'efi' => 'ਐਫਿਕ',
'egy' => 'ਪੁਰਾਤਨ ਮਿਸਰੀ',
+ 'eka' => 'ਏਕਾਜੁਕ',
'el' => 'ਯੂਨਾਨੀ',
'en' => 'ਅੰਗਰੇਜ਼ੀ',
- 'en-au' => 'ਆਸਟ੍ਰੇਲੀਆਈ ਅੰਗਰੇਜ਼ੀ',
- 'en-ca' => 'ਕੈਨੇਡੀਅਨ ਅੰਗਰੇਜ਼ੀ',
- 'en-gb' => 'ਬਰਤਾਨਵੀ ਅੰਗਰੇਜ਼ੀ',
- 'en-us' => 'ਅਮਰੀਕੀ ਅੰਗਰੇਜ਼ੀ',
+ 'en-gb' => 'ਅੰਗਰੇਜ਼ੀ (ਬਰਤਾਨਵੀ)',
+ 'en-us' => 'ਅੰਗਰੇਜ਼ੀ (ਅਮਰੀਕੀ)',
'eo' => 'ਇਸਪੇਰਾਂਟੋ',
'es' => 'ਸਪੇਨੀ',
- 'es-419' => 'ਲਾਤੀਨੀ ਅਮਰੀਕੀ ਸਪੇਨੀ',
- 'es-es' => 'ਯੂਰਪੀ ਸਪੇਨੀ',
- 'es-mx' => 'ਮੈਕਸੀਕਨ ਸਪੈਨਿਸ਼',
+ 'es-419' => 'ਸਪੇਨੀ (ਲਾਤੀਨੀ ਅਮਰੀਕੀ)',
+ 'es-es' => 'ਸਪੇਨੀ (ਯੂਰਪੀ)',
+ 'es-mx' => 'ਸਪੇਨੀ (ਮੈਕਸੀਕੀ)',
'et' => 'ਇਸਟੋਨੀਆਈ',
'eu' => 'ਬਾਸਕ',
+ 'ewo' => 'ਇਵੋਂਡੋ',
'fa' => 'ਫ਼ਾਰਸੀ',
+ 'ff' => 'ਫੁਲਾਹ',
'fi' => 'ਫਿਨਿਸ਼',
'fil' => 'ਫਿਲੀਪਿਨੋ',
'fj' => 'ਫ਼ਿਜ਼ੀ',
'fo' => 'ਫ਼ੇਰੋਸੇ',
+ 'fon' => 'ਫੌਨ',
'fr' => 'ਫਰਾਂਸੀਸੀ',
- 'fr-ca' => 'ਕੈਨੇਡੀਅਨ ਫਰਾਂਸੀਸੀ',
- 'fr-ch' => 'ਸਵਿਸ ਫਰਾਂਸੀਸੀ',
+ 'fr-ca' => 'ਫਰਾਂਸੀਸੀ (ਕੈਨੇਡੀਅਨ)',
+ 'frc' => 'ਕੇਜੁਨ ਫ੍ਰੇੰਚ',
+ 'fur' => 'ਫਰੀਉਲੀਅਨ',
'fy' => 'ਪੱਛਮੀ ਫ੍ਰਿਸੀਅਨ',
- 'ga' => 'ਆਇਰੀ',
+ 'ga' => 'ਆਇਰਸ਼',
+ 'gaa' => 'ਗਾ',
'gag' => 'ਗਾਗੌਜ਼',
+ 'gan' => 'ਚੀਨੀ ਗਾਨ',
+ 'gd' => 'ਸਕਾਟਿਸ਼ ਗੇਲਿਕ',
+ 'gez' => 'ਜੀਜ਼',
+ 'gil' => 'ਗਿਲਬਰਤੀਜ਼',
'gl' => 'ਗੈਲਿਸ਼ਿਅਨ',
'gn' => 'ਗੁਆਰਾਨੀ',
+ 'gor' => 'ਗੋਰੋਂਤਾਲੋ',
'grc' => 'ਪੁਰਾਤਨ ਯੂਨਾਨੀ',
- 'gsw' => 'ਸਵਿਸ ਜਰਮਨ',
+ 'gsw' => 'ਜਰਮਨ (ਸਵਿਸ)',
'gu' => 'ਗੁਜਰਾਤੀ',
'guz' => 'ਗੁਸੀ',
'gv' => 'ਮੈਂਕਸ',
+ 'gwi' => 'ਗਵਿਚ’ਇਨ',
'ha' => 'ਹੌਸਾ',
+ 'hak' => 'ਚੀਨੀ ਹਾਕਾ',
'haw' => 'ਹਵਾਈ',
'he' => 'ਹਿਬਰੂ',
'hi' => 'ਹਿੰਦੀ',
'hif' => 'ਫਿਜੀ ਹਿੰਦੀ',
+ 'hil' => 'ਹਿਲੀਗੇਨਨ',
+ 'hmn' => 'ਹਮੋਂਗ',
'hr' => 'ਕ੍ਰੋਏਸ਼ਿਆਈ',
'hsb' => 'ਅੱਪਰ ਸੋਰਬੀਅਨ',
+ 'hsn' => 'ਚੀਨੀ ਜ਼ਿਆਂਗ',
'ht' => 'ਹੈਤੀਆਈ',
'hu' => 'ਹੰਗਰੀਆਈ',
+ 'hup' => 'ਹੂਪਾ',
'hy' => 'ਅਰਮੀਨੀਆਈ',
+ 'hz' => 'ਹਰੇਰੋ',
+ 'ia' => 'ਇੰਟਰਲਿੰਗੁਆ',
+ 'iba' => 'ਇਬਾਨ',
+ 'ibb' => 'ਇਬੀਬੀਓ',
'id' => 'ਇੰਡੋਨੇਸ਼ੀਆਈ',
'ig' => 'ਇਗਬੋ',
'ii' => 'ਸਿਚੁਆਨ ਯੀ',
+ 'ilo' => 'ਇਲੋਕੋ',
+ 'inh' => 'ਇੰਗੁਸ਼',
+ 'io' => 'ਇਡੂ',
'is' => 'ਆਈਸਲੈਂਡਿਕ',
'it' => 'ਇਤਾਲਵੀ',
'iu' => 'ਇੰਕਟੀਟੂਤ',
'ja' => 'ਜਪਾਨੀ',
+ 'jbo' => 'ਲੋਜਬਾਨ',
'jgo' => 'ਨਗੋਂਬਾ',
'jmc' => 'ਮਚਾਮੇ',
'jv' => 'ਜਾਵਾਨੀਜ਼',
'ka' => 'ਜਾਰਜੀਆਈ',
'kab' => 'ਕਬਾਇਲ',
+ 'kac' => 'ਕਾਚਿਨ',
+ 'kaj' => 'ਜਜੂ',
'kam' => 'ਕੰਬਾ',
+ 'kbd' => 'ਕਬਾਰਦੀ',
+ 'kcg' => 'ਟਾਇਪ',
'kde' => 'ਮਕੋਂਡ',
'kea' => 'ਕਾਬੁਵੇਰਦਿਆਨੂ',
+ 'kfo' => 'ਕੋਰੋ',
+ 'kha' => 'ਖਾਸੀ',
'khq' => 'ਕੋਯਰਾ ਚੀਨੀ',
'ki' => 'ਕਿਕੂਯੂ',
+ 'kj' => 'ਕੁਆਨਯਾਮਾ',
'kk' => 'ਕਜ਼ਾਖ਼',
+ 'kkj' => 'ਕਾਕੋ',
'kl' => 'ਕਲਾਅੱਲੀਸੁਟ',
'kln' => 'ਕਲੇਜਿਨ',
'km' => 'ਖਮੇਰ',
+ 'kmb' => 'ਕਿਮਬੁੰਦੂ',
'kn' => 'ਕੰਨੜ',
'ko' => 'ਕੋਰੀਆਈ',
'koi' => 'ਕੋਮੀ-ਪੇਰਮਿਆਕ',
'kok' => 'ਕੋਂਕਣੀ',
+ 'kpe' => 'ਕਪੇਲ',
+ 'kr' => 'ਕਨੂਰੀ',
+ 'krc' => 'ਕਰਾਚੇ ਬਲਕਾਰ',
+ 'krl' => 'ਕਰੀਲੀਅਨ',
+ 'kru' => 'ਕੁਰੁਖ',
'ks' => 'ਕਸ਼ਮੀਰੀ',
'ksb' => 'ਸ਼ੰਬਾਲਾ',
'ksf' => 'ਬਫ਼ੀਆ',
- 'ku' => 'ਕੁਰਦ',
+ 'ksh' => 'ਕਲੋਗਨੀਅਨ',
+ 'ku' => 'ਕੁਰਦਿਸ਼',
+ 'kum' => 'ਕੁਮੀਕ',
+ 'kv' => 'ਕੋਮੀ',
'kw' => 'ਕੋਰਨਿਸ਼',
'ky' => 'ਕਿਰਗੀਜ਼',
'la' => 'ਲਾਤੀਨੀ',
+ 'lad' => 'ਲੈਡੀਨੋ',
'lag' => 'ਲੰਗਾਈ',
'lb' => 'ਲਕਜ਼ਮਬਰਗਿਸ਼',
+ 'lez' => 'ਲੈਜ਼ਗੀ',
'lg' => 'ਗਾਂਡਾ',
+ 'li' => 'ਲਿਮਬੁਰਗੀ',
'lkt' => 'ਲਕੋਟਾ',
'ln' => 'ਲਿੰਗਾਲਾ',
'lo' => 'ਲਾਓ',
+ 'lou' => 'ਲੇਉ',
+ 'loz' => 'ਲੋਜ਼ੀ',
+ 'lrc' => 'ਉੱਤਰੀ ਲੁਰੀ',
'lt' => 'ਲਿਥੁਆਨੀਅਨ',
'lu' => 'ਲੂਬਾ-ਕਾਟਾਂਗਾ',
+ 'lua' => 'ਲਿਊਬਾ-ਲਿਊਲਿਆ',
+ 'lun' => 'ਲੁੰਡਾ',
'luo' => 'ਲੂਓ',
+ 'lus' => 'ਮਿਜ਼ੋ',
'luy' => 'ਲੂਈਆ',
- 'lv' => 'ਲਾਟਵਿਅਨ',
+ 'lv' => 'ਲਾਤੀਵੀ',
+ 'mad' => 'ਮਾਡੂਰੀਸ',
+ 'mag' => 'ਮਗਾਹੀ',
'mai' => 'ਮੈਥਲੀ',
+ 'mak' => 'ਮਕਾਸਰ',
'mas' => 'ਮਸਾਈ',
+ 'mdf' => 'ਮੋਕਸ਼ਾ',
+ 'men' => 'ਮੇਂਡੇ',
'mer' => 'ਮੇਰੂ',
'mfe' => 'ਮੋਰੀਸਿਅਨ',
'mg' => 'ਮੇਲੇਗਸੀ',
'mgh' => 'ਮਖੋਵਾ-ਮਿੱਟੋ',
'mgo' => 'ਮੇਟਾ',
+ 'mh' => 'ਮਾਰਸ਼ਲੀਜ਼',
'mi' => 'ਮਾਉਰੀ',
+ 'mic' => 'ਮਾਇਮੈਕ',
+ 'min' => 'ਮਿਨਾਂਗਕਾਬਾਓ',
'mk' => 'ਮੈਕਡੋਨੀਆਈ',
'ml' => 'ਮਲਿਆਲਮ',
- 'mn' => 'ਮੰਗੋਲੀਅਨ',
+ 'mn' => 'ਮੰਗੋਲੀ',
'mni' => 'ਮਨੀਪੁਰੀ',
- 'moh' => 'ਮੋਹਾਵਕ',
+ 'moh' => 'ਮੋਹਆਕ',
+ 'mos' => 'ਮੋਸੀ',
'mr' => 'ਮਰਾਠੀ',
'ms' => 'ਮਲਯ',
'mt' => 'ਮਾਲਟੀਜ਼',
'mua' => 'ਮੁੰਡੇਂਗ',
- 'mul' => 'ਕਈ ਭਾਸ਼ਾਵਾਂ',
+ 'mul' => 'ਬਹੁਤੀਆਂ ਬੋਲੀਆਂ',
+ 'mus' => 'ਕ੍ਰੀਕ',
+ 'mwl' => 'ਮਿਰਾਂਡੀ',
'my' => 'ਬਰਮੀ',
+ 'myv' => 'ਇਰਜ਼ੀਆ',
+ 'mzn' => 'ਮੇਜ਼ੈਂਡਰਾਨੀ',
+ 'na' => 'ਨਾਉਰੂ',
+ 'nan' => 'ਚੀਨੀ ਮਿਨ ਨਾਨ',
+ 'nap' => 'ਨਿਆਪੋਲੀਟਨ',
'naq' => 'ਨਾਮਾ',
'nb' => 'ਨਾਰਵੇਜਿਆਈ ਬੋਕਮਲ',
'nd' => 'ਉੱਤਰੀ ਨਡੇਬੇਲੇ',
+ 'nds' => 'ਲੋ ਜਰਮਨ',
+ 'nds-nl' => 'ਲੋ ਸੈਕਸਨ',
'ne' => 'ਨੇਪਾਲੀ',
+ 'new' => 'ਨੇਵਾਰੀ',
+ 'ng' => 'ਐਂਡੋਂਗਾ',
+ 'nia' => 'ਨਿਆਸ',
+ 'niu' => 'ਨਿਊਏਈ',
'nl' => 'ਡੱਚ',
'nl-be' => 'ਫਲੈਮਿਸ਼',
'nmg' => 'ਕਵਾਸਿਓ',
'nn' => 'ਨਾਰਵੇਜਿਆਈ ਨਿਓਨੌਰਸਕ',
- 'no' => 'ਨਾਰਵੇਜੀਅਨ',
+ 'nnh' => 'ਨਿਓਮਬੂਨ',
+ 'no' => 'ਨਾਰਵੇਜਿਆਈ',
+ 'nog' => 'ਨੋਗਾਈ',
'nqo' => 'ਐਂਕੋ',
+ 'nr' => 'ਸਾਊਥ ਨਡੇਬੇਲੇ',
+ 'nso' => 'ਉੱਤਰੀ ਸੋਥੋ',
'nus' => 'ਨੁਏਰ',
+ 'nv' => 'ਨਵਾਜੋ',
+ 'ny' => 'ਨਯਾਂਜਾ',
'nyn' => 'ਨਿਆਂਕੋਲੇ',
+ 'oc' => 'ਓਕਸੀਟਾਨ',
'om' => 'ਓਰੋਮੋ',
'or' => 'ਉੜੀਆ',
+ 'os' => 'ਓਸੈਟਿਕ',
'pa' => 'ਪੰਜਾਬੀ',
- 'pi' => 'ਪਲੀ',
+ 'pag' => 'ਪੰਗਾਸੀਨਾਨ',
+ 'pam' => 'ਪੈਂਪਾਂਗਾ',
+ 'pap' => 'ਪਾਪਿਆਮੈਂਟੋ',
+ 'pau' => 'ਪਲਾਊਵੀ',
+ 'pcm' => 'ਨਾਇਜੀਰੀਆਈ ਪਿਡਗਿਨ',
+ 'pi' => 'ਪਾਲੀ',
'pl' => 'ਪੋਲੈਂਡੀ',
+ 'prg' => 'ਪਰੂਸ਼ੀਆ',
'ps' => 'ਪਸ਼ਤੋ',
'pt' => 'ਪੁਰਤਗਾਲੀ',
- 'pt-br' => 'ਬ੍ਰਾਜ਼ੀਲੀਆਈ ਪੁਰਤਗਾਲੀ',
- 'pt-pt' => 'ਯੂਰਪੀ ਪੁਰਤਗਾਲੀ',
+ 'pt-br' => 'ਪੁਰਤਗਾਲੀ (ਬ੍ਰਾਜ਼ੀਲੀ)',
+ 'pt-pt' => 'ਪੁਰਤਗਾਲੀ (ਯੂਰਪੀ)',
'qu' => 'ਕਕੇਸ਼ੁਆ',
'quc' => 'ਕੇਸ਼',
'raj' => 'ਰਾਜਸਥਾਨੀ',
+ 'rap' => 'ਰਾਪਾਨੁਈ',
+ 'rar' => 'ਰਾਰੋਤੋਂਗਨ',
'rm' => 'ਰੋਮਾਂਸ਼',
'rn' => 'ਰੁੰਡੀ',
'ro' => 'ਰੋਮਾਨੀਆਈ',
'ro-md' => 'ਮੋਲਡਾਵੀਆਈ',
'rof' => 'ਰੋਮਬੋ',
'ru' => 'ਰੂਸੀ',
+ 'rup' => 'ਅਰੋਮੀਨੀਆਈ',
'rw' => 'ਕਿਨਿਆਰਵਾਂਡਾ',
'rwk' => 'ਰਵਾ',
'sa' => 'ਸੰਸਕ੍ਰਿਤ',
+ 'sad' => 'ਸਾਂਡੋ',
+ 'sah' => 'ਸਾਖਾ',
'saq' => 'ਸਮਬੁਰੂ',
'sat' => 'ਸੰਥਾਲੀ',
+ 'sba' => 'ਨਗਾਂਬੇ',
'sbp' => 'ਸੇਂਗੋ',
+ 'sc' => 'ਸਾਰਡੀਨੀਆਈ',
+ 'scn' => 'ਸਿਸੀਲੀਅਨ',
+ 'sco' => 'ਸਕਾਟਸ',
'sd' => 'ਸਿੰਧੀ',
+ 'sdh' => 'ਦੱਖਣੀ ਕੁਰਦਿਸ਼',
'se' => 'ਉੱਤਰੀ ਸਾਮੀ',
'seh' => 'ਸੇਨਾ',
'ses' => 'ਕੋਇਰਾਬੋਰੋ ਸੇਂਨੀ',
@@ -198,52 +328,90 @@ $languageNames = array(
'si' => 'ਸਿੰਹਾਲਾ',
'sk' => 'ਸਲੋਵਾਕ',
'sl' => 'ਸਲੋਵੇਨੀਆਈ',
+ 'sm' => 'ਸਾਮੋਨ',
'sma' => 'ਦੱਖਣੀ ਸਾਮੀ',
'smj' => 'ਲਿਊਲ ਸਾਮੀ',
'smn' => 'ਇਨਾਰੀ ਸਾਮੀ',
'sms' => 'ਸਕੌਲਟ ਸਾਮੀ',
'sn' => 'ਸ਼ੋਨਾ',
+ 'snk' => 'ਸੋਨਿੰਕੇ',
'so' => 'ਸੋਮਾਲੀ',
'sq' => 'ਅਲਬਾਨੀਆਈ',
'sr' => 'ਸਰਬੀਆਈ',
- 'su' => 'ਸੂਡਾਨੀ',
+ 'srn' => 'ਸ੍ਰਾਨਾਨ ਟੋਂਗੋ',
+ 'ss' => 'ਸਵਾਤੀ',
+ 'ssy' => 'ਸਾਹੋ',
+ 'st' => 'ਦੱਖਣੀ ਸੋਥੋ',
+ 'su' => 'ਸੂੰਡਾਨੀ',
+ 'suk' => 'ਸੁਕੁਮਾ',
'sv' => 'ਸਵੀਡਿਸ਼',
'sw' => 'ਸਵਾਹਿਲੀ',
- 'swc' => 'ਕਾਂਗੋ ਸਵਾਹਿਲੀ',
+ 'sw-cd' => 'ਕਾਂਗੋ ਸਵਾਇਲੀ',
+ 'swb' => 'ਕੋਮੋਰੀਅਨ',
+ 'syr' => 'ਸੀਰੀਆਈ',
'ta' => 'ਤਮਿਲ',
'te' => 'ਤੇਲਗੂ',
+ 'tem' => 'ਟਿਮਨੇ',
'teo' => 'ਟੇਸੋ',
+ 'tet' => 'ਟੇਟਮ',
'tg' => 'ਤਾਜਿਕ',
'th' => 'ਥਾਈ',
'ti' => 'ਤਿਗ੍ਰੀਨਿਆ',
+ 'tig' => 'ਟਿਗਰਾ',
'tk' => 'ਤੁਰਕਮੇਨ',
+ 'tlh' => 'ਕਲਿੰਗਨ',
+ 'tn' => 'ਤਸਵਾਨਾ',
'to' => 'ਟੌਂਗਨ',
+ 'tpi' => 'ਟੋਕ ਪਿਸਿਨ',
'tr' => 'ਤੁਰਕੀ',
+ 'trv' => 'ਟਾਰੋਕੋ',
+ 'ts' => 'ਸੋਂਗਾ',
'tt' => 'ਤਤਾਰ',
+ 'tum' => 'ਤੁੰਬੁਕਾ',
+ 'tvl' => 'ਟਿਊਵਾਲੂ',
'tw' => 'ਤ੍ਵਿ',
'twq' => 'ਤਾਸਾਵਿਕ',
+ 'ty' => 'ਤਾਹੀਟੀ',
+ 'tyv' => 'ਤੁਵੀਨੀਅਨ',
'tzm' => 'ਮੱਧ ਐਟਲਸ ਤਮਾਜ਼ਿਤ',
+ 'udm' => 'ਉਦਮੁਰਤ',
'ug' => 'ਉਇਗੁਰ',
'uk' => 'ਯੂਕਰੇਨੀਆਈ',
- 'und' => 'ਅਣਪਛਾਤੀ ਭਾਸ਼ਾ',
+ 'umb' => 'ਉਮਬੁੰਡੂ',
+ 'und' => 'ਅਣਪਛਾਤੀ ਬੋਲੀ',
'ur' => 'ਉਰਦੂ',
'uz' => 'ਉਜ਼ਬੇਕ',
'vai' => 'ਵਾਈ',
+ 've' => 'ਵੇਂਡਾ',
'vi' => 'ਵੀਅਤਨਾਮੀ',
+ 'vo' => 'ਵੋਲਾਪੂਕ',
'vun' => 'ਵੂੰਜੋ',
+ 'wa' => 'ਵਲੂਨ',
+ 'wae' => 'ਵਾਲਸਰ',
+ 'wal' => 'ਵੋਲਾਏਟਾ',
+ 'war' => 'ਵੈਰੇ',
+ 'wbp' => 'ਵਾਲਪੁਰੀ',
'wo' => 'ਵੋਲੋਫ',
+ 'wuu' => 'ਚੀਨੀ ਵੂ',
+ 'xal' => 'ਕਾਲਮਿਕ',
'xh' => 'ਖੋਸਾ',
'xog' => 'ਸੋਗਾ',
+ 'yav' => 'ਯਾਂਗਬੇਨ',
+ 'ybb' => 'ਯੇਂਬਾ',
+ 'yi' => 'ਯਿਦਿਸ਼',
'yo' => 'ਯੋਰੂਬਾ',
+ 'yue' => 'ਕੈਂਟੋਨੀਜ਼',
'zgh' => 'ਮਿਆਰੀ ਮੋਰੋਕੇਨ ਟਾਮਾਜ਼ਿਕ',
- 'zh' => 'ਚੀਨੀ',
- 'zh-hans' => 'ਸਰਲ ਚੀਨੀ',
- 'zh-hant' => 'ਰਵਾਇਤੀ ਚੀਨੀ',
+ 'zh' => 'ਚੀਨੀ (ਮੈਂਡਰਿਨ)',
+ 'zh-hans' => 'ਚੀਨੀ (ਸਰਲ)',
+ 'zh-hant' => 'ਚੀਨੀ (ਰਵਾਇਤੀ)',
'zu' => 'ਜ਼ੁਲੂ',
- 'zxx' => 'ਕੋਈ ਭਾਸ਼ਾਈ ਸਮੱਗਰੀ ਨਹੀਂ',
-);
+ 'zun' => 'ਜ਼ੂਨੀ',
+ 'zxx' => 'ਬੋਲੀ ਸੰਬੰਧੀ ਕੋਈ ਸਮੱਗਰੀ ਨਹੀਂ',
+ 'zza' => 'ਜ਼ਾਜ਼ਾ',
+];
-$currencyNames = array(
+$currencyNames = [
'AED' => 'ਸੰਯੁਕਤ ਅਰਬ ਅਮੀਰਾਤ ਦਿਰਹਾਮ',
'AFN' => 'ਅਫ਼ਗਾਨ ਅਫ਼ਗਾਨੀ',
'ALL' => 'ਅਲਬਾਨੀਆਈ ਲੇਕ',
@@ -280,12 +448,14 @@ $currencyNames = array(
'BSD' => 'ਬਾਹਾਮੀਅਨ ਡਾਲਰ',
'BTN' => 'ਭੂਟਾਨੀ ਐਂਗਲਟ੍ਰਮ',
'BWP' => 'ਬੋਟਸਵਾਨਾ ਪੁਲਾ',
- 'BYR' => 'ਬੇਲਾਰੂਸੀ ਰੂਬਲ',
+ 'BYN' => 'ਬੇਲਾਰੂਸੀ ਰੂਬਲ',
+ 'BYR' => 'ਬੇਲਾਰੂਸੀ ਰੂਬਲ (2000–2016)',
'BZD' => 'ਬੇਲੀਜ਼ ਡਾਲਰ',
'CAD' => 'ਕੇਨੇਡਿਆਈ ਡਾਲਰ',
'CDF' => 'ਕਾਂਗੋਲੀਜ਼ ਫ੍ਰੈਂਕ',
'CHF' => 'ਸਵਿਸ ਫ੍ਰੈਂਕ',
'CLP' => 'ਚਿਲੀ ਪੇਸੋ',
+ 'CNH' => 'ਚੀਨੀ ਯੁਆਨ (ਔਫ਼ਸ਼ੋਰ)',
'CNY' => 'ਚੀਨੀ ਯੁਆਨ',
'COP' => 'ਕੋਲੰਬਿਆਈ ਪੇਸੋ',
'CRC' => 'ਕੋਸਟਾ ਰੀਕਨ ਕੋਲਨ',
@@ -304,7 +474,7 @@ $currencyNames = array(
'EUR' => 'ਯੂਰੋ',
'FJD' => 'ਫ਼ਿਜ਼ੀ ਡਾਲਰ',
'FKP' => 'ਫ਼ਾਕਲੈਂਡ ਆਈਲੈਂਡਸ ਪੌਂਡ',
- 'GBP' => 'ਬ੍ਰਿਟਿਸ਼ ਪੌਂਡ ਸਟਰਲਿੰਗ',
+ 'GBP' => 'ਬ੍ਰਿਟਿਸ਼ ਪੌਂਡ',
'GEL' => 'ਜਾਰਜੀਆਈ ਲਾਰੀ',
'GHS' => 'ਘਾਨਾਈ ਸੇਡੀ',
'GIP' => 'ਜਿਬਰਾਲਟਰ ਪੌਂਡ',
@@ -351,7 +521,8 @@ $currencyNames = array(
'MMK' => 'ਮਿਆਂਮਾਰ ਕਿਆਤ',
'MNT' => 'ਮੰਗੋਲੀਆਈ ਤੁਗਰਿਕ',
'MOP' => 'ਮੇਕਾਨੀ ਪਟਾਕਾ',
- 'MRO' => 'ਮੋਰਿਟਾਨੀਆਈ ਊਗੀਆ',
+ 'MRO' => 'ਮੋਰਿਟਾਨੀਆਈ ਊਗੀਆ (1973–2017)',
+ 'MRU' => 'ਮੋਰਿਟਾਨੀਆਈ ਊਗੀਆ',
'MUR' => 'ਮੌਰਿਸ਼ੀਆਈ ਰੁਪਇਆ',
'MVR' => 'ਮਾਲਦੀਵੀ ਰੁਫੀਆ',
'MWK' => 'ਮਾਲਾਵੀਆਈ ਕਵਾਚਾ',
@@ -366,7 +537,7 @@ $currencyNames = array(
'NZD' => 'ਨਿਊਜ਼ੀਲੈਂਡ ਡਾਲਰ',
'OMR' => 'ਓਮਾਨੀ ਰਿਆਲ',
'PAB' => 'ਪਨਾਮੇਨੀਅਨ ਬਾਲਬੋਆ',
- 'PEN' => 'ਪੇਰੂਵੀਅਨ ਨਿਊਵੋ ਸੋਲ',
+ 'PEN' => 'ਪੇਰੂਵੀਅਨ ਸੋਲ',
'PGK' => 'ਪਾਪੂਆ ਨਿਊ ਗਿਨੀਆਈ ਕੀਨਾ',
'PHP' => 'ਫਿਲਿਪੀਨੀ ਪੇਸੋ',
'PKR' => 'ਪਾਕਿਸਤਾਨੀ ਰੁਪਇਆ',
@@ -388,7 +559,8 @@ $currencyNames = array(
'SOS' => 'ਸੋਮਾਲੀ ਸ਼ਿਲਿੰਗ',
'SRD' => 'ਸੂਰੀਨਾਮੀ ਡਾਲਰ',
'SSP' => 'ਦੱਖਣੀ ਸੂਡਾਨੀ ਪੌਂਡ',
- 'STD' => 'ਸਾਉ ਟੋਮੀ ਐਂਡ ਪ੍ਰਿੰਸਪੀ ਡੋਬਰਾ',
+ 'STD' => 'ਸਾਉ ਟੋਮੀ ਐਂਡ ਪ੍ਰਿੰਸਪੀ ਡੋਬਰਾ (1977–2017)',
+ 'STN' => 'ਸਾਉ ਟੋਮੀ ਐਂਡ ਪ੍ਰਿੰਸਪੀ ਡੋਬਰਾ',
'SUR' => 'ਸੋਵੀਅਤ ਰੂਬਲ',
'SYP' => 'ਸੀਰੀਆਈ ਪੌਂਡ',
'SZL' => 'ਸਵਾਜ਼ੀ ਲਾਇਲੈਂਗਨੀ',
@@ -408,26 +580,27 @@ $currencyNames = array(
'UYU' => 'ਉਰੂਗੁਵਾਇਨ ਪੇਸੋ',
'UZS' => 'ਉਜ਼ਬੇਕਿਸਤਾਨ ਸੋਮ',
'VEB' => 'ਵੇਨੇਜ਼ੂਏਲਨ ਬੋਲੀਵਰ (1871–2008)',
- 'VEF' => 'ਵੇਨੇਜ਼ੂਏਲਨ ਬੋਲੀਵਰ',
+ 'VEF' => 'ਵੇਨੇਜ਼ੂਏਲਨ ਬੋਲੀਵਰ (2008–2018)',
+ 'VES' => 'ਵੇਨੇਜ਼ੂਏਲਨ ਬੋਲੀਵਰ',
'VND' => 'ਵੀਅਤਨਾਮੀ ਡੋਂਗ',
'VNN' => 'ਵੀਅਤਨਾਮੀ ਡੋਂਗ (1978–1985)',
'VUV' => 'ਵਾਨੂਆਟੂ ਵਾਟੂ',
'WST' => 'ਸਾਮੋਆਈ ਤਾਲਾ',
- 'XAF' => 'ਫ੍ਰੈਂਕ (CFA BEAC)',
+ 'XAF' => 'ਕੇਂਦਰੀ ਅਫ਼ਰੀਕੀ [CFA] ਫ੍ਰੈਂਕ',
'XAG' => 'ਚਾਂਦੀ',
'XAU' => 'ਸੋਨਾ',
'XBB' => 'ਯੂਰਪੀ ਵਿੱਤੀ ਇਕਾਈ',
'XCD' => 'ਪੂਰਬੀ ਕੈਰੇਬੀਅਨ ਡਾਲਰ',
'XEU' => 'ਯੂਰਪੀ ਮੁਦਰਾ ਇਕਾਈ',
- 'XOF' => 'ਫ੍ਰੈਂਕ (CFA BCEAO)',
+ 'XOF' => 'ਪੱਛਮੀ ਅਫ਼ਰੀਕੀ (CFA) ਫ੍ਰੈਂਕ',
'XPF' => 'ਫ੍ਰੈਂਕ (CFP)',
'XXX' => 'ਅਗਿਆਤ ਮੁਦਰਾ',
'YER' => 'ਯਮਨੀ ਰਿਆਲ',
'ZAR' => 'ਦੱਖਣੀ ਅਫਰੀਕੀ ਰੈਂਡ',
'ZMW' => 'ਜ਼ਾਮਬੀਆਈ ਕਵਾਚਾ',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'AED' => 'AED',
'AFN' => 'AFN',
'ALL' => 'ALL',
@@ -464,12 +637,14 @@ $currencySymbols = array(
'BSD' => 'BSD',
'BTN' => 'BTN',
'BWP' => 'BWP',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CA$',
'CDF' => 'CDF',
'CHF' => 'CHF',
'CLP' => 'CLP',
+ 'CNH' => 'CNH',
'CNY' => 'CN¥',
'COP' => 'COP',
'CRC' => 'CRC',
@@ -535,6 +710,7 @@ $currencySymbols = array(
'MNT' => 'MNT',
'MOP' => 'MOP',
'MRO' => 'MRO',
+ 'MRU' => 'MRU',
'MUR' => 'MUR',
'MVR' => 'MVR',
'MWK' => 'MWK',
@@ -572,6 +748,7 @@ $currencySymbols = array(
'SRD' => 'SRD',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'STN',
'SUR' => 'SUR',
'SYP' => 'SYP',
'SZL' => 'SZL',
@@ -592,6 +769,7 @@ $currencySymbols = array(
'UZS' => 'UZS',
'VEB' => 'VEB',
'VEF' => 'VEF',
+ 'VES' => 'VES',
'VND' => '₫',
'VNN' => 'VNN',
'VUV' => 'VUV',
@@ -608,9 +786,9 @@ $currencySymbols = array(
'YER' => 'YER',
'ZAR' => 'ZAR',
'ZMW' => 'ZMW',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'ਅਸੈਂਸ਼ਨ ਟਾਪੂ',
'AD' => 'ਅੰਡੋਰਾ',
'AE' => 'ਸੰਯੁਕਤ ਅਰਬ ਅਮੀਰਾਤ',
@@ -646,7 +824,7 @@ $countryNames = array(
'BS' => 'ਬਹਾਮਾਸ',
'BT' => 'ਭੂਟਾਨ',
'BV' => 'ਬੌਵੇਟ ਟਾਪੂ',
- 'BW' => 'ਬੋਟਸਵਾਨਾ',
+ 'BW' => 'ਬੋਤਸਵਾਨਾ',
'BY' => 'ਬੇਲਾਰੂਸ',
'BZ' => 'ਬੇਲੀਜ਼',
'CA' => 'ਕੈਨੇਡਾ',
@@ -668,7 +846,7 @@ $countryNames = array(
'CW' => 'ਕੁਰਾਕਾਓ',
'CX' => 'ਕ੍ਰਿਸਮਿਸ ਟਾਪੂ',
'CY' => 'ਸਾਇਪ੍ਰਸ',
- 'CZ' => 'ਚੈਕ ਗਣਰਾਜ',
+ 'CZ' => 'ਚੈਕੀਆ',
'DE' => 'ਜਰਮਨੀ',
'DG' => 'ਡੀਇਗੋ ਗਾਰਸੀਆ',
'DJ' => 'ਜ਼ੀਬੂਤੀ',
@@ -684,7 +862,8 @@ $countryNames = array(
'ER' => 'ਇਰੀਟ੍ਰਿਆ',
'ES' => 'ਸਪੇਨ',
'ET' => 'ਇਥੋਪੀਆ',
- 'EU' => 'ਯੂਰਪੀ ਯੂਨੀਅਨ',
+ 'EU' => 'ਯੂਰਪੀ ਸੰਘ',
+ 'EZ' => 'ਯੂਰੋਜ਼ੋਨ',
'FI' => 'ਫਿਨਲੈਂਡ',
'FJ' => 'ਫ਼ਿਜੀ',
'FK' => 'ਫ਼ਾਕਲੈਂਡ ਟਾਪੂ',
@@ -695,7 +874,7 @@ $countryNames = array(
'GB' => 'ਯੂ.ਕੇ.',
'GD' => 'ਗ੍ਰੇਨਾਡਾ',
'GE' => 'ਜਾਰਜੀਆ',
- 'GF' => 'ਫ਼ਰੈਂਚ ਗੁਆਨਾ',
+ 'GF' => 'ਫਰੈਂਚ ਗੁਇਆਨਾ',
'GG' => 'ਗਰਨਜੀ',
'GH' => 'ਘਾਨਾ',
'GI' => 'ਜਿਬਰਾਲਟਰ',
@@ -722,7 +901,7 @@ $countryNames = array(
'IL' => 'ਇਜ਼ਰਾਈਲ',
'IM' => 'ਆਇਲ ਆਫ ਮੈਨ',
'IN' => 'ਭਾਰਤ',
- 'IO' => 'ਬਰਤਾਨਵੀ ਹਿੰਦ ਮਹਾਂਸਾਗਰ ਪ੍ਰਦੇਸ਼',
+ 'IO' => 'ਬਰਤਾਨਵੀ ਹਿੰਦ ਮਹਾਂਸਾਗਰ ਖਿੱਤਾ',
'IQ' => 'ਇਰਾਕ',
'IR' => 'ਈਰਾਨ',
'IS' => 'ਆਈਸਲੈਂਡ',
@@ -736,9 +915,9 @@ $countryNames = array(
'KH' => 'ਕੰਬੋਡੀਆ',
'KI' => 'ਕਿਰਬਾਤੀ',
'KM' => 'ਕੋਮੋਰੋਸ',
- 'KN' => 'ਸੈਂਟ ਕਿਟਸ ਐਂਡ ਨੇਵਿਸ',
- 'KP' => 'ਉੱਤਰੀ ਕੋਰੀਆ',
- 'KR' => 'ਦੱਖਣੀ ਕੋਰੀਆ',
+ 'KN' => 'ਸੇਂਟ ਕਿਟਸ ਐਂਡ ਨੇਵਿਸ',
+ 'KP' => 'ਉੱਤਰ ਕੋਰੀਆ',
+ 'KR' => 'ਦੱਖਣ ਕੋਰੀਆ',
'KW' => 'ਕੁਵੈਤ',
'KY' => 'ਕੇਮੈਨ ਟਾਪੂ',
'KZ' => 'ਕਜ਼ਾਖਸਤਾਨ',
@@ -751,7 +930,7 @@ $countryNames = array(
'LS' => 'ਲੇਸੋਥੋ',
'LT' => 'ਲਿਥੁਆਨੀਆ',
'LU' => 'ਲਕਜ਼ਮਬਰਗ',
- 'LV' => 'ਲਾਟਵੀਆ',
+ 'LV' => 'ਲਾਤਵੀਆ',
'LY' => 'ਲੀਬੀਆ',
'MA' => 'ਮੋਰੱਕੋ',
'MC' => 'ਮੋਨਾਕੋ',
@@ -770,7 +949,7 @@ $countryNames = array(
'MR' => 'ਮੋਰਿਟਾਨੀਆ',
'MS' => 'ਮੋਂਟਸੇਰਾਤ',
'MT' => 'ਮਾਲਟਾ',
- 'MU' => 'ਮੌਰਿਸ਼ਸ',
+ 'MU' => 'ਮੌਰੀਸ਼ਸ',
'MV' => 'ਮਾਲਦੀਵ',
'MW' => 'ਮਲਾਵੀ',
'MX' => 'ਮੈਕਸੀਕੋ',
@@ -793,10 +972,10 @@ $countryNames = array(
'PE' => 'ਪੇਰੂ',
'PF' => 'ਫਰੈਂਚ ਪੋਲੀਨੇਸ਼ੀਆ',
'PG' => 'ਪਾਪੂਆ ਨਿਊ ਗਿਨੀ',
- 'PH' => 'ਫਿਲੀਪੀਂਸ',
+ 'PH' => 'ਫਿਲੀਪੀਨਜ',
'PK' => 'ਪਾਕਿਸਤਾਨ',
'PL' => 'ਪੋਲੈਂਡ',
- 'PM' => 'ਸੈਂਟ ਪੀਅਰੇ ਐਂਡ ਮਿਕੇਲਨ',
+ 'PM' => 'ਸੇਂਟ ਪੀਅਰੇ ਐਂਡ ਮਿਕੇਲਨ',
'PN' => 'ਪਿਟਕੇਰਨ ਟਾਪੂ',
'PR' => 'ਪਿਊਰਟੋ ਰਿਕੋ',
'PS' => 'ਫਿਲੀਸਤੀਨ',
@@ -825,7 +1004,7 @@ $countryNames = array(
'SN' => 'ਸੇਨੇਗਲ',
'SO' => 'ਸੋਮਾਲੀਆ',
'SR' => 'ਸੂਰੀਨਾਮ',
- 'SS' => 'ਦੱਖਣੀ ਸੂਡਾਨ',
+ 'SS' => 'ਦੱਖਣ ਸੁਡਾਨ',
'ST' => 'ਸਾਓ ਟੋਮ ਅਤੇ ਪ੍ਰਿੰਸੀਪੇ',
'SV' => 'ਅਲ ਸਲਵਾਡੋਰ',
'SX' => 'ਸਿੰਟ ਮਾਰਟੀਨ',
@@ -850,15 +1029,16 @@ $countryNames = array(
'TZ' => 'ਤਨਜ਼ਾਨੀਆ',
'UA' => 'ਯੂਕਰੇਨ',
'UG' => 'ਯੂਗਾਂਡਾ',
- 'UM' => 'ਯੂ.ਐਸ. ਦੂਰ-ਦੁਰਾਡੇ ਟਾਪੂ',
- 'US' => 'ਯੂ.ਐਸ.',
+ 'UM' => 'ਯੂ.ਐੱਸ. ਦੂਰ-ਦੁਰਾਡੇ ਟਾਪੂ',
+ 'UN' => 'ਯੂ.ਐੱਨ.',
+ 'US' => 'ਯੂ.ਐੱਸ.',
'UY' => 'ਉਰੂਗਵੇ',
'UZ' => 'ਉਜ਼ਬੇਕਿਸਤਾਨ',
'VA' => 'ਵੈਟੀਕਨ ਸਿਟੀ',
'VC' => 'ਸੇਂਟ ਵਿਨਸੈਂਟ ਐਂਡ ਗ੍ਰੇਨਾਡੀਨਸ',
'VE' => 'ਵੇਨੇਜ਼ੂਏਲਾ',
'VG' => 'ਬ੍ਰਿਟਿਸ਼ ਵਰਜਿਨ ਟਾਪੂ',
- 'VI' => 'ਯੂ ਐਸ ਵਰਜਿਨ ਟਾਪੂ',
+ 'VI' => 'ਯੂ ਐੱਸ ਵਰਜਿਨ ਟਾਪੂ',
'VN' => 'ਵੀਅਤਨਾਮ',
'VU' => 'ਵਾਨੂਆਟੂ',
'WF' => 'ਵਾਲਿਸ ਅਤੇ ਫੂਟੂਨਾ',
@@ -869,9 +1049,11 @@ $countryNames = array(
'ZA' => 'ਦੱਖਣੀ ਅਫਰੀਕਾ',
'ZM' => 'ਜ਼ਾਮਬੀਆ',
'ZW' => 'ਜ਼ਿੰਬਾਬਵੇ',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-one' => '{0} ਸਦੀ',
+ 'century-other' => '{0} ਸਦੀਆਂ',
'day-future-one' => '{0} ਦਿਨ ਵਿੱਚ',
'day-future-other' => '{0} ਦਿਨਾਂ ਵਿੱਚ',
'day-narrow-future-one' => '{0} ਦਿਨ ਵਿੱਚ',
@@ -886,6 +1068,18 @@ $timeUnits = array(
'day-short-future-other' => '{0} ਦਿਨਾਂ ਵਿੱਚ',
'day-short-past-one' => '{0} ਦਿਨ ਪਹਿਲਾਂ',
'day-short-past-other' => '{0} ਦਿਨ ਪਹਿਲਾਂ',
+ 'fri-future-one' => '{0} ਸ਼ੁੱਕਰਵਾਰ ਵਿੱਚ',
+ 'fri-future-other' => '{0} ਸ਼ੁੱਕਰਵਾਰਾਂ ਵਿੱਚ',
+ 'fri-narrow-future-one' => '{0} ਸ਼ੁੱਕਰਵਾਰਾਂ ਵਿੱਚ',
+ 'fri-narrow-future-other' => '{0} ਸ਼ੁੱਕਰਵਾਰਾਂ ਵਿੱਚ',
+ 'fri-narrow-past-one' => '{0} ਸ਼ੁੱਕਰਵਾਰ ਪਹਿਲਾਂ',
+ 'fri-narrow-past-other' => '{0} ਸ਼ੁੱਕਰਵਾਰ ਪਹਿਲਾਂ',
+ 'fri-past-one' => '{0} ਸ਼ੁੱਕਰਵਾਰ ਪਹਿਲਾਂ',
+ 'fri-past-other' => '{0} ਸ਼ੁੱਕਰਵਾਰ ਪਹਿਲਾਂ',
+ 'fri-short-future-one' => '{0} ਸ਼ੁੱਕਰਵਾਰਾਂ ਵਿੱਚ',
+ 'fri-short-future-other' => '{0} ਸ਼ੁੱਕਰਵਾਰਾਂ ਵਿੱਚ',
+ 'fri-short-past-one' => '{0} ਸ਼ੁੱਕਰਵਾਰ ਪਹਿਲਾਂ',
+ 'fri-short-past-other' => '{0} ਸ਼ੁੱਕਰਵਾਰ ਪਹਿਲਾਂ',
'hour-future-one' => '{0} ਘੰਟੇ ਵਿੱਚ',
'hour-future-other' => '{0} ਘੰਟਿਆਂ ਵਿੱਚ',
'hour-narrow-future-one' => '{0} ਘੰਟੇ ਵਿੱਚ',
@@ -918,34 +1112,58 @@ $timeUnits = array(
'minute-short-future-other' => '{0} ਮਿੰਟਾਂ ਵਿੱਚ',
'minute-short-past-one' => '{0} ਮਿੰਟ ਪਹਿਲਾਂ',
'minute-short-past-other' => '{0} ਮਿੰਟ ਪਹਿਲਾਂ',
+ 'mon-future-one' => '{0} ਸੋਮਵਾਰ ਵਿੱਚ',
+ 'mon-future-other' => '{0} ਸੋਮਵਾਰਾਂ ਵਿੱਚ',
+ 'mon-narrow-future-one' => '{0} ਸੋਮਵਾਰ ਵਿੱਚ',
+ 'mon-narrow-future-other' => '{0} ਸੋਮਵਾਰਾਂ ਵਿੱਚ',
+ 'mon-narrow-past-one' => '{0} ਸੋਮਵਾਰ ਪਹਿਲਾਂ',
+ 'mon-narrow-past-other' => '{0} ਸੋਮਵਾਰ ਪਹਿਲਾਂ',
+ 'mon-past-one' => '{0} ਸੋਮਵਾਰ ਪਹਿਲਾਂ',
+ 'mon-past-other' => '{0} ਸੋਮਵਾਰ ਪਹਿਲਾਂ',
+ 'mon-short-future-one' => '{0} ਸੋਮਵਾਰ ਵਿੱਚ',
+ 'mon-short-future-other' => '{0} ਸੋਮਵਾਰਾਂ ਵਿੱਚ',
+ 'mon-short-past-one' => '{0} ਸੋਮਵਾਰ ਪਹਿਲਾਂ',
+ 'mon-short-past-other' => '{0} ਸੋਮਵਾਰ ਪਹਿਲਾਂ',
'month-future-one' => '{0} ਮਹੀਨੇ ਵਿੱਚ',
'month-future-other' => '{0} ਮਹੀਨਿਆਂ ਵਿੱਚ',
'month-narrow-future-one' => '{0} ਮਹੀਨੇ ਵਿੱਚ',
'month-narrow-future-other' => '{0} ਮਹੀਨਿਆਂ ਵਿੱਚ',
- 'month-narrow-past-one' => '{0} ਮਹੀਨੇ ਪਹਿਲਾਂ',
+ 'month-narrow-past-one' => '{0} ਮਹੀਨਾ ਪਹਿਲਾਂ',
'month-narrow-past-other' => '{0} ਮਹੀਨੇ ਪਹਿਲਾਂ',
'month-one' => '{0} ਮਹੀਨਾ',
'month-other' => '{0} ਮਹੀਨੇ',
- 'month-past-one' => '{0} ਮਹੀਨੇ ਪਹਿਲਾਂ',
+ 'month-past-one' => '{0} ਮਹੀਨਾ ਪਹਿਲਾਂ',
'month-past-other' => '{0} ਮਹੀਨੇ ਪਹਿਲਾਂ',
'month-short-future-one' => '{0} ਮਹੀਨੇ ਵਿੱਚ',
'month-short-future-other' => '{0} ਮਹੀਨਿਆਂ ਵਿੱਚ',
- 'month-short-past-one' => '{0} ਮਹੀਨੇ ਪਹਿਲਾਂ',
+ 'month-short-past-one' => '{0} ਮਹੀਨਾ ਪਹਿਲਾਂ',
'month-short-past-other' => '{0} ਮਹੀਨੇ ਪਹਿਲਾਂ',
'nanosecond-one' => '{0} ਨੈਨੋਸਕਿੰਟ',
'nanosecond-other' => '{0} ਨੈਨੋਸਕਿੰਟ',
'quarter-future-one' => '{0} ਤਿਮਾਹੀ ਵਿੱਚ',
'quarter-future-other' => '{0} ਤਿਮਾਹੀਆਂ ਵਿੱਚ',
- 'quarter-narrow-future-one' => '+{0} ਤਿਮਾਹੀ',
- 'quarter-narrow-future-other' => '+{0} ਤਿਮਾਹੀਆਂ',
- 'quarter-narrow-past-one' => '-{0} ਤਿਮਾਹੀ',
- 'quarter-narrow-past-other' => '-{0} ਤਿਮਾਹੀਆਂ',
+ 'quarter-narrow-future-one' => '{0} ਤਿਮਾਹੀ ਵਿੱਚ',
+ 'quarter-narrow-future-other' => '{0} ਤਿਮਾਹੀਆਂ ਵਿੱਚ',
+ 'quarter-narrow-past-one' => '{0} ਤਿਮਾਹੀ ਪਹਿਲਾਂ',
+ 'quarter-narrow-past-other' => '{0} ਤਿਮਾਹੀਆਂ ਪਹਿਲਾਂ',
'quarter-past-one' => '{0} ਤਿਮਾਹੀ ਪਹਿਲਾਂ',
'quarter-past-other' => '{0} ਤਿਮਾਹੀਆਂ ਪਹਿਲਾਂ',
'quarter-short-future-one' => '{0} ਤਿਮਾਹੀ ਵਿੱਚ',
'quarter-short-future-other' => '{0} ਤਿਮਾਹੀਆਂ ਵਿੱਚ',
'quarter-short-past-one' => '{0} ਤਿਮਾਹੀ ਪਹਿਲਾਂ',
'quarter-short-past-other' => '{0} ਤਿਮਾਹੀਆਂ ਪਹਿਲਾਂ',
+ 'sat-future-one' => '{0} ਸ਼ਨਿੱਚਰਵਾਰ ਵਿੱਚ',
+ 'sat-future-other' => '{0} ਸ਼ਨਿੱਚਰਵਾਰਾਂ ਵਿੱਚ',
+ 'sat-narrow-future-one' => '{0} ਸ਼ਨਿੱਚਰਵਾਰਾਂ ਵਿੱਚ',
+ 'sat-narrow-future-other' => '{0} ਸ਼ਨਿੱਚਰਵਾਰਾਂ ਵਿੱਚ',
+ 'sat-narrow-past-one' => '{0} ਸ਼ਨਿੱਚਰਵਾਰ ਪਹਿਲਾਂ',
+ 'sat-narrow-past-other' => '{0} ਸ਼ਨਿੱਚਰਵਾਰ ਪਹਿਲਾਂ',
+ 'sat-past-one' => '{0} ਸ਼ਨਿੱਚਰਵਾਰ ਪਹਿਲਾਂ',
+ 'sat-past-other' => '{0} ਸ਼ਨਿੱਚਰਵਾਰ ਪਹਿਲਾਂ',
+ 'sat-short-future-one' => '{0} ਸ਼ਨਿੱਚਰਵਾਰਾਂ ਵਿੱਚ',
+ 'sat-short-future-other' => '{0} ਸ਼ਨਿੱਚਰਵਾਰਾਂ ਵਿੱਚ',
+ 'sat-short-past-one' => '{0} ਸ਼ਨਿੱਚਰਵਾਰ ਪਹਿਲਾਂ',
+ 'sat-short-past-other' => '{0} ਸ਼ਨਿੱਚਰਵਾਰ ਪਹਿਲਾਂ',
'second-future-one' => '{0} ਸਕਿੰਟ ਵਿੱਚ',
'second-future-other' => '{0} ਸਕਿੰਟਾਂ ਵਿੱਚ',
'second-narrow-future-one' => '{0} ਸਕਿੰਟ ਵਿੱਚ',
@@ -960,11 +1178,59 @@ $timeUnits = array(
'second-short-future-other' => '{0} ਸਕਿੰਟਾਂ ਵਿੱਚ',
'second-short-past-one' => '{0} ਸਕਿੰਟ ਪਹਿਲਾਂ',
'second-short-past-other' => '{0} ਸਕਿੰਟ ਪਹਿਲਾਂ',
+ 'sun-future-one' => '{0} ਐਤਵਾਰ ਵਿੱਚ',
+ 'sun-future-other' => '{0} ਐਤਵਾਰਾਂ ਵਿੱਚ',
+ 'sun-narrow-future-one' => '{0} ਐਤਵਾਰ ਵਿੱਚ',
+ 'sun-narrow-future-other' => '{0} ਐਤਵਾਰਾਂ ਵਿੱਚ',
+ 'sun-narrow-past-one' => '{0} ਐਤਵਾਰ ਪਹਿਲਾਂ',
+ 'sun-narrow-past-other' => '{0} ਐਤਵਾਰ ਪਹਿਲਾਂ',
+ 'sun-past-one' => '{0} ਐਤਵਾਰ ਪਹਿਲਾਂ',
+ 'sun-past-other' => '{0} ਐਤਵਾਰ ਪਹਿਲਾਂ',
+ 'sun-short-future-one' => '{0} ਐਤਵਾਰਾਂ ਵਿੱਚ',
+ 'sun-short-future-other' => '{0} ਐਤਵਾਰਾਂ ਵਿੱਚ',
+ 'sun-short-past-one' => '{0} ਐਤਵਾਰ ਪਹਿਲਾਂ',
+ 'sun-short-past-other' => '{0} ਐਤਵਾਰ ਪਹਿਲਾਂ',
+ 'thu-future-one' => '{0} ਵੀਰਵਾਰ ਵਿੱਚ',
+ 'thu-future-other' => '{0} ਵੀਰਵਾਰਾਂ ਵਿੱਚ',
+ 'thu-narrow-future-one' => '{0} ਵੀਰਵਾਰਾਂ ਵਿੱਚ',
+ 'thu-narrow-future-other' => '{0} ਵੀਰਵਾਰਾਂ ਵਿੱਚ',
+ 'thu-narrow-past-one' => '{0} ਵੀਰਵਾਰ ਪਹਿਲਾਂ',
+ 'thu-narrow-past-other' => '{0} ਵੀਰਵਾਰ ਪਹਿਲਾਂ',
+ 'thu-past-one' => '{0} ਵੀਰਵਾਰ ਪਹਿਲਾਂ',
+ 'thu-past-other' => '{0} ਵੀਰਵਾਰ ਪਹਿਲਾਂ',
+ 'thu-short-future-one' => '{0} ਵੀਰਵਾਰਾਂ ਵਿੱਚ',
+ 'thu-short-future-other' => '{0} ਵੀਰਵਾਰਾਂ ਵਿੱਚ',
+ 'thu-short-past-one' => '{0} ਵੀਰਵਾਰ ਪਹਿਲਾਂ',
+ 'thu-short-past-other' => '{0} ਵੀਰਵਾਰ ਪਹਿਲਾਂ',
+ 'tue-future-one' => '{0} ਮੰਗਲਵਾਰ ਵਿੱਚ',
+ 'tue-future-other' => '{0} ਮੰਗਲਵਾਰਾਂ ਵਿੱਚ',
+ 'tue-narrow-future-one' => '{0} ਮੰਗਲਵਾਰ ਵਿੱਚ',
+ 'tue-narrow-future-other' => '{0} ਮੰਗਲਵਾਰਾਂ ਵਿੱਚ',
+ 'tue-narrow-past-one' => '{0} ਮੰਗਲਵਾਰ ਪਹਿਲਾਂ',
+ 'tue-narrow-past-other' => '{0} ਮੰਗਲਵਾਰ ਪਹਿਲਾਂ',
+ 'tue-past-one' => '{0} ਮੰਗਲਵਾਰ ਪਹਿਲਾਂ',
+ 'tue-past-other' => '{0} ਮੰਗਲਵਾਰ ਪਹਿਲਾਂ',
+ 'tue-short-future-one' => '{0} ਮੰਗਲਵਾਰ ਵਿੱਚ',
+ 'tue-short-future-other' => '{0} ਮੰਗਲਵਾਰਾਂ ਵਿੱਚ',
+ 'tue-short-past-one' => '{0} ਮੰਗਲਵਾਰ ਪਹਿਲਾਂ',
+ 'tue-short-past-other' => '{0} ਮੰਗਲਵਾਰ ਪਹਿਲਾਂ',
+ 'wed-future-one' => '{0} ਬੁੱਧਵਾਰ ਵਿੱਚ',
+ 'wed-future-other' => '{0} ਬੁੱਧਵਾਰਾਂ ਵਿੱਚ',
+ 'wed-narrow-future-one' => '{0} ਬੁੱਧਵਾਰ ਵਿੱਚ',
+ 'wed-narrow-future-other' => '{0} ਬੁੱਧਵਾਰਾਂ ਵਿੱਚ',
+ 'wed-narrow-past-one' => '{0} ਬੁੱਧਵਾਰ ਪਹਿਲਾਂ',
+ 'wed-narrow-past-other' => '{0} ਬੁੱਧਵਾਰ ਪਹਿਲਾਂ',
+ 'wed-past-one' => '{0} ਬੁੱਧਵਾਰ ਪਹਿਲਾਂ',
+ 'wed-past-other' => '{0} ਬੁੱਧਵਾਰ ਪਹਿਲਾਂ',
+ 'wed-short-future-one' => '{0} ਬੁੱਧਵਾਰ ਵਿੱਚ',
+ 'wed-short-future-other' => '{0} ਬੁੱਧਵਾਰਾਂ ਵਿੱਚ',
+ 'wed-short-past-one' => '{0} ਬੁੱਧਵਾਰ ਪਹਿਲਾਂ',
+ 'wed-short-past-other' => '{0} ਬੁੱਧਵਾਰ ਪਹਿਲਾਂ',
'week-future-one' => '{0} ਹਫ਼ਤੇ ਵਿੱਚ',
'week-future-other' => '{0} ਹਫ਼ਤਿਆਂ ਵਿੱਚ',
'week-narrow-future-one' => '{0} ਹਫ਼ਤੇ ਵਿੱਚ',
'week-narrow-future-other' => '{0} ਹਫ਼ਤਿਆਂ ਵਿੱਚ',
- 'week-narrow-past-one' => '{0} ਹਫ਼ਤੇ ਪਹਿਲਾਂ',
+ 'week-narrow-past-one' => '{0} ਹਫ਼ਤਾ ਪਹਿਲਾਂ',
'week-narrow-past-other' => '{0} ਹਫ਼ਤੇ ਪਹਿਲਾਂ',
'week-one' => '{0} ਹਫ਼ਤਾ',
'week-other' => '{0} ਹਫ਼ਤੇ',
@@ -972,7 +1238,7 @@ $timeUnits = array(
'week-past-other' => '{0} ਹਫ਼ਤੇ ਪਹਿਲਾਂ',
'week-short-future-one' => '{0} ਹਫ਼ਤੇ ਵਿੱਚ',
'week-short-future-other' => '{0} ਹਫ਼ਤਿਆਂ ਵਿੱਚ',
- 'week-short-past-one' => '{0} ਹਫ਼ਤੇ ਪਹਿਲਾਂ',
+ 'week-short-past-one' => '{0} ਹਫ਼ਤਾ ਪਹਿਲਾਂ',
'week-short-past-other' => '{0} ਹਫ਼ਤੇ ਪਹਿਲਾਂ',
'year-future-one' => '{0} ਸਾਲ ਵਿੱਚ',
'year-future-other' => '{0} ਸਾਲਾਂ ਵਿੱਚ',
@@ -988,4 +1254,4 @@ $timeUnits = array(
'year-short-future-other' => '{0} ਸਾਲਾਂ ਵਿੱਚ',
'year-short-past-one' => '{0} ਸਾਲ ਪਹਿਲਾਂ',
'year-short-past-other' => '{0} ਸਾਲ ਪਹਿਲਾਂ',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesPl.php b/MLEB/cldr/CldrNames/CldrNamesPl.php
index 97aefe11..50a2bd3b 100644
--- a/MLEB/cldr/CldrNames/CldrNamesPl.php
+++ b/MLEB/cldr/CldrNames/CldrNamesPl.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'afar',
'ab' => 'abchaski',
'ace' => 'aceh',
@@ -26,10 +26,11 @@ $languageNames = array(
'ar' => 'arabski',
'ar-001' => 'współczesny arabski',
'arc' => 'aramejski',
- 'arn' => 'araukański',
+ 'arn' => 'mapudungun',
'aro' => 'araona',
'arp' => 'arapaho',
'arq' => 'algierski arabski',
+ 'ars' => 'arabski nadżdyjski',
'arw' => 'arawak',
'ary' => 'marokański arabski',
'arz' => 'egipski arabski',
@@ -41,13 +42,12 @@ $languageNames = array(
'avk' => 'kotava',
'awa' => 'awadhi',
'ay' => 'ajmara',
- 'az' => 'azerski',
- 'azb' => 'południowoazerski',
+ 'az' => 'azerbejdżański',
'ba' => 'baszkirski',
'bal' => 'beludżi',
'ban' => 'balijski',
'bar' => 'bawarski',
- 'bas' => 'basa',
+ 'bas' => 'basaa',
'bax' => 'bamum',
'bbc' => 'batak toba',
'bbj' => 'ghomala',
@@ -59,7 +59,8 @@ $languageNames = array(
'bfd' => 'bafut',
'bfq' => 'badaga',
'bg' => 'bułgarski',
- 'bho' => 'bhodźpuri',
+ 'bgn' => 'beludżi północny',
+ 'bho' => 'bhodżpuri',
'bi' => 'bislama',
'bik' => 'bikol',
'bin' => 'bini',
@@ -76,39 +77,40 @@ $languageNames = array(
'brh' => 'brahui',
'brx' => 'bodo',
'bs' => 'bośniacki',
- 'bss' => 'akose',
+ 'bss' => 'akoose',
'bua' => 'buriacki',
- 'bug' => 'bugiński',
+ 'bug' => 'bugijski',
'bum' => 'bulu',
'byn' => 'blin',
'byv' => 'medumba',
'ca' => 'kataloński',
'cad' => 'kaddo',
- 'car' => 'karibi',
+ 'car' => 'karaibski',
'cay' => 'kajuga',
'cch' => 'atsam',
'ce' => 'czeczeński',
'ceb' => 'cebuano',
'cgg' => 'chiga',
- 'ch' => 'chamorro',
+ 'ch' => 'czamorro',
'chb' => 'czibcza',
'chg' => 'czagatajski',
- 'chk' => 'truk',
+ 'chk' => 'chuuk',
'chm' => 'maryjski',
- 'chn' => 'żargon Chinook',
- 'cho' => 'choctaw',
- 'chp' => 'chipewyan',
+ 'chn' => 'żargon czinucki',
+ 'cho' => 'czoktawski',
+ 'chp' => 'czipewiański',
'chr' => 'czirokeski',
- 'chy' => 'język Czejenów',
+ 'chy' => 'czejeński',
'ckb' => 'sorani',
'co' => 'korsykański',
'cop' => 'koptyjski',
'cps' => 'capiznon',
'cr' => 'kri',
- 'crh' => 'krymski turecki',
+ 'crh' => 'krymskotatarski',
+ 'crs' => 'kreolski seszelski',
'cs' => 'czeski',
'csb' => 'kaszubski',
- 'cu' => 'staro-cerkiewno-słowiański',
+ 'cu' => 'cerkiewnosłowiański',
'cv' => 'czuwaski',
'cy' => 'walijski',
'da' => 'duński',
@@ -117,7 +119,7 @@ $languageNames = array(
'dav' => 'taita',
'de' => 'niemiecki',
'de-at' => 'austriacki niemiecki',
- 'de-ch' => 'wysokoniemiecki (Szwajcaria)',
+ 'de-ch' => 'szwajcarski wysokoniemiecki',
'del' => 'delaware',
'den' => 'slave',
'dgr' => 'dogrib',
@@ -130,14 +132,14 @@ $languageNames = array(
'dum' => 'średniowieczny niderlandzki',
'dv' => 'malediwski',
'dyo' => 'diola',
- 'dyu' => 'dyula',
+ 'dyu' => 'diula',
'dz' => 'dzongkha',
'dzg' => 'dazaga',
'ebu' => 'embu',
'ee' => 'ewe',
'efi' => 'efik',
'egl' => 'emilijski',
- 'egy' => 'starożytny egipski',
+ 'egy' => 'staroegipski',
'eka' => 'ekajuk',
'el' => 'grecki',
'elx' => 'elamicki',
@@ -170,13 +172,13 @@ $languageNames = array(
'fr' => 'francuski',
'fr-ca' => 'kanadyjski francuski',
'fr-ch' => 'szwajcarski francuski',
- 'frc' => 'cajun',
+ 'frc' => 'cajuński',
'frm' => 'średniofrancuski',
'fro' => 'starofrancuski',
'frp' => 'franko-prowansalski',
'frr' => 'północnofryzyjski',
- 'frs' => 'fryzyjski wschodni',
- 'fur' => 'friulijski',
+ 'frs' => 'wschodniofryzyjski',
+ 'fur' => 'friulski',
'fy' => 'zachodniofryzyjski',
'ga' => 'irlandzki',
'gaa' => 'ga',
@@ -200,7 +202,7 @@ $languageNames = array(
'grb' => 'grebo',
'grc' => 'starogrecki',
'gsw' => 'szwajcarski niemiecki',
- 'gu' => 'gudźaracki',
+ 'gu' => 'gudżarati',
'guc' => 'wayúu',
'gur' => 'frafra',
'guz' => 'gusii',
@@ -213,20 +215,20 @@ $languageNames = array(
'he' => 'hebrajski',
'hi' => 'hindi',
'hif' => 'hindi fidżyjskie',
- 'hil' => 'hiligajnon',
+ 'hil' => 'hiligaynon',
'hit' => 'hetycki',
- 'hmn' => 'hmongijski',
+ 'hmn' => 'hmong',
'ho' => 'hiri motu',
'hr' => 'chorwacki',
'hsb' => 'górnołużycki',
'hsn' => 'xiang',
- 'ht' => 'haitański',
+ 'ht' => 'kreolski haitański',
'hu' => 'węgierski',
'hup' => 'hupa',
'hy' => 'ormiański',
'hz' => 'herero',
'ia' => 'interlingua',
- 'iba' => 'ibanag',
+ 'iba' => 'iban',
'ibb' => 'ibibio',
'id' => 'indonezyjski',
'ie' => 'interlingue',
@@ -245,7 +247,7 @@ $languageNames = array(
'jbo' => 'lojban',
'jgo' => 'ngombe',
'jmc' => 'machame',
- 'jpr' => 'judeoperski',
+ 'jpr' => 'judeo-perski',
'jrb' => 'judeoarabski',
'jut' => 'jutlandzki',
'jv' => 'jawajski',
@@ -267,7 +269,7 @@ $languageNames = array(
'kgp' => 'kaingang',
'kha' => 'khasi',
'kho' => 'chotański',
- 'khq' => 'koyra chini',
+ 'khq' => 'koyra chiini',
'khw' => 'khowar',
'ki' => 'kikuju',
'kiu' => 'kirmandżki',
@@ -309,7 +311,7 @@ $languageNames = array(
'lez' => 'lezgijski',
'lfn' => 'Lingua Franca Nova',
'lg' => 'ganda',
- 'li' => 'limburgijski',
+ 'li' => 'limburski',
'lij' => 'liguryjski',
'liv' => 'liwski',
'lkt' => 'lakota',
@@ -317,7 +319,9 @@ $languageNames = array(
'ln' => 'lingala',
'lo' => 'laotański',
'lol' => 'mongo',
+ 'lou' => 'kreolski luizjański',
'loz' => 'lozi',
+ 'lrc' => 'luryjski północny',
'lt' => 'litewski',
'ltg' => 'łatgalski',
'lu' => 'luba-katanga',
@@ -325,12 +329,12 @@ $languageNames = array(
'lui' => 'luiseno',
'lun' => 'lunda',
'luo' => 'luo',
- 'lus' => 'lushai',
+ 'lus' => 'mizo',
'luy' => 'luhya',
'lv' => 'łotewski',
'lzh' => 'chiński klasyczny',
'lzz' => 'lazyjski',
- 'mad' => 'madurajski',
+ 'mad' => 'madurski',
'maf' => 'mafa',
'mag' => 'magahi',
'mai' => 'maithili',
@@ -338,7 +342,7 @@ $languageNames = array(
'man' => 'mandingo',
'mas' => 'masajski',
'mde' => 'maba',
- 'mdf' => 'moksha',
+ 'mdf' => 'moksza',
'mdr' => 'mandar',
'men' => 'mende',
'mer' => 'meru',
@@ -347,15 +351,15 @@ $languageNames = array(
'mga' => 'średnioirlandzki',
'mgh' => 'makua',
'mgo' => 'meta',
- 'mh' => 'marshall',
+ 'mh' => 'marszalski',
'mi' => 'maoryjski',
- 'mic' => 'micmac',
+ 'mic' => 'mikmak',
'min' => 'minangkabu',
'mk' => 'macedoński',
'ml' => 'malajalam',
'mn' => 'mongolski',
'mnc' => 'manchu',
- 'mni' => 'manipuryjski',
+ 'mni' => 'manipuri',
'moh' => 'mohawk',
'mos' => 'mossi',
'mr' => 'marathi',
@@ -364,21 +368,22 @@ $languageNames = array(
'mt' => 'maltański',
'mua' => 'mundang',
'mul' => 'wiele języków',
- 'mus' => 'creek',
- 'mwl' => 'mirandese',
+ 'mus' => 'krik',
+ 'mwl' => 'mirandyjski',
'mwr' => 'marwari',
'mwv' => 'mentawai',
'my' => 'birmański',
'mye' => 'myene',
- 'myv' => 'erzya',
+ 'myv' => 'erzja',
'mzn' => 'mazanderański',
- 'na' => 'nauru',
+ 'na' => 'nauruański',
'nan' => 'minnański',
'nap' => 'neapolitański',
'naq' => 'nama',
'nb' => 'norweski (bokmål)',
'nd' => 'ndebele północny',
- 'nds' => 'dolnosaksoński',
+ 'nds' => 'dolnoniemiecki',
+ 'nds-nl' => 'dolnosaksoński',
'ne' => 'nepalski',
'new' => 'newarski',
'ng' => 'ndonga',
@@ -386,7 +391,7 @@ $languageNames = array(
'niu' => 'niue',
'njo' => 'ao',
'nl' => 'niderlandzki',
- 'nl-be' => 'flamandzki (Belgia)',
+ 'nl-be' => 'flamandzki',
'nmg' => 'ngumba',
'nn' => 'norweski (nynorsk)',
'nnh' => 'ngiemboon',
@@ -405,20 +410,21 @@ $languageNames = array(
'nyn' => 'nyankole',
'nyo' => 'nyoro',
'nzi' => 'nzema',
- 'oc' => 'prowansalski',
+ 'oc' => 'oksytański',
'oj' => 'odżibwa',
- 'om' => 'oromski',
+ 'om' => 'oromo',
'or' => 'orija',
'os' => 'osetyjski',
'osa' => 'osage',
'ota' => 'osmańsko-turecki',
'pa' => 'pendżabski',
- 'pag' => 'pangasino',
+ 'pag' => 'pangasinan',
'pal' => 'pahlavi',
'pam' => 'pampango',
'pap' => 'papiamento',
'pau' => 'palau',
'pcd' => 'pikardyjski',
+ 'pcm' => 'pidżyn nigeryjski',
'pdc' => 'pensylwański',
'pdt' => 'plautdietsch',
'peo' => 'staroperski',
@@ -437,7 +443,7 @@ $languageNames = array(
'pt-pt' => 'europejski portugalski',
'qu' => 'keczua',
'quc' => 'kicze',
- 'qug' => 'chimborazo górski keczua',
+ 'qug' => 'keczua górski (Chimborazo)',
'raj' => 'radźasthani',
'rap' => 'rapanui',
'rar' => 'rarotonga',
@@ -468,10 +474,11 @@ $languageNames = array(
'sbp' => 'sangu',
'sc' => 'sardyński',
'scn' => 'sycylijski',
- 'sco' => 'szkocki',
+ 'sco' => 'scots',
'sd' => 'sindhi',
'sdc' => 'sassarski',
- 'se' => 'lapoński północny',
+ 'sdh' => 'południowokurdyjski',
+ 'se' => 'północnolapoński',
'see' => 'seneka',
'seh' => 'sena',
'sei' => 'seri',
@@ -482,7 +489,7 @@ $languageNames = array(
'sgs' => 'żmudzki',
'sh' => 'serbsko-chorwacki',
'shi' => 'tashelhiyt',
- 'shn' => 'shan',
+ 'shn' => 'szan',
'shu' => 'arabski (Czad)',
'si' => 'syngaleski',
'sid' => 'sidamo',
@@ -491,11 +498,11 @@ $languageNames = array(
'sli' => 'dolnośląski',
'sly' => 'selayar',
'sm' => 'samoański',
- 'sma' => 'lapoński południowy',
- 'smj' => 'lapoński Lule',
- 'smn' => 'lapoński Inari',
- 'sms' => 'lapoński Skolt',
- 'sn' => 'szona',
+ 'sma' => 'południowolapoński',
+ 'smj' => 'lule',
+ 'smn' => 'inari',
+ 'sms' => 'skolt',
+ 'sn' => 'shona',
'snk' => 'soninke',
'so' => 'somalijski',
'sog' => 'sogdyjski',
@@ -503,7 +510,7 @@ $languageNames = array(
'sr' => 'serbski',
'srn' => 'sranan tongo',
'srr' => 'serer',
- 'ss' => 'siswati',
+ 'ss' => 'suazi',
'ssy' => 'saho',
'st' => 'sotho południowy',
'stq' => 'fryzyjski saterlandzki',
@@ -513,8 +520,8 @@ $languageNames = array(
'sux' => 'sumeryjski',
'sv' => 'szwedzki',
'sw' => 'suahili',
+ 'sw-cd' => 'kongijski suahili',
'swb' => 'komoryjski',
- 'swc' => 'kongijski suahili',
'syc' => 'syriacki',
'syr' => 'syryjski',
'szl' => 'śląski',
@@ -556,7 +563,7 @@ $languageNames = array(
'twq' => 'tasawaq',
'ty' => 'tahitański',
'tyv' => 'tuwiński',
- 'tzm' => 'centralnomarokański tamazight',
+ 'tzm' => 'tamazight (Atlas Środkowy)',
'udm' => 'udmurcki',
'ug' => 'ujgurski',
'uga' => 'ugarycki',
@@ -572,15 +579,16 @@ $languageNames = array(
'vi' => 'wietnamski',
'vls' => 'zachodnioflamandzki',
'vmf' => 'meński frankoński',
- 'vo' => 'volapuk',
+ 'vo' => 'wolapik',
'vot' => 'wotiacki',
'vro' => 'võro',
'vun' => 'vunjo',
'wa' => 'waloński',
'wae' => 'walser',
- 'wal' => 'walamo',
+ 'wal' => 'wolayta',
'war' => 'waraj',
'was' => 'washo',
+ 'wbp' => 'warlpiri',
'wo' => 'wolof',
'wuu' => 'wu',
'xal' => 'kałmucki',
@@ -593,24 +601,24 @@ $languageNames = array(
'ybb' => 'yemba',
'yi' => 'jidysz',
'yo' => 'joruba',
- 'yrl' => 'nhengatu',
+ 'yrl' => 'nheengatu',
'yue' => 'kantoński',
'za' => 'czuang',
'zap' => 'zapotecki',
'zbl' => 'bliss',
'zea' => 'zelandzki',
'zen' => 'zenaga',
- 'zgh' => 'zgh',
+ 'zgh' => 'standardowy marokański tamazight',
'zh' => 'chiński',
- 'zh-hans' => 'chiński (uproszczony)',
- 'zh-hant' => 'chiński (tradycyjny)',
+ 'zh-hans' => 'chiński uproszczony',
+ 'zh-hant' => 'chiński tradycyjny',
'zu' => 'zulu',
'zun' => 'zuni',
'zxx' => 'brak treści o charakterze językowym',
'zza' => 'zazaki',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'ADP' => 'peseta andorska',
'AED' => 'dirham arabski',
'AFA' => 'afgani (1927–2002)',
@@ -659,12 +667,14 @@ $currencyNames = array(
'BUK' => 'kyat birmański',
'BWP' => 'pula botswańska',
'BYB' => 'rubel białoruski (1994–1999)',
- 'BYR' => 'rubel białoruski',
+ 'BYN' => 'rubel białoruski',
+ 'BYR' => 'rubel białoruski (2000–2016)',
'BZD' => 'dolar belizeński',
'CAD' => 'dolar kanadyjski',
'CDF' => 'frank kongijski',
'CHF' => 'frank szwajcarski',
'CLP' => 'peso chilijskie',
+ 'CNH' => 'juan chiński (rynek zewnętrzny)',
'CNY' => 'juan chiński',
'COP' => 'peso kolumbijskie',
'CRC' => 'colon kostarykański',
@@ -691,7 +701,7 @@ $currencyNames = array(
'ETB' => 'birr etiopski',
'EUR' => 'euro',
'FIM' => 'marka fińska',
- 'FJD' => 'dolar fidżi',
+ 'FJD' => 'dolar fidżyjski',
'FKP' => 'funt falklandzki',
'FRF' => 'frank francuski',
'GBP' => 'funt szterling',
@@ -757,12 +767,13 @@ $currencyNames = array(
'MMK' => 'kiat birmański',
'MNT' => 'tugrik mongolski',
'MOP' => 'pataca Makau',
- 'MRO' => 'ouguiya mauretańska',
+ 'MRO' => 'ouguiya mauretańska (1973–2017)',
+ 'MRU' => 'ouguiya mauretańska',
'MTL' => 'lira maltańska',
'MTP' => 'funt maltański',
'MUR' => 'rupia maurytyjska',
'MVR' => 'rupia malediwska',
- 'MWK' => 'kwacha malawska',
+ 'MWK' => 'kwacha malawijska',
'MXN' => 'peso meksykańskie',
'MXP' => 'peso srebrne meksykańskie (1861–1992)',
'MYR' => 'ringgit malezyjski',
@@ -780,8 +791,8 @@ $currencyNames = array(
'OMR' => 'rial omański',
'PAB' => 'balboa panamski',
'PEI' => 'inti peruwiański',
- 'PEN' => 'nowy sol peruwiański',
- 'PES' => 'sol peruwiański',
+ 'PEN' => 'sol peruwiański',
+ 'PES' => 'sol peruwiański (1863–1965)',
'PGK' => 'kina Papua Nowa Gwinea',
'PHP' => 'peso filipińskie',
'PKR' => 'rupia pakistańska',
@@ -813,7 +824,8 @@ $currencyNames = array(
'SRD' => 'dolar surinamski',
'SRG' => 'gulden surinamski',
'SSP' => 'funt południowosudański',
- 'STD' => 'dobra Wysp Świętego Tomasza i Książęcej',
+ 'STD' => 'dobra Wysp Świętego Tomasza i Książęcej (1977–2017)',
+ 'STN' => 'dobra Wysp Świętego Tomasza i Książęcej',
'SUR' => 'rubel radziecki',
'SVC' => 'colon salwadorski',
'SYP' => 'funt syryjski',
@@ -840,10 +852,11 @@ $currencyNames = array(
'UYU' => 'peso urugwajskie',
'UZS' => 'som uzbecki',
'VEB' => 'boliwar wenezuelski (1871–2008)',
- 'VEF' => 'boliwar wenezuelski',
+ 'VEF' => 'boliwar wenezuelski (2008–2018)',
+ 'VES' => 'boliwar wenezuelski',
'VND' => 'dong wietnamski',
- 'VUV' => 'vatu Vanuatu',
- 'WST' => 'tala samoańska',
+ 'VUV' => 'vatu wanuackie',
+ 'WST' => 'tala samoańskie',
'XAF' => 'frank CFA BEAC',
'XAG' => 'srebro',
'XAU' => 'złoto',
@@ -875,9 +888,9 @@ $currencyNames = array(
'ZWD' => 'dolar Zimbabwe (1980–2008)',
'ZWL' => 'dolar Zimbabwe (2009)',
'ZWR' => 'dolar Zimbabwe (2008)',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'AED' => 'AED',
'AFN' => 'AFN',
'ALL' => 'ALL',
@@ -891,6 +904,8 @@ $currencySymbols = array(
'BAM' => 'BAM',
'BBD' => 'BBD',
'BDT' => 'BDT',
+ 'BGL' => 'BGL',
+ 'BGM' => 'BGM',
'BGN' => 'BGN',
'BHD' => 'BHD',
'BIF' => 'BIF',
@@ -901,12 +916,14 @@ $currencySymbols = array(
'BSD' => 'BSD',
'BTN' => 'BTN',
'BWP' => 'BWP',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CAD',
'CDF' => 'CDF',
'CHF' => 'CHF',
'CLP' => 'CLP',
+ 'CNH' => 'CNH',
'CNY' => 'CNY',
'COP' => 'COP',
'CRC' => 'CRC',
@@ -970,6 +987,7 @@ $currencySymbols = array(
'MNT' => 'MNT',
'MOP' => 'MOP',
'MRO' => 'MRO',
+ 'MRU' => 'MRU',
'MUR' => 'MUR',
'MVR' => 'MVR',
'MWK' => 'MWK',
@@ -985,6 +1003,7 @@ $currencySymbols = array(
'OMR' => 'OMR',
'PAB' => 'PAB',
'PEN' => 'PEN',
+ 'PES' => 'PES',
'PGK' => 'PGK',
'PHP' => 'PHP',
'PKR' => 'PKR',
@@ -1007,6 +1026,7 @@ $currencySymbols = array(
'SRD' => 'SRD',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'STN',
'SYP' => 'SYP',
'SZL' => 'SZL',
'THB' => 'THB',
@@ -1024,6 +1044,7 @@ $currencySymbols = array(
'UYU' => 'UYU',
'UZS' => 'UZS',
'VEF' => 'VEF',
+ 'VES' => 'VES',
'VND' => 'VND',
'VUV' => 'VUV',
'WST' => 'WST',
@@ -1034,9 +1055,9 @@ $currencySymbols = array(
'YER' => 'YER',
'ZAR' => 'ZAR',
'ZMW' => 'ZMW',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'Wyspa Wniebowstąpienia',
'AD' => 'Andora',
'AE' => 'Zjednoczone Emiraty Arabskie',
@@ -1045,9 +1066,8 @@ $countryNames = array(
'AI' => 'Anguilla',
'AL' => 'Albania',
'AM' => 'Armenia',
- 'AN' => 'Antyle Holenderskie',
'AO' => 'Angola',
- 'AQ' => 'Antarktyka',
+ 'AQ' => 'Antarktyda',
'AR' => 'Argentyna',
'AS' => 'Samoa Amerykańskie',
'AT' => 'Austria',
@@ -1066,7 +1086,7 @@ $countryNames = array(
'BJ' => 'Benin',
'BL' => 'Saint-Barthélemy',
'BM' => 'Bermudy',
- 'BN' => 'Brunei Darussalam',
+ 'BN' => 'Brunei',
'BO' => 'Boliwia',
'BQ' => 'Niderlandy Karaibskie',
'BR' => 'Brazylia',
@@ -1088,7 +1108,7 @@ $countryNames = array(
'CM' => 'Kamerun',
'CN' => 'Chiny',
'CO' => 'Kolumbia',
- 'CP' => 'Clipperton',
+ 'CP' => 'Wyspa Clippertona',
'CR' => 'Kostaryka',
'CU' => 'Kuba',
'CV' => 'Republika Zielonego Przylądka',
@@ -1112,6 +1132,7 @@ $countryNames = array(
'ES' => 'Hiszpania',
'ET' => 'Etiopia',
'EU' => 'Unia Europejska',
+ 'EZ' => 'strefa euro',
'FI' => 'Finlandia',
'FJ' => 'Fidżi',
'FK' => 'Falklandy',
@@ -1119,7 +1140,7 @@ $countryNames = array(
'FO' => 'Wyspy Owcze',
'FR' => 'Francja',
'GA' => 'Gabon',
- 'GB' => 'GB',
+ 'GB' => 'Wlk. Bryt.',
'GD' => 'Grenada',
'GE' => 'Gruzja',
'GF' => 'Gujana Francuska',
@@ -1231,7 +1252,7 @@ $countryNames = array(
'PW' => 'Palau',
'PY' => 'Paragwaj',
'QA' => 'Katar',
- 'QO' => 'Oceania inne',
+ 'QO' => 'Oceania — wyspy dalekie',
'RE' => 'Reunion',
'RO' => 'Rumunia',
'RS' => 'Serbia',
@@ -1278,6 +1299,7 @@ $countryNames = array(
'UA' => 'Ukraina',
'UG' => 'Uganda',
'UM' => 'Dalekie Wyspy Mniejsze Stanów Zjednoczonych',
+ 'UN' => 'ONZ',
'US' => 'USA',
'UY' => 'Urugwaj',
'UZ' => 'Uzbekistan',
@@ -1296,9 +1318,13 @@ $countryNames = array(
'ZA' => 'Republika Południowej Afryki',
'ZM' => 'Zambia',
'ZW' => 'Zimbabwe',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-few' => '{0} wieki',
+ 'century-many' => '{0} wieków',
+ 'century-one' => '{0} wiek',
+ 'century-other' => '{0} wieku',
'day-few' => '{0} dni',
'day-future-few' => 'za {0} dni',
'day-future-many' => 'za {0} dni',
@@ -1327,6 +1353,30 @@ $timeUnits = array(
'day-short-past-many' => '{0} dni temu',
'day-short-past-one' => '{0} dzień temu',
'day-short-past-other' => '{0} dnia temu',
+ 'fri-future-few' => 'za {0} piątki',
+ 'fri-future-many' => 'za {0} piątków',
+ 'fri-future-one' => 'za {0} piątek',
+ 'fri-future-other' => 'za {0} piątku',
+ 'fri-narrow-future-few' => 'za {0} piątki',
+ 'fri-narrow-future-many' => 'za {0} piątków',
+ 'fri-narrow-future-one' => 'za {0} piątek',
+ 'fri-narrow-future-other' => 'za {0} piątku',
+ 'fri-narrow-past-few' => '{0} piątki temu',
+ 'fri-narrow-past-many' => '{0} piątków temu',
+ 'fri-narrow-past-one' => '{0} piątek temu',
+ 'fri-narrow-past-other' => '{0} piątku temu',
+ 'fri-past-few' => '{0} piątki temu',
+ 'fri-past-many' => '{0} piątków temu',
+ 'fri-past-one' => '{0} piątek temu',
+ 'fri-past-other' => '{0} piątku temu',
+ 'fri-short-future-few' => 'za {0} piątki',
+ 'fri-short-future-many' => 'za {0} piątków',
+ 'fri-short-future-one' => 'za {0} piątek',
+ 'fri-short-future-other' => 'za {0} piątku',
+ 'fri-short-past-few' => '{0} piątki temu',
+ 'fri-short-past-many' => '{0} piątków temu',
+ 'fri-short-past-one' => '{0} piątek temu',
+ 'fri-short-past-other' => '{0} piątku temu',
'hour-few' => '{0} godziny',
'hour-future-few' => 'za {0} godziny',
'hour-future-many' => 'za {0} godzin',
@@ -1342,7 +1392,7 @@ $timeUnits = array(
'hour-narrow-past-one' => '{0} g. temu',
'hour-narrow-past-other' => '{0} g. temu',
'hour-one' => '{0} godzina',
- 'hour-other' => '{0} godzin',
+ 'hour-other' => '{0} godziny',
'hour-past-few' => '{0} godziny temu',
'hour-past-many' => '{0} godzin temu',
'hour-past-one' => '{0} godzinę temu',
@@ -1391,20 +1441,44 @@ $timeUnits = array(
'minute-short-past-many' => '{0} min temu',
'minute-short-past-one' => '{0} min temu',
'minute-short-past-other' => '{0} min temu',
+ 'mon-future-few' => 'za {0} poniedziałki',
+ 'mon-future-many' => 'za {0} poniedziałków',
+ 'mon-future-one' => 'za {0} poniedziałek',
+ 'mon-future-other' => 'za {0} poniedziałku',
+ 'mon-narrow-future-few' => 'za {0} poniedziałki',
+ 'mon-narrow-future-many' => 'za {0} poniedziałków',
+ 'mon-narrow-future-one' => 'za {0} poniedziałek',
+ 'mon-narrow-future-other' => 'za {0} poniedziałku',
+ 'mon-narrow-past-few' => '{0} poniedziałki temu',
+ 'mon-narrow-past-many' => '{0} poniedziałków temu',
+ 'mon-narrow-past-one' => '{0} poniedziałek temu',
+ 'mon-narrow-past-other' => '{0} poniedziałku temu',
+ 'mon-past-few' => '{0} poniedziałki temu',
+ 'mon-past-many' => '{0} poniedziałków temu',
+ 'mon-past-one' => '{0} poniedziałek temu',
+ 'mon-past-other' => '{0} poniedziałku temu',
+ 'mon-short-future-few' => 'za {0} poniedziałki',
+ 'mon-short-future-many' => 'za {0} poniedziałków',
+ 'mon-short-future-one' => 'za {0} poniedziałek',
+ 'mon-short-future-other' => 'za {0} poniedziałku',
+ 'mon-short-past-few' => '{0} poniedziałki temu',
+ 'mon-short-past-many' => '{0} poniedziałków temu',
+ 'mon-short-past-one' => '{0} poniedziałek temu',
+ 'mon-short-past-other' => '{0} poniedziałku temu',
'month-few' => '{0} miesiące',
'month-future-few' => 'za {0} miesiące',
'month-future-many' => 'za {0} miesięcy',
'month-future-one' => 'za {0} miesiąc',
'month-future-other' => 'za {0} miesiąca',
'month-many' => '{0} miesięcy',
- 'month-narrow-future-few' => '+{0} mies.',
- 'month-narrow-future-many' => '+{0} mies.',
- 'month-narrow-future-one' => '+{0} mies.',
- 'month-narrow-future-other' => '+{0} mies.',
- 'month-narrow-past-few' => '–{0} mies.',
- 'month-narrow-past-many' => '–{0} mies.',
- 'month-narrow-past-one' => '–{0} mies.',
- 'month-narrow-past-other' => '–{0} mies.',
+ 'month-narrow-future-few' => 'za {0} mies.',
+ 'month-narrow-future-many' => 'za {0} mies.',
+ 'month-narrow-future-one' => 'za {0} mies.',
+ 'month-narrow-future-other' => 'za {0} mies.',
+ 'month-narrow-past-few' => '{0} mies. temu',
+ 'month-narrow-past-many' => '{0} mies. temu',
+ 'month-narrow-past-one' => '{0} mies. temu',
+ 'month-narrow-past-other' => '{0} mies. temu',
'month-one' => '{0} miesiąc',
'month-other' => '{0} miesiąca',
'month-past-few' => '{0} miesiące temu',
@@ -1427,14 +1501,14 @@ $timeUnits = array(
'quarter-future-many' => 'za {0} kwartałów',
'quarter-future-one' => 'za {0} kwartał',
'quarter-future-other' => 'za {0} kwartału',
- 'quarter-narrow-future-few' => '+{0} kw.',
- 'quarter-narrow-future-many' => '+{0} kw.',
- 'quarter-narrow-future-one' => '+{0} kw.',
- 'quarter-narrow-future-other' => '+{0} kw.',
- 'quarter-narrow-past-few' => '–{0} kw.',
- 'quarter-narrow-past-many' => '–{0} kw.',
- 'quarter-narrow-past-one' => '–{0} kw.',
- 'quarter-narrow-past-other' => '–{0} kw.',
+ 'quarter-narrow-future-few' => 'za {0} kw.',
+ 'quarter-narrow-future-many' => 'za {0} kw.',
+ 'quarter-narrow-future-one' => 'za {0} kw.',
+ 'quarter-narrow-future-other' => 'za {0} kw.',
+ 'quarter-narrow-past-few' => '{0} kw. temu',
+ 'quarter-narrow-past-many' => '{0} kw. temu',
+ 'quarter-narrow-past-one' => '{0} kw. temu',
+ 'quarter-narrow-past-other' => '{0} kw. temu',
'quarter-past-few' => '{0} kwartały temu',
'quarter-past-many' => '{0} kwartałów temu',
'quarter-past-one' => '{0} kwartał temu',
@@ -1447,6 +1521,30 @@ $timeUnits = array(
'quarter-short-past-many' => '{0} kw. temu',
'quarter-short-past-one' => '{0} kw. temu',
'quarter-short-past-other' => '{0} kw. temu',
+ 'sat-future-few' => 'za {0} soboty',
+ 'sat-future-many' => 'za {0} sobót',
+ 'sat-future-one' => 'za {0} sobotę',
+ 'sat-future-other' => 'za {0} soboty',
+ 'sat-narrow-future-few' => 'za {0} soboty',
+ 'sat-narrow-future-many' => 'za {0} sobót',
+ 'sat-narrow-future-one' => 'za {0} sobotę',
+ 'sat-narrow-future-other' => 'za {0} soboty',
+ 'sat-narrow-past-few' => '{0} soboty temu',
+ 'sat-narrow-past-many' => '{0} sobót temu',
+ 'sat-narrow-past-one' => '{0} sobotę temu',
+ 'sat-narrow-past-other' => '{0} soboty temu',
+ 'sat-past-few' => '{0} soboty temu',
+ 'sat-past-many' => '{0} sobót temu',
+ 'sat-past-one' => '{0} sobotę temu',
+ 'sat-past-other' => '{0} soboty temu',
+ 'sat-short-future-few' => 'za {0} soboty',
+ 'sat-short-future-many' => 'za {0} sobót',
+ 'sat-short-future-one' => 'za {0} sobotę',
+ 'sat-short-future-other' => 'za {0} soboty',
+ 'sat-short-past-few' => '{0} soboty temu',
+ 'sat-short-past-many' => '{0} sobót temu',
+ 'sat-short-past-one' => '{0} sobotę temu',
+ 'sat-short-past-other' => '{0} soboty temu',
'second-few' => '{0} sekundy',
'second-future-few' => 'za {0} sekundy',
'second-future-many' => 'za {0} sekund',
@@ -1475,6 +1573,102 @@ $timeUnits = array(
'second-short-past-many' => '{0} sek. temu',
'second-short-past-one' => '{0} sek. temu',
'second-short-past-other' => '{0} sek. temu',
+ 'sun-future-few' => 'za {0} niedziele',
+ 'sun-future-many' => 'za {0} niedziel',
+ 'sun-future-one' => 'za {0} niedzielę',
+ 'sun-future-other' => 'za {0} niedzieli',
+ 'sun-narrow-future-few' => 'za {0} niedziele',
+ 'sun-narrow-future-many' => 'za {0} niedziel',
+ 'sun-narrow-future-one' => 'za {0} niedzielę',
+ 'sun-narrow-future-other' => 'za {0} niedzieli',
+ 'sun-narrow-past-few' => '{0} niedziele temu',
+ 'sun-narrow-past-many' => '{0} niedziel temu',
+ 'sun-narrow-past-one' => '{0} niedzielę temu',
+ 'sun-narrow-past-other' => '{0} niedzieli temu',
+ 'sun-past-few' => '{0} niedziele temu',
+ 'sun-past-many' => '{0} niedziel temu',
+ 'sun-past-one' => '{0} niedzielę temu',
+ 'sun-past-other' => '{0} niedzieli temu',
+ 'sun-short-future-few' => 'za {0} niedziele',
+ 'sun-short-future-many' => 'za {0} niedziel',
+ 'sun-short-future-one' => 'za {0} niedzielę',
+ 'sun-short-future-other' => 'za {0} niedzieli',
+ 'sun-short-past-few' => '{0} niedziele temu',
+ 'sun-short-past-many' => '{0} niedziel temu',
+ 'sun-short-past-one' => '{0} niedzielę temu',
+ 'sun-short-past-other' => '{0} niedzieli temu',
+ 'thu-future-few' => 'za {0} czwartki',
+ 'thu-future-many' => 'za {0} czwartków',
+ 'thu-future-one' => 'za {0} czwartek',
+ 'thu-future-other' => 'za {0} czwartku',
+ 'thu-narrow-future-few' => 'za {0} czwartki',
+ 'thu-narrow-future-many' => 'za {0} czwartków',
+ 'thu-narrow-future-one' => 'za {0} czwartek',
+ 'thu-narrow-future-other' => 'za {0} czwartku',
+ 'thu-narrow-past-few' => '{0} czwartki temu',
+ 'thu-narrow-past-many' => '{0} czwartków temu',
+ 'thu-narrow-past-one' => '{0} czwartek temu',
+ 'thu-narrow-past-other' => '{0} czwartku temu',
+ 'thu-past-few' => '{0} czwartki temu',
+ 'thu-past-many' => '{0} czwartków temu',
+ 'thu-past-one' => '{0} czwartek temu',
+ 'thu-past-other' => '{0} czwartku temu',
+ 'thu-short-future-few' => 'za {0} czwartki',
+ 'thu-short-future-many' => 'za {0} czwartków',
+ 'thu-short-future-one' => 'za {0} czwartek',
+ 'thu-short-future-other' => 'za {0} czwartku',
+ 'thu-short-past-few' => '{0} czwartki temu',
+ 'thu-short-past-many' => '{0} czwartków temu',
+ 'thu-short-past-one' => '{0} czwartek temu',
+ 'thu-short-past-other' => '{0} czwartku temu',
+ 'tue-future-few' => 'za {0} wtorki',
+ 'tue-future-many' => 'za {0} wtorków',
+ 'tue-future-one' => 'za {0} wtorek',
+ 'tue-future-other' => 'za {0} wtorku',
+ 'tue-narrow-future-few' => 'za {0} wtorki',
+ 'tue-narrow-future-many' => 'za {0} wtorków',
+ 'tue-narrow-future-one' => 'za {0} wtorek',
+ 'tue-narrow-future-other' => 'za {0} wtorku',
+ 'tue-narrow-past-few' => '{0} wtorki temu',
+ 'tue-narrow-past-many' => '{0} wtorków temu',
+ 'tue-narrow-past-one' => '{0} wtorek temu',
+ 'tue-narrow-past-other' => '{0} wtorku temu',
+ 'tue-past-few' => '{0} wtorki temu',
+ 'tue-past-many' => '{0} wtorków temu',
+ 'tue-past-one' => '{0} wtorek temu',
+ 'tue-past-other' => '{0} wtorku temu',
+ 'tue-short-future-few' => 'za {0} wtorki',
+ 'tue-short-future-many' => 'za {0} wtorków',
+ 'tue-short-future-one' => 'za {0} wtorek',
+ 'tue-short-future-other' => 'za {0} wtorku',
+ 'tue-short-past-few' => '{0} wtorki temu',
+ 'tue-short-past-many' => '{0} wtorków temu',
+ 'tue-short-past-one' => '{0} wtorek temu',
+ 'tue-short-past-other' => '{0} wtorku temu',
+ 'wed-future-few' => 'za {0} środy',
+ 'wed-future-many' => 'za {0} śród',
+ 'wed-future-one' => 'za {0} środę',
+ 'wed-future-other' => 'za {0} środy',
+ 'wed-narrow-future-few' => 'za {0} środy',
+ 'wed-narrow-future-many' => 'za {0} śród',
+ 'wed-narrow-future-one' => 'za {0} środę',
+ 'wed-narrow-future-other' => 'za {0} środy',
+ 'wed-narrow-past-few' => '{0} środy temu',
+ 'wed-narrow-past-many' => '{0} śród temu',
+ 'wed-narrow-past-one' => '{0} środę temu',
+ 'wed-narrow-past-other' => '{0} środy temu',
+ 'wed-past-few' => '{0} środy temu',
+ 'wed-past-many' => '{0} śród temu',
+ 'wed-past-one' => '{0} środę temu',
+ 'wed-past-other' => '{0} środy temu',
+ 'wed-short-future-few' => 'za {0} środy',
+ 'wed-short-future-many' => 'za {0} śród',
+ 'wed-short-future-one' => 'za {0} środę',
+ 'wed-short-future-other' => 'za {0} środy',
+ 'wed-short-past-few' => '{0} środy temu',
+ 'wed-short-past-many' => '{0} śród temu',
+ 'wed-short-past-one' => '{0} środę temu',
+ 'wed-short-past-other' => '{0} środy temu',
'week-few' => '{0} tygodnie',
'week-future-few' => 'za {0} tygodnie',
'week-future-many' => 'za {0} tygodni',
@@ -1531,4 +1725,4 @@ $timeUnits = array(
'year-short-past-many' => '{0} lat temu',
'year-short-past-one' => '{0} rok temu',
'year-short-past-other' => '{0} roku temu',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesPs.php b/MLEB/cldr/CldrNames/CldrNamesPs.php
index 5a32d523..e768bdb8 100644
--- a/MLEB/cldr/CldrNames/CldrNamesPs.php
+++ b/MLEB/cldr/CldrNames/CldrNamesPs.php
@@ -1,186 +1,1186 @@
<?php
-$languageNames = array(
- 'af' => 'افريکاني',
+$languageNames = [
+ 'aa' => 'افري',
+ 'ab' => 'ابخازي',
+ 'ace' => 'اچيني',
+ 'ada' => 'ادانگمي',
+ 'ady' => 'اديغي',
+ 'af' => 'افریکانسي',
+ 'agq' => 'اغیمي',
+ 'ain' => 'اينويي',
+ 'ak' => 'اکاني',
+ 'ale' => 'اليوتي',
+ 'alt' => 'سویل الټای',
'am' => 'امهاري',
+ 'an' => 'اراگونېسي',
+ 'anp' => 'انگيکي',
'ar' => 'عربي',
- 'as' => 'اسمائى ژبه',
- 'az' => 'أذربائجاني',
+ 'ar-001' => 'نوې معياري عربي',
+ 'arn' => 'ماپوچه',
+ 'arp' => 'اراپاهوي',
+ 'as' => 'اسامي',
+ 'asa' => 'اسويي',
+ 'ast' => 'استورياني',
+ 'av' => 'اواري',
+ 'awa' => 'اوادي',
+ 'ay' => 'ایماري',
+ 'az' => 'اذربایجاني',
+ 'ba' => 'باشکير',
'bal' => 'بلوڅي',
+ 'ban' => 'بالنی',
+ 'bas' => 'باسا',
'be' => 'بېلاروسي',
+ 'bem' => 'بیبا',
+ 'bez' => 'بينا',
'bg' => 'بلغاري',
- 'bn' => 'بنګالي',
+ 'bho' => 'بهوجپوري',
+ 'bi' => 'بسلاما',
+ 'bin' => 'بینی',
+ 'bla' => 'سکسيکا',
+ 'bm' => 'بامره',
+ 'bn' => 'بنگالي',
+ 'bo' => 'تبتي',
'br' => 'برېتون',
+ 'brx' => 'بودو',
'bs' => 'بوسني',
+ 'bug' => 'بگنيايي',
+ 'byn' => 'بلین',
'ca' => 'کټلاني',
- 'cs' => 'چېک',
+ 'ce' => 'چيچيني',
+ 'ceb' => 'سیبوانوي',
+ 'cgg' => 'چيگايي',
+ 'ch' => 'چمورو',
+ 'chk' => 'چواوکي',
+ 'chm' => 'ماري',
+ 'cho' => 'چوکټاوي',
+ 'chr' => 'چېروکي',
+ 'chy' => 'شيني',
+ 'ckb' => 'منځنۍ کوردي',
+ 'co' => 'کورسيکاني',
+ 'crs' => 'سسيلوا ڪروئل فرانسوي',
+ 'cs' => 'چېکي',
+ 'cu' => 'د کليسا سلاوي',
+ 'cv' => 'چوواشي',
'cy' => 'ويلشي',
- 'da' => 'ډېنش',
+ 'da' => 'دانمارکي',
+ 'dak' => 'داکوتا',
+ 'dar' => 'درگوا',
+ 'dav' => 'ټایټا',
'de' => 'الماني',
+ 'de-ch' => 'سوئس لوی جرمن',
+ 'dgr' => 'داگرب',
+ 'dje' => 'زرما',
+ 'dsb' => 'لوړې سربي',
+ 'dua' => 'دوالا',
+ 'dv' => 'ديویهی',
+ 'dyo' => 'جولا فوني',
+ 'dz' => 'ژونگکه',
+ 'dzg' => 'ډزاګا',
+ 'ebu' => 'ایمو',
+ 'ee' => 'ايو',
+ 'efi' => 'افک',
+ 'eka' => 'اکجک',
'el' => 'یوناني',
- 'en' => 'انګلیسي',
+ 'en' => 'انګریزي',
+ 'en-au' => 'انګليسي (AU)',
+ 'en-ca' => 'کاناډايي انګلیسي',
+ 'en-gb' => 'بريتانوی انګلیسي',
+ 'en-us' => 'انګليسي (US)',
'eo' => 'اسپرانتو',
'es' => 'هسپانوي',
+ 'es-419' => 'لاتيني امريکايي هسپانوي',
+ 'es-es' => 'اروپايي هسپانوي',
+ 'es-mx' => 'ميکسيکو هسپانوي',
'et' => 'حبشي',
'eu' => 'باسکي',
+ 'ewo' => 'اوونڊو',
'fa' => 'فارسي',
+ 'ff' => 'فلاحہ',
'fi' => 'فینلنډي',
- 'fil' => 'تګالوګ',
+ 'fil' => 'فلیپیني',
+ 'fj' => 'فجیان',
'fo' => 'فاروئې',
+ 'fon' => 'فان',
'fr' => 'فرانسوي',
+ 'fur' => 'فرائیلیین',
'fy' => 'فريزي',
'ga' => 'ائيرلېنډي',
+ 'gaa' => 'gaa',
'gd' => 'سکاټلېنډي ګېلک',
+ 'gez' => 'ګیز',
+ 'gil' => 'گلبرتي',
'gl' => 'ګلېشيايي',
'gn' => 'ګوراني',
+ 'gor' => 'ګورن ټالو',
+ 'gsw' => 'سویس جرمن',
'gu' => 'ګجراتي',
+ 'guz' => 'ګوسي',
+ 'gv' => 'مینکس',
+ 'gwi' => 'ګیچین',
+ 'ha' => 'هوسا',
+ 'haw' => 'هوایی',
'he' => 'عبري',
'hi' => 'هندي',
- 'hr' => 'کروواتي',
- 'hu' => 'هنګري',
+ 'hil' => 'ھلیګینون',
+ 'hmn' => 'همونګ',
+ 'hr' => 'کروواسي',
+ 'hsb' => 'پورته صربي',
+ 'ht' => 'هيٽي کرولي',
+ 'hu' => 'هنگري',
+ 'hup' => 'ھوپا',
'hy' => 'ارمني',
+ 'hz' => 'هیرورو',
'ia' => 'انټرلنګوا',
- 'id' => 'انډونېشيايي',
+ 'iba' => 'ابن',
+ 'ibb' => 'ابیبیو',
+ 'id' => 'انډونېزي',
'ie' => 'آسا نا جبة',
- 'is' => 'أيسلېنډي',
+ 'ig' => 'اګبو',
+ 'ii' => 'سیچیان یی',
+ 'ilo' => 'الوکو',
+ 'inh' => 'انگش',
+ 'io' => 'اڊو',
+ 'is' => 'ايسلنډي',
'it' => 'ایټالوي',
- 'ja' => 'جاپانی',
- 'jv' => 'جاوايې',
+ 'iu' => 'انوکتیتوت',
+ 'ja' => 'جاپاني',
+ 'jbo' => 'لوجبان',
+ 'jgo' => 'نګبا',
+ 'jmc' => 'ماچمی',
+ 'jv' => 'جاوايي',
'ka' => 'جورجيائي',
- 'km' => 'کمبوډيايې يا د کمبوډيا',
+ 'kab' => 'کیبیل',
+ 'kac' => 'کاچین',
+ 'kaj' => 'ججو',
+ 'kam' => 'کامبا',
+ 'kbd' => 'کابیرین',
+ 'kcg' => 'تایپ',
+ 'kde' => 'ماکډون',
+ 'kea' => 'کابوورډیانو',
+ 'kfo' => 'کورو',
+ 'kha' => 'خاسې',
+ 'khq' => 'کویرا چینی',
+ 'ki' => 'ککوؤو',
+ 'kj' => 'کواناما',
+ 'kk' => 'قازق',
+ 'kkj' => 'کاکو',
+ 'kl' => 'کلالیسٹ',
+ 'kln' => 'کلینجن',
+ 'km' => 'خمر',
+ 'kmb' => 'کیمبوندو',
'kn' => 'کنأډه',
- 'ko' => 'کوريائي',
+ 'ko' => 'کوریایی',
+ 'kok' => 'کنکني',
+ 'kpe' => 'کیلي',
+ 'kr' => 'کنوری',
+ 'krc' => 'کراچی بالکر',
+ 'krl' => 'کاریلین',
+ 'kru' => 'کورخ',
+ 'ks' => 'کشمیري',
+ 'ksb' => 'شمبلا',
+ 'ksf' => 'بفیا',
+ 'ksh' => 'کولوگنيسي',
'ku' => 'کردي',
+ 'kum' => 'کومک',
+ 'kv' => 'کومی',
+ 'kw' => 'کرونيشي',
'ky' => 'کرګيز',
'la' => 'لاتیني',
- 'lo' => 'لويتين',
+ 'lad' => 'لاډینو',
+ 'lag' => 'لنګی',
+ 'lb' => 'لوګزامبورګي',
+ 'lez' => 'لیګغیان',
+ 'lg' => 'ګانده',
+ 'li' => 'لمبرگیانی',
+ 'lkt' => 'لکټو',
+ 'ln' => 'لنگلا',
+ 'lo' => 'لاو',
+ 'loz' => 'لوزی',
+ 'lrc' => 'شمالي لوری',
'lt' => 'ليتواني',
+ 'lu' => 'لوبا-کټنګا',
+ 'lua' => 'لبا لولوا',
+ 'lun' => 'لندا',
+ 'luo' => 'لو',
+ 'lus' => 'ميزو',
+ 'luy' => 'لویا',
'lv' => 'لېټواني',
+ 'mad' => 'مدراسی',
+ 'mag' => 'مګهي',
+ 'mai' => 'مایتھلي',
+ 'mak' => 'مکاسار',
+ 'mas' => 'ماسائي',
+ 'mdf' => 'موکشا',
+ 'men' => 'مینڊي',
+ 'mer' => 'ميرو',
+ 'mfe' => 'ماریسیسن',
'mg' => 'ملغاسي',
+ 'mgh' => 'مکھوامیتو',
+ 'mgo' => 'ميټا',
+ 'mh' => 'مارشلیز',
+ 'mi' => 'ماوري',
+ 'mic' => 'ممکق',
+ 'min' => 'مينيگاباو',
'mk' => 'مقدوني',
'ml' => 'مالايالم',
- 'mn' => 'مغولي',
+ 'mn' => 'منګولیایی',
+ 'mni' => 'مانی پوری',
+ 'moh' => 'محاواک',
+ 'mos' => 'ماسي',
'mr' => 'مراټهي',
'ms' => 'ملایا',
'mt' => 'مالټايي',
+ 'mua' => 'مندانګ',
+ 'mul' => 'څو ژبو',
+ 'mus' => 'کريکي',
+ 'mwl' => 'مرانديز',
+ 'my' => 'برمایی',
+ 'myv' => 'ارزيا',
+ 'mzn' => 'مزاندراني',
+ 'na' => 'نایرو',
+ 'nap' => 'نيپالين',
+ 'naq' => 'ناما',
+ 'nb' => 'ناروې بوکمال',
+ 'nd' => 'شمالي نديبل',
'ne' => 'نېپالي',
+ 'new' => 'نيواري',
+ 'ng' => 'ندونگا',
+ 'nia' => 'نياس',
+ 'niu' => 'نیان',
'nl' => 'هالېنډي',
+ 'nl-be' => 'فلېمېشي',
+ 'nmg' => 'کواسیو',
'nn' => 'ناروېئي (نائنورسک)',
+ 'nnh' => 'نایجیمون',
'no' => 'ناروېئې',
+ 'nog' => 'نوګی',
+ 'nqo' => 'نکو',
+ 'nr' => 'سويلي نديبيل',
+ 'nso' => 'شمالي سوتو',
+ 'nus' => 'نویر',
+ 'nv' => 'نواجو',
+ 'ny' => 'نیانجا',
+ 'nyn' => 'نینکول',
'oc' => 'اوکسيټاني',
- 'or' => 'اوريا',
+ 'om' => 'اورومو',
+ 'or' => 'اوڊيا',
+ 'os' => 'اوسیٹک',
'pa' => 'پنجابي',
+ 'pag' => 'پانګاسین',
+ 'pam' => 'پمپانگا',
+ 'pap' => 'پاپيامينتو',
+ 'pau' => 'پالان',
+ 'pcm' => 'نائجیریا پیدجن',
'pl' => 'پولنډي',
+ 'prg' => 'پروشين',
'ps' => 'پښتو',
'pt' => 'پورتګالي',
- 'pt-br' => 'پرتگال (برازيل)',
- 'pt-pt' => 'پرتګالي (پرتګال)',
- 'ro' => 'روماني',
+ 'pt-br' => 'برازیلي پرتګالي',
+ 'pt-pt' => 'اروپايي پرتګالي',
+ 'qu' => 'کېچوا',
+ 'quc' => 'کچی',
+ 'rap' => 'رپانوئي',
+ 'rar' => 'راروټانګان',
+ 'rm' => 'رومانیش',
+ 'rn' => 'رونډی',
+ 'ro' => 'رومانیایی',
+ 'ro-md' => 'مولداویایی',
+ 'rof' => 'رومبو',
'ru' => 'روسي',
+ 'rup' => 'اروماني',
+ 'rw' => 'کینیارونډا',
+ 'rwk' => 'Rwa',
'sa' => 'سنسکریټ',
+ 'sad' => 'سنډاوی',
+ 'sah' => 'سخا',
+ 'saq' => 'سمبورو',
+ 'sat' => 'سنتالي',
+ 'sba' => 'نګبای',
+ 'sbp' => 'سانګوو',
+ 'sc' => 'سارڊيني',
+ 'scn' => 'سیلیسي',
+ 'sco' => 'سکاټس',
'sd' => 'سندهي',
+ 'se' => 'شمالي سامي',
+ 'seh' => 'سینا',
+ 'ses' => 'کوییرابورو سینی',
+ 'sg' => 'سانګو',
'sh' => 'سرب-کروشيايي',
+ 'shi' => 'تاکلهیټ',
+ 'shn' => 'شان',
'si' => 'سينهالي',
'sk' => 'سلوواکي',
'sl' => 'سلوواني',
+ 'sm' => 'ساموآن',
+ 'sma' => 'سویلي سامی',
+ 'smj' => 'لول سامي',
+ 'smn' => 'اناري سميع',
+ 'sms' => 'سکولټ سمیع',
+ 'sn' => 'شونا',
+ 'snk' => 'سونینګ',
'so' => 'سومالي',
'sq' => 'الباني',
'sr' => 'سربيائي',
+ 'srn' => 'سوران ټونګو',
+ 'ss' => 'سواتی',
+ 'ssy' => 'سهو',
'st' => 'سيسوتو',
'su' => 'سوډاني',
+ 'suk' => 'سکوما',
'sv' => 'سویډنی',
'sw' => 'سواهېلي',
- 'ta' => 'تامل',
+ 'sw-cd' => 'کانګو سواهلی',
+ 'swb' => 'کومورياني',
+ 'syr' => 'سوریاني',
+ 'ta' => 'تامیل',
'te' => 'تېليګو',
- 'tg' => 'تاجک',
+ 'tem' => 'تیمني',
+ 'teo' => 'تیسو',
+ 'tet' => 'تتوم',
+ 'tg' => 'تاجکي',
'th' => 'تايلېنډي',
'ti' => 'تيګريني',
+ 'tig' => 'تیګر',
'tk' => 'ترکمني',
'tlh' => 'کلينګاني',
+ 'tn' => 'سووانا',
+ 'to' => 'تونګان',
+ 'tpi' => 'توک پیسین',
'tr' => 'ترکي',
+ 'trv' => 'تاروکو',
+ 'ts' => 'سونګا',
'tt' => 'تاتار',
+ 'tum' => 'تامبوکا',
+ 'tvl' => 'تووالو',
'tw' => 'توی',
- 'ug' => 'اويگور',
+ 'twq' => 'تساواق',
+ 'ty' => 'تاهیتي',
+ 'tyv' => 'توینیان',
+ 'tzm' => 'مرکزی اطلس تمازائيٹ',
+ 'udm' => 'ادمورت',
+ 'ug' => 'اويغوري',
'uk' => 'اوکرانايي',
+ 'umb' => 'امبوندو',
+ 'und' => 'نامعلومه ژبه',
'ur' => 'اردو',
- 'uz' => 'ازبکي',
+ 'uz' => 'اوزبکي',
+ 'vai' => 'وای',
+ 've' => 'ویندا',
'vi' => 'وېتنامي',
+ 'vo' => 'والاپوک',
+ 'vun' => 'وونجو',
+ 'wa' => 'والون',
+ 'wae' => 'ولسیر',
+ 'wal' => 'ولایټا',
+ 'war' => 'وارۍ',
+ 'wo' => 'ولوف',
+ 'xal' => 'کالمک',
'xh' => 'خوسا',
+ 'xog' => 'سوګا',
+ 'yav' => 'ینګبین',
+ 'ybb' => 'یمبا',
'yi' => 'يديش',
+ 'yo' => 'یوروبا',
+ 'yue' => 'کانټوني',
+ 'zgh' => 'معياري مراکش تمازټیټ',
'zh' => 'چیني',
+ 'zh-hans' => 'ساده چيني',
+ 'zh-hant' => 'دوديزه چيني',
'zu' => 'زولو',
-);
+ 'zun' => 'زوني',
+ 'zxx' => 'نه ژبني منځپانګه',
+ 'zza' => 'زازا',
+];
-$currencyNames = array(
+$currencyNames = [
+ 'AED' => 'AED',
+ 'AFA' => 'افغانۍ (1927–2002)',
'AFN' => 'افغانۍ',
-);
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => 'AUD',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => 'BRL',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYN' => 'BYN',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CAD',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNH' => 'CNH',
+ 'CNY' => 'CNY',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
+ 'EUR' => 'EUR',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GBP' => 'GBP',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HKD',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'ILS' => 'ILS',
+ 'INR' => 'INR',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => 'JPY',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => 'KRW',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MRU' => 'MRU',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MXN',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'نيپالي روپيه',
+ 'NZD' => 'NZD',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'پاکستانۍ کلداره',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'STN' => 'STN',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => 'THB',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'TWD',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
+ 'USD' => 'USD',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF (2008–2018)',
+ 'VES' => 'VES',
+ 'VND' => 'VND',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'XAF',
+ 'XCD' => 'XCD',
+ 'XOF' => 'XOF',
+ 'XPF' => 'XPF',
+ 'XXX' => 'نامعلومه مروجه پېسې',
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+];
-$currencySymbols = array(
+$currencySymbols = [
+ 'AED' => 'AED',
'AFN' => '؋',
-);
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => 'A$',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => 'R$',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYN' => 'BYN',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CA$',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNH' => 'CNH',
+ 'CNY' => 'CN¥',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GBP' => '£',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => 'JP¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MRU' => 'MRU',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MX$',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZ$',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'STN' => 'STN',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => 'THB',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
+ 'USD' => 'US$',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VES' => 'VES',
+ 'VND' => '₫',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'EC$',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+];
-$countryNames = array(
+$countryNames = [
+ 'AC' => 'اسينشان ټاپو',
+ 'AD' => 'اندورا',
+ 'AE' => 'متحده عرب امارات',
'AF' => 'افغانستان',
+ 'AG' => 'انټيګوا او باربودا',
+ 'AI' => 'انګیلا',
'AL' => 'البانیه',
+ 'AM' => 'ارمنستان',
'AO' => 'انګولا',
'AQ' => 'انتارکتیکا',
+ 'AR' => 'ارجنټاين',
+ 'AS' => 'امریکایی سمو',
'AT' => 'اتریش',
- 'BD' => 'بنګله‌دیش',
+ 'AU' => 'آسټرالیا',
+ 'AW' => 'آروبا',
+ 'AX' => 'الاند ټاپوان',
+ 'AZ' => 'اذربايجان',
+ 'BA' => 'بوسنيا او هېرزګوينا',
+ 'BB' => 'باربادوس',
+ 'BD' => 'بنگله دېش',
+ 'BE' => 'بیلجیم',
+ 'BF' => 'بورکینا فاسو',
'BG' => 'بلغاریه',
+ 'BH' => 'بحرين',
+ 'BI' => 'بروندي',
+ 'BJ' => 'بینن',
+ 'BL' => 'سينټ بارتيلمي',
+ 'BM' => 'برمودا',
+ 'BN' => 'برونائي',
+ 'BO' => 'بولیویا',
+ 'BQ' => 'کیریبین هالینډ',
+ 'BR' => 'برازیل',
+ 'BS' => 'باهماس',
+ 'BT' => 'بهوټان',
+ 'BV' => 'بوویټ ټاپو',
+ 'BW' => 'بوتسوانه',
+ 'BY' => 'بیلاروس',
+ 'BZ' => 'بلیز',
'CA' => 'کاناډا',
+ 'CC' => 'کوکوز (کيلنګ) ټاپوګان',
+ 'CD' => 'کانګو - کینشاسا',
+ 'CF' => 'وسطي افريقا جمهور',
+ 'CG' => 'کانګو - بروزوییل',
'CH' => 'سویس',
+ 'CI' => 'د عاج ساحل',
+ 'CK' => 'کوک ټاپوګان',
+ 'CL' => 'چیلي',
+ 'CM' => 'کامرون',
'CN' => 'چین',
'CO' => 'کولمبیا',
+ 'CP' => 'د کلپرټون ټاپو',
+ 'CR' => 'کوستاریکا',
'CU' => 'کیوبا',
+ 'CV' => 'کیپ ورد',
+ 'CW' => 'کوراکاو',
+ 'CX' => 'د کريسمس ټاپو',
+ 'CY' => 'قبرس',
+ 'CZ' => 'چکیا',
'DE' => 'المان',
+ 'DG' => 'ډایګو ګارسیا',
+ 'DJ' => 'جبوتي',
'DK' => 'ډنمارک',
+ 'DM' => 'دومینیکا',
+ 'DO' => 'جمهوريه ډومينيکن',
'DZ' => 'الجزایر',
+ 'EA' => 'سيوتا او ماليلا',
+ 'EC' => 'اکوادور',
+ 'EE' => 'استونیا',
'EG' => 'مصر',
+ 'EH' => 'لويديځ صحارا',
+ 'ER' => 'اریتره',
'ES' => 'هسپانیه',
'ET' => 'حبشه',
+ 'EU' => 'اروپايي اتحاديه',
+ 'EZ' => 'اروپايي سيمه',
'FI' => 'فنلینډ',
+ 'FJ' => 'فجي',
+ 'FK' => 'فاکلينډ ټاپوګان',
+ 'FM' => 'میکرونیزیا',
+ 'FO' => 'فارو ټاپو',
'FR' => 'فرانسه',
- 'GB' => 'برتانیه',
+ 'GA' => 'ګابن',
+ 'GB' => 'انګلستان',
+ 'GD' => 'ګرنادا',
+ 'GE' => 'گورجستان',
+ 'GF' => 'فرانسوي ګانا',
+ 'GG' => 'ګرنسي',
'GH' => 'ګانا',
- 'GN' => 'ګیانا',
+ 'GI' => 'جبل الطارق',
+ 'GL' => 'ګرینلینډ',
+ 'GM' => 'ګامبیا',
+ 'GN' => 'ګینه',
+ 'GP' => 'ګالډیپ',
+ 'GQ' => 'استوایی ګینه',
'GR' => 'یونان',
+ 'GS' => 'سويلي جارجيا او سويلي سېنډوچ ټاپوګان',
'GT' => 'ګواتیمالا',
+ 'GU' => 'ګوام',
+ 'GW' => 'ګینه بیسو',
+ 'GY' => 'ګیانا',
+ 'HK' => 'هانګ کانګ',
+ 'HM' => 'هارډ او ميکډانلډ ټاپوګان',
'HN' => 'هانډوراس',
+ 'HR' => 'کرواشيا',
+ 'HT' => 'هایټي',
'HU' => 'مجارستان',
+ 'IC' => 'د کناري ټاپوګان',
'ID' => 'اندونیزیا',
+ 'IE' => 'ایرلینډ',
+ 'IL' => 'اسراييل',
+ 'IM' => 'د آئل آف مین',
'IN' => 'هند',
+ 'IO' => 'د بريتانوي هند سمندري سيمه',
'IQ' => 'عراق',
+ 'IR' => 'ايران',
'IS' => 'آیسلینډ',
'IT' => 'ایټالیه',
+ 'JE' => 'جرسی',
'JM' => 'جمیکا',
+ 'JO' => 'اردن',
'JP' => 'جاپان',
+ 'KE' => 'کینیا',
+ 'KG' => 'قرغزستان',
'KH' => 'کمبودیا',
+ 'KI' => 'کیري باتي',
+ 'KM' => 'کوموروس',
+ 'KN' => 'سینټ کټس او نیویس',
+ 'KP' => 'شمالی کوریا',
+ 'KR' => 'سویلي کوریا',
'KW' => 'کویټ',
+ 'KY' => 'کیمان ټاپوګان',
+ 'KZ' => 'قزاقستان',
'LA' => 'لاوس',
'LB' => 'لبنان',
+ 'LC' => 'سینټ لوسیا',
+ 'LI' => 'لیختن اشتاین',
+ 'LK' => 'سريلنکا',
'LR' => 'لایبریا',
+ 'LS' => 'لسوتو',
+ 'LT' => 'لیتوانیا',
+ 'LU' => 'لوګزامبورګ',
+ 'LV' => 'ليتهويا',
'LY' => 'لیبیا',
'MA' => 'مراکش',
+ 'MC' => 'موناکو',
+ 'MD' => 'مولدوا',
+ 'ME' => 'مونټینیګرو',
+ 'MF' => 'سینټ مارټن',
+ 'MG' => 'مدګاسکار',
+ 'MH' => 'مارشل ټاپوګان',
+ 'MK' => 'مقدونیه',
+ 'ML' => 'مالي',
+ 'MM' => 'ميانمار (برما)',
'MN' => 'مغولستان',
+ 'MO' => 'مکاو',
+ 'MP' => 'شمالي ماريانا ټاپوګان',
+ 'MQ' => 'مارټینیک',
+ 'MR' => 'موریتانیا',
+ 'MS' => 'مانټیسیرت',
+ 'MT' => 'مالتا',
+ 'MU' => 'موریشیس',
+ 'MV' => 'مالديپ',
+ 'MW' => 'مالاوي',
+ 'MX' => 'میکسیکو',
'MY' => 'مالیزیا',
+ 'MZ' => 'موزمبيق',
+ 'NA' => 'نیمبیا',
+ 'NC' => 'نوی کالیډونیا',
+ 'NE' => 'نیجر',
+ 'NF' => 'نارفولک ټاپوګان',
'NG' => 'نایجیریا',
'NI' => 'نکاراګوا',
'NL' => 'هالېنډ',
- 'NO' => 'ناروې',
+ 'NO' => 'ناروۍ',
'NP' => 'نیپال',
+ 'NR' => 'نایرو',
+ 'NU' => 'نیوو',
'NZ' => 'نیوزیلنډ',
+ 'OM' => 'عمان',
+ 'PA' => 'پاناما',
+ 'PE' => 'پیرو',
+ 'PF' => 'فرانسوي پولينيسيا',
+ 'PG' => 'پاپوا نيو ګيني',
+ 'PH' => 'فلپين',
'PK' => 'پاکستان',
'PL' => 'پولنډ',
- 'PS' => 'فلسطین',
+ 'PM' => 'سینټ پییر او میکولون',
+ 'PN' => 'پيټکيرن ټاپوګان',
+ 'PR' => 'پورتو ریکو',
+ 'PS' => 'فلسطين',
'PT' => 'پورتګال',
+ 'PW' => 'پلاؤ',
+ 'PY' => 'پاراګوی',
+ 'QA' => 'قطر',
+ 'QO' => 'بهرنۍ اوسيانه',
+ 'RE' => 'ریونین',
+ 'RO' => 'رومانیا',
+ 'RS' => 'سربيا',
'RU' => 'روسیه',
'RW' => 'روندا',
- 'SA' => 'سعودی عربستان',
+ 'SA' => 'سعودي عربستان',
+ 'SB' => 'سليمان ټاپوګان',
+ 'SC' => 'سیچیلیس',
+ 'SD' => 'سوډان',
'SE' => 'سویډن',
+ 'SG' => 'سينگاپور',
+ 'SH' => 'سینټ هیلینا',
+ 'SI' => 'سلوانیا',
+ 'SJ' => 'سوالبارد او جان ميين',
+ 'SK' => 'سلواکیا',
+ 'SL' => 'سییرا لیون',
+ 'SM' => 'سان مارینو',
+ 'SN' => 'سينيګال',
+ 'SO' => 'سومالیا',
+ 'SR' => 'سورینام',
+ 'SS' => 'سويلي سوډان',
+ 'ST' => 'ساو ټیم او پرنسیپ',
'SV' => 'سالوېډور',
+ 'SX' => 'سینټ مارټین',
'SY' => 'سوریه',
+ 'SZ' => 'سوازیلینډ',
+ 'TA' => 'تریستان دا کنها',
+ 'TC' => 'د ترکیې او کیکاسو ټاپو',
+ 'TD' => 'چاډ',
+ 'TF' => 'د فرانسې جنوبي سیمې',
+ 'TG' => 'ټوګو',
+ 'TH' => 'تهايلنډ',
'TJ' => 'تاجکستان',
+ 'TK' => 'توکیلو',
+ 'TL' => 'تيمور-ليسټ',
+ 'TM' => 'تورکمنستان',
+ 'TN' => 'تونس',
+ 'TO' => 'تونګا',
+ 'TR' => 'ترکي',
+ 'TT' => 'ټرينيډاډ او ټوباګو',
+ 'TV' => 'توالیو',
+ 'TW' => 'تائيوان',
'TZ' => 'تنزانیا',
- 'UY' => 'یوروګوای',
+ 'UA' => 'اوکراین',
+ 'UG' => 'یوګانډا',
+ 'UM' => 'د متحده ایالاتو ټاپوګان',
+ 'UN' => 'ملگري ملتونه',
+ 'US' => 'متحده آيالات',
+ 'UY' => 'یوروګوی',
+ 'UZ' => 'اوزبکستان',
+ 'VA' => 'واتیکان ښار',
+ 'VC' => 'سینټ ویسنټینټ او ګرینډینز',
+ 'VE' => 'وینزویلا',
+ 'VG' => 'بریتانوی ویګور ټاپوګان',
+ 'VI' => 'د متحده آيالاتو ورجن ټاپوګان',
+ 'VN' => 'وېتنام',
+ 'VU' => 'واناتو',
+ 'WF' => 'والیس او فوتونا',
+ 'WS' => 'ساموا',
+ 'XK' => 'کوسوو',
'YE' => 'یمن',
-);
+ 'YT' => 'مايوټ',
+ 'ZA' => 'سویلي افریقا',
+ 'ZM' => 'زیمبیا',
+ 'ZW' => 'زیمبابوی',
+];
+
+$timeUnits = [
+ 'century-one' => '{0} c',
+ 'century-other' => '{0} c',
+ 'day-future-one' => '+{0} d',
+ 'day-future-other' => '+{0} d',
+ 'day-narrow-future-one' => '+{0} d',
+ 'day-narrow-future-other' => '+{0} d',
+ 'day-narrow-past-one' => '-{0} d',
+ 'day-narrow-past-other' => '-{0} d',
+ 'day-one' => '{0} ورځ',
+ 'day-other' => '{0} ورځې',
+ 'day-past-one' => '-{0} d',
+ 'day-past-other' => '-{0} d',
+ 'day-short-future-one' => '+{0} d',
+ 'day-short-future-other' => '+{0} d',
+ 'day-short-past-one' => '-{0} d',
+ 'day-short-past-other' => '-{0} d',
+ 'fri-future-one' => '+{0} Fridays',
+ 'fri-future-other' => '+{0} Fridays',
+ 'fri-narrow-future-one' => '+{0} Fridays',
+ 'fri-narrow-future-other' => '+{0} Fridays',
+ 'fri-narrow-past-one' => '-{0} Fridays',
+ 'fri-narrow-past-other' => '-{0} Fridays',
+ 'fri-past-one' => '-{0} Fridays',
+ 'fri-past-other' => '-{0} Fridays',
+ 'fri-short-future-one' => '+{0} Fridays',
+ 'fri-short-future-other' => '+{0} Fridays',
+ 'fri-short-past-one' => '-{0} Fridays',
+ 'fri-short-past-other' => '-{0} Fridays',
+ 'hour-future-one' => '+{0} h',
+ 'hour-future-other' => '+{0} h',
+ 'hour-narrow-future-one' => '+{0} h',
+ 'hour-narrow-future-other' => '+{0} h',
+ 'hour-narrow-past-one' => '-{0} h',
+ 'hour-narrow-past-other' => '-{0} h',
+ 'hour-one' => '{0} h',
+ 'hour-other' => '{0} h',
+ 'hour-past-one' => '-{0} h',
+ 'hour-past-other' => '-{0} h',
+ 'hour-short-future-one' => '+{0} h',
+ 'hour-short-future-other' => '+{0} h',
+ 'hour-short-past-one' => '-{0} h',
+ 'hour-short-past-other' => '-{0} h',
+ 'microsecond-one' => '{0} μs',
+ 'microsecond-other' => '{0} μs',
+ 'millisecond-one' => '{0} ms',
+ 'millisecond-other' => '{0} ms',
+ 'minute-future-one' => '+{0} min',
+ 'minute-future-other' => '+{0} min',
+ 'minute-narrow-future-one' => '+{0} min',
+ 'minute-narrow-future-other' => '+{0} min',
+ 'minute-narrow-past-one' => '-{0} min',
+ 'minute-narrow-past-other' => '-{0} min',
+ 'minute-one' => '{0} min',
+ 'minute-other' => '{0} min',
+ 'minute-past-one' => '-{0} min',
+ 'minute-past-other' => '-{0} min',
+ 'minute-short-future-one' => '+{0} min',
+ 'minute-short-future-other' => '+{0} min',
+ 'minute-short-past-one' => '-{0} min',
+ 'minute-short-past-other' => '-{0} min',
+ 'mon-future-one' => '+{0} Mondays',
+ 'mon-future-other' => '+{0} Mondays',
+ 'mon-narrow-future-one' => '+{0} Mondays',
+ 'mon-narrow-future-other' => '+{0} Mondays',
+ 'mon-narrow-past-one' => '-{0} Mondays',
+ 'mon-narrow-past-other' => '-{0} Mondays',
+ 'mon-past-one' => '-{0} Mondays',
+ 'mon-past-other' => '-{0} Mondays',
+ 'mon-short-future-one' => '+{0} Mondays',
+ 'mon-short-future-other' => '+{0} Mondays',
+ 'mon-short-past-one' => '-{0} Mondays',
+ 'mon-short-past-other' => '-{0} Mondays',
+ 'month-future-one' => '+{0} m',
+ 'month-future-other' => '+{0} m',
+ 'month-narrow-future-one' => '+{0} m',
+ 'month-narrow-future-other' => '+{0} m',
+ 'month-narrow-past-one' => '-{0} m',
+ 'month-narrow-past-other' => '-{0} m',
+ 'month-one' => '{0} مياشت',
+ 'month-other' => '{0} مياشتې',
+ 'month-past-one' => '-{0} m',
+ 'month-past-other' => '-{0} m',
+ 'month-short-future-one' => '+{0} m',
+ 'month-short-future-other' => '+{0} m',
+ 'month-short-past-one' => '-{0} m',
+ 'month-short-past-other' => '-{0} m',
+ 'nanosecond-one' => '{0} ns',
+ 'nanosecond-other' => '{0} ns',
+ 'quarter-future-one' => '+{0} Q',
+ 'quarter-future-other' => '+{0} Q',
+ 'quarter-narrow-future-one' => '+{0} Q',
+ 'quarter-narrow-future-other' => '+{0} Q',
+ 'quarter-narrow-past-one' => '-{0} Q',
+ 'quarter-narrow-past-other' => '-{0} Q',
+ 'quarter-past-one' => '-{0} Q',
+ 'quarter-past-other' => '-{0} Q',
+ 'quarter-short-future-one' => '+{0} Q',
+ 'quarter-short-future-other' => '+{0} Q',
+ 'quarter-short-past-one' => '-{0} Q',
+ 'quarter-short-past-other' => '-{0} Q',
+ 'sat-future-one' => '+{0} Saturdays',
+ 'sat-future-other' => '+{0} Saturdays',
+ 'sat-narrow-future-one' => '+{0} Saturdays',
+ 'sat-narrow-future-other' => '+{0} Saturdays',
+ 'sat-narrow-past-one' => '-{0} Saturdays',
+ 'sat-narrow-past-other' => '-{0} Saturdays',
+ 'sat-past-one' => '-{0} Saturdays',
+ 'sat-past-other' => '-{0} Saturdays',
+ 'sat-short-future-one' => '+{0} Saturdays',
+ 'sat-short-future-other' => '+{0} Saturdays',
+ 'sat-short-past-one' => '-{0} Saturdays',
+ 'sat-short-past-other' => '-{0} Saturdays',
+ 'second-future-one' => '+{0} s',
+ 'second-future-other' => '+{0} s',
+ 'second-narrow-future-one' => '+{0} s',
+ 'second-narrow-future-other' => '+{0} s',
+ 'second-narrow-past-one' => '-{0} s',
+ 'second-narrow-past-other' => '-{0} s',
+ 'second-one' => '{0} s',
+ 'second-other' => '{0} s',
+ 'second-past-one' => '-{0} s',
+ 'second-past-other' => '-{0} s',
+ 'second-short-future-one' => '+{0} s',
+ 'second-short-future-other' => '+{0} s',
+ 'second-short-past-one' => '-{0} s',
+ 'second-short-past-other' => '-{0} s',
+ 'sun-future-one' => '+{0} Sundays',
+ 'sun-future-other' => '+{0} Sundays',
+ 'sun-narrow-future-one' => '+{0} Sundays',
+ 'sun-narrow-future-other' => '+{0} Sundays',
+ 'sun-narrow-past-one' => '-{0} Sundays',
+ 'sun-narrow-past-other' => '-{0} Sundays',
+ 'sun-past-one' => '-{0} Sundays',
+ 'sun-past-other' => '-{0} Sundays',
+ 'sun-short-future-one' => '+{0} Sundays',
+ 'sun-short-future-other' => '+{0} Sundays',
+ 'sun-short-past-one' => '-{0} Sundays',
+ 'sun-short-past-other' => '-{0} Sundays',
+ 'thu-future-one' => '+{0} Thursdays',
+ 'thu-future-other' => '+{0} Thursdays',
+ 'thu-narrow-future-one' => '+{0} Thursdays',
+ 'thu-narrow-future-other' => '+{0} Thursdays',
+ 'thu-narrow-past-one' => '-{0} Thursdays',
+ 'thu-narrow-past-other' => '-{0} Thursdays',
+ 'thu-past-one' => '-{0} Thursdays',
+ 'thu-past-other' => '-{0} Thursdays',
+ 'thu-short-future-one' => '+{0} Thursdays',
+ 'thu-short-future-other' => '+{0} Thursdays',
+ 'thu-short-past-one' => '-{0} Thursdays',
+ 'thu-short-past-other' => '-{0} Thursdays',
+ 'tue-future-one' => '+{0} Tuesdays',
+ 'tue-future-other' => '+{0} Tuesdays',
+ 'tue-narrow-future-one' => '+{0} Tuesdays',
+ 'tue-narrow-future-other' => '+{0} Tuesdays',
+ 'tue-narrow-past-one' => '-{0} Tuesdays',
+ 'tue-narrow-past-other' => '-{0} Tuesdays',
+ 'tue-past-one' => '-{0} Tuesdays',
+ 'tue-past-other' => '-{0} Tuesdays',
+ 'tue-short-future-one' => '+{0} Tuesdays',
+ 'tue-short-future-other' => '+{0} Tuesdays',
+ 'tue-short-past-one' => '-{0} Tuesdays',
+ 'tue-short-past-other' => '-{0} Tuesdays',
+ 'wed-future-one' => '+{0} Wednesdays',
+ 'wed-future-other' => '+{0} Wednesdays',
+ 'wed-narrow-future-one' => '+{0} Wednesdays',
+ 'wed-narrow-future-other' => '+{0} Wednesdays',
+ 'wed-narrow-past-one' => '-{0} Wednesdays',
+ 'wed-narrow-past-other' => '-{0} Wednesdays',
+ 'wed-past-one' => '-{0} Wednesdays',
+ 'wed-past-other' => '-{0} Wednesdays',
+ 'wed-short-future-one' => '+{0} Wednesdays',
+ 'wed-short-future-other' => '+{0} Wednesdays',
+ 'wed-short-past-one' => '-{0} Wednesdays',
+ 'wed-short-past-other' => '-{0} Wednesdays',
+ 'week-future-one' => '+{0} w',
+ 'week-future-other' => '+{0} w',
+ 'week-narrow-future-one' => '+{0} w',
+ 'week-narrow-future-other' => '+{0} w',
+ 'week-narrow-past-one' => '-{0} w',
+ 'week-narrow-past-other' => '-{0} w',
+ 'week-one' => 'اونۍ',
+ 'week-other' => '{0} اونۍ',
+ 'week-past-one' => '-{0} w',
+ 'week-past-other' => '-{0} w',
+ 'week-short-future-one' => '+{0} w',
+ 'week-short-future-other' => '+{0} w',
+ 'week-short-past-one' => '-{0} w',
+ 'week-short-past-other' => '-{0} w',
+ 'year-future-one' => 'په {0} کال کې',
+ 'year-future-other' => 'په {0} کالونو کې',
+ 'year-narrow-future-one' => 'په {0} کال کې',
+ 'year-narrow-future-other' => 'په {0} کالونو کې',
+ 'year-narrow-past-one' => '{0} کال مخکې',
+ 'year-narrow-past-other' => '{0} کاله مخکې',
+ 'year-one' => '{0} کال',
+ 'year-other' => '{0} کالونه',
+ 'year-past-one' => '{0} کال مخکې',
+ 'year-past-other' => '{0} کاله مخکې',
+ 'year-short-future-one' => 'په {0} کال کې',
+ 'year-short-future-other' => 'په {0} کالونو کې',
+ 'year-short-past-one' => '{0} کال مخکې',
+ 'year-short-past-other' => '{0} کاله مخکې',
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesPt.php b/MLEB/cldr/CldrNames/CldrNamesPt.php
index 45e6469b..ad102762 100644
--- a/MLEB/cldr/CldrNames/CldrNamesPt.php
+++ b/MLEB/cldr/CldrNames/CldrNamesPt.php
@@ -1,265 +1,448 @@
<?php
-$languageNames = array(
- 'af' => 'africânder',
+$languageNames = [
+ 'af' => 'africanês',
+ 'alt' => 'altai do sul',
+ 'ang' => 'inglês antigo',
+ 'ar-001' => 'árabe moderno padrão',
'arn' => 'mapuche',
+ 'ars' => 'árabe do Négede',
+ 'av' => 'avaric',
'bax' => 'bamun',
'bbj' => 'ghomala',
+ 'bn' => 'bengalês',
+ 'bua' => 'buriat',
+ 'chk' => 'chuquês',
'chn' => 'jargão chinook',
+ 'chr' => 'cherokee',
+ 'chy' => 'cheyenne',
'ckb' => 'sorani curdo',
+ 'co' => 'córsico',
+ 'crs' => 'francês crioulo seselwa',
'cs' => 'checo',
- 'dsb' => 'baixo sórabio',
+ 'cv' => 'chuvash',
+ 'de-at' => 'alemão austríaco',
+ 'de-ch' => 'alto alemão suíço',
'ee' => 'ewe',
+ 'efi' => 'efik',
'egy' => 'egípcio clássico',
+ 'en-au' => 'inglês australiano',
'en-ca' => 'inglês canadiano',
- 'enm' => 'inglês medieval',
+ 'en-gb' => 'inglês britânico',
+ 'en-us' => 'inglês americano',
+ 'es-419' => 'espanhol latino-americano',
+ 'es-es' => 'espanhol europeu',
+ 'es-mx' => 'espanhol mexicano',
'et' => 'estónio',
+ 'fon' => 'fon',
'fr-ca' => 'francês canadiano',
- 'frm' => 'francês medieval',
+ 'fr-ch' => 'francês suíço',
+ 'fro' => 'francês antigo',
'frs' => 'frísio oriental',
'fy' => 'frísico ocidental',
- 'gmh' => 'alemão medieval alto',
+ 'gez' => 'geʼez',
+ 'goh' => 'alemão alto antigo',
'grc' => 'grego clássico',
+ 'gsw' => 'alemão suíço',
'ha' => 'haúça',
'hi' => 'hindi',
- 'hsb' => 'alto sórabio',
'hy' => 'arménio',
- 'ig' => 'igbo',
- 'kea' => 'cabo-verdiano',
- 'kg' => 'conguês',
- 'kn' => 'canarim',
+ 'kbd' => 'cabardiano',
+ 'kl' => 'gronelandês',
+ 'krc' => 'carachaio-bálcaro',
'lez' => 'lezghiano',
'lg' => 'ganda',
+ 'lou' => 'crioulo de Louisiana',
+ 'lrc' => 'luri do norte',
'luo' => 'luo',
- 'mga' => 'irlandês, medieval',
+ 'mak' => 'makassarês',
'mk' => 'macedónio',
+ 'moh' => 'mohawk',
+ 'mr' => 'marata',
+ 'mul' => 'vários idiomas',
'nb' => 'norueguês bokmål',
+ 'nds' => 'baixo-alemão',
+ 'nds-nl' => 'baixo-saxão',
+ 'nl' => 'neerlandês',
'nn' => 'norueguês nynorsk',
- 'oc' => 'provençal',
+ 'non' => 'nórdico antigo',
+ 'oc' => 'occitano',
+ 'or' => 'oriya',
'os' => 'ossético',
+ 'pag' => 'língua pangasinesa',
+ 'pam' => 'pampango',
+ 'peo' => 'persa antigo',
'pl' => 'polaco',
+ 'pon' => 'língua pohnpeica',
+ 'pro' => 'provençal antigo',
'ps' => 'pastó',
- 'rom' => 'romanês',
- 'sah' => 'sakha',
+ 'pt-br' => 'português do Brasil',
+ 'pt-pt' => 'português europeu',
+ 'raj' => 'rajastanês',
+ 'se' => 'sami do norte',
+ 'sga' => 'irlandês antigo',
'shu' => 'árabe do Chade',
+ 'sma' => 'sami do sul',
+ 'smn' => 'inari sami',
+ 'sn' => 'shona',
+ 'te' => 'telugu',
+ 'tem' => 'temne',
+ 'tg' => 'tajique',
'tk' => 'turcomano',
- 'tl' => 'tagalogue',
'to' => 'tonga',
+ 'tt' => 'tatar',
+ 'tzm' => 'tamazight do Atlas Central',
+ 'uz' => 'usbeque',
'vai' => 'vai',
+ 'wo' => 'uólofe',
+ 'xh' => 'xosa',
'xog' => 'soga',
-);
+ 'yo' => 'ioruba',
+ 'zgh' => 'tamazight marroquino padrão',
+ 'zun' => 'zuni',
+ 'zza' => 'zaza',
+];
-$currencyNames = array(
+$currencyNames = [
'AED' => 'Dirham dos Emirados Árabes Unidos',
'AFA' => 'Afeghani (1927–2002)',
'AFN' => 'Afegani do Afeganistão',
+ 'ALL' => 'lek albanês',
'AMD' => 'Dram arménio',
- 'AWG' => 'Florim de Aruba',
+ 'AOA' => 'kwanza angolano',
+ 'ARS' => 'peso argentino',
+ 'AWG' => 'florim de Aruba',
'AZN' => 'Manat do Azerbaijão',
'BAD' => 'Dinar da Bósnia-Herzegóvina',
- 'BAM' => 'Marco bósnio-herzegóvino conversível',
+ 'BAM' => 'marco bósnio-herzegóvino conversível',
+ 'BBD' => 'dólar barbadense',
'BDT' => 'Taka de Bangladesh',
'BEC' => 'Franco belga (convertível)',
+ 'BGN' => 'lev búlgaro',
'BHD' => 'Dinar baremita',
+ 'BIF' => 'franco burundiano',
+ 'BMD' => 'dólar bermudense',
'BND' => 'Dólar bruneíno',
- 'BSD' => 'Dólar das Bahamas',
+ 'BOB' => 'boliviano',
+ 'BRL' => 'real brasileiro',
+ 'BSD' => 'dólar das Bahamas',
'BTN' => 'Ngultrum do Butão',
'BWP' => 'Pula de Botswana',
'BYB' => 'Rublo novo bielorusso (1994–1999)',
- 'BZD' => 'Dólar belizense',
- 'CAD' => 'Dólar canadiano',
- 'CRC' => 'Colon costa-riquenho',
+ 'BYN' => 'rublo bielorrusso',
+ 'BZD' => 'dólar belizense',
+ 'CAD' => 'dólar canadiano',
+ 'CDF' => 'franco congolês',
+ 'CHF' => 'franco suíço',
+ 'CLP' => 'peso chileno',
+ 'CNH' => 'yuan offshore',
+ 'CNY' => 'yuan',
+ 'COP' => 'peso colombiano',
+ 'CRC' => 'colon costa-riquenho',
+ 'CUC' => 'peso cubano conversível',
+ 'CUP' => 'peso cubano',
+ 'CVE' => 'escudo cabo-verdiano',
'CYP' => 'Libra de Chipre',
- 'CZK' => 'Coroa checa',
- 'DJF' => 'Franco jibutiano',
+ 'CZK' => 'coroa checa',
+ 'DJF' => 'franco jibutiano',
+ 'DKK' => 'coroa dinamarquesa',
+ 'DZD' => 'dinar argelino',
'ECV' => 'Unidad de Valor Constante (UVC) do Equador',
+ 'EGP' => 'libra egípcia',
+ 'ERN' => 'nakfa eritreia',
+ 'ETB' => 'birr etíope',
+ 'EUR' => 'euro',
'FJD' => 'Dólar de Fiji',
- 'FKP' => 'Libra das Ilhas Falkland',
+ 'FKP' => 'libra das Ilhas Falkland',
+ 'GBP' => 'libra esterlina britânica',
'GHC' => 'Cedi do Gana',
- 'GHS' => 'Cedi de Gana',
- 'GMD' => 'Dalasi da Gâmbia',
- 'GNF' => 'Franco guineense',
- 'GTQ' => 'Quetzal da Guatemala',
- 'GYD' => 'Dólar da Guiana',
- 'HNL' => 'Lempira das Honduras',
+ 'GHS' => 'cedi ganês',
+ 'GIP' => 'libra de Gibraltar',
+ 'GMD' => 'dalasi gambiano',
+ 'GNF' => 'franco guineense',
+ 'GTQ' => 'quetzal da Guatemala',
+ 'GYD' => 'dólar da Guiana',
+ 'HNL' => 'lempira das Honduras',
+ 'HRK' => 'kuna croata',
+ 'HUF' => 'forint húngaro',
'ILS' => 'Sheqel novo israelita',
'IRR' => 'Rial iraniano',
+ 'ISK' => 'coroa islandesa',
+ 'KES' => 'xelim queniano',
'KGS' => 'Som do Quirguistão',
- 'KMF' => 'Franco comoriano',
+ 'KMF' => 'franco comoriano',
'KYD' => 'Dólar das Ilhas Caimão',
'KZT' => 'Tenge do Cazaquistão',
'LAK' => 'Kip de Laos',
- 'LKR' => 'Rupia do Sri Lanka',
+ 'LRD' => 'dólar liberiano',
'LTL' => 'Litas da Lituânia',
'LVL' => 'Lats da Letónia',
- 'MAD' => 'Dirham marroquino',
- 'MDL' => 'Leu moldavo',
- 'MGA' => 'Ariari de Madagáscar',
- 'MKD' => 'Dinar macedónio',
+ 'LYD' => 'dinar líbio',
+ 'MAD' => 'dirham marroquino',
+ 'MDL' => 'leu moldavo',
+ 'MGA' => 'ariari malgaxe',
+ 'MKD' => 'dinar macedónio',
'MLF' => 'Franco do Mali',
'MMK' => 'Kyat de Mianmar',
'MNT' => 'Tugrik da Mongólia',
- 'MOP' => 'Pataca de Macau',
- 'MRO' => 'Ouguiya da Mauritânia',
+ 'MRO' => 'ouguiya mauritana (1973–2017)',
+ 'MRU' => 'ouguiya mauritana',
+ 'MUR' => 'rupia mauriciana',
'MVR' => 'Rupia das Ilhas Maldivas',
- 'MWK' => 'Kwacha do Malawi',
+ 'MWK' => 'kwacha malauiano',
+ 'MXN' => 'peso mexicano',
'MXP' => 'Peso Plata mexicano (1861–1992)',
'MXV' => 'Unidad de Inversion (UDI) mexicana',
- 'MZN' => 'Metical de Moçambique',
+ 'MZN' => 'metical moçambicano',
'NAD' => 'Dólar da Namíbia',
'NIC' => 'Córdoba nicaraguano (1988–1991)',
- 'NIO' => 'Córdoba nicaraguano',
+ 'NIO' => 'córdoba nicaraguano',
+ 'NOK' => 'coroa norueguesa',
'OMR' => 'Rial de Omã',
- 'PAB' => 'Balboa do Panamá',
- 'PEN' => 'Novo sol peruano',
+ 'PAB' => 'balboa do Panamá',
+ 'PEN' => 'sol peruano',
+ 'PES' => 'Sol peruano (1863–1965)',
'PGK' => 'Kina da Papua-Nova Guiné',
- 'PLN' => 'Zloti polaco',
+ 'PLN' => 'zloti polaco',
'PLZ' => 'Zloti polaco (1950–1995)',
+ 'PYG' => 'guarani paraguaio',
'QAR' => 'Rial do Catar',
- 'RON' => 'Leu romeno',
+ 'RON' => 'leu romeno',
+ 'RSD' => 'dinar sérvio',
+ 'RUB' => 'rublo russo',
+ 'RWF' => 'franco ruandês',
'SAR' => 'Rial saudita',
+ 'SCR' => 'rupia seichelense',
+ 'SDG' => 'libra sudanesa',
+ 'SEK' => 'coroa sueca',
'SGD' => 'Dólar de Singapura',
- 'SOS' => 'Xelim somali',
- 'SRD' => 'Dólar do Suriname',
+ 'SHP' => 'libra santa-helenense',
+ 'SOS' => 'xelim somali',
+ 'SRD' => 'dólar do Suriname',
+ 'SSP' => 'libra sul-sudanesa',
+ 'STN' => 'dobra de São Tomé e Príncipe',
'SZL' => 'Lilangeni da Suazilândia',
'THB' => 'Baht da Tailândia',
'TJS' => 'Somoni do Tajaquistão',
'TMT' => 'Manat do Turquemenistão',
- 'TND' => 'Dinar tunisino',
+ 'TND' => 'dinar tunisino',
'TOP' => 'Paʻanga de Tonga',
'TTD' => 'Dólar de Trindade e Tobago',
- 'UAH' => 'Hryvnia da Ucrânia',
- 'USD' => 'Dólar dos Estados Unidos',
+ 'UAH' => 'hryvnia ucraniano',
+ 'USD' => 'dólar dos Estados Unidos',
+ 'UYU' => 'peso uruguaio',
'UZS' => 'Som do Uzbequistão',
- 'VUV' => 'Vatu de Vanuatu',
- 'XAF' => 'Franco CFA (BEAC)',
+ 'VEF' => 'bolívar (2008–2018)',
+ 'VES' => 'bolívar',
+ 'XAF' => 'franco CFA (BEAC)',
'XCD' => 'Dólar das Caraíbas Orientais',
'XDR' => 'direito especial de saque',
'XEU' => 'Unidade da Moeda Europeia',
- 'XOF' => 'Franco CFA (BCEAO)',
+ 'XOF' => 'franco CFA (BCEAO)',
+ 'XXX' => 'moeda desconhecida',
'YER' => 'Rial iemenita',
'YUD' => 'Dinar forte jugoslavo',
'YUM' => 'Super Dinar jugoslavo',
'YUN' => 'Dinar conversível jugoslavo',
'ZMK' => 'Kwacha zambiano (1968–2012)',
'ZWD' => 'Dólar do Zimbabwe',
-);
+];
-$countryNames = array(
- 'AI' => 'Anguila',
+$countryNames = [
'AM' => 'Arménia',
+ 'AX' => 'Alanda',
+ 'BD' => 'Bangladeche',
'BH' => 'Barém',
'BJ' => 'Benim',
+ 'BS' => 'Baamas',
+ 'CC' => 'Ilhas dos Cocos (Keeling)',
'CD' => 'Congo-Kinshasa',
'CG' => 'Congo-Brazzaville',
- 'CM' => 'Camarões',
+ 'CI' => 'Côte d’Ivoire (Costa do Marfim)',
'CW' => 'Curaçau',
- 'CZ' => 'República Checa',
+ 'CX' => 'Ilha do Natal',
+ 'CZ' => 'Chéquia',
+ 'DJ' => 'Jibuti',
'DM' => 'Domínica',
+ 'EA' => 'Ceuta e Melilha',
'EE' => 'Estónia',
- 'FK' => 'Ilhas Falkland',
+ 'EH' => 'Sara Ocidental',
+ 'EZ' => 'Zona Euro',
+ 'FK' => 'Ilhas Malvinas (Falkland)',
'FO' => 'Ilhas Faroé',
+ 'GB' => 'GB',
+ 'GG' => 'Guernesey',
'GL' => 'Gronelândia',
'GU' => 'Guame',
'IR' => 'Irão',
'KE' => 'Quénia',
+ 'KI' => 'Quiribáti',
+ 'KN' => 'São Cristóvão e Neves',
+ 'KW' => 'Koweit',
'KY' => 'Ilhas Caimão',
+ 'LI' => 'Listenstaine',
+ 'LK' => 'Sri Lanca',
'LV' => 'Letónia',
'MC' => 'Mónaco',
+ 'MD' => 'Moldávia',
'MG' => 'Madagáscar',
'MK' => 'Macedónia',
+ 'MO' => 'Macau, RAE da China',
'MS' => 'Monserrate',
'MU' => 'Maurícia',
+ 'MW' => 'Maláui',
'NC' => 'Nova Caledónia',
+ 'NU' => 'Niuê',
'PL' => 'Polónia',
- 'PN' => 'Pitcairn',
'PS' => 'Territórios palestinianos',
'QO' => 'Oceânia Insular',
'RO' => 'Roménia',
- 'SC' => 'Seicheles',
- 'SG' => 'Singapura',
'SI' => 'Eslovénia',
- 'SM' => 'São Marino',
+ 'SM' => 'São Marinho',
+ 'SV' => 'Salvador',
+ 'SX' => 'São Martinho (Sint Maarten)',
+ 'TJ' => 'Tajiquistão',
'TK' => 'Toquelau',
'TM' => 'Turquemenistão',
'TT' => 'Trindade e Tobago',
+ 'UM' => 'Ilhas Menores Afastadas dos EUA',
+ 'UZ' => 'Usbequistão',
+ 'VI' => 'Ilhas Virgens dos EUA',
'VN' => 'Vietname',
'YE' => 'Iémen',
'YT' => 'Maiote',
'ZW' => 'Zimbabué',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-one' => '{0} século',
+ 'century-other' => '{0} séculos',
'day-future-one' => 'dentro de {0} dia',
'day-future-other' => 'dentro de {0} dias',
- 'day-past-one' => 'há {0} dia',
- 'day-past-other' => 'há {0} dias',
+ 'day-narrow-future-one' => '+{0} dia',
+ 'day-narrow-future-other' => '+{0} dias',
+ 'day-narrow-past-one' => 'há {0} dias',
+ 'day-narrow-past-other' => 'há {0} dias',
'day-short-future-one' => 'dentro de {0} dia',
'day-short-future-other' => 'dentro de {0} dias',
- 'day-short-past-one' => 'há {0} dia',
- 'day-short-past-other' => 'há {0} dias',
+ 'fri-future-one' => 'dentro de {0} sexta-feira',
+ 'fri-future-other' => 'dentro de {0} sextas-feiras',
+ 'fri-narrow-future-one' => 'dentro de {0} sex.',
+ 'fri-narrow-future-other' => 'dentro de {0} sex.',
+ 'fri-short-future-one' => 'dentro de {0} sexta',
+ 'fri-short-future-other' => 'dentro de {0} sextas',
+ 'fri-short-past-one' => 'há {0} sexta',
+ 'fri-short-past-other' => 'há {0} sextas',
'hour-future-one' => 'dentro de {0} hora',
'hour-future-other' => 'dentro de {0} horas',
- 'hour-past-one' => 'há {0} hora',
- 'hour-past-other' => 'há {0} horas',
+ 'hour-narrow-future-one' => '+{0} h',
+ 'hour-narrow-future-other' => '+{0} h',
+ 'hour-narrow-past-one' => '-{0} h',
+ 'hour-narrow-past-other' => '-{0} h',
'hour-short-future-one' => 'dentro de {0} h',
'hour-short-future-other' => 'dentro de {0} h',
- 'hour-short-past-one' => 'há {0} h',
- 'hour-short-past-other' => 'há {0} h',
'minute-future-one' => 'dentro de {0} minuto',
'minute-future-other' => 'dentro de {0} minutos',
'minute-narrow-future-one' => '+{0} min',
'minute-narrow-future-other' => '+{0} min',
'minute-narrow-past-one' => '-{0} min',
'minute-narrow-past-other' => '-{0} min',
- 'minute-past-one' => 'há {0} minuto',
- 'minute-past-other' => 'há {0} minutos',
'minute-short-future-one' => 'dentro de {0} min',
'minute-short-future-other' => 'dentro de {0} min',
'minute-short-past-one' => 'há {0} min',
'minute-short-past-other' => 'há {0} min',
+ 'mon-future-one' => 'dentro de {0} segunda-feira',
+ 'mon-future-other' => 'dentro de {0} segundas-feiras',
+ 'mon-narrow-future-one' => 'dentro de {0} seg.',
+ 'mon-narrow-future-other' => 'dentro de {0} seg.',
+ 'mon-short-future-one' => 'dentro de {0} segunda',
+ 'mon-short-future-other' => 'dentro de {0} segundas',
+ 'mon-short-past-one' => 'há {0} segunda',
+ 'mon-short-past-other' => 'há {0} segundas',
'month-future-one' => 'dentro de {0} mês',
'month-future-other' => 'dentro de {0} meses',
- 'month-past-one' => 'há {0} mês',
- 'month-past-other' => 'há {0} meses',
+ 'month-narrow-future-one' => '+{0} mês',
+ 'month-narrow-future-other' => '+{0} meses',
+ 'month-narrow-past-one' => '-{0} mês',
+ 'month-narrow-past-other' => '-{0} meses',
'month-short-future-one' => 'dentro de {0} mês',
'month-short-future-other' => 'dentro de {0} meses',
- 'month-short-past-one' => 'há {0} mês',
- 'month-short-past-other' => 'há {0} meses',
'quarter-future-one' => 'dentro de {0} trimestre',
'quarter-future-other' => 'dentro de {0} trimestres',
'quarter-narrow-future-one' => '+{0} trim.',
'quarter-narrow-future-other' => '+{0} trim.',
'quarter-narrow-past-one' => '-{0} trim.',
'quarter-narrow-past-other' => '-{0} trim.',
- 'quarter-past-one' => 'há {0} trimestre',
- 'quarter-past-other' => 'há {0} trimestres',
'quarter-short-future-one' => 'dentro de {0} trim.',
'quarter-short-future-other' => 'dentro de {0} trim.',
'quarter-short-past-one' => 'há {0} trim.',
'quarter-short-past-other' => 'há {0} trim.',
+ 'sat-future-one' => 'dentro de {0} sábado',
+ 'sat-future-other' => 'dentro de {0} sábados',
+ 'sat-narrow-future-one' => 'dentro de {0} sáb.',
+ 'sat-narrow-future-other' => 'dentro de {0} sáb.',
+ 'sat-short-future-one' => 'dentro de {0} sábado',
+ 'sat-short-future-other' => 'dentro de {0} sábados',
+ 'sat-short-past-one' => 'há {0} sábado',
+ 'sat-short-past-other' => 'há {0} sábados',
'second-future-one' => 'dentro de {0} segundo',
'second-future-other' => 'dentro de {0} segundos',
- 'second-past-one' => 'há {0} segundo',
- 'second-past-other' => 'há {0} segundos',
+ 'second-narrow-future-one' => '+{0} s',
+ 'second-narrow-future-other' => '+{0} s',
+ 'second-narrow-past-one' => '-{0} s',
+ 'second-narrow-past-other' => '-{0} s',
'second-short-future-one' => 'dentro de {0} s',
'second-short-future-other' => 'dentro de {0} s',
'second-short-past-one' => 'há {0} s',
'second-short-past-other' => 'há {0} s',
+ 'sun-future-one' => 'dentro de {0} domingo',
+ 'sun-future-other' => 'dentro de {0} domingos',
+ 'sun-narrow-future-one' => 'dentro de {0} dom.',
+ 'sun-narrow-future-other' => 'dentro de {0} dom.',
+ 'sun-past-one' => 'há {0} domingo',
+ 'sun-past-other' => 'há {0} domingos',
+ 'sun-short-future-one' => 'dentro de {0} domingo',
+ 'sun-short-future-other' => 'dentro de {0} domingos',
+ 'thu-future-one' => 'dentro de {0} quinta-feira',
+ 'thu-future-other' => 'dentro de {0} quintas-feiras',
+ 'thu-narrow-future-one' => 'dentro de {0} qui.',
+ 'thu-narrow-future-other' => 'dentro de {0} qui.',
+ 'thu-short-future-one' => 'dentro de {0} quinta',
+ 'thu-short-future-other' => 'dentro de {0} quintas',
+ 'thu-short-past-one' => 'há {0} quinta',
+ 'thu-short-past-other' => 'há {0} quintas',
+ 'tue-future-one' => 'dentro de {0} terça-feira',
+ 'tue-future-other' => 'dentro de {0} terças-feiras',
+ 'tue-narrow-future-one' => 'dentro de {0} ter.',
+ 'tue-narrow-future-other' => 'dentro de {0} ter.',
+ 'tue-short-future-one' => 'dentro de {0} terça',
+ 'tue-short-future-other' => 'dentro de {0} terças',
+ 'tue-short-past-one' => 'há {0} terça',
+ 'tue-short-past-other' => 'há {0} terças',
+ 'wed-future-one' => 'dentro de {0} quarta-feira',
+ 'wed-future-other' => 'dentro de {0} quartas-feiras',
+ 'wed-narrow-future-one' => 'dentro de {0} qua.',
+ 'wed-narrow-future-other' => 'dentro de {0} qua.',
+ 'wed-past-one' => 'há {0} quarta-feira',
+ 'wed-past-other' => 'há {0} quartas-feiras',
+ 'wed-short-future-one' => 'dentro de {0} quarta',
+ 'wed-short-future-other' => 'dentro de {0} quartas',
+ 'wed-short-past-one' => 'há {0} quarta',
+ 'wed-short-past-other' => 'há {0} quartas',
'week-future-one' => 'dentro de {0} semana',
'week-future-other' => 'dentro de {0} semanas',
- 'week-past-one' => 'há {0} semana',
- 'week-past-other' => 'há {0} semanas',
+ 'week-narrow-future-one' => '+{0} sem.',
+ 'week-narrow-future-other' => '+{0} sem.',
+ 'week-narrow-past-one' => '-{0} sem.',
+ 'week-narrow-past-other' => '-{0} sem.',
'week-short-future-one' => 'dentro de {0} sem.',
'week-short-future-other' => 'dentro de {0} sem.',
- 'week-short-past-one' => 'há {0} sem.',
- 'week-short-past-other' => 'há {0} sem.',
'year-future-one' => 'dentro de {0} ano',
'year-future-other' => 'dentro de {0} anos',
- 'year-past-one' => 'há {0} ano',
- 'year-past-other' => 'há {0} anos',
+ 'year-narrow-future-one' => '+{0} ano',
+ 'year-narrow-future-other' => '+{0} anos',
+ 'year-narrow-past-one' => '-{0} ano',
+ 'year-narrow-past-other' => '-{0} anos',
'year-short-future-one' => 'dentro de {0} ano',
'year-short-future-other' => 'dentro de {0} anos',
- 'year-short-past-one' => 'há {0} ano',
- 'year-short-past-other' => 'há {0} anos',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesPt_br.php b/MLEB/cldr/CldrNames/CldrNamesPt_br.php
index a77d533e..92f2091f 100644
--- a/MLEB/cldr/CldrNames/CldrNamesPt_br.php
+++ b/MLEB/cldr/CldrNames/CldrNamesPt_br.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'afar',
'ab' => 'abcázio',
'ace' => 'achém',
@@ -15,7 +15,7 @@ $languageNames = array(
'ak' => 'akan',
'akk' => 'acadiano',
'ale' => 'aleúte',
- 'alt' => 'altai do sul',
+ 'alt' => 'altai meridional',
'am' => 'amárico',
'an' => 'aragonês',
'ang' => 'inglês arcaico',
@@ -23,16 +23,18 @@ $languageNames = array(
'ar' => 'árabe',
'ar-001' => 'árabe moderno',
'arc' => 'aramaico',
- 'arn' => 'araucano',
+ 'arn' => 'mapudungun',
'arp' => 'arapaho',
+ 'ars' => 'árabe négede',
'arw' => 'arauaqui',
'as' => 'assamês',
'asa' => 'asu',
'ast' => 'asturiano',
- 'av' => 'avaric',
+ 'av' => 'avárico',
'awa' => 'awadhi',
- 'ay' => 'aimara',
+ 'ay' => 'aimará',
'az' => 'azerbaijano',
+ 'az-arab' => 'azeri sul',
'ba' => 'bashkir',
'bal' => 'balúchi',
'ban' => 'balinês',
@@ -45,6 +47,7 @@ $languageNames = array(
'bez' => 'bena',
'bfd' => 'bafut',
'bg' => 'búlgaro',
+ 'bgn' => 'balúchi ocidental',
'bho' => 'bhojpuri',
'bi' => 'bislamá',
'bik' => 'bikol',
@@ -59,7 +62,7 @@ $languageNames = array(
'brx' => 'bodo',
'bs' => 'bósnio',
'bss' => 'akoose',
- 'bua' => 'buriat',
+ 'bua' => 'buriato',
'bug' => 'buginês',
'bum' => 'bulu',
'byn' => 'blin',
@@ -77,35 +80,35 @@ $languageNames = array(
'chg' => 'chagatai',
'chk' => 'chuukese',
'chm' => 'mari',
- 'chn' => 'chinook jargon',
+ 'chn' => 'jargão Chinook',
'cho' => 'choctaw',
'chp' => 'chipewyan',
- 'chr' => 'cherokee',
+ 'chr' => 'cheroqui',
'chy' => 'cheiene',
- 'ckb' => 'sorâni curdo',
- 'co' => 'córsico',
+ 'ckb' => 'curdo central',
+ 'co' => 'corso',
'cop' => 'copta',
'cr' => 'cree',
'crh' => 'turco da Crimeia',
+ 'crs' => 'crioulo francês seichelense',
'cs' => 'tcheco',
'csb' => 'kashubian',
'cu' => 'eslavo eclesiástico',
- 'cv' => 'chuvash',
+ 'cv' => 'tchuvache',
'cy' => 'galês',
'da' => 'dinamarquês',
'dak' => 'dacota',
'dar' => 'dargwa',
'dav' => 'taita',
'de' => 'alemão',
- 'de-at' => 'alemão austríaco',
- 'de-ch' => 'alto alemão suíço',
+ 'de-ch' => 'alto alemão (Suíça)',
'del' => 'delaware',
'den' => 'slave',
'dgr' => 'dogrib',
'din' => 'dinka',
'dje' => 'zarma',
'doi' => 'dogri',
- 'dsb' => 'sorábio baixo',
+ 'dsb' => 'baixo sorábio',
'dua' => 'duala',
'dum' => 'holandês médio',
'dv' => 'divehi',
@@ -121,16 +124,9 @@ $languageNames = array(
'el' => 'grego',
'elx' => 'elamite',
'en' => 'inglês',
- 'en-au' => 'inglês australiano',
- 'en-ca' => 'inglês canadense',
- 'en-gb' => 'inglês britânico',
- 'en-us' => 'inglês americano',
'enm' => 'inglês médio',
'eo' => 'esperanto',
'es' => 'espanhol',
- 'es-419' => 'espanhol latino-americano',
- 'es-es' => 'espanhol europeu',
- 'es-mx' => 'espanhol mexicano',
'et' => 'estoniano',
'eu' => 'basco',
'ewo' => 'ewondo',
@@ -144,8 +140,7 @@ $languageNames = array(
'fo' => 'feroês',
'fon' => 'fom',
'fr' => 'francês',
- 'fr-ca' => 'francês canadense',
- 'fr-ch' => 'francês suíço',
+ 'frc' => 'francês cajun',
'frm' => 'francês médio',
'fro' => 'francês arcaico',
'frr' => 'frísio setentrional',
@@ -155,13 +150,14 @@ $languageNames = array(
'ga' => 'irlandês',
'gaa' => 'ga',
'gag' => 'gagauz',
+ 'gan' => 'gan',
'gay' => 'gayo',
'gba' => 'gbaia',
'gd' => 'gaélico escocês',
'gez' => 'geez',
'gil' => 'gilbertês',
'gl' => 'galego',
- 'gmh' => 'alemão médio-alto',
+ 'gmh' => 'alto alemão médio',
'gn' => 'guarani',
'goh' => 'alemão arcaico alto',
'gon' => 'gondi',
@@ -169,13 +165,14 @@ $languageNames = array(
'got' => 'gótico',
'grb' => 'grebo',
'grc' => 'grego arcaico',
- 'gsw' => 'alemão suíço',
+ 'gsw' => 'alemão (Suíça)',
'gu' => 'guzerate',
'guz' => 'gusii',
'gv' => 'manx',
'gwi' => 'gwichʼin',
'ha' => 'hauçá',
'hai' => 'haida',
+ 'hak' => 'hacá',
'haw' => 'havaiano',
'he' => 'hebraico',
'hi' => 'híndi',
@@ -184,7 +181,8 @@ $languageNames = array(
'hmn' => 'hmong',
'ho' => 'hiri motu',
'hr' => 'croata',
- 'hsb' => 'sorábio alto',
+ 'hsb' => 'alto sorábio',
+ 'hsn' => 'xiang',
'ht' => 'haitiano',
'hu' => 'húngaro',
'hup' => 'hupa',
@@ -195,7 +193,7 @@ $languageNames = array(
'ibb' => 'ibibio',
'id' => 'indonésio',
'ie' => 'interlingue',
- 'ig' => 'ibo',
+ 'ig' => 'igbo',
'ii' => 'sichuan yi',
'ik' => 'inupiaque',
'ilo' => 'ilocano',
@@ -222,21 +220,21 @@ $languageNames = array(
'kbl' => 'kanembu',
'kcg' => 'tyap',
'kde' => 'maconde',
- 'kea' => 'kabuverdianu',
+ 'kea' => 'crioulo cabo-verdiano',
'kfo' => 'koro',
'kg' => 'congolês',
'kha' => 'khasi',
'kho' => 'khotanês',
'khq' => 'koyra chiini',
'ki' => 'quicuio',
- 'kj' => 'kuanyama',
+ 'kj' => 'cuanhama',
'kk' => 'cazaque',
'kkj' => 'kako',
'kl' => 'groenlandês',
'kln' => 'kalenjin',
'km' => 'khmer',
'kmb' => 'quimbundo',
- 'kn' => 'canarês',
+ 'kn' => 'canarim',
'ko' => 'coreano',
'koi' => 'komi-permyak',
'kok' => 'concani',
@@ -244,7 +242,7 @@ $languageNames = array(
'kpe' => 'kpelle',
'kr' => 'canúri',
'krc' => 'karachay-balkar',
- 'krl' => 'idioma carélio',
+ 'krl' => 'carélio',
'kru' => 'kurukh',
'ks' => 'caxemira',
'ksb' => 'shambala',
@@ -262,14 +260,16 @@ $languageNames = array(
'lah' => 'lahnda',
'lam' => 'lamba',
'lb' => 'luxemburguês',
- 'lez' => 'lezghian',
+ 'lez' => 'lezgui',
'lg' => 'luganda',
'li' => 'limburguês',
'lkt' => 'lacota',
'ln' => 'lingala',
'lo' => 'laosiano',
'lol' => 'mongo',
+ 'lou' => 'crioulo da Louisiana',
'loz' => 'lozi',
+ 'lrc' => 'luri setentrional',
'lt' => 'lituano',
'lu' => 'luba-catanga',
'lua' => 'luba-lulua',
@@ -307,24 +307,27 @@ $languageNames = array(
'mni' => 'manipuri',
'moh' => 'moicano',
'mos' => 'mossi',
- 'mr' => 'marata',
+ 'mr' => 'marati',
'ms' => 'malaio',
'mt' => 'maltês',
'mua' => 'mundang',
- 'mul' => 'idiomas múltiplos',
+ 'mul' => 'múltiplos idiomas',
'mus' => 'creek',
'mwl' => 'mirandês',
'mwr' => 'marwari',
'my' => 'birmanês',
'mye' => 'myene',
'myv' => 'erzya',
+ 'mzn' => 'mazandarani',
'na' => 'nauruano',
+ 'nan' => 'min nan',
'nap' => 'napolitano',
'naq' => 'nama',
'nb' => 'bokmål norueguês',
'nd' => 'ndebele do norte',
'nds' => 'baixo alemão',
- 'ne' => 'nepali',
+ 'nds-nl' => 'baixo saxão',
+ 'ne' => 'nepalês',
'new' => 'newari',
'ng' => 'dongo',
'nia' => 'nias',
@@ -351,8 +354,8 @@ $languageNames = array(
'oc' => 'occitânico',
'oj' => 'ojibwa',
'om' => 'oromo',
- 'or' => 'oriya',
- 'os' => 'ossetic',
+ 'or' => 'oriá',
+ 'os' => 'osseto',
'osa' => 'osage',
'ota' => 'turco otomano',
'pa' => 'panjabi',
@@ -361,16 +364,16 @@ $languageNames = array(
'pam' => 'pampanga',
'pap' => 'papiamento',
'pau' => 'palauano',
+ 'pcm' => 'pidgin nigeriano',
'peo' => 'persa arcaico',
'phn' => 'fenício',
'pi' => 'páli',
'pl' => 'polonês',
- 'pon' => 'pohnpeian',
+ 'pon' => 'pohnpeiano',
+ 'prg' => 'prussiano',
'pro' => 'provençal arcaico',
'ps' => 'pashto',
'pt' => 'português',
- 'pt-br' => 'português do Brasil',
- 'pt-pt' => 'português europeu',
'qu' => 'quíchua',
'quc' => 'quiché',
'raj' => 'rajastani',
@@ -384,11 +387,11 @@ $languageNames = array(
'rom' => 'romani',
'ru' => 'russo',
'rup' => 'aromeno',
- 'rw' => 'kinyarwanda',
+ 'rw' => 'quiniaruanda',
'rwk' => 'rwa',
'sa' => 'sânscrito',
'sad' => 'sandawe',
- 'sah' => 'iacuto',
+ 'sah' => 'sakha',
'sam' => 'aramaico samaritano',
'saq' => 'samburu',
'sas' => 'sasak',
@@ -397,9 +400,10 @@ $languageNames = array(
'sbp' => 'sangu',
'sc' => 'sardo',
'scn' => 'siciliano',
- 'sco' => 'escocês',
+ 'sco' => 'scots',
'sd' => 'sindi',
- 'se' => 'sami do norte',
+ 'sdh' => 'curdo meridional',
+ 'se' => 'sami setentrional',
'see' => 'seneca',
'seh' => 'sena',
'sel' => 'selkup',
@@ -415,38 +419,38 @@ $languageNames = array(
'sk' => 'eslovaco',
'sl' => 'esloveno',
'sm' => 'samoano',
- 'sma' => 'sami do sul',
- 'smj' => 'lule sami',
- 'smn' => 'inari sami',
- 'sms' => 'skolt sami',
- 'sn' => 'shona',
+ 'sma' => 'sami meridional',
+ 'smj' => 'sami de Lule',
+ 'smn' => 'sami de Inari',
+ 'sms' => 'sami de Skolt',
+ 'sn' => 'xona',
'snk' => 'soninquê',
'so' => 'somali',
'sog' => 'sogdiano',
'sq' => 'albanês',
'sr' => 'sérvio',
- 'srn' => 'idioma surinamês',
+ 'srn' => 'surinamês',
'srr' => 'serere',
- 'ss' => 'swati',
+ 'ss' => 'suázi',
'ssy' => 'saho',
'st' => 'soto do sul',
'su' => 'sundanês',
'suk' => 'sukuma',
- 'sus' => 'sosso',
+ 'sus' => 'susu',
'sux' => 'sumério',
'sv' => 'sueco',
'sw' => 'suaíli',
+ 'sw-cd' => 'suaíli do Congo',
'swb' => 'comoriano',
- 'swc' => 'suaíli do Congo',
'syc' => 'siríaco clássico',
'syr' => 'siríaco',
'ta' => 'tâmil',
- 'te' => 'telugu',
+ 'te' => 'télugo',
'tem' => 'timne',
'teo' => 'teso',
'ter' => 'tereno',
'tet' => 'tétum',
- 'tg' => 'tajique',
+ 'tg' => 'tadjique',
'th' => 'tailandês',
'ti' => 'tigrínia',
'tig' => 'tigré',
@@ -464,62 +468,64 @@ $languageNames = array(
'tr' => 'turco',
'trv' => 'taroko',
'ts' => 'tsonga',
- 'tsi' => 'tsimshian',
- 'tt' => 'tatar',
+ 'tsi' => 'tsimshiano',
+ 'tt' => 'tártaro',
'tum' => 'tumbuka',
'tvl' => 'tuvaluano',
'tw' => 'twi',
'twq' => 'tasawaq',
'ty' => 'taitiano',
'tyv' => 'tuviniano',
- 'tzm' => 'tamazight do Atlas Central',
- 'udm' => 'udmurt',
+ 'tzm' => 'tamazirte do Atlas Central',
+ 'udm' => 'udmurte',
'ug' => 'uigur',
'uga' => 'ugarítico',
'uk' => 'ucraniano',
'umb' => 'umbundu',
'und' => 'idioma desconhecido',
'ur' => 'urdu',
- 'uz' => 'usbeque',
+ 'uz' => 'uzbeque',
'vai' => 'vai',
've' => 'venda',
'vi' => 'vietnamita',
'vo' => 'volapuque',
- 'vot' => 'votic',
+ 'vot' => 'vótico',
'vun' => 'vunjo',
'wa' => 'valão',
'wae' => 'walser',
- 'wal' => 'walamo',
+ 'wal' => 'wolaytta',
'war' => 'waray',
'was' => 'washo',
- 'wo' => 'uólofe',
+ 'wbp' => 'warlpiri',
+ 'wo' => 'uolofe',
+ 'wuu' => 'wu',
'xal' => 'kalmyk',
- 'xh' => 'xosa',
+ 'xh' => 'xhosa',
'xog' => 'lusoga',
'yao' => 'yao',
'yap' => 'yapese',
'yav' => 'yangben',
'ybb' => 'yemba',
'yi' => 'iídiche',
- 'yo' => 'ioruba',
+ 'yo' => 'iorubá',
'yue' => 'cantonês',
'za' => 'zhuang',
- 'zap' => 'zapoteca',
+ 'zap' => 'zapoteco',
'zbl' => 'símbolos blis',
'zen' => 'zenaga',
- 'zgh' => 'tamazight marroquino padrão',
+ 'zgh' => 'tamazirte marroqino padrão',
'zh' => 'chinês',
'zh-hans' => 'chinês simplificado',
'zh-hant' => 'chinês tradicional',
'zu' => 'zulu',
'zun' => 'zunhi',
'zxx' => 'sem conteúdo linguístico',
- 'zza' => 'zaza',
-);
+ 'zza' => 'zazaki',
+];
-$currencyNames = array(
+$currencyNames = [
'ADP' => 'Peseta de Andorra',
- 'AED' => 'Dirrã dos Emirados Árabes Unidos',
+ 'AED' => 'Dirham dos Emirados Árabes Unidos',
'AFA' => 'Afegane (1927–2002)',
'AFN' => 'Afegane afegão',
'ALK' => 'Lek Albanês (1946–1965)',
@@ -541,10 +547,10 @@ $currencyNames = array(
'AZM' => 'Manat azerbaijano (1993–2006)',
'AZN' => 'Manat azeri',
'BAD' => 'Dinar da Bósnia-Herzegovina (1992–1994)',
- 'BAM' => 'Marco bósnio-herzegovino conversível',
+ 'BAM' => 'Marco conversível da Bósnia e Herzegovina',
'BAN' => 'Novo dinar da Bósnia-Herzegovina (1994–1997)',
'BBD' => 'Dólar barbadense',
- 'BDT' => 'Taka bengalesa',
+ 'BDT' => 'Taka bengali',
'BEC' => 'Franco belga (conversível)',
'BEF' => 'Franco belga',
'BEL' => 'Franco belga (financeiro)',
@@ -556,7 +562,7 @@ $currencyNames = array(
'BIF' => 'Franco burundiano',
'BMD' => 'Dólar bermudense',
'BND' => 'Dólar bruneano',
- 'BOB' => 'Boliviano',
+ 'BOB' => 'Boliviano da Bolívia',
'BOL' => 'Boliviano (1863–1963)',
'BOP' => 'Peso boliviano',
'BOV' => 'Mvdol boliviano',
@@ -572,7 +578,8 @@ $currencyNames = array(
'BUK' => 'Kyat birmanês',
'BWP' => 'Pula botsuanesa',
'BYB' => 'Rublo novo bielo-russo (1994–1999)',
- 'BYR' => 'Rublo bielorrusso',
+ 'BYN' => 'Rublo bielorrusso',
+ 'BYR' => 'Rublo bielorrusso (2000–2016)',
'BZD' => 'Dólar belizenho',
'CAD' => 'Dólar canadense',
'CDF' => 'Franco congolês',
@@ -582,8 +589,9 @@ $currencyNames = array(
'CLE' => 'Escudo chileno',
'CLF' => 'Unidades de Fomento chilenas',
'CLP' => 'Peso chileno',
+ 'CNH' => 'Renminbi chinês (offshore)',
'CNX' => 'Dólar do Banco Popular da China',
- 'CNY' => 'Yuan chinês',
+ 'CNY' => 'Renminbi chinês',
'COP' => 'Peso colombiano',
'COU' => 'Unidade de Valor Real',
'CRC' => 'Colón costarriquenho',
@@ -596,7 +604,7 @@ $currencyNames = array(
'CZK' => 'Coroa tcheca',
'DDM' => 'Ostmark da Alemanha Oriental',
'DEM' => 'Marco alemão',
- 'DJF' => 'Franco djibutiense',
+ 'DJF' => 'Franco djiboutiano',
'DKK' => 'Coroa dinamarquesa',
'DOP' => 'Peso dominicano',
'DZD' => 'Dinar argelino',
@@ -614,7 +622,7 @@ $currencyNames = array(
'FJD' => 'Dólar fijiano',
'FKP' => 'Libra malvinense',
'FRF' => 'Franco francês',
- 'GBP' => 'Libra britânica',
+ 'GBP' => 'Libra esterlina',
'GEK' => 'Cupom Lari georgiano',
'GEL' => 'Lari georgiano',
'GHC' => 'Cedi de Gana (1979–2007)',
@@ -625,7 +633,7 @@ $currencyNames = array(
'GNS' => 'Syli da Guiné',
'GQE' => 'Ekwele da Guiné Equatorial',
'GRD' => 'Dracma grego',
- 'GTQ' => 'Quetzal guatemalense',
+ 'GTQ' => 'Quetzal guatemalteco',
'GWE' => 'Escudo da Guiné Portuguesa',
'GWP' => 'Peso da Guiné-Bissau',
'GYD' => 'Dólar guianense',
@@ -634,12 +642,12 @@ $currencyNames = array(
'HRD' => 'Dinar croata',
'HRK' => 'Kuna croata',
'HTG' => 'Gourde haitiano',
- 'HUF' => 'Forint húngaro',
+ 'HUF' => 'Florim húngaro',
'IDR' => 'Rupia indonésia',
'IEP' => 'Libra irlandesa',
'ILP' => 'Libra israelita',
'ILR' => 'Sheqel antigo israelita',
- 'ILS' => 'Sheqel novo israelita',
+ 'ILS' => 'Novo shekel israelense',
'INR' => 'Rupia indiana',
'IQD' => 'Dinar iraquiano',
'IRR' => 'Rial iraniano',
@@ -652,17 +660,17 @@ $currencyNames = array(
'KES' => 'Xelim queniano',
'KGS' => 'Som quirguiz',
'KHR' => 'Riel cambojano',
- 'KMF' => 'Franco comorense',
+ 'KMF' => 'Franco comoriano',
'KPW' => 'Won norte-coreano',
'KRH' => 'Hwan da Coreia do Sul (1953–1962)',
'KRO' => 'Won da Coreia do Sul (1945–1953)',
'KRW' => 'Won sul-coreano',
'KWD' => 'Dinar kuwaitiano',
- 'KYD' => 'Dólar das Ilhas Caiman',
+ 'KYD' => 'Dólar das Ilhas Cayman',
'KZT' => 'Tenge cazaque',
'LAK' => 'Kip laosiano',
'LBP' => 'Libra libanesa',
- 'LKR' => 'Rupia ceilandesa',
+ 'LKR' => 'Rupia do Sri Lanka',
'LRD' => 'Dólar liberiano',
'LSL' => 'Loti do Lesoto',
'LTL' => 'Litas lituano',
@@ -673,7 +681,7 @@ $currencyNames = array(
'LVL' => 'Lats letão',
'LVR' => 'Rublo letão',
'LYD' => 'Dinar líbio',
- 'MAD' => 'Dirrã marroquino',
+ 'MAD' => 'Dirham marroquino',
'MAF' => 'Franco marroquino',
'MCF' => 'Franco monegasco',
'MDC' => 'Cupon moldávio',
@@ -683,15 +691,16 @@ $currencyNames = array(
'MKD' => 'Dinar macedônio',
'MKN' => 'Dinar macedônio (1992–1993)',
'MLF' => 'Franco de Mali',
- 'MMK' => 'Kyat mianmarense',
+ 'MMK' => 'Quiat de Myanmar',
'MNT' => 'Tugrik mongol',
- 'MOP' => 'Pataca macaense',
- 'MRO' => 'Ouguiya mauritana',
+ 'MOP' => 'Pataca de Macau',
+ 'MRO' => 'Ouguiya mauritana (1973–2017)',
+ 'MRU' => 'Ouguiya mauritana',
'MTL' => 'Lira maltesa',
'MTP' => 'Libra maltesa',
'MUR' => 'Rupia mauriciana',
- 'MVR' => 'Rupia maldiva',
- 'MWK' => 'Kwacha malawiana',
+ 'MVR' => 'Rupia maldivana',
+ 'MWK' => 'Kwacha malauiana',
'MXN' => 'Peso mexicano',
'MXP' => 'Peso Prata mexicano (1861–1992)',
'MXV' => 'Unidade Mexicana de Investimento (UDI)',
@@ -708,14 +717,14 @@ $currencyNames = array(
'NPR' => 'Rupia nepalesa',
'NZD' => 'Dólar neozelandês',
'OMR' => 'Rial omanense',
- 'PAB' => 'Balboa panamenha',
+ 'PAB' => 'Balboa panamenho',
'PEI' => 'Inti peruano',
'PEN' => 'Novo sol peruano',
'PES' => 'Sol peruano (1863–1965)',
'PGK' => 'Kina papuásia',
'PHP' => 'Peso filipino',
'PKR' => 'Rupia paquistanesa',
- 'PLN' => 'Zloti polonês',
+ 'PLN' => 'Zloty polonês',
'PLZ' => 'Zloti polonês (1950–1995)',
'PTE' => 'Escudo português',
'PYG' => 'Guarani paraguaio',
@@ -739,11 +748,12 @@ $currencyNames = array(
'SIT' => 'Tolar Bons esloveno',
'SKK' => 'Coroa eslovaca',
'SLL' => 'Leone de Serra Leoa',
- 'SOS' => 'Xelim somaliano',
+ 'SOS' => 'Xelim somali',
'SRD' => 'Dólar surinamês',
'SRG' => 'Florim do Suriname',
'SSP' => 'Libra sul-sudanesa',
- 'STD' => 'Dobra de São Tomé e Príncipe',
+ 'STD' => 'Dobra de São Tomé e Príncipe (1977–2017)',
+ 'STN' => 'Dobra de São Tomé e Príncipe',
'SUR' => 'Rublo soviético',
'SVC' => 'Colom salvadorenho',
'SYP' => 'Libra síria',
@@ -773,10 +783,11 @@ $currencyNames = array(
'UYU' => 'Peso uruguaio',
'UZS' => 'Som uzbeque',
'VEB' => 'Bolívar venezuelano (1871–2008)',
- 'VEF' => 'Bolívar venezuelano',
+ 'VEF' => 'Bolívar venezuelano (2008–2018)',
+ 'VES' => 'Bolívar venezuelano',
'VND' => 'Dong vietnamita',
'VNN' => 'Dong vietnamita (1978–1985)',
- 'VUV' => 'Vatu vanuatuense',
+ 'VUV' => 'Vatu de Vanuatu',
'WST' => 'Tala samoano',
'XAF' => 'Franco CFA de BEAC',
'XAG' => 'Prata',
@@ -812,9 +823,9 @@ $currencyNames = array(
'ZWD' => 'Dólar do Zimbábue (1980–2008)',
'ZWL' => 'Dólar do Zimbábue (2009)',
'ZWR' => 'Dólar do Zimbábue (2008)',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'AED' => 'AED',
'AFN' => 'AFN',
'ALL' => 'ALL',
@@ -838,12 +849,14 @@ $currencySymbols = array(
'BSD' => 'BSD',
'BTN' => 'BTN',
'BWP' => 'BWP',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CA$',
'CDF' => 'CDF',
'CHF' => 'CHF',
'CLP' => 'CLP',
+ 'CNH' => 'CNH',
'CNY' => 'CN¥',
'COP' => 'COP',
'CRC' => 'CRC',
@@ -907,6 +920,7 @@ $currencySymbols = array(
'MNT' => 'MNT',
'MOP' => 'MOP',
'MRO' => 'MRO',
+ 'MRU' => 'MRU',
'MUR' => 'MUR',
'MVR' => 'MVR',
'MWK' => 'MWK',
@@ -945,6 +959,7 @@ $currencySymbols = array(
'SRD' => 'SRD',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'STN',
'SYP' => 'SYP',
'SZL' => 'SZL',
'THB' => '฿',
@@ -962,6 +977,7 @@ $currencySymbols = array(
'UYU' => 'UYU',
'UZS' => 'UZS',
'VEF' => 'VEF',
+ 'VES' => 'VES',
'VND' => '₫',
'VUV' => 'VUV',
'WST' => 'WST',
@@ -973,18 +989,17 @@ $currencySymbols = array(
'ZAR' => 'ZAR',
'ZMK' => 'ZMK',
'ZMW' => 'ZMW',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'Ilha de Ascensão',
'AD' => 'Andorra',
'AE' => 'Emirados Árabes Unidos',
'AF' => 'Afeganistão',
'AG' => 'Antígua e Barbuda',
- 'AI' => 'Anguilla',
+ 'AI' => 'Anguila',
'AL' => 'Albânia',
'AM' => 'Armênia',
- 'AN' => 'Antilhas Holandesas',
'AO' => 'Angola',
'AQ' => 'Antártida',
'AR' => 'Argentina',
@@ -992,7 +1007,7 @@ $countryNames = array(
'AT' => 'Áustria',
'AU' => 'Austrália',
'AW' => 'Aruba',
- 'AX' => 'Ilhas Åland',
+ 'AX' => 'Ilhas Aland',
'AZ' => 'Azerbaijão',
'BA' => 'Bósnia e Herzegovina',
'BB' => 'Barbados',
@@ -1019,12 +1034,12 @@ $countryNames = array(
'CC' => 'Ilhas Cocos (Keeling)',
'CD' => 'Congo - Kinshasa',
'CF' => 'República Centro-Africana',
- 'CG' => 'Congo - Brazzaville',
+ 'CG' => 'República do Congo',
'CH' => 'Suíça',
'CI' => 'Costa do Marfim',
'CK' => 'Ilhas Cook',
'CL' => 'Chile',
- 'CM' => 'República dos Camarões',
+ 'CM' => 'Camarões',
'CN' => 'China',
'CO' => 'Colômbia',
'CP' => 'Ilha de Clipperton',
@@ -1034,7 +1049,7 @@ $countryNames = array(
'CW' => 'Curaçao',
'CX' => 'Ilha Christmas',
'CY' => 'Chipre',
- 'CZ' => 'República Tcheca',
+ 'CZ' => 'Tchéquia',
'DE' => 'Alemanha',
'DG' => 'Diego Garcia',
'DJ' => 'Djibuti',
@@ -1042,7 +1057,7 @@ $countryNames = array(
'DM' => 'Dominica',
'DO' => 'República Dominicana',
'DZ' => 'Argélia',
- 'EA' => 'Ceuta e Melilha',
+ 'EA' => 'Ceuta e Melilla',
'EC' => 'Equador',
'EE' => 'Estônia',
'EG' => 'Egito',
@@ -1051,6 +1066,7 @@ $countryNames = array(
'ES' => 'Espanha',
'ET' => 'Etiópia',
'EU' => 'União Europeia',
+ 'EZ' => 'zona do euro',
'FI' => 'Finlândia',
'FJ' => 'Fiji',
'FK' => 'Ilhas Malvinas',
@@ -1102,7 +1118,7 @@ $countryNames = array(
'KH' => 'Camboja',
'KI' => 'Quiribati',
'KM' => 'Comores',
- 'KN' => 'São Cristóvão e Nevis',
+ 'KN' => 'São Cristóvão e Névis',
'KP' => 'Coreia do Norte',
'KR' => 'Coreia do Sul',
'KW' => 'Kuwait',
@@ -1121,7 +1137,7 @@ $countryNames = array(
'LY' => 'Líbia',
'MA' => 'Marrocos',
'MC' => 'Mônaco',
- 'MD' => 'Moldávia',
+ 'MD' => 'Moldova',
'ME' => 'Montenegro',
'MF' => 'São Martinho',
'MG' => 'Madagascar',
@@ -1138,7 +1154,7 @@ $countryNames = array(
'MT' => 'Malta',
'MU' => 'Maurício',
'MV' => 'Maldivas',
- 'MW' => 'Malawi',
+ 'MW' => 'Malaui',
'MX' => 'México',
'MY' => 'Malásia',
'MZ' => 'Moçambique',
@@ -1148,7 +1164,7 @@ $countryNames = array(
'NF' => 'Ilha Norfolk',
'NG' => 'Nigéria',
'NI' => 'Nicarágua',
- 'NL' => 'Holanda',
+ 'NL' => 'Países Baixos',
'NO' => 'Noruega',
'NP' => 'Nepal',
'NR' => 'Nauru',
@@ -1162,7 +1178,7 @@ $countryNames = array(
'PH' => 'Filipinas',
'PK' => 'Paquistão',
'PL' => 'Polônia',
- 'PM' => 'Saint Pierre e Miquelon',
+ 'PM' => 'São Pedro e Miquelão',
'PN' => 'Ilhas Pitcairn',
'PR' => 'Porto Rico',
'PS' => 'Palestina',
@@ -1178,10 +1194,10 @@ $countryNames = array(
'RW' => 'Ruanda',
'SA' => 'Arábia Saudita',
'SB' => 'Ilhas Salomão',
- 'SC' => 'Seychelles',
+ 'SC' => 'Seicheles',
'SD' => 'Sudão',
'SE' => 'Suécia',
- 'SG' => 'Cingapura',
+ 'SG' => 'Singapura',
'SH' => 'Santa Helena',
'SI' => 'Eslovênia',
'SJ' => 'Svalbard e Jan Mayen',
@@ -1198,12 +1214,12 @@ $countryNames = array(
'SY' => 'Síria',
'SZ' => 'Suazilândia',
'TA' => 'Tristão da Cunha',
- 'TC' => 'Ilhas Turks e Caicos',
+ 'TC' => 'Ilhas Turcas e Caicos',
'TD' => 'Chade',
'TF' => 'Territórios Franceses do Sul',
'TG' => 'Togo',
'TH' => 'Tailândia',
- 'TJ' => 'Tajiquistão',
+ 'TJ' => 'Tadjiquistão',
'TK' => 'Tokelau',
'TL' => 'Timor-Leste',
'TM' => 'Turcomenistão',
@@ -1217,6 +1233,7 @@ $countryNames = array(
'UA' => 'Ucrânia',
'UG' => 'Uganda',
'UM' => 'Ilhas Menores Distantes dos EUA',
+ 'UN' => 'ONU',
'US' => 'EUA',
'UY' => 'Uruguai',
'UZ' => 'Uzbequistão',
@@ -1224,7 +1241,7 @@ $countryNames = array(
'VC' => 'São Vicente e Granadinas',
'VE' => 'Venezuela',
'VG' => 'Ilhas Virgens Britânicas',
- 'VI' => 'Ilhas Virgens dos EUA',
+ 'VI' => 'Ilhas Virgens Americanas',
'VN' => 'Vietnã',
'VU' => 'Vanuatu',
'WF' => 'Wallis e Futuna',
@@ -1235,123 +1252,209 @@ $countryNames = array(
'ZA' => 'África do Sul',
'ZM' => 'Zâmbia',
'ZW' => 'Zimbábue',
-);
+];
-$timeUnits = array(
- 'day-future-one' => 'Dentro de {0} dia',
- 'day-future-other' => 'Dentro de {0} dias',
- 'day-narrow-future-one' => '+{0} dia',
- 'day-narrow-future-other' => '+{0} dias',
- 'day-narrow-past-one' => '-{0} dia',
- 'day-narrow-past-other' => '-{0} dias',
+$timeUnits = [
+ 'century-one' => '{0} século',
+ 'century-other' => '{0} sécs.',
+ 'day-future-one' => 'em {0} dia',
+ 'day-future-other' => 'em {0} dias',
+ 'day-narrow-future-one' => 'em {0} dia',
+ 'day-narrow-future-other' => 'em {0} dias',
+ 'day-narrow-past-one' => 'há {0} dia',
+ 'day-narrow-past-other' => 'há {0} dias',
'day-one' => '{0} dia',
'day-other' => '{0} dias',
- 'day-past-one' => 'Há {0} dia',
- 'day-past-other' => 'Há {0} dias',
- 'day-short-future-one' => 'Dentro de {0} dia',
- 'day-short-future-other' => 'Dentro de {0} dias',
- 'day-short-past-one' => 'Há {0} dia',
- 'day-short-past-other' => 'Há {0} dias',
- 'hour-future-one' => 'Dentro de {0} hora',
- 'hour-future-other' => 'Dentro de {0} horas',
- 'hour-narrow-future-one' => '+{0} h',
- 'hour-narrow-future-other' => '+{0} h',
- 'hour-narrow-past-one' => '-{0} h',
- 'hour-narrow-past-other' => '-{0} h',
+ 'day-past-one' => 'há {0} dia',
+ 'day-past-other' => 'há {0} dias',
+ 'day-short-future-one' => 'em {0} dia',
+ 'day-short-future-other' => 'em {0} dias',
+ 'day-short-past-one' => 'há {0} dia',
+ 'day-short-past-other' => 'há {0} dias',
+ 'fri-future-one' => 'em {0} sexta-feira',
+ 'fri-future-other' => 'em {0} sextas-feiras',
+ 'fri-narrow-future-one' => 'em {0} sex.',
+ 'fri-narrow-future-other' => 'em {0} sex.',
+ 'fri-narrow-past-one' => 'há {0} sex.',
+ 'fri-narrow-past-other' => 'há {0} sex.',
+ 'fri-past-one' => 'há {0} sexta-feira',
+ 'fri-past-other' => 'há {0} sextas-feiras',
+ 'fri-short-future-one' => 'em {0} sex.',
+ 'fri-short-future-other' => 'em {0} sex.',
+ 'fri-short-past-one' => 'há {0} sex.',
+ 'fri-short-past-other' => 'há {0} sex.',
+ 'hour-future-one' => 'em {0} hora',
+ 'hour-future-other' => 'em {0} horas',
+ 'hour-narrow-future-one' => 'em {0} h',
+ 'hour-narrow-future-other' => 'em {0} h',
+ 'hour-narrow-past-one' => 'há {0} h',
+ 'hour-narrow-past-other' => 'há {0} h',
'hour-one' => '{0} hora',
'hour-other' => '{0} horas',
- 'hour-past-one' => 'Há {0} hora',
- 'hour-past-other' => 'Há {0} horas',
- 'hour-short-future-one' => 'Dentro de {0} h',
- 'hour-short-future-other' => 'Dentro de {0} h',
- 'hour-short-past-one' => 'Há {0} h',
- 'hour-short-past-other' => 'Há {0} h',
+ 'hour-past-one' => 'há {0} hora',
+ 'hour-past-other' => 'há {0} horas',
+ 'hour-short-future-one' => 'em {0} h',
+ 'hour-short-future-other' => 'em {0} h',
+ 'hour-short-past-one' => 'há {0} h',
+ 'hour-short-past-other' => 'há {0} h',
'microsecond-one' => '{0} microssegundo',
'microsecond-other' => '{0} microssegundos',
'millisecond-one' => '{0} milissegundo',
'millisecond-other' => '{0} milissegundos',
- 'minute-future-one' => 'Dentro de {0} minuto',
- 'minute-future-other' => 'Dentro de {0} minutos',
- 'minute-narrow-future-one' => '+{0} m',
- 'minute-narrow-future-other' => '+{0} m',
- 'minute-narrow-past-one' => '-{0} m',
- 'minute-narrow-past-other' => '-{0} m',
+ 'minute-future-one' => 'em {0} minuto',
+ 'minute-future-other' => 'em {0} minutos',
+ 'minute-narrow-future-one' => 'em {0} min.',
+ 'minute-narrow-future-other' => 'em {0} min.',
+ 'minute-narrow-past-one' => 'há {0} min.',
+ 'minute-narrow-past-other' => 'há {0} min.',
'minute-one' => '{0} minuto',
'minute-other' => '{0} minutos',
- 'minute-past-one' => 'Há {0} minuto',
- 'minute-past-other' => 'Há {0} minutos',
- 'minute-short-future-one' => 'Dentro de {0} min.',
- 'minute-short-future-other' => 'Dentro de {0} min',
- 'minute-short-past-one' => 'Há {0} min.',
- 'minute-short-past-other' => 'Há {0} min',
- 'month-future-one' => 'Dentro de {0} mês',
- 'month-future-other' => 'Dentro de {0} meses',
- 'month-narrow-future-one' => '+{0} mês',
- 'month-narrow-future-other' => '+{0} meses',
- 'month-narrow-past-one' => '-{0} mês',
- 'month-narrow-past-other' => '-{0} meses',
+ 'minute-past-one' => 'há {0} minuto',
+ 'minute-past-other' => 'há {0} minutos',
+ 'minute-short-future-one' => 'em {0} min.',
+ 'minute-short-future-other' => 'em {0} min.',
+ 'minute-short-past-one' => 'há {0} min.',
+ 'minute-short-past-other' => 'há {0} min.',
+ 'mon-future-one' => 'em {0} segunda-feira',
+ 'mon-future-other' => 'em {0} segundas-feiras',
+ 'mon-narrow-future-one' => 'em {0} seg.',
+ 'mon-narrow-future-other' => 'em {0} seg.',
+ 'mon-narrow-past-one' => 'há {0} seg.',
+ 'mon-narrow-past-other' => 'há {0} seg.',
+ 'mon-past-one' => 'há {0} segunda-feira',
+ 'mon-past-other' => '{0} segundas-feiras atrás',
+ 'mon-short-future-one' => 'em {0} seg.',
+ 'mon-short-future-other' => 'em {0} seg.',
+ 'mon-short-past-one' => 'há {0} seg.',
+ 'mon-short-past-other' => 'há {0} seg.',
+ 'month-future-one' => 'em {0} mês',
+ 'month-future-other' => 'em {0} meses',
+ 'month-narrow-future-one' => 'em {0} mês',
+ 'month-narrow-future-other' => 'em {0} meses',
+ 'month-narrow-past-one' => 'há {0} mês',
+ 'month-narrow-past-other' => 'há {0} meses',
'month-one' => '{0} mês',
'month-other' => '{0} meses',
- 'month-past-one' => 'Há {0} mês',
- 'month-past-other' => 'Há {0} meses',
- 'month-short-future-one' => 'Dentro de {0} mês',
- 'month-short-future-other' => 'Dentro de {0} meses',
- 'month-short-past-one' => 'Há {0} mês',
- 'month-short-past-other' => 'Há {0} meses',
+ 'month-past-one' => 'há {0} mês',
+ 'month-past-other' => 'há {0} meses',
+ 'month-short-future-one' => 'em {0} mês',
+ 'month-short-future-other' => 'em {0} meses',
+ 'month-short-past-one' => 'há {0} mês',
+ 'month-short-past-other' => 'há {0} meses',
'nanosecond-one' => '{0} nanossegundo',
'nanosecond-other' => '{0} nanossegundos',
- 'quarter-future-one' => 'Dentro de {0} trimestre',
- 'quarter-future-other' => 'Dentro de {0} trimestres',
- 'quarter-narrow-future-one' => '+{0} trim.',
- 'quarter-narrow-future-other' => '+{0} trims.',
- 'quarter-narrow-past-one' => '-{0} trim.',
- 'quarter-narrow-past-other' => '-{0} trims.',
- 'quarter-past-one' => 'Há {0} trimestre',
- 'quarter-past-other' => 'Há {0} trimestres',
- 'quarter-short-future-one' => 'Dentro de {0} trim.',
- 'quarter-short-future-other' => 'Dentro de {0} trims.',
- 'quarter-short-past-one' => 'Há {0} trim.',
- 'quarter-short-past-other' => 'Há {0} trims.',
- 'second-future-one' => 'Dentro de {0} segundo',
- 'second-future-other' => 'Dentro de {0} segundos',
- 'second-narrow-future-one' => '+{0} s',
- 'second-narrow-future-other' => '+{0} s',
- 'second-narrow-past-one' => '-{0} s',
- 'second-narrow-past-other' => '-{0} s',
+ 'quarter-future-one' => 'em {0} trimestre',
+ 'quarter-future-other' => 'em {0} trimestres',
+ 'quarter-narrow-future-one' => 'em {0} trim.',
+ 'quarter-narrow-future-other' => 'em {0} trim.',
+ 'quarter-narrow-past-one' => 'há {0} trim.',
+ 'quarter-narrow-past-other' => 'há {0} trim.',
+ 'quarter-past-one' => 'há {0} trimestre',
+ 'quarter-past-other' => 'há {0} trimestres',
+ 'quarter-short-future-one' => 'em {0} trim.',
+ 'quarter-short-future-other' => 'em {0} trim.',
+ 'quarter-short-past-one' => 'há {0} trim.',
+ 'quarter-short-past-other' => '{0} trim. atrás',
+ 'sat-future-one' => 'em {0} sábado',
+ 'sat-future-other' => 'em {0} sábados',
+ 'sat-narrow-future-one' => 'em {0} sáb.',
+ 'sat-narrow-future-other' => 'em {0} sáb.',
+ 'sat-narrow-past-one' => 'há {0} sáb.',
+ 'sat-narrow-past-other' => 'há {0} sáb.',
+ 'sat-past-one' => 'há {0} sábado',
+ 'sat-past-other' => 'há {0} sábados',
+ 'sat-short-future-one' => 'em {0} sáb.',
+ 'sat-short-future-other' => 'em {0} sáb.',
+ 'sat-short-past-one' => 'há {0} sáb.',
+ 'sat-short-past-other' => 'há {0} sáb.',
+ 'second-future-one' => 'em {0} segundo',
+ 'second-future-other' => 'em {0} segundos',
+ 'second-narrow-future-one' => 'em {0} seg.',
+ 'second-narrow-future-other' => 'em {0} seg.',
+ 'second-narrow-past-one' => 'há {0} seg.',
+ 'second-narrow-past-other' => 'há {0} seg.',
'second-one' => '{0} segundo',
'second-other' => '{0} segundos',
- 'second-past-one' => 'Há {0} segundo',
- 'second-past-other' => 'Há {0} segundos',
- 'second-short-future-one' => 'Dentro de {0} seg.',
- 'second-short-future-other' => 'Dentro de {0} seg.',
- 'second-short-past-one' => 'Há {0} seg.',
- 'second-short-past-other' => 'Há {0} seg.',
- 'week-future-one' => 'Dentro de {0} semana',
- 'week-future-other' => 'Dentro de {0} semanas',
- 'week-narrow-future-one' => '+{0} sem.',
- 'week-narrow-future-other' => '+{0} sem.',
- 'week-narrow-past-one' => '-{0} sem.',
- 'week-narrow-past-other' => '-{0} sem.',
+ 'second-past-one' => 'há {0} segundo',
+ 'second-past-other' => 'há {0} segundos',
+ 'second-short-future-one' => 'em {0} seg.',
+ 'second-short-future-other' => 'em {0} seg.',
+ 'second-short-past-one' => 'há {0} seg.',
+ 'second-short-past-other' => 'há {0} seg.',
+ 'sun-future-one' => 'em {0} domingo',
+ 'sun-future-other' => 'em {0} domingos',
+ 'sun-narrow-future-one' => 'em {0} dom.',
+ 'sun-narrow-future-other' => 'em {0} dom.',
+ 'sun-narrow-past-one' => 'há {0} dom.',
+ 'sun-narrow-past-other' => 'há {0} dom.',
+ 'sun-past-one' => 'há {0} domigo',
+ 'sun-past-other' => 'há {0} domigos',
+ 'sun-short-future-one' => 'em {0} dom.',
+ 'sun-short-future-other' => 'em {0} dom.',
+ 'sun-short-past-one' => 'há {0} dom.',
+ 'sun-short-past-other' => 'há {0} dom.',
+ 'thu-future-one' => 'em {0} quinta-feira',
+ 'thu-future-other' => 'em {0} quintas-feiras',
+ 'thu-narrow-future-one' => 'em {0} qui.',
+ 'thu-narrow-future-other' => 'em {0} qui.',
+ 'thu-narrow-past-one' => 'há {0} qui.',
+ 'thu-narrow-past-other' => 'há {0} qui.',
+ 'thu-past-one' => 'há {0} quinta-feira',
+ 'thu-past-other' => 'há {0} quintas-feiras',
+ 'thu-short-future-one' => 'em {0} qui.',
+ 'thu-short-future-other' => 'em {0} qui.',
+ 'thu-short-past-one' => 'há {0} qui.',
+ 'thu-short-past-other' => 'há {0} qui.',
+ 'tue-future-one' => 'em {0} terça-feira',
+ 'tue-future-other' => 'em {0} terças-feiras',
+ 'tue-narrow-future-one' => 'em {0} ter.',
+ 'tue-narrow-future-other' => 'em {0} ter.',
+ 'tue-narrow-past-one' => 'há {0} ter.',
+ 'tue-narrow-past-other' => 'há {0} ter.',
+ 'tue-past-one' => 'há {0} terça-feira',
+ 'tue-past-other' => 'há {0} terças-feiras',
+ 'tue-short-future-one' => 'em {0} ter.',
+ 'tue-short-future-other' => 'em {0} ter.',
+ 'tue-short-past-one' => 'há {0} ter.',
+ 'tue-short-past-other' => 'há {0} ter.',
+ 'wed-future-one' => 'em {0} quarta-feira',
+ 'wed-future-other' => 'em {0} quartas-feiras',
+ 'wed-narrow-future-one' => 'em {0} qua.',
+ 'wed-narrow-future-other' => 'em {0} qua.',
+ 'wed-narrow-past-one' => 'há {0} qua.',
+ 'wed-narrow-past-other' => 'há {0} qua.',
+ 'wed-past-one' => 'há {0} quartas-feiras',
+ 'wed-past-other' => 'há {0} quartas-feiras',
+ 'wed-short-future-one' => 'em {0} qua.',
+ 'wed-short-future-other' => 'em {0} qua.',
+ 'wed-short-past-one' => 'há {0} qua.',
+ 'wed-short-past-other' => 'há {0} qua.',
+ 'week-future-one' => 'em {0} semana',
+ 'week-future-other' => 'em {0} semanas',
+ 'week-narrow-future-one' => 'em {0} sem.',
+ 'week-narrow-future-other' => 'em {0} sem.',
+ 'week-narrow-past-one' => 'há {0} sem.',
+ 'week-narrow-past-other' => 'há {0} sem.',
'week-one' => '{0} semana',
'week-other' => '{0} semanas',
- 'week-past-one' => 'Há {0} semana',
- 'week-past-other' => 'Há {0} semanas',
- 'week-short-future-one' => 'Dentro de {0} sem.',
- 'week-short-future-other' => 'Dentro de {0} sem.',
- 'week-short-past-one' => 'Há {0} sem.',
- 'week-short-past-other' => 'Há {0} sem.',
- 'year-future-one' => 'Dentro de {0} ano',
- 'year-future-other' => 'Dentro de {0} anos',
- 'year-narrow-future-one' => '+{0} ano',
- 'year-narrow-future-other' => '+{0} anos',
- 'year-narrow-past-one' => '-{0} ano',
- 'year-narrow-past-other' => '-{0} anos',
+ 'week-past-one' => 'há {0} semana',
+ 'week-past-other' => 'há {0} semanas',
+ 'week-short-future-one' => 'em {0} sem.',
+ 'week-short-future-other' => 'em {0} sem.',
+ 'week-short-past-one' => 'há {0} sem.',
+ 'week-short-past-other' => 'há {0} sem.',
+ 'year-future-one' => 'em {0} ano',
+ 'year-future-other' => 'em {0} anos',
+ 'year-narrow-future-one' => 'em {0} ano',
+ 'year-narrow-future-other' => 'em {0} anos',
+ 'year-narrow-past-one' => 'há {0} ano',
+ 'year-narrow-past-other' => '{0} anos atrás',
'year-one' => '{0} ano',
'year-other' => '{0} anos',
- 'year-past-one' => 'Há {0} ano',
- 'year-past-other' => 'Há {0} anos',
- 'year-short-future-one' => 'Dentro de {0} ano',
- 'year-short-future-other' => 'Dentro de {0} anos',
- 'year-short-past-one' => 'Há {0} ano',
- 'year-short-past-other' => 'Há {0} anos',
-);
+ 'year-past-one' => 'há {0} ano',
+ 'year-past-other' => 'há {0} anos',
+ 'year-short-future-one' => 'em {0} ano',
+ 'year-short-future-other' => 'em {0} anos',
+ 'year-short-past-one' => 'há {0} ano',
+ 'year-short-past-other' => 'há {0} anos',
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesQu.php b/MLEB/cldr/CldrNames/CldrNamesQu.php
index 0667f678..eff52d02 100644
--- a/MLEB/cldr/CldrNames/CldrNamesQu.php
+++ b/MLEB/cldr/CldrNames/CldrNamesQu.php
@@ -1,11 +1,12 @@
<?php
-$languageNames = array(
+$languageNames = [
'af' => 'Afrikaans Simi',
'am' => 'Amarico Simi',
'ar' => 'Arabe Simi',
'arn' => 'Mapuche Simi',
'as' => 'Asames Simi',
+ 'ay' => 'Aymara Simi',
'az' => 'Azerbaiyano Simi',
'ba' => 'Baskir Simi',
'be' => 'Bielorruso Simi',
@@ -27,6 +28,7 @@ $languageNames = array(
'el' => 'Griego Simi',
'en' => 'Ingles Simi',
'es' => 'Español Simi',
+ 'es-419' => 'Español Simi (Latino América)',
'et' => 'Estonio Simi',
'eu' => 'Euskera Simi',
'fa' => 'Persa Simi',
@@ -109,6 +111,7 @@ $languageNames = array(
'sr' => 'Serbio Simi',
'sv' => 'Sueco Simi',
'sw' => 'Suajili Simi',
+ 'sw-cd' => 'Suajili Simi (Congo (RDC))',
'syr' => 'Siriaco Simi',
'ta' => 'Tamil Simi',
'te' => 'Telugu Simi',
@@ -129,9 +132,9 @@ $languageNames = array(
'yo' => 'Yoruba Simi',
'zh' => 'Chino Simi',
'zu' => 'Isizulu Simi',
-);
+];
-$countryNames = array(
+$countryNames = [
'AD' => 'Andorra',
'AF' => 'Afganistán',
'AL' => 'Albania',
@@ -145,7 +148,7 @@ $countryNames = array(
'BD' => 'Bangladesh',
'BE' => 'Bélgica',
'BG' => 'Bulgaria',
- 'BH' => 'Bahréin',
+ 'BH' => 'Baréin',
'BI' => 'Burundi',
'BJ' => 'Benín',
'BN' => 'Brunéi',
@@ -160,7 +163,7 @@ $countryNames = array(
'CD' => 'Congo (RDC)',
'CG' => 'Congo',
'CH' => 'Suiza',
- 'CI' => 'Côte dʼIvoire',
+ 'CI' => 'Côte d’Ivoire',
'CL' => 'Chile',
'CM' => 'Camerún',
'CN' => 'China',
@@ -187,7 +190,7 @@ $countryNames = array(
'FR' => 'Francia',
'GA' => 'Gabón',
'GB' => 'Reino Unido',
- 'GG' => 'Guernsey',
+ 'GG' => 'Guernesey',
'GH' => 'Ghana',
'GM' => 'Gambia',
'GN' => 'Guinea',
@@ -195,7 +198,7 @@ $countryNames = array(
'GR' => 'Grecia',
'GT' => 'Guatemala',
'GU' => 'Guam',
- 'GW' => 'Guinea-Bissau',
+ 'GW' => 'Guinea-Bisáu',
'GY' => 'Guyana',
'HK' => 'Hong Kong (RAE)',
'HM' => 'Islas Heard y McDonald',
@@ -205,7 +208,7 @@ $countryNames = array(
'ID' => 'Indonesia',
'IL' => 'Israel',
'IN' => 'India',
- 'IQ' => 'Iraq',
+ 'IQ' => 'Irak',
'IR' => 'Irán',
'IS' => 'Islandia',
'IT' => 'Italia',
@@ -220,7 +223,7 @@ $countryNames = array(
'KP' => 'Corea del Norte',
'KR' => 'Corea del Sur',
'KW' => 'Kuwait',
- 'KZ' => 'Kazajistan',
+ 'KZ' => 'Kazajistán',
'LA' => 'Laos',
'LB' => 'Líbano',
'LI' => 'Liechtenstein',
@@ -296,7 +299,7 @@ $countryNames = array(
'SY' => 'Siria',
'SZ' => 'Suazilandia',
'TD' => 'Chad',
- 'TF' => 'Tierras Australes y Antárticas Francesas',
+ 'TF' => 'Territorios Australes Franceses',
'TG' => 'Togo',
'TH' => 'Tailandia',
'TJ' => 'Tayikistán',
@@ -316,10 +319,103 @@ $countryNames = array(
'VI' => 'EE.UU. Islas Vírgenes',
'VN' => 'Vietnam',
'VU' => 'Vanuatu',
- 'WF' => 'Wallis, Futuna',
+ 'WF' => 'Wallis y Futuna',
'WS' => 'Samoa',
'YE' => 'Yemen',
'ZA' => 'Sudáfrica',
'ZM' => 'Zambia',
'ZW' => 'Zimbabue',
-);
+];
+
+$timeUnits = [
+ 'day-future-other' => '+{0} d',
+ 'day-narrow-future-other' => '+{0} d',
+ 'day-narrow-past-other' => '-{0} d',
+ 'day-past-other' => '-{0} d',
+ 'day-short-future-other' => '+{0} d',
+ 'day-short-past-other' => '-{0} d',
+ 'fri-future-other' => '+{0} Viernes',
+ 'fri-narrow-future-other' => '+{0} Viernes',
+ 'fri-narrow-past-other' => '-{0} Viernes',
+ 'fri-past-other' => '-{0} Viernes',
+ 'fri-short-future-other' => '+{0} Viernes',
+ 'fri-short-past-other' => '-{0} Viernes',
+ 'hour-future-other' => '+{0} h',
+ 'hour-narrow-future-other' => '+{0} h',
+ 'hour-narrow-past-other' => '-{0} h',
+ 'hour-past-other' => '-{0} h',
+ 'hour-short-future-other' => '+{0} h',
+ 'hour-short-past-other' => '-{0} h',
+ 'minute-future-other' => '+{0} min',
+ 'minute-narrow-future-other' => '+{0} min',
+ 'minute-narrow-past-other' => '-{0} min',
+ 'minute-past-other' => '-{0} min',
+ 'minute-short-future-other' => '+{0} min',
+ 'minute-short-past-other' => '-{0} min',
+ 'mon-future-other' => '+{0} Lunes',
+ 'mon-narrow-future-other' => '+{0} Lunes',
+ 'mon-narrow-past-other' => '-{0} Lunes',
+ 'mon-past-other' => '-{0} Lunes',
+ 'mon-short-future-other' => '+{0} Lunes',
+ 'mon-short-past-other' => '-{0} Lunes',
+ 'month-future-other' => '+{0} m',
+ 'month-narrow-future-other' => '+{0} m',
+ 'month-narrow-past-other' => '-{0} m',
+ 'month-past-other' => '-{0} m',
+ 'month-short-future-other' => '+{0} m',
+ 'month-short-past-other' => '-{0} m',
+ 'quarter-future-other' => '+{0} Q',
+ 'quarter-narrow-future-other' => '+{0} Q',
+ 'quarter-narrow-past-other' => '-{0} Q',
+ 'quarter-past-other' => '-{0} Q',
+ 'quarter-short-future-other' => '+{0} Q',
+ 'quarter-short-past-other' => '-{0} Q',
+ 'sat-future-other' => '+{0} Sábado',
+ 'sat-narrow-future-other' => '+{0} Sábado',
+ 'sat-narrow-past-other' => '-{0} Sábado',
+ 'sat-past-other' => '-{0} Sábado',
+ 'sat-short-future-other' => '+{0} Sábado',
+ 'sat-short-past-other' => '-{0} Sábado',
+ 'second-future-other' => '+{0} s',
+ 'second-narrow-future-other' => '+{0} s',
+ 'second-narrow-past-other' => '-{0} s',
+ 'second-past-other' => '-{0} s',
+ 'second-short-future-other' => '+{0} s',
+ 'second-short-past-other' => '-{0} s',
+ 'sun-future-other' => '+{0} Domingopi',
+ 'sun-narrow-future-other' => '+{0} Domingopi',
+ 'sun-narrow-past-other' => '-{0} Domingopi',
+ 'sun-past-other' => '-{0} Domingopi',
+ 'sun-short-future-other' => '+{0} Domingopi',
+ 'sun-short-past-other' => '-{0} Domingopi',
+ 'thu-future-other' => '+{0} Jueves',
+ 'thu-narrow-future-other' => '+{0} Jueves',
+ 'thu-narrow-past-other' => '-{0} Jueves',
+ 'thu-past-other' => '-{0} Jueves',
+ 'thu-short-future-other' => '+{0} Jueves',
+ 'thu-short-past-other' => '-{0} Jueves',
+ 'tue-future-other' => '+{0} Martes',
+ 'tue-narrow-future-other' => '+{0} Martes',
+ 'tue-narrow-past-other' => '-{0} Martes',
+ 'tue-past-other' => '-{0} Martes',
+ 'tue-short-future-other' => '+{0} Martes',
+ 'tue-short-past-other' => '-{0} Martes',
+ 'wed-future-other' => '+{0} Miércoles',
+ 'wed-narrow-future-other' => '+{0} Miércoles',
+ 'wed-narrow-past-other' => '-{0} Miércoles',
+ 'wed-past-other' => '-{0} Miércoles',
+ 'wed-short-future-other' => '+{0} Miércoles',
+ 'wed-short-past-other' => '-{0} Miércoles',
+ 'week-future-other' => '+{0} w',
+ 'week-narrow-future-other' => '+{0} w',
+ 'week-narrow-past-other' => '-{0} w',
+ 'week-past-other' => '-{0} w',
+ 'week-short-future-other' => '+{0} w',
+ 'week-short-past-other' => '-{0} w',
+ 'year-future-other' => '+{0} y',
+ 'year-narrow-future-other' => '+{0} y',
+ 'year-narrow-past-other' => '-{0} y',
+ 'year-past-other' => '-{0} y',
+ 'year-short-future-other' => '+{0} y',
+ 'year-short-past-other' => '-{0} y',
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesRm.php b/MLEB/cldr/CldrNames/CldrNamesRm.php
index d0ef6105..0e89b00e 100644
--- a/MLEB/cldr/CldrNames/CldrNamesRm.php
+++ b/MLEB/cldr/CldrNames/CldrNamesRm.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'afar',
'ab' => 'abchasian',
'ace' => 'aceh',
@@ -439,9 +439,9 @@ $languageNames = array(
'zun' => 'zuni',
'zxx' => 'nagins cuntegns linguistics',
'zza' => 'zaza',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'ADP' => 'peseta andorrana',
'AED' => 'dirham dals Emirats Arabs Unids',
'AFA' => 'afghani (1927–2002)',
@@ -496,7 +496,8 @@ $currencyNames = array(
'BUK' => 'Kyat burmais',
'BWP' => 'pula da la Botswana',
'BYB' => 'nov rubel bieloruss (1994–1999)',
- 'BYR' => 'rubel bieloruss',
+ 'BYN' => 'rubel bieloruss',
+ 'BYR' => 'rubel bieloruss (2000–2016)',
'BZD' => 'dollar dal Belize',
'CAD' => 'dollar canadais',
'CDF' => 'franc congolais',
@@ -608,7 +609,8 @@ $currencyNames = array(
'MMK' => 'Kyat dal Myanmar',
'MNT' => 'tugrik mongolic',
'MOP' => 'pataca dal Macao',
- 'MRO' => 'ouguiya da la Mauretania',
+ 'MRO' => 'ouguiya da la Mauretania (1973–2017)',
+ 'MRU' => 'ouguiya da la Mauretania',
'MTL' => 'lira maltaisa',
'MTP' => 'glivra maltaisa',
'MUR' => 'rupia dal Mauritius',
@@ -633,8 +635,8 @@ $currencyNames = array(
'OMR' => 'rial da l’Oman',
'PAB' => 'balboa dal Panama',
'PEI' => 'inti peruan',
- 'PEN' => 'nov sol peruan',
- 'PES' => 'sol peruan',
+ 'PEN' => 'sol peruan',
+ 'PES' => 'sol peruan (1863–1965)',
'PGK' => 'kina da la Papua Nova Guinea',
'PHP' => 'peso filippin',
'PKR' => 'rupia pakistana',
@@ -665,7 +667,8 @@ $currencyNames = array(
'SOS' => 'schilling somalian',
'SRD' => 'dollar surinam',
'SRG' => 'flurin surinam',
- 'STD' => 'dobra da São Tomé e Principe',
+ 'STD' => 'dobra da São Tomé e Principe (1977–2017)',
+ 'STN' => 'dobra da São Tomé e Principe',
'SUR' => 'rubel sovietic',
'SVC' => 'colon da l’El Salvador',
'SYP' => 'glivra siriana',
@@ -694,7 +697,8 @@ $currencyNames = array(
'UYU' => 'peso da l’Uruguay',
'UZS' => 'sum usbec',
'VEB' => 'bolivar venezuelan (1871–2008)',
- 'VEF' => 'bolivar venezuelan',
+ 'VEF' => 'bolivar venezuelan (2008–2018)',
+ 'VES' => 'bolivar venezuelan',
'VND' => 'dong vietnamais',
'VNN' => 'vegl dong vietnamais',
'VUV' => 'vatu dal Vanuatu',
@@ -730,9 +734,9 @@ $currencyNames = array(
'ZRN' => 'nov zaire dal Zaire',
'ZRZ' => 'zaire dal Zaire',
'ZWD' => 'dollar dal Simbabwe',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'AUD' => 'A$',
'CAD' => 'CA$',
'CHF' => 'CHF',
@@ -758,9 +762,9 @@ $currencySymbols = array(
'USD' => '$',
'XCD' => 'EC$',
'XEU' => 'XEU',
-);
+];
-$countryNames = array(
+$countryNames = [
'AD' => 'Andorra',
'AE' => 'Emirats Arabs Unids',
'AF' => 'Afghanistan',
@@ -768,7 +772,6 @@ $countryNames = array(
'AI' => 'Anguilla',
'AL' => 'Albania',
'AM' => 'Armenia',
- 'AN' => 'Antillas Ollandaisas',
'AO' => 'Angola',
'AQ' => 'Antarctica',
'AR' => 'Argentinia',
@@ -791,7 +794,7 @@ $countryNames = array(
'BM' => 'Bermudas',
'BN' => 'Brunei',
'BO' => 'Bolivia',
- 'BR' => 'Brasila',
+ 'BR' => 'Brasilia',
'BS' => 'Bahamas',
'BT' => 'Bhutan',
'BV' => 'Insla Bouvet',
@@ -856,7 +859,7 @@ $countryNames = array(
'GW' => 'Guinea-Bissau',
'GY' => 'Guyana',
'HK' => 'Regiun d’administraziun speziala da Hongkong, China',
- 'HM' => 'Inslas da Heard e da McDonlad',
+ 'HM' => 'Inslas da Heard e da McDonald',
'HN' => 'Honduras',
'HR' => 'Croazia',
'HT' => 'Haiti',
@@ -999,8 +1002,8 @@ $countryNames = array(
'VA' => 'Citad dal Vatican',
'VC' => 'Saint Vincent e las Grenadinas',
'VE' => 'Venezuela',
- 'VG' => 'Inslas Verginas Britannicas',
- 'VI' => 'Inslas Verginas Americanas',
+ 'VG' => 'Inslas Virginas Britannicas',
+ 'VI' => 'Inslas Virginas Americanas',
'VN' => 'Vietnam',
'VU' => 'Vanuatu',
'WF' => 'Wallis e Futuna',
@@ -1010,9 +1013,9 @@ $countryNames = array(
'ZA' => 'Africa dal Sid',
'ZM' => 'Sambia',
'ZW' => 'Simbabwe',
-);
+];
-$timeUnits = array(
+$timeUnits = [
'day-one' => '{0} di',
'day-other' => '{0} dis',
'hour-one' => '{0} ura',
@@ -1029,4 +1032,4 @@ $timeUnits = array(
'week-other' => '{0} emnas',
'year-one' => '{0} onn',
'year-other' => '{0} onns',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesRn.php b/MLEB/cldr/CldrNames/CldrNamesRn.php
index ad7fac26..28bb2e9d 100644
--- a/MLEB/cldr/CldrNames/CldrNamesRn.php
+++ b/MLEB/cldr/CldrNames/CldrNamesRn.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'ak' => 'Igikani',
'am' => 'Ikimuhariki',
'ar' => 'Icarabu',
@@ -46,9 +46,9 @@ $languageNames = array(
'yo' => 'Ikiyoruba',
'zh' => 'Igishinwa',
'zu' => 'Ikizulu',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'AED' => 'Idiramu ryo muri Leta Zunze Ubumwe z’Abarabu',
'AOA' => 'Ikwanza ryo muri Angola',
'AUD' => 'Idolari ryo muri Ositaraliya',
@@ -79,7 +79,8 @@ $currencyNames = array(
'LYD' => 'Idinari rya Libiya',
'MAD' => 'Idiramu ryo muri Maroke',
'MGA' => 'Iriyari ryo muri Madagasikari',
- 'MRO' => 'Ugwiya ryo muri Moritaniya',
+ 'MRO' => 'Ugwiya ryo muri Moritaniya (1973–2017)',
+ 'MRU' => 'Ugwiya ryo muri Moritaniya',
'MUR' => 'Irupiya ryo mu birwa bya Morise',
'MWK' => 'Ikwaca ryo muri Malawi',
'MZM' => 'Irimetikali ryo muri Mozambike',
@@ -92,7 +93,8 @@ $currencyNames = array(
'SHP' => 'Ipawundi rya Sente Helena',
'SLL' => 'Ilewone',
'SOS' => 'Ishilingi ryo muri Somaliya',
- 'STD' => 'Idobura ryo muri Sawotome na Perensipe',
+ 'STD' => 'Idobura ryo muri Sawotome na Perensipe (1977–2017)',
+ 'STN' => 'Idobura ryo muri Sawotome na Perensipe',
'SZL' => 'Ililangeni',
'TND' => 'Idinari ryo muri Tuniziya',
'TZS' => 'Ishilingi rya Tanzaniya',
@@ -102,13 +104,13 @@ $currencyNames = array(
'ZMK' => 'Ikwaca ryo muri Zambiya (1968–2012)',
'ZMW' => 'Ikwaca ryo muri Zambiya',
'ZWD' => 'Idolari ryo muri Zimbabwe',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'BIF' => 'FBu',
-);
+];
-$countryNames = array(
+$countryNames = [
'AD' => 'Andora',
'AE' => 'Leta Zunze Ubumwe z’Abarabu',
'AF' => 'Afuganisitani',
@@ -116,7 +118,6 @@ $countryNames = array(
'AI' => 'Angwila',
'AL' => 'Alubaniya',
'AM' => 'Arumeniya',
- 'AN' => 'Antiye y’Abaholandi',
'AO' => 'Angola',
'AR' => 'Arijantine',
'AS' => 'Samowa nyamerika',
@@ -334,4 +335,4 @@ $countryNames = array(
'ZA' => 'Afurika y’Epfo',
'ZM' => 'Zambiya',
'ZW' => 'Zimbabwe',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesRo.php b/MLEB/cldr/CldrNames/CldrNamesRo.php
index 95963720..5300015c 100644
--- a/MLEB/cldr/CldrNames/CldrNamesRo.php
+++ b/MLEB/cldr/CldrNames/CldrNamesRo.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'afar',
'ab' => 'abhază',
'ace' => 'aceh',
@@ -23,8 +23,9 @@ $languageNames = array(
'ar' => 'arabă',
'ar-001' => 'arabă standard modernă',
'arc' => 'aramaică',
- 'arn' => 'araucaniană',
+ 'arn' => 'mapuche',
'arp' => 'arapaho',
+ 'ars' => 'arabă najdi',
'arw' => 'arawak',
'as' => 'asameză',
'asa' => 'asu',
@@ -39,12 +40,13 @@ $languageNames = array(
'bas' => 'basaa',
'bax' => 'bamun',
'bbj' => 'ghomala',
- 'be' => 'bielorusă',
+ 'be' => 'belarusă',
'bej' => 'beja',
'bem' => 'bemba',
'bez' => 'bena',
'bfd' => 'bafut',
'bg' => 'bulgară',
+ 'bgn' => 'baluchi occidentală',
'bho' => 'bhojpuri',
'bi' => 'bislama',
'bik' => 'bikol',
@@ -70,7 +72,7 @@ $languageNames = array(
'cay' => 'cayuga',
'cch' => 'atsam',
'ce' => 'cecenă',
- 'ceb' => 'cebuano',
+ 'ceb' => 'cebuană',
'cgg' => 'chiga',
'ch' => 'chamorro',
'chb' => 'chibcha',
@@ -82,11 +84,12 @@ $languageNames = array(
'chp' => 'chipewyan',
'chr' => 'cherokee',
'chy' => 'cheyenne',
- 'ckb' => 'kurdă sorani',
+ 'ckb' => 'kurdă centrală',
'co' => 'corsicană',
'cop' => 'coptă',
'cr' => 'cree',
'crh' => 'turcă crimeeană',
+ 'crs' => 'creolă franceză seselwa',
'cs' => 'cehă',
'csb' => 'cașubiană',
'cu' => 'slavonă',
@@ -97,8 +100,7 @@ $languageNames = array(
'dar' => 'dargwa',
'dav' => 'taita',
'de' => 'germană',
- 'de-at' => 'germană austriacă',
- 'de-ch' => 'germană standard elvețiană',
+ 'de-ch' => 'germană standard (Elveția)',
'del' => 'delaware',
'den' => 'slave',
'dgr' => 'dogrib',
@@ -107,7 +109,7 @@ $languageNames = array(
'doi' => 'dogri',
'dsb' => 'sorabă de jos',
'dua' => 'duala',
- 'dum' => 'olandeză mijlocie',
+ 'dum' => 'neerlandeză medie',
'dv' => 'divehi',
'dyo' => 'jola-fonyi',
'dyu' => 'dyula',
@@ -121,17 +123,11 @@ $languageNames = array(
'el' => 'greacă',
'elx' => 'elamită',
'en' => 'engleză',
- 'en-au' => 'engleză australiană',
- 'en-ca' => 'engleză canadiană',
- 'en-gb' => 'engleză britanică',
- 'en-us' => 'engleză americană',
- 'enm' => 'engleză mijlocie',
+ 'enm' => 'engleză medie',
'eo' => 'esperanto',
'es' => 'spaniolă',
- 'es-419' => 'spaniolă latino-americană',
- 'es-es' => 'spaniolă europeană',
- 'es-mx' => 'spaniolă mexicană',
- 'et' => 'estoniană',
+ 'es-es' => 'spaniolă (Europa)',
+ 'et' => 'estonă',
'eu' => 'bască',
'ewo' => 'ewondo',
'fa' => 'persană',
@@ -144,9 +140,8 @@ $languageNames = array(
'fo' => 'faroeză',
'fon' => 'fon',
'fr' => 'franceză',
- 'fr-ca' => 'franceză canadiană',
- 'fr-ch' => 'franceză elvețiană',
- 'frm' => 'franceză mijlocie',
+ 'frc' => 'franceză cajun',
+ 'frm' => 'franceză medie',
'fro' => 'franceză veche',
'frr' => 'frizonă nordică',
'frs' => 'frizonă orientală',
@@ -155,27 +150,29 @@ $languageNames = array(
'ga' => 'irlandeză',
'gaa' => 'ga',
'gag' => 'găgăuză',
+ 'gan' => 'chineză gan',
'gay' => 'gayo',
'gba' => 'gbaya',
'gd' => 'gaelică scoțiană',
'gez' => 'geez',
'gil' => 'gilbertină',
'gl' => 'galiciană',
- 'gmh' => 'germană mijlocie înaltă',
+ 'gmh' => 'germană înaltă medie',
'gn' => 'guarani',
- 'goh' => 'germană veche înaltă',
+ 'goh' => 'germană înaltă veche',
'gon' => 'gondi',
'gor' => 'gorontalo',
'got' => 'gotică',
'grb' => 'grebo',
'grc' => 'greacă veche',
- 'gsw' => 'germană elvețiană',
+ 'gsw' => 'germană (Elveția)',
'gu' => 'gujarati',
'guz' => 'gusii',
'gv' => 'manx',
'gwi' => 'gwichʼin',
'ha' => 'hausa',
'hai' => 'haida',
+ 'hak' => 'chineză hakka',
'haw' => 'hawaiiană',
'he' => 'ebraică',
'hi' => 'hindi',
@@ -185,6 +182,7 @@ $languageNames = array(
'ho' => 'hiri motu',
'hr' => 'croată',
'hsb' => 'sorabă de sus',
+ 'hsn' => 'chineză xiang',
'ht' => 'haitiană',
'hu' => 'maghiară',
'hup' => 'hupa',
@@ -196,7 +194,7 @@ $languageNames = array(
'id' => 'indoneziană',
'ie' => 'interlingue',
'ig' => 'igbo',
- 'ii' => 'sichuan yi',
+ 'ii' => 'yi din Sichuan',
'ik' => 'inupiak',
'ilo' => 'iloko',
'inh' => 'ingușă',
@@ -226,7 +224,7 @@ $languageNames = array(
'kfo' => 'koro',
'kg' => 'congoleză',
'kha' => 'khasi',
- 'kho' => 'limbp khotaneză',
+ 'kho' => 'khotaneză',
'khq' => 'koyra chiini',
'ki' => 'kikuyu',
'kj' => 'kuanyama',
@@ -269,14 +267,16 @@ $languageNames = array(
'ln' => 'lingala',
'lo' => 'laoțiană',
'lol' => 'mongo',
+ 'lou' => 'creolă (Louisiana)',
'loz' => 'lozi',
+ 'lrc' => 'luri de nord',
'lt' => 'lituaniană',
'lu' => 'luba-katanga',
'lua' => 'luba-lulua',
'lui' => 'luiseno',
'lun' => 'lunda',
'luo' => 'luo',
- 'lus' => 'lusahi',
+ 'lus' => 'mizo',
'luy' => 'luyia',
'lv' => 'letonă',
'mad' => 'madureză',
@@ -293,7 +293,7 @@ $languageNames = array(
'mer' => 'meru',
'mfe' => 'morisyen',
'mg' => 'malgașă',
- 'mga' => 'irlandeză mijlocie',
+ 'mga' => 'irlandeză medie',
'mgh' => 'makhuwa-meetto',
'mgo' => 'meta’',
'mh' => 'marshalleză',
@@ -304,32 +304,35 @@ $languageNames = array(
'ml' => 'malayalam',
'mn' => 'mongolă',
'mnc' => 'manciuriană',
- 'mni' => 'manipur',
+ 'mni' => 'manipuri',
'moh' => 'mohawk',
'mos' => 'mossi',
'mr' => 'marathi',
'ms' => 'malaeză',
'mt' => 'malteză',
'mua' => 'mundang',
- 'mul' => 'limbi multiple',
+ 'mul' => 'mai multe limbi',
'mus' => 'creek',
'mwl' => 'mirandeză',
'mwr' => 'marwari',
- 'my' => 'birmaneză',
+ 'my' => 'birmană',
'mye' => 'myene',
'myv' => 'erzya',
+ 'mzn' => 'mazanderani',
'na' => 'nauru',
+ 'nan' => 'chineză min nan',
'nap' => 'napolitană',
'naq' => 'nama',
'nb' => 'norvegiană bokmål',
'nd' => 'ndebele de nord',
'nds' => 'germana de jos',
+ 'nds-nl' => 'saxona de jos',
'ne' => 'nepaleză',
'new' => 'newari',
'ng' => 'ndonga',
'nia' => 'nias',
'niu' => 'niueană',
- 'nl' => 'olandeză',
+ 'nl' => 'neerlandeză',
'nl-be' => 'flamandă',
'nmg' => 'kwasio',
'nn' => 'norvegiană nynorsk',
@@ -351,7 +354,7 @@ $languageNames = array(
'oc' => 'occitană',
'oj' => 'ojibwa',
'om' => 'oromo',
- 'or' => 'oriya',
+ 'or' => 'odia',
'os' => 'osetă',
'osa' => 'osage',
'ota' => 'turcă otomană',
@@ -361,25 +364,25 @@ $languageNames = array(
'pam' => 'pampanga',
'pap' => 'papiamento',
'pau' => 'palauană',
+ 'pcm' => 'pidgin nigerian',
'peo' => 'persană veche',
'phn' => 'feniciană',
'pi' => 'pali',
'pl' => 'poloneză',
'pon' => 'pohnpeiană',
+ 'prg' => 'prusacă',
'pro' => 'provensală veche',
'ps' => 'paștună',
'pt' => 'portugheză',
- 'pt-br' => 'portugheză braziliană',
- 'pt-pt' => 'portugheză europeană',
+ 'pt-pt' => 'portugheză (Europa)',
'qu' => 'quechua',
- 'quc' => 'kʼicheʼ',
+ 'quc' => 'quiché',
'raj' => 'rajasthani',
'rap' => 'rapanui',
'rar' => 'rarotongan',
'rm' => 'romanșă',
'rn' => 'kirundi',
'ro' => 'română',
- 'ro-md' => 'moldovenească',
'rof' => 'rombo',
'rom' => 'romani',
'ru' => 'rusă',
@@ -399,6 +402,7 @@ $languageNames = array(
'scn' => 'siciliană',
'sco' => 'scots',
'sd' => 'sindhi',
+ 'sdh' => 'kurdă de sud',
'se' => 'sami de nord',
'see' => 'seneca',
'seh' => 'sena',
@@ -416,9 +420,9 @@ $languageNames = array(
'sl' => 'slovenă',
'sm' => 'samoană',
'sma' => 'sami de sud',
- 'smj' => 'lule sami',
- 'smn' => 'inari sami',
- 'sms' => 'skolt sami',
+ 'smj' => 'sami lule',
+ 'smn' => 'sami inari',
+ 'sms' => 'sami skolt',
'sn' => 'shona',
'snk' => 'soninke',
'so' => 'somaleză',
@@ -436,8 +440,8 @@ $languageNames = array(
'sux' => 'sumeriană',
'sv' => 'suedeză',
'sw' => 'swahili',
+ 'sw-cd' => 'swahili (R.D. Congo)',
'swb' => 'comoreză',
- 'swc' => 'swahili Congo',
'syc' => 'siriacă clasică',
'syr' => 'siriacă',
'ta' => 'tamilă',
@@ -458,7 +462,7 @@ $languageNames = array(
'tli' => 'tlingit',
'tmh' => 'tamashek',
'tn' => 'setswana',
- 'to' => 'tonga',
+ 'to' => 'tongană',
'tog' => 'nyasa tonga',
'tpi' => 'tok pisin',
'tr' => 'turcă',
@@ -472,7 +476,7 @@ $languageNames = array(
'twq' => 'tasawaq',
'ty' => 'tahitiană',
'tyv' => 'tuvană',
- 'tzm' => 'tamazight central marocană',
+ 'tzm' => 'tamazight din Altasul Central',
'udm' => 'udmurt',
'ug' => 'uigură',
'uga' => 'ugaritică',
@@ -485,14 +489,16 @@ $languageNames = array(
've' => 'venda',
'vi' => 'vietnameză',
'vo' => 'volapuk',
- 'vot' => 'votic',
+ 'vot' => 'votică',
'vun' => 'vunjo',
'wa' => 'valonă',
'wae' => 'walser',
- 'wal' => 'walamo',
+ 'wal' => 'wolaita',
'war' => 'waray',
'was' => 'washo',
+ 'wbp' => 'warlpiri',
'wo' => 'wolof',
+ 'wuu' => 'chineză wu',
'xal' => 'calmucă',
'xh' => 'xhosa',
'xog' => 'soga',
@@ -515,9 +521,9 @@ $languageNames = array(
'zun' => 'zuni',
'zxx' => 'fară conținut lingvistic',
'zza' => 'zaza',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'ADP' => 'pesetă andorrană',
'AED' => 'dirham din Emiratele Arabe Unite',
'AFN' => 'afgani afgan',
@@ -534,7 +540,7 @@ $currencyNames = array(
'AZN' => 'manat azer',
'BAD' => 'dinar Bosnia-Herțegovina (1992–1994)',
'BAM' => 'marcă convertibilă din Bosnia și Herțegovina',
- 'BBD' => 'dolar Barbados',
+ 'BBD' => 'dolar din Barbados',
'BDT' => 'taka din Bangladesh',
'BEC' => 'franc belgian (convertibil)',
'BEF' => 'franc belgian',
@@ -554,12 +560,14 @@ $currencyNames = array(
'BTN' => 'ngultrum din Bhutan',
'BUK' => 'kyat birman',
'BWP' => 'pula Botswana',
- 'BYR' => 'rublă belarusă',
+ 'BYN' => 'rublă belarusă',
+ 'BYR' => 'rublă belarusă (2000–2016)',
'BZD' => 'dolar din Belize',
'CAD' => 'dolar canadian',
'CDF' => 'franc congolez',
'CHF' => 'franc elvețian',
'CLP' => 'peso chilian',
+ 'CNH' => 'yuan chinezesc (offshore)',
'CNY' => 'yuan chinezesc',
'COP' => 'peso columbian',
'CRC' => 'colon costarican',
@@ -628,7 +636,7 @@ $currencyNames = array(
'KZT' => 'tenge kazahă',
'LAK' => 'kip laoțian',
'LBP' => 'liră libaneză',
- 'LKR' => 'rupie din Sri Lanka',
+ 'LKR' => 'rupie srilankeză',
'LRD' => 'dolar liberian',
'LSL' => 'loti lesothian',
'LTL' => 'litu lituanian',
@@ -648,7 +656,8 @@ $currencyNames = array(
'MMK' => 'kyat din Myanmar',
'MNT' => 'tugrik mongol',
'MOP' => 'pataca din Macao',
- 'MRO' => 'ouguiya mauritană',
+ 'MRO' => 'ouguiya mauritană (1973–2017)',
+ 'MRU' => 'ouguiya mauritană',
'MTL' => 'liră malteză',
'MUR' => 'rupie mauritiană',
'MVR' => 'rufiyaa maldiviană',
@@ -670,7 +679,7 @@ $currencyNames = array(
'OMR' => 'rial omanez',
'PAB' => 'balboa panameză',
'PEI' => 'inti peruvian',
- 'PEN' => 'sol nou peruvian',
+ 'PEN' => 'sol peruvian',
'PES' => 'sol peruvian (1863–1965)',
'PGK' => 'kina din Papua-Noua Guinee',
'PHP' => 'peso filipinez',
@@ -692,7 +701,7 @@ $currencyNames = array(
'SDG' => 'liră sudaneză',
'SDP' => 'liră sudaneză (1957–1998)',
'SEK' => 'coroană suedeză',
- 'SGD' => 'dolar Singapore',
+ 'SGD' => 'dolar singaporez',
'SHP' => 'liră Insula Sf. Elena',
'SIT' => 'tolar sloven',
'SKK' => 'coroană slovacă',
@@ -700,8 +709,9 @@ $currencyNames = array(
'SOS' => 'șiling somalez',
'SRD' => 'dolar surinamez',
'SRG' => 'gulden Surinam',
- 'SSP' => 'liră sud-sudaneză',
- 'STD' => 'dobra Sao Tome și Principe',
+ 'SSP' => 'liră din Sudanul de Sud',
+ 'STD' => 'dobra Sao Tome și Principe (1977–2017)',
+ 'STN' => 'dobra Sao Tome și Principe',
'SUR' => 'rublă sovietică',
'SVC' => 'colon El Salvador',
'SYP' => 'liră siriană',
@@ -729,7 +739,8 @@ $currencyNames = array(
'UYU' => 'peso uruguayan',
'UZS' => 'sum Uzbekistan',
'VEB' => 'bolivar Venezuela (1871–2008)',
- 'VEF' => 'bolivar venezuelean',
+ 'VEF' => 'bolivar venezuelean (2008–2018)',
+ 'VES' => 'bolivar venezuelean',
'VND' => 'dong vietnamez',
'VUV' => 'vatu din Vanuatu',
'WST' => 'tala samoană',
@@ -764,9 +775,9 @@ $currencyNames = array(
'ZWD' => 'dolar Zimbabwe (1980–2008)',
'ZWL' => 'dolar Zimbabwe (2009)',
'ZWR' => 'dolar Zimbabwe (2008)',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'AED' => 'AED',
'AFN' => 'AFN',
'ALL' => 'ALL',
@@ -790,12 +801,14 @@ $currencySymbols = array(
'BSD' => 'BSD',
'BTN' => 'BTN',
'BWP' => 'BWP',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CAD',
'CDF' => 'CDF',
'CHF' => 'CHF',
'CLP' => 'CLP',
+ 'CNH' => 'CNH',
'CNY' => 'CNY',
'COP' => 'COP',
'CRC' => 'CRC',
@@ -859,6 +872,7 @@ $currencySymbols = array(
'MNT' => 'MNT',
'MOP' => 'MOP',
'MRO' => 'MRO',
+ 'MRU' => 'MRU',
'MUR' => 'MUR',
'MVR' => 'MVR',
'MWK' => 'MWK',
@@ -896,6 +910,7 @@ $currencySymbols = array(
'SRD' => 'SRD',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'STN',
'SYP' => 'SYP',
'SZL' => 'SZL',
'THB' => 'THB',
@@ -913,6 +928,7 @@ $currencySymbols = array(
'UYU' => 'UYU',
'UZS' => 'UZS',
'VEF' => 'VEF',
+ 'VES' => 'VES',
'VND' => 'VND',
'VUV' => 'VUV',
'WST' => 'WST',
@@ -923,9 +939,9 @@ $currencySymbols = array(
'YER' => 'YER',
'ZAR' => 'ZAR',
'ZMW' => 'ZMW',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'Insula Ascension',
'AD' => 'Andorra',
'AE' => 'Emiratele Arabe Unite',
@@ -934,7 +950,6 @@ $countryNames = array(
'AI' => 'Anguilla',
'AL' => 'Albania',
'AM' => 'Armenia',
- 'AN' => 'Antilele Olandeze',
'AO' => 'Angola',
'AQ' => 'Antarctica',
'AR' => 'Argentina',
@@ -953,7 +968,7 @@ $countryNames = array(
'BH' => 'Bahrain',
'BI' => 'Burundi',
'BJ' => 'Benin',
- 'BL' => 'Sfântul Bartolomeu',
+ 'BL' => 'Saint-Barthélemy',
'BM' => 'Bermuda',
'BN' => 'Brunei',
'BO' => 'Bolivia',
@@ -984,7 +999,7 @@ $countryNames = array(
'CW' => 'Curaçao',
'CX' => 'Insula Christmas',
'CY' => 'Cipru',
- 'CZ' => 'Republica Cehă',
+ 'CZ' => 'Cehia',
'DE' => 'Germania',
'DG' => 'Diego Garcia',
'DJ' => 'Djibouti',
@@ -1001,6 +1016,7 @@ $countryNames = array(
'ES' => 'Spania',
'ET' => 'Etiopia',
'EU' => 'Uniunea Europeană',
+ 'EZ' => 'Zona euro',
'FI' => 'Finlanda',
'FJ' => 'Fiji',
'FK' => 'Insulele Falkland',
@@ -1076,7 +1092,7 @@ $countryNames = array(
'MF' => 'Sfântul Martin',
'MG' => 'Madagascar',
'MH' => 'Insulele Marshall',
- 'MK' => 'Macedonia',
+ 'MK' => 'Republica Macedonia',
'ML' => 'Mali',
'MM' => 'Myanmar (Birmania)',
'MN' => 'Mongolia',
@@ -1090,12 +1106,12 @@ $countryNames = array(
'MV' => 'Maldive',
'MW' => 'Malawi',
'MX' => 'Mexic',
- 'MY' => 'Malaezia',
+ 'MY' => 'Malaysia',
'MZ' => 'Mozambic',
'NA' => 'Namibia',
'NC' => 'Noua Caledonie',
'NE' => 'Niger',
- 'NF' => 'Insulele Norfolk',
+ 'NF' => 'Insula Norfolk',
'NG' => 'Nigeria',
'NI' => 'Nicaragua',
'NL' => 'Țările de Jos',
@@ -1140,7 +1156,7 @@ $countryNames = array(
'SM' => 'San Marino',
'SN' => 'Senegal',
'SO' => 'Somalia',
- 'SR' => 'Surinam',
+ 'SR' => 'Suriname',
'SS' => 'Sudanul de Sud',
'ST' => 'Sao Tome și Principe',
'SV' => 'El Salvador',
@@ -1155,7 +1171,7 @@ $countryNames = array(
'TH' => 'Thailanda',
'TJ' => 'Tadjikistan',
'TK' => 'Tokelau',
- 'TL' => 'Timorul de Est',
+ 'TL' => 'Timor-Leste',
'TM' => 'Turkmenistan',
'TN' => 'Tunisia',
'TO' => 'Tonga',
@@ -1167,14 +1183,15 @@ $countryNames = array(
'UA' => 'Ucraina',
'UG' => 'Uganda',
'UM' => 'Insulele Îndepărtate ale S.U.A.',
+ 'UN' => 'ONU',
'US' => 'S.U.A.',
'UY' => 'Uruguay',
'UZ' => 'Uzbekistan',
'VA' => 'Statul Cetății Vaticanului',
- 'VC' => 'Saint Vincent și Grenadine',
+ 'VC' => 'Saint Vincent și Grenadinele',
'VE' => 'Venezuela',
'VG' => 'Insulele Virgine Britanice',
- 'VI' => 'Insulele Virgine S.U.A.',
+ 'VI' => 'Insulele Virgine Americane',
'VN' => 'Vietnam',
'VU' => 'Vanuatu',
'WF' => 'Wallis și Futuna',
@@ -1185,9 +1202,12 @@ $countryNames = array(
'ZA' => 'Africa de Sud',
'ZM' => 'Zambia',
'ZW' => 'Zimbabwe',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-few' => '{0} secole',
+ 'century-one' => '{0} secol',
+ 'century-other' => '{0} de secole',
'day-few' => '{0} zile',
'day-future-few' => 'peste {0} zile',
'day-future-one' => 'peste {0} zi',
@@ -1205,10 +1225,28 @@ $timeUnits = array(
'day-past-other' => 'acum {0} de zile',
'day-short-future-few' => 'peste {0} zile',
'day-short-future-one' => 'peste {0} zi',
- 'day-short-future-other' => 'peste {0} zile',
+ 'day-short-future-other' => 'peste {0} de zile',
'day-short-past-few' => 'acum {0} zile',
'day-short-past-one' => 'acum {0} zi',
- 'day-short-past-other' => 'acum {0} zile',
+ 'day-short-past-other' => 'acum {0} de zile',
+ 'fri-future-few' => 'vineri, peste {0} săptămâni',
+ 'fri-future-one' => 'vineri, peste {0} săptămână',
+ 'fri-future-other' => 'vineri, peste {0} de săptămâni',
+ 'fri-narrow-future-few' => 'vi. +{0} săpt.',
+ 'fri-narrow-future-one' => 'vi. +{0} săpt.',
+ 'fri-narrow-future-other' => 'vi. +{0} săpt.',
+ 'fri-narrow-past-few' => 'vi. -{0} săpt.',
+ 'fri-narrow-past-one' => 'vi. -{0} săpt.',
+ 'fri-narrow-past-other' => 'vi. -{0} săpt.',
+ 'fri-past-few' => 'vineri, acum {0} săptămâni',
+ 'fri-past-one' => 'vineri, acum {0} săptămână',
+ 'fri-past-other' => 'vineri, acum {0} de săptămâni',
+ 'fri-short-future-few' => 'vineri, peste {0} săpt.',
+ 'fri-short-future-one' => 'vineri, peste {0} săpt.',
+ 'fri-short-future-other' => 'vineri, peste {0} săpt.',
+ 'fri-short-past-few' => 'vineri, acum {0} săpt.',
+ 'fri-short-past-one' => 'vineri, acum {0} săpt.',
+ 'fri-short-past-other' => 'vineri, acum {0} săpt.',
'hour-few' => '{0} ore',
'hour-future-few' => 'peste {0} ore',
'hour-future-one' => 'peste {0} oră',
@@ -1257,6 +1295,24 @@ $timeUnits = array(
'minute-short-past-few' => 'acum {0} min.',
'minute-short-past-one' => 'acum {0} min.',
'minute-short-past-other' => 'acum {0} min.',
+ 'mon-future-few' => 'luni, peste {0} săptămâni',
+ 'mon-future-one' => 'luni, peste {0} săptămână',
+ 'mon-future-other' => 'luni, peste {0} de săptămâni',
+ 'mon-narrow-future-few' => 'lu. +{0} săpt.',
+ 'mon-narrow-future-one' => 'lu. +{0} săpt.',
+ 'mon-narrow-future-other' => 'lu. +{0} săpt.',
+ 'mon-narrow-past-few' => 'lu. -{0} săpt.',
+ 'mon-narrow-past-one' => 'lu. -{0} săpt.',
+ 'mon-narrow-past-other' => 'lu. -{0} săpt.',
+ 'mon-past-few' => 'luni, acum {0} săptămâni',
+ 'mon-past-one' => 'luni, acum {0} săptămână',
+ 'mon-past-other' => 'luni, acum {0} de săptămâni',
+ 'mon-short-future-few' => 'luni, peste {0} săpt.',
+ 'mon-short-future-one' => 'luni, peste {0} săpt.',
+ 'mon-short-future-other' => 'luni, peste {0} săpt.',
+ 'mon-short-past-few' => 'luni, acum {0} săpt.',
+ 'mon-short-past-one' => 'luni, acum {0} săpt.',
+ 'mon-short-past-other' => 'luni, acum {0} săpt.',
'month-few' => '{0} luni',
'month-future-few' => 'peste {0} luni',
'month-future-one' => 'peste {0} lună',
@@ -1287,9 +1343,9 @@ $timeUnits = array(
'quarter-narrow-future-few' => '+{0} trim.',
'quarter-narrow-future-one' => '+{0} trim.',
'quarter-narrow-future-other' => '+{0} trim.',
- 'quarter-narrow-past-few' => '+{0} trim.',
- 'quarter-narrow-past-one' => '+{0} trim.',
- 'quarter-narrow-past-other' => '+{0} trim.',
+ 'quarter-narrow-past-few' => '-{0} trim.',
+ 'quarter-narrow-past-one' => '-{0} trim.',
+ 'quarter-narrow-past-other' => '-{0} trim.',
'quarter-past-few' => 'acum {0} trimestre',
'quarter-past-one' => 'acum {0} trimestru',
'quarter-past-other' => 'acum {0} de trimestre',
@@ -1299,6 +1355,24 @@ $timeUnits = array(
'quarter-short-past-few' => 'acum {0} trim.',
'quarter-short-past-one' => 'acum {0} trim.',
'quarter-short-past-other' => 'acum {0} trim.',
+ 'sat-future-few' => 'sâmbătă, peste {0} săptămâni',
+ 'sat-future-one' => 'sâmbătă, peste {0} săptămână',
+ 'sat-future-other' => 'sâmbătă, peste {0} de săptămâni',
+ 'sat-narrow-future-few' => 'sâ. +{0} săpt.',
+ 'sat-narrow-future-one' => 'sâ. +{0} săpt.',
+ 'sat-narrow-future-other' => 'sâ. +{0} săpt.',
+ 'sat-narrow-past-few' => 'sâ. -{0} săpt.',
+ 'sat-narrow-past-one' => 'sâ. -{0} săpt.',
+ 'sat-narrow-past-other' => 'sâ. -{0} săpt.',
+ 'sat-past-few' => 'sâmbătă, acum {0} săptămâni',
+ 'sat-past-one' => 'sâmbătă, acum {0} săptămână',
+ 'sat-past-other' => 'sâmbătă, acum {0} de săptămâni',
+ 'sat-short-future-few' => 'sâmbătă, peste {0} săpt.',
+ 'sat-short-future-one' => 'sâmbătă, peste {0} săpt.',
+ 'sat-short-future-other' => 'sâmbătă, peste {0} săpt.',
+ 'sat-short-past-few' => 'sâmbătă, acum {0} săpt.',
+ 'sat-short-past-one' => 'sâmbătă, acum {0} săpt.',
+ 'sat-short-past-other' => 'sâmbătă, acum {0} săpt.',
'second-few' => '{0} secunde',
'second-future-few' => 'peste {0} secunde',
'second-future-one' => 'peste {0} secundă',
@@ -1320,6 +1394,78 @@ $timeUnits = array(
'second-short-past-few' => 'acum {0} sec.',
'second-short-past-one' => 'acum {0} sec.',
'second-short-past-other' => 'acum {0} sec.',
+ 'sun-future-few' => 'duminică, peste {0} săptămâni',
+ 'sun-future-one' => 'duminică, peste {0} săptămână',
+ 'sun-future-other' => 'duminică, peste {0} de săptămâni',
+ 'sun-narrow-future-few' => 'du. +{0} săpt.',
+ 'sun-narrow-future-one' => 'du. +{0} săpt.',
+ 'sun-narrow-future-other' => 'du. +{0} săpt.',
+ 'sun-narrow-past-few' => 'du. -{0} săpt.',
+ 'sun-narrow-past-one' => 'du. -{0} săpt.',
+ 'sun-narrow-past-other' => 'du. -{0} săpt.',
+ 'sun-past-few' => 'duminică, acum {0} săptămâni',
+ 'sun-past-one' => 'duminică, acum {0} săptămână',
+ 'sun-past-other' => 'duminică, acum {0} de săptămâni',
+ 'sun-short-future-few' => 'duminică, peste {0} săpt.',
+ 'sun-short-future-one' => 'duminică, peste {0} săpt.',
+ 'sun-short-future-other' => 'duminică, peste {0} săpt.',
+ 'sun-short-past-few' => 'duminică, acum {0} săpt.',
+ 'sun-short-past-one' => 'duminică, acum {0} săpt.',
+ 'sun-short-past-other' => 'duminică, acum {0} săpt.',
+ 'thu-future-few' => 'joi, peste {0} săptămâni',
+ 'thu-future-one' => 'joi, peste {0} săptămână',
+ 'thu-future-other' => 'joi, peste {0} de săptămâni',
+ 'thu-narrow-future-few' => 'jo. +{0} săpt.',
+ 'thu-narrow-future-one' => 'jo. +{0} săpt.',
+ 'thu-narrow-future-other' => 'jo. +{0} săpt.',
+ 'thu-narrow-past-few' => 'jo. -{0} săpt.',
+ 'thu-narrow-past-one' => 'jo. -{0} săpt.',
+ 'thu-narrow-past-other' => 'jo. -{0} săpt.',
+ 'thu-past-few' => 'joi, acum {0} săptămâni',
+ 'thu-past-one' => 'joi, acum {0} săptămână',
+ 'thu-past-other' => 'joi, acum {0} de săptămâni',
+ 'thu-short-future-few' => 'joi, peste {0} săpt.',
+ 'thu-short-future-one' => 'joi, peste {0} săpt.',
+ 'thu-short-future-other' => 'joi, peste {0} săpt.',
+ 'thu-short-past-few' => 'joi, acum {0} săpt.',
+ 'thu-short-past-one' => 'joi, acum {0} săpt.',
+ 'thu-short-past-other' => 'joi, acum {0} săpt.',
+ 'tue-future-few' => 'marți, peste {0} săptămâni',
+ 'tue-future-one' => 'marți, peste {0} săptămână',
+ 'tue-future-other' => 'marți, peste {0} de săptămâni',
+ 'tue-narrow-future-few' => 'ma. +{0} săpt.',
+ 'tue-narrow-future-one' => 'ma. +{0} săpt.',
+ 'tue-narrow-future-other' => 'ma. +{0} săpt.',
+ 'tue-narrow-past-few' => 'ma. -{0} săpt.',
+ 'tue-narrow-past-one' => 'ma. -{0} săpt.',
+ 'tue-narrow-past-other' => 'ma. -{0} săpt.',
+ 'tue-past-few' => 'marți, acum {0} săptămâni',
+ 'tue-past-one' => 'marți, acum {0} săptămână',
+ 'tue-past-other' => 'marți, acum {0} de săptămâni',
+ 'tue-short-future-few' => 'marți, peste {0} săpt.',
+ 'tue-short-future-one' => 'marți, peste {0} săpt.',
+ 'tue-short-future-other' => 'marți, peste {0} săpt.',
+ 'tue-short-past-few' => 'marți, acum {0} săpt.',
+ 'tue-short-past-one' => 'marți, acum {0} săpt.',
+ 'tue-short-past-other' => 'marți, acum {0} săpt.',
+ 'wed-future-few' => 'miercuri, peste {0} săptămâni',
+ 'wed-future-one' => 'miercuri, peste {0} săptămână',
+ 'wed-future-other' => 'miercuri, peste {0} de săptămâni',
+ 'wed-narrow-future-few' => 'mi. +{0} săpt.',
+ 'wed-narrow-future-one' => 'mi. +{0} săpt.',
+ 'wed-narrow-future-other' => 'mi. +{0} săpt.',
+ 'wed-narrow-past-few' => 'mi. -{0} săpt.',
+ 'wed-narrow-past-one' => 'mi. -{0} săpt.',
+ 'wed-narrow-past-other' => 'mi. -{0} săpt.',
+ 'wed-past-few' => 'miercuri, acum {0} săptămâni',
+ 'wed-past-one' => 'miercuri, acum {0} săptămână',
+ 'wed-past-other' => 'miercuri, acum {0} de săptămâni',
+ 'wed-short-future-few' => 'miercuri, peste {0} săpt.',
+ 'wed-short-future-one' => 'miercuri, peste {0} săpt.',
+ 'wed-short-future-other' => 'miercuri, peste {0} săpt.',
+ 'wed-short-past-few' => 'miercuri, acum {0} săpt.',
+ 'wed-short-past-one' => 'miercuri, acum {0} săpt.',
+ 'wed-short-past-other' => 'miercuri, acum {0} săpt.',
'week-few' => '{0} săptămâni',
'week-future-few' => 'peste {0} săptămâni',
'week-future-one' => 'peste {0} săptămână',
@@ -1358,8 +1504,8 @@ $timeUnits = array(
'year-past-other' => 'acum {0} de ani',
'year-short-future-few' => 'peste {0} ani',
'year-short-future-one' => 'peste {0} an',
- 'year-short-future-other' => 'peste {0} ani',
+ 'year-short-future-other' => 'peste {0} de ani',
'year-short-past-few' => 'acum {0} ani',
'year-short-past-one' => 'acum {0} an',
'year-short-past-other' => 'acum {0} de ani',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesRu.php b/MLEB/cldr/CldrNames/CldrNamesRu.php
index 38fc4776..64f3d283 100644
--- a/MLEB/cldr/CldrNames/CldrNamesRu.php
+++ b/MLEB/cldr/CldrNames/CldrNamesRu.php
@@ -1,7 +1,7 @@
<?php
-$languageNames = array(
- 'aa' => 'афар',
+$languageNames = [
+ 'aa' => 'афарский',
'ab' => 'абхазский',
'ace' => 'ачехский',
'ach' => 'ачоли',
@@ -10,8 +10,8 @@ $languageNames = array(
'ae' => 'авестийский',
'af' => 'африкаанс',
'afh' => 'африхили',
- 'agq' => 'агхем',
- 'ain' => 'айну',
+ 'agq' => 'агем',
+ 'ain' => 'айнский',
'ak' => 'акан',
'akk' => 'аккадский',
'ale' => 'алеутский',
@@ -21,13 +21,14 @@ $languageNames = array(
'ang' => 'староанглийский',
'anp' => 'ангика',
'ar' => 'арабский',
- 'ar-001' => 'арабский литературный',
+ 'ar-001' => 'литературный арабский',
'arc' => 'арамейский',
- 'arn' => 'арауканский',
+ 'arn' => 'мапуче',
'arp' => 'арапахо',
+ 'ars' => 'недждийский арабский',
'arw' => 'аравакский',
'as' => 'ассамский',
- 'asa' => 'аса',
+ 'asa' => 'асу',
'ast' => 'астурийский',
'av' => 'аварский',
'awa' => 'авадхи',
@@ -38,20 +39,21 @@ $languageNames = array(
'ban' => 'балийский',
'bas' => 'баса',
'bax' => 'бамум',
- 'bbj' => 'гхомала',
+ 'bbj' => 'гомала',
'be' => 'белорусский',
'bej' => 'беджа',
'bem' => 'бемба',
'bez' => 'бена',
'bfd' => 'бафут',
'bg' => 'болгарский',
+ 'bgn' => 'западный белуджский',
'bho' => 'бходжпури',
'bi' => 'бислама',
'bik' => 'бикольский',
'bin' => 'бини',
'bkm' => 'ком',
'bla' => 'сиксика',
- 'bm' => 'бамбарийский',
+ 'bm' => 'бамбара',
'bn' => 'бенгальский',
'bo' => 'тибетский',
'br' => 'бретонский',
@@ -62,7 +64,7 @@ $languageNames = array(
'bua' => 'бурятский',
'bug' => 'бугийский',
'bum' => 'булу',
- 'byn' => 'билин (блин)',
+ 'byn' => 'билин',
'byv' => 'медумба',
'ca' => 'каталанский',
'cad' => 'каддо',
@@ -70,49 +72,50 @@ $languageNames = array(
'cay' => 'кайюга',
'cch' => 'атсам',
'ce' => 'чеченский',
- 'ceb' => 'кебуано',
- 'cgg' => 'чига',
+ 'ceb' => 'себуано',
+ 'cgg' => 'кига',
'ch' => 'чаморро',
'chb' => 'чибча',
'chg' => 'чагатайский',
'chk' => 'чукотский',
- 'chm' => 'марийский (черемисский)',
+ 'chm' => 'марийский',
'chn' => 'чинук жаргон',
- 'cho' => 'чоктав',
- 'chp' => 'чипевайян',
+ 'cho' => 'чоктавский',
+ 'chp' => 'чипевьян',
'chr' => 'чероки',
- 'chy' => 'чейенн',
- 'ckb' => 'сорани курдский',
+ 'chy' => 'шайенский',
+ 'ckb' => 'сорани',
'co' => 'корсиканский',
'cop' => 'коптский',
- 'cr' => 'криийский',
+ 'cr' => 'кри',
'crh' => 'крымско-татарский',
+ 'crs' => 'сейшельский креольский',
'cs' => 'чешский',
- 'csb' => 'кашубианский',
+ 'csb' => 'кашубский',
'cu' => 'церковнославянский',
'cv' => 'чувашский',
'cy' => 'валлийский',
'da' => 'датский',
'dak' => 'дакота',
- 'dar' => 'даргва',
+ 'dar' => 'даргинский',
'dav' => 'таита',
'de' => 'немецкий',
'de-at' => 'австрийский немецкий',
- 'de-ch' => 'швейцарский верхненемецкий',
+ 'de-ch' => 'литературный швейцарский немецкий',
'del' => 'делаварский',
'den' => 'слейви',
'dgr' => 'догриб',
'din' => 'динка',
- 'dje' => 'зарма',
+ 'dje' => 'джерма',
'doi' => 'догри',
'dsb' => 'нижнелужицкий',
'dua' => 'дуала',
'dum' => 'средненидерландский',
'dv' => 'мальдивский',
- 'dyo' => 'дьола-фоньи',
- 'dyu' => 'диула (дьюла)',
+ 'dyo' => 'диола-фоньи',
+ 'dyu' => 'диула',
'dz' => 'дзонг-кэ',
- 'dzg' => 'дазагский',
+ 'dzg' => 'даза',
'ebu' => 'эмбу',
'ee' => 'эве',
'efi' => 'эфик',
@@ -130,6 +133,7 @@ $languageNames = array(
'es' => 'испанский',
'es-419' => 'латиноамериканский испанский',
'es-es' => 'европейский испанский',
+ 'es-mx' => 'мексиканский испанский',
'et' => 'эстонский',
'eu' => 'баскский',
'ewo' => 'эвондо',
@@ -145,20 +149,22 @@ $languageNames = array(
'fr' => 'французский',
'fr-ca' => 'канадский французский',
'fr-ch' => 'швейцарский французский',
+ 'frc' => 'каджунский французский',
'frm' => 'среднефранцузский',
'fro' => 'старофранцузский',
- 'frr' => 'фризский северный',
+ 'frr' => 'северный фризский',
'frs' => 'восточный фризский',
'fur' => 'фриульский',
- 'fy' => 'западно-фризский',
+ 'fy' => 'западнофризский',
'ga' => 'ирландский',
'gaa' => 'га',
'gag' => 'гагаузский',
+ 'gan' => 'гань',
'gay' => 'гайо',
'gba' => 'гбая',
'gd' => 'гэльский',
'gez' => 'геэз',
- 'gil' => 'гильбертский',
+ 'gil' => 'гилбертский',
'gl' => 'галисийский',
'gmh' => 'средневерхненемецкий',
'gn' => 'гуарани',
@@ -175,6 +181,7 @@ $languageNames = array(
'gwi' => 'гвичин',
'ha' => 'хауса',
'hai' => 'хайда',
+ 'hak' => 'хакка',
'haw' => 'гавайский',
'he' => 'иврит',
'hi' => 'хинди',
@@ -184,6 +191,7 @@ $languageNames = array(
'ho' => 'хиримоту',
'hr' => 'хорватский',
'hsb' => 'верхнелужицкий',
+ 'hsn' => 'сян',
'ht' => 'гаитянский',
'hu' => 'венгерский',
'hup' => 'хупа',
@@ -195,7 +203,7 @@ $languageNames = array(
'id' => 'индонезийский',
'ie' => 'интерлингве',
'ig' => 'игбо',
- 'ii' => 'сычуань',
+ 'ii' => 'носу',
'ik' => 'инупиак',
'ilo' => 'илоко',
'inh' => 'ингушский',
@@ -234,7 +242,7 @@ $languageNames = array(
'kl' => 'гренландский',
'kln' => 'календжин',
'km' => 'кхмерский',
- 'kmb' => 'кимбундийский',
+ 'kmb' => 'кимбунду',
'kn' => 'каннада',
'ko' => 'корейский',
'koi' => 'коми-пермяцкий',
@@ -248,16 +256,16 @@ $languageNames = array(
'ks' => 'кашмири',
'ksb' => 'шамбала',
'ksf' => 'бафия',
- 'ksh' => 'кёльш',
+ 'ksh' => 'кёльнский',
'ku' => 'курдский',
'kum' => 'кумыкский',
'kut' => 'кутенаи',
'kv' => 'коми',
- 'kw' => 'корнийский',
+ 'kw' => 'корнский',
'ky' => 'киргизский',
'la' => 'латинский',
'lad' => 'ладино',
- 'lag' => 'ланги',
+ 'lag' => 'ланго',
'lah' => 'лахнда',
'lam' => 'ламба',
'lb' => 'люксембургский',
@@ -268,14 +276,16 @@ $languageNames = array(
'ln' => 'лингала',
'lo' => 'лаосский',
'lol' => 'монго',
+ 'lou' => 'луизианский креольский',
'loz' => 'лози',
+ 'lrc' => 'севернолурский',
'lt' => 'литовский',
'lu' => 'луба-катанга',
'lua' => 'луба-лулуа',
'lui' => 'луисеньо',
'lun' => 'лунда',
- 'luo' => 'луо (Кения и Танзания)',
- 'lus' => 'лушай',
+ 'luo' => 'луо',
+ 'lus' => 'мизо',
'luy' => 'лухья',
'lv' => 'латышский',
'mad' => 'мадурский',
@@ -285,7 +295,7 @@ $languageNames = array(
'mak' => 'макассарский',
'man' => 'мандинго',
'mas' => 'масаи',
- 'mde' => 'мабанский',
+ 'mde' => 'маба',
'mdf' => 'мокшанский',
'mdr' => 'мандарский',
'men' => 'менде',
@@ -310,38 +320,41 @@ $languageNames = array(
'ms' => 'малайский',
'mt' => 'мальтийский',
'mua' => 'мунданг',
- 'mul' => 'несколько языков',
+ 'mul' => 'языки разных семей',
'mus' => 'крик',
- 'mwl' => 'мирандийский',
+ 'mwl' => 'мирандский',
'mwr' => 'марвари',
'my' => 'бирманский',
'mye' => 'миене',
- 'myv' => 'эрзя',
+ 'myv' => 'эрзянский',
+ 'mzn' => 'мазендеранский',
'na' => 'науру',
+ 'nan' => 'миньнань',
'nap' => 'неаполитанский',
'naq' => 'нама',
'nb' => 'норвежский букмол',
- 'nd' => 'северный ндебели',
+ 'nd' => 'северный ндебеле',
'nds' => 'нижнегерманский',
+ 'nds-nl' => 'нижнесаксонский',
'ne' => 'непальский',
'new' => 'неварский',
'ng' => 'ндонга',
'nia' => 'ниас',
'niu' => 'ниуэ',
- 'nl' => 'голландский',
+ 'nl' => 'нидерландский',
'nl-be' => 'фламандский',
'nmg' => 'квасио',
- 'nn' => 'норвежский нюнорск',
+ 'nn' => 'нюнорск',
'nnh' => 'нгиембунд',
'no' => 'норвежский',
'nog' => 'ногайский',
'non' => 'старонорвежский',
'nqo' => 'нко',
- 'nr' => 'ндебели южный',
- 'nso' => 'сото северный',
+ 'nr' => 'южный ндебеле',
+ 'nso' => 'северный сото',
'nus' => 'нуэр',
'nv' => 'навахо',
- 'nwc' => 'невари (классический)',
+ 'nwc' => 'классический невари',
'ny' => 'ньянджа',
'nym' => 'ньямвези',
'nyn' => 'ньянколе',
@@ -360,11 +373,13 @@ $languageNames = array(
'pam' => 'пампанга',
'pap' => 'папьяменто',
'pau' => 'палау',
+ 'pcm' => 'нигерийско-креольский',
'peo' => 'староперсидский',
'phn' => 'финикийский',
'pi' => 'пали',
'pl' => 'польский',
'pon' => 'понапе',
+ 'prg' => 'прусский',
'pro' => 'старопровансальский',
'ps' => 'пушту',
'pt' => 'португальский',
@@ -373,8 +388,8 @@ $languageNames = array(
'qu' => 'кечуа',
'quc' => 'киче',
'raj' => 'раджастхани',
- 'rap' => 'рапануи',
- 'rar' => 'раротонганский',
+ 'rap' => 'рапануйский',
+ 'rar' => 'раротонга',
'rm' => 'романшский',
'rn' => 'рунди',
'ro' => 'румынский',
@@ -387,10 +402,10 @@ $languageNames = array(
'rwk' => 'руанда',
'sa' => 'санскрит',
'sad' => 'сандаве',
- 'sah' => 'якутский',
+ 'sah' => 'саха',
'sam' => 'самаритянский арамейский',
'saq' => 'самбуру',
- 'sas' => 'сасаки',
+ 'sas' => 'сасакский',
'sat' => 'сантали',
'sba' => 'нгамбайский',
'sbp' => 'сангу',
@@ -398,6 +413,7 @@ $languageNames = array(
'scn' => 'сицилийский',
'sco' => 'шотландский',
'sd' => 'синдхи',
+ 'sdh' => 'южнокурдский',
'se' => 'северносаамский',
'see' => 'сенека',
'seh' => 'сена',
@@ -406,37 +422,37 @@ $languageNames = array(
'sg' => 'санго',
'sga' => 'староирландский',
'sh' => 'сербскохорватский',
- 'shi' => 'тахелхит',
+ 'shi' => 'ташельхит',
'shn' => 'шанский',
- 'shu' => 'чадский арабс',
+ 'shu' => 'чадский арабский',
'si' => 'сингальский',
'sid' => 'сидама',
'sk' => 'словацкий',
'sl' => 'словенский',
'sm' => 'самоанский',
- 'sma' => 'саамский (южный)',
+ 'sma' => 'южносаамский',
'smj' => 'луле-саамский',
'smn' => 'инари-саамский',
- 'sms' => 'скольт-саамский',
+ 'sms' => 'колтта-саамский',
'sn' => 'шона',
'snk' => 'сонинке',
'so' => 'сомали',
'sog' => 'согдийский',
'sq' => 'албанский',
'sr' => 'сербский',
- 'srn' => 'сранан тонго',
+ 'srn' => 'сранан-тонго',
'srr' => 'серер',
'ss' => 'свази',
'ssy' => 'сахо',
- 'st' => 'сото южный',
+ 'st' => 'южный сото',
'su' => 'сунданский',
'suk' => 'сукума',
'sus' => 'сусу',
'sux' => 'шумерский',
'sv' => 'шведский',
'sw' => 'суахили',
+ 'sw-cd' => 'конголезский суахили',
'swb' => 'коморский',
- 'swc' => 'конголезский суахили',
'syc' => 'классический сирийский',
'syr' => 'сирийский',
'ta' => 'тамильский',
@@ -458,11 +474,11 @@ $languageNames = array(
'tmh' => 'тамашек',
'tn' => 'тсвана',
'to' => 'тонганский',
- 'tog' => 'ньяса (тонга)',
+ 'tog' => 'тонга',
'tpi' => 'ток-писин',
'tr' => 'турецкий',
'tru' => 'туройо',
- 'trv' => 'тароко',
+ 'trv' => 'седекский',
'ts' => 'тсонга',
'tsi' => 'цимшиан',
'tt' => 'татарский',
@@ -488,17 +504,19 @@ $languageNames = array(
'vot' => 'водский',
'vun' => 'вунджо',
'wa' => 'валлонский',
- 'wae' => 'валисский',
+ 'wae' => 'валлисский',
'wal' => 'воламо',
'war' => 'варай',
'was' => 'вашо',
+ 'wbp' => 'вальбири',
'wo' => 'волоф',
+ 'wuu' => 'ву',
'xal' => 'калмыцкий',
'xh' => 'коса',
'xog' => 'сога',
'yao' => 'яо',
'yap' => 'яп',
- 'yav' => 'янбан',
+ 'yav' => 'янгбен',
'ybb' => 'йемба',
'yi' => 'идиш',
'yo' => 'йоруба',
@@ -509,147 +527,149 @@ $languageNames = array(
'zen' => 'зенагский',
'zgh' => 'тамазигхтский',
'zh' => 'китайский',
- 'zh-hans' => 'упрощенный китайский',
- 'zh-hant' => 'традиционный китайский',
+ 'zh-hans' => 'китайский, упрощенное письмо',
+ 'zh-hant' => 'китайский, традиционное письмо',
'zu' => 'зулу',
'zun' => 'зуньи',
- 'zxx' => 'без языкового содержания',
+ 'zxx' => 'нет языкового материала',
'zza' => 'заза',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'ADP' => 'Андоррская песета',
- 'AED' => 'Дирхам ОАЭ',
+ 'AED' => 'дирхам ОАЭ',
'AFA' => 'Афгани (1927–2002)',
- 'AFN' => 'Афганский афгани',
- 'ALL' => 'Албанский лек',
- 'AMD' => 'Армянский драм',
- 'ANG' => 'Нидерландский антильский гульден',
- 'AOA' => 'Ангольская кванза',
+ 'AFN' => 'афгани',
+ 'ALL' => 'албанский лек',
+ 'AMD' => 'армянский драм',
+ 'ANG' => 'нидерландский антильский гульден',
+ 'AOA' => 'ангольская кванза',
'AOK' => 'Ангольская кванза (1977–1990)',
'AON' => 'Ангольская новая кванза (1990–2000)',
'AOR' => 'Ангольская кванза реюстадо (1995–1999)',
'ARA' => 'Аргентинский аустрал',
'ARP' => 'Аргентинское песо (1983–1985)',
- 'ARS' => 'Аргентинское песо',
+ 'ARS' => 'аргентинский песо',
'ATS' => 'Австрийский шиллинг',
- 'AUD' => 'Австралийский доллар',
- 'AWG' => 'Арубанский флорин',
+ 'AUD' => 'австралийский доллар',
+ 'AWG' => 'арубанский флорин',
'AZM' => 'Старый азербайджанский манат',
- 'AZN' => 'Азербайджанский манат',
+ 'AZN' => 'азербайджанский манат',
'BAD' => 'Динар Боснии и Герцеговины',
- 'BAM' => 'Конвертируемая марка Боснии и Герцеговины',
- 'BBD' => 'Барбадосский доллар',
- 'BDT' => 'Бангладешская така',
+ 'BAM' => 'конвертируемая марка Боснии и Герцеговины',
+ 'BBD' => 'барбадосский доллар',
+ 'BDT' => 'бангладешская така',
'BEC' => 'Бельгийский франк (конвертируемый)',
'BEF' => 'Бельгийский франк',
'BEL' => 'Бельгийский франк (финансовый)',
'BGL' => 'Лев',
- 'BGN' => 'Болгарский лев',
- 'BHD' => 'Бахрейнский динар',
- 'BIF' => 'Бурундийский франк',
- 'BMD' => 'Бермудский доллар',
- 'BND' => 'Брунейский доллар',
- 'BOB' => 'Боливийский боливиано',
+ 'BGN' => 'болгарский лев',
+ 'BHD' => 'бахрейнский динар',
+ 'BIF' => 'бурундийский франк',
+ 'BMD' => 'бермудский доллар',
+ 'BND' => 'брунейский доллар',
+ 'BOB' => 'боливийский боливиано',
'BOP' => 'Боливийское песо',
'BOV' => 'Боливийский мвдол',
'BRB' => 'Бразильский новый крузейро (1967–1986)',
'BRC' => 'Бразильское крузадо',
'BRE' => 'Бразильский крузейро (1990–1993)',
- 'BRL' => 'Бразильский реал',
+ 'BRL' => 'бразильский реал',
'BRN' => 'Бразильское новое крузадо',
'BRR' => 'Бразильский крузейро',
- 'BSD' => 'Багамский доллар',
- 'BTN' => 'Бутанский нгултрум',
+ 'BSD' => 'багамский доллар',
+ 'BTN' => 'бутанский нгултрум',
'BUK' => 'Джа',
- 'BWP' => 'Ботсванская пула',
+ 'BWP' => 'ботсванская пула',
'BYB' => 'Белорусский рубль (1994–1999)',
- 'BYR' => 'Белорусский рубль',
- 'BZD' => 'Белизский доллар',
- 'CAD' => 'Канадский доллар',
- 'CDF' => 'Конголезский франк',
+ 'BYN' => 'белорусский рубль',
+ 'BYR' => 'Белорусский рубль (2000–2016)',
+ 'BZD' => 'белизский доллар',
+ 'CAD' => 'канадский доллар',
+ 'CDF' => 'конголезский франк',
'CHE' => 'WIR евро',
- 'CHF' => 'Швейцарский франк',
+ 'CHF' => 'швейцарский франк',
'CHW' => 'WIR франк',
'CLF' => 'Условная расчетная единица Чили',
- 'CLP' => 'Чилийское песо',
- 'CNY' => 'Китайский юань',
- 'COP' => 'Колумбийское песо',
+ 'CLP' => 'чилийский песо',
+ 'CNH' => 'китайский офшорный юань',
+ 'CNY' => 'китайский юань',
+ 'COP' => 'колумбийский песо',
'COU' => 'Единица реальной стоимости Колумбии',
- 'CRC' => 'Костариканский колон',
+ 'CRC' => 'костариканский колон',
'CSD' => 'Старый Сербский динар',
'CSK' => 'Чехословацкая твердая крона',
- 'CUC' => 'Кубинское конвертируемое песо',
- 'CUP' => 'Кубинское песо',
- 'CVE' => 'Эскудо Кабо-Верде',
+ 'CUC' => 'кубинский конвертируемый песо',
+ 'CUP' => 'кубинский песо',
+ 'CVE' => 'эскудо Кабо-Верде',
'CYP' => 'Кипрский фунт',
- 'CZK' => 'Чешская крона',
+ 'CZK' => 'чешская крона',
'DDM' => 'Восточногерманская марка',
'DEM' => 'Немецкая марка',
- 'DJF' => 'Франк Джибути',
- 'DKK' => 'Датская крона',
- 'DOP' => 'Доминиканское песо',
- 'DZD' => 'Алжирский динар',
+ 'DJF' => 'франк Джибути',
+ 'DKK' => 'датская крона',
+ 'DOP' => 'доминиканский песо',
+ 'DZD' => 'алжирский динар',
'ECS' => 'Эквадорский сукре',
'ECV' => 'Постоянная единица стоимости Эквадора',
'EEK' => 'Эстонская крона',
- 'EGP' => 'Египетский фунт',
- 'ERN' => 'Накфа',
+ 'EGP' => 'египетский фунт',
+ 'ERN' => 'эритрейская накфа',
'ESA' => 'Испанская песета (А)',
'ESB' => 'Испанская песета (конвертируемая)',
'ESP' => 'Испанская песета',
- 'ETB' => 'Эфиопский быр',
- 'EUR' => 'Евро',
+ 'ETB' => 'эфиопский быр',
+ 'EUR' => 'евро',
'FIM' => 'Финская марка',
- 'FJD' => 'Доллар Фиджи',
- 'FKP' => 'Фунт Фолклендских островов',
+ 'FJD' => 'доллар Фиджи',
+ 'FKP' => 'фунт Фолклендских островов',
'FRF' => 'Французский франк',
- 'GBP' => 'Английский фунт',
+ 'GBP' => 'британский фунт стерлингов',
'GEK' => 'Грузинский купон',
- 'GEL' => 'Грузинский лари',
+ 'GEL' => 'грузинский лари',
'GHC' => 'Ганский седи (1979–2007)',
- 'GHS' => 'Ганский седи',
- 'GIP' => 'Гибралтарский фунт',
- 'GMD' => 'Гамбийский даласи',
- 'GNF' => 'Гвинейский франк',
+ 'GHS' => 'ганский седи',
+ 'GIP' => 'гибралтарский фунт',
+ 'GMD' => 'гамбийский даласи',
+ 'GNF' => 'гвинейский франк',
'GNS' => 'Гвинейская сили',
'GQE' => 'Эквеле экваториальной Гвинеи',
'GRD' => 'Греческая драхма',
- 'GTQ' => 'Гватемальский кетсаль',
+ 'GTQ' => 'гватемальский кетсаль',
'GWE' => 'Эскудо Португальской Гвинеи',
'GWP' => 'Песо Гвинеи-Бисау',
- 'GYD' => 'Гайанский доллар',
- 'HKD' => 'Гонконгский доллар',
- 'HNL' => 'Гондурасская лемпира',
+ 'GYD' => 'гайанский доллар',
+ 'HKD' => 'гонконгский доллар',
+ 'HNL' => 'гондурасская лемпира',
'HRD' => 'Хорватский динар',
- 'HRK' => 'Хорватская куна',
- 'HTG' => 'Гаитянский гурд',
- 'HUF' => 'Венгерский форинт',
- 'IDR' => 'Индонезийская рупия',
+ 'HRK' => 'хорватская куна',
+ 'HTG' => 'гаитянский гурд',
+ 'HUF' => 'венгерский форинт',
+ 'IDR' => 'индонезийская рупия',
'IEP' => 'Ирландский фунт',
'ILP' => 'Израильский фунт',
- 'ILS' => 'Новый израильский шекель',
- 'INR' => 'Индийская рупия',
- 'IQD' => 'Иракский динар',
- 'IRR' => 'Иранский риал',
- 'ISK' => 'Исландская крона',
+ 'ILS' => 'новый израильский шекель',
+ 'INR' => 'индийская рупия',
+ 'IQD' => 'иракский динар',
+ 'IRR' => 'иранский риал',
+ 'ISK' => 'исландская крона',
'ITL' => 'Итальянская лира',
- 'JMD' => 'Ямайский доллар',
- 'JOD' => 'Иорданский динар',
- 'JPY' => 'Японская иена',
- 'KES' => 'Кенийский шиллинг',
- 'KGS' => 'Киргизский сом',
- 'KHR' => 'Камбоджийский риель',
- 'KMF' => 'Франк Коморских островов',
- 'KPW' => 'Северокорейская вона',
- 'KRW' => 'Южнокорейская вона',
- 'KWD' => 'Кувейтский динар',
- 'KYD' => 'Доллар Каймановых островов',
- 'KZT' => 'Казахский тенге',
- 'LAK' => 'Лаосский кип',
- 'LBP' => 'Ливанский фунт',
- 'LKR' => 'Шри-Ланкийская рупия',
- 'LRD' => 'Либерийский доллар',
+ 'JMD' => 'ямайский доллар',
+ 'JOD' => 'иорданский динар',
+ 'JPY' => 'японская иена',
+ 'KES' => 'кенийский шиллинг',
+ 'KGS' => 'киргизский сом',
+ 'KHR' => 'камбоджийский риель',
+ 'KMF' => 'коморский франк',
+ 'KPW' => 'северокорейская вона',
+ 'KRW' => 'южнокорейская вона',
+ 'KWD' => 'кувейтский динар',
+ 'KYD' => 'доллар Островов Кайман',
+ 'KZT' => 'казахский тенге',
+ 'LAK' => 'лаосский кип',
+ 'LBP' => 'ливанский фунт',
+ 'LKR' => 'шри-ланкийская рупия',
+ 'LRD' => 'либерийский доллар',
'LSL' => 'Лоти',
'LTL' => 'Литовский лит',
'LTT' => 'Литовский талон',
@@ -658,143 +678,146 @@ $currencyNames = array(
'LUL' => 'Финансовый франк Люксембурга',
'LVL' => 'Латвийский лат',
'LVR' => 'Латвийский рубль',
- 'LYD' => 'Ливийский динар',
- 'MAD' => 'Марокканский дирхам',
+ 'LYD' => 'ливийский динар',
+ 'MAD' => 'марокканский дирхам',
'MAF' => 'Марокканский франк',
- 'MDL' => 'Молдавский лей',
- 'MGA' => 'Малагасийский ариари',
+ 'MDL' => 'молдавский лей',
+ 'MGA' => 'малагасийский ариари',
'MGF' => 'Малагасийский франк',
- 'MKD' => 'Македонский динар',
+ 'MKD' => 'македонский денар',
'MLF' => 'Малийский франк',
- 'MMK' => 'Мьянманский кьят',
- 'MNT' => 'Монгольский тугрик',
- 'MOP' => 'Патака Макао',
- 'MRO' => 'Мавританская угия',
+ 'MMK' => 'мьянманский кьят',
+ 'MNT' => 'монгольский тугрик',
+ 'MOP' => 'патака Макао',
+ 'MRO' => 'мавританская угия (1973–2017)',
+ 'MRU' => 'мавританская угия',
'MTL' => 'Мальтийская лира',
'MTP' => 'Мальтийский фунт',
- 'MUR' => 'Маврикийская рупия',
- 'MVR' => 'Мальдивская руфия',
- 'MWK' => 'Малавийская квача',
- 'MXN' => 'Мексиканское песо',
+ 'MUR' => 'маврикийская рупия',
+ 'MVR' => 'мальдивская руфия',
+ 'MWK' => 'малавийская квача',
+ 'MXN' => 'мексиканский песо',
'MXP' => 'Мексиканское серебряное песо (1861–1992)',
'MXV' => 'Мексиканская пересчетная единица (UDI)',
- 'MYR' => 'Малайзийский ринггит',
+ 'MYR' => 'малайзийский ринггит',
'MZE' => 'Мозамбикское эскудо',
'MZM' => 'Старый мозамбикский метикал',
- 'MZN' => 'Мозамбикский метикал',
- 'NAD' => 'Доллар Намибии',
- 'NGN' => 'Нигерийская найра',
+ 'MZN' => 'мозамбикский метикал',
+ 'NAD' => 'доллар Намибии',
+ 'NGN' => 'нигерийская найра',
'NIC' => 'Никарагуанская кордоба (1988–1991)',
- 'NIO' => 'Никарагуанская кордоба',
+ 'NIO' => 'никарагуанская кордоба',
'NLG' => 'Нидерландский гульден',
- 'NOK' => 'Норвежская крона',
- 'NPR' => 'Непальская рупия',
- 'NZD' => 'Новозеландский доллар',
- 'OMR' => 'Оманский риал',
- 'PAB' => 'Панамское бальбоа',
+ 'NOK' => 'норвежская крона',
+ 'NPR' => 'непальская рупия',
+ 'NZD' => 'новозеландский доллар',
+ 'OMR' => 'оманский риал',
+ 'PAB' => 'панамский бальбоа',
'PEI' => 'Перуанское инти',
- 'PEN' => 'Перуанский новый соль',
- 'PES' => 'Перуанский соль',
- 'PGK' => 'Кина Папуа — Новой Гвинеи',
- 'PHP' => 'Филиппинское песо',
- 'PKR' => 'Пакистанская рупия',
- 'PLN' => 'Польский злотый',
+ 'PEN' => 'перуанский соль',
+ 'PES' => 'Перуанский соль (1863–1965)',
+ 'PGK' => 'кина Папуа – Новой Гвинеи',
+ 'PHP' => 'филиппинский песо',
+ 'PKR' => 'пакистанская рупия',
+ 'PLN' => 'польский злотый',
'PLZ' => 'Злотый',
'PTE' => 'Португальское эскудо',
- 'PYG' => 'Парагвайский гуарани',
- 'QAR' => 'Катарский риал',
+ 'PYG' => 'парагвайский гуарани',
+ 'QAR' => 'катарский риал',
'RHD' => 'Родезийский доллар',
'ROL' => 'Старый Румынский лей',
- 'RON' => 'Румынский лей',
- 'RSD' => 'Сербский динар',
- 'RUB' => 'Российский рубль',
+ 'RON' => 'румынский лей',
+ 'RSD' => 'сербский динар',
+ 'RUB' => 'российский рубль',
'RUR' => 'Российский рубль (1991–1998)',
- 'RWF' => 'Франк Руанды',
- 'SAR' => 'Саудовский риал',
- 'SBD' => 'Доллар Соломоновых островов',
- 'SCR' => 'Сейшельская рупия',
+ 'RWF' => 'франк Руанды',
+ 'SAR' => 'саудовский риял',
+ 'SBD' => 'доллар Соломоновых Островов',
+ 'SCR' => 'сейшельская рупия',
'SDD' => 'Суданский динар',
- 'SDG' => 'Суданский фунт',
+ 'SDG' => 'суданский фунт',
'SDP' => 'Старый суданский фунт',
- 'SEK' => 'Шведская крона',
- 'SGD' => 'Сингапурский доллар',
- 'SHP' => 'Фунт острова Святой Елены',
+ 'SEK' => 'шведская крона',
+ 'SGD' => 'сингапурский доллар',
+ 'SHP' => 'фунт острова Святой Елены',
'SIT' => 'Словенский толар',
'SKK' => 'Словацкая крона',
- 'SLL' => 'Леоне',
- 'SOS' => 'Сомалийский шиллинг',
- 'SRD' => 'Суринамский доллар',
+ 'SLL' => 'леоне',
+ 'SOS' => 'сомалийский шиллинг',
+ 'SRD' => 'суринамский доллар',
'SRG' => 'Суринамский гульден',
- 'SSP' => 'Южносуданский фунт',
- 'STD' => 'Добра Сант-Томе и Принсипи',
+ 'SSP' => 'южносуданский фунт',
+ 'STD' => 'добра Сан-Томе и Принсипи (1977–2017)',
+ 'STN' => 'добра Сан-Томе и Принсипи',
'SUR' => 'Рубль СССР',
'SVC' => 'Сальвадорский колон',
- 'SYP' => 'Сирийский фунт',
- 'SZL' => 'Свазилендский лилангени',
- 'THB' => 'Таиландский бат',
+ 'SYP' => 'сирийский фунт',
+ 'SZL' => 'свазилендский лилангени',
+ 'THB' => 'таиландский бат',
'TJR' => 'Таджикский рубль',
- 'TJS' => 'Таджикский сомони',
+ 'TJS' => 'таджикский сомони',
'TMM' => 'Туркменский манат',
- 'TMT' => 'Туркменский новый манат',
- 'TND' => 'Тунисский динар',
- 'TOP' => 'Тонганская паанга',
+ 'TMT' => 'новый туркменский манат',
+ 'TND' => 'тунисский динар',
+ 'TOP' => 'тонганская паанга',
'TPE' => 'Тиморское эскудо',
'TRL' => 'Турецкая лира (1922–2005)',
- 'TRY' => 'Турецкая лира',
- 'TTD' => 'Доллар Тринидада и Тобаго',
- 'TWD' => 'Новый тайваньский доллар',
- 'TZS' => 'Танзанийский шиллинг',
- 'UAH' => 'Украинская гривна',
+ 'TRY' => 'турецкая лира',
+ 'TTD' => 'доллар Тринидада и Тобаго',
+ 'TWD' => 'новый тайваньский доллар',
+ 'TZS' => 'танзанийский шиллинг',
+ 'UAH' => 'украинская гривна',
'UAK' => 'Карбованец (украинский)',
'UGS' => 'Старый угандийский шиллинг',
- 'UGX' => 'Угандийский шиллинг',
- 'USD' => 'Доллар США',
+ 'UGX' => 'угандийский шиллинг',
+ 'USD' => 'доллар США',
'USN' => 'Доллар США следующего дня',
'USS' => 'Доллар США текущего дня',
'UYI' => 'Уругвайский песо (индекс инфляции)',
'UYP' => 'Уругвайское старое песо (1975–1993)',
- 'UYU' => 'Уругвайское песо',
- 'UZS' => 'Узбекский сум',
+ 'UYU' => 'уругвайский песо',
+ 'UZS' => 'узбекский сум',
'VEB' => 'Венесуэльский боливар (1871–2008)',
- 'VEF' => 'Венесуэльский боливар',
- 'VND' => 'Вьетнамский донг',
- 'VUV' => 'Вату Вануату',
- 'WST' => 'Самоанская тала',
- 'XAF' => 'Франк КФА ВЕАС',
+ 'VEF' => 'венесуэльский боливар (2008–2018)',
+ 'VES' => 'венесуэльский боливар',
+ 'VND' => 'вьетнамский донг',
+ 'VUV' => 'вату Вануату',
+ 'WST' => 'самоанская тала',
+ 'XAF' => 'франк КФА BEAC',
'XAG' => 'Серебро',
'XAU' => 'Золото',
'XBA' => 'Европейская составная единица',
'XBB' => 'Европейская денежная единица',
'XBC' => 'расчетная единица европейского валютного соглашения (XBC)',
'XBD' => 'расчетная единица европейского валютного соглашения (XBD)',
- 'XCD' => 'Восточно-карибский доллар',
+ 'XCD' => 'восточно-карибский доллар',
'XDR' => 'СДР (специальные права заимствования)',
'XEU' => 'ЭКЮ (единица европейской валюты)',
'XFO' => 'Французский золотой франк',
'XFU' => 'Французский UIC-франк',
- 'XOF' => 'Франк КФА ВСЕАО',
+ 'XOF' => 'франк КФА ВСЕАО',
'XPD' => 'Палладий',
- 'XPF' => 'Французский тихоокеанский франк',
+ 'XPF' => 'французский тихоокеанский франк',
'XPT' => 'Платина',
'XRE' => 'единица RINET-фондов',
'XTS' => 'тестовый валютный код',
- 'XXX' => 'Неизвестная или недействительная валюта',
+ 'XXX' => 'неизвестная валюта',
'YDD' => 'Йеменский динар',
- 'YER' => 'Йеменский риал',
+ 'YER' => 'йеменский риал',
'YUD' => 'Югославский твердый динар',
'YUM' => 'Югославский новый динар',
'YUN' => 'Югославский динар',
'ZAL' => 'Южноафриканский рэнд (финансовый)',
- 'ZAR' => 'Южноафриканский рэнд',
+ 'ZAR' => 'южноафриканский рэнд',
'ZMK' => 'Квача (замбийская) (1968–2012)',
- 'ZMW' => 'Замбийская квача',
+ 'ZMW' => 'замбийская квача',
'ZRN' => 'Новый заир',
'ZRZ' => 'Заир',
'ZWD' => 'Доллар Зимбабве',
'ZWL' => 'Доллар Зимбабве (2009)',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'AED' => 'AED',
'AFN' => 'AFN',
'ALL' => 'ALL',
@@ -818,12 +841,14 @@ $currencySymbols = array(
'BSD' => 'BSD',
'BTN' => 'BTN',
'BWP' => 'BWP',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CA$',
'CDF' => 'CDF',
'CHF' => 'CHF',
'CLP' => 'CLP',
+ 'CNH' => 'CNH',
'CNY' => 'CN¥',
'COP' => 'COP',
'CRC' => 'CRC',
@@ -887,6 +912,7 @@ $currencySymbols = array(
'MNT' => 'MNT',
'MOP' => 'MOP',
'MRO' => 'MRO',
+ 'MRU' => 'MRU',
'MUR' => 'MUR',
'MVR' => 'MVR',
'MWK' => 'MWK',
@@ -902,6 +928,7 @@ $currencySymbols = array(
'OMR' => 'OMR',
'PAB' => 'PAB',
'PEN' => 'PEN',
+ 'PES' => 'PES',
'PGK' => 'PGK',
'PHP' => 'PHP',
'PKR' => 'PKR',
@@ -910,7 +937,7 @@ $currencySymbols = array(
'QAR' => 'QAR',
'RON' => 'RON',
'RSD' => 'RSD',
- 'RUB' => 'руб.',
+ 'RUB' => '₽',
'RUR' => 'р.',
'RWF' => 'RWF',
'SAR' => 'SAR',
@@ -925,6 +952,7 @@ $currencySymbols = array(
'SRD' => 'SRD',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'STN',
'SYP' => 'SYP',
'SZL' => 'SZL',
'THB' => '฿',
@@ -942,6 +970,7 @@ $currencySymbols = array(
'UYU' => 'UYU',
'UZS' => 'UZS',
'VEF' => 'VEF',
+ 'VES' => 'VES',
'VND' => '₫',
'VUV' => 'VUV',
'WST' => 'WST',
@@ -953,9 +982,9 @@ $currencySymbols = array(
'YER' => 'YER',
'ZAR' => 'ZAR',
'ZMW' => 'ZMW',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'о-в Вознесения',
'AD' => 'Андорра',
'AE' => 'ОАЭ',
@@ -964,7 +993,6 @@ $countryNames = array(
'AI' => 'Ангилья',
'AL' => 'Албания',
'AM' => 'Армения',
- 'AN' => 'Нидерландские Антильские о-ва',
'AO' => 'Ангола',
'AQ' => 'Антарктида',
'AR' => 'Аргентина',
@@ -983,13 +1011,13 @@ $countryNames = array(
'BH' => 'Бахрейн',
'BI' => 'Бурунди',
'BJ' => 'Бенин',
- 'BL' => 'Сен-Бартельми',
+ 'BL' => 'Сен-Бартелеми',
'BM' => 'Бермудские о-ва',
'BN' => 'Бруней-Даруссалам',
'BO' => 'Боливия',
'BQ' => 'Бонэйр, Синт-Эстатиус и Саба',
'BR' => 'Бразилия',
- 'BS' => 'Багамские о-ва',
+ 'BS' => 'Багамы',
'BT' => 'Бутан',
'BV' => 'о-в Буве',
'BW' => 'Ботсвана',
@@ -998,11 +1026,11 @@ $countryNames = array(
'CA' => 'Канада',
'CC' => 'Кокосовые о-ва',
'CD' => 'Конго - Киншаса',
- 'CF' => 'ЦАР',
+ 'CF' => 'Центрально-Африканская Республика',
'CG' => 'Конго - Браззавиль',
'CH' => 'Швейцария',
'CI' => 'Кот-д’Ивуар',
- 'CK' => 'о-ва Кука',
+ 'CK' => 'Острова Кука',
'CL' => 'Чили',
'CM' => 'Камерун',
'CN' => 'Китай',
@@ -1031,6 +1059,7 @@ $countryNames = array(
'ES' => 'Испания',
'ET' => 'Эфиопия',
'EU' => 'Европейский союз',
+ 'EZ' => 'еврозона',
'FI' => 'Финляндия',
'FJ' => 'Фиджи',
'FK' => 'Фолклендские о-ва',
@@ -1066,7 +1095,7 @@ $countryNames = array(
'ID' => 'Индонезия',
'IE' => 'Ирландия',
'IL' => 'Израиль',
- 'IM' => 'О-в Мэн',
+ 'IM' => 'о-в Мэн',
'IN' => 'Индия',
'IO' => 'Британская территория в Индийском океане',
'IQ' => 'Ирак',
@@ -1081,12 +1110,12 @@ $countryNames = array(
'KG' => 'Киргизия',
'KH' => 'Камбоджа',
'KI' => 'Кирибати',
- 'KM' => 'Коморские о-ва',
+ 'KM' => 'Коморы',
'KN' => 'Сент-Китс и Невис',
'KP' => 'КНДР',
'KR' => 'Республика Корея',
'KW' => 'Кувейт',
- 'KY' => 'Каймановы о-ва',
+ 'KY' => 'Острова Кайман',
'KZ' => 'Казахстан',
'LA' => 'Лаос',
'LB' => 'Ливан',
@@ -1105,7 +1134,7 @@ $countryNames = array(
'ME' => 'Черногория',
'MF' => 'Сен-Мартен',
'MG' => 'Мадагаскар',
- 'MH' => 'Маршалловы о-ва',
+ 'MH' => 'Маршалловы Острова',
'MK' => 'Македония',
'ML' => 'Мали',
'MM' => 'Мьянма (Бирма)',
@@ -1138,12 +1167,12 @@ $countryNames = array(
'PA' => 'Панама',
'PE' => 'Перу',
'PF' => 'Французская Полинезия',
- 'PG' => 'Папуа – Новая Гвинея',
+ 'PG' => 'Папуа — Новая Гвинея',
'PH' => 'Филиппины',
'PK' => 'Пакистан',
'PL' => 'Польша',
'PM' => 'Сен-Пьер и Микелон',
- 'PN' => 'Питкерн',
+ 'PN' => 'о-ва Питкэрн',
'PR' => 'Пуэрто-Рико',
'PS' => 'Палестина',
'PT' => 'Португалия',
@@ -1157,12 +1186,12 @@ $countryNames = array(
'RU' => 'Россия',
'RW' => 'Руанда',
'SA' => 'Саудовская Аравия',
- 'SB' => 'Соломоновы о-ва',
- 'SC' => 'Сейшельские о-ва',
+ 'SB' => 'Соломоновы Острова',
+ 'SC' => 'Сейшельские Острова',
'SD' => 'Судан',
'SE' => 'Швеция',
'SG' => 'Сингапур',
- 'SH' => 'О-в Св. Елены',
+ 'SH' => 'о-в Св. Елены',
'SI' => 'Словения',
'SJ' => 'Шпицберген и Ян-Майен',
'SK' => 'Словакия',
@@ -1178,9 +1207,9 @@ $countryNames = array(
'SY' => 'Сирия',
'SZ' => 'Свазиленд',
'TA' => 'Тристан-да-Кунья',
- 'TC' => 'О-ва Тёркс и Кайкос',
+ 'TC' => 'о-ва Тёркс и Кайкос',
'TD' => 'Чад',
- 'TF' => 'Французские Южные Территории',
+ 'TF' => 'Французские Южные территории',
'TG' => 'Того',
'TH' => 'Таиланд',
'TJ' => 'Таджикистан',
@@ -1197,13 +1226,14 @@ $countryNames = array(
'UA' => 'Украина',
'UG' => 'Уганда',
'UM' => 'Внешние малые о-ва (США)',
+ 'UN' => 'ООН',
'US' => 'США',
'UY' => 'Уругвай',
'UZ' => 'Узбекистан',
'VA' => 'Ватикан',
'VC' => 'Сент-Винсент и Гренадины',
'VE' => 'Венесуэла',
- 'VG' => 'Виргинские о-ва (Британские)',
+ 'VG' => 'Виргинские о-ва (Великобритания)',
'VI' => 'Виргинские о-ва (США)',
'VN' => 'Вьетнам',
'VU' => 'Вануату',
@@ -1212,40 +1242,68 @@ $countryNames = array(
'XK' => 'Косово',
'YE' => 'Йемен',
'YT' => 'Майотта',
- 'ZA' => 'ЮАР',
+ 'ZA' => 'Южно-Африканская Республика',
'ZM' => 'Замбия',
'ZW' => 'Зимбабве',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-few' => '{0} века',
+ 'century-many' => '{0} веков',
+ 'century-one' => '{0} век',
+ 'century-other' => '{0} века',
'day-few' => '{0} дня',
'day-future-few' => 'через {0} дня',
'day-future-many' => 'через {0} дней',
'day-future-one' => 'через {0} день',
- 'day-future-other' => 'через {0} дней',
+ 'day-future-other' => 'через {0} дня',
'day-many' => '{0} дней',
- 'day-narrow-future-few' => '+{0} д.',
- 'day-narrow-future-many' => '+{0} д.',
- 'day-narrow-future-one' => '+{0} д.',
- 'day-narrow-future-other' => '+{0} д.',
- 'day-narrow-past-few' => '-{0} д.',
- 'day-narrow-past-many' => '-{0} д.',
- 'day-narrow-past-one' => '-{0} д.',
- 'day-narrow-past-other' => '-{0} д.',
+ 'day-narrow-future-few' => '+{0} дн.',
+ 'day-narrow-future-many' => '+{0} дн.',
+ 'day-narrow-future-one' => '+{0} дн.',
+ 'day-narrow-future-other' => '+{0} дн.',
+ 'day-narrow-past-few' => '-{0} дн.',
+ 'day-narrow-past-many' => '-{0} дн.',
+ 'day-narrow-past-one' => '-{0} дн.',
+ 'day-narrow-past-other' => '-{0} дн.',
'day-one' => '{0} день',
'day-other' => '{0} дня',
'day-past-few' => '{0} дня назад',
'day-past-many' => '{0} дней назад',
'day-past-one' => '{0} день назад',
'day-past-other' => '{0} дня назад',
- 'day-short-future-few' => 'через {0} д.',
- 'day-short-future-many' => 'через {0} д.',
- 'day-short-future-one' => 'через {0} д.',
- 'day-short-future-other' => 'через {0} д.',
- 'day-short-past-few' => '{0} д. назад',
- 'day-short-past-many' => '{0} д. назад',
- 'day-short-past-one' => '{0} д. назад',
- 'day-short-past-other' => '{0} д. назад',
+ 'day-short-future-few' => 'через {0} дн.',
+ 'day-short-future-many' => 'через {0} дн.',
+ 'day-short-future-one' => 'через {0} дн.',
+ 'day-short-future-other' => 'через {0} дн.',
+ 'day-short-past-few' => '{0} дн. назад',
+ 'day-short-past-many' => '{0} дн. назад',
+ 'day-short-past-one' => '{0} дн. назад',
+ 'day-short-past-other' => '{0} дн. назад',
+ 'fri-future-few' => 'через {0} пятницы',
+ 'fri-future-many' => 'через {0} пятниц',
+ 'fri-future-one' => 'через {0} пятницу',
+ 'fri-future-other' => 'через {0} пятницы',
+ 'fri-narrow-future-few' => '+{0} пт.',
+ 'fri-narrow-future-many' => '+{0} пт.',
+ 'fri-narrow-future-one' => '+{0} пт.',
+ 'fri-narrow-future-other' => '+{0} пт.',
+ 'fri-narrow-past-few' => '-{0} пт.',
+ 'fri-narrow-past-many' => '-{0} пт.',
+ 'fri-narrow-past-one' => '-{0} пт.',
+ 'fri-narrow-past-other' => '-{0} пт.',
+ 'fri-past-few' => '{0} пятницы назад',
+ 'fri-past-many' => '{0} пятниц назад',
+ 'fri-past-one' => '{0} пятницу назад',
+ 'fri-past-other' => '{0} пятницы назад',
+ 'fri-short-future-few' => 'через {0} пт.',
+ 'fri-short-future-many' => 'через {0} пт.',
+ 'fri-short-future-one' => 'через {0} пт.',
+ 'fri-short-future-other' => 'через {0} пт.',
+ 'fri-short-past-few' => '{0} пт. назад',
+ 'fri-short-past-many' => '{0} пт. назад',
+ 'fri-short-past-one' => '{0} пт. назад',
+ 'fri-short-past-other' => '{0} пт. назад',
'hour-few' => '{0} часа',
'hour-future-few' => 'через {0} часа',
'hour-future-many' => 'через {0} часов',
@@ -1310,6 +1368,30 @@ $timeUnits = array(
'minute-short-past-many' => '{0} мин. назад',
'minute-short-past-one' => '{0} мин. назад',
'minute-short-past-other' => '{0} мин. назад',
+ 'mon-future-few' => 'через {0} понедельника',
+ 'mon-future-many' => 'через {0} понедельников',
+ 'mon-future-one' => 'через {0} понедельник',
+ 'mon-future-other' => 'через {0} понедельника',
+ 'mon-narrow-future-few' => '+{0} пн.',
+ 'mon-narrow-future-many' => '+{0} пн.',
+ 'mon-narrow-future-one' => '+{0} пн.',
+ 'mon-narrow-future-other' => '+{0} пн.',
+ 'mon-narrow-past-few' => '-{0} пн.',
+ 'mon-narrow-past-many' => '-{0} пн.',
+ 'mon-narrow-past-one' => '-{0} пн.',
+ 'mon-narrow-past-other' => '-{0} пн.',
+ 'mon-past-few' => '{0} понедельника назад',
+ 'mon-past-many' => '{0} понедельников назад',
+ 'mon-past-one' => '{0} понедельник назад',
+ 'mon-past-other' => '{0} понедельника назад',
+ 'mon-short-future-few' => 'через {0} пн.',
+ 'mon-short-future-many' => 'через {0} пн.',
+ 'mon-short-future-one' => 'через {0} пн.',
+ 'mon-short-future-other' => 'через {0} пн.',
+ 'mon-short-past-few' => '{0} пн. назад',
+ 'mon-short-past-many' => '{0} пн. назад',
+ 'mon-short-past-one' => '{0} пн. назад',
+ 'mon-short-past-other' => '{0} пн. назад',
'month-few' => '{0} месяца',
'month-future-few' => 'через {0} месяца',
'month-future-many' => 'через {0} месяцев',
@@ -1366,20 +1448,44 @@ $timeUnits = array(
'quarter-short-past-many' => '{0} кв. назад',
'quarter-short-past-one' => '{0} кв. назад',
'quarter-short-past-other' => '{0} кв. назад',
+ 'sat-future-few' => 'через {0} субботы',
+ 'sat-future-many' => 'через {0} суббот',
+ 'sat-future-one' => 'через {0} субботу',
+ 'sat-future-other' => 'через {0} субботы',
+ 'sat-narrow-future-few' => '+{0} сб.',
+ 'sat-narrow-future-many' => '+{0} сб.',
+ 'sat-narrow-future-one' => '+{0} сб.',
+ 'sat-narrow-future-other' => '+{0} сб.',
+ 'sat-narrow-past-few' => '-{0} сб.',
+ 'sat-narrow-past-many' => '-{0} сб.',
+ 'sat-narrow-past-one' => '-{0} сб.',
+ 'sat-narrow-past-other' => '-{0} сб.',
+ 'sat-past-few' => '{0} субботы назад',
+ 'sat-past-many' => '{0} суббот назад',
+ 'sat-past-one' => '{0} субботу назад',
+ 'sat-past-other' => '{0} субботы назад',
+ 'sat-short-future-few' => 'через {0} сб.',
+ 'sat-short-future-many' => 'через {0} сб.',
+ 'sat-short-future-one' => 'через {0} сб.',
+ 'sat-short-future-other' => 'через {0} сб.',
+ 'sat-short-past-few' => '{0} сб. назад',
+ 'sat-short-past-many' => '{0} сб. назад',
+ 'sat-short-past-one' => '{0} сб. назад',
+ 'sat-short-past-other' => '{0} сб. назад',
'second-few' => '{0} секунды',
'second-future-few' => 'через {0} секунды',
'second-future-many' => 'через {0} секунд',
'second-future-one' => 'через {0} секунду',
'second-future-other' => 'через {0} секунды',
'second-many' => '{0} секунд',
- 'second-narrow-future-few' => 'через {0} с',
- 'second-narrow-future-many' => 'через {0} с',
- 'second-narrow-future-one' => 'через {0} с',
- 'second-narrow-future-other' => 'через {0} с',
- 'second-narrow-past-few' => '{0} с назад',
- 'second-narrow-past-many' => '{0} с назад',
- 'second-narrow-past-one' => '{0} с назад',
- 'second-narrow-past-other' => '{0} с назад',
+ 'second-narrow-future-few' => '+{0} с',
+ 'second-narrow-future-many' => '+{0} с',
+ 'second-narrow-future-one' => '+{0} с',
+ 'second-narrow-future-other' => '+{0} с',
+ 'second-narrow-past-few' => '-{0} с',
+ 'second-narrow-past-many' => '-{0} с',
+ 'second-narrow-past-one' => '-{0} с',
+ 'second-narrow-past-other' => '-{0} с',
'second-one' => '{0} секунда',
'second-other' => '{0} секунды',
'second-past-few' => '{0} секунды назад',
@@ -1394,6 +1500,102 @@ $timeUnits = array(
'second-short-past-many' => '{0} сек. назад',
'second-short-past-one' => '{0} сек. назад',
'second-short-past-other' => '{0} сек. назад',
+ 'sun-future-few' => 'через {0} воскресенья',
+ 'sun-future-many' => 'через {0} воскресений',
+ 'sun-future-one' => 'через {0} воскресенье',
+ 'sun-future-other' => 'через {0} воскресенья',
+ 'sun-narrow-future-few' => '+{0} вс.',
+ 'sun-narrow-future-many' => '+{0} вс.',
+ 'sun-narrow-future-one' => '+{0} вс.',
+ 'sun-narrow-future-other' => '+{0} вс.',
+ 'sun-narrow-past-few' => '-{0} вс.',
+ 'sun-narrow-past-many' => '-{0} вс.',
+ 'sun-narrow-past-one' => '-{0} вс.',
+ 'sun-narrow-past-other' => '-{0} вс.',
+ 'sun-past-few' => '{0} воскресенья назад',
+ 'sun-past-many' => '{0} воскресений назад',
+ 'sun-past-one' => '{0} воскресенье назад',
+ 'sun-past-other' => '{0} воскресенья назад',
+ 'sun-short-future-few' => 'через {0} вс.',
+ 'sun-short-future-many' => 'через {0} вс.',
+ 'sun-short-future-one' => 'через {0} вс.',
+ 'sun-short-future-other' => 'через {0} вс.',
+ 'sun-short-past-few' => '{0} вс. назад',
+ 'sun-short-past-many' => '{0} вс. назад',
+ 'sun-short-past-one' => '{0} вс. назад',
+ 'sun-short-past-other' => '{0} вс. назад',
+ 'thu-future-few' => 'через {0} четверга',
+ 'thu-future-many' => 'через {0} четвергов',
+ 'thu-future-one' => 'через {0} четверг',
+ 'thu-future-other' => 'через {0} четверга',
+ 'thu-narrow-future-few' => '+{0} чт.',
+ 'thu-narrow-future-many' => '+{0} чт.',
+ 'thu-narrow-future-one' => '+{0} чт.',
+ 'thu-narrow-future-other' => '+{0} чт.',
+ 'thu-narrow-past-few' => '-{0} чт.',
+ 'thu-narrow-past-many' => '-{0} чт.',
+ 'thu-narrow-past-one' => '-{0} чт.',
+ 'thu-narrow-past-other' => '-{0} чт.',
+ 'thu-past-few' => '{0} четверга назад',
+ 'thu-past-many' => '{0} четвергов назад',
+ 'thu-past-one' => '{0} четверг назад',
+ 'thu-past-other' => '{0} четверга назад',
+ 'thu-short-future-few' => 'через {0} чт.',
+ 'thu-short-future-many' => 'через {0} чт.',
+ 'thu-short-future-one' => 'через {0} чт.',
+ 'thu-short-future-other' => 'через {0} чт.',
+ 'thu-short-past-few' => '{0} чт. назад',
+ 'thu-short-past-many' => '{0} чт. назад',
+ 'thu-short-past-one' => '{0} чт. назад',
+ 'thu-short-past-other' => '{0} чт. назад',
+ 'tue-future-few' => 'через {0} вторника',
+ 'tue-future-many' => 'через {0} вторников',
+ 'tue-future-one' => 'через {0} вторник',
+ 'tue-future-other' => 'через {0} вторника',
+ 'tue-narrow-future-few' => '+{0} вт.',
+ 'tue-narrow-future-many' => '+{0} вт.',
+ 'tue-narrow-future-one' => '+{0} вт.',
+ 'tue-narrow-future-other' => '+{0} вт.',
+ 'tue-narrow-past-few' => '-{0} вт.',
+ 'tue-narrow-past-many' => '-{0} вт.',
+ 'tue-narrow-past-one' => '-{0} вт.',
+ 'tue-narrow-past-other' => '-{0} вт.',
+ 'tue-past-few' => '{0} вторника назад',
+ 'tue-past-many' => '{0} вторников назад',
+ 'tue-past-one' => '{0} вторник назад',
+ 'tue-past-other' => '{0} вторника назад',
+ 'tue-short-future-few' => 'через {0} вт.',
+ 'tue-short-future-many' => 'через {0} вт.',
+ 'tue-short-future-one' => 'через {0} вт.',
+ 'tue-short-future-other' => 'через {0} вт.',
+ 'tue-short-past-few' => '{0} вт. назад',
+ 'tue-short-past-many' => '{0} вт. назад',
+ 'tue-short-past-one' => '{0} вт. назад',
+ 'tue-short-past-other' => '{0} вт. назад',
+ 'wed-future-few' => 'через {0} среды',
+ 'wed-future-many' => 'через {0} сред',
+ 'wed-future-one' => 'через {0} среду',
+ 'wed-future-other' => 'через {0} среды',
+ 'wed-narrow-future-few' => '+{0} ср.',
+ 'wed-narrow-future-many' => '+{0} ср.',
+ 'wed-narrow-future-one' => '+{0} ср.',
+ 'wed-narrow-future-other' => '+{0} ср.',
+ 'wed-narrow-past-few' => '-{0} ср.',
+ 'wed-narrow-past-many' => '-{0} ср.',
+ 'wed-narrow-past-one' => '-{0} ср.',
+ 'wed-narrow-past-other' => '-{0} ср.',
+ 'wed-past-few' => '{0} среды назад',
+ 'wed-past-many' => '{0} сред назад',
+ 'wed-past-one' => '{0} среду назад',
+ 'wed-past-other' => '{0} среды назад',
+ 'wed-short-future-few' => 'через {0} ср.',
+ 'wed-short-future-many' => 'через {0} ср.',
+ 'wed-short-future-one' => 'через {0} ср.',
+ 'wed-short-future-other' => 'через {0} ср.',
+ 'wed-short-past-few' => '{0} ср. назад',
+ 'wed-short-past-many' => '{0} ср. назад',
+ 'wed-short-past-one' => '{0} ср. назад',
+ 'wed-short-past-other' => '{0} ср. назад',
'week-few' => '{0} недели',
'week-future-few' => 'через {0} недели',
'week-future-many' => 'через {0} недель',
@@ -1404,10 +1606,10 @@ $timeUnits = array(
'week-narrow-future-many' => '+{0} нед.',
'week-narrow-future-one' => '+{0} нед.',
'week-narrow-future-other' => '+{0} нед.',
- 'week-narrow-past-few' => '{0} нед. назад',
- 'week-narrow-past-many' => '{0} нед. назад',
- 'week-narrow-past-one' => '{0} нед. назад',
- 'week-narrow-past-other' => '{0} нед. назад',
+ 'week-narrow-past-few' => '-{0} нед.',
+ 'week-narrow-past-many' => '-{0} нед.',
+ 'week-narrow-past-one' => '-{0} нед.',
+ 'week-narrow-past-other' => '-{0} нед.',
'week-one' => '{0} неделя',
'week-other' => '{0} недели',
'week-past-few' => '{0} недели назад',
@@ -1450,4 +1652,4 @@ $timeUnits = array(
'year-short-past-many' => '{0} л. назад',
'year-short-past-one' => '{0} г. назад',
'year-short-past-other' => '{0} г. назад',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesRw.php b/MLEB/cldr/CldrNames/CldrNamesRw.php
index 1dac8554..0bdd1eab 100644
--- a/MLEB/cldr/CldrNames/CldrNamesRw.php
+++ b/MLEB/cldr/CldrNames/CldrNamesRw.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'af' => 'Ikinyafurikaneri',
'am' => 'Inyamuhariki',
'ar' => 'Icyarabu',
@@ -56,7 +56,7 @@ $languageNames = array(
'lo' => 'Ikilawotiyani',
'lt' => 'Ikilituwaniya',
'lv' => 'Ikinyaletoviyani',
- 'mk' => 'Ikimasedoniyani',
+ 'mk' => 'Ikimasedoniya',
'ml' => 'Ikimalayalami',
'mn' => 'Ikimongoli',
'mr' => 'Ikimarati',
@@ -106,9 +106,9 @@ $languageNames = array(
'xh' => 'Inyehawusa',
'yi' => 'Inyeyidishi',
'zu' => 'Inyezulu',
-);
+];
-$countryNames = array(
- 'RW' => 'Rwanda',
- 'TO' => 'Igitonga',
-);
+$countryNames = [
+ 'RW' => 'U Rwanda',
+ 'TO' => 'Tonga',
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesSah.php b/MLEB/cldr/CldrNames/CldrNamesSah.php
index 340a3358..b7d53def 100644
--- a/MLEB/cldr/CldrNames/CldrNamesSah.php
+++ b/MLEB/cldr/CldrNames/CldrNamesSah.php
@@ -1,9 +1,13 @@
<?php
-$languageNames = array(
+$languageNames = [
'ab' => 'Абхаастыы',
'af' => 'Аппырыкааныстыы',
+ 'ale' => 'Алеуттуу',
+ 'am' => 'Амхаардыы',
'ar' => 'Араабтыы',
+ 'ast' => 'Астуурдуу',
+ 'av' => 'Аваардыы',
'az' => 'Адьырбайдьаанныы',
'be' => 'Бөлөрүүстүү',
'bg' => 'Булҕаардыы',
@@ -11,69 +15,157 @@ $languageNames = array(
'bo' => 'Тибиэттии',
'bs' => 'Босныйалыы',
'ca' => 'Каталаанныы',
- 'cs' => 'Чиэскэйдии',
+ 'ce' => 'Чэчиэннии',
+ 'ckb' => 'Киин куурдуу',
+ 'cs' => 'Чиэхтии',
'da' => 'Даатскайдыы',
'de' => 'Ниэмэстии',
'el' => 'Гириэктии',
- 'en' => 'Аҥылычаанныы',
+ 'en' => 'Ааҥыллыы',
'es' => 'Ыспаанныы',
'et' => 'Эстиэнийэлии',
- 'fa' => 'Пиэрсийэлии',
+ 'fa' => 'Пиэристии',
'fi' => 'Пииннии',
'fil' => 'Пилипииннии',
- 'fr' => 'Пырансуустуу',
+ 'fr' => 'Боронсуустуу',
'hu' => 'Бэҥгиэрдии',
'hy' => 'Эрмээннии',
'it' => 'Ытаалыйалыы',
'ja' => 'Дьоппуоннуу',
- 'ka' => 'Гурусууннуу',
+ 'ka' => 'Курусууннуу',
'kk' => 'Хаһаахтыы',
'ko' => 'Кэриэйдии',
'ky' => 'Кыргыстыы',
'la' => 'Латыынныы',
'mn' => 'Моҕуоллуу',
+ 'ms' => 'Малаайдыы',
'ne' => 'Ньыпааллыы',
+ 'nog' => 'Нагаайдыы',
'pa' => 'Пандьаабтыы',
'pt' => 'Португааллыы',
'ro' => 'Румыынныы',
'ru' => 'Нууччалыы',
'sah' => 'саха тыла',
'sk' => 'Словаактыы',
- 'sq' => 'Албаанскайдыы',
+ 'sq' => 'Албаанныы',
'ta' => 'Тамыллыы',
'te' => 'Төлүгүлүү',
'tg' => 'Тадьыыктыы',
+ 'tt' => 'Татаардыы',
'ug' => 'Уйгуурдуу',
'uk' => 'Украйыыньыстыы',
'uz' => 'Үзбиэктии',
'zh' => 'Кытайдыы',
'zu' => 'Зуулулуу',
-);
+];
-$countryNames = array(
+$currencyNames = [
+ 'RUB' => 'Арассыыйа солкуобайа',
+ 'USD' => 'АХШ дуоллара',
+];
+
+$currencySymbols = [
+ 'RUB' => '₽',
+ 'USD' => '$',
+];
+
+$countryNames = [
+ 'BR' => 'Бразилия',
+ 'CA' => 'Канаада',
+ 'CL' => 'Чиили',
'CN' => 'Кытай',
-);
+ 'CU' => 'Кууба',
+ 'EE' => 'Эстония',
+ 'FI' => 'Финляндия',
+ 'GB' => 'Улуу Британия',
+ 'IE' => 'Ирландия',
+ 'IM' => 'Мэн арыы',
+ 'IS' => 'Исландия',
+ 'JM' => 'Дьамаайка',
+ 'LT' => 'Литва',
+ 'LV' => 'Латвия',
+ 'LY' => 'Лиибийэ',
+ 'MX' => 'Миэксикэ',
+ 'NO' => 'Норвегия',
+ 'RU' => 'Арассыыйа',
+ 'SD' => 'Судаан',
+ 'SE' => 'Швеция',
+ 'US' => 'АХШ',
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-other' => '{0} үйэ',
'day-future-other' => '{0} күнүнэн',
'day-other' => '{0} күн',
'day-past-other' => '{0} күн ынараа өттүгэр',
+ 'fri-future-other' => '{0} бээтиҥсэнэн',
+ 'fri-narrow-future-other' => '{0} бээтиҥсэнэн',
+ 'fri-narrow-past-other' => '{0} бэ. анараа өттүгэр',
+ 'fri-past-other' => '{0} бээтиҥсэ анараа өттүгэр',
+ 'fri-short-future-other' => '{0} бээтиҥсэнэн',
+ 'fri-short-past-other' => '{0} бэ. анараа өттүгэр',
'hour-future-other' => '{0} чааһынан',
'hour-other' => '{0} чаас',
'hour-past-other' => '{0} чаас ынараа өттүгэр',
+ 'microsecond-other' => '{0} микросөкүүндэ',
+ 'millisecond-other' => '{0} миллисөкүүндэ',
'minute-future-other' => '{0} мүнүүтэннэн',
'minute-other' => '{0} мүнүүтэ',
'minute-past-other' => '{0} мүнүүтэ ынараа өттүгэр',
+ 'mon-future-other' => '{0} бэнидиэнньигинэн',
+ 'mon-narrow-future-other' => '{0} бэнидиэнньигинэн',
+ 'mon-narrow-past-other' => '{0} бн. анараа өттүгэр',
+ 'mon-past-other' => '{0} бэнидиэнньик анараа өттүгэр',
+ 'mon-short-future-other' => '{0} бэнидиэнньигинэн',
+ 'mon-short-past-other' => '{0} бн. анараа өттүгэр',
'month-future-other' => '{0} ыйынан',
'month-other' => '{0} ый',
'month-past-other' => '{0} ый ынараа өттүгэр',
+ 'nanosecond-other' => '{0} наносөкүүндэ',
+ 'quarter-future-other' => '{0} кыбаарталынан',
+ 'quarter-narrow-future-other' => '{0} кыбаарталынан',
+ 'quarter-narrow-past-other' => '{0} кыб. анараа өттүгэр',
+ 'quarter-past-other' => '{0} кыбаартал анараа өттүгэр',
+ 'quarter-short-future-other' => '{0} кыбаарталынан',
+ 'quarter-short-past-other' => '{0} кыб. анараа өттүгэр',
+ 'sat-future-other' => '{0} субуотанан',
+ 'sat-narrow-future-other' => '{0} субуотанан',
+ 'sat-narrow-past-other' => '{0} сб. анараа өттүгэр',
+ 'sat-past-other' => '{0} субуота анараа өттүгэр',
+ 'sat-short-future-other' => '{0} субуотанан',
+ 'sat-short-past-other' => '{0} сб. анараа өттүгэр',
'second-future-other' => '{0} сөкүүндэннэн',
'second-other' => '{0} сөкүүндэ',
'second-past-other' => '{0} сөкүүндэ ынараа өттүгэр',
+ 'second-short-past-other' => '{0} сөк. анараа өттүгэр',
+ 'sun-future-other' => '{0} баскыһыанньанан',
+ 'sun-narrow-future-other' => '{0} баскыһыанньанан',
+ 'sun-narrow-past-other' => '{0} бс. анараа өттүгэр',
+ 'sun-past-other' => '{0} баскыһыанньа анараа өттүгэр',
+ 'sun-short-future-other' => '{0} баскыһыанньанан',
+ 'sun-short-past-other' => '{0} бс. анараа өттүгэр',
+ 'thu-future-other' => '{0} чэппиэринэн',
+ 'thu-narrow-future-other' => '{0} чэппиэринэн',
+ 'thu-narrow-past-other' => '{0} чп. анараа өттүгэр',
+ 'thu-past-other' => '{0} чэппиэр анараа өттүгэр',
+ 'thu-short-future-other' => '{0} чэппиэринэн',
+ 'thu-short-past-other' => '{0} чп. анараа өттүгэр',
+ 'tue-future-other' => '{0} оптуорунньугунан',
+ 'tue-narrow-future-other' => '{0} оптуорунньугунан',
+ 'tue-narrow-past-other' => '{0} оп. анараа өттүгэр',
+ 'tue-past-other' => '{0} оптуорунньук анараа өттүгэр',
+ 'tue-short-future-other' => '{0} оптуорунньугунан',
+ 'tue-short-past-other' => '{0} оп. анараа өттүгэр',
+ 'wed-future-other' => '{0} сэрэдэнэн',
+ 'wed-narrow-future-other' => '{0} сэрэдэнэн',
+ 'wed-narrow-past-other' => '{0} сэ. анараа өттүгэр',
+ 'wed-past-other' => '{0} сэрэдэ анараа өттүгэр',
+ 'wed-short-future-other' => '{0} сэрэдэнэн',
+ 'wed-short-past-other' => '{0} сэ. анараа өттүгэр',
'week-future-other' => '{0} нэдиэлэннэн',
'week-other' => '{0} нэдиэлэ',
- 'week-past-other' => '{0} нэдиэлэ ынараа өттүгэр',
+ 'week-past-other' => '{0} нэдиэлэ анараа өттүгэр',
'year-future-other' => '{0} сылынан',
'year-other' => '{0} сыл',
'year-past-other' => '{0} сыл ынараа өттүгэр',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesSe.php b/MLEB/cldr/CldrNames/CldrNamesSe.php
index afe37701..d0ad34fb 100644
--- a/MLEB/cldr/CldrNames/CldrNamesSe.php
+++ b/MLEB/cldr/CldrNames/CldrNamesSe.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'ace' => 'acehgiella',
'af' => 'afrikánsagiella',
'an' => 'aragoniagiella',
@@ -109,24 +109,24 @@ $languageNames = array(
'zh' => 'kiinnágiella',
'zh-hans' => 'álki kiinágiella',
'zh-hant' => 'árbevirolaš kiinnágiella',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'EUR' => 'euro',
'FIM' => 'suoma márkki',
'NOK' => 'norgga kruvdno',
'SEK' => 'ruoŧŧa kruvdno',
'XAG' => 'uns silba',
'XAU' => 'uns golli',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'EUR' => '€',
'NOK' => 'kr',
'SEK' => 'Skr',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'Ascension',
'AD' => 'Andorra',
'AE' => 'Ovttastuvvan Arábaemiráhtat',
@@ -157,6 +157,7 @@ $countryNames = array(
'BM' => 'Bermuda',
'BN' => 'Brunei',
'BO' => 'Bolivia',
+ 'BQ' => 'Vuolleeatnamat Karibe',
'BR' => 'Brasil',
'BS' => 'Bahamas',
'BT' => 'Bhutan',
@@ -380,9 +381,9 @@ $countryNames = array(
'ZA' => 'Mátta-Afrihká',
'ZM' => 'Zambia',
'ZW' => 'Zimbabwe',
-);
+];
-$timeUnits = array(
+$timeUnits = [
'day-future-one' => '{0} jándor maŋŋilit',
'day-future-other' => '{0} jándora maŋŋilit',
'day-future-two' => '{0} jándor amaŋŋilit',
@@ -401,6 +402,9 @@ $timeUnits = array(
'hour-past-other' => '{0} diibmur árat',
'hour-past-two' => '{0} diibmur árat',
'hour-two' => '{0} diimmur',
+ 'microsecond-one' => '{0} mikrosekunda',
+ 'microsecond-other' => '{0} mikrosekundda',
+ 'microsecond-two' => '{0} mikrosekundda',
'millisecond-one' => '{0} millisekunda',
'millisecond-other' => '{0} millisekundda',
'millisecond-two' => '{0} millisekundda',
@@ -422,6 +426,9 @@ $timeUnits = array(
'month-past-other' => '{0} mánotbadji árat',
'month-past-two' => '{0} mánotbadji árat',
'month-two' => '{0} mánotbaji',
+ 'nanosecond-one' => '{0} nanosekunda',
+ 'nanosecond-other' => '{0} nanosekundda',
+ 'nanosecond-two' => '{0} nanosekundda',
'second-future-one' => '{0} sekunda maŋŋilit',
'second-future-other' => '{0} sekundda maŋŋilit',
'second-future-two' => '{0} sekundda maŋŋilit',
@@ -449,4 +456,4 @@ $timeUnits = array(
'year-past-other' => '{0} jahkki árat',
'year-past-two' => '{0} jahkki árat',
'year-two' => '{0} jahkki',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesSes.php b/MLEB/cldr/CldrNames/CldrNamesSes.php
index 20f61fd6..33392c05 100644
--- a/MLEB/cldr/CldrNames/CldrNamesSes.php
+++ b/MLEB/cldr/CldrNames/CldrNamesSes.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'ak' => 'Akan senni',
'am' => 'Amhaarik senni',
'ar' => 'Laaraw senni',
@@ -46,9 +46,9 @@ $languageNames = array(
'yo' => 'Yorbance senni',
'zh' => 'Sinuwa senni, Mandareŋ',
'zu' => 'Zulu senni',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'AED' => 'Laaraw Immaara Margantey Dirham',
'AOA' => 'Angoola Kwanza',
'AUD' => 'Ostraali Dollar',
@@ -79,7 +79,8 @@ $currencyNames = array(
'LYD' => 'Liibi Dinar',
'MAD' => 'Maarok Dirham',
'MGA' => 'Malgaaši Fraŋ',
- 'MRO' => 'Mooritaani Ugiya',
+ 'MRO' => 'Mooritaani Ugiya (1973–2017)',
+ 'MRU' => 'Mooritaani Ugiya',
'MUR' => 'Mooris Rupii',
'MWK' => 'Malaawi Kwaca',
'MZM' => 'Mozambik Metikal',
@@ -93,7 +94,8 @@ $currencyNames = array(
'SHP' => 'Seŋ Helena Fraŋ',
'SLL' => 'Leeon',
'SOS' => 'Somaali Šiiliŋ',
- 'STD' => 'Sao Tome nda Prinsipe Dobra',
+ 'STD' => 'Sao Tome nda Prinsipe Dobra (1977–2017)',
+ 'STN' => 'Sao Tome nda Prinsipe Dobra',
'SZL' => 'Lilangeni',
'TND' => 'Tunizi Dinar',
'TZS' => 'Tanzaani Šiiliŋ',
@@ -105,9 +107,9 @@ $currencyNames = array(
'ZMK' => 'Zambi Kwaca (1968–2012)',
'ZMW' => 'Zambi Kwaca',
'ZWD' => 'Zimbabwe Dollar',
-);
+];
-$countryNames = array(
+$countryNames = [
'AD' => 'Andoora',
'AE' => 'Laaraw Imaarawey Margantey',
'AF' => 'Afgaanistan',
@@ -115,7 +117,6 @@ $countryNames = array(
'AI' => 'Angiiya',
'AL' => 'Albaani',
'AM' => 'Armeeni',
- 'AN' => 'Hollandu Antiiyey Laboo',
'AO' => 'Angoola',
'AR' => 'Argentine',
'AS' => 'Ameriki Samoa',
@@ -333,4 +334,4 @@ $countryNames = array(
'ZA' => 'Hawsa Afriki Laboo',
'ZM' => 'Zambi',
'ZW' => 'Zimbabwe',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesSg.php b/MLEB/cldr/CldrNames/CldrNamesSg.php
index c0ffe815..d224e782 100644
--- a/MLEB/cldr/CldrNames/CldrNamesSg.php
+++ b/MLEB/cldr/CldrNames/CldrNamesSg.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'ak' => 'Akâan',
'am' => 'Amarîki',
'ar' => 'Arâbo',
@@ -46,9 +46,9 @@ $languageNames = array(
'yo' => 'Yoruba',
'zh' => 'Shinuäa',
'zu' => 'Zûlu',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'AED' => 'dirâm tî âEmirâti tî Arâbo Ôko',
'AOA' => 'kwânza tî Angoläa',
'AUD' => 'dolära tî Ostralïi',
@@ -79,7 +79,8 @@ $currencyNames = array(
'LYD' => 'dinäar tî Libïi',
'MAD' => 'dirâm tî Marôko',
'MGA' => 'ariâri tî Madagasikära',
- 'MRO' => 'ugîya tî Moritanïi',
+ 'MRO' => 'ugîya tî Moritanïi (1973–2017)',
+ 'MRU' => 'ugîya tî Moritanïi',
'MUR' => 'rupïi tî Mörîsi',
'MWK' => 'kwâtia tî Malawïi',
'MZM' => 'metikala tî Mozambîka',
@@ -92,7 +93,8 @@ $currencyNames = array(
'SHP' => 'pôndo tî Zûâ Sênt-Helêna',
'SLL' => 'leône tî Sierâ-Leône',
'SOS' => 'shilîngi tî Somalïi',
- 'STD' => 'dôbra tî Sâô Tomë na Prinsîpe',
+ 'STD' => 'dôbra tî Sâô Tomë na Prinsîpe (1977–2017)',
+ 'STN' => 'dôbra tî Sâô Tomë na Prinsîpe',
'SZL' => 'lilangùeni tî Swazïlânde',
'TND' => 'dinära tî Tunizïi',
'TZS' => 'shilîngi tî Tanzanïi',
@@ -104,9 +106,9 @@ $currencyNames = array(
'ZMK' => 'kwâtia tî Zambïi (1968–2012)',
'ZMW' => 'kwâtia tî Zambïi',
'ZWD' => 'dolära tî Zimbäbwe',
-);
+];
-$countryNames = array(
+$countryNames = [
'AD' => 'Andôro',
'AE' => 'Arâbo Emirâti Ôko',
'AF' => 'Faganïta, Afganïstäan',
@@ -114,7 +116,6 @@ $countryNames = array(
'AI' => 'Angûîla',
'AL' => 'Albanïi',
'AM' => 'Armenïi',
- 'AN' => 'Antîyi tî Holânde',
'AO' => 'Angoläa',
'AR' => 'Arzantîna',
'AS' => 'Samöa tî Amerîka',
@@ -333,4 +334,4 @@ $countryNames = array(
'ZA' => 'Mbongo-Afrîka',
'ZM' => 'Zambïi',
'ZW' => 'Zimbäbwe',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesShi.php b/MLEB/cldr/CldrNames/CldrNamesShi.php
index 0c5604a5..44717e96 100644
--- a/MLEB/cldr/CldrNames/CldrNamesShi.php
+++ b/MLEB/cldr/CldrNames/CldrNamesShi.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'ak' => 'ⵜⴰⴽⴰⵏⵜ',
'am' => 'ⵜⴰⵎⵀⴰⵔⵉⵜ',
'ar' => 'ⵜⴰⵄⵔⴰⴱⵜ',
@@ -34,7 +34,7 @@ $languageNames = array(
'ro' => 'ⵜⴰⵔⵓⵎⴰⵏⵉⵜ',
'ru' => 'ⵜⴰⵔⵓⵙⵉⵜ',
'rw' => 'ⵜⴰⵔⵓⵡⴰⵏⴷⵉⵜ',
- 'shi' => 'ⵜⴰⵎⴰⵣⵉⵖⵜ',
+ 'shi' => 'ⵜⴰⵛⵍⵃⵉⵜ',
'so' => 'ⵜⴰⵙⵓⵎⴰⵍⵉⵜ',
'sv' => 'ⵜⴰⵙⵡⵉⴷⵉⵜ',
'ta' => 'ⵜⴰⵜⴰⵎⵉⵍⵜ',
@@ -46,9 +46,9 @@ $languageNames = array(
'yo' => 'ⵜⴰⵢⵔⵓⴱⴰⵜ',
'zh' => 'ⵜⴰⵛⵉⵏⵡⵉⵜ',
'zu' => 'ⵜⴰⵣⵓⵍⵓⵜ',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'AED' => 'ⴰⴷⵔⵉⵎ ⵏ ⵍⵉⵎⴰⵔⴰⵜ',
'AOA' => 'ⴽⵡⴰⵏⵣⴰ ⵏ ⴰⵏⴳⵓⵍⴰ',
'AUD' => 'ⴰⴷⵓⵍⴰⵔ ⵏ ⵓⵙⵜⵔⴰⵍⵢⴰ',
@@ -79,7 +79,8 @@ $currencyNames = array(
'LYD' => 'ⴰⴷⵉⵏⴰⵔ ⵏ ⵍⵉⴱⵢⴰ',
'MAD' => 'ⴰⴷⵔⵉⵎ ⵏ ⵍⵎⵖⵔⵉⴱ',
'MGA' => 'ⴼⵔⴰⵏⴽ ⵏ ⵎⴰⴷⴰⵖⴰⵛⵇⴰⵔ',
- 'MRO' => 'ⵓⵇⵉⵢⵢⴰ ⵏ ⵎⵓⵕⵉⵟⴰⵏⵢⴰ',
+ 'MRO' => 'ⵓⵇⵉⵢⵢⴰ ⵏ ⵎⵓⵕⵉⵟⴰⵏⵢⴰ (1973–2017)',
+ 'MRU' => 'ⵓⵇⵉⵢⵢⴰ ⵏ ⵎⵓⵕⵉⵟⴰⵏⵢⴰ',
'MUR' => 'ⴰⵔⵓⴱⵉ ⵏ ⵎⵓⵔⵉⵙ',
'MWK' => 'ⴽⵡⴰⵛⴰ ⵏ ⵎⴰⵍⴰⵡⵉ',
'MZM' => 'ⴰⵎⵉⵜⵉⴽⵍ ⵏ ⵎⵓⵣⵏⴱⵉⵇ',
@@ -93,7 +94,8 @@ $currencyNames = array(
'SHP' => 'ⴰⵊⵏⵉⵀ ⵏ ⵙⴰⵏⵜⵉⵍⵉⵏ',
'SLL' => 'ⵍⵉⵢⵓⵏ',
'SOS' => 'ⴰⵛⵉⵍⵉⵏ ⵏ ⵚⵚⵓⵎⴰⵍ',
- 'STD' => 'ⴰⴷⵓⴱⵔⴰ ⵏ ⵙⴰⵏⵟⵓⵎⵉ',
+ 'STD' => 'ⴰⴷⵓⴱⵔⴰ ⵏ ⵙⴰⵏⵟⵓⵎⵉ (1977–2017)',
+ 'STN' => 'ⴰⴷⵓⴱⵔⴰ ⵏ ⵙⴰⵏⵟⵓⵎⵉ',
'SZL' => 'ⵍⵉⵍⴰⵏⵊⵉⵏⵉ',
'TND' => 'ⴰⴷⵉⵏⴰⵔ ⵏ ⵜⵓⵏⵙ',
'TZS' => 'ⴰⵛⵉⵍⵉⵏ ⵏ ⵟⴰⵏⵥⴰⵏⵢⴰ',
@@ -105,9 +107,9 @@ $currencyNames = array(
'ZMK' => 'ⴰⴽⵡⴰⵛⴰ ⵏ ⵣⴰⵎⴱⵢⴰ (1968–2012)',
'ZMW' => 'ⴰⴽⵡⴰⵛⴰ ⵏ ⵣⴰⵎⴱⵢⴰ',
'ZWD' => 'ⴰⴷⵓⵍⴰⵔ ⵏ ⵣⵉⵎⴱⴰⴱⵡⵉ',
-);
+];
-$countryNames = array(
+$countryNames = [
'AD' => 'ⴰⵏⴷⵓⵔⴰ',
'AE' => 'ⵍⵉⵎⴰⵔⴰⵜ',
'AF' => 'ⴰⴼⵖⴰⵏⵉⵙⵜⴰⵏ',
@@ -115,7 +117,6 @@ $countryNames = array(
'AI' => 'ⴰⵏⴳⵉⵍⴰ',
'AL' => 'ⴰⵍⴱⴰⵏⵢⴰ',
'AM' => 'ⴰⵔⵎⵉⵏⵢⴰ',
- 'AN' => 'ⴰⵏⵜⵉⵢ ⵏ ⵀⵓⵍⴰⵏⴷⴰ',
'AO' => 'ⴰⵏⴳⵓⵍⴰ',
'AR' => 'ⴰⵔⵊⴰⵏⵜⵉⵏ',
'AS' => 'ⵙⴰⵎⵡⴰ ⵜⴰⵎⵉⵔⵉⴽⴰⵏⵉⵜ',
@@ -333,4 +334,4 @@ $countryNames = array(
'ZA' => 'ⴰⴼⵔⵉⵇⵢⴰ ⵏ ⵉⴼⴼⵓⵙ',
'ZM' => 'ⵣⴰⵎⴱⵢⴰ',
'ZW' => 'ⵣⵉⵎⴱⴰⴱⵡⵉ',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesShi_latn.php b/MLEB/cldr/CldrNames/CldrNamesShi_latn.php
index 8a87e2dc..baff6188 100644
--- a/MLEB/cldr/CldrNames/CldrNamesShi_latn.php
+++ b/MLEB/cldr/CldrNames/CldrNamesShi_latn.php
@@ -1,54 +1,54 @@
<?php
-$languageNames = array(
- 'ak' => 'takant',
- 'am' => 'tamharit',
- 'ar' => 'taɛrabt',
- 'be' => 'tabilarust',
- 'bg' => 'tablɣarit',
- 'bn' => 'tabnɣalit',
- 'cs' => 'tatcikit',
- 'de' => 'talimant',
- 'el' => 'tagrigit',
- 'en' => 'tanglizt',
- 'es' => 'tasbnyulit',
- 'fa' => 'tafursit',
- 'fr' => 'tafransist',
- 'ha' => 'tahawsat',
- 'hi' => 'tahindit',
- 'hu' => 'tahnɣarit',
- 'id' => 'tandunisit',
- 'ig' => 'tigbut',
- 'it' => 'taṭalyant',
- 'ja' => 'tajabbunit',
- 'jv' => 'tajavanit',
- 'km' => 'taxmirt',
- 'ko' => 'takurit',
- 'ms' => 'tamalawit',
- 'my' => 'tabirmanit',
- 'ne' => 'tanibalit',
- 'nl' => 'tahulandit',
- 'pa' => 'tabnjabit',
- 'pl' => 'tabulunit',
- 'pt' => 'tabṛṭqizt',
- 'ro' => 'tarumanit',
- 'ru' => 'tarusit',
- 'rw' => 'taruwandit',
- 'shi' => 'tamazight',
- 'so' => 'tasumalit',
- 'sv' => 'taswidit',
- 'ta' => 'tatamilt',
- 'th' => 'tataylandit',
- 'tr' => 'taturkit',
- 'uk' => 'tukranit',
- 'ur' => 'turdut',
- 'vi' => 'tafitnamit',
- 'yo' => 'tayrubat',
- 'zh' => 'tacinwit',
- 'zu' => 'tazulut',
-);
+$languageNames = [
+ 'ak' => 'Takant',
+ 'am' => 'Tamharit',
+ 'ar' => 'Taɛrabt',
+ 'be' => 'Tabilarust',
+ 'bg' => 'Tablɣarit',
+ 'bn' => 'Tabnɣalit',
+ 'cs' => 'Tatcikit',
+ 'de' => 'Talimant',
+ 'el' => 'Tagrigit',
+ 'en' => 'Tanglizt',
+ 'es' => 'Tasbnyulit',
+ 'fa' => 'Tafursit',
+ 'fr' => 'Tafransist',
+ 'ha' => 'Tahawsat',
+ 'hi' => 'Tahindit',
+ 'hu' => 'Tahnɣarit',
+ 'id' => 'Tandunisit',
+ 'ig' => 'Tigbut',
+ 'it' => 'Taṭalyant',
+ 'ja' => 'Tajabbunit',
+ 'jv' => 'Tajavanit',
+ 'km' => 'Taxmirt',
+ 'ko' => 'Takurit',
+ 'ms' => 'Tamalawit',
+ 'my' => 'Tabirmanit',
+ 'ne' => 'Tanibalit',
+ 'nl' => 'Tahulandit',
+ 'pa' => 'Tabnjabit',
+ 'pl' => 'Tabulunit',
+ 'pt' => 'Tabṛṭqizt',
+ 'ro' => 'Tarumanit',
+ 'ru' => 'Tarusit',
+ 'rw' => 'Taruwandit',
+ 'shi' => 'Tashelḥiyt',
+ 'so' => 'Tasumalit',
+ 'sv' => 'Taswidit',
+ 'ta' => 'Tatamilt',
+ 'th' => 'Tataylandit',
+ 'tr' => 'Taturkit',
+ 'uk' => 'Tukranit',
+ 'ur' => 'Turdut',
+ 'vi' => 'Tafitnamit',
+ 'yo' => 'Tayrubat',
+ 'zh' => 'Tacinwit',
+ 'zu' => 'Tazulut',
+];
-$currencyNames = array(
+$currencyNames = [
'AED' => 'adrim n limarat',
'AOA' => 'kwanza n angula',
'AUD' => 'adular n ustralya',
@@ -79,7 +79,8 @@ $currencyNames = array(
'LYD' => 'adinar n libya',
'MAD' => 'adrim n lmɣrib',
'MGA' => 'frank n madaɣacqar',
- 'MRO' => 'uqiyya n muṛiṭanya',
+ 'MRO' => 'uqiyya n muṛiṭanya (1973–2017)',
+ 'MRU' => 'uqiyya n muṛiṭanya',
'MUR' => 'arubi n muris',
'MWK' => 'kwaca n malawi',
'MZM' => 'amitikl n muznbiq',
@@ -93,7 +94,8 @@ $currencyNames = array(
'SHP' => 'ajnih n santilin',
'SLL' => 'liyun',
'SOS' => 'acilin n ṣṣumal',
- 'STD' => 'adubra n sanṭumi',
+ 'STD' => 'adubra n sanṭumi (1977–2017)',
+ 'STN' => 'adubra n sanṭumi',
'SZL' => 'lilanjini',
'TND' => 'adinar n tuns',
'TZS' => 'acilin n ṭanẓanya',
@@ -105,9 +107,9 @@ $currencyNames = array(
'ZMK' => 'akwaca n zambya (1968–2012)',
'ZMW' => 'akwaca n zambya',
'ZWD' => 'adular n zimbabwi',
-);
+];
-$countryNames = array(
+$countryNames = [
'AD' => 'andura',
'AE' => 'limarat',
'AF' => 'afɣanistan',
@@ -115,7 +117,6 @@ $countryNames = array(
'AI' => 'angila',
'AL' => 'albanya',
'AM' => 'arminya',
- 'AN' => 'antiy n hulanda',
'AO' => 'angula',
'AR' => 'arjantin',
'AS' => 'samwa tamirikanit',
@@ -333,4 +334,4 @@ $countryNames = array(
'ZA' => 'afriqya n iffus',
'ZM' => 'zambya',
'ZW' => 'zimbabwi',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesSi.php b/MLEB/cldr/CldrNames/CldrNamesSi.php
index 926a0a6c..2e27ae63 100644
--- a/MLEB/cldr/CldrNames/CldrNamesSi.php
+++ b/MLEB/cldr/CldrNames/CldrNamesSi.php
@@ -1,49 +1,88 @@
<?php
-$languageNames = array(
+$languageNames = [
+ 'aa' => 'අෆාර්',
'ab' => 'ඇබ්කාසියානු',
+ 'ace' => 'අචයිනිස්',
+ 'ada' => 'අඩන්ග්මෙ',
+ 'ady' => 'අඩිඝෙ',
'aeb' => 'ටියුනිසියනු අරාබි',
- 'af' => 'අප්‍රිකානු',
+ 'af' => 'අෆ්රිකාන්ස්',
'agq' => 'ඇගම්',
+ 'ain' => 'අයිනු',
'ak' => 'අකාන්',
+ 'ale' => 'ඇලුඑට්',
+ 'alt' => 'සතර්න් අල්ටය්',
'am' => 'ඇම්හාරික්',
+ 'an' => 'ඇරගොනීස්',
+ 'anp' => 'අන්ගික',
'ar' => 'අරාබි',
- 'ar-001' => 'නවීන සම්මත අරාබි',
+ 'ar-001' => 'නූතන සම්මත අරාබි',
'arn' => 'මපුචෙ',
- 'as' => 'ඇසමියානු',
+ 'arp' => 'ඇරපහො',
+ 'as' => 'ඇසෑම්',
'asa' => 'අසු',
+ 'ast' => 'ඇස්ටියුරියන්',
+ 'av' => 'ඇවරික්',
+ 'awa' => 'අවදි',
+ 'ay' => 'අයිමරා',
'az' => 'අසර්බයිජාන්',
'ba' => 'බාෂ්කිර්',
+ 'ban' => 'බැලිනීස්',
+ 'bas' => 'බසා',
'be' => 'බෙලරුසියානු',
'bem' => 'බෙම්බා',
'bez' => 'බෙනා',
'bg' => 'බල්ගේරියානු',
+ 'bgn' => 'බටහිර බලොචි',
+ 'bho' => 'බොජ්පුරි',
+ 'bi' => 'බිස්ලමා',
+ 'bin' => 'බිනි',
+ 'bla' => 'සික්සිකා',
'bm' => 'බම්බරා',
'bn' => 'බෙංගාලි',
'bo' => 'ටිබෙට්',
'br' => 'බ්‍රේටොන්',
'brx' => 'බොඩො',
'bs' => 'බොස්නියානු',
+ 'bug' => 'බුගිනීස්',
+ 'byn' => 'බ්ලින්',
'ca' => 'කැටලන්',
+ 'ce' => 'චෙච්නියානු',
+ 'ceb' => 'සෙබුඅනො',
'cgg' => 'චිගා',
+ 'ch' => 'චමොරො',
+ 'chk' => 'චූකීස්',
+ 'chm' => 'මරි',
+ 'cho' => 'චොක්ටොව්',
'chr' => 'චෙරොකී',
+ 'chy' => 'චෙයෙන්නෙ',
'ckb' => 'සොරානි කුර්දිෂ්',
- 'co' => 'ක්‍රොඑශියානු',
- 'cs' => 'චෙත්',
- 'cy' => 'වේල්ස්',
+ 'co' => 'කෝසිකානු',
+ 'crs' => 'සෙසෙල්ව ක්‍රොල් ෆ්‍රෙන්ච්',
+ 'cs' => 'චෙක්',
+ 'cu' => 'චර්ච් ස්ලැවික්',
+ 'cv' => 'චවේෂ්',
+ 'cy' => 'වෙල්ෂ්',
'da' => 'ඩැනිශ්',
+ 'dak' => 'ඩකොටා',
+ 'dar' => 'ඩාර්ග්වා',
'dav' => 'ටයිටා',
'de' => 'ජර්මන්',
'de-at' => 'ඔස්ට්‍රියානු ජර්මන්',
'de-ch' => 'ස්විස් උසස් ජර්මන්',
- 'dje' => 'ෆර්මා',
+ 'dgr' => 'ඩොග්‍රිබ්',
+ 'dje' => 'සර්මා',
'dsb' => 'පහළ සෝබියානු',
'dua' => 'ඩුආලා',
- 'dv' => 'දිවෙහි',
+ 'dv' => 'ඩිවෙහි',
'dyo' => 'ජොල-ෆෝනියි',
'dz' => 'ඩිසොන්කා',
+ 'dzg' => 'ඩසාගා',
'ebu' => 'එම්බු',
'ee' => 'ඉව්',
+ 'efi' => 'එෆික්',
+ 'eka' => 'එකජුක්',
'el' => 'ග්‍රීක',
'en' => 'ඉංග්‍රීසි',
'en-au' => 'ඕස්ට්‍රේලියානු ඉංග්‍රීසි',
@@ -56,177 +95,316 @@ $languageNames = array(
'es-es' => 'යුරෝපීය ස්පාඤ්ඤ',
'es-mx' => 'මෙක්සිකානු ස්පාඤ්ඤ',
'et' => 'එස්තෝනියානු',
- 'eu' => 'බොස්කෝ',
+ 'eu' => 'බාස්ක්',
+ 'ewo' => 'එවොන්ඩො',
'fa' => 'පර්සියානු',
+ 'ff' => 'ෆුලාහ්',
'fi' => 'ෆින්ලන්ත',
'fil' => 'පිලිපීන',
'fj' => 'ෆීජි',
'fo' => 'ෆාරෝස්',
+ 'fon' => 'ෆොන්',
'fr' => 'ප්‍රංශ',
'fr-ca' => 'කැනේඩියානු ප්‍රංශ',
'fr-ch' => 'ස්විස් ප්‍රංශ',
+ 'fur' => 'ෆ්‍රියුලියන්',
'fy' => 'බටහිර ෆ්‍රිසියානු',
'ga' => 'අයර්ලන්ත',
+ 'gaa' => 'ගා',
'gag' => 'ගගාස්',
+ 'gan' => 'ගැන් චයිනිස්',
+ 'gd' => 'ස්කොට්ටිශ් ගෙලික්',
+ 'gez' => 'ගීස්',
+ 'gil' => 'ගිල්බර්ටීස්',
'gl' => 'ගැලීසියානු',
'gn' => 'ගුවාරනි',
- 'gsw' => 'ස්විස් ජර්මනි',
+ 'gor' => 'ගොරොන්ටාලො',
+ 'gsw' => 'ස්විස් ජර්මානු',
'gu' => 'ගුජරාටි',
'guz' => 'ගුසී',
'gv' => 'මැන්ක්ස්',
+ 'gwi' => 'ග්විචින්',
'ha' => 'හෝසා',
+ 'hak' => 'හකා චයිනිස්',
'haw' => 'හවායි',
'he' => 'හීබෲ',
'hi' => 'හින්දි',
- 'hr' => 'ක්‍රෝයේශියානු',
+ 'hil' => 'හිලිගෙනන්',
+ 'hmn' => 'මොන්ග්',
+ 'hr' => 'කෝඒෂියානු',
'hsb' => 'ඉහළ සෝබියානු',
+ 'hsn' => 'සියැන් චීන',
'ht' => 'හයිටි',
'hu' => 'හන්ගේරියානු',
+ 'hup' => 'හුපා',
'hy' => 'ආර්මේනියානු',
+ 'hz' => 'හෙරෙරො',
+ 'ia' => 'ඉන්ටලින්ගුආ',
+ 'iba' => 'ඉබන්',
+ 'ibb' => 'ඉබිබියො',
'id' => 'ඉන්දුනීසියානු',
'ig' => 'ඉග්බෝ',
'ii' => 'සිචුආන් යී',
+ 'ilo' => 'ඉලොකො',
+ 'inh' => 'ඉන්ගුෂ්',
+ 'io' => 'ඉඩො',
'is' => 'අයිස්ලන්ත',
'it' => 'ඉතාලි',
'iu' => 'ඉනුක්ටිටුට්',
'ja' => 'ජපන්',
+ 'jbo' => 'ලොජ්බන්',
'jgo' => 'නොම්බා',
'jmc' => 'මැකාමී',
'jv' => 'ජාවා',
'ka' => 'ජෝර්ජියානු',
- 'kab' => 'කැබලා',
+ 'kab' => 'කාබිල්',
+ 'kac' => 'කචින්',
+ 'kaj' => 'ජ්ජු',
'kam' => 'කැම්බා',
+ 'kbd' => 'කබාර්ඩියන්',
+ 'kcg' => 'ට්යප්',
'kde' => 'මැකොන්ඩ්',
- 'kea' => 'කබුවෙර්ඩියානෝ',
+ 'kea' => 'කබුවෙර්ඩියානු',
+ 'kfo' => 'කොරො',
+ 'kha' => 'ඛසි',
'khq' => 'කොයිරා චිනි',
'ki' => 'කිකුයු',
+ 'kj' => 'කුයන්යමා',
'kk' => 'කසාඛ්',
+ 'kkj' => 'කකො',
'kl' => 'කලාලිසට්',
'kln' => 'කලෙන්ජන්',
'km' => 'කමර්',
+ 'kmb' => 'කිම්බුන්ඩු',
'kn' => 'කණ්ණඩ',
'ko' => 'කොරියානු',
'koi' => 'කොමි-පර්මියාක්',
'kok' => 'කොන්කනි',
+ 'kpe' => 'ක්පෙලෙ',
+ 'kr' => 'කනුරි',
+ 'krc' => 'කරන්චි-බාකර්',
+ 'krl' => 'කැරෙලියන්',
+ 'kru' => 'කුරුඛ්',
'ks' => 'කාෂ්මීර්',
'ksb' => 'ශාම්බලා',
'ksf' => 'බාෆියා',
+ 'ksh' => 'කොලොග්නියන්',
'ku' => 'කුර්දි',
+ 'kum' => 'කුමික්',
+ 'kv' => 'කොමි',
'kw' => 'කෝනීසියානු',
'ky' => 'කිර්ගිස්',
'la' => 'ලතින්',
+ 'lad' => 'ලඩිනො',
'lag' => 'ලංගි',
'lb' => 'ලක්සැම්බර්ග්',
+ 'lez' => 'ලෙස්ගියන්',
'lg' => 'ගන්ඩා',
+ 'li' => 'ලිම්බර්ගිශ්',
'lkt' => 'ලකොට',
'ln' => 'ලින්ගලා',
'lo' => 'ලාඕ',
+ 'loz' => 'ලොසි',
+ 'lrc' => 'උතුරු ලුරි',
'lt' => 'ලිතුවේනියානු',
- 'lu' => 'ලු',
+ 'lu' => 'ලුබා-කටන්ගා',
+ 'lua' => 'ලුබ-ලුලුඅ',
+ 'lun' => 'ලුන්ඩ',
'luo' => 'ලුඔ',
+ 'lus' => 'මිසො',
'luy' => 'ලුයියා',
'lv' => 'ලැට්වියානු',
+ 'mad' => 'මදුරීස්',
+ 'mag' => 'මඝහි',
+ 'mai' => 'මයිතිලි',
+ 'mak' => 'මකාසාර්',
'mas' => 'මසායි',
+ 'mdf' => 'මොක්ශා',
+ 'men' => 'මෙන්ඩෙ',
'mer' => 'මෙරු',
'mfe' => 'මොරිස්යෙම්',
'mg' => 'මලගාසි',
'mgh' => 'මඛුවා-මීටෝ',
'mgo' => 'මෙටා',
+ 'mh' => 'මාශලීස්',
'mi' => 'මාවොරි',
+ 'mic' => 'මික්මැක්',
+ 'min' => 'මිනන්ග්කබාවු',
'mk' => 'මැසිඩෝනියානු',
'ml' => 'මලයාලම්',
'mn' => 'මොංගෝලියානු',
+ 'mni' => 'මනිපුරි',
'moh' => 'මොහොව්ක්',
+ 'mos' => 'මොස්සි',
'mr' => 'මරාති',
'ms' => 'මැලේ',
'mt' => 'මොල්ටිස්',
'mua' => 'මුන්ඩන්',
+ 'mul' => 'බහු භාෂා',
+ 'mus' => 'ක්‍රීක්',
+ 'mwl' => 'මිරන්ඩීස්',
'my' => 'බුරුම',
+ 'myv' => 'එර්ස්යා',
+ 'mzn' => 'මැසන්ඩරනි',
+ 'na' => 'නෞරු',
+ 'nan' => 'මින් නන් චයිනිස්',
+ 'nap' => 'නියාපොලිටන්',
'naq' => 'නාමා',
- 'nb' => 'නෝවේජියානු බොක්මාල්',
+ 'nb' => 'නෝර්වීජියානු බොක්මල්',
'nd' => 'උතුරු එන්ඩිබෙලෙ',
+ 'nds' => 'පහළ ජර්මන්',
+ 'nds-nl' => 'පහළ සැක්සන්',
'ne' => 'නේපාල',
+ 'new' => 'නෙවාරි',
+ 'ng' => 'න්ඩොන්ගා',
+ 'nia' => 'නියාස්',
+ 'niu' => 'නියුඑන්',
'nl' => 'ලන්දේසි',
'nl-be' => 'ෆ්ලෙමිශ්',
'nmg' => 'කුවාසිඔ',
- 'nn' => 'නොවේර්ජියානු නයිනෝර්ස්ක්',
+ 'nn' => 'නෝර්වීජියානු නයිනෝර්ස්ක්',
+ 'nnh' => 'න්ගියාම්බූන්',
+ 'nog' => 'නොගායි',
'nqo' => 'එන්‘කෝ',
+ 'nr' => 'සෞත් ඩ්බේල්',
+ 'nso' => 'නොදර්න් සොතො',
'nus' => 'නොයර්',
- 'nyn' => 'නයන්කොළේ',
+ 'nv' => 'නවාජො',
+ 'ny' => 'න්යන්ජා',
+ 'nyn' => 'නයන්කෝලෙ',
+ 'oc' => 'ඔසිටාන්',
'om' => 'ඔරොමෝ',
- 'or' => 'ඔරියා',
- 'pa' => 'ජන්ජාබි',
+ 'or' => 'ඔඩියා',
+ 'os' => 'ඔසිටෙක්',
+ 'pa' => 'පන්ජාබි',
+ 'pag' => 'පන්ගසීනන්',
+ 'pam' => 'පන්පන්ග',
+ 'pap' => 'පපියමෙන්ටො',
+ 'pau' => 'පලවුවන්',
+ 'pcm' => 'නෛජීරියන් පෙන්ගින්',
'pl' => 'පෝලන්ත',
+ 'prg' => 'පෘශියන්',
'ps' => 'පෂ්ටො',
'pt' => 'පෘතුගීසි',
'pt-br' => 'බ්‍රසීල පෘතුගීසි',
'pt-pt' => 'යුරෝපීය පෘතුගීසි',
'qu' => 'ක්වීචුවා',
'quc' => 'කියිචේ',
+ 'rap' => 'රපනුයි',
+ 'rar' => 'රරොටොන්ගන්',
'rm' => 'රොමෑන්ශ්',
'rn' => 'රුන්ඩි',
'ro' => 'රොමේනියානු',
+ 'ro-md' => 'මොල්ඩවිආනු',
'rof' => 'රෝම්බෝ',
'ru' => 'රුසියානු',
+ 'rup' => 'ඇරොමානියානු',
'rw' => 'කින්යර්වන්ඩා',
'rwk' => 'ර්වා',
'sa' => 'සංස්කෘත',
+ 'sad' => 'සන්ඩවෙ',
+ 'sah' => 'සඛා',
'saq' => 'සම්බුරු',
+ 'sat' => 'සෑන්ටලි',
+ 'sba' => 'න්ගම්බෙ',
'sbp' => 'සංගු',
+ 'sc' => 'සාර්ඩිනිඅන්',
+ 'scn' => 'සිසිලියන්',
+ 'sco' => 'ස්කොට්ස්',
'sd' => 'සින්ධි',
+ 'sdh' => 'දකුණු කුර්දි',
'se' => 'උතුරු සාමි',
'seh' => 'සෙනා',
'ses' => 'කෝයිරාබොරො සෙන්නි',
'sg' => 'සන්ග්‍රෝ',
'shi' => 'ටචේල්හිට්',
+ 'shn' => 'ශාන්',
'si' => 'සිංහල',
'sk' => 'ස්ලෝවැක්',
'sl' => 'ස්ලෝවේනියානු',
+ 'sm' => 'සෑමොඅන්',
'sma' => 'දකුණු සාමි',
'smj' => 'ලුලේ සාමි',
'smn' => 'ඉනාරි සාමි',
'sms' => 'ස්කොල්ට් සාමි',
'sn' => 'ශෝනා',
+ 'snk' => 'සොනින්කෙ',
'so' => 'සෝමාලි',
'sq' => 'ඇල්බේනියානු',
'sr' => 'සර්බියානු',
+ 'srn' => 'ස්‍රන් ටොන්ගො',
+ 'ss' => 'ස්වති',
+ 'ssy' => 'සහො',
+ 'st' => 'සතර්න් සොතො',
'su' => 'සන්ඩනීසියානු',
+ 'suk' => 'සුකුමා',
'sv' => 'ස්වීඩන්',
'sw' => 'ස්වාහිලි',
- 'swc' => 'කොන්ගෝ ස්වාහිලි',
+ 'sw-cd' => 'කොංගෝ ස්වාහිලි',
+ 'swb' => 'කොමොරියන්',
+ 'syr' => 'ස්‍රයෑක්',
'ta' => 'දෙමළ',
'te' => 'තෙළිඟු',
+ 'tem' => 'ටිම්නෙ',
'teo' => 'ටෙසෝ',
+ 'tet' => 'ටේටම්',
'tg' => 'ටජික්',
'th' => 'තායි',
'ti' => 'ටිග්‍රින්යා',
+ 'tig' => 'ටීග්‍රෙ',
'tk' => 'ටර්ක්මෙන්',
+ 'tlh' => 'ක්ලින්ගොන්',
+ 'tn' => 'ස්වනා',
'to' => 'ටොංගා',
+ 'tpi' => 'ටොක් පිසින්',
'tr' => 'තුර්කි',
+ 'trv' => 'ටරොකො',
+ 'ts' => 'සොන්ග',
'tt' => 'ටාටර්',
+ 'tum' => 'ටුම්බුකා',
+ 'tvl' => 'ටුවාලු',
'twq' => 'ටසවාක්',
+ 'ty' => 'ටහිටියන්',
+ 'tyv' => 'ටුවිනියන්',
'tzm' => 'මධ්‍යම ඇට්ලස් ටමසිට්',
+ 'udm' => 'අඩ්මර්ට්',
'ug' => 'උයිගර්',
'uk' => 'යුක්රේනියානු',
+ 'umb' => 'උබුන්ඩු',
'und' => 'නොදන්නා භාෂාව',
'ur' => 'උර්දු',
'uz' => 'උස්බෙක්',
'vai' => 'වයි',
+ 've' => 'වෙන්ඩා',
'vi' => 'වියට්නාම්',
+ 'vo' => 'වොලපූක්',
'vun' => 'වුන්ජෝ',
+ 'wa' => 'වෑලූන්',
+ 'wae' => 'වොල්සර්',
+ 'wal' => 'වොලෙට්ට',
+ 'war' => 'වොරෙය්',
+ 'wbp' => 'වොපිරි',
'wo' => 'වොලොෆ්',
+ 'wuu' => 'වූ චයිනිස්',
+ 'xal' => 'කල්මික්',
'xh' => 'ශෝසා',
'xog' => 'සොගා',
+ 'yav' => 'යන්ග්බෙන්',
+ 'ybb' => 'යෙම්බා',
+ 'yi' => 'යිඩිශ්',
'yo' => 'යොරූබා',
+ 'yue' => 'කැන්ටොනීස්',
'zgh' => 'සම්මත මොරොක්කෝ ටමසිග්ත්',
'zh' => 'චීන',
- 'zh-hans' => 'සුළුකළ චීන',
+ 'zh-hans' => 'සරල චීන',
'zh-hant' => 'සාම්ප්‍රදායික චීන',
'zu' => 'සුලු',
+ 'zun' => 'සුනි',
'zxx' => 'වාග් විද්‍යා අන්තර්ගතයක් නැත',
-);
+ 'zza' => 'සාසා',
+];
-$currencyNames = array(
+$currencyNames = [
'AED' => 'එක්සත් අරාබි එමිරේට්ස් ඩිරාම්',
'AFN' => 'ඇෆ්ගනිථාන ඇෆ්ගනි',
'ALL' => 'ඇල්බේනියානු ලෙක්',
@@ -250,12 +428,14 @@ $currencyNames = array(
'BSD' => 'බහමානු ඩොලර්',
'BTN' => 'භූතාන නගුල්ට්‍රම්',
'BWP' => 'බොට්ස්වානා පුලා',
- 'BYR' => 'බෙලරූස් රූබල්',
+ 'BYN' => 'බෙලරූස් රූබල්',
+ 'BYR' => 'බෙලරූස් රූබල් (2000–2016)',
'BZD' => 'බෙලීස් ඩොලර්',
'CAD' => 'කැනේඩියානු ඩොලර්',
'CDF' => 'කොංගෝ ෆ්‍රෑන්ක්',
'CHF' => 'ස්විස් ෆ්‍රෑන්ක්',
'CLP' => 'චිලි පැසෝ',
+ 'CNH' => 'චීන යුආන් (එතෙර)',
'CNY' => 'චීන යුආන්',
'COP' => 'කොලොම්බියානු පෙසෝ',
'CRC' => 'කොස්ට රිකා කොලෝන්',
@@ -318,7 +498,8 @@ $currencyNames = array(
'MMK' => 'බුරුම ක්යාට්',
'MNT' => 'මොන්ගෝලියානු ටග්‍රික්',
'MOP' => 'මැකනීස් පටකා',
- 'MRO' => 'මුරුසි ඔයිගුයියා',
+ 'MRO' => 'මුරුසි ඔයිගුයියා (1973–2017)',
+ 'MRU' => 'මුරුසි ඔයිගුයියා',
'MUR' => 'මුරිසියානු රුපියල්',
'MVR' => 'මාලදිවයින් රුෆියා',
'MWK' => 'මලාවි ක්වාචා',
@@ -333,7 +514,7 @@ $currencyNames = array(
'NZD' => 'නවසීලන්ත ඩොලර්',
'OMR' => 'ඕමාන් රියාල්',
'PAB' => 'පැනමා බැල්බෝ',
- 'PEN' => 'පේරු නියුවෝ සොල්',
+ 'PEN' => 'පේරු සොල්',
'PGK' => 'පැපුවා නිව් ගිනියානු කිනා',
'PHP' => 'පිලිපීන පෙසෝ',
'PKR' => 'පාකිස්ථාන රුපියල්',
@@ -355,7 +536,8 @@ $currencyNames = array(
'SOS' => 'සෝමාලියානු ශිලිං',
'SRD' => 'සුරිනාම් ඩොලර්',
'SSP' => 'දකුණු සුඩාන පවුම්',
- 'STD' => 'සාඕ තෝම් සහ ප්‍රින්සිප් දොබ්‍රා',
+ 'STD' => 'සාඕ තෝම් සහ ප්‍රින්සිප් දොබ්‍රා (1977–2017)',
+ 'STN' => 'සාඕ තෝම් සහ ප්‍රින්සිප් දොබ්‍රා',
'SYP' => 'සිරියානු පවුම්',
'SZL' => 'ස්වාසි ලිලන්ජනි',
'THB' => 'තායි බාත්',
@@ -372,7 +554,8 @@ $currencyNames = array(
'USD' => 'ඇමරිකානු ඩොලර්',
'UYU' => 'උරුගුවේ පෙසෝ',
'UZS' => 'උස්බෙකිස්ථාන සම්',
- 'VEF' => 'වෙනිසියුලානු බොලිවර්',
+ 'VEF' => 'වෙනිසියුලානු බොලිවර් (2008–2018)',
+ 'VES' => 'වෙනිසියුලානු බොලිවර්',
'VND' => 'වියට්නාම ඩොන්',
'VUV' => 'වනුවාටු වාටු',
'WST' => 'සැමෝවා ටාලා',
@@ -385,9 +568,9 @@ $currencyNames = array(
'ZAR' => 'දකුණු අප්‍රිකානු රැන්ඩ්',
'ZMK' => 'සැම්බියානු ක්වාචා (1968–2012)',
'ZMW' => 'සැම්බියානු ක්වාචා',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'AED' => 'AED',
'AFN' => 'AFN',
'ALL' => 'ALL',
@@ -411,6 +594,7 @@ $currencySymbols = array(
'BSD' => 'BSD',
'BTN' => 'BTN',
'BWP' => 'BWP',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CA$',
@@ -516,6 +700,7 @@ $currencySymbols = array(
'SRD' => 'SRD',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'Db',
'SYP' => 'SYP',
'SZL' => 'SZL',
'THB' => '฿',
@@ -543,9 +728,9 @@ $currencySymbols = array(
'YER' => 'YER',
'ZAR' => 'ZAR',
'ZMW' => 'ZMW',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'ඇසෙන්ෂන් දිවයින',
'AD' => 'ඇන්ඩෝරාව',
'AE' => 'එක්සත් අරාබි එමිර් රාජ්‍යය',
@@ -554,18 +739,17 @@ $countryNames = array(
'AI' => 'ඇන්ගුයිලාව',
'AL' => 'ඇල්බේනියාව',
'AM' => 'ආර්මේනියාව',
- 'AN' => 'නෙදර්ලන්ත ඇන්ටිලීසිය',
'AO' => 'ඇන්ගෝලාව',
'AQ' => 'ඇන්ටාක්ටිකාව',
'AR' => 'ආර්ජෙන්ටිනාව',
- 'AS' => 'ඇමරිකානු සැමෝවාව',
+ 'AS' => 'ඇමරිකානු සැමෝවා',
'AT' => 'ඔස්ට්‍රියාව',
'AU' => 'ඕස්ට්‍රේලියාව',
- 'AW' => 'අරුබාව',
+ 'AW' => 'අරූබා',
'AX' => 'ඕලන්ඩ් දූපත්',
'AZ' => 'අසර්බයිජානය',
'BA' => 'බොස්නියාව සහ හර්සගොවීනාව',
- 'BB' => 'බාර්බඩෝස්',
+ 'BB' => 'බාබඩෝස්',
'BD' => 'බංග්ලාදේශය',
'BE' => 'බෙල්ජියම',
'BF' => 'බර්කිනා ෆාසෝ',
@@ -604,7 +788,7 @@ $countryNames = array(
'CW' => 'කුරකාවෝ',
'CX' => 'ක්‍රිස්මස් දූපත',
'CY' => 'සයිප්‍රසය',
- 'CZ' => 'චෙක් ජනරජය',
+ 'CZ' => 'චෙචියාව',
'DE' => 'ජර්මනිය',
'DG' => 'දියාගෝ ගාර්සියා',
'DJ' => 'ජිබුටි',
@@ -621,6 +805,7 @@ $countryNames = array(
'ES' => 'ස්පාඤ්ඤය',
'ET' => 'ඉතියෝපියාව',
'EU' => 'යුරෝපා සංගමය',
+ 'EZ' => 'යුරෝ කලාපය',
'FI' => 'ෆින්ලන්තය',
'FJ' => 'ෆීජී',
'FK' => 'ෆෝක්ලන්ත දූපත්',
@@ -690,7 +875,7 @@ $countryNames = array(
'LV' => 'ලැට්වියාව',
'LY' => 'ලිබියාව',
'MA' => 'මොරොක්කෝව',
- 'MC' => 'මොනැකෝව',
+ 'MC' => 'මොනාකෝව',
'MD' => 'මොල්ඩෝවාව',
'ME' => 'මොන්ටෙනීග්‍රෝ',
'MF' => 'ශාන්ත මාර්ටින්',
@@ -787,6 +972,7 @@ $countryNames = array(
'UA' => 'යුක්රේනය',
'UG' => 'උගන්ඩාව',
'UM' => 'එක්සත් ජනපද ඈත දූපත්',
+ 'UN' => 'එක්සත් ජාතීන්',
'US' => 'එ.ජ',
'UY' => 'උරුගුවේ',
'UZ' => 'උස්බෙකිස්ථානය',
@@ -805,55 +991,81 @@ $countryNames = array(
'ZA' => 'දකුණු අප්‍රිකාව',
'ZM' => 'සැම්බියාව',
'ZW' => 'සිම්බාබ්වේ',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-one' => 'සියවස් {0}',
+ 'century-other' => 'සියවස් {0}',
'day-future-one' => 'දින {0}න්',
'day-future-other' => 'දින {0}න්',
'day-narrow-future-one' => 'දින {0}න්',
'day-narrow-future-other' => 'දින {0}න්',
- 'day-narrow-past-one' => 'දින {0} ට පෙර',
- 'day-narrow-past-other' => 'දින {0} ට පෙර',
+ 'day-narrow-past-one' => 'දින {0}කට පෙර',
+ 'day-narrow-past-other' => 'දින {0}කට පෙර',
'day-one' => 'දින {0}',
'day-other' => 'දින {0}',
- 'day-past-one' => 'දින {0} ට පෙර',
- 'day-past-other' => 'දින {0} ට පෙර',
+ 'day-past-one' => 'දින {0}කට පෙර',
+ 'day-past-other' => 'දින {0}කට පෙර',
'day-short-future-one' => 'දින {0}න්',
'day-short-future-other' => 'දින {0}න්',
- 'day-short-past-one' => 'දින {0} ට පෙර',
- 'day-short-past-other' => 'දින {0} ට පෙර',
- 'hour-future-one' => 'පැය {0} කින්',
- 'hour-future-other' => 'පැය {0} කින්',
- 'hour-narrow-future-one' => 'පැය {0} කින්',
- 'hour-narrow-future-other' => 'පැය {0} කින්',
- 'hour-narrow-past-one' => 'පැය {0}ට පෙර',
- 'hour-narrow-past-other' => 'පැය {0}ට පෙර',
+ 'day-short-past-one' => 'දින {0}කට පෙර',
+ 'day-short-past-other' => 'දින {0}කට පෙර',
+ 'fri-future-one' => '+{0} සිකුරදාවකින්',
+ 'fri-future-other' => 'සිකුරදාවන් +{0} කින්',
+ 'fri-narrow-future-one' => 'සිකුරදාවන් +{0} කින්',
+ 'fri-narrow-future-other' => 'සිකුරදාවන් +{0} කින්',
+ 'fri-narrow-past-one' => 'සිකුරදාවන් {0} කට පෙර',
+ 'fri-narrow-past-other' => 'සිකුරදාවන් {0} කට පෙර',
+ 'fri-past-one' => '{0} සිකුරදාවකට පෙර',
+ 'fri-past-other' => 'සිකුරදාවන් {0} කට පෙර',
+ 'fri-short-future-one' => 'සිකුරදාවන් +{0} කින්',
+ 'fri-short-future-other' => 'සිකුරදාවන් +{0} කින්',
+ 'fri-short-past-one' => 'සිකුරදාවන් {0} කට පෙර',
+ 'fri-short-past-other' => 'සිකුරදාවන් {0} කට පෙර',
+ 'hour-future-one' => 'පැය {0}කින්',
+ 'hour-future-other' => 'පැය {0}කින්',
+ 'hour-narrow-future-one' => 'පැය {0}කින්',
+ 'hour-narrow-future-other' => 'පැය {0}කින්',
+ 'hour-narrow-past-one' => 'පැය {0}කට පෙර',
+ 'hour-narrow-past-other' => 'පැය {0}කට පෙර',
'hour-one' => 'පැය {0}',
'hour-other' => 'පැය {0}',
- 'hour-past-one' => 'පැය {0}ට පෙර',
- 'hour-past-other' => 'පැය {0}ට පෙර',
- 'hour-short-future-one' => 'පැය {0} කින්',
- 'hour-short-future-other' => 'පැය {0} කින්',
- 'hour-short-past-one' => 'පැය {0}ට පෙර',
- 'hour-short-past-other' => 'පැය {0}ට පෙර',
- 'microsecond-one' => 'මයික්‍රෝ තත්පර {0}',
- 'microsecond-other' => 'මයික්‍රෝ තත්පර {0}',
+ 'hour-past-one' => 'පැය {0}කට පෙර',
+ 'hour-past-other' => 'පැය {0}කට පෙර',
+ 'hour-short-future-one' => 'පැය {0}කින්',
+ 'hour-short-future-other' => 'පැය {0}කින්',
+ 'hour-short-past-one' => 'පැය {0}කට පෙර',
+ 'hour-short-past-other' => 'පැය {0}කට පෙර',
+ 'microsecond-one' => 'මයික්‍රොතත්පර {0}',
+ 'microsecond-other' => 'මයික්‍රොතත්පර {0}',
'millisecond-one' => 'මිලිතත්පර {0}',
'millisecond-other' => 'මිලිතත්පර {0}',
- 'minute-future-one' => 'මිනිත්තු {0} කින්',
- 'minute-future-other' => 'මිනිත්තු {0} කින්',
- 'minute-narrow-future-one' => 'මිනිත්තු {0} කින්',
- 'minute-narrow-future-other' => 'මිනිත්තු {0} කින්',
- 'minute-narrow-past-one' => 'මිනිත්තු {0}ට පෙර',
- 'minute-narrow-past-other' => 'මිනිත්තු {0}ට පෙර',
+ 'minute-future-one' => 'මිනිත්තු {0}කින්',
+ 'minute-future-other' => 'මිනිත්තු {0}කින්',
+ 'minute-narrow-future-one' => 'මිනිත්තු {0}කින්',
+ 'minute-narrow-future-other' => 'මිනිත්තු {0}කින්',
+ 'minute-narrow-past-one' => 'මිනිත්තු {0}කට පෙර',
+ 'minute-narrow-past-other' => 'මිනිත්තු {0}කට පෙර',
'minute-one' => 'මිනිත්තු {0}',
'minute-other' => 'මිනිත්තු {0}',
- 'minute-past-one' => 'මිනිත්තු {0}ට පෙර',
- 'minute-past-other' => 'මිනිත්තු {0}ට පෙර',
- 'minute-short-future-one' => 'මිනිත්තු {0} කින්',
- 'minute-short-future-other' => 'මිනිත්තු {0} කින්',
- 'minute-short-past-one' => 'මිනිත්තු {0}ට පෙර',
- 'minute-short-past-other' => 'මිනිත්තු {0}ට පෙර',
+ 'minute-past-one' => 'මිනිත්තු {0}කට පෙර',
+ 'minute-past-other' => 'මිනිත්තු {0}කට පෙර',
+ 'minute-short-future-one' => 'මිනිත්තු {0}කින්',
+ 'minute-short-future-other' => 'මිනිත්තු {0}කින්',
+ 'minute-short-past-one' => 'මිනිත්තු {0}කට පෙර',
+ 'minute-short-past-other' => 'මිනිත්තු {0}කට පෙර',
+ 'mon-future-one' => '{0} සඳුදාවකින්',
+ 'mon-future-other' => 'සඳුදාවන් {0} කින්',
+ 'mon-narrow-future-one' => 'සඳුදාවන් {0} කින්',
+ 'mon-narrow-future-other' => 'සඳුදාවන් {0} කින්',
+ 'mon-narrow-past-one' => 'සඳුදාවන් {0} කට පෙර',
+ 'mon-narrow-past-other' => 'සඳුදාවන් {0} කට පෙර',
+ 'mon-past-one' => '{0} සඳුදාවකට පෙර',
+ 'mon-past-other' => 'සඳුදාවන් {0} කට පෙර',
+ 'mon-short-future-one' => 'සඳුදාවන් {0} කින්',
+ 'mon-short-future-other' => 'සඳුදාවන් {0} කින්',
+ 'mon-short-past-one' => 'සඳුදාවන් {0} කට පෙර',
+ 'mon-short-past-other' => 'සඳුදාවන් {0} කට පෙර',
'month-future-one' => 'මාස {0}කින්',
'month-future-other' => 'මාස {0}කින්',
'month-narrow-future-one' => 'මාස {0}කින්',
@@ -870,58 +1082,118 @@ $timeUnits = array(
'month-short-past-other' => 'මාස {0}කට පෙර',
'nanosecond-one' => 'නැනෝතත්පර {0}',
'nanosecond-other' => 'නැනෝතත්පර {0}',
- 'quarter-future-one' => 'කාර්තුව {0} කින්',
- 'quarter-future-other' => 'කාර්තුව {0} කින්',
- 'quarter-narrow-future-one' => 'කාර්. {0} කින්',
- 'quarter-narrow-future-other' => 'කාර්. {0} කින්',
- 'quarter-narrow-past-one' => 'කාර්. {0} ට පෙර',
- 'quarter-narrow-past-other' => 'කාර්. {0} ට පෙර',
- 'quarter-past-one' => 'කාර්තුව {0} ට පෙර',
- 'quarter-past-other' => 'කාර්තුව {0} ට පෙර',
- 'quarter-short-future-one' => 'කාර්. {0} කින්',
- 'quarter-short-future-other' => 'කාර්. {0} කින්',
- 'quarter-short-past-one' => 'කාර්. {0} ට පෙර',
- 'quarter-short-past-other' => 'කාර්. {0} ට පෙර',
- 'second-future-one' => 'තත්පර {0} කින්',
- 'second-future-other' => 'තත්පර {0} කින්',
- 'second-narrow-future-one' => 'තත්පර {0} කින්',
- 'second-narrow-future-other' => 'තත්පර {0} කින්',
+ 'quarter-future-one' => 'කාර්තු {0}කින්',
+ 'quarter-future-other' => 'කාර්තු {0}කින්',
+ 'quarter-narrow-future-one' => 'කාර්. {0}කින්',
+ 'quarter-narrow-future-other' => 'කාර්. {0}කින්',
+ 'quarter-narrow-past-one' => 'කාර්. {0}කට පෙර',
+ 'quarter-narrow-past-other' => 'කාර්. {0}කට පෙර',
+ 'quarter-past-one' => 'කාර්තු {0}කට පෙර',
+ 'quarter-past-other' => 'කාර්තු {0}කට පෙර',
+ 'quarter-short-future-one' => 'කාර්. {0}කින්',
+ 'quarter-short-future-other' => 'කාර්. {0}කින්',
+ 'quarter-short-past-one' => 'කාර්. {0}කට පෙර',
+ 'quarter-short-past-other' => 'කාර්. {0}කට පෙර',
+ 'sat-future-one' => 'සෙනසුරාදා +{0} කින්',
+ 'sat-future-other' => 'සෙනසුරාදාවන් +{0} කින්',
+ 'sat-narrow-future-one' => 'සෙනසුරාදාවන් +{0} කින්',
+ 'sat-narrow-future-other' => 'සෙනසුරාදාවන් +{0} කින්',
+ 'sat-narrow-past-one' => 'සෙනසුරාදාවන් {0} කට පෙර',
+ 'sat-narrow-past-other' => 'සෙනසුරාදාවන් {0} කට පෙර',
+ 'sat-past-one' => 'සෙනසුරාදා {0} කට පෙර',
+ 'sat-past-other' => 'සෙනසුරාදාවන් {0} කට පෙර',
+ 'sat-short-future-one' => 'සෙනසුරාදාවන් +{0} කින්',
+ 'sat-short-future-other' => 'සෙනසුරාදාවන් +{0} කින්',
+ 'sat-short-past-one' => 'සෙනසුරාදාවන් {0} කට පෙර',
+ 'sat-short-past-other' => 'සෙනසුරාදාවන් {0} කට පෙර',
+ 'second-future-one' => 'තත්පර {0}කින්',
+ 'second-future-other' => 'තත්පර {0}කින්',
+ 'second-narrow-future-one' => 'තත්පර {0}කින්',
+ 'second-narrow-future-other' => 'තත්පර {0}කින්',
'second-narrow-past-one' => 'තත්පර {0}කට පෙර',
'second-narrow-past-other' => 'තත්පර {0}කට පෙර',
'second-one' => 'තත්පර {0}',
'second-other' => 'තත්පර {0}',
'second-past-one' => 'තත්පර {0}කට පෙර',
'second-past-other' => 'තත්පර {0}කට පෙර',
- 'second-short-future-one' => 'තත්පර {0} කින්',
- 'second-short-future-other' => 'තත්පර {0} කින්',
+ 'second-short-future-one' => 'තත්පර {0}කින්',
+ 'second-short-future-other' => 'තත්පර {0}කින්',
'second-short-past-one' => 'තත්පර {0}කට පෙර',
'second-short-past-other' => 'තත්පර {0}කට පෙර',
- 'week-future-one' => 'සති {0} කින්',
- 'week-future-other' => 'සති {0} කින්',
- 'week-narrow-future-one' => 'සති {0} කින්',
- 'week-narrow-future-other' => 'සති {0} කින්',
+ 'sun-future-one' => '{0} ඉරිදාවකින්',
+ 'sun-future-other' => 'ඉරිදාවන් {0} කින්',
+ 'sun-narrow-future-one' => 'ඉරිදාවන් {0} කින්',
+ 'sun-narrow-future-other' => 'ඉරිදාවන් {0} කින්',
+ 'sun-narrow-past-one' => 'ඉරිදාවන් {0} කට පෙර',
+ 'sun-narrow-past-other' => 'ඉරිදාවන් {0} කට පෙර',
+ 'sun-past-one' => '{0} ඉරිදාවකට පෙර',
+ 'sun-past-other' => 'ඉරිදාවන් {0} කට පෙර',
+ 'sun-short-future-one' => 'ඉරිදාවන් {0} කින්',
+ 'sun-short-future-other' => 'ඉරිදාවන් {0} කින්',
+ 'sun-short-past-one' => 'ඉරිදාවන් {0} කට පෙර',
+ 'sun-short-past-other' => 'ඉරිදාවන් {0} කට පෙර',
+ 'thu-future-one' => '{0} බ්‍රහස්පතින්දාවකින්',
+ 'thu-future-other' => 'බ්‍රහස්පතින්දාවන් {0} කින්',
+ 'thu-narrow-future-one' => 'බ්‍රහස්පතින්දාවන් {0} කින්',
+ 'thu-narrow-future-other' => 'බ්‍රහස්පතින්දාවන් {0} කින්',
+ 'thu-narrow-past-one' => 'බ්‍රහස්පතින්දාවන් {0} කට පෙර',
+ 'thu-narrow-past-other' => 'බ්‍රහස්පතින්දාවන් {0} කට පෙර',
+ 'thu-past-one' => '{0} බ්‍රහස්පතින්දාවකට පෙර',
+ 'thu-past-other' => 'බ්‍රහස්පතින්දාවන් {0} කට පෙර',
+ 'thu-short-future-one' => 'බ්‍රහස්පතින්දාවන් {0} කින්',
+ 'thu-short-future-other' => 'බ්‍රහස්පතින්දාවන් {0} කින්',
+ 'thu-short-past-one' => 'බ්‍රහස්පතින්දාවන් {0} කට පෙර',
+ 'thu-short-past-other' => 'බ්‍රහස්පතින්දාවන් {0} කට පෙර',
+ 'tue-future-one' => '{0} අඟහරුවාදාවකින්',
+ 'tue-future-other' => 'අඟහරුවාදාවන් {0} කින්',
+ 'tue-narrow-future-one' => 'අඟහරුවාදාවන් {0} කින්',
+ 'tue-narrow-future-other' => 'අඟහරුවාදාවන් {0} කින්',
+ 'tue-narrow-past-one' => 'අඟහරුවාදාවන් {0} කට පෙර',
+ 'tue-narrow-past-other' => 'අඟහරුවාදාවන් {0} කට පෙර',
+ 'tue-past-one' => '{0} අඟහරුවාදාවකට පෙර',
+ 'tue-past-other' => 'අඟහරුවාදාවන් {0} කට පෙර',
+ 'tue-short-future-one' => 'අඟහරුවාදාවන් {0} කින්',
+ 'tue-short-future-other' => 'අඟහරුවාදාවන් {0} කින්',
+ 'tue-short-past-one' => 'අඟහරුවාදාවන් {0} කට පෙර',
+ 'tue-short-past-other' => 'අඟහරුවාදාවන් {0} කට පෙර',
+ 'wed-future-one' => '{0} බදාදාවකින්',
+ 'wed-future-other' => 'බදාදාවන් {0} කින්',
+ 'wed-narrow-future-one' => 'බදාදාවන් {0} කින්',
+ 'wed-narrow-future-other' => 'බදාදාවන් {0} කින්',
+ 'wed-narrow-past-one' => 'බදාදාවන් {0} කට පෙර',
+ 'wed-narrow-past-other' => 'බදාදාවන් {0} කට පෙර',
+ 'wed-past-one' => '{0} බදාදාවකට පෙර',
+ 'wed-past-other' => 'බදාදාවන් {0} කට පෙර',
+ 'wed-short-future-one' => 'බදාදාවන් {0} කින්',
+ 'wed-short-future-other' => 'බදාදාවන් {0} කින්',
+ 'wed-short-past-one' => 'බදාදාවන් {0} කට පෙර',
+ 'wed-short-past-other' => 'බදාදාවන් {0} කට පෙර',
+ 'week-future-one' => 'සති {0}කින්',
+ 'week-future-other' => 'සති {0}කින්',
+ 'week-narrow-future-one' => 'සති {0}කින්',
+ 'week-narrow-future-other' => 'සති {0}කින්',
'week-narrow-past-one' => 'සති {0}කට පෙර',
'week-narrow-past-other' => 'සති {0}කට පෙර',
'week-one' => 'සති {0}',
'week-other' => 'සති {0}',
'week-past-one' => 'සති {0}කට පෙර',
'week-past-other' => 'සති {0}කට පෙර',
- 'week-short-future-one' => 'සති {0} කින්',
- 'week-short-future-other' => 'සති {0} කින්',
+ 'week-short-future-one' => 'සති {0}කින්',
+ 'week-short-future-other' => 'සති {0}කින්',
'week-short-past-one' => 'සති {0}කට පෙර',
'week-short-past-other' => 'සති {0}කට පෙර',
- 'year-future-one' => 'වසර {0} කින්',
- 'year-future-other' => 'වසර {0} කින්',
- 'year-narrow-future-one' => 'වසර {0} කින්',
- 'year-narrow-future-other' => 'වසර {0} කින්',
- 'year-narrow-past-one' => 'වසර {0}ට පෙර',
- 'year-narrow-past-other' => 'වසර {0}ට පෙර',
+ 'year-future-one' => 'වසර {0}කින්',
+ 'year-future-other' => 'වසර {0}කින්',
+ 'year-narrow-future-one' => 'වසර {0}කින්',
+ 'year-narrow-future-other' => 'වසර {0}කින්',
+ 'year-narrow-past-one' => 'වසර {0}කට පෙර',
+ 'year-narrow-past-other' => 'වසර {0}කට පෙර',
'year-one' => 'වසර {0}',
'year-other' => 'වසර {0}',
- 'year-past-one' => 'වසර {0}ට පෙර',
- 'year-past-other' => 'වසර {0}ට පෙර',
- 'year-short-future-one' => 'වසර {0} කින්',
- 'year-short-future-other' => 'වසර {0} කින්',
- 'year-short-past-one' => 'වසර {0}ට පෙර',
- 'year-short-past-other' => 'වසර {0}ට පෙර',
-);
+ 'year-past-one' => 'වසර {0}කට පෙර',
+ 'year-past-other' => 'වසර {0}කට පෙර',
+ 'year-short-future-one' => 'වසර {0}කින්',
+ 'year-short-future-other' => 'වසර {0}කින්',
+ 'year-short-past-one' => 'වසර {0}කට පෙර',
+ 'year-short-past-other' => 'වසර {0}කට පෙර',
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesSk.php b/MLEB/cldr/CldrNames/CldrNamesSk.php
index 0cb04e94..b5f6b896 100644
--- a/MLEB/cldr/CldrNames/CldrNamesSk.php
+++ b/MLEB/cldr/CldrNames/CldrNamesSk.php
@@ -1,12 +1,12 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'afarčina',
'ab' => 'abcházčina',
'ace' => 'acehčina',
'ach' => 'ačoli',
'ada' => 'adangme',
- 'ady' => 'adygčina',
+ 'ady' => 'adygejčina',
'ae' => 'avestčina',
'af' => 'afrikánčina',
'afh' => 'afrihili',
@@ -23,14 +23,15 @@ $languageNames = array(
'ar' => 'arabčina',
'ar-001' => 'arabčina (moderná štandardná)',
'arc' => 'aramejčina',
- 'arn' => 'araukánčina',
- 'arp' => 'arapaho',
+ 'arn' => 'mapudungun',
+ 'arp' => 'arapažština',
+ 'ars' => 'arabčina (nadždská)',
'arw' => 'arawačtina',
'as' => 'ásamčina',
'asa' => 'asu',
'ast' => 'astúrčina',
'av' => 'avarčina',
- 'awa' => 'avadhčina',
+ 'awa' => 'awadhi',
'ay' => 'aymarčina',
'az' => 'azerbajdžančina',
'ba' => 'baškirčina',
@@ -45,9 +46,10 @@ $languageNames = array(
'bez' => 'bena',
'bfd' => 'bafut',
'bg' => 'bulharčina',
+ 'bgn' => 'západná balúčtina',
'bho' => 'bhódžpurčina',
'bi' => 'bislama',
- 'bik' => 'bikol',
+ 'bik' => 'bikolčina',
'bin' => 'bini',
'bkm' => 'kom',
'bla' => 'siksika',
@@ -66,8 +68,8 @@ $languageNames = array(
'byv' => 'medumba',
'ca' => 'katalánčina',
'cad' => 'kaddo',
- 'car' => 'karibský',
- 'cay' => 'cayuga',
+ 'car' => 'karibčina',
+ 'cay' => 'kajugčina',
'cch' => 'atsam',
'ce' => 'čečenčina',
'ceb' => 'cebuánčina',
@@ -75,10 +77,10 @@ $languageNames = array(
'ch' => 'čamorčina',
'chb' => 'čibča',
'chg' => 'čagatajčina',
- 'chk' => 'truk',
+ 'chk' => 'chuuk',
'chm' => 'marijčina',
'chn' => 'činucký žargón',
- 'cho' => 'čoktavčina',
+ 'cho' => 'čoktčina',
'chp' => 'čipevajčina',
'chr' => 'čerokí',
'chy' => 'čejenčina',
@@ -86,7 +88,8 @@ $languageNames = array(
'co' => 'korzičtina',
'cop' => 'koptčina',
'cr' => 'krí',
- 'crh' => 'krymská turečtina',
+ 'crh' => 'krymská tatárčina',
+ 'crs' => 'seychelská kreolčina',
'cs' => 'čeština',
'csb' => 'kašubčina',
'cu' => 'cirkevná slovančina',
@@ -100,23 +103,23 @@ $languageNames = array(
'de-at' => 'nemčina (rakúska)',
'de-ch' => 'nemčina (švajčiarska spisovná)',
'del' => 'delawarčina',
- 'den' => 'slovančina',
+ 'den' => 'slavé',
'dgr' => 'dogribčina',
- 'din' => 'dinka',
+ 'din' => 'dinkčina',
'dje' => 'zarma',
'doi' => 'dógrí',
'dsb' => 'dolnolužická srbčina',
'dua' => 'duala',
'dum' => 'stredná holandčina',
- 'dv' => 'divehi',
+ 'dv' => 'maldivčina',
'dyo' => 'jola-fonyi',
'dyu' => 'ďula',
- 'dz' => 'dzongkä',
+ 'dz' => 'dzongkha',
'dzg' => 'dazaga',
'ebu' => 'embu',
- 'ee' => 'ewe',
+ 'ee' => 'eweština',
'efi' => 'efik',
- 'egy' => 'staroegyptský',
+ 'egy' => 'staroegyptčina',
'eka' => 'ekadžuk',
'el' => 'gréčtina',
'elx' => 'elamčina',
@@ -146,10 +149,11 @@ $languageNames = array(
'fr' => 'francúzština',
'fr-ca' => 'francúzština (kanadská)',
'fr-ch' => 'francúzština (švajčiarska)',
+ 'frc' => 'francúzština (Cajun)',
'frm' => 'stredná francúzština',
'fro' => 'stará francúzština',
'frr' => 'severná frízština',
- 'frs' => 'východná frízština',
+ 'frs' => 'východofrízština',
'fur' => 'friulčina',
'fy' => 'západná frízština',
'ga' => 'írčina',
@@ -162,7 +166,7 @@ $languageNames = array(
'gil' => 'kiribatčina',
'gl' => 'galícijčina',
'gmh' => 'stredná horná nemčina',
- 'gn' => 'guaraní',
+ 'gn' => 'guaraníjčina',
'goh' => 'stará horná nemčina',
'gon' => 'góndčina',
'gor' => 'gorontalo',
@@ -173,7 +177,7 @@ $languageNames = array(
'gu' => 'gudžarátčina',
'guz' => 'gusii',
'gv' => 'mančina',
- 'gwi' => 'gwichʼin',
+ 'gwi' => 'kučinčina',
'ha' => 'hauština',
'hai' => 'haida',
'haw' => 'havajčina',
@@ -181,11 +185,11 @@ $languageNames = array(
'hi' => 'hindčina',
'hil' => 'hiligajnončina',
'hit' => 'chetitčina',
- 'hmn' => 'hmong',
+ 'hmn' => 'hmongčina',
'ho' => 'hiri motu',
'hr' => 'chorvátčina',
'hsb' => 'hornolužická srbčina',
- 'ht' => 'haitčina',
+ 'ht' => 'haitská kreolčina',
'hu' => 'maďarčina',
'hup' => 'hupčina',
'hy' => 'arménčina',
@@ -196,8 +200,8 @@ $languageNames = array(
'id' => 'indonézština',
'ie' => 'interlingue',
'ig' => 'igboština',
- 'ii' => 's’čchuanská ioština',
- 'ik' => 'inupiaq',
+ 'ii' => 's’čchuanská iovčina',
+ 'ik' => 'inupik',
'ilo' => 'ilokánčina',
'inh' => 'inguština',
'io' => 'ido',
@@ -243,9 +247,9 @@ $languageNames = array(
'kos' => 'kusaie',
'kpe' => 'kpelle',
'kr' => 'kanurijčina',
- 'krc' => 'karačajevsko-balkarský jazyk',
+ 'krc' => 'karačajevsko-balkarčina',
'krl' => 'karelčina',
- 'kru' => 'kurukhčina',
+ 'kru' => 'kuruchčina',
'ks' => 'kašmírčina',
'ksb' => 'šambala',
'ksf' => 'bafia',
@@ -269,10 +273,12 @@ $languageNames = array(
'ln' => 'lingalčina',
'lo' => 'laoština',
'lol' => 'mongo',
+ 'lou' => 'kreolčina (Louisiana)',
'loz' => 'lozi',
+ 'lrc' => 'severné luri',
'lt' => 'litovčina',
- 'lu' => 'luba-katanga',
- 'lua' => 'luba-luluánčina',
+ 'lu' => 'lubčina (katanžská)',
+ 'lua' => 'lubčina (luluánska)',
'lui' => 'luiseňo',
'lun' => 'lunda',
'luo' => 'luo',
@@ -289,14 +295,14 @@ $languageNames = array(
'mde' => 'maba',
'mdf' => 'mokšiančina',
'mdr' => 'mandarčina',
- 'men' => 'mendi',
+ 'men' => 'mendejčina',
'mer' => 'meru',
'mfe' => 'maurícijská kreolčina',
'mg' => 'malgaština',
'mga' => 'stredná írčina',
'mgh' => 'makua-meetto',
'mgo' => 'meta’',
- 'mh' => 'kajin-majol',
+ 'mh' => 'marshallčina',
'mi' => 'maorijčina',
'mic' => 'mikmakčina',
'min' => 'minangkabaučina',
@@ -314,16 +320,18 @@ $languageNames = array(
'mul' => 'viaceré jazyky',
'mus' => 'kríkčina',
'mwl' => 'mirandčina',
- 'mwr' => 'marawari',
+ 'mwr' => 'marwari',
'my' => 'barmčina',
'mye' => 'myene',
'myv' => 'erzjančina',
- 'na' => 'nauru',
+ 'mzn' => 'mázandaránčina',
+ 'na' => 'nauruština',
'nap' => 'neapolčina',
'naq' => 'nama',
- 'nb' => 'nórsky bokmål',
- 'nd' => 'severné ndebele',
+ 'nb' => 'nórčina (bokmal)',
+ 'nd' => 'ndebelčina (severná)',
'nds' => 'dolná nemčina',
+ 'nds-nl' => 'dolná saština',
'ne' => 'nepálčina',
'new' => 'nevárčina',
'ng' => 'ndonga',
@@ -332,18 +340,18 @@ $languageNames = array(
'nl' => 'holandčina',
'nl-be' => 'flámčina',
'nmg' => 'kwasio',
- 'nn' => 'nórsky nynorsk',
+ 'nn' => 'nórčina (nynorsk)',
'nnh' => 'ngiemboon',
'no' => 'nórčina',
'nog' => 'nogajčina',
'non' => 'stará nórčina',
'nqo' => 'n’ko',
- 'nr' => 'južná ndebelčina',
- 'nso' => 'severná sothčina',
+ 'nr' => 'ndebelčina (južná)',
+ 'nso' => 'sothčina (severná)',
'nus' => 'nuer',
- 'nv' => 'navajo',
+ 'nv' => 'navaho',
'nwc' => 'klasická nevárčina',
- 'ny' => 'čewa',
+ 'ny' => 'ňandža',
'nym' => 'ňamwezi',
'nyn' => 'ňankole',
'nyo' => 'ňoro',
@@ -353,41 +361,43 @@ $languageNames = array(
'om' => 'oromčina',
'or' => 'uríjčina',
'os' => 'osetčina',
- 'osa' => 'osagčina',
+ 'osa' => 'osedžština',
'ota' => 'osmanská turečtina',
'pa' => 'pandžábčina',
'pag' => 'pangasinančina',
'pal' => 'pahlaví',
- 'pam' => 'pampanga',
+ 'pam' => 'kapampangančina',
'pap' => 'papiamento',
'pau' => 'palaučina',
+ 'pcm' => 'nigerijský pidžin',
'peo' => 'stará perzština',
'phn' => 'feničtina',
'pi' => 'pálí',
'pl' => 'poľština',
- 'pon' => 'pohnpeičina',
+ 'pon' => 'pohnpeiština',
+ 'prg' => 'pruština',
'pro' => 'stará okcitánčina',
'ps' => 'paštčina',
'pt' => 'portugalčina',
'pt-br' => 'portugalčina (brazílska)',
'pt-pt' => 'portugalčina (európska)',
'qu' => 'kečuánčina',
- 'quc' => 'kʼicheʼ',
+ 'quc' => 'quiché',
'raj' => 'radžastančina',
'rap' => 'rapanujčina',
- 'rar' => 'rarotongan',
+ 'rar' => 'rarotongská maorijčina',
'rm' => 'rétorománčina',
- 'rn' => 'kirundčina',
+ 'rn' => 'rundčina',
'ro' => 'rumunčina',
'ro-md' => 'moldavčina',
'rof' => 'rombo',
'rom' => 'rómčina',
'ru' => 'ruština',
'rup' => 'arumunčina',
- 'rw' => 'kiňarwanda',
+ 'rw' => 'rwandčina',
'rwk' => 'rwa',
'sa' => 'sanskrit',
- 'sad' => 'sandawe',
+ 'sad' => 'sandaweština',
'sah' => 'jakutčina',
'sam' => 'samaritánska aramejčina',
'saq' => 'samburu',
@@ -399,8 +409,9 @@ $languageNames = array(
'scn' => 'sicílčina',
'sco' => 'škótčina',
'sd' => 'sindhčina',
- 'se' => 'severné sami',
- 'see' => 'seneca',
+ 'sdh' => 'južná kurdčina',
+ 'se' => 'saamčina (severná)',
+ 'see' => 'senekčina',
'seh' => 'sena',
'sel' => 'selkupčina',
'ses' => 'koyraboro senni',
@@ -415,56 +426,56 @@ $languageNames = array(
'sk' => 'slovenčina',
'sl' => 'slovinčina',
'sm' => 'samojčina',
- 'sma' => 'južné sami',
- 'smj' => 'sami (lule)',
- 'smn' => 'sami (inari)',
- 'sms' => 'sami (skolt)',
+ 'sma' => 'saamčina (južná)',
+ 'smj' => 'saamčina (lulská)',
+ 'smn' => 'saamčina (inarijská)',
+ 'sms' => 'saamčina (skoltská)',
'sn' => 'šončina',
'snk' => 'soninke',
'so' => 'somálčina',
'sog' => 'sogdijčina',
'sq' => 'albánčina',
'sr' => 'srbčina',
- 'srn' => 'sranan',
- 'srr' => 'serer',
+ 'srn' => 'surinamčina',
+ 'srr' => 'sererčina',
'ss' => 'svazijčina',
'ssy' => 'saho',
- 'st' => 'južná sothčina',
+ 'st' => 'sothčina (južná)',
'su' => 'sundčina',
'suk' => 'sukuma',
'sus' => 'susu',
'sux' => 'sumerčina',
'sv' => 'švédčina',
- 'sw' => 'svahilčina',
+ 'sw' => 'swahilčina',
+ 'sw-cd' => 'svahilčina (konžská)',
'swb' => 'komorčina',
- 'swc' => 'svahilčina (konžská)',
- 'syc' => 'klasická sýrčina',
+ 'syc' => 'sýrčina (klasická)',
'syr' => 'sýrčina',
'ta' => 'tamilčina',
'te' => 'telugčina',
'tem' => 'temne',
'teo' => 'teso',
- 'ter' => 'tereno',
- 'tet' => 'tetum',
+ 'ter' => 'terêna',
+ 'tet' => 'tetumčina',
'tg' => 'tadžičtina',
'th' => 'thajčina',
'ti' => 'tigriňa',
'tig' => 'tigrejčina',
'tiv' => 'tiv',
'tk' => 'turkménčina',
- 'tkl' => 'tokelaučina',
+ 'tkl' => 'tokelauština',
'tl' => 'tagalčina',
'tlh' => 'klingónčina',
'tli' => 'tlingitčina',
- 'tmh' => 'tamašek',
+ 'tmh' => 'tuaregčina',
'tn' => 'tswančina',
'to' => 'tongčina',
'tog' => 'ňasa tonga',
- 'tpi' => 'tok pisin',
+ 'tpi' => 'novoguinejský pidžin',
'tr' => 'turečtina',
'trv' => 'taroko',
- 'ts' => 'tsonga',
- 'tsi' => 'tsimshijské jazyky',
+ 'ts' => 'tsongčina',
+ 'tsi' => 'cimšjančina',
'tt' => 'tatárčina',
'tum' => 'tumbuka',
'tvl' => 'tuvalčina',
@@ -472,7 +483,7 @@ $languageNames = array(
'twq' => 'tasawaq',
'ty' => 'tahitčina',
'tyv' => 'tuviančina',
- 'tzm' => 'tamašek (stredomarocký)',
+ 'tzm' => 'tuaregčina (stredomarocká)',
'udm' => 'udmurtčina',
'ug' => 'ujgurčina',
'uga' => 'ugaritčina',
@@ -489,12 +500,13 @@ $languageNames = array(
'vun' => 'vunjo',
'wa' => 'valónčina',
'wae' => 'walserčina',
- 'wal' => 'walamo',
+ 'wal' => 'walamčina',
'war' => 'waray',
'was' => 'washo',
- 'wo' => 'wolof',
+ 'wbp' => 'warlpiri',
+ 'wo' => 'wolofčina',
'xal' => 'kalmyčtina',
- 'xh' => 'xhosa',
+ 'xh' => 'xhoština',
'xog' => 'soga',
'yao' => 'jao',
'yap' => 'japčina',
@@ -507,126 +519,147 @@ $languageNames = array(
'zap' => 'zapotéčtina',
'zbl' => 'systém Bliss',
'zen' => 'zenaga',
- 'zgh' => 'tamašek (štandardný marocký)',
+ 'zgh' => 'tuaregčina (štandardná marocká)',
'zh' => 'čínština',
'zh-hans' => 'čínština (zjednodušená)',
'zh-hant' => 'čínština (tradičná)',
'zu' => 'zuluština',
'zun' => 'zuniština',
'zxx' => 'bez jazykového obsahu',
- 'zza' => 'zázá',
-);
+ 'zza' => 'zaza',
+];
-$currencyNames = array(
- 'ADP' => 'Andorská peseta',
+$currencyNames = [
+ 'ADP' => 'andorrská peseta',
'AED' => 'SAE dirham',
+ 'AFA' => 'afganský afgání (1927 – 2002)',
'AFN' => 'afganský afgání',
+ 'ALK' => 'albánsky lek (1946 – 1965)',
'ALL' => 'albánsky lek',
'AMD' => 'arménsky dram',
'ANG' => 'antilský gulden',
'AOA' => 'angolská kwanza',
- 'AOK' => 'Angolská kwanza (1977–1990)',
- 'AON' => 'Angolská nová kwanza (1990–2000)',
- 'AOR' => 'Angolská kwanza Reajustado (1995–1999)',
- 'ARA' => 'Argentinský austral',
- 'ARP' => 'Argentinské peso (1983–1985)',
+ 'AOK' => 'angolská kwanza (1977 – 1990)',
+ 'AON' => 'angolská nová kwanza (1990 – 2000)',
+ 'AOR' => 'angolská upravená kwanza (1995 – 1999)',
+ 'ARA' => 'argentínsky austral',
+ 'ARL' => 'argentínske peso ley (1970 – 1983)',
+ 'ARM' => 'argentínske peso (1881 – 1970)',
+ 'ARP' => 'argentínske peso (1983 – 1985)',
'ARS' => 'argentínske peso',
- 'ATS' => 'Rakúsky šiling',
+ 'ATS' => 'rakúsky šiling',
'AUD' => 'austrálsky dolár',
'AWG' => 'arubský gulden',
- 'AZM' => 'Azerbajdžanský manat (1993–2006)',
+ 'AZM' => 'azerbajdžanský manat (1993–2006)',
'AZN' => 'azerbajdžanský manat',
- 'BAD' => 'Bosnianský dinár',
- 'BAM' => 'konvertibilná marka',
+ 'BAD' => 'bosniansko-hercegovinský dinár (1992 – 1994)',
+ 'BAM' => 'bosniansko-hercegovinská konvertibilná marka',
+ 'BAN' => 'bosniansko-hercegovinský nový dinár (1994 – 1997)',
'BBD' => 'barbadoský dolár',
'BDT' => 'bangladéšska taka',
- 'BEC' => 'Belgický frank (konvertibilný)',
- 'BEF' => 'Belgický frank',
- 'BEL' => 'Belgický frank (finančný)',
- 'BGL' => 'Bulharský leva',
+ 'BEC' => 'belgický frank (konvertibilný)',
+ 'BEF' => 'belgický frank',
+ 'BEL' => 'belgický frank (finančný)',
+ 'BGL' => 'bulharský tvrdý lev',
+ 'BGM' => 'bulharský socialistický lev',
'BGN' => 'bulharský lev',
+ 'BGO' => 'bulharský lev (1879 – 1952)',
'BHD' => 'bahrajnský dinár',
'BIF' => 'burundský frank',
'BMD' => 'bermudský dolár',
'BND' => 'brunejský dolár',
'BOB' => 'bolívijské boliviano',
- 'BOP' => 'Bolivíjske peso',
- 'BOV' => 'Bolivíjske mvdol',
- 'BRB' => 'Bolivíjske Cruzeiro Novo (1967–1986)',
- 'BRC' => 'Bolivíjske cruzado',
- 'BRE' => 'Bolivíjske cruzeiro (1990–1993)',
+ 'BOL' => 'bolívijské boliviano (1863 – 1963)',
+ 'BOP' => 'bolívijské peso',
+ 'BOV' => 'bolívijské MVDOL',
+ 'BRB' => 'brazílske nové cruzeiro (1967 – 1986)',
+ 'BRC' => 'brazílske cruzado (1986 – 1989)',
+ 'BRE' => 'brazílske cruzeiro (1990 – 1993)',
'BRL' => 'brazílsky real',
- 'BRN' => 'Brazílske Cruzado Novo',
+ 'BRN' => 'brazílske nové cruzado (1989 – 1990)',
'BRR' => 'Brazílske cruzeiro',
+ 'BRZ' => 'brazílske cruzeiro (1942 – 1967)',
'BSD' => 'bahamský dolár',
'BTN' => 'bhutánsky ngultrum',
- 'BUK' => 'Burmese Kyat',
+ 'BUK' => 'barmský kyat',
'BWP' => 'botswanská pula',
- 'BYB' => 'Bieloruský nový rubeľ (1994–1999)',
- 'BYR' => 'bieloruský rubeľ',
+ 'BYB' => 'bieloruský rubeľ (1994 – 1999)',
+ 'BYN' => 'bieloruský rubeľ',
+ 'BYR' => 'bieloruský rubeľ (2000–2016)',
'BZD' => 'belizský dolár',
'CAD' => 'kanadský dolár',
'CDF' => 'konžský frank',
+ 'CHE' => 'švajčiarske WIR euro',
'CHF' => 'švajčiarsky frank',
- 'CLF' => 'Čílske Unidades de Fomento',
+ 'CHW' => 'švajčiarsky WIR frank',
+ 'CLE' => 'čilské escudo',
+ 'CLF' => 'čilská účtovná jednotka (UF)',
'CLP' => 'čilské peso',
+ 'CNH' => 'čínsky jüan (pobrežný)',
+ 'CNX' => 'čínsky dolár ČĽB',
'CNY' => 'čínsky jüan',
'COP' => 'kolumbijské peso',
+ 'COU' => 'kolumbijská jednotka reálnej hodnoty',
'CRC' => 'kostarický colón',
- 'CSK' => 'Československá koruna',
+ 'CSD' => 'srbský dinár (2002 – 2006)',
+ 'CSK' => 'československá koruna',
'CUC' => 'kubánske konvertibilné peso',
'CUP' => 'kubánske peso',
'CVE' => 'kapverdské escudo',
- 'CYP' => 'Cypruská libra',
+ 'CYP' => 'cyperská libra',
'CZK' => 'česká koruna',
- 'DDM' => 'Východonemecká marka',
- 'DEM' => 'Nemecká marka',
+ 'DDM' => 'východonemecká marka',
+ 'DEM' => 'nemecká marka',
'DJF' => 'džibutský frank',
'DKK' => 'dánska koruna',
'DOP' => 'dominikánske peso',
'DZD' => 'alžírsky dinár',
- 'ECS' => 'Ekuadorský sucre',
- 'ECV' => 'Ekuadorský Unidad de Valor Constante (UVC)',
- 'EEK' => 'Estónska kroon',
+ 'ECS' => 'ekvádorský sucre',
+ 'ECV' => 'ekvádorská jednotka konštantnej hodnoty',
+ 'EEK' => 'estónska koruna',
'EGP' => 'egyptská libra',
'ERN' => 'eritrejská nakfa',
- 'ESP' => 'Španielská peseta',
+ 'ESA' => 'španielska peseta (účet A)',
+ 'ESB' => 'španielska peseta (konvertibilný účet)',
+ 'ESP' => 'španielska peseta',
'ETB' => 'etiópsky birr',
'EUR' => 'euro',
- 'FIM' => 'Finská marka',
+ 'FIM' => 'fínska marka',
'FJD' => 'fidžijský dolár',
'FKP' => 'falklandská libra',
- 'FRF' => 'Francúzsky frank',
+ 'FRF' => 'francúzsky frank',
'GBP' => 'britská libra',
- 'GEK' => 'Gruzínsky Kupon Larit',
+ 'GEK' => 'gruzínske kupónové lari',
'GEL' => 'gruzínske lari',
- 'GHC' => 'Ghanský cedi (1979–2007)',
+ 'GHC' => 'ghanské cedi (1979 – 2007)',
'GHS' => 'ghanské cedi',
'GIP' => 'gibraltárska libra',
'GMD' => 'gambijské dalasi',
'GNF' => 'guinejský frank',
- 'GNS' => 'Guinejský syli',
- 'GQE' => 'Rovníková Guinea Ekwele Guineana',
- 'GRD' => 'Grécka drachma',
+ 'GNS' => 'guinejské syli',
+ 'GQE' => 'rovníkovoguinejský ekwele',
+ 'GRD' => 'grécka drachma',
'GTQ' => 'guatemalský quetzal',
- 'GWE' => 'Portugalská Guinea eskudo',
- 'GWP' => 'Guinejsko-bissauské peso',
+ 'GWE' => 'portugalsko-guinejské escudo',
+ 'GWP' => 'guinejsko-bissauské peso',
'GYD' => 'guyanský dolár',
'HKD' => 'hongkonský dolár',
'HNL' => 'honduraská lempira',
- 'HRD' => 'Chorvátsky dinár',
+ 'HRD' => 'chorvátsky dinár',
'HRK' => 'chorvátska kuna',
'HTG' => 'haitské gourde',
'HUF' => 'maďarský forint',
'IDR' => 'indonézska rupia',
- 'IEP' => 'Írska libra',
- 'ILP' => 'Izraelská libra',
+ 'IEP' => 'írska libra',
+ 'ILP' => 'izraelská libra',
+ 'ILR' => 'izraelský šekel (1980 – 1985)',
'ILS' => 'izraelský šekel',
'INR' => 'indická rupia',
'IQD' => 'iracký dinár',
'IRR' => 'iránsky rial',
+ 'ISJ' => 'islandská koruna (1918 – 1981)',
'ISK' => 'islandská koruna',
- 'ITL' => 'Talianská lira',
+ 'ITL' => 'talianska líra',
'JMD' => 'jamajský dolár',
'JOD' => 'jordánsky dinár',
'JPY' => 'japonský jen',
@@ -635,6 +668,8 @@ $currencyNames = array(
'KHR' => 'kambodžský riel',
'KMF' => 'komorský frank',
'KPW' => 'severokórejský won',
+ 'KRH' => 'juhokórejský hwan (1953 – 1962)',
+ 'KRO' => 'juhokórejský won (1945 – 1953)',
'KRW' => 'juhokórejský won',
'KWD' => 'kuvajtský dinár',
'KYD' => 'kajmanský dolár',
@@ -643,204 +678,293 @@ $currencyNames = array(
'LBP' => 'libanonská libra',
'LKR' => 'srílanská rupia',
'LRD' => 'libérijský dolár',
- 'LSL' => 'Lesothský loti',
+ 'LSL' => 'lesothský loti',
'LTL' => 'litovský litas',
- 'LTT' => 'Litevský talonas',
- 'LUF' => 'Luxemburský frank',
- 'LVL' => 'Lotyšský lat',
- 'LVR' => 'Lotyšský rubeľ',
+ 'LTT' => 'litovský talonas',
+ 'LUC' => 'luxemburský frank (konvertibilný)',
+ 'LUF' => 'luxemburský frank',
+ 'LUL' => 'luxemburský frank (finančný)',
+ 'LVL' => 'lotyšský lat',
+ 'LVR' => 'lotyšský rubeľ',
'LYD' => 'líbyjský dinár',
'MAD' => 'marocký dirham',
- 'MAF' => 'Marocký frank',
+ 'MAF' => 'marocký frank',
+ 'MCF' => 'monacký frank',
+ 'MDC' => 'moldavský kupón',
'MDL' => 'moldavský lei',
'MGA' => 'malgašský ariary',
- 'MGF' => 'Madagaskarský frank',
+ 'MGF' => 'madagaskarský frank',
'MKD' => 'macedónsky denár',
- 'MLF' => 'Malský frank',
+ 'MKN' => 'macedónsky denár (1992 – 1993)',
+ 'MLF' => 'malijský frank',
'MMK' => 'mjanmarský kyat',
'MNT' => 'mongolský tugrik',
'MOP' => 'macajská pataca',
- 'MRO' => 'mauritánska ukija',
- 'MTL' => 'Maltská lira',
- 'MTP' => 'Maltská libra',
+ 'MRO' => 'mauritánska ukija (1973–2017)',
+ 'MRU' => 'mauritánska ukija',
+ 'MTL' => 'maltská líra',
+ 'MTP' => 'maltská libra',
'MUR' => 'maurícijská rupia',
+ 'MVP' => 'maldivská rupia (1947 – 1981)',
'MVR' => 'maldivská rupia',
'MWK' => 'malawijská kwacha',
'MXN' => 'mexické peso',
- 'MXP' => 'Mexické striborné peso (1861–1992)',
- 'MXV' => 'Mexické Unidad de Inversion (UDI)',
+ 'MXP' => 'mexické strieborné peso (1861 – 1992)',
+ 'MXV' => 'mexická investičná jednotka',
'MYR' => 'malajzijský ringgit',
- 'MZE' => 'Mozambické escudo',
- 'MZM' => 'Mozambický metical (1980–2006)',
+ 'MZE' => 'mozambické escudo',
+ 'MZM' => 'mozambický metical (1980 – 2006)',
'MZN' => 'mozambický metical',
'NAD' => 'namíbijský dolár',
'NGN' => 'nigérijská naira',
- 'NIC' => 'Nikaragujská Cordoba (1988–1991)',
+ 'NIC' => 'nikaragujská córdoba (1988 – 1991)',
'NIO' => 'nikaragujská córdoba',
- 'NLG' => 'Nizozemský guilder',
+ 'NLG' => 'holandský gulden',
'NOK' => 'nórska koruna',
'NPR' => 'nepálska rupia',
'NZD' => 'novozélandský dolár',
'OMR' => 'ománsky rial',
'PAB' => 'panamská balboa',
- 'PEI' => 'Peruvský inti',
- 'PEN' => 'peruánsky nový sol',
- 'PES' => 'Peruvský sol',
+ 'PEI' => 'peruánsky inti',
+ 'PEN' => 'peruánsky sol',
+ 'PES' => 'peruánsky sol (1863 – 1965)',
'PGK' => 'papuánska kina',
'PHP' => 'filipínske peso',
'PKR' => 'pakistanská rupia',
'PLN' => 'poľský zlotý',
- 'PLZ' => 'Polský zloty (1950–1995)',
- 'PTE' => 'Portugalské eskudo',
+ 'PLZ' => 'poľský zlotý (1950 – 1995)',
+ 'PTE' => 'portugalské escudo',
'PYG' => 'paraguajské guaraní',
'QAR' => 'katarský rial',
- 'ROL' => 'Rumunský leu (1952–2006)',
+ 'RHD' => 'rodézsky dolár',
+ 'ROL' => 'rumunský lei (1952 – 2006)',
'RON' => 'rumunský lei',
'RSD' => 'srbský dinár',
'RUB' => 'ruský rubeľ',
- 'RUR' => 'Ruský rubeľ (1991–1998)',
+ 'RUR' => 'ruský rubeľ (1991 – 1998)',
'RWF' => 'rwandský frank',
'SAR' => 'saudskoarabský rial',
'SBD' => 'šalamúnsky dolár',
'SCR' => 'seychelská rupia',
- 'SDD' => 'Sudánsky dinár',
+ 'SDD' => 'sudánsky dinár (1992 – 2007)',
'SDG' => 'sudánska libra',
- 'SDP' => 'Sudánska libra (1957–1998)',
+ 'SDP' => 'sudánska libra (1957 – 1998)',
'SEK' => 'švédska koruna',
'SGD' => 'singapurský dolár',
'SHP' => 'svätohelenská libra',
- 'SIT' => 'Slovinský Tolar',
- 'SKK' => 'Slovenská koruna',
+ 'SIT' => 'slovinský toliar',
+ 'SKK' => 'slovenská koruna',
'SLL' => 'sierraleonský leone',
'SOS' => 'somálsky šiling',
'SRD' => 'surinamský dolár',
- 'SRG' => 'Surinamský guilder',
+ 'SRG' => 'surinamský zlatý',
'SSP' => 'juhosudánska libra',
- 'STD' => 'svätotomášska dobra',
- 'SUR' => 'Sovietsky rubeľ',
- 'SVC' => 'Salvádorský colón',
+ 'STD' => 'svätotomášska dobra (1977–2017)',
+ 'STN' => 'svätotomášska dobra',
+ 'SUR' => 'sovietsky rubeľ',
+ 'SVC' => 'salvádorský colón',
'SYP' => 'sýrska libra',
'SZL' => 'svazijské lilangeni',
'THB' => 'thajský baht',
- 'TJR' => 'Tadžický rubeľ',
+ 'TJR' => 'tadžický rubeľ',
'TJS' => 'tadžické somoni',
- 'TMM' => 'Turkménsky manat (1993–2009)',
+ 'TMM' => 'turkménsky manat (1993 – 2009)',
'TMT' => 'turkménsky manat',
'TND' => 'tuniský dinár',
'TOP' => 'tongská paʻanga',
- 'TPE' => 'Timorské eskudo',
- 'TRL' => 'Turecká lira (1922–2005)',
+ 'TPE' => 'timorské escudo',
+ 'TRL' => 'turecká líra (1922 – 2005)',
'TRY' => 'turecká líra',
'TTD' => 'trinidadsko-tobažský dolár',
'TWD' => 'nový taiwanský dolár',
'TZS' => 'tanzánsky šiling',
'UAH' => 'ukrajinská hrivna',
- 'UAK' => 'Ukrainský karbovanetz',
- 'UGS' => 'Ugandan šiling (1966–1987)',
+ 'UAK' => 'ukrajinský karbovanec',
+ 'UGS' => 'ugandský šiling (1966 – 1987)',
'UGX' => 'ugandský šiling',
'USD' => 'americký dolár',
- 'USN' => 'US dolár (Next day)',
- 'USS' => 'US dolár (Same day)',
- 'UYP' => 'Uruguajské peso (1975–1993)',
+ 'USN' => 'americký dolár (ďalší deň)',
+ 'USS' => 'americký dolár (rovnaký deň)',
+ 'UYI' => 'uruguajské peso (v indexovaných jednotkách)',
+ 'UYP' => 'uruguajské peso (1975 – 1993)',
'UYU' => 'uruguajské peso',
'UZS' => 'uzbecký sum',
- 'VEB' => 'Venezuelský bolívar (1871–2008)',
- 'VEF' => 'venezuelský bolívar',
+ 'VEB' => 'venezuelský bolívar (1871 – 2008)',
+ 'VEF' => 'venezuelský bolívar (2008–2018)',
+ 'VES' => 'venezuelský bolívar',
'VND' => 'vietnamský dong',
+ 'VNN' => 'vietnamský dong (1978 – 1985)',
'VUV' => 'vanuatské vatu',
'WST' => 'samojská tala',
'XAF' => 'stredoafrický frank',
- 'XAU' => 'Zlato',
+ 'XAG' => 'striebro',
+ 'XAU' => 'zlato',
+ 'XBA' => 'európska zmiešaná jednotka',
+ 'XBB' => 'európska peňažná jednotka',
+ 'XBC' => 'európska jednotka účtu 9 (XBC)',
+ 'XBD' => 'európska jednotka účtu 17 (XBC)',
'XCD' => 'východokaribský dolár',
- 'XDR' => 'Špeciálne práva čerpania',
- 'XFO' => 'Francúzsky zlatý frank',
- 'XFU' => 'Francúzsky UIC-frank',
+ 'XDR' => 'SDR',
+ 'XEU' => 'európska menová jednotka',
+ 'XFO' => 'francúzsky zlatý frank',
+ 'XFU' => 'francúzsky UIC frank',
'XOF' => 'západoafrický frank',
+ 'XPD' => 'paládium',
'XPF' => 'CFP frank',
+ 'XPT' => 'platina',
+ 'XRE' => 'fondy RINET',
+ 'XSU' => 'sucre',
+ 'XTS' => 'kód testovacej meny',
+ 'XUA' => 'jednotka účtu ADB',
'XXX' => 'neznáma mena',
- 'YDD' => 'Jemenský dinár',
+ 'YDD' => 'jemenský dinár',
'YER' => 'jemenský rial',
'YUD' => 'Juhoslávsky dinár [YUD]',
- 'YUM' => 'Juhoslávsky Noviy dinár',
- 'YUN' => 'Juhoslávsky dinár',
- 'ZAL' => 'Juhoafrický rand (financial)',
+ 'YUM' => 'juhoslovanský nový dinár (1994 – 2002)',
+ 'YUN' => 'juhoslovanský konvertibilný dinár (1990 – 1992)',
+ 'YUR' => 'juhoslovanský reformovaný dinár (1992 – 1993)',
+ 'ZAL' => 'juhoafrický rand (finančný)',
'ZAR' => 'juhoafrický rand',
- 'ZMK' => 'Zambijská kwacha (1968–2012)',
+ 'ZMK' => 'zambijská kwacha (1968 – 2012)',
'ZMW' => 'zambijská kwacha',
- 'ZRN' => 'Zairský nový zaire',
- 'ZRZ' => 'Zairský Zaire',
- 'ZWD' => 'Zimbabwiansky dolár (1980–2008)',
- 'ZWL' => 'Zimbabwiansky dolár (2009)',
- 'ZWR' => 'Zimbabwiansky dolár (2008)',
-);
+ 'ZRN' => 'zairský nový zaire (1993 – 1998)',
+ 'ZRZ' => 'zairský zaire (1971 – 1993)',
+ 'ZWD' => 'zimbabwiansky dolár (1980 – 2008)',
+ 'ZWL' => 'zimbabwiansky dolár (2009)',
+ 'ZWR' => 'zimbabwiansky dolár (2008)',
+];
-$currencySymbols = array(
+$currencySymbols = [
+ 'ADP' => 'ADP',
'AED' => 'AED',
+ 'AFA' => 'AFA',
'AFN' => 'AFN',
+ 'ALK' => 'ALK',
'ALL' => 'ALL',
'AMD' => 'AMD',
'ANG' => 'ANG',
'AOA' => 'AOA',
+ 'AOK' => 'AOK',
+ 'AON' => 'AON',
+ 'AOR' => 'AOR',
+ 'ARA' => 'ARA',
+ 'ARL' => 'ARL',
+ 'ARM' => 'ARM',
+ 'ARP' => 'ARP',
'ARS' => 'ARS',
+ 'ATS' => 'ATS',
'AUD' => 'AUD',
'AWG' => 'AWG',
+ 'AZM' => 'AZM',
'AZN' => 'AZN',
+ 'BAD' => 'BAD',
'BAM' => 'BAM',
+ 'BAN' => 'BAN',
'BBD' => 'BBD',
'BDT' => 'BDT',
+ 'BEC' => 'BEC',
+ 'BEF' => 'BEF',
+ 'BEL' => 'BEL',
+ 'BGL' => 'BGL',
+ 'BGM' => 'BGM',
'BGN' => 'BGN',
+ 'BGO' => 'BGO',
'BHD' => 'BHD',
'BIF' => 'BIF',
'BMD' => 'BMD',
'BND' => 'BND',
'BOB' => 'BOB',
+ 'BOL' => 'BOL',
+ 'BOP' => 'BOP',
+ 'BOV' => 'BOV',
+ 'BRB' => 'BRB',
+ 'BRC' => 'BRC',
+ 'BRE' => 'BRE',
'BRL' => 'BRL',
+ 'BRN' => 'BRN',
+ 'BRR' => 'BRR',
+ 'BRZ' => 'BRZ',
'BSD' => 'BSD',
'BTN' => 'BTN',
+ 'BUK' => 'BUK',
'BWP' => 'BWP',
+ 'BYB' => 'BYB',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CAD',
'CDF' => 'CDF',
+ 'CHE' => 'CHE',
'CHF' => 'CHF',
+ 'CHW' => 'CHW',
+ 'CLE' => 'CLE',
+ 'CLF' => 'CLF',
'CLP' => 'CLP',
+ 'CNH' => 'CNH',
+ 'CNX' => 'CNX',
'CNY' => 'CNY',
'COP' => 'COP',
+ 'COU' => 'COU',
'CRC' => 'CRC',
+ 'CSD' => 'CSD',
+ 'CSK' => 'CSK',
'CUC' => 'CUC',
'CUP' => 'CUP',
'CVE' => 'CVE',
+ 'CYP' => 'CYP',
'CZK' => 'CZK',
+ 'DDM' => 'DDM',
+ 'DEM' => 'DEM',
'DJF' => 'DJF',
'DKK' => 'DKK',
'DOP' => 'DOP',
'DZD' => 'DZD',
+ 'ECS' => 'ECS',
+ 'ECV' => 'ECV',
'EEK' => 'EEK',
'EGP' => 'EGP',
'ERN' => 'ERN',
+ 'ESA' => 'ESA',
+ 'ESB' => 'ESB',
+ 'ESP' => 'ESP',
'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FIM' => 'FIM',
'FJD' => 'FJD',
'FKP' => 'FKP',
+ 'FRF' => 'FRF',
'GBP' => 'GBP',
+ 'GEK' => 'GEK',
'GEL' => 'GEL',
+ 'GHC' => 'GHC',
'GHS' => 'GHS',
'GIP' => 'GIP',
'GMD' => 'GMD',
'GNF' => 'GNF',
+ 'GNS' => 'GNS',
+ 'GQE' => 'GQE',
+ 'GRD' => 'GRD',
'GTQ' => 'GTQ',
+ 'GWE' => 'GWE',
'GWP' => 'GWP',
'GYD' => 'GYD',
'HKD' => 'HKD',
'HNL' => 'HNL',
+ 'HRD' => 'HRD',
'HRK' => 'HRK',
'HTG' => 'HTG',
'HUF' => 'HUF',
'IDR' => 'IDR',
+ 'IEP' => 'IEP',
+ 'ILP' => 'ILP',
+ 'ILR' => 'ILR',
'ILS' => 'NIS',
'INR' => 'INR',
'IQD' => 'IQD',
'IRR' => 'IRR',
+ 'ISJ' => 'ISJ',
'ISK' => 'ISK',
+ 'ITL' => 'ITL',
'JMD' => 'JMD',
'JOD' => 'JOD',
'JPY' => 'JPY',
@@ -849,6 +973,8 @@ $currencySymbols = array(
'KHR' => 'KHR',
'KMF' => 'KMF',
'KPW' => 'KPW',
+ 'KRH' => 'KRH',
+ 'KRO' => 'KRO',
'KRW' => 'KRW',
'KWD' => 'KWD',
'KYD' => 'KYD',
@@ -857,88 +983,164 @@ $currencySymbols = array(
'LBP' => 'LBP',
'LKR' => 'LKR',
'LRD' => 'LRD',
+ 'LSL' => 'LSL',
'LTL' => 'LTL',
+ 'LTT' => 'LTT',
+ 'LUC' => 'LUC',
+ 'LUF' => 'LUF',
+ 'LUL' => 'LUL',
'LVL' => 'LVL',
+ 'LVR' => 'LVR',
'LYD' => 'LYD',
'MAD' => 'MAD',
+ 'MAF' => 'MAF',
+ 'MCF' => 'MCF',
+ 'MDC' => 'MDC',
'MDL' => 'MDL',
'MGA' => 'MGA',
+ 'MGF' => 'MGF',
'MKD' => 'MKD',
+ 'MKN' => 'MKN',
+ 'MLF' => 'MLF',
'MMK' => 'MMK',
'MNT' => 'MNT',
'MOP' => 'MOP',
'MRO' => 'MRO',
+ 'MRU' => 'MRU',
+ 'MTL' => 'MTL',
+ 'MTP' => 'MTP',
'MUR' => 'MUR',
+ 'MVP' => 'MVP',
'MVR' => 'MVR',
'MWK' => 'MWK',
'MXN' => 'MX$',
+ 'MXP' => 'MXP',
+ 'MXV' => 'MXV',
'MYR' => 'MYR',
'MZE' => 'MZE',
+ 'MZM' => 'MZM',
'MZN' => 'MZN',
'NAD' => 'NAD',
'NGN' => 'NGN',
+ 'NIC' => 'NIC',
'NIO' => 'NIO',
+ 'NLG' => 'NLG',
'NOK' => 'NOK',
'NPR' => 'NPR',
'NZD' => 'NZD',
'OMR' => 'OMR',
'PAB' => 'PAB',
+ 'PEI' => 'PEI',
'PEN' => 'PEN',
+ 'PES' => 'PES',
'PGK' => 'PGK',
'PHP' => 'PHP',
'PKR' => 'PKR',
'PLN' => 'PLN',
+ 'PLZ' => 'PLZ',
+ 'PTE' => 'PTE',
'PYG' => 'PYG',
'QAR' => 'QAR',
+ 'RHD' => 'RHD',
+ 'ROL' => 'ROL',
'RON' => 'RON',
'RSD' => 'RSD',
'RUB' => 'RUB',
+ 'RUR' => 'RUR',
'RWF' => 'RWF',
'SAR' => 'SAR',
'SBD' => 'SBD',
'SCR' => 'SCR',
+ 'SDD' => 'SDD',
'SDG' => 'SDG',
+ 'SDP' => 'SDP',
'SEK' => 'SEK',
'SGD' => 'SGD',
'SHP' => 'SHP',
+ 'SIT' => 'SIT',
+ 'SKK' => 'SKK',
'SLL' => 'SLL',
'SOS' => 'SOS',
'SRD' => 'SRD',
+ 'SRG' => 'SRG',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'STN',
+ 'SUR' => 'SUR',
'SVC' => 'SVC',
'SYP' => 'SYP',
'SZL' => 'SZL',
'THB' => 'THB',
+ 'TJR' => 'TJR',
'TJS' => 'TJS',
+ 'TMM' => 'TMM',
'TMT' => 'TMT',
'TND' => 'TND',
'TOP' => 'TOP',
+ 'TPE' => 'TPE',
+ 'TRL' => 'TRL',
'TRY' => 'TRY',
'TTD' => 'TTD',
'TWD' => 'TWD',
'TZS' => 'TZS',
'UAH' => 'UAH',
+ 'UAK' => 'UAK',
+ 'UGS' => 'UGS',
'UGX' => 'UGX',
'USD' => 'USD',
+ 'USN' => 'USN',
+ 'USS' => 'USS',
+ 'UYI' => 'UYI',
+ 'UYP' => 'UYP',
'UYU' => 'UYU',
'UZS' => 'UZS',
+ 'VEB' => 'VEB',
'VEF' => 'VEF',
+ 'VES' => 'VES',
'VND' => 'VND',
+ 'VNN' => 'VNN',
'VUV' => 'VUV',
'WST' => 'WST',
'XAF' => 'FCFA',
+ 'XAG' => 'XAG',
+ 'XAU' => 'XAU',
+ 'XBA' => 'XBA',
+ 'XBB' => 'XBB',
+ 'XBC' => 'XBC',
+ 'XBD' => 'XBD',
'XCD' => 'EC$',
+ 'XDR' => 'XDR',
+ 'XEU' => 'XEU',
+ 'XFO' => 'XFO',
+ 'XFU' => 'XFU',
'XOF' => 'CFA',
+ 'XPD' => 'XPD',
'XPF' => 'CFPF',
+ 'XPT' => 'XPT',
+ 'XRE' => 'XRE',
+ 'XSU' => 'XSU',
+ 'XTS' => 'XTS',
+ 'XUA' => 'XUA',
+ 'XXX' => 'XXX',
+ 'YDD' => 'YDD',
'YER' => 'YER',
+ 'YUD' => 'YUD',
+ 'YUM' => 'YUM',
+ 'YUN' => 'YUN',
+ 'YUR' => 'YUR',
+ 'ZAL' => 'ZAL',
'ZAR' => 'ZAR',
+ 'ZMK' => 'ZMK',
'ZMW' => 'ZMW',
+ 'ZRN' => 'ZRN',
+ 'ZRZ' => 'ZRZ',
+ 'ZWD' => 'ZWD',
'ZWL' => 'ZWL',
-);
+ 'ZWR' => 'ZWR',
+];
-$countryNames = array(
- 'AC' => 'Ascensión',
+$countryNames = [
+ 'AC' => 'Ascension',
'AD' => 'Andorra',
'AE' => 'Spojené arabské emiráty',
'AF' => 'Afganistan',
@@ -946,7 +1148,6 @@ $countryNames = array(
'AI' => 'Anguilla',
'AL' => 'Albánsko',
'AM' => 'Arménsko',
- 'AN' => 'Holandské Antily',
'AO' => 'Angola',
'AQ' => 'Antarktída',
'AR' => 'Argentína',
@@ -954,7 +1155,7 @@ $countryNames = array(
'AT' => 'Rakúsko',
'AU' => 'Austrália',
'AW' => 'Aruba',
- 'AX' => 'Ålandy',
+ 'AX' => 'Alandy',
'AZ' => 'Azerbajdžan',
'BA' => 'Bosna a Hercegovina',
'BB' => 'Barbados',
@@ -979,9 +1180,9 @@ $countryNames = array(
'BZ' => 'Belize',
'CA' => 'Kanada',
'CC' => 'Kokosové ostrovy',
- 'CD' => 'Kongo - Kinshasa',
+ 'CD' => 'Konžská demokratická republika',
'CF' => 'Stredoafrická republika',
- 'CG' => 'Kongo - Brazzaville',
+ 'CG' => 'Konžská republika',
'CH' => 'Švajčiarsko',
'CI' => 'Pobrežie Slonoviny',
'CK' => 'Cookove ostrovy',
@@ -996,9 +1197,9 @@ $countryNames = array(
'CW' => 'Curaçao',
'CX' => 'Vianočný ostrov',
'CY' => 'Cyprus',
- 'CZ' => 'Česká republika',
+ 'CZ' => 'Česko',
'DE' => 'Nemecko',
- 'DG' => 'Diego García',
+ 'DG' => 'Diego Garcia',
'DJ' => 'Džibutsko',
'DK' => 'Dánsko',
'DM' => 'Dominika',
@@ -1013,6 +1214,7 @@ $countryNames = array(
'ES' => 'Španielsko',
'ET' => 'Etiópia',
'EU' => 'Európska únia',
+ 'EZ' => 'eurozóna',
'FI' => 'Fínsko',
'FJ' => 'Fidži',
'FK' => 'Falklandy',
@@ -1023,7 +1225,7 @@ $countryNames = array(
'GB' => 'UK',
'GD' => 'Grenada',
'GE' => 'Gruzínsko',
- 'GF' => 'Francúzska Guayana',
+ 'GF' => 'Francúzska Guyana',
'GG' => 'Guernsey',
'GH' => 'Ghana',
'GI' => 'Gibraltár',
@@ -1037,9 +1239,9 @@ $countryNames = array(
'GT' => 'Guatemala',
'GU' => 'Guam',
'GW' => 'Guinea-Bissau',
- 'GY' => 'Guayana',
+ 'GY' => 'Guyana',
'HK' => 'Hongkong',
- 'HM' => 'Heardov ostrov a McDonaldove ostrovy',
+ 'HM' => 'Heardov ostrov a Macdonaldove ostrovy',
'HN' => 'Honduras',
'HR' => 'Chorvátsko',
'HT' => 'Haiti',
@@ -1085,7 +1287,7 @@ $countryNames = array(
'MC' => 'Monako',
'MD' => 'Moldavsko',
'ME' => 'Čierna Hora',
- 'MF' => 'Svätý Martin',
+ 'MF' => 'Svätý Martin (fr.)',
'MG' => 'Madagaskar',
'MH' => 'Marshallove ostrovy',
'MK' => 'Macedónsko',
@@ -1120,14 +1322,14 @@ $countryNames = array(
'PA' => 'Panama',
'PE' => 'Peru',
'PF' => 'Francúzska Polynézia',
- 'PG' => 'Papua Nová Guinea',
+ 'PG' => 'Papua-Nová Guinea',
'PH' => 'Filipíny',
'PK' => 'Pakistan',
'PL' => 'Poľsko',
'PM' => 'Saint Pierre a Miquelon',
'PN' => 'Pitcairnove ostrovy',
'PR' => 'Portoriko',
- 'PS' => 'Palestína',
+ 'PS' => 'Palestínska samospráva',
'PT' => 'Portugalsko',
'PW' => 'Palau',
'PY' => 'Paraguaj',
@@ -1156,7 +1358,7 @@ $countryNames = array(
'SS' => 'Južný Sudán',
'ST' => 'Svätý Tomáš a Princov ostrov',
'SV' => 'Salvádor',
- 'SX' => 'Sint Maarten',
+ 'SX' => 'Svätý Martin (hol.)',
'SY' => 'Sýria',
'SZ' => 'Svazijsko',
'TA' => 'Tristan da Cunha',
@@ -1179,6 +1381,7 @@ $countryNames = array(
'UA' => 'Ukrajina',
'UG' => 'Uganda',
'UM' => 'Menšie odľahlé ostrovy USA',
+ 'UN' => 'OSN',
'US' => 'USA',
'UY' => 'Uruguaj',
'UZ' => 'Uzbekistan',
@@ -1197,27 +1400,31 @@ $countryNames = array(
'ZA' => 'Južná Afrika',
'ZM' => 'Zambia',
'ZW' => 'Zimbabwe',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-few' => '{0} storočia',
+ 'century-many' => '{0} storočia',
+ 'century-one' => '{0} storočie',
+ 'century-other' => '{0} storočí',
'day-few' => '{0} dni',
'day-future-few' => 'o {0} dni',
'day-future-many' => 'o {0} dňa',
'day-future-one' => 'o {0} deň',
'day-future-other' => 'o {0} dní',
'day-many' => '{0} dňa',
- 'day-narrow-future-few' => 'o {0} d',
- 'day-narrow-future-many' => 'o {0} d',
- 'day-narrow-future-one' => 'o {0} d',
- 'day-narrow-future-other' => 'o {0} d',
- 'day-narrow-past-few' => 'pred {0} d',
- 'day-narrow-past-many' => 'pred {0} d',
- 'day-narrow-past-one' => 'pred {0} d',
- 'day-narrow-past-other' => 'pred {0} d',
+ 'day-narrow-future-few' => 'o {0} d.',
+ 'day-narrow-future-many' => 'o {0} d.',
+ 'day-narrow-future-one' => 'o {0} d.',
+ 'day-narrow-future-other' => 'o {0} d.',
+ 'day-narrow-past-few' => 'pred {0} d.',
+ 'day-narrow-past-many' => 'pred {0} d.',
+ 'day-narrow-past-one' => 'pred {0} d.',
+ 'day-narrow-past-other' => 'pred {0} d.',
'day-one' => '{0} deň',
'day-other' => '{0} dní',
'day-past-few' => 'pred {0} dňami',
- 'day-past-many' => 'pred {0} dňom',
+ 'day-past-many' => 'pred {0} dňa',
'day-past-one' => 'pred {0} dňom',
'day-past-other' => 'pred {0} dňami',
'day-short-future-few' => 'o {0} d.',
@@ -1228,6 +1435,30 @@ $timeUnits = array(
'day-short-past-many' => 'pred {0} d.',
'day-short-past-one' => 'pred {0} d.',
'day-short-past-other' => 'pred {0} d.',
+ 'fri-future-few' => 'o {0} piatky',
+ 'fri-future-many' => 'o {0} piatka',
+ 'fri-future-one' => 'o {0} piatok',
+ 'fri-future-other' => 'o {0} piatkov',
+ 'fri-narrow-future-few' => 'o {0} pi.',
+ 'fri-narrow-future-many' => 'o {0} pi.',
+ 'fri-narrow-future-one' => 'o {0} pi.',
+ 'fri-narrow-future-other' => 'o {0} pi.',
+ 'fri-narrow-past-few' => 'pred {0} pi.',
+ 'fri-narrow-past-many' => 'pred {0} pi.',
+ 'fri-narrow-past-one' => 'pred {0} pi.',
+ 'fri-narrow-past-other' => 'pred {0} pi.',
+ 'fri-past-few' => 'pred {0} piatkami',
+ 'fri-past-many' => 'pred {0} piatka',
+ 'fri-past-one' => 'pred {0} piatkom',
+ 'fri-past-other' => 'pred {0} piatkami',
+ 'fri-short-future-few' => 'o {0} pi.',
+ 'fri-short-future-many' => 'o {0} pi.',
+ 'fri-short-future-one' => 'o {0} pi.',
+ 'fri-short-future-other' => 'o {0} pi.',
+ 'fri-short-past-few' => 'pred {0} pi.',
+ 'fri-short-past-many' => 'pred {0} pi.',
+ 'fri-short-past-one' => 'pred {0} pi.',
+ 'fri-short-past-other' => 'pred {0} pi.',
'hour-few' => '{0} hodiny',
'hour-future-few' => 'o {0} hodiny',
'hour-future-many' => 'o {0} hodiny',
@@ -1281,7 +1512,7 @@ $timeUnits = array(
'minute-one' => '{0} minúta',
'minute-other' => '{0} minút',
'minute-past-few' => 'pred {0} minútami',
- 'minute-past-many' => 'pred {0} minútou',
+ 'minute-past-many' => 'pred {0} minúty',
'minute-past-one' => 'pred {0} minútou',
'minute-past-other' => 'pred {0} minútami',
'minute-short-future-few' => 'o {0} min',
@@ -1292,6 +1523,30 @@ $timeUnits = array(
'minute-short-past-many' => 'pred {0} min',
'minute-short-past-one' => 'pred {0} min',
'minute-short-past-other' => 'pred {0} min',
+ 'mon-future-few' => 'o {0} pondelky',
+ 'mon-future-many' => 'o {0} pondelka',
+ 'mon-future-one' => 'o {0} pondelok',
+ 'mon-future-other' => 'o {0} pondelkov',
+ 'mon-narrow-future-few' => 'o {0} po.',
+ 'mon-narrow-future-many' => 'o {0} po.',
+ 'mon-narrow-future-one' => 'o {0} po.',
+ 'mon-narrow-future-other' => 'o {0} po.',
+ 'mon-narrow-past-few' => 'pred {0} po.',
+ 'mon-narrow-past-many' => 'pred {0} po.',
+ 'mon-narrow-past-one' => 'pred {0} po.',
+ 'mon-narrow-past-other' => 'pred {0} po.',
+ 'mon-past-few' => 'pred {0} pondelkami',
+ 'mon-past-many' => 'pred {0} pondelka',
+ 'mon-past-one' => 'pred {0} pondelkom',
+ 'mon-past-other' => 'pred {0} pondelkami',
+ 'mon-short-future-few' => 'o {0} pond.',
+ 'mon-short-future-many' => 'o {0} pond.',
+ 'mon-short-future-one' => 'o {0} pond.',
+ 'mon-short-future-other' => 'o {0} pond.',
+ 'mon-short-past-few' => 'pred {0} pond.',
+ 'mon-short-past-many' => 'pred {0} pond.',
+ 'mon-short-past-one' => 'pred {0} pond.',
+ 'mon-short-past-other' => 'pred {0} pond.',
'month-few' => '{0} mesiace',
'month-future-few' => 'o {0} mesiace',
'month-future-many' => 'o {0} mesiaca',
@@ -1309,7 +1564,7 @@ $timeUnits = array(
'month-one' => '{0} mesiac',
'month-other' => '{0} mesiacov',
'month-past-few' => 'pred {0} mesiacmi',
- 'month-past-many' => 'pred {0} mesiacom',
+ 'month-past-many' => 'pred {0} mesiaca',
'month-past-one' => 'pred {0} mesiacom',
'month-past-other' => 'pred {0} mesiacmi',
'month-short-future-few' => 'o {0} mes.',
@@ -1337,7 +1592,7 @@ $timeUnits = array(
'quarter-narrow-past-one' => 'pred {0} štvrťr.',
'quarter-narrow-past-other' => 'pred {0} štvrťr.',
'quarter-past-few' => 'pred {0} štvrťrokmi',
- 'quarter-past-many' => 'pred {0} štvrťrokom',
+ 'quarter-past-many' => 'pred {0} štvrťroka',
'quarter-past-one' => 'pred {0} štvrťrokom',
'quarter-past-other' => 'pred {0} štvrťrokmi',
'quarter-short-future-few' => 'o {0} štvrťr.',
@@ -1348,6 +1603,30 @@ $timeUnits = array(
'quarter-short-past-many' => 'pred {0} štvrťr.',
'quarter-short-past-one' => 'pred {0} štvrťr.',
'quarter-short-past-other' => 'pred {0} štvrťr.',
+ 'sat-future-few' => 'o {0} soboty',
+ 'sat-future-many' => 'o {0} soboty',
+ 'sat-future-one' => 'o {0} sobotu',
+ 'sat-future-other' => 'o {0} sobôt',
+ 'sat-narrow-future-few' => 'o {0} so.',
+ 'sat-narrow-future-many' => 'o {0} so.',
+ 'sat-narrow-future-one' => 'o {0} so.',
+ 'sat-narrow-future-other' => 'o {0} so.',
+ 'sat-narrow-past-few' => 'pred {0} so.',
+ 'sat-narrow-past-many' => 'pred {0} so.',
+ 'sat-narrow-past-one' => 'pred {0} so.',
+ 'sat-narrow-past-other' => 'pred {0} so.',
+ 'sat-past-few' => 'pred {0} sobotami',
+ 'sat-past-many' => 'pred {0} soboty',
+ 'sat-past-one' => 'pred {0} sobotou',
+ 'sat-past-other' => 'pred {0} sobotami',
+ 'sat-short-future-few' => 'o {0} so.',
+ 'sat-short-future-many' => 'o {0} so.',
+ 'sat-short-future-one' => 'o {0} so.',
+ 'sat-short-future-other' => 'o {0} so.',
+ 'sat-short-past-few' => 'pred {0} so.',
+ 'sat-short-past-many' => 'pred {0} so.',
+ 'sat-short-past-one' => 'pred {0} so.',
+ 'sat-short-past-other' => 'pred {0} so.',
'second-few' => '{0} sekundy',
'second-future-few' => 'o {0} sekundy',
'second-future-many' => 'o {0} sekundy',
@@ -1365,7 +1644,7 @@ $timeUnits = array(
'second-one' => '{0} sekunda',
'second-other' => '{0} sekúnd',
'second-past-few' => 'pred {0} sekundami',
- 'second-past-many' => 'Pred {0} sekundami',
+ 'second-past-many' => 'pred {0} sekundy',
'second-past-one' => 'pred {0} sekundou',
'second-past-other' => 'pred {0} sekundami',
'second-short-future-few' => 'o {0} s',
@@ -1376,6 +1655,102 @@ $timeUnits = array(
'second-short-past-many' => 'pred {0} s',
'second-short-past-one' => 'pred {0} s',
'second-short-past-other' => 'pred {0} s',
+ 'sun-future-few' => 'o {0} nedele',
+ 'sun-future-many' => 'o {0} nedele',
+ 'sun-future-one' => 'o {0} nedeľu',
+ 'sun-future-other' => 'o {0} nedieľ',
+ 'sun-narrow-future-few' => 'o {0} ne.',
+ 'sun-narrow-future-many' => 'o {0} ne.',
+ 'sun-narrow-future-one' => 'o {0} ne.',
+ 'sun-narrow-future-other' => 'o {0} ne.',
+ 'sun-narrow-past-few' => 'pred {0} ne.',
+ 'sun-narrow-past-many' => 'pred {0} ne.',
+ 'sun-narrow-past-one' => 'pred {0} ne.',
+ 'sun-narrow-past-other' => 'pred {0} ne.',
+ 'sun-past-few' => 'pred {0} nedeľami',
+ 'sun-past-many' => 'pred {0} nedele',
+ 'sun-past-one' => 'pred {0} nedeľou',
+ 'sun-past-other' => 'pred {0} nedeľami',
+ 'sun-short-future-few' => 'o {0} ned.',
+ 'sun-short-future-many' => 'o {0} ned.',
+ 'sun-short-future-one' => 'o {0} ned.',
+ 'sun-short-future-other' => 'o {0} ned.',
+ 'sun-short-past-few' => 'pred {0} ned.',
+ 'sun-short-past-many' => 'pred {0} ned.',
+ 'sun-short-past-one' => 'pred {0} ned.',
+ 'sun-short-past-other' => 'pred {0} ned.',
+ 'thu-future-few' => 'o {0} štvrtky',
+ 'thu-future-many' => 'o {0} štvrtka',
+ 'thu-future-one' => 'o {0} štvrtok',
+ 'thu-future-other' => 'o {0} štvrtkov',
+ 'thu-narrow-future-few' => 'o {0} št.',
+ 'thu-narrow-future-many' => 'o {0} št.',
+ 'thu-narrow-future-one' => 'o {0} št.',
+ 'thu-narrow-future-other' => 'o {0} št.',
+ 'thu-narrow-past-few' => 'pred {0} št.',
+ 'thu-narrow-past-many' => 'pred {0} št.',
+ 'thu-narrow-past-one' => 'pred {0} št.',
+ 'thu-narrow-past-other' => 'pred {0} št.',
+ 'thu-past-few' => 'pred {0} štvrtkami',
+ 'thu-past-many' => 'pred {0} štvrtka',
+ 'thu-past-one' => 'pred {0} štvrtkom',
+ 'thu-past-other' => 'pred {0} štvrtkami',
+ 'thu-short-future-few' => 'o {0} št.',
+ 'thu-short-future-many' => 'o {0} št.',
+ 'thu-short-future-one' => 'o {0} št.',
+ 'thu-short-future-other' => 'o {0} št.',
+ 'thu-short-past-few' => 'pred {0} št.',
+ 'thu-short-past-many' => 'pred {0} št.',
+ 'thu-short-past-one' => 'pred {0} št.',
+ 'thu-short-past-other' => 'pred {0} št.',
+ 'tue-future-few' => 'o {0} utorky',
+ 'tue-future-many' => 'o {0} utorka',
+ 'tue-future-one' => 'o {0} utorok',
+ 'tue-future-other' => 'o {0} utorkov',
+ 'tue-narrow-future-few' => 'o {0} ut.',
+ 'tue-narrow-future-many' => 'o {0} ut.',
+ 'tue-narrow-future-one' => 'o {0} ut.',
+ 'tue-narrow-future-other' => 'o {0} ut.',
+ 'tue-narrow-past-few' => 'pred {0} ut.',
+ 'tue-narrow-past-many' => 'pred {0} ut.',
+ 'tue-narrow-past-one' => 'pred {0} ut.',
+ 'tue-narrow-past-other' => 'pred {0} ut.',
+ 'tue-past-few' => 'pred {0} utorkami',
+ 'tue-past-many' => 'pred {0} utorka',
+ 'tue-past-one' => 'pred {0} utorkom',
+ 'tue-past-other' => 'pred {0} utorkami',
+ 'tue-short-future-few' => 'o {0} utor.',
+ 'tue-short-future-many' => 'o {0} utor.',
+ 'tue-short-future-one' => 'o {0} utor.',
+ 'tue-short-future-other' => 'o {0} utor.',
+ 'tue-short-past-few' => 'pred {0} utor.',
+ 'tue-short-past-many' => 'pred {0} utor.',
+ 'tue-short-past-one' => 'pred {0} utor.',
+ 'tue-short-past-other' => 'pred {0} utor.',
+ 'wed-future-few' => 'o {0} stredy',
+ 'wed-future-many' => 'o {0} stredy',
+ 'wed-future-one' => 'o {0} stredu',
+ 'wed-future-other' => 'o {0} stried',
+ 'wed-narrow-future-few' => 'o {0} st.',
+ 'wed-narrow-future-many' => 'o {0} st.',
+ 'wed-narrow-future-one' => 'o {0} st.',
+ 'wed-narrow-future-other' => 'o {0} st.',
+ 'wed-narrow-past-few' => 'pred {0} st.',
+ 'wed-narrow-past-many' => 'pred {0} st.',
+ 'wed-narrow-past-one' => 'pred {0} st.',
+ 'wed-narrow-past-other' => 'pred {0} st.',
+ 'wed-past-few' => 'pred {0} stredami',
+ 'wed-past-many' => 'pred {0} stredy',
+ 'wed-past-one' => 'pred {0} stredou',
+ 'wed-past-other' => 'pred {0} stredami',
+ 'wed-short-future-few' => 'o {0} str.',
+ 'wed-short-future-many' => 'o {0} str.',
+ 'wed-short-future-one' => 'o {0} str.',
+ 'wed-short-future-other' => 'o {0} str.',
+ 'wed-short-past-few' => 'pred {0} str.',
+ 'wed-short-past-many' => 'pred {0} str.',
+ 'wed-short-past-one' => 'pred {0} str.',
+ 'wed-short-past-other' => 'pred {0} str.',
'week-few' => '{0} týždne',
'week-future-few' => 'o {0} týždne',
'week-future-many' => 'o {0} týždňa',
@@ -1393,7 +1768,7 @@ $timeUnits = array(
'week-one' => '{0} týždeň',
'week-other' => '{0} týždňov',
'week-past-few' => 'pred {0} týždňami',
- 'week-past-many' => 'pred {0} týždňom',
+ 'week-past-many' => 'pred {0} týždňa',
'week-past-one' => 'pred {0} týždňom',
'week-past-other' => 'pred {0} týždňami',
'week-short-future-few' => 'o {0} týž.',
@@ -1421,7 +1796,7 @@ $timeUnits = array(
'year-one' => '{0} rok',
'year-other' => '{0} rokov',
'year-past-few' => 'pred {0} rokmi',
- 'year-past-many' => 'pred {0} rokom',
+ 'year-past-many' => 'pred {0} roka',
'year-past-one' => 'pred {0} rokom',
'year-past-other' => 'pred {0} rokmi',
'year-short-future-few' => 'o {0} r.',
@@ -1432,4 +1807,4 @@ $timeUnits = array(
'year-short-past-many' => 'pred {0} r.',
'year-short-past-one' => 'pred {0} r.',
'year-short-past-other' => 'pred {0} r.',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesSl.php b/MLEB/cldr/CldrNames/CldrNamesSl.php
index 4e5adfd5..ad474e94 100644
--- a/MLEB/cldr/CldrNames/CldrNamesSl.php
+++ b/MLEB/cldr/CldrNames/CldrNamesSl.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'afarščina',
'ab' => 'abhaščina',
'ace' => 'ačejščina',
@@ -23,7 +23,7 @@ $languageNames = array(
'ar' => 'arabščina',
'ar-001' => 'sodobna standardna arabščina',
'arc' => 'aramejščina',
- 'arn' => 'aravkanščina',
+ 'arn' => 'mapudungunščina',
'arp' => 'arapaščina',
'arw' => 'aravaščina',
'as' => 'asamščina',
@@ -42,6 +42,7 @@ $languageNames = array(
'bem' => 'bemba',
'bez' => 'benajščina',
'bg' => 'bolgarščina',
+ 'bgn' => 'zahodnobalučijščina',
'bho' => 'bodžpuri',
'bi' => 'bislamščina',
'bik' => 'bikolski jezik',
@@ -78,6 +79,7 @@ $languageNames = array(
'cop' => 'koptščina',
'cr' => 'krijščina',
'crh' => 'krimska tatarščina',
+ 'crs' => 'sejšelska francoska kreolščina',
'cs' => 'češčina',
'csb' => 'kašubščina',
'cu' => 'stara cerkvena slovanščina',
@@ -103,6 +105,7 @@ $languageNames = array(
'dyo' => 'jola-fonjiščina',
'dyu' => 'diula',
'dz' => 'dzonka',
+ 'dzg' => 'dazaga',
'ebu' => 'embujščina',
'ee' => 'evenščina',
'efi' => 'efiščina',
@@ -118,8 +121,8 @@ $languageNames = array(
'enm' => 'srednja angleščina',
'eo' => 'esperanto',
'es' => 'španščina',
- 'es-419' => 'latinskoameriška španščina',
- 'es-es' => 'iberska španščina',
+ 'es-es' => 'evropska španščina',
+ 'es-mx' => 'mehiška španščina',
'et' => 'estonščina',
'eu' => 'baskovščina',
'ewo' => 'evondovščina',
@@ -135,12 +138,13 @@ $languageNames = array(
'fr' => 'francoščina',
'fr-ca' => 'kanadska francoščina',
'fr-ch' => 'švicarska francoščina',
+ 'frc' => 'cajunska francoščina',
'frm' => 'srednja francoščina',
'fro' => 'stara francoščina',
'frr' => 'severna frizijščina',
'frs' => 'vzhodna frizijščina',
'fur' => 'furlanščina',
- 'fy' => 'frizijščina',
+ 'fy' => 'zahodna frizijščina',
'ga' => 'irščina',
'gaa' => 'ga',
'gag' => 'gagavščina',
@@ -162,6 +166,7 @@ $languageNames = array(
'gu' => 'gudžaratščina',
'guz' => 'gusijščina',
'gv' => 'manščina',
+ 'gwi' => 'gvičin',
'ha' => 'havščina',
'hai' => 'haidščina',
'haw' => 'havajščina',
@@ -180,6 +185,7 @@ $languageNames = array(
'hz' => 'herero',
'ia' => 'interlingva',
'iba' => 'ibanščina',
+ 'ibb' => 'ibibijščina',
'id' => 'indonezijščina',
'ie' => 'interlingve',
'ig' => 'igboščina',
@@ -198,16 +204,18 @@ $languageNames = array(
'jpr' => 'judovska perzijščina',
'jrb' => 'judovska arabščina',
'jv' => 'javanščina',
- 'ka' => 'gruzinščina',
+ 'ka' => 'gruzijščina',
'kaa' => 'karakalpaščina',
'kab' => 'kabilščina',
'kac' => 'kačinščina',
+ 'kaj' => 'jju',
'kam' => 'kambaščina',
'kaw' => 'kavi',
'kbd' => 'kabardinščina',
'kcg' => 'tjapska nigerijščina',
'kde' => 'makondščina',
'kea' => 'zelenortskootoška kreolščina',
+ 'kfo' => 'koro',
'kg' => 'kongovščina',
'kha' => 'kasi',
'kho' => 'kotanščina',
@@ -215,11 +223,12 @@ $languageNames = array(
'ki' => 'kikujščina',
'kj' => 'kvanjama',
'kk' => 'kazaščina',
+ 'kkj' => 'kako',
'kl' => 'grenlandščina',
'kln' => 'kalenjinščina',
'km' => 'kmerščina',
'kmb' => 'kimbundu',
- 'kn' => 'kanada',
+ 'kn' => 'kanareščina',
'ko' => 'korejščina',
'koi' => 'komi-permjaščina',
'kok' => 'konkanščina',
@@ -230,8 +239,9 @@ $languageNames = array(
'krl' => 'karelščina',
'kru' => 'kuruk',
'ks' => 'kašmirščina',
- 'ksb' => 'shambala',
+ 'ksb' => 'šambala',
'ksf' => 'bafia',
+ 'ksh' => 'kölnsko narečje',
'ku' => 'kurdščina',
'kum' => 'kumiščina',
'kut' => 'kutenajščina',
@@ -251,14 +261,16 @@ $languageNames = array(
'ln' => 'lingala',
'lo' => 'laoščina',
'lol' => 'mongo',
+ 'lou' => 'louisianska kreolščina',
'loz' => 'lozi',
+ 'lrc' => 'severna lurijščina',
'lt' => 'litovščina',
'lu' => 'luba-katanga',
'lua' => 'luba-lulua',
'lui' => 'luisenščina',
'lun' => 'lunda',
'luo' => 'luo',
- 'lus' => 'lushai',
+ 'lus' => 'mizojščina',
'luy' => 'luhijščina',
'lv' => 'latvijščina',
'mad' => 'madurščina',
@@ -292,24 +304,30 @@ $languageNames = array(
'mt' => 'malteščina',
'mua' => 'mundang',
'mul' => 'več jezikov',
+ 'mus' => 'creekovščina',
'mwl' => 'mirandeščina',
'mwr' => 'marvarščina',
'my' => 'burmanščina',
'myv' => 'erzjanščina',
+ 'mzn' => 'mazanderanščina',
'na' => 'naurujščina',
+ 'nan' => 'min nan kitajščina',
'nap' => 'napolitanščina',
'naq' => 'khoekhoe',
'nb' => 'knjižna norveščina',
'nd' => 'severna ndebelščina',
'nds' => 'nizka nemščina',
+ 'nds-nl' => 'nizka saščina',
'ne' => 'nepalščina',
'new' => 'nevarščina',
+ 'ng' => 'ndonga',
'nia' => 'niaščina',
'niu' => 'niuejščina',
'nl' => 'nizozemščina',
'nl-be' => 'flamščina',
'nmg' => 'kwasio',
'nn' => 'novonorveščina',
+ 'nnh' => 'ngiemboonščina',
'no' => 'norveščina',
'nog' => 'nogajščina',
'non' => 'stara nordijščina',
@@ -327,7 +345,7 @@ $languageNames = array(
'oc' => 'okcitanščina',
'oj' => 'anašinabščina',
'om' => 'oromo',
- 'or' => 'orijščina',
+ 'or' => 'odijščina',
'os' => 'osetinščina',
'osa' => 'osage',
'ota' => 'otomanska turščina',
@@ -336,16 +354,18 @@ $languageNames = array(
'pam' => 'pampanščina',
'pap' => 'papiamentu',
'pau' => 'palavanščina',
+ 'pcm' => 'nigerijski pidžin',
'peo' => 'stara perzijščina',
'phn' => 'feničanščina',
'pi' => 'palijščina',
'pl' => 'poljščina',
'pon' => 'ponpejščina',
+ 'prg' => 'stara pruščina',
'pro' => 'stara provansalščina',
'ps' => 'paštunščina',
'pt' => 'portugalščina',
'pt-br' => 'brazilska portugalščina',
- 'pt-pt' => 'iberska portugalščina',
+ 'pt-pt' => 'evropska portugalščina',
'qu' => 'kečuanščina',
'quc' => 'quiche',
'raj' => 'radžastanščina',
@@ -362,16 +382,19 @@ $languageNames = array(
'rw' => 'ruandščina',
'rwk' => 'rwa',
'sa' => 'sanskrt',
+ 'sad' => 'sandavščina',
'sah' => 'jakutščina',
'sam' => 'samaritanska aramejščina',
'saq' => 'samburščina',
'sas' => 'sasaščina',
'sat' => 'santalščina',
+ 'sba' => 'ngambajščina',
'sbp' => 'sangujščina',
'sc' => 'sardinščina',
'scn' => 'sicilijanščina',
'sco' => 'škotščina',
'sd' => 'sindščina',
+ 'sdh' => 'južna kurdščina',
'se' => 'severna samijščina',
'seh' => 'sena',
'sel' => 'selkupščina',
@@ -381,7 +404,7 @@ $languageNames = array(
'sh' => 'srbohrvaščina',
'shi' => 'tahelitska berberščina',
'shn' => 'šanščina',
- 'si' => 'singalščina',
+ 'si' => 'sinhalščina',
'sid' => 'sidamščina',
'sk' => 'slovaščina',
'sl' => 'slovenščina',
@@ -389,14 +412,16 @@ $languageNames = array(
'sma' => 'južna samijščina',
'smj' => 'luleška samijščina',
'smn' => 'inarska samijščina',
- 'sms' => 'samijščina Skolt',
+ 'sms' => 'skoltska samijščina',
'sn' => 'šonščina',
+ 'snk' => 'soninke',
'so' => 'somalščina',
'sq' => 'albanščina',
'sr' => 'srbščina',
'srn' => 'surinamska kreolščina',
'srr' => 'sererščina',
'ss' => 'svazijščina',
+ 'ssy' => 'saho',
'st' => 'sesoto',
'su' => 'sundanščina',
'suk' => 'sukuma',
@@ -404,8 +429,8 @@ $languageNames = array(
'sux' => 'sumerščina',
'sv' => 'švedščina',
'sw' => 'svahili',
+ 'sw-cd' => 'kongoški svahili',
'swb' => 'šikomor',
- 'swc' => 'svahili (Kongo)',
'syc' => 'klasična sirščina',
'syr' => 'sirščina',
'ta' => 'tamilščina',
@@ -429,7 +454,8 @@ $languageNames = array(
'tog' => 'malavijska tongščina',
'tpi' => 'tok pisin',
'tr' => 'turščina',
- 'ts' => 'tsonga',
+ 'trv' => 'taroko',
+ 'ts' => 'congščina',
'tsi' => 'tsimščina',
'tt' => 'tatarščina',
'tum' => 'tumbukščina',
@@ -438,13 +464,13 @@ $languageNames = array(
'twq' => 'tasawaq',
'ty' => 'tahitščina',
'tyv' => 'tuvinščina',
- 'tzm' => 'tamašek (srednji atlas)',
+ 'tzm' => 'tamašek (Srednji Atlas)',
'udm' => 'udmurtščina',
'ug' => 'ujgurščina',
'uga' => 'ugaritski jezik',
'uk' => 'ukrajinščina',
'umb' => 'umbundščina',
- 'und' => 'neznan ali neveljaven jezik',
+ 'und' => 'neznan jezik',
'ur' => 'urdujščina',
'uz' => 'uzbeščina',
'vai' => 'vajščina',
@@ -454,15 +480,19 @@ $languageNames = array(
'vot' => 'votjaščina',
'vun' => 'vunjo',
'wa' => 'valonščina',
+ 'wae' => 'walser',
'wal' => 'valamščina',
'war' => 'varajščina',
'was' => 'vašajščina',
+ 'wbp' => 'varlpirščina',
'wo' => 'volofščina',
'xal' => 'kalmiščina',
- 'xh' => 'xhosa',
+ 'xh' => 'koščina',
'xog' => 'sogščina',
'yao' => 'jaojščina',
'yap' => 'japščina',
+ 'yav' => 'jangben',
+ 'ybb' => 'jembajščina',
'yi' => 'jidiš',
'yo' => 'jorubščina',
'yue' => 'kantonščina',
@@ -477,9 +507,9 @@ $languageNames = array(
'zun' => 'zunijščina',
'zxx' => 'brez jezikoslovne vsebine',
'zza' => 'zazajščina',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'ADP' => 'andorska peseta',
'AED' => 'dirham Združenih arabskih emiratov',
'AFA' => 'stari afganistanski afgani (1927–2002)',
@@ -526,7 +556,8 @@ $currencyNames = array(
'BUK' => 'burmanski kjat',
'BWP' => 'bocvanska pula',
'BYB' => 'beloruski novi rubelj (1994–1999)',
- 'BYR' => 'beloruski rubelj',
+ 'BYN' => 'beloruski rubelj',
+ 'BYR' => 'beloruski rubelj (2000–2016)',
'BZD' => 'belizejski dolar',
'CAD' => 'kanadski dolar',
'CDF' => 'kongoški frank',
@@ -535,7 +566,8 @@ $currencyNames = array(
'CHW' => 'frank WIR',
'CLF' => 'čilski unidades de fomento',
'CLP' => 'čilski peso',
- 'CNY' => 'kitajski juan renminbi',
+ 'CNH' => 'kitajski juan (offshore)',
+ 'CNY' => 'kitajski juan',
'COP' => 'kolumbijski peso',
'COU' => 'kolumbijska enota realne vrednosti',
'CRC' => 'kostariški kolon',
@@ -631,7 +663,8 @@ $currencyNames = array(
'MMK' => 'mjanmarski kjat',
'MNT' => 'mongolski tugrik',
'MOP' => 'makavska pataka',
- 'MRO' => 'mavretanska uguija',
+ 'MRO' => 'mavretanska uguija (1973–2017)',
+ 'MRU' => 'mavretanska uguija',
'MTL' => 'malteška lira',
'MTP' => 'malteški funt',
'MUR' => 'mavricijska rupija',
@@ -655,8 +688,8 @@ $currencyNames = array(
'OMR' => 'omanski rial',
'PAB' => 'panamska balboa',
'PEI' => 'perujski inti',
- 'PEN' => 'perujski novi sol',
- 'PES' => 'perujski sol',
+ 'PEN' => 'perujski sol',
+ 'PES' => 'perujski sol (1863–1965)',
'PGK' => 'kina Papue Nove Gvineje',
'PHP' => 'filipinski peso',
'PKR' => 'pakistanska rupija',
@@ -688,7 +721,8 @@ $currencyNames = array(
'SRD' => 'surinamski dolar',
'SRG' => 'surinamski gulden',
'SSP' => 'južnosudanski funt',
- 'STD' => 'saotomejska dobra',
+ 'STD' => 'saotomejska dobra (1977–2017)',
+ 'STN' => 'saotomejska dobra',
'SUR' => 'sovjetski rubelj',
'SVC' => 'salvadorski kolon',
'SYP' => 'sirijski funt',
@@ -717,7 +751,8 @@ $currencyNames = array(
'UYU' => 'urugvajski peso',
'UZS' => 'uzbeški sum',
'VEB' => 'venezuelski bolivar (1871–2008)',
- 'VEF' => 'venezuelski bolivar',
+ 'VEF' => 'venezuelski bolivar (2008–2018)',
+ 'VES' => 'venezuelski bolivar',
'VND' => 'vientnamski dong',
'VUV' => 'vanuatujski vatu',
'WST' => 'samoanska tala',
@@ -733,12 +768,12 @@ $currencyNames = array(
'XEU' => 'evropska denarna enota',
'XFO' => 'zlati frank',
'XFU' => 'frank UIC',
- 'XOF' => 'CFA frank BCEAO',
+ 'XOF' => 'zahodnoafriški frank CFA',
'XPD' => 'paladij',
'XPF' => 'CFP frank',
'XPT' => 'platina',
'XTS' => 'koda za potrebe testiranja',
- 'XXX' => 'neznana ali neveljavna valuta',
+ 'XXX' => 'neznana valuta',
'YDD' => 'jemenski dinar',
'YER' => 'jemenski rial',
'YUD' => 'stari jugoslovanski dinar',
@@ -752,9 +787,9 @@ $currencyNames = array(
'ZRZ' => 'zairski zaire',
'ZWD' => 'zimbabvejski dolar',
'ZWL' => 'zimbabvejski dolar (2009)',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'AED' => 'AED',
'AFN' => 'AFN',
'ALL' => 'ALL',
@@ -762,7 +797,7 @@ $currencySymbols = array(
'ANG' => 'ANG',
'AOA' => 'AOA',
'ARS' => 'ARS',
- 'AUD' => 'A$',
+ 'AUD' => 'AUD',
'AWG' => 'AWG',
'AZN' => 'AZN',
'BAM' => 'BAM',
@@ -774,16 +809,18 @@ $currencySymbols = array(
'BMD' => 'BMD',
'BND' => 'BND',
'BOB' => 'BOB',
- 'BRL' => 'R$',
+ 'BRL' => 'BRL',
'BSD' => 'BSD',
'BTN' => 'BTN',
'BWP' => 'BWP',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CAD',
'CDF' => 'CDF',
'CHF' => 'CHF',
'CLP' => 'CLP',
+ 'CNH' => 'CNH',
'CNY' => 'CN¥',
'COP' => 'COP',
'CRC' => 'CRC',
@@ -801,7 +838,7 @@ $currencySymbols = array(
'EUR' => '€',
'FJD' => 'FJD',
'FKP' => 'FKP',
- 'GBP' => '£',
+ 'GBP' => 'GBP',
'GEL' => 'GEL',
'GHS' => 'GHS',
'GIP' => 'GIP',
@@ -847,10 +884,11 @@ $currencySymbols = array(
'MNT' => 'MNT',
'MOP' => 'MOP',
'MRO' => 'MRO',
+ 'MRU' => 'MRU',
'MUR' => 'MUR',
'MVR' => 'MVR',
'MWK' => 'MWK',
- 'MXN' => 'MX$',
+ 'MXN' => 'MXN',
'MYR' => 'MYR',
'MZN' => 'MZN',
'NAD' => 'NAD',
@@ -858,10 +896,11 @@ $currencySymbols = array(
'NIO' => 'NIO',
'NOK' => 'NOK',
'NPR' => 'NPR',
- 'NZD' => 'NZ$',
+ 'NZD' => 'NZD',
'OMR' => 'OMR',
'PAB' => 'PAB',
'PEN' => 'PEN',
+ 'PES' => 'PES',
'PGK' => 'PGK',
'PHP' => 'PHP',
'PKR' => 'PKR',
@@ -884,16 +923,17 @@ $currencySymbols = array(
'SRD' => 'SRD',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'STN',
'SYP' => 'SYP',
'SZL' => 'SZL',
- 'THB' => '฿',
+ 'THB' => 'THB',
'TJS' => 'TJS',
'TMT' => 'TMT',
'TND' => 'TND',
'TOP' => 'TOP',
'TRY' => 'TRY',
'TTD' => 'TTD',
- 'TWD' => 'NT$',
+ 'TWD' => 'TWD',
'TZS' => 'TZS',
'UAH' => 'UAH',
'UGX' => 'UGX',
@@ -901,19 +941,20 @@ $currencySymbols = array(
'UYU' => 'UYU',
'UZS' => 'UZS',
'VEF' => 'VEF',
+ 'VES' => 'VES',
'VND' => '₫',
'VUV' => 'VUV',
'WST' => 'WST',
'XAF' => 'FCFA',
- 'XCD' => 'EC$',
+ 'XCD' => 'XCD',
'XOF' => 'CFA',
'XPF' => 'CFPF',
'YER' => 'YER',
'ZAR' => 'ZAR',
'ZMW' => 'ZMW',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'Otok Ascension',
'AD' => 'Andora',
'AE' => 'Združeni arabski emirati',
@@ -922,7 +963,6 @@ $countryNames = array(
'AI' => 'Angvila',
'AL' => 'Albanija',
'AM' => 'Armenija',
- 'AN' => 'Nizozemski Antili',
'AO' => 'Angola',
'AQ' => 'Antarktika',
'AR' => 'Argentina',
@@ -989,6 +1029,7 @@ $countryNames = array(
'ES' => 'Španija',
'ET' => 'Etiopija',
'EU' => 'Evropska unija',
+ 'EZ' => 'evroobmočje',
'FI' => 'Finska',
'FJ' => 'Fidži',
'FK' => 'Falklandski otoki',
@@ -1006,7 +1047,7 @@ $countryNames = array(
'GL' => 'Grenlandija',
'GM' => 'Gambija',
'GN' => 'Gvineja',
- 'GP' => 'Gvadalupe',
+ 'GP' => 'Guadeloupe',
'GQ' => 'Ekvatorialna Gvineja',
'GR' => 'Grčija',
'GS' => 'Južna Georgia in Južni Sandwichevi otoki',
@@ -1136,14 +1177,14 @@ $countryNames = array(
'SY' => 'Sirija',
'SZ' => 'Svazi',
'TA' => 'Tristan da Cunha',
- 'TC' => 'Otočji Turks in Caicos',
+ 'TC' => 'Otoki Turks in Caicos',
'TD' => 'Čad',
'TF' => 'Francosko južno ozemlje',
'TG' => 'Togo',
'TH' => 'Tajska',
'TJ' => 'Tadžikistan',
'TK' => 'Tokelau',
- 'TL' => 'Vzhodni Timor',
+ 'TL' => 'Timor-Leste',
'TM' => 'Turkmenistan',
'TN' => 'Tunizija',
'TO' => 'Tonga',
@@ -1154,7 +1195,8 @@ $countryNames = array(
'TZ' => 'Tanzanija',
'UA' => 'Ukrajina',
'UG' => 'Uganda',
- 'UM' => 'Druga ameriška ozemlja v Tihem oceanu',
+ 'UM' => 'Stranski zunanji otoki Združenih držav',
+ 'UN' => 'ZN',
'US' => 'ZDA',
'UY' => 'Urugvaj',
'UZ' => 'Uzbekistan',
@@ -1173,42 +1215,70 @@ $countryNames = array(
'ZA' => 'Južnoafriška republika',
'ZM' => 'Zambija',
'ZW' => 'Zimbabve',
-);
+];
-$timeUnits = array(
- 'day-few' => '{0} dnevi',
+$timeUnits = [
+ 'century-few' => '{0} stoletja',
+ 'century-one' => '{0} stoletje',
+ 'century-other' => '{0} stoletij',
+ 'century-two' => '{0} stoletji',
+ 'day-few' => '{0} dni',
'day-future-few' => 'čez {0} dni',
'day-future-one' => 'čez {0} dan',
'day-future-other' => 'čez {0} dni',
'day-future-two' => 'čez {0} dneva',
- 'day-narrow-future-few' => 'čez {0} d',
+ 'day-narrow-future-few' => 'čez {0} dni',
'day-narrow-future-one' => 'čez {0} dan',
- 'day-narrow-future-other' => 'čez {0} d',
- 'day-narrow-future-two' => 'čez {0} d',
- 'day-narrow-past-few' => 'pred {0} d',
- 'day-narrow-past-one' => 'pred {0} d',
- 'day-narrow-past-other' => 'pred {0} d',
- 'day-narrow-past-two' => 'pred {0} d',
+ 'day-narrow-future-other' => 'čez {0} dni',
+ 'day-narrow-future-two' => 'čez {0} dneva',
+ 'day-narrow-past-few' => 'pred {0} dnevi',
+ 'day-narrow-past-one' => 'pred {0} dnevom',
+ 'day-narrow-past-other' => 'pred {0} dnevi',
+ 'day-narrow-past-two' => 'pred {0} dnevoma',
'day-one' => '{0} dan',
'day-other' => '{0} dni',
'day-past-few' => 'pred {0} dnevi',
'day-past-one' => 'pred {0} dnevom',
'day-past-other' => 'pred {0} dnevi',
'day-past-two' => 'pred {0} dnevoma',
- 'day-short-future-few' => 'čez {0} d',
- 'day-short-future-one' => 'čez {0} d',
- 'day-short-future-other' => 'čez {0} d',
- 'day-short-future-two' => 'čez {0} d',
- 'day-short-past-few' => 'pred {0} d',
- 'day-short-past-one' => 'pred {0} d',
- 'day-short-past-other' => 'pred {0} d',
- 'day-short-past-two' => 'pred {0} d',
- 'day-two' => '{0} dni',
+ 'day-short-future-few' => 'čez {0} dni',
+ 'day-short-future-one' => 'čez {0} dan',
+ 'day-short-future-other' => 'čez {0} dni',
+ 'day-short-future-two' => 'čez {0} dneva',
+ 'day-short-past-few' => 'pred {0} dnevi',
+ 'day-short-past-one' => 'pred {0} dnevom',
+ 'day-short-past-other' => 'pred {0} dnevi',
+ 'day-short-past-two' => 'pred {0} dnevoma',
+ 'day-two' => '{0} dneva',
+ 'fri-future-few' => 'čez {0} petke',
+ 'fri-future-one' => 'čez {0} petek',
+ 'fri-future-other' => 'čez {0} petkov',
+ 'fri-future-two' => 'čez {0} petka',
+ 'fri-narrow-future-few' => 'čez {0} pet.',
+ 'fri-narrow-future-one' => 'čez {0} pet.',
+ 'fri-narrow-future-other' => 'čez {0} pet.',
+ 'fri-narrow-future-two' => 'čez {0} pet.',
+ 'fri-narrow-past-few' => 'pred {0} pet.',
+ 'fri-narrow-past-one' => 'pred {0} pet.',
+ 'fri-narrow-past-other' => 'pred {0} pet.',
+ 'fri-narrow-past-two' => 'pred {0} pet.',
+ 'fri-past-few' => 'pred {0} petki',
+ 'fri-past-one' => 'pred {0} petkom',
+ 'fri-past-other' => 'pred {0} petki',
+ 'fri-past-two' => 'pred {0} petkoma',
+ 'fri-short-future-few' => 'čez {0} pet.',
+ 'fri-short-future-one' => 'čez {0} pet.',
+ 'fri-short-future-other' => 'čez {0} pet.',
+ 'fri-short-future-two' => 'čez {0} pet.',
+ 'fri-short-past-few' => 'pred {0} pet.',
+ 'fri-short-past-one' => 'pred {0} pet.',
+ 'fri-short-past-other' => 'pred {0} pet.',
+ 'fri-short-past-two' => 'pred {0} pet.',
'hour-few' => '{0} ure',
- 'hour-future-few' => 'čez {0} h',
- 'hour-future-one' => 'čez {0} h',
- 'hour-future-other' => 'čez {0} h',
- 'hour-future-two' => 'čez {0} h',
+ 'hour-future-few' => 'čez {0} ure',
+ 'hour-future-one' => 'čez {0} uro',
+ 'hour-future-other' => 'čez {0} ur',
+ 'hour-future-two' => 'čez {0} uri',
'hour-narrow-future-few' => 'čez {0} h',
'hour-narrow-future-one' => 'čez {0} h',
'hour-narrow-future-other' => 'čez {0} h',
@@ -1219,32 +1289,32 @@ $timeUnits = array(
'hour-narrow-past-two' => 'pred {0} h',
'hour-one' => '{0} ura',
'hour-other' => '{0} ur',
- 'hour-past-few' => 'pred {0} h',
- 'hour-past-one' => 'pred {0} h',
- 'hour-past-other' => 'pred {0} h',
- 'hour-past-two' => 'pred {0} h',
- 'hour-short-future-few' => 'čez {0} h',
- 'hour-short-future-one' => 'čez {0} h',
- 'hour-short-future-other' => 'čez {0} h',
- 'hour-short-future-two' => 'čez {0} h',
- 'hour-short-past-few' => 'pred {0} h',
- 'hour-short-past-one' => 'pred {0} h',
- 'hour-short-past-other' => 'pred {0} h',
- 'hour-short-past-two' => 'pred {0} h',
+ 'hour-past-few' => 'pred {0} urami',
+ 'hour-past-one' => 'pred {0} uro',
+ 'hour-past-other' => 'pred {0} urami',
+ 'hour-past-two' => 'pred {0} urama',
+ 'hour-short-future-few' => 'čez {0} ure',
+ 'hour-short-future-one' => 'čez {0} uro',
+ 'hour-short-future-other' => 'čez {0} ur',
+ 'hour-short-future-two' => 'čez {0} uri',
+ 'hour-short-past-few' => 'pred {0} urami',
+ 'hour-short-past-one' => 'pred {0} uro',
+ 'hour-short-past-other' => 'pred {0} urami',
+ 'hour-short-past-two' => 'pred {0} urama',
'hour-two' => '{0} uri',
- 'microsecond-few' => '{0} μs',
- 'microsecond-one' => '{0} μs',
- 'microsecond-other' => '{0} μs',
- 'microsecond-two' => '{0} μs',
- 'millisecond-few' => '{0} ms',
- 'millisecond-one' => '{0} ms',
- 'millisecond-other' => '{0} ms',
- 'millisecond-two' => '{0} ms',
+ 'microsecond-few' => '{0} mikrosekunde',
+ 'microsecond-one' => '{0} mikrosekunda',
+ 'microsecond-other' => '{0} mikrosekund',
+ 'microsecond-two' => '{0} mikrosekundi',
+ 'millisecond-few' => '{0} millisekunde',
+ 'millisecond-one' => '{0} milisekunda',
+ 'millisecond-other' => '{0} millisekund',
+ 'millisecond-two' => '{0} millisekundi',
'minute-few' => '{0} minute',
- 'minute-future-few' => 'čez {0} min.',
- 'minute-future-one' => 'čez {0} min.',
- 'minute-future-other' => 'čez {0} min.',
- 'minute-future-two' => 'čez {0} min.',
+ 'minute-future-few' => 'čez {0} minute',
+ 'minute-future-one' => 'čez {0} minuto',
+ 'minute-future-other' => 'čez {0} minut',
+ 'minute-future-two' => 'čez {0} minuti',
'minute-narrow-future-few' => 'čez {0} min',
'minute-narrow-future-one' => 'čez {0} min',
'minute-narrow-future-other' => 'čez {0} min',
@@ -1255,20 +1325,44 @@ $timeUnits = array(
'minute-narrow-past-two' => 'pred {0} min',
'minute-one' => '{0} minuta',
'minute-other' => '{0} minut',
- 'minute-past-few' => 'pred {0} min.',
- 'minute-past-one' => 'pred {0} min.',
- 'minute-past-other' => 'pred {0} min.',
- 'minute-past-two' => 'pred {0} min.',
- 'minute-short-future-few' => 'čez {0} min',
- 'minute-short-future-one' => 'čez {0} min',
- 'minute-short-future-other' => 'čez {0} min',
- 'minute-short-future-two' => 'čez {0} min',
- 'minute-short-past-few' => 'pred {0} min',
- 'minute-short-past-one' => 'pred {0} min',
- 'minute-short-past-other' => 'pred {0} min',
- 'minute-short-past-two' => 'pred {0} min',
+ 'minute-past-few' => 'pred {0} minutami',
+ 'minute-past-one' => 'pred {0} minuto',
+ 'minute-past-other' => 'pred {0} minutami',
+ 'minute-past-two' => 'pred {0} minutama',
+ 'minute-short-future-few' => 'čez {0} min.',
+ 'minute-short-future-one' => 'čez {0} min.',
+ 'minute-short-future-other' => 'čez {0} min.',
+ 'minute-short-future-two' => 'čez {0} min.',
+ 'minute-short-past-few' => 'pred {0} min.',
+ 'minute-short-past-one' => 'pred {0} min.',
+ 'minute-short-past-other' => 'pred {0} min.',
+ 'minute-short-past-two' => 'pred {0} min.',
'minute-two' => '{0} minuti',
- 'month-few' => '{0} meseci',
+ 'mon-future-few' => 'čez {0} ponedeljke',
+ 'mon-future-one' => 'čez {0} ponedeljek',
+ 'mon-future-other' => 'čez {0} ponedeljkov',
+ 'mon-future-two' => 'čez {0} ponedeljka',
+ 'mon-narrow-future-few' => 'čez {0} ponedeljke',
+ 'mon-narrow-future-one' => 'čez {0} ponedeljek',
+ 'mon-narrow-future-other' => 'čez {0} ponedeljkov',
+ 'mon-narrow-future-two' => 'čez {0} ponedeljka',
+ 'mon-narrow-past-few' => 'pred {0} ponedeljki',
+ 'mon-narrow-past-one' => 'pred {0} ponedeljkom',
+ 'mon-narrow-past-other' => 'pred {0} ponedeljki',
+ 'mon-narrow-past-two' => 'pred {0} ponedeljkoma',
+ 'mon-past-few' => 'pred {0} ponedeljki',
+ 'mon-past-one' => 'pred {0} ponedeljkom',
+ 'mon-past-other' => 'pred {0} ponedeljki',
+ 'mon-past-two' => 'pred {0} ponedeljkoma',
+ 'mon-short-future-few' => 'čez {0} pon.',
+ 'mon-short-future-one' => 'čez {0} pon.',
+ 'mon-short-future-other' => 'čez {0} pon.',
+ 'mon-short-future-two' => 'čez {0} pon.',
+ 'mon-short-past-few' => 'pred {0} pon.',
+ 'mon-short-past-one' => 'pred {0} pon.',
+ 'mon-short-past-other' => 'pred {0} pon.',
+ 'mon-short-past-two' => 'pred {0} pon.',
+ 'month-few' => '{0} mesecev',
'month-future-few' => 'čez {0} mesece',
'month-future-one' => 'čez {0} mesec',
'month-future-other' => 'čez {0} mesecev',
@@ -1287,43 +1381,67 @@ $timeUnits = array(
'month-past-one' => 'pred {0} mesecem',
'month-past-other' => 'pred {0} meseci',
'month-past-two' => 'pred {0} mesecema',
- 'month-short-future-few' => 'čez {0} mesece',
- 'month-short-future-one' => 'čez {0} mesec',
- 'month-short-future-other' => 'čez {0} mesece',
- 'month-short-future-two' => 'čez {0} meseca',
- 'month-short-past-few' => 'pred {0} meseci',
- 'month-short-past-one' => 'pred {0} mesecem',
- 'month-short-past-other' => 'pred {0} meseci',
- 'month-short-past-two' => 'pred {0} mesecema',
+ 'month-short-future-few' => 'čez {0} mes.',
+ 'month-short-future-one' => 'čez {0} mes.',
+ 'month-short-future-other' => 'čez {0} mes.',
+ 'month-short-future-two' => 'čez {0} mes.',
+ 'month-short-past-few' => 'pred {0} mes.',
+ 'month-short-past-one' => 'pred {0} mes.',
+ 'month-short-past-other' => 'pred {0} mes.',
+ 'month-short-past-two' => 'pred {0} mes.',
'month-two' => '{0} meseca',
- 'nanosecond-few' => '{0} ns',
+ 'nanosecond-few' => '{0} nanosekunde',
'nanosecond-one' => '{0} ns',
- 'nanosecond-other' => '{0} ns',
- 'nanosecond-two' => '{0} ns',
+ 'nanosecond-other' => '{0} nanosekund',
+ 'nanosecond-two' => '{0} nanosekundi',
'quarter-future-few' => 'čez {0} četrtletja',
'quarter-future-one' => 'čez {0} četrtletje',
'quarter-future-other' => 'čez {0} četrtletij',
'quarter-future-two' => 'čez {0} četrtletji',
- 'quarter-narrow-future-few' => 'čez {0} četrtletja',
- 'quarter-narrow-future-one' => 'čez {0} četrtletje',
- 'quarter-narrow-future-other' => 'čez {0} četrtletij',
- 'quarter-narrow-future-two' => 'čez {0} četrtletji',
- 'quarter-narrow-past-few' => 'pred {0} četrtletji',
- 'quarter-narrow-past-one' => 'pred {0} četrtletjem',
- 'quarter-narrow-past-other' => 'pred {0} četrtletji',
- 'quarter-narrow-past-two' => 'pred {0} četrtletjema',
+ 'quarter-narrow-future-few' => 'čez {0} četr.',
+ 'quarter-narrow-future-one' => 'čez {0} četr.',
+ 'quarter-narrow-future-other' => 'čez {0} četr.',
+ 'quarter-narrow-future-two' => 'čez {0} četr.',
+ 'quarter-narrow-past-few' => 'pred {0} četr.',
+ 'quarter-narrow-past-one' => 'pred {0} četr.',
+ 'quarter-narrow-past-other' => 'pred {0} četr.',
+ 'quarter-narrow-past-two' => 'pred {0} četr.',
'quarter-past-few' => 'pred {0} četrtletji',
'quarter-past-one' => 'pred {0} četrtletjem',
'quarter-past-other' => 'pred {0} četrtletji',
'quarter-past-two' => 'pred {0} četrtletjema',
- 'quarter-short-future-few' => 'čez {0} četrtletja',
- 'quarter-short-future-one' => 'čez {0} četrtletje',
- 'quarter-short-future-other' => 'čez {0} četrtletja',
- 'quarter-short-future-two' => 'čez {0} četrtletji',
- 'quarter-short-past-few' => 'pred {0} četrtletji',
- 'quarter-short-past-one' => 'pred {0} četrtletjem',
- 'quarter-short-past-other' => 'pred {0} četrtletji',
- 'quarter-short-past-two' => 'pred {0} četrtletjema',
+ 'quarter-short-future-few' => 'čez {0} četrtl.',
+ 'quarter-short-future-one' => 'čez {0} četrtl.',
+ 'quarter-short-future-other' => 'čez {0} četrtl.',
+ 'quarter-short-future-two' => 'čez {0} četrtl.',
+ 'quarter-short-past-few' => 'pred {0} četrtl.',
+ 'quarter-short-past-one' => 'pred {0} četrtl.',
+ 'quarter-short-past-other' => 'pred {0} četrtl.',
+ 'quarter-short-past-two' => 'pred {0} četrtl.',
+ 'sat-future-few' => 'čez {0} sobote',
+ 'sat-future-one' => 'čez {0} soboto',
+ 'sat-future-other' => 'čez {0} sobot',
+ 'sat-future-two' => 'čez {0} soboti',
+ 'sat-narrow-future-few' => 'čez {0} sobote',
+ 'sat-narrow-future-one' => 'čez {0} sob.',
+ 'sat-narrow-future-other' => 'čez {0} sobot',
+ 'sat-narrow-future-two' => 'čez {0} soboti',
+ 'sat-narrow-past-few' => 'pred {0} sobotami',
+ 'sat-narrow-past-one' => 'pred {0} sob.',
+ 'sat-narrow-past-other' => 'pred {0} sobotami',
+ 'sat-narrow-past-two' => 'pred {0} sobotama',
+ 'sat-past-few' => 'pred {0} sobotami',
+ 'sat-past-one' => 'pred {0} soboto',
+ 'sat-past-other' => 'pred {0} sobotami',
+ 'sat-past-two' => 'pred {0} sobotama',
+ 'sat-short-future-few' => 'čez {0} sob.',
+ 'sat-short-future-one' => 'čez {0} sob.',
+ 'sat-short-future-other' => 'čez {0} sob.',
+ 'sat-short-future-two' => 'čez {0} sob.',
+ 'sat-short-past-few' => 'pred {0} sob.',
+ 'sat-short-past-one' => 'pred {0} sob.',
+ 'sat-short-past-other' => 'pred {0} sob.',
+ 'sat-short-past-two' => 'pred {0} sob.',
'second-few' => '{0} sekunde',
'second-future-few' => 'čez {0} sekunde',
'second-future-one' => 'čez {0} sekundo',
@@ -1352,35 +1470,131 @@ $timeUnits = array(
'second-short-past-other' => 'pred {0} s',
'second-short-past-two' => 'pred {0} s',
'second-two' => '{0} sekundi',
- 'week-few' => '{0} tedni',
+ 'sun-future-few' => 'čez {0} nedelj',
+ 'sun-future-one' => 'čez {0} nedeljo',
+ 'sun-future-other' => 'čez {0} nedelj',
+ 'sun-future-two' => 'čez {0} nedelji',
+ 'sun-narrow-future-few' => 'čez {0} ned.',
+ 'sun-narrow-future-one' => 'čez {0} ned.',
+ 'sun-narrow-future-other' => 'čez {0} ned.',
+ 'sun-narrow-future-two' => 'čez {0} ned.',
+ 'sun-narrow-past-few' => 'pred {0} ned.',
+ 'sun-narrow-past-one' => 'pred {0} ned.',
+ 'sun-narrow-past-other' => 'pred {0} ned.',
+ 'sun-narrow-past-two' => 'pred {0} ned.',
+ 'sun-past-few' => 'pred {0} nedeljami',
+ 'sun-past-one' => 'pred {0} nedeljo',
+ 'sun-past-other' => 'pred {0} nedeljami',
+ 'sun-past-two' => 'pred {0} nedeljama',
+ 'sun-short-future-few' => 'čez {0} nedelje',
+ 'sun-short-future-one' => 'čez {0} nedeljo',
+ 'sun-short-future-other' => 'čez {0} nedelj',
+ 'sun-short-future-two' => 'čez {0} nedelji',
+ 'sun-short-past-few' => 'pred {0} nedeljami',
+ 'sun-short-past-one' => 'pred {0} nedeljo',
+ 'sun-short-past-other' => 'pred {0} nedeljami',
+ 'sun-short-past-two' => 'pred {0} nedeljama',
+ 'thu-future-few' => 'čez {0} četrtke',
+ 'thu-future-one' => 'čez {0} četrtek',
+ 'thu-future-other' => 'čez {0} četrtkov',
+ 'thu-future-two' => 'čez {0} četrtka',
+ 'thu-narrow-future-few' => 'čez {0} četrtke',
+ 'thu-narrow-future-one' => 'čez {0} čet.',
+ 'thu-narrow-future-other' => 'čez {0} čet.',
+ 'thu-narrow-future-two' => 'čez {0} čet.',
+ 'thu-narrow-past-few' => 'pred {0} četrtki',
+ 'thu-narrow-past-one' => 'pred {0} čet.',
+ 'thu-narrow-past-other' => 'pred {0} četrtki',
+ 'thu-narrow-past-two' => 'pred {0} četrtkoma',
+ 'thu-past-few' => 'pred {0} četrtki',
+ 'thu-past-one' => 'pred {0} četrtkom',
+ 'thu-past-other' => 'pred {0} četrtki',
+ 'thu-past-two' => 'pred {0} četrtkoma',
+ 'thu-short-future-few' => 'čez {0} čet.',
+ 'thu-short-future-one' => 'čez {0} čet.',
+ 'thu-short-future-other' => 'čez {0} čet.',
+ 'thu-short-future-two' => 'čez {0} čet.',
+ 'thu-short-past-few' => 'pred {0} čet.',
+ 'thu-short-past-one' => 'pred {0} čet.',
+ 'thu-short-past-other' => 'pred {0} čet.',
+ 'thu-short-past-two' => 'pred {0} čet.',
+ 'tue-future-few' => 'čez {0} torke',
+ 'tue-future-one' => 'čez {0} torek',
+ 'tue-future-other' => 'čez {0} torkov',
+ 'tue-future-two' => 'čez {0} torka',
+ 'tue-narrow-future-few' => 'čez {0} torke',
+ 'tue-narrow-future-one' => 'čez {0} torek',
+ 'tue-narrow-future-other' => 'čez {0} torkov',
+ 'tue-narrow-future-two' => 'čez {0} torka',
+ 'tue-narrow-past-few' => 'pred {0} torki',
+ 'tue-narrow-past-one' => 'pred {0} torkom',
+ 'tue-narrow-past-other' => 'pred {0} torki',
+ 'tue-narrow-past-two' => 'pred {0} torkoma',
+ 'tue-past-few' => 'pred {0} torki',
+ 'tue-past-one' => 'pred {0} torkom',
+ 'tue-past-other' => 'pred {0} torki',
+ 'tue-past-two' => 'pred {0} torkoma',
+ 'tue-short-future-few' => 'čez {0} tor.',
+ 'tue-short-future-one' => 'čez {0} tor.',
+ 'tue-short-future-other' => 'čez {0} tor.',
+ 'tue-short-future-two' => 'čez {0} tor.',
+ 'tue-short-past-few' => 'pred {0} tor.',
+ 'tue-short-past-one' => 'pred {0} tor.',
+ 'tue-short-past-other' => 'pred {0} tor.',
+ 'tue-short-past-two' => 'pred {0} tor.',
+ 'wed-future-few' => 'čez {0} srede',
+ 'wed-future-one' => 'čez {0} sredo',
+ 'wed-future-other' => 'čez {0} sred',
+ 'wed-future-two' => 'čez {0} sredi',
+ 'wed-narrow-future-few' => 'čez {0} sre.',
+ 'wed-narrow-future-one' => 'čez {0} sre.',
+ 'wed-narrow-future-other' => 'čez {0} sre.',
+ 'wed-narrow-future-two' => 'čez {0} sre.',
+ 'wed-narrow-past-few' => 'pred {0} sre.',
+ 'wed-narrow-past-one' => 'pred {0} sre.',
+ 'wed-narrow-past-other' => 'pred {0} sre.',
+ 'wed-narrow-past-two' => 'pred {0} sre.',
+ 'wed-past-few' => 'pred {0} sredami',
+ 'wed-past-one' => 'pred {0} sredo',
+ 'wed-past-other' => 'pred {0} sredami',
+ 'wed-past-two' => 'pred {0} sredama',
+ 'wed-short-future-few' => 'čez {0} sre.',
+ 'wed-short-future-one' => 'čez {0} sre.',
+ 'wed-short-future-other' => 'čez {0} sre.',
+ 'wed-short-future-two' => 'čez {0} sre.',
+ 'wed-short-past-few' => 'pred {0} sre.',
+ 'wed-short-past-one' => 'pred {0} sre.',
+ 'wed-short-past-other' => 'pred {0} sre.',
+ 'wed-short-past-two' => 'pred {0} sre.',
+ 'week-few' => '{0} tednov',
'week-future-few' => 'čez {0} tedne',
'week-future-one' => 'čez {0} teden',
'week-future-other' => 'čez {0} tednov',
'week-future-two' => 'čez {0} tedna',
- 'week-narrow-future-few' => 'čez {0} tedne',
- 'week-narrow-future-one' => 'čez {0} teden',
- 'week-narrow-future-other' => 'čez {0} tednov',
- 'week-narrow-future-two' => 'čez {0} tedna',
- 'week-narrow-past-few' => 'pred {0} tedni',
- 'week-narrow-past-one' => 'pred {0} tednom',
- 'week-narrow-past-other' => 'pred {0} tedni',
- 'week-narrow-past-two' => 'pred {0} tednoma',
+ 'week-narrow-future-few' => 'čez {0} ted.',
+ 'week-narrow-future-one' => 'čez {0} ted.',
+ 'week-narrow-future-other' => 'čez {0} ted.',
+ 'week-narrow-future-two' => 'čez {0} ted.',
+ 'week-narrow-past-few' => 'pred {0} ted.',
+ 'week-narrow-past-one' => 'pred {0} ted.',
+ 'week-narrow-past-other' => 'pred {0} ted.',
+ 'week-narrow-past-two' => 'pred {0} ted.',
'week-one' => '{0} teden',
'week-other' => '{0} tednov',
'week-past-few' => 'pred {0} tedni',
'week-past-one' => 'pred {0} tednom',
'week-past-other' => 'pred {0} tedni',
'week-past-two' => 'pred {0} tednoma',
- 'week-short-future-few' => 'čez {0} tedne',
- 'week-short-future-one' => 'čez {0} teden',
- 'week-short-future-other' => 'čez {0} tednov',
- 'week-short-future-two' => 'čez {0} tedna',
- 'week-short-past-few' => 'pred {0} tedni',
- 'week-short-past-one' => 'pred {0} tednom',
- 'week-short-past-other' => 'pred {0} tedni',
- 'week-short-past-two' => 'pred {0} tednoma',
+ 'week-short-future-few' => 'čez {0} ted.',
+ 'week-short-future-one' => 'čez {0} ted.',
+ 'week-short-future-other' => 'čez {0} ted.',
+ 'week-short-future-two' => 'čez {0} ted.',
+ 'week-short-past-few' => 'pred {0} ted.',
+ 'week-short-past-one' => 'pred {0} ted.',
+ 'week-short-past-other' => 'pred {0} ted.',
+ 'week-short-past-two' => 'pred {0} ted.',
'week-two' => '{0} tedna',
- 'year-few' => '{0} leta',
+ 'year-few' => '{0} let',
'year-future-few' => 'čez {0} leta',
'year-future-one' => 'čez {0} leto',
'year-future-other' => 'čez {0} let',
@@ -1408,4 +1622,4 @@ $timeUnits = array(
'year-short-past-other' => 'pred {0} leti',
'year-short-past-two' => 'pred {0} letoma',
'year-two' => '{0} leti',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesSmn.php b/MLEB/cldr/CldrNames/CldrNamesSmn.php
deleted file mode 100644
index 77a3547b..00000000
--- a/MLEB/cldr/CldrNames/CldrNamesSmn.php
+++ /dev/null
@@ -1,85 +0,0 @@
-<?php
-
-$languageNames = array(
- 'ain' => 'ainukielâ',
- 'ar' => 'arabiakielâ',
- 'be' => 'vielgisruošâkielâ',
- 'bg' => 'bulgariakielâ',
- 'chm' => 'marikielâ',
- 'cs' => 'tšeekikielâ',
- 'cu' => 'kirkkoslaavi',
- 'da' => 'tanskakielâ',
- 'de' => 'saksakielâ',
- 'de-at' => 'Nuorttâriijkâ saksakielâ',
- 'el' => 'kreikakielâ',
- 'en' => 'engâlâskielâ',
- 'en-au' => 'Australia engâlâskielâ',
- 'en-ca' => 'Kanada engâlâskielâ',
- 'es' => 'espanjakielâ',
- 'et' => 'eestikielâ',
- 'fi' => 'suomâkielâ',
- 'fr' => 'ranskakielâ',
- 'ga' => 'iirikielâ',
- 'grc' => 'toovláškreikakielâ',
- 'he' => 'hepreakielâ',
- 'hr' => 'kroatiakielâ',
- 'hu' => 'uŋgarkielâ',
- 'hy' => 'armeniakielâ',
- 'is' => 'islandkielâ',
- 'it' => 'italiakielâ',
- 'ja' => 'jaapaankielâ',
- 'ku' => 'kurdikielâ',
- 'kv' => 'komikielâ',
- 'la' => 'läättinkielâ',
- 'lv' => 'latviakielâ',
- 'mdf' => 'mokšâkielâ',
- 'mi' => 'maorikielâ',
- 'mk' => 'makedoniakielâ',
- 'mn' => 'mongoliakielâ',
- 'mrj' => 'viestârmarikielâ',
- 'ne' => 'neepaalkielâ',
- 'nl' => 'hollandkielâ',
- 'nn' => 'tárukielâ nynorsk',
- 'no' => 'tárukielâ',
- 'non' => 'toovláštárukielâ',
- 'pl' => 'puolakielâ',
- 'pt' => 'portugalkielâ',
- 'ro' => 'romaniakielâ',
- 'rom' => 'roomaankielâ',
- 'ru' => 'ruošâkielâ',
- 'sa' => 'sanskritkielâ',
- 'se' => 'tavesämikielâ',
- 'sl' => 'sloveniakielâ',
- 'sma' => 'maadâsämikielâ',
- 'smj' => 'juulevsämikielâ',
- 'smn' => 'anarâškielâ',
- 'sms' => 'nuorttâlâškielâ',
- 'sr' => 'serbiakielâ',
- 'sv' => 'ruotâkielâ',
- 'tr' => 'turkkikielâ',
- 'udm' => 'udmurtkielâ',
- 'uk' => 'ukrainakielâ',
- 'vep' => 'vepsäkielâ',
- 'vi' => 'vietnamkielâ',
- 'yue' => 'kantonkiinakielâ',
- 'zh' => 'kiinakielâ',
- 'zh-hans' => 'oovtâkiärdánis kiinakielâ',
- 'zh-hant' => 'ärbivuáválâš kiinakielâ',
-);
-
-$currencyNames = array(
- 'DKK' => 'Tanska ruvnâ',
- 'EEK' => 'Eesti ruvnâ',
- 'EUR' => 'euro',
- 'FIM' => 'Suomâ märkki',
- 'ISK' => 'Island ruvnâ',
- 'LVR' => 'Latvia ruble',
- 'NOK' => 'Taažâ ruvnâ',
- 'SEK' => 'Ruotâ ruvnâ',
-);
-
-$timeUnits = array(
- 'microsecond-one' => '{0} μs',
- 'microsecond-other' => '{0} μs',
- 'microsecond-two' => '{0} μs',
-);
diff --git a/MLEB/cldr/CldrNames/CldrNamesSn.php b/MLEB/cldr/CldrNames/CldrNamesSn.php
index 167d76fc..4174ac19 100644
--- a/MLEB/cldr/CldrNames/CldrNamesSn.php
+++ b/MLEB/cldr/CldrNames/CldrNamesSn.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'ak' => 'chiAkani',
'am' => 'chiAmaric',
'ar' => 'chiArabu',
@@ -46,9 +46,9 @@ $languageNames = array(
'yo' => 'chiYoruba',
'zh' => 'chiChinese',
'zu' => 'chiZulu',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'AED' => 'Diramu re United Arab Emirates',
'AOA' => 'Kwanza ye Angola',
'AUD' => 'Dora re Australia',
@@ -79,7 +79,8 @@ $currencyNames = array(
'LYD' => 'Dinari re Libya',
'MAD' => 'Dirham ye Moroko',
'MGA' => 'Furenki re Malagasi',
- 'MRO' => 'Ugwiya ye Moritania',
+ 'MRO' => 'Ugwiya ye Moritania (1973–2017)',
+ 'MRU' => 'Ugwiya ye Moritania',
'MUR' => 'Rupi ye Morishasi',
'MWK' => 'Kwacha ye Malawi',
'MZM' => 'Metika ye Mozambiki',
@@ -93,7 +94,8 @@ $currencyNames = array(
'SHP' => 'Paundi re Senti Helena',
'SLL' => 'Leoni',
'SOS' => 'Shiringi re Somalia',
- 'STD' => 'Dobra re Sao Tome ne Principe',
+ 'STD' => 'Dobra re Sao Tome ne Principe (1977–2017)',
+ 'STN' => 'Dobra re Sao Tome ne Principe',
'SZL' => 'Lilangeni',
'TND' => 'Dinari re Tunisia',
'TZS' => 'Shiringi re Tanzania',
@@ -105,9 +107,9 @@ $currencyNames = array(
'ZMK' => 'Kwacha ye Zambia (1968–2012)',
'ZMW' => 'Kwacha ye Zambia',
'ZWD' => 'Dora re Zimbabwe',
-);
+];
-$countryNames = array(
+$countryNames = [
'AD' => 'Andora',
'AE' => 'United Arab Emirates',
'AF' => 'Afuganistani',
@@ -115,7 +117,6 @@ $countryNames = array(
'AI' => 'Anguila',
'AL' => 'Albania',
'AM' => 'Armenia',
- 'AN' => 'Netherlands Antilles',
'AO' => 'Angola',
'AR' => 'Ajentina',
'AS' => 'Samoa ye Amerika',
@@ -332,4 +333,4 @@ $countryNames = array(
'ZA' => 'South Africa',
'ZM' => 'Zambia',
'ZW' => 'Zimbabwe',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesSo.php b/MLEB/cldr/CldrNames/CldrNamesSo.php
index c38f87af..9a8045c6 100644
--- a/MLEB/cldr/CldrNames/CldrNamesSo.php
+++ b/MLEB/cldr/CldrNames/CldrNamesSo.php
@@ -1,15 +1,16 @@
<?php
-$languageNames = array(
+$languageNames = [
'af' => 'Afrikaanays',
'ak' => 'Akan',
'am' => 'Axmaari',
'ar' => 'Carabi',
+ 'ar-001' => 'Carabiga rasmiga ah',
'as' => 'Asaamiis',
'az' => 'Azerbaijan',
'be' => 'Beleruusiyaan',
'bg' => 'Bulgeeriyaan',
- 'bn' => 'Bangaali',
+ 'bn' => 'Bangladesh',
'br' => 'Bereton',
'bs' => 'Boosniya',
'ca' => 'Katalaan',
@@ -20,8 +21,10 @@ $languageNames = array(
'de-ch' => 'Jarmal (Iswiiserlaand)',
'el' => 'Giriik',
'en' => 'Ingiriisi',
- 'en-gb' => 'Ingiriisi (Boqortooyada Midowday)',
- 'en-us' => 'Ingiriisi (Maraykan)',
+ 'en-au' => 'Ingiriis Austaraaliyaan',
+ 'en-ca' => 'Ingiriis Kanadiyaan',
+ 'en-gb' => 'Ingiriis Biritish',
+ 'en-us' => 'Ingiriis Maraykan',
'eo' => 'Isberento',
'es' => 'Isbaanish',
'es-419' => 'Isbaanishka Laatiin Ameerika',
@@ -47,12 +50,12 @@ $languageNames = array(
'hu' => 'Hangariyaan',
'hy' => 'Armeeniyaan',
'ia' => 'Interlinguwa',
- 'id' => 'Indunuusiyaan',
+ 'id' => 'Indonesiyaan',
'ie' => 'Interlingue',
'ig' => 'Igbo',
'is' => 'Ayslandays',
'it' => 'Talyaani',
- 'ja' => 'Jabbaaniis',
+ 'ja' => 'Jabaaniis',
'jv' => 'Jafaaniis',
'ka' => 'Joorijiyaan',
'km' => 'Kamboodhian',
@@ -74,6 +77,7 @@ $languageNames = array(
'my' => 'Burmese',
'ne' => 'Nebaali',
'nl' => 'Holandays',
+ 'nl-be' => 'Af faleemi',
'nn' => 'Nowrwejiyan (naynoroski)',
'no' => 'Af Noorwiijiyaan',
'oc' => 'Okitaan',
@@ -97,7 +101,6 @@ $languageNames = array(
'sq' => 'Albaaniyaan',
'sr' => 'Seerbiyaan',
'st' => 'Sesooto',
- 'su' => 'Suudaaniis',
'sv' => 'Swiidhis',
'sw' => 'Sawaaxili',
'ta' => 'Tamiil',
@@ -117,131 +120,461 @@ $languageNames = array(
'xh' => 'Hoosta',
'yi' => 'Yadhish',
'yo' => 'Yoruuba',
- 'zh' => 'Jayniis',
+ 'zh' => 'Jayniis Mandarin',
+ 'zh-hans' => 'Jayniis rasmiga ah',
+ 'zh-hant' => 'Jayniiskii hore',
'zu' => 'Zuulu',
-);
+];
-$currencyNames = array(
+$currencyNames = [
+ 'AED' => 'Dirhamka Isutaga Imaaraatka Carabta',
+ 'AFN' => 'Afgan Afgan',
+ 'ALL' => 'Lek Albaniya',
+ 'AMD' => 'Daraamka Armeniya',
+ 'ANG' => 'Galdar Nadarland Antilean',
+ 'AOA' => 'Kawansada Angola',
+ 'ARS' => 'Beeso Arjentina',
+ 'AUD' => 'Doolarka Awstaraaliya',
+ 'AWG' => 'Foloorin Aruban',
+ 'AZN' => 'Manaatada Asarbeyjan',
+ 'BAM' => 'Konfatibal Maak Bosnia-Hersogofina',
+ 'BBD' => 'Doolarka Barbaadiyaanka',
+ 'BDT' => 'Taka Bangledesh',
+ 'BGN' => 'Lef Bulgariya',
+ 'BHD' => 'Dinaarka Baxreyn',
+ 'BIF' => 'Farank Burundi',
+ 'BMD' => 'Doolarka Barmuuda',
+ 'BND' => 'Doollarka Burunel',
+ 'BOB' => 'Bolifiano Bolifiya',
+ 'BRL' => 'Real Barasil',
+ 'BSD' => 'Doolarka Bahamaas',
+ 'BTN' => 'Ngultaram Butan',
+ 'BWP' => 'Buulada Botswana',
+ 'BYN' => 'Rubalka Belarus',
+ 'BZD' => 'Doolarka Beelisa',
+ 'CAD' => 'Doolarka Kanada',
+ 'CDF' => 'Farank Kongo',
+ 'CHF' => 'Farank Iswis',
+ 'CLP' => 'Beeso Jili',
+ 'CNH' => 'Yuanta Shiinaha (Offshore)',
+ 'CNY' => 'Yuanta Shiinaha',
+ 'COP' => 'Beeso Kolombiya',
+ 'CRC' => 'Kolon Kosta Rika',
+ 'CUC' => 'Beeso Kuuba Konfatibal',
+ 'CUP' => 'Beeso Kuuba',
+ 'CVE' => 'Eskudo Keyb Farde',
+ 'CZK' => 'Korunada Jeek',
'DJF' => 'Faran Jabbuuti',
+ 'DKK' => 'Koranka Danishka',
+ 'DOP' => 'Beeso Dominika',
+ 'DZD' => 'Dinaarka Aljeriya',
+ 'EGP' => 'Bowndka Masar',
+ 'ERN' => 'Nafkada Eritriya',
'ETB' => 'Birta Itoobbiya',
'EUR' => 'Yuuroo',
+ 'FJD' => 'Doolarka Fiji',
+ 'FKP' => 'Bowndka Faalkland Island',
+ 'GBP' => 'Bowndka Biritishka',
+ 'GEL' => 'Laariga Joorjiya',
+ 'GHS' => 'Sedi Gana',
+ 'GIP' => 'Bowndka Gibraltar',
+ 'GMD' => 'Dalasi Gambiya',
+ 'GNF' => 'Faranka Gini',
+ 'GTQ' => 'Quetsal Guatemala',
+ 'GYD' => 'Doolarka Guyanes',
+ 'HKD' => 'Doollarka Hong Kong',
+ 'HNL' => 'Lembira Hondura',
+ 'HRK' => 'Kuna Korooshiya',
+ 'HTG' => 'Goorde Haiti',
+ 'HUF' => 'Forintiska Hangari',
+ 'IDR' => 'Rubiah Indonesiya',
+ 'ILS' => 'Niyuu Shekelka Israaiil',
+ 'INR' => 'Rubiga Hindiya',
+ 'IQD' => 'Dinaarka Ciraaq',
+ 'IRR' => 'Riyaalka Iran',
+ 'ISK' => 'Korona Eysland',
+ 'JMD' => 'Doolarka Jamaaika',
+ 'JOD' => 'Dinaarka Joordan',
+ 'JPY' => 'Yenta Jaban',
+ 'KES' => 'Shilingka Kenya',
+ 'KGS' => 'Soom Kiyrgiystan',
+ 'KHR' => 'Riyf Cambodiya',
+ 'KMF' => 'Farank Komora',
+ 'KPW' => 'Wonka Waqooyi Kuuriya',
+ 'KRW' => 'Wonka Koonfur Kuuriya',
+ 'KWD' => 'Dinaarka Kuweyt',
+ 'KYD' => 'Doolarka jasiiradaha Kayman',
+ 'KZT' => 'Tenge Kasakhstan',
+ 'LAK' => 'Kib Laoti',
+ 'LBP' => 'Bowndka Lebanon',
+ 'LKR' => 'Rubiga Siri lanka',
+ 'LRD' => 'Doollarka Liberiya',
+ 'LYD' => 'Dinaarka Libya',
+ 'MAD' => 'Dirhamka Moroko',
+ 'MDL' => 'Leeyuu Moldofa',
+ 'MGA' => 'Ariari Malagasy',
+ 'MKD' => 'Denaarka Masedoniya',
+ 'MMK' => 'Kayat Mayanmaar',
+ 'MNT' => 'Tugrik Mongoliya',
+ 'MOP' => 'Bataka Makana',
+ 'MRO' => 'Oogiya Mawritaniya (1973–2017)',
+ 'MRU' => 'MRU',
+ 'MUR' => 'Rubiga Mowrishiya',
+ 'MVR' => 'Rufiya Maldifiya',
+ 'MWK' => 'Kawajada Malawi',
+ 'MXN' => 'Beeso Meksikaan',
+ 'MYR' => 'Ringit Malayshiya',
+ 'MZN' => 'Metikalka Mosambik',
+ 'NAD' => 'Doollarka Namibiya',
+ 'NGN' => 'Nairada Neyjeeriya',
+ 'NIO' => 'Nikaragua Kordoba',
+ 'NOK' => 'Koronka Norway',
+ 'NPR' => 'Rubiga Nebal',
+ 'NZD' => 'Doolarka Niyuu Siyalaan',
+ 'OMR' => 'Riyaalka Comaan',
+ 'PAB' => 'Balboa Panama',
+ 'PEN' => 'Sol Beeru',
+ 'PGK' => 'Kinada Babua Niyuu Gini',
+ 'PHP' => 'Biso Filibin',
+ 'PKR' => 'Rubiga Bakistan',
+ 'PLN' => 'Solotida Boland',
+ 'PYG' => 'Guarani Baraguay',
+ 'QAR' => 'Riyaalka Qatar',
+ 'RON' => 'Liyuu ROmaniya',
+ 'RSD' => 'Dinaarka Serbiya',
+ 'RUB' => 'Rubalka Ruush',
+ 'RWF' => 'Farank Ruwanda',
'SAR' => 'Riyaalka Sacuudiga',
- 'SOS' => 'Shilin soomaali',
- 'TZS' => 'Shilin Tansaani',
- 'USD' => 'Doollar maraykan',
+ 'SBD' => 'Doolarka Jasiiradaha Solomon',
+ 'SCR' => 'Rubiga Siisalis',
+ 'SDG' => 'Bowndka Suudaan',
+ 'SEK' => 'Koronka Isweden',
+ 'SGD' => 'Doollarka Singabuur',
+ 'SHP' => 'Bowndka St Helen',
+ 'SLL' => 'Leonka Sira Leon',
+ 'SOS' => 'Shilingka Soomaaliya',
+ 'SRD' => 'Doolarka Surinamees',
+ 'SSP' => 'Boownka Koonfurta Suudaan',
+ 'STN' => 'Dobra Sao Tome & Birinsibal',
+ 'SYP' => 'Bowndka Suuriya',
+ 'SZL' => 'Lilangeenida iswasi',
+ 'THB' => 'Baatka Tayland',
+ 'TJS' => 'Somoon Tajikistan',
+ 'TMT' => 'Manaat Turkmenistan',
+ 'TND' => 'Dinaarka Tunisiya',
+ 'TOP' => 'Ba’anga Tonga',
+ 'TRY' => 'Liirada Turkiga',
+ 'TTD' => 'Doolarka Tirinad iyo Tobago',
+ 'TWD' => 'Doollarka Taywaanta Cusubta',
+ 'TZS' => 'Shilingka Tansaaniya',
+ 'UAH' => 'Hirfiniyada Yukreeyn',
+ 'UGX' => 'Shilingka Uganda',
+ 'USD' => 'USD',
+ 'UYU' => 'Beeso Uruguay',
+ 'UZS' => 'Soom Usbekistan',
+ 'VEF' => 'Bolifar Fenesuala (2008–2018)',
+ 'VES' => 'Bolifar Fenezuela',
+ 'VND' => 'Dong Fitnaam',
+ 'VUV' => 'Fatu Fanuatu',
+ 'WST' => 'Tala Samao',
+ 'XAF' => 'Farank CFA ee Bartamaha Afrika',
+ 'XCD' => 'Doolaraka Bariga Kaaribyan',
+ 'XOF' => 'Faranka CFA Galbeedka Afrika',
+ 'XPF' => 'Farank CFP',
'XXX' => 'Lacag aan la qoon ama aan saxnayn',
-);
+ 'YER' => 'Riyaalka Yemen',
+ 'ZAR' => 'Randka Koonfur Afrika',
+ 'ZMW' => 'Kawajada Sambiya',
+];
-$currencySymbols = array(
+$currencySymbols = [
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => 'A$',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'DBB',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => 'R$',
+ 'BSD' => 'DBS',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYN' => 'BYN',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CA$',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNH' => 'CNH',
+ 'CNY' => 'CN¥',
+ 'COP' => 'COP',
+ 'CRC' => 'KKR',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GBP' => '£',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HK$',
+ 'HNL' => 'LHN',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => 'JP¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MRU' => 'MRU',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MX$',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZ$',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
'SOS' => 'S',
-);
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STN' => 'STN',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => 'THB',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
+ 'USD' => 'US$',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VES' => 'VES',
+ 'VND' => '₫',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'EC$',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+];
-$countryNames = array(
+$countryNames = [
+ 'AC' => 'Jasiiradda Asensiyoon',
'AD' => 'Andora',
'AE' => 'Imaaraadka Carabta ee Midoobay',
'AF' => 'Afgaanistaan',
- 'AG' => 'Antigua iyo Barbuda',
- 'AI' => 'Anguilla',
+ 'AG' => 'Antigua & Barbuuda',
+ 'AI' => 'Anguula',
'AL' => 'Albaaniya',
'AM' => 'Armeeniya',
- 'AN' => 'Netherlands Antilles',
'AO' => 'Angoola',
- 'AR' => 'Arjantiin',
+ 'AQ' => 'Antaarktika',
+ 'AR' => 'Arjentiina',
'AS' => 'Samowa Ameerika',
'AT' => 'Awsteriya',
'AU' => 'Awstaraaliya',
'AW' => 'Aruba',
- 'AZ' => 'Azerbajaan',
- 'BA' => 'Bosniya Hersigoviina',
+ 'AX' => 'Jasiiradda Aland',
+ 'AZ' => 'Asarbajan',
+ 'BA' => 'Boosniya & Harsegofina',
'BB' => 'Baarbadoos',
- 'BD' => 'Bangaaladheesh',
+ 'BD' => 'Bangladesh',
'BE' => 'Biljam',
'BF' => 'Burkiina Faaso',
'BG' => 'Bulgaariya',
'BH' => 'Baxreyn',
'BI' => 'Burundi',
'BJ' => 'Biniin',
- 'BM' => 'Bermuuda',
+ 'BL' => 'St. Baathelemiy',
+ 'BM' => 'Barmuuda',
'BN' => 'Buruneeya',
'BO' => 'Boliifiya',
- 'BR' => 'Braasiil',
+ 'BQ' => 'Karibiyaan Nadarlands',
+ 'BR' => 'Baraasiil',
'BS' => 'Bahaamas',
- 'BT' => 'Bhutan',
+ 'BT' => 'Buutan',
+ 'BV' => 'Buufet Island',
'BW' => 'Botuswaana',
'BY' => 'Belarus',
- 'BZ' => 'Belize',
+ 'BZ' => 'Beliis',
'CA' => 'Kanada',
+ 'CC' => 'Jasiiradda Kookoos',
'CD' => 'Jamhuuriyadda Dimuquraadiga Kongo',
'CF' => 'Jamhuuriyadda Afrikada Dhexe',
'CG' => 'Kongo',
'CH' => 'Swiiserlaand',
- 'CI' => 'Ivory coast',
- 'CK' => 'Jaziiradda Cook',
+ 'CI' => 'Ayfori Koost',
+ 'CK' => 'Jasiiradda Kook',
'CL' => 'Jili',
'CM' => 'Kaameruun',
'CN' => 'Shiinaha',
'CO' => 'Kolombiya',
+ 'CP' => 'Jasiiradda Kilibarton',
'CR' => 'Kosta Riika',
'CU' => 'Kuuba',
- 'CV' => 'Cape Verde Islands',
+ 'CV' => 'Jasiiradda Kayb Faarde',
+ 'CW' => 'Kurakaaw',
+ 'CX' => 'Jasiiradda Kirismas',
'CY' => 'Qubrus',
- 'CZ' => 'Jamhuuriyadda Jek',
+ 'CZ' => 'Jekiya',
'DE' => 'Jarmal',
+ 'DG' => 'Diyeego Karsiya',
'DJ' => 'Jabuuti',
'DK' => 'Denmark',
- 'DM' => 'Domeenika',
- 'DO' => 'Jamhuuriyadda Domeenika',
+ 'DM' => 'Dominika',
+ 'DO' => 'Jamhuuriyaddda Dominika',
'DZ' => 'Aljeeriya',
+ 'EA' => 'Seyuta & Meliila',
'EC' => 'Ikuwadoor',
'EE' => 'Estooniya',
'EG' => 'Masar',
- 'ER' => 'Eretereeya',
+ 'EH' => 'Saxaraha Galbeed',
+ 'ER' => 'Eritreeya',
'ES' => 'Isbeyn',
'ET' => 'Itoobiya',
+ 'EU' => 'Midowga Yurub',
+ 'EZ' => 'Yurusoon',
'FI' => 'Finland',
'FJ' => 'Fiji',
'FK' => 'Jaziiradaha Fooklaan',
- 'FM' => 'Micronesia',
+ 'FM' => 'Mikroneesiya',
+ 'FO' => 'Jasiiradda Faroo',
'FR' => 'Faransiis',
'GA' => 'Gaaboon',
- 'GB' => 'United Kingdom',
+ 'GB' => 'GB',
'GD' => 'Giriinaada',
'GE' => 'Joorjiya',
- 'GF' => 'French Guiana',
+ 'GF' => 'Faransiis Gini',
+ 'GG' => 'Guurnsey',
'GH' => 'Gaana',
'GI' => 'Gibraltar',
'GL' => 'Greenland',
'GM' => 'Gambiya',
'GN' => 'Gini',
- 'GP' => 'Guadeloupe',
- 'GQ' => 'Equatorial Guinea',
+ 'GP' => 'Guadeluub',
+ 'GQ' => 'Ekuwatooriyal Gini',
'GR' => 'Giriig',
+ 'GS' => 'Jasiiradda Joorjiyada Koonfureed & Sandwij',
'GT' => 'Guwaatamaala',
- 'GU' => 'Guam',
+ 'GU' => 'Guaam',
'GW' => 'Gini-Bisaaw',
'GY' => 'Guyana',
+ 'HK' => 'Hong Kong',
+ 'HM' => 'Jasiiradda Haad & MakDonald',
'HN' => 'Honduras',
'HR' => 'Korweeshiya',
- 'HT' => 'Hayti',
- 'HU' => 'Hangeri',
+ 'HT' => 'Haiti',
+ 'HU' => 'Hangari',
+ 'IC' => 'Jasiiradda Kanari',
'ID' => 'Indoneesiya',
'IE' => 'Ayrlaand',
'IL' => 'Israaʼiil',
+ 'IM' => 'Jasiiradda Isle of Man',
'IN' => 'Hindiya',
- 'IO' => 'British Indian Ocean Territory',
+ 'IO' => 'Dhul xadeedka Badweynta Hindiya ee Biritishka',
'IQ' => 'Ciraaq',
'IR' => 'Iiraan',
- 'IS' => 'Iislaand',
+ 'IS' => 'Ayslaand',
'IT' => 'Talyaani',
- 'JM' => 'Jameyka',
+ 'JE' => 'Jaarsey',
+ 'JM' => 'Jamaaika',
'JO' => 'Urdun',
'JP' => 'Jabaan',
- 'KE' => 'Kiiniya',
+ 'KE' => 'Kenya',
'KG' => 'Kirgistaan',
'KH' => 'Kamboodiya',
'KI' => 'Kiribati',
'KM' => 'Komooros',
- 'KN' => 'Saint Kitts and Nevis',
+ 'KN' => 'St. Kitts & Nefis',
'KP' => 'Kuuriyada Waqooyi',
'KR' => 'Kuuriyada Koonfureed',
'KW' => 'Kuwayt',
@@ -249,118 +582,255 @@ $countryNames = array(
'KZ' => 'Kasaakhistaan',
'LA' => 'Laos',
'LB' => 'Lubnaan',
- 'LC' => 'Saint Lucia',
- 'LI' => 'Liechtenstein',
+ 'LC' => 'St. Lusia',
+ 'LI' => 'Liyjtensteyn',
'LK' => 'Sirilaanka',
'LR' => 'Laybeeriya',
'LS' => 'Losooto',
'LT' => 'Lituweeniya',
'LU' => 'Luksemboorg',
'LV' => 'Latfiya',
- 'LY' => 'Liibiya',
- 'MA' => 'Marooko',
+ 'LY' => 'Liibya',
+ 'MA' => 'Morooko',
'MC' => 'Moonako',
'MD' => 'Moldofa',
+ 'ME' => 'Moontenegro',
+ 'MF' => 'St. Maartin',
'MG' => 'Madagaskar',
- 'MH' => 'Marshall Islands',
- 'MK' => 'Makadooniya',
+ 'MH' => 'Jasiiradda Maarshal',
+ 'MK' => 'Masedooniya',
'ML' => 'Maali',
- 'MM' => 'Myanmar',
+ 'MM' => 'Miyanmar',
'MN' => 'Mongooliya',
- 'MP' => 'Northern Mariana Islands',
- 'MQ' => 'Martinique',
+ 'MO' => 'Makaaw',
+ 'MP' => 'Jasiiradda Waqooyiga Mariaana',
+ 'MQ' => 'Maartinik',
'MR' => 'Muritaaniya',
'MS' => 'Montserrat',
- 'MT' => 'Maalda',
+ 'MT' => 'Maalta',
'MU' => 'Murishiyoos',
'MV' => 'Maaldiqeen',
'MW' => 'Malaawi',
'MX' => 'Meksiko',
'MY' => 'Malaysia',
- 'MZ' => 'Musambiig',
+ 'MZ' => 'Musambiik',
'NA' => 'Namiibiya',
- 'NC' => 'New Caledonia',
+ 'NC' => 'Jasiiradda Niyuu Kaledooniya',
'NE' => 'Nayjer',
- 'NF' => 'Norfolk Island',
+ 'NF' => 'Jasiiradda Noorfolk',
'NG' => 'Nayjeeriya',
'NI' => 'Nikaraaguwa',
- 'NL' => 'Netherlands',
+ 'NL' => 'Nederlaands',
'NO' => 'Noorweey',
'NP' => 'Nebaal',
'NR' => 'Nauru',
'NU' => 'Niue',
- 'NZ' => 'Neyuusilaand',
+ 'NZ' => 'Niyuusiilaand',
'OM' => 'Cumaan',
- 'PA' => 'Panama',
- 'PE' => 'Peru',
- 'PF' => 'French Polynesia',
- 'PG' => 'Papua New Guinea',
+ 'PA' => 'Baanama',
+ 'PE' => 'Beeru',
+ 'PF' => 'Booliyneesiya Faransiiska',
+ 'PG' => 'Babua Niyuu Gini',
'PH' => 'Filibiin',
'PK' => 'Bakistaan',
'PL' => 'Booland',
'PM' => 'Saint Pierre and Miquelon',
- 'PN' => 'Pitcairn',
- 'PR' => 'Puerto Rico',
- 'PS' => 'Falastiin Daanka galbeed iyo Qasa',
- 'PT' => 'Bortuqaal',
- 'PW' => 'Palau',
- 'PY' => 'Paraguay',
+ 'PN' => 'Bitkairn',
+ 'PR' => 'Bueerto Riiko',
+ 'PS' => 'Falastiin',
+ 'PT' => 'Bortugaal',
+ 'PW' => 'Balaaw',
+ 'PY' => 'Baraguaay',
'QA' => 'Qadar',
+ 'QO' => 'Dhulxeebeedka Osheeniya',
'RE' => 'Réunion',
'RO' => 'Rumaaniya',
+ 'RS' => 'Seerbiya',
'RU' => 'Ruush',
'RW' => 'Ruwanda',
'SA' => 'Sacuudi Carabiya',
- 'SB' => 'Solomon Islands',
+ 'SB' => 'Jasiiradda Solomon',
'SC' => 'Sishelis',
'SD' => 'Suudaan',
'SE' => 'Iswidhan',
'SG' => 'Singaboor',
'SH' => 'Saint Helena',
- 'SI' => 'Slovenia',
- 'SK' => 'Slovakia',
+ 'SI' => 'islofeeniya',
+ 'SJ' => 'Jasiiradda Sfaldbaad & Jaan Mayen',
+ 'SK' => 'Islofaakiya',
'SL' => 'Siraaliyoon',
'SM' => 'San Marino',
'SN' => 'Sinigaal',
'SO' => 'Soomaaliya',
- 'SR' => 'Suriname',
+ 'SR' => 'Surineym',
'SS' => 'Koonfur Suudaan',
- 'ST' => 'São Tomé and Príncipe',
- 'SV' => 'El Salvador',
+ 'ST' => 'Sao Tome & Birincibal',
+ 'SV' => 'El Salfadoor',
+ 'SX' => 'Siint Maarteen',
'SY' => 'Suuriya',
'SZ' => 'Iswaasilaand',
- 'TC' => 'Turks and Caicos Islands',
+ 'TA' => 'Tiristan da Kunha',
+ 'TC' => 'Turks & Kaikos Island',
'TD' => 'Jaad',
+ 'TF' => 'Dhul xadeedka Koonfureed ee Faransiiska',
'TG' => 'Toogo',
'TH' => 'Taylaand',
'TJ' => 'Tajikistan',
- 'TK' => 'Tokelau',
- 'TL' => 'Timorka bari',
+ 'TK' => 'Tokelaaw',
+ 'TL' => 'Timoor',
'TM' => 'Turkmenistan',
'TN' => 'Tuniisiya',
'TO' => 'Tonga',
'TR' => 'Turki',
- 'TT' => 'Trinidad and Tobago',
- 'TV' => 'Tuvalu',
+ 'TT' => 'Tirinidaad & Tobago',
+ 'TV' => 'Tufaalu',
'TW' => 'Taywaan',
'TZ' => 'Tansaaniya',
'UA' => 'Ukrayn',
'UG' => 'Ugaanda',
- 'US' => 'Maraykanka',
+ 'UM' => 'Jasiiradaha ka baxsan Maraykanka',
+ 'UN' => 'Qaramada Midoobay',
+ 'US' => 'US',
'UY' => 'Uruguwaay',
'UZ' => 'Uusbakistaan',
'VA' => 'Faatikaan',
- 'VC' => 'Saint Vincent and the Grenadines',
+ 'VC' => 'St. Finsent & Girenadiins',
'VE' => 'Fenisuweela',
- 'VG' => 'British Virgin Islands',
- 'VI' => 'U.S. Virgin Islands',
+ 'VG' => 'Biritish Farjin Island',
+ 'VI' => 'U.S Fargin Island',
'VN' => 'Fiyetnaam',
- 'VU' => 'Vanuatu',
- 'WF' => 'Wallis and Futuna',
- 'WS' => 'Samoa',
+ 'VU' => 'Fanuaatu',
+ 'WF' => 'Walis & Futuna',
+ 'WS' => 'Samoowa',
+ 'XK' => 'Koosofo',
'YE' => 'Yaman',
'YT' => 'Mayotte',
'ZA' => 'Koonfur Afrika',
'ZM' => 'Saambiya',
'ZW' => 'Simbaabwe',
-);
+];
+
+$timeUnits = [
+ 'century-one' => 'Qarni',
+ 'century-other' => '{0} Qarniyaal',
+ 'day-future-one' => '+{0} d',
+ 'day-future-other' => '+{0} d',
+ 'day-narrow-future-one' => '+{0} d',
+ 'day-narrow-future-other' => '+{0} d',
+ 'day-narrow-past-one' => '-{0} d',
+ 'day-narrow-past-other' => '-{0} d',
+ 'day-one' => '{0} maalin',
+ 'day-other' => '{0} maalmooyin',
+ 'day-past-one' => '-{0} d',
+ 'day-past-other' => '-{0} d',
+ 'day-short-future-one' => '+{0} d',
+ 'day-short-future-other' => '+{0} d',
+ 'day-short-past-one' => '-{0} d',
+ 'day-short-past-other' => '-{0} d',
+ 'hour-future-one' => '+{0} h',
+ 'hour-future-other' => '+{0} h',
+ 'hour-narrow-future-one' => '+{0} h',
+ 'hour-narrow-future-other' => '+{0} h',
+ 'hour-narrow-past-one' => '-{0} h',
+ 'hour-narrow-past-other' => '-{0} h',
+ 'hour-one' => '{0} saacad',
+ 'hour-other' => '{0} saacado',
+ 'hour-past-one' => '-{0} h',
+ 'hour-past-other' => '-{0} h',
+ 'hour-short-future-one' => '+{0} h',
+ 'hour-short-future-other' => '+{0} h',
+ 'hour-short-past-one' => '-{0} h',
+ 'hour-short-past-other' => '-{0} h',
+ 'microsecond-one' => '{0} μs',
+ 'microsecond-other' => '{0} μs',
+ 'millisecond-one' => '{0} ms',
+ 'millisecond-other' => '{0} ms',
+ 'minute-future-one' => '+{0} min',
+ 'minute-future-other' => '+{0} min',
+ 'minute-narrow-future-one' => '+{0} min',
+ 'minute-narrow-future-other' => '+{0} min',
+ 'minute-narrow-past-one' => '-{0} min',
+ 'minute-narrow-past-other' => '-{0} min',
+ 'minute-one' => '{0} daqiiqad',
+ 'minute-other' => '{0} daqiiqad',
+ 'minute-past-one' => '-{0} min',
+ 'minute-past-other' => '-{0} min',
+ 'minute-short-future-one' => '+{0} min',
+ 'minute-short-future-other' => '+{0} min',
+ 'minute-short-past-one' => '-{0} min',
+ 'minute-short-past-other' => '-{0} min',
+ 'month-future-one' => '+{0} m',
+ 'month-future-other' => '+{0} m',
+ 'month-narrow-future-one' => '+{0} m',
+ 'month-narrow-future-other' => '+{0} m',
+ 'month-narrow-past-one' => '-{0} m',
+ 'month-narrow-past-other' => '-{0} m',
+ 'month-one' => '{0}Bil',
+ 'month-other' => '{0}Bil',
+ 'month-past-one' => '-{0} m',
+ 'month-past-other' => '-{0} m',
+ 'month-short-future-one' => '+{0} m',
+ 'month-short-future-other' => '+{0} m',
+ 'month-short-past-one' => '-{0} m',
+ 'month-short-past-other' => '-{0} m',
+ 'nanosecond-one' => '{0} ns',
+ 'nanosecond-other' => '{0} ns',
+ 'quarter-future-one' => '+{0} Q',
+ 'quarter-future-other' => '+{0} Q',
+ 'quarter-narrow-future-one' => '+{0} Q',
+ 'quarter-narrow-future-other' => '+{0} Q',
+ 'quarter-narrow-past-one' => '-{0} Q',
+ 'quarter-narrow-past-other' => '-{0} Q',
+ 'quarter-past-one' => '-{0} Q',
+ 'quarter-past-other' => '-{0} Q',
+ 'quarter-short-future-one' => '+{0} Q',
+ 'quarter-short-future-other' => '+{0} Q',
+ 'quarter-short-past-one' => '-{0} Q',
+ 'quarter-short-past-other' => '-{0} Q',
+ 'second-future-one' => '+{0} s',
+ 'second-future-other' => '+{0} s',
+ 'second-narrow-future-one' => '+{0} s',
+ 'second-narrow-future-other' => '+{0} s',
+ 'second-narrow-past-one' => '-{0} s',
+ 'second-narrow-past-other' => '-{0} s',
+ 'second-one' => '{0} il-biriqsi',
+ 'second-other' => '{0} il-biriqsi',
+ 'second-past-one' => '-{0} s',
+ 'second-past-other' => '-{0} s',
+ 'second-short-future-one' => '+{0} s',
+ 'second-short-future-other' => '+{0} s',
+ 'second-short-past-one' => '-{0} s',
+ 'second-short-past-other' => '-{0} s',
+ 'sun-future-one' => '+{0} Sundays',
+ 'sun-future-other' => '+{0} Sundays',
+ 'sun-past-one' => '-{0} Sundays',
+ 'sun-past-other' => '-{0} Sundays',
+ 'week-future-one' => '+{0} w',
+ 'week-future-other' => '+{0} w',
+ 'week-narrow-future-one' => '+{0} w',
+ 'week-narrow-future-other' => '+{0} w',
+ 'week-narrow-past-one' => '-{0} w',
+ 'week-narrow-past-other' => '-{0} w',
+ 'week-one' => 'Usbuuc/Sitimaan',
+ 'week-other' => '{0} Usbuucyo',
+ 'week-past-one' => '-{0} w',
+ 'week-past-other' => '-{0} w',
+ 'week-short-future-one' => '+{0} w',
+ 'week-short-future-other' => '+{0} w',
+ 'week-short-past-one' => '-{0} w',
+ 'week-short-past-other' => '-{0} w',
+ 'year-future-one' => '+{0} y',
+ 'year-future-other' => '+{0} y',
+ 'year-narrow-future-one' => '+{0} y',
+ 'year-narrow-future-other' => '+{0} y',
+ 'year-narrow-past-one' => '-{0} y',
+ 'year-narrow-past-other' => '-{0} y',
+ 'year-one' => '{0} Sannad',
+ 'year-other' => '{0}Sannado',
+ 'year-past-one' => '-{0} y',
+ 'year-past-other' => '-{0} y',
+ 'year-short-future-one' => '+{0} y',
+ 'year-short-future-other' => '+{0} y',
+ 'year-short-past-one' => '-{0} y',
+ 'year-short-past-other' => '-{0} y',
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesSq.php b/MLEB/cldr/CldrNames/CldrNamesSq.php
index 9790fdb0..785e39f9 100644
--- a/MLEB/cldr/CldrNames/CldrNamesSq.php
+++ b/MLEB/cldr/CldrNames/CldrNamesSq.php
@@ -1,47 +1,87 @@
<?php
-$languageNames = array(
+$languageNames = [
+ 'aa' => 'afarisht',
'ab' => 'abkazisht',
+ 'ace' => 'akinezisht',
+ 'ada' => 'andangmeisht',
+ 'ady' => 'adigisht',
'af' => 'afrikanisht',
'agq' => 'agemisht',
+ 'ain' => 'ajnuisht',
'ak' => 'akanisht',
- 'am' => 'amarike',
+ 'ale' => 'aleutisht',
+ 'alt' => 'altaishte jugore',
+ 'am' => 'amarisht',
+ 'an' => 'aragonezisht',
+ 'anp' => 'angikisht',
'ar' => 'arabisht',
'ar-001' => 'arabishte standarde moderne',
'arn' => 'mapuçisht',
+ 'arp' => 'arapahoisht',
'as' => 'asamezisht',
'asa' => 'asuisht',
- 'az' => 'azere',
+ 'ast' => 'asturisht',
+ 'av' => 'avarikisht',
+ 'awa' => 'auadhisht',
+ 'ay' => 'ajmarisht',
+ 'az' => 'azerbajxhanisht',
'ba' => 'bashkirisht',
+ 'ban' => 'balinezisht',
+ 'bas' => 'basaisht',
'be' => 'bjellorusisht',
- 'bem' => 'bemba',
- 'bez' => 'bena',
+ 'bem' => 'bembaisht',
+ 'bez' => 'benaisht',
'bg' => 'bullgarisht',
- 'bm' => 'bambara',
+ 'bgn' => 'balokishte perëndimore',
+ 'bho' => 'boxhpurisht',
+ 'bi' => 'bislamisht',
+ 'bin' => 'binisht',
+ 'bla' => 'siksikaisht',
+ 'bm' => 'bambarisht',
'bn' => 'bengalisht',
'bo' => 'tibetisht',
- 'br' => 'bretone',
- 'brx' => 'bodo',
+ 'br' => 'bretonisht',
+ 'brx' => 'bodoisht',
'bs' => 'boshnjakisht',
+ 'bug' => 'buginezisht',
+ 'byn' => 'blinisht',
'ca' => 'katalonisht',
+ 'ce' => 'çeçenisht',
+ 'ceb' => 'sebuanisht',
'cgg' => 'çigisht',
- 'chr' => 'çeroki',
- 'ckb' => 'kurdishte sorani',
- 'co' => 'korsikanisht',
+ 'ch' => 'kamoroisht',
+ 'chk' => 'çukezisht',
+ 'chm' => 'marisht',
+ 'cho' => 'çoktauisht',
+ 'chr' => 'çerokisht',
+ 'chy' => 'çejenisht',
+ 'ckb' => 'kurdishte qendrore',
+ 'co' => 'korsikisht',
+ 'crs' => 'frëngjishte kreole seselve',
'cs' => 'çekisht',
+ 'cu' => 'sllavishte kishtare',
+ 'cv' => 'çuvashisht',
'cy' => 'uellsisht',
'da' => 'danisht',
- 'dav' => 'taitisht',
+ 'dak' => 'dakotisht',
+ 'dar' => 'darguaisht',
+ 'dav' => 'tajtaisht',
'de' => 'gjermanisht',
'de-at' => 'gjermanishte austriake',
'de-ch' => 'gjermanishte zvicerane (dialekti i Alpeve)',
- 'dje' => 'zarmisht',
+ 'dgr' => 'dogribisht',
+ 'dje' => 'zarmaisht',
'dsb' => 'sorbishte e poshtme',
- 'dua' => 'dualisht',
- 'dyo' => 'xhula-fonji',
- 'dz' => 'xongka',
+ 'dua' => 'dualaisht',
+ 'dv' => 'divehisht',
+ 'dyo' => 'xhulafonjisht',
+ 'dz' => 'xhongaisht',
+ 'dzg' => 'dazagauisht',
'ebu' => 'embuisht',
- 'ee' => 'juisht',
+ 'ee' => 'eveisht',
+ 'efi' => 'efikisht',
+ 'eka' => 'ekajukisht',
'el' => 'greqisht',
'en' => 'anglisht',
'en-au' => 'anglishte australiane',
@@ -55,233 +95,362 @@ $languageNames = array(
'es-mx' => 'spanjishte meksikane',
'et' => 'estonisht',
'eu' => 'baskisht',
+ 'ewo' => 'euondoisht',
'fa' => 'persisht',
+ 'ff' => 'fulaisht',
'fi' => 'finlandisht',
- 'fil' => 'filipinase',
- 'fj' => 'fixhiane',
+ 'fil' => 'filipinisht',
+ 'fj' => 'fixhianisht',
'fo' => 'faroisht',
+ 'fon' => 'fonisht',
'fr' => 'frëngjisht',
'fr-ca' => 'frëngjishte kanadeze',
'fr-ch' => 'frëngjishte zvicerane',
- 'fy' => 'frizianisht',
- 'ga' => 'irlandezçe',
+ 'fur' => 'friulianisht',
+ 'fy' => 'frizianishte perëndimore',
+ 'ga' => 'irlandisht',
+ 'gaa' => 'gaisht',
'gag' => 'gagauzisht',
- 'gd' => 'Galisht',
- 'gl' => 'galike',
+ 'gd' => 'galishte skoceze',
+ 'gez' => 'gizisht',
+ 'gil' => 'gilbertazisht',
+ 'gl' => 'galicisht',
'gn' => 'guaranisht',
+ 'gor' => 'gorontaloisht',
'gsw' => 'gjermanishte zvicerane',
'gu' => 'guxharatisht',
'guz' => 'gusisht',
- 'gv' => 'mankse',
+ 'gv' => 'manksisht',
+ 'gwi' => 'guiçinisht',
'ha' => 'hausisht',
- 'haw' => 'hauajane',
+ 'haw' => 'havaisht',
'he' => 'hebraisht',
- 'hi' => 'indishte',
+ 'hi' => 'indisht',
+ 'hil' => 'hiligajnonisht',
+ 'hmn' => 'hmongisht',
'hr' => 'kroatisht',
- 'hsb' => 'sorbiane e sipërme',
- 'ht' => 'haitiançe',
+ 'hsb' => 'sorbishte e sipërme',
+ 'ht' => 'haitisht',
'hu' => 'hungarisht',
+ 'hup' => 'hupaisht',
'hy' => 'armenisht',
- 'ia' => 'Interlingua',
+ 'hz' => 'hereroisht',
+ 'ia' => 'interlingua',
+ 'iba' => 'ibanisht',
+ 'ibb' => 'ibibioisht',
'id' => 'indonezisht',
- 'ie' => 'Gjuha nderkombtare',
- 'ig' => 'igbe',
+ 'ie' => 'gjuha oksidentale',
+ 'ig' => 'igboisht',
'ii' => 'sishuanisht',
+ 'ilo' => 'ilokoisht',
+ 'inh' => 'ingushisht',
+ 'io' => 'idoisht',
'is' => 'islandisht',
'it' => 'italisht',
- 'iu' => 'inuktitut',
+ 'iu' => 'inuktitutisht',
'ja' => 'japonisht',
+ 'jbo' => 'lojbanisht',
'jgo' => 'ngombisht',
'jmc' => 'maçamisht',
'jv' => 'javanisht',
'ka' => 'gjeorgjisht',
'kab' => 'kabilisht',
- 'kam' => 'kambishte',
+ 'kac' => 'kaçinisht',
+ 'kaj' => 'kajeisht',
+ 'kam' => 'kambaisht',
+ 'kbd' => 'kabardianisht',
+ 'kcg' => 'tjapisht',
'kde' => 'makondisht',
- 'kea' => 'kabuverdianisht',
+ 'kea' => 'kreolishte e Kepit të Gjelbër',
+ 'kfo' => 'koroisht',
+ 'kha' => 'kasisht',
'khq' => 'kojraçinisht',
'ki' => 'kikujuisht',
+ 'kj' => 'kuanjamaisht',
'kk' => 'kazakisht',
- 'kl' => 'kalalisute',
- 'kln' => 'kalenjinisht',
- 'km' => 'kmere',
- 'kn' => 'kanade',
+ 'kkj' => 'kakoisht',
+ 'kl' => 'kalalisutisht',
+ 'kln' => 'kalenxhinisht',
+ 'km' => 'kmerisht',
+ 'kmb' => 'kimbunduisht',
+ 'kn' => 'kanadisht',
'ko' => 'koreanisht',
- 'koi' => 'komishte permiake',
+ 'koi' => 'komi-parmjakisht',
'kok' => 'konkanisht',
- 'ks' => 'kashmire',
+ 'kpe' => 'kpeleisht',
+ 'kr' => 'kanurisht',
+ 'krc' => 'karaçaj-balkarisht',
+ 'krl' => 'karelianisht',
+ 'kru' => 'kurukisht',
+ 'ks' => 'kashmirisht',
'ksb' => 'shambalisht',
'ksf' => 'bafianisht',
- 'ku' => 'kurde',
+ 'ksh' => 'këlnisht',
+ 'ku' => 'kurdisht',
+ 'kum' => 'kumikisht',
+ 'kv' => 'komisht',
'kw' => 'kornisht',
'ky' => 'kirgizisht',
'la' => 'latinisht',
+ 'lad' => 'ladinoisht',
'lag' => 'langisht',
- 'lb' => 'luksemburgase',
- 'lg' => 'gandisht',
+ 'lb' => 'luksemburgisht',
+ 'lez' => 'lezgianisht',
+ 'lg' => 'gandaisht',
+ 'li' => 'limburgisht',
'lkt' => 'lakotisht',
'ln' => 'lingalisht',
'lo' => 'laosisht',
+ 'loz' => 'lozisht',
+ 'lrc' => 'lurishte veriore',
'lt' => 'lituanisht',
- 'lu' => 'Lubakatange',
+ 'lu' => 'luba-katangaisht',
+ 'lua' => 'luba-luluaisht',
+ 'lun' => 'lundaisht',
'luo' => 'luoisht',
+ 'lus' => 'mizoisht',
'luy' => 'lujaisht',
'lv' => 'letonisht',
+ 'mad' => 'madurezisht',
+ 'mag' => 'magaisht',
+ 'mai' => 'maitilisht',
+ 'mak' => 'makasarisht',
'mas' => 'masaisht',
+ 'mdf' => 'mokshaisht',
+ 'men' => 'mendisht',
'mer' => 'meruisht',
- 'mfe' => 'norisjene',
- 'mg' => 'malageze',
- 'mgh' => 'makuamito',
+ 'mfe' => 'morisjenisht',
+ 'mg' => 'madagaskarisht',
+ 'mgh' => 'makua-mitoisht',
'mgo' => 'metaisht',
+ 'mh' => 'marshallisht',
'mi' => 'maorisht',
+ 'mic' => 'mikmakisht',
+ 'min' => 'minangkabauisht',
'mk' => 'maqedonisht',
- 'ml' => 'malajalame',
+ 'ml' => 'malajalamisht',
'mn' => 'mongolisht',
- 'moh' => 'mohaukisht',
+ 'mni' => 'manipurisht',
+ 'moh' => 'mohokisht',
+ 'mos' => 'mosisht',
'mr' => 'maratisht',
'ms' => 'malajisht',
'mt' => 'maltisht',
- 'mua' => 'mundagishte',
+ 'mua' => 'mundangisht',
+ 'mul' => 'gjuhë të shumëfishta',
+ 'mus' => 'krikisht',
+ 'mwl' => 'mirandisht',
'my' => 'birmanisht',
- 'naq' => 'namaishte',
- 'nb' => 'bokmalishte norvegjeze',
+ 'myv' => 'erzjaisht',
+ 'mzn' => 'mazanderanisht',
+ 'na' => 'nauruisht',
+ 'nap' => 'napoletanisht',
+ 'naq' => 'namaisht',
+ 'nb' => 'norvegjishte letrare',
'nd' => 'ndebelishte veriore',
+ 'nds' => 'gjermanishte e vendeve të ulëta',
+ 'nds-nl' => 'gjermanishte saksone e vendeve të ulëta',
'ne' => 'nepalisht',
+ 'new' => 'neuarisht',
+ 'ng' => 'ndongaisht',
+ 'nia' => 'niasisht',
+ 'niu' => 'niueanisht',
'nl' => 'holandisht',
- 'nl-be' => 'flamande',
+ 'nl-be' => 'flamandisht',
'nmg' => 'kuasisht',
- 'nn' => 'ninorske norvegjeze',
- 'no' => 'Norvegjisht',
+ 'nn' => 'norvegjishte nynorsk',
+ 'nnh' => 'ngiembunisht',
+ 'no' => 'norvegjisht',
+ 'nog' => 'nogajisht',
'nqo' => 'nkoisht',
+ 'nr' => 'ndebelishte jugore',
+ 'nso' => 'sotoishte veriore',
'nus' => 'nuerisht',
+ 'nv' => 'navahoisht',
+ 'ny' => 'nianjisht',
'nyn' => 'niankolisht',
- 'oc' => 'Oksitanisht',
+ 'oc' => 'oksitanisht',
'om' => 'oromoisht',
- 'or' => 'orije',
- 'pa' => 'panxhabe',
+ 'or' => 'odisht',
+ 'os' => 'osetisht',
+ 'pa' => 'punxhabisht',
+ 'pag' => 'pangasinanisht',
+ 'pam' => 'pampangaisht',
+ 'pap' => 'papiamentisht',
+ 'pau' => 'paluanisht',
+ 'pcm' => 'pixhinishte nigeriane',
'pl' => 'polonisht',
- 'ps' => 'pashto',
+ 'prg' => 'prusisht',
+ 'ps' => 'pashtoisht',
'pt' => 'portugalisht',
'pt-br' => 'portugalishte braziliane',
'pt-pt' => 'portugalishte evropiane',
- 'qu' => 'keçua',
+ 'qu' => 'keçuaisht',
'quc' => 'kiçeisht',
- 'rm' => 'rome',
+ 'rap' => 'rapanuisht',
+ 'rar' => 'rarontonganisht',
+ 'rm' => 'retoromanisht',
'rn' => 'rundisht',
'ro' => 'rumanisht',
- 'ro-md' => 'moldavishte',
- 'rof' => 'romboishte',
+ 'ro-md' => 'moldavisht',
+ 'rof' => 'romboisht',
'ru' => 'rusisht',
+ 'rup' => 'vllahisht',
'rw' => 'kiniaruandisht',
'rwk' => 'ruaisht',
'sa' => 'sanskritisht',
+ 'sad' => 'sandauisht',
+ 'sah' => 'sakaisht',
'saq' => 'samburisht',
+ 'sat' => 'santalisht',
+ 'sba' => 'ngambajisht',
'sbp' => 'sanguisht',
- 'sd' => 'sindi',
+ 'sc' => 'sardenjisht',
+ 'scn' => 'siçilianisht',
+ 'sco' => 'skotisht',
+ 'sd' => 'sindisht',
+ 'sdh' => 'kurdishte jugore',
'se' => 'samishte veriore',
- 'seh' => 'senaishte',
+ 'seh' => 'senaisht',
'ses' => 'senishte kojrabore',
'sg' => 'sangoisht',
- 'sh' => 'Serbo-Kroatisht',
- 'shi' => 'taçelit',
- 'si' => 'sinhale',
+ 'sh' => 'serbo-kroatisht',
+ 'shi' => 'taçelitisht',
+ 'shn' => 'shanisht',
+ 'si' => 'sinhalisht',
'sk' => 'sllovakisht',
'sl' => 'sllovenisht',
+ 'sm' => 'samoanisht',
'sma' => 'samishte jugore',
- 'smj' => 'samishte luleje',
- 'smn' => 'samishte inarie',
- 'sms' => 'samishte skolte',
+ 'smj' => 'samishte lule',
+ 'smn' => 'samishte inari',
+ 'sms' => 'samishte skolti',
'sn' => 'shonisht',
+ 'snk' => 'soninkisht',
'so' => 'somalisht',
'sq' => 'shqip',
'sr' => 'serbisht',
- 'st' => 'Sesotho',
+ 'srn' => 'srananisht (sranantongoisht)',
+ 'ss' => 'suatisht',
+ 'ssy' => 'sahoisht',
+ 'st' => 'sotoishte jugore',
'su' => 'sundanisht',
+ 'suk' => 'sukumaisht',
'sv' => 'suedisht',
'sw' => 'suahilisht',
- 'swc' => 'suahilishte kongoje',
- 'ta' => 'tamile',
- 'te' => 'teluge',
- 'teo' => 'tezoisht',
+ 'sw-cd' => 'suahilishte kongoleze',
+ 'swb' => 'kamorianisht',
+ 'syr' => 'siriakisht',
+ 'ta' => 'tamilisht',
+ 'te' => 'teluguisht',
+ 'tem' => 'timneisht',
+ 'teo' => 'tesoisht',
+ 'tet' => 'tetumisht',
'tg' => 'taxhikisht',
'th' => 'tajlandisht',
- 'ti' => 'tigrinje',
+ 'ti' => 'tigrinjaisht',
+ 'tig' => 'tigreisht',
'tk' => 'turkmenisht',
- 'tlh' => 'Klingon',
+ 'tlh' => 'klingonisht',
+ 'tn' => 'cuanaisht',
'to' => 'tonganisht',
+ 'tpi' => 'pisinishte toku',
'tr' => 'turqisht',
+ 'trv' => 'torokoisht',
+ 'ts' => 'congaisht',
'tt' => 'tatarisht',
- 'tw' => 'Twi',
- 'twq' => 'tasaukisht',
- 'tzm' => 'tamaziatishte atlase qendrore',
- 'ug' => 'ujgure',
+ 'tum' => 'tumbukaisht',
+ 'tvl' => 'tuvaluisht',
+ 'tw' => 'tuisht',
+ 'twq' => 'tasavakisht',
+ 'ty' => 'tahitisht',
+ 'tyv' => 'tuvinianisht',
+ 'tzm' => 'tamazajtisht e Atlasit Qendror',
+ 'udm' => 'udmurtisht',
+ 'ug' => 'ujgurisht',
'uk' => 'ukrainisht',
- 'und' => 'e panjohur',
- 'ur' => 'urdu',
- 'uz' => 'uzbeke',
+ 'umb' => 'umbunduisht',
+ 'und' => 'E panjohur',
+ 'ur' => 'urduisht',
+ 'uz' => 'uzbekisht',
'vai' => 'vaisht',
+ 've' => 'vendaisht',
'vi' => 'vietnamisht',
- 'vun' => 'vunjisht',
- 'wo' => 'ulufisht',
- 'xh' => 'xhose',
+ 'vo' => 'volapykisht',
+ 'vun' => 'vunxhoisht',
+ 'wa' => 'ualunisht',
+ 'wae' => 'ualserisht',
+ 'wal' => 'ulajtaisht',
+ 'war' => 'uarajisht',
+ 'wbp' => 'uarlpirisht',
+ 'wo' => 'uolofisht',
+ 'xal' => 'kalmikisht',
+ 'xh' => 'xhosaisht',
'xog' => 'sogisht',
- 'yi' => 'Jiden',
- 'yo' => 'jorubisht',
- 'zgh' => 'tamazishte standarde marokene',
+ 'yav' => 'jangbenisht',
+ 'ybb' => 'jembaisht',
+ 'yi' => 'jidisht',
+ 'yo' => 'jorubaisht',
+ 'yue' => 'kantonezisht',
+ 'zgh' => 'tamaziatishte standarde marokene',
'zh' => 'kinezisht',
'zh-hans' => 'kinezishte e thjeshtuar',
'zh-hant' => 'kinezishte tradicionale',
- 'zu' => 'zulu',
+ 'zu' => 'zuluisht',
+ 'zun' => 'zunisht',
'zxx' => 'nuk ka përmbajtje gjuhësore',
-);
+ 'zza' => 'zazaisht',
+];
-$currencyNames = array(
+$currencyNames = [
'AED' => 'Dirhami i Emirateve të Bashkuara Arabe',
'AFN' => 'Afgani afgan',
'ALL' => 'Leku shqiptar',
'AMD' => 'Dramia armene',
'ANG' => 'Gilderi antilian holandez',
'AOA' => 'Kuanza e Angolës',
- 'ARS' => 'Pezoja argjentinase',
+ 'ARS' => 'Pesoja argjentinase',
'AUD' => 'Dollari australian',
'AWG' => 'Florini aruban',
- 'AZN' => 'Manata e Azerbajxhanit',
+ 'AZN' => 'Manata azerbajxhanase',
'BAM' => 'Marka e Bosnjë-Hercegovinës [e shkëmbyeshme]',
'BBD' => 'Dollari barbadian',
'BDT' => 'Taka e Bangladeshit',
'BGN' => 'Leva bullgare',
'BHD' => 'Dinari i Bahreinit',
'BIF' => 'Franga burundiane',
- 'BMD' => 'Dollari e Bermudeve',
+ 'BMD' => 'Dollari i Bermudeve',
'BND' => 'Dollari i Bruneit',
'BOB' => 'Boliviani i Bolivisë',
'BRL' => 'Reali brazilian',
'BSD' => 'Dollari i Bahamasit',
'BTN' => 'Ngultrumi butanez',
- 'BWP' => 'Pula botsvane',
- 'BYR' => 'Rubla bjelloruse',
+ 'BWP' => 'Pula botsuane',
+ 'BYN' => 'Rubla bjelloruse',
+ 'BYR' => 'Rubla bjelloruse (2000–2016)',
'BZD' => 'Dollari i Ishujve Belize',
'CAD' => 'Dollari kanadez',
'CDF' => 'Franga kongole',
'CHF' => 'Franga zvicerane',
- 'CLP' => 'Pezoja kiliane',
+ 'CLP' => 'Pesoja kiliane',
+ 'CNH' => 'Juani kinez (për treg të jashtëm)',
'CNY' => 'Juani kinez',
- 'COP' => 'Pezoja kolumbiane',
+ 'COP' => 'Pesoja kolumbiane',
'CRC' => 'Koloni kostarikan',
- 'CUC' => 'Pezoja kubane e shkëmbyeshme',
- 'CUP' => 'Pezoja kubane',
+ 'CUC' => 'Pesoja kubaneze e shkëmbyeshme',
+ 'CUP' => 'Pesoja kubaneze',
'CVE' => 'Eskudoja e Kepit të Gjelbër',
- 'CZK' => 'Koruna e Republikës Çeke',
+ 'CZK' => 'Koruna e Çekisë',
'DJF' => 'Franga xhibutiane',
'DKK' => 'Korona daneze',
- 'DOP' => 'Pezoja dominikane',
+ 'DOP' => 'Pesoja dominikane',
'DZD' => 'Dinari algjerian',
- 'EGP' => 'Stërlina egjiptiane',
+ 'EGP' => 'Sterlina egjiptiane',
'ERN' => 'Nakfa e Eritresë',
'ETB' => 'Bira etiopiane',
'EUR' => 'Euroja',
'FJD' => 'Dollari i Fixhit',
- 'FKP' => 'Stërlina e Ishujve Folkland',
+ 'FKP' => 'Stërlina e Ishujve Falkland',
'GBP' => 'Sterlina britanike',
'GEL' => 'Laria gjeorgjiane',
'GHS' => 'Sejda ganeze',
@@ -290,7 +459,7 @@ $currencyNames = array(
'GNF' => 'Franga guinease',
'GTQ' => 'Kuecali i Guatemalës',
'GYD' => 'Dollari guajanez',
- 'HKD' => 'Dollari i Hong Kongut',
+ 'HKD' => 'Dollari i Hong-Kongut',
'HNL' => 'Lempira hondurase',
'HRK' => 'Kuna kroate',
'HTG' => 'Gurdi haitian',
@@ -315,23 +484,24 @@ $currencyNames = array(
'KZT' => 'Tenga kazake',
'LAK' => 'Kipa e Laosit',
'LBP' => 'Sterlina libaneze',
- 'LKR' => 'Rupia e Sri Lankës',
+ 'LKR' => 'Rupia e Sri-Lankës',
'LRD' => 'Dollari liberian',
'LTL' => 'Lita lituaneze',
'LVL' => 'Lata letoneze',
'LYD' => 'Dinari libian',
'MAD' => 'Dirhami maroken',
- 'MDL' => 'Leu moldav',
+ 'MDL' => 'Leuja moldave',
'MGA' => 'Arieri malagez',
'MKD' => 'Denari maqedonas',
'MMK' => 'Kiata e Mianmarit',
'MNT' => 'Tugrika mongole',
'MOP' => 'Pataka e Makaos',
- 'MRO' => 'Ugija mauritane',
+ 'MRO' => 'Ugija mauritane (1973–2017)',
+ 'MRU' => 'Ugija mauritane',
'MUR' => 'Rupia mauritiane',
'MVR' => 'Rufiu i Maldivit',
'MWK' => 'Kuaça malaviane',
- 'MXN' => 'Pezoja meksikane',
+ 'MXN' => 'Pesoja meksikane',
'MYR' => 'Ringiti malajzian',
'MZN' => 'Metikali i Mozambikut',
'NAD' => 'Dollari i Namibisë',
@@ -342,31 +512,32 @@ $currencyNames = array(
'NZD' => 'Dollari i Zelandës së Re',
'OMR' => 'Riali i Omanit',
'PAB' => 'Balboa panameze',
- 'PEN' => 'Sola nuevo-peruane',
- 'PGK' => 'Kina e Papua-Guineas së Re',
- 'PHP' => 'Pezoja filipinase',
+ 'PEN' => 'Sola peruane',
+ 'PGK' => 'Kina e Guinesë së Re-Papua',
+ 'PHP' => 'Pesoja filipinase',
'PKR' => 'Rupia pakistaneze',
'PLN' => 'Zllota polake',
'PYG' => 'Guarani paraguaian',
'QAR' => 'Riali i Katarit',
- 'RON' => 'Leu rumun',
+ 'RON' => 'Leuja rumune',
'RSD' => 'Dinari serb',
'RUB' => 'Rubla ruse',
'RWF' => 'Franga ruandeze',
'SAR' => 'Riali saudit',
- 'SBD' => 'Dollari i Ishujve Solomon',
- 'SCR' => 'Rupia e Ishujve Sejçelë',
- 'SDG' => 'Stërlina sudaneze',
+ 'SBD' => 'Dollari i Ishujve Solomonë',
+ 'SCR' => 'Rupia e Ishujve Sishelë',
+ 'SDG' => 'Sterlina sudaneze',
'SEK' => 'Korona suedeze',
'SGD' => 'Dollari i Singaporit',
- 'SHP' => 'Stërlina e Ishullit të Shën Helenës',
- 'SLL' => 'Leoni i Sierra Leones',
+ 'SHP' => 'Sterlina e Ishullit të Shën-Helenës',
+ 'SLL' => 'Leoni i Sierra-Leones',
'SOS' => 'Shilinga somaleze',
'SRD' => 'Dollari surinamez',
- 'SSP' => 'Stërlina e Sudanit të Jugut',
- 'STD' => 'Dobra e Sao Tomes dhe Prinsipes',
+ 'SSP' => 'Sterlina sudanezo-jugore',
+ 'STD' => 'Dobra e Sao-Tomes dhe Prinsipes (1977–2017)',
+ 'STN' => 'Dobra e Sao-Tomes dhe Prinsipes',
'SYP' => 'Sterlina siriane',
- 'SZL' => 'Lilangeni i Svazilandit',
+ 'SZL' => 'Lilangeni i Suazilandës',
'THB' => 'Bata tajlandeze',
'TJS' => 'Somona taxhike',
'TMT' => 'Manata turkmene',
@@ -379,9 +550,10 @@ $currencyNames = array(
'UAH' => 'Rivnia ukrainase',
'UGX' => 'Shilinga ugandeze',
'USD' => 'Dollari amerikan',
- 'UYU' => 'Pezoja uruguaiane',
+ 'UYU' => 'Pesoja uruguaiane',
'UZS' => 'Soma uzbeke',
- 'VEF' => 'Bolivari venezuelian',
+ 'VEF' => 'Bolivari venezuelian (2008–2018)',
+ 'VES' => 'Bolivari venezuelas',
'VND' => 'Donga vietnameze',
'VUV' => 'Vatuja e Vanuatusë',
'WST' => 'Tala samoane',
@@ -391,36 +563,174 @@ $currencyNames = array(
'XPF' => 'Franga franceze e Polinezisë',
'XXX' => 'Valutë e panjohur',
'YER' => 'Riali i Jemenit',
- 'ZAR' => 'Randa afrikano-jugore',
+ 'ZAR' => 'Randi afrikano-jugor',
'ZMW' => 'Kuaça e Zambikut',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
'ALL' => 'Lekë',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
'AUD' => 'A$',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
'BRL' => 'R$',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYN' => 'BYN',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
'CAD' => 'CA$',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNH' => 'CNH',
'CNY' => 'CN¥',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
'EUR' => '€',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
'GBP' => '£',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
'ILS' => '₪',
'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
'JPY' => 'JP¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LTL' => 'LTL',
+ 'LVL' => 'LVL',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
'MXN' => 'MX$',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
'NZD' => 'NZ$',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'STN' => 'STN',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
'THB' => '฿',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
'USD' => 'US$',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VES' => 'VES',
'VND' => '₫',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
'XAF' => 'FCFA',
'XCD' => 'EC$',
'XOF' => 'CFA',
'XPF' => 'CFPF',
-);
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'Ishulli Asenshion',
'AD' => 'Andorrë',
'AE' => 'Emiratet e Bashkuara Arabe',
@@ -442,46 +752,46 @@ $countryNames = array(
'BB' => 'Barbados',
'BD' => 'Bangladesh',
'BE' => 'Belgjikë',
- 'BF' => 'Burkina Faso',
+ 'BF' => 'Burkina-Faso',
'BG' => 'Bullgari',
- 'BH' => 'Bahrein',
- 'BI' => 'Burund',
+ 'BH' => 'Bahrejn',
+ 'BI' => 'Burundi',
'BJ' => 'Benin',
- 'BL' => 'Shën Bartolemeo',
- 'BM' => 'Bermudë',
- 'BN' => 'Brunej',
+ 'BL' => 'Sen-Bartelemi',
+ 'BM' => 'Bermude',
+ 'BN' => 'Brunei',
'BO' => 'Bolivi',
'BQ' => 'Karaibet holandeze',
'BR' => 'Brazil',
- 'BS' => 'Bahamas',
+ 'BS' => 'Bahama',
'BT' => 'Butan',
- 'BV' => 'Ishujt Bove',
+ 'BV' => 'Ishulli Bove',
'BW' => 'Botsvanë',
'BY' => 'Bjellorusi',
'BZ' => 'Belizë',
'CA' => 'Kanada',
'CC' => 'Ishujt Kokos',
'CD' => 'Kongo-Kinshasa',
- 'CF' => 'Republika Afrikano-Qendrore',
+ 'CF' => 'Republika e Afrikës Qendrore',
'CG' => 'Kongo-Brazavilë',
'CH' => 'Zvicër',
- 'CI' => 'Bregu i Fildishtë',
- 'CK' => 'Ishujt Kukë',
+ 'CI' => 'Côte d’Ivoire',
+ 'CK' => 'Ishujt Kuk',
'CL' => 'Kili',
'CM' => 'Kamerun',
'CN' => 'Kinë',
'CO' => 'Kolumbi',
'CP' => 'Ishulli Klipërton',
- 'CR' => 'Kosta Rikë',
+ 'CR' => 'Kosta-Rikë',
'CU' => 'Kubë',
'CV' => 'Kepi i Gjelbër',
- 'CW' => 'Kuraçao',
+ 'CW' => 'Kurasao',
'CX' => 'Ishulli i Krishtlindjes',
'CY' => 'Qipro',
- 'CZ' => 'Republika Çeke',
+ 'CZ' => 'Çeki',
'DE' => 'Gjermani',
- 'DG' => 'Diego Garsia',
- 'DJ' => 'Xhibut',
+ 'DG' => 'Diego-Garsia',
+ 'DJ' => 'Xhibuti',
'DK' => 'Danimarkë',
'DM' => 'Dominikë',
'DO' => 'Republika Dominikane',
@@ -494,34 +804,35 @@ $countryNames = array(
'ER' => 'Eritre',
'ES' => 'Spanjë',
'ET' => 'Etiopi',
- 'EU' => 'Bashkimi Europian',
+ 'EU' => 'Bashkimi Evropian',
+ 'EZ' => 'Zona euro',
'FI' => 'Finlandë',
'FJ' => 'Fixhi',
- 'FK' => 'Ishujt Folklandë',
+ 'FK' => 'Ishujt Falkland',
'FM' => 'Mikronezi',
'FO' => 'Ishujt Faroe',
'FR' => 'Francë',
'GA' => 'Gabon',
- 'GB' => 'Mbretëria e Bashkuar',
- 'GD' => 'Grenadë',
+ 'GB' => 'MB',
+ 'GD' => 'Granadë',
'GE' => 'Gjeorgji',
'GF' => 'Guajana Franceze',
- 'GG' => 'Guernsej',
+ 'GG' => 'Gernsej',
'GH' => 'Ganë',
'GI' => 'Gjibraltar',
- 'GL' => 'Grenlandë',
+ 'GL' => 'Grënlandë',
'GM' => 'Gambi',
'GN' => 'Guine',
- 'GP' => 'Guadalupe',
+ 'GP' => 'Guadelupë',
'GQ' => 'Guineja Ekuatoriale',
'GR' => 'Greqi',
- 'GS' => 'Xhorxha Jugore dhe Ishujt Senduiç të Jugut',
+ 'GS' => 'Xhorxha Jugore dhe Ishujt Senduiçë të Jugut',
'GT' => 'Guatemalë',
'GU' => 'Guam',
'GW' => 'Guine-Bisau',
'GY' => 'Guajanë',
- 'HK' => 'Hong Kong',
- 'HM' => 'Ishulli Hërd dhe Ishujt Mekdonald',
+ 'HK' => 'Hong-Kong',
+ 'HM' => 'Ishujt Hërd e Mekdonald',
'HN' => 'Honduras',
'HR' => 'Kroaci',
'HT' => 'Haiti',
@@ -542,21 +853,21 @@ $countryNames = array(
'JO' => 'Jordani',
'JP' => 'Japoni',
'KE' => 'Kenia',
- 'KG' => 'Kirgistan',
+ 'KG' => 'Kirgizi',
'KH' => 'Kamboxhia',
- 'KI' => 'Qiribati',
+ 'KI' => 'Kiribati',
'KM' => 'Komore',
- 'KN' => 'Shën Kits e Nevis',
- 'KP' => 'Koreja e Veriut',
- 'KR' => 'Koreja e Jugut',
+ 'KN' => 'Shën-Kits dhe Nevis',
+ 'KP' => 'Kore e Veriut',
+ 'KR' => 'Kore e Jugut',
'KW' => 'Kuvajt',
- 'KY' => 'Ishujt Kajmanë',
+ 'KY' => 'Ishujt Kajman',
'KZ' => 'Kazakistan',
'LA' => 'Laos',
'LB' => 'Liban',
- 'LC' => 'Shën Luçia',
- 'LI' => 'Lihtënshtajn',
- 'LK' => 'Sri Lankë',
+ 'LC' => 'Shën-Luçia',
+ 'LI' => 'Lihtenshtajn',
+ 'LK' => 'Sri-Lankë',
'LR' => 'Liberi',
'LS' => 'Lesoto',
'LT' => 'Lituani',
@@ -566,17 +877,17 @@ $countryNames = array(
'MA' => 'Marok',
'MC' => 'Monako',
'MD' => 'Moldavi',
- 'ME' => 'Mali i Zi',
- 'MF' => 'Shën Martin',
+ 'ME' => 'Mal i Zi',
+ 'MF' => 'Sen-Marten',
'MG' => 'Madagaskar',
- 'MH' => 'Ishujt Marshallë',
+ 'MH' => 'Ishujt Marshall',
'MK' => 'Maqedoni',
'ML' => 'Mali',
- 'MM' => 'Mianmar (Burma)',
+ 'MM' => 'Mianmar (Burmë)',
'MN' => 'Mongoli',
'MO' => 'Makao',
'MP' => 'Ishujt e Marianës Veriore',
- 'MQ' => 'Martinik',
+ 'MQ' => 'Martinikë',
'MR' => 'Mauritani',
'MS' => 'Montserat',
'MT' => 'Maltë',
@@ -587,9 +898,9 @@ $countryNames = array(
'MY' => 'Malajzi',
'MZ' => 'Mozambik',
'NA' => 'Namibi',
- 'NC' => 'Kaledonia e Re',
+ 'NC' => 'Kaledoni e Re',
'NE' => 'Niger',
- 'NF' => 'Ishujt Norfolkë',
+ 'NF' => 'Ishulli Norfolk',
'NG' => 'Nigeri',
'NI' => 'Nikaragua',
'NL' => 'Holandë',
@@ -597,18 +908,18 @@ $countryNames = array(
'NP' => 'Nepal',
'NR' => 'Nauru',
'NU' => 'Niue',
- 'NZ' => 'Zelanda e Re',
+ 'NZ' => 'Zelandë e Re',
'OM' => 'Oman',
'PA' => 'Panama',
'PE' => 'Peru',
'PF' => 'Polinezia Franceze',
- 'PG' => 'Papua Guineja e Re',
+ 'PG' => 'Guineja e Re-Papua',
'PH' => 'Filipine',
'PK' => 'Pakistan',
'PL' => 'Poloni',
- 'PM' => 'Shën Peir dhe Mikuelon',
- 'PN' => 'Ishujt Pitkernë',
- 'PR' => 'Porto Riko',
+ 'PM' => 'Shën-Pier dhe Mikelon',
+ 'PN' => 'Ishujt Pitkern',
+ 'PR' => 'Porto-Riko',
'PS' => 'Palestinë',
'PT' => 'Portugali',
'PW' => 'Palau',
@@ -620,36 +931,36 @@ $countryNames = array(
'RS' => 'Serbi',
'RU' => 'Rusi',
'RW' => 'Ruandë',
- 'SA' => 'Arabia Saudite',
- 'SB' => 'Ishujt Solomonë',
- 'SC' => 'Sishel',
+ 'SA' => 'Arabi Saudite',
+ 'SB' => 'Ishujt Solomon',
+ 'SC' => 'Sejshelle',
'SD' => 'Sudan',
'SE' => 'Suedi',
'SG' => 'Singapor',
- 'SH' => 'Shën Helena',
+ 'SH' => 'Shën-Elenë',
'SI' => 'Slloveni',
- 'SJ' => 'Svalbard e Zhan Majen',
+ 'SJ' => 'Svalbard e Jan-Majen',
'SK' => 'Sllovaki',
- 'SL' => 'Siera Leone',
- 'SM' => 'San Marino',
- 'SN' => 'Senegali',
+ 'SL' => 'Sierra-Leone',
+ 'SM' => 'San-Marino',
+ 'SN' => 'Senegal',
'SO' => 'Somali',
'SR' => 'Surinami',
'SS' => 'Sudani i Jugut',
- 'ST' => 'Sao Tome e Prinsipe',
- 'SV' => 'El Salvador',
- 'SX' => 'Shën Martin (Sint Maarten-pjesa e Mbretërisë së Holandës)',
+ 'ST' => 'Sao-Tome e Principe',
+ 'SV' => 'Salvador',
+ 'SX' => 'Sint-Marten',
'SY' => 'Siri',
- 'SZ' => 'Svazilandë',
- 'TA' => 'Tristan da Kuna',
- 'TC' => 'Ishujt Turke dhe Kaike',
+ 'SZ' => 'Suazilend',
+ 'TA' => 'Tristan-da-Kuna',
+ 'TC' => 'Ishujt Turks dhe Kaikos',
'TD' => 'Çad',
- 'TF' => 'Territoret Australiane Franceze',
+ 'TF' => 'Territoret Jugore Franceze',
'TG' => 'Togo',
'TH' => 'Tajlandë',
'TJ' => 'Taxhikistan',
'TK' => 'Tokelau',
- 'TL' => 'Timori Lindor',
+ 'TL' => 'Timor-Leste',
'TM' => 'Turkmenistan',
'TN' => 'Tunizi',
'TO' => 'Tonga',
@@ -660,18 +971,19 @@ $countryNames = array(
'TZ' => 'Tanzani',
'UA' => 'Ukrainë',
'UG' => 'Ugandë',
- 'UM' => 'Ishujt periferikë të SHBA-së',
+ 'UM' => 'Ishujt Periferikë të SHBA-së',
+ 'UN' => 'OKB',
'US' => 'SHBA',
'UY' => 'Uruguai',
'UZ' => 'Uzbekistan',
'VA' => 'Vatikan',
- 'VC' => 'Shën Vinsent dhe Grenadinet',
+ 'VC' => 'Shën-Vincent dhe Grenadine',
'VE' => 'Venezuelë',
'VG' => 'Ishujt e Virgjër Britanikë',
- 'VI' => 'Ishujt e Virgjër Amerikanë',
+ 'VI' => 'Ishujt e Virgjër të SHBA-së',
'VN' => 'Vietnam',
'VU' => 'Vanuatu',
- 'WF' => 'Uollis e Futina',
+ 'WF' => 'Uollis e Futuna',
'WS' => 'Samoa',
'XK' => 'Kosovë',
'YE' => 'Jemen',
@@ -679,123 +991,209 @@ $countryNames = array(
'ZA' => 'Afrika e Jugut',
'ZM' => 'Zambi',
'ZW' => 'Zimbabve',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-one' => '{0} shekull',
+ 'century-other' => '{0} shekuj',
'day-future-one' => 'pas {0} dite',
'day-future-other' => 'pas {0} ditësh',
'day-narrow-future-one' => 'pas {0} dite',
'day-narrow-future-other' => 'pas {0} ditësh',
- 'day-narrow-past-one' => 'para {0} dite',
- 'day-narrow-past-other' => 'para {0} ditësh',
+ 'day-narrow-past-one' => '{0} ditë më parë',
+ 'day-narrow-past-other' => '{0} ditë më parë',
'day-one' => '{0} ditë',
'day-other' => '{0} ditë',
- 'day-past-one' => 'para {0} dite',
- 'day-past-other' => 'para {0} ditësh',
+ 'day-past-one' => '{0} ditë më parë',
+ 'day-past-other' => '{0} ditë më parë',
'day-short-future-one' => 'pas {0} dite',
'day-short-future-other' => 'pas {0} ditësh',
- 'day-short-past-one' => 'para {0} dite',
- 'day-short-past-other' => 'para {0} ditësh',
+ 'day-short-past-one' => '{0} ditë më parë',
+ 'day-short-past-other' => '{0} ditë më parë',
+ 'fri-future-one' => 'pas {0} të premteje',
+ 'fri-future-other' => 'pas {0} të premtesh',
+ 'fri-narrow-future-one' => 'pas {0} të premteje',
+ 'fri-narrow-future-other' => 'pas {0} të premtesh',
+ 'fri-narrow-past-one' => '{0} të premte më parë',
+ 'fri-narrow-past-other' => '{0} të premte më parë',
+ 'fri-past-one' => '{0} të premte më parë',
+ 'fri-past-other' => '{0} të premte më parë',
+ 'fri-short-future-one' => 'pas {0} të premteje',
+ 'fri-short-future-other' => 'pas {0} të premtesh',
+ 'fri-short-past-one' => '{0} të premte më parë',
+ 'fri-short-past-other' => '{0} të premte më parë',
'hour-future-one' => 'pas {0} ore',
'hour-future-other' => 'pas {0} orësh',
'hour-narrow-future-one' => 'pas {0} ore',
'hour-narrow-future-other' => 'pas {0} orësh',
- 'hour-narrow-past-one' => 'para {0} ore',
- 'hour-narrow-past-other' => 'para {0} orësh',
+ 'hour-narrow-past-one' => '{0} orë më parë',
+ 'hour-narrow-past-other' => '{0} orë më parë',
'hour-one' => '{0} orë',
'hour-other' => '{0} orë',
- 'hour-past-one' => 'para {0} ore',
- 'hour-past-other' => 'para {0} orësh',
+ 'hour-past-one' => '{0} orë më parë',
+ 'hour-past-other' => '{0} orë më parë',
'hour-short-future-one' => 'pas {0} ore',
'hour-short-future-other' => 'pas {0} orësh',
- 'hour-short-past-one' => 'para {0} ore',
- 'hour-short-past-other' => 'para {0} orësh',
+ 'hour-short-past-one' => '{0} orë më parë',
+ 'hour-short-past-other' => '{0} orë më parë',
'microsecond-one' => '{0} mikrosekondë',
'microsecond-other' => '{0} mikrosekonda',
'millisecond-one' => '{0} milisekondë',
'millisecond-other' => '{0} milisekonda',
'minute-future-one' => 'pas {0} minute',
'minute-future-other' => 'pas {0} minutash',
- 'minute-narrow-future-one' => 'pas {0} min.',
- 'minute-narrow-future-other' => 'pas {0} min.',
- 'minute-narrow-past-one' => 'para {0} min.',
- 'minute-narrow-past-other' => 'para {0} min.',
+ 'minute-narrow-future-one' => 'pas {0} min',
+ 'minute-narrow-future-other' => 'pas {0} min',
+ 'minute-narrow-past-one' => '{0} min më parë',
+ 'minute-narrow-past-other' => '{0} min më parë',
'minute-one' => '{0} minutë',
'minute-other' => '{0} minuta',
- 'minute-past-one' => 'para {0} minute',
- 'minute-past-other' => 'para {0} minutash',
- 'minute-short-future-one' => 'pas {0} min.',
- 'minute-short-future-other' => 'pas {0} min.',
- 'minute-short-past-one' => 'para {0} min.',
- 'minute-short-past-other' => 'para {0} min.',
+ 'minute-past-one' => '{0} minutë më parë',
+ 'minute-past-other' => '{0} minuta më parë',
+ 'minute-short-future-one' => 'pas {0} min',
+ 'minute-short-future-other' => 'pas {0} min',
+ 'minute-short-past-one' => '{0} min më parë',
+ 'minute-short-past-other' => '{0} min më parë',
+ 'mon-future-one' => 'pas {0} të hëne',
+ 'mon-future-other' => 'pas {0} të hënash',
+ 'mon-narrow-future-one' => 'pas {0} të hëne',
+ 'mon-narrow-future-other' => 'pas {0} të hënash',
+ 'mon-narrow-past-one' => '{0} të hënë më parë',
+ 'mon-narrow-past-other' => '{0} të hëna më parë',
+ 'mon-past-one' => '{0} të hënë më parë',
+ 'mon-past-other' => '{0} të hëna më parë',
+ 'mon-short-future-one' => 'pas {0} të hëne',
+ 'mon-short-future-other' => 'pas {0} të hënash',
+ 'mon-short-past-one' => '{0} të hënë më parë',
+ 'mon-short-past-other' => '{0} të hëna më parë',
'month-future-one' => 'pas {0} muaji',
'month-future-other' => 'pas {0} muajsh',
'month-narrow-future-one' => 'pas {0} muaji',
'month-narrow-future-other' => 'pas {0} muajsh',
- 'month-narrow-past-one' => 'para {0} muaji',
- 'month-narrow-past-other' => 'para {0} muajsh',
+ 'month-narrow-past-one' => '{0} muaj më parë',
+ 'month-narrow-past-other' => '{0} muaj më parë',
'month-one' => '{0} muaj',
'month-other' => '{0} muaj',
- 'month-past-one' => 'para {0} muaji',
- 'month-past-other' => 'para {0} muajsh',
+ 'month-past-one' => '{0} muaj më parë',
+ 'month-past-other' => '{0} muaj më parë',
'month-short-future-one' => 'pas {0} muaji',
'month-short-future-other' => 'pas {0} muajsh',
- 'month-short-past-one' => 'para {0} muaji',
- 'month-short-past-other' => 'para {0} muajsh',
+ 'month-short-past-one' => '{0} muaj më parë',
+ 'month-short-past-other' => '{0} muaj më parë',
'nanosecond-one' => '{0} nanosekondë',
'nanosecond-other' => '{0} nanosekonda',
'quarter-future-one' => 'pas {0} tremujori',
'quarter-future-other' => 'pas {0} tremujorësh',
'quarter-narrow-future-one' => 'pas {0} tremujori',
'quarter-narrow-future-other' => 'pas {0} tremujorësh',
- 'quarter-narrow-past-one' => 'para {0} tremujori',
- 'quarter-narrow-past-other' => 'para {0} tremujorësh',
- 'quarter-past-one' => 'para {0} tremujori',
- 'quarter-past-other' => 'para {0} tremujorësh',
+ 'quarter-narrow-past-one' => '{0} tremujor më parë',
+ 'quarter-narrow-past-other' => '{0} tremujorë më parë',
+ 'quarter-past-one' => '{0} tremujor më parë',
+ 'quarter-past-other' => '{0} tremujorë më parë',
'quarter-short-future-one' => 'pas {0} tremujori',
'quarter-short-future-other' => 'pas {0} tremujorësh',
- 'quarter-short-past-one' => 'para {0} tremujori',
- 'quarter-short-past-other' => 'para {0} tremujorësh',
+ 'quarter-short-past-one' => '{0} tremujor më parë',
+ 'quarter-short-past-other' => '{0} tremujorë më parë',
+ 'sat-future-one' => 'pas {0} të shtune',
+ 'sat-future-other' => 'pas {0} të shtunash',
+ 'sat-narrow-future-one' => 'pas {0} të shtune',
+ 'sat-narrow-future-other' => 'pas {0} të shtunash',
+ 'sat-narrow-past-one' => '{0} të shtunë më parë',
+ 'sat-narrow-past-other' => '{0} të shtuna më parë',
+ 'sat-past-one' => '{0} të shtunë më parë',
+ 'sat-past-other' => '{0} të shtuna më parë',
+ 'sat-short-future-one' => 'pas {0} të shtune',
+ 'sat-short-future-other' => 'pas {0} të shtunash',
+ 'sat-short-past-one' => '{0} të shtunë më parë',
+ 'sat-short-past-other' => '{0} të shtuna më parë',
'second-future-one' => 'pas {0} sekonde',
'second-future-other' => 'pas {0} sekondash',
- 'second-narrow-future-one' => 'pas {0} sek.',
- 'second-narrow-future-other' => 'pas {0} sek.',
- 'second-narrow-past-one' => 'para {0} sek.',
- 'second-narrow-past-other' => 'para {0} sek.',
+ 'second-narrow-future-one' => 'pas {0} sek',
+ 'second-narrow-future-other' => 'pas {0} sek',
+ 'second-narrow-past-one' => '{0} sek më parë',
+ 'second-narrow-past-other' => '{0} sek më parë',
'second-one' => '{0} sekondë',
'second-other' => '{0} sekonda',
- 'second-past-one' => 'para {0} sekonde',
- 'second-past-other' => 'para {0} sekondash',
- 'second-short-future-one' => 'pas {0} sek.',
- 'second-short-future-other' => 'pas {0} sek.',
- 'second-short-past-one' => 'para {0} sek.',
- 'second-short-past-other' => 'para {0} sek.',
+ 'second-past-one' => '{0} sekondë më parë',
+ 'second-past-other' => '{0} sekonda më parë',
+ 'second-short-future-one' => 'pas {0} sek',
+ 'second-short-future-other' => 'pas {0} sek',
+ 'second-short-past-one' => '{0} sek më parë',
+ 'second-short-past-other' => '{0} sek më parë',
+ 'sun-future-one' => 'pas {0} të diele',
+ 'sun-future-other' => 'pas {0} të dielash',
+ 'sun-narrow-future-one' => 'pas {0} të diele',
+ 'sun-narrow-future-other' => 'pas {0} të dielash',
+ 'sun-narrow-past-one' => '{0} të dielë më parë',
+ 'sun-narrow-past-other' => '{0} të diela më parë',
+ 'sun-past-one' => '{0} të dielë më parë',
+ 'sun-past-other' => '{0} të diela më parë',
+ 'sun-short-future-one' => 'pas {0} të diele',
+ 'sun-short-future-other' => 'pas {0} të dielash',
+ 'sun-short-past-one' => '{0} të dielë më parë',
+ 'sun-short-past-other' => '{0} të diela më parë',
+ 'thu-future-one' => 'pas {0} të enjteje',
+ 'thu-future-other' => 'pas {0} të enjtesh',
+ 'thu-narrow-future-one' => 'pas {0} të enjteje',
+ 'thu-narrow-future-other' => 'pas {0} të enjtesh',
+ 'thu-narrow-past-one' => '{0} të enjte më parë',
+ 'thu-narrow-past-other' => '{0} të enjte më parë',
+ 'thu-past-one' => '{0} të enjte më parë',
+ 'thu-past-other' => '{0} të enjte më parë',
+ 'thu-short-future-one' => 'pas {0} të enjteje',
+ 'thu-short-future-other' => 'pas {0} të enjtesh',
+ 'thu-short-past-one' => '{0} të enjte më parë',
+ 'thu-short-past-other' => '{0} të enjte më parë',
+ 'tue-future-one' => 'pas {0} të marte',
+ 'tue-future-other' => 'pas {0} të martash',
+ 'tue-narrow-future-one' => 'pas {0} të marte',
+ 'tue-narrow-future-other' => 'pas {0} të martash',
+ 'tue-narrow-past-one' => '{0} të martë më parë',
+ 'tue-narrow-past-other' => '{0} të marta më parë',
+ 'tue-past-one' => '{0} të martë më parë',
+ 'tue-past-other' => '{0} të marta më parë',
+ 'tue-short-future-one' => 'pas {0} të marte',
+ 'tue-short-future-other' => 'pas {0} të martash',
+ 'tue-short-past-one' => '{0} të martë më parë',
+ 'tue-short-past-other' => '{0} të marta më parë',
+ 'wed-future-one' => 'pas {0} të mërkure',
+ 'wed-future-other' => 'pas {0} të mërkurash',
+ 'wed-narrow-future-one' => 'pas {0} të mërkure',
+ 'wed-narrow-future-other' => 'pas {0} të mërkurash',
+ 'wed-narrow-past-one' => '{0} të mërkurë më parë',
+ 'wed-narrow-past-other' => '{0} të mërkura më parë',
+ 'wed-past-one' => '{0} të mërkurë më parë',
+ 'wed-past-other' => '{0} të mërkura më parë',
+ 'wed-short-future-one' => 'pas {0} të mërkure',
+ 'wed-short-future-other' => 'pas {0} të mërkurash',
+ 'wed-short-past-one' => '{0} të mërkurë më parë',
+ 'wed-short-past-other' => '{0} të mërkura më parë',
'week-future-one' => 'pas {0} jave',
'week-future-other' => 'pas {0} javësh',
'week-narrow-future-one' => 'pas {0} jave',
'week-narrow-future-other' => 'pas {0} javësh',
- 'week-narrow-past-one' => 'para {0} jave',
- 'week-narrow-past-other' => 'para {0} javësh',
+ 'week-narrow-past-one' => '{0} javë më parë',
+ 'week-narrow-past-other' => '{0} javë më parë',
'week-one' => '{0} javë',
'week-other' => '{0} javë',
- 'week-past-one' => 'para {0} jave',
- 'week-past-other' => 'para {0} javësh',
+ 'week-past-one' => '{0} javë më parë',
+ 'week-past-other' => '{0} javë më parë',
'week-short-future-one' => 'pas {0} jave',
'week-short-future-other' => 'pas {0} javësh',
- 'week-short-past-one' => 'para {0} jave',
- 'week-short-past-other' => 'para {0} javësh',
+ 'week-short-past-one' => '{0} javë më parë',
+ 'week-short-past-other' => '{0} javë më parë',
'year-future-one' => 'pas {0} viti',
'year-future-other' => 'pas {0} vjetësh',
'year-narrow-future-one' => 'pas {0} viti',
'year-narrow-future-other' => 'pas {0} vjetësh',
- 'year-narrow-past-one' => 'para {0} viti',
- 'year-narrow-past-other' => 'para {0} vjetësh',
+ 'year-narrow-past-one' => '{0} vit më parë',
+ 'year-narrow-past-other' => '{0} vjet më parë',
'year-one' => '{0} vit',
'year-other' => '{0} vjet',
- 'year-past-one' => 'para {0} viti',
- 'year-past-other' => 'para {0} vjetësh',
+ 'year-past-one' => '{0} vit më parë',
+ 'year-past-other' => '{0} vjet më parë',
'year-short-future-one' => 'pas {0} viti',
'year-short-future-other' => 'pas {0} vjetësh',
- 'year-short-past-one' => 'para {0} viti',
- 'year-short-past-other' => 'para {0} vjetësh',
-);
+ 'year-short-past-one' => '{0} vit më parë',
+ 'year-short-past-other' => '{0} vjet më parë',
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesSr_ec.php b/MLEB/cldr/CldrNames/CldrNamesSr_ec.php
index 02cc9fd2..fa9667af 100644
--- a/MLEB/cldr/CldrNames/CldrNamesSr_ec.php
+++ b/MLEB/cldr/CldrNames/CldrNamesSr_ec.php
@@ -1,487 +1,513 @@
<?php
-$languageNames = array(
- 'aa' => 'Афарски',
+$languageNames = [
+ 'aa' => 'афарски',
'ab' => 'абхаски',
- 'ace' => 'Ачинески',
- 'ach' => 'Аколи',
- 'ada' => 'Адангмејски',
- 'ady' => 'Адигејски',
- 'ae' => 'Авестански',
+ 'ace' => 'ацешки',
+ 'ach' => 'аколи',
+ 'ada' => 'адангме',
+ 'ady' => 'адигејски',
+ 'ae' => 'авестански',
'af' => 'африканс',
- 'afh' => 'Африхили',
+ 'afh' => 'африхили',
'agq' => 'агем',
- 'ain' => 'Аину',
- 'ak' => 'акан',
- 'akk' => 'Акадијски',
- 'ale' => 'Аљут',
- 'alt' => 'Јужни алтаи',
+ 'ain' => 'аину',
+ 'ak' => 'акански',
+ 'akk' => 'акадијски',
+ 'ale' => 'алеутски',
+ 'alt' => 'јужноалтајски',
'am' => 'амхарски',
- 'an' => 'Арагонежански',
- 'ang' => 'Староенглески',
- 'anp' => 'Ангика',
+ 'an' => 'арагонски',
+ 'ang' => 'староенглески',
+ 'anp' => 'ангика',
'ar' => 'арапски',
- 'ar-001' => 'модеран стандардни арапски',
- 'arc' => 'Армајски',
+ 'ar-001' => 'савремени стандардни арапски',
+ 'arc' => 'арамејски',
'arn' => 'мапуче',
- 'arp' => 'Арапахо',
- 'arw' => 'Аравак',
+ 'arp' => 'арапахо',
+ 'arw' => 'аравачки',
'as' => 'асамски',
'asa' => 'асу',
- 'ast' => 'Астуријски',
- 'av' => 'Аварски',
- 'awa' => 'Авадхи',
- 'ay' => 'Ајмара',
+ 'ast' => 'астуријски',
+ 'av' => 'аварски',
+ 'awa' => 'авади',
+ 'ay' => 'ајмара',
'az' => 'азербејџански',
'ba' => 'башкирски',
- 'bal' => 'Балучи',
- 'ban' => 'Балинезијски',
- 'bas' => 'Баса',
+ 'bal' => 'белучки',
+ 'ban' => 'балијски',
+ 'bas' => 'баса',
'be' => 'белоруски',
- 'bej' => 'Беја',
+ 'bej' => 'беџа',
'bem' => 'бемба',
'bez' => 'бена',
'bg' => 'бугарски',
- 'bho' => 'Бојпури',
- 'bi' => 'Бислама',
- 'bik' => 'Бикол',
- 'bin' => 'Бини',
- 'bla' => 'Сисика',
+ 'bgn' => 'западни белучки',
+ 'bho' => 'боџпури',
+ 'bi' => 'бислама',
+ 'bik' => 'бикол',
+ 'bin' => 'бини',
+ 'bla' => 'сисика',
'bm' => 'бамбара',
'bn' => 'бенгалски',
'bo' => 'тибетански',
'br' => 'бретонски',
- 'bra' => 'Брај',
+ 'bra' => 'брај',
'brx' => 'бодо',
'bs' => 'босански',
- 'bua' => 'Буриат',
- 'bug' => 'Бугинежански',
- 'byn' => 'Блин',
+ 'bua' => 'бурјатски',
+ 'bug' => 'бугијски',
+ 'byn' => 'блински',
'ca' => 'каталонски',
- 'cad' => 'Кадо',
- 'car' => 'Карипски',
- 'cch' => 'Атсамски',
- 'ce' => 'Чеченски',
- 'ceb' => 'Цебуано',
+ 'cad' => 'кадо',
+ 'car' => 'карипски',
+ 'cch' => 'атсам',
+ 'ce' => 'чеченски',
+ 'ceb' => 'себуански',
'cgg' => 'чига',
- 'ch' => 'Чаморо',
- 'chb' => 'Чибча',
- 'chg' => 'Чагатаи',
- 'chk' => 'Чукески',
- 'chm' => 'Мари',
- 'chn' => 'Чинукски',
- 'cho' => 'Чоктавски',
- 'chp' => 'Чипвијански',
+ 'ch' => 'чаморо',
+ 'chb' => 'чипча',
+ 'chg' => 'чагатај',
+ 'chk' => 'чучки',
+ 'chm' => 'мари',
+ 'chn' => 'чинучки',
+ 'cho' => 'чоктавски',
+ 'chp' => 'чипевјански',
'chr' => 'чероки',
- 'chy' => 'Чејенски',
- 'ckb' => 'сорани курдски',
+ 'chy' => 'чејенски',
+ 'ckb' => 'централни курдски',
'co' => 'корзикански',
- 'cop' => 'Коптски',
- 'cr' => 'Кри',
- 'crh' => 'Кримеански турски',
+ 'cop' => 'коптски',
+ 'cr' => 'кри',
+ 'crh' => 'кримскотатарски',
+ 'crs' => 'сејшелски креолски француски',
'cs' => 'чешки',
- 'csb' => 'Кашубијански',
- 'cu' => 'Старословенски',
- 'cv' => 'Чувашки',
+ 'csb' => 'кашупски',
+ 'cu' => 'црквенословенски',
+ 'cv' => 'чувашки',
'cy' => 'велшки',
'da' => 'дански',
- 'dak' => 'Дакота',
- 'dar' => 'Даргва',
+ 'dak' => 'дакота',
+ 'dar' => 'даргински',
'dav' => 'таита',
'de' => 'немачки',
'de-ch' => 'швајцарски високи немачки',
- 'del' => 'Делавер',
- 'den' => 'Славски',
- 'dgr' => 'Догриб',
- 'din' => 'Динка',
+ 'del' => 'делаверски',
+ 'den' => 'слејви',
+ 'dgr' => 'догрипски',
+ 'din' => 'динка',
'dje' => 'зарма',
- 'doi' => 'Догри',
+ 'doi' => 'догри',
'dsb' => 'доњи лужичкосрпски',
'dua' => 'дуала',
- 'dum' => 'Средњи холандски',
- 'dv' => 'Дивехијски',
+ 'dum' => 'средњехоландски',
+ 'dv' => 'малдивски',
'dyo' => 'џола фоњи',
- 'dyu' => 'Ђула',
+ 'dyu' => 'ђула',
'dz' => 'џонга',
+ 'dzg' => 'дазага',
'ebu' => 'ембу',
'ee' => 'еве',
- 'efi' => 'Ефикски',
- 'egy' => 'Староегипатски',
- 'eka' => 'Екајук',
+ 'efi' => 'ефички',
+ 'egy' => 'староегипатски',
+ 'eka' => 'екаџук',
'el' => 'грчки',
- 'elx' => 'Еламитски',
+ 'elx' => 'еламитски',
'en' => 'енглески',
- 'enm' => 'Средњи енглески',
+ 'en-gb' => 'енглески (Велика Британија)',
+ 'en-us' => 'енглески (Сједињене Америчке Државе)',
+ 'enm' => 'средњеенглески',
'eo' => 'есперанто',
'es' => 'шпански',
+ 'es-es' => 'шпански (Европа)',
'et' => 'естонски',
'eu' => 'баскијски',
- 'ewo' => 'Евондо',
+ 'ewo' => 'евондо',
'fa' => 'персијски',
- 'fan' => 'Фанг',
- 'fat' => 'Фанти',
- 'ff' => 'Фулах',
+ 'fan' => 'фанг',
+ 'fat' => 'фанти',
+ 'ff' => 'фула',
'fi' => 'фински',
'fil' => 'филипински',
'fj' => 'фиџијски',
'fo' => 'фарски',
- 'fon' => 'Фон',
+ 'fon' => 'фон',
'fr' => 'француски',
- 'frm' => 'Средњи француски',
- 'fro' => 'Старофранцуски',
- 'frr' => 'Северно-фризијски',
- 'frs' => 'Источни фризијски',
- 'fur' => 'Фриулијски',
+ 'frc' => 'кајунски француски',
+ 'frm' => 'средњефранцуски',
+ 'fro' => 'старофранцуски',
+ 'frr' => 'севернофризијски',
+ 'frs' => 'источнофризијски',
+ 'fur' => 'фриулски',
'fy' => 'западни фризијски',
'ga' => 'ирски',
- 'gaa' => 'Га',
+ 'gaa' => 'га',
'gag' => 'гагауз',
- 'gay' => 'Гајо',
- 'gba' => 'Гбаја',
- 'gd' => 'Шкотски Галски',
- 'gez' => 'Џиз',
- 'gil' => 'Гилбертшки',
+ 'gay' => 'гајо',
+ 'gba' => 'гбаја',
+ 'gd' => 'шкотски гелски',
+ 'gez' => 'геез',
+ 'gil' => 'гилбертски',
'gl' => 'галицијски',
- 'gmh' => 'Средњи високи немачки',
+ 'gmh' => 'средњи високонемачки',
'gn' => 'гварани',
- 'goh' => 'Старонемачки',
- 'gon' => 'Гонди',
- 'gor' => 'Горонтало',
- 'got' => 'Готски',
- 'grb' => 'Гребо',
- 'grc' => 'Старогрчки',
- 'gsw' => 'Швајцарски немачки',
+ 'goh' => 'старонемачки',
+ 'gon' => 'гонди',
+ 'gor' => 'горонтало',
+ 'got' => 'готски',
+ 'grb' => 'гребо',
+ 'grc' => 'старогрчки',
+ 'gsw' => 'немачки (Швајцарска)',
'gu' => 'гуџарати',
'guz' => 'гуси',
- 'gv' => 'Манкс',
- 'gwi' => 'Гвич’ин',
+ 'gv' => 'манкс',
+ 'gwi' => 'гвичински',
'ha' => 'хауса',
- 'hai' => 'Хаида',
+ 'hai' => 'хаида',
'haw' => 'хавајски',
'he' => 'хебрејски',
'hi' => 'хинди',
- 'hil' => 'Хилигајнон',
- 'hit' => 'Хитите',
- 'hmn' => 'Хмонг',
- 'ho' => 'Хири Моту',
+ 'hil' => 'хилигајнонски',
+ 'hit' => 'хетитски',
+ 'hmn' => 'хмоншки',
+ 'ho' => 'хири моту',
'hr' => 'хрватски',
'hsb' => 'горњи лужичкосрпски',
- 'ht' => 'Хаитски',
+ 'ht' => 'хаићански',
'hu' => 'мађарски',
- 'hup' => 'Хупа',
+ 'hup' => 'хупа',
'hy' => 'јерменски',
- 'hz' => 'Хереро',
- 'ia' => 'Интерлингва',
- 'iba' => 'Ибан',
+ 'hz' => 'хереро',
+ 'ia' => 'интерлингва',
+ 'iba' => 'ибански',
+ 'ibb' => 'ибибио',
'id' => 'индонежански',
- 'ie' => 'Међујезички',
+ 'ie' => 'интерлингве',
'ig' => 'игбо',
- 'ii' => 'сечуан ји',
- 'ik' => 'Унупиак',
- 'ilo' => 'Илоко',
- 'inh' => 'Ингвишки',
- 'io' => 'Идо',
+ 'ii' => 'сечуански ји',
+ 'ik' => 'инупик',
+ 'ilo' => 'илоко',
+ 'inh' => 'ингушки',
+ 'io' => 'идо',
'is' => 'исландски',
'it' => 'италијански',
- 'iu' => 'инуктитут',
+ 'iu' => 'инуктитутски',
'ja' => 'јапански',
- 'jbo' => 'Лојбан',
+ 'jbo' => 'ложбан',
'jgo' => 'нгомба',
'jmc' => 'мачаме',
- 'jpr' => 'Јудео-персијски',
- 'jrb' => 'Јудео-арапски',
+ 'jpr' => 'јудео-персијски',
+ 'jrb' => 'јудео-арапски',
'jv' => 'јавански',
'ka' => 'грузијски',
- 'kaa' => 'Кара-калпашки',
+ 'kaa' => 'кара-калпашки',
'kab' => 'кабиле',
- 'kac' => 'Качин',
- 'kaj' => 'Ђу',
+ 'kac' => 'качински',
+ 'kaj' => 'џу',
'kam' => 'камба',
- 'kaw' => 'Кави',
- 'kbd' => 'Кабардијски',
- 'kcg' => 'Тјап',
+ 'kaw' => 'кави',
+ 'kbd' => 'кабардијски',
+ 'kcg' => 'тјап',
'kde' => 'маконде',
- 'kea' => 'зеленортски креолски',
- 'kfo' => 'Коро',
- 'kg' => 'Конго',
- 'kha' => 'Каси',
- 'kho' => 'Котанешки',
+ 'kea' => 'зеленортски',
+ 'kfo' => 'коро',
+ 'kg' => 'конго',
+ 'kha' => 'каси',
+ 'kho' => 'котанешки',
'khq' => 'којра чиини',
'ki' => 'кикују',
- 'kj' => 'Куањама',
+ 'kj' => 'квањама',
'kk' => 'казашки',
- 'kl' => 'калалисут',
- 'kln' => 'каленџин',
+ 'kkj' => 'како',
+ 'kl' => 'гренландски',
+ 'kln' => 'каленџински',
'km' => 'кмерски',
- 'kmb' => 'Кимбунду',
+ 'kmb' => 'кимбунду',
'kn' => 'канада',
'ko' => 'корејски',
'koi' => 'коми-пермски',
'kok' => 'конкани',
- 'kos' => 'Косреански',
- 'kpe' => 'Кпеле',
- 'kr' => 'Канури',
- 'krc' => 'Карачај-балкар',
- 'kri' => 'Крио',
- 'krl' => 'Карелијски',
- 'kru' => 'Курукх',
+ 'kos' => 'косренски',
+ 'kpe' => 'кпеле',
+ 'kr' => 'канури',
+ 'krc' => 'карачајско-балкарски',
+ 'kri' => 'крио',
+ 'krl' => 'карелски',
+ 'kru' => 'курук',
'ks' => 'кашмирски',
'ksb' => 'шамбала',
'ksf' => 'бафија',
+ 'ksh' => 'келнски',
'ku' => 'курдски',
- 'kum' => 'Кумик',
- 'kut' => 'Кутенаи',
- 'kv' => 'Коми',
+ 'kum' => 'кумички',
+ 'kut' => 'кутенај',
+ 'kv' => 'коми',
'kw' => 'корнволски',
'ky' => 'киргиски',
'la' => 'латински',
- 'lad' => 'Ладино',
+ 'lad' => 'ладино',
'lag' => 'ланги',
- 'lah' => 'Ланда',
- 'lam' => 'Ламба',
+ 'lah' => 'ланда',
+ 'lam' => 'ламба',
'lb' => 'луксембуршки',
- 'lez' => 'Лезгиан',
+ 'lez' => 'лезгински',
'lg' => 'ганда',
- 'li' => 'Лимбургиш',
+ 'li' => 'лимбуршки',
'lkt' => 'лакота',
'ln' => 'лингала',
- 'lo' => 'лаошки',
- 'lol' => 'Монго',
- 'loz' => 'Лози',
+ 'lo' => 'лаоски',
+ 'lol' => 'монго',
+ 'lou' => 'луизијански креолски',
+ 'loz' => 'лози',
+ 'lrc' => 'северни лури',
'lt' => 'литвански',
'lu' => 'луба-катанга',
- 'lua' => 'Луба-лулуа',
- 'lui' => 'Луисено',
- 'lun' => 'Лунда',
+ 'lua' => 'луба-лулуа',
+ 'lui' => 'луисењо',
+ 'lun' => 'лунда',
'luo' => 'луо',
- 'lus' => 'Лушаи',
+ 'lus' => 'мизо',
'luy' => 'лујиа',
'lv' => 'летонски',
- 'mad' => 'Мадурешки',
- 'mag' => 'Магахи',
- 'mai' => 'Маитили',
- 'mak' => 'Макасар',
- 'man' => 'Мандинго',
- 'mas' => 'масаи',
- 'mdf' => 'Мокша',
- 'mdr' => 'Мандар',
- 'men' => 'Менде',
+ 'mad' => 'мадурски',
+ 'mag' => 'магахи',
+ 'mai' => 'маитили',
+ 'mak' => 'макасарски',
+ 'man' => 'мандинго',
+ 'mas' => 'масајски',
+ 'mdf' => 'мокша',
+ 'mdr' => 'мандар',
+ 'men' => 'менде',
'mer' => 'меру',
'mfe' => 'морисјен',
'mg' => 'малгашки',
- 'mga' => 'Средњи ирски',
- 'mgh' => 'макува-меето',
+ 'mga' => 'средњеирски',
+ 'mgh' => 'макува-мито',
'mgo' => 'мета',
- 'mh' => 'Маршалски',
+ 'mh' => 'маршалски',
'mi' => 'маорски',
- 'mic' => 'Микмак',
- 'min' => 'Минангкабау',
+ 'mic' => 'микмак',
+ 'min' => 'минангкабау',
'mk' => 'македонски',
'ml' => 'малајалам',
'mn' => 'монголски',
- 'mnc' => 'Манчу',
- 'mni' => 'Манипури',
- 'moh' => 'мохок',
- 'mos' => 'Моси',
+ 'mnc' => 'манџурски',
+ 'mni' => 'манипурски',
+ 'moh' => 'мохочки',
+ 'mos' => 'моси',
'mr' => 'марати',
'ms' => 'малајски',
'mt' => 'малтешки',
'mua' => 'мунданг',
'mul' => 'Више језика',
- 'mus' => 'Кришки',
- 'mwl' => 'Мирандешки',
- 'mwr' => 'Марвари',
+ 'mus' => 'кришки',
+ 'mwl' => 'мирандски',
+ 'mwr' => 'марвари',
'my' => 'бурмански',
- 'myv' => 'Ерзија',
- 'na' => 'Науру',
- 'nap' => 'Неаполитански',
+ 'myv' => 'ерзја',
+ 'mzn' => 'мазандерански',
+ 'na' => 'науруски',
+ 'nap' => 'напуљски',
'naq' => 'нама',
- 'nb' => 'норвешки бокмал',
+ 'nb' => 'норвешки букмол',
'nd' => 'северни ндебеле',
- 'nds' => 'Ниски немачки',
+ 'nds' => 'нисконемачки',
+ 'nds-nl' => 'нискосаксонски',
'ne' => 'непалски',
- 'new' => 'Невари',
- 'ng' => 'Ндонга',
- 'nia' => 'Ниас',
- 'niu' => 'Ниуеан',
+ 'new' => 'невари',
+ 'ng' => 'ндонга',
+ 'nia' => 'ниас',
+ 'niu' => 'ниуејски',
'nl' => 'холандски',
'nl-be' => 'фламански',
'nmg' => 'квасио',
'nn' => 'норвешки нинорск',
- 'no' => 'Норвешки',
- 'nog' => 'Ногаи',
- 'non' => 'Стари норски',
- 'nqo' => 'Н’ко',
- 'nr' => 'Јужни ндебеле',
- 'nso' => 'Северни сото',
+ 'nnh' => 'нгиембун',
+ 'no' => 'норвешки',
+ 'nog' => 'ногајски',
+ 'non' => 'старонордијски',
+ 'nqo' => 'нко',
+ 'nr' => 'јужни ндебеле',
+ 'nso' => 'северни сото',
'nus' => 'нуер',
- 'nv' => 'Навахо',
- 'nwc' => 'Класични невари',
- 'ny' => 'Њања',
- 'nym' => 'Њамвези',
- 'nyn' => 'нјанколе',
- 'nyo' => 'Њоро',
- 'nzi' => 'Нзима',
- 'oc' => 'Провансалски',
- 'oj' => 'Ојибва',
+ 'nv' => 'навахо',
+ 'nwc' => 'класични неварски',
+ 'ny' => 'њанџа',
+ 'nym' => 'њамвези',
+ 'nyn' => 'њанколе',
+ 'nyo' => 'њоро',
+ 'nzi' => 'нзима',
+ 'oc' => 'окситански',
+ 'oj' => 'оџибве',
'om' => 'оромо',
- 'or' => 'орија',
- 'os' => 'Осетски',
- 'osa' => 'Осаге',
- 'ota' => 'Отомански турски',
- 'pa' => 'панџаби',
- 'pag' => 'Пангасински',
- 'pal' => 'Пахлави',
- 'pam' => 'Пампанга',
- 'pap' => 'Папиаменто',
- 'pau' => 'Палауански',
- 'peo' => 'Староперсијски',
- 'phn' => 'Феничански',
- 'pi' => 'Пали',
+ 'or' => 'одија',
+ 'os' => 'осетински',
+ 'osa' => 'осаге',
+ 'ota' => 'османски турски',
+ 'pa' => 'пенџапски',
+ 'pag' => 'пангасинански',
+ 'pal' => 'пахлави',
+ 'pam' => 'пампанга',
+ 'pap' => 'папијаменто',
+ 'pau' => 'палауски',
+ 'pcm' => 'нигеријски пиџин',
+ 'peo' => 'староперсијски',
+ 'phn' => 'феничански',
+ 'pi' => 'пали',
'pl' => 'пољски',
- 'pon' => 'Понпејски',
- 'pro' => 'Старопровансалски',
+ 'pon' => 'понпејски',
+ 'prg' => 'пруски',
+ 'pro' => 'староокситански',
'ps' => 'паштунски',
'pt' => 'португалски',
- 'pt-br' => 'Бразилски португалски',
- 'pt-pt' => 'Иберијски португалски',
+ 'pt-pt' => 'португалски (Португал)',
'qu' => 'кечуа',
- 'quc' => 'к’иче',
- 'raj' => 'Рађастани',
- 'rap' => 'Рапануи',
- 'rar' => 'Раротонган',
- 'rm' => 'рето-романски',
- 'rn' => 'рунди',
+ 'quc' => 'киче',
+ 'raj' => 'раџастански',
+ 'rap' => 'рапануи',
+ 'rar' => 'раротонгански',
+ 'rm' => 'романш',
+ 'rn' => 'кирунди',
'ro' => 'румунски',
'ro-md' => 'молдавски',
'rof' => 'ромбо',
- 'rom' => 'Романи',
+ 'rom' => 'ромски',
'ru' => 'руски',
- 'rup' => 'Ароманијски',
- 'rw' => 'кинјаруанда',
+ 'rup' => 'цинцарски',
+ 'rw' => 'кињаруанда',
'rwk' => 'руа',
'sa' => 'санскрит',
- 'sad' => 'Сандаве',
- 'sah' => 'Јакут',
- 'sam' => 'Самаритански арамејски',
+ 'sad' => 'сандаве',
+ 'sah' => 'саха',
+ 'sam' => 'самаријански арамејски',
'saq' => 'самбуру',
- 'sas' => 'Сасак',
- 'sat' => 'Сантали',
+ 'sas' => 'сасак',
+ 'sat' => 'сантали',
+ 'sba' => 'нгамбај',
'sbp' => 'сангу',
- 'sc' => 'Сардињаски',
- 'scn' => 'Сицилијански',
- 'sco' => 'Шкотски',
+ 'sc' => 'сардински',
+ 'scn' => 'сицилијански',
+ 'sco' => 'шкотски',
'sd' => 'синди',
+ 'sdh' => 'јужнокурдски',
'se' => 'северни сами',
'seh' => 'сена',
- 'sel' => 'Селкап',
+ 'sel' => 'селкупски',
'ses' => 'којраборо сени',
'sg' => 'санго',
- 'sga' => 'Староирски',
- 'sh' => 'Српскохрватски',
+ 'sga' => 'староирски',
+ 'sh' => 'српскохрватски',
'shi' => 'ташелхит',
- 'shn' => 'Шан',
- 'si' => 'синхалски',
- 'sid' => 'Сидамо',
+ 'shn' => 'шански',
+ 'si' => 'синхалешки',
+ 'sid' => 'сидамо',
'sk' => 'словачки',
'sl' => 'словеначки',
- 'sm' => 'Самоански',
+ 'sm' => 'самоански',
'sma' => 'јужни сами',
'smj' => 'луле сами',
'smn' => 'инари сами',
'sms' => 'сколт сами',
'sn' => 'шона',
- 'snk' => 'Сонинке',
+ 'snk' => 'сонинке',
'so' => 'сомалски',
- 'sog' => 'Соџијенски',
+ 'sog' => 'согдијски',
'sq' => 'албански',
'sr' => 'српски',
- 'srn' => 'Сранански тонго',
- 'srr' => 'Серер',
- 'ss' => 'Свати',
- 'st' => 'Сесото',
- 'su' => 'судански',
- 'suk' => 'Сукума',
- 'sus' => 'Сусу',
- 'sux' => 'Сумерски',
+ 'srn' => 'сранан тонго',
+ 'srr' => 'серерски',
+ 'ss' => 'свази',
+ 'ssy' => 'сахо',
+ 'st' => 'сесото',
+ 'su' => 'сундански',
+ 'suk' => 'сукума',
+ 'sus' => 'сусу',
+ 'sux' => 'сумерски',
'sv' => 'шведски',
'sw' => 'свахили',
- 'swb' => 'Коморски',
- 'swc' => 'конго свахили',
- 'syc' => 'Класични сиријски',
- 'syr' => 'Сиријски',
+ 'sw-cd' => 'кисвахили',
+ 'swb' => 'коморски',
+ 'syc' => 'сиријачки',
+ 'syr' => 'сиријски',
'ta' => 'тамилски',
'te' => 'телугу',
- 'tem' => 'Тимне',
+ 'tem' => 'тимне',
'teo' => 'тесо',
- 'ter' => 'Терено',
- 'tet' => 'Тетум',
- 'tg' => 'Тађик',
- 'th' => 'тајландски',
+ 'ter' => 'терено',
+ 'tet' => 'тетум',
+ 'tg' => 'таџички',
+ 'th' => 'тајски',
'ti' => 'тигриња',
- 'tig' => 'Тигре',
- 'tiv' => 'Тив',
+ 'tig' => 'тигре',
+ 'tiv' => 'тив',
'tk' => 'туркменски',
- 'tkl' => 'Токелау',
- 'tl' => 'Тагалски',
- 'tlh' => 'Клингонски',
- 'tli' => 'Тлингит',
- 'tmh' => 'Тамашек',
- 'tn' => 'Тсвана',
- 'to' => 'тонга',
- 'tog' => 'Њаса тонга',
- 'tpi' => 'Ток Писин',
+ 'tkl' => 'токелау',
+ 'tl' => 'тагалог',
+ 'tlh' => 'клингонски',
+ 'tli' => 'тлингит',
+ 'tmh' => 'тамашек',
+ 'tn' => 'цвана',
+ 'to' => 'тонгански',
+ 'tog' => 'њаса тонга',
+ 'tpi' => 'ток писин',
'tr' => 'турски',
- 'ts' => 'Тсонга',
- 'tsi' => 'Тсимшиан',
+ 'trv' => 'тароко',
+ 'ts' => 'цонга',
+ 'tsi' => 'цимшиан',
'tt' => 'татарски',
- 'tum' => 'Тумбука',
- 'tvl' => 'Тувалу',
- 'tw' => 'Тви',
+ 'tum' => 'тумбука',
+ 'tvl' => 'тувалу',
+ 'tw' => 'тви',
'twq' => 'тасавак',
- 'ty' => 'Тахићански',
- 'tyv' => 'Тувинијски',
+ 'ty' => 'тахићански',
+ 'tyv' => 'тувински',
'tzm' => 'централноатласки тамазигт',
- 'udm' => 'Удмурт',
+ 'udm' => 'удмуртски',
'ug' => 'ујгурски',
- 'uga' => 'Угаритски',
+ 'uga' => 'угаритски',
'uk' => 'украјински',
- 'umb' => 'Умбунду',
+ 'umb' => 'умбунду',
'und' => 'непознат језик',
'ur' => 'урду',
'uz' => 'узбечки',
'vai' => 'ваи',
- 've' => 'Венда',
+ 've' => 'венда',
'vi' => 'вијетнамски',
- 'vo' => 'Волапук',
- 'vot' => 'Вотски',
+ 'vo' => 'волапик',
+ 'vot' => 'водски',
'vun' => 'вунџо',
- 'wa' => 'Валун',
- 'wal' => 'Валамо',
- 'war' => 'Варај',
- 'was' => 'Вашо',
+ 'wa' => 'валонски',
+ 'wae' => 'валсерски',
+ 'wal' => 'волајта',
+ 'war' => 'варајски',
+ 'was' => 'вашо',
+ 'wbp' => 'варлпири',
'wo' => 'волоф',
- 'xal' => 'Калмик',
+ 'xal' => 'калмички',
'xh' => 'коса',
'xog' => 'сога',
- 'yao' => 'Јао',
- 'yap' => 'Јапешки',
- 'yi' => 'Јидиш',
+ 'yao' => 'јао',
+ 'yap' => 'јапски',
+ 'yav' => 'јангбен',
+ 'ybb' => 'јемба',
+ 'yi' => 'јидиш',
'yo' => 'јоруба',
- 'yue' => 'Кантонски',
- 'za' => 'Жуанг',
- 'zap' => 'Запотечки',
- 'zbl' => 'Блисимболи',
- 'zen' => 'Зенага',
+ 'yue' => 'кантонски',
+ 'za' => 'џуаншки',
+ 'zap' => 'запотечки',
+ 'zbl' => 'блисимболи',
+ 'zen' => 'зенага',
'zgh' => 'стандардни марокански тамазигт',
'zh' => 'кинески',
+ 'zh-hans' => 'поједностављени кинески',
+ 'zh-hant' => 'традиционални кинески',
'zu' => 'зулу',
- 'zun' => 'Зуни',
+ 'zun' => 'зуни',
'zxx' => 'без лингвистичког садржаја',
- 'zza' => 'Заза',
-);
+ 'zza' => 'заза',
+];
-$currencyNames = array(
+$currencyNames = [
'ADP' => 'Андорска пезета',
'AED' => 'УАЕ дирхам',
'AFA' => 'Авганистански авгани (1927–2002)',
@@ -520,7 +546,7 @@ $currencyNames = array(
'BIF' => 'Бурундски франак',
'BMD' => 'Бермудски долар',
'BND' => 'Брунејски долар',
- 'BOB' => 'Боливијски Боливиано',
+ 'BOB' => 'Боливијски боливијано',
'BOL' => 'Стари боливијски боливијано',
'BOP' => 'Боливијски пезо',
'BOV' => 'Боливијски мвдол',
@@ -536,7 +562,8 @@ $currencyNames = array(
'BUK' => 'Бурмански кјат',
'BWP' => 'Боцванска пула',
'BYB' => 'Белоруска нова рубља (1994–1999)',
- 'BYR' => 'Белоруска рубља',
+ 'BYN' => 'Белоруска рубља',
+ 'BYR' => 'Белоруска рубља (2000–2016)',
'BZD' => 'Белиски долар',
'CAD' => 'Канадски долар',
'CDF' => 'Конгоански франак',
@@ -546,6 +573,7 @@ $currencyNames = array(
'CLE' => 'Чилеански ескудо',
'CLF' => 'Чилеовски унидадес се фоменто',
'CLP' => 'Чилеански пезос',
+ 'CNH' => 'Кинески јуан (острвски)',
'CNX' => 'Долар кинеске народне банке',
'CNY' => 'Кинески јуан',
'COP' => 'Колумбијски пезос',
@@ -572,7 +600,7 @@ $currencyNames = array(
'ESA' => 'Шпанска пезета (рачун)',
'ESB' => 'Шпанска пезета (конвертибилнирачун)',
'ESP' => 'Шпанска пезета',
- 'ETB' => 'Етиопијски бир',
+ 'ETB' => 'Етиопски бир',
'EUR' => 'Евро',
'FIM' => 'Финска марка',
'FJD' => 'Фиџијски долар',
@@ -620,7 +648,7 @@ $currencyNames = array(
'KPW' => 'Севернокорејски вон',
'KRH' => 'Јужнокорејски хван',
'KRO' => 'Стари јужнокорејски вон',
- 'KRW' => 'Јужнокорејски Вон',
+ 'KRW' => 'Јужнокорејски вон',
'KWD' => 'Кувајтски динар',
'KYD' => 'Кајмански долар',
'KZT' => 'Казахстански тенге',
@@ -642,15 +670,16 @@ $currencyNames = array(
'MCF' => 'Монегаскански франак',
'MDC' => 'Молдовански купон',
'MDL' => 'Молдавски леј',
- 'MGA' => 'Малагасијски ариари',
+ 'MGA' => 'Мадагаскарски ариари',
'MGF' => 'Малагасијски франак',
'MKD' => 'Македонски денар',
'MKN' => 'Стари македонски денар',
'MLF' => 'Малијански франак',
'MMK' => 'Мјанмарски кјат',
'MNT' => 'Монголски тугрик',
- 'MOP' => 'Маканишка патака',
- 'MRO' => 'Мауританијска oгија',
+ 'MOP' => 'Макаоска патака',
+ 'MRO' => 'Мауританијска oгија (1973–2017)',
+ 'MRU' => 'Мауританијска oгија',
'MTL' => 'Малтешка лира',
'MTP' => 'Малтешка фунта',
'MUR' => 'Маурицијска рупија',
@@ -659,10 +688,10 @@ $currencyNames = array(
'MXN' => 'Мексички пезос',
'MXP' => 'Мексички сребрни пезо (1861–1992)',
'MXV' => 'Мексички унидад де инверсион (UDI)',
- 'MYR' => 'Малезијски ринггит',
+ 'MYR' => 'Малезијски рингит',
'MZE' => 'Мозамбијски ескудо',
'MZM' => 'Стари мозамбијски метикал',
- 'MZN' => 'Мозамбијски метикал',
+ 'MZN' => 'Мозамбички метикал',
'NAD' => 'Намибијски долар',
'NGN' => 'Нигеријска наира',
'NIC' => 'Никарагванска кордоба',
@@ -674,8 +703,8 @@ $currencyNames = array(
'OMR' => 'Омански ријал',
'PAB' => 'Панамска балбоа',
'PEI' => 'Перуански инти',
- 'PEN' => 'Перуански нуево сол',
- 'PES' => 'Перуански сол',
+ 'PEN' => 'Перуански сол',
+ 'PES' => 'Перуански сол (1863–1965)',
'PGK' => 'Папуанска кина',
'PHP' => 'Филипински пезос',
'PKR' => 'Пакистанскa рупиja',
@@ -685,8 +714,8 @@ $currencyNames = array(
'PYG' => 'Парагвајски гварани',
'QAR' => 'Катарски ријал',
'RHD' => 'Родејскидолар',
- 'ROL' => 'Румунски леј',
- 'RON' => 'Румунски леј (1952–2006)',
+ 'ROL' => 'Румунски леј (1952–2006)',
+ 'RON' => 'Румунски леј',
'RSD' => 'Српски динар',
'RUB' => 'Руска рубља',
'RUR' => 'Руска рубља (1991–1998)',
@@ -702,30 +731,31 @@ $currencyNames = array(
'SHP' => 'Св. јеленска фунта',
'SIT' => 'Словеначки толар',
'SKK' => 'Словачка круна',
- 'SLL' => 'Сијера-леоншки леоне',
+ 'SLL' => 'Сијералеонски леоне',
'SOS' => 'Сомалијски шилинг',
'SRD' => 'Суринамски долар',
'SRG' => 'Суринамски гилдер',
'SSP' => 'Јужносуданска фунта',
- 'STD' => 'Сао Томе и Принципе добра',
+ 'STD' => 'Саотомска добра (1977–2017)',
+ 'STN' => 'Саотомска добра',
'SUR' => 'Совјетска рубља',
'SVC' => 'Салвадорски колон',
'SYP' => 'Сиријска фунта',
- 'SZL' => 'Свази лилангени',
+ 'SZL' => 'Свазилендски лилангени',
'THB' => 'Тајландски бат',
'TJR' => 'Таџихистанска рубља',
- 'TJS' => 'Tаџихистански сомон',
+ 'TJS' => 'Таџикистански сомон',
'TMM' => 'Туркменистански манат (1993–2009)',
'TMT' => 'Туркменистански манат',
'TND' => 'Туниски динар',
- 'TOP' => 'Тонгоншка Панга',
+ 'TOP' => 'Тонганска панга',
'TPE' => 'Тиморшки ескудо',
'TRL' => 'Турска лира (1922–2005)',
'TRY' => 'Турска лира',
'TTD' => 'Тринидад-тобагошки долар',
'TWD' => 'Нови тајвански долар',
'TZS' => 'Танзанијски шилинг',
- 'UAH' => 'Украјинска гривна',
+ 'UAH' => 'Украјинска хривња',
'UAK' => 'Украјински карбованети',
'UGS' => 'Угандски шилинг (1966–1987)',
'UGX' => 'Угандски шилинг',
@@ -737,7 +767,8 @@ $currencyNames = array(
'UYU' => 'Уругвајски пезос',
'UZS' => 'Узбекистански сом',
'VEB' => 'Венецуелански боливар (1871–2008)',
- 'VEF' => 'Венецуелански боливар',
+ 'VEF' => 'Венецуелански боливар (2008–2018)',
+ 'VES' => 'Венецуелански боливар',
'VND' => 'Вијетнамски донг',
'VNN' => 'Вијетнамски донг (1978–1985)',
'VUV' => 'Вануатски вату',
@@ -760,7 +791,7 @@ $currencyNames = array(
'XPT' => 'Платина',
'XRE' => 'RINET фонд',
'XTS' => 'Код тестиране валуте',
- 'XXX' => 'Непозната или неважећа валута',
+ 'XXX' => 'Непозната валута',
'YDD' => 'Јеменски динар',
'YER' => 'Јеменски риjал',
'YUD' => 'Југословенски тврди динар',
@@ -768,7 +799,7 @@ $currencyNames = array(
'YUN' => 'Југословенски конвертибилни динар',
'YUR' => 'Југословенски реформирани динар',
'ZAL' => 'Јужно-афрички ранд (финансијски)',
- 'ZAR' => 'Јужно-афрички ранд',
+ 'ZAR' => 'Јужноафрички ранд',
'ZMK' => 'Замбијска квача (1968–2012)',
'ZMW' => 'Замбијска квача',
'ZRN' => 'Заирски нови заир',
@@ -776,9 +807,9 @@ $currencyNames = array(
'ZWD' => 'Зимбабвеански долар (1980–2008)',
'ZWL' => 'Зимбабвеански долар (2009)',
'ZWR' => 'Зимбабвеански долар (2008)',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'AED' => 'AED',
'AFN' => 'AFN',
'ALL' => 'ALL',
@@ -792,7 +823,7 @@ $currencySymbols = array(
'BAM' => 'КМ',
'BBD' => 'BBD',
'BDT' => 'BDT',
- 'BGN' => '[BGN]',
+ 'BGN' => 'BGN',
'BHD' => 'BHD',
'BIF' => 'BIF',
'BMD' => 'BMD',
@@ -802,12 +833,14 @@ $currencySymbols = array(
'BSD' => 'BSD',
'BTN' => 'BTN',
'BWP' => 'BWP',
- 'BYR' => '[BYR]',
+ 'BYN' => 'BYN',
+ 'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CA$',
'CDF' => 'CDF',
'CHF' => 'CHF',
'CLP' => 'CLP',
+ 'CNH' => 'CNH',
'CNY' => 'CN¥',
'COP' => 'COP',
'CRC' => 'CRC',
@@ -871,6 +904,7 @@ $currencySymbols = array(
'MNT' => 'MNT',
'MOP' => 'MOP',
'MRO' => 'MRO',
+ 'MRU' => 'MRU',
'MUR' => 'MUR',
'MVR' => 'MVR',
'MWK' => 'MWK',
@@ -886,6 +920,7 @@ $currencySymbols = array(
'OMR' => 'OMR',
'PAB' => 'PAB',
'PEN' => 'PEN',
+ 'PES' => 'PES',
'PGK' => 'PGK',
'PHP' => 'PHP',
'PKR' => 'PKR',
@@ -908,6 +943,7 @@ $currencySymbols = array(
'SRD' => 'SRD',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'STN',
'SYP' => 'SYP',
'SZL' => 'SZL',
'THB' => 'THB',
@@ -925,6 +961,7 @@ $currencySymbols = array(
'UYU' => 'UYU',
'UZS' => 'UZS',
'VEF' => 'VEF',
+ 'VES' => 'VES',
'VND' => 'VND',
'VUV' => 'VUV',
'WST' => 'WST',
@@ -935,9 +972,9 @@ $currencySymbols = array(
'YER' => 'YER',
'ZAR' => 'ZAR',
'ZMW' => 'ZMW',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'Острво Асенсион',
'AD' => 'Андора',
'AE' => 'Уједињени Арапски Емирати',
@@ -946,7 +983,6 @@ $countryNames = array(
'AI' => 'Ангвила',
'AL' => 'Албанија',
'AM' => 'Јерменија',
- 'AN' => 'Холандски Антили',
'AO' => 'Ангола',
'AQ' => 'Антарктик',
'AR' => 'Аргентина',
@@ -954,7 +990,7 @@ $countryNames = array(
'AT' => 'Аустрија',
'AU' => 'Аустралија',
'AW' => 'Аруба',
- 'AX' => 'Оландска острва',
+ 'AX' => 'Оландска Острва',
'AZ' => 'Азербејџан',
'BA' => 'Босна и Херцеговина',
'BB' => 'Барбадос',
@@ -978,12 +1014,12 @@ $countryNames = array(
'BY' => 'Белорусија',
'BZ' => 'Белизе',
'CA' => 'Канада',
- 'CC' => 'Кокос (Келинг) Острва',
+ 'CC' => 'Кокосова (Килингова) Острва',
'CD' => 'Конго - Киншаса',
'CF' => 'Централноафричка Република',
'CG' => 'Конго - Бразавил',
'CH' => 'Швајцарска',
- 'CI' => 'Обала Слоноваче',
+ 'CI' => 'Обала Слоноваче (Кот д’Ивоар)',
'CK' => 'Кукова Острва',
'CL' => 'Чиле',
'CM' => 'Камерун',
@@ -994,7 +1030,7 @@ $countryNames = array(
'CU' => 'Куба',
'CV' => 'Зеленортска Острва',
'CW' => 'Курасао',
- 'CX' => 'Божићно острво',
+ 'CX' => 'Божићно Острво',
'CY' => 'Кипар',
'CZ' => 'Чешка',
'DE' => 'Немачка',
@@ -1013,9 +1049,10 @@ $countryNames = array(
'ES' => 'Шпанија',
'ET' => 'Етиопија',
'EU' => 'Европска Унија',
+ 'EZ' => 'Еврозона',
'FI' => 'Финска',
'FJ' => 'Фиџи',
- 'FK' => 'Фокландска острва',
+ 'FK' => 'Фокландска Острва',
'FM' => 'Микронезија',
'FO' => 'Фарска Острва',
'FR' => 'Француска',
@@ -1024,38 +1061,38 @@ $countryNames = array(
'GD' => 'Гренада',
'GE' => 'Грузија',
'GF' => 'Француска Гвајана',
- 'GG' => 'Гурнси',
+ 'GG' => 'Гернзи',
'GH' => 'Гана',
'GI' => 'Гибралтар',
'GL' => 'Гренланд',
'GM' => 'Гамбија',
'GN' => 'Гвинеја',
- 'GP' => 'Гваделупе',
+ 'GP' => 'Гваделуп',
'GQ' => 'Екваторијална Гвинеја',
'GR' => 'Грчка',
- 'GS' => 'Јужна Џорџија и Јужна Сендвич Острва',
+ 'GS' => 'Јужна Џорџија и Јужна Сендвичка Острва',
'GT' => 'Гватемала',
'GU' => 'Гуам',
'GW' => 'Гвинеја-Бисао',
'GY' => 'Гвајана',
- 'HK' => 'Хонг Конг',
- 'HM' => 'Острва Херд и Мекдоналд',
+ 'HK' => 'Хонгконг',
+ 'HM' => 'Острво Херд и Мекдоналдова острва',
'HN' => 'Хондурас',
'HR' => 'Хрватска',
'HT' => 'Хаити',
'HU' => 'Мађарска',
- 'IC' => 'Канарска острва',
+ 'IC' => 'Канарска Острва',
'ID' => 'Индонезија',
'IE' => 'Ирска',
'IL' => 'Израел',
'IM' => 'Острво Ман',
'IN' => 'Индија',
- 'IO' => 'Британска територија у Индијском океану',
+ 'IO' => 'Британска територија Индијског океана',
'IQ' => 'Ирак',
'IR' => 'Иран',
'IS' => 'Исланд',
'IT' => 'Италија',
- 'JE' => 'Џерси',
+ 'JE' => 'Џерзи',
'JM' => 'Јамајка',
'JO' => 'Јордан',
'JP' => 'Јапан',
@@ -1085,7 +1122,7 @@ $countryNames = array(
'MC' => 'Монако',
'MD' => 'Молдавија',
'ME' => 'Црна Гора',
- 'MF' => 'Сент Мартин',
+ 'MF' => 'Свети Мартин (Француска)',
'MG' => 'Мадагаскар',
'MH' => 'Маршалска Острва',
'MK' => 'Македонија',
@@ -1107,7 +1144,7 @@ $countryNames = array(
'NA' => 'Намибија',
'NC' => 'Нова Каледонија',
'NE' => 'Нигер',
- 'NF' => 'Норфолк Острво',
+ 'NF' => 'Острво Норфок',
'NG' => 'Нигерија',
'NI' => 'Никарагва',
'NL' => 'Холандија',
@@ -1128,7 +1165,7 @@ $countryNames = array(
'PN' => 'Питкерн',
'PR' => 'Порторико',
'PS' => 'Палестина',
- 'PT' => 'Португал',
+ 'PT' => 'Португалија',
'PW' => 'Палау',
'PY' => 'Парагвај',
'QA' => 'Катар',
@@ -1156,7 +1193,7 @@ $countryNames = array(
'SS' => 'Јужни Судан',
'ST' => 'Сао Томе и Принципе',
'SV' => 'Салвадор',
- 'SX' => 'Свети Мартин',
+ 'SX' => 'Свети Мартин (Холандија)',
'SY' => 'Сирија',
'SZ' => 'Свазиленд',
'TA' => 'Тристан да Куња',
@@ -1167,7 +1204,7 @@ $countryNames = array(
'TH' => 'Тајланд',
'TJ' => 'Таџикистан',
'TK' => 'Токелау',
- 'TL' => 'Источни Тимор',
+ 'TL' => 'Тимор-Лесте (Источни Тимор)',
'TM' => 'Туркменистан',
'TN' => 'Тунис',
'TO' => 'Тонга',
@@ -1179,6 +1216,7 @@ $countryNames = array(
'UA' => 'Украјина',
'UG' => 'Уганда',
'UM' => 'Удаљена острва САД',
+ 'UN' => 'УН',
'US' => 'САД',
'UY' => 'Уругвај',
'UZ' => 'Узбекистан',
@@ -1197,9 +1235,12 @@ $countryNames = array(
'ZA' => 'Јужноафричка Република',
'ZM' => 'Замбија',
'ZW' => 'Зимбабве',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-few' => '{0} века',
+ 'century-one' => '{0} век',
+ 'century-other' => '{0} векова',
'day-few' => '{0} дана',
'day-future-few' => 'за {0} дана',
'day-future-one' => 'за {0} дан',
@@ -1221,6 +1262,24 @@ $timeUnits = array(
'day-short-past-few' => 'пре {0} д.',
'day-short-past-one' => 'пре {0} д.',
'day-short-past-other' => 'пре {0} д.',
+ 'fri-future-few' => 'за {0} петка',
+ 'fri-future-one' => 'за {0} петак',
+ 'fri-future-other' => 'за {0} петака',
+ 'fri-narrow-future-few' => 'за {0} петка',
+ 'fri-narrow-future-one' => 'за {0} петак',
+ 'fri-narrow-future-other' => 'за {0} петака',
+ 'fri-narrow-past-few' => 'пре {0} петка',
+ 'fri-narrow-past-one' => 'пре {0} петка',
+ 'fri-narrow-past-other' => 'пре {0} петака',
+ 'fri-past-few' => 'пре {0} петка',
+ 'fri-past-one' => 'пре {0} петка',
+ 'fri-past-other' => 'пре {0} петака',
+ 'fri-short-future-few' => 'за {0} петка',
+ 'fri-short-future-one' => 'за {0} петак',
+ 'fri-short-future-other' => 'за {0} петака',
+ 'fri-short-past-few' => 'пре {0} петка',
+ 'fri-short-past-one' => 'пре {0} петка',
+ 'fri-short-past-other' => 'пре {0} петака',
'hour-few' => '{0} сата',
'hour-future-few' => 'за {0} сата',
'hour-future-one' => 'за {0} сат',
@@ -1269,6 +1328,24 @@ $timeUnits = array(
'minute-short-past-few' => 'пре {0} мин.',
'minute-short-past-one' => 'пре {0} мин.',
'minute-short-past-other' => 'пре {0} мин.',
+ 'mon-future-few' => 'за {0} понедељка',
+ 'mon-future-one' => 'за {0} понедељак',
+ 'mon-future-other' => 'за {0} понедељака',
+ 'mon-narrow-future-few' => 'за {0} понедељкa',
+ 'mon-narrow-future-one' => 'за {0} понедељак',
+ 'mon-narrow-future-other' => 'за {0} понедељака',
+ 'mon-narrow-past-few' => 'пре {0} понедељка',
+ 'mon-narrow-past-one' => 'пре {0} понедељка',
+ 'mon-narrow-past-other' => 'пре {0} понедељака',
+ 'mon-past-few' => 'пре {0} понедељка',
+ 'mon-past-one' => 'пре {0} понедељка',
+ 'mon-past-other' => 'пре {0} понедељака',
+ 'mon-short-future-few' => 'за {0} понедељка',
+ 'mon-short-future-one' => 'за {0} понедељак',
+ 'mon-short-future-other' => 'за {0} понедељака',
+ 'mon-short-past-few' => 'пре {0} понедељка',
+ 'mon-short-past-one' => 'пре {0} понедељка',
+ 'mon-short-past-other' => 'пре {0} понедељака',
'month-few' => '{0} месеца',
'month-future-few' => 'за {0} месеца',
'month-future-one' => 'за {0} месец',
@@ -1296,21 +1373,39 @@ $timeUnits = array(
'quarter-future-few' => 'за {0} квартала',
'quarter-future-one' => 'за {0} квартал',
'quarter-future-other' => 'за {0} квартала',
- 'quarter-narrow-future-few' => 'за {0} квартала',
- 'quarter-narrow-future-one' => 'за {0} квартала',
- 'quarter-narrow-future-other' => 'за {0} квартала',
- 'quarter-narrow-past-few' => 'пре {0} квартала',
- 'quarter-narrow-past-one' => 'пре {0} квартала',
- 'quarter-narrow-past-other' => 'пре {0} квартала',
+ 'quarter-narrow-future-few' => 'за {0} кв.',
+ 'quarter-narrow-future-one' => 'за {0} кв.',
+ 'quarter-narrow-future-other' => 'за {0} кв.',
+ 'quarter-narrow-past-few' => 'пре {0} кв.',
+ 'quarter-narrow-past-one' => 'пре {0} кв.',
+ 'quarter-narrow-past-other' => 'пре {0} кв.',
'quarter-past-few' => 'пре {0} квартала',
'quarter-past-one' => 'пре {0} квартала',
'quarter-past-other' => 'пре {0} квартала',
- 'quarter-short-future-few' => 'за {0} квартала',
- 'quarter-short-future-one' => 'за {0} квартала',
- 'quarter-short-future-other' => 'за {0} квартала',
- 'quarter-short-past-few' => 'пре {0} квартала',
- 'quarter-short-past-one' => 'пре {0} квартала',
- 'quarter-short-past-other' => 'пре {0} квартала',
+ 'quarter-short-future-few' => 'за {0} кв.',
+ 'quarter-short-future-one' => 'за {0} кв.',
+ 'quarter-short-future-other' => 'за {0} кв.',
+ 'quarter-short-past-few' => 'пре {0} кв.',
+ 'quarter-short-past-one' => 'пре {0} кв.',
+ 'quarter-short-past-other' => 'пре {0} кв.',
+ 'sat-future-few' => 'за {0} суботе',
+ 'sat-future-one' => 'за {0} суботу',
+ 'sat-future-other' => 'за {0} субота',
+ 'sat-narrow-future-few' => 'за {0} суботе',
+ 'sat-narrow-future-one' => 'за {0} суботу',
+ 'sat-narrow-future-other' => 'за {0} субота',
+ 'sat-narrow-past-few' => 'пре {0} суботе',
+ 'sat-narrow-past-one' => 'пре {0} суботе',
+ 'sat-narrow-past-other' => 'пре {0} субота',
+ 'sat-past-few' => 'пре {0} суботе',
+ 'sat-past-one' => 'пре {0} суботе',
+ 'sat-past-other' => 'пре {0} субота',
+ 'sat-short-future-few' => 'за {0} суботе',
+ 'sat-short-future-one' => 'за {0} суботу',
+ 'sat-short-future-other' => 'за {0} субота',
+ 'sat-short-past-few' => 'пре {0} суботе',
+ 'sat-short-past-one' => 'пре {0} суботе',
+ 'sat-short-past-other' => 'пре {0} субота',
'second-few' => '{0} секунде',
'second-future-few' => 'за {0} секунде',
'second-future-one' => 'за {0} секунду',
@@ -1332,6 +1427,78 @@ $timeUnits = array(
'second-short-past-few' => 'пре {0} сек.',
'second-short-past-one' => 'пре {0} сек.',
'second-short-past-other' => 'пре {0} сек.',
+ 'sun-future-few' => 'за {0} недеље',
+ 'sun-future-one' => 'за {0} недељу',
+ 'sun-future-other' => 'за {0} недеља',
+ 'sun-narrow-future-few' => 'за {0} недеље',
+ 'sun-narrow-future-one' => 'за {0} недељу',
+ 'sun-narrow-future-other' => 'за {0} недеља',
+ 'sun-narrow-past-few' => 'пре {0} недеље',
+ 'sun-narrow-past-one' => 'пре {0} недеље',
+ 'sun-narrow-past-other' => 'пре {0} недеља',
+ 'sun-past-few' => 'пре {0} недеље',
+ 'sun-past-one' => 'пре {0} недеље',
+ 'sun-past-other' => 'пре {0} недеља',
+ 'sun-short-future-few' => 'за {0} недеље',
+ 'sun-short-future-one' => 'за {0} недељу',
+ 'sun-short-future-other' => 'за {0} недеља',
+ 'sun-short-past-few' => 'пре {0} недеље',
+ 'sun-short-past-one' => 'пре {0} недеље',
+ 'sun-short-past-other' => 'пре {0} недеља',
+ 'thu-future-few' => 'за {0} четвртка',
+ 'thu-future-one' => 'за {0} четвртак',
+ 'thu-future-other' => 'за {0} четвртака',
+ 'thu-narrow-future-few' => 'за {0} четвртка',
+ 'thu-narrow-future-one' => 'за {0} четвртак',
+ 'thu-narrow-future-other' => 'за {0} четвртака',
+ 'thu-narrow-past-few' => 'пре {0} четвртка',
+ 'thu-narrow-past-one' => 'пре {0} четвртка',
+ 'thu-narrow-past-other' => 'пре {0} четвртака',
+ 'thu-past-few' => 'пре {0} четвртка',
+ 'thu-past-one' => 'пре {0} четвртка',
+ 'thu-past-other' => 'пре {0} четвртака',
+ 'thu-short-future-few' => 'за {0} четвртка',
+ 'thu-short-future-one' => 'за {0} четвртак',
+ 'thu-short-future-other' => 'за {0} четвртака',
+ 'thu-short-past-few' => 'пре {0} четвртка',
+ 'thu-short-past-one' => 'пре {0} четвртка',
+ 'thu-short-past-other' => 'пре {0} четвртака',
+ 'tue-future-few' => 'за {0} уторка',
+ 'tue-future-one' => 'за {0} уторак',
+ 'tue-future-other' => 'за {0} уторака',
+ 'tue-narrow-future-few' => 'за {0} уторка',
+ 'tue-narrow-future-one' => 'за {0} уторак',
+ 'tue-narrow-future-other' => 'за {0} уторака',
+ 'tue-narrow-past-few' => 'пре {0} уторка',
+ 'tue-narrow-past-one' => 'пре {0} уторка',
+ 'tue-narrow-past-other' => 'пре {0} уторака',
+ 'tue-past-few' => 'пре {0} уторка',
+ 'tue-past-one' => 'пре {0} уторка',
+ 'tue-past-other' => 'пре {0} уторака',
+ 'tue-short-future-few' => 'за {0} уторка',
+ 'tue-short-future-one' => 'за {0} уторак',
+ 'tue-short-future-other' => 'за {0} уторака',
+ 'tue-short-past-few' => 'пре {0} уторка',
+ 'tue-short-past-one' => 'пре {0} уторка',
+ 'tue-short-past-other' => 'пре {0} уторака',
+ 'wed-future-few' => 'за {0} среде',
+ 'wed-future-one' => 'за {0} среду',
+ 'wed-future-other' => 'за {0} среда',
+ 'wed-narrow-future-few' => 'за {0} среде',
+ 'wed-narrow-future-one' => 'за {0} среду',
+ 'wed-narrow-future-other' => 'за {0} среда',
+ 'wed-narrow-past-few' => 'пре {0} среде',
+ 'wed-narrow-past-one' => 'пре {0} среде',
+ 'wed-narrow-past-other' => 'пре {0} среда',
+ 'wed-past-few' => 'пре {0} среде',
+ 'wed-past-one' => 'пре {0} среде',
+ 'wed-past-other' => 'пре {0} среда',
+ 'wed-short-future-few' => 'за {0} среде',
+ 'wed-short-future-one' => 'за {0} среду',
+ 'wed-short-future-other' => 'за {0} среда',
+ 'wed-short-past-few' => 'пре {0} среде',
+ 'wed-short-past-one' => 'пре {0} среде',
+ 'wed-short-past-other' => 'пре {0} среда',
'week-few' => '{0} недеље',
'week-future-few' => 'за {0} недеље',
'week-future-one' => 'за {0} недељу',
@@ -1374,4 +1541,4 @@ $timeUnits = array(
'year-short-past-few' => 'пре {0} год.',
'year-short-past-one' => 'пре {0} год.',
'year-short-past-other' => 'пре {0} год.',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesSs.php b/MLEB/cldr/CldrNames/CldrNamesSs.php
deleted file mode 100644
index 57e2f5c4..00000000
--- a/MLEB/cldr/CldrNames/CldrNamesSs.php
+++ /dev/null
@@ -1,5 +0,0 @@
-<?php
-
-$languageNames = array(
- 'ss' => 'Siswati',
-);
diff --git a/MLEB/cldr/CldrNames/CldrNamesSt.php b/MLEB/cldr/CldrNames/CldrNamesSt.php
deleted file mode 100644
index d7860e01..00000000
--- a/MLEB/cldr/CldrNames/CldrNamesSt.php
+++ /dev/null
@@ -1,97 +0,0 @@
-<?php
-
-$languageNames = array(
- 'af' => 'Seburu',
- 'am' => 'Se-amhari',
- 'ar' => 'Se-arab',
- 'az' => 'Se-azerbaijani',
- 'be' => 'Se-belarusia',
- 'bg' => 'Se-bulgaria',
- 'bh' => 'Se-bihari',
- 'bn' => 'Se-bengali',
- 'br' => 'Breton',
- 'bs' => 'Se-bosnia',
- 'ca' => 'Se-catalia',
- 'cs' => 'Se-czech',
- 'cy' => 'Se-welsh',
- 'da' => 'Se-dutch',
- 'de' => 'Se-jeremane',
- 'el' => 'Se-greek',
- 'en' => 'Senyesemane',
- 'eo' => 'Se-esperanto',
- 'es' => 'Sespain',
- 'et' => 'Se-estonia',
- 'eu' => 'Se-basque',
- 'fa' => 'Se-persia',
- 'fi' => 'Se-finnish',
- 'fil' => 'Se-tagalog',
- 'fo' => 'Se-foroese',
- 'fr' => 'Se-french',
- 'fy' => 'Se-frisia',
- 'ga' => 'Se-irish',
- 'gd' => 'Se-scots gaelic',
- 'gl' => 'Se-galicia',
- 'gn' => 'Guarani',
- 'gu' => 'Se-gujarati',
- 'he' => 'Se-hebrew',
- 'hi' => 'Se-hindi',
- 'hr' => 'Se-croatia',
- 'hu' => 'Se-hungaria',
- 'ia' => 'Se-interlingua',
- 'id' => 'Se-indonesia',
- 'is' => 'Se-iceland',
- 'it' => 'Se-tariana',
- 'ja' => 'Se-japane',
- 'jv' => 'Se-javane',
- 'ka' => 'Se-geogia',
- 'kn' => 'Se-kannada',
- 'ko' => 'Se-korea',
- 'ku' => 'Kurdish',
- 'ky' => 'Kyrgyz',
- 'la' => 'Se-latino',
- 'lt' => 'Se-Lithuano',
- 'mk' => 'Se-masedonia',
- 'ml' => 'Se-malayalam',
- 'mr' => 'Se-marathi',
- 'ms' => 'Se-malay',
- 'mt' => 'Se-maltese',
- 'ne' => 'Se-nepali',
- 'nl' => 'Dutch',
- 'nn' => 'Se-norway (Nynorsk)',
- 'no' => 'Se-norway',
- 'oc' => 'Se-occitan',
- 'or' => 'Oriya',
- 'pa' => 'Se-punjabi',
- 'pl' => 'Se-polish',
- 'ps' => 'Pashto',
- 'pt' => 'Se-portugal',
- 'pt-br' => 'Seputukesi (sa Brazil)',
- 'pt-pt' => 'Se-portugal (Portugal)',
- 'ro' => 'Se-romania',
- 'ru' => 'Se-rushia',
- 'sh' => 'Serbo-Croatian',
- 'si' => 'Se-sinhali',
- 'sk' => 'Se-slovak',
- 'sl' => 'Se-slovania',
- 'sq' => 'Se-albanian',
- 'sr' => 'Se-serbian',
- 'st' => 'Sesotho',
- 'su' => 'Se-sundanese',
- 'sv' => 'Se-sweden',
- 'sw' => 'Se-swahili',
- 'ta' => 'Se-tamil',
- 'te' => 'Se-telegu',
- 'th' => 'Se-thai',
- 'ti' => 'Se-tigrinya',
- 'tk' => 'Turkmen',
- 'tlh' => 'Se-klingon',
- 'tr' => 'Se-theki',
- 'tw' => 'Twi',
- 'uk' => 'Se-ukrania',
- 'ur' => 'Se-urdu',
- 'uz' => 'Se-uzbek',
- 'vi' => 'Se-vietnam',
- 'xh' => 'se Xhosa',
- 'yi' => 'Yiddish',
- 'zu' => 'se Zulu',
-);
diff --git a/MLEB/cldr/CldrNames/CldrNamesSv.php b/MLEB/cldr/CldrNames/CldrNamesSv.php
index 5952049f..69e79fb7 100644
--- a/MLEB/cldr/CldrNames/CldrNamesSv.php
+++ b/MLEB/cldr/CldrNames/CldrNamesSv.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'afar',
'ab' => 'abchaziska',
'ace' => 'acehnesiska',
@@ -15,6 +15,7 @@ $languageNames = array(
'ain' => 'ainu',
'ak' => 'akan',
'akk' => 'akkadiska',
+ 'akz' => 'Alabama-muskogee',
'ale' => 'aleutiska',
'aln' => 'gegiska',
'alt' => 'sydaltaiska',
@@ -25,10 +26,11 @@ $languageNames = array(
'ar' => 'arabiska',
'ar-001' => 'modern standardarabiska',
'arc' => 'arameiska',
- 'arn' => 'araukanska',
+ 'arn' => 'mapudungun',
'aro' => 'araoniska',
'arp' => 'arapaho',
'arq' => 'algerisk arabiska',
+ 'ars' => 'najdiarabiska',
'arw' => 'arawakiska',
'ary' => 'marockansk arabiska',
'arz' => 'egyptisk arabiska',
@@ -41,13 +43,13 @@ $languageNames = array(
'awa' => 'awadhi',
'ay' => 'aymara',
'az' => 'azerbajdzjanska',
- 'azb' => 'sydazerbadjanska',
'ba' => 'basjkiriska',
'bal' => 'baluchiska',
'ban' => 'balinesiska',
'bar' => 'bayerska',
'bas' => 'basa',
'bax' => 'bamunska',
+ 'bbc' => 'batak-toba',
'bbj' => 'ghomala',
'be' => 'vitryska',
'bej' => 'beja',
@@ -57,6 +59,7 @@ $languageNames = array(
'bfd' => 'bafut',
'bfq' => 'bagada',
'bg' => 'bulgariska',
+ 'bgn' => 'västbaluchiska',
'bho' => 'bhojpuri',
'bi' => 'bislama',
'bik' => 'bikol',
@@ -101,8 +104,10 @@ $languageNames = array(
'ckb' => 'soranisk kurdiska',
'co' => 'korsikanska',
'cop' => 'koptiska',
+ 'cps' => 'kapisnon',
'cr' => 'cree',
'crh' => 'krimtatariska',
+ 'crs' => 'seychellisk kreol',
'cs' => 'tjeckiska',
'csb' => 'kasjubiska',
'cu' => 'kyrkslaviska',
@@ -122,12 +127,13 @@ $languageNames = array(
'dje' => 'zarma',
'doi' => 'dogri',
'dsb' => 'lågsorbiska',
+ 'dtp' => 'centraldusun',
'dua' => 'duala',
'dum' => 'medelnederländska',
'dv' => 'divehi',
'dyo' => 'jola-fonyi',
'dyu' => 'dyula',
- 'dz' => 'bhutanesiska',
+ 'dz' => 'dzongkha',
'dzg' => 'dazaga',
'ebu' => 'embu',
'ee' => 'ewe',
@@ -148,9 +154,11 @@ $languageNames = array(
'es-419' => 'latinamerikansk spanska',
'es-es' => 'europeisk spanska',
'es-mx' => 'mexikansk spanska',
+ 'esu' => 'centralalaskisk jupiska',
'et' => 'estniska',
'eu' => 'baskiska',
'ewo' => 'ewondo',
+ 'ext' => 'extremaduriska',
'fa' => 'persiska',
'fan' => 'fang',
'fat' => 'fanti',
@@ -195,6 +203,8 @@ $languageNames = array(
'grc' => 'forngrekiska',
'gsw' => 'schweizertyska',
'gu' => 'gujarati',
+ 'guc' => 'wayuu',
+ 'gur' => 'farefare',
'guz' => 'gusii',
'gv' => 'manx',
'gwi' => 'gwichin',
@@ -253,13 +263,16 @@ $languageNames = array(
'kcg' => 'tyap',
'kde' => 'makonde',
'kea' => 'kapverdiska',
+ 'ken' => 'kenjang',
'kfo' => 'koro',
'kg' => 'kikongo',
+ 'kgp' => 'kaingang',
'kha' => 'khasi',
'kho' => 'khotanesiska',
'khq' => 'Timbuktu-songhoy',
'khw' => 'khowar',
'ki' => 'kikuyu',
+ 'kiu' => 'kirmanjki',
'kj' => 'kuanyama',
'kk' => 'kazakiska',
'kkj' => 'mkako',
@@ -275,6 +288,8 @@ $languageNames = array(
'kpe' => 'kpelle',
'kr' => 'kanuri',
'krc' => 'karachay-balkar',
+ 'kri' => 'krio',
+ 'krj' => 'kinaray-a',
'krl' => 'karelska',
'kru' => 'kurukh',
'ks' => 'kashmiriska',
@@ -294,6 +309,7 @@ $languageNames = array(
'lam' => 'lamba',
'lb' => 'luxemburgiska',
'lez' => 'lezghien',
+ 'lfn' => 'lingua franca nova',
'lg' => 'luganda',
'li' => 'limburgiska',
'lij' => 'liguriska',
@@ -303,7 +319,9 @@ $languageNames = array(
'ln' => 'lingala',
'lo' => 'laotiska',
'lol' => 'mongo',
+ 'lou' => 'louisiana-kreol',
'loz' => 'lozi',
+ 'lrc' => 'nordluri',
'lt' => 'litauiska',
'ltg' => 'lettgalliska',
'lu' => 'luba-katanga',
@@ -314,6 +332,8 @@ $languageNames = array(
'lus' => 'lushai',
'luy' => 'luhya',
'lv' => 'lettiska',
+ 'lzh' => 'litterär kineiska',
+ 'lzz' => 'laziska',
'mad' => 'maduresiska',
'maf' => 'mafa',
'mag' => 'magahi',
@@ -351,22 +371,25 @@ $languageNames = array(
'mus' => 'muskogee',
'mwl' => 'mirandesiska',
'mwr' => 'marwari',
+ 'mwv' => 'mentawai',
'my' => 'burmesiska',
'mye' => 'myene',
'myv' => 'erjya',
'mzn' => 'mazanderani',
- 'na' => 'nauru',
+ 'na' => 'nauruanska',
'nan' => 'min nan',
'nap' => 'napolitanska',
'naq' => 'nama',
'nb' => 'norskt bokmål',
'nd' => 'nordndebele',
'nds' => 'lågtyska',
+ 'nds-nl' => 'lågsaxiska',
'ne' => 'nepalesiska',
'new' => 'newariska',
'ng' => 'ndonga',
'nia' => 'nias',
'niu' => 'niueanska',
+ 'njo' => 'ao-naga',
'nl' => 'nederländska',
'nl-be' => 'flamländska',
'nmg' => 'kwasio',
@@ -375,6 +398,7 @@ $languageNames = array(
'no' => 'norska',
'nog' => 'nogai',
'non' => 'fornnordiska',
+ 'nov' => 'novial',
'nqo' => 'n-kå',
'nr' => 'sydndebele',
'nso' => 'nordsotho',
@@ -400,6 +424,7 @@ $languageNames = array(
'pap' => 'papiamento',
'pau' => 'palau',
'pcd' => 'pikardiska',
+ 'pcm' => 'Nigeria-pidgin',
'pdc' => 'Pennsylvaniatyska',
'pdt' => 'mennonitisk lågtyska',
'peo' => 'fornpersiska',
@@ -409,7 +434,7 @@ $languageNames = array(
'pl' => 'polska',
'pms' => 'piemontesiska',
'pnt' => 'pontiska',
- 'pon' => 'ponape',
+ 'pon' => 'pohnpeiska',
'prg' => 'fornpreussiska',
'pro' => 'fornprovensalska',
'ps' => 'afghanska',
@@ -417,7 +442,7 @@ $languageNames = array(
'pt-br' => 'brasiliansk portugisiska',
'pt-pt' => 'europeisk portugisiska',
'qu' => 'quechua',
- 'quc' => 'kʼicheʼ',
+ 'quc' => 'quiché',
'qug' => 'Chimborazo-höglandskichwa',
'raj' => 'rajasthani',
'rap' => 'rapanui',
@@ -447,14 +472,16 @@ $languageNames = array(
'saz' => 'saurashtra',
'sba' => 'ngambay',
'sbp' => 'sangu',
- 'sc' => 'sardiska',
+ 'sc' => 'sardinska',
'scn' => 'sicilianska',
'sco' => 'skotska',
'sd' => 'sindhi',
'sdc' => 'sassaresisk sardiska',
+ 'sdh' => 'sydkurdiska',
'se' => 'nordsamiska',
'see' => 'seneca',
'seh' => 'sena',
+ 'sei' => 'seri',
'sel' => 'selkup',
'ses' => 'Gao-songhay',
'sg' => 'sango',
@@ -463,12 +490,13 @@ $languageNames = array(
'sh' => 'serbokroatiska',
'shi' => 'tachelhit',
'shn' => 'shan',
- 'shu' => 'Chad-arabiska',
+ 'shu' => 'Tchad-arabiska',
'si' => 'singalesiska',
'sid' => 'sidamo',
'sk' => 'slovakiska',
'sl' => 'slovenska',
'sli' => 'lågsilesiska',
+ 'sly' => 'selayar',
'sm' => 'samoanska',
'sma' => 'sydsamiska',
'smj' => 'lulesamiska',
@@ -492,14 +520,14 @@ $languageNames = array(
'sux' => 'sumeriska',
'sv' => 'svenska',
'sw' => 'swahili',
+ 'sw-cd' => 'Kongo-swahili',
'swb' => 'shimaoré',
- 'swc' => 'Kongo-swahili',
'syc' => 'klassisk syriska',
'syr' => 'syriska',
'szl' => 'silesiska',
'ta' => 'tamil',
'tcy' => 'tulu',
- 'te' => 'telugiska',
+ 'te' => 'telugu',
'tem' => 'temne',
'teo' => 'teso',
'ter' => 'tereno',
@@ -511,6 +539,7 @@ $languageNames = array(
'tiv' => 'tivi',
'tk' => 'turkmeniska',
'tkl' => 'tokelauiska',
+ 'tkr' => 'tsakhur',
'tl' => 'tagalog',
'tlh' => 'klingonska',
'tli' => 'tlingit',
@@ -521,11 +550,13 @@ $languageNames = array(
'tog' => 'nyasatonganska',
'tpi' => 'tok pisin',
'tr' => 'turkiska',
+ 'tru' => 'turoyo',
'trv' => 'taroko',
'ts' => 'tsonga',
'tsd' => 'tsakodiska',
'tsi' => 'tsimshian',
'tt' => 'tatariska',
+ 'ttt' => 'muslimsk tatariska',
'tum' => 'tumbuka',
'tvl' => 'tuvaluanska',
'tw' => 'twi',
@@ -557,10 +588,12 @@ $languageNames = array(
'wal' => 'walamo',
'war' => 'waray',
'was' => 'washo',
+ 'wbp' => 'warlpiri',
'wo' => 'wolof',
'wuu' => 'wu',
'xal' => 'kalmuckiska',
'xh' => 'xhosa',
+ 'xmf' => 'mingrelianska',
'xog' => 'lusoga',
'yao' => 'kiyao',
'yap' => 'japetiska',
@@ -568,6 +601,7 @@ $languageNames = array(
'ybb' => 'bamileké-jemba',
'yi' => 'jiddisch',
'yo' => 'yoruba',
+ 'yrl' => 'nheengatu',
'yue' => 'kantonesiska',
'za' => 'zhuang',
'zap' => 'zapotek',
@@ -582,9 +616,9 @@ $languageNames = array(
'zun' => 'zuni',
'zxx' => 'inget språkligt innehåll',
'zza' => 'zazaiska',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'ADP' => 'andorransk peseta',
'AED' => 'Förenade Arabemiratens dirham',
'AFA' => 'afghani (1927–2002)',
@@ -639,7 +673,8 @@ $currencyNames = array(
'BUK' => 'burmesisk kyat',
'BWP' => 'botswansk pula',
'BYB' => 'vitrysk ny rubel (1994–1999)',
- 'BYR' => 'vitrysk rubel',
+ 'BYN' => 'vitrysk rubel',
+ 'BYR' => 'vitrysk rubel (2000–2016)',
'BZD' => 'belizisk dollar',
'CAD' => 'kanadensisk dollar',
'CDF' => 'kongolesisk franc',
@@ -649,6 +684,7 @@ $currencyNames = array(
'CLE' => 'chilensk escudo (1960–1975)',
'CLF' => 'chilensk unidad de fomento',
'CLP' => 'chilensk peso',
+ 'CNH' => 'CNH',
'CNX' => 'kinesisk dollar',
'CNY' => 'kinesisk yuan',
'COP' => 'colombiansk peso',
@@ -695,14 +731,14 @@ $currencyNames = array(
'GTQ' => 'guatemalansk quetzal',
'GWE' => 'Portugisiska Guinea-escudo',
'GWP' => 'Guinea-Bissau-peso',
- 'GYD' => 'guyanansk dollar',
+ 'GYD' => 'Guyanadollar',
'HKD' => 'Hongkongdollar',
'HNL' => 'honduransk lempira',
'HRD' => 'kroatisk dinar',
'HRK' => 'kroatisk kuna',
'HTG' => 'haitisk gourde',
'HUF' => 'ungersk forint',
- 'IDR' => 'indonesisk rupiah',
+ 'IDR' => 'indonesisk rupie',
'IEP' => 'irländskt pund',
'ILP' => 'israeliskt pund',
'ILR' => 'israelisk shekel (1980–1985)',
@@ -752,8 +788,9 @@ $currencyNames = array(
'MLF' => 'malisk franc',
'MMK' => 'myanmarisk kyat',
'MNT' => 'mongolisk tögrög',
- 'MOP' => 'macaosk pataca',
- 'MRO' => 'mauretansk ouquiya',
+ 'MOP' => 'makanesisk pataca',
+ 'MRO' => 'mauretansk ouguiya (1973–2017)',
+ 'MRU' => 'mauretansk ouguiya',
'MTL' => 'maltesisk lire',
'MTP' => 'maltesiskt pund',
'MUR' => 'mauritisk rupie',
@@ -778,7 +815,7 @@ $currencyNames = array(
'OMR' => 'omansk rial',
'PAB' => 'panamansk balboa',
'PEI' => 'peruansk inti',
- 'PEN' => 'peruansk nuevo sol',
+ 'PEN' => 'peruansk sol',
'PES' => 'peruansk sol (1863–1965)',
'PGK' => 'papuansk kina',
'PHP' => 'filippinsk peso',
@@ -811,7 +848,8 @@ $currencyNames = array(
'SRD' => 'surinamesisk dollar',
'SRG' => 'surinamesisk gulden',
'SSP' => 'sydsudanesiskt pund',
- 'STD' => 'saotomeansk dobra',
+ 'STD' => 'saotomeansk dobra (1977–2017)',
+ 'STN' => 'saotomeansk dobra',
'SUR' => 'sovjetisk rubel',
'SVC' => 'salvadoransk colón',
'SYP' => 'syriskt pund',
@@ -841,7 +879,8 @@ $currencyNames = array(
'UYU' => 'uruguayansk peso',
'UZS' => 'uzbekisk sum',
'VEB' => 'venezuelansk bolivar (1871–2008)',
- 'VEF' => 'venezuelansk bolívar',
+ 'VEF' => 'venezuelansk bolívar (2008–2018)',
+ 'VES' => 'venezuelansk bolívar',
'VND' => 'vietnamesisk dong',
'VNN' => 'vietnamesisk dong (1978–1985)',
'VUV' => 'vanuatisk vatu',
@@ -857,7 +896,7 @@ $currencyNames = array(
'XDR' => 'IMF särskild dragningsrätt',
'XEU' => 'europeisk valutaenhet',
'XFO' => 'fransk guldfranc',
- 'XFU' => 'French UIC-Franc',
+ 'XFU' => 'internationella järnvägsunionens franc',
'XOF' => 'västafrikansk franc',
'XPD' => 'palladium',
'XPF' => 'CFP-franc',
@@ -866,7 +905,7 @@ $currencyNames = array(
'XSU' => 'latinamerikansk sucre',
'XTS' => 'test-valutakod',
'XUA' => 'afrikansk kontoenhet',
- 'XXX' => 'okänd eller ogiltig valuta',
+ 'XXX' => 'okänd valuta',
'YDD' => 'jemenitisk dinar',
'YER' => 'jemenitisk rial',
'YUD' => 'jugoslavisk dinar (1966–1990)',
@@ -882,9 +921,9 @@ $currencyNames = array(
'ZWD' => 'Zimbabwe-dollar',
'ZWL' => 'Zimbabwe-dollar (2009)',
'ZWR' => 'Zimbabwe-dollar (2008)',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'AED' => 'AED',
'AFN' => 'AFN',
'ALL' => 'ALL',
@@ -909,12 +948,14 @@ $currencySymbols = array(
'BSD' => 'BS$',
'BTN' => 'BTN',
'BWP' => 'BWP',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZ$',
- 'CAD' => 'CAN$',
+ 'CAD' => 'CA$',
'CDF' => 'CDF',
'CHF' => 'CHF',
'CLP' => 'CLP',
+ 'CNH' => 'CNH',
'CNX' => 'CNX',
'CNY' => 'CNY',
'COP' => 'COP',
@@ -950,6 +991,7 @@ $currencySymbols = array(
'HTG' => 'HTG',
'HUF' => 'HUF',
'IDR' => 'IDR',
+ 'IEP' => 'IE£',
'ILS' => '₪',
'INR' => 'INR',
'IQD' => 'IQD',
@@ -985,6 +1027,7 @@ $currencySymbols = array(
'MNT' => 'MNT',
'MOP' => 'MOP',
'MRO' => 'MRO',
+ 'MRU' => 'MRU',
'MTL' => 'MTL',
'MUR' => 'MUR',
'MVP' => 'MVP',
@@ -1026,9 +1069,11 @@ $currencySymbols = array(
'SRD' => 'SRD',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'STN',
'SYP' => 'SYP',
'SZL' => 'SZL',
'THB' => 'THB',
+ 'TJR' => 'TJR',
'TJS' => 'TJS',
'TMT' => 'TMT',
'TND' => 'TND',
@@ -1044,6 +1089,7 @@ $currencySymbols = array(
'UYU' => 'UYU',
'UZS' => 'UZS',
'VEF' => 'VEF',
+ 'VES' => 'VES',
'VND' => 'VND',
'VUV' => 'VUV',
'WST' => 'WST',
@@ -1058,9 +1104,9 @@ $currencySymbols = array(
'YUN' => 'YUN',
'ZAR' => 'ZAR',
'ZMW' => 'ZMW',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'Ascension',
'AD' => 'Andorra',
'AE' => 'Förenade Arabemiraten',
@@ -1069,7 +1115,6 @@ $countryNames = array(
'AI' => 'Anguilla',
'AL' => 'Albanien',
'AM' => 'Armenien',
- 'AN' => 'Nederländska Antillerna',
'AO' => 'Angola',
'AQ' => 'Antarktis',
'AR' => 'Argentina',
@@ -1136,6 +1181,7 @@ $countryNames = array(
'ES' => 'Spanien',
'ET' => 'Etiopien',
'EU' => 'Europeiska unionen',
+ 'EZ' => 'eurozonen',
'FI' => 'Finland',
'FJ' => 'Fiji',
'FK' => 'Falklandsöarna',
@@ -1208,7 +1254,7 @@ $countryNames = array(
'MC' => 'Monaco',
'MD' => 'Moldavien',
'ME' => 'Montenegro',
- 'MF' => 'S:t Martin',
+ 'MF' => 'Saint-Martin',
'MG' => 'Madagaskar',
'MH' => 'Marshallöarna',
'MK' => 'Makedonien',
@@ -1302,6 +1348,7 @@ $countryNames = array(
'UA' => 'Ukraina',
'UG' => 'Uganda',
'UM' => 'USA:s yttre öar',
+ 'UN' => 'FN',
'US' => 'USA',
'UY' => 'Uruguay',
'UZ' => 'Uzbekistan',
@@ -1320,9 +1367,11 @@ $countryNames = array(
'ZA' => 'Sydafrika',
'ZM' => 'Zambia',
'ZW' => 'Zimbabwe',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-one' => '{0} århundrade',
+ 'century-other' => '{0} århundraden',
'day-future-one' => 'om {0} dag',
'day-future-other' => 'om {0} dagar',
'day-narrow-future-one' => '+{0} d',
@@ -1337,6 +1386,18 @@ $timeUnits = array(
'day-short-future-other' => 'om {0} d',
'day-short-past-one' => 'för {0} d sedan',
'day-short-past-other' => 'för {0} d sedan',
+ 'fri-future-one' => 'om {0} fredag',
+ 'fri-future-other' => 'om {0} fredagar',
+ 'fri-narrow-future-one' => '+{0} fre',
+ 'fri-narrow-future-other' => '+{0} fre',
+ 'fri-narrow-past-one' => '−{0} fre',
+ 'fri-narrow-past-other' => '−{0} fre',
+ 'fri-past-one' => 'för {0} fredag sedan',
+ 'fri-past-other' => 'för {0} fredagar sedan',
+ 'fri-short-future-one' => 'om {0} fre.',
+ 'fri-short-future-other' => 'om {0} fre.',
+ 'fri-short-past-one' => 'för {0} fre. sen',
+ 'fri-short-past-other' => 'för {0} fred. sen',
'hour-future-one' => 'om {0} timme',
'hour-future-other' => 'om {0} timmar',
'hour-narrow-future-one' => '+{0} h',
@@ -1357,8 +1418,8 @@ $timeUnits = array(
'millisecond-other' => '{0} millisekunder',
'minute-future-one' => 'om {0} minut',
'minute-future-other' => 'om {0} minuter',
- 'minute-narrow-future-one' => '+{0} m',
- 'minute-narrow-future-other' => '+{0} m',
+ 'minute-narrow-future-one' => '+{0} min',
+ 'minute-narrow-future-other' => '+{0} min',
'minute-narrow-past-one' => '−{0} min',
'minute-narrow-past-other' => '−{0} min',
'minute-one' => '{0} minut',
@@ -1367,36 +1428,60 @@ $timeUnits = array(
'minute-past-other' => 'för {0} minuter sedan',
'minute-short-future-one' => 'om {0} min',
'minute-short-future-other' => 'om {0} min',
- 'minute-short-past-one' => 'för {0} min sedan',
- 'minute-short-past-other' => 'för {0} min sedan',
+ 'minute-short-past-one' => 'för {0} min sen',
+ 'minute-short-past-other' => 'för {0} min sen',
+ 'mon-future-one' => 'om {0} måndag',
+ 'mon-future-other' => 'om {0} måndagar',
+ 'mon-narrow-future-one' => '+{0} må.',
+ 'mon-narrow-future-other' => '+{0} må.',
+ 'mon-narrow-past-one' => '–{0} månd',
+ 'mon-narrow-past-other' => '–{0} månd',
+ 'mon-past-one' => 'för {0} måndag sedan',
+ 'mon-past-other' => 'för {0} måndagar sedan',
+ 'mon-short-future-one' => 'om {0} månd.',
+ 'mon-short-future-other' => 'om {0} månd.',
+ 'mon-short-past-one' => 'för {0} månd. sen',
+ 'mon-short-past-other' => 'för {0} månd. sen',
'month-future-one' => 'om {0} månad',
'month-future-other' => 'om {0} månader',
'month-narrow-future-one' => '+{0} mån.',
'month-narrow-future-other' => '+{0} mån.',
- 'month-narrow-past-one' => '-{0} mån.',
- 'month-narrow-past-other' => '-{0} mån.',
+ 'month-narrow-past-one' => '−{0} mån',
+ 'month-narrow-past-other' => '−{0} mån',
'month-one' => '{0} månad',
'month-other' => '{0} månader',
'month-past-one' => 'för {0} månad sedan',
'month-past-other' => 'för {0} månader sedan',
'month-short-future-one' => 'om {0} mån.',
'month-short-future-other' => 'om {0} mån.',
- 'month-short-past-one' => 'för {0} mån. sedan',
- 'month-short-past-other' => 'för {0} mån. sedan',
+ 'month-short-past-one' => 'för {0} mån. sen',
+ 'month-short-past-other' => 'för {0} mån. sen',
'nanosecond-one' => '{0} nanosekund',
'nanosecond-other' => '{0} nanosekunder',
'quarter-future-one' => 'om {0} kvartal',
'quarter-future-other' => 'om {0} kvartal',
'quarter-narrow-future-one' => '+{0} kv.',
'quarter-narrow-future-other' => '+{0} kv.',
- 'quarter-narrow-past-one' => '-{0} kv.',
- 'quarter-narrow-past-other' => '-{0} kv.',
+ 'quarter-narrow-past-one' => '−{0} kv',
+ 'quarter-narrow-past-other' => '−{0} kv',
'quarter-past-one' => 'för {0} kvartal sedan',
'quarter-past-other' => 'för {0} kvartal sedan',
'quarter-short-future-one' => 'om {0} kv.',
'quarter-short-future-other' => 'om {0} kv.',
- 'quarter-short-past-one' => 'för {0} kv. sedan',
- 'quarter-short-past-other' => 'för {0} kv. sedan',
+ 'quarter-short-past-one' => 'för {0} kv. sen',
+ 'quarter-short-past-other' => 'för {0} kv. sen',
+ 'sat-future-one' => 'om {0} lördag',
+ 'sat-future-other' => 'om {0} lördagar',
+ 'sat-narrow-future-one' => '+{0} lör',
+ 'sat-narrow-future-other' => '+{0} lör',
+ 'sat-narrow-past-one' => '−{0} lör',
+ 'sat-narrow-past-other' => '−{0} lör',
+ 'sat-past-one' => 'för {0} lördag sedan',
+ 'sat-past-other' => 'för {0} lördagar sedan',
+ 'sat-short-future-one' => 'om {0} lör.',
+ 'sat-short-future-other' => 'om {0} lör.',
+ 'sat-short-past-one' => 'för {0} lör. sen',
+ 'sat-short-past-other' => 'för {0} lör. sen',
'second-future-one' => 'om {0} sekund',
'second-future-other' => 'om {0} sekunder',
'second-narrow-future-one' => '+{0} s',
@@ -1409,14 +1494,62 @@ $timeUnits = array(
'second-past-other' => 'för {0} sekunder sedan',
'second-short-future-one' => 'om {0} sek',
'second-short-future-other' => 'om {0} sek',
- 'second-short-past-one' => 'för {0} sek sedan',
- 'second-short-past-other' => 'för {0} sek sedan',
+ 'second-short-past-one' => 'för {0} s sen',
+ 'second-short-past-other' => 'för {0} s sen',
+ 'sun-future-one' => 'om {0} söndag',
+ 'sun-future-other' => 'om {0} söndagar',
+ 'sun-narrow-future-one' => '+{0} sön',
+ 'sun-narrow-future-other' => '+{0} sön',
+ 'sun-narrow-past-one' => '−{0} sön',
+ 'sun-narrow-past-other' => '−{0} sön',
+ 'sun-past-one' => 'för {0} söndag sedan',
+ 'sun-past-other' => 'för {0} söndagar sedan',
+ 'sun-short-future-one' => 'om {0} sön.',
+ 'sun-short-future-other' => 'om {0} sön.',
+ 'sun-short-past-one' => 'för {0} sön. sen',
+ 'sun-short-past-other' => 'för {0} sön. sen',
+ 'thu-future-one' => 'om {0} torsdag',
+ 'thu-future-other' => 'om {0} torsdagar',
+ 'thu-narrow-future-one' => '+{0} tors',
+ 'thu-narrow-future-other' => '+{0} tors',
+ 'thu-narrow-past-one' => '−{0} tors',
+ 'thu-narrow-past-other' => '−{0} tors',
+ 'thu-past-one' => 'för {0} torsdag sedan',
+ 'thu-past-other' => 'för {0} torsdagar sedan',
+ 'thu-short-future-one' => 'om {0} tors.',
+ 'thu-short-future-other' => 'om {0} tors.',
+ 'thu-short-past-one' => 'för {0} tors. sen',
+ 'thu-short-past-other' => 'för {0} tors. sen',
+ 'tue-future-one' => 'om {0} tisdag',
+ 'tue-future-other' => 'om {0} tisdagar',
+ 'tue-narrow-future-one' => '+{0} tis',
+ 'tue-narrow-future-other' => '+{0} tis',
+ 'tue-narrow-past-one' => '−{0} tis',
+ 'tue-narrow-past-other' => '−{0} tis',
+ 'tue-past-one' => 'för {0} tisdag sedan',
+ 'tue-past-other' => 'för {0} tisdagar sedan',
+ 'tue-short-future-one' => 'om {0} tis.',
+ 'tue-short-future-other' => 'om {0} tis.',
+ 'tue-short-past-one' => 'för {0} tis. sen',
+ 'tue-short-past-other' => 'för {0} tis. sen',
+ 'wed-future-one' => 'om {0} onsdag',
+ 'wed-future-other' => 'om {0} onsdagar',
+ 'wed-narrow-future-one' => '+{0} ons',
+ 'wed-narrow-future-other' => '+{0} ons',
+ 'wed-narrow-past-one' => '−{0} ons',
+ 'wed-narrow-past-other' => '−{0} ons',
+ 'wed-past-one' => 'för {0} onsdag sedan',
+ 'wed-past-other' => 'för {0} onsdagar sedan',
+ 'wed-short-future-one' => 'om {0} ons.',
+ 'wed-short-future-other' => 'om {0} ons.',
+ 'wed-short-past-one' => 'för {0} ons. sen',
+ 'wed-short-past-other' => 'för {0} ons. sen',
'week-future-one' => 'om {0} vecka',
'week-future-other' => 'om {0} veckor',
'week-narrow-future-one' => '+{0} v.',
'week-narrow-future-other' => '+{0} v.',
- 'week-narrow-past-one' => '-{0} v.',
- 'week-narrow-past-other' => '-{0} v.',
+ 'week-narrow-past-one' => '−{0} v',
+ 'week-narrow-past-other' => '−{0} v',
'week-one' => '{0} vecka',
'week-other' => '{0} veckor',
'week-past-one' => 'för {0} vecka sedan',
@@ -1429,14 +1562,14 @@ $timeUnits = array(
'year-future-other' => 'om {0} år',
'year-narrow-future-one' => '+{0} år',
'year-narrow-future-other' => '+{0} år',
- 'year-narrow-past-one' => '-{0} år',
- 'year-narrow-past-other' => '-{0} år',
+ 'year-narrow-past-one' => '−{0} år',
+ 'year-narrow-past-other' => '−{0} år',
'year-one' => '{0} år',
'year-other' => '{0} år',
'year-past-one' => 'för {0} år sedan',
'year-past-other' => 'för {0} år sedan',
'year-short-future-one' => 'om {0} år',
'year-short-future-other' => 'om {0} år',
- 'year-short-past-one' => 'för {0} år sedan',
- 'year-short-past-other' => 'för {0} år sedan',
-);
+ 'year-short-past-one' => 'för {0} år sen',
+ 'year-short-past-other' => 'för {0} år sen',
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesSw.php b/MLEB/cldr/CldrNames/CldrNamesSw.php
index 29820fe7..2a15a306 100644
--- a/MLEB/cldr/CldrNames/CldrNamesSw.php
+++ b/MLEB/cldr/CldrNames/CldrNamesSw.php
@@ -1,24 +1,38 @@
<?php
-$languageNames = array(
+$languageNames = [
+ 'aa' => 'Kiafar',
'ab' => 'Kiabkhazi',
+ 'ace' => 'Kiacheni',
'ach' => 'Kiakoli',
+ 'ada' => 'Kiadangme',
+ 'ady' => 'Kiadyghe',
'af' => 'Kiafrikana',
'agq' => 'Kiaghem',
+ 'ain' => 'Kiainu',
'ak' => 'Kiakani',
+ 'ale' => 'Kialeut',
+ 'alt' => 'Kialtai',
'am' => 'Kiamhari',
+ 'an' => 'Kiaragoni',
'ang' => 'Kiingereza cha Kale',
+ 'anp' => 'Kiangika',
'ar' => 'Kiarabu',
- 'ar-001' => 'Kiarabu Sanifu cha Kisasa',
+ 'ar-001' => 'Kiarabu sanifu',
'arc' => 'Kiaramu',
'arn' => 'Kimapuche',
- 'arq' => 'Kiarabu cha Kialjeria',
+ 'arp' => 'Kiarapaho',
+ 'arq' => 'Kiarabu cha Algeria',
'arz' => 'Kiarabu cha Misri',
'as' => 'Kiassam',
'asa' => 'Kiasu',
- 'ay' => 'Kiaimara',
- 'az' => 'Kiazabajani',
- 'ba' => 'Kibashkir',
+ 'ast' => 'Kiasturia',
+ 'av' => 'Kiavari',
+ 'awa' => 'Kiawadhi',
+ 'ay' => 'Kiaymara',
+ 'az' => 'Kiazerbaijani',
+ 'ba' => 'Kibashkiri',
+ 'ban' => 'Kibali',
'bas' => 'Kibasaa',
'bax' => 'Kibamun',
'bbj' => 'Kighomala',
@@ -28,177 +42,251 @@ $languageNames = array(
'bez' => 'Kibena',
'bfd' => 'Kibafut',
'bg' => 'Kibulgaria',
+ 'bgn' => 'Kibalochi cha Magharibi',
+ 'bho' => 'Kibhojpuri',
+ 'bi' => 'Kibislama',
+ 'bin' => 'Kibini',
'bkm' => 'Kikom',
+ 'bla' => 'Kisiksika',
'bm' => 'Kibambara',
'bn' => 'Kibengali',
'bo' => 'Kitibeti',
'br' => 'Kibretoni',
- 'brx' => 'brx',
+ 'brx' => 'Kibodo',
'bs' => 'Kibosnia',
+ 'bug' => 'Kibugini',
'bum' => 'Kibulu',
+ 'byn' => 'Kiblin',
'byv' => 'Kimedumba',
'ca' => 'Kikatalani',
+ 'ce' => 'Kichechenia',
+ 'ceb' => 'Kichebuano',
'cgg' => 'Kichiga',
+ 'ch' => 'Kichamorro',
+ 'chk' => 'Kichukisi',
+ 'chm' => 'Kimari',
+ 'cho' => 'Kichoktao',
'chr' => 'Kicherokee',
+ 'chy' => 'Kicheyeni',
'ckb' => 'Kikurdi cha Sorani',
'co' => 'Kikosikani',
'cop' => 'Kikhufti',
+ 'crs' => 'Krioli ya Shelisheli',
'cs' => 'Kicheki',
+ 'cu' => 'Kislovakia cha Kanisa',
+ 'cv' => 'Kichuvash',
'cy' => 'Kiwelisi',
'da' => 'Kidenmaki',
+ 'dak' => 'Kidakota',
+ 'dar' => 'Kidaragwa',
'dav' => 'Kitaita',
'de' => 'Kijerumani',
+ 'dgr' => 'Kidogrib',
'dje' => 'Kizarma',
- 'dsb' => 'Kidolnoserbski',
+ 'dsb' => 'Kisobia cha Chini',
'dua' => 'Kiduala',
'dv' => 'Kidivehi',
'dyo' => 'Kijola-Fonyi',
'dyu' => 'Kijula',
'dz' => 'Kizongkha',
+ 'dzg' => 'Kidazaga',
'ebu' => 'Kiembu',
'ee' => 'Kiewe',
- 'efi' => 'Kiefiki',
+ 'efi' => 'Kiefik',
'egy' => 'Kimisri',
'eka' => 'Kiekajuk',
'el' => 'Kigiriki',
'en' => 'Kiingereza',
+ 'en-ca' => 'Kiingereza (Canada)',
+ 'en-gb' => 'Kiingereza (Uingereza)',
'eo' => 'Kiesperanto',
'es' => 'Kihispania',
- 'es-es' => 'Kihispania cha Ulaya',
+ 'es-419' => 'Kihispania (Amerika ya Latini)',
+ 'es-es' => 'Kihispania (Ulaya)',
'et' => 'Kiestonia',
- 'eu' => 'Kibasque',
+ 'eu' => 'Kibaski',
'ewo' => 'Kiewondo',
'fa' => 'Kiajemi',
- 'ff' => 'Kifulfulde',
- 'fi' => 'Kifinlandi',
+ 'ff' => 'Kifulani',
+ 'fi' => 'Kifini',
'fil' => 'Kifilipino',
'fj' => 'Kifiji',
'fo' => 'Kifaroe',
'fon' => 'Kifon',
'fr' => 'Kifaransa',
+ 'fr-ca' => 'Kifaransa (Canada)',
'fro' => 'Kifaransa cha Kale',
'frr' => 'Kifrisia cha Kaskazini',
'frs' => 'Kifrisia cha Mashariki',
+ 'fur' => 'Kifriulian',
'fy' => 'Kifrisia cha Magharibi',
'ga' => 'Kiayalandi',
- 'gaa' => 'Kiga',
- 'gag' => 'Kigagauzi',
+ 'gaa' => 'Ga',
+ 'gag' => 'Kigagauz',
'gba' => 'Kigbaya',
'gd' => 'Kigaeli cha Uskoti',
'gez' => 'Kige’ez',
+ 'gil' => 'Kikiribati',
'gl' => 'Kigalisi',
'gn' => 'Kiguarani',
+ 'gor' => 'Kigorontalo',
'grc' => 'Kiyunani',
'gsw' => 'Kijerumani cha Uswisi',
'gu' => 'Kigujarati',
'guz' => 'Kikisii',
'gv' => 'Kimanx',
+ 'gwi' => 'Gwichʼin',
'ha' => 'Kihausa',
'haw' => 'Kihawai',
'he' => 'Kiebrania',
'hi' => 'Kihindi',
+ 'hil' => 'Kihiligaynon',
'hit' => 'Kihiti',
- 'hr' => 'Kroeshia',
- 'hsb' => 'hsb',
+ 'hmn' => 'Kihmong',
+ 'hr' => 'Kikroeshia',
+ 'hsb' => 'Kisobia cha Ukanda wa Juu',
'ht' => 'Kihaiti',
- 'hu' => 'Kihungari',
+ 'hu' => 'Kihungaria',
+ 'hup' => 'Hupa',
'hy' => 'Kiarmenia',
'hz' => 'Kiherero',
'ia' => 'Kiintalingua',
+ 'iba' => 'Kiiban',
'ibb' => 'Kiibibio',
'id' => 'Kiindonesia',
'ie' => 'lugha ya kisayansi',
'ig' => 'Kiigbo',
- 'ii' => 'Sichuan Yi',
- 'is' => 'Kiaisilandi',
+ 'ii' => 'Kiyi cha Sichuan',
+ 'ilo' => 'Kiilocano',
+ 'inh' => 'Kiingush',
+ 'io' => 'Kiido',
+ 'is' => 'Kiisilandi',
'it' => 'Kiitaliano',
- 'iu' => 'iu',
+ 'iu' => 'Kiinuktituti',
'ja' => 'Kijapani',
+ 'jbo' => 'Lojban',
'jgo' => 'Kingomba',
'jmc' => 'Kimachame',
'jv' => 'Kijava',
'ka' => 'Kijojia',
'kab' => 'Kikabylia',
+ 'kac' => 'Kachin',
+ 'kaj' => 'Kijju',
'kam' => 'Kikamba',
+ 'kbd' => 'Kikabardian',
'kbl' => 'Kikanembu',
+ 'kcg' => 'Kityap',
'kde' => 'Kimakonde',
'kea' => 'Kikabuverdianu',
'kfo' => 'Kikoro',
'kg' => 'Kikongo',
- 'khq' => 'Kikoyra Chiini',
+ 'kha' => 'Kikhasi',
+ 'khq' => 'Koyra Chiini',
'ki' => 'Kikikuyu',
'kj' => 'Kikwanyama',
- 'kk' => 'Kikazaki',
- 'kkj' => 'Kikako',
+ 'kk' => 'Kikazakh',
+ 'kkj' => 'Lugha ya Kako',
'kl' => 'Kikalaallisut',
'kln' => 'Kikalenjin',
'km' => 'Kikambodia',
'kmb' => 'Kimbundu',
'kn' => 'Kikannada',
'ko' => 'Kikorea',
- 'koi' => 'Kikomipermyak',
- 'kok' => 'kok',
+ 'koi' => 'Kikomi-Permyak',
+ 'kok' => 'Kikonkani',
+ 'kpe' => 'Kikpelle',
'kr' => 'Kikanuri',
+ 'krc' => 'Kikarachay-Balkar',
+ 'krl' => 'Karjala',
+ 'kru' => 'Kurukh',
'ks' => 'Kikashmiri',
'ksb' => 'Kisambaa',
'ksf' => 'Kibafia',
+ 'ksh' => 'Kicologne',
'ku' => 'Kikurdi',
+ 'kum' => 'Kumyk',
'kv' => 'Kikomi',
'kw' => 'Kikorni',
- 'ky' => 'Kikirigizi',
+ 'ky' => 'Kikyrgyz',
'la' => 'Kilatini',
+ 'lad' => 'Kiladino',
'lag' => 'Kirangi',
- 'lam' => 'Chilamba',
+ 'lam' => 'Lamba',
'lb' => 'Kilasembagi',
+ 'lez' => 'Kilezighian',
'lg' => 'Kiganda',
+ 'li' => 'Limburgish',
'lkt' => 'Kilakota',
'ln' => 'Kilingala',
'lo' => 'Kilaosi',
'lol' => 'Kimongo',
'loz' => 'Kilozi',
+ 'lrc' => 'Kiluri cha Kaskazini',
'lt' => 'Kilithuania',
'lu' => 'Kiluba-Katanga',
'lua' => 'Kiluba-Lulua',
'lun' => 'Kilunda',
'luo' => 'Kijaluo',
+ 'lus' => 'Kimizo',
'luy' => 'Kiluhya',
'lv' => 'Kilatvia',
+ 'mad' => 'Kimadura',
'maf' => 'Kimafa',
'mag' => 'Kimagahi',
+ 'mai' => 'Kimaithili',
+ 'mak' => 'Kimakasar',
'mas' => 'Kimaasai',
'mde' => 'Kimaba',
+ 'mdf' => 'Lugha ya Moksha',
'men' => 'Kimende',
'mer' => 'Kimeru',
'mfe' => 'Kimoriseni',
- 'mg' => 'Malagasi',
+ 'mg' => 'Kimalagasi',
'mgh' => 'Kimakhuwa-Meetto',
'mgo' => 'Kimeta',
+ 'mh' => 'Kimashale',
'mi' => 'Kimaori',
- 'mk' => 'Kimasedonia',
- 'ml' => 'Kimalayalam',
+ 'mic' => 'Mi’kmaq',
+ 'min' => 'Kiminangkabau',
+ 'mk' => 'Kimacedonia',
+ 'ml' => 'Kimalayalamu',
'mn' => 'Kimongolia',
- 'moh' => 'Kimohoki',
+ 'mni' => 'Kimanipuri',
+ 'moh' => 'Lugha ya Mohawk',
'mos' => 'Kimoore',
'mr' => 'Kimarathi',
- 'ms' => 'Kimalesia',
+ 'ms' => 'Kimalei',
'mt' => 'Kimalta',
'mua' => 'Kimundang',
'mul' => 'Lugha Nyingi',
+ 'mus' => 'Kikriki',
+ 'mwl' => 'Kimirandi',
'my' => 'Kiburma',
+ 'myv' => 'Kierzya',
+ 'mzn' => 'Kimazanderani',
+ 'na' => 'Kinauru',
+ 'nap' => 'Kinapoli',
'naq' => 'Kinama',
- 'nb' => 'Kibokmal cha Norwe',
+ 'nb' => 'Kinorwe cha Bokmal',
'nd' => 'Kindebele cha Kaskazini',
+ 'nds' => 'Kisaksoni',
'ne' => 'Kinepali',
'new' => 'Kinewari',
'ng' => 'Kindonga',
+ 'nia' => 'Kiniasi',
+ 'niu' => 'Kiniuea',
'nl' => 'Kiholanzi',
+ 'nl-be' => 'Kiflemi',
'nmg' => 'Kikwasio',
- 'nn' => 'Kinorwe Kipya',
+ 'nn' => 'Kinorwe cha Nynorsk',
+ 'nnh' => 'Lugha ya Ngiemboon',
'no' => 'Kinorwe',
+ 'nog' => 'Kinogai',
'nqo' => 'N’Ko',
'nr' => 'Kindebele',
'nso' => 'Kisotho cha Kaskazini',
'nus' => 'Kinuer',
+ 'nv' => 'Kinavajo',
'nwc' => 'Kinewari cha kale',
'ny' => 'Kinyanja',
'nym' => 'Kinyamwezi',
@@ -210,34 +298,51 @@ $languageNames = array(
'or' => 'Kioriya',
'os' => 'Kiosetia',
'pa' => 'Kipunjabi',
+ 'pag' => 'Kipangasinan',
+ 'pam' => 'Kipampanga',
+ 'pap' => 'Kipapiamento',
+ 'pau' => 'Kipalau',
+ 'pcm' => 'Pijini ya Nigeria',
'peo' => 'Kiajemi cha Kale',
'pl' => 'Kipolandi',
+ 'prg' => 'Kiprussia',
'ps' => 'Kipashto',
'pt' => 'Kireno',
- 'qu' => 'Kiquechua',
+ 'pt-pt' => 'Kireno (Ulaya)',
+ 'qu' => 'Kikechua',
'quc' => 'Kʼicheʼ',
'rap' => 'Kirapanui',
- 'rar' => 'Kiraratonga',
+ 'rar' => 'Kirarotonga',
'rm' => 'Kiromanshi',
'rn' => 'Kirundi',
'ro' => 'Kiromania',
+ 'ro-md' => 'Kimoldova cha Romania',
'rof' => 'Kirombo',
'ru' => 'Kirusi',
+ 'rup' => 'Kiaromania',
'rw' => 'Kinyarwanda',
- 'rwk' => 'Kirwo',
+ 'rwk' => 'Lugha ya Rwa',
'sa' => 'Kisanskriti',
'sad' => 'Kisandawe',
+ 'sah' => 'Kisakha',
'sam' => 'Kiaramu cha Wasamaria',
'saq' => 'Kisamburu',
+ 'sat' => 'Kisantali',
+ 'sba' => 'Kingambay',
'sbp' => 'Kisangu',
+ 'sc' => 'Kisardinia',
+ 'scn' => 'Kisicilia',
+ 'sco' => 'Kiskoti',
'sd' => 'Kisindhi',
+ 'sdh' => 'Kikurdi cha Kusini',
'se' => 'Kisami cha Kaskazini',
'seh' => 'Kisena',
'ses' => 'Koyraboro Senni',
'sg' => 'Kisango',
'sh' => 'Kiserbia-kroeshia',
- 'shi' => 'Tachelhit',
- 'shu' => 'Kiarabu cha Chadi',
+ 'shi' => 'Kitachelhit',
+ 'shn' => 'Kishan',
+ 'shu' => 'Kiarabu cha Chad',
'si' => 'Kisinhala',
'sk' => 'Kislovakia',
'sl' => 'Kislovenia',
@@ -251,76 +356,95 @@ $languageNames = array(
'so' => 'Kisomali',
'sq' => 'Kialbania',
'sr' => 'Kiserbia',
+ 'srn' => 'Lugha ya Sranan Tongo',
'ss' => 'Kiswati',
'ssy' => 'Kisaho',
- 'st' => 'Kisotho cha Kusini',
+ 'st' => 'Kisotho',
'su' => 'Kisunda',
'suk' => 'Kisukuma',
'sus' => 'Kisusu',
'sv' => 'Kiswidi',
'sw' => 'Kiswahili',
'swb' => 'Shikomor',
- 'swc' => 'Kingwana',
- 'ta' => 'Kitamil',
+ 'syr' => 'Lugha ya Syriac',
+ 'ta' => 'Kitamili',
'te' => 'Kitelugu',
'tem' => 'Kitemne',
'teo' => 'Kiteso',
'tet' => 'Kitetum',
'tg' => 'Kitajiki',
- 'th' => 'Kitailandi',
+ 'th' => 'Kithai',
'ti' => 'Kitigrinya',
+ 'tig' => 'Kitigre',
'tk' => 'Kiturukimeni',
'tlh' => 'Kiklingoni',
'tn' => 'Kitswana',
'to' => 'Kitonga',
'tpi' => 'Kitokpisin',
'tr' => 'Kituruki',
+ 'trv' => 'Kitaroko',
'ts' => 'Kitsonga',
'tt' => 'Kitatari',
'tum' => 'Kitumbuka',
- 'tw' => 'Kitwi',
+ 'tvl' => 'Kituvalu',
+ 'tw' => 'Twi',
'twq' => 'Kitasawaq',
'ty' => 'Kitahiti',
- 'tzm' => 'Central Atlas Tamazight',
- 'ug' => 'Kiuiguri',
- 'uk' => 'Kiukrania',
+ 'tyv' => 'Kituva',
+ 'tzm' => 'Kitamazighati cha Atlasi ya Kati',
+ 'udm' => 'Kiudmurt',
+ 'ug' => 'Kiuyghur',
+ 'uk' => 'Kiukraini',
+ 'umb' => 'Umbundu',
'und' => 'Lugha Isiyojulikana',
'ur' => 'Kiurdu',
'uz' => 'Kiuzbeki',
'vai' => 'Kivai',
've' => 'Kivenda',
'vi' => 'Kivietinamu',
+ 'vo' => 'Kivolapuk',
'vun' => 'Kivunjo',
+ 'wa' => 'Kiwaloon',
+ 'wae' => 'Kiwalser',
+ 'wal' => 'Kiwolaytta',
+ 'war' => 'Kiwaray',
+ 'wbp' => 'Kiwarlpiri',
'wo' => 'Kiwolofu',
+ 'xal' => 'Kikalmyk',
'xh' => 'Kixhosa',
'xog' => 'Kisoga',
'yao' => 'Kiyao',
+ 'yav' => 'Kiyangben',
'ybb' => 'Kiyemba',
- 'yi' => 'Kiyidi',
+ 'yi' => 'Kiyiddi',
'yo' => 'Kiyoruba',
- 'zgh' => 'Tamaziti Msingi ya Kimoroko',
+ 'yue' => 'Kikantoni',
+ 'zgh' => 'Kiberber Sanifu cha Moroko',
'zh' => 'Kichina',
+ 'zh-hans' => 'Kichina (Kilichorahisishwa)',
'zh-hant' => 'Kichina cha Jadi',
'zu' => 'Kizulu',
+ 'zun' => 'Kizuni',
'zxx' => 'Hakuna maudhui ya lugha',
-);
+ 'zza' => 'Kizaza',
+];
-$currencyNames = array(
+$currencyNames = [
'AED' => 'Dirham ya Falme za Kiarabu',
- 'AFN' => 'Afghani ya Afuganistani',
+ 'AFN' => 'Afghani ya Afghanistan',
'ALL' => 'Lek ya Albania',
'AMD' => 'Dram ya Armenia',
'ANG' => 'Guilder ya Antili za Kiholanzi',
'AOA' => 'Kwanza ya Angola',
- 'ARS' => 'Peso ya Ajentina',
+ 'ARS' => 'Peso ya Argentina',
'AUD' => 'Dola ya Australia',
'AWG' => 'Florin ya Aruba',
- 'AZN' => 'Manat ya Azebaijani',
+ 'AZN' => 'Manat ya Azerbaijan',
'BAM' => 'Convertible Mark ya Bosnia na Hezegovina',
'BBD' => 'Dola ya Barbados',
- 'BDT' => 'Taka ya Bangladeshi',
+ 'BDT' => 'Taka ya Bangladesh',
'BGN' => 'Lev ya Bulgaria',
- 'BHD' => 'Dinari ya Bahareni',
+ 'BHD' => 'Dinar ya Bahrain',
'BIF' => 'Faranga ya Burundi',
'BMD' => 'Dola ya Bermuda',
'BND' => 'Dola ya Brunei',
@@ -329,26 +453,28 @@ $currencyNames = array(
'BSD' => 'Dola ya Bahamas',
'BTN' => 'Ngultrum ya Bhutan',
'BWP' => 'Pula ya Botswana',
- 'BYR' => 'Ruble ya Belarusi',
+ 'BYN' => 'Ruble ya Belarus',
+ 'BYR' => 'Ruble ya Belarusi (2000–2016)',
'BZD' => 'Dola ya Belize',
- 'CAD' => 'Dola ya Kanada',
+ 'CAD' => 'Dola ya Canada',
'CDF' => 'Faranga ya Kongo',
'CHF' => 'Faranga ya Uswisi',
'CLP' => 'Peso ya Chile',
+ 'CNH' => 'Yuan ya Uchina (huru)',
'CNY' => 'Yuan ya Uchina',
- 'COP' => 'Peso ya Kolombia',
- 'CRC' => 'Colon ya Kostarika',
+ 'COP' => 'Peso ya Colombia',
+ 'CRC' => 'Colon ya Costa Rica',
'CUC' => 'Peso ya Cuba Inayoweza Kubadilishwa',
'CUP' => 'Peso ya Cuba',
- 'CVE' => 'Eskudo ya Kepuvede',
- 'CZK' => 'Koruna ya Jamhuri ya Cheki',
- 'DJF' => 'Faranga ya Jibuti',
- 'DKK' => 'Krone ya Denmaki',
- 'DOP' => 'Peso ya Dominika',
- 'DZD' => 'Dinari ya Aljeria',
+ 'CVE' => 'Eskudo ya Cape Verde',
+ 'CZK' => 'CZK',
+ 'DJF' => 'Faranga ya Djibouti',
+ 'DKK' => 'Krone ya Denmark',
+ 'DOP' => 'Peso ya Dominica',
+ 'DZD' => 'Dinar ya Aljeria',
'EGP' => 'Pauni ya Misri',
'ERN' => 'Nakfa ya Eritrea',
- 'ETB' => 'Nirr ya Uhabeshi',
+ 'ETB' => 'Birr ya Uhabeshi',
'EUR' => 'Yuro',
'FJD' => 'Dola ya Fiji',
'FKP' => 'Pauni ya Visiwa vya Falkland',
@@ -364,65 +490,66 @@ $currencyNames = array(
'GYD' => 'Dola ya Guyana',
'HKD' => 'Dola ya Hong Kong',
'HNL' => 'Lempira ya Hondurasi',
- 'HRK' => 'Kuna ya Kroeshia',
+ 'HRK' => 'Kuna ya Croatia',
'HTG' => 'Gourde ya Haiti',
'HUF' => 'Forint ya Hungaria',
'IDR' => 'Rupiah ya Indonesia',
- 'ILS' => 'Sheqel Mpya ya Israeli',
+ 'ILS' => 'Shekeli Mpya ya Israel',
'INR' => 'Rupia ya India',
- 'IQD' => 'Dinari ya Iraki',
+ 'IQD' => 'Dinar ya Iraq',
'IRR' => 'Rial ya Iran',
- 'ISK' => 'Krona ya Isilandi',
+ 'ISK' => 'Krona ya Aisilandi',
'JMD' => 'Dola ya Jamaica',
- 'JOD' => 'Dinari ya Yordani',
- 'JPY' => 'Yen ya Japani',
+ 'JOD' => 'Dinar ya Jordan',
+ 'JPY' => 'Yen ya Ujapani',
'KES' => 'Shilingi ya Kenya',
- 'KGS' => 'Som ya Kirigistani',
- 'KHR' => 'Riel ya Kambodia',
- 'KMF' => 'Faranga ya Komoro',
+ 'KGS' => 'Som ya Kyrgystan',
+ 'KHR' => 'Riel ya Cambodia',
+ 'KMF' => 'Faranga ya Comoros',
'KPW' => 'Won ya Korea Kaskazini',
'KRW' => 'Won ya Korea Kusini',
- 'KWD' => 'Dinari ya Kuwaiti',
+ 'KWD' => 'Dinar ya Kuwait',
'KYD' => 'Dola ya Visiwa vya Cayman',
- 'KZT' => 'Tenge ya Kazakistani',
+ 'KZT' => 'Tenge ya Kazakhstan',
'LAK' => 'Kip ya Laosi',
'LBP' => 'Pauni ya Lebanon',
- 'LKR' => 'Rupia ya Sirilanka',
+ 'LKR' => 'Rupia ya Sri Lanka',
'LRD' => 'Dola ya Liberia',
'LSL' => 'Loti ya Lesoto',
'LTL' => 'Litas ya Lithuania',
'LVL' => 'Lats ya Lativia',
'LYD' => 'Dinari ya Libya',
- 'MAD' => 'Dirham ya Moroko',
+ 'MAD' => 'Dirham ya Morocco',
'MDL' => 'Leu ya Moldova',
- 'MGA' => 'Ariari ya Madagaska',
- 'MKD' => 'Denar ya Masedonia',
- 'MMK' => 'Kyat ya Myama',
+ 'MGA' => 'Ariari ya Madagascar',
+ 'MKD' => 'Denar ya Macedonia',
+ 'MMK' => 'Kyat ya Myanmar',
'MNT' => 'Tugrik ya Mongolia',
'MOP' => 'Pataca ya Macau',
- 'MRO' => 'Ouguiya ya Moritania',
- 'MUR' => 'Rupia ya Morisi',
- 'MVR' => 'Rufiyaa ya Maldivi',
+ 'MRO' => 'Ouguiya ya Mauritania (1973–2017)',
+ 'MRU' => 'Ouguiya ya Mauritania',
+ 'MUR' => 'Rupia ya Mauritius',
+ 'MVR' => 'Rufiyaa ya Maldives',
'MWK' => 'Kwacha ya Malawi',
- 'MXN' => 'Peso ya Meksiko',
+ 'MXN' => 'Peso ya Mexico',
'MYR' => 'Ringgit ya Malaysia',
'MZM' => 'Metikali ya Msumbiji (1980–2006)',
'MZN' => 'Metikali ya Msumbiji',
'NAD' => 'Dola ya Namibia',
- 'NGN' => 'Naira ya Nijeria',
- 'NIO' => 'Cordoba ya Nikaragua',
- 'NOK' => 'Krone ya Norwe',
- 'NPR' => 'Rupia ya Nepali',
- 'NZD' => 'Dola ya Nyuzilandi',
+ 'NGN' => 'Naira ya Nigeria',
+ 'NIO' => 'Cordoba ya Nicaragua',
+ 'NOK' => 'Krone ya Norway',
+ 'NPR' => 'Rupia ya Nepal',
+ 'NZD' => 'Dola ya New Zealand',
'OMR' => 'Rial ya Omani',
'PAB' => 'Balboa ya Panama',
- 'PEN' => 'Nuevo Sol ya Peru',
+ 'PEN' => 'Sol ya Peru',
'PGK' => 'Kina ya Papua New Guinea',
'PHP' => 'Peso ya Ufilipino',
- 'PKR' => 'Rupia ya Pakistani',
- 'PLN' => 'Zloty ya Polandi',
- 'PYG' => 'Guarani ya Paragwai',
- 'QAR' => 'Rial ya Katari',
+ 'PKR' => 'Rupia ya Pakistan',
+ 'PLN' => 'Zloty ya Poland',
+ 'PYG' => 'Guarani ya Paraguay',
+ 'QAR' => 'Rial ya Qatar',
'RON' => 'Leu ya Romania',
'RSD' => 'Dinar ya Serbia',
'RUB' => 'Ruble ya Urusi',
@@ -430,49 +557,51 @@ $currencyNames = array(
'SAR' => 'Riyal ya Saudia',
'SBD' => 'Dola ya Visiwa vya Solomon',
'SCR' => 'Rupia ya Ushelisheli',
- 'SDG' => 'Pauni ya Sudani',
+ 'SDG' => 'Pauni ya Sudan',
'SDP' => 'Pauni ya Sudani (1957–1998)',
'SEK' => 'Krona ya Uswidi',
'SGD' => 'Dola ya Singapore',
- 'SHP' => 'Pauni ya Santahelena',
- 'SLL' => 'Leoni',
+ 'SHP' => 'Pauni ya St. Helena',
+ 'SLL' => 'Leone',
'SOS' => 'Shilingi ya Somalia',
'SRD' => 'Dola ya Suriname',
- 'SSP' => 'Pauni ya Sudani Kusini',
- 'STD' => 'Dobra ya Sao Tome na Principe',
+ 'SSP' => 'Pauni ya Sudan Kusini',
+ 'STD' => 'Dobra ya Sao Tome na Principe (1977–2017)',
+ 'STN' => 'Dobra ya Sao Tome na Principe',
'SYP' => 'Pauni ya Syria',
'SZL' => 'Lilangeni',
'THB' => 'Baht ya Tailandi',
- 'TJS' => 'Somoni ya Tajikistani',
- 'TMT' => 'Manat ya Turukimenistani',
+ 'TJS' => 'Somoni ya Tajikistan',
+ 'TMT' => 'Manat ya Turkmenistan',
'TND' => 'Dinari ya Tunisia',
'TOP' => 'Paʻanga ya Tonga',
'TRY' => 'Lira ya Uturuki',
'TTD' => 'Dola ya Trinidad na Tobago',
'TWD' => 'Dola ya Taiwan',
'TZS' => 'Shilingi ya Tanzania',
- 'UAH' => 'Hryvnia ya Ukrania',
+ 'UAH' => 'Hryvnia ya Ukraine',
'UGX' => 'Shilingi ya Uganda',
'USD' => 'Dola ya Marekani',
- 'UYU' => 'Peso ya Urugwai',
- 'UZS' => 'Som ya Uzibekistani',
- 'VEF' => 'Bolivar ya Venezuela',
- 'VND' => 'Dong ya Vietinamu',
+ 'UYU' => 'Peso ya Uruguay',
+ 'UZS' => 'Som ya Uzbekistan',
+ 'VEF' => 'Bolivar ya Venezuela (2008–2018)',
+ 'VES' => 'Bolivar ya Venezuela',
+ 'VND' => 'Dong ya Vietnam',
'VUV' => 'Vatu ya Vanuatu',
'WST' => 'Tala ya Samoa',
- 'XAF' => 'CFA faranga ya BEAC',
- 'XCD' => 'Dola ya Karibea ya Mashariki',
- 'XOF' => 'CFA faranga za BCEAO',
+ 'XAF' => 'Faranga ya Afrika ya Kati CFA',
+ 'XCD' => 'Dola ya Caribbean Mashariki',
+ 'XOF' => 'Faranga ya Afrika Magharibi CFA',
'XPF' => 'Faranga ya CFP',
- 'XXX' => 'Fedha Zisizojulikana',
- 'YER' => 'Rial ya Yemeni',
+ 'XXX' => 'Sarafu isiyojulikana',
+ 'YER' => 'Rial ya Yemen',
'ZAR' => 'Randi ya Afrika Kusini',
'ZMK' => 'Kwacha ya Zambia (1968–2012)',
'ZMW' => 'Kwacha ya Zambia',
'ZWD' => 'Dola ya Zimbabwe',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'AED' => 'AED',
'AFN' => 'AFN',
'ALL' => 'ALL',
@@ -496,12 +625,14 @@ $currencySymbols = array(
'BSD' => 'BSD',
'BTN' => 'BTN',
'BWP' => 'BWP',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CA$',
'CDF' => 'CDF',
'CHF' => 'CHF',
'CLP' => 'CLP',
+ 'CNH' => 'CNH',
'CNY' => 'CN¥',
'COP' => 'COP',
'CRC' => 'CRC',
@@ -565,6 +696,7 @@ $currencySymbols = array(
'MNT' => 'MNT',
'MOP' => 'MOP',
'MRO' => 'MRO',
+ 'MRU' => 'MRU',
'MUR' => 'MUR',
'MVR' => 'MVR',
'MWK' => 'MWK',
@@ -602,6 +734,7 @@ $currencySymbols = array(
'SRD' => 'SRD',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'STN',
'SYP' => 'SYP',
'SZL' => 'SZL',
'THB' => '฿',
@@ -619,6 +752,7 @@ $currencySymbols = array(
'UYU' => 'UYU',
'UZS' => 'UZS',
'VEF' => 'VEF',
+ 'VES' => 'VES',
'VND' => '₫',
'VUV' => 'VUV',
'WST' => 'WST',
@@ -629,27 +763,26 @@ $currencySymbols = array(
'YER' => 'YER',
'ZAR' => 'ZAR',
'ZMW' => 'ZMW',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'Kisiwa cha Ascension',
- 'AD' => 'Andora',
+ 'AD' => 'Andorra',
'AE' => 'Falme za Kiarabu',
'AF' => 'Afghanistan',
'AG' => 'Antigua na Barbuda',
'AI' => 'Anguilla',
'AL' => 'Albania',
'AM' => 'Armenia',
- 'AN' => 'Antili za Uholanzi',
'AO' => 'Angola',
- 'AQ' => 'Antaktika',
+ 'AQ' => 'Antaktiki',
'AR' => 'Ajentina',
'AS' => 'Samoa ya Marekani',
'AT' => 'Austria',
'AU' => 'Australia',
'AW' => 'Aruba',
- 'AX' => 'Visiwa vya Alandi',
- 'AZ' => 'Azabajani',
+ 'AX' => 'Visiwa vya Aland',
+ 'AZ' => 'Azerbaijani',
'BA' => 'Bosnia na Hezegovina',
'BB' => 'Babadosi',
'BD' => 'Bangladeshi',
@@ -659,17 +792,17 @@ $countryNames = array(
'BH' => 'Bahareni',
'BI' => 'Burundi',
'BJ' => 'Benin',
- 'BL' => 'Santabathelemi',
+ 'BL' => 'St. Barthelemy',
'BM' => 'Bermuda',
'BN' => 'Brunei',
'BO' => 'Bolivia',
'BQ' => 'Uholanzi ya Karibiani',
- 'BR' => 'Brazili',
+ 'BR' => 'Brazil',
'BS' => 'Bahama',
- 'BT' => 'Butani',
+ 'BT' => 'Bhutan',
'BV' => 'Kisiwa cha Bouvet',
'BW' => 'Botswana',
- 'BY' => 'Belarusi',
+ 'BY' => 'Belarus',
'BZ' => 'Belize',
'CA' => 'Kanada',
'CC' => 'Visiwa vya Cocos (Keeling)',
@@ -677,213 +810,215 @@ $countryNames = array(
'CF' => 'Jamhuri ya Afrika ya Kati',
'CG' => 'Kongo - Brazzaville',
'CH' => 'Uswisi',
- 'CI' => 'Côte d’Ivoire',
+ 'CI' => 'Cote d’Ivoire',
'CK' => 'Visiwa vya Cook',
'CL' => 'Chile',
'CM' => 'Kameruni',
- 'CN' => 'China',
+ 'CN' => 'Uchina',
'CO' => 'Kolombia',
'CP' => 'Kisiwa cha Clipperton',
'CR' => 'Kostarika',
- 'CU' => 'Kuba',
- 'CV' => 'Kepuvede',
- 'CW' => 'Kurakao',
+ 'CU' => 'Cuba',
+ 'CV' => 'Cape Verde',
+ 'CW' => 'Curacao',
'CX' => 'Kisiwa cha Krismasi',
- 'CY' => 'Saiprasi',
- 'CZ' => 'Jamhuri ya Cheki',
+ 'CY' => 'Cyprus',
+ 'CZ' => 'Chechia',
'DE' => 'Ujerumani',
'DG' => 'Diego Garcia',
'DJ' => 'Jibuti',
- 'DK' => 'Denmaki',
+ 'DK' => 'Denmark',
'DM' => 'Dominika',
'DO' => 'Jamhuri ya Dominika',
'DZ' => 'Aljeria',
'EA' => 'Ceuta na Melilla',
- 'EC' => 'Ekwado',
+ 'EC' => 'Ecuador',
'EE' => 'Estonia',
'EG' => 'Misri',
'EH' => 'Sahara Magharibi',
'ER' => 'Eritrea',
- 'ES' => 'Hispania',
- 'ET' => 'Uhabeshi',
+ 'ES' => 'Uhispania',
+ 'ET' => 'Ethiopia',
'EU' => 'Umoja wa Ulaya',
+ 'EZ' => 'EZ',
'FI' => 'Ufini',
'FJ' => 'Fiji',
'FK' => 'Visiwa vya Falkland',
- 'FM' => 'Mikronesia',
+ 'FM' => 'Micronesia',
'FO' => 'Visiwa vya Faroe',
'FR' => 'Ufaransa',
- 'GA' => 'Gaboni',
- 'GB' => 'Uingereza',
+ 'GA' => 'Gabon',
+ 'GB' => 'Ufalme wa Muungano',
'GD' => 'Grenada',
'GE' => 'Jojia',
- 'GF' => 'Gwiyana ya Ufaransa',
+ 'GF' => 'Guiana ya Ufaransa',
'GG' => 'Guernsey',
'GH' => 'Ghana',
- 'GI' => 'Jibralta',
- 'GL' => 'Grinlandi',
+ 'GI' => 'Gibraltar',
+ 'GL' => 'Greenland',
'GM' => 'Gambia',
'GN' => 'Gine',
- 'GP' => 'Gwadelupe',
- 'GQ' => 'Ginekweta',
+ 'GP' => 'Guadeloupe',
+ 'GQ' => 'Guinea ya Ikweta',
'GR' => 'Ugiriki',
- 'GS' => 'Jojia Kusini na Visiwa vya Sandwich Kusini',
- 'GT' => 'Gwatemala',
- 'GU' => 'Gwam',
+ 'GS' => 'Visiwa vya Georgia Kusini na Sandwich Kusini',
+ 'GT' => 'Guatemala',
+ 'GU' => 'Guam',
'GW' => 'Ginebisau',
'GY' => 'Guyana',
'HK' => 'Hong Kong',
'HM' => 'Kisiwa cha Heard na Visiwa vya McDonald',
- 'HN' => 'Hondurasi',
- 'HR' => 'Korasia',
+ 'HN' => 'Honduras',
+ 'HR' => 'Croatia',
'HT' => 'Haiti',
'HU' => 'Hungaria',
'IC' => 'Visiwa vya Kanari',
'ID' => 'Indonesia',
'IE' => 'Ayalandi',
'IL' => 'Israeli',
- 'IM' => 'Isle of Man',
+ 'IM' => 'Kisiwa cha Man',
'IN' => 'India',
'IO' => 'Eneo la Uingereza katika Bahari Hindi',
'IQ' => 'Iraki',
'IR' => 'Iran',
- 'IS' => 'Aislandi',
+ 'IS' => 'Aisilandi',
'IT' => 'Italia',
'JE' => 'Jersey',
'JM' => 'Jamaika',
- 'JO' => 'Yordani',
+ 'JO' => 'Jordan',
'JP' => 'Japani',
'KE' => 'Kenya',
'KG' => 'Kirigizistani',
'KH' => 'Kambodia',
'KI' => 'Kiribati',
'KM' => 'Komoro',
- 'KN' => 'Santakitzi na Nevis',
+ 'KN' => 'St. Kitts na Nevis',
'KP' => 'Korea Kaskazini',
'KR' => 'Korea Kusini',
- 'KW' => 'Kuwaiti',
- 'KY' => 'Visiwa vya Kayman',
+ 'KW' => 'Kuwait',
+ 'KY' => 'Visiwa vya Cayman',
'KZ' => 'Kazakistani',
- 'LA' => 'Laosi',
- 'LB' => 'Lebanoni',
- 'LC' => 'Santalusia',
+ 'LA' => 'Laos',
+ 'LB' => 'Lebanon',
+ 'LC' => 'St. Lucia',
'LI' => 'Liechtenstein',
- 'LK' => 'Sirilanka',
+ 'LK' => 'Sri Lanka',
'LR' => 'Liberia',
'LS' => 'Lesoto',
- 'LT' => 'Litwania',
- 'LU' => 'Lasembagi',
- 'LV' => 'Lativia',
+ 'LT' => 'Lithuania',
+ 'LU' => 'Luxembourg',
+ 'LV' => 'Latvia',
'LY' => 'Libya',
- 'MA' => 'Moroko',
- 'MC' => 'Monako',
+ 'MA' => 'Morocco',
+ 'MC' => 'Monaco',
'MD' => 'Moldova',
'ME' => 'Montenegro',
- 'MF' => 'Saint Martin',
+ 'MF' => 'St. Martin',
'MG' => 'Madagaska',
- 'MH' => 'Visiwa vya Marshal',
- 'MK' => 'Masedonia',
+ 'MH' => 'Visiwa vya Marshall',
+ 'MK' => 'Macedonia',
'ML' => 'Mali',
'MM' => 'Myanmar (Burma)',
'MN' => 'Mongolia',
'MO' => 'Macau',
'MP' => 'Visiwa vya Mariana vya Kaskazini',
- 'MQ' => 'Martiniki',
+ 'MQ' => 'Martinique',
'MR' => 'Moritania',
- 'MS' => 'Montserrati',
+ 'MS' => 'Montserrat',
'MT' => 'Malta',
'MU' => 'Morisi',
- 'MV' => 'Modivu',
+ 'MV' => 'Maldives',
'MW' => 'Malawi',
'MX' => 'Meksiko',
'MY' => 'Malesia',
'MZ' => 'Msumbiji',
'NA' => 'Namibia',
- 'NC' => 'Nyukaledonia',
- 'NE' => 'Nijeri',
+ 'NC' => 'New Caledonia',
+ 'NE' => 'Niger',
'NF' => 'Kisiwa cha Norfolk',
'NG' => 'Nigeria',
'NI' => 'Nikaragwa',
'NL' => 'Uholanzi',
- 'NO' => 'Norwe',
- 'NP' => 'Nepali',
+ 'NO' => 'Norway',
+ 'NP' => 'Nepal',
'NR' => 'Nauru',
'NU' => 'Niue',
'NZ' => 'Nyuzilandi',
- 'OM' => 'Omani',
+ 'OM' => 'Oman',
'PA' => 'Panama',
'PE' => 'Peru',
- 'PF' => 'Polinesia ya Ufaransa',
- 'PG' => 'Papua',
- 'PH' => 'Filipino',
+ 'PF' => 'Polynesia ya Ufaransa',
+ 'PG' => 'Papua New Guinea',
+ 'PH' => 'Ufilipino',
'PK' => 'Pakistani',
- 'PL' => 'Polandi',
- 'PM' => 'Santapieri na Mikeloni',
- 'PN' => 'Pitkairni',
- 'PR' => 'Pwetoriko',
+ 'PL' => 'Poland',
+ 'PM' => 'Santapierre na Miquelon',
+ 'PN' => 'Visiwa vya Pitcairn',
+ 'PR' => 'Puerto Rico',
'PS' => 'Palestina',
'PT' => 'Ureno',
'PW' => 'Palau',
- 'PY' => 'Paragwai',
- 'QA' => 'Katari',
+ 'PY' => 'Paraguay',
+ 'QA' => 'Qatar',
'QO' => 'Oceania ya Nje',
- 'RE' => 'Riyunioni',
+ 'RE' => 'Reunion',
'RO' => 'Romania',
'RS' => 'Serbia',
'RU' => 'Urusi',
'RW' => 'Rwanda',
- 'SA' => 'Saudi',
+ 'SA' => 'Saudia',
'SB' => 'Visiwa vya Solomon',
- 'SC' => 'Shelisheli',
- 'SD' => 'Sudani',
+ 'SC' => 'Ushelisheli',
+ 'SD' => 'Sudan',
'SE' => 'Uswidi',
- 'SG' => 'Singapoo',
- 'SH' => 'Santahelena',
+ 'SG' => 'Singapore',
+ 'SH' => 'St. Helena',
'SI' => 'Slovenia',
'SJ' => 'Svalbard na Jan Mayen',
'SK' => 'Slovakia',
'SL' => 'Siera Leoni',
- 'SM' => 'Samarino',
+ 'SM' => 'San Marino',
'SN' => 'Senegali',
'SO' => 'Somalia',
- 'SR' => 'Surinamu',
- 'SS' => 'Sudani Kusini',
+ 'SR' => 'Suriname',
+ 'SS' => 'Sudan Kusini',
'ST' => 'São Tomé na Príncipe',
- 'SV' => 'Elsavado',
- 'SX' => 'Santamatini',
- 'SY' => 'Siria',
+ 'SV' => 'El Salvador',
+ 'SX' => 'Sint Maarten',
+ 'SY' => 'Syria',
'SZ' => 'Uswazi',
'TA' => 'Tristan da Cunha',
- 'TC' => 'Visiwa vya Turki na Kaiko',
- 'TD' => 'Chadi',
- 'TF' => 'Maeneo ya Kusini ya Ufaransa',
+ 'TC' => 'Visiwa vya Turks na Caicos',
+ 'TD' => 'Chad',
+ 'TF' => 'Himaya za Kusini za Kifaranza',
'TG' => 'Togo',
'TH' => 'Tailandi',
'TJ' => 'Tajikistani',
'TK' => 'Tokelau',
- 'TL' => 'Timor ya Mashariki',
- 'TM' => 'Turukimenistani',
+ 'TL' => 'Timor-Leste',
+ 'TM' => 'Turkmenistan',
'TN' => 'Tunisia',
'TO' => 'Tonga',
'TR' => 'Uturuki',
'TT' => 'Trinidad na Tobago',
'TV' => 'Tuvalu',
- 'TW' => 'Taiwani',
+ 'TW' => 'Taiwan',
'TZ' => 'Tanzania',
- 'UA' => 'Ukraini',
+ 'UA' => 'Ukraine',
'UG' => 'Uganda',
'UM' => 'Visiwa Vidogo vya Nje vya Marekani',
+ 'UN' => 'Umoja wa Mataifa',
'US' => 'US',
- 'UY' => 'Urugwai',
+ 'UY' => 'Uruguay',
'UZ' => 'Uzibekistani',
- 'VA' => 'Vatikani',
- 'VC' => 'Santavisenti na Grenadini',
+ 'VA' => 'Mji wa Vatican',
+ 'VC' => 'St. Vincent na Grenadines',
'VE' => 'Venezuela',
- 'VG' => 'Visiwa vya Virgin vya Uingereza',
- 'VI' => 'Visiwa vya Virgin vya Marekani',
- 'VN' => 'Vietinamu',
+ 'VG' => 'Visiwa vya Virgin, Uingereza',
+ 'VI' => 'Visiwa vya Virgin, Marekani',
+ 'VN' => 'Vietnam',
'VU' => 'Vanuatu',
- 'WF' => 'Walis na Futuna',
+ 'WF' => 'Wallis na Futuna',
'WS' => 'Samoa',
'XK' => 'Kosovo',
'YE' => 'Yemeni',
@@ -891,9 +1026,11 @@ $countryNames = array(
'ZA' => 'Afrika Kusini',
'ZM' => 'Zambia',
'ZW' => 'Zimbabwe',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-one' => 'karne {0}',
+ 'century-other' => 'karne {0}',
'day-future-one' => 'baada ya siku {0}',
'day-future-other' => 'baada ya siku {0}',
'day-narrow-future-one' => 'baada ya siku {0}',
@@ -908,6 +1045,18 @@ $timeUnits = array(
'day-short-future-other' => 'baada ya siku {0}',
'day-short-past-one' => 'siku {0} iliyopita',
'day-short-past-other' => 'siku {0} zilizopita',
+ 'fri-future-one' => 'baada ya Ijumaa {0}',
+ 'fri-future-other' => 'baada ya Ijumaa {0}',
+ 'fri-narrow-future-one' => 'baada ya Ijumaa {0}',
+ 'fri-narrow-future-other' => 'baada ya Ijumaa {0}',
+ 'fri-narrow-past-one' => 'Ijumaa {0} iliyopita',
+ 'fri-narrow-past-other' => 'Ijumaa {0} zilizopita',
+ 'fri-past-one' => 'Ijumaa {0} iliyopita',
+ 'fri-past-other' => 'Ijumaa {0} zilizopita',
+ 'fri-short-future-one' => 'baada ya Ijumaa {0}',
+ 'fri-short-future-other' => 'baada ya Ijumaa {0}',
+ 'fri-short-past-one' => 'Ijumaa {0} iliyopita',
+ 'fri-short-past-other' => 'Ijumaa {0} zilizopita',
'hour-future-one' => 'baada ya saa {0}',
'hour-future-other' => 'baada ya saa {0}',
'hour-narrow-future-one' => 'baada ya saa {0}',
@@ -920,8 +1069,8 @@ $timeUnits = array(
'hour-past-other' => 'saa {0} zilizopita',
'hour-short-future-one' => 'baada ya saa {0}',
'hour-short-future-other' => 'baada ya saa {0}',
- 'hour-short-past-one' => 'Saa {0} iliyopita',
- 'hour-short-past-other' => 'Saa {0} zilizopita',
+ 'hour-short-past-one' => 'saa {0} iliyopita',
+ 'hour-short-past-other' => 'saa {0} zilizopita',
'microsecond-one' => 'mikrosekunde {0}',
'microsecond-other' => 'mikrosekunde {0}',
'millisecond-one' => 'millisekunde {0}',
@@ -930,16 +1079,28 @@ $timeUnits = array(
'minute-future-other' => 'baada ya dakika {0}',
'minute-narrow-future-one' => 'baada ya dakika {0}',
'minute-narrow-future-other' => 'baada ya dakika {0}',
- 'minute-narrow-past-one' => 'Dakika {0} iliyopita',
- 'minute-narrow-past-other' => 'Dakika {0} zilizopita',
+ 'minute-narrow-past-one' => 'dakika {0} iliyopita',
+ 'minute-narrow-past-other' => 'dakika {0} zilizopita',
'minute-one' => 'dakika {0}',
'minute-other' => 'dakika {0}',
'minute-past-one' => 'dakika {0} iliyopita',
'minute-past-other' => 'dakika {0} zilizopita',
'minute-short-future-one' => 'baada ya dakika {0}',
'minute-short-future-other' => 'baada ya dakika {0}',
- 'minute-short-past-one' => 'Dakika {0} iliyopita',
- 'minute-short-past-other' => 'Dakika {0} zilizopita',
+ 'minute-short-past-one' => 'dakika {0} iliyopita',
+ 'minute-short-past-other' => 'dakika {0} zilizopita',
+ 'mon-future-one' => 'baada ya Jumatatu {0}',
+ 'mon-future-other' => 'baada ya Jumatatu {0}',
+ 'mon-narrow-future-one' => 'baada ya Jumatatu {0}',
+ 'mon-narrow-future-other' => 'baada ya Jumatatu {0}',
+ 'mon-narrow-past-one' => 'Jumatatu {0} iliyopita',
+ 'mon-narrow-past-other' => 'Jumatatu {0} zilizopita',
+ 'mon-past-one' => 'Jumatatu {0} iliyopita',
+ 'mon-past-other' => 'Jumatatu {0} zilizopita',
+ 'mon-short-future-one' => 'baada ya Jumatatu {0}',
+ 'mon-short-future-other' => 'baada ya Jumatatu {0}',
+ 'mon-short-past-one' => 'Jumatatu {0} iliyopita',
+ 'mon-short-past-other' => 'Jumatatu {0} zilizopita',
'month-future-one' => 'baada ya mwezi {0}',
'month-future-other' => 'baada ya miezi {0}',
'month-narrow-future-one' => 'baada ya mwezi {0}',
@@ -968,20 +1129,80 @@ $timeUnits = array(
'quarter-short-future-other' => 'baada ya robo {0}',
'quarter-short-past-one' => 'robo {0} iliyopita',
'quarter-short-past-other' => 'robo {0} zilizopita',
+ 'sat-future-one' => 'baada ya Jumamosi {0}',
+ 'sat-future-other' => 'baada ya Jumamosi {0}',
+ 'sat-narrow-future-one' => 'baada ya Jumamosi {0}',
+ 'sat-narrow-future-other' => 'baada ya Jumamosi {0}',
+ 'sat-narrow-past-one' => 'Jumamosi {0} iliyopita',
+ 'sat-narrow-past-other' => 'Jumamosi {0} zilizopita',
+ 'sat-past-one' => 'Jumamosi {0} iliyopita',
+ 'sat-past-other' => 'Jumamosi {0} zilizopita',
+ 'sat-short-future-one' => 'baada ya Jumamosi {0}',
+ 'sat-short-future-other' => 'baada ya Jumamosi {0}',
+ 'sat-short-past-one' => 'Jumamosi {0} iliyopita',
+ 'sat-short-past-other' => 'Jumamosi {0} zilizopita',
'second-future-one' => 'baada ya sekunde {0}',
'second-future-other' => 'baada ya sekunde {0}',
'second-narrow-future-one' => 'baada ya sekunde {0}',
'second-narrow-future-other' => 'baada ya sekunde {0}',
- 'second-narrow-past-one' => 'Sekunde {0} iliyopita',
- 'second-narrow-past-other' => 'Sekunde {0} zilizopita',
+ 'second-narrow-past-one' => 'sekunde {0} iliyopita',
+ 'second-narrow-past-other' => 'sekunde {0} zilizopita',
'second-one' => 'sekunde {0}',
'second-other' => 'sekunde {0}',
'second-past-one' => 'Sekunde {0} iliyopita',
'second-past-other' => 'Sekunde {0} zilizopita',
'second-short-future-one' => 'baada ya sekunde {0}',
'second-short-future-other' => 'baada ya sekunde {0}',
- 'second-short-past-one' => 'Sekunde {0} iliyopita',
- 'second-short-past-other' => 'Sekunde {0} zilizopita',
+ 'second-short-past-one' => 'sekunde {0} iliyopita',
+ 'second-short-past-other' => 'sekunde {0} zilizopita',
+ 'sun-future-one' => 'baada ya Jumapili {0}',
+ 'sun-future-other' => 'baada ya Jumapili {0}',
+ 'sun-narrow-future-one' => 'baada ya Jumapili {0}',
+ 'sun-narrow-future-other' => 'baada ya Jumapili {0}',
+ 'sun-narrow-past-one' => 'Jumapili {0} iliyopita',
+ 'sun-narrow-past-other' => 'Jumapili {0} zilizopita',
+ 'sun-past-one' => 'Jumapili {0} iliyopita',
+ 'sun-past-other' => 'Jumapili {0} zilizopita',
+ 'sun-short-future-one' => 'baada ya Jumapili {0}',
+ 'sun-short-future-other' => 'baada ya Jumapili {0}',
+ 'sun-short-past-one' => 'Jumapili {0} iliyopita',
+ 'sun-short-past-other' => 'Jumapili {0} zilizopita',
+ 'thu-future-one' => 'baada ya Alhamisi {0}',
+ 'thu-future-other' => 'baada ya Alhamisi {0}',
+ 'thu-narrow-future-one' => 'baada ya Alhamisi {0}',
+ 'thu-narrow-future-other' => 'baada ya Alhamisi {0}',
+ 'thu-narrow-past-one' => 'Alhamisi {0} iliyopita',
+ 'thu-narrow-past-other' => 'Alhamisi {0} zilizopita',
+ 'thu-past-one' => 'Alhamisi {0} iliyopita',
+ 'thu-past-other' => 'Alhamisi {0} zilizopita',
+ 'thu-short-future-one' => 'baada ya Alhamisi {0}',
+ 'thu-short-future-other' => 'baada ya Alhamisi {0}',
+ 'thu-short-past-one' => 'Alhamisi {0} iliyopita',
+ 'thu-short-past-other' => 'Alhamisi {0} zilizopita',
+ 'tue-future-one' => 'baada ya Jumanne {0}',
+ 'tue-future-other' => 'baada ya Jumanne {0}',
+ 'tue-narrow-future-one' => 'baada ya Jumanne {0}',
+ 'tue-narrow-future-other' => 'baada ya Jumanne {0}',
+ 'tue-narrow-past-one' => 'Jumanne {0} iliyopita',
+ 'tue-narrow-past-other' => 'Jumanne {0} zilizopita',
+ 'tue-past-one' => 'Jumanne {0} iliyopita',
+ 'tue-past-other' => 'Jumanne {0} zilizopita',
+ 'tue-short-future-one' => 'baada ya Jumanne {0}',
+ 'tue-short-future-other' => 'baada ya Jumanne {0}',
+ 'tue-short-past-one' => 'Jumanne {0} iliyopita',
+ 'tue-short-past-other' => 'Jumanne {0} zilizopita',
+ 'wed-future-one' => 'baada ya Jumatano {0}',
+ 'wed-future-other' => 'baada ya Jumatano {0}',
+ 'wed-narrow-future-one' => 'baada ya Jumatano {0}',
+ 'wed-narrow-future-other' => 'baada ya Jumatano {0}',
+ 'wed-narrow-past-one' => 'Jumatano {0} iliyopita',
+ 'wed-narrow-past-other' => 'Jumatano {0} zilizopita',
+ 'wed-past-one' => 'Jumatano {0} iliyopita',
+ 'wed-past-other' => 'Jumatano {0} zilizopita',
+ 'wed-short-future-one' => 'baada ya Jumatano {0}',
+ 'wed-short-future-other' => 'baada ya Jumatano {0}',
+ 'wed-short-past-one' => 'Jumatano {0} iliyopita',
+ 'wed-short-past-other' => 'Jumatano {0} zilizopita',
'week-future-one' => 'baada ya wiki {0}',
'week-future-other' => 'baada ya wiki {0}',
'week-narrow-future-one' => 'baada ya wiki {0}',
@@ -1010,4 +1231,4 @@ $timeUnits = array(
'year-short-future-other' => 'baada ya miaka {0}',
'year-short-past-one' => 'mwaka {0} uliopita',
'year-short-past-other' => 'miaka {0} iliyopita',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesTa.php b/MLEB/cldr/CldrNames/CldrNamesTa.php
index d430e238..9092de1b 100644
--- a/MLEB/cldr/CldrNames/CldrNamesTa.php
+++ b/MLEB/cldr/CldrNames/CldrNamesTa.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'அஃபார்',
'ab' => 'அப்காஜியான்',
'ace' => 'ஆச்சினீஸ்',
@@ -22,20 +22,20 @@ $languageNames = array(
'ang' => 'பழைய ஆங்கிலம்',
'anp' => 'அங்கிகா',
'ar' => 'அரபிக்',
- 'ar-001' => 'மாடர்ன் ஸ்டாண்டர்ட் அரபிக்',
+ 'ar-001' => 'நவீன நிலையான அரபிக்',
'arc' => 'அராமைக்',
- 'arn' => 'மபுசே',
+ 'arn' => 'மபுச்சே',
'arp' => 'அரபஹோ',
'arw' => 'அராவாக்',
- 'as' => 'அஸ்ஸாமி',
+ 'as' => 'அஸ்ஸாமீஸ்',
'asa' => 'அசு',
'ast' => 'அஸ்துரியன்',
'av' => 'அவேரிக்',
'awa' => 'அவதி',
'ay' => 'அய்மரா',
'az' => 'அஸர்பைஜானி',
- 'ba' => 'பாஷ்கிர்',
- 'bal' => 'பெலுசி',
+ 'ba' => 'பஷ்கிர்',
+ 'bal' => 'பலூச்சி',
'ban' => 'பலினீஸ்',
'bas' => 'பாஸா',
'be' => 'பெலாருஷியன்',
@@ -44,6 +44,7 @@ $languageNames = array(
'bez' => 'பெனா',
'bfq' => 'படகா',
'bg' => 'பல்கேரியன்',
+ 'bgn' => 'மேற்கு பலோச்சி',
'bho' => 'போஜ்பூரி',
'bi' => 'பிஸ்லாமா',
'bik' => 'பிகோல்',
@@ -64,7 +65,7 @@ $languageNames = array(
'cad' => 'கேடோ',
'car' => 'கரீப்',
'cch' => 'ஆட்சம்',
- 'ce' => 'செசென்',
+ 'ce' => 'செச்சென்',
'ceb' => 'செபுவானோ',
'cgg' => 'சிகா',
'ch' => 'சாமோரோ',
@@ -75,38 +76,40 @@ $languageNames = array(
'chn' => 'சினூக் ஜார்கான்',
'cho' => 'சோக்தௌ',
'chp' => 'சிபெவ்யான்',
- 'chr' => 'செரொகி',
+ 'chr' => 'செரோகீ',
'chy' => 'செயேனி',
- 'ckb' => 'சொரானி குர்திஷ்',
- 'co' => 'கோர்சிகன்',
+ 'ckb' => 'மத்திய குர்திஷ்',
+ 'co' => 'கார்சிகன்',
'cop' => 'காப்டிக்',
'cr' => 'க்ரீ',
'crh' => 'கிரிமியன் துர்க்கி',
+ 'crs' => 'செசெல்வா க்ரெயோல் பிரெஞ்சு',
'cs' => 'செக்',
'csb' => 'கஷுபியன்',
'cu' => 'சர்ச் ஸ்லாவிக்',
'cv' => 'சுவாஷ்',
- 'cy' => 'வெல்ஷ்',
+ 'cy' => 'வேல்ஷ்',
'da' => 'டேனிஷ்',
- 'dak' => 'தகோடா',
+ 'dak' => 'டகோடா',
'dar' => 'தார்குவா',
'dav' => 'டைடா',
'de' => 'ஜெர்மன்',
'de-at' => 'ஆஸ்திரிய ஜெர்மன்',
'de-ch' => 'ஸ்விஸ் ஹை ஜெர்மன்',
- 'del' => 'தெலாவேர்',
+ 'del' => 'டெலாவர்',
'den' => 'ஸ்லாவ்',
'dgr' => 'டோக்ரிப்',
'din' => 'டின்கா',
- 'dje' => 'சார்மா',
+ 'dje' => 'ஸார்மா',
'doi' => 'டோக்ரி',
'dsb' => 'லோயர் சோர்பியன்',
'dua' => 'டுவாலா',
- 'dum' => 'மத்திய டச்சு',
+ 'dum' => 'மிடில் டச்சு',
'dv' => 'திவேஹி',
'dyo' => 'ஜோலா-ஃபோன்யி',
'dyu' => 'ட்யூலா',
'dz' => 'பூடானி',
+ 'dzg' => 'டசாகா',
'ebu' => 'எம்பு',
'ee' => 'ஈவ்',
'efi' => 'எஃபிக்',
@@ -115,21 +118,21 @@ $languageNames = array(
'el' => 'கிரேக்கம்',
'elx' => 'எலமைட்',
'en' => 'ஆங்கிலம்',
- 'en-au' => 'ஆஸ்திரேலியன் ஆங்கிலம்',
- 'en-ca' => 'கனடியன் ஆங்கிலம்',
+ 'en-au' => 'ஆஸ்திரேலிய ஆங்கிலம்',
+ 'en-ca' => 'கனடிய ஆங்கிலம்',
'en-gb' => 'பிரிட்டிஷ் ஆங்கிலம்',
'en-us' => 'அமெரிக்க ஆங்கிலம்',
- 'enm' => 'மத்திய ஆங்கிலம்',
+ 'enm' => 'மிடில் ஆங்கிலம்',
'eo' => 'எஸ்பரேன்டோ',
'es' => 'ஸ்பானிஷ்',
'es-419' => 'லத்தின் அமெரிக்க ஸ்பானிஷ்',
'es-es' => 'ஐரோப்பிய ஸ்பானிஷ்',
- 'es-mx' => 'மெக்சிகன் ஸ்பானிஷ்',
+ 'es-mx' => 'மெக்ஸிகன் ஸ்பானிஷ்',
'et' => 'எஸ்டோனியன்',
- 'eu' => 'பஸ்க்',
+ 'eu' => 'பாஸ்க்',
'ewo' => 'எவோன்டோ',
'fa' => 'பெர்ஷியன்',
- 'fan' => 'ஃபங்க்',
+ 'fan' => 'ஃபேங்க்',
'fat' => 'ஃபான்டி',
'ff' => 'ஃபுலா',
'fi' => 'ஃபின்னிஷ்',
@@ -140,23 +143,25 @@ $languageNames = array(
'fr' => 'பிரெஞ்சு',
'fr-ca' => 'கனடிய பிரெஞ்சு',
'fr-ch' => 'ஸ்விஸ் பிரஞ்சு',
- 'frm' => 'மத்திய ஃப்ரென்ச்',
- 'fro' => 'பழைய ஃப்ரென்ச்',
+ 'frc' => 'கஜுன் பிரெஞ்சு',
+ 'frm' => 'மிடில் பிரெஞ்சு',
+ 'fro' => 'பழைய பிரெஞ்சு',
'frr' => 'வடக்கு ஃப்ரிஸியான்',
'frs' => 'கிழக்கு ஃப்ரிஸியான்',
'fur' => 'ஃப்ரியூலியன்',
- 'fy' => 'மேற்கத்திய ஃப்ரிஷியன்',
+ 'fy' => 'மேற்கு ஃப்ரிஷியன்',
'ga' => 'ஐரிஷ்',
'gaa' => 'கா',
'gag' => 'காகௌஸ்',
+ 'gan' => 'கன் சீனம்',
'gay' => 'கயோ',
'gba' => 'பயா',
'gd' => 'ஸ்காட்ஸ் கேலிக்',
'gez' => 'கீஜ்',
'gil' => 'கில்பெர்டீஸ்',
'gl' => 'காலிஸியன்',
- 'gmh' => 'மத்திய ஹை ஜெர்மன்',
- 'gn' => 'குரானி',
+ 'gmh' => 'மிடில் ஹை ஜெர்மன்',
+ 'gn' => 'க்வாரனி',
'goh' => 'பழைய ஹை ஜெர்மன்',
'gon' => 'கோன்டி',
'gor' => 'கோரோன்டலோ',
@@ -170,23 +175,26 @@ $languageNames = array(
'gwi' => 'குவிசின்',
'ha' => 'ஹௌஸா',
'hai' => 'ஹைடா',
+ 'hak' => 'ஹக்கா சீனம்',
'haw' => 'ஹவாயியன்',
'he' => 'ஹீப்ரூ',
'hi' => 'இந்தி',
- 'hif' => 'பிஜி இந்தி',
+ 'hif' => 'ஃபிஜி இந்தி',
'hil' => 'ஹிலிகாய்னான்',
'hit' => 'ஹிட்டைட்',
'hmn' => 'மாங்க்',
'ho' => 'ஹிரி மோட்டு',
'hr' => 'குரோஷியன்',
'hsb' => 'அப்பர் சோர்பியான்',
- 'ht' => 'ஹைத்தியன்',
+ 'hsn' => 'சியாங்க் சீனம்',
+ 'ht' => 'ஹைத்தியன் க்ரியோலி',
'hu' => 'ஹங்கேரியன்',
'hup' => 'ஹுபா',
'hy' => 'ஆர்மேனியன்',
'hz' => 'ஹெரேரோ',
- 'ia' => 'இண்டர்லிங்வா',
+ 'ia' => 'இன்டர்லிங்வா',
'iba' => 'இபான்',
+ 'ibb' => 'இபிபியோ',
'id' => 'இந்தோனேஷியன்',
'ie' => 'இன்டர்லிங்',
'ig' => 'இக்போ',
@@ -195,7 +203,7 @@ $languageNames = array(
'ilo' => 'இலோகோ',
'inh' => 'இங்குஷ்',
'io' => 'இடோ',
- 'is' => 'ஐஸ்லென்டிக்',
+ 'is' => 'ஐஸ்லேண்டிக்',
'it' => 'இத்தாலியன்',
'iu' => 'இனுகிடூட்',
'ja' => 'ஜப்பானியம்',
@@ -204,7 +212,7 @@ $languageNames = array(
'jmc' => 'மாசெம்',
'jpr' => 'ஜூதேயோ-பெர்ஷியன்',
'jrb' => 'ஜூதேயோ-அராபிக்',
- 'jv' => 'ஜாவானீஸ்',
+ 'jv' => 'ஜாவனீஸ்',
'ka' => 'ஜார்ஜியன்',
'kaa' => 'காரா-கல்பாக்',
'kab' => 'கபாய்ல்',
@@ -224,6 +232,7 @@ $languageNames = array(
'ki' => 'கிகுயூ',
'kj' => 'குவான்யாமா',
'kk' => 'கசாக்',
+ 'kkj' => 'ககோ',
'kl' => 'கலாலிசூட்',
'kln' => 'கலின்ஜின்',
'km' => 'கெமெர்',
@@ -241,10 +250,11 @@ $languageNames = array(
'ks' => 'காஷ்மிரி',
'ksb' => 'ஷம்பாலா',
'ksf' => 'பாஃபியா',
+ 'ksh' => 'கொலோக்னியன்',
'ku' => 'குர்திஷ்',
'kum' => 'கும்இக்',
'kut' => 'குடேனை',
- 'kv' => 'கோமி',
+ 'kv' => 'கொமி',
'kw' => 'கார்னிஷ்',
'ky' => 'கிர்கிஸ்',
'la' => 'லத்தின்',
@@ -260,14 +270,16 @@ $languageNames = array(
'ln' => 'லிங்காலா',
'lo' => 'லாவோ',
'lol' => 'மோங்கோ',
+ 'lou' => 'லூசியானா க்ரயோல்',
'loz' => 'லோசி',
+ 'lrc' => 'வடக்கு லுரி',
'lt' => 'லிதுவேனியன்',
'lu' => 'லுபா-கடாங்கா',
'lua' => 'லுபா-லுலுலா',
'lui' => 'லுய்சேனோ',
'lun' => 'லூன்டா',
'luo' => 'லுயோ',
- 'lus' => 'லுஷய்',
+ 'lus' => 'மிஸோ',
'luy' => 'லுயியா',
'lv' => 'லாட்வியன்',
'mad' => 'மதுரீஸ்',
@@ -282,19 +294,19 @@ $languageNames = array(
'mer' => 'மெரு',
'mfe' => 'மொரிசியன்',
'mg' => 'மலகாஸி',
- 'mga' => 'மத்திய ஐரிஷ்',
+ 'mga' => 'மிடில் ஐரிஷ்',
'mgh' => 'மகுவா-மீட்டோ',
'mgo' => 'மேடா',
- 'mh' => 'மார்ஷெலிஷ்',
+ 'mh' => 'மார்ஷெலீஸ்',
'mi' => 'மௌரி',
'mic' => 'மிக்மாக்',
'min' => 'மின்னாங்கபௌ',
'mk' => 'மாஸிடோனியன்',
'ml' => 'மலையாளம்',
'mn' => 'மங்கோலியன்',
- 'mnc' => 'மன்சு',
- 'mni' => 'மனிபூரி',
- 'moh' => 'மோஹாவ்க்',
+ 'mnc' => 'மன்சூ',
+ 'mni' => 'மணிப்புரி',
+ 'moh' => 'மொஹாக்',
'mos' => 'மோஸ்ஸி',
'mr' => 'மராத்தி',
'ms' => 'மலாய்',
@@ -304,24 +316,28 @@ $languageNames = array(
'mus' => 'க்ரீக்',
'mwl' => 'மிரான்டீஸ்',
'mwr' => 'மார்வாரி',
- 'my' => 'பர்மிஸ்',
+ 'my' => 'பர்மீஸ்',
'myv' => 'ஏர்ஜியா',
+ 'mzn' => 'மசந்தேரனி',
'na' => 'நவ்ரூ',
+ 'nan' => 'மின் நான் சீனம்',
'nap' => 'நியோபோலிடன்',
'naq' => 'நாமா',
'nb' => 'நார்வேஜியன் பொக்மால்',
'nd' => 'வடக்கு தெபெலே',
'nds' => 'லோ ஜெர்மன்',
+ 'nds-nl' => 'லோ சாக்ஸன்',
'ne' => 'நேபாளி',
'new' => 'நெவாரி',
'ng' => 'தோங்கா',
'nia' => 'நியாஸ்',
'niu' => 'நியூவான்',
'nl' => 'டச்சு',
- 'nl-be' => 'பிலெமிஷ்',
+ 'nl-be' => 'ஃப்லெமிஷ்',
'nmg' => 'க்வாசியோ',
'nn' => 'நார்வேஜியன் நியூநார்ஸ்க்',
- 'no' => 'நார்வே',
+ 'nnh' => 'நெகெய்ம்பூன்',
+ 'no' => 'நார்வேஜியன்',
'nog' => 'நோகை',
'non' => 'பழைய நோர்ஸ்',
'nqo' => 'என்‘கோ',
@@ -336,30 +352,32 @@ $languageNames = array(
'nyo' => 'நியோரோ',
'nzi' => 'நிஜ்மா',
'oc' => 'ஒக்கிடன்',
- 'oj' => 'ஓஜிபவா',
+ 'oj' => 'ஒஜிப்வா',
'om' => 'ஒரோமோ',
- 'or' => 'ஒரியா',
+ 'or' => 'ஒடியா',
'os' => 'ஒசெட்டிக்',
'osa' => 'ஓசேஜ்',
- 'ota' => 'ஒட்டோமன் துர்க்கி',
+ 'ota' => 'ஓட்டோமான் துருக்கிஷ்',
'pa' => 'பஞ்சாபி',
'pag' => 'பன்காசினன்',
'pal' => 'பாஹ்லவி',
'pam' => 'பம்பாங்கா',
- 'pap' => 'பபியேமென்டோ',
- 'pau' => 'பலௌவ்ன்',
+ 'pap' => 'பபியாமென்டோ',
+ 'pau' => 'பலௌவன்',
+ 'pcm' => 'நைஜீரியன் பிட்கின்',
'pdc' => 'பென்சில்வேனிய ஜெர்மன்',
'peo' => 'பழைய பெர்ஷியன்',
'phn' => 'ஃபொனிஷியன்',
'pi' => 'பாலி',
'pl' => 'போலிஷ்',
'pon' => 'ஃபோன்பெயென்',
+ 'prg' => 'பிரஷ்யன்',
'pro' => 'பழைய ப்ரோவென்சால்',
'ps' => 'பஷ்தோ',
'pt' => 'போர்ச்சுக்கீஸ்',
- 'pt-br' => 'போர்ச்சுகீஸ் (பிரேசில்)',
+ 'pt-br' => 'பிரேசிலிய போர்ச்சுகீஸ்',
'pt-pt' => 'ஐரோப்பிய போர்ச்சுகீஸ்',
- 'qu' => 'கிவேசுவா',
+ 'qu' => 'க்வெச்சுவா',
'quc' => 'கீசீ',
'raj' => 'ராஜஸ்தானி',
'rap' => 'ரபனுய்',
@@ -376,31 +394,33 @@ $languageNames = array(
'rwk' => 'ருவா',
'sa' => 'சமஸ்கிருதம்',
'sad' => 'சான்டாவே',
- 'sah' => 'யாகுட்',
+ 'sah' => 'சக்கா',
'sam' => 'சமாரிடன் அராமைக்',
'saq' => 'சம்புரு',
'sas' => 'சாசாக்',
'sat' => 'சான்டாலி',
'saz' => 'சௌராஷ்டிரம்',
+ 'sba' => 'நெகாம்பே',
'sbp' => 'சங்கு',
- 'sc' => 'சாடினியன்',
+ 'sc' => 'சார்தீனியன்',
'scn' => 'சிசிலியன்',
'sco' => 'ஸ்காட்ஸ்',
'sd' => 'சிந்தி',
+ 'sdh' => 'தெற்கு குர்திஷ்',
'se' => 'வடக்கு சமி',
'seh' => 'செனா',
'sel' => 'செல்குப்',
'ses' => 'கொய்ராபோரோ சென்னி',
'sg' => 'சாங்கோ',
'sga' => 'பழைய ஐரிஷ்',
- 'sh' => 'செர்போ-க்ரோஷியன்',
+ 'sh' => 'செர்போ-குரோஷியன்',
'shi' => 'தசேஹித்',
'shn' => 'ஷான்',
'si' => 'சிங்களம்',
'sid' => 'சிடாமோ',
'sk' => 'ஸ்லோவாக்',
'sl' => 'ஸ்லோவேனியன்',
- 'sm' => 'ஸாமோவான்',
+ 'sm' => 'சமோவான்',
'sma' => 'தெற்கு சமி',
'smj' => 'லுலே சமி',
'smn' => 'இனாரி சமி',
@@ -414,15 +434,16 @@ $languageNames = array(
'srn' => 'ஸ்ரானன் டோங்கோ',
'srr' => 'செரெர்',
'ss' => 'ஸ்வாடீ',
+ 'ssy' => 'சஹோ',
'st' => 'தெற்கு ஸோதோ',
'su' => 'சுண்டானீஸ்',
'suk' => 'சுகுமா',
'sus' => 'சுசு',
'sux' => 'சுமேரியன்',
'sv' => 'ஸ்வீடிஷ்',
- 'sw' => 'சுவாஹிலி',
+ 'sw' => 'ஸ்வாஹிலி',
+ 'sw-cd' => 'காங்கோ ஸ்வாஹிலி',
'swb' => 'கொமோரியன்',
- 'swc' => 'காங்கோ சுவாஹிலி',
'syc' => 'பாரம்பரிய சிரியாக்',
'syr' => 'சிரியாக்',
'ta' => 'தமிழ்',
@@ -431,22 +452,23 @@ $languageNames = array(
'teo' => 'டெசோ',
'ter' => 'டெரெனோ',
'tet' => 'டெடும்',
- 'tg' => 'தாஜிக்',
+ 'tg' => 'தஜிக்',
'th' => 'தாய்',
'ti' => 'டிக்ரின்யா',
'tig' => 'டைக்ரே',
'tiv' => 'டிவ்',
- 'tk' => 'டர்க்மென்',
+ 'tk' => 'துருக்மென்',
'tkl' => 'டோகேலௌ',
'tl' => 'டாகாலோக்',
'tlh' => 'க்ளிங்கோன்',
- 'tli' => 'டிலிங்கிட்',
- 'tmh' => 'டாமாஷேக்',
+ 'tli' => 'லிங்கிட்',
+ 'tmh' => 'தமஷேக்',
'tn' => 'ஸ்வானா',
'to' => 'டோங்கான்',
'tog' => 'நயாசா டோங்கா',
'tpi' => 'டோக் பிஸின்',
- 'tr' => 'டர்கிஷ்',
+ 'tr' => 'துருக்கிஷ்',
+ 'trv' => 'தரோகோ',
'ts' => 'ஸோங்கா',
'tsi' => 'ட்ஸிம்ஷியன்',
'tt' => 'டாடர்',
@@ -454,12 +476,12 @@ $languageNames = array(
'tvl' => 'டுவாலு',
'tw' => 'ட்வி',
'twq' => 'டசவாக்',
- 'ty' => 'டஹிதியான்',
+ 'ty' => 'தஹிதியன்',
'tyv' => 'டுவினியன்',
- 'tzm' => 'மத்திய அட்லஸ் தமசைட்',
+ 'tzm' => 'மத்திய அட்லஸ் டமசைட்',
'udm' => 'உட்முர்ட்',
'ug' => 'உய்குர்',
- 'uga' => 'உகாரிட்க்',
+ 'uga' => 'உகாரிடிக்',
'uk' => 'உக்ரைனியன்',
'umb' => 'அம்பொண்டு',
'und' => 'அறியப்படாத மொழி',
@@ -467,21 +489,26 @@ $languageNames = array(
'uz' => 'உஸ்பெக்',
'vai' => 'வை',
've' => 'வென்டா',
- 'vi' => 'வியட்நாமிஸ்',
+ 'vi' => 'வியட்நாமீஸ்',
'vo' => 'ஒலாபூக்',
'vot' => 'வோட்க்',
'vun' => 'வுன்ஜோ',
'wa' => 'ஒவாலூன்',
- 'wal' => 'வாலாமோ',
+ 'wae' => 'வால்சேர்',
+ 'wal' => 'வோலாய்ட்டா',
'war' => 'வாரே',
'was' => 'வாஷோ',
- 'wo' => 'ஒலூஃப்',
+ 'wbp' => 'வல்பிரி',
+ 'wo' => 'ஓலோஃப்',
+ 'wuu' => 'வூ சீனம்',
'xal' => 'கல்மிக்',
'xh' => 'ஹோசா',
'xog' => 'சோகா',
'yao' => 'யாவ்',
- 'yap' => 'யாபேசி',
- 'yi' => 'இத்திஷ்',
+ 'yap' => 'யாபேசே',
+ 'yav' => 'யாங்பென்',
+ 'ybb' => 'யெம்பா',
+ 'yi' => 'யெட்டிஷ்',
'yo' => 'யோருபா',
'yue' => 'காண்டோனீஸ்',
'za' => 'ஜுவாங்',
@@ -496,23 +523,23 @@ $languageNames = array(
'zun' => 'ஜூனி',
'zxx' => 'மொழி உள்ளடக்கம் ஏதுமில்லை',
'zza' => 'ஜாஜா',
-);
+];
-$currencyNames = array(
- 'AED' => 'ஐக்கிய அரபு எமிரேட்ஸ் திர்ஹம்',
+$currencyNames = [
+ 'AED' => 'ஐக்கிய அரபு எமிரேட்ஸ் திர்ஹாம்',
'AFN' => 'ஆஃப்கான் ஆஃப்கானி',
'ALL' => 'அல்பேனியன் லெக்',
'AMD' => 'ஆர்மேனியன் ட்ராம்',
'ANG' => 'நெதர்லேண்ட்ஸ் அன்டிலியன் கில்டர்',
'AOA' => 'அங்கோலன் க்வான்ஸா',
- 'ARS' => 'அர்ஜென்டினா பேசோ',
+ 'ARS' => 'அர்ஜென்டைன் பெசோ',
'AUD' => 'ஆஸ்திரேலிய டாலர்',
'AWG' => 'அருபன் ஃப்ளோரின்',
'AZN' => 'அசர்பைஜானி மனத்',
'BAM' => 'போஸ்னியா-ஹெர்ஸேகோவினா கன்வெர்டிபில் மார்க்',
'BBD' => 'பார்பேடியன் டாலர்',
'BDT' => 'பங்களாதேஷி டாகா',
- 'BGN' => 'புல்கேரியன் லெவ்',
+ 'BGN' => 'பல்கேரியன் லேவ்',
'BHD' => 'பஹ்ரைனி தினார்',
'BIF' => 'புருண்டியன் ஃப்ராங்க்',
'BMD' => 'பெர்முடன் டாலர்',
@@ -520,52 +547,54 @@ $currencyNames = array(
'BOB' => 'பொலிவியன் பொலிவியானோ',
'BRL' => 'பிரேசிலியன் ரியால்',
'BSD' => 'பஹாமியன் டாலர்',
- 'BTN' => 'பூட்டானிஷ் நிகுல்ட்ரம்',
- 'BWP' => 'போட்ஸ்வானா புலா',
- 'BYR' => 'பெலருசியன் ரூபில்',
- 'BZD' => 'பெலீஷ் டாலர்',
+ 'BTN' => 'பூட்டானீஸ் குல்ட்ரம்',
+ 'BWP' => 'போட்ஸ்வானன் புலா',
+ 'BYN' => 'பெலருசியன் ரூபிள்',
+ 'BYR' => 'பெலருசியன் ரூபிள் (2000–2016)',
+ 'BZD' => 'பெலீஸ் டாலர்',
'CAD' => 'கனடியன் டாலர்',
'CDF' => 'காங்கோலீஸ் ஃப்ராங்க்',
'CHF' => 'சுவிஸ் ஃப்ராங்க்',
'CLP' => 'சிலியன் பெசோ',
+ 'CNH' => 'CNH',
'CNY' => 'சீன யுவான்',
'COP' => 'கொலம்பியன் பெசோ',
'CRC' => 'கோஸ்டா ரிகன் கொலோன்',
- 'CUC' => 'கியூபன் கன்வெர்டிபில் பேசோ',
+ 'CUC' => 'கியூபன் கன்வெர்டிபில் பெசோ',
'CUP' => 'கியூபன் பெசோ',
'CVE' => 'கேப் வெர்டியன் எஸ்குடோ',
'CZK' => 'செக் குடியரசு கொருனா',
'DJF' => 'ஜிபவ்டியென் ஃப்ராங்க்',
- 'DKK' => 'டானிஷ் க்ரோன்',
- 'DOP' => 'டொமினிக்கன் பேசோ',
+ 'DKK' => 'டேனிஷ் க்ரோன்',
+ 'DOP' => 'டொமினிக்கன் பெசோ',
'DZD' => 'அல்ஜீரியன் தினார்',
'EGP' => 'எகிப்திய பவுண்டு',
- 'ERN' => 'இரிடிரியன் நக்ஃபா',
+ 'ERN' => 'எரித்ரியன் நக்ஃபா',
'ETB' => 'எத்தியோப்பியன் பிர்',
'EUR' => 'யூரோ',
'FJD' => 'ஃபிஜியன் டாலர்',
'FKP' => 'ஃபாக்லாந்து தீவுகள் பவுண்டு',
- 'GBP' => 'பிரிட்டிஷ் பவுண்ட் ஸ்டெர்லிங்',
- 'GEL' => 'ஜியார்ஜியன் லாரி',
+ 'GBP' => 'பிரிட்டிஷ் பவுண்டு',
+ 'GEL' => 'ஜார்ஜியன் லாரி',
'GHS' => 'கானயன் சேடி',
- 'GIP' => 'கிப்ரால்டர் பவுண்ட்',
+ 'GIP' => 'ஜிப்ரால்டர் பவுண்டு',
'GMD' => 'கேம்பியன் தலாசி',
'GNF' => 'கினியன் ஃப்ராங்க்',
- 'GTQ' => 'குவாடெமெலன் குயூட்ஸல்',
+ 'GTQ' => 'குவாதெமாலன் க்யுட்ஸல்',
'GYD' => 'கயானீஸ் டாலர்',
'HKD' => 'ஹாங்காங் டாலர்',
'HNL' => 'ஹோன்டூரன் லெம்பீரா',
'HRK' => 'குரோஷியன் குனா',
- 'HTG' => 'ஹயேத்தியன் கோர்டே',
+ 'HTG' => 'ஹைட்டியன் கோர்டே',
'HUF' => 'ஹங்கேரியன் ஃபோரின்ட்',
'IDR' => 'இந்தோனேஷியன் ருபியா',
'ILS' => 'இஸ்ரேலி நியூ ஷிகேல்',
'INR' => 'இந்திய ரூபாய்',
'IQD' => 'ஈராக்கி தினார்',
- 'IRR' => 'இரானியன் ரியால்',
+ 'IRR' => 'ஈரானியன் ரியால்',
'ISK' => 'ஐஸ்லாண்டிக் க்ரோனா',
- 'JMD' => 'ஜமைக்கான் டாலர்',
- 'JOD' => 'ஜோர்டானியன் டைனர்',
+ 'JMD' => 'ஜமைக்கன் டாலர்',
+ 'JOD' => 'ஜோர்டானிய தினார்',
'JPY' => 'ஜப்பானிய யென்',
'KES' => 'கென்யன் ஷில்லிங்',
'KGS' => 'கிர்கிஸ்தானி சோம்',
@@ -576,37 +605,38 @@ $currencyNames = array(
'KWD' => 'குவைத்தி தினார்',
'KYD' => 'கேமன் தீவுகள் டாலர்',
'KZT' => 'கஸகஸ்தானி டென்கே',
- 'LAK' => 'லவுட்டியன் கிப்',
- 'LBP' => 'லெபனீஸ் பவுண்ட்',
+ 'LAK' => 'லவோஷியன் கிப்',
+ 'LBP' => 'லெபனீஸ் பவுண்டு',
'LKR' => 'இலங்கை ரூபாய்',
'LRD' => 'லைபீரியன் டாலர்',
'LSL' => 'லெசோதோ லோட்டி',
'LTL' => 'லிதுவேனியன் லிடஸ்',
'LVL' => 'லத்வியன் லாட்ஸ்',
'LYD' => 'லிபியன் தினார்',
- 'MAD' => 'மொராக்கோ திர்ஹாம்',
+ 'MAD' => 'மொராக்கன் திர்ஹாம்',
'MDL' => 'மால்டோவன் லியூ',
'MGA' => 'மலகாசி ஏரியரி',
- 'MKD' => 'மெசிடோனியன் தினார்',
+ 'MKD' => 'மாசிடோனியன் டேனார்',
'MMK' => 'மியான்மர் கியாத்',
'MNT' => 'மங்கோலியன் டுக்ரிக்',
'MOP' => 'மெகனீஸ் படாகா',
- 'MRO' => 'மொரிஷியனியன் ஒகுய்யா',
+ 'MRO' => 'மொரிஷானியன் ஒகுயா (1973–2017)',
+ 'MRU' => 'மொரிஷானியன் ஒகுயா',
'MUR' => 'மொரீஷியன் ருபீ',
'MVR' => 'மாலத்தீவு ருஃபியா',
'MWK' => 'மலாவியன் குவாச்சா',
'MXN' => 'மெக்ஸிகன் பெசோ',
- 'MYR' => 'மலேஷியன் ரிங்கித்',
- 'MZN' => 'மொசாம்பிகேன் மெடிகல்',
+ 'MYR' => 'மலேஷியன் ரிங்கிட்',
+ 'MZN' => 'மொசாம்பிகன் மெடிகல்',
'NAD' => 'நமீபியன் டாலர்',
'NGN' => 'நைஜீரியன் நைரா',
- 'NIO' => 'நிகாராகுவான் கோர்டோபா',
+ 'NIO' => 'நிகரகுவன் கோர்டோபா',
'NOK' => 'நார்வேஜியன் க்ரோன்',
'NPR' => 'நேபாளீஸ் ரூபாய்',
'NZD' => 'நியூசிலாந்து டாலர்',
'OMR' => 'ஓமானி ரியால்',
- 'PAB' => 'பனாமானியன் பால்போபா',
- 'PEN' => 'பெருவியன் நியூவோ சோல்',
+ 'PAB' => 'பனாமானியன் பால்போவா',
+ 'PEN' => 'பெரூவியன் சோல்',
'PGK' => 'பபுவா நியூ கினியன் கினா',
'PHP' => 'பிலிப்பைன் பெசோ',
'PKR' => 'பாகிஸ்தானி ரூபாய்',
@@ -616,51 +646,53 @@ $currencyNames = array(
'RON' => 'ரோமானியன் லியூ',
'RSD' => 'செர்பியன் தினார்',
'RUB' => 'ரஷியன் ரூபிள்',
- 'RWF' => 'ருவாண்டா ஃப்ராங்க்',
+ 'RWF' => 'ருவாண்டன் ஃப்ராங்க்',
'SAR' => 'சவுதி ரியால்',
'SBD' => 'சாலமன் தீவுகள் டாலர்',
'SCR' => 'சிசீலோயிஸ் ருபீ',
'SDG' => 'சூடானீஸ் பவுண்டு',
- 'SEK' => 'ஸ்வேதிஷ் க்ரோனா',
+ 'SEK' => 'ஸ்வீடிஷ் க்ரோனா',
'SGD' => 'சிங்கப்பூர் டாலர்',
'SHP' => 'செயின்ட் ஹெலேனா பவுண்டு',
'SLL' => 'சியாரா லியோனியன் லியோன்',
'SOS' => 'சோமாலி ஷில்லிங்',
'SRD' => 'சுரினாமீஸ் டாலர்',
'SSP' => 'தெற்கு சூடானீஸ் பவுண்டு',
- 'STD' => 'சாவ் டோமி மற்றும் பிரின்ஸ்பி டோப்ரா',
- 'SYP' => 'சிரியன் பவுண்ட்',
+ 'STD' => 'சாவ் டோமி மற்றும் பிரின்ஸ்பி டோப்ரா (1977–2017)',
+ 'STN' => 'சாவ் டோமி மற்றும் பிரின்ஸ்பி டோப்ரா',
+ 'SYP' => 'சிரியன் பவுண்டு',
'SZL' => 'சுவாஸி லிலாங்கனி',
'THB' => 'தாய் பாட்',
'TJS' => 'தஜிகிஸ்தானி சோமோனி',
- 'TMT' => 'துர்க்மேனிஸ்தானி மனத்',
+ 'TMT' => 'துர்க்மெனிஸ்தானி மனத்',
'TND' => 'துனிஷியன் தினார்',
'TOP' => 'தொங்கான் பங்கா',
'TRY' => 'துருக்கிஷ் லீரா',
- 'TTD' => 'டிரினாட் மற்றும் டோபாகோ டாலர்',
+ 'TTD' => 'டிரினிடாட் மற்றும் டோபாகோ டாலர்',
'TWD' => 'புதிய தைவான் டாலர்',
- 'TZS' => 'தன்ஸானியன் ஷில்லிங்',
+ 'TZS' => 'தான்சானியன் ஷில்லிங்',
'UAH' => 'உக்ரைனியன் ஹிரைவ்னியா',
'UGX' => 'உகாண்டன் ஷில்லிங்',
'USD' => 'அமெரிக்க டாலர்',
- 'UYU' => 'உருகுவேயன் பேசோ',
- 'UZS' => 'உஸ்பெக்கிஸ்தான் சோம்',
- 'VEF' => 'வெனிசுலியன் போலிவர்',
+ 'UYU' => 'உருகுவேயன் பெசோ',
+ 'UZS' => 'உஸ்பெக்கிஸ்தானி சோம்',
+ 'VEF' => 'வெனிசுலன் போலிவர் (2008–2018)',
+ 'VES' => 'வெனிசுலன் போலிவர்',
'VND' => 'வியட்நாமீஸ் டாங்',
'VUV' => 'வனுவாட்டு வாட்டு',
'WST' => 'சமோவான் தாலா',
- 'XAF' => 'ஃப்ராங்க் (CFA BEAC)',
+ 'XAF' => 'மத்திய ஆப்பிரிக்க CFA ஃப்ராங்க்',
'XCD' => 'கிழக்கு கரீபியன் டாலர்',
- 'XOF' => 'CFA ஃப்ராங்க் BCEAO',
+ 'XOF' => 'மேற்கு ஆப்பிரிக்க CFA ஃப்ராங்க்',
'XPF' => 'ஃப்ராங்க் (CFP)',
'XXX' => 'தெரியாத நாணயம்',
'YER' => 'ஏமனி ரியால்',
'ZAR' => 'தென் ஆப்ரிக்க ராண்ட்',
'ZMK' => 'ஸாம்பியன் குவாசா (1968–2012)',
- 'ZMW' => 'ஸாம்பியன் குவாசா',
-);
+ 'ZMW' => 'ஸாம்பியன் குவாச்சா',
+];
-$currencySymbols = array(
+$currencySymbols = [
'AED' => 'AED',
'AFN' => 'AFN',
'ALL' => 'ALL',
@@ -684,12 +716,14 @@ $currencySymbols = array(
'BSD' => 'BSD',
'BTN' => 'BTN',
'BWP' => 'BWP',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CA$',
'CDF' => 'CDF',
'CHF' => 'CHF',
'CLP' => 'CLP',
+ 'CNH' => 'CNH',
'CNY' => 'CN¥',
'COP' => 'COP',
'CRC' => 'CRC',
@@ -753,6 +787,7 @@ $currencySymbols = array(
'MNT' => 'MNT',
'MOP' => 'MOP',
'MRO' => 'MRO',
+ 'MRU' => 'MRU',
'MUR' => 'MUR',
'MVR' => 'MVR',
'MWK' => 'MWK',
@@ -790,6 +825,7 @@ $currencySymbols = array(
'SRD' => 'SRD',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'STN',
'SYP' => 'SYP',
'SZL' => 'SZL',
'THB' => '฿',
@@ -807,6 +843,7 @@ $currencySymbols = array(
'UYU' => 'UYU',
'UZS' => 'UZS',
'VEF' => 'VEF',
+ 'VES' => 'VES',
'VND' => '₫',
'VUV' => 'VUV',
'WST' => 'WST',
@@ -817,18 +854,17 @@ $currencySymbols = array(
'YER' => 'YER',
'ZAR' => 'ZAR',
'ZMW' => 'ZMW',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'அஷன்ஷியன் தீவு',
'AD' => 'அன்டோரா',
'AE' => 'ஐக்கிய அரபு எமிரேட்ஸ்',
- 'AF' => 'ஆப்கானிஸ்தான்',
+ 'AF' => 'ஆஃப்கானிஸ்தான்',
'AG' => 'ஆண்டிகுவா மற்றும் பார்புடா',
- 'AI' => 'அங்குய்லா',
+ 'AI' => 'அங்கியுலா',
'AL' => 'அல்பேனியா',
- 'AM' => 'ஆர்மேனியா',
- 'AN' => 'நெதர்லாந்து ஆண்டில்லெஸ்',
+ 'AM' => 'அர்மேனியா',
'AO' => 'அங்கோலா',
'AQ' => 'அண்டார்டிகா',
'AR' => 'அர்ஜென்டினா',
@@ -838,7 +874,7 @@ $countryNames = array(
'AW' => 'அரூபா',
'AX' => 'ஆலந்து தீவுகள்',
'AZ' => 'அசர்பைஜான்',
- 'BA' => 'போஸ்னியா மற்றும் ஹெர்ஸிகோவினா',
+ 'BA' => 'போஸ்னியா & ஹெர்ஸகோவினா',
'BB' => 'பார்படோஸ்',
'BD' => 'பங்களாதேஷ்',
'BE' => 'பெல்ஜியம்',
@@ -849,7 +885,7 @@ $countryNames = array(
'BJ' => 'பெனின்',
'BL' => 'செயின்ட் பார்தேலெமி',
'BM' => 'பெர்முடா',
- 'BN' => 'புரூனேய்',
+ 'BN' => 'புருனே',
'BO' => 'பொலிவியா',
'BQ' => 'கரீபியன் நெதர்லாந்து',
'BR' => 'பிரேசில்',
@@ -857,7 +893,7 @@ $countryNames = array(
'BT' => 'பூடான்',
'BV' => 'பொவேட் தீவுகள்',
'BW' => 'போட்ஸ்வானா',
- 'BY' => 'பெலாரூஸ்',
+ 'BY' => 'பெலாரஸ்',
'BZ' => 'பெலிஸ்',
'CA' => 'கனடா',
'CC' => 'கோகோஸ் (கீலிங்) தீவுகள்',
@@ -878,7 +914,7 @@ $countryNames = array(
'CW' => 'குராகவ்',
'CX' => 'கிறிஸ்துமஸ் தீவு',
'CY' => 'சைப்ரஸ்',
- 'CZ' => 'செக் குடியரசு',
+ 'CZ' => 'செசியா',
'DE' => 'ஜெர்மனி',
'DG' => 'டியகோ கார்ஷியா',
'DJ' => 'ஜிபௌட்டி',
@@ -886,15 +922,16 @@ $countryNames = array(
'DM' => 'டொமினிகா',
'DO' => 'டொமினிகன் குடியரசு',
'DZ' => 'அல்ஜீரியா',
- 'EA' => 'சியூடா மற்றும் மெலில்லா',
+ 'EA' => 'சியூடா & மெலில்லா',
'EC' => 'ஈக்வடார்',
'EE' => 'எஸ்டோனியா',
'EG' => 'எகிப்து',
'EH' => 'மேற்கு சஹாரா',
'ER' => 'எரிட்ரியா',
'ES' => 'ஸ்பெயின்',
- 'ET' => 'எதியோப்பியா',
- 'EU' => 'ஐரோப்பியன் யூனியன்',
+ 'ET' => 'எத்தியோப்பியா',
+ 'EU' => 'ஐரோப்பிய யூனியன்',
+ 'EZ' => 'யூரோஜோன்',
'FI' => 'பின்லாந்து',
'FJ' => 'ஃபிஜி',
'FK' => 'ஃபாக்லாந்து தீவுகள்',
@@ -902,7 +939,7 @@ $countryNames = array(
'FO' => 'ஃபாரோ தீவுகள்',
'FR' => 'பிரான்ஸ்',
'GA' => 'கேபான்',
- 'GB' => 'யூ.கே.',
+ 'GB' => 'யூகே',
'GD' => 'கிரனெடா',
'GE' => 'ஜார்ஜியா',
'GF' => 'பிரெஞ்சு கயானா',
@@ -913,21 +950,21 @@ $countryNames = array(
'GM' => 'காம்பியா',
'GN' => 'கினியா',
'GP' => 'க்வாதேலோப்',
- 'GQ' => 'ஈக்குவாடோரியல் கினியா',
+ 'GQ' => 'ஈக்வடோரியல் கினியா',
'GR' => 'கிரீஸ்',
- 'GS' => 'தென் ஜியார்ஜியா மற்றும் தென் சான்ட்விச் தீவுகள்',
+ 'GS' => 'தெற்கு ஜார்ஜியா மற்றும் தெற்கு சாண்ட்விச் தீவுகள்',
'GT' => 'கவுதமாலா',
'GU' => 'குவாம்',
- 'GW' => 'கினி-பிஸ்ஸாவ்',
+ 'GW' => 'கினியா-பிஸ்ஸாவ்',
'GY' => 'கயானா',
'HK' => 'ஹாங்காங்',
'HM' => 'ஹேர்ட் மற்றும் மெக்டொனால்டு தீவுகள்',
'HN' => 'ஹோண்டூராஸ்',
- 'HR' => 'குரோசியா',
- 'HT' => 'ஹெய்தி',
+ 'HR' => 'குரேஷியா',
+ 'HT' => 'ஹைட்டி',
'HU' => 'ஹங்கேரி',
'IC' => 'கேனரி தீவுகள்',
- 'ID' => 'இந்தோனேஷியா',
+ 'ID' => 'இந்தோனேசியா',
'IE' => 'அயர்லாந்து',
'IL' => 'இஸ்ரேல்',
'IM' => 'ஐல் ஆஃப் மேன்',
@@ -944,13 +981,13 @@ $countryNames = array(
'KE' => 'கென்யா',
'KG' => 'கிர்கிஸ்தான்',
'KH' => 'கம்போடியா',
- 'KI' => 'கிரிபடி',
+ 'KI' => 'கிரிபாட்டி',
'KM' => 'கோமரோஸ்',
- 'KN' => 'செயின்ட் கிட்ஸ் மற்றும் நெவிஸ்',
+ 'KN' => 'செயின்ட் கிட்ஸ் & நெவிஸ்',
'KP' => 'வட கொரியா',
'KR' => 'தென் கொரியா',
'KW' => 'குவைத்',
- 'KY' => 'கேமென் தீவுகள்',
+ 'KY' => 'கெய்மென் தீவுகள்',
'KZ' => 'கஸகஸ்தான்',
'LA' => 'லாவோஸ்',
'LB' => 'லெபனான்',
@@ -974,39 +1011,39 @@ $countryNames = array(
'ML' => 'மாலி',
'MM' => 'மியான்மார் (பர்மா)',
'MN' => 'மங்கோலியா',
- 'MO' => 'மகாவோ',
+ 'MO' => 'மகாவ்',
'MP' => 'வடக்கு மரியானா தீவுகள்',
'MQ' => 'மார்டினிக்',
'MR' => 'மௌரிடானியா',
- 'MS' => 'மௌன்ட்செராட்',
+ 'MS' => 'மாண்ட்செராட்',
'MT' => 'மால்டா',
'MU' => 'மொரிசியஸ்',
'MV' => 'மாலத்தீவு',
- 'MW' => 'மாலவி',
+ 'MW' => 'மலாவி',
'MX' => 'மெக்சிகோ',
- 'MY' => 'மலேஷியா',
+ 'MY' => 'மலேசியா',
'MZ' => 'மொசாம்பிக்',
'NA' => 'நமீபியா',
'NC' => 'நியூ கேலிடோனியா',
'NE' => 'நைஜர்',
- 'NF' => 'நார்ஃபாக் தீவுகள்',
+ 'NF' => 'நார்ஃபோக் தீவு',
'NG' => 'நைஜீரியா',
'NI' => 'நிகரகுவா',
'NL' => 'நெதர்லாந்து',
'NO' => 'நார்வே',
'NP' => 'நேபாளம்',
'NR' => 'நௌரு',
- 'NU' => 'நியூ',
+ 'NU' => 'நியுவே',
'NZ' => 'நியூசிலாந்து',
'OM' => 'ஓமன்',
'PA' => 'பனாமா',
'PE' => 'பெரு',
'PF' => 'பிரெஞ்சு பாலினேஷியா',
- 'PG' => 'பாப்புவா நியூ கினி',
+ 'PG' => 'பப்புவா நியூ கினியா',
'PH' => 'பிலிப்பைன்ஸ்',
'PK' => 'பாகிஸ்தான்',
'PL' => 'போலந்து',
- 'PM' => 'செயின்ட் பியர் மற்றும் மிக்வேலான்',
+ 'PM' => 'செயின்ட் பியர் & மிக்வேலான்',
'PN' => 'பிட்கெய்ர்ன் தீவுகள்',
'PR' => 'பியூர்டோ ரிகோ',
'PS' => 'பாலஸ்தீனம்',
@@ -1014,58 +1051,59 @@ $countryNames = array(
'PW' => 'பாலோ',
'PY' => 'பராகுவே',
'QA' => 'கத்தார்',
- 'QO' => 'ஔட்லையிங் ஓசானியா',
+ 'QO' => 'வெளிப்புற ஓஷியானியா',
'RE' => 'ரீயூனியன்',
'RO' => 'ருமேனியா',
'RS' => 'செர்பியா',
'RU' => 'ரஷ்யா',
- 'RW' => 'ருவான்டா',
+ 'RW' => 'ருவாண்டா',
'SA' => 'சவூதி அரேபியா',
'SB' => 'சாலமன் தீவுகள்',
- 'SC' => 'ஸேசேல்ஸ்',
+ 'SC' => 'சீஷெல்ஸ்',
'SD' => 'சூடான்',
'SE' => 'ஸ்வீடன்',
'SG' => 'சிங்கப்பூர்',
'SH' => 'செயின்ட் ஹெலெனா',
'SI' => 'ஸ்லோவேனியா',
- 'SJ' => 'ஸ்வல்பார்டு மற்றும் ஜான் மேயன்',
+ 'SJ' => 'ஸ்வல்பார்டு & ஜான் மேயன்',
'SK' => 'ஸ்லோவாகியா',
- 'SL' => 'சியர்ரா லியோன்',
- 'SM' => 'சான் மெரினோ',
+ 'SL' => 'சியாரா லியோன்',
+ 'SM' => 'சான் மரினோ',
'SN' => 'செனெகல்',
'SO' => 'சோமாலியா',
'SR' => 'சுரினாம்',
'SS' => 'தெற்கு சூடான்',
- 'ST' => 'சாவ் தோம் மற்றும் ப்ரின்சிபி',
+ 'ST' => 'சாவ் தோம் & ப்ரின்சிபி',
'SV' => 'எல் சால்வடார்',
'SX' => 'சின்ட் மார்டென்',
'SY' => 'சிரியா',
'SZ' => 'ஸ்வாஸிலாந்து',
'TA' => 'டிரிஸ்டன் டா குன்ஹா',
- 'TC' => 'டர்க்ஸ் மற்றும் கைகோஸ் தீவுகள்',
+ 'TC' => 'டர்க்ஸ் & கைகோஸ் தீவுகள்',
'TD' => 'சாட்',
'TF' => 'பிரெஞ்சு தெற்கு பிரதேசங்கள்',
'TG' => 'டோகோ',
'TH' => 'தாய்லாந்து',
- 'TJ' => 'தாஜிகிஸ்தான்',
+ 'TJ' => 'தஜிகிஸ்தான்',
'TK' => 'டோகேலோ',
'TL' => 'தைமூர்-லெஸ்தே',
'TM' => 'துர்க்மெனிஸ்தான்',
'TN' => 'டுனிசியா',
'TO' => 'டோங்கா',
'TR' => 'துருக்கி',
- 'TT' => 'ட்ரினிடாட் மற்றும் டுபாகோ',
- 'TV' => 'துவாலூ',
+ 'TT' => 'டிரினிடாட் & டொபாகோ',
+ 'TV' => 'துவாலு',
'TW' => 'தைவான்',
'TZ' => 'தான்சானியா',
'UA' => 'உக்ரைன்',
'UG' => 'உகாண்டா',
- 'UM' => 'யூஎஸ் அவுட்லேயிங் தீவுகள்',
+ 'UM' => 'யூ.எஸ். வெளிப்புறத் தீவுகள்',
+ 'UN' => 'ஐநா',
'US' => 'யூஎஸ்',
'UY' => 'உருகுவே',
'UZ' => 'உஸ்பெகிஸ்தான்',
'VA' => 'வாடிகன் நகரம்',
- 'VC' => 'செயின்ட் வின்சென்ட் மற்றும் கிரெனடைன்ஸ்',
+ 'VC' => 'செயின்ட் வின்சென்ட் & கிரெனடைன்ஸ்',
'VE' => 'வெனிசுலா',
'VG' => 'பிரிட்டீஷ் கன்னித் தீவுகள்',
'VI' => 'யூ.எஸ். கன்னித் தீவுகள்',
@@ -1075,121 +1113,207 @@ $countryNames = array(
'WS' => 'சமோவா',
'XK' => 'கொசோவோ',
'YE' => 'ஏமன்',
- 'YT' => 'மயோத்',
+ 'YT' => 'மயோட்',
'ZA' => 'தென் ஆப்பிரிக்கா',
'ZM' => 'ஜாம்பியா',
'ZW' => 'ஜிம்பாப்வே',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-one' => '{0} நூற்றாண்டு',
+ 'century-other' => '{0} நூற்றாண்டுகள்',
'day-future-one' => '{0} நாளில்',
'day-future-other' => '{0} நாட்களில்',
- 'day-narrow-future-one' => '{0} நாளில்',
- 'day-narrow-future-other' => '{0} நாட்களில்',
- 'day-narrow-past-one' => '{0} நாளைக்கு முன்',
- 'day-narrow-past-other' => '{0} நாட்களுக்கு முன்',
+ 'day-narrow-future-one' => '{0} நா.',
+ 'day-narrow-future-other' => '{0} நா.',
+ 'day-narrow-past-one' => '{0} நா. முன்',
+ 'day-narrow-past-other' => '{0} நா. முன்',
'day-one' => '{0} நாள்',
'day-other' => '{0} நாட்கள்',
- 'day-past-one' => '{0} நாளைக்கு முன்',
+ 'day-past-one' => '{0} நாளுக்கு முன்',
'day-past-other' => '{0} நாட்களுக்கு முன்',
'day-short-future-one' => '{0} நாளில்',
'day-short-future-other' => '{0} நாட்களில்',
- 'day-short-past-one' => '0} நாளுக்கு முன்',
+ 'day-short-past-one' => '{0} நாளுக்கு முன்',
'day-short-past-other' => '{0} நாட்களுக்கு முன்',
+ 'fri-future-one' => '{0} வெள்ளியில்',
+ 'fri-future-other' => '{0} வெள்ளிகளில்',
+ 'fri-narrow-future-one' => '{0} வெள்.',
+ 'fri-narrow-future-other' => '{0} வெள்.',
+ 'fri-narrow-past-one' => '{0} வெள். முன்',
+ 'fri-narrow-past-other' => '{0} வெள். முன்',
+ 'fri-past-one' => '{0} வெள்ளிக்கு முன்',
+ 'fri-past-other' => '{0} வெள்ளிகளுக்கு முன்',
+ 'fri-short-future-one' => '{0} வெள்.',
+ 'fri-short-future-other' => '{0} வெள்.',
+ 'fri-short-past-one' => '{0} வெள். முன்',
+ 'fri-short-past-other' => '{0} வெள். முன்',
'hour-future-one' => '{0} மணிநேரத்தில்',
'hour-future-other' => '{0} மணிநேரத்தில்',
- 'hour-narrow-future-one' => '{0} மணிநேரத்தில்',
- 'hour-narrow-future-other' => '{0} மணிநேரத்தில்',
- 'hour-narrow-past-one' => '{0} மணிநேரம் முன்',
- 'hour-narrow-past-other' => '{0} மணிநேரம் முன்',
+ 'hour-narrow-future-one' => '{0} ம.',
+ 'hour-narrow-future-other' => '{0} ம.',
+ 'hour-narrow-past-one' => '{0} ம. முன்',
+ 'hour-narrow-past-other' => '{0} ம. முன்',
'hour-one' => '{0} மணிநேரம்',
'hour-other' => '{0} மணிநேரங்கள்',
'hour-past-one' => '{0} மணிநேரம் முன்',
'hour-past-other' => '{0} மணிநேரம் முன்',
- 'hour-short-future-one' => '{0} மணிநேரத்தில்',
- 'hour-short-future-other' => '{0} மணிநேரத்தில்',
- 'hour-short-past-one' => '{0} மணிநேரம் முன்',
- 'hour-short-past-other' => '{0} மணிநேரம் முன்',
+ 'hour-short-future-one' => '{0} மணி.',
+ 'hour-short-future-other' => '{0} மணி.',
+ 'hour-short-past-one' => '{0} மணி. முன்',
+ 'hour-short-past-other' => '{0} மணி. முன்',
'microsecond-one' => '{0} மைக்ரோவிநாடி',
'microsecond-other' => '{0} மைக்ரோவிநாடிகள்',
'millisecond-one' => '{0} மில்லிவிநாடி',
'millisecond-other' => '{0} மில்லிவிநாடிகள்',
'minute-future-one' => '{0} நிமிடத்தில்',
'minute-future-other' => '{0} நிமிடங்களில்',
- 'minute-narrow-future-one' => '{0} நிமிடங்களில்',
- 'minute-narrow-future-other' => '{0} நிமிடங்களில்',
- 'minute-narrow-past-one' => '{0} நிமிடத்திற்கு முன்',
- 'minute-narrow-past-other' => '{0} நிமிடங்களுக்கு முன்',
+ 'minute-narrow-future-one' => '{0} நி.',
+ 'minute-narrow-future-other' => '{0} நி.',
+ 'minute-narrow-past-one' => '{0} நி. முன்',
+ 'minute-narrow-past-other' => '{0} நி. முன்',
'minute-one' => '{0} நிமிடம்',
'minute-other' => '{0} நிமிடங்கள்',
'minute-past-one' => '{0} நிமிடத்திற்கு முன்',
'minute-past-other' => '{0} நிமிடங்களுக்கு முன்',
- 'minute-short-future-one' => '{0} நிமிடங்களில்',
- 'minute-short-future-other' => '{0} நிமிடங்களில்',
- 'minute-short-past-one' => '{0} நிமிடத்திற்கு முன்',
- 'minute-short-past-other' => '{0} நிமிடங்களுக்கு முன்',
+ 'minute-short-future-one' => '{0} நிமி.',
+ 'minute-short-future-other' => '{0} நிமி.',
+ 'minute-short-past-one' => '{0} நிமி. முன்',
+ 'minute-short-past-other' => '{0} நிமி. முன்',
+ 'mon-future-one' => '{0} திங்களில்',
+ 'mon-future-other' => '{0} திங்கள்களில்',
+ 'mon-narrow-future-one' => '{0} திங்.',
+ 'mon-narrow-future-other' => '{0} திங்.',
+ 'mon-narrow-past-one' => '{0} திங். முன்',
+ 'mon-narrow-past-other' => '{0} திங். முன்',
+ 'mon-past-one' => '{0} திங்களுக்கு முன்',
+ 'mon-past-other' => '{0} திங்கள்களுக்கு முன்',
+ 'mon-short-future-one' => '{0} திங்.',
+ 'mon-short-future-other' => '{0} திங்.',
+ 'mon-short-past-one' => '{0} திங். முன்',
+ 'mon-short-past-other' => '{0} திங். முன்',
'month-future-one' => '{0} மாதத்தில்',
'month-future-other' => '{0} மாதங்களில்',
- 'month-narrow-future-one' => '{0} மாதத்தில்',
- 'month-narrow-future-other' => '{0} மாதங்களில்',
- 'month-narrow-past-one' => '{0} மாதத்திற்கு முன்',
- 'month-narrow-past-other' => '{0} மாதங்களுக்கு முன்',
+ 'month-narrow-future-one' => '{0} மா.',
+ 'month-narrow-future-other' => '{0} மா.',
+ 'month-narrow-past-one' => '{0} மா. முன்',
+ 'month-narrow-past-other' => '{0} மா. முன்',
'month-one' => '{0} மாதம்',
'month-other' => '{0} மாதங்கள்',
'month-past-one' => '{0} மாதத்துக்கு முன்',
'month-past-other' => '{0} மாதங்களுக்கு முன்',
- 'month-short-future-one' => '{0} மாதத்தில்',
- 'month-short-future-other' => '{0} மாதங்களில்',
- 'month-short-past-one' => '{0} மாதத்திற்கு முன்',
- 'month-short-past-other' => '{0} மாதங்களுக்கு முன்',
+ 'month-short-future-one' => '{0} மாத.',
+ 'month-short-future-other' => '{0} மாத.',
+ 'month-short-past-one' => '{0} மாத. முன்',
+ 'month-short-past-other' => '{0} மாத. முன்',
'nanosecond-one' => '{0} நானோசெகண்டு',
'nanosecond-other' => '{0} நானோசெகண்டுகள்',
'quarter-future-one' => '+{0} காலாண்டில்',
'quarter-future-other' => '{0} காலாண்டுகளில்',
- 'quarter-narrow-future-one' => '{0} காலாண்டில்',
- 'quarter-narrow-future-other' => '{0} காலாண்டுகளில்',
- 'quarter-narrow-past-one' => '-{0} கா.',
- 'quarter-narrow-past-other' => '-{0} கா.',
+ 'quarter-narrow-future-one' => '{0} கா.',
+ 'quarter-narrow-future-other' => '{0} கா.',
+ 'quarter-narrow-past-one' => '{0} கா. முன்',
+ 'quarter-narrow-past-other' => '{0} கா. முன்',
'quarter-past-one' => '{0} காலாண்டுக்கு முன்',
'quarter-past-other' => '{0} காலாண்டுகளுக்கு முன்',
'quarter-short-future-one' => '{0} காலா.',
- 'quarter-short-future-other' => '{0} காலாண்டுகளில்',
+ 'quarter-short-future-other' => '{0} காலா.',
'quarter-short-past-one' => '{0} காலா. முன்',
'quarter-short-past-other' => '{0} காலா. முன்',
+ 'sat-future-one' => '{0} சனியில்',
+ 'sat-future-other' => '{0} சனிகளில்',
+ 'sat-narrow-future-one' => '{0} சனி.',
+ 'sat-narrow-future-other' => '{0} சனி.',
+ 'sat-narrow-past-one' => '{0} சனி. முன்',
+ 'sat-narrow-past-other' => '{0} சனி. முன்',
+ 'sat-past-one' => '{0} சனிக்கு முன்',
+ 'sat-past-other' => '{0} சனிகளுக்கு முன்',
+ 'sat-short-future-one' => '{0} சனி.',
+ 'sat-short-future-other' => '{0} சனி.',
+ 'sat-short-past-one' => '{0} சனி. முன்',
+ 'sat-short-past-other' => '{0} சனி. முன்',
'second-future-one' => '{0} விநாடியில்',
'second-future-other' => '{0} விநாடிகளில்',
- 'second-narrow-future-one' => '{0} விநாடியில்',
- 'second-narrow-future-other' => '{0} விநாடிகளில்',
- 'second-narrow-past-one' => '{0} விநாடிக்கு முன்',
- 'second-narrow-past-other' => '{0} விநாடிகளுக்கு முன்',
+ 'second-narrow-future-one' => '{0} வி.',
+ 'second-narrow-future-other' => '{0} வி.',
+ 'second-narrow-past-one' => '{0} வி. முன்',
+ 'second-narrow-past-other' => '{0} வி. முன்',
'second-one' => '{0} விநாடி',
'second-other' => '{0} விநாடிகள்',
'second-past-one' => '{0} விநாடிக்கு முன்',
'second-past-other' => '{0} விநாடிகளுக்கு முன்',
- 'second-short-future-one' => '{0} விநாடியில்',
- 'second-short-future-other' => '{0} விநாடிகளில்',
- 'second-short-past-one' => '{0} விநாடிக்கு முன்',
- 'second-short-past-other' => '{0} விநாடிகளுக்கு முன்',
+ 'second-short-future-one' => '{0} விநா.',
+ 'second-short-future-other' => '{0} விநா.',
+ 'second-short-past-one' => '{0} விநா. முன்',
+ 'second-short-past-other' => '{0} விநா. முன்',
+ 'sun-future-one' => '{0} ஞாயிறில்',
+ 'sun-future-other' => '{0} ஞாயிறுகளில்',
+ 'sun-narrow-future-one' => '{0} ஞா.',
+ 'sun-narrow-future-other' => '{0} ஞா.',
+ 'sun-narrow-past-one' => '{0} ஞா. முன்',
+ 'sun-narrow-past-other' => '{0} ஞா. முன்',
+ 'sun-past-one' => '{0} ஞாயிறுக்கு முன்பு',
+ 'sun-past-other' => '{0} ஞாயிறுகளுக்கு முன்பு',
+ 'sun-short-future-one' => '{0} ஞாயி.',
+ 'sun-short-future-other' => '{0} ஞாயி.',
+ 'sun-short-past-one' => '{0} ஞாயி. முன்',
+ 'sun-short-past-other' => '{0} ஞாயி. முன்',
+ 'thu-future-one' => '{0} வியாழனில்',
+ 'thu-future-other' => '{0} வியாழன்களில்',
+ 'thu-narrow-future-one' => '{0} வியா.',
+ 'thu-narrow-future-other' => '{0} வியா.',
+ 'thu-narrow-past-one' => '{0} வியா. முன்',
+ 'thu-narrow-past-other' => '{0} வியா. முன்',
+ 'thu-past-one' => '{0} வியாழனுக்கு முன்',
+ 'thu-past-other' => '{0} வியாழன்களுக்கு முன்',
+ 'thu-short-future-one' => '{0} வியா.',
+ 'thu-short-future-other' => '{0} வியா.',
+ 'thu-short-past-one' => '{0} வியா. முன்',
+ 'thu-short-past-other' => '{0} வியா. முன்',
+ 'tue-future-one' => '{0} செவ்வாயில்',
+ 'tue-future-other' => '{0} செவ்வாய்களில்',
+ 'tue-narrow-future-one' => '{0} செவ்.',
+ 'tue-narrow-future-other' => '{0} செவ்வாய்களில்',
+ 'tue-narrow-past-one' => '{0} செவ்வாய்களுக்கு முன்',
+ 'tue-narrow-past-other' => '{0} செவ். முன்பு',
+ 'tue-past-one' => '{0} செவ்வாய் முன்பு',
+ 'tue-past-other' => '{0} செவ்வாய்கள் முன்பு',
+ 'tue-short-future-one' => '{0} செவ்.',
+ 'tue-short-future-other' => '{0} செவ்.',
+ 'tue-short-past-one' => '{0} செவ்வாய்களுக்கு முன்',
+ 'tue-short-past-other' => '{0} செவ்வாய்களுக்கு முன்',
+ 'wed-future-one' => '{0} புதனில்',
+ 'wed-future-other' => '{0} புதன்களில்',
+ 'wed-narrow-future-one' => '{0} புத.',
+ 'wed-narrow-future-other' => '{0} புத.',
+ 'wed-narrow-past-one' => '{0} புத. முன்',
+ 'wed-narrow-past-other' => '{0} புத. முன்',
+ 'wed-past-one' => '{0} புதனுக்கு முன்',
+ 'wed-past-other' => '{0} புதன்களுக்கு முன்',
+ 'wed-short-future-one' => '{0} புத.',
+ 'wed-short-future-other' => '{0} புத.',
+ 'wed-short-past-one' => '{0} புதன்களுக்கு முன்',
+ 'wed-short-past-other' => '{0} புதன்களுக்கு முன்',
'week-future-one' => '{0} வாரத்தில்',
'week-future-other' => '{0} வாரங்களில்',
- 'week-narrow-future-one' => '{0} வாரத்தில்',
- 'week-narrow-future-other' => '{0} வாரங்களில்',
- 'week-narrow-past-one' => '{0} வாரத்திற்கு முன்',
- 'week-narrow-past-other' => '{0} வாரங்களுக்கு முன்',
+ 'week-narrow-future-one' => '{0} வா.',
+ 'week-narrow-future-other' => '{0} வா.',
+ 'week-narrow-past-one' => '{0} வா. முன்',
+ 'week-narrow-past-other' => '{0} வா. முன்',
'week-one' => '{0} வாரம்',
'week-other' => '{0} வாரங்கள்',
- 'week-past-one' => '{0} வாரத்திற்கு முன்பு',
+ 'week-past-one' => '{0} வாரத்திற்கு முன்',
'week-past-other' => '{0} வாரங்களுக்கு முன்',
- 'week-short-future-one' => '{0} வாரத்தில்',
- 'week-short-future-other' => '{0} வாரங்களில்',
- 'week-short-past-one' => '{0} வாரத்திற்கு முன்',
- 'week-short-past-other' => '{0} வாரங்களுக்கு முன்',
+ 'week-short-future-one' => '{0} வார.',
+ 'week-short-future-other' => '{0} வார.',
+ 'week-short-past-one' => '{0} வார. முன்',
+ 'week-short-past-other' => '{0} வார. முன்',
'year-future-one' => '{0} ஆண்டில்',
'year-future-other' => '{0} ஆண்டுகளில்',
- 'year-narrow-future-one' => '{0} ஆண்டில்',
- 'year-narrow-future-other' => '{0} ஆண்டுகளில்',
- 'year-narrow-past-one' => '{0} ஆண்டிற்கு முன்',
- 'year-narrow-past-other' => '{0} ஆண்டுகளுக்கு முன்',
+ 'year-narrow-future-one' => '{0} ஆ.',
+ 'year-narrow-future-other' => '{0} ஆ.',
+ 'year-narrow-past-one' => '{0} ஆ. முன்',
+ 'year-narrow-past-other' => '{0} ஆ. முன்',
'year-one' => '{0} ஆண்டு',
'year-other' => '{0} ஆண்டுகள்',
'year-past-one' => '{0} ஆண்டிற்கு முன்',
@@ -1198,4 +1322,4 @@ $timeUnits = array(
'year-short-future-other' => '{0} ஆண்டுகளில்',
'year-short-past-one' => '{0} ஆண்டிற்கு முன்',
'year-short-past-other' => '{0} ஆண்டுகளுக்கு முன்',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesTe.php b/MLEB/cldr/CldrNames/CldrNamesTe.php
index b9f5eba7..50f5aa85 100644
--- a/MLEB/cldr/CldrNames/CldrNamesTe.php
+++ b/MLEB/cldr/CldrNames/CldrNamesTe.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'అఫార్',
'ab' => 'అబ్ఖాజియన్',
'ace' => 'ఆఖినీస్',
@@ -19,38 +19,39 @@ $languageNames = array(
'alt' => 'దక్షిణ ఆల్టై',
'am' => 'అమ్హారిక్',
'an' => 'అరగోనిస్',
- 'ang' => 'ప్రాచీన ఆగ్లం',
+ 'ang' => 'ప్రాచీన ఆంగ్లం',
'anp' => 'ఆంగిక',
'ar' => 'అరబిక్',
'ar-001' => 'ఆధునిక ప్రామాణిక అరబిక్',
- 'arc' => 'అరామేక్',
- 'arn' => 'అరౌకేనియన్',
+ 'arc' => 'అరామైక్',
+ 'arn' => 'మపుచే',
'arp' => 'అరాపాహో',
'arw' => 'అరావాక్',
- 'arz' => 'ఈజిప్ట్ అరబిక్',
- 'as' => 'అస్సామీ',
+ 'arz' => 'ఈజిప్షియన్ అరబిక్',
+ 'as' => 'అస్సామీస్',
'asa' => 'అసు',
- 'ast' => 'అస్టురియాన్',
+ 'ast' => 'ఆస్టూరియన్',
'av' => 'అవారిక్',
'awa' => 'అవధి',
'ay' => 'ఐమారా',
'az' => 'అజర్బైజాని',
- 'ba' => 'బష్కిర్',
+ 'ba' => 'బాష్కిర్',
'bal' => 'బాలుచి',
'ban' => 'బాలినీస్',
'bas' => 'బసా',
- 'be' => 'బెలరుశియన్',
+ 'be' => 'బెలారుషియన్',
'bej' => 'బేజా',
'bem' => 'బెంబా',
- 'bez' => 'బీనా',
+ 'bez' => 'బెనా',
'bg' => 'బల్గేరియన్',
- 'bho' => 'భోజ్ పూరి',
+ 'bgn' => 'పశ్చిమ బలూచీ',
+ 'bho' => 'భోజ్‌పురి',
'bi' => 'బిస్లామా',
'bik' => 'బికోల్',
'bin' => 'బిని',
- 'bla' => 'సిక్ సికా',
+ 'bla' => 'సిక్సికా',
'bm' => 'బంబారా',
- 'bn' => 'బెంగాలీ',
+ 'bn' => 'బంగ్లా',
'bo' => 'టిబెటన్',
'bpy' => 'బిష్ణుప్రియ',
'br' => 'బ్రెటన్',
@@ -58,41 +59,42 @@ $languageNames = array(
'brx' => 'బోడో',
'bs' => 'బోస్నియన్',
'bua' => 'బురియట్',
- 'bug' => 'బ్యుగినిస్',
+ 'bug' => 'బుగినీస్',
'byn' => 'బ్లిన్',
- 'ca' => 'కెటలాన్',
+ 'ca' => 'కాటలాన్',
'cad' => 'కేడ్డో',
'car' => 'కేరిబ్',
'cch' => 'అట్సామ్',
'ce' => 'చెచెన్',
- 'ceb' => 'సేబుఆనో',
+ 'ceb' => 'సెబువానో',
'cgg' => 'ఛిగా',
'ch' => 'చమర్రో',
'chb' => 'చిబ్చా',
'chg' => 'చాగటై',
- 'chk' => 'చూకిస్',
+ 'chk' => 'చూకీస్',
'chm' => 'మారి',
'chn' => 'చినూక్ జార్గన్',
- 'cho' => 'చొచ్కతావ్',
+ 'cho' => 'చక్టా',
'chp' => 'చిపెవ్యాన్',
'chr' => 'చెరోకీ',
'chy' => 'చేయేన్',
- 'ckb' => 'సొరాని కుర్దిష్',
+ 'ckb' => 'సెంట్రల్ కర్డిష్',
'co' => 'కోర్సికన్',
'cop' => 'కోప్టిక్',
'cr' => 'క్రి',
'crh' => 'క్రిమియన్ టర్కిష్',
+ 'crs' => 'సెసేల్వా క్రియోల్ ఫ్రెంచ్',
'cs' => 'చెక్',
'csb' => 'కషుబియన్',
- 'cu' => 'చర్చ స్లావిక్',
+ 'cu' => 'చర్చ్ స్లావిక్',
'cv' => 'చువాష్',
'cy' => 'వెల్ష్',
- 'da' => 'డేనిష్',
+ 'da' => 'డానిష్',
'dak' => 'డకోటా',
'dar' => 'డార్గ్వా',
'dav' => 'టైటా',
'de' => 'జర్మన్',
- 'de-at' => 'ఆస్ట్రేలియన్ జర్మన్',
+ 'de-at' => 'ఆస్ట్రియన్ జర్మన్',
'de-ch' => 'స్విస్ హై జర్మన్',
'del' => 'డెలావేర్',
'den' => 'స్లేవ్',
@@ -100,17 +102,18 @@ $languageNames = array(
'din' => 'డింకా',
'dje' => 'జార్మా',
'doi' => 'డోగ్రి',
- 'dsb' => 'లోవర్ సోర్బియన్',
- 'dua' => 'దుఆలా',
+ 'dsb' => 'లోయర్ సోర్బియన్',
+ 'dua' => 'డ్యూలా',
'dum' => 'మధ్యమ డచ్',
'dv' => 'దివేహి',
'dyo' => 'జోలా-ఫోనయి',
'dyu' => 'డ్యులా',
- 'dz' => 'జొన్ఖా',
+ 'dz' => 'జోంఖా',
+ 'dzg' => 'డాజాగా',
'ebu' => 'ఇంబు',
- 'ee' => 'ఈవీ',
+ 'ee' => 'యూ',
'efi' => 'ఎఫిక్',
- 'egy' => 'ప్రాచీన ఇజిప్షియన్',
+ 'egy' => 'ప్రాచీన ఈజిప్షియన్',
'eka' => 'ఏకాజక్',
'el' => 'గ్రీక్',
'elx' => 'ఎలామైట్',
@@ -120,13 +123,13 @@ $languageNames = array(
'en-gb' => 'బ్రిటిష్ ఇంగ్లీష్',
'en-us' => 'అమెరికన్ ఇంగ్లీష్',
'enm' => 'మధ్యమ ఆంగ్లం',
- 'eo' => 'ఎస్పరెన్టొ',
+ 'eo' => 'ఎస్పెరాంటో',
'es' => 'స్పానిష్',
- 'es-419' => 'లాటిన్ అమెరికెన్ స్పానిష్',
+ 'es-419' => 'లాటిన్ అమెరికన్ స్పానిష్',
'es-es' => 'యూరోపియన్ స్పానిష్',
'es-mx' => 'మెక్సికన్ స్పానిష్',
- 'et' => 'ఈస్టొనియన్',
- 'eu' => 'బాస్క్',
+ 'et' => 'ఎస్టోనియన్',
+ 'eu' => 'బాస్క్యూ',
'ewo' => 'ఎవోండొ',
'fa' => 'పర్షియన్',
'fan' => 'ఫాంగ్',
@@ -135,13 +138,14 @@ $languageNames = array(
'fi' => 'ఫిన్నిష్',
'fil' => 'ఫిలిపినో',
'fj' => 'ఫిజియన్',
- 'fo' => 'ఫారోయీజ్',
+ 'fo' => 'ఫారోస్',
'fon' => 'ఫాన్',
'fr' => 'ఫ్రెంచ్',
'fr-ca' => 'కెనడియెన్ ఫ్రెంచ్',
'fr-ch' => 'స్విస్ ఫ్రెంచ్',
+ 'frc' => 'కాజున్ ఫ్రెంచ్',
'frm' => 'మధ్యమ ప్రెంచ్',
- 'fro' => 'ప్రాచీన ప్రెంచ్',
+ 'fro' => 'ప్రాచీన ఫ్రెంచ్',
'frr' => 'ఉత్తర ఫ్రిసియన్',
'frs' => 'తూర్పు ఫ్రిసియన్',
'fur' => 'ఫ్రియులియన్',
@@ -149,14 +153,15 @@ $languageNames = array(
'ga' => 'ఐరిష్',
'gaa' => 'గా',
'gag' => 'గాగౌజ్',
+ 'gan' => 'గాన్ చైనీస్',
'gay' => 'గాయో',
'gba' => 'గ్బాయా',
'gd' => 'స్కాటిష్ గేలిక్',
'gez' => 'జీజ్',
'gil' => 'గిల్బర్టీస్',
- 'gl' => 'గెలిషియన్',
+ 'gl' => 'గాలిషియన్',
'gmh' => 'మధ్యమ హై జర్మన్',
- 'gn' => 'గురాని',
+ 'gn' => 'గ్వారనీ',
'goh' => 'ప్రాచీన హై జర్మన్',
'gon' => 'గోండి',
'gor' => 'గోరోంటలా',
@@ -166,39 +171,41 @@ $languageNames = array(
'gsw' => 'స్విస్ జర్మన్',
'gu' => 'గుజరాతి',
'guz' => 'గుస్సీ',
- 'gv' => 'మంకస్',
+ 'gv' => 'మాంక్స్',
'gwi' => 'గ్విచిన్',
'ha' => 'హౌసా',
'hai' => 'హైడా',
+ 'hak' => 'హక్కా చైనీస్',
'haw' => 'హవాయియన్',
- 'he' => 'హీబ్రు',
+ 'he' => 'హిబ్రూ',
'hi' => 'హిందీ',
- 'hil' => 'హిలి గేయినోన్',
+ 'hil' => 'హిలిగెనాన్',
'hit' => 'హిట్టిటే',
'hmn' => 'మోంగ్',
'ho' => 'హిరి మోటు',
- 'hr' => 'క్రొయెషియన్',
+ 'hr' => 'క్రొయేషియన్',
'hsb' => 'అప్పర్ సోర్బియన్',
- 'ht' => 'హైతియన్',
- 'hu' => 'హన్గేరియన్',
+ 'hsn' => 'జియాంగ్ చైనీస్',
+ 'ht' => 'హైటియన్ క్రియోల్',
+ 'hu' => 'హంగేరియన్',
'hup' => 'హుపా',
'hy' => 'ఆర్మేనియన్',
- 'hz' => 'హిరేరో',
+ 'hz' => 'హెరెరో',
'ia' => 'ఇంటర్లింగ్వా',
'iba' => 'ఐబాన్',
'ibb' => 'ఇబిబియో',
'id' => 'ఇండోనేషియన్',
- 'ie' => 'ఇంటర్ లింగ్',
+ 'ie' => 'ఇంటర్లింగ్',
'ig' => 'ఇగ్బో',
'ii' => 'శిషువన్ ఈ',
- 'ik' => 'ఇనూపైఏక్',
- 'ilo' => 'ఐయోకో',
+ 'ik' => 'ఇనుపైయాక్',
+ 'ilo' => 'ఐలోకో',
'inh' => 'ఇంగుష్',
- 'io' => 'ఈడౌ',
+ 'io' => 'ఈడో',
'is' => 'ఐస్లాండిక్',
'it' => 'ఇటాలియన్',
'iu' => 'ఇనుక్టిటుట్',
- 'ja' => 'జాపనీస్',
+ 'ja' => 'జపనీస్',
'jbo' => 'లోజ్బాన్',
'jgo' => 'గోంబా',
'jmc' => 'మకొమ్',
@@ -219,11 +226,12 @@ $languageNames = array(
'kfo' => 'కోరో',
'kg' => 'కోంగో',
'kha' => 'ఖాసి',
- 'kho' => 'ఖటోనీస్',
+ 'kho' => 'ఖోటనీస్',
'khq' => 'కొయరా చీన్నీ',
'ki' => 'కికుయు',
'kj' => 'క్వాన్యామ',
'kk' => 'కజఖ్',
+ 'kkj' => 'కాకో',
'kl' => 'కలాల్లిసూట్',
'kln' => 'కలెంజిన్',
'km' => 'ఖ్మేర్',
@@ -241,7 +249,8 @@ $languageNames = array(
'ks' => 'కాశ్మీరి',
'ksb' => 'శంబాలా',
'ksf' => 'బాఫియ',
- 'ku' => 'కర్డిష్',
+ 'ksh' => 'కొలోనియన్',
+ 'ku' => 'కుర్దిష్',
'kum' => 'కుమ్యిక్',
'kut' => 'కుటేనై',
'kv' => 'కోమి',
@@ -252,7 +261,7 @@ $languageNames = array(
'lag' => 'లాంగీ',
'lah' => 'లాహండా',
'lam' => 'లాంబా',
- 'lb' => 'లుక్సంబర్గిష్',
+ 'lb' => 'లక్సెంబర్గిష్',
'lez' => 'లేజ్ఘియన్',
'lg' => 'గాండా',
'li' => 'లిమ్బర్గిష్',
@@ -260,14 +269,16 @@ $languageNames = array(
'ln' => 'లింగాల',
'lo' => 'లావో',
'lol' => 'మొంగో',
+ 'lou' => 'లూసియానా క్రియోల్',
'loz' => 'లోజి',
- 'lt' => 'లిథుయేనియన్',
+ 'lrc' => 'ఉత్తర లూరీ',
+ 'lt' => 'లిథువేనియన్',
'lu' => 'లూబ-కటాంగ',
'lua' => 'లుబా-లులువ',
- 'lui' => 'లుఇసేనో',
+ 'lui' => 'లుయిసెనో',
'lun' => 'లుండా',
'luo' => 'లువో',
- 'lus' => 'లుషై',
+ 'lus' => 'మిజో',
'luy' => 'లుయియ',
'lv' => 'లాట్వియన్',
'mad' => 'మాదురీస్',
@@ -275,97 +286,103 @@ $languageNames = array(
'mai' => 'మైథిలి',
'mak' => 'మకాసార్',
'man' => 'మండింగో',
- 'mas' => 'మాసాయి',
- 'mdf' => 'మొక్షా',
+ 'mas' => 'మాసై',
+ 'mdf' => 'మోక్ష',
'mdr' => 'మండార్',
'men' => 'మెండే',
'mer' => 'మెరు',
'mfe' => 'మొరిస్యేన్',
- 'mg' => 'మాలాగసి',
+ 'mg' => 'మలగాసి',
'mga' => 'మధ్యమ ఐరిష్',
'mgh' => 'మక్వా-మిట్టో',
'mgo' => 'మెటా',
'mh' => 'మార్షలీస్',
- 'mi' => 'మయోరి',
+ 'mi' => 'మావొరీ',
'mic' => 'మికమాక్',
- 'min' => 'మినాంగ్కాబో',
- 'mk' => 'మసడోనియన్',
+ 'min' => 'మినాంగ్‌కాబో',
+ 'mk' => 'మాసిడోనియన్',
'ml' => 'మలయాళం',
'mn' => 'మంగోలియన్',
'mnc' => 'మంచు',
- 'mni' => 'మణిపూరి',
- 'moh' => 'మోహుక్',
+ 'mni' => 'మణిపురి',
+ 'moh' => 'మోహాక్',
'mos' => 'మోస్సి',
'mr' => 'మరాఠీ',
- 'ms' => 'మలేయ్',
+ 'ms' => 'మలయ్',
'mt' => 'మాల్టీస్',
- 'mua' => 'ముదాంగ్',
+ 'mua' => 'మండాంగ్',
'mul' => 'బహుళ భాషలు',
'mus' => 'క్రీక్',
'mwl' => 'మిరాండిస్',
'mwr' => 'మార్వాడి',
'my' => 'బర్మీస్',
'myv' => 'ఎర్జియా',
+ 'mzn' => 'మాసన్‌దెరాని',
'na' => 'నౌరు',
+ 'nan' => 'మిన్ నాన్ చైనీస్',
'nap' => 'నియాపోలిటన్',
'naq' => 'నమ',
- 'nb' => 'నార్వీజియన్ బొక్మాల్',
+ 'nb' => 'నార్వేజియన్ బొక్మాల్',
'nd' => 'ఉత్తర దెబెలె',
'nds' => 'లో జర్మన్',
+ 'nds-nl' => 'లో సాక్సన్',
'ne' => 'నేపాలి',
'new' => 'నెవారి',
- 'ng' => 'దోంగా',
+ 'ng' => 'డోంగా',
'nia' => 'నియాస్',
- 'niu' => 'నియూఇయాన్',
+ 'niu' => 'నియాన్',
'nl' => 'డచ్',
'nl-be' => 'ఫ్లెమిష్',
'nmg' => 'క్వాసియె',
- 'nn' => 'నార్విజియాన్ న్యోర్స్క్',
- 'no' => 'నార్విజియాన్',
+ 'nn' => 'నార్వేజియాన్ న్యోర్స్క్',
+ 'nnh' => 'గింబూన్',
+ 'no' => 'నార్వేజియన్',
'nog' => 'నోగై',
'non' => 'ప్రాచిన నోర్స్',
'nqo' => 'న్కో',
'nr' => 'దక్షిణ దెబెలె',
'nso' => 'ఉత్తర సోతో',
'nus' => 'న్యుర్',
- 'nv' => 'నవాహో',
- 'nwc' => 'సాంప్రదాయ న్యుఆరి',
+ 'nv' => 'నవాజొ',
+ 'nwc' => 'సాంప్రదాయ న్యూయారీ',
'ny' => 'న్యాన్జా',
'nym' => 'న్యంవేజి',
'nyn' => 'న్యాన్కోలె',
- 'nyo' => 'నిఓరో',
+ 'nyo' => 'నేయోరో',
'nzi' => 'జీమా',
'oc' => 'ఆక్సిటన్',
'oj' => 'చేవా',
'om' => 'ఒరోమో',
- 'or' => 'ఒరియా',
+ 'or' => 'ఒడియా',
'os' => 'ఒసేటిక్',
'osa' => 'ఒసాజ్',
'ota' => 'ఒట్టోమన్ టర్కిష్',
'pa' => 'పంజాబీ',
- 'pag' => 'పంగా సినాన్',
+ 'pag' => 'పంగాసినాన్',
'pal' => 'పహ్లావి',
- 'pam' => 'పంపగ్న',
+ 'pam' => 'పంపన్గా',
'pap' => 'పపియమేంటో',
- 'pau' => 'పాలుఆన్',
+ 'pau' => 'పలావెన్',
+ 'pcm' => 'నైజీరియా పిడ్గిన్',
'peo' => 'ప్రాచీన పర్షియన్',
'phn' => 'ఫోనికన్',
'pi' => 'పాలీ',
'pl' => 'పోలిష్',
'pon' => 'పోహ్న్పెయన్',
+ 'prg' => 'ప్రష్యన్',
'pro' => 'ప్రాచీన ప్రోవెంసాల్',
'ps' => 'పాష్టో',
'pt' => 'పోర్చుగీస్',
'pt-br' => 'బ్రెజీలియన్ పోర్చుగీస్',
'pt-pt' => 'యూరోపియన్ పోర్చుగీస్',
- 'qu' => 'కెషుయా',
+ 'qu' => 'కెచువా',
'quc' => 'కిచే',
- 'raj' => 'రాజస్తాని',
+ 'raj' => 'రాజస్తానీ',
'rap' => 'రాపన్యుయి',
'rar' => 'రారోటొంగాన్',
'rm' => 'రోమన్ష్',
- 'rn' => 'రండి',
- 'ro' => 'రోమానియన్',
+ 'rn' => 'రుండి',
+ 'ro' => 'రోమేనియన్',
'ro-md' => 'మొల్డావియన్',
'rof' => 'రోంబో',
'rom' => 'రోమానీ',
@@ -375,16 +392,18 @@ $languageNames = array(
'rwk' => 'ర్వా',
'sa' => 'సంస్కృతం',
'sad' => 'సండావి',
- 'sah' => 'యాకుట్',
- 'sam' => 'సమారిటన్ అరమేక్',
+ 'sah' => 'సాఖా',
+ 'sam' => 'సమారిటన్ అరామైక్',
'saq' => 'సంబురు',
'sas' => 'ససక్',
- 'sat' => 'సంటాలి',
+ 'sat' => 'సంతాలి',
+ 'sba' => 'గాంబే',
'sbp' => 'సాంగు',
'sc' => 'సార్డీనియన్',
'scn' => 'సిసిలియన్',
'sco' => 'స్కాట్స్',
'sd' => 'సింధీ',
+ 'sdh' => 'దక్షిణ కుర్డిష్',
'se' => 'ఉత్తర సామి',
'seh' => 'సెనా',
'sel' => 'సేల్కప్',
@@ -396,8 +415,8 @@ $languageNames = array(
'shn' => 'షాన్',
'si' => 'సింహళం',
'sid' => 'సిడామో',
- 'sk' => 'స్లోవాక్',
- 'sl' => 'స్లోవేనియాన్',
+ 'sk' => 'స్లోవక్',
+ 'sl' => 'స్లోవేనియన్',
'sm' => 'సమోవన్',
'sma' => 'దక్షిణ సామి',
'smj' => 'లులే సామి',
@@ -409,43 +428,45 @@ $languageNames = array(
'sog' => 'సోగ్డియన్',
'sq' => 'అల్బేనియన్',
'sr' => 'సెర్బియన్',
- 'srn' => 'స్రానన్ టోనగో',
+ 'srn' => 'స్రానన్ టోంగో',
'srr' => 'సెరేర్',
'ss' => 'స్వాతి',
+ 'ssy' => 'సాహో',
'st' => 'దక్షిణ సోతో',
- 'su' => 'సుడానీస్',
+ 'su' => 'సండానీస్',
'suk' => 'సుకుమా',
'sus' => 'సుసు',
'sux' => 'సుమేరియాన్',
'sv' => 'స్వీడిష్',
'sw' => 'స్వాహిలి',
+ 'sw-cd' => 'కాంగో స్వాహిలి',
'swb' => 'కొమొరియన్',
- 'swc' => 'కాంగో స్వాహిలి',
'syc' => 'సాంప్రదాయ సిరియాక్',
'syr' => 'సిరియాక్',
'ta' => 'తమిళము',
'tcy' => 'తుళు',
'te' => 'తెలుగు',
- 'tem' => 'టింనే',
+ 'tem' => 'టిమ్నే',
'teo' => 'టెసో',
'ter' => 'టెరెనో',
'tet' => 'టేటం',
'tg' => 'తజిక్',
'th' => 'థాయ్',
- 'ti' => 'తిగ్రిన్యా',
+ 'ti' => 'టిగ్రిన్యా',
'tig' => 'టీగ్రె',
'tiv' => 'టివ్',
- 'tk' => 'తుర్కమెన్',
+ 'tk' => 'తుర్క్‌మెన్',
'tkl' => 'టోకెలావ్',
- 'tl' => 'తగలోగ్',
+ 'tl' => 'టగలాగ్',
'tlh' => 'క్లింగాన్',
- 'tli' => 'లింగిట్',
+ 'tli' => 'ట్లింగిట్',
'tmh' => 'టామషేక్',
- 'tn' => 'సెటస్వానా',
+ 'tn' => 'స్వానా',
'to' => 'టాంగాన్',
'tog' => 'న్యాసా టోన్గా',
'tpi' => 'టోక్ పిసిన్',
'tr' => 'టర్కిష్',
+ 'trv' => 'తరోకో',
'ts' => 'సోంగా',
'tsi' => 'శింషీయన్',
'tt' => 'టాటర్',
@@ -459,7 +480,7 @@ $languageNames = array(
'udm' => 'ఉడ్ముర్ట్',
'ug' => 'ఉయ్‌ఘర్',
'uga' => 'ఉగారిటిక్',
- 'uk' => 'ఉక్రేనియన్',
+ 'uk' => 'ఉక్రెయినియన్',
'umb' => 'ఉమ్బుండు',
'und' => 'తెలియని భాష',
'ur' => 'ఉర్దూ',
@@ -471,15 +492,20 @@ $languageNames = array(
'vot' => 'వోటిక్',
'vun' => 'వుంజొ',
'wa' => 'వాలూన్',
- 'wal' => 'వాలామో',
+ 'wae' => 'వాల్సర్',
+ 'wal' => 'వాలేట్టా',
'war' => 'వారే',
'was' => 'వాషో',
- 'wo' => 'వొలాఫ్',
+ 'wbp' => 'వార్లపిరి',
+ 'wo' => 'ఉలూఫ్',
+ 'wuu' => 'వు చైనీస్',
'xal' => 'కల్మిక్',
'xh' => 'షోసా',
'xog' => 'సొగా',
- 'yao' => 'యాఒ',
+ 'yao' => 'యాయే',
'yap' => 'యాపిస్',
+ 'yav' => 'యాంగ్‌బెన్',
+ 'ybb' => 'యెంబా',
'yi' => 'ఇడ్డిష్',
'yo' => 'యోరుబా',
'yue' => 'కాంటనీస్',
@@ -487,7 +513,7 @@ $languageNames = array(
'zap' => 'జపోటెక్',
'zbl' => 'బ్లిసింబల్స్',
'zen' => 'జెనాగా',
- 'zgh' => 'ప్రామాణిక మొరొకన్ తమజియట్',
+ 'zgh' => 'ప్రామాణిక మొరొకన్ టామజైట్',
'zh' => 'చైనీస్',
'zh-hans' => 'సరళీకృత చైనీస్',
'zh-hant' => 'సాంప్రదాయక చైనీస్',
@@ -495,9 +521,9 @@ $languageNames = array(
'zun' => 'జుని',
'zxx' => 'లిపి లేదు',
'zza' => 'జాజా',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'AED' => 'యునైటెడ్ ఆరబ్ ఎమిరేట్స్ దిరామ్',
'AFN' => 'ఆఫ్ఘాన్ ఆఫ్ఘాని',
'ALL' => 'ఆల్బేనియన్ లేక్',
@@ -512,7 +538,7 @@ $currencyNames = array(
'BBD' => 'బర్బాడియన్ డాలర్',
'BDT' => 'బాంగ్లాదేశ్ టాకా',
'BGN' => 'బల్గేరియన్ లేవ్',
- 'BHD' => 'బహ్రైని దీనార్',
+ 'BHD' => 'బహ్రెయిన్ దినార్',
'BIF' => 'బురిండియన్ ఫ్రాంక్',
'BMD' => 'బెర్ముడన్ డాలర్',
'BND' => 'బ్రూనై డాలర్',
@@ -521,12 +547,14 @@ $currencyNames = array(
'BSD' => 'బహామియన్ డాలర్',
'BTN' => 'భూటానీయుల గుల్‌ట్రుమ్',
'BWP' => 'బోట్స్‌వానా పులా',
- 'BYR' => 'బెలరూసియన్ రూబల్',
+ 'BYN' => 'బెలరూసియన్ రూబల్',
+ 'BYR' => 'బెలరూసియన్ రూబల్ (2000–2016)',
'BZD' => 'బెలీజ్ డాలర్',
'CAD' => 'కెనడియన్ డాలర్',
'CDF' => 'కొంగోలిస్ ఫ్రాంక్',
'CHF' => 'స్విస్ ఫ్రాంక్',
'CLP' => 'చిలియన్ పెసో',
+ 'CNH' => 'చైనీస్ యూవాన్ (ఆఫ్‌షోర్)',
'CNY' => 'చైనా దేశ యువాన్',
'COP' => 'కొలంబియన్ పెసో',
'CRC' => 'కోస్టా రికన్ కోలోన్',
@@ -544,7 +572,7 @@ $currencyNames = array(
'EUR' => 'యురొ',
'FJD' => 'ఫీజియన్ డాలర్',
'FKP' => 'ఫాక్‌ల్యాండ్ దీవులు పౌండ్',
- 'GBP' => 'బ్రిటిష్ పౌండ్ స్టెర్లింగ్',
+ 'GBP' => 'బ్రిటిష్ పౌండ్',
'GEL' => 'జార్జియన్ లారి',
'GHS' => 'గానెయన్ సెడి',
'GIP' => 'జిబ్రల్‌టూర్ పౌండ్',
@@ -556,7 +584,7 @@ $currencyNames = array(
'HNL' => 'హోండురన్ లెమిపిరా',
'HRK' => 'క్రొయేషియన్ క్యూన',
'HTG' => 'హైటియన్ గ్వోర్డే',
- 'HUF' => 'హంగేరియన్ ఫోరిన్ట్',
+ 'HUF' => 'హంగేరియన్ ఫోరింట్',
'IDR' => 'ఇండోనేషియా రూపాయి',
'ILS' => 'ఐరాయిలి న్యూ షెక్యెల్',
'INR' => 'రూపాయి',
@@ -565,7 +593,7 @@ $currencyNames = array(
'ISK' => 'ఐస్లాండిక్ క్రోనా',
'JMD' => 'జమైకన్ డాలర్',
'JOD' => 'జోర్‌డానియన్ దీనార్',
- 'JPY' => 'జపాను దేశ యెస్',
+ 'JPY' => 'జపాను దేశ యెన్',
'KES' => 'కెన్యాన్ షిల్లింగ్',
'KGS' => 'కిర్గిస్థాని సౌమ్',
'KHR' => 'కాంబోడియన్ రీల్',
@@ -590,7 +618,8 @@ $currencyNames = array(
'MMK' => 'మయన్మార్ క్యాట్',
'MNT' => 'మంగోలియన్ టుగ్రిక్',
'MOP' => 'మకనీస్ పటాక',
- 'MRO' => 'మౌరిటానియన్ ఒగ్యియా',
+ 'MRO' => 'మౌరిటానియన్ ఒగ్యియా (1973–2017)',
+ 'MRU' => 'మౌరిటానియన్ ఒగ్యియా',
'MUR' => 'మారిషన్ రూపాయి',
'MVP' => 'మాల్దీవుల రూపాయి',
'MVR' => 'మాల్దీవియన్ రుఫియా',
@@ -606,7 +635,7 @@ $currencyNames = array(
'NZD' => 'న్యూజిలాండ్ డాలర్',
'OMR' => 'ఒమాని రీయల్',
'PAB' => 'పనామనియన్ బల్బోవ',
- 'PEN' => 'పెరువియన్ న్యూవో సోల్',
+ 'PEN' => 'పెరువియన్ సోల్',
'PGK' => 'పప్యూ న్యూ గ్యినియన్ కినా',
'PHP' => 'ఫిలిప్పిన్ పెసో',
'PKR' => 'పాకిస్థాన్ రూపాయి',
@@ -628,7 +657,8 @@ $currencyNames = array(
'SOS' => 'సొమాలి షిల్లింగ్',
'SRD' => 'సురినామీయుల డాలర్',
'SSP' => 'దక్షిణ సుడానీస్ పౌండ్',
- 'STD' => 'సావో టోమ్ మరియు ప్రిన్సిపి డోబ్రా',
+ 'STD' => 'సావో టోమ్ మరియు ప్రిన్సిపి డోబ్రా (1977–2017)',
+ 'STN' => 'సావో టోమ్ మరియు ప్రిన్సిపి డోబ్రా',
'SYP' => 'సిరీయన్ పౌండ్',
'SZL' => 'స్వాజి లిలాన్గేని',
'THB' => 'థాయ్ బాట్',
@@ -641,19 +671,20 @@ $currencyNames = array(
'TWD' => 'క్రొత్త తైవాన్ డాలర్',
'TZS' => 'టాంజానియన్ షిల్లింగ్',
'UAH' => 'ఉక్రయినియన్ హ్రివ్‌నియా',
- 'UGX' => 'యుగండన్ షిల్లింగ్',
+ 'UGX' => 'ఉగాండన్ షిల్లింగ్',
'USD' => 'అమెరికా డాలర్',
'UYU' => 'ఉరుగ్వెయన్ పెసో',
'UZS' => 'ఉజ్‌బెకిస్తాన్ సౌమ్',
- 'VEF' => 'వెనుజులా బోలివర్',
+ 'VEF' => 'వెనుజులా బోలివర్ (2008–2018)',
+ 'VES' => 'వెనుజులా బోలివర్',
'VND' => 'వియత్నామీయుల డాంగ్',
'VUV' => 'వనాటు వటు',
'WST' => 'సమోయన్ తాలా',
- 'XAF' => 'సిఎఫ్‌ఎ ఫ్రాంక్ బిఇఏసి',
+ 'XAF' => 'సెంట్రల్ ఆఫ్రికన్ సిఎఫ్‌ఎ ఫ్రాంక్',
'XAG' => 'వెండి',
'XAU' => 'బంగారం',
'XCD' => 'తూర్పు కరీబియన్ డాలర్',
- 'XOF' => 'సిఎఫ్‌ఎ ఫ్రాంక్ బిసిఈఏఓ',
+ 'XOF' => 'పశ్చిమ ఆఫ్రికన్ సిఏఫ్ఏ ఫ్రాంక్',
'XPF' => 'సిఎఫ్‌పి ఫ్రాంక్',
'XPT' => 'ప్లాటినం',
'XXX' => 'తెలియని కరెన్సీ',
@@ -661,9 +692,9 @@ $currencyNames = array(
'ZAR' => 'దక్షిణ ఆఫ్రికా ర్యాండ్',
'ZMK' => 'జాంబియన్ క్వాచా (1968–2012)',
'ZMW' => 'జాంబియన్ క్వాచా',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'AED' => 'AED',
'AFN' => 'AFN',
'ALL' => 'ALL',
@@ -687,12 +718,14 @@ $currencySymbols = array(
'BSD' => 'BSD',
'BTN' => 'BTN',
'BWP' => 'BWP',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CA$',
'CDF' => 'CDF',
'CHF' => 'CHF',
'CLP' => 'CLP',
+ 'CNH' => 'CNH',
'CNY' => 'CN¥',
'COP' => 'COP',
'CRC' => 'CRC',
@@ -756,6 +789,7 @@ $currencySymbols = array(
'MNT' => 'MNT',
'MOP' => 'MOP',
'MRO' => 'MRO',
+ 'MRU' => 'MRU',
'MUR' => 'MUR',
'MVR' => 'MVR',
'MWK' => 'MWK',
@@ -793,6 +827,7 @@ $currencySymbols = array(
'SRD' => 'SRD',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'STN',
'SYP' => 'SYP',
'SZL' => 'SZL',
'THB' => '฿',
@@ -810,6 +845,7 @@ $currencySymbols = array(
'UYU' => 'UYU',
'UZS' => 'UZS',
'VEF' => 'VEF',
+ 'VES' => 'VES',
'VND' => '₫',
'VUV' => 'VUV',
'WST' => 'WST',
@@ -820,28 +856,27 @@ $currencySymbols = array(
'YER' => 'YER',
'ZAR' => 'ZAR',
'ZMW' => 'ZMW',
-);
+];
-$countryNames = array(
- 'AC' => 'ఎసెషన్ దీవి',
- 'AD' => 'అండొర్రా',
+$countryNames = [
+ 'AC' => 'అసెన్షన్ దీవి',
+ 'AD' => 'ఆండోరా',
'AE' => 'యునైటెడ్ అరబ్ ఎమిరేట్స్',
'AF' => 'ఆఫ్ఘనిస్తాన్',
'AG' => 'ఆంటిగ్వా మరియు బార్బుడా',
- 'AI' => 'ఆంగవిల్లా',
+ 'AI' => 'ఆంగ్విల్లా',
'AL' => 'అల్బేనియా',
'AM' => 'ఆర్మేనియా',
- 'AN' => 'నేదేర్లేండ్స్ అంటిల్లిస్',
'AO' => 'అంగోలా',
- 'AQ' => 'అంటార్కటికా',
+ 'AQ' => 'అంటార్కిటికా',
'AR' => 'అర్జెంటీనా',
'AS' => 'అమెరికన్ సమోవా',
'AT' => 'ఆస్ట్రియా',
'AU' => 'ఆస్ట్రేలియా',
'AW' => 'అరుబా',
- 'AX' => 'ఆలేండ్ దీవులు',
+ 'AX' => 'ఆలాండ్ దీవులు',
'AZ' => 'అజర్బైజాన్',
- 'BA' => 'బోస్నియా మరియు హెర్జెగొవీనా',
+ 'BA' => 'బోస్నియా మరియు హెర్జిగోవినా',
'BB' => 'బార్బడోస్',
'BD' => 'బంగ్లాదేశ్',
'BE' => 'బెల్జియం',
@@ -850,15 +885,15 @@ $countryNames = array(
'BH' => 'బహ్రెయిన్',
'BI' => 'బురుండి',
'BJ' => 'బెనిన్',
- 'BL' => 'సెంట్ బర్తేలెమీ',
+ 'BL' => 'సెయింట్ బర్థెలిమి',
'BM' => 'బెర్ముడా',
- 'BN' => 'బ్రూనై',
+ 'BN' => 'బ్రూనే',
'BO' => 'బొలీవియా',
'BQ' => 'కరీబియన్ నెదర్లాండ్స్',
'BR' => 'బ్రెజిల్',
'BS' => 'బహామాస్',
'BT' => 'భూటాన్',
- 'BV' => 'బొవెట్ దీవి',
+ 'BV' => 'బువై దీవి',
'BW' => 'బోట్స్వానా',
'BY' => 'బెలారస్',
'BZ' => 'బెలిజ్',
@@ -868,7 +903,7 @@ $countryNames = array(
'CF' => 'సెంట్రల్ ఆఫ్రికన్ రిపబ్లిక్',
'CG' => 'కాంగో- బ్రాజావిల్లి',
'CH' => 'స్విట్జర్లాండ్',
- 'CI' => 'ఐవరీ కోస్ట్',
+ 'CI' => 'కోట్ డి ఐవోర్',
'CK' => 'కుక్ దీవులు',
'CL' => 'చిలీ',
'CM' => 'కామెరూన్',
@@ -877,19 +912,19 @@ $countryNames = array(
'CP' => 'క్లిప్పర్టన్ దీవి',
'CR' => 'కోస్టా రికా',
'CU' => 'క్యూబా',
- 'CV' => 'కేప్ వెర్డే',
- 'CW' => 'కురాకవో',
+ 'CV' => 'కేప్ వెర్డె',
+ 'CW' => 'క్యూరసో',
'CX' => 'క్రిస్మస్ దీవి',
'CY' => 'సైప్రస్',
- 'CZ' => 'చెక్ రిపబ్లిక్',
+ 'CZ' => 'చెకియా',
'DE' => 'జర్మనీ',
'DG' => 'డియాగో గార్సియా',
'DJ' => 'జిబౌటి',
'DK' => 'డెన్మార్క్',
- 'DM' => 'డోమెనిక',
- 'DO' => 'డొమెనికన్ రిపబ్లిక్',
+ 'DM' => 'డొమినికా',
+ 'DO' => 'డొమినికన్ రిపబ్లిక్',
'DZ' => 'అల్జీరియా',
- 'EA' => 'స్యూటా మరియు మెలిల్లా',
+ 'EA' => 'స్యూటా & మెలిల్లా',
'EC' => 'ఈక్వడార్',
'EE' => 'ఎస్టోనియా',
'EG' => 'ఈజిప్ట్',
@@ -897,45 +932,46 @@ $countryNames = array(
'ER' => 'ఎరిట్రియా',
'ES' => 'స్పెయిన్',
'ET' => 'ఇథియోపియా',
- 'EU' => 'యురోపియన్ యునియన్',
+ 'EU' => 'యూరోపియన్ యూనియన్',
+ 'EZ' => 'యూరోజోన్',
'FI' => 'ఫిన్లాండ్',
'FJ' => 'ఫిజీ',
'FK' => 'ఫాక్‌ల్యాండ్ దీవులు',
- 'FM' => 'మైక్రోనేశియ',
+ 'FM' => 'మైక్రోనేషియా',
'FO' => 'ఫారో దీవులు',
'FR' => 'ఫ్రాన్స్‌',
- 'GA' => 'గాబన్',
+ 'GA' => 'గేబన్',
'GB' => 'యు.కె.',
- 'GD' => 'గ్రెనెడా',
+ 'GD' => 'గ్రెనడా',
'GE' => 'జార్జియా',
'GF' => 'ఫ్రెంచ్ గియానా',
- 'GG' => 'గ్వేర్నసే',
+ 'GG' => 'గర్న్‌సీ',
'GH' => 'ఘనా',
- 'GI' => 'జిబ్రాల్టార్',
- 'GL' => 'గ్రీన్‌లాండ్',
+ 'GI' => 'జిబ్రాల్టర్',
+ 'GL' => 'గ్రీన్‌ల్యాండ్',
'GM' => 'గాంబియా',
'GN' => 'గినియా',
- 'GP' => 'గ్వాడేలోప్',
+ 'GP' => 'గ్వాడెలోప్',
'GQ' => 'ఈక్వటోరియల్ గినియా',
'GR' => 'గ్రీస్',
- 'GS' => 'దక్షిణ జార్జియా & దక్షిణ శాండ్విచ్ దీవులు',
- 'GT' => 'గ్వాటిమాల',
+ 'GS' => 'దక్షిణ జార్జియా మరియు దక్షిణ శాండ్విచ్ దీవులు',
+ 'GT' => 'గ్వాటిమాలా',
'GU' => 'గ్వామ్',
'GW' => 'గినియా-బిస్సావ్',
'GY' => 'గయానా',
'HK' => 'హాంకాంగ్',
- 'HM' => 'హెర్డ్ & మెక్ డొనాల్డ్ దీవులు',
+ 'HM' => 'హెర్డ్ దీవి మరియు మెక్‌డొనాల్డ్ దీవులు',
'HN' => 'హోండురాస్',
- 'HR' => 'క్రోయేషియా',
+ 'HR' => 'క్రొయేషియా',
'HT' => 'హైటి',
'HU' => 'హంగేరీ',
'IC' => 'కేనరీ దీవులు',
'ID' => 'ఇండోనేషియా',
'IE' => 'ఐర్లాండ్',
- 'IL' => 'ఇజ్రాయిల్',
+ 'IL' => 'ఇజ్రాయెల్',
'IM' => 'ఐల్ ఆఫ్ మాన్',
- 'IN' => 'భారత దేశం',
- 'IO' => 'బ్రిటీష్ భారతీయ సముద్రపు ప్రాంతం',
+ 'IN' => 'భారతదేశం',
+ 'IO' => 'బ్రిటీష్ హిందూ మహాసముద్ర ప్రాంతం',
'IQ' => 'ఇరాక్',
'IR' => 'ఇరాన్',
'IS' => 'ఐస్లాండ్',
@@ -949,77 +985,77 @@ $countryNames = array(
'KH' => 'కంబోడియా',
'KI' => 'కిరిబాటి',
'KM' => 'కొమొరోస్',
- 'KN' => 'సెంట్ కిట్ట్స్ మరియు నెవిస్',
+ 'KN' => 'సెయింట్ కిట్స్ మరియు నెవిస్',
'KP' => 'ఉత్తర కొరియా',
'KR' => 'దక్షిణ కొరియా',
'KW' => 'కువైట్',
'KY' => 'కేమాన్ దీవులు',
- 'KZ' => 'కజకస్తాన్',
+ 'KZ' => 'కజకిస్తాన్',
'LA' => 'లావోస్',
'LB' => 'లెబనాన్',
- 'LC' => 'సెంట్ లూసియా',
- 'LI' => 'లిక్టెస్టేన్',
+ 'LC' => 'సెయింట్ లూసియా',
+ 'LI' => 'లిక్టెన్‌స్టెయిన్',
'LK' => 'శ్రీలంక',
'LR' => 'లైబీరియా',
'LS' => 'లెసోతో',
'LT' => 'లిథువేనియా',
- 'LU' => 'లక్సంబర్గ్',
+ 'LU' => 'లక్సెంబర్గ్',
'LV' => 'లాత్వియా',
'LY' => 'లిబియా',
- 'MA' => 'మొరాక్కో',
+ 'MA' => 'మొరాకో',
'MC' => 'మొనాకో',
'MD' => 'మోల్డోవా',
- 'ME' => 'మోంటేనేగ్రో',
- 'MF' => 'సెంట్ మార్టిన్',
+ 'ME' => 'మాంటెనెగ్రో',
+ 'MF' => 'సెయింట్ మార్టిన్',
'MG' => 'మడగాస్కర్',
'MH' => 'మార్షల్ దీవులు',
'MK' => 'మేసిడోనియా',
'ML' => 'మాలి',
- 'MM' => 'మయన్మార్ (బర్మా)',
+ 'MM' => 'మయన్మార్',
'MN' => 'మంగోలియా',
- 'MO' => 'మకావు',
+ 'MO' => 'మకావ్',
'MP' => 'ఉత్తర మరియానా దీవులు',
- 'MQ' => 'మార్టినిక్',
+ 'MQ' => 'మార్టినీక్',
'MR' => 'మౌరిటేనియా',
- 'MS' => 'మోంట్సేర్రాట్',
+ 'MS' => 'మాంట్సెరాట్',
'MT' => 'మాల్టా',
'MU' => 'మారిషస్',
'MV' => 'మాల్దీవులు',
- 'MW' => 'మాలావి',
+ 'MW' => 'మలావీ',
'MX' => 'మెక్సికో',
'MY' => 'మలేషియా',
'MZ' => 'మొజాంబిక్',
'NA' => 'నమీబియా',
'NC' => 'క్రొత్త కాలెడోనియా',
'NE' => 'నైజర్',
- 'NF' => 'నార్ఫాక్ దీవి',
+ 'NF' => 'నార్ఫోక్ దీవి',
'NG' => 'నైజీరియా',
'NI' => 'నికరాగువా',
'NL' => 'నెదర్లాండ్స్',
'NO' => 'నార్వే',
'NP' => 'నేపాల్',
'NR' => 'నౌరు',
- 'NU' => 'నియు',
+ 'NU' => 'నియూ',
'NZ' => 'న్యూజిలాండ్',
- 'OM' => 'ఒమన్',
+ 'OM' => 'ఓమన్',
'PA' => 'పనామా',
'PE' => 'పెరూ',
- 'PF' => 'ఫ్రెంచ్ పోలినిషియా',
- 'PG' => 'పాపువా న్యు గినియా',
- 'PH' => 'ఫిలిప్పీన్స్',
+ 'PF' => 'ఫ్రెంచ్ పోలినీషియా',
+ 'PG' => 'పాపువా న్యూ గినియా',
+ 'PH' => 'ఫిలిప్పైన్స్',
'PK' => 'పాకిస్తాన్',
'PL' => 'పోలాండ్',
- 'PM' => 'సెంట్ పియెర్ మరియు మికెలాన్',
+ 'PM' => 'సెయింట్ పియెర్ మరియు మికెలాన్',
'PN' => 'పిట్‌కెయిర్న్ దీవులు',
- 'PR' => 'ఫ్యూర్టో రికో',
+ 'PR' => 'ప్యూర్టో రికో',
'PS' => 'పాలస్తీనా',
'PT' => 'పోర్చుగల్',
- 'PW' => 'పలావు',
+ 'PW' => 'పాలావ్',
'PY' => 'పరాగ్వే',
- 'QA' => 'కతర్',
+ 'QA' => 'ఖతార్',
'QO' => 'ఒషీనియా బయటున్నవి',
- 'RE' => 'రియూనియన్',
- 'RO' => 'రోమానియా',
+ 'RE' => 'రీయూనియన్',
+ 'RO' => 'రోమేనియా',
'RS' => 'సెర్బియా',
'RU' => 'రష్యా',
'RW' => 'రువాండా',
@@ -1029,31 +1065,31 @@ $countryNames = array(
'SD' => 'సూడాన్',
'SE' => 'స్వీడన్',
'SG' => 'సింగపూర్',
- 'SH' => 'సెంట్ హెలినా',
+ 'SH' => 'సెయింట్ హెలెనా',
'SI' => 'స్లోవేనియా',
- 'SJ' => 'స్వాల్బార్డ్ మరియు యాన్ మాయేన్',
- 'SK' => 'స్లోవేకియా',
+ 'SJ' => 'స్వాల్‌బార్డ్ మరియు జాన్ మాయెన్',
+ 'SK' => 'స్లొవేకియా',
'SL' => 'సియెర్రా లియాన్',
- 'SM' => 'సాన్ మారినో',
+ 'SM' => 'శాన్ మారినో',
'SN' => 'సెనెగల్',
'SO' => 'సోమాలియా',
- 'SR' => 'సురినామ్',
+ 'SR' => 'సూరినామ్',
'SS' => 'దక్షిణ సూడాన్',
- 'ST' => 'సావోటోమ్ మరియు ప్రిన్సిపే',
+ 'ST' => 'సావో టోమ్ మరియు ప్రిన్సిపి',
'SV' => 'ఎల్ సాల్వడోర్',
'SX' => 'సింట్ మార్టెన్',
'SY' => 'సిరియా',
'SZ' => 'స్వాజిల్యాండ్',
'TA' => 'ట్రిస్టన్ డ కన్హా',
- 'TC' => 'తుర్క్ మరియు కాలికోస్ దీవులు',
+ 'TC' => 'టర్క్స్ మరియు కైకోస్ దీవులు',
'TD' => 'చాద్',
'TF' => 'ఫ్రెంచ్ దక్షిణ ప్రాంతాలు',
'TG' => 'టోగో',
'TH' => 'థాయిలాండ్',
'TJ' => 'తజికిస్తాన్',
- 'TK' => 'టోకేలావ్',
+ 'TK' => 'టోకెలావ్',
'TL' => 'టిమోర్-లెస్టె',
- 'TM' => 'తుర్కమేనిస్తాన్',
+ 'TM' => 'టర్క్‌మెనిస్తాన్',
'TN' => 'ట్యునీషియా',
'TO' => 'టోంగా',
'TR' => 'టర్కీ',
@@ -1064,33 +1100,36 @@ $countryNames = array(
'UA' => 'ఉక్రెయిన్',
'UG' => 'ఉగాండా',
'UM' => 'సంయుక్త రాజ్య అమెరికా బయట ఉన్న దీవులు',
+ 'UN' => 'యు.ఎన్',
'US' => 'యు.ఎస్.',
- 'UY' => 'ఉరుగువే',
+ 'UY' => 'ఉరుగ్వే',
'UZ' => 'ఉజ్బెకిస్తాన్',
'VA' => 'వాటికన్ నగరం',
- 'VC' => 'సెంట్ విన్సెంట్ మరియు గ్రెనడీన్స్',
- 'VE' => 'వెనుజువేలా',
+ 'VC' => 'సెయింట్ విన్సెంట్ మరియు గ్రెనడీన్స్',
+ 'VE' => 'వెనిజులా',
'VG' => 'బ్రిటిష్ వర్జిన్ దీవులు',
'VI' => 'యు.ఎస్. వర్జిన్ దీవులు',
'VN' => 'వియత్నాం',
'VU' => 'వనాటు',
- 'WF' => 'వాలిస్ మరియు ఫ్యుత్యునా',
+ 'WF' => 'వాల్లిస్ మరియు ఫుటునా',
'WS' => 'సమోవా',
'XK' => 'కొసోవో',
'YE' => 'యెమెన్',
- 'YT' => 'మాయొట్టి',
+ 'YT' => 'మాయొట్',
'ZA' => 'దక్షిణ ఆఫ్రికా',
'ZM' => 'జాంబియా',
'ZW' => 'జింబాబ్వే',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-one' => '{0} శతాబ్దం',
+ 'century-other' => '{0} శతాబ్దాలు',
'day-future-one' => '{0} రోజులో',
'day-future-other' => '{0} రోజుల్లో',
- 'day-narrow-future-one' => '+{0} రోజు',
- 'day-narrow-future-other' => '+{0} రోజులు',
- 'day-narrow-past-one' => '-{0} రోజు',
- 'day-narrow-past-other' => '-{0} రోజులు',
+ 'day-narrow-future-one' => '{0} రోజులో',
+ 'day-narrow-future-other' => '{0} రోజుల్లో',
+ 'day-narrow-past-one' => '{0} రోజు క్రితం',
+ 'day-narrow-past-other' => '{0} రోజుల క్రితం',
'day-one' => '{0} రోజు',
'day-other' => '{0} రోజులు',
'day-past-one' => '{0} రోజు క్రితం',
@@ -1099,12 +1138,24 @@ $timeUnits = array(
'day-short-future-other' => '{0} రోజుల్లో',
'day-short-past-one' => '{0} రోజు క్రితం',
'day-short-past-other' => '{0} రోజుల క్రితం',
+ 'fri-future-one' => '{0} శుక్రవారంలో',
+ 'fri-future-other' => '{0} శుక్రవారాలలో',
+ 'fri-narrow-future-one' => '{0} శు.లో',
+ 'fri-narrow-future-other' => '{0} శు.లో',
+ 'fri-narrow-past-one' => '{0} శుక్ర. క్రితం',
+ 'fri-narrow-past-other' => '{0} శుక్ర. క్రితం',
+ 'fri-past-one' => '{0} శుక్రవారం క్రితం',
+ 'fri-past-other' => '{0} శుక్రవారాల క్రితం',
+ 'fri-short-future-one' => '{0} శుక్ర.లో',
+ 'fri-short-future-other' => '{0} శుక్ర.లో',
+ 'fri-short-past-one' => '{0} శుక్ర. క్రితం',
+ 'fri-short-past-other' => '{0} శుక్ర. క్రితం',
'hour-future-one' => '{0} గంటలో',
'hour-future-other' => '{0} గంటల్లో',
- 'hour-narrow-future-one' => '+{0} గం',
- 'hour-narrow-future-other' => '+{0} గం',
- 'hour-narrow-past-one' => '-{0} గం',
- 'hour-narrow-past-other' => '-{0} గం',
+ 'hour-narrow-future-one' => '{0} గం.లో',
+ 'hour-narrow-future-other' => '{0} గం.లో',
+ 'hour-narrow-past-one' => '{0} గం. క్రితం',
+ 'hour-narrow-past-other' => '{0} గం. క్రితం',
'hour-one' => '{0} గంట',
'hour-other' => '{0} గంటలు',
'hour-past-one' => '{0} గంట క్రితం',
@@ -1119,10 +1170,10 @@ $timeUnits = array(
'millisecond-other' => '{0} మిల్లీసెకన్లు',
'minute-future-one' => '{0} నిమిషంలో',
'minute-future-other' => '{0} నిమిషాల్లో',
- 'minute-narrow-future-one' => '+{0} ని',
- 'minute-narrow-future-other' => '+{0} ని',
- 'minute-narrow-past-one' => '-{0} ని',
- 'minute-narrow-past-other' => '-{0} ని',
+ 'minute-narrow-future-one' => '{0} నిమి.లో',
+ 'minute-narrow-future-other' => '{0} నిమి.లో',
+ 'minute-narrow-past-one' => '{0} నిమి. క్రితం',
+ 'minute-narrow-past-other' => '{0} నిమి. క్రితం',
'minute-one' => '{0} నిమిషం',
'minute-other' => '{0} నిమిషాలు',
'minute-past-one' => '{0} నిమిషం క్రితం',
@@ -1131,12 +1182,24 @@ $timeUnits = array(
'minute-short-future-other' => '{0} నిమి.లో',
'minute-short-past-one' => '{0} నిమి. క్రితం',
'minute-short-past-other' => '{0} నిమి. క్రితం',
+ 'mon-future-one' => '{0} సోమవారంలో',
+ 'mon-future-other' => '{0} సోమవారాలలో',
+ 'mon-narrow-future-one' => '{0} సోమవారంలో',
+ 'mon-narrow-future-other' => '{0} సోమవారాలలో',
+ 'mon-narrow-past-one' => '{0} సోమ. క్రితం',
+ 'mon-narrow-past-other' => '{0} సోమ. క్రితం',
+ 'mon-past-one' => '{0} సోమవారం క్రితం',
+ 'mon-past-other' => '{0} సోమవారాల క్రితం',
+ 'mon-short-future-one' => '{0} సోమ.లో',
+ 'mon-short-future-other' => '{0} సోమ.లో',
+ 'mon-short-past-one' => '{0} సోమ. క్రితం',
+ 'mon-short-past-other' => '{0} సోమ. క్రితం',
'month-future-one' => '{0} నెలలో',
'month-future-other' => '{0} నెలల్లో',
- 'month-narrow-future-one' => '+{0} నెల',
- 'month-narrow-future-other' => '+{0} నెలలు',
- 'month-narrow-past-one' => '-{0} నెల',
- 'month-narrow-past-other' => '-{0} నెలలు',
+ 'month-narrow-future-one' => '{0} నెలలో',
+ 'month-narrow-future-other' => '{0} నెలల్లో',
+ 'month-narrow-past-one' => '{0} నెల క్రితం',
+ 'month-narrow-past-other' => '{0} నెలల క్రితం',
'month-one' => '{0} నెల',
'month-other' => '{0} నెలలు',
'month-past-one' => '{0} నెల క్రితం',
@@ -1149,36 +1212,96 @@ $timeUnits = array(
'nanosecond-other' => '{0} నానోసెకన్లు',
'quarter-future-one' => '{0} త్రైమాసికంలో',
'quarter-future-other' => '{0} త్రైమాసికాల్లో',
- 'quarter-narrow-future-one' => '+{0} త్రై',
- 'quarter-narrow-future-other' => '+{0} త్రై',
- 'quarter-narrow-past-one' => '-{0} త్రై',
- 'quarter-narrow-past-other' => '-{0} త్రై',
+ 'quarter-narrow-future-one' => '{0} త్రైమాసికంలో',
+ 'quarter-narrow-future-other' => '{0} త్రైమాసికాల్లో',
+ 'quarter-narrow-past-one' => '{0} త్రైమా. క్రితం',
+ 'quarter-narrow-past-other' => '{0} త్రైమా. క్రితం',
'quarter-past-one' => '{0} త్రైమాసికం క్రితం',
'quarter-past-other' => '{0} త్రైమాసికాల క్రితం',
'quarter-short-future-one' => '{0} త్రైమా.లో',
'quarter-short-future-other' => '{0} త్రైమా.ల్లో',
'quarter-short-past-one' => '{0} త్రైమా. క్రితం',
'quarter-short-past-other' => '{0} త్రైమా. క్రితం',
- 'second-future-one' => '{0} సెకన్‌లో',
+ 'sat-future-one' => '{0} శనివారంలో',
+ 'sat-future-other' => '{0} శనివారాలలో',
+ 'sat-narrow-future-one' => '{0} శ.లో',
+ 'sat-narrow-future-other' => '{0} శ.లో',
+ 'sat-narrow-past-one' => '{0} శని. క్రితం',
+ 'sat-narrow-past-other' => '{0} శని. క్రితం',
+ 'sat-past-one' => '{0} శనివారం క్రితం',
+ 'sat-past-other' => '{0} శనివారాల క్రితం',
+ 'sat-short-future-one' => '{0} శని.లో',
+ 'sat-short-future-other' => '{0} శని.లో',
+ 'sat-short-past-one' => '{0} శని. క్రితం',
+ 'sat-short-past-other' => '{0} శని. క్రితం',
+ 'second-future-one' => '{0} సెకనులో',
'second-future-other' => '{0} సెకన్లలో',
- 'second-narrow-future-one' => '+{0} సె',
- 'second-narrow-future-other' => '+{0} సె',
- 'second-narrow-past-one' => '-{0} సె క్రితం',
- 'second-narrow-past-other' => '-{0} సె క్రితం',
+ 'second-narrow-future-one' => '{0} సెక.లో',
+ 'second-narrow-future-other' => '{0} సెక. లో',
+ 'second-narrow-past-one' => '{0} సెక. క్రితం',
+ 'second-narrow-past-other' => '{0} సెక. క్రితం',
'second-one' => '{0} సెకను',
'second-other' => '{0} సెకన్లు',
'second-past-one' => '{0} సెకను క్రితం',
'second-past-other' => '{0} సెకన్ల క్రితం',
- 'second-short-future-one' => '{0} సెక. లో',
- 'second-short-future-other' => '{0} సెక. లో',
+ 'second-short-future-one' => '{0} సెకనులో',
+ 'second-short-future-other' => '{0} సెకన్లలో',
'second-short-past-one' => '{0} సెక. క్రితం',
'second-short-past-other' => '{0} సెక. క్రితం',
+ 'sun-future-one' => '{0} ఆదివారంలో',
+ 'sun-future-other' => '{0} ఆదివారాల్లో',
+ 'sun-narrow-future-one' => '{0} ఆదివారంలో',
+ 'sun-narrow-future-other' => '{0} ఆదివారాల్లో',
+ 'sun-narrow-past-one' => '{0} ఆది. క్రితం',
+ 'sun-narrow-past-other' => '{0} ఆది. క్రితం',
+ 'sun-past-one' => '{0} ఆదివారం క్రితం',
+ 'sun-past-other' => '{0} ఆదివారాల క్రితం',
+ 'sun-short-future-one' => '{0} ఆది.లో',
+ 'sun-short-future-other' => '{0} ఆది.ల్లో',
+ 'sun-short-past-one' => '{0} ఆది. క్రితం',
+ 'sun-short-past-other' => '{0} ఆది. క్రితం',
+ 'thu-future-one' => '{0} గురువారంలో',
+ 'thu-future-other' => '{0} గురువారాలలో',
+ 'thu-narrow-future-one' => '{0} గు.లో',
+ 'thu-narrow-future-other' => '{0} గు.లో',
+ 'thu-narrow-past-one' => '{0} గురు. క్రితం',
+ 'thu-narrow-past-other' => '{0} గురు. క్రితం',
+ 'thu-past-one' => '{0} గురువారం క్రితం',
+ 'thu-past-other' => '{0} గురువారాల క్రితం',
+ 'thu-short-future-one' => '{0} గురు.లో',
+ 'thu-short-future-other' => '{0} గురు.లో',
+ 'thu-short-past-one' => '{0} గురు. క్రితం',
+ 'thu-short-past-other' => '{0} గురు. క్రితం',
+ 'tue-future-one' => '{0} మంగళవారంలో',
+ 'tue-future-other' => '{0} మంగళవారాలలో',
+ 'tue-narrow-future-one' => '{0} మం.లో',
+ 'tue-narrow-future-other' => '{0} మం.లో',
+ 'tue-narrow-past-one' => '{0} మంగళ. క్రితం',
+ 'tue-narrow-past-other' => '{0} మంగళ. క్రితం',
+ 'tue-past-one' => '{0} మంగళవారం క్రితం',
+ 'tue-past-other' => '{0} మంగళవారాల క్రితం',
+ 'tue-short-future-one' => '{0} మంగళ.లో',
+ 'tue-short-future-other' => '{0} మంగళ.లో',
+ 'tue-short-past-one' => '{0} మంగళ. క్రితం',
+ 'tue-short-past-other' => '{0} మంగళ. క్రితం',
+ 'wed-future-one' => '{0} బుధవారంలో',
+ 'wed-future-other' => '{0} బుధవారాలలో',
+ 'wed-narrow-future-one' => '{0} బుధవారంలో',
+ 'wed-narrow-future-other' => '{0} బుధవారాలలో',
+ 'wed-narrow-past-one' => '{0} బుధ. క్రితం',
+ 'wed-narrow-past-other' => '{0} బుధ. క్రితం',
+ 'wed-past-one' => '{0} బుధవారం క్రితం',
+ 'wed-past-other' => '{0} బుధవారాల క్రితం',
+ 'wed-short-future-one' => '{0} బుధ.లో',
+ 'wed-short-future-other' => '{0} బుధ.లో',
+ 'wed-short-past-one' => '{0} బుధ. క్రితం',
+ 'wed-short-past-other' => '{0} బుధ. క్రితం',
'week-future-one' => '{0} వారంలో',
'week-future-other' => '{0} వారాల్లో',
- 'week-narrow-future-one' => '+{0} వా.',
- 'week-narrow-future-other' => '+{0} వా.',
- 'week-narrow-past-one' => '-{0} వా.',
- 'week-narrow-past-other' => '-{0} వా.',
+ 'week-narrow-future-one' => '{0} వారంలో',
+ 'week-narrow-future-other' => '{0} వారాల్లో',
+ 'week-narrow-past-one' => '{0} వారం క్రితం',
+ 'week-narrow-past-other' => '{0} వారాల క్రితం',
'week-one' => '{0} వారం',
'week-other' => '{0} వారాలు',
'week-past-one' => '{0} వారం క్రితం',
@@ -1189,16 +1312,16 @@ $timeUnits = array(
'week-short-past-other' => '{0} వారాల క్రితం',
'year-future-one' => '{0} సంవత్సరంలో',
'year-future-other' => '{0} సంవత్సరాల్లో',
- 'year-narrow-future-one' => '+{0} సం.',
- 'year-narrow-future-other' => '+{0} సం.',
- 'year-narrow-past-one' => '-{0} సం.',
- 'year-narrow-past-other' => '-{0} సం.',
+ 'year-narrow-future-one' => '{0} సం.లో',
+ 'year-narrow-future-other' => '{0} సం.ల్లో',
+ 'year-narrow-past-one' => '{0} సం. క్రితం',
+ 'year-narrow-past-other' => '{0} సం. క్రితం',
'year-one' => '{0} సంవత్సరం',
'year-other' => '{0} సంవత్సరాలు',
'year-past-one' => '{0} సంవత్సరం క్రితం',
'year-past-other' => '{0} సంవత్సరాల క్రితం',
'year-short-future-one' => '{0} సం.లో',
- 'year-short-future-other' => '{0} సం.లో',
+ 'year-short-future-other' => '{0} సం.ల్లో',
'year-short-past-one' => '{0} సం. క్రితం',
'year-short-past-other' => '{0} సం. క్రితం',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesTg_cyrl.php b/MLEB/cldr/CldrNames/CldrNamesTg_cyrl.php
index 48466581..4b38baf6 100644
--- a/MLEB/cldr/CldrNames/CldrNamesTg_cyrl.php
+++ b/MLEB/cldr/CldrNames/CldrNamesTg_cyrl.php
@@ -1,76 +1,432 @@
<?php
-$languageNames = array(
- 'be' => 'Белорусӣ',
- 'bg' => 'Булғорӣ',
- 'bh' => 'Биҳарӣ',
- 'bn' => 'Бенгалӣ',
- 'br' => 'Бретонӣ',
- 'bs' => 'Босниягӣ',
- 'ca' => 'Каталанӣ',
- 'cs' => 'Чехӣ',
- 'da' => 'Даниягӣ',
- 'de' => 'Немисӣ',
- 'el' => 'Юнонӣ',
- 'en' => 'Англисӣ',
- 'eo' => 'Эсперанто',
- 'es' => 'Испанӣ',
- 'et' => 'Эстонӣ',
- 'eu' => 'Баскӣ',
- 'fa' => 'Форсӣ',
- 'fi' => 'Финнӣ',
- 'fil' => 'Филиппинӣ',
- 'fo' => 'Фарозӣ',
- 'fr' => 'Фаронсавӣ',
- 'fy' => 'Фрисианӣ',
- 'ga' => 'Ирландӣ',
- 'gd' => 'Шотландӣ-Галикӣ',
- 'gl' => 'Галисианӣ',
- 'gn' => 'Горанӣ',
- 'gu' => 'Гуҷаратӣ',
- 'he' => 'Яҳудӣ',
- 'hi' => 'Ҳиндӣ',
- 'hu' => 'Маҷорӣ',
+$languageNames = [
+ 'af' => 'африкаанс',
+ 'am' => 'амҳарӣ',
+ 'ar' => 'арабӣ',
+ 'as' => 'ассомӣ',
+ 'az' => 'озарбойҷонӣ',
+ 'ba' => 'бошқирдӣ',
+ 'ban' => 'балинӣ',
+ 'be' => 'белорусӣ',
+ 'bem' => 'бемба',
+ 'bg' => 'булғорӣ',
+ 'bn' => 'бинғолӣ',
+ 'bo' => 'тибетӣ',
+ 'br' => 'бретонӣ',
+ 'bs' => 'босниягӣ',
+ 'ca' => 'каталонӣ',
+ 'ceb' => 'себуано',
+ 'chm' => 'марӣ',
+ 'chr' => 'черокӣ',
+ 'ckb' => 'курдии марказӣ',
+ 'co' => 'корсиканӣ',
+ 'cs' => 'чехӣ',
+ 'cy' => 'валлӣ',
+ 'da' => 'даниягӣ',
+ 'de' => 'немисӣ',
+ 'dsb' => 'сербии поёнӣ',
+ 'dv' => 'дивеҳӣ',
+ 'dz' => 'дзонгха',
+ 'el' => 'юнонӣ',
+ 'en' => 'англисӣ',
+ 'eo' => 'эсперанто',
+ 'es' => 'испанӣ',
+ 'es-419' => 'испанӣ (Америкаи Лотинӣ)',
+ 'et' => 'эстонӣ',
+ 'eu' => 'баскӣ',
+ 'fa' => 'форсӣ',
+ 'ff' => 'фулаҳ',
+ 'fi' => 'финӣ',
+ 'fil' => 'филиппинӣ',
+ 'fo' => 'фарерӣ',
+ 'fr' => 'франсузӣ',
+ 'fy' => 'фризии ғарбӣ',
+ 'ga' => 'ирландӣ',
+ 'gd' => 'шотландии гэлӣ',
+ 'gl' => 'галисиягӣ',
+ 'gn' => 'гуаранӣ',
+ 'gu' => 'гуҷаротӣ',
+ 'ha' => 'ҳауса',
+ 'haw' => 'ҳавайӣ',
+ 'he' => 'ибронӣ',
+ 'hi' => 'ҳиндӣ',
+ 'hil' => 'ҳилигайнон',
+ 'hr' => 'хорватӣ',
+ 'hsb' => 'сербии болоӣ',
+ 'ht' => 'гаитии креолӣ',
+ 'hu' => 'маҷорӣ',
+ 'hy' => 'арманӣ',
+ 'hz' => 'ҳереро',
'ia' => 'Байни забонӣ',
- 'id' => 'Индонезӣ',
- 'is' => 'Исландӣ',
- 'ja' => 'Ҷопонӣ',
+ 'ibb' => 'ибибио',
+ 'id' => 'индонезӣ',
+ 'ig' => 'игбо',
+ 'is' => 'исландӣ',
+ 'it' => 'италиявӣ',
+ 'iu' => 'инуктитутӣ',
+ 'ja' => 'японӣ',
'jv' => 'Ҷаванизӣ',
- 'ka' => 'Гурҷӣ',
- 'ky' => 'Қирғизӣ',
- 'la' => 'Лотинӣ',
- 'lo' => 'Лаосӣ',
- 'lt' => 'Литвонӣ',
- 'lv' => 'Латвиягӣ',
- 'nl' => 'Ҳолландӣ',
- 'no' => 'Норвегӣ',
- 'or' => 'Урисоӣ',
- 'pl' => 'Лаҳистонӣ',
- 'pt' => 'Португалӣ',
- 'pt-br' => 'Португалӣ (Бразилия)',
- 'ro' => 'Руминӣ',
- 'ru' => 'Русӣ',
- 'sv' => 'Шведӣ',
- 'tg' => 'Тоҷикӣ',
- 'ug' => 'Ӯйғурӣ',
- 'uk' => 'Украинӣ',
- 'ur' => 'Урду',
- 'uz' => 'Ӯзбекӣ',
- 'yi' => 'Яҳудии Аврупои шарқӣ',
- 'zh' => 'Чинӣ',
+ 'ka' => 'гурҷӣ',
+ 'kk' => 'қазоқӣ',
+ 'km' => 'кхмерӣ',
+ 'kn' => 'каннада',
+ 'ko' => 'кореягӣ',
+ 'kok' => 'конканӣ',
+ 'kr' => 'канурӣ',
+ 'kru' => 'курукс',
+ 'ks' => 'кашмирӣ',
+ 'ku' => 'курдӣ',
+ 'ky' => 'қирғизӣ',
+ 'la' => 'лотинӣ',
+ 'lb' => 'люксембургӣ',
+ 'lo' => 'лаосӣ',
+ 'lt' => 'литвонӣ',
+ 'lv' => 'латишӣ',
+ 'men' => 'менде',
+ 'mg' => 'малагасӣ',
+ 'mi' => 'маорӣ',
+ 'mk' => 'мақдунӣ',
+ 'ml' => 'малаяламӣ',
+ 'mn' => 'муғулӣ',
+ 'mni' => 'манипурӣ',
+ 'moh' => 'моҳок',
+ 'mr' => 'маратҳӣ',
+ 'ms' => 'малайӣ',
+ 'mt' => 'малтӣ',
+ 'my' => 'бирманӣ',
+ 'ne' => 'непалӣ',
+ 'niu' => 'ниуэӣ',
+ 'nl' => 'голландӣ',
+ 'no' => 'норвегӣ',
+ 'ny' => 'нянҷа',
+ 'oc' => 'окситанӣ',
+ 'om' => 'оромо',
+ 'or' => 'одия',
+ 'pa' => 'панҷобӣ',
+ 'pap' => 'папиаменто',
+ 'pl' => 'лаҳистонӣ',
+ 'ps' => 'пушту',
+ 'pt' => 'португалӣ',
+ 'qu' => 'кечуа',
+ 'quc' => 'киче',
+ 'rm' => 'ретороманӣ',
+ 'ro' => 'руминӣ',
+ 'ru' => 'русӣ',
+ 'rw' => 'киняруанда',
+ 'sa' => 'санскрит',
+ 'sah' => 'саха',
+ 'sat' => 'санталӣ',
+ 'sd' => 'синдӣ',
+ 'se' => 'самии шимолӣ',
+ 'si' => 'сингалӣ',
+ 'sk' => 'словакӣ',
+ 'sl' => 'словенӣ',
+ 'sma' => 'самии ҷанубӣ',
+ 'smj' => 'луле самӣ',
+ 'smn' => 'инари самӣ',
+ 'sms' => 'сколти самӣ',
+ 'so' => 'сомалӣ',
+ 'sq' => 'албанӣ',
+ 'sr' => 'сербӣ',
+ 'sv' => 'шведӣ',
+ 'syr' => 'суриёнӣ',
+ 'ta' => 'тамилӣ',
+ 'te' => 'телугу',
+ 'tg' => 'тоҷикӣ',
+ 'th' => 'тайӣ',
+ 'ti' => 'тигриня',
+ 'tk' => 'туркманӣ',
+ 'to' => 'тонганӣ',
+ 'tr' => 'туркӣ',
+ 'tt' => 'тоторӣ',
+ 'tzm' => 'тамазайти атласи марказӣ',
+ 'ug' => 'ӯйғурӣ',
+ 'uk' => 'украинӣ',
+ 'und' => 'забони номаълум',
+ 'ur' => 'урду',
+ 'uz' => 'ӯзбекӣ',
+ 've' => 'венда',
+ 'vi' => 'ветнамӣ',
+ 'wo' => 'волоф',
+ 'yi' => 'идиш',
+ 'yo' => 'йоруба',
+ 'zh' => 'хитоӣ',
+ 'zh-hans' => 'хитоии осонфаҳм',
+ 'zh-hant' => 'хитоии анъанавӣ',
'zu' => 'Зулу',
-);
+];
-$currencyNames = array(
+$currencyNames = [
+ 'BRL' => 'Реали бразилиягӣ',
+ 'CNY' => 'Иенаи хитоӣ',
+ 'EUR' => 'Евро',
+ 'GBP' => 'Фунт стерлинги британӣ',
+ 'INR' => 'Рупияи ҳиндустонӣ',
+ 'JPY' => 'Иенаи японӣ',
+ 'RUB' => 'Рубли русӣ',
'TJS' => 'Сомонӣ',
-);
+ 'USD' => 'Доллари ИМА',
+ 'XXX' => 'Асъори номаълум',
+];
-$currencySymbols = array(
- 'TJS' => 'сом',
-);
+$currencySymbols = [
+ 'BRL' => 'R$',
+ 'CNY' => 'CN¥',
+ 'EUR' => '€',
+ 'GBP' => '£',
+ 'INR' => '₹',
+ 'JPY' => 'JP¥',
+ 'RUB' => 'RUB',
+ 'TJS' => 'сом.',
+ 'USD' => '$',
+];
-$countryNames = array(
- 'AF' => 'Афғонистан',
+$countryNames = [
+ 'AC' => 'Асунсон',
+ 'AD' => 'Андорра',
+ 'AE' => 'Аморатҳои Муттаҳидаи Араб',
+ 'AF' => 'Афғонистон',
+ 'AG' => 'Антигуа ва Барбуда',
+ 'AI' => 'Ангилия',
+ 'AL' => 'Албания',
+ 'AM' => 'Арманистон',
+ 'AO' => 'Ангола',
+ 'AQ' => 'Антарктида',
+ 'AR' => 'Аргентина',
+ 'AS' => 'Самоаи Америка',
+ 'AT' => 'Австрия',
+ 'AU' => 'Австралия',
+ 'AW' => 'Аруба',
+ 'AX' => 'Ҷазираҳои Аланд',
+ 'AZ' => 'Озарбойҷон',
+ 'BA' => 'Босния ва Ҳерсеговина',
+ 'BB' => 'Барбадос',
+ 'BD' => 'Бангладеш',
+ 'BE' => 'Белгия',
+ 'BF' => 'Буркина-Фасо',
+ 'BG' => 'Булғория',
+ 'BH' => 'Баҳрайн',
+ 'BI' => 'Бурунди',
+ 'BJ' => 'Бенин',
+ 'BL' => 'Сент-Бартелми',
+ 'BM' => 'Бермуда',
+ 'BN' => 'Бруней',
+ 'BO' => 'Боливия',
+ 'BR' => 'Бразилия',
+ 'BS' => 'Багам',
+ 'BT' => 'Бутон',
+ 'BV' => 'Ҷазираи Буве',
+ 'BW' => 'Ботсвана',
+ 'BY' => 'Белорус',
+ 'BZ' => 'Белиз',
+ 'CA' => 'Канада',
+ 'CC' => 'Ҷазираҳои Кокос (Килинг)',
+ 'CF' => 'Ҷумҳурии Африқои Марказӣ',
+ 'CH' => 'Швейтсария',
+ 'CI' => 'Кот-д’Ивуар',
+ 'CK' => 'Ҷазираҳои Кук',
+ 'CL' => 'Чили',
+ 'CM' => 'Камерун',
+ 'CN' => 'Хитой',
+ 'CO' => 'Колумбия',
+ 'CR' => 'Коста-Рика',
+ 'CU' => 'Куба',
+ 'CV' => 'Кабо-Верде',
+ 'CW' => 'Кюрасао',
+ 'CX' => 'Ҷазираи Крисмас',
+ 'CY' => 'Кипр',
+ 'CZ' => 'Ҷумҳурии Чех',
+ 'DE' => 'Германия',
+ 'DJ' => 'Ҷибути',
+ 'DK' => 'Дания',
+ 'DM' => 'Доминика',
+ 'DO' => 'Ҷумҳурии Доминикан',
+ 'DZ' => 'Алҷазоир',
+ 'EC' => 'Эквадор',
+ 'EE' => 'Эстония',
+ 'EG' => 'Миср',
+ 'ER' => 'Эритрея',
+ 'ES' => 'Испания',
+ 'ET' => 'Эфиопия',
+ 'FI' => 'Финляндия',
+ 'FJ' => 'Фиҷи',
+ 'FK' => 'Ҷазираҳои Фолкленд',
+ 'FM' => 'Штатҳои Федеративии Микронезия',
+ 'FO' => 'Ҷазираҳои Фарер',
+ 'FR' => 'Франсия',
+ 'GA' => 'Габон',
+ 'GB' => 'Шоҳигарии Муттаҳида',
+ 'GD' => 'Гренада',
+ 'GE' => 'Гурҷистон',
+ 'GF' => 'Гвианаи Фаронса',
+ 'GG' => 'Гернси',
+ 'GH' => 'Гана',
+ 'GI' => 'Гибралтар',
+ 'GL' => 'Гренландия',
+ 'GM' => 'Гамбия',
+ 'GN' => 'Гвинея',
+ 'GP' => 'Гваделупа',
+ 'GQ' => 'Гвинеяи Экваторӣ',
+ 'GR' => 'Юнон',
+ 'GS' => 'Ҷорҷияи Ҷанубӣ ва Ҷазираҳои Сандвич',
+ 'GT' => 'Гватемала',
+ 'GU' => 'Гуам',
+ 'GW' => 'Гвинея-Бисау',
+ 'GY' => 'Гайана',
+ 'HK' => 'Ҳонконг',
+ 'HM' => 'Ҷазираи Ҳерд ва Ҷазираҳои Макдоналд',
+ 'HN' => 'Гондурас',
+ 'HR' => 'Хорватия',
+ 'HT' => 'Гаити',
+ 'HU' => 'Маҷористон',
+ 'ID' => 'Индонезия',
+ 'IE' => 'Ирландия',
+ 'IL' => 'Исроил',
+ 'IM' => 'Ҷазираи Мэн',
+ 'IN' => 'Ҳиндустон',
+ 'IO' => 'Қаламрави Британия дар уқёнуси Ҳинд',
+ 'IQ' => 'Ироқ',
+ 'IR' => 'Эрон',
+ 'IS' => 'Исландия',
+ 'IT' => 'Италия',
+ 'JE' => 'Ҷерси',
+ 'JM' => 'Ямайка',
+ 'JO' => 'Урдун',
+ 'JP' => 'Япония',
+ 'KE' => 'Кения',
+ 'KG' => 'Қирғизистон',
+ 'KH' => 'Камбоҷа',
+ 'KI' => 'Кирибати',
+ 'KM' => 'Комор',
+ 'KN' => 'Сент-Китс ва Невис',
+ 'KP' => 'Кореяи Шимолӣ',
+ 'KW' => 'Қувайт',
+ 'KY' => 'Ҷазираҳои Кайман',
+ 'KZ' => 'Қазоқистон',
+ 'LA' => 'Лаос',
+ 'LB' => 'Лубнон',
+ 'LC' => 'Сент-Люсия',
+ 'LI' => 'Лихтенштейн',
+ 'LK' => 'Шри-Ланка',
+ 'LR' => 'Либерия',
+ 'LS' => 'Лесото',
+ 'LT' => 'Литва',
+ 'LU' => 'Люксембург',
+ 'LV' => 'Латвия',
+ 'LY' => 'Либия',
+ 'MA' => 'Марокаш',
+ 'MC' => 'Монако',
+ 'MD' => 'Молдова',
+ 'ME' => 'Черногория',
+ 'MF' => 'Ҷазираи Сент-Мартин',
+ 'MG' => 'Мадагаскар',
+ 'MH' => 'Ҷазираҳои Маршалл',
+ 'MK' => 'Мақдун',
+ 'ML' => 'Мали',
+ 'MM' => 'Мянма',
+ 'MN' => 'Муғулистон',
+ 'MO' => 'Макао',
+ 'MP' => 'Ҷазираҳои Марианаи Шимолӣ',
+ 'MQ' => 'Мартиника',
+ 'MR' => 'Мавритания',
+ 'MS' => 'Монтсеррат',
+ 'MT' => 'Малта',
+ 'MU' => 'Маврикий',
+ 'MV' => 'Малдив',
+ 'MW' => 'Малави',
+ 'MX' => 'Мексика',
+ 'MY' => 'Малайзия',
+ 'MZ' => 'Мозамбик',
+ 'NA' => 'Намибия',
+ 'NC' => 'Каледонияи Нав',
+ 'NE' => 'Нигер',
+ 'NF' => 'Ҷазираи Норфолк',
+ 'NG' => 'Нигерия',
+ 'NI' => 'Никарагуа',
+ 'NL' => 'Нидерландия',
+ 'NO' => 'Норвегия',
+ 'NP' => 'Непал',
+ 'NR' => 'Науру',
+ 'NU' => 'Ниуэ',
+ 'NZ' => 'Зеландияи Нав',
+ 'OM' => 'Умон',
+ 'PA' => 'Панама',
+ 'PE' => 'Перу',
+ 'PF' => 'Полинезияи Фаронса',
+ 'PG' => 'Папуа Гвинеяи Нав',
+ 'PH' => 'Филиппин',
+ 'PK' => 'Покистон',
+ 'PL' => 'Лаҳистон',
+ 'PM' => 'Сент-Пер ва Микелон',
+ 'PN' => 'Ҷазираҳои Питкейрн',
+ 'PR' => 'Пуэрто-Рико',
+ 'PT' => 'Португалия',
+ 'PW' => 'Палау',
+ 'PY' => 'Парагвай',
+ 'QA' => 'Қатар',
+ 'RE' => 'Реюнион',
+ 'RO' => 'Руминия',
+ 'RS' => 'Сербия',
+ 'RU' => 'Русия',
+ 'RW' => 'Руанда',
+ 'SA' => 'Арабистони Саудӣ',
+ 'SB' => 'Ҷазираҳои Соломон',
+ 'SC' => 'Сейшел',
+ 'SD' => 'Судон',
+ 'SE' => 'Шветсия',
+ 'SG' => 'Сингапур',
+ 'SH' => 'Сент Елена',
+ 'SI' => 'Словения',
+ 'SJ' => 'Шпитсберген ва Ян Майен',
+ 'SK' => 'Словакия',
+ 'SL' => 'Сиерра-Леоне',
+ 'SM' => 'Сан-Марино',
+ 'SN' => 'Сенегал',
+ 'SO' => 'Сомалӣ',
+ 'SR' => 'Суринам',
+ 'SS' => 'Судони Ҷанубӣ',
+ 'ST' => 'Сан Томе ва Принсипи',
+ 'SV' => 'Эл-Салвадор',
+ 'SX' => 'Синт-Маартен',
+ 'SY' => 'Сурия',
+ 'SZ' => 'Свазиленд',
+ 'TA' => 'Тристан-да-Куня',
+ 'TC' => 'Ҷазираҳои Теркс ва Кайкос',
+ 'TD' => 'Чад',
+ 'TF' => 'Минтақаҳои Ҷанубии Фаронса',
+ 'TG' => 'Того',
+ 'TH' => 'Таиланд',
'TJ' => 'Тоҷикистон',
+ 'TK' => 'Токелау',
+ 'TL' => 'Тимор-Лесте',
+ 'TM' => 'Туркманистон',
+ 'TN' => 'Тунис',
'TO' => 'Тонга',
-);
+ 'TR' => 'Туркия',
+ 'TT' => 'Тринидад ва Тобаго',
+ 'TV' => 'Тувалу',
+ 'TW' => 'Тайван',
+ 'TZ' => 'Танзания',
+ 'UA' => 'Украина',
+ 'UG' => 'Уганда',
+ 'UM' => 'Ҷазираҳои Хурди Дурдасти ИМА',
+ 'US' => 'ИМ',
+ 'UY' => 'Уругвай',
+ 'UZ' => 'Ӯзбекистон',
+ 'VA' => 'Шаҳри Вотикон',
+ 'VC' => 'Сент-Винсент ва Гренадина',
+ 'VE' => 'Венесуэла',
+ 'VG' => 'Ҷазираҳои Виргини Британия',
+ 'VI' => 'Ҷазираҳои Виргини ИМА',
+ 'VN' => 'Ветнам',
+ 'VU' => 'Вануату',
+ 'WF' => 'Уоллис ва Футуна',
+ 'WS' => 'Самоа',
+ 'XK' => 'Косово',
+ 'YE' => 'Яман',
+ 'YT' => 'Майотта',
+ 'ZA' => 'Африкаи Ҷанубӣ',
+ 'ZM' => 'Замбия',
+ 'ZW' => 'Зимбабве',
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesTh.php b/MLEB/cldr/CldrNames/CldrNamesTh.php
index 903d9bc8..da930057 100644
--- a/MLEB/cldr/CldrNames/CldrNamesTh.php
+++ b/MLEB/cldr/CldrNames/CldrNamesTh.php
@@ -1,8 +1,8 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'อะฟาร์',
- 'ab' => 'อับคาซ',
+ 'ab' => 'อับฮาเซีย',
'ace' => 'อาเจะห์',
'ach' => 'อาโคลิ',
'ada' => 'อาแดงมี',
@@ -13,7 +13,7 @@ $languageNames = array(
'afh' => 'แอฟริฮีลี',
'agq' => 'อักเฮม',
'ain' => 'ไอนุ',
- 'ak' => 'อาคัน',
+ 'ak' => 'อาคาน',
'akk' => 'อักกาด',
'akz' => 'แอละแบมา',
'ale' => 'อาลิวต์',
@@ -26,10 +26,11 @@ $languageNames = array(
'ar' => 'อาหรับ',
'ar-001' => 'อาหรับมาตรฐานสมัยใหม่',
'arc' => 'อราเมอิก',
- 'arn' => 'อาเราคาเนียน',
+ 'arn' => 'มาปูเช',
'aro' => 'อาเรานา',
'arp' => 'อาราปาโฮ',
'arq' => 'อาหรับแอลจีเรีย',
+ 'ars' => 'อาหรับนัจญ์ดี',
'arw' => 'อาราวัก',
'ary' => 'อาหรับโมร็อกโก',
'arz' => 'อาหรับพื้นเมืองอียิปต์',
@@ -42,7 +43,6 @@ $languageNames = array(
'awa' => 'อวธี',
'ay' => 'ไอย์มารา',
'az' => 'อาเซอร์ไบจาน',
- 'azb' => 'อาเซอร์ไบจานใต้',
'ba' => 'บัชคีร์',
'bal' => 'บาลูชิ',
'ban' => 'บาหลี',
@@ -59,6 +59,7 @@ $languageNames = array(
'bfd' => 'บาฟัต',
'bfq' => 'พทคะ',
'bg' => 'บัลแกเรีย',
+ 'bgn' => 'บาลูจิตะวันตก',
'bho' => 'โภชปุรี',
'bi' => 'บิสลามา',
'bik' => 'บิกอล',
@@ -67,7 +68,7 @@ $languageNames = array(
'bkm' => 'กม',
'bla' => 'สิกสิกา',
'bm' => 'บัมบารา',
- 'bn' => 'เบงกาลี',
+ 'bn' => 'บังกลา',
'bo' => 'ทิเบต',
'bpy' => 'พิศนุปริยะ',
'bqi' => 'บักติยารี',
@@ -82,7 +83,7 @@ $languageNames = array(
'bum' => 'บูลู',
'byn' => 'บลิน',
'byv' => 'เมดุมบา',
- 'ca' => 'กาตาลัง',
+ 'ca' => 'คาตาลัน',
'cad' => 'คัดโด',
'car' => 'คาริบ',
'cay' => 'คายูกา',
@@ -100,12 +101,13 @@ $languageNames = array(
'chp' => 'ชิพิวยัน',
'chr' => 'เชอโรกี',
'chy' => 'เชเยนเน',
- 'ckb' => 'เคิร์ดโซรานี',
+ 'ckb' => 'เคิร์ดตอนกลาง',
'co' => 'คอร์ซิกา',
'cop' => 'คอปติก',
'cps' => 'กาปิซนอน',
'cr' => 'ครี',
'crh' => 'ตุรกีไครเมีย',
+ 'crs' => 'ครีโอลเซเซลส์ฝรั่งเศส',
'cs' => 'เช็ก',
'csb' => 'คาซูเบียน',
'cu' => 'เชอร์ชสลาวิก',
@@ -124,7 +126,7 @@ $languageNames = array(
'din' => 'ดิงกา',
'dje' => 'ซาร์มา',
'doi' => 'โฑครี',
- 'dsb' => 'ซอร์บส์ตอนล่าง',
+ 'dsb' => 'ซอร์เบียตอนล่าง',
'dtp' => 'ดูซุนกลาง',
'dua' => 'ดัวลา',
'dum' => 'ดัตช์กลาง',
@@ -147,18 +149,20 @@ $languageNames = array(
'en-gb' => 'อังกฤษ - สหราชอาณาจักร',
'en-us' => 'อังกฤษ - อเมริกัน',
'enm' => 'อังกฤษกลาง',
- 'eo' => 'เอสเปอรันโต',
+ 'eo' => 'เอสเปรันโต',
'es' => 'สเปน',
- 'es-es' => 'สเปน (ยุโรป)',
+ 'es-419' => 'สเปน - ละตินอเมริกา',
+ 'es-es' => 'สเปน - ยุโรป',
+ 'es-mx' => 'สเปน - เม็กซิโก',
'esu' => 'ยูพิกกลาง',
'et' => 'เอสโตเนีย',
- 'eu' => 'บัสเก',
+ 'eu' => 'บาสก์',
'ewo' => 'อีวันโด',
'ext' => 'เอกซ์เตรมาดูรา',
'fa' => 'เปอร์เซีย',
'fan' => 'ฟอง',
'fat' => 'ฟันติ',
- 'ff' => 'ฟูลาฮ์',
+ 'ff' => 'ฟูลาห์',
'fi' => 'ฟินแลนด์',
'fil' => 'ฟิลิปปินส์',
'fit' => 'ฟินแลนด์ทอร์เนดาเล็น',
@@ -166,6 +170,7 @@ $languageNames = array(
'fo' => 'แฟโร',
'fon' => 'ฟอน',
'fr' => 'ฝรั่งเศส',
+ 'fr-ca' => 'ฝรั่งเศส - แคนาดา',
'fr-ch' => 'ฝรั่งเศส (สวิส)',
'frc' => 'ฝรั่งเศสกาฌ็อง',
'frm' => 'ฝรั่งเศสกลาง',
@@ -178,17 +183,17 @@ $languageNames = array(
'ga' => 'ไอริช',
'gaa' => 'กา',
'gag' => 'กากาอุซ',
- 'gan' => 'จีนกาน',
+ 'gan' => 'จีนกั้น',
'gay' => 'กาโย',
'gba' => 'กบายา',
'gbz' => 'ดารีโซโรอัสเตอร์',
- 'gd' => 'สกอตส์กาลิก',
+ 'gd' => 'เกลิกสกอต',
'gez' => 'กีซ',
'gil' => 'กิลเบอร์ต',
'gl' => 'กาลิเซีย',
'glk' => 'กิลากี',
'gmh' => 'เยอรมันสูงกลาง',
- 'gn' => 'กวารานี',
+ 'gn' => 'กัวรานี',
'goh' => 'เยอรมันสูงโบราณ',
'gom' => 'กอนกานีของกัว',
'gon' => 'กอนดิ',
@@ -203,7 +208,7 @@ $languageNames = array(
'guz' => 'กุซซี',
'gv' => 'มานซ์',
'gwi' => 'กวิชอิน',
- 'ha' => 'เฮาชา',
+ 'ha' => 'เฮาซา',
'hai' => 'ไฮดา',
'hak' => 'จีนแคะ',
'haw' => 'ฮาวาย',
@@ -215,9 +220,9 @@ $languageNames = array(
'hmn' => 'ม้ง',
'ho' => 'ฮีรีโมตู',
'hr' => 'โครเอเชีย',
- 'hsb' => 'ซอร์บส์ตอนบน',
+ 'hsb' => 'ซอร์เบียตอนบน',
'hsn' => 'จีนเซียง',
- 'ht' => 'เฮติ',
+ 'ht' => 'เฮติครีโอล',
'hu' => 'ฮังการี',
'hup' => 'ฮูปา',
'hy' => 'อาร์เมเนีย',
@@ -225,7 +230,7 @@ $languageNames = array(
'ia' => 'อินเตอร์ลิงกัว',
'iba' => 'อิบาน',
'ibb' => 'อิบิบิโอ',
- 'id' => 'อินโดนีเชีย',
+ 'id' => 'อินโดนีเซีย',
'ie' => 'อินเตอร์ลิงกิว',
'ig' => 'อิกโบ',
'ii' => 'เสฉวนยิ',
@@ -287,7 +292,7 @@ $languageNames = array(
'krj' => 'กินารายอา',
'krl' => 'แกรเลียน',
'kru' => 'กุรุข',
- 'ks' => 'กัศมีร์',
+ 'ks' => 'แคชเมียร์',
'ksb' => 'ชัมบาลา',
'ksf' => 'บาเฟีย',
'ksh' => 'โคโลญ',
@@ -314,7 +319,9 @@ $languageNames = array(
'ln' => 'ลิงกาลา',
'lo' => 'ลาว',
'lol' => 'มองโก',
+ 'lou' => 'ภาษาครีโอลุยเซียนา',
'loz' => 'โลซิ',
+ 'lrc' => 'ลูรีเหนือ',
'lt' => 'ลิทัวเนีย',
'ltg' => 'ลัตเกล',
'lu' => 'ลูบา-กาตองกา',
@@ -322,7 +329,7 @@ $languageNames = array(
'lui' => 'ลุยเซโน',
'lun' => 'ลันดา',
'luo' => 'ลัว',
- 'lus' => 'ลูไช',
+ 'lus' => 'มิโซ',
'luy' => 'ลูเยีย',
'lv' => 'ลัตเวีย',
'lzh' => 'จีนคลาสสิก',
@@ -375,12 +382,13 @@ $languageNames = array(
'naq' => 'นามา',
'nb' => 'นอร์เวย์บุคมอล',
'nd' => 'เอ็นเดเบเลเหนือ',
- 'nds' => 'เยอรมันต่ำ - แซกซอนต่ำ',
+ 'nds' => 'เยอรมันต่ำ',
+ 'nds-nl' => 'แซกซอนใต้',
'ne' => 'เนปาล',
'new' => 'เนวาร์',
'ng' => 'ดองกา',
'nia' => 'นีอัส',
- 'niu' => 'นีอู',
+ 'niu' => 'นีวเว',
'njo' => 'อ๋าวนากา',
'nl' => 'ดัตช์',
'nl-be' => 'เฟลมิช',
@@ -405,7 +413,7 @@ $languageNames = array(
'oc' => 'อ็อกซิตัน',
'oj' => 'โอจิบวา',
'om' => 'โอโรโม',
- 'or' => 'โอริยา',
+ 'or' => 'โอดิยา',
'os' => 'ออสเซเตีย',
'osa' => 'โอซากี',
'ota' => 'ตุรกีออตโตมัน',
@@ -416,6 +424,7 @@ $languageNames = array(
'pap' => 'ปาเปียเมนโต',
'pau' => 'ปาเลา',
'pcd' => 'ปิการ์',
+ 'pcm' => 'พิดจิน',
'pdc' => 'เยอรมันเพนซิลเวเนีย',
'pdt' => 'เพลาท์ดิช',
'peo' => 'เปอร์เซียโบราณ',
@@ -428,11 +437,11 @@ $languageNames = array(
'pon' => 'พอห์นเพ',
'prg' => 'ปรัสเซีย',
'pro' => 'โปรวองซาลโบราณ',
- 'ps' => 'พาชตู',
+ 'ps' => 'พัชโต',
'pt' => 'โปรตุเกส',
'pt-br' => 'โปรตุเกส - บราซิล',
'pt-pt' => 'โปรตุเกส - ยุโรป',
- 'qu' => 'ควิชัว',
+ 'qu' => 'เคชวา',
'quc' => 'กีเช',
'qug' => 'ควิชัวไฮแลนด์ชิมโบราโซ',
'raj' => 'ราชสถาน',
@@ -455,7 +464,7 @@ $languageNames = array(
'rwk' => 'รวา',
'sa' => 'สันสกฤต',
'sad' => 'ซันดาเว',
- 'sah' => 'ซาฮา',
+ 'sah' => 'ซาคา',
'sam' => 'อราเมอิกซามาเรีย',
'saq' => 'แซมบูรู',
'sas' => 'ซาซัก',
@@ -466,15 +475,16 @@ $languageNames = array(
'sc' => 'ซาร์เดญา',
'scn' => 'ซิซิลี',
'sco' => 'สกอตส์',
- 'sd' => 'สินธุ',
+ 'sd' => 'สินธิ',
'sdc' => 'ซาร์ดิเนียซาสซารี',
+ 'sdh' => 'เคอร์ดิชใต้',
'se' => 'ซามิเหนือ',
'see' => 'เซนิกา',
'seh' => 'เซนา',
'sei' => 'เซรี',
'sel' => 'เซลคุป',
'ses' => 'โคย์ราโบโรเซนนี',
- 'sg' => 'แซงโก',
+ 'sg' => 'ซันโก',
'sga' => 'ไอริชโบราณ',
'sgs' => 'ซาโมจิเตียน',
'sh' => 'เซอร์โบ-โครเอเชีย',
@@ -510,8 +520,8 @@ $languageNames = array(
'sux' => 'ซูเมอ',
'sv' => 'สวีเดน',
'sw' => 'สวาฮีลี',
+ 'sw-cd' => 'สวาฮีลี - คองโก',
'swb' => 'โคเมอเรียน',
- 'swc' => 'สวาฮีลี-คองโก',
'syc' => 'ซีเรียแบบดั้งเดิม',
'syr' => 'ซีเรีย',
'szl' => 'ไซลีเซีย',
@@ -527,11 +537,11 @@ $languageNames = array(
'ti' => 'ติกริญญา',
'tig' => 'ตีเกร',
'tiv' => 'ทิฟ',
- 'tk' => 'เติร์กเมนิสถาน',
+ 'tk' => 'เติร์กเมน',
'tkl' => 'โตเกเลา',
'tkr' => 'แซคเซอร์',
'tl' => 'ตากาล็อก',
- 'tlh' => 'คลิงกอน',
+ 'tlh' => 'คลิงงอน',
'tli' => 'ทลิงกิต',
'tly' => 'ทาลิช',
'tmh' => 'ทามาเชก',
@@ -542,7 +552,7 @@ $languageNames = array(
'tr' => 'ตุรกี',
'tru' => 'ตูโรโย',
'trv' => 'ทาโรโก',
- 'ts' => 'ซิิตซองกา',
+ 'ts' => 'ซิตซองกา',
'tsd' => 'ซาโคเนีย',
'tsi' => 'ซิมชีแอน',
'tt' => 'ตาตาร์',
@@ -555,7 +565,7 @@ $languageNames = array(
'tyv' => 'ตูวา',
'tzm' => 'ทามาไซต์แอตลาสกลาง',
'udm' => 'อุดมูร์ต',
- 'ug' => 'อุยกัว',
+ 'ug' => 'อุยกูร์',
'uga' => 'ยูการิต',
'uk' => 'ยูเครน',
'umb' => 'อุมบุนดู',
@@ -578,6 +588,7 @@ $languageNames = array(
'wal' => 'วาลาโม',
'war' => 'วาเรย์',
'was' => 'วาโช',
+ 'wbp' => 'วอล์เพอร์รี',
'wo' => 'โวลอฟ',
'wuu' => 'จีนอู๋',
'xal' => 'คัลมืยค์',
@@ -588,7 +599,7 @@ $languageNames = array(
'yap' => 'ยัป',
'yav' => 'แยงเบน',
'ybb' => 'เยมบา',
- 'yi' => 'ยิว',
+ 'yi' => 'ยิดดิช',
'yo' => 'โยรูบา',
'yrl' => 'เหงงกาตุ',
'yue' => 'กวางตุ้ง',
@@ -599,15 +610,15 @@ $languageNames = array(
'zen' => 'เซนากา',
'zgh' => 'ทามาไซต์โมร็อกโกมาตรฐาน',
'zh' => 'จีน',
- 'zh-hans' => 'จีนตัวย่อ',
- 'zh-hant' => 'จีนตัวเต็ม',
+ 'zh-hans' => 'จีนประยุกต์',
+ 'zh-hant' => 'จีนดั้งเดิม',
'zu' => 'ซูลู',
'zun' => 'ซูนิ',
'zxx' => 'ไม่มีข้อมูลภาษา',
'zza' => 'ซาซา',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'ADP' => 'เปเซตาอันดอร์รา',
'AED' => 'เดอร์แฮมสหรัฐอาหรับเอมิเรตส์',
'AFA' => 'อัฟกานีอัฟกานิสถาน (1927–2002)',
@@ -661,7 +672,8 @@ $currencyNames = array(
'BUK' => 'จ๊าดพม่า',
'BWP' => 'ปูลาบอตสวานา',
'BYB' => 'นิวรูเบิลเบลารุส (1994–1999)',
- 'BYR' => 'รูเบิลเบลารุส',
+ 'BYN' => 'รูเบิลเบลารุส',
+ 'BYR' => 'รูเบิลเบลารุส (2000–2016)',
'BZD' => 'ดอลลาร์เบลีซ',
'CAD' => 'ดอลลาร์แคนาดา',
'CDF' => 'ฟรังก์คองโก',
@@ -671,6 +683,7 @@ $currencyNames = array(
'CLE' => 'เอสคูโดชิลี',
'CLF' => 'ฟูเมนโตชิลี',
'CLP' => 'เปโซชิลี',
+ 'CNH' => 'หยวน',
'CNY' => 'หยวนจีน',
'COP' => 'เปโซโคลอมเบีย',
'COU' => 'วาเลอร์เรียลโคลอมเบีย',
@@ -735,7 +748,7 @@ $currencyNames = array(
'JMD' => 'ดอลลาร์จาเมกา',
'JOD' => 'ดีนาร์จอร์แดน',
'JPY' => 'เยนญี่ปุ่น',
- 'KES' => 'ชิลลิ่งเคนยา',
+ 'KES' => 'ชิลลิงเคนยา',
'KGS' => 'ซอมคีร์กีซสถาน',
'KHR' => 'เรียลกัมพูชา',
'KMF' => 'ฟรังก์คอโมโรส',
@@ -772,7 +785,8 @@ $currencyNames = array(
'MMK' => 'จ๊าตพม่า',
'MNT' => 'ทูกริกมองโกเลีย',
'MOP' => 'ปาตากามาเก๊า',
- 'MRO' => 'อูกียามอริเตเนีย',
+ 'MRO' => 'อูกียามอริเตเนีย (1973–2017)',
+ 'MRU' => 'อูกียามอริเตเนีย',
'MTL' => 'ลีรามอลตา',
'MTP' => 'ปอนด์มอลตา',
'MUR' => 'รูปีมอริเชียส',
@@ -796,8 +810,8 @@ $currencyNames = array(
'OMR' => 'เรียลโอมาน',
'PAB' => 'บัลบัวปานามา',
'PEI' => 'อินตีเปรู',
- 'PEN' => 'นูโวซอลเปรู',
- 'PES' => 'ซอลเปรู',
+ 'PEN' => 'ซอลเปรู',
+ 'PES' => 'ซอลเปรู (1863–1965)',
'PGK' => 'กีนาปาปัวนิวกินี',
'PHP' => 'เปโซฟิลิปปินส์',
'PKR' => 'รูปีปากีสถาน',
@@ -829,12 +843,13 @@ $currencyNames = array(
'SRD' => 'ดอลลาร์ซูรินาเม',
'SRG' => 'กิลเดอร์ซูรินาเม',
'SSP' => 'ปอนด์ซูดานใต้',
- 'STD' => 'ดอบราเซาตูเมและปรินซิปี',
+ 'STD' => 'ดอบราเซาตูเมและปรินซิปี (1977–2017)',
+ 'STN' => 'ดอบราเซาตูเมและปรินซิปี',
'SUR' => 'รูเบิลโซเวียต',
'SVC' => 'โคลอนเอลซัลวาดอร์',
'SYP' => 'ปอนด์ซีเรีย',
'SZL' => 'ลิลันเจนีสวาซิ',
- 'THB' => 'บาทไทย',
+ 'THB' => 'บาท',
'TJR' => 'รูเบิลทาจิกิสถาน',
'TJS' => 'โซโมนิทาจิกิสถาน',
'TMM' => 'มานัตเติร์กเมนิสถาน (1993–2009)',
@@ -860,6 +875,7 @@ $currencyNames = array(
'UZS' => 'ซอมอุซเบกิสถาน',
'VEB' => 'โบลิวาร์เวเนซุเอลา (1871–2008)',
'VEF' => 'โบลิวาร์เวเนซุเอลา',
+ 'VES' => 'โบลีวาร์เวเนซุเอลา',
'VND' => 'ดองเวียดนาม',
'VNN' => 'ดองเวียดนาม (1978–1985)',
'VUV' => 'วาตูวานูอาตู',
@@ -884,7 +900,7 @@ $currencyNames = array(
'XSU' => 'ซูเกร',
'XTS' => 'รหัสทดสอบสกุลเงิน',
'XUA' => 'หน่วยบัญชี เอดีบี',
- 'XXX' => 'สกุลเงินที่ไม่รู้จัก',
+ 'XXX' => 'ไม่ทราบชื่อสกุลเงิน',
'YDD' => 'ดีนาร์เยเมน',
'YER' => 'เรียลเยเมน',
'YUD' => 'ฮาร์ดดีนาร์ยูโกสลาเวีย',
@@ -900,9 +916,9 @@ $currencyNames = array(
'ZWD' => 'ดอลลาร์ซิมบับเว',
'ZWL' => 'ดอลลาร์ซิมบับเว (2009)',
'ZWR' => 'ดอลลาร์ซิมบับเว (2008)',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'ADP' => 'ADP',
'AED' => 'AED',
'AFA' => 'AFA',
@@ -956,6 +972,7 @@ $currencySymbols = array(
'BUK' => 'BUK',
'BWP' => 'BWP',
'BYB' => 'BYB',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CA$',
@@ -966,6 +983,7 @@ $currencySymbols = array(
'CLE' => 'CLE',
'CLF' => 'CLF',
'CLP' => 'CLP',
+ 'CNH' => 'CNH',
'CNY' => 'CN¥',
'COP' => 'COP',
'COU' => 'COU',
@@ -1068,6 +1086,7 @@ $currencySymbols = array(
'MNT' => 'MNT',
'MOP' => 'MOP',
'MRO' => 'MRO',
+ 'MRU' => 'MRU',
'MTL' => 'MTL',
'MTP' => 'MTP',
'MUR' => 'MUR',
@@ -1125,11 +1144,12 @@ $currencySymbols = array(
'SRG' => 'SRG',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'STN',
'SUR' => 'SUR',
'SVC' => 'SVC',
'SYP' => 'SYP',
'SZL' => 'SZL',
- 'THB' => 'THB',
+ 'THB' => '฿',
'TJR' => 'TJR',
'TJS' => 'TJS',
'TMM' => 'TMM',
@@ -1155,6 +1175,7 @@ $currencySymbols = array(
'UZS' => 'UZS',
'VEB' => 'VEB',
'VEF' => 'VEF',
+ 'VES' => 'VES',
'VND' => '₫',
'VNN' => 'VNN',
'VUV' => 'VUV',
@@ -1195,9 +1216,9 @@ $currencySymbols = array(
'ZWD' => 'ZWD',
'ZWL' => 'ZWL',
'ZWR' => 'ZWR',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'เกาะแอสเซนชัน',
'AD' => 'อันดอร์รา',
'AE' => 'สหรัฐอาหรับเอมิเรตส์',
@@ -1206,7 +1227,6 @@ $countryNames = array(
'AI' => 'แองกวิลลา',
'AL' => 'แอลเบเนีย',
'AM' => 'อาร์เมเนีย',
- 'AN' => 'เนเธอร์แลนด์แอนทิลลิส',
'AO' => 'แองโกลา',
'AQ' => 'แอนตาร์กติกา',
'AR' => 'อาร์เจนตินา',
@@ -1239,11 +1259,11 @@ $countryNames = array(
'BZ' => 'เบลีซ',
'CA' => 'แคนาดา',
'CC' => 'หมู่เกาะโคโคส (คีลิง)',
- 'CD' => 'คองโก-กินชาซา',
+ 'CD' => 'คองโก - กินชาซา',
'CF' => 'สาธารณรัฐแอฟริกากลาง',
- 'CG' => 'คองโก-บราซซาวิล',
+ 'CG' => 'คองโก - บราซซาวิล',
'CH' => 'สวิตเซอร์แลนด์',
- 'CI' => 'ไอวอรี่โคสต์',
+ 'CI' => 'โกตดิวัวร์',
'CK' => 'หมู่เกาะคุก',
'CL' => 'ชิลี',
'CM' => 'แคเมอรูน',
@@ -1256,7 +1276,7 @@ $countryNames = array(
'CW' => 'คูราเซา',
'CX' => 'เกาะคริสต์มาส',
'CY' => 'ไซปรัส',
- 'CZ' => 'สาธารณรัฐเช็ก',
+ 'CZ' => 'เช็ก',
'DE' => 'เยอรมนี',
'DG' => 'ดิเอโกการ์เซีย',
'DJ' => 'จิบูตี',
@@ -1264,7 +1284,7 @@ $countryNames = array(
'DM' => 'โดมินิกา',
'DO' => 'สาธารณรัฐโดมินิกัน',
'DZ' => 'แอลจีเรีย',
- 'EA' => 'ซีโอตาและเมลิลลา',
+ 'EA' => 'เซวตาและเมลียา',
'EC' => 'เอกวาดอร์',
'EE' => 'เอสโตเนีย',
'EG' => 'อียิปต์',
@@ -1273,6 +1293,7 @@ $countryNames = array(
'ES' => 'สเปน',
'ET' => 'เอธิโอเปีย',
'EU' => 'สหภาพยุโรป',
+ 'EZ' => 'ยูโรโซน',
'FI' => 'ฟินแลนด์',
'FJ' => 'ฟิจิ',
'FK' => 'หมู่เกาะฟอล์กแลนด์',
@@ -1280,7 +1301,7 @@ $countryNames = array(
'FO' => 'หมู่เกาะแฟโร',
'FR' => 'ฝรั่งเศส',
'GA' => 'กาบอง',
- 'GB' => 'อังกฤษ',
+ 'GB' => 'สหราชอาณาจักร',
'GD' => 'เกรเนดา',
'GE' => 'จอร์เจีย',
'GF' => 'เฟรนช์เกียนา',
@@ -1345,12 +1366,12 @@ $countryNames = array(
'MC' => 'โมนาโก',
'MD' => 'มอลโดวา',
'ME' => 'มอนเตเนโกร',
- 'MF' => 'เซนต์มาติน',
+ 'MF' => 'เซนต์มาร์ติน',
'MG' => 'มาดากัสการ์',
'MH' => 'หมู่เกาะมาร์แชลล์',
'MK' => 'มาซิโดเนีย',
'ML' => 'มาลี',
- 'MM' => 'เมียนม่าร์ (พม่า)',
+ 'MM' => 'เมียนมาร์ (พม่า)',
'MN' => 'มองโกเลีย',
'MO' => 'มาเก๊า',
'MP' => 'หมู่เกาะนอร์เทิร์นมาเรียนา',
@@ -1409,17 +1430,17 @@ $countryNames = array(
'SJ' => 'สฟาลบาร์และยานไมเอน',
'SK' => 'สโลวะเกีย',
'SL' => 'เซียร์ราลีโอน',
- 'SM' => 'ซานมารีโน',
+ 'SM' => 'ซานมาริโน',
'SN' => 'เซเนกัล',
'SO' => 'โซมาเลีย',
'SR' => 'ซูรินาเม',
'SS' => 'ซูดานใต้',
'ST' => 'เซาตูเมและปรินซิปี',
'SV' => 'เอลซัลวาดอร์',
- 'SX' => 'เซนต์มาร์ติน',
+ 'SX' => 'ซินต์มาร์เทน',
'SY' => 'ซีเรีย',
'SZ' => 'สวาซิแลนด์',
- 'TA' => 'ทริสตัน เดอ คูนา',
+ 'TA' => 'ทริสตันดาคูนา',
'TC' => 'หมู่เกาะเติกส์และหมู่เกาะเคคอส',
'TD' => 'ชาด',
'TF' => 'เฟรนช์เซาเทิร์นเทร์ริทอรีส์',
@@ -1439,6 +1460,7 @@ $countryNames = array(
'UA' => 'ยูเครน',
'UG' => 'ยูกันดา',
'UM' => 'หมู่เกาะรอบนอกของสหรัฐอเมริกา',
+ 'UN' => 'สหประชาชาติ',
'US' => 'สหรัฐฯ',
'UY' => 'อุรุกวัย',
'UZ' => 'อุซเบกิสถาน',
@@ -1446,7 +1468,7 @@ $countryNames = array(
'VC' => 'เซนต์วินเซนต์และเกรนาดีนส์',
'VE' => 'เวเนซุเอลา',
'VG' => 'หมู่เกาะบริติชเวอร์จิน',
- 'VI' => 'หมู่เกาะยูเอสเวอร์จิน',
+ 'VI' => 'หมู่เกาะเวอร์จินของสหรัฐอเมริกา',
'VN' => 'เวียดนาม',
'VU' => 'วานูอาตู',
'WF' => 'วาลลิสและฟุตูนา',
@@ -1457,9 +1479,10 @@ $countryNames = array(
'ZA' => 'แอฟริกาใต้',
'ZM' => 'แซมเบีย',
'ZW' => 'ซิมบับเว',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-other' => '{0} ศตวรรษ',
'day-future-other' => 'ในอีก {0} วัน',
'day-narrow-future-other' => 'ใน {0} วัน',
'day-narrow-past-other' => '{0} วันที่แล้ว',
@@ -1467,6 +1490,12 @@ $timeUnits = array(
'day-past-other' => '{0} วันที่ผ่านมา',
'day-short-future-other' => 'ใน {0} วัน',
'day-short-past-other' => '{0} วันที่แล้ว',
+ 'fri-future-other' => 'ในอีก {0} ศุกร์',
+ 'fri-narrow-future-other' => 'อีก {0} ศุกร์',
+ 'fri-narrow-past-other' => '{0} ศุกร์ที่แล้ว',
+ 'fri-past-other' => '{0} ศุกร์ที่แล้ว',
+ 'fri-short-future-other' => 'ในอีก {0} ศุกร์',
+ 'fri-short-past-other' => '{0} ศุกร์ที่แล้ว',
'hour-future-other' => 'ในอีก {0} ชั่วโมง',
'hour-narrow-future-other' => 'ใน {0} ชม.',
'hour-narrow-past-other' => '{0} ชม. ที่แล้ว',
@@ -1483,6 +1512,12 @@ $timeUnits = array(
'minute-past-other' => '{0} นาทีที่ผ่านมา',
'minute-short-future-other' => 'ใน {0} นาที',
'minute-short-past-other' => '{0} นาทีที่แล้ว',
+ 'mon-future-other' => 'ในอีก {0} จันทร์',
+ 'mon-narrow-future-other' => 'อีก {0} จันทร์',
+ 'mon-narrow-past-other' => '{0} จันทร์ที่แล้ว',
+ 'mon-past-other' => '{0} จันทร์ที่แล้ว',
+ 'mon-short-future-other' => 'ในอีก {0} จันทร์',
+ 'mon-short-past-other' => '{0} จันทร์ที่แล้ว',
'month-future-other' => 'ในอีก {0} เดือน',
'month-narrow-future-other' => 'ใน {0} เดือน',
'month-narrow-past-other' => '{0} เดือนที่แล้ว',
@@ -1497,6 +1532,12 @@ $timeUnits = array(
'quarter-past-other' => '{0} ไตรมาสที่แล้ว',
'quarter-short-future-other' => 'ใน {0} ไตรมาส',
'quarter-short-past-other' => '{0} ไตรมาสที่แล้ว',
+ 'sat-future-other' => 'ในอีก {0} เสาร์',
+ 'sat-narrow-future-other' => 'อีก {0} เสาร์',
+ 'sat-narrow-past-other' => '{0} เสาร์ที่แล้ว',
+ 'sat-past-other' => '{0} เสาร์ที่แล้ว',
+ 'sat-short-future-other' => 'ในอีก {0} เสาร์',
+ 'sat-short-past-other' => '{0} เสาร์ที่แล้ว',
'second-future-other' => 'ในอีก {0} วินาที',
'second-narrow-future-other' => 'ใน {0} วินาที',
'second-narrow-past-other' => '{0} วินาทีที่แล้ว',
@@ -1504,6 +1545,30 @@ $timeUnits = array(
'second-past-other' => '{0} วินาทีที่ผ่านมา',
'second-short-future-other' => 'ใน {0} วินาที',
'second-short-past-other' => '{0} วินาทีที่แล้ว',
+ 'sun-future-other' => 'วันอาทิตย์ในอีก {0} สัปดาห์',
+ 'sun-narrow-future-other' => 'วันอาทิตย์ในอีก {0} สัปดาห์',
+ 'sun-narrow-past-other' => 'วันอาทิตย์เมื่อ {0} สัปดาห์ที่แล้ว',
+ 'sun-past-other' => 'วันอาทิตย์เมื่อ {0} สัปดาห์ที่แล้ว',
+ 'sun-short-future-other' => 'วันอาทิตย์ในอีก {0} สัปดาห์',
+ 'sun-short-past-other' => 'วันอาทิตย์เมื่อ {0} สัปดาห์ที่แล้ว',
+ 'thu-future-other' => 'ในอีก {0} พฤหัส',
+ 'thu-narrow-future-other' => 'อีก {0} พฤหัส',
+ 'thu-narrow-past-other' => '{0} พฤหัสที่แล้ว',
+ 'thu-past-other' => '{0} พฤหัสที่แล้ว',
+ 'thu-short-future-other' => 'อีก {0} พฤหัส',
+ 'thu-short-past-other' => '{0} พฤหัสที่แล้ว',
+ 'tue-future-other' => 'ในอีก {0} อังคาร',
+ 'tue-narrow-future-other' => 'อีก {0} อังคาร',
+ 'tue-narrow-past-other' => '{0} อังคารที่แล้ว',
+ 'tue-past-other' => '{0} อังคารที่แล้ว',
+ 'tue-short-future-other' => 'ในอีก {0} อังคาร',
+ 'tue-short-past-other' => '{0} อังคารที่แล้ว',
+ 'wed-future-other' => 'ในอีก {0} พุธ',
+ 'wed-narrow-future-other' => 'ในอีก {0} พุธ',
+ 'wed-narrow-past-other' => '{0} พุธที่แล้ว',
+ 'wed-past-other' => '{0} พุธที่แล้ว',
+ 'wed-short-future-other' => 'ในอีก {0} พุธ',
+ 'wed-short-past-other' => '{0} พุธที่แล้ว',
'week-future-other' => 'ในอีก {0} สัปดาห์',
'week-narrow-future-other' => 'ใน {0} สัปดาห์',
'week-narrow-past-other' => '{0} สัปดาห์ที่แล้ว',
@@ -1518,4 +1583,4 @@ $timeUnits = array(
'year-past-other' => '{0} ปีที่แล้ว',
'year-short-future-other' => 'ใน {0} ปี',
'year-short-past-other' => '{0} ปีที่แล้ว',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesTi.php b/MLEB/cldr/CldrNames/CldrNamesTi.php
index 6465a56d..a4ffc0b1 100644
--- a/MLEB/cldr/CldrNames/CldrNamesTi.php
+++ b/MLEB/cldr/CldrNames/CldrNamesTi.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'af' => 'አፍሪቃንሰኛ',
'am' => 'አምሐረኛ',
'ar' => 'ዓረበኛ',
@@ -94,9 +94,9 @@ $languageNames = array(
'xh' => 'ዞሳኛ',
'yi' => 'ዪዲሽ',
'zu' => 'ዙሉኛ',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'BRL' => 'የብራዚል ሪል',
'CNY' => 'የቻይና ዩአን ረንሚንቢ',
'ETB' => 'የኢትዮጵያ ብር',
@@ -106,31 +106,31 @@ $currencyNames = array(
'JPY' => 'የጃፓን የን',
'RUB' => 'የራሻ ሩብል',
'USD' => 'የአሜሪካን ዶላር',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'ETB' => 'Br',
-);
+];
-$countryNames = array(
+$countryNames = [
+ 'AC' => 'አሴንሽን ደሴት',
'AD' => 'አንዶራ',
- 'AE' => 'የተባበሩት አረብ ኤምሬትስ',
+ 'AE' => 'ሕቡራት ኢማራት ዓረብ',
'AF' => 'አፍጋኒስታን',
- 'AG' => 'አንቲጓ እና ባሩዳ',
+ 'AG' => 'ኣንቲጓን ባሩዳን',
'AI' => 'አንጉኢላ',
'AL' => 'አልባኒያ',
'AM' => 'አርሜኒያ',
- 'AN' => 'ኔዘርላንድስ አንቲልስ',
'AO' => 'አንጐላ',
'AQ' => 'አንታርክቲካ',
'AR' => 'አርጀንቲና',
- 'AS' => 'የአሜሪካ ሳሞአ',
+ 'AS' => 'ናይ ኣሜሪካ ሳሞኣ',
'AT' => 'ኦስትሪያ',
'AU' => 'አውስትሬሊያ',
'AW' => 'አሩባ',
- 'AX' => 'የአላንድ ደሴቶች',
+ 'AX' => 'ደሴታት ኣላንድ',
'AZ' => 'አዘርባጃን',
- 'BA' => 'ቦስኒያ እና ሄርዞጎቪኒያ',
+ 'BA' => 'ቦዝንያን ሄርዘጎቪናን',
'BB' => 'ባርቤዶስ',
'BD' => 'ባንግላዲሽ',
'BE' => 'ቤልጄም',
@@ -139,40 +139,46 @@ $countryNames = array(
'BH' => 'ባህሬን',
'BI' => 'ብሩንዲ',
'BJ' => 'ቤኒን',
+ 'BL' => 'ቅዱስ ባርተለሚይ',
'BM' => 'ቤርሙዳ',
'BN' => 'ብሩኒ',
'BO' => 'ቦሊቪያ',
+ 'BQ' => 'ካሪቢያን ኔዘርላንድስ',
'BR' => 'ብራዚል',
'BS' => 'ባሃማስ',
'BT' => 'ቡህታን',
- 'BV' => 'የቦውቬት ደሴት',
+ 'BV' => 'ደሴታት ቦውቬት',
'BW' => 'ቦትስዋና',
'BY' => 'ቤላሩስ',
'BZ' => 'ቤሊዘ',
'CA' => 'ካናዳ',
'CC' => 'ኮኮስ ኬሊንግ ደሴቶች',
'CD' => 'ኮንጎ',
- 'CF' => 'የመካከለኛው አፍሪካ ሪፐብሊክ',
- 'CG' => 'ኮንጐ',
+ 'CF' => 'ማእከላይ ኣፍሪቃ ሪፓብሊክ',
+ 'CG' => 'ኮንጎ ሪፓብሊክ',
'CH' => 'ስዊዘርላንድ',
'CI' => 'ኮት ዲቯር',
- 'CK' => 'ኩክ ደሴቶች',
+ 'CK' => 'ደሴታት ኩክ',
'CL' => 'ቺሊ',
'CM' => 'ካሜሩን',
'CN' => 'ቻይና',
'CO' => 'ኮሎምቢያ',
+ 'CP' => 'ክሊፐርቶን ደሴት',
'CR' => 'ኮስታ ሪካ',
'CU' => 'ኩባ',
'CV' => 'ኬፕ ቬርዴ',
- 'CX' => 'የገና ደሴቶች',
+ 'CW' => 'ኩራካዎ',
+ 'CX' => 'ደሴታት ክሪስትማስ',
'CY' => 'ሳይፕረስ',
- 'CZ' => 'ቼክ ሪፑብሊክ',
+ 'CZ' => 'ቼክ ሪፓብሊክ',
'DE' => 'ጀርመን',
+ 'DG' => 'ዲየጎ ጋርሺያ',
'DJ' => 'ጂቡቲ',
'DK' => 'ዴንማርክ',
'DM' => 'ዶሚኒካ',
- 'DO' => 'ዶሚኒክ ሪፑብሊክ',
+ 'DO' => 'ዶመኒካ ሪፓብሊክ',
'DZ' => 'አልጄሪያ',
+ 'EA' => 'ሲውታን ሜሊላን',
'EC' => 'ኢኳዶር',
'EE' => 'ኤስቶኒያ',
'EG' => 'ግብጽ',
@@ -182,15 +188,16 @@ $countryNames = array(
'ET' => 'ኢትዮጵያ',
'FI' => 'ፊንላንድ',
'FJ' => 'ፊጂ',
- 'FK' => 'የፎልክላንድ ደሴቶች',
+ 'FK' => 'ደሴታት ፎክላንድ',
'FM' => 'ሚክሮኔዢያ',
- 'FO' => 'የፋሮይ ደሴቶች',
+ 'FO' => 'ደሴታት ፋራኦ',
'FR' => 'ፈረንሳይ',
'GA' => 'ጋቦን',
- 'GB' => 'እንግሊዝ',
+ 'GB' => 'ዩኬይ',
'GD' => 'ግሬናዳ',
'GE' => 'ጆርጂያ',
- 'GF' => 'የፈረንሳይ ጉዊአና',
+ 'GF' => 'ናይ ፈረንሳይ ጉይና',
+ 'GG' => 'ገርንሲ',
'GH' => 'ጋና',
'GI' => 'ጊብራልታር',
'GL' => 'ግሪንላንድ',
@@ -199,38 +206,43 @@ $countryNames = array(
'GP' => 'ጉዋደሉፕ',
'GQ' => 'ኢኳቶሪያል ጊኒ',
'GR' => 'ግሪክ',
- 'GS' => 'ደቡብ ጆርጂያ እና የደቡድ ሳንድዊች ደሴቶች',
+ 'GS' => 'ደሴታት ደቡብ ጆርጂያን ደቡድ ሳንድዊችን',
'GT' => 'ጉዋቲማላ',
'GU' => 'ጉዋም',
'GW' => 'ቢሳዎ',
'GY' => 'ጉያና',
'HK' => 'ሆንግ ኮንግ',
- 'HM' => 'የኧርድ እና የማክዶናልድ ደሴቶች',
+ 'HM' => 'ደሴታት ሀርድን ማክዶናልድን',
'HN' => 'ሆንዱራስ',
'HR' => 'ክሮኤሽያ',
'HT' => 'ሀይቲ',
'HU' => 'ሀንጋሪ',
+ 'IC' => 'ደሴታት ካናሪ',
'ID' => 'ኢንዶኔዢያ',
'IE' => 'አየርላንድ',
'IL' => 'እስራኤል',
- 'IN' => 'ህንድ',
- 'IO' => 'የብሪታኒያ ህንድ ውቂያኖስ ግዛት',
+ 'IM' => 'አይል ኦፍ ማን',
+ 'IN' => 'ህንዲ',
+ 'IO' => 'ናይ ብሪጣንያ ህንዳዊ ውቅያኖስ ግዝኣት',
'IQ' => 'ኢራቅ',
'IR' => 'ኢራን',
'IS' => 'አይስላንድ',
'IT' => 'ጣሊያን',
+ 'JE' => 'ጀርሲ',
'JM' => 'ጃማይካ',
'JO' => 'ጆርዳን',
'JP' => 'ጃፓን',
'KE' => 'ኬንያ',
+ 'KG' => 'ኪርጂስታን',
'KH' => 'ካምቦዲያ',
'KI' => 'ኪሪባቲ',
'KM' => 'ኮሞሮስ',
- 'KN' => 'ቅዱስ ኪትስ እና ኔቪስ',
+ 'KN' => 'ቅዱስ ኪትስን ኔቪስን',
'KP' => 'ሰሜን ኮሪያ',
'KR' => 'ደቡብ ኮሪያ',
'KW' => 'ክዌት',
'KY' => 'ካይማን ደሴቶች',
+ 'KZ' => 'ካዛኪስታን',
'LA' => 'ላኦስ',
'LB' => 'ሊባኖስ',
'LC' => 'ሴንት ሉቺያ',
@@ -245,14 +257,16 @@ $countryNames = array(
'MA' => 'ሞሮኮ',
'MC' => 'ሞናኮ',
'MD' => 'ሞልዶቫ',
+ 'ME' => 'ሞንቴኔግሮ',
+ 'MF' => 'ሴንት ማርቲን',
'MG' => 'ማዳጋስካር',
'MH' => 'ማርሻል አይላንድ',
'MK' => 'ማከዶኒያ',
'ML' => 'ማሊ',
'MM' => 'ማያንማር',
'MN' => 'ሞንጎሊያ',
- 'MO' => 'ማካዎ',
- 'MP' => 'የሰሜናዊ ማሪያና ደሴቶች',
+ 'MO' => 'ማካው',
+ 'MP' => 'ደሴታት ሰሜናዊ ማሪያና',
'MQ' => 'ማርቲኒክ',
'MR' => 'ሞሪቴኒያ',
'MS' => 'ሞንትሴራት',
@@ -269,7 +283,7 @@ $countryNames = array(
'NF' => 'ኖርፎልክ ደሴት',
'NG' => 'ናይጄሪያ',
'NI' => 'ኒካራጓ',
- 'NL' => 'ኔዘርላንድ',
+ 'NL' => 'ኔዘርላንድስ',
'NO' => 'ኖርዌ',
'NP' => 'ኔፓል',
'NR' => 'ናኡሩ',
@@ -278,25 +292,26 @@ $countryNames = array(
'OM' => 'ኦማን',
'PA' => 'ፓናማ',
'PE' => 'ፔሩ',
- 'PF' => 'የፈረንሳይ ፖሊኔዢያ',
+ 'PF' => 'ናይ ፈረንሳይ ፖሊነዝያ',
'PG' => 'ፓፑዋ ኒው ጊኒ',
'PH' => 'ፊሊፒንስ',
'PK' => 'ፓኪስታን',
'PL' => 'ፖላንድ',
- 'PM' => 'ቅዱስ ፒዬር እና ሚኩኤሎን',
+ 'PM' => 'ቅዱስ ፒዬርን ሚኩኤሎን',
'PN' => 'ፒትካኢርን',
'PR' => 'ፖርታ ሪኮ',
- 'PS' => 'የፍልስጤም ግዛት',
+ 'PS' => 'ፍልስጤም',
'PT' => 'ፖርቱጋል',
'PW' => 'ፓላው',
'PY' => 'ፓራጓይ',
- 'QA' => 'ኳታር',
+ 'QA' => 'ቀጠር',
'QO' => 'ወጣ ያለ ኦሽኒያ',
'RE' => 'ሪዩኒየን',
'RO' => 'ሮሜኒያ',
+ 'RS' => 'ሰርቢያ',
'RU' => 'ራሺያ',
'RW' => 'ሩዋንዳ',
- 'SA' => 'ሳውድአረቢያ',
+ 'SA' => 'ስዑዲ ዓረብ',
'SB' => 'ሰሎሞን ደሴት',
'SC' => 'ሲሼልስ',
'SD' => 'ሱዳን',
@@ -304,51 +319,238 @@ $countryNames = array(
'SG' => 'ሲንጋፖር',
'SH' => 'ሴንት ሄለና',
'SI' => 'ስሎቬኒያ',
- 'SJ' => 'የስቫልባርድ እና ዣን ማየን ደሴቶች',
+ 'SJ' => 'ስቫልባርድን ዣን ማየን ደሴታት',
'SK' => 'ስሎቫኪያ',
'SL' => 'ሴራሊዮን',
'SM' => 'ሳን ማሪኖ',
'SN' => 'ሴኔጋል',
'SO' => 'ሱማሌ',
'SR' => 'ሱሪናም',
- 'ST' => 'ሳኦ ቶሜ እና ፕሪንሲፔ',
+ 'SS' => 'ደቡብ ሱዳን',
+ 'ST' => 'ሳኦ ቶሜን ፕሪንሲፔን',
'SV' => 'ኤል ሳልቫዶር',
+ 'SX' => 'ሲንት ማርቲን',
'SY' => 'ሲሪያ',
'SZ' => 'ሱዋዚላንድ',
- 'TC' => 'የቱርኮችና የካኢኮስ ደሴቶች',
- 'TD' => 'ቻድ',
- 'TF' => 'የፈረንሳይ ደቡባዊ ግዛቶች',
+ 'TA' => 'ትሪስን ዳ ኩንሃ',
+ 'TC' => 'ደሴታት ቱርክን ካይኮስን',
+ 'TD' => 'ጫድ',
+ 'TF' => 'ናይ ፈረንሳይ ደቡባዊ ግዝኣታት',
'TG' => 'ቶጐ',
'TH' => 'ታይላንድ',
'TJ' => 'ታጃኪስታን',
'TK' => 'ቶክላው',
- 'TL' => 'ምስራቅ ቲሞር',
+ 'TL' => 'ምብራቕ ቲሞር',
'TM' => 'ቱርክሜኒስታን',
'TN' => 'ቱኒዚያ',
'TO' => 'ቶንጋ',
'TR' => 'ቱርክ',
- 'TT' => 'ትሪኒዳድ እና ቶባጎ',
+ 'TT' => 'ትሪኒዳድን ቶባጎን',
'TV' => 'ቱቫሉ',
'TW' => 'ታይዋን',
'TZ' => 'ታንዛኒያ',
'UA' => 'ዩክሬን',
'UG' => 'ዩጋንዳ',
- 'UM' => 'የአሜሪካ ራቅ ያሉ አናሳ ደሴቶች',
- 'US' => 'አሜሪካ',
+ 'UM' => 'ናይ ኣሜሪካ ፍንትት ዝበሉ ደሴታት',
+ 'US' => 'ዩኤስ',
'UY' => 'ኡራጓይ',
'UZ' => 'ዩዝበኪስታን',
'VA' => 'ቫቲካን',
- 'VC' => 'ቅዱስ ቪንሴንት እና ግሬናዲንስ',
+ 'VC' => 'ቅዱስ ቪንሴንትን ግሬናዲንስን',
'VE' => 'ቬንዙዌላ',
- 'VG' => 'የእንግሊዝ ድንግል ደሴቶች',
- 'VI' => 'የአሜሪካ ቨርጂን ደሴቶች',
+ 'VG' => 'ቨርጂን ደሴታት እንግሊዝ',
+ 'VI' => 'ቨርጂን ደሴታት ኣሜሪካ',
'VN' => 'ቬትናም',
'VU' => 'ቫኑአቱ',
- 'WF' => 'ዋሊስ እና ፉቱና ደሴቶች',
+ 'WF' => 'ዋሊስን ፉቱናን',
'WS' => 'ሳሞአ',
+ 'XK' => 'ኮሶቮ',
'YE' => 'የመን',
'YT' => 'ሜይኦቴ',
'ZA' => 'ደቡብ አፍሪካ',
'ZM' => 'ዛምቢያ',
'ZW' => 'ዚምቧቤ',
-);
+];
+
+$timeUnits = [
+ 'day-future-one' => 'ኣብ {0} መዓልቲ',
+ 'day-future-other' => 'ኣብ {0} መዓልቲ',
+ 'day-narrow-future-one' => 'ኣብ {0} መዓልቲ',
+ 'day-narrow-future-other' => 'ኣብ {0} መዓልቲ',
+ 'day-narrow-past-one' => 'ቅድሚ {0} መዓልቲ',
+ 'day-narrow-past-other' => 'ቅድሚ {0} መዓልቲ',
+ 'day-past-one' => 'ቅድሚ {0} መዓልቲ',
+ 'day-past-other' => 'ኣብ {0} መዓልቲ',
+ 'day-short-future-one' => 'ኣብ {0} መዓልቲ',
+ 'day-short-future-other' => 'ኣብ {0} መዓልቲ',
+ 'day-short-past-one' => 'ቅድሚ {0} መዓልቲ',
+ 'day-short-past-other' => 'ቅድሚ {0} መዓልቲ',
+ 'fri-future-one' => 'ኣብ {0} ዓርቢ',
+ 'fri-future-other' => 'ኣብ {0} ዓርቢ',
+ 'fri-narrow-future-one' => 'ኣብ {0} ዓርቢ',
+ 'fri-narrow-future-other' => 'ኣብ {0} ዓርቢ',
+ 'fri-narrow-past-one' => 'ቅድሚ {0} ዓርቢ',
+ 'fri-narrow-past-other' => 'ቅድሚ {0} ዓርቢ',
+ 'fri-past-one' => 'ኣብ {0} ዓርቢ',
+ 'fri-past-other' => 'ቅድሚ {0} ዓርቢ',
+ 'fri-short-future-one' => 'ኣብ {0} ዓርቢ',
+ 'fri-short-future-other' => 'ኣብ {0} ዓርቢ',
+ 'fri-short-past-one' => 'ቅድሚ {0} ዓርቢ',
+ 'fri-short-past-other' => 'ቅድሚ {0} ዓርቢ',
+ 'hour-future-one' => 'ኣብ {0} ሰዓት',
+ 'hour-future-other' => 'ኣብ {0} ሰዓት',
+ 'hour-narrow-future-one' => 'ኣብ {0} ሰዓት',
+ 'hour-narrow-future-other' => 'ኣብ {0} ሰዓት',
+ 'hour-narrow-past-one' => 'ቅድሚ {0} ሰዓት',
+ 'hour-narrow-past-other' => 'ቅድሚ {0} ሰዓት',
+ 'hour-past-one' => 'ቅድሚ {0} ሰዓት',
+ 'hour-past-other' => 'ቅድሚ {0} ሰዓት',
+ 'hour-short-future-one' => 'ኣብ {0} ሰዓት',
+ 'hour-short-future-other' => 'ኣብ {0} ሰዓት',
+ 'hour-short-past-one' => 'ቅድሚ {0} ሰዓት',
+ 'hour-short-past-other' => 'ቅድሚ {0} ሰዓት',
+ 'minute-future-one' => 'ኣብ {0} ደቒቕ',
+ 'minute-future-other' => 'ኣብ {0} ደቒቕ',
+ 'minute-narrow-future-one' => 'ኣብ {0} ደቒቕ',
+ 'minute-narrow-future-other' => 'ኣብ {0} ደቒቕ',
+ 'minute-narrow-past-one' => 'ቅድሚ {0} ደቒቕ',
+ 'minute-narrow-past-other' => 'ቅድሚ {0} ደቒቕ',
+ 'minute-past-one' => 'ቅድሚ {0} ደቒቕ',
+ 'minute-past-other' => 'ቅድሚ {0} ደቒቕ',
+ 'minute-short-future-one' => 'ኣብ {0} ደቒቕ',
+ 'minute-short-future-other' => 'ኣብ {0} ደቒቕ',
+ 'minute-short-past-one' => 'ቅድሚ {0} ደቒቕ',
+ 'minute-short-past-other' => 'ቅድሚ {0} ደቒቕ',
+ 'mon-future-one' => 'ኣብ {0} ሰኑይ',
+ 'mon-future-other' => 'ኣብ {0} ሰኑይ',
+ 'mon-narrow-future-one' => 'ኣብ {0} ሰኑይ',
+ 'mon-narrow-future-other' => 'ኣብ {0} ሰኑይ',
+ 'mon-narrow-past-one' => 'ቅድሚ {0} ሰኑይ',
+ 'mon-narrow-past-other' => 'ቅድሚ {0} ሰኑይ',
+ 'mon-past-one' => 'ቅድሚ {0} ሰኑይ',
+ 'mon-past-other' => 'ቅድሚ {0} ሰኑይ',
+ 'mon-short-future-one' => 'ኣብ {0} ሰኑይ',
+ 'mon-short-future-other' => 'ኣብ {0} ሰኑይ',
+ 'mon-short-past-one' => 'ቅድሚ {0} ሰኑይ',
+ 'mon-short-past-other' => 'ቅድሚ {0} ሰኑይ',
+ 'month-future-one' => 'ኣብ {0} ወርሒ',
+ 'month-future-other' => 'ኣብ {0} ወርሒ',
+ 'month-narrow-future-one' => 'ኣብ {0} ወርሒ',
+ 'month-narrow-future-other' => 'ኣብ {0} ወርሒ',
+ 'month-narrow-past-one' => 'ቅድሚ {0} ወርሒ',
+ 'month-narrow-past-other' => 'ቅድሚ {0} ወርሒ',
+ 'month-past-one' => 'ቅድሚ {0} ወርሒ',
+ 'month-past-other' => 'ቅድሚ {0} ወርሒ',
+ 'month-short-future-one' => 'ኣብ {0} ወርሒ',
+ 'month-short-future-other' => 'ኣብ {0} ወርሒ',
+ 'month-short-past-one' => 'ቅድሚ {0} ወርሒ',
+ 'month-short-past-other' => 'ቅድሚ {0} ወርሒ',
+ 'quarter-future-one' => 'ኣብ {0} ርብዒ',
+ 'quarter-future-other' => 'ኣብ {0} ርብዒ',
+ 'quarter-narrow-future-one' => 'ኣብ {0} ርብዒ',
+ 'quarter-narrow-future-other' => 'ኣብ {0} ርብዒ',
+ 'quarter-narrow-past-one' => 'ቅድሚ {0} ርብዒ',
+ 'quarter-narrow-past-other' => 'ቅድሚ {0} ርብዒ',
+ 'quarter-past-one' => 'ቅድሚ {0} ርብዒ',
+ 'quarter-past-other' => 'ቅድሚ {0} ርብዒ',
+ 'quarter-short-future-one' => 'ኣብ {0} ርብዒ',
+ 'quarter-short-future-other' => 'ኣብ {0} ርብዒ',
+ 'quarter-short-past-one' => 'ቅድሚ {0} ርብዒ',
+ 'quarter-short-past-other' => 'ቅድሚ {0} ርብዒ',
+ 'sat-future-one' => 'ኣብ {0} ቀዳም',
+ 'sat-future-other' => 'ኣብ {0} ቀዳም',
+ 'sat-narrow-future-one' => 'ኣብ {0} ቀዳም',
+ 'sat-narrow-future-other' => 'ኣብ {0} ቀዳም',
+ 'sat-narrow-past-one' => 'ቅድሚ {0} ቀዳም',
+ 'sat-narrow-past-other' => 'ቅድሚ {0} ቀዳም',
+ 'sat-past-one' => 'ቅድሚ {0} ቀዳም',
+ 'sat-past-other' => 'ቅድሚ {0} ቀዳም',
+ 'sat-short-future-one' => 'ኣብ {0} ቀዳም',
+ 'sat-short-future-other' => 'ኣብ {0} ቀዳም',
+ 'sat-short-past-one' => 'ቅድሚ {0} ቀዳም',
+ 'sat-short-past-other' => 'ቅድሚ {0} ቀዳም',
+ 'second-future-one' => 'ኣብ {0} ካልኢት',
+ 'second-future-other' => 'ኣብ {0} ካልኢት',
+ 'second-narrow-future-one' => 'ኣብ {0} ካልኢት',
+ 'second-narrow-future-other' => 'ኣብ {0} ካልኢት',
+ 'second-narrow-past-one' => 'ቅድሚ {0} ካልኢት',
+ 'second-narrow-past-other' => 'ቅድሚ {0} ካልኢት',
+ 'second-past-one' => 'ቅድሚ {0} ካልኢት',
+ 'second-past-other' => 'ቅድሚ {0} ካልኢት',
+ 'second-short-future-one' => 'ኣብ {0} ካልኢት',
+ 'second-short-future-other' => 'ኣብ {0} ካልኢት',
+ 'second-short-past-one' => 'ቅድሚ {0} ካልኢት',
+ 'second-short-past-other' => 'ቅድሚ {0} ካልኢት',
+ 'sun-future-one' => 'ኣብ {0} ሰንበት',
+ 'sun-future-other' => 'ኣብ {0} ሰንበት',
+ 'sun-narrow-future-one' => 'ኣብ {0} ሰንበት',
+ 'sun-narrow-future-other' => 'ኣብ {0} ሰንበት',
+ 'sun-narrow-past-one' => 'ቅድሚ {0} ሰንበት',
+ 'sun-narrow-past-other' => 'ቅድሚ {0} ሰንበት',
+ 'sun-past-one' => 'ቅድሚ {0} ሰንበት',
+ 'sun-past-other' => 'ቅድሚ {0} ሰንበት',
+ 'sun-short-future-one' => 'ኣብ {0} ሰንበት',
+ 'sun-short-future-other' => 'ኣብ {0} ሰንበት',
+ 'sun-short-past-one' => 'ቅድሚ {0} ሰንበት',
+ 'sun-short-past-other' => 'ቅድሚ {0} ሰንበት',
+ 'thu-future-one' => 'ኣብ {0} ሓሙስ',
+ 'thu-future-other' => 'ኣብ {0} ሓሙስ',
+ 'thu-narrow-future-one' => 'ኣብ {0} ሓሙስ',
+ 'thu-narrow-future-other' => 'ኣብ {0} ሓሙስ',
+ 'thu-narrow-past-one' => 'ቅድሚ {0} ሓሙስ',
+ 'thu-narrow-past-other' => 'ቅድሚ {0} ሓሙስ',
+ 'thu-past-one' => 'ቅድሚ {0} ሓሙስ',
+ 'thu-past-other' => 'ቅድሚ {0} ሓሙስ',
+ 'thu-short-future-one' => 'ኣብ {0} ሓሙስ',
+ 'thu-short-future-other' => 'ኣብ {0} ሓሙስ',
+ 'thu-short-past-one' => 'ቅድሚ {0} ሓሙስ',
+ 'thu-short-past-other' => 'ቅድሚ {0} ሓሙስ',
+ 'tue-future-one' => 'ኣብ {0} ሰሉስ',
+ 'tue-future-other' => 'ኣብ {0} ሰሉስ',
+ 'tue-narrow-future-one' => 'ኣብ {0} ሰሉስ',
+ 'tue-narrow-future-other' => 'ኣብ {0} ሰሉስ',
+ 'tue-narrow-past-one' => 'ቅድሚ {0} ሰሉስ',
+ 'tue-narrow-past-other' => 'ቅድሚ {0} ሰሉስ',
+ 'tue-past-one' => 'ቅድሚ {0} ሰሉስ',
+ 'tue-past-other' => 'ቅድሚ {0} ሰሉስ',
+ 'tue-short-future-one' => 'ኣብ {0} ሰሉስ',
+ 'tue-short-future-other' => 'ኣብ {0} ሰሉስ',
+ 'tue-short-past-one' => 'ቅድሚ {0} ሰሉስ',
+ 'tue-short-past-other' => 'ቅድሚ {0} ሰሉስ',
+ 'wed-future-one' => 'ኣብ {0} ረቡዕ',
+ 'wed-future-other' => 'ኣብ {0} ረቡዕ',
+ 'wed-narrow-future-one' => 'ኣብ {0} ረቡዕ',
+ 'wed-narrow-future-other' => 'ኣብ {0} ረቡዕ',
+ 'wed-narrow-past-one' => 'ቅድሚ {0} ረቡዕ',
+ 'wed-narrow-past-other' => 'ቅድሚ {0} ረቡዕ',
+ 'wed-past-one' => 'ቅድሚ {0} ረቡዕ',
+ 'wed-past-other' => 'ቅድሚ {0} ረቡዕ',
+ 'wed-short-future-one' => 'ኣብ {0} ረቡዕ',
+ 'wed-short-future-other' => 'ኣብ {0} ረቡዕ',
+ 'wed-short-past-one' => 'ቅድሚ {0} ረቡዕ',
+ 'wed-short-past-other' => 'ቅድሚ {0} ረቡዕ',
+ 'week-future-one' => 'ኣብ {0} ሰሙን',
+ 'week-future-other' => 'ኣብ {0} ሰሙን',
+ 'week-narrow-future-one' => 'ኣብ {0} ሰሙን',
+ 'week-narrow-future-other' => 'ኣብ {0} ሰሙን',
+ 'week-narrow-past-one' => 'ቅድሚ {0} ሰሙን',
+ 'week-narrow-past-other' => 'ቅድሚ {0} ሰሙን',
+ 'week-past-one' => 'ቅድሚ {0} ሰሙን',
+ 'week-past-other' => 'ቅድሚ {0} ሰሙን',
+ 'week-short-future-one' => 'ኣብ {0} ሰሙን',
+ 'week-short-future-other' => 'ኣብ {0} ሰሙን',
+ 'week-short-past-one' => 'ቅድሚ {0} ሰሙን',
+ 'week-short-past-other' => 'ቅድሚ {0} ሰሙን',
+ 'year-future-one' => 'ኣብ {0} ዓ',
+ 'year-future-other' => 'ኣብ {0} ዓ',
+ 'year-narrow-future-one' => 'ኣብ {0} ዓ',
+ 'year-narrow-future-other' => 'ኣብ {0} ዓ',
+ 'year-narrow-past-one' => 'ቅድሚ {0} ዓ',
+ 'year-narrow-past-other' => 'ቅድሚ {0} ዓ',
+ 'year-past-one' => 'ቅድሚ {0} ዓ',
+ 'year-past-other' => 'ቅድሚ {0} ዓ',
+ 'year-short-future-one' => 'ኣብ {0} ዓ',
+ 'year-short-future-other' => 'ኣብ {0} ዓ',
+ 'year-short-past-one' => 'ቅድሚ -{0} ዓ',
+ 'year-short-past-other' => 'ቅድሚ {0} ዓ',
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesTn.php b/MLEB/cldr/CldrNames/CldrNamesTn.php
deleted file mode 100644
index 9355a5f8..00000000
--- a/MLEB/cldr/CldrNames/CldrNamesTn.php
+++ /dev/null
@@ -1,83 +0,0 @@
-<?php
-
-$languageNames = array(
- 'af' => 'Seburu',
- 'am' => 'Amhariki',
- 'ar' => 'Arabic',
- 'az' => 'Azerbaijani',
- 'be' => 'Belarusian',
- 'bg' => 'Bulgarian',
- 'bn' => 'Bengali',
- 'bs' => 'SeBosnia',
- 'ca' => 'Catalan',
- 'cs' => 'Se Czeck',
- 'cy' => 'Welsh',
- 'da' => 'Danish',
- 'de' => 'German',
- 'el' => 'SeGerika',
- 'en' => 'Sekgoa',
- 'eo' => 'Esperanto',
- 'es' => 'Spanish',
- 'et' => 'Estonian',
- 'eu' => 'Basque',
- 'fa' => 'Mo/SePerishia',
- 'fi' => 'Se-Finland',
- 'fil' => 'Tagalog',
- 'fo' => 'Faroese',
- 'fr' => 'Se Fora',
- 'fy' => 'Frisian',
- 'ga' => 'Irish',
- 'gd' => 'Scots Gaelic',
- 'gl' => 'Galician',
- 'gu' => 'Gujarati',
- 'he' => 'Se heberu',
- 'hi' => 'Hindi',
- 'hr' => 'Croatian',
- 'hu' => 'Hungarian',
- 'ia' => 'Interlingua',
- 'id' => 'Indonesian',
- 'is' => 'Icelandic',
- 'it' => 'Se Italiano',
- 'ja' => 'Se Japan',
- 'jv' => 'Javanese',
- 'ka' => 'Mo/SeJojia',
- 'kn' => 'Kannada',
- 'ko' => 'Se Korea',
- 'la' => 'Latin',
- 'lt' => 'Lithuanian',
- 'lv' => 'Latvian',
- 'mk' => 'Macedonian',
- 'ml' => 'Malayalam',
- 'mr' => 'Marathi',
- 'ms' => 'Malay',
- 'mt' => 'Maltese',
- 'ne' => 'Nepali',
- 'nl' => 'Se Dutch',
- 'no' => 'Puo ya kwa Norway',
- 'oc' => 'Occitan',
- 'pa' => 'Punjabi',
- 'pl' => 'Se Poland',
- 'pt' => 'Se Potoketsi',
- 'ro' => 'Se Roma',
- 'ru' => 'Russian',
- 'sk' => 'Slovak',
- 'sl' => 'Slovenian',
- 'sq' => 'Albanian',
- 'sr' => 'Serbian',
- 'su' => 'Mo/SeSundane',
- 'sv' => 'Swedish',
- 'sw' => 'Swahili',
- 'ta' => 'Tamil',
- 'te' => 'Telugu',
- 'th' => 'Thai',
- 'ti' => 'Tigrinya',
- 'tlh' => 'Klingon',
- 'tn' => 'Setswana',
- 'tr' => 'Turkish',
- 'uk' => 'Ukrainian',
- 'ur' => 'Urdu',
- 'uz' => 'Uzbek',
- 'vi' => 'Vietnamese',
- 'xh' => 'IsiXhosa',
- 'zu' => 'IsiZulu',
-);
diff --git a/MLEB/cldr/CldrNames/CldrNamesTo.php b/MLEB/cldr/CldrNames/CldrNamesTo.php
index 1576c4a5..11105001 100644
--- a/MLEB/cldr/CldrNames/CldrNamesTo.php
+++ b/MLEB/cldr/CldrNames/CldrNamesTo.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'lea fakaʻafāla',
'ab' => 'lea fakaʻapakasia',
'ace' => 'lea fakaʻatisē',
@@ -42,7 +42,6 @@ $languageNames = array(
'awa' => 'lea fakaʻauati',
'ay' => 'lea fakaʻaimala',
'az' => 'lea fakaʻasapaisani',
- 'azb' => 'lea fakaʻasapaisani-tonga',
'ba' => 'lea fakapasikili',
'bal' => 'lea fakapalusi',
'ban' => 'lea fakapali',
@@ -59,6 +58,7 @@ $languageNames = array(
'bfd' => 'lea fakapafuti',
'bfq' => 'lea fakapataka',
'bg' => 'lea fakapulukalia',
+ 'bgn' => 'lea fakapalusi-hihifo',
'bho' => 'lea fakaposipuli',
'bi' => 'lea fakapisilama',
'bik' => 'lea fakapikoli',
@@ -67,7 +67,7 @@ $languageNames = array(
'bkm' => 'lea fakakome',
'bla' => 'lea fakasikesikā',
'bm' => 'lea fakapamipala',
- 'bn' => 'lea fakapengikali',
+ 'bn' => 'lea fakapāngilā',
'bo' => 'lea fakatipeti',
'bpy' => 'lea fakapisinupilia',
'bqi' => 'lea fakapakitiāli',
@@ -100,12 +100,13 @@ $languageNames = array(
'chp' => 'lea fakasipeuiani',
'chr' => 'lea fakaselokī',
'chy' => 'lea fakaseiene',
- 'ckb' => 'lea fakakūtisi-solani',
+ 'ckb' => 'lea fakakūtisi-loloto',
'co' => 'lea fakakōsika',
'cop' => 'lea fakakopitika',
'cps' => 'lea fakakapiseno',
'cr' => 'lea fakakelī',
'crh' => 'lea fakatoake-kilimea',
+ 'crs' => 'lea fakaseselua-falanisē',
'cs' => 'lea fakaseki',
'csb' => 'lea fakakasiupia',
'cu' => 'lea fakasilavia-fakasiasi',
@@ -131,7 +132,7 @@ $languageNames = array(
'dv' => 'lea fakativehi',
'dyo' => 'lea fakaiola-fonī',
'dyu' => 'lea fakatiula',
- 'dz' => 'lea fakaputeni',
+ 'dz' => 'lea fakatisōngika',
'dzg' => 'lea fakatasaka',
'ebu' => 'lea fakaʻemipū',
'ee' => 'lea fakaʻeue',
@@ -212,7 +213,7 @@ $languageNames = array(
'haw' => 'lea fakahauaiʻi',
'he' => 'lea fakahepelū',
'hi' => 'lea fakahinitī',
- 'hif' => 'lea fakahihitī-fisi',
+ 'hif' => 'lea fakahinitī-fisi',
'hil' => 'lea fakahilikainoni',
'hit' => 'lea fakahitite',
'hmn' => 'lea fakamōngi',
@@ -318,6 +319,7 @@ $languageNames = array(
'lo' => 'lea fakalau',
'lol' => 'lea fakamongikō',
'loz' => 'lea fakalosi',
+ 'lrc' => 'lea fakaluli-tokelau',
'lt' => 'lea fakalituania',
'ltg' => 'lea fakalatakale',
'lu' => 'lea fakalupa-katanga',
@@ -346,7 +348,7 @@ $languageNames = array(
'mg' => 'lea fakamalakasi',
'mga' => 'lea fakaʻaelani-lotoloto',
'mgh' => 'lea fakamakūa-meʻeto',
- 'mgo' => 'lea fakameta',
+ 'mgo' => 'lea fakametā',
'mh' => 'lea fakamāsolo',
'mi' => 'lea fakamauli',
'mic' => 'lea fakamikemaki',
@@ -361,7 +363,7 @@ $languageNames = array(
'mr' => 'lea fakamalati',
'mrj' => 'lea fakamali-hihifo',
'ms' => 'lea fakamalei',
- 'mt' => 'lea fakamolota',
+ 'mt' => 'lea fakamalita',
'mua' => 'lea fakamunitangi',
'mul' => 'lea tuifio',
'mus' => 'lea fakakileki',
@@ -379,6 +381,7 @@ $languageNames = array(
'nb' => 'lea fakanouaē-pokimali',
'nd' => 'lea fakanetepele-tokelau',
'nds' => 'lea fakasiamane-hifo',
+ 'nds-nl' => 'lea fakasakisoni-hifo',
'ne' => 'lea fakanepali',
'new' => 'lea fakaneuali',
'ng' => 'lea fakanetongikā',
@@ -390,7 +393,7 @@ $languageNames = array(
'nmg' => 'lea fakakuasio',
'nn' => 'lea fakanoauē-ninosiki',
'nnh' => 'lea fakangiemipōni',
- 'no' => 'lea fakanouē',
+ 'no' => 'lea fakanouaē',
'nog' => 'lea fakanokai',
'non' => 'lea fakanoauē-motuʻa',
'nov' => 'lea fakanoviale',
@@ -408,7 +411,7 @@ $languageNames = array(
'oc' => 'lea fakaʻokitane',
'oj' => 'lea fakaʻosipiuā',
'om' => 'lea fakaʻolomo',
- 'or' => 'lea fakaʻinitia-ʻolāea',
+ 'or' => 'lea faka-ʻotia',
'os' => 'lea fakaʻosetiki',
'osa' => 'lea fakaʻosēse',
'ota' => 'lea fakatoake-ʻotomani',
@@ -419,13 +422,14 @@ $languageNames = array(
'pap' => 'lea fakapapiamēnito',
'pau' => 'lea fakapalau',
'pcd' => 'lea fakapikāti',
+ 'pcm' => 'lea fakanaisilia',
'pdc' => 'lea fakasiamane-penisilivania',
'pdt' => 'lea fakasiamane-lafalafa',
'peo' => 'lea fakapēsia-motuʻa',
'pfl' => 'lea fakasiamane-palatine',
'phn' => 'lea fakafoinikia',
'pi' => 'lea fakapāli',
- 'pl' => 'lea fakapōlani',
+ 'pl' => 'lea fakapolani',
'pms' => 'lea fakapiemonite',
'pnt' => 'lea fakaponitiki',
'pon' => 'lea fakaponapē',
@@ -441,7 +445,7 @@ $languageNames = array(
'raj' => 'lea fakalasasitani',
'rap' => 'lea fakalapanui',
'rar' => 'lea fakalalotonga',
- 'rgn' => 'lea fakaromaniolo',
+ 'rgn' => 'lea fakalomaniolo',
'rif' => 'lea fakalifi',
'rm' => 'lea fakalaito-lomēnia',
'rn' => 'lea fakaluaniti',
@@ -471,6 +475,7 @@ $languageNames = array(
'sco' => 'lea fakasikotilani',
'sd' => 'lea fakasīniti',
'sdc' => 'lea fakasaletīnia-sasalesu',
+ 'sdh' => 'lea faka-tonga ‘o Ketesi',
'se' => 'lea fakasami-tokelau',
'see' => 'lea fakaseneka',
'seh' => 'lea fakasena',
@@ -501,9 +506,9 @@ $languageNames = array(
'sog' => 'lea fakasokitiana',
'sq' => 'lea fakaʻalapēnia',
'sr' => 'lea fakasēpia',
- 'srn' => 'lea fakasuranane-tongikō',
+ 'srn' => 'lea fakasulanane-tongikō',
'srr' => 'lea fakasēlēle',
- 'ss' => 'lea fakasuasilani',
+ 'ss' => 'lea fakasuati',
'ssy' => 'lea fakasaho',
'st' => 'lea fakasoto-tonga',
'stq' => 'lea fakafilisia-satēlani',
@@ -513,8 +518,8 @@ $languageNames = array(
'sux' => 'lea fakasumelia',
'sv' => 'lea fakasuēteni',
'sw' => 'lea fakasuahili',
+ 'sw-cd' => 'lea fakasuahili-kongikō',
'swb' => 'lea fakakomolo',
- 'swc' => 'lea fakasuahili-kongikō',
'syc' => 'lea fakasuliāiā-muʻa',
'syr' => 'lea fakasuliāiā',
'szl' => 'lea fakasilesia',
@@ -528,7 +533,7 @@ $languageNames = array(
'tg' => 'lea fakatāsiki',
'th' => 'lea fakatailani',
'ti' => 'lea fakatikilinia',
- 'tig' => 'lea fakatikilīnia',
+ 'tig' => 'lea fakatikilē',
'tiv' => 'lea fakativi',
'tk' => 'lea fakatēkimeni',
'tkl' => 'lea fakatokelau',
@@ -538,7 +543,7 @@ $languageNames = array(
'tli' => 'lea fakatilingikīte',
'tly' => 'lea fakatalisi',
'tmh' => 'lea fakatamasieki',
- 'tn' => 'lea suana',
+ 'tn' => 'lea fakatisuana',
'to' => 'lea fakatonga',
'tog' => 'lea fakaniasa-tonga',
'tpi' => 'lea fakatoki-pisini',
@@ -581,6 +586,7 @@ $languageNames = array(
'wal' => 'lea fakaʻuolaita',
'war' => 'lea fakaʻualai',
'was' => 'lea fakaʻuasiō',
+ 'wbp' => 'lea fakaʻuālipili',
'wo' => 'lea fakaʻuolofo',
'wuu' => 'lea fakasiaina-uū',
'xal' => 'lea fakakalimiki',
@@ -608,19 +614,23 @@ $languageNames = array(
'zun' => 'lea fakasuni',
'zxx' => 'ʻikai ha lea',
'zza' => 'lea fakasāsā',
-);
+];
-$currencyNames = array(
+$currencyNames = [
+ 'AUD' => 'Australian Dollar',
+ 'BRL' => 'BRL',
'TOP' => 'Paʻanga fakatonga',
'WST' => 'Tala fakahaʻamoa',
-);
+ 'XXX' => 'Pa’anga Ta’e’ilo',
+];
-$currencySymbols = array(
+$currencySymbols = [
+ 'AUD' => 'AUD$',
'TOP' => 'T$',
'WST' => 'WST',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'Motu ʻAsenisini',
'AD' => 'ʻAnitola',
'AE' => 'ʻAlepea Fakatahataha',
@@ -629,7 +639,6 @@ $countryNames = array(
'AI' => 'Anikuila',
'AL' => 'ʻAlipania',
'AM' => 'ʻĀmenia',
- 'AN' => 'Anitila fakahōlani',
'AO' => 'ʻAngikola',
'AQ' => 'ʻAnitātika',
'AR' => 'ʻAsenitina',
@@ -663,7 +672,7 @@ $countryNames = array(
'CA' => 'Kānata',
'CC' => 'ʻOtumotu Koko',
'CD' => 'Kongo - Kinisasa',
- 'CF' => 'Lipapilika ʻAfilika Lotoloto',
+ 'CF' => 'Lepupelika ʻAfilika Lotoloto',
'CG' => 'Kongo - Palasavila',
'CH' => 'Suisilani',
'CI' => 'Matafonua ʻAivolī',
@@ -679,14 +688,14 @@ $countryNames = array(
'CW' => 'Kulasao',
'CX' => 'Motu Kilisimasi',
'CY' => 'Saipalesi',
- 'CZ' => 'Lipapilika Seki',
+ 'CZ' => 'Sēkia',
'DE' => 'Siamane',
'DG' => 'Tieko Kāsia',
'DJ' => 'Siputi',
'DK' => 'Tenimaʻake',
'DM' => 'Tominika',
- 'DO' => 'Lipapilika Tominika',
- 'DZ' => 'ʻAisilia',
+ 'DO' => 'Lepupelika Tominika',
+ 'DZ' => 'ʻAlisilia',
'EA' => 'Siuta mo Melila',
'EC' => 'ʻEkuetoa',
'EE' => 'ʻEsitōnia',
@@ -695,7 +704,8 @@ $countryNames = array(
'ER' => 'ʻElitulia',
'ES' => 'Sipeini',
'ET' => 'ʻĪtiōpia',
- 'EU' => 'ʻIulope fakatahataha',
+ 'EU' => 'ʻEulope fakatahataha',
+ 'EZ' => 'ʻEulope fekauʻaki-paʻanga',
'FI' => 'Finilani',
'FJ' => 'Fisi',
'FK' => 'ʻOtumotu Fokulani',
@@ -773,11 +783,11 @@ $countryNames = array(
'MH' => 'ʻOtumotu Māsolo',
'MK' => 'Masetōnia',
'ML' => 'Māli',
- 'MM' => 'Pema',
+ 'MM' => 'Mianimā (Pema)',
'MN' => 'Mongokōlia',
'MO' => 'Makau',
'MP' => 'ʻOtumotu Maliana tokelau',
- 'MQ' => 'Māteniki',
+ 'MQ' => 'Mātiniki',
'MR' => 'Maulitenia',
'MS' => 'Moʻungaselati',
'MT' => 'Malita',
@@ -809,7 +819,7 @@ $countryNames = array(
'PL' => 'Polani',
'PM' => 'Sā Piea mo Mikeloni',
'PN' => 'ʻOtumotu Pitikeni',
- 'PR' => 'Pueto Liko',
+ 'PR' => 'Puēto Liko',
'PS' => 'Palesitaine',
'PT' => 'Potukali',
'PW' => 'Palau',
@@ -842,7 +852,7 @@ $countryNames = array(
'SX' => 'Sā Mātini (fakahōlani)',
'SY' => 'Sīlia',
'SZ' => 'Suasilani',
- 'TA' => 'Tulisiteni ta Kunuha',
+ 'TA' => 'Tulisitani ta Kunuha',
'TC' => 'ʻOtumotu Tuki mo Kaikosi',
'TD' => 'Sāti',
'TF' => 'Potu fonua tonga fakafalanisē',
@@ -850,7 +860,7 @@ $countryNames = array(
'TH' => 'Tailani',
'TJ' => 'Tasikitani',
'TK' => 'Tokelau',
- 'TL' => 'Timoa Hahake',
+ 'TL' => 'Timoa hahake',
'TM' => 'Tūkimenisitani',
'TN' => 'Tunīsia',
'TO' => 'Tonga',
@@ -862,6 +872,7 @@ $countryNames = array(
'UA' => 'ʻŪkalaʻine',
'UG' => 'ʻIukanitā',
'UM' => 'ʻOtumotu siʻi ʻo ʻAmelika',
+ 'UN' => 'ʻŪ fonua fakatahataha',
'US' => 'ʻAmelika',
'UY' => 'ʻUlukuai',
'UZ' => 'ʻUsipekitani',
@@ -880,9 +891,10 @@ $countryNames = array(
'ZA' => 'ʻAfilika tonga',
'ZM' => 'Semipia',
'ZW' => 'Simipapuei',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-other' => 'teautaʻu ʻe {0}',
'day-future-other' => 'ʻi he ʻaho ʻe {0}',
'day-narrow-future-other' => 'ʻi he ʻaho ʻe {0}',
'day-narrow-past-other' => 'ʻaho ʻe {0} kuoʻosi',
@@ -890,6 +902,12 @@ $timeUnits = array(
'day-past-other' => 'ʻaho ʻe {0} kuoʻosi',
'day-short-future-other' => 'ʻi he ʻaho ʻe {0}',
'day-short-past-other' => 'ʻaho ʻe {0} kuoʻosi',
+ 'fri-future-other' => 'Ngaahi Falaite ʻe {0} ʻi he kahaʻu',
+ 'fri-narrow-future-other' => 'Falaite ʻe {0} ʻi he kahaʻu',
+ 'fri-narrow-past-other' => 'Falaite ʻe {0} ʻi he kuohili',
+ 'fri-past-other' => 'Ngaahi Falaite ʻe {0} ʻi he kuohili',
+ 'fri-short-future-other' => 'Falaite ʻe {0} ʻi he kahaʻu',
+ 'fri-short-past-other' => 'Falaite ʻe {0} ʻi he kuohili',
'hour-future-other' => 'ʻi he houa ʻe {0}',
'hour-narrow-future-other' => 'ʻi he houa ʻe {0}',
'hour-narrow-past-other' => 'houa ʻe {0} kuoʻosi',
@@ -906,6 +924,12 @@ $timeUnits = array(
'minute-past-other' => 'miniti ʻe {0} kuoʻosi',
'minute-short-future-other' => 'ʻi he miniti ʻe {0}',
'minute-short-past-other' => 'miniti ʻe {0} kuoʻosi',
+ 'mon-future-other' => 'Ngaahi Mōnite ʻe {0} ʻi he kahaʻu',
+ 'mon-narrow-future-other' => 'Mōnite ʻe {0} ʻi he kahaʻu',
+ 'mon-narrow-past-other' => 'Mōnite ʻe {0} ʻi he kuohili',
+ 'mon-past-other' => 'Ngaahi Mōnite ʻe {0} ʻi he kuohili',
+ 'mon-short-future-other' => 'Mōnite ʻe {0} ʻi he kahaʻu',
+ 'mon-short-past-other' => 'Mōnite ʻe {0} ʻi he kuohili',
'month-future-other' => 'ʻi he māhina ʻe {0}',
'month-narrow-future-other' => 'ʻi he māhina ʻe {0}',
'month-narrow-past-other' => 'māhina ʻe {0} kuoʻosi',
@@ -920,6 +944,12 @@ $timeUnits = array(
'quarter-past-other' => 'kuata ʻe {0} kuoʻosi',
'quarter-short-future-other' => 'ʻi he kuata ʻe {0}',
'quarter-short-past-other' => 'kuata ʻe {0} kuoʻosi',
+ 'sat-future-other' => 'Ngaahi Tokonaki ʻe {0} ʻi he kahaʻu',
+ 'sat-narrow-future-other' => 'Tokonaki ʻe {0} ʻi he kahaʻu',
+ 'sat-narrow-past-other' => 'Tokonaki ʻe {0} ʻi he kuohili',
+ 'sat-past-other' => 'Ngaahi Tokonaki ʻe {0} ʻi he kuohili',
+ 'sat-short-future-other' => 'Tokonaki ʻe {0} ʻi he kahaʻu',
+ 'sat-short-past-other' => 'Tokonaki ʻe {0} ʻi he kuohili',
'second-future-other' => 'ʻi he sekoni ʻe {0}',
'second-narrow-future-other' => 'ʻi he sekoni ʻe {0}',
'second-narrow-past-other' => 'sekoni ʻe {0} kuoʻosi',
@@ -927,6 +957,30 @@ $timeUnits = array(
'second-past-other' => 'sekoni ʻe {0} kuoʻosi',
'second-short-future-other' => 'ʻi he sekoni ʻe {0}',
'second-short-past-other' => 'sekoni ʻe {0} kuoʻosi',
+ 'sun-future-other' => 'Ngaahi Sāpate ʻe {0} ʻi he kahaʻu',
+ 'sun-narrow-future-other' => 'Sāpate ʻe {0} ʻi he kahaʻu',
+ 'sun-narrow-past-other' => 'Sāpate ʻe {0} ʻi he kuohili',
+ 'sun-past-other' => 'Ngaahi Sāpate ʻe {0} ʻi he kuohili',
+ 'sun-short-future-other' => 'Sāpate ʻe {0} ʻi he kahaʻu',
+ 'sun-short-past-other' => 'Sāpate ʻe {0} ʻi he kuohili',
+ 'thu-future-other' => 'Ngaahi Tuʻapulelulu ʻe {0} ʻi he kahaʻu',
+ 'thu-narrow-future-other' => 'Tuʻapulelulu ʻe {0} ʻi he kahaʻu',
+ 'thu-narrow-past-other' => 'Tuʻapulelulu ʻe {0} ʻi he kuohili',
+ 'thu-past-other' => 'Ngaahi Tuʻapulelulu ʻe {0} ʻi he kuohili',
+ 'thu-short-future-other' => 'Tuʻapulelulu ʻe {0} ʻi he kahaʻu',
+ 'thu-short-past-other' => 'Tuʻapulelulu ʻe {0} ʻi he kuohili',
+ 'tue-future-other' => 'Ngaahi Tūsite ʻe {0} ʻi he kahaʻu',
+ 'tue-narrow-future-other' => 'Tūsite ʻe {0} ʻi he kahaʻu',
+ 'tue-narrow-past-other' => 'Tūsite ʻe {0} ʻi he kuohili',
+ 'tue-past-other' => 'Ngaahi Tūsite ʻe {0} ʻi he kuohili',
+ 'tue-short-future-other' => 'Tūsite ʻe {0} ʻi he kahaʻu',
+ 'tue-short-past-other' => 'Tūsite ʻe {0} ʻi he kuohili',
+ 'wed-future-other' => 'Ngaahi Pulelulu ʻe {0} ʻi he kahaʻu',
+ 'wed-narrow-future-other' => 'Pulelulu ʻe {0} ʻi he kahaʻu',
+ 'wed-narrow-past-other' => 'Pulelulu ʻe {0} ʻi he kuohili',
+ 'wed-past-other' => 'Ngaahi Pulelulu ʻe {0} ʻi he kuohili',
+ 'wed-short-future-other' => 'Pulelulu ʻe {0} ʻi he kahaʻu',
+ 'wed-short-past-other' => 'Pulelulu ʻe {0} ʻi he kuohili',
'week-future-other' => 'ʻi he uike ʻe {0}',
'week-narrow-future-other' => 'ʻi he uike ʻe {0}',
'week-narrow-past-other' => 'uike ʻe {0} kuoʻosi',
@@ -941,4 +995,4 @@ $timeUnits = array(
'year-past-other' => 'taʻu ʻe {0} kuoʻosi',
'year-short-future-other' => 'ʻi he taʻu ʻe {0}',
'year-short-past-other' => 'taʻu ʻe {0} kuoʻosi',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesTr.php b/MLEB/cldr/CldrNames/CldrNamesTr.php
index 99bb63df..1bcc1d65 100644
--- a/MLEB/cldr/CldrNames/CldrNamesTr.php
+++ b/MLEB/cldr/CldrNames/CldrNamesTr.php
@@ -1,9 +1,9 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'Afar',
'ab' => 'Abhazca',
- 'ace' => 'Achinese',
+ 'ace' => 'Açece',
'ach' => 'Acoli',
'ada' => 'Adangme',
'ady' => 'Adigece',
@@ -16,7 +16,7 @@ $languageNames = array(
'ak' => 'Akan',
'akk' => 'Akad Dili',
'akz' => 'Alabamaca',
- 'ale' => 'Aleut',
+ 'ale' => 'Aleut dili',
'aln' => 'Gheg Arnavutçası',
'alt' => 'Güney Altayca',
'am' => 'Amharca',
@@ -26,46 +26,48 @@ $languageNames = array(
'ar' => 'Arapça',
'ar-001' => 'Modern Standart Arapça',
'arc' => 'Aramice',
- 'arn' => 'Araukanya Dili',
+ 'arn' => 'Mapuçe dili',
'aro' => 'Araona',
'arp' => 'Arapaho Dili',
'arq' => 'Cezayir Arapçası',
+ 'ars' => 'Necd Arapçası',
'arw' => 'Arawak Dili',
'ary' => 'Fas Arapçası',
'arz' => 'Mısır Arapçası',
'as' => 'Assamca',
'asa' => 'Asu',
'ase' => 'Amerikan İşaret Dili',
- 'ast' => 'Asturyasca',
+ 'ast' => 'Asturyasça',
'av' => 'Avar Dili',
'avk' => 'Kotava',
'awa' => 'Awadhi',
'ay' => 'Aymara',
'az' => 'Azerice',
- 'azb' => 'Güney Azerice',
+ 'az-arab' => 'Güney Azerice',
'ba' => 'Başkırtça',
- 'bal' => 'Baluchi',
- 'ban' => 'Bali Dili',
- 'bar' => 'Bavyera Dili',
+ 'bal' => 'Beluçça',
+ 'ban' => 'Bali dili',
+ 'bar' => 'Bavyera dili',
'bas' => 'Basa Dili',
'bax' => 'Bamun',
'bbc' => 'Batak Toba',
'bbj' => 'Ghomala',
- 'be' => 'Beyaz Rusça',
- 'bej' => 'Beja Dili',
+ 'be' => 'Belarusça',
+ 'bej' => 'Beja dili',
'bem' => 'Bemba',
'bew' => 'Betawi',
'bez' => 'Bena',
'bfd' => 'Bafut',
'bfq' => 'Badaga',
'bg' => 'Bulgarca',
+ 'bgn' => 'Batı Balochi',
'bho' => 'Arayanice',
'bi' => 'Bislama',
'bik' => 'Bikol',
'bin' => 'Bini',
'bjn' => 'Banjar Dili',
'bkm' => 'Kom',
- 'bla' => 'Siksika',
+ 'bla' => 'Karaayak dili',
'bm' => 'Bambara',
'bn' => 'Bengalce',
'bo' => 'Tibetçe',
@@ -77,61 +79,62 @@ $languageNames = array(
'brx' => 'Bodo',
'bs' => 'Boşnakça',
'bss' => 'Akoose',
- 'bua' => 'Buryat',
+ 'bua' => 'Buryatça',
'bug' => 'Bugis',
'bum' => 'Bulu',
'byn' => 'Blin',
'byv' => 'Medumba',
'ca' => 'Katalanca',
- 'cad' => 'Caddo',
+ 'cad' => 'Kado dili',
'car' => 'Carib',
- 'cay' => 'Cayuga',
+ 'cay' => 'Kayuga dili',
'cch' => 'Atsam',
'ce' => 'Çeçence',
- 'ceb' => 'Cebuano',
+ 'ceb' => 'Sebuano dili',
'cgg' => 'Kigaca',
- 'ch' => 'Chamorro',
- 'chb' => 'Chibcha',
- 'chg' => 'Çağatay Dili',
+ 'ch' => 'Çamorro dili',
+ 'chb' => 'Çibça dili',
+ 'chg' => 'Çağatayca',
'chk' => 'Chuukese',
- 'chm' => 'Mari',
- 'chn' => 'Chinook Jargon',
- 'cho' => 'Choctaw',
- 'chp' => 'Chipewyan',
+ 'chm' => 'Mari dili',
+ 'chn' => 'Çinuk dili',
+ 'cho' => 'Çoktav dili',
+ 'chp' => 'Çipevya dili',
'chr' => 'Çerokice',
- 'chy' => 'Şayen Dili',
+ 'chy' => 'Şayence',
'ckb' => 'Orta Kürtçe',
'co' => 'Korsikaca',
'cop' => 'Kıptice',
'cps' => 'Capiznon',
- 'cr' => 'Cree',
+ 'cr' => 'Krice',
'crh' => 'Kırım Türkçesi',
+ 'crs' => 'Seselwa Kreole Fransızcası',
'cs' => 'Çekçe',
'csb' => 'Kashubian',
'cu' => 'Kilise Slavcası',
'cv' => 'Çuvaşça',
'cy' => 'Galce',
'da' => 'Danca',
- 'dak' => 'Dakota',
+ 'dak' => 'Dakotaca',
'dar' => 'Dargince',
'dav' => 'Taita',
'de' => 'Almanca',
'de-at' => 'Avusturya Almancası',
'de-ch' => 'İsviçre Yüksek Almancası',
'del' => 'Delaware',
- 'den' => 'Slavey',
+ 'den' => 'Slavey dili',
'dgr' => 'Dogrib',
- 'din' => 'Dinka',
+ 'din' => 'Dinka dili',
'dje' => 'Zarma',
'doi' => 'Dogri',
'dsb' => 'Aşağı Sorbça',
'dtp' => 'Orta Kadazan',
'dua' => 'Duala',
'dum' => 'Ortaçağ Felemenkçesi',
- 'dv' => 'Divehi',
+ 'dv' => 'Divehi dili',
'dyo' => 'Jola-Fonyi',
'dyu' => 'Dyula',
- 'dz' => 'Butan Dili',
+ 'dz' => 'Dzongkha',
'dzg' => 'Dazaga',
'ebu' => 'Embu',
'ee' => 'Ewe',
@@ -160,12 +163,12 @@ $languageNames = array(
'fa' => 'Farsça',
'fan' => 'Fang',
'fat' => 'Fanti',
- 'ff' => 'Fulah',
+ 'ff' => 'Fula dili',
'fi' => 'Fince',
'fil' => 'Filipince',
'fit' => 'Tornedalin Fincesi',
- 'fj' => 'Fiji Dili',
- 'fo' => 'Faroe Dili',
+ 'fj' => 'Fiji dili',
+ 'fo' => 'Faroe dili',
'fon' => 'Fon',
'fr' => 'Fransızca',
'fr-ca' => 'Kanada Fransızcası',
@@ -176,69 +179,69 @@ $languageNames = array(
'frp' => 'Arpitanca',
'frr' => 'Kuzey Frizce',
'frs' => 'Doğu Frizcesi',
- 'fur' => 'Friulian',
+ 'fur' => 'Friuli dili',
'fy' => 'Batı Frizcesi',
'ga' => 'İrlandaca',
- 'gaa' => 'Ga',
+ 'gaa' => 'Ga dili',
'gag' => 'Gagavuzca',
'gan' => 'Gan Çincesi',
- 'gay' => 'Gayo',
+ 'gay' => 'Gayo dili',
'gba' => 'Gbaya',
'gbz' => 'Zerdüşt Daricesi',
- 'gd' => 'İskoç Gal Dili',
+ 'gd' => 'İskoç Gaelcesi',
'gez' => 'Geez',
- 'gil' => 'Kiribati Dili',
+ 'gil' => 'Kiribatice',
'gl' => 'Galiçyaca',
'glk' => 'Gilanice',
'gmh' => 'Ortaçağ Yüksek Almancası',
- 'gn' => 'Guarani Dili',
+ 'gn' => 'Guarani dili',
'goh' => 'Eski Yüksek Almanca',
'gom' => 'Goa Konkanicesi',
- 'gon' => 'Gondi',
- 'gor' => 'Gorontalo',
+ 'gon' => 'Gondi dili',
+ 'gor' => 'Gorontalo dili',
'got' => 'Gotça',
- 'grb' => 'Grebo',
+ 'grb' => 'Grebo dili',
'grc' => 'Antik Yunanca',
'gsw' => 'İsviçre Almancası',
'gu' => 'Güceratça',
- 'guc' => 'Wayuu',
+ 'guc' => 'Wayuu dili',
'gur' => 'Frafra',
'guz' => 'Gusii',
- 'gv' => 'Manks',
- 'gwi' => 'Gwichʼin',
- 'ha' => 'Hausa',
- 'hai' => 'Haida',
+ 'gv' => 'Man dili',
+ 'gwi' => 'Guçince',
+ 'ha' => 'Hausa dili',
+ 'hai' => 'Haydaca',
'hak' => 'Hakka Çincesi',
- 'haw' => 'Hawaii Dili',
+ 'haw' => 'Hawaii dili',
'he' => 'İbranice',
'hi' => 'Hintçe',
'hif' => 'Fiji Hintçesi',
- 'hil' => 'Hiligaynon',
+ 'hil' => 'Hiligaynon dili',
'hit' => 'Hititçe',
'hmn' => 'Hmong',
'ho' => 'Hiri Motu',
'hr' => 'Hırvatça',
'hsb' => 'Yukarı Sorbça',
'hsn' => 'Xiang Çincesi',
- 'ht' => 'Haiti Dili',
+ 'ht' => 'Haiti Kreyolu',
'hu' => 'Macarca',
- 'hup' => 'Hupa',
+ 'hup' => 'Hupaca',
'hy' => 'Ermenice',
- 'hz' => 'Herero',
+ 'hz' => 'Herero dili',
'ia' => 'Interlingua',
'iba' => 'Iban',
- 'ibb' => 'Ibibio',
+ 'ibb' => 'İbibio dili',
'id' => 'Endonezce',
'ie' => 'Interlingue',
- 'ig' => 'İbo Dili',
+ 'ig' => 'İbo dili',
'ii' => 'Sichuan Yi',
- 'ik' => 'Inupiak',
+ 'ik' => 'İnyupikçe',
'ilo' => 'Iloko',
'inh' => 'İnguşça',
'io' => 'Ido',
'is' => 'İzlandaca',
'it' => 'İtalyanca',
- 'iu' => 'Inuktitut',
+ 'iu' => 'İnuktitut dili',
'izh' => 'İngriya Dili',
'ja' => 'Japonca',
'jam' => 'Jamaika Patois Dili',
@@ -252,7 +255,7 @@ $languageNames = array(
'ka' => 'Gürcüce',
'kaa' => 'Karakalpakça',
'kab' => 'Kabiliyece',
- 'kac' => 'Kaçin',
+ 'kac' => 'Kaçin dili',
'kaj' => 'Jju',
'kam' => 'Kamba',
'kaw' => 'Kawi',
@@ -263,9 +266,9 @@ $languageNames = array(
'kea' => 'Kabuverdianu',
'ken' => 'Kenyang',
'kfo' => 'Koro',
- 'kg' => 'Kongo',
+ 'kg' => 'Kongo dili',
'kgp' => 'Kaingang',
- 'kha' => 'Khasi',
+ 'kha' => 'Khasi dili',
'kho' => 'Hotanca',
'khq' => 'Koyra Chiini',
'khw' => 'Çitral Dili',
@@ -274,29 +277,29 @@ $languageNames = array(
'kj' => 'Kuanyama',
'kk' => 'Kazakça',
'kkj' => 'Kako',
- 'kl' => 'Grönland Dili',
+ 'kl' => 'Grönland dili',
'kln' => 'Kalenjin',
- 'km' => 'Kmerce',
+ 'km' => 'Khmer dili',
'kmb' => 'Kimbundu',
- 'kn' => 'Kannada',
+ 'kn' => 'Kannada dili',
'ko' => 'Korece',
'koi' => 'Komi-Permyak',
- 'kok' => 'Konkani',
+ 'kok' => 'Konkani dili',
'kos' => 'Kosraean',
- 'kpe' => 'Kpelle',
- 'kr' => 'Kanuri',
+ 'kpe' => 'Kpelle dili',
+ 'kr' => 'Kanuri dili',
'krc' => 'Karaçay-Balkarca',
'kri' => 'Krio',
'krj' => 'Kinaray-a',
'krl' => 'Karelyaca',
- 'kru' => 'Kurukh',
- 'ks' => 'Keşmirce',
+ 'kru' => 'Kurukh dili',
+ 'ks' => 'Keşmir dili',
'ksb' => 'Shambala',
'ksf' => 'Bafia',
- 'ksh' => 'Köln Diyalekti',
+ 'ksh' => 'Köln lehçesi',
'ku' => 'Kürtçe',
'kum' => 'Kumukça',
- 'kut' => 'Kutenai',
+ 'kut' => 'Kutenai dili',
'kv' => 'Komi',
'kw' => 'Kernevekçe',
'ky' => 'Kırgızca',
@@ -304,7 +307,7 @@ $languageNames = array(
'lad' => 'Ladino',
'lag' => 'Langi',
'lah' => 'Lahnda',
- 'lam' => 'Lamba',
+ 'lam' => 'Lamba dili',
'lb' => 'Lüksemburgca',
'lez' => 'Lezgice',
'lfn' => 'Lingua Franca Nova',
@@ -315,10 +318,12 @@ $languageNames = array(
'lkt' => 'Lakotaca',
'lmo' => 'Lombardça',
'ln' => 'Lingala',
- 'lo' => 'Laoca',
+ 'lo' => 'Lao dili',
'lol' => 'Mongo',
+ 'lou' => 'Louisiana Kreolcesi',
'loz' => 'Lozi',
- 'lt' => 'Litvanyaca',
+ 'lrc' => 'Kuzey Luri',
+ 'lt' => 'Litvanca',
'ltg' => 'Latgalian',
'lu' => 'Luba-Katanga',
'lua' => 'Luba-Lulua',
@@ -338,92 +343,94 @@ $languageNames = array(
'man' => 'Mandingo',
'mas' => 'Masai',
'mde' => 'Maba',
- 'mdf' => 'Mokşa Dili',
+ 'mdf' => 'Mokşa dili',
'mdr' => 'Mandar',
- 'men' => 'Mende',
+ 'men' => 'Mende dili',
'mer' => 'Meru',
'mfe' => 'Morisyen',
'mg' => 'Malgaşça',
'mga' => 'Ortaçağ İrlandacası',
'mgh' => 'Makhuwa-Meetto',
'mgo' => 'Meta’',
- 'mh' => 'Marshall Adaları Dili',
- 'mi' => 'Maori Dili',
+ 'mh' => 'Marshall Adaları dili',
+ 'mi' => 'Maori dili',
'mic' => 'Micmac',
'min' => 'Minangkabau',
'mk' => 'Makedonca',
- 'ml' => 'Malayalam',
+ 'ml' => 'Malayalam dili',
'mn' => 'Moğolca',
- 'mnc' => 'Mançurya Dili',
- 'mni' => 'Manipuri',
- 'moh' => 'Mohavk Dili',
+ 'mnc' => 'Mançurya dili',
+ 'mni' => 'Manipuri dili',
+ 'moh' => 'Mohavk dili',
'mos' => 'Mossi',
- 'mr' => 'Marathi',
+ 'mr' => 'Marathi dili',
'mrj' => 'Ova Çirmişçesi',
'ms' => 'Malayca',
'mt' => 'Maltaca',
'mua' => 'Mundang',
'mul' => 'Birden Fazla Dil',
- 'mus' => 'Creek',
- 'mwl' => 'Miranda Dili',
+ 'mus' => 'Krikçe',
+ 'mwl' => 'Miranda dili',
'mwr' => 'Marvari',
'mwv' => 'Mentawai',
- 'my' => 'Burmaca',
+ 'my' => 'Birman dili',
'mye' => 'Myene',
'myv' => 'Erzya',
'mzn' => 'Mazenderanca',
- 'na' => 'Nauru Dili',
+ 'na' => 'Nauru dili',
'nan' => 'Min Nan Çincesi',
'nap' => 'Napolice',
'naq' => 'Nama',
'nb' => 'Norveççe Bokmål',
'nd' => 'Kuzey Ndebele',
'nds' => 'Aşağı Almanca',
+ 'nds-nl' => 'Aşağı Saksonca',
'ne' => 'Nepalce',
'new' => 'Nevari',
'ng' => 'Ndonga',
'nia' => 'Nias',
- 'niu' => 'Niuean',
+ 'niu' => 'Niue dili',
'njo' => 'Ao Naga',
- 'nl' => 'Hollandaca',
+ 'nl' => 'Felemenkçe',
'nl-be' => 'Flamanca',
'nmg' => 'Kwasio',
'nn' => 'Norveççe Nynorsk',
'nnh' => 'Ngiemboon',
'no' => 'Norveççe',
'nog' => 'Nogayca',
- 'non' => 'Eski Norse',
+ 'non' => 'Eski Nors dili',
'nov' => 'Novial',
'nqo' => 'N’Ko',
'nr' => 'Güney Ndebele',
- 'nso' => 'Kuzey Sotho',
+ 'nso' => 'Kuzey Sotho dili',
'nus' => 'Nuer',
- 'nv' => 'Navaho Dili',
+ 'nv' => 'Navaho dili',
'nwc' => 'Klasik Nevari',
'ny' => 'Nyanja',
'nym' => 'Nyamvezi',
'nyn' => 'Nyankole',
'nyo' => 'Nyoro',
- 'nzi' => 'Nzima',
- 'oc' => 'Occitan',
- 'oj' => 'Ojibva Dili',
- 'om' => 'Oromo',
+ 'nzi' => 'Nzima dili',
+ 'oc' => 'Oksitan dili',
+ 'oj' => 'Ojibva dili',
+ 'om' => 'Oromo dili',
'or' => 'Oriya Dili',
'os' => 'Osetçe',
'osa' => 'Osage',
'ota' => 'Osmanlı Türkçesi',
'pa' => 'Pencapça',
- 'pag' => 'Pangasinan',
+ 'pag' => 'Pangasinan dili',
'pal' => 'Pehlevi Dili',
'pam' => 'Pampanga',
'pap' => 'Papiamento',
- 'pau' => 'Palau Dili',
+ 'pau' => 'Palau dili',
'pcd' => 'Picard Dili',
+ 'pcm' => 'Nijerya Pidgin dili',
'pdc' => 'Pensilvanya Almancası',
'pdt' => 'Plautdietsch',
'peo' => 'Eski Farsça',
'pfl' => 'Palatin Almancası',
- 'phn' => 'Fenike Dili',
+ 'phn' => 'Fenike dili',
'pi' => 'Pali',
'pl' => 'Lehçe',
'pms' => 'Piyemontece',
@@ -435,17 +442,17 @@ $languageNames = array(
'pt' => 'Portekizce',
'pt-br' => 'Brezilya Portekizcesi',
'pt-pt' => 'Avrupa Portekizcesi',
- 'qu' => 'Keçuvaca',
+ 'qu' => 'Keçuva dili',
'quc' => 'Kiçece',
'qug' => 'Chimborazo Highland Quichua',
'raj' => 'Rajasthani',
- 'rap' => 'Rapanui',
+ 'rap' => 'Rapanui dili',
'rar' => 'Rarotongan',
'rgn' => 'Romanyolca',
'rif' => 'Rif Berbericesi',
'rm' => 'Romanşça',
'rn' => 'Kirundi',
- 'ro' => 'Romence',
+ 'ro' => 'Rumence',
'ro-md' => 'Moldovaca',
'rof' => 'Rombo',
'rom' => 'Romanca',
@@ -456,7 +463,7 @@ $languageNames = array(
'rup' => 'Ulahça',
'rw' => 'Kinyarwanda',
'rwk' => 'Rwa',
- 'sa' => 'Sanskritçe',
+ 'sa' => 'Sanskrit',
'sad' => 'Sandave',
'sah' => 'Yakutça',
'sam' => 'Samarit Aramcası',
@@ -466,35 +473,36 @@ $languageNames = array(
'saz' => 'Saurashtra',
'sba' => 'Ngambay',
'sbp' => 'Sangu',
- 'sc' => 'Sardunya Dili',
+ 'sc' => 'Sardunya dili',
'scn' => 'Sicilyaca',
- 'sco' => 'Scots',
- 'sd' => 'Sindhi',
+ 'sco' => 'İskoçça',
+ 'sd' => 'Sindhi dili',
'sdc' => 'Sassari Sarduca',
- 'se' => 'Kuzey Sami',
- 'see' => 'Seneca',
+ 'sdh' => 'Güney Kürtçesi',
+ 'se' => 'Kuzey Laponcası',
+ 'see' => 'Seneca dili',
'seh' => 'Sena',
'sei' => 'Seri',
- 'sel' => 'Selkup',
+ 'sel' => 'Selkup dili',
'ses' => 'Koyraboro Senni',
'sg' => 'Sango',
'sga' => 'Eski İrlandaca',
'sgs' => 'Samogitçe',
'sh' => 'Sırp-Hırvat Dili',
'shi' => 'Taşelhit',
- 'shn' => 'Shan Dili',
+ 'shn' => 'Shan dili',
'shu' => 'Çad Arapçası',
- 'si' => 'Seylanca',
- 'sid' => 'Sidamo',
+ 'si' => 'Sinhali dili',
+ 'sid' => 'Sidamo dili',
'sk' => 'Slovakça',
'sl' => 'Slovence',
'sli' => 'Aşağı Silezyaca',
'sly' => 'Selayar',
- 'sm' => 'Samoa Dili',
- 'sma' => 'Güney Sami',
- 'smj' => 'Lule Sami',
- 'smn' => 'Inari Sami',
- 'sms' => 'Skolt Sami',
+ 'sm' => 'Samoa dili',
+ 'sma' => 'Güney Laponcası',
+ 'smj' => 'Lule Laponcası',
+ 'smn' => 'İnari Laponcası',
+ 'sms' => 'Skolt Laponcası',
'sn' => 'Shona',
'snk' => 'Soninke',
'so' => 'Somalice',
@@ -502,44 +510,44 @@ $languageNames = array(
'sq' => 'Arnavutça',
'sr' => 'Sırpça',
'srn' => 'Sranan Tongo',
- 'srr' => 'Serer',
+ 'srr' => 'Serer dili',
'ss' => 'Sisvati',
'ssy' => 'Saho',
- 'st' => 'Güney Sotho',
+ 'st' => 'Güney Sotho dili',
'stq' => 'Saterland Frizcesi',
'su' => 'Sunda Dili',
- 'suk' => 'Sukuma',
+ 'suk' => 'Sukuma dili',
'sus' => 'Susu',
'sux' => 'Sümerce',
'sv' => 'İsveççe',
- 'sw' => 'Svahili',
+ 'sw' => 'Svahili dili',
+ 'sw-cd' => 'Kongo Svahili',
'swb' => 'Komorca',
- 'swc' => 'Kongo Svahili',
'syc' => 'Klasik Süryanice',
'syr' => 'Süryanice',
'szl' => 'Silezyaca',
'ta' => 'Tamilce',
'tcy' => 'Tuluca',
- 'te' => 'Telugu Dili',
+ 'te' => 'Telugu dili',
'tem' => 'Timne',
'teo' => 'Teso',
'ter' => 'Tereno',
'tet' => 'Tetum',
'tg' => 'Tacikçe',
'th' => 'Tayca',
- 'ti' => 'Tigrinya',
+ 'ti' => 'Tigrinya dili',
'tig' => 'Tigre',
'tiv' => 'Tiv',
'tk' => 'Türkmence',
- 'tkl' => 'Tokelau',
+ 'tkl' => 'Tokelau dili',
'tkr' => 'Sahurca',
- 'tl' => 'Takalotça',
+ 'tl' => 'Tagalogca',
'tlh' => 'Klingonca',
'tli' => 'Tlingit',
'tly' => 'Talışça',
'tmh' => 'Tamaşek',
'tn' => 'Setsvana',
- 'to' => 'Tongaca',
+ 'to' => 'Tonga dili',
'tog' => 'Nyasa Tonga',
'tpi' => 'Tok Pisin',
'tr' => 'Türkçe',
@@ -551,29 +559,29 @@ $languageNames = array(
'tt' => 'Tatarca',
'ttt' => 'Tatça',
'tum' => 'Tumbuka',
- 'tvl' => 'Tuvalu',
+ 'tvl' => 'Tuvalyanca',
'tw' => 'Tvi',
'twq' => 'Tasawaq',
- 'ty' => 'Tahiti Dili',
+ 'ty' => 'Tahiti dili',
'tyv' => 'Tuvaca',
- 'tzm' => 'Orta Fas Tamazigti',
+ 'tzm' => 'Orta Atlas Tamazigti',
'udm' => 'Udmurtça',
'ug' => 'Uygurca',
- 'uga' => 'Ugarit Dili',
+ 'uga' => 'Ugarit dili',
'uk' => 'Ukraynaca',
'umb' => 'Umbundu',
'und' => 'Bilinmeyen Dil',
'ur' => 'Urduca',
'uz' => 'Özbekçe',
'vai' => 'Vai',
- 've' => 'Venda',
+ 've' => 'Venda dili',
'vec' => 'Venedikçe',
- 'vep' => 'Veps',
+ 'vep' => 'Veps dili',
'vi' => 'Vietnamca',
'vls' => 'Batı Flamanca',
'vmf' => 'Main Frankonya Dili',
'vo' => 'Volapük',
- 'vot' => 'Votic',
+ 'vot' => 'Votça',
'vro' => 'Võro',
'vun' => 'Vunjo',
'wa' => 'Valonca',
@@ -581,10 +589,11 @@ $languageNames = array(
'wal' => 'Valamo',
'war' => 'Varay',
'was' => 'Vaşo',
+ 'wbp' => 'Warlpiri',
'wo' => 'Volofça',
'wuu' => 'Wu Çincesi',
'xal' => 'Kalmıkça',
- 'xh' => 'Zosa',
+ 'xh' => 'Zosa dili',
'xmf' => 'Megrelce',
'xog' => 'Soga',
'yao' => 'Yao',
@@ -595,22 +604,22 @@ $languageNames = array(
'yo' => 'Yorubaca',
'yrl' => 'Nheengatu',
'yue' => 'Kantonca',
- 'za' => 'Zhuang',
- 'zap' => 'Zapotek Dili',
+ 'za' => 'Zhuangca',
+ 'zap' => 'Zapotek dili',
'zbl' => 'Blis Sembolleri',
'zea' => 'Zelandaca',
- 'zen' => 'Zenaga',
- 'zgh' => 'Standart Berberi Dili Tamazight',
+ 'zen' => 'Zenaga dili',
+ 'zgh' => 'Standart Fas Tamazigti',
'zh' => 'Çince',
'zh-hans' => 'Basitleştirilmiş Çince',
'zh-hant' => 'Geleneksel Çince',
'zu' => 'Zuluca',
- 'zun' => 'Zuni',
+ 'zun' => 'Zunice',
'zxx' => 'Dilbilim içeriği yok',
'zza' => 'Zazaca',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'ADP' => 'Andorra Pezetası',
'AED' => 'Birleşik Arap Emirlikleri Dirhemi',
'AFA' => 'Afganistan Afganisi (1927–2002)',
@@ -665,7 +674,8 @@ $currencyNames = array(
'BUK' => 'Burma Kyatı',
'BWP' => 'Botsvana Pulası',
'BYB' => 'Yeni Beyaz Rusya Rublesi (1994–1999)',
- 'BYR' => 'Beyaz Rusya Rublesi',
+ 'BYN' => 'Belarus Rublesi',
+ 'BYR' => 'Beyaz Rusya Rublesi (2000–2016)',
'BZD' => 'Belize Doları',
'CAD' => 'Kanada Doları',
'CDF' => 'Kongo Frangı',
@@ -675,6 +685,7 @@ $currencyNames = array(
'CLE' => 'Şili Esküdosu',
'CLF' => 'Şili Unidades de Fomento',
'CLP' => 'Şili Pesosu',
+ 'CNH' => 'Çin Yuanı (offshore)',
'CNX' => 'Çin Halk Cumhuriyeti Merkez Bankası Doları',
'CNY' => 'Çin Yuanı',
'COP' => 'Kolombiya Pesosu',
@@ -779,7 +790,8 @@ $currencyNames = array(
'MMK' => 'Myanmar Kyatı',
'MNT' => 'Moğolistan Tugriki',
'MOP' => 'Makao Patakası',
- 'MRO' => 'Moritanya Ouguiyası',
+ 'MRO' => 'Moritanya Ugiyası (1973–2017)',
+ 'MRU' => 'Moritanya Ugiyası',
'MTL' => 'Malta Lirası',
'MTP' => 'Malta Sterlini',
'MUR' => 'Mauritius Rupisi',
@@ -804,8 +816,8 @@ $currencyNames = array(
'OMR' => 'Umman Riyali',
'PAB' => 'Panama Balboası',
'PEI' => 'Peru İnti',
- 'PEN' => 'Peru Nuevo Solü',
- 'PES' => 'Peru Solu',
+ 'PEN' => 'Peru Solü',
+ 'PES' => 'Peru Solü (1863–1965)',
'PGK' => 'Papua Yeni Gine Kinası',
'PHP' => 'Filipinler Pesosu',
'PKR' => 'Pakistan Rupisi',
@@ -837,7 +849,8 @@ $currencyNames = array(
'SRD' => 'Surinam Doları',
'SRG' => 'Surinam Guldeni',
'SSP' => 'Güney Sudan Lirası',
- 'STD' => 'São Tomé ve Príncipe Dobrası',
+ 'STD' => 'São Tomé ve Príncipe Dobrası (1977–2017)',
+ 'STN' => 'São Tomé ve Príncipe Dobrası',
'SUR' => 'Sovyet Rublesi',
'SVC' => 'El Salvador Kolonu',
'SYP' => 'Suriye Lirası',
@@ -867,7 +880,8 @@ $currencyNames = array(
'UYU' => 'Uruguay Pesosu',
'UZS' => 'Özbekistan Somu',
'VEB' => 'Venezuela Bolivarı (1871–2008)',
- 'VEF' => 'Venezuela Bolivarı',
+ 'VEF' => 'Venezuela Bolivarı (2008–2018)',
+ 'VES' => 'Venezuela Bolivarı',
'VND' => 'Vietnam Dongu',
'VNN' => 'Vietnam Dongu (1978–1985)',
'VUV' => 'Vanuatu Vatusu',
@@ -908,9 +922,9 @@ $currencyNames = array(
'ZWD' => 'Zimbabve Doları',
'ZWL' => 'Zimbabve Doları (2009)',
'ZWR' => 'Zimbabve Doları (2008)',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'ADP' => 'ADP',
'AED' => 'AED',
'AFN' => 'AFN',
@@ -960,6 +974,7 @@ $currencySymbols = array(
'BUK' => 'BUK',
'BWP' => 'BWP',
'BYB' => 'BYB',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CA$',
@@ -970,6 +985,7 @@ $currencySymbols = array(
'CLE' => 'CLE',
'CLF' => 'CLF',
'CLP' => 'CLP',
+ 'CNH' => 'CNH',
'CNY' => 'CN¥',
'COP' => 'COP',
'COU' => 'COU',
@@ -1044,6 +1060,7 @@ $currencySymbols = array(
'LBP' => 'LBP',
'LKR' => 'LKR',
'LRD' => 'LRD',
+ 'LSL' => 'LSL',
'LTL' => 'LTL',
'LTT' => 'LTT',
'LUC' => 'LUC',
@@ -1063,6 +1080,7 @@ $currencySymbols = array(
'MNT' => 'MNT',
'MOP' => 'MOP',
'MRO' => 'MRO',
+ 'MRU' => 'MRU',
'MTL' => 'MTL',
'MTP' => 'MTP',
'MUR' => 'MUR',
@@ -1115,6 +1133,7 @@ $currencySymbols = array(
'SRG' => 'SRG',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'STN',
'SUR' => 'SUR',
'SVC' => 'SVC',
'SYP' => 'SYP',
@@ -1144,6 +1163,7 @@ $currencySymbols = array(
'UZS' => 'UZS',
'VEB' => 'VEB',
'VEF' => 'VEF',
+ 'VES' => 'VES',
'VND' => '₫',
'VNN' => 'VNN',
'VUV' => 'VUV',
@@ -1167,11 +1187,12 @@ $currencySymbols = array(
'YUN' => 'YUN',
'YUR' => 'YUR',
'ZAR' => 'ZAR',
+ 'ZMK' => 'ZMK',
'ZMW' => 'ZMW',
'ZWR' => 'ZWR',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'Ascension Adası',
'AD' => 'Andorra',
'AE' => 'Birleşik Arap Emirlikleri',
@@ -1180,7 +1201,6 @@ $countryNames = array(
'AI' => 'Anguilla',
'AL' => 'Arnavutluk',
'AM' => 'Ermenistan',
- 'AN' => 'Hollanda Antilleri',
'AO' => 'Angola',
'AQ' => 'Antarktika',
'AR' => 'Arjantin',
@@ -1190,7 +1210,7 @@ $countryNames = array(
'AW' => 'Aruba',
'AX' => 'Åland Adaları',
'AZ' => 'Azerbaycan',
- 'BA' => 'Bosna Hersek',
+ 'BA' => 'Bosna-Hersek',
'BB' => 'Barbados',
'BD' => 'Bangladeş',
'BE' => 'Belçika',
@@ -1203,13 +1223,13 @@ $countryNames = array(
'BM' => 'Bermuda',
'BN' => 'Brunei',
'BO' => 'Bolivya',
- 'BQ' => 'Karayip Hollanda',
+ 'BQ' => 'Karayip Hollandası',
'BR' => 'Brezilya',
'BS' => 'Bahamalar',
'BT' => 'Butan',
'BV' => 'Bouvet Adası',
'BW' => 'Botsvana',
- 'BY' => 'Beyaz Rusya',
+ 'BY' => 'Belarus',
'BZ' => 'Belize',
'CA' => 'Kanada',
'CC' => 'Cocos (Keeling) Adaları',
@@ -1229,8 +1249,8 @@ $countryNames = array(
'CV' => 'Cape Verde',
'CW' => 'Curaçao',
'CX' => 'Christmas Adası',
- 'CY' => 'Güney Kıbrıs Rum Kesimi',
- 'CZ' => 'Çek Cumhuriyeti',
+ 'CY' => 'Kıbrıs',
+ 'CZ' => 'Çekya',
'DE' => 'Almanya',
'DG' => 'Diego Garcia',
'DJ' => 'Cibuti',
@@ -1238,15 +1258,16 @@ $countryNames = array(
'DM' => 'Dominika',
'DO' => 'Dominik Cumhuriyeti',
'DZ' => 'Cezayir',
- 'EA' => 'Septe ve Melilla',
+ 'EA' => 'Ceuta ve Melilla',
'EC' => 'Ekvador',
'EE' => 'Estonya',
'EG' => 'Mısır',
- 'EH' => 'Batı Sahara',
+ 'EH' => 'Batı Sahra',
'ER' => 'Eritre',
'ES' => 'İspanya',
'ET' => 'Etiyopya',
'EU' => 'Avrupa Birliği',
+ 'EZ' => 'Euro Bölgesi',
'FI' => 'Finlandiya',
'FJ' => 'Fiji',
'FK' => 'Falkland Adaları',
@@ -1264,7 +1285,7 @@ $countryNames = array(
'GL' => 'Grönland',
'GM' => 'Gambiya',
'GN' => 'Gine',
- 'GP' => 'Guadalupe',
+ 'GP' => 'Guadeloupe',
'GQ' => 'Ekvator Ginesi',
'GR' => 'Yunanistan',
'GS' => 'Güney Georgia ve Güney Sandwich Adaları',
@@ -1310,7 +1331,7 @@ $countryNames = array(
'LI' => 'Liechtenstein',
'LK' => 'Sri Lanka',
'LR' => 'Liberya',
- 'LS' => 'Lesoto',
+ 'LS' => 'Lesotho',
'LT' => 'Litvanya',
'LU' => 'Lüksemburg',
'LV' => 'Letonya',
@@ -1380,7 +1401,7 @@ $countryNames = array(
'SG' => 'Singapur',
'SH' => 'Saint Helena',
'SI' => 'Slovenya',
- 'SJ' => 'Svalbard ve Jan Mayen Adaları',
+ 'SJ' => 'Svalbard ve Jan Mayen',
'SK' => 'Slovakya',
'SL' => 'Sierra Leone',
'SM' => 'San Marino',
@@ -1412,7 +1433,8 @@ $countryNames = array(
'TZ' => 'Tanzanya',
'UA' => 'Ukrayna',
'UG' => 'Uganda',
- 'UM' => 'ABD Uzak Adaları',
+ 'UM' => 'ABD Küçük Harici Adaları',
+ 'UN' => 'BM',
'US' => 'ABD',
'UY' => 'Uruguay',
'UZ' => 'Özbekistan',
@@ -1423,7 +1445,7 @@ $countryNames = array(
'VI' => 'ABD Virjin Adaları',
'VN' => 'Vietnam',
'VU' => 'Vanuatu',
- 'WF' => 'Wallis ve Futuna Adaları',
+ 'WF' => 'Wallis ve Futuna',
'WS' => 'Samoa',
'XK' => 'Kosova',
'YE' => 'Yemen',
@@ -1431,9 +1453,11 @@ $countryNames = array(
'ZA' => 'Güney Afrika',
'ZM' => 'Zambiya',
'ZW' => 'Zimbabve',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-one' => '{0} yüzyıl',
+ 'century-other' => '{0} yüzyıl',
'day-future-one' => '{0} gün sonra',
'day-future-other' => '{0} gün sonra',
'day-narrow-future-one' => '{0} gün sonra',
@@ -1448,6 +1472,18 @@ $timeUnits = array(
'day-short-future-other' => '{0} gün sonra',
'day-short-past-one' => '{0} gün önce',
'day-short-past-other' => '{0} gün önce',
+ 'fri-future-one' => '{0} cuma sonra',
+ 'fri-future-other' => '{0} cuma sonra',
+ 'fri-narrow-future-one' => '{0} cuma sonra',
+ 'fri-narrow-future-other' => '{0} cuma sonra',
+ 'fri-narrow-past-one' => '{0} cuma önce',
+ 'fri-narrow-past-other' => '{0} cuma önce',
+ 'fri-past-one' => '{0} cuma önce',
+ 'fri-past-other' => '{0} cuma önce',
+ 'fri-short-future-one' => '{0} cuma sonra',
+ 'fri-short-future-other' => '{0} cuma sonra',
+ 'fri-short-past-one' => '{0} cuma önce',
+ 'fri-short-past-other' => '{0} cuma önce',
'hour-future-one' => '{0} saat sonra',
'hour-future-other' => '{0} saat sonra',
'hour-narrow-future-one' => '{0} sa. sonra',
@@ -1480,6 +1516,18 @@ $timeUnits = array(
'minute-short-future-other' => '{0} dk. sonra',
'minute-short-past-one' => '{0} dk. önce',
'minute-short-past-other' => '{0} dk. önce',
+ 'mon-future-one' => '{0} pazartesi sonra',
+ 'mon-future-other' => '{0} pazartesi sonra',
+ 'mon-narrow-future-one' => '{0} pzt. sonra',
+ 'mon-narrow-future-other' => '{0} pzt. sonra',
+ 'mon-narrow-past-one' => '{0} pzt. önce',
+ 'mon-narrow-past-other' => '{0} pzt. önce',
+ 'mon-past-one' => '{0} pazartesi önce',
+ 'mon-past-other' => '{0} pazartesi önce',
+ 'mon-short-future-one' => '{0} pzt. sonra',
+ 'mon-short-future-other' => '{0} pzt. sonra',
+ 'mon-short-past-one' => '{0} pzt. önce',
+ 'mon-short-past-other' => '{0} pzt. önce',
'month-future-one' => '{0} ay sonra',
'month-future-other' => '{0} ay sonra',
'month-narrow-future-one' => '{0} ay sonra',
@@ -1508,6 +1556,18 @@ $timeUnits = array(
'quarter-short-future-other' => '{0} çyr. sonra',
'quarter-short-past-one' => '{0} çyr. önce',
'quarter-short-past-other' => '{0} çyr. önce',
+ 'sat-future-one' => '{0} cumartesi sonra',
+ 'sat-future-other' => '{0} cumartesi sonra',
+ 'sat-narrow-future-one' => '{0} cmt. sonra',
+ 'sat-narrow-future-other' => '{0} cmt. sonra',
+ 'sat-narrow-past-one' => '{0} cmt. önce',
+ 'sat-narrow-past-other' => '{0} cmt. önce',
+ 'sat-past-one' => '{0} cumartesi önce',
+ 'sat-past-other' => '{0} cumartesi önce',
+ 'sat-short-future-one' => '{0} cmt. sonra',
+ 'sat-short-future-other' => '{0} cmt. sonra',
+ 'sat-short-past-one' => '{0} cmt. önce',
+ 'sat-short-past-other' => '{0} cmt. önce',
'second-future-one' => '{0} saniye sonra',
'second-future-other' => '{0} saniye sonra',
'second-narrow-future-one' => '{0} sn. sonra',
@@ -1522,6 +1582,54 @@ $timeUnits = array(
'second-short-future-other' => '{0} sn. sonra',
'second-short-past-one' => '{0} sn. önce',
'second-short-past-other' => '{0} sn. önce',
+ 'sun-future-one' => '{0} pazar sonra',
+ 'sun-future-other' => '{0} pazar sonra',
+ 'sun-narrow-future-one' => '{0} paz. sonra',
+ 'sun-narrow-future-other' => '{0} paz. sonra',
+ 'sun-narrow-past-one' => '{0} paz. önce',
+ 'sun-narrow-past-other' => '{0} paz. önce',
+ 'sun-past-one' => '{0} pazar önce',
+ 'sun-past-other' => '{0} pazar önce',
+ 'sun-short-future-one' => '{0} paz. sonra',
+ 'sun-short-future-other' => '{0} paz. sonra',
+ 'sun-short-past-one' => '{0} paz. önce',
+ 'sun-short-past-other' => '{0} paz. önce',
+ 'thu-future-one' => '{0} perşembe sonra',
+ 'thu-future-other' => '{0} perşembe sonra',
+ 'thu-narrow-future-one' => '{0} per. sonra',
+ 'thu-narrow-future-other' => '{0} per. sonra',
+ 'thu-narrow-past-one' => '{0} per. önce',
+ 'thu-narrow-past-other' => '{0} per. önce',
+ 'thu-past-one' => '{0} perşembe önce',
+ 'thu-past-other' => '{0} perşembe önce',
+ 'thu-short-future-one' => '{0} per. sonra',
+ 'thu-short-future-other' => '{0} per. sonra',
+ 'thu-short-past-one' => '{0} per. önce',
+ 'thu-short-past-other' => '{0} per. önce',
+ 'tue-future-one' => '{0} salı sonra',
+ 'tue-future-other' => '{0} salı sonra',
+ 'tue-narrow-future-one' => '{0} salı sonra',
+ 'tue-narrow-future-other' => '{0} salı sonra',
+ 'tue-narrow-past-one' => '{0} salı önce',
+ 'tue-narrow-past-other' => '{0} salı önce',
+ 'tue-past-one' => '{0} salı önce',
+ 'tue-past-other' => '{0} salı önce',
+ 'tue-short-future-one' => '{0} salı sonra',
+ 'tue-short-future-other' => '{0} salı sonra',
+ 'tue-short-past-one' => '{0} salı önce',
+ 'tue-short-past-other' => '{0} salı önce',
+ 'wed-future-one' => '{0} çarşamba sonra',
+ 'wed-future-other' => '{0} çarşamba sonra',
+ 'wed-narrow-future-one' => '{0} çar. sonra',
+ 'wed-narrow-future-other' => '{0} çar. sonra',
+ 'wed-narrow-past-one' => '{0} çar. önce',
+ 'wed-narrow-past-other' => '{0} çar. önce',
+ 'wed-past-one' => '{0} çarşamba önce',
+ 'wed-past-other' => '{0} çarşamba önce',
+ 'wed-short-future-one' => '{0} çar. sonra',
+ 'wed-short-future-other' => '{0} çar. sonra',
+ 'wed-short-past-one' => '{0} çar. önce',
+ 'wed-short-past-other' => '{0} çar. önce',
'week-future-one' => '{0} hafta sonra',
'week-future-other' => '{0} hafta sonra',
'week-narrow-future-one' => '{0} hf. sonra',
@@ -1550,4 +1658,4 @@ $timeUnits = array(
'year-short-future-other' => '{0} yıl sonra',
'year-short-past-one' => '{0} yıl önce',
'year-short-past-other' => '{0} yıl önce',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesTs.php b/MLEB/cldr/CldrNames/CldrNamesTs.php
deleted file mode 100644
index 297efdef..00000000
--- a/MLEB/cldr/CldrNames/CldrNamesTs.php
+++ /dev/null
@@ -1,29 +0,0 @@
-<?php
-
-$languageNames = array(
- 'cs' => 'Xi Czech',
- 'da' => 'Xi Danish',
- 'de' => 'Xi Jarimani',
- 'el' => 'Xi Giriki',
- 'en' => 'Xi Nghezi',
- 'es' => 'Xi spain',
- 'et' => 'hi xi Estonia',
- 'fi' => 'Xi Finnish',
- 'fr' => 'Xi Furwa',
- 'he' => 'XiHeberu',
- 'hu' => 'hi xi Hungary',
- 'is' => 'hi xi Iceland',
- 'it' => 'Xi Ithali',
- 'ja' => 'Xi Japani',
- 'ko' => 'Xikorea',
- 'lt' => 'hi xi Lithuania',
- 'lv' => 'hi xi Latvia',
- 'nl' => 'Xi bunu',
- 'no' => 'Xi Norway',
- 'pl' => 'Xi Polixi',
- 'pt' => 'Putukezi',
- 'ro' => 'hi xi Romania',
- 'ru' => 'Xi Rhaxiya',
- 'sv' => 'Xi Swiden',
- 'ts' => 'Xitsonga',
-);
diff --git a/MLEB/cldr/CldrNames/CldrNamesTzm.php b/MLEB/cldr/CldrNames/CldrNamesTzm.php
index 3bdf544c..d412ad89 100644
--- a/MLEB/cldr/CldrNames/CldrNamesTzm.php
+++ b/MLEB/cldr/CldrNames/CldrNamesTzm.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'ak' => 'Takanit',
'am' => 'Tamharit',
'ar' => 'Taεrabt',
@@ -39,16 +39,16 @@ $languageNames = array(
'ta' => 'Tatamilt',
'th' => 'Taṭayt',
'tr' => 'Taturkit',
- 'tzm' => 'Tamaziɣt',
+ 'tzm' => 'Tamaziɣt n laṭlaṣ',
'uk' => 'Tukranit',
'ur' => 'Turdut',
'vi' => 'Taviṭnamit',
'yo' => 'Tayurubat',
'zh' => 'Tacinwit,Mandarin',
'zu' => 'tazulut',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'AED' => 'Derhem Uymarati',
'AOA' => 'Kwanza Unguli',
'AUD' => 'Ḍular Usṭrali',
@@ -79,7 +79,8 @@ $currencyNames = array(
'LYD' => 'Ḍinar Ulibi',
'MAD' => 'Derhem Umeṛṛuki',
'MGA' => 'Aryari Umalɣaci',
- 'MRO' => 'Uqiyya Umuritani',
+ 'MRO' => 'Uqiyya Umuritani (1973–2017)',
+ 'MRU' => 'Uqiyya Umuritani',
'MUR' => 'Rupi Umurisi',
'MWK' => 'Kwača Umalawi',
'MZM' => 'Mitikal Umuzambiqi',
@@ -93,7 +94,8 @@ $currencyNames = array(
'SHP' => 'Junih Usantehilini',
'SLL' => 'Lyun Usirralyuni',
'SOS' => 'Cilin Uṣumali',
- 'STD' => 'Dubra Usawṭumi',
+ 'STD' => 'Dubra Usawṭumi (1977–2017)',
+ 'STN' => 'Dubra Usawṭumi',
'SZL' => 'Lilanjini Uswazi',
'TND' => 'Ḍinar Utunsi',
'TZS' => 'Cilin Uṭanzani',
@@ -105,9 +107,9 @@ $currencyNames = array(
'ZMK' => 'Kwača Uzambi (1968–2012)',
'ZMW' => 'Kwača Uzambi',
'ZWD' => 'Ḍular Uzimbabwi',
-);
+];
-$countryNames = array(
+$countryNames = [
'AD' => 'Anḍurra',
'AE' => 'Imarat Tiεrabin Tidduklin',
'AF' => 'Afɣanistan',
@@ -115,7 +117,6 @@ $countryNames = array(
'AI' => 'Angwilla',
'AL' => 'Albanya',
'AM' => 'Arminya',
- 'AN' => 'Antil Tihulanḍiyyin',
'AO' => 'Angula',
'AR' => 'Arjuntin',
'AS' => 'Samwa Imirikaniyyin',
@@ -333,4 +334,4 @@ $countryNames = array(
'ZA' => 'Tafrikt Tunẓul',
'ZM' => 'Zambya',
'ZW' => 'Zimbabwi',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesUg.php b/MLEB/cldr/CldrNames/CldrNamesUg.php
index 17144d3c..d36ea530 100644
--- a/MLEB/cldr/CldrNames/CldrNamesUg.php
+++ b/MLEB/cldr/CldrNames/CldrNamesUg.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'ئافارچە',
'ab' => 'ئابخازچە',
'ace' => 'ئاتجېچە',
@@ -16,23 +16,23 @@ $languageNames = array(
'akk' => 'ئاككادچە',
'ale' => 'ئالېيۇتچە',
'alt' => 'جەنۇبى ئالتاي تىللىرى',
- 'am' => 'ئامخاراچە',
+ 'am' => 'ئامھارچە',
'an' => 'ئاراگونچە',
'ang' => 'قەدىمكى ئىنگلىزچە',
'anp' => 'ئانگىكاچە',
'ar' => 'ئەرەبچە',
'ar-001' => 'ھازىرقى زامان ئۆلچەملىك ئەرەبچە',
'arc' => 'ئارامۇچە',
- 'arn' => 'ماپۇچە',
+ 'arn' => 'ماپۇدۇنگۇنچە',
'arp' => 'ئاراپاخوچە',
'arw' => 'ئاراۋاكچە',
- 'as' => 'ئاسسامچە',
+ 'as' => 'ئاسامچە',
'asa' => 'ئاسۇچە',
'ast' => 'ئاستۇرىيەچە',
'av' => 'ئاۋارچە',
'awa' => 'ئاۋادىچە',
'ay' => 'ئايماراچە',
- 'az' => 'ئەزەرىچە',
+ 'az' => 'ئەزەربەيجانچە',
'ba' => 'باشقىرتچە',
'bal' => 'بېلۇجىچە',
'ban' => 'بالىچە',
@@ -57,7 +57,7 @@ $languageNames = array(
'br' => 'بىرېتونچە',
'bra' => 'بىراجچە',
'brx' => 'بودوچە',
- 'bs' => 'بوسنىيەچە',
+ 'bs' => 'بوسىنچە',
'bss' => 'ئاكۇسچە',
'bua' => 'بۇرىياتچە',
'bug' => 'بۇگىچە',
@@ -82,8 +82,8 @@ $languageNames = array(
'chp' => 'چىپېۋيانچە',
'chr' => 'چېروكىچە',
'chy' => 'چېيېنچە',
- 'ckb' => 'سورانى كۇردچە',
- 'co' => 'كورساچە',
+ 'ckb' => 'مەركىزىي كۇردچە',
+ 'co' => 'كورسۇچە',
'cop' => 'كوپتىكچە',
'cr' => 'كرىچە',
'crh' => 'قىرىم تۈركچە',
@@ -105,13 +105,13 @@ $languageNames = array(
'din' => 'دىنكاچە',
'dje' => 'زارماچە',
'doi' => 'دوگرىچە',
- 'dsb' => 'توۋەن سېربچە',
+ 'dsb' => 'تۆۋەن سوربچە',
'dua' => 'دۇئالاچە',
'dum' => 'ئوتتۇرا گوللاندىيەچە',
- 'dv' => 'دىۋەخىچە',
+ 'dv' => 'دىۋېخچە',
'dyo' => 'جولاچە',
'dyu' => 'دىيۇلاچە',
- 'dz' => 'بۇتانچە',
+ 'dz' => 'زوڭخاچە',
'dzg' => 'دازاگاچە',
'ebu' => 'ئېمبۇچە',
'ee' => 'ئېۋېچە',
@@ -126,7 +126,7 @@ $languageNames = array(
'en-gb' => 'ئەنگلىيە ئىنگلىزچە',
'en-us' => 'ئامېرىكا ئىنگلىزچە',
'enm' => 'ئوتتۇرا ئەسىر ئىنگلىزچە',
- 'eo' => 'دۇنيا تىلى',
+ 'eo' => 'ئېسپرانتوچە',
'es' => 'ئىسپانچە',
'es-419' => 'لاتىن ئامېرىكا ئىسپانچە',
'es-es' => 'ياۋروپا ئىسپانچە',
@@ -137,7 +137,7 @@ $languageNames = array(
'fa' => 'پارسچە',
'fan' => 'فاڭچە',
'fat' => 'فانتىچە',
- 'ff' => 'فۇلاچە',
+ 'ff' => 'فۇلاھچە',
'fi' => 'فىنچە',
'fil' => 'فىلىپپىنچە',
'fj' => 'فىجىچە',
@@ -151,15 +151,15 @@ $languageNames = array(
'frr' => 'شىمالى فىرىزيەچە',
'frs' => 'شەرقى فىرىزيەچە',
'fur' => 'فىرىئۇلىچە',
- 'fy' => 'غەربى فىرىزيەچە',
+ 'fy' => 'غەربىي فىرسچە',
'ga' => 'ئىرېلاندچە',
'gaa' => 'گاچە',
'gay' => 'گايوچە',
'gba' => 'گىباياچە',
- 'gd' => 'سكوتچە',
+ 'gd' => 'شوتلاندىيە گايلچىسى',
'gez' => 'گىزچە',
'gil' => 'گىلبېرتچە',
- 'gl' => 'گالىتسىيانچە',
+ 'gl' => 'گالىچە',
'gmh' => 'ئوتتۇرا ئەسىر ئېگىزلىك گېرمانچە',
'gn' => 'گۇئارانىچە',
'goh' => 'قەدىمكى ئېگىزلىك گېرمانچە',
@@ -176,32 +176,32 @@ $languageNames = array(
'ha' => 'خائۇساچە',
'hai' => 'ھەيدەچە',
'haw' => 'ھاۋايچە',
- 'he' => 'ئىبرانىچە',
+ 'he' => 'ئىبرانىيچە',
'hi' => 'ھىندىچە',
'hil' => 'خىلىگاينونچە',
'hit' => 'خىتتىتچە',
'hmn' => 'مۆڭچە',
'ho' => 'ھىرى موتۇچە',
- 'hr' => 'خورۋاتچە',
- 'hsb' => 'يۇقىرىقى سېربچە',
+ 'hr' => 'كىرودىچە',
+ 'hsb' => 'ئۈستۈن سوربچە',
'ht' => 'ھايتىچە',
- 'hu' => 'ماجارچە',
+ 'hu' => 'ۋېنگىرچە',
'hup' => 'خۇپاچە',
- 'hy' => 'ئەرمەنچە',
+ 'hy' => 'ئەرمېنچە',
'hz' => 'خېرېروچە',
'ia' => 'ئارىلىق تىل',
'iba' => 'ئىبانچە',
'ibb' => 'ئىبىبىئوچە',
- 'id' => 'ھىندونېزىيەچە',
+ 'id' => 'ھىندونېزچە',
'ie' => 'ئىنتىرلىڭچە',
- 'ig' => 'ئىبوچە',
+ 'ig' => 'ئىگبوچە',
'ii' => 'يىچە (سىچۈەن)',
'ik' => 'ئىنۇپىكچە',
'ilo' => 'ئىلوكانوچە',
'inh' => 'ئىنگۇشچە',
'io' => 'ئىدوچە',
'is' => 'ئىسلاندچە',
- 'it' => 'ئىتاليانچە',
+ 'it' => 'ئىتالىيانچە',
'iu' => 'ئىنۇكتىتۇتچە',
'ja' => 'ياپونچە',
'jbo' => 'لوجبانچە',
@@ -210,7 +210,7 @@ $languageNames = array(
'jpr' => 'ئىبرانى پارسچە',
'jrb' => 'ئىبرانى ئەرەبچە',
'jv' => 'ياۋاچە',
- 'ka' => 'گىرۇزىنچە',
+ 'ka' => 'گىرۇزچە',
'kaa' => 'قارا-قالپاقچە',
'kab' => 'كابىلېچە',
'kac' => 'كاچىنچە',
@@ -233,17 +233,17 @@ $languageNames = array(
'kkj' => 'كاكوچە',
'kl' => 'گىرېنلاندچە',
'kln' => 'كالېنجىنچە',
- 'km' => 'كىخمېرچە',
+ 'km' => 'كىمېرچە',
'kmb' => 'كىمبۇندۇچە',
'kn' => 'كانناداچە',
'ko' => 'كورېيەچە',
- 'kok' => 'كونكانىچە',
+ 'kok' => 'كونكانچە',
'kos' => 'كوسرايېچە',
'kpe' => 'كىپەللېچە',
- 'kr' => 'كانۇرىچە',
+ 'kr' => 'كانۇرچە',
'krc' => 'قاراچاي-بالقارچە',
'krl' => 'كارەلچە',
- 'kru' => 'كۇرۇكچە',
+ 'kru' => 'كۇرۇخچە',
'ks' => 'كەشمىرچە',
'ksb' => 'شامبالاچە',
'ksf' => 'بافىياچە',
@@ -267,7 +267,7 @@ $languageNames = array(
'lo' => 'لائوسچە',
'lol' => 'مونگوچە',
'loz' => 'لوزىچە',
- 'lt' => 'لىتۋاچە',
+ 'lt' => 'لىتۋانىچە',
'lu' => 'لۇبا-كاتانگاچە',
'lua' => 'لۇبا-لۇئاچە',
'lui' => 'لۇيسېنگوچە',
@@ -275,7 +275,7 @@ $languageNames = array(
'luo' => 'لۇئوچە',
'lus' => 'مىزوچە',
'luy' => 'لۇياچە',
- 'lv' => 'لاتۋىيەچە',
+ 'lv' => 'لاتچە',
'mad' => 'مادۇرېسچە',
'maf' => 'مافاچە',
'mag' => 'ماگاخىچە',
@@ -289,7 +289,7 @@ $languageNames = array(
'men' => 'مېندېچە',
'mer' => 'مېرۇچە',
'mfe' => 'مورىسيېنچە',
- 'mg' => 'ماداغاسقارچە',
+ 'mg' => 'مالاگاسچە',
'mga' => 'ئوتتۇرا ئەسىر ئىرېلاندچە',
'mgh' => 'ماكۇۋاچە',
'mgo' => 'مېتاچە’',
@@ -298,13 +298,13 @@ $languageNames = array(
'mic' => 'مىكماكچە',
'min' => 'مىناڭكابائۇچە',
'mk' => 'ماكېدونچە',
- 'ml' => 'مالايامچە',
+ 'ml' => 'مالايالامچە',
'mn' => 'موڭغۇلچە',
'mnc' => 'مانجۇچە',
- 'mni' => 'مانىپۇرىچە',
- 'moh' => 'موخوكچە',
+ 'mni' => 'مانىپۇرچە',
+ 'moh' => 'موخاۋكچە',
'mos' => 'موسسىچە',
- 'mr' => 'ماراتچە',
+ 'mr' => 'ماراتىچە',
'ms' => 'مالايچە',
'mt' => 'مالتاچە',
'mua' => 'مۇنداڭچە',
@@ -326,7 +326,7 @@ $languageNames = array(
'ng' => 'ندونگاچە',
'nia' => 'نىئاسچە',
'niu' => 'نيۇئېچە',
- 'nl' => 'گوللاندىيەچە',
+ 'nl' => 'گوللاندچە',
'nmg' => 'كۋاسىيوچە',
'nn' => 'يېڭى نورۋېگچە',
'nnh' => 'نگېمبۇنچە',
@@ -335,19 +335,19 @@ $languageNames = array(
'non' => 'قەدىمكى نورۋېگچە',
'nqo' => 'نىكوچە',
'nr' => 'جەنۇبى ندەبەلەچە',
- 'nso' => 'شىمالى سوتوچە',
+ 'nso' => 'شىمالىي سوتوچە',
'nus' => 'مۇئېرچە',
'nv' => 'ناۋاخوچە',
'nwc' => 'نېۋارچە',
- 'ny' => 'نيانجاچە',
+ 'ny' => 'نىيانجاچە',
'nym' => 'نيامۋېزىچە',
'nyn' => 'نىيانكولېچە',
'nyo' => 'نىئوروچە',
'nzi' => 'نىزەماچە',
- 'oc' => 'ئوكسىتانچە',
+ 'oc' => 'ئوكسىتچە',
'oj' => 'ئوجىبۋاچە',
'om' => 'ئوروموچە',
- 'or' => 'ئورىياچە',
+ 'or' => 'ئودىياچە',
'os' => 'ئوسسېتچەچە',
'osa' => 'ئوساگېلارچە',
'ota' => 'ئوسمان تۈركچە',
@@ -355,7 +355,7 @@ $languageNames = array(
'pag' => 'پانگاسىنانچە',
'pal' => 'پەھلەۋىچە',
'pam' => 'پامپانگاچە',
- 'pap' => 'پاپىيامەنتۇچە',
+ 'pap' => 'پاپىيامېنتوچە',
'pau' => 'پالاۋچە',
'peo' => 'قەدىمكى پارىسچە',
'phn' => 'فىنىكىيەچە',
@@ -367,32 +367,32 @@ $languageNames = array(
'pt' => 'پورتۇگالچە',
'pt-br' => 'بىرازىلىيە پورتۇگالچە',
'pt-pt' => 'ياۋروپا پورتۇگالچە',
- 'qu' => 'كېچياچە',
+ 'qu' => 'كېچىۋاچە',
'raj' => 'راجاستانچە',
'rap' => 'راپانىيچە',
- 'rm' => 'رومانىشچە',
+ 'rm' => 'رومانسچە',
'rn' => 'رۇندىچە',
- 'ro' => 'رۇمىنىيەچە',
+ 'ro' => 'رومىنچە',
'rof' => 'رومبوچە',
'rom' => 'سىگانچە',
'ru' => 'رۇسچە',
'rup' => 'ئارومانچە',
- 'rw' => 'رىۋانداچە',
+ 'rw' => 'كېنىيەرىۋانداچە',
'rwk' => 'رىۋاچە',
'sa' => 'سانسكرىتچە',
'sad' => 'سانداۋېچە',
- 'sah' => 'ياقۇتچە',
+ 'sah' => 'ساخاچە',
'sam' => 'سامارىتانچە',
'saq' => 'سامبۇرۇچە',
'sas' => 'ساساكچە',
- 'sat' => 'سانتالىچە',
+ 'sat' => 'سانتالچە',
'sba' => 'نگامبايچە',
'sbp' => 'سانگۇچە',
'sc' => 'ساردىنىيەچە',
'scn' => 'سىتسىلىيەچە',
'sco' => 'شوتلاندىيەچە',
'sd' => 'سىندىچە',
- 'se' => 'شىمالى سامىچە',
+ 'se' => 'شىمالىي سامىچە',
'see' => 'سېكنېكاچە',
'seh' => 'سېناچە',
'sel' => 'سېلكاپچە',
@@ -406,12 +406,12 @@ $languageNames = array(
'si' => 'سىنگالچە',
'sid' => 'سىداموچە',
'sk' => 'سىلوۋاكچە',
- 'sl' => 'سىلوۋېنىيەچە',
+ 'sl' => 'سىلوۋېنچە',
'sm' => 'ساموئاچە',
- 'sma' => 'جەنۇبى سامى تىللىرى',
+ 'sma' => 'جەنۇبىي سامىچە',
'smj' => 'لۇلې سامىچە',
'smn' => 'ئىنارى سامىچە',
- 'sms' => 'سىكولت سامىچە',
+ 'sms' => 'سكولت سامىچە',
'sn' => 'شوناچە',
'snk' => 'سونىنكەچە',
'so' => 'سومالىچە',
@@ -422,17 +422,17 @@ $languageNames = array(
'srr' => 'سېرېرچە',
'ss' => 'سىۋاتىچە',
'ssy' => 'ساخوچە',
- 'st' => 'جەنۇبى سوتوچە',
+ 'st' => 'سوتوچە',
'su' => 'سۇنداچە',
'suk' => 'سۇكۇماچە',
'sus' => 'سۇسۇچە',
'sux' => 'سۈمەرچە',
- 'sv' => 'شۋېدچە',
- 'sw' => 'سىۋالىچە',
+ 'sv' => 'شىۋېدچە',
+ 'sw' => 'سىۋاھىلچە',
+ 'sw-cd' => 'كونگو سىۋالىچە',
'swb' => 'كومورىچە',
- 'swc' => 'كونگو سىۋالىچە',
- 'syc' => 'كلاسسىك سۈرىيەچە',
- 'syr' => 'سۈرىيەچە',
+ 'syc' => 'قەدىمىي سۇرىيەچە',
+ 'syr' => 'سۇرىيەچە',
'ta' => 'تامىلچە',
'te' => 'تېلۇگۇچە',
'tem' => 'تېمنېچە',
@@ -451,7 +451,7 @@ $languageNames = array(
'tli' => 'تىلىنگىتچە',
'tmh' => 'تاماشېكچە',
'tn' => 'سىۋاناچە',
- 'to' => 'توڭانچە',
+ 'to' => 'تونگانچە',
'tog' => 'نياسا توڭانچە',
'tpi' => 'توك-پىسىنچە',
'tr' => 'تۈركچە',
@@ -465,14 +465,14 @@ $languageNames = array(
'twq' => 'شىمالىي سوڭخايچە',
'ty' => 'تاختىچە',
'tyv' => 'توۋاچە',
- 'tzm' => 'مەركىزى ئاتلاس تاماچاگىت',
+ 'tzm' => 'مەركىزىي ئاتلاس تامازايتچە',
'udm' => 'ئۇدمۇرتچە',
'ug' => 'ئۇيغۇرچە',
'uga' => 'ئۇگارىتىكچە',
'uk' => 'ئۇكرائىنچە',
'umb' => 'ئۇمبۇندۇچە',
'und' => 'يوچۇن تىل',
- 'ur' => 'ئوردوچە',
+ 'ur' => 'ئوردۇچە',
'uz' => 'ئۆزبېكچە',
'vai' => 'ۋايچە',
've' => 'ۋېنداچە',
@@ -501,16 +501,16 @@ $languageNames = array(
'zbl' => 'بىلىس بەلگىلىرى',
'zen' => 'زېناگاچە',
'zgh' => 'ئۆلچەملىك ماراكەش تامازىتچە',
- 'zh' => 'خەنچە',
+ 'zh' => 'خەنزۇچە',
'zh-hans' => 'ئاددىي خەنچە',
'zh-hant' => 'مۇرەككەپ خەنچە',
'zu' => 'زۇلۇچە',
'zun' => 'زۇنىچە',
'zxx' => 'تىل مەزمۇنى يوق',
'zza' => 'زازاچە',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'ADP' => 'ئاندورران پېسېتاسى',
'AED' => 'ئەرەب بىرلەشمە خەلىپىلىكى دەرھەمى',
'AFA' => 'ئافغان ئافغانى (1927–2002)',
@@ -565,7 +565,8 @@ $currencyNames = array(
'BUK' => 'بىرما كىياتى',
'BWP' => 'بوتسۋانا پۇلاسى',
'BYB' => 'بېلارۇسىيە يېڭى رۇبلىسى (1994–1999)',
- 'BYR' => 'بېلارۇسىيە رۇبلىسى',
+ 'BYN' => 'بېلارۇسىيە رۇبلىسى',
+ 'BYR' => 'بېلارۇسىيە رۇبلىسى (۲۰۰۰–۲۰۱۶)',
'BZD' => 'بېلىز دوللىرى',
'CAD' => 'كانادا دوللىرى',
'CDF' => 'كونگو فرانكى',
@@ -679,7 +680,8 @@ $currencyNames = array(
'MMK' => 'مىيانمار كىياتى',
'MNT' => 'موڭغۇلىيە تۈگرىكى',
'MOP' => 'ئاۋمېن پاتاكاسى',
- 'MRO' => 'ماۋرىتانىيە ئۇگىيەسى',
+ 'MRO' => 'ماۋرىتانىيە ئۇگىيەسى (1973–2017)',
+ 'MRU' => 'ماۋرىتانىيە ئۇگىيەسى',
'MTL' => 'مالتا لىراسى',
'MTP' => 'مالتا فوندستېرلىڭى',
'MUR' => 'ماۋرىتىئۇس رۇپىسى',
@@ -704,7 +706,7 @@ $currencyNames = array(
'OMR' => 'ئومان رىيالى',
'PAB' => 'پاناما بالبوئاسى',
'PEI' => 'پېرۇ ئىنتىسى',
- 'PEN' => 'پېرۇ يېڭى سولى',
+ 'PEN' => 'پېرۇ سولى',
'PES' => 'پېرۇ سولى (1863–1965)',
'PGK' => 'پاپۇئا يېڭى گىۋىنېيە كىناسى',
'PHP' => 'فىلىپپىن پېسوسى',
@@ -737,7 +739,8 @@ $currencyNames = array(
'SRD' => 'سۇرىنام دوللىرى',
'SRG' => 'سۇرىنام گۈلدىنى',
'SSP' => 'جەنۇبىي سۇدان فوندستېرلىڭى',
- 'STD' => 'سان-تومې ۋە پىرىنسىپى دوبراسى',
+ 'STD' => 'سان-تومې ۋە پىرىنسىپى دوبراسى (1977–2017)',
+ 'STN' => 'سان-تومې ۋە پىرىنسىپى دوبراسى',
'SUR' => 'سوۋىت رۇبلىسى',
'SVC' => 'سالۋادور كولونى',
'SYP' => 'سۈرىيە فوندستېرلىڭى',
@@ -767,7 +770,8 @@ $currencyNames = array(
'UYU' => 'ئۇرۇگۋاي پېسوسى',
'UZS' => 'ئۆزبېكىستان سومى',
'VEB' => 'ۋېنېزۇئېلا بولىۋارى (1871–2008)',
- 'VEF' => 'ۋېنېزۇئېلا بولىۋارى',
+ 'VEF' => 'ۋېنېزۇئېلا بولىۋارى (2008–2018)',
+ 'VES' => 'ۋېنېزۇئېلا بولىۋارى',
'VND' => 'ۋىيېتنام دوڭى',
'VNN' => 'ۋىيېتنام دوڭى (1978–1985)',
'VUV' => 'ۋانۇئاتۇ ۋاتۇسى',
@@ -808,41 +812,41 @@ $currencyNames = array(
'ZWD' => 'زىمبابۋې دوللىرى (1980–2008)',
'ZWL' => 'زىمبابۋې دوللىرى (2009)',
'ZWR' => 'زىمبابۋې دوللىرى (2008)',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'CNY' => '¥',
'USD' => '$',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'ئاسسېنسىيون ئارىلى',
'AD' => 'ئاندوررا',
'AE' => 'ئەرەب بىرلەشمە خەلىپىلىكى',
'AF' => 'ئافغانىستان',
- 'AG' => 'ئانتىگۋا ۋە باربۇدا',
+ 'AG' => 'ئانتىگۇئا ۋە باربۇدا',
'AI' => 'ئانگۋىللا',
'AL' => 'ئالبانىيە',
'AM' => 'ئەرمېنىيە',
'AO' => 'ئانگولا',
'AQ' => 'ئانتاركتىكا',
'AR' => 'ئارگېنتىنا',
- 'AS' => 'ئامېرىكا تەۋەلىكىدىكى ساموئا',
- 'AT' => 'ئاۋسترىيە',
+ 'AS' => 'ئامېرىكا ساموئا',
+ 'AT' => 'ئاۋىستىرىيە',
'AU' => 'ئاۋسترالىيە',
'AW' => 'ئارۇبا',
'AX' => 'ئالاند ئاراللىرى',
'AZ' => 'ئەزەربەيجان',
- 'BA' => 'بوسنىيە-گېرتسېگوۋىنا',
+ 'BA' => 'بوسىنىيە ۋە گېرتسېگوۋىنا',
'BB' => 'باربادوس',
- 'BD' => 'باڭلادىش',
+ 'BD' => 'بېنگال',
'BE' => 'بېلگىيە',
- 'BF' => 'بۇركىنا-فاسو',
+ 'BF' => 'بۇركىنا فاسو',
'BG' => 'بۇلغارىيە',
'BH' => 'بەھرەين',
'BI' => 'بۇرۇندى',
'BJ' => 'بېنىن',
- 'BL' => 'ساينىت-بارتھېلەمي ئاراللىرى',
+ 'BL' => 'ساينت بارتېلېمى',
'BM' => 'بېرمۇدا',
'BN' => 'بىرۇنېي',
'BO' => 'بولىۋىيە',
@@ -850,16 +854,16 @@ $countryNames = array(
'BR' => 'بىرازىلىيە',
'BS' => 'باھاما',
'BT' => 'بۇتان',
- 'BV' => 'بۇۋېت ئاراللىرى',
+ 'BV' => 'بوۋېت ئارىلى',
'BW' => 'بوتسۋانا',
'BY' => 'بېلارۇسىيە',
'BZ' => 'بېلىز',
'CA' => 'كانادا',
- 'CC' => 'كەئەلىڭ كوكۇس ئاراللىرى',
+ 'CC' => 'كوكوس (كىلىڭ) ئاراللىرى',
'CD' => 'كونگو - كىنشاسا',
'CF' => 'ئوتتۇرا ئافرىقا جۇمھۇرىيىتى',
'CG' => 'كونگو - بىراززاۋىل',
- 'CH' => 'شىۋىتسارىيە',
+ 'CH' => 'شىۋېتسارىيە',
'CI' => 'كوتې دې ئىۋوئىر',
'CK' => 'كۇك ئاراللىرى',
'CL' => 'چىلى',
@@ -870,8 +874,8 @@ $countryNames = array(
'CR' => 'كوستارىكا',
'CU' => 'كۇبا',
'CV' => 'يېشىل تۇمشۇق',
- 'CW' => 'كۇراسو',
- 'CX' => 'روژدېستۋو ئارىلى',
+ 'CW' => 'كۇراچاۋ',
+ 'CX' => 'مىلاد ئارىلى',
'CY' => 'سىپرۇس',
'CZ' => 'چېخ جۇمھۇرىيىتى',
'DE' => 'گېرمانىيە',
@@ -882,11 +886,11 @@ $countryNames = array(
'DO' => 'دومىنىكا جۇمھۇرىيىتى',
'DZ' => 'ئالجىرىيە',
'EA' => 'سېيتا ۋە مېلىلا',
- 'EC' => 'ئېكۋادور',
+ 'EC' => 'ئېكۋاتور',
'EE' => 'ئېستونىيە',
'EG' => 'مىسىر',
'EH' => 'غەربىي ساخارا',
- 'ER' => 'ئېرىترېيە',
+ 'ER' => 'ئېرىترىيە',
'ES' => 'ئىسپانىيە',
'ET' => 'ئېفىيوپىيە',
'EU' => 'ياۋروپا ئىتتىپاقى',
@@ -894,29 +898,29 @@ $countryNames = array(
'FJ' => 'فىجى',
'FK' => 'فالكلاند ئاراللىرى',
'FM' => 'مىكرونېزىيە',
- 'FO' => 'فائېرو ئاراللىرى',
+ 'FO' => 'فارو ئاراللىرى',
'FR' => 'فىرانسىيە',
'GA' => 'گابون',
'GB' => 'ئەنگلىيە',
'GD' => 'گىرېنادا',
- 'GE' => 'گىروزىيە',
+ 'GE' => 'گىرۇزىيە',
'GF' => 'فىرانسىيەگە قاراشلىق گىۋىيانا',
- 'GG' => 'گېرىنسى',
+ 'GG' => 'گۇرنسېي',
'GH' => 'گانا',
'GI' => 'جەبىلتارىق',
- 'GL' => 'گىرېنلاند',
+ 'GL' => 'گىرېنلاندىيە',
'GM' => 'گامبىيە',
- 'GN' => 'گىۋىنېيە',
+ 'GN' => 'گىۋىنىيە',
'GP' => 'گىۋادېلۇپ',
- 'GQ' => 'ئېكۋاتور گىۋىنېيەسى',
+ 'GQ' => 'ئېكۋاتور گىۋىنىيەسى',
'GR' => 'گىرېتسىيە',
- 'GS' => 'جەنۇبىي جورجىيە ۋە جەنۇبىي ساندىۋىچ ئاراللىرى',
+ 'GS' => 'جەنۇبىي جورجىيە ۋە جەنۇبىي ساندۋىچ ئاراللىرى',
'GT' => 'گىۋاتېمالا',
'GU' => 'گۇئام',
- 'GW' => 'گىۋىنېيە-بىسسائۇ',
+ 'GW' => 'گىۋىنىيە بىسسائۇ',
'GY' => 'گىۋىيانا',
'HK' => 'شياڭگاڭ',
- 'HM' => 'خېرد ۋە ماك-دونالد ئارىلى',
+ 'HM' => 'ھېرد ئارىلى ۋە ماكدونالد ئاراللىرى',
'HN' => 'ھوندۇراس',
'HR' => 'كىرودىيە',
'HT' => 'ھايتى',
@@ -925,9 +929,9 @@ $countryNames = array(
'ID' => 'ھىندونېزىيە',
'IE' => 'ئىرېلاندىيە',
'IL' => 'ئىسرائىلىيە',
- 'IM' => 'مېن ئارىلى',
+ 'IM' => 'مان ئارىلى',
'IN' => 'ھىندىستان',
- 'IO' => 'ئەنگلىيەنىڭ ھىندى ئوكياندىكى تەۋەلىكى',
+ 'IO' => 'ئەنگلىيەگە قاراشلىق ھىندى ئوكيان تېررىتورىيەسى',
'IQ' => 'ئىراق',
'IR' => 'ئىران',
'IS' => 'ئىسلاندىيە',
@@ -941,16 +945,16 @@ $countryNames = array(
'KH' => 'كامبودژا',
'KI' => 'كىرىباتى',
'KM' => 'كومورو',
- 'KN' => 'ساينىت-كىرىستوفېر ۋە نېۋىس',
- 'KP' => 'شىمالىي كورىيە',
- 'KR' => 'جەنۇبىي كورىيە',
+ 'KN' => 'ساينت كىتىس ۋە نېۋىس',
+ 'KP' => 'چاۋشيەن',
+ 'KR' => 'كورېيە',
'KW' => 'كۇۋەيت',
'KY' => 'كايمان ئاراللىرى',
'KZ' => 'قازاقىستان',
'LA' => 'لائوس',
'LB' => 'لىۋان',
- 'LC' => 'ساينىت-لۇسىيە',
- 'LI' => 'لىچتېنشتېين بەگلىكى',
+ 'LC' => 'ساينت لۇسىيە',
+ 'LI' => 'لىكتېنستېين',
'LK' => 'سىرىلانكا',
'LR' => 'لىبېرىيە',
'LS' => 'لېسوتو',
@@ -961,8 +965,8 @@ $countryNames = array(
'MA' => 'ماراكەش',
'MC' => 'موناكو',
'MD' => 'مولدوۋا',
- 'ME' => 'مونتېنېگرو',
- 'MF' => 'ساينىت-مارتېن',
+ 'ME' => 'قارا تاغ',
+ 'MF' => 'ساينت مارتىن',
'MG' => 'ماداغاسقار',
'MH' => 'مارشال ئاراللىرى',
'MK' => 'ماكېدونىيە',
@@ -975,15 +979,15 @@ $countryNames = array(
'MR' => 'ماۋرىتانىيە',
'MS' => 'مونتسېررات',
'MT' => 'مالتا',
- 'MU' => 'ماۋرىتىئۇس',
+ 'MU' => 'ماۋرىتىيۇس',
'MV' => 'مالدىۋې',
'MW' => 'مالاۋى',
'MX' => 'مېكسىكا',
- 'MY' => 'مالايشىيا',
+ 'MY' => 'مالايسىيا',
'MZ' => 'موزامبىك',
'NA' => 'نامىبىيە',
'NC' => 'يېڭى كالېدونىيە',
- 'NE' => 'نېگىر',
+ 'NE' => 'نىگېر',
'NF' => 'نورفولك ئارىلى',
'NG' => 'نىگېرىيە',
'NI' => 'نىكاراگۇئا',
@@ -991,31 +995,31 @@ $countryNames = array(
'NO' => 'نورۋېگىيە',
'NP' => 'نېپال',
'NR' => 'ناۋرۇ',
- 'NU' => 'نىيۇئې',
+ 'NU' => 'نيۇئې',
'NZ' => 'يېڭى زېلاندىيە',
'OM' => 'ئومان',
'PA' => 'پاناما',
'PE' => 'پېرۇ',
'PF' => 'فىرانسىيەگە قاراشلىق پولىنېزىيە',
- 'PG' => 'پاپۇئا يېڭى گىۋىنېيەسى',
+ 'PG' => 'پاپۇئا يېڭى گىۋىنىيەسى',
'PH' => 'فىلىپپىن',
'PK' => 'پاكىستان',
'PL' => 'پولشا',
- 'PM' => 'ساينىت-پىئېر ۋە مىكېلون ئاراللىرى',
- 'PN' => 'پىتكاير ئاراللىرى',
- 'PR' => 'پۇئېرتو-رىكو',
+ 'PM' => 'ساينت پىيېر ۋە مىكېلون ئاراللىرى',
+ 'PN' => 'پىتكايرن ئاراللىرى',
+ 'PR' => 'پۇئېرتو رىكو',
'PS' => 'پەلەستىن',
'PT' => 'پورتۇگالىيە',
- 'PW' => 'پالاۋ',
+ 'PW' => 'پالائۇ',
'PY' => 'پاراگۋاي',
'QA' => 'قاتار',
'QO' => 'ئوكيانىيە ئەتراپىدىكى ئاراللار',
- 'RE' => 'رېئونىيون',
- 'RO' => 'رۇمىنىيە',
+ 'RE' => 'رېيۇنىيون',
+ 'RO' => 'رومىنىيە',
'RS' => 'سېربىيە',
'RU' => 'رۇسىيە',
'RW' => 'رىۋاندا',
- 'SA' => 'سەئۇدى ئەرەبىستان',
+ 'SA' => 'سەئۇدىي ئەرەبىستان',
'SB' => 'سولومون ئاراللىرى',
'SC' => 'سېيشېل',
'SD' => 'سۇدان',
@@ -1023,23 +1027,23 @@ $countryNames = array(
'SG' => 'سىنگاپور',
'SH' => 'ساينىت ھېلېنا',
'SI' => 'سىلوۋېنىيە',
- 'SJ' => 'سىۋالبارد ۋە يان-مايېن ئارىلى',
+ 'SJ' => 'سىۋالبارد ۋە يان مايېن',
'SK' => 'سىلوۋاكىيە',
'SL' => 'سېررالېئون',
- 'SM' => 'سان-مارىنو',
+ 'SM' => 'سان مارىنو',
'SN' => 'سېنېگال',
'SO' => 'سومالى',
'SR' => 'سۇرىنام',
'SS' => 'جەنۇبىي سۇدان',
'ST' => 'سان تومې ۋە پرىنسىپې',
- 'SV' => 'ئەل سالۋادور',
+ 'SV' => 'سالۋادور',
'SX' => 'سىنت مارتېن',
- 'SY' => 'سۈرىيە',
+ 'SY' => 'سۇرىيە',
'SZ' => 'سىۋېزىلاند',
'TA' => 'ترىستان داكۇنھا',
'TC' => 'تۇركس ۋە كايكوس ئاراللىرى',
'TD' => 'چاد',
- 'TF' => 'فىرانسىيەگە قاراشلىق جەنۇبتىكى زېمىنلىرى',
+ 'TF' => 'فىرانسىيەنىڭ جەنۇبىي زېمىنى',
'TG' => 'توگو',
'TH' => 'تايلاند',
'TJ' => 'تاجىكىستان',
@@ -1055,28 +1059,28 @@ $countryNames = array(
'TZ' => 'تانزانىيە',
'UA' => 'ئۇكرائىنا',
'UG' => 'ئۇگاندا',
- 'UM' => 'ئامېرىكا تەۋەلىكىدىكى سىرتقى كىچىك ئاراللار',
+ 'UM' => 'ئا ق ش تاشقى ئاراللىرى',
'US' => 'ئا ق ش',
'UY' => 'ئۇرۇگۋاي',
'UZ' => 'ئۆزبېكىستان',
- 'VA' => 'ۋاتىكان شەھىرى',
- 'VC' => 'ساينىت-ۋىنسېنت ۋە گىرېنادىنېس',
- 'VE' => 'ۋېنېزۇئېلا',
- 'VG' => 'ئەنگلىيەگە قاراشلىق ۋىرجىن ئارىلى',
- 'VI' => 'ئامېرىكا تەۋەلىكىدىكى ۋىرجىن تاقىم ئاراللىرى',
+ 'VA' => 'ۋاتىكان',
+ 'VC' => 'ساينت ۋىنسېنت ۋە گىرېنادىنېس',
+ 'VE' => 'ۋېنېسۇئېلا',
+ 'VG' => 'ئەنگلىيە ۋىرگىن ئاراللىرى',
+ 'VI' => 'ئا ق ش ۋىرگىن ئاراللىرى',
'VN' => 'ۋىيېتنام',
'VU' => 'ۋانۇئاتۇ',
- 'WF' => 'ۋالىس ۋە فۇتۇنا',
+ 'WF' => 'ۋاللىس ۋە فۇتۇنا',
'WS' => 'ساموئا',
'XK' => 'كوسوۋو',
'YE' => 'يەمەن',
- 'YT' => 'مايوتتې',
+ 'YT' => 'مايوتى',
'ZA' => 'جەنۇبىي ئافرىقا',
'ZM' => 'زامبىيە',
'ZW' => 'زىمبابۋې',
-);
+];
-$timeUnits = array(
+$timeUnits = [
'day-future-one' => '{0} كۈندىن كېيىن',
'day-future-other' => '{0} كۈندىن كېيىن',
'day-one' => '{0} كۈن',
@@ -1121,4 +1125,4 @@ $timeUnits = array(
'year-other' => '{0} يىل',
'year-past-one' => '{0} يىل ئىلگىرى',
'year-past-other' => '{0} يىل ئىلگىرى',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesUk.php b/MLEB/cldr/CldrNames/CldrNamesUk.php
index b613f212..4503b5cd 100644
--- a/MLEB/cldr/CldrNames/CldrNamesUk.php
+++ b/MLEB/cldr/CldrNames/CldrNamesUk.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'афарська',
'ab' => 'абхазька',
'ace' => 'ачехська',
@@ -14,6 +14,7 @@ $languageNames = array(
'ain' => 'айнська',
'ak' => 'акан',
'akk' => 'аккадська',
+ 'akz' => 'алабама',
'ale' => 'алеутська',
'alt' => 'південноалтайська',
'am' => 'амхарська',
@@ -24,36 +25,48 @@ $languageNames = array(
'ar-001' => 'сучасна стандартна арабська',
'arc' => 'арамейська',
'arn' => 'арауканська',
+ 'aro' => 'араона',
'arp' => 'арапахо',
+ 'arq' => 'алжирська арабська',
+ 'ars' => 'надждійська арабська',
'arw' => 'аравакська',
- 'as' => 'ассамська',
+ 'as' => 'асамська',
'asa' => 'асу',
+ 'ase' => 'американська мова рухів',
'ast' => 'астурська',
'av' => 'аварська',
'awa' => 'авадхі',
'ay' => 'аймара',
'az' => 'азербайджанська',
+ 'az-arab' => 'південноазербайджанська',
'ba' => 'башкирська',
'bal' => 'балучі',
'ban' => 'балійська',
+ 'bar' => 'баеріш',
'bas' => 'баса',
'bax' => 'бамум',
+ 'bbc' => 'батак тоба',
'bbj' => 'гомала',
'be' => 'білоруська',
'bej' => 'беджа',
'bem' => 'бемба',
+ 'bew' => 'бетаві',
'bez' => 'бена',
'bfd' => 'бафут',
+ 'bfq' => 'бадага',
'bg' => 'болгарська',
+ 'bgn' => 'східнобелуджійська',
'bho' => 'бходжпурі',
'bi' => 'біслама',
'bik' => 'бікольська',
'bin' => 'біні',
+ 'bjn' => 'банджарська',
'bkm' => 'ком',
'bla' => 'сіксіка',
'bm' => 'бамбара',
- 'bn' => 'бенгальська',
+ 'bn' => 'банґла',
'bo' => 'тибетська',
+ 'bqi' => 'бахтіарі',
'br' => 'бретонська',
'bra' => 'брадж',
'brx' => 'бодо',
@@ -79,17 +92,18 @@ $languageNames = array(
'chm' => 'марійська',
'chn' => 'чинук жаргон',
'cho' => 'чокто',
- 'chp' => 'чіпев’ян',
+ 'chp' => 'чіпевʼян',
'chr' => 'черокі',
'chy' => 'чейєнн',
- 'ckb' => 'курдська (сорані)',
+ 'ckb' => 'центральнокурдська',
'co' => 'корсиканська',
'cop' => 'коптська',
'cr' => 'крі',
'crh' => 'кримськотатарська',
+ 'crs' => 'сейшельська креольська',
'cs' => 'чеська',
'csb' => 'кашубська',
- 'cu' => 'церковнослов’янська',
+ 'cu' => 'церковнословʼянська',
'cv' => 'чуваська',
'cy' => 'валлійська',
'da' => 'данська',
@@ -120,7 +134,7 @@ $languageNames = array(
'el' => 'грецька',
'elx' => 'еламська',
'en' => 'англійська',
- 'en-gb' => 'англійська британська',
+ 'en-us' => 'англійська (США)',
'enm' => 'середньоанглійська',
'eo' => 'есперанто',
'es' => 'іспанська',
@@ -138,15 +152,18 @@ $languageNames = array(
'fo' => 'фарерська',
'fon' => 'фон',
'fr' => 'французька',
+ 'frc' => 'кажунська французька',
'frm' => 'середньофранцузька',
'fro' => 'давньофранцузька',
+ 'frp' => 'арпітанська',
'frr' => 'фризька північна',
'frs' => 'фризька східна',
'fur' => 'фріульська',
- 'fy' => 'західно-фризька',
+ 'fy' => 'західнофризька',
'ga' => 'ірландська',
'gaa' => 'га',
'gag' => 'гагаузька',
+ 'gan' => 'ґань',
'gay' => 'гайо',
'gba' => 'гбайя',
'gd' => 'гаельська',
@@ -161,13 +178,14 @@ $languageNames = array(
'got' => 'готська',
'grb' => 'гребо',
'grc' => 'давньогрецька',
- 'gsw' => 'німецька швейцарська',
+ 'gsw' => 'німецька (Швейцарія)',
'gu' => 'гуджараті',
'guz' => 'гусії',
'gv' => 'менкська',
'gwi' => 'кучін',
'ha' => 'хауса',
'hai' => 'хайда',
+ 'hak' => 'хаккаська',
'haw' => 'гавайська',
'he' => 'іврит',
'hi' => 'гінді',
@@ -177,6 +195,7 @@ $languageNames = array(
'ho' => 'хірі-моту',
'hr' => 'хорватська',
'hsb' => 'верхньолужицька',
+ 'hsn' => 'сянська китайська',
'ht' => 'гаїтянська',
'hu' => 'угорська',
'hup' => 'хупа',
@@ -200,8 +219,8 @@ $languageNames = array(
'jbo' => 'ложбан',
'jgo' => 'нгомба',
'jmc' => 'мачаме',
- 'jpr' => 'іудео-перська',
- 'jrb' => 'іудео-арабська',
+ 'jpr' => 'юдео-перська',
+ 'jrb' => 'юдео-арабська',
'jv' => 'яванська',
'ka' => 'грузинська',
'kaa' => 'каракалпацька',
@@ -261,14 +280,16 @@ $languageNames = array(
'ln' => 'лінгала',
'lo' => 'лаоська',
'lol' => 'монго',
+ 'lou' => 'луїзіанська креольська',
'loz' => 'лозі',
+ 'lrc' => 'північнолурська',
'lt' => 'литовська',
'lu' => 'луба-катанга',
'lua' => 'луба-лулуа',
'lui' => 'луїсеньо',
'lun' => 'лунда',
'luo' => 'луо',
- 'lus' => 'лушей',
+ 'lus' => 'мізо',
'luy' => 'луйя',
'lv' => 'латвійська',
'mad' => 'мадурська',
@@ -303,35 +324,39 @@ $languageNames = array(
'ms' => 'малайська',
'mt' => 'мальтійська',
'mua' => 'мунданг',
- 'mul' => 'декілька мов',
+ 'mul' => 'кілька мов',
'mus' => 'крік',
'mwl' => 'мірандська',
'mwr' => 'марварі',
'my' => 'бірманська',
'mye' => 'миін',
'myv' => 'ерзя',
+ 'mzn' => 'мазандеранська',
'na' => 'науру',
+ 'nan' => 'південноміньська',
'nap' => 'неаполітанська',
'naq' => 'нама',
- 'nb' => 'букмол (Норвегія)',
- 'nd' => 'ндебелє північна',
+ 'nb' => 'норвезька (букмол)',
+ 'nd' => 'північна ндебеле',
'nds' => 'нижньонімецька',
+ 'nds-nl' => 'нижньосаксонська',
'ne' => 'непальська',
'new' => 'неварі',
'ng' => 'ндонга',
'nia' => 'ніаська',
'niu' => 'ніуе',
- 'nl' => 'голландська',
+ 'njo' => 'ао нага',
+ 'nl' => 'нідерландська',
'nl-be' => 'фламандська',
'nmg' => 'квазіо',
- 'nn' => 'нюношк (Норвегія)',
+ 'nn' => 'норвезька (нюношк)',
'nnh' => 'нгємбун',
'no' => 'норвезька',
'nog' => 'ногайська',
'non' => 'давньонорвезька',
'nqo' => 'нко',
'nr' => 'ндебелє південна',
- 'nso' => 'сото північна',
+ 'nso' => 'північна сото',
'nus' => 'нуер',
'nv' => 'навахо',
'nwc' => 'неварі класична',
@@ -340,10 +365,10 @@ $languageNames = array(
'nyn' => 'ньянколе',
'nyo' => 'ньоро',
'nzi' => 'нзіма',
- 'oc' => 'окитан',
+ 'oc' => 'окситанська',
'oj' => 'оджібва',
'om' => 'оромо',
- 'or' => 'орія',
+ 'or' => 'одія',
'os' => 'осетинська',
'osa' => 'осейдж',
'ota' => 'османська',
@@ -351,17 +376,20 @@ $languageNames = array(
'pag' => 'пангасінанська',
'pal' => 'пехлеві',
'pam' => 'пампанга',
- 'pap' => 'пап’яменто',
+ 'pap' => 'папʼяменто',
'pau' => 'палауанська',
+ 'pcm' => 'нігерійсько-креольська',
'peo' => 'давньоперська',
'phn' => 'фінікійсько-пунічна',
'pi' => 'палі',
'pl' => 'польська',
'pon' => 'понапе',
+ 'prg' => 'пруська',
'pro' => 'давньопровансальська',
'ps' => 'пушту',
- 'pt' => 'португальська',
- 'pt-pt' => 'португальська (Європа)',
+ 'pt' => 'портуґальська',
+ 'pt-br' => 'португальська (Бразилія)',
+ 'pt-pt' => 'європейська портуґальська',
'qu' => 'кечуа',
'quc' => 'кіче',
'raj' => 'раджастхані',
@@ -376,7 +404,7 @@ $languageNames = array(
'ru' => 'російська',
'rup' => 'арумунська',
'rw' => 'кіньяруанда',
- 'rwk' => 'Рва',
+ 'rwk' => 'рва',
'sa' => 'санскрит',
'sad' => 'сандаве',
'sah' => 'якутська',
@@ -390,7 +418,8 @@ $languageNames = array(
'scn' => 'сицилійська',
'sco' => 'шотландська',
'sd' => 'сіндхі',
- 'se' => 'саамська північна',
+ 'sdh' => 'південнокурдська',
+ 'se' => 'північносаамська',
'see' => 'сенека',
'seh' => 'сена',
'sel' => 'селькупська',
@@ -406,10 +435,10 @@ $languageNames = array(
'sk' => 'словацька',
'sl' => 'словенська',
'sm' => 'самоанська',
- 'sma' => 'саамська південна',
+ 'sma' => 'південносаамська',
'smj' => 'саамська луле',
'smn' => 'саамська інарі',
- 'sms' => 'саамська скольт',
+ 'sms' => 'скольт-саамська',
'sn' => 'шона',
'snk' => 'сонінке',
'so' => 'сомалі',
@@ -427,8 +456,8 @@ $languageNames = array(
'sux' => 'шумерська',
'sv' => 'шведська',
'sw' => 'суахілі',
+ 'sw-cd' => 'суахілі (Конго)',
'swb' => 'коморська',
- 'swc' => 'конгійське суахілі',
'syc' => 'сирійська класична',
'syr' => 'сирійська',
'ta' => 'тамільська',
@@ -445,11 +474,11 @@ $languageNames = array(
'tk' => 'туркменська',
'tkl' => 'токелау',
'tl' => 'тагальська',
- 'tlh' => 'клінгон',
+ 'tlh' => 'клінгонська',
'tli' => 'тлінгіт',
'tmh' => 'тамашек',
'tn' => 'тсвана',
- 'to' => 'тонганська',
+ 'to' => 'тонґанська',
'tog' => 'ньяса тонга',
'tpi' => 'ток-пісін',
'tr' => 'турецька',
@@ -463,7 +492,7 @@ $languageNames = array(
'twq' => 'тасавак',
'ty' => 'таїтянська',
'tyv' => 'тувинська',
- 'tzm' => 'центральномароканська тамазіт',
+ 'tzm' => 'центральноатласька тамазігт',
'udm' => 'удмуртська',
'ug' => 'уйгурська',
'uga' => 'угаритська',
@@ -475,15 +504,17 @@ $languageNames = array(
'vai' => 'ваї',
've' => 'венда',
'vi' => 'вʼєтнамська',
- 'vo' => 'волап’юк',
+ 'vo' => 'волапʼюк',
'vot' => 'водська',
'vun' => 'вуньо',
'wa' => 'валлонська',
- 'wae' => 'Валзерська',
- 'wal' => 'валамо',
+ 'wae' => 'валзерська',
+ 'wal' => 'волайтта',
'war' => 'варай',
'was' => 'вашо',
+ 'wbp' => 'валпірі',
'wo' => 'волоф',
+ 'wuu' => 'уська китайська',
'xal' => 'калмицька',
'xh' => 'кхоса',
'xog' => 'сога',
@@ -491,7 +522,7 @@ $languageNames = array(
'yap' => 'яп',
'yav' => 'янгбен',
'ybb' => 'ємба',
- 'yi' => 'ідиш',
+ 'yi' => 'їдиш',
'yo' => 'йоруба',
'yue' => 'кантонська',
'za' => 'чжуан',
@@ -500,13 +531,15 @@ $languageNames = array(
'zen' => 'зенага',
'zgh' => 'стандартна марокканська берберська',
'zh' => 'китайська',
+ 'zh-hans' => 'китайська (спрощене письмо)',
+ 'zh-hant' => 'китайська (традиційне письмо)',
'zu' => 'зулуська',
'zun' => 'зуньї',
'zxx' => 'немає мовного вмісту',
'zza' => 'зазакі',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'ADP' => 'андоррська песета',
'AED' => 'дирхам ОАЕ',
'AFA' => 'афгані (1927–2002)',
@@ -553,7 +586,8 @@ $currencyNames = array(
'BUK' => 'бірманський кіат',
'BWP' => 'ботсванська пула',
'BYB' => 'білоруський новий рубль (1994–1999)',
- 'BYR' => 'білоруський рубль',
+ 'BYN' => 'білоруський рубль',
+ 'BYR' => 'білоруський рубль (2000–2016)',
'BZD' => 'белізький долар',
'CAD' => 'канадський долар',
'CDF' => 'конголезький франк',
@@ -562,6 +596,7 @@ $currencyNames = array(
'CHW' => 'франк WIR',
'CLF' => 'чилійський юнідадес де фоменто',
'CLP' => 'чилійський песо',
+ 'CNH' => 'китайський офшорний юань',
'CNY' => 'китайський юань',
'COP' => 'колумбійський песо',
'COU' => 'одиниця реальної вартості',
@@ -658,7 +693,8 @@ $currencyNames = array(
'MMK' => 'кʼят Мʼянми',
'MNT' => 'монгольський тугрик',
'MOP' => 'патака Макао',
- 'MRO' => 'мавританська угія',
+ 'MRO' => 'мавританська угія (1973–2017)',
+ 'MRU' => 'мавританська угія',
'MTL' => 'мальтійська ліра',
'MTP' => 'мальтійський фунт',
'MUR' => 'маврикійська рупія',
@@ -673,18 +709,18 @@ $currencyNames = array(
'MZN' => 'мозамбіцький метикал',
'NAD' => 'намібійський долар',
'NGN' => 'нігерійська найра',
- 'NIC' => 'нікарагуанська кордоба',
- 'NIO' => 'нікарагуанська кордоба оро',
+ 'NIC' => 'нікарагуанська кордоба (1988–1991)',
+ 'NIO' => 'нікарагуанська кордоба',
'NLG' => 'нідерландський гульден',
'NOK' => 'норвезька крона',
'NPR' => 'непальська рупія',
'NZD' => 'новозеландський долар',
'OMR' => 'оманський ріал',
- 'PAB' => 'панамська бальбоа',
+ 'PAB' => 'панамське бальбоа',
'PEI' => 'перуанський інті',
'PEN' => 'перуанський новий сол',
- 'PES' => 'перуанський сол',
- 'PGK' => 'кіна Папуа Нової Гвінеї',
+ 'PES' => 'перуанський сол (1863–1965)',
+ 'PGK' => 'кіна Папуа-Нової Ґвінеї',
'PHP' => 'філіппінський песо',
'PKR' => 'пакистанська рупія',
'PLN' => 'польський злотий',
@@ -715,7 +751,8 @@ $currencyNames = array(
'SRD' => 'суринамський долар',
'SRG' => 'суринамський гульден',
'SSP' => 'південносуданський фунт',
- 'STD' => 'добра Сан-Томе і Принсіпі',
+ 'STD' => 'добра Сан-Томе і Прінсіпі (1977–2017)',
+ 'STN' => 'добра Сан-Томе і Прінсіпі',
'SUR' => 'радянський рубль',
'SVC' => 'сальвадорський колон',
'SYP' => 'сирійський фунт',
@@ -726,11 +763,11 @@ $currencyNames = array(
'TMM' => 'туркменський манат (1993–2009)',
'TMT' => 'туркменський манат',
'TND' => 'туніський динар',
- 'TOP' => 'тонганська паанга',
+ 'TOP' => 'тонґанська паанга',
'TPE' => 'тіморський ескудо',
'TRL' => 'турецька ліра (1922–2005)',
'TRY' => 'турецька ліра',
- 'TTD' => 'долар Тринідаду і Тобаго',
+ 'TTD' => 'долар Трінідаду і Тобаґо',
'TWD' => 'новий тайванський долар',
'TZS' => 'танзанійський шилінг',
'UAH' => 'українська гривня',
@@ -745,7 +782,8 @@ $currencyNames = array(
'UYU' => 'уругвайський песо',
'UZS' => 'узбецький сум',
'VEB' => 'венесуельський болівар (1871–2008)',
- 'VEF' => 'венесуельський болівар',
+ 'VEF' => 'венесуельський болівар (2008–2018)',
+ 'VES' => 'венесуельський болівар',
'VND' => 'вʼєтнамський донг',
'VUV' => 'вануатський вату',
'WST' => 'самоанська тала',
@@ -761,7 +799,7 @@ $currencyNames = array(
'XEU' => 'європейська валютна одиниця',
'XFO' => 'французький золотий франк',
'XFU' => 'французький франк UIC',
- 'XOF' => 'західноафриканський франк BCEAO',
+ 'XOF' => 'західноафриканський франк',
'XPD' => 'паладій',
'XPF' => 'французький тихоокеанський франк',
'XPT' => 'платина',
@@ -782,9 +820,9 @@ $currencyNames = array(
'ZWD' => 'зімбабвійський долар',
'ZWL' => 'зімбабвійський долар (2009)',
'ZWR' => 'зімбабвійський долар (2008)',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'AED' => 'AED',
'AFN' => 'AFN',
'ALL' => 'ALL',
@@ -808,12 +846,14 @@ $currencySymbols = array(
'BSD' => 'BSD',
'BTN' => 'BTN',
'BWP' => 'BWP',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CAD',
'CDF' => 'CDF',
'CHF' => 'CHF',
'CLP' => 'CLP',
+ 'CNH' => 'CNH',
'CNY' => 'CNY',
'COP' => 'COP',
'CRC' => 'CRC',
@@ -877,6 +917,7 @@ $currencySymbols = array(
'MNT' => 'MNT',
'MOP' => 'MOP',
'MRO' => 'MRO',
+ 'MRU' => 'MRU',
'MUR' => 'MUR',
'MVR' => 'MVR',
'MWK' => 'MWK',
@@ -892,6 +933,7 @@ $currencySymbols = array(
'OMR' => 'OMR',
'PAB' => 'PAB',
'PEN' => 'PEN',
+ 'PES' => 'PES',
'PGK' => 'PGK',
'PHP' => 'PHP',
'PKR' => 'PKR',
@@ -914,6 +956,7 @@ $currencySymbols = array(
'SRD' => 'SRD',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'STN',
'SYP' => 'SYP',
'SZL' => 'SZL',
'THB' => 'THB',
@@ -932,6 +975,7 @@ $currencySymbols = array(
'UYU' => 'UYU',
'UZS' => 'UZS',
'VEF' => 'VEF',
+ 'VES' => 'VES',
'VND' => 'VND',
'VUV' => 'VUV',
'WST' => 'WST',
@@ -942,18 +986,17 @@ $currencySymbols = array(
'YER' => 'YER',
'ZAR' => 'ZAR',
'ZMW' => 'ZMW',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'Острів Вознесіння',
'AD' => 'Андорра',
'AE' => 'Обʼєднані Арабські Емірати',
'AF' => 'Афганістан',
- 'AG' => 'Антигуа і Барбуда',
- 'AI' => 'Ангілья',
+ 'AG' => 'Антиґуа і Барбуда',
+ 'AI' => 'Анґілья',
'AL' => 'Албанія',
'AM' => 'Вірменія',
- 'AN' => 'Нідерландські Антильські Острови',
'AO' => 'Ангола',
'AQ' => 'Антарктика',
'AR' => 'Аргентина',
@@ -961,45 +1004,45 @@ $countryNames = array(
'AT' => 'Австрія',
'AU' => 'Австралія',
'AW' => 'Аруба',
- 'AX' => 'Аландські острови',
+ 'AX' => 'Аландські Острови',
'AZ' => 'Азербайджан',
- 'BA' => 'Боснія і Герцоговина',
+ 'BA' => 'Боснія і Герцеґовина',
'BB' => 'Барбадос',
'BD' => 'Бангладеш',
- 'BE' => 'Бельгія',
+ 'BE' => 'Бельґія',
'BF' => 'Буркіна-Фасо',
'BG' => 'Болгарія',
'BH' => 'Бахрейн',
'BI' => 'Бурунді',
'BJ' => 'Бенін',
'BL' => 'Сен-Бартельмі',
- 'BM' => 'Бермуди',
+ 'BM' => 'Бермудські Острови',
'BN' => 'Бруней',
'BO' => 'Болівія',
'BQ' => 'Нідерландські Карибські острови',
- 'BR' => 'Бразилія',
- 'BS' => 'Багами',
+ 'BR' => 'Бразілія',
+ 'BS' => 'Багамські Острови',
'BT' => 'Бутан',
'BV' => 'Острів Буве',
'BW' => 'Ботсвана',
'BY' => 'Білорусь',
'BZ' => 'Беліз',
'CA' => 'Канада',
- 'CC' => 'Кокосові (Кілінгові) острови',
+ 'CC' => 'Кокосові (Кілінґ) Острови',
'CD' => 'Конго – Кіншаса',
'CF' => 'Центральноафриканська Республіка',
'CG' => 'Конго – Браззавіль',
'CH' => 'Швейцарія',
- 'CI' => 'Кот-д’Івуар',
+ 'CI' => 'Кот-дʼІвуар',
'CK' => 'Острови Кука',
- 'CL' => 'Чилі',
+ 'CL' => 'Чілі',
'CM' => 'Камерун',
'CN' => 'Китай',
'CO' => 'Колумбія',
'CP' => 'Острів Кліппертон',
- 'CR' => 'Коста-Рика',
+ 'CR' => 'Коста-Ріка',
'CU' => 'Куба',
- 'CV' => 'Кабо Верде',
+ 'CV' => 'Кабо-Верде',
'CW' => 'Кюрасао',
'CX' => 'Острів Різдва',
'CY' => 'Кіпр',
@@ -1020,44 +1063,45 @@ $countryNames = array(
'ES' => 'Іспанія',
'ET' => 'Ефіопія',
'EU' => 'Європейський Союз',
+ 'EZ' => 'Єврозона',
'FI' => 'Фінляндія',
'FJ' => 'Фіджі',
- 'FK' => 'Фолклендські острови',
+ 'FK' => 'Фолклендські Острови',
'FM' => 'Мікронезія',
- 'FO' => 'Фарерські острови',
+ 'FO' => 'Фарерські Острови',
'FR' => 'Франція',
'GA' => 'Габон',
'GB' => 'Велика Британія',
- 'GD' => 'Гренада',
+ 'GD' => 'Ґренада',
'GE' => 'Грузія',
- 'GF' => 'Французька Гвіана',
- 'GG' => 'Гернсі',
+ 'GF' => 'Французька Ґвіана',
+ 'GG' => 'Ґернсі',
'GH' => 'Гана',
- 'GI' => 'Гібралтар',
- 'GL' => 'Гренландія',
+ 'GI' => 'Ґібралтар',
+ 'GL' => 'Ґренландія',
'GM' => 'Гамбія',
'GN' => 'Гвінея',
- 'GP' => 'Гваделупа',
+ 'GP' => 'Ґваделупа',
'GQ' => 'Екваторіальна Гвінея',
'GR' => 'Греція',
- 'GS' => 'Південна Джорджія та Південні Сандвічеві острови',
- 'GT' => 'Гватемала',
- 'GU' => 'Гуам',
+ 'GS' => 'Південна Джорджія та Південні Сандвічеві Острови',
+ 'GT' => 'Ґватемала',
+ 'GU' => 'Ґуам',
'GW' => 'Гвінея-Бісау',
- 'GY' => 'Гаяна',
+ 'GY' => 'Ґайана',
'HK' => 'Гонконг',
- 'HM' => 'Острови Херд і Мак-Дональд',
+ 'HM' => 'Острови Герд і Макдоналд',
'HN' => 'Гондурас',
'HR' => 'Хорватія',
'HT' => 'Гаїті',
'HU' => 'Угорщина',
- 'IC' => 'Канарські острови',
+ 'IC' => 'Канарські Острови',
'ID' => 'Індонезія',
'IE' => 'Ірландія',
'IL' => 'Ізраїль',
'IM' => 'Острів Мен',
'IN' => 'Індія',
- 'IO' => 'Британські території в Індійському океані',
+ 'IO' => 'Британська територія в Індійському Океані',
'IQ' => 'Ірак',
'IR' => 'Іран',
'IS' => 'Ісландія',
@@ -1069,13 +1113,13 @@ $countryNames = array(
'KE' => 'Кенія',
'KG' => 'Киргизстан',
'KH' => 'Камбоджа',
- 'KI' => 'Кірибаті',
- 'KM' => 'Коморські острови',
+ 'KI' => 'Кірібаті',
+ 'KM' => 'Комори',
'KN' => 'Сент-Кітс і Невіс',
'KP' => 'Північна Корея',
'KR' => 'Південна Корея',
'KW' => 'Кувейт',
- 'KY' => 'Кайманові острови',
+ 'KY' => 'Кайманові Острови',
'KZ' => 'Казахстан',
'LA' => 'Лаос',
'LB' => 'Ліван',
@@ -1085,7 +1129,7 @@ $countryNames = array(
'LR' => 'Ліберія',
'LS' => 'Лесото',
'LT' => 'Литва',
- 'LU' => 'Люксембург',
+ 'LU' => 'Люксембурґ',
'LV' => 'Латвія',
'LY' => 'Лівія',
'MA' => 'Марокко',
@@ -1100,12 +1144,12 @@ $countryNames = array(
'MM' => 'Мʼянма (Бірма)',
'MN' => 'Монголія',
'MO' => 'Макао',
- 'MP' => 'Північні Маріанські острови',
- 'MQ' => 'Мартиніка',
+ 'MP' => 'Північні Маріанські Острови',
+ 'MQ' => 'Мартініка',
'MR' => 'Мавританія',
'MS' => 'Монтсеррат',
'MT' => 'Мальта',
- 'MU' => 'Маврикій',
+ 'MU' => 'Маврікій',
'MV' => 'Мальдіви',
'MW' => 'Малаві',
'MX' => 'Мексика',
@@ -1116,9 +1160,9 @@ $countryNames = array(
'NE' => 'Нігер',
'NF' => 'Острів Норфолк',
'NG' => 'Нігерія',
- 'NI' => 'Нікарагуа',
+ 'NI' => 'Нікараґуа',
'NL' => 'Нідерланди',
- 'NO' => 'Норвегія',
+ 'NO' => 'Норвеґія',
'NP' => 'Непал',
'NR' => 'Науру',
'NU' => 'Ніуе',
@@ -1127,19 +1171,19 @@ $countryNames = array(
'PA' => 'Панама',
'PE' => 'Перу',
'PF' => 'Французька Полінезія',
- 'PG' => 'Папуа Нова Гвінея',
+ 'PG' => 'Папуа-Нова Ґвінея',
'PH' => 'Філіппіни',
'PK' => 'Пакистан',
'PL' => 'Польща',
'PM' => 'Сен-Пʼєр і Мікелон',
'PN' => 'Острови Піткерн',
- 'PR' => 'Пуерто-Рико',
+ 'PR' => 'Пуерто-Ріко',
'PS' => 'Палестина',
- 'PT' => 'Португалія',
+ 'PT' => 'Портуґалія',
'PW' => 'Палау',
- 'PY' => 'Парагвай',
+ 'PY' => 'Параґвай',
'QA' => 'Катар',
- 'QO' => 'Віддалені острови Океанії',
+ 'QO' => 'Віддалена Океанія',
'RE' => 'Реюньйон',
'RO' => 'Румунія',
'RS' => 'Сербія',
@@ -1147,19 +1191,19 @@ $countryNames = array(
'RW' => 'Руанда',
'SA' => 'Саудівська Аравія',
'SB' => 'Соломонові Острови',
- 'SC' => 'Сейшельські острови',
+ 'SC' => 'Сейшельські Острови',
'SD' => 'Судан',
'SE' => 'Швеція',
'SG' => 'Сінгапур',
'SH' => 'Острів Святої Єлени',
'SI' => 'Словенія',
- 'SJ' => 'Острови Свальбард і Ян-Маєн',
+ 'SJ' => 'Шпіцберген та Ян-Маєн',
'SK' => 'Словаччина',
'SL' => 'Сьєрра-Леоне',
- 'SM' => 'Сан-Марино',
+ 'SM' => 'Сан-Маріно',
'SN' => 'Сенегал',
'SO' => 'Сомалі',
- 'SR' => 'Суринам',
+ 'SR' => 'Сурінам',
'SS' => 'Південний Судан',
'ST' => 'Сан-Томе і Прінсіпі',
'SV' => 'Сальвадор',
@@ -1174,52 +1218,57 @@ $countryNames = array(
'TH' => 'Таїланд',
'TJ' => 'Таджикистан',
'TK' => 'Токелау',
- 'TL' => 'Східний Тимор',
+ 'TL' => 'Тімор-Лешті',
'TM' => 'Туркменістан',
'TN' => 'Туніс',
- 'TO' => 'Тонга',
+ 'TO' => 'Тонґа',
'TR' => 'Туреччина',
- 'TT' => 'Тринідад і Тобаго',
+ 'TT' => 'Трінідад і Тобаґо',
'TV' => 'Тувалу',
'TW' => 'Тайвань',
'TZ' => 'Танзанія',
'UA' => 'Україна',
'UG' => 'Уганда',
'UM' => 'Віддалені острови США',
+ 'UN' => 'ООН',
'US' => 'США',
- 'UY' => 'Уругвай',
+ 'UY' => 'Уруґвай',
'UZ' => 'Узбекистан',
'VA' => 'Ватикан',
- 'VC' => 'Сент-Вінсент і Гренадини',
+ 'VC' => 'Сент-Вінсент і Ґренадіни',
'VE' => 'Венесуела',
'VG' => 'Британські Віргінські острови',
'VI' => 'Віргінські острови, США',
'VN' => 'Вʼєтнам',
'VU' => 'Вануату',
- 'WF' => 'Волліс і Футуна',
+ 'WF' => 'Уолліс і Футуна',
'WS' => 'Самоа',
'XK' => 'Косово',
'YE' => 'Ємен',
'YT' => 'Майотта',
- 'ZA' => 'ПАР',
+ 'ZA' => 'Південно-Африканська Республіка',
'ZM' => 'Замбія',
'ZW' => 'Зімбабве',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-few' => '{0} століття',
+ 'century-many' => '{0} століть',
+ 'century-one' => '{0} століття',
+ 'century-other' => '{0} століття',
'day-few' => '{0} дні',
'day-future-few' => 'через {0} дні',
'day-future-many' => 'через {0} днів',
'day-future-one' => 'через {0} день',
'day-future-other' => 'через {0} дня',
'day-many' => '{0} днів',
- 'day-narrow-future-few' => '+{0} дн.',
- 'day-narrow-future-many' => '+{0} дн.',
- 'day-narrow-future-one' => '+{0} день',
- 'day-narrow-future-other' => '+{0} дн.',
+ 'day-narrow-future-few' => 'за {0} д.',
+ 'day-narrow-future-many' => 'за {0} д.',
+ 'day-narrow-future-one' => 'за {0} д.',
+ 'day-narrow-future-other' => 'за {0} д.',
'day-narrow-past-few' => '-{0} дн.',
'day-narrow-past-many' => '-{0} дн.',
- 'day-narrow-past-one' => '-{0} день',
+ 'day-narrow-past-one' => '{0} д. тому',
'day-narrow-past-other' => '-{0} дн.',
'day-one' => '{0} день',
'day-other' => '{0} дня',
@@ -1229,26 +1278,50 @@ $timeUnits = array(
'day-past-other' => '{0} дня тому',
'day-short-future-few' => 'через {0} дн.',
'day-short-future-many' => 'через {0} дн.',
- 'day-short-future-one' => 'через {0} д.',
+ 'day-short-future-one' => 'через {0} дн.',
'day-short-future-other' => 'через {0} дн.',
'day-short-past-few' => '{0} дн. тому',
'day-short-past-many' => '{0} дн. тому',
- 'day-short-past-one' => '{0} д. тому',
+ 'day-short-past-one' => '{0} дн. тому',
'day-short-past-other' => '{0} дн. тому',
+ 'fri-future-few' => 'через {0} пʼятниці',
+ 'fri-future-many' => 'через {0} пʼятниць',
+ 'fri-future-one' => 'через {0} пʼятницю',
+ 'fri-future-other' => 'через {0} пʼятниці',
+ 'fri-narrow-future-few' => 'через {0} пʼятниці',
+ 'fri-narrow-future-many' => 'через {0} пʼятниць',
+ 'fri-narrow-future-one' => 'через {0} пʼятницю',
+ 'fri-narrow-future-other' => 'через {0} пʼятниці',
+ 'fri-narrow-past-few' => '{0} пʼятниці тому',
+ 'fri-narrow-past-many' => '{0} пʼятниць тому',
+ 'fri-narrow-past-one' => '{0} пʼятницю тому',
+ 'fri-narrow-past-other' => '{0} пʼятниці тому',
+ 'fri-past-few' => '{0} пʼятниці тому',
+ 'fri-past-many' => '{0} пʼятниць тому',
+ 'fri-past-one' => '{0} пʼятницю тому',
+ 'fri-past-other' => '{0} пʼятниці тому',
+ 'fri-short-future-few' => 'через {0} пʼятниці',
+ 'fri-short-future-many' => 'через {0} пʼятниць',
+ 'fri-short-future-one' => 'через {0} пʼятницю',
+ 'fri-short-future-other' => 'через {0} пʼятниці',
+ 'fri-short-past-few' => '{0} пʼятниці тому',
+ 'fri-short-past-many' => '{0} пʼятниць тому',
+ 'fri-short-past-one' => '{0} пʼятницю тому',
+ 'fri-short-past-other' => '{0} пʼятниці тому',
'hour-few' => '{0} години',
'hour-future-few' => 'через {0} години',
'hour-future-many' => 'через {0} годин',
'hour-future-one' => 'через {0} годину',
'hour-future-other' => 'через {0} години',
'hour-many' => '{0} годин',
- 'hour-narrow-future-few' => '+{0} год',
- 'hour-narrow-future-many' => '+{0} год',
- 'hour-narrow-future-one' => '+{0} год',
- 'hour-narrow-future-other' => '+{0} год',
- 'hour-narrow-past-few' => '-{0} год',
- 'hour-narrow-past-many' => '-{0} год',
- 'hour-narrow-past-one' => '-{0} год',
- 'hour-narrow-past-other' => '-{0} год',
+ 'hour-narrow-future-few' => 'за {0} год',
+ 'hour-narrow-future-many' => 'за {0} год',
+ 'hour-narrow-future-one' => 'за {0} год',
+ 'hour-narrow-future-other' => 'за {0} год',
+ 'hour-narrow-past-few' => '{0} год тому',
+ 'hour-narrow-past-many' => '{0} год тому',
+ 'hour-narrow-past-one' => '{0} год тому',
+ 'hour-narrow-past-other' => '{0} год тому',
'hour-one' => '{0} година',
'hour-other' => '{0} години',
'hour-past-few' => '{0} години тому',
@@ -1277,14 +1350,14 @@ $timeUnits = array(
'minute-future-one' => 'через {0} хвилину',
'minute-future-other' => 'через {0} хвилини',
'minute-many' => '{0} хвилин',
- 'minute-narrow-future-few' => '+{0} хв',
- 'minute-narrow-future-many' => '+{0} хв',
- 'minute-narrow-future-one' => '+{0} хв',
- 'minute-narrow-future-other' => '+{0} хв',
- 'minute-narrow-past-few' => '-{0} хв',
- 'minute-narrow-past-many' => '-{0} хв',
- 'minute-narrow-past-one' => '-{0} хв',
- 'minute-narrow-past-other' => '-{0} хв',
+ 'minute-narrow-future-few' => 'за {0} хв',
+ 'minute-narrow-future-many' => 'за {0} хв',
+ 'minute-narrow-future-one' => 'за {0} хв',
+ 'minute-narrow-future-other' => 'за {0} хв',
+ 'minute-narrow-past-few' => '{0} хв тому',
+ 'minute-narrow-past-many' => '{0} хв тому',
+ 'minute-narrow-past-one' => '{0} хв тому',
+ 'minute-narrow-past-other' => '{0} хв тому',
'minute-one' => '{0} хвилина',
'minute-other' => '{0} хвилини',
'minute-past-few' => '{0} хвилини тому',
@@ -1299,20 +1372,44 @@ $timeUnits = array(
'minute-short-past-many' => '{0} хв тому',
'minute-short-past-one' => '{0} хв тому',
'minute-short-past-other' => '{0} хв тому',
+ 'mon-future-few' => 'через {0} понеділки',
+ 'mon-future-many' => 'через {0} понеділків',
+ 'mon-future-one' => 'через {0} понеділок',
+ 'mon-future-other' => 'через {0} понеділка',
+ 'mon-narrow-future-few' => 'через {0} понеділки',
+ 'mon-narrow-future-many' => 'через {0} понеділків',
+ 'mon-narrow-future-one' => 'через {0} понеділок',
+ 'mon-narrow-future-other' => 'через {0} понеділка',
+ 'mon-narrow-past-few' => '{0} понеділки тому',
+ 'mon-narrow-past-many' => '{0} понеділків тому',
+ 'mon-narrow-past-one' => '{0} понеділок тому',
+ 'mon-narrow-past-other' => '{0} понеділка тому',
+ 'mon-past-few' => '{0} понеділки тому',
+ 'mon-past-many' => '{0} понеділків тому',
+ 'mon-past-one' => '{0} понеділок тому',
+ 'mon-past-other' => '{0} понеділка тому',
+ 'mon-short-future-few' => 'через {0} понеділки',
+ 'mon-short-future-many' => 'через {0} понеділків',
+ 'mon-short-future-one' => 'через {0} понеділок',
+ 'mon-short-future-other' => 'через {0} понеділка',
+ 'mon-short-past-few' => '{0} понеділки тому',
+ 'mon-short-past-many' => '{0} понеділків тому',
+ 'mon-short-past-one' => '{0} понеділок тому',
+ 'mon-short-past-other' => '{0} понеділка тому',
'month-few' => '{0} місяці',
'month-future-few' => 'через {0} місяці',
'month-future-many' => 'через {0} місяців',
'month-future-one' => 'через {0} місяць',
'month-future-other' => 'через {0} місяця',
'month-many' => '{0} місяців',
- 'month-narrow-future-few' => '+{0} міс.',
- 'month-narrow-future-many' => '+{0} міс.',
- 'month-narrow-future-one' => '+{0} міс.',
- 'month-narrow-future-other' => '+{0} міс.',
- 'month-narrow-past-few' => '-{0} міс.',
- 'month-narrow-past-many' => '-{0} міс.',
- 'month-narrow-past-one' => '-{0} міс.',
- 'month-narrow-past-other' => '-{0} міс.',
+ 'month-narrow-future-few' => 'за {0} міс.',
+ 'month-narrow-future-many' => 'за {0} міс.',
+ 'month-narrow-future-one' => 'за {0} міс.',
+ 'month-narrow-future-other' => 'за {0} міс.',
+ 'month-narrow-past-few' => '{0} міс. тому',
+ 'month-narrow-past-many' => '{0} міс. тому',
+ 'month-narrow-past-one' => '{0} міс. тому',
+ 'month-narrow-past-other' => '{0} міс. тому',
'month-one' => '{0} місяць',
'month-other' => '{0} місяця',
'month-past-few' => '{0} місяці тому',
@@ -1335,14 +1432,14 @@ $timeUnits = array(
'quarter-future-many' => 'через {0} кварталів',
'quarter-future-one' => 'через {0} квартал',
'quarter-future-other' => 'через {0} кварталу',
- 'quarter-narrow-future-few' => '+{0} кв.',
- 'quarter-narrow-future-many' => '+{0} кв.',
- 'quarter-narrow-future-one' => '+{0} кв.',
- 'quarter-narrow-future-other' => '+{0} кв.',
- 'quarter-narrow-past-few' => '-{0} кв.',
- 'quarter-narrow-past-many' => '-{0} кв.',
- 'quarter-narrow-past-one' => '-{0} кв.',
- 'quarter-narrow-past-other' => '-{0} кв.',
+ 'quarter-narrow-future-few' => 'за {0} кв.',
+ 'quarter-narrow-future-many' => 'за {0} кв.',
+ 'quarter-narrow-future-one' => 'за {0} кв.',
+ 'quarter-narrow-future-other' => 'за {0} кв.',
+ 'quarter-narrow-past-few' => '{0} кв. тому',
+ 'quarter-narrow-past-many' => '{0} кв. тому',
+ 'quarter-narrow-past-one' => '{0} кв. тому',
+ 'quarter-narrow-past-other' => '{0} кв. тому',
'quarter-past-few' => '{0} квартали тому',
'quarter-past-many' => '{0} кварталів тому',
'quarter-past-one' => '{0} квартал тому',
@@ -1355,20 +1452,44 @@ $timeUnits = array(
'quarter-short-past-many' => '{0} кв. тому',
'quarter-short-past-one' => '{0} кв. тому',
'quarter-short-past-other' => '{0} кв. тому',
+ 'sat-future-few' => 'через {0} суботи',
+ 'sat-future-many' => 'через {0} субот',
+ 'sat-future-one' => 'через {0} суботу',
+ 'sat-future-other' => 'через {0} суботи',
+ 'sat-narrow-future-few' => 'через {0} суботи',
+ 'sat-narrow-future-many' => 'через {0} субот',
+ 'sat-narrow-future-one' => 'через {0} суботу',
+ 'sat-narrow-future-other' => 'через {0} суботи',
+ 'sat-narrow-past-few' => '{0} суботи тому',
+ 'sat-narrow-past-many' => '{0} субот тому',
+ 'sat-narrow-past-one' => '{0} суботу тому',
+ 'sat-narrow-past-other' => '{0} суботи тому',
+ 'sat-past-few' => '{0} суботи тому',
+ 'sat-past-many' => '{0} субот тому',
+ 'sat-past-one' => '{0} суботу тому',
+ 'sat-past-other' => '{0} суботи тому',
+ 'sat-short-future-few' => 'через {0} суботи',
+ 'sat-short-future-many' => 'через {0} субот',
+ 'sat-short-future-one' => 'через {0} суботу',
+ 'sat-short-future-other' => 'через {0} суботи',
+ 'sat-short-past-few' => '{0} суботи тому',
+ 'sat-short-past-many' => '{0} субот тому',
+ 'sat-short-past-one' => '{0} суботу тому',
+ 'sat-short-past-other' => '{0} суботи тому',
'second-few' => '{0} секунди',
'second-future-few' => 'через {0} секунди',
'second-future-many' => 'через {0} секунд',
'second-future-one' => 'через {0} секунду',
'second-future-other' => 'через {0} секунди',
'second-many' => '{0} секунд',
- 'second-narrow-future-few' => '+{0} с',
- 'second-narrow-future-many' => '+{0} с',
- 'second-narrow-future-one' => '+{0} с',
- 'second-narrow-future-other' => '+{0} с',
- 'second-narrow-past-few' => '-{0} с',
- 'second-narrow-past-many' => '-{0} с',
- 'second-narrow-past-one' => '-{0} с',
- 'second-narrow-past-other' => '-{0} с',
+ 'second-narrow-future-few' => 'за {0} с',
+ 'second-narrow-future-many' => 'за {0} с',
+ 'second-narrow-future-one' => 'за {0} с',
+ 'second-narrow-future-other' => 'за {0} с',
+ 'second-narrow-past-few' => '{0} с тому',
+ 'second-narrow-past-many' => '{0} с тому',
+ 'second-narrow-past-one' => '{0} с тому',
+ 'second-narrow-past-other' => '{0} с тому',
'second-one' => '{0} секунда',
'second-other' => '{0} секунди',
'second-past-few' => '{0} секунди тому',
@@ -1383,20 +1504,116 @@ $timeUnits = array(
'second-short-past-many' => '{0} с тому',
'second-short-past-one' => '{0} с тому',
'second-short-past-other' => '{0} с тому',
+ 'sun-future-few' => 'через {0} неділі',
+ 'sun-future-many' => 'через {0} неділь',
+ 'sun-future-one' => 'через {0} неділю',
+ 'sun-future-other' => 'через {0} неділі',
+ 'sun-narrow-future-few' => 'через {0} неділі',
+ 'sun-narrow-future-many' => 'через {0} неділь',
+ 'sun-narrow-future-one' => 'через {0} неділю',
+ 'sun-narrow-future-other' => 'через {0} неділі',
+ 'sun-narrow-past-few' => '{0} неділі тому',
+ 'sun-narrow-past-many' => '{0} неділь тому',
+ 'sun-narrow-past-one' => '{0} неділю тому',
+ 'sun-narrow-past-other' => '{0} неділі тому',
+ 'sun-past-few' => '{0} неділі тому',
+ 'sun-past-many' => '{0} неділь тому',
+ 'sun-past-one' => '{0} неділю тому',
+ 'sun-past-other' => '{0} неділі тому',
+ 'sun-short-future-few' => 'через {0} неділі',
+ 'sun-short-future-many' => 'через {0} неділь',
+ 'sun-short-future-one' => 'через {0} неділю',
+ 'sun-short-future-other' => 'через {0} неділі',
+ 'sun-short-past-few' => '{0} неділі тому',
+ 'sun-short-past-many' => '{0} неділь тому',
+ 'sun-short-past-one' => '{0} неділю тому',
+ 'sun-short-past-other' => '{0} неділі тому',
+ 'thu-future-few' => 'через {0} четверги',
+ 'thu-future-many' => 'через {0} четвергів',
+ 'thu-future-one' => 'через {0} четвер',
+ 'thu-future-other' => 'через {0} четверга',
+ 'thu-narrow-future-few' => 'через {0} четверги',
+ 'thu-narrow-future-many' => 'через {0} четвергів',
+ 'thu-narrow-future-one' => 'через {0} четвер',
+ 'thu-narrow-future-other' => 'через {0} четверга',
+ 'thu-narrow-past-few' => '{0} четверги тому',
+ 'thu-narrow-past-many' => '{0} четвергів тому',
+ 'thu-narrow-past-one' => '{0} четвер тому',
+ 'thu-narrow-past-other' => '{0} четверга тому',
+ 'thu-past-few' => '{0} четверги тому',
+ 'thu-past-many' => '{0} четвергів тому',
+ 'thu-past-one' => '{0} четвер тому',
+ 'thu-past-other' => '{0} четверга тому',
+ 'thu-short-future-few' => 'через {0} четверги',
+ 'thu-short-future-many' => 'через {0} четвергів',
+ 'thu-short-future-one' => 'через {0} четвер',
+ 'thu-short-future-other' => 'через {0} четверга',
+ 'thu-short-past-few' => '{0} четверги тому',
+ 'thu-short-past-many' => '{0} четвергів тому',
+ 'thu-short-past-one' => '{0} четвер тому',
+ 'thu-short-past-other' => '{0} четверга тому',
+ 'tue-future-few' => 'через {0} вівторки',
+ 'tue-future-many' => 'через {0} вівторків',
+ 'tue-future-one' => 'через {0} вівторок',
+ 'tue-future-other' => 'через {0} вівторка',
+ 'tue-narrow-future-few' => 'через {0} вівторки',
+ 'tue-narrow-future-many' => 'через {0} вівторків',
+ 'tue-narrow-future-one' => 'через {0} вівторок',
+ 'tue-narrow-future-other' => 'через {0} вівторка',
+ 'tue-narrow-past-few' => '{0} вівторки тому',
+ 'tue-narrow-past-many' => '{0} вівторків тому',
+ 'tue-narrow-past-one' => '{0} вівторок тому',
+ 'tue-narrow-past-other' => '{0} вівторка тому',
+ 'tue-past-few' => '{0} вівторки тому',
+ 'tue-past-many' => '{0} вівторків тому',
+ 'tue-past-one' => '{0} вівторок тому',
+ 'tue-past-other' => '{0} вівторка тому',
+ 'tue-short-future-few' => 'через {0} вівторки',
+ 'tue-short-future-many' => 'через {0} вівторків',
+ 'tue-short-future-one' => 'через {0} вівторок',
+ 'tue-short-future-other' => 'через {0} вівторка',
+ 'tue-short-past-few' => '{0} вівторки тому',
+ 'tue-short-past-many' => '{0} вівторків тому',
+ 'tue-short-past-one' => '{0} вівторок тому',
+ 'tue-short-past-other' => '{0} вівторка тому',
+ 'wed-future-few' => 'через {0} середи',
+ 'wed-future-many' => 'через {0} серед',
+ 'wed-future-one' => 'через {0} середу',
+ 'wed-future-other' => 'через {0} середи',
+ 'wed-narrow-future-few' => 'через {0} середи',
+ 'wed-narrow-future-many' => 'через {0} серед',
+ 'wed-narrow-future-one' => 'через {0} середу',
+ 'wed-narrow-future-other' => 'через {0} середи',
+ 'wed-narrow-past-few' => '{0} середи тому',
+ 'wed-narrow-past-many' => '{0} серед тому',
+ 'wed-narrow-past-one' => '{0} середу тому',
+ 'wed-narrow-past-other' => '{0} середи тому',
+ 'wed-past-few' => '{0} середи тому',
+ 'wed-past-many' => '{0} серед тому',
+ 'wed-past-one' => '{0} середу тому',
+ 'wed-past-other' => '{0} середи тому',
+ 'wed-short-future-few' => 'через {0} середи',
+ 'wed-short-future-many' => 'через {0} серед',
+ 'wed-short-future-one' => 'через {0} середу',
+ 'wed-short-future-other' => 'через {0} середи',
+ 'wed-short-past-few' => '{0} середи тому',
+ 'wed-short-past-many' => '{0} серед тому',
+ 'wed-short-past-one' => '{0} середу тому',
+ 'wed-short-past-other' => '{0} середи тому',
'week-few' => '{0} тижні',
'week-future-few' => 'через {0} тижні',
'week-future-many' => 'через {0} тижнів',
'week-future-one' => 'через {0} тиждень',
'week-future-other' => 'через {0} тижня',
'week-many' => '{0} тижнів',
- 'week-narrow-future-few' => '+{0} тиж.',
- 'week-narrow-future-many' => '+{0} тиж.',
- 'week-narrow-future-one' => '+{0} тиж.',
- 'week-narrow-future-other' => '+{0} тиж.',
- 'week-narrow-past-few' => '-{0} тиж.',
- 'week-narrow-past-many' => '-{0} тиж.',
- 'week-narrow-past-one' => '-{0} тиж.',
- 'week-narrow-past-other' => '-{0} тиж.',
+ 'week-narrow-future-few' => 'за {0} тиж.',
+ 'week-narrow-future-many' => 'за {0} тиж.',
+ 'week-narrow-future-one' => 'за {0} тиж.',
+ 'week-narrow-future-other' => 'за {0} тиж.',
+ 'week-narrow-past-few' => '{0} тиж. тому',
+ 'week-narrow-past-many' => '{0} тиж. тому',
+ 'week-narrow-past-one' => '{0} тиж. тому',
+ 'week-narrow-past-other' => '{0} тиж. тому',
'week-one' => '{0} тиждень',
'week-other' => '{0} тижня',
'week-past-few' => '{0} тижні тому',
@@ -1417,14 +1634,14 @@ $timeUnits = array(
'year-future-one' => 'через {0} рік',
'year-future-other' => 'через {0} року',
'year-many' => '{0} років',
- 'year-narrow-future-few' => '+{0} р.',
- 'year-narrow-future-many' => '+{0} р.',
- 'year-narrow-future-one' => '+{0} р.',
- 'year-narrow-future-other' => '+{0} р.',
- 'year-narrow-past-few' => '-{0} р.',
- 'year-narrow-past-many' => '-{0} р.',
- 'year-narrow-past-one' => '-{0} р.',
- 'year-narrow-past-other' => '-{0} р.',
+ 'year-narrow-future-few' => 'за {0} р.',
+ 'year-narrow-future-many' => 'за {0} р.',
+ 'year-narrow-future-one' => 'за {0} р.',
+ 'year-narrow-future-other' => 'за {0} р.',
+ 'year-narrow-past-few' => '{0} р. тому',
+ 'year-narrow-past-many' => '{0} р. тому',
+ 'year-narrow-past-one' => '{0} р. тому',
+ 'year-narrow-past-other' => '{0} р. тому',
'year-one' => '{0} рік',
'year-other' => '{0} року',
'year-past-few' => '{0} роки тому',
@@ -1439,4 +1656,4 @@ $timeUnits = array(
'year-short-past-many' => '{0} р. тому',
'year-short-past-one' => '{0} р. тому',
'year-short-past-other' => '{0} р. тому',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesUr.php b/MLEB/cldr/CldrNames/CldrNamesUr.php
index efff4d62..8ba6f72c 100644
--- a/MLEB/cldr/CldrNames/CldrNamesUr.php
+++ b/MLEB/cldr/CldrNames/CldrNamesUr.php
@@ -1,51 +1,89 @@
<?php
-$languageNames = array(
+$languageNames = [
+ 'aa' => 'افار',
'ab' => 'ابقازیان',
+ 'ace' => 'اچائینیز',
'ach' => 'اکولی',
- 'af' => 'ایفریکانز',
+ 'ada' => 'ادانگمے',
+ 'ady' => 'ادیگھے',
+ 'af' => 'افریقی',
'agq' => 'اغم',
+ 'ain' => 'اینو',
'ak' => 'اکان',
+ 'ale' => 'الیوت',
+ 'alt' => 'جنوبی الٹائی',
'am' => 'امہاری',
+ 'an' => 'اراگونیز',
+ 'anp' => 'انگیکا',
'ar' => 'عربی',
'ar-001' => 'ماڈرن اسٹینڈرڈ عربی',
'arn' => 'ماپوچے',
+ 'arp' => 'اراپاہو',
'as' => 'آسامی',
'asa' => 'آسو',
+ 'ast' => 'اسٹوریائی',
+ 'av' => 'اواری',
+ 'awa' => 'اوادھی',
'ay' => 'ایمارا',
- 'az' => 'آزربائیجانی',
+ 'az' => 'آذربائیجانی',
+ 'az-arab' => 'آزربائیجانی (عربی)',
'ba' => 'باشکیر',
+ 'ban' => 'بالینیز',
+ 'bas' => 'باسا',
'be' => 'بیلاروسی',
'bem' => 'بیمبا',
'bez' => 'بینا',
'bg' => 'بلغاری',
+ 'bgn' => 'مغربی بلوچی',
+ 'bho' => 'بھوجپوری',
+ 'bi' => 'بسلاما',
+ 'bin' => 'بینی',
+ 'bla' => 'سکسیکا',
'bm' => 'بمبارا',
'bn' => 'بنگالی',
'bo' => 'تبتی',
'br' => 'بریٹن',
'brx' => 'بوڈو',
- 'bs' => 'بوسنی',
+ 'bs' => 'بوسنیائی',
+ 'bug' => 'بگینیز',
+ 'byn' => 'بلین',
'ca' => 'کیٹالان',
+ 'ce' => 'چیچن',
+ 'ceb' => 'سیبوآنو',
'cgg' => 'چیگا',
+ 'ch' => 'چیمارو',
+ 'chk' => 'چوکیز',
+ 'chm' => 'ماری',
+ 'cho' => 'چاکٹاؤ',
'chr' => 'چیروکی',
- 'ckb' => 'سورانی کردش',
+ 'chy' => 'چینّے',
+ 'ckb' => 'سینٹرل کردش',
'co' => 'کوراسیکن',
+ 'crs' => 'سیسلوا کریولے فرانسیسی',
'cs' => 'چیک',
+ 'cu' => 'چرچ سلاوک',
+ 'cv' => 'چوواش',
'cy' => 'ویلش',
'da' => 'ڈینش',
+ 'dak' => 'ڈاکوٹا',
+ 'dar' => 'درگوا',
'dav' => 'تائتا',
'de' => 'جرمن',
'de-at' => 'آسٹریائی جرمن',
'de-ch' => 'سوئس ہائی جرمن',
+ 'dgr' => 'دوگریب',
'dje' => 'زرما',
'dsb' => 'ذیلی سربیائی',
'dua' => 'دوالا',
'dv' => 'ڈیویہی',
'dyo' => 'جولا فونيا',
'dz' => 'ژونگکھا',
+ 'dzg' => 'دزاگا',
'ebu' => 'امبو',
'ee' => 'ایو',
'efi' => 'ایفِک',
+ 'eka' => 'ایکاجوی',
'el' => 'یونانی',
'en' => 'انگریزی',
'en-au' => 'آسٹریلیائی انگریزی',
@@ -59,141 +97,234 @@ $languageNames = array(
'es-mx' => 'میکسیکن ہسپانوی',
'et' => 'اسٹونین',
'eu' => 'باسکی',
+ 'ewo' => 'ایوانڈو',
'fa' => 'فارسی',
+ 'ff' => 'فولہ',
'fi' => 'فینیش',
'fil' => 'فلیپینو',
'fj' => 'فجی',
'fo' => 'فیروئیز',
+ 'fon' => 'فون',
'fr' => 'فرانسیسی',
'fr-ca' => 'کینیڈین فرانسیسی',
'fr-ch' => 'سوئس فرینچ',
+ 'frc' => 'کاجن فرانسیسی',
+ 'fur' => 'فریولیائی',
'fy' => 'مغربی فریسیئن',
'ga' => 'آئیرِش',
'gaa' => 'گا',
'gag' => 'غاغاوز',
- 'gd' => 'سکاٹ گیلِک',
+ 'gan' => 'gan',
+ 'gd' => 'سکاٹش گیلک',
+ 'gez' => 'گیز',
+ 'gil' => 'گلبرتیز',
'gl' => 'گالیشیائی',
'gn' => 'گُارانی',
+ 'gor' => 'گورانٹالو',
'gsw' => 'سوئس جرمن',
'gu' => 'گجراتی',
'guz' => 'گسی',
'gv' => 'مینکس',
+ 'gwi' => 'گوئچ ان',
'ha' => 'ہؤسا',
+ 'hak' => 'hak',
'haw' => 'ہوائی',
'he' => 'عبرانی',
'hi' => 'ہندی',
+ 'hil' => 'ہالیگینون',
+ 'hmn' => 'ہمانگ',
'hr' => 'کراتی',
'hsb' => 'اپر سربیائی',
+ 'hsn' => 'hsn',
'ht' => 'ہیتی',
'hu' => 'ہنگیرین',
- 'hy' => 'ارمینی',
+ 'hup' => 'ہیوپا',
+ 'hy' => 'آرمینیائی',
+ 'hz' => 'ہریرو',
'ia' => 'بین لسانیات',
+ 'iba' => 'ایبان',
+ 'ibb' => 'ابی بیو',
'id' => 'انڈونیثیائی',
'ig' => 'اِگبو',
'ii' => 'سچوان ای',
+ 'ilo' => 'ایلوکو',
+ 'inh' => 'انگوش',
+ 'io' => 'ایڈو',
'is' => 'آئس لینڈک',
'it' => 'اطالوی',
'iu' => 'اینُکٹیٹٹ',
'ja' => 'جاپانی',
+ 'jbo' => 'لوجبان',
'jgo' => 'نگومبا',
'jmc' => 'ماشیم',
'jv' => 'جاوی',
- 'ka' => 'جارجی',
+ 'ka' => 'جارجیائی',
'kab' => 'قبائلی',
+ 'kac' => 'کاچن',
+ 'kaj' => 'جے جو',
'kam' => 'کامبا',
- 'kde' => 'ماكونده',
- 'kea' => 'كابويرديانو',
+ 'kbd' => 'کبارڈین',
+ 'kcg' => 'تیاپ',
+ 'kde' => 'ماکونده',
+ 'kea' => 'کابويرديانو',
+ 'kfo' => 'کورو',
'kg' => 'کانگو',
- 'khq' => 'كويرا شيني',
+ 'kha' => 'کھاسی',
+ 'khq' => 'کويرا شيني',
'ki' => 'کیکویو',
+ 'kj' => 'کونیاما',
'kk' => 'قزاخ',
- 'kl' => 'كالاليست',
- 'kln' => 'كالينجين',
+ 'kkj' => 'کاکو',
+ 'kl' => 'کالاليست',
+ 'kln' => 'کالينجين',
'km' => 'خمیر',
+ 'kmb' => 'کیمبونڈو',
'kn' => 'کنّاڈا',
'ko' => 'کوریائی',
'koi' => 'کومی پرمیاک',
'kok' => 'کونکنی',
+ 'kpe' => 'کیپیلّے',
+ 'kr' => 'کنوری',
+ 'krc' => 'کراچے بالکر',
+ 'krl' => 'کیرلین',
+ 'kru' => 'کوروکھ',
'ks' => 'کشمیری',
'ksb' => 'شامبالا',
'ksf' => 'بافيا',
+ 'ksh' => 'کولوگنیائی',
'ku' => 'کردش',
+ 'kum' => 'کومیک',
+ 'kv' => 'کومی',
'kw' => 'کورنش',
'ky' => 'کرغیزی',
'la' => 'لاطینی',
+ 'lad' => 'لیڈینو',
'lag' => 'لانگی',
- 'lb' => 'لگژمبرگش',
+ 'lb' => 'لکسمبرگیش',
+ 'lez' => 'لیزگیان',
'lg' => 'گینڈا',
+ 'li' => 'لیمبرگش',
'lkt' => 'لاکوٹا',
'ln' => 'لِنگَلا',
'lo' => 'لاؤ',
+ 'lou' => 'لوزیانا کریول',
'loz' => 'لوزی',
- 'lt' => 'لتھُواینین',
- 'lu' => 'لبا-كاتانجا',
+ 'lrc' => 'شمالی لری',
+ 'lt' => 'لیتھوینین',
+ 'lu' => 'لبا-کاتانجا',
'lua' => 'لیوبا لولوآ',
+ 'lun' => 'لونڈا',
'luo' => 'لو',
+ 'lus' => 'میزو',
'luy' => 'لویا',
'lv' => 'لیٹوین',
- 'mas' => 'ماسای',
+ 'mad' => 'مدورسی',
+ 'mag' => 'مگاہی',
+ 'mai' => 'میتھیلی',
+ 'mak' => 'مکاسر',
+ 'mas' => 'مسائی',
+ 'mdf' => 'موکشا',
+ 'men' => 'میندے',
'mer' => 'میرو',
'mfe' => 'موریسیین',
'mg' => 'ملاگاسی',
'mgh' => 'ماخاوا-ميتو',
'mgo' => 'میٹا',
+ 'mh' => 'مارشلیز',
'mi' => 'ماؤری',
+ 'mic' => 'مکمیک',
+ 'min' => 'منانگکباؤ',
'mk' => 'مقدونیائی',
'ml' => 'مالایالم',
- 'mn' => 'منگؤلی',
+ 'mn' => 'منگولین',
+ 'mni' => 'منی پوری',
'moh' => 'موہاک',
+ 'mos' => 'موسی',
'mr' => 'مراٹهی',
- 'ms' => 'مالائی',
+ 'ms' => 'مالے',
'mt' => 'مالٹی',
'mua' => 'منڈانگ',
+ 'mul' => 'متعدد زبانیں',
+ 'mus' => 'کریک',
+ 'mwl' => 'میرانڈیز',
'my' => 'برمی',
+ 'myv' => 'ارزیا',
+ 'mzn' => 'مزندرانی',
+ 'na' => 'ناؤرو',
+ 'nan' => 'nan',
+ 'nap' => 'نیاپولیٹن',
'naq' => 'ناما',
'nb' => 'نارویجین بوکمل',
'nd' => 'شمالی دبیل',
+ 'nds' => 'ادنی جرمن',
+ 'nds-nl' => 'ادنی سیکسن',
'ne' => 'نیپالی',
+ 'new' => 'نیواری',
+ 'ng' => 'نڈونگا',
+ 'nia' => 'نیاس',
+ 'niu' => 'نیویائی',
'nl' => 'ڈچ',
'nl-be' => 'فلیمِش',
- 'nmg' => 'كوايسو',
- 'nn' => 'نورویجینی نینورسک',
+ 'nmg' => 'کوايسو',
+ 'nn' => 'نارویجین نینورسک',
+ 'nnh' => 'نگیمبون',
'no' => 'نارویجین',
+ 'nog' => 'نوگائی',
'nqo' => 'اینکو',
+ 'nr' => 'جنوبی نڈیبیلی',
'nso' => 'شمالی سوتھو',
'nus' => 'نویر',
+ 'nv' => 'نواجو',
'ny' => 'نیانجا',
'nyn' => 'نینکول',
- 'oc' => 'آكسیٹان',
+ 'oc' => 'آکسیٹان',
'om' => 'اورومو',
- 'or' => 'اورِیا',
+ 'or' => 'اڑیہ',
'os' => 'اوسیٹک',
'pa' => 'پنجابی',
- 'pl' => 'پولستانی',
+ 'pag' => 'پنگاسنان',
+ 'pam' => 'پامپنگا',
+ 'pap' => 'پاپیامینٹو',
+ 'pau' => 'پالاون',
+ 'pcm' => 'نائجیریائی پڈگن',
+ 'pl' => 'پولش',
+ 'prg' => 'پارسی',
'ps' => 'پشتو',
'pt' => 'پُرتگالی',
'pt-br' => 'برازیلی پرتگالی',
'pt-pt' => 'یورپی پرتگالی',
'qu' => 'کویچوآ',
- 'quc' => 'كيشی',
+ 'quc' => 'کيشی',
+ 'rap' => 'رپانوی',
+ 'rar' => 'راروتونگان',
'rm' => 'رومانش',
'rn' => 'رونڈی',
'ro' => 'رومینین',
'ro-md' => 'مالدووا',
'rof' => 'رومبو',
'ru' => 'روسی',
+ 'rup' => 'ارومانی',
'rw' => 'کینیاروانڈا',
'rwk' => 'روا',
- 'sa' => 'سَنسکرِت',
+ 'sa' => 'سنسکرت',
+ 'sad' => 'سنڈاوے',
+ 'sah' => 'ساکھا',
'saq' => 'سامبورو',
+ 'sat' => 'سنتالی',
+ 'sba' => 'نگامبے',
'sbp' => 'سانگو',
+ 'sc' => 'سردینین',
+ 'scn' => 'سیسیلین',
+ 'sco' => 'سکاٹ',
'sd' => 'سندھی',
+ 'sdh' => 'جنوبی کرد',
'se' => 'شمالی سامی',
'seh' => 'سینا',
- 'ses' => 'كويرابورو سينی',
- 'sg' => 'سانجو',
+ 'ses' => 'کويرابورو سينی',
+ 'sg' => 'ساںغو',
'sh' => 'سربو-کروئیشین',
'shi' => 'تشلحيت',
+ 'shn' => 'شان',
'si' => 'سنہالا',
'sk' => 'سلوواک',
'sl' => 'سلووینیائی',
@@ -203,22 +334,30 @@ $languageNames = array(
'smn' => 'اناری سامی',
'sms' => 'سکولٹ سامی',
'sn' => 'شونا',
+ 'snk' => 'سوننکے',
'so' => 'صومالی',
'sq' => 'البانی',
- 'sr' => 'صربی',
+ 'sr' => 'سربین',
+ 'srn' => 'سرانن ٹونگو',
'ss' => 'سواتی',
+ 'ssy' => 'ساہو',
'st' => 'جنوبی سوتھو',
'su' => 'سنڈانیز',
+ 'suk' => 'سکوما',
'sv' => 'سویڈش',
'sw' => 'سواحلی',
- 'swc' => 'کانگو سواحلی',
+ 'sw-cd' => 'کانگو سواحلی',
+ 'swb' => 'کوموریائی',
+ 'syr' => 'سریانی',
'ta' => 'تمل',
'te' => 'تیلگو',
+ 'tem' => 'ٹمنے',
'teo' => 'تیسو',
'tet' => 'ٹیٹم',
'tg' => 'تاجک',
'th' => 'تھائی',
'ti' => 'ٹگرینیا',
+ 'tig' => 'ٹگرے',
'tk' => 'ترکمان',
'tl' => 'ٹیگا لوگ',
'tlh' => 'کلنگن',
@@ -226,36 +365,54 @@ $languageNames = array(
'to' => 'ٹونگن',
'tpi' => 'ٹوک پِسِن',
'tr' => 'ترکی',
+ 'trv' => 'ٹوروکو',
'ts' => 'زونگا',
'tt' => 'تاتار',
'tum' => 'ٹمبوکا',
+ 'tvl' => 'تووالو',
'tw' => 'توی',
'twq' => 'تاساواق',
'ty' => 'تاہیتی',
+ 'tyv' => 'تووینین',
'tzm' => 'سینٹرل ایٹلس ٹمازائٹ',
+ 'udm' => 'ادمورت',
'ug' => 'یوئگہر',
'uk' => 'یوکرینیائی',
+ 'umb' => 'اومبوندو',
'und' => 'نامعلوم زبان',
'ur' => 'اردو',
'uz' => 'ازبیک',
'vai' => 'وائی',
've' => 'وینڈا',
'vi' => 'ویتنامی',
+ 'vo' => 'وولاپوک',
'vun' => 'ونجو',
+ 'wa' => 'والون',
+ 'wae' => 'والسر',
+ 'wal' => 'وولایتا',
+ 'war' => 'وارے',
+ 'wbp' => 'وارلپیری',
'wo' => 'وولوف',
+ 'wuu' => 'wuu',
+ 'xal' => 'کالمیک',
'xh' => 'ژوسا',
'xog' => 'سوگا',
+ 'yav' => 'یانگبین',
+ 'ybb' => 'یمبا',
'yi' => 'یدش',
'yo' => 'یوروبا',
+ 'yue' => 'کینٹونیز',
'zgh' => 'اسٹینڈرڈ مراقشی تمازیقی',
'zh' => 'چینی',
'zh-hans' => 'چینی (آسان کردہ)',
'zh-hant' => 'روایتی چینی',
'zu' => 'زولو',
+ 'zun' => 'زونی',
'zxx' => 'کوئی لسانی مواد نہیں',
-);
+ 'zza' => 'زازا',
+];
-$currencyNames = array(
+$currencyNames = [
'AED' => 'متحدہ عرب اماراتی درہم',
'AFN' => 'افغان افغانی',
'ALL' => 'البانیا کا لیک',
@@ -279,12 +436,14 @@ $currencyNames = array(
'BSD' => 'بہامانی ڈالر',
'BTN' => 'بھوٹانی گُلٹرم',
'BWP' => 'بوتسوانا کا پولا',
- 'BYR' => 'بیلاروسی روبل',
- 'BZD' => 'بیلائز ڈالر',
+ 'BYN' => 'بیلاروسی روبل',
+ 'BYR' => 'بیلاروسی روبل (۲۰۰۰–۲۰۱۶)',
+ 'BZD' => 'بیلیز ڈالر',
'CAD' => 'کنیڈین ڈالر',
'CDF' => 'کانگولیز فرانک',
'CHF' => 'سوئس فرانکس',
'CLP' => 'چلّین پیسہ',
+ 'CNH' => 'چینی یوآن (آف شور)',
'CNY' => 'چینی یوآن',
'COP' => 'کولمبین پیسہ',
'CRC' => 'کوسٹا ریکا کا کولن',
@@ -348,10 +507,11 @@ $currencyNames = array(
'MDL' => 'مالدووی لیو',
'MGA' => 'ملاگاسی اریاری',
'MKD' => 'مقدونیائی دینار',
- 'MMK' => 'میانما کیاٹ',
+ 'MMK' => 'میانمار کیاٹ',
'MNT' => 'منگولیائی ٹگرِ',
'MOP' => 'میکانیز پٹاکا',
- 'MRO' => 'موریطانیائی اوگوئیا',
+ 'MRO' => 'موریطانیائی اوگوئیا (1973–2017)',
+ 'MRU' => 'موریطانیائی اوگوئیا',
'MUR' => 'ماریشس کا روپیہ',
'MVR' => 'مالدیپ کا روفیہ',
'MWK' => 'ملاوی کواچا',
@@ -366,7 +526,7 @@ $currencyNames = array(
'NZD' => 'نیوزی لینڈ ڈالر',
'OMR' => 'عمانی ریال',
'PAB' => 'پنامہ کا بالبوآ',
- 'PEN' => 'پیروین نیووسول',
+ 'PEN' => 'پیرو نیووسول',
'PGK' => 'پاپوآ نیو گنی کا کینا',
'PHP' => 'فلپائینی پیسہ',
'PKR' => 'پاکستانی روپیہ',
@@ -390,7 +550,8 @@ $currencyNames = array(
'SOS' => 'صومالی شلنگ',
'SRD' => 'سورینامی ڈالر',
'SSP' => 'جنوبی سوڈانی پاؤنڈ',
- 'STD' => 'ساؤ ٹوم اور پرنسپے ڈوبرا',
+ 'STD' => 'ساؤ ٹوم اور پرنسپے ڈوبرا (1977–2017)',
+ 'STN' => 'ساؤ ٹوم اور پرنسپے ڈوبرا',
'SYP' => 'شامی پونڈ',
'SZL' => 'سوازی لیلانجینی',
'THB' => 'تھائی باہت',
@@ -408,22 +569,23 @@ $currencyNames = array(
'UYU' => 'یوروگویان پیسو',
'UZS' => 'ازبکستان سوم',
'VEB' => 'وینزویلا بولیور (1871–2008)',
- 'VEF' => 'وینزویلا بولیور',
+ 'VEF' => 'وینزویلا بولیور (2008–2018)',
+ 'VES' => 'وینزویلا بولیور',
'VND' => 'ویتنامی ڈانگ',
'VUV' => 'وینوواتو واتو',
'WST' => 'ساموآ کا ٹالا',
- 'XAF' => 'CFA فرانک BEAC',
+ 'XAF' => 'وسطی افریقی [CFA] فرانک',
'XCD' => 'مشرقی کریبیا کا ڈالر',
- 'XOF' => 'CFA فرانک BCEAO',
+ 'XOF' => 'مغربی افریقی [CFA] فرانک',
'XPF' => 'CFP فرانک',
'XXX' => 'نامعلوم کرنسی',
'YER' => 'یمنی ریال',
'ZAR' => 'جنوبی افریقی رانڈ',
'ZMK' => 'زامبیائی کواچا (1968–2012)',
'ZMW' => 'زامبیائی کواچا',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'AED' => 'AED',
'AFN' => 'AFN',
'ALL' => 'ALL',
@@ -447,12 +609,14 @@ $currencySymbols = array(
'BSD' => 'BSD',
'BTN' => 'BTN',
'BWP' => 'BWP',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CA$',
'CDF' => 'CDF',
'CHF' => 'CHF',
'CLP' => 'CLP',
+ 'CNH' => 'CNH',
'CNY' => 'CN¥',
'COP' => 'COP',
'CRC' => 'CRC',
@@ -516,6 +680,7 @@ $currencySymbols = array(
'MNT' => 'MNT',
'MOP' => 'MOP',
'MRO' => 'MRO',
+ 'MRU' => 'MRU',
'MUR' => 'MUR',
'MVR' => 'MVR',
'MWK' => 'MWK',
@@ -553,6 +718,7 @@ $currencySymbols = array(
'SRD' => 'SRD',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'STN',
'SYP' => 'SYP',
'SZL' => 'SZL',
'THB' => '฿',
@@ -570,6 +736,7 @@ $currencySymbols = array(
'UYU' => 'UYU',
'UZS' => 'UZS',
'VEF' => 'VEF',
+ 'VES' => 'VES',
'VND' => '₫',
'VUV' => 'VUV',
'WST' => 'WST',
@@ -580,9 +747,9 @@ $currencySymbols = array(
'YER' => 'YER',
'ZAR' => 'ZAR',
'ZMW' => 'ZMW',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'اسینشن آئلینڈ',
'AD' => 'انڈورا',
'AE' => 'متحدہ عرب امارات',
@@ -591,7 +758,6 @@ $countryNames = array(
'AI' => 'انگوئیلا',
'AL' => 'البانیہ',
'AM' => 'آرمینیا',
- 'AN' => 'نیدرلینڈز انٹیلیز',
'AO' => 'انگولا',
'AQ' => 'انٹارکٹیکا',
'AR' => 'ارجنٹینا',
@@ -600,7 +766,7 @@ $countryNames = array(
'AU' => 'آسٹریلیا',
'AW' => 'اروبا',
'AX' => 'آلینڈ آئلینڈز',
- 'AZ' => 'آذربائجان',
+ 'AZ' => 'آذربائیجان',
'BA' => 'بوسنیا اور ہرزیگووینا',
'BB' => 'بارباڈوس',
'BD' => 'بنگلہ دیش',
@@ -612,7 +778,7 @@ $countryNames = array(
'BJ' => 'بینن',
'BL' => 'سینٹ برتھلیمی',
'BM' => 'برمودا',
- 'BN' => 'برونئی',
+ 'BN' => 'برونائی',
'BO' => 'بولیویا',
'BQ' => 'کریبیائی نیدرلینڈز',
'BR' => 'برازیل',
@@ -639,15 +805,15 @@ $countryNames = array(
'CU' => 'کیوبا',
'CV' => 'کیپ ورڈی',
'CW' => 'کیوراکاؤ',
- 'CX' => 'کرسمس آئلینڈ',
+ 'CX' => 'جزیرہ کرسمس',
'CY' => 'قبرص',
- 'CZ' => 'چیک جمہوریہ',
+ 'CZ' => 'چیکیا',
'DE' => 'جرمنی',
'DG' => 'ڈائجو گارسیا',
'DJ' => 'جبوتی',
'DK' => 'ڈنمارک',
'DM' => 'ڈومنیکا',
- 'DO' => 'ڈومنیکن جمہوریہ',
+ 'DO' => 'جمہوریہ ڈومينيکن',
'DZ' => 'الجیریا',
'EA' => 'سیئوٹا اور میلیلا',
'EC' => 'ایکواڈور',
@@ -658,11 +824,12 @@ $countryNames = array(
'ES' => 'ہسپانیہ',
'ET' => 'ایتھوپیا',
'EU' => 'یوروپی یونین',
+ 'EZ' => 'یوروزون',
'FI' => 'فن لینڈ',
'FJ' => 'فجی',
'FK' => 'فاکلینڈ جزائر',
'FM' => 'مائکرونیشیا',
- 'FO' => 'فیرو آئلینڈز',
+ 'FO' => 'جزائر فارو',
'FR' => 'فرانس',
'GA' => 'گیبون',
'GB' => 'یو کے',
@@ -673,21 +840,21 @@ $countryNames = array(
'GH' => 'گھانا',
'GI' => 'جبل الطارق',
'GL' => 'گرین لینڈ',
- 'GM' => 'گامبیا',
+ 'GM' => 'گیمبیا',
'GN' => 'گنی',
'GP' => 'گواڈیلوپ',
'GQ' => 'استوائی گیانا',
'GR' => 'یونان',
'GS' => 'جنوبی جارجیا اور جنوبی سینڈوچ جزائر',
'GT' => 'گواٹے مالا',
- 'GU' => 'گوآم',
+ 'GU' => 'گوام',
'GW' => 'گنی بساؤ',
'GY' => 'گیانا',
'HK' => 'ہانگ کانگ',
- 'HM' => 'ہیئرڈ آئلینڈ اور میکڈونالڈ آئلینڈز',
+ 'HM' => 'ہیرڈ جزیرہ و میکڈولینڈ جزائر',
'HN' => 'ہونڈاروس',
'HR' => 'کروشیا',
- 'HT' => 'ہیتی',
+ 'HT' => 'ہیٹی',
'HU' => 'ہنگری',
'IC' => 'کینری آئلینڈز',
'ID' => 'انڈونیشیا',
@@ -695,7 +862,7 @@ $countryNames = array(
'IL' => 'اسرائیل',
'IM' => 'آئل آف مین',
'IN' => 'بھارت',
- 'IO' => 'برطانوی ہندوستانی سمندری خطہ',
+ 'IO' => 'برطانوی بحر ہند کا علاقہ',
'IQ' => 'عراق',
'IR' => 'ایران',
'IS' => 'آئس لینڈ',
@@ -722,11 +889,11 @@ $countryNames = array(
'LK' => 'سری لنکا',
'LR' => 'لائبیریا',
'LS' => 'لیسوتھو',
- 'LT' => 'لتھوانیا',
- 'LU' => 'لگژمبرگ',
+ 'LT' => 'لیتھونیا',
+ 'LU' => 'لکسمبرگ',
'LV' => 'لٹویا',
'LY' => 'لیبیا',
- 'MA' => 'مراقش',
+ 'MA' => 'مراکش',
'MC' => 'موناکو',
'MD' => 'مالدووا',
'ME' => 'مونٹے نیگرو',
@@ -747,7 +914,7 @@ $countryNames = array(
'MV' => 'مالدیپ',
'MW' => 'ملاوی',
'MX' => 'میکسیکو',
- 'MY' => 'ملیشیا',
+ 'MY' => 'ملائشیا',
'MZ' => 'موزمبیق',
'NA' => 'نامیبیا',
'NC' => 'نیو کلیڈونیا',
@@ -760,13 +927,13 @@ $countryNames = array(
'NP' => 'نیپال',
'NR' => 'نؤرو',
'NU' => 'نیئو',
- 'NZ' => 'نیوزی ینڈ',
+ 'NZ' => 'نیوزی لینڈ',
'OM' => 'عمان',
- 'PA' => 'پنامہ',
+ 'PA' => 'پانامہ',
'PE' => 'پیرو',
'PF' => 'فرانسیسی پولینیشیا',
'PG' => 'پاپوآ نیو گنی',
- 'PH' => 'فلپائنی',
+ 'PH' => 'فلپائن',
'PK' => 'پاکستان',
'PL' => 'پولینڈ',
'PM' => 'سینٹ پیئر اور میکلیئون',
@@ -779,7 +946,7 @@ $countryNames = array(
'QA' => 'قطر',
'QO' => 'بیرونی اوشیانیا',
'RE' => 'ری یونین',
- 'RO' => 'رومانیا',
+ 'RO' => 'رومانیہ',
'RS' => 'سربیا',
'RU' => 'روس',
'RW' => 'روانڈا',
@@ -793,7 +960,7 @@ $countryNames = array(
'SI' => 'سلووینیا',
'SJ' => 'سوالبرڈ اور جان ماین',
'SK' => 'سلوواکیہ',
- 'SL' => 'سیئر لیون',
+ 'SL' => 'سیرالیون',
'SM' => 'سان مارینو',
'SN' => 'سینیگل',
'SO' => 'صومالیہ',
@@ -814,7 +981,7 @@ $countryNames = array(
'TK' => 'ٹوکیلاؤ',
'TL' => 'تیمور لیسٹ',
'TM' => 'ترکمانستان',
- 'TN' => 'تیونیسیا',
+ 'TN' => 'تونس',
'TO' => 'ٹونگا',
'TR' => 'ترکی',
'TT' => 'ترینیداد اور ٹوباگو',
@@ -822,12 +989,13 @@ $countryNames = array(
'TW' => 'تائیوان',
'TZ' => 'تنزانیہ',
'UA' => 'یوکرین',
- 'UG' => 'یوگانڈا',
+ 'UG' => 'یوگنڈا',
'UM' => 'امریکہ سے باہر کے چھوٹے جزائز',
+ 'UN' => 'اقوام متحدہ',
'US' => 'امریکا',
'UY' => 'یوروگوئے',
'UZ' => 'ازبکستان',
- 'VA' => 'واٹیکن سٹی',
+ 'VA' => 'ویٹیکن سٹی',
'VC' => 'سینٹ ونسنٹ اور گرینیڈائنز',
'VE' => 'وینزوئیلا',
'VG' => 'برٹش ورجن آئلینڈز',
@@ -842,12 +1010,14 @@ $countryNames = array(
'ZA' => 'جنوبی افریقہ',
'ZM' => 'زامبیا',
'ZW' => 'زمبابوے',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-one' => '{0} صدی',
+ 'century-other' => '{0} صدیاں',
'day-future-one' => '{0} دن میں',
'day-future-other' => '{0} دنوں میں',
- 'day-narrow-future-one' => '{0} دنوں میں',
+ 'day-narrow-future-one' => '{0} دن میں',
'day-narrow-future-other' => '{0} دنوں میں',
'day-narrow-past-one' => '{0} دن پہلے',
'day-narrow-past-other' => '{0} دن پہلے',
@@ -859,9 +1029,21 @@ $timeUnits = array(
'day-short-future-other' => '{0} دنوں میں',
'day-short-past-one' => '{0} دن پہلے',
'day-short-past-other' => '{0} دنوں پہلے',
- 'hour-future-one' => '{0} گھنٹہ میں',
+ 'fri-future-one' => '{0} جمعہ میں',
+ 'fri-future-other' => '{0} جمعہ میں',
+ 'fri-narrow-future-one' => '{0} جمعہ میں',
+ 'fri-narrow-future-other' => '{0} جمعہ میں',
+ 'fri-narrow-past-one' => '{0} جمعہ قبل',
+ 'fri-narrow-past-other' => '{0} جمعہ قبل',
+ 'fri-past-one' => '{0} جمعہ قبل',
+ 'fri-past-other' => '{0} جمعہ قبل',
+ 'fri-short-future-one' => '{0} جمعہ میں',
+ 'fri-short-future-other' => '{0} جمعہ میں',
+ 'fri-short-past-one' => '{0} جمعہ قبل',
+ 'fri-short-past-other' => '{0} جمعہ قبل',
+ 'hour-future-one' => '{0} گھنٹے میں',
'hour-future-other' => '{0} گھنٹے میں',
- 'hour-narrow-future-one' => '{0} گھنٹہ میں',
+ 'hour-narrow-future-one' => '{0} گھنٹے میں',
'hour-narrow-future-other' => '{0} گھنٹوں میں',
'hour-narrow-past-one' => '{0} گھنٹہ پہلے',
'hour-narrow-past-other' => '{0} گھنٹے پہلے',
@@ -891,10 +1073,22 @@ $timeUnits = array(
'minute-short-future-other' => '{0} منٹ میں',
'minute-short-past-one' => '{0} منٹ پہلے',
'minute-short-past-other' => '{0} منٹ پہلے',
+ 'mon-future-one' => '{0} پیر میں',
+ 'mon-future-other' => '{0} پیر میں',
+ 'mon-narrow-future-one' => '{0} پیر میں',
+ 'mon-narrow-future-other' => '{0} پیر میں',
+ 'mon-narrow-past-one' => '{0} پیر قبل',
+ 'mon-narrow-past-other' => '{0} پیر قبل',
+ 'mon-past-one' => '{0} پیر قبل',
+ 'mon-past-other' => '{0} پیر قبل',
+ 'mon-short-future-one' => '{0} پیر میں',
+ 'mon-short-future-other' => '{0} پیر میں',
+ 'mon-short-past-one' => '{0} پیر قبل',
+ 'mon-short-past-other' => '{0} پیر قبل',
'month-future-one' => '{0} مہینہ میں',
'month-future-other' => '{0} مہینے میں',
- 'month-narrow-future-one' => '+{0} ماہ میں',
- 'month-narrow-future-other' => '+{0} ماہ میں',
+ 'month-narrow-future-one' => '{0} ماہ میں',
+ 'month-narrow-future-other' => '{0} ماہ میں',
'month-narrow-past-one' => '{0} ماہ پہلے',
'month-narrow-past-other' => '{0} ماہ پہلے',
'month-one' => '{0} مہینہ',
@@ -907,18 +1101,30 @@ $timeUnits = array(
'month-short-past-other' => '{0} ماہ قبل',
'nanosecond-one' => '{0} نینو سیکنڈ',
'nanosecond-other' => '{0} نینو سیکنڈ',
- 'quarter-future-one' => '+{0} سہ ماہی',
- 'quarter-future-other' => '+{0} سہ ماہی',
+ 'quarter-future-one' => '{0} سہ ماہی میں',
+ 'quarter-future-other' => '{0} سہ ماہی میں',
'quarter-narrow-future-one' => '{0} سہ ماہی میں',
'quarter-narrow-future-other' => '{0} سہ ماہی میں',
'quarter-narrow-past-one' => '{0} سہ ماہی پہلے',
'quarter-narrow-past-other' => '{0} سہ ماہی پہلے',
- 'quarter-past-one' => '-{0} سہ ماہی',
- 'quarter-past-other' => '-{0} سہ ماہی',
+ 'quarter-past-one' => '{0} سہ ماہی پہلے',
+ 'quarter-past-other' => '{0} سہ ماہی پہلے',
'quarter-short-future-one' => '{0} سہ ماہی میں',
'quarter-short-future-other' => '{0} سہ ماہی میں',
'quarter-short-past-one' => '{0} سہ ماہی قبل',
'quarter-short-past-other' => '{0} سہ ماہی قبل',
+ 'sat-future-one' => '{0} سنیچر میں',
+ 'sat-future-other' => '{0} سنیچر میں',
+ 'sat-narrow-future-one' => '{0} سنیچر میں',
+ 'sat-narrow-future-other' => '{0} سنیچر میں',
+ 'sat-narrow-past-one' => '{0} سنیچر قبل',
+ 'sat-narrow-past-other' => '{0} سنیچر قبل',
+ 'sat-past-one' => '{0} سنیچر قبل',
+ 'sat-past-other' => '{0} سنیچر قبل',
+ 'sat-short-future-one' => '{0} سنیچر میں',
+ 'sat-short-future-other' => '{0} سنیچر میں',
+ 'sat-short-past-one' => '{0} سنیچر قبل',
+ 'sat-short-past-other' => '{0} سنیچر قبل',
'second-future-one' => '{0} سیکنڈ میں',
'second-future-other' => '{0} سیکنڈ میں',
'second-narrow-future-one' => '{0} سیکنڈ میں',
@@ -933,6 +1139,54 @@ $timeUnits = array(
'second-short-future-other' => '{0} سیکنڈ میں',
'second-short-past-one' => '{0} سیکنڈ پہلے',
'second-short-past-other' => '{0} سیکنڈ پہلے',
+ 'sun-future-one' => '{0} اتوار میں',
+ 'sun-future-other' => '{0} اتوار میں',
+ 'sun-narrow-future-one' => '{0} اتوار میں',
+ 'sun-narrow-future-other' => '{0} اتوار میں',
+ 'sun-narrow-past-one' => '{0} اتوار قبل',
+ 'sun-narrow-past-other' => '{0} اتوار قبل',
+ 'sun-past-one' => '{0} اتوار قبل',
+ 'sun-past-other' => '{0} اتوار قبل',
+ 'sun-short-future-one' => '{0} اتوار میں',
+ 'sun-short-future-other' => '{0} اتوار میں',
+ 'sun-short-past-one' => '{0} اتوار قبل',
+ 'sun-short-past-other' => '{0} اتوار قبل',
+ 'thu-future-one' => '{0} جمعرات میں',
+ 'thu-future-other' => '{0} جمعرات میں',
+ 'thu-narrow-future-one' => '{0} جمعرات میں',
+ 'thu-narrow-future-other' => '{0} جمعرات میں',
+ 'thu-narrow-past-one' => '{0} جمعرات قبل',
+ 'thu-narrow-past-other' => '{0} جمعرات قبل',
+ 'thu-past-one' => '{0} جمعرات قبل',
+ 'thu-past-other' => '{0} جمعرات قبل',
+ 'thu-short-future-one' => '{0} جمعرات میں',
+ 'thu-short-future-other' => '{0} جمعرات میں',
+ 'thu-short-past-one' => '{0} جمعرات قبل',
+ 'thu-short-past-other' => '{0} جمعرات قبل',
+ 'tue-future-one' => '{0} منگل میں',
+ 'tue-future-other' => '{0} منگل میں',
+ 'tue-narrow-future-one' => '{0} منگل میں',
+ 'tue-narrow-future-other' => '{0} منگل میں',
+ 'tue-narrow-past-one' => '{0} منگل قبل',
+ 'tue-narrow-past-other' => '{0} منگل قبل',
+ 'tue-past-one' => '{0} منگل قبل',
+ 'tue-past-other' => '{0} منگل قبل',
+ 'tue-short-future-one' => '{0} منگل میں',
+ 'tue-short-future-other' => '{0} منگل میں',
+ 'tue-short-past-one' => '{0} منگل قبل',
+ 'tue-short-past-other' => '{0} منگل قبل',
+ 'wed-future-one' => '{0} بدھ میں',
+ 'wed-future-other' => '{0} بدھ میں',
+ 'wed-narrow-future-one' => '{0} بدھ میں',
+ 'wed-narrow-future-other' => '{0} بدھ میں',
+ 'wed-narrow-past-one' => '{0} بدھ قبل',
+ 'wed-narrow-past-other' => '{0} بدھ قبل',
+ 'wed-past-one' => '{0} بدھ قبل',
+ 'wed-past-other' => '{0} بدھ قبل',
+ 'wed-short-future-one' => '{0} بدھ میں',
+ 'wed-short-future-other' => '{0} بدھ میں',
+ 'wed-short-past-one' => '{0} بدھ قبل',
+ 'wed-short-past-other' => '{0} بدھ قبل',
'week-future-one' => '{0} ہفتہ میں',
'week-future-other' => '{0} ہفتے میں',
'week-narrow-future-one' => '{0} ہفتہ میں',
@@ -949,10 +1203,10 @@ $timeUnits = array(
'week-short-past-other' => '{0} ہفتے پہلے',
'year-future-one' => '{0} سال میں',
'year-future-other' => '{0} سال میں',
- 'year-narrow-future-one' => '+{0} سال میں',
- 'year-narrow-future-other' => '+{0} سال میں',
- 'year-narrow-past-one' => '-{0} سال پہلے',
- 'year-narrow-past-other' => '-{0} سال پہلے',
+ 'year-narrow-future-one' => '{0} سال میں',
+ 'year-narrow-future-other' => '{0} سال میں',
+ 'year-narrow-past-one' => '{0} سال پہلے',
+ 'year-narrow-past-other' => '{0} سال پہلے',
'year-one' => '{0} سال',
'year-other' => '{0} سال',
'year-past-one' => '{0} سال پہلے',
@@ -961,4 +1215,4 @@ $timeUnits = array(
'year-short-future-other' => '{0} سال میں',
'year-short-past-one' => '{0} سال پہلے',
'year-short-past-other' => '{0} سال پہلے',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesUz.php b/MLEB/cldr/CldrNames/CldrNamesUz.php
index 5b6bb5e9..aa57c8cf 100644
--- a/MLEB/cldr/CldrNames/CldrNamesUz.php
+++ b/MLEB/cldr/CldrNames/CldrNamesUz.php
@@ -1,390 +1,574 @@
<?php
-$languageNames = array(
- 'ab' => 'abxazcha',
- 'af' => 'afrikancha',
- 'agq' => 'ag‘emcha',
- 'ak' => 'akancha',
- 'am' => 'amxarcha',
- 'ar' => 'arabcha',
- 'ar-001' => 'zamonavij standart arabcha',
- 'arn' => 'mapuchiycha',
- 'as' => 'assamcha',
- 'asa' => 'asucha',
- 'az' => 'ozarbayjoncha',
- 'ba' => 'boshqircha',
- 'be' => 'belaruscha',
- 'bem' => 'bembacha',
- 'bez' => 'benacha',
- 'bg' => 'bolgarcha',
- 'bm' => 'bambarcha',
- 'bn' => 'bengalcha',
- 'bo' => 'tibetcha',
- 'br' => 'bretoncha',
- 'brx' => 'bodocha',
- 'bs' => 'bosniycha',
- 'ca' => 'katalancha',
- 'cgg' => 'chigcha',
- 'chr' => 'cherokcha',
- 'ckb' => 'sorani kurd tili',
- 'co' => 'korsiancha',
- 'cs' => 'chexcha',
- 'cy' => 'uelscha',
- 'da' => 'datcha',
- 'dav' => 'taitcha',
+$languageNames = [
+ 'aa' => 'afar',
+ 'ab' => 'abxaz',
+ 'ace' => 'achin',
+ 'ada' => 'adangme',
+ 'ady' => 'adigey',
+ 'af' => 'afrikaans',
+ 'agq' => 'agem',
+ 'ain' => 'aynu',
+ 'ak' => 'akan',
+ 'ale' => 'aleut',
+ 'alt' => 'janubiy oltoy',
+ 'am' => 'amxar',
+ 'an' => 'aragon',
+ 'anp' => 'angika',
+ 'ar' => 'arab',
+ 'ar-001' => 'standart arab',
+ 'arn' => 'mapuche',
+ 'arp' => 'arapaxo',
+ 'as' => 'assam',
+ 'asa' => 'asu',
+ 'ast' => 'asturiy',
+ 'av' => 'avar',
+ 'awa' => 'avadxi',
+ 'ay' => 'aymara',
+ 'az' => 'ozarbayjon',
+ 'ba' => 'boshqird',
+ 'ban' => 'bali',
+ 'bas' => 'basa',
+ 'be' => 'belarus',
+ 'bem' => 'bemba',
+ 'bez' => 'bena',
+ 'bg' => 'bolgar',
+ 'bgn' => 'g‘arbiy baluj',
+ 'bho' => 'bxojpuri',
+ 'bi' => 'bislama',
+ 'bin' => 'bini',
+ 'bla' => 'siksika',
+ 'bm' => 'bambara',
+ 'bn' => 'bengal',
+ 'bo' => 'tibet',
+ 'br' => 'breton',
+ 'brx' => 'bodo',
+ 'bs' => 'bosniy',
+ 'bug' => 'bugi',
+ 'byn' => 'blin',
+ 'ca' => 'katalan',
+ 'ce' => 'chechen',
+ 'ceb' => 'sebuan',
+ 'cgg' => 'chiga',
+ 'ch' => 'chamorro',
+ 'chk' => 'chukot',
+ 'chm' => 'mari',
+ 'cho' => 'choktav',
+ 'chr' => 'cheroki',
+ 'chy' => 'cheyenn',
+ 'ckb' => 'sorani-kurd',
+ 'co' => 'korsikan',
+ 'crs' => 'kreol (Seyshel)',
+ 'cs' => 'chex',
+ 'cu' => 'slavyan (cherkov)',
+ 'cv' => 'chuvash',
+ 'cy' => 'valliy',
+ 'da' => 'dan',
+ 'dak' => 'dakota',
+ 'dar' => 'dargva',
+ 'dav' => 'taita',
'de' => 'nemischa',
- 'de-at' => 'Avstriya olmonchasi',
- 'de-ch' => 'Shvesariya olmonchasi',
- 'dje' => 'zarmacha',
- 'dsb' => 'quyi sorbcha',
- 'dua' => 'dualcha',
- 'dyo' => 'yola-fonyicha',
- 'dz' => 'yovoncha',
- 'ebu' => 'embucha',
- 'ee' => 'ivicha',
- 'el' => 'yunoncha',
+ 'de-at' => 'nemis (Avstriya)',
+ 'de-ch' => 'yuqori nemis (Shveytsariya)',
+ 'dgr' => 'dogrib',
+ 'dje' => 'zarma',
+ 'dsb' => 'quyi sorb',
+ 'dua' => 'duala',
+ 'dv' => 'divexi',
+ 'dyo' => 'diola-fogni',
+ 'dz' => 'dzongka',
+ 'dzg' => 'dazag',
+ 'ebu' => 'embu',
+ 'ee' => 'eve',
+ 'efi' => 'efik',
+ 'eka' => 'ekajuk',
+ 'el' => 'grek',
'en' => 'inglizcha',
- 'en-au' => 'Avstraliya inglizchasi',
- 'en-ca' => 'Kanada inglizchasi',
- 'en-gb' => 'Britaniya inglizchasi',
- 'eo' => 'esperantocha',
+ 'en-au' => 'ingliz (Avstraliya)',
+ 'en-ca' => 'ingliz (Kanada)',
+ 'en-gb' => 'ingliz (Britaniya)',
+ 'en-us' => 'ingliz (Amerika)',
+ 'eo' => 'esperanto',
'es' => 'ispancha',
- 'es-419' => 'Lotin Amerika ispanchasi',
- 'es-es' => 'Yevropa ispanchasi',
- 'es-mx' => 'Meksika ispanchasi',
+ 'es-419' => 'ispan (Lotin Amerikasi)',
+ 'es-es' => 'ispan (Yevropa)',
+ 'es-mx' => 'ispan (Meksika)',
'et' => 'estoncha',
- 'eu' => 'baskcha',
- 'fa' => 'forscha',
+ 'eu' => 'bask',
+ 'ewo' => 'evondo',
+ 'fa' => 'fors',
+ 'ff' => 'fula',
'fi' => 'fincha',
'fil' => 'filipincha',
- 'fj' => 'fijcha',
+ 'fj' => 'fiji',
'fo' => 'farercha',
+ 'fon' => 'fon',
'fr' => 'fransuzcha',
- 'fr-ca' => 'Kanada fransuzchasi',
- 'fr-ch' => 'Shvesariya fransuzchasi',
- 'fy' => 'gʻarbiy friziancha',
- 'ga' => 'irlandcha',
- 'gag' => 'gagozcha',
- 'gl' => 'galitsiycha',
- 'gn' => 'gorancha',
- 'gsw' => 'shveysariya nemischasi',
- 'gu' => 'gujoratcha',
- 'guz' => 'guzcha',
- 'gv' => 'mencha',
- 'ha' => 'xauscha',
+ 'fr-ca' => 'fransuz (Kanada)',
+ 'fr-ch' => 'fransuz (Shveytsariya)',
+ 'fur' => 'friul',
+ 'fy' => 'g‘arbiy friz',
+ 'ga' => 'irland',
+ 'gaa' => 'ga',
+ 'gag' => 'gagauz',
+ 'gan' => 'gan',
+ 'gd' => 'shotland-gel',
+ 'gez' => 'geez',
+ 'gil' => 'gilbert',
+ 'gl' => 'galisiy',
+ 'gn' => 'guarani',
+ 'gor' => 'gorontalo',
+ 'gsw' => 'nemis (Shveytsariya)',
+ 'gu' => 'gujarot',
+ 'guz' => 'gusii',
+ 'gv' => 'men',
+ 'gwi' => 'gvichin',
+ 'ha' => 'xausa',
+ 'hak' => 'hak',
'haw' => 'gavaycha',
- 'he' => 'ibroniy',
- 'hi' => 'hindcha',
- 'hr' => 'xorvatcha',
- 'hsb' => 'yuqori sorbcha',
- 'ht' => 'gaitcha',
- 'hu' => 'vengrcha',
- 'hy' => 'armancha',
- 'id' => 'indoneyzcha',
- 'ig' => 'igbocha',
- 'ii' => 'zichuan yicha',
- 'is' => 'islandcha',
- 'it' => 'italyancha',
- 'iu' => 'inuktitutcha',
- 'ja' => 'yaponcha',
- 'jgo' => 'ngombcha',
- 'jmc' => 'machamcha',
- 'jv' => 'yavancha',
+ 'he' => 'ivrit',
+ 'hi' => 'hind',
+ 'hil' => 'hiligaynon',
+ 'hmn' => 'xmong',
+ 'hr' => 'xorvat',
+ 'hsb' => 'yuqori sorb',
+ 'hsn' => 'hsn',
+ 'ht' => 'gaityan',
+ 'hu' => 'venger',
+ 'hup' => 'xupa',
+ 'hy' => 'arman',
+ 'hz' => 'gerero',
+ 'ia' => 'interlingva',
+ 'iba' => 'iban',
+ 'ibb' => 'ibibio',
+ 'id' => 'indonez',
+ 'ig' => 'igbo',
+ 'ii' => 'sichuan',
+ 'ilo' => 'iloko',
+ 'inh' => 'ingush',
+ 'io' => 'ido',
+ 'is' => 'island',
+ 'it' => 'italyan',
+ 'iu' => 'inuktitut',
+ 'ja' => 'yapon',
+ 'jbo' => 'lojban',
+ 'jgo' => 'ngomba',
+ 'jmc' => 'machame',
+ 'jv' => 'yavan',
'ka' => 'gruzincha',
- 'kab' => 'qobilcha',
- 'kam' => 'kambcha',
- 'kde' => 'maqondiy',
- 'kea' => 'kabuverdiancha',
- 'khq' => 'qoyra-chincha',
- 'ki' => 'kikuycha',
+ 'kab' => 'kabil',
+ 'kac' => 'kachin',
+ 'kaj' => 'kaji',
+ 'kam' => 'kamba',
+ 'kbd' => 'kabardin',
+ 'kcg' => 'tyap',
+ 'kde' => 'makonde',
+ 'kea' => 'kabuverdianu',
+ 'kfo' => 'koro',
+ 'kha' => 'kxasi',
+ 'khq' => 'koyra-chiini',
+ 'ki' => 'kikuyu',
+ 'kj' => 'kvanyama',
'kk' => 'qozoqcha',
- 'kl' => 'kalallisutcha',
- 'kln' => 'kalenjincha',
- 'km' => 'xmercha',
- 'kn' => 'kannadcha',
+ 'kkj' => 'kako',
+ 'kl' => 'grenland',
+ 'kln' => 'kalenjin',
+ 'km' => 'xmer',
+ 'kmb' => 'kimbundu',
+ 'kn' => 'kannada',
'ko' => 'koreyscha',
- 'koi' => 'komi-permyakcha',
- 'kok' => 'konkancha',
+ 'koi' => 'komi-permyak',
+ 'kok' => 'konkan',
+ 'kpe' => 'kpelle',
+ 'kr' => 'kanuri',
+ 'krc' => 'qorachoy-bolqor',
+ 'krl' => 'karel',
+ 'kru' => 'kurux',
'ks' => 'kashmircha',
- 'ksb' => 'shambalacha',
- 'ksf' => 'bafiycha',
+ 'ksb' => 'shambala',
+ 'ksf' => 'bafiya',
+ 'ksh' => 'kyoln',
'ku' => 'kurdcha',
- 'kw' => 'kornishcha',
+ 'kum' => 'qo‘miq',
+ 'kv' => 'komi',
+ 'kw' => 'korn',
'ky' => 'qirgʻizcha',
'la' => 'lotincha',
- 'lag' => 'langcha',
+ 'lad' => 'ladino',
+ 'lag' => 'langi',
'lb' => 'lyuksemburgcha',
- 'lg' => 'gandcha',
- 'lkt' => 'lakotcha',
- 'ln' => 'lingalcha',
- 'lo' => 'laoscha',
- 'lt' => 'litovcha',
- 'lu' => 'luba-katangcha',
- 'luo' => 'luocha',
- 'luy' => 'luycha',
+ 'lez' => 'lezgin',
+ 'lg' => 'ganda',
+ 'li' => 'limburg',
+ 'lkt' => 'lakota',
+ 'ln' => 'lingala',
+ 'lo' => 'laos',
+ 'loz' => 'lozi',
+ 'lrc' => 'shimoliy luri',
+ 'lt' => 'litva',
+ 'lu' => 'luba-katanga',
+ 'lua' => 'luba-lulua',
+ 'lun' => 'lunda',
+ 'luo' => 'luo',
+ 'lus' => 'lushay',
+ 'luy' => 'luhya',
'lv' => 'latishcha',
- 'mas' => 'masaycha',
- 'mer' => 'merucha',
- 'mfe' => 'morisyencha',
- 'mg' => 'malagasiycha',
- 'mgh' => 'makuva-mittocha',
- 'mgo' => 'metacha',
- 'mi' => 'maoriycha',
- 'mk' => 'makedoncha',
- 'ml' => 'malayamcha',
- 'mn' => 'mo‘g‘ulcha',
- 'moh' => 'mohaukcha',
- 'mr' => 'maratcha',
- 'ms' => 'malaycha',
- 'mt' => 'maltacha',
- 'mua' => 'mundangcha',
- 'my' => 'birmancha',
- 'naq' => 'namacha',
- 'nb' => 'norvegcha bokmal',
- 'nd' => 'shimoliy ndebelcha',
- 'ne' => 'nepalcha',
- 'nl' => 'gollandcha',
- 'nl-be' => 'flamandcha',
- 'nmg' => 'kvaziycha',
- 'nn' => 'norvegcha ninorsk',
- 'nqo' => 'nqoancha',
- 'nus' => 'noyrcha',
- 'nyn' => 'nyankolcha',
- 'om' => 'oromocha',
- 'or' => 'oriycha',
+ 'mad' => 'madur',
+ 'mag' => 'magahi',
+ 'mai' => 'maythili',
+ 'mak' => 'makasar',
+ 'mas' => 'masay',
+ 'mdf' => 'moksha',
+ 'men' => 'mende',
+ 'mer' => 'meru',
+ 'mfe' => 'morisyen',
+ 'mg' => 'malagasiy',
+ 'mgh' => 'maxuva-mitto',
+ 'mgo' => 'meta',
+ 'mh' => 'marshall',
+ 'mi' => 'maori',
+ 'mic' => 'mikmak',
+ 'min' => 'minangkabau',
+ 'mk' => 'makedon',
+ 'ml' => 'malayalam',
+ 'mn' => 'mongol',
+ 'mni' => 'manipur',
+ 'moh' => 'mohauk',
+ 'mos' => 'mossi',
+ 'mr' => 'maratxi',
+ 'ms' => 'malay',
+ 'mt' => 'maltiy',
+ 'mua' => 'mundang',
+ 'mul' => 'bir nechta til',
+ 'mus' => 'krik',
+ 'mwl' => 'miranda',
+ 'my' => 'birman',
+ 'myv' => 'erzya',
+ 'mzn' => 'mozandaron',
+ 'na' => 'nauru',
+ 'nan' => 'nan',
+ 'nap' => 'neapolitan',
+ 'naq' => 'nama',
+ 'nb' => 'norveg-bokmal',
+ 'nd' => 'shimoliy ndebele',
+ 'nds' => 'quyi nemis',
+ 'nds-nl' => 'quyi sakson',
+ 'ne' => 'nepal',
+ 'new' => 'nevar',
+ 'ng' => 'ndonga',
+ 'nia' => 'nias',
+ 'niu' => 'niue',
+ 'nl' => 'niderland',
+ 'nl-be' => 'flamand',
+ 'nmg' => 'kvasio',
+ 'nn' => 'norveg-nyunorsk',
+ 'nnh' => 'ngiyembun',
+ 'nog' => 'no‘g‘ay',
+ 'nqo' => 'nko',
+ 'nr' => 'janubiy ndebel',
+ 'nso' => 'shimoliy soto',
+ 'nus' => 'nuer',
+ 'nv' => 'navaxo',
+ 'ny' => 'cheva',
+ 'nyn' => 'nyankole',
+ 'oc' => 'oksitan',
+ 'om' => 'oromo',
+ 'or' => 'oriya',
+ 'os' => 'osetin',
'pa' => 'panjobcha',
+ 'pag' => 'pangasinan',
+ 'pam' => 'pampanga',
+ 'pap' => 'papiyamento',
+ 'pau' => 'palau',
+ 'pcm' => 'kreol (Nigeriya)',
'pl' => 'polyakcha',
- 'ps' => 'pushtu tili',
+ 'prg' => 'pruss',
+ 'ps' => 'pushtu',
'pt' => 'portugalcha',
- 'pt-br' => 'Braziliya portugalchasi',
- 'pt-pt' => 'Yevropa portugalchasi',
- 'qu' => 'qvechuancha',
- 'quc' => 'qichiancha',
- 'rm' => 'romancha',
- 'rn' => 'rundcha',
+ 'pt-br' => 'portugal (Braziliya)',
+ 'pt-pt' => 'portugal (Yevropa)',
+ 'qu' => 'kechua',
+ 'quc' => 'kiche',
+ 'rap' => 'rapanui',
+ 'rar' => 'rarotongan',
+ 'rm' => 'romansh',
+ 'rn' => 'rundi',
'ro' => 'rumincha',
- 'ro-md' => 'moldovan rumincha',
- 'rof' => 'rombacha',
+ 'ro-md' => 'moldovan',
+ 'rof' => 'rombo',
'ru' => 'ruscha',
- 'rw' => 'kinyarvandcha',
- 'rwk' => 'ruandcha',
- 'sa' => 'sanskritcha',
- 'saq' => 'samburcha',
- 'sbp' => 'sanguancha',
- 'sd' => 'sindxiycha',
- 'se' => 'shimoliy semiycha',
- 'seh' => 'seniycha',
- 'ses' => 'koryaboro senniycha',
- 'sg' => 'sangoancha',
- 'shi' => 'tachilgitcha',
- 'si' => 'sinholcha',
+ 'rup' => 'arumin',
+ 'rw' => 'kinyaruanda',
+ 'rwk' => 'ruanda',
+ 'sa' => 'sanskrit',
+ 'sad' => 'sandave',
+ 'sah' => 'saxa',
+ 'saq' => 'samburu',
+ 'sat' => 'santali',
+ 'sba' => 'ngambay',
+ 'sbp' => 'sangu',
+ 'sc' => 'sardin',
+ 'scn' => 'sitsiliya',
+ 'sco' => 'shotland',
+ 'sd' => 'sindhi',
+ 'sdh' => 'janubiy kurd',
+ 'se' => 'shimoliy saam',
+ 'seh' => 'sena',
+ 'ses' => 'koyraboro-senni',
+ 'sg' => 'sango',
+ 'shi' => 'tashelxit',
+ 'shn' => 'shan',
+ 'si' => 'singal',
'sk' => 'slovakcha',
'sl' => 'slovencha',
- 'sma' => 'janubiy semiycha',
- 'smj' => 'luli semiycha',
- 'smn' => 'inari semiycha',
- 'sms' => 'shkolt semiycha',
- 'sn' => 'shoniycha',
+ 'sm' => 'samoa',
+ 'sma' => 'janubiy saam',
+ 'smj' => 'lule-saam',
+ 'smn' => 'inari-saam',
+ 'sms' => 'skolt-saam',
+ 'sn' => 'shona',
+ 'snk' => 'soninke',
'so' => 'somalicha',
- 'sq' => 'albancha',
+ 'sq' => 'alban',
'sr' => 'serbcha',
- 'su' => 'sundancha',
- 'sv' => 'shvedcha',
- 'sw' => 'svahilcha',
- 'swc' => 'kongo svahiliycha',
- 'ta' => 'tamilcha',
- 'te' => 'telugvancha',
- 'teo' => 'tesoancha',
- 'tg' => 'tojikcha',
- 'th' => 'taycha',
- 'ti' => 'tigrincha',
- 'tk' => 'turkmancha',
- 'to' => 'tongocha',
- 'tr' => 'turkcha',
- 'tt' => 'tatarcha',
- 'twq' => 'tosovoqcha',
- 'tzm' => 'markaziy atlas vaqt zonasi',
- 'ug' => 'uygʻurcha',
- 'uk' => 'ukraincha',
- 'und' => 'nomaʼlum til',
- 'ur' => 'urducha',
- 'uz' => 'oʻzbekcha',
- 'vai' => 'vayancha',
- 'vi' => 'vyetnamcha',
- 'vun' => 'vunjoancha',
- 'wo' => 'volofcha',
- 'xh' => 'xosancha',
- 'xog' => 'sogancha',
- 'yo' => 'yorubcha',
- 'zgh' => 'standart marokash tamazit',
- 'zh' => 'xitoycha',
- 'zh-hans' => 'soddalashtirilgan xitoycha',
- 'zh-hant' => 'anʼanaviy xitoycha',
- 'zu' => 'zuluancha',
- 'zxx' => 'til tarkibi yoʻq',
-);
+ 'srn' => 'sranan-tongo',
+ 'ss' => 'svati',
+ 'ssy' => 'saho',
+ 'st' => 'janubiy soto',
+ 'su' => 'sundan',
+ 'suk' => 'sukuma',
+ 'sv' => 'shved',
+ 'sw' => 'suaxili',
+ 'sw-cd' => 'suaxili (Kongo)',
+ 'swb' => 'qamar',
+ 'syr' => 'suriyacha',
+ 'ta' => 'tamil',
+ 'te' => 'telugu',
+ 'tem' => 'timne',
+ 'teo' => 'teso',
+ 'tet' => 'tetum',
+ 'tg' => 'tojik',
+ 'th' => 'tay',
+ 'ti' => 'tigrinya',
+ 'tig' => 'tigre',
+ 'tk' => 'turkman',
+ 'tlh' => 'klingon',
+ 'tn' => 'tsvana',
+ 'to' => 'tongan',
+ 'tpi' => 'tok-piksin',
+ 'tr' => 'turk',
+ 'trv' => 'taroko',
+ 'ts' => 'tsonga',
+ 'tt' => 'tatar',
+ 'tum' => 'tumbuka',
+ 'tvl' => 'tuvalu',
+ 'twq' => 'tasavak',
+ 'ty' => 'taiti',
+ 'tyv' => 'tuva',
+ 'tzm' => 'markaziy atlas tamazigxt',
+ 'udm' => 'udmurt',
+ 'ug' => 'uyg‘ur',
+ 'uk' => 'ukrain',
+ 'umb' => 'umbundu',
+ 'und' => 'noma’lum til',
+ 'ur' => 'urdu',
+ 'uz' => 'o‘zbek',
+ 'vai' => 'vai',
+ 've' => 'venda',
+ 'vi' => 'vyetnam',
+ 'vo' => 'volapyuk',
+ 'vun' => 'vunjo',
+ 'wa' => 'vallon',
+ 'wae' => 'valis',
+ 'wal' => 'volamo',
+ 'war' => 'varay',
+ 'wbp' => 'valbiri',
+ 'wo' => 'volof',
+ 'wuu' => 'wuu',
+ 'xal' => 'qalmoq',
+ 'xh' => 'kxosa',
+ 'xog' => 'soga',
+ 'yav' => 'yangben',
+ 'ybb' => 'yemba',
+ 'yi' => 'idish',
+ 'yo' => 'yoruba',
+ 'yue' => 'kanton',
+ 'zgh' => 'tamazigxt',
+ 'zh' => 'xitoy',
+ 'zh-hans' => 'xitoy (soddalashgan)',
+ 'zh-hant' => 'xitoy (an’anaviy)',
+ 'zu' => 'zulu',
+ 'zun' => 'zuni',
+ 'zxx' => 'til tarkibi yo‘q',
+ 'zza' => 'zaza',
+];
-$currencyNames = array(
- 'AED' => 'AED',
- 'AFN' => 'AFN',
- 'ALL' => 'Alban leki',
- 'AMD' => 'AMD',
- 'ANG' => 'Golland Antil guldeni',
- 'AOA' => 'AOA',
+$currencyNames = [
+ 'AED' => 'Birlashgan Arab Amirliklari dirhami',
+ 'AFN' => 'Afg‘oniston afg‘oniysi',
+ 'ALL' => 'Albaniya leki',
+ 'AMD' => 'Armaniston drami',
+ 'ANG' => 'Niderlandiya antil guldeni',
+ 'AOA' => 'Angola kvanzasi',
'ARS' => 'Argentina pesosi',
'AUD' => 'Avstraliya dollari',
'AWG' => 'Aruba florini',
- 'AZN' => 'AZN',
- 'BAM' => 'Bosniya va Gertsogovina ayriboshlash markasi',
+ 'AZN' => 'Ozarbayjon manati',
+ 'BAM' => 'Bosniya va Gertsegovina ayirboshlash markasi',
'BBD' => 'Barbados dollari',
- 'BDT' => 'BDT',
+ 'BDT' => 'Bangladesh takasi',
'BGN' => 'Bolgariya levi',
- 'BHD' => 'BHD',
- 'BIF' => 'BIF',
+ 'BHD' => 'Bahrayn dinori',
+ 'BIF' => 'Burundi franki',
'BMD' => 'Bermuda dollari',
- 'BND' => 'BND',
- 'BOB' => 'Boliviya bolivyani',
- 'BRL' => 'Brazil reali',
+ 'BND' => 'Bruney dollari',
+ 'BOB' => 'Boliviya bolivianosi',
+ 'BRL' => 'Braziliya reali',
'BSD' => 'Bagama dollari',
- 'BTN' => 'BTN',
- 'BWP' => 'BWP',
- 'BYR' => 'Belarus rubli',
+ 'BTN' => 'Butan ngultrumi',
+ 'BWP' => 'Botsvana pulasi',
+ 'BYN' => 'Belarus rubli',
+ 'BYR' => 'Belarus rubli (2000–2016)',
'BZD' => 'Beliz dollari',
'CAD' => 'Kanada dollari',
- 'CDF' => 'CDF',
- 'CHF' => 'Shvetsariya franki',
+ 'CDF' => 'Kongo franki',
+ 'CHF' => 'Shveytsariya franki',
'CLP' => 'Chili pesosi',
+ 'CNH' => 'CNH',
'CNY' => 'Xitoy yuani',
'COP' => 'Kolumbiya pesosi',
'CRC' => 'Kosta-Rika koloni',
- 'CUC' => 'Kuba Ayirboshlash pesosi',
+ 'CUC' => 'Kuba ayirboshlash pesosi',
'CUP' => 'Kuba pesosi',
- 'CVE' => 'CVE',
- 'CZK' => 'Chex kronasi',
- 'DJF' => 'DJF',
+ 'CVE' => 'Kabo-Verde eskudosi',
+ 'CZK' => 'Chexiya kronasi',
+ 'DJF' => 'Jibuti franki',
'DKK' => 'Daniya kronasi',
- 'DOP' => 'Dominikan pesosi',
+ 'DOP' => 'Dominikana pesosi',
'DZD' => 'Jazoir dinori',
'EGP' => 'Misr funti',
- 'ERN' => 'ERN',
- 'ETB' => 'ETB',
+ 'ERN' => 'Eritreya nakfasi',
+ 'ETB' => 'Efiopiya biri',
'EUR' => 'Yevro',
- 'FJD' => 'FJD',
- 'FKP' => 'Folklend oroli funti',
- 'GBP' => 'Ingliz funt',
- 'GEL' => 'GEL',
- 'GHS' => 'GHS',
+ 'FJD' => 'Fiji dollari',
+ 'FKP' => 'Folklend orollari funti',
+ 'GBP' => 'Angliya funt sterlingi',
+ 'GEL' => 'Gruziya larisi',
+ 'GHS' => 'Gana sedisi',
'GIP' => 'Gibraltar funti',
- 'GMD' => 'GMD',
- 'GNF' => 'GNF',
- 'GTQ' => 'Gvatemala kvetzali',
+ 'GMD' => 'Gambiya dalasisi',
+ 'GNF' => 'Gvineya franki',
+ 'GTQ' => 'Gvatemala ketsali',
'GYD' => 'Gayana dollari',
'HKD' => 'Gonkong dollari',
'HNL' => 'Gonduras lempirasi',
- 'HRK' => 'Horvat kunasi',
- 'HTG' => 'Gaiti gurdasi',
+ 'HRK' => 'Xorvatiya kunasi',
+ 'HTG' => 'Gaiti gurdi',
'HUF' => 'Vengriya forinti',
'IDR' => 'Indoneziya rupiyasi',
- 'ILS' => 'ILS',
- 'INR' => 'Hind rupiyasi',
- 'IQD' => 'IQD',
- 'IRR' => 'IRR',
+ 'ILS' => 'Isroil yangi shekeli',
+ 'INR' => 'Hindiston rupiyasi',
+ 'IQD' => 'Iroq dinori',
+ 'IRR' => 'Eron riyoli',
'ISK' => 'Islandiya kronasi',
'JMD' => 'Yamayka dollari',
- 'JOD' => 'JOD',
- 'JPY' => 'Yapon yenasi',
- 'KES' => 'KES',
- 'KGS' => 'KGS',
- 'KHR' => 'KHR',
- 'KMF' => 'KMF',
- 'KPW' => 'KPW',
+ 'JOD' => 'Iordaniya dinori',
+ 'JPY' => 'Yaponiya iyenasi',
+ 'KES' => 'Keniya shillingi',
+ 'KGS' => 'Qirg‘iziston somi',
+ 'KHR' => 'Kambodja rieli',
+ 'KMF' => 'Komor orollari franki',
+ 'KPW' => 'Shimoliy Koreya voni',
'KRW' => 'Janubiy Koreya voni',
- 'KWD' => 'KWD',
- 'KYD' => 'Kayman Orollari Dollari',
- 'KZT' => 'KZT',
- 'LAK' => 'LAK',
- 'LBP' => 'LBP',
- 'LKR' => 'LKR',
- 'LRD' => 'LRD',
+ 'KWD' => 'Kuvayt dinori',
+ 'KYD' => 'Kayman orollari dollari',
+ 'KZT' => 'Qozog‘iston tengesi',
+ 'LAK' => 'Laos kipi',
+ 'LBP' => 'Livan funti',
+ 'LKR' => 'Shri-Lanka rupiyasi',
+ 'LRD' => 'Liberiya dollari',
'LTL' => 'Litva liti',
'LVL' => 'Latviya lati',
'LYD' => 'Liviya dinori',
'MAD' => 'Marokash dirhami',
- 'MDL' => 'Moldova leusi',
- 'MGA' => 'MGA',
+ 'MDL' => 'Moldova leyi',
+ 'MGA' => 'Malagasi ariarisi',
'MKD' => 'Makedoniya dinori',
- 'MMK' => 'MMK',
- 'MNT' => 'MNT',
- 'MOP' => 'MOP',
- 'MRO' => 'MRO',
- 'MUR' => 'MUR',
- 'MVR' => 'MVR',
- 'MWK' => 'MWK',
+ 'MMK' => 'Myanma kyati',
+ 'MNT' => 'Mongoliya tugriki',
+ 'MOP' => 'Makao patakasi',
+ 'MRO' => 'Mavritaniya uqiyasi (1973–2017)',
+ 'MRU' => 'Mavritaniya uqiyasi',
+ 'MUR' => 'Mavritaniya rupiyasi',
+ 'MVR' => 'Maldiv rupiyasi',
+ 'MWK' => 'Malavi kvachasi',
'MXN' => 'Meksika pesosi',
- 'MYR' => 'MYR',
- 'MZN' => 'MZN',
- 'NAD' => 'NAD',
- 'NGN' => 'NGN',
+ 'MYR' => 'Malayziya ringgiti',
+ 'MZN' => 'Mozambik metikali',
+ 'NAD' => 'Namibiya dollari',
+ 'NGN' => 'Nigeriya nayrasi',
'NIO' => 'Nikaragua kordobasi',
'NOK' => 'Norvegiya kronasi',
- 'NPR' => 'NPR',
- 'NZD' => 'NZD',
- 'OMR' => 'OMR',
+ 'NPR' => 'Nepal rupiyasi',
+ 'NZD' => 'Yangi Zelandiya dollari',
+ 'OMR' => 'Ummon riyoli',
'PAB' => 'Panama balboasi',
- 'PEN' => 'Peru noyvo soli',
- 'PGK' => 'PGK',
- 'PHP' => 'PHP',
- 'PKR' => 'PKR',
+ 'PEN' => 'Peru soli',
+ 'PGK' => 'Papua – Yangi Gvineya kinasi',
+ 'PHP' => 'Filippin pesosi',
+ 'PKR' => 'Pokiston rupiyasi',
'PLN' => 'Polsha zlotiyi',
- 'PYG' => 'Paragvay guarani',
- 'QAR' => 'QAR',
- 'RON' => 'Rumin leusi',
+ 'PYG' => 'Paragvay guaranisi',
+ 'QAR' => 'Qatar riyoli',
+ 'RON' => 'Ruminiya leyi',
'RSD' => 'Serbiya dinori',
- 'RUB' => 'Rus rubli',
- 'RWF' => 'RWF',
+ 'RUB' => 'Rossiya rubli',
+ 'RWF' => 'Ruanda franki',
'SAR' => 'Saudiya Arabistoni riyoli',
- 'SBD' => 'SBD',
- 'SCR' => 'SCR',
+ 'SBD' => 'Solomon orollari dollari',
+ 'SCR' => 'Seyshel rupiyasi',
'SDG' => 'Sudan funti',
'SEK' => 'Shvetsiya kronasi',
- 'SGD' => 'SGD',
- 'SHP' => 'SHP',
- 'SLL' => 'SLL',
- 'SOS' => 'SOS',
+ 'SGD' => 'Singapur dollari',
+ 'SHP' => 'Muqaddas Yelena oroli funti',
+ 'SLL' => 'Syerra-Leone leonesi',
+ 'SOS' => 'Somali shillingi',
'SRD' => 'Surinam dollari',
'SSP' => 'Janubiy Sudan funti',
- 'STD' => 'STD',
- 'SYP' => 'SYP',
- 'SZL' => 'SZL',
- 'THB' => 'Tayland bahti',
- 'TJS' => 'TJS',
- 'TMT' => 'TMT',
+ 'STD' => 'San-Tome va Prinsipi dobrasi (1977–2017)',
+ 'STN' => 'San-Tome va Prinsipi dobrasi',
+ 'SYP' => 'Suriya funti',
+ 'SZL' => 'Svazilend lilangenisi',
+ 'THB' => 'Tailand bati',
+ 'TJS' => 'Tojikiston somoniysi',
+ 'TMT' => 'Turkmaniston manati',
'TND' => 'Tunis dinori',
- 'TOP' => 'TOP',
+ 'TOP' => 'Tonga paangasi',
'TRY' => 'Turk lirasi',
'TTD' => 'Trinidad va Tobago dollari',
'TWD' => 'Yangi Tayvan dollari',
- 'TZS' => 'TZS',
- 'UAH' => 'Ukrain grivnasi',
- 'UGX' => 'UGX',
+ 'TZS' => 'Tanzaniya shillingi',
+ 'UAH' => 'Ukraina grivnasi',
+ 'UGX' => 'Uganda shillingi',
'USD' => 'AQSH dollari',
'UYU' => 'Urugvay pesosi',
- 'UZS' => 'Oʻzbekiston soʻm',
- 'VEF' => 'Venesuela bolivari',
- 'VND' => 'VND',
- 'VUV' => 'VUV',
- 'WST' => 'WST',
- 'XAF' => 'XAF',
+ 'UZS' => 'O‘zbekiston so‘mi',
+ 'VEF' => 'Venesuela bolivari (2008–2018)',
+ 'VES' => 'Venesuela bolivari',
+ 'VND' => 'Vyetnam dongi',
+ 'VUV' => 'Vanuatu vatusi',
+ 'WST' => 'Samoa talasi',
+ 'XAF' => 'Markaziy Afrika CFA franki',
'XCD' => 'Sharqiy Karib dollari',
- 'XOF' => 'XOF',
- 'XPF' => 'XPF',
- 'XXX' => 'Nomaʼlum valyuta',
- 'YER' => 'YER',
- 'ZAR' => 'Janubiy Afrika randi',
- 'ZMW' => 'ZMW',
-);
+ 'XOF' => 'G‘arbiy Afrika CFA franki',
+ 'XPF' => 'Fransuz Polineziyasi franki',
+ 'XXX' => 'Noma’lum valyuta',
+ 'YER' => 'Yaman riyoli',
+ 'ZAR' => 'Janubiy Afrika rendi',
+ 'ZMW' => 'Zambiya kvachasi',
+];
-$currencySymbols = array(
+$currencySymbols = [
'AED' => 'AED',
'AFN' => 'AFN',
'ALL' => 'ALL',
@@ -408,6 +592,7 @@ $currencySymbols = array(
'BSD' => 'BSD',
'BTN' => 'BTN',
'BWP' => 'BWP',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CA$',
@@ -514,9 +699,10 @@ $currencySymbols = array(
'SRD' => 'SRD',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'Db',
'SYP' => 'SYP',
'SZL' => 'SZL',
- 'THB' => '฿',
+ 'THB' => 'THB',
'TJS' => 'TJS',
'TMT' => 'TMT',
'TND' => 'TND',
@@ -539,20 +725,21 @@ $currencySymbols = array(
'XOF' => 'CFA',
'XPF' => 'CFPF',
'YER' => 'YER',
+ 'ZAR' => 'ZAR',
'ZMW' => 'ZMW',
-);
+];
-$countryNames = array(
- 'AC' => 'Vozneseniye oroli',
+$countryNames = [
+ 'AC' => 'Me’roj oroli',
'AD' => 'Andorra',
'AE' => 'Birlashgan Arab Amirliklari',
'AF' => 'Afgʻoniston',
- 'AG' => 'Antigua va Barbados',
- 'AI' => 'Angila',
+ 'AG' => 'Antigua va Barbuda',
+ 'AI' => 'Angilya',
'AL' => 'Albaniya',
'AM' => 'Armaniston',
'AO' => 'Angola',
- 'AQ' => 'Antarktika',
+ 'AQ' => 'Antarktida',
'AR' => 'Argentina',
'AS' => 'Amerika Samoasi',
'AT' => 'Avstriya',
@@ -569,25 +756,25 @@ $countryNames = array(
'BH' => 'Bahrayn',
'BI' => 'Burundi',
'BJ' => 'Benin',
- 'BL' => 'Avliyo Varfolomey',
- 'BM' => 'Bermuda',
+ 'BL' => 'Sen-Bartelemi',
+ 'BM' => 'Bermuda orollari',
'BN' => 'Bruney',
'BO' => 'Boliviya',
- 'BQ' => 'Karib Niderlandiyasi',
+ 'BQ' => 'Boneyr, Sint-Estatius va Saba',
'BR' => 'Braziliya',
'BS' => 'Bagama orollari',
'BT' => 'Butan',
- 'BV' => 'Buvet oroli',
- 'BW' => 'Botsvanna',
- 'BY' => 'Belorusiya',
+ 'BV' => 'Buve oroli',
+ 'BW' => 'Botsvana',
+ 'BY' => 'Belarus',
'BZ' => 'Beliz',
'CA' => 'Kanada',
'CC' => 'Kokos (Kiling) orollari',
- 'CD' => 'Kongo-Kinshasa',
+ 'CD' => 'Kongo – Kinshasa',
'CF' => 'Markaziy Afrika Respublikasi',
- 'CG' => 'Kongo Brazzavil',
- 'CH' => 'Shveysariya',
- 'CI' => 'Kot-d-Ivuar',
+ 'CG' => 'Kongo – Brazzavil',
+ 'CH' => 'Shveytsariya',
+ 'CI' => 'Kot-d’Ivuar',
'CK' => 'Kuk orollari',
'CL' => 'Chili',
'CM' => 'Kamerun',
@@ -597,37 +784,38 @@ $countryNames = array(
'CR' => 'Kosta-Rika',
'CU' => 'Kuba',
'CV' => 'Kabo-Verde',
- 'CW' => 'Kurasao',
+ 'CW' => 'Kyurasao',
'CX' => 'Rojdestvo oroli',
'CY' => 'Kipr',
- 'CZ' => 'Chexiya Respublikasi',
+ 'CZ' => 'Chexiya',
'DE' => 'Germaniya',
- 'DG' => 'Diyego Garsiya',
- 'DJ' => 'Djibuti',
+ 'DG' => 'Diyego-Garsiya',
+ 'DJ' => 'Jibuti',
'DK' => 'Daniya',
'DM' => 'Dominika',
'DO' => 'Dominikan Respublikasi',
'DZ' => 'Jazoir',
- 'EA' => 'Seyta va Melilla',
+ 'EA' => 'Seuta va Melilya',
'EC' => 'Ekvador',
'EE' => 'Estoniya',
'EG' => 'Misr',
- 'EH' => 'Gʻarbiy Sahroi Kabir',
+ 'EH' => 'G‘arbiy Sahroi Kabir',
'ER' => 'Eritreya',
'ES' => 'Ispaniya',
'ET' => 'Efiopiya',
'EU' => 'Yevropa Ittifoqi',
- 'FI' => 'Finlyandiya',
- 'FJ' => 'Fiji orollari',
+ 'EZ' => 'yevrozona',
+ 'FI' => 'Finlandiya',
+ 'FJ' => 'Fiji',
'FK' => 'Folklend orollari',
'FM' => 'Mikroneziya',
'FO' => 'Farer orollari',
'FR' => 'Fransiya',
'GA' => 'Gabon',
- 'GB' => 'B.Q.',
+ 'GB' => 'Britaniya',
'GD' => 'Grenada',
'GE' => 'Gruziya',
- 'GF' => 'Frantsuz Gvianasi',
+ 'GF' => 'Fransuz Gvianasi',
'GG' => 'Gernsi',
'GH' => 'Gana',
'GI' => 'Gibraltar',
@@ -637,13 +825,13 @@ $countryNames = array(
'GP' => 'Gvadelupe',
'GQ' => 'Ekvatorial Gvineya',
'GR' => 'Gretsiya',
- 'GS' => 'Janubiy Djordjiya va Janubiy Sendvich orollari',
+ 'GS' => 'Janubiy Georgiya va Janubiy Sendvich orollari',
'GT' => 'Gvatemala',
'GU' => 'Guam',
'GW' => 'Gvineya-Bisau',
'GY' => 'Gayana',
'HK' => 'Gonkong',
- 'HM' => 'Gerd oroli va MakDonald orollari',
+ 'HM' => 'Xerd va Makdonald orollari',
'HN' => 'Gonduras',
'HR' => 'Xorvatiya',
'HT' => 'Gaiti',
@@ -654,12 +842,12 @@ $countryNames = array(
'IL' => 'Isroil',
'IM' => 'Men oroli',
'IN' => 'Hindiston',
- 'IO' => 'Britaniya Hind okeani hududi',
+ 'IO' => 'Britaniyaning Hind okeanidagi hududi',
'IQ' => 'Iroq',
'IR' => 'Eron',
'IS' => 'Islandiya',
'IT' => 'Italiya',
- 'JE' => 'Djersi',
+ 'JE' => 'Jersi',
'JM' => 'Yamayka',
'JO' => 'Iordaniya',
'JP' => 'Yaponiya',
@@ -671,7 +859,7 @@ $countryNames = array(
'KN' => 'Sent-Kits va Nevis',
'KP' => 'Shimoliy Koreya',
'KR' => 'Janubiy Koreya',
- 'KW' => 'Quveyt',
+ 'KW' => 'Quvayt',
'KY' => 'Kayman orollari',
'KZ' => 'Qozogʻiston',
'LA' => 'Laos',
@@ -691,13 +879,13 @@ $countryNames = array(
'ME' => 'Chernogoriya',
'MF' => 'Sent-Martin',
'MG' => 'Madagaskar',
- 'MH' => 'Marshal orollari',
+ 'MH' => 'Marshall orollari',
'MK' => 'Makedoniya',
'ML' => 'Mali',
'MM' => 'Myanma (Birma)',
- 'MN' => 'Mo‘g‘uliston',
+ 'MN' => 'Mongoliya',
'MO' => 'Makao',
- 'MP' => 'Shimoliy Marianna orollari',
+ 'MP' => 'Shimoliy Mariana orollari',
'MQ' => 'Martinika',
'MR' => 'Mavritaniya',
'MS' => 'Montserrat',
@@ -711,33 +899,33 @@ $countryNames = array(
'NA' => 'Namibiya',
'NC' => 'Yangi Kaledoniya',
'NE' => 'Niger',
- 'NF' => 'Norfolk orollari',
+ 'NF' => 'Norfolk oroli',
'NG' => 'Nigeriya',
'NI' => 'Nikaragua',
'NL' => 'Niderlandiya',
'NO' => 'Norvegiya',
'NP' => 'Nepal',
'NR' => 'Nauru',
- 'NU' => 'Niuye',
+ 'NU' => 'Niue',
'NZ' => 'Yangi Zelandiya',
- 'OM' => 'Omon',
+ 'OM' => 'Ummon',
'PA' => 'Panama',
'PE' => 'Peru',
- 'PF' => 'Frantsuz Polineziyasi',
- 'PG' => 'Papua Yangi Gvineya',
+ 'PF' => 'Fransuz Polineziyasi',
+ 'PG' => 'Papua – Yangi Gvineya',
'PH' => 'Filippin',
'PK' => 'Pokiston',
'PL' => 'Polsha',
- 'PM' => 'Sent-Pyer va Mikelon',
- 'PN' => 'Pitkarin orollari',
+ 'PM' => 'Sen-Pyer va Mikelon',
+ 'PN' => 'Pitkern orollari',
'PR' => 'Puerto-Riko',
'PS' => 'Falastin',
'PT' => 'Portugaliya',
'PW' => 'Palau',
'PY' => 'Paragvay',
'QA' => 'Qatar',
- 'QO' => 'Yondosh Okeaniya',
- 'RE' => 'Reyunon',
+ 'QO' => 'Tashqi Okeaniya',
+ 'RE' => 'Reyunion',
'RO' => 'Ruminiya',
'RS' => 'Serbiya',
'RU' => 'Rossiya',
@@ -748,9 +936,9 @@ $countryNames = array(
'SD' => 'Sudan',
'SE' => 'Shvetsiya',
'SG' => 'Singapur',
- 'SH' => 'Muqaddas Yelena orollari',
+ 'SH' => 'Muqaddas Yelena oroli',
'SI' => 'Sloveniya',
- 'SJ' => 'Savlbard va Jan Mayen',
+ 'SJ' => 'Shpitsbergen va Yan-Mayen',
'SK' => 'Slovakiya',
'SL' => 'Syerra-Leone',
'SM' => 'San-Marino',
@@ -760,18 +948,18 @@ $countryNames = array(
'SS' => 'Janubiy Sudan',
'ST' => 'San-Tome va Prinsipi',
'SV' => 'Salvador',
- 'SX' => 'Sint Martin',
+ 'SX' => 'Sint-Marten',
'SY' => 'Suriya',
'SZ' => 'Svazilend',
- 'TA' => 'Tristan de Kuna',
+ 'TA' => 'Tristan-da-Kunya',
'TC' => 'Turks va Kaykos orollari',
'TD' => 'Chad',
- 'TF' => 'Frantsiya janubiy xududlari',
+ 'TF' => 'Fransuz Janubiy hududlari',
'TG' => 'Togo',
- 'TH' => 'Tayland',
+ 'TH' => 'Tailand',
'TJ' => 'Tojikiston',
'TK' => 'Tokelau',
- 'TL' => 'Sharqiy-Timor',
+ 'TL' => 'Timor-Leste',
'TM' => 'Turkmaniston',
'TN' => 'Tunis',
'TO' => 'Tonga',
@@ -783,93 +971,228 @@ $countryNames = array(
'UA' => 'Ukraina',
'UG' => 'Uganda',
'UM' => 'AQSH yondosh orollari',
+ 'UN' => 'BMT',
'US' => 'AQSH',
'UY' => 'Urugvay',
'UZ' => 'Oʻzbekiston',
'VA' => 'Vatikan',
'VC' => 'Sent-Vinsent va Grenadin',
'VE' => 'Venesuela',
- 'VG' => 'Britaniya Virdjiniya orollari',
- 'VI' => 'AQSH Virdjiniya orollari',
+ 'VG' => 'Britaniya Virgin orollari',
+ 'VI' => 'AQSH Virgin orollari',
'VN' => 'Vyetnam',
'VU' => 'Vanuatu',
- 'WF' => 'Uellis va Futuna',
+ 'WF' => 'Uollis va Futuna',
'WS' => 'Samoa',
'XK' => 'Kosovo',
'YE' => 'Yaman',
'YT' => 'Mayotta',
- 'ZA' => 'Janubi-Afrika',
+ 'ZA' => 'Janubiy Afrika Respublikasi',
'ZM' => 'Zambiya',
'ZW' => 'Zimbabve',
-);
+];
-$timeUnits = array(
- 'day-future-one' => '{0} kundan soʻng',
- 'day-future-other' => '{0} kundan soʻng',
+$timeUnits = [
+ 'century-one' => '{0} asr',
+ 'century-other' => '{0} asr',
+ 'day-future-one' => '{0} kundan keyin',
+ 'day-future-other' => '{0} kundan keyin',
+ 'day-narrow-future-one' => '{0} kundan keyin',
+ 'day-narrow-future-other' => '{0} kundan keyin',
+ 'day-narrow-past-one' => '{0} kun oldin',
+ 'day-narrow-past-other' => '{0} kun oldin',
'day-one' => '{0} kun',
'day-other' => '{0} kun',
'day-past-one' => '{0} kun oldin',
'day-past-other' => '{0} kun oldin',
- 'day-short-future-one' => '{0} kundan soʻng',
- 'day-short-future-other' => '{0} kundan soʻng',
+ 'day-short-future-one' => '{0} kundan keyin',
+ 'day-short-future-other' => '{0} kundan keyin',
'day-short-past-one' => '{0} kun oldin',
'day-short-past-other' => '{0} kun oldin',
- 'hour-future-one' => '{0} soatdan soʻng',
- 'hour-future-other' => '{0} soatdan soʻng',
+ 'fri-future-one' => '{0} ta jumadan keyin',
+ 'fri-future-other' => '{0} ta jumadan keyin',
+ 'fri-narrow-future-one' => '{0} ta jumadan keyin',
+ 'fri-narrow-future-other' => '{0} ta jumadan keyin',
+ 'fri-narrow-past-one' => '{0} ta juma oldin',
+ 'fri-narrow-past-other' => '{0} ta juma oldin',
+ 'fri-past-one' => '{0} ta juma oldin',
+ 'fri-past-other' => '{0} ta juma oldin',
+ 'fri-short-future-one' => '{0} ta jumadan keyin',
+ 'fri-short-future-other' => '{0} ta jumadan keyin',
+ 'fri-short-past-one' => '{0} ta juma oldin',
+ 'fri-short-past-other' => '{0} ta juma oldin',
+ 'hour-future-one' => '{0} soatdan keyin',
+ 'hour-future-other' => '{0} soatdan keyin',
+ 'hour-narrow-future-one' => '{0} soatdan keyin',
+ 'hour-narrow-future-other' => '{0} soatdan keyin',
+ 'hour-narrow-past-one' => '{0} soat oldin',
+ 'hour-narrow-past-other' => '{0} soat oldin',
'hour-one' => '{0} soat',
'hour-other' => '{0} soat',
'hour-past-one' => '{0} soat oldin',
'hour-past-other' => '{0} soat oldin',
+ 'hour-short-future-one' => '{0} soatdan keyin',
+ 'hour-short-future-other' => '{0} soatdan keyin',
+ 'hour-short-past-one' => '{0} soat oldin',
+ 'hour-short-past-other' => '{0} soat oldin',
'microsecond-one' => '{0} mikrosoniya',
'microsecond-other' => '{0} mikrosoniya',
'millisecond-one' => '{0} millisoniya',
'millisecond-other' => '{0} millisoniya',
- 'minute-future-one' => '{0} daqiqadan soʻng',
- 'minute-future-other' => '{0} daqiqadan soʻng',
- 'minute-narrow-future-one' => '{0} daqiqadan soʻng',
- 'minute-narrow-future-other' => '{0} daqiqadan soʻng',
+ 'minute-future-one' => '{0} daqiqadan keyin',
+ 'minute-future-other' => '{0} daqiqadan keyin',
+ 'minute-narrow-future-one' => '{0} daqiqadan keyin',
+ 'minute-narrow-future-other' => '{0} daqiqadan keyin',
'minute-narrow-past-one' => '{0} daqiqa oldin',
'minute-narrow-past-other' => '{0} daqiqa oldin',
'minute-one' => '{0} daqiqa',
'minute-other' => '{0} daqiqa',
'minute-past-one' => '{0} daqiqa oldin',
'minute-past-other' => '{0} daqiqa oldin',
- 'month-future-one' => '{0} oydan soʻng',
- 'month-future-other' => '{0} oydan soʻng',
+ 'minute-short-future-one' => '{0} daqiqadan keyin',
+ 'minute-short-future-other' => '{0} daqiqadan keyin',
+ 'minute-short-past-one' => '{0} daqiqa oldin',
+ 'minute-short-past-other' => '{0} daqiqa oldin',
+ 'mon-future-one' => '{0} ta dushanbadan keyin',
+ 'mon-future-other' => '{0} ta dushanbadan keyin',
+ 'mon-narrow-future-one' => '{0} ta dushanbadan keyin',
+ 'mon-narrow-future-other' => '{0} ta dushanbadan keyin',
+ 'mon-narrow-past-one' => '{0} ta dushanba oldin',
+ 'mon-narrow-past-other' => '{0} ta dushanba oldin',
+ 'mon-past-one' => '{0} ta dushanba oldin',
+ 'mon-past-other' => '{0} ta dushanba oldin',
+ 'mon-short-future-one' => '{0} ta dushanbadan keyin',
+ 'mon-short-future-other' => '{0} ta dushanbadan keyin',
+ 'mon-short-past-one' => '{0} ta dushanba oldin',
+ 'mon-short-past-other' => '{0} ta dushanba oldin',
+ 'month-future-one' => '{0} oydan keyin',
+ 'month-future-other' => '{0} oydan keyin',
+ 'month-narrow-future-one' => '{0} oydan keyin',
+ 'month-narrow-future-other' => '{0} oydan keyin',
+ 'month-narrow-past-one' => '{0} oy oldin',
+ 'month-narrow-past-other' => '{0} oy oldin',
'month-one' => '{0} oy',
'month-other' => '{0} oy',
- 'month-past-one' => '{0} oy avval',
- 'month-past-other' => '{0} oy avval',
+ 'month-past-one' => '{0} oy oldin',
+ 'month-past-other' => '{0} oy oldin',
+ 'month-short-future-one' => '{0} oydan keyin',
+ 'month-short-future-other' => '{0} oydan keyin',
+ 'month-short-past-one' => '{0} oy oldin',
+ 'month-short-past-other' => '{0} oy oldin',
'nanosecond-one' => '{0} nanosoniya',
'nanosecond-other' => '{0} nanosoniya',
- 'quarter-future-one' => '{0} chorakda',
- 'quarter-future-other' => '{0} chorakda',
- 'quarter-narrow-future-one' => '{0} chorakda',
- 'quarter-narrow-future-other' => '{0} chorakda',
- 'quarter-narrow-past-one' => '{0} chorak avval',
- 'quarter-narrow-past-other' => '{0} chorak avval',
- 'quarter-past-one' => '{0} chorak avval',
- 'quarter-past-other' => '{0} chorak avval',
- 'second-future-one' => '{0} soniyadan soʻng',
- 'second-future-other' => '{0} soniyadan soʻng',
+ 'quarter-future-one' => '{0} chorakdan keyin',
+ 'quarter-future-other' => '{0} chorakdan keyin',
+ 'quarter-narrow-future-one' => '{0} chorakdan keyin',
+ 'quarter-narrow-future-other' => '{0} chorakdan keyin',
+ 'quarter-narrow-past-one' => '{0} chorak oldin',
+ 'quarter-narrow-past-other' => '{0} chorak oldin',
+ 'quarter-past-one' => '{0} chorak oldin',
+ 'quarter-past-other' => '{0} chorak oldin',
+ 'quarter-short-future-one' => '{0} chorakdan keyin',
+ 'quarter-short-future-other' => '{0} chorakdan keyin',
+ 'quarter-short-past-one' => '{0} chorak oldin',
+ 'quarter-short-past-other' => '{0} chorak oldin',
+ 'sat-future-one' => '{0} ta shanbadan keyin',
+ 'sat-future-other' => '{0} ta shanbadan keyin',
+ 'sat-narrow-future-one' => '{0} ta shanbadan keyin',
+ 'sat-narrow-future-other' => '{0} ta shanbadan keyin',
+ 'sat-narrow-past-one' => '{0} ta shanba oldin',
+ 'sat-narrow-past-other' => '{0} ta shanba oldin',
+ 'sat-past-one' => '{0} ta shanba oldin',
+ 'sat-past-other' => '{0} ta shanba oldin',
+ 'sat-short-future-one' => '{0} ta shanbadan keyin',
+ 'sat-short-future-other' => '{0} ta shanbadan keyin',
+ 'sat-short-past-one' => '{0} ta shanba oldin',
+ 'sat-short-past-other' => '{0} ta shanba oldin',
+ 'second-future-one' => '{0} soniyadan keyin',
+ 'second-future-other' => '{0} soniyadan keyin',
+ 'second-narrow-future-one' => '{0} soniyadan keyin',
+ 'second-narrow-future-other' => '{0} soniyadan keyin',
+ 'second-narrow-past-one' => '{0} soniya oldin',
+ 'second-narrow-past-other' => '{0} soniya oldin',
'second-one' => '{0} soniya',
'second-other' => '{0} soniya',
'second-past-one' => '{0} soniya oldin',
'second-past-other' => '{0} soniya oldin',
- 'week-future-one' => '{0} haftadan soʻng',
- 'week-future-other' => '{0} haftadan soʻng',
+ 'second-short-future-one' => '{0} soniyadan keyin',
+ 'second-short-future-other' => '{0} soniyadan keyin',
+ 'second-short-past-one' => '{0} soniya oldin',
+ 'second-short-past-other' => '{0} soniya oldin',
+ 'sun-future-one' => '{0} ta yakshanbadan keyin',
+ 'sun-future-other' => '{0} ta yakshanbadan keyin',
+ 'sun-narrow-future-one' => '{0} ta yakshanbadan keyin',
+ 'sun-narrow-future-other' => '{0} ta yakshanbadan keyin',
+ 'sun-narrow-past-one' => '{0} ta yakshanba oldin',
+ 'sun-narrow-past-other' => '{0} ta yakshanba oldin',
+ 'sun-past-one' => '{0} ta yakshanba oldin',
+ 'sun-past-other' => '{0} ta yakshanba oldin',
+ 'sun-short-future-one' => '{0} ta yakshanbadan keyin',
+ 'sun-short-future-other' => '{0} ta yakshanbadan keyin',
+ 'sun-short-past-one' => '{0} ta yakshanba oldin',
+ 'sun-short-past-other' => '{0} ta yakshanba oldin',
+ 'thu-future-one' => '{0} ta payshanbadan keyin',
+ 'thu-future-other' => '{0} ta payshanbadan keyin',
+ 'thu-narrow-future-one' => '{0} ta payshanbadan keyin',
+ 'thu-narrow-future-other' => '{0} ta payshanbadan keyin',
+ 'thu-narrow-past-one' => '{0} ta payshanba oldin',
+ 'thu-narrow-past-other' => '{0} ta payshanba oldin',
+ 'thu-past-one' => '{0} ta payshanba oldin',
+ 'thu-past-other' => '{0} ta payshanba oldin',
+ 'thu-short-future-one' => '{0} ta payshanbadan keyin',
+ 'thu-short-future-other' => '{0} ta payshanbadan keyin',
+ 'thu-short-past-one' => '{0} ta payshanba oldin',
+ 'thu-short-past-other' => '{0} ta payshanba oldin',
+ 'tue-future-one' => '{0} ta seshanbadan keyin',
+ 'tue-future-other' => '{0} ta seshanbadan keyin',
+ 'tue-narrow-future-one' => '{0} ta seshanbadan keyin',
+ 'tue-narrow-future-other' => '{0} ta seshanbadan keyin',
+ 'tue-narrow-past-one' => '{0} ta seshanba oldin',
+ 'tue-narrow-past-other' => '{0} ta seshanba oldin',
+ 'tue-past-one' => '{0} ta seshanba oldin',
+ 'tue-past-other' => '{0} ta seshanba oldin',
+ 'tue-short-future-one' => '{0} ta seshanbadan keyin',
+ 'tue-short-future-other' => '{0} ta seshanbadan keyin',
+ 'tue-short-past-one' => '{0} ta seshanba oldin',
+ 'tue-short-past-other' => '{0} ta seshanba oldin',
+ 'wed-future-one' => '{0} ta chorshanbadan keyin',
+ 'wed-future-other' => '{0} ta chorshanbadan keyin',
+ 'wed-narrow-future-one' => '{0} ta chorshanbadan keyin',
+ 'wed-narrow-future-other' => '{0} ta chorshanbadan keyin',
+ 'wed-narrow-past-one' => '{0} ta chorshanba oldin',
+ 'wed-narrow-past-other' => '{0} ta chorshanba oldin',
+ 'wed-past-one' => '{0} ta chorshanba oldin',
+ 'wed-past-other' => '{0} ta chorshanba oldin',
+ 'wed-short-future-one' => '{0} ta chorshanbadan keyin',
+ 'wed-short-future-other' => '{0} ta chorshanbadan keyin',
+ 'wed-short-past-one' => '{0} ta chorshanba oldin',
+ 'wed-short-past-other' => '{0} ta chorshanba oldin',
+ 'week-future-one' => '{0} haftadan keyin',
+ 'week-future-other' => '{0} haftadan keyin',
+ 'week-narrow-future-one' => '{0} haftadan keyin',
+ 'week-narrow-future-other' => '{0} haftadan keyin',
+ 'week-narrow-past-one' => '{0} hafta oldin',
+ 'week-narrow-past-other' => '{0} hafta oldin',
'week-one' => '{0} hafta',
'week-other' => '{0} hafta',
'week-past-one' => '{0} hafta oldin',
'week-past-other' => '{0} hafta oldin',
- 'year-future-one' => '{0} yildan soʻng',
- 'year-future-other' => '{0} yildan soʻng',
+ 'week-short-future-one' => '{0} haftadan keyin',
+ 'week-short-future-other' => '{0} haftadan keyin',
+ 'week-short-past-one' => '{0} hafta oldin',
+ 'week-short-past-other' => '{0} hafta oldin',
+ 'year-future-one' => '{0} yildan keyin',
+ 'year-future-other' => '{0} yildan keyin',
+ 'year-narrow-future-one' => '{0} yildan keyin',
+ 'year-narrow-future-other' => '{0} yildan keyin',
+ 'year-narrow-past-one' => '{0} yil oldin',
+ 'year-narrow-past-other' => '{0} yil oldin',
'year-one' => '{0} yil',
'year-other' => '{0} yil',
- 'year-past-one' => '{0} yil avval',
- 'year-past-other' => '{0} yil avval',
- 'year-short-future-one' => '{0} yildan soʻng',
- 'year-short-future-other' => '{0} yildan soʻng',
- 'year-short-past-one' => '{0} yil avval',
- 'year-short-past-other' => '{0} yil avval',
-);
+ 'year-past-one' => '{0} yil oldin',
+ 'year-past-other' => '{0} yil oldin',
+ 'year-short-future-one' => '{0} yildan keyin',
+ 'year-short-future-other' => '{0} yildan keyin',
+ 'year-short-past-one' => '{0} yil oldin',
+ 'year-short-past-other' => '{0} yil oldin',
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesUz_cyrl.php b/MLEB/cldr/CldrNames/CldrNamesUz_cyrl.php
index c5d73ffb..382873f0 100644
--- a/MLEB/cldr/CldrNames/CldrNamesUz_cyrl.php
+++ b/MLEB/cldr/CldrNames/CldrNamesUz_cyrl.php
@@ -1,126 +1,310 @@
<?php
-$languageNames = array(
- 'ab' => 'Абхазча',
- 'af' => 'Африканча',
- 'am' => 'Амхарча',
- 'ar' => 'Арабча',
- 'as' => 'Ассамча',
- 'az' => 'Озарбайжонча',
- 'be' => 'Беларусча',
- 'bg' => 'Болгарча',
- 'bn' => 'Бенгалча',
- 'bo' => 'Тибетча',
- 'bs' => 'Боснияча',
- 'ca' => 'Каталанча',
- 'cs' => 'Чехча',
- 'cy' => 'Уэлсча',
- 'da' => 'Данияча',
- 'de' => 'Олмонча',
- 'el' => 'Грекча',
- 'en' => 'Инглизча',
- 'eo' => 'Эсперанто',
- 'es' => 'Испанча',
- 'es-419' => 'Лотин Америка испанчаси',
- 'et' => 'Эстонча',
- 'eu' => 'Баскча',
- 'fa' => 'Форсча',
- 'fi' => 'Финча',
- 'fil' => 'Филипино',
- 'fj' => 'Фижича',
- 'fo' => 'Фарэрча',
- 'fr' => 'Французча',
- 'fy' => 'Ғарбий фризианча',
- 'ga' => 'Ирландча',
- 'gl' => 'Галицийча',
- 'gn' => 'Гуарани',
- 'gsw' => 'Швейцария немисчаси',
- 'gu' => 'Гужарати',
- 'ha' => 'Хауса',
- 'haw' => 'Гавайча',
- 'he' => 'Иброний',
- 'hi' => 'Ҳиндча',
- 'hr' => 'Хорватча',
- 'ht' => 'Гаитианча',
- 'hu' => 'Венгрча',
- 'hy' => 'Арманча',
- 'id' => 'Индонезияча',
- 'ig' => 'Игбо',
- 'is' => 'Исландча',
- 'it' => 'Италянча',
- 'ja' => 'Японча',
- 'jv' => 'Яванча',
- 'ka' => 'Грузинча',
- 'kk' => 'Қозоқча',
- 'km' => 'Хмерча',
- 'kn' => 'Каннада',
- 'ko' => 'Корейсча',
- 'ks' => 'Кашмирча',
- 'ku' => 'Курдча',
- 'ky' => 'Қирғизча',
- 'la' => 'Лотинча',
- 'lb' => 'Люксембургча',
- 'lo' => 'Лао',
- 'lt' => 'Литвача',
- 'lv' => 'Латишча',
- 'mg' => 'Малагаси',
- 'mi' => 'Маори',
- 'mk' => 'Македонча',
- 'ml' => 'Малайалам',
- 'mr' => 'Марати',
- 'ms' => 'Малайча',
- 'mt' => 'Мальтача',
- 'my' => 'Бирманча',
- 'nb' => 'Норвегча Бокмал',
- 'ne' => 'Непалча',
- 'nl' => 'Голландча',
- 'nl-be' => 'Фламандча',
- 'nn' => 'Норвегча Нинорск',
- 'or' => 'Ория',
- 'pa' => 'Панжобча',
- 'pl' => 'Полякча',
- 'ps' => 'Пушту',
- 'pt' => 'Португалча',
- 'qu' => 'Квечуа',
- 'rm' => 'Романча',
- 'ro' => 'Руминча',
- 'ru' => 'Русча',
- 'sa' => 'Санскритча',
- 'sd' => 'Синдхи',
- 'si' => 'Синхала',
- 'sk' => 'Словакча',
- 'sl' => 'Словенча',
- 'so' => 'Сомалича',
- 'sq' => 'Албанча',
- 'sr' => 'Сербча',
- 'su' => 'Сунданча',
- 'sv' => 'Шведча',
- 'sw' => 'Суахили',
- 'ta' => 'Тамилча',
- 'te' => 'Телугу',
- 'tg' => 'Тожикча',
- 'th' => 'Тайча',
- 'ti' => 'Тигринья',
- 'tk' => 'Туркманча',
- 'to' => 'Тонгоча',
- 'tr' => 'Туркча',
- 'tt' => 'Татарча',
- 'ug' => 'Уйғурча',
- 'uk' => 'Украинча',
- 'und' => 'Номаълум тил',
- 'ur' => 'Урду',
- 'uz' => 'Ўзбек',
- 'vi' => 'Вьетнамча',
- 'wo' => 'Волофча',
- 'xh' => 'Хоса',
- 'yo' => 'Йоруба',
- 'zgh' => 'Стандарт Марокаш Тамазит',
- 'zh' => 'Хитойча',
- 'zu' => 'Зулу',
+$languageNames = [
+ 'aa' => 'афарча',
+ 'ab' => 'абхазча',
+ 'ace' => 'ачин',
+ 'ada' => 'адангмэ',
+ 'ady' => 'адигей',
+ 'af' => 'африкаанс',
+ 'agq' => 'агемча',
+ 'ain' => 'айну',
+ 'ak' => 'аканча',
+ 'ale' => 'алеут',
+ 'am' => 'амхарча',
+ 'an' => 'арагон',
+ 'anp' => 'ангика',
+ 'ar' => 'арабча',
+ 'ar-001' => 'стандарт арабча',
+ 'arn' => 'мапудунгун',
+ 'arp' => 'арапахо',
+ 'as' => 'ассомча',
+ 'asa' => 'асуча',
+ 'ast' => 'астурийча',
+ 'av' => 'аварча',
+ 'awa' => 'авадхи',
+ 'ay' => 'аймара',
+ 'az' => 'озарбайжонча',
+ 'ba' => 'бошқирдча',
+ 'ban' => 'балича',
+ 'bas' => 'басаа',
+ 'be' => 'беларусча',
+ 'bem' => 'бемба',
+ 'bez' => 'бенача',
+ 'bg' => 'болгарча',
+ 'bho' => 'бхожпури',
+ 'bi' => 'бислама',
+ 'bin' => 'бини',
+ 'bm' => 'бамбарча',
+ 'bn' => 'бенгалча',
+ 'bo' => 'тибетча',
+ 'br' => 'бретонча',
+ 'brx' => 'бодоча',
+ 'bs' => 'боснийча',
+ 'bug' => 'бугийча',
+ 'byn' => 'блинча',
+ 'ca' => 'каталонча',
+ 'ce' => 'чечен тили',
+ 'ceb' => 'себуанча',
+ 'cgg' => 'чигача',
+ 'ch' => 'чаморро',
+ 'chk' => 'чуукча',
+ 'chm' => 'мари',
+ 'cho' => 'чоктавча',
+ 'chr' => 'чероки',
+ 'chy' => 'шайенн',
+ 'ckb' => 'сорани-курдча',
+ 'co' => 'корсиканча',
+ 'cs' => 'чехча',
+ 'cu' => 'славянча (черков)',
+ 'cv' => 'чуваш тили',
+ 'cy' => 'уэлсча',
+ 'da' => 'датча',
+ 'dak' => 'дакотча',
+ 'dar' => 'даргинча',
+ 'dav' => 'таитача',
+ 'de' => 'немисча',
+ 'dgr' => 'догриб',
+ 'dje' => 'зарма',
+ 'dsb' => 'қуйи-сорбча',
+ 'dua' => 'дуалача',
+ 'dv' => 'дивехи',
+ 'dyo' => 'диола-фогни',
+ 'dz' => 'дзонгка',
+ 'dzg' => 'дазага',
+ 'ebu' => 'эмбуча',
+ 'ee' => 'эвеча',
+ 'efi' => 'эфик',
+ 'eka' => 'экажук',
+ 'el' => 'грекча',
+ 'en' => 'инглизча',
+ 'en-gb' => 'инглизча (Британия)',
+ 'en-us' => 'инглизча (Америка)',
+ 'eo' => 'эсперанто',
+ 'es' => 'испанча',
+ 'et' => 'эстонча',
+ 'eu' => 'баскча',
+ 'ewo' => 'эвондонча',
+ 'fa' => 'форсий',
+ 'ff' => 'фулаҳ',
+ 'fi' => 'финча',
+ 'fil' => 'филипинча',
+ 'fj' => 'фижича',
+ 'fo' => 'фарерча',
+ 'fon' => 'фон',
+ 'fr' => 'французча',
+ 'fur' => 'фриулча',
+ 'fy' => 'ғарбий фризча',
+ 'ga' => 'ирландча',
+ 'gaa' => 'га',
+ 'gd' => 'шотландча гаелик',
+ 'gez' => 'геэз',
+ 'gil' => 'гилбертча',
+ 'gl' => 'галицийча',
+ 'gn' => 'гуарани',
+ 'gor' => 'горонтало',
+ 'gsw' => 'немисча (Швейцария)',
+ 'gu' => 'гужаротча',
+ 'guz' => 'гусии',
+ 'gv' => 'мэнча',
+ 'gwi' => 'гвичин',
+ 'ha' => 'хауса',
+ 'haw' => 'гавайча',
+ 'he' => 'иброний',
+ 'hi' => 'ҳинди',
+ 'hil' => 'хилигайнон',
+ 'hmn' => 'хмонгча',
+ 'hr' => 'хорватча',
+ 'hsb' => 'юқори сорбча',
+ 'ht' => 'гаитянча',
+ 'hu' => 'венгерча',
+ 'hup' => 'хупа тили',
+ 'hy' => 'арманча',
+ 'hz' => 'гереро',
+ 'ia' => 'интерлингва',
+ 'iba' => 'ибан тили',
+ 'ibb' => 'ибибо',
+ 'id' => 'индонезча',
+ 'ig' => 'игбо',
+ 'ilo' => 'илоко',
+ 'inh' => 'ингушча',
+ 'io' => 'идо',
+ 'is' => 'исландча',
+ 'it' => 'италянча',
+ 'iu' => 'инуктитут',
+ 'ja' => 'японча',
+ 'jgo' => 'нгомба',
+ 'jmc' => 'мачаме тили',
+ 'jv' => 'яванча',
+ 'ka' => 'грузинча',
+ 'kab' => 'кабилча',
+ 'kaj' => 'кажи',
+ 'kam' => 'камбача',
+ 'kde' => 'макондеча',
+ 'kea' => 'кабувердиану',
+ 'khq' => 'койра-чиини',
+ 'ki' => 'кикую',
+ 'kk' => 'қозоқча',
+ 'kkj' => 'како',
+ 'kl' => 'гренландча',
+ 'kln' => 'каленжинча',
+ 'km' => 'хмерча',
+ 'kn' => 'каннада',
+ 'ko' => 'корейсча',
+ 'kok' => 'конканча',
+ 'kr' => 'канури',
+ 'ks' => 'кашмирча',
+ 'ksb' => 'шамбала',
+ 'ksf' => 'бафияча',
+ 'ksh' => 'кёлнча',
+ 'ku' => 'курдча',
+ 'kw' => 'корнча',
+ 'ky' => 'қирғизча',
+ 'la' => 'лотинча',
+ 'lag' => 'лангича',
+ 'lb' => 'люксембургча',
+ 'lg' => 'гандача',
+ 'lkt' => 'лакотачалакотача',
+ 'ln' => 'лингалча',
+ 'lo' => 'лаосча',
+ 'lrc' => 'шимолий лури',
+ 'lt' => 'литвача',
+ 'lu' => 'луба-катанга',
+ 'lus' => 'лушай',
+ 'luy' => 'луҳя',
+ 'lv' => 'латишча',
+ 'mas' => 'масайча',
+ 'mdf' => 'мокша тили',
+ 'men' => 'менде',
+ 'mer' => 'меруча',
+ 'mfe' => 'морисьен',
+ 'mg' => 'малагасийча',
+ 'mgh' => 'махува-митто',
+ 'mgo' => 'мета',
+ 'mh' => 'маршалл тили',
+ 'mi' => 'маори',
+ 'mic' => 'микмак',
+ 'min' => 'минангкабау',
+ 'mk' => 'македонча',
+ 'ml' => 'малаялам',
+ 'mn' => 'мўғулча',
+ 'mni' => 'манипурча',
+ 'moh' => 'могавк',
+ 'mos' => 'мосси',
+ 'mr' => 'маратхи',
+ 'ms' => 'малай тил',
+ 'mt' => 'малтача',
+ 'mua' => 'мунданг',
+ 'mul' => 'бир нечта тил',
+ 'mus' => 'крикча',
+ 'mwl' => 'мирандес',
+ 'my' => 'бирманча',
+ 'myv' => 'эрзянча',
+ 'mzn' => 'мазандеран',
+ 'naq' => 'нама',
+ 'nb' => 'норвегча бокмал',
+ 'nd' => 'шимолий ндебеле',
+ 'ne' => 'непалча',
+ 'niu' => 'ниуэча',
+ 'nl' => 'голландча',
+ 'nl-be' => 'фламандча',
+ 'nmg' => 'квасио',
+ 'nn' => 'норвегча нюнорск',
+ 'nnh' => 'нгиембун',
+ 'nqo' => 'нко',
+ 'nr' => 'жанубий ндебелча',
+ 'nus' => 'нуэрча',
+ 'ny' => 'чева',
+ 'nyn' => 'нянколе',
+ 'oc' => 'окситанча',
+ 'om' => 'оромо',
+ 'or' => 'одия',
+ 'pa' => 'панжобча',
+ 'pap' => 'папияменто',
+ 'pl' => 'полякча',
+ 'ps' => 'пушту',
+ 'pt' => 'португалча',
+ 'qu' => 'кечуа',
+ 'quc' => 'кичэ',
+ 'rm' => 'романшча',
+ 'rn' => 'рунди',
+ 'ro' => 'руминча',
+ 'rof' => 'ромбоча',
+ 'ru' => 'русча',
+ 'rup' => 'арумин',
+ 'rw' => 'киняруанда',
+ 'rwk' => 'руанда тили',
+ 'sa' => 'санскрит',
+ 'sah' => 'саха',
+ 'saq' => 'самбуруча',
+ 'sat' => 'сантали',
+ 'sbp' => 'сангуча',
+ 'sd' => 'синдҳи',
+ 'se' => 'шимолий саамча',
+ 'seh' => 'сена',
+ 'ses' => 'койраборо-сенни',
+ 'sg' => 'санго',
+ 'shi' => 'ташелхит',
+ 'si' => 'сингалча',
+ 'sk' => 'словакча',
+ 'sl' => 'словенча',
+ 'sma' => 'жанубий саамча',
+ 'smj' => 'луле-саамча',
+ 'smn' => 'инари-саамча',
+ 'sms' => 'сколт-саамча',
+ 'sn' => 'шона',
+ 'so' => 'сомалича',
+ 'sq' => 'албанча',
+ 'sr' => 'сербча',
+ 'ss' => 'свати',
+ 'ssy' => 'саҳоча',
+ 'su' => 'сунданча',
+ 'sv' => 'шведча',
+ 'sw' => 'суахили',
+ 'sw-cd' => 'конго-суахили',
+ 'swb' => 'коморча',
+ 'syr' => 'сурияча',
+ 'ta' => 'тамилча',
+ 'te' => 'телугу',
+ 'teo' => 'тесо',
+ 'tg' => 'тожикча',
+ 'th' => 'тайча',
+ 'ti' => 'тигриняча',
+ 'tig' => 'тигре',
+ 'tk' => 'туркманча',
+ 'to' => 'тонганча',
+ 'tr' => 'туркча',
+ 'tt' => 'татарча',
+ 'twq' => 'тасавак',
+ 'tzm' => 'марказий атлас тамазигхт',
+ 'ug' => 'уйғурча',
+ 'uk' => 'украинча',
+ 'und' => 'номаълум тил',
+ 'ur' => 'урду',
+ 'uz' => 'ўзбекча',
+ 'vai' => 'ваи',
+ 've' => 'венда',
+ 'vi' => 'ветнамча',
+ 'vo' => 'волапюк',
+ 'vun' => 'вунжо',
+ 'wae' => 'валсерча',
+ 'wal' => 'волятта',
+ 'wo' => 'волофча',
+ 'xh' => 'хоса',
+ 'xog' => 'сога',
+ 'yav' => 'янгбен',
+ 'yi' => 'иддиш',
+ 'yo' => 'йоруба',
+ 'yue' => 'кантонча',
+ 'zgh' => 'тамазигхт',
+ 'zh' => 'хитойча',
+ 'zh-hans' => 'соддалаштирилган хитойча',
+ 'zh-hant' => 'анъанавий хитойча',
+ 'zu' => 'зулу',
'zxx' => 'Тил таркиби йўқ',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'ANG' => 'Голланд Антил гульдени',
'ARS' => 'Аргентина песоси',
'AWG' => 'Аруба флорини',
@@ -156,7 +340,7 @@ $currencyNames = array(
'MXN' => 'Мексика песоси',
'NIO' => 'Никарагуа кордобаси',
'PAB' => 'Панама бальбоаси',
- 'PEN' => 'Перу нуево сол',
+ 'PEN' => 'Перу сол',
'PYG' => 'Парагвай гуарани',
'RUB' => 'Рус рубли',
'SRD' => 'Суринам доллари',
@@ -164,11 +348,12 @@ $currencyNames = array(
'USD' => 'АҚШ доллари',
'UYU' => 'Уругвай песоси',
'UZS' => 'Ўзбекистон сўм',
- 'VEF' => 'Венесуэла боливари',
+ 'VEF' => 'Венесуэла боливари (2008–2018)',
+ 'VES' => 'Венесуэла боливари',
'XCD' => 'Шарқий Кариб доллари',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'BRL' => 'R$',
'CAD' => 'CA$',
'CNY' => 'CN¥',
@@ -180,19 +365,19 @@ $currencySymbols = array(
'USD' => 'US$',
'UZS' => 'сўм',
'XCD' => 'EC$',
-);
+];
-$countryNames = array(
- 'AC' => 'Вознесение ороли',
+$countryNames = [
+ 'AC' => 'Меърож ороли',
'AD' => 'Андорра',
'AE' => 'Бирлашган Араб Амирликлари',
'AF' => 'Афғонистон',
- 'AG' => 'Антигуа ва Барбадос',
- 'AI' => 'Ангила',
+ 'AG' => 'Антигуа ва Барбуда',
+ 'AI' => 'Ангилья',
'AL' => 'Албания',
'AM' => 'Арманистон',
'AO' => 'Ангола',
- 'AQ' => 'Антарктика',
+ 'AQ' => 'Антарктида',
'AR' => 'Аргентина',
'AS' => 'Америка Самоаси',
'AT' => 'Австрия',
@@ -209,17 +394,17 @@ $countryNames = array(
'BH' => 'Баҳрайн',
'BI' => 'Бурунди',
'BJ' => 'Бенин',
- 'BL' => 'Муқаддас Варфаломей',
+ 'BL' => 'Сен-Бартелеми',
'BM' => 'Бермуда',
'BN' => 'Бруней',
'BO' => 'Боливия',
- 'BQ' => 'Кариб Нидерландияси',
+ 'BQ' => 'Бонейр, Синт-Эстатиус ва Саба',
'BR' => 'Бразилия',
'BS' => 'Багама ороллари',
'BT' => 'Бутан',
- 'BV' => 'Бувет ороли',
+ 'BV' => 'Буве ороли',
'BW' => 'Ботсванна',
- 'BY' => 'Белорусия',
+ 'BY' => 'Беларус',
'BZ' => 'Белиз',
'CA' => 'Канада',
'CC' => 'Кокос (Килинг) ороллари',
@@ -227,7 +412,7 @@ $countryNames = array(
'CF' => 'Марказий Африка Республикаси',
'CG' => 'Конго Браззавиль',
'CH' => 'Швейцария',
- 'CI' => 'Кот-д-Ивуар',
+ 'CI' => 'Кот-д’Ивуар',
'CK' => 'Кук ороллари',
'CL' => 'Чили',
'CM' => 'Камерун',
@@ -237,18 +422,18 @@ $countryNames = array(
'CR' => 'Коста-Рика',
'CU' => 'Куба',
'CV' => 'Кабо-Верде',
- 'CW' => 'Курасао',
+ 'CW' => 'Кюрасао',
'CX' => 'Рождество ороли',
'CY' => 'Кипр',
- 'CZ' => 'Чехия Республикаси',
- 'DE' => 'Олмония',
- 'DG' => 'Диего Гарсия',
- 'DJ' => 'Джибути',
+ 'CZ' => 'Чехия',
+ 'DE' => 'Германия',
+ 'DG' => 'Диего-Гарсия',
+ 'DJ' => 'Жибути',
'DK' => 'Дания',
'DM' => 'Доминика',
'DO' => 'Доминикан Республикаси',
'DZ' => 'Жазоир',
- 'EA' => 'Сейта ва Мелилла',
+ 'EA' => 'Сэута ва Мелилла',
'EC' => 'Эквадор',
'EE' => 'Эстония',
'EG' => 'Миср',
@@ -258,13 +443,13 @@ $countryNames = array(
'ET' => 'Эфиопия',
'EU' => 'Европа Иттифоқи',
'FI' => 'Финляндия',
- 'FJ' => 'Фижи ороллари',
- 'FK' => 'Фолькленд ороллари',
+ 'FJ' => 'Фижи',
+ 'FK' => 'Фолкленд ороллари',
'FM' => 'Микронезия',
'FO' => 'Фарер ороллари',
'FR' => 'Франция',
'GA' => 'Габон',
- 'GB' => 'Бирлашган Қироллик',
+ 'GB' => 'Буюк Британия',
'GD' => 'Гренада',
'GE' => 'Грузия',
'GF' => 'Француз Гвианаси',
@@ -277,13 +462,13 @@ $countryNames = array(
'GP' => 'Гваделупе',
'GQ' => 'Экваториал Гвинея',
'GR' => 'Греция',
- 'GS' => 'Жанубий Джорджия ва Жанубий Сендвич ороллари',
+ 'GS' => 'Жанубий Георгия ва Жанубий Сендвич ороллари',
'GT' => 'Гватемала',
'GU' => 'Гуам',
'GW' => 'Гвинея-Бисау',
'GY' => 'Гаяна',
'HK' => 'Гонконг',
- 'HM' => 'Герд ороли ва МакДоналд ороллари',
+ 'HM' => 'Херд ва Макдоналд ороллари',
'HN' => 'Гондурас',
'HR' => 'Хорватия',
'HT' => 'Гаити',
@@ -294,12 +479,12 @@ $countryNames = array(
'IL' => 'Исроил',
'IM' => 'Мэн ороли',
'IN' => 'Ҳиндистон',
- 'IO' => 'Британия Ҳинд океани ҳудуди',
+ 'IO' => 'Британиянинг Ҳинд океанидаги ҳудуди',
'IQ' => 'Ироқ',
'IR' => 'Эрон',
'IS' => 'Исландия',
'IT' => 'Италия',
- 'JE' => 'Джерси',
+ 'JE' => 'Жерси',
'JM' => 'Ямайка',
'JO' => 'Иордания',
'JP' => 'Япония',
@@ -311,7 +496,7 @@ $countryNames = array(
'KN' => 'Сент-Китс ва Невис',
'KP' => 'Шимолий Корея',
'KR' => 'Жанубий Корея',
- 'KW' => 'Кувайт',
+ 'KW' => 'Қувайт',
'KY' => 'Кайман ороллари',
'KZ' => 'Қозоғистон',
'LA' => 'Лаос',
@@ -335,7 +520,7 @@ $countryNames = array(
'MK' => 'Македония',
'ML' => 'Мали',
'MM' => 'Мьянма (Бирма)',
- 'MN' => 'Муғулистон',
+ 'MN' => 'Монголия',
'MO' => 'Макао',
'MP' => 'Шимолий Марианна ороллари',
'MQ' => 'Мартиника',
@@ -358,26 +543,26 @@ $countryNames = array(
'NO' => 'Норвегия',
'NP' => 'Непал',
'NR' => 'Науру',
- 'NU' => 'Ниуе',
+ 'NU' => 'Ниуэ',
'NZ' => 'Янги Зеландия',
'OM' => 'Уммон',
'PA' => 'Панама',
'PE' => 'Перу',
'PF' => 'Француз Полинезияси',
- 'PG' => 'Папуа Янги Гвинея',
+ 'PG' => 'Папуа - Янги Гвинея',
'PH' => 'Филиппин',
'PK' => 'Покистон',
'PL' => 'Польша',
'PM' => 'Сент-Пьер ва Микелон',
- 'PN' => 'Питкарин ороллари',
+ 'PN' => 'Питкэрн ороллари',
'PR' => 'Пуэрто-Рико',
- 'PS' => 'Фаластина',
+ 'PS' => 'Фаластин',
'PT' => 'Португалия',
'PW' => 'Палау',
'PY' => 'Парагвай',
'QA' => 'Қатар',
'QO' => 'Ёндош Океания',
- 'RE' => 'Реюньон',
+ 'RE' => 'Реюнион',
'RO' => 'Руминия',
'RS' => 'Сербия',
'RU' => 'Россия',
@@ -388,9 +573,9 @@ $countryNames = array(
'SD' => 'Судан',
'SE' => 'Швеция',
'SG' => 'Сингапур',
- 'SH' => 'Муқаддас Елена ороллари',
+ 'SH' => 'Муқаддас Елена ороли',
'SI' => 'Словения',
- 'SJ' => 'Савльбард ва Жан Маен',
+ 'SJ' => 'Свалбард ва Ян-Майен',
'SK' => 'Словакия',
'SL' => 'Сьерра-Леоне',
'SM' => 'Сан-Марино',
@@ -399,19 +584,19 @@ $countryNames = array(
'SR' => 'Суринам',
'SS' => 'Жанубий Судан',
'ST' => 'Сан-Томе ва Принсипи',
- 'SV' => 'Эль-Сальвадор',
- 'SX' => 'Синт-Маартен',
+ 'SV' => 'Салвадор',
+ 'SX' => 'Синт-Мартен',
'SY' => 'Сурия',
'SZ' => 'Свазиленд',
- 'TA' => 'Тристан де Куна',
+ 'TA' => 'Тристан-да-Куня',
'TC' => 'Туркс ва Кайкос ороллари',
'TD' => 'Чад',
- 'TF' => 'Франция жанубий худудлари',
+ 'TF' => 'Француз жанубий ҳудудлари',
'TG' => 'Того',
- 'TH' => 'Тайланд',
+ 'TH' => 'Таиланд',
'TJ' => 'Тожикистон',
'TK' => 'Токелау',
- 'TL' => 'Шарқий-Тимор',
+ 'TL' => 'Тимор-Лесте',
'TM' => 'Туркманистон',
'TN' => 'Тунис',
'TO' => 'Тонга',
@@ -423,27 +608,27 @@ $countryNames = array(
'UA' => 'Украина',
'UG' => 'Уганда',
'UM' => 'АҚШ ёндош ороллари',
- 'US' => 'АКШ',
+ 'US' => 'АҚШ',
'UY' => 'Уругвай',
'UZ' => 'Ўзбекистон',
'VA' => 'Ватикан',
'VC' => 'Сент-Винсент ва Гренадин',
'VE' => 'Венесуэла',
- 'VG' => 'Британия Вирджиния ороллари',
- 'VI' => 'АҚШ Вирджиния ороллари',
+ 'VG' => 'Британия Виргин ороллари',
+ 'VI' => 'АҚШ Виргин ороллари',
'VN' => 'Вьетнам',
'VU' => 'Вануату',
- 'WF' => 'Уэллис ва Футуна',
+ 'WF' => 'Уоллис ва Футуна',
'WS' => 'Самоа',
'XK' => 'Косово',
'YE' => 'Яман',
'YT' => 'Майотта',
- 'ZA' => 'Жанубий Африка',
+ 'ZA' => 'Жанубий Африка Республикаси',
'ZM' => 'Замбия',
'ZW' => 'Зимбабве',
-);
+];
-$timeUnits = array(
+$timeUnits = [
'day-future-one' => '{0} кундан сўнг',
'day-future-other' => '{0} кундан сўнг',
'day-one' => '{0} кун',
@@ -488,4 +673,4 @@ $timeUnits = array(
'year-other' => '{0} йил',
'year-past-one' => '{0} йил аввал',
'year-past-other' => '{0} йил аввал',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesVe.php b/MLEB/cldr/CldrNames/CldrNamesVe.php
deleted file mode 100644
index edd86fbb..00000000
--- a/MLEB/cldr/CldrNames/CldrNamesVe.php
+++ /dev/null
@@ -1,5 +0,0 @@
-<?php
-
-$languageNames = array(
- 've' => 'Tshivenḓa',
-);
diff --git a/MLEB/cldr/CldrNames/CldrNamesVi.php b/MLEB/cldr/CldrNames/CldrNamesVi.php
index 38b02e4a..081e9293 100644
--- a/MLEB/cldr/CldrNames/CldrNamesVi.php
+++ b/MLEB/cldr/CldrNames/CldrNamesVi.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'Tiếng Afar',
'ab' => 'Tiếng Abkhazia',
'ace' => 'Tiếng Achinese',
@@ -8,13 +8,15 @@ $languageNames = array(
'ada' => 'Tiếng Adangme',
'ady' => 'Tiếng Adyghe',
'ae' => 'Tiếng Avestan',
- 'af' => 'Tiếng Nam Phi',
+ 'af' => 'Tiếng Afrikaans',
'afh' => 'Tiếng Afrihili',
'agq' => 'Tiếng Aghem',
'ain' => 'Tiếng Ainu',
'ak' => 'Tiếng Akan',
'akk' => 'Tiếng Akkadia',
+ 'akz' => 'Tiếng Alabama',
'ale' => 'Tiếng Aleut',
+ 'aln' => 'Tiếng Gheg Albani',
'alt' => 'Tiếng Altai Miền Nam',
'am' => 'Tiếng Amharic',
'an' => 'Tiếng Aragon',
@@ -23,11 +25,16 @@ $languageNames = array(
'ar' => 'Tiếng Ả Rập',
'ar-001' => 'Tiếng Ả Rập Hiện đại',
'arc' => 'Tiếng Aramaic',
- 'arn' => 'Tiếng Araucanian',
+ 'arn' => 'Tiếng Mapuche',
+ 'aro' => 'Tiếng Araona',
'arp' => 'Tiếng Arapaho',
+ 'arq' => 'Tiếng Ả Rập Algeria',
+ 'ars' => 'Tiếng Ả Rập Najdi',
'arw' => 'Tiếng Arawak',
+ 'arz' => 'Tiếng Ả Rập Ai Cập',
'as' => 'Tiếng Assam',
'asa' => 'Tiếng Asu',
+ 'ase' => 'Ngôn ngữ Ký hiệu Mỹ',
'ast' => 'Tiếng Asturias',
'av' => 'Tiếng Avaric',
'awa' => 'Tiếng Awadhi',
@@ -36,28 +43,37 @@ $languageNames = array(
'ba' => 'Tiếng Bashkir',
'bal' => 'Tiếng Baluchi',
'ban' => 'Tiếng Bali',
+ 'bar' => 'Tiếng Bavaria',
'bas' => 'Tiếng Basaa',
'bax' => 'Tiếng Bamun',
+ 'bbc' => 'Tiếng Batak Toba',
'bbj' => 'Tiếng Ghomala',
'be' => 'Tiếng Belarus',
'bej' => 'Tiếng Beja',
'bem' => 'Tiếng Bemba',
+ 'bew' => 'Tiếng Betawi',
'bez' => 'Tiếng Bena',
'bfd' => 'Tiếng Bafut',
+ 'bfq' => 'Tiếng Badaga',
'bg' => 'Tiếng Bulgaria',
+ 'bgn' => 'Tiếng Tây Balochi',
'bho' => 'Tiếng Bhojpuri',
'bi' => 'Tiếng Bislama',
'bik' => 'Tiếng Bikol',
'bin' => 'Tiếng Bini',
+ 'bjn' => 'Tiếng Banjar',
'bkm' => 'Tiếng Kom',
'bla' => 'Tiếng Siksika',
'bm' => 'Tiếng Bambara',
- 'bn' => 'Tiếng Bengali',
+ 'bn' => 'Tiếng Bangla',
'bo' => 'Tiếng Tây Tạng',
+ 'bpy' => 'Tiếng Bishnupriya',
+ 'bqi' => 'Tiếng Bakhtiari',
'br' => 'Tiếng Breton',
'bra' => 'Tiếng Braj',
+ 'brh' => 'Tiếng Brahui',
'brx' => 'Tiếng Bodo',
- 'bs' => 'Tiếng Nam Tư',
+ 'bs' => 'Tiếng Bosnia',
'bss' => 'Tiếng Akoose',
'bua' => 'Tiếng Buriat',
'bug' => 'Tiếng Bugin',
@@ -82,11 +98,13 @@ $languageNames = array(
'chp' => 'Tiếng Chipewyan',
'chr' => 'Tiếng Cherokee',
'chy' => 'Tiếng Cheyenne',
- 'ckb' => 'Tiếng Kurd Sorani',
+ 'ckb' => 'Tiếng Kurd Miền Trung',
'co' => 'Tiếng Corsica',
'cop' => 'Tiếng Coptic',
+ 'cps' => 'Tiếng Capiznon',
'cr' => 'Tiếng Cree',
'crh' => 'Tiếng Thổ Nhĩ Kỳ Crimean',
+ 'crs' => 'Tiếng Pháp Seselwa Creole',
'cs' => 'Tiếng Séc',
'csb' => 'Tiếng Kashubia',
'cu' => 'Tiếng Slavơ Nhà thờ',
@@ -105,6 +123,7 @@ $languageNames = array(
'dje' => 'Tiếng Zarma',
'doi' => 'Tiếng Dogri',
'dsb' => 'Tiếng Hạ Sorbia',
+ 'dtp' => 'Tiếng Dusun Miền Trung',
'dua' => 'Tiếng Duala',
'dum' => 'Tiếng Hà Lan Trung cổ',
'dv' => 'Tiếng Divehi',
@@ -115,6 +134,7 @@ $languageNames = array(
'ebu' => 'Tiếng Embu',
'ee' => 'Tiếng Ewe',
'efi' => 'Tiếng Efik',
+ 'egl' => 'Tiếng Emilia',
'egy' => 'Tiếng Ai Cập cổ',
'eka' => 'Tiếng Ekajuk',
'el' => 'Tiếng Hy Lạp',
@@ -126,37 +146,45 @@ $languageNames = array(
'eo' => 'Tiếng Quốc Tế Ngữ',
'es' => 'Tiếng Tây Ban Nha',
'es-419' => 'Tiếng Tây Ban Nha (Mỹ La tinh)',
+ 'es-es' => 'Tiếng Tây Ban Nha (Châu Âu)',
+ 'esu' => 'Tiếng Yupik Miền Trung',
'et' => 'Tiếng Estonia',
'eu' => 'Tiếng Basque',
'ewo' => 'Tiếng Ewondo',
+ 'ext' => 'Tiếng Extremadura',
'fa' => 'Tiếng Ba Tư',
'fan' => 'Tiếng Fang',
'fat' => 'Tiếng Fanti',
'ff' => 'Tiếng Fulah',
'fi' => 'Tiếng Phần Lan',
- 'fil' => 'Tiếng Philipin',
+ 'fil' => 'Tiếng Philippines',
'fj' => 'Tiếng Fiji',
- 'fo' => 'Tiếng Faore',
+ 'fo' => 'Tiếng Faroe',
'fon' => 'Tiếng Fon',
'fr' => 'Tiếng Pháp',
+ 'frc' => 'Tiếng Pháp Cajun',
'frm' => 'Tiếng Pháp Trung cổ',
'fro' => 'Tiếng Pháp cổ',
- 'frr' => 'Tiếng Frisian Miền Bắc',
+ 'frp' => 'Tiếng Arpitan',
+ 'frr' => 'Tiếng Frisia Miền Bắc',
'frs' => 'Tiếng Frisian Miền Đông',
'fur' => 'Tiếng Friulian',
'fy' => 'Tiếng Frisia',
- 'ga' => 'Tiếng Ai-len',
+ 'ga' => 'Tiếng Ireland',
'gaa' => 'Tiếng Ga',
'gag' => 'Tiếng Gagauz',
+ 'gan' => 'Tiếng Cám',
'gay' => 'Tiếng Gayo',
'gba' => 'Tiếng Gbaya',
- 'gd' => 'Tiếng Xentơ (Xcốt len)',
+ 'gd' => 'Tiếng Gael Scotland',
'gez' => 'Tiếng Geez',
'gil' => 'Tiếng Gilbert',
'gl' => 'Tiếng Galician',
+ 'glk' => 'Tiếng Gilaki',
'gmh' => 'Tiếng Thượng Giéc-man Trung cổ',
'gn' => 'Tiếng Guarani',
'goh' => 'Tiếng Thượng Giéc-man cổ',
+ 'gom' => 'Tiếng Goan Konkani',
'gon' => 'Tiếng Gondi',
'gor' => 'Tiếng Gorontalo',
'got' => 'Tiếng Gô-tích',
@@ -164,20 +192,24 @@ $languageNames = array(
'grc' => 'Tiếng Hy Lạp cổ',
'gsw' => 'Tiếng Đức (Thụy Sĩ)',
'gu' => 'Tiếng Gujarati',
+ 'gur' => 'Tiếng Frafra',
'guz' => 'Tiếng Gusii',
'gv' => 'Tiếng Manx',
'gwi' => 'Tiếng Gwichʼin',
'ha' => 'Tiếng Hausa',
'hai' => 'Tiếng Haida',
+ 'hak' => 'Tiếng Khách Gia',
'haw' => 'Tiếng Hawaii',
'he' => 'Tiếng Do Thái',
'hi' => 'Tiếng Hindi',
+ 'hif' => 'Tiếng Fiji Hindi',
'hil' => 'Tiếng Hiligaynon',
'hit' => 'Tiếng Hittite',
'hmn' => 'Tiếng Hmông',
'ho' => 'Tiếng Hiri Motu',
'hr' => 'Tiếng Croatia',
'hsb' => 'Tiếng Thượng Sorbia',
+ 'hsn' => 'Tiếng Tương',
'ht' => 'Tiếng Haiti',
'hu' => 'Tiếng Hungary',
'hup' => 'Tiếng Hupa',
@@ -195,16 +227,19 @@ $languageNames = array(
'inh' => 'Tiếng Ingush',
'io' => 'Tiếng Ido',
'is' => 'Tiếng Iceland',
- 'it' => 'Tiếng Ý',
+ 'it' => 'Tiếng Italy',
'iu' => 'Tiếng Inuktitut',
+ 'izh' => 'Tiếng Ingria',
'ja' => 'Tiếng Nhật',
+ 'jam' => 'Tiếng Anh Jamaica Creole',
'jbo' => 'Tiếng Lojban',
'jgo' => 'Tiếng Ngomba',
'jmc' => 'Tiếng Machame',
'jpr' => 'Tiếng Judeo-Ba Tư',
'jrb' => 'Tiếng Judeo-Ả Rập',
+ 'jut' => 'Tiếng Jutish',
'jv' => 'Tiếng Java',
- 'ka' => 'Tiếng Gruzia',
+ 'ka' => 'Tiếng Georgia',
'kaa' => 'Tiếng Kara-Kalpak',
'kab' => 'Tiếng Kabyle',
'kac' => 'Tiếng Kachin',
@@ -227,7 +262,7 @@ $languageNames = array(
'kkj' => 'Tiếng Kako',
'kl' => 'Tiếng Kalaallisut',
'kln' => 'Tiếng Kalenjin',
- 'km' => 'Tiếng Khơ-me',
+ 'km' => 'Tiếng Khmer',
'kmb' => 'Tiếng Kimbundu',
'kn' => 'Tiếng Kannada',
'ko' => 'Tiếng Hàn',
@@ -239,7 +274,7 @@ $languageNames = array(
'krc' => 'Tiếng Karachay-Balkar',
'krl' => 'Tiếng Karelian',
'kru' => 'Tiếng Kurukh',
- 'ks' => 'Tiếng Kashmiri',
+ 'ks' => 'Tiếng Kashmir',
'ksb' => 'Tiếng Shambala',
'ksf' => 'Tiếng Bafia',
'ksh' => 'Tiếng Cologne',
@@ -262,8 +297,10 @@ $languageNames = array(
'ln' => 'Tiếng Lingala',
'lo' => 'Tiếng Lào',
'lol' => 'Tiếng Mongo',
+ 'lou' => 'Tiếng Creole Louisiana',
'loz' => 'Tiếng Lozi',
- 'lt' => 'Tiếng Lít-va',
+ 'lrc' => 'Tiếng Bắc Luri',
+ 'lt' => 'Tiếng Litva',
'lu' => 'Tiếng Luba-Katanga',
'lua' => 'Tiếng Luba-Lulua',
'lui' => 'Tiếng Luiseno',
@@ -296,13 +333,13 @@ $languageNames = array(
'mk' => 'Tiếng Macedonia',
'ml' => 'Tiếng Malayalam',
'mn' => 'Tiếng Mông Cổ',
- 'mnc' => 'Tiếng Manchu',
+ 'mnc' => 'Tiếng Mãn Châu',
'mni' => 'Tiếng Manipuri',
'moh' => 'Tiếng Mohawk',
'mos' => 'Tiếng Mossi',
'mr' => 'Tiếng Marathi',
- 'ms' => 'Tiếng Malaysia',
- 'mt' => 'Tiếng Malt',
+ 'ms' => 'Tiếng Mã Lai',
+ 'mt' => 'Tiếng Malta',
'mua' => 'Tiếng Mundang',
'mul' => 'Nhiều Ngôn ngữ',
'mus' => 'Tiếng Creek',
@@ -311,17 +348,21 @@ $languageNames = array(
'my' => 'Tiếng Miến Điện',
'mye' => 'Tiếng Myene',
'myv' => 'Tiếng Erzya',
+ 'mzn' => 'Tiếng Mazanderani',
'na' => 'Tiếng Nauru',
+ 'nan' => 'Tiếng Mân Nam',
'nap' => 'Tiếng Napoli',
'naq' => 'Tiếng Nama',
'nb' => 'Tiếng Na Uy (Bokmål)',
'nd' => 'Tiếng Ndebele Miền Bắc',
'nds' => 'Tiếng Hạ Giéc-man',
+ 'nds-nl' => 'Tiếng Hạ Saxon',
'ne' => 'Tiếng Nepal',
'new' => 'Tiếng Newari',
'ng' => 'Tiếng Ndonga',
'nia' => 'Tiếng Nias',
'niu' => 'Tiếng Niuean',
+ 'njo' => 'Tiếng Ao Naga',
'nl' => 'Tiếng Hà Lan',
'nl-be' => 'Tiếng Flemish',
'nmg' => 'Tiếng Kwasio',
@@ -332,10 +373,10 @@ $languageNames = array(
'non' => 'Tiếng Na Uy cổ',
'nqo' => 'Tiếng N’Ko',
'nr' => 'Tiếng Ndebele Miền Nam',
- 'nso' => 'Bắc Sotho',
+ 'nso' => 'Tiếng Sotho Miền Bắc',
'nus' => 'Tiếng Nuer',
'nv' => 'Tiếng Navajo',
- 'nwc' => 'Tiếng Newari Cổ điển',
+ 'nwc' => 'Tiếng Newari cổ',
'ny' => 'Tiếng Nyanja',
'nym' => 'Tiếng Nyamwezi',
'nyn' => 'Tiếng Nyankole',
@@ -344,7 +385,7 @@ $languageNames = array(
'oc' => 'Tiếng Occitan',
'oj' => 'Tiếng Ojibwa',
'om' => 'Tiếng Oromo',
- 'or' => 'Tiếng Oriya',
+ 'or' => 'Tiếng Odia',
'os' => 'Tiếng Ossetic',
'osa' => 'Tiếng Osage',
'ota' => 'Tiếng Thổ Nhĩ Kỳ Ottoman',
@@ -354,23 +395,26 @@ $languageNames = array(
'pam' => 'Tiếng Pampanga',
'pap' => 'Tiếng Papiamento',
'pau' => 'Tiếng Palauan',
+ 'pcm' => 'Tiếng Nigeria Pidgin',
'peo' => 'Tiếng Ba Tư cổ',
'phn' => 'Tiếng Phoenicia',
'pi' => 'Tiếng Pali',
'pl' => 'Tiếng Ba Lan',
'pon' => 'Tiếng Pohnpeian',
+ 'prg' => 'Tiếng Prussia',
'pro' => 'Tiếng Provençal cổ',
'ps' => 'Tiếng Pashto',
'pt' => 'Tiếng Bồ Đào Nha',
- 'pt-br' => 'Tiếng Bồ Đào Nha (Braxin)',
+ 'pt-pt' => 'Tiếng Bồ Đào Nha (Châu Âu)',
'qu' => 'Tiếng Quechua',
'quc' => 'Tiếng Kʼicheʼ',
+ 'qug' => 'Tiếng Quechua ở Cao nguyên Chimborazo',
'raj' => 'Tiếng Rajasthani',
'rap' => 'Tiếng Rapanui',
'rar' => 'Tiếng Rarotongan',
'rm' => 'Tiếng Romansh',
'rn' => 'Tiếng Rundi',
- 'ro' => 'Tiếng Rumani',
+ 'ro' => 'Tiếng Romania',
'ro-md' => 'Tiếng Moldova',
'rof' => 'Tiếng Rombo',
'rom' => 'Tiếng Romany',
@@ -391,6 +435,7 @@ $languageNames = array(
'scn' => 'Tiếng Sicilia',
'sco' => 'Tiếng Scots',
'sd' => 'Tiếng Sindhi',
+ 'sdh' => 'Tiếng Kurd Miền Nam',
'se' => 'Tiếng Sami Miền Bắc',
'see' => 'Tiếng Seneca',
'seh' => 'Tiếng Sena',
@@ -398,7 +443,7 @@ $languageNames = array(
'ses' => 'Tiếng Koyraboro Senni',
'sg' => 'Tiếng Sango',
'sga' => 'Tiếng Ai-len cổ',
- 'sh' => 'Tiếng Xéc bi - Croatia',
+ 'sh' => 'Tiếng Serbo-Croatia',
'shi' => 'Tiếng Tachelhit',
'shn' => 'Tiếng Shan',
'shu' => 'Tiếng Ả-Rập Chad',
@@ -407,7 +452,7 @@ $languageNames = array(
'sk' => 'Tiếng Slovak',
'sl' => 'Tiếng Slovenia',
'sm' => 'Tiếng Samoa',
- 'sma' => 'TIếng Sami Miền Nam',
+ 'sma' => 'Tiếng Sami Miền Nam',
'smj' => 'Tiếng Lule Sami',
'smn' => 'Tiếng Inari Sami',
'sms' => 'Tiếng Skolt Sami',
@@ -415,35 +460,35 @@ $languageNames = array(
'snk' => 'Tiếng Soninke',
'so' => 'Tiếng Somali',
'sog' => 'Tiếng Sogdien',
- 'sq' => 'Tiếng An-ba-ni',
+ 'sq' => 'Tiếng Albania',
'sr' => 'Tiếng Serbia',
'srn' => 'Tiếng Sranan Tongo',
'srr' => 'Tiếng Serer',
'ss' => 'Tiếng Swati',
'ssy' => 'Tiếng Saho',
- 'st' => 'Tiếng Sesotho',
- 'su' => 'Tiếng Sudan',
+ 'st' => 'Tiếng Sotho Miền Nam',
+ 'su' => 'Tiếng Sunda',
'suk' => 'Tiếng Sukuma',
'sus' => 'Tiếng Susu',
'sux' => 'Tiếng Sumeria',
'sv' => 'Tiếng Thụy Điển',
'sw' => 'Tiếng Swahili',
+ 'sw-cd' => 'Tiếng Swahili Congo',
'swb' => 'Tiếng Cômo',
- 'swc' => 'Tiếng Swahili Congo',
- 'syc' => 'Tiếng Syria Cổ điển',
+ 'syc' => 'Tiếng Syriac cổ',
'syr' => 'Tiếng Syriac',
'ta' => 'Tiếng Tamil',
'te' => 'Tiếng Telugu',
'tem' => 'Tiếng Timne',
'teo' => 'Tiếng Teso',
'ter' => 'Tiếng Tereno',
- 'tet' => 'Tetum',
+ 'tet' => 'Tiếng Tetum',
'tg' => 'Tiếng Tajik',
'th' => 'Tiếng Thái',
- 'ti' => 'Tiếng Tigrigya',
+ 'ti' => 'Tiếng Tigrinya',
'tig' => 'Tiếng Tigre',
'tiv' => 'Tiếng Tiv',
- 'tk' => 'Tiếng Turk',
+ 'tk' => 'Tiếng Turkmen',
'tkl' => 'Tiếng Tokelau',
'tl' => 'Tiếng Tagalog',
'tlh' => 'Tiếng Klingon',
@@ -471,7 +516,7 @@ $languageNames = array(
'uk' => 'Tiếng Ucraina',
'umb' => 'Tiếng Umbundu',
'und' => 'Ngôn ngữ không xác định',
- 'ur' => 'Tiếng Uđu',
+ 'ur' => 'Tiếng Urdu',
'uz' => 'Tiếng Uzbek',
'vai' => 'Tiếng Vai',
've' => 'Tiếng Venda',
@@ -484,7 +529,9 @@ $languageNames = array(
'wal' => 'Tiếng Walamo',
'war' => 'Tiếng Waray',
'was' => 'Tiếng Washo',
+ 'wbp' => 'Tiếng Warlpiri',
'wo' => 'Tiếng Wolof',
+ 'wuu' => 'Tiếng Ngô',
'xal' => 'Tiếng Kalmyk',
'xh' => 'Tiếng Xhosa',
'xog' => 'Tiếng Soga',
@@ -492,10 +539,10 @@ $languageNames = array(
'yap' => 'Tiếng Yap',
'yav' => 'Tiếng Yangben',
'ybb' => 'Tiếng Yemba',
- 'yi' => 'Tiếng Y-đit',
+ 'yi' => 'Tiếng Yiddish',
'yo' => 'Tiếng Yoruba',
'yue' => 'Tiếng Quảng Đông',
- 'za' => 'Tiếng Zhuang',
+ 'za' => 'Tiếng Choang',
'zap' => 'Tiếng Zapotec',
'zbl' => 'Ký hiệu Blissymbols',
'zen' => 'Tiếng Zenaga',
@@ -505,16 +552,16 @@ $languageNames = array(
'zun' => 'Tiếng Zuni',
'zxx' => 'Không có nội dung ngôn ngữ',
'zza' => 'Tiếng Zaza',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'ADP' => 'Đồng Peseta của Andora',
'AED' => 'Dirham UAE',
'AFA' => 'Đồng Afghani của Afghanistan (1927–2002)',
'AFN' => 'Afghani Afghanistan',
'ALL' => 'Lek Albania',
'AMD' => 'Dram Armenia',
- 'ANG' => 'Guilder Tây Ấn Hà Lan',
+ 'ANG' => 'Guilder Antille Hà Lan',
'AOA' => 'Kwanza Angola',
'AOK' => 'Đồng Kwanza của Angola (1977–1991)',
'AON' => 'Đồng Kwanza Mới của Angola (1990–2000)',
@@ -561,7 +608,8 @@ $currencyNames = array(
'BUK' => 'Đồng Kyat Miến Điện',
'BWP' => 'Pula Botswana',
'BYB' => 'Đồng Rúp Mới của Belarus (1994–1999)',
- 'BYR' => 'Rúp Belarus',
+ 'BYN' => 'Rúp Belarus',
+ 'BYR' => 'Rúp Belarus (2000–2016)',
'BZD' => 'Đô la Belize',
'CAD' => 'Đô la Canada',
'CDF' => 'Franc Congo',
@@ -571,6 +619,7 @@ $currencyNames = array(
'CLE' => 'Đồng Escudo của Chile',
'CLF' => 'Đơn vị Kế toán của Chile (UF)',
'CLP' => 'Peso Chile',
+ 'CNH' => 'Nhân dân tệ (hải ngoại)',
'CNY' => 'Nhân dân tệ',
'COP' => 'Peso Colombia',
'COU' => 'Đơn vị Giá trị Thực của Colombia',
@@ -622,7 +671,7 @@ $currencyNames = array(
'HRD' => 'Đồng Dinar Croatia',
'HRK' => 'Kuna Croatia',
'HTG' => 'Gourde Haiti',
- 'HUF' => 'Forint Hungaria',
+ 'HUF' => 'Forint Hungary',
'IDR' => 'Rupiah Indonesia',
'IEP' => 'Pao Ai-len',
'ILP' => 'Pao Ixraen',
@@ -672,7 +721,8 @@ $currencyNames = array(
'MMK' => 'Kyat Myanma',
'MNT' => 'Tugrik Mông Cổ',
'MOP' => 'Pataca Ma Cao',
- 'MRO' => 'Ouguiya Mauritania',
+ 'MRO' => 'Ouguiya Mauritania (1973–2017)',
+ 'MRU' => 'Ouguiya Mauritania',
'MTL' => 'Lia xứ Man-tơ',
'MTP' => 'Đồng Bảng Malta',
'MUR' => 'Rupee Mauritius',
@@ -696,7 +746,7 @@ $currencyNames = array(
'OMR' => 'Rial Oman',
'PAB' => 'Balboa Panama',
'PEI' => 'Đồng Inti Peru',
- 'PEN' => 'Nuevo Sol Peru',
+ 'PEN' => 'Sol Peru',
'PES' => 'Đồng Sol Peru (1863–1965)',
'PGK' => 'Kina Papua New Guinean',
'PHP' => 'Peso Philipin',
@@ -721,7 +771,7 @@ $currencyNames = array(
'SDP' => 'Đồng Bảng Sudan (1957–1998)',
'SEK' => 'Krona Thụy Điển',
'SGD' => 'Đô la Singapore',
- 'SHP' => 'Bảng Saint Helena',
+ 'SHP' => 'Bảng St. Helena',
'SIT' => 'Tôla Xlôvênia',
'SKK' => 'Cuaron Xlôvác',
'SLL' => 'Leone Sierra Leone',
@@ -729,7 +779,8 @@ $currencyNames = array(
'SRD' => 'Đô la Suriname',
'SRG' => 'Đồng Guilder Surinam',
'SSP' => 'Bảng Nam Sudan',
- 'STD' => 'Dobra São Tomé và Príncipe',
+ 'STD' => 'Dobra São Tomé và Príncipe (1977–2017)',
+ 'STN' => 'Dobra São Tomé và Príncipe',
'SUR' => 'Đồng Rúp Sô viết',
'SVC' => 'Colón El Salvador',
'SYP' => 'Bảng Syria',
@@ -759,12 +810,13 @@ $currencyNames = array(
'UYU' => 'Peso Uruguay',
'UZS' => 'Som Uzbekistan',
'VEB' => 'Đồng bolívar của Venezuela (1871–2008)',
- 'VEF' => 'Bolívar Venezuela',
+ 'VEF' => 'Bolívar Venezuela (2008–2018)',
+ 'VES' => 'Bolívar Venezuela',
'VND' => 'Đồng Việt Nam',
'VNN' => 'Đồng Việt Nam (1978–1985)',
'VUV' => 'Vatu Vanuatu',
'WST' => 'Tala Samoa',
- 'XAF' => 'CFA Franc BEAC',
+ 'XAF' => 'Franc CFA Trung Phi',
'XAG' => 'Bạc',
'XAU' => 'Vàng',
'XBA' => 'Đơn vị Tổng hợp Châu Âu',
@@ -776,7 +828,7 @@ $currencyNames = array(
'XEU' => 'Đơn vị Tiền Châu Âu',
'XFO' => 'Đồng France Pháp Vàng',
'XFU' => 'Đồng UIC-Franc Pháp',
- 'XOF' => 'Franc CFA BCEAO',
+ 'XOF' => 'Franc CFA Tây Phi',
'XPD' => 'Paladi',
'XPF' => 'Franc CFP',
'XPT' => 'Bạch kim',
@@ -798,9 +850,9 @@ $currencyNames = array(
'ZWD' => 'Đồng Đô la Zimbabwe (1980–2008)',
'ZWL' => 'Đồng Đô la Zimbabwe (2009)',
'ZWR' => 'Đồng Đô la Zimbabwe (2008)',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'ADP' => 'ADP',
'AED' => 'AED',
'AFA' => 'AFA',
@@ -854,6 +906,7 @@ $currencySymbols = array(
'BUK' => 'BUK',
'BWP' => 'BWP',
'BYB' => 'BYB',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CA$',
@@ -864,6 +917,7 @@ $currencySymbols = array(
'CLE' => 'CLE',
'CLF' => 'CLF',
'CLP' => 'CLP',
+ 'CNH' => 'CNH',
'CNY' => 'CN¥',
'COP' => 'COP',
'COU' => 'COU',
@@ -966,6 +1020,7 @@ $currencySymbols = array(
'MNT' => 'MNT',
'MOP' => 'MOP',
'MRO' => 'MRO',
+ 'MRU' => 'MRU',
'MTL' => 'MTL',
'MTP' => 'MTP',
'MUR' => 'MUR',
@@ -1023,6 +1078,7 @@ $currencySymbols = array(
'SRG' => 'SRG',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'STN',
'SUR' => 'SUR',
'SVC' => 'SVC',
'SYP' => 'SYP',
@@ -1053,6 +1109,7 @@ $currencySymbols = array(
'UZS' => 'UZS',
'VEB' => 'VEB',
'VEF' => 'VEF',
+ 'VES' => 'VES',
'VND' => '₫',
'VNN' => 'VNN',
'VUV' => 'VUV',
@@ -1091,24 +1148,23 @@ $currencySymbols = array(
'ZWD' => 'ZWD',
'ZWL' => 'ZWL',
'ZWR' => 'ZWR',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'Đảo Ascension',
'AD' => 'Andorra',
- 'AE' => 'Các Tiểu V.quốc Ả Rập T.nhất',
+ 'AE' => 'Các Tiểu Vương quốc Ả Rập Thống nhất',
'AF' => 'Afghanistan',
'AG' => 'Antigua và Barbuda',
'AI' => 'Anguilla',
- 'AL' => 'Albani',
+ 'AL' => 'Albania',
'AM' => 'Armenia',
- 'AN' => 'Tây Ấn Hà Lan',
'AO' => 'Angola',
'AQ' => 'Nam Cực',
'AR' => 'Argentina',
- 'AS' => 'Đảo Somoa thuộc Mỹ',
+ 'AS' => 'Samoa thuộc Mỹ',
'AT' => 'Áo',
- 'AU' => 'Úc',
+ 'AU' => 'Australia',
'AW' => 'Aruba',
'AX' => 'Quần đảo Åland',
'AZ' => 'Azerbaijan',
@@ -1117,11 +1173,11 @@ $countryNames = array(
'BD' => 'Bangladesh',
'BE' => 'Bỉ',
'BF' => 'Burkina Faso',
- 'BG' => 'Bungari',
+ 'BG' => 'Bulgaria',
'BH' => 'Bahrain',
'BI' => 'Burundi',
'BJ' => 'Benin',
- 'BL' => 'Saint Barthélemy',
+ 'BL' => 'St. Barthélemy',
'BM' => 'Bermuda',
'BN' => 'Brunei',
'BO' => 'Bolivia',
@@ -1139,7 +1195,7 @@ $countryNames = array(
'CF' => 'Cộng hòa Trung Phi',
'CG' => 'Congo - Brazzaville',
'CH' => 'Thụy Sĩ',
- 'CI' => 'Bờ Biển Ngà',
+ 'CI' => 'Côte d’Ivoire',
'CK' => 'Quần đảo Cook',
'CL' => 'Chile',
'CM' => 'Cameroon',
@@ -1152,7 +1208,7 @@ $countryNames = array(
'CW' => 'Curaçao',
'CX' => 'Đảo Giáng Sinh',
'CY' => 'Síp',
- 'CZ' => 'Cộng hòa Séc',
+ 'CZ' => 'Séc',
'DE' => 'Đức',
'DG' => 'Diego Garcia',
'DJ' => 'Djibouti',
@@ -1169,6 +1225,7 @@ $countryNames = array(
'ES' => 'Tây Ban Nha',
'ET' => 'Ethiopia',
'EU' => 'Liên Minh Châu Âu',
+ 'EZ' => 'Khu vực đồng Euro',
'FI' => 'Phần Lan',
'FJ' => 'Fiji',
'FK' => 'Quần đảo Falkland',
@@ -1178,7 +1235,7 @@ $countryNames = array(
'GA' => 'Gabon',
'GB' => 'Vương quốc Anh',
'GD' => 'Grenada',
- 'GE' => 'Georgia',
+ 'GE' => 'Gruzia',
'GF' => 'Guiana thuộc Pháp',
'GG' => 'Guernsey',
'GH' => 'Ghana',
@@ -1189,28 +1246,28 @@ $countryNames = array(
'GP' => 'Guadeloupe',
'GQ' => 'Guinea Xích Đạo',
'GR' => 'Hy Lạp',
- 'GS' => 'Quần đảo Nam Georgia và Nam Sandwich',
+ 'GS' => 'Nam Georgia & Quần đảo Nam Sandwich',
'GT' => 'Guatemala',
'GU' => 'Guam',
'GW' => 'Guinea-Bissau',
'GY' => 'Guyana',
'HK' => 'Hồng Kông',
- 'HM' => 'Đảo Heard và Quần đảo McDonald',
+ 'HM' => 'Quần đảo Heard và McDonald',
'HN' => 'Honduras',
'HR' => 'Croatia',
'HT' => 'Haiti',
- 'HU' => 'Hungari',
+ 'HU' => 'Hungary',
'IC' => 'Quần đảo Canary',
'ID' => 'Indonesia',
- 'IE' => 'Ai-len',
+ 'IE' => 'Ireland',
'IL' => 'Israel',
'IM' => 'Đảo Man',
'IN' => 'Ấn Độ',
- 'IO' => 'Thuộc địa Anh tại Ấn Độ Dương',
- 'IQ' => 'I-rắc',
+ 'IO' => 'Lãnh thổ Ấn Độ Dương thuộc Anh',
+ 'IQ' => 'Iraq',
'IR' => 'Iran',
'IS' => 'Iceland',
- 'IT' => 'Ý',
+ 'IT' => 'Italy',
'JE' => 'Jersey',
'JM' => 'Jamaica',
'JO' => 'Jordan',
@@ -1220,28 +1277,28 @@ $countryNames = array(
'KH' => 'Campuchia',
'KI' => 'Kiribati',
'KM' => 'Comoros',
- 'KN' => 'Saint Kitts và Nevis',
+ 'KN' => 'St. Kitts và Nevis',
'KP' => 'Triều Tiên',
'KR' => 'Hàn Quốc',
- 'KW' => 'Cô-oét',
+ 'KW' => 'Kuwait',
'KY' => 'Quần đảo Cayman',
'KZ' => 'Kazakhstan',
'LA' => 'Lào',
'LB' => 'Li-băng',
- 'LC' => 'Saint Lucia',
+ 'LC' => 'St. Lucia',
'LI' => 'Liechtenstein',
'LK' => 'Sri Lanka',
'LR' => 'Liberia',
'LS' => 'Lesotho',
- 'LT' => 'Lít-va',
+ 'LT' => 'Litva',
'LU' => 'Luxembourg',
'LV' => 'Latvia',
- 'LY' => 'Li-bi',
+ 'LY' => 'Libya',
'MA' => 'Ma-rốc',
'MC' => 'Monaco',
'MD' => 'Moldova',
'ME' => 'Montenegro',
- 'MF' => 'Saint Martin',
+ 'MF' => 'St. Martin',
'MG' => 'Madagascar',
'MH' => 'Quần đảo Marshall',
'MK' => 'Macedonia',
@@ -1277,7 +1334,7 @@ $countryNames = array(
'PE' => 'Peru',
'PF' => 'Polynesia thuộc Pháp',
'PG' => 'Papua New Guinea',
- 'PH' => 'Philippin',
+ 'PH' => 'Philippines',
'PK' => 'Pakistan',
'PL' => 'Ba Lan',
'PM' => 'Saint Pierre và Miquelon',
@@ -1300,14 +1357,14 @@ $countryNames = array(
'SD' => 'Sudan',
'SE' => 'Thụy Điển',
'SG' => 'Singapore',
- 'SH' => 'Saint Helena',
+ 'SH' => 'St. Helena',
'SI' => 'Slovenia',
'SJ' => 'Svalbard và Jan Mayen',
'SK' => 'Slovakia',
'SL' => 'Sierra Leone',
'SM' => 'San Marino',
'SN' => 'Senegal',
- 'SO' => 'Somali',
+ 'SO' => 'Somalia',
'SR' => 'Suriname',
'SS' => 'Nam Sudan',
'ST' => 'São Tomé và Príncipe',
@@ -1316,14 +1373,14 @@ $countryNames = array(
'SY' => 'Syria',
'SZ' => 'Swaziland',
'TA' => 'Tristan da Cunha',
- 'TC' => 'Quần đảo Turk và Caicos',
+ 'TC' => 'Quần đảo Turks và Caicos',
'TD' => 'Chad',
- 'TF' => 'Lãnh thổ miền nam nước Pháp',
+ 'TF' => 'Lãnh thổ phía Nam Thuộc Pháp',
'TG' => 'Togo',
'TH' => 'Thái Lan',
'TJ' => 'Tajikistan',
'TK' => 'Tokelau',
- 'TL' => 'Đông Timor',
+ 'TL' => 'Timor-Leste',
'TM' => 'Turkmenistan',
'TN' => 'Tunisia',
'TO' => 'Tonga',
@@ -1334,12 +1391,13 @@ $countryNames = array(
'TZ' => 'Tanzania',
'UA' => 'Ukraina',
'UG' => 'Uganda',
- 'UM' => 'Các đảo nhỏ xa t.tâm thuộc Mỹ',
+ 'UM' => 'Các tiểu đảo xa của Hoa Kỳ',
+ 'UN' => 'Liên hiệp quốc',
'US' => 'Hoa Kỳ',
'UY' => 'Uruguay',
'UZ' => 'Uzbekistan',
'VA' => 'Thành Vatican',
- 'VC' => 'Saint Vincent và Grenadines',
+ 'VC' => 'St. Vincent và Grenadines',
'VE' => 'Venezuela',
'VG' => 'Quần đảo Virgin thuộc Anh',
'VI' => 'Quần đảo Virgin thuộc Mỹ',
@@ -1353,65 +1411,108 @@ $countryNames = array(
'ZA' => 'Nam Phi',
'ZM' => 'Zambia',
'ZW' => 'Zimbabwe',
-);
+];
-$timeUnits = array(
- 'day-future-other' => 'trong {0} ngày nữa',
- 'day-narrow-future-other' => 'trong {0} ngày',
+$timeUnits = [
+ 'century-other' => '{0} thế kỷ',
+ 'day-future-other' => 'sau {0} ngày nữa',
+ 'day-narrow-future-other' => 'sau {0} ngày nữa',
'day-narrow-past-other' => '{0} ngày trước',
'day-other' => '{0} ngày',
'day-past-other' => '{0} ngày trước',
- 'day-short-future-other' => 'trong {0} ngày nữa',
+ 'day-short-future-other' => 'sau {0} ngày nữa',
'day-short-past-other' => '{0} ngày trước',
- 'hour-future-other' => 'trong {0} giờ nữa',
- 'hour-narrow-future-other' => 'trong {0} giờ',
+ 'fri-future-other' => 'sau {0} Thứ Sáu nữa',
+ 'fri-narrow-future-other' => 'sau {0} Thứ Sáu nữa',
+ 'fri-narrow-past-other' => '{0} Thứ Sáu trước',
+ 'fri-past-other' => '{0} Thứ Sáu trước',
+ 'fri-short-future-other' => 'sau {0} Thứ Sáu nữa',
+ 'fri-short-past-other' => '{0} Thứ Sáu trước',
+ 'hour-future-other' => 'sau {0} giờ nữa',
+ 'hour-narrow-future-other' => 'sau {0} giờ nữa',
'hour-narrow-past-other' => '{0} giờ trước',
'hour-other' => '{0} giờ',
'hour-past-other' => '{0} giờ trước',
- 'hour-short-future-other' => 'trong {0} giờ nữa',
+ 'hour-short-future-other' => 'sau {0} giờ nữa',
'hour-short-past-other' => '{0} giờ trước',
'microsecond-other' => '{0} micrô giây',
'millisecond-other' => '{0} mili giây',
- 'minute-future-other' => 'trong {0} phút nữa',
- 'minute-narrow-future-other' => 'trong {0} phút',
+ 'minute-future-other' => 'sau {0} phút nữa',
+ 'minute-narrow-future-other' => 'sau {0} phút nữa',
'minute-narrow-past-other' => '{0} phút trước',
'minute-other' => '{0} phút',
'minute-past-other' => '{0} phút trước',
- 'minute-short-future-other' => 'trong {0} phút nữa',
+ 'minute-short-future-other' => 'sau {0} phút nữa',
'minute-short-past-other' => '{0} phút trước',
- 'month-future-other' => 'trong {0} tháng nữa',
- 'month-narrow-future-other' => 'trong {0} tháng nữa',
+ 'mon-future-other' => 'sau {0} Thứ Hai nữa',
+ 'mon-narrow-future-other' => 'sau {0} Thứ Hai nữa',
+ 'mon-narrow-past-other' => '{0} Thứ Hai trước',
+ 'mon-past-other' => '{0} Thứ Hai trước',
+ 'mon-short-future-other' => 'sau {0} Thứ Hai nữa',
+ 'mon-short-past-other' => '{0} Thứ Hai trước',
+ 'month-future-other' => 'sau {0} tháng nữa',
+ 'month-narrow-future-other' => 'sau {0} tháng nữa',
'month-narrow-past-other' => '{0} tháng trước',
'month-other' => '{0} tháng',
'month-past-other' => '{0} tháng trước',
- 'month-short-future-other' => 'trong {0} tháng nữa',
+ 'month-short-future-other' => 'sau {0} tháng nữa',
'month-short-past-other' => '{0} tháng trước',
'nanosecond-other' => '{0} nano giây',
- 'quarter-future-other' => 'trong {0} quý nữa',
- 'quarter-narrow-future-other' => 'trong {0} quý nữa',
+ 'quarter-future-other' => 'sau {0} quý nữa',
+ 'quarter-narrow-future-other' => 'sau {0} quý nữa',
'quarter-narrow-past-other' => '{0} quý trước',
'quarter-past-other' => '{0} quý trước',
- 'quarter-short-future-other' => 'trong {0} quý nữa',
+ 'quarter-short-future-other' => 'sau {0} quý nữa',
'quarter-short-past-other' => '{0} quý trước',
- 'second-future-other' => 'trong {0} giây nữa',
- 'second-narrow-future-other' => 'trong {0} giây',
+ 'sat-future-other' => 'sau {0} Thứ Bảy nữa',
+ 'sat-narrow-future-other' => 'sau {0} Thứ Bảy nữa',
+ 'sat-narrow-past-other' => '{0} Thứ Bảy trước',
+ 'sat-past-other' => '{0} Thứ Bảy trước',
+ 'sat-short-future-other' => 'sau {0} Thứ Bảy nữa',
+ 'sat-short-past-other' => '{0} Thứ Bảy trước',
+ 'second-future-other' => 'sau {0} giây nữa',
+ 'second-narrow-future-other' => 'sau {0} giây nữa',
'second-narrow-past-other' => '{0} giây trước',
'second-other' => '{0} giây',
'second-past-other' => '{0} giây trước',
- 'second-short-future-other' => 'trong {0} giây nữa',
+ 'second-short-future-other' => 'sau {0} giây nữa',
'second-short-past-other' => '{0} giây trước',
- 'week-future-other' => 'trong {0} tuần nữa',
- 'week-narrow-future-other' => 'trong {0} tuần nữa',
+ 'sun-future-other' => 'sau {0} Chủ Nhật nữa',
+ 'sun-narrow-future-other' => 'sau {0} Chủ Nhật nữa',
+ 'sun-narrow-past-other' => '{0} Chủ Nhật trước',
+ 'sun-past-other' => '{0} Chủ Nhật trước',
+ 'sun-short-future-other' => 'sau {0} Chủ Nhật nữa',
+ 'sun-short-past-other' => '{0} Chủ Nhật trước',
+ 'thu-future-other' => 'sau {0} Thứ Năm nữa',
+ 'thu-narrow-future-other' => 'sau {0} Thứ Năm nữa',
+ 'thu-narrow-past-other' => '{0} Thứ Năm trước',
+ 'thu-past-other' => '{0} Thứ Năm trước',
+ 'thu-short-future-other' => 'sau {0} Thứ Năm nữa',
+ 'thu-short-past-other' => '{0} Thứ Năm trước',
+ 'tue-future-other' => 'sau {0} Thứ Ba nữa',
+ 'tue-narrow-future-other' => 'sau {0} Thứ Ba nữa',
+ 'tue-narrow-past-other' => '{0} Thứ Ba trước',
+ 'tue-past-other' => '{0} Thứ Ba trước',
+ 'tue-short-future-other' => 'sau {0} Thứ Ba nữa',
+ 'tue-short-past-other' => '{0} Thứ Ba trước',
+ 'wed-future-other' => 'sau {0} Thứ Tư nữa',
+ 'wed-narrow-future-other' => 'sau {0} Thứ Tư nữa',
+ 'wed-narrow-past-other' => '{0} Thứ Tư trước',
+ 'wed-past-other' => '{0} Thứ Tư trước',
+ 'wed-short-future-other' => 'sau {0} Thứ Tư nữa',
+ 'wed-short-past-other' => '{0} Thứ Tư trước',
+ 'week-future-other' => 'sau {0} tuần nữa',
+ 'week-narrow-future-other' => 'sau {0} tuần nữa',
'week-narrow-past-other' => '{0} tuần trước',
'week-other' => '{0} tuần',
'week-past-other' => '{0} tuần trước',
- 'week-short-future-other' => 'trong {0} tuần nữa',
+ 'week-short-future-other' => 'sau {0} tuần nữa',
'week-short-past-other' => '{0} tuần trước',
- 'year-future-other' => 'trong {0} năm nữa',
- 'year-narrow-future-other' => 'trong {0} năm nữa',
+ 'year-future-other' => 'sau {0} năm nữa',
+ 'year-narrow-future-other' => 'sau {0} năm nữa',
'year-narrow-past-other' => '{0} năm trước',
'year-other' => '{0} năm',
'year-past-other' => '{0} năm trước',
- 'year-short-future-other' => 'trong {0} năm nữa',
+ 'year-short-future-other' => 'sau {0} năm nữa',
'year-short-past-other' => '{0} năm trước',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesVo.php b/MLEB/cldr/CldrNames/CldrNamesVo.php
index 5a03aef1..3b471a7f 100644
--- a/MLEB/cldr/CldrNames/CldrNamesVo.php
+++ b/MLEB/cldr/CldrNames/CldrNamesVo.php
@@ -1,23 +1,42 @@
<?php
-$languageNames = array(
+$languageNames = [
+ 'de' => 'Deutänapük',
'en' => 'Linglänapük',
'eo' => 'Sperantapük',
'es' => 'Spanyänapük',
+ 'fr' => 'Fransänapük',
+ 'it' => 'Litaliyänapük',
+ 'ja' => 'Yapänapük',
'pt' => 'Portugänapük',
'ru' => 'Rusänapük',
'vo' => 'Volapük',
-);
+ 'zh' => 'Tsyinänapük',
+];
-$countryNames = array(
+$countryNames = [
+ 'BR' => 'Brasilän',
+ 'CN' => 'Tsyinän',
'DE' => 'Deutän',
'ES' => 'Spanyän',
'FR' => 'Fransän',
+ 'GB' => 'Regän Pebalöl',
'GE' => 'Grusiyän',
'GR' => 'Grikän',
+ 'IN' => 'Lindän',
'IT' => 'Litaliyän',
+ 'JP' => 'Yapän',
'MX' => 'Mäxikän',
'NR' => 'Naureän',
'PT' => 'Portugän',
'PW' => 'Palauäns',
-);
+ 'RU' => 'Rusän',
+ 'US' => 'Lamerikän',
+];
+
+$timeUnits = [
+ 'month-one' => 'mul {0}',
+ 'month-other' => 'muls {0}',
+ 'year-one' => 'yel {0}',
+ 'year-other' => 'yels {0}',
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesXh.php b/MLEB/cldr/CldrNames/CldrNamesXh.php
index 839f1d0c..0b81b8ed 100644
--- a/MLEB/cldr/CldrNames/CldrNamesXh.php
+++ b/MLEB/cldr/CldrNames/CldrNamesXh.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'af' => 'isiBhulu',
'am' => 'Isi-Amharic',
'ar' => 'Isi-Arabic',
@@ -8,7 +8,6 @@ $languageNames = array(
'az' => 'Isi-Azerbaijani',
'be' => 'Isi-Belarusian',
'bg' => 'Isi-Bulgaria',
- 'bh' => 'Isi-Bihari',
'bn' => 'Isi-Bengali',
'br' => 'Breton',
'bs' => 'Isi-Bosnia',
@@ -106,4 +105,16 @@ $languageNames = array(
'xh' => 'isiXhosa',
'yi' => 'Yiddish',
'zu' => 'isiZulu',
-);
+];
+
+$currencyNames = [
+ 'ZAR' => 'iRandi yaseMzanzi Afrika',
+];
+
+$currencySymbols = [
+ 'ZAR' => 'R',
+];
+
+$countryNames = [
+ 'ZA' => 'eMzantsi Afrika',
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesYi.php b/MLEB/cldr/CldrNames/CldrNamesYi.php
index 57318407..cc9400e3 100644
--- a/MLEB/cldr/CldrNames/CldrNamesYi.php
+++ b/MLEB/cldr/CldrNames/CldrNamesYi.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => 'אַפֿאַר',
'af' => 'אַפֿריקאַנס',
'akk' => 'אַקאַדיש',
@@ -11,7 +11,6 @@ $languageNames = array(
'arc' => 'אַראַמיש',
'as' => 'אַסאַמיש',
'az' => 'אַזערביידזשאַניש',
- 'azb' => 'דרום אַזערביידזשאַניש',
'ban' => 'באַלינעזיש',
'bar' => 'בײַעריש',
'be' => 'בעלאַרוסיש',
@@ -36,7 +35,6 @@ $languageNames = array(
'enm' => 'מיטל ענגליש',
'eo' => 'עספּעראַנטא',
'es' => 'שפּאַניש',
- 'es-es' => 'שפּאַניש (ES)',
'et' => 'עסטיש',
'eu' => 'באַסקיש',
'fa' => 'פּערסיש',
@@ -133,8 +131,8 @@ $languageNames = array(
'sux' => 'סומעריש',
'sv' => 'שוועדיש',
'sw' => 'סוואַהיליש',
+ 'sw-cd' => 'קאנגא־סוואַהיליש',
'swb' => 'קאמאריש',
- 'swc' => 'קאנגא־סוואַהיליש',
'szl' => 'שלעזיש',
'ta' => 'טאַמיל',
'tig' => 'טיגרע',
@@ -151,18 +149,35 @@ $languageNames = array(
'yi' => 'ייִדיש',
'zh' => 'כינעזיש',
'zu' => 'זולו',
-);
+];
-$currencyNames = array(
+$currencyNames = [
+ 'BRL' => 'בראזיל רעאל',
'BZD' => 'בעליז דאלאַר',
'CHF' => 'שווייצער פֿראַנק',
+ 'CNY' => 'כינעזישער יואן',
'EUR' => 'איירא',
+ 'GBP' => 'פֿונט שטערלינג',
+ 'INR' => 'אינדישער רופי',
+ 'JPY' => 'יאפאנעזישער יען',
+ 'RUB' => 'רוסישער רובל',
'SEK' => 'שוועדישע קראנע',
+ 'USD' => 'אמעריקאנער דאלאר',
'XAG' => 'זילבער',
'XAU' => 'גאלד',
-);
+ 'XXX' => 'אומבאַוואוסטע וואַלוטע',
+];
-$countryNames = array(
+$currencySymbols = [
+ 'EUR' => '€',
+ 'GBP' => '£',
+ 'INR' => '₹',
+ 'JPY' => 'JP¥',
+ 'RUB' => 'RUB',
+ 'USD' => '$',
+];
+
+$countryNames = [
'AD' => 'אַנדארע',
'AF' => 'אַפֿגהאַניסטאַן',
'AG' => 'אַנטיגוע און באַרבודע',
@@ -362,9 +377,9 @@ $countryNames = array(
'ZA' => 'דרום־אַפֿריקע',
'ZM' => 'זאַמביע',
'ZW' => 'זימבאַבווע',
-);
+];
-$timeUnits = array(
+$timeUnits = [
'day-future-one' => 'אין {0} טאָג אַרום',
'day-future-other' => 'אין {0} טעג אַרום',
'month-future-one' => 'איבער {0} חודש',
@@ -391,4 +406,4 @@ $timeUnits = array(
'year-short-future-other' => 'איבער {0} יאָר',
'year-short-past-one' => 'פֿאַר {0} יאָר',
'year-short-past-other' => 'פֿאַר {0} יאָר',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesYo.php b/MLEB/cldr/CldrNames/CldrNamesYo.php
index da31b891..04d7d737 100644
--- a/MLEB/cldr/CldrNames/CldrNamesYo.php
+++ b/MLEB/cldr/CldrNames/CldrNamesYo.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'af' => 'Èdè Afrikani',
'ak' => 'Èdè Akani',
'am' => 'Èdè Amariki',
@@ -25,7 +25,7 @@ $languageNames = array(
'eu' => 'Èdè Baski',
'fa' => 'Èdè Pasia',
'fi' => 'Èdè Finisi',
- 'fil' => 'Èdè Tagalogi',
+ 'fil' => 'Èdè Filipino',
'fo' => 'Èdè Faroesi',
'fr' => 'Èdè Faransé',
'fy' => 'Èdè Frisia',
@@ -99,9 +99,9 @@ $languageNames = array(
'yo' => 'Èdè Yorùbá',
'zh' => 'Èdè Mandari',
'zu' => 'Èdè Ṣulu',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'AED' => 'Diami ti Awon Orílẹ́ède Arabu',
'AOA' => 'Wansa ti Orílẹ́ède Àngólà',
'AUD' => 'Dọla ti Orílẹ́ède Ástràlìá',
@@ -132,7 +132,8 @@ $currencyNames = array(
'LYD' => 'Dina ti Orílẹ́ède Libiya',
'MAD' => 'Dirami ti Orílẹ́ède Moroko',
'MGA' => 'Faransi ti Orílẹ́ède Malagasi',
- 'MRO' => 'Ouguiya ti Orílẹ́ède Maritania',
+ 'MRO' => 'Ouguiya ti Orílẹ́ède Maritania (1973–2017)',
+ 'MRU' => 'Ouguiya ti Orílẹ́ède Maritania',
'MUR' => 'Rupi ti Orílẹ́ède Maritiusi',
'MWK' => 'Kaṣa ti Orílẹ́ède Malawi',
'MZM' => 'Metika ti Orílẹ́ède Mosamibiki',
@@ -146,7 +147,8 @@ $currencyNames = array(
'SHP' => 'Pọọun ti Orílẹ́ède ̣Elena',
'SLL' => 'Lioni',
'SOS' => 'Sile ti Orílẹ́ède Somali',
- 'STD' => 'Dobira ti Orílẹ́ède Sao tome Ati Pirisipe',
+ 'STD' => 'Dobira ti Orílẹ́ède Sao tome Ati Pirisipe (1977–2017)',
+ 'STN' => 'Dobira ti Orílẹ́ède Sao tome Ati Pirisipe',
'SZL' => 'Lilangeni',
'TND' => 'Dina ti Orílẹ́ède Tunisia',
'TZS' => 'Sile ti Orílẹ́ède Tansania',
@@ -158,13 +160,13 @@ $currencyNames = array(
'ZMK' => 'Kawaṣa ti Orílẹ́ède Saabia (1968–2012)',
'ZMW' => 'Kawaṣa ti Orílẹ́ède Saabia',
'ZWD' => 'Dọla ti Orílẹ́ède Siibabuwe',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'NGN' => '₦',
-);
+];
-$countryNames = array(
+$countryNames = [
'AD' => 'Orílẹ́ède Ààndórà',
'AE' => 'Orílẹ́ède Ẹmirate ti Awọn Arabu',
'AF' => 'Orílẹ́ède Àfùgànístánì',
@@ -172,7 +174,6 @@ $countryNames = array(
'AI' => 'Orílẹ́ède Ààngúlílà',
'AL' => 'Orílẹ́ède Àlùbàníánì',
'AM' => 'Orílẹ́ède Améníà',
- 'AN' => 'Orílẹ́ède Nedalandi ti Antelisi',
'AO' => 'Orílẹ́ède Ààngólà',
'AR' => 'Orílẹ́ède Agentínà',
'AS' => 'Sámóánì ti Orílẹ́ède Àméríkà',
@@ -377,7 +378,7 @@ $countryNames = array(
'US' => 'Orílẹ́ède Orilẹede Amerika',
'UY' => 'Orílẹ́ède Nruguayi',
'UZ' => 'Orílẹ́ède Nṣibẹkisitani',
- 'VA' => 'Orílẹ́ède Fatikani',
+ 'VA' => 'Ìlú Vatican',
'VC' => 'Orílẹ́ède Fisẹnnti ati Genadina',
'VE' => 'Orílẹ́ède Fẹnẹṣuẹla',
'VG' => 'Orílẹ́ède Etíkun Fágínì ti ìlú Bírítísì',
@@ -391,4 +392,4 @@ $countryNames = array(
'ZA' => 'Orílẹ́ède Ariwa Afirika',
'ZM' => 'Orílẹ́ède ṣamibia',
'ZW' => 'Orílẹ́ède ṣimibabe',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesZgh.php b/MLEB/cldr/CldrNames/CldrNamesZgh.php
index 8b772e9b..483c3384 100644
--- a/MLEB/cldr/CldrNames/CldrNamesZgh.php
+++ b/MLEB/cldr/CldrNames/CldrNamesZgh.php
@@ -1,6 +1,6 @@
<?php
-$languageNames = array(
+$languageNames = [
'ak' => 'ⵜⴰⴽⴰⵏⵜ',
'am' => 'ⵜⴰⵎⵀⴰⵔⵉⵜ',
'ar' => 'ⵜⴰⵄⵔⴰⴱⵜ',
@@ -46,9 +46,9 @@ $languageNames = array(
'zgh' => 'ⵜⴰⵎⴰⵣⵉⵖⵜ',
'zh' => 'ⵜⴰⵛⵉⵏⵡⵉⵜ',
'zu' => 'ⵜⴰⵣⵓⵍⵓⵜ',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'AED' => 'ⴰⴷⵔⵉⵎ ⵏ ⵍⵉⵎⴰⵔⴰⵜ',
'AOA' => 'ⴽⵡⴰⵏⵣⴰ ⵏ ⴰⵏⴳⵓⵍⴰ',
'AUD' => 'ⴰⴷⵓⵍⴰⵔ ⵏ ⵓⵙⵜⵔⴰⵍⵢⴰ',
@@ -78,7 +78,8 @@ $currencyNames = array(
'LYD' => 'ⴰⴷⵉⵏⴰⵔ ⵏ ⵍⵉⴱⵢⴰ',
'MAD' => 'ⴰⴷⵔⵉⵎ ⵏ ⵍⵎⵖⵔⵉⴱ',
'MGA' => 'ⴼⵔⴰⵏⴽ ⵏ ⵎⴰⴷⴰⵖⴰⵛⵇⴰⵔ',
- 'MRO' => 'ⵓⵇⵉⵢⵢⴰ ⵏ ⵎⵓⵕⵉⵟⴰⵏⵢⴰ',
+ 'MRO' => 'ⵓⵇⵉⵢⵢⴰ ⵏ ⵎⵓⵕⵉⵟⴰⵏⵢⴰ (1973–2017)',
+ 'MRU' => 'ⵓⵇⵉⵢⵢⴰ ⵏ ⵎⵓⵕⵉⵟⴰⵏⵢⴰ',
'MUR' => 'ⴰⵔⵓⴱⵉ ⵏ ⵎⵓⵔⵉⵙ',
'MWK' => 'ⴽⵡⴰⵛⴰ ⵏ ⵎⴰⵍⴰⵡⵉ',
'MZN' => 'ⴰⵎⵉⵜⵉⴽⵍ ⵏ ⵎⵓⵣⵏⴱⵉⵇ',
@@ -92,7 +93,8 @@ $currencyNames = array(
'SHP' => 'ⴰⵊⵏⵉⵀ ⵏ ⵙⴰⵏⵜⵉⵍⵉⵏ',
'SLL' => 'ⵍⵉⵢⵓⵏ',
'SOS' => 'ⴰⵛⵉⵍⵉⵏ ⵏ ⵚⵚⵓⵎⴰⵍ',
- 'STD' => 'ⴰⴷⵓⴱⵔⴰ ⵏ ⵙⴰⵏⵟⵓⵎⵉ',
+ 'STD' => 'ⴰⴷⵓⴱⵔⴰ ⵏ ⵙⴰⵏⵟⵓⵎⵉ (1977–2017)',
+ 'STN' => 'ⴰⴷⵓⴱⵔⴰ ⵏ ⵙⴰⵏⵟⵓⵎⵉ',
'SZL' => 'ⵍⵉⵍⴰⵏⵊⵉⵏⵉ',
'TND' => 'ⴰⴷⵉⵏⴰⵔ ⵏ ⵜⵓⵏⵙ',
'TZS' => 'ⴰⵛⵉⵍⵉⵏ ⵏ ⵟⴰⵏⵥⴰⵏⵢⴰ',
@@ -106,9 +108,9 @@ $currencyNames = array(
'ZWD' => 'ⴰⴷⵓⵍⴰⵔ ⵏ ⵣⵉⵎⴱⴰⴱⵡⵉ (1980–2008)',
'ZWL' => 'ⴰⴷⵓⵍⴰⵔ ⵏ ⵣⵉⵎⴱⴰⴱⵡⵉ (2009)',
'ZWR' => 'ⴰⴷⵓⵍⴰⵔ ⵏ ⵣⵉⵎⴱⴰⴱⵡⵉ (2008)',
-);
+];
-$countryNames = array(
+$countryNames = [
'AD' => 'ⴰⵏⴷⵓⵔⴰ',
'AE' => 'ⵍⵉⵎⴰⵔⴰⵜ',
'AF' => 'ⴰⴼⵖⴰⵏⵉⵙⵜⴰⵏ',
@@ -336,4 +338,4 @@ $countryNames = array(
'ZA' => 'ⴰⴼⵔⵉⵇⵢⴰ ⵏ ⵉⴼⴼⵓⵙ',
'ZM' => 'ⵣⴰⵎⴱⵢⴰ',
'ZW' => 'ⵣⵉⵎⴱⴰⴱⵡⵉ',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesZh_hans.php b/MLEB/cldr/CldrNames/CldrNamesZh_hans.php
index e5937aed..65b45113 100644
--- a/MLEB/cldr/CldrNames/CldrNamesZh_hans.php
+++ b/MLEB/cldr/CldrNames/CldrNamesZh_hans.php
@@ -1,523 +1,542 @@
<?php
-$languageNames = array(
- 'aa' => '阿法文',
- 'ab' => '阿布哈西亚文',
- 'ace' => '亚齐文',
- 'ach' => '阿乔利文',
- 'ada' => '阿当梅文',
- 'ady' => '阿迪何文',
- 'ae' => '阿维斯塔文',
- 'af' => '南非荷兰文',
- 'afh' => '阿弗里希利文',
- 'agq' => '亚罕文',
- 'ain' => '阿伊努文',
- 'ak' => '阿肯文',
- 'akk' => '阿卡德文',
- 'ale' => '阿留申文',
- 'alt' => '南阿尔泰文',
- 'am' => '阿姆哈拉文',
- 'an' => '阿拉贡文',
- 'ang' => '古英文',
- 'anp' => '昂加文',
- 'ar' => '阿拉伯文',
- 'ar-001' => '现代标准阿拉伯文',
- 'arc' => '阿拉米文',
- 'arn' => '马普切文',
- 'arp' => '阿拉帕霍文',
- 'arw' => '阿拉瓦克文',
- 'as' => '阿萨姆文',
- 'asa' => '阿苏文',
- 'ast' => '阿斯图里亚思特文',
- 'av' => '阿瓦尔文',
- 'awa' => '阿瓦乔文',
- 'ay' => '艾马拉文',
- 'az' => '阿塞拜疆文',
- 'ba' => '巴什客尔文',
- 'bal' => '俾路支文',
- 'ban' => '巴里文',
- 'bas' => '巴萨文',
- 'bax' => '巴姆穆文',
- 'bbj' => '戈马拉文',
- 'be' => '白俄罗斯文',
- 'bej' => '别札文',
- 'bem' => '别姆巴文',
- 'bez' => '贝纳文',
- 'bfd' => '巴非特文',
- 'bg' => '保加利亚文',
- 'bho' => '博杰普尔文',
- 'bi' => '比斯拉马文',
- 'bik' => '毕库尔文',
- 'bin' => '比尼文',
- 'bkm' => '科姆文',
- 'bla' => '司克司卡文',
- 'bm' => '班巴拉文',
- 'bn' => '孟加拉文',
- 'bo' => '藏文',
- 'br' => '布里多尼文',
- 'bra' => '布拉杰文',
- 'brx' => '博多文',
- 'bs' => '波斯尼亚文',
- 'bss' => '阿库色文',
- 'bua' => '布里亚特文',
- 'bug' => '布吉文',
- 'bum' => '布鲁文',
- 'byn' => '布林文',
- 'byv' => '梅敦巴文',
- 'ca' => '加泰罗尼亚文',
- 'cad' => '卡多文',
- 'car' => '巴勒比文',
- 'cay' => '卡尤加文',
- 'cch' => '阿灿文',
- 'ce' => '车臣文',
- 'ceb' => '宿务文',
- 'cgg' => '奇加文',
- 'ch' => '查莫罗文',
- 'chb' => '契布卡文',
- 'chg' => '查加文',
- 'chk' => '楚吾克文',
- 'chm' => '马里文',
- 'chn' => '契努克文',
- 'cho' => '乔克托文',
- 'chp' => '佩瓦扬文',
- 'chr' => '彻罗基文',
- 'chy' => '夏延文',
- 'ckb' => '索拉尼库尔德文',
- 'co' => '科西嘉文',
- 'cop' => '科普特文',
- 'cr' => '克里族文',
- 'crh' => '克里米亚土耳其文',
- 'cs' => '捷克文',
- 'csb' => '卡舒文',
- 'cu' => '宗教斯拉夫文',
- 'cv' => '楚瓦什文',
- 'cy' => '威尔士文',
- 'da' => '丹麦文',
- 'dak' => '达科他文',
- 'dar' => '达尔格瓦文',
- 'dav' => '台塔文',
- 'de' => '德文',
- 'de-at' => '奥地利德文',
- 'de-ch' => '瑞士高地德文',
- 'del' => '特拉华文',
- 'den' => '司雷夫文',
- 'dgr' => '多格里布文',
- 'din' => '丁卡文',
- 'dje' => '哲尔马文',
- 'doi' => '多格拉文',
- 'dsb' => '下索布文',
- 'dua' => '都阿拉文',
- 'dum' => '中古荷兰文',
- 'dv' => '迪维希文',
- 'dyo' => '朱拉文',
- 'dyu' => '迪尤拉文',
- 'dz' => '不丹文',
- 'dzg' => '达扎葛文',
- 'ebu' => '恩布文',
- 'ee' => '埃维文',
- 'efi' => '埃菲克文',
- 'egy' => '古埃及文',
- 'eka' => '埃克丘克文',
- 'el' => '希腊文',
- 'elx' => '艾拉米特文',
- 'en' => '英文',
- 'en-au' => '澳大利亚英文',
- 'en-ca' => '加拿大英文',
- 'en-gb' => '英式英文',
- 'en-us' => '美式英文',
- 'enm' => '中古英文',
- 'eo' => '世界文',
- 'es' => '西班牙文',
- 'es-419' => '拉丁美洲西班牙文',
- 'es-es' => '欧洲西班牙文',
- 'es-mx' => '墨西哥西班牙文',
- 'et' => '爱沙尼亚文',
- 'eu' => '巴斯克文',
- 'ewo' => '旺杜文',
- 'fa' => '波斯文',
- 'fan' => '芳格文',
- 'fat' => '芳蒂文',
- 'ff' => '夫拉文',
- 'fi' => '芬兰文',
- 'fil' => '菲律宾文',
- 'fj' => '斐济文',
- 'fo' => '法罗文',
- 'fon' => '丰文',
- 'fr' => '法文',
- 'fr-ca' => '加拿大法文',
- 'fr-ch' => '瑞士法文',
- 'frm' => '中古法文',
- 'fro' => '古法文',
- 'frr' => '北弗里西亚文',
- 'frs' => '东弗里西亚文',
- 'fur' => '弗留利文',
- 'fy' => '西弗里西亚文',
- 'ga' => '爱尔兰文',
- 'gaa' => '加文',
- 'gag' => '加告兹文',
- 'gay' => '迦约文',
- 'gba' => '葛巴亚文',
- 'gd' => '苏格兰盖尔文',
- 'gez' => '吉兹文',
- 'gil' => '吉尔伯特斯文',
- 'gl' => '加利西亚文',
- 'gmh' => '中古高地德文',
- 'gn' => '瓜拉尼文',
- 'goh' => '古高地德文',
- 'gon' => '岗德文',
- 'gor' => '科洛涅达罗文',
- 'got' => '哥特文',
- 'grb' => '格列博文',
- 'grc' => '古希腊文',
- 'gsw' => '瑞士德文',
- 'gu' => '古吉拉特文',
- 'guz' => '古西文',
- 'gv' => '马恩岛文',
- 'gwi' => '吉维克琴文',
- 'ha' => '豪萨文',
- 'hai' => '海达文',
- 'haw' => '夏威夷文',
- 'he' => '希伯来文',
- 'hi' => '印地文',
- 'hil' => '希利盖农文',
- 'hit' => '赫梯文',
- 'hmn' => '赫蒙文',
- 'ho' => '希里莫图文',
- 'hr' => '克罗地亚文',
- 'hsb' => '上索布文',
- 'ht' => '海地文',
- 'hu' => '匈牙利文',
- 'hup' => '胡帕文',
- 'hy' => '亚美尼亚文',
- 'hz' => '赫雷罗文',
- 'ia' => '国际文字',
- 'iba' => '伊班文',
- 'ibb' => '伊比比奥文',
- 'id' => '印度尼西亚文',
+$languageNames = [
+ 'aa' => '阿法尔语',
+ 'ab' => '阿布哈西亚语',
+ 'ace' => '亚齐语',
+ 'ach' => '阿乔利语',
+ 'ada' => '阿当梅语',
+ 'ady' => '阿迪格语',
+ 'ae' => '阿维斯塔语',
+ 'af' => '南非荷兰语',
+ 'afh' => '阿弗里希利语',
+ 'agq' => '亚罕语',
+ 'ain' => '阿伊努语',
+ 'ak' => '阿肯语',
+ 'akk' => '阿卡德语',
+ 'ale' => '阿留申语',
+ 'alt' => '南阿尔泰语',
+ 'am' => '阿姆哈拉语',
+ 'an' => '阿拉贡语',
+ 'ang' => '古英语',
+ 'anp' => '昂加语',
+ 'ar' => '阿拉伯语',
+ 'ar-001' => '现代标准阿拉伯语',
+ 'arc' => '阿拉米语',
+ 'arn' => '马普切语',
+ 'arp' => '阿拉帕霍语',
+ 'ars' => '纳吉迪阿拉伯语',
+ 'arw' => '阿拉瓦克语',
+ 'as' => '阿萨姆语',
+ 'asa' => '帕雷语',
+ 'ast' => '阿斯图里亚斯语',
+ 'av' => '阿瓦尔语',
+ 'awa' => '阿瓦德语',
+ 'ay' => '艾马拉语',
+ 'az' => '阿塞拜疆语',
+ 'az-arab' => '南阿塞拜疆语',
+ 'ba' => '巴什基尔语',
+ 'bal' => '俾路支语',
+ 'ban' => '巴厘语',
+ 'bas' => '巴萨语',
+ 'bax' => '巴姆穆语',
+ 'bbj' => '戈马拉语',
+ 'be' => '白俄罗斯语',
+ 'bej' => '贝沙语',
+ 'bem' => '本巴语',
+ 'bez' => '贝纳语',
+ 'bfd' => '巴非特语',
+ 'bg' => '保加利亚语',
+ 'bgn' => '西俾路支语',
+ 'bho' => '博杰普尔语',
+ 'bi' => '比斯拉马语',
+ 'bik' => '比科尔语',
+ 'bin' => '比尼语',
+ 'bkm' => '科姆语',
+ 'bla' => '西克西卡语',
+ 'bm' => '班巴拉语',
+ 'bn' => '孟加拉语',
+ 'bo' => '藏语',
+ 'br' => '布列塔尼语',
+ 'bra' => '布拉杰语',
+ 'brx' => '博多语',
+ 'bs' => '波斯尼亚语',
+ 'bss' => '阿库色语',
+ 'bua' => '布里亚特语',
+ 'bug' => '布吉语',
+ 'bum' => '布鲁语',
+ 'byn' => '比林语',
+ 'byv' => '梅敦巴语',
+ 'ca' => '加泰罗尼亚语',
+ 'cad' => '卡多语',
+ 'car' => '加勒比语',
+ 'cay' => '卡尤加语',
+ 'cch' => '阿灿语',
+ 'ce' => '车臣语',
+ 'ceb' => '宿务语',
+ 'cgg' => '奇加语',
+ 'ch' => '查莫罗语',
+ 'chb' => '奇布查语',
+ 'chg' => '察合台语',
+ 'chk' => '楚克语',
+ 'chm' => '马里语',
+ 'chn' => '奇努克混合语',
+ 'cho' => '乔克托语',
+ 'chp' => '奇佩维安语',
+ 'chr' => '切罗基语',
+ 'chy' => '夏延语',
+ 'ckb' => '中库尔德语',
+ 'co' => '科西嘉语',
+ 'cop' => '科普特语',
+ 'cr' => '克里族语',
+ 'crh' => '克里米亚土耳其语',
+ 'crs' => '塞舌尔克里奥尔语',
+ 'cs' => '捷克语',
+ 'csb' => '卡舒比语',
+ 'cu' => '教会斯拉夫语',
+ 'cv' => '楚瓦什语',
+ 'cy' => '威尔士语',
+ 'da' => '丹麦语',
+ 'dak' => '达科他语',
+ 'dar' => '达尔格瓦语',
+ 'dav' => '台塔语',
+ 'de' => '德语',
+ 'de-at' => '奥地利德语',
+ 'de-ch' => '瑞士高地德语',
+ 'del' => '特拉华语',
+ 'den' => '史拉维语',
+ 'dgr' => '多格里布语',
+ 'din' => '丁卡语',
+ 'dje' => '哲尔马语',
+ 'doi' => '多格拉语',
+ 'dsb' => '下索布语',
+ 'dua' => '都阿拉语',
+ 'dum' => '中古荷兰语',
+ 'dv' => '迪维希语',
+ 'dyo' => '朱拉语',
+ 'dyu' => '迪尤拉语',
+ 'dz' => '宗卡语',
+ 'dzg' => '达扎葛语',
+ 'ebu' => '恩布语',
+ 'ee' => '埃维语',
+ 'efi' => '埃菲克语',
+ 'egy' => '古埃及语',
+ 'eka' => '艾卡朱克语',
+ 'el' => '希腊语',
+ 'elx' => '埃兰语',
+ 'en' => '英语',
+ 'en-au' => '澳大利亚英语',
+ 'en-ca' => '加拿大英语',
+ 'en-gb' => '英国英语',
+ 'en-us' => '美国英语',
+ 'enm' => '中古英语',
+ 'eo' => '世界语',
+ 'es' => '西班牙语',
+ 'es-419' => '拉丁美洲西班牙语',
+ 'es-es' => '欧洲西班牙语',
+ 'es-mx' => '墨西哥西班牙语',
+ 'et' => '爱沙尼亚语',
+ 'eu' => '巴斯克语',
+ 'ewo' => '旺杜语',
+ 'fa' => '波斯语',
+ 'fan' => '芳格语',
+ 'fat' => '芳蒂语',
+ 'ff' => '富拉语',
+ 'fi' => '芬兰语',
+ 'fil' => '菲律宾语',
+ 'fj' => '斐济语',
+ 'fo' => '法罗语',
+ 'fon' => '丰语',
+ 'fr' => '法语',
+ 'fr-ca' => '加拿大法语',
+ 'fr-ch' => '瑞士法语',
+ 'frc' => '卡真法语',
+ 'frm' => '中古法语',
+ 'fro' => '古法语',
+ 'frr' => '北弗里西亚语',
+ 'frs' => '东弗里西亚语',
+ 'fur' => '弗留利语',
+ 'fy' => '西弗里西亚语',
+ 'ga' => '爱尔兰语',
+ 'gaa' => '加族语',
+ 'gag' => '加告兹语',
+ 'gan' => '赣语',
+ 'gay' => '迦约语',
+ 'gba' => '格巴亚语',
+ 'gd' => '苏格兰盖尔语',
+ 'gez' => '吉兹语',
+ 'gil' => '吉尔伯特语',
+ 'gl' => '加利西亚语',
+ 'gmh' => '中古高地德语',
+ 'gn' => '瓜拉尼语',
+ 'goh' => '古高地德语',
+ 'gon' => '冈德语',
+ 'gor' => '哥伦打洛语',
+ 'got' => '哥特语',
+ 'grb' => '格列博语',
+ 'grc' => '古希腊语',
+ 'gsw' => '瑞士德语',
+ 'gu' => '古吉拉特语',
+ 'guz' => '古西语',
+ 'gv' => '马恩语',
+ 'gwi' => '哥威迅语',
+ 'ha' => '豪萨语',
+ 'hai' => '海达语',
+ 'hak' => '客家语',
+ 'haw' => '夏威夷语',
+ 'he' => '希伯来语',
+ 'hi' => '印地语',
+ 'hil' => '希利盖农语',
+ 'hit' => '赫梯语',
+ 'hmn' => '苗语',
+ 'ho' => '希里莫图语',
+ 'hr' => '克罗地亚语',
+ 'hsb' => '上索布语',
+ 'hsn' => '湘语',
+ 'ht' => '海地克里奥尔语',
+ 'hu' => '匈牙利语',
+ 'hup' => '胡帕语',
+ 'hy' => '亚美尼亚语',
+ 'hz' => '赫雷罗语',
+ 'ia' => '国际语',
+ 'iba' => '伊班语',
+ 'ibb' => '伊比比奥语',
+ 'id' => '印度尼西亚语',
'ie' => '国际文字(E)',
- 'ig' => '伊布文',
- 'ii' => '四川彝文',
- 'ik' => '依奴皮维克文',
- 'ilo' => '伊洛干诺文',
- 'inh' => '印古什文',
- 'io' => '伊多文',
- 'is' => '冰岛文',
- 'it' => '意大利文',
- 'iu' => '因纽特文',
- 'ja' => '日文',
- 'jbo' => '逻辑文',
- 'jgo' => '恩艮巴',
- 'jmc' => '马切姆文',
- 'jpr' => '犹太波斯文',
- 'jrb' => '犹太阿拉伯文',
- 'jv' => '爪哇文',
- 'ka' => '格鲁吉亚文',
- 'kaa' => '卡拉卡尔帕克文',
- 'kab' => '卡比尔文',
- 'kac' => '卡琴文',
- 'kaj' => '卡捷文',
- 'kam' => '卡姆巴文',
- 'kaw' => '卡威文',
- 'kbd' => '卡巴尔达文',
- 'kbl' => '加涅姆布文',
- 'kcg' => '卡塔布文',
- 'kde' => '马孔德文',
- 'kea' => '卡布佛得鲁文',
- 'kfo' => '科罗文',
- 'kg' => '刚果文',
- 'kha' => '卡西文',
- 'kho' => '和田文',
- 'khq' => '西桑海文',
- 'ki' => '吉库尤文',
- 'kj' => '宽亚玛文',
- 'kk' => '哈萨克文',
- 'kkj' => '卡库文',
- 'kl' => '格陵兰文',
- 'kln' => '卡伦金文',
- 'km' => '高棉文',
- 'kmb' => '金邦杜文',
- 'kn' => '卡纳达文',
- 'ko' => '韩文',
- 'koi' => '科米-彼尔米亚克文',
- 'kok' => '刚卡尼文',
- 'kos' => '科斯拉伊文',
- 'kpe' => '克佩列文',
- 'kr' => '卡努里文',
- 'krc' => '卡拉恰伊巴尔卡尔文',
- 'krl' => '卡累利阿文',
- 'kru' => '库鲁克文',
- 'ks' => '克什米尔文',
- 'ksb' => '香巴拉文',
- 'ksf' => '巴菲亚文',
- 'ksh' => '科隆文',
- 'ku' => '库尔德文',
- 'kum' => '库梅克文',
- 'kut' => '库特内文',
- 'kv' => '科米文',
- 'kw' => '凯尔特文',
- 'ky' => '吉尔吉斯文',
- 'la' => '拉丁文',
- 'lad' => '拉迪诺文',
- 'lag' => '朗吉文',
- 'lah' => '拉亨达文',
- 'lam' => '兰巴文',
- 'lb' => '卢森堡文',
- 'lez' => '莱兹依昂文',
- 'lg' => '卢干达文',
- 'li' => '淋布尔吉文',
- 'lkt' => '拉科塔文',
- 'ln' => '林加拉文',
- 'lo' => '老挝文',
- 'lol' => '芒戈文',
- 'loz' => '洛兹文',
- 'lt' => '立陶宛文',
- 'lu' => '鲁巴加丹加文',
- 'lua' => '鲁巴鲁瓦文',
- 'lui' => '路易塞诺文',
- 'lun' => '隆达文',
- 'luo' => '卢奥文',
- 'lus' => '卢晒文',
- 'luy' => '卢雅文',
- 'lv' => '拉脱维亚文',
- 'mad' => '马都拉文',
- 'maf' => '马法文',
- 'mag' => '马加伊文',
- 'mai' => '迈蒂利文',
- 'mak' => '望加锡文',
- 'man' => '曼丁哥文',
- 'mas' => '萨伊文',
- 'mde' => '马坝文',
- 'mdf' => '莫克沙文',
- 'mdr' => '曼达尔文',
- 'men' => '门迪文',
- 'mer' => '梅鲁文',
- 'mfe' => '毛里求斯克里奥尔文',
- 'mg' => '马尔加什文',
- 'mga' => '中古爱尔兰文',
- 'mgh' => '马夸文',
- 'mgo' => '梅塔',
- 'mh' => '马绍尔文',
- 'mi' => '毛利文',
- 'mic' => '米克马克文',
- 'min' => '米南卡保文',
- 'mk' => '马其顿文',
- 'ml' => '马拉雅拉姆文',
- 'mn' => '蒙古文',
- 'mnc' => '满文',
- 'mni' => '曼尼普里文',
- 'moh' => '摩霍克文',
- 'mos' => '莫西文',
- 'mr' => '马拉地文',
- 'ms' => '马来文',
- 'mt' => '马耳他文',
- 'mua' => '蒙当文',
- 'mul' => '多种语系',
- 'mus' => '克里克文',
- 'mwl' => '米兰德斯文',
- 'mwr' => '马尔瓦利文',
- 'my' => '缅甸文',
- 'mye' => '姆耶内文',
- 'myv' => '俄日亚文',
- 'na' => '瑙鲁文',
- 'nap' => '拿波里文',
- 'naq' => '纳马文',
- 'nb' => '挪威博克马尔文',
- 'nd' => '北恩德贝勒文',
- 'nds' => '低地德文',
- 'ne' => '尼泊尔文',
- 'new' => '尼瓦尔文',
- 'ng' => '恩东加文',
- 'nia' => '尼亚斯文',
- 'niu' => '纽埃文',
- 'nl' => '荷兰文',
- 'nl-be' => '佛兰芒文',
- 'nmg' => '夸西奥文',
- 'nn' => '挪威尼诺斯克文',
- 'nnh' => '恩甘澎文',
- 'no' => '挪威文',
- 'nog' => '诺盖文',
- 'non' => '古诺尔斯文',
+ 'ig' => '伊博语',
+ 'ii' => '四川彝语',
+ 'ik' => '伊努皮克语',
+ 'ilo' => '伊洛卡诺语',
+ 'inh' => '印古什语',
+ 'io' => '伊多语',
+ 'is' => '冰岛语',
+ 'it' => '意大利语',
+ 'iu' => '因纽特语',
+ 'ja' => '日语',
+ 'jbo' => '逻辑语',
+ 'jgo' => '恩艮巴语',
+ 'jmc' => '马切姆语',
+ 'jpr' => '犹太波斯语',
+ 'jrb' => '犹太阿拉伯语',
+ 'jv' => '爪哇语',
+ 'ka' => '格鲁吉亚语',
+ 'kaa' => '卡拉卡尔帕克语',
+ 'kab' => '卡拜尔语',
+ 'kac' => '克钦语',
+ 'kaj' => '卡捷语',
+ 'kam' => '卡姆巴语',
+ 'kaw' => '卡威语',
+ 'kbd' => '卡巴尔德语',
+ 'kbl' => '加涅姆布语',
+ 'kcg' => '卡塔布语',
+ 'kde' => '马孔德语',
+ 'kea' => '卡布佛得鲁语',
+ 'kfo' => '克罗语',
+ 'kg' => '刚果语',
+ 'kha' => '卡西语',
+ 'kho' => '和田语',
+ 'khq' => '西桑海语',
+ 'ki' => '吉库尤语',
+ 'kj' => '宽亚玛语',
+ 'kk' => '哈萨克语',
+ 'kkj' => '卡库语',
+ 'kl' => '格陵兰语',
+ 'kln' => '卡伦金语',
+ 'km' => '高棉语',
+ 'kmb' => '金邦杜语',
+ 'kn' => '卡纳达语',
+ 'ko' => '韩语',
+ 'koi' => '科米-彼尔米亚克语',
+ 'kok' => '孔卡尼语',
+ 'kos' => '科斯拉伊语',
+ 'kpe' => '克佩列语',
+ 'kr' => '卡努里语',
+ 'krc' => '卡拉恰伊巴尔卡尔语',
+ 'krl' => '卡累利阿语',
+ 'kru' => '库鲁克语',
+ 'ks' => '克什米尔语',
+ 'ksb' => '香巴拉语',
+ 'ksf' => '巴菲亚语',
+ 'ksh' => '科隆语',
+ 'ku' => '库尔德语',
+ 'kum' => '库梅克语',
+ 'kut' => '库特奈语',
+ 'kv' => '科米语',
+ 'kw' => '康沃尔语',
+ 'ky' => '柯尔克孜语',
+ 'la' => '拉丁语',
+ 'lad' => '拉迪诺语',
+ 'lag' => '朗吉语',
+ 'lah' => '印度-雅利安语',
+ 'lam' => '兰巴语',
+ 'lb' => '卢森堡语',
+ 'lez' => '列兹金语',
+ 'lg' => '卢干达语',
+ 'li' => '林堡语',
+ 'lkt' => '拉科塔语',
+ 'ln' => '林加拉语',
+ 'lo' => '老挝语',
+ 'lol' => '蒙戈语',
+ 'lou' => '路易斯安那克里奥尔语',
+ 'loz' => '洛齐语',
+ 'lrc' => '北卢尔语',
+ 'lt' => '立陶宛语',
+ 'lu' => '鲁巴加丹加语',
+ 'lua' => '卢巴-卢拉语',
+ 'lui' => '卢伊塞诺语',
+ 'lun' => '隆达语',
+ 'luo' => '卢奥语',
+ 'lus' => '米佐语',
+ 'luy' => '卢雅语',
+ 'lv' => '拉脱维亚语',
+ 'mad' => '马都拉语',
+ 'maf' => '马法语',
+ 'mag' => '摩揭陀语',
+ 'mai' => '迈蒂利语',
+ 'mak' => '望加锡语',
+ 'man' => '曼丁哥语',
+ 'mas' => '马赛语',
+ 'mde' => '马坝语',
+ 'mdf' => '莫克沙语',
+ 'mdr' => '曼达尔语',
+ 'men' => '门德语',
+ 'mer' => '梅鲁语',
+ 'mfe' => '毛里求斯克里奥尔语',
+ 'mg' => '马拉加斯语',
+ 'mga' => '中古爱尔兰语',
+ 'mgh' => '马库阿语',
+ 'mgo' => '梅塔语',
+ 'mh' => '马绍尔语',
+ 'mi' => '毛利语',
+ 'mic' => '密克马克语',
+ 'min' => '米南佳保语',
+ 'mk' => '马其顿语',
+ 'ml' => '马拉雅拉姆语',
+ 'mn' => '蒙古语',
+ 'mnc' => '满语',
+ 'mni' => '曼尼普尔语',
+ 'moh' => '摩霍克语',
+ 'mos' => '莫西语',
+ 'mr' => '马拉地语',
+ 'ms' => '马来语',
+ 'mt' => '马耳他语',
+ 'mua' => '蒙当语',
+ 'mul' => '多语种',
+ 'mus' => '克里克语',
+ 'mwl' => '米兰德斯语',
+ 'mwr' => '马尔瓦里语',
+ 'my' => '缅甸语',
+ 'mye' => '姆耶内语',
+ 'myv' => '厄尔兹亚语',
+ 'mzn' => '马赞德兰语',
+ 'na' => '瑙鲁语',
+ 'nan' => '闽南语',
+ 'nap' => '那不勒斯语',
+ 'naq' => '纳马语',
+ 'nb' => '书面挪威语',
+ 'nd' => '北恩德贝勒语',
+ 'nds' => '低地德语',
+ 'nds-nl' => '低萨克森语',
+ 'ne' => '尼泊尔语',
+ 'new' => '尼瓦尔语',
+ 'ng' => '恩东加语',
+ 'nia' => '尼亚斯语',
+ 'niu' => '纽埃语',
+ 'nl' => '荷兰语',
+ 'nl-be' => '弗拉芒语',
+ 'nmg' => '夸西奥语',
+ 'nn' => '挪威尼诺斯克语',
+ 'nnh' => '恩甘澎语',
+ 'no' => '挪威语',
+ 'nog' => '诺盖语',
+ 'non' => '古诺尔斯语',
'nqo' => '西非书面文字',
- 'nr' => '南恩德贝勒文',
- 'nso' => '北索托文',
- 'nus' => '努埃尔文',
- 'nv' => '纳瓦霍文',
- 'nwc' => '经典尼瓦尔文',
- 'ny' => '尼扬扎文',
- 'nym' => '尼亚姆韦齐文',
- 'nyn' => '尼昂科勒文',
- 'nyo' => '尼约罗文',
- 'nzi' => '恩济马文',
- 'oc' => '奥克西唐文',
- 'oj' => '奥吉布瓦文',
- 'om' => '奥洛莫文',
- 'or' => '奥里亚文',
- 'os' => '奥塞梯文',
- 'osa' => '奥萨格文',
- 'ota' => '奥托曼土耳其文',
- 'pa' => '旁遮普文',
- 'pag' => '邦阿西楠文',
- 'pal' => '帕拉维文',
- 'pam' => '邦板牙文',
- 'pap' => '帕皮亚门托文',
- 'pau' => '帕劳文',
- 'peo' => '古老波斯文',
- 'phn' => '腓尼基文',
- 'pi' => '巴利文',
- 'pl' => '波兰文',
- 'pon' => '波纳佩文',
- 'pro' => '普罗文斯文',
- 'ps' => '普什图文',
- 'pt' => '葡萄牙文',
- 'pt-br' => '巴西葡萄牙文',
- 'pt-pt' => '欧洲葡萄牙文',
- 'qu' => '盖丘亚文',
- 'quc' => '基切文',
- 'raj' => '拉贾斯坦文',
- 'rap' => '拉帕努伊文',
- 'rar' => '拉罗汤加文',
- 'rm' => '罗曼什文',
- 'rn' => '基隆迪文',
- 'ro' => '罗马尼亚文',
- 'ro-md' => '摩尔多瓦文',
- 'rof' => '兰博文',
- 'rom' => '吉普赛文',
- 'ru' => '俄文',
- 'rup' => '阿罗马尼亚文',
- 'rw' => '卢旺达文',
- 'rwk' => '罗瓦文',
- 'sa' => '梵文',
- 'sad' => '散达维文',
- 'sah' => '雅库特文',
- 'sam' => '萨玛利亚文',
- 'saq' => '桑布鲁文',
+ 'nr' => '南恩德贝勒语',
+ 'nso' => '北索托语',
+ 'nus' => '努埃尔语',
+ 'nv' => '纳瓦霍语',
+ 'nwc' => '古典尼瓦尔语',
+ 'ny' => '齐切瓦语',
+ 'nym' => '尼扬韦齐语',
+ 'nyn' => '尼昂科勒语',
+ 'nyo' => '尼奥罗语',
+ 'nzi' => '恩济马语',
+ 'oc' => '奥克语',
+ 'oj' => '奥吉布瓦语',
+ 'om' => '奥罗莫语',
+ 'or' => '奥里亚语',
+ 'os' => '奥塞梯语',
+ 'osa' => '奥塞治语',
+ 'ota' => '奥斯曼土耳其语',
+ 'pa' => '旁遮普语',
+ 'pag' => '邦阿西南语',
+ 'pal' => '巴拉维语',
+ 'pam' => '邦板牙语',
+ 'pap' => '帕皮阿门托语',
+ 'pau' => '帕劳语',
+ 'pcm' => '尼日利亚皮钦语',
+ 'peo' => '古波斯语',
+ 'phn' => '腓尼基语',
+ 'pi' => '巴利语',
+ 'pl' => '波兰语',
+ 'pon' => '波纳佩语',
+ 'prg' => '普鲁士语',
+ 'pro' => '古普罗文斯语',
+ 'ps' => '普什图语',
+ 'pt' => '葡萄牙语',
+ 'pt-br' => '巴西葡萄牙语',
+ 'pt-pt' => '欧洲葡萄牙语',
+ 'qu' => '克丘亚语',
+ 'quc' => '基切语',
+ 'raj' => '拉贾斯坦语',
+ 'rap' => '拉帕努伊语',
+ 'rar' => '拉罗汤加语',
+ 'rm' => '罗曼什语',
+ 'rn' => '隆迪语',
+ 'ro' => '罗马尼亚语',
+ 'ro-md' => '摩尔多瓦语',
+ 'rof' => '兰博语',
+ 'rom' => '吉普赛语',
+ 'ru' => '俄语',
+ 'rup' => '阿罗马尼亚语',
+ 'rw' => '卢旺达语',
+ 'rwk' => '罗瓦语',
+ 'sa' => '梵语',
+ 'sad' => '桑达韦语',
+ 'sah' => '萨哈语',
+ 'sam' => '萨马利亚阿拉姆语',
+ 'saq' => '桑布鲁语',
'sas' => '萨萨克文',
- 'sat' => '桑塔利文',
- 'sba' => '甘拜文',
- 'sbp' => '桑古文',
- 'sc' => '萨丁文',
- 'scn' => '西西里文',
- 'sco' => '苏格兰文',
- 'sd' => '信德文',
- 'se' => '北萨米文',
- 'see' => '塞内卡文',
- 'seh' => '塞纳文',
- 'sel' => '塞尔库普文',
- 'ses' => '东桑海文',
- 'sg' => '桑戈文',
- 'sga' => '古爱尔兰文',
- 'sh' => '塞尔维亚-克罗地亚文',
- 'shi' => '希尔哈文',
- 'shn' => '掸文',
- 'shu' => '乍得阿拉伯文',
- 'si' => '僧伽罗文',
- 'sid' => '悉达摩文',
- 'sk' => '斯洛伐克文',
- 'sl' => '斯洛文尼亚文',
- 'sm' => '萨摩亚文',
- 'sma' => '南萨米文',
- 'smj' => '律勒欧萨米文',
- 'smn' => '伊纳里萨米文',
- 'sms' => '斯科特萨米文',
- 'sn' => '绍纳文',
- 'snk' => '索尼基文',
- 'so' => '索马里文',
- 'sog' => '古粟特文',
- 'sq' => '阿尔巴尼亚文',
- 'sr' => '塞尔维亚文',
- 'srn' => '苏里南汤加文',
- 'srr' => '谢列尔文',
- 'ss' => '斯瓦特文',
- 'ssy' => '萨霍文',
- 'st' => '南索托文',
- 'su' => '巽他文',
- 'suk' => '苏库马文',
- 'sus' => '苏苏文',
- 'sux' => '苏马文',
- 'sv' => '瑞典文',
- 'sw' => '斯瓦希里文',
- 'swb' => '科摩罗文',
- 'swc' => '刚果斯瓦希里文',
- 'syc' => '经典叙利亚文',
- 'syr' => '叙利亚文',
- 'ta' => '泰米尔文',
- 'te' => '泰卢固文',
- 'tem' => '滕内文',
- 'teo' => '特索文',
- 'ter' => '特列纳文',
- 'tet' => '特塔姆文',
- 'tg' => '塔吉克文',
- 'th' => '泰文',
- 'ti' => '提格里尼亚文',
- 'tig' => '提格雷文',
- 'tiv' => '蒂夫文',
- 'tk' => '土库曼文',
- 'tkl' => '托克劳文',
- 'tl' => '塔加洛文',
- 'tlh' => '克林贡文',
- 'tli' => '特林吉特文',
- 'tmh' => '塔马奇克文',
- 'tn' => '塞茨瓦纳文',
- 'to' => '汤加文',
- 'tog' => '汤加文(尼亚萨地区)',
- 'tpi' => '托克皮辛文',
- 'tr' => '土耳其文',
- 'trv' => '太鲁阁文',
- 'ts' => '宗加文',
- 'tsi' => '蒂姆西亚文',
- 'tt' => '塔塔尔文',
- 'tum' => '通布卡文',
- 'tvl' => '图瓦卢文',
- 'tw' => '特威文',
- 'twq' => '北桑海文',
- 'ty' => '塔西提文',
- 'tyv' => '图瓦文',
- 'tzm' => '塔马齐格特文',
- 'udm' => '乌德穆尔特文',
- 'ug' => '维吾尔文',
- 'uga' => '乌加里特文',
- 'uk' => '乌克兰文',
- 'umb' => '翁本杜文',
+ 'sat' => '桑塔利语',
+ 'sba' => '甘拜语',
+ 'sbp' => '桑古语',
+ 'sc' => '萨丁语',
+ 'scn' => '西西里语',
+ 'sco' => '苏格兰语',
+ 'sd' => '信德语',
+ 'sdh' => '南库尔德语',
+ 'se' => '北方萨米语',
+ 'see' => '塞内卡语',
+ 'seh' => '塞纳语',
+ 'sel' => '塞尔库普语',
+ 'ses' => '东桑海语',
+ 'sg' => '桑戈语',
+ 'sga' => '古爱尔兰语',
+ 'sh' => '塞尔维亚-克罗地亚语',
+ 'shi' => '希尔哈语',
+ 'shn' => '掸语',
+ 'shu' => '乍得阿拉伯语',
+ 'si' => '僧伽罗语',
+ 'sid' => '悉达摩语',
+ 'sk' => '斯洛伐克语',
+ 'sl' => '斯洛文尼亚语',
+ 'sm' => '萨摩亚语',
+ 'sma' => '南萨米语',
+ 'smj' => '吕勒萨米语',
+ 'smn' => '伊纳里萨米语',
+ 'sms' => '斯科特萨米语',
+ 'sn' => '绍纳语',
+ 'snk' => '索宁克语',
+ 'so' => '索马里语',
+ 'sog' => '粟特语',
+ 'sq' => '阿尔巴尼亚语',
+ 'sr' => '塞尔维亚语',
+ 'srn' => '苏里南汤加语',
+ 'srr' => '塞雷尔语',
+ 'ss' => '斯瓦蒂语',
+ 'ssy' => '萨霍语',
+ 'st' => '南索托语',
+ 'su' => '巽他语',
+ 'suk' => '苏库马语',
+ 'sus' => '苏苏语',
+ 'sux' => '苏美尔语',
+ 'sv' => '瑞典语',
+ 'sw' => '斯瓦希里语',
+ 'sw-cd' => '刚果斯瓦希里语',
+ 'swb' => '科摩罗语',
+ 'syc' => '古典叙利亚语',
+ 'syr' => '叙利亚语',
+ 'ta' => '泰米尔语',
+ 'te' => '泰卢固语',
+ 'tem' => '泰姆奈语',
+ 'teo' => '特索语',
+ 'ter' => '特伦诺语',
+ 'tet' => '德顿语',
+ 'tg' => '塔吉克语',
+ 'th' => '泰语',
+ 'ti' => '提格利尼亚语',
+ 'tig' => '提格雷语',
+ 'tiv' => '蒂夫语',
+ 'tk' => '土库曼语',
+ 'tkl' => '托克劳语',
+ 'tl' => '他加禄语',
+ 'tlh' => '克林贡语',
+ 'tli' => '特林吉特语',
+ 'tmh' => '塔马奇克语',
+ 'tn' => '茨瓦纳语',
+ 'to' => '汤加语',
+ 'tog' => '尼亚萨汤加语',
+ 'tpi' => '托克皮辛语',
+ 'tr' => '土耳其语',
+ 'trv' => '赛德克语',
+ 'ts' => '聪加语',
+ 'tsi' => '钦西安语',
+ 'tt' => '鞑靼语',
+ 'tum' => '通布卡语',
+ 'tvl' => '图瓦卢语',
+ 'tw' => '契维语',
+ 'twq' => '北桑海语',
+ 'ty' => '塔希提语',
+ 'tyv' => '图瓦语',
+ 'tzm' => '塔马齐格特语',
+ 'udm' => '乌德穆尔特语',
+ 'ug' => '维吾尔语',
+ 'uga' => '乌加里特语',
+ 'uk' => '乌克兰语',
+ 'umb' => '翁本杜语',
'und' => '未知语言',
- 'ur' => '乌尔都文',
- 'uz' => '乌兹别克文',
- 'vai' => '瓦伊文',
- 've' => '文达文',
- 'vi' => '越南文',
- 'vo' => '沃拉普克文',
- 'vot' => '沃提克文',
- 'vun' => '温旧文',
- 'wa' => '瓦隆文',
- 'wae' => '瓦尔瑟文',
- 'wal' => '瓦拉莫文',
- 'war' => '瓦赖文',
- 'was' => '瓦绍文',
- 'wo' => '沃洛夫文',
- 'xal' => '卡尔梅克文',
- 'xh' => '科萨文',
- 'xog' => '索加文',
- 'yao' => '瑶族文',
- 'yap' => '雅浦文',
- 'yav' => '洋卞文',
- 'ybb' => '耶姆巴文',
- 'yi' => '依地文',
- 'yo' => '约鲁巴文',
+ 'ur' => '乌尔都语',
+ 'uz' => '乌兹别克语',
+ 'vai' => '瓦伊语',
+ 've' => '文达语',
+ 'vep' => '维普森语',
+ 'vi' => '越南语',
+ 'vo' => '沃拉普克语',
+ 'vot' => '沃提克语',
+ 'vun' => '温旧语',
+ 'wa' => '瓦隆语',
+ 'wae' => '瓦尔瑟语',
+ 'wal' => '瓦拉莫语',
+ 'war' => '瓦瑞语',
+ 'was' => '瓦绍语',
+ 'wbp' => '瓦尔皮瑞语',
+ 'wo' => '沃洛夫语',
+ 'wuu' => '吴语',
+ 'xal' => '卡尔梅克语',
+ 'xh' => '科萨语',
+ 'xog' => '索加语',
+ 'yao' => '瑶族语',
+ 'yap' => '雅浦语',
+ 'yav' => '洋卞语',
+ 'ybb' => '耶姆巴语',
+ 'yi' => '意第绪语',
+ 'yo' => '约鲁巴语',
'yue' => '粤语',
- 'za' => '壮文',
- 'zap' => '萨波蒂克文',
- 'zbl' => '布利斯符号',
- 'zen' => '泽纳加文',
- 'zgh' => '标准摩洛哥塔马塞特文',
+ 'za' => '壮语',
+ 'zap' => '萨波蒂克语',
+ 'zbl' => '布里斯符号',
+ 'zen' => '泽纳加语',
+ 'zgh' => '标准摩洛哥塔马塞特语',
'zh' => '中文',
'zh-hans' => '简体中文',
'zh-hant' => '繁体中文',
- 'zu' => '祖鲁文',
- 'zun' => '祖尼文',
+ 'zu' => '祖鲁语',
+ 'zun' => '祖尼语',
'zxx' => '无语言内容',
- 'zza' => '扎扎文',
-);
+ 'zza' => '扎扎语',
+];
-$currencyNames = array(
+$currencyNames = [
'ADP' => '安道尔比塞塔',
'AED' => '阿联酋迪拉姆',
'AFA' => '阿富汗尼 (1927–2002)',
@@ -537,7 +556,7 @@ $currencyNames = array(
'ARS' => '阿根廷比索',
'ATS' => '奥地利先令',
'AUD' => '澳大利亚元',
- 'AWG' => '阿鲁巴基尔德元',
+ 'AWG' => '阿鲁巴弗罗林',
'AZM' => '阿塞拜疆马纳特 (1993–2006)',
'AZN' => '阿塞拜疆马纳特',
'BAD' => '波士尼亚-赫塞哥维纳第纳尔 (1992–1994)',
@@ -550,7 +569,7 @@ $currencyNames = array(
'BEL' => '比利时法郎(金融)',
'BGL' => '保加利亚硬列弗',
'BGM' => '保加利亚社会党列弗',
- 'BGN' => '保加利亚新列弗',
+ 'BGN' => '保加利亚列弗',
'BGO' => '保加利亚列弗 (1879–1952)',
'BHD' => '巴林第纳尔',
'BIF' => '布隆迪法郎',
@@ -572,7 +591,8 @@ $currencyNames = array(
'BUK' => '缅元',
'BWP' => '博茨瓦纳普拉',
'BYB' => '白俄罗斯新卢布 (1994–1999)',
- 'BYR' => '白俄罗斯卢布',
+ 'BYN' => '白俄罗斯卢布',
+ 'BYR' => '白俄罗斯卢布 (2000–2016)',
'BZD' => '伯利兹元',
'CAD' => '加拿大元',
'CDF' => '刚果法郎',
@@ -582,17 +602,18 @@ $currencyNames = array(
'CLE' => '智利埃斯库多',
'CLF' => '智利(资金)',
'CLP' => '智利比索',
+ 'CNH' => '人民币(离岸)',
'CNY' => '人民币',
'COP' => '哥伦比亚比索',
'COU' => '哥伦比亚币',
'CRC' => '哥斯达黎加科朗',
'CSD' => '旧塞尔维亚第纳尔',
- 'CSK' => '捷克硬克郎',
+ 'CSK' => '捷克硬克朗',
'CUC' => '古巴可兑换比索',
'CUP' => '古巴比索',
'CVE' => '佛得角埃斯库多',
'CYP' => '塞浦路斯镑',
- 'CZK' => '捷克克郎',
+ 'CZK' => '捷克克朗',
'DDM' => '东德奥斯特马克',
'DEM' => '德国马克',
'DJF' => '吉布提法郎',
@@ -684,11 +705,13 @@ $currencyNames = array(
'MLF' => '马里法郎',
'MMK' => '缅甸元',
'MNT' => '蒙古图格里克',
- 'MOP' => '澳门元',
- 'MRO' => '毛里塔尼亚乌吉亚',
+ 'MOP' => '澳门币',
+ 'MRO' => '毛里塔尼亚乌吉亚 (1973–2017)',
+ 'MRU' => '毛里塔尼亚乌吉亚',
'MTL' => '马耳他里拉',
'MTP' => '马耳他镑',
'MUR' => '毛里求斯卢比',
+ 'MVP' => '马尔代夫卢比(1947–1981)',
'MVR' => '马尔代夫卢菲亚',
'MWK' => '马拉维克瓦查',
'MXN' => '墨西哥比索',
@@ -701,7 +724,7 @@ $currencyNames = array(
'NAD' => '纳米比亚元',
'NGN' => '尼日利亚奈拉',
'NIC' => '尼加拉瓜科多巴 (1988–1991)',
- 'NIO' => '尼加拉瓜金科多巴',
+ 'NIO' => '尼加拉瓜科多巴',
'NLG' => '荷兰盾',
'NOK' => '挪威克朗',
'NPR' => '尼泊尔卢比',
@@ -709,7 +732,7 @@ $currencyNames = array(
'OMR' => '阿曼里亚尔',
'PAB' => '巴拿马巴波亚',
'PEI' => '秘鲁印第',
- 'PEN' => '秘鲁新索尔',
+ 'PEN' => '秘鲁索尔',
'PES' => '秘鲁索尔 (1863–1965)',
'PGK' => '巴布亚新几内亚基那',
'PHP' => '菲律宾比索',
@@ -742,7 +765,8 @@ $currencyNames = array(
'SRD' => '苏里南元',
'SRG' => '苏里南盾',
'SSP' => '南苏丹镑',
- 'STD' => '圣多美和普林西比多布拉',
+ 'STD' => '圣多美和普林西比多布拉 (1977–2017)',
+ 'STN' => '圣多美和普林西比多布拉',
'SUR' => '苏联卢布',
'SVC' => '萨尔瓦多科朗',
'SYP' => '叙利亚镑',
@@ -772,12 +796,13 @@ $currencyNames = array(
'UYU' => '乌拉圭比索',
'UZS' => '乌兹别克斯坦苏姆',
'VEB' => '委内瑞拉玻利瓦尔 (1871–2008)',
- 'VEF' => '委内瑞拉玻利瓦尔',
+ 'VEF' => '委内瑞拉玻利瓦尔 (2008–2018)',
+ 'VES' => '委内瑞拉玻利瓦尔',
'VND' => '越南盾',
'VNN' => '越南盾 (1978–1985)',
'VUV' => '瓦努阿图瓦图',
'WST' => '萨摩亚塔拉',
- 'XAF' => '中非金融合作法郎',
+ 'XAF' => '中非法郎',
'XAG' => '银',
'XAU' => '黄金',
'XBA' => '欧洲复合单位',
@@ -789,7 +814,7 @@ $currencyNames = array(
'XEU' => '欧洲货币单位',
'XFO' => '法国金法郎',
'XFU' => '法国法郎 (UIC)',
- 'XOF' => '非洲金融共同体法郎',
+ 'XOF' => '西非法郎',
'XPD' => '钯',
'XPF' => '太平洋法郎',
'XPT' => '铂',
@@ -811,11 +836,12 @@ $currencyNames = array(
'ZWD' => '津巴布韦元 (1980–2008)',
'ZWL' => '津巴布韦元 (2009)',
'ZWR' => '津巴布韦元 (2008)',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'ADP' => 'ADP',
'AED' => 'AED',
+ 'AFA' => 'AFA',
'AFN' => 'AFN',
'ALK' => 'ALK',
'ALL' => 'ALL',
@@ -864,8 +890,10 @@ $currencySymbols = array(
'BRZ' => 'BRZ',
'BSD' => 'BSD',
'BTN' => 'BTN',
+ 'BUK' => 'BUK',
'BWP' => 'BWP',
'BYB' => 'BYB',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CA$',
@@ -876,6 +904,7 @@ $currencySymbols = array(
'CLE' => 'CLE',
'CLF' => 'CLF',
'CLP' => 'CLP',
+ 'CNH' => 'CNH',
'CNY' => '¥',
'COP' => 'COP',
'COU' => 'COU',
@@ -947,6 +976,8 @@ $currencySymbols = array(
'KHR' => 'KHR',
'KMF' => 'KMF',
'KPW' => 'KPW',
+ 'KRH' => 'KRH',
+ 'KRO' => 'KRO',
'KRW' => '₩',
'KWD' => 'KWD',
'KYD' => 'KYD',
@@ -978,6 +1009,7 @@ $currencySymbols = array(
'MNT' => 'MNT',
'MOP' => 'MOP',
'MRO' => 'MRO',
+ 'MRU' => 'MRU',
'MTL' => 'MTL',
'MTP' => 'MTP',
'MUR' => 'MUR',
@@ -1035,17 +1067,19 @@ $currencySymbols = array(
'SRG' => 'SRG',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'STN',
'SUR' => 'SUR',
'SVC' => 'SVC',
'SYP' => 'SYP',
'SZL' => 'SZL',
- 'THB' => '฿',
+ 'THB' => 'THB',
'TJR' => 'TJR',
'TJS' => 'TJS',
'TMM' => 'TMM',
'TMT' => 'TMT',
'TND' => 'TND',
'TOP' => 'TOP',
+ 'TPE' => 'TPE',
'TRL' => 'TRL',
'TRY' => 'TRY',
'TTD' => 'TTD',
@@ -1064,14 +1098,30 @@ $currencySymbols = array(
'UZS' => 'UZS',
'VEB' => 'VEB',
'VEF' => 'VEF',
+ 'VES' => 'VES',
'VND' => '₫',
+ 'VNN' => 'VNN',
'VUV' => 'VUV',
'WST' => 'WST',
'XAF' => 'FCFA',
+ 'XAG' => 'XAG',
+ 'XAU' => 'XAU',
+ 'XBA' => 'XBA',
+ 'XBB' => 'XBB',
+ 'XBC' => 'XBC',
+ 'XBD' => 'XBD',
'XCD' => 'EC$',
+ 'XDR' => 'XDR',
'XEU' => 'XEU',
+ 'XFO' => 'XFO',
+ 'XFU' => 'XFU',
'XOF' => 'CFA',
+ 'XPD' => 'XPD',
'XPF' => 'CFPF',
+ 'XPT' => 'XPT',
+ 'XRE' => 'XRE',
+ 'XTS' => 'XTS',
+ 'XXX' => 'XXX',
'YDD' => 'YDD',
'YER' => 'YER',
'YUD' => 'YUD',
@@ -1087,9 +1137,9 @@ $currencySymbols = array(
'ZWD' => 'ZWD',
'ZWL' => 'ZWL',
'ZWR' => 'ZWR',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => '阿森松岛',
'AD' => '安道尔',
'AE' => '阿拉伯联合酋长国',
@@ -1098,7 +1148,6 @@ $countryNames = array(
'AI' => '安圭拉',
'AL' => '阿尔巴尼亚',
'AM' => '亚美尼亚',
- 'AN' => '荷属安的列斯群岛',
'AO' => '安哥拉',
'AQ' => '南极洲',
'AR' => '阿根廷',
@@ -1121,11 +1170,11 @@ $countryNames = array(
'BM' => '百慕大',
'BN' => '文莱',
'BO' => '玻利维亚',
- 'BQ' => '荷兰加勒比区',
+ 'BQ' => '荷属加勒比区',
'BR' => '巴西',
'BS' => '巴哈马',
'BT' => '不丹',
- 'BV' => '布维岛',
+ 'BV' => '布韦岛',
'BW' => '博茨瓦纳',
'BY' => '白俄罗斯',
'BZ' => '伯利兹',
@@ -1148,7 +1197,7 @@ $countryNames = array(
'CW' => '库拉索',
'CX' => '圣诞岛',
'CY' => '塞浦路斯',
- 'CZ' => '捷克共和国',
+ 'CZ' => '捷克',
'DE' => '德国',
'DG' => '迪戈加西亚岛',
'DJ' => '吉布提',
@@ -1165,6 +1214,7 @@ $countryNames = array(
'ES' => '西班牙',
'ET' => '埃塞俄比亚',
'EU' => '欧盟',
+ 'EZ' => '欧元区',
'FI' => '芬兰',
'FJ' => '斐济',
'FK' => '福克兰群岛',
@@ -1185,7 +1235,7 @@ $countryNames = array(
'GP' => '瓜德罗普',
'GQ' => '赤道几内亚',
'GR' => '希腊',
- 'GS' => '南乔治亚岛和南桑威齐群岛',
+ 'GS' => '南乔治亚和南桑威奇群岛',
'GT' => '危地马拉',
'GU' => '关岛',
'GW' => '几内亚比绍',
@@ -1200,7 +1250,7 @@ $countryNames = array(
'ID' => '印度尼西亚',
'IE' => '爱尔兰',
'IL' => '以色列',
- 'IM' => '曼岛',
+ 'IM' => '马恩岛',
'IN' => '印度',
'IO' => '英属印度洋领地',
'IQ' => '伊拉克',
@@ -1298,7 +1348,7 @@ $countryNames = array(
'SG' => '新加坡',
'SH' => '圣赫勒拿',
'SI' => '斯洛文尼亚',
- 'SJ' => '斯瓦尔巴特和扬马延',
+ 'SJ' => '斯瓦尔巴和扬马延',
'SK' => '斯洛伐克',
'SL' => '塞拉利昂',
'SM' => '圣马力诺',
@@ -1331,14 +1381,15 @@ $countryNames = array(
'UA' => '乌克兰',
'UG' => '乌干达',
'UM' => '美国本土外小岛屿',
+ 'UN' => '联合国',
'US' => '美国',
'UY' => '乌拉圭',
'UZ' => '乌兹别克斯坦',
'VA' => '梵蒂冈',
'VC' => '圣文森特和格林纳丁斯',
'VE' => '委内瑞拉',
- 'VG' => '英属维京群岛',
- 'VI' => '美属维京群岛',
+ 'VG' => '英属维尔京群岛',
+ 'VI' => '美属维尔京群岛',
'VN' => '越南',
'VU' => '瓦努阿图',
'WF' => '瓦利斯和富图纳',
@@ -1349,9 +1400,10 @@ $countryNames = array(
'ZA' => '南非',
'ZM' => '赞比亚',
'ZW' => '津巴布韦',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-other' => '{0}个世纪',
'day-future-other' => '{0}天后',
'day-narrow-future-other' => '{0}天后',
'day-narrow-past-other' => '{0}天前',
@@ -1359,6 +1411,12 @@ $timeUnits = array(
'day-past-other' => '{0}天前',
'day-short-future-other' => '{0}天后',
'day-short-past-other' => '{0}天前',
+ 'fri-future-other' => '{0}个周五后',
+ 'fri-narrow-future-other' => '{0}个周五后',
+ 'fri-narrow-past-other' => '{0}个周五前',
+ 'fri-past-other' => '{0}个周五前',
+ 'fri-short-future-other' => '{0}个周五后',
+ 'fri-short-past-other' => '{0}个周五前',
'hour-future-other' => '{0}小时后',
'hour-narrow-future-other' => '{0}小时后',
'hour-narrow-past-other' => '{0}小时前',
@@ -1375,6 +1433,12 @@ $timeUnits = array(
'minute-past-other' => '{0}分钟前',
'minute-short-future-other' => '{0}分钟后',
'minute-short-past-other' => '{0}分钟前',
+ 'mon-future-other' => '{0}个周一后',
+ 'mon-narrow-future-other' => '{0}个周一后',
+ 'mon-narrow-past-other' => '{0}个周一前',
+ 'mon-past-other' => '{0}个周一前',
+ 'mon-short-future-other' => '{0}个周一后',
+ 'mon-short-past-other' => '{0}个周一前',
'month-future-other' => '{0}个月后',
'month-narrow-future-other' => '{0}个月后',
'month-narrow-past-other' => '{0}个月前',
@@ -1383,12 +1447,18 @@ $timeUnits = array(
'month-short-future-other' => '{0}个月后',
'month-short-past-other' => '{0}个月前',
'nanosecond-other' => '{0}纳秒',
- 'quarter-future-other' => '{0}季度后',
- 'quarter-narrow-future-other' => '{0}季度后',
- 'quarter-narrow-past-other' => '{0}季度前',
- 'quarter-past-other' => '{0}季度前',
- 'quarter-short-future-other' => '{0}季度后',
- 'quarter-short-past-other' => '{0}季度前',
+ 'quarter-future-other' => '{0}个季度后',
+ 'quarter-narrow-future-other' => '{0}个季度后',
+ 'quarter-narrow-past-other' => '{0}个季度前',
+ 'quarter-past-other' => '{0}个季度前',
+ 'quarter-short-future-other' => '{0}个季度后',
+ 'quarter-short-past-other' => '{0}个季度前',
+ 'sat-future-other' => '{0}个周六后',
+ 'sat-narrow-future-other' => '{0}个周六后',
+ 'sat-narrow-past-other' => '{0}个周六前',
+ 'sat-past-other' => '{0}个周六前',
+ 'sat-short-future-other' => '{0}个周六后',
+ 'sat-short-past-other' => '{0}个周六前',
'second-future-other' => '{0}秒钟后',
'second-narrow-future-other' => '{0}秒后',
'second-narrow-past-other' => '{0}秒前',
@@ -1396,6 +1466,30 @@ $timeUnits = array(
'second-past-other' => '{0}秒钟前',
'second-short-future-other' => '{0}秒后',
'second-short-past-other' => '{0}秒前',
+ 'sun-future-other' => '{0}个周日后',
+ 'sun-narrow-future-other' => '{0}个周日后',
+ 'sun-narrow-past-other' => '{0}个周日前',
+ 'sun-past-other' => '{0}个周日前',
+ 'sun-short-future-other' => '{0}个周日后',
+ 'sun-short-past-other' => '{0}个周日前',
+ 'thu-future-other' => '{0}个周四后',
+ 'thu-narrow-future-other' => '{0}个周四后',
+ 'thu-narrow-past-other' => '{0}个周四前',
+ 'thu-past-other' => '{0}个周四前',
+ 'thu-short-future-other' => '{0}个周四后',
+ 'thu-short-past-other' => '{0}个周四前',
+ 'tue-future-other' => '{0}个周二后',
+ 'tue-narrow-future-other' => '{0}个周二后',
+ 'tue-narrow-past-other' => '{0}个周二前',
+ 'tue-past-other' => '{0}个周二前',
+ 'tue-short-future-other' => '{0}个周二后',
+ 'tue-short-past-other' => '{0}个周二前',
+ 'wed-future-other' => '{0}个周三后',
+ 'wed-narrow-future-other' => '{0}个周三后',
+ 'wed-narrow-past-other' => '{0}个周三前',
+ 'wed-past-other' => '{0}个周三前',
+ 'wed-short-future-other' => '{0}个周三后',
+ 'wed-short-past-other' => '{0}个周三前',
'week-future-other' => '{0}周后',
'week-narrow-future-other' => '{0}周后',
'week-narrow-past-other' => '{0}周前',
@@ -1410,4 +1504,4 @@ $timeUnits = array(
'year-past-other' => '{0}年前',
'year-short-future-other' => '{0}年后',
'year-short-past-other' => '{0}年前',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesZh_hant.php b/MLEB/cldr/CldrNames/CldrNamesZh_hant.php
index a80bf15c..78f4123e 100644
--- a/MLEB/cldr/CldrNames/CldrNamesZh_hant.php
+++ b/MLEB/cldr/CldrNames/CldrNamesZh_hant.php
@@ -1,13 +1,13 @@
<?php
-$languageNames = array(
+$languageNames = [
'aa' => '阿法文',
'ab' => '阿布哈茲文',
'ace' => '亞齊文',
'ach' => '阿僑利文',
'ada' => '阿當莫文',
'ady' => '阿迪各文',
- 'ae' => '阿緯斯陀文',
+ 'ae' => '阿維斯塔文',
'aeb' => '突尼斯阿拉伯文',
'af' => '南非荷蘭文',
'afh' => '阿弗里希利文',
@@ -30,6 +30,7 @@ $languageNames = array(
'aro' => '阿拉奧納文',
'arp' => '阿拉帕霍文',
'arq' => '阿爾及利亞阿拉伯文',
+ 'ars' => '納吉迪阿拉伯文',
'arw' => '阿拉瓦克文',
'ary' => '摩洛哥阿拉伯文',
'arz' => '埃及阿拉伯文',
@@ -42,8 +43,7 @@ $languageNames = array(
'awa' => '阿瓦文',
'ay' => '艾馬拉文',
'az' => '亞塞拜然文',
- 'azb' => '南亞塞拜然文',
- 'ba' => '巴什客爾文',
+ 'ba' => '巴什喀爾文',
'bal' => '俾路支文',
'ban' => '峇里文',
'bar' => '巴伐利亞文',
@@ -59,6 +59,7 @@ $languageNames = array(
'bfd' => '富特文',
'bfq' => '巴達加文',
'bg' => '保加利亞文',
+ 'bgn' => '西俾路支文',
'bho' => '博傑普爾文',
'bi' => '比斯拉馬文',
'bik' => '比科爾文',
@@ -82,7 +83,7 @@ $languageNames = array(
'bum' => '布魯文',
'byn' => '比林文',
'byv' => '梅敦巴文',
- 'ca' => '加泰羅尼亞文',
+ 'ca' => '加泰蘭文',
'cad' => '卡多文',
'car' => '加勒比文',
'cay' => '卡尤加文',
@@ -100,12 +101,13 @@ $languageNames = array(
'chp' => '奇佩瓦揚文',
'chr' => '柴羅基文',
'chy' => '沙伊安文',
- 'ckb' => '索拉尼庫爾德文',
+ 'ckb' => '中庫德文',
'co' => '科西嘉文',
'cop' => '科普特文',
'cps' => '卡皮茲文',
- 'cr' => '克裡文',
- 'crh' => '克里米亞半島的土耳其文;克里米亞半島的塔塔爾文',
+ 'cr' => '克里文',
+ 'crh' => '土耳其文(克里米亞半島)',
+ 'crs' => '塞席爾克里奧爾法文',
'cs' => '捷克文',
'csb' => '卡舒布文',
'cu' => '宗教斯拉夫文',
@@ -144,7 +146,6 @@ $languageNames = array(
'enm' => '中古英文',
'eo' => '世界文',
'es' => '西班牙文',
- 'es-es' => '西班牙文(歐洲)',
'esu' => '中尤皮克文',
'et' => '愛沙尼亞文',
'eu' => '巴斯克文',
@@ -183,7 +184,7 @@ $languageNames = array(
'glk' => '吉拉基文',
'gmh' => '中古高地德文',
'gn' => '瓜拉尼文',
- 'goh' => '古高地日耳曼文',
+ 'goh' => '古高地德文',
'gom' => '孔卡尼文',
'gon' => '岡德文',
'gor' => '科隆達羅文',
@@ -202,7 +203,7 @@ $languageNames = array(
'hak' => '客家話',
'haw' => '夏威夷文',
'he' => '希伯來文',
- 'hi' => '北印度文',
+ 'hi' => '印地文',
'hif' => '斐濟印地文',
'hil' => '希利蓋農文',
'hit' => '赫梯文',
@@ -230,9 +231,9 @@ $languageNames = array(
'is' => '冰島文',
'it' => '義大利文',
'iu' => '因紐特文',
- 'izh' => '英格裏亞文',
+ 'izh' => '英格里亞文',
'ja' => '日文',
- 'jam' => '牙買加克裏奧爾英文',
+ 'jam' => '牙買加克里奧爾英文',
'jbo' => '邏輯文',
'jgo' => '恩格姆巴文',
'jmc' => '馬恰美文',
@@ -275,7 +276,7 @@ $languageNames = array(
'kok' => '貢根文',
'kos' => '科斯雷恩文',
'kpe' => '克佩列文',
- 'kr' => '卡努裡文',
+ 'kr' => '卡努里文',
'krc' => '卡拉柴-包爾卡爾文',
'kri' => '塞拉利昂克裏奧爾文',
'krj' => '基那來阿文',
@@ -285,7 +286,7 @@ $languageNames = array(
'ksb' => '尚巴拉文',
'ksf' => '巴菲亞文',
'ksh' => '科隆文',
- 'ku' => '庫爾德文',
+ 'ku' => '庫德文',
'kum' => '庫密克文',
'kut' => '庫特奈文',
'kv' => '科米文',
@@ -308,7 +309,9 @@ $languageNames = array(
'ln' => '林加拉文',
'lo' => '寮文',
'lol' => '芒戈文',
+ 'lou' => '路易斯安那克里奧爾文',
'loz' => '洛齊文',
+ 'lrc' => '北盧爾文',
'lt' => '立陶宛文',
'ltg' => '拉特加萊文',
'lu' => '魯巴加丹加文',
@@ -316,7 +319,7 @@ $languageNames = array(
'lui' => '路易塞諾文',
'lun' => '盧恩達文',
'luo' => '盧奧文',
- 'lus' => '盧晒文',
+ 'lus' => '米佐文',
'luy' => '盧雅文',
'lv' => '拉脫維亞文',
'lzh' => '文言文',
@@ -334,7 +337,7 @@ $languageNames = array(
'men' => '門德文',
'mer' => '梅魯文',
'mfe' => '克里奧文(模里西斯)',
- 'mg' => '馬拉加什文',
+ 'mg' => '馬達加斯加文',
'mga' => '中古愛爾蘭文',
'mgh' => '馬夸文',
'mgo' => '美塔文',
@@ -346,23 +349,23 @@ $languageNames = array(
'ml' => '馬來亞拉姆文',
'mn' => '蒙古文',
'mnc' => '滿族文',
- 'mni' => '曼尼普裡文',
+ 'mni' => '曼尼普爾文',
'moh' => '莫霍克文',
'mos' => '莫西文',
'mr' => '馬拉地文',
- 'mrj' => '西馬裏文',
+ 'mrj' => '西馬里文',
'ms' => '馬來文',
'mt' => '馬爾他文',
'mua' => '蒙當文',
'mul' => '多種語言',
'mus' => '克里克文',
'mwl' => '米蘭德斯文',
- 'mwr' => '馬爾尼裡文',
+ 'mwr' => '馬瓦里文',
'mwv' => '明打威文',
'my' => '緬甸文',
'mye' => '姆耶內文',
'myv' => '厄爾茲亞文',
- 'mzn' => '瑪詹德拉尼文',
+ 'mzn' => '馬贊德蘭文',
'na' => '諾魯文',
'nan' => '閩南語',
'nap' => '拿波里文',
@@ -370,6 +373,7 @@ $languageNames = array(
'nb' => '巴克摩挪威文',
'nd' => '北地畢列文',
'nds' => '低地德文',
+ 'nds-nl' => '低地薩克遜文',
'ne' => '尼泊爾文',
'new' => '尼瓦爾文',
'ng' => '恩東加文',
@@ -399,7 +403,7 @@ $languageNames = array(
'oc' => '奧克西坦文',
'oj' => '奧杰布瓦文',
'om' => '奧羅莫文',
- 'or' => '歐利亞文',
+ 'or' => '歐迪亞文',
'os' => '奧塞提文',
'osa' => '歐塞奇文',
'ota' => '鄂圖曼土耳其文',
@@ -410,6 +414,7 @@ $languageNames = array(
'pap' => '帕皮阿門托文',
'pau' => '帛琉文',
'pcd' => '庇卡底文',
+ 'pcm' => '奈及利亞皮欽文',
'pdc' => '賓夕法尼亞德文',
'pdt' => '門諾低地德文',
'peo' => '古波斯文',
@@ -424,7 +429,6 @@ $languageNames = array(
'pro' => '古普羅旺斯文',
'ps' => '普什圖文',
'pt' => '葡萄牙文',
- 'pt-pt' => '葡萄牙文(歐洲)',
'qu' => '蓋楚瓦文',
'quc' => '基切文',
'qug' => '欽博拉索海蘭蓋丘亞文',
@@ -452,7 +456,7 @@ $languageNames = array(
'sam' => '薩瑪利亞阿拉姆文',
'saq' => '薩布魯文',
'sas' => '撒撒克文',
- 'sat' => '散塔利文',
+ 'sat' => '桑塔利文',
'saz' => '索拉什特拉文',
'sba' => '甘拜文',
'sbp' => '桑古文',
@@ -461,11 +465,12 @@ $languageNames = array(
'sco' => '蘇格蘭文',
'sd' => '信德文',
'sdc' => '薩丁尼亞-薩薩里文',
- 'se' => '北方薩米文',
+ 'sdh' => '南庫德文',
+ 'se' => '北薩米文',
'see' => '塞訥卡文',
'seh' => '賽納文',
'sei' => '瑟里文',
- 'sel' => '瑟爾卡普文',
+ 'sel' => '塞爾庫普文',
'ses' => '東桑海文',
'sg' => '桑戈文',
'sga' => '古愛爾蘭文',
@@ -483,9 +488,9 @@ $languageNames = array(
'sm' => '薩摩亞文',
'sma' => '南薩米文',
'smj' => '魯勒薩米文',
- 'smn' => '伊納裡薩米文',
+ 'smn' => '伊納里薩米文',
'sms' => '斯科特薩米文',
- 'sn' => '塞內加爾文',
+ 'sn' => '紹納文',
'snk' => '索尼基文',
'so' => '索馬利文',
'sog' => '索格底亞納文',
@@ -503,8 +508,8 @@ $languageNames = array(
'sux' => '蘇美文',
'sv' => '瑞典文',
'sw' => '史瓦希里文',
+ 'sw-cd' => '史瓦希里文(剛果)',
'swb' => '葛摩文',
- 'swc' => '史瓦希里文(剛果)',
'syc' => '古敘利亞文',
'syr' => '敘利亞文',
'szl' => '西利西亞文',
@@ -528,7 +533,7 @@ $languageNames = array(
'tli' => '特林基特文',
'tly' => '塔里什文',
'tmh' => '塔馬奇克文',
- 'tn' => '突尼西亞文',
+ 'tn' => '塞茲瓦納文',
'to' => '東加文',
'tog' => '東加文(尼亞薩)',
'tpi' => '托比辛文',
@@ -545,9 +550,9 @@ $languageNames = array(
'tw' => '特威文',
'twq' => '北桑海文',
'ty' => '大溪地文',
- 'tyv' => '土凡文',
- 'tzm' => '塔馬齊格特文',
- 'udm' => '沃蒂艾克文',
+ 'tyv' => '圖瓦文',
+ 'tzm' => '中阿特拉斯塔馬塞特文',
+ 'udm' => '烏德穆爾特文',
'ug' => '維吾爾文',
'uga' => '烏加列文',
'uk' => '烏克蘭文',
@@ -567,10 +572,11 @@ $languageNames = array(
'vro' => '佛羅文',
'vun' => '溫舊文',
'wa' => '瓦隆文',
- 'wae' => '瓦瑟文',
+ 'wae' => '瓦爾瑟文',
'wal' => '瓦拉莫文',
'war' => '瓦瑞文',
'was' => '瓦紹文',
+ 'wbp' => '沃皮瑞文',
'wo' => '沃洛夫文',
'wuu' => '吳語',
'xal' => '卡爾梅克文',
@@ -598,9 +604,9 @@ $languageNames = array(
'zun' => '祖尼文',
'zxx' => '無語言內容',
'zza' => '扎扎文',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'ADP' => '安道爾陪士特',
'AED' => '阿拉伯聯合大公國迪爾汗',
'AFA' => '阿富汗尼 (1927–2002)',
@@ -655,7 +661,8 @@ $currencyNames = array(
'BUK' => '緬甸基雅特',
'BWP' => '波札那普拉',
'BYB' => '白俄羅斯新盧布 (1994–1999)',
- 'BYR' => '白俄羅斯盧布',
+ 'BYN' => '白俄羅斯盧布',
+ 'BYR' => '白俄羅斯盧布 (2000–2016)',
'BZD' => '貝里斯元',
'CAD' => '加幣',
'CDF' => '剛果法郎',
@@ -665,6 +672,7 @@ $currencyNames = array(
'CLE' => '智利埃斯庫多',
'CLF' => '卡林油達佛曼跎',
'CLP' => '智利披索',
+ 'CNH' => '人民幣(離岸)',
'CNY' => '人民幣',
'COP' => '哥倫比亞披索',
'COU' => '哥倫比亞幣 (COU)',
@@ -710,7 +718,7 @@ $currencyNames = array(
'GTQ' => '瓜地馬拉格查爾',
'GWE' => '葡屬幾內亞埃斯庫多',
'GWP' => '幾內亞比索披索',
- 'GYD' => '蓋亞那元',
+ 'GYD' => '圭亞那元',
'HKD' => '港幣',
'HNL' => '洪都拉斯倫皮拉',
'HRD' => '克羅埃西亞第納爾',
@@ -735,13 +743,13 @@ $currencyNames = array(
'KGS' => '吉爾吉斯索姆',
'KHR' => '柬埔寨瑞爾',
'KMF' => '科摩羅法郎',
- 'KPW' => '北韓圓',
+ 'KPW' => '北韓元',
'KRH' => '南韓圜',
'KRO' => '南韓圓',
- 'KRW' => '韓圓',
+ 'KRW' => '韓元',
'KWD' => '科威特第納爾',
'KYD' => '開曼群島元',
- 'KZT' => '卡扎克斯坦坦吉',
+ 'KZT' => '哈薩克堅戈',
'LAK' => '寮國基普',
'LBP' => '黎巴嫩鎊',
'LKR' => '斯里蘭卡盧比',
@@ -768,10 +776,11 @@ $currencyNames = array(
'MMK' => '緬甸元',
'MNT' => '蒙古圖格里克',
'MOP' => '澳門元',
- 'MRO' => '茅利塔尼亞烏吉亞',
+ 'MRO' => '茅利塔尼亞烏吉亞 (1973–2017)',
+ 'MRU' => '茅利塔尼亞烏吉亞',
'MTL' => '馬爾他里拉',
'MTP' => '馬爾他鎊',
- 'MUR' => '模里西斯盧布',
+ 'MUR' => '模里西斯盧比',
'MVP' => '馬爾地夫盧比',
'MVR' => '馬爾地夫盧非亞',
'MWK' => '馬拉維克瓦查',
@@ -793,8 +802,8 @@ $currencyNames = array(
'OMR' => '阿曼里亞爾',
'PAB' => '巴拿馬巴波亞',
'PEI' => '祕魯因蒂',
- 'PEN' => '秘魯新太陽幣',
- 'PES' => '秘魯索爾 (1863–1965)',
+ 'PEN' => '秘魯太陽幣',
+ 'PES' => '秘魯太陽幣 (1863–1965)',
'PGK' => '巴布亞紐幾內亞基那',
'PHP' => '菲律賓披索',
'PKR' => '巴基斯坦盧比',
@@ -826,7 +835,8 @@ $currencyNames = array(
'SRD' => '蘇利南元',
'SRG' => '蘇利南基爾',
'SSP' => '南蘇丹鎊',
- 'STD' => '聖多美島和普林西比島多布拉',
+ 'STD' => '聖多美島和普林西比島多布拉 (1977–2017)',
+ 'STN' => '聖多美島和普林西比島多布拉',
'SUR' => '蘇聯盧布',
'SVC' => '薩爾瓦多科郎',
'SYP' => '敘利亞鎊',
@@ -842,7 +852,7 @@ $currencyNames = array(
'TRL' => '土耳其里拉',
'TRY' => '新土耳其里拉',
'TTD' => '千里達及托巴哥元',
- 'TWD' => '新臺幣',
+ 'TWD' => '新台幣',
'TZS' => '坦尚尼亞先令',
'UAH' => '烏克蘭格里夫納',
'UAK' => '烏克蘭卡本瓦那茲',
@@ -856,7 +866,8 @@ $currencyNames = array(
'UYU' => '烏拉圭披索',
'UZS' => '烏茲別克索姆',
'VEB' => '委內瑞拉玻利瓦 (1871–2008)',
- 'VEF' => '委內瑞拉玻利瓦',
+ 'VEF' => '委內瑞拉玻利瓦 (2008–2018)',
+ 'VES' => '委內瑞拉玻利瓦',
'VND' => '越南盾',
'VNN' => '越南盾 (1978–1985)',
'VUV' => '萬那杜瓦圖',
@@ -897,9 +908,9 @@ $currencyNames = array(
'ZWD' => '辛巴威元 (1980–2008)',
'ZWL' => '辛巴威元 (2009)',
'ZWR' => '辛巴威元 (2008)',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
'ADP' => 'ADP',
'AED' => 'AED',
'AFA' => 'AFA',
@@ -954,6 +965,7 @@ $currencySymbols = array(
'BUK' => 'BUK',
'BWP' => 'BWP',
'BYB' => 'BYB',
+ 'BYN' => 'BYN',
'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CA$',
@@ -1126,11 +1138,12 @@ $currencySymbols = array(
'SRG' => 'SRG',
'SSP' => 'SSP',
'STD' => 'STD',
+ 'STN' => 'Db',
'SUR' => 'SUR',
'SVC' => 'SVC',
'SYP' => 'SYP',
'SZL' => 'SZL',
- 'THB' => '฿',
+ 'THB' => 'THB',
'TJR' => 'TJR',
'TJS' => 'TJS',
'TMM' => 'TMM',
@@ -1141,13 +1154,13 @@ $currencySymbols = array(
'TRL' => 'TRL',
'TRY' => 'TRY',
'TTD' => 'TTD',
- 'TWD' => 'NT$',
+ 'TWD' => '$',
'TZS' => 'TZS',
'UAH' => 'UAH',
'UAK' => 'UAK',
'UGS' => 'UGS',
'UGX' => 'UGX',
- 'USD' => '$',
+ 'USD' => 'US$',
'USN' => 'USN',
'USS' => 'USS',
'UYI' => 'UYI',
@@ -1196,18 +1209,17 @@ $currencySymbols = array(
'ZWD' => 'ZWD',
'ZWL' => 'ZWL',
'ZWR' => 'ZWR',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => '阿森松島',
'AD' => '安道爾',
'AE' => '阿拉伯聯合大公國',
'AF' => '阿富汗',
'AG' => '安地卡及巴布達',
- 'AI' => '安圭拉',
+ 'AI' => '安奎拉',
'AL' => '阿爾巴尼亞',
'AM' => '亞美尼亞',
- 'AN' => '荷屬安地列斯',
'AO' => '安哥拉',
'AQ' => '南極洲',
'AR' => '阿根廷',
@@ -1239,7 +1251,7 @@ $countryNames = array(
'BY' => '白俄羅斯',
'BZ' => '貝里斯',
'CA' => '加拿大',
- 'CC' => '科科斯(基林)群島',
+ 'CC' => '科克斯(基靈)群島',
'CD' => '剛果(金夏沙)',
'CF' => '中非共和國',
'CG' => '剛果(布拉薩)',
@@ -1248,7 +1260,7 @@ $countryNames = array(
'CK' => '庫克群島',
'CL' => '智利',
'CM' => '喀麥隆',
- 'CN' => '中華人民共和國',
+ 'CN' => '中國',
'CO' => '哥倫比亞',
'CP' => '克里派頓島',
'CR' => '哥斯大黎加',
@@ -1257,7 +1269,7 @@ $countryNames = array(
'CW' => '庫拉索',
'CX' => '聖誕島',
'CY' => '賽普勒斯',
- 'CZ' => '捷克共和國',
+ 'CZ' => '捷克',
'DE' => '德國',
'DG' => '迪亞哥加西亞島',
'DJ' => '吉布地',
@@ -1274,18 +1286,19 @@ $countryNames = array(
'ES' => '西班牙',
'ET' => '衣索比亞',
'EU' => '歐盟',
+ 'EZ' => '歐元區',
'FI' => '芬蘭',
'FJ' => '斐濟',
'FK' => '福克蘭群島',
- 'FM' => '密克羅尼西亞群島',
+ 'FM' => '密克羅尼西亞',
'FO' => '法羅群島',
'FR' => '法國',
'GA' => '加彭',
'GB' => '英國',
'GD' => '格瑞那達',
- 'GE' => '喬治亞共和國',
+ 'GE' => '喬治亞',
'GF' => '法屬圭亞那',
- 'GG' => '根西島',
+ 'GG' => '根息',
'GH' => '迦納',
'GI' => '直布羅陀',
'GL' => '格陵蘭',
@@ -1300,7 +1313,7 @@ $countryNames = array(
'GW' => '幾內亞比索',
'GY' => '蓋亞那',
'HK' => '香港',
- 'HM' => '赫德及麥當勞群島',
+ 'HM' => '赫德島及麥唐納群島',
'HN' => '宏都拉斯',
'HR' => '克羅埃西亞',
'HT' => '海地',
@@ -1354,8 +1367,8 @@ $countryNames = array(
'MM' => '緬甸',
'MN' => '蒙古',
'MO' => '澳門',
- 'MP' => '北馬里亞納群島',
- 'MQ' => '馬丁尼克島',
+ 'MP' => '北馬利安納群島',
+ 'MQ' => '馬丁尼克',
'MR' => '茅利塔尼亞',
'MS' => '蒙哲臘',
'MT' => '馬爾他',
@@ -1377,7 +1390,7 @@ $countryNames = array(
'NR' => '諾魯',
'NU' => '紐埃島',
'NZ' => '紐西蘭',
- 'OM' => '阿曼王國',
+ 'OM' => '阿曼',
'PA' => '巴拿馬',
'PE' => '秘魯',
'PF' => '法屬玻里尼西亞',
@@ -1385,7 +1398,7 @@ $countryNames = array(
'PH' => '菲律賓',
'PK' => '巴基斯坦',
'PL' => '波蘭',
- 'PM' => '聖皮埃爾和密克隆群島',
+ 'PM' => '聖皮埃與密克隆群島',
'PN' => '皮特肯群島',
'PR' => '波多黎各',
'PS' => '巴勒斯坦',
@@ -1407,7 +1420,7 @@ $countryNames = array(
'SG' => '新加坡',
'SH' => '聖赫勒拿島',
'SI' => '斯洛維尼亞',
- 'SJ' => '冷岸及央麥恩群島',
+ 'SJ' => '挪威屬斯瓦巴及尖棉',
'SK' => '斯洛伐克',
'SL' => '獅子山',
'SM' => '聖馬利諾',
@@ -1421,9 +1434,9 @@ $countryNames = array(
'SY' => '敘利亞',
'SZ' => '史瓦濟蘭',
'TA' => '特里斯坦達庫尼亞群島',
- 'TC' => '英屬土克凱可群島',
+ 'TC' => '土克斯及開科斯群島',
'TD' => '查德',
- 'TF' => '法屬南方屬地',
+ 'TF' => '法屬南部屬地',
'TG' => '多哥',
'TH' => '泰國',
'TJ' => '塔吉克',
@@ -1440,6 +1453,7 @@ $countryNames = array(
'UA' => '烏克蘭',
'UG' => '烏干達',
'UM' => '美國本土外小島嶼',
+ 'UN' => '聯合國',
'US' => '美國',
'UY' => '烏拉圭',
'UZ' => '烏茲別克',
@@ -1450,17 +1464,18 @@ $countryNames = array(
'VI' => '美屬維京群島',
'VN' => '越南',
'VU' => '萬那杜',
- 'WF' => '瓦利斯和富圖納群島',
- 'WS' => '薩摩亞群島',
+ 'WF' => '瓦利斯群島和富圖那群島',
+ 'WS' => '薩摩亞',
'XK' => '科索沃',
'YE' => '葉門',
- 'YT' => '馬約特',
+ 'YT' => '馬約特島',
'ZA' => '南非',
'ZM' => '尚比亞',
'ZW' => '辛巴威',
-);
+];
-$timeUnits = array(
+$timeUnits = [
+ 'century-other' => '{0} 個世紀',
'day-future-other' => '{0} 天後',
'day-narrow-future-other' => '{0} 天後',
'day-narrow-past-other' => '{0} 天前',
@@ -1468,6 +1483,12 @@ $timeUnits = array(
'day-past-other' => '{0} 天前',
'day-short-future-other' => '{0} 天後',
'day-short-past-other' => '{0} 天前',
+ 'fri-future-other' => '{0} 個週五後',
+ 'fri-narrow-future-other' => '{0} 個週五後',
+ 'fri-narrow-past-other' => '{0} 個週五前',
+ 'fri-past-other' => '{0} 個週五前',
+ 'fri-short-future-other' => '{0} 個週五後',
+ 'fri-short-past-other' => '{0} 個週五前',
'hour-future-other' => '{0} 小時後',
'hour-narrow-future-other' => '{0} 小時後',
'hour-narrow-past-other' => '{0} 小時前',
@@ -1484,6 +1505,12 @@ $timeUnits = array(
'minute-past-other' => '{0} 分鐘前',
'minute-short-future-other' => '{0} 分鐘後',
'minute-short-past-other' => '{0} 分鐘前',
+ 'mon-future-other' => '{0} 個週一後',
+ 'mon-narrow-future-other' => '{0} 個週一後',
+ 'mon-narrow-past-other' => '{0} 個週一前',
+ 'mon-past-other' => '{0} 個週一前',
+ 'mon-short-future-other' => '{0} 個週一後',
+ 'mon-short-past-other' => '{0} 個週一前',
'month-future-other' => '{0} 個月後',
'month-narrow-future-other' => '{0} 個月後',
'month-narrow-past-other' => '{0} 個月前',
@@ -1498,6 +1525,12 @@ $timeUnits = array(
'quarter-past-other' => '{0} 季前',
'quarter-short-future-other' => '{0} 季後',
'quarter-short-past-other' => '{0} 季前',
+ 'sat-future-other' => '{0} 個週六後',
+ 'sat-narrow-future-other' => '{0} 個週六後',
+ 'sat-narrow-past-other' => '{0} 個週六前',
+ 'sat-past-other' => '{0} 個週六前',
+ 'sat-short-future-other' => '{0} 個週六後',
+ 'sat-short-past-other' => '{0} 個週六前',
'second-future-other' => '{0} 秒後',
'second-narrow-future-other' => '{0} 秒後',
'second-narrow-past-other' => '{0} 秒前',
@@ -1505,6 +1538,30 @@ $timeUnits = array(
'second-past-other' => '{0} 秒前',
'second-short-future-other' => '{0} 秒後',
'second-short-past-other' => '{0} 秒前',
+ 'sun-future-other' => '{0} 個週日後',
+ 'sun-narrow-future-other' => '{0} 個週日後',
+ 'sun-narrow-past-other' => '{0} 個週日前',
+ 'sun-past-other' => '{0} 個週日前',
+ 'sun-short-future-other' => '{0} 個週日後',
+ 'sun-short-past-other' => '{0} 個週日前',
+ 'thu-future-other' => '{0} 個週四後',
+ 'thu-narrow-future-other' => '{0} 個週四後',
+ 'thu-narrow-past-other' => '{0} 個週四前',
+ 'thu-past-other' => '{0} 個週四前',
+ 'thu-short-future-other' => '{0} 個週四後',
+ 'thu-short-past-other' => '{0} 個週四前',
+ 'tue-future-other' => '{0} 個週二後',
+ 'tue-narrow-future-other' => '{0} 個週二後',
+ 'tue-narrow-past-other' => '{0} 個週二前',
+ 'tue-past-other' => '{0} 個週二前',
+ 'tue-short-future-other' => '{0} 個週二後',
+ 'tue-short-past-other' => '{0} 個週二前',
+ 'wed-future-other' => '{0} 個週三後',
+ 'wed-narrow-future-other' => '{0} 個週三後',
+ 'wed-narrow-past-other' => '{0} 個週三前',
+ 'wed-past-other' => '{0} 個週三前',
+ 'wed-short-future-other' => '{0} 個週三後',
+ 'wed-short-past-other' => '{0} 個週三前',
'week-future-other' => '{0} 週後',
'week-narrow-future-other' => '{0} 週後',
'week-narrow-past-other' => '{0} 週前',
@@ -1519,4 +1576,4 @@ $timeUnits = array(
'year-past-other' => '{0} 年前',
'year-short-future-other' => '{0} 年後',
'year-short-past-other' => '{0} 年前',
-);
+];
diff --git a/MLEB/cldr/CldrNames/CldrNamesZu.php b/MLEB/cldr/CldrNames/CldrNamesZu.php
index 52a0e28a..bc5baf00 100644
--- a/MLEB/cldr/CldrNames/CldrNamesZu.php
+++ b/MLEB/cldr/CldrNames/CldrNamesZu.php
@@ -1,200 +1,329 @@
<?php
-$languageNames = array(
+$languageNames = [
+ 'aa' => 'isi-Afar',
'ab' => 'isi-Abkhazian',
- 'ach' => 'Isi-Acoli',
- 'af' => 'isi-Afrikaans',
+ 'ace' => 'isi-Achinese',
+ 'ach' => 'isi-Acoli',
+ 'ada' => 'isi-Adangme',
+ 'ady' => 'isi-Adyghe',
+ 'af' => 'i-Afrikaans',
'agq' => 'isi-Aghem',
+ 'ain' => 'isi-Ainu',
'ak' => 'isi-Akan',
+ 'ale' => 'isi-Aleut',
+ 'alt' => 'isi-Southern Altai',
'am' => 'isi-Amharic',
+ 'an' => 'isi-Aragonese',
+ 'anp' => 'isi-Angika',
'ar' => 'isi-Arabic',
- 'ar-001' => 'Isi-Arabic Esijwayelekile Samanje',
+ 'ar-001' => 'isi-Arabic esivamile sesimanje',
'arn' => 'isi-Mapuche',
+ 'arp' => 'isi-Arapaho',
'as' => 'isi-Assamese',
- 'asa' => 'asa',
+ 'asa' => 'isi-Asu',
+ 'ast' => 'isi-Asturian',
+ 'av' => 'isi-Avaric',
+ 'awa' => 'isi-Awadhi',
'ay' => 'isi-Aymara',
'az' => 'isi-Azerbaijani',
'ba' => 'isi-Bashkir',
+ 'ban' => 'isi-Balinese',
+ 'bas' => 'isi-Basaa',
'be' => 'isi-Belarusian',
- 'bem' => 'Isi-Bemba',
+ 'bem' => 'isi-Bemba',
'bez' => 'isi-Bena',
'bg' => 'isi-Bulgari',
+ 'bgn' => 'isi-Western Balochi',
+ 'bho' => 'isi-Bhojpuri',
+ 'bi' => 'isi-Bislama',
+ 'bin' => 'isi-Bini',
+ 'bla' => 'isi-Siksika',
'bm' => 'isi-Bambara',
'bn' => 'isi-Bengali',
'bo' => 'isi-Tibetan',
- 'br' => 'Isi-Breton',
+ 'br' => 'isi-Breton',
'brx' => 'isi-Bodo',
'bs' => 'isi-Bosnian',
+ 'bug' => 'isi-Buginese',
+ 'byn' => 'isi-Blin',
'ca' => 'isi-Catalan',
+ 'ce' => 'isi-Chechen',
+ 'ceb' => 'isi-Cebuano',
'cgg' => 'isi-Chiga',
- 'chr' => 'Isi-Cherokee',
- 'ckb' => 'Isi-Sorani Kurdish',
+ 'ch' => 'isi-Chamorro',
+ 'chk' => 'isi-Chuukese',
+ 'chm' => 'isi-Mari',
+ 'cho' => 'isi-Choctaw',
+ 'chr' => 'isi-Cherokee',
+ 'chy' => 'isi-Cheyenne',
+ 'ckb' => 'isi-Central Kurdish',
'co' => 'isi-Corsican',
+ 'crs' => 'i-Seselwa Creole French',
'cs' => 'isi-Czech',
+ 'cu' => 'isi-Church Slavic',
+ 'cv' => 'isi-Chuvash',
'cy' => 'isi-Welsh',
'da' => 'isi-Danish',
+ 'dak' => 'isi-Dakota',
+ 'dar' => 'isi-Dargwa',
'dav' => 'isi-Taita',
'de' => 'isi-German',
'de-at' => 'isi-Austrian German',
- 'de-ch' => 'isi-Swiss High German',
+ 'de-ch' => 'Isi-Swiss High German',
+ 'dgr' => 'isi-Dogrib',
'dje' => 'isi-Zarma',
'dsb' => 'isi-Lower Sorbian',
'dua' => 'isi-Duala',
'dv' => 'isi-Divehi',
- 'dyo' => 'isi-Jola-Fonyl',
+ 'dyo' => 'isi-Jola-Fonyi',
'dz' => 'isi-Dzongkha',
+ 'dzg' => 'isi-Dazaga',
'ebu' => 'isi-Embu',
- 'ee' => 'Isi-Ewe',
+ 'ee' => 'isi-Ewe',
'efi' => 'isi-Efik',
+ 'eka' => 'isi-Ekajuk',
'el' => 'isi-Greek',
'en' => 'i-English',
- 'en-au' => 'isi-Austrillian English',
+ 'en-au' => 'i-Australian English',
'en-ca' => 'i-Canadian English',
'en-gb' => 'i-British English',
'en-us' => 'i-American English',
'eo' => 'isi-Esperanto',
'es' => 'isi-Spanish',
'es-419' => 'isi-Latin American Spanish',
- 'es-mx' => 'isi-Mexican Spanish',
+ 'es-es' => 'isi-European Spanish',
+ 'es-mx' => 'Isi-Mexican Spanish',
'et' => 'isi-Estonia',
'eu' => 'isi-Basque',
+ 'ewo' => 'isi-Ewondo',
'fa' => 'isi-Persian',
+ 'ff' => 'isi-Fulah',
'fi' => 'isi-Finnish',
'fil' => 'isi-Filipino',
'fj' => 'isi-Fijian',
'fo' => 'isi-Faroese',
+ 'fon' => 'isi-Fon',
'fr' => 'isi-French',
'fr-ca' => 'isi-Canadian French',
'fr-ch' => 'isi-Swiss French',
+ 'fur' => 'isi-Friulian',
'fy' => 'isi-Western Frisian',
'ga' => 'isi-Irish',
- 'gaa' => 'Isi-Ga',
+ 'gaa' => 'isi-Ga',
'gag' => 'isi-Gagauz',
- 'gd' => 'i-Scottish Gaelic',
+ 'gan' => 'isi-Gan Chinese',
+ 'gd' => 'isi-Scottish Gaelic',
+ 'gez' => 'isi-Geez',
+ 'gil' => 'isi-Gilbertese',
'gl' => 'isi-Galicia',
'gn' => 'isi-Guarani',
+ 'gor' => 'isi-Gorontalo',
'gsw' => 'isi-Swiss German',
'gu' => 'isi-Gujarati',
'guz' => 'isi-Gusli',
'gv' => 'isi-Manx',
+ 'gwi' => 'isi-Gwichʼin',
'ha' => 'isi-Hausa',
+ 'hak' => 'isi-Hakka Chinese',
'haw' => 'isi-Hawaiian',
'he' => 'isi-Hebrew',
'hi' => 'isi-Hindi',
+ 'hil' => 'isi-Hiligaynon',
+ 'hmn' => 'isi-Hmong',
'hr' => 'isi-Croatian',
'hsb' => 'isi-Upper Sorbian',
+ 'hsn' => 'isi-Xiang Chinese',
'ht' => 'isi-Haitian',
'hu' => 'isi-Hungarian',
+ 'hup' => 'isi-Hupa',
'hy' => 'isi-Armenia',
- 'ia' => 'Izilimi ezihlangene',
+ 'hz' => 'isi-Herero',
+ 'ia' => 'izilimi ezihlangene',
+ 'iba' => 'isi-Iban',
+ 'ibb' => 'isi-Ibibio',
'id' => 'isi-Indonesian',
- 'ie' => 'Izilimu',
+ 'ie' => 'izimili',
'ig' => 'isi-Igbo',
'ii' => 'isi-Sichuan Yi',
+ 'ilo' => 'isi-Iloko',
+ 'inh' => 'isi-Ingush',
+ 'io' => 'isi-Ido',
'is' => 'isi-Icelandic',
'it' => 'isi-Italian',
'iu' => 'isi-Inuktitut',
'ja' => 'isi-Japanese',
+ 'jbo' => 'isi-Lojban',
'jgo' => 'isi-Ngomba',
'jmc' => 'isi-Machame',
'jv' => 'isi-Javanese',
'ka' => 'isi-Georgian',
'kab' => 'isi-Kabyle',
+ 'kac' => 'isi-Kachin',
+ 'kaj' => 'isi-Jju',
'kam' => 'isi-Kamba',
+ 'kbd' => 'isi-Kabardian',
+ 'kcg' => 'isi-Tyap',
'kde' => 'isi-Makonde',
'kea' => 'isi-Kabuverdianu',
- 'kg' => 'Isi-Kongo',
+ 'kfo' => 'isi-Koro',
+ 'kg' => 'isi-Kongo',
+ 'kha' => 'isi-Khasi',
'khq' => 'isi-Koyra Chiini',
'ki' => 'isi-Kikuyu',
+ 'kj' => 'isi-Kuanyama',
'kk' => 'isi-Kazakh',
+ 'kkj' => 'isi-Kako',
'kl' => 'isi-Kalaallisut',
'kln' => 'isi-Kalenjin',
'km' => 'isi-Khmer',
+ 'kmb' => 'isi-Kimbundu',
'kn' => 'isi-Kannada',
'ko' => 'isi-Korean',
'koi' => 'isi-Komi-Permyak',
'kok' => 'isi-Konkani',
+ 'kpe' => 'isi-Kpelle',
+ 'kr' => 'isi-Kanuri',
+ 'krc' => 'isi-Karachay-Balkar',
+ 'krl' => 'isi-Karelian',
+ 'kru' => 'isi-Kurukh',
'ks' => 'isi-Kashmiri',
- 'ksb' => 'isi-Shambala',
+ 'ksb' => 'isiShambala',
'ksf' => 'isi-Bafia',
+ 'ksh' => 'isi-Colognian',
'ku' => 'isi-Kurdish',
+ 'kum' => 'isi-Kumyk',
+ 'kv' => 'isi-Komi',
'kw' => 'isi-Cornish',
'ky' => 'isi-Kyrgyz',
'la' => 'isi-Latin',
+ 'lad' => 'isi-Ladino',
'lag' => 'isi-Langi',
'lb' => 'isi-Luxembourgish',
- 'lg' => 'Isi-Ganda',
+ 'lez' => 'isi-Lezghian',
+ 'lg' => 'isi-Ganda',
+ 'li' => 'isi-Limburgish',
'lkt' => 'isi-Lakota',
'ln' => 'isi-Lingala',
- 'lo' => 'i-Lao',
- 'loz' => 'Isi-Lozi',
+ 'lo' => 'isi-Lao',
+ 'loz' => 'isi-Lozi',
+ 'lrc' => 'isi-Northern Luri',
'lt' => 'isi-Lithuanian',
'lu' => 'isi-Luba-Katanga',
- 'lua' => 'Isi-Luba-Lulua',
+ 'lua' => 'isi-Luba-Lulua',
+ 'lun' => 'isi-Lunda',
'luo' => 'isi-Luo',
+ 'lus' => 'isi-Mizo',
'luy' => 'isi-Luyia',
'lv' => 'isi-Latvian',
+ 'mad' => 'isi-Madurese',
+ 'mag' => 'isi-Magahi',
+ 'mai' => 'isi-Maithili',
+ 'mak' => 'isi-Makasar',
'mas' => 'isi-Masai',
+ 'mdf' => 'isi-Moksha',
+ 'men' => 'isi-Mende',
'mer' => 'isi-Meru',
- 'mfe' => 'Isi-Morisyen',
+ 'mfe' => 'isi-Morisyen',
'mg' => 'isi-Malagasy',
'mgh' => 'isi-Makhuwa-Meetto',
'mgo' => 'isi-Meta’',
+ 'mh' => 'isi-Marshallese',
'mi' => 'isi-Maori',
+ 'mic' => 'isi-Micmac',
+ 'min' => 'isi-Minangkabau',
'mk' => 'isi-Macedonian',
'ml' => 'isi-Malayalam',
'mn' => 'isi-Mongolian',
+ 'mni' => 'isi-Manipuri',
'moh' => 'isi-Mohawk',
+ 'mos' => 'isi-Mossi',
'mr' => 'isi-Marathi',
'ms' => 'isi-Malay',
'mt' => 'isi-Maltese',
'mua' => 'isi-Mundang',
+ 'mul' => 'izilimi ezehlukene',
+ 'mus' => 'isi-Creek',
+ 'mwl' => 'isi-Mirandese',
'my' => 'isi-Burmese',
+ 'myv' => 'isi-Erzya',
+ 'mzn' => 'isi-Mazanderani',
+ 'na' => 'isi-Nauru',
+ 'nan' => 'isi-Min Nan Chinese',
+ 'nap' => 'isi-Neapolitan',
'naq' => 'isi-Nama',
'nb' => 'isi-Norwegian Bokmål',
'nd' => 'isi-North Ndebele',
+ 'nds' => 'isi-Low German',
+ 'nds-nl' => 'isi-Low Saxon',
'ne' => 'isi-Nepali',
+ 'new' => 'isi-Newari',
+ 'ng' => 'isi-Ndonga',
+ 'nia' => 'isi-Nias',
+ 'niu' => 'isi-Niuean',
'nl' => 'isi-Dutch',
'nl-be' => 'isi-Flemish',
'nmg' => 'isi-Kwasio',
- 'nn' => 'i-Norwegian Nynorsk',
- 'no' => 'IsiNoweyi',
+ 'nn' => 'isi-Norwegian Nynorsk',
+ 'nnh' => 'isi-Ngiemboon',
+ 'no' => 'isi-Norwegian',
+ 'nog' => 'isi-Nogai',
'nqo' => 'isi-N’Ko',
+ 'nr' => 'isi-South Ndebele',
'nso' => 'isi-Northern Sotho',
'nus' => 'isi-Nuer',
+ 'nv' => 'isi-Navajo',
'ny' => 'isi-Nyanja',
- 'nyn' => 'Isi-Nyankole',
- 'oc' => 'Isi-Osithani',
- 'om' => 'Isi-Oromo',
- 'or' => 'isi-Oriya',
+ 'nyn' => 'isi-Nyankole',
+ 'oc' => 'isi-Occitan',
+ 'om' => 'isi-Oromo',
+ 'or' => 'isi-Odia',
'os' => 'isi-Ossetic',
'pa' => 'isi-Punjabi',
+ 'pag' => 'isi-Pangasinan',
+ 'pam' => 'isi-Pampanga',
+ 'pap' => 'isi-Papiamento',
+ 'pau' => 'isi-Palauan',
+ 'pcm' => 'isi-Nigerian Pidgin',
'pl' => 'isi-Polish',
+ 'prg' => 'isi-Prussian',
'ps' => 'isi-Pashto',
'pt' => 'isi-Portuguese',
'pt-br' => 'isi-Brazillian Portuguese',
'pt-pt' => 'isi-European Portuguese',
'qu' => 'isi-Quechua',
'quc' => 'isi-Kʼicheʼ',
+ 'rap' => 'isi-Rapanui',
+ 'rar' => 'isi-Rarotongan',
'rm' => 'isi-Romansh',
'rn' => 'isi-Rundi',
'ro' => 'isi-Romanian',
'ro-md' => 'isi-Moldavian',
'rof' => 'isi-Rombo',
'ru' => 'isi-Russian',
+ 'rup' => 'isi-Aromanian',
'rw' => 'isi-Kinyarwanda',
'rwk' => 'isi-Rwa',
'sa' => 'isi-Sanskrit',
+ 'sad' => 'isi-Sandawe',
+ 'sah' => 'i-Sakha',
'saq' => 'isi-Samburu',
+ 'sat' => 'isi-Santali',
+ 'sba' => 'isi-Ngambay',
'sbp' => 'isi-Sangu',
+ 'sc' => 'isi-Sardinian',
+ 'scn' => 'isi-Sicilian',
+ 'sco' => 'isi-Scots',
'sd' => 'isi-Sindhi',
+ 'sdh' => 'i-Southern Kurdish',
'se' => 'isi-Northern Sami',
'seh' => 'isi-Sena',
'ses' => 'isi-Koyraboro Senni',
'sg' => 'isi-Sango',
- 'sh' => 'Serbo-Croatian',
+ 'sh' => 'isi-Serbo-Croatian',
'shi' => 'isi-Tachelhit',
- 'si' => 'i-Sinhala',
+ 'shn' => 'isi-Shan',
+ 'si' => 'isi-Sinhala',
'sk' => 'isi-Slovak',
'sl' => 'isi-Slovenian',
'sm' => 'isi-Samoan',
@@ -202,59 +331,85 @@ $languageNames = array(
'smj' => 'isi-Lule Sami',
'smn' => 'isi-Inari Sami',
'sms' => 'isi-Skolt Sami',
- 'sn' => 'isi-Shona',
+ 'sn' => 'isiShona',
+ 'snk' => 'isi-Soninke',
'so' => 'isi-Somali',
'sq' => 'isi-Albania',
'sr' => 'isi-Serbian',
+ 'srn' => 'isi-Sranan Tongo',
'ss' => 'isiSwati',
- 'st' => 'isiSuthu',
+ 'ssy' => 'isi-Saho',
+ 'st' => 'isi-Southern Sotho',
'su' => 'isi-Sundanese',
+ 'suk' => 'isi-Sukuma',
'sv' => 'isi-Swedish',
- 'sw' => 'isi-Swahili',
- 'swc' => 'isi-Congo Swahili',
+ 'sw' => 'isiSwahili',
+ 'sw-cd' => 'isi-Congo Swahili',
+ 'swb' => 'isi-Comorian',
+ 'syr' => 'isi-Syriac',
'ta' => 'isi-Tamil',
'te' => 'isi-Telugu',
+ 'tem' => 'isi-Timne',
'teo' => 'isi-Teso',
'tet' => 'isi-Tetum',
'tg' => 'isi-Tajik',
'th' => 'isi-Thai',
'ti' => 'isi-Tigrinya',
+ 'tig' => 'isi-Tigre',
'tk' => 'isi-Turkmen',
- 'tlh' => 'Isi-Klingon',
+ 'tlh' => 'isi-Klingon',
'tn' => 'isi-Tswana',
- 'to' => 'Isi-Tongan',
+ 'to' => 'isi-Tongan',
'tpi' => 'isi-Tok Pisin',
'tr' => 'isi-Turkish',
+ 'trv' => 'isi-Taroko',
'ts' => 'isi-Tsonga',
'tt' => 'isi-Tatar',
- 'tum' => 'Isi-Tumbuka',
- 'tw' => 'Twi',
+ 'tum' => 'isi-Tumbuka',
+ 'tvl' => 'isi-Tuvalu',
+ 'tw' => 'isi-Twi',
'twq' => 'isi-Tasawaq',
'ty' => 'isi-Tahitian',
+ 'tyv' => 'isi-Tuvinian',
'tzm' => 'isi-Central Atlas Tamazight',
+ 'udm' => 'isi-Udmurt',
'ug' => 'isi-Uighur',
'uk' => 'isi-Ukrainian',
- 'und' => 'Ulimi olungaziwa',
+ 'umb' => 'isi-Umbundu',
+ 'und' => 'ulimi olungaziwa',
'ur' => 'isi-Urdu',
'uz' => 'isi-Uzbek',
'vai' => 'isi-Vai',
've' => 'isi-Venda',
'vi' => 'isi-Vietnamese',
- 'vun' => 'isi-Vunjo',
+ 'vo' => 'isi-Volapük',
+ 'vun' => 'isiVunjo',
+ 'wa' => 'isi-Walloon',
+ 'wae' => 'isi-Walser',
+ 'wal' => 'isi-Wolaytta',
+ 'war' => 'isi-Waray',
+ 'wbp' => 'isi-Warlpiri',
'wo' => 'isi-Wolof',
+ 'wuu' => 'isi-Wu Chinese',
+ 'xal' => 'isi-Kalmyk',
'xh' => 'isiXhosa',
'xog' => 'isi-Soga',
- 'yi' => 'Isi-Yidish',
+ 'yav' => 'isi-Yangben',
+ 'ybb' => 'isi-Yemba',
+ 'yi' => 'isi-Yiddish',
'yo' => 'isi-Yoruba',
- 'zgh' => 'isi-Standard Moroccan Tamazight',
+ 'yue' => 'isi-Cantonese',
+ 'zgh' => 'isi-Moroccan Tamazight esivamile',
'zh' => 'isi-Chinese',
- 'zh-hans' => 'isi-Sipmlified Chinese',
- 'zh-hant' => 'isi-Traditional Chinese',
+ 'zh-hans' => 'isi-Chinese (esenziwe-lula)',
+ 'zh-hant' => 'isi-Chinese (Okosiko)',
'zu' => 'isiZulu',
- 'zxx' => 'Akukho okuqukethwe kolimi',
-);
+ 'zun' => 'isi-Zuni',
+ 'zxx' => 'akukho okuqukethwe kolimi',
+ 'zza' => 'isi-Zaza',
+];
-$currencyNames = array(
+$currencyNames = [
'AED' => 'i-Dirham yase-United Arab Emirates',
'AFN' => 'i-Afghan Afghani',
'ALL' => 'i-Albanian Lek',
@@ -278,17 +433,19 @@ $currencyNames = array(
'BSD' => 'i-Bahamian Dollar',
'BTN' => 'i-Bhutanese Ngultrum',
'BWP' => 'i-Botswana Pula',
- 'BYR' => 'i-Belarusian Ruble',
+ 'BYN' => 'i-Belarusian Ruble',
+ 'BYR' => 'i-Belarusian Ruble (2000–2016)',
'BZD' => 'i-Belize Dollar',
'CAD' => 'i-Candian Dollar',
'CDF' => 'i-Congolese Franc',
'CHF' => 'i-Swiss Franc',
'CLP' => 'i-Chilean Peso',
+ 'CNH' => 'CNH',
'CNY' => 'i-Chinese Yuan',
'COP' => 'i-Colombian Peso',
'CRC' => 'i-Costa Rican Colón',
'CUC' => 'i-Cuban Convertable Peso',
- 'CUP' => 'I-Cuban Peso',
+ 'CUP' => 'i-Cuban Peso',
'CVE' => 'i-Cape Verdean Escudo',
'CZK' => 'i-Czech Republic Koruna',
'DJF' => 'i-Djiboutian Franc',
@@ -347,13 +504,14 @@ $currencyNames = array(
'MMK' => 'i-Myanma Kyat',
'MNT' => 'i-Mongolian Tugrik',
'MOP' => 'i-Macanese Pataca',
- 'MRO' => 'i-Mauritanian Ouguiya',
+ 'MRO' => 'i-Mauritanian Ouguiya (1973–2017)',
+ 'MRU' => 'i-Mauritanian Ouguiya',
'MUR' => 'i-Mauritian Rupee',
'MVR' => 'i-Maldivian Rufiyana',
'MWK' => 'i-Malawian Kwacha',
'MXN' => 'i-Mexican Peso',
'MYR' => 'i-Malaysian Ringgit',
- 'MZN' => 'I-Metical yase-Mozambicque',
+ 'MZN' => 'i-Mozambican Metical',
'NAD' => 'i-Namibian Dollar',
'NGN' => 'i-Nigerian Naira',
'NIO' => 'i-Nicaraguan Córdoba',
@@ -369,7 +527,7 @@ $currencyNames = array(
'PLN' => 'i-Polish Zloty',
'PYG' => 'i-Paraguayan Guarani',
'QAR' => 'i-Qatari Rial',
- 'RON' => 'I-Romanian Leu',
+ 'RON' => 'i-Romanian Leu',
'RSD' => 'i-Serbian Dinar',
'RUB' => 'i-Russian Ruble',
'RWF' => 'i-Rwandan Franc',
@@ -383,8 +541,9 @@ $currencyNames = array(
'SLL' => 'i-Sierra Leonean Leone',
'SOS' => 'i-Somali Shilling',
'SRD' => 'i-Surinamese Dollar',
- 'SSP' => 'Upondo waseNingizimu Sudan',
- 'STD' => 'i-São Tomé kanye ne-Príncipe Dobra',
+ 'SSP' => 'i-South Sudanese Pound',
+ 'STD' => 'i-São Tomé kanye ne-Príncipe Dobra (1977–2017)',
+ 'STN' => 'i-São Tomé kanye ne-Príncipe Dobra',
'SYP' => 'i-Syrian Pound',
'SZL' => 'i-Swazi Lilangeni',
'THB' => 'i-Thai Baht',
@@ -401,77 +560,190 @@ $currencyNames = array(
'USD' => 'i-US Dollar',
'UYU' => 'i-Uruguayan Peso',
'UZS' => 'i-Uzbekistan Som',
- 'VEF' => 'i-Venezuelan Bolívar',
+ 'VEF' => 'i-Venezuelan Bolívar (2008–2018)',
+ 'VES' => 'i-Venezuelan Bolívar',
'VND' => 'i-Vietnamese Dong',
'VUV' => 'i-Vanuatu Vatu',
'WST' => 'i-Samoan Tala',
- 'XAF' => 'i-CFA Franc BCEA',
+ 'XAF' => 'i-Central African CFA Franc',
'XCD' => 'i-East Caribbean Dollar',
- 'XOF' => 'i-CFA Franc BCEAO',
+ 'XOF' => 'i-West African CFA Franc',
'XPF' => 'i-CFP Franc',
- 'XXX' => 'Imali engaziwa',
+ 'XXX' => 'imali engaziwa',
'YER' => 'i-Yemeni Rial',
'ZAR' => 'i-South African Rand',
'ZMK' => 'i-Zambian Kwacha (1968–2012)',
'ZMW' => 'i-Zambian Kwacha',
-);
+];
-$currencySymbols = array(
+$currencySymbols = [
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
'AUD' => 'A$',
'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
'BRL' => 'R$',
'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYN' => 'BYN',
+ 'BYR' => 'BYR',
'BZD' => 'BZD',
'CAD' => 'CA$',
+ 'CDF' => 'CDF',
'CHF' => 'CHF',
+ 'CLP' => 'CLP',
'CNY' => 'CN¥',
+ 'COP' => 'COP',
'CRC' => 'CRC',
'CUC' => 'CUC',
'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
'DKK' => 'DKK',
'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
'EUR' => '€',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
'GBP' => '£',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
'HKD' => 'HK$',
'HNL' => 'HNL',
+ 'HRK' => 'HRK',
'HTG' => 'HTG',
+ 'HUF' => 'HUF',
'IDR' => 'IDR',
+ 'ILS' => '₪',
'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
'JMD' => 'JMD',
+ 'JOD' => 'JOD',
'JPY' => 'JP¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
'KRW' => '₩',
+ 'KWD' => 'KWD',
'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
'MXN' => 'MX$',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
'NIO' => 'NIO',
'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZ$',
+ 'OMR' => 'OMR',
'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
'RUB' => 'RUB',
+ 'RWF' => 'RWF',
'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'STN' => 'Db',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
'THB' => '฿',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
'TRY' => 'TRY',
'TTD' => 'TTD',
'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
'USD' => 'US$',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VND' => '₫',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
'XCD' => 'EC$',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+ 'YER' => 'YER',
'ZAR' => 'R',
-);
+ 'ZMW' => 'ZMW',
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'i-Ascension Island',
'AD' => 'i-Andorra',
'AE' => 'i-United Arab Emirates',
'AF' => 'i-Afghanistan',
- 'AG' => 'i-Antigua and Barbuda',
+ 'AG' => 'i-Antigua ne-Barbuda',
'AI' => 'i-Anguilla',
'AL' => 'i-Albania',
'AM' => 'i-Armenia',
- 'AN' => 'i-Netherlands Antilles',
'AO' => 'i-Angola',
'AQ' => 'i-Antarctica',
'AR' => 'i-Argentina',
@@ -499,7 +771,7 @@ $countryNames = array(
'BS' => 'i-Bahamas',
'BT' => 'i-Bhutan',
'BV' => 'i-Bouvet Island',
- 'BW' => 'i-Botswana',
+ 'BW' => 'iBotswana',
'BY' => 'i-Belarus',
'BZ' => 'i-Belize',
'CA' => 'i-Canada',
@@ -521,7 +793,7 @@ $countryNames = array(
'CW' => 'i-Curaçao',
'CX' => 'i-Christmas Island',
'CY' => 'i-Cyprus',
- 'CZ' => 'i-Czech Republic',
+ 'CZ' => 'i-Czechia',
'DE' => 'i-Germany',
'DG' => 'i-Diego Garcia',
'DJ' => 'i-Djibouti',
@@ -538,6 +810,7 @@ $countryNames = array(
'ES' => 'i-Spain',
'ET' => 'i-Ethiopia',
'EU' => 'i-European Union',
+ 'EZ' => 'EZ',
'FI' => 'i-Finland',
'FJ' => 'i-Fiji',
'FK' => 'i-Falkland Islands',
@@ -548,7 +821,7 @@ $countryNames = array(
'GB' => 'i-U.K.',
'GD' => 'i-Grenada',
'GE' => 'i-Georgia',
- 'GF' => 'isi-French Guiana',
+ 'GF' => 'i-French Guiana',
'GG' => 'i-Guernsey',
'GH' => 'i-Ghana',
'GI' => 'i-Gibraltar',
@@ -572,7 +845,7 @@ $countryNames = array(
'IC' => 'i-Canary Islands',
'ID' => 'i-Indonesia',
'IE' => 'i-Ireland',
- 'IL' => 'i-Israel',
+ 'IL' => 'kwa-Israel',
'IM' => 'i-Isle of Man',
'IN' => 'i-India',
'IO' => 'i-British Indian Ocean Territory',
@@ -601,7 +874,7 @@ $countryNames = array(
'LI' => 'i-Liechtenstein',
'LK' => 'i-Sri Lanka',
'LR' => 'i-Liberia',
- 'LS' => 'i-Lesotho',
+ 'LS' => 'iLesotho',
'LT' => 'i-Lithuania',
'LU' => 'i-Luxembourg',
'LV' => 'i-Latvia',
@@ -614,7 +887,7 @@ $countryNames = array(
'MG' => 'i-Madagascar',
'MH' => 'i-Marshall Islands',
'MK' => 'i-Macedonia',
- 'ML' => 'i-Mali',
+ 'ML' => 'iMali',
'MM' => 'i-Myanmar (Burma)',
'MN' => 'i-Mongolia',
'MO' => 'i-Macau',
@@ -625,7 +898,7 @@ $countryNames = array(
'MT' => 'i-Malta',
'MU' => 'i-Mauritius',
'MV' => 'i-Maldives',
- 'MW' => 'i-Malawi',
+ 'MW' => 'iMalawi',
'MX' => 'i-Mexico',
'MY' => 'i-Malaysia',
'MZ' => 'i-Mozambique',
@@ -652,7 +925,7 @@ $countryNames = array(
'PM' => 'i-Saint Pierre kanye ne-Miquelon',
'PN' => 'i-Pitcairn Islands',
'PR' => 'i-Puerto Rico',
- 'PS' => 'i-Phalestine',
+ 'PS' => 'i-Palestine',
'PT' => 'i-Portugal',
'PW' => 'i-Palau',
'PY' => 'i-Paraguay',
@@ -669,7 +942,7 @@ $countryNames = array(
'SD' => 'i-Sudan',
'SE' => 'i-Sweden',
'SG' => 'i-Singapore',
- 'SH' => 'i-Saint Helena',
+ 'SH' => 'i-St. Helena',
'SI' => 'i-Slovenia',
'SJ' => 'i-Svalbard ne-Jan Mayen',
'SK' => 'i-Slovakia',
@@ -681,11 +954,11 @@ $countryNames = array(
'SS' => 'i-South Sudan',
'ST' => 'i-São Tomé kanye ne-Príncipe',
'SV' => 'i-El Salvador',
- 'SX' => 'I-Sint Maarten',
+ 'SX' => 'i-Sint Maarten',
'SY' => 'i-Syria',
'SZ' => 'i-Swaziland',
'TA' => 'i-Tristan da Cunha',
- 'TC' => 'i-Turks and Caicos Islands',
+ 'TC' => 'i-Turks ne-Caicos Islands',
'TD' => 'i-Chad',
'TF' => 'i-French Southern Territories',
'TG' => 'i-Togo',
@@ -704,6 +977,7 @@ $countryNames = array(
'UA' => 'i-Ukraine',
'UG' => 'i-Uganda',
'UM' => 'i-U.S. Minor Outlying Islands',
+ 'UN' => 'ifulegi',
'US' => 'i-U.S',
'UY' => 'i-Uruguay',
'UZ' => 'i-Uzbekistan',
@@ -719,104 +993,212 @@ $countryNames = array(
'XK' => 'i-Kosovo',
'YE' => 'i-Yemen',
'YT' => 'i-Mayotte',
- 'ZA' => 'i-South Africa',
+ 'ZA' => 'iNingizimu Afrika',
'ZM' => 'i-Zambia',
- 'ZW' => 'i-Zimbabwe',
-);
+ 'ZW' => 'iZimbabwe',
+];
-$timeUnits = array(
- 'day-future-one' => 'Osukwini olungu-{0}',
- 'day-future-other' => 'Ezinsukwini ezingu-{0}',
- 'day-narrow-future-one' => 'osukwini olungu{0}',
- 'day-narrow-future-other' => 'ezinsukwini ezingu{0}',
+$timeUnits = [
+ 'century-one' => '{0} c',
+ 'century-other' => '{0} c',
+ 'day-future-one' => 'osukwini olungu-{0} oluzayo',
+ 'day-future-other' => 'ezinsukwini ezingu-{0} ezizayo',
+ 'day-narrow-future-one' => 'osukwini olungu-{0} oluzayo',
+ 'day-narrow-future-other' => 'ezinsukwini ezingu-{0} ezizayo',
'day-narrow-past-one' => '{0} usuku olwedlule',
'day-narrow-past-other' => '{0} izinsuku ezedlule',
'day-one' => '{0} usuku',
'day-other' => '{0} izinsuku',
'day-past-one' => 'osukwini olungu-{0} olwedlule',
'day-past-other' => 'ezinsukwini ezingu-{0} ezedlule.',
- 'day-short-future-one' => 'osukwini olungu{0}',
- 'day-short-future-other' => 'ezinsukwini ezingu{0}',
+ 'day-short-future-one' => 'osukwini olungu-{0} oluzayo',
+ 'day-short-future-other' => 'ezinsukwini ezingu-{0} ezizayo',
'day-short-past-one' => '{0} usuku olwedlule',
'day-short-past-other' => '{0} izinsuku ezedlule',
- 'hour-future-one' => 'Ehoreni elingu-{0}',
- 'hour-future-other' => 'Emahoreni angu-{0}',
- 'hour-narrow-future-one' => 'ehoreni elingu{0}',
- 'hour-narrow-future-other' => 'emahoreni angu{0}',
+ 'fri-future-one' => 'ngo {0} Lwesihlanu',
+ 'fri-future-other' => 'ngo {0} Lwezihlanu',
+ 'fri-narrow-future-one' => 'ngo {0} Lwezihlanu',
+ 'fri-narrow-future-other' => 'ngo {0} Lwezihlanu',
+ 'fri-narrow-past-one' => '{0} Lwezihlanu oludlule',
+ 'fri-narrow-past-other' => '{0} Lwezihlanu oludlule',
+ 'fri-past-one' => '{0} Lwesihlanu oludlule',
+ 'fri-past-other' => '{0} Lwezihlanu oludlule',
+ 'fri-short-future-one' => 'ngo {0} Lwezihlanu',
+ 'fri-short-future-other' => 'ngo {0} Lwezihlanu',
+ 'fri-short-past-one' => '{0} Lwezihlanu oludlule',
+ 'fri-short-past-other' => '{0} Lwezihlanu oludlule',
+ 'hour-future-one' => 'ehoreni elingu-{0} elizayo',
+ 'hour-future-other' => 'emahoreni angu-{0} ezayo',
+ 'hour-narrow-future-one' => 'ehoreni elingu-{0} elizayo',
+ 'hour-narrow-future-other' => 'emahoreni angu-{0} ezayo',
'hour-narrow-past-one' => '{0} ihora eledlule',
- 'hour-narrow-past-other' => '{0} amahora adlule',
+ 'hour-narrow-past-other' => '{0} amahora edlule',
'hour-one' => '{0} ihora',
'hour-other' => '{0} amahora',
- 'hour-past-one' => 'ehoreni eligu-{0} eledluli',
+ 'hour-past-one' => '{0} ihora eledlule',
'hour-past-other' => 'emahoreni angu-{0} edlule',
- 'hour-short-future-one' => 'ehoreni elingu{0}',
- 'hour-short-future-other' => 'emahoreni angu{0}',
+ 'hour-short-future-one' => 'ehoreni elingu-{0} elizayo',
+ 'hour-short-future-other' => 'emahoreni angu-{0} ezayo',
'hour-short-past-one' => '{0} ihora eledlule',
- 'hour-short-past-other' => '{0} amahora adlule',
- 'microsecond-one' => '{0} ama-microsecond',
+ 'hour-short-past-other' => 'emahoreni angu-{0} edlule',
+ 'microsecond-one' => '{0} microsecond',
'microsecond-other' => '{0} microseconds',
'millisecond-one' => '{0} ms',
'millisecond-other' => '{0} ms',
- 'minute-future-one' => 'Kumunithi engu-{0}',
- 'minute-future-other' => 'Emaminithini angu-{0}',
- 'minute-narrow-future-one' => 'eminithini engu{0}',
- 'minute-narrow-future-other' => 'emaminithini angu{0}',
+ 'minute-future-one' => 'kuminithi elingu-{0} elizayo',
+ 'minute-future-other' => 'kumaminithi angu-{0} ezayo',
+ 'minute-narrow-future-one' => 'kuminithi elingu-{0} elizayo',
+ 'minute-narrow-future-other' => 'kumaminithi angu-{0} ezayo',
'minute-narrow-past-one' => '{0} iminithi eledlule',
- 'minute-narrow-past-other' => '{0} amaminithi adlule',
+ 'minute-narrow-past-other' => '{0} amaminithi edlule',
'minute-one' => '{0} iminithi',
'minute-other' => '{0} amaminithi',
- 'minute-past-one' => 'eminithini elingu-{0} eledlule',
- 'minute-past-other' => 'amaminithi angu-{0} adlule',
- 'minute-short-future-one' => 'eminithini engu{0}',
- 'minute-short-future-other' => 'emaminithini angu{0}',
+ 'minute-past-one' => '{0} iminithi eledlule',
+ 'minute-past-other' => '{0} amaminithi edlule',
+ 'minute-short-future-one' => 'kuminithi elingu-{0} elizayo',
+ 'minute-short-future-other' => 'kumaminithi angu-{0} ezayo',
'minute-short-past-one' => '{0} iminithi eledlule',
- 'minute-short-past-other' => '{0} amaminithi adlule',
- 'month-future-one' => 'Enyangeni engu-{0}',
- 'month-future-other' => 'Ezinyangeni ezingu-{0}',
+ 'minute-short-past-other' => '{0} amaminithi edlule',
+ 'mon-future-one' => 'ngoMsombuluko o-{0}',
+ 'mon-future-other' => 'ngeMisombuluko e-{0}',
+ 'mon-narrow-future-one' => 'ngeMisombuluko e-{0}',
+ 'mon-narrow-future-other' => 'ngeMisombuluko e-{0}',
+ 'mon-narrow-past-one' => 'ngeMsombuluko e-{0} edlule',
+ 'mon-narrow-past-other' => 'ngeMsombuluko e-{0} edlule',
+ 'mon-past-one' => 'ngoMsombuluko o-{0} odlule',
+ 'mon-past-other' => 'ngeMsombuluko e-{0} edlule',
+ 'mon-short-future-one' => 'ngeMisombuluko e-{0}',
+ 'mon-short-future-other' => 'ngeMisombuluko e-{0}',
+ 'mon-short-past-one' => 'ngeMsombuluko e-{0} edlule',
+ 'mon-short-past-other' => 'ngeMsombuluko e-{0} edlule',
+ 'month-future-one' => 'enyangeni engu-{0}',
+ 'month-future-other' => 'ezinyangeni ezingu-{0} ezizayo',
+ 'month-narrow-future-one' => 'enyangeni engu-{0} ezayo',
+ 'month-narrow-future-other' => 'enyangeni engu-{0} ezayo',
+ 'month-narrow-past-one' => '{0} izinyanga ezedlule',
+ 'month-narrow-past-other' => '{0} izinyanga ezedlule',
'month-one' => '{0} inyanga',
'month-other' => '{0} izinyanga',
'month-past-one' => '{0} inyanga edlule',
'month-past-other' => '{0} izinyanga ezedlule',
+ 'month-short-future-one' => 'ezinyangeni ezingu-{0} ezizayo',
+ 'month-short-future-other' => 'ezinyangeni ezingu-{0} ezizayo',
+ 'month-short-past-one' => '{0} izinyanga ezedlule',
+ 'month-short-past-other' => '{0} izinyanga ezedlule',
'nanosecond-one' => '{0} ns',
'nanosecond-other' => '{0} ns',
- 'quarter-future-one' => 'kwikota engu-{0}',
- 'quarter-future-other' => 'kumakota angu-{0}',
+ 'quarter-future-one' => 'kwikota engu-{0} ezayo',
+ 'quarter-future-other' => 'kumakota angu-{0} ezayo',
'quarter-narrow-future-one' => 'kumakota angu-{0}',
'quarter-narrow-future-other' => 'kumakota angu-{0}',
'quarter-narrow-past-one' => '{0} amakota adlule',
- 'quarter-narrow-past-other' => '{0} amakota adlule',
+ 'quarter-narrow-past-other' => '{0} amakota edlule',
'quarter-past-one' => '{0} ikota edlule',
'quarter-past-other' => '{0} amakota adlule',
- 'quarter-short-future-one' => 'kumakota angu-{0}',
- 'quarter-short-future-other' => 'kumakota angu-{0}',
+ 'quarter-short-future-one' => 'kwikota engu-{0} ezayo',
+ 'quarter-short-future-other' => 'kumakota angu-{0} ezayo',
'quarter-short-past-one' => '{0} amakota adlule',
- 'quarter-short-past-other' => '{0} amakota adlule',
- 'second-future-one' => 'Kusekhondi elingu-{0}',
- 'second-future-other' => 'Kumasekhondi angu-{0}',
- 'second-narrow-future-one' => 'esekhondini elingu{0}',
- 'second-narrow-future-other' => 'emasekhondini angu{0}',
+ 'quarter-short-past-other' => '{0} amakota edlule',
+ 'sat-future-one' => 'ngoMgqibelo o-{0}',
+ 'sat-future-other' => 'ngeMgqibelo engu-{0}',
+ 'sat-narrow-future-one' => 'ngeMgqibelo engu-{0}',
+ 'sat-narrow-future-other' => 'ngeMgqibelo engu-{0}',
+ 'sat-narrow-past-one' => 'ngeMgqibelo engu-{0} edlule',
+ 'sat-narrow-past-other' => 'ngeMgqibelo engu-{0} edlule',
+ 'sat-past-one' => 'ngoMgqibelo o-{0} odlule',
+ 'sat-past-other' => 'ngeMgqibelo engu-{0} edlule',
+ 'sat-short-future-one' => 'ngeMgqibelo engu-{0}',
+ 'sat-short-future-other' => 'ngeMgqibelo engu-{0}',
+ 'sat-short-past-one' => 'ngeMgqibelo engu-{0} edlule',
+ 'sat-short-past-other' => 'ngeMgqibelo engu-{0} edlule',
+ 'second-future-one' => 'kusekhondi elingu-{0} elizayo',
+ 'second-future-other' => 'kumasekhondi angu-{0} ezayo',
+ 'second-narrow-future-one' => 'kusekhondi elingu-{0} elizayo',
+ 'second-narrow-future-other' => 'kumasekhondi angu-{0} ezayo',
'second-narrow-past-one' => '{0} isekhondi eledlule',
- 'second-narrow-past-other' => '{0} amasekhondi adlule',
+ 'second-narrow-past-other' => '{0} amasekhondi edlule',
'second-one' => '{0} isekhondi',
'second-other' => '{0} amasekhondi',
- 'second-past-one' => 'isekhondi elingu-{0} eledlule',
- 'second-past-other' => 'amasekhondi angu-{0} adlule',
- 'second-short-future-one' => 'esekhondini elingu{0}',
- 'second-short-future-other' => 'emasekhondini angu{0}',
+ 'second-past-one' => '{0} isekhondi eledlule',
+ 'second-past-other' => '{0} amasekhondi edlule',
+ 'second-short-future-one' => 'kusekhondi elingu-{0} elizayo',
+ 'second-short-future-other' => 'kumasekhondi angu-{0} ezayo',
'second-short-past-one' => '{0} isekhondi eledlule',
- 'second-short-past-other' => '{0} amasekhondi adlule',
- 'week-future-one' => 'Evikini elingu-{0}',
- 'week-future-other' => 'Emavikini angu-{0}',
+ 'second-short-past-other' => '{0} amasekhondi edlule',
+ 'sun-future-one' => 'kwiSonto elingu-{0}',
+ 'sun-future-other' => 'kumaSonto angu-{0}',
+ 'sun-narrow-future-one' => 'kumaSonto angu-{0}',
+ 'sun-narrow-future-other' => 'kumaSonto angu-{0}',
+ 'sun-narrow-past-one' => '{0} amaSonto edlule',
+ 'sun-narrow-past-other' => '{0} amaSonto edlule',
+ 'sun-past-one' => '{0} iSonto eledlule',
+ 'sun-past-other' => '{0} amaSonto edlule',
+ 'sun-short-future-one' => 'kumaSonto angu-{0}',
+ 'sun-short-future-other' => 'kumaSonto angu-{0}',
+ 'sun-short-past-one' => '{0} amaSonto edlule',
+ 'sun-short-past-other' => '{0} amaSonto edlule',
+ 'thu-future-one' => 'ngoLwesine olu-{0}',
+ 'thu-future-other' => 'ngoLwezine abangu-{0}',
+ 'thu-narrow-future-one' => 'ngoLwezine abangu-{0}',
+ 'thu-narrow-future-other' => 'ngoLwezine abangu-{0}',
+ 'thu-narrow-past-one' => 'ngoLwezine abangu-{0} abedlule',
+ 'thu-narrow-past-other' => 'ngoLwezine abangu-{0} abedlule',
+ 'thu-past-one' => 'ngoLwesine olu-{0} olwedlule',
+ 'thu-past-other' => 'ngoLwezine abangu-{0} abedlule',
+ 'thu-short-future-one' => 'ngoLwezine abangu-{0}',
+ 'thu-short-future-other' => 'ngoLwezine abangu-{0}',
+ 'thu-short-past-one' => 'ngoLwezine abangu-{0} abedlule',
+ 'thu-short-past-other' => 'ngoLwezine abangu-{0} abedlule',
+ 'tue-future-one' => 'ngoLwesibili olu-{0}',
+ 'tue-future-other' => 'ngoLwezibili abangu-{0}',
+ 'tue-narrow-future-one' => '{0} ngoLwezibili',
+ 'tue-narrow-future-other' => '{0} ngoLwezibili',
+ 'tue-narrow-past-one' => '{0} ngoLwezibili olwedlule',
+ 'tue-narrow-past-other' => '{0} ngoLwezibili olwedlule',
+ 'tue-past-one' => 'ngoLwesibili ongu-{0} owedlule',
+ 'tue-past-other' => 'ngoLwezibili abangu-{0} abedlule',
+ 'tue-short-future-one' => '{0} ngoLwezibili',
+ 'tue-short-future-other' => '{0} ngoLwezibili',
+ 'tue-short-past-one' => '{0} ngoLwezibili olwedlule',
+ 'tue-short-past-other' => '{0} ngoLwezibili olwedlule',
+ 'wed-future-one' => 'ngoLwesithathu o-{0}',
+ 'wed-future-other' => 'ngoLwezithathu abangu-{0}',
+ 'wed-narrow-future-one' => 'ngoLwezithathu abangu-{0}',
+ 'wed-narrow-future-other' => 'ngoLwezithathu abangu-{0}',
+ 'wed-narrow-past-one' => 'ngoLwezithathu abangu-{0} abedlule',
+ 'wed-narrow-past-other' => 'ngoLwezithathu abangu-{0} abedlule',
+ 'wed-past-one' => 'ngoLwesithathu olungu-{0} olwedlule',
+ 'wed-past-other' => 'ngoLwezithathu abangu-{0} abedlule',
+ 'wed-short-future-one' => 'ngoLwezithathu abangu-{0}',
+ 'wed-short-future-other' => 'ngoLwezithathu abangu-{0}',
+ 'wed-short-past-one' => 'ngoLwezithathu abangu-{0} abedlule',
+ 'wed-short-past-other' => 'ngoLwezithathu abangu-{0} abedlule',
+ 'week-future-one' => 'evikini elingu-{0}',
+ 'week-future-other' => 'emavikini angu-{0}',
+ 'week-narrow-future-one' => 'emavikini angu-{0} ezayo',
+ 'week-narrow-future-other' => 'emavikini angu-{0} ezayo',
+ 'week-narrow-past-one' => 'amaviki angu-{0} edlule',
+ 'week-narrow-past-other' => 'amaviki angu-{0} edlule',
'week-one' => '{0} iviki',
'week-other' => '{0} amaviki',
'week-past-one' => 'evikini elingu-{0} eledlule',
- 'week-past-other' => 'amaviki angu-{0} adlule',
- 'year-future-one' => 'onyakeni ongu-{0}',
- 'year-future-other' => 'Eminyakeni engu-{0}',
+ 'week-past-other' => 'amaviki angu-{0} edlule',
+ 'week-short-future-one' => 'evikini elingu-{0} elizayo',
+ 'week-short-future-other' => 'emavikini angu-{0} ezayo',
+ 'week-short-past-one' => 'amaviki angu-{0} edlule',
+ 'week-short-past-other' => 'amaviki angu-{0} edlule',
+ 'year-future-one' => 'onyakeni ongu-{0} ozayo',
+ 'year-future-other' => 'eminyakeni engu-{0} ezayo',
+ 'year-narrow-future-one' => 'onyakeni ongu-{0} ozayo',
+ 'year-narrow-future-other' => 'eminyakeni engu-{0} ezayo',
+ 'year-narrow-past-one' => '{0} unyaka odlule',
+ 'year-narrow-past-other' => '{0} unyaka odlule',
'year-one' => '{0} y',
'year-other' => '{0} y',
'year-past-one' => '{0} unyaka odlule',
'year-past-other' => '{0} iminyaka edlule',
+ 'year-short-future-one' => 'onyakeni ongu-{0} ozayo',
+ 'year-short-future-other' => 'eminyakeni engu-{0} ezayo',
'year-short-past-one' => '{0} unyaka odlule',
'year-short-past-other' => '{0} unyaka odlule',
-);
+];
diff --git a/MLEB/cldr/CldrSupplemental/Supplemental.php b/MLEB/cldr/CldrSupplemental/Supplemental.php
index af80473c..f8f19169 100644
--- a/MLEB/cldr/CldrSupplemental/Supplemental.php
+++ b/MLEB/cldr/CldrSupplemental/Supplemental.php
@@ -1,1051 +1,1102 @@
<?php
-$currencyFractions = array(
- 'ADP' => array(
+$currencyFractions = [
+ 'ADP' => [
'digits' => '0',
'rounding' => '0',
- ),
- 'AFN' => array(
+ ],
+ 'AFN' => [
'digits' => '0',
'rounding' => '0',
- ),
- 'ALL' => array(
+ ],
+ 'ALL' => [
'digits' => '0',
'rounding' => '0',
- ),
- 'AMD' => array(
- 'digits' => '0',
+ ],
+ 'AMD' => [
+ 'digits' => '2',
'rounding' => '0',
- ),
- 'BHD' => array(
+ 'cashDigits' => '0',
+ 'cashRounding' => '0',
+ ],
+ 'BHD' => [
'digits' => '3',
'rounding' => '0',
- ),
- 'BIF' => array(
+ ],
+ 'BIF' => [
'digits' => '0',
'rounding' => '0',
- ),
- 'BYR' => array(
+ ],
+ 'BYR' => [
'digits' => '0',
'rounding' => '0',
- ),
- 'CAD' => array(
+ ],
+ 'BYN' => [
+ 'digits' => '2',
+ 'rounding' => '0',
+ ],
+ 'CAD' => [
'digits' => '2',
'rounding' => '0',
'cashRounding' => '5',
- ),
- 'CHF' => array(
+ ],
+ 'CHF' => [
'digits' => '2',
'rounding' => '0',
'cashRounding' => '5',
- ),
- 'CLF' => array(
+ ],
+ 'CLF' => [
'digits' => '4',
'rounding' => '0',
- ),
- 'CLP' => array(
+ ],
+ 'CLP' => [
'digits' => '0',
'rounding' => '0',
- ),
- 'COP' => array(
- 'digits' => '0',
+ ],
+ 'COP' => [
+ 'digits' => '2',
'rounding' => '0',
- ),
- 'CRC' => array(
- 'digits' => '0',
+ 'cashDigits' => '0',
+ 'cashRounding' => '0',
+ ],
+ 'CRC' => [
+ 'digits' => '2',
'rounding' => '0',
- ),
- 'CZK' => array(
+ 'cashDigits' => '0',
+ 'cashRounding' => '0',
+ ],
+ 'CZK' => [
'digits' => '2',
'rounding' => '0',
'cashDigits' => '0',
'cashRounding' => '0',
- ),
- 'DEFAULT' => array(
+ ],
+ 'DEFAULT' => [
'digits' => '2',
'rounding' => '0',
- ),
- 'DJF' => array(
+ ],
+ 'DJF' => [
'digits' => '0',
'rounding' => '0',
- ),
- 'ESP' => array(
- 'digits' => '0',
+ ],
+ 'DKK' => [
+ 'digits' => '2',
'rounding' => '0',
- ),
- 'GNF' => array(
+ 'cashRounding' => '50',
+ ],
+ 'ESP' => [
'digits' => '0',
'rounding' => '0',
- ),
- 'GYD' => array(
+ ],
+ 'GNF' => [
'digits' => '0',
'rounding' => '0',
- ),
- 'HUF' => array(
+ ],
+ 'GYD' => [
'digits' => '2',
'rounding' => '0',
'cashDigits' => '0',
'cashRounding' => '0',
- ),
- 'IDR' => array(
- 'digits' => '0',
+ ],
+ 'HUF' => [
+ 'digits' => '2',
+ 'rounding' => '0',
+ 'cashDigits' => '0',
+ 'cashRounding' => '0',
+ ],
+ 'IDR' => [
+ 'digits' => '2',
'rounding' => '0',
- ),
- 'IQD' => array(
+ 'cashDigits' => '0',
+ 'cashRounding' => '0',
+ ],
+ 'IQD' => [
'digits' => '0',
'rounding' => '0',
- ),
- 'IRR' => array(
+ ],
+ 'IRR' => [
'digits' => '0',
'rounding' => '0',
- ),
- 'ISK' => array(
+ ],
+ 'ISK' => [
'digits' => '0',
'rounding' => '0',
- ),
- 'ITL' => array(
+ ],
+ 'ITL' => [
'digits' => '0',
'rounding' => '0',
- ),
- 'JOD' => array(
+ ],
+ 'JOD' => [
'digits' => '3',
'rounding' => '0',
- ),
- 'JPY' => array(
+ ],
+ 'JPY' => [
'digits' => '0',
'rounding' => '0',
- ),
- 'KMF' => array(
+ ],
+ 'KMF' => [
'digits' => '0',
'rounding' => '0',
- ),
- 'KPW' => array(
+ ],
+ 'KPW' => [
'digits' => '0',
'rounding' => '0',
- ),
- 'KRW' => array(
+ ],
+ 'KRW' => [
'digits' => '0',
'rounding' => '0',
- ),
- 'KWD' => array(
+ ],
+ 'KWD' => [
'digits' => '3',
'rounding' => '0',
- ),
- 'LAK' => array(
+ ],
+ 'LAK' => [
'digits' => '0',
'rounding' => '0',
- ),
- 'LBP' => array(
+ ],
+ 'LBP' => [
'digits' => '0',
'rounding' => '0',
- ),
- 'LUF' => array(
+ ],
+ 'LUF' => [
'digits' => '0',
'rounding' => '0',
- ),
- 'LYD' => array(
+ ],
+ 'LYD' => [
'digits' => '3',
'rounding' => '0',
- ),
- 'MGA' => array(
+ ],
+ 'MGA' => [
'digits' => '0',
'rounding' => '0',
- ),
- 'MGF' => array(
+ ],
+ 'MGF' => [
'digits' => '0',
'rounding' => '0',
- ),
- 'MMK' => array(
+ ],
+ 'MMK' => [
'digits' => '0',
'rounding' => '0',
- ),
- 'MNT' => array(
- 'digits' => '0',
+ ],
+ 'MNT' => [
+ 'digits' => '2',
'rounding' => '0',
- ),
- 'MRO' => array(
+ 'cashDigits' => '0',
+ 'cashRounding' => '0',
+ ],
+ 'MRO' => [
'digits' => '0',
'rounding' => '0',
- ),
- 'MUR' => array(
- 'digits' => '0',
+ ],
+ 'MUR' => [
+ 'digits' => '2',
+ 'rounding' => '0',
+ 'cashDigits' => '0',
+ 'cashRounding' => '0',
+ ],
+ 'NOK' => [
+ 'digits' => '2',
'rounding' => '0',
- ),
- 'OMR' => array(
+ 'cashDigits' => '0',
+ 'cashRounding' => '0',
+ ],
+ 'OMR' => [
'digits' => '3',
'rounding' => '0',
- ),
- 'PKR' => array(
- 'digits' => '0',
+ ],
+ 'PKR' => [
+ 'digits' => '2',
'rounding' => '0',
- ),
- 'PYG' => array(
+ 'cashDigits' => '0',
+ 'cashRounding' => '0',
+ ],
+ 'PYG' => [
'digits' => '0',
'rounding' => '0',
- ),
- 'RSD' => array(
+ ],
+ 'RSD' => [
'digits' => '0',
'rounding' => '0',
- ),
- 'RWF' => array(
+ ],
+ 'RWF' => [
'digits' => '0',
'rounding' => '0',
- ),
- 'SLL' => array(
+ ],
+ 'SEK' => [
+ 'digits' => '2',
+ 'rounding' => '0',
+ 'cashDigits' => '0',
+ 'cashRounding' => '0',
+ ],
+ 'SLL' => [
'digits' => '0',
'rounding' => '0',
- ),
- 'SOS' => array(
+ ],
+ 'SOS' => [
'digits' => '0',
'rounding' => '0',
- ),
- 'STD' => array(
+ ],
+ 'STD' => [
'digits' => '0',
'rounding' => '0',
- ),
- 'SYP' => array(
+ ],
+ 'SYP' => [
'digits' => '0',
'rounding' => '0',
- ),
- 'TMM' => array(
+ ],
+ 'TMM' => [
'digits' => '0',
'rounding' => '0',
- ),
- 'TND' => array(
+ ],
+ 'TND' => [
'digits' => '3',
'rounding' => '0',
- ),
- 'TRL' => array(
+ ],
+ 'TRL' => [
'digits' => '0',
'rounding' => '0',
- ),
- 'TZS' => array(
- 'digits' => '0',
+ ],
+ 'TZS' => [
+ 'digits' => '2',
'rounding' => '0',
- ),
- 'TWD' => array(
+ 'cashDigits' => '0',
+ 'cashRounding' => '0',
+ ],
+ 'TWD' => [
'digits' => '2',
'rounding' => '0',
'cashDigits' => '0',
'cashRounding' => '0',
- ),
- 'UGX' => array(
+ ],
+ 'UGX' => [
'digits' => '0',
'rounding' => '0',
- ),
- 'UZS' => array(
- 'digits' => '0',
+ ],
+ 'UZS' => [
+ 'digits' => '2',
'rounding' => '0',
- ),
- 'UYI' => array(
+ 'cashDigits' => '0',
+ 'cashRounding' => '0',
+ ],
+ 'UYI' => [
'digits' => '0',
'rounding' => '0',
- ),
- 'VND' => array(
+ ],
+ 'UYW' => [
+ 'digits' => '4',
+ 'rounding' => '0',
+ ],
+ 'VEF' => [
+ 'digits' => '2',
+ 'rounding' => '0',
+ 'cashDigits' => '0',
+ 'cashRounding' => '0',
+ ],
+ 'VND' => [
'digits' => '0',
'rounding' => '0',
- ),
- 'VUV' => array(
+ ],
+ 'VUV' => [
'digits' => '0',
'rounding' => '0',
- ),
- 'XAF' => array(
+ ],
+ 'XAF' => [
'digits' => '0',
'rounding' => '0',
- ),
- 'XOF' => array(
+ ],
+ 'XOF' => [
'digits' => '0',
'rounding' => '0',
- ),
- 'XPF' => array(
+ ],
+ 'XPF' => [
'digits' => '0',
'rounding' => '0',
- ),
- 'YER' => array(
+ ],
+ 'YER' => [
'digits' => '0',
'rounding' => '0',
- ),
- 'ZMK' => array(
+ ],
+ 'ZMK' => [
'digits' => '0',
'rounding' => '0',
- ),
- 'ZWD' => array(
+ ],
+ 'ZWD' => [
'digits' => '0',
'rounding' => '0',
- ),
-);
+ ],
+];
-$localeCurrencies = array(
- 'AC' => array(
+$localeCurrencies = [
+ 'AC' => [
'SHP',
- ),
- 'AD' => array(
+ ],
+ 'AD' => [
'EUR',
- ),
- 'AE' => array(
+ ],
+ 'AE' => [
'AED',
- ),
- 'AF' => array(
+ ],
+ 'AF' => [
'AFN',
- ),
- 'AG' => array(
+ ],
+ 'AG' => [
'XCD',
- ),
- 'AI' => array(
+ ],
+ 'AI' => [
'XCD',
- ),
- 'AL' => array(
+ ],
+ 'AL' => [
'ALL',
- ),
- 'AM' => array(
+ ],
+ 'AM' => [
'AMD',
- ),
- 'AO' => array(
+ ],
+ 'AO' => [
'AOA',
- ),
- 'AR' => array(
+ ],
+ 'AR' => [
'ARS',
- ),
- 'AS' => array(
+ ],
+ 'AS' => [
'USD',
- ),
- 'AT' => array(
+ ],
+ 'AT' => [
'EUR',
- ),
- 'AU' => array(
+ ],
+ 'AU' => [
'AUD',
- ),
- 'AW' => array(
+ ],
+ 'AW' => [
'AWG',
- ),
- 'AX' => array(
+ ],
+ 'AX' => [
'EUR',
- ),
- 'AZ' => array(
+ ],
+ 'AZ' => [
'AZN',
- ),
- 'BA' => array(
+ ],
+ 'BA' => [
'BAM',
- ),
- 'BB' => array(
+ ],
+ 'BB' => [
'BBD',
- ),
- 'BD' => array(
+ ],
+ 'BD' => [
'BDT',
- ),
- 'BE' => array(
+ ],
+ 'BE' => [
'EUR',
- ),
- 'BF' => array(
+ ],
+ 'BF' => [
'XOF',
- ),
- 'BG' => array(
+ ],
+ 'BG' => [
'BGN',
- ),
- 'BH' => array(
+ ],
+ 'BH' => [
'BHD',
- ),
- 'BI' => array(
+ ],
+ 'BI' => [
'BIF',
- ),
- 'BJ' => array(
+ ],
+ 'BJ' => [
'XOF',
- ),
- 'BL' => array(
+ ],
+ 'BL' => [
'EUR',
- ),
- 'BM' => array(
+ ],
+ 'BM' => [
'BMD',
- ),
- 'BN' => array(
+ ],
+ 'BN' => [
'BND',
- ),
- 'BO' => array(
+ ],
+ 'BO' => [
'BOB',
- ),
- 'BQ' => array(
+ ],
+ 'BQ' => [
'USD',
- ),
- 'BR' => array(
+ ],
+ 'BR' => [
'BRL',
- ),
- 'BS' => array(
+ ],
+ 'BS' => [
'BSD',
- ),
- 'BT' => array(
+ ],
+ 'BT' => [
'BTN',
'INR',
- ),
- 'BV' => array(
+ ],
+ 'BV' => [
'NOK',
- ),
- 'BW' => array(
+ ],
+ 'BW' => [
'BWP',
- ),
- 'BY' => array(
- 'BYR',
- ),
- 'BZ' => array(
+ ],
+ 'BY' => [
+ 'BYN',
+ ],
+ 'BZ' => [
'BZD',
- ),
- 'CA' => array(
+ ],
+ 'CA' => [
'CAD',
- ),
- 'CC' => array(
+ ],
+ 'CC' => [
'AUD',
- ),
- 'CD' => array(
+ ],
+ 'CD' => [
'CDF',
- ),
- 'CF' => array(
+ ],
+ 'CF' => [
'XAF',
- ),
- 'CG' => array(
+ ],
+ 'CG' => [
'XAF',
- ),
- 'CH' => array(
+ ],
+ 'CH' => [
'CHF',
- ),
- 'CI' => array(
+ ],
+ 'CI' => [
'XOF',
- ),
- 'CK' => array(
+ ],
+ 'CK' => [
'NZD',
- ),
- 'CL' => array(
+ ],
+ 'CL' => [
'CLP',
- ),
- 'CM' => array(
+ ],
+ 'CM' => [
'XAF',
- ),
- 'CN' => array(
+ ],
+ 'CN' => [
'CNY',
- ),
- 'CO' => array(
+ ],
+ 'CO' => [
'COP',
- ),
- 'CR' => array(
+ ],
+ 'CR' => [
'CRC',
- ),
- 'CU' => array(
+ ],
+ 'CU' => [
'CUP',
'CUC',
- ),
- 'CV' => array(
+ ],
+ 'CV' => [
'CVE',
- ),
- 'CW' => array(
+ ],
+ 'CW' => [
'ANG',
- ),
- 'CX' => array(
+ ],
+ 'CX' => [
'AUD',
- ),
- 'CY' => array(
+ ],
+ 'CY' => [
'EUR',
- ),
- 'CZ' => array(
+ ],
+ 'CZ' => [
'CZK',
- ),
- 'DE' => array(
+ ],
+ 'DE' => [
'EUR',
- ),
- 'DG' => array(
+ ],
+ 'DG' => [
'USD',
- ),
- 'DJ' => array(
+ ],
+ 'DJ' => [
'DJF',
- ),
- 'DK' => array(
+ ],
+ 'DK' => [
'DKK',
- ),
- 'DM' => array(
+ ],
+ 'DM' => [
'XCD',
- ),
- 'DO' => array(
+ ],
+ 'DO' => [
'DOP',
- ),
- 'DZ' => array(
+ ],
+ 'DZ' => [
'DZD',
- ),
- 'EA' => array(
+ ],
+ 'EA' => [
'EUR',
- ),
- 'EC' => array(
+ ],
+ 'EC' => [
'USD',
- ),
- 'EE' => array(
+ ],
+ 'EE' => [
'EUR',
- ),
- 'EG' => array(
+ ],
+ 'EG' => [
'EGP',
- ),
- 'EH' => array(
+ ],
+ 'EH' => [
'MAD',
- ),
- 'ER' => array(
+ ],
+ 'ER' => [
'ERN',
- ),
- 'ES' => array(
+ ],
+ 'ES' => [
'EUR',
- ),
- 'ET' => array(
+ ],
+ 'ET' => [
'ETB',
- ),
- 'EU' => array(
+ ],
+ 'EU' => [
'EUR',
- ),
- 'FI' => array(
+ ],
+ 'FI' => [
'EUR',
- ),
- 'FJ' => array(
+ ],
+ 'FJ' => [
'FJD',
- ),
- 'FK' => array(
+ ],
+ 'FK' => [
'FKP',
- ),
- 'FM' => array(
+ ],
+ 'FM' => [
'USD',
- ),
- 'FO' => array(
+ ],
+ 'FO' => [
'DKK',
- ),
- 'FR' => array(
+ ],
+ 'FR' => [
'EUR',
- ),
- 'GA' => array(
+ ],
+ 'GA' => [
'XAF',
- ),
- 'GB' => array(
+ ],
+ 'GB' => [
'GBP',
- ),
- 'GD' => array(
+ ],
+ 'GD' => [
'XCD',
- ),
- 'GE' => array(
+ ],
+ 'GE' => [
'GEL',
- ),
- 'GF' => array(
+ ],
+ 'GF' => [
'EUR',
- ),
- 'GG' => array(
+ ],
+ 'GG' => [
'GBP',
- ),
- 'GH' => array(
+ ],
+ 'GH' => [
'GHS',
- ),
- 'GI' => array(
+ ],
+ 'GI' => [
'GIP',
- ),
- 'GL' => array(
+ ],
+ 'GL' => [
'DKK',
- ),
- 'GM' => array(
+ ],
+ 'GM' => [
'GMD',
- ),
- 'GN' => array(
+ ],
+ 'GN' => [
'GNF',
- ),
- 'GP' => array(
+ ],
+ 'GP' => [
'EUR',
- ),
- 'GQ' => array(
+ ],
+ 'GQ' => [
'XAF',
- ),
- 'GR' => array(
+ ],
+ 'GR' => [
'EUR',
- ),
- 'GS' => array(
+ ],
+ 'GS' => [
'GBP',
- ),
- 'GT' => array(
+ ],
+ 'GT' => [
'GTQ',
- ),
- 'GU' => array(
+ ],
+ 'GU' => [
'USD',
- ),
- 'GW' => array(
+ ],
+ 'GW' => [
'XOF',
- ),
- 'GY' => array(
+ ],
+ 'GY' => [
'GYD',
- ),
- 'HK' => array(
+ ],
+ 'HK' => [
'HKD',
- ),
- 'HM' => array(
+ ],
+ 'HM' => [
'AUD',
- ),
- 'HN' => array(
+ ],
+ 'HN' => [
'HNL',
- ),
- 'HR' => array(
+ ],
+ 'HR' => [
'HRK',
- ),
- 'HT' => array(
+ ],
+ 'HT' => [
'HTG',
'USD',
- ),
- 'HU' => array(
+ ],
+ 'HU' => [
'HUF',
- ),
- 'IC' => array(
+ ],
+ 'IC' => [
'EUR',
- ),
- 'ID' => array(
+ ],
+ 'ID' => [
'IDR',
- ),
- 'IE' => array(
+ ],
+ 'IE' => [
'EUR',
- ),
- 'IL' => array(
+ ],
+ 'IL' => [
'ILS',
- ),
- 'IM' => array(
+ ],
+ 'IM' => [
'GBP',
- ),
- 'IN' => array(
+ ],
+ 'IN' => [
'INR',
- ),
- 'IO' => array(
+ ],
+ 'IO' => [
'USD',
- ),
- 'IQ' => array(
+ ],
+ 'IQ' => [
'IQD',
- ),
- 'IR' => array(
+ ],
+ 'IR' => [
'IRR',
- ),
- 'IS' => array(
+ ],
+ 'IS' => [
'ISK',
- ),
- 'IT' => array(
+ ],
+ 'IT' => [
'EUR',
- ),
- 'JE' => array(
+ ],
+ 'JE' => [
'GBP',
- ),
- 'JM' => array(
+ ],
+ 'JM' => [
'JMD',
- ),
- 'JO' => array(
+ ],
+ 'JO' => [
'JOD',
- ),
- 'JP' => array(
+ ],
+ 'JP' => [
'JPY',
- ),
- 'KE' => array(
+ ],
+ 'KE' => [
'KES',
- ),
- 'KG' => array(
+ ],
+ 'KG' => [
'KGS',
- ),
- 'KH' => array(
+ ],
+ 'KH' => [
'KHR',
- ),
- 'KI' => array(
+ ],
+ 'KI' => [
'AUD',
- ),
- 'KM' => array(
+ ],
+ 'KM' => [
'KMF',
- ),
- 'KN' => array(
+ ],
+ 'KN' => [
'XCD',
- ),
- 'KP' => array(
+ ],
+ 'KP' => [
'KPW',
- ),
- 'KR' => array(
+ ],
+ 'KR' => [
'KRW',
- ),
- 'KW' => array(
+ ],
+ 'KW' => [
'KWD',
- ),
- 'KY' => array(
+ ],
+ 'KY' => [
'KYD',
- ),
- 'KZ' => array(
+ ],
+ 'KZ' => [
'KZT',
- ),
- 'LA' => array(
+ ],
+ 'LA' => [
'LAK',
- ),
- 'LB' => array(
+ ],
+ 'LB' => [
'LBP',
- ),
- 'LC' => array(
+ ],
+ 'LC' => [
'XCD',
- ),
- 'LI' => array(
+ ],
+ 'LI' => [
'CHF',
- ),
- 'LK' => array(
+ ],
+ 'LK' => [
'LKR',
- ),
- 'LR' => array(
+ ],
+ 'LR' => [
'LRD',
- ),
- 'LS' => array(
+ ],
+ 'LS' => [
'ZAR',
'LSL',
- ),
- 'LT' => array(
+ ],
+ 'LT' => [
'EUR',
- ),
- 'LU' => array(
+ ],
+ 'LU' => [
'EUR',
- ),
- 'LV' => array(
+ ],
+ 'LV' => [
'EUR',
- ),
- 'LY' => array(
+ ],
+ 'LY' => [
'LYD',
- ),
- 'MA' => array(
+ ],
+ 'MA' => [
'MAD',
- ),
- 'MC' => array(
+ ],
+ 'MC' => [
'EUR',
- ),
- 'MD' => array(
+ ],
+ 'MD' => [
'MDL',
- ),
- 'ME' => array(
+ ],
+ 'ME' => [
'EUR',
- ),
- 'MF' => array(
+ ],
+ 'MF' => [
'EUR',
- ),
- 'MG' => array(
+ ],
+ 'MG' => [
'MGA',
- ),
- 'MH' => array(
+ ],
+ 'MH' => [
'USD',
- ),
- 'MK' => array(
+ ],
+ 'MK' => [
'MKD',
- ),
- 'ML' => array(
+ ],
+ 'ML' => [
'XOF',
- ),
- 'MM' => array(
+ ],
+ 'MM' => [
'MMK',
- ),
- 'MN' => array(
+ ],
+ 'MN' => [
'MNT',
- ),
- 'MO' => array(
+ ],
+ 'MO' => [
'MOP',
- ),
- 'MP' => array(
+ ],
+ 'MP' => [
'USD',
- ),
- 'MQ' => array(
+ ],
+ 'MQ' => [
'EUR',
- ),
- 'MR' => array(
- 'MRO',
- ),
- 'MS' => array(
+ ],
+ 'MR' => [
+ 'MRU',
+ ],
+ 'MS' => [
'XCD',
- ),
- 'MT' => array(
+ ],
+ 'MT' => [
'EUR',
- ),
- 'MU' => array(
+ ],
+ 'MU' => [
'MUR',
- ),
- 'MV' => array(
+ ],
+ 'MV' => [
'MVR',
- ),
- 'MW' => array(
+ ],
+ 'MW' => [
'MWK',
- ),
- 'MX' => array(
+ ],
+ 'MX' => [
'MXN',
- ),
- 'MY' => array(
+ ],
+ 'MY' => [
'MYR',
- ),
- 'MZ' => array(
+ ],
+ 'MZ' => [
'MZN',
- ),
- 'NA' => array(
+ ],
+ 'NA' => [
'NAD',
'ZAR',
- ),
- 'NC' => array(
+ ],
+ 'NC' => [
'XPF',
- ),
- 'NE' => array(
+ ],
+ 'NE' => [
'XOF',
- ),
- 'NF' => array(
+ ],
+ 'NF' => [
'AUD',
- ),
- 'NG' => array(
+ ],
+ 'NG' => [
'NGN',
- ),
- 'NI' => array(
+ ],
+ 'NI' => [
'NIO',
- ),
- 'NL' => array(
+ ],
+ 'NL' => [
'EUR',
- ),
- 'NO' => array(
+ ],
+ 'NO' => [
'NOK',
- ),
- 'NP' => array(
+ ],
+ 'NP' => [
'NPR',
- ),
- 'NR' => array(
+ ],
+ 'NR' => [
'AUD',
- ),
- 'NU' => array(
+ ],
+ 'NU' => [
'NZD',
- ),
- 'NZ' => array(
+ ],
+ 'NZ' => [
'NZD',
- ),
- 'OM' => array(
+ ],
+ 'OM' => [
'OMR',
- ),
- 'PA' => array(
+ ],
+ 'PA' => [
'PAB',
'USD',
- ),
- 'PE' => array(
+ ],
+ 'PE' => [
'PEN',
- ),
- 'PF' => array(
+ ],
+ 'PF' => [
'XPF',
- ),
- 'PG' => array(
+ ],
+ 'PG' => [
'PGK',
- ),
- 'PH' => array(
+ ],
+ 'PH' => [
'PHP',
- ),
- 'PK' => array(
+ ],
+ 'PK' => [
'PKR',
- ),
- 'PL' => array(
+ ],
+ 'PL' => [
'PLN',
- ),
- 'PM' => array(
+ ],
+ 'PM' => [
'EUR',
- ),
- 'PN' => array(
+ ],
+ 'PN' => [
'NZD',
- ),
- 'PR' => array(
+ ],
+ 'PR' => [
'USD',
- ),
- 'PS' => array(
+ ],
+ 'PS' => [
'ILS',
'JOD',
- ),
- 'PT' => array(
+ ],
+ 'PT' => [
'EUR',
- ),
- 'PW' => array(
+ ],
+ 'PW' => [
'USD',
- ),
- 'PY' => array(
+ ],
+ 'PY' => [
'PYG',
- ),
- 'QA' => array(
+ ],
+ 'QA' => [
'QAR',
- ),
- 'RE' => array(
+ ],
+ 'RE' => [
'EUR',
- ),
- 'RO' => array(
+ ],
+ 'RO' => [
'RON',
- ),
- 'RS' => array(
+ ],
+ 'RS' => [
'RSD',
- ),
- 'RU' => array(
+ ],
+ 'RU' => [
'RUB',
- ),
- 'RW' => array(
+ ],
+ 'RW' => [
'RWF',
- ),
- 'SA' => array(
+ ],
+ 'SA' => [
'SAR',
- ),
- 'SB' => array(
+ ],
+ 'SB' => [
'SBD',
- ),
- 'SC' => array(
+ ],
+ 'SC' => [
'SCR',
- ),
- 'SD' => array(
+ ],
+ 'SD' => [
'SDG',
- ),
- 'SE' => array(
+ ],
+ 'SE' => [
'SEK',
- ),
- 'SG' => array(
+ ],
+ 'SG' => [
'SGD',
- ),
- 'SH' => array(
+ ],
+ 'SH' => [
'SHP',
- ),
- 'SI' => array(
+ ],
+ 'SI' => [
'EUR',
- ),
- 'SJ' => array(
+ ],
+ 'SJ' => [
'NOK',
- ),
- 'SK' => array(
+ ],
+ 'SK' => [
'EUR',
- ),
- 'SL' => array(
+ ],
+ 'SL' => [
'SLL',
- ),
- 'SM' => array(
+ ],
+ 'SM' => [
'EUR',
- ),
- 'SN' => array(
+ ],
+ 'SN' => [
'XOF',
- ),
- 'SO' => array(
+ ],
+ 'SO' => [
'SOS',
- ),
- 'SR' => array(
+ ],
+ 'SR' => [
'SRD',
- ),
- 'SS' => array(
+ ],
+ 'SS' => [
'SSP',
- ),
- 'ST' => array(
- 'STD',
- ),
- 'SV' => array(
+ ],
+ 'ST' => [
+ 'STN',
+ ],
+ 'SV' => [
'USD',
- ),
- 'SX' => array(
+ ],
+ 'SX' => [
'ANG',
- ),
- 'SY' => array(
+ ],
+ 'SY' => [
'SYP',
- ),
- 'SZ' => array(
+ ],
+ 'SZ' => [
'SZL',
- ),
- 'TA' => array(
+ ],
+ 'TA' => [
'GBP',
- ),
- 'TC' => array(
+ ],
+ 'TC' => [
'USD',
- ),
- 'TD' => array(
+ ],
+ 'TD' => [
'XAF',
- ),
- 'TF' => array(
+ ],
+ 'TF' => [
'EUR',
- ),
- 'TG' => array(
+ ],
+ 'TG' => [
'XOF',
- ),
- 'TH' => array(
+ ],
+ 'TH' => [
'THB',
- ),
- 'TJ' => array(
+ ],
+ 'TJ' => [
'TJS',
- ),
- 'TK' => array(
+ ],
+ 'TK' => [
'NZD',
- ),
- 'TL' => array(
+ ],
+ 'TL' => [
'USD',
- ),
- 'TM' => array(
+ ],
+ 'TM' => [
'TMT',
- ),
- 'TN' => array(
+ ],
+ 'TN' => [
'TND',
- ),
- 'TO' => array(
+ ],
+ 'TO' => [
'TOP',
- ),
- 'TR' => array(
+ ],
+ 'TR' => [
'TRY',
- ),
- 'TT' => array(
+ ],
+ 'TT' => [
'TTD',
- ),
- 'TV' => array(
+ ],
+ 'TV' => [
'AUD',
- ),
- 'TW' => array(
+ ],
+ 'TW' => [
'TWD',
- ),
- 'TZ' => array(
+ ],
+ 'TZ' => [
'TZS',
- ),
- 'UA' => array(
+ ],
+ 'UA' => [
'UAH',
- ),
- 'UG' => array(
+ ],
+ 'UG' => [
'UGX',
- ),
- 'UM' => array(
+ ],
+ 'UM' => [
'USD',
- ),
- 'US' => array(
+ ],
+ 'US' => [
'USD',
- ),
- 'UY' => array(
+ ],
+ 'UY' => [
'UYU',
- ),
- 'UZ' => array(
+ ],
+ 'UZ' => [
'UZS',
- ),
- 'VA' => array(
+ ],
+ 'VA' => [
'EUR',
- ),
- 'VC' => array(
+ ],
+ 'VC' => [
'XCD',
- ),
- 'VE' => array(
- 'VEF',
- ),
- 'VG' => array(
+ ],
+ 'VE' => [
+ 'VES',
+ ],
+ 'VG' => [
'USD',
- ),
- 'VI' => array(
+ ],
+ 'VI' => [
'USD',
- ),
- 'VN' => array(
+ ],
+ 'VN' => [
'VND',
- ),
- 'VU' => array(
+ ],
+ 'VU' => [
'VUV',
- ),
- 'WF' => array(
+ ],
+ 'WF' => [
'XPF',
- ),
- 'WS' => array(
+ ],
+ 'WS' => [
'WST',
- ),
- 'XK' => array(
+ ],
+ 'XK' => [
'EUR',
- ),
- 'YE' => array(
+ ],
+ 'YE' => [
'YER',
- ),
- 'YT' => array(
+ ],
+ 'YT' => [
'EUR',
- ),
- 'ZA' => array(
+ ],
+ 'ZA' => [
'ZAR',
- ),
- 'ZM' => array(
+ ],
+ 'ZM' => [
'ZMW',
- ),
- 'ZW' => array(
+ ],
+ 'ZW' => [
'USD',
- ),
-);
+ ],
+];
diff --git a/MLEB/cldr/CountryNames.body.php b/MLEB/cldr/CountryNames.body.php
deleted file mode 100644
index 6d65f441..00000000
--- a/MLEB/cldr/CountryNames.body.php
+++ /dev/null
@@ -1,84 +0,0 @@
-<?php
-
-/**
- * A class for querying translated country names from CLDR data.
- *
- * @author Niklas Laxström
- * @author Ryan Kaldari
- * @copyright Copyright © 2007-2011
- * @license http://www.gnu.org/copyleft/gpl.html GNU General Public License 2.0 or later
- */
-class CountryNames extends CldrNames {
-
- private static $cache = array();
-
- /**
- * Get localized country names for a particular language, using fallback languages for missing
- * items.
- *
- * @param string $code The language to return the list in
- * @return array an associative array of country codes and localized country names
- */
- public static function getNames( $code ) {
- // Load country names localized for the requested language
- $names = self::loadLanguage( $code );
-
- // Load missing country names from fallback languages
- if ( is_callable( array( 'Language', 'getFallbacksFor' ) ) ) {
- // MediaWiki 1.19
- $fallbacks = Language::getFallbacksFor( $code );
- foreach ( $fallbacks as $fallback ) {
- // Overwrite the things in fallback with what we have already
- $names = array_merge( self::loadLanguage( $fallback ), $names );
- }
- } else {
- // MediaWiki 1.18 or earlier
- $fallback = $code;
- while ( $fallback = Language::getFallbackFor( $fallback ) ) {
- // Overwrite the things in fallback with what we have already
- $names = array_merge( self::loadLanguage( $fallback ), $names );
- }
- }
-
- return $names;
- }
-
- /**
- * Load country names localized for a particular language. Helper function for getNames.
- *
- * @param string $code The language to return the list in
- * @return array an associative array of country codes and localized country names
- */
- private static function loadLanguage( $code ) {
- if ( !isset( self::$cache[$code] ) ) {
- /* Load override for wrong or missing entries in cldr */
- $override = __DIR__ . '/LocalNames/' . self::getOverrideFileName( $code );
- if ( Language::isValidBuiltInCode( $code ) && file_exists( $override ) ) {
- $countryNames = false;
- require $override;
- if ( is_array( $countryNames ) ) {
- self::$cache[$code] = $countryNames;
- }
- }
-
- $filename = __DIR__ . '/CldrNames/' . self::getFileName( $code );
- if ( Language::isValidBuiltInCode( $code ) && file_exists( $filename ) ) {
- $countryNames = false;
- require $filename;
- if ( is_array( $countryNames ) ) {
- if ( isset( self::$cache[$code] ) ) {
- // Add to existing list of localized country names
- self::$cache[$code] = self::$cache[$code] + $countryNames;
- } else {
- // No list exists, so create it
- self::$cache[$code] = $countryNames;
- }
- }
- } else {
- wfDebug( __METHOD__ . ": Unable to load country names for $filename\n" );
- }
- }
-
- return isset( self::$cache[$code] ) ? self::$cache[$code] : array();
- }
-}
diff --git a/MLEB/cldr/CurrencyNames.body.php b/MLEB/cldr/CurrencyNames.body.php
deleted file mode 100644
index 74b9f839..00000000
--- a/MLEB/cldr/CurrencyNames.body.php
+++ /dev/null
@@ -1,84 +0,0 @@
-<?php
-
-/**
- * A class for querying translated currency names from CLDR data.
- *
- * @author Niklas Laxström
- * @author Ryan Kaldari
- * @copyright Copyright © 2007-2012
- * @license http://www.gnu.org/copyleft/gpl.html GNU General Public License 2.0 or later
- */
-class CurrencyNames extends CldrNames {
-
- private static $cache = array();
-
- /**
- * Get localized currency names for a particular language, using fallback languages for missing
- * items.
- *
- * @param string $code The language to return the list in
- * @return array an associative array of currency codes and localized currency names
- */
- public static function getNames( $code ) {
- // Load currency names localized for the requested language
- $names = self::loadLanguage( $code );
-
- // Load missing currency names from fallback languages
- if ( is_callable( array( 'Language', 'getFallbacksFor' ) ) ) {
- // MediaWiki 1.19
- $fallbacks = Language::getFallbacksFor( $code );
- foreach ( $fallbacks as $fallback ) {
- // Overwrite the things in fallback with what we have already
- $names = array_merge( self::loadLanguage( $fallback ), $names );
- }
- } else {
- // MediaWiki 1.18 or earlier
- $fallback = $code;
- while ( $fallback = Language::getFallbackFor( $fallback ) ) {
- // Overwrite the things in fallback with what we have already
- $names = array_merge( self::loadLanguage( $fallback ), $names );
- }
- }
-
- return $names;
- }
-
- /**
- * Load currency names localized for a particular language. Helper function for getNames.
- *
- * @param string $code The language to return the list in
- * @return array an associative array of currency codes and localized currency names
- */
- private static function loadLanguage( $code ) {
- if ( !isset( self::$cache[$code] ) ) {
- /* Load override for wrong or missing entries in cldr */
- $override = __DIR__ . '/LocalNames/' . self::getOverrideFileName( $code );
- if ( Language::isValidBuiltInCode( $code ) && file_exists( $override ) ) {
- $currencyNames = false;
- require $override;
- if ( is_array( $currencyNames ) ) {
- self::$cache[$code] = $currencyNames;
- }
- }
-
- $filename = __DIR__ . '/CldrNames/' . self::getFileName( $code );
- if ( Language::isValidBuiltInCode( $code ) && file_exists( $filename ) ) {
- $currencyNames = false;
- require $filename;
- if ( is_array( $currencyNames ) ) {
- if ( isset( self::$cache[$code] ) ) {
- // Add to existing list of localized currency names
- self::$cache[$code] = self::$cache[$code] + $currencyNames;
- } else {
- // No list exists, so create it
- self::$cache[$code] = $currencyNames;
- }
- }
- } else {
- wfDebug( __METHOD__ . ": Unable to load currency names for $filename\n" );
- }
- }
-
- return isset( self::$cache[$code] ) ? self::$cache[$code] : array();
- }
-}
diff --git a/MLEB/cldr/LanguageNames.body.php b/MLEB/cldr/LanguageNames.body.php
deleted file mode 100644
index 92bc0648..00000000
--- a/MLEB/cldr/LanguageNames.body.php
+++ /dev/null
@@ -1,142 +0,0 @@
-<?php
-
-/**
- * A class for querying translated language names from CLDR data.
- *
- * @author Niklas Laxström
- * @author Ryan Kaldari
- * @copyright Copyright © 2007-2011
- * @license http://www.gnu.org/copyleft/gpl.html GNU General Public License 2.0 or later
- */
-class LanguageNames extends CldrNames {
-
- private static $cache = array();
-
- const FALLBACK_NATIVE = 0; // Missing entries fallback to native name
- const FALLBACK_NORMAL = 1; // Missing entries fallback through the fallback chain
- const LIST_MW_SUPPORTED = 0; // Only names that have localisation in MediaWiki
- const LIST_MW = 1; // All names that are in Names.php
- const LIST_MW_AND_CLDR = 2; // Combination of Names.php and what is in cldr
-
- /**
- * Get localized language names for a particular language, using fallback languages for missing
- * items.
- *
- * @param $code string
- * @param $fbMethod int
- * @param $list int
- * @throws Exception
- * @return array an associative array of language codes and localized language names
- */
- public static function getNames( $code, $fbMethod = self::FALLBACK_NATIVE,
- $list = self::LIST_MW
- ) {
- $xx = self::loadLanguage( $code );
- $native = Language::fetchLanguageNames(
- null,
- $list === self::LIST_MW_SUPPORTED ? 'mwfile' : 'mw'
- );
-
- if ( $fbMethod === self::FALLBACK_NATIVE ) {
- $names = array_merge( $native, $xx );
- } elseif ( $fbMethod === self::FALLBACK_NORMAL ) {
- // Load missing language names from fallback languages
- $fb = $xx;
- if ( is_callable( array( 'Language', 'getFallbacksFor' ) ) ) {
- // MediaWiki 1.19
- $fallbacks = Language::getFallbacksFor( $code );
- foreach ( $fallbacks as $fallback ) {
- // Overwrite the things in fallback with what we have already
- $fb = array_merge( self::loadLanguage( $fallback ), $fb );
- }
- } else {
- // MediaWiki 1.18 or earlier
- $fallback = $code;
- while ( $fallback = Language::getFallbackFor( $fallback ) ) {
- // Overwrite the things in fallback with what we have already
- $fb = array_merge( self::loadLanguage( $fallback ), $fb );
- }
- }
-
- /* Add native names for codes that are not in cldr */
- $names = array_merge( $native, $fb );
-
- /* As a last resort, try the native name in Names.php */
- if ( !isset( $names[$code] ) && isset( $native[$code] ) ) {
- $names[$code] = $native[$code];
- }
- } else {
- throw new Exception( "Invalid value for 2:\$fallback in " . __METHOD__ );
- }
-
- switch ( $list ) {
- case self::LIST_MW:
- case self::LIST_MW_SUPPORTED:
- /* Remove entries that are not in fb */
- $names = array_intersect_key( $names, $native );
- /* And fall to the return */
- case self::LIST_MW_AND_CLDR:
- return $names;
- default:
- throw new Exception( "Invalid value for 3:\$list in " . __METHOD__ );
- }
- }
-
- /**
- * Load currency names localized for a particular language. Helper function for getNames.
- *
- * @param $code string The language to return the list in
- * @return array an associative array of language codes and localized language names
- */
- private static function loadLanguage( $code ) {
- if ( isset( self::$cache[$code] ) ) {
- return self::$cache[$code];
- }
-
- self::$cache[$code] = array();
-
- if ( !Language::isValidBuiltInCode( $code ) ) {
- return array();
- }
-
- /* Load override for wrong or missing entries in cldr */
- $override = __DIR__ . '/LocalNames/' . self::getOverrideFileName( $code );
- if ( file_exists( $override ) ) {
- $languageNames = false;
- require $override;
- if ( is_array( $languageNames ) ) {
- self::$cache[$code] = $languageNames;
- }
- }
-
- $filename = __DIR__ . '/CldrNames/' . self::getFileName( $code );
- if ( file_exists( $filename ) ) {
- $languageNames = false;
- require $filename;
- if ( is_array( $languageNames ) ) {
- if ( isset( self::$cache[$code] ) ) {
- // Add to existing list of localized language names
- self::$cache[$code] = self::$cache[$code] + $languageNames;
- } else {
- // No list exists, so create it
- self::$cache[$code] = $languageNames;
- }
- }
- } else {
- wfDebug( __METHOD__ . ": Unable to load language names for $filename\n" );
- }
-
- return self::$cache[$code];
- }
-
- /**
- * @param $names array
- * @param $code string
- * @return bool
- */
- public static function coreHook( &$names, $code ) {
- $names += self::getNames( $code, self::FALLBACK_NORMAL, self::LIST_MW_AND_CLDR );
-
- return true;
- }
-}
diff --git a/MLEB/cldr/LocalNames/LocalNamesBe_tarask.php b/MLEB/cldr/LocalNames/LocalNamesBe_tarask.php
index 30f7a9bf..88e2f5e3 100644
--- a/MLEB/cldr/LocalNames/LocalNamesBe_tarask.php
+++ b/MLEB/cldr/LocalNames/LocalNamesBe_tarask.php
@@ -1,5 +1,6 @@
<?php
-$languageNames = array(
+
+$languageNames = [
'ab' => 'абхаская',
'af' => 'афрыкаанс',
'an' => 'арагонская',
@@ -128,9 +129,9 @@ $languageNames = array(
'und' => 'невядомая',
'yi' => 'ідыш',
'zh' => 'кітайская',
-);
+];
-$currencyNames = array(
+$currencyNames = [
'ALL' => 'альбанскі лек',
'AMD' => 'армянскі драм',
'ATS' => 'аўстрыйскі шылінг',
@@ -242,9 +243,9 @@ $currencyNames = array(
'XXX' => 'невядомая валюта',
'YDD' => 'еменскі дынар',
'YER' => 'еменскі рыял',
-);
+];
-$countryNames = array(
+$countryNames = [
'AC' => 'Востраў Ушэсьця',
'AD' => 'Андора',
'AE' => 'Аб’яднаныя Арабскія Эміраты',
@@ -503,4 +504,4 @@ $countryNames = array(
'ZA' => 'Паўднёва-Афрыканская Рэспубліка',
'ZM' => 'Замбія',
'ZW' => 'Зымбабвэ',
-);
+];
diff --git a/MLEB/cldr/LocalNames/LocalNamesEn.php b/MLEB/cldr/LocalNames/LocalNamesEn.php
index f76dcfb2..74eeecf7 100644
--- a/MLEB/cldr/LocalNames/LocalNamesEn.php
+++ b/MLEB/cldr/LocalNames/LocalNamesEn.php
@@ -1,177 +1,146 @@
<?php
-$languageNames = array(
- /* Not in CLDR 21.0.1. Name "Arabic, Tunisian Spoken" used by Ethnologue:
- * http://www.ethnologue.com/show_language.asp?code=aeb
- * Added 2012-11-13.
- */
- 'aeb' => 'Tunisian Spoken Arabic',
-
- /* Not in CLDR 21.0.1. Arabic language
- * http://www.ethnologue.com/show_language.asp?code=arq
- * Added 2009-08-27.
- */
- 'arq' => 'Algerian Spoken Arabic',
-
- /* Not in CLDR 21.0.1. Arabic language
- * http://www.ethnologue.com/show_language.asp?code=ary
- * Added 2008-04-12.
- */
- 'ary' => 'Moroccan Spoken Arabic',
- /* Not in CLDR 21.0.1. Arabic language
- * http://www.ethnologue.com/show_language.asp?code=arz
- * Added 2009-08-23.
- */
- 'arz' => 'Egyptian Spoken Arabic',
-
- /* Not in CLDR 21.0.1. Balochi language
- * http://www.ethnologue.org/show_language.asp?code=bcc
- * Added 2008-07-02.
- */
+$languageNames = [
+ # Not in CLDR 33.1. Used for MediaWiki localisation
+ 'abe' => 'Western Abenaki',
+ 'abs' => 'Ambonese Malay',
+ 'ady-cyrl' => 'Adyghe (Cyrillic script)',
+ 'aeb-arab' => 'Tunisian Arabic (Arabic script)',
+ 'aeb-latn' => 'Tunisian Arabic (Latin script)',
+ 'ami' => 'Amis',
+ 'azb' => 'South Azerbaijani',
+ 'bat-smg' => 'Samogitian',
+ 'bbc-latn' => 'Batak Toba (Latin script)',
'bcc' => 'Southern Balochi',
-
- /* Not in CLDR 26.0.1. Name used by Ethnologue:
- * http://www.ethnologue.com/language/bgn
- * Added 2015-01-18.
- */
- 'bgn' => 'Western Balochi',
-
- /* Not in CLDR 21.0.1. Name Bishnupriya used by Ethnologue:
- * http://www.ethnologue.org/show_language.asp?code=bpy
- * Added 2007-11-10.
- */
- 'bpy' => 'Bishnupuriya Manipuri',
-
- /* Not in CLDR 21.0.1. Swedish language
- * http://www.ethnologue.org/show_language.asp?code=dlc
- * Added 2008-02-16.
- */
+ 'bcl' => 'Central Bikol',
+ 'be-tarask' => 'Belarusian (Taraškievica orthography)',
+ 'be-x-old' => 'Belarusian (Taraškievica orthography)', # internal code of be-tarask.wikipedia.org
+ 'bgp' => 'Eastern Balochi',
+ 'bh' => 'Bhojpuri',
+ 'bnn' => 'Bunun',
+ 'bxr' => 'Russia Buriat',
+ 'cbk-zam' => 'Chavacano',
+ 'cdo' => 'Min Dong Chinese',
+ 'cja' => 'Western Cham',
+ 'cja-cham' => 'Western Cham (Cham script)',
+ 'cja-latn' => 'Western Cham (Latin script)',
+ 'cja-arab' => 'Western Cham (Arabic script)',
+ 'cjm' => 'Eastern Cham',
+ 'cjm-cham' => 'Eastern Cham (Cham script)',
+ 'cjm-latn' => 'Eastern Cham (Latin script)',
+ 'cjm-arab' => 'Eastern Cham (Arabic script)',
+ 'cjy' => 'Jinyu',
+ 'cjy-hans' => 'Jinyu (Simplified)',
+ 'cjy-hant' => 'Jinyu (Traditional)',
+ 'cnr' => 'Montenegrin',
+ 'crh-cyrl' => 'Crimean Tatar (Cyrillic script)',
+ 'crh-latn' => 'Crimean Tatar (Latin script)',
+ 'de-formal' => 'German (formal address)',
'dlc' => 'Dalecarlian',
-
- /* Not in CLDR 21.0.1. Romance language.
- * http://www.ethnologue.org/show_language.asp?code=eml
- * Added 2008-01-17.
- */
+ 'dty' => 'Doteli',
'eml' => 'Emiliano-Romagnolo',
-
- /* Not in CLDR 21.0.1. Romance language.
- * http://www.ethnologue.org/show_language.asp?code=frp
- * Added 2007-12-02.
- */
- 'frp' => 'Franco-Provençal',
-
- /* Not in CLDR 21.0.1. Chinese language.
- * http://www.ethnologue.org/show_language.asp?code=hak
- * Added 2007-12-02.
- */
- 'hak' => 'Hakka',
-
- /* Not in CLDR 21.0.1. Chinese language.
- * http://www.ethnologue.org/show_language.asp?code=gan
- * Added 2007-12-02.
- */
- 'gan' => 'Gan',
-
- /* Not in CLDR 21.0.1. Konkani language
- * http://www.ethnologue.org/show_language.asp?code=gom
- * Added 2008-09-02.
- */
+ 'ett' => 'Etruscian',
+ 'eya' => 'Eyak',
+ 'fkv' => 'Kvensk',
+ 'fos' => 'Siraya',
+ 'fuf' => 'Pular',
+ 'gan-hans' => 'Gan (Simplified)',
+ 'gan-hant' => 'Gan (Traditional)',
+ 'gmy' => 'Mycenaean Greek',
'gom-deva' => 'Goan Konkani (Devanagari script)',
'gom-latn' => 'Goan Konkani (Latin script)',
- 'gom-knda' => 'Goan Konkani (Kannada script)',
- 'gom-mlym' => 'Goan Konkani (Malayalam script)',
- 'gom-arab' => 'Goan Konkani (Arabic script)',
-
- /* Not in CLDR 21.0.1. Mari language
- * http://www.ethnologue.org/show_language.asp?code=mhr
- * Added 2008-05-22.
- */
- 'mhr' => 'Eastern Mari',
-
- /* Not in CLDR 21.0.1. Mari language
- * http://www.ethnologue.org/show_language.asp?code=mrj
- * Added 2009-11-22.
- */
- 'mrj' => 'Hill Mari',
-
- /* Not in CLDR 21.0.1. Malay language
- * http://www.ethnologue.org/show_language.asp?code=mui
- * Added 2010-02-11.
- */
- 'mui' => 'Musi',
-
- /* Not in CLDR 21.0.1. Lahnda language.
- * http://www.ethnologue.org/show_language.asp?code=pnb
- * Added 2008-10-29.
- */
- 'pnb' => 'Western Punjabi',
-
- /* Not in CLDR 21.0.1. Eastern Romance language.
- * http://www.ethnologue.org/show_language.asp?code=ruq
- * Added 2008-02-04.
- */
- 'ruq' => 'Megleno-Romanian',
- 'ruq-cyrl' => 'Megleno-Romanian (Cyrillic script)',
- 'ruq-grek' => 'Megleno-Romanian (Greek script)',
- 'ruq-latn' => 'Megleno-Romanian (Latin script)',
-
- /* Not in CLDR 21.0.1. West Middle German language.
- * http://www.sil.org/iso639-3/documentation.asp?id=vmf
- * Added 2010-01-31.
- */
- 'vmf' => 'Upper Franconian',
-
- /* Not in CLDR 21.0.1. Chinese language.
- * http://www.ethnologue.org/show_language.asp?code=wuu
- * Added 2007-12-02.
- */
- 'wuu' => 'Wu',
-
- /* Not in CLDR 21.0.1. Low Franconian language.
- * http://www.ethnologue.org/show_language.asp?code=zea
- * Added 2008-01-17.
- */
- 'zea' => 'Zeeuws',
-
- /* Not in CLDR. Used for MediaWiki localisation
- */
- 'bat-smg' => 'Samogitian',
- 'be-tarask' => 'Belarusian (Taraškievica orthography)',
- 'cdo' => 'Min Dong Chinese',
- 'crh-cyrl' => 'Crimean Turkish (Cyrillic script)',
- 'crh-latn' => 'Crimean Turkish (Latin script)',
- 'de-formal' => 'German (formal address)',
- 'gan-hans' => 'Simplified Gan script',
- 'gan-hant' => 'Traditional Gan script',
+ 'haz' => 'Hazaragi',
'hif-latn' => 'Fiji Hindi (Latin script)',
+ 'hyw' => 'Western Armenian',
'ike-cans' => 'Eastern Canadian (Aboriginal syllabics)',
'ike-latn' => 'Eastern Canadian (Latin script)',
+ 'kbd-cyrl' => 'Kabardian (Cyrillic script)',
+ 'kbp' => 'Kabiye',
+ 'kjh' => 'Khakas',
'kk-cn' => 'Kazakh (China)',
'kk-kz' => 'Kazakh (Kazakhstan)',
'kk-tr' => 'Kazakh (Turkey)',
'kk-arab' => 'Kazakh (Arabic script)',
'kk-cyrl' => 'Kazakh (Cyrillic script)',
'kk-latn' => 'Kazakh (Latin script)',
+ 'knn' => 'Maharashtrian Konkani',
+ 'ko-kp' => 'Korean (North Korea)',
+ 'koy' => 'Koyukon',
'ks-arab' => 'Kashmiri (Arabic script)',
'ks-deva' => 'Kashmiri (Devanagari script)',
+ 'ku-arab' => 'Kurdish (Arabic script)',
'ku-latn' => 'Kurdish (Latin script)',
- 'nds-nl' => 'Low Saxon (Netherlands)',
- 'no' => 'Norwegian (bokmål)',
+ 'lbe' => 'Lak',
+ 'lki' => 'Laki',
+ 'lld' => 'Ladin',
+ 'luz' => 'Southern Luri',
+ 'mhr' => 'Eastern Mari',
+ 'mid' => 'Mandaic',
+ 'mis' => 'Unsupported language',
+ 'mo' => 'Moldovan',
+ 'moe' => 'Innu',
+ 'mnw' => 'Mon',
+ 'mui' => 'Musi',
+ 'nod' => 'Northern Thai',
+ 'nrm' => 'Norman',
+ 'nxm' => 'Numidian',
+ 'olo' => 'Livvi-Karelian',
+ 'ood' => "O'odham",
+ 'otk' => 'Old Turkish',
+ 'pjt' => 'Pitjantjatjara',
+ 'pnb' => 'Western Punjabi',
+ 'ppu' => 'Papora-Hoanya',
+ 'pwn' => 'Paiwan',
+ 'pyu' => 'Puyuma',
+ 'prs' => 'Dari',
'roa-rup' => 'Aromanian',
+ 'roa-tara' => 'Tarantino',
+ 'ruq' => 'Megleno-Romanian',
+ 'ruq-cyrl' => 'Megleno-Romanian (Cyrillic script)',
+ 'ruq-grek' => 'Megleno-Romanian (Greek script)',
+ 'ruq-latn' => 'Megleno-Romanian (Latin script)',
+ 'rwr' => 'Marwari (India)',
+ 'shi-latn' => 'Tachelhit (Latin script)',
+ 'shi-tfng' => 'Tachelhit (Tifinagh script)',
+ 'shy' => 'Shawiya',
+ 'shy-arab' => 'Shawiya (Arabic script)',
+ 'shy-latn' => 'Shawiya (Latin script)',
+ 'shy-tfng' => 'Shawiya (Tifinagh script)',
+ 'sjd' => 'Kildin Sami',
+ 'sje' => 'Pite Sami',
+ 'sju' => 'Ume Sami',
+ 'skr' => 'Saraiki',
+ 'skr-arab' => 'Saraiki (Arabic script)',
'sr-ec' => 'Serbian (Cyrillic script)',
'sr-el' => 'Serbian (Latin script)',
+ 'ssf' => 'Thao',
'tg-cyrl' => 'Tajik (Cyrillic script)',
'tg-latn' => 'Tajik (Latin script)',
'tt-cyrl' => 'Tatar (Cyrillic script)',
'tt-latn' => 'Tatar (Latin script)',
+ 'tzl' => 'Talossan',
'ug-arab' => 'Uyghur (Arabic script)',
'ug-latn' => 'Uyghur (Latin script)',
+ 'umu' => 'Munsee',
+ 'uun' => 'Pazeh',
+ 'uz-cyrl' => 'Uzbek (Cyrillic script)',
+ 'uz-latn' => 'Uzbek (Latin script)',
+ 'xpu' => 'Punic',
'ydd' => 'Eastern Yiddish',
'zh-classical' => 'Classical Chinese',
'zh-cn' => 'Chinese (China)',
'zh-hk' => 'Chinese (Hong Kong)',
'zh-min-nan' => 'Chinese (Min Nan)',
+ 'zh-mo' => 'Chinese (Macau)',
+ 'zh-my' => 'Chinese (Malaysia)',
'zh-sg' => 'Chinese (Singapore)',
'zh-tw' => 'Chinese (Taiwan)',
'zh-yue' => 'Cantonese', # language redirect
-);
+
+ /* Upper case in CLDR, but should be lower case
+ * http://unicode.org/cldr/trac/ticket/9664
+ */
+ 'mul' => 'multiple languages',
+ 'und' => 'unknown language',
+ 'zxx' => 'no linguistic content',
+];
diff --git a/MLEB/cldr/LocalNames/LocalNamesFa.php b/MLEB/cldr/LocalNames/LocalNamesFa.php
index 80329c24..48f35702 100644
--- a/MLEB/cldr/LocalNames/LocalNamesFa.php
+++ b/MLEB/cldr/LocalNames/LocalNamesFa.php
@@ -1,281 +1,249 @@
<?php
-$languageNames = array(
- /* Not in CLDR 21.0.1. Name "Arabic, Tunisian Spoken" used by Ethnologue:
- * http://www.ethnologue.com/show_language.asp?code=aeb
- * Added 2012-11-13.
- */
- 'aeb' => 'عربی تونسی',
- /* Not in CLDR 21.0.1. Name Gheg Albanian used by Ethnologue:
- * http://www.ethnologue.com/show_language.asp?code=aln
+$languageNames = [
+
+ /* Not in CLDR 27.0.1. Name Gheg Albanian used by Ethnologue:
+ * https://www.ethnologue.com/language/aln
* Added 2008-01-04.
*/
// 'aln' => 'Gheg Albanian',
- /* Not in CLDR 21.0.1. Arabic language
- * http://www.ethnologue.com/show_language.asp?code=arq
- * Added 2009-08-27.
- */
- 'arq' => 'عربی الجزائری',
-
- /* Not in CLDR 21.0.1. Arabic language
- * http://www.ethnologue.com/show_language.asp?code=ary
- * Added 2008-04-12.
- */
- 'ary' => 'عربی مراکشی',
-
- /* Not in CLDR 21.0.1. Arabic language
- * http://www.ethnologue.com/show_language.asp?code=arz
- * Added 2009-08-23.
- */
- 'arz' => 'عربی مصری',
-
- /* Not in CLDR 21.0.1. Southern Turkic
- * http://www.ethnologue.com/show_language.asp?code=azb
- * Added 2012-11-28.
- */
- 'azb' => 'ترکی آذری جنوبی',
-
- /* Not in CLDR 21.0.1. Name Bavarian used by Ethnologue:
- * http://www.ethnologue.com/show_language.asp?code=bar
- * Added 2007-11-10.
- */
- 'bar' => 'بایرنی',
-
- /* Not in CLDR 21.0.1. Southern Balochi language
+ /* Not in CLDR 27.0.1. Southern Balochi language
* http://www.ethnologue.com/language/bcc
* Added 2008-07-02.
*/
- 'bcc' => 'بلوچی مکرانی',
+ 'bcc' => 'بلوچی جنوبی',
- /* Not in CLDR 26.0.1. Western Balochi language
+ /* Not in CLDR 27.0.1. Western Balochi language
* http://www.ethnologue.com/language/bgn
* Added 2015-01-18.
*/
- 'bgn' => 'بلوچی رخشانی',
+ 'bgn' => 'بلوچی غربی',
+
+ /* Not in CLDR 27.0.1. Eastern Balochi language
+ * http://www.ethnologue.com/language/bgp
+ */
+ 'bgp' => 'بلوچی شرقی',
- /* Not in CLDR 21.0.1. Betawi language.
- * http://www.ethnologue.com/show_language.asp?code=bew
+ /* Not in CLDR 27.0.1. Betawi language.
+ * https://www.ethnologue.com/language/bew
* Added 2011-11-10.
*/
// 'bew' => 'Betawi',
- /* Not in CLDR 21.0.1. Malay language.
- * http://www.ethnologue.org/show_language.asp?code=bjn
+ /* Not in CLDR 27.0.1. Malay language.
+ * https://www.ethnologue.com/language/bjn
* Added 2011-09-10.
*/
'bjn' => 'بانجاری',
- /* Not in CLDR 21.0.1. Name Bishnupriya used by Ethnologue:
- * http://www.ethnologue.org/show_language.asp?code=bpy
+ /* Not in CLDR 27.0.1. Name Bishnupriya used by Ethnologue:
+ * https://www.ethnologue.com/language/bpy
* Added 2007-11-10.
*/
// 'bpy' => 'Bishnupriya Manipuri',
- /* Not in CLDR 21.0.1. Luri language
- * http://www.ethnologue.org/show_language.asp?code=bqi
- * Added 2007-11-10.
- */
- 'bqi' => 'بختیاری',
-
- /* Not in CLDR 21.0.1. Bihari language
- * http://www.ethnologue.org/show_language.asp?code=brh
- * Added 2011-04-16.
- */
- 'brh' => 'براهوئی',
-
- /* Not in CLDR 21.0.1. Bisayan language
- * http://www.ethnologue.org/show_language.asp?code=cps
+ /* Not in CLDR 27.0.1. Western Cham language
+ * https://www.ethnologue.com/language/cja
+ */
+ 'cja' => 'چِم غربی',
+ 'cja-cham' => 'چِم غربی (خط چِم)',
+ 'cja-latn' => 'چِم غربی (خط لاتین)',
+ 'cja-arab' => 'چِم غربی (خط عربی)',
+
+ /* Not in CLDR 27.0.1. Eastern Cham language
+ * https://www.ethnologue.com/language/cjm
+ */
+ 'cjm' => 'چِم شرقی',
+ 'cjm-cham' => 'چِم شرقی (خط چِم)',
+ 'cjm-latn' => 'چِم شرقی (خط لاتین)',
+ 'cjm-arab' => 'چِم شرقی (خط عربی)',
+
+ /* Not in CLDR 27.0.1. Jinyu language
+ * https://www.ethnologue.com/language/cjy
+ */
+ 'cjy' => 'جینیو',
+ 'cjy-hans' => 'جینیو (ساده‌شده)',
+ 'cjy-hant' => 'جینیو (سنتی)',
+
+ /* Not in CLDR 27.0.1. Bisayan language
+ * https://www.ethnologue.com/language/cps
* Added 2010-01-11.
*/
// 'cps' => 'Capiznon',
- /* Not in CLDR 21.0.1. Swedish language
- * http://www.ethnologue.org/show_language.asp?code=dlc
+ /* Not in CLDR 27.0.1. Swedish language
+ * https://www.ethnologue.com/language/dlc
* Added 2008-02-16.
*/
// 'dlc' => 'Dalecarlian',
- /* Not in CLDR 21.0.1. Central Dusun language
- * http://www.ethnologue.org/show_language.asp?code=dtp
+ /* Not in CLDR 27.0.1. Central Dusun language
+ * https://www.ethnologue.com/language/dtp
* Added 2011-04-16.
*/
// 'dtp' => 'Central Dusun',
/* Not in CLDR 21.0.1. Romance language.
- * http://www.ethnologue.org/show_language.asp?code=eml
+ * https://www.ethnologue.com/language/eml
* Added 2008-01-17.
*/
'eml' => 'امیلیانو-روما',
- /* Not in CLDR 21.0.1. Romance language.
- * http://www.ethnologue.org/show_language.asp?code=ext
+ /* Not in CLDR 27.0.1. Romance language.
+ * https://www.ethnologue.com/language/ext
* Added 2007-12-02.
*/
'ext' => 'اکسترامادورایی',
- /* Not in CLDR 21.0.1. Variety of French.
- * http://www.ethnologue.org/show_language.asp?code=frc
- * Added 2007-12-02.
- */
- 'frc' => 'فرانسوی کاژون',
-
- /* Not in CLDR 21.0.1. Romance language.
- * http://www.ethnologue.org/show_language.asp?code=frp
+ /* Not in CLDR 27.0.1. Romance language.
+ * https://www.ethnologue.com/language/frp
* Added 2007-12-02.
*/
'frp' => 'آرپیتان',
- /* Not in CLDR 21.0.1. Chinese language.
- * http://www.ethnologue.org/show_language.asp?code=hak
+ /* Not in CLDR 27.0.1. Chinese language.
+ * https://www.ethnologue.com/language/hak
* Added 2007-12-02.
*/
// 'hak' => 'Hakka',
- /* Not in CLDR 21.0.1. Turkic language.
- * Added 2008-01-14.
- */
- 'gag' => 'گاگائوز',
-
- /* Not in CLDR 21.0.1. Chinese language.
- * http://www.ethnologue.org/show_language.asp?code=gan
+ /* Not in CLDR 27.0.1. Chinese language.
+ * https://www.ethnologue.com/language/gan
* Added 2007-12-02.
*/
'gan' => 'گن',
- /* Not in CLDR 21.0.1. Konkani language
- * http://www.ethnologue.org/show_language.asp?code=gom
+ /* Not in CLDR 27.0.1. Konkani language
+ * https://www.ethnologue.com/language/gom
* Added 2008-09-02.
*/
'gom' => 'کونکانی گن',
'gom-deva' => 'کونکانی گن (خط دیواناگری)',
'gom-latn' => 'کونکانی گن (خط لاتین)',
- 'gom-knda' => 'کونکانی گن (خط کانادا)',
- 'gom-mlym' => 'کونکانی گن (خط مالایالمی)',
- 'gom-arab' => 'کونکانی گن (خط عربی)',
- /* Not in CLDR 21.0.1. Western Atlantic Creole language
- * http://www.ethnologue.org/show_language.asp?code=dtp
+ /* Not in CLDR 27.0.1. Western Atlantic Creole language
+ * https://www.ethnologue.com/language/dtp
* Added 2011-04-16.
*/
// 'jam' => 'Jamaican Creole English',
- /* Not in CLDR 21.0.1. Danish language.
- * http://www.ethnologue.org/show_language.asp?code=jut
+ /* Not in CLDR 27.0.1. Danish language.
+ * https://www.ethnologue.com/language/jut
* Added 2008-02-06.
*/
// 'jut' => 'Jutish',
- /* Not in CLDR 21.0.1. Chitral language
- * http://www.ethnologue.org/show_language.asp?code=khw
- * Added 2011-04-16.
+ /* Not in CLDR 27.0.1. Maharashtrian Konkani language
+ * https://www.ethnologue.com/language/knn
*/
- 'khw' => 'کهوار',
+ 'knn' => 'کونکانی مراتی',
- /* Not in CLDR 21.0.1. Zaza-Gorani language.
- * http://www.ethnologue.org/show_language.asp?code=kiu
- * Added 2009-10-08.
- */
- 'kiu' => 'کرمانجکی',
-
- /* Not in CLDR 21.0.1. Komi language.
- * http://www.ethnologue.org/show_language.asp?code=koi
- * Added 2010-01-02.
- */
- // 'koi' => 'Komi-Permyak',
-
- /* Not in CLDR 21.0.1. Artificial language.
- * http://www.ethnologue.org/show_language.asp?code=lfn
+ /* Not in CLDR 27.0.1. Artificial language.
+ * https://www.ethnologue.com/language/lfn
* Added 2008-01-18.
*/
// 'lfn' => 'Lingua Franca Nova',
- /* Not in CLDR 21.0.1. Latvian language
+ /* Not in CLDR 27.0.1. Laki language
+ * https://www.ethnologue.com/language/lki
+ */
+ 'lki' => 'لکی',
+
+ /* Not in CLDR 27.0.1. Latvian language
* http://www.sil.org/iso639-3/documentation.asp?id=ltg
* Added 2010-04-03.
*/
'ltg' => 'لاتگالی',
- /* Not in CLDR 21.0.1. Literary Chinese language
- * http://www.sil.org/iso639-3/documentation.asp?id=lzh
- * Added 2009-01-22.
+ /* Not in CLDR 27.0.1. Northern Luri language
+ * https://www.ethnologue.com/language/lrc
+ */
+ 'lrc' => 'لری شمالی',
+
+ /* Not in CLDR 27.0.1. Southern Luri language
+ * https://www.ethnologue.com/language/luz
*/
- 'lzh' => 'چینی ادبی',
+ 'luz' => 'لری جنوبی',
- /* Not in CLDR 21.0.1. Mari language
- * http://www.ethnologue.org/show_language.asp?code=mhr
+ /* Not in CLDR 27.0.1. Mari language
+ * https://www.ethnologue.com/language/mhr
* Added 2008-05-22.
*/
'mhr' => 'ماری',
- /* Not in CLDR 21.0.1. Mari language
- * http://www.ethnologue.org/show_language.asp?code=mrj
+ /* Not in CLDR 27.0.1. Mari language
+ * https://www.ethnologue.com/language/mrj
* Added 2009-11-22.
*/
'mrj' => 'هیل ماری',
- /* Not in CLDR 21.0.1. Malay language
- * http://www.ethnologue.org/show_language.asp?code=mui
+ /* Not in CLDR 27.0.1. Malay language
+ * https://www.ethnologue.com/language/mui
* Added 2010-02-11.
*/
// 'mui' => 'Musi',
- /* Not in CLDR 21.0.1. Caspian language
- * http://www.ethnologue.org/show_language.asp?code=mzn
+ /* Not in CLDR 27.0.1. Caspian language
+ * https://www.ethnologue.com/language/mzn
* Added 2008-03-01.
*/
'mzn' => 'مازندرانی',
- /* Not in CLDR 21.0.1. Chinese language
- * http://www.ethnologue.org/show_language.asp?code=nan
+ /* Not in CLDR 27.0.1. Chinese language
+ * https://www.ethnologue.com/language/nan
* Added 2008-03-01.
*/
'nan' => 'مین نان',
- /* Not in CLDR 21.0.1. Tibeto-Burman family language.
- * http://www.ethnologue.org/show_language.asp?code=njo
+ /* Not in CLDR 27.0.1. Tibeto-Burman family language.
+ * https://www.ethnologue.com/language/njo
* Added 2008-01-14.
*/
// 'njo' => 'Ao Naga',
- /* Not in CLDR 21.0.1. Gallo-Italian language.
- * http://www.ethnologue.org/show_language.asp?code=pms
+ /* Not in CLDR 27.0.1. Livvi-Karelian language
+ * https://www.ethnologue.com/language/olo
+ */
+ 'olo' => 'لیوی-کارلیان',
+
+ /* Not in CLDR 27.0.1. Gallo-Italian language.
+ * https://www.ethnologue.com/language/pms
* Added 2008-07-09.
*/
'pms' => 'پیدمونتی',
- /* Not in CLDR 21.0.1. Lahnda language.
- * http://www.ethnologue.org/show_language.asp?code=pnb
+ /* Not in CLDR 27.0.1. Lahnda language.
+ * https://www.ethnologue.com/language/pnb
* Added 2008-10-29.
*/
'pnb' => 'پنجابی',
- /* Not in CLDR 21.0.1. Attic language.
- * http://www.ethnologue.org/show_language.asp?code=pnt
+ /* Not in CLDR 27.0.1. Attic language.
+ * https://www.ethnologue.com/language/pnt
* Added 2008-01-18.
*/
// 'pnt' => 'Pontic',
- /* Not in CLDR 21.0.1. Western Baltic language.
- * http://www.ethnologue.org/show_language.asp?code=prg
- * Added 2009-11-22.
+ /* Not in CLDR 27.0.1. Dari language.
+ * https://www.ethnologue.com/language/prs
*/
- 'prg' => 'پروس',
+ 'prs' => 'دری',
- /* Not in CLDR 21.0.1. Gallo-Italic language.
+ /* Not in CLDR 27.0.1. Gallo-Italic language.
* http://www.sil.org/iso639-3/documentation.asp?id=rgn
* Added 2009-11-15.
*/
'rgn' => 'رومانیولو',
- /* Not in CLDR 21.0.1. East Slavic language.
- * http://www.ethnologue.com/show_language.asp?code=rue
+ /* Not in CLDR 27.0.1. East Slavic language.
+ * https://www.ethnologue.com/language/rue
* Added 2010-04-03.
*/
// 'rue' => 'Rusyn',
- /* Not in CLDR 21.0.1. Eastern Romance language.
- * http://www.ethnologue.org/show_language.asp?code=ruq
+ /* Not in CLDR 27.0.1. Eastern Romance language.
+ * https://www.ethnologue.com/language/ruq
* Added 2008-02-04.
*/
'ruq' => 'مگلنو رومانی',
@@ -283,67 +251,75 @@ $languageNames = array(
'ruq-grek' => 'مگلنو رومانی (خط یونانی)',
'ruq-latn' => 'مگلنو رومانی (خط لاتین)',
- /* Not in CLDR 21.0.1.
+ /* Not in CLDR 27.0.1.
* http://www.sil.org/iso639-3/documentation.asp?id=sgs
* Added 2010-10-14.
*/
'sgs' => 'ساموگیتی',
- /* Not in CLDR 21.0.1.
+ /* Not in CLDR 27.0.1. Shawiya language
+ * https://www.ethnologue.com/language/shy
+ */
+ 'shy' => 'شاویایی',
+ 'shy-arab' => 'شاویایی (خط عربی)',
+ 'shy-latn' => 'شاویایی (خط لاتین)',
+ 'shy-tfng' => 'شاویایی (خط تیفیناغی)',
+
+ /* Not in CLDR 27.0.1.
* http://www.sil.org/iso639-3/documentation.asp?id=sli
* Added 2008-09-02.
*/
'sli' => 'سیلزیایی پایین',
- /* Not in CLDR 21.0.1.
+ /* Not in CLDR 27.0.1.
* http://www.sil.org/iso639-3/documentation.asp?id=szl
* Added 2008-03-29.
*/
'szl' => 'سیلزیایی',
- /* Not in CLDR 21.0.1. Tulu language
+ /* Not in CLDR 27.0.1. Tulu language
* http://www.sil.org/iso639-3/documentation.asp?id=tcy
* Added 2008-08-23.
*/
'tcy' => 'تولو',
- /* Not in CLDR 21.0.1. Turoyo language
+ /* Not in CLDR 27.0.1. Turoyo language
* http://www.sil.org/iso639-3/documentation.asp?id=tru
* Added 2012-07-26.
*/
// 'tru' => 'Turoyo',
- /* Not in CLDR 21.0.1. Finnic Uralic language.
- * http://www.ethnologue.org/show_language.asp?code=vep
+ /* Not in CLDR 27.0.1. Finnic Uralic language.
+ * https://www.ethnologue.com/language/vep
* Added 2009-01-24.
*/
'vep' => 'وپس',
- /* Not in CLDR 21.0.1. West Middle German language.
+ /* Not in CLDR 27.0.1. West Middle German language.
* http://www.sil.org/iso639-3/documentation.asp?id=vmf
* Added 2010-01-31.
*/
// 'vmf' => 'Upper Franconian',
- /* Not in CLDR 21.0.1. Estonian language.
+ /* Not in CLDR 27.0.1. Estonian language.
* http://www.sil.org/iso639-3/documentation.asp?id=vro
* Added 2009-01-24.
*/
// 'vro' => 'Võro',
- /* Not in CLDR 21.0.1. Chinese language.
- * http://www.ethnologue.org/show_language.asp?code=wuu
+ /* Not in CLDR 27.0.1. Chinese language.
+ * https://www.ethnologue.com/language/wuu
* Added 2007-12-02.
*/
'wuu' => 'وو',
- /* Not in CLDR 21.0.1. Low Franconian language.
- * http://www.ethnologue.org/show_language.asp?code=zea
+ /* Not in CLDR 27.0.1. Low Franconian language.
+ * https://www.ethnologue.com/language/zea
* Added 2008-01-17.
*/
'zea' => 'زیلاندی',
- /* Not in CLDR. Used for MediaWiki localisation
+ /* Not in CLDR 27.0.1. Used for MediaWiki localisation
*/
'bat-smg' => 'ساموگیتی',
'be-tarask' => 'بلاروسی (دستورخط کلاسیک)',
@@ -353,8 +329,6 @@ $languageNames = array(
// 'de-formal' => 'German (formal address)',
'gan-hans' => 'خط گن ساده‌شده',
'gan-hant' => 'خط گن سنتی',
- 'glk' => 'گیلکی',
- 'got' => 'گوتیک',
'hif-latn' => 'هندی فیجی (خط لاتینی)',
'ike-cans' => 'کانادایی شرقی (هجاهای بومی)',
'ike-latn' => 'کانادایی شرقی (خط لاتینی)',
@@ -368,7 +342,6 @@ $languageNames = array(
'ks-deva' => 'کشمیری (خط دیواناگری)',
'ku-latn' => 'کردی (خط لاتین)',
// 'nds-nl' => 'Low Saxon (Netherlands)',
- 'no' => 'نروژی (بوکمال)',
'roa-rup' => 'آرومانی',
'sr-ec' => 'صربی (خط سرلیک)',
'sr-el' => 'صربی (خط لاتین)',
@@ -390,4 +363,4 @@ $languageNames = array(
/* additional list from Persian Wikipedia */
'simple' => 'انگلیسی ساده',
-);
+];
diff --git a/MLEB/cldr/LocalNames/LocalNamesJa.php b/MLEB/cldr/LocalNames/LocalNamesJa.php
index 2d3327e8..877773b2 100644
--- a/MLEB/cldr/LocalNames/LocalNamesJa.php
+++ b/MLEB/cldr/LocalNames/LocalNamesJa.php
@@ -1,275 +1,111 @@
<?php
-$languageNames = array(
- /* Not in CLDR 21.0.1. Name "Arabic, Tunisian Spoken" used by Ethnologue:
- * http://www.ethnologue.com/show_language.asp?code=aeb
- * Added 2012-11-13.
- */
- 'aeb' => 'アラビア語チュニジア方言',
-
- /* Not in CLDR 21.0.1. Name Gheg Albanian used by Ethnologue:
- * http://www.ethnologue.com/show_language.asp?code=aln
- * Added 2008-01-04.
- */
- // 'aln' => 'Gheg Albanian',
-
- /* Not in CLDR 21.0.1. Arabic language
- * http://www.ethnologue.com/show_language.asp?code=arq
- * Added 2009-08-27.
- */
- 'arq' => 'アラビア語アルジェリア方言',
- /* Not in CLDR 21.0.1. Arabic language
- * http://www.ethnologue.com/show_language.asp?code=ary
- * Added 2008-04-12.
- */
- 'ary' => 'アラビア語モロッコ方言',
-
- /* Not in CLDR 21.0.1. Arabic language
- * http://www.ethnologue.com/show_language.asp?code=arz
- * Added 2009-08-23.
- */
- 'arz' => 'アラビア語エジプト方言',
-
- /* Not in CLDR 21.0.1. Southern Turkic
- * http://www.ethnologue.com/show_language.asp?code=azb
- * Added 2012-11-28.
- */
- 'azb' => '南部アゼルバイジャン語',
+$languageNames = [
- /* Not in CLDR 21.0.1. Name Bavarian used by Ethnologue:
- * http://www.ethnologue.com/show_language.asp?code=bar
- * Added 2007-11-10.
- */
- 'bar' => 'バイエルン・オーストリア語',
-
- /* Not in CLDR 21.0.1. Balochi language
- * http://www.ethnologue.org/show_language.asp?code=bcc
+ /* Not in CLDR 27.0.1. Balochi language
+ * https://www.ethnologue.com/language/bcc
* Added 2008-07-02.
*/
- 'bcc' => '南部バローチー語',
+ 'bcc' => '南バローチー語',
- /* Not in CLDR 21.0.1. Betawi language.
- * http://www.ethnologue.com/show_language.asp?code=bew
- * Added 2011-11-10.
+ /* Not in CLDR 27.0.1. Name used by Ethnologue:
+ * http://www.ethnologue.com/language/bgn
+ * Added 2015-01-18.
*/
- 'bew' => 'ベタウィ語',
+ 'bgn' => '西バローチー語',
- /* Not in CLDR 21.0.1. Malay language.
- * http://www.ethnologue.org/show_language.asp?code=bjn
- * Added 2011-09-10.
+ /* Not in CLDR 27.0.1. Eastern Balochi language
+ * http://www.ethnologue.com/language/bgp
*/
- // 'bjn' => 'Banjar',
+ 'bgp' => '東バローチー語',
- /* Not in CLDR 21.0.1. Name Bishnupriya used by Ethnologue:
- * http://www.ethnologue.org/show_language.asp?code=bpy
- * Added 2007-11-10.
- */
- 'bpy' => 'ビシュヌプリヤ・マニプリ語',
+ /* Not in CLDR 27.0.1. Western Cham language
+ * https://www.ethnologue.com/language/cja
+ */
+ 'cja' => '西部チャム語',
+ 'cja-cham' => '西部チャム語(チャム文字)',
+ 'cja-latn' => '西部チャム語(ラテン文字)',
+ 'cja-arab' => '西部チャム語(アラビア文字)',
- /* Not in CLDR 21.0.1. Luri language
- * http://www.ethnologue.org/show_language.asp?code=bqi
- * Added 2007-11-10.
- */
- // 'bqi' => 'Bakhtiari',
+ /* Not in CLDR 27.0.1. Eastern Cham language
+ * https://www.ethnologue.com/language/cjm
+ */
+ 'cjm' => '東部チャム語',
+ 'cjm-cham' => '東部チャム語(チャム文字)',
+ 'cjm-latn' => '東部チャム語(ラテン文字)',
+ 'cjm-arab' => '東部チャム語(アラビア文字)',
- /* Not in CLDR 21.0.1. Bihari language
- * http://www.ethnologue.org/show_language.asp?code=brh
- * Added 2011-04-16.
+ /* Not in CLDR 27.0.1. Jinyu language
+ * https://www.ethnologue.com/language/cjy
*/
- 'brh' => 'ブラーフーイー語',
+ 'cjy' => '晋語',
+ 'cjy-hans' => '晋語(簡体字)',
+ 'cjy-hant' => '晋語(繁体字)',
- /* Not in CLDR 21.0.1. Bisayan language
- * http://www.ethnologue.org/show_language.asp?code=cps
- * Added 2010-01-11.
- */
- // 'cps' => 'Capiznon',
-
- /* Not in CLDR 21.0.1. Swedish language
- * http://www.ethnologue.org/show_language.asp?code=dlc
+ /* Not in CLDR 27.0.1. Swedish language
+ * https://www.ethnologue.com/language/dlc
* Added 2008-02-16.
*/
// 'dlc' => 'Dalecarlian',
- /* Not in CLDR 21.0.1. Central Dusun language
- * http://www.ethnologue.org/show_language.asp?code=dtp
- * Added 2011-04-16.
- */
- // 'dtp' => 'Central Dusun',
-
- /* Not in CLDR 21.0.1. Romance language.
- * http://www.ethnologue.org/show_language.asp?code=eml
+ /* Not in CLDR 27.0.1. Romance language.
+ * https://www.ethnologue.com/language/eml
* Added 2008-01-17.
*/
'eml' => 'エミリア・ロマーニャ語',
- /* Not in CLDR 21.0.1. Romance language.
- * http://www.ethnologue.org/show_language.asp?code=ext
- * Added 2007-12-02.
- */
- 'ext' => 'エストレマドゥーラ語',
-
- /* Not in CLDR 21.0.1. Variety of French.
- * http://www.ethnologue.org/show_language.asp?code=frc
- * Added 2007-12-02.
- */
- // 'frc' => 'Cajun French',
-
- /* Not in CLDR 21.0.1. Romance language.
- * http://www.ethnologue.org/show_language.asp?code=frp
- * Added 2007-12-02.
- */
- 'frp' => 'アルピタン語',
-
- /* Not in CLDR 21.0.1. Chinese language.
- * http://www.ethnologue.org/show_language.asp?code=hak
- * Added 2007-12-02.
- */
- 'hak' => '客家語',
-
- /* Not in CLDR 21.0.1. Turkic language.
- * Added 2008-01-14.
- */
- // 'gag' => 'Gagauz',
-
- /* Not in CLDR 21.0.1. Chinese language.
- * http://www.ethnologue.org/show_language.asp?code=gan
- * Added 2007-12-02.
- */
- //'gan' => 'Gan',
-
- /* Not in CLDR 21.0.1. Konkani language
- * http://www.ethnologue.org/show_language.asp?code=gom
+ /* Not in CLDR 27.0.1. Konkani language
+ * https://www.ethnologue.com/language/gom
* Added 2008-09-02.
*/
- // 'gom' => 'Goan Konkani',
- // 'gom-deva' => 'Goan Konkani (Devanagari script)',
- // 'gom-latn' => 'Goan Konkani (Latin script)',
- // 'gom-knda' => 'Goan Konkani (Kannada script)',
- // 'gom-mlym' => 'Goan Konkani (Malayalam script)',
- // 'gom-arab' => 'Goan Konkani (Arabic script)',
-
- /* Not in CLDR 21.0.1. Western Atlantic Creole language
- * http://www.ethnologue.org/show_language.asp?code=dtp
- * Added 2011-04-16.
- */
- 'jam' => 'ジャマイカ・クレオール語',
-
- /* Not in CLDR 21.0.1. Danish language.
- * http://www.ethnologue.org/show_language.asp?code=jut
- * Added 2008-02-06.
- */
- // 'jut' => 'Jutish',
-
- /* Not in CLDR 21.0.1. Chitral language
- * http://www.ethnologue.org/show_language.asp?code=khw
- * Added 2011-04-16.
- */
- 'khw' => 'コワール語',
-
- /* Not in CLDR 21.0.1. Zaza-Gorani language.
- * http://www.ethnologue.org/show_language.asp?code=kiu
- * Added 2009-10-08.
- */
- // 'kiu' => 'Kirmanjki',
+ 'gom-deva' => 'ゴア・コンカニ語(デーバナーガリー文字)',
+ 'gom-latn' => 'ゴア・コンカニ語(ラテン文字)',
- /* Not in CLDR 21.0.1. Komi language.
- * http://www.ethnologue.org/show_language.asp?code=koi
- * Added 2010-01-02.
+ /* Not in CLDR 27.0.1. Maharashtrian Konkani language
+ * https://www.ethnologue.com/language/knn
*/
- // 'koi' => 'Komi-Permyak',
+ 'knn' => 'マラーティーコンカニ語',
- /* Not in CLDR 21.0.1. Artificial language.
- * http://www.ethnologue.org/show_language.asp?code=lfn
- * Added 2008-01-18.
+ /* Not in CLDR 27.0.1. Laki language
+ * https://www.ethnologue.com/language/lki
*/
- // 'lfn' => 'Lingua Franca Nova',
+ 'lki' => 'ラーク語',
- /* Not in CLDR 21.0.1. Latvian language
- * http://www.sil.org/iso639-3/documentation.asp?id=ltg
- * Added 2010-04-03.
+ /* Not in CLDR 27.0.1. Northern Luri language
+ * https://www.ethnologue.com/language/lrc
*/
- // 'ltg' => 'Latgalian',
+ 'lrc' => '北ロル語',
- /* Not in CLDR 21.0.1. Literary Chinese language
- * http://www.sil.org/iso639-3/documentation.asp?id=lzh
- * Added 2009-01-22.
+ /* Not in CLDR 27.0.1. Southern Luri language
+ * https://www.ethnologue.com/language/luz
*/
- // 'lzh' => 'Literary Chinese',
+ 'luz' => '南ロル語',
- /* Not in CLDR 21.0.1. Mari language
- * http://www.ethnologue.org/show_language.asp?code=mhr
+ /* Not in CLDR 27.0.1. Mari language
+ * https://www.ethnologue.com/language/mhr
* Added 2008-05-22.
*/
'mhr' => '東部マリ語',
- /* Not in CLDR 21.0.1. Mari language
- * http://www.ethnologue.org/show_language.asp?code=mrj
- * Added 2009-11-22.
- */
- 'mrj' => '山地マリ語',
-
- /* Not in CLDR 21.0.1. Malay language
- * http://www.ethnologue.org/show_language.asp?code=mui
+ /* Not in CLDR 27.0.1. Malay language
+ * https://www.ethnologue.com/language/mui
* Added 2010-02-11.
*/
// 'mui' => 'Musi',
- /* Not in CLDR 21.0.1. Caspian language
- * http://www.ethnologue.org/show_language.asp?code=mzn
- * Added 2008-03-01.
- */
- 'mzn' => 'マーザンダラーン語',
-
- /* Not in CLDR 21.0.1. Chinese language
- * http://www.ethnologue.org/show_language.asp?code=nan
- * Added 2008-03-01.
- */
- 'nan' => '閩南語',
-
- /* Not in CLDR 21.0.1. Tibeto-Burman family language.
- * http://www.ethnologue.org/show_language.asp?code=njo
- * Added 2008-01-14.
- */
- // 'njo' => 'Ao Naga',
-
- /* Not in CLDR 21.0.1. Gallo-Italian language.
- * http://www.ethnologue.org/show_language.asp?code=pms
- * Added 2008-07-09.
- */
- 'pms' => 'ピエモンテ語',
-
- /* Not in CLDR 21.0.1. Lahnda language.
- * http://www.ethnologue.org/show_language.asp?code=pnb
+ /* Not in CLDR 27.0.1. Lahnda language.
+ * https://www.ethnologue.com/language/pnb
* Added 2008-10-29.
*/
// 'pnb' => 'Western Punjabi',
- /* Not in CLDR 21.0.1. Attic language.
- * http://www.ethnologue.org/show_language.asp?code=pnt
- * Added 2008-01-18.
- */
- // 'pnt' => 'Pontic',
-
- /* Not in CLDR 21.0.1. Western Baltic language.
- * http://www.ethnologue.org/show_language.asp?code=prg
- * Added 2009-11-22.
- */
- // 'prg' => 'Prussian',
-
- /* Not in CLDR 21.0.1. Gallo-Italic language.
- * http://www.sil.org/iso639-3/documentation.asp?id=rgn
- * Added 2009-11-15.
+ /* Not in CLDR 27.0.1. Dari language.
+ * https://www.ethnologue.com/language/prs
*/
- // 'rgn' => 'Romagnol',
+ 'prs' => 'ダリー語',
- /* Not in CLDR 21.0.1. East Slavic language.
- * http://www.ethnologue.com/show_language.asp?code=rue
- * Added 2010-04-03.
- */
- // 'rue' => 'Rusyn',
-
- /* Not in CLDR 21.0.1. Eastern Romance language.
- * http://www.ethnologue.org/show_language.asp?code=ruq
+ /* Not in CLDR 27.0.1. Eastern Romance language.
+ * https://www.ethnologue.com/language/ruq
* Added 2008-02-04.
*/
// 'ruq' => 'Megleno-Romanian',
@@ -277,73 +113,21 @@ $languageNames = array(
// 'ruq-grek' => 'Megleno-Romanian (Greek script)',
// 'ruq-latn' => 'Megleno-Romanian (Latin script)',
- /* Not in CLDR 21.0.1.
- * http://www.sil.org/iso639-3/documentation.asp?id=sgs
- * Added 2010-10-14.
- */
- // 'sgs' => 'Samogitian',
-
- /* Not in CLDR 21.0.1.
- * http://www.sil.org/iso639-3/documentation.asp?id=sli
- * Added 2008-09-02.
- */
- // 'sli' => 'Lower Silesian',
-
- /* Not in CLDR 21.0.1.
- * http://www.sil.org/iso639-3/documentation.asp?id=szl
- * Added 2008-03-29.
- */
- 'szl' => 'シレジア語',
-
- /* Not in CLDR 21.0.1. Tulu language
- * http://www.sil.org/iso639-3/documentation.asp?id=tcy
- * Added 2008-08-23.
- */
- // 'tcy' => 'Tulu',
-
- /* Not in CLDR 21.0.1. Turoyo language
- * http://www.sil.org/iso639-3/documentation.asp?id=tru
- * Added 2012-07-26.
- */
- // 'tru' => 'Turoyo',
-
- /* Not in CLDR 21.0.1. Finnic Uralic language.
- * http://www.ethnologue.org/show_language.asp?code=vep
- * Added 2009-01-24.
- */
- // 'vep' => 'Veps',
-
- /* Not in CLDR 21.0.1. West Middle German language.
- * http://www.sil.org/iso639-3/documentation.asp?id=vmf
- * Added 2010-01-31.
- */
- // 'vmf' => 'Upper Franconian',
-
- /* Not in CLDR 21.0.1. Estonian language.
- * http://www.sil.org/iso639-3/documentation.asp?id=vro
- * Added 2009-01-24.
- */
- 'vro' => 'ヴォロ語',
-
- /* Not in CLDR 21.0.1. Chinese language.
- * http://www.ethnologue.org/show_language.asp?code=wuu
- * Added 2007-12-02.
- */
- 'wuu' => '呉語',
-
- /* Not in CLDR 21.0.1. Low Franconian language.
- * http://www.ethnologue.org/show_language.asp?code=zea
- * Added 2008-01-17.
+ /* Not in CLDR 27.0.1. Shawiya language
+ * https://www.ethnologue.com/language/shy
*/
- 'zea' => 'ゼーランド語',
+ 'shy' => 'シャウィーア語',
+ 'shy-arab' => 'シャウィーア語(アラビア文字)',
+ 'shy-latn' => 'シャウィーア語(ラテン文字)',
+ 'shy-tfng' => 'シャウィーア語(ティフナグ文字)',
- /* Not in CLDR. Used for MediaWiki localisation
+ /* Not in CLDR 27.0.1. Used for MediaWiki localisation
*/
'bat-smg' => 'サモギティア語',
// 'be-tarask' => 'Belarusian (Taraškievica orthography)',
'cdo' => '閩東語',
- // 'crh-cyrl' => 'Crimean Turkish (Cyrillic script)',
- // 'crh-latn' => 'Crimean Turkish (Latin script)',
+ // 'crh-cyrl' => 'Crimean Tatar (Cyrillic script)',
+ // 'crh-latn' => 'Crimean Tatar (Latin script)',
// 'de-formal' => 'German (formal address)',
// 'gan-hans' => 'Simplified Gan script',
// 'gan-hant' => 'Traditional Gan script',
@@ -362,7 +146,6 @@ $languageNames = array(
// 'ks-deva' => 'Kashmiri (Devanagari script)',
// 'ku-latn' => 'Kurdish (Latin script)',
'nds-nl' => 'オランダ低ザクセン語',
- 'no' => 'ノルウェー語(ブークモール)',
'roa-rup' => 'アルーマニア語',
'roa-tara' => 'タラント語',
// 'sr-ec' => 'Serbian (Cyrillic script)',
@@ -373,7 +156,6 @@ $languageNames = array(
// 'tt-latn' => 'Tatar (Latin script)',
// 'ug-arab' => 'Uyghur (Arabic script)',
// 'ug-latn' => 'Uyghur (Latin script)',
- 'xmf' => 'メグレル語',
// 'ydd' => 'Eastern Yiddish',
'zh-classical' => '漢文',
'zh-cn' => '中国語(中国)',
@@ -391,19 +173,11 @@ $languageNames = array(
'bxr' => 'ブリヤート語',
'diq' => 'ザザキ語',
'fiu-vro' => 'ヴォロ語',
- 'hif' => 'フィジー・ヒンディー語',
'lbe' => 'ラク語',
- 'lij' => 'リグリア語',
- 'lmo' => 'ロンバルド語',
'map-bms' => 'バニュマス語',
- 'nov' => 'ノヴィアル',
'nrm' => 'ノルマン語',
- 'pdc' => 'ペンシルバニアドイツ語',
'pih' => 'ノーフォーク語・ピトケアン語',
'rmy' => 'ロマ語',
'simple' => 'シンプル英語',
- 'stq' => 'ザーターフリジア語',
'tokipona' => 'トキポナ',
- 'vec' => 'ヴェネツィア語',
- 'vls' => '西フラマン語',
-);
+];
diff --git a/MLEB/cldr/LocalNames/LocalNamesNds.php b/MLEB/cldr/LocalNames/LocalNamesNds.php
index 9c101177..780d70e9 100644
--- a/MLEB/cldr/LocalNames/LocalNamesNds.php
+++ b/MLEB/cldr/LocalNames/LocalNamesNds.php
@@ -1,5 +1,6 @@
<?php
-$languageNames = array(
+
+$languageNames = [
'aa' => 'Afar',
'ab' => 'Abchaasch',
'ace' => 'Aceh',
@@ -505,4 +506,4 @@ $languageNames = array(
'zun' => 'Zuni',
'zxx' => 'Keen Spraakinhold',
'zza' => 'Zaza',
-);
+];
diff --git a/MLEB/cldr/LocalNames/LocalNamesSh.php b/MLEB/cldr/LocalNames/LocalNamesSh.php
index 3c36ef8f..f4517723 100644
--- a/MLEB/cldr/LocalNames/LocalNamesSh.php
+++ b/MLEB/cldr/LocalNames/LocalNamesSh.php
@@ -1,5 +1,6 @@
<?php
-$languageNames = array(
+
+$languageNames = [
'aa' => 'Afarski',
'ab' => 'Abkazijski',
'ace' => 'Ačineski',
@@ -506,4 +507,4 @@ $languageNames = array(
'zun' => 'Zuni',
'zxx' => 'Bez lingvističkog sadržaja',
'zza' => 'Zaza',
-);
+];
diff --git a/MLEB/cldr/Makefile b/MLEB/cldr/Makefile
index b0fe3601..3bc7edaf 100644
--- a/MLEB/cldr/Makefile
+++ b/MLEB/cldr/Makefile
@@ -1,6 +1,6 @@
.PHONY: help all clean test
-CORE=http://www.unicode.org/Public/cldr/25/core.zip
+CORE=http://www.unicode.org/Public/cldr/34/core.zip
help:
@echo "'make all' to download CLDR data and rebuild files."
diff --git a/MLEB/cldr/README b/MLEB/cldr/README
index 5258dcd4..eacb62d0 100644
--- a/MLEB/cldr/README
+++ b/MLEB/cldr/README
@@ -11,7 +11,7 @@ Download newest data from CLDR site:
http://www.unicode.org/cldr/repository_access.html
Example:
- wget http://unicode.org/Public/cldr/26/core.zip
+ wget http://unicode.org/Public/cldr/28/core.zip
unzip core.zip -d core
php rebuild.php
diff --git a/MLEB/cldr/RELEASE-NOTES b/MLEB/cldr/RELEASE-NOTES
index 6445962d..9ca4ac1b 100644
--- a/MLEB/cldr/RELEASE-NOTES
+++ b/MLEB/cldr/RELEASE-NOTES
@@ -1,6 +1,5 @@
-== cldr 2015.04 ==
-Released at 2015-04-30.
+== cldr 2018.10 ==
+Released at 2018-10-29.
-=== Highlights ===
-* T96650: Update to CLDR 27.0.1
-* Fixed names of Baloci languages.
+=== Noteworthy changes ===
+* Update to CLDR 34.0
diff --git a/MLEB/cldr/TimeUnits.body.php b/MLEB/cldr/TimeUnits.body.php
deleted file mode 100644
index 0246cd3d..00000000
--- a/MLEB/cldr/TimeUnits.body.php
+++ /dev/null
@@ -1,181 +0,0 @@
-<?php
-
-/**
- * A class for querying translated time units from CLDR data.
- *
- * @author Niklas Laxström
- * @author Ryan Kaldari
- * @copyright Copyright © 2007-2013
- * @license http://www.gnu.org/copyleft/gpl.html GNU General Public License 2.0 or later
- */
-class TimeUnits extends CldrNames {
-
- private static $cache = array();
-
- /**
- * Get localized time units for a particular language, using fallback languages for missing
- * items. The time units are returned as an associative array. The keys are of the form:
- * <unit>-<tense>-<ordinality> (for example, 'hour-future-two'). The values include a placeholder
- * for the number (for example, '{0} months ago').
- *
- * @param string $code The language to return the list in
- * @return array an associative array of time unit codes and localized time units
- */
- public static function getUnits( $code ) {
- // Load time units localized for the requested language
- $units = self::loadLanguage( $code );
-
- if ( $units ) {
- return $units;
- }
- // Load missing time units from fallback languages
- if ( is_callable( array( 'Language', 'getFallbacksFor' ) ) ) {
- // MediaWiki 1.19
- $fallbacks = Language::getFallbacksFor( $code );
- foreach ( $fallbacks as $fallback ) {
- if ( $units ) {
- break;
- }
- // Get time units from a fallback language
- $units = self::loadLanguage( $fallback );
- }
- } else {
- // MediaWiki 1.18 or earlier
- $fallback = $code;
- while ( $fallback = Language::getFallbackFor( $fallback ) ) {
- if ( $units ) {
- break;
- }
- // Get time units from a fallback language
- $units = self::loadLanguage( $fallback );
- }
- }
-
- return $units;
- }
-
- /**
- * Load time units localized for a particular language. Helper function for getUnits.
- *
- * @param string $code The language to return the list in
- * @return array an associative array of time unit codes and localized time units
- */
- private static function loadLanguage( $code ) {
- if ( !isset( self::$cache[$code] ) ) {
- /* Load override for wrong or missing entries in cldr */
- $override = __DIR__ . '/LocalNames/' . self::getOverrideFileName( $code );
- if ( Language::isValidBuiltInCode( $code ) && file_exists( $override ) ) {
- $timeUnits = false;
-
- require $override;
-
- if ( is_array( $timeUnits ) ) {
- self::$cache[$code] = $timeUnits;
- }
- }
-
- $filename = __DIR__ . '/CldrNames/' . self::getFileName( $code );
- if ( Language::isValidBuiltInCode( $code ) && file_exists( $filename ) ) {
- $timeUnits = false;
- require $filename;
- if ( is_array( $timeUnits ) ) {
- if ( isset( self::$cache[$code] ) ) {
- // Add to existing list of localized time units
- self::$cache[$code] = self::$cache[$code] + $timeUnits;
- } else {
- // No list exists, so create it
- self::$cache[$code] = $timeUnits;
- }
- }
- } else {
- wfDebug( __METHOD__ . ": Unable to load time units for $filename\n" );
- }
- if ( !isset( self::$cache[$code] ) ) {
- self::$cache[$code] = array();
- }
- }
-
- return self::$cache[$code];
- }
-
- /**
- * Handler for GetHumanTimestamp hook.
- * Converts the given time into a human-friendly relative format, for
- * example, '6 days ago', 'In 10 months'.
- *
- * @param string &$output The output timestamp
- * @param MWTimestamp $timestamp The current (user-adjusted) timestamp
- * @param MWTimestamp $relativeTo The relative (user-adjusted) timestamp
- * @param User $user User whose preferences are being used to make timestamp
- * @param Language $lang Language that will be used to render the timestamp
- * @return bool False means the timestamp was overridden so stop further
- * processing. True means the timestamp was not overridden.
- */
- public static function onGetHumanTimestamp( &$output, $timestamp, $relativeTo, $user, $lang ) {
-
- // Map PHP's DateInterval property codes to CLDR unit names.
- $units = array(
- 's' => 'second',
- 'i' => 'minute',
- 'h' => 'hour',
- 'd' => 'day',
- 'm' => 'month',
- 'y' => 'year',
- );
-
- // Get the difference between the two timestamps (as a DateInterval object).
- $timeDifference = $timestamp->diff( $relativeTo );
-
- // Figure out if the timestamp is in the future or the past.
- if ( $timeDifference->invert ) {
- $tense = 'future';
- } else {
- $tense = 'past';
- }
-
- // Figure out which unit (days, months, etc.) it makes sense to display
- // the timestamp in, and get the number of that unit to use.
- $unit = null;
- foreach ( $units as $code => $testUnit ) {
- $testNumber = $timeDifference->format( '%' . $code );
- if ( intval( $testNumber ) > 0 ) {
- $unit = $testUnit;
- $number = $testNumber;
- }
- }
-
- // If it occurred less than 1 second ago, output 'just now' message.
- if ( !$unit ) {
- $output = wfMessage( 'just-now' )->inLanguage( $lang )->text();
-
- return false;
- }
-
- // Get the CLDR time unit strings for the user's language.
- // If no strings are returned, abandon the timestamp override.
- $timeUnits = TimeUnits::getUnits( $lang->getCode() );
- if ( !$timeUnits ) {
- return true;
- }
-
- // Figure out which grammatical number to use.
- // If the template doesn't exist, fall back to 'other' as the default.
- $grammaticalNumber = $lang->getPluralRuleType( $number );
- $timeUnitKey = "{$unit}-{$tense}-{$grammaticalNumber}";
- if ( !isset( $timeUnits[$timeUnitKey] ) ) {
- $timeUnitKey = "{$unit}-{$tense}-other";
- }
-
- // Not all languages have translations for everything
- if ( !isset( $timeUnits[$timeUnitKey] ) ) {
- return true;
- }
-
- // Select the appropriate template for the timestamp.
- $timeUnit = $timeUnits[$timeUnitKey];
- // Replace the placeholder with the number.
- $output = str_replace( '{0}', $lang->formatNum( $number ), $timeUnit );
-
- return false;
- }
-}
diff --git a/MLEB/cldr/cldr.i18n.php b/MLEB/cldr/cldr.i18n.php
deleted file mode 100644
index 5d35d7e2..00000000
--- a/MLEB/cldr/cldr.i18n.php
+++ /dev/null
@@ -1,35 +0,0 @@
-<?php
-/**
- * This is a backwards-compatibility shim, generated by:
- * https://git.wikimedia.org/blob/mediawiki%2Fcore.git/HEAD/maintenance%2FgenerateJsonI18n.php
- *
- * Beginning with MediaWiki 1.23, translation strings are stored in json files,
- * and the EXTENSION.i18n.php file only exists to provide compatibility with
- * older releases of MediaWiki. For more information about this migration, see:
- * https://www.mediawiki.org/wiki/Requests_for_comment/Localisation_format
- *
- * This shim maintains compatibility back to MediaWiki 1.17.
- */
-$messages = array();
-if ( !function_exists( 'wfJsonI18nShima81b5029bff0d492' ) ) {
- function wfJsonI18nShima81b5029bff0d492( $cache, $code, &$cachedData ) {
- $codeSequence = array_merge( array( $code ), $cachedData['fallbackSequence'] );
- foreach ( $codeSequence as $csCode ) {
- $fileName = dirname( __FILE__ ) . "/i18n/$csCode.json";
- if ( is_readable( $fileName ) ) {
- $data = FormatJson::decode( file_get_contents( $fileName ), true );
- foreach ( array_keys( $data ) as $key ) {
- if ( $key === '' || $key[0] === '@' ) {
- unset( $data[$key] );
- }
- }
- $cachedData['messages'] = array_merge( $data, $cachedData['messages'] );
- }
-
- $cachedData['deps'][] = new FileDependency( $fileName );
- }
- return true;
- }
-
- $GLOBALS['wgHooks']['LocalisationCacheRecache'][] = 'wfJsonI18nShima81b5029bff0d492';
-}
diff --git a/MLEB/cldr/cldr.php b/MLEB/cldr/cldr.php
index d4f9e161..4c7e42e0 100644
--- a/MLEB/cldr/cldr.php
+++ b/MLEB/cldr/cldr.php
@@ -1,31 +1,21 @@
<?php
-if ( !defined( 'MEDIAWIKI' ) ) die();
/**
* An extension which provides localised language names for other extensions.
*
* @file
* @ingroup Extensions
* @author Niklas Laxström
- * @copyright Copyright © 2007-2014, Niklas Laxström
- * @license http://www.gnu.org/copyleft/gpl.html GNU General Public License 2.0 or later
+ * @license GPL-2.0-or-later
*/
-define( 'CLDR_VERSION', '4.1.0 (CLDR 27.0.1)' );
-
-$GLOBALS['wgExtensionCredits']['other'][] = array(
- 'path' => __FILE__,
- 'name' => 'Language Names',
- 'version' => '[https://www.mediawiki.org/wiki/MLEB MLEB 2015.04]',
- 'author' => array( 'Niklas Laxström', 'Siebrand Mazeland', 'Ryan Kaldari', 'Sam Reed' ),
- 'url' => 'https://www.mediawiki.org/wiki/Extension:CLDR',
- 'descriptionmsg' => 'cldr-desc',
-);
-
-$GLOBALS['wgMessagesDirs']['cldr'] = __DIR__ . '/i18n';
-$GLOBALS['wgExtensionMessagesFiles']['cldr'] = __DIR__ . '/cldr.i18n.php';
-$GLOBALS['wgAutoloadClasses']['CldrNames'] = __DIR__ . '/CldrNames.php';
-$GLOBALS['wgAutoloadClasses']['LanguageNames'] = __DIR__ . '/LanguageNames.body.php';
-$GLOBALS['wgAutoloadClasses']['CountryNames'] = __DIR__ . '/CountryNames.body.php';
-$GLOBALS['wgAutoloadClasses']['CurrencyNames'] = __DIR__ . '/CurrencyNames.body.php';
-$GLOBALS['wgAutoloadClasses']['TimeUnits'] = __DIR__ . '/TimeUnits.body.php';
-$GLOBALS['wgHooks']['LanguageGetTranslatedLanguageNames'][] = 'LanguageNames::coreHook';
-$GLOBALS['wgHooks']['GetHumanTimestamp'][] = 'TimeUnits::onGetHumanTimestamp';
+if ( function_exists( 'wfLoadExtension' ) ) {
+ wfLoadExtension( 'cldr' );
+ // Keep i18n globals so mergeMessageFileList.php doesn't break
+ $wgMessagesDirs['cldr'] = __DIR__ . '/i18n';
+ wfWarn(
+ 'Deprecated PHP entry point used for cldr extension. Please use wfLoadExtension instead, ' .
+ 'see https://www.mediawiki.org/wiki/Extension_registration for more details.'
+ );
+ return;
+} else {
+ die( 'This version of the cldr extension requires MediaWiki 1.25+' );
+}
diff --git a/MLEB/cldr/composer.json b/MLEB/cldr/composer.json
index 26b57079..800b8e71 100644
--- a/MLEB/cldr/composer.json
+++ b/MLEB/cldr/composer.json
@@ -3,12 +3,29 @@
"type": "mediawiki-extension",
"description": "CLDR extension contains local language names for different languages, countries, and currencies extracted from CLDR data",
"homepage": "https://www.mediawiki.org/wiki/Extension:CLDR",
- "license": "GPL-2.0",
-
+ "license": "GPL-2.0-or-later",
"require": {
+ "php": ">=5.5.9",
"composer/installers": ">=1.0.1"
- },
- "autoload": {
- "files": ["cldr.php"]
+ },
+ "require-dev": {
+ "jakub-onderka/php-parallel-lint": "1.0.0",
+ "mediawiki/mediawiki-codesniffer": "19.1.0",
+ "jakub-onderka/php-console-highlighter": "0.3.2",
+ "mediawiki/minus-x": "0.3.1"
+ },
+ "scripts": {
+ "fix": [
+ "phpcbf",
+ "minus-x fix ."
+ ],
+ "test": [
+ "parallel-lint . --exclude node_modules --exclude vendor",
+ "phpcs -p -s",
+ "minus-x check ."
+ ]
+ },
+ "extra": {
+ "phan-taint-check-plugin": "1.5.0"
}
}
diff --git a/MLEB/cldr/i18n/af.json b/MLEB/cldr/i18n/af.json
index aa6be6be..1d1739a8 100644
--- a/MLEB/cldr/i18n/af.json
+++ b/MLEB/cldr/i18n/af.json
@@ -1,8 +1,9 @@
{
"@metadata": {
"authors": [
- "Naudefj"
+ "Naudefj",
+ "Fwolff"
]
},
- "cldr-desc": "Uitbreiding om die vertaalde name van tale bied"
+ "cldr-desc": "Uitbreiding wat vertaalde taalname voorsien gebaseer op [http://cldr.unicode.org/index/downloads CLDR-data]"
}
diff --git a/MLEB/cldr/i18n/ce.json b/MLEB/cldr/i18n/ce.json
index b9bc1535..0ed0f80a 100644
--- a/MLEB/cldr/i18n/ce.json
+++ b/MLEB/cldr/i18n/ce.json
@@ -4,5 +4,5 @@
"Умар"
]
},
- "cldr-desc": "[http://cldr.unicode.org/index/downloads CLDR хаамашца] меттанийн цӀераш гочян таро хуьлуьйту"
+ "cldr-desc": "[http://cldr.unicode.org/index/downloads CLDR хаамашца] меттанийн цӀерш гочян таро хуьлуьйту"
}
diff --git a/MLEB/cldr/i18n/en.json b/MLEB/cldr/i18n/en.json
index d402934d..eb80b3be 100644
--- a/MLEB/cldr/i18n/en.json
+++ b/MLEB/cldr/i18n/en.json
@@ -1,6 +1,6 @@
{
- "@metadata": {
- "authors": []
- },
- "cldr-desc": "Extension which provides localised language names based on [http://cldr.unicode.org/index/downloads CLDR data]"
+ "@metadata": {
+ "authors": []
+ },
+ "cldr-desc": "Extension which provides localised language names based on [http://cldr.unicode.org/index/downloads CLDR data]"
} \ No newline at end of file
diff --git a/MLEB/cldr/i18n/fy.json b/MLEB/cldr/i18n/fy.json
index edeca94c..5ccf5797 100644
--- a/MLEB/cldr/i18n/fy.json
+++ b/MLEB/cldr/i18n/fy.json
@@ -2,7 +2,8 @@
"@metadata": {
"authors": [
"SK-luuut",
- "Robin0van0der0vliet"
+ "Robin0van0der0vliet",
+ "Robin van der Vliet"
]
},
"cldr-desc": "Taheaksel dy't fertaalde taalnammen oanbiedt basearre op [http://cldr.unicode.org/index/downloads CLDR-gegevens ]"
diff --git a/MLEB/cldr/i18n/kea.json b/MLEB/cldr/i18n/kea.json
index 45acaef7..86b2d307 100644
--- a/MLEB/cldr/i18n/kea.json
+++ b/MLEB/cldr/i18n/kea.json
@@ -1,8 +1,9 @@
{
"@metadata": {
"authors": [
- "Waldir"
+ "Waldir",
+ "Quintino Lopes Castro Tavares"
]
},
- "cldr-desc": "Extensãu ki ta fornesi nomis di línguas lokalizadu, a partir di [http://cldr.unicode.org/index/downloads dadus di CLDR]"
+ "cldr-desc": "Ixtenson ki ta fornesi nomis di línguas lokalizadu, a partir di [http://cldr.unicode.org/index/downloads dadus di CLDR]"
}
diff --git a/MLEB/cldr/i18n/ksh.json b/MLEB/cldr/i18n/ksh.json
index 800fb066..d2d6662d 100644
--- a/MLEB/cldr/i18n/ksh.json
+++ b/MLEB/cldr/i18n/ksh.json
@@ -4,5 +4,5 @@
"Purodha"
]
},
- "cldr-desc": "Brengk ettlijje Name för Shprooche op ettlijje Shprooche en et Wiki, opjebout op dem [http://cldr.unicode.org/index/downloads CLDR sing Daate]."
+ "cldr-desc": "Brengk ättlijje Nahme för Schprohche op ättlijje Schprohche en et Wikki, opjeboud op dem [http://cldr.unicode.org/index/downloads <i lang=\"en\" xml:lang=\"en\" dir=\"ltr\" title=\"Unicode Common Locale Data Repository\">CLDR</i> singe Dahte]."
}
diff --git a/MLEB/cldr/i18n/li.json b/MLEB/cldr/i18n/li.json
index e4b2ba19..6984060d 100644
--- a/MLEB/cldr/i18n/li.json
+++ b/MLEB/cldr/i18n/li.json
@@ -1,8 +1,9 @@
{
"@metadata": {
"authors": [
- "Pahles"
+ "Pahles",
+ "Ooswesthoesbes"
]
},
- "cldr-desc": "Oetbreiding die euverzatte name van tale beejt"
+ "cldr-desc": "Oetbreiding die euverzatte name van tale beejt gebaseerd op [http://cldr.unicode.org/index/downloads CLDR-gegaeves]"
}
diff --git a/MLEB/cldr/i18n/lt.json b/MLEB/cldr/i18n/lt.json
index 6efd0c4c..a616fa9f 100644
--- a/MLEB/cldr/i18n/lt.json
+++ b/MLEB/cldr/i18n/lt.json
@@ -1,8 +1,9 @@
{
"@metadata": {
"authors": [
- "Matasg"
+ "Matasg",
+ "Eitvys200"
]
},
- "cldr-desc": "Priedas leidžiantis rodyti lokalizuotus kalbų pavadinimus"
+ "cldr-desc": "Priedas, pateikiantis lokalizuotus kalbų pavadinimus, paremtus [http://cldr.unicode.org/index/downloads CLDR duomenimis]"
}
diff --git a/MLEB/cldr/i18n/ug.json b/MLEB/cldr/i18n/ug.json
index 6c015395..cf1787f4 100644
--- a/MLEB/cldr/i18n/ug.json
+++ b/MLEB/cldr/i18n/ug.json
@@ -1,8 +1,8 @@
{
- "@metadata": {
- "authors": [
- "Sahran"
- ]
- },
- "cldr-desc": "يەرلىكلەشتۈرۈلگەن تىل ئاتى كېينرەك تەمىنلىنىدۇ"
+ "@metadata": {
+ "authors": [
+ "Sahran"
+ ]
+ },
+ "cldr-desc": "يەرلىكلەشتۈرۈلگەن تىل ئاتى كېينرەك تەمىنلىنىدۇ"
} \ No newline at end of file
diff --git a/MLEB/cldr/i18n/yue.json b/MLEB/cldr/i18n/yue.json
index e1f585c0..e0d1ac79 100644
--- a/MLEB/cldr/i18n/yue.json
+++ b/MLEB/cldr/i18n/yue.json
@@ -1,8 +1,10 @@
{
"@metadata": {
"authors": [
- "Shinjiman"
+ "Shinjiman",
+ "Ktchankt",
+ "Hello903hello"
]
},
- "cldr-desc": "提供本地化名嘅擴展"
+ "cldr-desc": "跟[http://cldr.unicode.org/index/downloads CLDR 資料]提供本地化名嘅擴充功能"
}
diff --git a/MLEB/cldr/rebuild.php b/MLEB/cldr/rebuild.php
index 6dbac8dd..d567d55f 100644
--- a/MLEB/cldr/rebuild.php
+++ b/MLEB/cldr/rebuild.php
@@ -7,8 +7,8 @@
* @author Ryan Kaldari
* @author Santhosh Thottingal
* @author Sam Reed
- * @copyright Copyright © 2007-2013
- * @license http://www.gnu.org/copyleft/gpl.html GNU General Public License 2.0 or later
+ * @copyright Copyright © 2007-2015
+ * @license GPL-2.0-or-later
*/
// Standard boilerplate to define $IP
@@ -55,23 +55,20 @@ class CLDRRebuild extends Maintenance {
ksort( $languages );
foreach ( $languages as $code => $name ) {
-
// Construct the correct name for the input file
- unset( $codeParts );
$codeParts = explode( '-', $code );
if ( count( $codeParts ) > 1 ) {
-
// ISO 15924 alpha-4 script code
- if ( strlen( $codeParts[1] ) == 4 ) {
+ if ( strlen( $codeParts[1] ) === 4 ) {
$codeParts[1] = ucfirst( $codeParts[1] );
}
// ISO 3166-1 alpha-2 country code
- if ( strlen( $codeParts[1] ) == 2 ) {
+ if ( strlen( $codeParts[1] ) === 2 ) {
$codeParts[2] = $codeParts[1];
unset( $codeParts[1] );
}
- if ( isset( $codeParts[2] ) && strlen( $codeParts[2] ) == 2 ) {
+ if ( isset( $codeParts[2] ) && strlen( $codeParts[2] ) === 2 ) {
$codeParts[2] = strtoupper( $codeParts[2] );
}
$codeCLDR = implode( '_', $codeParts );
@@ -82,7 +79,7 @@ class CLDRRebuild extends Maintenance {
// If the file exists, parse it, otherwise display an error
if ( file_exists( $input ) ) {
- $outputFileName = Language::getFileName( "CldrNames", getRealCode( $code ), '.php' );
+ $outputFileName = Language::getFileName( 'CldrNames', getRealCode( $code ), '.php' );
$p = new CLDRParser();
$p->parse( $input, "$OUTPUT/CldrNames/$outputFileName" );
} else {
@@ -111,24 +108,23 @@ class CLDRRebuild extends Maintenance {
}
class CLDRParser {
-
/**
* @param string $inputFile filename
* @param string $outputFile filename
*/
- function parse( $inputFile, $outputFile ) {
+ public function parse( $inputFile, $outputFile ) {
// Open the input file for reading
$contents = file_get_contents( $inputFile );
$doc = new SimpleXMLElement( $contents );
- $data = array(
- 'languageNames' => array(),
- 'currencyNames' => array(),
- 'currencySymbols' => array(),
- 'countryNames' => array(),
- 'timeUnits' => array(),
- );
+ $data = [
+ 'languageNames' => [],
+ 'currencyNames' => [],
+ 'currencySymbols' => [],
+ 'countryNames' => [],
+ 'timeUnits' => [],
+ ];
foreach ( $doc->xpath( '//languages/language' ) as $elem ) {
if ( (string)$elem['alt'] !== '' ) {
@@ -205,16 +201,16 @@ class CLDRParser {
* @param string $inputFile
* @param string $outputFile
*/
- function parse_supplemental( $inputFile, $outputFile ) {
+ public function parse_supplemental( $inputFile, $outputFile ) {
// Open the input file for reading
$contents = file_get_contents( $inputFile );
$doc = new SimpleXMLElement( $contents );
- $data = array(
- 'currencyFractions' => array(),
- 'localeCurrencies' => array(),
- );
+ $data = [
+ 'currencyFractions' => [],
+ 'localeCurrencies' => [],
+ ];
// Pull currency attributes - digits, rounding, and cashRounding.
// This will tell us how many decmal places make sense to use with any currency,
@@ -224,7 +220,7 @@ class CLDRParser {
continue;
}
- $attributes = array( 'digits', 'rounding', 'cashDigits', 'cashRounding' );
+ $attributes = [ 'digits', 'rounding', 'cashDigits', 'cashRounding' ];
foreach ( $attributes as $att ) {
if ( (string)$elem[$att] !== '' ) {
$data['currencyFractions'][(string)$elem['iso4217']][$att] = (string)$elem[$att];
@@ -258,15 +254,15 @@ class CLDRParser {
* @param string $inputDir - the directory, in which we will parse everything.
* @param string $outputFile
*/
- function parse_currency_symbols( $inputDir, $outputFile ) {
+ public function parse_currency_symbols( $inputDir, $outputFile ) {
if ( !file_exists( $inputDir ) ) {
return;
}
$files = scandir( $inputDir );
- $data = array(
- 'currencySymbols' => array(),
- );
+ $data = [
+ 'currencySymbols' => [],
+ ];
// Foreach files!
foreach ( $files as $inputFile ) {
@@ -303,7 +299,7 @@ class CLDRParser {
* Part 1: Stop blowing up on defaults.
* Defaults apparently come in many forms. Listed below in order of scope
* (widest to narrowest)
- * 1) The ISO code itself, in the absense of any other defaults
+ * 1) The ISO code itself, in the absence of any other defaults
* 2) The 'root' language file definition
* 3) Language with no locality - locality will come in as 'DEFAULT'
*
@@ -323,7 +319,7 @@ class CLDRParser {
if ( is_array( $territories ) ) {
if ( count( $territories ) === 1 && array_key_exists( 'DEFAULT', $territories ) ) {
$data['currencySymbols'][$currency][$lang] = $territories['DEFAULT'];
- if ( $territories['DEFAULT'] == $default && $lang != 'root' ) {
+ if ( $territories['DEFAULT'] === $default && $lang !== 'root' ) {
unset( $data['currencySymbols'][$currency][$lang] );
}
} else {
@@ -346,7 +342,7 @@ class CLDRParser {
* @param array $data The variable names and values we want defined in the php output
* @param string $location File location to write
*/
- function savephp( $data, $location ) {
+ protected function savephp( $data, $location ) {
$hasData = false;
foreach ( $data as $v ) {
if ( count( $v ) ) {
@@ -367,7 +363,7 @@ class CLDRParser {
// Don't output empty arrays
continue;
}
- $output .= "\n\$$varname = array(\n";
+ $output .= "\n\$$varname = [\n";
if ( $this->isAssoc( $values ) ) {
foreach ( $values as $key => $value ) {
if ( is_array( $value ) ) {
@@ -391,7 +387,7 @@ class CLDRParser {
}
}
}
- $output .= ");\n";
+ $output .= "];\n";
}
file_put_contents( $location, $output );
@@ -404,7 +400,7 @@ class CLDRParser {
* @param int $level
* @return string
*/
- function makePrettyArrayOuts( $key, $value, $level = 1 ) {
+ protected function makePrettyArrayOuts( $key, $value, $level = 1 ) {
$subKeys = '';
$isAssoc = $this->isAssoc( $value );
$tabs = str_repeat( "\t", $level );
@@ -426,7 +422,7 @@ class CLDRParser {
}
$key = $key !== null ? $this->formatKey( $key ) : '';
- $ret = "$tabs$key" . "array(\n$subKeys$tabs),\n";
+ $ret = "$tabs$key" . "[\n$subKeys$tabs],\n";
return $ret;
}
@@ -462,25 +458,28 @@ class CLDRParser {
* Get the code for the MediaWiki localisation,
* these are same as the fallback.
*
- * @param $code string
+ * @param string $code
* @return string
*/
function getRealCode( $code ) {
$realCode = $code;
- if ( !strcmp( $code, 'kk' ) )
+ if ( !strcmp( $code, 'kk' ) ) {
$realCode = 'kk-cyrl';
- elseif ( !strcmp( $code, 'ku' ) )
- $realCode = 'ku-arab';
- elseif ( !strcmp( $code, 'sr' ) )
+ } elseif ( !strcmp( $code, 'ku' ) ) {
+ $realCode = 'ku-latn';
+ } elseif ( !strcmp( $code, 'sr' ) ) {
$realCode = 'sr-ec';
- elseif ( !strcmp( $code, 'tg' ) )
+ } elseif ( !strcmp( $code, 'tg' ) ) {
$realCode = 'tg-cyrl';
- elseif ( !strcmp( $code, 'zh' ) )
+ } elseif ( !strcmp( $code, 'zh' ) ) {
$realCode = 'zh-hans';
- elseif ( !strcmp( $code, 'pt' ) )
+ } elseif ( !strcmp( $code, 'pt' ) ) {
$realCode = 'pt-br';
- elseif ( !strcmp( $code, 'pt-pt' ) )
+ } elseif ( !strcmp( $code, 'pt-pt' ) ) {
$realCode = 'pt';
+ } elseif ( !strcmp( $code, 'az-arab' ) ) {
+ $realCode = 'azb';
+ }
return $realCode;
}
diff --git a/MLEB/cldr/tests/TimeUnitsTest.php b/MLEB/cldr/tests/TimeUnitsTest.php
deleted file mode 100644
index f5d1add3..00000000
--- a/MLEB/cldr/tests/TimeUnitsTest.php
+++ /dev/null
@@ -1,158 +0,0 @@
-<?php
-/**
- * Tests for TimeUnits
- * @author Santhosh Thottingal
- * @copyright Copyright © 2007-2013
- * @license http://www.gnu.org/copyleft/gpl.html GNU General Public License 2.0 or later
- */
-class TimeUnitsTest extends MediaWikiTestCase {
-
- /** @dataProvider providerTimeUnit */
- function testTimeUnit(
- $language,
- $tsTime, // The timestamp to format
- $currentTime, // The time to consider "now"
- $expectedOutput, // The expected output
- $desc // Description
- ) {
- $tsTime = new MWTimestamp( $tsTime );
- $currentTime = new MWTimestamp( $currentTime );
- $this->assertEquals(
- $expectedOutput,
- $tsTime->getHumanTimestamp( $currentTime, null, Language::factory( $language ) ),
- $desc
- );
- }
-
- public static function providerTimeUnit() {
- return array(
- array(
- 'en',
- '20111231170000',
- '20120101000000',
- '7 hours ago',
- '"Yesterday" across years',
- ),
- array(
- 'en',
- '20120717190900',
- '20120717190929',
- '29 seconds ago',
- '"Just now"',
- ),
- array(
- 'en',
- '20120717190900',
- '20120717191530',
- '6 minutes ago',
- 'X minutes ago',
- ),
- array(
- 'en',
- '20121006173100',
- '20121006173200',
- '1 minute ago',
- '"1 minute ago"',
- ),
- array(
- 'en',
- '20120617190900',
- '20120717190900',
- '1 month ago',
- 'Month difference'
- ),
- array(
- 'en',
- '19910130151500',
- '20120716193700',
- '21 years ago',
- 'Different year',
- ),
- array(
- 'en',
- '20120714184300',
- '20120715040000',
- '9 hours ago',
- 'Today at another time',
- ),
- array(
- 'en',
- '20120617190900',
- '20120717190900',
- '1 month ago',
- 'Another month'
- ),
- array(
- 'en',
- '19910130151500',
- '20120716193700',
- '21 years ago',
- 'Different year',
- ),
- array(
- 'ml',
- '20111231170000',
- '20120101000000',
- '7 മണിക്കൂർ മുമ്പ്',
- '"Yesterday" across years',
- ),
- array(
- 'ml',
- '20120717190900',
- '20120717190929',
- '29 സെക്കൻഡ് മുമ്പ്',
- '"Just now"',
- ),
- array(
- 'ml',
- '20120717190900',
- '20120717191530',
- '6 മിനിറ്റ് മുമ്പ്',
- 'X minutes ago',
- ),
- array(
- 'ml',
- '20121006173100',
- '20121006173200',
- '1 മിനിറ്റ് മുമ്പ്',
- '"1 minute ago"',
- ),
- array(
- 'ml',
- '20120617190900',
- '20120717190900',
- '1 മാസം മുമ്പ്',
- 'Month difference'
- ),
- array(
- 'ml',
- '19910130151500',
- '20120716193700',
- '21 വർഷം മുമ്പ്',
- 'Different year',
- ),
- array(
- 'ml',
- '20120714184300',
- '20120715040000',
- '9 മണിക്കൂർ മുമ്പ്',
- 'Today at another time',
- ),
- array(
- 'ml',
- '20120617190900',
- '20120717190900',
- '1 മാസം മുമ്പ്',
- 'Another month'
- ),
- array(
- 'ml',
- '19910130151500',
- '20120716193700',
- '21 വർഷം മുമ്പ്',
- 'Different year',
- ),
- );
- }
-}
-